From cbe796e2d61af12b964545abacc35c381f1774a3 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 13 Apr 2023 00:19:21 +0000 Subject: [PATCH 001/427] [cron] Bump distribution date (2023-04-13) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 3378da8cb0c8..ae6921d52735 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-12" +//#define STRING_DISTRIBUTION_DATE "2023-04-13" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 050196ca9050..afa580dc4089 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-12" + #define STRING_DISTRIBUTION_DATE "2023-04-13" #endif /** From c3f34e4eb2fb64c9e38beef6f0bdbc921e688ad4 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 11 Apr 2023 21:28:21 -0500 Subject: [PATCH 002/427] =?UTF-8?q?=F0=9F=94=A7=20Move=20FIL=5FRUNOUT=5FPI?= =?UTF-8?q?N=20for=20Chiron=20+=20GLCD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/pins/ramps/pins_TRIGORILLA_14.h | 34 +++++++++++++++------- 1 file changed, 24 insertions(+), 10 deletions(-) diff --git a/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h b/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h index 0e6e8ee41dec..9e761fd2474a 100644 --- a/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h +++ b/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h @@ -53,6 +53,23 @@ #define E0_AUTO_FAN_PIN FAN2_PIN #endif +/** + * Trigorilla Plugs (oriented with stepper plugs at the top) + * + * AUX : D42 GND 5V (Chiron Y-STOP) + * D43 GND 5V (Chiron Z-STOP) + * + * UART3 : GND D15 D14 5V + * (RX3 TX3) + * + * IIC : 12V GND D21 D20 GND 5V + * (SCL SDA) + * + * END STOPS : D19 D18 D15 D14 D2 D3 + * GND GND GND GND GND GND + * 5V 5V 5V 5V 5V 5V + */ + // // AnyCubic pin mappings // @@ -61,9 +78,6 @@ // - TRIGORILLA_MAPPING_I3MEGA // -// -// Limit Switches -// //#define ANYCUBIC_4_MAX_PRO_ENDSTOPS #if ENABLED(ANYCUBIC_4_MAX_PRO_ENDSTOPS) #define X_MAX_PIN 43 @@ -75,7 +89,7 @@ #define Z2_MIN_PIN 18 // Z- #ifndef Z_MIN_PROBE_PIN - #define Z_MIN_PROBE_PIN 2 + #define Z_MIN_PROBE_PIN 2 // X+ #endif #define CONTROLLER_FAN_PIN FAN1_PIN @@ -86,14 +100,14 @@ #endif #if ENABLED(TRIGORILLA_MAPPING_CHIRON) - #ifndef FIL_RUNOUT_PIN - #define FIL_RUNOUT_PIN 33 + #if ENABLED(ANYCUBIC_LCD_CHIRON) && !defined(FIL_RUNOUT_PIN) + #define FIL_RUNOUT_PIN 33 // Chiron LCD Adapter only #endif #define HEATER_BED_PIN MOSFET_B_PIN // HEATER1 - #else - #ifndef FIL_RUNOUT_PIN - #define FIL_RUNOUT_PIN 19 - #endif + #endif + + #ifndef FIL_RUNOUT_PIN + #define FIL_RUNOUT_PIN 19 // Z+ #endif #if EITHER(TRIGORILLA_MAPPING_CHIRON, SWAP_Z_MOTORS) From b3198ed92942c848bea66a6e41b02ec1d11471ff Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 13 Apr 2023 04:05:56 -0500 Subject: [PATCH 003/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20AUTOFAN=5FCASE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25554 --- Marlin/src/module/temperature.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 43ef77494816..43bf31e0e7cb 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -1290,8 +1290,9 @@ int16_t Temperature::getHeaterPower(const heater_id_t heater_id) { #else #define _AUTOFAN_SPEED() EXTRUDER_AUTO_FAN_SPEED #endif - #define _AUTOFAN_CASE(N) case N: _UPDATE_AUTO_FAN(E##N, fan_on, _AUTOFAN_SPEED()); break - #define AUTOFAN_CASE(N) OPTCODE(HAS_AUTO_FAN_##N, _AUTOFAN_CASE(N)) + #define _AUTOFAN_CASE(N) case N: _UPDATE_AUTO_FAN(E##N, fan_on, _AUTOFAN_SPEED()); break; + #define _AUTOFAN_NOT(N) + #define AUTOFAN_CASE(N) TERN(HAS_AUTO_FAN_##N, _AUTOFAN_CASE, _AUTOFAN_NOT)(N) switch (f) { REPEAT(8, AUTOFAN_CASE) From c8cb618faca2ec88681dfdd1b36ab6d160036b33 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 13 Apr 2023 04:06:35 -0500 Subject: [PATCH 004/427] =?UTF-8?q?=F0=9F=94=A8=20Improve=20runout=20scrip?= =?UTF-8?q?t=20check?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buildroot/share/PlatformIO/scripts/preflight-checks.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/buildroot/share/PlatformIO/scripts/preflight-checks.py b/buildroot/share/PlatformIO/scripts/preflight-checks.py index 08856350d2ad..3f7c97af9d78 100644 --- a/buildroot/share/PlatformIO/scripts/preflight-checks.py +++ b/buildroot/share/PlatformIO/scripts/preflight-checks.py @@ -129,8 +129,10 @@ def rm_ofile(subdir, name): # if 'FILAMENT_RUNOUT_SENSOR' in env['MARLIN_FEATURES'] and 'NUM_RUNOUT_SENSORS' in env['MARLIN_FEATURES']: if env['MARLIN_FEATURES']['NUM_RUNOUT_SENSORS'].isdigit() and int(env['MARLIN_FEATURES']['NUM_RUNOUT_SENSORS']) > 1: - if 'FILAMENT_RUNOUT_SCRIPT' in env['MARLIN_FEATURES'] and "%c" not in env['MARLIN_FEATURES']['FILAMENT_RUNOUT_SCRIPT']: - err = "ERROR: FILAMENT_RUNOUT_SCRIPT needs a %c parameter when NUM_RUNOUT_SENSORS is > 1" - raise SystemExit(err) + if 'FILAMENT_RUNOUT_SCRIPT' in env['MARLIN_FEATURES']: + frs = env['MARLIN_FEATURES']['FILAMENT_RUNOUT_SCRIPT'] + if "M600" in frs and "%c" not in frs: + err = "ERROR: FILAMENT_RUNOUT_SCRIPT needs a %c parameter (e.g., \"M600 T%c\") when NUM_RUNOUT_SENSORS is > 1" + raise SystemExit(err) sanity_check_target() From c3921bbf3f9eae586ddac773a6992e1b638cbfb2 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 14 Apr 2023 00:19:41 +0000 Subject: [PATCH 005/427] [cron] Bump distribution date (2023-04-14) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index ae6921d52735..f9d7ff29889d 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-13" +//#define STRING_DISTRIBUTION_DATE "2023-04-14" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index afa580dc4089..0bd02a67e80f 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-13" + #define STRING_DISTRIBUTION_DATE "2023-04-14" #endif /** From 161b99cb54f5d6d183877902581d3d77e8a1fa78 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 14 Apr 2023 01:08:51 -0500 Subject: [PATCH 006/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20some=20bad=20feedr?= =?UTF-8?q?ates=20(#25672)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/feature/pause/G61.cpp | 4 +--- .../extui/dgus/fysetc/DGUSScreenHandler.cpp | 6 +++--- .../extui/dgus/hiprecy/DGUSScreenHandler.cpp | 6 +++--- .../lcd/extui/dgus/mks/DGUSScreenHandler.cpp | 6 +++--- .../extui/dgus/origin/DGUSScreenHandler.cpp | 6 +++--- .../generic/move_axis_screen.cpp | 10 ++++----- .../generic/move_axis_screen.h | 8 +++---- Marlin/src/lcd/extui/ui_api.cpp | 9 ++++---- Marlin/src/lcd/menu/menu_probe_offset.cpp | 2 +- Marlin/src/lcd/menu/menu_x_twist.cpp | 2 +- Marlin/src/module/motion.cpp | 18 ++++------------ Marlin/src/module/planner.h | 11 +++++----- Marlin/src/module/tool_change.cpp | 21 +++++++++---------- Marlin/src/module/tool_change.h | 4 ++-- 14 files changed, 50 insertions(+), 63 deletions(-) diff --git a/Marlin/src/gcode/feature/pause/G61.cpp b/Marlin/src/gcode/feature/pause/G61.cpp index 889709c04531..0efcfbf208de 100644 --- a/Marlin/src/gcode/feature/pause/G61.cpp +++ b/Marlin/src/gcode/feature/pause/G61.cpp @@ -71,7 +71,7 @@ void GcodeSuite::G61() { if (!TEST(saved_slots[slot >> 3], slot & 0x07)) return; // Apply any given feedrate over 0.0 - feedRate_t saved_feedrate = feedrate_mm_s; + REMEMBER(saved, feedrate_mm_s); const float fr = parser.linearval('F'); if (fr > 0.0) feedrate_mm_s = MMM_TO_MMS(fr); @@ -101,8 +101,6 @@ void GcodeSuite::G61() { } #endif } - - feedrate_mm_s = saved_feedrate; } #endif // SAVED_POSITIONS diff --git a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp index c6e000eecae8..58f0ed831921 100644 --- a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp @@ -157,7 +157,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { } #endif char axiscode; - uint16_t speed = _mf[X_AXIS]; // Default feedrate for manual moves + uint16_t speed = manual_feedrate_mm_m[X_AXIS]; // Default feedrate for manual moves switch (var.VP) { default: return; @@ -170,7 +170,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Y_AXIS case VP_MOVE_Y: axiscode = 'Y'; - speed = _mf[Y_AXIS]; + speed = manual_feedrate_mm_m[Y_AXIS]; if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; break; #endif @@ -178,7 +178,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Z_AXIS case VP_MOVE_Z: axiscode = 'Z'; - speed = _mf[Z_AXIS]; + speed = manual_feedrate_mm_m[Z_AXIS]; if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; break; #endif diff --git a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp index ca1a64123a70..ebe3e3ba8abc 100644 --- a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp @@ -157,7 +157,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { } #endif char axiscode; - uint16_t speed = _mf[X_AXIS]; // Default feedrate for manual moves + uint16_t speed = manual_feedrate_mm_m[X_AXIS]; // Default feedrate for manual moves switch (var.VP) { default: return; @@ -170,7 +170,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Y_AXIS case VP_MOVE_Y: axiscode = 'Y'; - speed = _mf[Y_AXIS]; + speed = manual_feedrate_mm_m[Y_AXIS]; if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; break; #endif @@ -178,7 +178,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Z_AXIS case VP_MOVE_Z: axiscode = 'Z'; - speed = _mf[Z_AXIS]; + speed = manual_feedrate_mm_m[Z_AXIS]; if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; break; #endif diff --git a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp index 2dd4d0d19ec3..bdd5f4f018d4 100644 --- a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp @@ -739,7 +739,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { return; char axiscode; - uint16_t speed = _mf[X_AXIS]; // Default feedrate for manual moves + uint16_t speed = manual_feedrate_mm_m[X_AXIS]; // Default feedrate for manual moves switch (var.VP) { // switch X Y Z or Home default: return; @@ -751,7 +751,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Y_AXIS case VP_MOVE_Y: axiscode = 'Y'; - speed = _mf[Y_AXIS]; + speed = manual_feedrate_mm_m[Y_AXIS]; if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; break; #endif @@ -759,7 +759,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Z_AXIS case VP_MOVE_Z: axiscode = 'Z'; - speed = _mf[Z_AXIS]; + speed = manual_feedrate_mm_m[Z_AXIS]; if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; break; #endif diff --git a/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp index 22fdd80fc9a1..edf9a5ca8246 100644 --- a/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp @@ -157,7 +157,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { } #endif char axiscode; - uint16_t speed = _mf[X_AXIS]; // Default feedrate for manual moves + uint16_t speed = manual_feedrate_mm_m[X_AXIS]; // Default feedrate for manual moves switch (var.VP) { default: return; @@ -170,7 +170,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Y_AXIS case VP_MOVE_Y: axiscode = 'Y'; - speed = _mf[Y_AXIS]; + speed = manual_feedrate_mm_m[Y_AXIS]; if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; break; #endif @@ -178,7 +178,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Z_AXIS case VP_MOVE_Z: axiscode = 'Z'; - speed = _mf[Z_AXIS]; + speed = manual_feedrate_mm_m[Z_AXIS]; if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; break; #endif diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.cpp index c3927c21a7dd..c15ff1173ff7 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.cpp @@ -72,7 +72,7 @@ void MoveAxisScreen::onRedraw(draw_mode_t what) { w.increments(); } -bool BaseMoveAxisScreen::onTouchHeld(uint8_t tag) { +bool BaseMoveAxisScreen::onTouchHeld(const uint8_t tag) { #define UI_INCREMENT_AXIS(axis) setManualFeedrate(axis, increment); UI_INCREMENT(AxisPosition_mm, axis); #define UI_DECREMENT_AXIS(axis) setManualFeedrate(axis, increment); UI_DECREMENT(AxisPosition_mm, axis); const float increment = getIncrement(); @@ -120,20 +120,20 @@ void BaseMoveAxisScreen::raiseZtoTop() { setAxisPosition_mm(Z_MAX_POS - 5, Z, homing_feedrate.z); } -float BaseMoveAxisScreen::getManualFeedrate(uint8_t axis, float increment_mm) { +float BaseMoveAxisScreen::getManualFeedrate(const uint8_t axis, const_float_t increment_mm) { // Compute feedrate so that the tool lags the adjuster when it is // being held down, this allows enough margin for the planner to // connect segments and even out the motion. constexpr xyze_feedrate_t max_manual_feedrate = MANUAL_FEEDRATE; - return min(max_manual_feedrate[axis] / 60.0f, ABS(increment_mm * (TOUCH_REPEATS_PER_SECOND) * 0.80f)); + return min(MMM_TO_MMS(max_manual_feedrate[axis]), ABS(increment_mm * (TOUCH_REPEATS_PER_SECOND) * 0.80f)); } -void BaseMoveAxisScreen::setManualFeedrate(ExtUI::axis_t axis, float increment_mm) { +void BaseMoveAxisScreen::setManualFeedrate(const ExtUI::axis_t axis, const_float_t increment_mm) { ExtUI::setFeedrate_mm_s(getManualFeedrate(X_AXIS + (axis - ExtUI::X), increment_mm)); } #if HAS_EXTRUDERS - void BaseMoveAxisScreen::setManualFeedrate(ExtUI::extruder_t, float increment_mm) { + void BaseMoveAxisScreen::setManualFeedrate(const ExtUI::extruder_t, const_float_t increment_mm) { ExtUI::setFeedrate_mm_s(getManualFeedrate(E_AXIS, increment_mm)); } #endif diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.h index 16723cfc13bc..b26254c4df62 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.h @@ -32,14 +32,14 @@ struct MoveAxisScreenData { class BaseMoveAxisScreen : public BaseNumericAdjustmentScreen { private: - static float getManualFeedrate(uint8_t axis, float increment_mm); + static float getManualFeedrate(const uint8_t axis, const_float_t increment_mm); public: static void raiseZtoTop(); - static void setManualFeedrate(ExtUI::axis_t, float increment_mm); - static void setManualFeedrate(ExtUI::extruder_t, float increment_mm); + static void setManualFeedrate(const ExtUI::axis_t, const_float_t increment_mm); + static void setManualFeedrate(const ExtUI::extruder_t, const_float_t increment_mm); static void onEntry(); - static bool onTouchHeld(uint8_t tag); + static bool onTouchHeld(const uint8_t tag); }; class MoveAxisScreen : public BaseMoveAxisScreen, public CachedScreen { diff --git a/Marlin/src/lcd/extui/ui_api.cpp b/Marlin/src/lcd/extui/ui_api.cpp index 7e47bef9c147..2b1f05d2bcd5 100644 --- a/Marlin/src/lcd/extui/ui_api.cpp +++ b/Marlin/src/lcd/extui/ui_api.cpp @@ -932,22 +932,21 @@ namespace ExtUI { void moveToMeshPoint(const xy_uint8_t &pos, const_float_t z) { #if EITHER(MESH_BED_LEVELING, AUTO_BED_LEVELING_UBL) - const feedRate_t old_feedrate = feedrate_mm_s; + REMEMBER(fr, feedrate_mm_s); const float x_target = MESH_MIN_X + pos.x * (MESH_X_DIST), y_target = MESH_MIN_Y + pos.y * (MESH_Y_DIST); if (x_target != current_position.x || y_target != current_position.y) { // If moving across bed, raise nozzle to safe height over bed - feedrate_mm_s = Z_PROBE_FEEDRATE_FAST; + feedrate_mm_s = MMM_TO_MMS(Z_PROBE_FEEDRATE_FAST); destination.set(current_position.x, current_position.y, Z_CLEARANCE_BETWEEN_PROBES); prepare_line_to_destination(); - feedrate_mm_s = XY_PROBE_FEEDRATE; + feedrate_mm_s = XY_PROBE_FEEDRATE_MM_S; destination.set(x_target, y_target); prepare_line_to_destination(); } - feedrate_mm_s = Z_PROBE_FEEDRATE_FAST; + feedrate_mm_s = MMM_TO_MMS(Z_PROBE_FEEDRATE_FAST); destination.z = z; prepare_line_to_destination(); - feedrate_mm_s = old_feedrate; #else UNUSED(pos); UNUSED(z); diff --git a/Marlin/src/lcd/menu/menu_probe_offset.cpp b/Marlin/src/lcd/menu/menu_probe_offset.cpp index 428052bf2aff..34172de4581a 100644 --- a/Marlin/src/lcd/menu/menu_probe_offset.cpp +++ b/Marlin/src/lcd/menu/menu_probe_offset.cpp @@ -119,7 +119,7 @@ void prepare_for_probe_offset_wizard() { // Move Nozzle to Probing/Homing Position ui.wait_for_move = true; current_position += probe.offset_xy; - line_to_current_position(MMM_TO_MMS(XY_PROBE_FEEDRATE)); + line_to_current_position(XY_PROBE_FEEDRATE_MM_S); ui.synchronize(GET_TEXT_F(MSG_PROBE_WIZARD_MOVING)); ui.wait_for_move = false; diff --git a/Marlin/src/lcd/menu/menu_x_twist.cpp b/Marlin/src/lcd/menu/menu_x_twist.cpp index d1850a1eb2a1..86ef3be7b999 100644 --- a/Marlin/src/lcd/menu/menu_x_twist.cpp +++ b/Marlin/src/lcd/menu/menu_x_twist.cpp @@ -141,7 +141,7 @@ void xatc_wizard_goto_next_point() { xatc.set_enabled(true); current_position += probe.offset_xy; current_position.z = (XATC_START_Z) - probe.offset.z + measured_z; - line_to_current_position(MMM_TO_MMS(XY_PROBE_FEEDRATE)); + line_to_current_position(XY_PROBE_FEEDRATE_MM_S); ui.wait_for_move = false; } else diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index d5d9ca8d346f..219f219e5976 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -525,25 +525,15 @@ void line_to_current_position(const_feedRate_t fr_mm_s/*=feedrate_mm_s*/) { void _internal_move_to_destination(const_feedRate_t fr_mm_s/*=0.0f*/ OPTARG(IS_KINEMATIC, const bool is_fast/*=false*/) ) { - const feedRate_t old_feedrate = feedrate_mm_s; - if (fr_mm_s) feedrate_mm_s = fr_mm_s; - - const uint16_t old_pct = feedrate_percentage; - feedrate_percentage = 100; - - #if HAS_EXTRUDERS - const float old_fac = planner.e_factor[active_extruder]; - planner.e_factor[active_extruder] = 1.0f; - #endif + REMEMBER(fr, feedrate_mm_s); + REMEMBER(pct, feedrate_percentage, 100); + TERN_(HAS_EXTRUDERS, REMEMBER(fac, planner.e_factor[active_extruder], 1.0f)); + if (fr_mm_s) feedrate_mm_s = fr_mm_s; if (TERN0(IS_KINEMATIC, is_fast)) TERN(IS_KINEMATIC, prepare_fast_move_to_destination(), NOOP); else prepare_line_to_destination(); - - feedrate_mm_s = old_feedrate; - feedrate_percentage = old_pct; - TERN_(HAS_EXTRUDERS, planner.e_factor[active_extruder] = old_fac); } /** diff --git a/Marlin/src/module/planner.h b/Marlin/src/module/planner.h index e2d1d6739cda..030c1b31dbb9 100644 --- a/Marlin/src/module/planner.h +++ b/Marlin/src/module/planner.h @@ -80,11 +80,12 @@ // Feedrate for manual moves #ifdef MANUAL_FEEDRATE - constexpr xyze_feedrate_t _mf = MANUAL_FEEDRATE, - manual_feedrate_mm_s = LOGICAL_AXIS_ARRAY(_mf.e / 60.0f, - _mf.x / 60.0f, _mf.y / 60.0f, _mf.z / 60.0f, - _mf.i / 60.0f, _mf.j / 60.0f, _mf.k / 60.0f, - _mf.u / 60.0f, _mf.v / 60.0f, _mf.w / 60.0f); + constexpr xyze_feedrate_t manual_feedrate_mm_m = MANUAL_FEEDRATE, + manual_feedrate_mm_s = LOGICAL_AXIS_ARRAY( + MMM_TO_MMS(manual_feedrate_mm_m.e), + MMM_TO_MMS(manual_feedrate_mm_m.x), MMM_TO_MMS(manual_feedrate_mm_m.y), MMM_TO_MMS(manual_feedrate_mm_m.z), + MMM_TO_MMS(manual_feedrate_mm_m.i), MMM_TO_MMS(manual_feedrate_mm_m.j), MMM_TO_MMS(manual_feedrate_mm_m.k), + MMM_TO_MMS(manual_feedrate_mm_m.u), MMM_TO_MMS(manual_feedrate_mm_m.v), MMM_TO_MMS(manual_feedrate_mm_m.w)); #endif #if IS_KINEMATIC && HAS_JUNCTION_DEVIATION diff --git a/Marlin/src/module/tool_change.cpp b/Marlin/src/module/tool_change.cpp index 43a50505ef4d..a91f6f742d25 100644 --- a/Marlin/src/module/tool_change.cpp +++ b/Marlin/src/module/tool_change.cpp @@ -957,13 +957,12 @@ void fast_line_to_current(const AxisEnum fr_axis) { _line_to_current(fr_axis, 0. * If cooling fan is enabled, calls filament_swap_cooling(); */ void extruder_prime() { - if (too_cold(active_extruder)) { FS_DEBUG("Priming Aborted - Nozzle Too Cold!"); return; // Extruder too cold to prime } - float fr = toolchange_settings.unretract_speed; // Set default speed for unretract + feedRate_t fr_mm_s = MMM_TO_MMS(toolchange_settings.unretract_speed); // Set default speed for unretract #if ENABLED(TOOLCHANGE_FS_SLOW_FIRST_PRIME) /** @@ -973,18 +972,19 @@ void fast_line_to_current(const AxisEnum fr_axis) { _line_to_current(fr_axis, 0. if (!extruder_did_first_prime[active_extruder]) { extruder_did_first_prime.set(active_extruder); // Log first prime complete // new nozzle - prime at user-specified speed. - FS_DEBUG("First time priming T", active_extruder, ", reducing speed from ", MMM_TO_MMS(fr), " to ", MMM_TO_MMS(toolchange_settings.prime_speed), "mm/s"); - fr = toolchange_settings.prime_speed; - unscaled_e_move(0, MMM_TO_MMS(fr)); // Init planner with 0 length move + const feedRate_t prime_mm_s = MMM_TO_MMS(toolchange_settings.prime_speed); + FS_DEBUG("First time priming T", active_extruder, ", reducing speed from ", fr_mm_s, " to ", prime_mm_s, "mm/s"); + fr_mm_s = prime_mm_s; + unscaled_e_move(0, fr_mm_s); // Init planner with 0 length move } #endif // Calculate and perform the priming distance if (toolchange_settings.extra_prime >= 0) { // Positive extra_prime value - // - Return filament at speed (fr) then extra_prime at prime speed - FS_DEBUG("Loading Filament for T", active_extruder, " | Distance: ", toolchange_settings.swap_length, " | Speed: ", MMM_TO_MMS(fr), "mm/s"); - unscaled_e_move(toolchange_settings.swap_length, MMM_TO_MMS(fr)); // Prime (Unretract) filament by extruding equal to Swap Length (Unretract) + // - Return filament at speed (fr_mm_s) then extra_prime at prime speed + FS_DEBUG("Loading Filament for T", active_extruder, " | Distance: ", toolchange_settings.swap_length, " | Speed: ", fr_mm_s, "mm/s"); + unscaled_e_move(toolchange_settings.swap_length, fr_mm_s); // Prime (Unretract) filament by extruding equal to Swap Length (Unretract) if (toolchange_settings.extra_prime > 0) { FS_DEBUG("Performing Extra Priming for T", active_extruder, " | Distance: ", toolchange_settings.extra_prime, " | Speed: ", MMM_TO_MMS(toolchange_settings.prime_speed), "mm/s"); @@ -996,8 +996,8 @@ void fast_line_to_current(const AxisEnum fr_axis) { _line_to_current(fr_axis, 0. // - Unretract distance (swap length) is reduced by the value of extra_prime const float eswap = toolchange_settings.swap_length + toolchange_settings.extra_prime; FS_DEBUG("Negative ExtraPrime value - Swap Return Length has been reduced from ", toolchange_settings.swap_length, " to ", eswap); - FS_DEBUG("Loading Filament for T", active_extruder, " | Distance: ", eswap, " | Speed: ", MMM_TO_MMS(fr), "mm/s"); - unscaled_e_move(eswap, MMM_TO_MMS(fr)); + FS_DEBUG("Loading Filament for T", active_extruder, " | Distance: ", eswap, " | Speed: ", fr_mm_s, "mm/s"); + unscaled_e_move(eswap, fr_mm_s); } extruder_was_primed.set(active_extruder); // Log that this extruder has been primed @@ -1010,7 +1010,6 @@ void fast_line_to_current(const AxisEnum fr_axis) { _line_to_current(fr_axis, 0. // Cool down with fan filament_swap_cooling(); - } /** diff --git a/Marlin/src/module/tool_change.h b/Marlin/src/module/tool_change.h index ff456485e23d..5f03a5495e76 100644 --- a/Marlin/src/module/tool_change.h +++ b/Marlin/src/module/tool_change.h @@ -34,8 +34,8 @@ float extra_resume; // M217 B int16_t prime_speed; // M217 P int16_t wipe_retract; // M217 G - int16_t retract_speed; // M217 R - int16_t unretract_speed; // M217 U + int16_t retract_speed; // M217 R (mm/m) + int16_t unretract_speed; // M217 U (mm/m) uint8_t fan_speed; // M217 F uint8_t fan_time; // M217 D #endif From efc725863ab76cfd32fc8bb136aec7b6d884cef0 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 14 Apr 2023 17:14:04 -0500 Subject: [PATCH 007/427] =?UTF-8?q?=F0=9F=94=A7=20Edge=20Stepping=20sanity?= =?UTF-8?q?-check=20(#25674)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/Conditionals_adv.h | 3 +++ Marlin/src/inc/SanityCheck.h | 34 ++++++++++++++++++++++++++++ Marlin/src/module/stepper/trinamic.h | 2 -- 3 files changed, 37 insertions(+), 2 deletions(-) diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index edee5e9bd245..3a3daa84acf4 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -1133,6 +1133,9 @@ #endif #endif +// Test for edge stepping on any axis +#define AXIS_HAS_DEDGE(A) (ENABLED(EDGE_STEPPING) && AXIS_IS_TMC(A)) + #if ENABLED(DIRECT_STEPPING) #ifndef STEPPER_PAGES #define STEPPER_PAGES 16 diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 84118729a2de..30b5963e4429 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -4313,6 +4313,40 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); #error "MONITOR_DRIVER_STATUS and SDSUPPORT cannot be used together on boards with shared SPI." #endif +// Although it just toggles STEP, EDGE_STEPPING requires HIGH state for logic +#if ENABLED(EDGE_STEPPING) + #if AXIS_HAS_DEDGE(X) && STEP_STATE_X != HIGH + #error "STEP_STATE_X must be HIGH for EDGE_STEPPING." + #endif + #if AXIS_HAS_DEDGE(Y) && STEP_STATE_Y != HIGH + #error "STEP_STATE_Y must be HIGH for EDGE_STEPPING." + #endif + #if AXIS_HAS_DEDGE(Z) && STEP_STATE_Z != HIGH + #error "STEP_STATE_Z must be HIGH for EDGE_STEPPING." + #endif + #if AXIS_HAS_DEDGE(I) && STEP_STATE_I != HIGH + #error "STEP_STATE_I must be HIGH for EDGE_STEPPING." + #endif + #if AXIS_HAS_DEDGE(J) && STEP_STATE_J != HIGH + #error "STEP_STATE_J must be HIGH for EDGE_STEPPING." + #endif + #if AXIS_HAS_DEDGE(K) && STEP_STATE_K != HIGH + #error "STEP_STATE_K must be HIGH for EDGE_STEPPING." + #endif + #if AXIS_HAS_DEDGE(U) && STEP_STATE_U != HIGH + #error "STEP_STATE_U must be HIGH for EDGE_STEPPING." + #endif + #if AXIS_HAS_DEDGE(V) && STEP_STATE_V != HIGH + #error "STEP_STATE_V must be HIGH for EDGE_STEPPING." + #endif + #if AXIS_HAS_DEDGE(W) && STEP_STATE_W != HIGH + #error "STEP_STATE_W must be HIGH for EDGE_STEPPING." + #endif + #if AXIS_HAS_DEDGE(E0) && STEP_STATE_E != HIGH + #error "STEP_STATE_E must be HIGH for EDGE_STEPPING." + #endif +#endif + // G60/G61 Position Save #if SAVED_POSITIONS > 256 #error "SAVED_POSITIONS must be an integer from 0 to 256." diff --git a/Marlin/src/module/stepper/trinamic.h b/Marlin/src/module/stepper/trinamic.h index 3705543c9904..88c0686fc37b 100644 --- a/Marlin/src/module/stepper/trinamic.h +++ b/Marlin/src/module/stepper/trinamic.h @@ -115,8 +115,6 @@ void restore_trinamic_drivers(); void reset_trinamic_drivers(); -#define AXIS_HAS_DEDGE(A) (AXIS_IS_TMC(A) && ENABLED(EDGE_STEPPING)) - // X Stepper #if AXIS_IS_TMC(X) extern TMC_CLASS(X, X) stepperX; From b44d21c595c5266e2590fc99712b107f7cb19067 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 15 Apr 2023 00:21:50 +0000 Subject: [PATCH 008/427] [cron] Bump distribution date (2023-04-15) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index f9d7ff29889d..11ce41f42a89 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-14" +//#define STRING_DISTRIBUTION_DATE "2023-04-15" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 0bd02a67e80f..c3c89a1398e0 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-14" + #define STRING_DISTRIBUTION_DATE "2023-04-15" #endif /** From 756fd1b9acc6238ff677513cfaa3da2da7aa6fa4 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 14 Apr 2023 22:22:07 -0500 Subject: [PATCH 009/427] =?UTF-8?q?=F0=9F=94=A7=20Trigorilla=20/=20Chiron?= =?UTF-8?q?=20updates?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to c3f34e4e --- Marlin/src/pins/ramps/pins_RAMPS.h | 41 ++++++----- Marlin/src/pins/ramps/pins_TRIGORILLA_14.h | 80 +++++++++++----------- 2 files changed, 65 insertions(+), 56 deletions(-) diff --git a/Marlin/src/pins/ramps/pins_RAMPS.h b/Marlin/src/pins/ramps/pins_RAMPS.h index 4541aefacb76..0334da2da39c 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS.h +++ b/Marlin/src/pins/ramps/pins_RAMPS.h @@ -97,10 +97,10 @@ #define Z_MAX_PIN -1 #endif #ifndef I_STOP_PIN - #define I_STOP_PIN 18 + #define I_STOP_PIN 18 // Z- #endif #ifndef J_STOP_PIN - #define J_STOP_PIN 19 + #define J_STOP_PIN 19 // Z+ #endif #endif @@ -109,26 +109,26 @@ // #ifndef X_STOP_PIN #ifndef X_MIN_PIN - #define X_MIN_PIN 3 + #define X_MIN_PIN 3 // X- #endif #ifndef X_MAX_PIN - #define X_MAX_PIN 2 + #define X_MAX_PIN 2 // X+ #endif #endif #ifndef Y_STOP_PIN #ifndef Y_MIN_PIN - #define Y_MIN_PIN 14 + #define Y_MIN_PIN 14 // Y- #endif #ifndef Y_MAX_PIN - #define Y_MAX_PIN 15 + #define Y_MAX_PIN 15 // Y+ #endif #endif #ifndef Z_STOP_PIN #ifndef Z_MIN_PIN - #define Z_MIN_PIN 18 + #define Z_MIN_PIN 18 // Z- #endif #ifndef Z_MAX_PIN - #define Z_MAX_PIN 19 + #define Z_MAX_PIN 19 // Z+ #endif #endif @@ -687,8 +687,6 @@ #if IS_RRD_SC - #define BEEPER_PIN EXP1_01_PIN - #if ENABLED(CR10_STOCKDISPLAY) #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN @@ -743,7 +741,9 @@ #define DOGLCD_A0 AUX2_07_PIN #define LCD_SCREEN_ROTATE 180 // 0, 90, 180, 270 - #define BEEPER_PIN EXP2_05_PIN + #ifndef BEEPER_PIN + #define BEEPER_PIN EXP2_05_PIN + #endif #define STAT_LED_RED_PIN AUX4_03_PIN #define STAT_LED_BLUE_PIN EXP1_02_PIN @@ -761,7 +761,9 @@ #define DOGLCD_CS EXP1_08_PIN #define DOGLCD_A0 EXP1_07_PIN - #define BEEPER_PIN EXP1_05_PIN + #ifndef BEEPER_PIN + #define BEEPER_PIN EXP1_05_PIN + #endif #define LCD_BACKLIGHT_PIN EXP2_05_PIN #define BTN_EN1 EXP1_02_PIN @@ -776,7 +778,6 @@ #elif EITHER(MKS_MINI_12864, FYSETC_MINI_12864) - #define BEEPER_PIN EXP1_01_PIN #define BTN_ENC EXP1_02_PIN #ifndef SD_DETECT_PIN #define SD_DETECT_PIN EXP2_07_PIN @@ -830,7 +831,9 @@ #elif ENABLED(MINIPANEL) - #define BEEPER_PIN AUX2_08_PIN + #ifndef BEEPER_PIN + #define BEEPER_PIN AUX2_08_PIN + #endif #define LCD_BACKLIGHT_PIN AUX2_10_PIN #define DOGLCD_A0 AUX2_07_PIN @@ -855,8 +858,6 @@ #elif ENABLED(G3D_PANEL) - #define BEEPER_PIN EXP1_01_PIN - #ifndef SD_DETECT_PIN #define SD_DETECT_PIN EXP2_07_PIN #endif @@ -874,7 +875,9 @@ #else - #define BEEPER_PIN EXP2_05_PIN + #ifndef BEEPER_PIN + #define BEEPER_PIN EXP2_05_PIN + #endif #if ENABLED(PANEL_ONE) // Buttons connect directly to AUX-2 #define BTN_EN1 AUX2_03_PIN @@ -889,6 +892,10 @@ #endif #endif // IS_NEWPANEL + #ifndef BEEPER_PIN + #define BEEPER_PIN EXP1_01_PIN // Most common mapping + #endif + #endif // HAS_WIRED_LCD && !LCD_PINS_DEFINED #if IS_RRW_KEYPAD && !HAS_ADC_BUTTONS diff --git a/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h b/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h index 9e761fd2474a..4399014c48d2 100644 --- a/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h +++ b/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h @@ -56,6 +56,10 @@ /** * Trigorilla Plugs (oriented with stepper plugs at the top) * + * SENSORS : GND GND GND GND + * A12 A15 A14 A13 + * (D66 D69 D68 D67) + * * AUX : D42 GND 5V (Chiron Y-STOP) * D43 GND 5V (Chiron Z-STOP) * @@ -70,6 +74,34 @@ * 5V 5V 5V 5V 5V 5V */ +/** Expansion Headers + * ------ ------ + * 37 | 1 2 | 35 (MISO) 50 | 1 2 | 52 (SCK) + * 17 | 3 4 | 16 31 | 3 4 | 53 + * 23 5 6 | 25 33 5 6 | 51 (MOSI) + * 27 | 7 8 | 29 49 | 7 8 | 41 + * (GND) | 9 10 | (5V) (GND) | 9 10 | RESET + * ------ ------ + * EXP1 EXP2 + */ +#define EXP1_01_PIN 37 +#define EXP1_02_PIN 35 +#define EXP1_03_PIN 17 +#define EXP1_04_PIN 16 +#define EXP1_05_PIN 23 +#define EXP1_06_PIN 25 +#define EXP1_07_PIN 27 +#define EXP1_08_PIN 29 + +#define EXP2_01_PIN 50 // MISO +#define EXP2_02_PIN 52 // SCK +#define EXP2_03_PIN 31 +#define EXP2_04_PIN 53 +#define EXP2_05_PIN 33 +#define EXP2_06_PIN 51 // MOSI +#define EXP2_07_PIN 49 +#define EXP2_08_PIN 41 + // // AnyCubic pin mappings // @@ -80,12 +112,12 @@ //#define ANYCUBIC_4_MAX_PRO_ENDSTOPS #if ENABLED(ANYCUBIC_4_MAX_PRO_ENDSTOPS) - #define X_MAX_PIN 43 - #define Y_STOP_PIN 19 + #define X_MAX_PIN 43 // AUX (2) + #define Y_STOP_PIN 19 // Z+ #elif EITHER(TRIGORILLA_MAPPING_CHIRON, TRIGORILLA_MAPPING_I3MEGA) // Chiron uses AUX header for Y and Z endstops - #define Y_STOP_PIN 42 // AUX - #define Z_STOP_PIN 43 // AUX + #define Y_STOP_PIN 42 // AUX (1) + #define Z_STOP_PIN 43 // AUX (2) #define Z2_MIN_PIN 18 // Z- #ifndef Z_MIN_PROBE_PIN @@ -101,7 +133,7 @@ #if ENABLED(TRIGORILLA_MAPPING_CHIRON) #if ENABLED(ANYCUBIC_LCD_CHIRON) && !defined(FIL_RUNOUT_PIN) - #define FIL_RUNOUT_PIN 33 // Chiron LCD Adapter only + #define FIL_RUNOUT_PIN EXP2_05_PIN // Chiron Standard Adapter #endif #define HEATER_BED_PIN MOSFET_B_PIN // HEATER1 #endif @@ -125,8 +157,10 @@ #endif #if EITHER(ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_I3MEGA) - #define BEEPER_PIN 31 - #define SD_DETECT_PIN 49 + #ifndef BEEPER_PIN + #define BEEPER_PIN EXP2_03_PIN // Chiron Standard Adapter + #endif + #define SD_DETECT_PIN EXP2_07_PIN // Chiron Standard Adapter #endif #if HAS_TMC_UART @@ -145,35 +179,3 @@ #endif #include "pins_RAMPS.h" - -// -// AnyCubic made the following changes to 1.1.0-RC8 -// If these are appropriate for your LCD let us know. -// -#if 0 && HAS_WIRED_LCD - - // LCD Display output pins - #if BOTH(IS_NEWPANEL, PANEL_ONE) - #undef LCD_PINS_D6 - #define LCD_PINS_D6 57 - #endif - - // LCD Display input pins - #if IS_NEWPANEL - #if EITHER(VIKI2, miniVIKI) - #undef DOGLCD_A0 - #define DOGLCD_A0 23 - #elif ENABLED(ELB_FULL_GRAPHIC_CONTROLLER) - #undef BEEPER_PIN - #define BEEPER_PIN 33 - #undef LCD_BACKLIGHT_PIN - #define LCD_BACKLIGHT_PIN 67 - #endif - #elif ENABLED(MINIPANEL) - #undef BEEPER_PIN - #define BEEPER_PIN 33 - #undef DOGLCD_A0 - #define DOGLCD_A0 42 - #endif - -#endif // HAS_WIRED_LCD From d77e921a1512c22670b5ccf421a186d7ce3bd815 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 14 Apr 2023 22:26:06 -0500 Subject: [PATCH 010/427] =?UTF-8?q?=E2=9C=A8=20STARTUP=5FTUNE=20option?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/MarlinCore.cpp | 5 +++++ Marlin/src/gcode/lcd/M300.cpp | 7 +++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index d2a9f395b706..aaa8e0b4b4ed 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -1660,6 +1660,11 @@ void setup() { marlin_state = MF_RUNNING; + #if ENABLED(SPEAKER) && defined(STARTUP_TUNE) + constexpr uint16_t tune[] = STARTUP_TUNE; + for (uint8_t i = 0; i < COUNT(tune); i += 2) BUZZ(tune[i + 1], tune[i]); + #endif + SETUP_LOG("setup() completed."); TERN_(MARLIN_TEST_BUILD, runStartupTests()); diff --git a/Marlin/src/gcode/lcd/M300.cpp b/Marlin/src/gcode/lcd/M300.cpp index 76d4b96b2428..7ee811f0bdce 100644 --- a/Marlin/src/gcode/lcd/M300.cpp +++ b/Marlin/src/gcode/lcd/M300.cpp @@ -30,10 +30,13 @@ #include "../../libs/buzzer.h" // Buzzer, if possible /** - * M300: Play beep sound S P + * M300: Play a Tone / Add a tone to the queue + * + * S - (Hz) The frequency of the tone. 0 for silence. + * P - (ms) The duration of the tone. */ void GcodeSuite::M300() { - uint16_t const frequency = parser.ushortval('S', 260); + const uint16_t frequency = parser.ushortval('S', 260); uint16_t duration = parser.ushortval('P', 1000); // Limits the tone duration to 0-5 seconds. From cc3a355ffbc85a9908c8e7986e3453de951c2316 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sun, 16 Apr 2023 00:21:45 +0000 Subject: [PATCH 011/427] [cron] Bump distribution date (2023-04-16) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 11ce41f42a89..b345bef51415 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-15" +//#define STRING_DISTRIBUTION_DATE "2023-04-16" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index c3c89a1398e0..bf22ae4ded5d 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-15" + #define STRING_DISTRIBUTION_DATE "2023-04-16" #endif /** From 42c62ff84e9e5322daa61ac2e582414d0304acc8 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 15 Apr 2023 17:33:56 -0500 Subject: [PATCH 012/427] =?UTF-8?q?=E2=9C=A8=20STARTUP=5FTUNE=20configurat?= =?UTF-8?q?ion?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration.h | 12 ++++++++++++ Marlin/src/MarlinCore.cpp | 5 +++-- Marlin/src/inc/SanityCheck.h | 10 ++++++++++ buildroot/tests/NUCLEO_F767ZI | 2 +- 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 81591597b257..9844b44e1048 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -2681,6 +2681,18 @@ //#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 2 //#define LCD_FEEDBACK_FREQUENCY_HZ 5000 +// +// Tone queue size, used to keep beeps from blocking execution. +// Default is 4, or override here. Costs 4 bytes of SRAM per entry. +// +//#define TONE_QUEUE_LENGTH 4 + +// +// A sequence of tones to play at startup, in pairs of tone (Hz), duration (ms). +// Silence in-between tones. +// +//#define STARTUP_TUNE { 698, 300, 0, 50, 523, 50, 0, 25, 494, 50, 0, 25, 523, 100, 0, 50, 554, 300, 0, 100, 523, 300 } + //============================================================================= //======================== LCD / Controller Selection ========================= //======================== (Character-based LCDs) ========================= diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index aaa8e0b4b4ed..8c0f7a29e87a 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -1660,9 +1660,10 @@ void setup() { marlin_state = MF_RUNNING; - #if ENABLED(SPEAKER) && defined(STARTUP_TUNE) + #ifdef STARTUP_TUNE + // Play a short startup tune before continuing. constexpr uint16_t tune[] = STARTUP_TUNE; - for (uint8_t i = 0; i < COUNT(tune); i += 2) BUZZ(tune[i + 1], tune[i]); + for (uint8_t i = 0; i < COUNT(tune) - 1; i += 2) BUZZ(tune[i + 1], tune[i]); #endif SETUP_LOG("setup() completed."); diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 30b5963e4429..fd58a9c54ea4 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -3324,6 +3324,16 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #endif #endif +// Startup Tune requirements +#ifdef STARTUP_TUNE + #if EITHER(ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_VYPER) + #error "STARTUP_TUNE should be disabled with ANYCUBIC_LCD_CHIRON or ANYCUBIC_LCD_VYPER." + #elif !(BOTH(HAS_BEEPER, SPEAKER) || USE_MARLINUI_BUZZER) + #error "STARTUP_TUNE requires a BEEPER_PIN with SPEAKER or USE_MARLINUI_BUZZER." + #undef STARTUP_TUNE + #endif +#endif + /** * Display Sleep is not supported by these common displays */ diff --git a/buildroot/tests/NUCLEO_F767ZI b/buildroot/tests/NUCLEO_F767ZI index 9e2324660695..a331618a0905 100755 --- a/buildroot/tests/NUCLEO_F767ZI +++ b/buildroot/tests/NUCLEO_F767ZI @@ -11,7 +11,7 @@ set -e # restore_configs opt_set MOTHERBOARD BOARD_NUCLEO_F767ZI SERIAL_PORT -1 X_DRIVER_TYPE TMC2209 Y_DRIVER_TYPE TMC2208 -opt_enable BLTOUCH Z_SAFE_HOMING SPEAKER SOFTWARE_DRIVER_ENABLE +opt_enable BLTOUCH Z_SAFE_HOMING REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER SPEAKER STARTUP_TUNE SOFTWARE_DRIVER_ENABLE exec_test $1 $2 "Mixed timer usage" "$3" # clean up From 92721d1bf7d3516ffa591bf7fa9b0b03099f5156 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 14 Apr 2023 17:45:45 -0500 Subject: [PATCH 013/427] =?UTF-8?q?=F0=9F=9A=B8=20"Main"=20=3D>=20"Main=20?= =?UTF-8?q?Menu"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/e3v2/creality/dwin.cpp | 2 +- .../extui/ftdi_eve_touch_ui/bioprinter/main_menu.cpp | 2 +- Marlin/src/lcd/language/language_an.h | 2 +- Marlin/src/lcd/language/language_bg.h | 2 +- Marlin/src/lcd/language/language_ca.h | 2 +- Marlin/src/lcd/language/language_cz.h | 2 +- Marlin/src/lcd/language/language_da.h | 2 +- Marlin/src/lcd/language/language_de.h | 2 +- Marlin/src/lcd/language/language_el.h | 2 +- Marlin/src/lcd/language/language_el_gr.h | 2 +- Marlin/src/lcd/language/language_en.h | 2 +- Marlin/src/lcd/language/language_es.h | 2 +- Marlin/src/lcd/language/language_eu.h | 2 +- Marlin/src/lcd/language/language_fi.h | 2 +- Marlin/src/lcd/language/language_fr.h | 2 +- Marlin/src/lcd/language/language_fr_na.h | 2 +- Marlin/src/lcd/language/language_gl.h | 2 +- Marlin/src/lcd/language/language_hr.h | 2 +- Marlin/src/lcd/language/language_hu.h | 2 +- Marlin/src/lcd/language/language_it.h | 2 +- Marlin/src/lcd/language/language_jp_kana.h | 2 +- Marlin/src/lcd/language/language_ko_KR.h | 2 +- Marlin/src/lcd/language/language_nl.h | 2 +- Marlin/src/lcd/language/language_pl.h | 2 +- Marlin/src/lcd/language/language_pt.h | 2 +- Marlin/src/lcd/language/language_pt_br.h | 2 +- Marlin/src/lcd/language/language_ro.h | 2 +- Marlin/src/lcd/language/language_ru.h | 2 +- Marlin/src/lcd/language/language_sk.h | 2 +- Marlin/src/lcd/language/language_sv.h | 2 +- Marlin/src/lcd/language/language_test.h | 12 ++++++------ Marlin/src/lcd/language/language_tr.h | 2 +- Marlin/src/lcd/language/language_uk.h | 2 +- Marlin/src/lcd/language/language_vi.h | 2 +- Marlin/src/lcd/language/language_zh_CN.h | 2 +- Marlin/src/lcd/language/language_zh_TW.h | 2 +- Marlin/src/lcd/menu/menu_backlash.cpp | 2 +- Marlin/src/lcd/menu/menu_cancelobject.cpp | 2 +- Marlin/src/lcd/menu/menu_configuration.cpp | 4 ++-- Marlin/src/lcd/menu/menu_delta_calibrate.cpp | 2 +- Marlin/src/lcd/menu/menu_filament.cpp | 2 +- Marlin/src/lcd/menu/menu_game.cpp | 2 +- Marlin/src/lcd/menu/menu_info.cpp | 2 +- Marlin/src/lcd/menu/menu_language.cpp | 2 +- Marlin/src/lcd/menu/menu_led.cpp | 2 +- Marlin/src/lcd/menu/menu_main.cpp | 2 +- Marlin/src/lcd/menu/menu_media.cpp | 4 ++-- Marlin/src/lcd/menu/menu_mixer.cpp | 2 +- Marlin/src/lcd/menu/menu_mmu2.cpp | 2 +- Marlin/src/lcd/menu/menu_motion.cpp | 2 +- Marlin/src/lcd/menu/menu_power_monitor.cpp | 2 +- Marlin/src/lcd/menu/menu_spindle_laser.cpp | 2 +- Marlin/src/lcd/menu/menu_temperature.cpp | 4 ++-- Marlin/src/lcd/menu/menu_tune.cpp | 2 +- 54 files changed, 62 insertions(+), 62 deletions(-) diff --git a/Marlin/src/lcd/e3v2/creality/dwin.cpp b/Marlin/src/lcd/e3v2/creality/dwin.cpp index 02bfa624fa30..66baff1611f7 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin.cpp +++ b/Marlin/src/lcd/e3v2/creality/dwin.cpp @@ -1273,7 +1273,7 @@ void Goto_MainMenu() { DWIN_Frame_TitleCopy(2, 2, 26, 13); // "Home" etc else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_MAIN)); + Draw_Title(GET_TEXT_F(MSG_MAIN_MENU)); #else DWIN_Frame_TitleCopy(0, 2, 40, 11); // "Home" #endif diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/bioprinter/main_menu.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/bioprinter/main_menu.cpp index edae2cb04295..8de81a98ae2c 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/bioprinter/main_menu.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/bioprinter/main_menu.cpp @@ -43,7 +43,7 @@ void MainMenu::onRedraw(draw_mode_t what) { if (what & FOREGROUND) { CommandProcessor cmd; cmd.cmd(COLOR_RGB(bg_text_enabled)) - .font(font_large).text( BTN_POS(1,1), BTN_SIZE(2,1), GET_TEXT_F(MSG_MAIN)) + .font(font_large).text( BTN_POS(1,1), BTN_SIZE(2,1), GET_TEXT_F(MSG_MAIN_MENU)) .colors(normal_btn) .font(font_medium) .tag(2).button(BTN_POS(1,2), BTN_SIZE(2,1), GET_TEXT_F(MSG_MOVE_TO_HOME)) diff --git a/Marlin/src/lcd/language/language_an.h b/Marlin/src/lcd/language/language_an.h index a7da7c6e9681..7d6b6de33b66 100644 --- a/Marlin/src/lcd/language/language_an.h +++ b/Marlin/src/lcd/language/language_an.h @@ -41,7 +41,7 @@ namespace Language_an { LSTR MSG_MEDIA_INSERTED = _UxGT("Tarcheta mesa"); LSTR MSG_MEDIA_REMOVED = _UxGT("Tarcheta sacada"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Endstops"); // Max length 8 characters - LSTR MSG_MAIN = _UxGT("Menu prencipal"); + LSTR MSG_MAIN_MENU = _UxGT("Menu prencipal"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Inicio automatico"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Amortar motors"); LSTR MSG_HOMING = _UxGT("Orichen"); diff --git a/Marlin/src/lcd/language/language_bg.h b/Marlin/src/lcd/language/language_bg.h index 87199ffbc98d..17f631090d33 100644 --- a/Marlin/src/lcd/language/language_bg.h +++ b/Marlin/src/lcd/language/language_bg.h @@ -39,7 +39,7 @@ namespace Language_bg { LSTR WELCOME_MSG = MACHINE_NAME _UxGT(" Готов."); LSTR MSG_MEDIA_INSERTED = _UxGT("Картата е поставена"); LSTR MSG_MEDIA_REMOVED = _UxGT("Картата е извадена"); - LSTR MSG_MAIN = _UxGT("Меню"); + LSTR MSG_MAIN_MENU = _UxGT("Меню"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Автостарт"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Изкл. двигатели"); LSTR MSG_AUTO_HOME = _UxGT("Паркиране"); diff --git a/Marlin/src/lcd/language/language_ca.h b/Marlin/src/lcd/language/language_ca.h index fec9c447419a..ac6d4388e1ad 100644 --- a/Marlin/src/lcd/language/language_ca.h +++ b/Marlin/src/lcd/language/language_ca.h @@ -37,7 +37,7 @@ namespace Language_ca { LSTR MSG_MEDIA_INSERTED = _UxGT("Targeta detectada."); LSTR MSG_MEDIA_REMOVED = _UxGT("Targeta extreta."); LSTR MSG_LCD_ENDSTOPS = _UxGT("Endstops"); - LSTR MSG_MAIN = _UxGT("Menú principal"); + LSTR MSG_MAIN_MENU = _UxGT("Menú principal"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Inici automatic"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Desactiva motors"); LSTR MSG_DEBUG_MENU = _UxGT("Menu de depuracio"); diff --git a/Marlin/src/lcd/language/language_cz.h b/Marlin/src/lcd/language/language_cz.h index f0da14106945..d06c5554fde3 100644 --- a/Marlin/src/lcd/language/language_cz.h +++ b/Marlin/src/lcd/language/language_cz.h @@ -54,7 +54,7 @@ namespace Language_cz { LSTR MSG_MEDIA_USB_FAILED = _UxGT("Chyba USB"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Endstopy"); // max 8 znaku LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Soft Endstopy"); - LSTR MSG_MAIN = _UxGT("Hlavní nabídka"); + LSTR MSG_MAIN_MENU = _UxGT("Hlavní nabídka"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Další nastavení"); LSTR MSG_CONFIGURATION = _UxGT("Konfigurace"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Autostart"); diff --git a/Marlin/src/lcd/language/language_da.h b/Marlin/src/lcd/language/language_da.h index ec1a76978360..a424883000b9 100644 --- a/Marlin/src/lcd/language/language_da.h +++ b/Marlin/src/lcd/language/language_da.h @@ -39,7 +39,7 @@ namespace Language_da { LSTR WELCOME_MSG = MACHINE_NAME _UxGT(" er klar"); LSTR MSG_MEDIA_INSERTED = _UxGT("Kort isat"); LSTR MSG_MEDIA_REMOVED = _UxGT("Kort fjernet"); - LSTR MSG_MAIN = _UxGT("Menu"); + LSTR MSG_MAIN_MENU = _UxGT("Menu"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Slå alle steppere fra"); LSTR MSG_AUTO_HOME = _UxGT("Auto Home"); // G28 LSTR MSG_LEVEL_BED_WAITING = _UxGT("Klik når du er klar"); diff --git a/Marlin/src/lcd/language/language_de.h b/Marlin/src/lcd/language/language_de.h index 32da975e04ac..4313a80490ca 100644 --- a/Marlin/src/lcd/language/language_de.h +++ b/Marlin/src/lcd/language/language_de.h @@ -52,7 +52,7 @@ namespace Language_de { LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Subcall überschritten"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Endstopp"); // Max length 8 characters LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Software-Endstopp"); - LSTR MSG_MAIN = _UxGT("Hauptmenü"); + LSTR MSG_MAIN_MENU = _UxGT("Hauptmenü"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Erw. Einstellungen"); LSTR MSG_TOOLBAR_SETUP = _UxGT("Toolbar Einstellung"); LSTR MSG_OPTION_DISABLED = _UxGT("Option Deaktiviert"); diff --git a/Marlin/src/lcd/language/language_el.h b/Marlin/src/lcd/language/language_el.h index a411f3315520..e18bda4edfc3 100644 --- a/Marlin/src/lcd/language/language_el.h +++ b/Marlin/src/lcd/language/language_el.h @@ -51,7 +51,7 @@ namespace Language_el { LSTR MSG_MEDIA_USB_REMOVED = _UxGT("USB αφαιρέθη"); LSTR MSG_MEDIA_USB_FAILED = _UxGT("Αποτυχία εκκίνησης USB"); LSTR MSG_MEDIA_INIT_FAIL = _UxGT("Αποτυχία αρχικοποίησης SD"); - LSTR MSG_MAIN = _UxGT("Αρχική Οθόνη"); + LSTR MSG_MAIN_MENU = _UxGT("Αρχική Οθόνη"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Αυτόματη εκκίνηση"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Απενεργοποίηση μοτέρ"); LSTR MSG_AUTO_HOME = _UxGT("Αυτόμ. επαναφορά XYZ"); diff --git a/Marlin/src/lcd/language/language_el_gr.h b/Marlin/src/lcd/language/language_el_gr.h index 463d6d4c7bd9..d4eabb70cea2 100644 --- a/Marlin/src/lcd/language/language_el_gr.h +++ b/Marlin/src/lcd/language/language_el_gr.h @@ -40,7 +40,7 @@ namespace Language_el_gr { LSTR MSG_MEDIA_INSERTED = _UxGT("Εισαγωγή κάρτας"); LSTR MSG_MEDIA_REMOVED = _UxGT("Αφαίρεση κάρτας"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Endstops"); // Max length 8 characters - LSTR MSG_MAIN = _UxGT("Βασική Οθόνη"); + LSTR MSG_MAIN_MENU = _UxGT("Βασική Οθόνη"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Αυτόματη εκκίνηση"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Απενεργοποίηση βηματιστή"); LSTR MSG_AUTO_HOME = _UxGT("Αυτομ. επαναφορά στο αρχικό σημείο"); diff --git a/Marlin/src/lcd/language/language_en.h b/Marlin/src/lcd/language/language_en.h index 55f426017cef..68c231d55610 100644 --- a/Marlin/src/lcd/language/language_en.h +++ b/Marlin/src/lcd/language/language_en.h @@ -67,7 +67,7 @@ namespace Language_en { LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Subcall Overflow"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Endstops"); // Max length 8 characters LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Soft Endstops"); - LSTR MSG_MAIN = _UxGT("Main"); + LSTR MSG_MAIN_MENU = _UxGT("Main Menu"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Advanced Settings"); LSTR MSG_TOOLBAR_SETUP = _UxGT("Toolbar Setup"); LSTR MSG_OPTION_DISABLED = _UxGT("Option Disabled"); diff --git a/Marlin/src/lcd/language/language_es.h b/Marlin/src/lcd/language/language_es.h index 13d9a9b6550b..371df360ee82 100644 --- a/Marlin/src/lcd/language/language_es.h +++ b/Marlin/src/lcd/language/language_es.h @@ -49,7 +49,7 @@ namespace Language_es { LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Desbordamiento de subllamada"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Endstops"); // Max length 8 characters LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Soft Endstops"); - LSTR MSG_MAIN = _UxGT("Menú principal"); + LSTR MSG_MAIN_MENU = _UxGT("Menú principal"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Ajustes avanzados"); LSTR MSG_CONFIGURATION = _UxGT("Configuración"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Inicio automático"); diff --git a/Marlin/src/lcd/language/language_eu.h b/Marlin/src/lcd/language/language_eu.h index f000b5fcfb10..9b969762d550 100644 --- a/Marlin/src/lcd/language/language_eu.h +++ b/Marlin/src/lcd/language/language_eu.h @@ -41,7 +41,7 @@ namespace Language_eu { LSTR MSG_BACK = _UxGT("Atzera"); LSTR MSG_MEDIA_INSERTED = _UxGT("Txartela sartuta"); LSTR MSG_MEDIA_REMOVED = _UxGT("Txartela kenduta"); - LSTR MSG_MAIN = _UxGT("Menu nagusia"); + LSTR MSG_MAIN_MENU = _UxGT("Menu nagusia"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Auto hasiera"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Itzali motoreak"); LSTR MSG_DEBUG_MENU = _UxGT("Arazketa Menua"); diff --git a/Marlin/src/lcd/language/language_fi.h b/Marlin/src/lcd/language/language_fi.h index 300da9b95652..57fc0a7c21b5 100644 --- a/Marlin/src/lcd/language/language_fi.h +++ b/Marlin/src/lcd/language/language_fi.h @@ -39,7 +39,7 @@ namespace Language_fi { LSTR WELCOME_MSG = MACHINE_NAME _UxGT(" valmis."); LSTR MSG_MEDIA_INSERTED = _UxGT("Kortti asetettu"); LSTR MSG_MEDIA_REMOVED = _UxGT("Kortti poistettu"); - LSTR MSG_MAIN = _UxGT("Palaa"); + LSTR MSG_MAIN_MENU = _UxGT("Palaa"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Automaatti"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Vapauta moottorit"); LSTR MSG_AUTO_HOME = _UxGT("Aja referenssiin"); diff --git a/Marlin/src/lcd/language/language_fr.h b/Marlin/src/lcd/language/language_fr.h index 112832839140..f7eec7f5cea6 100644 --- a/Marlin/src/lcd/language/language_fr.h +++ b/Marlin/src/lcd/language/language_fr.h @@ -49,7 +49,7 @@ namespace Language_fr { LSTR MSG_MEDIA_USB_FAILED = _UxGT("Erreur média USB"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Butées"); LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Butées SW"); - LSTR MSG_MAIN = _UxGT("Menu principal"); + LSTR MSG_MAIN_MENU = _UxGT("Menu principal"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Config. avancée"); LSTR MSG_CONFIGURATION = _UxGT("Configuration"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Exéc. auto.gcode"); diff --git a/Marlin/src/lcd/language/language_fr_na.h b/Marlin/src/lcd/language/language_fr_na.h index 48030dd031d2..9300b299eba3 100644 --- a/Marlin/src/lcd/language/language_fr_na.h +++ b/Marlin/src/lcd/language/language_fr_na.h @@ -49,7 +49,7 @@ namespace Language_fr_na { LSTR MSG_MEDIA_USB_FAILED = _UxGT("Erreur media USB"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Butees"); LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Butees SW"); - LSTR MSG_MAIN = _UxGT("Menu principal"); + LSTR MSG_MAIN_MENU = _UxGT("Menu principal"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Config. avancee"); LSTR MSG_CONFIGURATION = _UxGT("Configuration"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Exec. auto.gcode"); diff --git a/Marlin/src/lcd/language/language_gl.h b/Marlin/src/lcd/language/language_gl.h index 7d6b28583428..da8a7047c776 100644 --- a/Marlin/src/lcd/language/language_gl.h +++ b/Marlin/src/lcd/language/language_gl.h @@ -50,7 +50,7 @@ namespace Language_gl { LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Desbord. Subch."); LSTR MSG_LCD_ENDSTOPS = _UxGT("FinCarro"); LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("FinCarro SW"); - LSTR MSG_MAIN = _UxGT("Menú principal"); + LSTR MSG_MAIN_MENU = _UxGT("Menú principal"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Axustes avanzados"); LSTR MSG_CONFIGURATION = _UxGT("Configuración"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Autoarranque"); diff --git a/Marlin/src/lcd/language/language_hr.h b/Marlin/src/lcd/language/language_hr.h index 697341fc44c0..1f51c5c539b0 100644 --- a/Marlin/src/lcd/language/language_hr.h +++ b/Marlin/src/lcd/language/language_hr.h @@ -40,7 +40,7 @@ namespace Language_hr { LSTR MSG_MEDIA_INSERTED = _UxGT("SD kartica umetnuta"); LSTR MSG_MEDIA_REMOVED = _UxGT("SD kartica uklonjena"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Endstops"); // Max length 8 characters - LSTR MSG_MAIN = _UxGT("Main"); + LSTR MSG_MAIN_MENU = _UxGT("Main"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Auto pokretanje"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Ugasi steppere"); LSTR MSG_AUTO_HOME = _UxGT("Automatski homing"); diff --git a/Marlin/src/lcd/language/language_hu.h b/Marlin/src/lcd/language/language_hu.h index caa8fc62df7b..471f2ee8cb5b 100644 --- a/Marlin/src/lcd/language/language_hu.h +++ b/Marlin/src/lcd/language/language_hu.h @@ -54,7 +54,7 @@ namespace Language_hu { LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Túlfolyás"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Végállás"); // Maximum 8 karakter LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Szoft. végállás"); - LSTR MSG_MAIN = _UxGT(""); + LSTR MSG_MAIN_MENU = _UxGT(""); LSTR MSG_ADVANCED_SETTINGS = _UxGT("További beállítások"); LSTR MSG_CONFIGURATION = _UxGT("Konfiguráció"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Fájl auto. futtatás"); diff --git a/Marlin/src/lcd/language/language_it.h b/Marlin/src/lcd/language/language_it.h index fb9178c67ecf..4bc7c0303a3e 100644 --- a/Marlin/src/lcd/language/language_it.h +++ b/Marlin/src/lcd/language/language_it.h @@ -62,7 +62,7 @@ namespace Language_it { LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Overflow subchiamate"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Finecor."); // Max 8 characters LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Finecorsa Soft"); - LSTR MSG_MAIN = _UxGT("Menu principale"); + LSTR MSG_MAIN_MENU = _UxGT("Menu principale"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Impostaz. avanzate"); LSTR MSG_TOOLBAR_SETUP = _UxGT("Cnf barra strumenti"); LSTR MSG_OPTION_DISABLED = _UxGT("Opzione disab."); diff --git a/Marlin/src/lcd/language/language_jp_kana.h b/Marlin/src/lcd/language/language_jp_kana.h index 8ed1a7865e2c..75707108381a 100644 --- a/Marlin/src/lcd/language/language_jp_kana.h +++ b/Marlin/src/lcd/language/language_jp_kana.h @@ -46,7 +46,7 @@ namespace Language_jp_kana { LSTR MSG_MEDIA_REMOVED = _UxGT("メディアガアリマセン"); // "Card removed" LSTR MSG_RELEASE_MEDIA = _UxGT("メディアノトリダシ"); LSTR MSG_LCD_ENDSTOPS = _UxGT("エンドストップ"); // "Endstops" // Max length 8 characters - LSTR MSG_MAIN = _UxGT("メイン"); // "Main" + LSTR MSG_MAIN_MENU = _UxGT("メイン"); // "Main" LSTR MSG_RUN_AUTO_FILES = _UxGT("ジドウカイシ"); // "Autostart" LSTR MSG_DISABLE_STEPPERS = _UxGT("モーターデンゲン オフ"); // "Disable steppers" LSTR MSG_DEBUG_MENU = _UxGT("デバッグメニュー"); // "Debug Menu" diff --git a/Marlin/src/lcd/language/language_ko_KR.h b/Marlin/src/lcd/language/language_ko_KR.h index 50c73f69e9ae..e52ced2dad6f 100644 --- a/Marlin/src/lcd/language/language_ko_KR.h +++ b/Marlin/src/lcd/language/language_ko_KR.h @@ -39,7 +39,7 @@ namespace Language_ko_KR { LSTR MSG_MEDIA_REMOVED = _UxGT("카드 제거됨"); LSTR MSG_LCD_ENDSTOPS = _UxGT("엔드스탑"); LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("소프트 엔드스탑"); - LSTR MSG_MAIN = _UxGT("뒤로"); + LSTR MSG_MAIN_MENU = _UxGT("뒤로"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("고급 설정"); LSTR MSG_CONFIGURATION = _UxGT("설정"); LSTR MSG_RUN_AUTO_FILES = _UxGT("자동 시작"); diff --git a/Marlin/src/lcd/language/language_nl.h b/Marlin/src/lcd/language/language_nl.h index 6397a95a7e16..d708135fac0a 100644 --- a/Marlin/src/lcd/language/language_nl.h +++ b/Marlin/src/lcd/language/language_nl.h @@ -42,7 +42,7 @@ namespace Language_nl { LSTR MSG_MEDIA_INSERTED = _UxGT("Kaart ingestoken"); LSTR MSG_MEDIA_REMOVED = _UxGT("Kaart verwijderd"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Endstops"); // Max length 8 characters - LSTR MSG_MAIN = _UxGT("Hoofdmenu"); + LSTR MSG_MAIN_MENU = _UxGT("Hoofdmenu"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Autostart"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Motoren uit"); LSTR MSG_DEBUG_MENU = _UxGT("Debug Menu"); // accepted English terms diff --git a/Marlin/src/lcd/language/language_pl.h b/Marlin/src/lcd/language/language_pl.h index 1b5715aedd90..5bf488494185 100644 --- a/Marlin/src/lcd/language/language_pl.h +++ b/Marlin/src/lcd/language/language_pl.h @@ -58,7 +58,7 @@ namespace Language_pl { LSTR MSG_MEDIA_USB_FAILED = _UxGT("Błąd uruchomienia USB"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Krańców."); // Max length 8 characters LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Progr. Krańcówki"); - LSTR MSG_MAIN = _UxGT("Menu główne"); + LSTR MSG_MAIN_MENU = _UxGT("Menu główne"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Ustawienie zaawansowane"); LSTR MSG_CONFIGURATION = _UxGT("Konfiguracja"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Autostart"); diff --git a/Marlin/src/lcd/language/language_pt.h b/Marlin/src/lcd/language/language_pt.h index 7f09d71e4802..ac2cbbdc20d4 100644 --- a/Marlin/src/lcd/language/language_pt.h +++ b/Marlin/src/lcd/language/language_pt.h @@ -40,7 +40,7 @@ namespace Language_pt { LSTR WELCOME_MSG = MACHINE_NAME _UxGT(" pronta."); LSTR MSG_MEDIA_INSERTED = _UxGT("Cartão inserido"); LSTR MSG_MEDIA_REMOVED = _UxGT("Cartão removido"); - LSTR MSG_MAIN = _UxGT("Menu principal"); + LSTR MSG_MAIN_MENU = _UxGT("Menu principal"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Desactivar motores"); LSTR MSG_AUTO_HOME = _UxGT("Ir para origem"); LSTR MSG_AUTO_HOME_X = _UxGT("Ir para origem X"); diff --git a/Marlin/src/lcd/language/language_pt_br.h b/Marlin/src/lcd/language/language_pt_br.h index 1bd3f6168206..c17ca124ed7b 100644 --- a/Marlin/src/lcd/language/language_pt_br.h +++ b/Marlin/src/lcd/language/language_pt_br.h @@ -48,7 +48,7 @@ namespace Language_pt_br { LSTR MSG_MEDIA_USB_FAILED = _UxGT("USB falhou"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Fins de curso"); LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Soft Fins curso"); - LSTR MSG_MAIN = _UxGT("Menu principal"); + LSTR MSG_MAIN_MENU = _UxGT("Menu principal"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Config. Avançada"); LSTR MSG_CONFIGURATION = _UxGT("Configuração"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Início automático"); diff --git a/Marlin/src/lcd/language/language_ro.h b/Marlin/src/lcd/language/language_ro.h index 938aa71c5772..bdb9f226a9f2 100644 --- a/Marlin/src/lcd/language/language_ro.h +++ b/Marlin/src/lcd/language/language_ro.h @@ -49,7 +49,7 @@ namespace Language_ro { LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Eroare:Subcall Overflow"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Endstops"); // Max length 8 characters LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Soft Endstops"); - LSTR MSG_MAIN = _UxGT("Principal"); + LSTR MSG_MAIN_MENU = _UxGT("Principal"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Setari Avansate"); LSTR MSG_CONFIGURATION = _UxGT("Configurare"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Autostart"); diff --git a/Marlin/src/lcd/language/language_ru.h b/Marlin/src/lcd/language/language_ru.h index ab5d7fca9864..6dd773f77b3c 100644 --- a/Marlin/src/lcd/language/language_ru.h +++ b/Marlin/src/lcd/language/language_ru.h @@ -57,7 +57,7 @@ namespace Language_ru { LSTR MSG_MEDIA_USB_FAILED = _UxGT("Ошибка USB диска"); LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Прогр. концевики"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Концевик"); // Max length 8 characters - LSTR MSG_MAIN = _UxGT("Главное меню"); + LSTR MSG_MAIN_MENU = _UxGT("Главное меню"); LSTR MSG_CONFIGURATION = _UxGT("Конфигурация"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Автостарт"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Выключить двигатели"); diff --git a/Marlin/src/lcd/language/language_sk.h b/Marlin/src/lcd/language/language_sk.h index 0e00ce4b1238..c78029048b67 100644 --- a/Marlin/src/lcd/language/language_sk.h +++ b/Marlin/src/lcd/language/language_sk.h @@ -65,7 +65,7 @@ namespace Language_sk { LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Preteč. podprogramu"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Endstopy"); // max 8 znakov LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Soft. endstopy"); - LSTR MSG_MAIN = _UxGT("Hlavná ponuka"); + LSTR MSG_MAIN_MENU = _UxGT("Hlavná ponuka"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Pokročilé nastav."); LSTR MSG_TOOLBAR_SETUP = _UxGT("Panel nástrojov"); LSTR MSG_OPTION_DISABLED = _UxGT("Možnosť vypnutá"); diff --git a/Marlin/src/lcd/language/language_sv.h b/Marlin/src/lcd/language/language_sv.h index c7e6c19bd702..13ae8fcd29ca 100644 --- a/Marlin/src/lcd/language/language_sv.h +++ b/Marlin/src/lcd/language/language_sv.h @@ -51,7 +51,7 @@ namespace Language_sv { LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Underanrop överskriden"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Slutstop"); // Max length 8 characters LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Mjuk slutstopp"); - LSTR MSG_MAIN = _UxGT("Huvud"); + LSTR MSG_MAIN_MENU = _UxGT("Huvud"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Advancerade inställningar"); LSTR MSG_CONFIGURATION = _UxGT("Konfiguration"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Autostarta Filer"); diff --git a/Marlin/src/lcd/language/language_test.h b/Marlin/src/lcd/language/language_test.h index 20b5a7e686ab..657e4e2e48a2 100644 --- a/Marlin/src/lcd/language/language_test.h +++ b/Marlin/src/lcd/language/language_test.h @@ -133,7 +133,7 @@ namespace Language_test { LSTR MSG_PREPARE = _UxGT("UTF8"); LSTR MSG_CONTROL = _UxGT("ASCII"); - LSTR MSG_MAIN = _UxGT(".."); + LSTR MSG_MAIN_MENU = _UxGT(".."); LSTR MSG_DISABLE_STEPPERS = STRG_C2_8; LSTR MSG_AUTO_HOME = STRG_C2_9; LSTR MSG_SET_HOME_OFFSETS = STRG_C2_a; @@ -143,7 +143,7 @@ namespace Language_test { LSTR MSG_SWITCH_PS_OFF = STRG_C3_a; LSTR MSG_MOVE_AXIS = STRG_C3_b; - LSTR MSG_MAIN = STRG_OKTAL_2; + LSTR MSG_MAIN_MENU = STRG_OKTAL_2; LSTR MSG_TEMPERATURE = STRG_OKTAL_3; LSTR MSG_MOTION = STRG_OKTAL_4; LSTR MSG_FILAMENT = STRG_OKTAL_5; @@ -170,7 +170,7 @@ namespace Language_test { LSTR MSG_PREPARE = _UxGT("UTF8"); LSTR MSG_CONTROL = _UxGT("ASCII"); - LSTR MSG_MAIN = _UxGT(".."); + LSTR MSG_MAIN_MENU = _UxGT(".."); LSTR MSG_DISABLE_STEPPERS = STRG_D0_8; LSTR MSG_AUTO_HOME = STRG_D0_9; LSTR MSG_SET_HOME_OFFSETS = STRG_D0_a; @@ -180,7 +180,7 @@ namespace Language_test { LSTR MSG_SWITCH_PS_OFF = STRG_D1_a; LSTR MSG_MOVE_AXIS = STRG_D1_b; - LSTR MSG_MAIN = STRG_OKTAL_2; + LSTR MSG_MAIN_MENU = STRG_OKTAL_2; LSTR MSG_TEMPERATURE = STRG_OKTAL_3; LSTR MSG_MOTION = STRG_OKTAL_4; LSTR MSG_FILAMENT = STRG_OKTAL_5; @@ -206,7 +206,7 @@ namespace Language_test { LSTR MSG_PREPARE = _UxGT("UTF8"); LSTR MSG_CONTROL = _UxGT("ASCII"); - LSTR MSG_MAIN = _UxGT(".."); + LSTR MSG_MAIN_MENU = _UxGT(".."); LSTR MSG_DISABLE_STEPPERS = STRG_E382_8; LSTR MSG_AUTO_HOME = STRG_E382_9; LSTR MSG_SET_HOME_OFFSETS = STRG_E382_a; @@ -216,7 +216,7 @@ namespace Language_test { LSTR MSG_SWITCH_PS_OFF = STRG_E383_a; LSTR MSG_MOVE_AXIS = STRG_E383_b; - LSTR MSG_MAIN = STRG_OKTAL_2; + LSTR MSG_MAIN_MENU = STRG_OKTAL_2; LSTR MSG_TEMPERATURE = STRG_OKTAL_3; LSTR MSG_MOTION = STRG_OKTAL_4; LSTR MSG_FILAMENT = STRG_OKTAL_5; diff --git a/Marlin/src/lcd/language/language_tr.h b/Marlin/src/lcd/language/language_tr.h index 569b32b93dd8..414d545927e4 100644 --- a/Marlin/src/lcd/language/language_tr.h +++ b/Marlin/src/lcd/language/language_tr.h @@ -55,7 +55,7 @@ namespace Language_tr { LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Subcall Overflow"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Endstops"); // Max length 8 characters LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Yazılımsal Endstops"); - LSTR MSG_MAIN = _UxGT("Ana"); + LSTR MSG_MAIN_MENU = _UxGT("Ana"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Gelişmiş Ayarlar"); LSTR MSG_TOOLBAR_SETUP = _UxGT("Araç Çubuğu Kurulumu"); LSTR MSG_OPTION_DISABLED = _UxGT("Seçenek Devre Dışı"); diff --git a/Marlin/src/lcd/language/language_uk.h b/Marlin/src/lcd/language/language_uk.h index 7e7ef5eb37ee..7bdd896a33d7 100644 --- a/Marlin/src/lcd/language/language_uk.h +++ b/Marlin/src/lcd/language/language_uk.h @@ -60,7 +60,7 @@ namespace Language_uk { LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Прогр.кінцевики"); #endif LSTR MSG_LCD_ENDSTOPS = _UxGT("Кінцевик"); // Max length 8 characters - LSTR MSG_MAIN = _UxGT("Основне меню"); + LSTR MSG_MAIN_MENU = _UxGT("Основне меню"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Інші налаштування"); LSTR MSG_CONFIGURATION = _UxGT("Конфігурація"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Автостарт"); diff --git a/Marlin/src/lcd/language/language_vi.h b/Marlin/src/lcd/language/language_vi.h index 3925eb8b83a6..5795c58a1ea7 100644 --- a/Marlin/src/lcd/language/language_vi.h +++ b/Marlin/src/lcd/language/language_vi.h @@ -44,7 +44,7 @@ namespace Language_vi { LSTR MSG_MEDIA_USB_FAILED = _UxGT("USB khởi thất bại"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Công tắc"); // Endstops - công tắc hành trình LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Công tắc mềm"); // soft Endstops - LSTR MSG_MAIN = _UxGT("Chính"); // Main + LSTR MSG_MAIN_MENU = _UxGT("Chính"); // Main LSTR MSG_ADVANCED_SETTINGS = _UxGT("Thiết lập cấp cao"); // Advanced Settings LSTR MSG_CONFIGURATION = _UxGT("Cấu hình"); // Configuration LSTR MSG_RUN_AUTO_FILES = _UxGT("Khởi chạy tự động"); // Autostart diff --git a/Marlin/src/lcd/language/language_zh_CN.h b/Marlin/src/lcd/language/language_zh_CN.h index 0fd72b410cd4..3e8ab9870f3c 100644 --- a/Marlin/src/lcd/language/language_zh_CN.h +++ b/Marlin/src/lcd/language/language_zh_CN.h @@ -48,7 +48,7 @@ namespace Language_zh_CN { LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("子响应溢出"); LSTR MSG_LCD_ENDSTOPS = _UxGT("挡块"); // "Endstops" // Max length 8 characters LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("软挡块"); - LSTR MSG_MAIN = _UxGT("主菜单"); // "Main" + LSTR MSG_MAIN_MENU = _UxGT("主菜单"); // "Main" LSTR MSG_ADVANCED_SETTINGS = _UxGT("高级设置"); LSTR MSG_CONFIGURATION = _UxGT("配置"); LSTR MSG_RUN_AUTO_FILES = _UxGT("自动开始"); // "Autostart" diff --git a/Marlin/src/lcd/language/language_zh_TW.h b/Marlin/src/lcd/language/language_zh_TW.h index a00303864ad8..5f9f0e3904af 100644 --- a/Marlin/src/lcd/language/language_zh_TW.h +++ b/Marlin/src/lcd/language/language_zh_TW.h @@ -46,7 +46,7 @@ namespace Language_zh_TW { LSTR MSG_MEDIA_USB_FAILED = _UxGT("USB啟動失敗"); // "USB start failed" LSTR MSG_LCD_ENDSTOPS = _UxGT("擋塊"); // "Endstops" // Max length 8 characters LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("軟體擋塊"); // "Soft Endstops" - LSTR MSG_MAIN = _UxGT("主選單"); // "Main" + LSTR MSG_MAIN_MENU = _UxGT("主選單"); // "Main" LSTR MSG_ADVANCED_SETTINGS = _UxGT("進階設置"); // "Advanced Settings" LSTR MSG_CONFIGURATION = _UxGT("設置"); //Configuration LSTR MSG_RUN_AUTO_FILES = _UxGT("自動開始"); // "Autostart" diff --git a/Marlin/src/lcd/menu/menu_backlash.cpp b/Marlin/src/lcd/menu/menu_backlash.cpp index e71606fc12a9..2b9404b0f6c5 100644 --- a/Marlin/src/lcd/menu/menu_backlash.cpp +++ b/Marlin/src/lcd/menu/menu_backlash.cpp @@ -34,7 +34,7 @@ void menu_backlash() { START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); editable.uint8 = backlash.get_correction_uint8(); EDIT_ITEM_FAST(percent, MSG_BACKLASH_CORRECTION, &editable.uint8, backlash.all_off, backlash.all_on, []{ backlash.set_correction_uint8(editable.uint8); }); diff --git a/Marlin/src/lcd/menu/menu_cancelobject.cpp b/Marlin/src/lcd/menu/menu_cancelobject.cpp index b2d36bf8c30d..b2784bcd41b6 100644 --- a/Marlin/src/lcd/menu/menu_cancelobject.cpp +++ b/Marlin/src/lcd/menu/menu_cancelobject.cpp @@ -56,7 +56,7 @@ void menu_cancelobject() { const int8_t ao = cancelable.active_object; START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); // Draw cancelable items in a loop for (int8_t i = -1; i < cancelable.object_count; i++) { diff --git a/Marlin/src/lcd/menu/menu_configuration.cpp b/Marlin/src/lcd/menu/menu_configuration.cpp index 4dce109b4277..3ff4b2e56257 100644 --- a/Marlin/src/lcd/menu/menu_configuration.cpp +++ b/Marlin/src/lcd/menu/menu_configuration.cpp @@ -360,7 +360,7 @@ void menu_advanced_settings(); void custom_menus_configuration() { START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); #define HAS_CUSTOM_ITEM_CONF(N) (defined(CONFIG_MENU_ITEM_##N##_DESC) && defined(CONFIG_MENU_ITEM_##N##_GCODE)) @@ -472,7 +472,7 @@ void menu_configuration() { const bool busy = printer_busy(); START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); // // Debug Menu when certain options are enabled diff --git a/Marlin/src/lcd/menu/menu_delta_calibrate.cpp b/Marlin/src/lcd/menu/menu_delta_calibrate.cpp index 94663744ea23..a33edd1659b3 100644 --- a/Marlin/src/lcd/menu/menu_delta_calibrate.cpp +++ b/Marlin/src/lcd/menu/menu_delta_calibrate.cpp @@ -132,7 +132,7 @@ void menu_delta_calibrate() { #endif START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); #if ENABLED(DELTA_AUTO_CALIBRATION) GCODES_ITEM(MSG_DELTA_AUTO_CALIBRATE, F("G33")); diff --git a/Marlin/src/lcd/menu/menu_filament.cpp b/Marlin/src/lcd/menu/menu_filament.cpp index 122f0c405099..6fdcc2b48818 100644 --- a/Marlin/src/lcd/menu/menu_filament.cpp +++ b/Marlin/src/lcd/menu/menu_filament.cpp @@ -130,7 +130,7 @@ void menu_change_filament() { #endif START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); // Change filament #if E_STEPPERS == 1 diff --git a/Marlin/src/lcd/menu/menu_game.cpp b/Marlin/src/lcd/menu/menu_game.cpp index fa56d7eee266..750c3c7e8210 100644 --- a/Marlin/src/lcd/menu/menu_game.cpp +++ b/Marlin/src/lcd/menu/menu_game.cpp @@ -29,7 +29,7 @@ void menu_game() { START_MENU(); - BACK_ITEM(TERN(LCD_INFO_MENU, MSG_INFO_MENU, MSG_MAIN)); + BACK_ITEM(TERN(LCD_INFO_MENU, MSG_INFO_MENU, MSG_MAIN_MENU)); #if ENABLED(MARLIN_BRICKOUT) SUBMENU(MSG_BRICKOUT, brickout.enter_game); #endif diff --git a/Marlin/src/lcd/menu/menu_info.cpp b/Marlin/src/lcd/menu/menu_info.cpp index 101861074d95..abca4a7d1598 100644 --- a/Marlin/src/lcd/menu/menu_info.cpp +++ b/Marlin/src/lcd/menu/menu_info.cpp @@ -276,7 +276,7 @@ void menu_info_board() { // void menu_info() { START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); #if ENABLED(LCD_PRINTER_INFO_IS_BOOTSCREEN) SUBMENU(MSG_INFO_PRINTER_MENU, TERN(SHOW_CUSTOM_BOOTSCREEN, menu_show_custom_bootscreen, menu_show_marlin_bootscreen)); #else diff --git a/Marlin/src/lcd/menu/menu_language.cpp b/Marlin/src/lcd/menu/menu_language.cpp index 2ea4359c6bb7..9361d595f76c 100644 --- a/Marlin/src/lcd/menu/menu_language.cpp +++ b/Marlin/src/lcd/menu/menu_language.cpp @@ -39,7 +39,7 @@ static void set_lcd_language(const uint8_t inlang) { void menu_language() { START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); MENU_ITEM_F(function, FPSTR(GET_LANGUAGE_NAME(1)), []{ set_lcd_language(0); }); MENU_ITEM_F(function, FPSTR(GET_LANGUAGE_NAME(2)), []{ set_lcd_language(1); }); diff --git a/Marlin/src/lcd/menu/menu_led.cpp b/Marlin/src/lcd/menu/menu_led.cpp index 867e4dafa940..dea5ecceeb01 100644 --- a/Marlin/src/lcd/menu/menu_led.cpp +++ b/Marlin/src/lcd/menu/menu_led.cpp @@ -126,7 +126,7 @@ void menu_led() { START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); #if ENABLED(LED_CONTROL_MENU) if (TERN1(PSU_CONTROL, powerManager.psu_on)) { diff --git a/Marlin/src/lcd/menu/menu_main.cpp b/Marlin/src/lcd/menu/menu_main.cpp index 81b36d2b01a9..3b1cd737452b 100644 --- a/Marlin/src/lcd/menu/menu_main.cpp +++ b/Marlin/src/lcd/menu/menu_main.cpp @@ -114,7 +114,7 @@ void menu_configuration(); void custom_menus_main() { START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); #define HAS_CUSTOM_ITEM_MAIN(N) (defined(MAIN_MENU_ITEM_##N##_DESC) && defined(MAIN_MENU_ITEM_##N##_GCODE)) diff --git a/Marlin/src/lcd/menu/menu_media.cpp b/Marlin/src/lcd/menu/menu_media.cpp index d43053da6256..79cca1d97a45 100644 --- a/Marlin/src/lcd/menu/menu_media.cpp +++ b/Marlin/src/lcd/menu/menu_media.cpp @@ -119,7 +119,7 @@ void menu_media_filelist() { #if ENABLED(MULTI_VOLUME) ACTION_ITEM(MSG_BACK, []{ ui.goto_screen(menu_media); }); #else - BACK_ITEM_F(TERN1(BROWSE_MEDIA_ON_INSERT, screen_history_depth) ? GET_TEXT_F(MSG_MAIN) : GET_TEXT_F(MSG_BACK)); + BACK_ITEM_F(TERN1(BROWSE_MEDIA_ON_INSERT, screen_history_depth) ? GET_TEXT_F(MSG_MAIN_MENU) : GET_TEXT_F(MSG_BACK)); #endif if (card.flag.workDirIsRoot) { #if !HAS_SD_DETECT @@ -146,7 +146,7 @@ void menu_media_filelist() { #if ENABLED(MULTI_VOLUME) void menu_media_select() { START_MENU(); - BACK_ITEM_F(TERN1(BROWSE_MEDIA_ON_INSERT, screen_history_depth) ? GET_TEXT_F(MSG_MAIN) : GET_TEXT_F(MSG_BACK)); + BACK_ITEM_F(TERN1(BROWSE_MEDIA_ON_INSERT, screen_history_depth) ? GET_TEXT_F(MSG_MAIN_MENU) : GET_TEXT_F(MSG_BACK)); #if ENABLED(VOLUME_SD_ONBOARD) ACTION_ITEM(MSG_SD_CARD, []{ card.changeMedia(&card.media_driver_sdcard); card.mount(); ui.goto_screen(menu_media_filelist); }); #endif diff --git a/Marlin/src/lcd/menu/menu_mixer.cpp b/Marlin/src/lcd/menu/menu_mixer.cpp index f787d47d0f4d..478792479cc1 100644 --- a/Marlin/src/lcd/menu/menu_mixer.cpp +++ b/Marlin/src/lcd/menu/menu_mixer.cpp @@ -225,7 +225,7 @@ void lcd_mixer_mix_edit() { void menu_mixer() { START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); v_index = mixer.get_current_vtool(); EDIT_ITEM(uint8, MSG_ACTIVE_VTOOL, &v_index, 0, MIXING_VIRTUAL_TOOLS - 1, _lcd_mixer_select_vtool, ENABLED(HAS_DUAL_MIXING)); diff --git a/Marlin/src/lcd/menu/menu_mmu2.cpp b/Marlin/src/lcd/menu/menu_mmu2.cpp index a2412b0f6ae8..22230687e42c 100644 --- a/Marlin/src/lcd/menu/menu_mmu2.cpp +++ b/Marlin/src/lcd/menu/menu_mmu2.cpp @@ -104,7 +104,7 @@ void action_mmu2_reset() { void menu_mmu2() { START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); SUBMENU(MSG_MMU2_LOAD_FILAMENT, menu_mmu2_load_filament); SUBMENU(MSG_MMU2_LOAD_TO_NOZZLE, menu_mmu2_load_to_nozzle); SUBMENU(MSG_MMU2_EJECT_FILAMENT, menu_mmu2_eject_filament); diff --git a/Marlin/src/lcd/menu/menu_motion.cpp b/Marlin/src/lcd/menu/menu_motion.cpp index d5c1a8a38a9d..200d46a8af9d 100644 --- a/Marlin/src/lcd/menu/menu_motion.cpp +++ b/Marlin/src/lcd/menu/menu_motion.cpp @@ -317,7 +317,7 @@ void menu_motion() { // // ^ Main // - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); // // Move Axis diff --git a/Marlin/src/lcd/menu/menu_power_monitor.cpp b/Marlin/src/lcd/menu/menu_power_monitor.cpp index 3cd9909e5cf7..3d718c108a77 100644 --- a/Marlin/src/lcd/menu/menu_power_monitor.cpp +++ b/Marlin/src/lcd/menu/menu_power_monitor.cpp @@ -33,7 +33,7 @@ void menu_power_monitor() { START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); #if ENABLED(POWER_MONITOR_CURRENT) { diff --git a/Marlin/src/lcd/menu/menu_spindle_laser.cpp b/Marlin/src/lcd/menu/menu_spindle_laser.cpp index de16316987e6..e053361fb07e 100644 --- a/Marlin/src/lcd/menu/menu_spindle_laser.cpp +++ b/Marlin/src/lcd/menu/menu_spindle_laser.cpp @@ -39,7 +39,7 @@ #endif START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); #if ENABLED(SPINDLE_LASER_USE_PWM) // Change the cutter's "current power" value without turning the cutter on or off diff --git a/Marlin/src/lcd/menu/menu_temperature.cpp b/Marlin/src/lcd/menu/menu_temperature.cpp index 2e5b8f1e54ce..ec6d49c16f39 100644 --- a/Marlin/src/lcd/menu/menu_temperature.cpp +++ b/Marlin/src/lcd/menu/menu_temperature.cpp @@ -162,7 +162,7 @@ void menu_temperature() { #endif START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); // // Nozzle: @@ -291,7 +291,7 @@ void menu_temperature() { void menu_preheat_only() { START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); LOOP_L_N(m, PREHEAT_COUNT) { editable.int8 = m; diff --git a/Marlin/src/lcd/menu/menu_tune.cpp b/Marlin/src/lcd/menu/menu_tune.cpp index 924760726969..8a2636ba5ddb 100644 --- a/Marlin/src/lcd/menu/menu_tune.cpp +++ b/Marlin/src/lcd/menu/menu_tune.cpp @@ -109,7 +109,7 @@ void menu_tune() { START_MENU(); - BACK_ITEM(MSG_MAIN); + BACK_ITEM(MSG_MAIN_MENU); // // Speed: From 6d819eb8d419bad0bea5c9ce33a673eef5ef03eb Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 14 Apr 2023 18:09:16 -0500 Subject: [PATCH 014/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20App?= =?UTF-8?q?ly=20simplified=20=3F:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/tmc_util.cpp | 4 ++-- Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp | 6 +++--- .../ftdi_eve_lib/extended/command_processor.h | 2 +- .../ftdi_eve_lib/extended/sound_player.cpp | 2 +- .../ftdi_eve_touch_ui/generic/dialog_box_base_class.cpp | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Marlin/src/feature/tmc_util.cpp b/Marlin/src/feature/tmc_util.cpp index 0867686363ca..2e5a5c55850b 100644 --- a/Marlin/src/feature/tmc_util.cpp +++ b/Marlin/src/feature/tmc_util.cpp @@ -601,8 +601,8 @@ case TMC_STEALTHCHOP: serialprint_truefalse(st.en_pwm_mode()); break; case TMC_GLOBAL_SCALER: { - uint16_t value = st.GLOBAL_SCALER(); - SERIAL_ECHO(value ? value : 256); + const uint16_t value = st.GLOBAL_SCALER(); + SERIAL_ECHO(value ?: 256); SERIAL_ECHOPGM("/256"); } break; diff --git a/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp b/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp index 3d1594aca2c0..96f2eeae960a 100644 --- a/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp +++ b/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp @@ -629,14 +629,14 @@ void ST7920_Lite_Status_Screen::draw_position(const xyze_pos_t &pos, const bool #endif } else { - write_byte(alt_label ? alt_label : 'X'); + write_byte(alt_label ?: 'X'); write_str(dtostrf(pos.x, -4, 0, str), 4); - write_byte(alt_label ? alt_label : 'Y'); + write_byte(alt_label ?: 'Y'); write_str(dtostrf(pos.y, -4, 0, str), 4); } - write_byte(alt_label ? alt_label : 'Z'); + write_byte(alt_label ?: 'Z'); write_str(dtostrf(pos.z, -5, 1, str), 5); } diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/command_processor.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/command_processor.h index 648ed5330a98..fd3e8f921c74 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/command_processor.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/command_processor.h @@ -125,7 +125,7 @@ class CommandProcessor : public CLCD::CommandFifo { } inline CommandProcessor& set_button_style_callback(const btn_style_func_t *func) { - _btn_style_callback = func ? func : default_button_style_func; + _btn_style_callback = func ?: default_button_style_func; return *this; } diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/sound_player.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/sound_player.cpp index 47bf79e46743..3d53f2d99baf 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/sound_player.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/sound_player.cpp @@ -41,7 +41,7 @@ namespace FTDI { #endif // Play the note - CLCD::mem_write_16(REG::SOUND, (note == REST) ? 0 : (((note ? note : NOTE_C4) << 8) | effect)); + CLCD::mem_write_16(REG::SOUND, (note == REST) ? 0 : (((note ?: NOTE_C4) << 8) | effect)); CLCD::mem_write_8(REG::PLAY, 1); } diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/dialog_box_base_class.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/dialog_box_base_class.cpp index a006d30942d9..ea177bfdc1d5 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/dialog_box_base_class.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/dialog_box_base_class.cpp @@ -39,7 +39,7 @@ void DialogBoxBaseClass::drawMessage(T message, const int16_t font) { .cmd(CLEAR(true,true,true)) .cmd(COLOR_RGB(bg_text_enabled)) .tag(0); - draw_text_box(cmd, BTN_POS(1,1), BTN_SIZE(2,6), message, OPT_CENTER, font ? font : font_large); + draw_text_box(cmd, BTN_POS(1,1), BTN_SIZE(2,6), message, OPT_CENTER, font ?: font_large); cmd.colors(normal_btn); } From 48b712fdc013cfbda94bc1e2452e4538999916a4 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 14 Apr 2023 18:00:25 -0500 Subject: [PATCH 015/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Jye?= =?UTF-8?q?rsUI=20code=20cleanup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 142 +++++++++++++-------------- Marlin/src/lcd/e3v2/jyersui/dwin.h | 63 ++++++------ 2 files changed, 102 insertions(+), 103 deletions(-) diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index 285723e27896..a24adec8e9fd 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -377,7 +377,7 @@ class TextScroller { return min; } - void Draw_Bed_Mesh(int16_t selected = -1, uint8_t gridline_width = 1, uint16_t padding_x = 8, uint16_t padding_y_top = 40 + 53 - 7) { + void Draw_Bed_Mesh(const int16_t selected=-1, const uint8_t gridline_width=1, const uint16_t padding_x=8, const uint16_t padding_y_top=40 + 53 - 7) { drawing_mesh = true; const uint16_t total_width_px = DWIN_WIDTH - padding_x - padding_x, cell_width_px = total_width_px / (GRID_MAX_POINTS_X), @@ -470,15 +470,15 @@ constexpr const char * const CrealityDWINClass::preheat_modes[3]; // 3=Title bar and Menu area (default) // 2=Menu area // 1=Title bar -void CrealityDWINClass::Clear_Screen(uint8_t e/*=3*/) { +void CrealityDWINClass::Clear_Screen(const uint8_t e/*=3*/) { if (e == 1 || e == 3 || e == 4) DWIN_Draw_Rectangle(1, GetColor(eeprom_settings.menu_top_bg, Color_Bg_Blue, false), 0, 0, DWIN_WIDTH, TITLE_HEIGHT); // Clear Title Bar if (e == 2 || e == 3) DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, 31, DWIN_WIDTH, STATUS_Y); // Clear Menu Area if (e == 4) DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, 31, DWIN_WIDTH, DWIN_HEIGHT); // Clear Popup Area } -void CrealityDWINClass::Draw_Float(float value, uint8_t row, bool selected/*=false*/, uint8_t minunit/*=10*/) { +void CrealityDWINClass::Draw_Float(const_float_t value, const uint8_t row, const bool selected/*=false*/, const uint8_t minunit/*=10*/) { const uint8_t digits = (uint8_t)floor(log10(abs(value))) + log10(minunit) + (minunit > 1); - const uint16_t bColor = (selected) ? Select_Color : Color_Bg_Black; + const uint16_t bColor = selected ? Select_Color : Color_Bg_Black; const uint16_t xpos = 240 - (digits * 8); DWIN_Draw_Rectangle(1, Color_Bg_Black, 194, MBASE(row), 234 - (digits * 8), MBASE(row) + 16); if (isnan(value)) @@ -489,44 +489,44 @@ void CrealityDWINClass::Draw_Float(float value, uint8_t row, bool selected/*=fal } } -void CrealityDWINClass::Draw_Option(uint8_t value, const char * const * options, uint8_t row, bool selected/*=false*/, bool color/*=false*/) { - uint16_t bColor = (selected) ? Select_Color : Color_Bg_Black, - tColor = (color) ? GetColor(value, Color_White, false) : Color_White; +void CrealityDWINClass::Draw_Option(const uint8_t value, const char * const * options, const uint8_t row, const bool selected/*=false*/, const bool color/*=false*/) { + const uint16_t bColor = selected ? Select_Color : Color_Bg_Black, + tColor = color ? GetColor(value, Color_White, false) : Color_White; DWIN_Draw_Rectangle(1, bColor, 202, MBASE(row) + 14, 258, MBASE(row) - 2); DWIN_Draw_String(false, DWIN_FONT_MENU, tColor, bColor, 202, MBASE(row) - 1, options[value]); } -uint16_t CrealityDWINClass::GetColor(uint8_t color, uint16_t original, bool light/*=false*/) { +uint16_t CrealityDWINClass::GetColor(const uint8_t color, const uint16_t original, const bool light/*=false*/) { switch (color) { case Default: return original; break; case White: - return (light) ? Color_Light_White : Color_White; + return light ? Color_Light_White : Color_White; break; case Green: - return (light) ? Color_Light_Green : Color_Green; + return light ? Color_Light_Green : Color_Green; break; case Cyan: - return (light) ? Color_Light_Cyan : Color_Cyan; + return light ? Color_Light_Cyan : Color_Cyan; break; case Blue: - return (light) ? Color_Light_Blue : Color_Blue; + return light ? Color_Light_Blue : Color_Blue; break; case Magenta: - return (light) ? Color_Light_Magenta : Color_Magenta; + return light ? Color_Light_Magenta : Color_Magenta; break; case Red: - return (light) ? Color_Light_Red : Color_Red; + return light ? Color_Light_Red : Color_Red; break; case Orange: - return (light) ? Color_Light_Orange : Color_Orange; + return light ? Color_Light_Orange : Color_Orange; break; case Yellow: - return (light) ? Color_Light_Yellow : Color_Yellow; + return light ? Color_Light_Yellow : Color_Yellow; break; case Brown: - return (light) ? Color_Light_Brown : Color_Brown; + return light ? Color_Light_Brown : Color_Brown; break; case Black: return Color_Black; @@ -535,7 +535,7 @@ uint16_t CrealityDWINClass::GetColor(uint8_t color, uint16_t original, bool ligh return Color_White; } -void CrealityDWINClass::Draw_Title(const char * ctitle) { +void CrealityDWINClass::Draw_Title(const char * const ctitle) { DWIN_Draw_String(false, DWIN_FONT_HEAD, GetColor(eeprom_settings.menu_top_txt, Color_White, false), Color_Bg_Blue, (DWIN_WIDTH - strlen(ctitle) * STAT_CHR_W) / 2, 5, ctitle); } void CrealityDWINClass::Draw_Title(FSTR_P const ftitle) { @@ -548,7 +548,7 @@ void _Decorate_Menu_Item(uint8_t row, uint8_t icon, bool more) { DWIN_Draw_Line(CrealityDWIN.GetColor(CrealityDWIN.eeprom_settings.menu_split_line, Line_Color, true), 16, MBASE(row) + 33, 256, MBASE(row) + 33); // Draw Menu Line } -void CrealityDWINClass::Draw_Menu_Item(uint8_t row, uint8_t icon/*=0*/, const char * label1, const char * label2, bool more/*=false*/, bool centered/*=false*/) { +void CrealityDWINClass::Draw_Menu_Item(const uint8_t row, const uint8_t icon/*=0*/, const char * const label1, const char * const label2, const bool more/*=false*/, const bool centered/*=false*/) { const uint8_t label_offset_y = (label1 || label2) ? MENU_CHR_H * 3 / 5 : 0, label1_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (label1 ? strlen(label1) : 0) * MENU_CHR_W) / 2), label2_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (label2 ? strlen(label2) : 0) * MENU_CHR_W) / 2); @@ -557,7 +557,7 @@ void CrealityDWINClass::Draw_Menu_Item(uint8_t row, uint8_t icon/*=0*/, const ch _Decorate_Menu_Item(row, icon, more); } -void CrealityDWINClass::Draw_Menu_Item(uint8_t row, uint8_t icon/*=0*/, FSTR_P const flabel1, FSTR_P const flabel2, bool more/*=false*/, bool centered/*=false*/) { +void CrealityDWINClass::Draw_Menu_Item(const uint8_t row, const uint8_t icon/*=0*/, FSTR_P const flabel1, FSTR_P const flabel2, const bool more/*=false*/, const bool centered/*=false*/) { const uint8_t label_offset_y = (flabel1 || flabel2) ? MENU_CHR_H * 3 / 5 : 0, label1_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (flabel1 ? strlen_P(FTOP(flabel1)) : 0) * MENU_CHR_W) / 2), label2_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (flabel2 ? strlen_P(FTOP(flabel2)) : 0) * MENU_CHR_W) / 2); @@ -566,7 +566,7 @@ void CrealityDWINClass::Draw_Menu_Item(uint8_t row, uint8_t icon/*=0*/, FSTR_P c _Decorate_Menu_Item(row, icon, more); } -void CrealityDWINClass::Draw_Checkbox(uint8_t row, bool value) { +void CrealityDWINClass::Draw_Checkbox(const uint8_t row, const bool value) { #if ENABLED(DWIN_CREALITY_LCD_CUSTOM_ICONS) // Draw appropriate checkbox icon DWIN_ICON_Show(ICON, (value ? ICON_Checkbox_T : ICON_Checkbox_F), 226, MBASE(row) - 3); #else // Draw a basic checkbox using rectangles and lines @@ -583,7 +583,7 @@ void CrealityDWINClass::Draw_Checkbox(uint8_t row, bool value) { #endif } -void CrealityDWINClass::Draw_Menu(uint8_t menu, uint8_t select/*=0*/, uint8_t scroll/*=0*/) { +void CrealityDWINClass::Draw_Menu(const uint8_t menu, const uint8_t select/*=0*/, const uint8_t scroll/*=0*/) { if (active_menu != menu) { last_menu = active_menu; if (process == Menu) last_selection = selection; @@ -600,12 +600,12 @@ void CrealityDWINClass::Draw_Menu(uint8_t menu, uint8_t select/*=0*/, uint8_t sc DWIN_Draw_Rectangle(1, GetColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); } -void CrealityDWINClass::Redraw_Menu(bool lastprocess/*=true*/, bool lastselection/*=false*/, bool lastmenu/*=false*/) { - switch ((lastprocess) ? last_process : process) { +void CrealityDWINClass::Redraw_Menu(const bool lastproc/*=true*/, const bool lastsel/*=false*/, const bool lastmenu/*=false*/) { + switch (lastproc ? last_process : process) { case Menu: - Draw_Menu((lastmenu) ? last_menu : active_menu, (lastselection) ? last_selection : selection, (lastmenu) ? 0 : scrollpos); + Draw_Menu(lastmenu ? last_menu : active_menu, lastsel ? last_selection : selection, lastmenu ? 0 : scrollpos); break; - case Main: Draw_Main_Menu((lastselection) ? last_selection : selection); break; + case Main: Draw_Main_Menu(lastsel ? last_selection : selection); break; case Print: Draw_Print_Screen(); break; case File: Draw_SD_List(); break; default: break; @@ -671,7 +671,7 @@ void CrealityDWINClass::Main_Menu_Icons() { #endif } -void CrealityDWINClass::Draw_Main_Menu(uint8_t select/*=0*/) { +void CrealityDWINClass::Draw_Main_Menu(const uint8_t select/*=0*/) { process = Main; active_menu = MainMenu; selection = select; @@ -803,7 +803,7 @@ void CrealityDWINClass::Draw_Print_confirm() { DWIN_Draw_Rectangle(0, GetColor(eeprom_settings.highlight_box, Color_White), 85, 281, 188, 322); } -void CrealityDWINClass::Draw_SD_Item(uint8_t item, uint8_t row) { +void CrealityDWINClass::Draw_SD_Item(const uint8_t item, const uint8_t row) { if (item == 0) Draw_Menu_Item(0, ICON_Back, card.flag.workDirIsRoot ? F("Back") : F("..")); else { @@ -824,7 +824,7 @@ void CrealityDWINClass::Draw_SD_Item(uint8_t item, uint8_t row) { } } -void CrealityDWINClass::Draw_SD_List(bool removed/*=false*/) { +void CrealityDWINClass::Draw_SD_List(const bool removed/*=false*/) { Clear_Screen(); Draw_Title("Select File"); selection = 0; @@ -842,7 +842,7 @@ void CrealityDWINClass::Draw_SD_List(bool removed/*=false*/) { DWIN_Draw_Rectangle(1, GetColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(0) - 18, 14, MBASE(0) + 33); } -void CrealityDWINClass::Draw_Status_Area(bool icons/*=false*/) { +void CrealityDWINClass::Draw_Status_Area(const bool icons/*=false*/) { if (icons) DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, STATUS_Y, DWIN_WIDTH, DWIN_HEIGHT - 1); @@ -965,7 +965,7 @@ void CrealityDWINClass::Draw_Status_Area(bool icons/*=false*/) { if ((update_z = axis_should_home(Z_AXIS) && ui.get_blink())) DWIN_Draw_String(true, DWIN_FONT_MENU, GetColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 205, 459, F(" -?- ")); else - DWIN_Draw_FloatValue(true, true, 0, DWIN_FONT_MENU, GetColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 3, 2, 205, 459, (current_position.z>=0) ? current_position.z : 0); + DWIN_Draw_FloatValue(true, true, 0, DWIN_FONT_MENU, GetColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 3, 2, 205, 459, current_position.z >= 0 ? current_position.z : 0); } DWIN_UpdateLCD(); } @@ -1001,15 +1001,15 @@ void MarlinUI::kill_screen(FSTR_P const error, FSTR_P const) { } void CrealityDWINClass::Popup_Select() { - const uint16_t c1 = (selection == 0) ? GetColor(eeprom_settings.highlight_box, Color_White) : Color_Bg_Window, - c2 = (selection == 0) ? Color_Bg_Window : GetColor(eeprom_settings.highlight_box, Color_White); + const uint16_t c1 = selection ? Color_Bg_Window : GetColor(eeprom_settings.highlight_box, Color_White), + c2 = selection ? GetColor(eeprom_settings.highlight_box, Color_White) : Color_Bg_Window; DWIN_Draw_Rectangle(0, c1, 25, 279, 126, 318); DWIN_Draw_Rectangle(0, c1, 24, 278, 127, 319); DWIN_Draw_Rectangle(0, c2, 145, 279, 246, 318); DWIN_Draw_Rectangle(0, c2, 144, 278, 247, 319); } -void CrealityDWINClass::Update_Status_Bar(bool refresh/*=false*/) { +void CrealityDWINClass::Update_Status_Bar(const bool refresh/*=false*/) { typedef TextScroller<30> Scroller; static bool new_msg; static Scroller scroller; @@ -1039,7 +1039,7 @@ void CrealityDWINClass::Update_Status_Bar(bool refresh/*=false*/) { /* Menu Item Config */ -void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/*=true*/) { +void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item, bool draw/*=true*/) { const uint8_t row = item - scrollpos; #if HAS_LEVELING static bool level_state; @@ -1199,7 +1199,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #if ENABLED(ADVANCED_PAUSE_FEATURE) case PREPARE_CHANGEFIL: if (draw) { - Draw_Menu_Item(row, ICON_ResumeEEPROM, F("Change Filament") + Draw_Menu_Item(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE) #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) , nullptr, true #endif @@ -1737,7 +1737,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ break; case CHANGEFIL_LOAD: if (draw) - Draw_Menu_Item(row, ICON_WriteEEPROM, F("Load Filament")); + Draw_Menu_Item(row, ICON_WriteEEPROM, GET_TEXT_F(MSG_FILAMENTLOAD)); else { if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) Popup_Handler(ETemp); @@ -1755,7 +1755,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ break; case CHANGEFIL_UNLOAD: if (draw) - Draw_Menu_Item(row, ICON_ReadEEPROM, F("Unload Filament")); + Draw_Menu_Item(row, ICON_ReadEEPROM, GET_TEXT_F(MSG_FILAMENTUNLOAD)); else { if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) { Popup_Handler(ETemp); @@ -1774,7 +1774,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ break; case CHANGEFIL_CHANGE: if (draw) - Draw_Menu_Item(row, ICON_ResumeEEPROM, F("Change Filament")); + Draw_Menu_Item(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE)); else { if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) Popup_Handler(ETemp); @@ -3805,7 +3805,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) case TUNE_CHANGEFIL: if (draw) - Draw_Menu_Item(row, ICON_ResumeEEPROM, F("Change Filament")); + Draw_Menu_Item(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE)); else Popup_Handler(ConfFilChange); break; @@ -3931,32 +3931,32 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/ } } -FSTR_P CrealityDWINClass::Get_Menu_Title(uint8_t menu) { +FSTR_P CrealityDWINClass::Get_Menu_Title(const uint8_t menu) { switch (menu) { - case MainMenu: return F("Main Menu"); - case Prepare: return F("Prepare"); + case MainMenu: return GET_TEXT_F(MSG_MAIN_MENU); + case Prepare: return GET_TEXT_F(MSG_PREPARE); case HomeMenu: return F("Homing Menu"); - case Move: return F("Move"); - case ManualLevel: return F("Manual Leveling"); + case Move: return GET_TEXT_F(MSG_MOVE_AXIS); + case ManualLevel: return GET_TEXT_F(MSG_BED_TRAMMING_MANUAL); #if HAS_ZOFFSET_ITEM - case ZOffset: return F("Z Offset"); + case ZOffset: return GET_TEXT_F(MSG_ZPROBE_ZOFFSET); #endif #if HAS_PREHEAT case Preheat: return F("Preheat"); #endif #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) - case ChangeFilament: return F("Change Filament"); + case ChangeFilament: return GET_TEXT_F(MSG_FILAMENTCHANGE); #endif #if HAS_CUSTOM_MENU case MenuCustom: #ifdef CUSTOM_MENU_CONFIG_TITLE return F(CUSTOM_MENU_CONFIG_TITLE); #else - return F("Custom Commands"); + return GET_TEXT_F(MSG_CUSTOM_COMMANDS); #endif #endif - case Control: return F("Control"); - case TempMenu: return F("Temperature"); + case Control: return GET_TEXT_F(MSG_CONTROL); + case TempMenu: return GET_TEXT_F(MSG_TEMPERATURE); #if HAS_HOTEND || HAS_HEATED_BED case PID: return F("PID Menu"); #endif @@ -3977,14 +3977,14 @@ FSTR_P CrealityDWINClass::Get_Menu_Title(uint8_t menu) { #if HAS_CLASSIC_JERK case MaxJerk: return F("Max Jerk"); #endif - case Steps: return F("Steps/mm"); + case Steps: return GET_TEXT_F(MSG_STEPS_PER_MM); case Visual: return F("Visual Settings"); - case Advanced: return F("Advanced Settings"); + case Advanced: return GET_TEXT_F(MSG_ADVANCED_SETTINGS); #if HAS_BED_PROBE case ProbeMenu: return F("Bed Probe"); #endif #if HAS_TRINAMIC_CONFIG - case TMCMenu: return F("TMC Drivers"); + case TMCMenu: return GET_TEXT_F(MSG_TMC_DRIVERS); #endif case ColorSettings: return F("UI Color Settings"); case Info: return F("Info"); @@ -4000,15 +4000,15 @@ FSTR_P CrealityDWINClass::Get_Menu_Title(uint8_t menu) { case UBLMesh: return F("UBL Bed Leveling"); #endif #if ENABLED(PROBE_MANUALLY) - case ManualMesh: return F("Mesh Bed Leveling"); + case ManualMesh: return GET_TEXT_F(MSG_MANUAL_LEVELING); #endif - case Tune: return F("Tune"); - case PreheatHotend: return F("Preheat Hotend"); + case Tune: return GET_TEXT_F(MSG_TUNE); + case PreheatHotend: return GET_TEXT_F(MSG_PREHEAT_HOTEND); } return F(""); } -uint8_t CrealityDWINClass::Get_Menu_Size(uint8_t menu) { +uint8_t CrealityDWINClass::Get_Menu_Size(const uint8_t menu) { switch (menu) { case Prepare: return PREPARE_TOTAL; case HomeMenu: return HOME_TOTAL; @@ -4085,7 +4085,7 @@ uint8_t CrealityDWINClass::Get_Menu_Size(uint8_t menu) { /* Popup Config */ -void CrealityDWINClass::Popup_Handler(PopupID popupid, bool option/*=false*/) { +void CrealityDWINClass::Popup_Handler(const PopupID popupid, const bool option/*=false*/) { popup = last_popup = popupid; switch (popupid) { case Pause: Draw_Popup(F("Pause Print"), F(""), F(""), Popup); break; @@ -4522,7 +4522,7 @@ void CrealityDWINClass::Popup_Control() { else { pause_menu_response = PAUSE_RESPONSE_RESUME_PRINT; if (printing) Popup_Handler(Resuming); - else Redraw_Menu(true, true, (active_menu==PreheatHotend)); + else Redraw_Menu(true, true, active_menu == PreheatHotend); } break; #endif // ADVANCED_PAUSE_FEATURE @@ -4581,7 +4581,7 @@ void CrealityDWINClass::Confirm_Control() { /* In-Menu Value Modification */ -void CrealityDWINClass::Setup_Value(float value, float min, float max, float unit, uint8_t type) { +void CrealityDWINClass::Setup_Value(const_float_t value, const_float_t min, const_float_t max, const_float_t unit, const uint8_t type) { if (TERN0(HAS_HOTEND, valuepointer == &thermalManager.temp_hotend[0].pid.Ki) || TERN0(HAS_HEATED_BED, valuepointer == &thermalManager.temp_bed.pid.Ki)) tempvalue = unscalePID_i(value) * unit; else if (TERN0(HAS_HOTEND, valuepointer == &thermalManager.temp_hotend[0].pid.Kd) || TERN0(HAS_HEATED_BED, valuepointer == &thermalManager.temp_bed.pid.Kd)) @@ -4597,38 +4597,38 @@ void CrealityDWINClass::Setup_Value(float value, float min, float max, float uni Draw_Float(tempvalue / unit, selection - scrollpos, true, valueunit); } -void CrealityDWINClass::Modify_Value(float &value, float min, float max, float unit, void (*f)()/*=nullptr*/) { +void CrealityDWINClass::Modify_Value(float &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; Setup_Value((float)value, min, max, unit, 0); } -void CrealityDWINClass::Modify_Value(uint8_t &value, float min, float max, float unit, void (*f)()/*=nullptr*/) { +void CrealityDWINClass::Modify_Value(uint8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; Setup_Value((float)value, min, max, unit, 1); } -void CrealityDWINClass::Modify_Value(uint16_t &value, float min, float max, float unit, void (*f)()/*=nullptr*/) { +void CrealityDWINClass::Modify_Value(uint16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; Setup_Value((float)value, min, max, unit, 2); } -void CrealityDWINClass::Modify_Value(int16_t &value, float min, float max, float unit, void (*f)()/*=nullptr*/) { +void CrealityDWINClass::Modify_Value(int16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; Setup_Value((float)value, min, max, unit, 3); } -void CrealityDWINClass::Modify_Value(uint32_t &value, float min, float max, float unit, void (*f)()/*=nullptr*/) { +void CrealityDWINClass::Modify_Value(uint32_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; Setup_Value((float)value, min, max, unit, 4); } -void CrealityDWINClass::Modify_Value(int8_t &value, float min, float max, float unit, void (*f)()/*=nullptr*/) { +void CrealityDWINClass::Modify_Value(int8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; Setup_Value((float)value, min, max, unit, 5); } -void CrealityDWINClass::Modify_Option(uint8_t value, const char * const * options, uint8_t max) { +void CrealityDWINClass::Modify_Option(const uint8_t value, const char * const * options, const uint8_t max) { tempvalue = value; valuepointer = const_cast(options); valuemin = 0; @@ -4652,7 +4652,7 @@ void CrealityDWINClass::Update_Status(const char * const text) { } } -void CrealityDWINClass::Start_Print(bool sd) { +void CrealityDWINClass::Start_Print(const bool sd) { sdprint = sd; if (!printing) { printing = true; @@ -4723,7 +4723,7 @@ void CrealityDWINClass::State_Update() { Popup_Handler(FilChange); else if (pause_menu_response == PAUSE_RESPONSE_RESUME_PRINT) { if (printing) Popup_Handler(Resuming); - else Redraw_Menu(true, true, (active_menu==PreheatHotend)); + else Redraw_Menu(true, true, active_menu == PreheatHotend); } } #endif @@ -4869,13 +4869,13 @@ void CrealityDWINClass::AudioFeedback(const bool success/*=true*/) { Update_Status(success ? "Success" : "Failed"); } -void CrealityDWINClass::Save_Settings(char *buff) { +void CrealityDWINClass::Save_Settings(char * const buff) { TERN_(AUTO_BED_LEVELING_UBL, eeprom_settings.tilt_grid_size = mesh_conf.tilt_grid - 1); eeprom_settings.corner_pos = corner_pos * 10; memcpy(buff, &eeprom_settings, _MIN(sizeof(eeprom_settings), eeprom_data_size)); } -void CrealityDWINClass::Load_Settings(const char *buff) { +void CrealityDWINClass::Load_Settings(const char * const buff) { memcpy(&eeprom_settings, buff, _MIN(sizeof(eeprom_settings), eeprom_data_size)); TERN_(AUTO_BED_LEVELING_UBL, mesh_conf.tilt_grid = eeprom_settings.tilt_grid_size + 1); if (eeprom_settings.corner_pos == 0) eeprom_settings.corner_pos = 325; diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.h b/Marlin/src/lcd/e3v2/jyersui/dwin.h index f360819df53c..71db445aa869 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.h +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.h @@ -172,17 +172,17 @@ class CrealityDWINClass { static constexpr const char * const color_names[11] = { "Default", "White", "Green", "Cyan", "Blue", "Magenta", "Red", "Orange", "Yellow", "Brown", "Black" }; static constexpr const char * const preheat_modes[3] = { "Both", "Hotend", "Bed" }; - static void Clear_Screen(uint8_t e=3); - static void Draw_Float(float value, uint8_t row, bool selected=false, uint8_t minunit=10); - static void Draw_Option(uint8_t value, const char * const * options, uint8_t row, bool selected=false, bool color=false); - static uint16_t GetColor(uint8_t color, uint16_t original, bool light=false); - static void Draw_Checkbox(uint8_t row, bool value); - static void Draw_Title(const char * title); + static void Clear_Screen(const uint8_t e=3); + static void Draw_Float(const_float_t value, const uint8_t row, const bool selected=false, const uint8_t minunit=10); + static void Draw_Option(const uint8_t value, const char * const * options, const uint8_t row, const bool selected=false, const bool color=false); + static uint16_t GetColor(const uint8_t color, const uint16_t original, const bool light=false); + static void Draw_Checkbox(const uint8_t row, const bool value); + static void Draw_Title(const char * const title); static void Draw_Title(FSTR_P const title); - static void Draw_Menu_Item(uint8_t row, uint8_t icon=0, const char * const label1=nullptr, const char * const label2=nullptr, bool more=false, bool centered=false); - static void Draw_Menu_Item(uint8_t row, uint8_t icon=0, FSTR_P const flabel1=nullptr, FSTR_P const flabel2=nullptr, bool more=false, bool centered=false); - static void Draw_Menu(uint8_t menu, uint8_t select=0, uint8_t scroll=0); - static void Redraw_Menu(bool lastprocess=true, bool lastselection=false, bool lastmenu=false); + static void Draw_Menu_Item(const uint8_t row, uint8_t icon=0, const char * const label1=nullptr, const char * const label2=nullptr, const bool more=false, const bool centered=false); + static void Draw_Menu_Item(const uint8_t row, uint8_t icon=0, FSTR_P const flabel1=nullptr, FSTR_P const flabel2=nullptr, const bool more=false, const bool centered=false); + static void Draw_Menu(const uint8_t menu, const uint8_t select=0, const uint8_t scroll=0); + static void Redraw_Menu(const bool lastproc=true, const bool lastsel=false, const bool lastmenu=false); static void Redraw_Screen(); static void Main_Menu_Icons(); @@ -196,24 +196,23 @@ class CrealityDWINClass { #endif static void Draw_Print_ProgressElapsed(); static void Draw_Print_confirm(); - static void Draw_SD_Item(uint8_t item, uint8_t row); - static void Draw_SD_List(bool removed=false); - static void Draw_Status_Area(bool icons=false); + static void Draw_SD_Item(const uint8_t item, const uint8_t row); + static void Draw_SD_List(const bool removed=false); + static void Draw_Status_Area(const bool icons=false); static void Draw_Popup(FSTR_P const line1, FSTR_P const line2, FSTR_P const line3, uint8_t mode, uint8_t icon=0); static void Popup_Select(); - static void Update_Status_Bar(bool refresh=false); + static void Update_Status_Bar(const bool refresh=false); - #if ENABLED(AUTO_BED_LEVELING_UBL) - static void Draw_Bed_Mesh(int16_t selected = -1, uint8_t gridline_width = 1, uint16_t padding_x = 8, uint16_t padding_y_top = 40 + 53 - 7); + #if HAS_MESH static void Set_Mesh_Viewer_Status(); #endif - static FSTR_P Get_Menu_Title(uint8_t menu); - static uint8_t Get_Menu_Size(uint8_t menu); - static void Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw=true); + static FSTR_P Get_Menu_Title(const uint8_t menu); + static uint8_t Get_Menu_Size(const uint8_t menu); + static void Menu_Item_Handler(const uint8_t menu, const uint8_t item, bool draw=true); - static void Popup_Handler(PopupID popupid, bool option = false); - static void Confirm_Handler(PopupID popupid); + static void Popup_Handler(const PopupID popupid, bool option=false); + static void Confirm_Handler(const PopupID popupid); static void Main_Menu_Control(); static void Menu_Control(); @@ -224,24 +223,24 @@ class CrealityDWINClass { static void Popup_Control(); static void Confirm_Control(); - static void Setup_Value(float value, float min, float max, float unit, uint8_t type); - static void Modify_Value(float &value, float min, float max, float unit, void (*f)()=nullptr); - static void Modify_Value(uint8_t &value, float min, float max, float unit, void (*f)()=nullptr); - static void Modify_Value(uint16_t &value, float min, float max, float unit, void (*f)()=nullptr); - static void Modify_Value(int16_t &value, float min, float max, float unit, void (*f)()=nullptr); - static void Modify_Value(uint32_t &value, float min, float max, float unit, void (*f)()=nullptr); - static void Modify_Value(int8_t &value, float min, float max, float unit, void (*f)()=nullptr); - static void Modify_Option(uint8_t value, const char * const * options, uint8_t max); + static void Setup_Value(const_float_t value, const_float_t min, const_float_t max, const_float_t unit, const uint8_t type); + static void Modify_Value(float &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); + static void Modify_Value(uint8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); + static void Modify_Value(uint16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); + static void Modify_Value(int16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); + static void Modify_Value(uint32_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); + static void Modify_Value(int8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); + static void Modify_Option(const uint8_t value, const char * const * options, const uint8_t max); static void Update_Status(const char * const text); - static void Start_Print(bool sd); + static void Start_Print(const bool sd); static void Stop_Print(); static void Update(); static void State_Update(); static void Screen_Update(); static void AudioFeedback(const bool success=true); - static void Save_Settings(char *buff); - static void Load_Settings(const char *buff); + static void Save_Settings(char * const buff); + static void Load_Settings(const char * const buff); static void Reset_Settings(); }; From 9a1c02591ba4c3d5b41f4c64edd819ea1860b75b Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 14 Apr 2023 17:51:45 -0500 Subject: [PATCH 016/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Sta?= =?UTF-8?q?tus=20Message=20cleanup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/mmu/mmu2.cpp | 6 ++-- Marlin/src/feature/pause.cpp | 15 ++++---- Marlin/src/gcode/bedlevel/G26.cpp | 36 ++++++++------------ Marlin/src/gcode/calibrate/M48.cpp | 2 +- Marlin/src/lcd/language/language_en.h | 4 ++- Marlin/src/lcd/marlinui.cpp | 4 +-- Marlin/src/lcd/marlinui.h | 8 +++++ Marlin/src/lcd/menu/menu_delta_calibrate.cpp | 4 +-- Marlin/src/module/settings.cpp | 4 +-- 9 files changed, 43 insertions(+), 40 deletions(-) diff --git a/Marlin/src/feature/mmu/mmu2.cpp b/Marlin/src/feature/mmu/mmu2.cpp index 7b6a48954b61..b56e3d9c2913 100644 --- a/Marlin/src/feature/mmu/mmu2.cpp +++ b/Marlin/src/feature/mmu/mmu2.cpp @@ -978,10 +978,10 @@ bool MMU2::eject_filament(const uint8_t index, const bool recover) { manage_response(false, false); if (recover) { - LCD_MESSAGE(MSG_MMU2_EJECT_RECOVER); + LCD_MESSAGE(MSG_MMU2_REMOVE_AND_CLICK); mmu2_attn_buzz(); - TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, F("MMU2 Eject Recover"), FPSTR(CONTINUE_STR))); - TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(F("MMU2 Eject Recover"))); + TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, GET_TEXT_F(MSG_MMU2_EJECT_RECOVER), FPSTR(CONTINUE_STR))); + TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_MMU2_EJECT_RECOVER))); TERN_(HAS_RESUME_CONTINUE, wait_for_user_response()); mmu2_attn_buzz(true); diff --git a/Marlin/src/feature/pause.cpp b/Marlin/src/feature/pause.cpp index 488f5920c25e..9e0f51fad639 100644 --- a/Marlin/src/feature/pause.cpp +++ b/Marlin/src/feature/pause.cpp @@ -201,7 +201,7 @@ bool load_filament(const_float_t slow_load_length/*=0*/, const_float_t fast_load KEEPALIVE_STATE(PAUSED_FOR_USER); wait_for_user = true; // LCD click or M108 will clear this - TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(F("Load Filament"))); + TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENTLOAD))); #if ENABLED(HOST_PROMPT_SUPPORT) const char tool = '0' + TERN0(MULTI_FILAMENT_SENSOR, active_extruder); @@ -465,7 +465,7 @@ bool pause_print(const_float_t retract, const xyz_pos_t &park_point, const bool // If axes don't need to home then the nozzle can park if (do_park) nozzle.park(0, park_point); // Park the nozzle by doing a Minimum Z Raise followed by an XY Move - TERN_(DWIN_LCD_PROUI, if (!do_park) ui.set_status(GET_TEXT_F(MSG_PARK_FAILED))); + if (!do_park) LCD_MESSAGE(MSG_PARK_FAILED); #if ENABLED(DUAL_X_CARRIAGE) const int8_t saved_ext = active_extruder; @@ -554,9 +554,7 @@ void wait_for_confirmation(const bool is_reload/*=false*/, const int8_t max_beep TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_INFO, GET_TEXT_F(MSG_REHEATING))); - TERN_(EXTENSIBLE_UI, ExtUI::onStatusChanged(GET_TEXT_F(MSG_REHEATING))); - - TERN_(DWIN_LCD_PROUI, LCD_MESSAGE(MSG_REHEATING)); + LCD_MESSAGE(MSG_REHEATING); // Re-enable the heaters if they timed out HOTEND_LOOP() thermalManager.reset_hotend_idle_timer(e); @@ -573,8 +571,11 @@ void wait_for_confirmation(const bool is_reload/*=false*/, const int8_t max_beep HOTEND_LOOP() thermalManager.heater_idle[e].start(nozzle_timeout); TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, GET_TEXT_F(MSG_REHEATDONE), FPSTR(CONTINUE_STR))); - TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_REHEATDONE))); - TERN_(DWIN_LCD_PROUI, LCD_MESSAGE(MSG_REHEATDONE)); + #if ENABLED(EXTENSIBLE_UI) + ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_REHEATDONE)); + #else + LCD_MESSAGE(MSG_REHEATDONE); + #endif IF_DISABLED(PAUSE_REHEAT_FAST_RESUME, wait_for_user = true); diff --git a/Marlin/src/gcode/bedlevel/G26.cpp b/Marlin/src/gcode/bedlevel/G26.cpp index aa6e0c1f0c54..fe20423b8d8b 100644 --- a/Marlin/src/gcode/bedlevel/G26.cpp +++ b/Marlin/src/gcode/bedlevel/G26.cpp @@ -162,8 +162,8 @@ float g26_random_deviation = 0.0; */ bool user_canceled() { if (!ui.button_pressed()) return false; // Return if the button isn't pressed - ui.set_status(GET_TEXT_F(MSG_G26_CANCELED), 99); - TERN_(HAS_MARLINUI_MENU, ui.quick_feedback()); + LCD_MESSAGE_MAX(MSG_G26_CANCELED); + ui.quick_feedback(); ui.wait_for_release(); return true; } @@ -321,11 +321,9 @@ typedef struct { #if HAS_HEATED_BED if (bed_temp > 25) { - #if HAS_WIRED_LCD - ui.set_status(GET_TEXT_F(MSG_G26_HEATING_BED), 99); - ui.quick_feedback(); - TERN_(HAS_MARLINUI_MENU, ui.capture()); - #endif + LCD_MESSAGE_MAX(MSG_G26_HEATING_BED); + ui.quick_feedback(); + TERN_(HAS_MARLINUI_MENU, ui.capture()); thermalManager.setTargetBed(bed_temp); // Wait for the temperature to stabilize @@ -340,20 +338,16 @@ typedef struct { #endif // HAS_HEATED_BED // Start heating the active nozzle - #if HAS_WIRED_LCD - ui.set_status(GET_TEXT_F(MSG_G26_HEATING_NOZZLE), 99); - ui.quick_feedback(); - #endif + LCD_MESSAGE_MAX(MSG_G26_HEATING_NOZZLE); + ui.quick_feedback(); thermalManager.setTargetHotend(hotend_temp, active_extruder); // Wait for the temperature to stabilize if (!thermalManager.wait_for_hotend(active_extruder, true OPTARG(G26_CLICK_CAN_CANCEL, true))) return G26_ERR; - #if HAS_WIRED_LCD - ui.reset_status(); - ui.quick_feedback(); - #endif + ui.reset_status(); + ui.completion_feedback(); return G26_OK; } @@ -371,7 +365,7 @@ typedef struct { if (prime_flag == -1) { // The user wants to control how much filament gets purged ui.capture(); - ui.set_status(GET_TEXT_F(MSG_G26_MANUAL_PRIME), 99); + LCD_MESSAGE_MAX(MSG_G26_MANUAL_PRIME); ui.chirp(); destination = current_position; @@ -398,17 +392,15 @@ typedef struct { ui.wait_for_release(); - ui.set_status(GET_TEXT_F(MSG_G26_PRIME_DONE), 99); + LCD_MESSAGE_MAX(MSG_G26_PRIME_DONE); ui.quick_feedback(); ui.release(); } else #endif { - #if HAS_WIRED_LCD - ui.set_status(GET_TEXT_F(MSG_G26_FIXED_LENGTH), 99); - ui.quick_feedback(); - #endif + LCD_MESSAGE_MAX(MSG_G26_FIXED_LENGTH); + ui.quick_feedback(); destination = current_position; destination.e += prime_length; prepare_internal_move_to_destination(fr_slow_e); @@ -853,7 +845,7 @@ void GcodeSuite::G26() { } while (--g26_repeats && location.valid()); LEAVE: - ui.set_status(GET_TEXT_F(MSG_G26_LEAVING), -1); + LCD_MESSAGE_MIN(MSG_G26_LEAVING); TERN_(EXTENSIBLE_UI, ExtUI::onMeshUpdate(location, ExtUI::G26_FINISH)); g26.retract_filament(destination); diff --git a/Marlin/src/gcode/calibrate/M48.cpp b/Marlin/src/gcode/calibrate/M48.cpp index ff14175c71d7..5e0c21b42e46 100644 --- a/Marlin/src/gcode/calibrate/M48.cpp +++ b/Marlin/src/gcode/calibrate/M48.cpp @@ -84,7 +84,7 @@ void GcodeSuite::M48() { }; if (!probe.can_reach(test_position)) { - ui.set_status(GET_TEXT_F(MSG_M48_OUT_OF_BOUNDS), 99); + LCD_MESSAGE_MAX(MSG_M48_OUT_OF_BOUNDS); SERIAL_ECHOLNPGM("? (X,Y) out of bounds."); return; } diff --git a/Marlin/src/lcd/language/language_en.h b/Marlin/src/lcd/language/language_en.h index 68c231d55610..244d61a712ca 100644 --- a/Marlin/src/lcd/language/language_en.h +++ b/Marlin/src/lcd/language/language_en.h @@ -639,6 +639,7 @@ namespace Language_en { LSTR MSG_CHAMBER_COOLING = _UxGT("Chamber Cooling..."); LSTR MSG_LASER_COOLING = _UxGT("Laser Cooling..."); LSTR MSG_DELTA_CALIBRATE = _UxGT("Delta Calibration"); + LSTR MSG_DELTA_CALIBRATION_IN_PROGRESS = _UxGT("Delta Calibration in progress"); LSTR MSG_DELTA_CALIBRATE_X = _UxGT("Calibrate X"); LSTR MSG_DELTA_CALIBRATE_Y = _UxGT("Calibrate Y"); LSTR MSG_DELTA_CALIBRATE_Z = _UxGT("Calibrate Z"); @@ -749,7 +750,8 @@ namespace Language_en { LSTR MSG_MMU2_FILAMENT_N = _UxGT("Filament ~"); LSTR MSG_MMU2_RESET = _UxGT("Reset MMU"); LSTR MSG_MMU2_RESETTING = _UxGT("MMU Resetting..."); - LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Remove, click"); + LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("MMU2 Eject Recover"); + LSTR MSG_MMU2_REMOVE_AND_CLICK = _UxGT("Remove and click..."); LSTR MSG_MIX = _UxGT("Mix"); LSTR MSG_MIX_COMPONENT_N = _UxGT("Component ="); diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index 88cdb990762d..22b3fa27d71b 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -671,7 +671,7 @@ void MarlinUI::init() { #if HAS_MARLINUI_MENU if (use_click()) { #if BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) - next_filament_display = millis() + 5000UL; // Show status message for 5s + pause_filament_display(); #endif goto_screen(menu_main); reinit_lcd(); // Revive a noisy shared SPI LCD @@ -1592,7 +1592,7 @@ void MarlinUI::init() { #endif #if BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) - next_filament_display = ms + 5000UL; // Show status message for 5s + pause_filament_display(ms); // Show status message for 5s #endif #endif diff --git a/Marlin/src/lcd/marlinui.h b/Marlin/src/lcd/marlinui.h index 9d6d235e96de..32d747da4301 100644 --- a/Marlin/src/lcd/marlinui.h +++ b/Marlin/src/lcd/marlinui.h @@ -469,6 +469,7 @@ class MarlinUI { #if BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) static millis_t next_filament_display; + static void pause_filament_display(const millis_t ms=millis()) { next_filament_display = ms + 5000UL; } #endif #if HAS_TOUCH_SLEEP @@ -493,6 +494,11 @@ class MarlinUI { static void status_screen(); + #else + + static void quick_feedback(const bool=true) {} + static void completion_feedback(const bool=true) {} + #endif #if HAS_MARLINUI_U8GLIB @@ -803,5 +809,7 @@ class MarlinUI { #define LCD_MESSAGE_F(S) ui.set_status(F(S)) #define LCD_MESSAGE(M) ui.set_status(GET_TEXT_F(M)) +#define LCD_MESSAGE_MIN(M) ui.set_status(GET_TEXT_F(M), -1) +#define LCD_MESSAGE_MAX(M) ui.set_status(GET_TEXT_F(M), 99) #define LCD_ALERTMESSAGE_F(S) ui.set_alert_status(F(S)) #define LCD_ALERTMESSAGE(M) ui.set_alert_status(GET_TEXT_F(M)) diff --git a/Marlin/src/lcd/menu/menu_delta_calibrate.cpp b/Marlin/src/lcd/menu/menu_delta_calibrate.cpp index a33edd1659b3..3b04de9eb003 100644 --- a/Marlin/src/lcd/menu/menu_delta_calibrate.cpp +++ b/Marlin/src/lcd/menu/menu_delta_calibrate.cpp @@ -68,8 +68,8 @@ void _man_probe_pt(const xy_pos_t &xy) { float lcd_probe_pt(const xy_pos_t &xy) { _man_probe_pt(xy); ui.defer_status_screen(); - TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, F("Delta Calibration in progress"), FPSTR(CONTINUE_STR))); - TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(F("Delta Calibration in progress"))); + TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, GET_TEXT_F(MSG_DELTA_CALIBRATION_IN_PROGRESS), FPSTR(CONTINUE_STR))); + TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_DELTA_CALIBRATION_IN_PROGRESS))); TERN_(HAS_RESUME_CONTINUE, wait_for_user_response()); ui.goto_previous_screen_no_defer(); return current_position.z; diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index ca5b940c5d18..8ebc8c61f54e 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -1706,7 +1706,7 @@ void MarlinSettings::postprocess() { stored_ver[1] = '\0'; } DEBUG_ECHO_MSG("EEPROM version mismatch (EEPROM=", stored_ver, " Marlin=" EEPROM_VERSION ")"); - TERN_(DWIN_LCD_PROUI, LCD_MESSAGE(MSG_ERR_EEPROM_VERSION)); + LCD_MESSAGE(MSG_ERR_EEPROM_VERSION); TERN_(HOST_PROMPT_SUPPORT, hostui.notify(GET_TEXT_F(MSG_ERR_EEPROM_VERSION))); IF_DISABLED(EEPROM_AUTO_INIT, ui.eeprom_alert_version()); @@ -2662,7 +2662,7 @@ void MarlinSettings::postprocess() { else if (working_crc != stored_crc) { eeprom_error = true; DEBUG_ERROR_MSG("EEPROM CRC mismatch - (stored) ", stored_crc, " != ", working_crc, " (calculated)!"); - TERN_(DWIN_LCD_PROUI, LCD_MESSAGE(MSG_ERR_EEPROM_CRC)); + LCD_MESSAGE(MSG_ERR_EEPROM_CRC); TERN_(HOST_EEPROM_CHITCHAT, hostui.notify(GET_TEXT_F(MSG_ERR_EEPROM_CRC))); IF_DISABLED(EEPROM_AUTO_INIT, ui.eeprom_alert_crc()); } From 78bdf34b7bc56a0a8aa193cfd824ad2841ed25dc Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 14 Apr 2023 18:06:56 -0500 Subject: [PATCH 017/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Hos?= =?UTF-8?q?tUI::continue=5Fprompt=20method?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/host_actions.h | 7 +++++-- Marlin/src/feature/mmu/mmu2.cpp | 2 +- Marlin/src/feature/pause.cpp | 6 +++--- Marlin/src/gcode/config/M43.cpp | 2 +- Marlin/src/gcode/lcd/M0_M1.cpp | 4 ++-- Marlin/src/gcode/sd/M1001.cpp | 2 +- Marlin/src/lcd/menu/menu_delta_calibrate.cpp | 2 +- Marlin/src/module/probe.cpp | 4 ++-- 8 files changed, 16 insertions(+), 13 deletions(-) diff --git a/Marlin/src/feature/host_actions.h b/Marlin/src/feature/host_actions.h index 3f75562398ec..c030ebad01fc 100644 --- a/Marlin/src/feature/host_actions.h +++ b/Marlin/src/feature/host_actions.h @@ -35,6 +35,8 @@ PROMPT_INFO }; + extern const char CONTINUE_STR[], DISMISS_STR[]; + #endif class HostUI { @@ -111,6 +113,9 @@ class HostUI { static void prompt_do(const PromptReason reason, FSTR_P const pstr, const char extra_char, FSTR_P const btn1=nullptr, FSTR_P const btn2=nullptr); static void prompt_do(const PromptReason reason, const char * const cstr, const char extra_char, FSTR_P const btn1=nullptr, FSTR_P const btn2=nullptr); + static void continue_prompt(FSTR_P const fstr) { prompt_do(PROMPT_USER_CONTINUE, fstr, FPSTR(CONTINUE_STR)); } + static void continue_prompt(const char * const cstr) { prompt_do(PROMPT_USER_CONTINUE, cstr, FPSTR(CONTINUE_STR)); } + static void prompt_open(const PromptReason reason, FSTR_P const pstr, FSTR_P const btn1=nullptr, FSTR_P const btn2=nullptr) { if (host_prompt_reason == PROMPT_NOT_DEFINED) prompt_do(reason, pstr, btn1, btn2); } @@ -124,5 +129,3 @@ class HostUI { }; extern HostUI hostui; - -extern const char CONTINUE_STR[], DISMISS_STR[]; diff --git a/Marlin/src/feature/mmu/mmu2.cpp b/Marlin/src/feature/mmu/mmu2.cpp index b56e3d9c2913..ea58c2859be6 100644 --- a/Marlin/src/feature/mmu/mmu2.cpp +++ b/Marlin/src/feature/mmu/mmu2.cpp @@ -980,7 +980,7 @@ bool MMU2::eject_filament(const uint8_t index, const bool recover) { if (recover) { LCD_MESSAGE(MSG_MMU2_REMOVE_AND_CLICK); mmu2_attn_buzz(); - TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, GET_TEXT_F(MSG_MMU2_EJECT_RECOVER), FPSTR(CONTINUE_STR))); + TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(GET_TEXT_F(MSG_MMU2_EJECT_RECOVER))); TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_MMU2_EJECT_RECOVER))); TERN_(HAS_RESUME_CONTINUE, wait_for_user_response()); mmu2_attn_buzz(true); diff --git a/Marlin/src/feature/pause.cpp b/Marlin/src/feature/pause.cpp index 9e0f51fad639..35d1fd79f9d6 100644 --- a/Marlin/src/feature/pause.cpp +++ b/Marlin/src/feature/pause.cpp @@ -262,7 +262,7 @@ bool load_filament(const_float_t slow_load_length/*=0*/, const_float_t fast_load if (show_lcd) ui.pause_show_message(PAUSE_MESSAGE_PURGE); TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_PURGE))); - TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, GET_TEXT_F(MSG_FILAMENT_CHANGE_PURGE), FPSTR(CONTINUE_STR))); + TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(GET_TEXT_F(MSG_FILAMENT_CHANGE_PURGE))); wait_for_user = true; // A click or M108 breaks the purge_length loop for (float purge_count = purge_length; purge_count > 0 && wait_for_user; --purge_count) unscaled_e_move(1, ADVANCED_PAUSE_PURGE_FEEDRATE); @@ -530,7 +530,7 @@ void wait_for_confirmation(const bool is_reload/*=false*/, const int8_t max_beep // Wait for filament insert by user and press button KEEPALIVE_STATE(PAUSED_FOR_USER); - TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, GET_TEXT_F(MSG_NOZZLE_PARKED), FPSTR(CONTINUE_STR))); + TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(GET_TEXT_F(MSG_NOZZLE_PARKED))); TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_NOZZLE_PARKED))); wait_for_user = true; // LCD click or M108 will clear this while (wait_for_user) { @@ -570,7 +570,7 @@ void wait_for_confirmation(const bool is_reload/*=false*/, const int8_t max_beep HOTEND_LOOP() thermalManager.heater_idle[e].start(nozzle_timeout); - TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, GET_TEXT_F(MSG_REHEATDONE), FPSTR(CONTINUE_STR))); + TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(GET_TEXT_F(MSG_REHEATDONE))); #if ENABLED(EXTENSIBLE_UI) ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_REHEATDONE)); #else diff --git a/Marlin/src/gcode/config/M43.cpp b/Marlin/src/gcode/config/M43.cpp index a3e837eb53b3..c427fe7a31e8 100644 --- a/Marlin/src/gcode/config/M43.cpp +++ b/Marlin/src/gcode/config/M43.cpp @@ -362,7 +362,7 @@ void GcodeSuite::M43() { #if HAS_RESUME_CONTINUE KEEPALIVE_STATE(PAUSED_FOR_USER); wait_for_user = true; - TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, F("M43 Waiting..."), FPSTR(CONTINUE_STR))); + TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(F("M43 Waiting..."))); #if ENABLED(EXTENSIBLE_UI) ExtUI::onUserConfirmRequired(F("M43 Waiting...")); #else diff --git a/Marlin/src/gcode/lcd/M0_M1.cpp b/Marlin/src/gcode/lcd/M0_M1.cpp index 35afea0f6ecd..120a36a57828 100644 --- a/Marlin/src/gcode/lcd/M0_M1.cpp +++ b/Marlin/src/gcode/lcd/M0_M1.cpp @@ -87,9 +87,9 @@ void GcodeSuite::M0_M1() { #if ENABLED(HOST_PROMPT_SUPPORT) if (parser.string_arg) - hostui.prompt_do(PROMPT_USER_CONTINUE, parser.string_arg, FPSTR(CONTINUE_STR)); + hostui.continue_prompt(parser.string_arg); else - hostui.prompt_do(PROMPT_USER_CONTINUE, parser.codenum ? F("M1 Stop") : F("M0 Stop"), FPSTR(CONTINUE_STR)); + hostui.continue_prompt(parser.codenum ? F("M1 Stop") : F("M0 Stop")); #endif TERN_(HAS_RESUME_CONTINUE, wait_for_user_response(ms)); diff --git a/Marlin/src/gcode/sd/M1001.cpp b/Marlin/src/gcode/sd/M1001.cpp index c7728a5a477f..1d1d1a4b7f80 100644 --- a/Marlin/src/gcode/sd/M1001.cpp +++ b/Marlin/src/gcode/sd/M1001.cpp @@ -97,7 +97,7 @@ void GcodeSuite::M1001() { if (long_print) { printerEventLEDs.onPrintCompleted(); TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_PRINT_DONE))); - TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, GET_TEXT_F(MSG_PRINT_DONE), FPSTR(CONTINUE_STR))); + TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(GET_TEXT_F(MSG_PRINT_DONE))); TERN_(HAS_RESUME_CONTINUE, wait_for_user_response(SEC_TO_MS(TERN(HAS_MARLINUI_MENU, PE_LEDS_COMPLETED_TIME, 30)))); printerEventLEDs.onResumeAfterWait(); } diff --git a/Marlin/src/lcd/menu/menu_delta_calibrate.cpp b/Marlin/src/lcd/menu/menu_delta_calibrate.cpp index 3b04de9eb003..fe0be0439853 100644 --- a/Marlin/src/lcd/menu/menu_delta_calibrate.cpp +++ b/Marlin/src/lcd/menu/menu_delta_calibrate.cpp @@ -68,7 +68,7 @@ void _man_probe_pt(const xy_pos_t &xy) { float lcd_probe_pt(const xy_pos_t &xy) { _man_probe_pt(xy); ui.defer_status_screen(); - TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, GET_TEXT_F(MSG_DELTA_CALIBRATION_IN_PROGRESS), FPSTR(CONTINUE_STR))); + TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(GET_TEXT_F(MSG_DELTA_CALIBRATION_IN_PROGRESS))); TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_DELTA_CALIBRATION_IN_PROGRESS))); TERN_(HAS_RESUME_CONTINUE, wait_for_user_response()); ui.goto_previous_screen_no_defer(); diff --git a/Marlin/src/module/probe.cpp b/Marlin/src/module/probe.cpp index 0f2fca119c6d..75295c5f5a4d 100644 --- a/Marlin/src/module/probe.cpp +++ b/Marlin/src/module/probe.cpp @@ -168,7 +168,7 @@ xyz_pos_t Probe::offset; // Initialized by settings.load() LCD_MESSAGE(MSG_MANUAL_DEPLOY_TOUCHMI); ui.return_to_status(); - TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, F("Deploy TouchMI"), FPSTR(CONTINUE_STR))); + TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(F("Deploy TouchMI"))); TERN_(HAS_RESUME_CONTINUE, wait_for_user_response()); ui.reset_status(); ui.goto_screen(prev_screen); @@ -364,7 +364,7 @@ FORCE_INLINE void probe_specific_action(const bool deploy) { ui.set_status(ds_str, 99); SERIAL_ECHOLNF(deploy ? GET_EN_TEXT_F(MSG_MANUAL_DEPLOY) : GET_EN_TEXT_F(MSG_MANUAL_STOW)); - TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, ds_str, FPSTR(CONTINUE_STR))); + TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(ds_str)); TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(ds_str)); TERN_(DWIN_LCD_PROUI, DWIN_Popup_Confirm(ICON_BLTouch, ds_str, FPSTR(CONTINUE_STR))); TERN_(HAS_RESUME_CONTINUE, wait_for_user_response()); From cc35cb3876ed95163b4715bc29da96813906663a Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Sun, 16 Apr 2023 03:26:08 +0200 Subject: [PATCH 018/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20Configuration=20Em?= =?UTF-8?q?bedding=20(#25688)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/eeprom/M500-M504.cpp | 16 ++++++++++++---- buildroot/share/PlatformIO/scripts/signature.py | 3 ++- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/Marlin/src/gcode/eeprom/M500-M504.cpp b/Marlin/src/gcode/eeprom/M500-M504.cpp index 6da1d1cbd73b..31da2c5adf84 100644 --- a/Marlin/src/gcode/eeprom/M500-M504.cpp +++ b/Marlin/src/gcode/eeprom/M500-M504.cpp @@ -66,11 +66,19 @@ void GcodeSuite::M502() { #if ENABLED(CONFIGURATION_EMBEDDING) if (parser.seen_test('C')) { - SdBaseFile file; - const uint16_t size = sizeof(mc_zip); + MediaFile file; // Need to create the config size on the SD card - if (file.open(card.getroot(), "mc.zip", O_WRITE|O_CREAT) && file.write(pgm_read_ptr(mc_zip), size) != -1 && file.close()) - SERIAL_ECHO_MSG("Configuration saved as 'mc.zip'"); + MediaFile root = card.getroot(); + if (file.open(&root, "mc.zip", O_WRITE|O_CREAT)) { + bool success = true; + for (uint16_t i = 0; success && i < sizeof(mc_zip); ++i) { + const uint8_t c = pgm_read_byte(&mc_zip[i]); + file.write(c); + } + success = file.close() && success; + + if (success) SERIAL_ECHO_MSG("Configuration saved as 'mc.zip'"); + } } #endif } diff --git a/buildroot/share/PlatformIO/scripts/signature.py b/buildroot/share/PlatformIO/scripts/signature.py index 4fc0084e575b..0da02f837b26 100644 --- a/buildroot/share/PlatformIO/scripts/signature.py +++ b/buildroot/share/PlatformIO/scripts/signature.py @@ -56,13 +56,14 @@ def compute_build_signature(env): files_to_keep = [ 'Marlin/Configuration.h', 'Marlin/Configuration_adv.h' ] build_path = Path(env['PROJECT_BUILD_DIR'], env['PIOENV']) + build_path_relative = Path('.pio', 'build', env['PIOENV']) # Check if we can skip processing hashes = '' for header in files_to_keep: hashes += get_file_sha256sum(header)[0:10] - marlin_json = build_path / 'marlin_config.json' + marlin_json = build_path_relative / 'marlin_config.json' marlin_zip = build_path / 'mc.zip' # Read existing config file From 883bde07c650068f10995b7c58cd72a432d4b78e Mon Sep 17 00:00:00 2001 From: Andrew <18502096+classicrocker883@users.noreply.github.com> Date: Sat, 15 Apr 2023 21:51:51 -0400 Subject: [PATCH 019/427] =?UTF-8?q?=F0=9F=94=A7=20Animated=20bootscreen=20?= =?UTF-8?q?U8glib-only=20(#25684)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 4 +++- ini/stm32f4.ini | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index dd9645900407..294cc4448795 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -1535,6 +1535,9 @@ //#define SHOW_CUSTOM_BOOTSCREEN // Show the bitmap in Marlin/_Bootscreen.h on startup. #endif #if HAS_MARLINUI_U8GLIB + #if ENABLED(SHOW_BOOTSCREEN) + //#define BOOT_MARLIN_LOGO_ANIMATED // Animated Marlin logo. Costs ~3260 (or ~940) bytes of flash. + #endif //#define CUSTOM_STATUS_SCREEN_IMAGE // Show the bitmap in Marlin/_Statusscreen.h on the status screen. #endif #endif @@ -1947,7 +1950,6 @@ //#define STATUS_ALT_FAN_BITMAP // Use the alternative fan bitmap //#define STATUS_FAN_FRAMES 3 // :[0,1,2,3,4] Number of fan animation frames //#define STATUS_HEAT_PERCENT // Show heating in a progress bar - //#define BOOT_MARLIN_LOGO_ANIMATED // Animated Marlin logo. Costs ~3260 (or ~940) bytes of flash. // Frivolous Game Options //#define MARLIN_BRICKOUT diff --git a/ini/stm32f4.ini b/ini/stm32f4.ini index e9b9a956ded2..7060f95db7a5 100644 --- a/ini/stm32f4.ini +++ b/ini/stm32f4.ini @@ -47,6 +47,7 @@ board = marlin_STM32F407ZGT6 board_build.variant = MARLIN_FLY_F407ZG board_build.offset = 0x8000 upload_protocol = dfu + # # FYSETC S6 (STM32F446RET6 ARM Cortex-M4) # From 6e3b58d76a00e861a9945f3073719f82473a0faf Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 15 Apr 2023 22:24:14 -0500 Subject: [PATCH 020/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Any?= =?UTF-8?q?cubic=20shared=20code=20(#25690)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../{anycubic_vyper => anycubic}/Tunes.cpp | 27 +-- .../{anycubic_vyper => anycubic}/Tunes.h | 137 ++--------- Marlin/src/lcd/extui/anycubic/common_defs.h | 138 +++++++++++ .../extui/anycubic_chiron/FileNavigator.cpp | 28 +-- .../lcd/extui/anycubic_chiron/FileNavigator.h | 42 ++-- .../src/lcd/extui/anycubic_chiron/Tunes.cpp | 61 ----- Marlin/src/lcd/extui/anycubic_chiron/Tunes.h | 224 ------------------ .../lcd/extui/anycubic_chiron/chiron_tft.cpp | 10 +- .../extui/anycubic_chiron/chiron_tft_defs.h | 140 ++--------- .../lcd/extui/anycubic_vyper/FileNavigator.h | 33 ++- .../src/lcd/extui/anycubic_vyper/dgus_tft.cpp | 18 +- .../lcd/extui/anycubic_vyper/dgus_tft_defs.h | 119 +--------- ini/features.ini | 1 + platformio.ini | 4 +- 14 files changed, 266 insertions(+), 716 deletions(-) rename Marlin/src/lcd/extui/{anycubic_vyper => anycubic}/Tunes.cpp (71%) rename Marlin/src/lcd/extui/{anycubic_vyper => anycubic}/Tunes.h (54%) create mode 100644 Marlin/src/lcd/extui/anycubic/common_defs.h delete mode 100644 Marlin/src/lcd/extui/anycubic_chiron/Tunes.cpp delete mode 100644 Marlin/src/lcd/extui/anycubic_chiron/Tunes.h diff --git a/Marlin/src/lcd/extui/anycubic_vyper/Tunes.cpp b/Marlin/src/lcd/extui/anycubic/Tunes.cpp similarity index 71% rename from Marlin/src/lcd/extui/anycubic_vyper/Tunes.cpp rename to Marlin/src/lcd/extui/anycubic/Tunes.cpp index d7f0e4b6d4c9..118f049bc1f6 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/Tunes.cpp +++ b/Marlin/src/lcd/extui/anycubic/Tunes.cpp @@ -21,7 +21,7 @@ */ /** - * lcd/extui/anycubic_vyper/Tunes.cpp + * lcd/extui/anycubic/Tunes.cpp */ /*********************************************************************** @@ -31,28 +31,23 @@ #include "../../../inc/MarlinConfigPre.h" -#if ENABLED(ANYCUBIC_LCD_VYPER) +#if EITHER(ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_VYPER) #include "Tunes.h" +#include "../../../libs/buzzer.h" #include "../ui_api.h" namespace Anycubic { - void PlayTune(const uint8_t beeperPin, const uint16_t *tune, const uint8_t speed=1) { - uint8_t pos = 1; - uint16_t wholenotelen = tune[0] / speed; - do { - uint16_t freq = tune[pos]; - uint16_t notelen = wholenotelen / tune[pos + 1]; - - ::tone(beeperPin, freq, notelen); - ExtUI::delay_ms(notelen); - pos += 2; - - if (pos >= MAX_TUNE_LENGTH) break; - } while (tune[pos] != n_END); + void PlayTune(const uint16_t *tune, const uint8_t speed=1) { + const uint16_t wholenotelen = tune[0] / speed; + for (uint8_t pos = 1; pos < MAX_TUNE_LENGTH; pos += 2) { + const uint16_t freq = tune[pos]; + if (freq == n_END) break; + BUZZ(freq, wholenotelen / tune[pos + 1]); + } } } -#endif // ANYCUBIC_LCD_VYPER +#endif // ANYCUBIC_LCD_CHIRON || ANYCUBIC_LCD_VYPER diff --git a/Marlin/src/lcd/extui/anycubic_vyper/Tunes.h b/Marlin/src/lcd/extui/anycubic/Tunes.h similarity index 54% rename from Marlin/src/lcd/extui/anycubic_vyper/Tunes.h rename to Marlin/src/lcd/extui/anycubic/Tunes.h index 9a06768ac6e0..a05107738d24 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/Tunes.h +++ b/Marlin/src/lcd/extui/anycubic/Tunes.h @@ -22,7 +22,7 @@ #pragma once /** - * lcd/extui/anycubic_vyper/Tunes.h + * lcd/extui/anycubic/Tunes.h */ /************************************************************************** @@ -41,127 +41,23 @@ #define MAX_TUNE_LENGTH 128 -// Special notes! -#define n_P 0 // silence or pause -#define n_END 10000 // end of tune marker - // Note duration divisors -#define l_T1 1 -#define l_T2 2 -#define l_T3 3 -#define l_T4 4 -#define l_T8 8 -#define l_T16 16 +enum { l_T1=1, l_T2 =2, l_T3=3, l_T4 =4, l_T8=8, l_T16=16 }; // Note Frequency -#define n_C0 16 -#define n_CS0 17 -#define n_D0 18 -#define n_DS0 19 -#define n_E0 21 -#define n_F0 22 -#define n_FS0 23 -#define n_G0 25 -#define n_GS0 26 -#define n_A0 28 -#define n_AS0 29 -#define n_B0 31 -#define n_C1 33 -#define n_CS1 35 -#define n_D1 37 -#define n_DS1 39 -#define n_E1 41 -#define n_F1 44 -#define n_FS1 46 -#define n_G1 49 -#define n_GS1 52 -#define n_A1 55 -#define n_AS1 58 -#define n_B1 62 -#define n_C2 65 -#define n_CS2 69 -#define n_D2 73 -#define n_DS2 78 -#define n_E2 82 -#define n_F2 87 -#define n_FS2 93 -#define n_G2 98 -#define n_GS2 104 -#define n_A2 110 -#define n_AS2 117 -#define n_B2 123 -#define n_C3 131 -#define n_CS3 139 -#define n_D3 147 -#define n_DS3 156 -#define n_E3 165 -#define n_F3 175 -#define n_FS3 185 -#define n_G3 196 -#define n_GS3 208 -#define n_A3 220 -#define n_AS3 233 -#define n_B3 247 -#define n_C4 262 -#define n_CS4 277 -#define n_D4 294 -#define n_DS4 311 -#define n_E4 330 -#define n_F4 349 -#define n_FS4 370 -#define n_G4 392 -#define n_GS4 415 -#define n_A4 440 -#define n_AS4 466 -#define n_B4 494 -#define n_C5 523 -#define n_CS5 554 -#define n_D5 587 -#define n_DS5 622 -#define n_E5 659 -#define n_F5 698 -#define n_FS5 740 -#define n_G5 784 -#define n_GS5 831 -#define n_A5 880 -#define n_AS5 932 -#define n_B5 988 -#define n_C6 1047 -#define n_CS6 1109 -#define n_D6 1175 -#define n_DS6 1245 -#define n_E6 1319 -#define n_F6 1397 -#define n_FS6 1480 -#define n_G6 1568 -#define n_GS6 1661 -#define n_A6 1760 -#define n_AS6 1865 -#define n_B6 1976 -#define n_C7 2093 -#define n_CS7 2217 -#define n_D7 2349 -#define n_DS7 2489 -#define n_E7 2637 -#define n_F7 2794 -#define n_FS7 2960 -#define n_G7 3136 -#define n_GS7 3322 -#define n_A7 3520 -#define n_AS7 3729 -#define n_B7 3951 -#define n_C8 4186 -#define n_CS8 4435 -#define n_D8 4699 -#define n_DS8 4978 -#define n_E8 5274 -#define n_F8 5587 -#define n_FS8 5920 -#define n_G8 6272 -#define n_GS8 6645 -#define n_A8 7040 -#define n_AS8 7459 -#define n_B8 7902 +enum { +n_P = 0, // silence or pause +n_C0= 16, n_CS0= 17, n_D0= 18, n_DS0= 19, n_E0= 21, n_F0= 22, n_FS0= 23, n_G0= 25, n_GS0= 26, n_A0= 28, n_AS0= 29, n_B0= 31, +n_C1= 33, n_CS1= 35, n_D1= 37, n_DS1= 39, n_E1= 41, n_F1= 44, n_FS1= 46, n_G1= 49, n_GS1= 52, n_A1= 55, n_AS1= 58, n_B1= 62, +n_C2= 65, n_CS2= 69, n_D2= 73, n_DS2= 78, n_E2= 82, n_F2= 87, n_FS2= 93, n_G2= 98, n_GS2= 104, n_A2= 110, n_AS2= 117, n_B2= 123, +n_C3= 131, n_CS3= 139, n_D3= 147, n_DS3= 156, n_E3= 165, n_F3= 175, n_FS3= 185, n_G3= 196, n_GS3= 208, n_A3= 220, n_AS3= 233, n_B3= 247, +n_C4= 262, n_CS4= 277, n_D4= 294, n_DS4= 311, n_E4= 330, n_F4= 349, n_FS4= 370, n_G4= 392, n_GS4= 415, n_A4= 440, n_AS4= 466, n_B4= 494, +n_C5= 523, n_CS5= 554, n_D5= 587, n_DS5= 622, n_E5= 659, n_F5= 698, n_FS5= 740, n_G5= 784, n_GS5= 831, n_A5= 880, n_AS5= 932, n_B5= 988, +n_C6=1047, n_CS6=1109, n_D6=1175, n_DS6=1245, n_E6=1319, n_F6=1397, n_FS6=1480, n_G6=1568, n_GS6=1661, n_A6=1760, n_AS6=1865, n_B6=1976, +n_C7=2093, n_CS7=2217, n_D7=2349, n_DS7=2489, n_E7=2637, n_F7=2794, n_FS7=2960, n_G7=3136, n_GS7=3322, n_A7=3520, n_AS7=3729, n_B7=3951, +n_C8=4186, n_CS8=4435, n_D8=4699, n_DS8=4978, n_E8=5274, n_F8=5587, n_FS8=5920, n_G8=6272, n_GS8=6645, n_A8=7040, n_AS8=7459, n_B8=7902, +n_END=10000 // end of tune marker +}; namespace Anycubic { @@ -194,8 +90,7 @@ namespace Anycubic { const uint16_t Anycubic_PowerOn[] = { 1000, n_F7,l_T8, n_P,l_T8, n_C7,l_T8, n_P,l_T8, n_D7,l_T8, n_P,l_T8, - n_E7,l_T8, n_P,l_T8, n_D7,l_T4, n_P,l_T4, n_G7,l_T4, n_P,l_T4, - n_A7,l_T2, n_P,l_T1, + n_E7,l_T8, n_P,l_T8, n_D7,l_T4, n_P,l_T4, n_END }; diff --git a/Marlin/src/lcd/extui/anycubic/common_defs.h b/Marlin/src/lcd/extui/anycubic/common_defs.h new file mode 100644 index 000000000000..4257f1dabfb4 --- /dev/null +++ b/Marlin/src/lcd/extui/anycubic/common_defs.h @@ -0,0 +1,138 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +/** + * lcd/extui/anycubic/common_defs.h + */ + +#include "../../../inc/MarlinConfigPre.h" + +#define ACDEBUGLEVEL 0 // 0: off, 255: all levels enabled + +#if ACDEBUGLEVEL + // Bit-masks for selective debug: + enum ACDebugMask : uint8_t { + AC_INFO = 1, + AC_ACTION = 2, + AC_FILE = 4, + AC_PANEL = 8, + AC_MARLIN = 16, + AC_SOME = 32, + AC_ALL = 64 + }; + #define ACDEBUG(mask) ( ((mask) & ACDEBUGLEVEL) == mask ) // Debug flag macro +#else + #define ACDEBUG(mask) false +#endif + +#define TFTSer LCD_SERIAL // Serial interface for TFT panel now uses marlinserial +#define MAX_FOLDER_DEPTH 4 // Limit folder depth TFT has a limit for the file path +#define MAX_CMND_LEN 16 * MAX_FOLDER_DEPTH // Maximum Length for a Panel command +#define MAX_PATH_LEN 16 * MAX_FOLDER_DEPTH // Maximum number of characters in a SD file path + +#define AC_HEATER_FAULT_VALIDATION_TIME 5 // number of 1/2 second loops before signalling a heater fault +#define AC_LOWEST_MESHPOINT_VAL Z_PROBE_LOW_POINT // The lowest value you can set for a single mesh point offset + +// TFT panel commands +#define AC_msg_sd_card_inserted F("J00") +#define AC_msg_sd_card_removed F("J01") +#define AC_msg_no_sd_card F("J02") +#define AC_msg_usb_connected F("J03") +#define AC_msg_print_from_sd_card F("J04") +#define AC_msg_pause F("J05") +#define AC_msg_nozzle_heating F("J06") +#define AC_msg_nozzle_heating_done F("J07") +#define AC_msg_bed_heating F("J08") +#define AC_msg_bed_heating_done F("J09") +#define AC_msg_nozzle_temp_abnormal F("J10") +#define AC_msg_kill_lcd F("J11") +#define AC_msg_ready F("J12") +#define AC_msg_low_nozzle_temp F("J13") +#define AC_msg_print_complete F("J14") +#define AC_msg_filament_out_alert F("J15") +#define AC_msg_stop F("J16") +#define AC_msg_main_board_has_reset F("J17") +#define AC_msg_paused F("J18") +#define AC_msg_j19_unknown F("J19") +#define AC_msg_sd_file_open_success F("J20") +#define AC_msg_sd_file_open_failed F("J21") +#define AC_msg_level_monitor_finished F("J22") +#define AC_msg_filament_out_block F("J23") +#define AC_msg_probing_not_allowed F("J24") +#define AC_msg_probing_complete F("J25") +#define AC_msg_start_probing F("J26") +#define AC_msg_version F("J27") + +// TFT panel messages +#define MARLIN_msg_start_probing PSTR("Probing Point 1/25") +#define MARLIN_msg_probing_failed PSTR("Probing Failed") +#define MARLIN_msg_ready PSTR(" Ready.") +#define MARLIN_msg_print_paused PSTR("Print Paused") +#define MARLIN_msg_print_aborted PSTR("Print Aborted") +#define MARLIN_msg_extruder_heating PSTR("E Heating...") +#define MARLIN_msg_bed_heating PSTR("Bed Heating...") + +#define MARLIN_msg_nozzle_parked PSTR("Nozzle Parked") +#define MARLIN_msg_heater_timeout PSTR("Heater Timeout") +#define MARLIN_msg_reheating PSTR("Reheating...") +#define MARLIN_msg_reheat_done PSTR("Reheat finished.") +#define MARLIN_msg_filament_purging PSTR("Filament Purging...") + +#define MARLIN_msg_special_pause PSTR("PB") // AnyCubic + +#define AC_cmnd_auto_unload_filament F("M701") // Marlin unload routine +#define AC_cmnd_auto_load_filament F("M702 M0 PB") // AnyCubic: Marlin load routine, pause for user to clean nozzle + +#define AC_cmnd_manual_load_filament F("M83\nG1 E50 F700\nM82") // replace the manual panel commands with something a little faster +#define AC_cmnd_manual_unload_filament F("M83\nG1 E-50 F1200\nM82") +#define AC_cmnd_enable_leveling F("M420SV") +#define AC_cmnd_power_loss_recovery F("G28XYR5\nG28Z") // Lift, home X and Y then home Z when in 'safe' position + +namespace Anycubic { + + enum heater_state_t : uint8_t { + AC_heater_off, + AC_heater_temp_set, + AC_heater_temp_reached + }; + + enum timer_event_t : uint8_t { + AC_timer_started, + AC_timer_paused, + AC_timer_stopped + }; + + enum media_event_t : uint8_t { + AC_media_inserted, + AC_media_removed, + AC_media_error + }; + + enum file_menu_t : uint8_t { + AC_menu_file, + AC_menu_command, + AC_menu_change_to_file, + AC_menu_change_to_command + }; + +} // Anycubic diff --git a/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.cpp b/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.cpp index 90e332125265..6e77b2b2fda6 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.cpp +++ b/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.cpp @@ -63,7 +63,7 @@ FileNavigator filenavigator; FileList FileNavigator::filelist; // Instance of the Marlin file API uint16_t FileNavigator::lastpanelindex; uint16_t FileNavigator::currentindex; // override the panel request -uint8_t FileNavigator::currentfolderdepth; +uint8_t FileNavigator::folderdepth; uint16_t FileNavigator::currentfolderindex[MAX_FOLDER_DEPTH]; // track folder pos for iteration char FileNavigator::currentfoldername[MAX_PATH_LEN + 1]; // Current folder path @@ -71,7 +71,7 @@ FileNavigator::FileNavigator() { reset(); } void FileNavigator::reset() { currentfoldername[0] = '\0'; - currentfolderdepth = 0; + folderdepth = 0; currentindex = 0; lastpanelindex = 0; ZERO(currentfolderindex); @@ -84,25 +84,25 @@ void FileNavigator::reset() { void FileNavigator::refresh() { filelist.refresh(); } void FileNavigator::changeDIR(const char *folder) { - if (currentfolderdepth >= MAX_FOLDER_DEPTH) return; // limit the folder depth - currentfolderindex[currentfolderdepth] = currentindex; + if (folderdepth >= MAX_FOLDER_DEPTH) return; // limit the folder depth + currentfolderindex[folderdepth] = currentindex; strcat(currentfoldername, folder); strcat(currentfoldername, "/"); filelist.changeDir(folder); - currentfolderdepth++; + folderdepth++; currentindex = 0; } void FileNavigator::upDIR() { if (!filelist.isAtRootDir()) { filelist.upDir(); - currentfolderdepth--; - currentindex = currentfolderindex[currentfolderdepth]; // restore last position in the folder + folderdepth--; + currentindex = currentfolderindex[folderdepth]; // restore last position in the folder filelist.seek(currentindex); // restore file information } // Remove the child folder from the stored path - if (currentfolderdepth == 0) + if (folderdepth == 0) currentfoldername[0] = '\0'; else { char * const pos = strchr(currentfoldername, '/'); @@ -122,7 +122,7 @@ void FileNavigator::skiptofileindex(uint16_t skip) { changeDIR(filelist.shortFilename()); } // valid file if (currentindex == filelist.count()) { - if (currentfolderdepth > 0) { + if (folderdepth > 0) { upDIR(); currentindex++; } @@ -147,7 +147,7 @@ void FileNavigator::skiptofileindex(uint16_t skip) { } lastpanelindex = index; - if (currentindex == 0 && currentfolderdepth > 0) { // Add a link to go up a folder + if (currentindex == 0 && folderdepth > 0) { // Add a link to go up a folder // The new panel ignores entries that don't end in .GCO or .gcode so add and pad them. if (paneltype <= AC_panel_new) { TFTSer.println("<<.GCO"); @@ -186,7 +186,7 @@ void FileNavigator::skiptofileindex(uint16_t skip) { } else { // Not DIR TFTSer.write('/'); - if (currentfolderdepth > 0) TFTSer.print(currentfoldername); + if (folderdepth > 0) TFTSer.print(currentfoldername); TFTSer.println(filelist.shortFilename()); TFTSer.print(filelist.longFilename()); @@ -221,7 +221,7 @@ void FileNavigator::skiptofileindex(uint16_t skip) { } // valid file if (currentindex == filelist.count()) { - if (currentfolderdepth > 0) { + if (folderdepth > 0) { upDIR(); currentindex++; } @@ -233,9 +233,9 @@ void FileNavigator::skiptofileindex(uint16_t skip) { void FileNavigator::sendFile(panel_type_t paneltype) { TFTSer.write('/'); - if (currentfolderdepth > 0) TFTSer.print(currentfoldername); + if (folderdepth > 0) TFTSer.print(currentfoldername); TFTSer.println(filelist.shortFilename()); - if (currentfolderdepth > 0) TFTSer.print(currentfoldername); + if (folderdepth > 0) TFTSer.print(currentfoldername); TFTSer.println(filelist.longFilename()); } diff --git a/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.h b/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.h index ca4283f54ba3..71236c4df957 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.h +++ b/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.h @@ -36,26 +36,26 @@ using namespace ExtUI; namespace Anycubic { -class FileNavigator { - public: - FileNavigator(); - static void reset(); - static void getFiles(uint16_t, panel_type_t, uint8_t filesneeded=4); - static void upDIR(); - static void changeDIR(const char *); - static void sendFile(panel_type_t); - static void refresh(); - static void skiptofileindex(uint16_t); - - static FileList filelist; - private: - static uint16_t lastpanelindex; - static uint16_t currentindex; - static uint8_t currentfolderdepth; - static uint16_t currentfolderindex[MAX_FOLDER_DEPTH]; - static char currentfoldername[MAX_PATH_LEN + 1]; -}; - -extern FileNavigator filenavigator; + class FileNavigator { + public: + static FileList filelist; + + FileNavigator(); + static void reset(); + static void getFiles(uint16_t, panel_type_t, uint8_t filesneeded=4); + static void upDIR(); + static void changeDIR(const char *); + static void sendFile(panel_type_t); + static void refresh(); + static void skiptofileindex(uint16_t); + private: + static uint16_t lastpanelindex; + static uint16_t currentindex; + static uint8_t folderdepth; + static uint16_t currentfolderindex[MAX_FOLDER_DEPTH]; + static char currentfoldername[MAX_PATH_LEN + 1]; + }; + + extern FileNavigator filenavigator; } diff --git a/Marlin/src/lcd/extui/anycubic_chiron/Tunes.cpp b/Marlin/src/lcd/extui/anycubic_chiron/Tunes.cpp deleted file mode 100644 index adbf98e3bb82..000000000000 --- a/Marlin/src/lcd/extui/anycubic_chiron/Tunes.cpp +++ /dev/null @@ -1,61 +0,0 @@ -/** - * Marlin 3D Printer Firmware - * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] - * - * Based on Sprinter and grbl. - * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ - -/** - * lcd/extui/anycubic_chiron/Tunes.cpp - * - * Extensible_UI implementation for Anycubic Chiron - * Written By Nick Wells, 2020 [https://github.com/SwiftNick] - * (not affiliated with Anycubic, Ltd.) - */ - -/*********************************************************************** - * A Utility to play tunes using the buzzer in the printer controller. * - * See Tunes.h for note and tune definitions. * - ***********************************************************************/ - -#include "../../../inc/MarlinConfigPre.h" - -// TODO: Use Marlin's built-in tone player instead. - -#if ENABLED(ANYCUBIC_LCD_CHIRON) - -#include "Tunes.h" -#include "../ui_api.h" - -namespace Anycubic { - - void PlayTune(uint8_t beeperPin, const uint16_t *tune, uint8_t speed=1) { - uint8_t pos = 1; - const uint16_t wholenotelen = tune[0] / speed; - do { - const uint16_t freq = tune[pos], notelen = wholenotelen / tune[pos + 1]; - ::tone(beeperPin, freq, notelen); - ExtUI::delay_ms(notelen); - pos += 2; - if (pos >= MAX_TUNE_LENGTH) break; - } while (tune[pos] != n_END); - } - -} - -#endif // ANYCUBIC_LCD_CHIRON diff --git a/Marlin/src/lcd/extui/anycubic_chiron/Tunes.h b/Marlin/src/lcd/extui/anycubic_chiron/Tunes.h deleted file mode 100644 index bf2e92d03e53..000000000000 --- a/Marlin/src/lcd/extui/anycubic_chiron/Tunes.h +++ /dev/null @@ -1,224 +0,0 @@ -/** - * Marlin 3D Printer Firmware - * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] - * - * Based on Sprinter and grbl. - * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ -#pragma once - -/** - * lcd/extui/anycubic_chiron/Tunes.h - * - * Extensible_UI implementation for Anycubic Chiron - * Written By Nick Wells, 2020 [https://github.com/SwiftNick] - * (not affiliated with Anycubic, Ltd.) - */ - -/************************************************************************** - * Notes definition from https://pages.mtu.edu/~suits/NoteFreqCalcs.html * - * * - * The format of a tune is: * - * {,,, ,, ... } * - * * - * 1) The first value is the length of a whole note in milliseconds * - * 2) Then a sequence of pitch and duration pairs * - * 3) Finally the END marker so your tunes can be any length up to * - * MAX_TUNE_LEN * - *************************************************************************/ - -#include - -#define MAX_TUNE_LENGTH 128 - -// Special notes! -#define n_P 0 // silence or pause -#define n_END 10000 // end of tune marker - -// Note duration divisors -#define l_T1 1 -#define l_T2 2 -#define l_T3 3 -#define l_T4 4 -#define l_T8 8 -#define l_T16 16 - -// Note Frequency -#define n_C0 16 -#define n_CS0 17 -#define n_D0 18 -#define n_DS0 19 -#define n_E0 21 -#define n_F0 22 -#define n_FS0 23 -#define n_G0 25 -#define n_GS0 26 -#define n_A0 28 -#define n_AS0 29 -#define n_B0 31 -#define n_C1 33 -#define n_CS1 35 -#define n_D1 37 -#define n_DS1 39 -#define n_E1 41 -#define n_F1 44 -#define n_FS1 46 -#define n_G1 49 -#define n_GS1 52 -#define n_A1 55 -#define n_AS1 58 -#define n_B1 62 -#define n_C2 65 -#define n_CS2 69 -#define n_D2 73 -#define n_DS2 78 -#define n_E2 82 -#define n_F2 87 -#define n_FS2 93 -#define n_G2 98 -#define n_GS2 104 -#define n_A2 110 -#define n_AS2 117 -#define n_B2 123 -#define n_C3 131 -#define n_CS3 139 -#define n_D3 147 -#define n_DS3 156 -#define n_E3 165 -#define n_F3 175 -#define n_FS3 185 -#define n_G3 196 -#define n_GS3 208 -#define n_A3 220 -#define n_AS3 233 -#define n_B3 247 -#define n_C4 262 -#define n_CS4 277 -#define n_D4 294 -#define n_DS4 311 -#define n_E4 330 -#define n_F4 349 -#define n_FS4 370 -#define n_G4 392 -#define n_GS4 415 -#define n_A4 440 -#define n_AS4 466 -#define n_B4 494 -#define n_C5 523 -#define n_CS5 554 -#define n_D5 587 -#define n_DS5 622 -#define n_E5 659 -#define n_F5 698 -#define n_FS5 740 -#define n_G5 784 -#define n_GS5 831 -#define n_A5 880 -#define n_AS5 932 -#define n_B5 988 -#define n_C6 1047 -#define n_CS6 1109 -#define n_D6 1175 -#define n_DS6 1245 -#define n_E6 1319 -#define n_F6 1397 -#define n_FS6 1480 -#define n_G6 1568 -#define n_GS6 1661 -#define n_A6 1760 -#define n_AS6 1865 -#define n_B6 1976 -#define n_C7 2093 -#define n_CS7 2217 -#define n_D7 2349 -#define n_DS7 2489 -#define n_E7 2637 -#define n_F7 2794 -#define n_FS7 2960 -#define n_G7 3136 -#define n_GS7 3322 -#define n_A7 3520 -#define n_AS7 3729 -#define n_B7 3951 -#define n_C8 4186 -#define n_CS8 4435 -#define n_D8 4699 -#define n_DS8 4978 -#define n_E8 5274 -#define n_F8 5587 -#define n_FS8 5920 -#define n_G8 6272 -#define n_GS8 6645 -#define n_A8 7040 -#define n_AS8 7459 -#define n_B8 7902 - -namespace Anycubic { - - void PlayTune(uint8_t beeperPin, const uint16_t *tune, uint8_t speed); - - // Only uncomment the tunes you are using to save memory - // This will help you write tunes! - // https://www.apronus.com/music/flashpiano.htm - - const uint16_t SOS[] = { - 250, - n_G6,l_T3, n_P,l_T3, n_G6,l_T3, n_P,l_T3, n_G6,l_T3, n_P,l_T1, - n_G6,l_T1, n_P,l_T3, n_G6,l_T1, n_P,l_T3, n_G6,l_T1, n_P,l_T1, - n_G6,l_T3, n_P,l_T3, n_G6,l_T3, n_P,l_T3, n_G6,l_T3, n_P,l_T1, - n_END - }; - - const uint16_t BeepBeep[] = { - 500, - n_C7,l_T8, n_P,l_T16, n_C7,l_T8, n_P,l_T8, - n_END - }; - - const uint16_t BeepBeepBeeep[] = { - 1000, - n_G7,l_T4, n_P,l_T16, n_G7,l_T4, n_P,l_T8, n_G7,l_T2, - n_END - }; - - const uint16_t Anycubic_PowerOn[] = { - 1000, - n_F7,l_T8, n_P,l_T8, n_C7,l_T8, n_P,l_T8, n_D7,l_T8, n_P,l_T8, - n_E7,l_T8, n_P,l_T8, n_D7,l_T4, n_P,l_T4, n_G7,l_T4, n_P,l_T4, - n_A7,l_T2, n_P,l_T1, - n_END - }; - - const uint16_t GB_PowerOn[] = { - 500, - n_C6,l_T4, n_P,l_T16, n_C7,l_T2, n_P,l_T8, - n_END - }; - - const uint16_t Heater_Timedout[] = { - 1000, - n_C6,l_T1, - n_END - }; - - const uint16_t FilamentOut[] = { - 1000, - n_AS7,l_T4, n_P,l_T16, n_FS7,l_T2, - n_END - }; - -} diff --git a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp index dce503776bcf..45fb73c02f44 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp +++ b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp @@ -33,7 +33,7 @@ #if ENABLED(ANYCUBIC_LCD_CHIRON) #include "chiron_tft.h" -#include "Tunes.h" +#include "../anycubic/Tunes.h" #include "FileNavigator.h" #include "../../../gcode/queue.h" @@ -104,7 +104,7 @@ void ChironTFT::Startup() { injectCommands(AC_cmnd_enable_leveling); // Startup tunes are defined in Tunes.h - PlayTune(BEEPER_PIN, TERN(AC_DEFAULT_STARTUP_TUNE, Anycubic_PowerOn, GB_PowerOn), 1); + PlayTune(TERN(AC_DEFAULT_STARTUP_TUNE, Anycubic_PowerOn, GB_PowerOn), 1); #if ACDEBUGLEVEL SERIAL_ECHOLNPGM("AC Debug Level ", ACDEBUGLEVEL); @@ -192,7 +192,7 @@ void ChironTFT::FilamentRunout() { // 1 Signal filament out last_error = AC_error_filament_runout; SendtoTFTLN(isPrintingFromMedia() ? AC_msg_filament_out_alert : AC_msg_filament_out_block); - PlayTune(BEEPER_PIN, FilamentOut, 1); + PlayTune(FilamentOut, 1); } void ChironTFT::ConfirmationRequest(const char * const msg) { @@ -253,7 +253,7 @@ void ChironTFT::StatusChange(const char * const msg) { } // If probing fails don't save the mesh raise the probe above the bad point if (strcmp_P(msg, MARLIN_msg_probing_failed) == 0) { - PlayTune(BEEPER_PIN, BeepBeepBeeep, 1); + PlayTune(BeepBeepBeeep, 1); injectCommands(F("G1 Z50 F500")); SendtoTFTLN(AC_msg_probing_complete); printer_state = AC_printer_idle; @@ -307,7 +307,7 @@ void ChironTFT::StatusChange(const char * const msg) { void ChironTFT::PowerLossRecovery() { printer_state = AC_printer_resuming_from_power_outage; // Play tune to notify user we can recover. last_error = AC_error_powerloss; - PlayTune(BEEPER_PIN, SOS, 1); + PlayTune(SOS, 1); SERIAL_ECHOLNF(AC_msg_powerloss_recovery); } diff --git a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft_defs.h b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft_defs.h index e3609b5408df..6cad95e68d40 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft_defs.h +++ b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft_defs.h @@ -29,116 +29,39 @@ * (not affiliated with Anycubic, Ltd.) */ -#include "../../../inc/MarlinConfigPre.h" -//#define ACDEBUGLEVEL 4 +#include "../anycubic/common_defs.h" -#if ACDEBUGLEVEL - // Bit-masks for selective debug: - enum ACDebugMask : uint8_t { - AC_INFO = 1, - AC_ACTION = 2, - AC_FILE = 4, - AC_PANEL = 8, - AC_MARLIN = 16, - AC_SOME = 32, - AC_ALL = 64 - }; - #define ACDEBUG(mask) ( ((mask) & ACDEBUGLEVEL) == mask ) // Debug flag macro -#else - #define ACDEBUG(mask) false -#endif - -#define TFTSer LCD_SERIAL // Serial interface for TFT panel now uses marlinserial -#define MAX_FOLDER_DEPTH 4 // Limit folder depth TFT has a limit for the file path -#define MAX_CMND_LEN 16 * MAX_FOLDER_DEPTH // Maximum Length for a Panel command -#define MAX_PATH_LEN 16 * MAX_FOLDER_DEPTH // Maximum number of characters in a SD file path - -#define AC_HEATER_FAULT_VALIDATION_TIME 5 // number of 1/2 second loops before signalling a heater fault -#define AC_LOWEST_MESHPOINT_VAL -10 // The lowest value you can set for a single mesh point offset - - // TFT panel commands -#define AC_msg_sd_card_inserted F("J00") -#define AC_msg_sd_card_removed F("J01") -#define AC_msg_no_sd_card F("J02") -#define AC_msg_usb_connected F("J03") -#define AC_msg_print_from_sd_card F("J04") -#define AC_msg_pause F("J05") -#define AC_msg_nozzle_heating F("J06") -#define AC_msg_nozzle_heating_done F("J07") -#define AC_msg_bed_heating F("J08") -#define AC_msg_bed_heating_done F("J09") -#define AC_msg_nozzle_temp_abnormal F("J10") -#define AC_msg_kill_lcd F("J11") -#define AC_msg_ready F("J12") -#define AC_msg_low_nozzle_temp F("J13") -#define AC_msg_print_complete F("J14") -#define AC_msg_filament_out_alert F("J15") -#define AC_msg_stop F("J16") -#define AC_msg_main_board_has_reset F("J17") -#define AC_msg_paused F("J18") -#define AC_msg_j19_unknown F("J19") -#define AC_msg_sd_file_open_success F("J20") -#define AC_msg_sd_file_open_failed F("J21") -#define AC_msg_level_monitor_finished F("J22") -#define AC_msg_filament_out_block F("J23") -#define AC_msg_probing_not_allowed F("J24") -#define AC_msg_probing_complete F("J25") -#define AC_msg_start_probing F("J26") -#define AC_msg_version F("J27") -#define AC_msg_mesh_changes_abandoned F("Mesh changes abandoned, previous mesh restored.") -#define AC_msg_mesh_changes_saved F("Mesh changes saved.") -#define AC_msg_old_panel_detected F("Standard TFT panel detected!") -#define AC_msg_new_panel_detected F("New TFT panel detected!") -#define AC_msg_auto_panel_detection F("Auto detect panel type (assuming new panel)") -#define AC_msg_old_panel_set F("Set for standard TFT panel.") -#define AC_msg_new_panel_set F("Set for new TFT panel.") +// TFT panel messages +#define AC_msg_mesh_changes_abandoned F("Mesh changes abandoned, previous mesh restored.") +#define AC_msg_mesh_changes_saved F("Mesh changes saved.") +#define AC_msg_old_panel_detected F("Standard TFT panel detected!") +#define AC_msg_new_panel_detected F("New TFT panel detected!") +#define AC_msg_auto_panel_detection F("Auto detect panel type (assuming new panel)") +#define AC_msg_old_panel_set F("Set for standard TFT panel.") +#define AC_msg_new_panel_set F("Set for new TFT panel.") -#define AC_msg_powerloss_recovery F("Resuming from power outage! select the same SD file then press resume") +#define AC_msg_powerloss_recovery F("Resuming from power outage! select the same SD file then press resume") // Error messages must not contain spaces -#define AC_msg_error_bed_temp F("Abnormal_bed_temp") -#define AC_msg_error_hotend_temp F("Abnormal_hotend_temp") -#define AC_msg_error_sd_card F("SD_card_error") -#define AC_msg_filament_out F("Filament_runout") -#define AC_msg_power_loss F("Power_failure") -#define AC_msg_eeprom_version F("EEPROM_ver_wrong") +#define AC_msg_error_bed_temp F("Abnormal_bed_temp") +#define AC_msg_error_hotend_temp F("Abnormal_hotend_temp") +#define AC_msg_error_sd_card F("SD_card_error") +#define AC_msg_filament_out F("Filament_runout") +#define AC_msg_power_loss F("Power_failure") +#define AC_msg_eeprom_version F("EEPROM_ver_wrong") -#define MARLIN_msg_start_probing PSTR("Probing Point 1/25") -#define MARLIN_msg_probing_failed PSTR("Probing Failed") -#define MARLIN_msg_ready PSTR(" Ready.") -#define MARLIN_msg_print_paused PSTR("Print Paused") -#define MARLIN_msg_print_aborted PSTR("Print Aborted") -#define MARLIN_msg_extruder_heating PSTR("E Heating...") -#define MARLIN_msg_bed_heating PSTR("Bed Heating...") -#define MARLIN_msg_EEPROM_version PSTR("EEPROM Version Error") -#define MARLIN_msg_nozzle_parked PSTR("Nozzle Parked") -#define MARLIN_msg_heater_timeout PSTR("Heater Timeout") -#define MARLIN_msg_reheating PSTR("Reheating...") -#define MARLIN_msg_reheat_done PSTR("Reheat finished.") -#define MARLIN_msg_filament_purging PSTR("Filament Purging...") -#define MARLIN_msg_special_pause PSTR("PB") +#define MARLIN_msg_EEPROM_version PSTR("EEPROM Version Error") -#define AC_cmnd_auto_unload_filament F("M701") // Use Marlin unload routine -#define AC_cmnd_auto_load_filament F("M702 M0 PB") // Use Marlin load routing then pause for user to clean nozzle - -#define AC_cmnd_manual_load_filament F("M83\nG1 E50 F700\nM82") // replace the manual panel commands with something a little faster -#define AC_cmnd_manual_unload_filament F("M83\nG1 E-50 F1200\nM82") -#define AC_cmnd_enable_leveling F("M420SV") -#define AC_cmnd_power_loss_recovery F("G28XYR5\nG28Z") // Lift, home X and Y then home Z when in 'safe' position - -#define AC_Test_for_OldPanel F("SIZE") // An old panel will respond with 'SXY 480 320' a new panel wont respond. -#define AC_Test_for_NewPanel F("J200") // A new panel will respond with '[0]=0 [1]=0' to '[19]=0 ' an old panel wont respond +#define AC_Test_for_OldPanel F("SIZE") // An old panel will respond with 'SXY 480 320' a new panel wont respond. +#define AC_Test_for_NewPanel F("J200") // A new panel will respond with '[0]=0 [1]=0' to '[19]=0 ' an old panel wont respond namespace Anycubic { - enum heater_state_t : uint8_t { - AC_heater_off, - AC_heater_temp_set, - AC_heater_temp_reached - }; + enum paused_state_t : uint8_t { AC_paused_heater_timed_out, AC_paused_purging_filament, AC_paused_idle }; + enum printer_state_t : uint8_t { AC_printer_booting, AC_printer_idle, @@ -149,27 +72,13 @@ namespace Anycubic { AC_printer_stopping, AC_printer_resuming_from_power_outage }; - enum timer_event_t : uint8_t { - AC_timer_started, - AC_timer_paused, - AC_timer_stopped - }; - enum media_event_t : uint8_t { - AC_media_inserted, - AC_media_removed, - AC_media_error - }; - enum file_menu_t : uint8_t { - AC_menu_file, - AC_menu_command, - AC_menu_change_to_file, - AC_menu_change_to_command - }; + enum panel_type_t : uint8_t { // order is important here as we assume new panel if type is unknown AC_panel_unknown, AC_panel_new, AC_panel_standard }; + enum last_error_t : uint8_t { AC_error_none, AC_error_abnormal_temp_t0, @@ -179,4 +88,5 @@ namespace Anycubic { AC_error_filament_runout, AC_error_EEPROM }; -} // Anycubic namespace + +} // Anycubic diff --git a/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.h b/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.h index c39e66b63ec3..dd4b0b0f7481 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.h +++ b/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.h @@ -31,27 +31,26 @@ using namespace ExtUI; namespace Anycubic { + class FileNavigator { public: - FileNavigator(); - - static FileList filelist; - - void reset(); - void getFiles(uint16_t); - void upDIR(); - void changeDIR(char *); - void sendFile(); - void refresh(); - char * getCurrentFolderName(); - uint16_t getFileNum(); + static FileList filelist; + FileNavigator(); + static void reset(); + static void getFiles(uint16_t); + static void upDIR(); + static void changeDIR(char *); + static void sendFile(); + static void refresh(); + static char* getCurrentFolderName(); + static uint16_t getFileNum(); private: - - static char currentfoldername[MAX_PATH_LEN]; - static uint16_t lastindex; - static uint8_t folderdepth; - static uint16_t currentindex; + static uint16_t lastindex; + static uint16_t currentindex; + static uint8_t folderdepth; + static char currentfoldername[MAX_PATH_LEN + 1]; }; + extern FileNavigator filenavigator; } diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp index 81af2e6e2045..e2bc343d67fa 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp @@ -29,7 +29,7 @@ #if ENABLED(ANYCUBIC_LCD_VYPER) #include "dgus_tft.h" -#include "Tunes.h" +#include "../anycubic/Tunes.h" #include "FileNavigator.h" #include "../../../gcode/queue.h" @@ -154,9 +154,6 @@ namespace Anycubic { // as Z home places nozzle above the bed so we need to allow it past the end stops injectCommands(AC_cmnd_enable_leveling); - // Startup tunes are defined in Tunes.h - //PlayTune(BEEPER_PIN, Anycubic_PowerOn, 1); - //PlayTune(BEEPER_PIN, GB_PowerOn, 1); #if ACDEBUGLEVEL DEBUG_ECHOLNPGM("Startup AC Debug Level ", ACDEBUGLEVEL); #endif @@ -466,7 +463,7 @@ namespace Anycubic { pop_up_index = 15; // show filament lack. if (READ(FIL_RUNOUT_PIN) == FIL_RUNOUT_STATE) { - PlayTune(BEEPER_PIN, FilamentOut, 1); + PlayTune(FilamentOut, 1); feedrate_back = getFeedrate_percent(); @@ -508,7 +505,7 @@ namespace Anycubic { if (strcmp_P(msg, MARLIN_msg_heater_timeout) == 0) { pause_state = AC_paused_heater_timed_out; SendtoTFTLN(AC_msg_paused); // enable continue button - PlayTune(BEEPER_PIN, Heater_Timedout, 1); + PlayTune(Heater_Timedout, 1); } // Reheat finished, send acknowledgement else if (strcmp_P(msg, MARLIN_msg_reheat_done) == 0) { @@ -579,7 +576,7 @@ namespace Anycubic { // If probing fails don't save the mesh raise the probe above the bad point if (strcmp_P(msg, MARLIN_msg_probing_failed) == 0) { - PlayTune(BEEPER_PIN, BeepBeepBeeep, 1); + PlayTune(BeepBeepBeeep, 1); injectCommands(F("G1 Z50 F500")); ChangePageOfTFT(PAGE_CHS_ABNORMAL_LEVELING_SENSOR); SendtoTFTLN(AC_msg_probing_complete); @@ -1073,7 +1070,7 @@ namespace Anycubic { #else SendTxtToTFT(recovery.info.sd_filename, TXT_OUTAGE_RECOVERY_FILE); #endif - PlayTune(BEEPER_PIN, SOS, 1); + PlayTune(SOS, 1); } #else constexpr bool is_outage = false; @@ -1083,12 +1080,13 @@ namespace Anycubic { } else if (control_value == 0x010000) { // startup first gif - PlayTune(BEEPER_PIN, Anycubic_PowerOn, 1); // takes 3500 ms + // Startup tunes are defined in Tunes.h + PlayTune(Anycubic_PowerOn, 1); // takes 3500 ms } } /* - else if ((control_index & 0xF000) == 0x2000) { // is TXT ADDRESS + else if ((control_index & 0xF000) == 0x2000) { // is TXT ADDRESS tft_txt_index = control_index; j = 0; for (i = 4; ;i++) { diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft_defs.h b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft_defs.h index 72e812b965cb..1133d670cde1 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft_defs.h +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft_defs.h @@ -19,106 +19,24 @@ * along with this program. If not, see . * */ +#pragma once /** * lcd/extui/anycubic_vyper/dgus_defs.h */ -#pragma once -#include "../../../inc/MarlinConfigPre.h" - -#define ACDEBUGLEVEL 0 // 0: off, 255: all levels enabled - -#if ACDEBUGLEVEL - // Bit-masks for selective debug: - enum ACDebugMask : uint8_t { - AC_INFO = 1, - AC_ACTION = 2, - AC_FILE = 4, - AC_PANEL = 8, - AC_MARLIN = 16, - AC_SOME = 32, - AC_ALL = 64 - }; - #define ACDEBUG(mask) ( ((mask) & ACDEBUGLEVEL) == mask ) // Debug flag macro -#else - #define ACDEBUG(mask) false -#endif - -#define TFTSer LCD_SERIAL // Serial interface for TFT panel now uses marlinserial -#define MAX_FOLDER_DEPTH 4 // Limit folder depth TFT has a limit for the file path -#define MAX_CMND_LEN 16 * MAX_FOLDER_DEPTH // Maximum Length for a Panel command -#define MAX_PATH_LEN 16 * MAX_FOLDER_DEPTH // Maximum number of characters in a SD file path - -#define AC_HEATER_FAULT_VALIDATION_TIME 5 // number of 1/2 second loops before signalling a heater fault -#define AC_LOWEST_MESHPOINT_VAL Z_PROBE_LOW_POINT // The lowest value you can set for a single mesh point offset - - // TFT panel commands -#define AC_msg_sd_card_inserted F("J00") -#define AC_msg_sd_card_removed F("J01") -#define AC_msg_no_sd_card F("J02") -#define AC_msg_usb_connected F("J03") -#define AC_msg_print_from_sd_card F("J04") -#define AC_msg_pause F("J05") -#define AC_msg_nozzle_heating F("J06") -#define AC_msg_nozzle_heating_done F("J07") -#define AC_msg_bed_heating F("J08") -#define AC_msg_bed_heating_done F("J09") -#define AC_msg_nozzle_temp_abnormal F("J10") -#define AC_msg_kill_lcd F("J11") -#define AC_msg_ready F("J12") -#define AC_msg_low_nozzle_temp F("J13") -#define AC_msg_print_complete F("J14") -#define AC_msg_filament_out_alert F("J15") -#define AC_msg_stop F("J16") -#define AC_msg_main_board_has_reset F("J17") -#define AC_msg_paused F("J18") -#define AC_msg_j19_unknown F("J19") -#define AC_msg_sd_file_open_success F("J20") -#define AC_msg_sd_file_open_failed F("J21") -#define AC_msg_level_monitor_finished F("J22") -#define AC_msg_filament_out_block F("J23") -#define AC_msg_probing_not_allowed F("J24") -#define AC_msg_probing_complete F("J25") -#define AC_msg_start_probing F("J26") -#define AC_msg_version F("J27") -#define AC_msg_bed_temp_abnormal F("J28") - -#define MARLIN_msg_probing_point PSTR("Probing Point ") -#define MARLIN_msg_start_probing PSTR("Probing Point 1/25") -#define MARLIN_msg_probing_failed PSTR("Probing Failed") -#define MARLIN_msg_ready PSTR(" Ready.") -#define MARLIN_msg_print_paused PSTR("Print Paused") -#define MARLIN_msg_print_aborted PSTR("Print Aborted") -#define MARLIN_msg_extruder_heating PSTR("E Heating...") -#define MARLIN_msg_bed_heating PSTR("Bed Heating...") +#include "../anycubic/common_defs.h" -#define MARLIN_msg_probe_preheat_start PSTR("Probe preheat start") -#define MARLIN_msg_probe_preheat_stop PSTR("Probe preheat stop") +// TFT panel commands +#define AC_msg_bed_temp_abnormal F("J28") - -#define MARLIN_msg_nozzle_parked PSTR("Nozzle Parked") -#define MARLIN_msg_heater_timeout PSTR("Heater Timeout") -#define MARLIN_msg_reheating PSTR("Reheating...") -#define MARLIN_msg_reheat_done PSTR("Reheat finished.") -#define MARLIN_msg_filament_purging PSTR("Filament Purging...") -#define MARLIN_msg_media_removed PSTR("Media Removed") -#define MARLIN_msg_special_pause PSTR("PB") - -#define AC_cmnd_auto_unload_filament F("M701") // Use Marlin unload routine -#define AC_cmnd_auto_load_filament F("M702 M0 PB") // Use Marlin load routing then pause for user to clean nozzle - -#define AC_cmnd_manual_load_filament F("M83\nG1 E50 F700\nM82") // replace the manual panel commands with something a little faster -#define AC_cmnd_manual_unload_filament F("M83\nG1 E-50 F1200\nM82") -#define AC_cmnd_enable_leveling F("M420SV") -#define AC_cmnd_power_loss_recovery F("G28XYR5\nG28Z") // Lift, home X and Y then home Z when in 'safe' position +// TFT panel messages +#define MARLIN_msg_probing_point PSTR("Probing Point ") +#define MARLIN_msg_probe_preheat_start PSTR("Probe preheat start") +#define MARLIN_msg_probe_preheat_stop PSTR("Probe preheat stop") +#define MARLIN_msg_media_removed PSTR("Media Removed") namespace Anycubic { - enum heater_state_t : uint8_t { - AC_heater_off, - AC_heater_temp_set, - AC_heater_temp_reached - }; enum paused_state_t : uint8_t { AC_paused_heater_timed_out, @@ -138,21 +56,4 @@ namespace Anycubic { AC_printer_resuming_from_power_outage }; - enum timer_event_t : uint8_t { - AC_timer_started, - AC_timer_paused, - AC_timer_stopped - }; - - enum media_event_t : uint8_t { - AC_media_inserted, - AC_media_removed, - AC_media_error - }; - enum file_menu_t : uint8_t { - AC_menu_file, - AC_menu_command, - AC_menu_change_to_file, - AC_menu_change_to_command - }; -} +} // Anycubic diff --git a/ini/features.ini b/ini/features.ini index d8ba74f2db20..3c5eb1adecba 100644 --- a/ini/features.ini +++ b/ini/features.ini @@ -80,6 +80,7 @@ HAS_MENU_TMC = src_filter=+ HAS_MENU_TOUCH_SCREEN = src_filter=+ HAS_MENU_TRAMMING_WIZARD = src_filter=+ HAS_MENU_UBL = src_filter=+ +ANYCUBIC_LCD_(CHIRON|VYPER) = src_filter=+ ANYCUBIC_LCD_CHIRON = src_filter=+ ANYCUBIC_LCD_VYPER = src_filter=+ ANYCUBIC_LCD_I3MEGA = src_filter=+ diff --git a/platformio.ini b/platformio.ini index 3478dcc1fbad..885fdd87d6b5 100644 --- a/platformio.ini +++ b/platformio.ini @@ -80,9 +80,7 @@ default_src_filter = + - - + - - - - - - - - - + - - - - - - - - - - - From 2fcc140c0d4353149c24fa8a3845b417738d7620 Mon Sep 17 00:00:00 2001 From: XDA-Bam <1209896+XDA-Bam@users.noreply.github.com> Date: Sun, 16 Apr 2023 05:26:46 +0200 Subject: [PATCH 021/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20'G29=20J'=20status?= =?UTF-8?q?=20message=20(#25677)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp index a6206b398e79..5bc5e6ec6136 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp +++ b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp @@ -1499,7 +1499,7 @@ void unified_bed_leveling::smart_fill_mesh() { LOOP_L_N(i, 3) { SERIAL_ECHOLNPGM("Tilting mesh (", i + 1, "/3)"); - TERN_(HAS_STATUS_MESSAGE, ui.status_printf(0, F(S_FMT " %i/3"), i + 1, GET_TEXT(MSG_LCD_TILTING_MESH))); + TERN_(HAS_STATUS_MESSAGE, ui.status_printf(0, F(S_FMT " %i/3"), GET_TEXT(MSG_LCD_TILTING_MESH), i + 1)); measured_z = probe.probe_at_point(points[i], i < 2 ? PROBE_PT_RAISE : PROBE_PT_LAST_STOW, param.V_verbosity); if ((abort_flag = isnan(measured_z))) break; From e49cf0665a112e7de0601e5a86c977435b2142c3 Mon Sep 17 00:00:00 2001 From: Dennis Lawler <4824647+drawlerr@users.noreply.github.com> Date: Sat, 15 Apr 2023 22:50:26 -0600 Subject: [PATCH 022/427] =?UTF-8?q?=F0=9F=9A=B8=20Echo=20G30=20out-of-boun?= =?UTF-8?q?ds=20(#25671)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/probe/G30.cpp | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/Marlin/src/gcode/probe/G30.cpp b/Marlin/src/gcode/probe/G30.cpp index a17ec367df72..468189bf5acc 100644 --- a/Marlin/src/gcode/probe/G30.cpp +++ b/Marlin/src/gcode/probe/G30.cpp @@ -28,6 +28,7 @@ #include "../../module/motion.h" #include "../../module/probe.h" #include "../../feature/bedlevel/bedlevel.h" +#include "../../lcd/marlinui.h" #if HAS_PTC #include "../../feature/probe_temp_comp.h" @@ -37,10 +38,6 @@ #include "../../module/tool_change.h" #endif -#if EITHER(DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI) - #include "../../lcd/marlinui.h" -#endif - /** * G30: Do a single Z probe at the given XY (default: current) * @@ -105,10 +102,8 @@ void GcodeSuite::G30() { report_current_position(); } else { - #if ENABLED(DWIN_LCD_PROUI) - SERIAL_ECHOLNF(GET_EN_TEXT_F(MSG_ZPROBE_OUT)); - LCD_MESSAGE(MSG_ZPROBE_OUT); - #endif + SERIAL_ECHOLNF(GET_EN_TEXT_F(MSG_ZPROBE_OUT)); + LCD_MESSAGE(MSG_ZPROBE_OUT); } probe.use_probing_tool(false); From b6a1a6273fcff835002c5645ebdd157b5f180bab Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Sun, 16 Apr 2023 06:59:23 +0200 Subject: [PATCH 023/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20MPC=20compile=20(#?= =?UTF-8?q?25669)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/menu/menu_advanced.cpp | 2 +- Marlin/src/module/temperature.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/lcd/menu/menu_advanced.cpp b/Marlin/src/lcd/menu/menu_advanced.cpp index 71188a86883d..719838f6be86 100644 --- a/Marlin/src/lcd/menu/menu_advanced.cpp +++ b/Marlin/src/lcd/menu/menu_advanced.cpp @@ -370,6 +370,7 @@ void menu_backlash(); #if ENABLED(MPC_EDIT_MENU) #define _MPC_EDIT_ITEMS(N) \ + MPC_t &mpc = thermalManager.temp_hotend[MenuItemBase::itemIndex].mpc; \ EDIT_ITEM_FAST_N(float31sign, N, MSG_MPC_POWER_E, &mpc.heater_power, 1, 200); \ EDIT_ITEM_FAST_N(float31sign, N, MSG_MPC_BLOCK_HEAT_CAPACITY_E, &mpc.block_heat_capacity, 0, 40); \ EDIT_ITEM_FAST_N(float43, N, MSG_SENSOR_RESPONSIVENESS_E, &mpc.sensor_responsiveness, 0, 1); \ @@ -377,7 +378,6 @@ void menu_backlash(); #if ENABLED(MPC_INCLUDE_FAN) #define MPC_EDIT_ITEMS(N) \ - MPC_t &mpc = thermalManager.temp_hotend[MenuItemBase::itemIndex].mpc; \ _MPC_EDIT_ITEMS(N); \ EDIT_ITEM_FAST_N(float43, N, MSG_MPC_AMBIENT_XFER_COEFF_FAN_E, &editable.decimal, 0, 1, []{ \ thermalManager.temp_hotend[MenuItemBase::itemIndex].applyFanAdjustment(editable.decimal); \ diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 43bf31e0e7cb..ce46d3d43dac 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -1085,9 +1085,9 @@ volatile bool Temperature::raw_temps_ready = false; block_responsiveness = -log((t2 - asymp_temp) / (t1 - asymp_temp)) / (sample_distance * (sample_count >> 1)); mpc.ambient_xfer_coeff_fan0 = mpc.heater_power * (MPC_MAX) / 255 / (asymp_temp - ambient_temp); - mpc.fan255_adjustment = 0.0f; mpc.block_heat_capacity = mpc.ambient_xfer_coeff_fan0 / block_responsiveness; mpc.sensor_responsiveness = block_responsiveness / (1.0f - (ambient_temp - asymp_temp) * exp(-block_responsiveness * t1_time) / (t1 - asymp_temp)); + TERN_(MPC_INCLUDE_FAN, mpc.fan255_adjustment = 0.0f); hotend.modeled_block_temp = asymp_temp + (ambient_temp - asymp_temp) * exp(-block_responsiveness * (ms - heat_start_time) / 1000.0f); hotend.modeled_sensor_temp = current_temp; From 802fe519a310e94c7658d7c60deffd240770565b Mon Sep 17 00:00:00 2001 From: Bob Kuhn Date: Sun, 16 Apr 2023 18:35:13 -0500 Subject: [PATCH 024/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20laser=20with=20no?= =?UTF-8?q?=20PWM=20compile=20(#25290)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/spindle_laser.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/feature/spindle_laser.h b/Marlin/src/feature/spindle_laser.h index a49e5611a4a9..9750d4807fc1 100644 --- a/Marlin/src/feature/spindle_laser.h +++ b/Marlin/src/feature/spindle_laser.h @@ -281,7 +281,7 @@ class SpindleLaser { set_enabled(state); if (state) { if (!menuPower) menuPower = cpwr_to_upwr(SPEED_POWER_STARTUP); - power = upower_to_ocr(menuPower); + power = TERN(SPINDLE_LASER_USE_PWM, upower_to_ocr(menuPower), 255); apply_power(power); } else apply_power(0); From 09ddf9c6ef9708baf42c3145332b2921e75f8d73 Mon Sep 17 00:00:00 2001 From: "Alexey D. Filimonov" Date: Mon, 17 Apr 2023 02:38:12 +0300 Subject: [PATCH 025/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20Spindle/Laser=20EN?= =?UTF-8?q?A=20pin=20test=20(#25622)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/spindle_laser.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/feature/spindle_laser.h b/Marlin/src/feature/spindle_laser.h index 9750d4807fc1..5cbc20866c50 100644 --- a/Marlin/src/feature/spindle_laser.h +++ b/Marlin/src/feature/spindle_laser.h @@ -210,7 +210,7 @@ class SpindleLaser { enable = false; apply_power(0); } - #if SPINDLE_LASER_ENA_PIN + #if PIN_EXISTS(SPINDLE_LASER_ENA) WRITE(SPINDLE_LASER_ENA_PIN, enable ? SPINDLE_LASER_ACTIVE_STATE : !SPINDLE_LASER_ACTIVE_STATE); #endif enable_state = enable; From ace9855d6fe4fc956c1c3ad584ca07e25216376b Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 16 Apr 2023 19:11:56 -0500 Subject: [PATCH 026/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Min?= =?UTF-8?q?or=20SpindleLaser::set=5Fenabled=20tweak?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/spindle_laser.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/Marlin/src/feature/spindle_laser.h b/Marlin/src/feature/spindle_laser.h index 5cbc20866c50..8908ae6df524 100644 --- a/Marlin/src/feature/spindle_laser.h +++ b/Marlin/src/feature/spindle_laser.h @@ -201,8 +201,6 @@ class SpindleLaser { apply_power(enable ? TERN(SPINDLE_LASER_USE_PWM, (power ?: (unitPower ? upower_to_ocr(cpwr_to_upwr(SPEED_POWER_STARTUP)) : 0)), 255) : 0); break; case CUTTER_MODE_CONTINUOUS: - TERN_(LASER_FEATURE, set_inline_enabled(enable)); - break; case CUTTER_MODE_DYNAMIC: TERN_(LASER_FEATURE, set_inline_enabled(enable)); break; From b39b5bbbc92d3a15c53ec5027d8b2e05b34ea6eb Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 17 Apr 2023 00:20:56 +0000 Subject: [PATCH 027/427] [cron] Bump distribution date (2023-04-17) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index b345bef51415..ea6679cba9c7 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-16" +//#define STRING_DISTRIBUTION_DATE "2023-04-17" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index bf22ae4ded5d..bdfac93020f4 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-16" + #define STRING_DISTRIBUTION_DATE "2023-04-17" #endif /** From ff44663f5fe4e9ddc1cb2ddd8c2a6c5994e3d143 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Tue, 18 Apr 2023 07:51:25 +1200 Subject: [PATCH 028/427] =?UTF-8?q?=F0=9F=94=A8=20Fix,=20clean=20up=20STM3?= =?UTF-8?q?2F1=20envs=20(#25697)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- ini/stm32f1.ini | 143 +++++++++++++++++++++--------------------------- 1 file changed, 62 insertions(+), 81 deletions(-) diff --git a/ini/stm32f1.ini b/ini/stm32f1.ini index 783d05fab4e6..9aaa39ea20de 100644 --- a/ini/stm32f1.ini +++ b/ini/stm32f1.ini @@ -134,16 +134,6 @@ monitor_speed = 115200 debug_tool = jlink upload_protocol = jlink -# -# Trigorilla V0.0.6 (GD32F103) -# modified version of env:STM32F103RE_creality -# -[env:trigorilla_v006] -extends = STM32F103Rx_creality -board = genericSTM32F103RE -board_build.offset = 0x8000 -board_upload.offset_address = 0x08008000 - # # Creality (STM32F103Rx) # With custom upload to SD via Marlin with binary protocol. @@ -176,10 +166,19 @@ board = genericSTM32F103RE # Creality 512K (STM32F103RE) for new 64KiB bootloader (CR-10 Smart Pro printer) # [env:STM32F103RE_creality_smartPro] -extends = STM32F103Rx_creality +extends = env:STM32F103RE_creality board_build.offset = 0x10000 board_upload.offset_address = 0x08010000 +# +# Trigorilla V0.0.6 (GD32F103) +# modified version of env:STM32F103RE_creality +# +[env:trigorilla_v006] +extends = env:STM32F103RE_creality +board_build.offset = 0x8000 +board_upload.offset_address = 0x08008000 + # # Creality 256K (STM32F103RC) # @@ -230,54 +229,7 @@ platform_packages = ${stm_flash_drive.platform_packages} build_flags = ${env:STM32F103RE_btt.build_flags} -DUSE_USB_FS -DUSBD_IRQ_PRIO=5 -DUSBD_IRQ_SUBPRIO=6 -DUSBD_USE_CDC_MSC -build_unflags = ${stm32_variant.build_unflags} -DUSBD_USE_CDC - -# -# FLSUN QQS Pro (STM32F103VET6) -# board Hispeedv1 -# -[env:flsun_hispeedv1] -extends = stm32_variant -board = genericSTM32F103VE -board_build.variant = MARLIN_F103Vx -board_build.encrypt_mks = Robin_mini.bin -board_build.offset = 0x7000 -board_upload.offset_address = 0x08007000 -build_flags = ${stm32_variant.build_flags} - -DMCU_STM32F103VE -DSS_TIMER=4 -DENABLE_HWSERIAL3 - -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2 -build_unflags = ${stm32_variant.build_unflags} - -DUSBCON -DUSBD_USE_CDC - -[mks_robin_nano_v1v2_common] -extends = stm32_variant -board = genericSTM32F103VE -board_build.variant = MARLIN_F103Vx -board_build.encrypt_mks = Robin_nano35.bin -board_build.offset = 0x7000 -board_upload.offset_address = 0x08007000 -debug_tool = stlink -upload_protocol = stlink - -# -# MKS Robin Nano V1.2 and V2 -# -[env:mks_robin_nano_v1v2] -extends = mks_robin_nano_v1v2_common -build_flags = ${stm32_variant.build_flags} - -DMCU_STM32F103VE -DSS_TIMER=4 -DENABLE_HWSERIAL3 - -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2 -build_unflags = ${stm32_variant.build_unflags} - -DUSBCON -DUSBD_USE_CDC - -# -# MKS/ZNP Robin Nano V1.2 and V2 with native USB modification -# -[env:mks_robin_nano_v1v2_usbmod] -extends = mks_robin_nano_v1v2_common -build_flags = ${common_stm32.build_flags} - -DMCU_STM32F103VE -DSS_TIMER=4 - -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2 +build_unflags = ${env:STM32F103RE_btt.build_unflags} -DUSBD_USE_CDC # # Mingda MPX_ARM_MINI @@ -315,17 +267,63 @@ board_upload.offset_address = 0x08005000 build_flags = ${stm32_variant.build_flags} -DSS_TIMER=4 # -# MKS Robin Mini (STM32F103VET6) +# (STM32F103VE_robin) # -[env:mks_robin_mini] +[STM32F103VE_robin] extends = stm32_variant board = genericSTM32F103VE board_build.variant = MARLIN_F103Vx -board_build.encrypt_mks = Robin_mini.bin board_build.offset = 0x7000 board_upload.offset_address = 0x08007000 -build_flags = ${stm32_variant.build_flags} - -DMCU_STM32F103VE -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2 +build_flags = ${stm32_variant.build_flags} -DMCU_STM32F103VE -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2 -DSS_TIMER=4 + +[mks_robin_nano_v1v2_common] +extends = STM32F103VE_robin +board_build.encrypt_mks = Robin_nano35.bin +debug_tool = stlink +upload_protocol = stlink + +# +# MKS/ZNP Robin Nano V1.2 and V2 with native USB modification +# +[env:mks_robin_nano_v1v2_usbmod] +extends = mks_robin_nano_v1v2_common + +# +# MKS Robin Nano V1.2 and V2 +# +[env:mks_robin_nano_v1v2] +extends = mks_robin_nano_v1v2_common +build_flags = ${mks_robin_nano_v1v2_common.build_flags} -DENABLE_HWSERIAL3 +build_unflags = ${mks_robin_nano_v1v2_common.build_unflags} -DUSBCON -DUSBD_USE_CDC + +# +# MKS Robin Mini (STM32F103VET6) +# +[env:mks_robin_mini] +extends = STM32F103VE_robin +board_build.encrypt_mks = Robin_mini.bin +build_unflags = ${STM32F103VE_robin.build_unflags} -DSS_TIMER=4 + +# +# MKS Robin E3p (STM32F103VET6) +# - LVGL UI +# +[env:mks_robin_e3p] +extends = STM32F103VE_robin +board_build.encrypt_mks = Robin_e3p.bin +debug_tool = jlink +upload_protocol = jlink + +# +# FLSUN QQS Pro (STM32F103VET6) +# Hispeedv1 Robin mini variant +# +[env:flsun_hispeedv1] +extends = STM32F103VE_robin +board_build.encrypt_mks = Robin_mini.bin +build_flags = ${STM32F103VE_robin.build_flags} -DENABLE_HWSERIAL3 +build_unflags = ${STM32F103VE_robin.build_unflags} -DUSBCON -DUSBD_USE_CDC # # MKS Robin Lite/Lite2 (STM32F103RCT6) @@ -352,23 +350,6 @@ board_build.encrypt_mks = mksLite3.bin extends = env:mks_robin board_build.encrypt_mks = Robin_pro.bin -# -# MKS Robin E3p (STM32F103VET6) -# - LVGL UI -# -[env:mks_robin_e3p] -extends = stm32_variant -board = genericSTM32F103VE -board_build.variant = MARLIN_F103Vx -board_build.encrypt_mks = Robin_e3p.bin -board_build.offset = 0x7000 -board_upload.offset_address = 0x08007000 -build_flags = ${stm32_variant.build_flags} - -DMCU_STM32F103VE -DSS_TIMER=4 - -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2 -debug_tool = jlink -upload_protocol = jlink - # # JGAurora A5S A1 (STM32F103ZET6) # From 4d8ab1c401170e345b11e971773a87d87272a82a Mon Sep 17 00:00:00 2001 From: tombrazier <68918209+tombrazier@users.noreply.github.com> Date: Mon, 17 Apr 2023 23:48:56 +0100 Subject: [PATCH 029/427] =?UTF-8?q?=F0=9F=90=9B=20Prevent=20Linear=20Advan?= =?UTF-8?q?ce=20stall=20(#25696)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/stepper.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 7bf50e557fcd..3cca0516ff3d 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -1578,7 +1578,7 @@ void Stepper::isr() { advance_isr(); nextAdvanceISR = la_interval; } - else if (nextAdvanceISR == LA_ADV_NEVER) // Start LA steps if necessary + else if (nextAdvanceISR > la_interval) // Start/accelerate LA steps if necessary nextAdvanceISR = la_interval; #endif @@ -2169,7 +2169,8 @@ hal_timer_t Stepper::calc_timer_interval(uint32_t step_rate) { #ifdef CPU_32_BIT // A fast processor can just do integer division - return step_rate ? uint32_t(STEPPER_TIMER_RATE) / step_rate : HAL_TIMER_TYPE_MAX; + constexpr uint32_t min_step_rate = uint32_t(STEPPER_TIMER_RATE) / HAL_TIMER_TYPE_MAX; + return step_rate > min_step_rate ? uint32_t(STEPPER_TIMER_RATE) / step_rate : HAL_TIMER_TYPE_MAX; #else From e6308f5d027d2e8ff633aaf035787a1be9da0d58 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 17 Apr 2023 18:10:07 -0500 Subject: [PATCH 030/427] =?UTF-8?q?=F0=9F=A9=B9=20const=5Ffloat=5Ft=20=3D>?= =?UTF-8?q?=20float?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/stepper.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 3cca0516ff3d..9728a908963e 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -3198,9 +3198,9 @@ void Stepper::init() { else if (zeta >= 1.0f) factor2 = 0.0f; else { factor2 = 64.44056192 + -99.02008832 * zeta; - const_float_t zeta2 = zeta * zeta; + const float zeta2 = sq(zeta); factor2 += -7.58095488 * zeta2; - const_float_t zeta3 = zeta2 * zeta; + const float zeta3 = zeta2 * zeta; factor2 += 43.073216 * zeta3; factor2 = floor(factor2); } From 364d8566b01ff7555c6075c857c1a727642e88ad Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Tue, 18 Apr 2023 00:25:20 +0000 Subject: [PATCH 031/427] [cron] Bump distribution date (2023-04-18) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index ea6679cba9c7..c6846adb4392 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-17" +//#define STRING_DISTRIBUTION_DATE "2023-04-18" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index bdfac93020f4..227470160007 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-17" + #define STRING_DISTRIBUTION_DATE "2023-04-18" #endif /** From c8c5ab22ce242b93632a7e2b9f855bbaf38b557f Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 17 Apr 2023 19:29:53 -0500 Subject: [PATCH 032/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Gat?= =?UTF-8?q?her=20Z=20clearances=20(#25701)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration.h | 8 +- Marlin/src/gcode/bedlevel/G35.cpp | 7 -- Marlin/src/gcode/bedlevel/abl/G29.cpp | 15 +--- Marlin/src/gcode/calibrate/G28.cpp | 81 ++++++++++--------- Marlin/src/inc/Conditionals_post.h | 14 ++-- Marlin/src/inc/SanityCheck.h | 10 ++- .../lcd/extui/mks_ui/draw_z_offset_wizard.cpp | 10 +-- Marlin/src/lcd/menu/menu_probe_offset.cpp | 14 ++-- Marlin/src/module/motion.cpp | 19 +++-- Marlin/src/module/motion.h | 10 ++- Marlin/src/module/probe.h | 29 +------ 11 files changed, 100 insertions(+), 117 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 9844b44e1048..19407b61581b 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1402,7 +1402,7 @@ * on the right, enable and set TOUCH_MI_DEPLOY_XPOS to the deploy position. * * Also requires: BABYSTEPPING, BABYSTEP_ZPROBE_OFFSET, Z_SAFE_HOMING, - * and a minimum Z_HOMING_HEIGHT of 10. + * and a minimum Z_CLEARANCE_FOR_HOMING of 10. */ //#define TOUCH_MI_PROBE #if ENABLED(TOUCH_MI_PROBE) @@ -1730,10 +1730,10 @@ */ //#define Z_IDLE_HEIGHT Z_HOME_POS -//#define Z_HOMING_HEIGHT 4 // (mm) Minimal Z height before homing (G28) for Z clearance above the bed, clamps, ... - // Be sure to have this much clearance over your Z_MAX_POS to prevent grinding. +//#define Z_CLEARANCE_FOR_HOMING 4 // (mm) Minimal Z height before homing (G28) for Z clearance above the bed, clamps, ... + // Be sure to have this much clearance over your Z_MAX_POS to prevent grinding. -//#define Z_AFTER_HOMING 10 // (mm) Height to move to after homing Z +//#define Z_AFTER_HOMING 10 // (mm) Height to move to after homing Z // Direction of endstops when homing; 1=MAX, -1=MIN // :[-1,1] diff --git a/Marlin/src/gcode/bedlevel/G35.cpp b/Marlin/src/gcode/bedlevel/G35.cpp index c1cef2b9870d..27c57cf62ebc 100644 --- a/Marlin/src/gcode/bedlevel/G35.cpp +++ b/Marlin/src/gcode/bedlevel/G35.cpp @@ -98,14 +98,7 @@ void GcodeSuite::G35() { // Probe all positions LOOP_L_N(i, G35_PROBE_COUNT) { - - // In BLTOUCH HS mode, the probe travels in a deployed state. - // Users of G35 might have a badly misaligned bed, so raise Z by the - // length of the deployed pin (BLTOUCH stroke < 7mm) - - // Unsure if this is even required. The probe seems to lift correctly after probe done. const float z_probed_height = probe.probe_at_point(tramming_points[i], PROBE_PT_RAISE, 0, true); - if (isnan(z_probed_height)) { SERIAL_ECHOPGM("G35 failed at point ", i + 1, " ("); SERIAL_ECHOPGM_P((char *)pgm_read_ptr(&tramming_point_name[i])); diff --git a/Marlin/src/gcode/bedlevel/abl/G29.cpp b/Marlin/src/gcode/bedlevel/abl/G29.cpp index e334412054ac..dd325284af38 100644 --- a/Marlin/src/gcode/bedlevel/abl/G29.cpp +++ b/Marlin/src/gcode/bedlevel/abl/G29.cpp @@ -494,20 +494,13 @@ G29_TYPE GcodeSuite::G29() { #endif #if ENABLED(AUTO_BED_LEVELING_BILINEAR) - if (!abl.dryrun - && (abl.gridSpacing != bedlevel.grid_spacing || abl.probe_position_lf != bedlevel.grid_start) - ) { - // Reset grid to 0.0 or "not probed". (Also disables ABL) - reset_bed_level(); - - // Can't re-enable (on error) until the new grid is written - abl.reenable = false; + if (!abl.dryrun && (abl.gridSpacing != bedlevel.grid_spacing || abl.probe_position_lf != bedlevel.grid_start)) { + reset_bed_level(); // Reset grid to 0.0 or "not probed". (Also disables ABL) + abl.reenable = false; // Can't re-enable (on error) until the new grid is written } - // Pre-populate local Z values from the stored mesh TERN_(IS_KINEMATIC, COPY(abl.z_values, bedlevel.z_values)); - - #endif // AUTO_BED_LEVELING_BILINEAR + #endif } // !g29_in_progress diff --git a/Marlin/src/gcode/calibrate/G28.cpp b/Marlin/src/gcode/calibrate/G28.cpp index b5e7a1329549..89e0c8d8d4c5 100644 --- a/Marlin/src/gcode/calibrate/G28.cpp +++ b/Marlin/src/gcode/calibrate/G28.cpp @@ -399,49 +399,50 @@ void GcodeSuite::G28() { doU = home_all || homeU, doV = home_all || homeV, doW = home_all || homeW ); + #if !HAS_Y_AXIS + constexpr bool doY = false; + #endif + #if HAS_Z_AXIS + UNUSED(needZ); UNUSED(homeZZ); - #else - constexpr bool doZ = false; - #if !HAS_Y_AXIS - constexpr bool doY = false; - #endif - #endif - // Z may home first, e.g., when homing away from the bed - TERN_(HOME_Z_FIRST, if (doZ) homeaxis(Z_AXIS)); + // Z may home first, e.g., when homing away from the bed + TERN_(HOME_Z_FIRST, if (doZ) homeaxis(Z_AXIS)); - // 'R' to specify a specific raise. 'R0' indicates no raise, e.g., for recovery.resume - // When 'R0' is used, there should already be adequate clearance, e.g., from homing Z to max. - const bool seenR = parser.seenval('R'); + // 'R' to specify a specific raise. 'R0' indicates no raise, e.g., for recovery.resume + // When 'R0' is used, there should already be adequate clearance, e.g., from homing Z to max. + const bool seenR = parser.seenval('R'); - // Use raise given by 'R' or Z_HOMING_HEIGHT (above the probe trigger point) - float z_homing_height = seenR ? parser.value_linear_units() : Z_HOMING_HEIGHT; + // Use raise given by 'R' or Z_CLEARANCE_FOR_HOMING (above the probe trigger point) + float z_homing_height = seenR ? parser.value_linear_units() : Z_CLEARANCE_FOR_HOMING; - // Check for any lateral motion that might require clearance - const bool may_skate = seenR || NUM_AXIS_GANG(doX, || doY, || TERN0(Z_SAFE_HOMING, doZ), || doI, || doJ, || doK, || doU, || doV, || doW); + // Check for any lateral motion that might require clearance + const bool may_skate = seenR || NUM_AXIS_GANG(doX, || doY, || TERN0(Z_SAFE_HOMING, doZ), || doI, || doJ, || doK, || doU, || doV, || doW); - if (seenR && z_homing_height == 0) { - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("R0 = No Z raise"); - } - else { - bool with_probe = ENABLED(HOMING_Z_WITH_PROBE); - // Raise above the current Z (which should be synced in the planner) - // The "height" for Z is a coordinate. But if Z is not trusted/homed make it relative. - if (seenR || !TERN(HOME_AFTER_DEACTIVATE, axis_is_trusted, axis_was_homed)(Z_AXIS)) { - z_homing_height += current_position.z; - with_probe = false; + if (seenR && z_homing_height == 0) { + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("R0 = No Z raise"); } + else { + bool with_probe = ENABLED(HOMING_Z_WITH_PROBE); + // Raise above the current Z (which should be synced in the planner) + // The "height" for Z is a coordinate. But if Z is not trusted/homed make it relative. + if (seenR || !TERN(HOME_AFTER_DEACTIVATE, axis_is_trusted, axis_was_homed)(Z_AXIS)) { + z_homing_height += current_position.z; + with_probe = false; + } - if (may_skate) { - // Apply Z clearance before doing any lateral motion - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Raise Z before homing:"); - do_z_clearance(z_homing_height, with_probe); + if (may_skate) { + // Apply Z clearance before doing any lateral motion + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Raise Z before homing:"); + do_z_clearance(z_homing_height, with_probe); + } } - } - // Init BLTouch ahead of any lateral motion, even if not homing with the probe - TERN_(BLTOUCH, if (may_skate) bltouch.init()); + // Init BLTouch ahead of any lateral motion, even if not homing with the probe + TERN_(BLTOUCH, if (may_skate) bltouch.init()); + + #endif // HAS_Z_AXIS // Diagonal move first if both are homing TERN_(QUICK_HOME, if (doX && doY) quick_home_xy()); @@ -497,11 +498,14 @@ void GcodeSuite::G28() { TERN_(IMPROVE_HOMING_RELIABILITY, end_slow_homing(saved_motion_state)); #if ENABLED(FOAMCUTTER_XYUV) - // skip homing of unused Z axis for foamcutters + + // Skip homing of unused Z axis for foamcutters if (doZ) set_axis_is_at_home(Z_AXIS); - #else + + #elif HAS_Z_AXIS + // Home Z last if homing towards the bed - #if HAS_Z_AXIS && DISABLED(HOME_Z_FIRST) + #if DISABLED(HOME_Z_FIRST) if (doZ) { #if EITHER(Z_MULTI_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) stepper.set_all_z_lock(false); @@ -513,7 +517,7 @@ void GcodeSuite::G28() { #else homeaxis(Z_AXIS); #endif - probe.move_z_after_homing(); + do_move_after_z_homing(); } #endif @@ -525,7 +529,8 @@ void GcodeSuite::G28() { if (doV) homeaxis(V_AXIS), if (doW) homeaxis(W_AXIS) ); - #endif + + #endif // HAS_Z_AXIS sync_plan_position(); @@ -629,7 +634,7 @@ void GcodeSuite::G28() { report_current_position(); - if (ENABLED(NANODLP_Z_SYNC) && (doZ || ENABLED(NANODLP_ALL_AXIS))) + if (BOTH(NANODLP_Z_SYNC, NANODLP_ALL_AXIS) || TERN0(HAS_Z_AXIS, doZ)) SERIAL_ECHOLNPGM(STR_Z_MOVE_COMP); TERN_(FULL_REPORT_TO_HOST_FEATURE, set_and_report_grblstate(old_grblstate)); diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 4bbb43a2169d..c09f6684504e 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -3180,24 +3180,24 @@ #endif /** - * Z_HOMING_HEIGHT / Z_CLEARANCE_BETWEEN_PROBES + * Z_CLEARANCE_FOR_HOMING / Z_CLEARANCE_BETWEEN_PROBES */ -#ifndef Z_HOMING_HEIGHT +#ifndef Z_CLEARANCE_FOR_HOMING #ifdef Z_CLEARANCE_BETWEEN_PROBES - #define Z_HOMING_HEIGHT Z_CLEARANCE_BETWEEN_PROBES + #define Z_CLEARANCE_FOR_HOMING Z_CLEARANCE_BETWEEN_PROBES #else - #define Z_HOMING_HEIGHT 0 + #define Z_CLEARANCE_FOR_HOMING 0 #endif #endif #if PROBE_SELECTED #ifndef Z_CLEARANCE_BETWEEN_PROBES - #define Z_CLEARANCE_BETWEEN_PROBES Z_HOMING_HEIGHT + #define Z_CLEARANCE_BETWEEN_PROBES Z_CLEARANCE_FOR_HOMING #endif - #if Z_CLEARANCE_BETWEEN_PROBES > Z_HOMING_HEIGHT + #if Z_CLEARANCE_BETWEEN_PROBES > Z_CLEARANCE_FOR_HOMING #define Z_CLEARANCE_BETWEEN_MANUAL_PROBES Z_CLEARANCE_BETWEEN_PROBES #else - #define Z_CLEARANCE_BETWEEN_MANUAL_PROBES Z_HOMING_HEIGHT + #define Z_CLEARANCE_BETWEEN_MANUAL_PROBES Z_CLEARANCE_FOR_HOMING #endif #ifndef Z_CLEARANCE_MULTI_PROBE #define Z_CLEARANCE_MULTI_PROBE Z_CLEARANCE_BETWEEN_PROBES diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index fd58a9c54ea4..8a3e0a6cda21 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -214,9 +214,11 @@ #elif defined(PID_ADD_EXTRUSION_RATE) #error "PID_ADD_EXTRUSION_RATE is now PID_EXTRUSION_SCALING and is DISABLED by default." #elif defined(Z_RAISE_BEFORE_HOMING) - #error "Z_RAISE_BEFORE_HOMING is now Z_HOMING_HEIGHT." + #error "Z_RAISE_BEFORE_HOMING is now Z_CLEARANCE_FOR_HOMING." #elif defined(MIN_Z_HEIGHT_FOR_HOMING) - #error "MIN_Z_HEIGHT_FOR_HOMING is now Z_HOMING_HEIGHT." + #error "MIN_Z_HEIGHT_FOR_HOMING is now Z_CLEARANCE_FOR_HOMING." +#elif defined(Z_HOMING_HEIGHT) + #error "Z_HOMING_HEIGHT is now Z_CLEARANCE_FOR_HOMING." #elif defined(Z_RAISE_BEFORE_PROBING) || defined(Z_RAISE_AFTER_PROBING) #error "Z_RAISE_(BEFORE|AFTER)_PROBING are deprecated. Use Z_CLEARANCE_DEPLOY_PROBE and Z_AFTER_PROBING instead." #elif defined(Z_RAISE_PROBE_DEPLOY_STOW) || defined(Z_RAISE_BETWEEN_PROBINGS) @@ -1945,8 +1947,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #error "TOUCH_MI_PROBE requires TOUCH_MI_RETRACT_Z." #elif defined(Z_AFTER_PROBING) #error "TOUCH_MI_PROBE requires Z_AFTER_PROBING to be disabled." - #elif Z_HOMING_HEIGHT < 10 - #error "TOUCH_MI_PROBE requires Z_HOMING_HEIGHT >= 10." + #elif Z_CLEARANCE_FOR_HOMING < 10 + #error "TOUCH_MI_PROBE requires Z_CLEARANCE_FOR_HOMING >= 10." #elif DISABLED(BABYSTEP_ZPROBE_OFFSET) #error "TOUCH_MI_PROBE requires BABYSTEPPING with BABYSTEP_ZPROBE_OFFSET." #elif !HAS_RESUME_CONTINUE diff --git a/Marlin/src/lcd/extui/mks_ui/draw_z_offset_wizard.cpp b/Marlin/src/lcd/extui/mks_ui/draw_z_offset_wizard.cpp index dbe8577dc995..69e547a68ccb 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_z_offset_wizard.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_z_offset_wizard.cpp @@ -102,8 +102,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { current_position.z = z_offset_ref; // Set Z to z_offset_ref, as we can expect it is at probe height probe.offset.z = calculated_z_offset; sync_plan_position(); - // Raise Z as if it was homed - do_z_clearance(Z_POST_CLEARANCE); + do_z_post_clearance(); hal.watchdog_refresh(); draw_return_ui(); return; @@ -111,11 +110,12 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { probe.offset.z = z_offset_backup; SET_SOFT_ENDSTOP_LOOSE(false); TERN_(HAS_LEVELING, set_bed_leveling_enabled(mks_leveling_was_active)); + // On cancel the Z position needs correction #if HOMING_Z_WITH_PROBE && defined(PROBE_OFFSET_WIZARD_START_Z) - set_axis_never_homed(Z_AXIS); // On cancel the Z position needs correction + set_axis_never_homed(Z_AXIS); queue.inject_P(PSTR("G28Z")); - #else // Otherwise do a Z clearance move like after Homing - do_z_clearance(Z_POST_CLEARANCE); + #else + do_z_post_clearance(); #endif hal.watchdog_refresh(); draw_return_ui(); diff --git a/Marlin/src/lcd/menu/menu_probe_offset.cpp b/Marlin/src/lcd/menu/menu_probe_offset.cpp index 34172de4581a..62704cdedea6 100644 --- a/Marlin/src/lcd/menu/menu_probe_offset.cpp +++ b/Marlin/src/lcd/menu/menu_probe_offset.cpp @@ -44,10 +44,6 @@ void _goto_manual_move_z(const_float_t); // Global storage float z_offset_backup, calculated_z_offset, z_offset_ref; -inline void z_clearance_move() { - do_z_clearance(Z_POST_CLEARANCE); -} - void set_offset_and_go_back(const_float_t z) { probe.offset.z = z; SET_SOFT_ENDSTOP_LOOSE(false); @@ -75,17 +71,17 @@ void probe_offset_wizard_menu() { set_offset_and_go_back(calculated_z_offset); current_position.z = z_offset_ref; // Set Z to z_offset_ref, as we can expect it is at probe height sync_plan_position(); - z_clearance_move(); // Raise Z as if it was homed + do_z_post_clearance(); }); ACTION_ITEM(MSG_BUTTON_CANCEL, []{ set_offset_and_go_back(z_offset_backup); - // If wizard-homing was done by probe with PROBE_OFFSET_WIZARD_START_Z + // On cancel the Z position needs correction #if HOMING_Z_WITH_PROBE && defined(PROBE_OFFSET_WIZARD_START_Z) - set_axis_never_homed(Z_AXIS); // On cancel the Z position needs correction + set_axis_never_homed(Z_AXIS); queue.inject(F("G28Z")); - #else // Otherwise do a Z clearance move like after Homing - z_clearance_move(); + #else + do_z_post_clearance(); #endif }); diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index 219f219e5976..6917bbc42a56 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -38,6 +38,10 @@ #include "../lcd/marlinui.h" #endif +#if ALL(DWIN_LCD_PROUI, INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) + #include "../lcd/e3v2/proui/dwin.h" +#endif + #if ENABLED(POLAR) #include "polar.h" #endif @@ -795,6 +799,14 @@ void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s/*=0.0*/) { if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("do_z_clearance_by(", zclear, ")"); do_z_clearance(current_position.z + zclear, false); } + void do_move_after_z_homing() { + DEBUG_SECTION(mzah, "do_move_after_z_homing", DEBUGGING(LEVELING)); + #if defined(Z_AFTER_HOMING) || ALL(DWIN_LCD_PROUI, INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) + do_z_clearance(Z_POST_CLEARANCE, true, true); + #elif ENABLED(USE_PROBE_FOR_Z_HOMING) + probe.move_z_after_probing(); + #endif + } #endif // @@ -803,13 +815,10 @@ void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s/*=0.0*/) { // static float saved_feedrate_mm_s; static int16_t saved_feedrate_percentage; -void remember_feedrate_and_scaling() { - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("remember_feedrate_and_scaling: fr=", feedrate_mm_s, " ", feedrate_percentage, "%"); +void remember_feedrate_scaling_off() { + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("remember_feedrate_scaling_off: fr=", feedrate_mm_s, " ", feedrate_percentage, "%"); saved_feedrate_mm_s = feedrate_mm_s; saved_feedrate_percentage = feedrate_percentage; -} -void remember_feedrate_scaling_off() { - remember_feedrate_and_scaling(); feedrate_percentage = 100; } void restore_feedrate_and_scaling() { diff --git a/Marlin/src/module/motion.h b/Marlin/src/module/motion.h index c93b1ef205e2..4cd4641e3dbc 100644 --- a/Marlin/src/module/motion.h +++ b/Marlin/src/module/motion.h @@ -398,13 +398,21 @@ void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s=0.0f); FORCE_INLINE void do_blocking_move_to_xy_z(const xyze_pos_t &raw, const_float_t z, const_feedRate_t fr_mm_s=0.0f) { do_blocking_move_to_xy_z(xy_pos_t(raw), z, fr_mm_s); } #endif -void remember_feedrate_and_scaling(); void remember_feedrate_scaling_off(); void restore_feedrate_and_scaling(); #if HAS_Z_AXIS + #if ALL(DWIN_LCD_PROUI, INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) + #define Z_POST_CLEARANCE HMI_data.z_after_homing + #elif defined(Z_AFTER_HOMING) + #define Z_POST_CLEARANCE Z_AFTER_HOMING + #else + #define Z_POST_CLEARANCE Z_CLEARANCE_FOR_HOMING + #endif void do_z_clearance(const_float_t zclear, const bool with_probe=true, const bool lower_allowed=false); void do_z_clearance_by(const_float_t zclear); + void do_move_after_z_homing(); + inline void do_z_post_clearance() { do_z_clearance(Z_POST_CLEARANCE); } #else inline void do_z_clearance(float, bool=true, bool=false) {} inline void do_z_clearance_by(float) {} diff --git a/Marlin/src/module/probe.h b/Marlin/src/module/probe.h index ebae929439a5..4c6f23390544 100644 --- a/Marlin/src/module/probe.h +++ b/Marlin/src/module/probe.h @@ -29,10 +29,6 @@ #include "motion.h" -#if ENABLED(DWIN_LCD_PROUI) - #include "../lcd/e3v2/proui/dwin.h" -#endif - #define DEBUG_OUT ENABLED(DEBUG_LEVELING_FEATURE) #include "../core/debug_out.h" @@ -51,16 +47,6 @@ #define PROBE_TRIGGERED() (READ(Z_MIN_PIN) == Z_MIN_ENDSTOP_HIT_STATE) #endif -#if ALL(DWIN_LCD_PROUI, INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) - #define Z_POST_CLEARANCE HMI_data.z_after_homing -#elif defined(Z_AFTER_HOMING) - #define Z_POST_CLEARANCE Z_AFTER_HOMING -#elif defined(Z_HOMING_HEIGHT) - #define Z_POST_CLEARANCE Z_HOMING_HEIGHT -#else - #define Z_POST_CLEARANCE 10 -#endif - // In BLTOUCH HS mode, the probe travels in a deployed state. #define Z_PROBE_SAFE_CLEARANCE SUM_TERN(BLTOUCH, Z_CLEARANCE_BETWEEN_PROBES, bltouch.z_extra_clearance()) @@ -190,19 +176,10 @@ class Probe { static void use_probing_tool(const bool=true) IF_DISABLED(DO_TOOLCHANGE_FOR_PROBING, {}); - #ifndef Z_AFTER_PROBING - #define Z_AFTER_PROBING 0 - #endif - static void move_z_after_probing(const float z=Z_AFTER_PROBING) { + static void move_z_after_probing() { DEBUG_SECTION(mzah, "move_z_after_probing", DEBUGGING(LEVELING)); - if (z != 0) do_z_clearance(z, true, true); // Move down still permitted - } - static void move_z_after_homing() { - DEBUG_SECTION(mzah, "move_z_after_homing", DEBUGGING(LEVELING)); - #if defined(Z_AFTER_HOMING) || ALL(DWIN_LCD_PROUI, INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) - move_z_after_probing(Z_POST_CLEARANCE); - #elif HAS_BED_PROBE - move_z_after_probing(); + #ifdef Z_AFTER_PROBING + do_z_clearance(Z_AFTER_PROBING, true, true); // Move down still permitted #endif } From 0c2ed8688dd387b56b318f6207ee1cc70811b5a5 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 17 Apr 2023 21:00:12 -0500 Subject: [PATCH 033/427] =?UTF-8?q?=F0=9F=A9=B9=20Z=20clearance=20followup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/calibrate/G28.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/gcode/calibrate/G28.cpp b/Marlin/src/gcode/calibrate/G28.cpp index 89e0c8d8d4c5..782761ee14b1 100644 --- a/Marlin/src/gcode/calibrate/G28.cpp +++ b/Marlin/src/gcode/calibrate/G28.cpp @@ -634,7 +634,7 @@ void GcodeSuite::G28() { report_current_position(); - if (BOTH(NANODLP_Z_SYNC, NANODLP_ALL_AXIS) || TERN0(HAS_Z_AXIS, doZ)) + if (ENABLED(NANODLP_Z_SYNC) && (ENABLED(NANODLP_ALL_AXIS) || TERN0(HAS_Z_AXIS, doZ))) SERIAL_ECHOLNPGM(STR_Z_MOVE_COMP); TERN_(FULL_REPORT_TO_HOST_FEATURE, set_and_report_grblstate(old_grblstate)); From 158c4de4f6d5a91379226f00e6e9e0e7c153d22f Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Tue, 18 Apr 2023 10:40:13 +0200 Subject: [PATCH 034/427] =?UTF-8?q?=F0=9F=A9=B9=20Bail=20on=20'mc.zip'=20w?= =?UTF-8?q?rite=20error=20(#25695)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/gcode/eeprom/M500-M504.cpp | 2 +- Marlin/src/sd/SdBaseFile.cpp | 2 +- Marlin/src/sd/SdBaseFile.h | 2 +- Marlin/src/sd/SdFile.cpp | 6 +----- Marlin/src/sd/SdFile.h | 7 +------ buildroot/tests/STM32F103RE_creality | 2 +- 6 files changed, 6 insertions(+), 15 deletions(-) diff --git a/Marlin/src/gcode/eeprom/M500-M504.cpp b/Marlin/src/gcode/eeprom/M500-M504.cpp index 31da2c5adf84..c3962117e51f 100644 --- a/Marlin/src/gcode/eeprom/M500-M504.cpp +++ b/Marlin/src/gcode/eeprom/M500-M504.cpp @@ -73,7 +73,7 @@ void GcodeSuite::M502() { bool success = true; for (uint16_t i = 0; success && i < sizeof(mc_zip); ++i) { const uint8_t c = pgm_read_byte(&mc_zip[i]); - file.write(c); + success = (file.write(c) == 1); } success = file.close() && success; diff --git a/Marlin/src/sd/SdBaseFile.cpp b/Marlin/src/sd/SdBaseFile.cpp index 4f4a8e9fa992..5ee0db2b9e86 100644 --- a/Marlin/src/sd/SdBaseFile.cpp +++ b/Marlin/src/sd/SdBaseFile.cpp @@ -2169,7 +2169,7 @@ bool SdBaseFile::truncate(uint32_t length) { * include write() is called before a file has been opened, write is called * for a read-only file, device is full, a corrupt file system or an I/O error. */ -int16_t SdBaseFile::write(const void *buf, uint16_t nbyte) { +int16_t SdBaseFile::write(const void *buf, const uint16_t nbyte) { #if ENABLED(SDCARD_READONLY) writeError = true; return -1; #endif diff --git a/Marlin/src/sd/SdBaseFile.h b/Marlin/src/sd/SdBaseFile.h index 046c2447cb7a..3ac23138b154 100644 --- a/Marlin/src/sd/SdBaseFile.h +++ b/Marlin/src/sd/SdBaseFile.h @@ -345,7 +345,7 @@ class SdBaseFile { * \return SdVolume that contains this file. */ SdVolume* volume() const { return vol_; } - int16_t write(const void *buf, uint16_t nbyte); + int16_t write(const void *buf, const uint16_t nbyte); private: friend class SdFat; // allow SdFat to set cwd_ diff --git a/Marlin/src/sd/SdFile.cpp b/Marlin/src/sd/SdFile.cpp index ac5f6f923414..a1dd79372747 100644 --- a/Marlin/src/sd/SdFile.cpp +++ b/Marlin/src/sd/SdFile.cpp @@ -67,11 +67,7 @@ int16_t SdFile::write(const void * const buf, const uint16_t nbyte) { return SdB * \param[in] b the byte to be written. * Use writeError to check for errors. */ -#if ARDUINO >= 100 - size_t SdFile::write(const uint8_t b) { return SdBaseFile::write(&b, 1); } -#else - void SdFile::write(const uint8_t b) { SdBaseFile::write(&b, 1); } -#endif +size_t SdFile::write(const uint8_t b) { return SdBaseFile::write(&b, 1); } /** * Write a string to a file. Used by the Arduino Print class. diff --git a/Marlin/src/sd/SdFile.h b/Marlin/src/sd/SdFile.h index b075239ebba7..cdce1ffe12e3 100644 --- a/Marlin/src/sd/SdFile.h +++ b/Marlin/src/sd/SdFile.h @@ -42,12 +42,7 @@ class SdFile : public SdBaseFile { public: SdFile() {} SdFile(const char * const name, const uint8_t oflag); - #if ARDUINO >= 100 - size_t write(const uint8_t b); - #else - void write(const uint8_t b); - #endif - + size_t write(const uint8_t b); int16_t write(const void * const buf, const uint16_t nbyte); void write(const char * const str); void write_P(PGM_P str); diff --git a/buildroot/tests/STM32F103RE_creality b/buildroot/tests/STM32F103RE_creality index 66775597209a..d407dc430153 100755 --- a/buildroot/tests/STM32F103RE_creality +++ b/buildroot/tests/STM32F103RE_creality @@ -19,7 +19,7 @@ opt_enable DWIN_CREALITY_LCD_JYERSUI AUTO_BED_LEVELING_BILINEAR PROBE_MANUALLY exec_test $1 $2 "Ender-3 v2 with JyersUI" "$3" use_example_configs "Creality/Ender-3 S1/STM32F1" -opt_disable DWIN_CREALITY_LCD Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN AUTO_BED_LEVELING_BILINEAR CONFIGURATION_EMBEDDING CANCEL_OBJECTS FWRETRACT +opt_disable DWIN_CREALITY_LCD Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN AUTO_BED_LEVELING_BILINEAR CANCEL_OBJECTS FWRETRACT opt_enable DWIN_LCD_PROUI INDIVIDUAL_AXIS_HOMING_SUBMENU SET_PROGRESS_MANUALLY SET_PROGRESS_PERCENT STATUS_MESSAGE_SCROLLING \ SOUND_MENU_ITEM PRINTCOUNTER NOZZLE_PARK_FEATURE ADVANCED_PAUSE_FEATURE FILAMENT_RUNOUT_SENSOR \ BLTOUCH Z_SAFE_HOMING AUTO_BED_LEVELING_UBL MESH_EDIT_MENU \ From 5e2e00306e034c9bb0ad5180e1c7b138f6616f5e Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Wed, 19 Apr 2023 00:22:13 +0000 Subject: [PATCH 035/427] [cron] Bump distribution date (2023-04-19) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index c6846adb4392..e1ea5a7d53c1 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-18" +//#define STRING_DISTRIBUTION_DATE "2023-04-19" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 227470160007..38c87f0d1a24 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-18" + #define STRING_DISTRIBUTION_DATE "2023-04-19" #endif /** From 19b4ae862b4db32f94f3ff004b5e5e3116502e3f Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Wed, 19 Apr 2023 12:50:11 +1200 Subject: [PATCH 036/427] =?UTF-8?q?=F0=9F=A9=B9=20Correctly=20add=20JSON?= =?UTF-8?q?=20to=20mc.zip=20(#25706)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buildroot/share/PlatformIO/scripts/signature.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/buildroot/share/PlatformIO/scripts/signature.py b/buildroot/share/PlatformIO/scripts/signature.py index 0da02f837b26..84312da01bd9 100644 --- a/buildroot/share/PlatformIO/scripts/signature.py +++ b/buildroot/share/PlatformIO/scripts/signature.py @@ -39,9 +39,9 @@ def get_file_sha256sum(filepath): # Compress a JSON file into a zip file # import zipfile -def compress_file(filepath, outpath): +def compress_file(filepath, storedname, outpath): with zipfile.ZipFile(outpath, 'w', compression=zipfile.ZIP_BZIP2, compresslevel=9) as zipf: - zipf.write(filepath, compress_type=zipfile.ZIP_BZIP2, compresslevel=9) + zipf.write(filepath, arcname=storedname, compress_type=zipfile.ZIP_BZIP2, compresslevel=9) # # Compute the build signature. The idea is to extract all defines in the configuration headers @@ -56,14 +56,13 @@ def compute_build_signature(env): files_to_keep = [ 'Marlin/Configuration.h', 'Marlin/Configuration_adv.h' ] build_path = Path(env['PROJECT_BUILD_DIR'], env['PIOENV']) - build_path_relative = Path('.pio', 'build', env['PIOENV']) # Check if we can skip processing hashes = '' for header in files_to_keep: hashes += get_file_sha256sum(header)[0:10] - marlin_json = build_path_relative / 'marlin_config.json' + marlin_json = build_path / 'marlin_config.json' marlin_zip = build_path / 'mc.zip' # Read existing config file @@ -72,7 +71,7 @@ def compute_build_signature(env): conf = json.load(infile) if conf['__INITIAL_HASH'] == hashes: # Same configuration, skip recomputing the building signature - compress_file(marlin_json, marlin_zip) + compress_file(marlin_json, 'marlin_config.json', marlin_zip) return except: pass @@ -256,7 +255,7 @@ def tryint(key): return # Compress the JSON file as much as we can - compress_file(marlin_json, marlin_zip) + compress_file(marlin_json, 'marlin_config.json', marlin_zip) # Generate a C source file for storing this array with open('Marlin/src/mczip.h','wb') as result_file: From fad1dcefbcd300128b474783f1183ea8a6d18496 Mon Sep 17 00:00:00 2001 From: Jay Robson <45777442+jsrobson10@users.noreply.github.com> Date: Thu, 20 Apr 2023 06:58:42 +1000 Subject: [PATCH 037/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20G38=20with=20Z,=20?= =?UTF-8?q?support=209=20axes=20(#25691)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/inc/Conditionals_post.h | 6 +++--- Marlin/src/module/endstops.cpp | 14 +++++--------- 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index c09f6684504e..96b7313f29d2 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -341,21 +341,21 @@ #ifdef MANUAL_U_HOME_POS #define U_HOME_POS MANUAL_U_HOME_POS #else - #define U_HOME_POS (U_HOME_DIR < 0 ? U_MIN_POS : U_MAX_POS) + #define U_HOME_POS TERN(U_HOME_TO_MIN, U_MIN_POS, U_MAX_POS) #endif #endif #if HAS_V_AXIS #ifdef MANUAL_V_HOME_POS #define V_HOME_POS MANUAL_V_HOME_POS #else - #define V_HOME_POS (V_HOME_DIR < 0 ? V_MIN_POS : V_MAX_POS) + #define V_HOME_POS TERN(V_HOME_TO_MIN, V_MIN_POS, V_MAX_POS) #endif #endif #if HAS_W_AXIS #ifdef MANUAL_W_HOME_POS #define W_HOME_POS MANUAL_W_HOME_POS #else - #define W_HOME_POS (W_HOME_DIR < 0 ? W_MIN_POS : W_MAX_POS) + #define W_HOME_POS TERN(W_HOME_TO_MIN, W_MIN_POS, W_MAX_POS) #endif #endif diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index 6719925f15fa..ccad00062e2a 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -913,17 +913,13 @@ void Endstops::update() { #endif #if HAS_G38_PROBE // TODO (DerAndere): Add support for HAS_I_AXIS - #define _G38_OPEN_STATE TERN(G38_PROBE_AWAY, (G38_move >= 4), LOW) // For G38 moves check the probe's pin for ALL movement - if (G38_move && TEST_ENDSTOP(_ENDSTOP(Z, TERN(USES_Z_MIN_PROBE_PIN, MIN_PROBE, MIN))) != _G38_OPEN_STATE) { - if (stepper.axis_is_moving(X_AXIS)) { _ENDSTOP_HIT(X, TERN(X_HOME_TO_MIN, MIN, MAX)); planner.endstop_triggered(X_AXIS); } - #if HAS_Y_AXIS - else if (stepper.axis_is_moving(Y_AXIS)) { _ENDSTOP_HIT(Y, TERN(Y_HOME_TO_MIN, MIN, MAX)); planner.endstop_triggered(Y_AXIS); } - #endif - #if HAS_Z_AXIS - else if (stepper.axis_is_moving(Z_AXIS)) { _ENDSTOP_HIT(Z, TERN(Z_HOME_TO_MIN, MIN, MAX)); planner.endstop_triggered(Z_AXIS); } - #endif + if (G38_move && TEST_ENDSTOP(_ENDSTOP(Z, TERN(USES_Z_MIN_PROBE_PIN, MIN_PROBE, MIN))) == TERN1(G38_PROBE_AWAY, (G38_move < 4))) { G38_did_trigger = true; + #define _G38_SET(Q) | (stepper.axis_is_moving(_AXIS(Q)) << _AXIS(Q)) + #define _G38_RESP(Q) if (moving[_AXIS(Q)]) { _ENDSTOP_HIT(Q, ENDSTOP); planner.endstop_triggered(_AXIS(Q)); } + const Flags moving = { value_t(NUM_AXES)(0 MAIN_AXIS_MAP(_G38_SET)) }; + MAIN_AXIS_MAP(_G38_RESP); } #endif From 4ac9cfba4f44235047e95d3dd64579577262d4fa Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Wed, 19 Apr 2023 14:53:11 -0700 Subject: [PATCH 038/427] =?UTF-8?q?=F0=9F=94=A7=20Check=20renamed=20LIN=5F?= =?UTF-8?q?ADVANCE=5FK=20(#25710)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/SanityCheck.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 8a3e0a6cda21..f5d0c785ebed 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -656,6 +656,8 @@ #error "USE_M73_REMAINING_TIME is now SET_REMAINING_TIME." #elif defined(SHOW_SD_PERCENT) #error "SHOW_SD_PERCENT is now SHOW_PROGRESS_PERCENT." +#elif defined(LIN_ADVANCE_K) + #error "LIN_ADVANCE_K is now ADVANCE_K." #elif defined(EXTRA_LIN_ADVANCE_K) #error "EXTRA_LIN_ADVANCE_K is now ADVANCE_K_EXTRA." #elif defined(POLAR_SEGMENTS_PER_SECOND) || defined(DELTA_SEGMENTS_PER_SECOND) || defined(SCARA_SEGMENTS_PER_SECOND) || defined(TPARA_SEGMENTS_PER_SECOND) From c087ad04d3fb95fff1ae032d4f395e4fa33e31ed Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 20 Apr 2023 00:20:18 +0000 Subject: [PATCH 039/427] [cron] Bump distribution date (2023-04-20) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index e1ea5a7d53c1..c8035164900f 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-19" +//#define STRING_DISTRIBUTION_DATE "2023-04-20" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 38c87f0d1a24..ed0440a7db89 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-19" + #define STRING_DISTRIBUTION_DATE "2023-04-20" #endif /** From de7726ca019461d029f9fe2a14a85b8ecf8723fe Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Wed, 19 Apr 2023 17:21:53 -0700 Subject: [PATCH 040/427] =?UTF-8?q?=F0=9F=9A=B8=20Permit=20G38=20with=20Co?= =?UTF-8?q?re=20(#25713)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/endstops.cpp | 7 +++---- Marlin/src/module/endstops.h | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index ccad00062e2a..02af062eca68 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -517,8 +517,7 @@ void Endstops::update() { #define UPDATE_ENDSTOP_BIT(AXIS, MINMAX) SET_BIT_TO(live_state, _ENDSTOP(AXIS, MINMAX), (READ_ENDSTOP(_ENDSTOP_PIN(AXIS, MINMAX)) == _ENDSTOP_HIT_STATE(AXIS, MINMAX))) #define COPY_LIVE_STATE(SRC_BIT, DST_BIT) SET_BIT_TO(live_state, DST_BIT, TEST(live_state, SRC_BIT)) - #if ENABLED(G38_PROBE_TARGET) && NONE(CORE_IS_XY, CORE_IS_XZ, MARKFORGED_XY, MARKFORGED_YX) - #define HAS_G38_PROBE 1 + #if ENABLED(G38_PROBE_TARGET) // For G38 moves check the probe's pin for ALL movement if (G38_move) UPDATE_ENDSTOP_BIT(Z, TERN(USES_Z_MIN_PROBE_PIN, MIN_PROBE, MIN)); #endif @@ -912,9 +911,9 @@ void Endstops::update() { #define PROCESS_ENDSTOP_Z(MINMAX) PROCESS_DUAL_ENDSTOP(Z, MINMAX) #endif - #if HAS_G38_PROBE // TODO (DerAndere): Add support for HAS_I_AXIS + #if ENABLED(G38_PROBE_TARGET) // For G38 moves check the probe's pin for ALL movement - if (G38_move && TEST_ENDSTOP(_ENDSTOP(Z, TERN(USES_Z_MIN_PROBE_PIN, MIN_PROBE, MIN))) == TERN1(G38_PROBE_AWAY, (G38_move < 4))) { + if (G38_move && TEST_ENDSTOP(Z_MIN_PROBE) == TERN1(G38_PROBE_AWAY, (G38_move < 4))) { G38_did_trigger = true; #define _G38_SET(Q) | (stepper.axis_is_moving(_AXIS(Q)) << _AXIS(Q)) #define _G38_RESP(Q) if (moving[_AXIS(Q)]) { _ENDSTOP_HIT(Q, ENDSTOP); planner.endstop_triggered(_AXIS(Q)); } diff --git a/Marlin/src/module/endstops.h b/Marlin/src/module/endstops.h index 76c8d454d7b8..e0c0de39a176 100644 --- a/Marlin/src/module/endstops.h +++ b/Marlin/src/module/endstops.h @@ -96,7 +96,7 @@ enum EndstopEnum : char { #endif #endif #if HAS_Z_MIN || HAS_Z_MAX || HOMING_Z_WITH_PROBE - , Z_ENDSTOP = TERN(Z_HOME_TO_MAX, Z_MAX, TERN(HOMING_Z_WITH_PROBE, Z_MIN_PROBE, Z_MIN)) + , Z_ENDSTOP = TERN(HOMING_Z_WITH_PROBE, Z_MIN_PROBE, TERN(Z_HOME_TO_MAX, Z_MAX, Z_MIN)) #endif #if HAS_I_MIN || HAS_I_MAX , I_ENDSTOP = TERN(I_HOME_TO_MAX, I_MAX, I_MIN) From 91cce2a7b39f1b64e37224fe6bef4ce00463fecf Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Wed, 19 Apr 2023 19:42:05 -0700 Subject: [PATCH 041/427] =?UTF-8?q?=E2=9C=A8=20Panowin=20Cutlass=20/=20Bar?= =?UTF-8?q?do=20(F1=20/=20Trinus)=20(#25663)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/AVR/pinsDebug.h | 1 - Marlin/src/HAL/AVR/pinsDebug_plus_70.h | 1 - Marlin/src/HAL/TEENSY35_36/pinsDebug.h | 2 +- Marlin/src/HAL/TEENSY40_41/pinsDebug.h | 2 +- Marlin/src/core/boards.h | 2 + Marlin/src/gcode/control/M42.cpp | 3 +- Marlin/src/inc/Conditionals_LCD.h | 7 +- Marlin/src/pins/pins.h | 4 + Marlin/src/pins/ramps/pins_KODAMA_BARDO.h | 34 +++++ Marlin/src/pins/ramps/pins_PANOWIN_CUTLASS.h | 133 +++++++++++++++++++ 10 files changed, 183 insertions(+), 6 deletions(-) create mode 100644 Marlin/src/pins/ramps/pins_KODAMA_BARDO.h create mode 100755 Marlin/src/pins/ramps/pins_PANOWIN_CUTLASS.h diff --git a/Marlin/src/HAL/AVR/pinsDebug.h b/Marlin/src/HAL/AVR/pinsDebug.h index b91bde182d35..3fe877cd0083 100644 --- a/Marlin/src/HAL/AVR/pinsDebug.h +++ b/Marlin/src/HAL/AVR/pinsDebug.h @@ -90,7 +90,6 @@ void PRINT_ARRAY_NAME(uint8_t x) { #define GET_ARRAY_IS_DIGITAL(x) pgm_read_byte(&pin_array[x].is_digital) - #if defined(__AVR_ATmega1284P__) // 1284 IDE extensions set this to the number of #undef NUM_DIGITAL_PINS // digital only pins while all other CPUs have it #define NUM_DIGITAL_PINS 32 // set to digital only + digital/analog diff --git a/Marlin/src/HAL/AVR/pinsDebug_plus_70.h b/Marlin/src/HAL/AVR/pinsDebug_plus_70.h index d9aa44c3cb15..fa479cfe8fd9 100644 --- a/Marlin/src/HAL/AVR/pinsDebug_plus_70.h +++ b/Marlin/src/HAL/AVR/pinsDebug_plus_70.h @@ -231,7 +231,6 @@ const uint8_t PROGMEM digital_pin_to_bit_mask_PGM_plus_70[] = { #define digitalPinToBitMask_plus_70(P) ( pgm_read_byte( digital_pin_to_bit_mask_PGM_plus_70 + (P) ) ) - const uint8_t PROGMEM digital_pin_to_timer_PGM_plus_70[] = { // TIMERS // ------------------------ diff --git a/Marlin/src/HAL/TEENSY35_36/pinsDebug.h b/Marlin/src/HAL/TEENSY35_36/pinsDebug.h index 7a2e1d6e592e..235c0e4a4871 100644 --- a/Marlin/src/HAL/TEENSY35_36/pinsDebug.h +++ b/Marlin/src/HAL/TEENSY35_36/pinsDebug.h @@ -77,7 +77,7 @@ void HAL_analog_pin_state(char buffer[], int8_t pin) { * Print a pin's PWM status. * Return true if it's currently a PWM pin. */ -bool HAL_pwm_status(int8_t pin) { +bool HAL_pwm_status(const int8_t pin) { char buffer[20]; // for the sprintf statements switch (pin) { FTM_CASE(0,0); diff --git a/Marlin/src/HAL/TEENSY40_41/pinsDebug.h b/Marlin/src/HAL/TEENSY40_41/pinsDebug.h index fc90f671cffe..c85a88c9ae67 100644 --- a/Marlin/src/HAL/TEENSY40_41/pinsDebug.h +++ b/Marlin/src/HAL/TEENSY40_41/pinsDebug.h @@ -136,7 +136,7 @@ void HAL_analog_pin_state(char buffer[], int8_t pin) { * Print a pin's PWM status. * Return true if it's currently a PWM pin. */ -bool HAL_pwm_status(int8_t pin) { +bool HAL_pwm_status(const int8_t pin) { char buffer[20]; // for the sprintf statements const struct pwm_pin_info_struct *info; diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index 147080542d81..2f2ac1664e10 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -118,6 +118,8 @@ #define BOARD_LONGER3D_LKx_PRO 1162 // Longer LKx PRO / Alfawise Uxx Pro (PRO version) #define BOARD_ZRIB_V53 1163 // Zonestar zrib V5.3 (Chinese RAMPS replica) #define BOARD_PXMALION_CORE_I3 1164 // Pxmalion Core I3 +#define BOARD_PANOWIN_CUTLASS 1165 // Panowin Cutlass (as found in the Panowin F1) +#define BOARD_KODAMA_BARDO 1166 // Kodama Bardo V1.x (as found in the Kodama Trinus) // // RAMBo and derivatives diff --git a/Marlin/src/gcode/control/M42.cpp b/Marlin/src/gcode/control/M42.cpp index 1b3a29d10056..55ece67de701 100644 --- a/Marlin/src/gcode/control/M42.cpp +++ b/Marlin/src/gcode/control/M42.cpp @@ -53,6 +53,7 @@ void protected_pin_err() { * I Flag to ignore Marlin's pin protection * * T Pin mode: 0=INPUT 1=OUTPUT 2=INPUT_PULLUP 3=INPUT_PULLDOWN + * 4=INPUT_ANALOG 5=OUTPUT_OPEN_DRAIN */ void GcodeSuite::M42() { const int pin_index = PARSED_PIN_INDEX('P', GET_PIN_MAP_INDEX(LED_PIN)); @@ -119,7 +120,7 @@ void GcodeSuite::M42() { } // An OUTPUT_OPEN_DRAIN should not be changed to normal OUTPUT (STM32) - // Use M42 Px M1/5 S0/1 to set the output type and then set value + // Use M42 Px T1/5 S0/1 to set the output type and then set value #ifndef OUTPUT_OPEN_DRAIN pinMode(pin, OUTPUT); #endif diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 60bc65356004..5cc1d07b095f 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -484,8 +484,13 @@ #endif #endif +// Serial Controllers require LCD_SERIAL_PORT +#if ANY(HAS_DGUS_LCD, MALYAN_LCD, ANYCUBIC_LCD_I3MEGA, ANYCUBIC_LCD_CHIRON, NEXTION_TFT) + #define LCD_NEEDS_SERIAL_PORT 1 +#endif + // Extensible UI serial touch screens. (See src/lcd/extui) -#if ANY(HAS_DGUS_LCD, MALYAN_LCD, TOUCH_UI_FTDI_EVE, ANYCUBIC_LCD_I3MEGA, ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_VYPER, NEXTION_TFT) +#if EITHER(LCD_NEEDS_SERIAL_PORT, TOUCH_UI_FTDI_EVE) #define IS_EXTUI 1 #define EXTENSIBLE_UI #endif diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index 124c940422c8..d3b3bbbd219d 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -205,6 +205,10 @@ #include "ramps/pins_LONGER3D_LKx_PRO.h" // ATmega2560 env:mega2560 #elif MB(PXMALION_CORE_I3) #include "ramps/pins_PXMALION_CORE_I3.h" // ATmega2560 env:mega2560 +#elif MB(PANOWIN_CUTLASS) + #include "ramps/pins_PANOWIN_CUTLASS.h" // ATmega2560 env:mega2560ext +#elif MB(KODAMA_BARDO) + #include "ramps/pins_KODAMA_BARDO.h" // ATmega2560 env:mega2560ext // // RAMBo and derivatives diff --git a/Marlin/src/pins/ramps/pins_KODAMA_BARDO.h b/Marlin/src/pins/ramps/pins_KODAMA_BARDO.h new file mode 100644 index 000000000000..12597c427057 --- /dev/null +++ b/Marlin/src/pins/ramps/pins_KODAMA_BARDO.h @@ -0,0 +1,34 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +/** + * Kodama Bardo V1.x as found in the Kodama Trinus (MEGA2560) board pin assignments + * + * Ported from https://github.com/sambuls/MarlinOnTrinus + * Board photo https://imgur.com/a/JbQH5SI + */ + +#define BOARD_NAME "Kodama Bardo V1.x" +#define DEFAULT_MACHINE_NAME "Kodama Trinus" + +#include "pins_PANOWIN_CUTLASS.h" diff --git a/Marlin/src/pins/ramps/pins_PANOWIN_CUTLASS.h b/Marlin/src/pins/ramps/pins_PANOWIN_CUTLASS.h new file mode 100755 index 000000000000..cc651cc8ef1f --- /dev/null +++ b/Marlin/src/pins/ramps/pins_PANOWIN_CUTLASS.h @@ -0,0 +1,133 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +/** + * Panowin V?.? as found in the Panowin F1 (MEGA2560) board pin assignments + * + * Ported from https://github.com/sambuls/MarlinOnTrinus + * Board photo https://imgur.com/a/xvol1Bo + */ + +#include "env_validate.h" + +#ifndef BOARD_NAME + #define BOARD_NAME "Panowin Cutlass" +#endif + +#ifndef DEFAULT_MACHINE_NAME + #define DEFAULT_MACHINE_NAME "Panowin F1" +#endif + +// +// Limit Switches +// +#define X_STOP_PIN 71 // G3 +#define Y_STOP_PIN 85 // H7 +#define Z_STOP_PIN 13 // B7 + +// +// Steppers +// +#define X_STEP_PIN 38 // D7 +#define X_DIR_PIN 83 +#define X_ENABLE_PIN 82 + +#define Y_STEP_PIN 37 +#define Y_DIR_PIN 40 +#define Y_ENABLE_PIN 41 + +#define Z_STEP_PIN 30 // C7 +#define Z_DIR_PIN 32 // C5 +#define Z_ENABLE_PIN 34 // C3 + +#define E0_STEP_PIN 42 +#define E0_DIR_PIN 43 +#define E0_ENABLE_PIN 44 + +// Microstepping mode pins +#define X_MS1_PIN 19 // D2 +#define X_MS2_PIN 18 // D3 +#define X_MS3_PIN 81 // D4 + +#define Y_MS1_PIN 19 // D2 +#define Y_MS2_PIN 18 // D3 +#define Y_MS3_PIN 81 // D4 + +#define Z_MS1_PIN 73 // J3 +#define Z_MS2_PIN 75 // J4 +#define Z_MS3_PIN 76 // J5 + +#define E0_MS1_PIN 46 // L3 +#define E0_MS2_PIN 47 // L2 +#define E0_MS3_PIN 45 // L4 + +// +// Temperature Sensors +// +#define TEMP_0_PIN 12 // Analog Input +#define TEMP_BED_PIN 14 // Analog Input + +// +// Heaters / Fans +// +#define HEATER_0_PIN 9 // H6 +#define HEATER_BED_PIN 8 +#define FAN0_PIN 62 // K0 +#define FAN_SOFT_PWM_REQUIRED + +// +// M3/M4/M5 - Spindle/Laser Control +// +#if HAS_CUTTER + #define SPINDLE_LASER_ENA_PIN 74 // J7 +#endif + +// +// Serial LCD +// +#if LCD_NEEDS_SERIAL_PORT && !defined(LCD_SERIAL_PORT) + #define LCD_SERIAL_PORT 2 // D16 H1 (TX2), D17 H0 (RX2) +#endif + +// +// SD Card +// +#define SD_DETECT_PIN 28 // A6 Onboard SD + +// +// Misc. Functions +// +#define BEEPER_PIN 24 // A2 + +// +// Onboard (bright!) RGB LED +// +#ifndef RGB_LED_R_PIN + #define RGB_LED_R_PIN 64 // K2 +#endif +#ifndef RGB_LED_G_PIN + #define RGB_LED_G_PIN 65 // K3 +#endif +#ifndef RGB_LED_B_PIN + #define RGB_LED_B_PIN 63 // K1 +#endif From 335ba32a0e71991402d3686162afc429130db4ec Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 20 Apr 2023 17:21:59 -0500 Subject: [PATCH 042/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20Core=20Kinematics?= =?UTF-8?q?=20BABYSTEP=5FXY?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/stepper.cpp | 38 +++++++++++++++++------------------ buildroot/tests/rambo | 2 +- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 9728a908963e..373d86970a8a 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -3627,7 +3627,7 @@ void Stepper::report_positions() { #if DISABLED(DELTA) - #define BABYSTEP_AXIS(AXIS, INV, DIR) do{ \ + #define BABYSTEP_AXIS(AXIS, DIR, INV) do{ \ const uint8_t old_dir = _READ_DIR(AXIS); \ _ENABLE_AXIS(AXIS); \ DIR_WAIT_BEFORE(); \ @@ -3646,12 +3646,12 @@ void Stepper::report_positions() { #if IS_CORE - #define BABYSTEP_CORE(A, B, INV, DIR, ALT) do{ \ + #define BABYSTEP_CORE(A, B, DIR, INV, ALT) do{ \ const xy_byte_t old_dir = { _READ_DIR(A), _READ_DIR(B) }; \ _ENABLE_AXIS(A); _ENABLE_AXIS(B); \ DIR_WAIT_BEFORE(); \ - _APPLY_DIR(A, INVERT_DIR(A, (DIR)^(INV)); \ - _APPLY_DIR(B, INVERT_DIR(B, (DIR)^(INV)^(ALT)); \ + _APPLY_DIR(A, INVERT_DIR(A, (DIR)^(INV))); \ + _APPLY_DIR(B, INVERT_DIR(B, (DIR)^(INV)^(ALT))); \ DIR_WAIT_AFTER(); \ _SAVE_START(); \ _APPLY_STEP(A, _STEP_STATE(A), true); \ @@ -3678,21 +3678,21 @@ void Stepper::report_positions() { case X_AXIS: #if CORE_IS_XY - BABYSTEP_CORE(X, Y, 0, direction, 0); + BABYSTEP_CORE(X, Y, direction, 0, 0); #elif CORE_IS_XZ - BABYSTEP_CORE(X, Z, 0, direction, 0); + BABYSTEP_CORE(X, Z, direction, 0, 0); #else - BABYSTEP_AXIS(X, 0, direction); + BABYSTEP_AXIS(X, direction, 0); #endif break; case Y_AXIS: #if CORE_IS_XY - BABYSTEP_CORE(X, Y, 1, !direction, (CORESIGN(1)>0)); + BABYSTEP_CORE(X, Y, !direction, 1, (CORESIGN(1)>0)); #elif CORE_IS_YZ - BABYSTEP_CORE(Y, Z, 0, direction, (CORESIGN(1)<0)); + BABYSTEP_CORE(Y, Z, direction, 0, (CORESIGN(1)<0)); #else - BABYSTEP_AXIS(Y, 0, direction); + BABYSTEP_AXIS(Y, direction, 0); #endif break; @@ -3701,11 +3701,11 @@ void Stepper::report_positions() { case Z_AXIS: { #if CORE_IS_XZ - BABYSTEP_CORE(X, Z, BABYSTEP_INVERT_Z, direction, (CORESIGN(1)<0)); + BABYSTEP_CORE(X, Z, direction, BABYSTEP_INVERT_Z, (CORESIGN(1)<0)); #elif CORE_IS_YZ - BABYSTEP_CORE(Y, Z, BABYSTEP_INVERT_Z, direction, (CORESIGN(1)<0)); + BABYSTEP_CORE(Y, Z, direction, BABYSTEP_INVERT_Z, (CORESIGN(1)<0)); #elif DISABLED(DELTA) - BABYSTEP_AXIS(Z, BABYSTEP_INVERT_Z, direction); + BABYSTEP_AXIS(Z, direction, BABYSTEP_INVERT_Z); #else // DELTA @@ -3781,22 +3781,22 @@ void Stepper::report_positions() { } break; #if HAS_I_AXIS - case I_AXIS: BABYSTEP_AXIS(I, 0, direction); break; + case I_AXIS: BABYSTEP_AXIS(I, direction, 0); break; #endif #if HAS_J_AXIS - case J_AXIS: BABYSTEP_AXIS(J, 0, direction); break; + case J_AXIS: BABYSTEP_AXIS(J, direction, 0); break; #endif #if HAS_K_AXIS - case K_AXIS: BABYSTEP_AXIS(K, 0, direction); break; + case K_AXIS: BABYSTEP_AXIS(K, direction, 0); break; #endif #if HAS_U_AXIS - case U_AXIS: BABYSTEP_AXIS(U, 0, direction); break; + case U_AXIS: BABYSTEP_AXIS(U, direction, 0); break; #endif #if HAS_V_AXIS - case V_AXIS: BABYSTEP_AXIS(V, 0, direction); break; + case V_AXIS: BABYSTEP_AXIS(V, direction, 0); break; #endif #if HAS_W_AXIS - case W_AXIS: BABYSTEP_AXIS(W, 0, direction); break; + case W_AXIS: BABYSTEP_AXIS(W, direction, 0); break; #endif default: break; diff --git a/buildroot/tests/rambo b/buildroot/tests/rambo index ca6aae471f09..040773230a0b 100755 --- a/buildroot/tests/rambo +++ b/buildroot/tests/rambo @@ -116,7 +116,7 @@ opt_set MOTHERBOARD BOARD_RAMBO \ FAN_MIN_PWM 50 FAN_KICKSTART_TIME 100 \ XY_FREQUENCY_LIMIT 15 opt_enable COREYX USE_XMAX_PLUG MIXING_EXTRUDER GRADIENT_MIX \ - BABYSTEPPING BABYSTEP_DISPLAY_TOTAL FILAMENT_LCD_DISPLAY \ + BABYSTEPPING BABYSTEP_XY BABYSTEP_DISPLAY_TOTAL FILAMENT_LCD_DISPLAY \ REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER MENU_ADDAUTOSTART SDSUPPORT SDCARD_SORT_ALPHA \ ENDSTOP_NOISE_THRESHOLD FAN_SOFT_PWM \ FIX_MOUNTED_PROBE PROBING_ESTEPPERS_OFF PROBE_OFFSET_WIZARD \ From ded9ffa1e7cc154518fe94b5c7da4f4332eb8a27 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 20 Apr 2023 17:35:20 -0500 Subject: [PATCH 043/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20App?= =?UTF-8?q?ly=20INVERT=5FDIR=20to=20SET=5FSTEP=5FDIR?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/stepper.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 373d86970a8a..045df059811e 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -591,14 +591,14 @@ void Stepper::disable_all_steppers() { TERN_(EXTENSIBLE_UI, ExtUI::onSteppersDisabled()); } -#define SET_STEP_DIR(A) \ - if (motor_direction(_AXIS(A))) { \ - A##_APPLY_DIR(INVERT_##A##_DIR, false); \ - count_direction[_AXIS(A)] = -1; \ - } \ - else { \ - A##_APPLY_DIR(!INVERT_##A##_DIR, false); \ - count_direction[_AXIS(A)] = 1; \ +#define SET_STEP_DIR(A) \ + if (motor_direction(_AXIS(A))) { \ + A##_APPLY_DIR(INVERT_DIR(A, LOW), false); \ + count_direction[_AXIS(A)] = -1; \ + } \ + else { \ + A##_APPLY_DIR(INVERT_DIR(A, HIGH), false); \ + count_direction[_AXIS(A)] = 1; \ } /** From 98277f2c1cb1f8ec66938689f6728ea9f52143c8 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 21 Apr 2023 00:20:12 +0000 Subject: [PATCH 044/427] [cron] Bump distribution date (2023-04-21) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index c8035164900f..df1b974a8195 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-20" +//#define STRING_DISTRIBUTION_DATE "2023-04-21" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index ed0440a7db89..4e228d659f73 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-20" + #define STRING_DISTRIBUTION_DATE "2023-04-21" #endif /** From 4233e4864f0c621612ce35a9b6ca882312e3aa4d Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 22 Apr 2023 01:56:10 -0500 Subject: [PATCH 045/427] =?UTF-8?q?=F0=9F=9A=B8=20MarlinUI=20Endstop=20Tes?= =?UTF-8?q?t=20Screen,=20and=20more=20(#25667)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 3 + Marlin/src/gcode/calibrate/G425.cpp | 36 +- Marlin/src/gcode/calibrate/M425.cpp | 7 +- Marlin/src/inc/Conditionals_post.h | 51 +- Marlin/src/inc/SanityCheck.h | 108 +-- Marlin/src/lcd/HD44780/marlinui_HD44780.cpp | 35 +- Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp | 40 +- Marlin/src/lcd/dogm/marlinui_DOGM.cpp | 32 +- Marlin/src/lcd/e3v2/marlinui/ui_common.cpp | 36 +- Marlin/src/lcd/e3v2/proui/endstop_diag.cpp | 34 +- Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp | 88 +- Marlin/src/lcd/language/language_en.h | 3 + Marlin/src/lcd/menu/menu.h | 5 +- Marlin/src/lcd/menu/menu_configuration.cpp | 89 +- Marlin/src/lcd/menu/menu_info.cpp | 96 +- Marlin/src/lcd/menu/menu_item.h | 32 +- Marlin/src/lcd/tft/ui_common.cpp | 23 +- Marlin/src/module/endstops.h | 91 +- Marlin/src/module/motion.cpp | 29 +- Marlin/src/module/probe.cpp | 8 +- Marlin/src/pins/pins_postprocess.h | 898 +++++++++---------- buildroot/tests/STM32F103RE_creality | 15 +- 22 files changed, 960 insertions(+), 799 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 294cc4448795..993e0d8dde71 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -1512,6 +1512,9 @@ // Insert a menu for preheating at the top level to allow for quick access //#define PREHEAT_SHORTCUT_MENU_ITEM + // Add Configuration > Debug Menu > Endstop Test for endstop/probe/runout testing + //#define LCD_ENDSTOP_TEST + #endif // HAS_MARLINUI_MENU #if HAS_DISPLAY diff --git a/Marlin/src/gcode/calibrate/G425.cpp b/Marlin/src/gcode/calibrate/G425.cpp index a22608f5b42b..e3f8913125ff 100644 --- a/Marlin/src/gcode/calibrate/G425.cpp +++ b/Marlin/src/gcode/calibrate/G425.cpp @@ -271,10 +271,10 @@ inline void probe_side(measurements_t &m, const float uncertainty, const side_t #if AXIS_CAN_CALIBRATE(X) _ACASE(X, RIGHT, LEFT); #endif - #if HAS_Y_AXIS && AXIS_CAN_CALIBRATE(Y) + #if AXIS_CAN_CALIBRATE(Y) _ACASE(Y, BACK, FRONT); #endif - #if HAS_Z_AXIS && AXIS_CAN_CALIBRATE(Z) + #if AXIS_CAN_CALIBRATE(Z) case TOP: { const float measurement = measure(Z_AXIS, -1, true, &m.backlash[TOP], uncertainty); m.obj_center.z = measurement - dimensions.z / 2; @@ -282,22 +282,22 @@ inline void probe_side(measurements_t &m, const float uncertainty, const side_t return; } #endif - #if HAS_I_AXIS && AXIS_CAN_CALIBRATE(I) + #if AXIS_CAN_CALIBRATE(I) _PCASE(I); #endif - #if HAS_J_AXIS && AXIS_CAN_CALIBRATE(J) + #if AXIS_CAN_CALIBRATE(J) _PCASE(J); #endif - #if HAS_K_AXIS && AXIS_CAN_CALIBRATE(K) + #if AXIS_CAN_CALIBRATE(K) _PCASE(K); #endif - #if HAS_U_AXIS && AXIS_CAN_CALIBRATE(U) + #if AXIS_CAN_CALIBRATE(U) _PCASE(U); #endif - #if HAS_V_AXIS && AXIS_CAN_CALIBRATE(V) + #if AXIS_CAN_CALIBRATE(V) _PCASE(V); #endif - #if HAS_W_AXIS && AXIS_CAN_CALIBRATE(W) + #if AXIS_CAN_CALIBRATE(W) _PCASE(W); #endif default: return; @@ -395,7 +395,7 @@ inline void probe_sides(measurements_t &m, const float uncertainty) { #if ENABLED(CALIBRATION_REPORTING) inline void report_measured_faces(const measurements_t &m) { SERIAL_ECHOLNPGM("Sides:"); - #if HAS_Z_AXIS && AXIS_CAN_CALIBRATE(Z) + #if AXIS_CAN_CALIBRATE(Z) SERIAL_ECHOLNPGM(" Top: ", m.obj_side[TOP]); #endif #if ENABLED(CALIBRATION_MEASURE_LEFT) @@ -503,7 +503,7 @@ inline void probe_sides(measurements_t &m, const float uncertainty) { SERIAL_ECHOLNPGM(" Right: ", m.backlash[RIGHT]); #endif #endif - #if HAS_Y_AXIS && AXIS_CAN_CALIBRATE(Y) + #if AXIS_CAN_CALIBRATE(Y) #if ENABLED(CALIBRATION_MEASURE_FRONT) SERIAL_ECHOLNPGM(" Front: ", m.backlash[FRONT]); #endif @@ -511,10 +511,10 @@ inline void probe_sides(measurements_t &m, const float uncertainty) { SERIAL_ECHOLNPGM(" Back: ", m.backlash[BACK]); #endif #endif - #if HAS_Z_AXIS && AXIS_CAN_CALIBRATE(Z) + #if AXIS_CAN_CALIBRATE(Z) SERIAL_ECHOLNPGM(" Top: ", m.backlash[TOP]); #endif - #if HAS_I_AXIS && AXIS_CAN_CALIBRATE(I) + #if AXIS_CAN_CALIBRATE(I) #if ENABLED(CALIBRATION_MEASURE_IMIN) SERIAL_ECHOLNPGM(" " STR_I_MIN ": ", m.backlash[IMINIMUM]); #endif @@ -522,7 +522,7 @@ inline void probe_sides(measurements_t &m, const float uncertainty) { SERIAL_ECHOLNPGM(" " STR_I_MAX ": ", m.backlash[IMAXIMUM]); #endif #endif - #if HAS_J_AXIS && AXIS_CAN_CALIBRATE(J) + #if AXIS_CAN_CALIBRATE(J) #if ENABLED(CALIBRATION_MEASURE_JMIN) SERIAL_ECHOLNPGM(" " STR_J_MIN ": ", m.backlash[JMINIMUM]); #endif @@ -530,7 +530,7 @@ inline void probe_sides(measurements_t &m, const float uncertainty) { SERIAL_ECHOLNPGM(" " STR_J_MAX ": ", m.backlash[JMAXIMUM]); #endif #endif - #if HAS_K_AXIS && AXIS_CAN_CALIBRATE(K) + #if AXIS_CAN_CALIBRATE(K) #if ENABLED(CALIBRATION_MEASURE_KMIN) SERIAL_ECHOLNPGM(" " STR_K_MIN ": ", m.backlash[KMINIMUM]); #endif @@ -538,7 +538,7 @@ inline void probe_sides(measurements_t &m, const float uncertainty) { SERIAL_ECHOLNPGM(" " STR_K_MAX ": ", m.backlash[KMAXIMUM]); #endif #endif - #if HAS_U_AXIS && AXIS_CAN_CALIBRATE(U) + #if AXIS_CAN_CALIBRATE(U) #if ENABLED(CALIBRATION_MEASURE_UMIN) SERIAL_ECHOLNPGM(" " STR_U_MIN ": ", m.backlash[UMINIMUM]); #endif @@ -546,7 +546,7 @@ inline void probe_sides(measurements_t &m, const float uncertainty) { SERIAL_ECHOLNPGM(" " STR_U_MAX ": ", m.backlash[UMAXIMUM]); #endif #endif - #if HAS_V_AXIS && AXIS_CAN_CALIBRATE(V) + #if AXIS_CAN_CALIBRATE(V) #if ENABLED(CALIBRATION_MEASURE_VMIN) SERIAL_ECHOLNPGM(" " STR_V_MIN ": ", m.backlash[VMINIMUM]); #endif @@ -554,7 +554,7 @@ inline void probe_sides(measurements_t &m, const float uncertainty) { SERIAL_ECHOLNPGM(" " STR_V_MAX ": ", m.backlash[VMAXIMUM]); #endif #endif - #if HAS_W_AXIS && AXIS_CAN_CALIBRATE(W) + #if AXIS_CAN_CALIBRATE(W) #if ENABLED(CALIBRATION_MEASURE_WMIN) SERIAL_ECHOLNPGM(" " STR_W_MIN ": ", m.backlash[WMINIMUM]); #endif @@ -575,7 +575,7 @@ inline void probe_sides(measurements_t &m, const float uncertainty) { #if HAS_Y_CENTER && AXIS_CAN_CALIBRATE(Y) SERIAL_ECHOLNPGM_P(SP_Y_STR, m.pos_error.y); #endif - #if HAS_Z_AXIS && AXIS_CAN_CALIBRATE(Z) + #if AXIS_CAN_CALIBRATE(Z) SERIAL_ECHOLNPGM_P(SP_Z_STR, m.pos_error.z); #endif #if HAS_I_CENTER && AXIS_CAN_CALIBRATE(I) diff --git a/Marlin/src/gcode/calibrate/M425.cpp b/Marlin/src/gcode/calibrate/M425.cpp index a6c6ff9dae3e..0432b4c96275 100644 --- a/Marlin/src/gcode/calibrate/M425.cpp +++ b/Marlin/src/gcode/calibrate/M425.cpp @@ -46,12 +46,13 @@ void GcodeSuite::M425() { bool noArgs = true; - auto axis_can_calibrate = [](const uint8_t a) { - #define _CAN_CASE(N) case N##_AXIS: return AXIS_CAN_CALIBRATE(N); + auto axis_can_calibrate = [](const uint8_t a) -> bool { + #define _CAN_CASE(N) case N##_AXIS: return bool(AXIS_CAN_CALIBRATE(N)); switch (a) { - default: return false; MAIN_AXIS_MAP(_CAN_CASE) + default: break; } + return false; }; LOOP_NUM_AXES(a) { diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 96b7313f29d2..eaf2d03cea52 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -255,12 +255,14 @@ // Calibration codes only for non-core axes #if EITHER(BACKLASH_GCODE, CALIBRATION_GCODE) #if ANY(IS_CORE, MARKFORGED_XY, MARKFORGED_YX) - #define CAN_CALIBRATE(A,B) (_AXIS(A) == B) + #define CAN_CALIBRATE(A,B) TERN0(HAS_##A##_AXIS, (_AXIS(A) == B)) #else - #define CAN_CALIBRATE(A,B) true + #define CAN_CALIBRATE(A,B) ENABLED(HAS_##A##_AXIS) #endif + #define AXIS_CAN_CALIBRATE(A) CAN_CALIBRATE(A,NORMAL_AXIS) +#else + #define AXIS_CAN_CALIBRATE(A) false #endif -#define AXIS_CAN_CALIBRATE(A) CAN_CALIBRATE(A,NORMAL_AXIS) /** * No adjustable bed on non-cartesians @@ -2296,6 +2298,49 @@ #define HAS_Z4_MAX 1 #endif +#if HAS_X_MIN || HAS_X_MAX + #define HAS_X_ENDSTOP 1 +#endif +#if HAS_X2_MIN || HAS_X2_MAX + #define HAS_X2_ENDSTOP 1 +#endif +#if HAS_Y_MIN || HAS_Y_MAX + #define HAS_Y_ENDSTOP 1 +#endif +#if HAS_Y2_MIN || HAS_Y2_MAX + #define HAS_Y2_ENDSTOP 1 +#endif +#if HAS_Z_MIN || HAS_Z_MAX + #define HAS_Z_ENDSTOP 1 +#endif +#if HAS_Z2_MIN || HAS_Z2_MAX + #define HAS_Z2_ENDSTOP 1 +#endif +#if HAS_Z3_MIN || HAS_Z3_MAX + #define HAS_Z3_ENDSTOP 1 +#endif +#if HAS_Z4_MIN || HAS_Z4_MAX + #define HAS_Z4_ENDSTOP 1 +#endif +#if HAS_I_MIN || HAS_I_MAX + #define HAS_I_ENDSTOP 1 +#endif +#if HAS_J_MIN || HAS_J_MAX + #define HAS_J_ENDSTOP 1 +#endif +#if HAS_K_MIN || HAS_K_MAX + #define HAS_K_ENDSTOP 1 +#endif +#if HAS_U_MIN || HAS_U_MAX + #define HAS_U_ENDSTOP 1 +#endif +#if HAS_V_MIN || HAS_V_MAX + #define HAS_V_ENDSTOP 1 +#endif +#if HAS_W_MIN || HAS_W_MAX + #define HAS_W_ENDSTOP 1 +#endif + #if HAS_BED_PROBE && PIN_EXISTS(Z_MIN_PROBE) #define HAS_Z_MIN_PROBE_PIN 1 #endif diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index f5d0c785ebed..a7aec8e83383 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -3618,41 +3618,41 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #if NONE(SPI_ENDSTOPS, ONBOARD_ENDSTOPPULLUPS, ENDSTOPPULLUPS) #if X_SENSORLESS && X_HOME_TO_MIN && DISABLED(ENDSTOPPULLUP_XMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_XMIN (or ENDSTOPPULLUPS) for X_MIN homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_XMIN (or ENDSTOPPULLUPS) for X MIN homing." #elif X_SENSORLESS && X_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_XMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_XMAX (or ENDSTOPPULLUPS) for X_MAX homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_XMAX (or ENDSTOPPULLUPS) for X MAX homing." #elif Y_SENSORLESS && Y_HOME_TO_MIN && DISABLED(ENDSTOPPULLUP_YMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_YMIN (or ENDSTOPPULLUPS) for Y_MIN homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_YMIN (or ENDSTOPPULLUPS) for Y MIN homing." #elif Y_SENSORLESS && Y_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_YMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_YMAX (or ENDSTOPPULLUPS) for Y_MAX homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_YMAX (or ENDSTOPPULLUPS) for Y MAX homing." #elif Z_SENSORLESS && Z_HOME_TO_MIN && DISABLED(ENDSTOPPULLUP_ZMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_ZMIN (or ENDSTOPPULLUPS) for Z_MIN homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_ZMIN (or ENDSTOPPULLUPS) for Z MIN homing." #elif Z_SENSORLESS && Z_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_ZMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_ZMAX (or ENDSTOPPULLUPS) for Z_MAX homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_ZMAX (or ENDSTOPPULLUPS) for Z MAX homing." #elif I_SENSORLESS && I_HOME_TO_MIN && DISABLED(ENDSTOPPULLUP_IMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_IMIN (or ENDSTOPPULLUPS) for I_MIN homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_IMIN (or ENDSTOPPULLUPS) for I MIN homing." #elif I_SENSORLESS && I_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_IMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_IMAX (or ENDSTOPPULLUPS) for I_MAX homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_IMAX (or ENDSTOPPULLUPS) for I MAX homing." #elif J_SENSORLESS && J_HOME_TO_MIN && DISABLED(ENDSTOPPULLUP_JMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_JMIN (or ENDSTOPPULLUPS) for J_MIN homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_JMIN (or ENDSTOPPULLUPS) for J MIN homing." #elif J_SENSORLESS && J_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_JMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_JMAX (or ENDSTOPPULLUPS) for J_MAX homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_JMAX (or ENDSTOPPULLUPS) for J MAX homing." #elif K_SENSORLESS && K_HOME_TO_MIN && DISABLED(ENDSTOPPULLUP_KMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_KMIN (or ENDSTOPPULLUPS) for K_MIN homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_KMIN (or ENDSTOPPULLUPS) for K MIN homing." #elif K_SENSORLESS && K_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_KMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_KMAX (or ENDSTOPPULLUPS) for K_MAX homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_KMAX (or ENDSTOPPULLUPS) for K MAX homing." #elif U_SENSORLESS && U_HOME_TO_MIN && DISABLED(ENDSTOPPULLUP_UMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_UMIN (or ENDSTOPPULLUPS) for U_MIN homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_UMIN (or ENDSTOPPULLUPS) for U MIN homing." #elif U_SENSORLESS && U_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_UMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_UMAX (or ENDSTOPPULLUPS) for U_MAX homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_UMAX (or ENDSTOPPULLUPS) for U MAX homing." #elif V_SENSORLESS && V_HOME_TO_MIN && DISABLED(ENDSTOPPULLUP_VMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_VMIN (or ENDSTOPPULLUPS) for V_MIN homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_VMIN (or ENDSTOPPULLUPS) for V MIN homing." #elif V_SENSORLESS && V_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_VMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_VMAX (or ENDSTOPPULLUPS) for V_MAX homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_VMAX (or ENDSTOPPULLUPS) for V MAX homing." #elif W_SENSORLESS && W_HOME_TO_MIN && DISABLED(ENDSTOPPULLUP_WMIN) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_WMIN (or ENDSTOPPULLUPS) for W_MIN homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_WMIN (or ENDSTOPPULLUPS) for W MIN homing." #elif W_SENSORLESS && W_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_WMAX) - #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_WMAX (or ENDSTOPPULLUPS) for W_MAX homing." + #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_WMAX (or ENDSTOPPULLUPS) for W MAX homing." #endif #endif @@ -3668,15 +3668,15 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #define _HIT_STATE AXIS_DRIVER_TYPE(X,TMC2209) #if X_HOME_TO_MIN && X_MIN_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires X_MIN_ENDSTOP_HIT_STATE HIGH for X_MIN homing with TMC2209." + #error "SENSORLESS_HOMING requires X_MIN_ENDSTOP_HIT_STATE HIGH for X MIN homing with TMC2209." #else - #error "SENSORLESS_HOMING requires X_MIN_ENDSTOP_HIT_STATE LOW for X_MIN homing." + #error "SENSORLESS_HOMING requires X_MIN_ENDSTOP_HIT_STATE LOW for X MIN homing." #endif #elif X_HOME_TO_MAX && X_MAX_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires X_MAX_ENDSTOP_HIT_STATE HIGH for X_MAX homing with TMC2209." + #error "SENSORLESS_HOMING requires X_MAX_ENDSTOP_HIT_STATE HIGH for X MAX homing with TMC2209." #else - #error "SENSORLESS_HOMING requires X_MAX_ENDSTOP_HIT_STATE LOW for X_MAX homing." + #error "SENSORLESS_HOMING requires X_MAX_ENDSTOP_HIT_STATE LOW for X MAX homing." #endif #endif #undef _HIT_STATE @@ -3686,15 +3686,15 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #define _HIT_STATE AXIS_DRIVER_TYPE(Y,TMC2209) #if Y_HOME_TO_MIN && Y_MIN_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires Y_MIN_ENDSTOP_HIT_STATE HIGH for Y_MIN homing with TMC2209." + #error "SENSORLESS_HOMING requires Y_MIN_ENDSTOP_HIT_STATE HIGH for Y MIN homing with TMC2209." #else - #error "SENSORLESS_HOMING requires Y_MIN_ENDSTOP_HIT_STATE LOW for Y_MIN homing." + #error "SENSORLESS_HOMING requires Y_MIN_ENDSTOP_HIT_STATE LOW for Y MIN homing." #endif #elif Y_HOME_TO_MAX && Y_MAX_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires Y_MAY_ENDSTOP_HIT_STATE HIGH for Y_MAX homing with TMC2209." + #error "SENSORLESS_HOMING requires Y_MAX_ENDSTOP_HIT_STATE HIGH for Y MAX homing with TMC2209." #else - #error "SENSORLESS_HOMING requires Y_MAY_ENDSTOP_HIT_STATE LOW for Y_MAX homing." + #error "SENSORLESS_HOMING requires Y_MAX_ENDSTOP_HIT_STATE LOW for Y MAX homing." #endif #endif #undef _HIT_STATE @@ -3704,15 +3704,15 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #define _HIT_STATE AXIS_DRIVER_TYPE(Z,TMC2209) #if Z_HOME_TO_MIN && Z_MIN_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires Z_MIN_ENDSTOP_HIT_STATE HIGH for Z_MIN homing with TMC2209." + #error "SENSORLESS_HOMING requires Z_MIN_ENDSTOP_HIT_STATE HIGH for Z MIN homing with TMC2209." #else - #error "SENSORLESS_HOMING requires Z_MIN_ENDSTOP_HIT_STATE LOW for Z_MIN homing." + #error "SENSORLESS_HOMING requires Z_MIN_ENDSTOP_HIT_STATE LOW for Z MIN homing." #endif #elif Z_HOME_TO_MAX && Z_MAX_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires Z_MAZ_ENDSTOP_HIT_STATE HIGH for Z_MAX homing with TMC2209." + #error "SENSORLESS_HOMING requires Z_MAX_ENDSTOP_HIT_STATE HIGH for Z MAX homing with TMC2209." #else - #error "SENSORLESS_HOMING requires Z_MAZ_ENDSTOP_HIT_STATE LOW for Z_MAX homing." + #error "SENSORLESS_HOMING requires Z_MAX_ENDSTOP_HIT_STATE LOW for Z MAX homing." #endif #endif #undef _HIT_STATE @@ -3722,15 +3722,15 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #define _HIT_STATE AXIS_DRIVER_TYPE(I,TMC2209) #if I_HOME_TO_MIN && I_MIN_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires I_MIN_ENDSTOP_HIT_STATE HIGH for I_MIN homing with TMC2209." + #error "SENSORLESS_HOMING requires I_MIN_ENDSTOP_HIT_STATE HIGH for I MIN homing with TMC2209." #else - #error "SENSORLESS_HOMING requires I_MIN_ENDSTOP_HIT_STATE LOW for I_MIN homing." + #error "SENSORLESS_HOMING requires I_MIN_ENDSTOP_HIT_STATE LOW for I MIN homing." #endif #elif I_HOME_TO_MAX && I_MAX_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires I_MAI_ENDSTOP_HIT_STATE HIGH for I_MAX homing with TMC2209." + #error "SENSORLESS_HOMING requires I_MAX_ENDSTOP_HIT_STATE HIGH for I MAX homing with TMC2209." #else - #error "SENSORLESS_HOMING requires I_MAI_ENDSTOP_HIT_STATE LOW for I_MAX homing." + #error "SENSORLESS_HOMING requires I_MAX_ENDSTOP_HIT_STATE LOW for I MAX homing." #endif #endif #undef _HIT_STATE @@ -3740,15 +3740,15 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #define _HIT_STATE AXIS_DRIVER_TYPE(J,TMC2209) #if J_HOME_TO_MIN && J_MIN_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires J_MIN_ENDSTOP_HIT_STATE HIGH for J_MIN homing with TMC2209." + #error "SENSORLESS_HOMING requires J_MIN_ENDSTOP_HIT_STATE HIGH for J MIN homing with TMC2209." #else - #error "SENSORLESS_HOMING requires J_MIN_ENDSTOP_HIT_STATE LOW for J_MIN homing." + #error "SENSORLESS_HOMING requires J_MIN_ENDSTOP_HIT_STATE LOW for J MIN homing." #endif #elif J_HOME_TO_MAX && J_MAX_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires J_MAJ_ENDSTOP_HIT_STATE HIGH for J_MAX homing with TMC2209." + #error "SENSORLESS_HOMING requires J_MAX_ENDSTOP_HIT_STATE HIGH for J MAX homing with TMC2209." #else - #error "SENSORLESS_HOMING requires J_MAJ_ENDSTOP_HIT_STATE LOW for J_MAX homing." + #error "SENSORLESS_HOMING requires J_MAX_ENDSTOP_HIT_STATE LOW for J MAX homing." #endif #endif #undef _HIT_STATE @@ -3758,15 +3758,15 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #define _HIT_STATE AXIS_DRIVER_TYPE(K,TMC2209) #if K_HOME_TO_MIN && K_MIN_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires K_MIN_ENDSTOP_HIT_STATE HIGH for K_MIN homing with TMC2209." + #error "SENSORLESS_HOMING requires K_MIN_ENDSTOP_HIT_STATE HIGH for K MIN homing with TMC2209." #else - #error "SENSORLESS_HOMING requires K_MIN_ENDSTOP_HIT_STATE LOW for K_MIN homing." + #error "SENSORLESS_HOMING requires K_MIN_ENDSTOP_HIT_STATE LOW for K MIN homing." #endif #elif K_HOME_TO_MAX && K_MAX_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires K_MAK_ENDSTOP_HIT_STATE HIGH for K_MAX homing with TMC2209." + #error "SENSORLESS_HOMING requires K_MAX_ENDSTOP_HIT_STATE HIGH for K MAX homing with TMC2209." #else - #error "SENSORLESS_HOMING requires K_MAK_ENDSTOP_HIT_STATE LOW for K_MAX homing." + #error "SENSORLESS_HOMING requires K_MAX_ENDSTOP_HIT_STATE LOW for K MAX homing." #endif #endif #undef _HIT_STATE @@ -3776,15 +3776,15 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #define _HIT_STATE AXIS_DRIVER_TYPE(U,TMC2209) #if U_HOME_TO_MIN && U_MIN_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires U_MIN_ENDSTOP_HIT_STATE HIGH for U_MIN homing with TMC2209." + #error "SENSORLESS_HOMING requires U_MIN_ENDSTOP_HIT_STATE HIGH for U MIN homing with TMC2209." #else - #error "SENSORLESS_HOMING requires U_MIN_ENDSTOP_HIT_STATE LOW for U_MIN homing." + #error "SENSORLESS_HOMING requires U_MIN_ENDSTOP_HIT_STATE LOW for U MIN homing." #endif #elif U_HOME_TO_MAX && U_MAX_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires U_MAU_ENDSTOP_HIT_STATE HIGH for U_MAX homing with TMC2209." + #error "SENSORLESS_HOMING requires U_MAX_ENDSTOP_HIT_STATE HIGH for U MAX homing with TMC2209." #else - #error "SENSORLESS_HOMING requires U_MAU_ENDSTOP_HIT_STATE LOW for U_MAX homing." + #error "SENSORLESS_HOMING requires U_MAX_ENDSTOP_HIT_STATE LOW for U MAX homing." #endif #endif #undef _HIT_STATE @@ -3794,15 +3794,15 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #define _HIT_STATE AXIS_DRIVER_TYPE(V,TMC2209) #if V_HOME_TO_MIN && V_MIN_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires V_MIN_ENDSTOP_HIT_STATE HIGH for V_MIN homing with TMC2209." + #error "SENSORLESS_HOMING requires V_MIN_ENDSTOP_HIT_STATE HIGH for V MIN homing with TMC2209." #else - #error "SENSORLESS_HOMING requires V_MIN_ENDSTOP_HIT_STATE LOW for V_MIN homing." + #error "SENSORLESS_HOMING requires V_MIN_ENDSTOP_HIT_STATE LOW for V MIN homing." #endif #elif V_HOME_TO_MAX && V_MAX_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires V_MAV_ENDSTOP_HIT_STATE HIGH for V_MAX homing with TMC2209." + #error "SENSORLESS_HOMING requires V_MAX_ENDSTOP_HIT_STATE HIGH for V MAX homing with TMC2209." #else - #error "SENSORLESS_HOMING requires V_MAV_ENDSTOP_HIT_STATE LOW for V_MAX homing." + #error "SENSORLESS_HOMING requires V_MAX_ENDSTOP_HIT_STATE LOW for V MAX homing." #endif #endif #undef _HIT_STATE @@ -3812,15 +3812,15 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #define _HIT_STATE AXIS_DRIVER_TYPE(W,TMC2209) #if W_HOME_TO_MIN && W_MIN_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires W_MIN_ENDSTOP_HIT_STATE HIGH for W_MIN homing with TMC2209." + #error "SENSORLESS_HOMING requires W_MIN_ENDSTOP_HIT_STATE HIGH for W MIN homing with TMC2209." #else - #error "SENSORLESS_HOMING requires W_MIN_ENDSTOP_HIT_STATE LOW for W_MIN homing." + #error "SENSORLESS_HOMING requires W_MIN_ENDSTOP_HIT_STATE LOW for W MIN homing." #endif #elif W_HOME_TO_MAX && W_MAX_ENDSTOP_HIT_STATE != _HIT_STATE #if _HIT_STATE - #error "SENSORLESS_HOMING requires W_MAW_ENDSTOP_HIT_STATE HIGH for W_MAX homing with TMC2209." + #error "SENSORLESS_HOMING requires W_MAX_ENDSTOP_HIT_STATE HIGH for W MAX homing with TMC2209." #else - #error "SENSORLESS_HOMING requires W_MAW_ENDSTOP_HIT_STATE LOW for W_MAX homing." + #error "SENSORLESS_HOMING requires W_MAX_ENDSTOP_HIT_STATE LOW for W MAX homing." #endif #endif #undef _HIT_STATE diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp index e4c0317d1239..8a5e5c5ad9e5 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp @@ -1137,17 +1137,38 @@ void MarlinUI::draw_status_screen() { #endif // ADVANCED_PAUSE_FEATURE // Draw a static item with no left-right margin required. Centered by default. - void MenuItem_static::draw(const uint8_t row, FSTR_P const fstr, const uint8_t style/*=SS_DEFAULT*/, const char * const vstr/*=nullptr*/) { - int8_t n = LCD_WIDTH; + void MenuItem_static::draw(const uint8_t row, FSTR_P const fstr, const uint8_t style/*=SS_DEFAULT*/, const char *vstr/*=nullptr*/) { lcd_moveto(0, row); + + int8_t n = LCD_WIDTH; + const bool center = bool(style & SS_CENTER), full = bool(style & SS_FULL); const int8_t plen = fstr ? utf8_strlen(fstr) : 0, vlen = vstr ? utf8_strlen(vstr) : 0; - if (style & SS_CENTER) { - int8_t pad = (LCD_WIDTH - plen - vlen) / 2; - while (--pad >= 0) { lcd_put_u8str(F(" ")); n--; } + int8_t pad = (center || full) ? n - plen - vlen : 0; + + // SS_CENTER: Pad with half of the unused space first + if (center) for (int8_t lpad = pad / 2; lpad > 0; --lpad) { lcd_put_u8str(F(" ")); n--; } + + // Draw as much of the label as fits + if (plen) { + const int8_t expl = n; + n = lcd_put_u8str(fstr, itemIndex, itemStringC, itemStringF, n); + pad -= (expl - n - plen); // Reduce the padding } - if (plen) n = lcd_put_u8str(fstr, itemIndex, itemStringC, itemStringF, n); - if (vlen) n -= lcd_put_u8str_max(vstr, n); + + if (vlen && n > 0) { + // SS_FULL: Pad with enough space to justify the value + if (full && !center) { + // Move the leading colon from the value to the label + if (*vstr == ':') { n -= lcd_put_u8str(F(":")); vstr++; } + // Move spaces to the padding + while (*vstr == ' ') { vstr++; pad++; } + // Pad in-between + for (; pad > 0; --pad) { lcd_put_u8str(F(" ")); n--; } + } + n -= lcd_put_u8str_max(vstr, n); + } + for (; n > 0; --n) lcd_put_u8str(F(" ")); } diff --git a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp index e4f9e4eafc08..fc568c55db1c 100644 --- a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp +++ b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp @@ -962,17 +962,41 @@ void MarlinUI::draw_status_screen() { #endif // Draw a static item with no left-right margin required. Centered by default. - void MenuItem_static::draw(const uint8_t row, FSTR_P const fstr, const uint8_t style/*=SS_DEFAULT*/, const char * const valstr/*=nullptr*/) { + void MenuItem_static::draw(const uint8_t row, FSTR_P const fstr, const uint8_t style/*=SS_DEFAULT*/, const char *vstr/*=nullptr*/) { if (!PanelDetected) return; - uint8_t n = LCD_WIDTH; lcd_moveto(0, row); - if ((style & SS_CENTER) && !valstr) { - int8_t pad = (LCD_WIDTH - utf8_strlen(fstr)) / 2; - while (--pad >= 0) { lcd.write(' '); n--; } + + uint8_t n = LCD_WIDTH; + const bool center = bool(style & SS_CENTER), full = bool(style & SS_FULL); + const int8_t plen = fstr ? utf8_strlen(fstr) : 0, + vlen = vstr ? utf8_strlen(vstr) : 0; + int8_t pad = (center || full) ? n - plen - vlen : 0; + + // SS_CENTER: Pad with half of the unused space first + if (center) for (int8_t lpad = pad / 2; lpad > 0; --lpad) { lcd.write(' '); n--; } + + // Draw as much of the label as fits + if (plen) { + const int8_t expl = n; + n = lcd_put_u8str(fstr, itemIndex, itemStringC, itemStringF, n); + pad -= (expl - n - plen); // Reduce the padding } - n = lcd_put_u8str(fstr, itemIndex, itemStringC, itemStringF, n); - if (valstr) n -= lcd_put_u8str_max(valstr, n); - for (; n; --n) lcd.write(' '); + + if (vlen && n > 0) { + // SS_FULL: Pad with enough space to justify the value + if (full && !center) { + // Move the leading colon from the value to the label + if (*vstr == ':') { lcd.write(':'); vstr++; n--; } + // Move spaces to the padding + while (*vstr == ' ') { vstr++; pad++; } + // Pad in-between + for (; pad > 0; --pad) { lcd.write(' '); n--; } + } + n -= lcd_put_u8str_max(vstr, n); + } + + for (; n > 0; --n) lcd.write(' '); + lcd.print_line(); } diff --git a/Marlin/src/lcd/dogm/marlinui_DOGM.cpp b/Marlin/src/lcd/dogm/marlinui_DOGM.cpp index aa32fd403f45..ce9a31668aa5 100644 --- a/Marlin/src/lcd/dogm/marlinui_DOGM.cpp +++ b/Marlin/src/lcd/dogm/marlinui_DOGM.cpp @@ -411,20 +411,38 @@ void MarlinUI::clear_lcd() { } // Automatically cleared by Picture Loop } // Draw a static line of text in the same idiom as a menu item - void MenuItem_static::draw(const uint8_t row, FSTR_P const ftpl, const uint8_t style/*=SS_DEFAULT*/, const char * const vstr/*=nullptr*/) { + void MenuItem_static::draw(const uint8_t row, FSTR_P const ftpl, const uint8_t style/*=SS_DEFAULT*/, const char *vstr/*=nullptr*/) { if (mark_as_selected(row, style & SS_INVERT)) { pixel_len_t n = LCD_PIXEL_WIDTH; // pixel width of string allowed - const int plen = ftpl ? calculateWidth(ftpl) : 0, + const bool center = bool(style & SS_CENTER), full = bool(style & SS_FULL); + const int pwide = ftpl ? calculateWidth(ftpl) : 0, vlen = vstr ? utf8_strlen(vstr) : 0; - if (style & SS_CENTER) { - int pad = (LCD_PIXEL_WIDTH - plen - vlen * MENU_FONT_WIDTH) / MENU_FONT_WIDTH / 2; - while (--pad >= 0) n -= lcd_put_u8str(F(" ")); + int pad = (center || full) ? ((LCD_PIXEL_WIDTH) - pwide - vlen * (MENU_FONT_WIDTH)) / (MENU_FONT_WIDTH) : 0; + + // SS_CENTER: Pad with half of the unused space first + if (center) for (int lpad = pad / 2; lpad > 0; --lpad) n -= lcd_put_u8str(F(" ")); + + // Draw as much of the label as fits + if (pwide) { + const pixel_len_t expw = n; + n = lcd_put_u8str(ftpl, itemIndex, itemStringC, itemStringF, n / (MENU_FONT_WIDTH)) * (MENU_FONT_WIDTH); + pad -= (expw - n - pwide) / (MENU_FONT_WIDTH); // Reduce the padding } - if (plen) n = lcd_put_u8str(ftpl, itemIndex, itemStringC, itemStringF, n / (MENU_FONT_WIDTH)) * (MENU_FONT_WIDTH); - if (vlen) n -= lcd_put_u8str_max(vstr, n); + if (vlen) { + // SS_FULL: Pad with enough space to justify the value + if (full && !center && n > MENU_FONT_WIDTH) { + // Move the leading colon from the value to the label + if (*vstr == ':') { n -= lcd_put_u8str(F(":")); vstr++; } + // Move spaces to the padding + while (*vstr == ' ') { vstr++; pad++; } + // Pad in-between + for (; pad > 0; --pad) n -= lcd_put_u8str(F(" ")); + } + n -= lcd_put_u8str_max(vstr, n); + } while (n > MENU_FONT_WIDTH) n -= lcd_put_u8str(F(" ")); } } diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp index 778bed633590..c267d3204873 100644 --- a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp @@ -311,7 +311,7 @@ void MarlinUI::draw_status_message(const bool blink) { // Draw a static line of text in the same idiom as a menu item - void MenuItem_static::draw(const uint8_t row, FSTR_P const ftpl, const uint8_t style/*=SS_DEFAULT*/, const char * const vstr/*=nullptr*/) { + void MenuItem_static::draw(const uint8_t row, FSTR_P const ftpl, const uint8_t style/*=SS_DEFAULT*/, const char *vstr/*=nullptr*/) { // Call mark_as_selected to draw a bigger selection box // and draw the text without a background if (mark_as_selected(row, (bool)(style & SS_INVERT), true)) { @@ -320,20 +320,38 @@ void MarlinUI::draw_status_message(const bool blink) { dwin_font.fg = Color_White; dwin_string.set(); + + const bool center = bool(style & SS_CENTER), full = bool(style & SS_FULL); const int8_t plen = ftpl ? utf8_strlen(ftpl) : 0, vlen = vstr ? utf8_strlen(vstr) : 0; - if (style & SS_CENTER) { - int8_t pad = (LCD_WIDTH - 1 - plen - vlen) / 2; - while (--pad) dwin_string.add(' '); + int8_t pad = (center || full) ? (LCD_WIDTH) - 1 - plen - vlen : 0; + + // SS_CENTER: Pad with half of the unused space first + if (center) for (int8_t lpad = pad / 2; lpad > 0; --lpad) dwin_string.add(' '); + + // Append the templated label string + if (plen) { + dwin_string.add(ftpl, itemIndex, itemStringC, itemStringF); + pad -= dwin_string.length - plen; } - if (plen) dwin_string.add(ftpl, itemIndex, itemStringC, itemStringF); - if (vlen) dwin_string.add(vstr); - if (style & SS_CENTER) { - int8_t pad = (LCD_WIDTH - 1 - plen - vlen) / 2; - while (--pad) dwin_string.add(' '); + // SS_FULL: Pad with enough space to justify the value + if (vlen) { + if (full && !center) { + // Move the leading colon from the value to the label + if (*vstr == ':') { dwin_string.add(':'); vstr++; } + // Move spaces to the padding + while (*vstr == ' ') { vstr++; pad++; } + // Pad in-between + for (; pad > 0; --pad) dwin_string.add(' '); + } + // Append the value + dwin_string.add(vstr); } + // SS_CENTER: Pad the rest of the string + if (center) for (int8_t rpad = pad - (pad / 2); rpad > 0; --rpad) dwin_string.add(' '); + lcd_moveto(1, row); lcd_put_dwin_string(); } diff --git a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp index c3edba53dff5..96ee73267833 100644 --- a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp +++ b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp @@ -66,42 +66,26 @@ void draw_es_state(const bool is_hit) { } void ESDiagClass::Draw() { - Title.ShowCaption(F("End-stops Diagnostic")); + Title.ShowCaption(GET_TEXT_F(MSG_ENDSTOP_TEST)); DWINUI::ClearMainArea(); Draw_Popup_Bkgd(); DWINUI::Draw_Button(BTN_Continue, 86, 250); DWINUI::cursor.y = 80; #define ES_LABEL(S) draw_es_label(F(STR_##S)) - #if HAS_X_MIN - ES_LABEL(X_MIN); - #endif - #if HAS_Y_MIN - ES_LABEL(Y_MIN); - #endif - #if HAS_Z_MIN - ES_LABEL(Z_MIN); - #endif - #if HAS_FILAMENT_SENSOR - draw_es_label(F(STR_FILAMENT)); - #endif + TERN_(HAS_X_MIN, ES_LABEL(X_MIN)); TERN_(HAS_X_MAX, ES_LABEL(X_MAX)); + TERN_(HAS_Y_MIN, ES_LABEL(Y_MIN)); TERN_(HAS_Y_MAX, ES_LABEL(Y_MAX)); + TERN_(HAS_Z_MIN, ES_LABEL(Z_MIN)); TERN_(HAS_Z_MAX, ES_LABEL(Z_MAX)); + TERN_(HAS_FILAMENT_SENSOR, draw_es_label(F(STR_FILAMENT))); Update(); } void ESDiagClass::Update() { DWINUI::cursor.y = 80; #define ES_REPORT(S) draw_es_state(READ(S##_PIN) == S##_ENDSTOP_HIT_STATE) - #if HAS_X_MIN - ES_REPORT(X_MIN); - #endif - #if HAS_Y_MIN - ES_REPORT(Y_MIN); - #endif - #if HAS_Z_MIN - ES_REPORT(Z_MIN); - #endif - #if HAS_FILAMENT_SENSOR - draw_es_state(READ(FIL_RUNOUT1_PIN) != FIL_RUNOUT1_STATE); - #endif + TERN_(HAS_X_MIN, ES_REPORT(X_MIN)); TERN_(HAS_X_MAX, ES_REPORT(X_MAX)); + TERN_(HAS_Y_MIN, ES_REPORT(Y_MIN)); TERN_(HAS_Y_MAX, ES_REPORT(Y_MAX)); + TERN_(HAS_Z_MIN, ES_REPORT(Z_MIN)); TERN_(HAS_Z_MAX, ES_REPORT(Z_MAX)); + TERN_(HAS_FILAMENT_SENSOR, draw_es_state(READ(FIL_RUNOUT1_PIN) != FIL_RUNOUT1_STATE)); DWIN_UpdateLCD(); } diff --git a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp index d1679d402f09..24e177df392c 100644 --- a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp +++ b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp @@ -45,32 +45,32 @@ #if PIN_EXISTS(MT_DET_2) bool mt_det2_sta; #endif - #if X_HOME_DIR + #if HAS_X_ENDSTOP bool endstopx1_sta; #else constexpr static bool endstopx1_sta = true; #endif - #if HAS_X2_MIN || HAS_X2_MAX + #if HAS_X2_ENDSTOP bool endstopx2_sta; #else constexpr static bool endstopx2_sta = true; #endif - #if HAS_Y_AXIS && Y_HOME_DIR + #if HAS_Y_ENDSTOP bool endstopy1_sta; #else constexpr static bool endstopy1_sta = true; #endif - #if HAS_Y2_MIN || HAS_Y2_MAX + #if HAS_Y2_ENDSTOP bool endstopy2_sta; #else constexpr static bool endstopy2_sta = true; #endif - #if HAS_Z_AXIS && Z_HOME_DIR + #if HAS_Z_ENDSTOP bool endstopz1_sta; #else constexpr static bool endstopz1_sta = true; #endif - #if HAS_Z2_MIN || HAS_Z2_MAX + #if HAS_Z2_ENDSTOP bool endstopz2_sta; #else constexpr static bool endstopz2_sta = true; @@ -87,36 +87,12 @@ #if PIN_EXISTS(MT_DET_2) mt_det2_sta = (READ(MT_DET_2_PIN) == LOW); #endif - #if HAS_X_MIN - endstopx1_sta = ESTATE(X_MIN); - #elif HAS_X_MAX - endstopx1_sta = ESTATE(X_MAX); - #endif - #if HAS_X2_MIN - endstopx2_sta = ESTATE(X2_MIN); - #elif HAS_X2_MAX - endstopx2_sta = ESTATE(X2_MAX); - #endif - #if HAS_Y_MIN - endstopy1_sta = ESTATE(Y_MIN); - #elif HAS_Y_MAX - endstopy1_sta = ESTATE(Y_MAX); - #endif - #if HAS_Y2_MIN - endstopy2_sta = ESTATE(Y2_MIN); - #elif HAS_Y2_MAX - endstopy2_sta = ESTATE(Y2_MAX); - #endif - #if HAS_Z_MIN - endstopz1_sta = ESTATE(Z_MIN); - #elif HAS_Z_MAX - endstopz1_sta = ESTATE(Z_MAX); - #endif - #if HAS_Z2_MIN - endstopz2_sta = ESTATE(Z2_MIN); - #elif HAS_Z2_MAX - endstopz2_sta = ESTATE(Z2_MAX); - #endif + TERN_(HAS_X_ENDSTOP, endstopx1_sta = ESTATE(TERN(HAS_X_MIN, X_MIN, X_MAX))); + TERN_(HAS_X2_ENDSTOP, endstopx2_sta = ESTATE(TERN(HAS_X2_MIN, X2_MIN, X2_MAX))); + TERN_(HAS_Y_ENDSTOP, endstopy1_sta = ESTATE(TERN(HAS_Y_MIN, Y_MIN, Y_MAX))); + TERN_(HAS_Y2_ENDSTOP, endstopy2_sta = ESTATE(TERN(HAS_Y2_MIN, Y2_MIN, Y2_MAX))); + TERN_(HAS_Z_ENDSTOP, endstopz1_sta = ESTATE(TERN(HAS_Z_MIN, Z_MIN, Z_MAX))); + TERN_(HAS_Z2_ENDSTOP, endstopz2_sta = ESTATE(TERN(HAS_Z2_MIN, Z2_MIN, Z2_MAX))); } void test_gpio_readlevel_H() { @@ -128,36 +104,12 @@ #if PIN_EXISTS(MT_DET_2) mt_det2_sta = (READ(MT_DET_2_PIN) == HIGH); #endif - #if HAS_X_MIN - endstopx1_sta = !ESTATE(X_MIN); - #elif HAS_X_MAX - endstopx1_sta = !ESTATE(X_MAX); - #endif - #if HAS_X2_MIN - endstopx2_sta = !ESTATE(X2_MIN); - #elif HAS_X2_MAX - endstopx2_sta = !ESTATE(X2_MAX); - #endif - #if HAS_Y_MIN - endstopy1_sta = !ESTATE(Y_MIN); - #elif HAS_Y_MAX - endstopy1_sta = !ESTATE(Y_MAX); - #endif - #if HAS_Y2_MIN - endstopy2_sta = !ESTATE(Y2_MIN); - #elif HAS_Y2_MAX - endstopy2_sta = !ESTATE(Y2_MAX); - #endif - #if HAS_Z_MIN - endstopz1_sta = !ESTATE(Z_MIN); - #elif HAS_Z_MAX - endstopz1_sta = !ESTATE(Z_MAX); - #endif - #if HAS_Z2_MIN - endstopz2_sta = !ESTATE(Z2_MIN); - #elif HAS_Z2_MAX - endstopz2_sta = !ESTATE(Z2_MAX); - #endif + TERN_(HAS_X_ENDSTOP, endstopx1_sta = !ESTATE(TERN(HAS_X_MIN, X_MIN, X_MAX))); + TERN_(HAS_X2_ENDSTOP, endstopx2_sta = !ESTATE(TERN(HAS_X2_MIN, X2_MIN, X2_MAX))); + TERN_(HAS_Y_ENDSTOP, endstopy1_sta = !ESTATE(TERN(HAS_Y_MIN, Y_MIN, Y_MAX))); + TERN_(HAS_Y2_ENDSTOP, endstopy2_sta = !ESTATE(TERN(HAS_Y2_MIN, Y2_MIN, Y2_MAX))); + TERN_(HAS_Z_ENDSTOP, endstopz1_sta = !ESTATE(TERN(HAS_Z_MIN, Z_MIN, Z_MAX))); + TERN_(HAS_Z2_ENDSTOP, endstopz2_sta = !ESTATE(TERN(HAS_Z2_MIN, Z2_MIN, Z2_MAX))); } #include "../../../libs/buzzer.h" @@ -178,7 +130,9 @@ SET_INPUT_PULLUP(MKS_TEST_PS_ON_PIN); SET_INPUT_PULLUP(SERVO0_PIN); - OUT_WRITE(X_ENABLE_PIN, LOW); + #if HAS_X_AXIS + OUT_WRITE(X_ENABLE_PIN, LOW); + #endif #if HAS_Y_AXIS OUT_WRITE(Y_ENABLE_PIN, LOW); #endif diff --git a/Marlin/src/lcd/language/language_en.h b/Marlin/src/lcd/language/language_en.h index 244d61a712ca..9a64587f15f2 100644 --- a/Marlin/src/lcd/language/language_en.h +++ b/Marlin/src/lcd/language/language_en.h @@ -76,6 +76,8 @@ namespace Language_en { LSTR MSG_DISABLE_STEPPERS = _UxGT("Disable Steppers"); LSTR MSG_DEBUG_MENU = _UxGT("Debug Menu"); LSTR MSG_PROGRESS_BAR_TEST = _UxGT("Progress Bar Test"); + LSTR MSG_ENDSTOP_TEST = _UxGT("Endstop Test"); + LSTR MSG_Z_PROBE = _UxGT("Z Probe"); LSTR MSG_HOMING = _UxGT("Homing"); LSTR MSG_AUTO_HOME = _UxGT("Auto Home"); LSTR MSG_AUTO_HOME_A = _UxGT("Home @"); @@ -430,6 +432,7 @@ namespace Language_en { LSTR MSG_TEMPERATURE = _UxGT("Temperature"); LSTR MSG_MOTION = _UxGT("Motion"); LSTR MSG_FILAMENT = _UxGT("Filament"); + LSTR MSG_FILAMENT_EN = _UxGT("Filament *"); LSTR MSG_VOLUMETRIC_ENABLED = _UxGT("E in mm") SUPERSCRIPT_THREE; LSTR MSG_VOLUMETRIC_LIMIT = _UxGT("E Limit in mm") SUPERSCRIPT_THREE; LSTR MSG_VOLUMETRIC_LIMIT_E = _UxGT("E Limit *"); diff --git a/Marlin/src/lcd/menu/menu.h b/Marlin/src/lcd/menu/menu.h index 9b9c67886880..06d9c846cc97 100644 --- a/Marlin/src/lcd/menu/menu.h +++ b/Marlin/src/lcd/menu/menu.h @@ -35,7 +35,8 @@ typedef void (*selectFunc_t)(); #define SS_LEFT 0x00 #define SS_CENTER 0x01 -#define SS_INVERT 0x02 +#define SS_FULL 0x02 +#define SS_INVERT 0x04 #define SS_DEFAULT SS_CENTER #if ENABLED(BABYSTEP_ZPROBE_OFFSET) && Z_PROBE_OFFSET_RANGE_MIN >= -9 && Z_PROBE_OFFSET_RANGE_MAX <= 9 @@ -75,7 +76,7 @@ class MenuItemBase { // STATIC_ITEM(LABEL,...) class MenuItem_static : public MenuItemBase { public: - static void draw(const uint8_t row, FSTR_P const fstr, const uint8_t style=SS_DEFAULT, const char * const vstr=nullptr); + static void draw(const uint8_t row, FSTR_P const fstr, const uint8_t style=SS_DEFAULT, const char *vstr=nullptr); }; // BACK_ITEM(LABEL) diff --git a/Marlin/src/lcd/menu/menu_configuration.cpp b/Marlin/src/lcd/menu/menu_configuration.cpp index 3ff4b2e56257..2fe4b7701843 100644 --- a/Marlin/src/lcd/menu/menu_configuration.cpp +++ b/Marlin/src/lcd/menu/menu_configuration.cpp @@ -32,6 +32,10 @@ #include "../../MarlinCore.h" +#if ENABLED(LCD_ENDSTOP_TEST) + #include "../../module/endstops.h" +#endif + #if HAS_FILAMENT_SENSOR #include "../../feature/runout.h" #endif @@ -57,7 +61,7 @@ #include "../../core/debug_out.h" -#define HAS_DEBUG_MENU ENABLED(LCD_PROGRESS_BAR_TEST) +#define HAS_DEBUG_MENU EITHER(LCD_PROGRESS_BAR_TEST, LCD_ENDSTOP_TEST) void menu_advanced_settings(); #if EITHER(DELTA_CALIBRATION_MENU, DELTA_AUTO_CALIBRATION) @@ -90,6 +94,83 @@ void menu_advanced_settings(); #endif // LCD_PROGRESS_BAR_TEST +#if ENABLED(LCD_ENDSTOP_TEST) + + #include "../lcdprint.h" + + #define __STOP_ITEM(F,S) PSTRING_ITEM_F_P(F, TEST(stops, S) ? PSTR(STR_ENDSTOP_HIT) : PSTR(STR_ENDSTOP_OPEN), SS_FULL) + #define _STOP_ITEM(L,S) __STOP_ITEM(F(L), S) + #define STOP_ITEM(A,I) _STOP_ITEM(STRINGIFY(A) STRINGIFY(I) " " TERN(A##_HOME_TO_MAX, "Max", "Min"), A##I##_ENDSTOP) + #define FIL_ITEM(N) PSTRING_ITEM_N_P(N-1, MSG_FILAMENT_EN, (READ(FIL_RUNOUT##N##_PIN) != FIL_RUNOUT##N##_STATE) ? PSTR("PRESENT") : PSTR("out"), SS_FULL); + + static void endstop_test() { + if (ui.use_click()) { + ui.goto_previous_screen(); + //endstops.enable_globally(false); + return; + } + TemporaryGlobalEndstopsState temp(true); + ui.defer_status_screen(true); + const Endstops::endstop_mask_t stops = endstops.state(); + + START_SCREEN(); + STATIC_ITEM_F(GET_TEXT_F(MSG_ENDSTOP_TEST), SS_DEFAULT|SS_INVERT); + + #if HAS_X_ENDSTOP + STOP_ITEM(X,); + #if ENABLED(X_DUAL_ENDSTOPS) + STOP_ITEM(X,2); + #endif + #endif + #if HAS_Y_ENDSTOP + STOP_ITEM(Y,); + #if ENABLED(Y_DUAL_ENDSTOPS) + STOP_ITEM(Y,2); + #endif + #endif + #if HAS_Z_ENDSTOP + STOP_ITEM(Z,); + #if ENABLED(Z_MULTI_ENDSTOPS) + STOP_ITEM(Z,2); + #if NUM_Z_STEPPERS >= 3 + STOP_ITEM(Z,3); + #if NUM_Z_STEPPERS >= 4 + STOP_ITEM(Z,4); + #endif + #endif + #endif + #endif + #if HAS_I_ENDSTOP + STOP_ITEM(I,); + #endif + #if HAS_J_ENDSTOP + STOP_ITEM(J,); + #endif + #if HAS_K_ENDSTOP + STOP_ITEM(K,); + #endif + #if HAS_U_ENDSTOP + STOP_ITEM(U,); + #endif + #if HAS_V_ENDSTOP + STOP_ITEM(V,); + #endif + #if HAS_W_ENDSTOP + STOP_ITEM(W,); + #endif + #if HAS_BED_PROBE && !HAS_DELTA_SENSORLESS_PROBING + __STOP_ITEM(GET_TEXT_F(MSG_Z_PROBE), Z_MIN_PROBE); + #endif + #if ENABLED(FILAMENT_RUNOUT_SENSOR) + REPEAT_1(NUM_RUNOUT_SENSORS, FIL_ITEM) + #endif + + END_SCREEN(); + ui.refresh(LCDVIEW_CALL_REDRAW_NEXT); + } + +#endif // LCD_ENDSTOP_TEST + #if HAS_DEBUG_MENU void menu_debug() { @@ -101,6 +182,10 @@ void menu_advanced_settings(); SUBMENU(MSG_PROGRESS_BAR_TEST, _progress_bar_test); #endif + #if ENABLED(LCD_ENDSTOP_TEST) + SUBMENU(MSG_ENDSTOP_TEST, endstop_test); + #endif + END_MENU(); } @@ -161,7 +246,7 @@ void menu_advanced_settings(); } #endif -#endif +#endif // HAS_MULTI_EXTRUDER #if HAS_HOTEND_OFFSET #include "../../module/motion.h" diff --git a/Marlin/src/lcd/menu/menu_info.cpp b/Marlin/src/lcd/menu/menu_info.cpp index abca4a7d1598..e2dd6c647527 100644 --- a/Marlin/src/lcd/menu/menu_info.cpp +++ b/Marlin/src/lcd/menu/menu_info.cpp @@ -51,40 +51,40 @@ char buffer[21]; - START_SCREEN(); // 12345678901234567890 - VALUE_ITEM(MSG_INFO_PRINT_COUNT, i16tostr3left(stats.totalPrints), SS_LEFT); // Print Count: 999 - VALUE_ITEM(MSG_INFO_COMPLETED_PRINTS, i16tostr3left(stats.finishedPrints), SS_LEFT); // Completed : 666 + START_SCREEN(); // 12345678901234567890 + VALUE_ITEM(MSG_INFO_PRINT_COUNT, i16tostr3left(stats.totalPrints), SS_FULL); // Print Count: 999 + VALUE_ITEM(MSG_INFO_COMPLETED_PRINTS, i16tostr3left(stats.finishedPrints), SS_FULL); // Completed : 666 - STATIC_ITEM(MSG_INFO_PRINT_TIME, SS_LEFT); // Total print Time: - STATIC_ITEM_F(F("> "), SS_LEFT, duration_t(stats.printTime).toString(buffer)); // > 99y 364d 23h 59m 59s + STATIC_ITEM(MSG_INFO_PRINT_TIME, SS_FULL); // Total print Time: + STATIC_ITEM_F(nullptr, SS_FULL, duration_t(stats.printTime).toString(buffer)); // > 99y 364d 23h 59m 59s - STATIC_ITEM(MSG_INFO_PRINT_LONGEST, SS_LEFT); // Longest job time: - STATIC_ITEM_F(F("> "), SS_LEFT, duration_t(stats.longestPrint).toString(buffer)); // > 99y 364d 23h 59m 59s + STATIC_ITEM(MSG_INFO_PRINT_LONGEST, SS_FULL); // Longest job time: + STATIC_ITEM_F(nullptr, SS_FULL, duration_t(stats.longestPrint).toString(buffer)); // > 99y 364d 23h 59m 59s - STATIC_ITEM(MSG_INFO_PRINT_FILAMENT, SS_LEFT); // Extruded total: + STATIC_ITEM(MSG_INFO_PRINT_FILAMENT, SS_FULL); // Extruded total: sprintf_P(buffer, PSTR("%ld.%im") , long(stats.filamentUsed / 1000) , int16_t(stats.filamentUsed / 100) % 10 ); - STATIC_ITEM_F(F("> "), SS_LEFT, buffer); // > 125m + STATIC_ITEM_F(nullptr, SS_FULL, buffer); // > 125m #if SERVICE_INTERVAL_1 > 0 || SERVICE_INTERVAL_2 > 0 || SERVICE_INTERVAL_3 > 0 strcpy_P(buffer, GET_TEXT(MSG_SERVICE_IN)); #endif #if SERVICE_INTERVAL_1 > 0 - STATIC_ITEM_F(F(SERVICE_NAME_1 " "), SS_LEFT, buffer); // Service X in: - STATIC_ITEM_F(F("> "), SS_LEFT, duration_t(stats.nextService1).toString(buffer)); // > 7d 12h 11m 10s + STATIC_ITEM_F(F(SERVICE_NAME_1 " "), SS_FULL, buffer); // Service X in: + STATIC_ITEM_F(nullptr, SS_FULL, duration_t(stats.nextService1).toString(buffer)); // > 7d 12h 11m 10s #endif #if SERVICE_INTERVAL_2 > 0 - STATIC_ITEM_F(F(SERVICE_NAME_2 " "), SS_LEFT, buffer); - STATIC_ITEM_F(F("> "), SS_LEFT, duration_t(stats.nextService2).toString(buffer)); + STATIC_ITEM_F(F(SERVICE_NAME_2 " "), SS_FULL, buffer); + STATIC_ITEM_F(nullptr, SS_FULL, duration_t(stats.nextService2).toString(buffer)); #endif #if SERVICE_INTERVAL_3 > 0 - STATIC_ITEM_F(F(SERVICE_NAME_3 " "), SS_LEFT, buffer); - STATIC_ITEM_F(F("> "), SS_LEFT, duration_t(stats.nextService3).toString(buffer)); + STATIC_ITEM_F(F(SERVICE_NAME_3 " "), SS_FULL, buffer); + STATIC_ITEM_F(nullptr, SS_FULL, duration_t(stats.nextService3).toString(buffer)); #endif END_SCREEN(); @@ -104,9 +104,9 @@ void menu_info_thermistors() { #define THERMISTOR_ID TEMP_SENSOR_0 #include "../thermistornames.h" STATIC_ITEM_F(F(STR_E0 ": " THERMISTOR_NAME), SS_INVERT); - PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_0_MINTEMP), SS_LEFT); - PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_0_MAXTEMP), SS_LEFT); - STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_LEFT); + PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_0_MINTEMP), SS_FULL); + PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_0_MAXTEMP), SS_FULL); + STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL); #endif #if TEMP_SENSOR_1 != 0 @@ -114,9 +114,9 @@ void menu_info_thermistors() { #define THERMISTOR_ID TEMP_SENSOR_1 #include "../thermistornames.h" STATIC_ITEM_F(F(STR_E1 ": " THERMISTOR_NAME), SS_INVERT); - PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_1_MINTEMP), SS_LEFT); - PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_1_MAXTEMP), SS_LEFT); - STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_LEFT); + PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_1_MINTEMP), SS_FULL); + PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_1_MAXTEMP), SS_FULL); + STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL); #endif #if TEMP_SENSOR_2 != 0 @@ -124,9 +124,9 @@ void menu_info_thermistors() { #define THERMISTOR_ID TEMP_SENSOR_2 #include "../thermistornames.h" STATIC_ITEM_F(F(STR_E2 ": " THERMISTOR_NAME), SS_INVERT); - PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_2_MINTEMP), SS_LEFT); - PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_2_MAXTEMP), SS_LEFT); - STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_LEFT); + PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_2_MINTEMP), SS_FULL); + PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_2_MAXTEMP), SS_FULL); + STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL); #endif #if TEMP_SENSOR_3 != 0 @@ -134,9 +134,9 @@ void menu_info_thermistors() { #define THERMISTOR_ID TEMP_SENSOR_3 #include "../thermistornames.h" STATIC_ITEM_F(F(STR_E3 ": " THERMISTOR_NAME), SS_INVERT); - PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_3_MINTEMP), SS_LEFT); - PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_3_MAXTEMP), SS_LEFT); - STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_LEFT); + PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_3_MINTEMP), SS_FULL); + PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_3_MAXTEMP), SS_FULL); + STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL); #endif #if TEMP_SENSOR_4 != 0 @@ -144,9 +144,9 @@ void menu_info_thermistors() { #define THERMISTOR_ID TEMP_SENSOR_4 #include "../thermistornames.h" STATIC_ITEM_F(F(STR_E4 ": " THERMISTOR_NAME), SS_INVERT); - PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_4_MINTEMP), SS_LEFT); - PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_4_MAXTEMP), SS_LEFT); - STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_LEFT); + PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_4_MINTEMP), SS_FULL); + PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_4_MAXTEMP), SS_FULL); + STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL); #endif #if TEMP_SENSOR_5 != 0 @@ -154,9 +154,9 @@ void menu_info_thermistors() { #define THERMISTOR_ID TEMP_SENSOR_5 #include "../thermistornames.h" STATIC_ITEM_F(F(STR_E5 ": " THERMISTOR_NAME), SS_INVERT); - PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_5_MINTEMP), SS_LEFT); - PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_5_MAXTEMP), SS_LEFT); - STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_LEFT); + PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_5_MINTEMP), SS_FULL); + PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_5_MAXTEMP), SS_FULL); + STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL); #endif #if TEMP_SENSOR_6 != 0 @@ -164,9 +164,9 @@ void menu_info_thermistors() { #define THERMISTOR_ID TEMP_SENSOR_6 #include "../thermistornames.h" STATIC_ITEM_F(F(STR_E6 ": " THERMISTOR_NAME), SS_INVERT); - PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_6_MINTEMP), SS_LEFT); - PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_6_MAXTEMP), SS_LEFT); - STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_LEFT); + PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_6_MINTEMP), SS_FULL); + PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_6_MAXTEMP), SS_FULL); + STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL); #endif #if TEMP_SENSOR_7 != 0 @@ -174,9 +174,9 @@ void menu_info_thermistors() { #define THERMISTOR_ID TEMP_SENSOR_7 #include "../thermistornames.h" STATIC_ITEM_F(F(STR_E7 ": " THERMISTOR_NAME), SS_INVERT); - PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_7_MINTEMP), SS_LEFT); - PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_7_MAXTEMP), SS_LEFT); - STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_LEFT); + PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_7_MINTEMP), SS_FULL); + PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_7_MAXTEMP), SS_FULL); + STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL); #endif #if HAS_HEATED_BED @@ -184,9 +184,9 @@ void menu_info_thermistors() { #define THERMISTOR_ID TEMP_SENSOR_BED #include "../thermistornames.h" STATIC_ITEM_F(F("BED: " THERMISTOR_NAME), SS_INVERT); - PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(BED_MINTEMP), SS_LEFT); - PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(BED_MAXTEMP), SS_LEFT); - STATIC_ITEM(TERN(WATCH_BED, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_LEFT); + PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(BED_MINTEMP), SS_FULL); + PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(BED_MAXTEMP), SS_FULL); + STATIC_ITEM(TERN(WATCH_BED, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL); #endif #if HAS_HEATED_CHAMBER @@ -194,9 +194,9 @@ void menu_info_thermistors() { #define THERMISTOR_ID TEMP_SENSOR_CHAMBER #include "../thermistornames.h" STATIC_ITEM_F(F("CHAM: " THERMISTOR_NAME), SS_INVERT); - PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(CHAMBER_MINTEMP), SS_LEFT); - PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(CHAMBER_MAXTEMP), SS_LEFT); - STATIC_ITEM(TERN(WATCH_CHAMBER, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_LEFT); + PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(CHAMBER_MINTEMP), SS_FULL); + PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(CHAMBER_MAXTEMP), SS_FULL); + STATIC_ITEM(TERN(WATCH_CHAMBER, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL); #endif #if HAS_COOLER @@ -204,9 +204,9 @@ void menu_info_thermistors() { #define THERMISTOR_ID TEMP_SENSOR_COOLER #include "../thermistornames.h" STATIC_ITEM_F(F("COOL: " THERMISTOR_NAME), SS_INVERT); - PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(COOLER_MINTEMP), SS_LEFT); - PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(COOLER_MAXTEMP), SS_LEFT); - STATIC_ITEM(TERN(WATCH_COOLER, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_LEFT); + PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(COOLER_MINTEMP), SS_FULL); + PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(COOLER_MAXTEMP), SS_FULL); + STATIC_ITEM(TERN(WATCH_COOLER, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL); #endif END_SCREEN(); diff --git a/Marlin/src/lcd/menu/menu_item.h b/Marlin/src/lcd/menu/menu_item.h index 31868520024e..805caa1d90d8 100644 --- a/Marlin/src/lcd/menu/menu_item.h +++ b/Marlin/src/lcd/menu/menu_item.h @@ -368,19 +368,29 @@ class MenuItem_bool : public MenuEditItemBase { NEXT_ITEM(); \ }while(0) -// PSTRING_ITEM is like STATIC_ITEM but it takes -// two PSTRs with the style as the last parameter. - -#define PSTRING_ITEM_F(FLABEL, PVAL, STYL) do{ \ - constexpr int m = 20; \ - char msg[m+1]; \ - msg[0] = ':'; msg[1] = ' '; \ - strncpy_P(msg+2, PSTR(PVAL), m-2); \ - if (msg[m-1] & 0x80) msg[m-1] = '\0'; \ - STATIC_ITEM_F(FLABEL, STYL, msg); \ +// PSTRING_ITEM is like STATIC_ITEM +// but also takes a PSTR and style. + +#define PSTRING_ITEM_F_P(FLABEL, PVAL, STYL) do{ \ + constexpr int m = 20; \ + char msg[m+1]; \ + if (_menuLineNr == _thisItemNr) { \ + msg[0] = ':'; msg[1] = ' '; \ + strncpy_P(msg+2, PVAL, m-2); \ + if (msg[m-1] & 0x80) msg[m-1] = '\0'; \ + } \ + STATIC_ITEM_F(FLABEL, STYL, msg); \ }while(0) -#define PSTRING_ITEM(LABEL, V...) PSTRING_ITEM_F(GET_TEXT_F(LABEL), ##V) +#define PSTRING_ITEM_N_F_P(N, V...) do{ \ + if (_menuLineNr == _thisItemNr) \ + MenuItemBase::init(N); \ + PSTRING_ITEM_F_P(V); \ +}while(0) + +#define PSTRING_ITEM_N_P(N, LABEL, V...) PSTRING_ITEM_N_F_P(N, GET_TEXT_F(LABEL), ##V) +#define PSTRING_ITEM_P(LABEL, V...) PSTRING_ITEM_F_P(GET_TEXT_F(LABEL), ##V) +#define PSTRING_ITEM(LABEL, S, V...) PSTRING_ITEM_P(LABEL, PSTR(S), ##V) #define STATIC_ITEM(LABEL, V...) STATIC_ITEM_F(GET_TEXT_F(LABEL), ##V) #define STATIC_ITEM_N(N, LABEL, V...) STATIC_ITEM_N_F(N, GET_TEXT_F(LABEL), ##V) diff --git a/Marlin/src/lcd/tft/ui_common.cpp b/Marlin/src/lcd/tft/ui_common.cpp index 6fbde791548d..6dee62820e1f 100644 --- a/Marlin/src/lcd/tft/ui_common.cpp +++ b/Marlin/src/lcd/tft/ui_common.cpp @@ -164,11 +164,28 @@ void MenuEditItemBase::draw(const bool sel, const uint8_t row, FSTR_P const fstr } // Draw a static item with no left-right margin required. Centered by default. -void MenuItem_static::draw(const uint8_t row, FSTR_P const fstr, const uint8_t style/*=SS_DEFAULT*/, const char * const vstr/*=nullptr*/) { +void MenuItem_static::draw(const uint8_t row, FSTR_P const fstr, const uint8_t style/*=SS_DEFAULT*/, const char *vstr/*=nullptr*/) { menu_item(row); + tft_string.set(fstr, itemIndex, itemStringC, itemStringF); - if (vstr) tft_string.add(vstr); - tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y_OFFSET, COLOR_YELLOW, tft_string); + + const bool center = bool(style & SS_CENTER), full = bool(style & SS_FULL); + if (!full || !vstr) { + if (vstr) tft_string.add(vstr); + tft.add_text(center ? tft_string.center(TFT_WIDTH) : 0, MENU_TEXT_Y_OFFSET, COLOR_YELLOW, tft_string); + return; + } + + // Move the leading colon from the value to the label + if (*vstr == ':') { tft_string.add(':'); vstr++; } + + // Left-justified label + tft.add_text(0, MENU_TEXT_Y_OFFSET, COLOR_YELLOW, tft_string); + + // Right-justified value, after spaces + while (*vstr == ' ') vstr++; + tft_string.set(vstr); + tft.add_text(TFT_WIDTH - 1 - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_YELLOW, tft_string); } #if ENABLED(SDSUPPORT) diff --git a/Marlin/src/module/endstops.h b/Marlin/src/module/endstops.h index e0c0de39a176..9e942dc18e2b 100644 --- a/Marlin/src/module/endstops.h +++ b/Marlin/src/module/endstops.h @@ -31,46 +31,43 @@ #define __ES_ITEM(N) N, #define _ES_ITEM(K,N) TERN_(K,DEFER4(__ES_ITEM)(N)) +/** + * Basic Endstop Flag Bits: + * - Each axis gets one endstop flag bit based on the homing direction (e.g., "EndstopEnum::X_MIN"). + * (The use of "MIN" or "MAX" makes it easier to pair with similarly-named endstop pins.) + * - Multi-stepper axes can optionally enable endstops for all axis steppers. + * - The bed probe gets a 'Z_PROBE' flag bit (but DELTA sensorless probing uses 3 endstops). + * + * Endstop Flag Bit Aliases: + * - Each *_MIN or *_MAX flag is aliased to *_ENDSTOP. + * - 'Z_ENDSTOP' is aliased to 'Z_PROBE' if homing with the probe. + */ enum EndstopEnum : char { // Common XYZ (ABC) endstops. Defined according to USE_[XYZ](MIN|MAX)_PLUG settings. - _ES_ITEM(HAS_X_MIN, X_MIN) - _ES_ITEM(HAS_X_MAX, X_MAX) - _ES_ITEM(HAS_Y_MIN, Y_MIN) - _ES_ITEM(HAS_Y_MAX, Y_MAX) - _ES_ITEM(HAS_Z_MIN, Z_MIN) - _ES_ITEM(HAS_Z_MAX, Z_MAX) - _ES_ITEM(HAS_I_MIN, I_MIN) - _ES_ITEM(HAS_I_MAX, I_MAX) - _ES_ITEM(HAS_J_MIN, J_MIN) - _ES_ITEM(HAS_J_MAX, J_MAX) - _ES_ITEM(HAS_K_MIN, K_MIN) - _ES_ITEM(HAS_K_MAX, K_MAX) - _ES_ITEM(HAS_U_MIN, U_MIN) - _ES_ITEM(HAS_U_MAX, U_MAX) - _ES_ITEM(HAS_V_MIN, V_MIN) - _ES_ITEM(HAS_V_MAX, V_MAX) - _ES_ITEM(HAS_W_MIN, W_MIN) - _ES_ITEM(HAS_W_MAX, W_MAX) + _ES_ITEM(HAS_X_MIN, X_MIN) _ES_ITEM(HAS_X_MAX, X_MAX) + _ES_ITEM(HAS_Y_MIN, Y_MIN) _ES_ITEM(HAS_Y_MAX, Y_MAX) + _ES_ITEM(HAS_Z_MIN, Z_MIN) _ES_ITEM(HAS_Z_MAX, Z_MAX) + _ES_ITEM(HAS_I_MIN, I_MIN) _ES_ITEM(HAS_I_MAX, I_MAX) + _ES_ITEM(HAS_J_MIN, J_MIN) _ES_ITEM(HAS_J_MAX, J_MAX) + _ES_ITEM(HAS_K_MIN, K_MIN) _ES_ITEM(HAS_K_MAX, K_MAX) + _ES_ITEM(HAS_U_MIN, U_MIN) _ES_ITEM(HAS_U_MAX, U_MAX) + _ES_ITEM(HAS_V_MIN, V_MIN) _ES_ITEM(HAS_V_MAX, V_MAX) + _ES_ITEM(HAS_W_MIN, W_MIN) _ES_ITEM(HAS_W_MAX, W_MAX) // Extra Endstops for XYZ #if ENABLED(X_DUAL_ENDSTOPS) - _ES_ITEM(HAS_X_MIN, X2_MIN) - _ES_ITEM(HAS_X_MAX, X2_MAX) + _ES_ITEM(HAS_X_MIN, X2_MIN) _ES_ITEM(HAS_X_MAX, X2_MAX) #endif #if ENABLED(Y_DUAL_ENDSTOPS) - _ES_ITEM(HAS_Y_MIN, Y2_MIN) - _ES_ITEM(HAS_Y_MAX, Y2_MAX) + _ES_ITEM(HAS_Y_MIN, Y2_MIN) _ES_ITEM(HAS_Y_MAX, Y2_MAX) #endif #if ENABLED(Z_MULTI_ENDSTOPS) - _ES_ITEM(HAS_Z_MIN, Z2_MIN) - _ES_ITEM(HAS_Z_MAX, Z2_MAX) + _ES_ITEM(HAS_Z_MIN, Z2_MIN) _ES_ITEM(HAS_Z_MAX, Z2_MAX) #if NUM_Z_STEPPERS >= 3 - _ES_ITEM(HAS_Z_MIN, Z3_MIN) - _ES_ITEM(HAS_Z_MAX, Z3_MAX) - #endif - #if NUM_Z_STEPPERS >= 4 - _ES_ITEM(HAS_Z_MIN, Z4_MIN) - _ES_ITEM(HAS_Z_MAX, Z4_MAX) + _ES_ITEM(HAS_Z_MIN, Z3_MIN) _ES_ITEM(HAS_Z_MAX, Z3_MAX) + #if NUM_Z_STEPPERS >= 4 + _ES_ITEM(HAS_Z_MIN, Z4_MIN) _ES_ITEM(HAS_Z_MAX, Z4_MAX) + #endif #endif #endif @@ -83,30 +80,50 @@ enum EndstopEnum : char { NUM_ENDSTOP_STATES // Endstops can be either MIN or MAX but not both - #if HAS_X_MIN || HAS_X_MAX + #if HAS_X_ENDSTOP , X_ENDSTOP = TERN(X_HOME_TO_MAX, X_MAX, X_MIN) #if ENABLED(X_DUAL_ENDSTOPS) , X2_ENDSTOP = TERN(X_HOME_TO_MAX, X2_MAX, X2_MIN) #endif #endif - #if HAS_Y_MIN || HAS_Y_MAX + #if HAS_Y_ENDSTOP , Y_ENDSTOP = TERN(Y_HOME_TO_MAX, Y_MAX, Y_MIN) #if ENABLED(Y_DUAL_ENDSTOPS) , Y2_ENDSTOP = TERN(Y_HOME_TO_MAX, Y2_MAX, Y2_MIN) #endif #endif - #if HAS_Z_MIN || HAS_Z_MAX || HOMING_Z_WITH_PROBE - , Z_ENDSTOP = TERN(HOMING_Z_WITH_PROBE, Z_MIN_PROBE, TERN(Z_HOME_TO_MAX, Z_MAX, Z_MIN)) + #if HOMING_Z_WITH_PROBE + , Z_ENDSTOP = Z_MIN_PROBE + #elif HAS_Z_ENDSTOP + , Z_ENDSTOP = TERN(Z_HOME_TO_MAX, Z_MAX, Z_MIN) + #if ENABLED(Z_MULTI_ENDSTOPS) + , Z2_ENDSTOP = TERN(Z_HOME_TO_MAX, Z2_MAX, Z2_MIN) + #if NUM_Z_STEPPERS >= 3 + , Z3_ENDSTOP = TERN(Z_HOME_TO_MAX, Z3_MAX, Z3_MIN) + #if NUM_Z_STEPPERS >= 4 + , Z4_ENDSTOP = TERN(Z_HOME_TO_MAX, Z4_MAX, Z4_MIN) + #endif + #endif + #endif #endif - #if HAS_I_MIN || HAS_I_MAX + #if HAS_I_ENDSTOP , I_ENDSTOP = TERN(I_HOME_TO_MAX, I_MAX, I_MIN) #endif - #if HAS_J_MIN || HAS_J_MAX + #if HAS_J_ENDSTOP , J_ENDSTOP = TERN(J_HOME_TO_MAX, J_MAX, J_MIN) #endif - #if HAS_K_MIN || HAS_K_MAX + #if HAS_K_ENDSTOP , K_ENDSTOP = TERN(K_HOME_TO_MAX, K_MAX, K_MIN) #endif + #if HAS_U_ENDSTOP + , U_ENDSTOP = TERN(U_HOME_TO_MAX, U_MAX, U_MIN) + #endif + #if HAS_V_ENDSTOP + , V_ENDSTOP = TERN(V_HOME_TO_MAX, V_MAX, V_MIN) + #endif + #if HAS_W_ENDSTOP + , W_ENDSTOP = TERN(W_HOME_TO_MAX, W_MAX, W_MIN) + #endif }; #undef __ES_ITEM diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index 6917bbc42a56..589299f2f1a0 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -2171,32 +2171,9 @@ void prepare_line_to_destination() { // Check for a broken endstop EndstopEnum es; switch (axis) { - default: - case X_AXIS: es = X_ENDSTOP; break; - #if HAS_Y_AXIS - case Y_AXIS: es = Y_ENDSTOP; break; - #endif - #if HAS_Z_AXIS - case Z_AXIS: es = Z_ENDSTOP; break; - #endif - #if HAS_I_AXIS - case I_AXIS: es = I_ENDSTOP; break; - #endif - #if HAS_J_AXIS - case J_AXIS: es = J_ENDSTOP; break; - #endif - #if HAS_K_AXIS - case K_AXIS: es = K_ENDSTOP; break; - #endif - #if HAS_U_AXIS - case U_AXIS: es = U_ENDSTOP; break; - #endif - #if HAS_V_AXIS - case V_AXIS: es = V_ENDSTOP; break; - #endif - #if HAS_W_AXIS - case W_AXIS: es = W_ENDSTOP; break; - #endif + #define _ESCASE(A) case A##_AXIS: es = A##_ENDSTOP; break; + MAIN_AXIS_MAP(_ESCASE) + default: break; } if (TEST(endstops.state(), es)) { SERIAL_ECHO_MSG("Bad ", AS_CHAR(AXIS_CHAR(axis)), " Endstop?"); diff --git a/Marlin/src/module/probe.cpp b/Marlin/src/module/probe.cpp index 75295c5f5a4d..3e7db5a0775b 100644 --- a/Marlin/src/module/probe.cpp +++ b/Marlin/src/module/probe.cpp @@ -551,6 +551,7 @@ bool Probe::set_deployed(const bool deploy, const bool no_return/*=false*/) { #endif // If preheating is required before any probing... + // TODO: Consider skipping this for things like M401, G34, etc. TERN_(PREHEAT_BEFORE_PROBING, if (deploy) preheat_for_probing(PROBING_NOZZLE_TEMP, PROBING_BED_TEMP)); if (!no_return) do_blocking_move_to(old_xy); // Return to the original location unless handled externally @@ -1020,15 +1021,16 @@ float Probe::probe_at_point(const_float_t rx, const_float_t ry, const ProbePtRai void Probe::refresh_largest_sensorless_adj() { DEBUG_SECTION(rso, "Probe::refresh_largest_sensorless_adj", true); largest_sensorless_adj = -3; // A reference away from any real probe height - if (TEST(endstops.state(), X_MAX)) { + const Endstops::endstop_mask_t state = endstops.state(); + if (TEST(state, X_MAX)) { NOLESS(largest_sensorless_adj, offset_sensorless_adj.a); DEBUG_ECHOLNPGM("Endstop_X: ", largest_sensorless_adj, " TowerX"); } - if (TEST(endstops.state(), Y_MAX)) { + if (TEST(state, Y_MAX)) { NOLESS(largest_sensorless_adj, offset_sensorless_adj.b); DEBUG_ECHOLNPGM("Endstop_Y: ", largest_sensorless_adj, " TowerY"); } - if (TEST(endstops.state(), Z_MAX)) { + if (TEST(state, Z_MAX)) { NOLESS(largest_sensorless_adj, offset_sensorless_adj.c); DEBUG_ECHOLNPGM("Endstop_Z: ", largest_sensorless_adj, " TowerZ"); } diff --git a/Marlin/src/pins/pins_postprocess.h b/Marlin/src/pins/pins_postprocess.h index 708eb7f8e6cf..6ae99d2f5706 100644 --- a/Marlin/src/pins/pins_postprocess.h +++ b/Marlin/src/pins/pins_postprocess.h @@ -1867,487 +1867,467 @@ * X_DUAL_ENDSTOPS endstop reassignment */ #if ENABLED(X_DUAL_ENDSTOPS) - #if X_HOME_TO_MAX - #ifndef X2_MAX_PIN - #if PIN_EXISTS(X2_STOP) - #define X2_MAX_PIN X2_STOP_PIN - #elif X2_USE_ENDSTOP == _XMIN_ - #define X2_MAX_PIN X_MIN_PIN - #elif X2_USE_ENDSTOP == _XMAX_ - #define X2_MAX_PIN X_MAX_PIN - #elif X2_USE_ENDSTOP == _XSTOP_ - #define X2_MAX_PIN X_STOP_PIN - #elif X2_USE_ENDSTOP == _YMIN_ - #define X2_MAX_PIN Y_MIN_PIN - #elif X2_USE_ENDSTOP == _YMAX_ - #define X2_MAX_PIN Y_MAX_PIN - #elif X2_USE_ENDSTOP == _YSTOP_ - #define X2_MAX_PIN Y_STOP_PIN - #elif X2_USE_ENDSTOP == _ZMIN_ - #define X2_MAX_PIN Z_MIN_PIN - #elif X2_USE_ENDSTOP == _ZMAX_ - #define X2_MAX_PIN Z_MAX_PIN - #elif X2_USE_ENDSTOP == _ZSTOP_ - #define X2_MAX_PIN Z_STOP_PIN - #elif X2_USE_ENDSTOP == _XDIAG_ - #define X2_MAX_PIN X_DIAG_PIN - #elif X2_USE_ENDSTOP == _YDIAG_ - #define X2_MAX_PIN Y_DIAG_PIN - #elif X2_USE_ENDSTOP == _ZDIAG_ - #define X2_MAX_PIN Z_DIAG_PIN - #elif X2_USE_ENDSTOP == _E0DIAG_ - #define X2_MAX_PIN E0_DIAG_PIN - #elif X2_USE_ENDSTOP == _E1DIAG_ - #define X2_MAX_PIN E1_DIAG_PIN - #elif X2_USE_ENDSTOP == _E2DIAG_ - #define X2_MAX_PIN E2_DIAG_PIN - #elif X2_USE_ENDSTOP == _E3DIAG_ - #define X2_MAX_PIN E3_DIAG_PIN - #elif X2_USE_ENDSTOP == _E4DIAG_ - #define X2_MAX_PIN E4_DIAG_PIN - #elif X2_USE_ENDSTOP == _E5DIAG_ - #define X2_MAX_PIN E5_DIAG_PIN - #elif X2_USE_ENDSTOP == _E6DIAG_ - #define X2_MAX_PIN E6_DIAG_PIN - #elif X2_USE_ENDSTOP == _E7DIAG_ - #define X2_MAX_PIN E7_DIAG_PIN - #endif - #endif - #else - #ifndef X2_MIN_PIN - #if PIN_EXISTS(X2_STOP) - #define X2_MIN_PIN X2_STOP_PIN - #elif X2_USE_ENDSTOP == _XMIN_ - #define X2_MIN_PIN X_MIN_PIN - #elif X2_USE_ENDSTOP == _XMAX_ - #define X2_MIN_PIN X_MAX_PIN - #elif X2_USE_ENDSTOP == _XSTOP_ - #define X2_MIN_PIN X_STOP_PIN - #elif X2_USE_ENDSTOP == _YMIN_ - #define X2_MIN_PIN Y_MIN_PIN - #elif X2_USE_ENDSTOP == _YMAX_ - #define X2_MIN_PIN Y_MAX_PIN - #elif X2_USE_ENDSTOP == _YSTOP_ - #define X2_MIN_PIN Y_STOP_PIN - #elif X2_USE_ENDSTOP == _ZMIN_ - #define X2_MIN_PIN Z_MIN_PIN - #elif X2_USE_ENDSTOP == _ZMAX_ - #define X2_MIN_PIN Z_MAX_PIN - #elif X2_USE_ENDSTOP == _ZSTOP_ - #define X2_MIN_PIN Z_STOP_PIN - #elif X2_USE_ENDSTOP == _XDIAG_ - #define X2_MIN_PIN X_DIAG_PIN - #elif X2_USE_ENDSTOP == _YDIAG_ - #define X2_MIN_PIN Y_DIAG_PIN - #elif X2_USE_ENDSTOP == _ZDIAG_ - #define X2_MIN_PIN Z_DIAG_PIN - #elif X2_USE_ENDSTOP == _E0DIAG_ - #define X2_MIN_PIN E0_DIAG_PIN - #elif X2_USE_ENDSTOP == _E1DIAG_ - #define X2_MIN_PIN E1_DIAG_PIN - #elif X2_USE_ENDSTOP == _E2DIAG_ - #define X2_MIN_PIN E2_DIAG_PIN - #elif X2_USE_ENDSTOP == _E3DIAG_ - #define X2_MIN_PIN E3_DIAG_PIN - #elif X2_USE_ENDSTOP == _E4DIAG_ - #define X2_MIN_PIN E4_DIAG_PIN - #elif X2_USE_ENDSTOP == _E5DIAG_ - #define X2_MIN_PIN E5_DIAG_PIN - #elif X2_USE_ENDSTOP == _E6DIAG_ - #define X2_MIN_PIN E6_DIAG_PIN - #elif X2_USE_ENDSTOP == _E7DIAG_ - #define X2_MIN_PIN E7_DIAG_PIN - #endif - #endif - #endif -#endif + #if X_HOME_TO_MAX && !defined(X2_MAX_PIN) + #if PIN_EXISTS(X2_STOP) + #define X2_MAX_PIN X2_STOP_PIN + #elif X2_USE_ENDSTOP == _XMIN_ + #define X2_MAX_PIN X_MIN_PIN + #elif X2_USE_ENDSTOP == _XMAX_ + #define X2_MAX_PIN X_MAX_PIN + #elif X2_USE_ENDSTOP == _XSTOP_ + #define X2_MAX_PIN X_STOP_PIN + #elif X2_USE_ENDSTOP == _YMIN_ + #define X2_MAX_PIN Y_MIN_PIN + #elif X2_USE_ENDSTOP == _YMAX_ + #define X2_MAX_PIN Y_MAX_PIN + #elif X2_USE_ENDSTOP == _YSTOP_ + #define X2_MAX_PIN Y_STOP_PIN + #elif X2_USE_ENDSTOP == _ZMIN_ + #define X2_MAX_PIN Z_MIN_PIN + #elif X2_USE_ENDSTOP == _ZMAX_ + #define X2_MAX_PIN Z_MAX_PIN + #elif X2_USE_ENDSTOP == _ZSTOP_ + #define X2_MAX_PIN Z_STOP_PIN + #elif X2_USE_ENDSTOP == _XDIAG_ + #define X2_MAX_PIN X_DIAG_PIN + #elif X2_USE_ENDSTOP == _YDIAG_ + #define X2_MAX_PIN Y_DIAG_PIN + #elif X2_USE_ENDSTOP == _ZDIAG_ + #define X2_MAX_PIN Z_DIAG_PIN + #elif X2_USE_ENDSTOP == _E0DIAG_ + #define X2_MAX_PIN E0_DIAG_PIN + #elif X2_USE_ENDSTOP == _E1DIAG_ + #define X2_MAX_PIN E1_DIAG_PIN + #elif X2_USE_ENDSTOP == _E2DIAG_ + #define X2_MAX_PIN E2_DIAG_PIN + #elif X2_USE_ENDSTOP == _E3DIAG_ + #define X2_MAX_PIN E3_DIAG_PIN + #elif X2_USE_ENDSTOP == _E4DIAG_ + #define X2_MAX_PIN E4_DIAG_PIN + #elif X2_USE_ENDSTOP == _E5DIAG_ + #define X2_MAX_PIN E5_DIAG_PIN + #elif X2_USE_ENDSTOP == _E6DIAG_ + #define X2_MAX_PIN E6_DIAG_PIN + #elif X2_USE_ENDSTOP == _E7DIAG_ + #define X2_MAX_PIN E7_DIAG_PIN + #endif + #elif X_HOME_TO_MIN && !defined(X2_MIN_PIN) + #if PIN_EXISTS(X2_STOP) + #define X2_MIN_PIN X2_STOP_PIN + #elif X2_USE_ENDSTOP == _XMIN_ + #define X2_MIN_PIN X_MIN_PIN + #elif X2_USE_ENDSTOP == _XMAX_ + #define X2_MIN_PIN X_MAX_PIN + #elif X2_USE_ENDSTOP == _XSTOP_ + #define X2_MIN_PIN X_STOP_PIN + #elif X2_USE_ENDSTOP == _YMIN_ + #define X2_MIN_PIN Y_MIN_PIN + #elif X2_USE_ENDSTOP == _YMAX_ + #define X2_MIN_PIN Y_MAX_PIN + #elif X2_USE_ENDSTOP == _YSTOP_ + #define X2_MIN_PIN Y_STOP_PIN + #elif X2_USE_ENDSTOP == _ZMIN_ + #define X2_MIN_PIN Z_MIN_PIN + #elif X2_USE_ENDSTOP == _ZMAX_ + #define X2_MIN_PIN Z_MAX_PIN + #elif X2_USE_ENDSTOP == _ZSTOP_ + #define X2_MIN_PIN Z_STOP_PIN + #elif X2_USE_ENDSTOP == _XDIAG_ + #define X2_MIN_PIN X_DIAG_PIN + #elif X2_USE_ENDSTOP == _YDIAG_ + #define X2_MIN_PIN Y_DIAG_PIN + #elif X2_USE_ENDSTOP == _ZDIAG_ + #define X2_MIN_PIN Z_DIAG_PIN + #elif X2_USE_ENDSTOP == _E0DIAG_ + #define X2_MIN_PIN E0_DIAG_PIN + #elif X2_USE_ENDSTOP == _E1DIAG_ + #define X2_MIN_PIN E1_DIAG_PIN + #elif X2_USE_ENDSTOP == _E2DIAG_ + #define X2_MIN_PIN E2_DIAG_PIN + #elif X2_USE_ENDSTOP == _E3DIAG_ + #define X2_MIN_PIN E3_DIAG_PIN + #elif X2_USE_ENDSTOP == _E4DIAG_ + #define X2_MIN_PIN E4_DIAG_PIN + #elif X2_USE_ENDSTOP == _E5DIAG_ + #define X2_MIN_PIN E5_DIAG_PIN + #elif X2_USE_ENDSTOP == _E6DIAG_ + #define X2_MIN_PIN E6_DIAG_PIN + #elif X2_USE_ENDSTOP == _E7DIAG_ + #define X2_MIN_PIN E7_DIAG_PIN + #endif + #endif +#endif // X_DUAL_ENDSTOPS /** * Y_DUAL_ENDSTOPS endstop reassignment */ #if ENABLED(Y_DUAL_ENDSTOPS) - #if Y_HOME_TO_MAX - #ifndef Y2_MAX_PIN - #if PIN_EXISTS(Y2_STOP) - #define Y2_MAX_PIN Y2_STOP_PIN - #elif Y2_USE_ENDSTOP == _XMIN_ - #define Y2_MAX_PIN X_MIN_PIN - #elif Y2_USE_ENDSTOP == _XMAX_ - #define Y2_MAX_PIN X_MAX_PIN - #elif Y2_USE_ENDSTOP == _XSTOP_ - #define Y2_MAX_PIN X_STOP_PIN - #elif Y2_USE_ENDSTOP == _YMIN_ - #define Y2_MAX_PIN Y_MIN_PIN - #elif Y2_USE_ENDSTOP == _YMAX_ - #define Y2_MAX_PIN Y_MAX_PIN - #elif Y2_USE_ENDSTOP == _YSTOP_ - #define Y2_MAX_PIN Y_STOP_PIN - #elif Y2_USE_ENDSTOP == _ZMIN_ - #define Y2_MAX_PIN Z_MIN_PIN - #elif Y2_USE_ENDSTOP == _ZMAX_ - #define Y2_MAX_PIN Z_MAX_PIN - #elif Y2_USE_ENDSTOP == _ZSTOP_ - #define Y2_MAX_PIN Z_STOP_PIN - #elif Y2_USE_ENDSTOP == _XDIAG_ - #define Y2_MAX_PIN X_DIAG_PIN - #elif Y2_USE_ENDSTOP == _YDIAG_ - #define Y2_MAX_PIN Y_DIAG_PIN - #elif Y2_USE_ENDSTOP == _ZDIAG_ - #define Y2_MAX_PIN Z_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E0DIAG_ - #define Y2_MAX_PIN E0_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E1DIAG_ - #define Y2_MAX_PIN E1_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E2DIAG_ - #define Y2_MAX_PIN E2_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E3DIAG_ - #define Y2_MAX_PIN E3_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E4DIAG_ - #define Y2_MAX_PIN E4_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E5DIAG_ - #define Y2_MAX_PIN E5_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E6DIAG_ - #define Y2_MAX_PIN E6_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E7DIAG_ - #define Y2_MAX_PIN E7_DIAG_PIN - #endif - #endif - #else - #ifndef Y2_MIN_PIN - #if PIN_EXISTS(Y2_STOP) - #define Y2_MIN_PIN Y2_STOP_PIN - #elif Y2_USE_ENDSTOP == _XMIN_ - #define Y2_MIN_PIN X_MIN_PIN - #elif Y2_USE_ENDSTOP == _XMAX_ - #define Y2_MIN_PIN X_MAX_PIN - #elif Y2_USE_ENDSTOP == _XSTOP_ - #define Y2_MIN_PIN X_STOP_PIN - #elif Y2_USE_ENDSTOP == _YMIN_ - #define Y2_MIN_PIN Y_MIN_PIN - #elif Y2_USE_ENDSTOP == _YMAX_ - #define Y2_MIN_PIN Y_MAX_PIN - #elif Y2_USE_ENDSTOP == _YSTOP_ - #define Y2_MIN_PIN Y_STOP_PIN - #elif Y2_USE_ENDSTOP == _ZMIN_ - #define Y2_MIN_PIN Z_MIN_PIN - #elif Y2_USE_ENDSTOP == _ZMAX_ - #define Y2_MIN_PIN Z_MAX_PIN - #elif Y2_USE_ENDSTOP == _ZSTOP_ - #define Y2_MIN_PIN Z_STOP_PIN - #elif Y2_USE_ENDSTOP == _XDIAG_ - #define Y2_MIN_PIN X_DIAG_PIN - #elif Y2_USE_ENDSTOP == _YDIAG_ - #define Y2_MIN_PIN Y_DIAG_PIN - #elif Y2_USE_ENDSTOP == _ZDIAG_ - #define Y2_MIN_PIN Z_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E0DIAG_ - #define Y2_MIN_PIN E0_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E1DIAG_ - #define Y2_MIN_PIN E1_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E2DIAG_ - #define Y2_MIN_PIN E2_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E3DIAG_ - #define Y2_MIN_PIN E3_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E4DIAG_ - #define Y2_MIN_PIN E4_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E5DIAG_ - #define Y2_MIN_PIN E5_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E6DIAG_ - #define Y2_MIN_PIN E6_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E7DIAG_ - #define Y2_MIN_PIN E7_DIAG_PIN - #endif - #endif - #endif -#endif + #if Y_HOME_TO_MAX && !defined(Y2_MAX_PIN) + #if PIN_EXISTS(Y2_STOP) + #define Y2_MAX_PIN Y2_STOP_PIN + #elif Y2_USE_ENDSTOP == _XMIN_ + #define Y2_MAX_PIN X_MIN_PIN + #elif Y2_USE_ENDSTOP == _XMAX_ + #define Y2_MAX_PIN X_MAX_PIN + #elif Y2_USE_ENDSTOP == _XSTOP_ + #define Y2_MAX_PIN X_STOP_PIN + #elif Y2_USE_ENDSTOP == _YMIN_ + #define Y2_MAX_PIN Y_MIN_PIN + #elif Y2_USE_ENDSTOP == _YMAX_ + #define Y2_MAX_PIN Y_MAX_PIN + #elif Y2_USE_ENDSTOP == _YSTOP_ + #define Y2_MAX_PIN Y_STOP_PIN + #elif Y2_USE_ENDSTOP == _ZMIN_ + #define Y2_MAX_PIN Z_MIN_PIN + #elif Y2_USE_ENDSTOP == _ZMAX_ + #define Y2_MAX_PIN Z_MAX_PIN + #elif Y2_USE_ENDSTOP == _ZSTOP_ + #define Y2_MAX_PIN Z_STOP_PIN + #elif Y2_USE_ENDSTOP == _XDIAG_ + #define Y2_MAX_PIN X_DIAG_PIN + #elif Y2_USE_ENDSTOP == _YDIAG_ + #define Y2_MAX_PIN Y_DIAG_PIN + #elif Y2_USE_ENDSTOP == _ZDIAG_ + #define Y2_MAX_PIN Z_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E0DIAG_ + #define Y2_MAX_PIN E0_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E1DIAG_ + #define Y2_MAX_PIN E1_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E2DIAG_ + #define Y2_MAX_PIN E2_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E3DIAG_ + #define Y2_MAX_PIN E3_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E4DIAG_ + #define Y2_MAX_PIN E4_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E5DIAG_ + #define Y2_MAX_PIN E5_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E6DIAG_ + #define Y2_MAX_PIN E6_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E7DIAG_ + #define Y2_MAX_PIN E7_DIAG_PIN + #endif + #elif Y_HOME_TO_MIN && !defined(Y2_MIN_PIN) + #if PIN_EXISTS(Y2_STOP) + #define Y2_MIN_PIN Y2_STOP_PIN + #elif Y2_USE_ENDSTOP == _XMIN_ + #define Y2_MIN_PIN X_MIN_PIN + #elif Y2_USE_ENDSTOP == _XMAX_ + #define Y2_MIN_PIN X_MAX_PIN + #elif Y2_USE_ENDSTOP == _XSTOP_ + #define Y2_MIN_PIN X_STOP_PIN + #elif Y2_USE_ENDSTOP == _YMIN_ + #define Y2_MIN_PIN Y_MIN_PIN + #elif Y2_USE_ENDSTOP == _YMAX_ + #define Y2_MIN_PIN Y_MAX_PIN + #elif Y2_USE_ENDSTOP == _YSTOP_ + #define Y2_MIN_PIN Y_STOP_PIN + #elif Y2_USE_ENDSTOP == _ZMIN_ + #define Y2_MIN_PIN Z_MIN_PIN + #elif Y2_USE_ENDSTOP == _ZMAX_ + #define Y2_MIN_PIN Z_MAX_PIN + #elif Y2_USE_ENDSTOP == _ZSTOP_ + #define Y2_MIN_PIN Z_STOP_PIN + #elif Y2_USE_ENDSTOP == _XDIAG_ + #define Y2_MIN_PIN X_DIAG_PIN + #elif Y2_USE_ENDSTOP == _YDIAG_ + #define Y2_MIN_PIN Y_DIAG_PIN + #elif Y2_USE_ENDSTOP == _ZDIAG_ + #define Y2_MIN_PIN Z_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E0DIAG_ + #define Y2_MIN_PIN E0_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E1DIAG_ + #define Y2_MIN_PIN E1_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E2DIAG_ + #define Y2_MIN_PIN E2_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E3DIAG_ + #define Y2_MIN_PIN E3_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E4DIAG_ + #define Y2_MIN_PIN E4_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E5DIAG_ + #define Y2_MIN_PIN E5_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E6DIAG_ + #define Y2_MIN_PIN E6_DIAG_PIN + #elif Y2_USE_ENDSTOP == _E7DIAG_ + #define Y2_MIN_PIN E7_DIAG_PIN + #endif + #endif +#endif // Y_DUAL_ENDSTOPS /** * Z_MULTI_ENDSTOPS endstop reassignment */ #if ENABLED(Z_MULTI_ENDSTOPS) - #if Z_HOME_TO_MAX - #ifndef Z2_MAX_PIN - #if PIN_EXISTS(Z2_STOP) - #define Z2_MAX_PIN Z2_STOP_PIN - #elif Z2_USE_ENDSTOP == _XMIN_ - #define Z2_MAX_PIN X_MIN_PIN - #elif Z2_USE_ENDSTOP == _XMAX_ - #define Z2_MAX_PIN X_MAX_PIN - #elif Z2_USE_ENDSTOP == _XSTOP_ - #define Z2_MAX_PIN X_STOP_PIN - #elif Z2_USE_ENDSTOP == _YMIN_ - #define Z2_MAX_PIN Y_MIN_PIN - #elif Z2_USE_ENDSTOP == _YMAX_ - #define Z2_MAX_PIN Y_MAX_PIN - #elif Z2_USE_ENDSTOP == _YSTOP_ - #define Z2_MAX_PIN Y_STOP_PIN - #elif Z2_USE_ENDSTOP == _ZMIN_ - #define Z2_MAX_PIN Z_MIN_PIN - #elif Z2_USE_ENDSTOP == _ZMAX_ - #define Z2_MAX_PIN Z_MAX_PIN - #elif Z2_USE_ENDSTOP == _ZSTOP_ - #define Z2_MAX_PIN Z_STOP_PIN - #elif Z2_USE_ENDSTOP == _XDIAG_ - #define Z2_MAX_PIN X_DIAG_PIN - #elif Z2_USE_ENDSTOP == _YDIAG_ - #define Z2_MAX_PIN Y_DIAG_PIN - #elif Z2_USE_ENDSTOP == _ZDIAG_ - #define Z2_MAX_PIN Z_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E0DIAG_ - #define Z2_MAX_PIN E0_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E1DIAG_ - #define Z2_MAX_PIN E1_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E2DIAG_ - #define Z2_MAX_PIN E2_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E3DIAG_ - #define Z2_MAX_PIN E3_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E4DIAG_ - #define Z2_MAX_PIN E4_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E5DIAG_ - #define Z2_MAX_PIN E5_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E6DIAG_ - #define Z2_MAX_PIN E6_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E7DIAG_ - #define Z2_MAX_PIN E7_DIAG_PIN - #endif - #endif - #else - #ifndef Z2_MIN_PIN - #if PIN_EXISTS(Z2_STOP) - #define Z2_MIN_PIN Z2_STOP_PIN - #elif Z2_USE_ENDSTOP == _XMIN_ - #define Z2_MIN_PIN X_MIN_PIN - #elif Z2_USE_ENDSTOP == _XMAX_ - #define Z2_MIN_PIN X_MAX_PIN - #elif Z2_USE_ENDSTOP == _XSTOP_ - #define Z2_MIN_PIN X_STOP_PIN - #elif Z2_USE_ENDSTOP == _YMIN_ - #define Z2_MIN_PIN Y_MIN_PIN - #elif Z2_USE_ENDSTOP == _YMAX_ - #define Z2_MIN_PIN Y_MAX_PIN - #elif Z2_USE_ENDSTOP == _YSTOP_ - #define Z2_MIN_PIN Y_STOP_PIN - #elif Z2_USE_ENDSTOP == _ZMIN_ - #define Z2_MIN_PIN Z_MIN_PIN - #elif Z2_USE_ENDSTOP == _ZMAX_ - #define Z2_MIN_PIN Z_MAX_PIN - #elif Z2_USE_ENDSTOP == _ZSTOP_ - #define Z2_MIN_PIN Z_STOP_PIN - #elif Z2_USE_ENDSTOP == _XDIAG_ - #define Z2_MIN_PIN X_DIAG_PIN - #elif Z2_USE_ENDSTOP == _YDIAG_ - #define Z2_MIN_PIN Y_DIAG_PIN - #elif Z2_USE_ENDSTOP == _ZDIAG_ - #define Z2_MIN_PIN Z_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E0DIAG_ - #define Z2_MIN_PIN E0_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E1DIAG_ - #define Z2_MIN_PIN E1_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E2DIAG_ - #define Z2_MIN_PIN E2_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E3DIAG_ - #define Z2_MIN_PIN E3_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E4DIAG_ - #define Z2_MIN_PIN E4_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E5DIAG_ - #define Z2_MIN_PIN E5_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E6DIAG_ - #define Z2_MIN_PIN E6_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E7DIAG_ - #define Z2_MIN_PIN E7_DIAG_PIN - #endif + #if Z_HOME_TO_MAX && !defined(Z2_MAX_PIN) + #if PIN_EXISTS(Z2_STOP) + #define Z2_MAX_PIN Z2_STOP_PIN + #elif Z2_USE_ENDSTOP == _XMIN_ + #define Z2_MAX_PIN X_MIN_PIN + #elif Z2_USE_ENDSTOP == _XMAX_ + #define Z2_MAX_PIN X_MAX_PIN + #elif Z2_USE_ENDSTOP == _XSTOP_ + #define Z2_MAX_PIN X_STOP_PIN + #elif Z2_USE_ENDSTOP == _YMIN_ + #define Z2_MAX_PIN Y_MIN_PIN + #elif Z2_USE_ENDSTOP == _YMAX_ + #define Z2_MAX_PIN Y_MAX_PIN + #elif Z2_USE_ENDSTOP == _YSTOP_ + #define Z2_MAX_PIN Y_STOP_PIN + #elif Z2_USE_ENDSTOP == _ZMIN_ + #define Z2_MAX_PIN Z_MIN_PIN + #elif Z2_USE_ENDSTOP == _ZMAX_ + #define Z2_MAX_PIN Z_MAX_PIN + #elif Z2_USE_ENDSTOP == _ZSTOP_ + #define Z2_MAX_PIN Z_STOP_PIN + #elif Z2_USE_ENDSTOP == _XDIAG_ + #define Z2_MAX_PIN X_DIAG_PIN + #elif Z2_USE_ENDSTOP == _YDIAG_ + #define Z2_MAX_PIN Y_DIAG_PIN + #elif Z2_USE_ENDSTOP == _ZDIAG_ + #define Z2_MAX_PIN Z_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E0DIAG_ + #define Z2_MAX_PIN E0_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E1DIAG_ + #define Z2_MAX_PIN E1_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E2DIAG_ + #define Z2_MAX_PIN E2_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E3DIAG_ + #define Z2_MAX_PIN E3_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E4DIAG_ + #define Z2_MAX_PIN E4_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E5DIAG_ + #define Z2_MAX_PIN E5_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E6DIAG_ + #define Z2_MAX_PIN E6_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E7DIAG_ + #define Z2_MAX_PIN E7_DIAG_PIN + #endif + #elif Z_HOME_TO_MIN && !defined(Z2_MIN_PIN) + #if PIN_EXISTS(Z2_STOP) + #define Z2_MIN_PIN Z2_STOP_PIN + #elif Z2_USE_ENDSTOP == _XMIN_ + #define Z2_MIN_PIN X_MIN_PIN + #elif Z2_USE_ENDSTOP == _XMAX_ + #define Z2_MIN_PIN X_MAX_PIN + #elif Z2_USE_ENDSTOP == _XSTOP_ + #define Z2_MIN_PIN X_STOP_PIN + #elif Z2_USE_ENDSTOP == _YMIN_ + #define Z2_MIN_PIN Y_MIN_PIN + #elif Z2_USE_ENDSTOP == _YMAX_ + #define Z2_MIN_PIN Y_MAX_PIN + #elif Z2_USE_ENDSTOP == _YSTOP_ + #define Z2_MIN_PIN Y_STOP_PIN + #elif Z2_USE_ENDSTOP == _ZMIN_ + #define Z2_MIN_PIN Z_MIN_PIN + #elif Z2_USE_ENDSTOP == _ZMAX_ + #define Z2_MIN_PIN Z_MAX_PIN + #elif Z2_USE_ENDSTOP == _ZSTOP_ + #define Z2_MIN_PIN Z_STOP_PIN + #elif Z2_USE_ENDSTOP == _XDIAG_ + #define Z2_MIN_PIN X_DIAG_PIN + #elif Z2_USE_ENDSTOP == _YDIAG_ + #define Z2_MIN_PIN Y_DIAG_PIN + #elif Z2_USE_ENDSTOP == _ZDIAG_ + #define Z2_MIN_PIN Z_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E0DIAG_ + #define Z2_MIN_PIN E0_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E1DIAG_ + #define Z2_MIN_PIN E1_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E2DIAG_ + #define Z2_MIN_PIN E2_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E3DIAG_ + #define Z2_MIN_PIN E3_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E4DIAG_ + #define Z2_MIN_PIN E4_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E5DIAG_ + #define Z2_MIN_PIN E5_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E6DIAG_ + #define Z2_MIN_PIN E6_DIAG_PIN + #elif Z2_USE_ENDSTOP == _E7DIAG_ + #define Z2_MIN_PIN E7_DIAG_PIN #endif #endif #if NUM_Z_STEPPERS >= 3 - #if Z_HOME_TO_MAX - #ifndef Z3_MAX_PIN - #if PIN_EXISTS(Z3_STOP) - #define Z3_MAX_PIN Z3_STOP_PIN - #elif Z3_USE_ENDSTOP == _XMIN_ - #define Z3_MAX_PIN X_MIN_PIN - #elif Z3_USE_ENDSTOP == _XMAX_ - #define Z3_MAX_PIN X_MAX_PIN - #elif Z3_USE_ENDSTOP == _XSTOP_ - #define Z3_MAX_PIN X_STOP_PIN - #elif Z3_USE_ENDSTOP == _YMIN_ - #define Z3_MAX_PIN Y_MIN_PIN - #elif Z3_USE_ENDSTOP == _YMAX_ - #define Z3_MAX_PIN Y_MAX_PIN - #elif Z3_USE_ENDSTOP == _YSTOP_ - #define Z3_MAX_PIN Y_STOP_PIN - #elif Z3_USE_ENDSTOP == _ZMIN_ - #define Z3_MAX_PIN Z_MIN_PIN - #elif Z3_USE_ENDSTOP == _ZMAX_ - #define Z3_MAX_PIN Z_MAX_PIN - #elif Z3_USE_ENDSTOP == _ZSTOP_ - #define Z3_MAX_PIN Z_STOP_PIN - #elif Z3_USE_ENDSTOP == _XDIAG_ - #define Z3_MAX_PIN X_DIAG_PIN - #elif Z3_USE_ENDSTOP == _YDIAG_ - #define Z3_MAX_PIN Y_DIAG_PIN - #elif Z3_USE_ENDSTOP == _ZDIAG_ - #define Z3_MAX_PIN Z_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E0DIAG_ - #define Z3_MAX_PIN E0_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E1DIAG_ - #define Z3_MAX_PIN E1_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E2DIAG_ - #define Z3_MAX_PIN E2_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E3DIAG_ - #define Z3_MAX_PIN E3_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E4DIAG_ - #define Z3_MAX_PIN E4_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E5DIAG_ - #define Z3_MAX_PIN E5_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E6DIAG_ - #define Z3_MAX_PIN E6_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E7DIAG_ - #define Z3_MAX_PIN E7_DIAG_PIN - #endif + #if Z_HOME_TO_MAX && !defined(Z3_MAX_PIN) + #if PIN_EXISTS(Z3_STOP) + #define Z3_MAX_PIN Z3_STOP_PIN + #elif Z3_USE_ENDSTOP == _XMIN_ + #define Z3_MAX_PIN X_MIN_PIN + #elif Z3_USE_ENDSTOP == _XMAX_ + #define Z3_MAX_PIN X_MAX_PIN + #elif Z3_USE_ENDSTOP == _XSTOP_ + #define Z3_MAX_PIN X_STOP_PIN + #elif Z3_USE_ENDSTOP == _YMIN_ + #define Z3_MAX_PIN Y_MIN_PIN + #elif Z3_USE_ENDSTOP == _YMAX_ + #define Z3_MAX_PIN Y_MAX_PIN + #elif Z3_USE_ENDSTOP == _YSTOP_ + #define Z3_MAX_PIN Y_STOP_PIN + #elif Z3_USE_ENDSTOP == _ZMIN_ + #define Z3_MAX_PIN Z_MIN_PIN + #elif Z3_USE_ENDSTOP == _ZMAX_ + #define Z3_MAX_PIN Z_MAX_PIN + #elif Z3_USE_ENDSTOP == _ZSTOP_ + #define Z3_MAX_PIN Z_STOP_PIN + #elif Z3_USE_ENDSTOP == _XDIAG_ + #define Z3_MAX_PIN X_DIAG_PIN + #elif Z3_USE_ENDSTOP == _YDIAG_ + #define Z3_MAX_PIN Y_DIAG_PIN + #elif Z3_USE_ENDSTOP == _ZDIAG_ + #define Z3_MAX_PIN Z_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E0DIAG_ + #define Z3_MAX_PIN E0_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E1DIAG_ + #define Z3_MAX_PIN E1_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E2DIAG_ + #define Z3_MAX_PIN E2_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E3DIAG_ + #define Z3_MAX_PIN E3_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E4DIAG_ + #define Z3_MAX_PIN E4_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E5DIAG_ + #define Z3_MAX_PIN E5_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E6DIAG_ + #define Z3_MAX_PIN E6_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E7DIAG_ + #define Z3_MAX_PIN E7_DIAG_PIN #endif - #else - #ifndef Z3_MIN_PIN - #if PIN_EXISTS(Z3_STOP) - #define Z3_MIN_PIN Z3_STOP_PIN - #elif Z3_USE_ENDSTOP == _XMIN_ - #define Z3_MIN_PIN X_MIN_PIN - #elif Z3_USE_ENDSTOP == _XMAX_ - #define Z3_MIN_PIN X_MAX_PIN - #elif Z3_USE_ENDSTOP == _XSTOP_ - #define Z3_MIN_PIN X_STOP_PIN - #elif Z3_USE_ENDSTOP == _YMIN_ - #define Z3_MIN_PIN Y_MIN_PIN - #elif Z3_USE_ENDSTOP == _YMAX_ - #define Z3_MIN_PIN Y_MAX_PIN - #elif Z3_USE_ENDSTOP == _YSTOP_ - #define Z3_MIN_PIN Y_STOP_PIN - #elif Z3_USE_ENDSTOP == _ZMIN_ - #define Z3_MIN_PIN Z_MIN_PIN - #elif Z3_USE_ENDSTOP == _ZMAX_ - #define Z3_MIN_PIN Z_MAX_PIN - #elif Z3_USE_ENDSTOP == _ZSTOP_ - #define Z3_MIN_PIN Z_STOP_PIN - #elif Z3_USE_ENDSTOP == _XDIAG_ - #define Z3_MIN_PIN X_DIAG_PIN - #elif Z3_USE_ENDSTOP == _YDIAG_ - #define Z3_MIN_PIN Y_DIAG_PIN - #elif Z3_USE_ENDSTOP == _ZDIAG_ - #define Z3_MIN_PIN Z_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E0DIAG_ - #define Z3_MIN_PIN E0_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E1DIAG_ - #define Z3_MIN_PIN E1_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E2DIAG_ - #define Z3_MIN_PIN E2_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E3DIAG_ - #define Z3_MIN_PIN E3_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E4DIAG_ - #define Z3_MIN_PIN E4_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E5DIAG_ - #define Z3_MIN_PIN E5_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E6DIAG_ - #define Z3_MIN_PIN E6_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E7DIAG_ - #define Z3_MIN_PIN E7_DIAG_PIN - #endif + #elif Z_HOME_TO_MIN && !defined(Z3_MIN_PIN) + #if PIN_EXISTS(Z3_STOP) + #define Z3_MIN_PIN Z3_STOP_PIN + #elif Z3_USE_ENDSTOP == _XMIN_ + #define Z3_MIN_PIN X_MIN_PIN + #elif Z3_USE_ENDSTOP == _XMAX_ + #define Z3_MIN_PIN X_MAX_PIN + #elif Z3_USE_ENDSTOP == _XSTOP_ + #define Z3_MIN_PIN X_STOP_PIN + #elif Z3_USE_ENDSTOP == _YMIN_ + #define Z3_MIN_PIN Y_MIN_PIN + #elif Z3_USE_ENDSTOP == _YMAX_ + #define Z3_MIN_PIN Y_MAX_PIN + #elif Z3_USE_ENDSTOP == _YSTOP_ + #define Z3_MIN_PIN Y_STOP_PIN + #elif Z3_USE_ENDSTOP == _ZMIN_ + #define Z3_MIN_PIN Z_MIN_PIN + #elif Z3_USE_ENDSTOP == _ZMAX_ + #define Z3_MIN_PIN Z_MAX_PIN + #elif Z3_USE_ENDSTOP == _ZSTOP_ + #define Z3_MIN_PIN Z_STOP_PIN + #elif Z3_USE_ENDSTOP == _XDIAG_ + #define Z3_MIN_PIN X_DIAG_PIN + #elif Z3_USE_ENDSTOP == _YDIAG_ + #define Z3_MIN_PIN Y_DIAG_PIN + #elif Z3_USE_ENDSTOP == _ZDIAG_ + #define Z3_MIN_PIN Z_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E0DIAG_ + #define Z3_MIN_PIN E0_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E1DIAG_ + #define Z3_MIN_PIN E1_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E2DIAG_ + #define Z3_MIN_PIN E2_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E3DIAG_ + #define Z3_MIN_PIN E3_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E4DIAG_ + #define Z3_MIN_PIN E4_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E5DIAG_ + #define Z3_MIN_PIN E5_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E6DIAG_ + #define Z3_MIN_PIN E6_DIAG_PIN + #elif Z3_USE_ENDSTOP == _E7DIAG_ + #define Z3_MIN_PIN E7_DIAG_PIN #endif #endif #endif #if NUM_Z_STEPPERS >= 4 - #if Z_HOME_TO_MAX - #ifndef Z4_MAX_PIN - #if PIN_EXISTS(Z4_STOP) - #define Z4_MAX_PIN Z4_STOP_PIN - #elif Z4_USE_ENDSTOP == _XMIN_ - #define Z4_MAX_PIN X_MIN_PIN - #elif Z4_USE_ENDSTOP == _XMAX_ - #define Z4_MAX_PIN X_MAX_PIN - #elif Z4_USE_ENDSTOP == _XSTOP_ - #define Z4_MAX_PIN X_STOP_PIN - #elif Z4_USE_ENDSTOP == _YMIN_ - #define Z4_MAX_PIN Y_MIN_PIN - #elif Z4_USE_ENDSTOP == _YMAX_ - #define Z4_MAX_PIN Y_MAX_PIN - #elif Z4_USE_ENDSTOP == _YSTOP_ - #define Z4_MAX_PIN Y_STOP_PIN - #elif Z4_USE_ENDSTOP == _ZMIN_ - #define Z4_MAX_PIN Z_MIN_PIN - #elif Z4_USE_ENDSTOP == _ZMAX_ - #define Z4_MAX_PIN Z_MAX_PIN - #elif Z4_USE_ENDSTOP == _ZSTOP_ - #define Z4_MAX_PIN Z_STOP_PIN - #elif Z4_USE_ENDSTOP == _XDIAG_ - #define Z4_MAX_PIN X_DIAG_PIN - #elif Z4_USE_ENDSTOP == _YDIAG_ - #define Z4_MAX_PIN Y_DIAG_PIN - #elif Z4_USE_ENDSTOP == _ZDIAG_ - #define Z4_MAX_PIN Z_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E0DIAG_ - #define Z4_MAX_PIN E0_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E1DIAG_ - #define Z4_MAX_PIN E1_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E2DIAG_ - #define Z4_MAX_PIN E2_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E3DIAG_ - #define Z4_MAX_PIN E3_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E4DIAG_ - #define Z4_MAX_PIN E4_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E5DIAG_ - #define Z4_MAX_PIN E5_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E6DIAG_ - #define Z4_MAX_PIN E6_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E7DIAG_ - #define Z4_MAX_PIN E7_DIAG_PIN - #endif + #if Z_HOME_TO_MAX && !defined(Z4_MAX_PIN) + #if PIN_EXISTS(Z4_STOP) + #define Z4_MAX_PIN Z4_STOP_PIN + #elif Z4_USE_ENDSTOP == _XMIN_ + #define Z4_MAX_PIN X_MIN_PIN + #elif Z4_USE_ENDSTOP == _XMAX_ + #define Z4_MAX_PIN X_MAX_PIN + #elif Z4_USE_ENDSTOP == _XSTOP_ + #define Z4_MAX_PIN X_STOP_PIN + #elif Z4_USE_ENDSTOP == _YMIN_ + #define Z4_MAX_PIN Y_MIN_PIN + #elif Z4_USE_ENDSTOP == _YMAX_ + #define Z4_MAX_PIN Y_MAX_PIN + #elif Z4_USE_ENDSTOP == _YSTOP_ + #define Z4_MAX_PIN Y_STOP_PIN + #elif Z4_USE_ENDSTOP == _ZMIN_ + #define Z4_MAX_PIN Z_MIN_PIN + #elif Z4_USE_ENDSTOP == _ZMAX_ + #define Z4_MAX_PIN Z_MAX_PIN + #elif Z4_USE_ENDSTOP == _ZSTOP_ + #define Z4_MAX_PIN Z_STOP_PIN + #elif Z4_USE_ENDSTOP == _XDIAG_ + #define Z4_MAX_PIN X_DIAG_PIN + #elif Z4_USE_ENDSTOP == _YDIAG_ + #define Z4_MAX_PIN Y_DIAG_PIN + #elif Z4_USE_ENDSTOP == _ZDIAG_ + #define Z4_MAX_PIN Z_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E0DIAG_ + #define Z4_MAX_PIN E0_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E1DIAG_ + #define Z4_MAX_PIN E1_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E2DIAG_ + #define Z4_MAX_PIN E2_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E3DIAG_ + #define Z4_MAX_PIN E3_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E4DIAG_ + #define Z4_MAX_PIN E4_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E5DIAG_ + #define Z4_MAX_PIN E5_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E6DIAG_ + #define Z4_MAX_PIN E6_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E7DIAG_ + #define Z4_MAX_PIN E7_DIAG_PIN #endif - #else - #ifndef Z4_MIN_PIN - #if PIN_EXISTS(Z4_STOP) - #define Z4_MIN_PIN Z4_STOP_PIN - #elif Z4_USE_ENDSTOP == _XMIN_ - #define Z4_MIN_PIN X_MIN_PIN - #elif Z4_USE_ENDSTOP == _XMAX_ - #define Z4_MIN_PIN X_MAX_PIN - #elif Z4_USE_ENDSTOP == _XSTOP_ - #define Z4_MIN_PIN X_STOP_PIN - #elif Z4_USE_ENDSTOP == _YMIN_ - #define Z4_MIN_PIN Y_MIN_PIN - #elif Z4_USE_ENDSTOP == _YMAX_ - #define Z4_MIN_PIN Y_MAX_PIN - #elif Z4_USE_ENDSTOP == _YSTOP_ - #define Z4_MIN_PIN Y_STOP_PIN - #elif Z4_USE_ENDSTOP == _ZMIN_ - #define Z4_MIN_PIN Z_MIN_PIN - #elif Z4_USE_ENDSTOP == _ZMAX_ - #define Z4_MIN_PIN Z_MAX_PIN - #elif Z4_USE_ENDSTOP == _ZSTOP_ - #define Z4_MIN_PIN Z_STOP_PIN - #elif Z4_USE_ENDSTOP == _XDIAG_ - #define Z4_MIN_PIN X_DIAG_PIN - #elif Z4_USE_ENDSTOP == _YDIAG_ - #define Z4_MIN_PIN Y_DIAG_PIN - #elif Z4_USE_ENDSTOP == _ZDIAG_ - #define Z4_MIN_PIN Z_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E0DIAG_ - #define Z4_MIN_PIN E0_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E1DIAG_ - #define Z4_MIN_PIN E1_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E2DIAG_ - #define Z4_MIN_PIN E2_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E3DIAG_ - #define Z4_MIN_PIN E3_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E4DIAG_ - #define Z4_MIN_PIN E4_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E5DIAG_ - #define Z4_MIN_PIN E5_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E6DIAG_ - #define Z4_MIN_PIN E6_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E7DIAG_ - #define Z4_MIN_PIN E7_DIAG_PIN - #endif + #elif Z_HOME_TO_MIN && !defined(Z4_MIN_PIN) + #if PIN_EXISTS(Z4_STOP) + #define Z4_MIN_PIN Z4_STOP_PIN + #elif Z4_USE_ENDSTOP == _XMIN_ + #define Z4_MIN_PIN X_MIN_PIN + #elif Z4_USE_ENDSTOP == _XMAX_ + #define Z4_MIN_PIN X_MAX_PIN + #elif Z4_USE_ENDSTOP == _XSTOP_ + #define Z4_MIN_PIN X_STOP_PIN + #elif Z4_USE_ENDSTOP == _YMIN_ + #define Z4_MIN_PIN Y_MIN_PIN + #elif Z4_USE_ENDSTOP == _YMAX_ + #define Z4_MIN_PIN Y_MAX_PIN + #elif Z4_USE_ENDSTOP == _YSTOP_ + #define Z4_MIN_PIN Y_STOP_PIN + #elif Z4_USE_ENDSTOP == _ZMIN_ + #define Z4_MIN_PIN Z_MIN_PIN + #elif Z4_USE_ENDSTOP == _ZMAX_ + #define Z4_MIN_PIN Z_MAX_PIN + #elif Z4_USE_ENDSTOP == _ZSTOP_ + #define Z4_MIN_PIN Z_STOP_PIN + #elif Z4_USE_ENDSTOP == _XDIAG_ + #define Z4_MIN_PIN X_DIAG_PIN + #elif Z4_USE_ENDSTOP == _YDIAG_ + #define Z4_MIN_PIN Y_DIAG_PIN + #elif Z4_USE_ENDSTOP == _ZDIAG_ + #define Z4_MIN_PIN Z_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E0DIAG_ + #define Z4_MIN_PIN E0_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E1DIAG_ + #define Z4_MIN_PIN E1_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E2DIAG_ + #define Z4_MIN_PIN E2_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E3DIAG_ + #define Z4_MIN_PIN E3_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E4DIAG_ + #define Z4_MIN_PIN E4_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E5DIAG_ + #define Z4_MIN_PIN E5_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E6DIAG_ + #define Z4_MIN_PIN E6_DIAG_PIN + #elif Z4_USE_ENDSTOP == _E7DIAG_ + #define Z4_MIN_PIN E7_DIAG_PIN #endif #endif #endif diff --git a/buildroot/tests/STM32F103RE_creality b/buildroot/tests/STM32F103RE_creality index d407dc430153..834580fac8e3 100755 --- a/buildroot/tests/STM32F103RE_creality +++ b/buildroot/tests/STM32F103RE_creality @@ -11,12 +11,17 @@ set -e # use_example_configs "Creality/Ender-3 V2/CrealityV422/CrealityUI" opt_enable MARLIN_DEV_MODE BUFFER_MONITORING BLTOUCH AUTO_BED_LEVELING_BILINEAR Z_SAFE_HOMING -exec_test $1 $2 "Ender-3 v2 with CrealityUI" "$3" +exec_test $1 $2 "Ender-3 v2 - CrealityUI" "$3" use_example_configs "Creality/Ender-3 V2/CrealityV422/CrealityUI" opt_disable DWIN_CREALITY_LCD opt_enable DWIN_CREALITY_LCD_JYERSUI AUTO_BED_LEVELING_BILINEAR PROBE_MANUALLY -exec_test $1 $2 "Ender-3 v2 with JyersUI" "$3" +exec_test $1 $2 "Ender-3 v2 - JyersUI (ABL Bilinear/Manual)" "$3" + +use_example_configs "Creality/Ender-3 V2/CrealityV422/CrealityUI" +opt_disable DWIN_CREALITY_LCD PIDTEMP +opt_enable DWIN_MARLINUI_LANDSCAPE LCD_ENDSTOP_TEST AUTO_BED_LEVELING_UBL BLTOUCH Z_SAFE_HOMING MPCTEMP MPC_AUTOTUNE +exec_test $1 $2 "Ender-3 v2 - MarlinUI (UBL+BLTOUCH, MPCTEMP, LCD_ENDSTOP_TEST)" "$3" use_example_configs "Creality/Ender-3 S1/STM32F1" opt_disable DWIN_CREALITY_LCD Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN AUTO_BED_LEVELING_BILINEAR CANCEL_OBJECTS FWRETRACT @@ -25,11 +30,7 @@ opt_enable DWIN_LCD_PROUI INDIVIDUAL_AXIS_HOMING_SUBMENU SET_PROGRESS_MANUALLY S BLTOUCH Z_SAFE_HOMING AUTO_BED_LEVELING_UBL MESH_EDIT_MENU \ LIMITED_MAX_FR_EDITING LIMITED_MAX_ACCEL_EDITING LIMITED_JERK_EDITING BAUD_RATE_GCODE opt_set PREHEAT_3_LABEL '"CUSTOM"' PREHEAT_3_TEMP_HOTEND 240 PREHEAT_3_TEMP_BED 60 PREHEAT_3_FAN_SPEED 128 -exec_test $1 $2 "Ender-3 S1 with ProUI (PIDTEMP)" "$3" - -opt_disable PIDTEMP -opt_enable MPCTEMP MPC_AUTOTUNE -exec_test $1 $2 "Ender-3 S1 with ProUI (MPCTEMP)" "$3" +exec_test $1 $2 "Ender-3 S1 - ProUI (PIDTEMP)" "$3" restore_configs opt_set MOTHERBOARD BOARD_CREALITY_V452 SERIAL_PORT 1 From 726de7e82136c1a718b0c62425231eb0662592b6 Mon Sep 17 00:00:00 2001 From: Nomis-97 <72187111+Nomis-97@users.noreply.github.com> Date: Sat, 22 Apr 2023 10:16:19 +0200 Subject: [PATCH 046/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20MKS=20Gen-L=20MOSF?= =?UTF-8?q?ETs=20(#25717)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/pins/ramps/pins_MKS_GEN_L.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Marlin/src/pins/ramps/pins_MKS_GEN_L.h b/Marlin/src/pins/ramps/pins_MKS_GEN_L.h index 5d1136e4ef1a..06bb35c72b77 100644 --- a/Marlin/src/pins/ramps/pins_MKS_GEN_L.h +++ b/Marlin/src/pins/ramps/pins_MKS_GEN_L.h @@ -38,10 +38,10 @@ // Heaters / Fans // -#define MOSFET_A_PIN 9 // HE0 -#define MOSFET_B_PIN 8 // HE1 -#define MOSFET_C_PIN 10 // HBED -#define FAN0_PIN 7 +#define MOSFET_A_PIN 10 // HE0 +#define MOSFET_B_PIN 7 // HE1 or FAN Hotend Cooling +#define MOSFET_C_PIN 8 // HBED +#define FAN0_PIN 9 // FAN Part Cooling // // CS Pins wired to avoid conflict with the LCD From fba1f838551d13339df3a0f6f82c46b92631c730 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Sat, 22 Apr 2023 21:02:51 +1200 Subject: [PATCH 047/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20Anycubic=20PlayTun?= =?UTF-8?q?e=20(#25728)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25690 --- Marlin/src/lcd/extui/anycubic/Tunes.h | 2 +- Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Marlin/src/lcd/extui/anycubic/Tunes.h b/Marlin/src/lcd/extui/anycubic/Tunes.h index a05107738d24..be8bc7223c80 100644 --- a/Marlin/src/lcd/extui/anycubic/Tunes.h +++ b/Marlin/src/lcd/extui/anycubic/Tunes.h @@ -61,7 +61,7 @@ n_END=10000 // end of tune marker namespace Anycubic { - void PlayTune(const uint8_t beeperPin, const uint16_t *tune, const uint8_t speed); + void PlayTune(const uint16_t *tune, const uint8_t speed); // Only uncomment the tunes you are using to save memory // This will help you write tunes! diff --git a/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.cpp b/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.cpp index 38603f567915..03eba4c5b355 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.cpp @@ -40,8 +40,8 @@ using namespace ExtUI; namespace Anycubic { - FileList FileNavigator::filelist; // Instance of the Marlin file API - char FileNavigator::currentfoldername[MAX_PATH_LEN]; // Current folder path + FileList FileNavigator::filelist; // Instance of the Marlin file API + char FileNavigator::currentfoldername[MAX_PATH_LEN + 1]; // Current folder path uint16_t FileNavigator::lastindex; uint8_t FileNavigator::folderdepth; uint16_t FileNavigator::currentindex; // override the panel request From 89ccede139963091768985eeb4ca5a6e3111647c Mon Sep 17 00:00:00 2001 From: "Alexey D. Filimonov" Date: Sat, 22 Apr 2023 12:06:19 +0300 Subject: [PATCH 048/427] =?UTF-8?q?=F0=9F=8E=A8=20Clean=20up=20TFT=20Color?= =?UTF-8?q?=20UI=20display=20items=20(#25712)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/lcd/tft/ui_1024x600.cpp | 14 +++++----- Marlin/src/lcd/tft/ui_320x240.cpp | 14 +++++----- Marlin/src/lcd/tft/ui_480x320.cpp | 14 +++++----- Marlin/src/lcd/tft/ui_common.h | 41 +++++++++--------------------- 4 files changed, 33 insertions(+), 50 deletions(-) diff --git a/Marlin/src/lcd/tft/ui_1024x600.cpp b/Marlin/src/lcd/tft/ui_1024x600.cpp index 6b628bc4cf42..638e32a9b3c4 100644 --- a/Marlin/src/lcd/tft/ui_1024x600.cpp +++ b/Marlin/src/lcd/tft/ui_1024x600.cpp @@ -228,25 +228,25 @@ void MarlinUI::draw_status_screen() { for (i = 0 ; i < ITEMS_COUNT; i++) { x = (TFT_WIDTH / ITEMS_COUNT - 80) / 2 + (TFT_WIDTH * i / ITEMS_COUNT); switch (i) { - #ifdef ITEM_E0 + #if HAS_EXTRUDERS case ITEM_E0: draw_heater_status(x, y, H_E0); break; #endif - #ifdef ITEM_E1 + #if HAS_MULTI_HOTEND case ITEM_E1: draw_heater_status(x, y, H_E1); break; #endif - #ifdef ITEM_E2 + #if HOTENDS > 2 case ITEM_E2: draw_heater_status(x, y, H_E2); break; #endif - #ifdef ITEM_BED + #if HAS_HEATED_BED case ITEM_BED: draw_heater_status(x, y, H_BED); break; #endif - #ifdef ITEM_CHAMBER + #if HAS_TEMP_CHAMBER case ITEM_CHAMBER: draw_heater_status(x, y, H_CHAMBER); break; #endif - #ifdef ITEM_COOLER + #if HAS_TEMP_COOLER case ITEM_COOLER: draw_heater_status(x, y, H_COOLER); break; #endif - #ifdef ITEM_FAN + #if HAS_FAN case ITEM_FAN: draw_fan_status(x, y, blink); break; #endif } diff --git a/Marlin/src/lcd/tft/ui_320x240.cpp b/Marlin/src/lcd/tft/ui_320x240.cpp index 11e473023904..e606dca7ced4 100644 --- a/Marlin/src/lcd/tft/ui_320x240.cpp +++ b/Marlin/src/lcd/tft/ui_320x240.cpp @@ -230,25 +230,25 @@ void MarlinUI::draw_status_screen() { for (i = 0 ; i < ITEMS_COUNT; i++) { x = (TFT_WIDTH / ITEMS_COUNT - 64) / 2 + (TFT_WIDTH * i / ITEMS_COUNT); switch (i) { - #ifdef ITEM_E0 + #if HAS_EXTRUDERS case ITEM_E0: draw_heater_status(x, y, H_E0); break; #endif - #ifdef ITEM_E1 + #if HAS_MULTI_HOTEND case ITEM_E1: draw_heater_status(x, y, H_E1); break; #endif - #ifdef ITEM_E2 + #if HOTENDS > 2 case ITEM_E2: draw_heater_status(x, y, H_E2); break; #endif - #ifdef ITEM_BED + #if HAS_HEATED_BED case ITEM_BED: draw_heater_status(x, y, H_BED); break; #endif - #ifdef ITEM_CHAMBER + #if HAS_TEMP_CHAMBER case ITEM_CHAMBER: draw_heater_status(x, y, H_CHAMBER); break; #endif - #ifdef ITEM_COOLER + #if HAS_TEMP_COOLER case ITEM_COOLER: draw_heater_status(x, y, H_COOLER); break; #endif - #ifdef ITEM_FAN + #if HAS_FAN case ITEM_FAN: draw_fan_status(x, y, blink); break; #endif } diff --git a/Marlin/src/lcd/tft/ui_480x320.cpp b/Marlin/src/lcd/tft/ui_480x320.cpp index 54762da671a7..edc3d321f2cd 100644 --- a/Marlin/src/lcd/tft/ui_480x320.cpp +++ b/Marlin/src/lcd/tft/ui_480x320.cpp @@ -228,25 +228,25 @@ void MarlinUI::draw_status_screen() { for (i = 0 ; i < ITEMS_COUNT; i++) { x = (TFT_WIDTH / ITEMS_COUNT - 80) / 2 + (TFT_WIDTH * i / ITEMS_COUNT); switch (i) { - #ifdef ITEM_E0 + #if HAS_EXTRUDERS case ITEM_E0: draw_heater_status(x, y, H_E0); break; #endif - #ifdef ITEM_E1 + #if HAS_MULTI_HOTEND case ITEM_E1: draw_heater_status(x, y, H_E1); break; #endif - #ifdef ITEM_E2 + #if HOTENDS > 2 case ITEM_E2: draw_heater_status(x, y, H_E2); break; #endif - #ifdef ITEM_BED + #if HAS_HEATED_BED case ITEM_BED: draw_heater_status(x, y, H_BED); break; #endif - #ifdef ITEM_CHAMBER + #if HAS_TEMP_CHAMBER case ITEM_CHAMBER: draw_heater_status(x, y, H_CHAMBER); break; #endif - #ifdef ITEM_COOLER + #if HAS_TEMP_COOLER case ITEM_COOLER: draw_heater_status(x, y, H_COOLER); break; #endif - #ifdef ITEM_FAN + #if HAS_FAN case ITEM_FAN: draw_fan_status(x, y, blink); break; #endif } diff --git a/Marlin/src/lcd/tft/ui_common.h b/Marlin/src/lcd/tft/ui_common.h index 7329c31a52a5..2a81ee2114b3 100644 --- a/Marlin/src/lcd/tft/ui_common.h +++ b/Marlin/src/lcd/tft/ui_common.h @@ -57,32 +57,15 @@ void menu_item(const uint8_t row, bool sel = false); #define ABSOLUTE_ZERO -273.15 -#if HAS_TEMP_CHAMBER && HAS_MULTI_HOTEND - #define ITEM_E0 0 - #define ITEM_E1 1 - #define ITEM_BED 2 - #define ITEM_CHAMBER 3 - #define ITEM_FAN 4 - #define ITEMS_COUNT 5 -#elif HAS_TEMP_CHAMBER - #define ITEM_E0 0 - #define ITEM_BED 1 - #define ITEM_CHAMBER 2 - #define ITEM_FAN 3 - #define ITEMS_COUNT 4 -#elif HAS_TEMP_COOLER - #define ITEM_COOLER 0 - #define ITEM_FAN 1 - #define ITEMS_COUNT 2 -#elif HAS_MULTI_HOTEND - #define ITEM_E0 0 - #define ITEM_E1 1 - #define ITEM_BED 2 - #define ITEM_FAN 3 - #define ITEMS_COUNT 4 -#else - #define ITEM_E0 0 - #define ITEM_BED 1 - #define ITEM_FAN 2 - #define ITEMS_COUNT 3 -#endif +enum { + OPTITEM(HAS_EXTRUDERS, ITEM_E0) + OPTITEM(HAS_MULTI_HOTEND, ITEM_E1) + #if HOTENDS > 2 + ITEM_E2, + #endif + OPTITEM(HAS_HEATED_BED, ITEM_BED) + OPTITEM(HAS_TEMP_CHAMBER, ITEM_CHAMBER) + OPTITEM(HAS_TEMP_COOLER, ITEM_COOLER) + OPTITEM(HAS_FAN, ITEM_FAN) + ITEMS_COUNT +}; From c8ed7950f40f9f454fc769b02d53f1086b17576c Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Sat, 22 Apr 2023 21:09:17 +1200 Subject: [PATCH 049/427] =?UTF-8?q?=F0=9F=94=A7=20Permit=20extrude=20witho?= =?UTF-8?q?ut=20hotend=20(#25709)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/gcode/gcode.cpp | 2 +- Marlin/src/gcode/gcode.h | 2 +- Marlin/src/gcode/temp/M104_M109.cpp | 4 +- Marlin/src/inc/Conditionals_LCD.h | 83 +++++++------ Marlin/src/inc/Conditionals_adv.h | 178 +++++++++++++--------------- Marlin/src/inc/SanityCheck.h | 145 +++++++++++----------- Marlin/src/module/temperature.cpp | 2 +- 7 files changed, 202 insertions(+), 214 deletions(-) diff --git a/Marlin/src/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index 0711d39204f2..9d1014e8bfb6 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -581,7 +581,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 102: M102(); break; // M102: Configure Bed Distance Sensor #endif - #if HAS_EXTRUDERS + #if HAS_HOTEND case 104: M104(); break; // M104: Set hot end temperature case 109: M109(); break; // M109: Wait for hotend temperature to reach target #endif diff --git a/Marlin/src/gcode/gcode.h b/Marlin/src/gcode/gcode.h index 8493d7f2911d..d49c544623ba 100644 --- a/Marlin/src/gcode/gcode.h +++ b/Marlin/src/gcode/gcode.h @@ -716,7 +716,7 @@ class GcodeSuite { static void M102_report(const bool forReplay=true); #endif - #if HAS_EXTRUDERS + #if HAS_HOTEND static void M104_M109(const bool isM109); FORCE_INLINE static void M104() { M104_M109(false); } FORCE_INLINE static void M109() { M104_M109(true); } diff --git a/Marlin/src/gcode/temp/M104_M109.cpp b/Marlin/src/gcode/temp/M104_M109.cpp index 331ceeb61db1..db150d55181d 100644 --- a/Marlin/src/gcode/temp/M104_M109.cpp +++ b/Marlin/src/gcode/temp/M104_M109.cpp @@ -28,7 +28,7 @@ #include "../../inc/MarlinConfigPre.h" -#if HAS_EXTRUDERS +#if HAS_HOTEND #include "../gcode.h" #include "../../module/temperature.h" @@ -135,4 +135,4 @@ void GcodeSuite::M104_M109(const bool isM109) { (void)thermalManager.wait_for_hotend(target_extruder, no_wait_for_cooling); } -#endif // EXTRUDERS +#endif // HAS_HOTEND diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 5cc1d07b095f..32a2eda7c7ed 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -624,8 +624,6 @@ #undef MIXING_EXTRUDER #undef HOTEND_IDLE_TIMEOUT #undef DISABLE_E - #undef THERMAL_PROTECTION_HOTENDS - #undef PREVENT_COLD_EXTRUSION #undef PREVENT_LENGTHY_EXTRUDE #undef FILAMENT_RUNOUT_SENSOR #undef FILAMENT_RUNOUT_DISTANCE_MM @@ -657,9 +655,6 @@ #else #define E_STEPPERS 1 #endif - #if !HAS_SWITCHING_NOZZLE - #define HOTENDS E_STEPPERS - #endif #elif ENABLED(MIXING_EXTRUDER) // Multiple feeds are mixed proportionally @@ -691,16 +686,7 @@ #define SINGLENOZZLE #endif -#if EITHER(SINGLENOZZLE, MIXING_EXTRUDER) // One hotend, one thermistor, no XY offset - #undef HOTENDS - #define HOTENDS 1 - #undef HOTEND_OFFSET_X - #undef HOTEND_OFFSET_Y -#endif - -#ifndef HOTENDS - #define HOTENDS EXTRUDERS -#endif +// Default E steppers / manual motion is one per extruder #ifndef E_STEPPERS #define E_STEPPERS EXTRUDERS #endif @@ -708,6 +694,45 @@ #define E_MANUAL EXTRUDERS #endif +// Number of hotends... +#if EITHER(SINGLENOZZLE, MIXING_EXTRUDER) // Only one for singlenozzle or mixing extruder + #define HOTENDS 1 +#elif HAS_SWITCHING_EXTRUDER && !HAS_SWITCHING_NOZZLE // One for each pair of abstract "extruders" + #define HOTENDS E_STEPPERS +#elif TEMP_SENSOR_0 + #define HOTENDS EXTRUDERS // One per extruder if at least one heater exists +#else + #define HOTENDS 0 // A machine with no hotends at all can still extrude +#endif + +// More than one hotend... +#if HOTENDS > 1 + #define HAS_MULTI_HOTEND 1 + #define HAS_HOTEND_OFFSET 1 + #ifndef HOTEND_OFFSET_X + #define HOTEND_OFFSET_X { 0 } // X offsets for each extruder + #endif + #ifndef HOTEND_OFFSET_Y + #define HOTEND_OFFSET_Y { 0 } // Y offsets for each extruder + #endif + #ifndef HOTEND_OFFSET_Z + #define HOTEND_OFFSET_Z { 0 } // Z offsets for each extruder + #endif +#else + #undef HOTEND_OFFSET_X + #undef HOTEND_OFFSET_Y + #undef HOTEND_OFFSET_Z +#endif + +// At least one hotend... +#if HOTENDS + #define HAS_HOTEND 1 + #ifndef HOTEND_OVERSHOOT + #define HOTEND_OVERSHOOT 15 + #endif +#endif + +// Clean up E-stepper-based settings... #if E_STEPPERS <= 7 #undef INVERT_E7_DIR #undef E7_DRIVER_TYPE @@ -1037,19 +1062,6 @@ #define E_INDEX_N(E) 0 #endif -#if HOTENDS - #define HAS_HOTEND 1 - #ifndef HOTEND_OVERSHOOT - #define HOTEND_OVERSHOOT 15 - #endif - #if HOTENDS > 1 - #define HAS_MULTI_HOTEND 1 - #define HAS_HOTEND_OFFSET 1 - #endif -#else - #undef PID_PARAMS_PER_HOTEND -#endif - // Helper macros for extruder and hotend arrays #define _EXTRUDER_LOOP(E) for (int8_t E = 0; E < EXTRUDERS; E++) #define EXTRUDER_LOOP() _EXTRUDER_LOOP(e) @@ -1061,21 +1073,6 @@ #define ARRAY_BY_HOTENDS(V...) ARRAY_N(HOTENDS, V) #define ARRAY_BY_HOTENDS1(v1) ARRAY_N_1(HOTENDS, v1) -/** - * Default hotend offsets, if not defined - */ -#if HAS_HOTEND_OFFSET - #ifndef HOTEND_OFFSET_X - #define HOTEND_OFFSET_X { 0 } // X offsets for each extruder - #endif - #ifndef HOTEND_OFFSET_Y - #define HOTEND_OFFSET_Y { 0 } // Y offsets for each extruder - #endif - #ifndef HOTEND_OFFSET_Z - #define HOTEND_OFFSET_Z { 0 } // Z offsets for each extruder - #endif -#endif - /** * Disable unused SINGLENOZZLE sub-options */ diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index 3a3daa84acf4..c9c8fdf2d517 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -184,7 +184,6 @@ #if !HAS_EXTRUDERS #define NO_VOLUMETRICS #undef ADVANCED_PAUSE_FEATURE - #undef AUTOTEMP #undef DISABLE_IDLE_E #undef EXTRUDER_RUNOUT_PREVENT #undef FILAMENT_LOAD_UNLOAD_GCODES @@ -193,11 +192,8 @@ #undef LIN_ADVANCE #undef MANUAL_E_MOVES_RELATIVE #undef PID_EXTRUSION_SCALING - #undef PIDTEMP #undef SHOW_TEMP_ADC_VALUES #undef STEALTHCHOP_E - #undef THERMAL_PROTECTION_PERIOD - #undef WATCH_TEMP_PERIOD #endif #if ENABLED(DISABLE_X) && !defined(DISABLE_IDLE_X) @@ -237,22 +233,47 @@ #endif #undef _OR_HAS_DI -#if HOTENDS <= 7 +// Remove hotend-dependent settings +#if HOTENDS < 8 #undef E7_AUTO_FAN_PIN - #if HOTENDS <= 6 + #undef HEATER_7_MAXTEMP + #undef HEATER_7_MINTEMP + #if HOTENDS < 7 #undef E6_AUTO_FAN_PIN - #if HOTENDS <= 5 + #undef HEATER_6_MAXTEMP + #undef HEATER_6_MINTEMP + #if HOTENDS < 6 #undef E5_AUTO_FAN_PIN - #if HOTENDS <= 4 + #undef HEATER_5_MAXTEMP + #undef HEATER_5_MINTEMP + #if HOTENDS < 5 #undef E4_AUTO_FAN_PIN - #if HOTENDS <= 3 + #undef HEATER_4_MAXTEMP + #undef HEATER_4_MINTEMP + #if HOTENDS < 4 #undef E3_AUTO_FAN_PIN - #if HOTENDS <= 2 + #undef HEATER_3_MAXTEMP + #undef HEATER_3_MINTEMP + #if HOTENDS < 3 #undef E2_AUTO_FAN_PIN - #if HOTENDS <= 1 + #undef HEATER_2_MAXTEMP + #undef HEATER_2_MINTEMP + #if HOTENDS < 2 #undef E1_AUTO_FAN_PIN - #if HOTENDS == 0 + #undef HEATER_1_MAXTEMP + #undef HEATER_1_MINTEMP + #if HOTENDS < 1 + #undef AUTOTEMP #undef E0_AUTO_FAN_PIN + #undef HEATER_0_MAXTEMP + #undef HEATER_0_MINTEMP + #undef PID_PARAMS_PER_HOTEND + #undef PIDTEMP + #undef MPCTEMP + #undef PREVENT_COLD_EXTRUSION + #undef THERMAL_PROTECTION_HOTENDS + #undef THERMAL_PROTECTION_PERIOD + #undef WATCH_TEMP_PERIOD #endif #endif #endif @@ -325,15 +346,13 @@ #define TEMP_SENSOR_0_IS_AD8495 1 #elif TEMP_SENSOR_0 == -1 #define TEMP_SENSOR_0_IS_AD595 1 -#elif TEMP_SENSOR_0 == 1000 - #define TEMP_SENSOR_0_IS_CUSTOM 1 #elif TEMP_SENSOR_0 == 998 || TEMP_SENSOR_0 == 999 #define TEMP_SENSOR_0_IS_DUMMY 1 #elif TEMP_SENSOR_0 > 0 #define TEMP_SENSOR_0_IS_THERMISTOR 1 -#else - #undef HEATER_0_MINTEMP - #undef HEATER_0_MAXTEMP + #if TEMP_SENSOR_0 == 1000 + #define TEMP_SENSOR_0_IS_CUSTOM 1 + #endif #endif #if TEMP_SENSOR_IS_MAX_TC(1) @@ -370,15 +389,13 @@ #define TEMP_SENSOR_1_IS_AD8495 1 #elif TEMP_SENSOR_1 == -1 #define TEMP_SENSOR_1_IS_AD595 1 -#elif TEMP_SENSOR_1 == 1000 - #define TEMP_SENSOR_1_IS_CUSTOM 1 #elif TEMP_SENSOR_1 == 998 || TEMP_SENSOR_1 == 999 #define TEMP_SENSOR_1_IS_DUMMY 1 #elif TEMP_SENSOR_1 > 0 #define TEMP_SENSOR_1_IS_THERMISTOR 1 -#else - #undef HEATER_1_MINTEMP - #undef HEATER_1_MAXTEMP + #if TEMP_SENSOR_1 == 1000 + #define TEMP_SENSOR_1_IS_CUSTOM 1 + #endif #endif #if TEMP_SENSOR_IS_MAX_TC(2) @@ -415,70 +432,58 @@ #define TEMP_SENSOR_2_IS_AD8495 1 #elif TEMP_SENSOR_2 == -1 #define TEMP_SENSOR_2_IS_AD595 1 -#elif TEMP_SENSOR_2 == 1000 - #define TEMP_SENSOR_2_IS_CUSTOM 1 #elif TEMP_SENSOR_2 == 998 || TEMP_SENSOR_2 == 999 #define TEMP_SENSOR_2_IS_DUMMY 1 #elif TEMP_SENSOR_2 > 0 #define TEMP_SENSOR_2_IS_THERMISTOR 1 -#else - #undef HEATER_2_MINTEMP - #undef HEATER_2_MAXTEMP + #if TEMP_SENSOR_2 == 1000 + #define TEMP_SENSOR_2_IS_CUSTOM 1 + #endif #endif -#if TEMP_SENSOR_3 == 1000 - #define TEMP_SENSOR_3_IS_CUSTOM 1 -#elif TEMP_SENSOR_3 == 998 || TEMP_SENSOR_3 == 999 +#if TEMP_SENSOR_3 == 998 || TEMP_SENSOR_3 == 999 #define TEMP_SENSOR_3_IS_DUMMY 1 #elif TEMP_SENSOR_3 > 0 #define TEMP_SENSOR_3_IS_THERMISTOR 1 -#elif !TEMP_SENSOR_3 - #undef HEATER_3_MINTEMP - #undef HEATER_3_MAXTEMP + #if TEMP_SENSOR_3 == 1000 + #define TEMP_SENSOR_3_IS_CUSTOM 1 + #endif #endif -#if TEMP_SENSOR_4 == 1000 - #define TEMP_SENSOR_4_IS_CUSTOM 1 -#elif TEMP_SENSOR_4 == 998 || TEMP_SENSOR_4 == 999 +#if TEMP_SENSOR_4 == 998 || TEMP_SENSOR_4 == 999 #define TEMP_SENSOR_4_IS_DUMMY 1 #elif TEMP_SENSOR_4 > 0 #define TEMP_SENSOR_4_IS_THERMISTOR 1 -#elif !TEMP_SENSOR_4 - #undef HEATER_4_MINTEMP - #undef HEATER_4_MAXTEMP + #if TEMP_SENSOR_4 == 1000 + #define TEMP_SENSOR_4_IS_CUSTOM 1 + #endif #endif -#if TEMP_SENSOR_5 == 1000 - #define TEMP_SENSOR_5_IS_CUSTOM 1 -#elif TEMP_SENSOR_5 == 998 || TEMP_SENSOR_5 == 999 +#if TEMP_SENSOR_5 == 998 || TEMP_SENSOR_5 == 999 #define TEMP_SENSOR_5_IS_DUMMY 1 #elif TEMP_SENSOR_5 > 0 #define TEMP_SENSOR_5_IS_THERMISTOR 1 -#elif !TEMP_SENSOR_5 - #undef HEATER_5_MINTEMP - #undef HEATER_5_MAXTEMP + #if TEMP_SENSOR_5 == 1000 + #define TEMP_SENSOR_5_IS_CUSTOM 1 + #endif #endif -#if TEMP_SENSOR_6 == 1000 - #define TEMP_SENSOR_6_IS_CUSTOM 1 -#elif TEMP_SENSOR_6 == 998 || TEMP_SENSOR_6 == 999 +#if TEMP_SENSOR_6 == 998 || TEMP_SENSOR_6 == 999 #define TEMP_SENSOR_6_IS_DUMMY 1 #elif TEMP_SENSOR_6 > 0 #define TEMP_SENSOR_6_IS_THERMISTOR 1 -#elif !TEMP_SENSOR_6 - #undef HEATER_6_MINTEMP - #undef HEATER_6_MAXTEMP + #if TEMP_SENSOR_6 == 1000 + #define TEMP_SENSOR_6_IS_CUSTOM 1 + #endif #endif -#if TEMP_SENSOR_7 == 1000 - #define TEMP_SENSOR_7_IS_CUSTOM 1 -#elif TEMP_SENSOR_7 == 998 || TEMP_SENSOR_7 == 999 +#if TEMP_SENSOR_7 == 998 || TEMP_SENSOR_7 == 999 #define TEMP_SENSOR_7_IS_DUMMY 1 #elif TEMP_SENSOR_7 > 0 #define TEMP_SENSOR_7_IS_THERMISTOR 1 -#elif !TEMP_SENSOR_7 - #undef HEATER_7_MINTEMP - #undef HEATER_7_MAXTEMP + #if TEMP_SENSOR_7 == 1000 + #define TEMP_SENSOR_7_IS_CUSTOM 1 + #endif #endif #if TEMP_SENSOR_IS_MAX_TC(REDUNDANT) @@ -542,12 +547,12 @@ #define TEMP_SENSOR_REDUNDANT_IS_AD8495 1 #elif TEMP_SENSOR_REDUNDANT == -1 #define TEMP_SENSOR_REDUNDANT_IS_AD595 1 +#elif TEMP_SENSOR_REDUNDANT == 998 || TEMP_SENSOR_REDUNDANT == 999 + #error "Dummy sensors are not supported for TEMP_SENSOR_REDUNDANT." #elif TEMP_SENSOR_REDUNDANT > 0 #define TEMP_SENSOR_REDUNDANT_IS_THERMISTOR 1 #if TEMP_SENSOR_REDUNDANT == 1000 #define TEMP_SENSOR_REDUNDANT_IS_CUSTOM 1 - #elif TEMP_SENSOR_REDUNDANT == 998 || TEMP_SENSOR_REDUNDANT == 999 - #error "Dummy sensors are not supported for TEMP_SENSOR_REDUNDANT." #endif #endif @@ -572,16 +577,13 @@ #error "MAX6675 Thermocouples (-2) not supported for TEMP_SENSOR_3." #elif TEMP_SENSOR_3 == -1 #define TEMP_SENSOR_3_IS_AD595 1 +#elif TEMP_SENSOR_3 == 998 || TEMP_SENSOR_3 == 999 + #define TEMP_SENSOR_3_IS_DUMMY 1 #elif TEMP_SENSOR_3 > 0 #define TEMP_SENSOR_3_IS_THERMISTOR 1 #if TEMP_SENSOR_3 == 1000 #define TEMP_SENSOR_3_IS_CUSTOM 1 - #elif TEMP_SENSOR_3 == 998 || TEMP_SENSOR_3 == 999 - #define TEMP_SENSOR_3_IS_DUMMY 1 #endif -#else - #undef HEATER_3_MINTEMP - #undef HEATER_3_MAXTEMP #endif #if TEMP_SENSOR_4 == -4 @@ -592,16 +594,13 @@ #error "MAX6675 Thermocouples (-2) not supported for TEMP_SENSOR_4." #elif TEMP_SENSOR_4 == -1 #define TEMP_SENSOR_4_IS_AD595 1 +#elif TEMP_SENSOR_4 == 998 || TEMP_SENSOR_4 == 999 + #define TEMP_SENSOR_4_IS_DUMMY 1 #elif TEMP_SENSOR_4 > 0 #define TEMP_SENSOR_4_IS_THERMISTOR 1 #if TEMP_SENSOR_4 == 1000 #define TEMP_SENSOR_4_IS_CUSTOM 1 - #elif TEMP_SENSOR_4 == 998 || TEMP_SENSOR_4 == 999 - #define TEMP_SENSOR_4_IS_DUMMY 1 #endif -#else - #undef HEATER_4_MINTEMP - #undef HEATER_4_MAXTEMP #endif #if TEMP_SENSOR_5 == -4 @@ -612,16 +611,13 @@ #error "MAX6675 Thermocouples (-2) not supported for TEMP_SENSOR_5." #elif TEMP_SENSOR_5 == -1 #define TEMP_SENSOR_5_IS_AD595 1 +#elif TEMP_SENSOR_5 == 998 || TEMP_SENSOR_5 == 999 + #define TEMP_SENSOR_5_IS_DUMMY 1 #elif TEMP_SENSOR_5 > 0 #define TEMP_SENSOR_5_IS_THERMISTOR 1 #if TEMP_SENSOR_5 == 1000 #define TEMP_SENSOR_5_IS_CUSTOM 1 - #elif TEMP_SENSOR_5 == 998 || TEMP_SENSOR_5 == 999 - #define TEMP_SENSOR_5_IS_DUMMY 1 #endif -#else - #undef HEATER_5_MINTEMP - #undef HEATER_5_MAXTEMP #endif #if TEMP_SENSOR_6 == -4 @@ -632,16 +628,13 @@ #error "MAX6675 Thermocouples (-2) not supported for TEMP_SENSOR_6." #elif TEMP_SENSOR_6 == -1 #define TEMP_SENSOR_6_IS_AD595 1 +#elif TEMP_SENSOR_6 == 998 || TEMP_SENSOR_6 == 999 + #define TEMP_SENSOR_6_IS_DUMMY 1 #elif TEMP_SENSOR_6 > 0 #define TEMP_SENSOR_6_IS_THERMISTOR 1 #if TEMP_SENSOR_6 == 1000 #define TEMP_SENSOR_6_IS_CUSTOM 1 - #elif TEMP_SENSOR_6 == 998 || TEMP_SENSOR_6 == 999 - #define TEMP_SENSOR_6_IS_DUMMY 1 #endif -#else - #undef HEATER_6_MINTEMP - #undef HEATER_6_MAXTEMP #endif #if TEMP_SENSOR_7 == -4 @@ -652,16 +645,13 @@ #error "MAX7775 Thermocouples (-2) not supported for TEMP_SENSOR_7." #elif TEMP_SENSOR_7 == -1 #define TEMP_SENSOR_7_IS_AD595 1 +#elif TEMP_SENSOR_7 == 998 || TEMP_SENSOR_7 == 999 + #define TEMP_SENSOR_7_IS_DUMMY 1 #elif TEMP_SENSOR_7 > 0 #define TEMP_SENSOR_7_IS_THERMISTOR 1 #if TEMP_SENSOR_7 == 1000 #define TEMP_SENSOR_7_IS_CUSTOM 1 - #elif TEMP_SENSOR_7 == 998 || TEMP_SENSOR_7 == 999 - #define TEMP_SENSOR_7_IS_DUMMY 1 #endif -#else - #undef HEATER_7_MINTEMP - #undef HEATER_7_MAXTEMP #endif #if TEMP_SENSOR_BED == -4 @@ -672,12 +662,12 @@ #error "MAX6675 Thermocouples (-2) not supported for TEMP_SENSOR_BED." #elif TEMP_SENSOR_BED == -1 #define TEMP_SENSOR_BED_IS_AD595 1 +#elif TEMP_SENSOR_BED == 998 || TEMP_SENSOR_BED == 999 + #define TEMP_SENSOR_BED_IS_DUMMY 1 #elif TEMP_SENSOR_BED > 0 #define TEMP_SENSOR_BED_IS_THERMISTOR 1 #if TEMP_SENSOR_BED == 1000 #define TEMP_SENSOR_BED_IS_CUSTOM 1 - #elif TEMP_SENSOR_BED == 998 || TEMP_SENSOR_BED == 999 - #define TEMP_SENSOR_BED_IS_DUMMY 1 #endif #else #undef THERMAL_PROTECTION_BED @@ -694,12 +684,12 @@ #error "MAX6675 Thermocouples (-2) not supported for TEMP_SENSOR_CHAMBER." #elif TEMP_SENSOR_CHAMBER == -1 #define TEMP_SENSOR_CHAMBER_IS_AD595 1 +#elif TEMP_SENSOR_CHAMBER == 998 || TEMP_SENSOR_CHAMBER == 999 + #define TEMP_SENSOR_CHAMBER_IS_DUMMY 1 #elif TEMP_SENSOR_CHAMBER > 0 #define TEMP_SENSOR_CHAMBER_IS_THERMISTOR 1 #if TEMP_SENSOR_CHAMBER == 1000 #define TEMP_SENSOR_CHAMBER_IS_CUSTOM 1 - #elif TEMP_SENSOR_CHAMBER == 998 || TEMP_SENSOR_CHAMBER == 999 - #define TEMP_SENSOR_CHAMBER_IS_DUMMY 1 #endif #else #undef THERMAL_PROTECTION_CHAMBER @@ -715,12 +705,12 @@ #error "MAX6675 Thermocouples (-2) not supported for TEMP_SENSOR_COOLER." #elif TEMP_SENSOR_COOLER == -1 #define TEMP_SENSOR_COOLER_IS_AD595 1 +#elif TEMP_SENSOR_COOLER == 998 || TEMP_SENSOR_COOLER == 999 + #define TEMP_SENSOR_COOLER_IS_DUMMY 1 #elif TEMP_SENSOR_COOLER > 0 #define TEMP_SENSOR_COOLER_IS_THERMISTOR 1 #if TEMP_SENSOR_COOLER == 1000 #define TEMP_SENSOR_COOLER_IS_CUSTOM 1 - #elif TEMP_SENSOR_COOLER == 998 || TEMP_SENSOR_COOLER == 999 - #define TEMP_SENSOR_COOLER_IS_DUMMY 1 #endif #else #undef THERMAL_PROTECTION_COOLER @@ -736,12 +726,12 @@ #error "MAX6675 Thermocouples (-2) not supported for TEMP_SENSOR_PROBE." #elif TEMP_SENSOR_PROBE == -1 #define TEMP_SENSOR_PROBE_IS_AD595 1 +#elif TEMP_SENSOR_PROBE == 998 || TEMP_SENSOR_PROBE == 999 + #define TEMP_SENSOR_PROBE_IS_DUMMY 1 #elif TEMP_SENSOR_PROBE > 0 #define TEMP_SENSOR_PROBE_IS_THERMISTOR 1 #if TEMP_SENSOR_PROBE == 1000 #define TEMP_SENSOR_PROBE_IS_CUSTOM 1 - #elif TEMP_SENSOR_PROBE == 998 || TEMP_SENSOR_PROBE == 999 - #define TEMP_SENSOR_PROBE_IS_DUMMY 1 #endif #endif @@ -753,12 +743,12 @@ #error "MAX6675 Thermocouples (-2) not supported for TEMP_SENSOR_BOARD." #elif TEMP_SENSOR_BOARD == -1 #define TEMP_SENSOR_BOARD_IS_AD595 1 +#elif TEMP_SENSOR_BOARD == 998 || TEMP_SENSOR_BOARD == 999 + #define TEMP_SENSOR_BOARD_IS_DUMMY 1 #elif TEMP_SENSOR_BOARD > 0 #define TEMP_SENSOR_BOARD_IS_THERMISTOR 1 #if TEMP_SENSOR_BOARD == 1000 #define TEMP_SENSOR_BOARD_IS_CUSTOM 1 - #elif TEMP_SENSOR_BOARD == 998 || TEMP_SENSOR_BOARD == 999 - #define TEMP_SENSOR_BOARD_IS_DUMMY 1 #endif #endif diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index a7aec8e83383..d4314155591b 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -2628,84 +2628,85 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #endif /** - * Test Sensor & Heater pin combos. * Pins and Sensor IDs must be set for each heater */ -#if HAS_EXTRUDERS && !ANY_PIN(TEMP_0, TEMP_0_CS) - #error "TEMP_0_PIN or TEMP_0_CS_PIN not defined for this board." -#elif HAS_EXTRUDERS && !HAS_HEATER_0 - #error "HEATER_0_PIN not defined for this board." -#elif TEMP_SENSOR_IS_MAX_TC(0) && !PIN_EXISTS(TEMP_0_CS) - #error "TEMP_SENSOR_0 MAX thermocouple requires TEMP_0_CS_PIN." -#elif HAS_HOTEND && !HAS_TEMP_HOTEND && !TEMP_SENSOR_0_IS_DUMMY - #error "TEMP_0_PIN (required for TEMP_SENSOR_0) not defined for this board." -#elif EITHER(HAS_MULTI_HOTEND, HEATERS_PARALLEL) && !HAS_HEATER_1 - #error "HEATER_1_PIN is not defined. TEMP_SENSOR_1 might not be set, or the board (not EEB / EEF?) doesn't define a pin." -#endif - -#if HAS_MULTI_HOTEND - #if TEMP_SENSOR_IS_MAX_TC(1) && !PIN_EXISTS(TEMP_1_CS) - #error "TEMP_SENSOR_1 MAX thermocouple requires TEMP_1_CS_PIN." - #elif TEMP_SENSOR_1 == 0 - #error "TEMP_SENSOR_1 is required with 2 or more HOTENDS." - #elif !ANY_PIN(TEMP_1, TEMP_1_CS) && !TEMP_SENSOR_1_IS_DUMMY - #error "TEMP_1_PIN or TEMP_1_CS_PIN not defined for this board." - #endif - #if HOTENDS > 2 - #if TEMP_SENSOR_2 == 0 - #error "TEMP_SENSOR_2 is required with 3 or more HOTENDS." - #elif !HAS_HEATER_2 - #error "HEATER_2_PIN not defined for this board." - #elif !ANY_PIN(TEMP_2, TEMP_2_CS) && !TEMP_SENSOR_2_IS_DUMMY - #error "TEMP_2_PIN or TEMP_2_CS_PIN not defined for this board." +#if HAS_HOTEND + #if !HAS_HEATER_0 + #error "HEATER_0_PIN not defined for this board." + #elif TEMP_SENSOR_IS_MAX_TC(0) && !PIN_EXISTS(TEMP_0_CS) + #error "TEMP_SENSOR_0 MAX thermocouple requires TEMP_0_CS_PIN." + #elif TEMP_SENSOR_0 == 0 + #error "TEMP_SENSOR_0 is required with 1 or more HOTENDS." + #elif !ANY_PIN(TEMP_0, TEMP_0_CS) && !TEMP_SENSOR_0_IS_DUMMY + #error "TEMP_0_PIN or TEMP_0_CS_PIN not defined for this board." + #endif + #if EITHER(HAS_MULTI_HOTEND, HEATERS_PARALLEL) && !HAS_HEATER_1 + #error "HEATER_1_PIN is not defined. TEMP_SENSOR_1 might not be set, or the board (not EEB / EEF?) doesn't define a pin." + #endif + #if HAS_MULTI_HOTEND + #if TEMP_SENSOR_IS_MAX_TC(1) && !PIN_EXISTS(TEMP_1_CS) + #error "TEMP_SENSOR_1 MAX thermocouple requires TEMP_1_CS_PIN." + #elif TEMP_SENSOR_1 == 0 + #error "TEMP_SENSOR_1 is required with 2 or more HOTENDS." + #elif !ANY_PIN(TEMP_1, TEMP_1_CS) && !TEMP_SENSOR_1_IS_DUMMY + #error "TEMP_1_PIN or TEMP_1_CS_PIN not defined for this board." #endif - #if HOTENDS > 3 - #if TEMP_SENSOR_3 == 0 - #error "TEMP_SENSOR_3 is required with 4 or more HOTENDS." - #elif !HAS_HEATER_3 - #error "HEATER_3_PIN not defined for this board." - #elif !PIN_EXISTS(TEMP_3) && !TEMP_SENSOR_3_IS_DUMMY - #error "TEMP_3_PIN not defined for this board." + #if HOTENDS > 2 + #if TEMP_SENSOR_2 == 0 + #error "TEMP_SENSOR_2 is required with 3 or more HOTENDS." + #elif !HAS_HEATER_2 + #error "HEATER_2_PIN not defined for this board." + #elif !ANY_PIN(TEMP_2, TEMP_2_CS) && !TEMP_SENSOR_2_IS_DUMMY + #error "TEMP_2_PIN or TEMP_2_CS_PIN not defined for this board." #endif - #if HOTENDS > 4 - #if TEMP_SENSOR_4 == 0 - #error "TEMP_SENSOR_4 is required with 5 or more HOTENDS." - #elif !HAS_HEATER_4 - #error "HEATER_4_PIN not defined for this board." - #elif !PIN_EXISTS(TEMP_4) && !TEMP_SENSOR_4_IS_DUMMY - #error "TEMP_4_PIN not defined for this board." + #if HOTENDS > 3 + #if TEMP_SENSOR_3 == 0 + #error "TEMP_SENSOR_3 is required with 4 or more HOTENDS." + #elif !HAS_HEATER_3 + #error "HEATER_3_PIN not defined for this board." + #elif !PIN_EXISTS(TEMP_3) && !TEMP_SENSOR_3_IS_DUMMY + #error "TEMP_3_PIN not defined for this board." #endif - #if HOTENDS > 5 - #if TEMP_SENSOR_5 == 0 - #error "TEMP_SENSOR_5 is required with 6 HOTENDS." - #elif !HAS_HEATER_5 - #error "HEATER_5_PIN not defined for this board." - #elif !PIN_EXISTS(TEMP_5) && !TEMP_SENSOR_5_IS_DUMMY - #error "TEMP_5_PIN not defined for this board." + #if HOTENDS > 4 + #if TEMP_SENSOR_4 == 0 + #error "TEMP_SENSOR_4 is required with 5 or more HOTENDS." + #elif !HAS_HEATER_4 + #error "HEATER_4_PIN not defined for this board." + #elif !PIN_EXISTS(TEMP_4) && !TEMP_SENSOR_4_IS_DUMMY + #error "TEMP_4_PIN not defined for this board." #endif - #if HOTENDS > 6 - #if TEMP_SENSOR_6 == 0 - #error "TEMP_SENSOR_6 is required with 6 HOTENDS." - #elif !HAS_HEATER_6 - #error "HEATER_6_PIN not defined for this board." - #elif !PIN_EXISTS(TEMP_6) && !TEMP_SENSOR_6_IS_DUMMY - #error "TEMP_6_PIN not defined for this board." + #if HOTENDS > 5 + #if TEMP_SENSOR_5 == 0 + #error "TEMP_SENSOR_5 is required with 6 HOTENDS." + #elif !HAS_HEATER_5 + #error "HEATER_5_PIN not defined for this board." + #elif !PIN_EXISTS(TEMP_5) && !TEMP_SENSOR_5_IS_DUMMY + #error "TEMP_5_PIN not defined for this board." #endif - #if HOTENDS > 7 - #if TEMP_SENSOR_7 == 0 - #error "TEMP_SENSOR_7 is required with 7 HOTENDS." - #elif !HAS_HEATER_7 - #error "HEATER_7_PIN not defined for this board." - #elif !PIN_EXISTS(TEMP_7) && !TEMP_SENSOR_7_IS_DUMMY - #error "TEMP_7_PIN not defined for this board." + #if HOTENDS > 6 + #if TEMP_SENSOR_6 == 0 + #error "TEMP_SENSOR_6 is required with 6 HOTENDS." + #elif !HAS_HEATER_6 + #error "HEATER_6_PIN not defined for this board." + #elif !PIN_EXISTS(TEMP_6) && !TEMP_SENSOR_6_IS_DUMMY + #error "TEMP_6_PIN not defined for this board." #endif - #endif // HOTENDS > 7 - #endif // HOTENDS > 6 - #endif // HOTENDS > 5 - #endif // HOTENDS > 4 - #endif // HOTENDS > 3 - #endif // HOTENDS > 2 -#endif // HAS_MULTI_HOTEND + #if HOTENDS > 7 + #if TEMP_SENSOR_7 == 0 + #error "TEMP_SENSOR_7 is required with 7 HOTENDS." + #elif !HAS_HEATER_7 + #error "HEATER_7_PIN not defined for this board." + #elif !PIN_EXISTS(TEMP_7) && !TEMP_SENSOR_7_IS_DUMMY + #error "TEMP_7_PIN not defined for this board." + #endif + #endif // HOTENDS > 7 + #endif // HOTENDS > 6 + #endif // HOTENDS > 5 + #endif // HOTENDS > 4 + #endif // HOTENDS > 3 + #endif // HOTENDS > 2 + #endif // HAS_MULTI_HOTEND +#endif // HAS_HOTEND #if DO_TOOLCHANGE_FOR_PROBING && PROBING_TOOL >= EXTRUDERS #error "PROBING_TOOL must be a valid tool index." @@ -2836,8 +2837,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #error "E0_STEP_PIN or E0_DIR_PIN not defined for this board." #elif ( !(defined(__AVR_ATmega644P__) || defined(__AVR_ATmega1284P__)) && (!PINS_EXIST(E0_STEP, E0_DIR) || !HAS_E0_ENABLE)) #error "E0_STEP_PIN, E0_DIR_PIN, or E0_ENABLE_PIN not defined for this board." - #elif EXTRUDERS && TEMP_SENSOR_0 == 0 - #error "TEMP_SENSOR_0 is required if there are any extruders." + #elif HOTENDS && TEMP_SENSOR_0 == 0 + #error "TEMP_SENSOR_0 is required if there are any hotends." #endif #endif diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index ce46d3d43dac..5bf809c9550c 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -2785,7 +2785,7 @@ void Temperature::init() { temp_range[NR].raw_max -= TEMPDIR(NR) * (OVERSAMPLENR); \ }while(0) - #define _MINMAX_TEST(N,M) (HOTENDS > N && TEMP_SENSOR(N) > 0 && TEMP_SENSOR(N) != 998 && TEMP_SENSOR(N) != 999 && defined(HEATER_##N##_##M##TEMP)) + #define _MINMAX_TEST(N,M) (HOTENDS > N && TEMP_SENSOR_##NR##_IS_THERMISTOR && defined(HEATER_##N##_##M##TEMP)) #if _MINMAX_TEST(0, MIN) _TEMP_MIN_E(0); From 31173394b871a9a3e26ab58eae51c62c7d780ba2 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 22 Apr 2023 12:06:22 +0000 Subject: [PATCH 050/427] [cron] Bump distribution date (2023-04-22) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index df1b974a8195..a2a7fd05d2e2 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-21" +//#define STRING_DISTRIBUTION_DATE "2023-04-22" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 4e228d659f73..edd46fd203ae 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-21" + #define STRING_DISTRIBUTION_DATE "2023-04-22" #endif /** From 5d8d38a911f96dadd56471f6dacaa6bda64b66fb Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Sun, 23 Apr 2023 08:59:51 +1200 Subject: [PATCH 051/427] =?UTF-8?q?=F0=9F=A9=B9=20Status=20/=20Host=20Prom?= =?UTF-8?q?pt=20followup=20(#25720)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25679 Co-authored-by: Scott Lahteine --- Marlin/src/lcd/marlinui.cpp | 7 +++++++ Marlin/src/lcd/marlinui.h | 10 +++++----- Marlin/src/lcd/menu/menu.cpp | 7 ------- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index 22b3fa27d71b..c1ec15dc19cf 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -1424,6 +1424,13 @@ void MarlinUI::init() { #endif // HAS_ENCODER_ACTION + #if HAS_SOUND + void MarlinUI::completion_feedback(const bool good/*=true*/) { + TERN_(HAS_TOUCH_SLEEP, wakeup_screen()); // Wake up on rotary encoder click... + if (good) OKAY_BUZZ(); else ERR_BUZZ(); + } + #endif + #endif // HAS_WIRED_LCD #if HAS_STATUS_MESSAGE diff --git a/Marlin/src/lcd/marlinui.h b/Marlin/src/lcd/marlinui.h index 32d747da4301..de1e30fe4e28 100644 --- a/Marlin/src/lcd/marlinui.h +++ b/Marlin/src/lcd/marlinui.h @@ -494,11 +494,6 @@ class MarlinUI { static void status_screen(); - #else - - static void quick_feedback(const bool=true) {} - static void completion_feedback(const bool=true) {} - #endif #if HAS_MARLINUI_U8GLIB @@ -529,6 +524,11 @@ class MarlinUI { #endif + #if !HAS_WIRED_LCD + static void quick_feedback(const bool=true) {} + static void completion_feedback(const bool=true) {} + #endif + #if ENABLED(SDSUPPORT) #if BOTH(SCROLL_LONG_FILENAMES, HAS_MARLINUI_MENU) #define MARLINUI_SCROLL_NAME 1 diff --git a/Marlin/src/lcd/menu/menu.cpp b/Marlin/src/lcd/menu/menu.cpp index 85b773bebc94..5c4dc12d2651 100644 --- a/Marlin/src/lcd/menu/menu.cpp +++ b/Marlin/src/lcd/menu/menu.cpp @@ -271,13 +271,6 @@ void scroll_screen(const uint8_t limit, const bool is_menu) { encoderTopLine = encoderLine; } -#if HAS_SOUND - void MarlinUI::completion_feedback(const bool good/*=true*/) { - TERN_(HAS_TOUCH_SLEEP, wakeup_screen()); // Wake up on rotary encoder click... - if (good) OKAY_BUZZ(); else ERR_BUZZ(); - } -#endif - #if HAS_LINE_TO_Z void line_to_z(const_float_t z) { From 95cfc98fe406bda0d0dc8d08d31e0f4416fb109a Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sun, 23 Apr 2023 00:22:56 +0000 Subject: [PATCH 052/427] [cron] Bump distribution date (2023-04-23) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index a2a7fd05d2e2..e18ee687ed04 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-22" +//#define STRING_DISTRIBUTION_DATE "2023-04-23" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index edd46fd203ae..51f45936caef 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-22" + #define STRING_DISTRIBUTION_DATE "2023-04-23" #endif /** From ce85b98db471685404d6e4975dcff645b09d771b Mon Sep 17 00:00:00 2001 From: Jason Smith Date: Sat, 22 Apr 2023 20:27:01 -0700 Subject: [PATCH 053/427] =?UTF-8?q?=F0=9F=A9=B9=20Relocate=20Fan=20conditi?= =?UTF-8?q?onals,=20sanity-checks=20(#25731)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/inc/Conditionals_adv.h | 11 ------ Marlin/src/inc/Conditionals_post.h | 60 +++++++++++++++--------------- Marlin/src/inc/SanityCheck.h | 31 +++++++++++---- 3 files changed, 53 insertions(+), 49 deletions(-) diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index c9c8fdf2d517..fd7ba5922404 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -1233,17 +1233,6 @@ #define CANNOT_EMBED_CONFIGURATION defined(__AVR__) #endif -// Fan Kickstart -#if FAN_KICKSTART_TIME && !defined(FAN_KICKSTART_POWER) - #define FAN_KICKSTART_POWER 180 -#endif - -#if FAN_MIN_PWM == 0 && FAN_MAX_PWM == 255 - #define CALC_FAN_SPEED(f) (f ?: FAN_OFF_PWM) -#else - #define CALC_FAN_SPEED(f) (f ? map(f, 1, 255, FAN_MIN_PWM, FAN_MAX_PWM) : FAN_OFF_PWM) -#endif - // Input shaping #if EITHER(INPUT_SHAPING_X, INPUT_SHAPING_Y) #define HAS_ZV_SHAPING 1 diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index eaf2d03cea52..59b5dab462bc 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -2719,37 +2719,8 @@ #define HAS_FAN 1 #endif -/** - * Part Cooling fan multipliexer - */ #if PIN_EXISTS(FANMUX0) - #define HAS_FANMUX 1 -#endif - -/** - * MIN/MAX fan PWM scaling - */ -#ifndef FAN_OFF_PWM - #define FAN_OFF_PWM 0 -#endif -#ifndef FAN_MIN_PWM - #if FAN_OFF_PWM > 0 - #define FAN_MIN_PWM (FAN_OFF_PWM + 1) - #else - #define FAN_MIN_PWM 0 - #endif -#endif -#ifndef FAN_MAX_PWM - #define FAN_MAX_PWM 255 -#endif -#if FAN_MIN_PWM < 0 || FAN_MIN_PWM > 255 - #error "FAN_MIN_PWM must be a value from 0 to 255." -#elif FAN_MAX_PWM < 0 || FAN_MAX_PWM > 255 - #error "FAN_MAX_PWM must be a value from 0 to 255." -#elif FAN_MIN_PWM > FAN_MAX_PWM - #error "FAN_MIN_PWM must be less than or equal to FAN_MAX_PWM." -#elif FAN_OFF_PWM > FAN_MIN_PWM - #error "FAN_OFF_PWM must be less than or equal to FAN_MIN_PWM." + #define HAS_FANMUX 1 // Part Cooling fan multipliexer #endif /** @@ -2773,6 +2744,35 @@ #endif #endif +/** + * MIN/MAX fan PWM scaling + */ +#if EITHER(HAS_FAN, USE_CONTROLLER_FAN) + #ifndef FAN_OFF_PWM + #define FAN_OFF_PWM 0 + #endif + #ifndef FAN_MIN_PWM + #if FAN_OFF_PWM > 0 + #define FAN_MIN_PWM (FAN_OFF_PWM + 1) + #else + #define FAN_MIN_PWM 0 + #endif + #endif + #ifndef FAN_MAX_PWM + #define FAN_MAX_PWM 255 + #endif + #if FAN_MIN_PWM == 0 && FAN_MAX_PWM == 255 + #define CALC_FAN_SPEED(f) (f ?: FAN_OFF_PWM) + #else + #define CALC_FAN_SPEED(f) (f ? map(f, 1, 255, FAN_MIN_PWM, FAN_MAX_PWM) : FAN_OFF_PWM) + #endif +#endif + +// Fan Kickstart +#if FAN_KICKSTART_TIME && !defined(FAN_KICKSTART_POWER) + #define FAN_KICKSTART_POWER 180 +#endif + // Servos #if PIN_EXISTS(SERVO0) && NUM_SERVOS > 0 #define HAS_SERVO_0 1 diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index d4314155591b..034e472e8413 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -1560,11 +1560,11 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * Part-Cooling Fan Multiplexer requirements */ -#if PIN_EXISTS(FANMUX1) - #if !HAS_FANMUX - #error "FANMUX0_PIN must be set before FANMUX1_PIN can be set." - #endif -#elif PIN_EXISTS(FANMUX2) +#if HAS_FANMUX && !HAS_FAN0 + #error "FAN0_PIN must be defined to use Fan Multiplexing." +#elif PIN_EXISTS(FANMUX1) && !PIN_EXISTS(FANMUX0) + #error "FANMUX0_PIN must be set before FANMUX1_PIN can be set." +#elif PIN_EXISTS(FANMUX2) && !PINS_EXIST(FANMUX0, FANMUX1) #error "FANMUX0_PIN and FANMUX1_PIN must be set before FANMUX2_PIN can be set." #endif @@ -1608,7 +1608,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #endif #if ENABLED(MPC_INCLUDE_FAN) - #if FAN_COUNT < 1 + #if !HAS_FAN #error "MPC_INCLUDE_FAN requires at least one fan." #endif #if FAN_COUNT < HOTENDS @@ -1627,8 +1627,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #error "To use BED_LIMIT_SWITCHING you must disable PIDTEMPBED." #endif -// Fan Kickstart -#if FAN_KICKSTART_TIME && defined(FAN_KICKSTART_POWER) && !WITHIN(FAN_KICKSTART_POWER, 64, 255) +// Fan Kickstart power +#if FAN_KICKSTART_TIME && !WITHIN(FAN_KICKSTART_POWER, 64, 255) #error "FAN_KICKSTART_POWER must be an integer from 64 to 255." #endif @@ -2454,6 +2454,21 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #endif #endif +/** + * Make sure FAN_*_PWM values are sensible + */ +#if EITHER(HAS_FAN, USE_CONTROLLER_FAN) + #if !WITHIN(FAN_MIN_PWM, 0, 255) + #error "FAN_MIN_PWM must be a value from 0 to 255." + #elif !WITHIN(FAN_MAX_PWM, 0, 255) + #error "FAN_MAX_PWM must be a value from 0 to 255." + #elif FAN_MIN_PWM > FAN_MAX_PWM + #error "FAN_MIN_PWM must be less than or equal to FAN_MAX_PWM." + #elif FAN_OFF_PWM > FAN_MIN_PWM + #error "FAN_OFF_PWM must be less than or equal to FAN_MIN_PWM." + #endif +#endif + #ifdef REDUNDANT_PART_COOLING_FAN #if FAN_COUNT < 2 #error "REDUNDANT_PART_COOLING_FAN requires a board with at least two PWM fans." From 5664c02d077e028f84a24efd96c2eebe97ce8763 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 22 Apr 2023 22:43:09 -0500 Subject: [PATCH 054/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Gen?= =?UTF-8?q?eralize=20SDSUPPORT=20as=20HAS=5FMEDIA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In preparation for single- and multi-volume refactoring. --- Marlin/Configuration_adv.h | 14 +++---- Marlin/src/HAL/AVR/HAL.cpp | 6 +-- Marlin/src/HAL/DUE/HAL.cpp | 2 +- Marlin/src/HAL/DUE/inc/SanityCheck.h | 2 +- Marlin/src/HAL/DUE/usb/conf_usb.h | 4 +- Marlin/src/HAL/DUE/usb/sd_mmc_spi_mem.cpp | 4 +- Marlin/src/HAL/DUE/usb/udi_cdc_desc.c | 4 +- Marlin/src/HAL/DUE/usb/udi_composite_desc.c | 4 +- Marlin/src/HAL/DUE/usb/udi_msc.c | 4 +- Marlin/src/HAL/DUE/usb/usb_task.c | 12 +++--- Marlin/src/HAL/ESP32/HAL_SPI.cpp | 2 +- Marlin/src/HAL/ESP32/u8g_esp32_spi.cpp | 2 +- Marlin/src/HAL/LINUX/spi_pins.h | 2 +- Marlin/src/HAL/LPC1768/inc/SanityCheck.h | 2 +- Marlin/src/HAL/LPC1768/spi_pins.h | 2 +- Marlin/src/HAL/NATIVE_SIM/spi_pins.h | 2 +- Marlin/src/HAL/SAMD21/HAL.cpp | 2 +- Marlin/src/HAL/SAMD51/HAL.cpp | 2 +- Marlin/src/HAL/STM32/HAL.cpp | 2 +- Marlin/src/HAL/STM32/inc/Conditionals_adv.h | 2 +- Marlin/src/HAL/STM32/inc/SanityCheck.h | 2 +- .../src/HAL/STM32F1/inc/Conditionals_post.h | 4 +- Marlin/src/HAL/STM32F1/inc/SanityCheck.h | 2 +- Marlin/src/MarlinCore.cpp | 14 +++---- Marlin/src/feature/binary_stream.h | 2 +- Marlin/src/feature/e_parser.cpp | 2 +- Marlin/src/feature/e_parser.h | 10 ++--- Marlin/src/feature/host_actions.cpp | 2 +- Marlin/src/feature/leds/printer_event_leds.h | 4 +- Marlin/src/feature/pause.cpp | 6 +-- Marlin/src/feature/power_monitor.h | 2 +- Marlin/src/gcode/control/M993_M994.cpp | 4 +- Marlin/src/gcode/feature/pause/M125.cpp | 2 +- Marlin/src/gcode/gcode.cpp | 10 ++--- Marlin/src/gcode/gcode.h | 12 +++--- Marlin/src/gcode/gcode_d.cpp | 4 +- Marlin/src/gcode/host/M115.cpp | 6 +-- Marlin/src/gcode/host/M360.cpp | 2 +- Marlin/src/gcode/queue.cpp | 12 +++--- Marlin/src/gcode/queue.h | 2 +- Marlin/src/gcode/sd/M1001.cpp | 4 +- Marlin/src/gcode/sd/M20.cpp | 4 +- Marlin/src/gcode/sd/M21_M22.cpp | 4 +- Marlin/src/gcode/sd/M23.cpp | 4 +- Marlin/src/gcode/sd/M24_M25.cpp | 8 ++-- Marlin/src/gcode/sd/M26.cpp | 4 +- Marlin/src/gcode/sd/M27.cpp | 4 +- Marlin/src/gcode/sd/M28_M29.cpp | 4 +- Marlin/src/gcode/sd/M30.cpp | 4 +- Marlin/src/gcode/sd/M524.cpp | 4 +- Marlin/src/gcode/sd/M928.cpp | 4 +- Marlin/src/inc/Conditionals_LCD.h | 6 ++- Marlin/src/inc/Conditionals_adv.h | 10 ++--- Marlin/src/inc/Conditionals_post.h | 4 +- Marlin/src/inc/SanityCheck.h | 18 ++++----- Marlin/src/lcd/HD44780/marlinui_HD44780.cpp | 14 +++---- Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp | 10 ++--- Marlin/src/lcd/dogm/marlinui_DOGM.cpp | 6 +-- Marlin/src/lcd/dogm/marlinui_DOGM.h | 6 +-- Marlin/src/lcd/dogm/status_screen_DOGM.cpp | 10 ++--- .../lcd/dogm/status_screen_lite_ST7920.cpp | 2 +- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 4 +- Marlin/src/lcd/e3v2/marlinui/ui_common.cpp | 6 +-- .../lcd/e3v2/marlinui/ui_status_480x272.cpp | 2 +- .../anycubic_i3mega/anycubic_i3mega_lcd.cpp | 40 +++++++++---------- .../src/lcd/extui/dgus/DGUSScreenHandler.cpp | 6 +-- .../lcd/extui/dgus/DGUSScreenHandlerBase.h | 4 +- Marlin/src/lcd/extui/dgus/dgus_extui.cpp | 6 +-- .../lcd/extui/dgus/fysetc/DGUSDisplayDef.cpp | 4 +- .../extui/dgus/fysetc/DGUSScreenHandler.cpp | 4 +- .../lcd/extui/dgus/hiprecy/DGUSDisplayDef.cpp | 4 +- .../extui/dgus/hiprecy/DGUSScreenHandler.cpp | 4 +- .../src/lcd/extui/dgus/mks/DGUSDisplayDef.cpp | 4 +- .../lcd/extui/dgus/mks/DGUSScreenHandler.cpp | 6 +-- .../lcd/extui/dgus/mks/DGUSScreenHandler.h | 2 +- .../lcd/extui/dgus/origin/DGUSDisplayDef.cpp | 4 +- .../extui/dgus/origin/DGUSScreenHandler.cpp | 4 +- .../lcd/extui/dgus_reloaded/DGUSRxHandler.cpp | 6 +-- .../lcd/extui/dgus_reloaded/DGUSRxHandler.h | 2 +- .../extui/dgus_reloaded/DGUSScreenHandler.cpp | 6 +-- .../extui/dgus_reloaded/DGUSScreenHandler.h | 4 +- .../extui/dgus_reloaded/DGUSSetupHandler.cpp | 2 +- .../extui/dgus_reloaded/DGUSSetupHandler.h | 2 +- .../lcd/extui/dgus_reloaded/DGUSTxHandler.cpp | 4 +- .../lcd/extui/dgus_reloaded/DGUSTxHandler.h | 2 +- .../definition/DGUS_ScreenAddrList.cpp | 4 +- .../definition/DGUS_ScreenSetup.cpp | 2 +- .../dgus_reloaded/definition/DGUS_VPList.cpp | 4 +- .../dgus_reloaded/dgus_reloaded_extui.cpp | 6 +-- .../archim2-flash/flash_storage.cpp | 4 +- .../archim2-flash/media_file_reader.cpp | 2 +- .../archim2-flash/media_file_reader.h | 4 +- .../bioprinter/printing_dialog_box.cpp | 2 +- .../ftdi_eve_touch_ui/ftdi_eve_extui.cpp | 4 +- .../generic/developer_menu.cpp | 4 +- .../generic/media_player_screen.cpp | 2 +- .../extui/ftdi_eve_touch_ui/generic/screens.h | 4 +- .../generic/status_screen.cpp | 2 +- .../extui/ftdi_eve_touch_ui/pin_mappings.h | 2 +- Marlin/src/lcd/extui/malyan/malyan.cpp | 8 ++-- Marlin/src/lcd/extui/malyan/malyan_extui.cpp | 2 +- Marlin/src/lcd/extui/mks_ui/draw_dialog.cpp | 4 +- .../src/lcd/extui/mks_ui/draw_operation.cpp | 2 +- .../src/lcd/extui/mks_ui/draw_print_file.cpp | 28 ++++++------- Marlin/src/lcd/extui/mks_ui/draw_printing.cpp | 6 +-- Marlin/src/lcd/extui/mks_ui/draw_ui.cpp | 10 ++--- Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp | 4 +- Marlin/src/lcd/extui/mks_ui/mks_hardware.h | 2 +- Marlin/src/lcd/extui/mks_ui/pic_manager.cpp | 6 +-- .../lcd/extui/mks_ui/printer_operation.cpp | 2 +- .../extui/mks_ui/tft_lvgl_configuration.cpp | 6 +-- Marlin/src/lcd/extui/mks_ui/wifi_module.cpp | 22 +++++----- Marlin/src/lcd/extui/ui_api.cpp | 26 ++++++------ Marlin/src/lcd/marlinui.cpp | 26 ++++++------ Marlin/src/lcd/marlinui.h | 6 +-- Marlin/src/lcd/menu/menu.h | 4 +- Marlin/src/lcd/menu/menu_main.cpp | 12 +++--- Marlin/src/lcd/menu/menu_media.cpp | 4 +- Marlin/src/lcd/tft/ui_1024x600.cpp | 4 +- Marlin/src/lcd/tft/ui_320x240.cpp | 4 +- Marlin/src/lcd/tft/ui_480x320.cpp | 4 +- Marlin/src/lcd/tft/ui_common.cpp | 2 +- Marlin/src/module/endstops.cpp | 4 +- Marlin/src/module/temperature.cpp | 2 +- Marlin/src/pins/esp32/pins_MKS_TINYBEE.h | 2 +- Marlin/src/pins/esp32/pins_PANDA_common.h | 2 +- Marlin/src/pins/linux/pins_RAMPS_LINUX.h | 2 +- Marlin/src/pins/lpc1768/pins_BIQU_B300_V1.0.h | 4 +- Marlin/src/pins/lpc1768/pins_BIQU_BQ111_A4.h | 6 +-- .../src/pins/lpc1769/pins_COHESION3D_MINI.h | 2 +- Marlin/src/pins/mega/pins_CHEAPTRONICv2.h | 2 +- Marlin/src/pins/mega/pins_PICA.h | 2 +- Marlin/src/pins/mega/pins_WEEDO_62A.h | 2 +- Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR.h | 2 +- .../src/pins/ramps/pins_FORMBOT_TREX2PLUS.h | 2 +- Marlin/src/pins/ramps/pins_FORMBOT_TREX3.h | 2 +- Marlin/src/pins/ramps/pins_RAMPS_OLD.h | 2 +- Marlin/src/pins/ramps/pins_RIGIDBOARD.h | 2 +- Marlin/src/pins/ramps/pins_RUMBA.h | 2 +- Marlin/src/pins/ramps/pins_TENLOG_D3_HERO.h | 2 +- Marlin/src/pins/ramps/pins_TT_OSCAR.h | 2 +- Marlin/src/pins/sam/pins_DUE3DOM.h | 2 +- Marlin/src/pins/sam/pins_DUE3DOM_MINI.h | 2 +- Marlin/src/pins/sam/pins_RADDS.h | 2 +- Marlin/src/pins/sam/pins_RAMPS_DUO.h | 2 +- Marlin/src/pins/sam/pins_RAMPS_FD_V1.h | 2 +- Marlin/src/pins/sam/pins_RAMPS_SMART.h | 2 +- Marlin/src/pins/sam/pins_RURAMPS4D_11.h | 2 +- Marlin/src/pins/sam/pins_RURAMPS4D_13.h | 2 +- Marlin/src/pins/sanguino/pins_ZMIB_V2.h | 2 +- Marlin/src/pins/stm32f4/pins_ANET_ET4.h | 2 +- Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h | 2 +- .../pins/stm32f4/pins_MKS_MONSTER8_common.h | 2 +- Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h | 2 +- Marlin/src/pins/stm32f4/pins_VAKE403D.h | 4 +- Marlin/src/sd/SdBaseFile.cpp | 4 +- Marlin/src/sd/SdFatUtil.cpp | 4 +- Marlin/src/sd/SdFile.cpp | 4 +- Marlin/src/sd/SdVolume.cpp | 4 +- Marlin/src/sd/cardreader.cpp | 6 +-- Marlin/src/sd/cardreader.h | 6 +-- .../PlatformIO/scripts/common-dependencies.h | 2 +- ini/features.ini | 2 +- ini/samd51.ini | 2 +- 164 files changed, 399 insertions(+), 397 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 993e0d8dde71..22c97c3b8c4e 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -1601,13 +1601,13 @@ #define SET_REMAINING_TIME // Add 'R' parameter to set remaining time //#define SET_INTERACTION_TIME // Add 'C' parameter to set time until next filament change or other user interaction //#define M73_REPORT // Report M73 values to host - #if BOTH(M73_REPORT, SDSUPPORT) + #if BOTH(M73_REPORT, HAS_MEDIA) #define M73_REPORT_SD_ONLY // Report only when printing from SD #endif #endif // LCD Print Progress options. Multiple times may be displayed in turn. -#if HAS_DISPLAY && EITHER(SDSUPPORT, SET_PROGRESS_MANUALLY) +#if HAS_DISPLAY && EITHER(HAS_MEDIA, SET_PROGRESS_MANUALLY) #define SHOW_PROGRESS_PERCENT // Show print progress percentage (doesn't affect progress bar) #define SHOW_ELAPSED_TIME // Display elapsed printing time (prefix 'E') //#define SHOW_REMAINING_TIME // Display estimated time to completion (prefix 'R') @@ -1628,7 +1628,7 @@ #endif #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA /** * SD Card SPI Speed * May be required to resolve "volume init" errors. @@ -1868,7 +1868,7 @@ #define DEFAULT_SHARED_VOLUME SV_USB_FLASH_DRIVE #endif -#endif // SDSUPPORT +#endif // HAS_MEDIA /** * By default an onboard SD card reader may be shared as a USB mass- @@ -2492,9 +2492,9 @@ // The number of linear moves that can be in the planner at once. // The value of BLOCK_BUFFER_SIZE must be a power of 2 (e.g., 8, 16, 32) -#if BOTH(SDSUPPORT, DIRECT_STEPPING) +#if BOTH(HAS_MEDIA, DIRECT_STEPPING) #define BLOCK_BUFFER_SIZE 8 -#elif ENABLED(SDSUPPORT) +#elif HAS_MEDIA #define BLOCK_BUFFER_SIZE 16 #else #define BLOCK_BUFFER_SIZE 16 @@ -2527,7 +2527,7 @@ //#define SERIAL_XON_XOFF #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA // Enable this option to collect and display the maximum // RX queue usage after transferring a file to SD. //#define SERIAL_STATS_MAX_RX_QUEUED diff --git a/Marlin/src/HAL/AVR/HAL.cpp b/Marlin/src/HAL/AVR/HAL.cpp index 5382eb36a2bd..b3dcfbdf596c 100644 --- a/Marlin/src/HAL/AVR/HAL.cpp +++ b/Marlin/src/HAL/AVR/HAL.cpp @@ -145,12 +145,12 @@ void MarlinHAL::reboot() { // Free Memory Accessor // ------------------------ -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../sd/SdFatUtil.h" int freeMemory() { return SdFatUtil::FreeRam(); } -#else // !SDSUPPORT +#else // !HAS_MEDIA extern "C" { extern char __bss_end; @@ -167,6 +167,6 @@ void MarlinHAL::reboot() { } } -#endif // !SDSUPPORT +#endif // !HAS_MEDIA #endif // __AVR__ diff --git a/Marlin/src/HAL/DUE/HAL.cpp b/Marlin/src/HAL/DUE/HAL.cpp index 4353f1649732..1b57bdb2fad4 100644 --- a/Marlin/src/HAL/DUE/HAL.cpp +++ b/Marlin/src/HAL/DUE/HAL.cpp @@ -45,7 +45,7 @@ uint16_t MarlinHAL::adc_result; #endif void MarlinHAL::init() { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA OUT_WRITE(SDSS, HIGH); // Try to set SDSS inactive before any other SPI users start up #endif usb_task_init(); // Initialize the USB stack diff --git a/Marlin/src/HAL/DUE/inc/SanityCheck.h b/Marlin/src/HAL/DUE/inc/SanityCheck.h index 6bbf04a0acbb..a8f5de8298d1 100644 --- a/Marlin/src/HAL/DUE/inc/SanityCheck.h +++ b/Marlin/src/HAL/DUE/inc/SanityCheck.h @@ -70,7 +70,7 @@ */ #define _IS_HW_SPI(P) (defined(TMC_SPI_##P) && (TMC_SPI_##P == SD_MOSI_PIN || TMC_SPI_##P == SD_MISO_PIN || TMC_SPI_##P == SD_SCK_PIN)) -#if ENABLED(SDSUPPORT) && HAS_DRIVER(TMC2130) +#if HAS_MEDIA && HAS_DRIVER(TMC2130) #if ENABLED(TMC_USE_SW_SPI) #if DISABLED(DUE_SOFTWARE_SPI) && (_IS_HW_SPI(MOSI) || _IS_HW_SPI(MISO) || _IS_HW_SPI(SCK)) #error "DUE hardware SPI is required but is incompatible with TMC2130 software SPI. Either disable TMC_USE_SW_SPI or use separate pins for the two SPIs." diff --git a/Marlin/src/HAL/DUE/usb/conf_usb.h b/Marlin/src/HAL/DUE/usb/conf_usb.h index 4de9e347e213..f66194c6e6f9 100644 --- a/Marlin/src/HAL/DUE/usb/conf_usb.h +++ b/Marlin/src/HAL/DUE/usb/conf_usb.h @@ -101,7 +101,7 @@ #define USB_DEVICE_SPECIFIC_REQUEST() usb_task_other_requests() //@} -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA /** * USB Device low level configuration * When only one interface is used, these configurations are defined by the class module. @@ -185,7 +185,7 @@ //! Enable id string of interface to add an extra USB string #define UDI_CDC_IAD_STRING_ID 4 -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA /** * USB CDC low level configuration * In standalone these configurations are defined by the CDC module. diff --git a/Marlin/src/HAL/DUE/usb/sd_mmc_spi_mem.cpp b/Marlin/src/HAL/DUE/usb/sd_mmc_spi_mem.cpp index 34cc256b30ff..65a926ff362b 100644 --- a/Marlin/src/HAL/DUE/usb/sd_mmc_spi_mem.cpp +++ b/Marlin/src/HAL/DUE/usb/sd_mmc_spi_mem.cpp @@ -6,7 +6,7 @@ #include "../../../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../../sd/cardreader.h" extern "C" { @@ -138,5 +138,5 @@ Ctrl_status sd_mmc_spi_usb_write_10(uint32_t addr, uint16_t nb_sector) { #endif // ACCESS_USB == true -#endif // SDSUPPORT +#endif // HAS_MEDIA #endif // ARDUINO_ARCH_SAM diff --git a/Marlin/src/HAL/DUE/usb/udi_cdc_desc.c b/Marlin/src/HAL/DUE/usb/udi_cdc_desc.c index 97c334e2a854..4c79e8df1309 100644 --- a/Marlin/src/HAL/DUE/usb/udi_cdc_desc.c +++ b/Marlin/src/HAL/DUE/usb/udi_cdc_desc.c @@ -51,7 +51,7 @@ #include "udc_desc.h" #include "udi_cdc.h" -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA /** * \defgroup udi_cdc_group_single_desc USB device descriptors for a single interface @@ -256,6 +256,6 @@ UDC_DESC_STORAGE udc_config_t udc_config = { //@} //@} -#endif // SDSUPPORT +#endif // HAS_MEDIA #endif // ARDUINO_ARCH_SAM diff --git a/Marlin/src/HAL/DUE/usb/udi_composite_desc.c b/Marlin/src/HAL/DUE/usb/udi_composite_desc.c index da74fbe60dfe..b10d043b9f12 100644 --- a/Marlin/src/HAL/DUE/usb/udi_composite_desc.c +++ b/Marlin/src/HAL/DUE/usb/udi_composite_desc.c @@ -50,7 +50,7 @@ #include "udd.h" #include "udc_desc.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA /** * \defgroup udi_group_desc Descriptors for a USB Device @@ -189,4 +189,4 @@ UDC_DESC_STORAGE udc_config_t udc_config = { #endif // ARDUINO_ARCH_SAM -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/HAL/DUE/usb/udi_msc.c b/Marlin/src/HAL/DUE/usb/udi_msc.c index dd3404877210..a75b5936b338 100644 --- a/Marlin/src/HAL/DUE/usb/udi_msc.c +++ b/Marlin/src/HAL/DUE/usb/udi_msc.c @@ -57,7 +57,7 @@ #include "ctrl_access.h" #include -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #ifndef UDI_MSC_NOTIFY_TRANS_EXT # define UDI_MSC_NOTIFY_TRANS_EXT() @@ -1127,6 +1127,6 @@ bool udi_msc_trans_block(bool b_read, uint8_t * block, iram_size_t block_size, //@} -#endif // SDSUPPORT +#endif // HAS_MEDIA #endif // ARDUINO_ARCH_SAM diff --git a/Marlin/src/HAL/DUE/usb/usb_task.c b/Marlin/src/HAL/DUE/usb/usb_task.c index 86ab27217abc..6f027f83a135 100644 --- a/Marlin/src/HAL/DUE/usb/usb_task.c +++ b/Marlin/src/HAL/DUE/usb/usb_task.c @@ -51,14 +51,14 @@ #include "conf_usb.h" #include "udc.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA static volatile bool main_b_msc_enable = false; #endif static volatile bool main_b_cdc_enable = false; static volatile bool main_b_dtr_active = false; void usb_task_idle(void) { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA // Attend SD card access from the USB MSD -- Prioritize access to improve speed int delay = 2; while (main_b_msc_enable && --delay > 0) { @@ -70,7 +70,7 @@ void usb_task_idle(void) { #endif } -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA bool usb_task_msc_enable(void) { return ((main_b_msc_enable = true)); } void usb_task_msc_disable(void) { main_b_msc_enable = false; } bool usb_task_msc_isenabled(void) { return main_b_msc_enable; } @@ -206,13 +206,13 @@ static USB_MicrosoftExtendedPropertiesDescriptor microsoft_extended_properties_d bool usb_task_extra_string(void) { static uint8_t udi_msft_magic[] = "MSFT100\xEE"; static uint8_t udi_cdc_name[] = "CDC interface"; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static uint8_t udi_msc_name[] = "MSC interface"; #endif struct extra_strings_desc_t { usb_str_desc_t header; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA le16_t string[Max(Max(sizeof(udi_cdc_name) - 1, sizeof(udi_msc_name) - 1), sizeof(udi_msft_magic) - 1)]; #else le16_t string[Max(sizeof(udi_cdc_name) - 1, sizeof(udi_msft_magic) - 1)]; @@ -231,7 +231,7 @@ bool usb_task_extra_string(void) { str_lgt = sizeof(udi_cdc_name) - 1; str = udi_cdc_name; break; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA case UDI_MSC_STRING_ID: str_lgt = sizeof(udi_msc_name) - 1; str = udi_msc_name; diff --git a/Marlin/src/HAL/ESP32/HAL_SPI.cpp b/Marlin/src/HAL/ESP32/HAL_SPI.cpp index 868ab1b6712d..6dc540864eec 100644 --- a/Marlin/src/HAL/ESP32/HAL_SPI.cpp +++ b/Marlin/src/HAL/ESP32/HAL_SPI.cpp @@ -53,7 +53,7 @@ static SPISettings spiConfig; // ------------------------ void spiBegin() { - #if ENABLED(SDSUPPORT) && PIN_EXISTS(SD_SS) + #if HAS_MEDIA && PIN_EXISTS(SD_SS) OUT_WRITE(SD_SS_PIN, HIGH); #endif } diff --git a/Marlin/src/HAL/ESP32/u8g_esp32_spi.cpp b/Marlin/src/HAL/ESP32/u8g_esp32_spi.cpp index bd7ecdc9f217..955c751e4869 100644 --- a/Marlin/src/HAL/ESP32/u8g_esp32_spi.cpp +++ b/Marlin/src/HAL/ESP32/u8g_esp32_spi.cpp @@ -32,7 +32,7 @@ #include "HAL.h" #include "SPI.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../sd/cardreader.h" #if ENABLED(ESP3D_WIFISUPPORT) #include "sd_ESP32.h" diff --git a/Marlin/src/HAL/LINUX/spi_pins.h b/Marlin/src/HAL/LINUX/spi_pins.h index 9ecbb0498787..f09d1decb8eb 100644 --- a/Marlin/src/HAL/LINUX/spi_pins.h +++ b/Marlin/src/HAL/LINUX/spi_pins.h @@ -24,7 +24,7 @@ #include "../../core/macros.h" #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_U8GLIB, SDSUPPORT) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_EN == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) +#if BOTH(HAS_MARLINUI_U8GLIB, HAS_MEDIA) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_EN == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) #define SOFTWARE_SPI // If the SD card and LCD adapter share the same SPI pins, then software SPI is currently // needed due to the speed and mode required for communicating with each device being different. // This requirement can be removed if the SPI access to these devices is updated to use diff --git a/Marlin/src/HAL/LPC1768/inc/SanityCheck.h b/Marlin/src/HAL/LPC1768/inc/SanityCheck.h index 9f78f2a70d19..f49bc34c9253 100644 --- a/Marlin/src/HAL/LPC1768/inc/SanityCheck.h +++ b/Marlin/src/HAL/LPC1768/inc/SanityCheck.h @@ -201,7 +201,7 @@ static_assert(DISABLED(BAUD_RATE_GCODE), "BAUD_RATE_GCODE is not yet supported o #if USEDI2CDEV_M == 0 // P0_27 [D57] (AUX-1) .......... P0_28 [D58] (AUX-1) #define PIN_IS_SDA0(P) (P##_PIN == P0_27) #define IS_SCL0(P) (P == P0_28) - #if ENABLED(SDSUPPORT) && PIN_IS_SDA0(SD_DETECT) + #if HAS_MEDIA && PIN_IS_SDA0(SD_DETECT) #error "SDA0 overlaps with SD_DETECT_PIN!" #elif PIN_IS_SDA0(E0_AUTO_FAN) #error "SDA0 overlaps with E0_AUTO_FAN_PIN!" diff --git a/Marlin/src/HAL/LPC1768/spi_pins.h b/Marlin/src/HAL/LPC1768/spi_pins.h index e716d00fb094..33a5b369adab 100644 --- a/Marlin/src/HAL/LPC1768/spi_pins.h +++ b/Marlin/src/HAL/LPC1768/spi_pins.h @@ -23,7 +23,7 @@ #include "../../core/macros.h" -#if BOTH(SDSUPPORT, HAS_MARLINUI_U8GLIB) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_EN == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) +#if BOTH(HAS_MEDIA, HAS_MARLINUI_U8GLIB) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_EN == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) #define SOFTWARE_SPI // If the SD card and LCD adapter share the same SPI pins, then software SPI is currently // needed due to the speed and mode required for communicating with each device being different. // This requirement can be removed if the SPI access to these devices is updated to use diff --git a/Marlin/src/HAL/NATIVE_SIM/spi_pins.h b/Marlin/src/HAL/NATIVE_SIM/spi_pins.h index eb20a21c56dd..02fb3592382c 100644 --- a/Marlin/src/HAL/NATIVE_SIM/spi_pins.h +++ b/Marlin/src/HAL/NATIVE_SIM/spi_pins.h @@ -24,7 +24,7 @@ #include "../../core/macros.h" #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_U8GLIB, SDSUPPORT) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_EN == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) +#if BOTH(HAS_MARLINUI_U8GLIB, HAS_MEDIA) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_EN == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) #define SOFTWARE_SPI // If the SD card and LCD adapter share the same SPI pins, then software SPI is currently // needed due to the speed and mode required for communicating with each device being different. // This requirement can be removed if the SPI access to these devices is updated to use diff --git a/Marlin/src/HAL/SAMD21/HAL.cpp b/Marlin/src/HAL/SAMD21/HAL.cpp index 14c439eeb911..1bc0406ab3f0 100644 --- a/Marlin/src/HAL/SAMD21/HAL.cpp +++ b/Marlin/src/HAL/SAMD21/HAL.cpp @@ -105,7 +105,7 @@ void MarlinHAL::dma_init() {} // HAL initialization task void MarlinHAL::init() { TERN_(DMA_IS_REQUIRED, dma_init()); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #if HAS_SD_DETECT && SD_CONNECTION_IS(ONBOARD) SET_INPUT_PULLUP(SD_DETECT_PIN); #endif diff --git a/Marlin/src/HAL/SAMD51/HAL.cpp b/Marlin/src/HAL/SAMD51/HAL.cpp index 8c102b643da8..bc7a9b6d913a 100644 --- a/Marlin/src/HAL/SAMD51/HAL.cpp +++ b/Marlin/src/HAL/SAMD51/HAL.cpp @@ -602,7 +602,7 @@ void MarlinHAL::dma_init() { // HAL initialization task void MarlinHAL::init() { TERN_(DMA_IS_REQUIRED, dma_init()); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #if HAS_SD_DETECT && SD_CONNECTION_IS(ONBOARD) SET_INPUT_PULLUP(SD_DETECT_PIN); #endif diff --git a/Marlin/src/HAL/STM32/HAL.cpp b/Marlin/src/HAL/STM32/HAL.cpp index aff52f597f4d..d8a12aad7eb9 100644 --- a/Marlin/src/HAL/STM32/HAL.cpp +++ b/Marlin/src/HAL/STM32/HAL.cpp @@ -70,7 +70,7 @@ void MarlinHAL::init() { constexpr int cpuFreq = F_CPU; UNUSED(cpuFreq); - #if ENABLED(SDSUPPORT) && DISABLED(SDIO_SUPPORT) && (defined(SDSS) && SDSS != -1) + #if HAS_MEDIA && DISABLED(SDIO_SUPPORT) && (defined(SDSS) && SDSS != -1) OUT_WRITE(SDSS, HIGH); // Try to set SDSS inactive before any other SPI users start up #endif diff --git a/Marlin/src/HAL/STM32/inc/Conditionals_adv.h b/Marlin/src/HAL/STM32/inc/Conditionals_adv.h index 451c94f25d1f..ee8c49e4e055 100644 --- a/Marlin/src/HAL/STM32/inc/Conditionals_adv.h +++ b/Marlin/src/HAL/STM32/inc/Conditionals_adv.h @@ -21,7 +21,7 @@ */ #pragma once -#if BOTH(SDSUPPORT, USBD_USE_CDC_MSC) && DISABLED(NO_SD_HOST_DRIVE) +#if BOTH(HAS_MEDIA, USBD_USE_CDC_MSC) && DISABLED(NO_SD_HOST_DRIVE) #define HAS_SD_HOST_DRIVE 1 #endif diff --git a/Marlin/src/HAL/STM32/inc/SanityCheck.h b/Marlin/src/HAL/STM32/inc/SanityCheck.h index eaad8db4d33d..9b0c232bdf57 100644 --- a/Marlin/src/HAL/STM32/inc/SanityCheck.h +++ b/Marlin/src/HAL/STM32/inc/SanityCheck.h @@ -29,7 +29,7 @@ //#endif -#if ENABLED(SDCARD_EEPROM_EMULATION) && DISABLED(SDSUPPORT) +#if ENABLED(SDCARD_EEPROM_EMULATION) && !HAS_MEDIA #undef SDCARD_EEPROM_EMULATION // Avoid additional error noise #if USE_FALLBACK_EEPROM #warning "EEPROM type not specified. Fallback is SDCARD_EEPROM_EMULATION." diff --git a/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h b/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h index 656fbe1ce259..228e869688f3 100644 --- a/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h +++ b/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h @@ -28,7 +28,7 @@ #define USE_SHARED_EEPROM 1 #endif -// Allow SDSUPPORT to be disabled -#if DISABLED(SDSUPPORT) +// Allow for no media drives +#if !HAS_MEDIA #undef SDIO_SUPPORT #endif diff --git a/Marlin/src/HAL/STM32F1/inc/SanityCheck.h b/Marlin/src/HAL/STM32F1/inc/SanityCheck.h index fe8f6e0ec24b..1da42dcc8fd0 100644 --- a/Marlin/src/HAL/STM32F1/inc/SanityCheck.h +++ b/Marlin/src/HAL/STM32F1/inc/SanityCheck.h @@ -25,7 +25,7 @@ * Test STM32F1-specific configuration values for errors at compile-time. */ -#if ENABLED(SDCARD_EEPROM_EMULATION) && DISABLED(SDSUPPORT) +#if ENABLED(SDCARD_EEPROM_EMULATION) && !HAS_MEDIA #undef SDCARD_EEPROM_EMULATION // Avoid additional error noise #if USE_FALLBACK_EEPROM #warning "EEPROM type not specified. Fallback is SDCARD_EEPROM_EMULATION." diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index 8c0f7a29e87a..e478a35445b6 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -160,7 +160,7 @@ #include "feature/spindle_laser.h" #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA CardReader card; #endif @@ -363,7 +363,7 @@ void startOrResumeJob() { print_job_timer.start(); } -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA inline void abortSDPrinting() { IF_DISABLED(NO_SD_AUTOSTART, card.autofile_cancel()); @@ -397,7 +397,7 @@ void startOrResumeJob() { } } -#endif // SDSUPPORT +#endif // HAS_MEDIA /** * Minimal management of Marlin's core activities: @@ -834,7 +834,7 @@ void idle(const bool no_stepper_sleep/*=false*/) { #endif // Handle SD Card insert / remove - TERN_(SDSUPPORT, card.manage_media()); + TERN_(HAS_MEDIA, card.manage_media()); // Handle USB Flash Drive insert / remove TERN_(USB_FLASH_DRIVE_SUPPORT, card.diskIODriver()->idle()); @@ -1340,7 +1340,7 @@ void setup() { #endif #endif - #if BOTH(SDSUPPORT, SDCARD_EEPROM_EMULATION) + #if BOTH(HAS_MEDIA, SDCARD_EEPROM_EMULATION) SETUP_RUN(card.mount()); // Mount media with settings before first_load #endif @@ -1624,7 +1624,7 @@ void setup() { #endif #if HAS_TFT_LVGL_UI - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (!card.isMounted()) SETUP_RUN(card.mount()); // Mount SD to load graphics and fonts #endif SETUP_RUN(tft_lvgl_init()); @@ -1688,7 +1688,7 @@ void loop() { do { idle(); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (card.flag.abort_sd_printing) abortSDPrinting(); if (marlin_state == MF_SD_COMPLETE) finishSDPrinting(); #endif diff --git a/Marlin/src/feature/binary_stream.h b/Marlin/src/feature/binary_stream.h index 417e39c74507..a9cd12b85e9a 100644 --- a/Marlin/src/feature/binary_stream.h +++ b/Marlin/src/feature/binary_stream.h @@ -281,7 +281,7 @@ class BinaryStream { uint8_t data = 0; millis_t transfer_window = millis() + RX_TIMESLICE; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA PORT_REDIRECT(SERIAL_PORTMASK(card.transfer_port_index)); #endif diff --git a/Marlin/src/feature/e_parser.cpp b/Marlin/src/feature/e_parser.cpp index cfe0956aa789..b50a12d1af18 100644 --- a/Marlin/src/feature/e_parser.cpp +++ b/Marlin/src/feature/e_parser.cpp @@ -33,7 +33,7 @@ // Static data members bool EmergencyParser::killed_by_M112, // = false EmergencyParser::quickstop_by_M410, - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA EmergencyParser::sd_abort_by_M524, #endif EmergencyParser::enabled; diff --git a/Marlin/src/feature/e_parser.h b/Marlin/src/feature/e_parser.h index 3a15a7ffa0f9..df4456d8d3ca 100644 --- a/Marlin/src/feature/e_parser.h +++ b/Marlin/src/feature/e_parser.h @@ -58,7 +58,7 @@ class EmergencyParser { EP_M10, EP_M108, EP_M11, EP_M112, EP_M4, EP_M41, EP_M410, - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA EP_M5, EP_M52, EP_M524, #endif #if ENABLED(HOST_PROMPT_SUPPORT) @@ -79,7 +79,7 @@ class EmergencyParser { static bool killed_by_M112; static bool quickstop_by_M410; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static bool sd_abort_by_M524; #endif @@ -152,7 +152,7 @@ class EmergencyParser { case ' ': break; case '1': state = EP_M1; break; case '4': state = EP_M4; break; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA case '5': state = EP_M5; break; #endif #if ENABLED(HOST_PROMPT_SUPPORT) @@ -175,7 +175,7 @@ class EmergencyParser { case EP_M4: state = (c == '1') ? EP_M41 : EP_IGNORE; break; case EP_M41: state = (c == '0') ? EP_M410 : EP_IGNORE; break; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA case EP_M5: state = (c == '2') ? EP_M52 : EP_IGNORE; break; case EP_M52: state = (c == '4') ? EP_M524 : EP_IGNORE; break; #endif @@ -215,7 +215,7 @@ class EmergencyParser { case EP_M108: wait_for_user = wait_for_heatup = false; break; case EP_M112: killed_by_M112 = true; break; case EP_M410: quickstop_by_M410 = true; break; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA case EP_M524: sd_abort_by_M524 = true; break; #endif #if ENABLED(HOST_PROMPT_SUPPORT) diff --git a/Marlin/src/feature/host_actions.cpp b/Marlin/src/feature/host_actions.cpp index 773b6ebc61a4..a1c1bad5bb44 100644 --- a/Marlin/src/feature/host_actions.cpp +++ b/Marlin/src/feature/host_actions.cpp @@ -209,7 +209,7 @@ void HostUI::action(FSTR_P const fstr, const bool eol) { TERN_(HAS_RESUME_CONTINUE, wait_for_user = false); break; case PROMPT_PAUSE_RESUME: - #if BOTH(ADVANCED_PAUSE_FEATURE, SDSUPPORT) + #if BOTH(ADVANCED_PAUSE_FEATURE, HAS_MEDIA) extern const char M24_STR[]; queue.inject_P(M24_STR); #endif diff --git a/Marlin/src/feature/leds/printer_event_leds.h b/Marlin/src/feature/leds/printer_event_leds.h index 2a4342e8f55c..3a037eba96e5 100644 --- a/Marlin/src/feature/leds/printer_event_leds.h +++ b/Marlin/src/feature/leds/printer_event_leds.h @@ -59,7 +59,7 @@ class PrinterEventLEDs { static void onPidTuningDone(LEDColor c) { leds.set_color(c); } #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static void onPrintCompleted() { leds.set_green(); @@ -80,7 +80,7 @@ class PrinterEventLEDs { #endif } - #endif // SDSUPPORT + #endif // HAS_MEDIA }; extern PrinterEventLEDs printerEventLEDs; diff --git a/Marlin/src/feature/pause.cpp b/Marlin/src/feature/pause.cpp index 35d1fd79f9d6..7b814e57f742 100644 --- a/Marlin/src/feature/pause.cpp +++ b/Marlin/src/feature/pause.cpp @@ -91,7 +91,7 @@ static xyze_pos_t resume_position; fil_change_settings_t fc_settings[EXTRUDERS]; -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../sd/cardreader.h" #endif @@ -420,7 +420,7 @@ bool pause_print(const_float_t retract, const xyz_pos_t &park_point, const bool ++did_pause_print; // Pause the print job and timer - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA const bool was_sd_printing = IS_SD_PRINTING(); if (was_sd_printing) { card.pauseSDPrint(); @@ -701,7 +701,7 @@ void resume_print(const_float_t slow_load_length/*=0*/, const_float_t fast_load_ // Resume the print job timer if it was running if (print_job_timer.isPaused()) print_job_timer.start(); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (did_pause_print) { --did_pause_print; card.startOrResumeFilePrinting(); diff --git a/Marlin/src/feature/power_monitor.h b/Marlin/src/feature/power_monitor.h index fa0690905333..89e92fb773fe 100644 --- a/Marlin/src/feature/power_monitor.h +++ b/Marlin/src/feature/power_monitor.h @@ -119,7 +119,7 @@ class PowerMonitor { volts.reset(); #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA display_item_ms = 0; display_item = 0; #endif diff --git a/Marlin/src/gcode/control/M993_M994.cpp b/Marlin/src/gcode/control/M993_M994.cpp index 598a73fab756..f6fe0f34adee 100644 --- a/Marlin/src/gcode/control/M993_M994.cpp +++ b/Marlin/src/gcode/control/M993_M994.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if ALL(SPI_FLASH, SDSUPPORT, MARLIN_DEV_MODE) +#if ALL(SPI_FLASH, HAS_MEDIA, MARLIN_DEV_MODE) #include "../gcode.h" #include "../../sd/cardreader.h" @@ -85,4 +85,4 @@ void GcodeSuite::M994() { card.closefile(); } -#endif // SPI_FLASH && SDSUPPORT && MARLIN_DEV_MODE +#endif // SPI_FLASH && HAS_MEDIA && MARLIN_DEV_MODE diff --git a/Marlin/src/gcode/feature/pause/M125.cpp b/Marlin/src/gcode/feature/pause/M125.cpp index 9b18eda4fbae..d6e6cb93150a 100644 --- a/Marlin/src/gcode/feature/pause/M125.cpp +++ b/Marlin/src/gcode/feature/pause/M125.cpp @@ -88,7 +88,7 @@ void GcodeSuite::M125() { park_point += hotend_offset[active_extruder]; #endif - const bool sd_printing = TERN0(SDSUPPORT, IS_SD_PRINTING()); + const bool sd_printing = TERN0(HAS_MEDIA, IS_SD_PRINTING()); ui.pause_show_message(PAUSE_MESSAGE_PARKING, PAUSE_MODE_PAUSE_PRINT); diff --git a/Marlin/src/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index 9d1014e8bfb6..06a9600c437d 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -519,7 +519,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 17: M17(); break; // M17: Enable all stepper motors - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA case 20: M20(); break; // M20: List SD card case 21: M21(); break; // M21: Init SD card case 22: M22(); break; // M22: Release SD card @@ -545,7 +545,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { #endif case 928: M928(); break; // M928: Start SD write - #endif // SDSUPPORT + #endif // HAS_MEDIA case 31: M31(); break; // M31: Report time since the start of SD print or last M109 @@ -919,7 +919,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { #endif #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA case 524: M524(); break; // M524: Abort the current SD print job #endif @@ -1061,7 +1061,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 422: M422(); break; // M422: Set Z Stepper automatic alignment position using probe #endif - #if ALL(SPI_FLASH, SDSUPPORT, MARLIN_DEV_MODE) + #if ALL(SPI_FLASH, HAS_MEDIA, MARLIN_DEV_MODE) case 993: M993(); break; // M993: Backup SPI Flash to SD case 994: M994(); break; // M994: Load a Backup from SD to SPI Flash #endif @@ -1081,7 +1081,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 1000: M1000(); break; // M1000: [INTERNAL] Resume from power-loss #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA case 1001: M1001(); break; // M1001: [INTERNAL] Handle SD completion #endif diff --git a/Marlin/src/gcode/gcode.h b/Marlin/src/gcode/gcode.h index d49c544623ba..6a66fa911aa1 100644 --- a/Marlin/src/gcode/gcode.h +++ b/Marlin/src/gcode/gcode.h @@ -642,7 +642,7 @@ class GcodeSuite { static void M18_M84(); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static void M20(); static void M21(); static void M22(); @@ -658,7 +658,7 @@ class GcodeSuite { static void M31(); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #if HAS_MEDIA_SUBCALLS static void M32(); #endif @@ -1062,7 +1062,7 @@ class GcodeSuite { #endif #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static void M524(); #endif @@ -1195,7 +1195,7 @@ class GcodeSuite { static void M910(); #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static void M928(); #endif @@ -1207,7 +1207,7 @@ class GcodeSuite { static void M995(); #endif - #if BOTH(SPI_FLASH, SDSUPPORT) + #if BOTH(SPI_FLASH, HAS_MEDIA) static void M993(); static void M994(); #endif @@ -1229,7 +1229,7 @@ class GcodeSuite { static void M423_report(const bool forReplay=true); #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static void M1001(); #endif diff --git a/Marlin/src/gcode/gcode_d.cpp b/Marlin/src/gcode/gcode_d.cpp index be431eed0d78..28edf9dcdb1e 100644 --- a/Marlin/src/gcode/gcode_d.cpp +++ b/Marlin/src/gcode/gcode_d.cpp @@ -199,7 +199,7 @@ void GcodeSuite::D(const int16_t dcode) { SERIAL_ECHOLNPGM("FAILURE: Watchdog did not trigger board reset."); } break; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA case 101: { // D101 Test SD Write card.openFileWrite("test.gco"); @@ -250,7 +250,7 @@ void GcodeSuite::D(const int16_t dcode) { card.closefile(); } break; - #endif // SDSUPPORT + #endif // HAS_MEDIA #if ENABLED(POSTMORTEM_DEBUGGING) diff --git a/Marlin/src/gcode/host/M115.cpp b/Marlin/src/gcode/host/M115.cpp index d28d53eeddba..236895e107e6 100644 --- a/Marlin/src/gcode/host/M115.cpp +++ b/Marlin/src/gcode/host/M115.cpp @@ -168,10 +168,10 @@ void GcodeSuite::M115() { cap_line(F("PROMPT_SUPPORT"), ENABLED(HOST_PROMPT_SUPPORT)); // SDCARD (M20, M23, M24, etc.) - cap_line(F("SDCARD"), ENABLED(SDSUPPORT)); + cap_line(F("SDCARD"), ENABLED(HAS_MEDIA)); // MULTI_VOLUME (M21 S/M21 U) - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA cap_line(F("MULTI_VOLUME"), ENABLED(MULTI_VOLUME)); #endif @@ -179,7 +179,7 @@ void GcodeSuite::M115() { cap_line(F("REPEAT"), ENABLED(GCODE_REPEAT_MARKERS)); // SD_WRITE (M928, M28, M29) - cap_line(F("SD_WRITE"), ENABLED(SDSUPPORT) && DISABLED(SDCARD_READONLY)); + cap_line(F("SD_WRITE"), ENABLED(HAS_MEDIA) && DISABLED(SDCARD_READONLY)); // AUTOREPORT_SD_STATUS (M27 extension) cap_line(F("AUTOREPORT_SD_STATUS"), ENABLED(AUTO_REPORT_SD_STATUS)); diff --git a/Marlin/src/gcode/host/M360.cpp b/Marlin/src/gcode/host/M360.cpp index d8e166dad8e0..9649e99e17de 100644 --- a/Marlin/src/gcode/host/M360.cpp +++ b/Marlin/src/gcode/host/M360.cpp @@ -70,7 +70,7 @@ void GcodeSuite::M360() { config_line(F("InputBuffer"), MAX_CMD_SIZE); config_line(F("PrintlineCache"), BUFSIZE); config_line(F("MixingExtruder"), ENABLED(MIXING_EXTRUDER)); - config_line(F("SDCard"), ENABLED(SDSUPPORT)); + config_line(F("SDCard"), ENABLED(HAS_MEDIA)); config_line(F("Fan"), ENABLED(HAS_FAN)); config_line(F("LCD"), ENABLED(HAS_DISPLAY)); config_line(F("SoftwarePowerSwitch"), 1); diff --git a/Marlin/src/gcode/queue.cpp b/Marlin/src/gcode/queue.cpp index edf0ddfdbf64..af8e87743657 100644 --- a/Marlin/src/gcode/queue.cpp +++ b/Marlin/src/gcode/queue.cpp @@ -512,7 +512,7 @@ void GCodeQueue::get_serial_commands() { serial.last_N = gcode_N; } - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA // Pronterface "M29" and "M29 " has no line number else if (card.flag.saving && !is_M29(command)) { gcode_line_error(F(STR_ERR_NO_CHECKSUM), p); @@ -562,7 +562,7 @@ void GCodeQueue::get_serial_commands() { } // queue has space, serial has data } -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA /** * Get lines from the SD Card until the command buffer is full @@ -615,7 +615,7 @@ void GCodeQueue::get_serial_commands() { } } -#endif // SDSUPPORT +#endif // HAS_MEDIA /** * Add to the circular command queue the next command from: @@ -628,7 +628,7 @@ void GCodeQueue::get_available_commands() { get_serial_commands(); - TERN_(SDSUPPORT, get_sdcard_commands()); + TERN_(HAS_MEDIA, get_sdcard_commands()); } /** @@ -667,7 +667,7 @@ void GCodeQueue::advance() { } #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (card.flag.saving) { char * const cmd = ring_buffer.peek_next_command_string(); @@ -703,7 +703,7 @@ void GCodeQueue::advance() { gcode.process_next_command(); - #endif // SDSUPPORT + #endif // HAS_MEDIA // The queue may be reset by a command handler or by code invoked by idle() within a handler ring_buffer.advance_pos(ring_buffer.index_r, -1); diff --git a/Marlin/src/gcode/queue.h b/Marlin/src/gcode/queue.h index 19fb359e15aa..2cb72f2e1571 100644 --- a/Marlin/src/gcode/queue.h +++ b/Marlin/src/gcode/queue.h @@ -256,7 +256,7 @@ class GCodeQueue { static void get_serial_commands(); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static void get_sdcard_commands(); #endif diff --git a/Marlin/src/gcode/sd/M1001.cpp b/Marlin/src/gcode/sd/M1001.cpp index 1d1d1a4b7f80..3c8f38a1448a 100644 --- a/Marlin/src/gcode/sd/M1001.cpp +++ b/Marlin/src/gcode/sd/M1001.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../gcode.h" #include "../../module/planner.h" @@ -114,4 +114,4 @@ void GcodeSuite::M1001() { TERN_(SD_REPRINT_LAST_SELECTED_FILE, ui.reselect_last_file()); } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/gcode/sd/M20.cpp b/Marlin/src/gcode/sd/M20.cpp index 2a7e0d08df71..9dca2bb3e036 100644 --- a/Marlin/src/gcode/sd/M20.cpp +++ b/Marlin/src/gcode/sd/M20.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../gcode.h" #include "../../sd/cardreader.h" @@ -51,4 +51,4 @@ void GcodeSuite::M20() { SERIAL_ECHO_MSG(STR_NO_MEDIA); } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/gcode/sd/M21_M22.cpp b/Marlin/src/gcode/sd/M21_M22.cpp index aec0de27ca5c..3347168151e7 100644 --- a/Marlin/src/gcode/sd/M21_M22.cpp +++ b/Marlin/src/gcode/sd/M21_M22.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../gcode.h" #include "../../sd/cardreader.h" @@ -52,4 +52,4 @@ void GcodeSuite::M22() { if (!IS_SD_PRINTING()) card.release(); } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/gcode/sd/M23.cpp b/Marlin/src/gcode/sd/M23.cpp index 8722e9b6de95..7727d4958f10 100644 --- a/Marlin/src/gcode/sd/M23.cpp +++ b/Marlin/src/gcode/sd/M23.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../gcode.h" #include "../../sd/cardreader.h" @@ -41,4 +41,4 @@ void GcodeSuite::M23() { TERN_(SET_PROGRESS_PERCENT, ui.set_progress(0)); } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/gcode/sd/M24_M25.cpp b/Marlin/src/gcode/sd/M24_M25.cpp index 847af65b1208..45c596ae9922 100644 --- a/Marlin/src/gcode/sd/M24_M25.cpp +++ b/Marlin/src/gcode/sd/M24_M25.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../gcode.h" #include "../../sd/cardreader.h" @@ -101,9 +101,7 @@ void GcodeSuite::M25() { #else // Set initial pause flag to prevent more commands from landing in the queue while we try to pause - #if ENABLED(SDSUPPORT) - if (IS_SD_PRINTING()) card.pauseSDPrint(); - #endif + if (IS_SD_PRINTING()) card.pauseSDPrint(); #if ENABLED(POWER_LOSS_RECOVERY) && DISABLED(DGUS_LCD_UI_MKS) if (recovery.enabled) recovery.save(true); @@ -125,4 +123,4 @@ void GcodeSuite::M25() { #endif } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/gcode/sd/M26.cpp b/Marlin/src/gcode/sd/M26.cpp index e0557bfa14fa..9ddc436e8ccd 100644 --- a/Marlin/src/gcode/sd/M26.cpp +++ b/Marlin/src/gcode/sd/M26.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../gcode.h" #include "../../sd/cardreader.h" @@ -35,4 +35,4 @@ void GcodeSuite::M26() { card.setIndex(parser.value_long()); } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/gcode/sd/M27.cpp b/Marlin/src/gcode/sd/M27.cpp index 88238190e259..590efbf79d3f 100644 --- a/Marlin/src/gcode/sd/M27.cpp +++ b/Marlin/src/gcode/sd/M27.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../gcode.h" #include "../../sd/cardreader.h" @@ -49,4 +49,4 @@ void GcodeSuite::M27() { card.report_status(); } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/gcode/sd/M28_M29.cpp b/Marlin/src/gcode/sd/M28_M29.cpp index 373938d99b4b..ac1ba0878870 100644 --- a/Marlin/src/gcode/sd/M28_M29.cpp +++ b/Marlin/src/gcode/sd/M28_M29.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../gcode.h" #include "../../sd/cardreader.h" @@ -69,4 +69,4 @@ void GcodeSuite::M29() { card.flag.saving = false; } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/gcode/sd/M30.cpp b/Marlin/src/gcode/sd/M30.cpp index b95a895f1e92..da8e51bb8be5 100644 --- a/Marlin/src/gcode/sd/M30.cpp +++ b/Marlin/src/gcode/sd/M30.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../gcode.h" #include "../../sd/cardreader.h" @@ -37,4 +37,4 @@ void GcodeSuite::M30() { } } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/gcode/sd/M524.cpp b/Marlin/src/gcode/sd/M524.cpp index f2b9274223c2..a3c03e90bab6 100644 --- a/Marlin/src/gcode/sd/M524.cpp +++ b/Marlin/src/gcode/sd/M524.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../gcode.h" #include "../../sd/cardreader.h" @@ -51,4 +51,4 @@ void GcodeSuite::M524() { } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/gcode/sd/M928.cpp b/Marlin/src/gcode/sd/M928.cpp index 03a7877a90d0..0d86b330c785 100644 --- a/Marlin/src/gcode/sd/M928.cpp +++ b/Marlin/src/gcode/sd/M928.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../gcode.h" #include "../../sd/cardreader.h" @@ -36,4 +36,4 @@ void GcodeSuite::M928() { } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 32a2eda7c7ed..b11ede3dc51c 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -26,6 +26,10 @@ * Conditionals that need to be set before Configuration_adv.h or pins.h */ +#if ENABLED(SDSUPPORT) + #define HAS_MEDIA 1 +#endif + // MKS_LCD12864A/B is a variant of MKS_MINI_12864 #if EITHER(MKS_LCD12864A, MKS_LCD12864B) #define MKS_MINI_12864 @@ -217,7 +221,7 @@ #define IS_TFTGLCD_PANEL 1 #define IS_ULTIPANEL 1 // Note that IS_ULTIPANEL leads to HAS_WIRED_LCD - #if ENABLED(SDSUPPORT) && DISABLED(LCD_PROGRESS_BAR) + #if HAS_MEDIA && DISABLED(LCD_PROGRESS_BAR) #define LCD_PROGRESS_BAR #endif #if ENABLED(TFTGLCD_PANEL_I2C) diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index fd7ba5922404..929a7c78cfee 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -794,7 +794,7 @@ #undef MENU_ADDAUTOSTART #endif -#if EITHER(SDSUPPORT, SET_PROGRESS_MANUALLY) +#if EITHER(HAS_MEDIA, SET_PROGRESS_MANUALLY) #define HAS_PRINT_PROGRESS 1 #endif @@ -812,7 +812,7 @@ #define HAS_STATUS_MESSAGE_TIMEOUT 1 #endif -#if ENABLED(SDSUPPORT) && SD_PROCEDURE_DEPTH +#if HAS_MEDIA && SD_PROCEDURE_DEPTH #define HAS_MEDIA_SUBCALLS 1 #endif @@ -850,7 +850,7 @@ #else #undef LED_POWEROFF_TIMEOUT #endif -#if ALL(HAS_RESUME_CONTINUE, PRINTER_EVENT_LEDS, SDSUPPORT) +#if ALL(HAS_RESUME_CONTINUE, PRINTER_EVENT_LEDS, HAS_MEDIA) #define HAS_LEDS_OFF_FLAG 1 #endif #if DISPLAY_SLEEP_MINUTES || TOUCH_IDLE_SLEEP_MINS @@ -1148,7 +1148,7 @@ // SD Card connection methods // Defined here so pins and sanity checks can use them // -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #define _SDCARD_LCD 1 #define _SDCARD_ONBOARD 2 #define _SDCARD_CUSTOM_CABLE 3 @@ -1228,7 +1228,7 @@ #endif // AVR are (usually) too limited in resources to store the configuration into the binary -#if ENABLED(CONFIGURATION_EMBEDDING) && !defined(FORCE_CONFIG_EMBED) && (defined(__AVR__) || DISABLED(SDSUPPORT) || EITHER(SDCARD_READONLY, DISABLE_M503)) +#if ENABLED(CONFIGURATION_EMBEDDING) && !defined(FORCE_CONFIG_EMBED) && (defined(__AVR__) || !HAS_MEDIA || EITHER(SDCARD_READONLY, DISABLE_M503)) #undef CONFIGURATION_EMBEDDING #define CANNOT_EMBED_CONFIGURATION defined(__AVR__) #endif diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 59b5dab462bc..bf4810cd8a3b 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -510,7 +510,7 @@ * Override the SD_DETECT_STATE set in Configuration_adv.h * and enable sharing of onboard SD host drives (all platforms but AGCM4) */ -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #if HAS_SD_HOST_DRIVE && SD_CONNECTION_IS(ONBOARD) // @@ -3351,7 +3351,7 @@ #endif // Fallback SPI Speed for SD -#if ENABLED(SDSUPPORT) && !defined(SD_SPI_SPEED) +#if HAS_MEDIA && !defined(SD_SPI_SPEED) #define SD_SPI_SPEED SPI_FULL_SPEED #endif diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 034e472e8413..40e76b61498c 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -978,7 +978,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS * Progress Bar */ #if ENABLED(LCD_PROGRESS_BAR) - #if NONE(SDSUPPORT, SET_PROGRESS_MANUALLY) + #if NONE(HAS_MEDIA, SET_PROGRESS_MANUALLY) #error "LCD_PROGRESS_BAR requires SDSUPPORT or SET_PROGRESS_MANUALLY." #elif NONE(HAS_MARLINUI_HD44780, IS_TFTGLCD_PANEL) #error "LCD_PROGRESS_BAR only applies to HD44780 character LCD and TFTGLCD_PANEL_(SPI|I2C)." @@ -1028,7 +1028,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS /** * SD Card Settings */ -#if ALL(SDSUPPORT, HAS_SD_DETECT, SD_CONNECTION_TYPICAL, ELB_FULL_GRAPHIC_CONTROLLER, HAS_MARLINUI_MENU) && SD_DETECT_STATE == LOW +#if ALL(HAS_MEDIA, HAS_SD_DETECT, SD_CONNECTION_TYPICAL, ELB_FULL_GRAPHIC_CONTROLLER, HAS_MARLINUI_MENU) && SD_DETECT_STATE == LOW #error "SD_DETECT_STATE must be set HIGH for SD on the ELB_FULL_GRAPHIC_CONTROLLER." #endif #undef SD_CONNECTION_TYPICAL @@ -1176,8 +1176,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #error "ADVANCED_PAUSE_FEATURE requires FILAMENT_UNLOAD_PURGE_FEEDRATE." #elif ENABLED(EXTRUDER_RUNOUT_PREVENT) #error "EXTRUDER_RUNOUT_PREVENT is incompatible with ADVANCED_PAUSE_FEATURE." - #elif ENABLED(PARK_HEAD_ON_PAUSE) && NONE(SDSUPPORT, IS_NEWPANEL, EMERGENCY_PARSER) - #error "PARK_HEAD_ON_PAUSE requires SDSUPPORT, EMERGENCY_PARSER, or an LCD controller." + #elif ENABLED(PARK_HEAD_ON_PAUSE) && NONE(HAS_MEDIA, IS_NEWPANEL, EMERGENCY_PARSER) + #error "PARK_HEAD_ON_PAUSE requires HAS_MEDIA, EMERGENCY_PARSER, or an LCD controller." #elif ENABLED(HOME_BEFORE_FILAMENT_CHANGE) && DISABLED(PAUSE_PARK_NO_STEPPER_TIMEOUT) #error "HOME_BEFORE_FILAMENT_CHANGE requires PAUSE_PARK_NO_STEPPER_TIMEOUT." #elif ENABLED(PREVENT_LENGTHY_EXTRUDE) && FILAMENT_CHANGE_UNLOAD_LENGTH > EXTRUDE_MAXLENGTH @@ -3266,7 +3266,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #if ENABLED(TFT_LVGL_UI) #if DISABLED(TFT_RES_480x320) #error "TFT_LVGL_UI requires TFT_RES_480x320." - #elif DISABLED(SDSUPPORT) + #elif !HAS_MEDIA #error "TFT_LVGL_UI requires SDSUPPORT." #endif #endif @@ -3282,7 +3282,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #if ENABLED(ANYCUBIC_LCD_CHIRON) #ifndef BEEPER_PIN #error "ANYCUBIC_LCD_CHIRON requires BEEPER_PIN" - #elif DISABLED(SDSUPPORT) + #elif !HAS_MEDIA #error "ANYCUBIC_LCD_CHIRON requires SDSUPPORT" #elif TEMP_SENSOR_BED == 0 #error "ANYCUBIC_LCD_CHIRON requires heatbed (TEMP_SENSOR_BED)" @@ -3305,7 +3305,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS * Ender-3 V2 controller has some limitations */ #if ENABLED(DWIN_CREALITY_LCD) - #if DISABLED(SDSUPPORT) + #if !HAS_MEDIA #error "DWIN_CREALITY_LCD requires SDSUPPORT to be enabled." #elif EITHER(PID_EDIT_MENU, PID_AUTOTUNE_MENU) #error "DWIN_CREALITY_LCD does not support PID_EDIT_MENU or PID_AUTOTUNE_MENU." @@ -3317,7 +3317,7 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #error "DWIN_CREALITY_LCD does not support LCD_BED_LEVELING with PROBE_MANUALLY." #endif #elif ENABLED(DWIN_LCD_PROUI) - #if DISABLED(SDSUPPORT) + #if !HAS_MEDIA #error "DWIN_LCD_PROUI requires SDSUPPORT to be enabled." #elif EITHER(PID_EDIT_MENU, PID_AUTOTUNE_MENU) #error "DWIN_LCD_PROUI does not support PID_EDIT_MENU or PID_AUTOTUNE_MENU." @@ -4339,7 +4339,7 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); * Check to make sure MONITOR_DRIVER_STATUS isn't enabled * on boards where TMC drivers share the SPI bus with SD. */ -#if HAS_TMC_SPI && ALL(MONITOR_DRIVER_STATUS, SDSUPPORT, USES_SHARED_SPI) +#if HAS_TMC_SPI && ALL(MONITOR_DRIVER_STATUS, HAS_MEDIA, USES_SHARED_SPI) #error "MONITOR_DRIVER_STATUS and SDSUPPORT cannot be used together on boards with shared SPI." #endif diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp index 8a5e5c5ad9e5..e33814589c72 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp @@ -41,7 +41,7 @@ #include "../../module/planner.h" #include "../../module/motion.h" -#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) +#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) #include "../../feature/filwidth.h" #include "../../gcode/parser.h" #endif @@ -289,7 +289,7 @@ void MarlinUI::set_custom_characters(const HD44780CharSet screen_charset/*=CHARS #endif // LCD_PROGRESS_BAR - #if BOTH(SDSUPPORT, HAS_MARLINUI_MENU) + #if BOTH(HAS_MEDIA, HAS_MARLINUI_MENU) // CHARSET_MENU const static PROGMEM byte refresh[8] = { @@ -313,7 +313,7 @@ void MarlinUI::set_custom_characters(const HD44780CharSet screen_charset/*=CHARS B00000 }; - #endif // SDSUPPORT + #endif // HAS_MEDIA #if ENABLED(SHOW_BOOTSCREEN) // Set boot screen corner characters @@ -339,7 +339,7 @@ void MarlinUI::set_custom_characters(const HD44780CharSet screen_charset/*=CHARS #endif { createChar_P(LCD_STR_UPLEVEL[0], uplevel); - #if BOTH(SDSUPPORT, HAS_MARLINUI_MENU) + #if BOTH(HAS_MEDIA, HAS_MARLINUI_MENU) // SD Card sub-menu special characters createChar_P(LCD_STR_REFRESH[0], refresh); createChar_P(LCD_STR_FOLDER[0], folder); @@ -697,7 +697,7 @@ void MarlinUI::draw_status_message(const bool blink) { if (progress > 2) return draw_progress_bar(progress); } - #elif BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) + #elif BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) // Alternate Status message and Filament display if (ELAPSED(millis(), next_filament_display)) { @@ -709,7 +709,7 @@ void MarlinUI::draw_status_message(const bool blink) { return; } - #endif // FILAMENT_LCD_DISPLAY && SDSUPPORT + #endif // FILAMENT_LCD_DISPLAY && HAS_MEDIA #if ENABLED(STATUS_MESSAGE_SCROLLING) static bool last_blink = false; @@ -1218,7 +1218,7 @@ void MarlinUI::draw_status_screen() { } } - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA void MenuItem_sdbase::draw(const bool sel, const uint8_t row, FSTR_P const, CardReader &theCard, const bool isDir) { lcd_put_lchar(0, row, sel ? LCD_STR_ARROW_RIGHT[0] : ' '); diff --git a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp index fc568c55db1c..969b3fb0366e 100644 --- a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp +++ b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp @@ -52,7 +52,7 @@ #include "../../module/planner.h" #include "../../module/motion.h" -#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) +#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) #include "../../feature/filwidth.h" #include "../../gcode/parser.h" #endif @@ -672,7 +672,7 @@ FORCE_INLINE void _draw_axis_value(const AxisEnum axis, const char *value, const void MarlinUI::draw_status_message(const bool blink) { if (!PanelDetected) return; lcd_moveto(0, 3); - #if BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) + #if BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) // Alternate Status message and Filament display if (ELAPSED(millis(), next_filament_display)) { @@ -689,7 +689,7 @@ void MarlinUI::draw_status_message(const bool blink) { return; } - #endif // FILAMENT_LCD_DISPLAY && SDSUPPORT + #endif // FILAMENT_LCD_DISPLAY && HAS_MEDIA // Get the UTF8 character count of the string uint8_t slen = utf8_strlen(status_message); @@ -1061,7 +1061,7 @@ void MarlinUI::draw_status_screen() { lcd.print_line(); } - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA void MenuItem_sdbase::draw(const bool sel, const uint8_t row, FSTR_P const, CardReader &theCard, const bool isDir) { if (!PanelDetected) return; @@ -1074,7 +1074,7 @@ void MarlinUI::draw_status_screen() { lcd.print_line(); } - #endif // SDSUPPORT + #endif // HAS_MEDIA #if ENABLED(LCD_HAS_STATUS_INDICATORS) diff --git a/Marlin/src/lcd/dogm/marlinui_DOGM.cpp b/Marlin/src/lcd/dogm/marlinui_DOGM.cpp index ce9a31668aa5..76fa7842a31d 100644 --- a/Marlin/src/lcd/dogm/marlinui_DOGM.cpp +++ b/Marlin/src/lcd/dogm/marlinui_DOGM.cpp @@ -56,7 +56,7 @@ #include "../../module/printcounter.h" #include "../../MarlinCore.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../libs/duration_t.h" #endif @@ -545,7 +545,7 @@ void MarlinUI::clear_lcd() { } // Automatically cleared by Picture Loop if (yes) draw_boxed_string(LCD_WIDTH - (utf8_strlen(yes) * (USE_WIDE_GLYPH ? 2 : 1) + 1), LCD_HEIGHT - 1, yes, yesno); } - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA void MenuItem_sdbase::draw(const bool sel, const uint8_t row, FSTR_P const, CardReader &theCard, const bool isDir) { if (mark_as_selected(row, sel)) { @@ -557,7 +557,7 @@ void MarlinUI::clear_lcd() { } // Automatically cleared by Picture Loop } } - #endif // SDSUPPORT + #endif // HAS_MEDIA #if ENABLED(AUTO_BED_LEVELING_UBL) diff --git a/Marlin/src/lcd/dogm/marlinui_DOGM.h b/Marlin/src/lcd/dogm/marlinui_DOGM.h index 2b9eb64a57cc..afdda5ac5bf5 100644 --- a/Marlin/src/lcd/dogm/marlinui_DOGM.h +++ b/Marlin/src/lcd/dogm/marlinui_DOGM.h @@ -36,10 +36,10 @@ // RepRapWorld Graphical LCD - #if DISABLED(SDSUPPORT) && (LCD_PINS_D4 == SD_SCK_PIN) && (LCD_PINS_EN == SD_MOSI_PIN) + #if !HAS_MEDIA && (LCD_PINS_D4 == SD_SCK_PIN) && (LCD_PINS_EN == SD_MOSI_PIN) #define U8G_CLASS U8GLIB_ST7920_128X64_4X_HAL #define U8G_PARAM LCD_PINS_RS - #elif ENABLED(SDSUPPORT) && __SAMD21__ + #elif HAS_MEDIA && __SAMD21__ #define U8G_CLASS U8GLIB_ST7920_128X64_4X #define U8G_PARAM LCD_PINS_RS #else @@ -52,7 +52,7 @@ // RepRap Discount Full Graphics Smart Controller // and other variant LCDs using ST7920 - #if DISABLED(SDSUPPORT) && (LCD_PINS_D4 == SD_SCK_PIN) && (LCD_PINS_EN == SD_MOSI_PIN) + #if !HAS_MEDIA && (LCD_PINS_D4 == SD_SCK_PIN) && (LCD_PINS_EN == SD_MOSI_PIN) #define U8G_CLASS U8GLIB_ST7920_128X64_4X_HAL // 2 stripes, HW SPI (Shared with SD card. Non-standard LCD adapter on AVR.) #define U8G_PARAM LCD_PINS_RS #else diff --git a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp index 22e71251ff13..cb3515a694cb 100644 --- a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp +++ b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp @@ -67,7 +67,7 @@ #include "../../feature/power_monitor.h" #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../sd/cardreader.h" #endif @@ -742,7 +742,7 @@ void MarlinUI::draw_status_screen() { #endif } - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA // // SD Card Symbol // @@ -756,7 +756,7 @@ void MarlinUI::draw_status_screen() { // Corner pixel u8g.drawPixel(50, 43); // 43 (or 42) } - #endif // SDSUPPORT + #endif // HAS_MEDIA #if HAS_PRINT_PROGRESS // Progress bar frame @@ -871,7 +871,7 @@ void MarlinUI::draw_status_screen() { // // Filament sensor display if SD is disabled // - #if ENABLED(FILAMENT_LCD_DISPLAY) && DISABLED(SDSUPPORT) + #if ENABLED(FILAMENT_LCD_DISPLAY) && !HAS_MEDIA lcd_put_u8str(56, EXTRAS_2_BASELINE, wstring); lcd_put_u8str(102, EXTRAS_2_BASELINE, mstring); lcd_put_u8str(F("%")); @@ -887,7 +887,7 @@ void MarlinUI::draw_status_screen() { if (PAGE_CONTAINS(STATUS_BASELINE - INFO_FONT_ASCENT, STATUS_BASELINE + INFO_FONT_DESCENT)) { lcd_moveto(0, STATUS_BASELINE); - #if BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) + #if BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) // Alternate Status message and Filament display if (ELAPSED(millis(), next_filament_display)) { lcd_put_u8str(F(LCD_STR_FILAM_DIA)); diff --git a/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp b/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp index 96f2eeae960a..a4ace1ce8a0d 100644 --- a/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp +++ b/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp @@ -81,7 +81,7 @@ #include "../../module/temperature.h" #include "../../libs/numtostr.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../sd/cardreader.h" #endif diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index a24adec8e9fd..e685fe16fddc 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -4389,7 +4389,7 @@ void CrealityDWINClass::Print_Screen_Control() { #endif TERN_(HAS_FAN, thermalManager.fan_speed[0] = pausefan); planner.synchronize(); - TERN_(SDSUPPORT, queue.inject(F("M24"))); + TERN_(HAS_MEDIA, queue.inject(F("M24"))); #endif } else { @@ -4427,7 +4427,7 @@ void CrealityDWINClass::Popup_Control() { #endif #if ENABLED(PARK_HEAD_ON_PAUSE) Popup_Handler(Home, true); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (IS_SD_PRINTING()) card.pauseSDPrint(); #endif planner.synchronize(); diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp index c267d3204873..4b34d6510025 100644 --- a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp @@ -39,7 +39,7 @@ #include "../../../module/temperature.h" #include "../../../module/printcounter.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../../libs/duration_t.h" #endif @@ -467,7 +467,7 @@ void MarlinUI::draw_status_message(const bool blink) { if (yes) draw_boxed_string(true, yes, yesno); } - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA void MenuItem_sdbase::draw(const bool sel, const uint8_t row, FSTR_P const, CardReader &theCard, const bool isDir) { if (mark_as_selected(row, sel)) { @@ -487,7 +487,7 @@ void MarlinUI::draw_status_message(const bool blink) { } } - #endif // SDSUPPORT + #endif // HAS_MEDIA #if ENABLED(AUTO_BED_LEVELING_UBL) diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp index 5ec94b853f10..cfa326667aa5 100644 --- a/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp @@ -39,7 +39,7 @@ #include "../../../module/printcounter.h" #include "../../../module/planner.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../../libs/duration_t.h" #endif diff --git a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp index 1bc52bfcaf6d..36b24861fe3b 100644 --- a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp +++ b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp @@ -94,7 +94,7 @@ void AnycubicTFTClass::OnSetup() { delay_ms(10); // Init the state of the key pins running on the TFT - #if BOTH(SDSUPPORT, HAS_SD_DETECT) + #if BOTH(HAS_MEDIA, HAS_SD_DETECT) SET_INPUT_PULLUP(SD_DETECT_PIN); #endif #if ENABLED(FILAMENT_RUNOUT_SENSOR) @@ -176,7 +176,7 @@ void AnycubicTFTClass::OnUserConfirmRequired(const char * const msg) { SERIAL_ECHOLNPGM("TFT Serial Debug: OnUserConfirmRequired triggered... ", msg); #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA /** * Need to handle the process of following states * "Nozzle Parked" @@ -380,7 +380,7 @@ void AnycubicTFTClass::HandleSpecialMenu() { } void AnycubicTFTClass::RenderCurrentFileList() { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA uint16_t selectedNumber = 0; SelectedDirectory[0] = 0; SelectedFile[0] = 0; @@ -404,7 +404,7 @@ void AnycubicTFTClass::RenderCurrentFileList() { RenderCurrentFolder(selectedNumber); } SENDLINE_PGM("END"); // Filelist stop - #endif // SDSUPPORT + #endif // HAS_MEDIA } void AnycubicTFTClass::RenderSpecialMenu(uint16_t selectedNumber) { @@ -516,7 +516,7 @@ void AnycubicTFTClass::RenderCurrentFolder(uint16_t selectedNumber) { } void AnycubicTFTClass::OnPrintTimerStarted() { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (mediaPrintingState == AMPRINTSTATE_PRINTING) SENDLINE_DBG_PGM("J04", "TFT Serial Debug: Starting SD Print... J04"); // J04 Starting Print @@ -524,7 +524,7 @@ void AnycubicTFTClass::OnPrintTimerStarted() { } void AnycubicTFTClass::OnPrintTimerPaused() { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (isPrintingFromMedia()) { mediaPrintingState = AMPRINTSTATE_PAUSED; mediaPauseState = AMPAUSESTATE_PARKING; @@ -533,7 +533,7 @@ void AnycubicTFTClass::OnPrintTimerPaused() { } void AnycubicTFTClass::OnPrintTimerStopped() { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (mediaPrintingState == AMPRINTSTATE_PRINTING) { mediaPrintingState = AMPRINTSTATE_NOT_PRINTING; mediaPauseState = AMPAUSESTATE_NOT_PAUSED; @@ -608,7 +608,7 @@ void AnycubicTFTClass::GetCommandFromTFT() { } break; case 6: // A6 GET SD CARD PRINTING STATUS - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (isPrintingFromMedia()) { SEND_PGM("A6V "); if (isMediaInserted()) @@ -637,28 +637,28 @@ void AnycubicTFTClass::GetCommandFromTFT() { break; case 8: // A8 GET SD LIST - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA SelectedFile[0] = 0; RenderCurrentFileList(); #endif break; case 9: // A9 pause sd print - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (isPrintingFromMedia()) PausePrint(); #endif break; case 10: // A10 resume sd print - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (isPrintingFromMediaPaused()) ResumePrint(); #endif break; case 11: // A11 STOP SD PRINT - TERN_(SDSUPPORT, StopPrint()); + TERN_(HAS_MEDIA, StopPrint()); break; case 12: // A12 kill @@ -666,7 +666,7 @@ void AnycubicTFTClass::GetCommandFromTFT() { break; case 13: // A13 SELECTION FILE - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (isMediaInserted()) { starpos = (strchr(TFTstrchr_pointer + 4, '*')); if (TFTstrchr_pointer[4] == '/') { @@ -695,7 +695,7 @@ void AnycubicTFTClass::GetCommandFromTFT() { break; case 14: // A14 START PRINTING - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (!isPrinting() && strlen(SelectedFile) > 0) StartPrint(); #endif @@ -868,7 +868,7 @@ void AnycubicTFTClass::GetCommandFromTFT() { break; case 26: // A26 refresh SD - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (isMediaInserted()) { if (strlen(SelectedDirectory) > 0) { FileList currentFileList; @@ -924,7 +924,7 @@ void AnycubicTFTClass::GetCommandFromTFT() { } void AnycubicTFTClass::DoSDCardStateCheck() { - #if BOTH(SDSUPPORT, HAS_SD_DETECT) + #if BOTH(HAS_MEDIA, HAS_SD_DETECT) bool isInserted = isMediaInserted(); if (isInserted) SENDLINE_DBG_PGM("J00", "TFT Serial Debug: SD card state changed... isInserted"); @@ -954,7 +954,7 @@ void AnycubicTFTClass::DoFilamentRunoutCheck() { } void AnycubicTFTClass::StartPrint() { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (!isPrinting() && strlen(SelectedFile) > 0) { #if ENABLED(ANYCUBIC_LCD_DEBUG) SERIAL_ECHOPGM("TFT Serial Debug: About to print file ... "); @@ -970,7 +970,7 @@ void AnycubicTFTClass::StartPrint() { } void AnycubicTFTClass::PausePrint() { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (isPrintingFromMedia() && mediaPrintingState != AMPRINTSTATE_STOP_REQUESTED && mediaPauseState == AMPAUSESTATE_NOT_PAUSED) { mediaPrintingState = AMPRINTSTATE_PAUSE_REQUESTED; mediaPauseState = AMPAUSESTATE_NOT_PAUSED; // need the userconfirm method to update pause state @@ -984,7 +984,7 @@ void AnycubicTFTClass::PausePrint() { } void AnycubicTFTClass::ResumePrint() { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #if ENABLED(FILAMENT_RUNOUT_SENSOR) if (READ(FIL_RUNOUT1_PIN)) { #if ENABLED(ANYCUBIC_LCD_DEBUG) @@ -1020,7 +1020,7 @@ void AnycubicTFTClass::ResumePrint() { } void AnycubicTFTClass::StopPrint() { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA mediaPrintingState = AMPRINTSTATE_STOP_REQUESTED; mediaPauseState = AMPAUSESTATE_NOT_PAUSED; SENDLINE_DBG_PGM("J16", "TFT Serial Debug: SD print stop called... J16"); diff --git a/Marlin/src/lcd/extui/dgus/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/DGUSScreenHandler.cpp index b2363c4ee9ab..e8abc259a21d 100644 --- a/Marlin/src/lcd/extui/dgus/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/DGUSScreenHandler.cpp @@ -52,7 +52,7 @@ bool DGUSScreenHandler::ScreenComplete; void (*DGUSScreenHandler::confirm_action_cb)() = nullptr; -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA int16_t DGUSScreenHandler::top_file = 0, DGUSScreenHandler::file_to_print = 0; ExtUI::FileList filelist; @@ -260,7 +260,7 @@ void DGUSScreenHandler::DGUSLCD_SendHeaterStatusToDisplay(DGUS_VP_Variable &var) #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA void DGUSScreenHandler::ScreenChangeHookIfSD(DGUS_VP_Variable &var, void *val_ptr) { // default action executed when there is a SD card, but not printing @@ -329,7 +329,7 @@ void DGUSScreenHandler::DGUSLCD_SendHeaterStatusToDisplay(DGUS_VP_Variable &var) GotoScreen(DGUSLCD_SCREEN_POPUP); } -#endif // SDSUPPORT +#endif // HAS_MEDIA void DGUSScreenHandler::ScreenConfirmedOK(DGUS_VP_Variable &var, void *val_ptr) { DGUS_VP_Variable ramcopy; diff --git a/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h b/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h index 7ff9ac673fd1..9ebca87be1d9 100644 --- a/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h +++ b/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h @@ -114,7 +114,7 @@ class DGUSScreenHandler { static void HandleFilamentLoadUnload(DGUS_VP_Variable &var); #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA // Callback for VP "Display wants to change screen when there is a SD card" static void ScreenChangeHookIfSD(DGUS_VP_Variable &var, void *val_ptr); // Scroll buttons on the file listing screen. @@ -233,7 +233,7 @@ class DGUSScreenHandler { static uint16_t ConfirmVP; //< context for confirm screen (VP that will be emulated-sent on "OK"). - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static int16_t top_file; //< file on top of file chooser static int16_t file_to_print; //< touched file to be confirmed #endif diff --git a/Marlin/src/lcd/extui/dgus/dgus_extui.cpp b/Marlin/src/lcd/extui/dgus/dgus_extui.cpp index 2fe4e03016b5..1d86d8bd558f 100644 --- a/Marlin/src/lcd/extui/dgus/dgus_extui.cpp +++ b/Marlin/src/lcd/extui/dgus/dgus_extui.cpp @@ -48,9 +48,9 @@ namespace ExtUI { while (!ScreenHandler.loop()); // Wait while anything is left to be sent } - void onMediaInserted() { TERN_(SDSUPPORT, ScreenHandler.SDCardInserted()); } - void onMediaError() { TERN_(SDSUPPORT, ScreenHandler.SDCardError()); } - void onMediaRemoved() { TERN_(SDSUPPORT, ScreenHandler.SDCardRemoved()); } + void onMediaInserted() { TERN_(HAS_MEDIA, ScreenHandler.SDCardInserted()); } + void onMediaError() { TERN_(HAS_MEDIA, ScreenHandler.SDCardError()); } + void onMediaRemoved() { TERN_(HAS_MEDIA, ScreenHandler.SDCardRemoved()); } void onPlayTone(const uint16_t frequency, const uint16_t duration) {} void onPrintTimerStarted() {} diff --git a/Marlin/src/lcd/extui/dgus/fysetc/DGUSDisplayDef.cpp b/Marlin/src/lcd/extui/dgus/fysetc/DGUSDisplayDef.cpp index 3e731de438cb..6b670368b656 100644 --- a/Marlin/src/lcd/extui/dgus/fysetc/DGUSDisplayDef.cpp +++ b/Marlin/src/lcd/extui/dgus/fysetc/DGUSDisplayDef.cpp @@ -320,7 +320,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = { // Helper to detect touch events VPHELPER(VP_SCREENCHANGE, nullptr, ScreenHandler.ScreenChangeHook, nullptr), VPHELPER(VP_SCREENCHANGE_ASK, nullptr, ScreenHandler.ScreenChangeHookIfIdle, nullptr), - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, ScreenHandler.ScreenChangeHookIfSD, nullptr), #endif VPHELPER(VP_CONFIRMED, nullptr, ScreenHandler.ScreenConfirmedOK, nullptr), @@ -442,7 +442,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = { #endif // SDCard File listing. - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA VPHELPER(VP_SD_ScrollEvent, nullptr, ScreenHandler.DGUSLCD_SD_ScrollFilelist, nullptr), VPHELPER(VP_SD_FileSelected, nullptr, ScreenHandler.DGUSLCD_SD_FileSelected, nullptr), VPHELPER(VP_SD_FileSelectConfirm, nullptr, ScreenHandler.DGUSLCD_SD_StartPrint, nullptr), diff --git a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp index 58f0ed831921..0c76454d747e 100644 --- a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp @@ -40,7 +40,7 @@ #include "../../../../feature/powerloss.h" #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA extern ExtUI::FileList filelist; @@ -124,7 +124,7 @@ ) GotoScreen(DGUSLCD_SCREEN_MAIN); } -#endif // SDSUPPORT +#endif // HAS_MEDIA void DGUSScreenHandler::ScreenChangeHook(DGUS_VP_Variable &var, void *val_ptr) { uint8_t *tmp = (uint8_t*)val_ptr; diff --git a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSDisplayDef.cpp b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSDisplayDef.cpp index a348a1f9a11c..c278179e3f27 100644 --- a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSDisplayDef.cpp +++ b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSDisplayDef.cpp @@ -317,7 +317,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = { // Helper to detect touch events VPHELPER(VP_SCREENCHANGE, nullptr, ScreenHandler.ScreenChangeHook, nullptr), VPHELPER(VP_SCREENCHANGE_ASK, nullptr, ScreenHandler.ScreenChangeHookIfIdle, nullptr), - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, ScreenHandler.ScreenChangeHookIfSD, nullptr), #endif VPHELPER(VP_CONFIRMED, nullptr, ScreenHandler.ScreenConfirmedOK, nullptr), @@ -435,7 +435,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = { #endif // SDCard File listing. - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA VPHELPER(VP_SD_ScrollEvent, nullptr, ScreenHandler.DGUSLCD_SD_ScrollFilelist, nullptr), VPHELPER(VP_SD_FileSelected, nullptr, ScreenHandler.DGUSLCD_SD_FileSelected, nullptr), VPHELPER(VP_SD_FileSelectConfirm, nullptr, ScreenHandler.DGUSLCD_SD_StartPrint, nullptr), diff --git a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp index ebe3e3ba8abc..83658cc8c021 100644 --- a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp @@ -40,7 +40,7 @@ #include "../../../../feature/powerloss.h" #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA extern ExtUI::FileList filelist; @@ -124,7 +124,7 @@ ) GotoScreen(DGUSLCD_SCREEN_MAIN); } -#endif // SDSUPPORT +#endif // HAS_MEDIA void DGUSScreenHandler::ScreenChangeHook(DGUS_VP_Variable &var, void *val_ptr) { uint8_t *tmp = (uint8_t*)val_ptr; diff --git a/Marlin/src/lcd/extui/dgus/mks/DGUSDisplayDef.cpp b/Marlin/src/lcd/extui/dgus/mks/DGUSDisplayDef.cpp index 40f6a349d586..8dee8e26d705 100644 --- a/Marlin/src/lcd/extui/dgus/mks/DGUSDisplayDef.cpp +++ b/Marlin/src/lcd/extui/dgus/mks/DGUSDisplayDef.cpp @@ -502,7 +502,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = { // Helper to detect touch events VPHELPER(VP_SCREENCHANGE, nullptr, ScreenHandler.ScreenChangeHook, nullptr), VPHELPER(VP_SCREENCHANGE_ASK, nullptr, ScreenHandler.ScreenChangeHookIfIdle, nullptr), - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, ScreenHandler.ScreenChangeHookIfSD, nullptr), #endif VPHELPER(VP_CONFIRMED, nullptr, ScreenHandler.ScreenConfirmedOK, nullptr), @@ -751,7 +751,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = { // SDCard File listing - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA VPHELPER(VP_SD_FileSelected, nullptr, ScreenHandler.DGUSLCD_SD_FileSelected, nullptr), VPHELPER(VP_SD_ScrollEvent, nullptr, ScreenHandler.DGUSLCD_SD_ScrollFilelist, nullptr), VPHELPER(VP_SD_FileSelectConfirm, nullptr, ScreenHandler.DGUSLCD_SD_StartPrint, nullptr), diff --git a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp index bdd5f4f018d4..8cddcb074eea 100644 --- a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp @@ -47,7 +47,7 @@ #include "../../../../feature/powerloss.h" #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA extern ExtUI::FileList filelist; #endif @@ -140,7 +140,7 @@ void DGUSScreenHandlerMKS::DGUSLCD_SendTMCStepValue(DGUS_VP_Variable &var) { #endif } -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA void DGUSScreenHandler::DGUSLCD_SD_FileSelected(DGUS_VP_Variable &var, void *val_ptr) { uint16_t touched_nr = (int16_t)BE16_P(val_ptr) + top_file; @@ -262,7 +262,7 @@ void DGUSScreenHandlerMKS::DGUSLCD_SendTMCStepValue(DGUS_VP_Variable &var) { const uint16_t value = BE16_P(val_ptr); if (value == 0x0F) GotoScreen(DGUSLCD_SCREEN_MAIN); } -#endif // SDSUPPORT +#endif // HAS_MEDIA void DGUSScreenHandler::ScreenChangeHook(DGUS_VP_Variable &var, void *val_ptr) { uint8_t *tmp = (uint8_t*)val_ptr; diff --git a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.h b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.h index 823ed4297cd0..69ded29ffbc7 100644 --- a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.h +++ b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.h @@ -83,7 +83,7 @@ class DGUSScreenHandlerMKS : public DGUSScreenHandler { static void GetManualFilamentSpeed(DGUS_VP_Variable &var, void *val_ptr); #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA // Marlin informed us about SD print completion. static void SDPrintingFinished(); #else diff --git a/Marlin/src/lcd/extui/dgus/origin/DGUSDisplayDef.cpp b/Marlin/src/lcd/extui/dgus/origin/DGUSDisplayDef.cpp index 004b453e6e2b..c5711320ec18 100644 --- a/Marlin/src/lcd/extui/dgus/origin/DGUSDisplayDef.cpp +++ b/Marlin/src/lcd/extui/dgus/origin/DGUSDisplayDef.cpp @@ -128,7 +128,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = { // Helper to detect touch events VPHELPER(VP_SCREENCHANGE, nullptr, ScreenHandler.ScreenChangeHook, nullptr), VPHELPER(VP_SCREENCHANGE_ASK, nullptr, ScreenHandler.ScreenChangeHookIfIdle, nullptr), - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, ScreenHandler.ScreenChangeHookIfSD, nullptr), #endif VPHELPER(VP_CONFIRMED, nullptr, ScreenHandler.ScreenConfirmedOK, nullptr), @@ -243,7 +243,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = { #endif // SDCard File listing. - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA VPHELPER(VP_SD_ScrollEvent, nullptr, ScreenHandler.DGUSLCD_SD_ScrollFilelist, nullptr), VPHELPER(VP_SD_FileSelected, nullptr, ScreenHandler.DGUSLCD_SD_FileSelected, nullptr), VPHELPER(VP_SD_FileSelectConfirm, nullptr, ScreenHandler.DGUSLCD_SD_StartPrint, nullptr), diff --git a/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp index edf9a5ca8246..6921cdc73767 100644 --- a/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp @@ -40,7 +40,7 @@ #include "../../../../feature/powerloss.h" #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA extern ExtUI::FileList filelist; @@ -124,7 +124,7 @@ ) GotoScreen(DGUSLCD_SCREEN_MAIN); } -#endif // SDSUPPORT +#endif // HAS_MEDIA void DGUSScreenHandler::ScreenChangeHook(DGUS_VP_Variable &var, void *val_ptr) { uint8_t *tmp = (uint8_t*)val_ptr; diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp index 7a0318a5554a..40f3bbf1d513 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp @@ -46,7 +46,7 @@ void DGUSRxHandler::ScreenChange(DGUS_VP &vp, void *data_ptr) { const DGUS_Screen screen = (DGUS_Screen)((uint8_t*)data_ptr)[1]; if (vp.addr == DGUS_Addr::SCREENCHANGE_SD) { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA IF_DISABLED(HAS_SD_DETECT, card.mount()); if (!ExtUI::isMediaInserted()) { @@ -76,7 +76,7 @@ void DGUSRxHandler::ScreenChange(DGUS_VP &vp, void *data_ptr) { dgus_screen_handler.TriggerScreenChange(screen); } -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA void DGUSRxHandler::Scroll(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); @@ -154,7 +154,7 @@ void DGUSRxHandler::ScreenChange(DGUS_VP &vp, void *data_ptr) { ExtUI::printFile(dgus_screen_handler.filelist.shortFilename()); dgus_screen_handler.TriggerScreenChange(DGUS_Screen::PRINT_STATUS); } -#endif // SDSUPPORT +#endif // HAS_MEDIA void DGUSRxHandler::PrintAbort(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.h b/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.h index 4cad11fc0b0b..d6d5855b9d8b 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.h @@ -28,7 +28,7 @@ namespace DGUSRxHandler { void ScreenChange(DGUS_VP &, void *); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA void Scroll(DGUS_VP &, void *); void SelectFile(DGUS_VP &, void *); void PrintFile(DGUS_VP &, void *); diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp index e1d8778567c4..e8c23b3226a2 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp @@ -34,7 +34,7 @@ uint8_t DGUSScreenHandler::debug_count = 0; -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA ExtUI::FileList DGUSScreenHandler::filelist; uint16_t DGUSScreenHandler::filelist_offset = 0; int16_t DGUSScreenHandler::filelist_selected = -1; @@ -281,7 +281,7 @@ void DGUSScreenHandler::FilamentRunout(const ExtUI::extruder_t extruder) { dgus_display.PlaySound(3); } -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA void DGUSScreenHandler::SDCardInserted() { if (current_screen == DGUS_Screen::HOME) @@ -299,7 +299,7 @@ void DGUSScreenHandler::FilamentRunout(const ExtUI::extruder_t extruder) { TriggerScreenChange(DGUS_Screen::HOME); } -#endif // SDSUPPORT +#endif // HAS_MEDIA #if ENABLED(POWER_LOSS_RECOVERY) diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.h b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.h index 295df311df46..0f71ebdc3d46 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.h @@ -52,7 +52,7 @@ class DGUSScreenHandler { static void PrintTimerStopped(); static void FilamentRunout(const ExtUI::extruder_t extruder); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA /// Marlin informed us that a new SD has been inserted. static void SDCardInserted(); /// Marlin informed us that the SD Card has been removed(). @@ -89,7 +89,7 @@ class DGUSScreenHandler { static uint8_t debug_count; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA static ExtUI::FileList filelist; static uint16_t filelist_offset; static int16_t filelist_selected; diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp index c95d7d045351..3b1a38502db6 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp @@ -31,7 +31,7 @@ #include "../../../gcode/queue.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA bool DGUSSetupHandler::Print() { dgus_screen_handler.filelist.refresh(); diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.h b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.h index 9e3866467fc0..10063446b770 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.h @@ -23,7 +23,7 @@ namespace DGUSSetupHandler { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA bool Print(); #endif bool PrintStatus(); diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.cpp index b27988a89f59..c7d650c03ec8 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.cpp @@ -36,7 +36,7 @@ #include "../../../feature/pause.h" #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA void DGUSTxHandler::SetFileControlState(int16_t file, bool state) { DGUS_Control control; @@ -177,7 +177,7 @@ dgus_display.WriteString((uint16_t)vp.addr, dgus_screen_handler.filelist.filename(), vp.size); } -#endif // SDSUPPORT +#endif // HAS_MEDIA void DGUSTxHandler::PositionZ(DGUS_VP &vp) { const float position = ExtUI::isAxisPositionKnown(ExtUI::Z) ? planner.get_axis_position_mm(Z_AXIS) : 0; diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.h b/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.h index 161d73f813a4..6e4f1db5dc7e 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.h @@ -28,7 +28,7 @@ namespace DGUSTxHandler { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA void SetFileControlState(int16_t, bool); void FileType(DGUS_VP &); void FileName(DGUS_VP &); diff --git a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.cpp b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.cpp index 706038f0edf9..4c99ff6a0089 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.cpp @@ -36,7 +36,7 @@ constexpr DGUS_Addr LIST_HOME[] PROGMEM = { (DGUS_Addr)0 }; -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA constexpr DGUS_Addr LIST_PRINT[] PROGMEM = { DGUS_Addr::SD_Type, DGUS_Addr::SD_FileName0, @@ -210,7 +210,7 @@ constexpr DGUS_Addr LIST_WAIT[] PROGMEM = { const struct DGUS_ScreenAddrList screen_addr_list_map[] PROGMEM = { MAP_HELPER(DGUS_Screen::HOME, LIST_HOME), - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA MAP_HELPER(DGUS_Screen::PRINT, LIST_PRINT), #endif MAP_HELPER(DGUS_Screen::PRINT_STATUS, LIST_PRINT_STATUS), diff --git a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.cpp b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.cpp index a9f13b5ee54c..e3ba393af25b 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.cpp @@ -35,7 +35,7 @@ .setup_fn = SETUP } const struct DGUS_ScreenSetup screen_setup_list[] PROGMEM = { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA SETUP_HELPER(DGUS_Screen::PRINT, &DGUSSetupHandler::Print), #endif SETUP_HELPER(DGUS_Screen::PRINT_STATUS, &DGUSSetupHandler::PrintStatus), diff --git a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_VPList.cpp b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_VPList.cpp index 3f00dbb0372b..cd5408e190a3 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_VPList.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_VPList.cpp @@ -80,7 +80,7 @@ const struct DGUS_VP vp_list[] PROGMEM = { VP_HELPER_RX(DGUS_Addr::SCREENCHANGE_Idle, &DGUSRxHandler::ScreenChange), VP_HELPER_RX(DGUS_Addr::SCREENCHANGE_Printing, &DGUSRxHandler::ScreenChange), - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA VP_HELPER_RX(DGUS_Addr::SD_SelectFile, &DGUSRxHandler::SelectFile), VP_HELPER_RX(DGUS_Addr::SD_Scroll, &DGUSRxHandler::Scroll), VP_HELPER_RX_NODATA(DGUS_Addr::SD_Print, &DGUSRxHandler::PrintFile), @@ -150,7 +150,7 @@ const struct DGUS_VP vp_list[] PROGMEM = { // WRITE-ONLY VARIABLES - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA VP_HELPER_TX(DGUS_Addr::SD_Type, &DGUSTxHandler::FileType), VP_HELPER_TX_SIZE(DGUS_Addr::SD_FileName0, DGUS_FILENAME_LEN, diff --git a/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp b/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp index fb8ef8cc8458..75ef5f5d6627 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp @@ -50,9 +50,9 @@ namespace ExtUI { dgus_screen_handler.PrinterKilled(error, component); } - void onMediaInserted() { TERN_(SDSUPPORT, dgus_screen_handler.SDCardInserted()); } - void onMediaError() { TERN_(SDSUPPORT, dgus_screen_handler.SDCardError()); } - void onMediaRemoved() { TERN_(SDSUPPORT, dgus_screen_handler.SDCardRemoved()); } + void onMediaInserted() { TERN_(HAS_MEDIA, dgus_screen_handler.SDCardInserted()); } + void onMediaError() { TERN_(HAS_MEDIA, dgus_screen_handler.SDCardError()); } + void onMediaRemoved() { TERN_(HAS_MEDIA, dgus_screen_handler.SDCardRemoved()); } void onPlayTone(const uint16_t frequency, const uint16_t duration) { dgus_screen_handler.PlayTone(frequency, duration); diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/archim2-flash/flash_storage.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/archim2-flash/flash_storage.cpp index a23ad6e37e76..c3a4118f208b 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/archim2-flash/flash_storage.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/archim2-flash/flash_storage.cpp @@ -416,7 +416,7 @@ bool UIFlashStorage::is_present = false; * files must be written sequentially following by a chip erase and it is not possible to * overwrite files. */ UIFlashStorage::error_t UIFlashStorage::write_media_file(FSTR_P filename, uint8_t slot) { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA uint32_t addr; uint8_t buff[write_page_size]; @@ -500,7 +500,7 @@ bool UIFlashStorage::is_present = false; } #else return VERIFY_ERROR; - #endif // SDSUPPORT + #endif // HAS_MEDIA } bool UIFlashStorage::BootMediaReader::isAvailable(uint32_t slot) { diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/archim2-flash/media_file_reader.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/archim2-flash/media_file_reader.cpp index b4165a742a5f..99e875712ac7 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/archim2-flash/media_file_reader.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/archim2-flash/media_file_reader.cpp @@ -25,7 +25,7 @@ #if ENABLED(TOUCH_UI_FTDI_EVE) #include "media_file_reader.h" - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA bool MediaFileReader::open(const char *filename) { root = CardReader::getroot(); return file.open(&root, filename, O_READ); diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/archim2-flash/media_file_reader.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/archim2-flash/media_file_reader.h index 9a20c2a038d7..78b1652c50db 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/archim2-flash/media_file_reader.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/archim2-flash/media_file_reader.h @@ -24,14 +24,14 @@ #include "../../../../inc/MarlinConfigPre.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "../../../../sd/SdFile.h" #include "../../../../sd/cardreader.h" #endif class MediaFileReader { private: - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA MediaFile root, file; #endif diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/bioprinter/printing_dialog_box.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/bioprinter/printing_dialog_box.cpp index 4af38dcb9df7..9b67f0e3c83a 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/bioprinter/printing_dialog_box.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/bioprinter/printing_dialog_box.cpp @@ -75,7 +75,7 @@ void BioPrintingDialogBox::draw_interaction_buttons(draw_mode_t what) { .font(font_medium) .colors(isPrinting() ? action_btn : normal_btn) .tag(2).button(BTN_POS(1,9), BTN_SIZE(1,1), F("Menu")) - .enabled(isPrinting() ? TERN0(SDSUPPORT, isPrintingFromMedia()) : 1) + .enabled(isPrinting() ? TERN0(HAS_MEDIA, isPrintingFromMedia()) : 1) .tag(3) .colors(isPrinting() ? normal_btn : action_btn) .button(BTN_POS(2,9), BTN_SIZE(1,1), isPrinting() ? F("Cancel") : F("Back")); diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_extui.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_extui.cpp index b82b4a07bd7f..86f470ee1915 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_extui.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_extui.cpp @@ -45,14 +45,14 @@ namespace ExtUI { } void onMediaInserted() { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA sound.play(media_inserted, PLAY_ASYNCHRONOUS); StatusScreen::onMediaInserted(); #endif } void onMediaRemoved() { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (isPrintingFromMedia()) { stopPrint(); InterfaceSoundsScreen::playEventSound(InterfaceSoundsScreen::PRINTING_FAILED); diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/developer_menu.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/developer_menu.cpp index 2ec8a3bbd19f..4a6073372387 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/developer_menu.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/developer_menu.cpp @@ -44,7 +44,7 @@ void DeveloperMenu::onRedraw(draw_mode_t what) { constexpr bool has_flash = false; #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA constexpr bool has_media = true; #else constexpr bool has_media = false; @@ -98,7 +98,7 @@ bool DeveloperMenu::onTouchEnd(uint8_t tag) { break; case 4: GOTO_SCREEN(TouchRegistersScreen); break; case 5: sound.play(js_bach_joy, PLAY_ASYNCHRONOUS); break; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA case 6: if (!MediaPlayerScreen::playCardMedia()) AlertDialogBox::showError(F("Cannot open STARTUP.AVI")); diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/media_player_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/media_player_screen.cpp index 061c8555df54..fbfce19a7593 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/media_player_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/media_player_screen.cpp @@ -57,7 +57,7 @@ void MediaPlayerScreen::onRedraw(draw_mode_t) { } bool MediaPlayerScreen::playCardMedia() { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA char fname[15]; strcpy_P(fname, PSTR("STARTUP.AVI")); diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/screens.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/screens.h index b88e51757690..e2df29cb833d 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/screens.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/screens.h @@ -83,7 +83,7 @@ enum { #if ENABLED(FILAMENT_RUNOUT_SENSOR) FILAMENT_RUNOUT_SCREEN_CACHE, #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA FILES_SCREEN_CACHE, #endif #if ENABLED(CUSTOM_MENU_MAIN) @@ -204,7 +204,7 @@ enum { #include "linear_advance_screen.h" #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "files_screen.h" #endif diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/status_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/status_screen.cpp index f1c65357e017..738d8ee64f2e 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/status_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/status_screen.cpp @@ -417,7 +417,7 @@ bool StatusScreen::onTouchEnd(uint8_t tag) { using namespace ExtUI; switch (tag) { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA case 3: GOTO_SCREEN(FilesScreen); break; #endif case 4: diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/pin_mappings.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/pin_mappings.h index 167ea9d7cf17..396349384159 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/pin_mappings.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/pin_mappings.h @@ -137,7 +137,7 @@ #define CLCD_SPI_CS BTN_EN1 #define CLCD_MOD_RESET BTN_EN2 - #if MB(EINSY_RAMBO, EINSY_RETRO) && DISABLED(SDSUPPORT) + #if MB(EINSY_RAMBO, EINSY_RETRO) && !HAS_MEDIA #define CLCD_SPI_EXTRA_CS SDSS #endif diff --git a/Marlin/src/lcd/extui/malyan/malyan.cpp b/Marlin/src/lcd/extui/malyan/malyan.cpp index 66c52878cc98..1c051f4504cd 100644 --- a/Marlin/src/lcd/extui/malyan/malyan.cpp +++ b/Marlin/src/lcd/extui/malyan/malyan.cpp @@ -167,7 +167,7 @@ void process_lcd_eb_command(const char *command) { char message_buffer[MAX_CURLY_COMMAND]; uint8_t done_pct = print_job_timer.isRunning() ? (iteration * 10) : 100; iteration = (iteration + 1) % 10; // Provide progress animation - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (ExtUI::isPrintingFromMedia() || ExtUI::isPrintingFromMediaPaused()) done_pct = card.percentDone(); #endif @@ -180,7 +180,7 @@ void process_lcd_eb_command(const char *command) { #else 0, 0, #endif - TERN(SDSUPPORT, done_pct, 0), + TERN(HAS_MEDIA, done_pct, 0), elapsed_buffer ); write_to_lcd(message_buffer); @@ -257,7 +257,7 @@ void process_lcd_p_command(const char *command) { break; case 'H': queue.enqueue_now_P(G28_STR); break; // Home all axes default: { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA // Print file 000 - a three digit number indicating which // file to print in the SD card. If it's a directory, // then switch to the directory. @@ -316,7 +316,7 @@ void process_lcd_s_command(const char *command) { } break; case 'L': { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (!card.isMounted()) card.mount(); // A more efficient way to do this would be to diff --git a/Marlin/src/lcd/extui/malyan/malyan_extui.cpp b/Marlin/src/lcd/extui/malyan/malyan_extui.cpp index 8bffa442b68c..042062b7c9b7 100644 --- a/Marlin/src/lcd/extui/malyan/malyan_extui.cpp +++ b/Marlin/src/lcd/extui/malyan/malyan_extui.cpp @@ -78,7 +78,7 @@ namespace ExtUI { while (LCD_SERIAL.available()) parse_lcd_byte((byte)LCD_SERIAL.read()); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA // The way last printing status works is simple: // The UI needs to see at least one TQ which is not 100% // and then when the print is complete, one which is. diff --git a/Marlin/src/lcd/extui/mks_ui/draw_dialog.cpp b/Marlin/src/lcd/extui/mks_ui/draw_dialog.cpp index a214e7d1e0e7..f0609f4ebbf7 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_dialog.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_dialog.cpp @@ -85,7 +85,7 @@ static void btn_ok_event_cb(lv_obj_t *btn, lv_event_t event) { lv_clear_dialog(); lv_draw_printing(); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (!gcode_preview_over) { char *cur_name; cur_name = strrchr(list_file.file_name[sel_id], '/'); @@ -121,7 +121,7 @@ static void btn_ok_event_cb(lv_obj_t *btn, lv_event_t event) { lv_clear_dialog(); lv_draw_ready_print(); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA uiCfg.print_state = IDLE; card.abortFilePrintSoon(); #endif diff --git a/Marlin/src/lcd/extui/mks_ui/draw_operation.cpp b/Marlin/src/lcd/extui/mks_ui/draw_operation.cpp index ffe714fca964..bf39a52fe965 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_operation.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_operation.cpp @@ -70,7 +70,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { uiCfg.extruderIndexBak = active_extruder; #endif if (uiCfg.print_state == WORKING) { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA card.pauseSDPrint(); stop_print_time(); uiCfg.print_state = PAUSING; diff --git a/Marlin/src/lcd/extui/mks_ui/draw_print_file.cpp b/Marlin/src/lcd/extui/mks_ui/draw_print_file.cpp index 6b41981fb857..4997641e154b 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_print_file.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_print_file.cpp @@ -55,7 +55,7 @@ extern char public_buf_m[100]; uint8_t sel_id = 0; -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA static uint8_t search_file() { int valid_name_cnt = 0; @@ -100,10 +100,10 @@ uint8_t sel_id = 0; return valid_name_cnt; } -#endif // SDSUPPORT +#endif // HAS_MEDIA bool have_pre_pic(char *path) { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA char *ps1, *ps2, *cur_name = strrchr(path, '/'); card.openFileRead(cur_name); card.read(public_buf, 512); @@ -130,7 +130,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { if (dir_offset[curDirLever].cur_page_first_offset >= FILE_NUM) list_file.Sd_file_offset = dir_offset[curDirLever].cur_page_first_offset - FILE_NUM; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA file_count = search_file(); #endif if (file_count != 0) { @@ -144,7 +144,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { if (dir_offset[curDirLever].cur_page_last_offset > 0) { list_file.Sd_file_cnt = 0; list_file.Sd_file_offset = dir_offset[curDirLever].cur_page_last_offset + 1; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA file_count = search_file(); #endif if (file_count != 0) { @@ -161,7 +161,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { int8_t *ch = (int8_t *)strrchr(list_file.curDirPath, '/'); if (ch) { *ch = 0; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA card.cdup(); #endif dir_offset[curDirLever].curPage = 0; @@ -169,7 +169,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { dir_offset[curDirLever].cur_page_last_offset = 0; curDirLever--; list_file.Sd_file_offset = dir_offset[curDirLever].cur_page_first_offset; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA file_count = search_file(); #endif lv_clear_print_file(); @@ -189,7 +189,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { strcpy(list_file.curDirPath, list_file.file_name[i]); curDirLever++; list_file.Sd_file_offset = dir_offset[curDirLever].cur_page_first_offset; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA file_count = search_file(); #endif lv_clear_print_file(); @@ -222,7 +222,7 @@ void lv_draw_print_file() { ZERO(list_file.curDirPath); list_file.Sd_file_offset = dir_offset[curDirLever].cur_page_first_offset; - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA card.mount(); file_count = search_file(); #endif @@ -359,7 +359,7 @@ void disp_gcode_icon(uint8_t file_num) { } uint32_t lv_open_gcode_file(char *path) { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA uint32_t *ps4; uintptr_t pre_sread_cnt = UINTPTR_MAX; char *cur_name; @@ -375,7 +375,7 @@ uint32_t lv_open_gcode_file(char *path) { card.setIndex(pre_sread_cnt); } return pre_sread_cnt; - #endif // SDSUPPORT + #endif // HAS_MEDIA } int ascii2dec_test(char *ascii) { @@ -395,7 +395,7 @@ int ascii2dec_test(char *ascii) { } void lv_gcode_file_read(uint8_t *data_buf) { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA uint16_t i = 0, j = 0, k = 0; uint16_t row_1 = 0; bool ignore_start = true; @@ -454,10 +454,10 @@ void lv_gcode_file_read(uint8_t *data_buf) { } #endif // !HAS_TFT_LVGL_UI_SPI memcpy(data_buf, public_buf, 200); - #endif // SDSUPPORT + #endif // HAS_MEDIA } -void lv_close_gcode_file() {TERN_(SDSUPPORT, card.closefile());} +void lv_close_gcode_file() {TERN_(HAS_MEDIA, card.closefile());} void lv_gcode_file_seek(uint32_t pos) { card.setIndex(pos); diff --git a/Marlin/src/lcd/extui/mks_ui/draw_printing.cpp b/Marlin/src/lcd/extui/mks_ui/draw_printing.cpp index 5dc3861f6525..345c5dd732c0 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_printing.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_printing.cpp @@ -80,7 +80,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { switch (obj->mks_obj_id) { case ID_PAUSE: if (uiCfg.print_state == WORKING) { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA card.pauseSDPrint(); stop_print_time(); uiCfg.print_state = PAUSING; @@ -274,13 +274,13 @@ void setProBarRate() { volatile long long rate_tmp_r; if (!gCfgItems.from_flash_pic) { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA rate_tmp_r = (long long)card.getIndex() * 100; #endif rate = rate_tmp_r / gCfgItems.curFilesize; } else { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA rate_tmp_r = (long long)card.getIndex(); #endif rate = (rate_tmp_r - (PREVIEW_SIZE + To_pre_view)) * 100 / (gCfgItems.curFilesize - (PREVIEW_SIZE + To_pre_view)); diff --git a/Marlin/src/lcd/extui/mks_ui/draw_ui.cpp b/Marlin/src/lcd/extui/mks_ui/draw_ui.cpp index b510e3c0c6f3..102109a1363e 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_ui.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_ui.cpp @@ -563,7 +563,7 @@ char *creat_title_text() { uintptr_t gPicturePreviewStart = 0; void preview_gcode_prehandle(char *path) { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA uintptr_t pre_read_cnt = 0; uint32_t *p1; char *cur_name; @@ -593,7 +593,7 @@ char *creat_title_text() { } void gcode_preview(char *path, int xpos_pixel, int ypos_pixel) { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA volatile uint32_t i, j; volatile uint16_t *p_index; char *cur_name; @@ -672,7 +672,7 @@ char *creat_title_text() { } return; } - #endif // SDSUPPORT + #endif // HAS_MEDIA } void draw_default_preview(int xpos_pixel, int ypos_pixel, uint8_t sel) { @@ -1345,7 +1345,7 @@ void lv_screen_menu_item_onoff_update(lv_obj_t *btn, const bool curValue) { lv_label_set_text((lv_obj_t*)btn->child_ll.head, curValue ? machine_menu.enable : machine_menu.disable); } -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA void sd_detection() { static bool last_sd_status; @@ -1377,7 +1377,7 @@ void LV_TASK_HANDLER() { if (TERN1(USE_SPI_DMA_TC, !get_lcd_dma_lock())) lv_task_handler(); - #if BOTH(MKS_TEST, SDSUPPORT) + #if BOTH(MKS_TEST, HAS_MEDIA) if (mks_test_flag == 0x1E) mks_hardware_test(); #endif diff --git a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp index 24e177df392c..45a54f6177b9 100644 --- a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp +++ b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp @@ -159,7 +159,7 @@ void mks_test_beeper() { buzzer.click(100); } - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA void mks_gpio_test() { init_test_gpio(); @@ -677,7 +677,7 @@ void disp_assets_update_progress(FSTR_P const fmsg) { #endif } -#if BOTH(MKS_TEST, SDSUPPORT) +#if BOTH(MKS_TEST, HAS_MEDIA) uint8_t mks_test_flag = 0; const char *MKSTestPath = "MKS_TEST"; void mks_test_get() { diff --git a/Marlin/src/lcd/extui/mks_ui/mks_hardware.h b/Marlin/src/lcd/extui/mks_ui/mks_hardware.h index c0cdacd963f4..6a2574e3b0ce 100644 --- a/Marlin/src/lcd/extui/mks_ui/mks_hardware.h +++ b/Marlin/src/lcd/extui/mks_ui/mks_hardware.h @@ -26,7 +26,7 @@ #include // Functions for MKS_TEST -#if BOTH(MKS_TEST, SDSUPPORT) +#if BOTH(MKS_TEST, HAS_MEDIA) void mks_hardware_test(); void mks_test_get(); void mks_gpio_test(); diff --git a/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp b/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp index d642d81f6baa..6570176a29f6 100644 --- a/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp +++ b/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp @@ -36,7 +36,7 @@ extern uint16_t DeviceCode; -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA extern char *createFilename(char * const buffer, const dir_t &p); #endif @@ -374,7 +374,7 @@ uint32_t Pic_Info_Write(uint8_t *P_name, uint32_t P_size) { return Pic_SaveAddr; } -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA static void dosName2LongName(const char dosName[11], char *longName) { uint8_t j = 0; @@ -547,7 +547,7 @@ uint32_t Pic_Info_Write(uint8_t *P_name, uint32_t P_size) { void spi_flash_read_test() { W25QXX.SPI_FLASH_BufferRead(public_buf, UNIGBK_FLASH_ADDR, BMP_WRITE_BUF_LEN); } #endif -#endif // SDSUPPORT +#endif // HAS_MEDIA void Pic_Read(uint8_t *Pname, uint8_t *P_Rbuff) { uint8_t i, j; diff --git a/Marlin/src/lcd/extui/mks_ui/printer_operation.cpp b/Marlin/src/lcd/extui/mks_ui/printer_operation.cpp index 8f5b89cf347c..26979af2703f 100644 --- a/Marlin/src/lcd/extui/mks_ui/printer_operation.cpp +++ b/Marlin/src/lcd/extui/mks_ui/printer_operation.cpp @@ -45,7 +45,7 @@ extern bool flash_preview_begin, default_preview_flg, gcode_preview_over; void printer_state_polling() { char str_1[16]; if (uiCfg.print_state == PAUSING) { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (!planner.has_blocks_queued() && card.getIndex() > MIN_FILE_PRINTED) uiCfg.waitEndMoves++; diff --git a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp index 08db5ae7ad56..972349d287ac 100644 --- a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp +++ b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp @@ -78,7 +78,7 @@ XPT2046 touch; static lv_disp_buf_t disp_buf; lv_group_t* g; -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA void UpdateAssets(); #endif uint16_t DeviceCode = 0x9488; @@ -153,7 +153,7 @@ void tft_lvgl_init() { hal.watchdog_refresh(); // LVGL init takes time - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA UpdateAssets(); hal.watchdog_refresh(); // LVGL init takes time TERN_(MKS_TEST, mks_test_get()); @@ -246,7 +246,7 @@ void tft_lvgl_init() { if (ready) lv_draw_ready_print(); - #if BOTH(MKS_TEST, SDSUPPORT) + #if BOTH(MKS_TEST, HAS_MEDIA) if (mks_test_flag == 0x1E) mks_gpio_test(); #endif } diff --git a/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp b/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp index d6d2ce3945dc..cf2411ee7ef5 100644 --- a/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp +++ b/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp @@ -135,7 +135,7 @@ void wifi_reset() { void mount_file_sys(const uint8_t disk_type) { switch (disk_type) { - case FILE_SYS_SD: TERN_(SDSUPPORT, card.mount()); break; + case FILE_SYS_SD: TERN_(HAS_MEDIA, card.mount()); break; case FILE_SYS_USB: break; } } @@ -718,7 +718,7 @@ void get_file_list(const char * const path, const bool with_longnames) { if (!path) return; if (gCfgItems.fileSysType == FILE_SYS_SD) { - TERN_(SDSUPPORT, card.mount()); + TERN_(HAS_MEDIA, card.mount()); } else if (gCfgItems.fileSysType == FILE_SYS_USB) { // udisk @@ -993,7 +993,7 @@ static void wifi_gcode_exec(uint8_t * const cmd_line) { uiCfg.print_state = WORKING; lv_draw_printing(); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (!gcode_preview_over) { char *cur_name = strrchr(list_file.file_name[sel_id], '/'); @@ -1058,7 +1058,7 @@ static void wifi_gcode_exec(uint8_t * const cmd_line) { clear_cur_ui(); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA card.pauseSDPrint(); uiCfg.print_state = PAUSING; #endif @@ -1077,7 +1077,7 @@ static void wifi_gcode_exec(uint8_t * const cmd_line) { stop_print_time(); clear_cur_ui(); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA uiCfg.print_state = IDLE; card.abortFilePrintSoon(); #endif @@ -1118,7 +1118,7 @@ static void wifi_gcode_exec(uint8_t * const cmd_line) { } mount_file_sys(gCfgItems.fileSysType); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA char *cur_name = strrchr(list_file.file_name[sel_id], '/'); card.openFileWrite(cur_name); if (card.isFileOpen()) { @@ -1529,7 +1529,7 @@ static void file_first_msg_handle(const uint8_t * const msg, const uint16_t msgL ZERO(saveFilePath); if (gCfgItems.fileSysType == FILE_SYS_SD) { - TERN_(SDSUPPORT, card.mount()); + TERN_(HAS_MEDIA, card.mount()); } else if (gCfgItems.fileSysType == FILE_SYS_USB) { // nothing @@ -1541,11 +1541,11 @@ static void file_first_msg_handle(const uint8_t * const msg, const uint16_t msgL wifiTransError.start_tick = 0; wifiTransError.now_tick = 0; - TERN_(SDSUPPORT, card.closefile()); + TERN_(HAS_MEDIA, card.closefile()); wifi_delay(1000); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA char dosName[FILENAME_LENGTH]; @@ -1574,7 +1574,7 @@ static void file_first_msg_handle(const uint8_t * const msg, const uint16_t msgL return; } - #endif // SDSUPPORT + #endif // HAS_MEDIA wifi_link_state = WIFI_TRANS_FILE; @@ -1774,7 +1774,7 @@ void stopEspTransfer() { if (wifi_link_state == WIFI_TRANS_FILE) wifi_link_state = WIFI_CONNECTED; - TERN_(SDSUPPORT, card.closefile()); + TERN_(HAS_MEDIA, card.closefile()); if (upload_result != 3) { wifiTransError.flag = 1; diff --git a/Marlin/src/lcd/extui/ui_api.cpp b/Marlin/src/lcd/extui/ui_api.cpp index 2b1f05d2bcd5..a742a82a5b96 100644 --- a/Marlin/src/lcd/extui/ui_api.cpp +++ b/Marlin/src/lcd/extui/ui_api.cpp @@ -1082,14 +1082,14 @@ namespace ExtUI { #endif void printFile(const char *filename) { - TERN(SDSUPPORT, card.openAndPrintFile(filename), UNUSED(filename)); + TERN(HAS_MEDIA, card.openAndPrintFile(filename), UNUSED(filename)); } bool isPrintingFromMediaPaused() { - return TERN0(SDSUPPORT, IS_SD_PAUSED()); + return TERN0(HAS_MEDIA, IS_SD_PAUSED()); } - bool isPrintingFromMedia() { return TERN0(SDSUPPORT, IS_SD_PRINTING() || IS_SD_PAUSED()); } + bool isPrintingFromMedia() { return TERN0(HAS_MEDIA, IS_SD_PRINTING() || IS_SD_PAUSED()); } bool isPrinting() { return commandsInQueue() || isPrintingFromMedia() || printJobOngoing() || printingIsPaused(); @@ -1099,7 +1099,7 @@ namespace ExtUI { return isPrinting() && (isPrintingFromMediaPaused() || print_job_timer.isPaused()); } - bool isMediaInserted() { return TERN0(SDSUPPORT, IS_SD_INSERTED()); } + bool isMediaInserted() { return TERN0(HAS_MEDIA, IS_SD_INSERTED()); } void pausePrint() { ui.pause_print(); } void resumePrint() { ui.resume_print(); } @@ -1138,7 +1138,7 @@ namespace ExtUI { void FileList::refresh() { } bool FileList::seek(const uint16_t pos, const bool skip_range_check) { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (!skip_range_check && (pos + 1) > count()) return false; card.selectFileByIndexSorted(pos); return card.filename[0] != '\0'; @@ -1150,35 +1150,35 @@ namespace ExtUI { } const char* FileList::filename() { - return TERN(SDSUPPORT, card.longest_filename(), ""); + return TERN(HAS_MEDIA, card.longest_filename(), ""); } const char* FileList::shortFilename() { - return TERN(SDSUPPORT, card.filename, ""); + return TERN(HAS_MEDIA, card.filename, ""); } const char* FileList::longFilename() { - return TERN(SDSUPPORT, card.longFilename, ""); + return TERN(HAS_MEDIA, card.longFilename, ""); } bool FileList::isDir() { - return TERN0(SDSUPPORT, card.flag.filenameIsDir); + return TERN0(HAS_MEDIA, card.flag.filenameIsDir); } uint16_t FileList::count() { - return TERN0(SDSUPPORT, card.get_num_items()); + return TERN0(HAS_MEDIA, card.get_num_items()); } bool FileList::isAtRootDir() { - return TERN1(SDSUPPORT, card.flag.workDirIsRoot); + return TERN1(HAS_MEDIA, card.flag.workDirIsRoot); } void FileList::upDir() { - TERN_(SDSUPPORT, card.cdup()); + TERN_(HAS_MEDIA, card.cdup()); } void FileList::changeDir(const char * const dirname) { - TERN(SDSUPPORT, card.cd(dirname), UNUSED(dirname)); + TERN(HAS_MEDIA, card.cd(dirname), UNUSED(dirname)); } } // namespace ExtUI diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index c1ec15dc19cf..0153a11a15b4 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -339,7 +339,7 @@ void MarlinUI::init() { uint8_t MarlinUI::lcd_status_update_delay = 1; // First update one loop delayed - #if BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) + #if BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) millis_t MarlinUI::next_filament_display; // = 0 #endif @@ -353,7 +353,7 @@ void MarlinUI::init() { bool MarlinUI::did_first_redraw; #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #if MARLINUI_SCROLL_NAME uint8_t MarlinUI::filename_scroll_pos, MarlinUI::filename_scroll_max; @@ -670,7 +670,7 @@ void MarlinUI::init() { #if HAS_MARLINUI_MENU if (use_click()) { - #if BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) + #if BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) pause_filament_display(); #endif goto_screen(menu_main); @@ -1490,7 +1490,7 @@ void MarlinUI::init() { FSTR_P msg; if (printingIsPaused()) msg = GET_TEXT_F(MSG_PRINT_PAUSED); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA else if (IS_SD_PRINTING()) return set_status(card.longest_filename(), true); #endif @@ -1587,7 +1587,7 @@ void MarlinUI::init() { #if HAS_WIRED_LCD - #if BASIC_PROGRESS_BAR || BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) + #if BASIC_PROGRESS_BAR || BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) const millis_t ms = millis(); #endif @@ -1598,7 +1598,7 @@ void MarlinUI::init() { #endif #endif - #if BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) + #if BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) pause_filament_display(ms); // Show status message for 5s #endif @@ -1651,12 +1651,12 @@ void MarlinUI::init() { #if HAS_DISPLAY - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA extern bool wait_for_user, wait_for_heatup; #endif void MarlinUI::abort_print() { - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA wait_for_heatup = wait_for_user = false; card.abortFilePrintSoon(); #endif @@ -1699,7 +1699,7 @@ void MarlinUI::init() { #if ENABLED(PARK_HEAD_ON_PAUSE) pause_show_message(PAUSE_MESSAGE_PARKING, PAUSE_MODE_PAUSE_PRINT); // Show message immediately to let user know about pause in progress queue.inject(F("M25 P\nM24")); - #elif ENABLED(SDSUPPORT) + #elif HAS_MEDIA queue.inject(F("M25")); #elif defined(ACTION_ON_PAUSE) hostui.pause(); @@ -1709,7 +1709,7 @@ void MarlinUI::init() { void MarlinUI::resume_print() { reset_status(); TERN_(PARK_HEAD_ON_PAUSE, wait_for_heatup = wait_for_user = false); - TERN_(SDSUPPORT, if (IS_SD_PAUSED()) queue.inject_P(M24_STR)); + TERN_(HAS_MEDIA, if (IS_SD_PAUSED()) queue.inject_P(M24_STR)); #ifdef ACTION_ON_RESUME hostui.resume(); #endif @@ -1754,7 +1754,7 @@ void MarlinUI::init() { MarlinUI::progress_t MarlinUI::_get_progress() { return ( TERN0(SET_PROGRESS_PERCENT, (progress_override & PROGRESS_MASK)) - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA ?: TERN(HAS_PRINT_PROGRESS_PERMYRIAD, card.permyriadDone(), card.percentDone()) #endif ); @@ -1784,7 +1784,7 @@ void MarlinUI::init() { #endif // HAS_PRINT_PROGRESS -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #if ENABLED(EXTENSIBLE_UI) #include "extui/ui_api.h" @@ -1837,7 +1837,7 @@ void MarlinUI::init() { #endif } -#endif // SDSUPPORT +#endif // HAS_MEDIA #if HAS_MARLINUI_MENU void MarlinUI::reset_settings() { diff --git a/Marlin/src/lcd/marlinui.h b/Marlin/src/lcd/marlinui.h index de1e30fe4e28..65176507fcd9 100644 --- a/Marlin/src/lcd/marlinui.h +++ b/Marlin/src/lcd/marlinui.h @@ -248,7 +248,7 @@ class MarlinUI { } #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #define MEDIA_MENU_GATEWAY TERN(PASSWORD_ON_SD_PRINT_MENU, password.media_gatekeeper, menu_media) static void media_changed(const uint8_t old_stat, const uint8_t stat); #endif @@ -467,7 +467,7 @@ class MarlinUI { FORCE_INLINE static void refresh_contrast() { set_contrast(contrast); } #endif - #if BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) + #if BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) static millis_t next_filament_display; static void pause_filament_display(const millis_t ms=millis()) { next_filament_display = ms + 5000UL; } #endif @@ -529,7 +529,7 @@ class MarlinUI { static void completion_feedback(const bool=true) {} #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #if BOTH(SCROLL_LONG_FILENAMES, HAS_MARLINUI_MENU) #define MARLINUI_SCROLL_NAME 1 #endif diff --git a/Marlin/src/lcd/menu/menu.h b/Marlin/src/lcd/menu/menu.h index 06d9c846cc97..9d824e2a4cb1 100644 --- a/Marlin/src/lcd/menu/menu.h +++ b/Marlin/src/lcd/menu/menu.h @@ -191,7 +191,7 @@ class MenuEditItemBase : public MenuItemBase { static void draw_edit_screen(const char * const value) { draw_edit_screen(editLabel, value); } }; -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA class CardReader; class MenuItem_sdbase { public: @@ -207,7 +207,7 @@ class MenuEditItemBase : public MenuItemBase { void menu_main(); void menu_move(); -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA void menu_media(); #endif diff --git a/Marlin/src/lcd/menu/menu_main.cpp b/Marlin/src/lcd/menu/menu_main.cpp index 3b1cd737452b..a202f624f7fc 100644 --- a/Marlin/src/lcd/menu/menu_main.cpp +++ b/Marlin/src/lcd/menu/menu_main.cpp @@ -43,10 +43,10 @@ #include "game/game.h" #endif -#if EITHER(SDSUPPORT, HOST_PROMPT_SUPPORT) || defined(ACTION_ON_CANCEL) +#if EITHER(HAS_MEDIA, HOST_PROMPT_SUPPORT) || defined(ACTION_ON_CANCEL) #define MACHINE_CAN_STOP 1 #endif -#if ANY(SDSUPPORT, HOST_PROMPT_SUPPORT, PARK_HEAD_ON_PAUSE) || defined(ACTION_ON_PAUSE) +#if ANY(HAS_MEDIA, HOST_PROMPT_SUPPORT, PARK_HEAD_ON_PAUSE) || defined(ACTION_ON_PAUSE) #define MACHINE_CAN_PAUSE 1 #endif @@ -234,7 +234,7 @@ void menu_configuration(); void menu_main() { const bool busy = printingIsActive() - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA , card_detected = card.isMounted() , card_open = card_detected && card.isFileOpen() #endif @@ -243,7 +243,7 @@ void menu_main() { START_MENU(); BACK_ITEM(MSG_INFO_SCREEN); - #if ENABLED(SDSUPPORT) && !defined(MEDIA_MENU_AT_TOP) && !HAS_ENCODER_WHEEL + #if HAS_MEDIA && !defined(MEDIA_MENU_AT_TOP) && !HAS_ENCODER_WHEEL #define MEDIA_MENU_AT_TOP #endif @@ -273,7 +273,7 @@ void menu_main() { #endif } else { - #if BOTH(SDSUPPORT, MEDIA_MENU_AT_TOP) + #if BOTH(HAS_MEDIA, MEDIA_MENU_AT_TOP) // BEGIN MEDIA MENU #if ENABLED(MENU_ADDAUTOSTART) ACTION_ITEM(MSG_RUN_AUTO_FILES, card.autofile_begin); // Run Auto Files @@ -388,7 +388,7 @@ void menu_main() { GCODES_ITEM(MSG_SWITCH_PS_ON, F("M80")); #endif - #if ENABLED(SDSUPPORT) && DISABLED(MEDIA_MENU_AT_TOP) + #if HAS_MEDIA && DISABLED(MEDIA_MENU_AT_TOP) // BEGIN MEDIA MENU #if ENABLED(MENU_ADDAUTOSTART) ACTION_ITEM(MSG_RUN_AUTO_FILES, card.autofile_begin); // Run Auto Files diff --git a/Marlin/src/lcd/menu/menu_media.cpp b/Marlin/src/lcd/menu/menu_media.cpp index 79cca1d97a45..e32f41a9a6e1 100644 --- a/Marlin/src/lcd/menu/menu_media.cpp +++ b/Marlin/src/lcd/menu/menu_media.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_MENU, SDSUPPORT) +#if BOTH(HAS_MARLINUI_MENU, HAS_MEDIA) #include "menu_item.h" #include "../../sd/cardreader.h" @@ -161,4 +161,4 @@ void menu_media() { TERN(MULTI_VOLUME, menu_media_select, menu_media_filelist)(); } -#endif // HAS_MARLINUI_MENU && SDSUPPORT +#endif // HAS_MARLINUI_MENU && HAS_MEDIA diff --git a/Marlin/src/lcd/tft/ui_1024x600.cpp b/Marlin/src/lcd/tft/ui_1024x600.cpp index 638e32a9b3c4..cf5911cdc1c4 100644 --- a/Marlin/src/lcd/tft/ui_1024x600.cpp +++ b/Marlin/src/lcd/tft/ui_1024x600.cpp @@ -36,7 +36,7 @@ #include "../../module/planner.h" #include "../../module/motion.h" -#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) +#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) #include "../../feature/filwidth.h" #include "../../gcode/parser.h" #endif @@ -326,7 +326,7 @@ void MarlinUI::draw_status_screen() { #if ENABLED(TOUCH_SCREEN) add_control(900, y, menu_main, imgSettings); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA const bool cm = card.isMounted(), pa = printingIsActive(); if (cm && pa) add_control(12, y, STOP, imgCancel, true, COLOR_CONTROL_CANCEL); diff --git a/Marlin/src/lcd/tft/ui_320x240.cpp b/Marlin/src/lcd/tft/ui_320x240.cpp index e606dca7ced4..bac7586a25eb 100644 --- a/Marlin/src/lcd/tft/ui_320x240.cpp +++ b/Marlin/src/lcd/tft/ui_320x240.cpp @@ -36,7 +36,7 @@ #include "../../module/planner.h" #include "../../module/motion.h" -#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) +#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) #include "../../feature/filwidth.h" #include "../../gcode/parser.h" #endif @@ -448,7 +448,7 @@ void MarlinUI::draw_status_screen() { #endif , menu_main, imgSettings ); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA const bool cm = card.isMounted(), pa = printingIsActive(); if (cm && pa) add_control(0, TERN(TFT_COLOR_UI_PORTRAIT, 210, 130), STOP, imgCancel, true, COLOR_CONTROL_CANCEL); diff --git a/Marlin/src/lcd/tft/ui_480x320.cpp b/Marlin/src/lcd/tft/ui_480x320.cpp index edc3d321f2cd..efb58754c79e 100644 --- a/Marlin/src/lcd/tft/ui_480x320.cpp +++ b/Marlin/src/lcd/tft/ui_480x320.cpp @@ -36,7 +36,7 @@ #include "../../module/planner.h" #include "../../module/motion.h" -#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, SDSUPPORT) +#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) #include "../../feature/filwidth.h" #include "../../gcode/parser.h" #endif @@ -320,7 +320,7 @@ void MarlinUI::draw_status_screen() { #if ENABLED(TOUCH_SCREEN) add_control(404, y, menu_main, imgSettings); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA const bool cm = card.isMounted(), pa = printingIsActive(); if (cm && pa) add_control(12, y, STOP, imgCancel, true, COLOR_CONTROL_CANCEL); diff --git a/Marlin/src/lcd/tft/ui_common.cpp b/Marlin/src/lcd/tft/ui_common.cpp index 6dee62820e1f..962daadb19c5 100644 --- a/Marlin/src/lcd/tft/ui_common.cpp +++ b/Marlin/src/lcd/tft/ui_common.cpp @@ -188,7 +188,7 @@ void MenuItem_static::draw(const uint8_t row, FSTR_P const fstr, const uint8_t s tft.add_text(TFT_WIDTH - 1 - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_YELLOW, tft_string); } -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA void MenuItem_sdbase::draw(const bool sel, const uint8_t row, FSTR_P const, CardReader &theCard, const bool isDir) { menu_item(row, sel); diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index 02af062eca68..56444d1aee24 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -38,7 +38,7 @@ #include HAL_PATH(../HAL, endstop_interrupts.h) #endif -#if BOTH(SD_ABORT_ON_ENDSTOP_HIT, SDSUPPORT) +#if BOTH(SD_ABORT_ON_ENDSTOP_HIT, HAS_MEDIA) #include "printcounter.h" // for print_job_timer #endif @@ -352,7 +352,7 @@ void Endstops::event_handler() { ) ); - #if BOTH(SD_ABORT_ON_ENDSTOP_HIT, SDSUPPORT) + #if BOTH(SD_ABORT_ON_ENDSTOP_HIT, HAS_MEDIA) if (planner.abort_on_endstop_hit) { card.abortFilePrintNow(); quickstop_stepper(); diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 5bf809c9550c..3274136f419f 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -1929,7 +1929,7 @@ void Temperature::task() { quickstop_stepper(); } - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA if (emergency_parser.sd_abort_by_M524) { // abort SD print immediately emergency_parser.sd_abort_by_M524 = false; card.flag.abort_sd_printing = true; diff --git a/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h b/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h index 493269cf2c20..cfb682df5424 100644 --- a/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h +++ b/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h @@ -179,7 +179,7 @@ #if SD_CONNECTION_IS(ONBOARD) #define FORCE_SOFT_SPI #endif - #if BOTH(MKS_MINI_12864_V3, SDSUPPORT) + #if BOTH(MKS_MINI_12864_V3, HAS_MEDIA) #define PAUSE_LCD_FOR_BUSY_SD #endif #else diff --git a/Marlin/src/pins/esp32/pins_PANDA_common.h b/Marlin/src/pins/esp32/pins_PANDA_common.h index c66bdf0bd1a2..971525622acb 100644 --- a/Marlin/src/pins/esp32/pins_PANDA_common.h +++ b/Marlin/src/pins/esp32/pins_PANDA_common.h @@ -107,7 +107,7 @@ // // SD Card // -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #define SD_MOSI_PIN EXP2_06_PIN #define SD_MISO_PIN EXP2_01_PIN #define SD_SCK_PIN EXP2_02_PIN diff --git a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h index d7f53568e6dd..b414c0015fd1 100644 --- a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h +++ b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h @@ -136,7 +136,7 @@ #define TEMP_BED_PIN 2 // Analog Input // SPI for MAX Thermocouple -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN 66 // Don't use 53 if using Display/SD card #else #define TEMP_0_CS_PIN 66 // Don't use 49 (SD_DETECT_PIN) diff --git a/Marlin/src/pins/lpc1768/pins_BIQU_B300_V1.0.h b/Marlin/src/pins/lpc1768/pins_BIQU_B300_V1.0.h index 7cbad6a7f959..423c89b8c949 100644 --- a/Marlin/src/pins/lpc1768/pins_BIQU_B300_V1.0.h +++ b/Marlin/src/pins/lpc1768/pins_BIQU_B300_V1.0.h @@ -134,7 +134,7 @@ #error "REPRAP_DISCOUNT_SMART_CONTROLLER displays aren't supported by the BIQU B300 v1.0" #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #error "SDSUPPORT is not supported by the BIQU B300 v1.0 when an LCD controller is used" #endif @@ -146,7 +146,7 @@ * Software SPI is used to interface with a stand-alone SD card reader connected to EXP1. * Hardware SPI can't be used because P0_17 (MISO) is not brought out on this board. */ -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #define SD_SCK_PIN P0_15 // EXP1-5 #define SD_MISO_PIN P0_16 // EXP1-4 #define SD_MOSI_PIN P0_18 // EXP1-3 diff --git a/Marlin/src/pins/lpc1768/pins_BIQU_BQ111_A4.h b/Marlin/src/pins/lpc1768/pins_BIQU_BQ111_A4.h index 914a944027c1..278ba12dd508 100644 --- a/Marlin/src/pins/lpc1768/pins_BIQU_BQ111_A4.h +++ b/Marlin/src/pins/lpc1768/pins_BIQU_BQ111_A4.h @@ -111,7 +111,7 @@ #error "REPRAP_DISCOUNT_SMART_CONTROLLER displays aren't supported by the BIQU BQ111-A4" #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #error "SDSUPPORT is not supported by the BIQU BQ111-A4 when an LCD controller is used" #endif @@ -123,7 +123,7 @@ * Software SPI is used to interface with a stand-alone SD card reader connected to EXP1. * Hardware SPI can't be used because P0_17 (MISO) is not brought out on this board. */ -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #define SD_SCK_PIN P0_15 // EXP1-5 #define SD_MISO_PIN P0_16 // EXP1-4 @@ -131,7 +131,7 @@ #define SD_SS_PIN P1_30 // EXP1-2 #define SDSS SD_SS_PIN -#endif // SDSUPPORT +#endif // HAS_MEDIA /** * PWMS diff --git a/Marlin/src/pins/lpc1769/pins_COHESION3D_MINI.h b/Marlin/src/pins/lpc1769/pins_COHESION3D_MINI.h index 6747a7c2bf1f..70781cb0b588 100644 --- a/Marlin/src/pins/lpc1769/pins_COHESION3D_MINI.h +++ b/Marlin/src/pins/lpc1769/pins_COHESION3D_MINI.h @@ -154,7 +154,7 @@ #define KILL_PIN P2_11 // EXP2-10 - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #error "SDSUPPORT is not currently supported by the Cohesion3D boards" #endif diff --git a/Marlin/src/pins/mega/pins_CHEAPTRONICv2.h b/Marlin/src/pins/mega/pins_CHEAPTRONICv2.h index 4c8dd5c42a67..62215a8224e0 100644 --- a/Marlin/src/pins/mega/pins_CHEAPTRONICv2.h +++ b/Marlin/src/pins/mega/pins_CHEAPTRONICv2.h @@ -128,7 +128,7 @@ // #define BEEPER_PIN 44 -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #define SDSS 53 #define SD_DETECT_PIN 49 #endif diff --git a/Marlin/src/pins/mega/pins_PICA.h b/Marlin/src/pins/mega/pins_PICA.h index d9f4a858da8d..0541e1af58bf 100644 --- a/Marlin/src/pins/mega/pins_PICA.h +++ b/Marlin/src/pins/mega/pins_PICA.h @@ -123,7 +123,7 @@ #define SSR_PIN 6 // SPI for MAX Thermocouple -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN 66 // Don't use 53 if using Display/SD card #else #define TEMP_0_CS_PIN 66 // Don't use 49 (SD_DETECT_PIN) diff --git a/Marlin/src/pins/mega/pins_WEEDO_62A.h b/Marlin/src/pins/mega/pins_WEEDO_62A.h index 7b417c19a113..d13de7ed3077 100644 --- a/Marlin/src/pins/mega/pins_WEEDO_62A.h +++ b/Marlin/src/pins/mega/pins_WEEDO_62A.h @@ -85,7 +85,7 @@ // // SD Support // -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #define SDSS 53 #define SD_DETECT_PIN 49 #endif diff --git a/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR.h b/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR.h index b77c325029df..f6ee06846dfd 100644 --- a/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR.h +++ b/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR.h @@ -116,7 +116,7 @@ #define TEMP_BED_PIN 14 // Analog Input // SPI for MAX Thermocouple -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN 66 // Don't use 53 if using Display/SD card #else #define TEMP_0_CS_PIN 66 // Don't use 49 (SD_DETECT_PIN) diff --git a/Marlin/src/pins/ramps/pins_FORMBOT_TREX2PLUS.h b/Marlin/src/pins/ramps/pins_FORMBOT_TREX2PLUS.h index 2d92306f8909..179bad04a560 100644 --- a/Marlin/src/pins/ramps/pins_FORMBOT_TREX2PLUS.h +++ b/Marlin/src/pins/ramps/pins_FORMBOT_TREX2PLUS.h @@ -113,7 +113,7 @@ #define TEMP_BED_PIN 3 // Analog Input // SPI for MAX Thermocouple -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN 66 // Don't use 53 if using Display/SD card #else #define TEMP_0_CS_PIN 66 // Don't use 49 (SD_DETECT_PIN) diff --git a/Marlin/src/pins/ramps/pins_FORMBOT_TREX3.h b/Marlin/src/pins/ramps/pins_FORMBOT_TREX3.h index d84a8529152f..fd799e0d49d0 100644 --- a/Marlin/src/pins/ramps/pins_FORMBOT_TREX3.h +++ b/Marlin/src/pins/ramps/pins_FORMBOT_TREX3.h @@ -119,7 +119,7 @@ #define TEMP_BED_PIN 14 // Analog Input // SPI for MAX Thermocouple -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN 66 // Don't use 53 if using Display/SD card #else #define TEMP_0_CS_PIN 66 // Don't use 49 (SD_DETECT_PIN) diff --git a/Marlin/src/pins/ramps/pins_RAMPS_OLD.h b/Marlin/src/pins/ramps/pins_RAMPS_OLD.h index 663c6e47921b..19b048ec81a9 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS_OLD.h +++ b/Marlin/src/pins/ramps/pins_RAMPS_OLD.h @@ -76,7 +76,7 @@ #define TEMP_BED_PIN 1 // Analog Input // SPI for MAX Thermocouple -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN 66 // Don't use 53 if using Display/SD card #else #define TEMP_0_CS_PIN 66 // Don't use 49 (SD_DETECT_PIN) diff --git a/Marlin/src/pins/ramps/pins_RIGIDBOARD.h b/Marlin/src/pins/ramps/pins_RIGIDBOARD.h index 8eab6c7d9b4f..afd31eeead66 100644 --- a/Marlin/src/pins/ramps/pins_RIGIDBOARD.h +++ b/Marlin/src/pins/ramps/pins_RIGIDBOARD.h @@ -72,7 +72,7 @@ // SPI for MAX Thermocouple #undef TEMP_0_CS_PIN -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN 53 // Don't use pin 53 if there is even the remote possibility of using Display/SD card #else #define TEMP_0_CS_PIN 49 // Don't use pin 49 as this is tied to the switch inside the SD card socket to detect if there is an SD card present diff --git a/Marlin/src/pins/ramps/pins_RUMBA.h b/Marlin/src/pins/ramps/pins_RUMBA.h index 258b9ccca6e9..ba3c97c87ae2 100644 --- a/Marlin/src/pins/ramps/pins_RUMBA.h +++ b/Marlin/src/pins/ramps/pins_RUMBA.h @@ -241,7 +241,7 @@ // #define BEEPER_PIN 44 -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #define SDSS 53 #define SD_DETECT_PIN 49 #endif diff --git a/Marlin/src/pins/ramps/pins_TENLOG_D3_HERO.h b/Marlin/src/pins/ramps/pins_TENLOG_D3_HERO.h index dd9cafc306c3..f68b9ef8a6f7 100644 --- a/Marlin/src/pins/ramps/pins_TENLOG_D3_HERO.h +++ b/Marlin/src/pins/ramps/pins_TENLOG_D3_HERO.h @@ -125,7 +125,7 @@ #define TEMP_BED_PIN 14 // Analog Input // SPI for MAX Thermocouple -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN -1 // Don't use 53 if using Display/SD card #else #define TEMP_0_CS_PIN -1 // Don't use 49 (SD_DETECT_PIN) diff --git a/Marlin/src/pins/ramps/pins_TT_OSCAR.h b/Marlin/src/pins/ramps/pins_TT_OSCAR.h index 56ebf2c66301..7078b11b6b62 100644 --- a/Marlin/src/pins/ramps/pins_TT_OSCAR.h +++ b/Marlin/src/pins/ramps/pins_TT_OSCAR.h @@ -178,7 +178,7 @@ #endif // SPI for MAX Thermocouple -//#if DISABLED(SDSUPPORT) +//#if !HAS_MEDIA // #define TEMP_0_CS_PIN 66 // Don't use 53 if using Display/SD card //#else // #define TEMP_0_CS_PIN 66 // Don't use 49 (SD_DETECT_PIN) diff --git a/Marlin/src/pins/sam/pins_DUE3DOM.h b/Marlin/src/pins/sam/pins_DUE3DOM.h index c8a168228d63..bd6cb7a6cd79 100644 --- a/Marlin/src/pins/sam/pins_DUE3DOM.h +++ b/Marlin/src/pins/sam/pins_DUE3DOM.h @@ -83,7 +83,7 @@ #define TEMP_BED_PIN 1 // Analog Input (BED thermistor) // SPI for MAX Thermocouple -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN -1 #else #define TEMP_0_CS_PIN -1 diff --git a/Marlin/src/pins/sam/pins_DUE3DOM_MINI.h b/Marlin/src/pins/sam/pins_DUE3DOM_MINI.h index 66d4f713f85c..41d43c0b0485 100644 --- a/Marlin/src/pins/sam/pins_DUE3DOM_MINI.h +++ b/Marlin/src/pins/sam/pins_DUE3DOM_MINI.h @@ -72,7 +72,7 @@ #define TEMP_BOARD_PIN 5 // Analog Input (OnBoard thermistor beta 3950) // SPI for MAX Thermocouple -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN 53 #else #define TEMP_0_CS_PIN 53 diff --git a/Marlin/src/pins/sam/pins_RADDS.h b/Marlin/src/pins/sam/pins_RADDS.h index 7ebb24fde974..93011679595f 100644 --- a/Marlin/src/pins/sam/pins_RADDS.h +++ b/Marlin/src/pins/sam/pins_RADDS.h @@ -180,7 +180,7 @@ #define TEMP_BED_PIN 4 // Analog Input // SPI for MAX Thermocouple -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN 53 #else #define TEMP_0_CS_PIN 49 diff --git a/Marlin/src/pins/sam/pins_RAMPS_DUO.h b/Marlin/src/pins/sam/pins_RAMPS_DUO.h index 04a4b69ae159..92de79bd7f23 100644 --- a/Marlin/src/pins/sam/pins_RAMPS_DUO.h +++ b/Marlin/src/pins/sam/pins_RAMPS_DUO.h @@ -57,7 +57,7 @@ // SPI for MAX Thermocouple #undef TEMP_0_CS_PIN -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN 69 // Don't use 53 if using Display/SD card #else #define TEMP_0_CS_PIN 69 // Don't use 49 (SD_DETECT_PIN) diff --git a/Marlin/src/pins/sam/pins_RAMPS_FD_V1.h b/Marlin/src/pins/sam/pins_RAMPS_FD_V1.h index e1b0d7edc853..c84d84105c3b 100644 --- a/Marlin/src/pins/sam/pins_RAMPS_FD_V1.h +++ b/Marlin/src/pins/sam/pins_RAMPS_FD_V1.h @@ -110,7 +110,7 @@ #define TEMP_BED_PIN 0 // Analog Input // SPI for MAX Thermocouple -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN 53 #else #define TEMP_0_CS_PIN 49 diff --git a/Marlin/src/pins/sam/pins_RAMPS_SMART.h b/Marlin/src/pins/sam/pins_RAMPS_SMART.h index b02ddef16628..2a0733c601f8 100644 --- a/Marlin/src/pins/sam/pins_RAMPS_SMART.h +++ b/Marlin/src/pins/sam/pins_RAMPS_SMART.h @@ -82,7 +82,7 @@ #define TEMP_BED_PIN 11 // Analog Input // SPI for MAX Thermocouple -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN 67 // Don't use 53 if using Display/SD card #else #define TEMP_0_CS_PIN 67 // Don't use 49 (SD_DETECT_PIN) diff --git a/Marlin/src/pins/sam/pins_RURAMPS4D_11.h b/Marlin/src/pins/sam/pins_RURAMPS4D_11.h index 8b078371e9ec..516063d158a9 100644 --- a/Marlin/src/pins/sam/pins_RURAMPS4D_11.h +++ b/Marlin/src/pins/sam/pins_RURAMPS4D_11.h @@ -145,7 +145,7 @@ // SPI for MAX Thermocouple /* -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN EXP1_08_PIN #else #define TEMP_0_CS_PIN 49 diff --git a/Marlin/src/pins/sam/pins_RURAMPS4D_13.h b/Marlin/src/pins/sam/pins_RURAMPS4D_13.h index 8f107ff4e5d1..9e9aeb9fec17 100644 --- a/Marlin/src/pins/sam/pins_RURAMPS4D_13.h +++ b/Marlin/src/pins/sam/pins_RURAMPS4D_13.h @@ -135,7 +135,7 @@ // SPI for MAX Thermocouple /* -#if DISABLED(SDSUPPORT) +#if !HAS_MEDIA #define TEMP_0_CS_PIN 53 #else #define TEMP_0_CS_PIN 49 diff --git a/Marlin/src/pins/sanguino/pins_ZMIB_V2.h b/Marlin/src/pins/sanguino/pins_ZMIB_V2.h index dce01177becc..1e449579cf40 100644 --- a/Marlin/src/pins/sanguino/pins_ZMIB_V2.h +++ b/Marlin/src/pins/sanguino/pins_ZMIB_V2.h @@ -159,7 +159,7 @@ // // SD card // -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #define SDSS 4 #endif #define SD_DETECT_PIN -1 diff --git a/Marlin/src/pins/stm32f4/pins_ANET_ET4.h b/Marlin/src/pins/stm32f4/pins_ANET_ET4.h index 347ef8451dcf..bd8a2d9762cd 100644 --- a/Marlin/src/pins/stm32f4/pins_ANET_ET4.h +++ b/Marlin/src/pins/stm32f4/pins_ANET_ET4.h @@ -201,7 +201,7 @@ #define SDCARD_CONNECTION CUSTOM_CABLE #endif -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #if DISABLED(SDIO_SUPPORT) #define SOFTWARE_SPI diff --git a/Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h b/Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h index 869b1e859d4f..7b0206e2878f 100644 --- a/Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h +++ b/Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h @@ -173,7 +173,7 @@ // #define BEEPER_PIN PC13 - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #define SDSS PA15 #define SD_DETECT_PIN PD2 #endif diff --git a/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h b/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h index 367cace4247a..33dedf7e8e62 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h @@ -238,7 +238,7 @@ #define EXP2_07_PIN PB11 #define EXP2_08_PIN -1 // RESET -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #ifndef SDCARD_CONNECTION #define SDCARD_CONNECTION ONBOARD #endif diff --git a/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h b/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h index b281a8e2a328..c4a7cd886f3c 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h @@ -262,7 +262,7 @@ // SD Support // Onboard SD card use hardware SPI3 (defined in variant), LCD SD card use hardware SPI1 // -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #ifndef SDCARD_CONNECTION #define SDCARD_CONNECTION LCD #endif diff --git a/Marlin/src/pins/stm32f4/pins_VAKE403D.h b/Marlin/src/pins/stm32f4/pins_VAKE403D.h index a17d31f063cf..e4150f3bd27c 100644 --- a/Marlin/src/pins/stm32f4/pins_VAKE403D.h +++ b/Marlin/src/pins/stm32f4/pins_VAKE403D.h @@ -160,7 +160,7 @@ #define KILL_PIN PD5 #define POWER_LOSS_PIN PA4 // ?? Power loss / nAC_FAULT -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #define SD_DETECT_PIN EXP2_07_PIN #define SD_SS_PIN PB15 // USD_CS -> CS for onboard SD #endif @@ -198,7 +198,7 @@ // #if HAS_WIRED_LCD - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #define SDSS PB6 // CS for SD card in LCD #endif diff --git a/Marlin/src/sd/SdBaseFile.cpp b/Marlin/src/sd/SdBaseFile.cpp index 5ee0db2b9e86..cf403d4b3aae 100644 --- a/Marlin/src/sd/SdBaseFile.cpp +++ b/Marlin/src/sd/SdBaseFile.cpp @@ -35,7 +35,7 @@ #include "../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "SdBaseFile.h" @@ -2269,4 +2269,4 @@ int16_t SdBaseFile::write(const void *buf, const uint16_t nbyte) { return -1; } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/sd/SdFatUtil.cpp b/Marlin/src/sd/SdFatUtil.cpp index e6f7a9a01305..a68bd73ebea0 100644 --- a/Marlin/src/sd/SdFatUtil.cpp +++ b/Marlin/src/sd/SdFatUtil.cpp @@ -31,7 +31,7 @@ #include "../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "SdFatUtil.h" #include @@ -59,4 +59,4 @@ #endif -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/sd/SdFile.cpp b/Marlin/src/sd/SdFile.cpp index a1dd79372747..c6a3577e1d0c 100644 --- a/Marlin/src/sd/SdFile.cpp +++ b/Marlin/src/sd/SdFile.cpp @@ -31,7 +31,7 @@ #include "../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "SdFile.h" @@ -95,4 +95,4 @@ void SdFile::writeln_P(PGM_P const str) { write_P(PSTR("\r\n")); } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/sd/SdVolume.cpp b/Marlin/src/sd/SdVolume.cpp index 8c06c745371b..1b8cdbdcae31 100644 --- a/Marlin/src/sd/SdVolume.cpp +++ b/Marlin/src/sd/SdVolume.cpp @@ -31,7 +31,7 @@ #include "../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA #include "SdVolume.h" @@ -402,4 +402,4 @@ bool SdVolume::init(DiskIODriver * const dev, const uint8_t part) { return true; } -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/sd/cardreader.cpp b/Marlin/src/sd/cardreader.cpp index 3a377d694d27..4e864e567273 100644 --- a/Marlin/src/sd/cardreader.cpp +++ b/Marlin/src/sd/cardreader.cpp @@ -22,7 +22,7 @@ #include "../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA //#define DEBUG_CARDREADER @@ -172,7 +172,7 @@ CardReader::CardReader() { workDirDepth = 0; ZERO(workDirParents); - #if BOTH(SDSUPPORT, HAS_SD_DETECT) + #if BOTH(HAS_MEDIA, HAS_SD_DETECT) SET_INPUT_PULLUP(SD_DETECT_PIN); #endif @@ -1368,4 +1368,4 @@ void CardReader::fileHasFinished() { #endif // POWER_LOSS_RECOVERY -#endif // SDSUPPORT +#endif // HAS_MEDIA diff --git a/Marlin/src/sd/cardreader.h b/Marlin/src/sd/cardreader.h index d5eca9c915c1..3b7b7debcf6c 100644 --- a/Marlin/src/sd/cardreader.h +++ b/Marlin/src/sd/cardreader.h @@ -23,7 +23,7 @@ #include "../inc/MarlinConfig.h" -#if ENABLED(SDSUPPORT) +#if HAS_MEDIA extern const char M23_STR[], M24_STR[]; @@ -364,7 +364,7 @@ class CardReader { extern CardReader card; -#else // !SDSUPPORT +#else // !HAS_MEDIA #define IS_SD_PRINTING() false #define IS_SD_FETCHING() false @@ -373,4 +373,4 @@ extern CardReader card; #define LONG_FILENAME_LENGTH 0 -#endif // !SDSUPPORT +#endif // !HAS_MEDIA diff --git a/buildroot/share/PlatformIO/scripts/common-dependencies.h b/buildroot/share/PlatformIO/scripts/common-dependencies.h index 344669c49bdf..9bdcac5db17f 100644 --- a/buildroot/share/PlatformIO/scripts/common-dependencies.h +++ b/buildroot/share/PlatformIO/scripts/common-dependencies.h @@ -68,7 +68,7 @@ #if ENABLED(ADVANCED_PAUSE_FEATURE) #define HAS_MENU_FILAMENT #endif - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #define HAS_MENU_MEDIA #endif #if ENABLED(MIXING_EXTRUDER) diff --git a/ini/features.ini b/ini/features.ini index 3c5eb1adecba..a8ee50b9edef 100644 --- a/ini/features.ini +++ b/ini/features.ini @@ -220,7 +220,7 @@ BABYSTEPPING = src_filter=+ Z_PROBE_SLED = src_filter=+ G38_PROBE_TARGET = src_filter=+ MAGNETIC_PARKING_EXTRUDER = src_filter=+ -SDSUPPORT = src_filter=+ + + + + + + +HAS_MEDIA = src_filter=+ + + + + + + HAS_MEDIA_SUBCALLS = src_filter=+ GCODE_REPEAT_MARKERS = src_filter=+ + HAS_EXTRUDERS = src_filter=+ + + diff --git a/ini/samd51.ini b/ini/samd51.ini index d7d9b3a4211c..70bda9ca52d0 100644 --- a/ini/samd51.ini +++ b/ini/samd51.ini @@ -22,5 +22,5 @@ lib_deps = ${common.lib_deps} SoftwareSerialM extra_scripts = ${common.extra_scripts} pre:buildroot/share/PlatformIO/scripts/SAMD51_grandcentral_m4.py -custom_marlin.SDSUPPORT = SdFat - Adafruit Fork, Adafruit SPIFlash +custom_marlin.HAS_MEDIA = SdFat - Adafruit Fork, Adafruit SPIFlash debug_tool = jlink From 921591d2b899000e3181a098a069392ac0ac4b42 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 22 Apr 2023 23:15:31 -0500 Subject: [PATCH 055/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20SDI?= =?UTF-8?q?O=5FSUPPORT=20=3D>=20ONBOARD=5FSDIO?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/SAMD21/inc/SanityCheck.h | 4 ++-- Marlin/src/HAL/SAMD51/inc/SanityCheck.h | 4 ++-- Marlin/src/HAL/STM32/HAL.cpp | 2 +- Marlin/src/HAL/STM32/sdio.cpp | 4 ++-- Marlin/src/HAL/STM32F1/inc/Conditionals_post.h | 2 +- Marlin/src/inc/Conditionals_post.h | 2 +- Marlin/src/pins/gd32f1/pins_TRIGORILLA_V006.h | 6 +++--- Marlin/src/pins/stm32f1/pins_CHITU3D_common.h | 2 +- Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h | 2 +- Marlin/src/pins/stm32f1/pins_CREALITY_V4.h | 2 +- Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h | 2 +- Marlin/src/pins/stm32f1/pins_CREALITY_V45x.h | 2 +- Marlin/src/pins/stm32f1/pins_CREALITY_V521.h | 2 +- Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h | 2 +- Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h | 2 +- Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h | 2 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h | 4 ++-- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h | 2 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h | 2 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h | 2 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h | 2 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h | 2 +- Marlin/src/pins/stm32f1/pins_SOVOL_V131.h | 2 +- Marlin/src/pins/stm32f1/pins_TRIGORILLA_PRO.h | 2 +- Marlin/src/pins/stm32f4/pins_ANET_ET4.h | 4 ++-- Marlin/src/pins/stm32f4/pins_BLACK_STM32F407VE.h | 4 ++-- Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h | 2 +- Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h | 2 +- Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h | 2 +- Marlin/src/pins/stm32f4/pins_FLYF407ZG.h | 4 ++-- Marlin/src/pins/stm32f4/pins_LERDGE_K.h | 4 ++-- Marlin/src/pins/stm32f4/pins_LERDGE_S.h | 4 ++-- Marlin/src/pins/stm32f4/pins_LERDGE_X.h | 4 ++-- Marlin/src/pins/stm32f4/pins_TRONXY_V10.h | 2 +- Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h | 2 +- 35 files changed, 47 insertions(+), 47 deletions(-) diff --git a/Marlin/src/HAL/SAMD21/inc/SanityCheck.h b/Marlin/src/HAL/SAMD21/inc/SanityCheck.h index 8bf052e3bb15..83fafc968924 100644 --- a/Marlin/src/HAL/SAMD21/inc/SanityCheck.h +++ b/Marlin/src/HAL/SAMD21/inc/SanityCheck.h @@ -41,8 +41,8 @@ #error "EMERGENCY_PARSER is not yet implemented for SAMD21. Disable EMERGENCY_PARSER to continue." #endif -#if ENABLED(SDIO_SUPPORT) - #error "SDIO_SUPPORT is not supported on SAMD21." +#if ENABLED(ONBOARD_SDIO) + #error "ONBOARD_SDIO is not supported on SAMD21." #endif #if ENABLED(FAST_PWM_FAN) diff --git a/Marlin/src/HAL/SAMD51/inc/SanityCheck.h b/Marlin/src/HAL/SAMD51/inc/SanityCheck.h index f9ff090f75ae..4719ac6eb8c2 100644 --- a/Marlin/src/HAL/SAMD51/inc/SanityCheck.h +++ b/Marlin/src/HAL/SAMD51/inc/SanityCheck.h @@ -54,8 +54,8 @@ #error "EMERGENCY_PARSER is not yet implemented for SAMD51. Disable EMERGENCY_PARSER to continue." #endif -#if ENABLED(SDIO_SUPPORT) - #error "SDIO_SUPPORT is not supported on SAMD51." +#if ENABLED(ONBOARD_SDIO) + #error "ONBOARD_SDIO is not supported on SAMD51." #endif #if ENABLED(FAST_PWM_FAN) || SPINDLE_LASER_FREQUENCY diff --git a/Marlin/src/HAL/STM32/HAL.cpp b/Marlin/src/HAL/STM32/HAL.cpp index d8a12aad7eb9..ce49f27a8ed2 100644 --- a/Marlin/src/HAL/STM32/HAL.cpp +++ b/Marlin/src/HAL/STM32/HAL.cpp @@ -70,7 +70,7 @@ void MarlinHAL::init() { constexpr int cpuFreq = F_CPU; UNUSED(cpuFreq); - #if HAS_MEDIA && DISABLED(SDIO_SUPPORT) && (defined(SDSS) && SDSS != -1) + #if HAS_MEDIA && DISABLED(ONBOARD_SDIO) && (defined(SDSS) && SDSS != -1) OUT_WRITE(SDSS, HIGH); // Try to set SDSS inactive before any other SPI users start up #endif diff --git a/Marlin/src/HAL/STM32/sdio.cpp b/Marlin/src/HAL/STM32/sdio.cpp index 72518ef1cc87..de388b8e146a 100644 --- a/Marlin/src/HAL/STM32/sdio.cpp +++ b/Marlin/src/HAL/STM32/sdio.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfig.h" -#if ENABLED(SDIO_SUPPORT) +#if ENABLED(ONBOARD_SDIO) #include "sdio.h" @@ -453,5 +453,5 @@ uint32_t SDIO_GetCardSize() { return (uint32_t)(hsd.SdCard.BlockNbr) * (hsd.SdCard.BlockSize); } -#endif // SDIO_SUPPORT +#endif // ONBOARD_SDIO #endif // HAL_STM32 diff --git a/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h b/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h index 228e869688f3..5a4bde16a5e6 100644 --- a/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h +++ b/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h @@ -30,5 +30,5 @@ // Allow for no media drives #if !HAS_MEDIA - #undef SDIO_SUPPORT + #undef ONBOARD_SDIO #endif diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index bf4810cd8a3b..de983dd608c6 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -545,7 +545,7 @@ #endif #if DISABLED(USB_FLASH_DRIVE_SUPPORT) || BOTH(MULTI_VOLUME, VOLUME_SD_ONBOARD) - #if ENABLED(SDIO_SUPPORT) + #if ENABLED(ONBOARD_SDIO) #define NEED_SD2CARD_SDIO 1 #else #define NEED_SD2CARD_SPI 1 diff --git a/Marlin/src/pins/gd32f1/pins_TRIGORILLA_V006.h b/Marlin/src/pins/gd32f1/pins_TRIGORILLA_V006.h index f09f63322080..ee4376c50a9a 100644 --- a/Marlin/src/pins/gd32f1/pins_TRIGORILLA_V006.h +++ b/Marlin/src/pins/gd32f1/pins_TRIGORILLA_V006.h @@ -115,10 +115,10 @@ // #define SD_DETECT_PIN PC7 -#ifndef SDIO_SUPPORT - #define SDIO_SUPPORT +#ifndef ONBOARD_SDIO + #define ONBOARD_SDIO #endif -#if ENABLED(SDIO_SUPPORT) +#if ENABLED(ONBOARD_SDIO) // // SPI // diff --git a/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h b/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h index c85c107bd9b1..22f78350cf65 100644 --- a/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h +++ b/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h @@ -169,7 +169,7 @@ // // SD Card // -#define SDIO_SUPPORT +#define ONBOARD_SDIO #define SD_DETECT_PIN -1 // PF0, but it isn't connected #define SDIO_CLOCK 4500000 #define SDIO_READ_RETRIES 16 diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h index 9e422e62b0a3..f78bad624d28 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h @@ -127,7 +127,7 @@ #define SDCARD_CONNECTION ONBOARD #define ON_BOARD_SPI_DEVICE 1 #define ONBOARD_SD_CS_PIN PC12 // SDSS -#define SDIO_SUPPORT +#define ONBOARD_SDIO #define NO_SD_HOST_DRIVE // This board's SD is only seen by the printer // diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h index c028deaa99d2..fd96799372c7 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h @@ -159,7 +159,7 @@ // #define SD_DETECT_PIN PC7 #define SDCARD_CONNECTION ONBOARD -#define SDIO_SUPPORT +#define ONBOARD_SDIO #define NO_SD_HOST_DRIVE // This board's SD is only seen by the printer #if ANY(RET6_12864_LCD, HAS_DWIN_E3V2, IS_DWIN_MARLINUI) diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h index 12a5e5ea5106..7a7ec355084f 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h @@ -140,7 +140,7 @@ #define SDCARD_CONNECTION ONBOARD #define ONBOARD_SPI_DEVICE 1 #define ONBOARD_SD_CS_PIN PA4 // SDSS -#define SDIO_SUPPORT +#define ONBOARD_SDIO #define NO_SD_HOST_DRIVE // This board's SD is only seen by the printer #if ANY(RET6_12864_LCD, HAS_DWIN_E3V2, IS_DWIN_MARLINUI) diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V45x.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V45x.h index a9ff02d1f4e2..d592b4808a38 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V45x.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V45x.h @@ -105,7 +105,7 @@ #define SD_DETECT_PIN PC7 #define NO_SD_HOST_DRIVE // SD is only seen by the printer -#define SDIO_SUPPORT // Extra added by Creality +#define ONBOARD_SDIO // Extra added by Creality #define SDIO_CLOCK 6000000 // In original source code overridden by Creality in sdio.h // diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V521.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V521.h index c3b66b034a2a..e54469afffe0 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V521.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V521.h @@ -144,7 +144,7 @@ #define SDCARD_CONNECTION ONBOARD #define ONBOARD_SPI_DEVICE 1 #define ONBOARD_SD_CS_PIN PC11 // SDSS -#define SDIO_SUPPORT +#define ONBOARD_SDIO #define NO_SD_HOST_DRIVE // This board's SD is only seen by the printer #if ANY(RET6_12864_LCD, HAS_DWIN_E3V2, IS_DWIN_MARLINUI) diff --git a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h index 4978f84abeaf..a02b270337b9 100644 --- a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h +++ b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h @@ -256,7 +256,7 @@ #define SD_SS_PIN -1 #define SD_DETECT_PIN PD12 // SD_CD (if -1 no detection) #else - #define SDIO_SUPPORT + #define ONBOARD_SDIO #define SDIO_CLOCK 4500000 // 4.5 MHz #define SDIO_READ_RETRIES 16 #define ONBOARD_SPI_DEVICE 1 // SPI1 diff --git a/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h b/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h index b1498d13b9be..168317d8b57b 100644 --- a/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h +++ b/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h @@ -158,7 +158,7 @@ #define LCD_BRIGHTNESS_DEFAULT TFT_BACKLIGHT_PWM #endif -#if ENABLED(SDIO_SUPPORT) +#if ENABLED(ONBOARD_SDIO) #define SD_SS_PIN -1 // else SDSS set to PA4 in M43 (spi_pins.h) #endif diff --git a/Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h b/Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h index cc26942002cc..a7fc323ba0da 100644 --- a/Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h @@ -120,7 +120,7 @@ #define SDCARD_CONNECTION ONBOARD #endif -#define SDIO_SUPPORT +#define ONBOARD_SDIO #define SDIO_CLOCK 4500000 // 4.5 MHz #define SDIO_READ_RETRIES 16 diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h index 5f290d153d3f..e53ffa008bc7 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h @@ -197,10 +197,10 @@ // SPI1(PA7) & SPI3(PB5) not available #define SPI_DEVICE 2 -#define SDIO_SUPPORT +#define ONBOARD_SDIO #define SDIO_CLOCK 4500000 #define SDIO_READ_RETRIES 16 -#if ENABLED(SDIO_SUPPORT) +#if ENABLED(ONBOARD_SDIO) #define SD_SCK_PIN PB13 // SPI2 #define SD_MISO_PIN PB14 // SPI2 #define SD_MOSI_PIN PB15 // SPI2 diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h index 052bed202b03..3ec2c2cfd948 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h @@ -239,7 +239,7 @@ #endif #if SD_CONNECTION_IS(ONBOARD) - #define SDIO_SUPPORT + #define ONBOARD_SDIO #define SDIO_CLOCK 4500000 // 4.5 MHz #define SD_DETECT_PIN PD12 #define ONBOARD_SD_CS_PIN PC11 diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h index 46c2fa806534..3a50465a9abf 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h @@ -133,7 +133,7 @@ #define SDCARD_CONNECTION ONBOARD #endif -#define SDIO_SUPPORT +#define ONBOARD_SDIO #define SDIO_CLOCK 4500000 // 4.5 MHz #define SD_DETECT_PIN PD12 #define ONBOARD_SPI_DEVICE 1 // SPI1 diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h index d37d4a10de47..6f641f20dd12 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h @@ -239,7 +239,7 @@ #endif #if SD_CONNECTION_IS(ONBOARD) - #define SDIO_SUPPORT + #define ONBOARD_SDIO #define SDIO_CLOCK 4500000 // 4.5 MHz #define SD_DETECT_PIN PD12 #define ONBOARD_SD_CS_PIN PC11 diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h index 28dd19938b94..a329b8a4bbdd 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h @@ -163,7 +163,7 @@ #define SDCARD_CONNECTION ONBOARD #endif -#define SDIO_SUPPORT +#define ONBOARD_SDIO #define SDIO_CLOCK 4500000 // 4.5 MHz #define SD_DETECT_PIN PD12 #define ONBOARD_SD_CS_PIN PC11 diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h index 2a212f1b4ad9..922caa556ea1 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h @@ -210,7 +210,7 @@ #define SD_MOSI_PIN PB15 #define SD_SS_PIN PG6 #elif SD_CONNECTION_IS(ONBOARD) - #define SDIO_SUPPORT + #define ONBOARD_SDIO #define SD_DETECT_PIN PD12 #define ONBOARD_SD_CS_PIN PC11 #elif SD_CONNECTION_IS(CUSTOM_CABLE) diff --git a/Marlin/src/pins/stm32f1/pins_SOVOL_V131.h b/Marlin/src/pins/stm32f1/pins_SOVOL_V131.h index 97ba7f7fec83..ee50f327385c 100644 --- a/Marlin/src/pins/stm32f1/pins_SOVOL_V131.h +++ b/Marlin/src/pins/stm32f1/pins_SOVOL_V131.h @@ -187,7 +187,7 @@ #define SDCARD_CONNECTION ONBOARD #define ONBOARD_SPI_DEVICE 1 #define ONBOARD_SD_CS_PIN PA4 // SDSS -#define SDIO_SUPPORT +#define ONBOARD_SDIO #define NO_SD_HOST_DRIVE // This board's SD is only seen by the printer #if ANY(RET6_12864_LCD, HAS_DWIN_E3V2, IS_DWIN_MARLINUI) diff --git a/Marlin/src/pins/stm32f1/pins_TRIGORILLA_PRO.h b/Marlin/src/pins/stm32f1/pins_TRIGORILLA_PRO.h index d2f3645d94ef..ff2bf5fd8e86 100644 --- a/Marlin/src/pins/stm32f1/pins_TRIGORILLA_PRO.h +++ b/Marlin/src/pins/stm32f1/pins_TRIGORILLA_PRO.h @@ -186,7 +186,7 @@ // SPI1(PA7) & SPI3(PB5) not available #define SPI_DEVICE 2 -#if ENABLED(SDIO_SUPPORT) +#if ENABLED(ONBOARD_SDIO) #define SD_SCK_PIN PB13 // SPI2 ok #define SD_MISO_PIN PB14 // SPI2 ok #define SD_MOSI_PIN PB15 // SPI2 ok diff --git a/Marlin/src/pins/stm32f4/pins_ANET_ET4.h b/Marlin/src/pins/stm32f4/pins_ANET_ET4.h index bd8a2d9762cd..edfee05166c3 100644 --- a/Marlin/src/pins/stm32f4/pins_ANET_ET4.h +++ b/Marlin/src/pins/stm32f4/pins_ANET_ET4.h @@ -195,7 +195,7 @@ // // SD Card // -//#define SDIO_SUPPORT +//#define ONBOARD_SDIO #ifndef SDCARD_CONNECTION #define SDCARD_CONNECTION CUSTOM_CABLE @@ -203,7 +203,7 @@ #if HAS_MEDIA - #if DISABLED(SDIO_SUPPORT) + #if DISABLED(ONBOARD_SDIO) #define SOFTWARE_SPI #define SDSS PC11 #define SD_SS_PIN SDSS diff --git a/Marlin/src/pins/stm32f4/pins_BLACK_STM32F407VE.h b/Marlin/src/pins/stm32f4/pins_BLACK_STM32F407VE.h index a4af3f8fe389..025a1fc9f1a8 100644 --- a/Marlin/src/pins/stm32f4/pins_BLACK_STM32F407VE.h +++ b/Marlin/src/pins/stm32f4/pins_BLACK_STM32F407VE.h @@ -145,8 +145,8 @@ #endif #if SD_CONNECTION_IS(ONBOARD) - #define SDIO_SUPPORT // Use SDIO for onboard SD - #if DISABLED(SDIO_SUPPORT) + #define ONBOARD_SDIO // Use SDIO for onboard SD + #if DISABLED(ONBOARD_SDIO) #define SOFTWARE_SPI // Use soft SPI for onboard SD #define SDSS PC11 #define SD_SCK_PIN PC12 diff --git a/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h b/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h index 0130d602409d..7e3f07078611 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h @@ -383,7 +383,7 @@ #endif #if SD_CONNECTION_IS(ONBOARD) - #define SDIO_SUPPORT // Use SDIO for onboard SD + #define ONBOARD_SDIO // Use SDIO for onboard SD //#define SDIO_CLOCK 48000000 #define SD_DETECT_PIN PC4 #elif SD_CONNECTION_IS(CUSTOM_CABLE) diff --git a/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h b/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h index 711050b74756..d69d8fbef0c9 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h @@ -351,7 +351,7 @@ // Must use soft SPI because Marlin's default hardware SPI is tied to LCD's EXP2 // #if SD_CONNECTION_IS(ONBOARD) - #define SDIO_SUPPORT // Use SDIO for onboard SD + #define ONBOARD_SDIO // Use SDIO for onboard SD #ifndef SD_DETECT_STATE #define SD_DETECT_STATE HIGH #elif SD_DETECT_STATE == LOW diff --git a/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h index 73c2cf9ff807..183927a5a62a 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h @@ -372,7 +372,7 @@ #define SD_MOSI_PIN EXP2_06_PIN #define SD_DETECT_PIN EXP2_07_PIN #elif SD_CONNECTION_IS(ONBOARD) - #define SDIO_SUPPORT // Use SDIO for onboard SD + #define ONBOARD_SDIO // Use SDIO for onboard SD #elif SD_CONNECTION_IS(CUSTOM_CABLE) #error "No custom SD drive cable defined for this board." #endif diff --git a/Marlin/src/pins/stm32f4/pins_FLYF407ZG.h b/Marlin/src/pins/stm32f4/pins_FLYF407ZG.h index b9996aa1f2d2..725d326ec2fe 100644 --- a/Marlin/src/pins/stm32f4/pins_FLYF407ZG.h +++ b/Marlin/src/pins/stm32f4/pins_FLYF407ZG.h @@ -214,9 +214,9 @@ #if SD_CONNECTION_IS(ONBOARD) - #define SDIO_SUPPORT // Use SDIO for onboard SD + #define ONBOARD_SDIO // Use SDIO for onboard SD - #if DISABLED(SDIO_SUPPORT) + #if DISABLED(ONBOARD_SDIO) #define SOFTWARE_SPI // Use soft SPI for onboard SD #define SDSS PC11 #define SD_SCK_PIN PC12 diff --git a/Marlin/src/pins/stm32f4/pins_LERDGE_K.h b/Marlin/src/pins/stm32f4/pins_LERDGE_K.h index 547161367906..04264ea2e7c8 100644 --- a/Marlin/src/pins/stm32f4/pins_LERDGE_K.h +++ b/Marlin/src/pins/stm32f4/pins_LERDGE_K.h @@ -217,10 +217,10 @@ // // SD support // -#define SDIO_SUPPORT +#define ONBOARD_SDIO #define SDIO_CLOCK 4800000 #define SD_DETECT_PIN PA8 -#if DISABLED(SDIO_SUPPORT) +#if DISABLED(ONBOARD_SDIO) #define SOFTWARE_SPI #define SD_SCK_PIN PC12 #define SD_MISO_PIN PC8 diff --git a/Marlin/src/pins/stm32f4/pins_LERDGE_S.h b/Marlin/src/pins/stm32f4/pins_LERDGE_S.h index 180235019ad2..c7c9e3db3b13 100644 --- a/Marlin/src/pins/stm32f4/pins_LERDGE_S.h +++ b/Marlin/src/pins/stm32f4/pins_LERDGE_S.h @@ -160,10 +160,10 @@ // // SD support // -#define SDIO_SUPPORT +#define ONBOARD_SDIO #define SDIO_CLOCK 4800000 #define SD_DETECT_PIN PG15 -#if DISABLED(SDIO_SUPPORT) +#if DISABLED(ONBOARD_SDIO) #define SOFTWARE_SPI #define SD_SCK_PIN PC12 #define SD_MISO_PIN PC8 diff --git a/Marlin/src/pins/stm32f4/pins_LERDGE_X.h b/Marlin/src/pins/stm32f4/pins_LERDGE_X.h index 20985f263cd0..22e7f6e2e2b4 100644 --- a/Marlin/src/pins/stm32f4/pins_LERDGE_X.h +++ b/Marlin/src/pins/stm32f4/pins_LERDGE_X.h @@ -118,10 +118,10 @@ // // SD support (On board) // -#define SDIO_SUPPORT +#define ONBOARD_SDIO #define SD_DETECT_PIN PA8 #define SDIO_CLOCK 4800000 -#if DISABLED(SDIO_SUPPORT) +#if DISABLED(ONBOARD_SDIO) #define SOFTWARE_SPI #define SD_SCK_PIN PC12 #define SD_MISO_PIN PC8 diff --git a/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h b/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h index 8d2584fe10b9..1677b45697bc 100644 --- a/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h +++ b/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h @@ -251,7 +251,7 @@ // // SD Card // -#define SDIO_SUPPORT +#define ONBOARD_SDIO #define SD_DETECT_PIN -1 // PF0, but not connected #define SDIO_CLOCK 4500000 #define SDIO_READ_RETRIES 16 diff --git a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h index be56d0d2b7ab..09b305f700dd 100644 --- a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h +++ b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h @@ -360,7 +360,7 @@ #define SD_MOSI_PIN EXP2_06_PIN #define SD_DETECT_PIN EXP2_07_PIN #elif SD_CONNECTION_IS(ONBOARD) - #define SDIO_SUPPORT + #define ONBOARD_SDIO #define SDIO_CLOCK 24000000 // 24MHz #elif SD_CONNECTION_IS(CUSTOM_CABLE) #error "No custom SD drive cable defined for this board." From f0f7ec88823318c7d778e42b4dc7604120943032 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 23 Apr 2023 00:47:44 -0500 Subject: [PATCH 056/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Ste?= =?UTF-8?q?pper::set=5Fdirections()=20=3D>=20apply=5Fdirections()?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/bedlevel/bdl/bdl.cpp | 4 ++-- Marlin/src/module/motion.cpp | 6 +++--- Marlin/src/module/stepper.cpp | 2 +- Marlin/src/module/stepper.h | 4 ++-- Marlin/src/module/stepper/trinamic.cpp | 2 +- Marlin/src/module/tool_change.cpp | 2 +- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Marlin/src/feature/bedlevel/bdl/bdl.cpp b/Marlin/src/feature/bedlevel/bdl/bdl.cpp index e729022f213c..5ce5e894ca44 100644 --- a/Marlin/src/feature/bedlevel/bdl/bdl.cpp +++ b/Marlin/src/feature/bedlevel/bdl/bdl.cpp @@ -110,7 +110,7 @@ void BDS_Leveling::process() { } else { babystep.set_mm(Z_AXIS, 0); //if (old_cur_z <= cur_z) Z_DIR_WRITE(INVERT_DIR(Z, HIGH)); - stepper.set_directions(); + stepper.apply_directions(); } #endif old_cur_z = cur_z; @@ -119,7 +119,7 @@ void BDS_Leveling::process() { //endstops.update(); } else - stepper.set_directions(); + stepper.apply_directions(); #if ENABLED(DEBUG_OUT_BD) SERIAL_ECHOLNPGM("BD:", tmp & 0x3FF, ", Z:", cur_z, "|", current_position.z); diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index 589299f2f1a0..f7671e31355a 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -1419,13 +1419,13 @@ float get_move_distance(const xyze_pos_t &diff OPTARG(HAS_ROTATIONAL_AXES, bool void idex_set_mirrored_mode(const bool mirr) { idex_mirrored_mode = mirr; - stepper.set_directions(); + stepper.apply_directions(); } void set_duplication_enabled(const bool dupe, const int8_t tool_index/*=-1*/) { extruder_duplication_enabled = dupe; if (tool_index >= 0) active_extruder = tool_index; - stepper.set_directions(); + stepper.apply_directions(); } void idex_set_parked(const bool park/*=true*/) { @@ -1471,7 +1471,7 @@ float get_move_distance(const xyze_pos_t &diff OPTARG(HAS_ROTATIONAL_AXES, bool line_to_current_position(fr_zfast); } } - stepper.set_directions(); + stepper.apply_directions(); idex_set_parked(false); if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("idex_set_parked(false)"); diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 045df059811e..f26e10a4bd64 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -608,7 +608,7 @@ void Stepper::disable_all_steppers() { * COREXZ: X_AXIS=A_AXIS and Z_AXIS=C_AXIS * COREYZ: Y_AXIS=B_AXIS and Z_AXIS=C_AXIS */ -void Stepper::set_directions() { +void Stepper::apply_directions() { DIR_WAIT_BEFORE(); diff --git a/Marlin/src/module/stepper.h b/Marlin/src/module/stepper.h index 4c54a5dbf955..63285398cd92 100644 --- a/Marlin/src/module/stepper.h +++ b/Marlin/src/module/stepper.h @@ -814,12 +814,12 @@ class Stepper { static void disable_all_steppers(); // Update direction states for all steppers - static void set_directions(); + static void apply_directions(); // Set direction bits and update all stepper DIR states static void set_directions(const axis_bits_t bits) { last_direction_bits = bits; - set_directions(); + apply_directions(); } #if ENABLED(FT_MOTION) diff --git a/Marlin/src/module/stepper/trinamic.cpp b/Marlin/src/module/stepper/trinamic.cpp index 02ae9cb1e4c4..893ce3f8db18 100644 --- a/Marlin/src/module/stepper/trinamic.cpp +++ b/Marlin/src/module/stepper/trinamic.cpp @@ -1010,7 +1010,7 @@ void reset_trinamic_drivers() { TMC_ADV() #endif - stepper.set_directions(); + stepper.apply_directions(); } // TMC Slave Address Conflict Detection diff --git a/Marlin/src/module/tool_change.cpp b/Marlin/src/module/tool_change.cpp index a91f6f742d25..cce3669355e1 100644 --- a/Marlin/src/module/tool_change.cpp +++ b/Marlin/src/module/tool_change.cpp @@ -880,7 +880,7 @@ void fast_line_to_current(const AxisEnum fr_axis) { _line_to_current(fr_axis, 0. } // Ensure X axis DIR pertains to the correct carriage - stepper.set_directions(); + stepper.apply_directions(); DEBUG_ECHOLNPGM("Active extruder parked: ", active_extruder_parked ? "yes" : "no"); DEBUG_POS("New extruder (parked)", current_position); From 69f8da468247986225b33e9a373856650746b5d7 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 23 Apr 2023 01:58:01 -0500 Subject: [PATCH 057/427] =?UTF-8?q?=F0=9F=94=A7=20Split=20Changes.h=20from?= =?UTF-8?q?=20SanityCheck.h=20(#25732)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/Changes.h | 665 ++++++++++++++++++++ Marlin/src/inc/Conditionals_post.h | 224 +------ Marlin/src/inc/MarlinConfig.h | 1 + Marlin/src/inc/SanityCheck.h | 699 ++-------------------- Marlin/src/pins/esp32/pins_PANDA_common.h | 8 +- 5 files changed, 729 insertions(+), 868 deletions(-) create mode 100644 Marlin/src/inc/Changes.h diff --git a/Marlin/src/inc/Changes.h b/Marlin/src/inc/Changes.h new file mode 100644 index 000000000000..4b7627adb48e --- /dev/null +++ b/Marlin/src/inc/Changes.h @@ -0,0 +1,665 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +/** + * Changes.h + * + * Alert about Configuration changes at compile-time. + */ + +/** + * Warnings for old configurations + */ +#if WATCH_TEMP_PERIOD > 500 + #error "WATCH_TEMP_PERIOD now uses seconds instead of milliseconds." +#elif DISABLED(THERMAL_PROTECTION_HOTENDS) && (defined(WATCH_TEMP_PERIOD) || defined(THERMAL_PROTECTION_PERIOD)) + #error "Thermal Runaway Protection for hotends is now enabled with THERMAL_PROTECTION_HOTENDS." +#elif DISABLED(THERMAL_PROTECTION_BED) && defined(THERMAL_PROTECTION_BED_PERIOD) + #error "Thermal Runaway Protection for the bed is now enabled with THERMAL_PROTECTION_BED." +#elif defined(NO_FAN_SLOWING_IN_PID_TUNING) + #error "NO_FAN_SLOWING_IN_PID_TUNING is now TEMP_TUNING_MAINTAIN_FAN." +#elif (CORE_IS_XZ || CORE_IS_YZ) && ENABLED(Z_LATE_ENABLE) + #error "Z_LATE_ENABLE can't be used with COREXZ, COREZX, COREYZ, or COREZY." +#elif defined(X_HOME_RETRACT_MM) + #error "[XYZ]_HOME_RETRACT_MM settings have been renamed [XYZ]_HOME_BUMP_MM." +#elif defined(SDCARDDETECTINVERTED) + #error "SDCARDDETECTINVERTED is now SD_DETECT_STATE (HIGH)." +#elif defined(SD_DETECT_INVERTED) + #error "SD_DETECT_INVERTED is now SD_DETECT_STATE (HIGH)." +#elif defined(BTENABLED) + #error "BTENABLED is now BLUETOOTH." +#elif defined(CUSTOM_MENDEL_NAME) + #error "CUSTOM_MENDEL_NAME is now CUSTOM_MACHINE_NAME." +#elif defined(HAS_AUTOMATIC_VERSIONING) + #error "HAS_AUTOMATIC_VERSIONING is now CUSTOM_VERSION_FILE." +#elif defined(USE_AUTOMATIC_VERSIONING) + #error "USE_AUTOMATIC_VERSIONING is now CUSTOM_VERSION_FILE." +#elif defined(SDSLOW) + #error "SDSLOW deprecated. Set SD_SPI_SPEED to SPI_HALF_SPEED instead." +#elif defined(SDEXTRASLOW) + #error "SDEXTRASLOW deprecated. Set SD_SPI_SPEED to SPI_QUARTER_SPEED instead." +#elif defined(FILAMENT_SENSOR) + #error "FILAMENT_SENSOR is now FILAMENT_WIDTH_SENSOR." +#elif defined(ENDSTOPPULLUP_FIL_RUNOUT) + #error "ENDSTOPPULLUP_FIL_RUNOUT is now FIL_RUNOUT_PULLUP." +#elif defined(DISABLE_MAX_ENDSTOPS) || defined(DISABLE_MIN_ENDSTOPS) + #error "DISABLE_MAX_ENDSTOPS and DISABLE_MIN_ENDSTOPS deprecated. Use individual USE_*_PLUG options instead." +#elif defined(LANGUAGE_INCLUDE) + #error "LANGUAGE_INCLUDE has been replaced by LCD_LANGUAGE." +#elif defined(EXTRUDER_OFFSET_X) || defined(EXTRUDER_OFFSET_Y) + #error "EXTRUDER_OFFSET_[XY] is deprecated. Use HOTEND_OFFSET_[XY] instead." +#elif defined(PID_PARAMS_PER_EXTRUDER) + #error "PID_PARAMS_PER_EXTRUDER is deprecated. Use PID_PARAMS_PER_HOTEND instead." +#elif defined(EXTRUDER_WATTS) || defined(BED_WATTS) + #error "EXTRUDER_WATTS and BED_WATTS are deprecated and should be removed." +#elif defined(SERVO_ENDSTOP_ANGLES) + #error "SERVO_ENDSTOP_ANGLES is deprecated. Use Z_SERVO_ANGLES instead." +#elif defined(X_ENDSTOP_SERVO_NR) || defined(Y_ENDSTOP_SERVO_NR) + #error "X_ENDSTOP_SERVO_NR and Y_ENDSTOP_SERVO_NR are deprecated and should be removed." +#elif defined(Z_ENDSTOP_SERVO_NR) + #error "Z_ENDSTOP_SERVO_NR is now Z_PROBE_SERVO_NR." +#elif defined(DEFAULT_XYJERK) + #error "DEFAULT_XYJERK is deprecated. Use DEFAULT_XJERK and DEFAULT_YJERK instead." +#elif defined(XY_TRAVEL_SPEED) + #error "XY_TRAVEL_SPEED is now XY_PROBE_FEEDRATE." +#elif defined(XY_PROBE_SPEED) + #error "XY_PROBE_SPEED is now XY_PROBE_FEEDRATE." +#elif defined(Z_PROBE_SPEED_FAST) + #error "Z_PROBE_SPEED_FAST is now Z_PROBE_FEEDRATE_FAST." +#elif defined(Z_PROBE_SPEED_SLOW) + #error "Z_PROBE_SPEED_SLOW is now Z_PROBE_FEEDRATE_SLOW." +#elif defined(PROBE_SERVO_DEACTIVATION_DELAY) + #error "PROBE_SERVO_DEACTIVATION_DELAY is deprecated. Use DEACTIVATE_SERVOS_AFTER_MOVE instead." +#elif defined(SERVO_DEACTIVATION_DELAY) + #error "SERVO_DEACTIVATION_DELAY is now SERVO_DELAY." +#elif ENABLED(FILAMENTCHANGEENABLE) + #error "FILAMENTCHANGEENABLE is now ADVANCED_PAUSE_FEATURE." +#elif ENABLED(FILAMENT_CHANGE_FEATURE) + #error "FILAMENT_CHANGE_FEATURE is now ADVANCED_PAUSE_FEATURE." +#elif defined(FILAMENT_CHANGE_X_POS) || defined(FILAMENT_CHANGE_Y_POS) + #error "FILAMENT_CHANGE_[XY]_POS is now set with NOZZLE_PARK_POINT." +#elif defined(FILAMENT_CHANGE_Z_ADD) + #error "FILAMENT_CHANGE_Z_ADD is now set with NOZZLE_PARK_POINT." +#elif defined(FILAMENT_CHANGE_XY_FEEDRATE) + #error "FILAMENT_CHANGE_XY_FEEDRATE is now NOZZLE_PARK_XY_FEEDRATE." +#elif defined(FILAMENT_CHANGE_Z_FEEDRATE) + #error "FILAMENT_CHANGE_Z_FEEDRATE is now NOZZLE_PARK_Z_FEEDRATE." +#elif defined(PAUSE_PARK_X_POS) || defined(PAUSE_PARK_Y_POS) + #error "PAUSE_PARK_[XY]_POS is now set with NOZZLE_PARK_POINT." +#elif defined(PAUSE_PARK_Z_ADD) + #error "PAUSE_PARK_Z_ADD is now set with NOZZLE_PARK_POINT." +#elif defined(PAUSE_PARK_XY_FEEDRATE) + #error "PAUSE_PARK_XY_FEEDRATE is now NOZZLE_PARK_XY_FEEDRATE." +#elif defined(PAUSE_PARK_Z_FEEDRATE) + #error "PAUSE_PARK_Z_FEEDRATE is now NOZZLE_PARK_Z_FEEDRATE." +#elif defined(FILAMENT_CHANGE_RETRACT_FEEDRATE) + #error "FILAMENT_CHANGE_RETRACT_FEEDRATE is now PAUSE_PARK_RETRACT_FEEDRATE." +#elif defined(FILAMENT_CHANGE_RETRACT_LENGTH) + #error "FILAMENT_CHANGE_RETRACT_LENGTH is now PAUSE_PARK_RETRACT_LENGTH." +#elif defined(FILAMENT_CHANGE_EXTRUDE_FEEDRATE) + #error "FILAMENT_CHANGE_EXTRUDE_FEEDRATE is now ADVANCED_PAUSE_PURGE_FEEDRATE." +#elif defined(ADVANCED_PAUSE_EXTRUDE_FEEDRATE) + #error "ADVANCED_PAUSE_EXTRUDE_FEEDRATE is now ADVANCED_PAUSE_PURGE_FEEDRATE." +#elif defined(FILAMENT_CHANGE_EXTRUDE_LENGTH) + #error "FILAMENT_CHANGE_EXTRUDE_LENGTH is now ADVANCED_PAUSE_PURGE_LENGTH." +#elif defined(ADVANCED_PAUSE_EXTRUDE_LENGTH) + #error "ADVANCED_PAUSE_EXTRUDE_LENGTH is now ADVANCED_PAUSE_PURGE_LENGTH." +#elif defined(FILAMENT_CHANGE_NOZZLE_TIMEOUT) + #error "FILAMENT_CHANGE_NOZZLE_TIMEOUT is now PAUSE_PARK_NOZZLE_TIMEOUT." +#elif defined(FILAMENT_CHANGE_NUMBER_OF_ALERT_BEEPS) + #error "FILAMENT_CHANGE_NUMBER_OF_ALERT_BEEPS is now FILAMENT_CHANGE_ALERT_BEEPS." +#elif defined(FILAMENT_CHANGE_NO_STEPPER_TIMEOUT) + #error "FILAMENT_CHANGE_NO_STEPPER_TIMEOUT is now PAUSE_PARK_NO_STEPPER_TIMEOUT." +#elif defined(PLA_PREHEAT_HOTEND_TEMP) + #error "PLA_PREHEAT_HOTEND_TEMP is now PREHEAT_1_TEMP_HOTEND." +#elif defined(PLA_PREHEAT_HPB_TEMP) + #error "PLA_PREHEAT_HPB_TEMP is now PREHEAT_1_TEMP_BED." +#elif defined(PLA_PREHEAT_FAN_SPEED) + #error "PLA_PREHEAT_FAN_SPEED is now PREHEAT_1_FAN_SPEED." +#elif defined(ABS_PREHEAT_HOTEND_TEMP) + #error "ABS_PREHEAT_HOTEND_TEMP is now PREHEAT_2_TEMP_HOTEND." +#elif defined(ABS_PREHEAT_HPB_TEMP) + #error "ABS_PREHEAT_HPB_TEMP is now PREHEAT_2_TEMP_BED." +#elif defined(ABS_PREHEAT_FAN_SPEED) + #error "ABS_PREHEAT_FAN_SPEED is now PREHEAT_2_FAN_SPEED." +#elif defined(ENDSTOPS_ONLY_FOR_HOMING) + #error "ENDSTOPS_ONLY_FOR_HOMING is deprecated. Use (disable) ENDSTOPS_ALWAYS_ON_DEFAULT instead." +#elif defined(HOMING_FEEDRATE) + #error "HOMING_FEEDRATE is now set using the HOMING_FEEDRATE_MM_M array instead." +#elif (defined(HOMING_FEEDRATE_XY) || defined(HOMING_FEEDRATE_Z)) && !defined(HOMING_FEEDRATE_MM_M) + #error "HOMING_FEEDRATE_XY and HOMING_FEEDRATE_Z are now set using the HOMING_FEEDRATE_MM_M array instead." +#elif defined(MANUAL_HOME_POSITIONS) + #error "MANUAL_HOME_POSITIONS is deprecated. Set MANUAL_[XYZ]_HOME_POS as-needed instead." +#elif defined(PID_ADD_EXTRUSION_RATE) + #error "PID_ADD_EXTRUSION_RATE is now PID_EXTRUSION_SCALING and is DISABLED by default." +#elif defined(Z_RAISE_BEFORE_HOMING) + #error "Z_RAISE_BEFORE_HOMING is now Z_CLEARANCE_FOR_HOMING." +#elif defined(MIN_Z_HEIGHT_FOR_HOMING) + #error "MIN_Z_HEIGHT_FOR_HOMING is now Z_CLEARANCE_FOR_HOMING." +#elif defined(Z_HOMING_HEIGHT) + #error "Z_HOMING_HEIGHT is now Z_CLEARANCE_FOR_HOMING." +#elif defined(Z_RAISE_BEFORE_PROBING) || defined(Z_RAISE_AFTER_PROBING) + #error "Z_RAISE_(BEFORE|AFTER)_PROBING are deprecated. Use Z_CLEARANCE_DEPLOY_PROBE and Z_AFTER_PROBING instead." +#elif defined(Z_RAISE_PROBE_DEPLOY_STOW) || defined(Z_RAISE_BETWEEN_PROBINGS) + #error "Z_RAISE_PROBE_DEPLOY_STOW and Z_RAISE_BETWEEN_PROBINGS are now Z_CLEARANCE_DEPLOY_PROBE and Z_CLEARANCE_BETWEEN_PROBES." +#elif defined(Z_PROBE_DEPLOY_HEIGHT) || defined(Z_PROBE_TRAVEL_HEIGHT) + #error "Z_PROBE_DEPLOY_HEIGHT and Z_PROBE_TRAVEL_HEIGHT are now Z_CLEARANCE_DEPLOY_PROBE and Z_CLEARANCE_BETWEEN_PROBES." +#elif defined(MANUAL_BED_LEVELING) + #error "MANUAL_BED_LEVELING is now LCD_BED_LEVELING." +#elif defined(MESH_HOME_SEARCH_Z) + #error "MESH_HOME_SEARCH_Z is now LCD_PROBE_Z_RANGE." +#elif defined(MANUAL_PROBE_Z_RANGE) + #error "MANUAL_PROBE_Z_RANGE is now LCD_PROBE_Z_RANGE." +#elif !defined(MIN_STEPS_PER_SEGMENT) + #error "Please replace 'const int dropsegments' with '#define MIN_STEPS_PER_SEGMENT' (and increase by 1)." +#elif MIN_STEPS_PER_SEGMENT <= 0 + #error "MIN_STEPS_PER_SEGMENT must be at least 1." +#elif defined(PREVENT_DANGEROUS_EXTRUDE) + #error "PREVENT_DANGEROUS_EXTRUDE is now PREVENT_COLD_EXTRUSION." +#elif defined(SCARA) + #error "SCARA is now MORGAN_SCARA." +#elif defined(ENABLE_AUTO_BED_LEVELING) + #error "ENABLE_AUTO_BED_LEVELING is deprecated. Specify AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_BILINEAR, or AUTO_BED_LEVELING_3POINT." +#elif defined(AUTO_BED_LEVELING_FEATURE) + #error "AUTO_BED_LEVELING_FEATURE is deprecated. Specify AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_BILINEAR, or AUTO_BED_LEVELING_3POINT." +#elif defined(ABL_GRID_POINTS) + #error "ABL_GRID_POINTS is now GRID_MAX_POINTS_X and GRID_MAX_POINTS_Y." +#elif defined(ABL_GRID_POINTS_X) || defined(ABL_GRID_POINTS_Y) + #error "ABL_GRID_POINTS_[XY] is now GRID_MAX_POINTS_[XY]." +#elif defined(ABL_GRID_MAX_POINTS_X) || defined(ABL_GRID_MAX_POINTS_Y) + #error "ABL_GRID_MAX_POINTS_[XY] is now GRID_MAX_POINTS_[XY]." +#elif defined(MESH_NUM_X_POINTS) || defined(MESH_NUM_Y_POINTS) + #error "MESH_NUM_[XY]_POINTS is now GRID_MAX_POINTS_[XY]." +#elif defined(UBL_MESH_NUM_X_POINTS) || defined(UBL_MESH_NUM_Y_POINTS) + #error "UBL_MESH_NUM_[XY]_POINTS is now GRID_MAX_POINTS_[XY]." +#elif defined(UBL_G26_MESH_VALIDATION) + #error "UBL_G26_MESH_VALIDATION is now G26_MESH_VALIDATION." +#elif defined(UBL_MESH_EDIT_ENABLED) + #error "UBL_MESH_EDIT_ENABLED is now G26_MESH_VALIDATION." +#elif defined(UBL_MESH_EDITING) + #error "UBL_MESH_EDITING is now G26_MESH_VALIDATION." +#elif defined(BLTOUCH_HEATERS_OFF) + #error "BLTOUCH_HEATERS_OFF is now PROBING_HEATERS_OFF." +#elif defined(BLTOUCH_V3) + #error "BLTOUCH_V3 is obsolete." +#elif defined(BLTOUCH_FORCE_OPEN_DRAIN_MODE) + #error "BLTOUCH_FORCE_OPEN_DRAIN_MODE is obsolete." +#elif defined(BEEPER) + #error "BEEPER is now BEEPER_PIN." +#elif defined(SDCARDDETECT) + #error "SDCARDDETECT is now SD_DETECT_PIN." +#elif defined(STAT_LED_RED) || defined(STAT_LED_BLUE) + #error "STAT_LED_RED/STAT_LED_BLUE are now STAT_LED_RED_PIN/STAT_LED_BLUE_PIN." +#elif defined(LCD_PIN_BL) + #error "LCD_PIN_BL is now LCD_BACKLIGHT_PIN." +#elif defined(LCD_PIN_RESET) + #error "LCD_PIN_RESET is now LCD_RESET_PIN." +#elif defined(EXTRUDER_0_AUTO_FAN_PIN) || defined(EXTRUDER_1_AUTO_FAN_PIN) || defined(EXTRUDER_2_AUTO_FAN_PIN) || defined(EXTRUDER_3_AUTO_FAN_PIN) + #error "EXTRUDER_[0123]_AUTO_FAN_PIN is now E[0123]_AUTO_FAN_PIN." +#elif defined(min_software_endstops) || defined(max_software_endstops) + #error "(min|max)_software_endstops are now (MIN|MAX)_SOFTWARE_ENDSTOPS." +#elif ENABLED(Z_PROBE_SLED) && defined(SLED_PIN) + #error "Replace SLED_PIN with SOL1_PIN (applies to both Z_PROBE_SLED and SOLENOID_PROBE)." +#elif defined(CONTROLLERFAN_PIN) + #error "CONTROLLERFAN_PIN is now CONTROLLER_FAN_PIN, enabled with USE_CONTROLLER_FAN." +#elif defined(CONTROLLERFAN_SPEED) + #error "CONTROLLERFAN_SPEED is now CONTROLLERFAN_SPEED_ACTIVE." +#elif defined(CONTROLLERFAN_SECS) + #error "CONTROLLERFAN_SECS is now CONTROLLERFAN_IDLE_TIME." +#elif defined(MIN_RETRACT) + #error "MIN_RETRACT is now MIN_AUTORETRACT and MAX_AUTORETRACT." +#elif defined(ADVANCE) + #error "ADVANCE is now LIN_ADVANCE." +#elif defined(LIN_ADVANCE_E_D_RATIO) + #error "LIN_ADVANCE (1.5) no longer uses LIN_ADVANCE_E_D_RATIO." +#elif defined(NEOPIXEL_RGBW_LED) + #error "NEOPIXEL_RGBW_LED is now NEOPIXEL_LED." +#elif ENABLED(DELTA) && defined(DELTA_PROBEABLE_RADIUS) + #error "Remove DELTA_PROBEABLE_RADIUS and use PROBING_MARGIN to inset the probe area instead." +#elif ENABLED(DELTA) && defined(DELTA_CALIBRATION_RADIUS) + #error "Remove DELTA_CALIBRATION_RADIUS and use PROBING_MARGIN to inset the probe area instead." +#elif defined(UBL_MESH_INSET) + #error "UBL_MESH_INSET is now just MESH_INSET." +#elif defined(UBL_MESH_MIN_X) || defined(UBL_MESH_MIN_Y) || defined(UBL_MESH_MAX_X) || defined(UBL_MESH_MAX_Y) + #error "UBL_MESH_(MIN|MAX)_[XY] is now just MESH_(MIN|MAX)_[XY]." +#elif defined(ABL_PROBE_PT_1_X) || defined(ABL_PROBE_PT_1_Y) || defined(ABL_PROBE_PT_2_X) || defined(ABL_PROBE_PT_2_Y) || defined(ABL_PROBE_PT_3_X) || defined(ABL_PROBE_PT_3_Y) + #error "ABL_PROBE_PT_[123]_[XY] is no longer required. Please remove it." +#elif defined(UBL_PROBE_PT_1_X) || defined(UBL_PROBE_PT_1_Y) || defined(UBL_PROBE_PT_2_X) || defined(UBL_PROBE_PT_2_Y) || defined(UBL_PROBE_PT_3_X) || defined(UBL_PROBE_PT_3_Y) + #error "UBL_PROBE_PT_[123]_[XY] is no longer required. Please remove it." +#elif defined(MIN_PROBE_EDGE) + #error "MIN_PROBE_EDGE is now called PROBING_MARGIN." +#elif defined(MIN_PROBE_EDGE_LEFT) + #error "MIN_PROBE_EDGE_LEFT is now called PROBING_MARGIN_LEFT." +#elif defined(MIN_PROBE_EDGE_RIGHT) + #error "MIN_PROBE_EDGE_RIGHT is now called PROBING_MARGIN_RIGHT." +#elif defined(MIN_PROBE_EDGE_FRONT) + #error "MIN_PROBE_EDGE_FRONT is now called PROBING_MARGIN_FRONT." +#elif defined(MIN_PROBE_EDGE_BACK) + #error "MIN_PROBE_EDGE_BACK is now called PROBING_MARGIN_BACK." +#elif defined(LEFT_PROBE_BED_POSITION) + #error "LEFT_PROBE_BED_POSITION is obsolete. Set a margin with PROBING_MARGIN or PROBING_MARGIN_LEFT instead." +#elif defined(RIGHT_PROBE_BED_POSITION) + #error "RIGHT_PROBE_BED_POSITION is obsolete. Set a margin with PROBING_MARGIN or PROBING_MARGIN_RIGHT instead." +#elif defined(FRONT_PROBE_BED_POSITION) + #error "FRONT_PROBE_BED_POSITION is obsolete. Set a margin with PROBING_MARGIN or PROBING_MARGIN_FRONT instead." +#elif defined(BACK_PROBE_BED_POSITION) + #error "BACK_PROBE_BED_POSITION is obsolete. Set a margin with PROBING_MARGIN or PROBING_MARGIN_BACK instead." +#elif defined(ENABLE_MESH_EDIT_GFX_OVERLAY) + #error "ENABLE_MESH_EDIT_GFX_OVERLAY is now MESH_EDIT_GFX_OVERLAY." +#elif defined(BABYSTEP_ZPROBE_GFX_REVERSE) + #error "BABYSTEP_ZPROBE_GFX_REVERSE is now set by OVERLAY_GFX_REVERSE." +#elif defined(UBL_GRANULAR_SEGMENTATION_FOR_CARTESIAN) + #error "UBL_GRANULAR_SEGMENTATION_FOR_CARTESIAN is now SEGMENT_LEVELED_MOVES." +#elif HAS_PID_HEATING && (defined(K1) || !defined(PID_K1)) + #error "K1 is now PID_K1." +#elif defined(PROBE_DOUBLE_TOUCH) + #error "PROBE_DOUBLE_TOUCH is now MULTIPLE_PROBING." +#elif defined(ANET_KEYPAD_LCD) + #error "ANET_KEYPAD_LCD is now ZONESTAR_LCD." +#elif defined(LCD_I2C_SAINSMART_YWROBOT) + #error "LCD_I2C_SAINSMART_YWROBOT is now LCD_SAINSMART_I2C_(1602|2004)." +#elif defined(MEASURED_LOWER_LIMIT) || defined(MEASURED_UPPER_LIMIT) + #error "MEASURED_(UPPER|LOWER)_LIMIT is now FILWIDTH_ERROR_MARGIN." +#elif defined(HAVE_TMCDRIVER) + #error "HAVE_TMCDRIVER is now [AXIS]_DRIVER_TYPE TMC26X." +#elif defined(STEALTHCHOP) + #error "STEALTHCHOP is now STEALTHCHOP_(XY|Z|E)." +#elif defined(HAVE_TMC26X) + #error "HAVE_TMC26X is now [AXIS]_DRIVER_TYPE TMC26X." +#elif defined(HAVE_TMC2130) + #error "HAVE_TMC2130 is now [AXIS]_DRIVER_TYPE TMC2130." +#elif defined(HAVE_TMC2208) + #error "HAVE_TMC2208 is now [AXIS]_DRIVER_TYPE TMC2208." +#elif defined(HAVE_L6470DRIVER) + #error "HAVE_L6470DRIVER is obsolete. L64xx stepper drivers are no longer supported in Marlin." +#elif defined(X_IS_TMC) || defined(X2_IS_TMC) || defined(Y_IS_TMC) || defined(Y2_IS_TMC) || defined(Z_IS_TMC) || defined(Z2_IS_TMC) || defined(Z3_IS_TMC) \ + || defined(E0_IS_TMC) || defined(E1_IS_TMC) || defined(E2_IS_TMC) || defined(E3_IS_TMC) || defined(E4_IS_TMC) || defined(E5_IS_TMC) || defined(E6_IS_TMC) || defined(E7_IS_TMC) + #error "[AXIS]_IS_TMC is now [AXIS]_DRIVER_TYPE TMC26X." +#elif defined(X_IS_TMC26X) || defined(X2_IS_TMC26X) || defined(Y_IS_TMC26X) || defined(Y2_IS_TMC26X) || defined(Z_IS_TMC26X) || defined(Z2_IS_TMC26X) || defined(Z3_IS_TMC26X) \ + || defined(E0_IS_TMC26X) || defined(E1_IS_TMC26X) || defined(E2_IS_TMC26X) || defined(E3_IS_TMC26X) || defined(E4_IS_TMC26X) || defined(E5_IS_TMC26X) || defined(E6_IS_TMC26X) || defined(E7_IS_TMC26X) + #error "[AXIS]_IS_TMC26X is now [AXIS]_DRIVER_TYPE TMC26X." +#elif defined(X_IS_TMC2130) || defined(X2_IS_TMC2130) || defined(Y_IS_TMC2130) || defined(Y2_IS_TMC2130) || defined(Z_IS_TMC2130) || defined(Z2_IS_TMC2130) || defined(Z3_IS_TMC2130) \ + || defined(E0_IS_TMC2130) || defined(E1_IS_TMC2130) || defined(E2_IS_TMC2130) || defined(E3_IS_TMC2130) || defined(E4_IS_TMC2130) || defined(E5_IS_TMC2130) || defined(E6_IS_TMC2130) || defined(E7_IS_TMC2130) + #error "[AXIS]_IS_TMC2130 is now [AXIS]_DRIVER_TYPE TMC2130." +#elif defined(X_IS_TMC2208) || defined(X2_IS_TMC2208) || defined(Y_IS_TMC2208) || defined(Y2_IS_TMC2208) || defined(Z_IS_TMC2208) || defined(Z2_IS_TMC2208) || defined(Z3_IS_TMC2208) \ + || defined(E0_IS_TMC2208) || defined(E1_IS_TMC2208) || defined(E2_IS_TMC2208) || defined(E3_IS_TMC2208) || defined(E4_IS_TMC2208) || defined(E5_IS_TMC2208) || defined(E6_IS_TMC2208) || defined(E7_IS_TMC2208) + #error "[AXIS]_IS_TMC2208 is now [AXIS]_DRIVER_TYPE TMC2208." +#elif defined(AUTOMATIC_CURRENT_CONTROL) + #error "AUTOMATIC_CURRENT_CONTROL is now MONITOR_DRIVER_STATUS." +#elif defined(FILAMENT_CHANGE_LOAD_LENGTH) + #error "FILAMENT_CHANGE_LOAD_LENGTH is now FILAMENT_CHANGE_FAST_LOAD_LENGTH." +#elif defined(LEVEL_CORNERS_INSET) + #error "LEVEL_CORNERS_INSET is now BED_TRAMMING_INSET_LFRB." +#elif defined(BEZIER_JERK_CONTROL) + #error "BEZIER_JERK_CONTROL is now S_CURVE_ACCELERATION." +#elif HAS_JUNCTION_DEVIATION && defined(JUNCTION_DEVIATION_FACTOR) + #error "JUNCTION_DEVIATION_FACTOR is now JUNCTION_DEVIATION_MM." +#elif defined(JUNCTION_ACCELERATION_FACTOR) + #error "JUNCTION_ACCELERATION_FACTOR is obsolete. Delete it from Configuration_adv.h." +#elif defined(JUNCTION_ACCELERATION) + #error "JUNCTION_ACCELERATION is obsolete. Delete it from Configuration_adv.h." +#elif defined(MAX7219_DEBUG_STEPPER_HEAD) + #error "MAX7219_DEBUG_STEPPER_HEAD is now MAX7219_DEBUG_PLANNER_HEAD." +#elif defined(MAX7219_DEBUG_STEPPER_TAIL) + #error "MAX7219_DEBUG_STEPPER_TAIL is now MAX7219_DEBUG_PLANNER_TAIL." +#elif defined(MAX7219_DEBUG_STEPPER_QUEUE) + #error "MAX7219_DEBUG_STEPPER_QUEUE is now MAX7219_DEBUG_PLANNER_QUEUE." +#elif defined(ENDSTOP_NOISE_FILTER) + #error "ENDSTOP_NOISE_FILTER is now ENDSTOP_NOISE_THRESHOLD [2-7]." +#elif defined(RETRACT_ZLIFT) + #error "RETRACT_ZLIFT is now RETRACT_ZRAISE." +#elif defined(TOOLCHANGE_FS_INIT_BEFORE_SWAP) + #error "TOOLCHANGE_FS_INIT_BEFORE_SWAP is now TOOLCHANGE_FS_SLOW_FIRST_PRIME." +#elif defined(TOOLCHANGE_PARK_ZLIFT) || defined(TOOLCHANGE_UNPARK_ZLIFT) + #error "TOOLCHANGE_PARK_ZLIFT and TOOLCHANGE_UNPARK_ZLIFT are now TOOLCHANGE_ZRAISE." +#elif defined(SINGLENOZZLE_TOOLCHANGE_ZRAISE) + #error "SINGLENOZZLE_TOOLCHANGE_ZRAISE is now TOOLCHANGE_ZRAISE." +#elif defined(SINGLENOZZLE_SWAP_LENGTH) + #error "SINGLENOZZLE_SWAP_LENGTH is now TOOLCHANGE_FIL_SWAP_LENGTH." +#elif defined(SINGLENOZZLE_SWAP_RETRACT_SPEED) + #error "SINGLENOZZLE_SWAP_RETRACT_SPEED is now TOOLCHANGE_FIL_SWAP_RETRACT_SPEED." +#elif defined(SINGLENOZZLE_SWAP_PRIME_SPEED) + #error "SINGLENOZZLE_SWAP_PRIME_SPEED is now TOOLCHANGE_FIL_SWAP_PRIME_SPEED." +#elif defined(SINGLENOZZLE_SWAP_PARK) + #error "SINGLENOZZLE_SWAP_PARK is now TOOLCHANGE_PARK." +#elif defined(SINGLENOZZLE_TOOLCHANGE_XY) + #error "SINGLENOZZLE_TOOLCHANGE_XY is now TOOLCHANGE_PARK_XY." +#elif defined(SINGLENOZZLE_PARK_XY_FEEDRATE) + #error "SINGLENOZZLE_PARK_XY_FEEDRATE is now TOOLCHANGE_PARK_XY_FEEDRATE." +#elif defined(PARKING_EXTRUDER_SECURITY_RAISE) + #error "PARKING_EXTRUDER_SECURITY_RAISE is now TOOLCHANGE_ZRAISE." +#elif defined(SWITCHING_TOOLHEAD_SECURITY_RAISE) + #error "SWITCHING_TOOLHEAD_SECURITY_RAISE is now TOOLCHANGE_ZRAISE." +#elif defined(G0_FEEDRATE) && G0_FEEDRATE == 0 + #error "G0_FEEDRATE is now used to set the G0 feedrate." +#elif defined(MBL_Z_STEP) + #error "MBL_Z_STEP is now MESH_EDIT_Z_STEP." +#elif defined(CHDK) + #error "CHDK is now CHDK_PIN." +#elif ANY_PIN( \ + MAX6675_SS, MAX6675_SS2, MAX6675_SS3, MAX6675_CS, MAX6675_CS2, MAX6675_CS3,\ + MAX31855_SS, MAX31855_SS2, MAX31855_SS3, MAX31855_CS, MAX31855_CS2, MAX31855_CS3, \ + MAX31865_SS, MAX31865_SS2, MAX31865_SS3, MAX31865_CS, MAX31865_CS2, MAX31865_CS3) + #warning "MAX*_SS_PIN, MAX*_SS2_PIN, MAX*_SS3_PIN, MAX*_CS_PIN, MAX*_CS2_PIN, and MAX*_CS3_PIN, are obsolete. Please use TEMP_0_CS_PIN/TEMP_1_CS_PIN/TEMP_2_CS_PIN instead." +#elif ANY_PIN(MAX6675_SCK, MAX31855_SCK, MAX31865_SCK) + #warning "MAX*_SCK_PIN is obsolete. Please use TEMP_0_SCK_PIN/TEMP_1_SCK_PIN/TEMP_2_SCK_PIN instead." +#elif ANY_PIN(MAX6675_MISO, MAX6675_DO, MAX31855_MISO, MAX31855_DO, MAX31865_MISO, MAX31865_DO) + #warning "MAX*_MISO_PIN and MAX*_DO_PIN are obsolete. Please use TEMP_0_MISO_PIN/TEMP_1_MISO_PIN/TEMP_2_MISO_PIN instead." +#elif PIN_EXISTS(MAX31865_MOSI) + #warning "MAX31865_MOSI_PIN is obsolete. Please use TEMP_0_MOSI_PIN/TEMP_1_MOSI_PIN/TEMP_2_MOSI_PIN instead." +#elif ANY_PIN(THERMO_CS1_PIN, THERMO_CS2_PIN, THERMO_CS3_PIN, THERMO_DO_PIN, THERMO_SCK_PIN) + #error "THERMO_*_PIN is now TEMP_n_CS_PIN, TEMP_n_SCK_PIN, TEMP_n_MOSI_PIN, TEMP_n_MISO_PIN." +#elif defined(MAX31865_SENSOR_OHMS) + #error "MAX31865_SENSOR_OHMS is now MAX31865_SENSOR_OHMS_0." +#elif defined(MAX31865_CALIBRATION_OHMS) + #error "MAX31865_CALIBRATION_OHMS is now MAX31865_CALIBRATION_OHMS_0." +#elif defined(SPINDLE_LASER_ENABLE) + #error "SPINDLE_LASER_ENABLE is now SPINDLE_FEATURE or LASER_FEATURE." +#elif defined(SPINDLE_LASER_ENABLE_PIN) + #error "SPINDLE_LASER_ENABLE_PIN is now SPINDLE_LASER_ENA_PIN." +#elif defined(SPINDLE_DIR_CHANGE) + #error "SPINDLE_DIR_CHANGE is now SPINDLE_CHANGE_DIR." +#elif defined(SPINDLE_STOP_ON_DIR_CHANGE) + #error "SPINDLE_STOP_ON_DIR_CHANGE is now SPINDLE_CHANGE_DIR_STOP." +#elif defined(SPINDLE_LASER_ACTIVE_HIGH) + #error "SPINDLE_LASER_ACTIVE_HIGH is now SPINDLE_LASER_ACTIVE_STATE." +#elif defined(SPINDLE_LASER_ENABLE_INVERT) + #error "SPINDLE_LASER_ENABLE_INVERT is now SPINDLE_LASER_ACTIVE_STATE." +#elif defined(LASER_POWER_INLINE) + #error "LASER_POWER_INLINE is not required, inline mode is enabled with 'M3 I' and disabled with 'M5 I'." +#elif defined(LASER_POWER_INLINE_TRAPEZOID) + #error "LASER_POWER_INLINE_TRAPEZOID is now LASER_POWER_TRAP." +#elif defined(LASER_POWER_INLINE_TRAPEZOID_CONT) + #error "LASER_POWER_INLINE_TRAPEZOID_CONT is replaced with LASER_POWER_TRAP." +#elif defined(LASER_POWER_INLINE_TRAPEZOID_PER) + #error "LASER_POWER_INLINE_TRAPEZOID_CONT_PER replaced with LASER_POWER_TRAP." +#elif defined(LASER_POWER_INLINE_CONTINUOUS) + #error "LASER_POWER_INLINE_CONTINUOUS is not required, inline mode is enabled with 'M3 I' and disabled with 'M5 I'." +#elif defined(CUTTER_POWER_DISPLAY) + #error "CUTTER_POWER_DISPLAY is now CUTTER_POWER_UNIT." +#elif defined(CHAMBER_HEATER_PIN) + #error "CHAMBER_HEATER_PIN is now HEATER_CHAMBER_PIN." +#elif defined(TMC_Z_CALIBRATION) + #error "TMC_Z_CALIBRATION has been deprecated in favor of MECHANICAL_GANTRY_CALIBRATION." +#elif defined(Z_MIN_PROBE_ENDSTOP) + #error "Z_MIN_PROBE_ENDSTOP is no longer required. Please remove it." +#elif defined(DUAL_NOZZLE_DUPLICATION_MODE) + #error "DUAL_NOZZLE_DUPLICATION_MODE is now MULTI_NOZZLE_DUPLICATION." +#elif defined(MENU_ITEM_CASE_LIGHT) + #error "MENU_ITEM_CASE_LIGHT is now CASE_LIGHT_MENU." +#elif defined(CASE_LIGHT_NEOPIXEL_COLOR) + #error "CASE_LIGHT_NEOPIXEL_COLOR is now CASE_LIGHT_DEFAULT_COLOR." +#elif defined(ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED) + #error "ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED is now SD_ABORT_ON_ENDSTOP_HIT." +#elif defined(LPC_SD_LCD) || defined(LPC_SD_ONBOARD) || defined(LPC_SD_CUSTOM_CABLE) + #error "LPC_SD_(LCD|ONBOARD|CUSTOM_CABLE) are now SDCARD_CONNECTION." +#elif defined(USB_SD_DISABLED) + #error "USB_SD_DISABLED is now NO_SD_HOST_DRIVE." +#elif defined(USB_SD_ONBOARD) + #error "USB_SD_ONBOARD is obsolete. Disable NO_SD_HOST_DRIVE instead." +#elif defined(PSU_ACTIVE_HIGH) + #error "PSU_ACTIVE_HIGH is now PSU_ACTIVE_STATE." +#elif POWER_SUPPLY == 1 + #error "Replace POWER_SUPPLY 1 by enabling PSU_CONTROL and setting PSU_ACTIVE_STATE to 'LOW'." +#elif POWER_SUPPLY == 2 + #error "Replace POWER_SUPPLY 2 by enabling PSU_CONTROL and setting PSU_ACTIVE_STATE to 'HIGH'." +#elif defined(POWER_SUPPLY) + #error "POWER_SUPPLY is now obsolete. Please remove it." +#elif defined(MKS_ROBIN_TFT) + #error "MKS_ROBIN_TFT is now FSMC_GRAPHICAL_TFT." +#elif defined(SDPOWER) + #error "SDPOWER is now SDPOWER_PIN." +#elif defined(STRING_SPLASH_LINE1) || defined(STRING_SPLASH_LINE2) + #error "STRING_SPLASH_LINE[12] are now obsolete. Please remove them." +#elif defined(Z_PROBE_ALLEN_KEY_DEPLOY_1_X) || defined(Z_PROBE_ALLEN_KEY_STOW_1_X) + #error "Z_PROBE_ALLEN_KEY_(DEPLOY|STOW) coordinates are now a single setting." +#elif defined(X_PROBE_OFFSET_FROM_EXTRUDER) || defined(Y_PROBE_OFFSET_FROM_EXTRUDER) || defined(Z_PROBE_OFFSET_FROM_EXTRUDER) + #error "[XYZ]_PROBE_OFFSET_FROM_EXTRUDER is now NOZZLE_TO_PROBE_OFFSET." +#elif defined(MIN_PROBE_X) || defined(MIN_PROBE_Y) || defined(MAX_PROBE_X) || defined(MAX_PROBE_Y) + #error "(MIN|MAX)_PROBE_[XY] are now calculated at runtime. Please remove them." +#elif defined(Z_STEPPER_ALIGN_X) || defined(Z_STEPPER_ALIGN_X) + #error "Z_STEPPER_ALIGN_X and Z_STEPPER_ALIGN_Y are now combined as Z_STEPPER_ALIGN_XY." +#elif defined(JUNCTION_DEVIATION) + #error "JUNCTION_DEVIATION is no longer required. (See CLASSIC_JERK). Please remove it." +#elif defined(BABYSTEP_MULTIPLICATOR) + #error "BABYSTEP_MULTIPLICATOR is now BABYSTEP_MULTIPLICATOR_[XY|Z]." +#elif defined(LULZBOT_TOUCH_UI) + #error "LULZBOT_TOUCH_UI is now TOUCH_UI_FTDI_EVE." +#elif defined(PS_DEFAULT_OFF) + #error "PS_DEFAULT_OFF is now PSU_DEFAULT_OFF." +#elif defined(FILAMENT_UNLOAD_RETRACT_LENGTH) + #error "FILAMENT_UNLOAD_RETRACT_LENGTH is now FILAMENT_UNLOAD_PURGE_RETRACT." +#elif defined(FILAMENT_UNLOAD_DELAY) + #error "FILAMENT_UNLOAD_DELAY is now FILAMENT_UNLOAD_PURGE_DELAY." +#elif defined(HOME_USING_SPREADCYCLE) + #error "HOME_USING_SPREADCYCLE is now obsolete. Please remove it." +#elif defined(DGUS_LCD) + #error "DGUS_LCD is now DGUS_LCD_UI ORIGIN|FYSETC|HIPRECY)." +#elif defined(DGUS_SERIAL_PORT) + #error "DGUS_SERIAL_PORT is now LCD_SERIAL_PORT." +#elif defined(DGUS_BAUDRATE) + #error "DGUS_BAUDRATE is now LCD_BAUDRATE." +#elif defined(DGUS_STATS_RX_BUFFER_OVERRUNS) + #error "DGUS_STATS_RX_BUFFER_OVERRUNS is now STATS_RX_BUFFER_OVERRUNS." +#elif defined(ANYCUBIC_LCD_SERIAL_PORT) + #error "ANYCUBIC_LCD_SERIAL_PORT is now LCD_SERIAL_PORT." +#elif defined(INTERNAL_SERIAL_PORT) + #error "INTERNAL_SERIAL_PORT is now MMU2_SERIAL_PORT." +#elif defined(X_DUAL_ENDSTOPS_ADJUSTMENT) || defined(Y_DUAL_ENDSTOPS_ADJUSTMENT) || defined(Z_DUAL_ENDSTOPS_ADJUSTMENT) + #error "[XYZ]_DUAL_ENDSTOPS_ADJUSTMENT is now [XYZ]2_ENDSTOP_ADJUSTMENT." +#elif defined(Z_TRIPLE_ENDSTOPS_ADJUSTMENT2) || defined(Z_TRIPLE_ENDSTOPS_ADJUSTMENT3) + #error "Z_TRIPLE_ENDSTOPS_ADJUSTMENT[23] is now Z[23]_ENDSTOP_ADJUSTMENT." +#elif defined(Z_QUAD_ENDSTOPS_ADJUSTMENT2) || defined(Z_QUAD_ENDSTOPS_ADJUSTMENT3) || defined(Z_QUAD_ENDSTOPS_ADJUSTMENT4) + #error "Z_QUAD_ENDSTOPS_ADJUSTMENT[234] is now Z[234]_ENDSTOP_ADJUSTMENT." +#elif defined(Z_DUAL_STEPPER_DRIVERS) + #error "Z_DUAL_STEPPER_DRIVERS is no longer needed and should be removed." +#elif defined(Z_TRIPLE_STEPPER_DRIVERS) + #error "Z_TRIPLE_STEPPER_DRIVERS is no longer needed and should be removed." +#elif defined(Z_QUAD_STEPPER_DRIVERS) + #error "Z_QUAD_STEPPER_DRIVERS is no longer needed and should be removed." +#elif defined(Z_DUAL_ENDSTOPS) || defined(Z_TRIPLE_ENDSTOPS) || defined(Z_QUAD_ENDSTOPS) + #error "Z_(DUAL|TRIPLE|QUAD)_ENDSTOPS is now Z_MULTI_ENDSTOPS." +#elif defined(DUGS_UI_MOVE_DIS_OPTION) + #error "DUGS_UI_MOVE_DIS_OPTION is spelled DGUS_UI_MOVE_DIS_OPTION." +#elif defined(ORIG_E0_AUTO_FAN_PIN) || defined(ORIG_E1_AUTO_FAN_PIN) || defined(ORIG_E2_AUTO_FAN_PIN) || defined(ORIG_E3_AUTO_FAN_PIN) || defined(ORIG_E4_AUTO_FAN_PIN) || defined(ORIG_E5_AUTO_FAN_PIN) || defined(ORIG_E6_AUTO_FAN_PIN) || defined(ORIG_E7_AUTO_FAN_PIN) + #error "ORIG_Ex_AUTO_FAN_PIN is now just Ex_AUTO_FAN_PIN." +#elif defined(ORIG_CHAMBER_AUTO_FAN_PIN) + #error "ORIG_CHAMBER_AUTO_FAN_PIN is now just CHAMBER_AUTO_FAN_PIN." +#elif defined(HOMING_BACKOFF_MM) + #error "HOMING_BACKOFF_MM is now HOMING_BACKOFF_POST_MM." +#elif defined(X_HOME_BUMP_MM) || defined(Y_HOME_BUMP_MM) || defined(Z_HOME_BUMP_MM) + #error "[XYZ]_HOME_BUMP_MM is now HOMING_BUMP_MM." +#elif defined(DIGIPOT_I2C) + #error "DIGIPOT_I2C is now DIGIPOT_MCP4451 (or DIGIPOT_MCP4018)." +#elif defined(TOUCH_BUTTONS) + #error "TOUCH_BUTTONS is now TOUCH_SCREEN." +#elif defined(LCD_FULL_PIXEL_HEIGHT) || defined(LCD_FULL_PIXEL_WIDTH) + #error "LCD_FULL_PIXEL_(WIDTH|HEIGHT) is deprecated and should be removed." +#elif defined(FSMC_UPSCALE) + #error "FSMC_UPSCALE is now GRAPHICAL_TFT_UPSCALE." +#elif defined(ANYCUBIC_TFT_MODEL) + #error "ANYCUBIC_TFT_MODEL is now ANYCUBIC_LCD_I3MEGA." +#elif defined(EVENT_GCODE_SD_STOP) + #error "EVENT_GCODE_SD_STOP is now EVENT_GCODE_SD_ABORT." +#elif defined(GRAPHICAL_TFT_ROTATE_180) + #error "GRAPHICAL_TFT_ROTATE_180 is now TFT_ROTATION set to TFT_ROTATE_180." +#elif defined(PROBE_OFFSET_START) + #error "PROBE_OFFSET_START is now PROBE_OFFSET_WIZARD_START_Z." +#elif defined(POWER_LOSS_PULL) + #error "POWER_LOSS_PULL is now specifically POWER_LOSS_PULL(UP|DOWN)." +#elif defined(SHORT_MANUAL_Z_MOVE) + #error "SHORT_MANUAL_Z_MOVE is now FINE_MANUAL_MOVE, applying to Z on most printers." +#elif defined(FIL_RUNOUT_INVERTING) + #if FIL_RUNOUT_INVERTING + #error "FIL_RUNOUT_INVERTING true is now FIL_RUNOUT_STATE HIGH." + #else + #error "FIL_RUNOUT_INVERTING false is now FIL_RUNOUT_STATE LOW." + #endif +#elif defined(ASSISTED_TRAMMING_MENU_ITEM) + #error "ASSISTED_TRAMMING_MENU_ITEM is deprecated and should be removed." +#elif defined(UNKNOWN_Z_NO_RAISE) + #error "UNKNOWN_Z_NO_RAISE is replaced by setting Z_IDLE_HEIGHT to Z_MAX_POS." +#elif defined(Z_AFTER_DEACTIVATE) + #error "Z_AFTER_DEACTIVATE is replaced by Z_IDLE_HEIGHT." +#elif defined(MEATPACK) + #error "MEATPACK is now enabled with MEATPACK_ON_SERIAL_PORT_1, MEATPACK_ON_SERIAL_PORT_2, etc." +#elif defined(CUSTOM_USER_MENUS) + #error "CUSTOM_USER_MENUS has been replaced by CUSTOM_MENU_MAIN and CUSTOM_MENU_CONFIG." +#elif defined(MKS_LCD12864) + #error "MKS_LCD12864 is now MKS_LCD12864A or MKS_LCD12864B." +#elif defined(DOGM_SD_PERCENT) + #error "DOGM_SD_PERCENT is now SHOW_PROGRESS_PERCENT." +#elif defined(NEOPIXEL_BKGD_LED_INDEX) + #error "NEOPIXEL_BKGD_LED_INDEX is now NEOPIXEL_BKGD_INDEX_FIRST." +#elif defined(TEMP_SENSOR_1_AS_REDUNDANT) + #error "TEMP_SENSOR_1_AS_REDUNDANT is now TEMP_SENSOR_REDUNDANT, with associated TEMP_SENSOR_REDUNDANT_* config." +#elif defined(MAX_REDUNDANT_TEMP_SENSOR_DIFF) + #error "MAX_REDUNDANT_TEMP_SENSOR_DIFF is now TEMP_SENSOR_REDUNDANT_MAX_DIFF" +#elif defined(LCD_ALEPHOBJECTS_CLCD_UI) + #error "LCD_ALEPHOBJECTS_CLCD_UI is now LCD_LULZBOT_CLCD_UI." +#elif defined(MIN_ARC_SEGMENTS) + #error "MIN_ARC_SEGMENTS is now MIN_CIRCLE_SEGMENTS." +#elif defined(ARC_SEGMENTS_PER_R) + #error "ARC_SUPPORT no longer uses ARC_SEGMENTS_PER_R." +#elif ENABLED(ARC_SUPPORT) && (!defined(MIN_ARC_SEGMENT_MM) || !defined(MAX_ARC_SEGMENT_MM)) + #error "ARC_SUPPORT now requires MIN_ARC_SEGMENT_MM and MAX_ARC_SEGMENT_MM." +#elif defined(LASER_POWER_INLINE) + #error "LASER_POWER_INLINE is obsolete." +#elif defined(SPINDLE_LASER_PWM) + #error "SPINDLE_LASER_PWM (true) is now set with SPINDLE_LASER_USE_PWM (enabled)." +#elif ANY(IS_RAMPS_EEB, IS_RAMPS_EEF, IS_RAMPS_EFB, IS_RAMPS_EFF, IS_RAMPS_SF) + #error "The IS_RAMPS_* conditionals (for heater/fan/bed pins) are now called FET_ORDER_*." +#elif defined(PROBE_TEMP_COMPENSATION) + #error "PROBE_TEMP_COMPENSATION is now set using the PTC_PROBE, PTC_BED, PTC_HOTEND options." +#elif defined(BTC_PROBE_TEMP) + #error "BTC_PROBE_TEMP is now PTC_PROBE_TEMP." +#elif defined(LCD_SCREEN_ROT_90) + #error "LCD_SCREEN_ROT_90 is now LCD_SCREEN_ROTATE with a value of 90." +#elif defined(LCD_SCREEN_ROT_180) + #error "LCD_SCREEN_ROT_180 is now LCD_SCREEN_ROTATE with a value of 180." +#elif defined(LCD_SCREEN_ROT_270) + #error "LCD_SCREEN_ROT_270 is now LCD_SCREEN_ROTATE with a value of 270." +#elif defined(DEFAULT_LCD_BRIGHTNESS) + #error "DEFAULT_LCD_BRIGHTNESS is now LCD_BRIGHTNESS_DEFAULT." +#elif defined(NOZZLE_PARK_X_ONLY) + #error "NOZZLE_PARK_X_ONLY is now NOZZLE_PARK_MOVE 1." +#elif defined(NOZZLE_PARK_Y_ONLY) + #error "NOZZLE_PARK_Y_ONLY is now NOZZLE_PARK_MOVE 2." +#elif defined(Z_STEPPER_ALIGN_KNOWN_STEPPER_POSITIONS) + #error "Z_STEPPER_ALIGN_KNOWN_STEPPER_POSITIONS is now just Z_STEPPER_ALIGN_STEPPER_XY." +#elif defined(DWIN_CREALITY_LCD_ENHANCED) + #error "DWIN_CREALITY_LCD_ENHANCED is now DWIN_LCD_PROUI." +#elif defined(LINEAR_AXES) + #error "LINEAR_AXES is now NUM_AXES (to account for rotational axes)." +#elif defined(X_DUAL_STEPPER_DRIVERS) + #error "X_DUAL_STEPPER_DRIVERS is no longer needed and should be removed." +#elif defined(Y_DUAL_STEPPER_DRIVERS) + #error "Y_DUAL_STEPPER_DRIVERS is no longer needed and should be removed." +#elif defined(NUM_Z_STEPPER_DRIVERS) + #error "NUM_Z_STEPPER_DRIVERS is no longer needed and should be removed." +#elif defined(LEVEL_BED_CORNERS) + #error "LEVEL_BED_CORNERS is now LCD_BED_TRAMMING." +#elif defined(LEVEL_CORNERS_INSET_LFRB) || defined(LEVEL_CORNERS_HEIGHT) || defined(LEVEL_CORNERS_Z_HOP) || defined(LEVEL_CORNERS_USE_PROBE) || defined(LEVEL_CORNERS_PROBE_TOLERANCE) || defined(LEVEL_CORNERS_VERIFY_RAISED) || defined(LEVEL_CORNERS_AUDIO_FEEDBACK) + #error "LEVEL_CORNERS_* settings have been renamed BED_TRAMMING_*." +#elif defined(LEVEL_CENTER_TOO) + #error "LEVEL_CENTER_TOO is now BED_TRAMMING_INCLUDE_CENTER." +#elif defined(TOUCH_IDLE_SLEEP) + #error "TOUCH_IDLE_SLEEP (seconds) is now TOUCH_IDLE_SLEEP_MINS (minutes)." +#elif defined(LCD_BACKLIGHT_TIMEOUT) + #error "LCD_BACKLIGHT_TIMEOUT (seconds) is now LCD_BACKLIGHT_TIMEOUT_MINS (minutes)." +#elif defined(LCD_SET_PROGRESS_MANUALLY) + #error "LCD_SET_PROGRESS_MANUALLY is now SET_PROGRESS_MANUALLY." +#elif defined(USE_M73_REMAINING_TIME) + #error "USE_M73_REMAINING_TIME is now SET_REMAINING_TIME." +#elif defined(SHOW_SD_PERCENT) + #error "SHOW_SD_PERCENT is now SHOW_PROGRESS_PERCENT." +#elif defined(LIN_ADVANCE_K) + #error "LIN_ADVANCE_K is now ADVANCE_K." +#elif defined(EXTRA_LIN_ADVANCE_K) + #error "EXTRA_LIN_ADVANCE_K is now ADVANCE_K_EXTRA." +#elif defined(POLAR_SEGMENTS_PER_SECOND) || defined(DELTA_SEGMENTS_PER_SECOND) || defined(SCARA_SEGMENTS_PER_SECOND) || defined(TPARA_SEGMENTS_PER_SECOND) + #error "(POLAR|DELTA|SCARA|TPARA)_SEGMENTS_PER_SECOND is now DEFAULT_SEGMENTS_PER_SECOND." +#elif defined(TMC_SW_MOSI) || defined(TMC_SW_MISO) || defined(TMC_SW_SCK) + #error "TMC_SW_(MOSI|MISO|SCK) is now TMC_SPI_(MOSI|MISO|SCK)." +#elif ANY(DGUS_LCD_UI_ORIGIN, DGUS_LCD_UI_FYSETC, DGUS_LCD_UI_HIPRECY, DGUS_LCD_UI_MKS, DGUS_LCD_UI_RELOADED) && !defined(DGUS_LCD_UI) + #error "DGUS_LCD_UI_[TYPE] is now set using DGUS_LCD_UI TYPE." +#elif defined(DELTA_PRINTABLE_RADIUS) + #error "DELTA_PRINTABLE_RADIUS is now PRINTABLE_RADIUS." +#elif defined(SCARA_PRINTABLE_RADIUS) + #error "SCARA_PRINTABLE_RADIUS is now PRINTABLE_RADIUS." +#elif defined(SCARA_FEEDRATE_SCALING) + #error "SCARA_FEEDRATE_SCALING is now FEEDRATE_SCALING." +#elif defined(MILLISECONDS_PREHEAT_TIME) + #error "MILLISECONDS_PREHEAT_TIME is now PREHEAT_TIME_HOTEND_MS." +#elif defined(EXPERIMENTAL_SCURVE) + #error "EXPERIMENTAL_SCURVE is no longer needed and should be removed." +#elif defined(BABYSTEP_ZPROBE_GFX_OVERLAY) + #error "BABYSTEP_ZPROBE_GFX_OVERLAY is now BABYSTEP_GFX_OVERLAY." +#elif defined(DISABLE_INACTIVE_EXTRUDER) + #error "DISABLE_INACTIVE_EXTRUDER is now DISABLE_OTHER_EXTRUDERS." +#elif defined(INVERT_X_STEP_PIN) || defined(INVERT_Y_STEP_PIN) || defined(INVERT_Z_STEP_PIN) || defined(INVERT_I_STEP_PIN) || defined(INVERT_J_STEP_PIN) || defined(INVERT_K_STEP_PIN) || defined(INVERT_U_STEP_PIN) || defined(INVERT_V_STEP_PIN) || defined(INVERT_W_STEP_PIN) || defined(INVERT_E_STEP_PIN) + #error "INVERT_*_STEP_PIN true is now STEP_STATE_* LOW, and INVERT_*_STEP_PIN false is now STEP_STATE_* HIGH." +#elif defined(PROBE_PT_1_X) || defined(PROBE_PT_1_Y) || defined(PROBE_PT_2_X) || defined(PROBE_PT_2_Y) || defined(PROBE_PT_3_X) || defined(PROBE_PT_3_Y) + #error "PROBE_PT_[123]_[XY] is now defined using PROBE_PT_[123] with an array { x, y }." +#elif defined(SQUARE_WAVE_STEPPING) + #error "SQUARE_WAVE_STEPPING is now EDGE_STEPPING." +#elif defined(FAN_PIN) + #error "FAN_PIN is now FAN0_PIN." +#elif defined(X_MIN_ENDSTOP_INVERTING) || defined(Y_MIN_ENDSTOP_INVERTING) || defined(Z_MIN_ENDSTOP_INVERTING) \ + || defined(I_MIN_ENDSTOP_INVERTING) || defined(J_MIN_ENDSTOP_INVERTING) || defined(K_MIN_ENDSTOP_INVERTING) \ + || defined(U_MIN_ENDSTOP_INVERTING) || defined(V_MIN_ENDSTOP_INVERTING) || defined(W_MIN_ENDSTOP_INVERTING) \ + || defined(X_MAX_ENDSTOP_INVERTING) || defined(Y_MAX_ENDSTOP_INVERTING) || defined(Z_MAX_ENDSTOP_INVERTING) \ + || defined(I_MAX_ENDSTOP_INVERTING) || defined(J_MAX_ENDSTOP_INVERTING) || defined(K_MAX_ENDSTOP_INVERTING) \ + || defined(U_MAX_ENDSTOP_INVERTING) || defined(V_MAX_ENDSTOP_INVERTING) || defined(W_MAX_ENDSTOP_INVERTING) \ + || defined(Z_MIN_PROBE_ENDSTOP_INVERTING) + #error "*_ENDSTOP_INVERTING false/true is now set with *_ENDSTOP_HIT_STATE HIGH/LOW." +#elif defined(DISABLE_INACTIVE_X) || defined(DISABLE_INACTIVE_Y) || defined(DISABLE_INACTIVE_Z) \ + || defined(DISABLE_INACTIVE_I) || defined(DISABLE_INACTIVE_J) || defined(DISABLE_INACTIVE_K) \ + || defined(DISABLE_INACTIVE_U) || defined(DISABLE_INACTIVE_V) || defined(DISABLE_INACTIVE_W) || defined(DISABLE_INACTIVE_E) + #error "DISABLE_INACTIVE_[XYZIJKUVWE] is now DISABLE_IDLE_[XYZIJKUVWE]." +#elif defined(DEFAULT_STEPPER_DEACTIVE_TIME) + #error "DEFAULT_STEPPER_DEACTIVE_TIME is now DEFAULT_STEPPER_TIMEOUT_SEC." +#elif defined(TFT_SHARED_SPI) + #error "TFT_SHARED_SPI is now TFT_SHARED_IO." +#elif defined(LCD_PINS_ENABLE) + #error "LCD_PINS_ENABLE is now LCD_PINS_EN." +#endif + +// L64xx stepper drivers have been removed +#define _L6470 0x6470 +#define _L6474 0x6474 +#define _L6480 0x6480 +#define _POWERSTEP01 0xF00D +#if HAS_DRIVER(L6470) + #error "L6470 stepper drivers are no longer supported in Marlin." +#elif HAS_DRIVER(L6474) + #error "L6474 stepper drivers are no longer supported in Marlin." +#elif HAS_DRIVER(L6480) + #error "L6480 stepper drivers are no longer supported in Marlin." +#elif HAS_DRIVER(POWERSTEP01) + #error "POWERSTEP01 stepper drivers are no longer supported in Marlin." +#endif +#undef _L6470 +#undef _L6474 +#undef _L6480 +#undef _POWERSTEP01 diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index de983dd608c6..30c2613b0391 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -683,213 +683,33 @@ */ #if HAS_MAX_TC - // Translate old _SS, _CS, _SCK, _DO, _DI, _MISO, and _MOSI PIN defines. - #if TEMP_SENSOR_IS_MAX_TC(0) || (TEMP_SENSOR_IS_MAX_TC(REDUNDANT) && REDUNDANT_TEMP_MATCH(SOURCE, E1)) - - #if !PIN_EXISTS(TEMP_0_CS) // SS, CS - #if PIN_EXISTS(MAX6675_SS) - #define TEMP_0_CS_PIN MAX6675_SS_PIN - #elif PIN_EXISTS(MAX6675_CS) - #define TEMP_0_CS_PIN MAX6675_CS_PIN - #elif PIN_EXISTS(MAX31855_SS) - #define TEMP_0_CS_PIN MAX31855_SS_PIN - #elif PIN_EXISTS(MAX31855_CS) - #define TEMP_0_CS_PIN MAX31855_CS_PIN - #elif PIN_EXISTS(MAX31865_SS) - #define TEMP_0_CS_PIN MAX31865_SS_PIN - #elif PIN_EXISTS(MAX31865_CS) - #define TEMP_0_CS_PIN MAX31865_CS_PIN - #endif - #endif - - #if TEMP_SENSOR_0_IS_MAX6675 - #if !PIN_EXISTS(TEMP_0_MISO) // DO - #if PIN_EXISTS(MAX6675_MISO) - #define TEMP_0_MISO_PIN MAX6675_MISO_PIN - #elif PIN_EXISTS(MAX6675_DO) - #define TEMP_0_MISO_PIN MAX6675_DO_PIN - #endif - #endif - #if !PIN_EXISTS(TEMP_0_SCK) && PIN_EXISTS(MAX6675_SCK) - #define TEMP_0_SCK_PIN MAX6675_SCK_PIN - #endif - - #elif TEMP_SENSOR_0_IS_MAX31855 - #if !PIN_EXISTS(TEMP_0_MISO) // DO - #if PIN_EXISTS(MAX31855_MISO) - #define TEMP_0_MISO_PIN MAX31855_MISO_PIN - #elif PIN_EXISTS(MAX31855_DO) - #define TEMP_0_MISO_PIN MAX31855_DO_PIN - #endif - #endif - #if !PIN_EXISTS(TEMP_0_SCK) && PIN_EXISTS(MAX31855_SCK) - #define TEMP_0_SCK_PIN MAX31855_SCK_PIN - #endif - - #elif TEMP_SENSOR_0_IS_MAX31865 - #if !PIN_EXISTS(TEMP_0_MISO) // DO - #if PIN_EXISTS(MAX31865_MISO) - #define TEMP_0_MISO_PIN MAX31865_MISO_PIN - #elif PIN_EXISTS(MAX31865_DO) - #define TEMP_0_MISO_PIN MAX31865_DO_PIN - #endif - #endif - #if !PIN_EXISTS(TEMP_0_SCK) && PIN_EXISTS(MAX31865_SCK) - #define TEMP_0_SCK_PIN MAX31865_SCK_PIN - #endif - #if !PIN_EXISTS(TEMP_0_MOSI) && PIN_EXISTS(MAX31865_MOSI) // MOSI for '65 only - #define TEMP_0_MOSI_PIN MAX31865_MOSI_PIN - #endif - #endif - - // Software SPI - enable if MISO/SCK are defined. - #if PIN_EXISTS(TEMP_0_MISO) && PIN_EXISTS(TEMP_0_SCK) && DISABLED(TEMP_SENSOR_0_FORCE_HW_SPI) - #if TEMP_SENSOR_0_IS_MAX31865 && !PIN_EXISTS(TEMP_0_MOSI) - #error "TEMP_SENSOR_0 MAX31865 requires TEMP_0_MOSI_PIN defined for Software SPI. To use Hardware SPI instead, undefine MISO/SCK or enable TEMP_SENSOR_0_FORCE_HW_SPI." - #else - #define TEMP_SENSOR_0_HAS_SPI_PINS 1 - #endif - #endif - - #endif // TEMP_SENSOR_IS_MAX_TC(0) - - #if TEMP_SENSOR_IS_MAX_TC(1) || (TEMP_SENSOR_IS_MAX_TC(REDUNDANT) && REDUNDANT_TEMP_MATCH(SOURCE, E1)) - - #if !PIN_EXISTS(TEMP_1_CS) // SS2, CS2 - #if PIN_EXISTS(MAX6675_SS2) - #define TEMP_1_CS_PIN MAX6675_SS2_PIN - #elif PIN_EXISTS(MAX6675_CS) - #define TEMP_1_CS_PIN MAX6675_CS2_PIN - #elif PIN_EXISTS(MAX31855_SS2) - #define TEMP_1_CS_PIN MAX31855_SS2_PIN - #elif PIN_EXISTS(MAX31855_CS2) - #define TEMP_1_CS_PIN MAX31855_CS2_PIN - #elif PIN_EXISTS(MAX31865_SS2) - #define TEMP_1_CS_PIN MAX31865_SS2_PIN - #elif PIN_EXISTS(MAX31865_CS2) - #define TEMP_1_CS_PIN MAX31865_CS2_PIN - #endif - #endif - - #if TEMP_SENSOR_1_IS_MAX6675 - #if !PIN_EXISTS(TEMP_1_MISO) // DO - #if PIN_EXISTS(MAX6675_MISO) - #define TEMP_1_MISO_PIN MAX6675_MISO_PIN - #elif PIN_EXISTS(MAX6675_DO) - #define TEMP_1_MISO_PIN MAX6675_DO_PIN - #endif - #endif - #if !PIN_EXISTS(TEMP_1_SCK) && PIN_EXISTS(MAX6675_SCK) - #define TEMP_1_SCK_PIN MAX6675_SCK_PIN - #endif - - #elif TEMP_SENSOR_1_IS_MAX31855 - #if !PIN_EXISTS(TEMP_1_MISO) // DO - #if PIN_EXISTS(MAX31855_MISO) - #define TEMP_1_MISO_PIN MAX31855_MISO_PIN - #elif PIN_EXISTS(MAX31855_DO) - #define TEMP_1_MISO_PIN MAX31855_DO_PIN - #endif - #endif - #if !PIN_EXISTS(TEMP_1_SCK) && PIN_EXISTS(MAX31855_SCK) - #define TEMP_1_SCK_PIN MAX31855_SCK_PIN - #endif - - #elif TEMP_SENSOR_1_IS_MAX31865 - #if !PIN_EXISTS(TEMP_1_MISO) // DO - #if PIN_EXISTS(MAX31865_MISO) - #define TEMP_1_MISO_PIN MAX31865_MISO_PIN - #elif PIN_EXISTS(MAX31865_DO) - #define TEMP_1_MISO_PIN MAX31865_DO_PIN - #endif - #endif - #if !PIN_EXISTS(TEMP_1_SCK) && PIN_EXISTS(MAX31865_SCK) - #define TEMP_1_SCK_PIN MAX31865_SCK_PIN - #endif - #if !PIN_EXISTS(TEMP_1_MOSI) && PIN_EXISTS(MAX31865_MOSI) // MOSI for '65 only - #define TEMP_1_MOSI_PIN MAX31865_MOSI_PIN - #endif - #endif - - // Software SPI - enable if MISO/SCK are defined. - #if PIN_EXISTS(TEMP_1_MISO) && PIN_EXISTS(TEMP_1_SCK) && DISABLED(TEMP_SENSOR_1_FORCE_HW_SPI) - #if TEMP_SENSOR_1_IS_MAX31865 && !PIN_EXISTS(TEMP_1_MOSI) - #error "TEMP_SENSOR_1 MAX31865 requires TEMP_1_MOSI_PIN defined for Software SPI. To use Hardware SPI instead, undefine MISO/SCK or enable TEMP_SENSOR_1_FORCE_HW_SPI." - #else - #define TEMP_SENSOR_1_HAS_SPI_PINS 1 - #endif - #endif - - #endif // TEMP_SENSOR_IS_MAX_TC(1) - - #if TEMP_SENSOR_IS_MAX_TC(2) || (TEMP_SENSOR_IS_MAX_TC(REDUNDANT) && REDUNDANT_TEMP_MATCH(SOURCE, E2)) - - #if !PIN_EXISTS(TEMP_2_CS) // SS3, CS3 - #if PIN_EXISTS(MAX6675_SS3) - #define TEMP_2_CS_PIN MAX6675_SS3_PIN - #elif PIN_EXISTS(MAX6675_CS) - #define TEMP_2_CS_PIN MAX6675_CS3_PIN - #elif PIN_EXISTS(MAX31855_SS3) - #define TEMP_2_CS_PIN MAX31855_SS3_PIN - #elif PIN_EXISTS(MAX31855_CS3) - #define TEMP_2_CS_PIN MAX31855_CS3_PIN - #elif PIN_EXISTS(MAX31865_SS3) - #define TEMP_2_CS_PIN MAX31865_SS3_PIN - #elif PIN_EXISTS(MAX31865_CS3) - #define TEMP_2_CS_PIN MAX31865_CS3_PIN - #endif + // Software SPI - enable if MISO/SCK are defined. + #if (TEMP_SENSOR_IS_MAX_TC(0) || (TEMP_SENSOR_IS_MAX_TC(REDUNDANT) && REDUNDANT_TEMP_MATCH(SOURCE, E1))) \ + && PIN_EXISTS(TEMP_0_MISO) && PIN_EXISTS(TEMP_0_SCK) && DISABLED(TEMP_SENSOR_0_FORCE_HW_SPI) + #if TEMP_SENSOR_0_IS_MAX31865 && !PIN_EXISTS(TEMP_0_MOSI) + #error "TEMP_SENSOR_0 MAX31865 requires TEMP_0_MOSI_PIN defined for Software SPI. To use Hardware SPI instead, undefine MISO/SCK or enable TEMP_SENSOR_0_FORCE_HW_SPI." + #else + #define TEMP_SENSOR_0_HAS_SPI_PINS 1 #endif + #endif - #if TEMP_SENSOR_2_IS_MAX6675 - #if !PIN_EXISTS(TEMP_2_MISO) // DO - #if PIN_EXISTS(MAX6675_MISO) - #define TEMP_2_MISO_PIN MAX6675_MISO_PIN - #elif PIN_EXISTS(MAX6675_DO) - #define TEMP_2_MISO_PIN MAX6675_DO_PIN - #endif - #endif - #if !PIN_EXISTS(TEMP_2_SCK) && PIN_EXISTS(MAX6675_SCK) - #define TEMP_2_SCK_PIN MAX6675_SCK_PIN - #endif - - #elif TEMP_SENSOR_2_IS_MAX31855 - #if !PIN_EXISTS(TEMP_2_MISO) // DO - #if PIN_EXISTS(MAX31855_MISO) - #define TEMP_2_MISO_PIN MAX31855_MISO_PIN - #elif PIN_EXISTS(MAX31855_DO) - #define TEMP_2_MISO_PIN MAX31855_DO_PIN - #endif - #endif - #if !PIN_EXISTS(TEMP_2_SCK) && PIN_EXISTS(MAX31855_SCK) - #define TEMP_2_SCK_PIN MAX31855_SCK_PIN - #endif - - #elif TEMP_SENSOR_2_IS_MAX31865 - #if !PIN_EXISTS(TEMP_2_MISO) // DO - #if PIN_EXISTS(MAX31865_MISO) - #define TEMP_2_MISO_PIN MAX31865_MISO_PIN - #elif PIN_EXISTS(MAX31865_DO) - #define TEMP_2_MISO_PIN MAX31865_DO_PIN - #endif - #endif - #if !PIN_EXISTS(TEMP_2_SCK) && PIN_EXISTS(MAX31865_SCK) - #define TEMP_2_SCK_PIN MAX31865_SCK_PIN - #endif - #if !PIN_EXISTS(TEMP_2_MOSI) && PIN_EXISTS(MAX31865_MOSI) // MOSI for '65 only - #define TEMP_2_MOSI_PIN MAX31865_MOSI_PIN - #endif + #if (TEMP_SENSOR_IS_MAX_TC(1) || (TEMP_SENSOR_IS_MAX_TC(REDUNDANT) && REDUNDANT_TEMP_MATCH(SOURCE, E1))) \ + && PIN_EXISTS(TEMP_1_MISO) && PIN_EXISTS(TEMP_1_SCK) && DISABLED(TEMP_SENSOR_1_FORCE_HW_SPI) + #if TEMP_SENSOR_1_IS_MAX31865 && !PIN_EXISTS(TEMP_1_MOSI) + #error "TEMP_SENSOR_1 MAX31865 requires TEMP_1_MOSI_PIN defined for Software SPI. To use Hardware SPI instead, undefine MISO/SCK or enable TEMP_SENSOR_1_FORCE_HW_SPI." + #else + #define TEMP_SENSOR_1_HAS_SPI_PINS 1 #endif + #endif - // Software SPI - enable if MISO/SCK are defined. - #if PIN_EXISTS(TEMP_2_MISO) && PIN_EXISTS(TEMP_2_SCK) && DISABLED(TEMP_SENSOR_2_FORCE_HW_SPI) - #if TEMP_SENSOR_2_IS_MAX31865 && !PIN_EXISTS(TEMP_2_MOSI) - #error "TEMP_SENSOR_2 MAX31865 requires TEMP_2_MOSI_PIN defined for Software SPI. To use Hardware SPI instead, undefine MISO/SCK or enable TEMP_SENSOR_2_FORCE_HW_SPI." - #else - #define TEMP_SENSOR_2_HAS_SPI_PINS 1 - #endif + #if (TEMP_SENSOR_IS_MAX_TC(2) || (TEMP_SENSOR_IS_MAX_TC(REDUNDANT) && REDUNDANT_TEMP_MATCH(SOURCE, E2))) \ + && PIN_EXISTS(TEMP_2_MISO) && PIN_EXISTS(TEMP_2_SCK) && DISABLED(TEMP_SENSOR_2_FORCE_HW_SPI) + #if TEMP_SENSOR_2_IS_MAX31865 && !PIN_EXISTS(TEMP_2_MOSI) + #error "TEMP_SENSOR_2 MAX31865 requires TEMP_2_MOSI_PIN defined for Software SPI. To use Hardware SPI instead, undefine MISO/SCK or enable TEMP_SENSOR_2_FORCE_HW_SPI." + #else + #define TEMP_SENSOR_2_HAS_SPI_PINS 1 #endif - - #endif // TEMP_SENSOR_IS_MAX_TC(2) + #endif // // User-defined thermocouple libraries diff --git a/Marlin/src/inc/MarlinConfig.h b/Marlin/src/inc/MarlinConfig.h index 8fdb4b9baeae..ad11cc67b25f 100644 --- a/Marlin/src/inc/MarlinConfig.h +++ b/Marlin/src/inc/MarlinConfig.h @@ -46,6 +46,7 @@ #include "../core/types.h" // Ahead of sanity-checks + #include "Changes.h" #include "SanityCheck.h" #include HAL_PATH(../HAL, inc/SanityCheck.h) diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 40e76b61498c..f496a4e8801a 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -89,643 +89,28 @@ */ #ifndef MOTHERBOARD #error "MOTHERBOARD is required. You must '#define MOTHERBOARD BOARD_MYNAME' (not just '#define BOARD_MYNAME')." -#elif !defined(X_BED_SIZE) || !defined(Y_BED_SIZE) - #error "X_BED_SIZE and Y_BED_SIZE are now required!" -#elif WATCH_TEMP_PERIOD > 500 - #error "WATCH_TEMP_PERIOD now uses seconds instead of milliseconds." -#elif DISABLED(THERMAL_PROTECTION_HOTENDS) && (defined(WATCH_TEMP_PERIOD) || defined(THERMAL_PROTECTION_PERIOD)) - #error "Thermal Runaway Protection for hotends is now enabled with THERMAL_PROTECTION_HOTENDS." -#elif DISABLED(THERMAL_PROTECTION_BED) && defined(THERMAL_PROTECTION_BED_PERIOD) - #error "Thermal Runaway Protection for the bed is now enabled with THERMAL_PROTECTION_BED." -#elif defined(NO_FAN_SLOWING_IN_PID_TUNING) - #error "NO_FAN_SLOWING_IN_PID_TUNING is now TEMP_TUNING_MAINTAIN_FAN." -#elif (CORE_IS_XZ || CORE_IS_YZ) && ENABLED(Z_LATE_ENABLE) - #error "Z_LATE_ENABLE can't be used with COREXZ, COREZX, COREYZ, or COREZY." -#elif defined(X_HOME_RETRACT_MM) - #error "[XYZ]_HOME_RETRACT_MM settings have been renamed [XYZ]_HOME_BUMP_MM." -#elif defined(SDCARDDETECTINVERTED) - #error "SDCARDDETECTINVERTED is now SD_DETECT_STATE (HIGH)." -#elif defined(SD_DETECT_INVERTED) - #error "SD_DETECT_INVERTED is now SD_DETECT_STATE (HIGH)." -#elif defined(BTENABLED) - #error "BTENABLED is now BLUETOOTH." -#elif defined(CUSTOM_MENDEL_NAME) - #error "CUSTOM_MENDEL_NAME is now CUSTOM_MACHINE_NAME." -#elif defined(HAS_AUTOMATIC_VERSIONING) - #error "HAS_AUTOMATIC_VERSIONING is now CUSTOM_VERSION_FILE." -#elif defined(USE_AUTOMATIC_VERSIONING) - #error "USE_AUTOMATIC_VERSIONING is now CUSTOM_VERSION_FILE." -#elif defined(SDSLOW) - #error "SDSLOW deprecated. Set SD_SPI_SPEED to SPI_HALF_SPEED instead." -#elif defined(SDEXTRASLOW) - #error "SDEXTRASLOW deprecated. Set SD_SPI_SPEED to SPI_QUARTER_SPEED instead." -#elif defined(FILAMENT_SENSOR) - #error "FILAMENT_SENSOR is now FILAMENT_WIDTH_SENSOR." -#elif defined(ENDSTOPPULLUP_FIL_RUNOUT) - #error "ENDSTOPPULLUP_FIL_RUNOUT is now FIL_RUNOUT_PULLUP." -#elif defined(DISABLE_MAX_ENDSTOPS) || defined(DISABLE_MIN_ENDSTOPS) - #error "DISABLE_MAX_ENDSTOPS and DISABLE_MIN_ENDSTOPS deprecated. Use individual USE_*_PLUG options instead." -#elif defined(LANGUAGE_INCLUDE) - #error "LANGUAGE_INCLUDE has been replaced by LCD_LANGUAGE." -#elif defined(EXTRUDER_OFFSET_X) || defined(EXTRUDER_OFFSET_Y) - #error "EXTRUDER_OFFSET_[XY] is deprecated. Use HOTEND_OFFSET_[XY] instead." -#elif defined(PID_PARAMS_PER_EXTRUDER) - #error "PID_PARAMS_PER_EXTRUDER is deprecated. Use PID_PARAMS_PER_HOTEND instead." -#elif defined(EXTRUDER_WATTS) || defined(BED_WATTS) - #error "EXTRUDER_WATTS and BED_WATTS are deprecated and should be removed." -#elif defined(SERVO_ENDSTOP_ANGLES) - #error "SERVO_ENDSTOP_ANGLES is deprecated. Use Z_SERVO_ANGLES instead." -#elif defined(X_ENDSTOP_SERVO_NR) || defined(Y_ENDSTOP_SERVO_NR) - #error "X_ENDSTOP_SERVO_NR and Y_ENDSTOP_SERVO_NR are deprecated and should be removed." -#elif defined(Z_ENDSTOP_SERVO_NR) - #error "Z_ENDSTOP_SERVO_NR is now Z_PROBE_SERVO_NR." -#elif defined(DEFAULT_XYJERK) - #error "DEFAULT_XYJERK is deprecated. Use DEFAULT_XJERK and DEFAULT_YJERK instead." -#elif defined(XY_TRAVEL_SPEED) - #error "XY_TRAVEL_SPEED is now XY_PROBE_FEEDRATE." -#elif defined(XY_PROBE_SPEED) - #error "XY_PROBE_SPEED is now XY_PROBE_FEEDRATE." -#elif defined(Z_PROBE_SPEED_FAST) - #error "Z_PROBE_SPEED_FAST is now Z_PROBE_FEEDRATE_FAST." -#elif defined(Z_PROBE_SPEED_SLOW) - #error "Z_PROBE_SPEED_SLOW is now Z_PROBE_FEEDRATE_SLOW." -#elif defined(PROBE_SERVO_DEACTIVATION_DELAY) - #error "PROBE_SERVO_DEACTIVATION_DELAY is deprecated. Use DEACTIVATE_SERVOS_AFTER_MOVE instead." -#elif defined(SERVO_DEACTIVATION_DELAY) - #error "SERVO_DEACTIVATION_DELAY is now SERVO_DELAY." -#elif ENABLED(FILAMENTCHANGEENABLE) - #error "FILAMENTCHANGEENABLE is now ADVANCED_PAUSE_FEATURE." -#elif ENABLED(FILAMENT_CHANGE_FEATURE) - #error "FILAMENT_CHANGE_FEATURE is now ADVANCED_PAUSE_FEATURE." -#elif defined(FILAMENT_CHANGE_X_POS) || defined(FILAMENT_CHANGE_Y_POS) - #error "FILAMENT_CHANGE_[XY]_POS is now set with NOZZLE_PARK_POINT." -#elif defined(FILAMENT_CHANGE_Z_ADD) - #error "FILAMENT_CHANGE_Z_ADD is now set with NOZZLE_PARK_POINT." -#elif defined(FILAMENT_CHANGE_XY_FEEDRATE) - #error "FILAMENT_CHANGE_XY_FEEDRATE is now NOZZLE_PARK_XY_FEEDRATE." -#elif defined(FILAMENT_CHANGE_Z_FEEDRATE) - #error "FILAMENT_CHANGE_Z_FEEDRATE is now NOZZLE_PARK_Z_FEEDRATE." -#elif defined(PAUSE_PARK_X_POS) || defined(PAUSE_PARK_Y_POS) - #error "PAUSE_PARK_[XY]_POS is now set with NOZZLE_PARK_POINT." -#elif defined(PAUSE_PARK_Z_ADD) - #error "PAUSE_PARK_Z_ADD is now set with NOZZLE_PARK_POINT." -#elif defined(PAUSE_PARK_XY_FEEDRATE) - #error "PAUSE_PARK_XY_FEEDRATE is now NOZZLE_PARK_XY_FEEDRATE." -#elif defined(PAUSE_PARK_Z_FEEDRATE) - #error "PAUSE_PARK_Z_FEEDRATE is now NOZZLE_PARK_Z_FEEDRATE." -#elif defined(FILAMENT_CHANGE_RETRACT_FEEDRATE) - #error "FILAMENT_CHANGE_RETRACT_FEEDRATE is now PAUSE_PARK_RETRACT_FEEDRATE." -#elif defined(FILAMENT_CHANGE_RETRACT_LENGTH) - #error "FILAMENT_CHANGE_RETRACT_LENGTH is now PAUSE_PARK_RETRACT_LENGTH." -#elif defined(FILAMENT_CHANGE_EXTRUDE_FEEDRATE) - #error "FILAMENT_CHANGE_EXTRUDE_FEEDRATE is now ADVANCED_PAUSE_PURGE_FEEDRATE." -#elif defined(ADVANCED_PAUSE_EXTRUDE_FEEDRATE) - #error "ADVANCED_PAUSE_EXTRUDE_FEEDRATE is now ADVANCED_PAUSE_PURGE_FEEDRATE." -#elif defined(FILAMENT_CHANGE_EXTRUDE_LENGTH) - #error "FILAMENT_CHANGE_EXTRUDE_LENGTH is now ADVANCED_PAUSE_PURGE_LENGTH." -#elif defined(ADVANCED_PAUSE_EXTRUDE_LENGTH) - #error "ADVANCED_PAUSE_EXTRUDE_LENGTH is now ADVANCED_PAUSE_PURGE_LENGTH." -#elif defined(FILAMENT_CHANGE_NOZZLE_TIMEOUT) - #error "FILAMENT_CHANGE_NOZZLE_TIMEOUT is now PAUSE_PARK_NOZZLE_TIMEOUT." -#elif defined(FILAMENT_CHANGE_NUMBER_OF_ALERT_BEEPS) - #error "FILAMENT_CHANGE_NUMBER_OF_ALERT_BEEPS is now FILAMENT_CHANGE_ALERT_BEEPS." -#elif defined(FILAMENT_CHANGE_NO_STEPPER_TIMEOUT) - #error "FILAMENT_CHANGE_NO_STEPPER_TIMEOUT is now PAUSE_PARK_NO_STEPPER_TIMEOUT." -#elif defined(PLA_PREHEAT_HOTEND_TEMP) - #error "PLA_PREHEAT_HOTEND_TEMP is now PREHEAT_1_TEMP_HOTEND." -#elif defined(PLA_PREHEAT_HPB_TEMP) - #error "PLA_PREHEAT_HPB_TEMP is now PREHEAT_1_TEMP_BED." -#elif defined(PLA_PREHEAT_FAN_SPEED) - #error "PLA_PREHEAT_FAN_SPEED is now PREHEAT_1_FAN_SPEED." -#elif defined(ABS_PREHEAT_HOTEND_TEMP) - #error "ABS_PREHEAT_HOTEND_TEMP is now PREHEAT_2_TEMP_HOTEND." -#elif defined(ABS_PREHEAT_HPB_TEMP) - #error "ABS_PREHEAT_HPB_TEMP is now PREHEAT_2_TEMP_BED." -#elif defined(ABS_PREHEAT_FAN_SPEED) - #error "ABS_PREHEAT_FAN_SPEED is now PREHEAT_2_FAN_SPEED." -#elif defined(ENDSTOPS_ONLY_FOR_HOMING) - #error "ENDSTOPS_ONLY_FOR_HOMING is deprecated. Use (disable) ENDSTOPS_ALWAYS_ON_DEFAULT instead." -#elif defined(HOMING_FEEDRATE) - #error "HOMING_FEEDRATE is now set using the HOMING_FEEDRATE_MM_M array instead." -#elif (defined(HOMING_FEEDRATE_XY) || defined(HOMING_FEEDRATE_Z)) && !defined(HOMING_FEEDRATE_MM_M) - #error "HOMING_FEEDRATE_XY and HOMING_FEEDRATE_Z are now set using the HOMING_FEEDRATE_MM_M array instead." -#elif defined(MANUAL_HOME_POSITIONS) - #error "MANUAL_HOME_POSITIONS is deprecated. Set MANUAL_[XYZ]_HOME_POS as-needed instead." -#elif defined(PID_ADD_EXTRUSION_RATE) - #error "PID_ADD_EXTRUSION_RATE is now PID_EXTRUSION_SCALING and is DISABLED by default." -#elif defined(Z_RAISE_BEFORE_HOMING) - #error "Z_RAISE_BEFORE_HOMING is now Z_CLEARANCE_FOR_HOMING." -#elif defined(MIN_Z_HEIGHT_FOR_HOMING) - #error "MIN_Z_HEIGHT_FOR_HOMING is now Z_CLEARANCE_FOR_HOMING." -#elif defined(Z_HOMING_HEIGHT) - #error "Z_HOMING_HEIGHT is now Z_CLEARANCE_FOR_HOMING." -#elif defined(Z_RAISE_BEFORE_PROBING) || defined(Z_RAISE_AFTER_PROBING) - #error "Z_RAISE_(BEFORE|AFTER)_PROBING are deprecated. Use Z_CLEARANCE_DEPLOY_PROBE and Z_AFTER_PROBING instead." -#elif defined(Z_RAISE_PROBE_DEPLOY_STOW) || defined(Z_RAISE_BETWEEN_PROBINGS) - #error "Z_RAISE_PROBE_DEPLOY_STOW and Z_RAISE_BETWEEN_PROBINGS are now Z_CLEARANCE_DEPLOY_PROBE and Z_CLEARANCE_BETWEEN_PROBES." -#elif defined(Z_PROBE_DEPLOY_HEIGHT) || defined(Z_PROBE_TRAVEL_HEIGHT) - #error "Z_PROBE_DEPLOY_HEIGHT and Z_PROBE_TRAVEL_HEIGHT are now Z_CLEARANCE_DEPLOY_PROBE and Z_CLEARANCE_BETWEEN_PROBES." -#elif defined(MANUAL_BED_LEVELING) - #error "MANUAL_BED_LEVELING is now LCD_BED_LEVELING." -#elif defined(MESH_HOME_SEARCH_Z) - #error "MESH_HOME_SEARCH_Z is now LCD_PROBE_Z_RANGE." -#elif defined(MANUAL_PROBE_Z_RANGE) - #error "MANUAL_PROBE_Z_RANGE is now LCD_PROBE_Z_RANGE." -#elif !defined(MIN_STEPS_PER_SEGMENT) - #error "Please replace 'const int dropsegments' with '#define MIN_STEPS_PER_SEGMENT' (and increase by 1)." -#elif MIN_STEPS_PER_SEGMENT <= 0 - #error "MIN_STEPS_PER_SEGMENT must be at least 1." -#elif defined(PREVENT_DANGEROUS_EXTRUDE) - #error "PREVENT_DANGEROUS_EXTRUDE is now PREVENT_COLD_EXTRUSION." -#elif defined(SCARA) - #error "SCARA is now MORGAN_SCARA." -#elif defined(ENABLE_AUTO_BED_LEVELING) - #error "ENABLE_AUTO_BED_LEVELING is deprecated. Specify AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_BILINEAR, or AUTO_BED_LEVELING_3POINT." -#elif defined(AUTO_BED_LEVELING_FEATURE) - #error "AUTO_BED_LEVELING_FEATURE is deprecated. Specify AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_BILINEAR, or AUTO_BED_LEVELING_3POINT." -#elif defined(ABL_GRID_POINTS) - #error "ABL_GRID_POINTS is now GRID_MAX_POINTS_X and GRID_MAX_POINTS_Y." -#elif defined(ABL_GRID_POINTS_X) || defined(ABL_GRID_POINTS_Y) - #error "ABL_GRID_POINTS_[XY] is now GRID_MAX_POINTS_[XY]." -#elif defined(ABL_GRID_MAX_POINTS_X) || defined(ABL_GRID_MAX_POINTS_Y) - #error "ABL_GRID_MAX_POINTS_[XY] is now GRID_MAX_POINTS_[XY]." -#elif defined(MESH_NUM_X_POINTS) || defined(MESH_NUM_Y_POINTS) - #error "MESH_NUM_[XY]_POINTS is now GRID_MAX_POINTS_[XY]." -#elif defined(UBL_MESH_NUM_X_POINTS) || defined(UBL_MESH_NUM_Y_POINTS) - #error "UBL_MESH_NUM_[XY]_POINTS is now GRID_MAX_POINTS_[XY]." -#elif defined(UBL_G26_MESH_VALIDATION) - #error "UBL_G26_MESH_VALIDATION is now G26_MESH_VALIDATION." -#elif defined(UBL_MESH_EDIT_ENABLED) - #error "UBL_MESH_EDIT_ENABLED is now G26_MESH_VALIDATION." -#elif defined(UBL_MESH_EDITING) - #error "UBL_MESH_EDITING is now G26_MESH_VALIDATION." -#elif defined(BLTOUCH_HEATERS_OFF) - #error "BLTOUCH_HEATERS_OFF is now PROBING_HEATERS_OFF." -#elif defined(BLTOUCH_V3) - #error "BLTOUCH_V3 is obsolete." -#elif defined(BLTOUCH_FORCE_OPEN_DRAIN_MODE) - #error "BLTOUCH_FORCE_OPEN_DRAIN_MODE is obsolete." -#elif defined(BEEPER) - #error "BEEPER is now BEEPER_PIN." -#elif defined(SDCARDDETECT) - #error "SDCARDDETECT is now SD_DETECT_PIN." -#elif defined(STAT_LED_RED) || defined(STAT_LED_BLUE) - #error "STAT_LED_RED/STAT_LED_BLUE are now STAT_LED_RED_PIN/STAT_LED_BLUE_PIN." -#elif defined(LCD_PIN_BL) - #error "LCD_PIN_BL is now LCD_BACKLIGHT_PIN." -#elif defined(LCD_PIN_RESET) - #error "LCD_PIN_RESET is now LCD_RESET_PIN." -#elif defined(EXTRUDER_0_AUTO_FAN_PIN) || defined(EXTRUDER_1_AUTO_FAN_PIN) || defined(EXTRUDER_2_AUTO_FAN_PIN) || defined(EXTRUDER_3_AUTO_FAN_PIN) - #error "EXTRUDER_[0123]_AUTO_FAN_PIN is now E[0123]_AUTO_FAN_PIN." -#elif defined(PID_FAN_SCALING) && !HAS_FAN - #error "PID_FAN_SCALING needs at least one fan enabled." -#elif defined(min_software_endstops) || defined(max_software_endstops) - #error "(min|max)_software_endstops are now (MIN|MAX)_SOFTWARE_ENDSTOPS." -#elif ENABLED(Z_PROBE_SLED) && defined(SLED_PIN) - #error "Replace SLED_PIN with SOL1_PIN (applies to both Z_PROBE_SLED and SOLENOID_PROBE)." -#elif defined(CONTROLLERFAN_PIN) - #error "CONTROLLERFAN_PIN is now CONTROLLER_FAN_PIN, enabled with USE_CONTROLLER_FAN." -#elif defined(CONTROLLERFAN_SPEED) - #error "CONTROLLERFAN_SPEED is now CONTROLLERFAN_SPEED_ACTIVE." -#elif defined(CONTROLLERFAN_SECS) - #error "CONTROLLERFAN_SECS is now CONTROLLERFAN_IDLE_TIME." -#elif defined(MIN_RETRACT) - #error "MIN_RETRACT is now MIN_AUTORETRACT and MAX_AUTORETRACT." -#elif defined(ADVANCE) - #error "ADVANCE is now LIN_ADVANCE." -#elif defined(LIN_ADVANCE_E_D_RATIO) - #error "LIN_ADVANCE (1.5) no longer uses LIN_ADVANCE_E_D_RATIO." -#elif defined(NEOPIXEL_RGBW_LED) - #error "NEOPIXEL_RGBW_LED is now NEOPIXEL_LED." -#elif ENABLED(DELTA) && defined(DELTA_PROBEABLE_RADIUS) - #error "Remove DELTA_PROBEABLE_RADIUS and use PROBING_MARGIN to inset the probe area instead." -#elif ENABLED(DELTA) && defined(DELTA_CALIBRATION_RADIUS) - #error "Remove DELTA_CALIBRATION_RADIUS and use PROBING_MARGIN to inset the probe area instead." -#elif defined(UBL_MESH_INSET) - #error "UBL_MESH_INSET is now just MESH_INSET." -#elif defined(UBL_MESH_MIN_X) || defined(UBL_MESH_MIN_Y) || defined(UBL_MESH_MAX_X) || defined(UBL_MESH_MAX_Y) - #error "UBL_MESH_(MIN|MAX)_[XY] is now just MESH_(MIN|MAX)_[XY]." -#elif defined(ABL_PROBE_PT_1_X) || defined(ABL_PROBE_PT_1_Y) || defined(ABL_PROBE_PT_2_X) || defined(ABL_PROBE_PT_2_Y) || defined(ABL_PROBE_PT_3_X) || defined(ABL_PROBE_PT_3_Y) - #error "ABL_PROBE_PT_[123]_[XY] is no longer required. Please remove it." -#elif defined(UBL_PROBE_PT_1_X) || defined(UBL_PROBE_PT_1_Y) || defined(UBL_PROBE_PT_2_X) || defined(UBL_PROBE_PT_2_Y) || defined(UBL_PROBE_PT_3_X) || defined(UBL_PROBE_PT_3_Y) - #error "UBL_PROBE_PT_[123]_[XY] is no longer required. Please remove it." -#elif defined(MIN_PROBE_EDGE) - #error "MIN_PROBE_EDGE is now called PROBING_MARGIN." -#elif defined(MIN_PROBE_EDGE_LEFT) - #error "MIN_PROBE_EDGE_LEFT is now called PROBING_MARGIN_LEFT." -#elif defined(MIN_PROBE_EDGE_RIGHT) - #error "MIN_PROBE_EDGE_RIGHT is now called PROBING_MARGIN_RIGHT." -#elif defined(MIN_PROBE_EDGE_FRONT) - #error "MIN_PROBE_EDGE_FRONT is now called PROBING_MARGIN_FRONT." -#elif defined(MIN_PROBE_EDGE_BACK) - #error "MIN_PROBE_EDGE_BACK is now called PROBING_MARGIN_BACK." -#elif defined(LEFT_PROBE_BED_POSITION) - #error "LEFT_PROBE_BED_POSITION is obsolete. Set a margin with PROBING_MARGIN or PROBING_MARGIN_LEFT instead." -#elif defined(RIGHT_PROBE_BED_POSITION) - #error "RIGHT_PROBE_BED_POSITION is obsolete. Set a margin with PROBING_MARGIN or PROBING_MARGIN_RIGHT instead." -#elif defined(FRONT_PROBE_BED_POSITION) - #error "FRONT_PROBE_BED_POSITION is obsolete. Set a margin with PROBING_MARGIN or PROBING_MARGIN_FRONT instead." -#elif defined(BACK_PROBE_BED_POSITION) - #error "BACK_PROBE_BED_POSITION is obsolete. Set a margin with PROBING_MARGIN or PROBING_MARGIN_BACK instead." -#elif defined(ENABLE_MESH_EDIT_GFX_OVERLAY) - #error "ENABLE_MESH_EDIT_GFX_OVERLAY is now MESH_EDIT_GFX_OVERLAY." -#elif defined(BABYSTEP_ZPROBE_GFX_REVERSE) - #error "BABYSTEP_ZPROBE_GFX_REVERSE is now set by OVERLAY_GFX_REVERSE." -#elif defined(UBL_GRANULAR_SEGMENTATION_FOR_CARTESIAN) - #error "UBL_GRANULAR_SEGMENTATION_FOR_CARTESIAN is now SEGMENT_LEVELED_MOVES." -#elif HAS_PID_HEATING && (defined(K1) || !defined(PID_K1)) - #error "K1 is now PID_K1." -#elif defined(PROBE_DOUBLE_TOUCH) - #error "PROBE_DOUBLE_TOUCH is now MULTIPLE_PROBING." -#elif defined(ANET_KEYPAD_LCD) - #error "ANET_KEYPAD_LCD is now ZONESTAR_LCD." -#elif defined(LCD_I2C_SAINSMART_YWROBOT) - #error "LCD_I2C_SAINSMART_YWROBOT is now LCD_SAINSMART_I2C_(1602|2004)." -#elif defined(MEASURED_LOWER_LIMIT) || defined(MEASURED_UPPER_LIMIT) - #error "MEASURED_(UPPER|LOWER)_LIMIT is now FILWIDTH_ERROR_MARGIN." -#elif defined(HAVE_TMCDRIVER) - #error "HAVE_TMCDRIVER is now [AXIS]_DRIVER_TYPE TMC26X." -#elif defined(STEALTHCHOP) - #error "STEALTHCHOP is now STEALTHCHOP_(XY|Z|E)." -#elif defined(HAVE_TMC26X) - #error "HAVE_TMC26X is now [AXIS]_DRIVER_TYPE TMC26X." -#elif defined(HAVE_TMC2130) - #error "HAVE_TMC2130 is now [AXIS]_DRIVER_TYPE TMC2130." -#elif defined(HAVE_TMC2208) - #error "HAVE_TMC2208 is now [AXIS]_DRIVER_TYPE TMC2208." -#elif defined(HAVE_L6470DRIVER) - #error "HAVE_L6470DRIVER is obsolete. L64xx stepper drivers are no longer supported in Marlin." -#elif defined(X_IS_TMC) || defined(X2_IS_TMC) || defined(Y_IS_TMC) || defined(Y2_IS_TMC) || defined(Z_IS_TMC) || defined(Z2_IS_TMC) || defined(Z3_IS_TMC) \ - || defined(E0_IS_TMC) || defined(E1_IS_TMC) || defined(E2_IS_TMC) || defined(E3_IS_TMC) || defined(E4_IS_TMC) || defined(E5_IS_TMC) || defined(E6_IS_TMC) || defined(E7_IS_TMC) - #error "[AXIS]_IS_TMC is now [AXIS]_DRIVER_TYPE TMC26X." -#elif defined(X_IS_TMC26X) || defined(X2_IS_TMC26X) || defined(Y_IS_TMC26X) || defined(Y2_IS_TMC26X) || defined(Z_IS_TMC26X) || defined(Z2_IS_TMC26X) || defined(Z3_IS_TMC26X) \ - || defined(E0_IS_TMC26X) || defined(E1_IS_TMC26X) || defined(E2_IS_TMC26X) || defined(E3_IS_TMC26X) || defined(E4_IS_TMC26X) || defined(E5_IS_TMC26X) || defined(E6_IS_TMC26X) || defined(E7_IS_TMC26X) - #error "[AXIS]_IS_TMC26X is now [AXIS]_DRIVER_TYPE TMC26X." -#elif defined(X_IS_TMC2130) || defined(X2_IS_TMC2130) || defined(Y_IS_TMC2130) || defined(Y2_IS_TMC2130) || defined(Z_IS_TMC2130) || defined(Z2_IS_TMC2130) || defined(Z3_IS_TMC2130) \ - || defined(E0_IS_TMC2130) || defined(E1_IS_TMC2130) || defined(E2_IS_TMC2130) || defined(E3_IS_TMC2130) || defined(E4_IS_TMC2130) || defined(E5_IS_TMC2130) || defined(E6_IS_TMC2130) || defined(E7_IS_TMC2130) - #error "[AXIS]_IS_TMC2130 is now [AXIS]_DRIVER_TYPE TMC2130." -#elif defined(X_IS_TMC2208) || defined(X2_IS_TMC2208) || defined(Y_IS_TMC2208) || defined(Y2_IS_TMC2208) || defined(Z_IS_TMC2208) || defined(Z2_IS_TMC2208) || defined(Z3_IS_TMC2208) \ - || defined(E0_IS_TMC2208) || defined(E1_IS_TMC2208) || defined(E2_IS_TMC2208) || defined(E3_IS_TMC2208) || defined(E4_IS_TMC2208) || defined(E5_IS_TMC2208) || defined(E6_IS_TMC2208) || defined(E7_IS_TMC2208) - #error "[AXIS]_IS_TMC2208 is now [AXIS]_DRIVER_TYPE TMC2208." -#elif defined(AUTOMATIC_CURRENT_CONTROL) - #error "AUTOMATIC_CURRENT_CONTROL is now MONITOR_DRIVER_STATUS." -#elif defined(FILAMENT_CHANGE_LOAD_LENGTH) - #error "FILAMENT_CHANGE_LOAD_LENGTH is now FILAMENT_CHANGE_FAST_LOAD_LENGTH." -#elif defined(LEVEL_CORNERS_INSET) - #error "LEVEL_CORNERS_INSET is now BED_TRAMMING_INSET_LFRB." -#elif defined(BEZIER_JERK_CONTROL) - #error "BEZIER_JERK_CONTROL is now S_CURVE_ACCELERATION." -#elif HAS_JUNCTION_DEVIATION && defined(JUNCTION_DEVIATION_FACTOR) - #error "JUNCTION_DEVIATION_FACTOR is now JUNCTION_DEVIATION_MM." -#elif defined(JUNCTION_ACCELERATION_FACTOR) - #error "JUNCTION_ACCELERATION_FACTOR is obsolete. Delete it from Configuration_adv.h." -#elif defined(JUNCTION_ACCELERATION) - #error "JUNCTION_ACCELERATION is obsolete. Delete it from Configuration_adv.h." -#elif defined(MAX7219_DEBUG_STEPPER_HEAD) - #error "MAX7219_DEBUG_STEPPER_HEAD is now MAX7219_DEBUG_PLANNER_HEAD." -#elif defined(MAX7219_DEBUG_STEPPER_TAIL) - #error "MAX7219_DEBUG_STEPPER_TAIL is now MAX7219_DEBUG_PLANNER_TAIL." -#elif defined(MAX7219_DEBUG_STEPPER_QUEUE) - #error "MAX7219_DEBUG_STEPPER_QUEUE is now MAX7219_DEBUG_PLANNER_QUEUE." -#elif defined(ENDSTOP_NOISE_FILTER) - #error "ENDSTOP_NOISE_FILTER is now ENDSTOP_NOISE_THRESHOLD [2-7]." -#elif defined(RETRACT_ZLIFT) - #error "RETRACT_ZLIFT is now RETRACT_ZRAISE." -#elif defined(TOOLCHANGE_FS_INIT_BEFORE_SWAP) - #error "TOOLCHANGE_FS_INIT_BEFORE_SWAP is now TOOLCHANGE_FS_SLOW_FIRST_PRIME." -#elif defined(TOOLCHANGE_PARK_ZLIFT) || defined(TOOLCHANGE_UNPARK_ZLIFT) - #error "TOOLCHANGE_PARK_ZLIFT and TOOLCHANGE_UNPARK_ZLIFT are now TOOLCHANGE_ZRAISE." -#elif defined(SINGLENOZZLE_TOOLCHANGE_ZRAISE) - #error "SINGLENOZZLE_TOOLCHANGE_ZRAISE is now TOOLCHANGE_ZRAISE." -#elif defined(SINGLENOZZLE_SWAP_LENGTH) - #error "SINGLENOZZLE_SWAP_LENGTH is now TOOLCHANGE_FIL_SWAP_LENGTH." -#elif defined(SINGLENOZZLE_SWAP_RETRACT_SPEED) - #error "SINGLENOZZLE_SWAP_RETRACT_SPEED is now TOOLCHANGE_FIL_SWAP_RETRACT_SPEED." -#elif defined(SINGLENOZZLE_SWAP_PRIME_SPEED) - #error "SINGLENOZZLE_SWAP_PRIME_SPEED is now TOOLCHANGE_FIL_SWAP_PRIME_SPEED." -#elif defined(SINGLENOZZLE_SWAP_PARK) - #error "SINGLENOZZLE_SWAP_PARK is now TOOLCHANGE_PARK." -#elif defined(SINGLENOZZLE_TOOLCHANGE_XY) - #error "SINGLENOZZLE_TOOLCHANGE_XY is now TOOLCHANGE_PARK_XY." -#elif defined(SINGLENOZZLE_PARK_XY_FEEDRATE) - #error "SINGLENOZZLE_PARK_XY_FEEDRATE is now TOOLCHANGE_PARK_XY_FEEDRATE." -#elif defined(PARKING_EXTRUDER_SECURITY_RAISE) - #error "PARKING_EXTRUDER_SECURITY_RAISE is now TOOLCHANGE_ZRAISE." -#elif defined(SWITCHING_TOOLHEAD_SECURITY_RAISE) - #error "SWITCHING_TOOLHEAD_SECURITY_RAISE is now TOOLCHANGE_ZRAISE." -#elif defined(G0_FEEDRATE) && G0_FEEDRATE == 0 - #error "G0_FEEDRATE is now used to set the G0 feedrate." -#elif defined(MBL_Z_STEP) - #error "MBL_Z_STEP is now MESH_EDIT_Z_STEP." -#elif defined(CHDK) - #error "CHDK is now CHDK_PIN." -#elif ANY_PIN( \ - MAX6675_SS, MAX6675_SS2, MAX6675_SS3, MAX6675_CS, MAX6675_CS2, MAX6675_CS3,\ - MAX31855_SS, MAX31855_SS2, MAX31855_SS3, MAX31855_CS, MAX31855_CS2, MAX31855_CS3, \ - MAX31865_SS, MAX31865_SS2, MAX31865_SS3, MAX31865_CS, MAX31865_CS2, MAX31865_CS3) - #warning "MAX*_SS_PIN, MAX*_SS2_PIN, MAX*_SS3_PIN, MAX*_CS_PIN, MAX*_CS2_PIN, and MAX*_CS3_PIN, are deprecated and will be removed in a future version. Please use TEMP_0_CS_PIN/TEMP_1_CS_PIN/TEMP_2_CS_PIN instead." -#elif ANY_PIN(MAX6675_SCK, MAX31855_SCK, MAX31865_SCK) - #warning "MAX*_SCK_PIN is deprecated and will be removed in a future version. Please use TEMP_0_SCK_PIN/TEMP_1_SCK_PIN/TEMP_2_SCK_PIN instead." -#elif ANY_PIN(MAX6675_MISO, MAX6675_DO, MAX31855_MISO, MAX31855_DO, MAX31865_MISO, MAX31865_DO) - #warning "MAX*_MISO_PIN and MAX*_DO_PIN are deprecated and will be removed in a future version. Please use TEMP_0_MISO_PIN/TEMP_1_MISO_PIN/TEMP_2_MISO_PIN instead." -#elif PIN_EXISTS(MAX31865_MOSI) - #warning "MAX31865_MOSI_PIN is deprecated and will be removed in a future version. Please use TEMP_0_MOSI_PIN/TEMP_1_MOSI_PIN/TEMP_2_MOSI_PIN instead." -#elif ANY_PIN(THERMO_CS1_PIN, THERMO_CS2_PIN, THERMO_CS3_PIN, THERMO_DO_PIN, THERMO_SCK_PIN) - #error "THERMO_*_PIN is now TEMP_n_CS_PIN, TEMP_n_SCK_PIN, TEMP_n_MOSI_PIN, TEMP_n_MISO_PIN." -#elif defined(MAX31865_SENSOR_OHMS) - #error "MAX31865_SENSOR_OHMS is now MAX31865_SENSOR_OHMS_0." -#elif defined(MAX31865_CALIBRATION_OHMS) - #error "MAX31865_CALIBRATION_OHMS is now MAX31865_CALIBRATION_OHMS_0." -#elif defined(SPINDLE_LASER_ENABLE) - #error "SPINDLE_LASER_ENABLE is now SPINDLE_FEATURE or LASER_FEATURE." -#elif defined(SPINDLE_LASER_ENABLE_PIN) - #error "SPINDLE_LASER_ENABLE_PIN is now SPINDLE_LASER_ENA_PIN." -#elif defined(SPINDLE_DIR_CHANGE) - #error "SPINDLE_DIR_CHANGE is now SPINDLE_CHANGE_DIR." -#elif defined(SPINDLE_STOP_ON_DIR_CHANGE) - #error "SPINDLE_STOP_ON_DIR_CHANGE is now SPINDLE_CHANGE_DIR_STOP." -#elif defined(SPINDLE_LASER_ACTIVE_HIGH) - #error "SPINDLE_LASER_ACTIVE_HIGH is now SPINDLE_LASER_ACTIVE_STATE." -#elif defined(SPINDLE_LASER_ENABLE_INVERT) - #error "SPINDLE_LASER_ENABLE_INVERT is now SPINDLE_LASER_ACTIVE_STATE." -#elif defined(LASER_POWER_INLINE) - #error "LASER_POWER_INLINE is not required, inline mode is enabled with 'M3 I' and disabled with 'M5 I'." -#elif defined(LASER_POWER_INLINE_TRAPEZOID) - #error "LASER_POWER_INLINE_TRAPEZOID is now LASER_POWER_TRAP." -#elif defined(LASER_POWER_INLINE_TRAPEZOID_CONT) - #error "LASER_POWER_INLINE_TRAPEZOID_CONT is replaced with LASER_POWER_TRAP." -#elif defined(LASER_POWER_INLINE_TRAPEZOID_PER) - #error "LASER_POWER_INLINE_TRAPEZOID_CONT_PER replaced with LASER_POWER_TRAP." -#elif defined(LASER_POWER_INLINE_CONTINUOUS) - #error "LASER_POWER_INLINE_CONTINUOUS is not required, inline mode is enabled with 'M3 I' and disabled with 'M5 I'." -#elif defined(CUTTER_POWER_DISPLAY) - #error "CUTTER_POWER_DISPLAY is now CUTTER_POWER_UNIT." -#elif defined(CHAMBER_HEATER_PIN) - #error "CHAMBER_HEATER_PIN is now HEATER_CHAMBER_PIN." -#elif defined(TMC_Z_CALIBRATION) - #error "TMC_Z_CALIBRATION has been deprecated in favor of MECHANICAL_GANTRY_CALIBRATION." -#elif defined(Z_MIN_PROBE_ENDSTOP) - #error "Z_MIN_PROBE_ENDSTOP is no longer required. Please remove it." -#elif defined(DUAL_NOZZLE_DUPLICATION_MODE) - #error "DUAL_NOZZLE_DUPLICATION_MODE is now MULTI_NOZZLE_DUPLICATION." -#elif defined(MENU_ITEM_CASE_LIGHT) - #error "MENU_ITEM_CASE_LIGHT is now CASE_LIGHT_MENU." -#elif defined(CASE_LIGHT_NEOPIXEL_COLOR) - #error "CASE_LIGHT_NEOPIXEL_COLOR is now CASE_LIGHT_DEFAULT_COLOR." -#elif defined(ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED) - #error "ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED is now SD_ABORT_ON_ENDSTOP_HIT." -#elif defined(LPC_SD_LCD) || defined(LPC_SD_ONBOARD) || defined(LPC_SD_CUSTOM_CABLE) - #error "LPC_SD_(LCD|ONBOARD|CUSTOM_CABLE) are now SDCARD_CONNECTION." -#elif defined(USB_SD_DISABLED) - #error "USB_SD_DISABLED is now NO_SD_HOST_DRIVE." -#elif defined(USB_SD_ONBOARD) - #error "USB_SD_ONBOARD is obsolete. Disable NO_SD_HOST_DRIVE instead." -#elif defined(PSU_ACTIVE_HIGH) - #error "PSU_ACTIVE_HIGH is now PSU_ACTIVE_STATE." -#elif POWER_SUPPLY == 1 - #error "Replace POWER_SUPPLY 1 by enabling PSU_CONTROL and setting PSU_ACTIVE_STATE to 'LOW'." -#elif POWER_SUPPLY == 2 - #error "Replace POWER_SUPPLY 2 by enabling PSU_CONTROL and setting PSU_ACTIVE_STATE to 'HIGH'." -#elif defined(POWER_SUPPLY) - #error "POWER_SUPPLY is now obsolete. Please remove it." -#elif defined(MKS_ROBIN_TFT) - #error "MKS_ROBIN_TFT is now FSMC_GRAPHICAL_TFT." -#elif defined(SDPOWER) - #error "SDPOWER is now SDPOWER_PIN." -#elif defined(STRING_SPLASH_LINE1) || defined(STRING_SPLASH_LINE2) - #error "STRING_SPLASH_LINE[12] are now obsolete. Please remove them." -#elif defined(Z_PROBE_ALLEN_KEY_DEPLOY_1_X) || defined(Z_PROBE_ALLEN_KEY_STOW_1_X) - #error "Z_PROBE_ALLEN_KEY_(DEPLOY|STOW) coordinates are now a single setting." -#elif defined(X_PROBE_OFFSET_FROM_EXTRUDER) || defined(Y_PROBE_OFFSET_FROM_EXTRUDER) || defined(Z_PROBE_OFFSET_FROM_EXTRUDER) - #error "[XYZ]_PROBE_OFFSET_FROM_EXTRUDER is now NOZZLE_TO_PROBE_OFFSET." -#elif defined(MIN_PROBE_X) || defined(MIN_PROBE_Y) || defined(MAX_PROBE_X) || defined(MAX_PROBE_Y) - #error "(MIN|MAX)_PROBE_[XY] are now calculated at runtime. Please remove them." -#elif defined(Z_STEPPER_ALIGN_X) || defined(Z_STEPPER_ALIGN_X) - #error "Z_STEPPER_ALIGN_X and Z_STEPPER_ALIGN_Y are now combined as Z_STEPPER_ALIGN_XY." -#elif defined(JUNCTION_DEVIATION) - #error "JUNCTION_DEVIATION is no longer required. (See CLASSIC_JERK). Please remove it." -#elif defined(BABYSTEP_MULTIPLICATOR) - #error "BABYSTEP_MULTIPLICATOR is now BABYSTEP_MULTIPLICATOR_[XY|Z]." -#elif defined(LULZBOT_TOUCH_UI) - #error "LULZBOT_TOUCH_UI is now TOUCH_UI_FTDI_EVE." -#elif defined(PS_DEFAULT_OFF) - #error "PS_DEFAULT_OFF is now PSU_DEFAULT_OFF." -#elif defined(FILAMENT_UNLOAD_RETRACT_LENGTH) - #error "FILAMENT_UNLOAD_RETRACT_LENGTH is now FILAMENT_UNLOAD_PURGE_RETRACT." -#elif defined(FILAMENT_UNLOAD_DELAY) - #error "FILAMENT_UNLOAD_DELAY is now FILAMENT_UNLOAD_PURGE_DELAY." -#elif defined(HOME_USING_SPREADCYCLE) - #error "HOME_USING_SPREADCYCLE is now obsolete. Please remove it." -#elif defined(DGUS_LCD) - #error "DGUS_LCD is now DGUS_LCD_UI ORIGIN|FYSETC|HIPRECY)." -#elif defined(DGUS_SERIAL_PORT) - #error "DGUS_SERIAL_PORT is now LCD_SERIAL_PORT." -#elif defined(DGUS_BAUDRATE) - #error "DGUS_BAUDRATE is now LCD_BAUDRATE." -#elif defined(DGUS_STATS_RX_BUFFER_OVERRUNS) - #error "DGUS_STATS_RX_BUFFER_OVERRUNS is now STATS_RX_BUFFER_OVERRUNS." -#elif defined(ANYCUBIC_LCD_SERIAL_PORT) - #error "ANYCUBIC_LCD_SERIAL_PORT is now LCD_SERIAL_PORT." -#elif defined(INTERNAL_SERIAL_PORT) - #error "INTERNAL_SERIAL_PORT is now MMU2_SERIAL_PORT." -#elif defined(X_DUAL_ENDSTOPS_ADJUSTMENT) || defined(Y_DUAL_ENDSTOPS_ADJUSTMENT) || defined(Z_DUAL_ENDSTOPS_ADJUSTMENT) - #error "[XYZ]_DUAL_ENDSTOPS_ADJUSTMENT is now [XYZ]2_ENDSTOP_ADJUSTMENT." -#elif defined(Z_TRIPLE_ENDSTOPS_ADJUSTMENT2) || defined(Z_TRIPLE_ENDSTOPS_ADJUSTMENT3) - #error "Z_TRIPLE_ENDSTOPS_ADJUSTMENT[23] is now Z[23]_ENDSTOP_ADJUSTMENT." -#elif defined(Z_QUAD_ENDSTOPS_ADJUSTMENT2) || defined(Z_QUAD_ENDSTOPS_ADJUSTMENT3) || defined(Z_QUAD_ENDSTOPS_ADJUSTMENT4) - #error "Z_QUAD_ENDSTOPS_ADJUSTMENT[234] is now Z[234]_ENDSTOP_ADJUSTMENT." -#elif defined(Z_DUAL_STEPPER_DRIVERS) - #error "Z_DUAL_STEPPER_DRIVERS is no longer needed and should be removed." -#elif defined(Z_TRIPLE_STEPPER_DRIVERS) - #error "Z_TRIPLE_STEPPER_DRIVERS is no longer needed and should be removed." -#elif defined(Z_QUAD_STEPPER_DRIVERS) - #error "Z_QUAD_STEPPER_DRIVERS is no longer needed and should be removed." -#elif defined(Z_DUAL_ENDSTOPS) || defined(Z_TRIPLE_ENDSTOPS) || defined(Z_QUAD_ENDSTOPS) - #error "Z_(DUAL|TRIPLE|QUAD)_ENDSTOPS is now Z_MULTI_ENDSTOPS." -#elif defined(DUGS_UI_MOVE_DIS_OPTION) - #error "DUGS_UI_MOVE_DIS_OPTION is spelled DGUS_UI_MOVE_DIS_OPTION." -#elif defined(ORIG_E0_AUTO_FAN_PIN) || defined(ORIG_E1_AUTO_FAN_PIN) || defined(ORIG_E2_AUTO_FAN_PIN) || defined(ORIG_E3_AUTO_FAN_PIN) || defined(ORIG_E4_AUTO_FAN_PIN) || defined(ORIG_E5_AUTO_FAN_PIN) || defined(ORIG_E6_AUTO_FAN_PIN) || defined(ORIG_E7_AUTO_FAN_PIN) - #error "ORIG_Ex_AUTO_FAN_PIN is now just Ex_AUTO_FAN_PIN." -#elif defined(ORIG_CHAMBER_AUTO_FAN_PIN) - #error "ORIG_CHAMBER_AUTO_FAN_PIN is now just CHAMBER_AUTO_FAN_PIN." -#elif defined(HOMING_BACKOFF_MM) - #error "HOMING_BACKOFF_MM is now HOMING_BACKOFF_POST_MM." -#elif defined(X_HOME_BUMP_MM) || defined(Y_HOME_BUMP_MM) || defined(Z_HOME_BUMP_MM) - #error "[XYZ]_HOME_BUMP_MM is now HOMING_BUMP_MM." -#elif defined(DIGIPOT_I2C) - #error "DIGIPOT_I2C is now DIGIPOT_MCP4451 (or DIGIPOT_MCP4018)." -#elif defined(TOUCH_BUTTONS) - #error "TOUCH_BUTTONS is now TOUCH_SCREEN." -#elif defined(LCD_FULL_PIXEL_HEIGHT) || defined(LCD_FULL_PIXEL_WIDTH) - #error "LCD_FULL_PIXEL_(WIDTH|HEIGHT) is deprecated and should be removed." -#elif defined(FSMC_UPSCALE) - #error "FSMC_UPSCALE is now GRAPHICAL_TFT_UPSCALE." -#elif defined(ANYCUBIC_TFT_MODEL) - #error "ANYCUBIC_TFT_MODEL is now ANYCUBIC_LCD_I3MEGA." -#elif defined(EVENT_GCODE_SD_STOP) - #error "EVENT_GCODE_SD_STOP is now EVENT_GCODE_SD_ABORT." -#elif defined(GRAPHICAL_TFT_ROTATE_180) - #error "GRAPHICAL_TFT_ROTATE_180 is now TFT_ROTATION set to TFT_ROTATE_180." -#elif defined(PROBE_OFFSET_START) - #error "PROBE_OFFSET_START is now PROBE_OFFSET_WIZARD_START_Z." -#elif defined(POWER_LOSS_PULL) - #error "POWER_LOSS_PULL is now specifically POWER_LOSS_PULL(UP|DOWN)." -#elif defined(SHORT_MANUAL_Z_MOVE) - #error "SHORT_MANUAL_Z_MOVE is now FINE_MANUAL_MOVE, applying to Z on most printers." -#elif defined(FIL_RUNOUT_INVERTING) - #if FIL_RUNOUT_INVERTING - #error "FIL_RUNOUT_INVERTING true is now FIL_RUNOUT_STATE HIGH." - #else - #error "FIL_RUNOUT_INVERTING false is now FIL_RUNOUT_STATE LOW." - #endif -#elif defined(ASSISTED_TRAMMING_MENU_ITEM) - #error "ASSISTED_TRAMMING_MENU_ITEM is deprecated and should be removed." -#elif defined(UNKNOWN_Z_NO_RAISE) - #error "UNKNOWN_Z_NO_RAISE is replaced by setting Z_IDLE_HEIGHT to Z_MAX_POS." -#elif defined(Z_AFTER_DEACTIVATE) - #error "Z_AFTER_DEACTIVATE is replaced by Z_IDLE_HEIGHT." -#elif defined(MEATPACK) - #error "MEATPACK is now enabled with MEATPACK_ON_SERIAL_PORT_1, MEATPACK_ON_SERIAL_PORT_2, etc." -#elif defined(CUSTOM_USER_MENUS) - #error "CUSTOM_USER_MENUS has been replaced by CUSTOM_MENU_MAIN and CUSTOM_MENU_CONFIG." -#elif defined(MKS_LCD12864) - #error "MKS_LCD12864 is now MKS_LCD12864A or MKS_LCD12864B." -#elif defined(DOGM_SD_PERCENT) - #error "DOGM_SD_PERCENT is now SHOW_PROGRESS_PERCENT." -#elif defined(NEOPIXEL_BKGD_LED_INDEX) - #error "NEOPIXEL_BKGD_LED_INDEX is now NEOPIXEL_BKGD_INDEX_FIRST." -#elif defined(TEMP_SENSOR_1_AS_REDUNDANT) - #error "TEMP_SENSOR_1_AS_REDUNDANT is now TEMP_SENSOR_REDUNDANT, with associated TEMP_SENSOR_REDUNDANT_* config." -#elif defined(MAX_REDUNDANT_TEMP_SENSOR_DIFF) - #error "MAX_REDUNDANT_TEMP_SENSOR_DIFF is now TEMP_SENSOR_REDUNDANT_MAX_DIFF" -#elif defined(LCD_ALEPHOBJECTS_CLCD_UI) - #error "LCD_ALEPHOBJECTS_CLCD_UI is now LCD_LULZBOT_CLCD_UI." -#elif defined(MIN_ARC_SEGMENTS) - #error "MIN_ARC_SEGMENTS is now MIN_CIRCLE_SEGMENTS." -#elif defined(ARC_SEGMENTS_PER_R) - #error "ARC_SUPPORT no longer uses ARC_SEGMENTS_PER_R." -#elif ENABLED(ARC_SUPPORT) && (!defined(MIN_ARC_SEGMENT_MM) || !defined(MAX_ARC_SEGMENT_MM)) - #error "ARC_SUPPORT now requires MIN_ARC_SEGMENT_MM and MAX_ARC_SEGMENT_MM." -#elif defined(LASER_POWER_INLINE) - #error "LASER_POWER_INLINE is obsolete." -#elif defined(SPINDLE_LASER_PWM) - #error "SPINDLE_LASER_PWM (true) is now set with SPINDLE_LASER_USE_PWM (enabled)." -#elif ANY(IS_RAMPS_EEB, IS_RAMPS_EEF, IS_RAMPS_EFB, IS_RAMPS_EFF, IS_RAMPS_SF) - #error "The IS_RAMPS_* conditionals (for heater/fan/bed pins) are now called FET_ORDER_*." -#elif defined(PROBE_TEMP_COMPENSATION) - #error "PROBE_TEMP_COMPENSATION is now set using the PTC_PROBE, PTC_BED, PTC_HOTEND options." -#elif defined(BTC_PROBE_TEMP) - #error "BTC_PROBE_TEMP is now PTC_PROBE_TEMP." -#elif defined(LCD_SCREEN_ROT_90) - #error "LCD_SCREEN_ROT_90 is now LCD_SCREEN_ROTATE with a value of 90." -#elif defined(LCD_SCREEN_ROT_180) - #error "LCD_SCREEN_ROT_180 is now LCD_SCREEN_ROTATE with a value of 180." -#elif defined(LCD_SCREEN_ROT_270) - #error "LCD_SCREEN_ROT_270 is now LCD_SCREEN_ROTATE with a value of 270." -#elif defined(DEFAULT_LCD_BRIGHTNESS) - #error "DEFAULT_LCD_BRIGHTNESS is now LCD_BRIGHTNESS_DEFAULT." -#elif defined(NOZZLE_PARK_X_ONLY) - #error "NOZZLE_PARK_X_ONLY is now NOZZLE_PARK_MOVE 1." -#elif defined(NOZZLE_PARK_Y_ONLY) - #error "NOZZLE_PARK_Y_ONLY is now NOZZLE_PARK_MOVE 2." -#elif defined(Z_STEPPER_ALIGN_KNOWN_STEPPER_POSITIONS) - #error "Z_STEPPER_ALIGN_KNOWN_STEPPER_POSITIONS is now just Z_STEPPER_ALIGN_STEPPER_XY." -#elif defined(DWIN_CREALITY_LCD_ENHANCED) - #error "DWIN_CREALITY_LCD_ENHANCED is now DWIN_LCD_PROUI." -#elif defined(LINEAR_AXES) - #error "LINEAR_AXES is now NUM_AXES (to account for rotational axes)." -#elif defined(X_DUAL_STEPPER_DRIVERS) - #error "X_DUAL_STEPPER_DRIVERS is no longer needed and should be removed." -#elif defined(Y_DUAL_STEPPER_DRIVERS) - #error "Y_DUAL_STEPPER_DRIVERS is no longer needed and should be removed." -#elif defined(NUM_Z_STEPPER_DRIVERS) - #error "NUM_Z_STEPPER_DRIVERS is no longer needed and should be removed." -#elif defined(LEVEL_BED_CORNERS) - #error "LEVEL_BED_CORNERS is now LCD_BED_TRAMMING." -#elif defined(LEVEL_CORNERS_INSET_LFRB) || defined(LEVEL_CORNERS_HEIGHT) || defined(LEVEL_CORNERS_Z_HOP) || defined(LEVEL_CORNERS_USE_PROBE) || defined(LEVEL_CORNERS_PROBE_TOLERANCE) || defined(LEVEL_CORNERS_VERIFY_RAISED) || defined(LEVEL_CORNERS_AUDIO_FEEDBACK) - #error "LEVEL_CORNERS_* settings have been renamed BED_TRAMMING_*." -#elif defined(LEVEL_CENTER_TOO) - #error "LEVEL_CENTER_TOO is now BED_TRAMMING_INCLUDE_CENTER." -#elif defined(TOUCH_IDLE_SLEEP) - #error "TOUCH_IDLE_SLEEP (seconds) is now TOUCH_IDLE_SLEEP_MINS (minutes)." -#elif defined(LCD_BACKLIGHT_TIMEOUT) - #error "LCD_BACKLIGHT_TIMEOUT (seconds) is now LCD_BACKLIGHT_TIMEOUT_MINS (minutes)." -#elif defined(LCD_SET_PROGRESS_MANUALLY) - #error "LCD_SET_PROGRESS_MANUALLY is now SET_PROGRESS_MANUALLY." -#elif defined(USE_M73_REMAINING_TIME) - #error "USE_M73_REMAINING_TIME is now SET_REMAINING_TIME." -#elif defined(SHOW_SD_PERCENT) - #error "SHOW_SD_PERCENT is now SHOW_PROGRESS_PERCENT." -#elif defined(LIN_ADVANCE_K) - #error "LIN_ADVANCE_K is now ADVANCE_K." -#elif defined(EXTRA_LIN_ADVANCE_K) - #error "EXTRA_LIN_ADVANCE_K is now ADVANCE_K_EXTRA." -#elif defined(POLAR_SEGMENTS_PER_SECOND) || defined(DELTA_SEGMENTS_PER_SECOND) || defined(SCARA_SEGMENTS_PER_SECOND) || defined(TPARA_SEGMENTS_PER_SECOND) - #error "(POLAR|DELTA|SCARA|TPARA)_SEGMENTS_PER_SECOND is now DEFAULT_SEGMENTS_PER_SECOND." -#elif defined(TMC_SW_MOSI) || defined(TMC_SW_MISO) || defined(TMC_SW_SCK) - #error "TMC_SW_(MOSI|MISO|SCK) is now TMC_SPI_(MOSI|MISO|SCK)." -#elif ANY(DGUS_LCD_UI_ORIGIN, DGUS_LCD_UI_FYSETC, DGUS_LCD_UI_HIPRECY, DGUS_LCD_UI_MKS, DGUS_LCD_UI_RELOADED) && !defined(DGUS_LCD_UI) - #error "DGUS_LCD_UI_[TYPE] is now set using DGUS_LCD_UI TYPE." -#elif defined(DELTA_PRINTABLE_RADIUS) - #error "DELTA_PRINTABLE_RADIUS is now PRINTABLE_RADIUS." -#elif defined(SCARA_PRINTABLE_RADIUS) - #error "SCARA_PRINTABLE_RADIUS is now PRINTABLE_RADIUS." -#elif defined(SCARA_FEEDRATE_SCALING) - #error "SCARA_FEEDRATE_SCALING is now FEEDRATE_SCALING." -#elif defined(MILLISECONDS_PREHEAT_TIME) - #error "MILLISECONDS_PREHEAT_TIME is now PREHEAT_TIME_HOTEND_MS." -#elif defined(EXPERIMENTAL_SCURVE) - #error "EXPERIMENTAL_SCURVE is no longer needed and should be removed." -#elif defined(BABYSTEP_ZPROBE_GFX_OVERLAY) - #error "BABYSTEP_ZPROBE_GFX_OVERLAY is now BABYSTEP_GFX_OVERLAY." -#elif defined(DISABLE_INACTIVE_EXTRUDER) - #error "DISABLE_INACTIVE_EXTRUDER is now DISABLE_OTHER_EXTRUDERS." -#elif defined(INVERT_X_STEP_PIN) || defined(INVERT_Y_STEP_PIN) || defined(INVERT_Z_STEP_PIN) || defined(INVERT_I_STEP_PIN) || defined(INVERT_J_STEP_PIN) || defined(INVERT_K_STEP_PIN) || defined(INVERT_U_STEP_PIN) || defined(INVERT_V_STEP_PIN) || defined(INVERT_W_STEP_PIN) || defined(INVERT_E_STEP_PIN) - #error "INVERT_*_STEP_PIN true is now STEP_STATE_* LOW, and INVERT_*_STEP_PIN false is now STEP_STATE_* HIGH." -#elif defined(PROBE_PT_1_X) || defined(PROBE_PT_1_Y) || defined(PROBE_PT_2_X) || defined(PROBE_PT_2_Y) || defined(PROBE_PT_3_X) || defined(PROBE_PT_3_Y) - #error "PROBE_PT_[123]_[XY] is now defined using PROBE_PT_[123] with an array { x, y }." -#elif defined(SQUARE_WAVE_STEPPING) - #error "SQUARE_WAVE_STEPPING is now EDGE_STEPPING." -#elif defined(FAN_PIN) - #error "FAN_PIN is now FAN0_PIN." -#elif defined(X_MIN_ENDSTOP_INVERTING) || defined(Y_MIN_ENDSTOP_INVERTING) || defined(Z_MIN_ENDSTOP_INVERTING) \ - || defined(I_MIN_ENDSTOP_INVERTING) || defined(J_MIN_ENDSTOP_INVERTING) || defined(K_MIN_ENDSTOP_INVERTING) \ - || defined(U_MIN_ENDSTOP_INVERTING) || defined(V_MIN_ENDSTOP_INVERTING) || defined(W_MIN_ENDSTOP_INVERTING) \ - || defined(X_MAX_ENDSTOP_INVERTING) || defined(Y_MAX_ENDSTOP_INVERTING) || defined(Z_MAX_ENDSTOP_INVERTING) \ - || defined(I_MAX_ENDSTOP_INVERTING) || defined(J_MAX_ENDSTOP_INVERTING) || defined(K_MAX_ENDSTOP_INVERTING) \ - || defined(U_MAX_ENDSTOP_INVERTING) || defined(V_MAX_ENDSTOP_INVERTING) || defined(W_MAX_ENDSTOP_INVERTING) \ - || defined(Z_MIN_PROBE_ENDSTOP_INVERTING) - #error "*_ENDSTOP_INVERTING false/true is now set with *_ENDSTOP_HIT_STATE HIGH/LOW." -#elif defined(DISABLE_INACTIVE_X) || defined(DISABLE_INACTIVE_Y) || defined(DISABLE_INACTIVE_Z) \ - || defined(DISABLE_INACTIVE_I) || defined(DISABLE_INACTIVE_J) || defined(DISABLE_INACTIVE_K) \ - || defined(DISABLE_INACTIVE_U) || defined(DISABLE_INACTIVE_V) || defined(DISABLE_INACTIVE_W) || defined(DISABLE_INACTIVE_E) - #error "DISABLE_INACTIVE_[XYZIJKUVWE] is now DISABLE_IDLE_[XYZIJKUVWE]." -#elif defined(DEFAULT_STEPPER_DEACTIVE_TIME) - #error "DEFAULT_STEPPER_DEACTIVE_TIME is now DEFAULT_STEPPER_TIMEOUT_SEC." -#elif defined(TFT_SHARED_SPI) - #error "TFT_SHARED_SPI is now TFT_SHARED_IO." -#elif defined(LCD_PINS_ENABLE) - #error "LCD_PINS_ENABLE is now LCD_PINS_EN." -#endif - -// L64xx stepper drivers have been removed -#define _L6470 0x6470 -#define _L6474 0x6474 -#define _L6480 0x6480 -#define _POWERSTEP01 0xF00D -#if HAS_DRIVER(L6470) - #error "L6470 stepper drivers are no longer supported in Marlin." -#elif HAS_DRIVER(L6474) - #error "L6474 stepper drivers are no longer supported in Marlin." -#elif HAS_DRIVER(L6480) - #error "L6480 stepper drivers are no longer supported in Marlin." -#elif HAS_DRIVER(POWERSTEP01) - #error "POWERSTEP01 stepper drivers are no longer supported in Marlin." -#endif -#undef _L6470 -#undef _L6474 -#undef _L6480 -#undef _POWERSTEP01 +#endif + +/** + * Required Version defines + */ +#ifndef SHORT_BUILD_VERSION + #error "SHORT_BUILD_VERSION must be specified." +#elif !defined(DETAILED_BUILD_VERSION) + #error "BUILD_VERSION must be specified." +#elif !defined(STRING_DISTRIBUTION_DATE) + #error "STRING_DISTRIBUTION_DATE must be specified." +#elif !defined(PROTOCOL_VERSION) + #error "PROTOCOL_VERSION must be specified." +#elif !defined(MACHINE_NAME) + #error "MACHINE_NAME must be specified." +#elif !defined(SOURCE_CODE_URL) + #error "SOURCE_CODE_URL must be specified." +#elif !defined(DEFAULT_MACHINE_UUID) + #error "DEFAULT_MACHINE_UUID must be specified." +#elif !defined(WEBSITE_URL) + #error "WEBSITE_URL must be specified." +#endif // Check AXIS_RELATIVE_MODES constexpr float arm[] = AXIS_RELATIVE_MODES; @@ -823,27 +208,6 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #endif #endif // HAS_PTC -/** - * Marlin release, version and default string - */ -#ifndef SHORT_BUILD_VERSION - #error "SHORT_BUILD_VERSION must be specified." -#elif !defined(DETAILED_BUILD_VERSION) - #error "BUILD_VERSION must be specified." -#elif !defined(STRING_DISTRIBUTION_DATE) - #error "STRING_DISTRIBUTION_DATE must be specified." -#elif !defined(PROTOCOL_VERSION) - #error "PROTOCOL_VERSION must be specified." -#elif !defined(MACHINE_NAME) - #error "MACHINE_NAME must be specified." -#elif !defined(SOURCE_CODE_URL) - #error "SOURCE_CODE_URL must be specified." -#elif !defined(DEFAULT_MACHINE_UUID) - #error "DEFAULT_MACHINE_UUID must be specified." -#elif !defined(WEBSITE_URL) - #error "WEBSITE_URL must be specified." -#endif - /** * Serial */ @@ -895,11 +259,17 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #endif /** - * Validate that the bed size fits + * Validate bed size */ -static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS) are too narrow to contain X_BED_SIZE."); -#if HAS_Y_AXIS - static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS) are too narrow to contain Y_BED_SIZE."); +#if !defined(X_BED_SIZE) || !defined(Y_BED_SIZE) + #error "X_BED_SIZE and Y_BED_SIZE are now required!" +#else + #if HAS_Y_AXIS + static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS) are too narrow to contain X_BED_SIZE."); + #endif + #if HAS_Y_AXIS + static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS) are too narrow to contain Y_BED_SIZE."); + #endif #endif /** @@ -1568,6 +938,11 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS #error "FANMUX0_PIN and FANMUX1_PIN must be set before FANMUX2_PIN can be set." #endif +// PID Fan Scaling requires a fan +#if defined(PID_FAN_SCALING) && !HAS_FAN + #error "PID_FAN_SCALING needs at least one fan enabled." +#endif + /** * Limited user-controlled fans */ diff --git a/Marlin/src/pins/esp32/pins_PANDA_common.h b/Marlin/src/pins/esp32/pins_PANDA_common.h index 971525622acb..b24babd96b53 100644 --- a/Marlin/src/pins/esp32/pins_PANDA_common.h +++ b/Marlin/src/pins/esp32/pins_PANDA_common.h @@ -63,10 +63,10 @@ #define TEMP_BED_PIN 36 // Analog Input #if ENABLED(MAX31856_PANDAPI) - #define MAX31856_CLK_PIN 29 - #define MAX31856_MISO_PIN 24 - #define MAX31856_MOSI_PIN 28 - #define MAX31856_CS_PIN 27 + #define TEMP_0_CLK_PIN 29 + #define TEMP_0_MISO_PIN 24 + #define TEMP_0_MOSI_PIN 28 + #define TEMP_0_CS_PIN 27 #endif // From aaf55a21ad9fa0f72e166b4b3f74fda427ccf91f Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 23 Apr 2023 02:07:42 -0500 Subject: [PATCH 058/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20UBL=20safe=20measu?= =?UTF-8?q?re=20move=20with=20extra=20axes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to 7e79fc5b --- Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp index 5bc5e6ec6136..7277b293aae7 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp +++ b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp @@ -883,7 +883,7 @@ void set_message_with_feedback(FSTR_P const fstr) { save_ubl_active_state_and_disable(); // Disable bed level correction for probing do_blocking_move_to( - NUM_AXIS_LIST( + xyz_pos_t({ 0.5f * ((MESH_MAX_X) - (MESH_MIN_X)), 0.5f * ((MESH_MAX_Y) - (MESH_MIN_Y)), MANUAL_PROBE_START_Z @@ -905,7 +905,7 @@ void set_message_with_feedback(FSTR_P const fstr) { #ifdef SAFE_BED_LEVELING_START_W , SAFE_BED_LEVELING_START_W #endif - ) + }) //, _MIN(planner.settings.max_feedrate_mm_s[X_AXIS], planner.settings.max_feedrate_mm_s[Y_AXIS]) * 0.5f ); planner.synchronize(); From 166935641a335664213cf21ff7ffe08c10eaf5be Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 23 Apr 2023 03:00:56 -0500 Subject: [PATCH 059/427] =?UTF-8?q?=F0=9F=94=A7=20Split=20followup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/SanityCheck.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index f496a4e8801a..196b1dc4e340 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -264,7 +264,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #if !defined(X_BED_SIZE) || !defined(Y_BED_SIZE) #error "X_BED_SIZE and Y_BED_SIZE are now required!" #else - #if HAS_Y_AXIS + #if HAS_X_AXIS static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS) are too narrow to contain X_BED_SIZE."); #endif #if HAS_Y_AXIS From 10ed5ab01c43a09429e1eb885196308fca71f492 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 23 Apr 2023 03:17:55 -0500 Subject: [PATCH 060/427] =?UTF-8?q?=F0=9F=9A=B8=20Improve=20PAUSE=5FPROBE?= =?UTF-8?q?=5FDEPLOY=5FWHEN=5FTRIGGERED=20(#25681)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/leds/pca9632.cpp | 2 +- Marlin/src/feature/leds/pca9632.h | 2 +- Marlin/src/lcd/HD44780/marlinui_HD44780.cpp | 2 +- Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp | 2 +- Marlin/src/lcd/marlinui.cpp | 2 +- Marlin/src/lcd/marlinui.h | 2 +- Marlin/src/libs/buzzer.h | 13 +++-- Marlin/src/module/probe.cpp | 56 ++++++++++++--------- Marlin/src/module/probe.h | 2 +- 9 files changed, 46 insertions(+), 37 deletions(-) diff --git a/Marlin/src/feature/leds/pca9632.cpp b/Marlin/src/feature/leds/pca9632.cpp index abea98800451..07c379a8154a 100644 --- a/Marlin/src/feature/leds/pca9632.cpp +++ b/Marlin/src/feature/leds/pca9632.cpp @@ -148,7 +148,7 @@ void PCA9632_set_led_color(const LEDColor &color) { #if ENABLED(PCA9632_BUZZER) - void PCA9632_buzz(const long, const uint16_t) { + void PCA9632_buzz(const long, const uint16_t=0) { uint8_t data[] = PCA9632_BUZZER_DATA; Wire.beginTransmission(I2C_ADDRESS(PCA9632_ADDRESS)); Wire.write(data, sizeof(data)); diff --git a/Marlin/src/feature/leds/pca9632.h b/Marlin/src/feature/leds/pca9632.h index fb59a8c18479..adef0200afb9 100644 --- a/Marlin/src/feature/leds/pca9632.h +++ b/Marlin/src/feature/leds/pca9632.h @@ -33,5 +33,5 @@ void PCA9632_set_led_color(const LEDColor &color); #if ENABLED(PCA9632_BUZZER) #include - void PCA9632_buzz(const long, const uint16_t); + void PCA9632_buzz(const long, const uint16_t=0); #endif diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp index e33814589c72..36831767f3e5 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp @@ -125,7 +125,7 @@ static void createChar_P(const char c, const byte * const ptr) { #if ENABLED(LCD_USE_I2C_BUZZER) - void MarlinUI::buzz(const long duration, const uint16_t freq) { + void MarlinUI::buzz(const long duration, const uint16_t freq/*=0*/) { if (sound_on) lcd.buzz(duration, freq); } diff --git a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp index 969b3fb0366e..6090b13732ae 100644 --- a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp +++ b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp @@ -299,7 +299,7 @@ uint8_t MarlinUI::read_slow_buttons() { } // Duration in ms, freq in Hz -void MarlinUI::buzz(const long duration, const uint16_t freq) { +void MarlinUI::buzz(const long duration, const uint16_t freq/*=0*/) { if (!PanelDetected) return; if (!sound_on) return; #if ENABLED(TFTGLCD_PANEL_SPI) diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index 0153a11a15b4..b3db930fe499 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -127,7 +127,7 @@ constexpr uint8_t epps = ENCODER_PULSES_PER_STEP; #endif #if ENABLED(PCA9632_BUZZER) - void MarlinUI::buzz(const long duration, const uint16_t freq) { + void MarlinUI::buzz(const long duration, const uint16_t freq/*=0*/) { if (sound_on) PCA9632_buzz(duration, freq); } #endif diff --git a/Marlin/src/lcd/marlinui.h b/Marlin/src/lcd/marlinui.h index 65176507fcd9..9c5e192fb270 100644 --- a/Marlin/src/lcd/marlinui.h +++ b/Marlin/src/lcd/marlinui.h @@ -228,7 +228,7 @@ class MarlinUI { #endif #if USE_MARLINUI_BUZZER - static void buzz(const long duration, const uint16_t freq); + static void buzz(const long duration, const uint16_t freq=0); #endif static void chirp() { diff --git a/Marlin/src/libs/buzzer.h b/Marlin/src/libs/buzzer.h index aa4d48ae5dd1..f6d5b49d7397 100644 --- a/Marlin/src/libs/buzzer.h +++ b/Marlin/src/libs/buzzer.h @@ -117,21 +117,20 @@ extern Buzzer buzzer; // Buzz directly via the BEEPER pin tone queue - #define BUZZ(d,f) buzzer.tone(d, f) + #define BUZZ(V...) buzzer.tone(V) #elif USE_MARLINUI_BUZZER // Use MarlinUI for a buzzer on the LCD - #include "../lcd/marlinui.h" - #define BUZZ(d,f) ui.buzz(d,f) + #define BUZZ(V...) ui.buzz(V) #else // No buzz capability - #define BUZZ(d,f) NOOP + #define BUZZ(...) NOOP #endif -#define ERR_BUZZ() BUZZ(400, 40); -#define OKAY_BUZZ() do{ BUZZ(100, 659); BUZZ(10, 0); BUZZ(100, 698); }while(0) -#define DONE_BUZZ(OK) do{ if (OK) OKAY_BUZZ(); else ERR_BUZZ(); }while(0) +#define ERR_BUZZ() BUZZ(400, 40) +#define OKAY_BUZZ() do{ BUZZ(100, 659); BUZZ(10); BUZZ(100, 698); }while(0) +#define DONE_BUZZ(ok) do{ if (ok) OKAY_BUZZ(); else ERR_BUZZ(); }while(0) diff --git a/Marlin/src/module/probe.cpp b/Marlin/src/module/probe.cpp index 3e7db5a0775b..a03125a73abb 100644 --- a/Marlin/src/module/probe.cpp +++ b/Marlin/src/module/probe.cpp @@ -352,25 +352,35 @@ xyz_pos_t Probe::offset; // Initialized by settings.load() FORCE_INLINE void probe_specific_action(const bool deploy) { DEBUG_SECTION(log_psa, "Probe::probe_specific_action", DEBUGGING(LEVELING)); #if ENABLED(PAUSE_BEFORE_DEPLOY_STOW) - do { - #if ENABLED(PAUSE_PROBE_DEPLOY_WHEN_TRIGGERED) - if (deploy != PROBE_TRIGGERED()) break; - #endif - OKAY_BUZZ(); + // Start preheating before waiting for user confirmation that the probe is ready. + TERN_(PREHEAT_BEFORE_PROBING, if (deploy) probe.preheat_for_probing(0, PROBING_BED_TEMP, true)); + + FSTR_P const ds_str = deploy ? GET_TEXT_F(MSG_MANUAL_DEPLOY) : GET_TEXT_F(MSG_MANUAL_STOW); + ui.return_to_status(); // To display the new status message + ui.set_status(ds_str, 99); + SERIAL_ECHOLNF(deploy ? GET_EN_TEXT_F(MSG_MANUAL_DEPLOY) : GET_EN_TEXT_F(MSG_MANUAL_STOW)); + + OKAY_BUZZ(); + + #if ENABLED(PAUSE_PROBE_DEPLOY_WHEN_TRIGGERED) + // Wait for the probe to be attached or detached before asking for explicit user confirmation + // Allow the user to interrupt + { + KEEPALIVE_STATE(PAUSED_FOR_USER); + TERN_(HAS_RESUME_CONTINUE, wait_for_user = true); + while (deploy == PROBE_TRIGGERED() && TERN1(HAS_RESUME_CONTINUE, wait_for_user)) idle_no_sleep(); + TERN_(HAS_RESUME_CONTINUE, wait_for_user = false); + OKAY_BUZZ(); + } + #endif - FSTR_P const ds_str = deploy ? GET_TEXT_F(MSG_MANUAL_DEPLOY) : GET_TEXT_F(MSG_MANUAL_STOW); - ui.return_to_status(); // To display the new status message - ui.set_status(ds_str, 99); - SERIAL_ECHOLNF(deploy ? GET_EN_TEXT_F(MSG_MANUAL_DEPLOY) : GET_EN_TEXT_F(MSG_MANUAL_STOW)); + TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(ds_str)); + TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(ds_str)); + TERN_(DWIN_LCD_PROUI, DWIN_Popup_Confirm(ICON_BLTouch, ds_str, FPSTR(CONTINUE_STR))); + TERN_(HAS_RESUME_CONTINUE, wait_for_user_response()); - TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(ds_str)); - TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(ds_str)); - TERN_(DWIN_LCD_PROUI, DWIN_Popup_Confirm(ICON_BLTouch, ds_str, FPSTR(CONTINUE_STR))); - TERN_(HAS_RESUME_CONTINUE, wait_for_user_response()); - ui.reset_status(); - - } while (ENABLED(PAUSE_PROBE_DEPLOY_WHEN_TRIGGERED)); + ui.reset_status(); #endif // PAUSE_BEFORE_DEPLOY_STOW @@ -435,7 +445,7 @@ FORCE_INLINE void probe_specific_action(const bool deploy) { * - If a preheat input is higher than the current target, raise the target temperature. * - If a preheat input is higher than the current temperature, wait for stabilization. */ - void Probe::preheat_for_probing(const celsius_t hotend_temp, const celsius_t bed_temp) { + void Probe::preheat_for_probing(const celsius_t hotend_temp, const celsius_t bed_temp, const bool early/*=false*/) { #if HAS_HOTEND && (PROBING_NOZZLE_TEMP || LEVELING_NOZZLE_TEMP) #define WAIT_FOR_NOZZLE_HEAT #endif @@ -443,7 +453,7 @@ FORCE_INLINE void probe_specific_action(const bool deploy) { #define WAIT_FOR_BED_HEAT #endif - LCD_MESSAGE(MSG_PREHEATING); + if (!early) LCD_MESSAGE(MSG_PREHEATING); DEBUG_ECHOPGM("Preheating "); @@ -453,14 +463,12 @@ FORCE_INLINE void probe_specific_action(const bool deploy) { DEBUG_ECHOPGM("hotend (", hotendPreheat, ")"); thermalManager.setTargetHotend(hotendPreheat, 0); } - #elif ENABLED(WAIT_FOR_BED_HEAT) - constexpr celsius_t hotendPreheat = 0; #endif #if ENABLED(WAIT_FOR_BED_HEAT) const celsius_t bedPreheat = bed_temp > thermalManager.degTargetBed() ? bed_temp : 0; if (bedPreheat) { - if (hotendPreheat) DEBUG_ECHOPGM(" and "); + if (TERN0(WAIT_FOR_NOZZLE_HEAT, hotendPreheat)) DEBUG_ECHOPGM(" and "); DEBUG_ECHOPGM("bed (", bedPreheat, ")"); thermalManager.setTargetBed(bedPreheat); } @@ -468,8 +476,10 @@ FORCE_INLINE void probe_specific_action(const bool deploy) { DEBUG_EOL(); - TERN_(WAIT_FOR_NOZZLE_HEAT, if (hotend_temp > thermalManager.wholeDegHotend(0) + (TEMP_WINDOW)) thermalManager.wait_for_hotend(0)); - TERN_(WAIT_FOR_BED_HEAT, if (bed_temp > thermalManager.wholeDegBed() + (TEMP_BED_WINDOW)) thermalManager.wait_for_bed_heating()); + if (!early) { + TERN_(WAIT_FOR_NOZZLE_HEAT, if (hotend_temp > thermalManager.wholeDegHotend(0) + (TEMP_WINDOW)) thermalManager.wait_for_hotend(0)); + TERN_(WAIT_FOR_BED_HEAT, if (bed_temp > thermalManager.wholeDegBed() + (TEMP_BED_WINDOW)) thermalManager.wait_for_bed_heating()); + } } #endif diff --git a/Marlin/src/module/probe.h b/Marlin/src/module/probe.h index 4c6f23390544..fd0302c66531 100644 --- a/Marlin/src/module/probe.h +++ b/Marlin/src/module/probe.h @@ -76,7 +76,7 @@ class Probe { static xyz_pos_t offset; #if EITHER(PREHEAT_BEFORE_PROBING, PREHEAT_BEFORE_LEVELING) - static void preheat_for_probing(const celsius_t hotend_temp, const celsius_t bed_temp); + static void preheat_for_probing(const celsius_t hotend_temp, const celsius_t bed_temp, const bool early=false); #endif static void probe_error_stop(); From 9902097d916e42977e7a4992e2e5773d5e5e9731 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Mon, 24 Apr 2023 11:11:02 +1200 Subject: [PATCH 061/427] =?UTF-8?q?=F0=9F=94=A8=20Gather=20GD32,=20suppres?= =?UTF-8?q?s=20redundant=20#error=20(#25665)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/pins/esp32/env_validate.h | 5 +- Marlin/src/pins/esp32/pins_E4D.h | 4 +- Marlin/src/pins/esp32/pins_FYSETC_E4.h | 4 +- Marlin/src/pins/esp32/pins_MRR_ESPA.h | 4 +- Marlin/src/pins/esp32/pins_PANDA_M4.h | 4 + Marlin/src/pins/esp32/pins_PANDA_ZHU.h | 6 + Marlin/src/pins/gd32f1/env_validate.h | 11 +- Marlin/src/pins/gd32f1/pins_SOVOL_V131.h | 74 ++++++ Marlin/src/pins/lpc1768/env_validate.h | 5 +- Marlin/src/pins/lpc1769/env_validate.h | 5 +- Marlin/src/pins/mega/env_validate.h | 5 +- Marlin/src/pins/mega/pins_GT2560_V3.h | 4 + Marlin/src/pins/mega/pins_PICA.h | 4 + Marlin/src/pins/pins.h | 2 +- Marlin/src/pins/rambo/env_validate.h | 5 +- Marlin/src/pins/ramps/env_validate.h | 5 +- Marlin/src/pins/sam/env_validate.h | 5 +- Marlin/src/pins/sanguino/env_validate.h | 5 +- Marlin/src/pins/stm32f1/env_validate.h | 5 +- Marlin/src/pins/stm32f1/pins_CREALITY_V24S1.h | 5 + .../pins/stm32f1/pins_CREALITY_V24S1_301.h | 1 + Marlin/src/pins/stm32f1/pins_CREALITY_V4.h | 2 +- Marlin/src/pins/stm32f1/pins_CREALITY_V425.h | 4 - Marlin/src/pins/stm32f1/pins_SOVOL_V131.h | 236 ------------------ Marlin/src/pins/stm32f4/env_validate.h | 5 +- Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h | 2 +- .../stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h | 2 +- .../src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h | 2 +- Marlin/src/pins/stm32g0/env_validate.h | 5 +- Marlin/src/pins/stm32h7/env_validate.h | 5 +- Marlin/src/pins/teensy2/env_validate.h | 5 +- 31 files changed, 162 insertions(+), 274 deletions(-) create mode 100644 Marlin/src/pins/gd32f1/pins_SOVOL_V131.h delete mode 100644 Marlin/src/pins/stm32f1/pins_SOVOL_V131.h diff --git a/Marlin/src/pins/esp32/env_validate.h b/Marlin/src/pins/esp32/env_validate.h index ce14c33414ad..0bfd0ebd92be 100644 --- a/Marlin/src/pins/esp32/env_validate.h +++ b/Marlin/src/pins/esp32/env_validate.h @@ -19,8 +19,11 @@ * along with this program. If not, see . * */ -#pragma once +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H #if NOT_TARGET(ARDUINO_ARCH_ESP32) #error "Oops! Select an ESP32 board in 'Tools > Board.'" #endif + +#endif diff --git a/Marlin/src/pins/esp32/pins_E4D.h b/Marlin/src/pins/esp32/pins_E4D.h index 15b697a85b2c..06e46e3c4c08 100644 --- a/Marlin/src/pins/esp32/pins_E4D.h +++ b/Marlin/src/pins/esp32/pins_E4D.h @@ -30,9 +30,7 @@ #include "env_validate.h" -#if EXTRUDERS > 1 || E_STEPPERS > 1 - #error "E4d@box only supports 1 E stepper." -#elif HAS_MULTI_HOTEND +#if HAS_MULTI_HOTEND || E_STEPPERS > 1 #error "E4d@box only supports 1 hotend / E stepper." #endif diff --git a/Marlin/src/pins/esp32/pins_FYSETC_E4.h b/Marlin/src/pins/esp32/pins_FYSETC_E4.h index 7dc59979c8f1..4bcffb545ee0 100644 --- a/Marlin/src/pins/esp32/pins_FYSETC_E4.h +++ b/Marlin/src/pins/esp32/pins_FYSETC_E4.h @@ -30,9 +30,7 @@ #include "env_validate.h" -#if EXTRUDERS > 1 || E_STEPPERS > 1 - #error "FYSETC E4 only supports 1 E stepper." -#elif HAS_MULTI_HOTEND +#if HAS_MULTI_HOTEND || E_STEPPERS > 1 #error "FYSETC E4 only supports 1 hotend / E stepper." #endif diff --git a/Marlin/src/pins/esp32/pins_MRR_ESPA.h b/Marlin/src/pins/esp32/pins_MRR_ESPA.h index e9e3db575896..ba5f6cbe35fa 100644 --- a/Marlin/src/pins/esp32/pins_MRR_ESPA.h +++ b/Marlin/src/pins/esp32/pins_MRR_ESPA.h @@ -30,9 +30,7 @@ #include "env_validate.h" -#if EXTRUDERS > 1 || E_STEPPERS > 1 - #error "MRR ESPA only supports 1 E stepper." -#elif HAS_MULTI_HOTEND +#if HAS_MULTI_HOTEND || E_STEPPERS > 1 #error "MRR ESPA only supports 1 hotend / E stepper." #endif diff --git a/Marlin/src/pins/esp32/pins_PANDA_M4.h b/Marlin/src/pins/esp32/pins_PANDA_M4.h index 5e2e72af05df..c619be43a5f8 100644 --- a/Marlin/src/pins/esp32/pins_PANDA_M4.h +++ b/Marlin/src/pins/esp32/pins_PANDA_M4.h @@ -27,6 +27,10 @@ #define BOARD_INFO_NAME "Panda_M4" +#if HAS_MULTI_HOTEND || E_STEPPERS > 1 + #error "PANDA M4 only supports 1 hotend / E stepper." +#endif + #include "pins_PANDA_common.h" // diff --git a/Marlin/src/pins/esp32/pins_PANDA_ZHU.h b/Marlin/src/pins/esp32/pins_PANDA_ZHU.h index 47500578976e..f2a5f440f674 100644 --- a/Marlin/src/pins/esp32/pins_PANDA_ZHU.h +++ b/Marlin/src/pins/esp32/pins_PANDA_ZHU.h @@ -27,6 +27,12 @@ #define BOARD_INFO_NAME "Panda_ZHU" +#if E_STEPPERS > 5 + #error "PANDA ZHU supports up to 5 E steppers." +#if HAS_MULTI_HOTEND + #error "PANDA ZHU only supports 1 hotend." +#endif + #include "pins_PANDA_common.h" // diff --git a/Marlin/src/pins/gd32f1/env_validate.h b/Marlin/src/pins/gd32f1/env_validate.h index 4b07cce4e5c4..f6882e70d633 100644 --- a/Marlin/src/pins/gd32f1/env_validate.h +++ b/Marlin/src/pins/gd32f1/env_validate.h @@ -19,14 +19,11 @@ * along with this program. If not, see . * */ -#pragma once +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H #if NOT_TARGET(__STM32F1__, STM32F1) - #if DISABLED(ALLOW_STM32F4) - #error "Oops! Select an STM32F1 board in 'Tools > Board.'" - #elif NOT_TARGET(STM32F4) - #error "Oops! Select an STM32F4 board in 'Tools > Board.'" - #endif + #error "Oops! Select an STM32F1 board in 'Tools > Board.'" #endif -#undef ALLOW_STM32F4 +#endif diff --git a/Marlin/src/pins/gd32f1/pins_SOVOL_V131.h b/Marlin/src/pins/gd32f1/pins_SOVOL_V131.h new file mode 100644 index 000000000000..44e527542362 --- /dev/null +++ b/Marlin/src/pins/gd32f1/pins_SOVOL_V131.h @@ -0,0 +1,74 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +/** + * Sovol 1.3.1 (GD32F103RET6) board pin assignments + */ + +#include "env_validate.h" + +#if HAS_MULTI_HOTEND || E_STEPPERS > 1 + #error "SOVOL V131 only supports 1 hotend / E-stepper." + #define E_ERROR 1 +#endif + +#ifndef BOARD_INFO_NAME + #define BOARD_INFO_NAME "Sovol V131" +#endif +#ifndef DEFAULT_MACHINE_NAME + #define DEFAULT_MACHINE_NAME "Sovol SV06" +#endif + +#include "../stm32f1/pins_CREALITY_V4.h" + +#if HAS_TMC_UART + + /** + * TMC2208/TMC2209 stepper drivers + * + * Hardware serial communication ports. + * If undefined software serial is used according to the pins below + */ + + #define X_SERIAL_TX_PIN PC1 + #define X_SERIAL_RX_PIN PC1 + + #define Y_SERIAL_TX_PIN PC0 + #define Y_SERIAL_RX_PIN PC0 + + #define Z_SERIAL_TX_PIN PA15 + #define Z_SERIAL_RX_PIN PA15 + + #define E0_SERIAL_TX_PIN PC14 + #define E0_SERIAL_RX_PIN PC14 + + // Reduce baud rate to improve software serial reliability + #define TMC_BAUD_RATE 19200 + +#endif // HAS_TMC_UART + +// +// SD Card +// +#define ONBOARD_SPI_DEVICE 1 +#define ONBOARD_SD_CS_PIN PA4 // SDSS diff --git a/Marlin/src/pins/lpc1768/env_validate.h b/Marlin/src/pins/lpc1768/env_validate.h index adb3ea938dc2..8a6a1cebd368 100644 --- a/Marlin/src/pins/lpc1768/env_validate.h +++ b/Marlin/src/pins/lpc1768/env_validate.h @@ -19,7 +19,8 @@ * along with this program. If not, see . * */ -#pragma once +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H #if ENABLED(REQUIRE_LPC1769) && NOT_TARGET(MCU_LPC1769) #error "Oops! Make sure you have the LPC1769 environment selected in your IDE." @@ -28,3 +29,5 @@ #endif #undef REQUIRE_LPC1769 + +#endif diff --git a/Marlin/src/pins/lpc1769/env_validate.h b/Marlin/src/pins/lpc1769/env_validate.h index 2e2b63d5203f..0f62412453a4 100644 --- a/Marlin/src/pins/lpc1769/env_validate.h +++ b/Marlin/src/pins/lpc1769/env_validate.h @@ -19,8 +19,11 @@ * along with this program. If not, see . * */ -#pragma once +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H #if NOT_TARGET(MCU_LPC1769) #error "Oops! Make sure you have the LPC1769 environment selected in your IDE." #endif + +#endif diff --git a/Marlin/src/pins/mega/env_validate.h b/Marlin/src/pins/mega/env_validate.h index 97c52d4e5e05..7b6462ab7a97 100644 --- a/Marlin/src/pins/mega/env_validate.h +++ b/Marlin/src/pins/mega/env_validate.h @@ -19,7 +19,8 @@ * along with this program. If not, see . * */ -#pragma once +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H #if NOT_TARGET(__AVR_ATmega2560__) #if DISABLED(ALLOW_MEGA1280) @@ -30,3 +31,5 @@ #endif #undef ALLOW_MEGA1280 + +#endif diff --git a/Marlin/src/pins/mega/pins_GT2560_V3.h b/Marlin/src/pins/mega/pins_GT2560_V3.h index b04962bbb357..61f30fc7d4f4 100644 --- a/Marlin/src/pins/mega/pins_GT2560_V3.h +++ b/Marlin/src/pins/mega/pins_GT2560_V3.h @@ -33,6 +33,10 @@ #define ALLOW_MEGA1280 #include "env_validate.h" +#if HOTENDS > 3 || E_STEPPERS > 3 + #error "GT2560 supports up to 3 hotends / E steppers." +#endif + #ifndef BOARD_INFO_NAME #define BOARD_INFO_NAME "GT2560 3.x" #endif diff --git a/Marlin/src/pins/mega/pins_PICA.h b/Marlin/src/pins/mega/pins_PICA.h index 0541e1af58bf..5e9d607a7864 100644 --- a/Marlin/src/pins/mega/pins_PICA.h +++ b/Marlin/src/pins/mega/pins_PICA.h @@ -35,6 +35,10 @@ #include "env_validate.h" +#if HOTENDS > 2 || E_STEPPERS > 2 + #error "PICA supports up to 2 hotends / E steppers." +#endif + #ifndef BOARD_INFO_NAME #define BOARD_INFO_NAME "PICA" #endif diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index d3b3bbbd219d..86a36c75801e 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -632,7 +632,7 @@ #elif MB(PANDA_PI_V29) #include "stm32f1/pins_PANDA_PI_V29.h" // STM32F103RCT6 env:PANDA_PI_V29 #elif MB(SOVOL_V131) - #include "stm32f1/pins_SOVOL_V131.h" // GD32F1 env:GD32F103RET6_sovol_maple + #include "gd32f1/pins_SOVOL_V131.h" // GD32F1 env:GD32F103RET6_sovol_maple #elif MB(TRIGORILLA_V006) #include "gd32f1/pins_TRIGORILLA_V006.h" // GD32F103 env:trigorilla_v006 diff --git a/Marlin/src/pins/rambo/env_validate.h b/Marlin/src/pins/rambo/env_validate.h index 84cf8392cdfc..ce2818f596d3 100644 --- a/Marlin/src/pins/rambo/env_validate.h +++ b/Marlin/src/pins/rambo/env_validate.h @@ -19,8 +19,11 @@ * along with this program. If not, see . * */ -#pragma once +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H #if NOT_TARGET(__AVR_ATmega2560__) #error "Oops! Select 'Arduino Mega 2560 or Rambo' in 'Tools > Board.'" #endif + +#endif diff --git a/Marlin/src/pins/ramps/env_validate.h b/Marlin/src/pins/ramps/env_validate.h index 6006a78f013c..86d7bce16c16 100644 --- a/Marlin/src/pins/ramps/env_validate.h +++ b/Marlin/src/pins/ramps/env_validate.h @@ -19,7 +19,8 @@ * along with this program. If not, see . * */ -#pragma once +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H #if ENABLED(ALLOW_SAM3X8E) #if NOT_TARGET(__SAM3X8E__, __AVR_ATmega2560__) @@ -33,3 +34,5 @@ #undef ALLOW_SAM3X8E #undef REQUIRE_MEGA2560 + +#endif diff --git a/Marlin/src/pins/sam/env_validate.h b/Marlin/src/pins/sam/env_validate.h index 09bcd1364921..c6f4d76894be 100644 --- a/Marlin/src/pins/sam/env_validate.h +++ b/Marlin/src/pins/sam/env_validate.h @@ -19,7 +19,8 @@ * along with this program. If not, see . * */ -#pragma once +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H #if BOTH(ALLOW_MEGA1280, ALLOW_MEGA2560) && NOT_TARGET(__SAM3X8E__, __AVR_ATmega1280__, __AVR_ATmega2560__) #error "Oops! Select 'Arduino Due or Mega' in 'Tools > Board.'" @@ -31,3 +32,5 @@ #undef ALLOW_MEGA1280 #undef ALLOW_MEGA2560 + +#endif diff --git a/Marlin/src/pins/sanguino/env_validate.h b/Marlin/src/pins/sanguino/env_validate.h index d229b6f102e4..bd7947f469a5 100644 --- a/Marlin/src/pins/sanguino/env_validate.h +++ b/Marlin/src/pins/sanguino/env_validate.h @@ -19,7 +19,8 @@ * along with this program. If not, see . * */ -#pragma once +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H #if ENABLED(ALLOW_MEGA644) #if NOT_TARGET(__AVR_ATmega644__, __AVR_ATmega644P__, __AVR_ATmega1284P__) @@ -40,3 +41,5 @@ #undef ALLOW_MEGA644 #undef ALLOW_MEGA644P #undef REQUIRE_MEGA644P + +#endif diff --git a/Marlin/src/pins/stm32f1/env_validate.h b/Marlin/src/pins/stm32f1/env_validate.h index 2d325428ac8c..47399a062d6c 100644 --- a/Marlin/src/pins/stm32f1/env_validate.h +++ b/Marlin/src/pins/stm32f1/env_validate.h @@ -19,7 +19,8 @@ * along with this program. If not, see . * */ -#pragma once +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H #if NOT_TARGET(__STM32F1__, STM32F1) #if DISABLED(ALLOW_STM32F4) @@ -30,3 +31,5 @@ #endif #undef ALLOW_STM32F4 + +#endif diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1.h index f7a73de28471..058dcdf94f23 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1.h @@ -25,6 +25,11 @@ * Creality v2.4.S1 (STM32F103RE / STM32F103RC) v101 as found in the Ender-7 */ +#if HAS_MULTI_HOTEND || E_STEPPERS > 1 + #error "Creality 2.4.S1 V101 only supports 1 hotend / E stepper." + #define E_ERROR 1 +#endif + #define BOARD_INFO_NAME "Creality v2.4.S1 V101" #define DEFAULT_MACHINE_NAME "Creality3D" diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h index 4276db5e9f22..f2450ffcb4e7 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h @@ -30,6 +30,7 @@ #if HAS_MULTI_HOTEND || E_STEPPERS > 1 #error "Creality v24S1 only supports 1 hotend / E stepper." + #define E_ERROR 1 #endif #if BOTH(BLTOUCH, Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h index fd96799372c7..6cb4d48d58c1 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h @@ -27,7 +27,7 @@ #include "env_validate.h" -#if HAS_MULTI_HOTEND || E_STEPPERS > 1 +#if !E_ERROR && (HAS_MULTI_HOTEND || E_STEPPERS > 1) #error "Creality v4 only supports 1 hotend / E stepper." #endif diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V425.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V425.h index 2d9b9f38f54f..a225fe11be5a 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V425.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V425.h @@ -27,10 +27,6 @@ #include "env_validate.h" -#if HAS_MULTI_HOTEND || E_STEPPERS > 1 - #error "Creality v4.2.5 only supports 1 hotend / E stepper." -#endif - #define BOARD_INFO_NAME "Creality V4.2.5" #define DEFAULT_MACHINE_NAME "CR200B" diff --git a/Marlin/src/pins/stm32f1/pins_SOVOL_V131.h b/Marlin/src/pins/stm32f1/pins_SOVOL_V131.h deleted file mode 100644 index ee50f327385c..000000000000 --- a/Marlin/src/pins/stm32f1/pins_SOVOL_V131.h +++ /dev/null @@ -1,236 +0,0 @@ -/** - * Marlin 3D Printer Firmware - * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] - * - * Based on Sprinter and grbl. - * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ -#pragma once - -/** - * Sovol 1.3.1 (GD32F103RET6) board pin assignments - */ - -#include "env_validate.h" - -#if HOTENDS > 1 || E_STEPPERS > 1 - #error "SOVOL V131 only supports 1 hotend / E-stepper." -#endif - -#ifndef BOARD_INFO_NAME - #define BOARD_INFO_NAME "Sovol V131" -#endif -#ifndef DEFAULT_MACHINE_NAME - #define DEFAULT_MACHINE_NAME "Sovol SV06" -#endif - -//#define BOARD_NO_NATIVE_USB - -// -// Release PB4 (Y_ENABLE_PIN) from JTAG NRST role -// -#ifndef DISABLE_DEBUG - #define DISABLE_DEBUG -#endif - -// -// EEPROM -// -#if NO_EEPROM_SELECTED - #define IIC_BL24CXX_EEPROM // EEPROM on I2C-0 - //#define SDCARD_EEPROM_EMULATION - #undef NO_EEPROM_SELECTED -#endif - -#if ENABLED(IIC_BL24CXX_EEPROM) - #define IIC_EEPROM_SDA PA11 - #define IIC_EEPROM_SCL PA12 - #define MARLIN_EEPROM_SIZE 0x800 // 2K (24C16) -#elif ENABLED(SDCARD_EEPROM_EMULATION) - #define MARLIN_EEPROM_SIZE 0x800 // 2K -#endif - -// -// Servos -// -#ifndef SERVO0_PIN - #ifndef HAS_PIN_27_BOARD - #define SERVO0_PIN PB0 // BLTouch OUT - #else - #define SERVO0_PIN PC6 - #endif -#endif - -// -// Limit Switches -// -#ifndef X_STOP_PIN - #define X_STOP_PIN PA5 -#endif -#ifndef Y_STOP_PIN - #define Y_STOP_PIN PA6 -#endif -#ifndef Z_STOP_PIN - #define Z_STOP_PIN PA7 -#endif - -#ifndef Z_MIN_PROBE_PIN - #define Z_MIN_PROBE_PIN PB1 // BLTouch IN -#endif - -// -// Filament Runout Sensor -// -#ifndef FIL_RUNOUT_PIN - #define FIL_RUNOUT_PIN PA4 // "Pulled-high" -#endif - -// -// Steppers -// -#ifndef X_STEP_PIN - #define X_STEP_PIN PC2 -#endif -#ifndef X_DIR_PIN - #define X_DIR_PIN PB9 -#endif -#define X_ENABLE_PIN PC3 // Shared - -#ifndef Y_STEP_PIN - #define Y_STEP_PIN PB8 -#endif -#ifndef Y_DIR_PIN - #define Y_DIR_PIN PB7 -#endif -#define Y_ENABLE_PIN X_ENABLE_PIN - -#ifndef Z_STEP_PIN - #define Z_STEP_PIN PB6 -#endif -#ifndef Z_DIR_PIN - #define Z_DIR_PIN PB5 -#endif -#define Z_ENABLE_PIN X_ENABLE_PIN - -#ifndef E0_STEP_PIN - #define E0_STEP_PIN PB4 -#endif -#ifndef E0_DIR_PIN - #define E0_DIR_PIN PB3 -#endif -#define E0_ENABLE_PIN X_ENABLE_PIN - -#if HAS_TMC_UART - - /** - * TMC2208/TMC2209 stepper drivers - * - * Hardware serial communication ports. - * If undefined software serial is used according to the pins below - */ - - #define X_SERIAL_TX_PIN PC1 - #define X_SERIAL_RX_PIN PC1 - - #define Y_SERIAL_TX_PIN PC0 - #define Y_SERIAL_RX_PIN PC0 - - #define Z_SERIAL_TX_PIN PA15 - #define Z_SERIAL_RX_PIN PA15 - - #define E0_SERIAL_TX_PIN PC14 - #define E0_SERIAL_RX_PIN PC14 - - // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 - -#endif // HAS_TMC_UART - -// -// Temperature Sensors -// -#define TEMP_0_PIN PC5 // TH1 -#define TEMP_BED_PIN PC4 // TB1 - -// -// Heaters / Fans -// -#ifndef HEATER_0_PIN - #define HEATER_0_PIN PA1 // HEATER1 -#endif -#ifndef HEATER_BED_PIN - #define HEATER_BED_PIN PA2 // HOT BED -#endif -#ifndef FAN0_PIN - #define FAN0_PIN PA0 // FAN -#endif -#define FAN_SOFT_PWM_REQUIRED - -// -// SD Card -// -#define SD_DETECT_PIN PC7 -#define SDCARD_CONNECTION ONBOARD -#define ONBOARD_SPI_DEVICE 1 -#define ONBOARD_SD_CS_PIN PA4 // SDSS -#define ONBOARD_SDIO -#define NO_SD_HOST_DRIVE // This board's SD is only seen by the printer - -#if ANY(RET6_12864_LCD, HAS_DWIN_E3V2, IS_DWIN_MARLINUI) - /** - * RET6 12864 LCD - * ------ - * PC6 | 1 2 | PB2 - * PB10 | 3 4 | PB11 - * PB14 5 6 | PB13 - * PB12 | 7 8 | PB15 - * GND | 9 10 | 5V - * ------ - */ - #define EXP3_01_PIN PC6 - #define EXP3_02_PIN PB2 - #define EXP3_03_PIN PB10 - #define EXP3_04_PIN PB11 - #define EXP3_05_PIN PB14 - #define EXP3_06_PIN PB13 - #define EXP3_07_PIN PB12 - #define EXP3_08_PIN PB15 -#endif - -#if ENABLED(CR10_STOCKDISPLAY) - - #if ENABLED(RET6_12864_LCD) - - #define LCD_PINS_RS EXP3_07_PIN - #define LCD_PINS_EN EXP3_08_PIN - #define LCD_PINS_D4 EXP3_06_PIN - - #define BTN_ENC EXP3_02_PIN - #define BTN_EN1 EXP3_03_PIN - #define BTN_EN2 EXP3_05_PIN - - #ifndef HAS_PIN_27_BOARD - #define BEEPER_PIN EXP3_01_PIN - #endif - - #else - - #error "Only the RET6_12864_LCD variant of CR10_STOCKDISPLAY is supported." - - #endif - -#endif diff --git a/Marlin/src/pins/stm32f4/env_validate.h b/Marlin/src/pins/stm32f4/env_validate.h index c01401f06c9a..91adbfc86929 100644 --- a/Marlin/src/pins/stm32f4/env_validate.h +++ b/Marlin/src/pins/stm32f4/env_validate.h @@ -19,10 +19,13 @@ * along with this program. If not, see . * */ -#pragma once +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H #if NOT_TARGET(STM32F4) && (DISABLED(ALLOW_STM32DUINO) || NOT_TARGET(STM32F4xx)) #error "Oops! Select an STM32F4 board in 'Tools > Board.'" #endif #undef ALLOW_STM32DUINO + +#endif diff --git a/Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h b/Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h index 7b0206e2878f..8510e8148259 100644 --- a/Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h +++ b/Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h @@ -23,7 +23,7 @@ #include "env_validate.h" -#if HOTENDS > 1 || E_STEPPERS > 1 +#if HAS_MULTI_HOTEND || E_STEPPERS > 1 #error "Artillery Ruby only supports 1 hotend / E stepper." #endif diff --git a/Marlin/src/pins/stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h b/Marlin/src/pins/stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h index ffddeff67c0f..6f2de83b5142 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h @@ -25,7 +25,7 @@ #include "env_validate.h" -#if HOTENDS > 1 || E_STEPPERS > 1 +#if HAS_MULTI_HOTEND || E_STEPPERS > 1 #error "BTT SKR Mini E3 V3.0.1 supports up to 1 hotend / E stepper." #endif diff --git a/Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h b/Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h index 448c54f1b3e4..b74db89f3a0c 100644 --- a/Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h +++ b/Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h @@ -24,7 +24,7 @@ #define ALLOW_STM32DUINO #include "env_validate.h" -#if HOTENDS > 1 || E_STEPPERS > 1 +#if HAS_MULTI_HOTEND || E_STEPPERS > 1 #error "TH3D EZBoard only supports 1 hotend / E stepper." #endif diff --git a/Marlin/src/pins/stm32g0/env_validate.h b/Marlin/src/pins/stm32g0/env_validate.h index a7be76bd8bb1..03887eb7a491 100644 --- a/Marlin/src/pins/stm32g0/env_validate.h +++ b/Marlin/src/pins/stm32g0/env_validate.h @@ -19,8 +19,11 @@ * along with this program. If not, see . * */ -#pragma once +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H #if NOT_TARGET(STM32G0xx) || NOT_TARGET(STM32G0B1xx) #error "Oops! Select an STM32G0 board in 'Tools > Board.'" #endif + +#endif diff --git a/Marlin/src/pins/stm32h7/env_validate.h b/Marlin/src/pins/stm32h7/env_validate.h index 0c515e5df6be..7feaf2095909 100644 --- a/Marlin/src/pins/stm32h7/env_validate.h +++ b/Marlin/src/pins/stm32h7/env_validate.h @@ -19,8 +19,11 @@ * along with this program. If not, see . * */ -#pragma once +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H #if NOT_TARGET(STM32H7) #error "Oops! Select an STM32H7 board in 'Tools > Board.'" #endif + +#endif diff --git a/Marlin/src/pins/teensy2/env_validate.h b/Marlin/src/pins/teensy2/env_validate.h index 5f0ea4f3b672..8fd6fba31932 100644 --- a/Marlin/src/pins/teensy2/env_validate.h +++ b/Marlin/src/pins/teensy2/env_validate.h @@ -19,10 +19,13 @@ * along with this program. If not, see . * */ -#pragma once +#ifndef ENV_VALIDATE_H +#define ENV_VALIDATE_H #if NOT_TARGET(__AVR_AT90USB1286__) && (DISABLED(ALLOW_AT90USB1286P) || NOT_TARGET(__AVR_AT90USB1286P__)) #error "Oops! Select 'Teensy++ 2.0' or 'Printrboard' in 'Tools > Board.'" #endif #undef ALLOW_AT90USB1286P + +#endif From df4f80622eb262fe39cc898e0237257b2870aa7f Mon Sep 17 00:00:00 2001 From: plampix Date: Mon, 24 Apr 2023 01:12:47 +0200 Subject: [PATCH 062/427] =?UTF-8?q?=E2=9C=A8=20NOZZLE=5FCLEAN=5FPATTERN=5F?= =?UTF-8?q?*=20(#25666)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/Configuration.h | 28 ++- Marlin/src/gcode/feature/clean/G12.cpp | 14 +- Marlin/src/inc/SanityCheck.h | 15 ++ Marlin/src/libs/nozzle.cpp | 275 ++++++++++++++----------- buildroot/tests/rambo | 4 +- 5 files changed, 194 insertions(+), 142 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 19407b61581b..6e2f40961358 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -2409,23 +2409,31 @@ //#define NOZZLE_CLEAN_FEATURE #if ENABLED(NOZZLE_CLEAN_FEATURE) - // Default number of pattern repetitions - #define NOZZLE_CLEAN_STROKES 12 + #define NOZZLE_CLEAN_PATTERN_LINE // Provide 'G12 P0' - a simple linear cleaning pattern + #define NOZZLE_CLEAN_PATTERN_ZIGZAG // Provide 'G12 P1' - a zigzag cleaning pattern + #define NOZZLE_CLEAN_PATTERN_CIRCLE // Provide 'G12 P2' - a circular cleaning pattern - // Default number of triangles - #define NOZZLE_CLEAN_TRIANGLES 3 + // Default pattern to use when 'P' is not provided to G12. One of the enabled options above. + #define NOZZLE_CLEAN_DEFAULT_PATTERN 0 + + #if ENABLED(NOZZLE_CLEAN_PATTERN_LINE) + #define NOZZLE_CLEAN_STROKES 12 // Default number of pattern repetitions + #endif + + #if ENABLED(NOZZLE_CLEAN_PATTERN_ZIGZAG) + #define NOZZLE_CLEAN_TRIANGLES 3 // Default number of triangles + #endif // Specify positions for each tool as { { X, Y, Z }, { X, Y, Z } } // Dual hotend system may use { { -20, (Y_BED_SIZE / 2), (Z_MIN_POS + 1) }, { 420, (Y_BED_SIZE / 2), (Z_MIN_POS + 1) }} #define NOZZLE_CLEAN_START_POINT { { 30, 30, (Z_MIN_POS + 1) } } #define NOZZLE_CLEAN_END_POINT { { 100, 60, (Z_MIN_POS + 1) } } - // Circular pattern radius - #define NOZZLE_CLEAN_CIRCLE_RADIUS 6.5 - // Circular pattern circle fragments number - #define NOZZLE_CLEAN_CIRCLE_FN 10 - // Middle point of circle - #define NOZZLE_CLEAN_CIRCLE_MIDDLE NOZZLE_CLEAN_START_POINT + #if ENABLED(NOZZLE_CLEAN_PATTERN_CIRCLE) + #define NOZZLE_CLEAN_CIRCLE_RADIUS 6.5 // (mm) Circular pattern radius + #define NOZZLE_CLEAN_CIRCLE_FN 10 // Circular pattern circle number of segments + #define NOZZLE_CLEAN_CIRCLE_MIDDLE NOZZLE_CLEAN_START_POINT // Middle point of circle + #endif // Move the nozzle to the initial position after cleaning #define NOZZLE_CLEAN_GOBACK diff --git a/Marlin/src/gcode/feature/clean/G12.cpp b/Marlin/src/gcode/feature/clean/G12.cpp index 0113170f1d9c..597d8ce0a0be 100644 --- a/Marlin/src/gcode/feature/clean/G12.cpp +++ b/Marlin/src/gcode/feature/clean/G12.cpp @@ -57,10 +57,16 @@ void GcodeSuite::G12() { } #endif - const uint8_t pattern = parser.ushortval('P', 0), - strokes = parser.ushortval('S', NOZZLE_CLEAN_STROKES), - objects = parser.ushortval('T', NOZZLE_CLEAN_TRIANGLES); - const float radius = parser.linearval('R', NOZZLE_CLEAN_CIRCLE_RADIUS); + const uint8_t pattern = ( + #if COUNT_ENABLED(NOZZLE_CLEAN_PATTERN_LINE, NOZZLE_CLEAN_PATTERN_ZIGZAG, NOZZLE_CLEAN_PATTERN_CIRCLE) > 1 + parser.ushortval('P', NOZZLE_CLEAN_DEFAULT_PATTERN) + #else + NOZZLE_CLEAN_DEFAULT_PATTERN + #endif + ); + const uint8_t strokes = TERN0(NOZZLE_CLEAN_PATTERN_LINEAR, parser.ushortval('S', NOZZLE_CLEAN_STROKES)), + objects = TERN0(NOZZLE_CLEAN_PATTERN_ZIGZAG, parser.ushortval('T', NOZZLE_CLEAN_TRIANGLES)); + const float radius = TERN0(NOZZLE_CLEAN_PATTERN_CIRCLE, parser.linearval('R', NOZZLE_CLEAN_CIRCLE_RADIUS)); const bool seenxyz = parser.seen("XYZ"); const uint8_t cleans = (!seenxyz || parser.boolval('X') ? _BV(X_AXIS) : 0) diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 196b1dc4e340..2c2e17f4e341 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -3816,6 +3816,21 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); #undef _CLEAN_ASSERT #endif +/** + * Sanity check nozzle cleaning pattern settings + */ +#if ENABLED(NOZZLE_CLEAN_FEATURE) + #if NONE(NOZZLE_CLEAN_PATTERN_LINE, NOZZLE_CLEAN_PATTERN_ZIGZAG, NOZZLE_CLEAN_PATTERN_CIRCLE) + #error "NOZZLE_CLEAN_FEATURE requires at least one of NOZZLE_CLEAN_PATTERN_LINE, NOZZLE_CLEAN_PATTERN_ZIGZAG, and/or NOZZLE_CLEAN_PATTERN_CIRCLE." + #elif NOZZLE_CLEAN_DEFAULT_PATTERN == 0 && DISABLED(NOZZLE_CLEAN_PATTERN_LINE) + #error "NOZZLE_CLEAN_DEFAULT_PATTERN 0 (LINE) is not available. Enable NOZZLE_CLEAN_PATTERN_LINE or set a different NOZZLE_CLEAN_DEFAULT_PATTERN." + #elif NOZZLE_CLEAN_DEFAULT_PATTERN == 1 && DISABLED(NOZZLE_CLEAN_PATTERN_ZIGZAG) + #error "NOZZLE_CLEAN_DEFAULT_PATTERN 1 (ZIGZAG) is not available. Enable NOZZLE_CLEAN_PATTERN_ZIGZAG or set a different NOZZLE_CLEAN_DEFAULT_PATTERN." + #elif NOZZLE_CLEAN_DEFAULT_PATTERN == 2 && DISABLED(NOZZLE_CLEAN_PATTERN_CIRCLE) + #error "NOZZLE_CLEAN_DEFAULT_PATTERN 2 (CIRCLE) is not available. Enable NOZZLE_CLEAN_PATTERN_CIRCLE or set a different NOZZLE_CLEAN_DEFAULT_PATTERN." + #endif +#endif + /** * Sanity check for MIXING_EXTRUDER & DISTINCT_E_FACTORS these are not compatible */ diff --git a/Marlin/src/libs/nozzle.cpp b/Marlin/src/libs/nozzle.cpp index 74f61c33d018..8f44c69c5ca2 100644 --- a/Marlin/src/libs/nozzle.cpp +++ b/Marlin/src/libs/nozzle.cpp @@ -37,119 +37,125 @@ Nozzle nozzle; #if ENABLED(NOZZLE_CLEAN_FEATURE) - /** - * @brief Stroke clean pattern - * @details Wipes the nozzle back and forth in a linear movement - * - * @param start xyz_pos_t defining the starting point - * @param end xyz_pos_t defining the ending point - * @param strokes number of strokes to execute - */ - void Nozzle::stroke(const xyz_pos_t &start, const xyz_pos_t &end, const uint8_t &strokes) { - #if ENABLED(NOZZLE_CLEAN_GOBACK) - const xyz_pos_t oldpos = current_position; - #endif - - // Move to the starting point - #if ENABLED(NOZZLE_CLEAN_NO_Z) - #if ENABLED(NOZZLE_CLEAN_NO_Y) - do_blocking_move_to_x(start.x); - #else - do_blocking_move_to_xy(start); + #if ENABLED(NOZZLE_CLEAN_PATTERN_LINE) + /** + * @brief Stroke clean pattern + * @details Wipes the nozzle back and forth in a linear movement + * + * @param start xyz_pos_t defining the starting point + * @param end xyz_pos_t defining the ending point + * @param strokes number of strokes to execute + */ + void Nozzle::stroke(const xyz_pos_t &start, const xyz_pos_t &end, const uint8_t &strokes) { + #if ENABLED(NOZZLE_CLEAN_GOBACK) + const xyz_pos_t oldpos = current_position; #endif - #else - do_blocking_move_to(start); - #endif - // Start the stroke pattern - LOOP_L_N(i, strokes >> 1) { - #if ENABLED(NOZZLE_CLEAN_NO_Y) - do_blocking_move_to_x(end.x); - do_blocking_move_to_x(start.x); + // Move to the starting point + #if ENABLED(NOZZLE_CLEAN_NO_Z) + #if ENABLED(NOZZLE_CLEAN_NO_Y) + do_blocking_move_to_x(start.x); + #else + do_blocking_move_to_xy(start); + #endif #else - do_blocking_move_to_xy(end); - do_blocking_move_to_xy(start); + do_blocking_move_to(start); #endif - } - TERN_(NOZZLE_CLEAN_GOBACK, do_blocking_move_to(oldpos)); - } - - /** - * @brief Zig-zag clean pattern - * @details Apply a zig-zag cleaning pattern - * - * @param start xyz_pos_t defining the starting point - * @param end xyz_pos_t defining the ending point - * @param strokes number of strokes to execute - * @param objects number of triangles to do - */ - void Nozzle::zigzag(const xyz_pos_t &start, const xyz_pos_t &end, const uint8_t &strokes, const uint8_t &objects) { - const xy_pos_t diff = end - start; - if (!diff.x || !diff.y) return; - - #if ENABLED(NOZZLE_CLEAN_GOBACK) - const xyz_pos_t back = current_position; - #endif - - #if ENABLED(NOZZLE_CLEAN_NO_Z) - do_blocking_move_to_xy(start); - #else - do_blocking_move_to(start); - #endif - - const uint8_t zigs = objects << 1; - const bool horiz = ABS(diff.x) >= ABS(diff.y); // Do a horizontal wipe? - const float P = (horiz ? diff.x : diff.y) / zigs; // Period of each zig / zag - const xyz_pos_t *side; - LOOP_L_N(j, strokes) { - for (int8_t i = 0; i < zigs; i++) { - side = (i & 1) ? &end : &start; - if (horiz) - do_blocking_move_to_xy(start.x + i * P, side->y); - else - do_blocking_move_to_xy(side->x, start.y + i * P); - } - for (int8_t i = zigs; i >= 0; i--) { - side = (i & 1) ? &end : &start; - if (horiz) - do_blocking_move_to_xy(start.x + i * P, side->y); - else - do_blocking_move_to_xy(side->x, start.y + i * P); + // Start the stroke pattern + LOOP_L_N(i, strokes >> 1) { + #if ENABLED(NOZZLE_CLEAN_NO_Y) + do_blocking_move_to_x(end.x); + do_blocking_move_to_x(start.x); + #else + do_blocking_move_to_xy(end); + do_blocking_move_to_xy(start); + #endif } + + TERN_(NOZZLE_CLEAN_GOBACK, do_blocking_move_to(oldpos)); } + #endif + + #if ENABLED(NOZZLE_CLEAN_PATTERN_ZIGZAG) + /** + * @brief Zig-zag clean pattern + * @details Apply a zig-zag cleaning pattern + * + * @param start xyz_pos_t defining the starting point + * @param end xyz_pos_t defining the ending point + * @param strokes number of strokes to execute + * @param objects number of triangles to do + */ + void Nozzle::zigzag(const xyz_pos_t &start, const xyz_pos_t &end, const uint8_t &strokes, const uint8_t &objects) { + const xy_pos_t diff = end - start; + if (!diff.x || !diff.y) return; + + #if ENABLED(NOZZLE_CLEAN_GOBACK) + const xyz_pos_t back = current_position; + #endif - TERN_(NOZZLE_CLEAN_GOBACK, do_blocking_move_to(back)); - } + #if ENABLED(NOZZLE_CLEAN_NO_Z) + do_blocking_move_to_xy(start); + #else + do_blocking_move_to(start); + #endif - /** - * @brief Circular clean pattern - * @details Apply a circular cleaning pattern - * - * @param start xyz_pos_t defining the middle of circle - * @param strokes number of strokes to execute - * @param radius radius of circle - */ - void Nozzle::circle(const xyz_pos_t &start, const xyz_pos_t &middle, const uint8_t &strokes, const_float_t radius) { - if (strokes == 0) return; + const uint8_t zigs = objects << 1; + const bool horiz = ABS(diff.x) >= ABS(diff.y); // Do a horizontal wipe? + const float P = (horiz ? diff.x : diff.y) / zigs; // Period of each zig / zag + const xyz_pos_t *side; + LOOP_L_N(j, strokes) { + for (int8_t i = 0; i < zigs; i++) { + side = (i & 1) ? &end : &start; + if (horiz) + do_blocking_move_to_xy(start.x + i * P, side->y); + else + do_blocking_move_to_xy(side->x, start.y + i * P); + } + for (int8_t i = zigs; i >= 0; i--) { + side = (i & 1) ? &end : &start; + if (horiz) + do_blocking_move_to_xy(start.x + i * P, side->y); + else + do_blocking_move_to_xy(side->x, start.y + i * P); + } + } - #if ENABLED(NOZZLE_CLEAN_GOBACK) - const xyz_pos_t back = current_position; - #endif - TERN(NOZZLE_CLEAN_NO_Z, do_blocking_move_to_xy, do_blocking_move_to)(start); + TERN_(NOZZLE_CLEAN_GOBACK, do_blocking_move_to(back)); + } + #endif + + #if ENABLED(NOZZLE_CLEAN_PATTERN_CIRCLE) + /** + * @brief Circular clean pattern + * @details Apply a circular cleaning pattern + * + * @param start xyz_pos_t defining the middle of circle + * @param strokes number of strokes to execute + * @param radius radius of circle + */ + void Nozzle::circle(const xyz_pos_t &start, const xyz_pos_t &middle, const uint8_t &strokes, const_float_t radius) { + if (strokes == 0) return; + + #if ENABLED(NOZZLE_CLEAN_GOBACK) + const xyz_pos_t back = current_position; + #endif + TERN(NOZZLE_CLEAN_NO_Z, do_blocking_move_to_xy, do_blocking_move_to)(start); - LOOP_L_N(s, strokes) - LOOP_L_N(i, NOZZLE_CLEAN_CIRCLE_FN) - do_blocking_move_to_xy( - middle.x + sin((RADIANS(360) / NOZZLE_CLEAN_CIRCLE_FN) * i) * radius, - middle.y + cos((RADIANS(360) / NOZZLE_CLEAN_CIRCLE_FN) * i) * radius - ); + LOOP_L_N(s, strokes) + LOOP_L_N(i, NOZZLE_CLEAN_CIRCLE_FN) + do_blocking_move_to_xy( + middle.x + sin((RADIANS(360) / NOZZLE_CLEAN_CIRCLE_FN) * i) * radius, + middle.y + cos((RADIANS(360) / NOZZLE_CLEAN_CIRCLE_FN) * i) * radius + ); - // Let's be safe - do_blocking_move_to_xy(start); + // Let's be safe + do_blocking_move_to_xy(start); - TERN_(NOZZLE_CLEAN_GOBACK, do_blocking_move_to(back)); - } + TERN_(NOZZLE_CLEAN_GOBACK, do_blocking_move_to(back)); + } + #endif /** * @brief Clean the nozzle @@ -159,10 +165,25 @@ Nozzle nozzle; * @param argument depends on the cleaning pattern */ void Nozzle::clean(const uint8_t &pattern, const uint8_t &strokes, const_float_t radius, const uint8_t &objects, const uint8_t cleans) { - xyz_pos_t start[HOTENDS] = NOZZLE_CLEAN_START_POINT, end[HOTENDS] = NOZZLE_CLEAN_END_POINT, middle[HOTENDS] = NOZZLE_CLEAN_CIRCLE_MIDDLE; + xyz_pos_t start[HOTENDS] = NOZZLE_CLEAN_START_POINT, end[HOTENDS] = NOZZLE_CLEAN_END_POINT; + #if ENABLED(NOZZLE_CLEAN_PATTERN_CIRCLE) + xyz_pos_t middle[HOTENDS] = NOZZLE_CLEAN_CIRCLE_MIDDLE; + #endif const uint8_t arrPos = EITHER(SINGLENOZZLE, MIXING_EXTRUDER) ? 0 : active_extruder; + switch (pattern) { + #if DISABLED(NOZZLE_CLEAN_PATTERN_LINE) + case 0: SERIAL_ECHOLNPGM("Pattern ", F("LINE"), " not enabled."); return; + #endif + #if DISABLED(NOZZLE_CLEAN_PATTERN_ZIGZAG) + case 1: SERIAL_ECHOLNPGM("Pattern ", F("ZIGZAG"), " not enabled."); return; + #endif + #if DISABLED(NOZZLE_CLEAN_PATTERN_CIRCLE) + case 2: SERIAL_ECHOLNPGM("Pattern ", F("CIRCULAR"), " not enabled."); return; + #endif + } + #if NOZZLE_CLEAN_MIN_TEMP > 20 if (thermalManager.degTargetHotend(arrPos) < NOZZLE_CLEAN_MIN_TEMP) { #if ENABLED(NOZZLE_CLEAN_HEATUP) @@ -179,45 +200,47 @@ Nozzle nozzle; #if HAS_SOFTWARE_ENDSTOPS #define LIMIT_AXIS(A) do{ \ - LIMIT( start[arrPos].A, soft_endstop.min.A, soft_endstop.max.A); \ - LIMIT(middle[arrPos].A, soft_endstop.min.A, soft_endstop.max.A); \ - LIMIT( end[arrPos].A, soft_endstop.min.A, soft_endstop.max.A); \ + LIMIT( start[arrPos].A, soft_endstop.min.A, soft_endstop.max.A); \ + LIMIT( end[arrPos].A, soft_endstop.min.A, soft_endstop.max.A); \ + TERN_(NOZZLE_CLEAN_PATTERN_CIRCLE, LIMIT(middle[arrPos].A, soft_endstop.min.A, soft_endstop.max.A)); \ }while(0) if (soft_endstop.enabled()) { - - LIMIT_AXIS(x); - LIMIT_AXIS(y); - LIMIT_AXIS(z); - const bool radiusOutOfRange = (middle[arrPos].x + radius > soft_endstop.max.x) - || (middle[arrPos].x - radius < soft_endstop.min.x) - || (middle[arrPos].y + radius > soft_endstop.max.y) - || (middle[arrPos].y - radius < soft_endstop.min.y); - if (radiusOutOfRange && pattern == 2) { - SERIAL_ECHOLNPGM("Warning: Radius Out of Range"); - return; - } - + LIMIT_AXIS(x); LIMIT_AXIS(y); LIMIT_AXIS(z); + #if ENABLED(NOZZLE_CLEAN_PATTERN_CIRCLE) + if (pattern == 2 && !(WITHIN(middle[arrPos].x, soft_endstop.min.x + radius, soft_endstop.max.x - radius) + && WITHIN(middle[arrPos].y, soft_endstop.min.y + radius, soft_endstop.max.y - radius)) + ) { + SERIAL_ECHOLNPGM("Warning: Radius Out of Range"); return; + } + #endif } #endif - if (pattern == 2) { - if (!(cleans & (_BV(X_AXIS) | _BV(Y_AXIS)))) { - SERIAL_ECHOLNPGM("Warning: Clean Circle requires XY"); - return; + #if ENABLED(NOZZLE_CLEAN_PATTERN_CIRCLE) + if (pattern == 2 && !(cleans & (_BV(X_AXIS) | _BV(Y_AXIS)))) { + SERIAL_ECHOLNPGM("Warning: Clean Circle requires XY"); return; } - } - else { + #endif + + if (TERN1(NOZZLE_CLEAN_PATTERN_CIRCLE, pattern != 2)) { if (!TEST(cleans, X_AXIS)) start[arrPos].x = end[arrPos].x = current_position.x; if (!TEST(cleans, Y_AXIS)) start[arrPos].y = end[arrPos].y = current_position.y; } if (!TEST(cleans, Z_AXIS)) start[arrPos].z = end[arrPos].z = current_position.z; switch (pattern) { - case 1: zigzag(start[arrPos], end[arrPos], strokes, objects); break; - case 2: circle(start[arrPos], middle[arrPos], strokes, radius); break; - default: stroke(start[arrPos], end[arrPos], strokes); + default: + #if ENABLED(NOZZLE_CLEAN_PATTERN_LINE) + case 0: stroke(start[arrPos], end[arrPos], strokes); + #endif + #if ENABLED(NOZZLE_CLEAN_PATTERN_ZIGZAG) + case 1: zigzag(start[arrPos], end[arrPos], strokes, objects); break; + #endif + #if ENABLED(NOZZLE_CLEAN_PATTERN_CIRCLE) + case 2: circle(start[arrPos], middle[arrPos], strokes, radius); break; + #endif } } diff --git a/buildroot/tests/rambo b/buildroot/tests/rambo index 040773230a0b..b50f22040428 100755 --- a/buildroot/tests/rambo +++ b/buildroot/tests/rambo @@ -98,8 +98,8 @@ opt_enable EEPROM_SETTINGS EEPROM_CHITCHAT REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CO NOZZLE_PARK_FEATURE NOZZLE_CLEAN_FEATURE \ ADVANCED_PAUSE_FEATURE PARK_HEAD_ON_PAUSE ADVANCED_PAUSE_CONTINUOUS_PURGE FILAMENT_LOAD_UNLOAD_GCODES \ PRINTCOUNTER SERVICE_NAME_1 SERVICE_INTERVAL_1 M114_DETAIL -opt_add M100_FREE_MEMORY_DUMPER -opt_add M100_FREE_MEMORY_CORRUPTOR +opt_disable NOZZLE_CLEAN_PATTERN_CIRCLE +opt_add M100_FREE_MEMORY_DUMPER M100_FREE_MEMORY_CORRUPTOR exec_test $1 $2 "MINIRAMBO | RRDGFSC | ABL Linear Manual | M100 | PWM_MOTOR_CURRENT | M600..." "$3" # From 02a14d31b2bbe6f723dc8da75f1f124a99deedba Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 24 Apr 2023 00:21:28 +0000 Subject: [PATCH 063/427] [cron] Bump distribution date (2023-04-24) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index e18ee687ed04..a2a254824dc9 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-23" +//#define STRING_DISTRIBUTION_DATE "2023-04-24" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 51f45936caef..146d422033fc 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-23" + #define STRING_DISTRIBUTION_DATE "2023-04-24" #endif /** From 743903b96fd64ef8cbe23d84eed7de1e29b1abed Mon Sep 17 00:00:00 2001 From: Nick Date: Mon, 24 Apr 2023 01:50:39 +0100 Subject: [PATCH 064/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20Anycubic=20PlayTun?= =?UTF-8?q?e=20(#25735)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25690 Co-authored-by: Scott Lahteine --- Marlin/src/lcd/extui/anycubic/Tunes.cpp | 4 ++-- Marlin/src/lcd/extui/anycubic/Tunes.h | 4 ++-- Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp | 10 +++++----- Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp | 10 +++++----- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/Marlin/src/lcd/extui/anycubic/Tunes.cpp b/Marlin/src/lcd/extui/anycubic/Tunes.cpp index 118f049bc1f6..d1fb888d17a2 100644 --- a/Marlin/src/lcd/extui/anycubic/Tunes.cpp +++ b/Marlin/src/lcd/extui/anycubic/Tunes.cpp @@ -39,12 +39,12 @@ namespace Anycubic { - void PlayTune(const uint16_t *tune, const uint8_t speed=1) { + void PlayTune(const uint16_t *tune, const uint8_t speed/*=1*/) { const uint16_t wholenotelen = tune[0] / speed; for (uint8_t pos = 1; pos < MAX_TUNE_LENGTH; pos += 2) { const uint16_t freq = tune[pos]; if (freq == n_END) break; - BUZZ(freq, wholenotelen / tune[pos + 1]); + BUZZ(wholenotelen / tune[pos + 1], freq); } } diff --git a/Marlin/src/lcd/extui/anycubic/Tunes.h b/Marlin/src/lcd/extui/anycubic/Tunes.h index be8bc7223c80..8b99f1f863e9 100644 --- a/Marlin/src/lcd/extui/anycubic/Tunes.h +++ b/Marlin/src/lcd/extui/anycubic/Tunes.h @@ -61,7 +61,7 @@ n_END=10000 // end of tune marker namespace Anycubic { - void PlayTune(const uint16_t *tune, const uint8_t speed); + void PlayTune(const uint16_t *tune, const uint8_t speed=1); // Only uncomment the tunes you are using to save memory // This will help you write tunes! @@ -100,7 +100,7 @@ namespace Anycubic { n_END }; - const uint16_t Heater_Timedout[] = { + const uint16_t HeaterTimeout[] = { 1000, n_C6,l_T1, n_END diff --git a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp index 45fb73c02f44..f3bc64a02498 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp +++ b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp @@ -104,7 +104,7 @@ void ChironTFT::Startup() { injectCommands(AC_cmnd_enable_leveling); // Startup tunes are defined in Tunes.h - PlayTune(TERN(AC_DEFAULT_STARTUP_TUNE, Anycubic_PowerOn, GB_PowerOn), 1); + PlayTune(TERN(AC_DEFAULT_STARTUP_TUNE, Anycubic_PowerOn, GB_PowerOn)); #if ACDEBUGLEVEL SERIAL_ECHOLNPGM("AC Debug Level ", ACDEBUGLEVEL); @@ -192,7 +192,7 @@ void ChironTFT::FilamentRunout() { // 1 Signal filament out last_error = AC_error_filament_runout; SendtoTFTLN(isPrintingFromMedia() ? AC_msg_filament_out_alert : AC_msg_filament_out_block); - PlayTune(FilamentOut, 1); + PlayTune(FilamentOut); } void ChironTFT::ConfirmationRequest(const char * const msg) { @@ -215,7 +215,7 @@ void ChironTFT::ConfirmationRequest(const char * const msg) { if (strcmp_P(msg, MARLIN_msg_heater_timeout) == 0) { pause_state = AC_paused_heater_timed_out; SendtoTFTLN(AC_msg_paused); // enable continue button - PlayTune(BEEPER_PIN,Heater_Timedout,1); + PlayTune(HeaterTimeout); } // Reheat finished, send acknowledgement else if (strcmp_P(msg, MARLIN_msg_reheat_done) == 0) { @@ -253,7 +253,7 @@ void ChironTFT::StatusChange(const char * const msg) { } // If probing fails don't save the mesh raise the probe above the bad point if (strcmp_P(msg, MARLIN_msg_probing_failed) == 0) { - PlayTune(BeepBeepBeeep, 1); + PlayTune(BeepBeepBeeep); injectCommands(F("G1 Z50 F500")); SendtoTFTLN(AC_msg_probing_complete); printer_state = AC_printer_idle; @@ -307,7 +307,7 @@ void ChironTFT::StatusChange(const char * const msg) { void ChironTFT::PowerLossRecovery() { printer_state = AC_printer_resuming_from_power_outage; // Play tune to notify user we can recover. last_error = AC_error_powerloss; - PlayTune(SOS, 1); + PlayTune(SOS); SERIAL_ECHOLNF(AC_msg_powerloss_recovery); } diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp index e2bc343d67fa..387557f2afec 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp @@ -463,7 +463,7 @@ namespace Anycubic { pop_up_index = 15; // show filament lack. if (READ(FIL_RUNOUT_PIN) == FIL_RUNOUT_STATE) { - PlayTune(FilamentOut, 1); + PlayTune(FilamentOut); feedrate_back = getFeedrate_percent(); @@ -505,7 +505,7 @@ namespace Anycubic { if (strcmp_P(msg, MARLIN_msg_heater_timeout) == 0) { pause_state = AC_paused_heater_timed_out; SendtoTFTLN(AC_msg_paused); // enable continue button - PlayTune(Heater_Timedout, 1); + PlayTune(HeaterTimeout); } // Reheat finished, send acknowledgement else if (strcmp_P(msg, MARLIN_msg_reheat_done) == 0) { @@ -576,7 +576,7 @@ namespace Anycubic { // If probing fails don't save the mesh raise the probe above the bad point if (strcmp_P(msg, MARLIN_msg_probing_failed) == 0) { - PlayTune(BeepBeepBeeep, 1); + PlayTune(BeepBeepBeeep); injectCommands(F("G1 Z50 F500")); ChangePageOfTFT(PAGE_CHS_ABNORMAL_LEVELING_SENSOR); SendtoTFTLN(AC_msg_probing_complete); @@ -1070,7 +1070,7 @@ namespace Anycubic { #else SendTxtToTFT(recovery.info.sd_filename, TXT_OUTAGE_RECOVERY_FILE); #endif - PlayTune(SOS, 1); + PlayTune(SOS); } #else constexpr bool is_outage = false; @@ -1081,7 +1081,7 @@ namespace Anycubic { } else if (control_value == 0x010000) { // startup first gif // Startup tunes are defined in Tunes.h - PlayTune(Anycubic_PowerOn, 1); // takes 3500 ms + PlayTune(Anycubic_PowerOn); // takes 3500 ms } } From 2954bf26979e43c6b36ca2739af4e887b651f3f8 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 24 Apr 2023 00:24:40 -0500 Subject: [PATCH 065/427] =?UTF-8?q?=F0=9F=8C=90=20Replace=20'=3D'=20with?= =?UTF-8?q?=20'{'=20for=20substitution?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp | 6 +-- Marlin/src/lcd/language/language_cz.h | 4 +- Marlin/src/lcd/language/language_de.h | 6 +-- Marlin/src/lcd/language/language_en.h | 10 ++-- Marlin/src/lcd/language/language_es.h | 4 +- Marlin/src/lcd/language/language_fr.h | 4 +- Marlin/src/lcd/language/language_fr_na.h | 4 +- Marlin/src/lcd/language/language_gl.h | 6 +-- Marlin/src/lcd/language/language_hu.h | 12 ++--- Marlin/src/lcd/language/language_it.h | 8 ++-- Marlin/src/lcd/language/language_pl.h | 8 ++-- Marlin/src/lcd/language/language_pt_br.h | 2 +- Marlin/src/lcd/language/language_ro.h | 4 +- Marlin/src/lcd/language/language_ru.h | 6 +-- Marlin/src/lcd/language/language_sk.h | 8 ++-- Marlin/src/lcd/language/language_sv.h | 6 +-- Marlin/src/lcd/language/language_tr.h | 8 ++-- Marlin/src/lcd/language/language_uk.h | 6 +-- Marlin/src/lcd/language/language_zh_CN.h | 44 ++++++++--------- Marlin/src/lcd/language/language_zh_TW.h | 50 ++++++++++---------- Marlin/src/lcd/lcdprint.cpp | 6 +-- Marlin/src/lcd/lcdprint.h | 2 +- Marlin/src/lcd/tft/tft_string.cpp | 6 +-- 23 files changed, 110 insertions(+), 110 deletions(-) diff --git a/Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp b/Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp index 38a8eafe2366..6d60608426e8 100644 --- a/Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp @@ -44,7 +44,7 @@ uint8_t read_byte(const uint8_t *byte) { return *byte; } * Add a string, applying substitutions for the following characters: * * $ displays the clipped string given by fstr or cstr - * = displays '0'....'10' for indexes 0 - 10 + * { displays '0'....'10' for indexes 0 - 10 * ~ displays '1'....'11' for indexes 0 - 10 * * displays 'E1'...'E11' for indexes 0 - 10 (By default. Uses LCD_FIRST_TOOL) * @ displays an axis name such as XYZUVW, or E for an extruder @@ -57,9 +57,9 @@ void DWIN_String::add(const char *tpl, const int8_t index, const char *cstr/*=nu if (wc > 255) wc |= 0x0080; const uint8_t ch = uint8_t(wc & 0x00FF); - if (ch == '=' || ch == '~' || ch == '*') { + if (ch == '{' || ch == '~' || ch == '*') { if (index >= 0) { - int8_t inum = index + ((ch == '=') ? 0 : LCD_FIRST_TOOL); + int8_t inum = index + ((ch == '{') ? 0 : LCD_FIRST_TOOL); if (ch == '*') add_character('E'); if (inum >= 10) { add_character('0' + (inum / 10)); inum %= 10; } add_character('0' + inum); diff --git a/Marlin/src/lcd/language/language_cz.h b/Marlin/src/lcd/language/language_cz.h index d06c5554fde3..1f697f8d5a25 100644 --- a/Marlin/src/lcd/language/language_cz.h +++ b/Marlin/src/lcd/language/language_cz.h @@ -334,7 +334,7 @@ namespace Language_cz { LSTR MSG_STOP_PRINT = _UxGT("Zastavit tisk"); LSTR MSG_PRINTING_OBJECT = _UxGT("Tisk objektu"); LSTR MSG_CANCEL_OBJECT = _UxGT("Zrušit objekt"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Zrušit objekt ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Zrušit objekt {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Obnova výpadku"); LSTR MSG_MEDIA_MENU = _UxGT("Tisknout z SD"); LSTR MSG_NO_MEDIA = _UxGT("Žádná SD karta"); @@ -512,7 +512,7 @@ namespace Language_cz { LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Vytáhněte, klikněte"); LSTR MSG_MIX = _UxGT("Mix"); - LSTR MSG_MIX_COMPONENT_N = _UxGT("Komponenta ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Komponenta {"); LSTR MSG_MIXER = _UxGT("Mixér"); LSTR MSG_GRADIENT = _UxGT("Přechod"); LSTR MSG_FULL_GRADIENT = _UxGT("Celý přechod"); diff --git a/Marlin/src/lcd/language/language_de.h b/Marlin/src/lcd/language/language_de.h index 4313a80490ca..534d49ade9e9 100644 --- a/Marlin/src/lcd/language/language_de.h +++ b/Marlin/src/lcd/language/language_de.h @@ -277,7 +277,7 @@ namespace Language_de { LSTR MSG_SET_LEDS_VIOLET = _UxGT("Violett"); LSTR MSG_SET_LEDS_WHITE = _UxGT("Weiß"); LSTR MSG_SET_LEDS_DEFAULT = _UxGT("Standard"); - LSTR MSG_LED_CHANNEL_N = _UxGT("Kanal ="); + LSTR MSG_LED_CHANNEL_N = _UxGT("Kanal {"); LSTR MSG_LEDS2 = _UxGT("Lichter #2"); LSTR MSG_NEO2_PRESETS = _UxGT("Licht #2 Voreinst."); LSTR MSG_NEO2_BRIGHTNESS = _UxGT("Helligkeit"); @@ -461,7 +461,7 @@ namespace Language_de { LSTR MSG_END_LOOPS = _UxGT("Wiederholung beenden"); LSTR MSG_PRINTING_OBJECT = _UxGT("Objekt drucken"); LSTR MSG_CANCEL_OBJECT = _UxGT("Objekt abbrechen"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Objekt abbrechen ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Objekt abbrechen {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Wiederh. n. Stroma."); LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Druckauftrag fortset."); LSTR MSG_MEDIA_MENU = _UxGT("Druck vom Medium"); @@ -692,7 +692,7 @@ namespace Language_de { LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Entfernen, klicken"); LSTR MSG_MIX = _UxGT("Mix"); - LSTR MSG_MIX_COMPONENT_N = _UxGT("Komponente ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Komponente {"); LSTR MSG_MIXER = _UxGT("Mixer"); LSTR MSG_GRADIENT = _UxGT("Gradient"); // equal Farbverlauf LSTR MSG_FULL_GRADIENT = _UxGT("Volle Gradient"); diff --git a/Marlin/src/lcd/language/language_en.h b/Marlin/src/lcd/language/language_en.h index 9a64587f15f2..0cfd2f8beaec 100644 --- a/Marlin/src/lcd/language/language_en.h +++ b/Marlin/src/lcd/language/language_en.h @@ -30,7 +30,7 @@ * Substitutions are applied for the following characters when used in menu items titles: * * $ displays an inserted string - * = displays '0'....'10' for indexes 0 - 10 + * { displays '0'....'10' for indexes 0 - 10 * ~ displays '1'....'11' for indexes 0 - 10 * * displays 'E1'...'E11' for indexes 0 - 10 (By default. Uses LCD_FIRST_TOOL) * @ displays an axis name such as XYZUVW, or E for an extruder @@ -298,7 +298,7 @@ namespace Language_en { LSTR MSG_SET_LEDS_VIOLET = _UxGT("Violet"); LSTR MSG_SET_LEDS_WHITE = _UxGT("White"); LSTR MSG_SET_LEDS_DEFAULT = _UxGT("Default"); - LSTR MSG_LED_CHANNEL_N = _UxGT("Channel ="); + LSTR MSG_LED_CHANNEL_N = _UxGT("Channel {"); LSTR MSG_LEDS2 = _UxGT("Lights #2"); LSTR MSG_NEO2_PRESETS = _UxGT("Light #2 Presets"); LSTR MSG_NEO2_BRIGHTNESS = _UxGT("Brightness"); @@ -505,7 +505,7 @@ namespace Language_en { LSTR MSG_HOST_START_PRINT = _UxGT("Start Host Print"); LSTR MSG_PRINTING_OBJECT = _UxGT("Printing Object"); LSTR MSG_CANCEL_OBJECT = _UxGT("Cancel Object"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancel Object ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancel Object {"); LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Continue Print Job"); LSTR MSG_MEDIA_MENU = _UxGT("Print from ") MEDIA_TYPE_EN; LSTR MSG_TURN_OFF = _UxGT("Turn off the printer"); @@ -514,7 +514,7 @@ namespace Language_en { LSTR MSG_HOST_START_PRINT = _UxGT("Host Start"); LSTR MSG_PRINTING_OBJECT = _UxGT("Print Obj"); LSTR MSG_CANCEL_OBJECT = _UxGT("Cancel Obj"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancel Obj ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancel Obj {"); LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Continue Job"); LSTR MSG_MEDIA_MENU = MEDIA_TYPE_EN _UxGT(" Print"); LSTR MSG_TURN_OFF = _UxGT("Turn off now"); @@ -757,7 +757,7 @@ namespace Language_en { LSTR MSG_MMU2_REMOVE_AND_CLICK = _UxGT("Remove and click..."); LSTR MSG_MIX = _UxGT("Mix"); - LSTR MSG_MIX_COMPONENT_N = _UxGT("Component ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Component {"); LSTR MSG_MIXER = _UxGT("Mixer"); LSTR MSG_GRADIENT = _UxGT("Gradient"); LSTR MSG_FULL_GRADIENT = _UxGT("Full Gradient"); diff --git a/Marlin/src/lcd/language/language_es.h b/Marlin/src/lcd/language/language_es.h index 371df360ee82..f3d6fc577d51 100644 --- a/Marlin/src/lcd/language/language_es.h +++ b/Marlin/src/lcd/language/language_es.h @@ -338,7 +338,7 @@ namespace Language_es { LSTR MSG_STOP_PRINT = _UxGT("Detener impresión"); LSTR MSG_PRINTING_OBJECT = _UxGT("Imprimiendo Objeto"); LSTR MSG_CANCEL_OBJECT = _UxGT("Cancelar Objeto"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancelar Objeto ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancelar Objeto {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Rec. Fallo electrico"); LSTR MSG_MEDIA_MENU = _UxGT("Imprim. desde SD/FD"); LSTR MSG_NO_MEDIA = _UxGT("SD/FD no presente"); @@ -510,7 +510,7 @@ namespace Language_es { LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Retirar, y pulsar"); LSTR MSG_MIX = _UxGT("Mezcla"); - LSTR MSG_MIX_COMPONENT_N = _UxGT("Componente ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Componente {"); LSTR MSG_MIXER = _UxGT("Miezclador"); LSTR MSG_GRADIENT = _UxGT("Degradado"); LSTR MSG_FULL_GRADIENT = _UxGT("Degradado Total"); diff --git a/Marlin/src/lcd/language/language_fr.h b/Marlin/src/lcd/language/language_fr.h index f7eec7f5cea6..01422f5c76e7 100644 --- a/Marlin/src/lcd/language/language_fr.h +++ b/Marlin/src/lcd/language/language_fr.h @@ -353,7 +353,7 @@ namespace Language_fr { LSTR MSG_STOP_PRINT = _UxGT("Arrêter impr."); LSTR MSG_PRINTING_OBJECT = _UxGT("Impression objet"); LSTR MSG_CANCEL_OBJECT = _UxGT("Annuler objet"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Annuler objet ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Annuler objet {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Récup. coup."); LSTR MSG_MEDIA_MENU = _UxGT("Impression SD"); LSTR MSG_NO_MEDIA = _UxGT("Pas de média"); @@ -540,7 +540,7 @@ namespace Language_fr { LSTR MSG_MMU2_RESETTING = _UxGT("Réinit. MMU..."); LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Retrait, click"); - LSTR MSG_MIX_COMPONENT_N = _UxGT("Composante ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Composante {"); LSTR MSG_MIXER = _UxGT("Mixeur"); LSTR MSG_GRADIENT = _UxGT("Dégradé"); LSTR MSG_FULL_GRADIENT = _UxGT("Dégradé complet"); diff --git a/Marlin/src/lcd/language/language_fr_na.h b/Marlin/src/lcd/language/language_fr_na.h index 9300b299eba3..12fa0295eaa0 100644 --- a/Marlin/src/lcd/language/language_fr_na.h +++ b/Marlin/src/lcd/language/language_fr_na.h @@ -353,7 +353,7 @@ namespace Language_fr_na { LSTR MSG_STOP_PRINT = _UxGT("Arreter impr."); LSTR MSG_PRINTING_OBJECT = _UxGT("Impression objet"); LSTR MSG_CANCEL_OBJECT = _UxGT("Annuler objet"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Annuler objet ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Annuler objet {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Recup. coup."); LSTR MSG_MEDIA_MENU = _UxGT("Impression SD"); LSTR MSG_NO_MEDIA = _UxGT("Pas de media"); @@ -543,7 +543,7 @@ namespace Language_fr_na { LSTR MSG_MMU2_RESETTING = _UxGT("Reinit. MMU..."); LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Retrait, click"); - LSTR MSG_MIX_COMPONENT_N = _UxGT("Composante ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Composante {"); LSTR MSG_MIXER = _UxGT("Mixeur"); LSTR MSG_GRADIENT = _UxGT("Degrade"); LSTR MSG_FULL_GRADIENT = _UxGT("Degrade complet"); diff --git a/Marlin/src/lcd/language/language_gl.h b/Marlin/src/lcd/language/language_gl.h index da8a7047c776..83855dd56d8a 100644 --- a/Marlin/src/lcd/language/language_gl.h +++ b/Marlin/src/lcd/language/language_gl.h @@ -22,7 +22,7 @@ #pragma once /** - * Galician language (ISO "gl") + * Galician language * * LCD Menu Messages * See also https://marlinfw.org/docs/development/lcd_language.html @@ -342,7 +342,7 @@ namespace Language_gl { LSTR MSG_STOP_PRINT = _UxGT("Deter impresión"); LSTR MSG_PRINTING_OBJECT = _UxGT("Imprimindo Obxecto"); LSTR MSG_CANCEL_OBJECT = _UxGT("Cancelar Obxecto"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancelar Obxecto ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancelar Obxecto {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Recuperar Impresión"); LSTR MSG_MEDIA_MENU = _UxGT("Tarxeta SD"); LSTR MSG_NO_MEDIA = _UxGT("Sen tarxeta SD"); @@ -525,7 +525,7 @@ namespace Language_gl { LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Expulsar, premer"); LSTR MSG_MIX = _UxGT("Mestura"); - LSTR MSG_MIX_COMPONENT_N = _UxGT("Compoñente ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Compoñente {"); LSTR MSG_MIXER = _UxGT("Mesturadora"); LSTR MSG_GRADIENT = _UxGT("Degradado"); LSTR MSG_FULL_GRADIENT = _UxGT("Degradado Total"); diff --git a/Marlin/src/lcd/language/language_hu.h b/Marlin/src/lcd/language/language_hu.h index 471f2ee8cb5b..99062ca5c342 100644 --- a/Marlin/src/lcd/language/language_hu.h +++ b/Marlin/src/lcd/language/language_hu.h @@ -240,7 +240,7 @@ namespace Language_hu { LSTR MSG_SET_LEDS_VIOLET = _UxGT("Viola"); LSTR MSG_SET_LEDS_WHITE = _UxGT("Fehér"); LSTR MSG_SET_LEDS_DEFAULT = _UxGT("Alapérték"); - LSTR MSG_LED_CHANNEL_N = _UxGT("Csatorna ="); + LSTR MSG_LED_CHANNEL_N = _UxGT("Csatorna {"); LSTR MSG_LEDS2 = _UxGT("LED-ek #2"); LSTR MSG_NEO2_PRESETS = _UxGT("Fény #2 megadott"); LSTR MSG_NEO2_BRIGHTNESS = _UxGT("Fényerö"); @@ -284,10 +284,10 @@ namespace Language_hu { LSTR MSG_FLOWMETER_SAFETY = _UxGT("Áramlásbiztonság"); LSTR MSG_LASER = _UxGT("Lézer"); LSTR MSG_FAN_SPEED = _UxGT("Hütés sebesség"); - LSTR MSG_FAN_SPEED_N = _UxGT("Hütés sebesség ="); - LSTR MSG_STORED_FAN_N = _UxGT("Tárolt hütés ="); + LSTR MSG_FAN_SPEED_N = _UxGT("Hütés sebesség {"); + LSTR MSG_STORED_FAN_N = _UxGT("Tárolt hütés {"); LSTR MSG_EXTRA_FAN_SPEED = _UxGT("Extra hütés sebesség"); - LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("Extra hütés sebesség ="); + LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("Extra hütés sebesség {"); LSTR MSG_CONTROLLER_FAN = _UxGT("Hütésvezérlés"); LSTR MSG_CONTROLLER_FAN_IDLE_SPEED = _UxGT("Alapjárat"); LSTR MSG_CONTROLLER_FAN_AUTO_ON = _UxGT("Automatikus mód"); @@ -396,7 +396,7 @@ namespace Language_hu { LSTR MSG_END_LOOPS = _UxGT("Hurok ismétlés vége"); LSTR MSG_PRINTING_OBJECT = _UxGT("Objektum nyomtatása"); LSTR MSG_CANCEL_OBJECT = _UxGT("Objektum törlése"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Objektum törlése ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Objektum törlése {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Kiesés helyreáll."); LSTR MSG_MEDIA_MENU = _UxGT("Nyomtatás tárolóról"); LSTR MSG_NO_MEDIA = _UxGT("Nincs tároló"); @@ -587,7 +587,7 @@ namespace Language_hu { LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Kidob, kattint"); LSTR MSG_MIX = _UxGT("Kever"); - LSTR MSG_MIX_COMPONENT_N = _UxGT("Összetevö ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Összetevö {"); LSTR MSG_MIXER = _UxGT("Keverö"); LSTR MSG_GRADIENT = _UxGT("Színátm."); LSTR MSG_FULL_GRADIENT = _UxGT("Teljes színátm."); diff --git a/Marlin/src/lcd/language/language_it.h b/Marlin/src/lcd/language/language_it.h index 4bc7c0303a3e..bd0d2f22576a 100644 --- a/Marlin/src/lcd/language/language_it.h +++ b/Marlin/src/lcd/language/language_it.h @@ -30,7 +30,7 @@ * Substitutions are applied for the following characters when used in menu items titles: * * $ displays an inserted string - * = displays '0'....'10' for indexes 0 - 10 + * { displays '0'....'10' for indexes 0 - 10 * ~ displays '1'....'11' for indexes 0 - 10 * * displays 'E1'...'E11' for indexes 0 - 10 (By default. Uses LCD_FIRST_TOOL) * @ displays an axis name such as XYZUVW, or E for an extruder @@ -293,7 +293,7 @@ namespace Language_it { LSTR MSG_SET_LEDS_VIOLET = _UxGT("Viola"); LSTR MSG_SET_LEDS_WHITE = _UxGT("Bianco"); LSTR MSG_SET_LEDS_DEFAULT = _UxGT("Predefinito"); - LSTR MSG_LED_CHANNEL_N = _UxGT("Canale ="); + LSTR MSG_LED_CHANNEL_N = _UxGT("Canale {"); LSTR MSG_LEDS2 = _UxGT("Luci #2"); LSTR MSG_NEO2_PRESETS = _UxGT("Presets luce #2"); LSTR MSG_NEO2_BRIGHTNESS = _UxGT("Luminosità"); @@ -498,7 +498,7 @@ namespace Language_it { LSTR MSG_END_LOOPS = _UxGT("Fine cicli di rip."); LSTR MSG_PRINTING_OBJECT = _UxGT("Stampa Oggetto"); LSTR MSG_CANCEL_OBJECT = _UxGT("Cancella Oggetto"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Canc. Oggetto ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Canc. Oggetto {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Ripresa da PowerLoss"); LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Cont.proc.stampa"); LSTR MSG_MEDIA_MENU = _UxGT("Stampa da media"); @@ -734,7 +734,7 @@ namespace Language_it { LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Rimuovi, click"); LSTR MSG_MIX = _UxGT("Miscela"); - LSTR MSG_MIX_COMPONENT_N = _UxGT("Componente ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Componente {"); LSTR MSG_MIXER = _UxGT("Miscelatore"); LSTR MSG_GRADIENT = _UxGT("Gradiente"); LSTR MSG_FULL_GRADIENT = _UxGT("Gradiente pieno"); diff --git a/Marlin/src/lcd/language/language_pl.h b/Marlin/src/lcd/language/language_pl.h index 5bf488494185..855a1e3bd167 100644 --- a/Marlin/src/lcd/language/language_pl.h +++ b/Marlin/src/lcd/language/language_pl.h @@ -30,7 +30,7 @@ * Substitutions are applied for the following characters when used in menu items titles: * * $ displays an inserted string - * = displays '0'....'10' for indexes 0 - 10 + * { displays '0'....'10' for indexes 0 - 10 * ~ displays '1'....'11' for indexes 0 - 10 * * displays 'E1'...'E11' for indexes 0 - 10 (By default. Uses LCD_FIRST_TOOL) * @ displays an axis name such as XYZUVW, or E for an extruder @@ -221,7 +221,7 @@ namespace Language_pl { LSTR MSG_SET_LEDS_VIOLET = _UxGT("Fioletowy"); LSTR MSG_SET_LEDS_WHITE = _UxGT("Biały"); LSTR MSG_SET_LEDS_DEFAULT = _UxGT("Domyślny"); - LSTR MSG_LED_CHANNEL_N = _UxGT("Kanał ="); + LSTR MSG_LED_CHANNEL_N = _UxGT("Kanał {"); LSTR MSG_NEO2_BRIGHTNESS = _UxGT("Jasność"); LSTR MSG_CUSTOM_LEDS = _UxGT("Własne światła"); LSTR MSG_INTENSITY_R = _UxGT("Czerwony"); @@ -330,7 +330,7 @@ namespace Language_pl { LSTR MSG_STOP_PRINT = _UxGT("Stop"); LSTR MSG_PRINTING_OBJECT = _UxGT("Drukowanie obiektu"); LSTR MSG_CANCEL_OBJECT = _UxGT("Anunuj obiekt"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Anunuj obiekt ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Anunuj obiekt {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Odzyskiwanie po awarii"); LSTR MSG_MEDIA_MENU = _UxGT("Karta SD"); LSTR MSG_NO_MEDIA = _UxGT("Brak karty"); @@ -474,7 +474,7 @@ namespace Language_pl { LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Usuń, kliknij"); LSTR MSG_MIX = _UxGT("Miks"); - LSTR MSG_MIX_COMPONENT_N = _UxGT("Komponent ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Komponent {"); LSTR MSG_MIXER = _UxGT("Mikser"); LSTR MSG_FULL_GRADIENT = _UxGT("Pełny gradient"); LSTR MSG_TOGGLE_MIX = _UxGT("Przełacz miks"); diff --git a/Marlin/src/lcd/language/language_pt_br.h b/Marlin/src/lcd/language/language_pt_br.h index c17ca124ed7b..4ace61e11691 100644 --- a/Marlin/src/lcd/language/language_pt_br.h +++ b/Marlin/src/lcd/language/language_pt_br.h @@ -293,7 +293,7 @@ namespace Language_pt_br { LSTR MSG_STOP_PRINT = _UxGT("Parar impressão"); LSTR MSG_PRINTING_OBJECT = _UxGT("Imprimindo objeto"); LSTR MSG_CANCEL_OBJECT = _UxGT("Cancelar Objeto"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancelar Objeto ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancelar Objeto {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Recuperar Impressão"); LSTR MSG_MEDIA_MENU = _UxGT("Imprimir do SD"); LSTR MSG_NO_MEDIA = _UxGT("Sem cartão SD"); diff --git a/Marlin/src/lcd/language/language_ro.h b/Marlin/src/lcd/language/language_ro.h index bdb9f226a9f2..327ba7ad814a 100644 --- a/Marlin/src/lcd/language/language_ro.h +++ b/Marlin/src/lcd/language/language_ro.h @@ -348,7 +348,7 @@ namespace Language_ro { LSTR MSG_STOP_PRINT = _UxGT("Stop Print"); LSTR MSG_PRINTING_OBJECT = _UxGT("Printing Object"); LSTR MSG_CANCEL_OBJECT = _UxGT("Cancel Object"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancel Object ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancel Object {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Outage Recovery"); LSTR MSG_MEDIA_MENU = _UxGT("Print from Media"); LSTR MSG_NO_MEDIA = _UxGT("No Media"); @@ -532,7 +532,7 @@ namespace Language_ro { LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Remove, click"); LSTR MSG_MIX = _UxGT("Mix"); - LSTR MSG_MIX_COMPONENT_N = _UxGT("Component ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Component {"); LSTR MSG_MIXER = _UxGT("Mixer"); LSTR MSG_GRADIENT = _UxGT("Gradient"); LSTR MSG_FULL_GRADIENT = _UxGT("Full Gradient"); diff --git a/Marlin/src/lcd/language/language_ru.h b/Marlin/src/lcd/language/language_ru.h index 6dd773f77b3c..b5815be1bd2e 100644 --- a/Marlin/src/lcd/language/language_ru.h +++ b/Marlin/src/lcd/language/language_ru.h @@ -310,7 +310,7 @@ namespace Language_ru { LSTR MSG_SET_LEDS_VIOLET = _UxGT("Фиолетовый"); LSTR MSG_SET_LEDS_WHITE = _UxGT("Белый"); LSTR MSG_SET_LEDS_DEFAULT = _UxGT("Свет по умолчанию"); - LSTR MSG_LED_CHANNEL_N = _UxGT("Канал ="); + LSTR MSG_LED_CHANNEL_N = _UxGT("Канал {"); LSTR MSG_LEDS2 = _UxGT("Свет #2"); #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 LSTR MSG_NEO2_PRESETS = _UxGT("Свет #2 предустановки"); @@ -485,7 +485,7 @@ namespace Language_ru { LSTR MSG_STOP_PRINT = _UxGT("Остановить печать"); LSTR MSG_PRINTING_OBJECT = _UxGT("Печать объекта"); LSTR MSG_CANCEL_OBJECT = _UxGT("Завершить объект"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Завершить объект ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Завершить объект {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Восстановение сбоя"); LSTR MSG_MEDIA_MENU = _UxGT("Печать с SD карты"); LSTR MSG_NO_MEDIA = _UxGT("Нет SD карты"); @@ -734,7 +734,7 @@ namespace Language_ru { #else LSTR MSG_MIX = _UxGT("Смешив."); #endif - LSTR MSG_MIX_COMPONENT_N = _UxGT("Компонент ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Компонент {"); LSTR MSG_MIXER = _UxGT("Смеситель"); LSTR MSG_GRADIENT = _UxGT("Градиент"); LSTR MSG_FULL_GRADIENT = _UxGT("Полный градиент"); diff --git a/Marlin/src/lcd/language/language_sk.h b/Marlin/src/lcd/language/language_sk.h index c78029048b67..907b865bd9e6 100644 --- a/Marlin/src/lcd/language/language_sk.h +++ b/Marlin/src/lcd/language/language_sk.h @@ -34,7 +34,7 @@ * Substitutions are applied for the following characters when used in menu items titles: * * $ displays an inserted string - * = displays '0'....'10' for indexes 0 - 10 + * { displays '0'....'10' for indexes 0 - 10 * ~ displays '1'....'11' for indexes 0 - 10 * * displays 'E1'...'E11' for indexes 0 - 10 (By default. Uses LCD_FIRST_TOOL) * @ displays an axis name such as XYZUVW, or E for an extruder @@ -294,7 +294,7 @@ namespace Language_sk { LSTR MSG_SET_LEDS_VIOLET = _UxGT("Fialová"); LSTR MSG_SET_LEDS_WHITE = _UxGT("Biela"); LSTR MSG_SET_LEDS_DEFAULT = _UxGT("Obnoviť nastavenie"); - LSTR MSG_LED_CHANNEL_N = _UxGT("Kanál ="); + LSTR MSG_LED_CHANNEL_N = _UxGT("Kanál {"); LSTR MSG_LEDS2 = _UxGT("Svetlo #2"); LSTR MSG_NEO2_PRESETS = _UxGT("Predvolby svetla #2"); LSTR MSG_NEO2_BRIGHTNESS = _UxGT("Jas"); @@ -500,7 +500,7 @@ namespace Language_sk { LSTR MSG_HOST_START_PRINT = _UxGT("Spustiť z hosta"); LSTR MSG_PRINTING_OBJECT = _UxGT("Tlačím objekt"); LSTR MSG_CANCEL_OBJECT = _UxGT("Zrušiť objekt"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Zrušiť objekt ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Zrušiť objekt {"); LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Pokračovať v úlohe"); LSTR MSG_MEDIA_MENU = _UxGT("Vytlačiť z karty"); LSTR MSG_TURN_OFF = _UxGT("Vypnite tlačiareň"); @@ -509,7 +509,7 @@ namespace Language_sk { LSTR MSG_HOST_START_PRINT = _UxGT("Spustiť z hosta"); LSTR MSG_PRINTING_OBJECT = _UxGT("Tlačím obj."); LSTR MSG_CANCEL_OBJECT = _UxGT("Zrušiť obj."); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Zrušiť obj. ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Zrušiť obj. {"); LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Pokrač. v úlohe"); LSTR MSG_MEDIA_MENU = _UxGT("Tlač z karty"); LSTR MSG_TURN_OFF = _UxGT("Vypnit. teraz"); diff --git a/Marlin/src/lcd/language/language_sv.h b/Marlin/src/lcd/language/language_sv.h index 13ae8fcd29ca..570bc3df8dab 100644 --- a/Marlin/src/lcd/language/language_sv.h +++ b/Marlin/src/lcd/language/language_sv.h @@ -233,7 +233,7 @@ namespace Language_sv { LSTR MSG_SET_LEDS_VIOLET = _UxGT("Violet"); LSTR MSG_SET_LEDS_WHITE = _UxGT("Vitt"); LSTR MSG_SET_LEDS_DEFAULT = _UxGT("Standard"); - LSTR MSG_LED_CHANNEL_N = _UxGT("Kanal ="); + LSTR MSG_LED_CHANNEL_N = _UxGT("Kanal {"); LSTR MSG_LEDS2 = _UxGT("Ljus #2"); LSTR MSG_NEO2_PRESETS = _UxGT("Ljus #2 Förinställd"); LSTR MSG_NEO2_BRIGHTNESS = _UxGT("Ljusstyrka"); @@ -381,7 +381,7 @@ namespace Language_sv { LSTR MSG_END_LOOPS = _UxGT("Slut Upprepningsloop"); LSTR MSG_PRINTING_OBJECT = _UxGT("Skriver Objekt"); LSTR MSG_CANCEL_OBJECT = _UxGT("Avbryt Objekt"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Avbryt Objekt ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Avbryt Objekt {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Ström Avbrott"); LSTR MSG_MEDIA_MENU = _UxGT("Skriv fråm Media"); LSTR MSG_NO_MEDIA = _UxGT("Inget Media"); @@ -569,7 +569,7 @@ namespace Language_sv { LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Ta bort, Klicka"); LSTR MSG_MIX = _UxGT("Mixa"); - LSTR MSG_MIX_COMPONENT_N = _UxGT("Komponent ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Komponent {"); LSTR MSG_MIXER = _UxGT("Mixer"); LSTR MSG_GRADIENT = _UxGT("Gradient"); LSTR MSG_FULL_GRADIENT = _UxGT("Full Gradient"); diff --git a/Marlin/src/lcd/language/language_tr.h b/Marlin/src/lcd/language/language_tr.h index 414d545927e4..105413723032 100644 --- a/Marlin/src/lcd/language/language_tr.h +++ b/Marlin/src/lcd/language/language_tr.h @@ -280,7 +280,7 @@ namespace Language_tr { LSTR MSG_SET_LEDS_VIOLET = _UxGT("Menekşe"); LSTR MSG_SET_LEDS_WHITE = _UxGT("Beyaz"); LSTR MSG_SET_LEDS_DEFAULT = _UxGT("Varsayılan"); - LSTR MSG_LED_CHANNEL_N = _UxGT("Kanal ="); + LSTR MSG_LED_CHANNEL_N = _UxGT("Kanal {"); LSTR MSG_LEDS2 = _UxGT("Işıklar #2"); LSTR MSG_NEO2_PRESETS = _UxGT("Işık #2 Ön Ayarları"); LSTR MSG_NEO2_BRIGHTNESS = _UxGT("Parlaklık"); @@ -479,7 +479,7 @@ namespace Language_tr { LSTR MSG_HOST_START_PRINT = _UxGT("Host Baskıyı başlat"); LSTR MSG_PRINTING_OBJECT = _UxGT("Yazdırma Nesnesi"); LSTR MSG_CANCEL_OBJECT = _UxGT("Nesneyi İptal Et"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Nesneyi İptal Et ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Nesneyi İptal Et {"); LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Yazdırmaya Devam Et"); LSTR MSG_MEDIA_MENU = _UxGT("SD Karttan Yazdır"); LSTR MSG_TURN_OFF = _UxGT("Yazıcıyı kapat"); @@ -488,7 +488,7 @@ namespace Language_tr { LSTR MSG_HOST_START_PRINT = _UxGT("Host Başlatma"); LSTR MSG_PRINTING_OBJECT = _UxGT("Nesneyi Yazdır"); LSTR MSG_CANCEL_OBJECT = _UxGT("Nesneyi İptal Et"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Nesneyi İptal Et ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Nesneyi İptal Et {"); LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("İşe Devam Et"); LSTR MSG_MEDIA_MENU = MEDIA_TYPE_EN _UxGT(" Yazdır"); LSTR MSG_TURN_OFF = _UxGT("Şimdi kapat"); @@ -720,7 +720,7 @@ namespace Language_tr { LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Kaldır, tıkla"); LSTR MSG_MIX = _UxGT("Karışım"); - LSTR MSG_MIX_COMPONENT_N = _UxGT("Bileşen ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Bileşen {"); LSTR MSG_MIXER = _UxGT("Karıştırıcı"); LSTR MSG_GRADIENT = _UxGT("Gradyan"); LSTR MSG_FULL_GRADIENT = _UxGT("Tam Gradyan"); diff --git a/Marlin/src/lcd/language/language_uk.h b/Marlin/src/lcd/language/language_uk.h index 7bdd896a33d7..4ee32fe4bc6a 100644 --- a/Marlin/src/lcd/language/language_uk.h +++ b/Marlin/src/lcd/language/language_uk.h @@ -313,7 +313,7 @@ namespace Language_uk { LSTR MSG_SET_LEDS_VIOLET = _UxGT("Фіолетовий"); LSTR MSG_SET_LEDS_WHITE = _UxGT("Білий"); LSTR MSG_SET_LEDS_DEFAULT = _UxGT("За умовчанням"); - LSTR MSG_LED_CHANNEL_N = _UxGT("Канал ="); + LSTR MSG_LED_CHANNEL_N = _UxGT("Канал {"); LSTR MSG_LEDS2 = _UxGT("Світло #2"); #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 LSTR MSG_NEO2_PRESETS = _UxGT("Передустановка світла #2"); @@ -507,7 +507,7 @@ namespace Language_uk { LSTR MSG_END_LOOPS = _UxGT("End Repeat Loops"); // needs translation LSTR MSG_PRINTING_OBJECT = _UxGT("Друк об'єкта"); LSTR MSG_CANCEL_OBJECT = _UxGT("Завершити об'єкт"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Завершити об'єкт ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Завершити об'єкт {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Віднов. після збою"); LSTR MSG_MEDIA_MENU = _UxGT("Друкувати з SD"); LSTR MSG_NO_MEDIA = _UxGT("SD-картки немає"); @@ -780,7 +780,7 @@ namespace Language_uk { #else LSTR MSG_MIX = _UxGT("Змішув."); #endif - LSTR MSG_MIX_COMPONENT_N = _UxGT("Компонент ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("Компонент {"); LSTR MSG_MIXER = _UxGT("Змішувач"); LSTR MSG_GRADIENT = _UxGT("Градієнт"); LSTR MSG_FULL_GRADIENT = _UxGT("Повний градієнт"); diff --git a/Marlin/src/lcd/language/language_zh_CN.h b/Marlin/src/lcd/language/language_zh_CN.h index 3e8ab9870f3c..27f2a597c6df 100644 --- a/Marlin/src/lcd/language/language_zh_CN.h +++ b/Marlin/src/lcd/language/language_zh_CN.h @@ -198,27 +198,27 @@ namespace Language_zh_CN { LSTR MSG_UBL_6_FINE_TUNE_ALL = _UxGT("6. 细调所有的"); LSTR MSG_UBL_7_SAVE_MESH = _UxGT("7. 保存热床网格"); - LSTR MSG_LED_CONTROL = _UxGT("LED控制"); // "LED Control") - LSTR MSG_LEDS = _UxGT("灯"); // "Lights") - LSTR MSG_LED_PRESETS = _UxGT("灯预置"); // "Light Presets") - LSTR MSG_SET_LEDS_RED = _UxGT("红"); // "Red") - LSTR MSG_SET_LEDS_ORANGE = _UxGT("橙"); // "Orange") - LSTR MSG_SET_LEDS_YELLOW = _UxGT("黄"); // "Yellow") - LSTR MSG_SET_LEDS_GREEN = _UxGT("绿"); // "Green") - LSTR MSG_SET_LEDS_BLUE = _UxGT("蓝"); // "Blue") - LSTR MSG_SET_LEDS_INDIGO = _UxGT("青"); // "Indigo") - LSTR MSG_SET_LEDS_VIOLET = _UxGT("紫"); // "Violet") - LSTR MSG_SET_LEDS_WHITE = _UxGT("白"); // "White") - LSTR MSG_SET_LEDS_DEFAULT = _UxGT("缺省"); // "Default") - LSTR MSG_CUSTOM_LEDS = _UxGT("定制灯"); // "Custom Lights") - LSTR MSG_INTENSITY_R = _UxGT("红饱和度"); // "Red Intensity") - LSTR MSG_INTENSITY_G = _UxGT("绿饱和度"); // "Green Intensity") - LSTR MSG_INTENSITY_B = _UxGT("蓝饱和度"); // "Blue Intensity") - LSTR MSG_INTENSITY_W = _UxGT("白饱和度"); // "White Intensity") - LSTR MSG_LED_BRIGHTNESS = _UxGT("亮度"); // "Brightness") + LSTR MSG_LED_CONTROL = _UxGT("LED控制"); // "LED Control" + LSTR MSG_LEDS = _UxGT("灯"); // "Lights" + LSTR MSG_LED_PRESETS = _UxGT("灯预置"); // "Light Presets" + LSTR MSG_SET_LEDS_RED = _UxGT("红"); // "Red" + LSTR MSG_SET_LEDS_ORANGE = _UxGT("橙"); // "Orange" + LSTR MSG_SET_LEDS_YELLOW = _UxGT("黄"); // "Yellow" + LSTR MSG_SET_LEDS_GREEN = _UxGT("绿"); // "Green" + LSTR MSG_SET_LEDS_BLUE = _UxGT("蓝"); // "Blue" + LSTR MSG_SET_LEDS_INDIGO = _UxGT("青"); // "Indigo" + LSTR MSG_SET_LEDS_VIOLET = _UxGT("紫"); // "Violet" + LSTR MSG_SET_LEDS_WHITE = _UxGT("白"); // "White" + LSTR MSG_SET_LEDS_DEFAULT = _UxGT("缺省"); // "Default" + LSTR MSG_CUSTOM_LEDS = _UxGT("定制灯"); // "Custom Lights" + LSTR MSG_INTENSITY_R = _UxGT("红饱和度"); // "Red Intensity" + LSTR MSG_INTENSITY_G = _UxGT("绿饱和度"); // "Green Intensity" + LSTR MSG_INTENSITY_B = _UxGT("蓝饱和度"); // "Blue Intensity" + LSTR MSG_INTENSITY_W = _UxGT("白饱和度"); // "White Intensity" + LSTR MSG_LED_BRIGHTNESS = _UxGT("亮度"); // "Brightness" - LSTR MSG_MOVING = _UxGT("移动..."); // "Moving...") - LSTR MSG_FREE_XY = _UxGT("释放 XY"); // "Free XY") + LSTR MSG_MOVING = _UxGT("移动..."); // "Moving..." + LSTR MSG_FREE_XY = _UxGT("释放 XY"); // "Free XY" LSTR MSG_MOVE_X = _UxGT("移动X"); // "Move X" LSTR MSG_MOVE_Y = _UxGT("移动Y"); // "Move Y" LSTR MSG_MOVE_Z = _UxGT("移动Z"); // "Move Z" @@ -348,7 +348,7 @@ namespace Language_zh_CN { LSTR MSG_STOP_PRINT = _UxGT("停止打印"); // "Stop print" LSTR MSG_PRINTING_OBJECT = _UxGT("打印物体"); LSTR MSG_CANCEL_OBJECT = _UxGT("取消物体"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("取消物体 ="); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("取消物体 {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("中断恢复"); LSTR MSG_MEDIA_MENU = _UxGT("从存储卡上打印"); // "Print from SD" LSTR MSG_NO_MEDIA = _UxGT("无存储卡"); // "No SD card" @@ -532,7 +532,7 @@ namespace Language_zh_CN { LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("移出, 按下"); LSTR MSG_MIX = _UxGT("混合"); - LSTR MSG_MIX_COMPONENT_N = _UxGT("器件 ="); + LSTR MSG_MIX_COMPONENT_N = _UxGT("器件 {"); LSTR MSG_MIXER = _UxGT("混合器"); LSTR MSG_GRADIENT = _UxGT("梯度"); LSTR MSG_FULL_GRADIENT = _UxGT("全梯度"); diff --git a/Marlin/src/lcd/language/language_zh_TW.h b/Marlin/src/lcd/language/language_zh_TW.h index 5f9f0e3904af..570dc292c587 100644 --- a/Marlin/src/lcd/language/language_zh_TW.h +++ b/Marlin/src/lcd/language/language_zh_TW.h @@ -129,7 +129,7 @@ namespace Language_zh_TW { LSTR MSG_UBL_ACTIVATE_MESH = _UxGT("啟動UBL"); // "Activate UBL" LSTR MSG_UBL_DEACTIVATE_MESH = _UxGT("關閉UBL"); // "Deactivate UBL" LSTR MSG_UBL_SET_TEMP_BED = _UxGT("置設熱床溫度"); // "Bed Temp" - LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("置設熱床溫度"); // "Bed Temp") + LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("置設熱床溫度"); // "Bed Temp" LSTR MSG_UBL_SET_TEMP_HOTEND = _UxGT("置設噴嘴溫度"); // "Hotend Temp" LSTR MSG_UBL_HOTEND_TEMP_CUSTOM = _UxGT("熱端溫度"); // "Hotend Temp" LSTR MSG_UBL_MESH_EDIT = _UxGT("網格編輯"); // "Mesh Edit" @@ -194,27 +194,27 @@ namespace Language_zh_TW { LSTR MSG_UBL_6_FINE_TUNE_ALL = _UxGT("6. 細調所有的"); LSTR MSG_UBL_7_SAVE_MESH = _UxGT("7. 保存熱床網格"); - LSTR MSG_LED_CONTROL = _UxGT("燈管控制"); // "LED Control") - LSTR MSG_LEDS = _UxGT("燈"); // "Lights") - LSTR MSG_LED_PRESETS = _UxGT("燈預置"); // "Light Presets") - LSTR MSG_SET_LEDS_RED = _UxGT("红"); // "Red") - LSTR MSG_SET_LEDS_ORANGE = _UxGT("橙"); // "Orange") - LSTR MSG_SET_LEDS_YELLOW = _UxGT("黃"); // "Yellow") - LSTR MSG_SET_LEDS_GREEN = _UxGT("綠"); // "Green") - LSTR MSG_SET_LEDS_BLUE = _UxGT("藍"); // "Blue") - LSTR MSG_SET_LEDS_INDIGO = _UxGT("青"); // "Indigo") - LSTR MSG_SET_LEDS_VIOLET = _UxGT("紫"); // "Violet") - LSTR MSG_SET_LEDS_WHITE = _UxGT("白"); // "White") - LSTR MSG_SET_LEDS_DEFAULT = _UxGT("復歸"); // "Default") - LSTR MSG_CUSTOM_LEDS = _UxGT("定制燈"); // "Custom Lights") - LSTR MSG_INTENSITY_R = _UxGT("紅飽和度"); // "Red Intensity") - LSTR MSG_INTENSITY_G = _UxGT("綠飽和度"); // "Green Intensity") - LSTR MSG_INTENSITY_B = _UxGT("藍飽和度"); // "Blue Intensity") - LSTR MSG_INTENSITY_W = _UxGT("白飽和度"); // "White Intensity") - LSTR MSG_LED_BRIGHTNESS = _UxGT("亮度"); // "Brightness") + LSTR MSG_LED_CONTROL = _UxGT("燈管控制"); // "LED Control" + LSTR MSG_LEDS = _UxGT("燈"); // "Lights" + LSTR MSG_LED_PRESETS = _UxGT("燈預置"); // "Light Presets" + LSTR MSG_SET_LEDS_RED = _UxGT("红"); // "Red" + LSTR MSG_SET_LEDS_ORANGE = _UxGT("橙"); // "Orange" + LSTR MSG_SET_LEDS_YELLOW = _UxGT("黃"); // "Yellow" + LSTR MSG_SET_LEDS_GREEN = _UxGT("綠"); // "Green" + LSTR MSG_SET_LEDS_BLUE = _UxGT("藍"); // "Blue" + LSTR MSG_SET_LEDS_INDIGO = _UxGT("青"); // "Indigo" + LSTR MSG_SET_LEDS_VIOLET = _UxGT("紫"); // "Violet" + LSTR MSG_SET_LEDS_WHITE = _UxGT("白"); // "White" + LSTR MSG_SET_LEDS_DEFAULT = _UxGT("復歸"); // "Default" + LSTR MSG_CUSTOM_LEDS = _UxGT("定制燈"); // "Custom Lights" + LSTR MSG_INTENSITY_R = _UxGT("紅飽和度"); // "Red Intensity" + LSTR MSG_INTENSITY_G = _UxGT("綠飽和度"); // "Green Intensity" + LSTR MSG_INTENSITY_B = _UxGT("藍飽和度"); // "Blue Intensity" + LSTR MSG_INTENSITY_W = _UxGT("白飽和度"); // "White Intensity" + LSTR MSG_LED_BRIGHTNESS = _UxGT("亮度"); // "Brightness" - LSTR MSG_MOVING = _UxGT("移動 ..."); // "Moving...") - LSTR MSG_FREE_XY = _UxGT("釋放 XY"); // "Free XY") + LSTR MSG_MOVING = _UxGT("移動 ..."); // "Moving..." + LSTR MSG_FREE_XY = _UxGT("釋放 XY"); // "Free XY" LSTR MSG_MOVE_X = _UxGT("移動X"); // "Move X" LSTR MSG_MOVE_Y = _UxGT("移動Y"); // "Move Y" LSTR MSG_MOVE_Z = _UxGT("移動Z"); // "Move Z" @@ -235,10 +235,10 @@ namespace Language_zh_TW { LSTR MSG_BED = " " LCD_STR_THERMOMETER _UxGT(" 熱床"); // "Bed" LSTR MSG_CHAMBER = _UxGT("Enclosure"); LSTR MSG_FAN_SPEED = _UxGT("風扇速率"); // "Fan speed" - LSTR MSG_FAN_SPEED_N = _UxGT("風扇速率 ="); - LSTR MSG_STORED_FAN_N = _UxGT("Stored Fan ="); + LSTR MSG_FAN_SPEED_N = _UxGT("風扇速率 {"); + LSTR MSG_STORED_FAN_N = _UxGT("Stored Fan {"); LSTR MSG_EXTRA_FAN_SPEED = _UxGT("額外風扇速率"); // "Extra fan speed" - LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("額外風扇速率 ="); + LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("額外風扇速率 {"); LSTR MSG_FLOW = _UxGT("擠出速率"); LSTR MSG_FLOW_N = _UxGT("擠出速率 ~"); // "Flow" LSTR MSG_CONTROL = _UxGT("控制"); // "Control" @@ -322,7 +322,7 @@ namespace Language_zh_TW { LSTR MSG_STOP_PRINT = _UxGT("停止列印"); // "Stop print" LSTR MSG_PRINTING_OBJECT = _UxGT("列印物件"); // "Printing Object" LSTR MSG_CANCEL_OBJECT = _UxGT("中止物件"); // "Cancel Object" - LSTR MSG_CANCEL_OBJECT_N = _UxGT("中止物件 ="); // "Cancel Object =" + LSTR MSG_CANCEL_OBJECT_N = _UxGT("中止物件 {"); // "Cancel Object {" LSTR MSG_OUTAGE_RECOVERY = _UxGT("中斷恢復"); // "Outage Recovery" LSTR MSG_MEDIA_MENU = _UxGT("從記憶卡上列印"); // "Print from SD" LSTR MSG_NO_MEDIA = _UxGT("無記憶卡"); // "No SD card" diff --git a/Marlin/src/lcd/lcdprint.cpp b/Marlin/src/lcd/lcdprint.cpp index 650824e553bc..162f01a12cbd 100644 --- a/Marlin/src/lcd/lcdprint.cpp +++ b/Marlin/src/lcd/lcdprint.cpp @@ -37,7 +37,7 @@ * Print a string with optional substitutions: * * $ displays the clipped string given by fstr or cstr - * = displays '0'....'10' for indexes 0 - 10 + * { displays '0'....'10' for indexes 0 - 10 * ~ displays '1'....'11' for indexes 0 - 10 * * displays 'E1'...'E11' for indexes 0 - 10 (By default. Uses LCD_FIRST_TOOL) * @ displays an axis name such as XYZUVW, or E for an extruder @@ -50,11 +50,11 @@ lcd_uint_t lcd_put_u8str_P(PGM_P const ptpl, const int8_t ind, const char *cstr/ lchar_t wc; p = get_utf8_value_cb(p, read_byte_rom, wc); if (!wc) break; - if (wc == '=' || wc == '~' || wc == '*') { + if (wc == '{' || wc == '~' || wc == '*') { if (ind >= 0) { if (wc == '*') { lcd_put_u8str(F("E")); n--; } if (n) { - int8_t inum = ind + ((wc == '=') ? 0 : LCD_FIRST_TOOL); + int8_t inum = ind + ((wc == '{') ? 0 : LCD_FIRST_TOOL); if (inum >= 10) { lcd_put_lchar('0' + (inum / 10)); n--; inum %= 10; diff --git a/Marlin/src/lcd/lcdprint.h b/Marlin/src/lcd/lcdprint.h index bcf85cb69396..623c9dd4b91f 100644 --- a/Marlin/src/lcd/lcdprint.h +++ b/Marlin/src/lcd/lcdprint.h @@ -209,7 +209,7 @@ inline int lcd_put_u8str(const lcd_uint_t col, const lcd_uint_t row, FSTR_P cons * @brief Draw a string with optional substitution * @details Print a string with optional substitutions: * $ displays the clipped string given by fstr or cstr - * = displays '0'....'10' for indexes 0 - 10 + * { displays '0'....'10' for indexes 0 - 10 * ~ displays '1'....'11' for indexes 0 - 10 * * displays 'E1'...'E11' for indexes 0 - 10 (By default. Uses LCD_FIRST_TOOL) * @ displays an axis name such as XYZUVW, or E for an extruder diff --git a/Marlin/src/lcd/tft/tft_string.cpp b/Marlin/src/lcd/tft/tft_string.cpp index 1b65f226d902..82444a4398ee 100644 --- a/Marlin/src/lcd/tft/tft_string.cpp +++ b/Marlin/src/lcd/tft/tft_string.cpp @@ -179,7 +179,7 @@ void TFT_String::set() { * Add a string, applying substitutions for the following characters: * * $ displays the string given by fstr or cstr - * = displays '0'....'10' for indexes 0 - 10 + * { displays '0'....'10' for indexes 0 - 10 * ~ displays '1'....'11' for indexes 0 - 10 * * displays 'E1'...'E11' for indexes 0 - 10 (By default. Uses LCD_FIRST_TOOL) * @ displays an axis name such as XYZUVW, or E for an extruder @@ -191,9 +191,9 @@ void TFT_String::add(const char *tpl, const int8_t index, const char *cstr/*=nul tpl = get_utf8_value_cb(tpl, read_byte_ram, wc); const uint16_t ch = uint16_t(wc); - if (ch == '=' || ch == '~' || ch == '*') { + if (ch == '{' || ch == '~' || ch == '*') { if (index >= 0) { - int8_t inum = index + ((ch == '=') ? 0 : LCD_FIRST_TOOL); + int8_t inum = index + ((ch == '{') ? 0 : LCD_FIRST_TOOL); if (ch == '*') add_character('E'); if (inum >= 10) { add_character('0' + (inum / 10)); inum %= 10; } add_character('0' + inum); From 077a620e21fcb1cd355129a56f12125d067f2e0f Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 24 Apr 2023 05:24:10 -0500 Subject: [PATCH 066/427] =?UTF-8?q?=F0=9F=93=9D=20Developer=20note=20in=20?= =?UTF-8?q?boards.h?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/boards.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index 2f2ac1664e10..a51d9a12e17f 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -21,6 +21,11 @@ */ #pragma once +/** + * Whenever changes are made to this file, please update Marlin/Makefile + * and _data/boards.yml in the MarlinDocumentation repo. + */ + #include "macros.h" #define BOARD_UNKNOWN -1 From c034819cf8b81626cc0af719cdcc776ffdb6269f Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Tue, 25 Apr 2023 00:20:57 +0000 Subject: [PATCH 067/427] [cron] Bump distribution date (2023-04-25) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index a2a254824dc9..764df8447071 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-24" +//#define STRING_DISTRIBUTION_DATE "2023-04-25" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 146d422033fc..cf9077c43e57 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-24" + #define STRING_DISTRIBUTION_DATE "2023-04-25" #endif /** From 650e6fc42691a634c0a2f303734a6023e80eeecc Mon Sep 17 00:00:00 2001 From: Anson Liu Date: Mon, 24 Apr 2023 22:07:12 -0400 Subject: [PATCH 068/427] =?UTF-8?q?=F0=9F=94=A8=20Prevent=20SlowSoftWire?= =?UTF-8?q?=20+=20Wire=20name=20conflict=20(#25707)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/shared/eeprom_if_i2c.cpp | 21 +++++++++++---------- Marlin/src/lcd/marlinui.cpp | 2 +- 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/Marlin/src/HAL/shared/eeprom_if_i2c.cpp b/Marlin/src/HAL/shared/eeprom_if_i2c.cpp index 6b559e234b4c..bba9c626a4da 100644 --- a/Marlin/src/HAL/shared/eeprom_if_i2c.cpp +++ b/Marlin/src/HAL/shared/eeprom_if_i2c.cpp @@ -33,13 +33,14 @@ #if ENABLED(SOFT_I2C_EEPROM) #include - SlowSoftWire Wire = SlowSoftWire(I2C_SDA_PIN, I2C_SCL_PIN, true); + SlowSoftWire eWire = SlowSoftWire(I2C_SDA_PIN, I2C_SCL_PIN, true); #else #include + #define eWire Wire #endif void eeprom_init() { - Wire.begin( + eWire.begin( #if PINS_EXIST(I2C_SCL, I2C_SDA) && DISABLED(SOFT_I2C_EEPROM) uint8_t(I2C_SDA_PIN), uint8_t(I2C_SCL_PIN) #endif @@ -75,16 +76,16 @@ static uint8_t _eeprom_calc_device_address(uint8_t * const pos) { static void _eeprom_begin(uint8_t * const pos) { const unsigned eeprom_address = (unsigned)pos; - Wire.beginTransmission(_eeprom_calc_device_address(pos)); + eWire.beginTransmission(_eeprom_calc_device_address(pos)); if (!SMALL_EEPROM) - Wire.write(uint8_t((eeprom_address >> 8) & 0xFF)); // Address High, if needed - Wire.write(uint8_t(eeprom_address & 0xFF)); // Address Low + eWire.write(uint8_t((eeprom_address >> 8) & 0xFF)); // Address High, if needed + eWire.write(uint8_t(eeprom_address & 0xFF)); // Address Low } void eeprom_write_byte(uint8_t *pos, uint8_t value) { _eeprom_begin(pos); - Wire.write(value); - Wire.endTransmission(); + eWire.write(value); + eWire.endTransmission(); // wait for write cycle to complete // this could be done more efficiently with "acknowledge polling" @@ -93,9 +94,9 @@ void eeprom_write_byte(uint8_t *pos, uint8_t value) { uint8_t eeprom_read_byte(uint8_t *pos) { _eeprom_begin(pos); - Wire.endTransmission(); - Wire.requestFrom(_eeprom_calc_device_address(pos), (byte)1); - return Wire.available() ? Wire.read() : 0xFF; + eWire.endTransmission(); + eWire.requestFrom(_eeprom_calc_device_address(pos), (byte)1); + return eWire.available() ? eWire.read() : 0xFF; } #endif // USE_SHARED_EEPROM diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index b3db930fe499..75e24e231344 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -174,7 +174,7 @@ constexpr uint8_t epps = ENCODER_PULSES_PER_STEP; #endif #if HAS_U8GLIB_I2C_OLED && PINS_EXIST(I2C_SCL, I2C_SDA) && DISABLED(SOFT_I2C_EEPROM) - #include "Wire.h" + #include #endif // Encoder Handling From d1738e946abda285f9841ca4329d43b86f7e297f Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 24 Apr 2023 21:40:08 -0500 Subject: [PATCH 069/427] =?UTF-8?q?=F0=9F=94=A7=20Fix=20LCD=5FSERIAL=5FPOR?= =?UTF-8?q?T=20config?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/Conditionals_LCD.h | 23 ++++++++++---------- Marlin/src/inc/Conditionals_adv.h | 19 ++++++++-------- Marlin/src/pins/ramps/pins_PANOWIN_CUTLASS.h | 7 ------ Marlin/src/pins/stm32f1/pins_CREALITY_V521.h | 5 ----- 4 files changed, 20 insertions(+), 34 deletions(-) diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index b11ede3dc51c..f012bd9e3610 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -488,13 +488,8 @@ #endif #endif -// Serial Controllers require LCD_SERIAL_PORT -#if ANY(HAS_DGUS_LCD, MALYAN_LCD, ANYCUBIC_LCD_I3MEGA, ANYCUBIC_LCD_CHIRON, NEXTION_TFT) - #define LCD_NEEDS_SERIAL_PORT 1 -#endif - // Extensible UI serial touch screens. (See src/lcd/extui) -#if EITHER(LCD_NEEDS_SERIAL_PORT, TOUCH_UI_FTDI_EVE) +#if ANY(HAS_DGUS_LCD, MALYAN_LCD, ANYCUBIC_LCD_I3MEGA, ANYCUBIC_LCD_CHIRON, NEXTION_TFT, TOUCH_UI_FTDI_EVE) #define IS_EXTUI 1 #define EXTENSIBLE_UI #endif @@ -506,18 +501,22 @@ #if EITHER(HAS_DWIN_E3V2_BASIC, DWIN_CREALITY_LCD_JYERSUI) #define HAS_DWIN_E3V2 1 #endif -#if ENABLED(DWIN_LCD_PROUI) - #define DO_LIST_BIN_FILES 1 -#endif // E3V2 extras #if HAS_DWIN_E3V2 || IS_DWIN_MARLINUI #define SERIAL_CATCHALL 0 #define HAS_LCD_BRIGHTNESS 1 #define LCD_BRIGHTNESS_MAX 250 - #if ENABLED(DWIN_LCD_PROUI) - #define LCD_BRIGHTNESS_DEFAULT 127 - #endif +#endif + +#if ENABLED(DWIN_LCD_PROUI) + #define DO_LIST_BIN_FILES 1 + #define LCD_BRIGHTNESS_DEFAULT 127 +#endif + +// Serial Controllers require LCD_SERIAL_PORT +#if ANY(IS_DWIN_MARLINUI, HAS_DWIN_E3V2, HAS_DGUS_LCD, MALYAN_LCD, ANYCUBIC_LCD_I3MEGA, ANYCUBIC_LCD_CHIRON, NEXTION_TFT) + #define LCD_IS_SERIAL_HOST 1 #endif #if HAS_WIRED_LCD diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index 929a7c78cfee..119d69ee3d5c 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -1203,17 +1203,16 @@ #endif /** - * LCD_SERIAL_PORT must be defined ahead of HAL.h + * LCD_SERIAL_PORT must be defined ahead of HAL.h and + * currently HAL.h must be included ahead of pins.h. */ -#ifndef LCD_SERIAL_PORT - #if HAS_DWIN_E3V2 || IS_DWIN_MARLINUI || HAS_DGUS_LCD - #if MB(BTT_SKR_MINI_E3_V1_0, BTT_SKR_MINI_E3_V1_2, BTT_SKR_MINI_E3_V2_0, BTT_SKR_MINI_E3_V3_0, BTT_SKR_E3_TURBO, BTT_OCTOPUS_V1_1) - #define LCD_SERIAL_PORT 1 - #elif MB(CREALITY_V24S1_301, CREALITY_V24S1_301F4, CREALITY_V423, MKS_ROBIN) - #define LCD_SERIAL_PORT 2 // Creality Ender3S1, MKS Robin - #else - #define LCD_SERIAL_PORT 3 // Other boards - #endif +#if LCD_IS_SERIAL_HOST && !defined(LCD_SERIAL_PORT) + #if MB(BTT_SKR_MINI_E3_V1_0, BTT_SKR_MINI_E3_V1_2, BTT_SKR_MINI_E3_V2_0, BTT_SKR_MINI_E3_V3_0, BTT_SKR_E3_TURBO, BTT_OCTOPUS_V1_1) + #define LCD_SERIAL_PORT 1 + #elif MB(CREALITY_V24S1_301, CREALITY_V24S1_301F4, CREALITY_V423, MKS_ROBIN, PANOWIN_CUTLASS, KODAMA_BARDO) + #define LCD_SERIAL_PORT 2 + #else + #define LCD_SERIAL_PORT 3 #endif #ifdef LCD_SERIAL_PORT #define AUTO_ASSIGNED_LCD_SERIAL 1 diff --git a/Marlin/src/pins/ramps/pins_PANOWIN_CUTLASS.h b/Marlin/src/pins/ramps/pins_PANOWIN_CUTLASS.h index cc651cc8ef1f..11451e95a42a 100755 --- a/Marlin/src/pins/ramps/pins_PANOWIN_CUTLASS.h +++ b/Marlin/src/pins/ramps/pins_PANOWIN_CUTLASS.h @@ -102,13 +102,6 @@ #define SPINDLE_LASER_ENA_PIN 74 // J7 #endif -// -// Serial LCD -// -#if LCD_NEEDS_SERIAL_PORT && !defined(LCD_SERIAL_PORT) - #define LCD_SERIAL_PORT 2 // D16 H1 (TX2), D17 H0 (RX2) -#endif - // // SD Card // diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V521.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V521.h index e54469afffe0..81cb1e1f790e 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V521.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V521.h @@ -219,8 +219,3 @@ #endif #endif - -// DGUS LCDs -#if HAS_DGUS_LCD - #define LCD_SERIAL_PORT 3 -#endif From f5a905a64121e4ff43894d295ce6990e55aa1149 Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Tue, 25 Apr 2023 04:51:44 +0200 Subject: [PATCH 070/427] =?UTF-8?q?=E2=9C=A8=20TEMP=5FSENSOR=5FSOC=20(#256?= =?UTF-8?q?42)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/Configuration.h | 145 ++++---- Marlin/Configuration_adv.h | 15 +- Marlin/src/HAL/STM32/HAL.h | 1 + Marlin/src/HAL/STM32/inc/SanityCheck.h | 4 + Marlin/src/HAL/STM32/temp_soc.h | 346 ++++++++++++++++++ Marlin/src/HAL/STM32F1/HAL.cpp | 3 + Marlin/src/core/language.h | 1 + Marlin/src/feature/controllerfan.cpp | 8 +- Marlin/src/inc/Conditionals_adv.h | 8 +- Marlin/src/inc/Conditionals_post.h | 11 +- Marlin/src/inc/SanityCheck.h | 14 +- Marlin/src/module/temperature.cpp | 58 ++- Marlin/src/module/temperature.h | 25 ++ Marlin/src/module/thermistor/thermistors.h | 4 + .../src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h | 5 +- Marlin/src/pins/pins_postprocess.h | 5 + Marlin/src/pins/rambo/pins_EINSY_RAMBO.h | 5 +- Marlin/src/pins/sam/pins_DUE3DOM_MINI.h | 5 +- .../src/pins/stm32f1/pins_ERYONE_ERY32_MINI.h | 18 +- .../src/pins/stm32f4/pins_BTT_BTT002_V1_0.h | 5 +- buildroot/share/PlatformIO/scripts/schema.py | 2 +- buildroot/tests/STM32F103RC_btt_USB | 4 +- 22 files changed, 589 insertions(+), 103 deletions(-) create mode 100644 Marlin/src/HAL/STM32/temp_soc.h diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 6e2f40961358..047beac89cfc 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -432,78 +432,67 @@ // @section temperature /** - * --NORMAL IS 4.7kΩ PULLUP!-- 1kΩ pullup can be used on hotend sensor, using correct resistor and table + * Temperature Sensors: * - * Temperature sensors available: - * - * SPI RTD/Thermocouple Boards - IMPORTANT: Read the NOTE below! - * ------- - * -5 : MAX31865 with Pt100/Pt1000, 2, 3, or 4-wire (only for sensors 0-1) - * NOTE: You must uncomment/set the MAX31865_*_OHMS_n defines below. - * -3 : MAX31855 with Thermocouple, -200°C to +700°C (only for sensors 0-1) - * -2 : MAX6675 with Thermocouple, 0°C to +700°C (only for sensors 0-1) - * - * NOTE: Ensure TEMP_n_CS_PIN is set in your pins file for each TEMP_SENSOR_n using an SPI Thermocouple. By default, - * Hardware SPI on the default serial bus is used. If you have also set TEMP_n_SCK_PIN and TEMP_n_MISO_PIN, - * Software SPI will be used on those ports instead. You can force Hardware SPI on the default bus in the - * Configuration_adv.h file. At this time, separate Hardware SPI buses for sensors are not supported. - * - * Analog Themocouple Boards - * ------- - * -4 : AD8495 with Thermocouple - * -1 : AD595 with Thermocouple + * NORMAL IS 4.7kΩ PULLUP! Hotend sensors can use 1kΩ pullup with correct resistor and table. * + * ================================================================ * Analog Thermistors - 4.7kΩ pullup - Normal - * ------- - * 1 : 100kΩ EPCOS - Best choice for EPCOS thermistors - * 331 : 100kΩ Same as #1, but 3.3V scaled for MEGA - * 332 : 100kΩ Same as #1, but 3.3V scaled for DUE - * 2 : 200kΩ ATC Semitec 204GT-2 - * 202 : 200kΩ Copymaster 3D - * 3 : ???Ω Mendel-parts thermistor - * 4 : 10kΩ Generic Thermistor !! DO NOT use for a hotend - it gives bad resolution at high temp. !! - * 5 : 100kΩ ATC Semitec 104GT-2/104NT-4-R025H42G - Used in ParCan, J-Head, and E3D, SliceEngineering 300°C - * 501 : 100kΩ Zonestar - Tronxy X3A - * 502 : 100kΩ Zonestar - used by hot bed in Zonestar Průša P802M - * 503 : 100kΩ Zonestar (Z8XM2) Heated Bed thermistor - * 504 : 100kΩ Zonestar P802QR2 (Part# QWG-104F-B3950) Hotend Thermistor - * 505 : 100kΩ Zonestar P802QR2 (Part# QWG-104F-3950) Bed Thermistor - * 512 : 100kΩ RPW-Ultra hotend - * 6 : 100kΩ EPCOS - Not as accurate as table #1 (created using a fluke thermocouple) - * 7 : 100kΩ Honeywell 135-104LAG-J01 - * 71 : 100kΩ Honeywell 135-104LAF-J01 - * 8 : 100kΩ Vishay 0603 SMD NTCS0603E3104FXT - * 9 : 100kΩ GE Sensing AL03006-58.2K-97-G1 - * 10 : 100kΩ RS PRO 198-961 - * 11 : 100kΩ Keenovo AC silicone mats, most Wanhao i3 machines - beta 3950, 1% - * 12 : 100kΩ Vishay 0603 SMD NTCS0603E3104FXT (#8) - calibrated for Makibox hot bed - * 13 : 100kΩ Hisens up to 300°C - for "Simple ONE" & "All In ONE" hotend - beta 3950, 1% - * 15 : 100kΩ Calibrated for JGAurora A5 hotend - * 18 : 200kΩ ATC Semitec 204GT-2 Dagoma.Fr - MKS_Base_DKU001327 - * 22 : 100kΩ GTM32 Pro vB - hotend - 4.7kΩ pullup to 3.3V and 220Ω to analog input - * 23 : 100kΩ GTM32 Pro vB - bed - 4.7kΩ pullup to 3.3v and 220Ω to analog input - * 30 : 100kΩ Kis3d Silicone heating mat 200W/300W with 6mm precision cast plate (EN AW 5083) NTC100K - beta 3950 - * 60 : 100kΩ Maker's Tool Works Kapton Bed Thermistor - beta 3950 - * 61 : 100kΩ Formbot/Vivedino 350°C Thermistor - beta 3950 - * 66 : 4.7MΩ Dyze Design / Trianglelab T-D500 500°C High Temperature Thermistor - * 67 : 500kΩ SliceEngineering 450°C Thermistor - * 68 : PT100 amplifier board from Dyze Design - * 70 : 100kΩ bq Hephestos 2 - * 75 : 100kΩ Generic Silicon Heat Pad with NTC100K MGB18-104F39050L32 - * 2000 : 100kΩ Ultimachine Rambo TDK NTCG104LH104KT1 NTC100K motherboard Thermistor - * - * Analog Thermistors - 1kΩ pullup - Atypical, and requires changing out the 4.7kΩ pullup for 1kΩ. - * ------- (but gives greater accuracy and more stable PID) - * 51 : 100kΩ EPCOS (1kΩ pullup) - * 52 : 200kΩ ATC Semitec 204GT-2 (1kΩ pullup) - * 55 : 100kΩ ATC Semitec 104GT-2 - Used in ParCan & J-Head (1kΩ pullup) - * + * ================================================================ + * 1 : 100kΩ EPCOS - Best choice for EPCOS thermistors + * 331 : 100kΩ Same as #1, but 3.3V scaled for MEGA + * 332 : 100kΩ Same as #1, but 3.3V scaled for DUE + * 2 : 200kΩ ATC Semitec 204GT-2 + * 202 : 200kΩ Copymaster 3D + * 3 : ???Ω Mendel-parts thermistor + * 4 : 10kΩ Generic Thermistor !! DO NOT use for a hotend - it gives bad resolution at high temp. !! + * 5 : 100kΩ ATC Semitec 104GT-2/104NT-4-R025H42G - Used in ParCan, J-Head, and E3D, SliceEngineering 300°C + * 501 : 100kΩ Zonestar - Tronxy X3A + * 502 : 100kΩ Zonestar - used by hot bed in Zonestar Průša P802M + * 503 : 100kΩ Zonestar (Z8XM2) Heated Bed thermistor + * 504 : 100kΩ Zonestar P802QR2 (Part# QWG-104F-B3950) Hotend Thermistor + * 505 : 100kΩ Zonestar P802QR2 (Part# QWG-104F-3950) Bed Thermistor + * 512 : 100kΩ RPW-Ultra hotend + * 6 : 100kΩ EPCOS - Not as accurate as table #1 (created using a fluke thermocouple) + * 7 : 100kΩ Honeywell 135-104LAG-J01 + * 71 : 100kΩ Honeywell 135-104LAF-J01 + * 8 : 100kΩ Vishay 0603 SMD NTCS0603E3104FXT + * 9 : 100kΩ GE Sensing AL03006-58.2K-97-G1 + * 10 : 100kΩ RS PRO 198-961 + * 11 : 100kΩ Keenovo AC silicone mats, most Wanhao i3 machines - beta 3950, 1% + * 12 : 100kΩ Vishay 0603 SMD NTCS0603E3104FXT (#8) - calibrated for Makibox hot bed + * 13 : 100kΩ Hisens up to 300°C - for "Simple ONE" & "All In ONE" hotend - beta 3950, 1% + * 15 : 100kΩ Calibrated for JGAurora A5 hotend + * 18 : 200kΩ ATC Semitec 204GT-2 Dagoma.Fr - MKS_Base_DKU001327 + * 22 : 100kΩ GTM32 Pro vB - hotend - 4.7kΩ pullup to 3.3V and 220Ω to analog input + * 23 : 100kΩ GTM32 Pro vB - bed - 4.7kΩ pullup to 3.3v and 220Ω to analog input + * 30 : 100kΩ Kis3d Silicone heating mat 200W/300W with 6mm precision cast plate (EN AW 5083) NTC100K - beta 3950 + * 60 : 100kΩ Maker's Tool Works Kapton Bed Thermistor - beta 3950 + * 61 : 100kΩ Formbot/Vivedino 350°C Thermistor - beta 3950 + * 66 : 4.7MΩ Dyze Design / Trianglelab T-D500 500°C High Temperature Thermistor + * 67 : 500kΩ SliceEngineering 450°C Thermistor + * 68 : PT100 Smplifier board from Dyze Design + * 70 : 100kΩ bq Hephestos 2 + * 75 : 100kΩ Generic Silicon Heat Pad with NTC100K MGB18-104F39050L32 + * 2000 : 100kΩ Ultimachine Rambo TDK NTCG104LH104KT1 NTC100K motherboard Thermistor + * + * ================================================================ + * Analog Thermistors - 1kΩ pullup + * Atypical, and requires changing out the 4.7kΩ pullup for 1kΩ. + * (but gives greater accuracy and more stable PID) + * ================================================================ + * 51 : 100kΩ EPCOS (1kΩ pullup) + * 52 : 200kΩ ATC Semitec 204GT-2 (1kΩ pullup) + * 55 : 100kΩ ATC Semitec 104GT-2 - Used in ParCan & J-Head (1kΩ pullup) + * + * ================================================================ * Analog Thermistors - 10kΩ pullup - Atypical - * ------- - * 99 : 100kΩ Found on some Wanhao i3 machines with a 10kΩ pull-up resistor + * ================================================================ + * 99 : 100kΩ Found on some Wanhao i3 machines with a 10kΩ pull-up resistor * + * ================================================================ * Analog RTDs (Pt100/Pt1000) - * ------- + * ================================================================ * 110 : Pt100 with 1kΩ pullup (atypical) * 147 : Pt100 with 4.7kΩ pullup * 1010 : Pt1000 with 1kΩ pullup (atypical) @@ -515,15 +504,34 @@ * NOTE: ADC pins are not 5V tolerant. Not recommended because it's possible to damage the CPU by going over 500°C. * 201 : Pt100 with circuit in Overlord, similar to Ultimainboard V2.x * + * ================================================================ + * SPI RTD/Thermocouple Boards + * ================================================================ + * -5 : MAX31865 with Pt100/Pt1000, 2, 3, or 4-wire (only for sensors 0-1) + * NOTE: You must uncomment/set the MAX31865_*_OHMS_n defines below. + * -3 : MAX31855 with Thermocouple, -200°C to +700°C (only for sensors 0-1) + * -2 : MAX6675 with Thermocouple, 0°C to +700°C (only for sensors 0-1) + * + * NOTE: Ensure TEMP_n_CS_PIN is set in your pins file for each TEMP_SENSOR_n using an SPI Thermocouple. By default, + * Hardware SPI on the default serial bus is used. If you have also set TEMP_n_SCK_PIN and TEMP_n_MISO_PIN, + * Software SPI will be used on those ports instead. You can force Hardware SPI on the default bus in the + * Configuration_adv.h file. At this time, separate Hardware SPI buses for sensors are not supported. + * + * ================================================================ + * Analog Thermocouple Boards + * ================================================================ + * -4 : AD8495 with Thermocouple + * -1 : AD595 with Thermocouple + * + * ================================================================ * Custom/Dummy/Other Thermal Sensors - * ------ + * ================================================================ * 0 : not used * 1000 : Custom - Specify parameters in Configuration_adv.h * * !!! Use these for Testing or Development purposes. NEVER for production machine. !!! * 998 : Dummy Table that ALWAYS reads 25°C or the temperature defined below. * 999 : Dummy Table that ALWAYS reads 100°C or the temperature defined below. - * */ #define TEMP_SENSOR_0 1 #define TEMP_SENSOR_1 0 @@ -538,6 +546,7 @@ #define TEMP_SENSOR_CHAMBER 0 #define TEMP_SENSOR_COOLER 0 #define TEMP_SENSOR_BOARD 0 +#define TEMP_SENSOR_SOC 0 #define TEMP_SENSOR_REDUNDANT 0 // Dummy thermistor constant temperature readings, for use with 998 and 999 diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 22c97c3b8c4e..f0c4975d5d02 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -276,9 +276,15 @@ #define THERMAL_PROTECTION_BOARD // Halt the printer if the board sensor leaves the temp range below. #define BOARD_MINTEMP 8 // (°C) #define BOARD_MAXTEMP 70 // (°C) - #ifndef TEMP_BOARD_PIN - //#define TEMP_BOARD_PIN -1 // Board temp sensor pin, if not set in pins file. - #endif + //#define TEMP_BOARD_PIN -1 // Board temp sensor pin override. +#endif + +// +// SoC Sensor options +// +#if TEMP_SENSOR_SOC + #define THERMAL_PROTECTION_SOC // Halt the printer if the SoC sensor leaves the temp range below. + #define SOC_MAXTEMP 85 // (°C) #endif /** @@ -579,6 +585,9 @@ // Use TEMP_SENSOR_BOARD as a trigger for enabling the controller fan //#define CONTROLLER_FAN_MIN_BOARD_TEMP 40 // (°C) Turn on the fan if the board reaches this temperature + // Use TEMP_SENSOR_SOC as a trigger for enabling the controller fan + //#define CONTROLLER_FAN_MIN_SOC_TEMP 40 // (°C) Turn on the fan if the SoC reaches this temperature + //#define CONTROLLER_FAN_EDITABLE // Enable M710 configurable settings #if ENABLED(CONTROLLER_FAN_EDITABLE) #define CONTROLLER_FAN_MENU // Enable the Controller Fan submenu diff --git a/Marlin/src/HAL/STM32/HAL.h b/Marlin/src/HAL/STM32/HAL.h index 61569c793738..26fcc2a2e173 100644 --- a/Marlin/src/HAL/STM32/HAL.h +++ b/Marlin/src/HAL/STM32/HAL.h @@ -28,6 +28,7 @@ #include "../shared/Marduino.h" #include "../shared/math_32bit.h" #include "../shared/HAL_SPI.h" +#include "temp_soc.h" #include "fastio.h" #include "Servo.h" #include "MarlinSerial.h" diff --git a/Marlin/src/HAL/STM32/inc/SanityCheck.h b/Marlin/src/HAL/STM32/inc/SanityCheck.h index 9b0c232bdf57..80d0314dbbd4 100644 --- a/Marlin/src/HAL/STM32/inc/SanityCheck.h +++ b/Marlin/src/HAL/STM32/inc/SanityCheck.h @@ -51,6 +51,10 @@ #error "TFT_COLOR_UI, TFT_LVGL_UI and TFT_CLASSIC_UI are currently only supported on STM32H7, STM32F4 and STM32F1 hardware." #endif +#if TEMP_SENSOR_SOC && defined(ATEMP) && TEMP_SOC_PIN != ATEMP + #error "TEMP_SENSOR_SOC requires 'TEMP_SOC_PIN ATEMP' on STM32." +#endif + /** * Check for common serial pin conflicts */ diff --git a/Marlin/src/HAL/STM32/temp_soc.h b/Marlin/src/HAL/STM32/temp_soc.h new file mode 100644 index 000000000000..05262eab8bdf --- /dev/null +++ b/Marlin/src/HAL/STM32/temp_soc.h @@ -0,0 +1,346 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#ifdef STM32F0xx + /* + STM32F030x4 STM32F030x6 STM32F030x8 STM32F030xC https://www.st.com/resource/en/datasheet/stm32f030f4.pdf + --> TS_CAL2 not defined in datasheet + STM32F031x4 STM32F031x6 https://www.st.com/resource/en/datasheet/stm32f031c4.pdf + STM32F038x6 https://www.st.com/resource/en/datasheet/stm32f038c6.pdf + STM32F042x4 STM32F042x6 https://www.st.com/resource/en/datasheet/stm32f042c4.pdf + STM32F048C6 STM32F048G6 STM32F048T6 https://www.st.com/resource/en/datasheet/stm32f048c6.pdf + STM32F051x4 STM32F051x6 STM32F051x8 https://www.st.com/resource/en/datasheet/dm00039193.pdf + STM32F058C8 STM32F058R8 STM32F058T8 https://www.st.com/resource/en/datasheet/stm32f058c8.pdf + STM32F070CB STM32F070RB STM32F070C6 STM32F070F6 https://www.st.com/resource/en/datasheet/stm32f070c6.pdf + --> TS_CAL2 not defined in datasheet + STM32F071x8 STM32F071xB https://www.st.com/resource/en/datasheet/stm32f071cb.pdf + STM32F072x8 STM32F072xB https://www.st.com/resource/en/datasheet/stm32f072c8.pdf + STM32F078CB STM32F078RB STM32F078VB https://www.st.com/resource/en/datasheet/stm32f078cb.pdf + STM32F091xB STM32F091xC https://www.st.com/resource/en/datasheet/stm32f091cc.pdf + STM32F098CC STM32F098RC STM32F098VC https://www.st.com/resource/en/datasheet/stm32f098cc.pdf + */ + #define TS_CAL1_TEMP 30 // Calibration temperature of TS_CAL1 (see specific SoC datasheet) + #define TS_CAL1_REGOFFSET 0x1FFFF7B8 // Memory address of TS_CAL1 for STM32F030x4/x6/x8/xC (see specific SoC datasheet) + #define TS_CAL2_TEMP 110 // Calibration temperature of TS_CAL2 (see specific SoC datasheet) + #define TS_CAL2_REGOFFSET 0x1FFFF7C2 // Memory address of TS_CAL2 for STM32F030x4/x6/x8/xC (see specific SoC datasheet) + +#elif defined(STM32F1xx) + /* + STM32F100xC STM32F100xD STM32F100xE https://www.st.com/resource/en/datasheet/stm32f100rc.pdf + --> V=1.41 + STM32F100x4 STM32F100x6 STM32F100x8 STM32F100xB https://www.st.com/resource/en/datasheet/stm32f100cb.pdf + --> V=1.41 + STM32F101x8 STM32F101xB https://www.st.com/resource/en/datasheet/stm32f101r8.pdf + STM32F101xC STM32F101xD STM32F101xE https://www.st.com/resource/en/datasheet/stm32f101rc.pdf + STM32F101x4 STM32F101x6 https://www.st.com/resource/en/datasheet/stm32f101c4.pdf + STM32F101xF STM32F101xG https://www.st.com/resource/en/datasheet/stm32f101vf.pdf + STM32F102x8 STM32F102xB https://www.st.com/resource/en/datasheet/stm32f102c8.pdf + --> V=1.42 / Slope=4.35 + STM32F102x4 STM32F102x6 https://www.st.com/resource/en/datasheet/stm32f102c4.pdf + --> V=1.42 / Slope=4.35 + STM32F103x8 STM32F103xB https://www.st.com/resource/en/datasheet/stm32f103c8.pdf + STM32F103xC STM32F103xD STM32F103xE https://www.st.com/resource/en/datasheet/stm32f103rc.pdf + STM32F103x4 STM32F103x6 https://www.st.com/resource/en/datasheet/stm32f103c4.pdf + STM32F103xF STM32F103xG https://www.st.com/resource/en/datasheet/stm32f103rg.pdf + STM32F105xx STM32F107xx https://www.st.com/resource/en/datasheet/stm32f105r8.pdf + */ + #define TS_TYPICAL_V 1.43 + #define TS_TYPICAL_TEMP 25 + #define TS_TYPICAL_SLOPE 4.3 + +#elif defined(STM32F2xx) + /* + STM32F205xx STM32F207xx https://www.st.com/resource/en/datasheet/stm32f205rb.pdf + STM32F215xx STM32F217xx https://www.st.com/resource/en/datasheet/stm32f215re.pdf + */ + #define TS_TYPICAL_V 0.76 + #define TS_TYPICAL_TEMP 25 + #define TS_TYPICAL_SLOPE 2.5 + +#elif defined(STM32F3xx) + /* + STM32F301x6 STM32F301x8 https://www.st.com/resource/en/datasheet/stm32f301c6.pdf + STM32F302xD STM32F302xE https://www.st.com/resource/en/datasheet/stm32f302re.pdf + STM32F302x6 STM32F302x8 https://www.st.com/resource/en/datasheet/stm32f302r6.pdf + STM32F302xB STM32F302xC https://www.st.com/resource/en/datasheet/stm32f302cb.pdf + STM32F303xD STM32F303xE https://www.st.com/resource/en/datasheet/stm32f303re.pdf + STM32F303xB STM32F303xC https://www.st.com/resource/en/datasheet/stm32f303cb.pdf + STM32F303x6/x8 https://www.st.com/resource/en/datasheet/stm32f303c6.pdf + STM32F334x4 STM32F334x6 STM32F334x8 https://www.st.com/resource/en/datasheet/stm32f334k4.pdf + STM32F373xx https://www.st.com/resource/en/datasheet/stm32f373cc.pdf + STM32F358xC https://www.st.com/resource/en/datasheet/stm32f358cc.pdf + STM32F378xx https://www.st.com/resource/en/datasheet/stm32f378cc.pdf + STM32F318C8 STM32F318K8 https://www.st.com/resource/en/datasheet/stm32f318c8.pdf + STM32F328C8 https://www.st.com/resource/en/datasheet/stm32f328c8.pdf + STM32F398VE https://www.st.com/resource/en/datasheet/stm32f398ve.pdf + */ + #define TS_CAL1_TEMP 30 + #define TS_CAL1_REGOFFSET 0x1FFFF7B8 + #define TS_CAL2_TEMP 110 + #define TS_CAL2_REGOFFSET 0x1FFFF7C2 + +#elif defined(STM32F4xx) + /* + STM32F401xD STM32F401xE https://www.st.com/resource/en/datasheet/stm32f401re.pdf + STM32F411xC STM32F411xE https://www.st.com/resource/en/datasheet/stm32f411ce.pdf + STM32F446xC/E https://www.st.com/resource/en/datasheet/stm32f446mc.pdf + STM32F479xx https://www.st.com/resource/en/datasheet/stm32f479ai.pdf + STM32F412xE STM32F412xG https://www.st.com/resource/en/datasheet/stm32f412ce.pdf + STM32F410x8 STM32F410xB https://www.st.com/resource/en/datasheet/stm32f410cb.pdf + STM32F469xx https://www.st.com/resource/en/datasheet/stm32f469ae.pdf + STM32F423xH https://www.st.com/resource/en/datasheet/stm32f423ch.pdf + STM32F413xG STM32F413xH https://www.st.com/resource/en/datasheet/stm32f413cg.pdf + STM32F415xx STM32F417xx https://www.st.com/resource/en/datasheet/stm32f415rg.pdf + STM32F405xx STM32F407xx https://www.st.com/resource/en/datasheet/stm32f405rg.pdf + STM32F427xx STM32F429xx https://www.st.com/resource/en/datasheet/stm32f427vg.pdf + STM32F437xx STM32F439xx https://www.st.com/resource/en/datasheet/stm32f437vg.pdf + STM32F401xB STM32F401xC https://www.st.com/resource/en/datasheet/stm32f401cb.pdf + */ + #define TS_CAL1_TEMP 30 + #define TS_CAL1_REGOFFSET 0x1FFF7A2C + #define TS_CAL2_TEMP 110 + #define TS_CAL2_REGOFFSET 0x1FFF7A2E + +#elif defined(STM32F7xx) + /* + STM32F756xx https://www.st.com/resource/en/datasheet/stm32f756bg.pdf + STM32F745xx STM32F746xx https://www.st.com/resource/en/datasheet/stm32f745ie.pdf + STM32F777xx STM32F778Ax STM32F779xx https://www.st.com/resource/en/datasheet/stm32f777bi.pdf + STM32F765xx STM32F767xx STM32F768Ax STM32F769xx https://www.st.com/resource/en/datasheet/stm32f765bi.pdf + STM32F722xx STM32F723xx https://www.st.com/resource/en/datasheet/stm32f722ic.pdf + --> TS_CAL1/2 = 0x1FF07A2C / 0x1FF07A2E + STM32F732xx STM32F733xx https://www.st.com/resource/en/datasheet/stm32f732ie.pdf + --> TS_CAL1/2 = 0x1FF07A2C / 0x1FF07A2E + STM32F750x8 https://www.st.com/resource/en/datasheet/stm32f750n8.pdf + STM32F730x8 https://www.st.com/resource/en/datasheet/stm32f730i8.pdf + --> TS_CAL1/2 = 0x1FF07A2C / 0x1FF07A2E + */ + #define TS_CAL1_TEMP 30 + #define TS_CAL1_REGOFFSET 0x1FF0F44C + #define TS_CAL2_TEMP 110 + #define TS_CAL2_REGOFFSET 0x1FF0F44E + +#elif defined(STM32G0xx) + /* + STM32G030x6/x8 https://www.st.com/resource/en/datasheet/stm32g030c6.pdf + --> TS_CAL2 not defined in datasheet + STM32G050x6/x8 https://www.st.com/resource/en/datasheet/stm32g050c6.pdf + STM32G0B0KE/CE/RE/VE https://www.st.com/resource/en/datasheet/stm32g0b0ce.pdf + --> TS_CAL2 not defined in datasheet + STM32G081xB https://www.st.com/resource/en/datasheet/stm32g081cb.pdf + STM32G071x8/xB https://www.st.com/resource/en/datasheet/stm32g071c8.pdf + STM32G031x4/x6/x8 https://www.st.com/resource/en/datasheet/stm32g031c6.pdf + STM32G041x6/x8 https://www.st.com/resource/en/datasheet/stm32g041c8.pdf + STM32G051x6/x8 https://www.st.com/resource/en/datasheet/stm32g051c6.pdf + STM32G061x6/x8 https://www.st.com/resource/en/datasheet/stm32g061c6.pdf + STM32G0B1xB/xC/xE https://www.st.com/resource/en/datasheet/stm32g0b1cc.pdf + STM32G0C1xC/xE https://www.st.com/resource/en/datasheet/stm32g0c1cc.pdf + */ + #define TS_CAL1_TEMP 30 + #define TS_CAL1_REGOFFSET 0x1FFF75A8 + #define TS_CAL2_TEMP 130 + #define TS_CAL2_REGOFFSET 0x1FFF75CA + +#elif defined(STM32G4xx) + /* + STM32G431x6 STM32G431x8 STM32G431xB https://www.st.com/resource/en/datasheet/stm32g431c6.pdf + STM32G441xB https://www.st.com/resource/en/datasheet/stm32g441cb.pdf + STM32G491xC STM32G491xE https://www.st.com/resource/en/datasheet/stm32g491cc.pdf + STM32G4A1xE https://www.st.com/resource/en/datasheet/stm32g4a1ce.pdf + STM32G473xB STM32G473xC STM32G473xE https://www.st.com/resource/en/datasheet/stm32g473cb.pdf + STM32G483xE https://www.st.com/resource/en/datasheet/stm32g483ce.pdf + --> TS_CAL1/TS_CAL2 not defined in datasheet + STM32G474xB STM32G474xC STM32G474xE https://www.st.com/resource/en/datasheet/stm32g474cb.pdf + STM32G484xE https://www.st.com/resource/en/datasheet/stm32g484ce.pdf + */ + #define TS_CAL1_TEMP 30 + #define TS_CAL1_REGOFFSET 0x1FFF75A8 + #define TS_CAL2_TEMP 130 + #define TS_CAL2_REGOFFSET 0x1FFF75CA + +#elif defined(STM32H7xx) + /* + STM32H7A3xI/G + --> TS_CAL1/2 = 0x08FFF814 / 0x08FFF818 + STM32H7B0xB + --> TS_CAL1/2 = 0x08FFF814 / 0x08FFF818 + STM32H7B3xI + --> TS_CAL1/2 = 0x08FFF814 / 0x08FFF818 + STM32H725xE/G + STM32H735xG + STM32H723VE STM32H723VG STM32H723ZE STM32H723ZG + STM32H730AB STM32H730IB STM32H730VB STM32H730ZB + STM32H733VG STM32H733ZG + STM32H742xI/G STM32H743xI/G + --> CAL2_TEMP = 110 + STM32H745xI/G + STM32H747xI/G + STM32H753xI + STM32H755xI + STM32H757xI + STM32H750VB STM32H750ZB STM32H750IB STM32H750XB + --> CAL2_TEMP = 110 + */ + #define TS_CAL1_TEMP 30 + #define TS_CAL1_REGOFFSET 0x1FF1E820 + #define TS_CAL2_TEMP 130 + #define TS_CAL2_REGOFFSET 0x1FF1E840 + +#elif defined(STM32L0xx) + /* + STM32L010RB + --> TS_CAL1/TS_CAL2 not defined in datasheet + STM32L010F4 STM32L010K4 + --> TS_CAL1/TS_CAL2 not defined in datasheet + STM32L010C6 + --> TS_CAL1/TS_CAL2 not defined in datasheet + STM32L010K8 STM32L010R8 + --> TS_CAL1/TS_CAL2 not defined in datasheet + STM32L011x3 STM32L011x4 + --> TS_CAL1 not defined in datasheet + STM32L021D4 STM32L021F4 STM32L021G4 STM32L021K4 + --> TS_CAL1 not defined in datasheet + STM32L031x4 STM32L031x6 + STM32L041x6 + STM32L051x6 STM32L051x8 + STM32L071x8 STM32L071xB STM32L071xZ + STM32L081CB STM32L081CZ STM32L081KZ + STM32L052x6 STM32L052x8 + STM32L062K8 STM32L062T8 STM32L062C8 + STM32L072x8 STM32L072xB STM32L072xZ + STM32L082KB STM32L082KZ STM32L082CZ + STM32L053C6 STM32L053C8 STM32L053R6 STM32L053R8 + STM32L063C8 STM32L063R8 + STM32L073x8 STM32L073xB STM32L073xZ + STM32L083x8 STM32L083xB STM32L083xZ + */ + #define TS_CAL1_TEMP 30 + #define TS_CAL1_REGOFFSET 0x1FF8007A + #define TS_CAL2_TEMP 130 + #define TS_CAL2_REGOFFSET 0x1FF8007E + +#elif defined(STM32L1xx) + /* + STM32L100x6/8/B-A + --> TS_CAL1/TS_CAL2 not defined in datasheet + STM32L100RC + --> TS_CAL1/TS_CAL2 not defined in datasheet + STM32L100C6 STM32L100R8/RB + --> TS_CAL1/TS_CAL2 not defined in datasheet + STM32L151x6/8/B-A STM32L152x6/8/B-A + --> TS_CAL1/2 = 0x08FFF814 / 0x08FFF818 + STM32L151xD STM32L152xD + STM32L151VD-X STM32L152VD-X + STM32L15xCC STM32L15xRC STM32L15xUC STM32L15xVC + STM32L15xQC STM32L15xRC-A STM32L15xVC-A STM32L15xZC + STM32L162xE + STM32L162VD STM32L162ZD STM32L162QD STM32L162RD + STM32L162VC STM32L162RC + STM32L162VD-X + STM32L162QC STM32L162VC-A STM32L162ZC STM32L162RC-A + */ + #define TS_CAL1_TEMP 30 + #define TS_CAL1_REGOFFSET 0x1FF800FA + #define TS_CAL2_TEMP 110 + #define TS_CAL2_REGOFFSET 0x1FF800FE + +#elif defined(STM32L4xx) + /* + STM32L431xx + STM32L451xx + STM32L471xx + --> CAL2_TEMP = 110 + STM32L412xx + STM32L422xx + STM32L432KB STM32L432KC + STM32L442KC + STM32L452xx + STM32L462CE STM32L462RE STM32L462VE + STM32L433xx + STM32L443CC STM32L443RC STM32L443VC + STM32L475xx + --> CAL2_TEMP = 110 + STM32L476xx + --> CAL2_TEMP = 110 + STM32L486xx : + --> CAL2_TEMP = 110 + STM32L496xx + STM32L4A6xG + */ + #define TS_CAL1_TEMP 30 + #define TS_CAL1_REGOFFSET 0x1FFF75A8 + #define TS_CAL2_TEMP 130 + #define TS_CAL2_REGOFFSET 0x1FFF75CA + +#elif defined(STM32MP1xx) + /* + STM32MP131A STM32MP131D + STM32MP131C STM32MP131F + STM32MP133A STM32MP133D + STM32MP133C STM32MP133F + STM32MP135A STM32MP135D + STM32MP135C STM32MP135F + STM32MP151A/D + STM32MP151C/F + STM32MP153A/D + STM32MP153C/F + STM32MP157A/D + STM32MP157C/F + */ + // BSEC -> RCC + //#define TS_CAL1_TEMP 30 + //#define TS_CAL1_REGOFFSET 0x5C00 525C[15:0] + //#define TS_CAL2_TEMP 130 + //#define TS_CAL2_REGOFFSET 0x5C00 525C[31:16] + +#elif defined(STM32WBxx) + /* + STM32WB10CC + STM32WB50CG STM32WB30CE + STM32WB15CC + STM32WB55xx STM32WB35xx + */ + #define TS_CAL1_TEMP 30 + #define TS_CAL1_REGOFFSET 0x1FFF75A8 + #define TS_CAL2_TEMP 130 + #define TS_CAL2_REGOFFSET 0x1FFF75CA +#endif + +// TODO implement voltage scaling (calibrated Vrefint) and ADC resolution scaling (when applicable) + +/** + * When provided in datasheet, the use of calibrated values (TS_CAL1, TS_CAL2) should always be preferred over typical values. + * Typical values may result in important variation from the actual temperature. + * + * If calibrated values are not provided in datasheet, it is encouraged to calibrate your specific chip yourself. + */ +#if defined(TS_CAL1_TEMP) && defined(TS_CAL1_REGOFFSET) && defined(TS_CAL2_TEMP) && defined(TS_CAL2_REGOFFSET) + + #define READMEMORY(ADDR) (*((uint16_t const *)(ADDR))) + #define TEMP_SOC_SENSOR(RAW) (float((TS_CAL2_TEMP) - (TS_CAL1_TEMP)) / (READMEMORY(TS_CAL2_REGOFFSET) - READMEMORY(TS_CAL1_REGOFFSET)) * ((RAW) / float(OVERSAMPLENR) - READMEMORY(TS_CAL1_REGOFFSET)) + (TS_CAL1_TEMP)) + +#elif defined(TS_TYPICAL_V) && defined(TS_TYPICAL_SLOPE) && defined(TS_TYPICAL_TEMP) + + #define TEMP_SOC_SENSOR(RAW) ((TS_TYPICAL_V - (RAW) / float(OVERSAMPLENR) / float(HAL_ADC_RANGE) * float(ADC_VREF)) / (TS_TYPICAL_SLOPE/1000) + TS_TYPICAL_TEMP) + +#endif diff --git a/Marlin/src/HAL/STM32F1/HAL.cpp b/Marlin/src/HAL/STM32F1/HAL.cpp index 4d3140001e82..a0cdda3b4fd7 100644 --- a/Marlin/src/HAL/STM32F1/HAL.cpp +++ b/Marlin/src/HAL/STM32F1/HAL.cpp @@ -307,6 +307,7 @@ enum ADCIndex : uint8_t { OPTITEM(HAS_TEMP_ADC_PROBE, TEMP_PROBE) OPTITEM(HAS_TEMP_COOLER, TEMP_COOLER) OPTITEM(HAS_TEMP_BOARD, TEMP_BOARD) + OPTITEM(HAS_TEMP_SOC, TEMP_SOC) OPTITEM(FILAMENT_WIDTH_SENSOR, FILWIDTH) OPTITEM(HAS_ADC_BUTTONS, ADC_KEY) OPTITEM(HAS_JOY_ADC_X, JOY_X) @@ -335,6 +336,7 @@ void MarlinHAL::adc_init() { OPTITEM(HAS_TEMP_ADC_PROBE, TEMP_PROBE_PIN) OPTITEM(HAS_TEMP_COOLER, TEMP_COOLER_PIN) OPTITEM(HAS_TEMP_BOARD, TEMP_BOARD_PIN) + OPTITEM(HAS_TEMP_SOC, TEMP_SOC_PIN) OPTITEM(FILAMENT_WIDTH_SENSOR, FILWIDTH_PIN) OPTITEM(HAS_ADC_BUTTONS, ADC_KEYPAD_PIN) OPTITEM(HAS_JOY_ADC_X, JOY_X_PIN) @@ -373,6 +375,7 @@ void MarlinHAL::adc_start(const pin_t pin) { _TCASE(HAS_TEMP_ADC_PROBE, TEMP_PROBE_PIN, TEMP_PROBE) _TCASE(HAS_TEMP_COOLER, TEMP_COOLER_PIN, TEMP_COOLER) _TCASE(HAS_TEMP_BOARD, TEMP_BOARD_PIN, TEMP_BOARD) + _TCASE(HAS_TEMP_SOC, TEMP_SOC_PIN, TEMP_SOC) _TCASE(HAS_JOY_ADC_X, JOY_X_PIN, JOY_X) _TCASE(HAS_JOY_ADC_Y, JOY_Y_PIN, JOY_Y) _TCASE(HAS_JOY_ADC_Z, JOY_Z_PIN, JOY_Z) diff --git a/Marlin/src/core/language.h b/Marlin/src/core/language.h index bf309293ac6c..0c5bc0af9bd4 100644 --- a/Marlin/src/core/language.h +++ b/Marlin/src/core/language.h @@ -242,6 +242,7 @@ #define STR_HEATER_CHAMBER "chamber" #define STR_COOLER "cooler" #define STR_MOTHERBOARD "motherboard" +#define STR_SOC "soc" #define STR_PROBE "probe" #define STR_REDUNDANT "redundant " #define STR_LASER_TEMP "laser temperature" diff --git a/Marlin/src/feature/controllerfan.cpp b/Marlin/src/feature/controllerfan.cpp index 6e5278ce7451..4b3d9f550165 100644 --- a/Marlin/src/feature/controllerfan.cpp +++ b/Marlin/src/feature/controllerfan.cpp @@ -61,10 +61,16 @@ void ControllerFan::update() { // - At least one stepper driver is enabled // - The heated bed is enabled // - TEMP_SENSOR_BOARD is reporting >= CONTROLLER_FAN_MIN_BOARD_TEMP + // - TEMP_SENSOR_SOC is reporting >= CONTROLLER_FAN_MIN_SOC_TEMP const ena_mask_t axis_mask = TERN(CONTROLLER_FAN_USE_Z_ONLY, _BV(Z_AXIS), (ena_mask_t)~TERN0(CONTROLLER_FAN_IGNORE_Z, _BV(Z_AXIS))); if ( (stepper.axis_enabled.bits & axis_mask) || TERN0(HAS_HEATED_BED, thermalManager.temp_bed.soft_pwm_amount > 0) - || TERN0(HAS_CONTROLLER_FAN_MIN_BOARD_TEMP, thermalManager.wholeDegBoard() >= CONTROLLER_FAN_MIN_BOARD_TEMP) + #ifdef CONTROLLER_FAN_MIN_BOARD_TEMP + || thermalManager.wholeDegBoard() >= CONTROLLER_FAN_MIN_BOARD_TEMP + #endif + #ifdef CONTROLLER_FAN_MIN_SOC_TEMP + || thermalManager.wholeDegSoc() >= CONTROLLER_FAN_MIN_SOC_TEMP + #endif ) lastMotorOn = ms; //... set time to NOW so the fan will turn on // Fan Settings. Set fan > 0: diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index 119d69ee3d5c..1772430dc493 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -288,7 +288,8 @@ */ // Temperature sensor IDs -#define HID_REDUNDANT -6 +#define HID_REDUNDANT -7 +#define HID_SOC -6 #define HID_BOARD -5 #define HID_COOLER -4 #define HID_PROBE -3 @@ -306,9 +307,8 @@ #define _SENSOR_IS(I,N) || (TEMP_SENSOR(N) == I) #define _E_SENSOR_IS(I,N) _SENSOR_IS(N,I) #define ANY_E_SENSOR_IS(N) (0 REPEAT2(HOTENDS, _E_SENSOR_IS, N)) -#define ANY_THERMISTOR_IS(N) ( ANY_E_SENSOR_IS(N) \ - _SENSOR_IS(N,BED) _SENSOR_IS(N,PROBE) _SENSOR_IS(N,CHAMBER) \ - _SENSOR_IS(N,COOLER) _SENSOR_IS(N,BOARD) _SENSOR_IS(N,REDUNDANT) ) +#define ANY_THERMISTOR_IS(N) ( ANY_E_SENSOR_IS(N) _SENSOR_IS(N,REDUNDANT) \ + _SENSOR_IS(N,BED) _SENSOR_IS(N,PROBE) _SENSOR_IS(N,CHAMBER) _SENSOR_IS(N,COOLER) _SENSOR_IS(N,BOARD) ) #if ANY_THERMISTOR_IS(1000) #define HAS_USER_THERMISTORS 1 diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 30c2613b0391..ac701c4570c9 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -2216,6 +2216,9 @@ #if HAS_ADC_TEST(BOARD) #define HAS_TEMP_ADC_BOARD 1 #endif +#if HAS_ADC_TEST(SOC) + #define HAS_TEMP_ADC_SOC 1 +#endif #if HAS_ADC_TEST(REDUNDANT) #define HAS_TEMP_ADC_REDUNDANT 1 #endif @@ -2239,6 +2242,9 @@ #if HAS_TEMP(BOARD) #define HAS_TEMP_BOARD 1 #endif +#if HAS_TEMP(SOC) + #define HAS_TEMP_SOC 1 +#endif #if HAS_TEMP(REDUNDANT) #define HAS_TEMP_REDUNDANT 1 #endif @@ -2312,7 +2318,7 @@ #define BED_OR_CHAMBER 1 #endif -#if HAS_TEMP_HOTEND || BED_OR_CHAMBER || HAS_TEMP_PROBE || HAS_TEMP_COOLER || HAS_TEMP_BOARD +#if HAS_TEMP_HOTEND || BED_OR_CHAMBER || HAS_TEMP_PROBE || HAS_TEMP_COOLER || HAS_TEMP_BOARD || HAS_TEMP_SOC #define HAS_TEMP_SENSOR 1 #endif @@ -2548,9 +2554,6 @@ */ #if PIN_EXISTS(CONTROLLER_FAN) #define HAS_CONTROLLER_FAN 1 - #if CONTROLLER_FAN_MIN_BOARD_TEMP - #define HAS_CONTROLLER_FAN_MIN_BOARD_TEMP 1 - #endif #endif #if HAS_CONTROLLER_FAN diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 2c2e17f4e341..a5244636dc51 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -1976,6 +1976,8 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "TEMP_SENSOR_REDUNDANT_SOURCE can't be PROBE. TEMP_SENSOR_PROBE is in use." #elif REDUNDANT_TEMP_MATCH(SOURCE, BOARD) && HAS_TEMP_BOARD #error "TEMP_SENSOR_REDUNDANT_SOURCE can't be BOARD. TEMP_SENSOR_BOARD is in use." + #elif REDUNDANT_TEMP_MATCH(SOURCE, SOC) + #error "TEMP_SENSOR_REDUNDANT_SOURCE can't be SOC." #elif REDUNDANT_TEMP_MATCH(SOURCE, CHAMBER) && HAS_TEMP_CHAMBER #error "TEMP_SENSOR_REDUNDANT_SOURCE can't be CHAMBER. TEMP_SENSOR_CHAMBER is in use." #elif REDUNDANT_TEMP_MATCH(SOURCE, BED) && HAS_TEMP_BED @@ -2004,6 +2006,8 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "TEMP_SENSOR_REDUNDANT_TARGET can't be CHAMBER without TEMP_CHAMBER_PIN defined." #elif REDUNDANT_TEMP_MATCH(TARGET, BOARD) && !PIN_EXISTS(TEMP_BOARD) #error "TEMP_SENSOR_REDUNDANT_TARGET can't be BOARD without TEMP_BOARD_PIN defined." + #elif REDUNDANT_TEMP_MATCH(TARGET, SOC) + #error "TEMP_SENSOR_REDUNDANT_TARGET can't be SOC." #elif REDUNDANT_TEMP_MATCH(TARGET, PROBE) && !PIN_EXISTS(TEMP_PROBE) #error "TEMP_SENSOR_REDUNDANT_TARGET can't be PROBE without TEMP_PROBE_PIN defined." #elif REDUNDANT_TEMP_MATCH(TARGET, COOLER) && !PIN_EXISTS(TEMP_COOLER) @@ -2135,8 +2139,14 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "CONTROLLER_FAN_MIN_BOARD_TEMP requires TEMP_SENSOR_BOARD." #endif -#if TEMP_SENSOR_BOARD && !PIN_EXISTS(TEMP_BOARD) - #error "TEMP_SENSOR_BOARD requires TEMP_BOARD_PIN." +#if TEMP_SENSOR_SOC + #if !PIN_EXISTS(TEMP_SOC) + #error "TEMP_SENSOR_SOC requires TEMP_SOC_PIN." + #elif ENABLED(THERMAL_PROTECTION_SOC) && !defined(SOC_MAXTEMP) + #error "THERMAL_PROTECTION_SOC requires SOC_MAXTEMP." + #endif +#elif CONTROLLER_FAN_MIN_SOC_TEMP + #error "CONTROLLER_FAN_MIN_SOC_TEMP requires TEMP_SENSOR_SOC." #endif #if ENABLED(LASER_COOLANT_FLOW_METER) && !(PIN_EXISTS(FLOWMETER) && ENABLED(LASER_FEATURE)) diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 3274136f419f..b4b1ba6372fd 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -564,6 +564,11 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED); #endif #endif +#if HAS_TEMP_SOC + soc_info_t Temperature::temp_soc; // = { 0 } + raw_adc_t Temperature::maxtemp_raw_SOC = TEMP_SENSOR_SOC_RAW_HI_TEMP; +#endif + #if BOTH(HAS_MARLINUI_MENU, PREVENT_COLD_EXTRUSION) && E_MANUAL > 0 bool Temperature::allow_cold_extrude_override = false; #else @@ -1356,6 +1361,7 @@ void Temperature::_temp_error(const heater_id_t heater_id, FSTR_P const serial_m OPTCODE(HAS_TEMP_COOLER, case H_COOLER: SERIAL_ECHOPGM(STR_COOLER); break) OPTCODE(HAS_TEMP_PROBE, case H_PROBE: SERIAL_ECHOPGM(STR_PROBE); break) OPTCODE(HAS_TEMP_BOARD, case H_BOARD: SERIAL_ECHOPGM(STR_MOTHERBOARD); break) + OPTCODE(HAS_TEMP_SOC, case H_SOC: SERIAL_ECHOPGM(STR_SOC); break) OPTCODE(HAS_TEMP_CHAMBER, case H_CHAMBER: SERIAL_ECHOPGM(STR_HEATER_CHAMBER); break) OPTCODE(HAS_TEMP_BED, case H_BED: SERIAL_ECHOPGM(STR_HEATER_BED); break) default: @@ -2368,6 +2374,20 @@ void Temperature::task() { } #endif // HAS_TEMP_BOARD +#if HAS_TEMP_SOC + // For SoC temperature measurement. + celsius_float_t Temperature::analog_to_celsius_soc(const raw_adc_t raw) { + return ( + #ifdef TEMP_SOC_SENSOR + TEMP_SOC_SENSOR(raw) + #else + 0 + #error "TEMP_SENSOR_SOC requires the TEMP_SOC_SENSOR(RAW) macro to be defined for your board." + #endif + ); + } +#endif + #if HAS_TEMP_REDUNDANT // For redundant temperature measurement. celsius_float_t Temperature::analog_to_celsius_redundant(const raw_adc_t raw) { @@ -2430,6 +2450,7 @@ void Temperature::updateTemperaturesFromRawValues() { TERN_(HAS_TEMP_COOLER, temp_cooler.celsius = analog_to_celsius_cooler(temp_cooler.getraw())); TERN_(HAS_TEMP_PROBE, temp_probe.celsius = analog_to_celsius_probe(temp_probe.getraw())); TERN_(HAS_TEMP_BOARD, temp_board.celsius = analog_to_celsius_board(temp_board.getraw())); + TERN_(HAS_TEMP_SOC, temp_soc.celsius = analog_to_celsius_soc(temp_soc.getraw())); TERN_(HAS_TEMP_REDUNDANT, temp_redundant.celsius = analog_to_celsius_redundant(temp_redundant.getraw())); TERN_(FILAMENT_WIDTH_SENSOR, filwidth.update_measured_mm()); @@ -2507,6 +2528,10 @@ void Temperature::updateTemperaturesFromRawValues() { if (TP_CMP(BOARD, temp_board.getraw(), maxtemp_raw_BOARD)) maxtemp_error(H_BOARD); if (TP_CMP(BOARD, mintemp_raw_BOARD, temp_board.getraw())) mintemp_error(H_BOARD); #endif + + #if BOTH(HAS_TEMP_SOC, THERMAL_PROTECTION_SOC) + if (TP_CMP(SOC, temp_soc.getraw(), maxtemp_raw_SOC)) maxtemp_error(H_SOC); + #endif #undef TP_CMP } // Temperature::updateTemperaturesFromRawValues @@ -2722,6 +2747,7 @@ void Temperature::init() { TERN_(HAS_TEMP_ADC_PROBE, hal.adc_enable(TEMP_PROBE_PIN)); TERN_(HAS_TEMP_ADC_COOLER, hal.adc_enable(TEMP_COOLER_PIN)); TERN_(HAS_TEMP_ADC_BOARD, hal.adc_enable(TEMP_BOARD_PIN)); + TERN_(HAS_TEMP_ADC_SOC, hal.adc_enable(TEMP_SOC_PIN)); TERN_(HAS_TEMP_ADC_REDUNDANT, hal.adc_enable(TEMP_REDUNDANT_PIN)); TERN_(FILAMENT_WIDTH_SENSOR, hal.adc_enable(FILWIDTH_PIN)); TERN_(HAS_ADC_BUTTONS, hal.adc_enable(ADC_KEYPAD_PIN)); @@ -2858,6 +2884,10 @@ void Temperature::init() { while (analog_to_celsius_board(maxtemp_raw_BOARD) > BOARD_MAXTEMP) maxtemp_raw_BOARD -= TEMPDIR(BOARD) * (OVERSAMPLENR); #endif + #if BOTH(HAS_TEMP_SOC, THERMAL_PROTECTION_SOC) + while (analog_to_celsius_soc(maxtemp_raw_SOC) > SOC_MAXTEMP) maxtemp_raw_SOC -= OVERSAMPLENR; + #endif + #if HAS_TEMP_REDUNDANT temp_redundant.target = &( #if REDUNDANT_TEMP_MATCH(TARGET, COOLER) && HAS_TEMP_COOLER @@ -3340,6 +3370,7 @@ void Temperature::update_raw_temperatures() { TERN_(HAS_TEMP_ADC_PROBE, temp_probe.update()); TERN_(HAS_TEMP_ADC_COOLER, temp_cooler.update()); TERN_(HAS_TEMP_ADC_BOARD, temp_board.update()); + TERN_(HAS_TEMP_ADC_SOC, temp_soc.update()); TERN_(HAS_JOY_ADC_X, joystick.x.update()); TERN_(HAS_JOY_ADC_Y, joystick.y.update()); @@ -3370,6 +3401,7 @@ void Temperature::readings_ready() { TERN_(HAS_TEMP_PROBE, temp_probe.reset()); TERN_(HAS_TEMP_COOLER, temp_cooler.reset()); TERN_(HAS_TEMP_BOARD, temp_board.reset()); + TERN_(HAS_TEMP_SOC, temp_soc.reset()); TERN_(HAS_TEMP_REDUNDANT, temp_redundant.reset()); TERN_(HAS_JOY_ADC_X, joystick.x.reset()); @@ -3828,6 +3860,11 @@ void Temperature::isr() { case MeasureTemp_BOARD: ACCUMULATE_ADC(temp_board); break; #endif + #if HAS_TEMP_ADC_SOC + case PrepareTemp_SOC: hal.adc_start(TEMP_SOC_PIN); break; + case MeasureTemp_SOC: ACCUMULATE_ADC(temp_soc); break; + #endif + #if HAS_TEMP_ADC_REDUNDANT case PrepareTemp_REDUNDANT: hal.adc_start(TEMP_REDUNDANT_PIN); break; case MeasureTemp_REDUNDANT: ACCUMULATE_ADC(temp_redundant); break; @@ -3967,8 +4004,10 @@ void Temperature::isr() { * Print a single heater state in the form: * Bed: " B:nnn.nn /nnn.nn" * Chamber: " C:nnn.nn /nnn.nn" - * Probe: " P:nnn.nn /nnn.nn" + * Probe: " P:nnn.nn" * Cooler: " L:nnn.nn /nnn.nn" + * Board: " M:nnn.nn" + * SoC: " S:nnn.nn" * Redundant: " R:nnn.nn /nnn.nn" * Extruder: " T0:nnn.nn /nnn.nn" * With ADC: " T0:nnn.nn /nnn.nn (nnn.nn)" @@ -3977,6 +4016,7 @@ void Temperature::isr() { OPTARG(SHOW_TEMP_ADC_VALUES, const float r) ) { char k; + bool show_t = true; switch (e) { default: #if HAS_TEMP_HOTEND @@ -3989,13 +4029,16 @@ void Temperature::isr() { case H_CHAMBER: k = 'C'; break; #endif #if HAS_TEMP_PROBE - case H_PROBE: k = 'P'; break; + case H_PROBE: k = 'P'; show_t = false; break; #endif #if HAS_TEMP_COOLER case H_COOLER: k = 'L'; break; #endif #if HAS_TEMP_BOARD - case H_BOARD: k = 'M'; break; + case H_BOARD: k = 'M'; show_t = false; break; + #endif + #if HAS_TEMP_SOC + case H_SOC: k = 'S'; show_t = false; break; #endif #if HAS_TEMP_REDUNDANT case H_REDUNDANT: k = 'R'; break; @@ -4010,10 +4053,8 @@ void Temperature::isr() { #else #define SFP 2 #endif - SERIAL_CHAR(':'); - SERIAL_PRINT(c, SFP); - SERIAL_ECHOPGM(" /"); - SERIAL_PRINT(t, SFP); + SERIAL_CHAR(':'); SERIAL_PRINT(c, SFP); + if (show_t) { SERIAL_ECHOPGM(" /"); SERIAL_PRINT(t, SFP); } #if ENABLED(SHOW_TEMP_ADC_VALUES) // Temperature MAX SPI boards do not have an OVERSAMPLENR defined SERIAL_ECHOPGM(" (", TERN(HAS_MAXTC_LIBRARIES, k == 'T', false) ? r : r * RECIPROCAL(OVERSAMPLENR)); @@ -4043,6 +4084,9 @@ void Temperature::isr() { #if HAS_TEMP_BOARD print_heater_state(H_BOARD, degBoard(), 0 OPTARG(SHOW_TEMP_ADC_VALUES, rawBoardTemp())); #endif + #if HAS_TEMP_SOC + print_heater_state(H_SOC, degSoc(), 0 OPTARG(SHOW_TEMP_ADC_VALUES, rawSocTemp())); + #endif #if HAS_TEMP_REDUNDANT if (include_r) print_heater_state(H_REDUNDANT, degRedundant(), degRedundantTarget() OPTARG(SHOW_TEMP_ADC_VALUES, rawRedundantTemp())); #endif diff --git a/Marlin/src/module/temperature.h b/Marlin/src/module/temperature.h index 4bf76e5d4839..2fdd1f02c8dd 100644 --- a/Marlin/src/module/temperature.h +++ b/Marlin/src/module/temperature.h @@ -54,6 +54,7 @@ typedef enum : int_fast8_t { H_COOLER = HID_COOLER, H_PROBE = HID_PROBE, H_BOARD = HID_BOARD, + H_SOC = HID_SOC, H_CHAMBER = HID_CHAMBER, H_BED = HID_BED, H_E0 = HID_E0, H_E1, H_E2, H_E3, H_E4, H_E5, H_E6, H_E7, @@ -83,6 +84,9 @@ enum ADCSensorState : char { #if HAS_TEMP_ADC_BOARD PrepareTemp_BOARD, MeasureTemp_BOARD, #endif + #if HAS_TEMP_ADC_SOC + PrepareTemp_SOC, MeasureTemp_SOC, + #endif #if HAS_TEMP_ADC_REDUNDANT PrepareTemp_REDUNDANT, MeasureTemp_REDUNDANT, #endif @@ -480,6 +484,9 @@ struct PIDHeaterInfo : public HeaterInfo { #if HAS_TEMP_BOARD typedef temp_info_t board_info_t; #endif +#if HAS_TEMP_SOC + typedef temp_info_t soc_info_t; +#endif // Heater watch handling template @@ -607,6 +614,9 @@ class Temperature { #if HAS_TEMP_BOARD static board_info_t temp_board; #endif + #if HAS_TEMP_SOC + static soc_info_t temp_soc; + #endif #if HAS_TEMP_REDUNDANT static redundant_info_t temp_redundant; #endif @@ -754,6 +764,10 @@ class Temperature { static raw_adc_t mintemp_raw_BOARD, maxtemp_raw_BOARD; #endif + #if BOTH(HAS_TEMP_SOC, THERMAL_PROTECTION_SOC) + static raw_adc_t maxtemp_raw_SOC; + #endif + #if MAX_CONSECUTIVE_LOW_TEMPERATURE_ERROR_ALLOWED > 1 static uint8_t consecutive_low_temperature_error[HOTENDS]; #endif @@ -846,6 +860,9 @@ class Temperature { #if HAS_TEMP_BOARD static celsius_float_t analog_to_celsius_board(const raw_adc_t raw); #endif + #if HAS_TEMP_SOC + static celsius_float_t analog_to_celsius_soc(const raw_adc_t raw); + #endif #if HAS_TEMP_REDUNDANT static celsius_float_t analog_to_celsius_redundant(const raw_adc_t raw); #endif @@ -1119,6 +1136,14 @@ class Temperature { static celsius_t wholeDegBoard() { return static_cast(temp_board.celsius + 0.5f); } #endif + #if HAS_TEMP_SOC + #if ENABLED(SHOW_TEMP_ADC_VALUES) + static raw_adc_t rawSocTemp() { return temp_soc.getraw(); } + #endif + static celsius_float_t degSoc() { return temp_soc.celsius; } + static celsius_t wholeDegSoc() { return static_cast(temp_soc.celsius + 0.5f); } + #endif + #if HAS_TEMP_REDUNDANT #if ENABLED(SHOW_TEMP_ADC_VALUES) static raw_adc_t rawRedundantTemp() { return temp_redundant.getraw(); } diff --git a/Marlin/src/module/thermistor/thermistors.h b/Marlin/src/module/thermistor/thermistors.h index c596d746f7fd..53ca609f6836 100644 --- a/Marlin/src/module/thermistor/thermistors.h +++ b/Marlin/src/module/thermistor/thermistors.h @@ -532,6 +532,10 @@ static_assert(255 > TEMPTABLE_0_LEN || 255 > TEMPTABLE_1_LEN || 255 > TEMPTABLE_ #define TEMP_SENSOR_BOARD_RAW_LO_TEMP MAX_RAW_THERMISTOR_VALUE #endif #endif +#ifndef TEMP_SENSOR_SOC_RAW_HI_TEMP + #define TEMP_SENSOR_SOC_RAW_LO_TEMP 0 + #define TEMP_SENSOR_SOC_RAW_HI_TEMP MAX_RAW_THERMISTOR_VALUE +#endif #ifndef TEMP_SENSOR_REDUNDANT_RAW_HI_TEMP #if TT_REVRAW(REDUNDANT) #define TEMP_SENSOR_REDUNDANT_RAW_HI_TEMP MAX_RAW_THERMISTOR_VALUE diff --git a/Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h b/Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h index 3793f65bfa41..8c32202d4ddd 100644 --- a/Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h +++ b/Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h @@ -171,7 +171,10 @@ #define TEMP_0_PIN P0_24 #define TEMP_1_PIN P0_23 #define TEMP_BED_PIN P0_25 -#define TEMP_BOARD_PIN P1_30 // Onboard thermistor, NTC100K + +#ifndef TEMP_BOARD_PIN + #define TEMP_BOARD_PIN P1_30 // Onboard thermistor, NTC100K +#endif // // Heaters / Fans diff --git a/Marlin/src/pins/pins_postprocess.h b/Marlin/src/pins/pins_postprocess.h index 6ae99d2f5706..cf64b28cd532 100644 --- a/Marlin/src/pins/pins_postprocess.h +++ b/Marlin/src/pins/pins_postprocess.h @@ -456,6 +456,11 @@ #define TEMP_BED_PIN -1 #endif +// Use ATEMP if TEMP_SOC_PIN is not defined +#if !defined(TEMP_SOC_PIN) && defined(ATEMP) + #define TEMP_SOC_PIN ATEMP +#endif + #ifndef SD_DETECT_PIN #define SD_DETECT_PIN -1 #endif diff --git a/Marlin/src/pins/rambo/pins_EINSY_RAMBO.h b/Marlin/src/pins/rambo/pins_EINSY_RAMBO.h index ced9c722f4af..531739ca16b8 100644 --- a/Marlin/src/pins/rambo/pins_EINSY_RAMBO.h +++ b/Marlin/src/pins/rambo/pins_EINSY_RAMBO.h @@ -118,10 +118,13 @@ // #define TEMP_0_PIN 0 // Analog Input, Header J2 #define TEMP_1_PIN 1 // Analog Input, Header J3 -#define TEMP_BOARD_PIN 91 // Onboard thermistor, 100k TDK NTCG104LH104JT1 #define TEMP_BED_PIN 2 // Analog Input, Header J6 #define TEMP_PROBE_PIN 3 // Analog Input, Header J15 +#ifndef TEMP_BOARD_PIN + #define TEMP_BOARD_PIN 91 // Onboard thermistor, 100k TDK NTCG104LH104JT1 +#endif + // // Heaters / Fans // diff --git a/Marlin/src/pins/sam/pins_DUE3DOM_MINI.h b/Marlin/src/pins/sam/pins_DUE3DOM_MINI.h index 41d43c0b0485..8ad5e2229cfd 100644 --- a/Marlin/src/pins/sam/pins_DUE3DOM_MINI.h +++ b/Marlin/src/pins/sam/pins_DUE3DOM_MINI.h @@ -69,7 +69,10 @@ #define TEMP_0_PIN 0 // Analog Input (HOTEND0 thermistor) #define TEMP_1_PIN 2 // Analog Input (unused) #define TEMP_BED_PIN 1 // Analog Input (BED thermistor) -#define TEMP_BOARD_PIN 5 // Analog Input (OnBoard thermistor beta 3950) + +#ifndef TEMP_BOARD_PIN + #define TEMP_BOARD_PIN 5 // Analog Input (OnBoard thermistor beta 3950) +#endif // SPI for MAX Thermocouple #if !HAS_MEDIA diff --git a/Marlin/src/pins/stm32f1/pins_ERYONE_ERY32_MINI.h b/Marlin/src/pins/stm32f1/pins_ERYONE_ERY32_MINI.h index de85484eae7b..7a1f1e6cce32 100644 --- a/Marlin/src/pins/stm32f1/pins_ERYONE_ERY32_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_ERYONE_ERY32_MINI.h @@ -148,18 +148,22 @@ #define E0_SLAVE_ADDRESS 0 #endif #endif + // // Temperature Sensors // -#define TEMP_BED_PIN PC2 //TB -#define TEMP_0_PIN PC1 //TH1 -//#define TEMP_1_PIN PC3 //TH2 -#define TEMP_BOARD_PIN PC3 -#ifndef TEMP_SENSOR_BOARD - #define TEMP_SENSOR_BOARD 13 -#endif +#define TEMP_BED_PIN PC2 // TB +#define TEMP_0_PIN PC1 // TH1 +//#define TEMP_1_PIN PC3 // TH2 #define FIL_RUNOUT_PIN PA10 // MT_DET +#ifndef TEMP_BOARD_PIN + #define TEMP_BOARD_PIN PC3 +#endif +#if TEMP_BOARD_PIN == PC3 && TEMP_SENSOR_BOARD != 13 + #warning "The built-in TEMP_SENSOR_BOARD is 13 for ERYONE Ery32 mini." +#endif + // // LCD Pins // diff --git a/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h b/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h index 73af02d3ab6c..f40e6c2d694d 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h @@ -160,10 +160,13 @@ // #define TEMP_0_PIN PA2 // T0 <-> E0 #define TEMP_1_PIN PA0 // T1 <-> E1 -#define TEMP_BOARD_PIN PC2 // Onboard thermistor, NTC100K #define TEMP_BED_PIN PA1 // T2 <-> Bed #define TEMP_PROBE_PIN PC3 // Shares J4 connector with PD1 +#ifndef TEMP_BOARD_PIN + #define TEMP_BOARD_PIN PC2 // Onboard thermistor, NTC100K +#endif + // // Heaters / Fans // diff --git a/buildroot/share/PlatformIO/scripts/schema.py b/buildroot/share/PlatformIO/scripts/schema.py index 103aa1f072dc..afac7b5d2788 100755 --- a/buildroot/share/PlatformIO/scripts/schema.py +++ b/buildroot/share/PlatformIO/scripts/schema.py @@ -190,7 +190,7 @@ def use_comment(c, opt, sec, bufref): elif state == Parse.BLOCK_COMMENT: # Look for temperature sensors - if cline == "Temperature sensors available:": + if re.match(r'temperature sensors.*:', cline, re.IGNORECASE): state, cline = Parse.GET_SENSORS, "Temperature Sensors" options_json, section = use_comment(cline, options_json, section, comment_buff) diff --git a/buildroot/tests/STM32F103RC_btt_USB b/buildroot/tests/STM32F103RC_btt_USB index 8381de0ea6e4..3981466c4652 100755 --- a/buildroot/tests/STM32F103RC_btt_USB +++ b/buildroot/tests/STM32F103RC_btt_USB @@ -10,8 +10,8 @@ set -e # Build with the default configurations # restore_configs -opt_set MOTHERBOARD BOARD_BTT_SKR_MINI_V1_1 SERIAL_PORT 1 SERIAL_PORT_2 -1 -exec_test $1 $2 "BigTreeTech SKR Mini v1.1 - Basic Configuration" "$3" +opt_set MOTHERBOARD BOARD_BTT_SKR_MINI_V1_1 SERIAL_PORT 1 SERIAL_PORT_2 -1 TEMP_SENSOR_SOC 1 +exec_test $1 $2 "BigTreeTech SKR Mini v1.1 - SOC Temperature" "$3" # clean up restore_configs From a4cc9b60fd27c3b4ac81c322107fa4a041cb51b5 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Wed, 26 Apr 2023 00:21:12 +0000 Subject: [PATCH 071/427] [cron] Bump distribution date (2023-04-26) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 764df8447071..c357b9f8b808 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-25" +//#define STRING_DISTRIBUTION_DATE "2023-04-26" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index cf9077c43e57..f2caef0458eb 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-25" + #define STRING_DISTRIBUTION_DATE "2023-04-26" #endif /** From 08edb6282f7c85f785bd838be9ef59ef247e61a2 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 26 Apr 2023 02:57:53 -0500 Subject: [PATCH 072/427] =?UTF-8?q?=F0=9F=94=A7=20Extra=20axis=20endstop?= =?UTF-8?q?=20defaults?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/Conditionals_post.h | 36 ++++++++++++++++++++++++++++++ Marlin/src/pins/pins_postprocess.h | 36 ++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+) diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index ac701c4570c9..f3d80a6c9fbf 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -1085,6 +1085,24 @@ #if ENABLED(USE_ZMAX_PLUG) #define ENDSTOPPULLDOWN_ZMAX #endif + #if ENABLED(USE_IMAX_PLUG) + #define ENDSTOPPULLDOWN_IMAX + #endif + #if ENABLED(USE_JMAX_PLUG) + #define ENDSTOPPULLDOWN_JMAX + #endif + #if ENABLED(USE_KMAX_PLUG) + #define ENDSTOPPULLDOWN_KMAX + #endif + #if ENABLED(USE_UMAX_PLUG) + #define ENDSTOPPULLDOWN_UMAX + #endif + #if ENABLED(USE_VMAX_PLUG) + #define ENDSTOPPULLDOWN_VMAX + #endif + #if ENABLED(USE_WMAX_PLUG) + #define ENDSTOPPULLDOWN_WMAX + #endif #if ENABLED(USE_XMIN_PLUG) #define ENDSTOPPULLDOWN_XMIN #endif @@ -1094,6 +1112,24 @@ #if ENABLED(USE_ZMIN_PLUG) #define ENDSTOPPULLDOWN_ZMIN #endif + #if ENABLED(USE_IMIN_PLUG) + #define ENDSTOPPULLDOWN_IMIN + #endif + #if ENABLED(USE_JMIN_PLUG) + #define ENDSTOPPULLDOWN_JMIN + #endif + #if ENABLED(USE_KMIN_PLUG) + #define ENDSTOPPULLDOWN_KMIN + #endif + #if ENABLED(USE_UMIN_PLUG) + #define ENDSTOPPULLDOWN_UMIN + #endif + #if ENABLED(USE_VMIN_PLUG) + #define ENDSTOPPULLDOWN_VMIN + #endif + #if ENABLED(USE_WMIN_PLUG) + #define ENDSTOPPULLDOWN_WMIN + #endif #endif /** diff --git a/Marlin/src/pins/pins_postprocess.h b/Marlin/src/pins/pins_postprocess.h index cf64b28cd532..4c07b5412d7a 100644 --- a/Marlin/src/pins/pins_postprocess.h +++ b/Marlin/src/pins/pins_postprocess.h @@ -1723,6 +1723,24 @@ #if !defined(USE_ZMAX_PLUG) && _STOP_IN_USE(_ZMAX_) #define USE_ZMAX_PLUG #endif +#if !defined(USE_IMAX_PLUG) && _STOP_IN_USE(_IMAX_) + #define USE_IMAX_PLUG +#endif +#if !defined(USE_JMAX_PLUG) && _STOP_IN_USE(_JMAX_) + #define USE_JMAX_PLUG +#endif +#if !defined(USE_KMAX_PLUG) && _STOP_IN_USE(_KMAX_) + #define USE_KMAX_PLUG +#endif +#if !defined(USE_UMAX_PLUG) && _STOP_IN_USE(_UMAX_) + #define USE_UMAX_PLUG +#endif +#if !defined(USE_VMAX_PLUG) && _STOP_IN_USE(_VMAX_) + #define USE_VMAX_PLUG +#endif +#if !defined(USE_WMAX_PLUG) && _STOP_IN_USE(_WMAX_) + #define USE_WMAX_PLUG +#endif #if !defined(USE_XMIN_PLUG) && _STOP_IN_USE(_XMIN_) #define USE_XMIN_PLUG #endif @@ -1732,6 +1750,24 @@ #if !defined(USE_ZMIN_PLUG) && _STOP_IN_USE(_ZMIN_) #define USE_ZMIN_PLUG #endif +#if !defined(USE_IMIN_PLUG) && _STOP_IN_USE(_IMIN_) + #define USE_IMIN_PLUG +#endif +#if !defined(USE_JMIN_PLUG) && _STOP_IN_USE(_JMIN_) + #define USE_JMIN_PLUG +#endif +#if !defined(USE_KMIN_PLUG) && _STOP_IN_USE(_KMIN_) + #define USE_KMIN_PLUG +#endif +#if !defined(USE_UMIN_PLUG) && _STOP_IN_USE(_UMIN_) + #define USE_UMIN_PLUG +#endif +#if !defined(USE_VMIN_PLUG) && _STOP_IN_USE(_VMIN_) + #define USE_VMIN_PLUG +#endif +#if !defined(USE_WMIN_PLUG) && _STOP_IN_USE(_WMIN_) + #define USE_WMIN_PLUG +#endif #undef _STOP_IN_USE #if !USES_Z_MIN_PROBE_PIN #undef Z_MIN_PROBE_PIN From 68f74784a3a41c643984ee62a507b25903430591 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 26 Apr 2023 13:50:45 -0500 Subject: [PATCH 073/427] =?UTF-8?q?=F0=9F=8E=A8=20Misc.=20fixes,=20cleanup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/types.h | 2 + Marlin/src/gcode/calibrate/M666.cpp | 2 +- Marlin/src/gcode/gcode.cpp | 2 +- Marlin/src/module/endstops.cpp | 148 ++++++--------------- Marlin/src/module/endstops.h | 55 ++++---- Marlin/src/module/motion.cpp | 50 +++---- Marlin/src/pins/pins_postprocess.h | 116 ++-------------- Marlin/src/pins/ramps/pins_RUMBA.h | 3 - Marlin/src/pins/ramps/pins_TRIGORILLA_14.h | 4 +- 9 files changed, 119 insertions(+), 263 deletions(-) diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index 15d572af6022..af6834c666b3 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -67,6 +67,8 @@ template struct IF { typedef L type; }; #define SECONDARY_AXIS_GANG(V...) GANG_N(SECONDARY_AXES, V) #define SECONDARY_AXIS_CODE(V...) CODE_N(SECONDARY_AXES, V) +#define SECONDARY_AXIS_LIST(V...) LIST_N(SECONDARY_AXES, V) +#define SECONDARY_AXIS_ARGS(T) SECONDARY_AXIS_LIST(T i, T j, T k, T u, T v, T w) #if HAS_ROTATIONAL_AXES #define ROTATIONAL_AXIS_GANG(V...) GANG_N(ROTATIONAL_AXES, V) diff --git a/Marlin/src/gcode/calibrate/M666.cpp b/Marlin/src/gcode/calibrate/M666.cpp index 90fad1811c8c..546aa7fcb54a 100644 --- a/Marlin/src/gcode/calibrate/M666.cpp +++ b/Marlin/src/gcode/calibrate/M666.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if ENABLED(DELTA) || HAS_EXTRA_ENDSTOPS +#if EITHER(DELTA, HAS_EXTRA_ENDSTOPS) #include "../gcode.h" diff --git a/Marlin/src/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index 06a9600c437d..931c30c26d8a 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -954,7 +954,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 665: M665(); break; // M665: Set Kinematics parameters #endif - #if ENABLED(DELTA) || HAS_EXTRA_ENDSTOPS + #if EITHER(DELTA, HAS_EXTRA_ENDSTOPS) case 666: M666(); break; // M666: Set delta or multiple endstop adjustment #endif diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index 56444d1aee24..25553a98ac38 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -514,12 +514,12 @@ void Endstops::update() { #endif // Macros to update / copy the live_state - #define UPDATE_ENDSTOP_BIT(AXIS, MINMAX) SET_BIT_TO(live_state, _ENDSTOP(AXIS, MINMAX), (READ_ENDSTOP(_ENDSTOP_PIN(AXIS, MINMAX)) == _ENDSTOP_HIT_STATE(AXIS, MINMAX))) + #define UPDATE_LIVE_STATE(AXIS, MINMAX) SET_BIT_TO(live_state, _ENDSTOP(AXIS, MINMAX), (READ_ENDSTOP(_ENDSTOP_PIN(AXIS, MINMAX)) == _ENDSTOP_HIT_STATE(AXIS, MINMAX))) #define COPY_LIVE_STATE(SRC_BIT, DST_BIT) SET_BIT_TO(live_state, DST_BIT, TEST(live_state, SRC_BIT)) #if ENABLED(G38_PROBE_TARGET) // For G38 moves check the probe's pin for ALL movement - if (G38_move) UPDATE_ENDSTOP_BIT(Z, TERN(USES_Z_MIN_PROBE_PIN, MIN_PROBE, MIN)); + if (G38_move) UPDATE_LIVE_STATE(Z, TERN(USES_Z_MIN_PROBE_PIN, MIN_PROBE, MIN)); #endif // With Dual X, endstops are only checked in the homing direction for the active extruder @@ -554,10 +554,10 @@ void Endstops::update() { * Check and update endstops */ #if HAS_X_MIN && !X_SPI_SENSORLESS - UPDATE_ENDSTOP_BIT(X, MIN); + UPDATE_LIVE_STATE(X, MIN); #if ENABLED(X_DUAL_ENDSTOPS) #if HAS_X2_MIN - UPDATE_ENDSTOP_BIT(X2, MIN); + UPDATE_LIVE_STATE(X2, MIN); #else COPY_LIVE_STATE(X_MIN, X2_MIN); #endif @@ -565,10 +565,10 @@ void Endstops::update() { #endif #if HAS_X_MAX && !X_SPI_SENSORLESS - UPDATE_ENDSTOP_BIT(X, MAX); + UPDATE_LIVE_STATE(X, MAX); #if ENABLED(X_DUAL_ENDSTOPS) #if HAS_X2_MAX - UPDATE_ENDSTOP_BIT(X2, MAX); + UPDATE_LIVE_STATE(X2, MAX); #else COPY_LIVE_STATE(X_MAX, X2_MAX); #endif @@ -576,10 +576,10 @@ void Endstops::update() { #endif #if HAS_Y_MIN && !Y_SPI_SENSORLESS - UPDATE_ENDSTOP_BIT(Y, MIN); + UPDATE_LIVE_STATE(Y, MIN); #if ENABLED(Y_DUAL_ENDSTOPS) #if HAS_Y2_MIN - UPDATE_ENDSTOP_BIT(Y2, MIN); + UPDATE_LIVE_STATE(Y2, MIN); #else COPY_LIVE_STATE(Y_MIN, Y2_MIN); #endif @@ -587,10 +587,10 @@ void Endstops::update() { #endif #if HAS_Y_MAX && !Y_SPI_SENSORLESS - UPDATE_ENDSTOP_BIT(Y, MAX); + UPDATE_LIVE_STATE(Y, MAX); #if ENABLED(Y_DUAL_ENDSTOPS) #if HAS_Y2_MAX - UPDATE_ENDSTOP_BIT(Y2, MAX); + UPDATE_LIVE_STATE(Y2, MAX); #else COPY_LIVE_STATE(Y_MAX, Y2_MAX); #endif @@ -598,23 +598,23 @@ void Endstops::update() { #endif #if HAS_Z_MIN && NONE(Z_SPI_SENSORLESS, Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) - UPDATE_ENDSTOP_BIT(Z, MIN); + UPDATE_LIVE_STATE(Z, MIN); #if ENABLED(Z_MULTI_ENDSTOPS) #if HAS_Z2_MIN - UPDATE_ENDSTOP_BIT(Z2, MIN); + UPDATE_LIVE_STATE(Z2, MIN); #else COPY_LIVE_STATE(Z_MIN, Z2_MIN); #endif #if NUM_Z_STEPPERS >= 3 #if HAS_Z3_MIN - UPDATE_ENDSTOP_BIT(Z3, MIN); + UPDATE_LIVE_STATE(Z3, MIN); #else COPY_LIVE_STATE(Z_MIN, Z3_MIN); #endif #endif #if NUM_Z_STEPPERS >= 4 #if HAS_Z4_MIN - UPDATE_ENDSTOP_BIT(Z4, MIN); + UPDATE_LIVE_STATE(Z4, MIN); #else COPY_LIVE_STATE(Z_MIN, Z4_MIN); #endif @@ -625,189 +625,129 @@ void Endstops::update() { #if HAS_BED_PROBE // When closing the gap check the enabled probe if (probe_switch_activated()) - UPDATE_ENDSTOP_BIT(Z, TERN(USES_Z_MIN_PROBE_PIN, MIN_PROBE, MIN)); + UPDATE_LIVE_STATE(Z, TERN(USES_Z_MIN_PROBE_PIN, MIN_PROBE, MIN)); #endif #if HAS_Z_MAX && !Z_SPI_SENSORLESS // Check both Z dual endstops #if ENABLED(Z_MULTI_ENDSTOPS) - UPDATE_ENDSTOP_BIT(Z, MAX); + UPDATE_LIVE_STATE(Z, MAX); #if HAS_Z2_MAX - UPDATE_ENDSTOP_BIT(Z2, MAX); + UPDATE_LIVE_STATE(Z2, MAX); #else COPY_LIVE_STATE(Z_MAX, Z2_MAX); #endif #if NUM_Z_STEPPERS >= 3 #if HAS_Z3_MAX - UPDATE_ENDSTOP_BIT(Z3, MAX); + UPDATE_LIVE_STATE(Z3, MAX); #else COPY_LIVE_STATE(Z_MAX, Z3_MAX); #endif #endif #if NUM_Z_STEPPERS >= 4 #if HAS_Z4_MAX - UPDATE_ENDSTOP_BIT(Z4, MAX); + UPDATE_LIVE_STATE(Z4, MAX); #else COPY_LIVE_STATE(Z_MAX, Z4_MAX); #endif #endif #elif TERN1(USES_Z_MIN_PROBE_PIN, Z_MAX_PIN != Z_MIN_PROBE_PIN) // If this pin isn't the bed probe it's the Z endstop - UPDATE_ENDSTOP_BIT(Z, MAX); + UPDATE_LIVE_STATE(Z, MAX); #endif #endif #if HAS_I_MIN && !I_SPI_SENSORLESS #if ENABLED(I_DUAL_ENDSTOPS) - UPDATE_ENDSTOP_BIT(I, MIN); - #if HAS_I2_MIN - UPDATE_ENDSTOP_BIT(I2, MAX); - #else - COPY_LIVE_STATE(I_MIN, I2_MIN); - #endif + UPDATE_LIVE_STATE(I, MIN); #else - UPDATE_ENDSTOP_BIT(I, MIN); + UPDATE_LIVE_STATE(I, MIN); #endif #endif #if HAS_I_MAX && !I_SPI_SENSORLESS #if ENABLED(I_DUAL_ENDSTOPS) - UPDATE_ENDSTOP_BIT(I, MAX); - #if HAS_I2_MAX - UPDATE_ENDSTOP_BIT(I2, MAX); - #else - COPY_LIVE_STATE(I_MAX, I2_MAX); - #endif + UPDATE_LIVE_STATE(I, MAX); #else - UPDATE_ENDSTOP_BIT(I, MAX); + UPDATE_LIVE_STATE(I, MAX); #endif #endif #if HAS_J_MIN && !J_SPI_SENSORLESS #if ENABLED(J_DUAL_ENDSTOPS) - UPDATE_ENDSTOP_BIT(J, MIN); - #if HAS_J2_MIN - UPDATE_ENDSTOP_BIT(J2, MIN); - #else - COPY_LIVE_STATE(J_MIN, J2_MIN); - #endif + UPDATE_LIVE_STATE(J, MIN); #else - UPDATE_ENDSTOP_BIT(J, MIN); + UPDATE_LIVE_STATE(J, MIN); #endif #endif #if HAS_J_MAX && !J_SPI_SENSORLESS #if ENABLED(J_DUAL_ENDSTOPS) - UPDATE_ENDSTOP_BIT(J, MAX); - #if HAS_J2_MAX - UPDATE_ENDSTOP_BIT(J2, MAX); - #else - COPY_LIVE_STATE(J_MAX, J2_MAX); - #endif + UPDATE_LIVE_STATE(J, MAX); #else - UPDATE_ENDSTOP_BIT(J, MAX); + UPDATE_LIVE_STATE(J, MAX); #endif #endif #if HAS_K_MIN && !K_SPI_SENSORLESS #if ENABLED(K_DUAL_ENDSTOPS) - UPDATE_ENDSTOP_BIT(K, MIN); - #if HAS_K2_MIN - UPDATE_ENDSTOP_BIT(K2, MIN); - #else - COPY_LIVE_STATE(K_MIN, K2_MIN); - #endif + UPDATE_LIVE_STATE(K, MIN); #else - UPDATE_ENDSTOP_BIT(K, MIN); + UPDATE_LIVE_STATE(K, MIN); #endif #endif #if HAS_K_MAX && !K_SPI_SENSORLESS #if ENABLED(K_DUAL_ENDSTOPS) - UPDATE_ENDSTOP_BIT(K, MAX); - #if HAS_K2_MAX - UPDATE_ENDSTOP_BIT(K2, MAX); - #else - COPY_LIVE_STATE(K_MAX, K2_MAX); - #endif + UPDATE_LIVE_STATE(K, MAX); #else - UPDATE_ENDSTOP_BIT(K, MAX); + UPDATE_LIVE_STATE(K, MAX); #endif #endif #if HAS_U_MIN && !U_SPI_SENSORLESS #if ENABLED(U_DUAL_ENDSTOPS) - UPDATE_ENDSTOP_BIT(U, MIN); - #if HAS_U2_MIN - UPDATE_ENDSTOP_BIT(U2, MIN); - #else - COPY_LIVE_STATE(U_MIN, U2_MIN); - #endif + UPDATE_LIVE_STATE(U, MIN); #else - UPDATE_ENDSTOP_BIT(U, MIN); + UPDATE_LIVE_STATE(U, MIN); #endif #endif #if HAS_U_MAX && !U_SPI_SENSORLESS #if ENABLED(U_DUAL_ENDSTOPS) - UPDATE_ENDSTOP_BIT(U, MAX); - #if HAS_U2_MAX - UPDATE_ENDSTOP_BIT(U2, MAX); - #else - COPY_LIVE_STATE(U_MAX, U2_MAX); - #endif + UPDATE_LIVE_STATE(U, MAX); #else - UPDATE_ENDSTOP_BIT(U, MAX); + UPDATE_LIVE_STATE(U, MAX); #endif #endif #if HAS_V_MIN && !V_SPI_SENSORLESS #if ENABLED(V_DUAL_ENDSTOPS) - UPDATE_ENDSTOP_BIT(V, MIN); - #if HAS_V2_MIN - UPDATE_ENDSTOP_BIT(V2, MIN); - #else - COPY_LIVE_STATE(V_MIN, V2_MIN); - #endif + UPDATE_LIVE_STATE(V, MIN); #else - UPDATE_ENDSTOP_BIT(V, MIN); + UPDATE_LIVE_STATE(V, MIN); #endif #endif #if HAS_V_MAX && !V_SPI_SENSORLESS #if ENABLED(O_DUAL_ENDSTOPS) - UPDATE_ENDSTOP_BIT(V, MAX); - #if HAS_V2_MAX - UPDATE_ENDSTOP_BIT(V2, MAX); - #else - COPY_LIVE_STATE(V_MAX, V2_MAX); - #endif + UPDATE_LIVE_STATE(V, MAX); #else - UPDATE_ENDSTOP_BIT(V, MAX); + UPDATE_LIVE_STATE(V, MAX); #endif #endif #if HAS_W_MIN && !W_SPI_SENSORLESS #if ENABLED(W_DUAL_ENDSTOPS) - UPDATE_ENDSTOP_BIT(W, MIN); - #if HAS_W2_MIN - UPDATE_ENDSTOP_BIT(W2, MIN); - #else - COPY_LIVE_STATE(W_MIN, W2_MIN); - #endif + UPDATE_LIVE_STATE(W, MIN); #else - UPDATE_ENDSTOP_BIT(W, MIN); + UPDATE_LIVE_STATE(W, MIN); #endif #endif #if HAS_W_MAX && !W_SPI_SENSORLESS #if ENABLED(W_DUAL_ENDSTOPS) - UPDATE_ENDSTOP_BIT(W, MAX); - #if HAS_W2_MAX - UPDATE_ENDSTOP_BIT(W2, MAX); - #else - COPY_LIVE_STATE(W_MAX, W2_MAX); - #endif + UPDATE_LIVE_STATE(W, MAX); #else - UPDATE_ENDSTOP_BIT(W, MAX); + UPDATE_LIVE_STATE(W, MAX); #endif #endif diff --git a/Marlin/src/module/endstops.h b/Marlin/src/module/endstops.h index 9e942dc18e2b..28917697c431 100644 --- a/Marlin/src/module/endstops.h +++ b/Marlin/src/module/endstops.h @@ -28,58 +28,65 @@ #include "../inc/MarlinConfig.h" #include -#define __ES_ITEM(N) N, -#define _ES_ITEM(K,N) TERN_(K,DEFER4(__ES_ITEM)(N)) +#define _ES_ITEM(N) N, +#define ES_ITEM(K,N) TERN_(K,DEFER4(_ES_ITEM)(N)) /** * Basic Endstop Flag Bits: - * - Each axis gets one endstop flag bit based on the homing direction (e.g., "EndstopEnum::X_MIN"). + * - Each axis with an endstop gets a flag for its homing direction. * (The use of "MIN" or "MAX" makes it easier to pair with similarly-named endstop pins.) - * - Multi-stepper axes can optionally enable endstops for all axis steppers. - * - The bed probe gets a 'Z_PROBE' flag bit (but DELTA sensorless probing uses 3 endstops). + * - Bed probes with a single pin get a Z_MIN_PROBE flag. This includes Sensorless Z Probe. + * + * Extended Flag Bits: + * - Multi-stepper axes may have multi-endstops such as X2_MIN, Y2_MAX, etc. + * - DELTA gets X_MAX, Y_MAX, and Z_MAX corresponding to its "A", "B", "C" towers. + * - For DUAL_X_CARRIAGE the X axis has both X_MIN and X_MAX flags. + * - The Z axis may have both MIN and MAX when homing to MAX and the probe is Z_MIN. + * - DELTA Sensorless Probe uses X/Y/Z_MAX but sets the Z_MIN flag. * * Endstop Flag Bit Aliases: * - Each *_MIN or *_MAX flag is aliased to *_ENDSTOP. - * - 'Z_ENDSTOP' is aliased to 'Z_PROBE' if homing with the probe. + * - Z_MIN_PROBE is an alias to Z_MIN when the Z_MIN_PIN is being used as the probe pin. + * - When homing with the probe Z_ENDSTOP is a Z_MIN_PROBE alias, otherwise a Z_MIN/MAX alias. */ enum EndstopEnum : char { - // Common XYZ (ABC) endstops. Defined according to USE_[XYZ](MIN|MAX)_PLUG settings. - _ES_ITEM(HAS_X_MIN, X_MIN) _ES_ITEM(HAS_X_MAX, X_MAX) - _ES_ITEM(HAS_Y_MIN, Y_MIN) _ES_ITEM(HAS_Y_MAX, Y_MAX) - _ES_ITEM(HAS_Z_MIN, Z_MIN) _ES_ITEM(HAS_Z_MAX, Z_MAX) - _ES_ITEM(HAS_I_MIN, I_MIN) _ES_ITEM(HAS_I_MAX, I_MAX) - _ES_ITEM(HAS_J_MIN, J_MIN) _ES_ITEM(HAS_J_MAX, J_MAX) - _ES_ITEM(HAS_K_MIN, K_MIN) _ES_ITEM(HAS_K_MAX, K_MAX) - _ES_ITEM(HAS_U_MIN, U_MIN) _ES_ITEM(HAS_U_MAX, U_MAX) - _ES_ITEM(HAS_V_MIN, V_MIN) _ES_ITEM(HAS_V_MAX, V_MAX) - _ES_ITEM(HAS_W_MIN, W_MIN) _ES_ITEM(HAS_W_MAX, W_MAX) + // Common XYZ (ABC) endstops. + ES_ITEM(HAS_X_MIN, X_MIN) ES_ITEM(HAS_X_MAX, X_MAX) + ES_ITEM(HAS_Y_MIN, Y_MIN) ES_ITEM(HAS_Y_MAX, Y_MAX) + ES_ITEM(HAS_Z_MIN, Z_MIN) ES_ITEM(HAS_Z_MAX, Z_MAX) + ES_ITEM(HAS_I_MIN, I_MIN) ES_ITEM(HAS_I_MAX, I_MAX) + ES_ITEM(HAS_J_MIN, J_MIN) ES_ITEM(HAS_J_MAX, J_MAX) + ES_ITEM(HAS_K_MIN, K_MIN) ES_ITEM(HAS_K_MAX, K_MAX) + ES_ITEM(HAS_U_MIN, U_MIN) ES_ITEM(HAS_U_MAX, U_MAX) + ES_ITEM(HAS_V_MIN, V_MIN) ES_ITEM(HAS_V_MAX, V_MAX) + ES_ITEM(HAS_W_MIN, W_MIN) ES_ITEM(HAS_W_MAX, W_MAX) // Extra Endstops for XYZ #if ENABLED(X_DUAL_ENDSTOPS) - _ES_ITEM(HAS_X_MIN, X2_MIN) _ES_ITEM(HAS_X_MAX, X2_MAX) + ES_ITEM(HAS_X_MIN, X2_MIN) ES_ITEM(HAS_X_MAX, X2_MAX) #endif #if ENABLED(Y_DUAL_ENDSTOPS) - _ES_ITEM(HAS_Y_MIN, Y2_MIN) _ES_ITEM(HAS_Y_MAX, Y2_MAX) + ES_ITEM(HAS_Y_MIN, Y2_MIN) ES_ITEM(HAS_Y_MAX, Y2_MAX) #endif #if ENABLED(Z_MULTI_ENDSTOPS) - _ES_ITEM(HAS_Z_MIN, Z2_MIN) _ES_ITEM(HAS_Z_MAX, Z2_MAX) + ES_ITEM(HAS_Z_MIN, Z2_MIN) ES_ITEM(HAS_Z_MAX, Z2_MAX) #if NUM_Z_STEPPERS >= 3 - _ES_ITEM(HAS_Z_MIN, Z3_MIN) _ES_ITEM(HAS_Z_MAX, Z3_MAX) + ES_ITEM(HAS_Z_MIN, Z3_MIN) ES_ITEM(HAS_Z_MAX, Z3_MAX) #if NUM_Z_STEPPERS >= 4 - _ES_ITEM(HAS_Z_MIN, Z4_MIN) _ES_ITEM(HAS_Z_MAX, Z4_MAX) + ES_ITEM(HAS_Z_MIN, Z4_MIN) ES_ITEM(HAS_Z_MAX, Z4_MAX) #endif #endif #endif // Bed Probe state is distinct or shared with Z_MIN (i.e., when the probe is the only Z endstop) #if !HAS_DELTA_SENSORLESS_PROBING - _ES_ITEM(HAS_BED_PROBE, Z_MIN_PROBE IF_DISABLED(USES_Z_MIN_PROBE_PIN, = Z_MIN)) + ES_ITEM(HAS_BED_PROBE, Z_MIN_PROBE IF_DISABLED(USES_Z_MIN_PROBE_PIN, = Z_MIN)) #endif // The total number of states NUM_ENDSTOP_STATES - // Endstops can be either MIN or MAX but not both + // Endstop aliased to MIN or MAX #if HAS_X_ENDSTOP , X_ENDSTOP = TERN(X_HOME_TO_MAX, X_MAX, X_MIN) #if ENABLED(X_DUAL_ENDSTOPS) @@ -126,8 +133,8 @@ enum EndstopEnum : char { #endif }; -#undef __ES_ITEM #undef _ES_ITEM +#undef ES_ITEM class Endstops { public: diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index f7671e31355a..418bee559f70 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -540,6 +540,21 @@ void _internal_move_to_destination(const_feedRate_t fr_mm_s/*=0.0f*/ prepare_line_to_destination(); } +#if SECONDARY_AXES + + void secondary_axis_moves(SECONDARY_AXIS_ARGS(const_float_t), const_feedRate_t fr_mm_s) { + auto move_one = [&](const AxisEnum a, const_float_t p) { + const feedRate_t fr = fr_mm_s ?: homing_feedrate(a); + current_position[a] = p; line_to_current_position(fr); + }; + SECONDARY_AXIS_CODE( + move_one(I_AXIS, i), move_one(J_AXIS, j), move_one(K_AXIS, k), + move_one(U_AXIS, u), move_one(V_AXIS, v), move_one(W_AXIS, w) + ); + } + +#endif + /** * Plan a move to (X, Y, Z, [I, [J, [K...]]]) and set the current_position * Plan a move to (X, Y, Z, [I, [J, [K...]]]) with separation of Z from other components. @@ -558,14 +573,6 @@ void do_blocking_move_to(NUM_AXIS_ARGS(const_float_t), const_feedRate_t fr_mm_s/ #if HAS_Z_AXIS const feedRate_t z_feedrate = fr_mm_s ?: homing_feedrate(Z_AXIS); #endif - SECONDARY_AXIS_CODE( - const feedRate_t i_feedrate = fr_mm_s ?: homing_feedrate(I_AXIS), - const feedRate_t j_feedrate = fr_mm_s ?: homing_feedrate(J_AXIS), - const feedRate_t k_feedrate = fr_mm_s ?: homing_feedrate(K_AXIS), - const feedRate_t u_feedrate = fr_mm_s ?: homing_feedrate(U_AXIS), - const feedRate_t v_feedrate = fr_mm_s ?: homing_feedrate(V_AXIS), - const feedRate_t w_feedrate = fr_mm_s ?: homing_feedrate(W_AXIS) - ); #if IS_KINEMATIC && DISABLED(POLARGRAPH) // kinematic machines are expected to home to a point 1.5x their range? never reachable. @@ -608,6 +615,10 @@ void do_blocking_move_to(NUM_AXIS_ARGS(const_float_t), const_feedRate_t fr_mm_s/ if (DEBUGGING(LEVELING)) DEBUG_POS("z lower move", current_position); } + #if SECONDARY_AXES + secondary_axis_moves(SECONDARY_AXIS_LIST(i, j, k, u, v, w), fr_mm_s); + #endif + #elif IS_SCARA // If Z needs to raise, do it before moving XY @@ -615,6 +626,10 @@ void do_blocking_move_to(NUM_AXIS_ARGS(const_float_t), const_feedRate_t fr_mm_s/ destination.set(x, y); prepare_internal_fast_move_to_destination(xy_feedrate); + #if SECONDARY_AXES + secondary_axis_moves(SECONDARY_AXIS_LIST(i, j, k, u, v, w), fr_mm_s); + #endif + // If Z needs to lower, do it after moving XY if (destination.z > z) { destination.z = z; prepare_internal_fast_move_to_destination(z_feedrate); } @@ -626,23 +641,8 @@ void do_blocking_move_to(NUM_AXIS_ARGS(const_float_t), const_feedRate_t fr_mm_s/ current_position.set(x OPTARG(HAS_Y_AXIS, y)); line_to_current_position(xy_feedrate); - #if HAS_I_AXIS - current_position.i = i; line_to_current_position(i_feedrate); - #endif - #if HAS_J_AXIS - current_position.j = j; line_to_current_position(j_feedrate); - #endif - #if HAS_K_AXIS - current_position.k = k; line_to_current_position(k_feedrate); - #endif - #if HAS_U_AXIS - current_position.u = u; line_to_current_position(u_feedrate); - #endif - #if HAS_V_AXIS - current_position.v = v; line_to_current_position(v_feedrate); - #endif - #if HAS_W_AXIS - current_position.w = w; line_to_current_position(w_feedrate); + #if SECONDARY_AXES + secondary_axis_moves(SECONDARY_AXIS_LIST(i, j, k, u, v, w), fr_mm_s); #endif #if HAS_Z_AXIS diff --git a/Marlin/src/pins/pins_postprocess.h b/Marlin/src/pins/pins_postprocess.h index 4c07b5412d7a..9d917cec297a 100644 --- a/Marlin/src/pins/pins_postprocess.h +++ b/Marlin/src/pins/pins_postprocess.h @@ -499,39 +499,29 @@ // // Assign endstop pins for boards with only 3 connectors // -#ifdef X_STOP_PIN - #if X_HOME_TO_MIN - #define X_MIN_PIN X_STOP_PIN - #ifndef X_MAX_PIN - #define X_MAX_PIN -1 +#if HAS_X_AXIS + #ifdef X_STOP_PIN + #if X_HOME_TO_MIN + #define X_MIN_PIN X_STOP_PIN + #else + #define X_MAX_PIN X_STOP_PIN #endif + #elif X_HOME_TO_MIN + #define X_STOP_PIN X_MIN_PIN #else - #define X_MAX_PIN X_STOP_PIN - #ifndef X_MIN_PIN - #define X_MIN_PIN -1 - #endif + #define X_STOP_PIN X_MAX_PIN + #endif + #if !defined(X2_USE_ENDSTOP) && ENABLED(X_DUAL_ENDSTOPS) && PIN_EXISTS(X_STOP) + #define X2_USE_ENDSTOP _XSTOP_ #endif -#elif X_HOME_TO_MIN - #define X_STOP_PIN X_MIN_PIN -#else - #define X_STOP_PIN X_MAX_PIN -#endif -#if !defined(X2_USE_ENDSTOP) && ENABLED(X_DUAL_ENDSTOPS) && PIN_EXISTS(X_STOP) - #define X2_USE_ENDSTOP _XSTOP_ #endif #if HAS_Y_AXIS #ifdef Y_STOP_PIN #if Y_HOME_TO_MIN #define Y_MIN_PIN Y_STOP_PIN - #ifndef Y_MAX_PIN - #define Y_MAX_PIN -1 - #endif #else #define Y_MAX_PIN Y_STOP_PIN - #ifndef Y_MIN_PIN - #define Y_MIN_PIN -1 - #endif #endif #elif Y_HOME_TO_MIN #define Y_STOP_PIN Y_MIN_PIN @@ -547,14 +537,8 @@ #ifdef Z_STOP_PIN #if Z_HOME_TO_MIN #define Z_MIN_PIN Z_STOP_PIN - #ifndef Z_MAX_PIN - #define Z_MAX_PIN -1 - #endif #else #define Z_MAX_PIN Z_STOP_PIN - #ifndef Z_MIN_PIN - #define Z_MIN_PIN -1 - #endif #endif #elif Z_HOME_TO_MIN #define Z_STOP_PIN Z_MIN_PIN @@ -578,138 +562,84 @@ #ifdef I_STOP_PIN #if I_HOME_TO_MIN #define I_MIN_PIN I_STOP_PIN - #ifndef I_MAX_PIN - #define I_MAX_PIN -1 - #endif #else #define I_MAX_PIN I_STOP_PIN - #ifndef I_MIN_PIN - #define I_MIN_PIN -1 - #endif #endif #elif I_HOME_TO_MIN #define I_STOP_PIN I_MIN_PIN #else #define I_STOP_PIN I_MAX_PIN #endif -#else - #undef I_MIN_PIN - #undef I_MAX_PIN #endif #if HAS_J_AXIS #ifdef J_STOP_PIN #if J_HOME_TO_MIN #define J_MIN_PIN J_STOP_PIN - #ifndef J_MAX_PIN - #define J_MAX_PIN -1 - #endif #else #define J_MAX_PIN J_STOP_PIN - #ifndef J_MIN_PIN - #define J_MIN_PIN -1 - #endif #endif #elif J_HOME_TO_MIN #define J_STOP_PIN J_MIN_PIN #else #define J_STOP_PIN J_MAX_PIN #endif -#else - #undef J_MIN_PIN - #undef J_MAX_PIN #endif #if HAS_K_AXIS #ifdef K_STOP_PIN #if K_HOME_TO_MIN #define K_MIN_PIN K_STOP_PIN - #ifndef K_MAX_PIN - #define K_MAX_PIN -1 - #endif #else #define K_MAX_PIN K_STOP_PIN - #ifndef K_MIN_PIN - #define K_MIN_PIN -1 - #endif #endif #elif K_HOME_TO_MIN #define K_STOP_PIN K_MIN_PIN #else #define K_STOP_PIN K_MAX_PIN #endif -#else - #undef K_MIN_PIN - #undef K_MAX_PIN #endif #if HAS_U_AXIS #ifdef U_STOP_PIN #if U_HOME_TO_MIN #define U_MIN_PIN U_STOP_PIN - #ifndef U_MAX_PIN - #define U_MAX_PIN -1 - #endif #else #define U_MAX_PIN U_STOP_PIN - #ifndef U_MIN_PIN - #define U_MIN_PIN -1 - #endif #endif #elif U_HOME_TO_MIN #define U_STOP_PIN U_MIN_PIN #else #define U_STOP_PIN U_MAX_PIN #endif -#else - #undef U_MIN_PIN - #undef U_MAX_PIN #endif #if HAS_V_AXIS #ifdef V_STOP_PIN #if V_HOME_TO_MIN #define V_MIN_PIN V_STOP_PIN - #ifndef V_MAX_PIN - #define V_MAX_PIN -1 - #endif #else #define V_MAX_PIN V_STOP_PIN - #ifndef V_MIN_PIN - #define V_MIN_PIN -1 - #endif #endif #elif V_HOME_TO_MIN #define V_STOP_PIN V_MIN_PIN #else #define V_STOP_PIN V_MAX_PIN #endif -#else - #undef V_MIN_PIN - #undef V_MAX_PIN #endif #if HAS_W_AXIS #ifdef W_STOP_PIN #if W_HOME_TO_MIN #define W_MIN_PIN W_STOP_PIN - #ifndef W_MAX_PIN - #define W_MAX_PIN -1 - #endif #else #define W_MAX_PIN W_STOP_PIN - #ifndef W_MIN_PIN - #define W_MIN_PIN -1 - #endif #endif #elif W_HOME_TO_MIN #define W_STOP_PIN W_MIN_PIN #else #define W_STOP_PIN W_MAX_PIN #endif -#else - #undef W_MIN_PIN - #undef W_MAX_PIN #endif // Filament Sensor first pin alias @@ -822,7 +752,6 @@ // Auto-assign pins for stallGuard sensorless homing // #if !defined(X2_DIAG_PIN) && !defined(X2_USE_ENDSTOP) && defined(X2_STALL_SENSITIVITY) && ENABLED(X_DUAL_ENDSTOPS) && _PEXI(X2_E_INDEX, DIAG) - #define X2_DIAG_PIN _EPIN(X2_E_INDEX, DIAG) #if DIAG_REMAPPED(X2, X_MIN) // If already remapped in the pins file... #define X2_USE_ENDSTOP _XMIN_ #elif DIAG_REMAPPED(X2, Y_MIN) @@ -839,7 +768,6 @@ #define X2_USE_ENDSTOP _En_DIAG_(X2_E_INDEX) #endif #define AUTO_ASSIGNED_X2_DIAG 1 - #undef X2_DIAG_PIN // Defined in Conditionals_post.h based on X2_USE_ENDSTOP #endif #endif @@ -908,7 +836,6 @@ #endif // Auto-assign pins for stallGuard sensorless homing #if !defined(Y2_DIAG_PIN) && !defined(Y2_USE_ENDSTOP) && defined(Y2_STALL_SENSITIVITY) && ENABLED(Y_DUAL_ENDSTOPS) && _PEXI(Y2_E_INDEX, DIAG) - #define Y2_DIAG_PIN _EPIN(Y2_E_INDEX, DIAG) #if DIAG_REMAPPED(Y2, X_MIN) #define Y2_USE_ENDSTOP _XMIN_ #elif DIAG_REMAPPED(Y2, Y_MIN) @@ -925,7 +852,6 @@ #define Y2_USE_ENDSTOP _En_DIAG_(Y2_E_INDEX) #endif #define AUTO_ASSIGNED_Y2_DIAG 1 - #undef Y2_DIAG_PIN // Defined in Conditionals_post.h based on Y2_USE_ENDSTOP #endif #endif @@ -994,7 +920,6 @@ #endif // Auto-assign pins for stallGuard sensorless homing #if !defined(Z2_DIAG_PIN) && !defined(Z2_USE_ENDSTOP) && defined(Z2_STALL_SENSITIVITY) && ENABLED(Z_MULTI_ENDSTOPS) && _PEXI(Z2_E_INDEX, DIAG) - #define Z2_DIAG_PIN _EPIN(Z2_E_INDEX, DIAG) #if DIAG_REMAPPED(Z2, X_MIN) #define Z2_USE_ENDSTOP _XMIN_ #elif DIAG_REMAPPED(Z2, Y_MIN) @@ -1011,7 +936,6 @@ #define Z2_USE_ENDSTOP _En_DIAG_(Z2_E_INDEX) #endif #define AUTO_ASSIGNED_Z2_DIAG 1 - #undef Z2_DIAG_PIN // Defined in Conditionals_post.h based on Z2_USE_ENDSTOP #endif #endif @@ -1080,7 +1004,6 @@ #endif // Auto-assign pins for stallGuard sensorless homing #if !defined(Z3_DIAG_PIN) && !defined(Z3_USE_ENDSTOP) && defined(Z3_STALL_SENSITIVITY) && ENABLED(Z_MULTI_ENDSTOPS) && _PEXI(Z3_E_INDEX, DIAG) - #define Z3_DIAG_PIN _EPIN(Z3_E_INDEX, DIAG) #if DIAG_REMAPPED(Z3, X_MIN) #define Z3_USE_ENDSTOP _XMIN_ #elif DIAG_REMAPPED(Z3, Y_MIN) @@ -1097,7 +1020,6 @@ #define Z3_USE_ENDSTOP _En_DIAG_(Z3_E_INDEX) #endif #define AUTO_ASSIGNED_Z3_DIAG 1 - #undef Z3_DIAG_PIN // Defined in Conditionals_post.h based on Z3_USE_ENDSTOP #endif #endif @@ -1166,7 +1088,6 @@ #endif // Auto-assign pins for stallGuard sensorless homing #if !defined(Z4_DIAG_PIN) && !defined(Z4_USE_ENDSTOP) && defined(Z4_STALL_SENSITIVITY) && ENABLED(Z_MULTI_ENDSTOPS) && _PEXI(Z4_E_INDEX, DIAG) - #define Z4_DIAG_PIN _EPIN(Z4_E_INDEX, DIAG) #if DIAG_REMAPPED(Z4, X_MIN) #define Z4_USE_ENDSTOP _XMIN_ #elif DIAG_REMAPPED(Z4, Y_MIN) @@ -1183,7 +1104,6 @@ #define Z4_USE_ENDSTOP _En_DIAG_(Z4_E_INDEX) #endif #define AUTO_ASSIGNED_Z4_DIAG 1 - #undef Z4_DIAG_PIN // Defined in Conditionals_post.h based on Z4_USE_ENDSTOP #endif #endif @@ -1252,7 +1172,6 @@ #endif // Auto-assign pins for stallGuard sensorless homing #if !defined(I_DIAG_PIN) && !defined(I_USE_ENDSTOP) && defined(I_STALL_SENSITIVITY) && _PEXI(I_E_INDEX, DIAG) - #define I_DIAG_PIN _EPIN(I_E_INDEX, DIAG) #if DIAG_REMAPPED(I, X_MIN) #define I_USE_ENDSTOP _XMIN_ #elif DIAG_REMAPPED(I, Y_MIN) @@ -1269,7 +1188,6 @@ #define I_USE_ENDSTOP _En_DIAG_(I_E_INDEX) #endif #define AUTO_ASSIGNED_I_DIAG 1 - #undef I_DIAG_PIN // Defined in Conditionals_post.h based on I_USE_ENDSTOP #endif #endif @@ -1338,7 +1256,6 @@ #endif // Auto-assign pins for stallGuard sensorless homing #if !defined(J_DIAG_PIN) && !defined(J_USE_ENDSTOP) && defined(J_STALL_SENSITIVITY) && _PEXI(J_E_INDEX, DIAG) - #define J_DIAG_PIN _EPIN(J_E_INDEX, DIAG) #if DIAG_REMAPPED(J, X_MIN) #define J_USE_ENDSTOP _XMIN_ #elif DIAG_REMAPPED(J, Y_MIN) @@ -1355,7 +1272,6 @@ #define J_USE_ENDSTOP _En_DIAG_(J_E_INDEX) #endif #define AUTO_ASSIGNED_J_DIAG 1 - #undef J_DIAG_PIN // Defined in Conditionals_post.h based on J_USE_ENDSTOP #endif #endif @@ -1424,7 +1340,6 @@ #endif // Auto-assign pins for stallGuard sensorless homing #if !defined(K_DIAG_PIN) && !defined(K_USE_ENDSTOP) && defined(K_STALL_SENSITIVITY) && _PEXI(K_E_INDEX, DIAG) - #define K_DIAG_PIN _EPIN(K_E_INDEX, DIAG) #if DIAG_REMAPPED(K, X_MIN) #define K_USE_ENDSTOP _XMIN_ #elif DIAG_REMAPPED(K, Y_MIN) @@ -1441,7 +1356,6 @@ #define K_USE_ENDSTOP _En_DIAG_(K_E_INDEX) #endif #define AUTO_ASSIGNED_K_DIAG 1 - #undef K_DIAG_PIN // Defined in Conditionals_post.h based on K_USE_ENDSTOP #endif #endif @@ -1510,7 +1424,6 @@ #endif // Auto-assign pins for stallGuard sensorless homing #if !defined(U_DIAG_PIN) && !defined(U_USE_ENDSTOP) && defined(U_STALL_SENSITIVITY) && _PEXI(U_E_INDEX, DIAG) - #define U_DIAG_PIN _EPIN(U_E_INDEX, DIAG) #if DIAG_REMAPPED(U, X_MIN) #define U_USE_ENDSTOP _XMIN_ #elif DIAG_REMAPPED(U, Y_MIN) @@ -1527,7 +1440,6 @@ #define U_USE_ENDSTOP _En_DIAG_(U_E_INDEX) #endif #define AUTO_ASSIGNED_U_DIAG 1 - #undef U_DIAG_PIN // Defined in Conditionals_post.h based on U_USE_ENDSTOP #endif #endif @@ -1596,7 +1508,6 @@ #endif // Auto-assign pins for stallGuard sensorless homing #if !defined(V_DIAG_PIN) && !defined(V_USE_ENDSTOP) && defined(V_STALL_SENSITIVITY) && _PEXI(V_E_INDEX, DIAG) - #define V_DIAG_PIN _EPIN(V_E_INDEX, DIAG) #if DIAG_REMAPPED(V, X_MIN) #define V_USE_ENDSTOP _XMIN_ #elif DIAG_REMAPPED(V, Y_MIN) @@ -1613,7 +1524,6 @@ #define V_USE_ENDSTOP _En_DIAG_(V_E_INDEX) #endif #define AUTO_ASSIGNED_V_DIAG 1 - #undef V_DIAG_PIN // Defined in Conditionals_post.h based on O_USE_ENDSTOP #endif #endif @@ -1676,7 +1586,6 @@ #endif // Auto-assign pins for stallGuard sensorless homing #if !defined(W_DIAG_PIN) && !defined(W_USE_ENDSTOP) && defined(W_STALL_SENSITIVITY) && _PEXI(W_E_INDEX, DIAG) - #define W_DIAG_PIN _EPIN(W_E_INDEX, DIAG) #if DIAG_REMAPPED(W, X_MIN) #define W_USE_ENDSTOP _XMIN_ #elif DIAG_REMAPPED(W, Y_MIN) @@ -1693,7 +1602,6 @@ #define W_USE_ENDSTOP _En_DIAG_(W_E_INDEX) #endif #define AUTO_ASSIGNED_W_DIAG 1 - #undef W_DIAG_PIN // Defined in Conditionals_post.h based on Q_USE_ENDSTOP #endif #endif diff --git a/Marlin/src/pins/ramps/pins_RUMBA.h b/Marlin/src/pins/ramps/pins_RUMBA.h index ba3c97c87ae2..20c804367adb 100644 --- a/Marlin/src/pins/ramps/pins_RUMBA.h +++ b/Marlin/src/pins/ramps/pins_RUMBA.h @@ -53,9 +53,6 @@ #ifndef X_MIN_PIN #define X_MIN_PIN 37 #endif -#ifndef X_MIN_PIN - #define X_MIN_PIN 37 -#endif #ifndef X_MAX_PIN #define X_MAX_PIN 36 #endif diff --git a/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h b/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h index 4399014c48d2..c2af8f196856 100644 --- a/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h +++ b/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h @@ -118,7 +118,9 @@ // Chiron uses AUX header for Y and Z endstops #define Y_STOP_PIN 42 // AUX (1) #define Z_STOP_PIN 43 // AUX (2) - #define Z2_MIN_PIN 18 // Z- + #ifndef Z2_STOP_PIN + #define Z2_STOP_PIN 18 // Z- + #endif #ifndef Z_MIN_PROBE_PIN #define Z_MIN_PROBE_PIN 2 // X+ From 1771d7ab64e2cb5bb339370a373ea0e6dbed82e1 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 26 Apr 2023 13:51:33 -0500 Subject: [PATCH 074/427] =?UTF-8?q?=E2=9C=85=20Skip=20change=20alerts=20in?= =?UTF-8?q?=20CI=20test?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .editorconfig | 12 ++++++++---- Makefile | 2 +- Marlin/src/inc/Changes.h | 4 +++- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/.editorconfig b/.editorconfig index 57a5b2fb5ea4..84f2d090b194 100644 --- a/.editorconfig +++ b/.editorconfig @@ -4,16 +4,20 @@ root = true [{*.patch,syntax_test_*}] trim_trailing_whitespace = false -[{*.c,*.cpp,*.h,*.ino}] -charset = utf-8 - -[{*.c,*.cpp,*.h,*.ino,Makefile}] +[{*.c,*.cpp,*.h,*.ino,*.py,Makefile}] trim_trailing_whitespace = true insert_final_newline = true end_of_line = lf + +[{*.c,*.cpp,*.h,*.ino}] +charset = utf-8 indent_style = space indent_size = 2 +[{Makefile}] +indent_style = tab +indent_size = 2 + [{*.py}] indent_style = space indent_size = 4 diff --git a/Makefile b/Makefile index 2a18c0b4e829..cfe0b7722623 100644 --- a/Makefile +++ b/Makefile @@ -27,7 +27,7 @@ help: tests-single-ci: export GIT_RESET_HARD=true - $(MAKE) tests-single-local TEST_TARGET=$(TEST_TARGET) + $(MAKE) tests-single-local TEST_TARGET=$(TEST_TARGET) PLATFORMIO_BUILD_FLAGS=-DGITHUB_ACTION .PHONY: tests-single-ci tests-single-local: diff --git a/Marlin/src/inc/Changes.h b/Marlin/src/inc/Changes.h index 4b7627adb48e..6fd33debc6ce 100644 --- a/Marlin/src/inc/Changes.h +++ b/Marlin/src/inc/Changes.h @@ -30,7 +30,9 @@ /** * Warnings for old configurations */ -#if WATCH_TEMP_PERIOD > 500 +#ifdef GITHUB_ACTION + // Skip change alerts during CI Test +#elif WATCH_TEMP_PERIOD > 500 #error "WATCH_TEMP_PERIOD now uses seconds instead of milliseconds." #elif DISABLED(THERMAL_PROTECTION_HOTENDS) && (defined(WATCH_TEMP_PERIOD) || defined(THERMAL_PROTECTION_PERIOD)) #error "Thermal Runaway Protection for hotends is now enabled with THERMAL_PROTECTION_HOTENDS." From d364babbc0cdb73337d86e2c4fd9170b46b7361a Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 26 Apr 2023 14:29:21 -0500 Subject: [PATCH 075/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Cha?= =?UTF-8?q?nge=20HAL=5FPATH=20macro=20for=20easier=20HAL=20relocation=20(#?= =?UTF-8?q?25743)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/HAL.h | 2 +- Marlin/src/HAL/platforms.h | 26 +++++++++---------- Marlin/src/inc/MarlinConfig.h | 8 +++--- Marlin/src/inc/MarlinConfigPre.h | 4 +-- .../extui/mks_ui/tft_lvgl_configuration.cpp | 2 +- Marlin/src/lcd/tft/touch.h | 4 +-- Marlin/src/lcd/tft_io/tft_io.h | 6 ++--- Marlin/src/lcd/touch/touch_buttons.cpp | 4 +-- Marlin/src/libs/MAX31865.h | 2 +- Marlin/src/libs/W25Qxx.h | 2 +- Marlin/src/module/endstops.cpp | 2 +- Marlin/src/module/stepper.cpp | 2 +- Marlin/src/pins/pinsDebug.h | 2 +- .../sd/usb_flashdrive/Sd2Card_FlashDrive.cpp | 4 +-- ini/features.ini | 1 + 15 files changed, 36 insertions(+), 35 deletions(-) diff --git a/Marlin/src/HAL/HAL.h b/Marlin/src/HAL/HAL.h index 518657801905..f3e16cfdf12c 100644 --- a/Marlin/src/HAL/HAL.h +++ b/Marlin/src/HAL/HAL.h @@ -27,7 +27,7 @@ #define GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) #endif -#include HAL_PATH(.,HAL.h) +#include HAL_PATH(..,HAL.h) extern MarlinHAL hal; #define HAL_ADC_RANGE _BV(HAL_ADC_RESOLUTION) diff --git a/Marlin/src/HAL/platforms.h b/Marlin/src/HAL/platforms.h index 488980ce0931..84ba7087b0ea 100644 --- a/Marlin/src/HAL/platforms.h +++ b/Marlin/src/HAL/platforms.h @@ -24,34 +24,34 @@ #define XSTR(V...) #V #ifdef __AVR__ - #define HAL_PATH(PATH, NAME) XSTR(PATH/AVR/NAME) + #define HAL_PATH(PATH, NAME) XSTR(PATH/HAL/AVR/NAME) #elif defined(ARDUINO_ARCH_SAM) - #define HAL_PATH(PATH, NAME) XSTR(PATH/DUE/NAME) + #define HAL_PATH(PATH, NAME) XSTR(PATH/HAL/DUE/NAME) #elif defined(__MK20DX256__) - #define HAL_PATH(PATH, NAME) XSTR(PATH/TEENSY31_32/NAME) + #define HAL_PATH(PATH, NAME) XSTR(PATH/HAL/TEENSY31_32/NAME) #elif defined(__MK64FX512__) || defined(__MK66FX1M0__) - #define HAL_PATH(PATH, NAME) XSTR(PATH/TEENSY35_36/NAME) + #define HAL_PATH(PATH, NAME) XSTR(PATH/HAL/TEENSY35_36/NAME) #elif defined(__IMXRT1062__) - #define HAL_PATH(PATH, NAME) XSTR(PATH/TEENSY40_41/NAME) + #define HAL_PATH(PATH, NAME) XSTR(PATH/HAL/TEENSY40_41/NAME) #elif defined(TARGET_LPC1768) - #define HAL_PATH(PATH, NAME) XSTR(PATH/LPC1768/NAME) + #define HAL_PATH(PATH, NAME) XSTR(PATH/HAL/LPC1768/NAME) #elif defined(__STM32F1__) || defined(TARGET_STM32F1) - #define HAL_PATH(PATH, NAME) XSTR(PATH/STM32F1/NAME) + #define HAL_PATH(PATH, NAME) XSTR(PATH/HAL/STM32F1/NAME) #elif defined(ARDUINO_ARCH_STM32) #ifndef HAL_STM32 #define HAL_STM32 #endif - #define HAL_PATH(PATH, NAME) XSTR(PATH/STM32/NAME) + #define HAL_PATH(PATH, NAME) XSTR(PATH/HAL/STM32/NAME) #elif defined(ARDUINO_ARCH_ESP32) - #define HAL_PATH(PATH, NAME) XSTR(PATH/ESP32/NAME) + #define HAL_PATH(PATH, NAME) XSTR(PATH/HAL/ESP32/NAME) #elif defined(__PLAT_LINUX__) - #define HAL_PATH(PATH, NAME) XSTR(PATH/LINUX/NAME) + #define HAL_PATH(PATH, NAME) XSTR(PATH/HAL/LINUX/NAME) #elif defined(__PLAT_NATIVE_SIM__) - #define HAL_PATH(PATH, NAME) XSTR(PATH/NATIVE_SIM/NAME) + #define HAL_PATH(PATH, NAME) XSTR(PATH/HAL/NATIVE_SIM/NAME) #elif defined(__SAMD51__) - #define HAL_PATH(PATH, NAME) XSTR(PATH/SAMD51/NAME) + #define HAL_PATH(PATH, NAME) XSTR(PATH/HAL/SAMD51/NAME) #elif defined(__SAMD21__) - #define HAL_PATH(PATH, NAME) XSTR(PATH/SAMD21/NAME) + #define HAL_PATH(PATH, NAME) XSTR(PATH/HAL/SAMD21/NAME) #else #error "Unsupported Platform!" #endif diff --git a/Marlin/src/inc/MarlinConfig.h b/Marlin/src/inc/MarlinConfig.h index ad11cc67b25f..c6c0bfbe2131 100644 --- a/Marlin/src/inc/MarlinConfig.h +++ b/Marlin/src/inc/MarlinConfig.h @@ -34,21 +34,21 @@ #include "../pins/pins.h" #ifndef __MARLIN_DEPS__ - #include HAL_PATH(../HAL, timers.h) - #include HAL_PATH(../HAL, spi_pins.h) + #include HAL_PATH(.., timers.h) + #include HAL_PATH(.., spi_pins.h) #endif #include "Conditionals_post.h" #ifndef __MARLIN_DEPS__ - #include HAL_PATH(../HAL, inc/Conditionals_post.h) + #include HAL_PATH(.., inc/Conditionals_post.h) #include "../core/types.h" // Ahead of sanity-checks #include "Changes.h" #include "SanityCheck.h" - #include HAL_PATH(../HAL, inc/SanityCheck.h) + #include HAL_PATH(.., inc/SanityCheck.h) // Include all core headers #include "../core/language.h" diff --git a/Marlin/src/inc/MarlinConfigPre.h b/Marlin/src/inc/MarlinConfigPre.h index c090b7e37bc4..c2191ab1b74f 100644 --- a/Marlin/src/inc/MarlinConfigPre.h +++ b/Marlin/src/inc/MarlinConfigPre.h @@ -49,7 +49,7 @@ #include "Conditionals_LCD.h" #ifndef __MARLIN_DEPS__ - #include HAL_PATH(../HAL, inc/Conditionals_LCD.h) + #include HAL_PATH(.., inc/Conditionals_LCD.h) #endif #include "../core/drivers.h" @@ -58,5 +58,5 @@ #include "Conditionals_adv.h" #ifndef __MARLIN_DEPS__ - #include HAL_PATH(../HAL, inc/Conditionals_adv.h) + #include HAL_PATH(.., inc/Conditionals_adv.h) #endif diff --git a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp index 972349d287ac..991754ba96d1 100644 --- a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp +++ b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp @@ -38,7 +38,7 @@ #include "../../../MarlinCore.h" #include "../../../inc/MarlinConfig.h" -#include HAL_PATH(../../../HAL, tft/xpt2046.h) +#include HAL_PATH(../../.., tft/xpt2046.h) #include "../../marlinui.h" XPT2046 touch; diff --git a/Marlin/src/lcd/tft/touch.h b/Marlin/src/lcd/tft/touch.h index bebd9d01e36a..91e863573b92 100644 --- a/Marlin/src/lcd/tft/touch.h +++ b/Marlin/src/lcd/tft/touch.h @@ -31,10 +31,10 @@ #endif #if ENABLED(TFT_TOUCH_DEVICE_GT911) - #include HAL_PATH(../../HAL, tft/gt911.h) + #include HAL_PATH(../.., tft/gt911.h) #define TOUCH_DRIVER_CLASS GT911 #elif ENABLED(TFT_TOUCH_DEVICE_XPT2046) - #include HAL_PATH(../../HAL, tft/xpt2046.h) + #include HAL_PATH(../.., tft/xpt2046.h) #define TOUCH_DRIVER_CLASS XPT2046 #else #error "Unknown Touch Screen Type." diff --git a/Marlin/src/lcd/tft_io/tft_io.h b/Marlin/src/lcd/tft_io/tft_io.h index 7dd973ef704e..226348552d5c 100644 --- a/Marlin/src/lcd/tft_io/tft_io.h +++ b/Marlin/src/lcd/tft_io/tft_io.h @@ -24,11 +24,11 @@ #include "../../inc/MarlinConfig.h" #if HAS_SPI_TFT - #include HAL_PATH(../../HAL, tft/tft_spi.h) + #include HAL_PATH(../.., tft/tft_spi.h) #elif HAS_FSMC_TFT - #include HAL_PATH(../../HAL, tft/tft_fsmc.h) + #include HAL_PATH(../.., tft/tft_fsmc.h) #elif HAS_LTDC_TFT - #include HAL_PATH(../../HAL, tft/tft_ltdc.h) + #include HAL_PATH(../.., tft/tft_ltdc.h) #else #error "TFT IO only supports SPI, FSMC or LTDC interface." #endif diff --git a/Marlin/src/lcd/touch/touch_buttons.cpp b/Marlin/src/lcd/touch/touch_buttons.cpp index 08554de0d3ca..032015cdd0ed 100644 --- a/Marlin/src/lcd/touch/touch_buttons.cpp +++ b/Marlin/src/lcd/touch/touch_buttons.cpp @@ -28,10 +28,10 @@ #include "../scaled_tft.h" #if ENABLED(TFT_TOUCH_DEVICE_GT911) - #include HAL_PATH(../../HAL, tft/gt911.h) + #include HAL_PATH(../.., tft/gt911.h) GT911 touchIO; #elif ENABLED(TFT_TOUCH_DEVICE_XPT2046) - #include HAL_PATH(../../HAL, tft/xpt2046.h) + #include HAL_PATH(../.., tft/xpt2046.h) XPT2046 touchIO; #else #error "Unknown Touch Screen Type." diff --git a/Marlin/src/libs/MAX31865.h b/Marlin/src/libs/MAX31865.h index 95bde756cee7..3e9b0c139ff6 100644 --- a/Marlin/src/libs/MAX31865.h +++ b/Marlin/src/libs/MAX31865.h @@ -45,7 +45,7 @@ #include "../inc/MarlinConfig.h" #include "../HAL/shared/Delay.h" -#include HAL_PATH(../HAL, MarlinSPI.h) +#include HAL_PATH(.., MarlinSPI.h) #define MAX31865_CONFIG_REG 0x00 #define MAX31865_CONFIG_BIAS 0x80 diff --git a/Marlin/src/libs/W25Qxx.h b/Marlin/src/libs/W25Qxx.h index 778463477d82..55490b025256 100644 --- a/Marlin/src/libs/W25Qxx.h +++ b/Marlin/src/libs/W25Qxx.h @@ -23,7 +23,7 @@ #include -#include HAL_PATH(../HAL, MarlinSPI.h) +#include HAL_PATH(.., MarlinSPI.h) #define W25X_WriteEnable 0x06 #define W25X_WriteDisable 0x04 diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index 25553a98ac38..233d84842522 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -35,7 +35,7 @@ #include "../core/debug_out.h" #if ENABLED(ENDSTOP_INTERRUPTS_FEATURE) - #include HAL_PATH(../HAL, endstop_interrupts.h) + #include HAL_PATH(.., endstop_interrupts.h) #endif #if BOTH(SD_ABORT_ON_ENDSTOP_HIT, HAS_MEDIA) diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index f26e10a4bd64..32e97c2a0686 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -3985,7 +3985,7 @@ void Stepper::report_positions() { #else // PRINTRBOARD_G2 - #include HAL_PATH(../HAL, fastio/G2_PWM.h) + #include HAL_PATH(.., fastio/G2_PWM.h) #endif diff --git a/Marlin/src/pins/pinsDebug.h b/Marlin/src/pins/pinsDebug.h index 5b19ff1b2d0d..25b883eee67c 100644 --- a/Marlin/src/pins/pinsDebug.h +++ b/Marlin/src/pins/pinsDebug.h @@ -168,7 +168,7 @@ const PinInfo pin_array[] PROGMEM = { }; -#include HAL_PATH(../HAL, pinsDebug.h) // get the correct support file for this CPU +#include HAL_PATH(.., pinsDebug.h) // get the correct support file for this CPU #ifndef M43_NEVER_TOUCH #define M43_NEVER_TOUCH(Q) false diff --git a/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.cpp b/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.cpp index b5968b7021fe..76d69c789ec8 100644 --- a/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.cpp +++ b/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.cpp @@ -84,10 +84,10 @@ #elif ENABLED(USE_OTG_USB_HOST) #if HAS_SD_HOST_DRIVE - #include HAL_PATH(../../HAL, msc_sd.h) + #include HAL_PATH(../.., msc_sd.h) #endif - #include HAL_PATH(../../HAL, usb_host.h) + #include HAL_PATH(../.., usb_host.h) #define UHS_START usb.start() #define rREVISION 0 diff --git a/ini/features.ini b/ini/features.ini index a8ee50b9edef..d459c2bee9c2 100644 --- a/ini/features.ini +++ b/ini/features.ini @@ -248,3 +248,4 @@ HAS_MICROSTEPS = src_filter=+ Date: Wed, 26 Apr 2023 21:38:39 +0200 Subject: [PATCH 076/427] =?UTF-8?q?=F0=9F=94=A7=20Thermistor=20100=20:=20S?= =?UTF-8?q?oC=20sensor=20(#25745)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25642 --- Marlin/Configuration.h | 5 ++++ Marlin/src/inc/SanityCheck.h | 56 ++++++++++++++++++++++++++++-------- 2 files changed, 49 insertions(+), 12 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 047beac89cfc..1251a99a3441 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -524,6 +524,11 @@ * -1 : AD595 with Thermocouple * * ================================================================ + * SoC internal sensor + * ================================================================ + * 100 : SoC internal sensor + * + * ================================================================ * Custom/Dummy/Other Thermal Sensors * ================================================================ * 0 : not used diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index a5244636dc51..39e27ce3aa31 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -2029,6 +2029,8 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "HEATER_0_PIN not defined for this board." #elif TEMP_SENSOR_IS_MAX_TC(0) && !PIN_EXISTS(TEMP_0_CS) #error "TEMP_SENSOR_0 MAX thermocouple requires TEMP_0_CS_PIN." + #elif TEMP_SENSOR_0 == 100 + #error "TEMP_SENSOR_0 can't use Soc temperature sensor." #elif TEMP_SENSOR_0 == 0 #error "TEMP_SENSOR_0 is required with 1 or more HOTENDS." #elif !ANY_PIN(TEMP_0, TEMP_0_CS) && !TEMP_SENSOR_0_IS_DUMMY @@ -2040,13 +2042,17 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #if HAS_MULTI_HOTEND #if TEMP_SENSOR_IS_MAX_TC(1) && !PIN_EXISTS(TEMP_1_CS) #error "TEMP_SENSOR_1 MAX thermocouple requires TEMP_1_CS_PIN." + #elif TEMP_SENSOR_1 == 100 + #error "TEMP_SENSOR_1 can't use Soc temperature sensor." #elif TEMP_SENSOR_1 == 0 #error "TEMP_SENSOR_1 is required with 2 or more HOTENDS." #elif !ANY_PIN(TEMP_1, TEMP_1_CS) && !TEMP_SENSOR_1_IS_DUMMY #error "TEMP_1_PIN or TEMP_1_CS_PIN not defined for this board." #endif #if HOTENDS > 2 - #if TEMP_SENSOR_2 == 0 + #if TEMP_SENSOR_2 == 100 + #error "TEMP_SENSOR_2 can't use Soc temperature sensor." + #elif TEMP_SENSOR_2 == 0 #error "TEMP_SENSOR_2 is required with 3 or more HOTENDS." #elif !HAS_HEATER_2 #error "HEATER_2_PIN not defined for this board." @@ -2054,7 +2060,9 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "TEMP_2_PIN or TEMP_2_CS_PIN not defined for this board." #endif #if HOTENDS > 3 - #if TEMP_SENSOR_3 == 0 + #if TEMP_SENSOR_3 == 100 + #error "TEMP_SENSOR_3 can't use Soc temperature sensor." + #elif TEMP_SENSOR_3 == 0 #error "TEMP_SENSOR_3 is required with 4 or more HOTENDS." #elif !HAS_HEATER_3 #error "HEATER_3_PIN not defined for this board." @@ -2062,7 +2070,9 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "TEMP_3_PIN not defined for this board." #endif #if HOTENDS > 4 - #if TEMP_SENSOR_4 == 0 + #if TEMP_SENSOR_4 == 100 + #error "TEMP_SENSOR_4 can't use Soc temperature sensor." + #elif TEMP_SENSOR_4 == 0 #error "TEMP_SENSOR_4 is required with 5 or more HOTENDS." #elif !HAS_HEATER_4 #error "HEATER_4_PIN not defined for this board." @@ -2070,7 +2080,9 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "TEMP_4_PIN not defined for this board." #endif #if HOTENDS > 5 - #if TEMP_SENSOR_5 == 0 + #if TEMP_SENSOR_5 == 100 + #error "TEMP_SENSOR_5 can't use Soc temperature sensor." + #elif TEMP_SENSOR_5 == 0 #error "TEMP_SENSOR_5 is required with 6 HOTENDS." #elif !HAS_HEATER_5 #error "HEATER_5_PIN not defined for this board." @@ -2078,7 +2090,9 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "TEMP_5_PIN not defined for this board." #endif #if HOTENDS > 6 - #if TEMP_SENSOR_6 == 0 + #if TEMP_SENSOR_6 == 100 + #error "TEMP_SENSOR_6 can't use Soc temperature sensor." + #elif TEMP_SENSOR_6 == 0 #error "TEMP_SENSOR_6 is required with 6 HOTENDS." #elif !HAS_HEATER_6 #error "HEATER_6_PIN not defined for this board." @@ -2086,7 +2100,9 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "TEMP_6_PIN not defined for this board." #endif #if HOTENDS > 7 - #if TEMP_SENSOR_7 == 0 + #if TEMP_SENSOR_7 == 100 + #error "TEMP_SENSOR_7 can't use Soc temperature sensor." + #elif TEMP_SENSOR_7 == 0 #error "TEMP_SENSOR_7 is required with 7 HOTENDS." #elif !HAS_HEATER_7 #error "HEATER_7_PIN not defined for this board." @@ -2109,12 +2125,22 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Pins must be set for temp sensors, with some other feature requirements. */ -#if TEMP_SENSOR_CHAMBER && !PIN_EXISTS(TEMP_CHAMBER) - #error "TEMP_SENSOR_CHAMBER requires TEMP_CHAMBER_PIN." +#if TEMP_SENSOR_BED == 100 + #error "TEMP_SENSOR_BED can't use Soc temperature sensor." +#endif + +#if TEMP_SENSOR_CHAMBER + #if TEMP_SENSOR_CHAMBER == 100 + #error "TEMP_SENSOR_CHAMBER can't use Soc temperature sensor." + #elif !PIN_EXISTS(TEMP_CHAMBER) + #error "TEMP_SENSOR_CHAMBER requires TEMP_CHAMBER_PIN." + #endif #endif #if TEMP_SENSOR_COOLER - #if !PIN_EXISTS(TEMP_COOLER) + #if TEMP_SENSOR_COOLER == 100 + #error "TEMP_SENSOR_COOLER can't use Soc temperature sensor." + #elif !PIN_EXISTS(TEMP_COOLER) #error "TEMP_SENSOR_COOLER requires TEMP_COOLER_PIN." #elif DISABLED(LASER_FEATURE) #error "TEMP_SENSOR_COOLER requires LASER_FEATURE." @@ -2122,7 +2148,9 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #endif #if TEMP_SENSOR_PROBE - #if !PIN_EXISTS(TEMP_PROBE) + #if TEMP_SENSOR_PROBE == 100 + #error "TEMP_SENSOR_PROBE can't use Soc temperature sensor." + #elif !PIN_EXISTS(TEMP_PROBE) #error "TEMP_SENSOR_PROBE requires TEMP_PROBE_PIN." #elif DISABLED(FIX_MOUNTED_PROBE) #error "TEMP_SENSOR_PROBE shouldn't be set without FIX_MOUNTED_PROBE." @@ -2130,7 +2158,9 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #endif #if TEMP_SENSOR_BOARD - #if !PIN_EXISTS(TEMP_BOARD) + #if TEMP_SENSOR_BOARD == 100 + #error "TEMP_SENSOR_BOARD can't use Soc temperature sensor." + #elif !PIN_EXISTS(TEMP_BOARD) #error "TEMP_SENSOR_BOARD requires TEMP_BOARD_PIN." #elif ENABLED(THERMAL_PROTECTION_BOARD) && (!defined(BOARD_MINTEMP) || !defined(BOARD_MAXTEMP)) #error "THERMAL_PROTECTION_BOARD requires BOARD_MINTEMP and BOARD_MAXTEMP." @@ -2140,7 +2170,9 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #endif #if TEMP_SENSOR_SOC - #if !PIN_EXISTS(TEMP_SOC) + #if TEMP_SENSOR_SOC != 100 + #error "TEMP_SENSOR_SOC requires TEMP_SENSOR_SOC 100." + #elif !PIN_EXISTS(TEMP_SOC) #error "TEMP_SENSOR_SOC requires TEMP_SOC_PIN." #elif ENABLED(THERMAL_PROTECTION_SOC) && !defined(SOC_MAXTEMP) #error "THERMAL_PROTECTION_SOC requires SOC_MAXTEMP." From 358a54ecdc4e13d46d3859485255ef0856e3f2ba Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 26 Apr 2023 14:39:56 -0500 Subject: [PATCH 077/427] =?UTF-8?q?=F0=9F=94=A8=20Servo=20Timer=201=20with?= =?UTF-8?q?=20STM32F103RC=5Ffysetc=20(#25741)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/test-builds.yml | 125 +++++++++++++---------- buildroot/tests/STM32F103RC_fysetc | 16 +++ buildroot/tests/STM32F103RC_fysetc_maple | 4 +- ini/stm32f1.ini | 1 + 4 files changed, 90 insertions(+), 56 deletions(-) create mode 100755 buildroot/tests/STM32F103RC_fysetc diff --git a/.github/workflows/test-builds.yml b/.github/workflows/test-builds.yml index 173631e5e500..fcda1111cbe6 100644 --- a/.github/workflows/test-builds.yml +++ b/.github/workflows/test-builds.yml @@ -33,91 +33,108 @@ jobs: strategy: matrix: test-platform: - # Base Environments - - DUE - - DUE_archim - - esp32 + # Native - linux_native + + # AVR - mega2560 - at90usb1286_dfu - - teensy31 - - teensy35 - - teensy41 - - SAMD21_minitronics20 - - SAMD51_grandcentral_m4 - - PANDA_PI_V29 - - # Extended AVR Environments + # AVR Extended - FYSETC_F6 - mega1280 + - melzi_optiboot - rambo - sanguino1284p - sanguino644p - - melzi_optiboot - # STM32F1 (Maple) Environments + # SAM3X8E + - DUE + - DUE_archim - #- STM32F103RC_btt_maple - - STM32F103RC_btt_USB_maple - - STM32F103RC_fysetc_maple - - STM32F103RC_meeb_maple - - jgaurora_a5s_a1_maple - - STM32F103VE_longer_maple - #- mks_robin_maple - - mks_robin_lite_maple - - mks_robin_pro_maple - #- mks_robin_nano_v1v2_maple - #- STM32F103RE_creality_maple - - STM32F103VE_ZM3E4V2_USB_maple + # SAMD21 + - SAMD51_grandcentral_m4 + - SAMD21_minitronics20 - # STM32 (ST) Environments + # ESP32 + - esp32 + - mks_tinybee + # Teensy 2 + #- at90usb1286_cdc + + # Teensy MK20DX256 + - teensy31 + + # Teensy MK64FX512, MK66FX1M0 + - teensy35 + + # Teensy IMXRT1062DVx6A + - teensy41 + + # STM32F0 + - malyan_M300 + - STM32F070CB_malyan + - STM32F070RB_malyan + + # STM32F1 + - chitu_f103 + - mks_robin + - mks_robin_nano_v1v2 + - PANDA_PI_V29 - STM32F103RC_btt - #- STM32F103RC_btt_USB + - STM32F103RC_fysetc - STM32F103RE_btt - STM32F103RE_btt_USB - STM32F103RE_creality - - STM32F401RC_creality - STM32F103VE_longer - - STM32F407VE_black + #- mks_robin_mini + #- mks_robin_nano_v1_3_f4_usbmod + #- mks_robin_nano_v1v2_usbmod + #- STM32F103CB_malyan + #- STM32F103RC_btt_USB + #- STM32F103RE + + # STM32F4 + - ARMED - BIGTREE_BTT002 - - BIGTREE_SKR_PRO - BIGTREE_GTR_V1_0 - - mks_robin - - ARMED - - FYSETC_S6 - - STM32F070CB_malyan - - STM32F070RB_malyan - - malyan_M300 + - BIGTREE_SKR_PRO - FLYF407ZG - - rumba32 - - LERDGEX + - FYSETC_S6 - LERDGEK - - mks_robin_nano_v1v2 - #- mks_robin_nano_v1v2_usbmod - #- mks_robin_nano_v1_3_f4_usbmod + - LERDGEX + - Opulo_Lumen_REV3 + - rumba32 + - STM32F401RC_creality + - STM32F407VE_black + + # STM32F7 - NUCLEO_F767ZI - REMRAM_V1 - - BTT_SKR_SE_BX - - chitu_f103 - - Opulo_Lumen_REV3 - # ESP32 environments - - mks_tinybee + # STM32H7 + - BTT_SKR_SE_BX - # Put lengthy tests last + # STM32F1 (Maple) + - jgaurora_a5s_a1_maple + - mks_robin_lite_maple + - mks_robin_pro_maple + - STM32F103RC_btt_USB_maple + - STM32F103RC_fysetc_maple + - STM32F103RC_meeb_maple + - STM32F103VE_longer_maple + - STM32F103VE_ZM3E4V2_USB_maple + #- mks_robin_maple + #- mks_robin_nano_v1v2_maple + #- STM32F103RC_btt_maple + #- STM32F103RE_creality_maple + # LPC176x - Lengthy tests - LPC1768 - LPC1769 - # Non-working environment tests - #- at90usb1286_cdc - #- STM32F103CB_malyan - #- STM32F103RE - #- mks_robin_mini - steps: - name: Check out the PR diff --git a/buildroot/tests/STM32F103RC_fysetc b/buildroot/tests/STM32F103RC_fysetc new file mode 100755 index 000000000000..93b0fedf3d82 --- /dev/null +++ b/buildroot/tests/STM32F103RC_fysetc @@ -0,0 +1,16 @@ +#!/usr/bin/env bash +# +# Build tests for STM32F103RC_fysetc +# + +# exit on first failure +set -e + +# +# Build with the default configurations +# +use_example_configs "Creality/Ender-3/FYSETC Cheetah 1.2/BLTouch" +exec_test $1 $2 "Ender-3 with Cheetah 1.2 | BLTouch" "$3" + +# clean up +restore_configs diff --git a/buildroot/tests/STM32F103RC_fysetc_maple b/buildroot/tests/STM32F103RC_fysetc_maple index 0e78c731888c..09dba7ef61fc 100755 --- a/buildroot/tests/STM32F103RC_fysetc_maple +++ b/buildroot/tests/STM32F103RC_fysetc_maple @@ -1,6 +1,6 @@ #!/usr/bin/env bash # -# Build tests for STM32F103RC FYSETC +# Build tests for STM32F103RC_fysetc_maple # # exit on first failure @@ -10,7 +10,7 @@ set -e # Build with the default configurations # use_example_configs "Creality/Ender-3/FYSETC Cheetah 1.2/base" -exec_test $1 $2 "Cheetah 1.2 Configuration" "$3" +exec_test $1 $2 "Maple build of Cheetah 1.2 Configuration" "$3" # clean up restore_configs diff --git a/ini/stm32f1.ini b/ini/stm32f1.ini index 9aaa39ea20de..230f1ae774cb 100644 --- a/ini/stm32f1.ini +++ b/ini/stm32f1.ini @@ -371,6 +371,7 @@ extra_scripts = ${stm32_variant.extra_scripts} extends = common_STM32F103RC_variant extra_scripts = ${common_STM32F103RC_variant.extra_scripts} buildroot/share/PlatformIO/scripts/STM32F103RC_fysetc.py +build_flags = ${common_STM32F103RC_variant.build_flags} -DTIMER_SERVO=TIM1 lib_ldf_mode = chain debug_tool = stlink upload_protocol = serial From 467ab74523087a852ab50939d86a0ca0b78f17ad Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 26 Apr 2023 14:56:23 -0500 Subject: [PATCH 078/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Sim?= =?UTF-8?q?plify=20endstops=20config=20(#25748)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration.h | 22 - Marlin/Configuration_adv.h | 12 +- Marlin/src/HAL/AVR/endstop_interrupts.h | 26 +- Marlin/src/HAL/DUE/endstop_interrupts.h | 56 +- Marlin/src/HAL/ESP32/endstop_interrupts.h | 56 +- Marlin/src/HAL/LPC1768/endstop_interrupts.h | 50 +- Marlin/src/HAL/SAMD21/endstop_interrupts.h | 130 ++- Marlin/src/HAL/SAMD51/endstop_interrupts.h | 106 +- Marlin/src/HAL/STM32/endstop_interrupts.h | 56 +- Marlin/src/HAL/STM32F1/endstop_interrupts.h | 56 +- .../src/HAL/TEENSY31_32/endstop_interrupts.h | 56 +- .../src/HAL/TEENSY35_36/endstop_interrupts.h | 56 +- .../src/HAL/TEENSY40_41/endstop_interrupts.h | 50 +- Marlin/src/core/macros.h | 45 - Marlin/src/inc/Changes.h | 16 +- Marlin/src/inc/Conditionals_post.h | 404 ++++---- Marlin/src/inc/SanityCheck.h | 152 ++- Marlin/src/inc/Warnings.cpp | 778 +++++++-------- Marlin/src/lcd/e3v2/proui/endstop_diag.cpp | 12 +- .../generic/endstop_state_screen.cpp | 2 +- Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp | 24 +- Marlin/src/module/endstops.cpp | 8 +- Marlin/src/pins/pins.h | 51 + Marlin/src/pins/pins_postprocess.h | 918 +++--------------- Marlin/src/pins/stm32f1/pins_ZM3E4_V1_0.h | 1 + Marlin/src/pins/stm32f1/pins_ZM3E4_V2_0.h | 1 + Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h | 6 +- Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h | 20 +- .../pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h | 23 +- Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h | 25 +- .../pins/stm32g0/pins_BTT_MANTA_M8P_common.h | 18 +- .../pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h | 23 +- buildroot/tests/DUE | 2 +- buildroot/tests/FYSETC_F6 | 4 +- buildroot/tests/LPC1769 | 4 +- buildroot/tests/mega1280 | 2 +- buildroot/tests/rambo | 7 +- buildroot/tests/teensy31 | 1 - buildroot/tests/teensy35 | 4 +- buildroot/tests/teensy41 | 4 +- 40 files changed, 1293 insertions(+), 1994 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 1251a99a3441..33b661e3c8c3 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1087,28 +1087,6 @@ // @section endstops -// Specify here all the endstop connectors that are connected to any endstop or probe. -// Almost all printers will be using one per axis. Probes will use one or more of the -// extra connectors. Leave undefined any used for non-endstop and non-probe purposes. -#define USE_XMIN_PLUG -#define USE_YMIN_PLUG -#define USE_ZMIN_PLUG -//#define USE_IMIN_PLUG -//#define USE_JMIN_PLUG -//#define USE_KMIN_PLUG -//#define USE_UMIN_PLUG -//#define USE_VMIN_PLUG -//#define USE_WMIN_PLUG -//#define USE_XMAX_PLUG -//#define USE_YMAX_PLUG -//#define USE_ZMAX_PLUG -//#define USE_IMAX_PLUG -//#define USE_JMAX_PLUG -//#define USE_KMAX_PLUG -//#define USE_UMAX_PLUG -//#define USE_VMAX_PLUG -//#define USE_WMAX_PLUG - // Enable pullup for all endstops to prevent a floating state #define ENDSTOPPULLUPS #if DISABLED(ENDSTOPPULLUPS) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index f0c4975d5d02..5eb709f704ac 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -849,13 +849,13 @@ * Get the offset by homing X and measuring the error. * Also set with 'M666 X' and stored to EEPROM with 'M500'. * - * - Use X2_USE_ENDSTOP to set the endstop plug by name. (_XMIN_, _XMAX_, _YMIN_, _YMAX_, _ZMIN_, _ZMAX_) + * - Define the extra endstop pins here to override defaults. No auto-assignment. */ #if HAS_X2_STEPPER && DISABLED(DUAL_X_CARRIAGE) //#define INVERT_X2_VS_X_DIR // X2 direction signal is the opposite of X //#define X_DUAL_ENDSTOPS // X2 has its own endstop #if ENABLED(X_DUAL_ENDSTOPS) - #define X2_USE_ENDSTOP _XMAX_ // X2 endstop board plug. Don't forget to enable USE_*_PLUG. + //#define X2_STOP_PIN X_MAX_PIN // X2 endstop pin override #define X2_ENDSTOP_ADJUSTMENT 0 // X2 offset relative to X endstop #endif #endif @@ -864,7 +864,7 @@ //#define INVERT_Y2_VS_Y_DIR // Y2 direction signal is the opposite of Y //#define Y_DUAL_ENDSTOPS // Y2 has its own endstop #if ENABLED(Y_DUAL_ENDSTOPS) - #define Y2_USE_ENDSTOP _YMAX_ // Y2 endstop board plug. Don't forget to enable USE_*_PLUG. + //#define Y2_STOP_PIN Y_MAX_PIN // Y2 endstop pin override #define Y2_ENDSTOP_ADJUSTMENT 0 // Y2 offset relative to Y endstop #endif #endif @@ -877,20 +877,20 @@ //#define Z_MULTI_ENDSTOPS // Other Z axes have their own endstops #if ENABLED(Z_MULTI_ENDSTOPS) - #define Z2_USE_ENDSTOP _XMAX_ // Z2 endstop board plug. Don't forget to enable USE_*_PLUG. + //#define Z2_STOP_PIN X_MAX_PIN // Z2 endstop pin override #define Z2_ENDSTOP_ADJUSTMENT 0 // Z2 offset relative to Z endstop #endif #ifdef Z3_DRIVER_TYPE //#define INVERT_Z3_VS_Z_DIR // Z3 direction signal is the opposite of Z #if ENABLED(Z_MULTI_ENDSTOPS) - #define Z3_USE_ENDSTOP _YMAX_ // Z3 endstop board plug. Don't forget to enable USE_*_PLUG. + //#define Z3_STOP_PIN Y_MAX_PIN // Z3 endstop pin override #define Z3_ENDSTOP_ADJUSTMENT 0 // Z3 offset relative to Z endstop #endif #endif #ifdef Z4_DRIVER_TYPE //#define INVERT_Z4_VS_Z_DIR // Z4 direction signal is the opposite of Z #if ENABLED(Z_MULTI_ENDSTOPS) - #define Z4_USE_ENDSTOP _ZMAX_ // Z4 endstop board plug. Don't forget to enable USE_*_PLUG. + //#define Z4_STOP_PIN Z_MAX_PIN // Z4 endstop pin override #define Z4_ENDSTOP_ADJUSTMENT 0 // Z4 offset relative to Z endstop #endif #endif diff --git a/Marlin/src/HAL/AVR/endstop_interrupts.h b/Marlin/src/HAL/AVR/endstop_interrupts.h index 5511aa406fec..a67b4493f0bc 100644 --- a/Marlin/src/HAL/AVR/endstop_interrupts.h +++ b/Marlin/src/HAL/AVR/endstop_interrupts.h @@ -160,7 +160,7 @@ void setup_endstop_interrupts() { pciSetup(Z_MAX_PIN); #endif #endif - #if HAS_Z_MIN + #if HAS_Z_MIN_PIN #if (digitalPinToInterrupt(Z_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(Z_MIN_PIN); #else @@ -172,14 +172,14 @@ void setup_endstop_interrupts() { #if (digitalPinToInterrupt(I_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(I_MAX_PIN); #else - static_assert(digitalPinHasPCICR(I_MAX_PIN), "I_MAX_PIN is not interrupt-capable"); + static_assert(digitalPinHasPCICR(I_MAX_PIN), "I_MAX_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(I_MAX_PIN); #endif #elif HAS_I_MIN #if (digitalPinToInterrupt(I_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(I_MIN_PIN); #else - static_assert(digitalPinHasPCICR(I_MIN_PIN), "I_MIN_PIN is not interrupt-capable"); + static_assert(digitalPinHasPCICR(I_MIN_PIN), "I_MIN_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(I_MIN_PIN); #endif #endif @@ -187,14 +187,14 @@ void setup_endstop_interrupts() { #if (digitalPinToInterrupt(J_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(J_MAX_PIN); #else - static_assert(digitalPinHasPCICR(J_MAX_PIN), "J_MAX_PIN is not interrupt-capable"); + static_assert(digitalPinHasPCICR(J_MAX_PIN), "J_MAX_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(J_MAX_PIN); #endif #elif HAS_J_MIN #if (digitalPinToInterrupt(J_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(J_MIN_PIN); #else - static_assert(digitalPinHasPCICR(J_MIN_PIN), "J_MIN_PIN is not interrupt-capable"); + static_assert(digitalPinHasPCICR(J_MIN_PIN), "J_MIN_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(J_MIN_PIN); #endif #endif @@ -202,14 +202,14 @@ void setup_endstop_interrupts() { #if (digitalPinToInterrupt(K_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(K_MAX_PIN); #else - static_assert(digitalPinHasPCICR(K_MAX_PIN), "K_MAX_PIN is not interrupt-capable"); + static_assert(digitalPinHasPCICR(K_MAX_PIN), "K_MAX_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(K_MAX_PIN); #endif #elif HAS_K_MIN #if (digitalPinToInterrupt(K_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(K_MIN_PIN); #else - static_assert(digitalPinHasPCICR(K_MIN_PIN), "K_MIN_PIN is not interrupt-capable"); + static_assert(digitalPinHasPCICR(K_MIN_PIN), "K_MIN_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(K_MIN_PIN); #endif #endif @@ -217,14 +217,14 @@ void setup_endstop_interrupts() { #if (digitalPinToInterrupt(U_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(U_MAX_PIN); #else - static_assert(digitalPinHasPCICR(U_MAX_PIN), "U_MAX_PIN is not interrupt-capable"); + static_assert(digitalPinHasPCICR(U_MAX_PIN), "U_MAX_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(U_MAX_PIN); #endif #elif HAS_U_MIN #if (digitalPinToInterrupt(U_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(U_MIN_PIN); #else - static_assert(digitalPinHasPCICR(U_MIN_PIN), "U_MIN_PIN is not interrupt-capable"); + static_assert(digitalPinHasPCICR(U_MIN_PIN), "U_MIN_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(U_MIN_PIN); #endif #endif @@ -232,14 +232,14 @@ void setup_endstop_interrupts() { #if (digitalPinToInterrupt(V_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(V_MAX_PIN); #else - static_assert(digitalPinHasPCICR(V_MAX_PIN), "V_MAX_PIN is not interrupt-capable"); + static_assert(digitalPinHasPCICR(V_MAX_PIN), "V_MAX_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(V_MAX_PIN); #endif #elif HAS_V_MIN #if (digitalPinToInterrupt(V_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(V_MIN_PIN); #else - static_assert(digitalPinHasPCICR(V_MIN_PIN), "V_MIN_PIN is not interrupt-capable"); + static_assert(digitalPinHasPCICR(V_MIN_PIN), "V_MIN_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(V_MIN_PIN); #endif #endif @@ -247,14 +247,14 @@ void setup_endstop_interrupts() { #if (digitalPinToInterrupt(W_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(W_MAX_PIN); #else - static_assert(digitalPinHasPCICR(W_MAX_PIN), "W_MAX_PIN is not interrupt-capable"); + static_assert(digitalPinHasPCICR(W_MAX_PIN), "W_MAX_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(W_MAX_PIN); #endif #elif HAS_W_MIN #if (digitalPinToInterrupt(W_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(W_MIN_PIN); #else - static_assert(digitalPinHasPCICR(W_MIN_PIN), "W_MIN_PIN is not interrupt-capable"); + static_assert(digitalPinHasPCICR(W_MIN_PIN), "W_MIN_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(W_MIN_PIN); #endif #endif diff --git a/Marlin/src/HAL/DUE/endstop_interrupts.h b/Marlin/src/HAL/DUE/endstop_interrupts.h index c1bbcb121bdc..9ce4fcdb2fce 100644 --- a/Marlin/src/HAL/DUE/endstop_interrupts.h +++ b/Marlin/src/HAL/DUE/endstop_interrupts.h @@ -47,33 +47,33 @@ void endstop_ISR() { endstops.update(); } void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(digitalPinToInterrupt(P), endstop_ISR, CHANGE) - TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); - TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); - TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); - TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); - TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN, _ATTACH(Z_MIN_PIN)); - TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); - TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); - TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); - TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); - TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); - TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); - TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); - TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); - TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); - TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); + TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); + TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); + TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); + TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); + TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); + TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); + TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); + TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); + TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); + TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); + TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); + TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); + TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); + TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); + TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN)); - TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); - TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); - TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); - TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); - TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); - TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); - TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); - TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); - TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); - TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); - TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); - TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); + TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); + TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); + TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); + TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); + TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); + TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); + TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); + TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); + TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); + TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); + TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); } diff --git a/Marlin/src/HAL/ESP32/endstop_interrupts.h b/Marlin/src/HAL/ESP32/endstop_interrupts.h index 05368646101e..f48cda4511f3 100644 --- a/Marlin/src/HAL/ESP32/endstop_interrupts.h +++ b/Marlin/src/HAL/ESP32/endstop_interrupts.h @@ -42,33 +42,33 @@ void ICACHE_RAM_ATTR endstop_ISR() { endstops.update(); } void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(digitalPinToInterrupt(P), endstop_ISR, CHANGE) - TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); - TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); - TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); - TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); - TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN, _ATTACH(Z_MIN_PIN)); - TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); - TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); - TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); - TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); - TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); - TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); - TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); - TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); - TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); - TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); + TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); + TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); + TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); + TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); + TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); + TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); + TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); + TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); + TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); + TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); + TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); + TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); + TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); + TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); + TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN)); - TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); - TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); - TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); - TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); - TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); - TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); - TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); - TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); - TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); - TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); - TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); - TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); + TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); + TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); + TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); + TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); + TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); + TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); + TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); + TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); + TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); + TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); + TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); } diff --git a/Marlin/src/HAL/LPC1768/endstop_interrupts.h b/Marlin/src/HAL/LPC1768/endstop_interrupts.h index e4ac17f60815..2253b92627d9 100644 --- a/Marlin/src/HAL/LPC1768/endstop_interrupts.h +++ b/Marlin/src/HAL/LPC1768/endstop_interrupts.h @@ -74,12 +74,36 @@ void setup_endstop_interrupts() { #endif _ATTACH(Z_MAX_PIN); #endif - #if HAS_Z_MIN + #if HAS_Z_MIN_PIN #if !LPC1768_PIN_INTERRUPT_M(Z_MIN_PIN) #error "Z_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z_MIN_PIN); #endif + #if HAS_X2_MAX + #if !LPC1768_PIN_INTERRUPT_M(X2_MAX_PIN) + #error "X2_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." + #endif + _ATTACH(X2_MAX_PIN); + #endif + #if HAS_X2_MIN + #if !LPC1768_PIN_INTERRUPT_M(X2_MIN_PIN) + #error "X2_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." + #endif + _ATTACH(X2_MIN_PIN); + #endif + #if HAS_Y2_MAX + #if !LPC1768_PIN_INTERRUPT_M(Y2_MAX_PIN) + #error "Y2_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." + #endif + _ATTACH(Y2_MAX_PIN); + #endif + #if HAS_Y2_MIN + #if !LPC1768_PIN_INTERRUPT_M(Y2_MIN_PIN) + #error "Y2_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." + #endif + _ATTACH(Y2_MIN_PIN); + #endif #if HAS_Z2_MAX #if !LPC1768_PIN_INTERRUPT_M(Z2_MAX_PIN) #error "Z2_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." @@ -124,67 +148,67 @@ void setup_endstop_interrupts() { #endif #if HAS_I_MAX #if !LPC1768_PIN_INTERRUPT_M(I_MAX_PIN) - #error "I_MAX_PIN is not INTERRUPT-capable." + #error "I_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(I_MAX_PIN); #elif HAS_I_MIN #if !LPC1768_PIN_INTERRUPT_M(I_MIN_PIN) - #error "I_MIN_PIN is not INTERRUPT-capable." + #error "I_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(I_MIN_PIN); #endif #if HAS_J_MAX #if !LPC1768_PIN_INTERRUPT_M(J_MAX_PIN) - #error "J_MAX_PIN is not INTERRUPT-capable." + #error "J_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(J_MAX_PIN); #elif HAS_J_MIN #if !LPC1768_PIN_INTERRUPT_M(J_MIN_PIN) - #error "J_MIN_PIN is not INTERRUPT-capable." + #error "J_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(J_MIN_PIN); #endif #if HAS_K_MAX #if !LPC1768_PIN_INTERRUPT_M(K_MAX_PIN) - #error "K_MAX_PIN is not INTERRUPT-capable." + #error "K_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(K_MAX_PIN); #elif HAS_K_MIN #if !LPC1768_PIN_INTERRUPT_M(K_MIN_PIN) - #error "K_MIN_PIN is not INTERRUPT-capable." + #error "K_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(K_MIN_PIN); #endif #if HAS_U_MAX #if !LPC1768_PIN_INTERRUPT_M(U_MAX_PIN) - #error "U_MAX_PIN is not INTERRUPT-capable." + #error "U_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(U_MAX_PIN); #elif HAS_U_MIN #if !LPC1768_PIN_INTERRUPT_M(U_MIN_PIN) - #error "U_MIN_PIN is not INTERRUPT-capable." + #error "U_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(U_MIN_PIN); #endif #if HAS_V_MAX #if !LPC1768_PIN_INTERRUPT_M(V_MAX_PIN) - #error "V_MAX_PIN is not INTERRUPT-capable." + #error "V_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(V_MAX_PIN); #elif HAS_V_MIN #if !LPC1768_PIN_INTERRUPT_M(V_MIN_PIN) - #error "V_MIN_PIN is not INTERRUPT-capable." + #error "V_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(V_MIN_PIN); #endif #if HAS_W_MAX #if !LPC1768_PIN_INTERRUPT_M(W_MAX_PIN) - #error "W_MAX_PIN is not INTERRUPT-capable." + #error "W_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(W_MAX_PIN); #elif HAS_W_MIN #if !LPC1768_PIN_INTERRUPT_M(W_MIN_PIN) - #error "W_MIN_PIN is not INTERRUPT-capable." + #error "W_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(W_MIN_PIN); #endif diff --git a/Marlin/src/HAL/SAMD21/endstop_interrupts.h b/Marlin/src/HAL/SAMD21/endstop_interrupts.h index d8711aa01870..a277e04097f4 100644 --- a/Marlin/src/HAL/SAMD21/endstop_interrupts.h +++ b/Marlin/src/HAL/SAMD21/endstop_interrupts.h @@ -54,30 +54,34 @@ #include "../../module/endstops.h" #define MATCH_EILINE(P1,P2) (P1 != P2 && PIN_TO_EILINE(P1) == PIN_TO_EILINE(P2)) -#define MATCH_X_MAX_EILINE(P) TERN0(HAS_X_MAX, DEFER4(MATCH_EILINE)(P, X_MAX_PIN)) -#define MATCH_X_MIN_EILINE(P) TERN0(HAS_X_MIN, DEFER4(MATCH_EILINE)(P, X_MIN_PIN)) -#define MATCH_Y_MAX_EILINE(P) TERN0(HAS_Y_MAX, DEFER4(MATCH_EILINE)(P, Y_MAX_PIN)) -#define MATCH_Y_MIN_EILINE(P) TERN0(HAS_Y_MIN, DEFER4(MATCH_EILINE)(P, Y_MIN_PIN)) -#define MATCH_Z_MAX_EILINE(P) TERN0(HAS_Z_MAX, DEFER4(MATCH_EILINE)(P, Z_MAX_PIN)) -#define MATCH_Z_MIN_EILINE(P) TERN0(HAS_Z_MIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PIN)) -#define MATCH_I_MAX_EILINE(P) TERN0(HAS_I_MAX, DEFER4(MATCH_EILINE)(P, I_MAX_PIN)) -#define MATCH_I_MIN_EILINE(P) TERN0(HAS_I_MIN, DEFER4(MATCH_EILINE)(P, I_MIN_PIN)) -#define MATCH_J_MAX_EILINE(P) TERN0(HAS_J_MAX, DEFER4(MATCH_EILINE)(P, J_MAX_PIN)) -#define MATCH_J_MIN_EILINE(P) TERN0(HAS_J_MIN, DEFER4(MATCH_EILINE)(P, J_MIN_PIN)) -#define MATCH_K_MAX_EILINE(P) TERN0(HAS_K_MAX, DEFER4(MATCH_EILINE)(P, K_MAX_PIN)) -#define MATCH_K_MIN_EILINE(P) TERN0(HAS_K_MIN, DEFER4(MATCH_EILINE)(P, K_MIN_PIN)) -#define MATCH_U_MAX_EILINE(P) TERN0(HAS_U_MAX, DEFER4(MATCH_EILINE)(P, U_MAX_PIN)) -#define MATCH_U_MIN_EILINE(P) TERN0(HAS_U_MIN, DEFER4(MATCH_EILINE)(P, U_MIN_PIN)) -#define MATCH_V_MAX_EILINE(P) TERN0(HAS_V_MAX, DEFER4(MATCH_EILINE)(P, V_MAX_PIN)) -#define MATCH_V_MIN_EILINE(P) TERN0(HAS_V_MIN, DEFER4(MATCH_EILINE)(P, V_MIN_PIN)) -#define MATCH_W_MAX_EILINE(P) TERN0(HAS_W_MAX, DEFER4(MATCH_EILINE)(P, W_MAX_PIN)) -#define MATCH_W_MIN_EILINE(P) TERN0(HAS_W_MIN, DEFER4(MATCH_EILINE)(P, W_MIN_PIN)) -#define MATCH_Z2_MAX_EILINE(P) TERN0(HAS_Z2_MAX, DEFER4(MATCH_EILINE)(P, Z2_MAX_PIN)) -#define MATCH_Z2_MIN_EILINE(P) TERN0(HAS_Z2_MIN, DEFER4(MATCH_EILINE)(P, Z2_MIN_PIN)) -#define MATCH_Z3_MAX_EILINE(P) TERN0(HAS_Z3_MAX, DEFER4(MATCH_EILINE)(P, Z3_MAX_PIN)) -#define MATCH_Z3_MIN_EILINE(P) TERN0(HAS_Z3_MIN, DEFER4(MATCH_EILINE)(P, Z3_MIN_PIN)) -#define MATCH_Z4_MAX_EILINE(P) TERN0(HAS_Z4_MAX, DEFER4(MATCH_EILINE)(P, Z4_MAX_PIN)) -#define MATCH_Z4_MIN_EILINE(P) TERN0(HAS_Z4_MIN, DEFER4(MATCH_EILINE)(P, Z4_MIN_PIN)) +#define MATCH_X_MAX_EILINE(P) TERN0(HAS_X_MAX, DEFER4(MATCH_EILINE)(P, X_MAX_PIN)) +#define MATCH_X_MIN_EILINE(P) TERN0(HAS_X_MIN, DEFER4(MATCH_EILINE)(P, X_MIN_PIN)) +#define MATCH_Y_MAX_EILINE(P) TERN0(HAS_Y_MAX, DEFER4(MATCH_EILINE)(P, Y_MAX_PIN)) +#define MATCH_Y_MIN_EILINE(P) TERN0(HAS_Y_MIN, DEFER4(MATCH_EILINE)(P, Y_MIN_PIN)) +#define MATCH_Z_MAX_EILINE(P) TERN0(HAS_Z_MAX, DEFER4(MATCH_EILINE)(P, Z_MAX_PIN)) +#define MATCH_Z_MIN_EILINE(P) TERN0(HAS_Z_MIN_PIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PIN)) +#define MATCH_I_MAX_EILINE(P) TERN0(HAS_I_MAX, DEFER4(MATCH_EILINE)(P, I_MAX_PIN)) +#define MATCH_I_MIN_EILINE(P) TERN0(HAS_I_MIN, DEFER4(MATCH_EILINE)(P, I_MIN_PIN)) +#define MATCH_J_MAX_EILINE(P) TERN0(HAS_J_MAX, DEFER4(MATCH_EILINE)(P, J_MAX_PIN)) +#define MATCH_J_MIN_EILINE(P) TERN0(HAS_J_MIN, DEFER4(MATCH_EILINE)(P, J_MIN_PIN)) +#define MATCH_K_MAX_EILINE(P) TERN0(HAS_K_MAX, DEFER4(MATCH_EILINE)(P, K_MAX_PIN)) +#define MATCH_K_MIN_EILINE(P) TERN0(HAS_K_MIN, DEFER4(MATCH_EILINE)(P, K_MIN_PIN)) +#define MATCH_U_MAX_EILINE(P) TERN0(HAS_U_MAX, DEFER4(MATCH_EILINE)(P, U_MAX_PIN)) +#define MATCH_U_MIN_EILINE(P) TERN0(HAS_U_MIN, DEFER4(MATCH_EILINE)(P, U_MIN_PIN)) +#define MATCH_V_MAX_EILINE(P) TERN0(HAS_V_MAX, DEFER4(MATCH_EILINE)(P, V_MAX_PIN)) +#define MATCH_V_MIN_EILINE(P) TERN0(HAS_V_MIN, DEFER4(MATCH_EILINE)(P, V_MIN_PIN)) +#define MATCH_W_MAX_EILINE(P) TERN0(HAS_W_MAX, DEFER4(MATCH_EILINE)(P, W_MAX_PIN)) +#define MATCH_W_MIN_EILINE(P) TERN0(HAS_W_MIN, DEFER4(MATCH_EILINE)(P, W_MIN_PIN)) +#define MATCH_X2_MAX_EILINE(P) TERN0(HAS_X2_MAX, DEFER4(MATCH_EILINE)(P, X2_MAX_PIN)) +#define MATCH_X2_MIN_EILINE(P) TERN0(HAS_X2_MIN, DEFER4(MATCH_EILINE)(P, X2_MIN_PIN)) +#define MATCH_Y2_MAX_EILINE(P) TERN0(HAS_Y2_MAX, DEFER4(MATCH_EILINE)(P, Y2_MAX_PIN)) +#define MATCH_Y2_MIN_EILINE(P) TERN0(HAS_Y2_MIN, DEFER4(MATCH_EILINE)(P, Y2_MIN_PIN)) +#define MATCH_Z2_MAX_EILINE(P) TERN0(HAS_Z2_MAX, DEFER4(MATCH_EILINE)(P, Z2_MAX_PIN)) +#define MATCH_Z2_MIN_EILINE(P) TERN0(HAS_Z2_MIN, DEFER4(MATCH_EILINE)(P, Z2_MIN_PIN)) +#define MATCH_Z3_MAX_EILINE(P) TERN0(HAS_Z3_MAX, DEFER4(MATCH_EILINE)(P, Z3_MAX_PIN)) +#define MATCH_Z3_MIN_EILINE(P) TERN0(HAS_Z3_MIN, DEFER4(MATCH_EILINE)(P, Z3_MIN_PIN)) +#define MATCH_Z4_MAX_EILINE(P) TERN0(HAS_Z4_MAX, DEFER4(MATCH_EILINE)(P, Z4_MAX_PIN)) +#define MATCH_Z4_MIN_EILINE(P) TERN0(HAS_Z4_MIN, DEFER4(MATCH_EILINE)(P, Z4_MIN_PIN)) #define MATCH_Z_MIN_PROBE_EILINE(P) TERN0(HAS_Z_MIN_PROBE_PIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PROBE_PIN)) #define AVAILABLE_EILINE(P) ( PIN_TO_EILINE(P) != -1 \ @@ -90,6 +94,8 @@ && !MATCH_U_MAX_EILINE(P) && !MATCH_U_MIN_EILINE(P) \ && !MATCH_V_MAX_EILINE(P) && !MATCH_V_MIN_EILINE(P) \ && !MATCH_W_MAX_EILINE(P) && !MATCH_W_MIN_EILINE(P) \ + && !MATCH_X2_MAX_EILINE(P) && !MATCH_X2_MIN_EILINE(P) \ + && !MATCH_Y2_MAX_EILINE(P) && !MATCH_Y2_MIN_EILINE(P) \ && !MATCH_Z2_MAX_EILINE(P) && !MATCH_Z2_MIN_EILINE(P) \ && !MATCH_Z3_MAX_EILINE(P) && !MATCH_Z3_MIN_EILINE(P) \ && !MATCH_Z4_MAX_EILINE(P) && !MATCH_Z4_MIN_EILINE(P) \ @@ -102,151 +108,175 @@ void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(P, endstop_ISR, CHANGE) #if HAS_X_MAX #if !AVAILABLE_EILINE(X_MAX_PIN) - #error "X_MAX_PIN has no EXTINT line available." + #error "X_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(X_MAX_PIN); #endif #if HAS_X_MIN #if !AVAILABLE_EILINE(X_MIN_PIN) - #error "X_MIN_PIN has no EXTINT line available." + #error "X_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(X_MIN_PIN); #endif #if HAS_Y_MAX #if !AVAILABLE_EILINE(Y_MAX_PIN) - #error "Y_MAX_PIN has no EXTINT line available." + #error "Y_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Y_MAX_PIN); #endif #if HAS_Y_MIN #if !AVAILABLE_EILINE(Y_MIN_PIN) - #error "Y_MIN_PIN has no EXTINT line available." + #error "Y_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Y_MIN_PIN); #endif #if HAS_Z_MAX #if !AVAILABLE_EILINE(Z_MAX_PIN) - #error "Z_MAX_PIN has no EXTINT line available." + #error "Z_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z_MAX_PIN); #endif - #if HAS_Z_MIN + #if HAS_Z_MIN_PIN #if !AVAILABLE_EILINE(Z_MIN_PIN) - #error "Z_MIN_PIN has no EXTINT line available." + #error "Z_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z_MIN_PIN); #endif + #if HAS_X2_MAX + #if !AVAILABLE_EILINE(X2_MAX_PIN) + #error "X2_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." + #endif + _ATTACH(X2_MAX_PIN); + #endif + #if HAS_X2_MIN + #if !AVAILABLE_EILINE(X2_MIN_PIN) + #error "X2_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." + #endif + _ATTACH(X2_MIN_PIN); + #endif + #if HAS_Y2_MAX + #if !AVAILABLE_EILINE(Y2_MAX_PIN) + #error "Y2_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." + #endif + _ATTACH(Y2_MAX_PIN); + #endif + #if HAS_Y2_MIN + #if !AVAILABLE_EILINE(Y2_MIN_PIN) + #error "Y2_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." + #endif + _ATTACH(Y2_MIN_PIN); + #endif #if HAS_Z2_MAX #if !AVAILABLE_EILINE(Z2_MAX_PIN) - #error "Z2_MAX_PIN has no EXTINT line available." + #error "Z2_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z2_MAX_PIN); #endif #if HAS_Z2_MIN #if !AVAILABLE_EILINE(Z2_MIN_PIN) - #error "Z2_MIN_PIN has no EXTINT line available." + #error "Z2_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z2_MIN_PIN); #endif #if HAS_Z3_MAX #if !AVAILABLE_EILINE(Z3_MAX_PIN) - #error "Z3_MAX_PIN has no EXTINT line available." + #error "Z3_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z3_MAX_PIN); #endif #if HAS_Z3_MIN #if !AVAILABLE_EILINE(Z3_MIN_PIN) - #error "Z3_MIN_PIN has no EXTINT line available." + #error "Z3_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z3_MIN_PIN); #endif #if HAS_Z4_MAX #if !AVAILABLE_EILINE(Z4_MAX_PIN) - #error "Z4_MAX_PIN has no EXTINT line available." + #error "Z4_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z4_MAX_PIN); #endif #if HAS_Z4_MIN #if !AVAILABLE_EILINE(Z4_MIN_PIN) - #error "Z4_MIN_PIN has no EXTINT line available." + #error "Z4_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z4_MIN_PIN); #endif #if HAS_Z_MIN_PROBE_PIN #if !AVAILABLE_EILINE(Z_MIN_PROBE_PIN) - #error "Z_MIN_PROBE_PIN has no EXTINT line available." + #error "Z_MIN_PROBE_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z_MIN_PROBE_PIN); #endif #if HAS_I_MAX #if !AVAILABLE_EILINE(I_MAX_PIN) - #error "I_MAX_PIN has no EXTINT line available." + #error "I_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(I_MAX_PIN, endstop_ISR, CHANGE); #endif #if HAS_I_MIN #if !AVAILABLE_EILINE(I_MIN_PIN) - #error "I_MIN_PIN has no EXTINT line available." + #error "I_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(I_MIN_PIN, endstop_ISR, CHANGE); #endif #if HAS_J_MAX #if !AVAILABLE_EILINE(J_MAX_PIN) - #error "J_MAX_PIN has no EXTINT line available." + #error "J_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(J_MAX_PIN, endstop_ISR, CHANGE); #endif #if HAS_J_MIN #if !AVAILABLE_EILINE(J_MIN_PIN) - #error "J_MIN_PIN has no EXTINT line available." + #error "J_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(J_MIN_PIN, endstop_ISR, CHANGE); #endif #if HAS_K_MAX #if !AVAILABLE_EILINE(K_MAX_PIN) - #error "K_MAX_PIN has no EXTINT line available." + #error "K_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(K_MAX_PIN, endstop_ISR, CHANGE); #endif #if HAS_K_MIN #if !AVAILABLE_EILINE(K_MIN_PIN) - #error "K_MIN_PIN has no EXTINT line available." + #error "K_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(K_MIN_PIN, endstop_ISR, CHANGE); #endif #if HAS_U_MAX #if !AVAILABLE_EILINE(U_MAX_PIN) - #error "U_MAX_PIN has no EXTINT line available." + #error "U_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(U_MAX_PIN, endstop_ISR, CHANGE); #endif #if HAS_U_MIN #if !AVAILABLE_EILINE(U_MIN_PIN) - #error "U_MIN_PIN has no EXTINT line available." + #error "U_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(U_MIN_PIN, endstop_ISR, CHANGE); #endif #if HAS_V_MAX #if !AVAILABLE_EILINE(V_MAX_PIN) - #error "V_MAX_PIN has no EXTINT line available." + #error "V_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(V_MAX_PIN, endstop_ISR, CHANGE); #endif #if HAS_V_MIN #if !AVAILABLE_EILINE(V_MIN_PIN) - #error "V_MIN_PIN has no EXTINT line available." + #error "V_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(V_MIN_PIN, endstop_ISR, CHANGE); #endif #if HAS_W_MAX #if !AVAILABLE_EILINE(W_MAX_PIN) - #error "W_MAX_PIN has no EXTINT line available." + #error "W_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(W_MAX_PIN, endstop_ISR, CHANGE); #endif #if HAS_W_MIN #if !AVAILABLE_EILINE(W_MIN_PIN) - #error "W_MIN_PIN has no EXTINT line available." + #error "W_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(W_MIN_PIN, endstop_ISR, CHANGE); #endif diff --git a/Marlin/src/HAL/SAMD51/endstop_interrupts.h b/Marlin/src/HAL/SAMD51/endstop_interrupts.h index e0e811c3a018..b5fead26f40c 100644 --- a/Marlin/src/HAL/SAMD51/endstop_interrupts.h +++ b/Marlin/src/HAL/SAMD51/endstop_interrupts.h @@ -53,30 +53,34 @@ #include "../../module/endstops.h" #define MATCH_EILINE(P1,P2) (P1 != P2 && PIN_TO_EILINE(P1) == PIN_TO_EILINE(P2)) -#define MATCH_X_MAX_EILINE(P) TERN0(HAS_X_MAX, DEFER4(MATCH_EILINE)(P, X_MAX_PIN)) -#define MATCH_X_MIN_EILINE(P) TERN0(HAS_X_MIN, DEFER4(MATCH_EILINE)(P, X_MIN_PIN)) -#define MATCH_Y_MAX_EILINE(P) TERN0(HAS_Y_MAX, DEFER4(MATCH_EILINE)(P, Y_MAX_PIN)) -#define MATCH_Y_MIN_EILINE(P) TERN0(HAS_Y_MIN, DEFER4(MATCH_EILINE)(P, Y_MIN_PIN)) -#define MATCH_Z_MAX_EILINE(P) TERN0(HAS_Z_MAX, DEFER4(MATCH_EILINE)(P, Z_MAX_PIN)) -#define MATCH_Z_MIN_EILINE(P) TERN0(HAS_Z_MIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PIN)) -#define MATCH_I_MAX_EILINE(P) TERN0(HAS_I_MAX, DEFER4(MATCH_EILINE)(P, I_MAX_PIN)) -#define MATCH_I_MIN_EILINE(P) TERN0(HAS_I_MIN, DEFER4(MATCH_EILINE)(P, I_MIN_PIN)) -#define MATCH_J_MAX_EILINE(P) TERN0(HAS_J_MAX, DEFER4(MATCH_EILINE)(P, J_MAX_PIN)) -#define MATCH_J_MIN_EILINE(P) TERN0(HAS_J_MIN, DEFER4(MATCH_EILINE)(P, J_MIN_PIN)) -#define MATCH_K_MAX_EILINE(P) TERN0(HAS_K_MAX, DEFER4(MATCH_EILINE)(P, K_MAX_PIN)) -#define MATCH_K_MIN_EILINE(P) TERN0(HAS_K_MIN, DEFER4(MATCH_EILINE)(P, K_MIN_PIN)) -#define MATCH_U_MAX_EILINE(P) TERN0(HAS_U_MAX, DEFER4(MATCH_EILINE)(P, U_MAX_PIN)) -#define MATCH_U_MIN_EILINE(P) TERN0(HAS_U_MIN, DEFER4(MATCH_EILINE)(P, U_MIN_PIN)) -#define MATCH_V_MAX_EILINE(P) TERN0(HAS_V_MAX, DEFER4(MATCH_EILINE)(P, V_MAX_PIN)) -#define MATCH_V_MIN_EILINE(P) TERN0(HAS_V_MIN, DEFER4(MATCH_EILINE)(P, V_MIN_PIN)) -#define MATCH_W_MAX_EILINE(P) TERN0(HAS_W_MAX, DEFER4(MATCH_EILINE)(P, W_MAX_PIN)) -#define MATCH_W_MIN_EILINE(P) TERN0(HAS_W_MIN, DEFER4(MATCH_EILINE)(P, W_MIN_PIN)) -#define MATCH_Z2_MAX_EILINE(P) TERN0(HAS_Z2_MAX, DEFER4(MATCH_EILINE)(P, Z2_MAX_PIN)) -#define MATCH_Z2_MIN_EILINE(P) TERN0(HAS_Z2_MIN, DEFER4(MATCH_EILINE)(P, Z2_MIN_PIN)) -#define MATCH_Z3_MAX_EILINE(P) TERN0(HAS_Z3_MAX, DEFER4(MATCH_EILINE)(P, Z3_MAX_PIN)) -#define MATCH_Z3_MIN_EILINE(P) TERN0(HAS_Z3_MIN, DEFER4(MATCH_EILINE)(P, Z3_MIN_PIN)) -#define MATCH_Z4_MAX_EILINE(P) TERN0(HAS_Z4_MAX, DEFER4(MATCH_EILINE)(P, Z4_MAX_PIN)) -#define MATCH_Z4_MIN_EILINE(P) TERN0(HAS_Z4_MIN, DEFER4(MATCH_EILINE)(P, Z4_MIN_PIN)) +#define MATCH_X_MAX_EILINE(P) TERN0(HAS_X_MAX, DEFER4(MATCH_EILINE)(P, X_MAX_PIN)) +#define MATCH_X_MIN_EILINE(P) TERN0(HAS_X_MIN, DEFER4(MATCH_EILINE)(P, X_MIN_PIN)) +#define MATCH_Y_MAX_EILINE(P) TERN0(HAS_Y_MAX, DEFER4(MATCH_EILINE)(P, Y_MAX_PIN)) +#define MATCH_Y_MIN_EILINE(P) TERN0(HAS_Y_MIN, DEFER4(MATCH_EILINE)(P, Y_MIN_PIN)) +#define MATCH_Z_MAX_EILINE(P) TERN0(HAS_Z_MAX, DEFER4(MATCH_EILINE)(P, Z_MAX_PIN)) +#define MATCH_Z_MIN_EILINE(P) TERN0(HAS_Z_MIN_PIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PIN)) +#define MATCH_I_MAX_EILINE(P) TERN0(HAS_I_MAX, DEFER4(MATCH_EILINE)(P, I_MAX_PIN)) +#define MATCH_I_MIN_EILINE(P) TERN0(HAS_I_MIN, DEFER4(MATCH_EILINE)(P, I_MIN_PIN)) +#define MATCH_J_MAX_EILINE(P) TERN0(HAS_J_MAX, DEFER4(MATCH_EILINE)(P, J_MAX_PIN)) +#define MATCH_J_MIN_EILINE(P) TERN0(HAS_J_MIN, DEFER4(MATCH_EILINE)(P, J_MIN_PIN)) +#define MATCH_K_MAX_EILINE(P) TERN0(HAS_K_MAX, DEFER4(MATCH_EILINE)(P, K_MAX_PIN)) +#define MATCH_K_MIN_EILINE(P) TERN0(HAS_K_MIN, DEFER4(MATCH_EILINE)(P, K_MIN_PIN)) +#define MATCH_U_MAX_EILINE(P) TERN0(HAS_U_MAX, DEFER4(MATCH_EILINE)(P, U_MAX_PIN)) +#define MATCH_U_MIN_EILINE(P) TERN0(HAS_U_MIN, DEFER4(MATCH_EILINE)(P, U_MIN_PIN)) +#define MATCH_V_MAX_EILINE(P) TERN0(HAS_V_MAX, DEFER4(MATCH_EILINE)(P, V_MAX_PIN)) +#define MATCH_V_MIN_EILINE(P) TERN0(HAS_V_MIN, DEFER4(MATCH_EILINE)(P, V_MIN_PIN)) +#define MATCH_W_MAX_EILINE(P) TERN0(HAS_W_MAX, DEFER4(MATCH_EILINE)(P, W_MAX_PIN)) +#define MATCH_W_MIN_EILINE(P) TERN0(HAS_W_MIN, DEFER4(MATCH_EILINE)(P, W_MIN_PIN)) +#define MATCH_X2_MAX_EILINE(P) TERN0(HAS_X2_MAX, DEFER4(MATCH_EILINE)(P, X2_MAX_PIN)) +#define MATCH_X2_MIN_EILINE(P) TERN0(HAS_X2_MIN, DEFER4(MATCH_EILINE)(P, X2_MIN_PIN)) +#define MATCH_Y2_MAX_EILINE(P) TERN0(HAS_Y2_MAX, DEFER4(MATCH_EILINE)(P, Y2_MAX_PIN)) +#define MATCH_Y2_MIN_EILINE(P) TERN0(HAS_Y2_MIN, DEFER4(MATCH_EILINE)(P, Y2_MIN_PIN)) +#define MATCH_Z2_MAX_EILINE(P) TERN0(HAS_Z2_MAX, DEFER4(MATCH_EILINE)(P, Z2_MAX_PIN)) +#define MATCH_Z2_MIN_EILINE(P) TERN0(HAS_Z2_MIN, DEFER4(MATCH_EILINE)(P, Z2_MIN_PIN)) +#define MATCH_Z3_MAX_EILINE(P) TERN0(HAS_Z3_MAX, DEFER4(MATCH_EILINE)(P, Z3_MAX_PIN)) +#define MATCH_Z3_MIN_EILINE(P) TERN0(HAS_Z3_MIN, DEFER4(MATCH_EILINE)(P, Z3_MIN_PIN)) +#define MATCH_Z4_MAX_EILINE(P) TERN0(HAS_Z4_MAX, DEFER4(MATCH_EILINE)(P, Z4_MAX_PIN)) +#define MATCH_Z4_MIN_EILINE(P) TERN0(HAS_Z4_MIN, DEFER4(MATCH_EILINE)(P, Z4_MIN_PIN)) #define MATCH_Z_MIN_PROBE_EILINE(P) TERN0(HAS_Z_MIN_PROBE_PIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PROBE_PIN)) #define AVAILABLE_EILINE(P) ( PIN_TO_EILINE(P) != -1 \ @@ -89,6 +93,8 @@ && !MATCH_U_MAX_EILINE(P) && !MATCH_U_MIN_EILINE(P) \ && !MATCH_V_MAX_EILINE(P) && !MATCH_V_MIN_EILINE(P) \ && !MATCH_W_MAX_EILINE(P) && !MATCH_W_MIN_EILINE(P) \ + && !MATCH_X2_MAX_EILINE(P) && !MATCH_X2_MIN_EILINE(P) \ + && !MATCH_Y2_MAX_EILINE(P) && !MATCH_Y2_MIN_EILINE(P) \ && !MATCH_Z2_MAX_EILINE(P) && !MATCH_Z2_MIN_EILINE(P) \ && !MATCH_Z3_MAX_EILINE(P) && !MATCH_Z3_MIN_EILINE(P) \ && !MATCH_Z4_MAX_EILINE(P) && !MATCH_Z4_MIN_EILINE(P) \ @@ -101,151 +107,151 @@ void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(P, endstop_ISR, CHANGE) #if HAS_X_MAX #if !AVAILABLE_EILINE(X_MAX_PIN) - #error "X_MAX_PIN has no EXTINT line available." + #error "X_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(X_MAX_PIN); #endif #if HAS_X_MIN #if !AVAILABLE_EILINE(X_MIN_PIN) - #error "X_MIN_PIN has no EXTINT line available." + #error "X_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(X_MIN_PIN); #endif #if HAS_Y_MAX #if !AVAILABLE_EILINE(Y_MAX_PIN) - #error "Y_MAX_PIN has no EXTINT line available." + #error "Y_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Y_MAX_PIN); #endif #if HAS_Y_MIN #if !AVAILABLE_EILINE(Y_MIN_PIN) - #error "Y_MIN_PIN has no EXTINT line available." + #error "Y_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Y_MIN_PIN); #endif #if HAS_Z_MAX #if !AVAILABLE_EILINE(Z_MAX_PIN) - #error "Z_MAX_PIN has no EXTINT line available." + #error "Z_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z_MAX_PIN); #endif - #if HAS_Z_MIN + #if HAS_Z_MIN_PIN #if !AVAILABLE_EILINE(Z_MIN_PIN) - #error "Z_MIN_PIN has no EXTINT line available." + #error "Z_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z_MIN_PIN); #endif #if HAS_Z2_MAX #if !AVAILABLE_EILINE(Z2_MAX_PIN) - #error "Z2_MAX_PIN has no EXTINT line available." + #error "Z2_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z2_MAX_PIN); #endif #if HAS_Z2_MIN #if !AVAILABLE_EILINE(Z2_MIN_PIN) - #error "Z2_MIN_PIN has no EXTINT line available." + #error "Z2_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z2_MIN_PIN); #endif #if HAS_Z3_MAX #if !AVAILABLE_EILINE(Z3_MAX_PIN) - #error "Z3_MAX_PIN has no EXTINT line available." + #error "Z3_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z3_MAX_PIN); #endif #if HAS_Z3_MIN #if !AVAILABLE_EILINE(Z3_MIN_PIN) - #error "Z3_MIN_PIN has no EXTINT line available." + #error "Z3_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z3_MIN_PIN); #endif #if HAS_Z4_MAX #if !AVAILABLE_EILINE(Z4_MAX_PIN) - #error "Z4_MAX_PIN has no EXTINT line available." + #error "Z4_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z4_MAX_PIN); #endif #if HAS_Z4_MIN #if !AVAILABLE_EILINE(Z4_MIN_PIN) - #error "Z4_MIN_PIN has no EXTINT line available." + #error "Z4_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z4_MIN_PIN); #endif #if HAS_Z_MIN_PROBE_PIN #if !AVAILABLE_EILINE(Z_MIN_PROBE_PIN) - #error "Z_MIN_PROBE_PIN has no EXTINT line available." + #error "Z_MIN_PROBE_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z_MIN_PROBE_PIN); #endif #if HAS_I_MAX #if !AVAILABLE_EILINE(I_MAX_PIN) - #error "I_MAX_PIN has no EXTINT line available." + #error "I_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(I_MAX_PIN, endstop_ISR, CHANGE); #endif #if HAS_I_MIN #if !AVAILABLE_EILINE(I_MIN_PIN) - #error "I_MIN_PIN has no EXTINT line available." + #error "I_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(I_MIN_PIN, endstop_ISR, CHANGE); #endif #if HAS_J_MAX #if !AVAILABLE_EILINE(J_MAX_PIN) - #error "J_MAX_PIN has no EXTINT line available." + #error "J_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(J_MAX_PIN, endstop_ISR, CHANGE); #endif #if HAS_J_MIN #if !AVAILABLE_EILINE(J_MIN_PIN) - #error "J_MIN_PIN has no EXTINT line available." + #error "J_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(J_MIN_PIN, endstop_ISR, CHANGE); #endif #if HAS_K_MAX #if !AVAILABLE_EILINE(K_MAX_PIN) - #error "K_MAX_PIN has no EXTINT line available." + #error "K_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(K_MAX_PIN, endstop_ISR, CHANGE); #endif #if HAS_K_MIN #if !AVAILABLE_EILINE(K_MIN_PIN) - #error "K_MIN_PIN has no EXTINT line available." + #error "K_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(K_MIN_PIN, endstop_ISR, CHANGE); #endif #if HAS_U_MAX #if !AVAILABLE_EILINE(U_MAX_PIN) - #error "U_MAX_PIN has no EXTINT line available." + #error "U_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(U_MAX_PIN, endstop_ISR, CHANGE); #endif #if HAS_U_MIN #if !AVAILABLE_EILINE(U_MIN_PIN) - #error "U_MIN_PIN has no EXTINT line available." + #error "U_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(U_MIN_PIN, endstop_ISR, CHANGE); #endif #if HAS_V_MAX #if !AVAILABLE_EILINE(V_MAX_PIN) - #error "V_MAX_PIN has no EXTINT line available." + #error "V_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(V_MAX_PIN, endstop_ISR, CHANGE); #endif #if HAS_V_MIN #if !AVAILABLE_EILINE(V_MIN_PIN) - #error "V_MIN_PIN has no EXTINT line available." + #error "V_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(V_MIN_PIN, endstop_ISR, CHANGE); #endif #if HAS_W_MAX #if !AVAILABLE_EILINE(W_MAX_PIN) - #error "W_MAX_PIN has no EXTINT line available." + #error "W_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(W_MAX_PIN, endstop_ISR, CHANGE); #endif #if HAS_W_MIN #if !AVAILABLE_EILINE(W_MIN_PIN) - #error "W_MIN_PIN has no EXTINT line available." + #error "W_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(W_MIN_PIN, endstop_ISR, CHANGE); #endif diff --git a/Marlin/src/HAL/STM32/endstop_interrupts.h b/Marlin/src/HAL/STM32/endstop_interrupts.h index d2f20ba1c711..ce160d940551 100644 --- a/Marlin/src/HAL/STM32/endstop_interrupts.h +++ b/Marlin/src/HAL/STM32/endstop_interrupts.h @@ -29,33 +29,33 @@ void endstop_ISR() { endstops.update(); } void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(P, endstop_ISR, CHANGE) - TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); - TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); - TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); - TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); - TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN, _ATTACH(Z_MIN_PIN)); - TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); - TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); - TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); - TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); - TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); - TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); - TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); - TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); - TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); - TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); + TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); + TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); + TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); + TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); + TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); + TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); + TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); + TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); + TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); + TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); + TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); + TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); + TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); + TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); + TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN)); - TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); - TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); - TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); - TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); - TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); - TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); - TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); - TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); - TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); - TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); - TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); - TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); + TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); + TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); + TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); + TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); + TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); + TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); + TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); + TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); + TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); + TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); + TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); } diff --git a/Marlin/src/HAL/STM32F1/endstop_interrupts.h b/Marlin/src/HAL/STM32F1/endstop_interrupts.h index a1ef8a8c3a36..b4df5d71f1b3 100644 --- a/Marlin/src/HAL/STM32F1/endstop_interrupts.h +++ b/Marlin/src/HAL/STM32F1/endstop_interrupts.h @@ -54,33 +54,33 @@ void endstop_ISR() { endstops.update(); } void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(P, endstop_ISR, CHANGE) - TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); - TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); - TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); - TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); - TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN, _ATTACH(Z_MIN_PIN)); - TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); - TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); - TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); - TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); - TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); - TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); - TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); - TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); - TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); - TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); + TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); + TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); + TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); + TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); + TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); + TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); + TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); + TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); + TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); + TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); + TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); + TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); + TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); + TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); + TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN)); - TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); - TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); - TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); - TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); - TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); - TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); - TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); - TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); - TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); - TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); - TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); - TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); + TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); + TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); + TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); + TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); + TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); + TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); + TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); + TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); + TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); + TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); + TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); } diff --git a/Marlin/src/HAL/TEENSY31_32/endstop_interrupts.h b/Marlin/src/HAL/TEENSY31_32/endstop_interrupts.h index c1bbcb121bdc..9ce4fcdb2fce 100644 --- a/Marlin/src/HAL/TEENSY31_32/endstop_interrupts.h +++ b/Marlin/src/HAL/TEENSY31_32/endstop_interrupts.h @@ -47,33 +47,33 @@ void endstop_ISR() { endstops.update(); } void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(digitalPinToInterrupt(P), endstop_ISR, CHANGE) - TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); - TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); - TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); - TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); - TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN, _ATTACH(Z_MIN_PIN)); - TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); - TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); - TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); - TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); - TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); - TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); - TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); - TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); - TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); - TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); + TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); + TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); + TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); + TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); + TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); + TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); + TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); + TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); + TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); + TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); + TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); + TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); + TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); + TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); + TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN)); - TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); - TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); - TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); - TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); - TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); - TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); - TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); - TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); - TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); - TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); - TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); - TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); + TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); + TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); + TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); + TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); + TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); + TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); + TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); + TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); + TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); + TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); + TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); } diff --git a/Marlin/src/HAL/TEENSY35_36/endstop_interrupts.h b/Marlin/src/HAL/TEENSY35_36/endstop_interrupts.h index 48d3bbbfa17d..c9ef2787698d 100644 --- a/Marlin/src/HAL/TEENSY35_36/endstop_interrupts.h +++ b/Marlin/src/HAL/TEENSY35_36/endstop_interrupts.h @@ -46,33 +46,33 @@ void endstop_ISR() { endstops.update(); } */ void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(digitalPinToInterrupt(P), endstop_ISR, CHANGE) - TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); - TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); - TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); - TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); - TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN, _ATTACH(Z_MIN_PIN)); - TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); - TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); - TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); - TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); - TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); - TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); - TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); - TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); - TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); - TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); + TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); + TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); + TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); + TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); + TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); + TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); + TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); + TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); + TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); + TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); + TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); + TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); + TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); + TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); + TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN)); - TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); - TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); - TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); - TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); - TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); - TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); - TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); - TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); - TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); - TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); - TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); - TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); + TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); + TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); + TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); + TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); + TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); + TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); + TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); + TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); + TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); + TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); + TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); } diff --git a/Marlin/src/HAL/TEENSY40_41/endstop_interrupts.h b/Marlin/src/HAL/TEENSY40_41/endstop_interrupts.h index 4c3ddec9f1f1..1e4ce4cef336 100644 --- a/Marlin/src/HAL/TEENSY40_41/endstop_interrupts.h +++ b/Marlin/src/HAL/TEENSY40_41/endstop_interrupts.h @@ -46,27 +46,33 @@ void endstop_ISR() { endstops.update(); } */ void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(digitalPinToInterrupt(P), endstop_ISR, CHANGE) - TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); - TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); - TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); - TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); - TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN, _ATTACH(Z_MIN_PIN)); - TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); - TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); - TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); - TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); - TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); - TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); - TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); - TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); - TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); - TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); + TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); + TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); + TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); + TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); + TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); + TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); + TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); + TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); + TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); + TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); + TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); + TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); + TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); + TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); + TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN)); - TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); - TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); - TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); - TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); - TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); - TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); + TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); + TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); + TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); + TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); + TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); + TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); + TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); + TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); + TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); + TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); } diff --git a/Marlin/src/core/macros.h b/Marlin/src/core/macros.h index fec390b64bf7..7e20f838032a 100644 --- a/Marlin/src/core/macros.h +++ b/Marlin/src/core/macros.h @@ -33,51 +33,6 @@ #define _AXIS(A) (A##_AXIS) -#define _XSTOP_ 0x01 -#define _YSTOP_ 0x02 -#define _ZSTOP_ 0x03 -#define _ISTOP_ 0x04 -#define _JSTOP_ 0x05 -#define _KSTOP_ 0x06 -#define _USTOP_ 0x07 -#define _VSTOP_ 0x08 -#define _WSTOP_ 0x09 -#define _XMIN_ 0x11 -#define _YMIN_ 0x12 -#define _ZMIN_ 0x13 -#define _IMIN_ 0x14 -#define _JMIN_ 0x15 -#define _KMIN_ 0x16 -#define _UMIN_ 0x17 -#define _VMIN_ 0x18 -#define _WMIN_ 0x19 -#define _XMAX_ 0x21 -#define _YMAX_ 0x22 -#define _ZMAX_ 0x23 -#define _IMAX_ 0x24 -#define _JMAX_ 0x25 -#define _KMAX_ 0x26 -#define _UMAX_ 0x27 -#define _VMAX_ 0x28 -#define _WMAX_ 0x29 -#define _XDIAG_ 0x31 -#define _YDIAG_ 0x32 -#define _ZDIAG_ 0x33 -#define _IDIAG_ 0x34 -#define _JDIAG_ 0x35 -#define _KDIAG_ 0x36 -#define _UDIAG_ 0x37 -#define _VDIAG_ 0x38 -#define _WDIAG_ 0x39 -#define _E0DIAG_ 0xE0 -#define _E1DIAG_ 0xE1 -#define _E2DIAG_ 0xE2 -#define _E3DIAG_ 0xE3 -#define _E4DIAG_ 0xE4 -#define _E5DIAG_ 0xE5 -#define _E6DIAG_ 0xE6 -#define _E7DIAG_ 0xE7 - #define _FORCE_INLINE_ __attribute__((__always_inline__)) __inline__ #define FORCE_INLINE __attribute__((always_inline)) inline #define NO_INLINE __attribute__((noinline)) diff --git a/Marlin/src/inc/Changes.h b/Marlin/src/inc/Changes.h index 6fd33debc6ce..8606cbcc9380 100644 --- a/Marlin/src/inc/Changes.h +++ b/Marlin/src/inc/Changes.h @@ -65,7 +65,7 @@ #elif defined(ENDSTOPPULLUP_FIL_RUNOUT) #error "ENDSTOPPULLUP_FIL_RUNOUT is now FIL_RUNOUT_PULLUP." #elif defined(DISABLE_MAX_ENDSTOPS) || defined(DISABLE_MIN_ENDSTOPS) - #error "DISABLE_MAX_ENDSTOPS and DISABLE_MIN_ENDSTOPS deprecated. Use individual USE_*_PLUG options instead." + #error "DISABLE_MAX_ENDSTOPS and DISABLE_MIN_ENDSTOPS deprecated. Endstops are automatically determined." #elif defined(LANGUAGE_INCLUDE) #error "LANGUAGE_INCLUDE has been replaced by LCD_LANGUAGE." #elif defined(EXTRUDER_OFFSET_X) || defined(EXTRUDER_OFFSET_Y) @@ -645,6 +645,20 @@ #error "TFT_SHARED_SPI is now TFT_SHARED_IO." #elif defined(LCD_PINS_ENABLE) #error "LCD_PINS_ENABLE is now LCD_PINS_EN." +#elif ANY(USE_XMIN_PLUG, USE_XMAX_PLUG, USE_YMIN_PLUG, USE_YMAX_PLUG, USE_ZMIN_PLUG, USE_ZMAX_PLUG, \ + USE_IMIN_PLUG, USE_IMAX_PLUG, USE_JMIN_PLUG, USE_JMAX_PLUG, USE_KMIN_PLUG, USE_KMAX_PLUG, \ + USE_UMIN_PLUG, USE_UMAX_PLUG, USE_VMIN_PLUG, USE_VMAX_PLUG, USE_WMIN_PLUG, USE_WMAX_PLUG) + #error "USE_*_PLUG settings are no longer needed and should be removed." +#elif defined(X2_USE_ENDSTOP) + #error "X2_USE_ENDSTOP is obsolete. Instead set X2_STOP_PIN directly. (e.g., 'X2_USE_ENDSTOP _XMAX_' becomes 'X2_STOP_PIN X_MAX_PIN')" +#elif defined(Y2_USE_ENDSTOP) + #error "Y2_USE_ENDSTOP is obsolete. Instead set Y2_STOP_PIN directly. (e.g., 'Y2_USE_ENDSTOP _YMAX_' becomes 'Y2_STOP_PIN Y_MAX_PIN')" +#elif defined(Z2_USE_ENDSTOP) + #error "Z2_USE_ENDSTOP is obsolete. Instead set Z2_STOP_PIN directly. (e.g., 'Z2_USE_ENDSTOP _ZMAX_' becomes 'Z2_STOP_PIN Z_MAX_PIN')" +#elif defined(Z2_USE_ENDSTOP) + #error "Z2_USE_ENDSTOP is obsolete. Instead set Z2_STOP_PIN directly. (e.g., 'Z2_USE_ENDSTOP _ZMAX_' becomes 'Z2_STOP_PIN Z_MAX_PIN')" +#elif defined(Z4_USE_ENDSTOP) + #error "Z4_USE_ENDSTOP is obsolete. Instead set Z4_STOP_PIN directly. (e.g., 'Z4_USE_ENDSTOP _ZMAX_' becomes 'Z4_STOP_PIN Z_MAX_PIN')" #endif // L64xx stepper drivers have been removed diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index f3d80a6c9fbf..9e8e8ed17ff1 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -737,17 +737,17 @@ #if ENABLED(X_DUAL_ENDSTOPS) #if X_HOME_TO_MAX #ifndef X2_MAX_ENDSTOP_HIT_STATE - #if X2_USE_ENDSTOP == _XMIN_ + #if X2_STOP_PIN == X_MIN_PIN #define X2_MAX_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE - #elif X2_USE_ENDSTOP == _XMAX_ + #elif X2_STOP_PIN == X_MAX_PIN #define X2_MAX_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE - #elif X2_USE_ENDSTOP == _YMIN_ + #elif X2_STOP_PIN == Y_MIN_PIN #define X2_MAX_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE - #elif X2_USE_ENDSTOP == _YMAX_ + #elif X2_STOP_PIN == Y_MAX_PIN #define X2_MAX_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE - #elif X2_USE_ENDSTOP == _ZMIN_ + #elif X2_STOP_PIN == Z_MIN_PIN #define X2_MAX_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE - #elif X2_USE_ENDSTOP == _ZMAX_ + #elif X2_STOP_PIN == Z_MAX_PIN #define X2_MAX_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif @@ -759,17 +759,17 @@ #endif #else #ifndef X2_MIN_ENDSTOP_HIT_STATE - #if X2_USE_ENDSTOP == _XMIN_ + #if X2_STOP_PIN == X_MIN_PIN #define X2_MIN_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE - #elif X2_USE_ENDSTOP == _XMAX_ + #elif X2_STOP_PIN == X_MAX_PIN #define X2_MIN_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE - #elif X2_USE_ENDSTOP == _YMIN_ + #elif X2_STOP_PIN == Y_MIN_PIN #define X2_MIN_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE - #elif X2_USE_ENDSTOP == _YMAX_ + #elif X2_STOP_PIN == Y_MAX_PIN #define X2_MIN_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE - #elif X2_USE_ENDSTOP == _ZMIN_ + #elif X2_STOP_PIN == Z_MIN_PIN #define X2_MIN_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE - #elif X2_USE_ENDSTOP == _ZMAX_ + #elif X2_STOP_PIN == Z_MAX_PIN #define X2_MIN_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif @@ -794,17 +794,17 @@ #if ENABLED(Y_DUAL_ENDSTOPS) #if Y_HOME_TO_MAX #ifndef Y2_MAX_ENDSTOP_HIT_STATE - #if Y2_USE_ENDSTOP == _XMIN_ + #if Y2_STOP_PIN == X_MIN_PIN #define Y2_MAX_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE - #elif Y2_USE_ENDSTOP == _XMAX_ + #elif Y2_STOP_PIN == X_MAX_PIN #define Y2_MAX_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE - #elif Y2_USE_ENDSTOP == _YMIN_ + #elif Y2_STOP_PIN == Y_MIN_PIN #define Y2_MAX_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE - #elif Y2_USE_ENDSTOP == _YMAX_ + #elif Y2_STOP_PIN == Y_MAX_PIN #define Y2_MAX_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE - #elif Y2_USE_ENDSTOP == _ZMIN_ + #elif Y2_STOP_PIN == Z_MIN_PIN #define Y2_MAX_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE - #elif Y2_USE_ENDSTOP == _ZMAX_ + #elif Y2_STOP_PIN == Z_MAX_PIN #define Y2_MAX_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif @@ -816,17 +816,17 @@ #endif #else #ifndef Y2_MIN_ENDSTOP_HIT_STATE - #if Y2_USE_ENDSTOP == _XMIN_ + #if Y2_STOP_PIN == X_MIN_PIN #define Y2_MIN_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE - #elif Y2_USE_ENDSTOP == _XMAX_ + #elif Y2_STOP_PIN == X_MAX_PIN #define Y2_MIN_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE - #elif Y2_USE_ENDSTOP == _YMIN_ + #elif Y2_STOP_PIN == Y_MIN_PIN #define Y2_MIN_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE - #elif Y2_USE_ENDSTOP == _YMAX_ + #elif Y2_STOP_PIN == Y_MAX_PIN #define Y2_MIN_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE - #elif Y2_USE_ENDSTOP == _ZMIN_ + #elif Y2_STOP_PIN == Z_MIN_PIN #define Y2_MIN_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE - #elif Y2_USE_ENDSTOP == _ZMAX_ + #elif Y2_STOP_PIN == Z_MAX_PIN #define Y2_MIN_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif @@ -852,17 +852,17 @@ #if Z_HOME_TO_MAX #ifndef Z2_MAX_ENDSTOP_HIT_STATE - #if Z2_USE_ENDSTOP == _XMIN_ + #if Z2_STOP_PIN == X_MIN_PIN #define Z2_MAX_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE - #elif Z2_USE_ENDSTOP == _XMAX_ + #elif Z2_STOP_PIN == X_MAX_PIN #define Z2_MAX_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE - #elif Z2_USE_ENDSTOP == _YMIN_ + #elif Z2_STOP_PIN == Y_MIN_PIN #define Z2_MAX_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE - #elif Z2_USE_ENDSTOP == _YMAX_ + #elif Z2_STOP_PIN == Y_MAX_PIN #define Z2_MAX_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE - #elif Z2_USE_ENDSTOP == _ZMIN_ + #elif Z2_STOP_PIN == Z_MIN_PIN #define Z2_MAX_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE - #elif Z2_USE_ENDSTOP == _ZMAX_ + #elif Z2_STOP_PIN == Z_MAX_PIN #define Z2_MAX_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif @@ -874,17 +874,17 @@ #endif #else #ifndef Z2_MIN_ENDSTOP_HIT_STATE - #if Z2_USE_ENDSTOP == _XMIN_ + #if Z2_STOP_PIN == X_MIN_PIN #define Z2_MIN_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE - #elif Z2_USE_ENDSTOP == _XMAX_ + #elif Z2_STOP_PIN == X_MAX_PIN #define Z2_MIN_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE - #elif Z2_USE_ENDSTOP == _YMIN_ + #elif Z2_STOP_PIN == Y_MIN_PIN #define Z2_MIN_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE - #elif Z2_USE_ENDSTOP == _YMAX_ + #elif Z2_STOP_PIN == Y_MAX_PIN #define Z2_MIN_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE - #elif Z2_USE_ENDSTOP == _ZMIN_ + #elif Z2_STOP_PIN == Z_MIN_PIN #define Z2_MIN_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE - #elif Z2_USE_ENDSTOP == _ZMAX_ + #elif Z2_STOP_PIN == Z_MAX_PIN #define Z2_MIN_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif @@ -905,17 +905,17 @@ #if NUM_Z_STEPPERS >= 3 #if Z_HOME_TO_MAX #ifndef Z3_MAX_ENDSTOP_HIT_STATE - #if Z3_USE_ENDSTOP == _XMIN_ + #if Z3_STOP_PIN == X_MIN_PIN #define Z3_MAX_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE - #elif Z3_USE_ENDSTOP == _XMAX_ + #elif Z3_STOP_PIN == X_MAX_PIN #define Z3_MAX_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE - #elif Z3_USE_ENDSTOP == _YMIN_ + #elif Z3_STOP_PIN == Y_MIN_PIN #define Z3_MAX_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE - #elif Z3_USE_ENDSTOP == _YMAX_ + #elif Z3_STOP_PIN == Y_MAX_PIN #define Z3_MAX_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE - #elif Z3_USE_ENDSTOP == _ZMIN_ + #elif Z3_STOP_PIN == Z_MIN_PIN #define Z3_MAX_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE - #elif Z3_USE_ENDSTOP == _ZMAX_ + #elif Z3_STOP_PIN == Z_MAX_PIN #define Z3_MAX_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif @@ -927,17 +927,17 @@ #endif #else #ifndef Z3_MIN_ENDSTOP_HIT_STATE - #if Z3_USE_ENDSTOP == _XMIN_ + #if Z3_STOP_PIN == X_MIN_PIN #define Z3_MIN_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE - #elif Z3_USE_ENDSTOP == _XMAX_ + #elif Z3_STOP_PIN == X_MAX_PIN #define Z3_MIN_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE - #elif Z3_USE_ENDSTOP == _YMIN_ + #elif Z3_STOP_PIN == Y_MIN_PIN #define Z3_MIN_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE - #elif Z3_USE_ENDSTOP == _YMAX_ + #elif Z3_STOP_PIN == Y_MAX_PIN #define Z3_MIN_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE - #elif Z3_USE_ENDSTOP == _ZMIN_ + #elif Z3_STOP_PIN == Z_MIN_PIN #define Z3_MIN_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE - #elif Z3_USE_ENDSTOP == _ZMAX_ + #elif Z3_STOP_PIN == Z_MAX_PIN #define Z3_MIN_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif @@ -959,17 +959,17 @@ #if NUM_Z_STEPPERS >= 4 #if Z_HOME_TO_MAX #ifndef Z4_MAX_ENDSTOP_HIT_STATE - #if Z4_USE_ENDSTOP == _XMIN_ + #if Z4_STOP_PIN == X_MIN_PIN #define Z4_MAX_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE - #elif Z4_USE_ENDSTOP == _XMAX_ + #elif Z4_STOP_PIN == X_MAX_PIN #define Z4_MAX_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE - #elif Z4_USE_ENDSTOP == _YMIN_ + #elif Z4_STOP_PIN == Y_MIN_PIN #define Z4_MAX_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE - #elif Z4_USE_ENDSTOP == _YMAX_ + #elif Z4_STOP_PIN == Y_MAX_PIN #define Z4_MAX_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE - #elif Z4_USE_ENDSTOP == _ZMIN_ + #elif Z4_STOP_PIN == Z_MIN_PIN #define Z4_MAX_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE - #elif Z4_USE_ENDSTOP == _ZMAX_ + #elif Z4_STOP_PIN == Z_MAX_PIN #define Z4_MAX_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif @@ -981,17 +981,17 @@ #endif #else #ifndef Z4_MIN_ENDSTOP_HIT_STATE - #if Z4_USE_ENDSTOP == _XMIN_ + #if Z4_STOP_PIN == X_MIN_PIN #define Z4_MIN_ENDSTOP_HIT_STATE X_MIN_ENDSTOP_HIT_STATE - #elif Z4_USE_ENDSTOP == _XMAX_ + #elif Z4_STOP_PIN == X_MAX_PIN #define Z4_MIN_ENDSTOP_HIT_STATE X_MAX_ENDSTOP_HIT_STATE - #elif Z4_USE_ENDSTOP == _YMIN_ + #elif Z4_STOP_PIN == Y_MIN_PIN #define Z4_MIN_ENDSTOP_HIT_STATE Y_MIN_ENDSTOP_HIT_STATE - #elif Z4_USE_ENDSTOP == _YMAX_ + #elif Z4_STOP_PIN == Y_MAX_PIN #define Z4_MIN_ENDSTOP_HIT_STATE Y_MAX_ENDSTOP_HIT_STATE - #elif Z4_USE_ENDSTOP == _ZMIN_ + #elif Z4_STOP_PIN == Z_MIN_PIN #define Z4_MIN_ENDSTOP_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE - #elif Z4_USE_ENDSTOP == _ZMAX_ + #elif Z4_STOP_PIN == Z_MAX_PIN #define Z4_MIN_ENDSTOP_HIT_STATE Z_MAX_ENDSTOP_HIT_STATE #endif #endif @@ -1016,58 +1016,58 @@ * Set ENDSTOPPULLUPS for active endstop switches */ #if ENABLED(ENDSTOPPULLUPS) - #if ENABLED(USE_XMAX_PLUG) + #if HAS_X_MAX #define ENDSTOPPULLUP_XMAX #endif - #if ENABLED(USE_YMAX_PLUG) + #if HAS_Y_MAX #define ENDSTOPPULLUP_YMAX #endif - #if ENABLED(USE_ZMAX_PLUG) + #if HAS_Z_MAX #define ENDSTOPPULLUP_ZMAX #endif - #if ENABLED(USE_IMAX_PLUG) + #if HAS_I_MAX #define ENDSTOPPULLUP_IMAX #endif - #if ENABLED(USE_JMAX_PLUG) + #if HAS_J_MAX #define ENDSTOPPULLUP_JMAX #endif - #if ENABLED(USE_KMAX_PLUG) + #if HAS_K_MAX #define ENDSTOPPULLUP_KMAX #endif - #if ENABLED(USE_UMAX_PLUG) + #if HAS_U_MAX #define ENDSTOPPULLUP_UMAX #endif - #if ENABLED(USE_VMAX_PLUG) + #if HAS_V_MAX #define ENDSTOPPULLUP_VMAX #endif - #if ENABLED(USE_WMAX_PLUG) + #if HAS_W_MAX #define ENDSTOPPULLUP_WMAX #endif - #if ENABLED(USE_XMIN_PLUG) + #if HAS_X_MIN #define ENDSTOPPULLUP_XMIN #endif - #if ENABLED(USE_YMIN_PLUG) + #if HAS_Y_MIN #define ENDSTOPPULLUP_YMIN #endif - #if ENABLED(USE_ZMIN_PLUG) + #if HAS_Z_MIN_PIN #define ENDSTOPPULLUP_ZMIN #endif - #if ENABLED(USE_IMIN_PLUG) + #if HAS_I_MIN #define ENDSTOPPULLUP_IMIN #endif - #if ENABLED(USE_JMIN_PLUG) + #if HAS_J_MIN #define ENDSTOPPULLUP_JMIN #endif - #if ENABLED(USE_KMIN_PLUG) + #if HAS_K_MIN #define ENDSTOPPULLUP_KMIN #endif - #if ENABLED(USE_UMIN_PLUG) + #if HAS_U_MIN #define ENDSTOPPULLUP_UMIN #endif - #if ENABLED(USE_VMIN_PLUG) + #if HAS_V_MIN #define ENDSTOPPULLUP_VMIN #endif - #if ENABLED(USE_WMIN_PLUG) + #if HAS_W_MIN #define ENDSTOPPULLUP_WMIN #endif #endif @@ -1076,58 +1076,58 @@ * Set ENDSTOPPULLDOWNS for active endstop switches */ #if ENABLED(ENDSTOPPULLDOWNS) - #if ENABLED(USE_XMAX_PLUG) + #if HAS_X_MAX #define ENDSTOPPULLDOWN_XMAX #endif - #if ENABLED(USE_YMAX_PLUG) + #if HAS_Y_MAX #define ENDSTOPPULLDOWN_YMAX #endif - #if ENABLED(USE_ZMAX_PLUG) + #if HAS_Z_MAX #define ENDSTOPPULLDOWN_ZMAX #endif - #if ENABLED(USE_IMAX_PLUG) + #if HAS_I_MAX #define ENDSTOPPULLDOWN_IMAX #endif - #if ENABLED(USE_JMAX_PLUG) + #if HAS_J_MAX #define ENDSTOPPULLDOWN_JMAX #endif - #if ENABLED(USE_KMAX_PLUG) + #if HAS_K_MAX #define ENDSTOPPULLDOWN_KMAX #endif - #if ENABLED(USE_UMAX_PLUG) + #if HAS_U_MAX #define ENDSTOPPULLDOWN_UMAX #endif - #if ENABLED(USE_VMAX_PLUG) + #if HAS_V_MAX #define ENDSTOPPULLDOWN_VMAX #endif - #if ENABLED(USE_WMAX_PLUG) + #if HAS_W_MAX #define ENDSTOPPULLDOWN_WMAX #endif - #if ENABLED(USE_XMIN_PLUG) + #if HAS_X_MIN #define ENDSTOPPULLDOWN_XMIN #endif - #if ENABLED(USE_YMIN_PLUG) + #if HAS_Y_MIN #define ENDSTOPPULLDOWN_YMIN #endif - #if ENABLED(USE_ZMIN_PLUG) + #if HAS_Z_MIN_PIN #define ENDSTOPPULLDOWN_ZMIN #endif - #if ENABLED(USE_IMIN_PLUG) + #if HAS_I_MIN #define ENDSTOPPULLDOWN_IMIN #endif - #if ENABLED(USE_JMIN_PLUG) + #if HAS_J_MIN #define ENDSTOPPULLDOWN_JMIN #endif - #if ENABLED(USE_KMIN_PLUG) + #if HAS_K_MIN #define ENDSTOPPULLDOWN_KMIN #endif - #if ENABLED(USE_UMIN_PLUG) + #if HAS_U_MIN #define ENDSTOPPULLDOWN_UMIN #endif - #if ENABLED(USE_VMIN_PLUG) + #if HAS_V_MIN #define ENDSTOPPULLDOWN_VMIN #endif - #if ENABLED(USE_WMIN_PLUG) + #if HAS_W_MIN #define ENDSTOPPULLDOWN_WMIN #endif #endif @@ -2060,154 +2060,152 @@ // Endstops and bed probe // -// Is an endstop plug used for extra Z endstops or the probe? -#define IS_PROBE_PIN(A,M) (USES_Z_MIN_PROBE_PIN && Z_MIN_PROBE_PIN == A##_##M##_PIN) -#define IS_X2_ENDSTOP(A,M) (ENABLED(X_DUAL_ENDSTOPS) && X2_USE_ENDSTOP == _##A##M##_) -#define IS_Y2_ENDSTOP(A,M) (ENABLED(Y_DUAL_ENDSTOPS) && Y2_USE_ENDSTOP == _##A##M##_) -#define IS_Z2_ENDSTOP(A,M) (ENABLED(Z_MULTI_ENDSTOPS) && Z2_USE_ENDSTOP == _##A##M##_) -#define IS_Z3_ENDSTOP(A,M) (ENABLED(Z_MULTI_ENDSTOPS) && NUM_Z_STEPPERS >= 3 && Z3_USE_ENDSTOP == _##A##M##_) -#define IS_Z4_ENDSTOP(A,M) (ENABLED(Z_MULTI_ENDSTOPS) && NUM_Z_STEPPERS >= 4 && Z4_USE_ENDSTOP == _##A##M##_) +#define _HAS_STOP(A,N,M,C) ((A##_HOME_TO_##M || (C+0)) && PIN_EXISTS(A##N##_##M)) -#define _HAS_STOP(A,M) (HAS_##A##_AXIS && PIN_EXISTS(A##_##M) && !IS_PROBE_PIN(A,M) && !IS_X2_ENDSTOP(A,M) && !IS_Y2_ENDSTOP(A,M) && !IS_Z2_ENDSTOP(A,M) && !IS_Z3_ENDSTOP(A,M) && !IS_Z4_ENDSTOP(A,M)) -#if _HAS_STOP(X,MIN) +#if _HAS_STOP(X,,MIN,) #define HAS_X_MIN 1 #endif -#if _HAS_STOP(X,MAX) +#if _HAS_STOP(X,,MAX,ENABLED(DUAL_X_CARRIAGE)) #define HAS_X_MAX 1 #endif -#if _HAS_STOP(Y,MIN) - #define HAS_Y_MIN 1 -#endif -#if _HAS_STOP(Y,MAX) - #define HAS_Y_MAX 1 -#endif -#if _HAS_STOP(Z,MIN) - #define HAS_Z_MIN 1 -#endif -#if _HAS_STOP(Z,MAX) - #define HAS_Z_MAX 1 -#endif -#if _HAS_STOP(I,MIN) - #define HAS_I_MIN 1 -#endif -#if _HAS_STOP(I,MAX) - #define HAS_I_MAX 1 -#endif -#if _HAS_STOP(J,MIN) - #define HAS_J_MIN 1 -#endif -#if _HAS_STOP(J,MAX) - #define HAS_J_MAX 1 -#endif -#if _HAS_STOP(K,MIN) - #define HAS_K_MIN 1 -#endif -#if _HAS_STOP(K,MAX) - #define HAS_K_MAX 1 -#endif -#if _HAS_STOP(U,MIN) - #define HAS_U_MIN 1 -#endif -#if _HAS_STOP(U,MAX) - #define HAS_U_MAX 1 -#endif -#if _HAS_STOP(V,MIN) - #define HAS_V_MIN 1 -#endif -#if _HAS_STOP(V,MAX) - #define HAS_V_MAX 1 -#endif -#if _HAS_STOP(W,MIN) - #define HAS_W_MIN 1 -#endif -#if _HAS_STOP(W,MAX) - #define HAS_W_MAX 1 -#endif -#if PIN_EXISTS(X2_MIN) - #define HAS_X2_MIN 1 -#endif -#if PIN_EXISTS(X2_MAX) - #define HAS_X2_MAX 1 -#endif -#if PIN_EXISTS(Y2_MIN) - #define HAS_Y2_MIN 1 -#endif -#if PIN_EXISTS(Y2_MAX) - #define HAS_Y2_MAX 1 -#endif -#if PIN_EXISTS(Z2_MIN) - #define HAS_Z2_MIN 1 -#endif -#if PIN_EXISTS(Z2_MAX) - #define HAS_Z2_MAX 1 -#endif -#if PIN_EXISTS(Z3_MIN) - #define HAS_Z3_MIN 1 -#endif -#if PIN_EXISTS(Z3_MAX) - #define HAS_Z3_MAX 1 -#endif -#if PIN_EXISTS(Z4_MIN) - #define HAS_Z4_MIN 1 -#endif -#if PIN_EXISTS(Z4_MAX) - #define HAS_Z4_MAX 1 -#endif - #if HAS_X_MIN || HAS_X_MAX #define HAS_X_ENDSTOP 1 #endif -#if HAS_X2_MIN || HAS_X2_MAX - #define HAS_X2_ENDSTOP 1 + +#if _HAS_STOP(Y,,MIN,) + #define HAS_Y_MIN 1 +#elif _HAS_STOP(Y,,MAX,) + #define HAS_Y_MAX 1 #endif #if HAS_Y_MIN || HAS_Y_MAX #define HAS_Y_ENDSTOP 1 #endif -#if HAS_Y2_MIN || HAS_Y2_MAX - #define HAS_Y2_ENDSTOP 1 + +#if _HAS_STOP(Z,,MIN,EITHER(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, HAS_DELTA_SENSORLESS_PROBING)) + #define HAS_Z_MIN 1 + #if !HAS_DELTA_SENSORLESS_PROBING + #define HAS_Z_MIN_PIN 1 + #endif +#endif +#if _HAS_STOP(Z,,MAX,) + #define HAS_Z_MAX 1 #endif #if HAS_Z_MIN || HAS_Z_MAX #define HAS_Z_ENDSTOP 1 #endif -#if HAS_Z2_MIN || HAS_Z2_MAX - #define HAS_Z2_ENDSTOP 1 -#endif -#if HAS_Z3_MIN || HAS_Z3_MAX - #define HAS_Z3_ENDSTOP 1 -#endif -#if HAS_Z4_MIN || HAS_Z4_MAX - #define HAS_Z4_ENDSTOP 1 + +#if _HAS_STOP(I,,MIN,) + #define HAS_I_MIN 1 +#elif _HAS_STOP(I,,MAX,) + #define HAS_I_MAX 1 #endif #if HAS_I_MIN || HAS_I_MAX #define HAS_I_ENDSTOP 1 #endif + +#if _HAS_STOP(J,,MIN,) + #define HAS_J_MIN 1 +#elif _HAS_STOP(J,,MAX,) + #define HAS_J_MAX 1 +#endif #if HAS_J_MIN || HAS_J_MAX #define HAS_J_ENDSTOP 1 #endif + +#if _HAS_STOP(K,,MIN,) + #define HAS_K_MIN 1 +#elif _HAS_STOP(K,,MAX,) + #define HAS_K_MAX 1 +#endif #if HAS_K_MIN || HAS_K_MAX #define HAS_K_ENDSTOP 1 #endif + +#if _HAS_STOP(U,,MIN,) + #define HAS_U_MIN 1 +#elif _HAS_STOP(U,,MAX,) + #define HAS_U_MAX 1 +#endif #if HAS_U_MIN || HAS_U_MAX #define HAS_U_ENDSTOP 1 #endif + +#if _HAS_STOP(V,,MIN,) + #define HAS_V_MIN 1 +#elif _HAS_STOP(V,,MAX,) + #define HAS_V_MAX 1 +#endif #if HAS_V_MIN || HAS_V_MAX #define HAS_V_ENDSTOP 1 #endif + +#if _HAS_STOP(W,,MIN,) + #define HAS_W_MIN 1 +#elif _HAS_STOP(W,,MAX,) + #define HAS_W_MAX 1 +#endif #if HAS_W_MIN || HAS_W_MAX #define HAS_W_ENDSTOP 1 #endif +#if EITHER(DUAL_X_CARRIAGE, X_DUAL_ENDSTOPS) + #if _HAS_STOP(X,2,MIN,) + #define HAS_X2_MIN 1 + #elif _HAS_STOP(X,2,MAX,) + #define HAS_X2_MAX 1 + #endif + #if HAS_X2_MIN || HAS_X2_MAX + #define HAS_X2_ENDSTOP 1 + #endif +#endif + +#if ENABLED(Y_DUAL_ENDSTOPS) + #if _HAS_STOP(Y,2,MIN,) + #define HAS_Y2_MIN 1 + #elif _HAS_STOP(Y,2,MAX,) + #define HAS_Y2_MAX 1 + #endif + #if HAS_Y2_MIN || HAS_Y2_MAX + #define HAS_Y2_ENDSTOP 1 + #endif +#endif + +#if ENABLED(Z_MULTI_ENDSTOPS) + #if _HAS_STOP(Z,2,MIN,) + #define HAS_Z2_MIN 1 + #elif _HAS_STOP(Z,2,MAX,) + #define HAS_Z2_MAX 1 + #endif + #if HAS_Z2_MIN || HAS_Z2_MAX + #define HAS_Z2_ENDSTOP 1 + #endif + #if NUM_Z_STEPPERS >= 3 + #if _HAS_STOP(Z,3,MIN,) + #define HAS_Z3_MIN 1 + #elif _HAS_STOP(Z,3,MAX,) + #define HAS_Z3_MAX 1 + #endif + #if HAS_Z3_MIN || HAS_Z3_MAX + #define HAS_Z3_ENDSTOP 1 + #endif + #endif + #if NUM_Z_STEPPERS >= 4 + #if _HAS_STOP(Z,4,MIN,) + #define HAS_Z4_MIN 1 + #elif _HAS_STOP(Z,4,MAX,) + #define HAS_Z4_MAX 1 + #endif + #if HAS_Z4_MIN || HAS_Z4_MAX + #define HAS_Z4_ENDSTOP 1 + #endif + #endif +#endif + #if HAS_BED_PROBE && PIN_EXISTS(Z_MIN_PROBE) #define HAS_Z_MIN_PROBE_PIN 1 #endif #undef _HAS_STOP -#undef IS_PROBE_PIN -#undef IS_X2_ENDSTOP -#undef IS_Y2_ENDSTOP -#undef IS_Z2_ENDSTOP -#undef IS_Z3_ENDSTOP -#undef IS_Z4_ENDSTOP // // ADC Temp Sensors (Thermistor or Thermocouple with amplifier ADC interface) diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 39e27ce3aa31..35da7935de46 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -1379,9 +1379,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "SENSORLESS_PROBING requires a TMC2130/2160/2209/5130/5160 driver on Z and Z_STALL_SENSITIVITY." #endif #elif ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) - #if DISABLED(USE_ZMIN_PLUG) - #error "Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN requires USE_ZMIN_PLUG to be enabled." - #elif !HAS_Z_MIN + #if !HAS_Z_MIN_PIN #error "Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN requires the Z_MIN_PIN to be defined." #elif Z_MIN_PROBE_ENDSTOP_HIT_STATE != Z_MIN_ENDSTOP_HIT_STATE #error "Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN requires Z_MIN_ENDSTOP_HIT_STATE to match Z_MIN_PROBE_ENDSTOP_HIT_STATE." @@ -1772,7 +1770,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #elif !GOOD_AXIS_PINS(X2) #error "DUAL_X_CARRIAGE requires X2 stepper pins to be defined." #elif !HAS_X_MAX - #error "DUAL_X_CARRIAGE requires USE_XMAX_PLUG and an X Max Endstop." + #error "DUAL_X_CARRIAGE requires an X_MAX_PIN in addition to the X_MIN_PIN." #elif !defined(X2_HOME_POS) || !defined(X2_MIN_POS) || !defined(X2_MAX_POS) #error "DUAL_X_CARRIAGE requires X2_HOME_POS, X2_MIN_POS, and X2_MAX_POS." #elif X_HOME_TO_MAX || X2_HOME_TO_MIN @@ -2302,90 +2300,49 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Endstop Tests */ - -#define _PLUG_UNUSED_TEST(A,P) (DISABLED(USE_##P##MIN_PLUG, USE_##P##MAX_PLUG) \ - && !(ENABLED(A##_DUAL_ENDSTOPS) && WITHIN(A##2_USE_ENDSTOP, _##P##MAX_, _##P##MIN_)) \ - && !(ENABLED(A##_MULTI_ENDSTOPS) && WITHIN(A##2_USE_ENDSTOP, _##P##MAX_, _##P##MIN_)) ) -#define _AXIS_PLUG_UNUSED_TEST(A) (HAS_##A##_A NUM_AXIS_GANG(&& _PLUG_UNUSED_TEST(A,X), && _PLUG_UNUSED_TEST(A,Y), && _PLUG_UNUSED_TEST(A,Z), \ - && _PLUG_UNUSED_TEST(A,I), && _PLUG_UNUSED_TEST(A,J), && _PLUG_UNUSED_TEST(A,K), \ - && _PLUG_UNUSED_TEST(A,U), && _PLUG_UNUSED_TEST(A,V), && _PLUG_UNUSED_TEST(A,W) ) ) - -// A machine with endstops must have a minimum of 3 #if HAS_ENDSTOPS - #if _AXIS_PLUG_UNUSED_TEST(X) - #error "You must enable USE_XMIN_PLUG or USE_XMAX_PLUG." - #endif - #if _AXIS_PLUG_UNUSED_TEST(Y) - #error "You must enable USE_YMIN_PLUG or USE_YMAX_PLUG." - #endif - #if _AXIS_PLUG_UNUSED_TEST(Z) - #error "You must enable USE_ZMIN_PLUG or USE_ZMAX_PLUG." - #endif - #if _AXIS_PLUG_UNUSED_TEST(I) - #error "You must enable USE_IMIN_PLUG or USE_IMAX_PLUG." - #endif - #if _AXIS_PLUG_UNUSED_TEST(J) - #error "You must enable USE_JMIN_PLUG or USE_JMAX_PLUG." - #endif - #if _AXIS_PLUG_UNUSED_TEST(K) - #error "You must enable USE_KMIN_PLUG or USE_KMAX_PLUG." - #endif - #if _AXIS_PLUG_UNUSED_TEST(U) - #error "You must enable USE_UMIN_PLUG or USE_UMAX_PLUG." - #endif - #if _AXIS_PLUG_UNUSED_TEST(V) - #error "You must enable USE_VMIN_PLUG or USE_VMAX_PLUG." - #endif - #if _AXIS_PLUG_UNUSED_TEST(W) - #error "You must enable USE_WMIN_PLUG or USE_WMAX_PLUG." - #endif - // Delta and Cartesian use 3 homing endstops #if NONE(IS_SCARA, SPI_ENDSTOPS) - #if X_HOME_TO_MIN && DISABLED(USE_XMIN_PLUG) - #error "Enable USE_XMIN_PLUG when homing X to MIN." - #elif X_HOME_TO_MAX && DISABLED(USE_XMAX_PLUG) - #error "Enable USE_XMAX_PLUG when homing X to MAX." - #elif Y_HOME_TO_MIN && DISABLED(USE_YMIN_PLUG) - #error "Enable USE_YMIN_PLUG when homing Y to MIN." - #elif Y_HOME_TO_MAX && DISABLED(USE_YMAX_PLUG) - #error "Enable USE_YMAX_PLUG when homing Y to MAX." - #elif I_HOME_TO_MIN && DISABLED(USE_IMIN_PLUG) - #error "Enable USE_IMIN_PLUG when homing I to MIN." - #elif I_HOME_TO_MAX && DISABLED(USE_IMAX_PLUG) - #error "Enable USE_IMAX_PLUG when homing I to MAX." - #elif J_HOME_TO_MIN && DISABLED(USE_JMIN_PLUG) - #error "Enable USE_JMIN_PLUG when homing J to MIN." - #elif J_HOME_TO_MAX && DISABLED(USE_JMAX_PLUG) - #error "Enable USE_JMAX_PLUG when homing J to MAX." - #elif K_HOME_TO_MIN && DISABLED(USE_KMIN_PLUG) - #error "Enable USE_KMIN_PLUG when homing K to MIN." - #elif K_HOME_TO_MAX && DISABLED(USE_KMAX_PLUG) - #error "Enable USE_KMAX_PLUG when homing K to MAX." - #elif U_HOME_TO_MIN && DISABLED(USE_UMIN_PLUG) - #error "Enable USE_UMIN_PLUG when homing U to MIN." - #elif U_HOME_TO_MAX && DISABLED(USE_UMAX_PLUG) - #error "Enable USE_UMAX_PLUG when homing U to MAX." - #elif V_HOME_TO_MIN && DISABLED(USE_VMIN_PLUG) - #error "Enable USE_VMIN_PLUG when homing V to MIN." - #elif V_HOME_TO_MAX && DISABLED(USE_VMAX_PLUG) - #error "Enable USE_VMAX_PLUG when homing V to MAX." - #elif W_HOME_TO_MIN && DISABLED(USE_WMIN_PLUG) - #error "Enable USE_WMIN_PLUG when homing W to MIN." - #elif W_HOME_TO_MAX && DISABLED(USE_WMAX_PLUG) - #error "Enable USE_WMAX_PLUG when homing W to MAX." - #endif - #endif - - // Z homing direction and plug usage flags - #if Z_HOME_TO_MIN && NONE(USE_ZMIN_PLUG, HOMING_Z_WITH_PROBE) - #error "Enable USE_ZMIN_PLUG when homing Z to MIN." - #elif Z_HOME_TO_MAX && ENABLED(USE_PROBE_FOR_Z_HOMING) + #if X_HOME_TO_MIN && !PIN_EXISTS(X_MIN) + #error "X_MIN_PIN (or X_STOP_PIN) is required for X axis homing." + #elif X_HOME_TO_MAX && !PIN_EXISTS(X_MAX) + #error "X_MAX_PIN (or X_STOP_PIN) is required for X axis homing." + #elif Y_HOME_TO_MIN && !PIN_EXISTS(Y_MIN) + #error "Y_MIN_PIN (or Y_STOP_PIN) is required for Y axis homing." + #elif Y_HOME_TO_MAX && !PIN_EXISTS(Y_MAX) + #error "Y_MAX_PIN (or Y_STOP_PIN) is required for Y axis homing." + #elif I_HOME_TO_MIN && !PIN_EXISTS(I_MIN) + #error "I_MIN_PIN (or I_STOP_PIN) is required for I axis homing." + #elif I_HOME_TO_MAX && !PIN_EXISTS(I_MAX) + #error "I_MAX_PIN (or I_STOP_PIN) is required for I axis homing." + #elif J_HOME_TO_MIN && !PIN_EXISTS(J_MIN) + #error "J_MIN_PIN (or J_STOP_PIN) is required for J axis homing." + #elif J_HOME_TO_MAX && !PIN_EXISTS(J_MAX) + #error "J_MAX_PIN (or J_STOP_PIN) is required for J axis homing." + #elif K_HOME_TO_MIN && !PIN_EXISTS(K_MIN) + #error "K_MIN_PIN (or K_STOP_PIN) is required for K axis homing." + #elif K_HOME_TO_MAX && !PIN_EXISTS(K_MAX) + #error "K_MAX_PIN (or K_STOP_PIN) is required for K axis homing." + #elif U_HOME_TO_MIN && !PIN_EXISTS(U_MIN) + #error "U_MIN_PIN (or U_STOP_PIN) is required for U axis homing." + #elif U_HOME_TO_MAX && !PIN_EXISTS(U_MAX) + #error "U_MAX_PIN (or U_STOP_PIN) is required for U axis homing." + #elif V_HOME_TO_MIN && !PIN_EXISTS(V_MIN) + #error "V_MIN_PIN (or V_STOP_PIN) is required for V axis homing." + #elif V_HOME_TO_MAX && !PIN_EXISTS(V_MAX) + #error "V_MAX_PIN (or V_STOP_PIN) is required for V axis homing." + #elif W_HOME_TO_MIN && !PIN_EXISTS(W_MIN) + #error "W_MIN_PIN (or W_STOP_PIN) is required for W axis homing." + #elif W_HOME_TO_MAX && !PIN_EXISTS(W_MAX) + #error "W_MAX_PIN (or W_STOP_PIN) is required for W axis homing." + #endif + #endif + + // Z homing requirements + #if Z_HOME_TO_MAX && ENABLED(USE_PROBE_FOR_Z_HOMING) #error "Z_HOME_DIR must be -1 when homing Z with the probe." #elif BOTH(HOMING_Z_WITH_PROBE, Z_MULTI_ENDSTOPS) #error "Z_MULTI_ENDSTOPS is incompatible with USE_PROBE_FOR_Z_HOMING." - #elif Z_HOME_TO_MAX && DISABLED(USE_ZMAX_PLUG) - #error "Enable USE_ZMAX_PLUG when homing Z to MAX." #endif #endif @@ -2397,26 +2354,26 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #if ENABLED(X_DUAL_ENDSTOPS) #if ENABLED(DELTA) #error "X_DUAL_ENDSTOPS is not compatible with DELTA." - #elif !X2_USE_ENDSTOP - #error "X2_USE_ENDSTOP must be set with X_DUAL_ENDSTOPS." + #elif !HAS_X2_ENDSTOP + #error "X2 Endstop Pin must be defined for X_DUAL_ENDSTOPS." #endif #endif #if ENABLED(Y_DUAL_ENDSTOPS) #if ENABLED(DELTA) #error "Y_DUAL_ENDSTOPS is not compatible with DELTA." - #elif !Y2_USE_ENDSTOP - #error "Y2_USE_ENDSTOP must be set with Y_DUAL_ENDSTOPS." + #elif !HAS_Y2_ENDSTOP + #error "Y2 Endstop Pin must be defined for Y_DUAL_ENDSTOPS." #endif #endif #if ENABLED(Z_MULTI_ENDSTOPS) #if ENABLED(DELTA) #error "Z_MULTI_ENDSTOPS is not compatible with DELTA." - #elif !Z2_USE_ENDSTOP - #error "Z2_USE_ENDSTOP must be set with Z_MULTI_ENDSTOPS." - #elif !Z3_USE_ENDSTOP && NUM_Z_STEPPERS >= 3 - #error "Z3_USE_ENDSTOP must be set with Z_MULTI_ENDSTOPS and Z3_DRIVER_TYPE." - #elif !Z4_USE_ENDSTOP && NUM_Z_STEPPERS >= 4 - #error "Z4_USE_ENDSTOP must be set with Z_MULTI_ENDSTOPS and Z4_DRIVER_TYPE." + #elif !HAS_Z2_ENDSTOP + #error "Z2 Endstop Pin must be defined for Z_MULTI_ENDSTOPS." + #elif NUM_Z_STEPPERS >= 3 && !HAS_Z3_ENDSTOP + #error "Z3 Endstop Pin must be defined for Z_MULTI_ENDSTOPS and Z3_DRIVER_TYPE." + #elif NUM_Z_STEPPERS >= 4 && !HAS_Z4_ENDSTOP + #error "Z4 Endstop Pin must be defined for Z_MULTI_ENDSTOPS and Z4_DRIVER_TYPE." #endif #endif @@ -3310,10 +3267,12 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L * TMC SPI Chaining */ #define IN_CHAIN(A) A##_CHAIN_POS > 0 -#if IN_CHAIN(X ) || IN_CHAIN(Y ) || IN_CHAIN(Z ) || IN_CHAIN(X2) || IN_CHAIN(Y2) || IN_CHAIN(Z2) || IN_CHAIN(Z3) || IN_CHAIN(Z4) \ +#if IN_CHAIN(X) || IN_CHAIN(Y) || IN_CHAIN(Z) || IN_CHAIN(I) || IN_CHAIN(J) || IN_CHAIN(K) || IN_CHAIN(U) || IN_CHAIN(V) || IN_CHAIN(W) \ + || IN_CHAIN(X2) || IN_CHAIN(Y2) || IN_CHAIN(Z2) || IN_CHAIN(Z3) || IN_CHAIN(Z4) \ || IN_CHAIN(E0) || IN_CHAIN(E1) || IN_CHAIN(E2) || IN_CHAIN(E3) || IN_CHAIN(E4) || IN_CHAIN(E5) || IN_CHAIN(E6) || IN_CHAIN(E7) #define BAD_CHAIN(A) (IN_CHAIN(A) && !PIN_EXISTS(A##_CS)) - #if BAD_CHAIN(X ) || BAD_CHAIN(Y ) || BAD_CHAIN(Z ) || BAD_CHAIN(X2) || BAD_CHAIN(Y2) || BAD_CHAIN(Z2) || BAD_CHAIN(Z3) || BAD_CHAIN(Z4) \ + #if BAD_CHAIN(X) || BAD_CHAIN(Y) || BAD_CHAIN(Z) || BAD_CHAIN(I) || BAD_CHAIN(J) || BAD_CHAIN(K) || BAD_CHAIN(U) || BAD_CHAIN(V) || BAD_CHAIN(W) \ + || BAD_CHAIN(X2) || BAD_CHAIN(Y2) || BAD_CHAIN(Z2) || BAD_CHAIN(Z3) || BAD_CHAIN(Z4) \ || BAD_CHAIN(E0) || BAD_CHAIN(E1) || BAD_CHAIN(E2) || BAD_CHAIN(E3) || BAD_CHAIN(E4) || BAD_CHAIN(E5) || BAD_CHAIN(E6) || BAD_CHAIN(E7) #error "All chained TMC drivers need a CS pin." #else @@ -3361,9 +3320,8 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #define CS_COMPARE E7_CS_PIN #endif #define BAD_CS_PIN(A) (IN_CHAIN(A) && A##_CS_PIN != CS_COMPARE) - #if BAD_CS_PIN(X ) || BAD_CS_PIN(Y ) || BAD_CS_PIN(Z ) || BAD_CS_PIN(X2) || BAD_CS_PIN(Y2) || BAD_CS_PIN(Z2) || BAD_CS_PIN(Z3) || BAD_CS_PIN(Z4) \ - || BAD_CS_PIN(I) || BAD_CS_PIN(J) || BAD_CS_PIN(K) \ - || BAD_CS_PIN(U) || BAD_CS_PIN(V) || BAD_CS_PIN(W) \ + #if BAD_CS_PIN(X) || BAD_CS_PIN(Y) || BAD_CS_PIN(Z) || BAD_CS_PIN(I) || BAD_CS_PIN(J) || BAD_CS_PIN(K) || BAD_CS_PIN(U) || BAD_CS_PIN(V) || BAD_CS_PIN(W) \ + || BAD_CS_PIN(X2) || BAD_CS_PIN(Y2) || BAD_CS_PIN(Z2) || BAD_CS_PIN(Z3) || BAD_CS_PIN(Z4) \ || BAD_CS_PIN(E0) || BAD_CS_PIN(E1) || BAD_CS_PIN(E2) || BAD_CS_PIN(E3) || BAD_CS_PIN(E4) || BAD_CS_PIN(E5) || BAD_CS_PIN(E6) || BAD_CS_PIN(E7) #error "All chained TMC drivers must use the same CS pin." #endif diff --git a/Marlin/src/inc/Warnings.cpp b/Marlin/src/inc/Warnings.cpp index 82aadf7d77b1..c7773eaabc9a 100644 --- a/Marlin/src/inc/Warnings.cpp +++ b/Marlin/src/inc/Warnings.cpp @@ -95,46 +95,40 @@ #warning "Note: Auto-assigned X2_CS_PIN to an unused En_CS_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #if AUTO_ASSIGNED_X2_DIAG - #if X2_USE_ENDSTOP == _XMIN_ - #warning "Note: Auto-assigned X2_DIAG_PIN to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _XMAX_ - #warning "Note: Auto-assigned X2_DIAG_PIN to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _XSTOP_ - #warning "Note: Auto-assigned X2_DIAG_PIN to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _YMIN_ - #warning "Note: Auto-assigned X2_DIAG_PIN to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _YMAX_ - #warning "Note: Auto-assigned X2_DIAG_PIN to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _YSTOP_ - #warning "Note: Auto-assigned X2_DIAG_PIN to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _ZMIN_ - #warning "Note: Auto-assigned X2_DIAG_PIN to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _ZMAX_ - #warning "Note: Auto-assigned X2_DIAG_PIN to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _ZSTOP_ - #warning "Note: Auto-assigned X2_DIAG_PIN to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _XDIAG_ - #warning "Note: Auto-assigned X2_DIAG_PIN to X_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _YDIAG_ - #warning "Note: Auto-assigned X2_DIAG_PIN to Y_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _ZDIAG_ - #warning "Note: Auto-assigned X2_DIAG_PIN to Z_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _E0DIAG_ - #warning "Note: Auto-assigned X2_DIAG_PIN to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _E1DIAG_ - #warning "Note: Auto-assigned X2_DIAG_PIN to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _E2DIAG_ - #warning "Note: Auto-assigned X2_DIAG_PIN to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _E3DIAG_ - #warning "Note: Auto-assigned X2_DIAG_PIN to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _E4DIAG_ - #warning "Note: Auto-assigned X2_DIAG_PIN to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _E5DIAG_ - #warning "Note: Auto-assigned X2_DIAG_PIN to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _E6DIAG_ - #warning "Note: Auto-assigned X2_DIAG_PIN to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif X2_USE_ENDSTOP == _E7DIAG_ - #warning "Note: Auto-assigned X2_DIAG_PIN to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #if X2_STOP_PIN == X_MIN_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == X_MAX_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == X_STOP_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == Y_MIN_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == Y_MAX_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == Y_STOP_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == Z_MIN_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == Z_MAX_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == Z_STOP_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == E0_DIAG_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == E1_DIAG_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == E2_DIAG_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == E3_DIAG_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == E4_DIAG_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == E5_DIAG_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == E6_DIAG_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif X2_STOP_PIN == E7_DIAG_PIN + #warning "Note: Auto-assigned X2 sensorless endstop to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #endif #if AUTO_ASSIGNED_Y2_STEPPER @@ -153,46 +147,40 @@ #warning "Note: Auto-assigned Y2_CS_PIN to an unused En_CS_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #if AUTO_ASSIGNED_Y2_DIAG - #if Y2_USE_ENDSTOP == _XMIN_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _XMAX_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _XSTOP_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _YMIN_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _YMAX_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _YSTOP_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _ZMIN_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _ZMAX_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _ZSTOP_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _XDIAG_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to X_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _YDIAG_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to Y_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _ZDIAG_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to Z_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _E0DIAG_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _E1DIAG_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _E2DIAG_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _E3DIAG_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _E4DIAG_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _E5DIAG_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _E6DIAG_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Y2_USE_ENDSTOP == _E7DIAG_ - #warning "Note: Auto-assigned Y2_DIAG_PIN to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #if Y2_USE_ENDSTOP == X_MIN_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_STOP_PIN == X_MAX_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_STOP_PIN == X_STOP_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_USE_ENDSTOP == Y_MIN_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_STOP_PIN == Y_MAX_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_STOP_PIN == Y_STOP_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_USE_ENDSTOP == Z_MIN_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_STOP_PIN == Z_MAX_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_STOP_PIN == Z_STOP_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_STOP_PIN == E0_DIAG_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_STOP_PIN == E1_DIAG_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_STOP_PIN == E2_DIAG_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_STOP_PIN == E3_DIAG_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_STOP_PIN == E4_DIAG_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_STOP_PIN == E5_DIAG_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_STOP_PIN == E6_DIAG_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Y2_STOP_PIN == E7_DIAG_PIN + #warning "Note: Auto-assigned Y2 sensorless endstop to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #endif #if AUTO_ASSIGNED_Z2_STEPPER @@ -211,46 +199,40 @@ #warning "Note: Auto-assigned Z2_CS_PIN to an unused En_CS_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #if AUTO_ASSIGNED_Z2_DIAG - #if Z2_USE_ENDSTOP == _XMIN_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _XMAX_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _XSTOP_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _YMIN_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _YMAX_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _YSTOP_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _ZMIN_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _ZMAX_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _ZSTOP_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _XDIAG_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to X_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _YDIAG_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to Y_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _ZDIAG_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to Z_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _E0DIAG_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _E1DIAG_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _E2DIAG_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _E3DIAG_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _E4DIAG_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _E5DIAG_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _E6DIAG_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z2_USE_ENDSTOP == _E7DIAG_ - #warning "Note: Auto-assigned Z2_DIAG_PIN to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #if Z2_USE_ENDSTOP == X_MIN_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_STOP_PIN == X_MAX_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_STOP_PIN == X_STOP_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_USE_ENDSTOP == Y_MIN_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_STOP_PIN == Y_MAX_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_STOP_PIN == Y_STOP_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_USE_ENDSTOP == Z_MIN_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_STOP_PIN == Z_MAX_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_STOP_PIN == Z_STOP_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_STOP_PIN == E0_DIAG_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_STOP_PIN == E1_DIAG_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_STOP_PIN == E2_DIAG_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_STOP_PIN == E3_DIAG_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_STOP_PIN == E4_DIAG_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_STOP_PIN == E5_DIAG_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_STOP_PIN == E6_DIAG_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z2_STOP_PIN == E7_DIAG_PIN + #warning "Note: Auto-assigned Z2 sensorless endstop to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #endif #if AUTO_ASSIGNED_Z3_STEPPER @@ -269,46 +251,40 @@ #warning "Note: Auto-assigned Z3_MS3_PIN to an unused En_MS3_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #if AUTO_ASSIGNED_Z3_DIAG - #if Z3_USE_ENDSTOP == _XMIN_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _XMAX_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _XSTOP_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _YMIN_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _YMAX_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _YSTOP_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _ZMIN_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _ZMAX_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _ZSTOP_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _XDIAG_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to X_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _YDIAG_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to Y_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _ZDIAG_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to Z_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _E0DIAG_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _E1DIAG_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _E2DIAG_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _E3DIAG_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _E4DIAG_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _E5DIAG_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _E6DIAG_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z3_USE_ENDSTOP == _E7DIAG_ - #warning "Note: Auto-assigned Z3_DIAG_PIN to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #if Z3_USE_ENDSTOP == X_MIN_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_STOP_PIN == X_MAX_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_STOP_PIN == X_STOP_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_USE_ENDSTOP == Y_MIN_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_STOP_PIN == Y_MAX_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_STOP_PIN == Y_STOP_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_USE_ENDSTOP == Z_MIN_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_STOP_PIN == Z_MAX_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_STOP_PIN == Z_STOP_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_STOP_PIN == E0_DIAG_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_STOP_PIN == E1_DIAG_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_STOP_PIN == E2_DIAG_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_STOP_PIN == E3_DIAG_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_STOP_PIN == E4_DIAG_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_STOP_PIN == E5_DIAG_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_STOP_PIN == E6_DIAG_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z3_STOP_PIN == E7_DIAG_PIN + #warning "Note: Auto-assigned Z3 sensorless endstop to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #endif #if AUTO_ASSIGNED_Z4_STEPPER @@ -327,46 +303,40 @@ #warning "Note: Auto-assigned Z4_MS3_PIN to an unused En_MS3_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #if AUTO_ASSIGNED_Z4_DIAG - #if Z4_USE_ENDSTOP == _XMIN_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _XMAX_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _XSTOP_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _YMIN_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _YMAX_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _YSTOP_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _ZMIN_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _ZMAX_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _ZSTOP_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _XDIAG_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to X_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _YDIAG_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to Y_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _ZDIAG_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to Z_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _E0DIAG_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _E1DIAG_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _E2DIAG_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _E3DIAG_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _E4DIAG_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _E5DIAG_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _E6DIAG_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif Z4_USE_ENDSTOP == _E7DIAG_ - #warning "Note: Auto-assigned Z4_DIAG_PIN to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #if Z4_USE_ENDSTOP == X_MIN_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_STOP_PIN == X_MAX_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_STOP_PIN == X_STOP_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_USE_ENDSTOP == Y_MIN_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_STOP_PIN == Y_MAX_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_STOP_PIN == Y_STOP_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_USE_ENDSTOP == Z_MIN_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_STOP_PIN == Z_MAX_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_STOP_PIN == Z_STOP_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_STOP_PIN == E0_DIAG_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_STOP_PIN == E1_DIAG_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_STOP_PIN == E2_DIAG_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_STOP_PIN == E3_DIAG_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_STOP_PIN == E4_DIAG_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_STOP_PIN == E5_DIAG_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_STOP_PIN == E6_DIAG_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif Z4_STOP_PIN == E7_DIAG_PIN + #warning "Note: Auto-assigned Z4 sensorless endstop to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #endif #if AUTO_ASSIGNED_I_STEPPER @@ -385,46 +355,40 @@ #warning "Note: Auto-assigned I_MS3_PIN to an unused En_MS3_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #if AUTO_ASSIGNED_I_DIAG - #if I_USE_ENDSTOP == _XMIN_ - #warning "Note: Auto-assigned I_DIAG_PIN to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _XMAX_ - #warning "Note: Auto-assigned I_DIAG_PIN to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _XSTOP_ - #warning "Note: Auto-assigned I_DIAG_PIN to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _YMIN_ - #warning "Note: Auto-assigned I_DIAG_PIN to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _YMAX_ - #warning "Note: Auto-assigned I_DIAG_PIN to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _YSTOP_ - #warning "Note: Auto-assigned I_DIAG_PIN to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _ZMIN_ - #warning "Note: Auto-assigned I_DIAG_PIN to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _ZMAX_ - #warning "Note: Auto-assigned I_DIAG_PIN to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _ZSTOP_ - #warning "Note: Auto-assigned I_DIAG_PIN to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _XDIAG_ - #warning "Note: Auto-assigned I_DIAG_PIN to X_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _YDIAG_ - #warning "Note: Auto-assigned I_DIAG_PIN to Y_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _ZDIAG_ - #warning "Note: Auto-assigned I_DIAG_PIN to Z_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _E0DIAG_ - #warning "Note: Auto-assigned I_DIAG_PIN to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _E1DIAG_ - #warning "Note: Auto-assigned I_DIAG_PIN to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _E2DIAG_ - #warning "Note: Auto-assigned I_DIAG_PIN to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _E3DIAG_ - #warning "Note: Auto-assigned I_DIAG_PIN to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _E4DIAG_ - #warning "Note: Auto-assigned I_DIAG_PIN to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _E5DIAG_ - #warning "Note: Auto-assigned I_DIAG_PIN to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _E6DIAG_ - #warning "Note: Auto-assigned I_DIAG_PIN to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif I_USE_ENDSTOP == _E7DIAG_ - #warning "Note: Auto-assigned I_DIAG_PIN to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #if I_STOP_PIN == X_MIN_PIN + #warning "Note: Auto-assigned I sensorless endstop to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == X_MAX_PIN + #warning "Note: Auto-assigned I sensorless endstop to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == X_STOP_PIN + #warning "Note: Auto-assigned I sensorless endstop to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == Y_MIN_PIN + #warning "Note: Auto-assigned I sensorless endstop to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == Y_MAX_PIN + #warning "Note: Auto-assigned I sensorless endstop to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == Y_STOP_PIN + #warning "Note: Auto-assigned I sensorless endstop to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == Z_MIN_PIN + #warning "Note: Auto-assigned I sensorless endstop to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == Z_MAX_PIN + #warning "Note: Auto-assigned I sensorless endstop to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == Z_STOP_PIN + #warning "Note: Auto-assigned I sensorless endstop to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == E0_DIAG_PIN + #warning "Note: Auto-assigned I sensorless endstop to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == E1_DIAG_PIN + #warning "Note: Auto-assigned I sensorless endstop to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == E2_DIAG_PIN + #warning "Note: Auto-assigned I sensorless endstop to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == E3_DIAG_PIN + #warning "Note: Auto-assigned I sensorless endstop to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == E4_DIAG_PIN + #warning "Note: Auto-assigned I sensorless endstop to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == E5_DIAG_PIN + #warning "Note: Auto-assigned I sensorless endstop to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == E6_DIAG_PIN + #warning "Note: Auto-assigned I sensorless endstop to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif I_STOP_PIN == E7_DIAG_PIN + #warning "Note: Auto-assigned I sensorless endstop to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #endif #if AUTO_ASSIGNED_J_STEPPER @@ -443,46 +407,40 @@ #warning "Note: Auto-assigned J_MS3_PIN to an unused En_MS3_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #if AUTO_ASSIGNED_J_DIAG - #if J_USE_ENDSTOP == _XMIN_ - #warning "Note: Auto-assigned J_DIAG_PIN to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _XMAX_ - #warning "Note: Auto-assigned J_DIAG_PIN to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _XSTOP_ - #warning "Note: Auto-assigned J_DIAG_PIN to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _YMIN_ - #warning "Note: Auto-assigned J_DIAG_PIN to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _YMAX_ - #warning "Note: Auto-assigned J_DIAG_PIN to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _YSTOP_ - #warning "Note: Auto-assigned J_DIAG_PIN to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _ZMIN_ - #warning "Note: Auto-assigned J_DIAG_PIN to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _ZMAX_ - #warning "Note: Auto-assigned J_DIAG_PIN to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _ZSTOP_ - #warning "Note: Auto-assigned J_DIAG_PIN to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _XDIAG_ - #warning "Note: Auto-assigned J_DIAG_PIN to X_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _YDIAG_ - #warning "Note: Auto-assigned J_DIAG_PIN to Y_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _ZDIAG_ - #warning "Note: Auto-assigned J_DIAG_PIN to Z_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _E0DIAG_ - #warning "Note: Auto-assigned J_DIAG_PIN to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _E1DIAG_ - #warning "Note: Auto-assigned J_DIAG_PIN to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _E2DIAG_ - #warning "Note: Auto-assigned J_DIAG_PIN to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _E3DIAG_ - #warning "Note: Auto-assigned J_DIAG_PIN to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _E4DIAG_ - #warning "Note: Auto-assigned J_DIAG_PIN to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _E5DIAG_ - #warning "Note: Auto-assigned J_DIAG_PIN to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _E6DIAG_ - #warning "Note: Auto-assigned J_DIAG_PIN to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif J_USE_ENDSTOP == _E7DIAG_ - #warning "Note: Auto-assigned J_DIAG_PIN to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #if J_STOP_PIN == X_MIN_PIN + #warning "Note: Auto-assigned J sensorless endstop to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == X_MAX_PIN + #warning "Note: Auto-assigned J sensorless endstop to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == X_STOP_PIN + #warning "Note: Auto-assigned J sensorless endstop to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == Y_MIN_PIN + #warning "Note: Auto-assigned J sensorless endstop to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == Y_MAX_PIN + #warning "Note: Auto-assigned J sensorless endstop to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == Y_STOP_PIN + #warning "Note: Auto-assigned J sensorless endstop to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == Z_MIN_PIN + #warning "Note: Auto-assigned J sensorless endstop to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == Z_MAX_PIN + #warning "Note: Auto-assigned J sensorless endstop to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == Z_STOP_PIN + #warning "Note: Auto-assigned J sensorless endstop to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == E0_DIAG_PIN + #warning "Note: Auto-assigned J sensorless endstop to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == E1_DIAG_PIN + #warning "Note: Auto-assigned J sensorless endstop to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == E2_DIAG_PIN + #warning "Note: Auto-assigned J sensorless endstop to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == E3_DIAG_PIN + #warning "Note: Auto-assigned J sensorless endstop to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == E4_DIAG_PIN + #warning "Note: Auto-assigned J sensorless endstop to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == E5_DIAG_PIN + #warning "Note: Auto-assigned J sensorless endstop to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == E6_DIAG_PIN + #warning "Note: Auto-assigned J sensorless endstop to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif J_STOP_PIN == E7_DIAG_PIN + #warning "Note: Auto-assigned J sensorless endstop to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #endif #if AUTO_ASSIGNED_K_STEPPER @@ -501,46 +459,40 @@ #warning "Note: Auto-assigned K_MS3_PIN to an unused En_MS3_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #if AUTO_ASSIGNED_K_DIAG - #if K_USE_ENDSTOP == _XMIN_ - #warning "Note: Auto-assigned K_DIAG_PIN to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _XMAX_ - #warning "Note: Auto-assigned K_DIAG_PIN to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _XSTOP_ - #warning "Note: Auto-assigned K_DIAG_PIN to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _YMIN_ - #warning "Note: Auto-assigned K_DIAG_PIN to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _YMAX_ - #warning "Note: Auto-assigned K_DIAG_PIN to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _YSTOP_ - #warning "Note: Auto-assigned K_DIAG_PIN to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _ZMIN_ - #warning "Note: Auto-assigned K_DIAG_PIN to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _ZMAX_ - #warning "Note: Auto-assigned K_DIAG_PIN to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _ZSTOP_ - #warning "Note: Auto-assigned K_DIAG_PIN to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _XDIAG_ - #warning "Note: Auto-assigned K_DIAG_PIN to X_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _YDIAG_ - #warning "Note: Auto-assigned K_DIAG_PIN to Y_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _ZDIAG_ - #warning "Note: Auto-assigned K_DIAG_PIN to Z_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _E0DIAG_ - #warning "Note: Auto-assigned K_DIAG_PIN to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _E1DIAG_ - #warning "Note: Auto-assigned K_DIAG_PIN to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _E2DIAG_ - #warning "Note: Auto-assigned K_DIAG_PIN to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _E3DIAG_ - #warning "Note: Auto-assigned K_DIAG_PIN to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _E4DIAG_ - #warning "Note: Auto-assigned K_DIAG_PIN to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _E5DIAG_ - #warning "Note: Auto-assigned K_DIAG_PIN to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _E6DIAG_ - #warning "Note: Auto-assigned K_DIAG_PIN to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _E7DIAG_ - #warning "Note: Auto-assigned K_DIAG_PIN to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #if K_STOP_PIN == X_MIN_PIN + #warning "Note: Auto-assigned K sensorless endstop to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == X_MAX_PIN + #warning "Note: Auto-assigned K sensorless endstop to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == X_STOP_PIN + #warning "Note: Auto-assigned K sensorless endstop to X_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == Y_MIN_PIN + #warning "Note: Auto-assigned K sensorless endstop to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == Y_MAX_PIN + #warning "Note: Auto-assigned K sensorless endstop to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == Y_STOP_PIN + #warning "Note: Auto-assigned K sensorless endstop to Y_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == Z_MIN_PIN + #warning "Note: Auto-assigned K sensorless endstop to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == Z_MAX_PIN + #warning "Note: Auto-assigned K sensorless endstop to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == Z_STOP_PIN + #warning "Note: Auto-assigned K sensorless endstop to Z_STOP_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == E0_DIAG_PIN + #warning "Note: Auto-assigned K sensorless endstop to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == E1_DIAG_PIN + #warning "Note: Auto-assigned K sensorless endstop to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == E2_DIAG_PIN + #warning "Note: Auto-assigned K sensorless endstop to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == E3_DIAG_PIN + #warning "Note: Auto-assigned K sensorless endstop to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == E4_DIAG_PIN + #warning "Note: Auto-assigned K sensorless endstop to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == E5_DIAG_PIN + #warning "Note: Auto-assigned K sensorless endstop to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == E6_DIAG_PIN + #warning "Note: Auto-assigned K sensorless endstop to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == E7_DIAG_PIN + #warning "Note: Auto-assigned K sensorless endstop to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #endif @@ -560,40 +512,34 @@ #warning "Note: Auto-assigned U_MS3_PIN to an unused En_MS3_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #if AUTO_ASSIGNED_U_DIAG - #if U_USE_ENDSTOP == _XMIN_ - #warning "Note: Auto-assigned U_DIAG_PIN to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _XMAX_ - #warning "Note: Auto-assigned U_DIAG_PIN to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif K_USE_ENDSTOP == _YMIN_ - #warning "Note: Auto-assigned U_DIAG_PIN to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _YMAX_ - #warning "Note: Auto-assigned U_DIAG_PIN to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _ZMIN_ - #warning "Note: Auto-assigned U_DIAG_PIN to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _ZMAX_ - #warning "Note: Auto-assigned U_DIAG_PIN to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _XDIAG_ - #warning "Note: Auto-assigned U_DIAG_PIN to X_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _YDIAG_ - #warning "Note: Auto-assigned U_DIAG_PIN to Y_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _ZDIAG_ - #warning "Note: Auto-assigned U_DIAG_PIN to Z_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _E0DIAG_ - #warning "Note: Auto-assigned U_DIAG_PIN to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _E1DIAG_ - #warning "Note: Auto-assigned U_DIAG_PIN to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _E2DIAG_ - #warning "Note: Auto-assigned U_DIAG_PIN to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _E3DIAG_ - #warning "Note: Auto-assigned U_DIAG_PIN to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _E4DIAG_ - #warning "Note: Auto-assigned U_DIAG_PIN to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _E5DIAG_ - #warning "Note: Auto-assigned U_DIAG_PIN to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _E6DIAG_ - #warning "Note: Auto-assigned U_DIAG_PIN to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif U_USE_ENDSTOP == _E7DIAG_ - #warning "Note: Auto-assigned U_DIAG_PIN to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #if U_STOP_PIN == X_MIN_PIN + #warning "Note: Auto-assigned U sensorless endstop to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif U_STOP_PIN == X_MAX_PIN + #warning "Note: Auto-assigned U sensorless endstop to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif K_STOP_PIN == Y_MIN_PIN + #warning "Note: Auto-assigned U sensorless endstop to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif U_STOP_PIN == Y_MAX_PIN + #warning "Note: Auto-assigned U sensorless endstop to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif U_STOP_PIN == Z_MIN_PIN + #warning "Note: Auto-assigned U sensorless endstop to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif U_STOP_PIN == Z_MAX_PIN + #warning "Note: Auto-assigned U sensorless endstop to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif U_STOP_PIN == E0_DIAG_PIN + #warning "Note: Auto-assigned U sensorless endstop to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif U_STOP_PIN == E1_DIAG_PIN + #warning "Note: Auto-assigned U sensorless endstop to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif U_STOP_PIN == E2_DIAG_PIN + #warning "Note: Auto-assigned U sensorless endstop to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif U_STOP_PIN == E3_DIAG_PIN + #warning "Note: Auto-assigned U sensorless endstop to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif U_STOP_PIN == E4_DIAG_PIN + #warning "Note: Auto-assigned U sensorless endstop to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif U_STOP_PIN == E5_DIAG_PIN + #warning "Note: Auto-assigned U sensorless endstop to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif U_STOP_PIN == E6_DIAG_PIN + #warning "Note: Auto-assigned U sensorless endstop to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif U_STOP_PIN == E7_DIAG_PIN + #warning "Note: Auto-assigned U sensorless endstop to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #endif #if AUTO_ASSIGNED_V_STEPPER @@ -612,40 +558,34 @@ #warning "Note: Auto-assigned V_MS3_PIN to an unused En_MS3_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #if AUTO_ASSIGNED_V_DIAG - #if V_USE_ENDSTOP == _XMIN_ - #warning "Note: Auto-assigned V_DIAG_PIN to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _XMAX_ - #warning "Note: Auto-assigned V_DIAG_PIN to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _YMIN_ - #warning "Note: Auto-assigned V_DIAG_PIN to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _YMAX_ - #warning "Note: Auto-assigned V_DIAG_PIN to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _ZMIN_ - #warning "Note: Auto-assigned V_DIAG_PIN to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _ZMAX_ - #warning "Note: Auto-assigned V_DIAG_PIN to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _XDIAG_ - #warning "Note: Auto-assigned V_DIAG_PIN to X_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _YDIAG_ - #warning "Note: Auto-assigned V_DIAG_PIN to Y_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _ZDIAG_ - #warning "Note: Auto-assigned V_DIAG_PIN to Z_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _E0DIAG_ - #warning "Note: Auto-assigned V_DIAG_PIN to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _E1DIAG_ - #warning "Note: Auto-assigned V_DIAG_PIN to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _E2DIAG_ - #warning "Note: Auto-assigned V_DIAG_PIN to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _E3DIAG_ - #warning "Note: Auto-assigned V_DIAG_PIN to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _E4DIAG_ - #warning "Note: Auto-assigned V_DIAG_PIN to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _E5DIAG_ - #warning "Note: Auto-assigned V_DIAG_PIN to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _E6DIAG_ - #warning "Note: Auto-assigned V_DIAG_PIN to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif V_USE_ENDSTOP == _E7DIAG_ - #warning "Note: Auto-assigned V_DIAG_PIN to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #if V_STOP_PIN == X_MIN_PIN + #warning "Note: Auto-assigned V sensorless endstop to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif V_STOP_PIN == X_MAX_PIN + #warning "Note: Auto-assigned V sensorless endstop to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif V_STOP_PIN == Y_MIN_PIN + #warning "Note: Auto-assigned V sensorless endstop to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif V_STOP_PIN == Y_MAX_PIN + #warning "Note: Auto-assigned V sensorless endstop to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif V_STOP_PIN == Z_MIN_PIN + #warning "Note: Auto-assigned V sensorless endstop to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif V_STOP_PIN == Z_MAX_PIN + #warning "Note: Auto-assigned V sensorless endstop to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif V_STOP_PIN == E0_DIAG_PIN + #warning "Note: Auto-assigned V sensorless endstop to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif V_STOP_PIN == E1_DIAG_PIN + #warning "Note: Auto-assigned V sensorless endstop to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif V_STOP_PIN == E2_DIAG_PIN + #warning "Note: Auto-assigned V sensorless endstop to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif V_STOP_PIN == E3_DIAG_PIN + #warning "Note: Auto-assigned V sensorless endstop to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif V_STOP_PIN == E4_DIAG_PIN + #warning "Note: Auto-assigned V sensorless endstop to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif V_STOP_PIN == E5_DIAG_PIN + #warning "Note: Auto-assigned V sensorless endstop to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif V_STOP_PIN == E6_DIAG_PIN + #warning "Note: Auto-assigned V sensorless endstop to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif V_STOP_PIN == E7_DIAG_PIN + #warning "Note: Auto-assigned V sensorless endstop to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #endif #if AUTO_ASSIGNED_W_STEPPER @@ -664,40 +604,34 @@ #warning "Note: Auto-assigned W_MS3_PIN to an unused En_MS3_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #if AUTO_ASSIGNED_W_DIAG - #if W_USE_ENDSTOP == _XMIN_ - #warning "Note: Auto-assigned W_DIAG_PIN to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _XMAX_ - #warning "Note: Auto-assigned W_DIAG_PIN to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _YMIN_ - #warning "Note: Auto-assigned W_DIAG_PIN to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _YMAX_ - #warning "Note: Auto-assigned W_DIAG_PIN to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _ZMIN_ - #warning "Note: Auto-assigned W_DIAG_PIN to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _ZMAX_ - #warning "Note: Auto-assigned W_DIAG_PIN to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _XDIAG_ - #warning "Note: Auto-assigned W_DIAG_PIN to X_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _YDIAG_ - #warning "Note: Auto-assigned W_DIAG_PIN to Y_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _ZDIAG_ - #warning "Note: Auto-assigned W_DIAG_PIN to Z_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _E0DIAG_ - #warning "Note: Auto-assigned W_DIAG_PIN to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _E1DIAG_ - #warning "Note: Auto-assigned W_DIAG_PIN to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _E2DIAG_ - #warning "Note: Auto-assigned W_DIAG_PIN to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _E3DIAG_ - #warning "Note: Auto-assigned W_DIAG_PIN to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _E4DIAG_ - #warning "Note: Auto-assigned W_DIAG_PIN to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _E5DIAG_ - #warning "Note: Auto-assigned W_DIAG_PIN to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _E6DIAG_ - #warning "Note: Auto-assigned W_DIAG_PIN to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" - #elif W_USE_ENDSTOP == _E7DIAG_ - #warning "Note: Auto-assigned W_DIAG_PIN to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #if W_STOP_PIN == X_MIN_PIN + #warning "Note: Auto-assigned W sensorless endstop to X_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif W_STOP_PIN == X_MAX_PIN + #warning "Note: Auto-assigned W sensorless endstop to X_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif W_STOP_PIN == Y_MIN_PIN + #warning "Note: Auto-assigned W sensorless endstop to Y_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif W_STOP_PIN == Y_MAX_PIN + #warning "Note: Auto-assigned W sensorless endstop to Y_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif W_STOP_PIN == Z_MIN_PIN + #warning "Note: Auto-assigned W sensorless endstop to Z_MIN_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif W_STOP_PIN == Z_MAX_PIN + #warning "Note: Auto-assigned W sensorless endstop to Z_MAX_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif W_STOP_PIN == E0_DIAG_PIN + #warning "Note: Auto-assigned W sensorless endstop to E0_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif W_STOP_PIN == E1_DIAG_PIN + #warning "Note: Auto-assigned W sensorless endstop to E1_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif W_STOP_PIN == E2_DIAG_PIN + #warning "Note: Auto-assigned W sensorless endstop to E2_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif W_STOP_PIN == E3_DIAG_PIN + #warning "Note: Auto-assigned W sensorless endstop to E3_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif W_STOP_PIN == E4_DIAG_PIN + #warning "Note: Auto-assigned W sensorless endstop to E4_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif W_STOP_PIN == E5_DIAG_PIN + #warning "Note: Auto-assigned W sensorless endstop to E5_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif W_STOP_PIN == E6_DIAG_PIN + #warning "Note: Auto-assigned W sensorless endstop to E6_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" + #elif W_STOP_PIN == E7_DIAG_PIN + #warning "Note: Auto-assigned W sensorless endstop to E7_DIAG_PIN. (Define NO_AUTO_ASSIGN_WARNING to suppress this warning.)" #endif #endif diff --git a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp index 96ee73267833..055f26c05830 100644 --- a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp +++ b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp @@ -72,9 +72,9 @@ void ESDiagClass::Draw() { DWINUI::Draw_Button(BTN_Continue, 86, 250); DWINUI::cursor.y = 80; #define ES_LABEL(S) draw_es_label(F(STR_##S)) - TERN_(HAS_X_MIN, ES_LABEL(X_MIN)); TERN_(HAS_X_MAX, ES_LABEL(X_MAX)); - TERN_(HAS_Y_MIN, ES_LABEL(Y_MIN)); TERN_(HAS_Y_MAX, ES_LABEL(Y_MAX)); - TERN_(HAS_Z_MIN, ES_LABEL(Z_MIN)); TERN_(HAS_Z_MAX, ES_LABEL(Z_MAX)); + TERN_(HAS_X_MIN, ES_LABEL(X_MIN)); TERN_(HAS_X_MAX, ES_LABEL(X_MAX)); + TERN_(HAS_Y_MIN, ES_LABEL(Y_MIN)); TERN_(HAS_Y_MAX, ES_LABEL(Y_MAX)); + TERN_(HAS_Z_MIN_PIN, ES_LABEL(Z_MIN)); TERN_(HAS_Z_MAX, ES_LABEL(Z_MAX)); TERN_(HAS_FILAMENT_SENSOR, draw_es_label(F(STR_FILAMENT))); Update(); } @@ -82,9 +82,9 @@ void ESDiagClass::Draw() { void ESDiagClass::Update() { DWINUI::cursor.y = 80; #define ES_REPORT(S) draw_es_state(READ(S##_PIN) == S##_ENDSTOP_HIT_STATE) - TERN_(HAS_X_MIN, ES_REPORT(X_MIN)); TERN_(HAS_X_MAX, ES_REPORT(X_MAX)); - TERN_(HAS_Y_MIN, ES_REPORT(Y_MIN)); TERN_(HAS_Y_MAX, ES_REPORT(Y_MAX)); - TERN_(HAS_Z_MIN, ES_REPORT(Z_MIN)); TERN_(HAS_Z_MAX, ES_REPORT(Z_MAX)); + TERN_(HAS_X_MIN, ES_REPORT(X_MIN)); TERN_(HAS_X_MAX, ES_REPORT(X_MAX)); + TERN_(HAS_Y_MIN, ES_REPORT(Y_MIN)); TERN_(HAS_Y_MAX, ES_REPORT(Y_MAX)); + TERN_(HAS_Z_MIN_PIN, ES_REPORT(Z_MIN)); TERN_(HAS_Z_MAX, ES_REPORT(Z_MAX)); TERN_(HAS_FILAMENT_SENSOR, draw_es_state(READ(FIL_RUNOUT1_PIN) != FIL_RUNOUT1_STATE)); DWIN_UpdateLCD(); } diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp index b52904fe8f49..46d4998591ae 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp @@ -79,7 +79,7 @@ void EndstopStatesScreen::onRedraw(draw_mode_t) { #else PIN_DISABLED(3, 3, PSTR(STR_Y_MIN), Y_MIN) #endif - #if HAS_Z_MIN + #if HAS_Z_MIN_PIN PIN_ENABLED (5, 3, PSTR(STR_Z_MIN), Z_MIN, Z_MIN_ENDSTOP_HIT_STATE) #else PIN_DISABLED(5, 3, PSTR(STR_Z_MIN), Z_MIN) diff --git a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp index 45a54f6177b9..20f069aa49da 100644 --- a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp +++ b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp @@ -87,12 +87,12 @@ #if PIN_EXISTS(MT_DET_2) mt_det2_sta = (READ(MT_DET_2_PIN) == LOW); #endif - TERN_(HAS_X_ENDSTOP, endstopx1_sta = ESTATE(TERN(HAS_X_MIN, X_MIN, X_MAX))); - TERN_(HAS_X2_ENDSTOP, endstopx2_sta = ESTATE(TERN(HAS_X2_MIN, X2_MIN, X2_MAX))); - TERN_(HAS_Y_ENDSTOP, endstopy1_sta = ESTATE(TERN(HAS_Y_MIN, Y_MIN, Y_MAX))); - TERN_(HAS_Y2_ENDSTOP, endstopy2_sta = ESTATE(TERN(HAS_Y2_MIN, Y2_MIN, Y2_MAX))); - TERN_(HAS_Z_ENDSTOP, endstopz1_sta = ESTATE(TERN(HAS_Z_MIN, Z_MIN, Z_MAX))); - TERN_(HAS_Z2_ENDSTOP, endstopz2_sta = ESTATE(TERN(HAS_Z2_MIN, Z2_MIN, Z2_MAX))); + TERN_(HAS_X_ENDSTOP, endstopx1_sta = ESTATE(TERN(HAS_X_MIN, X_MIN, X_MAX))); + TERN_(HAS_X2_ENDSTOP, endstopx2_sta = ESTATE(TERN(HAS_X2_MIN, X2_MIN, X2_MAX))); + TERN_(HAS_Y_ENDSTOP, endstopy1_sta = ESTATE(TERN(HAS_Y_MIN, Y_MIN, Y_MAX))); + TERN_(HAS_Y2_ENDSTOP, endstopy2_sta = ESTATE(TERN(HAS_Y2_MIN, Y2_MIN, Y2_MAX))); + TERN_(HAS_Z_ENDSTOP, endstopz1_sta = ESTATE(TERN(HAS_Z_MIN_PIN, Z_MIN, Z_MAX))); + TERN_(HAS_Z2_ENDSTOP, endstopz2_sta = ESTATE(TERN(HAS_Z2_MIN, Z2_MIN, Z2_MAX))); } void test_gpio_readlevel_H() { @@ -104,12 +104,12 @@ #if PIN_EXISTS(MT_DET_2) mt_det2_sta = (READ(MT_DET_2_PIN) == HIGH); #endif - TERN_(HAS_X_ENDSTOP, endstopx1_sta = !ESTATE(TERN(HAS_X_MIN, X_MIN, X_MAX))); - TERN_(HAS_X2_ENDSTOP, endstopx2_sta = !ESTATE(TERN(HAS_X2_MIN, X2_MIN, X2_MAX))); - TERN_(HAS_Y_ENDSTOP, endstopy1_sta = !ESTATE(TERN(HAS_Y_MIN, Y_MIN, Y_MAX))); - TERN_(HAS_Y2_ENDSTOP, endstopy2_sta = !ESTATE(TERN(HAS_Y2_MIN, Y2_MIN, Y2_MAX))); - TERN_(HAS_Z_ENDSTOP, endstopz1_sta = !ESTATE(TERN(HAS_Z_MIN, Z_MIN, Z_MAX))); - TERN_(HAS_Z2_ENDSTOP, endstopz2_sta = !ESTATE(TERN(HAS_Z2_MIN, Z2_MIN, Z2_MAX))); + TERN_(HAS_X_ENDSTOP, endstopx1_sta = !ESTATE(TERN(HAS_X_MIN, X_MIN, X_MAX))); + TERN_(HAS_X2_ENDSTOP, endstopx2_sta = !ESTATE(TERN(HAS_X2_MIN, X2_MIN, X2_MAX))); + TERN_(HAS_Y_ENDSTOP, endstopy1_sta = !ESTATE(TERN(HAS_Y_MIN, Y_MIN, Y_MAX))); + TERN_(HAS_Y2_ENDSTOP, endstopy2_sta = !ESTATE(TERN(HAS_Y2_MIN, Y2_MIN, Y2_MAX))); + TERN_(HAS_Z_ENDSTOP, endstopz1_sta = !ESTATE(TERN(HAS_Z_MIN_PIN, Z_MIN, Z_MAX))); + TERN_(HAS_Z2_ENDSTOP, endstopz2_sta = !ESTATE(TERN(HAS_Z2_MIN, Z2_MIN, Z2_MAX))); } #include "../../../libs/buzzer.h" diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index 233d84842522..ca231f1cb2be 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -134,7 +134,7 @@ void Endstops::init() { #if HAS_Y2_MAX _INIT_ENDSTOP(MAX,Y,2); #endif - #if HAS_Z_MIN + #if HAS_Z_MIN_PIN _INIT_ENDSTOP(MIN,Z,); #endif #if HAS_Z_MAX @@ -598,7 +598,9 @@ void Endstops::update() { #endif #if HAS_Z_MIN && NONE(Z_SPI_SENSORLESS, Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) - UPDATE_LIVE_STATE(Z, MIN); + #if HAS_Z_MIN_PIN + UPDATE_LIVE_STATE(Z, MIN); + #endif #if ENABLED(Z_MULTI_ENDSTOPS) #if HAS_Z2_MIN UPDATE_LIVE_STATE(Z2, MIN); @@ -1179,7 +1181,7 @@ void Endstops::update() { #if HAS_Y_MAX ES_GET_STATE(Y_MAX); #endif - #if HAS_Z_MIN + #if HAS_Z_MIN_PIN ES_GET_STATE(Z_MIN); #endif #if HAS_Z_MAX diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index 86a36c75801e..67ee0bd08d36 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -65,6 +65,57 @@ #define HAS_FREE_AUX2_PINS 1 #endif +// +// Check for additional used endstop pins +// +#ifndef X_MIN_PIN + #define X_MIN_PIN 1001 +#endif +#ifndef Y_MIN_PIN + #define Y_MIN_PIN 1002 +#endif +#ifndef Z_MIN_PIN + #define Z_MIN_PIN 1003 +#endif +#ifndef X_MAX_PIN + #define X_MAX_PIN 1004 +#endif +#ifndef Y_MAX_PIN + #define Y_MAX_PIN 1005 +#endif +#ifndef Z_MAX_PIN + #define Z_MAX_PIN 1006 +#endif +#define _ENDSTOP_IS_ANY(P) (HAS_EXTRA_ENDSTOPS && (X2_STOP_PIN == P || Y2_STOP_PIN == P || Z2_STOP_PIN == P || Z3_STOP_PIN == P || Z4_STOP_PIN == P)) +#if ENABLED(DUAL_X_CARRIAGE) || _ENDSTOP_IS_ANY(X_MIN_PIN) || _ENDSTOP_IS_ANY(X_MAX_PIN) + #define NEEDS_X_MINMAX 1 +#endif +#if _ENDSTOP_IS_ANY(Y_MIN_PIN) || _ENDSTOP_IS_ANY(Y_MAX_PIN) + #define NEEDS_Y_MINMAX 1 +#endif +#if _ENDSTOP_IS_ANY(Z_MIN_PIN) || _ENDSTOP_IS_ANY(Z_MAX_PIN) || BOTH(Z_HOME_TO_MAX, Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) + #define NEEDS_Z_MINMAX 1 +#endif +#undef _ENDSTOP_IS_ANY +#if X_MIN_PIN > 1000 + #undef X_MIN_PIN +#endif +#if Y_MIN_PIN > 1000 + #undef Y_MIN_PIN +#endif +#if Z_MIN_PIN > 1000 + #undef Z_MIN_PIN +#endif +#if X_MAX_PIN > 1000 + #undef X_MAX_PIN +#endif +#if Y_MAX_PIN > 1000 + #undef Y_MAX_PIN +#endif +#if Z_MAX_PIN > 1000 + #undef Z_MAX_PIN +#endif + // Test the target within the included pins file #ifdef __MARLIN_DEPS__ #define NOT_TARGET(V...) 0 diff --git a/Marlin/src/pins/pins_postprocess.h b/Marlin/src/pins/pins_postprocess.h index 9d917cec297a..daf6c03aa321 100644 --- a/Marlin/src/pins/pins_postprocess.h +++ b/Marlin/src/pins/pins_postprocess.h @@ -511,8 +511,8 @@ #else #define X_STOP_PIN X_MAX_PIN #endif - #if !defined(X2_USE_ENDSTOP) && ENABLED(X_DUAL_ENDSTOPS) && PIN_EXISTS(X_STOP) - #define X2_USE_ENDSTOP _XSTOP_ + #if !defined(X2_STOP_PIN) && ENABLED(X_DUAL_ENDSTOPS) && PIN_EXISTS(X_STOP) + #define X2_STOP_PIN X_STOP_PIN #endif #endif @@ -528,8 +528,8 @@ #else #define Y_STOP_PIN Y_MAX_PIN #endif - #if !defined(Y2_USE_ENDSTOP) && ENABLED(Y_DUAL_ENDSTOPS) && PIN_EXISTS(Y_STOP) - #define Y2_USE_ENDSTOP _YSTOP_ + #if !defined(Y2_STOP_PIN) && ENABLED(Y_DUAL_ENDSTOPS) && PIN_EXISTS(Y_STOP) + #define Y2_STOP_PIN Y_STOP_PIN #endif #endif @@ -546,14 +546,14 @@ #define Z_STOP_PIN Z_MAX_PIN #endif #if ENABLED(Z_MULTI_ENDSTOPS) && PIN_EXISTS(Z_STOP) - #ifndef Z2_USE_ENDSTOP - #define Z2_USE_ENDSTOP _ZSTOP_ + #ifndef Z2_STOP_PIN + #define Z2_STOP_PIN Z_STOP_PIN #endif - #if NUM_Z_STEPPERS >= 3 && !defined(Z3_USE_ENDSTOP) - #define Z3_USE_ENDSTOP _ZSTOP_ + #if NUM_Z_STEPPERS >= 3 && !defined(Z3_STOP_PIN) + #define Z3_STOP_PIN Z_STOP_PIN #endif - #if NUM_Z_STEPPERS >= 4 && !defined(Z4_USE_ENDSTOP) - #define Z4_USE_ENDSTOP _ZSTOP_ + #if NUM_Z_STEPPERS >= 4 && !defined(Z4_STOP_PIN) + #define Z4_STOP_PIN Z_STOP_PIN #endif #endif #endif @@ -672,6 +672,10 @@ #endif #endif +// Utility macros to define extra axis pins in terms of E pins +#define __EPIN(p,q) E##p##_##q##_PIN +#define _EPIN(p,q) __EPIN(p,q) + /** * Auto-Assignment for Dual X, Dual Y, Multi-Z Steppers * @@ -680,12 +684,16 @@ * overridden in Configuration.h or Configuration_adv.h. */ -#define __PEXI(p,q) PIN_EXISTS(E##p##_##q) -#define _PEXI(p,q) __PEXI(p,q) -#define __EPIN(p,q) E##p##_##q##_PIN -#define _EPIN(p,q) __EPIN(p,q) +#define _E_DIAG_EXISTS(p) PIN_EXISTS(E##p##_DIAG) +#define E_DIAG_EXISTS(p) _E_DIAG_EXISTS(p) + +/** + * For endstop auto-assignment some pins files pre-assign MIN/MAX endstops + * to DIAG pins so those should be preferred over just using En_DIAG_PIN. + * DIAG_REMAPPED(X2, X_MIN) ... PIN_EXISTS(X_MIN) && E(X2_E_INDEX)_DIAG_PIN == X_MIN_PIN + */ #define DIAG_REMAPPED(p,q) (PIN_EXISTS(q) && _EPIN(p##_E_INDEX, DIAG) == q##_PIN) -#define _En_DIAG_(p) _E##p##_DIAG_ +#define _En_DIAG_PIN(p) E##p##_DIAG_PIN // The E0/E1 steppers are always used for Dual E #if ENABLED(E_DUAL_STEPPER_DRIVERS) @@ -697,7 +705,8 @@ #define X2_E_INDEX E_STEPPERS #endif -#if HAS_X2_STEPPER && !defined(X2_DIAG_PIN) && !defined(X2_STEP_PIN) && !PIN_EXISTS(X2_CS_PIN) +// X2 auto-assignment will use up an E stepper, but not if it's chained +#if HAS_X2_STEPPER && !defined(X2_STEP_PIN) && !PIN_EXISTS(X2_CS_PIN) #define Y2_E_INDEX INCREMENT(X2_E_INDEX) #else #define Y2_E_INDEX X2_E_INDEX @@ -751,21 +760,21 @@ // // Auto-assign pins for stallGuard sensorless homing // - #if !defined(X2_DIAG_PIN) && !defined(X2_USE_ENDSTOP) && defined(X2_STALL_SENSITIVITY) && ENABLED(X_DUAL_ENDSTOPS) && _PEXI(X2_E_INDEX, DIAG) + #if !defined(X2_STOP_PIN) && defined(X2_STALL_SENSITIVITY) && ENABLED(X_DUAL_ENDSTOPS) && E_DIAG_EXISTS(X2_E_INDEX) #if DIAG_REMAPPED(X2, X_MIN) // If already remapped in the pins file... - #define X2_USE_ENDSTOP _XMIN_ + #define X2_STOP_PIN X_MIN_PIN #elif DIAG_REMAPPED(X2, Y_MIN) - #define X2_USE_ENDSTOP _YMIN_ + #define X2_STOP_PIN Y_MIN_PIN #elif DIAG_REMAPPED(X2, Z_MIN) - #define X2_USE_ENDSTOP _ZMIN_ + #define X2_STOP_PIN Z_MIN_PIN #elif DIAG_REMAPPED(X2, X_MAX) - #define X2_USE_ENDSTOP _XMAX_ + #define X2_STOP_PIN X_MAX_PIN #elif DIAG_REMAPPED(X2, Y_MAX) - #define X2_USE_ENDSTOP _YMAX_ + #define X2_STOP_PIN Y_MAX_PIN #elif DIAG_REMAPPED(X2, Z_MAX) - #define X2_USE_ENDSTOP _ZMAX_ + #define X2_STOP_PIN Z_MAX_PIN #else // Otherwise pick the next free En_DIAG_PIN directly - #define X2_USE_ENDSTOP _En_DIAG_(X2_E_INDEX) + #define X2_STOP_PIN _En_DIAG_PIN(X2_E_INDEX) #endif #define AUTO_ASSIGNED_X2_DIAG 1 #endif @@ -784,7 +793,8 @@ #define X2_MS3_PIN -1 #endif -#if HAS_DUAL_Y_STEPPERS && !defined(Y2_DIAG_PIN) && !defined(Y2_STEP_PIN) && !PIN_EXISTS(Y2_CS_PIN) +// Y2 auto-assignment will use up an E stepper, but not if it's chained +#if HAS_DUAL_Y_STEPPERS && !defined(Y2_STEP_PIN) && !PIN_EXISTS(Y2_CS_PIN) #define Z2_E_INDEX INCREMENT(Y2_E_INDEX) #else #define Z2_E_INDEX Y2_E_INDEX @@ -835,21 +845,21 @@ #endif #endif // Auto-assign pins for stallGuard sensorless homing - #if !defined(Y2_DIAG_PIN) && !defined(Y2_USE_ENDSTOP) && defined(Y2_STALL_SENSITIVITY) && ENABLED(Y_DUAL_ENDSTOPS) && _PEXI(Y2_E_INDEX, DIAG) + #if !defined(Y2_STOP_PIN) && defined(Y2_STALL_SENSITIVITY) && ENABLED(Y_DUAL_ENDSTOPS) && E_DIAG_EXISTS(Y2_E_INDEX) #if DIAG_REMAPPED(Y2, X_MIN) - #define Y2_USE_ENDSTOP _XMIN_ + #define Y2_STOP_PIN X_MIN_PIN #elif DIAG_REMAPPED(Y2, Y_MIN) - #define Y2_USE_ENDSTOP _YMIN_ + #define Y2_STOP_PIN Y_MIN_PIN #elif DIAG_REMAPPED(Y2, Z_MIN) - #define Y2_USE_ENDSTOP _ZMIN_ + #define Y2_STOP_PIN Z_MIN_PIN #elif DIAG_REMAPPED(Y2, X_MAX) - #define Y2_USE_ENDSTOP _XMAX_ + #define Y2_STOP_PIN X_MAX_PIN #elif DIAG_REMAPPED(Y2, Y_MAX) - #define Y2_USE_ENDSTOP _YMAX_ + #define Y2_STOP_PIN Y_MAX_PIN #elif DIAG_REMAPPED(Y2, Z_MAX) - #define Y2_USE_ENDSTOP _ZMAX_ + #define Y2_STOP_PIN Z_MAX_PIN #else - #define Y2_USE_ENDSTOP _En_DIAG_(Y2_E_INDEX) + #define Y2_STOP_PIN _En_DIAG_PIN(Y2_E_INDEX) #endif #define AUTO_ASSIGNED_Y2_DIAG 1 #endif @@ -868,7 +878,8 @@ #define Y2_MS3_PIN -1 #endif -#if NUM_Z_STEPPERS >= 2 && !defined(Z2_DIAG_PIN) && !defined(Z2_STEP_PIN) && !PIN_EXISTS(Z2_CS_PIN) +// Z2 auto-assignment will use up an E stepper, but not if it's chained +#if NUM_Z_STEPPERS >= 2 && !defined(Z2_STEP_PIN) && !PIN_EXISTS(Z2_CS_PIN) #define Z3_E_INDEX INCREMENT(Z2_E_INDEX) #else #define Z3_E_INDEX Z2_E_INDEX @@ -919,21 +930,21 @@ #endif #endif // Auto-assign pins for stallGuard sensorless homing - #if !defined(Z2_DIAG_PIN) && !defined(Z2_USE_ENDSTOP) && defined(Z2_STALL_SENSITIVITY) && ENABLED(Z_MULTI_ENDSTOPS) && _PEXI(Z2_E_INDEX, DIAG) + #if !defined(Z2_STOP_PIN) && defined(Z2_STALL_SENSITIVITY) && ENABLED(Z_MULTI_ENDSTOPS) && E_DIAG_EXISTS(Z2_E_INDEX) #if DIAG_REMAPPED(Z2, X_MIN) - #define Z2_USE_ENDSTOP _XMIN_ + #define Z2_STOP_PIN X_MIN_PIN #elif DIAG_REMAPPED(Z2, Y_MIN) - #define Z2_USE_ENDSTOP _YMIN_ + #define Z2_STOP_PIN Y_MIN_PIN #elif DIAG_REMAPPED(Z2, Z_MIN) - #define Z2_USE_ENDSTOP _ZMIN_ + #define Z2_STOP_PIN Z_MIN_PIN #elif DIAG_REMAPPED(Z2, X_MAX) - #define Z2_USE_ENDSTOP _XMAX_ + #define Z2_STOP_PIN X_MAX_PIN #elif DIAG_REMAPPED(Z2, Y_MAX) - #define Z2_USE_ENDSTOP _YMAX_ + #define Z2_STOP_PIN Y_MAX_PIN #elif DIAG_REMAPPED(Z2, Z_MAX) - #define Z2_USE_ENDSTOP _ZMAX_ + #define Z2_STOP_PIN Z_MAX_PIN #else - #define Z2_USE_ENDSTOP _En_DIAG_(Z2_E_INDEX) + #define Z2_STOP_PIN _En_DIAG_PIN(Z2_E_INDEX) #endif #define AUTO_ASSIGNED_Z2_DIAG 1 #endif @@ -952,7 +963,8 @@ #define Z2_MS3_PIN -1 #endif -#if NUM_Z_STEPPERS >= 3 && !defined(Z3_DIAG_PIN) && !defined(Z3_STEP_PIN) && !PIN_EXISTS(Z3_CS_PIN) +// Z3 auto-assignment will use up an E stepper, but not if it's chained +#if NUM_Z_STEPPERS >= 3 && !defined(Z3_STEP_PIN) && !PIN_EXISTS(Z3_CS_PIN) #define Z4_E_INDEX INCREMENT(Z3_E_INDEX) #else #define Z4_E_INDEX Z3_E_INDEX @@ -1003,21 +1015,21 @@ #endif #endif // Auto-assign pins for stallGuard sensorless homing - #if !defined(Z3_DIAG_PIN) && !defined(Z3_USE_ENDSTOP) && defined(Z3_STALL_SENSITIVITY) && ENABLED(Z_MULTI_ENDSTOPS) && _PEXI(Z3_E_INDEX, DIAG) + #if !defined(Z3_STOP_PIN) && defined(Z3_STALL_SENSITIVITY) && ENABLED(Z_MULTI_ENDSTOPS) && E_DIAG_EXISTS(Z3_E_INDEX) #if DIAG_REMAPPED(Z3, X_MIN) - #define Z3_USE_ENDSTOP _XMIN_ + #define Z3_STOP_PIN X_MIN_PIN #elif DIAG_REMAPPED(Z3, Y_MIN) - #define Z3_USE_ENDSTOP _YMIN_ + #define Z3_STOP_PIN Y_MIN_PIN #elif DIAG_REMAPPED(Z3, Z_MIN) - #define Z3_USE_ENDSTOP _ZMIN_ + #define Z3_STOP_PIN Z_MIN_PIN #elif DIAG_REMAPPED(Z3, X_MAX) - #define Z3_USE_ENDSTOP _XMAX_ + #define Z3_STOP_PIN X_MAX_PIN #elif DIAG_REMAPPED(Z3, Y_MAX) - #define Z3_USE_ENDSTOP _YMAX_ + #define Z3_STOP_PIN Y_MAX_PIN #elif DIAG_REMAPPED(Z3, Z_MAX) - #define Z3_USE_ENDSTOP _ZMAX_ + #define Z3_STOP_PIN Z_MAX_PIN #else - #define Z3_USE_ENDSTOP _En_DIAG_(Z3_E_INDEX) + #define Z3_STOP_PIN _En_DIAG_PIN(Z3_E_INDEX) #endif #define AUTO_ASSIGNED_Z3_DIAG 1 #endif @@ -1036,7 +1048,8 @@ #define Z3_MS3_PIN -1 #endif -#if NUM_Z_STEPPERS >= 4 && !defined(Z4_DIAG_PIN) && !defined(Z4_STEP_PIN) && !PIN_EXISTS(Z4_CS_PIN) +// Z4 auto-assignment will use up an E stepper, but not if it's chained +#if NUM_Z_STEPPERS >= 4 && !defined(Z4_STEP_PIN) && !PIN_EXISTS(Z4_CS_PIN) #define I_E_INDEX INCREMENT(Z4_E_INDEX) #else #define I_E_INDEX Z4_E_INDEX @@ -1087,21 +1100,21 @@ #endif #endif // Auto-assign pins for stallGuard sensorless homing - #if !defined(Z4_DIAG_PIN) && !defined(Z4_USE_ENDSTOP) && defined(Z4_STALL_SENSITIVITY) && ENABLED(Z_MULTI_ENDSTOPS) && _PEXI(Z4_E_INDEX, DIAG) + #if !defined(Z4_STOP_PIN) && defined(Z4_STALL_SENSITIVITY) && ENABLED(Z_MULTI_ENDSTOPS) && E_DIAG_EXISTS(Z4_E_INDEX) #if DIAG_REMAPPED(Z4, X_MIN) - #define Z4_USE_ENDSTOP _XMIN_ + #define Z4_STOP_PIN X_MIN_PIN #elif DIAG_REMAPPED(Z4, Y_MIN) - #define Z4_USE_ENDSTOP _YMIN_ + #define Z4_STOP_PIN Y_MIN_PIN #elif DIAG_REMAPPED(Z4, Z_MIN) - #define Z4_USE_ENDSTOP _ZMIN_ + #define Z4_STOP_PIN Z_MIN_PIN #elif DIAG_REMAPPED(Z4, X_MAX) - #define Z4_USE_ENDSTOP _XMAX_ + #define Z4_STOP_PIN X_MAX_PIN #elif DIAG_REMAPPED(Z4, Y_MAX) - #define Z4_USE_ENDSTOP _YMAX_ + #define Z4_STOP_PIN Y_MAX_PIN #elif DIAG_REMAPPED(Z4, Z_MAX) - #define Z4_USE_ENDSTOP _ZMAX_ + #define Z4_STOP_PIN Z_MAX_PIN #else - #define Z4_USE_ENDSTOP _En_DIAG_(Z4_E_INDEX) + #define Z4_STOP_PIN _En_DIAG_PIN(Z4_E_INDEX) #endif #define AUTO_ASSIGNED_Z4_DIAG 1 #endif @@ -1120,7 +1133,8 @@ #define Z4_MS3_PIN -1 #endif -#if HAS_I_AXIS && !defined(I_DIAG_PIN) && !defined(I_STEP_PIN) && !PIN_EXISTS(I_CS_PIN) +// I auto-assignment will use up an E stepper, but not if it's chained +#if HAS_I_AXIS && !defined(I_STEP_PIN) && !PIN_EXISTS(I_CS_PIN) #define J_E_INDEX INCREMENT(I_E_INDEX) #else #define J_E_INDEX I_E_INDEX @@ -1171,21 +1185,21 @@ #endif #endif // Auto-assign pins for stallGuard sensorless homing - #if !defined(I_DIAG_PIN) && !defined(I_USE_ENDSTOP) && defined(I_STALL_SENSITIVITY) && _PEXI(I_E_INDEX, DIAG) + #if !defined(I_STOP_PIN) && defined(I_STALL_SENSITIVITY) && E_DIAG_EXISTS(I_E_INDEX) #if DIAG_REMAPPED(I, X_MIN) - #define I_USE_ENDSTOP _XMIN_ + #define I_STOP_PIN X_MIN_PIN #elif DIAG_REMAPPED(I, Y_MIN) - #define I_USE_ENDSTOP _YMIN_ + #define I_STOP_PIN Y_MIN_PIN #elif DIAG_REMAPPED(I, Z_MIN) - #define I_USE_ENDSTOP _ZMIN_ + #define I_STOP_PIN Z_MIN_PIN #elif DIAG_REMAPPED(I, X_MAX) - #define I_USE_ENDSTOP _XMAX_ + #define I_STOP_PIN X_MAX_PIN #elif DIAG_REMAPPED(I, Y_MAX) - #define I_USE_ENDSTOP _YMAX_ + #define I_STOP_PIN Y_MAX_PIN #elif DIAG_REMAPPED(I, Z_MAX) - #define I_USE_ENDSTOP _ZMAX_ + #define I_STOP_PIN Z_MAX_PIN #else - #define I_USE_ENDSTOP _En_DIAG_(I_E_INDEX) + #define I_STOP_PIN _En_DIAG_PIN(I_E_INDEX) #endif #define AUTO_ASSIGNED_I_DIAG 1 #endif @@ -1204,7 +1218,8 @@ #define I_MS3_PIN -1 #endif -#if HAS_J_AXIS && !defined(J_DIAG_PIN) && !defined(J_STEP_PIN) && !PIN_EXISTS(J_CS_PIN) +// J auto-assignment will use up an E stepper, but not if it's chained +#if HAS_J_AXIS && !defined(J_STEP_PIN) && !PIN_EXISTS(J_CS_PIN) #define K_E_INDEX INCREMENT(J_E_INDEX) #else #define K_E_INDEX J_E_INDEX @@ -1255,21 +1270,21 @@ #endif #endif // Auto-assign pins for stallGuard sensorless homing - #if !defined(J_DIAG_PIN) && !defined(J_USE_ENDSTOP) && defined(J_STALL_SENSITIVITY) && _PEXI(J_E_INDEX, DIAG) + #if !defined(J_STOP_PIN) && defined(J_STALL_SENSITIVITY) && E_DIAG_EXISTS(J_E_INDEX) #if DIAG_REMAPPED(J, X_MIN) - #define J_USE_ENDSTOP _XMIN_ + #define J_STOP_PIN X_MIN_PIN #elif DIAG_REMAPPED(J, Y_MIN) - #define J_USE_ENDSTOP _YMIN_ + #define J_STOP_PIN Y_MIN_PIN #elif DIAG_REMAPPED(J, Z_MIN) - #define J_USE_ENDSTOP _ZMIN_ + #define J_STOP_PIN Z_MIN_PIN #elif DIAG_REMAPPED(J, X_MAX) - #define J_USE_ENDSTOP _XMAX_ + #define J_STOP_PIN X_MAX_PIN #elif DIAG_REMAPPED(J, Y_MAX) - #define J_USE_ENDSTOP _YMAX_ + #define J_STOP_PIN Y_MAX_PIN #elif DIAG_REMAPPED(I, Z_MAX) - #define J_USE_ENDSTOP _ZMAX_ + #define J_STOP_PIN Z_MAX_PIN #else - #define J_USE_ENDSTOP _En_DIAG_(J_E_INDEX) + #define J_STOP_PIN _En_DIAG_PIN(J_E_INDEX) #endif #define AUTO_ASSIGNED_J_DIAG 1 #endif @@ -1288,7 +1303,8 @@ #define J_MS3_PIN -1 #endif -#if HAS_K_AXIS && !defined(K_DIAG_PIN) && !defined(K_STEP_PIN) && !PIN_EXISTS(K_CS_PIN) +// K auto-assignment will use up an E stepper, but not if it's chained +#if HAS_K_AXIS && !defined(K_STEP_PIN) && !PIN_EXISTS(K_CS_PIN) #define U_E_INDEX INCREMENT(K_E_INDEX) #else #define U_E_INDEX K_E_INDEX @@ -1339,21 +1355,21 @@ #endif #endif // Auto-assign pins for stallGuard sensorless homing - #if !defined(K_DIAG_PIN) && !defined(K_USE_ENDSTOP) && defined(K_STALL_SENSITIVITY) && _PEXI(K_E_INDEX, DIAG) + #if !defined(K_STOP_PIN) && defined(K_STALL_SENSITIVITY) && E_DIAG_EXISTS(K_E_INDEX) #if DIAG_REMAPPED(K, X_MIN) - #define K_USE_ENDSTOP _XMIN_ + #define K_STOP_PIN X_MIN_PIN #elif DIAG_REMAPPED(K, Y_MIN) - #define K_USE_ENDSTOP _YMIN_ + #define K_STOP_PIN Y_MIN_PIN #elif DIAG_REMAPPED(K, Z_MIN) - #define K_USE_ENDSTOP _ZMIN_ + #define K_STOP_PIN Z_MIN_PIN #elif DIAG_REMAPPED(K, X_MAX) - #define K_USE_ENDSTOP _XMAX_ + #define K_STOP_PIN X_MAX_PIN #elif DIAG_REMAPPED(K, Y_MAX) - #define K_USE_ENDSTOP _YMAX_ + #define K_STOP_PIN Y_MAX_PIN #elif DIAG_REMAPPED(K, Z_MAX) - #define K_USE_ENDSTOP _ZMAX_ + #define K_STOP_PIN Z_MAX_PIN #else - #define K_USE_ENDSTOP _En_DIAG_(K_E_INDEX) + #define K_STOP_PIN _En_DIAG_PIN(K_E_INDEX) #endif #define AUTO_ASSIGNED_K_DIAG 1 #endif @@ -1372,7 +1388,8 @@ #define K_MS3_PIN -1 #endif -#if HAS_U_AXIS && !defined(U_DIAG_PIN) && !defined(U_STEP_PIN) && !PIN_EXISTS(U_CS_PIN) +// U auto-assignment will use up an E stepper, but not if it's chained +#if HAS_U_AXIS && !defined(U_STEP_PIN) && !PIN_EXISTS(U_CS_PIN) #define V_E_INDEX INCREMENT(U_E_INDEX) #else #define V_E_INDEX U_E_INDEX @@ -1423,21 +1440,21 @@ #endif #endif // Auto-assign pins for stallGuard sensorless homing - #if !defined(U_DIAG_PIN) && !defined(U_USE_ENDSTOP) && defined(U_STALL_SENSITIVITY) && _PEXI(U_E_INDEX, DIAG) + #if !defined(U_STOP_PIN) && defined(U_STALL_SENSITIVITY) && E_DIAG_EXISTS(U_E_INDEX) #if DIAG_REMAPPED(U, X_MIN) - #define U_USE_ENDSTOP _XMIN_ + #define U_STOP_PIN X_MIN_PIN #elif DIAG_REMAPPED(U, Y_MIN) - #define U_USE_ENDSTOP _YMIN_ + #define U_STOP_PIN Y_MIN_PIN #elif DIAG_REMAPPED(U, Z_MIN) - #define U_USE_ENDSTOP _ZMIN_ + #define U_STOP_PIN Z_MIN_PIN #elif DIAG_REMAPPED(U, X_MAX) - #define U_USE_ENDSTOP _XMAX_ + #define U_STOP_PIN X_MAX_PIN #elif DIAG_REMAPPED(U, Y_MAX) - #define U_USE_ENDSTOP _YMAX_ + #define U_STOP_PIN Y_MAX_PIN #elif DIAG_REMAPPED(U, Z_MAX) - #define U_USE_ENDSTOP _ZMAX_ + #define U_STOP_PIN Z_MAX_PIN #else - #define U_USE_ENDSTOP _En_DIAG_(U_E_INDEX) + #define U_STOP_PIN _En_DIAG_PIN(U_E_INDEX) #endif #define AUTO_ASSIGNED_U_DIAG 1 #endif @@ -1456,7 +1473,8 @@ #define U_MS3_PIN -1 #endif -#if HAS_V_AXIS && !defined(V_DIAG_PIN) && !defined(V_STEP_PIN) && !PIN_EXISTS(V_CS_PIN) +// V auto-assignment will use up an E stepper, but not if it's chained +#if HAS_V_AXIS && !defined(V_STEP_PIN) && !PIN_EXISTS(V_CS_PIN) #define W_E_INDEX INCREMENT(V_E_INDEX) #else #define W_E_INDEX V_E_INDEX @@ -1507,21 +1525,21 @@ #endif #endif // Auto-assign pins for stallGuard sensorless homing - #if !defined(V_DIAG_PIN) && !defined(V_USE_ENDSTOP) && defined(V_STALL_SENSITIVITY) && _PEXI(V_E_INDEX, DIAG) + #if !defined(V_STOP_PIN) && defined(V_STALL_SENSITIVITY) && E_DIAG_EXISTS(V_E_INDEX) #if DIAG_REMAPPED(V, X_MIN) - #define V_USE_ENDSTOP _XMIN_ + #define V_STOP_PIN X_MIN_PIN #elif DIAG_REMAPPED(V, Y_MIN) - #define V_USE_ENDSTOP _YMIN_ + #define V_STOP_PIN Y_MIN_PIN #elif DIAG_REMAPPED(V, Z_MIN) - #define V_USE_ENDSTOP _ZMIN_ + #define V_STOP_PIN Z_MIN_PIN #elif DIAG_REMAPPED(V, X_MAX) - #define V_USE_ENDSTOP _XMAX_ + #define V_STOP_PIN X_MAX_PIN #elif DIAG_REMAPPED(V, Y_MAX) - #define V_USE_ENDSTOP _YMAX_ + #define V_STOP_PIN Y_MAX_PIN #elif DIAG_REMAPPED(V, Z_MAX) - #define V_USE_ENDSTOP _ZMAX_ + #define V_STOP_PIN Z_MAX_PIN #else - #define V_USE_ENDSTOP _En_DIAG_(V_E_INDEX) + #define V_STOP_PIN _En_DIAG_PIN(V_E_INDEX) #endif #define AUTO_ASSIGNED_V_DIAG 1 #endif @@ -1585,21 +1603,21 @@ #endif #endif // Auto-assign pins for stallGuard sensorless homing - #if !defined(W_DIAG_PIN) && !defined(W_USE_ENDSTOP) && defined(W_STALL_SENSITIVITY) && _PEXI(W_E_INDEX, DIAG) + #if !defined(W_STOP_PIN) && defined(W_STALL_SENSITIVITY) && E_DIAG_EXISTS(W_E_INDEX) #if DIAG_REMAPPED(W, X_MIN) - #define W_USE_ENDSTOP _XMIN_ + #define W_STOP_PIN X_MIN_PIN #elif DIAG_REMAPPED(W, Y_MIN) - #define W_USE_ENDSTOP _YMIN_ + #define W_STOP_PIN Y_MIN_PIN #elif DIAG_REMAPPED(W, Z_MIN) - #define W_USE_ENDSTOP _ZMIN_ + #define W_STOP_PIN Z_MIN_PIN #elif DIAG_REMAPPED(W, X_MAX) - #define W_USE_ENDSTOP _XMAX_ + #define W_STOP_PIN X_MAX_PIN #elif DIAG_REMAPPED(W, Y_MAX) - #define W_USE_ENDSTOP _YMAX_ + #define W_STOP_PIN Y_MAX_PIN #elif DIAG_REMAPPED(W, Z_MAX) - #define W_USE_ENDSTOP _ZMAX_ + #define W_STOP_PIN Z_MAX_PIN #else - #define W_USE_ENDSTOP _En_DIAG_(W_E_INDEX) + #define W_STOP_PIN _En_DIAG_PIN(W_E_INDEX) #endif #define AUTO_ASSIGNED_W_DIAG 1 #endif @@ -1618,670 +1636,52 @@ #define W_MS3_PIN -1 #endif -// -// Disable unused endstop / probe pins -// -#define _STOP_IN_USE(N) (X2_USE_ENDSTOP == N || Y2_USE_ENDSTOP == N || Z2_USE_ENDSTOP == N || Z3_USE_ENDSTOP == N || Z4_USE_ENDSTOP == N) -#if !defined(USE_XMAX_PLUG) && _STOP_IN_USE(_XMAX_) - #define USE_XMAX_PLUG -#endif -#if !defined(USE_YMAX_PLUG) && _STOP_IN_USE(_YMAX_) - #define USE_YMAX_PLUG -#endif -#if !defined(USE_ZMAX_PLUG) && _STOP_IN_USE(_ZMAX_) - #define USE_ZMAX_PLUG -#endif -#if !defined(USE_IMAX_PLUG) && _STOP_IN_USE(_IMAX_) - #define USE_IMAX_PLUG -#endif -#if !defined(USE_JMAX_PLUG) && _STOP_IN_USE(_JMAX_) - #define USE_JMAX_PLUG -#endif -#if !defined(USE_KMAX_PLUG) && _STOP_IN_USE(_KMAX_) - #define USE_KMAX_PLUG -#endif -#if !defined(USE_UMAX_PLUG) && _STOP_IN_USE(_UMAX_) - #define USE_UMAX_PLUG -#endif -#if !defined(USE_VMAX_PLUG) && _STOP_IN_USE(_VMAX_) - #define USE_VMAX_PLUG -#endif -#if !defined(USE_WMAX_PLUG) && _STOP_IN_USE(_WMAX_) - #define USE_WMAX_PLUG -#endif -#if !defined(USE_XMIN_PLUG) && _STOP_IN_USE(_XMIN_) - #define USE_XMIN_PLUG -#endif -#if !defined(USE_YMIN_PLUG) && _STOP_IN_USE(_YMIN_) - #define USE_YMIN_PLUG -#endif -#if !defined(USE_ZMIN_PLUG) && _STOP_IN_USE(_ZMIN_) - #define USE_ZMIN_PLUG -#endif -#if !defined(USE_IMIN_PLUG) && _STOP_IN_USE(_IMIN_) - #define USE_IMIN_PLUG -#endif -#if !defined(USE_JMIN_PLUG) && _STOP_IN_USE(_JMIN_) - #define USE_JMIN_PLUG -#endif -#if !defined(USE_KMIN_PLUG) && _STOP_IN_USE(_KMIN_) - #define USE_KMIN_PLUG -#endif -#if !defined(USE_UMIN_PLUG) && _STOP_IN_USE(_UMIN_) - #define USE_UMIN_PLUG -#endif -#if !defined(USE_VMIN_PLUG) && _STOP_IN_USE(_VMIN_) - #define USE_VMIN_PLUG -#endif -#if !defined(USE_WMIN_PLUG) && _STOP_IN_USE(_WMIN_) - #define USE_WMIN_PLUG -#endif -#undef _STOP_IN_USE -#if !USES_Z_MIN_PROBE_PIN - #undef Z_MIN_PROBE_PIN - #define Z_MIN_PROBE_PIN -1 -#endif -#if DISABLED(USE_XMIN_PLUG) - #undef X_MIN_PIN - #define X_MIN_PIN -1 -#endif -#if DISABLED(USE_XMAX_PLUG) - #undef X_MAX_PIN - #define X_MAX_PIN -1 -#endif -#if NONE(USE_XMIN_PLUG, USE_XMAX_PLUG) - #undef X_STOP_PIN -#endif -#if DISABLED(USE_YMIN_PLUG) - #undef Y_MIN_PIN - #define Y_MIN_PIN -1 -#endif -#if DISABLED(USE_YMAX_PLUG) - #undef Y_MAX_PIN - #define Y_MAX_PIN -1 -#endif -#if NONE(USE_YMIN_PLUG, USE_YMAX_PLUG) - #undef Y_STOP_PIN -#endif -#if DISABLED(USE_ZMIN_PLUG) - #undef Z_MIN_PIN - #define Z_MIN_PIN -1 -#endif -#if DISABLED(USE_ZMAX_PLUG) - #undef Z_MAX_PIN - #define Z_MAX_PIN -1 -#endif -#if NONE(USE_ZMIN_PLUG, USE_ZMAX_PLUG) - #undef Z_STOP_PIN -#endif -#if DISABLED(USE_IMIN_PLUG) - #undef I_MIN_PIN - #define I_MIN_PIN -1 -#endif -#if DISABLED(USE_IMAX_PLUG) - #undef I_MAX_PIN - #define I_MAX_PIN -1 -#endif -#if NONE(USE_IMIN_PLUG, USE_IMAX_PLUG) - #undef I_STOP_PIN -#endif -#if DISABLED(USE_JMIN_PLUG) - #undef J_MIN_PIN - #define J_MIN_PIN -1 -#endif -#if DISABLED(USE_JMAX_PLUG) - #undef J_MAX_PIN - #define J_MAX_PIN -1 -#endif -#if NONE(USE_JMIN_PLUG, USE_JMAX_PLUG) - #undef J_STOP_PIN -#endif -#if DISABLED(USE_KMIN_PLUG) - #undef K_MIN_PIN - #define K_MIN_PIN -1 -#endif -#if DISABLED(USE_KMAX_PLUG) - #undef K_MAX_PIN - #define K_MAX_PIN -1 -#endif -#if NONE(USE_KMIN_PLUG, USE_KMAX_PLUG) - #undef K_STOP_PIN -#endif -#if DISABLED(USE_UMIN_PLUG) - #undef U_MIN_PIN - #define U_MIN_PIN -1 -#endif -#if DISABLED(USE_UMAX_PLUG) - #undef U_MAX_PIN - #define U_MAX_PIN -1 -#endif -#if NONE(USE_UMIN_PLUG, USE_UMAX_PLUG) - #undef U_STOP_PIN -#endif -#if DISABLED(USE_VMIN_PLUG) - #undef V_MIN_PIN - #define V_MIN_PIN -1 -#endif -#if DISABLED(USE_VMAX_PLUG) - #undef V_MAX_PIN - #define V_MAX_PIN -1 -#endif -#if NONE(USE_VMIN_PLUG, USE_VMAX_PLUG) - #undef V_STOP_PIN -#endif -#if DISABLED(USE_WMIN_PLUG) - #undef W_MIN_PIN - #define W_MIN_PIN -1 -#endif -#if DISABLED(USE_WMAX_PLUG) - #undef W_MAX_PIN - #define W_MAX_PIN -1 -#endif -#if NONE(USE_WMIN_PLUG, USE_WMAX_PLUG) - #undef W_STOP_PIN -#endif - -#if DISABLED(X_DUAL_ENDSTOPS) || X_HOME_TO_MAX - #undef X2_MIN_PIN -#endif -#if DISABLED(X_DUAL_ENDSTOPS) || X_HOME_TO_MIN - #undef X2_MAX_PIN -#endif -#if DISABLED(Y_DUAL_ENDSTOPS) || Y_HOME_TO_MAX - #undef Y2_MIN_PIN -#endif -#if DISABLED(Y_DUAL_ENDSTOPS) || Y_HOME_TO_MIN - #undef Y2_MAX_PIN -#endif -#if DISABLED(Z_MULTI_ENDSTOPS) || Z_HOME_TO_MAX - #undef Z2_MIN_PIN -#endif -#if DISABLED(Z_MULTI_ENDSTOPS) || Z_HOME_TO_MIN - #undef Z2_MAX_PIN -#endif -#if DISABLED(Z_MULTI_ENDSTOPS) || NUM_Z_STEPPERS < 3 || Z_HOME_TO_MAX - #undef Z3_MIN_PIN -#endif -#if DISABLED(Z_MULTI_ENDSTOPS) || NUM_Z_STEPPERS < 3 || Z_HOME_TO_MIN - #undef Z3_MAX_PIN -#endif -#if DISABLED(Z_MULTI_ENDSTOPS) || NUM_Z_STEPPERS < 4 || Z_HOME_TO_MAX - #undef Z4_MIN_PIN -#endif -#if DISABLED(Z_MULTI_ENDSTOPS) || NUM_Z_STEPPERS < 4 || Z_HOME_TO_MIN - #undef Z4_MAX_PIN -#endif - /** * X_DUAL_ENDSTOPS endstop reassignment */ #if ENABLED(X_DUAL_ENDSTOPS) - #if X_HOME_TO_MAX && !defined(X2_MAX_PIN) - #if PIN_EXISTS(X2_STOP) - #define X2_MAX_PIN X2_STOP_PIN - #elif X2_USE_ENDSTOP == _XMIN_ - #define X2_MAX_PIN X_MIN_PIN - #elif X2_USE_ENDSTOP == _XMAX_ - #define X2_MAX_PIN X_MAX_PIN - #elif X2_USE_ENDSTOP == _XSTOP_ - #define X2_MAX_PIN X_STOP_PIN - #elif X2_USE_ENDSTOP == _YMIN_ - #define X2_MAX_PIN Y_MIN_PIN - #elif X2_USE_ENDSTOP == _YMAX_ - #define X2_MAX_PIN Y_MAX_PIN - #elif X2_USE_ENDSTOP == _YSTOP_ - #define X2_MAX_PIN Y_STOP_PIN - #elif X2_USE_ENDSTOP == _ZMIN_ - #define X2_MAX_PIN Z_MIN_PIN - #elif X2_USE_ENDSTOP == _ZMAX_ - #define X2_MAX_PIN Z_MAX_PIN - #elif X2_USE_ENDSTOP == _ZSTOP_ - #define X2_MAX_PIN Z_STOP_PIN - #elif X2_USE_ENDSTOP == _XDIAG_ - #define X2_MAX_PIN X_DIAG_PIN - #elif X2_USE_ENDSTOP == _YDIAG_ - #define X2_MAX_PIN Y_DIAG_PIN - #elif X2_USE_ENDSTOP == _ZDIAG_ - #define X2_MAX_PIN Z_DIAG_PIN - #elif X2_USE_ENDSTOP == _E0DIAG_ - #define X2_MAX_PIN E0_DIAG_PIN - #elif X2_USE_ENDSTOP == _E1DIAG_ - #define X2_MAX_PIN E1_DIAG_PIN - #elif X2_USE_ENDSTOP == _E2DIAG_ - #define X2_MAX_PIN E2_DIAG_PIN - #elif X2_USE_ENDSTOP == _E3DIAG_ - #define X2_MAX_PIN E3_DIAG_PIN - #elif X2_USE_ENDSTOP == _E4DIAG_ - #define X2_MAX_PIN E4_DIAG_PIN - #elif X2_USE_ENDSTOP == _E5DIAG_ - #define X2_MAX_PIN E5_DIAG_PIN - #elif X2_USE_ENDSTOP == _E6DIAG_ - #define X2_MAX_PIN E6_DIAG_PIN - #elif X2_USE_ENDSTOP == _E7DIAG_ - #define X2_MAX_PIN E7_DIAG_PIN - #endif - #elif X_HOME_TO_MIN && !defined(X2_MIN_PIN) - #if PIN_EXISTS(X2_STOP) - #define X2_MIN_PIN X2_STOP_PIN - #elif X2_USE_ENDSTOP == _XMIN_ - #define X2_MIN_PIN X_MIN_PIN - #elif X2_USE_ENDSTOP == _XMAX_ - #define X2_MIN_PIN X_MAX_PIN - #elif X2_USE_ENDSTOP == _XSTOP_ - #define X2_MIN_PIN X_STOP_PIN - #elif X2_USE_ENDSTOP == _YMIN_ - #define X2_MIN_PIN Y_MIN_PIN - #elif X2_USE_ENDSTOP == _YMAX_ - #define X2_MIN_PIN Y_MAX_PIN - #elif X2_USE_ENDSTOP == _YSTOP_ - #define X2_MIN_PIN Y_STOP_PIN - #elif X2_USE_ENDSTOP == _ZMIN_ - #define X2_MIN_PIN Z_MIN_PIN - #elif X2_USE_ENDSTOP == _ZMAX_ - #define X2_MIN_PIN Z_MAX_PIN - #elif X2_USE_ENDSTOP == _ZSTOP_ - #define X2_MIN_PIN Z_STOP_PIN - #elif X2_USE_ENDSTOP == _XDIAG_ - #define X2_MIN_PIN X_DIAG_PIN - #elif X2_USE_ENDSTOP == _YDIAG_ - #define X2_MIN_PIN Y_DIAG_PIN - #elif X2_USE_ENDSTOP == _ZDIAG_ - #define X2_MIN_PIN Z_DIAG_PIN - #elif X2_USE_ENDSTOP == _E0DIAG_ - #define X2_MIN_PIN E0_DIAG_PIN - #elif X2_USE_ENDSTOP == _E1DIAG_ - #define X2_MIN_PIN E1_DIAG_PIN - #elif X2_USE_ENDSTOP == _E2DIAG_ - #define X2_MIN_PIN E2_DIAG_PIN - #elif X2_USE_ENDSTOP == _E3DIAG_ - #define X2_MIN_PIN E3_DIAG_PIN - #elif X2_USE_ENDSTOP == _E4DIAG_ - #define X2_MIN_PIN E4_DIAG_PIN - #elif X2_USE_ENDSTOP == _E5DIAG_ - #define X2_MIN_PIN E5_DIAG_PIN - #elif X2_USE_ENDSTOP == _E6DIAG_ - #define X2_MIN_PIN E6_DIAG_PIN - #elif X2_USE_ENDSTOP == _E7DIAG_ - #define X2_MIN_PIN E7_DIAG_PIN - #endif - #endif -#endif // X_DUAL_ENDSTOPS + #if X_HOME_TO_MAX && !defined(X2_MAX_PIN) && PIN_EXISTS(X2_STOP) + #define X2_MAX_PIN X2_STOP_PIN + #elif X_HOME_TO_MIN && !defined(X2_MIN_PIN) && PIN_EXISTS(X2_STOP) + #define X2_MIN_PIN X2_STOP_PIN + #endif +#endif /** * Y_DUAL_ENDSTOPS endstop reassignment */ #if ENABLED(Y_DUAL_ENDSTOPS) - #if Y_HOME_TO_MAX && !defined(Y2_MAX_PIN) - #if PIN_EXISTS(Y2_STOP) - #define Y2_MAX_PIN Y2_STOP_PIN - #elif Y2_USE_ENDSTOP == _XMIN_ - #define Y2_MAX_PIN X_MIN_PIN - #elif Y2_USE_ENDSTOP == _XMAX_ - #define Y2_MAX_PIN X_MAX_PIN - #elif Y2_USE_ENDSTOP == _XSTOP_ - #define Y2_MAX_PIN X_STOP_PIN - #elif Y2_USE_ENDSTOP == _YMIN_ - #define Y2_MAX_PIN Y_MIN_PIN - #elif Y2_USE_ENDSTOP == _YMAX_ - #define Y2_MAX_PIN Y_MAX_PIN - #elif Y2_USE_ENDSTOP == _YSTOP_ - #define Y2_MAX_PIN Y_STOP_PIN - #elif Y2_USE_ENDSTOP == _ZMIN_ - #define Y2_MAX_PIN Z_MIN_PIN - #elif Y2_USE_ENDSTOP == _ZMAX_ - #define Y2_MAX_PIN Z_MAX_PIN - #elif Y2_USE_ENDSTOP == _ZSTOP_ - #define Y2_MAX_PIN Z_STOP_PIN - #elif Y2_USE_ENDSTOP == _XDIAG_ - #define Y2_MAX_PIN X_DIAG_PIN - #elif Y2_USE_ENDSTOP == _YDIAG_ - #define Y2_MAX_PIN Y_DIAG_PIN - #elif Y2_USE_ENDSTOP == _ZDIAG_ - #define Y2_MAX_PIN Z_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E0DIAG_ - #define Y2_MAX_PIN E0_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E1DIAG_ - #define Y2_MAX_PIN E1_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E2DIAG_ - #define Y2_MAX_PIN E2_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E3DIAG_ - #define Y2_MAX_PIN E3_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E4DIAG_ - #define Y2_MAX_PIN E4_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E5DIAG_ - #define Y2_MAX_PIN E5_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E6DIAG_ - #define Y2_MAX_PIN E6_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E7DIAG_ - #define Y2_MAX_PIN E7_DIAG_PIN - #endif - #elif Y_HOME_TO_MIN && !defined(Y2_MIN_PIN) - #if PIN_EXISTS(Y2_STOP) - #define Y2_MIN_PIN Y2_STOP_PIN - #elif Y2_USE_ENDSTOP == _XMIN_ - #define Y2_MIN_PIN X_MIN_PIN - #elif Y2_USE_ENDSTOP == _XMAX_ - #define Y2_MIN_PIN X_MAX_PIN - #elif Y2_USE_ENDSTOP == _XSTOP_ - #define Y2_MIN_PIN X_STOP_PIN - #elif Y2_USE_ENDSTOP == _YMIN_ - #define Y2_MIN_PIN Y_MIN_PIN - #elif Y2_USE_ENDSTOP == _YMAX_ - #define Y2_MIN_PIN Y_MAX_PIN - #elif Y2_USE_ENDSTOP == _YSTOP_ - #define Y2_MIN_PIN Y_STOP_PIN - #elif Y2_USE_ENDSTOP == _ZMIN_ - #define Y2_MIN_PIN Z_MIN_PIN - #elif Y2_USE_ENDSTOP == _ZMAX_ - #define Y2_MIN_PIN Z_MAX_PIN - #elif Y2_USE_ENDSTOP == _ZSTOP_ - #define Y2_MIN_PIN Z_STOP_PIN - #elif Y2_USE_ENDSTOP == _XDIAG_ - #define Y2_MIN_PIN X_DIAG_PIN - #elif Y2_USE_ENDSTOP == _YDIAG_ - #define Y2_MIN_PIN Y_DIAG_PIN - #elif Y2_USE_ENDSTOP == _ZDIAG_ - #define Y2_MIN_PIN Z_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E0DIAG_ - #define Y2_MIN_PIN E0_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E1DIAG_ - #define Y2_MIN_PIN E1_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E2DIAG_ - #define Y2_MIN_PIN E2_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E3DIAG_ - #define Y2_MIN_PIN E3_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E4DIAG_ - #define Y2_MIN_PIN E4_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E5DIAG_ - #define Y2_MIN_PIN E5_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E6DIAG_ - #define Y2_MIN_PIN E6_DIAG_PIN - #elif Y2_USE_ENDSTOP == _E7DIAG_ - #define Y2_MIN_PIN E7_DIAG_PIN - #endif - #endif -#endif // Y_DUAL_ENDSTOPS + #if Y_HOME_TO_MAX && !defined(Y2_MAX_PIN) && PIN_EXISTS(Y2_STOP) + #define Y2_MAX_PIN Y2_STOP_PIN + #elif Y_HOME_TO_MIN && !defined(Y2_MIN_PIN) && PIN_EXISTS(Y2_STOP) + #define Y2_MIN_PIN Y2_STOP_PIN + #endif +#endif /** * Z_MULTI_ENDSTOPS endstop reassignment */ #if ENABLED(Z_MULTI_ENDSTOPS) - - #if Z_HOME_TO_MAX && !defined(Z2_MAX_PIN) - #if PIN_EXISTS(Z2_STOP) - #define Z2_MAX_PIN Z2_STOP_PIN - #elif Z2_USE_ENDSTOP == _XMIN_ - #define Z2_MAX_PIN X_MIN_PIN - #elif Z2_USE_ENDSTOP == _XMAX_ - #define Z2_MAX_PIN X_MAX_PIN - #elif Z2_USE_ENDSTOP == _XSTOP_ - #define Z2_MAX_PIN X_STOP_PIN - #elif Z2_USE_ENDSTOP == _YMIN_ - #define Z2_MAX_PIN Y_MIN_PIN - #elif Z2_USE_ENDSTOP == _YMAX_ - #define Z2_MAX_PIN Y_MAX_PIN - #elif Z2_USE_ENDSTOP == _YSTOP_ - #define Z2_MAX_PIN Y_STOP_PIN - #elif Z2_USE_ENDSTOP == _ZMIN_ - #define Z2_MAX_PIN Z_MIN_PIN - #elif Z2_USE_ENDSTOP == _ZMAX_ - #define Z2_MAX_PIN Z_MAX_PIN - #elif Z2_USE_ENDSTOP == _ZSTOP_ - #define Z2_MAX_PIN Z_STOP_PIN - #elif Z2_USE_ENDSTOP == _XDIAG_ - #define Z2_MAX_PIN X_DIAG_PIN - #elif Z2_USE_ENDSTOP == _YDIAG_ - #define Z2_MAX_PIN Y_DIAG_PIN - #elif Z2_USE_ENDSTOP == _ZDIAG_ - #define Z2_MAX_PIN Z_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E0DIAG_ - #define Z2_MAX_PIN E0_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E1DIAG_ - #define Z2_MAX_PIN E1_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E2DIAG_ - #define Z2_MAX_PIN E2_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E3DIAG_ - #define Z2_MAX_PIN E3_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E4DIAG_ - #define Z2_MAX_PIN E4_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E5DIAG_ - #define Z2_MAX_PIN E5_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E6DIAG_ - #define Z2_MAX_PIN E6_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E7DIAG_ - #define Z2_MAX_PIN E7_DIAG_PIN - #endif - #elif Z_HOME_TO_MIN && !defined(Z2_MIN_PIN) - #if PIN_EXISTS(Z2_STOP) - #define Z2_MIN_PIN Z2_STOP_PIN - #elif Z2_USE_ENDSTOP == _XMIN_ - #define Z2_MIN_PIN X_MIN_PIN - #elif Z2_USE_ENDSTOP == _XMAX_ - #define Z2_MIN_PIN X_MAX_PIN - #elif Z2_USE_ENDSTOP == _XSTOP_ - #define Z2_MIN_PIN X_STOP_PIN - #elif Z2_USE_ENDSTOP == _YMIN_ - #define Z2_MIN_PIN Y_MIN_PIN - #elif Z2_USE_ENDSTOP == _YMAX_ - #define Z2_MIN_PIN Y_MAX_PIN - #elif Z2_USE_ENDSTOP == _YSTOP_ - #define Z2_MIN_PIN Y_STOP_PIN - #elif Z2_USE_ENDSTOP == _ZMIN_ - #define Z2_MIN_PIN Z_MIN_PIN - #elif Z2_USE_ENDSTOP == _ZMAX_ - #define Z2_MIN_PIN Z_MAX_PIN - #elif Z2_USE_ENDSTOP == _ZSTOP_ - #define Z2_MIN_PIN Z_STOP_PIN - #elif Z2_USE_ENDSTOP == _XDIAG_ - #define Z2_MIN_PIN X_DIAG_PIN - #elif Z2_USE_ENDSTOP == _YDIAG_ - #define Z2_MIN_PIN Y_DIAG_PIN - #elif Z2_USE_ENDSTOP == _ZDIAG_ - #define Z2_MIN_PIN Z_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E0DIAG_ - #define Z2_MIN_PIN E0_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E1DIAG_ - #define Z2_MIN_PIN E1_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E2DIAG_ - #define Z2_MIN_PIN E2_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E3DIAG_ - #define Z2_MIN_PIN E3_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E4DIAG_ - #define Z2_MIN_PIN E4_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E5DIAG_ - #define Z2_MIN_PIN E5_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E6DIAG_ - #define Z2_MIN_PIN E6_DIAG_PIN - #elif Z2_USE_ENDSTOP == _E7DIAG_ - #define Z2_MIN_PIN E7_DIAG_PIN - #endif + #if Z_HOME_TO_MAX && !defined(Z2_MAX_PIN) && PIN_EXISTS(Z2_STOP) + #define Z2_MAX_PIN Z2_STOP_PIN + #elif Z_HOME_TO_MIN && !defined(Z2_MIN_PIN) && PIN_EXISTS(Z2_STOP) + #define Z2_MIN_PIN Z2_STOP_PIN #endif - #if NUM_Z_STEPPERS >= 3 - #if Z_HOME_TO_MAX && !defined(Z3_MAX_PIN) - #if PIN_EXISTS(Z3_STOP) - #define Z3_MAX_PIN Z3_STOP_PIN - #elif Z3_USE_ENDSTOP == _XMIN_ - #define Z3_MAX_PIN X_MIN_PIN - #elif Z3_USE_ENDSTOP == _XMAX_ - #define Z3_MAX_PIN X_MAX_PIN - #elif Z3_USE_ENDSTOP == _XSTOP_ - #define Z3_MAX_PIN X_STOP_PIN - #elif Z3_USE_ENDSTOP == _YMIN_ - #define Z3_MAX_PIN Y_MIN_PIN - #elif Z3_USE_ENDSTOP == _YMAX_ - #define Z3_MAX_PIN Y_MAX_PIN - #elif Z3_USE_ENDSTOP == _YSTOP_ - #define Z3_MAX_PIN Y_STOP_PIN - #elif Z3_USE_ENDSTOP == _ZMIN_ - #define Z3_MAX_PIN Z_MIN_PIN - #elif Z3_USE_ENDSTOP == _ZMAX_ - #define Z3_MAX_PIN Z_MAX_PIN - #elif Z3_USE_ENDSTOP == _ZSTOP_ - #define Z3_MAX_PIN Z_STOP_PIN - #elif Z3_USE_ENDSTOP == _XDIAG_ - #define Z3_MAX_PIN X_DIAG_PIN - #elif Z3_USE_ENDSTOP == _YDIAG_ - #define Z3_MAX_PIN Y_DIAG_PIN - #elif Z3_USE_ENDSTOP == _ZDIAG_ - #define Z3_MAX_PIN Z_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E0DIAG_ - #define Z3_MAX_PIN E0_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E1DIAG_ - #define Z3_MAX_PIN E1_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E2DIAG_ - #define Z3_MAX_PIN E2_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E3DIAG_ - #define Z3_MAX_PIN E3_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E4DIAG_ - #define Z3_MAX_PIN E4_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E5DIAG_ - #define Z3_MAX_PIN E5_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E6DIAG_ - #define Z3_MAX_PIN E6_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E7DIAG_ - #define Z3_MAX_PIN E7_DIAG_PIN - #endif - #elif Z_HOME_TO_MIN && !defined(Z3_MIN_PIN) - #if PIN_EXISTS(Z3_STOP) - #define Z3_MIN_PIN Z3_STOP_PIN - #elif Z3_USE_ENDSTOP == _XMIN_ - #define Z3_MIN_PIN X_MIN_PIN - #elif Z3_USE_ENDSTOP == _XMAX_ - #define Z3_MIN_PIN X_MAX_PIN - #elif Z3_USE_ENDSTOP == _XSTOP_ - #define Z3_MIN_PIN X_STOP_PIN - #elif Z3_USE_ENDSTOP == _YMIN_ - #define Z3_MIN_PIN Y_MIN_PIN - #elif Z3_USE_ENDSTOP == _YMAX_ - #define Z3_MIN_PIN Y_MAX_PIN - #elif Z3_USE_ENDSTOP == _YSTOP_ - #define Z3_MIN_PIN Y_STOP_PIN - #elif Z3_USE_ENDSTOP == _ZMIN_ - #define Z3_MIN_PIN Z_MIN_PIN - #elif Z3_USE_ENDSTOP == _ZMAX_ - #define Z3_MIN_PIN Z_MAX_PIN - #elif Z3_USE_ENDSTOP == _ZSTOP_ - #define Z3_MIN_PIN Z_STOP_PIN - #elif Z3_USE_ENDSTOP == _XDIAG_ - #define Z3_MIN_PIN X_DIAG_PIN - #elif Z3_USE_ENDSTOP == _YDIAG_ - #define Z3_MIN_PIN Y_DIAG_PIN - #elif Z3_USE_ENDSTOP == _ZDIAG_ - #define Z3_MIN_PIN Z_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E0DIAG_ - #define Z3_MIN_PIN E0_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E1DIAG_ - #define Z3_MIN_PIN E1_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E2DIAG_ - #define Z3_MIN_PIN E2_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E3DIAG_ - #define Z3_MIN_PIN E3_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E4DIAG_ - #define Z3_MIN_PIN E4_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E5DIAG_ - #define Z3_MIN_PIN E5_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E6DIAG_ - #define Z3_MIN_PIN E6_DIAG_PIN - #elif Z3_USE_ENDSTOP == _E7DIAG_ - #define Z3_MIN_PIN E7_DIAG_PIN - #endif + #if Z_HOME_TO_MAX && !defined(Z3_MAX_PIN) && PIN_EXISTS(Z3_STOP) + #define Z3_MAX_PIN Z3_STOP_PIN + #elif Z_HOME_TO_MIN && !defined(Z3_MIN_PIN) && PIN_EXISTS(Z3_STOP) + #define Z3_MIN_PIN Z3_STOP_PIN #endif #endif - #if NUM_Z_STEPPERS >= 4 - #if Z_HOME_TO_MAX && !defined(Z4_MAX_PIN) - #if PIN_EXISTS(Z4_STOP) - #define Z4_MAX_PIN Z4_STOP_PIN - #elif Z4_USE_ENDSTOP == _XMIN_ - #define Z4_MAX_PIN X_MIN_PIN - #elif Z4_USE_ENDSTOP == _XMAX_ - #define Z4_MAX_PIN X_MAX_PIN - #elif Z4_USE_ENDSTOP == _XSTOP_ - #define Z4_MAX_PIN X_STOP_PIN - #elif Z4_USE_ENDSTOP == _YMIN_ - #define Z4_MAX_PIN Y_MIN_PIN - #elif Z4_USE_ENDSTOP == _YMAX_ - #define Z4_MAX_PIN Y_MAX_PIN - #elif Z4_USE_ENDSTOP == _YSTOP_ - #define Z4_MAX_PIN Y_STOP_PIN - #elif Z4_USE_ENDSTOP == _ZMIN_ - #define Z4_MAX_PIN Z_MIN_PIN - #elif Z4_USE_ENDSTOP == _ZMAX_ - #define Z4_MAX_PIN Z_MAX_PIN - #elif Z4_USE_ENDSTOP == _ZSTOP_ - #define Z4_MAX_PIN Z_STOP_PIN - #elif Z4_USE_ENDSTOP == _XDIAG_ - #define Z4_MAX_PIN X_DIAG_PIN - #elif Z4_USE_ENDSTOP == _YDIAG_ - #define Z4_MAX_PIN Y_DIAG_PIN - #elif Z4_USE_ENDSTOP == _ZDIAG_ - #define Z4_MAX_PIN Z_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E0DIAG_ - #define Z4_MAX_PIN E0_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E1DIAG_ - #define Z4_MAX_PIN E1_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E2DIAG_ - #define Z4_MAX_PIN E2_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E3DIAG_ - #define Z4_MAX_PIN E3_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E4DIAG_ - #define Z4_MAX_PIN E4_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E5DIAG_ - #define Z4_MAX_PIN E5_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E6DIAG_ - #define Z4_MAX_PIN E6_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E7DIAG_ - #define Z4_MAX_PIN E7_DIAG_PIN - #endif - #elif Z_HOME_TO_MIN && !defined(Z4_MIN_PIN) - #if PIN_EXISTS(Z4_STOP) - #define Z4_MIN_PIN Z4_STOP_PIN - #elif Z4_USE_ENDSTOP == _XMIN_ - #define Z4_MIN_PIN X_MIN_PIN - #elif Z4_USE_ENDSTOP == _XMAX_ - #define Z4_MIN_PIN X_MAX_PIN - #elif Z4_USE_ENDSTOP == _XSTOP_ - #define Z4_MIN_PIN X_STOP_PIN - #elif Z4_USE_ENDSTOP == _YMIN_ - #define Z4_MIN_PIN Y_MIN_PIN - #elif Z4_USE_ENDSTOP == _YMAX_ - #define Z4_MIN_PIN Y_MAX_PIN - #elif Z4_USE_ENDSTOP == _YSTOP_ - #define Z4_MIN_PIN Y_STOP_PIN - #elif Z4_USE_ENDSTOP == _ZMIN_ - #define Z4_MIN_PIN Z_MIN_PIN - #elif Z4_USE_ENDSTOP == _ZMAX_ - #define Z4_MIN_PIN Z_MAX_PIN - #elif Z4_USE_ENDSTOP == _ZSTOP_ - #define Z4_MIN_PIN Z_STOP_PIN - #elif Z4_USE_ENDSTOP == _XDIAG_ - #define Z4_MIN_PIN X_DIAG_PIN - #elif Z4_USE_ENDSTOP == _YDIAG_ - #define Z4_MIN_PIN Y_DIAG_PIN - #elif Z4_USE_ENDSTOP == _ZDIAG_ - #define Z4_MIN_PIN Z_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E0DIAG_ - #define Z4_MIN_PIN E0_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E1DIAG_ - #define Z4_MIN_PIN E1_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E2DIAG_ - #define Z4_MIN_PIN E2_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E3DIAG_ - #define Z4_MIN_PIN E3_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E4DIAG_ - #define Z4_MIN_PIN E4_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E5DIAG_ - #define Z4_MIN_PIN E5_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E6DIAG_ - #define Z4_MIN_PIN E6_DIAG_PIN - #elif Z4_USE_ENDSTOP == _E7DIAG_ - #define Z4_MIN_PIN E7_DIAG_PIN - #endif - #endif - #endif - -#endif // Z_MULTI_ENDSTOPS + #if Z_HOME_TO_MAX && !defined(Z4_MAX_PIN) && PIN_EXISTS(Z4_STOP) + #define Z4_MAX_PIN Z4_STOP_PIN + #elif Z_HOME_TO_MIN && !defined(Z4_MIN_PIN) && PIN_EXISTS(Z4_STOP) + #define Z4_MIN_PIN Z4_STOP_PIN + #endif + #endif +#endif // // Default DOGLCD SPI delays @@ -2307,3 +1707,5 @@ #undef HAS_FREE_AUX2_PINS #undef DIAG_REMAPPED +#undef _E_DIAG_EXISTS +#undef E_DIAG_EXISTS diff --git a/Marlin/src/pins/stm32f1/pins_ZM3E4_V1_0.h b/Marlin/src/pins/stm32f1/pins_ZM3E4_V1_0.h index 8997a5f1db39..06f697e27020 100644 --- a/Marlin/src/pins/stm32f1/pins_ZM3E4_V1_0.h +++ b/Marlin/src/pins/stm32f1/pins_ZM3E4_V1_0.h @@ -190,6 +190,7 @@ #define Z2_DIR_PIN PD0 #endif +// TODO: Use different pin names for auto-remapping #ifdef OPTION_Z2_ENDSTOP #define Z2_MIN_PIN PD1 #define Z2_MAX_PIN PB12 diff --git a/Marlin/src/pins/stm32f1/pins_ZM3E4_V2_0.h b/Marlin/src/pins/stm32f1/pins_ZM3E4_V2_0.h index b60cca831ba7..24c7404360f0 100644 --- a/Marlin/src/pins/stm32f1/pins_ZM3E4_V2_0.h +++ b/Marlin/src/pins/stm32f1/pins_ZM3E4_V2_0.h @@ -156,6 +156,7 @@ #define Y_MAX_PIN PB14 #define Z_MAX_PIN PB13 +// TODO: Use different pin names for auto-remapping #ifdef OPTION_Z2_ENDSTOP #define Z2_MIN_PIN PD1 #define Z2_MAX_PIN PB12 diff --git a/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h b/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h index 7e3f07078611..0ed0177da8fe 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h @@ -51,11 +51,7 @@ #define Z_STOP_PIN PC2 // Z-STOP #if ENABLED(BTT_E3_RRF_IDEX_BOARD) - #if X2_USE_ENDSTOP == _XMAX_ - #define X_MAX_PIN FPC2_PIN // X2-STOP - #elif X2_USE_ENDSTOP == _XMIN_ - #define X_MIN_PIN FPC2_PIN // X2-STOP - #endif + #define X2_STOP_PIN FPC2_PIN // X2-STOP #endif // diff --git a/Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h b/Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h index b81859dd61cc..6021810f403d 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h @@ -106,11 +106,21 @@ // Pins on the extender // #if ENABLED(M5_EXTENDER) - #define X2_STOP_PIN PI4 // M5 M1_STOP - #define Y2_STOP_PIN PF12 // M5 M5_STOP - #define Z2_STOP_PIN PF4 // M5 M2_STOP - #define Z3_STOP_PIN PI7 // M5 M4_STOP - #define Z4_STOP_PIN PF6 // M5 M3_STOP + #ifndef X2_STOP_PIN + #define X2_STOP_PIN PI4 // M5 M1_STOP + #endif + #ifndef Y2_STOP_PIN + #define Y2_STOP_PIN PF12 // M5 M5_STOP + #endif + #ifndef Z2_STOP_PIN + #define Z2_STOP_PIN PF4 // M5 M2_STOP + #endif + #ifndef Z3_STOP_PIN + #define Z3_STOP_PIN PI7 // M5 M4_STOP + #endif + #ifndef Z4_STOP_PIN + #define Z4_STOP_PIN PF6 // M5 M3_STOP + #endif #endif #ifndef Z_MIN_PROBE_PIN diff --git a/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h b/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h index d69d8fbef0c9..bf08aca0fe45 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h @@ -68,23 +68,6 @@ #define Z_MIN_PROBE_PIN PB7 #endif -// -// Check for additional used endstop pins -// -#if HAS_EXTRA_ENDSTOPS - #define _ENDSTOP_IS_ANY(ES) X2_USE_ENDSTOP == ES || Y2_USE_ENDSTOP == ES || Z2_USE_ENDSTOP == ES || Z3_USE_ENDSTOP == ES || Z4_USE_ENDSTOP == ES - #if _ENDSTOP_IS_ANY(_XMIN_) || _ENDSTOP_IS_ANY(_XMAX_) - #define NEEDS_X_MINMAX - #endif - #if _ENDSTOP_IS_ANY(_YMIN_) || _ENDSTOP_IS_ANY(_YMAX_) - #define NEEDS_Y_MINMAX - #endif - #if _ENDSTOP_IS_ANY(_ZMIN_) || _ENDSTOP_IS_ANY(_ZMAX_) - #define NEEDS_Z_MINMAX - #endif - #undef _ENDSTOP_IS_ANY -#endif - // // Limit Switches // @@ -95,7 +78,7 @@ #else #define X_MIN_PIN E0_DIAG_PIN // E0DET #endif -#elif EITHER(DUAL_X_CARRIAGE, NEEDS_X_MINMAX) +#elif NEEDS_X_MINMAX #ifndef X_MIN_PIN #define X_MIN_PIN X_DIAG_PIN // X-STOP #endif @@ -113,7 +96,7 @@ #else #define Y_MIN_PIN E1_DIAG_PIN // E1DET #endif -#elif ENABLED(NEEDS_Y_MINMAX) +#elif NEEDS_Y_MINMAX #ifndef Y_MIN_PIN #define Y_MIN_PIN Y_DIAG_PIN // Y-STOP #endif @@ -131,7 +114,7 @@ #else #define Z_MIN_PIN E2_DIAG_PIN // PWRDET #endif -#elif ENABLED(NEEDS_Z_MINMAX) +#elif NEEDS_Z_MINMAX #ifndef Z_MIN_PIN #define Z_MIN_PIN Z_DIAG_PIN // Z-STOP #endif diff --git a/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h b/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h index c4a7cd886f3c..d26e541d4c87 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h @@ -53,29 +53,12 @@ #define E1_DIAG_PIN PC5 // NEOPIXEL #define E2_DIAG_PIN PB14 // Z+ -// -// Check for additional used endstop pins -// -#if HAS_EXTRA_ENDSTOPS - #define _ENDSTOP_IS_ANY(ES) X2_USE_ENDSTOP == ES || Y2_USE_ENDSTOP == ES || Z2_USE_ENDSTOP == ES || Z3_USE_ENDSTOP == ES || Z4_USE_ENDSTOP == ES - #if _ENDSTOP_IS_ANY(_XMIN_) || _ENDSTOP_IS_ANY(_XMAX_) - #define NEEDS_X_MINMAX - #endif - #if _ENDSTOP_IS_ANY(_YMIN_) || _ENDSTOP_IS_ANY(_YMAX_) - #define NEEDS_Y_MINMAX - #endif - #if _ENDSTOP_IS_ANY(_ZMIN_) || _ENDSTOP_IS_ANY(_ZMAX_) - #define NEEDS_Z_MINMAX - #endif - #undef _ENDSTOP_IS_ANY -#endif - // // Limit Switches // #ifdef X_STALL_SENSITIVITY #define X_STOP_PIN X_DIAG_PIN // X- -#elif EITHER(DUAL_X_CARRIAGE, NEEDS_X_MINMAX) +#elif NEEDS_X_MINMAX #ifndef X_MIN_PIN #define X_MIN_PIN X_DIAG_PIN // X- #endif @@ -88,7 +71,7 @@ #ifdef Y_STALL_SENSITIVITY #define Y_STOP_PIN Y_DIAG_PIN // Y- -#elif ENABLED(NEEDS_Y_MINMAX) +#elif NEEDS_Y_MINMAX #ifndef Y_MIN_PIN #define Y_MIN_PIN Y_DIAG_PIN // Y- #endif @@ -101,7 +84,7 @@ #ifdef Z_STALL_SENSITIVITY #define Z_STOP_PIN Z_DIAG_PIN // Z- -#elif ENABLED(NEEDS_Z_MINMAX) +#elif NEEDS_Z_MINMAX #ifndef Z_MIN_PIN #define Z_MIN_PIN Z_DIAG_PIN // Z- #endif @@ -113,7 +96,7 @@ #endif #if DISABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) || ENABLED(USE_PROBE_FOR_Z_HOMING) - #ifndef Z_MIN_PROBE + #ifndef Z_MIN_PROBE_PIN #define Z_MIN_PROBE_PIN E2_DIAG_PIN // defaults to 'Z+' connector #endif #endif diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h index bd9a1cf0b58b..792f473d9234 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h @@ -75,20 +75,6 @@ //#define Z_MIN_PROBE_PIN PF6 // IND-PROBE (with adjustable voltage & pullup set via jumpers) #endif -// -// Check for additional used endstop pins -// -#if HAS_EXTRA_ENDSTOPS - #define _ENDSTOP_IS_ANY(ES) X2_USE_ENDSTOP == ES || Y2_USE_ENDSTOP == ES || Z2_USE_ENDSTOP == ES || Z3_USE_ENDSTOP == ES || Z4_USE_ENDSTOP == ES - #if _ENDSTOP_IS_ANY(_XMIN_) || _ENDSTOP_IS_ANY(_XMAX_) - #define NEEDS_X_MINMAX - #endif - #if _ENDSTOP_IS_ANY(_YMIN_) || _ENDSTOP_IS_ANY(_YMAX_) - #define NEEDS_Y_MINMAX - #endif - #undef _ENDSTOP_IS_ANY -#endif - // // Limit Switches // @@ -99,7 +85,7 @@ #else #define X_MIN_PIN E0_DIAG_PIN // MIN5 #endif -#elif EITHER(DUAL_X_CARRIAGE, NEEDS_X_MINMAX) +#elif NEEDS_X_MINMAX #ifndef X_MIN_PIN #define X_MIN_PIN X_DIAG_PIN // MIN1 #endif @@ -117,7 +103,7 @@ #else #define Y_MIN_PIN E1_DIAG_PIN // MIN6 #endif -#elif ENABLED(NEEDS_Y_MINMAX) +#elif NEEDS_Y_MINMAX #ifndef Y_MIN_PIN #define Y_MIN_PIN Y_DIAG_PIN // MIN2 #endif diff --git a/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h b/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h index e8e984fcb7e3..119c6b39299d 100644 --- a/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h +++ b/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h @@ -68,23 +68,6 @@ #define Z_MIN_PROBE_PIN PB15 #endif -// -// Check for additional used endstop pins -// -#if HAS_EXTRA_ENDSTOPS - #define _ENDSTOP_IS_ANY(ES) X2_USE_ENDSTOP == ES || Y2_USE_ENDSTOP == ES || Z2_USE_ENDSTOP == ES || Z3_USE_ENDSTOP == ES || Z4_USE_ENDSTOP == ES - #if _ENDSTOP_IS_ANY(_XMIN_) || _ENDSTOP_IS_ANY(_XMAX_) - #define NEEDS_X_MINMAX - #endif - #if _ENDSTOP_IS_ANY(_YMIN_) || _ENDSTOP_IS_ANY(_YMAX_) - #define NEEDS_Y_MINMAX - #endif - #if _ENDSTOP_IS_ANY(_ZMIN_) || _ENDSTOP_IS_ANY(_ZMAX_) - #define NEEDS_Z_MINMAX - #endif - #undef _ENDSTOP_IS_ANY -#endif - // // Limit Switches // @@ -95,7 +78,7 @@ #else #define X_MIN_PIN E0_DIAG_PIN // E0DET #endif -#elif EITHER(DUAL_X_CARRIAGE, NEEDS_X_MINMAX) +#elif NEEDS_X_MINMAX #ifndef X_MIN_PIN #define X_MIN_PIN X_DIAG_PIN // X-STOP #endif @@ -113,7 +96,7 @@ #else #define Y_MIN_PIN E1_DIAG_PIN // E1DET #endif -#elif ENABLED(NEEDS_Y_MINMAX) +#elif NEEDS_Y_MINMAX #ifndef Y_MIN_PIN #define Y_MIN_PIN Y_DIAG_PIN // Y-STOP #endif @@ -131,7 +114,7 @@ #else #define Z_MIN_PIN E2_DIAG_PIN // PWRDET #endif -#elif ENABLED(NEEDS_Z_MINMAX) +#elif NEEDS_Z_MINMAX #ifndef Z_MIN_PIN #define Z_MIN_PIN Z_DIAG_PIN // Z-STOP #endif diff --git a/buildroot/tests/DUE b/buildroot/tests/DUE index 4ed234ab3a0e..c43d30c76ed3 100755 --- a/buildroot/tests/DUE +++ b/buildroot/tests/DUE @@ -37,7 +37,7 @@ exec_test $1 $2 "RAMPS4DUE_EFB with ABL (Bilinear), ExtUI, S-Curve, many options # restore_configs opt_set MOTHERBOARD BOARD_RADDS Z_DRIVER_TYPE A4988 Z2_DRIVER_TYPE A4988 Z3_DRIVER_TYPE A4988 -opt_enable USE_XMAX_PLUG USE_YMAX_PLUG ENDSTOPPULLUPS BLTOUCH AUTO_BED_LEVELING_BILINEAR \ +opt_enable ENDSTOPPULLUPS BLTOUCH AUTO_BED_LEVELING_BILINEAR \ Z_STEPPER_AUTO_ALIGN Z_STEPPER_ALIGN_STEPPER_XY Z_SAFE_HOMING pins_set ramps/RAMPS X_MAX_PIN -1 pins_set ramps/RAMPS Y_MAX_PIN -1 diff --git a/buildroot/tests/FYSETC_F6 b/buildroot/tests/FYSETC_F6 index 0c5f25a15517..dbfb76717189 100755 --- a/buildroot/tests/FYSETC_F6 +++ b/buildroot/tests/FYSETC_F6 @@ -43,7 +43,7 @@ opt_set MOTHERBOARD BOARD_FYSETC_F6_13 \ opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER \ MARLIN_BRICKOUT MARLIN_INVADERS MARLIN_SNAKE \ MONITOR_DRIVER_STATUS STEALTHCHOP_XY STEALTHCHOP_Z STEALTHCHOP_E HYBRID_THRESHOLD \ - USE_ZMIN_PLUG SENSORLESS_HOMING TMC_DEBUG M114_DETAIL + SENSORLESS_HOMING TMC_DEBUG M114_DETAIL exec_test $1 $2 "RAMPS | Mixed TMC | Sensorless | RRDFGSC | Games" "$3" # @@ -62,7 +62,7 @@ opt_set MOTHERBOARD BOARD_FYSETC_F6_13 \ X_MAX_ENDSTOP_HIT_STATE HIGH \ X_DRIVER_TYPE TMC2209 Y_DRIVER_TYPE TMC2130 Z_DRIVER_TYPE TMC2130_STANDALONE E0_DRIVER_TYPE TMC2660 \ X_HARDWARE_SERIAL Serial2 -opt_enable USE_ZMIN_PLUG FIX_MOUNTED_PROBE AUTO_BED_LEVELING_BILINEAR PAUSE_BEFORE_DEPLOY_STOW \ +opt_enable FIX_MOUNTED_PROBE AUTO_BED_LEVELING_BILINEAR PAUSE_BEFORE_DEPLOY_STOW \ FYSETC_242_OLED_12864 EEPROM_SETTINGS EEPROM_CHITCHAT M114_DETAIL Z_SAFE_HOMING \ STEALTHCHOP_XY STEALTHCHOP_Z STEALTHCHOP_E HYBRID_THRESHOLD SENSORLESS_HOMING EDGE_STEPPING exec_test $1 $2 "FYSETC_F6 | SCARA | Mixed TMC | EEPROM" "$3" diff --git a/buildroot/tests/LPC1769 b/buildroot/tests/LPC1769 index cf2838bdd5d6..733201e0090d 100755 --- a/buildroot/tests/LPC1769 +++ b/buildroot/tests/LPC1769 @@ -29,7 +29,7 @@ exec_test $1 $2 "Smoothieboard with TFTGLCD_PANEL_SPI and many features" "$3" #restore_configs #opt_set MOTHERBOARD BOARD_AZTEEG_X5_MINI_WIFI -#opt_enable COREYX USE_XMAX_PLUG DAC_MOTOR_CURRENT_DEFAULT \ +#opt_enable COREYX DAC_MOTOR_CURRENT_DEFAULT \ # REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT BABYSTEPPING \ # AUTO_BED_LEVELING_UBL RESTORE_LEVELING_AFTER_G28 EEPROM_SETTINGS \ # FILAMENT_LCD_DISPLAY FILAMENT_WIDTH_SENSOR FAN_SOFT_PWM \ @@ -56,7 +56,7 @@ opt_set MOTHERBOARD BOARD_COHESION3D_REMIX \ opt_enable AUTO_BED_LEVELING_BILINEAR EEPROM_SETTINGS EEPROM_CHITCHAT MECHANICAL_GANTRY_CALIBRATION \ TMC_USE_SW_SPI MONITOR_DRIVER_STATUS STEALTHCHOP_XY STEALTHCHOP_Z HYBRID_THRESHOLD \ SENSORLESS_PROBING Z_SAFE_HOMING X_STALL_SENSITIVITY Y_STALL_SENSITIVITY Z_STALL_SENSITIVITY TMC_DEBUG \ - AXIS4_ROTATES I_MIN_POS I_MAX_POS I_HOME_DIR I_ENABLE_ON USE_IMIN_PLUG INVERT_I_DIR \ + AXIS4_ROTATES I_MIN_POS I_MAX_POS I_HOME_DIR I_ENABLE_ON INVERT_I_DIR \ EXPERIMENTAL_I2CBUS opt_disable PSU_CONTROL Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN exec_test $1 $2 "Cohesion3D Remix DELTA + ABL Bilinear + EEPROM + SENSORLESS_PROBING + I Axis" "$3" diff --git a/buildroot/tests/mega1280 b/buildroot/tests/mega1280 index d948623f4872..53016e840645 100755 --- a/buildroot/tests/mega1280 +++ b/buildroot/tests/mega1280 @@ -40,7 +40,7 @@ restore_configs opt_set MOTHERBOARD BOARD_ZRIB_V52 \ LCD_LANGUAGE pt REPRAPWORLD_KEYPAD_MOVE_STEP 10.0 \ EXTRUDERS 2 TEMP_SENSOR_1 1 X2_DRIVER_TYPE A4988 -opt_enable USE_XMAX_PLUG DUAL_X_CARRIAGE REPRAPWORLD_KEYPAD +opt_enable DUAL_X_CARRIAGE REPRAPWORLD_KEYPAD exec_test $1 $2 "ZRIB_V52 | DUAL_X_CARRIAGE" "$3" # diff --git a/buildroot/tests/rambo b/buildroot/tests/rambo index b50f22040428..475b2daf87bf 100755 --- a/buildroot/tests/rambo +++ b/buildroot/tests/rambo @@ -17,7 +17,7 @@ opt_set MOTHERBOARD BOARD_RAMBO \ GRID_MAX_POINTS_X 16 AUTO_POWER_E_TEMP 80 \ FANMUX0_PIN 53 FIL_MOTION1_PIN 45 opt_disable Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN USE_WATCHDOG -opt_enable USE_ZMAX_PLUG REPRAP_DISCOUNT_SMART_CONTROLLER LCD_PROGRESS_BAR LCD_PROGRESS_BAR_TEST \ +opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER LCD_PROGRESS_BAR LCD_PROGRESS_BAR_TEST \ FIX_MOUNTED_PROBE CODEPENDENT_XY_HOMING PIDTEMPBED PTC_PROBE PTC_BED \ PREHEAT_BEFORE_PROBING PROBING_HEATERS_OFF PROBING_FANS_OFF PROBING_STEPPERS_OFF WAIT_FOR_BED_HEATER \ EEPROM_SETTINGS SDSUPPORT SD_REPRINT_LAST_SELECTED_FILE BINARY_FILE_TRANSFER \ @@ -53,8 +53,7 @@ opt_set MOTHERBOARD BOARD_RAMBO \ AXIS_RELATIVE_MODES '{ false, false, false }' \ BED_TRAMMING_LEVELING_ORDER '{ LF, RF }' \ X2_DRIVER_TYPE A4988 Y2_DRIVER_TYPE A4988 -opt_enable USE_XMAX_PLUG USE_YMAX_PLUG USE_ZMAX_PLUG \ - REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER REVERSE_ENCODER_DIRECTION SDSUPPORT EEPROM_SETTINGS \ +opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER REVERSE_ENCODER_DIRECTION SDSUPPORT EEPROM_SETTINGS \ S_CURVE_ACCELERATION X_DUAL_ENDSTOPS Y_DUAL_ENDSTOPS \ ADAPTIVE_STEP_SMOOTHING CNC_COORDINATE_SYSTEMS GCODE_MOTION_MODES \ LCD_BED_TRAMMING BED_TRAMMING_INCLUDE_CENTER @@ -115,7 +114,7 @@ opt_set MOTHERBOARD BOARD_RAMBO \ CONTROLLER_FAN_PIN X_MAX_PIN FILWIDTH_PIN 5 \ FAN_MIN_PWM 50 FAN_KICKSTART_TIME 100 \ XY_FREQUENCY_LIMIT 15 -opt_enable COREYX USE_XMAX_PLUG MIXING_EXTRUDER GRADIENT_MIX \ +opt_enable COREYX MIXING_EXTRUDER GRADIENT_MIX \ BABYSTEPPING BABYSTEP_XY BABYSTEP_DISPLAY_TOTAL FILAMENT_LCD_DISPLAY \ REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER MENU_ADDAUTOSTART SDSUPPORT SDCARD_SORT_ALPHA \ ENDSTOP_NOISE_THRESHOLD FAN_SOFT_PWM \ diff --git a/buildroot/tests/teensy31 b/buildroot/tests/teensy31 index 7465a67fdde1..5f5b84e0c4d1 100755 --- a/buildroot/tests/teensy31 +++ b/buildroot/tests/teensy31 @@ -15,7 +15,6 @@ exec_test $1 $2 "Teensy3.1 with default config" "$3" # restore_configs opt_set MOTHERBOARD BOARD_TEENSY31_32 X_HOME_DIR 0 Y_HOME_DIR 0 Z_HOME_DIR 0 -opt_disable USE_XMIN_PLUG USE_YMIN_PLUG USE_ZMIN_PLUG exec_test $1 $2 "Teensy3.1 with Zero Endstops" "$3" # diff --git a/buildroot/tests/teensy35 b/buildroot/tests/teensy35 index fd6ae86387f7..38da97c25b11 100755 --- a/buildroot/tests/teensy35 +++ b/buildroot/tests/teensy35 @@ -87,7 +87,7 @@ opt_set MOTHERBOARD BOARD_TEENSY35_36 \ X_DRIVER_TYPE TMC5160 Y_DRIVER_TYPE TMC5160 \ X_MIN_ENDSTOP_HIT_STATE LOW Y_MIN_ENDSTOP_HIT_STATE LOW \ X_CS_PIN 46 Y_CS_PIN 47 -opt_enable COREXY USE_ZMIN_PLUG MONITOR_DRIVER_STATUS SENSORLESS_HOMING +opt_enable COREXY MONITOR_DRIVER_STATUS SENSORLESS_HOMING exec_test $1 $2 "Teensy 3.5/3.6 COREXY" "$3" # @@ -103,7 +103,7 @@ exec_test $1 $2 "Teensy 3.5/3.6 COREXZ | BACKLASH" "$3" # restore_configs opt_set MOTHERBOARD BOARD_TEENSY35_36 Z_DRIVER_TYPE A4988 Z2_DRIVER_TYPE A4988 Z2_MIN_PIN 2 -opt_enable Z_MULTI_ENDSTOPS USE_XMAX_PLUG +opt_enable Z_MULTI_ENDSTOPS pins_set ramps/RAMPS X_MAX_PIN -1 exec_test $1 $2 "Dual Z with Dual Z endstops" "$3" diff --git a/buildroot/tests/teensy41 b/buildroot/tests/teensy41 index 11b5e340258e..e6a769c28273 100755 --- a/buildroot/tests/teensy41 +++ b/buildroot/tests/teensy41 @@ -90,7 +90,7 @@ opt_set MOTHERBOARD BOARD_TEENSY41 \ X_DRIVER_TYPE TMC5160 Y_DRIVER_TYPE TMC5160 \ X_MIN_ENDSTOP_HIT_STATE LOW Y_MIN_ENDSTOP_HIT_STATE LOW \ X_CS_PIN 46 Y_CS_PIN 47 -opt_enable COREXY USE_ZMIN_PLUG MONITOR_DRIVER_STATUS SENSORLESS_HOMING +opt_enable COREXY MONITOR_DRIVER_STATUS SENSORLESS_HOMING exec_test $1 $2 "Teensy 4.0/4.1 COREXY" "$3" # @@ -106,7 +106,7 @@ exec_test $1 $2 "Teensy 4.0/4.1 COREXZ" "$3" # restore_configs opt_set MOTHERBOARD BOARD_TEENSY41 Z_DRIVER_TYPE A4988 Z2_DRIVER_TYPE A4988 Z2_MIN_PIN 2 -opt_enable Z_MULTI_ENDSTOPS USE_XMAX_PLUG +opt_enable Z_MULTI_ENDSTOPS pins_set ramps/RAMPS X_MAX_PIN -1 exec_test $1 $2 "Dual Z with Dual Z endstops" "$3" From 04a25ab49686a71f448e3605a192917d03f86a95 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 27 Apr 2023 00:22:32 +0000 Subject: [PATCH 079/427] [cron] Bump distribution date (2023-04-27) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index c357b9f8b808..94dc8bd0244c 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-26" +//#define STRING_DISTRIBUTION_DATE "2023-04-27" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index f2caef0458eb..dbed7697cb3b 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-26" + #define STRING_DISTRIBUTION_DATE "2023-04-27" #endif /** From 774861b15ddd850b34404e3daf931bf12f990919 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 26 Apr 2023 20:04:01 -0500 Subject: [PATCH 080/427] =?UTF-8?q?=F0=9F=94=A7=20Endstops=20followup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/Changes.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/inc/Changes.h b/Marlin/src/inc/Changes.h index 8606cbcc9380..8a4a9c2b48fa 100644 --- a/Marlin/src/inc/Changes.h +++ b/Marlin/src/inc/Changes.h @@ -655,8 +655,8 @@ #error "Y2_USE_ENDSTOP is obsolete. Instead set Y2_STOP_PIN directly. (e.g., 'Y2_USE_ENDSTOP _YMAX_' becomes 'Y2_STOP_PIN Y_MAX_PIN')" #elif defined(Z2_USE_ENDSTOP) #error "Z2_USE_ENDSTOP is obsolete. Instead set Z2_STOP_PIN directly. (e.g., 'Z2_USE_ENDSTOP _ZMAX_' becomes 'Z2_STOP_PIN Z_MAX_PIN')" -#elif defined(Z2_USE_ENDSTOP) - #error "Z2_USE_ENDSTOP is obsolete. Instead set Z2_STOP_PIN directly. (e.g., 'Z2_USE_ENDSTOP _ZMAX_' becomes 'Z2_STOP_PIN Z_MAX_PIN')" +#elif defined(Z3_USE_ENDSTOP) + #error "Z3_USE_ENDSTOP is obsolete. Instead set Z2_STOP_PIN directly. (e.g., 'Z3_USE_ENDSTOP _ZMAX_' becomes 'Z3_STOP_PIN Z_MAX_PIN')" #elif defined(Z4_USE_ENDSTOP) #error "Z4_USE_ENDSTOP is obsolete. Instead set Z4_STOP_PIN directly. (e.g., 'Z4_USE_ENDSTOP _ZMAX_' becomes 'Z4_STOP_PIN Z_MAX_PIN')" #endif From 9a7d9e6995f4f66c4b48147ec7876d49d4b3ae77 Mon Sep 17 00:00:00 2001 From: Martin Turski Date: Thu, 27 Apr 2023 14:05:24 +0200 Subject: [PATCH 081/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Opt?= =?UTF-8?q?imize=20PlatformIO=20source=20filtering=20(#25332)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/HAL/LPC1768/HAL.h | 4 +- Marlin/src/HAL/LPC1768/tft/tft_spi.cpp | 3 + Marlin/src/HAL/LPC1768/tft/xpt2046.cpp | 5 +- Marlin/src/HAL/STM32/HAL.h | 4 +- Marlin/src/HAL/STM32F1/HAL.h | 4 +- Marlin/src/HAL/shared/fauxpins.h | 367 ++++++++++++++++++ Marlin/src/gcode/control/M993_M994.cpp | 4 +- Marlin/src/gcode/gcode.cpp | 2 +- Marlin/src/gcode/gcode.h | 2 +- Marlin/src/gcode/{control => motion}/M400.cpp | 0 Marlin/src/gcode/temp/M155.cpp | 4 +- Marlin/src/inc/Conditionals_LCD.h | 8 + Marlin/src/inc/Conditionals_post.h | 39 +- Marlin/src/inc/MarlinConfig.h | 4 +- Marlin/src/inc/SanityCheck.h | 12 +- Marlin/src/lcd/HD44780/marlinui_HD44780.h | 1 - Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.h | 1 - Marlin/src/lcd/dogm/lcdprint_u8g.cpp | 1 - Marlin/src/lcd/dogm/marlinui_DOGM.cpp | 1 - .../lcd/dogm/status_screen_lite_ST7920.cpp | 1 - Marlin/src/lcd/dogm/u8g_fontutf8.cpp | 2 +- Marlin/src/lcd/dogm/u8g_fontutf8.h | 2 +- Marlin/src/lcd/e3v2/creality/dwin.cpp | 2 +- Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp | 2 +- Marlin/src/lcd/e3v2/marlinui/dwin_string.h | 2 +- Marlin/src/lcd/e3v2/marlinui/ui_common.cpp | 3 +- .../lcd/e3v2/marlinui/ui_status_480x272.cpp | 2 +- Marlin/src/lcd/e3v2/proui/dwin.cpp | 2 +- Marlin/src/lcd/lcdprint.h | 2 +- Marlin/src/lcd/marlinui.cpp | 2 +- Marlin/src/lcd/menu/menu_configuration.cpp | 12 +- Marlin/src/lcd/tft/tft_string.cpp | 2 +- Marlin/src/lcd/tft/tft_string.h | 2 +- Marlin/src/lcd/{fontutils.cpp => utf8.cpp} | 12 +- Marlin/src/lcd/{fontutils.h => utf8.h} | 4 +- Marlin/src/pins/ramps/pins_MKS_GEN_L.h | 2 +- .../PlatformIO/scripts/common-dependencies.h | 13 + .../PlatformIO/scripts/common-dependencies.py | 93 ++++- ini/features.ini | 33 +- ini/lpc176x.ini | 5 +- ini/stm32-common.ini | 10 +- ini/stm32f0.ini | 2 +- ini/stm32f1-maple.ini | 4 +- ini/stm32f1.ini | 2 +- platformio.ini | 263 +++---------- 45 files changed, 650 insertions(+), 297 deletions(-) create mode 100644 Marlin/src/HAL/shared/fauxpins.h rename Marlin/src/gcode/{control => motion}/M400.cpp (100%) rename Marlin/src/lcd/{fontutils.cpp => utf8.cpp} (97%) rename Marlin/src/lcd/{fontutils.h => utf8.h} (97%) diff --git a/Marlin/src/HAL/LPC1768/HAL.h b/Marlin/src/HAL/LPC1768/HAL.h index 15d61d30d1f6..6d5824f7a151 100644 --- a/Marlin/src/HAL/LPC1768/HAL.h +++ b/Marlin/src/HAL/LPC1768/HAL.h @@ -165,7 +165,9 @@ int16_t PARSED_PIN_INDEX(const char code, const int16_t dval); // Defines // ------------------------ -#define PLATFORM_M997_SUPPORT +#ifndef PLATFORM_M997_SUPPORT + #define PLATFORM_M997_SUPPORT +#endif void flashFirmware(const int16_t); #define HAL_CAN_SET_PWM_FREQ // This HAL supports PWM Frequency adjustment diff --git a/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp b/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp index abf1cf5e439d..10555762b1a0 100644 --- a/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp +++ b/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp @@ -20,6 +20,8 @@ * */ +#ifdef TARGET_LPC1768 + #include "../../../inc/MarlinConfig.h" #if HAS_SPI_TFT @@ -143,3 +145,4 @@ void TFT_SPI::TransmitDMA(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Coun } #endif // HAS_SPI_TFT +#endif // TARGET_LPC1768 diff --git a/Marlin/src/HAL/LPC1768/tft/xpt2046.cpp b/Marlin/src/HAL/LPC1768/tft/xpt2046.cpp index 68a2176f5ed6..910511612b9b 100644 --- a/Marlin/src/HAL/LPC1768/tft/xpt2046.cpp +++ b/Marlin/src/HAL/LPC1768/tft/xpt2046.cpp @@ -20,6 +20,8 @@ * */ +#ifdef TARGET_LPC1768 + #include "../../../inc/MarlinConfig.h" #if HAS_TFT_XPT2046 || HAS_RES_TOUCH_BUTTONS @@ -130,4 +132,5 @@ uint16_t XPT2046::SoftwareIO(uint16_t data) { return result; } -#endif // HAS_TFT_XPT2046 +#endif // HAS_TFT_XPT2046 || HAS_RES_TOUCH_BUTTONS +#endif // TARGET_LPC1768 diff --git a/Marlin/src/HAL/STM32/HAL.h b/Marlin/src/HAL/STM32/HAL.h index 26fcc2a2e173..54359c5b0987 100644 --- a/Marlin/src/HAL/STM32/HAL.h +++ b/Marlin/src/HAL/STM32/HAL.h @@ -175,7 +175,9 @@ typedef libServo hal_servo_t; #define JTAGSWD_RESET() AFIO_DBGAFR_CONFIG(AFIO_MAPR_SWJ_CFG_RESET); // Reset: FULL SWD+JTAG #endif -#define PLATFORM_M997_SUPPORT +#ifndef PLATFORM_M997_SUPPORT + #define PLATFORM_M997_SUPPORT +#endif void flashFirmware(const int16_t); // Maple Compatibility diff --git a/Marlin/src/HAL/STM32F1/HAL.h b/Marlin/src/HAL/STM32F1/HAL.h index b14b5f7e7926..954281a4be3e 100644 --- a/Marlin/src/HAL/STM32F1/HAL.h +++ b/Marlin/src/HAL/STM32F1/HAL.h @@ -205,7 +205,9 @@ void analogWrite(const pin_t pin, int pwm_val8); // PWM only! mul by 257 in mapl #define JTAG_DISABLE() afio_cfg_debug_ports(AFIO_DEBUG_SW_ONLY) #define JTAGSWD_DISABLE() afio_cfg_debug_ports(AFIO_DEBUG_NONE) -#define PLATFORM_M997_SUPPORT +#ifndef PLATFORM_M997_SUPPORT + #define PLATFORM_M997_SUPPORT +#endif void flashFirmware(const int16_t); #define HAL_CAN_SET_PWM_FREQ // This HAL supports PWM Frequency adjustment diff --git a/Marlin/src/HAL/shared/fauxpins.h b/Marlin/src/HAL/shared/fauxpins.h new file mode 100644 index 000000000000..8bc52c69265c --- /dev/null +++ b/Marlin/src/HAL/shared/fauxpins.h @@ -0,0 +1,367 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +// +// Faux pins for Dependency Check +// + +// +// STM32 Pin Names +// +#define PA0 0x10 +#define PA1 0x11 +#define PA2 0x12 +#define PA3 0x13 +#define PA4 0x14 +#define PA5 0x15 +#define PA6 0x16 +#define PA7 0x17 +#define PA8 0x18 +#define PA9 0x19 +#define PA10 0x1A +#define PA11 0x1B +#define PA12 0x1C +#define PA13 0x1D +#define PA14 0x1E +#define PA15 0x1F + +#define PB0 0x20 +#define PB1 0x21 +#define PB2 0x22 +#define PB3 0x23 +#define PB4 0x24 +#define PB5 0x25 +#define PB6 0x26 +#define PB7 0x27 +#define PB8 0x28 +#define PB9 0x29 +#define PB10 0x2A +#define PB11 0x2B +#define PB12 0x2C +#define PB13 0x2D +#define PB14 0x2E +#define PB15 0x2F + +#define PC0 0x30 +#define PC1 0x31 +#define PC2 0x32 +#define PC3 0x33 +#define PC4 0x34 +#define PC5 0x35 +#define PC6 0x36 +#define PC7 0x37 +#define PC8 0x38 +#define PC9 0x39 +#define PC10 0x3A +#define PC11 0x3B +#define PC12 0x3C +#define PC13 0x3D +#define PC14 0x3E +#define PC15 0x3F + +#define PD0 0x40 +#define PD1 0x41 +#define PD2 0x42 +#define PD3 0x43 +#define PD4 0x44 +#define PD5 0x45 +#define PD6 0x46 +#define PD7 0x47 +#define PD8 0x48 +#define PD9 0x49 +#define PD10 0x4A +#define PD11 0x4B +#define PD12 0x4C +#define PD13 0x4D +#define PD14 0x4E +#define PD15 0x4F + +#define PE0 0x50 +#define PE1 0x51 +#define PE2 0x52 +#define PE3 0x53 +#define PE4 0x54 +#define PE5 0x55 +#define PE6 0x56 +#define PE7 0x57 +#define PE8 0x58 +#define PE9 0x59 +#define PE10 0x5A +#define PE11 0x5B +#define PE12 0x5C +#define PE13 0x5D +#define PE14 0x5E +#define PE15 0x5F + +#define PF0 0x60 +#define PF1 0x61 +#define PF2 0x62 +#define PF3 0x63 +#define PF4 0x64 +#define PF5 0x65 +#define PF6 0x66 +#define PF7 0x67 +#define PF8 0x68 +#define PF9 0x69 +#define PF10 0x6A +#define PF11 0x6B +#define PF12 0x6C +#define PF13 0x6D +#define PF14 0x6E +#define PF15 0x6F + +#define PG0 0x70 +#define PG1 0x71 +#define PG2 0x72 +#define PG3 0x73 +#define PG4 0x74 +#define PG5 0x75 +#define PG6 0x76 +#define PG7 0x77 +#define PG8 0x78 +#define PG9 0x79 +#define PG10 0x7A +#define PG11 0x7B +#define PG12 0x7C +#define PG13 0x7D +#define PG14 0x7E +#define PG15 0x7F + +#define PH0 0x80 +#define PH1 0x81 +#define PH2 0x82 +#define PH3 0x83 +#define PH4 0x84 +#define PH5 0x85 +#define PH6 0x86 +#define PH7 0x87 +#define PH8 0x88 +#define PH9 0x89 +#define PH10 0x8A +#define PH11 0x8B +#define PH12 0x8C +#define PH13 0x8D +#define PH14 0x8E +#define PH15 0x8F + +#define PI0 0x90 +#define PI1 0x91 +#define PI2 0x92 +#define PI3 0x93 +#define PI4 0x94 +#define PI5 0x95 +#define PI6 0x96 +#define PI7 0x97 +#define PI8 0x98 +#define PI9 0x99 +#define PI10 0x9A +#define PI11 0x9B +#define PI12 0x9C +#define PI13 0x9D +#define PI14 0x9E +#define PI15 0x9F + +#define PJ0 0xA0 +#define PJ1 0xA1 +#define PJ2 0xA2 +#define PJ3 0xA3 +#define PJ4 0xA4 +#define PJ5 0xA5 +#define PJ6 0xA6 +#define PJ7 0xA7 +#define PJ8 0xA8 +#define PJ9 0xA9 +#define PJ10 0xAA +#define PJ11 0xAB +#define PJ12 0xAC +#define PJ13 0xAD +#define PJ14 0xAE +#define PJ15 0xAF + +// +// LPC Pin Names +// +#define P0_0 100 +#define P0_1 101 +#define P0_2 102 +#define P0_3 103 +#define P0_4 104 +#define P0_5 105 +#define P0_6 106 +#define P0_7 107 +#define P0_8 108 +#define P0_9 109 +#define P0_10 110 +#define P0_11 111 +#define P0_12 112 +#define P0_13 113 +#define P0_14 114 +#define P0_15 115 +#define P0_16 116 +#define P0_17 117 +#define P0_18 118 +#define P0_19 119 +#define P0_20 120 +#define P0_21 121 +#define P0_22 122 +#define P0_23 123 +#define P0_24 124 +#define P0_25 125 +#define P0_26 126 +#define P0_27 127 +#define P0_28 128 +#define P0_29 129 +#define P0_30 130 +#define P0_31 131 + +#define P1_0 200 +#define P1_1 201 +#define P1_2 202 +#define P1_3 203 +#define P1_4 204 +#define P1_5 205 +#define P1_6 206 +#define P1_7 207 +#define P1_8 208 +#define P1_9 209 +#define P1_10 210 +#define P1_11 211 +#define P1_12 212 +#define P1_13 213 +#define P1_14 214 +#define P1_15 215 +#define P1_16 216 +#define P1_17 217 +#define P1_18 218 +#define P1_19 219 +#define P1_20 220 +#define P1_21 221 +#define P1_22 222 +#define P1_23 223 +#define P1_24 224 +#define P1_25 225 +#define P1_26 226 +#define P1_27 227 +#define P1_28 228 +#define P1_29 229 +#define P1_30 230 +#define P1_31 231 + +#define P2_0 300 +#define P2_1 301 +#define P2_2 302 +#define P2_3 303 +#define P2_4 304 +#define P2_5 305 +#define P2_6 306 +#define P2_7 307 +#define P2_8 308 +#define P2_9 309 +#define P2_10 310 +#define P2_11 311 +#define P2_12 312 +#define P2_13 313 +#define P2_14 314 +#define P2_15 315 +#define P2_16 316 +#define P2_17 317 +#define P2_18 318 +#define P2_19 319 +#define P2_20 320 +#define P2_21 321 +#define P2_22 322 +#define P2_23 323 +#define P2_24 324 +#define P2_25 325 +#define P2_26 326 +#define P2_27 327 +#define P2_28 328 +#define P2_29 329 +#define P2_30 330 +#define P2_31 331 + +#define P3_0 400 +#define P3_1 401 +#define P3_2 402 +#define P3_3 403 +#define P3_4 404 +#define P3_5 405 +#define P3_6 406 +#define P3_7 407 +#define P3_8 408 +#define P3_9 409 +#define P3_10 410 +#define P3_11 411 +#define P3_12 412 +#define P3_13 413 +#define P3_14 414 +#define P3_15 415 +#define P3_16 416 +#define P3_17 417 +#define P3_18 418 +#define P3_19 419 +#define P3_20 420 +#define P3_21 421 +#define P3_22 422 +#define P3_23 423 +#define P3_24 424 +#define P3_25 425 +#define P3_26 426 +#define P3_27 427 +#define P3_28 428 +#define P3_29 429 +#define P3_30 430 +#define P3_31 431 + +#define P4_0 500 +#define P4_1 501 +#define P4_2 502 +#define P4_3 503 +#define P4_4 504 +#define P4_5 505 +#define P4_6 506 +#define P4_7 507 +#define P4_8 508 +#define P4_9 509 +#define P4_10 510 +#define P4_11 511 +#define P4_12 512 +#define P4_13 513 +#define P4_14 514 +#define P4_15 515 +#define P4_16 516 +#define P4_17 517 +#define P4_18 518 +#define P4_19 519 +#define P4_20 520 +#define P4_21 521 +#define P4_22 522 +#define P4_23 523 +#define P4_24 524 +#define P4_25 525 +#define P4_26 526 +#define P4_27 527 +#define P4_28 528 +#define P4_29 529 +#define P4_30 530 +#define P4_31 531 diff --git a/Marlin/src/gcode/control/M993_M994.cpp b/Marlin/src/gcode/control/M993_M994.cpp index f6fe0f34adee..bc634ae13c0d 100644 --- a/Marlin/src/gcode/control/M993_M994.cpp +++ b/Marlin/src/gcode/control/M993_M994.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if ALL(SPI_FLASH, HAS_MEDIA, MARLIN_DEV_MODE) +#if SPI_FLASH_BACKUP #include "../gcode.h" #include "../../sd/cardreader.h" @@ -85,4 +85,4 @@ void GcodeSuite::M994() { card.closefile(); } -#endif // SPI_FLASH && HAS_MEDIA && MARLIN_DEV_MODE +#endif // SPI_FLASH_BACKUP diff --git a/Marlin/src/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index 931c30c26d8a..013a2bfb742e 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -1061,7 +1061,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 422: M422(); break; // M422: Set Z Stepper automatic alignment position using probe #endif - #if ALL(SPI_FLASH, HAS_MEDIA, MARLIN_DEV_MODE) + #if SPI_FLASH_BACKUP case 993: M993(); break; // M993: Backup SPI Flash to SD case 994: M994(); break; // M994: Load a Backup from SD to SPI Flash #endif diff --git a/Marlin/src/gcode/gcode.h b/Marlin/src/gcode/gcode.h index 6a66fa911aa1..05175abd9d24 100644 --- a/Marlin/src/gcode/gcode.h +++ b/Marlin/src/gcode/gcode.h @@ -1207,7 +1207,7 @@ class GcodeSuite { static void M995(); #endif - #if BOTH(SPI_FLASH, HAS_MEDIA) + #if SPI_FLASH_BACKUP static void M993(); static void M994(); #endif diff --git a/Marlin/src/gcode/control/M400.cpp b/Marlin/src/gcode/motion/M400.cpp similarity index 100% rename from Marlin/src/gcode/control/M400.cpp rename to Marlin/src/gcode/motion/M400.cpp diff --git a/Marlin/src/gcode/temp/M155.cpp b/Marlin/src/gcode/temp/M155.cpp index 48c23986aeb5..f1744c8a1eeb 100644 --- a/Marlin/src/gcode/temp/M155.cpp +++ b/Marlin/src/gcode/temp/M155.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if BOTH(AUTO_REPORT_TEMPERATURES, HAS_TEMP_SENSOR) +#if ENABLED(AUTO_REPORT_TEMPERATURES) #include "../gcode.h" #include "../../module/temperature.h" @@ -37,4 +37,4 @@ void GcodeSuite::M155() { } -#endif // AUTO_REPORT_TEMPERATURES && HAS_TEMP_SENSOR +#endif // AUTO_REPORT_TEMPERATURES diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index f012bd9e3610..c28a49c8dfad 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -540,6 +540,10 @@ #define HAS_LCDPRINT 1 #endif +#if HAS_DISPLAY || HAS_LCDPRINT + #define HAS_UTF8_UTILS 1 +#endif + #if HAS_DISPLAY || HAS_DWIN_E3V2 #define HAS_STATUS_MESSAGE 1 #endif @@ -1797,3 +1801,7 @@ #if defined(NEOPIXEL_BKGD_INDEX_FIRST) && !defined(NEOPIXEL_BKGD_INDEX_LAST) #define NEOPIXEL_BKGD_INDEX_LAST NEOPIXEL_BKGD_INDEX_FIRST #endif + +#if ALL(SPI_FLASH, HAS_MEDIA, MARLIN_DEV_MODE) + #define SPI_FLASH_BACKUP 1 +#endif diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 9e8e8ed17ff1..bb78178ad517 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -2503,6 +2503,24 @@ #undef AUTO_POWER_COOLER_FAN #endif +/** + * Controller Fan Settings + */ +#if PIN_EXISTS(CONTROLLER_FAN) + #define HAS_CONTROLLER_FAN 1 +#endif + +#if HAS_CONTROLLER_FAN + #if ENABLED(CONTROLLER_FAN_USE_BOARD_TEMP) + #define HAS_CONTROLLER_FAN_BOARD_TEMP_TRIGGER 1 + #ifndef CONTROLLER_FAN_TRIGGER_TEMP + #define CONTROLLER_FAN_TRIGGER_TEMP 30 + #endif + #else + #undef CONTROLLER_FAN_TRIGGER_TEMP + #endif +#endif + // Print Cooling fans (limit) #ifdef NUM_M106_FANS #define MAX_FANS NUM_M106_FANS @@ -2512,11 +2530,12 @@ #define _IS_E_AUTO(N,F) (PIN_EXISTS(E##N##_AUTO_FAN) && E##N##_AUTO_FAN_PIN == FAN##F##_PIN) #define _HAS_FAN(F) (F < MAX_FANS && PIN_EXISTS(FAN##F) \ - && CONTROLLER_FAN_PIN != FAN##F##_PIN \ + && !(HAS_CONTROLLER_FAN && CONTROLLER_FAN_PIN == FAN##F##_PIN) \ && !_IS_E_AUTO(0,F) && !_IS_E_AUTO(1,F) \ && !_IS_E_AUTO(2,F) && !_IS_E_AUTO(3,F) \ && !_IS_E_AUTO(4,F) && !_IS_E_AUTO(5,F) \ && !_IS_E_AUTO(6,F) && !_IS_E_AUTO(7,F)) + #if _HAS_FAN(0) #define HAS_FAN0 1 #endif @@ -2583,24 +2602,6 @@ #define HAS_FANMUX 1 // Part Cooling fan multipliexer #endif -/** - * Controller Fan Settings - */ -#if PIN_EXISTS(CONTROLLER_FAN) - #define HAS_CONTROLLER_FAN 1 -#endif - -#if HAS_CONTROLLER_FAN - #if ENABLED(CONTROLLER_FAN_USE_BOARD_TEMP) - #define HAS_CONTROLLER_FAN_BOARD_TEMP_TRIGGER 1 - #ifndef CONTROLLER_FAN_TRIGGER_TEMP - #define CONTROLLER_FAN_TRIGGER_TEMP 30 - #endif - #else - #undef CONTROLLER_FAN_TRIGGER_TEMP - #endif -#endif - /** * MIN/MAX fan PWM scaling */ diff --git a/Marlin/src/inc/MarlinConfig.h b/Marlin/src/inc/MarlinConfig.h index c6c0bfbe2131..dda1480e02a9 100644 --- a/Marlin/src/inc/MarlinConfig.h +++ b/Marlin/src/inc/MarlinConfig.h @@ -27,7 +27,9 @@ #include "MarlinConfigPre.h" -#ifndef __MARLIN_DEPS__ +#ifdef __MARLIN_DEPS__ + #include "../HAL/shared/fauxpins.h" +#else #include "../HAL/HAL.h" #endif diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 35da7935de46..d4f9423080f2 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -3700,10 +3700,14 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); #endif -#if ENABLED(COOLANT_MIST) && !PIN_EXISTS(COOLANT_MIST) - #error "COOLANT_MIST requires COOLANT_MIST_PIN to be defined." -#elif ENABLED(COOLANT_FLOOD) && !PIN_EXISTS(COOLANT_FLOOD) - #error "COOLANT_FLOOD requires COOLANT_FLOOD_PIN to be defined." +#if ENABLED(COOLANT_CONTROL) + #if NONE(COOLANT_MIST, COOLANT_FLOOD) + #error "COOLANT_CONTROL requires either COOLANT_MIST or COOLANT_FLOOD." + #elif ENABLED(COOLANT_MIST) && !PIN_EXISTS(COOLANT_MIST) + #error "COOLANT_MIST requires COOLANT_MIST_PIN to be defined." + #elif ENABLED(COOLANT_FLOOD) && !PIN_EXISTS(COOLANT_FLOOD) + #error "COOLANT_FLOOD requires COOLANT_FLOOD_PIN to be defined." + #endif #endif #if HAS_ADC_BUTTONS && defined(ADC_BUTTON_DEBOUNCE_DELAY) && ADC_BUTTON_DEBOUNCE_DELAY < 16 diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.h b/Marlin/src/lcd/HD44780/marlinui_HD44780.h index 62c0c7620220..719514fb11df 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.h +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.h @@ -103,5 +103,4 @@ #endif -#include "../fontutils.h" #include "../lcdprint.h" diff --git a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.h b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.h index c399b907e460..3e447fa19617 100644 --- a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.h +++ b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.h @@ -57,7 +57,6 @@ class TFTGLCD { extern TFTGLCD lcd; -#include "../fontutils.h" #include "../lcdprint.h" // Use panel encoder - free old encoder pins diff --git a/Marlin/src/lcd/dogm/lcdprint_u8g.cpp b/Marlin/src/lcd/dogm/lcdprint_u8g.cpp index 74a49b095021..ea0db357b64a 100644 --- a/Marlin/src/lcd/dogm/lcdprint_u8g.cpp +++ b/Marlin/src/lcd/dogm/lcdprint_u8g.cpp @@ -16,7 +16,6 @@ #include "../marlinui.h" #include "../../MarlinCore.h" -#include "../fontutils.h" #include "u8g_fontutf8.h" #include "../lcdprint.h" diff --git a/Marlin/src/lcd/dogm/marlinui_DOGM.cpp b/Marlin/src/lcd/dogm/marlinui_DOGM.cpp index 76fa7842a31d..2552df3b88f4 100644 --- a/Marlin/src/lcd/dogm/marlinui_DOGM.cpp +++ b/Marlin/src/lcd/dogm/marlinui_DOGM.cpp @@ -47,7 +47,6 @@ #endif #include "../lcdprint.h" -#include "../fontutils.h" #include "../../libs/numtostr.h" #include "../marlinui.h" diff --git a/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp b/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp index a4ace1ce8a0d..bc961dbf15d4 100644 --- a/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp +++ b/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp @@ -73,7 +73,6 @@ #if ENABLED(LIGHTWEIGHT_UI) #include "../marlinui.h" -#include "../fontutils.h" #include "../lcdprint.h" #include "../../libs/duration_t.h" #include "../../module/motion.h" diff --git a/Marlin/src/lcd/dogm/u8g_fontutf8.cpp b/Marlin/src/lcd/dogm/u8g_fontutf8.cpp index e9d15350963a..79fabfd80547 100644 --- a/Marlin/src/lcd/dogm/u8g_fontutf8.cpp +++ b/Marlin/src/lcd/dogm/u8g_fontutf8.cpp @@ -12,7 +12,7 @@ #if HAS_MARLINUI_U8GLIB #include -#include "../fontutils.h" +#include "../utf8.h" #include "u8g_fontutf8.h" typedef void font_t; diff --git a/Marlin/src/lcd/dogm/u8g_fontutf8.h b/Marlin/src/lcd/dogm/u8g_fontutf8.h index 660eb28ffeb3..281894509d6f 100644 --- a/Marlin/src/lcd/dogm/u8g_fontutf8.h +++ b/Marlin/src/lcd/dogm/u8g_fontutf8.h @@ -9,7 +9,7 @@ #pragma once #include -#include "../fontutils.h" +#include "../utf8.h" // the macro to indicate a UTF-8 string // You should to save the C/C++ source in UTF-8 encoding! diff --git a/Marlin/src/lcd/e3v2/creality/dwin.cpp b/Marlin/src/lcd/e3v2/creality/dwin.cpp index 66baff1611f7..73621851df40 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin.cpp +++ b/Marlin/src/lcd/e3v2/creality/dwin.cpp @@ -45,7 +45,7 @@ #define JUST_BABYSTEP 1 #endif -#include "../../fontutils.h" +#include "../../utf8.h" #include "../../marlinui.h" #include "../../../sd/cardreader.h" diff --git a/Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp b/Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp index 6d60608426e8..10a478f75650 100644 --- a/Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp @@ -25,7 +25,7 @@ #if IS_DWIN_MARLINUI #include "dwin_string.h" -//#include "../../fontutils.h" +//#include "../../utf8.h" char DWIN_String::data[]; uint16_t DWIN_String::span; diff --git a/Marlin/src/lcd/e3v2/marlinui/dwin_string.h b/Marlin/src/lcd/e3v2/marlinui/dwin_string.h index 686b1aa2b17a..4224b264589b 100644 --- a/Marlin/src/lcd/e3v2/marlinui/dwin_string.h +++ b/Marlin/src/lcd/e3v2/marlinui/dwin_string.h @@ -23,7 +23,7 @@ // TODO: Make AVR-compatible with separate ROM / RAM string methods -#include "../../fontutils.h" +#include "../../utf8.h" #include "../../marlinui.h" #include diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp index 4b34d6510025..58a84ac34e51 100644 --- a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp @@ -28,9 +28,8 @@ #include "dwin_lcd.h" #include "dwin_string.h" -//#include "../../lcdprint.h" #include "lcdprint_dwin.h" -#include "../../fontutils.h" +#include "../../utf8.h" #include "../../../libs/numtostr.h" #include "../../marlinui.h" diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp index cfa326667aa5..70c7c2d8f0ba 100644 --- a/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp @@ -29,7 +29,7 @@ #include "dwin_string.h" #include "lcdprint_dwin.h" -#include "../../fontutils.h" +#include "../../utf8.h" #include "../../../libs/numtostr.h" #include "../../marlinui.h" diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index af157921d511..a372ae5b4d7e 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -31,7 +31,7 @@ #if ENABLED(DWIN_LCD_PROUI) -#include "../../fontutils.h" +#include "../../utf8.h" #include "../../marlinui.h" #include "../../../sd/cardreader.h" diff --git a/Marlin/src/lcd/lcdprint.h b/Marlin/src/lcd/lcdprint.h index 623c9dd4b91f..9ba514791894 100644 --- a/Marlin/src/lcd/lcdprint.h +++ b/Marlin/src/lcd/lcdprint.h @@ -30,7 +30,7 @@ */ #pragma once -#include "fontutils.h" +#include "utf8.h" #include "../inc/MarlinConfig.h" diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index 75e24e231344..ec929753ae42 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -42,7 +42,7 @@ MarlinUI ui; #if HAS_DISPLAY #include "../gcode/queue.h" - #include "fontutils.h" + #include "utf8.h" #endif #if ENABLED(DWIN_CREALITY_LCD) diff --git a/Marlin/src/lcd/menu/menu_configuration.cpp b/Marlin/src/lcd/menu/menu_configuration.cpp index 2fe4b7701843..0611bda84b32 100644 --- a/Marlin/src/lcd/menu/menu_configuration.cpp +++ b/Marlin/src/lcd/menu/menu_configuration.cpp @@ -59,9 +59,13 @@ #include "../../libs/buzzer.h" #endif -#include "../../core/debug_out.h" +#if EITHER(LCD_PROGRESS_BAR_TEST, LCD_ENDSTOP_TEST) + #include "../lcdprint.h" + #define HAS_DEBUG_MENU 1 +#endif -#define HAS_DEBUG_MENU EITHER(LCD_PROGRESS_BAR_TEST, LCD_ENDSTOP_TEST) +//#define DEBUG_OUT 1 +#include "../../core/debug_out.h" void menu_advanced_settings(); #if EITHER(DELTA_CALIBRATION_MENU, DELTA_AUTO_CALIBRATION) @@ -70,8 +74,6 @@ void menu_advanced_settings(); #if ENABLED(LCD_PROGRESS_BAR_TEST) - #include "../lcdprint.h" - static void progress_bar_test() { static int8_t bar_percent = 0; if (ui.use_click()) { @@ -96,8 +98,6 @@ void menu_advanced_settings(); #if ENABLED(LCD_ENDSTOP_TEST) - #include "../lcdprint.h" - #define __STOP_ITEM(F,S) PSTRING_ITEM_F_P(F, TEST(stops, S) ? PSTR(STR_ENDSTOP_HIT) : PSTR(STR_ENDSTOP_OPEN), SS_FULL) #define _STOP_ITEM(L,S) __STOP_ITEM(F(L), S) #define STOP_ITEM(A,I) _STOP_ITEM(STRINGIFY(A) STRINGIFY(I) " " TERN(A##_HOME_TO_MAX, "Max", "Min"), A##I##_ENDSTOP) diff --git a/Marlin/src/lcd/tft/tft_string.cpp b/Marlin/src/lcd/tft/tft_string.cpp index 82444a4398ee..19ea5b2079e9 100644 --- a/Marlin/src/lcd/tft/tft_string.cpp +++ b/Marlin/src/lcd/tft/tft_string.cpp @@ -25,7 +25,7 @@ #if HAS_GRAPHICAL_TFT #include "tft_string.h" -#include "../fontutils.h" +#include "../utf8.h" #include "../marlinui.h" //#define DEBUG_TFT_FONT diff --git a/Marlin/src/lcd/tft/tft_string.h b/Marlin/src/lcd/tft/tft_string.h index 85966670477b..3df6afe49bc0 100644 --- a/Marlin/src/lcd/tft/tft_string.h +++ b/Marlin/src/lcd/tft/tft_string.h @@ -23,7 +23,7 @@ #include -#include "../fontutils.h" +#include "../utf8.h" #define NO_GLYPH 0xFF diff --git a/Marlin/src/lcd/fontutils.cpp b/Marlin/src/lcd/utf8.cpp similarity index 97% rename from Marlin/src/lcd/fontutils.cpp rename to Marlin/src/lcd/utf8.cpp index 46329fd4be62..075f8b0c7c93 100644 --- a/Marlin/src/lcd/fontutils.cpp +++ b/Marlin/src/lcd/utf8.cpp @@ -21,14 +21,18 @@ */ /** - * @file fontutils.cpp - * @brief help functions for font and char + * @file utf8.cpp + * @brief Helper functions for UTF-8 strings * @author Yunhui Fu (yhfudev@gmail.com) * @version 1.0 * @date 2016-08-19 * @copyright GPL/BSD */ +#include "../inc/MarlinConfigPre.h" + +#if HAS_UTF8_UTILS + #include "../inc/MarlinConfig.h" #if HAS_WIRED_LCD @@ -36,7 +40,7 @@ #include "../MarlinCore.h" #endif -#include "fontutils.h" +#include "utf8.h" uint8_t read_byte_ram(const uint8_t *str) { return *str; } uint8_t read_byte_rom(const uint8_t *str) { return pgm_read_byte(str); } @@ -203,3 +207,5 @@ uint8_t utf8_byte_pos_by_char_num(const char *pstart, const uint8_t charnum) { uint8_t utf8_byte_pos_by_char_num_P(PGM_P pstart, const uint8_t charnum) { return utf8_byte_pos_by_char_num_cb(pstart, read_byte_rom, charnum); } + +#endif // HAS_UTF8_UTILS diff --git a/Marlin/src/lcd/fontutils.h b/Marlin/src/lcd/utf8.h similarity index 97% rename from Marlin/src/lcd/fontutils.h rename to Marlin/src/lcd/utf8.h index 69edf1a0c839..603181857174 100644 --- a/Marlin/src/lcd/fontutils.h +++ b/Marlin/src/lcd/utf8.h @@ -21,8 +21,8 @@ */ /** - * @file fontutils.h - * @brief help functions for font and char + * @file utf8.h + * @brief Helper functions for UTF-8 strings * @author Yunhui Fu (yhfudev@gmail.com) * @version 1.0 * @date 2016-08-19 diff --git a/Marlin/src/pins/ramps/pins_MKS_GEN_L.h b/Marlin/src/pins/ramps/pins_MKS_GEN_L.h index 06bb35c72b77..73e7aa577d50 100644 --- a/Marlin/src/pins/ramps/pins_MKS_GEN_L.h +++ b/Marlin/src/pins/ramps/pins_MKS_GEN_L.h @@ -38,7 +38,7 @@ // Heaters / Fans // -#define MOSFET_A_PIN 10 // HE0 +#define MOSFET_A_PIN 10 // HE0 #define MOSFET_B_PIN 7 // HE1 or FAN Hotend Cooling #define MOSFET_C_PIN 8 // HBED #define FAN0_PIN 9 // FAN Part Cooling diff --git a/buildroot/share/PlatformIO/scripts/common-dependencies.h b/buildroot/share/PlatformIO/scripts/common-dependencies.h index 9bdcac5db17f..4438b4efe189 100644 --- a/buildroot/share/PlatformIO/scripts/common-dependencies.h +++ b/buildroot/share/PlatformIO/scripts/common-dependencies.h @@ -105,3 +105,16 @@ #define HAS_MENU_UBL #endif #endif + +#if HAS_GRAPHICAL_TFT + #define NOTOSANS 1 + #define UNIFONT 2 + #define HELVETICA 3 + #if TFT_FONT == NOTOSANS + #define TFT_FONT_NOTOSANS + #elif TFT_FONT == UNIFONT + #define TFT_FONT_UNIFONT + #elif TFT_FONT == HELVETICA + #define TFT_FONT_HELVETICA + #endif +#endif diff --git a/buildroot/share/PlatformIO/scripts/common-dependencies.py b/buildroot/share/PlatformIO/scripts/common-dependencies.py index 6b5a9aea5792..58d9cfcb4d74 100644 --- a/buildroot/share/PlatformIO/scripts/common-dependencies.py +++ b/buildroot/share/PlatformIO/scripts/common-dependencies.py @@ -5,7 +5,9 @@ import pioutil if pioutil.is_pio_build(): - import subprocess,os,re + import subprocess,os,re,fnmatch,glob + srcfilepattern = re.compile(r".*[.](cpp|c)$") + marlinbasedir = os.path.join(os.getcwd(), "Marlin/") Import("env") from platformio.package.meta import PackageSpec @@ -128,6 +130,7 @@ def force_ignore_unused_libs(): def apply_features_config(): load_features() blab("========== Apply enabled features...") + build_filters = ' '.join(env.GetProjectOption('src_filter')) for feature in FEATURE_CONFIG: if not env.MarlinHas(feature): continue @@ -174,23 +177,87 @@ def apply_features_config(): if 'src_filter' in feat: blab("========== Adding build_src_filter for %s... " % feature, 2) - src_filter = ' '.join(env.GetProjectOption('src_filter')) - # first we need to remove the references to the same folder - my_srcs = re.findall(r'[+-](<.*?>)', feat['src_filter']) - cur_srcs = re.findall(r'[+-](<.*?>)', src_filter) - for d in my_srcs: - if d in cur_srcs: - src_filter = re.sub(r'[+-]' + d, '', src_filter) - - src_filter = feat['src_filter'] + ' ' + src_filter - set_env_field('build_src_filter', [src_filter]) - env.Replace(SRC_FILTER=src_filter) + build_filters = build_filters + ' ' + feat['src_filter'] + # Just append the filter in the order that the build environment specifies. + # Important here is the order of entries in the "features.ini" file. if 'lib_ignore' in feat: blab("========== Adding lib_ignore for %s... " % feature, 2) lib_ignore = env.GetProjectOption('lib_ignore') + [feat['lib_ignore']] set_env_field('lib_ignore', lib_ignore) + src_filter = "" + if True: + # Build the actual equivalent build_src_filter list based on the inclusions by the features. + # PlatformIO doesn't do it this way, but maybe in the future.... + cur_srcs = set() + # Remove the references to the same folder + my_srcs = re.findall(r'([+-]<.*?>)', build_filters) + for d in my_srcs: + # Assume normalized relative paths + plain = d[2:-1] + if d[0] == '+': + def addentry(fullpath, info=None): + relp = os.path.relpath(fullpath, marlinbasedir) + if srcfilepattern.match(relp): + if info: + blab("Added src file %s (%s)" % (relp, str(info))) + else: + blab("Added src file %s " % relp) + cur_srcs.add(relp) + # Special rule: If a direct folder is specified add all files within. + fullplain = os.path.join(marlinbasedir, plain) + if os.path.isdir(fullplain): + blab("Directory content addition for %s " % plain) + gpattern = os.path.join(fullplain, "**") + for fname in glob.glob(gpattern, recursive=True): + addentry(fname, "dca") + else: + # Add all the things from the pattern by GLOB. + def srepl(matchi): + g0 = matchi.group(0) + return r"**" + g0[1:] + gpattern = re.sub(r'[*]($|[^*])', srepl, plain) + gpattern = os.path.join(marlinbasedir, gpattern) + + for fname in glob.glob(gpattern, recursive=True): + addentry(fname) + else: + # Special rule: If a direct folder is specified then remove all files within. + def onremove(relp, info=None): + if info: + blab("Removed src file %s (%s)" % (relp, str(info))) + else: + blab("Removed src file %s " % relp) + fullplain = os.path.join(marlinbasedir, plain) + if os.path.isdir(fullplain): + blab("Directory content removal for %s " % plain) + def filt(x): + common = os.path.commonpath([plain, x]) + if not common == os.path.normpath(plain): return True + onremove(x, "dcr") + return False + cur_srcs = set(filter(filt, cur_srcs)) + else: + # Remove matching source entries. + def filt(x): + if not fnmatch.fnmatch(x, plain): return True + onremove(x) + return False + cur_srcs = set(filter(filt, cur_srcs)) + # Transform the resulting set into a string. + for x in cur_srcs: + if len(src_filter) > 0: src_filter += ' ' + src_filter += "+<" + x + ">" + + #blab("Final src_filter: " + src_filter) + else: + src_filter = build_filters + + # Update in PlatformIO + set_env_field('build_src_filter', [src_filter]) + env.Replace(SRC_FILTER=src_filter) + # # Use the compiler to get a list of all enabled features # @@ -226,6 +293,8 @@ def MarlinHas(env, feature): elif val in env['MARLIN_FEATURES']: some_on = env.MarlinHas(val) + #blab("%s is %s" % (feature, str(some_on))) + return some_on validate_pio() diff --git a/ini/features.ini b/ini/features.ini index d459c2bee9c2..660e3fb2c8a1 100644 --- a/ini/features.ini +++ b/ini/features.ini @@ -9,6 +9,8 @@ # # ################################# +# The order of the features matters for source-filter resolution inside of common-dependencies.py. + [features] YHCB2004 = red-scorp/LiquidCrystal_AIP31068@^1.0.4, red-scorp/SoftSPIB@^1.1.1 HAS_TFT_LVGL_UI = lvgl=https://github.com/makerbase-mks/LVGL-6.1.1-MKS/archive/master.zip @@ -23,6 +25,7 @@ HAS_TRINAMIC_CONFIG = TMCStepper@~0.7.3 HAS_T(RINAMIC_CONFIG|MC_SPI) = src_filter=+ HAS_STEALTHCHOP = src_filter=+ SR_LCD_3W_NL = SailfishLCD=https://github.com/mikeshub/SailfishLCD/archive/master.zip +HAS_MOTOR_CURRENT_(I2C|DAC|SPI|PWM) = src_filter=+ HAS_MOTOR_CURRENT_I2C = SlowSoftI2CMaster src_filter=+ HAS_TMC26X = TMC26XStepper=https://github.com/MarlinFirmware/TMC26XStepper/archive/master.zip @@ -39,9 +42,12 @@ HAS_LCDPRINT = src_filter=+ HAS_MARLINUI_HD44780 = src_filter=+ HAS_MARLINUI_U8GLIB = marlinfirmware/U8glib-HAL@~0.5.2 src_filter=+ -HAS_(FSMC|SPI|LTDC)_TFT = src_filter=+ + + +HAS_(FSMC|SPI|LTDC)_TFT = src_filter=+ +HAS_LTDC_TFT = src_filter=+ HAS_FSMC_TFT = src_filter=+ + -HAS_SPI_TFT = src_filter=+ + +HAS_SPI_TFT = src_filter=+ + + +HAS_TFT_XPT2046 = src_filter=+ + + +TFT_TOUCH_DEVICE_GT911 = src_filter=+ I2C_EEPROM = src_filter=+ SOFT_I2C_EEPROM = SlowSoftI2CMaster, SlowSoftWire=https://github.com/felias-fogg/SlowSoftWire/archive/master.zip SPI_EEPROM = src_filter=+ @@ -50,10 +56,13 @@ DWIN_CREALITY_LCD = src_filter=+ DWIN_LCD_PROUI = src_filter=+ DWIN_CREALITY_LCD_JYERSUI = src_filter=+ IS_DWIN_MARLINUI = src_filter=+ -HAS_GRAPHICAL_TFT = src_filter=+ +HAS_GRAPHICAL_TFT = src_filter=+ - +TFT_FONT_HELVETICA = src_filter=+ +TFT_FONT_NOTOSANS = src_filter=+ +TFT_FONT_UNIFONT = src_filter=+ IS_TFTGLCD_PANEL = src_filter=+ HAS_TOUCH_BUTTONS = src_filter=+ -HAS_MARLINUI_MENU = src_filter=+ +HAS_MARLINUI_MENU = src_filter=+ - HAS_GAMES = src_filter=+ MARLIN_BRICKOUT = src_filter=+ MARLIN_INVADERS = src_filter=+ @@ -80,6 +89,7 @@ HAS_MENU_TMC = src_filter=+ HAS_MENU_TOUCH_SCREEN = src_filter=+ HAS_MENU_TRAMMING_WIZARD = src_filter=+ HAS_MENU_UBL = src_filter=+ +EXTENSIBLE_UI = src_filter=+ ANYCUBIC_LCD_(CHIRON|VYPER) = src_filter=+ ANYCUBIC_LCD_CHIRON = src_filter=+ ANYCUBIC_LCD_VYPER = src_filter=+ @@ -171,7 +181,6 @@ HAS_EXTRA_ENDSTOPS = src_filter=+ DIRECT_PIN_CONTROL = src_filter=+ + PINS_DEBUGGING = src_filter=+ -NO_VOLUMETRICS = src_filter=- HAS_MULTI_EXTRUDER = src_filter=+ HAS_HOTEND_OFFSET = src_filter=+ EDITABLE_SERVO_ANGLES = src_filter=+ @@ -179,6 +188,7 @@ PIDTEMP = src_filter=+ PREVENT_COLD_EXTRUSION = src_filter=+ PIDTEMPBED = src_filter=+ HAS_USER_THERMISTORS = src_filter=+ +PIDTEMPCHAMBER = src_filter=+ SD_ABORT_ON_ENDSTOP_HIT = src_filter=+ BAUD_RATE_GCODE = src_filter=+ HAS_SMART_EFF_MOD = src_filter=+ @@ -187,7 +197,9 @@ AIR_EVACUATION = src_filter=+ SERVO_DETACH_GCODE = src_filter=+ HAS_DUPLICATION_MODE = src_filter=+ -FT_MOTION = src_filter=+ + +SPI_FLASH_BACKUP = src_filter=+ +PLATFORM_M997_SUPPORT = src_filter=+ +FT_MOTION = src_filter=+ + LIN_ADVANCE = src_filter=+ PHOTO_GCODE = src_filter=+ CONTROLLER_FAN_EDITABLE = src_filter=+ @@ -223,10 +235,15 @@ MAGNETIC_PARKING_EXTRUDER = src_filter=+ HAS_MEDIA = src_filter=+ + + + + + + HAS_MEDIA_SUBCALLS = src_filter=+ GCODE_REPEAT_MARKERS = src_filter=+ + -HAS_EXTRUDERS = src_filter=+ + + -HAS_TEMP_PROBE = src_filter=+ +HAS_EXTRUDERS = src_filter=+ + +HAS_HOTEND = src_filter=+ +HAS_FAN = src_filter=+ +HAS_HEATED_BED = src_filter=+ +HAS_HEATED_CHAMBER = src_filter=+ HAS_COOLER = src_filter=+ AUTO_REPORT_TEMPERATURES = src_filter=+ +HAS_TEMP_PROBE = src_filter=+ +HAS_PID_HEATING = src_filter=+ MPCTEMP = src_filter=+ INCH_MODE_SUPPORT = src_filter=+ TEMPERATURE_UNITS_SUPPORT = src_filter=+ diff --git a/ini/lpc176x.ini b/ini/lpc176x.ini index 223ba3cabd16..548baaa4107a 100644 --- a/ini/lpc176x.ini +++ b/ini/lpc176x.ini @@ -20,12 +20,13 @@ lib_ldf_mode = off lib_compat_mode = strict extra_scripts = ${common.extra_scripts} Marlin/src/HAL/LPC1768/upload_extra_script.py -build_src_filter = ${common.default_src_filter} + + +build_src_filter = ${common.default_src_filter} + - + lib_deps = ${common.lib_deps} Servo custom_marlin.USES_LIQUIDCRYSTAL = arduino-libraries/LiquidCrystal@~1.0.7 custom_marlin.NEOPIXEL_LED = Adafruit NeoPixel=https://github.com/p3p/Adafruit_NeoPixel/archive/1.5.0.zip -build_flags = ${common.build_flags} -DU8G_HAL_LINKS -IMarlin/src/HAL/LPC1768/include -IMarlin/src/HAL/LPC1768/u8g +build_flags = ${common.build_flags} -DU8G_HAL_LINKS -DPLATFORM_M997_SUPPORT + -IMarlin/src/HAL/LPC1768/include -IMarlin/src/HAL/LPC1768/u8g # debug options for backtrace #-funwind-tables #-mpoke-function-name diff --git a/ini/stm32-common.ini b/ini/stm32-common.ini index c8f28cd0e314..464d8f475744 100644 --- a/ini/stm32-common.ini +++ b/ini/stm32-common.ini @@ -12,13 +12,11 @@ [common_stm32] platform = ststm32@~12.1 board_build.core = stm32 -build_flags = ${common.build_flags} - -std=gnu++14 -DHAL_STM32 - -DUSBCON -DUSBD_USE_CDC - -DTIM_IRQ_PRIO=13 - -DADC_RESOLUTION=12 +build_flags = ${common.build_flags} -std=gnu++14 + -DHAL_STM32 -DPLATFORM_M997_SUPPORT + -DUSBCON -DUSBD_USE_CDC -DTIM_IRQ_PRIO=13 -DADC_RESOLUTION=12 build_unflags = -std=gnu++11 -build_src_filter = ${common.default_src_filter} + + +build_src_filter = ${common.default_src_filter} + - + extra_scripts = ${common.extra_scripts} pre:buildroot/share/PlatformIO/scripts/stm32_serialbuffer.py diff --git a/ini/stm32f0.ini b/ini/stm32f0.ini index d62ac3acf54f..d23ee2a6038e 100644 --- a/ini/stm32f0.ini +++ b/ini/stm32f0.ini @@ -48,4 +48,4 @@ board = malyanm300_f070cb build_flags = ${common_stm32.build_flags} -DHAL_PCD_MODULE_ENABLED -DDISABLE_GENERIC_SERIALUSB -DHAL_UART_MODULE_ENABLED -build_src_filter = ${common.default_src_filter} + +build_src_filter = ${common.default_src_filter} + - diff --git a/ini/stm32f1-maple.ini b/ini/stm32f1-maple.ini index d361a0d40a98..3560c1fd2a87 100644 --- a/ini/stm32f1-maple.ini +++ b/ini/stm32f1-maple.ini @@ -26,9 +26,9 @@ platform = ststm32@~12.1 board_build.core = maple build_flags = !python Marlin/src/HAL/STM32F1/build_flags.py - ${common.build_flags} -DARDUINO_ARCH_STM32 -DMAPLE_STM32F1 + ${common.build_flags} -DARDUINO_ARCH_STM32 -DMAPLE_STM32F1 -DPLATFORM_M997_SUPPORT build_unflags = -std=gnu11 -std=gnu++11 -build_src_filter = ${common.default_src_filter} + +build_src_filter = ${common.default_src_filter} + - lib_ignore = SPI, FreeRTOS701, FreeRTOS821 lib_deps = ${common.lib_deps} SoftwareSerialM diff --git a/ini/stm32f1.ini b/ini/stm32f1.ini index 230f1ae774cb..d19de4d2ddde 100644 --- a/ini/stm32f1.ini +++ b/ini/stm32f1.ini @@ -253,7 +253,7 @@ board = malyanm200_f103cb build_flags = ${common_stm32.build_flags} -DHAL_PCD_MODULE_ENABLED -DDISABLE_GENERIC_SERIALUSB -DHAL_UART_MODULE_ENABLED -build_src_filter = ${common.default_src_filter} + +build_src_filter = ${common.default_src_filter} + - # # FLYmaker FLY Mini (STM32F103RCT6) diff --git a/platformio.ini b/platformio.ini index 885fdd87d6b5..e3bdb6f58676 100644 --- a/platformio.ini +++ b/platformio.ini @@ -52,218 +52,79 @@ extra_scripts = pre:buildroot/share/PlatformIO/scripts/preflight-checks.py post:buildroot/share/PlatformIO/scripts/common-dependencies-post.py lib_deps = -default_src_filter = + - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +default_src_filter = + - - + ; LCDs and Controllers + - - - - - + - - - - - - - - - - - - - - - - - - - + ; Marlin HAL + - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + ; Features and G-Codes + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - + - + - + ; Library Code + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + ; Modules + - + - + ; Media Support + - + ; + ; Minimal Requirements + ; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + # # Default values apply to all 'env:' prefixed environments From 959f7308e760d85cdbfe90ea3581f42811823389 Mon Sep 17 00:00:00 2001 From: TheSnowfield <17957399+TheSnowfield@users.noreply.github.com> Date: Thu, 27 Apr 2023 20:37:11 +0800 Subject: [PATCH 082/427] =?UTF-8?q?=E2=9C=A8=20AUTO=5FREPORT=5FREAL=5FPOSI?= =?UTF-8?q?TION=20option=20for=20M154=20(#25738)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 3 +++ Marlin/src/module/motion.h | 4 +++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 5eb709f704ac..cd19393551a8 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -3733,6 +3733,9 @@ * Auto-report position with M154 S */ //#define AUTO_REPORT_POSITION +#if ENABLED(AUTO_REPORT_POSITION) + //#define AUTO_REPORT_REAL_POSITION // Auto-report the real position +#endif /** * Include capabilities in M115 output diff --git a/Marlin/src/module/motion.h b/Marlin/src/module/motion.h index 4cd4641e3dbc..e899815c0f88 100644 --- a/Marlin/src/module/motion.h +++ b/Marlin/src/module/motion.h @@ -259,7 +259,9 @@ void report_current_position_projected(); #if ENABLED(AUTO_REPORT_POSITION) #include "../libs/autoreport.h" - struct PositionReport { static void report() { report_current_position_projected(); } }; + struct PositionReport { static void report() { + TERN(AUTO_REPORT_REAL_POSITION, report_real_position(), report_current_position_projected()); + } }; extern AutoReporter position_auto_reporter; #endif From 0e2c5b45ece8ebe591e27cebe9570f9049a55f83 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 28 Apr 2023 00:21:29 +0000 Subject: [PATCH 083/427] [cron] Bump distribution date (2023-04-28) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 94dc8bd0244c..e5e96da7c265 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-27" +//#define STRING_DISTRIBUTION_DATE "2023-04-28" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index dbed7697cb3b..cedbb273e4c8 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-27" + #define STRING_DISTRIBUTION_DATE "2023-04-28" #endif /** From 6323de309fc6b54f67121c147240c060ecc6c143 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 28 Apr 2023 11:03:20 -0500 Subject: [PATCH 084/427] =?UTF-8?q?=F0=9F=94=A8=20Fix=20LPC=20faux=20pins?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25332 --- Marlin/src/HAL/shared/fauxpins.h | 100 +++++++++++++++---------------- 1 file changed, 50 insertions(+), 50 deletions(-) diff --git a/Marlin/src/HAL/shared/fauxpins.h b/Marlin/src/HAL/shared/fauxpins.h index 8bc52c69265c..924bfba02ae0 100644 --- a/Marlin/src/HAL/shared/fauxpins.h +++ b/Marlin/src/HAL/shared/fauxpins.h @@ -201,16 +201,16 @@ // // LPC Pin Names // -#define P0_0 100 -#define P0_1 101 -#define P0_2 102 -#define P0_3 103 -#define P0_4 104 -#define P0_5 105 -#define P0_6 106 -#define P0_7 107 -#define P0_8 108 -#define P0_9 109 +#define P0_00 100 +#define P0_01 101 +#define P0_02 102 +#define P0_03 103 +#define P0_04 104 +#define P0_05 105 +#define P0_06 106 +#define P0_07 107 +#define P0_08 108 +#define P0_09 109 #define P0_10 110 #define P0_11 111 #define P0_12 112 @@ -234,16 +234,16 @@ #define P0_30 130 #define P0_31 131 -#define P1_0 200 -#define P1_1 201 -#define P1_2 202 -#define P1_3 203 -#define P1_4 204 -#define P1_5 205 -#define P1_6 206 -#define P1_7 207 -#define P1_8 208 -#define P1_9 209 +#define P1_00 200 +#define P1_01 201 +#define P1_02 202 +#define P1_03 203 +#define P1_04 204 +#define P1_05 205 +#define P1_06 206 +#define P1_07 207 +#define P1_08 208 +#define P1_09 209 #define P1_10 210 #define P1_11 211 #define P1_12 212 @@ -267,16 +267,16 @@ #define P1_30 230 #define P1_31 231 -#define P2_0 300 -#define P2_1 301 -#define P2_2 302 -#define P2_3 303 -#define P2_4 304 -#define P2_5 305 -#define P2_6 306 -#define P2_7 307 -#define P2_8 308 -#define P2_9 309 +#define P2_00 300 +#define P2_01 301 +#define P2_02 302 +#define P2_03 303 +#define P2_04 304 +#define P2_05 305 +#define P2_06 306 +#define P2_07 307 +#define P2_08 308 +#define P2_09 309 #define P2_10 310 #define P2_11 311 #define P2_12 312 @@ -300,16 +300,16 @@ #define P2_30 330 #define P2_31 331 -#define P3_0 400 -#define P3_1 401 -#define P3_2 402 -#define P3_3 403 -#define P3_4 404 -#define P3_5 405 -#define P3_6 406 -#define P3_7 407 -#define P3_8 408 -#define P3_9 409 +#define P3_00 400 +#define P3_01 401 +#define P3_02 402 +#define P3_03 403 +#define P3_04 404 +#define P3_05 405 +#define P3_06 406 +#define P3_07 407 +#define P3_08 408 +#define P3_09 409 #define P3_10 410 #define P3_11 411 #define P3_12 412 @@ -333,16 +333,16 @@ #define P3_30 430 #define P3_31 431 -#define P4_0 500 -#define P4_1 501 -#define P4_2 502 -#define P4_3 503 -#define P4_4 504 -#define P4_5 505 -#define P4_6 506 -#define P4_7 507 -#define P4_8 508 -#define P4_9 509 +#define P4_00 500 +#define P4_01 501 +#define P4_02 502 +#define P4_03 503 +#define P4_04 504 +#define P4_05 505 +#define P4_06 506 +#define P4_07 507 +#define P4_08 508 +#define P4_09 509 #define P4_10 510 #define P4_11 511 #define P4_12 512 From a872232b15d63c73c5c5ce281e3d1dcadb47b608 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 28 Apr 2023 11:03:38 -0500 Subject: [PATCH 085/427] =?UTF-8?q?=F0=9F=94=A7=20Move=20MMU=20section?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration.h | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 33b661e3c8c3..0ce37a238487 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -222,24 +222,6 @@ //#define SINGLENOZZLE_STANDBY_FAN #endif -// @section multi-material - -/** - * Multi-Material Unit - * Set to one of these predefined models: - * - * PRUSA_MMU1 : Průša MMU1 (The "multiplexer" version) - * PRUSA_MMU2 : Průša MMU2 - * PRUSA_MMU2S : Průša MMU2S (Requires MK3S extruder with motion sensor, EXTRUDERS = 5) - * EXTENDABLE_EMU_MMU2 : MMU with configurable number of filaments (ERCF, SMuFF or similar with Průša MMU2 compatible firmware) - * EXTENDABLE_EMU_MMU2S : MMUS with configurable number of filaments (ERCF, SMuFF or similar with Průša MMU2 compatible firmware) - * - * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails. - * See additional options in Configuration_adv.h. - * :["PRUSA_MMU1", "PRUSA_MMU2", "PRUSA_MMU2S", "EXTENDABLE_EMU_MMU2", "EXTENDABLE_EMU_MMU2S"] - */ -//#define MMU_MODEL PRUSA_MMU2 - // A dual extruder that uses a single stepper motor //#define SWITCHING_EXTRUDER #if ENABLED(SWITCHING_EXTRUDER) @@ -382,6 +364,24 @@ //#define HOTEND_OFFSET_Y { 0.0, 5.00 } // (mm) relative Y-offset for each nozzle //#define HOTEND_OFFSET_Z { 0.0, 0.00 } // (mm) relative Z-offset for each nozzle +// @section multi-material + +/** + * Multi-Material Unit + * Set to one of these predefined models: + * + * PRUSA_MMU1 : Průša MMU1 (The "multiplexer" version) + * PRUSA_MMU2 : Průša MMU2 + * PRUSA_MMU2S : Průša MMU2S (Requires MK3S extruder with motion sensor, EXTRUDERS = 5) + * EXTENDABLE_EMU_MMU2 : MMU with configurable number of filaments (ERCF, SMuFF or similar with Průša MMU2 compatible firmware) + * EXTENDABLE_EMU_MMU2S : MMUS with configurable number of filaments (ERCF, SMuFF or similar with Průša MMU2 compatible firmware) + * + * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails. + * See additional options in Configuration_adv.h. + * :["PRUSA_MMU1", "PRUSA_MMU2", "PRUSA_MMU2S", "EXTENDABLE_EMU_MMU2", "EXTENDABLE_EMU_MMU2S"] + */ +//#define MMU_MODEL PRUSA_MMU2 + // @section psu control /** From 7d95928cbb3de6c677bf76110097c0aa21965740 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 28 Apr 2023 13:38:59 -0500 Subject: [PATCH 086/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20auto=20pullup/down?= =?UTF-8?q?=20settings?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25748 --- Marlin/src/inc/Conditionals_post.h | 226 ++++++++++++++--------------- 1 file changed, 106 insertions(+), 120 deletions(-) diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index bb78178ad517..2c611099e327 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -1012,126 +1012,6 @@ #endif // Z_MULTI_ENDSTOPS -/** - * Set ENDSTOPPULLUPS for active endstop switches - */ -#if ENABLED(ENDSTOPPULLUPS) - #if HAS_X_MAX - #define ENDSTOPPULLUP_XMAX - #endif - #if HAS_Y_MAX - #define ENDSTOPPULLUP_YMAX - #endif - #if HAS_Z_MAX - #define ENDSTOPPULLUP_ZMAX - #endif - #if HAS_I_MAX - #define ENDSTOPPULLUP_IMAX - #endif - #if HAS_J_MAX - #define ENDSTOPPULLUP_JMAX - #endif - #if HAS_K_MAX - #define ENDSTOPPULLUP_KMAX - #endif - #if HAS_U_MAX - #define ENDSTOPPULLUP_UMAX - #endif - #if HAS_V_MAX - #define ENDSTOPPULLUP_VMAX - #endif - #if HAS_W_MAX - #define ENDSTOPPULLUP_WMAX - #endif - #if HAS_X_MIN - #define ENDSTOPPULLUP_XMIN - #endif - #if HAS_Y_MIN - #define ENDSTOPPULLUP_YMIN - #endif - #if HAS_Z_MIN_PIN - #define ENDSTOPPULLUP_ZMIN - #endif - #if HAS_I_MIN - #define ENDSTOPPULLUP_IMIN - #endif - #if HAS_J_MIN - #define ENDSTOPPULLUP_JMIN - #endif - #if HAS_K_MIN - #define ENDSTOPPULLUP_KMIN - #endif - #if HAS_U_MIN - #define ENDSTOPPULLUP_UMIN - #endif - #if HAS_V_MIN - #define ENDSTOPPULLUP_VMIN - #endif - #if HAS_W_MIN - #define ENDSTOPPULLUP_WMIN - #endif -#endif - -/** - * Set ENDSTOPPULLDOWNS for active endstop switches - */ -#if ENABLED(ENDSTOPPULLDOWNS) - #if HAS_X_MAX - #define ENDSTOPPULLDOWN_XMAX - #endif - #if HAS_Y_MAX - #define ENDSTOPPULLDOWN_YMAX - #endif - #if HAS_Z_MAX - #define ENDSTOPPULLDOWN_ZMAX - #endif - #if HAS_I_MAX - #define ENDSTOPPULLDOWN_IMAX - #endif - #if HAS_J_MAX - #define ENDSTOPPULLDOWN_JMAX - #endif - #if HAS_K_MAX - #define ENDSTOPPULLDOWN_KMAX - #endif - #if HAS_U_MAX - #define ENDSTOPPULLDOWN_UMAX - #endif - #if HAS_V_MAX - #define ENDSTOPPULLDOWN_VMAX - #endif - #if HAS_W_MAX - #define ENDSTOPPULLDOWN_WMAX - #endif - #if HAS_X_MIN - #define ENDSTOPPULLDOWN_XMIN - #endif - #if HAS_Y_MIN - #define ENDSTOPPULLDOWN_YMIN - #endif - #if HAS_Z_MIN_PIN - #define ENDSTOPPULLDOWN_ZMIN - #endif - #if HAS_I_MIN - #define ENDSTOPPULLDOWN_IMIN - #endif - #if HAS_J_MIN - #define ENDSTOPPULLDOWN_JMIN - #endif - #if HAS_K_MIN - #define ENDSTOPPULLDOWN_KMIN - #endif - #if HAS_U_MIN - #define ENDSTOPPULLDOWN_UMIN - #endif - #if HAS_V_MIN - #define ENDSTOPPULLDOWN_VMIN - #endif - #if HAS_W_MIN - #define ENDSTOPPULLDOWN_WMIN - #endif -#endif - /** * Shorthand for pin tests, used wherever needed */ @@ -2207,6 +2087,112 @@ #undef _HAS_STOP +/** + * Set ENDSTOPPULLUPS for active endstop switches + */ +#if ENABLED(ENDSTOPPULLUPS) + #if HAS_X_MIN + #define ENDSTOPPULLUP_XMIN + #endif + #if HAS_X_MAX + #define ENDSTOPPULLUP_XMAX + #endif + #if HAS_Y_MIN + #define ENDSTOPPULLUP_YMIN + #elif HAS_Y_MAX + #define ENDSTOPPULLUP_YMAX + #endif + #if HAS_Z_MIN_PIN + #define ENDSTOPPULLUP_ZMIN + #endif + #if HAS_Z_MAX + #define ENDSTOPPULLUP_ZMAX + #endif + #if HAS_I_MIN + #define ENDSTOPPULLUP_IMIN + #elif HAS_I_MAX + #define ENDSTOPPULLUP_IMAX + #endif + #if HAS_J_MIN + #define ENDSTOPPULLUP_JMIN + #elif HAS_J_MAX + #define ENDSTOPPULLUP_JMAX + #endif + #if HAS_K_MIN + #define ENDSTOPPULLUP_KMIN + #elif HAS_K_MAX + #define ENDSTOPPULLUP_KMAX + #endif + #if HAS_U_MIN + #define ENDSTOPPULLUP_UMIN + #elif HAS_U_MAX + #define ENDSTOPPULLUP_UMAX + #endif + #if HAS_V_MIN + #define ENDSTOPPULLUP_VMIN + #elif HAS_V_MAX + #define ENDSTOPPULLUP_VMAX + #endif + #if HAS_W_MIN + #define ENDSTOPPULLUP_WMIN + #elif HAS_W_MAX + #define ENDSTOPPULLUP_WMAX + #endif +#endif + +/** + * Set ENDSTOPPULLDOWNS for active endstop switches + */ +#if ENABLED(ENDSTOPPULLDOWNS) + #if HAS_X_MIN + #define ENDSTOPPULLDOWN_XMIN + #endif + #if HAS_X_MAX + #define ENDSTOPPULLDOWN_XMAX + #endif + #if HAS_Y_MIN + #define ENDSTOPPULLDOWN_YMIN + #elif HAS_Y_MAX + #define ENDSTOPPULLDOWN_YMAX + #endif + #if HAS_Z_MIN_PIN + #define ENDSTOPPULLDOWN_ZMIN + #endif + #if HAS_Z_MAX + #define ENDSTOPPULLDOWN_ZMAX + #endif + #if HAS_I_MIN + #define ENDSTOPPULLDOWN_IMIN + #elif HAS_I_MAX + #define ENDSTOPPULLDOWN_IMAX + #endif + #if HAS_J_MIN + #define ENDSTOPPULLDOWN_JMIN + #elif HAS_J_MAX + #define ENDSTOPPULLDOWN_JMAX + #endif + #if HAS_K_MIN + #define ENDSTOPPULLDOWN_KMIN + #elif HAS_K_MAX + #define ENDSTOPPULLDOWN_KMAX + #endif + #if HAS_U_MIN + #define ENDSTOPPULLDOWN_UMIN + #elif HAS_U_MAX + #define ENDSTOPPULLDOWN_UMAX + #endif + #if HAS_V_MIN + #define ENDSTOPPULLDOWN_VMIN + #elif HAS_V_MAX + #define ENDSTOPPULLDOWN_VMAX + #endif + #if HAS_W_MIN + #define ENDSTOPPULLDOWN_WMIN + #elif HAS_W_MAX + #define ENDSTOPPULLDOWN_WMAX + #endif +#endif + // // ADC Temp Sensors (Thermistor or Thermocouple with amplifier ADC interface) // From c5a2e41647a12ef16b280975ab713e080e831e46 Mon Sep 17 00:00:00 2001 From: James Pearson Date: Fri, 28 Apr 2023 23:30:15 +0100 Subject: [PATCH 087/427] =?UTF-8?q?=F0=9F=90=9B=20Probe=20behavior=20corre?= =?UTF-8?q?ctions=20(#25631)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine Co-authored-by: David Fries <2767875+dfries@users.noreply.github.com> --- Marlin/Configuration.h | 2 +- Marlin/Configuration_adv.h | 2 +- Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp | 19 ++++----- Marlin/src/gcode/bedlevel/G35.cpp | 2 +- Marlin/src/gcode/calibrate/G28.cpp | 41 +++++++++++++------- Marlin/src/gcode/calibrate/G33.cpp | 2 +- Marlin/src/gcode/calibrate/G34_M422.cpp | 27 ++++--------- Marlin/src/gcode/calibrate/M48.cpp | 2 +- Marlin/src/gcode/probe/G30.cpp | 2 +- Marlin/src/inc/SanityCheck.h | 4 ++ Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 36 ++++++++++------- Marlin/src/lcd/menu/menu_probe_offset.cpp | 2 +- Marlin/src/lcd/menu/menu_tramming_wizard.cpp | 2 +- Marlin/src/module/probe.cpp | 30 ++++++++------ Marlin/src/module/probe.h | 22 ++++++++--- 15 files changed, 113 insertions(+), 82 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 0ce37a238487..68784df5d7f9 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1725,7 +1725,7 @@ //#define Z_CLEARANCE_FOR_HOMING 4 // (mm) Minimal Z height before homing (G28) for Z clearance above the bed, clamps, ... // Be sure to have this much clearance over your Z_MAX_POS to prevent grinding. -//#define Z_AFTER_HOMING 10 // (mm) Height to move to after homing Z +//#define Z_AFTER_HOMING 10 // (mm) Height to move to after homing (if Z was homed) // Direction of endstops when homing; 1=MAX, -1=MIN // :[-1,1] diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index cd19393551a8..f712a6921a87 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -924,7 +924,7 @@ //#define QUICK_HOME // If G28 contains XY do a diagonal move first //#define HOME_Y_BEFORE_X // If G28 contains XY home Y before X -//#define HOME_Z_FIRST // Home Z first. Requires a Z-MIN endstop (not a probe). +//#define HOME_Z_FIRST // Home Z first. Requires a real endstop (not a probe). //#define CODEPENDENT_XY_HOMING // If X/Y can't home without homing Y/X first // @section bltouch diff --git a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp index 7277b293aae7..2fbd3bfbebea 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp +++ b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp @@ -112,7 +112,7 @@ * If omitted, the nozzle will raise by Z_CLEARANCE_BETWEEN_PROBES. * * H # Offset With P4, 'H' specifies the Offset above the mesh height to place the nozzle. - * If omitted, Z_CLEARANCE_BETWEEN_PROBES will be used. + * If omitted, Z_TWEEN_SAFE_CLEARANCE will be used. * * I # Invalidate Invalidate the specified number of Mesh Points near the given 'X' 'Y'. If X or Y are omitted, * the nozzle location is used. If no 'I' value is given, only the point nearest to the location @@ -790,10 +790,7 @@ void unified_bed_leveling::shift_mesh_height() { if (best.pos.x >= 0) { // mesh point found and is reachable by probe TERN_(EXTENSIBLE_UI, ExtUI::onMeshUpdate(best.pos, ExtUI::G29_POINT_START)); - const float measured_z = probe.probe_at_point( - best.meshpos(), - stow_probe ? PROBE_PT_STOW : PROBE_PT_RAISE, param.V_verbosity - ); + const float measured_z = probe.probe_at_point(best.meshpos(), stow_probe ? PROBE_PT_STOW : PROBE_PT_RAISE, param.V_verbosity); z_values[best.pos.x][best.pos.y] = measured_z; #if ENABLED(EXTENSIBLE_UI) ExtUI::onMeshUpdate(best.pos, ExtUI::G29_POINT_FINISH); @@ -1034,9 +1031,9 @@ void set_message_with_feedback(FSTR_P const fstr) { save_ubl_active_state_and_disable(); LCD_MESSAGE(MSG_UBL_FINE_TUNE_MESH); - ui.capture(); // Take over control of the LCD encoder + ui.capture(); // Take over control of the LCD encoder - do_blocking_move_to_xy_z(pos, Z_CLEARANCE_BETWEEN_PROBES); // Move to the given XY with probe clearance + do_blocking_move_to_xy_z(pos, Z_TWEEN_SAFE_CLEARANCE); // Move to the given XY with probe clearance MeshFlags done_flags{0}; const xy_int8_t &lpos = location.pos; @@ -1053,7 +1050,7 @@ void set_message_with_feedback(FSTR_P const fstr) { done_flags.mark(lpos); // Mark this location as 'adjusted' so a new // location is used on the next loop - const xyz_pos_t raw = { get_mesh_x(lpos.x), get_mesh_y(lpos.y), Z_CLEARANCE_BETWEEN_PROBES }; + const xyz_pos_t raw = { get_mesh_x(lpos.x), get_mesh_y(lpos.y), Z_TWEEN_SAFE_CLEARANCE }; if (!position_is_reachable(raw)) break; // SHOULD NOT OCCUR (find_closest_mesh_point_of_type only returns reachable) @@ -1063,7 +1060,7 @@ void set_message_with_feedback(FSTR_P const fstr) { KEEPALIVE_STATE(PAUSED_FOR_USER); - if (do_ubl_mesh_map) display_map(param.T_map_type); // Display the current point + if (do_ubl_mesh_map) display_map(param.T_map_type); // Display the current point #if IS_TFTGLCD_PANEL ui.ubl_plot(lpos.x, lpos.y); // update plot screen @@ -1093,7 +1090,7 @@ void set_message_with_feedback(FSTR_P const fstr) { // Button held down? Abort editing if (_click_and_hold([]{ ui.return_to_status(); - do_z_clearance(Z_CLEARANCE_BETWEEN_PROBES); + do_z_clearance(Z_TWEEN_SAFE_CLEARANCE); set_message_with_feedback(GET_TEXT_F(MSG_EDITING_STOPPED)); })) break; @@ -1113,7 +1110,7 @@ void set_message_with_feedback(FSTR_P const fstr) { if (do_ubl_mesh_map) display_map(param.T_map_type); restore_ubl_active_state_and_leave(); - do_blocking_move_to_xy_z(pos, Z_CLEARANCE_BETWEEN_PROBES); + do_blocking_move_to_xy_z(pos, Z_TWEEN_SAFE_CLEARANCE); LCD_MESSAGE(MSG_UBL_DONE_EDITING_MESH); SERIAL_ECHOLNPGM("Done Editing Mesh"); diff --git a/Marlin/src/gcode/bedlevel/G35.cpp b/Marlin/src/gcode/bedlevel/G35.cpp index 27c57cf62ebc..f5f395ee2e25 100644 --- a/Marlin/src/gcode/bedlevel/G35.cpp +++ b/Marlin/src/gcode/bedlevel/G35.cpp @@ -98,7 +98,7 @@ void GcodeSuite::G35() { // Probe all positions LOOP_L_N(i, G35_PROBE_COUNT) { - const float z_probed_height = probe.probe_at_point(tramming_points[i], PROBE_PT_RAISE, 0, true); + const float z_probed_height = probe.probe_at_point(tramming_points[i], PROBE_PT_RAISE); if (isnan(z_probed_height)) { SERIAL_ECHOPGM("G35 failed at point ", i + 1, " ("); SERIAL_ECHOPGM_P((char *)pgm_read_ptr(&tramming_point_name[i])); diff --git a/Marlin/src/gcode/calibrate/G28.cpp b/Marlin/src/gcode/calibrate/G28.cpp index 782761ee14b1..ed2cda29326e 100644 --- a/Marlin/src/gcode/calibrate/G28.cpp +++ b/Marlin/src/gcode/calibrate/G28.cpp @@ -356,6 +356,8 @@ void GcodeSuite::G28() { endstops.enable(true); // Enable endstops for next homing move + bool finalRaiseZ = false; + #if ENABLED(DELTA) constexpr bool doZ = true; // for NANODLP_Z_SYNC if your DLP is on a DELTA @@ -407,8 +409,9 @@ void GcodeSuite::G28() { UNUSED(needZ); UNUSED(homeZZ); - // Z may home first, e.g., when homing away from the bed - TERN_(HOME_Z_FIRST, if (doZ) homeaxis(Z_AXIS)); + // Z may home first, e.g., when homing away from the bed. + // This is also permitted when homing with a Z endstop. + if (TERN0(HOME_Z_FIRST, doZ)) homeaxis(Z_AXIS); // 'R' to specify a specific raise. 'R0' indicates no raise, e.g., for recovery.resume // When 'R0' is used, there should already be adequate clearance, e.g., from homing Z to max. @@ -517,7 +520,10 @@ void GcodeSuite::G28() { #else homeaxis(Z_AXIS); #endif - do_move_after_z_homing(); + + #if EITHER(Z_HOME_TO_MIN, ALLOW_Z_AFTER_HOMING) + finalRaiseZ = true; + #endif } #endif @@ -575,18 +581,6 @@ void GcodeSuite::G28() { // Clear endstop state for polled stallGuard endstops TERN_(SPI_ENDSTOPS, endstops.clear_endstop_state()); - // Move to a height where we can use the full xy-area - TERN_(DELTA_HOME_TO_SAFE_ZONE, do_blocking_move_to_z(delta_clip_start_height)); - - TERN_(CAN_SET_LEVELING_AFTER_G28, if (leveling_restore_state) set_bed_leveling_enabled()); - - restore_feedrate_and_scaling(); - - // Restore the active tool after homing - #if HAS_MULTI_HOTEND && (DISABLED(DELTA) || ENABLED(DELTA_HOME_TO_SAFE_ZONE)) - tool_change(old_tool_index, TERN(PARKING_EXTRUDER, !pe_final_change_must_unpark, DISABLED(DUAL_X_CARRIAGE))); // Do move if one of these - #endif - #if HAS_HOMING_CURRENT if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Restore driver current..."); #if HAS_CURRENT_HOME(X) @@ -627,6 +621,23 @@ void GcodeSuite::G28() { #endif #endif // HAS_HOMING_CURRENT + // Move to a height where we can use the full xy-area + TERN_(DELTA_HOME_TO_SAFE_ZONE, do_blocking_move_to_z(delta_clip_start_height)); + + // Move to the configured Z only if Z was homed to MIN, because machines that + // home to MAX historically expect 'G28 Z' to be safe to use at the end of a + // print, and do_move_after_z_homing is not very nuanced. + if (finalRaiseZ) do_move_after_z_homing(); + + TERN_(CAN_SET_LEVELING_AFTER_G28, if (leveling_restore_state) set_bed_leveling_enabled()); + + // Restore the active tool after homing + #if HAS_MULTI_HOTEND && (DISABLED(DELTA) || ENABLED(DELTA_HOME_TO_SAFE_ZONE)) + tool_change(old_tool_index, TERN(PARKING_EXTRUDER, !pe_final_change_must_unpark, DISABLED(DUAL_X_CARRIAGE))); // Do move if one of these + #endif + + restore_feedrate_and_scaling(); + ui.refresh(); TERN_(HAS_DWIN_E3V2_BASIC, DWIN_HomingDone()); diff --git a/Marlin/src/gcode/calibrate/G33.cpp b/Marlin/src/gcode/calibrate/G33.cpp index 61320c057667..08734073d665 100644 --- a/Marlin/src/gcode/calibrate/G33.cpp +++ b/Marlin/src/gcode/calibrate/G33.cpp @@ -170,7 +170,7 @@ static float std_dev_points(float z_pt[NPP + 1], const bool _0p_cal, const bool */ static float calibration_probe(const xy_pos_t &xy, const bool stow, const bool probe_at_offset) { #if HAS_BED_PROBE - return probe.probe_at_point(xy, stow ? PROBE_PT_STOW : PROBE_PT_RAISE, 0, probe_at_offset, false); + return probe.probe_at_point(xy, stow ? PROBE_PT_STOW : PROBE_PT_RAISE, 0, probe_at_offset, false, Z_PROBE_LOW_POINT, Z_TWEEN_SAFE_CLEARANCE, true); #else UNUSED(stow); return lcd_probe_pt(xy); diff --git a/Marlin/src/gcode/calibrate/G34_M422.cpp b/Marlin/src/gcode/calibrate/G34_M422.cpp index db6ef874d94b..3e7ed08b6c1e 100644 --- a/Marlin/src/gcode/calibrate/G34_M422.cpp +++ b/Marlin/src/gcode/calibrate/G34_M422.cpp @@ -153,7 +153,8 @@ void GcodeSuite::G34() { const xy_pos_t diff = z_stepper_align.xy[i] - z_stepper_align.xy[j]; return HYPOT2(diff.x, diff.y); }; - float z_probe = (Z_PROBE_SAFE_CLEARANCE) + (G34_MAX_GRADE) * 0.01f * SQRT(_MAX(0, magnitude2(0, 1) + const float zoffs = (probe.offset.z < 0) ? -probe.offset.z : 0.0f; + float z_probe = (Z_TWEEN_SAFE_CLEARANCE + zoffs) + (G34_MAX_GRADE) * 0.01f * SQRT(_MAX(0, magnitude2(0, 1) #if TRIPLE_Z , magnitude2(2, 1), magnitude2(2, 0) #if QUAD_Z @@ -165,12 +166,6 @@ void GcodeSuite::G34() { // Home before the alignment procedure home_if_needed(); - // Move the Z coordinate realm towards the positive - dirty trick - current_position.z += z_probe * 0.5f; - sync_plan_position(); - // Now, the Z origin lies below the build plate. That allows to probe deeper, before run_z_probe throws an error. - // This hack is un-done at the end of G34 - either by re-homing, or by using the probed heights of the last iteration. - #if !HAS_Z_STEPPER_ALIGN_STEPPER_XY float last_z_align_move[NUM_Z_STEPPERS] = ARRAY_N_1(NUM_Z_STEPPERS, 10000.0f); #else @@ -213,20 +208,16 @@ void GcodeSuite::G34() { // iteration odd/even --> downward / upward stepper sequence const uint8_t iprobe = (iteration & 1) ? NUM_Z_STEPPERS - 1 - i : i; - // Safe clearance even on an incline - if ((iteration == 0 || i > 0) && z_probe > current_position.z) do_blocking_move_to_z(z_probe); - xy_pos_t &ppos = z_stepper_align.xy[iprobe]; - if (DEBUGGING(LEVELING)) - DEBUG_ECHOLNPGM_P(PSTR("Probing X"), ppos.x, SP_Y_STR, ppos.y); + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM_P(PSTR("Probing X"), ppos.x, SP_Y_STR, ppos.y); // Probe a Z height for each stepper. // Probing sanity check is disabled, as it would trigger even in normal cases because // current_position.z has been manually altered in the "dirty trick" above. - const float z_probed_height = probe.probe_at_point(DIFF_TERN(HAS_HOME_OFFSET, ppos, xy_pos_t(home_offset)), raise_after, 0, true, false); + const float z_probed_height = probe.probe_at_point(DIFF_TERN(HAS_HOME_OFFSET, ppos, xy_pos_t(home_offset)), raise_after, 0, true, false, (Z_PROBE_LOW_POINT) - z_probe * 0.5f, z_probe * 0.5f); if (isnan(z_probed_height)) { - SERIAL_ECHOLNPGM("Probing failed"); + SERIAL_ECHOLNPGM(STR_ERR_PROBING_FAILED); LCD_MESSAGE(MSG_LCD_PROBING_FAILED); err_break = true; break; @@ -234,7 +225,7 @@ void GcodeSuite::G34() { // Add height to each value, to provide a more useful target height for // the next iteration of probing. This allows adjustments to be made away from the bed. - z_measured[iprobe] = z_probed_height + (Z_CLEARANCE_BETWEEN_PROBES); + z_measured[iprobe] = z_probed_height + (Z_TWEEN_SAFE_CLEARANCE + zoffs); //do we need to add the clearance to this? if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("> Z", iprobe + 1, " measured position is ", z_measured[iprobe]); @@ -248,7 +239,7 @@ void GcodeSuite::G34() { // Adapt the next probe clearance height based on the new measurements. // Safe_height = lowest distance to bed (= highest measurement) plus highest measured misalignment. z_maxdiff = z_measured_max - z_measured_min; - z_probe = (Z_PROBE_SAFE_CLEARANCE) + z_measured_max + z_maxdiff; + z_probe = (Z_TWEEN_SAFE_CLEARANCE + zoffs) + z_measured_max + z_maxdiff; //Not sure we need z_maxdiff, but leaving it in for safety. #if HAS_Z_STEPPER_ALIGN_STEPPER_XY // Replace the initial values in z_measured with calculated heights at @@ -428,15 +419,13 @@ void GcodeSuite::G34() { IF_DISABLED(TOUCH_MI_PROBE, probe.stow()); #if ENABLED(HOME_AFTER_G34) - // After this operation the z position needs correction - set_axis_never_homed(Z_AXIS); // Home Z after the alignment procedure process_subcommands_now(F("G28Z")); #else // Use the probed height from the last iteration to determine the Z height. // z_measured_min is used, because all steppers are aligned to z_measured_min. // Ideally, this would be equal to the 'z_probe * 0.5f' which was added earlier. - current_position.z -= z_measured_min - float(Z_CLEARANCE_BETWEEN_PROBES); + current_position.z -= z_measured_min - (Z_TWEEN_SAFE_CLEARANCE + zoffs); //we shouldn't want to subtract the clearance from here right? (Depends if we added it further up) sync_plan_position(); #endif diff --git a/Marlin/src/gcode/calibrate/M48.cpp b/Marlin/src/gcode/calibrate/M48.cpp index 5e0c21b42e46..701e9386979a 100644 --- a/Marlin/src/gcode/calibrate/M48.cpp +++ b/Marlin/src/gcode/calibrate/M48.cpp @@ -223,7 +223,7 @@ void GcodeSuite::M48() { } // n_legs // Probe a single point - const float pz = probe.probe_at_point(test_position, raise_after, 0); + const float pz = probe.probe_at_point(test_position, raise_after); // Break the loop if the probe fails probing_good = !isnan(pz); diff --git a/Marlin/src/gcode/probe/G30.cpp b/Marlin/src/gcode/probe/G30.cpp index 468189bf5acc..8e64ba7cca04 100644 --- a/Marlin/src/gcode/probe/G30.cpp +++ b/Marlin/src/gcode/probe/G30.cpp @@ -77,7 +77,7 @@ void GcodeSuite::G30() { const ProbePtRaise raise_after = parser.boolval('E', true) ? PROBE_PT_STOW : PROBE_PT_NONE; TERN_(HAS_PTC, ptc.set_enabled(!parser.seen('C') || parser.value_bool())); - const float measured_z = probe.probe_at_point(probepos, raise_after, 1); + const float measured_z = probe.probe_at_point(probepos, raise_after); TERN_(HAS_PTC, ptc.set_enabled(true)); if (!isnan(measured_z)) { SERIAL_ECHOLNPGM("Bed X: ", probepos.asLogical().x, " Y: ", probepos.asLogical().y, " Z: ", measured_z); diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index d4f9423080f2..687ef28a3796 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -2350,6 +2350,10 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "HOME_Z_FIRST can't be used when homing Z with a probe." #endif +#if Z_HOME_TO_MAX && defined(Z_AFTER_HOMING) && DISABLED(ALLOW_Z_AFTER_HOMING) + #error "Z_AFTER_HOMING shouldn't be used with Z max homing to keep 'G28 Z' safe for end-of-print usage. Define ALLOW_Z_AFTER_HOMING to allow this at your own risk." +#endif + // Dual/multiple endstops requirements #if ENABLED(X_DUAL_ENDSTOPS) #if ENABLED(DELTA) diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index e685fe16fddc..c4098bdb49cc 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -1409,6 +1409,13 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item static float mlev_z_pos = 0; static bool use_probe = false; + #if HAS_BED_PROBE + constexpr float probe_x_min = _MAX(0 + corner_pos, X_MIN_POS + probe.offset.x, X_MIN_POS + PROBING_MARGIN) - probe.offset.x, + probe_x_max = _MIN((X_BED_SIZE + X_MIN_POS) - corner_pos, X_MAX_POS + probe.offset.x, X_MAX_POS - PROBING_MARGIN) - probe.offset.x, + probe_y_min = _MAX(0 + corner_pos, Y_MIN_POS + probe.offset.y, Y_MIN_POS + PROBING_MARGIN) - probe.offset.y, + probe_y_max = _MIN((Y_BED_SIZE + Y_MIN_POS) - corner_pos, Y_MAX_POS + probe.offset.y, Y_MAX_POS - PROBING_MARGIN) - probe.offset.y; + #endif + switch (item) { case MLEVEL_BACK: if (draw) @@ -1425,19 +1432,22 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item Draw_Checkbox(row, use_probe); } else { - use_probe = !use_probe; + use_probe ^= true; Draw_Checkbox(row, use_probe); if (use_probe) { Popup_Handler(Level); + constexpr struct { xy_pos_t p, ProbePtRaise r } points[] = { + { { probe_x_min, probe_y_min }, PROBE_PT_RAISE }, + { { probe_x_min, probe_y_max }, PROBE_PT_RAISE }, + { { probe_x_max, probe_y_max }, PROBE_PT_RAISE }, + { { probe_x_max, probe_y_min }, PROBE_PT_STOW } + }; corner_avg = 0; - #define PROBE_X_MIN _MAX(0 + corner_pos, X_MIN_POS + probe.offset.x, X_MIN_POS + PROBING_MARGIN) - probe.offset.x - #define PROBE_X_MAX _MIN((X_BED_SIZE + X_MIN_POS) - corner_pos, X_MAX_POS + probe.offset.x, X_MAX_POS - PROBING_MARGIN) - probe.offset.x - #define PROBE_Y_MIN _MAX(0 + corner_pos, Y_MIN_POS + probe.offset.y, Y_MIN_POS + PROBING_MARGIN) - probe.offset.y - #define PROBE_Y_MAX _MIN((Y_BED_SIZE + Y_MIN_POS) - corner_pos, Y_MAX_POS + probe.offset.y, Y_MAX_POS - PROBING_MARGIN) - probe.offset.y - corner_avg += probe.probe_at_point(PROBE_X_MIN, PROBE_Y_MIN, PROBE_PT_RAISE, 0, false); - corner_avg += probe.probe_at_point(PROBE_X_MIN, PROBE_Y_MAX, PROBE_PT_RAISE, 0, false); - corner_avg += probe.probe_at_point(PROBE_X_MAX, PROBE_Y_MAX, PROBE_PT_RAISE, 0, false); - corner_avg += probe.probe_at_point(PROBE_X_MAX, PROBE_Y_MIN, PROBE_PT_STOW, 0, false); + for (uint8_t i = 0; i < COUNT(points); i++) { + const float mz = probe.probe_at_point(points[i].p, points[i].r, 0, false); + if (isnan(mz)) { corner_avg = 0; break; } + corner_avg += mz; + } corner_avg /= 4; Redraw_Menu(); } @@ -1451,7 +1461,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item Popup_Handler(MoveWait); if (use_probe) { #if HAS_BED_PROBE - sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(PROBE_X_MIN, 1, 3, str_1), dtostrf(PROBE_Y_MIN, 1, 3, str_2)); + sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(probe_x_min, 1, 3, str_1), dtostrf(probe_y_min, 1, 3, str_2)); gcode.process_subcommands_now(cmd); planner.synchronize(); Popup_Handler(ManualProbing); @@ -1472,7 +1482,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item Popup_Handler(MoveWait); if (use_probe) { #if HAS_BED_PROBE - sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(PROBE_X_MIN, 1, 3, str_1), dtostrf(PROBE_Y_MAX, 1, 3, str_2)); + sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(probe_x_min, 1, 3, str_1), dtostrf(probe_y_max, 1, 3, str_2)); gcode.process_subcommands_now(cmd); planner.synchronize(); Popup_Handler(ManualProbing); @@ -1493,7 +1503,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item Popup_Handler(MoveWait); if (use_probe) { #if HAS_BED_PROBE - sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(PROBE_X_MAX, 1, 3, str_1), dtostrf(PROBE_Y_MAX, 1, 3, str_2)); + sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(probe_x_max, 1, 3, str_1), dtostrf(probe_y_max, 1, 3, str_2)); gcode.process_subcommands_now(cmd); planner.synchronize(); Popup_Handler(ManualProbing); @@ -1514,7 +1524,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item Popup_Handler(MoveWait); if (use_probe) { #if HAS_BED_PROBE - sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(PROBE_X_MAX, 1, 3, str_1), dtostrf(PROBE_Y_MIN, 1, 3, str_2)); + sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(probe_x_max, 1, 3, str_1), dtostrf(probe_y_min, 1, 3, str_2)); gcode.process_subcommands_now(cmd); planner.synchronize(); Popup_Handler(ManualProbing); diff --git a/Marlin/src/lcd/menu/menu_probe_offset.cpp b/Marlin/src/lcd/menu/menu_probe_offset.cpp index 62704cdedea6..0dd118ed2230 100644 --- a/Marlin/src/lcd/menu/menu_probe_offset.cpp +++ b/Marlin/src/lcd/menu/menu_probe_offset.cpp @@ -102,7 +102,7 @@ void prepare_for_probe_offset_wizard() { // Probe for Z reference ui.wait_for_move = true; - z_offset_ref = probe.probe_at_point(wizard_pos, PROBE_PT_RAISE, 0, true); + z_offset_ref = probe.probe_at_point(wizard_pos, PROBE_PT_RAISE); ui.wait_for_move = false; // Stow the probe, as the last call to probe.probe_at_point(...) left diff --git a/Marlin/src/lcd/menu/menu_tramming_wizard.cpp b/Marlin/src/lcd/menu/menu_tramming_wizard.cpp index 4ce2cd646018..8fb251c23862 100644 --- a/Marlin/src/lcd/menu/menu_tramming_wizard.cpp +++ b/Marlin/src/lcd/menu/menu_tramming_wizard.cpp @@ -53,7 +53,7 @@ static int8_t reference_index; // = 0 #endif static bool probe_single_point() { - const float z_probed_height = probe.probe_at_point(tramming_points[tram_index], PROBE_PT_RAISE, 0, true); + const float z_probed_height = probe.probe_at_point(tramming_points[tram_index], PROBE_PT_RAISE); z_measured[tram_index] = z_probed_height; if (reference_index < 0) reference_index = tram_index; move_to_tramming_wait_pos(); diff --git a/Marlin/src/module/probe.cpp b/Marlin/src/module/probe.cpp index a03125a73abb..96606f30a87a 100644 --- a/Marlin/src/module/probe.cpp +++ b/Marlin/src/module/probe.cpp @@ -522,7 +522,7 @@ bool Probe::set_deployed(const bool deploy, const bool no_return/*=false*/) { #endif if (z_raise_wanted) { - const float zdest = DIFF_TERN(HAS_HOTEND_OFFSET, _MAX(Z_CLEARANCE_BETWEEN_PROBES, Z_CLEARANCE_DEPLOY_PROBE), hotend_offset[active_extruder].z); + const float zdest = DIFF_TERN(HAS_HOTEND_OFFSET, Z_CLEARANCE_DEPLOY_PROBE, hotend_offset[active_extruder].z); if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Raise Z to ", zdest); do_z_clearance(zdest); } @@ -716,10 +716,12 @@ bool Probe::probe_down_to_z(const_float_t z, const_feedRate_t fr_mm_s) { * @param sanity_check Flag to compare the probe result with the expected result * based on the probe Z offset. If the result is too far away * (more than 2mm too early) then consider it an error. + * @param z_min_point Override the minimum probing height (-2mm), to allow deeper probing. + * @param z_clearance Z clearance to apply on probe failure. * * @return The Z position of the bed at the current XY or NAN on error. */ -float Probe::run_z_probe(const bool sanity_check/*=true*/) { +float Probe::run_z_probe(const bool sanity_check/*=true*/, const_float_t z_min_point/*=Z_PROBE_LOW_POINT*/, const_float_t z_clearance/*=Z_TWEEN_SAFE_CLEARANCE*/) { DEBUG_SECTION(log_probe, "Probe::run_z_probe", DEBUGGING(LEVELING)); const float zoffs = SUM_TERN(HAS_HOTEND_OFFSET, -offset.z, hotend_offset[active_extruder].z); @@ -750,9 +752,8 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/) { }; // Stop the probe before it goes too low to prevent damage. - // For known Z probe below the expected trigger point, otherwise -10mm. - const float z_probe_low_point = axis_is_trusted(Z_AXIS) ? zoffs + Z_PROBE_LOW_POINT : -10.0f; - + // For known Z probe below the expected trigger point, otherwise -10mm lower. + const float z_probe_low_point = zoffs + z_min_point -float((!axis_is_trusted(Z_AXIS)) * 10); if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Probe Low Point: ", z_probe_low_point); // Double-probing does a fast probe followed by a slow probe @@ -768,7 +769,7 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/) { if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("1st Probe Z:", z1); // Raise to give the probe clearance - do_z_clearance(Z_CLEARANCE_MULTI_PROBE); + do_z_clearance(z1 + (Z_CLEARANCE_MULTI_PROBE), false); #elif Z_PROBE_FEEDRATE_FAST != Z_PROBE_FEEDRATE_SLOW @@ -778,7 +779,7 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/) { if (current_position.z > z) { // Probe down fast. If the probe never triggered, raise for probe clearance if (!probe_down_to_z(z, z_probe_fast_mm_s)) - do_z_clearance(Z_PROBE_SAFE_CLEARANCE); + do_z_clearance(z_clearance); } #endif @@ -911,7 +912,11 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/) { * with the previously active tool. * */ -float Probe::probe_at_point(const_float_t rx, const_float_t ry, const ProbePtRaise raise_after/*=PROBE_PT_NONE*/, const uint8_t verbose_level/*=0*/, const bool probe_relative/*=true*/, const bool sanity_check/*=true*/) { +float Probe::probe_at_point(const_float_t rx, const_float_t ry, const ProbePtRaise raise_after/*=PROBE_PT_NONE*/, + const uint8_t verbose_level/*=0*/, const bool probe_relative/*=true*/, const bool sanity_check/*=true*/, + const_float_t z_min_point/*=Z_PROBE_LOW_POINT*/, const_float_t z_clearance/*=Z_TWEEN_SAFE_CLEARANCE*/, + const bool raise_after_is_relative/*=false*/ +) { DEBUG_SECTION(log_probe, "Probe::probe_at_point", DEBUGGING(LEVELING)); if (DEBUGGING(LEVELING)) { @@ -930,7 +935,7 @@ float Probe::probe_at_point(const_float_t rx, const_float_t ry, const ProbePtRai #endif // Use a safe Z height for the XY move - const float safe_z = _MAX(current_position.z, Z_PROBE_SAFE_CLEARANCE); + const float safe_z = _MAX(current_position.z, z_clearance); // On delta keep Z below clip height or do_blocking_move_to will abort xyz_pos_t npos = NUM_AXIS_ARRAY( @@ -959,7 +964,7 @@ float Probe::probe_at_point(const_float_t rx, const_float_t ry, const ProbePtRai #else // !BD_SENSOR - float measured_z = deploy() ? NAN : run_z_probe(sanity_check) + offset.z; + float measured_z = deploy() ? NAN : run_z_probe(sanity_check, z_min_point, z_clearance) + offset.z; // Deploy succeeded and a successful measurement was done. // Raise and/or stow the probe depending on 'raise_after' and settings. @@ -967,7 +972,10 @@ float Probe::probe_at_point(const_float_t rx, const_float_t ry, const ProbePtRai switch (raise_after) { default: break; case PROBE_PT_RAISE: - do_z_clearance(Z_PROBE_SAFE_CLEARANCE); + if (raise_after_is_relative) + do_z_clearance(current_position.z + z_clearance, false); + else + do_z_clearance(z_clearance); break; case PROBE_PT_STOW: case PROBE_PT_LAST_STOW: if (stow()) measured_z = NAN; // Error on stow? diff --git a/Marlin/src/module/probe.h b/Marlin/src/module/probe.h index fd0302c66531..715f3f3a7380 100644 --- a/Marlin/src/module/probe.h +++ b/Marlin/src/module/probe.h @@ -29,6 +29,10 @@ #include "motion.h" +#if ENABLED(BLTOUCH) + #include "../feature/bltouch.h" +#endif + #define DEBUG_OUT ENABLED(DEBUG_LEVELING_FEATURE) #include "../core/debug_out.h" @@ -48,7 +52,7 @@ #endif // In BLTOUCH HS mode, the probe travels in a deployed state. -#define Z_PROBE_SAFE_CLEARANCE SUM_TERN(BLTOUCH, Z_CLEARANCE_BETWEEN_PROBES, bltouch.z_extra_clearance()) +#define Z_TWEEN_SAFE_CLEARANCE SUM_TERN(BLTOUCH, Z_CLEARANCE_BETWEEN_PROBES, bltouch.z_extra_clearance()) #if ENABLED(PREHEAT_BEFORE_LEVELING) #ifndef LEVELING_NOZZLE_TEMP @@ -159,9 +163,17 @@ class Probe { #endif // !IS_KINEMATIC - static float probe_at_point(const_float_t rx, const_float_t ry, const ProbePtRaise raise_after=PROBE_PT_NONE, const uint8_t verbose_level=0, const bool probe_relative=true, const bool sanity_check=true); - static float probe_at_point(const xy_pos_t &pos, const ProbePtRaise raise_after=PROBE_PT_NONE, const uint8_t verbose_level=0, const bool probe_relative=true, const bool sanity_check=true) { - return probe_at_point(pos.x, pos.y, raise_after, verbose_level, probe_relative, sanity_check); + static float probe_at_point(const_float_t rx, const_float_t ry, const ProbePtRaise raise_after=PROBE_PT_NONE, + const uint8_t verbose_level=0, const bool probe_relative=true, const bool sanity_check=true, + const_float_t z_min_point=Z_PROBE_LOW_POINT, const_float_t z_clearance=Z_TWEEN_SAFE_CLEARANCE, + const bool raise_after_is_relative=false); + + static float probe_at_point(const xy_pos_t &pos, const ProbePtRaise raise_after=PROBE_PT_NONE, + const uint8_t verbose_level=0, const bool probe_relative=true, const bool sanity_check=true, + const_float_t z_min_point=Z_PROBE_LOW_POINT, float z_clearance=Z_TWEEN_SAFE_CLEARANCE, + const bool raise_after_is_relative=false + ) { + return probe_at_point(pos.x, pos.y, raise_after, verbose_level, probe_relative, sanity_check, z_min_point, z_clearance, raise_after_is_relative); } #else // !HAS_BED_PROBE @@ -330,7 +342,7 @@ class Probe { private: static bool probe_down_to_z(const_float_t z, const_feedRate_t fr_mm_s); - static float run_z_probe(const bool sanity_check=true); + static float run_z_probe(const bool sanity_check=true, const_float_t z_min_point=Z_PROBE_LOW_POINT, const_float_t z_clearance=Z_TWEEN_SAFE_CLEARANCE); }; extern Probe probe; From f9db5ab965f39c594029301d20358cc7150f233a Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 29 Apr 2023 00:20:26 +0000 Subject: [PATCH 088/427] [cron] Bump distribution date (2023-04-29) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index e5e96da7c265..aa8834afc2f2 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-28" +//#define STRING_DISTRIBUTION_DATE "2023-04-29" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index cedbb273e4c8..0dde46e36c5b 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-28" + #define STRING_DISTRIBUTION_DATE "2023-04-29" #endif /** From 4c033c3e47b80a9d2497b47a7d3f1ef5034ff4d0 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 29 Apr 2023 12:34:56 -0500 Subject: [PATCH 089/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Twe?= =?UTF-8?q?ak=20homing=20debug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/motion.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index 418bee559f70..ccbf73e243a5 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -2444,9 +2444,9 @@ void set_axis_is_at_home(const AxisEnum axis) { if (axis == Z_AXIS) { #if HOMING_Z_WITH_PROBE current_position.z -= probe.offset.z; - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("*** Z HOMED WITH PROBE (Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) ***\n> probe.offset.z = ", probe.offset.z); + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("*** Z homed with PROBE" TERN_(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, " (Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN)") " ***\n> (M851 Z", probe.offset.z, ")"); #else - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("*** Z HOMED TO ENDSTOP ***"); + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("*** Z homed to ENDSTOP ***"); #endif } #endif From 5aef2c0afa7807dce16eb4cc49eaaa6bd3a9e714 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sun, 30 Apr 2023 00:22:44 +0000 Subject: [PATCH 090/427] [cron] Bump distribution date (2023-04-30) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index aa8834afc2f2..fa1ed3ac3f60 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-29" +//#define STRING_DISTRIBUTION_DATE "2023-04-30" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 0dde46e36c5b..9945dc5cb634 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-29" + #define STRING_DISTRIBUTION_DATE "2023-04-30" #endif /** From ec6bc15d1b52f480e88ad4a21c87f175d1388226 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 29 Apr 2023 20:10:33 -0500 Subject: [PATCH 091/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20FT=20Motion=20reve?= =?UTF-8?q?rsed=20Z?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/stepper.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 32e97c2a0686..790b118c6de6 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -3466,7 +3466,7 @@ void Stepper::report_positions() { #if HAS_Z_AXIS // Z is handled differently to update the stepper // counts (needed by Marlin for bed level probing). - const bool z_dir = !TEST(command, FT_BIT_DIR_Z), + const bool z_dir = TEST(command, FT_BIT_DIR_Z), z_step = TEST(command, FT_BIT_STEP_Z); #endif From 3b50b6aeb1dec836d6bf26f0c8af2b5bb1b7de48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Davide=20Rombol=C3=A0?= Date: Sun, 30 Apr 2023 23:36:47 +0200 Subject: [PATCH 092/427] =?UTF-8?q?=F0=9F=94=A7=20Allow=20BLTOUCH=5FHS=5FE?= =?UTF-8?q?XTRA=5FCLEARANCE=20=3D=3D=200=20(#25760)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/SanityCheck.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 687ef28a3796..fd6b78cf7247 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -1279,7 +1279,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L static_assert(!(strcmp(hs, "1") && strcmp(hs, "true") && strcmp(hs, "0") && strcmp(hs, "false")), \ "BLTOUCH_HS_MODE must now be defined as true or false, indicating the default state."); #ifdef BLTOUCH_HS_EXTRA_CLEARANCE - static_assert(BLTOUCH_HS_EXTRA_CLEARANCE > 0, "BLTOUCH_HS_MODE requires a positive BLTOUCH_HS_EXTRA_CLEARANCE."); + static_assert(BLTOUCH_HS_EXTRA_CLEARANCE >= 0, "BLTOUCH_HS_MODE requires BLTOUCH_HS_EXTRA_CLEARANCE >= 0."); #endif #endif From b88ab391bb7199e5774610efd41f1f82a14ba8d2 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Mon, 1 May 2023 09:52:29 +1200 Subject: [PATCH 093/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20Ender-2=20Stock=20?= =?UTF-8?q?LCD=20on=20MELZI=5FCREALITY=20(#25759)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/pins/sanguino/pins_MELZI_CREALITY.h | 75 ++++++++++--------- 1 file changed, 41 insertions(+), 34 deletions(-) diff --git a/Marlin/src/pins/sanguino/pins_MELZI_CREALITY.h b/Marlin/src/pins/sanguino/pins_MELZI_CREALITY.h index 398343cb972c..e391cd1020a6 100644 --- a/Marlin/src/pins/sanguino/pins_MELZI_CREALITY.h +++ b/Marlin/src/pins/sanguino/pins_MELZI_CREALITY.h @@ -45,54 +45,72 @@ #define BOARD_ST7920_DELAY_3 125 #endif +/** + * EXP1 EXP1 as ENDER2 STOCKDISPLAY EXP1 as CR10 STOCKDISPLAY + * ------ ------ ------ + * D27 | 1 2 | D16 SCK | 1 2 | BTN_E BEEPER_PIN | 1 2 | BTN_ENC + * D11 | 3 4 | RESET BTN_EN1 | 3 4 | RESET BTN_EN1 | 3 4 | RESET + * D10 5 6 | D30 BTN_EN2 5 6 | LCD_A0 BTN_EN2 5 6 | LCD_D4 (ST9720 CLK) + * D28 | 7 8 | D17 LCD_CS | 7 8 | MOSI (ST9720 CS) LCD_RS | 7 8 | LCD_EN (ST9720 DAT) + * GND | 9 10 | 5V GND | 9 10 | 5V GND | 9 10 | 5V + * ------ ------ ------ + */ +#define EXP1_01_PIN 27 +#define EXP1_02_PIN 16 +#define EXP1_03_PIN 11 +#define EXP1_04_PIN -1 // RESET +#define EXP1_05_PIN 10 +#define EXP1_06_PIN 30 +#define EXP1_07_PIN 28 +#define EXP1_08_PIN 17 + // // LCD / Controller // #if ANY(MKS_MINI_12864, CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) - #if EITHER(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) - #define LCD_PINS_RS 28 // ST9720 CS - #define LCD_PINS_EN 17 // ST9720 DAT - #define LCD_PINS_D4 30 // ST9720 CLK - #endif - #if EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY) - #define DOGLCD_CS 28 - #define DOGLCD_A0 30 + #if ENABLED(MKS_MINI_12864) + #ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING + #error "CAUTION! MKS_MINI_12864 on MELZI_CREALITY requires wiring modifications. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)" + #endif + #define DOGLCD_CS EXP1_07_PIN + #define DOGLCD_A0 EXP1_06_PIN + #elif ENABLED(CR10_STOCKDISPLAY) + #define LCD_PINS_RS EXP1_07_PIN // ST9720 CS + #define LCD_PINS_EN EXP1_08_PIN // ST9720 DAT + #define LCD_PINS_D4 EXP1_06_PIN // ST9720 CLK + #define BEEPER_PIN EXP1_01_PIN + #elif ENABLED(ENDER2_STOCKDISPLAY) + #define DOGLCD_CS EXP1_07_PIN + #define DOGLCD_A0 EXP1_06_PIN + #define DOGLCD_SCK EXP1_01_PIN + #define DOGLCD_MOSI EXP1_08_PIN + #define FORCE_SOFT_SPI #endif - + #define BTN_ENC EXP1_02_PIN + #define BTN_EN1 EXP1_03_PIN + #define BTN_EN2 EXP1_05_PIN #define LCD_SDSS 31 // Controller's SD card - - #define BTN_ENC 16 - #define BTN_EN1 11 - #define BTN_EN2 10 - #define BEEPER_PIN 27 - #define LCD_PINS_DEFINED - #endif #include "pins_MELZI.h" // ... SANGUINOLOLU_12 ... SANGUINOLOLU_11 #if ENABLED(BLTOUCH) #ifndef SERVO0_PIN - #define SERVO0_PIN 27 + #define SERVO0_PIN EXP1_01_PIN #endif #if SERVO0_PIN == BEEPER_PIN #undef BEEPER_PIN #endif #elif HAS_FILAMENT_SENSOR #ifndef FIL_RUNOUT_PIN - #define FIL_RUNOUT_PIN 27 + #define FIL_RUNOUT_PIN EXP1_01_PIN #endif #if FIL_RUNOUT_PIN == BEEPER_PIN #undef BEEPER_PIN #endif #endif -#if ENABLED(MINIPANEL) - #undef DOGLCD_CS - #define DOGLCD_CS LCD_PINS_RS -#endif - /** PIN: 0 Port: B0 E0_DIR_PIN protected PIN: 1 Port: B1 E0_STEP_PIN protected @@ -139,14 +157,3 @@ PIN: 30 Port: A1 LCD_PINS_D4 Output = 1 PIN: 31 Port: A0 SDSS Output = 1 */ - -/** - * EXP1 Connector EXP1 as CR10 STOCKDISPLAY - * ------ ------ - * PA4 | 1 2 | PC0 BEEPER_PIN | 1 2 | BTN_ENC - * PD3 | 3 4 | RESET BTN_EN1 | 3 4 | RESET - * PD2 5 6 | PA1 BTN_EN2 5 6 | LCD_D4 (ST9720 CLK) - * PA3 | 7 8 | PC1 (ST9720 CS) LCD_RS | 7 8 | LCD_EN (ST9720 DAT) - * GND | 9 10 | 5V GND | 9 10 | 5V - * ------ ------ - */ From 4937a64bccdb449569c30ebc234f2f0cc102be9e Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 30 Apr 2023 18:12:21 -0500 Subject: [PATCH 094/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Use?= =?UTF-8?q?=20NUM=5FAXIS=5FARRAY?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/host/M115.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Marlin/src/gcode/host/M115.cpp b/Marlin/src/gcode/host/M115.cpp index 236895e107e6..43d37e92ac85 100644 --- a/Marlin/src/gcode/host/M115.cpp +++ b/Marlin/src/gcode/host/M115.cpp @@ -223,9 +223,9 @@ void GcodeSuite::M115() { // Machine Geometry #if ENABLED(M115_GEOMETRY_REPORT) constexpr xyz_pos_t bmin{0}, - bmax = ARRAY_N(NUM_AXES, X_BED_SIZE, Y_BED_SIZE, Z_MAX_POS, I_MAX_POS, J_MAX_POS, K_MAX_POS, U_MAX_POS, V_MAX_POS, W_MAX_POS), - dmin = ARRAY_N(NUM_AXES, X_MIN_POS, Y_MIN_POS, Z_MIN_POS, I_MIN_POS, J_MIN_POS, K_MIN_POS, U_MIN_POS, V_MIN_POS, W_MIN_POS), - dmax = ARRAY_N(NUM_AXES, X_MAX_POS, Y_MAX_POS, Z_MAX_POS, I_MAX_POS, J_MAX_POS, K_MAX_POS, U_MAX_POS, V_MAX_POS, W_MAX_POS); + bmax = NUM_AXIS_ARRAY(X_BED_SIZE, Y_BED_SIZE, Z_MAX_POS, I_MAX_POS, J_MAX_POS, K_MAX_POS, U_MAX_POS, V_MAX_POS, W_MAX_POS), + dmin = NUM_AXIS_ARRAY(X_MIN_POS, Y_MIN_POS, Z_MIN_POS, I_MIN_POS, J_MIN_POS, K_MIN_POS, U_MIN_POS, V_MIN_POS, W_MIN_POS), + dmax = NUM_AXIS_ARRAY(X_MAX_POS, Y_MAX_POS, Z_MAX_POS, I_MAX_POS, J_MAX_POS, K_MAX_POS, U_MAX_POS, V_MAX_POS, W_MAX_POS); xyz_pos_t cmin = bmin, cmax = bmax; apply_motion_limits(cmin); apply_motion_limits(cmax); From f246e0d0e417f8178a22bcad545bc2938c95b394 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 30 Apr 2023 18:12:13 -0500 Subject: [PATCH 095/427] =?UTF-8?q?=F0=9F=94=A7=20Fix=20X2/Y2=20axis=20pin?= =?UTF-8?q?s=20check?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/SanityCheck.h | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index fd6b78cf7247..74633b9ec434 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -239,15 +239,13 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Multiple Stepper Drivers Per Axis */ -#define GOOD_AXIS_PINS(A) (HAS_##A##_ENABLE && HAS_##A##_STEP && HAS_##A##_DIR) -#if HAS_X2_STEPPER && !GOOD_AXIS_PINS(X) +#define GOOD_AXIS_PINS(A) PINS_EXIST(A##_ENABLE, A##_STEP, A##_DIR) +#if HAS_X2_STEPPER && !GOOD_AXIS_PINS(X2) #error "If X2_DRIVER_TYPE is defined, then X2 ENABLE/STEP/DIR pins are also needed." #endif - -#if HAS_DUAL_Y_STEPPERS && !GOOD_AXIS_PINS(Y) +#if HAS_DUAL_Y_STEPPERS && !GOOD_AXIS_PINS(Y2) #error "If Y2_DRIVER_TYPE is defined, then Y2 ENABLE/STEP/DIR pins are also needed." #endif - #if HAS_Z_AXIS #if NUM_Z_STEPPERS >= 2 && !GOOD_AXIS_PINS(Z2) #error "If Z2_DRIVER_TYPE is defined, then Z2 ENABLE/STEP/DIR pins are also needed." From 9773160639e1670b81ff64325d3c17d591b32575 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 30 Apr 2023 18:24:05 -0500 Subject: [PATCH 096/427] =?UTF-8?q?=F0=9F=94=A7=20Character=20display=20ha?= =?UTF-8?q?s=20boot=20screen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 25 ++++++++++--------- .../ftdi_eve_touch_ui/generic/boot_screen.cpp | 2 +- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index f712a6921a87..34f5f38ce3e3 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -1537,23 +1537,24 @@ * We encourage you to take advantage of this new feature and we also * respectfully request that you retain the unmodified Marlin boot screen. */ - #if ANY(HAS_MARLINUI_U8GLIB, TOUCH_UI_FTDI_EVE, IS_DWIN_MARLINUI) - #define SHOW_BOOTSCREEN // Show the Marlin bootscreen on startup. ** ENABLE FOR PRODUCTION ** - #if ENABLED(SHOW_BOOTSCREEN) - #define BOOTSCREEN_TIMEOUT 4000 // (ms) Total Duration to display the boot screen(s) - #if EITHER(HAS_MARLINUI_U8GLIB, TFT_COLOR_UI) - #define BOOT_MARLIN_LOGO_SMALL // Show a smaller Marlin logo on the Boot Screen (saving lots of flash) - #endif - //#define SHOW_CUSTOM_BOOTSCREEN // Show the bitmap in Marlin/_Bootscreen.h on startup. + #define SHOW_BOOTSCREEN // Show the Marlin bootscreen on startup. ** ENABLE FOR PRODUCTION ** + #if ENABLED(SHOW_BOOTSCREEN) + #define BOOTSCREEN_TIMEOUT 4000 // (ms) Total Duration to display the boot screen(s) + #if EITHER(HAS_MARLINUI_U8GLIB, TFT_COLOR_UI) + #define BOOT_MARLIN_LOGO_SMALL // Show a smaller Marlin logo on the Boot Screen (saving lots of flash) #endif #if HAS_MARLINUI_U8GLIB - #if ENABLED(SHOW_BOOTSCREEN) - //#define BOOT_MARLIN_LOGO_ANIMATED // Animated Marlin logo. Costs ~3260 (or ~940) bytes of flash. - #endif - //#define CUSTOM_STATUS_SCREEN_IMAGE // Show the bitmap in Marlin/_Statusscreen.h on the status screen. + //#define BOOT_MARLIN_LOGO_ANIMATED // Animated Marlin logo. Costs ~3260 (or ~940) bytes of flash. + #endif + #if EITHER(HAS_MARLINUI_U8GLIB, TOUCH_UI_FTDI_EVE) + //#define SHOW_CUSTOM_BOOTSCREEN // Show the bitmap in Marlin/_Bootscreen.h on startup. #endif #endif + #if HAS_MARLINUI_U8GLIB + //#define CUSTOM_STATUS_SCREEN_IMAGE // Show the bitmap in Marlin/_Statusscreen.h on the status screen. + #endif + //#define SOUND_MENU_ITEM // Add a mute option to the LCD menu #define SOUND_ON_DEFAULT // Buzzer/speaker default enabled state diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/boot_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/boot_screen.cpp index c0940bed5ce4..b01e45948c7a 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/boot_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/boot_screen.cpp @@ -30,7 +30,7 @@ #if ENABLED(SHOW_CUSTOM_BOOTSCREEN) #if ENABLED(TOUCH_UI_PORTRAIT) - #include "../theme/bootscreen_logo_portrait.h" + #include "../theme/_bootscreen_portrait.h" #else #include "../theme/_bootscreen_landscape.h" #endif From 35dd6a3f77f17f7a0216c242916d4fc08521e2b3 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 1 May 2023 00:22:20 +0000 Subject: [PATCH 097/427] [cron] Bump distribution date (2023-05-01) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index fa1ed3ac3f60..7ab3dcf48938 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-04-30" +//#define STRING_DISTRIBUTION_DATE "2023-05-01" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 9945dc5cb634..db48a85c54aa 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-04-30" + #define STRING_DISTRIBUTION_DATE "2023-05-01" #endif /** From 55cbe15b811975156a4d2b2a1a9ecffd872ee951 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 30 Apr 2023 19:14:53 -0500 Subject: [PATCH 098/427] =?UTF-8?q?=F0=9F=94=A7=20Remove=20config.ini=20ob?= =?UTF-8?q?solete=20options?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/config.ini | 4 ---- 1 file changed, 4 deletions(-) diff --git a/Marlin/config.ini b/Marlin/config.ini index c4fe7597f850..6d2a49c2edf8 100644 --- a/Marlin/config.ini +++ b/Marlin/config.ini @@ -69,10 +69,6 @@ x_home_dir = -1 y_home_dir = -1 z_home_dir = -1 -use_xmin_plug = on -use_ymin_plug = on -use_zmin_plug = on - x_min_endstop_hit_state = HIGH y_min_endstop_hit_state = HIGH z_min_endstop_hit_state = HIGH From 006a9e514b68bc10ae069f0715bf5d7a44e5b6a7 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 30 Apr 2023 23:10:44 -0500 Subject: [PATCH 099/427] =?UTF-8?q?=F0=9F=A9=B9=20NOZZLE=5FCLEAN=5FPATTERN?= =?UTF-8?q?=5F*=20Followup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25666 --- Marlin/src/gcode/feature/clean/G12.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/gcode/feature/clean/G12.cpp b/Marlin/src/gcode/feature/clean/G12.cpp index 597d8ce0a0be..98be3f0770f2 100644 --- a/Marlin/src/gcode/feature/clean/G12.cpp +++ b/Marlin/src/gcode/feature/clean/G12.cpp @@ -64,7 +64,7 @@ void GcodeSuite::G12() { NOZZLE_CLEAN_DEFAULT_PATTERN #endif ); - const uint8_t strokes = TERN0(NOZZLE_CLEAN_PATTERN_LINEAR, parser.ushortval('S', NOZZLE_CLEAN_STROKES)), + const uint8_t strokes = TERN0(NOZZLE_CLEAN_PATTERN_LINE, parser.ushortval('S', NOZZLE_CLEAN_STROKES)), objects = TERN0(NOZZLE_CLEAN_PATTERN_ZIGZAG, parser.ushortval('T', NOZZLE_CLEAN_TRIANGLES)); const float radius = TERN0(NOZZLE_CLEAN_PATTERN_CIRCLE, parser.linearval('R', NOZZLE_CLEAN_CIRCLE_RADIUS)); From 4bed8a89dbf0726700cfef44a38961d2bb6c6716 Mon Sep 17 00:00:00 2001 From: Scott Mikutsky Date: Mon, 1 May 2023 02:10:46 -0400 Subject: [PATCH 100/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20STM32=20USB=20disc?= =?UTF-8?q?onnect=20behavior=20(#25762)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/STM32/usb_host.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/HAL/STM32/usb_host.cpp b/Marlin/src/HAL/STM32/usb_host.cpp index d77f0b28e964..f3784670049c 100644 --- a/Marlin/src/HAL/STM32/usb_host.cpp +++ b/Marlin/src/HAL/STM32/usb_host.cpp @@ -44,7 +44,7 @@ static void USBH_UserProcess(USBH_HandleTypeDef *phost, uint8_t id) { break; case HOST_USER_DISCONNECTION: //SERIAL_ECHOLNPGM("APPLICATION_DISCONNECT"); - //usb.setUsbTaskState(USB_STATE_RUNNING); + usb.setUsbTaskState(USB_STATE_INIT); break; case HOST_USER_CLASS_ACTIVE: //SERIAL_ECHOLNPGM("APPLICATION_READY"); From b042567f76b92d177e355dd2fc55b1b043fdff36 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 1 May 2023 18:15:31 -0500 Subject: [PATCH 101/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20TFT=20sanity=20err?= =?UTF-8?q?or?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/TEENSY35_36/inc/SanityCheck.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/HAL/TEENSY35_36/inc/SanityCheck.h b/Marlin/src/HAL/TEENSY35_36/inc/SanityCheck.h index ff6d77241183..843905a8510a 100644 --- a/Marlin/src/HAL/TEENSY35_36/inc/SanityCheck.h +++ b/Marlin/src/HAL/TEENSY35_36/inc/SanityCheck.h @@ -26,7 +26,7 @@ */ #if HAS_SPI_TFT || HAS_FSMC_TFT - #error "Sorry! TFT displays are not available for Teensy 3.5/3.6. + #error "Sorry! TFT displays are not available for Teensy 3.5/3.6." #endif #if ENABLED(EMERGENCY_PARSER) From f89fa4cec79c3f034b8bfc868523a1df19520970 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Tue, 2 May 2023 00:24:02 +0000 Subject: [PATCH 102/427] [cron] Bump distribution date (2023-05-02) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 7ab3dcf48938..6a3684ba4af7 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-01" +//#define STRING_DISTRIBUTION_DATE "2023-05-02" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index db48a85c54aa..92833991824c 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-01" + #define STRING_DISTRIBUTION_DATE "2023-05-02" #endif /** From 4812ed5053983212c9ec8a6229a150a1af7822f1 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 1 May 2023 18:45:42 -0500 Subject: [PATCH 103/427] =?UTF-8?q?=F0=9F=8E=A8=20Misc.=20code=20cleanup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/DUE/MinSerial.cpp | 22 +++++++++---------- Marlin/src/HAL/LPC1768/MinSerial.cpp | 22 +++++++++---------- Marlin/src/HAL/STM32/MinSerial.cpp | 22 +++++++++---------- Marlin/src/feature/pause.cpp | 2 +- Marlin/src/feature/runout.h | 14 ++++++------ Marlin/src/gcode/queue.cpp | 4 ++-- Marlin/src/gcode/queue.h | 4 ++-- .../lcd/extui/ia_creality/creality_extui.cpp | 4 ++-- .../lcd/extui/ia_creality/ia_creality_extui.h | 3 ++- Marlin/src/lcd/extui/mks_ui/pic_manager.cpp | 3 ++- .../variants/MARLIN_F103Rx/PeripheralPins.c | 0 .../variants/MARLIN_F103Rx/PinNamesVar.h | 2 +- .../variants/MARLIN_F407ZE/PeripheralPins.c | 3 +-- 13 files changed, 53 insertions(+), 52 deletions(-) mode change 100755 => 100644 buildroot/share/PlatformIO/variants/MARLIN_F103Rx/PeripheralPins.c diff --git a/Marlin/src/HAL/DUE/MinSerial.cpp b/Marlin/src/HAL/DUE/MinSerial.cpp index e5b3dbfe6f36..505a712aa9a1 100644 --- a/Marlin/src/HAL/DUE/MinSerial.cpp +++ b/Marlin/src/HAL/DUE/MinSerial.cpp @@ -73,18 +73,18 @@ void install_min_serial() { } #if DISABLED(DYNAMIC_VECTORTABLE) -extern "C" { - __attribute__((naked)) void JumpHandler_ASM() { - __asm__ __volatile__ ( - "b CommonHandler_ASM\n" - ); + extern "C" { + __attribute__((naked)) void JumpHandler_ASM() { + __asm__ __volatile__ ( + "b CommonHandler_ASM\n" + ); + } + void __attribute__((naked, alias("JumpHandler_ASM"))) HardFault_Handler(); + void __attribute__((naked, alias("JumpHandler_ASM"))) BusFault_Handler(); + void __attribute__((naked, alias("JumpHandler_ASM"))) UsageFault_Handler(); + void __attribute__((naked, alias("JumpHandler_ASM"))) MemManage_Handler(); + void __attribute__((naked, alias("JumpHandler_ASM"))) NMI_Handler(); } - void __attribute__((naked, alias("JumpHandler_ASM"))) HardFault_Handler(); - void __attribute__((naked, alias("JumpHandler_ASM"))) BusFault_Handler(); - void __attribute__((naked, alias("JumpHandler_ASM"))) UsageFault_Handler(); - void __attribute__((naked, alias("JumpHandler_ASM"))) MemManage_Handler(); - void __attribute__((naked, alias("JumpHandler_ASM"))) NMI_Handler(); -} #endif #endif // POSTMORTEM_DEBUGGING diff --git a/Marlin/src/HAL/LPC1768/MinSerial.cpp b/Marlin/src/HAL/LPC1768/MinSerial.cpp index 7a1c038c0b0b..368bcb5259cd 100644 --- a/Marlin/src/HAL/LPC1768/MinSerial.cpp +++ b/Marlin/src/HAL/LPC1768/MinSerial.cpp @@ -33,18 +33,18 @@ static void TX(char c) { _DBC(c); } void install_min_serial() { HAL_min_serial_out = &TX; } #if DISABLED(DYNAMIC_VECTORTABLE) -extern "C" { - __attribute__((naked)) void JumpHandler_ASM() { - __asm__ __volatile__ ( - "b CommonHandler_ASM\n" - ); + extern "C" { + __attribute__((naked)) void JumpHandler_ASM() { + __asm__ __volatile__ ( + "b CommonHandler_ASM\n" + ); + } + void __attribute__((naked, alias("JumpHandler_ASM"))) HardFault_Handler(); + void __attribute__((naked, alias("JumpHandler_ASM"))) BusFault_Handler(); + void __attribute__((naked, alias("JumpHandler_ASM"))) UsageFault_Handler(); + void __attribute__((naked, alias("JumpHandler_ASM"))) MemManage_Handler(); + void __attribute__((naked, alias("JumpHandler_ASM"))) NMI_Handler(); } - void __attribute__((naked, alias("JumpHandler_ASM"))) HardFault_Handler(); - void __attribute__((naked, alias("JumpHandler_ASM"))) BusFault_Handler(); - void __attribute__((naked, alias("JumpHandler_ASM"))) UsageFault_Handler(); - void __attribute__((naked, alias("JumpHandler_ASM"))) MemManage_Handler(); - void __attribute__((naked, alias("JumpHandler_ASM"))) NMI_Handler(); -} #endif #endif // POSTMORTEM_DEBUGGING diff --git a/Marlin/src/HAL/STM32/MinSerial.cpp b/Marlin/src/HAL/STM32/MinSerial.cpp index b0fcff20c172..c2260f4f26e0 100644 --- a/Marlin/src/HAL/STM32/MinSerial.cpp +++ b/Marlin/src/HAL/STM32/MinSerial.cpp @@ -135,18 +135,18 @@ void install_min_serial() { } #if NONE(DYNAMIC_VECTORTABLE, STM32F0xx, STM32G0xx) // Cortex M0 can't jump to a symbol that's too far from the current function, so we work around this in exception_arm.cpp -extern "C" { - __attribute__((naked)) void JumpHandler_ASM() { - __asm__ __volatile__ ( - "b CommonHandler_ASM\n" - ); + extern "C" { + __attribute__((naked)) void JumpHandler_ASM() { + __asm__ __volatile__ ( + "b CommonHandler_ASM\n" + ); + } + void __attribute__((naked, alias("JumpHandler_ASM"), nothrow)) HardFault_Handler(); + void __attribute__((naked, alias("JumpHandler_ASM"), nothrow)) BusFault_Handler(); + void __attribute__((naked, alias("JumpHandler_ASM"), nothrow)) UsageFault_Handler(); + void __attribute__((naked, alias("JumpHandler_ASM"), nothrow)) MemManage_Handler(); + void __attribute__((naked, alias("JumpHandler_ASM"), nothrow)) NMI_Handler(); } - void __attribute__((naked, alias("JumpHandler_ASM"), nothrow)) HardFault_Handler(); - void __attribute__((naked, alias("JumpHandler_ASM"), nothrow)) BusFault_Handler(); - void __attribute__((naked, alias("JumpHandler_ASM"), nothrow)) UsageFault_Handler(); - void __attribute__((naked, alias("JumpHandler_ASM"), nothrow)) MemManage_Handler(); - void __attribute__((naked, alias("JumpHandler_ASM"), nothrow)) NMI_Handler(); -} #endif #endif // POSTMORTEM_DEBUGGING diff --git a/Marlin/src/feature/pause.cpp b/Marlin/src/feature/pause.cpp index 7b814e57f742..504a9f61c78a 100644 --- a/Marlin/src/feature/pause.cpp +++ b/Marlin/src/feature/pause.cpp @@ -445,7 +445,7 @@ bool pause_print(const_float_t retract, const xyz_pos_t &park_point, const bool // Wait for buffered blocks to complete planner.synchronize(); - #if ENABLED(ADVANCED_PAUSE_FANS_PAUSE) && HAS_FAN + #if BOTH(ADVANCED_PAUSE_FANS_PAUSE, HAS_FAN) thermalManager.set_fans_paused(true); #endif diff --git a/Marlin/src/feature/runout.h b/Marlin/src/feature/runout.h index e839db3f5edf..fb4d0c269479 100644 --- a/Marlin/src/feature/runout.h +++ b/Marlin/src/feature/runout.h @@ -191,13 +191,13 @@ class FilamentSensorBase { public: static void setup() { #define _INIT_RUNOUT_PIN(P,S,U,D) do{ if (ENABLED(U)) SET_INPUT_PULLUP(P); else if (ENABLED(D)) SET_INPUT_PULLDOWN(P); else SET_INPUT(P); }while(0); - #define INIT_RUNOUT_PIN(N) _INIT_RUNOUT_PIN(FIL_RUNOUT##N##_PIN, FIL_RUNOUT##N##_STATE, FIL_RUNOUT##N##_PULLUP, FIL_RUNOUT##N##_PULLDOWN) - REPEAT_1(NUM_RUNOUT_SENSORS, INIT_RUNOUT_PIN); + #define INIT_RUNOUT_PIN(N) _INIT_RUNOUT_PIN(FIL_RUNOUT##N##_PIN, FIL_RUNOUT##N##_STATE, FIL_RUNOUT##N##_PULLUP, FIL_RUNOUT##N##_PULLDOWN); + REPEAT_1(NUM_RUNOUT_SENSORS, INIT_RUNOUT_PIN) #undef INIT_RUNOUT_PIN #if ENABLED(FILAMENT_SWITCH_AND_MOTION) - #define INIT_MOTION_PIN(N) _INIT_RUNOUT_PIN(FIL_MOTION##N##_PIN, FIL_MOTION##N##_STATE, FIL_MOTION##N##_PULLUP, FIL_MOTION##N##_PULLDOWN) - REPEAT_1(NUM_MOTION_SENSORS, INIT_MOTION_PIN); + #define INIT_MOTION_PIN(N) _INIT_RUNOUT_PIN(FIL_MOTION##N##_PIN, FIL_MOTION##N##_STATE, FIL_MOTION##N##_PULLUP, FIL_MOTION##N##_PULLDOWN); + REPEAT_1(NUM_MOTION_SENSORS, INIT_MOTION_PIN) #undef INIT_MOTION_PIN #endif #undef _INIT_RUNOUT_PIN @@ -212,9 +212,9 @@ class FilamentSensorBase { // Return a bitmask of runout flag states (1 bits always indicates runout) static uint8_t poll_runout_states() { - #define _OR_RUNOUT(N) | (FIL_RUNOUT##N##_STATE ? 0 : _BV(N - 1)) - return poll_runout_pins() ^ uint8_t(0 REPEAT_1(NUM_RUNOUT_SENSORS, _OR_RUNOUT)); - #undef _OR_RUNOUT + #define _INVERT_BIT(N) | (FIL_RUNOUT##N##_STATE ? 0 : _BV(N - 1)) + return poll_runout_pins() ^ uint8_t(0 REPEAT_1(NUM_RUNOUT_SENSORS, _INVERT_BIT)); + #undef _INVERT_BIT } #if ENABLED(FILAMENT_SWITCH_AND_MOTION) diff --git a/Marlin/src/gcode/queue.cpp b/Marlin/src/gcode/queue.cpp index af8e87743657..b64aa951129e 100644 --- a/Marlin/src/gcode/queue.cpp +++ b/Marlin/src/gcode/queue.cpp @@ -99,7 +99,7 @@ PGM_P GCodeQueue::injected_commands_P; // = nullptr */ char GCodeQueue::injected_commands[64]; // = { 0 } -void GCodeQueue::RingBuffer::commit_command(bool skip_ok +void GCodeQueue::RingBuffer::commit_command(const bool skip_ok OPTARG(HAS_MULTI_SERIAL, serial_index_t serial_ind/*=-1*/) ) { commands[index_w].skip_ok = skip_ok; @@ -113,7 +113,7 @@ void GCodeQueue::RingBuffer::commit_command(bool skip_ok * Return true if the command was successfully added. * Return false for a full buffer, or if the 'command' is a comment. */ -bool GCodeQueue::RingBuffer::enqueue(const char *cmd, bool skip_ok/*=true*/ +bool GCodeQueue::RingBuffer::enqueue(const char *cmd, const bool skip_ok/*=true*/ OPTARG(HAS_MULTI_SERIAL, serial_index_t serial_ind/*=-1*/) ) { if (*cmd == ';' || length >= BUFSIZE) return false; diff --git a/Marlin/src/gcode/queue.h b/Marlin/src/gcode/queue.h index 2cb72f2e1571..25b9f5cf9b21 100644 --- a/Marlin/src/gcode/queue.h +++ b/Marlin/src/gcode/queue.h @@ -79,11 +79,11 @@ class GCodeQueue { void advance_pos(uint8_t &p, const int inc) { if (++p >= BUFSIZE) p = 0; length += inc; } - void commit_command(bool skip_ok + void commit_command(const bool skip_ok OPTARG(HAS_MULTI_SERIAL, serial_index_t serial_ind = serial_index_t()) ); - bool enqueue(const char *cmd, bool skip_ok = true + bool enqueue(const char *cmd, const bool skip_ok=true OPTARG(HAS_MULTI_SERIAL, serial_index_t serial_ind = serial_index_t()) ); diff --git a/Marlin/src/lcd/extui/ia_creality/creality_extui.cpp b/Marlin/src/lcd/extui/ia_creality/creality_extui.cpp index 1f40f2a037d2..3ba8322f0085 100644 --- a/Marlin/src/lcd/extui/ia_creality/creality_extui.cpp +++ b/Marlin/src/lcd/extui/ia_creality/creality_extui.cpp @@ -1066,7 +1066,7 @@ namespace ExtUI { TPShowStatus = false; ZERO(ChangeMaterialbuf); ChangeMaterialbuf[1] = ChangeMaterialbuf[0] = 10; - RTS_SndData(10 * ChangeMaterialbuf[0], FilamentUnit1); // It's ChangeMaterialbuf for show,instead of current_position[E_AXIS] in them. + RTS_SndData(10 * ChangeMaterialbuf[0], FilamentUnit1); // It's ChangeMaterialbuf for show, instead of current_position.e in them. RTS_SndData(10 * ChangeMaterialbuf[1], FilamentUnit2); RTS_SndData(getActualTemp_celsius(H0), NozzleTemp); RTS_SndData(getTargetTemp_celsius(H0), NozzlePreheat); @@ -1381,7 +1381,7 @@ namespace ExtUI { case 0xF0: // not to cancel heating break; } - RTS_SndData(10 * ChangeMaterialbuf[0], FilamentUnit1); // It's ChangeMaterialbuf for show,instead of current_position[E_AXIS] in them. + RTS_SndData(10 * ChangeMaterialbuf[0], FilamentUnit1); // It's ChangeMaterialbuf for show, instead of current_position.e in them. RTS_SndData(10 * ChangeMaterialbuf[1], FilamentUnit2); } else if (recdat.addr == FilamentUnit1) { diff --git a/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.h b/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.h index 0d932556638c..ba5df4fe77cd 100644 --- a/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.h +++ b/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.h @@ -31,9 +31,10 @@ * * ***************************************/ -#include "string.h" #include "../ui_api.h" +#include + /*********************************/ #define FHONE (0x5A) #define FHTWO (0xA5) diff --git a/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp b/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp index 6570176a29f6..6e39c9a36e8f 100644 --- a/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp +++ b/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp @@ -24,7 +24,6 @@ #if HAS_TFT_LVGL_UI -#include "string.h" #include "draw_ui.h" #include "pic_manager.h" #include "draw_ready_print.h" @@ -34,6 +33,8 @@ #include "../../../sd/cardreader.h" #include "../../../MarlinCore.h" +#include + extern uint16_t DeviceCode; #if HAS_MEDIA diff --git a/buildroot/share/PlatformIO/variants/MARLIN_F103Rx/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_F103Rx/PeripheralPins.c old mode 100755 new mode 100644 diff --git a/buildroot/share/PlatformIO/variants/MARLIN_F103Rx/PinNamesVar.h b/buildroot/share/PlatformIO/variants/MARLIN_F103Rx/PinNamesVar.h index d9e759f5d0cd..d9076b4dfb59 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_F103Rx/PinNamesVar.h +++ b/buildroot/share/PlatformIO/variants/MARLIN_F103Rx/PinNamesVar.h @@ -27,4 +27,4 @@ #ifdef USBCON USB_DM = PA_11, USB_DP = PA_12, -#endif \ No newline at end of file +#endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_F407ZE/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_F407ZE/PeripheralPins.c index d0905853a9a9..de796f4ef535 100644 --- a/buildroot/share/PlatformIO/variants/MARLIN_F407ZE/PeripheralPins.c +++ b/buildroot/share/PlatformIO/variants/MARLIN_F407ZE/PeripheralPins.c @@ -413,7 +413,7 @@ const PinMap PinMap_USB_OTG_HS[] = { */ {NC, NP, 0} }; - +#endif #ifdef HAL_SD_MODULE_ENABLED WEAK const PinMap PinMap_SD[] = { @@ -430,4 +430,3 @@ WEAK const PinMap PinMap_SD[] = { {NC, NP, 0} }; #endif -#endif From 207535af9d4c4fd5e3cf61bc8f38c082892d1bf1 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 1 May 2023 20:33:58 -0500 Subject: [PATCH 104/427] =?UTF-8?q?=F0=9F=94=A8=20Fix=20Multi-Language=20M?= =?UTF-8?q?enu=20criteria?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/multi_language.h | 3 +++ Marlin/src/lcd/menu/menu_language.cpp | 4 ++-- ini/features.ini | 3 ++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/Marlin/src/core/multi_language.h b/Marlin/src/core/multi_language.h index 05a713e435de..2c0eb7aa7297 100644 --- a/Marlin/src/core/multi_language.h +++ b/Marlin/src/core/multi_language.h @@ -64,6 +64,9 @@ typedef const char Language_Str[]; #if NUM_LANGUAGES > 1 #define HAS_MULTI_LANGUAGE 1 + #if HAS_MARLINUI_MENU + #define HAS_MENU_MULTI_LANGUAGE 1 + #endif #define GET_TEXT(MSG) ( \ ui.language == 4 ? GET_LANG(LCD_LANGUAGE_5)::MSG : \ ui.language == 3 ? GET_LANG(LCD_LANGUAGE_4)::MSG : \ diff --git a/Marlin/src/lcd/menu/menu_language.cpp b/Marlin/src/lcd/menu/menu_language.cpp index 9361d595f76c..c92b86095013 100644 --- a/Marlin/src/lcd/menu/menu_language.cpp +++ b/Marlin/src/lcd/menu/menu_language.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfig.h" -#if HAS_MULTI_LANGUAGE +#if HAS_MENU_MULTI_LANGUAGE #include "menu_item.h" #include "../../MarlinCore.h" @@ -56,4 +56,4 @@ void menu_language() { END_MENU(); } -#endif // HAS_MULTI_LANGUAGE +#endif // HAS_MENU_MULTI_LANGUAGE diff --git a/ini/features.ini b/ini/features.ini index 660e3fb2c8a1..638f3109fcb4 100644 --- a/ini/features.ini +++ b/ini/features.ini @@ -76,7 +76,7 @@ HAS_MENU_DELTA_CALIBRATE = src_filter=+ LCD_INFO_MENU = src_filter=+ HAS_MENU_JOB_RECOVERY = src_filter=+ -HAS_MULTI_LANGUAGE = src_filter=+ + +HAS_MENU_MULTI_LANGUAGE = src_filter=+ HAS_MENU_LED = src_filter=+ HAS_MENU_MEDIA = src_filter=+ HAS_MENU_MIXER = src_filter=+ @@ -225,6 +225,7 @@ HAS_LCD_CONTRAST = src_filter=+ HAS_GCODE_M255 = src_filter=+ HAS_LCD_BRIGHTNESS = src_filter=+ HAS_SOUND = src_filter=+ +HAS_MULTI_LANGUAGE = src_filter=+ TOUCH_SCREEN_CALIBRATION = src_filter=+ ARC_SUPPORT = src_filter=+ GCODE_MOTION_MODES = src_filter=+ From 61f0dd227177419ade6b2454afaec422f41fcc03 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 1 May 2023 20:23:41 -0500 Subject: [PATCH 105/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20=5FCAN=5FHOME=20fo?= =?UTF-8?q?r=20new=20endstop=20flags?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/motion.cpp | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index ccbf73e243a5..9c59195a8cb7 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -2078,12 +2078,7 @@ void prepare_line_to_destination() { // Only Z homing (with probe) is permitted if (axis != Z_AXIS) { BUZZ(100, 880); return; } #else - #define _CAN_HOME(A) (axis == _AXIS(A) && ( \ - ENABLED(A##_SPI_SENSORLESS) \ - || TERN0(HAS_Z_AXIS, TERN0(HOMING_Z_WITH_PROBE, _AXIS(A) == Z_AXIS)) \ - || TERN0(A##_HOME_TO_MIN, A##_MIN_PIN > -1) \ - || TERN0(A##_HOME_TO_MAX, A##_MAX_PIN > -1) \ - )) + #define _CAN_HOME(A) (axis == _AXIS(A) && (EITHER(A##_SPI_SENSORLESS, HAS_##A##_ENDSTOP) || TERN0(HOMING_Z_WITH_PROBE, _AXIS(A) == Z_AXIS))) #define _ANDCANT(N) && !_CAN_HOME(N) if (true MAIN_AXIS_MAP(_ANDCANT)) return; #endif From 9aa69cbc85c9559e2671127d6d6e4298001a6bd5 Mon Sep 17 00:00:00 2001 From: plampix Date: Tue, 2 May 2023 07:01:44 +0200 Subject: [PATCH 106/427] Fix G12 Nozzle Clean (#25766) Followup to #25666 --- Marlin/Configuration.h | 4 +--- Marlin/src/gcode/feature/clean/G12.cpp | 2 +- Marlin/src/libs/nozzle.cpp | 13 ++++++------- Marlin/src/libs/nozzle.h | 8 ++++---- 4 files changed, 12 insertions(+), 15 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 68784df5d7f9..9ffa5740e37c 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -2408,9 +2408,7 @@ // Default pattern to use when 'P' is not provided to G12. One of the enabled options above. #define NOZZLE_CLEAN_DEFAULT_PATTERN 0 - #if ENABLED(NOZZLE_CLEAN_PATTERN_LINE) - #define NOZZLE_CLEAN_STROKES 12 // Default number of pattern repetitions - #endif + #define NOZZLE_CLEAN_STROKES 12 // Default number of pattern repetitions #if ENABLED(NOZZLE_CLEAN_PATTERN_ZIGZAG) #define NOZZLE_CLEAN_TRIANGLES 3 // Default number of triangles diff --git a/Marlin/src/gcode/feature/clean/G12.cpp b/Marlin/src/gcode/feature/clean/G12.cpp index 98be3f0770f2..a5e312f8fdfe 100644 --- a/Marlin/src/gcode/feature/clean/G12.cpp +++ b/Marlin/src/gcode/feature/clean/G12.cpp @@ -64,7 +64,7 @@ void GcodeSuite::G12() { NOZZLE_CLEAN_DEFAULT_PATTERN #endif ); - const uint8_t strokes = TERN0(NOZZLE_CLEAN_PATTERN_LINE, parser.ushortval('S', NOZZLE_CLEAN_STROKES)), + const uint8_t strokes = parser.ushortval('S', NOZZLE_CLEAN_STROKES), objects = TERN0(NOZZLE_CLEAN_PATTERN_ZIGZAG, parser.ushortval('T', NOZZLE_CLEAN_TRIANGLES)); const float radius = TERN0(NOZZLE_CLEAN_PATTERN_CIRCLE, parser.linearval('R', NOZZLE_CLEAN_CIRCLE_RADIUS)); diff --git a/Marlin/src/libs/nozzle.cpp b/Marlin/src/libs/nozzle.cpp index 8f44c69c5ca2..e675c53cb106 100644 --- a/Marlin/src/libs/nozzle.cpp +++ b/Marlin/src/libs/nozzle.cpp @@ -46,7 +46,7 @@ Nozzle nozzle; * @param end xyz_pos_t defining the ending point * @param strokes number of strokes to execute */ - void Nozzle::stroke(const xyz_pos_t &start, const xyz_pos_t &end, const uint8_t &strokes) { + void Nozzle::stroke(const xyz_pos_t &start, const xyz_pos_t &end, const uint8_t strokes) { #if ENABLED(NOZZLE_CLEAN_GOBACK) const xyz_pos_t oldpos = current_position; #endif @@ -87,7 +87,7 @@ Nozzle nozzle; * @param strokes number of strokes to execute * @param objects number of triangles to do */ - void Nozzle::zigzag(const xyz_pos_t &start, const xyz_pos_t &end, const uint8_t &strokes, const uint8_t &objects) { + void Nozzle::zigzag(const xyz_pos_t &start, const xyz_pos_t &end, const uint8_t strokes, const uint8_t objects) { const xy_pos_t diff = end - start; if (!diff.x || !diff.y) return; @@ -135,7 +135,7 @@ Nozzle nozzle; * @param strokes number of strokes to execute * @param radius radius of circle */ - void Nozzle::circle(const xyz_pos_t &start, const xyz_pos_t &middle, const uint8_t &strokes, const_float_t radius) { + void Nozzle::circle(const xyz_pos_t &start, const xyz_pos_t &middle, const uint8_t strokes, const_float_t radius) { if (strokes == 0) return; #if ENABLED(NOZZLE_CLEAN_GOBACK) @@ -164,7 +164,7 @@ Nozzle nozzle; * @param pattern one of the available patterns * @param argument depends on the cleaning pattern */ - void Nozzle::clean(const uint8_t &pattern, const uint8_t &strokes, const_float_t radius, const uint8_t &objects, const uint8_t cleans) { + void Nozzle::clean(const uint8_t pattern, const uint8_t strokes, const_float_t radius, const uint8_t objects, const uint8_t cleans) { xyz_pos_t start[HOTENDS] = NOZZLE_CLEAN_START_POINT, end[HOTENDS] = NOZZLE_CLEAN_END_POINT; #if ENABLED(NOZZLE_CLEAN_PATTERN_CIRCLE) xyz_pos_t middle[HOTENDS] = NOZZLE_CLEAN_CIRCLE_MIDDLE; @@ -230,10 +230,9 @@ Nozzle nozzle; } if (!TEST(cleans, Z_AXIS)) start[arrPos].z = end[arrPos].z = current_position.z; - switch (pattern) { - default: + switch (pattern) { // no default clause as pattern is already validated #if ENABLED(NOZZLE_CLEAN_PATTERN_LINE) - case 0: stroke(start[arrPos], end[arrPos], strokes); + case 0: stroke(start[arrPos], end[arrPos], strokes); break; #endif #if ENABLED(NOZZLE_CLEAN_PATTERN_ZIGZAG) case 1: zigzag(start[arrPos], end[arrPos], strokes, objects); break; diff --git a/Marlin/src/libs/nozzle.h b/Marlin/src/libs/nozzle.h index 69790f5a6786..fb47c867f2a5 100644 --- a/Marlin/src/libs/nozzle.h +++ b/Marlin/src/libs/nozzle.h @@ -41,7 +41,7 @@ class Nozzle { * @param end xyz_pos_t defining the ending point * @param strokes number of strokes to execute */ - static void stroke(const xyz_pos_t &start, const xyz_pos_t &end, const uint8_t &strokes) __Os; + static void stroke(const xyz_pos_t &start, const xyz_pos_t &end, const uint8_t strokes) __Os; /** * @brief Zig-zag clean pattern @@ -52,7 +52,7 @@ class Nozzle { * @param strokes number of strokes to execute * @param objects number of objects to create */ - static void zigzag(const xyz_pos_t &start, const xyz_pos_t &end, const uint8_t &strokes, const uint8_t &objects) __Os; + static void zigzag(const xyz_pos_t &start, const xyz_pos_t &end, const uint8_t strokes, const uint8_t objects) __Os; /** * @brief Circular clean pattern @@ -62,7 +62,7 @@ class Nozzle { * @param strokes number of strokes to execute * @param radius radius of circle */ - static void circle(const xyz_pos_t &start, const xyz_pos_t &middle, const uint8_t &strokes, const_float_t radius) __Os; + static void circle(const xyz_pos_t &start, const xyz_pos_t &middle, const uint8_t strokes, const_float_t radius) __Os; #endif // NOZZLE_CLEAN_FEATURE @@ -77,7 +77,7 @@ class Nozzle { * @param pattern one of the available patterns * @param argument depends on the cleaning pattern */ - static void clean(const uint8_t &pattern, const uint8_t &strokes, const_float_t radius, const uint8_t &objects, const uint8_t cleans) __Os; + static void clean(const uint8_t pattern, const uint8_t strokes, const_float_t radius, const uint8_t objects, const uint8_t cleans) __Os; #endif // NOZZLE_CLEAN_FEATURE From 137ea434227094f675467a9b34c4220e86aa807c Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Wed, 3 May 2023 09:15:10 +1200 Subject: [PATCH 107/427] =?UTF-8?q?=E2=9C=A8=20Creality=20Ender-2=20(Melzi?= =?UTF-8?q?)=20(#25754)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/boards.h | 13 +-- Marlin/src/pins/pins.h | 2 + .../pins/sanguino/pins_MELZI_CREALITY_E2.h | 96 +++++++++++++++++++ 3 files changed, 105 insertions(+), 6 deletions(-) create mode 100644 Marlin/src/pins/sanguino/pins_MELZI_CREALITY_E2.h diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index a51d9a12e17f..da0a4fb121b9 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -191,12 +191,13 @@ #define BOARD_MELZI_V2 1503 // Melzi V2 #define BOARD_MELZI_MAKR3D 1504 // Melzi with ATmega1284 (MaKr3d version) #define BOARD_MELZI_CREALITY 1505 // Melzi Creality3D (for CR-10 etc) -#define BOARD_MELZI_MALYAN 1506 // Melzi Malyan M150 -#define BOARD_MELZI_TRONXY 1507 // Tronxy X5S -#define BOARD_STB_11 1508 // STB V1.1 -#define BOARD_AZTEEG_X1 1509 // Azteeg X1 -#define BOARD_ANET_10 1510 // Anet 1.0 (Melzi clone) -#define BOARD_ZMIB_V2 1511 // ZoneStar ZMIB V2 +#define BOARD_MELZI_CREALITY_ENDER2 1506 // Melzi Creality3D (for Ender-2) +#define BOARD_MELZI_MALYAN 1507 // Melzi Malyan M150 +#define BOARD_MELZI_TRONXY 1508 // Tronxy X5S +#define BOARD_STB_11 1509 // STB V1.1 +#define BOARD_AZTEEG_X1 1510 // Azteeg X1 +#define BOARD_ANET_10 1511 // Anet 1.0 (Melzi clone) +#define BOARD_ZMIB_V2 1512 // ZoneStar ZMIB V2 // // Other ATmega644P, ATmega644, ATmega1284P diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index 67ee0bd08d36..a10a884fa758 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -372,6 +372,8 @@ #include "sanguino/pins_MELZI_MAKR3D.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(MELZI_CREALITY) #include "sanguino/pins_MELZI_CREALITY.h" // ATmega1284P env:melzi_optiboot_optimized env:melzi_optiboot env:melzi_optimized env:melzi +#elif MB(MELZI_CREALITY_ENDER2) + #include "sanguino/pins_MELZI_CREALITY_E2.h" // ATmega1284P env:melzi_optiboot_optimized env:melzi_optiboot env:melzi_optimized env:melzi #elif MB(MELZI_MALYAN) #include "sanguino/pins_MELZI_MALYAN.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(MELZI_TRONXY) diff --git a/Marlin/src/pins/sanguino/pins_MELZI_CREALITY_E2.h b/Marlin/src/pins/sanguino/pins_MELZI_CREALITY_E2.h new file mode 100644 index 000000000000..0d021e1bf694 --- /dev/null +++ b/Marlin/src/pins/sanguino/pins_MELZI_CREALITY_E2.h @@ -0,0 +1,96 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#define BOARD_INFO_NAME "Melzi Ender 2 (Creality)" + +/** + * Connectors. + * FAN1 LASER K-FAN B-MOT(A6) E-TEMP(A7) CHECK AVR ISP + * --------- --------- --------- --------- --------- --------- ---------- + * J11 (Power Switch) |12V GND| |12V D4| |12V D4| |GND D25| |GND D24| |D29 GND| |MISO 5V| + * ------ --------- --------- --------- --------- --------- --------- |SCK MOSI| + * |V-IN|(Regulator) BED HOT-END FAN2 OFF X-STOP Y-STOP Z-STOP |RST GND| + * |GND | --------- --------- --------- --------- --------- --------- --------- ---------- + * |12V | |12V D12| |12V D13| |12V GND| |D27 D17| |GND D18| |GND D19| |GND D20| + * ------ --------- --------- --------- --------- --------- --------- --------- + * + * EXP1 EXP1 as ENDER2 STOCKDISPLAY EXP1 as CR10 STOCKDISPLAY + * ------ ------ ------ + * (AVR_SCK) D7 | 1 2 | D16 SCK | 1 2 | BTN_E BEEPER_PIN | 1 2 | BTN_ENC + * D11 | 3 4 | RESET BTN_EN1 | 3 4 | RESET BTN_EN1 | 3 4 | RESET + * D10 5 6 | D30 BTN_EN2 5 6 | LCD_A0 BTN_EN2 5 6 | LCD_D4 (ST9720 CLK) + * D28 | 7 8 | D5 (AVR_MOSI) LCD_CS | 7 8 | MOSI (ST9720 CS) LCD_RS | 7 8 | LCD_EN (ST9720 DAT) + * GND | 9 10 | 5V GND | 9 10 | 5V GND | 9 10 | 5V + * ------ ------ ------ + */ + +#define EXP1_01_PIN 7 +#define EXP1_02_PIN 16 +#define EXP1_03_PIN 11 +#define EXP1_04_PIN -1 // hardware reset line +#define EXP1_05_PIN 10 +#define EXP1_06_PIN 30 +#define EXP1_07_PIN 28 +#define EXP1_08_PIN 5 + +// +// LCD / Controller +// +#if EITHER(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) + #if ENABLED(CR10_STOCKDISPLAY) + #if ENABLED(SDSUPPORT) + #error "Cannot have SDSUPPORT with CR10_STOCKDISPLAY on this motherboard." // Hardware SDCARD SCK and MOSI pins are reallocated. + #endif + #define LCD_PINS_RS EXP1_07_PIN // ST9720 CS + #define LCD_PINS_EN EXP1_08_PIN // ST9720 DAT + #define LCD_PINS_D4 EXP1_06_PIN // ST9720 CLK + #define BEEPER_PIN EXP1_01_PIN + #elif ENABLED(ENDER2_STOCKDISPLAY) + #define DOGLCD_CS EXP1_07_PIN + #define DOGLCD_A0 EXP1_06_PIN + #endif + #define BTN_ENC EXP1_02_PIN + #define BTN_EN1 EXP1_03_PIN + #define BTN_EN2 EXP1_05_PIN + #define LCD_PINS_DEFINED +#endif + +#define LCD_SDSS 31 // Controller's SD card + +#include "pins_MELZI.h" // ... SANGUINOLOLU_12 ... SANGUINOLOLU_11 + +#if ENABLED(BLTOUCH) + #ifndef SERVO0_PIN + #define SERVO0_PIN 27 + #endif + #if SERVO0_PIN == BEEPER_PIN + #undef BEEPER_PIN + #endif +#elif HAS_FILAMENT_SENSOR + #ifndef FIL_RUNOUT_PIN + #define FIL_RUNOUT_PIN 27 + #endif + #if FIL_RUNOUT_PIN == BEEPER_PIN + #undef BEEPER_PIN + #endif +#endif From 21ea9bf50fbde8b5494d92ac28bc6cfb197a7718 Mon Sep 17 00:00:00 2001 From: plampix Date: Tue, 2 May 2023 23:50:07 +0200 Subject: [PATCH 108/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20minimal=20M115,=20?= =?UTF-8?q?Cap:PROGRESS:0=20(#25769)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/gcode/host/M115.cpp | 33 +++++++++++++-------------------- 1 file changed, 13 insertions(+), 20 deletions(-) diff --git a/Marlin/src/gcode/host/M115.cpp b/Marlin/src/gcode/host/M115.cpp index 43d37e92ac85..239407816b93 100644 --- a/Marlin/src/gcode/host/M115.cpp +++ b/Marlin/src/gcode/host/M115.cpp @@ -39,22 +39,15 @@ //#define MINIMAL_CAP_LINES // Don't even mention the disabled capabilities #if ENABLED(EXTENDED_CAPABILITIES_REPORT) - #if ENABLED(MINIMAL_CAP_LINES) - #define cap_line(S,C) if (C) _cap_line(S) - static void _cap_line(FSTR_P const name) { - SERIAL_ECHOPGM("Cap:"); - SERIAL_ECHOF(name); - SERIAL_ECHOLNPGM(":1"); - } - #else - #define cap_line(V...) _cap_line(V) - static void _cap_line(FSTR_P const name, bool ena=false) { - SERIAL_ECHOPGM("Cap:"); - SERIAL_ECHOF(name); + inline void cap_line(FSTR_P const name, const bool ena=true) { + #if ENABLED(MINIMAL_CAP_LINES) + if (ena) SERIAL_ECHOLNPGM("Cap:", name, ":1"); + #else + SERIAL_ECHOPGM("Cap:", name); SERIAL_CHAR(':', '0' + ena); SERIAL_EOL(); - } - #endif + #endif + } #endif /** @@ -100,10 +93,10 @@ void GcodeSuite::M115() { serial_index_t port = queue.ring_buffer.command_port(); // PAREN_COMMENTS - TERN_(PAREN_COMMENTS, cap_line(F("PAREN_COMMENTS"), true)); + TERN_(PAREN_COMMENTS, cap_line(F("PAREN_COMMENTS"))); // QUOTED_STRINGS - TERN_(GCODE_QUOTED_STRINGS, cap_line(F("QUOTED_STRINGS"), true)); + TERN_(GCODE_QUOTED_STRINGS, cap_line(F("QUOTED_STRINGS"))); // SERIAL_XON_XOFF cap_line(F("SERIAL_XON_XOFF"), ENABLED(SERIAL_XON_XOFF)); @@ -124,10 +117,10 @@ void GcodeSuite::M115() { cap_line(F("AUTOREPORT_TEMP"), ENABLED(AUTO_REPORT_TEMPERATURES)); // PROGRESS (M530 S L, M531 , M532 X L) - cap_line(F("PROGRESS")); + cap_line(F("PROGRESS"), false); // Print Job timer M75, M76, M77 - cap_line(F("PRINT_JOB"), true); + cap_line(F("PRINT_JOB")); // AUTOLEVEL (G29) cap_line(F("AUTOLEVEL"), ENABLED(HAS_AUTOLEVEL)); @@ -153,9 +146,9 @@ void GcodeSuite::M115() { // SPINDLE AND LASER CONTROL (M3, M4, M5) #if ENABLED(SPINDLE_FEATURE) - cap_line(F("SPINDLE"), true); + cap_line(F("SPINDLE")); #elif ENABLED(LASER_FEATURE) - cap_line(F("LASER"), true); + cap_line(F("LASER")); #endif // EMERGENCY_PARSER (M108, M112, M410, M876) From e1f6435d4410478930ef5fb7d99a311332f3cee8 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 2 May 2023 17:59:27 -0500 Subject: [PATCH 109/427] =?UTF-8?q?=E2=9C=A8=20Creality=20STM32F401RE=20bo?= =?UTF-8?q?ard=20(e.g.,=20Ender-5=20S1)=20(#25773)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration.h | 1 + Marlin/src/core/boards.h | 1 + Marlin/src/gcode/gcode.cpp | 4 + Marlin/src/gcode/gcode.h | 5 + Marlin/src/gcode/ota/M936.cpp | 72 +++ Marlin/src/inc/Conditionals_post.h | 4 + Marlin/src/inc/Warnings.cpp | 7 + Marlin/src/module/thermistor/thermistor_1.h | 4 + Marlin/src/module/thermistor/thermistor_14.h | 85 +++ Marlin/src/module/thermistor/thermistors.h | 3 + Marlin/src/pins/pins.h | 2 + Marlin/src/pins/stm32f4/pins_CREALITY_F401.h | 241 +++++++++ .../boards/marlin_CREALITY_STM32F401RE.json | 65 +++ .../share/PlatformIO/ldscripts/creality.ld | 2 +- .../PeripheralPins.c | 252 +++++++++ .../MARLIN_CREALITY_STM32F401RE/PinNamesVar.h | 33 ++ .../hal_conf_custom.h | 495 ++++++++++++++++++ .../MARLIN_CREALITY_STM32F401RE/ldscript.ld | 186 +++++++ .../MARLIN_CREALITY_STM32F401RE/variant.cpp | 238 +++++++++ .../MARLIN_CREALITY_STM32F401RE/variant.h | 151 ++++++ ini/features.ini | 1 + ini/stm32f4.ini | 36 +- 22 files changed, 1881 insertions(+), 7 deletions(-) create mode 100644 Marlin/src/gcode/ota/M936.cpp create mode 100644 Marlin/src/module/thermistor/thermistor_14.h create mode 100644 Marlin/src/pins/stm32f4/pins_CREALITY_F401.h create mode 100644 buildroot/share/PlatformIO/boards/marlin_CREALITY_STM32F401RE.json create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/PeripheralPins.c create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/PinNamesVar.h create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/hal_conf_custom.h create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/ldscript.ld create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/variant.cpp create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/variant.h diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 9ffa5740e37c..8818b04a84f2 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -462,6 +462,7 @@ * 11 : 100kΩ Keenovo AC silicone mats, most Wanhao i3 machines - beta 3950, 1% * 12 : 100kΩ Vishay 0603 SMD NTCS0603E3104FXT (#8) - calibrated for Makibox hot bed * 13 : 100kΩ Hisens up to 300°C - for "Simple ONE" & "All In ONE" hotend - beta 3950, 1% + * 14 : 100kΩ (R25), 4092K (beta25), 4.7kΩ pull-up, bed thermistor as used in Ender-5 S1 * 15 : 100kΩ Calibrated for JGAurora A5 hotend * 18 : 200kΩ ATC Semitec 204GT-2 Dagoma.Fr - MKS_Base_DKU001327 * 22 : 100kΩ GTM32 Pro vB - hotend - 4.7kΩ pullup to 3.3V and 220Ω to analog input diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index da0a4fb121b9..5a05d2c7147f 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -449,6 +449,7 @@ #define BOARD_FYSETC_SPIDER_KING407 5243 // FYSETC Spider King407 (STM32F407ZG) #define BOARD_MKS_SKIPR_V1 5244 // MKS SKIPR v1.0 all-in-one board (STM32F407VE) #define BOARD_TRONXY_V10 5245 // TRONXY V10 (STM32F446ZE) +#define BOARD_CREALITY_F401RE 5246 // Creality CR4NS200141C13 (STM32F401RE) as found in the Ender-5 S1 // // ARM Cortex-M7 diff --git a/Marlin/src/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index 013a2bfb742e..9c24791c820e 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -1061,6 +1061,10 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 422: M422(); break; // M422: Set Z Stepper automatic alignment position using probe #endif + #if ENABLED(OTA_FIRMWARE_UPDATE) + case 936: M936(); break; // M936: OTA update firmware. + #endif + #if SPI_FLASH_BACKUP case 993: M993(); break; // M993: Backup SPI Flash to SD case 994: M994(); break; // M994: Load a Backup from SD to SPI Flash diff --git a/Marlin/src/gcode/gcode.h b/Marlin/src/gcode/gcode.h index 05175abd9d24..75a60b4dd7c3 100644 --- a/Marlin/src/gcode/gcode.h +++ b/Marlin/src/gcode/gcode.h @@ -300,6 +300,7 @@ * M913 - Set HYBRID_THRESHOLD speed. (Requires HYBRID_THRESHOLD) * M914 - Set StallGuard sensitivity. (Requires SENSORLESS_HOMING or SENSORLESS_PROBING) * M919 - Get or Set motor Chopper Times (time_off, hysteresis_end, hysteresis_start) using axis codes XYZE, etc. If no parameters are given, report. (Requires at least one _DRIVER_TYPE defined as TMC2130/2160/5130/5160/2208/2209/2660) + * M936 - OTA update firmware. (Requires OTA_FIRMWARE_UPDATE) * M951 - Set Magnetic Parking Extruder parameters. (Requires MAGNETIC_PARKING_EXTRUDER) * M3426 - Read MCP3426 ADC over I2C. (Requires HAS_MCP3426_ADC) * M7219 - Control Max7219 Matrix LEDs. (Requires MAX7219_GCODE) @@ -1199,6 +1200,10 @@ class GcodeSuite { static void M928(); #endif + #if ENABLED(OTA_FIRMWARE_UPDATE) + static void M936(); + #endif + #if ENABLED(MAGNETIC_PARKING_EXTRUDER) static void M951(); #endif diff --git a/Marlin/src/gcode/ota/M936.cpp b/Marlin/src/gcode/ota/M936.cpp new file mode 100644 index 000000000000..6324b3db437f --- /dev/null +++ b/Marlin/src/gcode/ota/M936.cpp @@ -0,0 +1,72 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#include "../../inc/MarlinConfig.h" + +#if ENABLED(OTA_FIRMWARE_UPDATE) + +#include "../gcode.h" +#include "../../libs/BL24CXX.h" + +#if ENABLED(CREALITY_RTS) + #include "../../lcd/rts/lcd_rts.h" +#endif + +#define OTA_FLAG_EEPROM 90 + +//#define DEBUG_OUT 1 +#include "../../core/debug_out.h" + +/** + * M936: Set one of the OTA update flags. + * V2 = Upgrade the motherboard firmware + * V3 = Upgrade the RTS controller firmware + */ +void GcodeSuite::M936() { + static uint8_t ota_update_flag = 0x00; + const int16_t ota = parser.intval('V', -1); + switch (ota) { + case 2: + // Set the OTA board firmware upgrade flag ahead of reboot. + ota_update_flag = 0x01; + DEBUG_ECHOLNPGM("Motherboard upgrade flag set"); + TERN_(CREALITY_RTS, RTS_Error(Error_205)); + break; + + #if ENABLED(CREALITY_RTS) + case 3: + // Set the OTA screen firmware upgrade flag ahead of reboot. + ota_update_flag = 0x02; + DEBUG_ECHOLNPGM("DWIN upgrade flag set"); + TERN_(CREALITY_RTS, RTS_Error(Error_206)); + break; + #endif + } + + switch (ota) { + case 2: TERN_(CREALITY_RTS, case 3:) + BL24CXX::write(OTA_FLAG_EEPROM, &ota_update_flag, sizeof(ota_update_flag)); + safe_delay(100); + hal.reboot(); + } +} + +#endif // OTA_FIRMWARE_UPDATE diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 2c611099e327..0d7464900994 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -65,6 +65,10 @@ #undef IIC_BL24CXX_EEPROM #endif +#if DISABLED(IIC_BL24CXX_EEPROM) + #undef OTA_FIRMWARE_UPDATE +#endif + #ifdef TEENSYDUINO #undef max #define max(a,b) ((a)>(b)?(a):(b)) diff --git a/Marlin/src/inc/Warnings.cpp b/Marlin/src/inc/Warnings.cpp index c7773eaabc9a..ca72ddc3dca6 100644 --- a/Marlin/src/inc/Warnings.cpp +++ b/Marlin/src/inc/Warnings.cpp @@ -749,3 +749,10 @@ #if SDSORT_CACHE_LPC1768_WARNING #warning "SDCARD_SORT_ALPHA sub-options overridden for LPC1768 with DOGM LCD SCK overlap." #endif + +/** + * Ender-5 S1 bootloader + */ +#ifdef STM32F4_UPDATE_FOLDER + #warning "Place the firmware bin file in a folder named 'STM32F4_UPDATE' on the SD card. Install with 'M936 V2'." +#endif diff --git a/Marlin/src/module/thermistor/thermistor_1.h b/Marlin/src/module/thermistor/thermistor_1.h index 2ebf8da550a0..e581f1b5cd4b 100644 --- a/Marlin/src/module/thermistor/thermistor_1.h +++ b/Marlin/src/module/thermistor/thermistor_1.h @@ -23,6 +23,10 @@ // R25 = 100 kOhm, beta25 = 4092 K, 4.7 kOhm pull-up, bed thermistor constexpr temp_entry_t temptable_1[] PROGMEM = { + { OV( 18), 320 }, + { OV( 19), 315 }, + { OV( 20), 310 }, + { OV( 22), 305 }, { OV( 23), 300 }, { OV( 25), 295 }, { OV( 27), 290 }, diff --git a/Marlin/src/module/thermistor/thermistor_14.h b/Marlin/src/module/thermistor/thermistor_14.h new file mode 100644 index 000000000000..f0bc6f606ee8 --- /dev/null +++ b/Marlin/src/module/thermistor/thermistor_14.h @@ -0,0 +1,85 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +// R25 = 100 kOhm, beta25 = 4092 K, 4.7 kOhm pull-up, bed thermistor +const temp_entry_t temptable_14[] PROGMEM = { + { OV( 23), 275 }, + { OV( 25), 270 }, + { OV( 27), 265 }, + { OV( 28), 260 }, + { OV( 31), 255 }, + { OV( 33), 250 }, + { OV( 35), 245 }, + { OV( 38), 240 }, + { OV( 41), 235 }, + { OV( 44), 230 }, + { OV( 47), 225 }, + { OV( 52), 220 }, + { OV( 56), 215 }, + { OV( 62), 210 }, + { OV( 68), 205 }, + { OV( 74), 200 }, + { OV( 81), 195 }, + { OV( 90), 190 }, + { OV( 99), 185 }, + { OV( 108), 180 }, + { OV( 121), 175 }, + { OV( 133), 170 }, + { OV( 147), 165 }, + { OV( 162), 160 }, + { OV( 180), 155 }, + { OV( 199), 150 }, + { OV( 219), 145 }, + { OV( 243), 140 }, + { OV( 268), 135 }, + { OV( 296), 130 }, + { OV( 326), 125 }, + { OV( 358), 120 }, + { OV( 398), 115 }, + { OV( 435), 110 }, + { OV( 476), 105 }, + { OV( 519), 100 }, + { OV( 566), 95 }, + { OV( 610), 90 }, + { OV( 658), 85 }, + { OV( 703), 80 }, + { OV( 742), 75 }, + { OV( 773), 70 }, + { OV( 807), 65 }, + { OV( 841), 60 }, + { OV( 871), 55 }, + { OV( 895), 50 }, + { OV( 918), 45 }, + { OV( 937), 40 }, + { OV( 954), 35 }, + { OV( 968), 30 }, + { OV( 978), 25 }, + { OV( 985), 20 }, + { OV( 993), 15 }, + { OV( 999), 10 }, + { OV(1004), 5 }, + { OV(1008), 0 }, + { OV(1012), -5 }, + { OV(1016), -10 }, + { OV(1020), -15 } +}; diff --git a/Marlin/src/module/thermistor/thermistors.h b/Marlin/src/module/thermistor/thermistors.h index 53ca609f6836..5d4a8a7c92bc 100644 --- a/Marlin/src/module/thermistor/thermistors.h +++ b/Marlin/src/module/thermistor/thermistors.h @@ -109,6 +109,9 @@ typedef struct { raw_adc_t value; celsius_t celsius; } temp_entry_t; #if ANY_THERMISTOR_IS(13) // beta25 = 4100 K, R25 = 100 kOhm, Pull-up = 4.7 kOhm, "Hisens" #include "thermistor_13.h" #endif +#if ANY_THERMISTOR_IS(14) // beta25 = 4092 K, R25 = 100 kOhm, Pull-up = 4.7 kOhm, "EPCOS" for hot bed + #include "thermistor_14.h" +#endif #if ANY_THERMISTOR_IS(15) // JGAurora A5 thermistor calibration #include "thermistor_15.h" #endif diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index a10a884fa758..fe7bc9ed17b6 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -788,6 +788,8 @@ #include "stm32f4/pins_MKS_SKIPR_V1_0.h" // STM32F4 env:mks_skipr_v1 env:mks_skipr_v1_nobootloader #elif MB(TRONXY_V10) #include "stm32f4/pins_TRONXY_V10.h" // STM32F4 env:STM32F446_tronxy +#elif MB(CREALITY_F401RE) + #include "stm32f4/pins_CREALITY_F401.h" // STM32F4 env:STM32F401RE_creality // // ARM Cortex M7 diff --git a/Marlin/src/pins/stm32f4/pins_CREALITY_F401.h b/Marlin/src/pins/stm32f4/pins_CREALITY_F401.h new file mode 100644 index 000000000000..7f9eba990137 --- /dev/null +++ b/Marlin/src/pins/stm32f4/pins_CREALITY_F401.h @@ -0,0 +1,241 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "env_validate.h" + +#define BOARD_INFO_NAME "STM32F401RET6" +#define DEFAULT_MACHINE_NAME "Ender-5 S1" + +#define IIC_BL24CXX_EEPROM // EEPROM on I2C-0 used only for display settings +#if ENABLED(IIC_BL24CXX_EEPROM) + #define IIC_EEPROM_SDA PA11 + #define IIC_EEPROM_SCL PA12 + #define MARLIN_EEPROM_SIZE 0x800 // 2Kb (24C16) +#else + #define SDCARD_EEPROM_EMULATION // SD EEPROM until all EEPROM is BL24CXX + #define MARLIN_EEPROM_SIZE 0x800 // 2Kb +#endif + +// SPI +//#define SPI_EEPROM // EEPROM on SPI-0 +//#define SPI_CHAN_EEPROM1 ? +//#define SPI_EEPROM1_CS ? + +// 2K EEPROM +//#define SPI_EEPROM2_CS ? + +// 32Mb FLASH +//#define SPI_FLASH_CS ? + +// +// Servos +// +#define SERVO0_PIN PC13 // BLTouch OUT + +// +// Limit Switches +// +#define X_STOP_PIN PA5 +#define Y_STOP_PIN PA6 + +#if ENABLED(BLTOUCH) + #define Z_MAX_PIN PA15 // ROCK_20220730 + #define Z_MIN_PIN PC14 + //#define Z_STOP_PIN_NADD PA15 // Added z-axis limit switch +#elif ENABLED(PROBE_ACTIVATION_SWITCH) + #define Z_MIN_PIN PA15 + #define PROBE_TARE_PIN PC14 + #define PROBE_ACTIVATION_SWITCH_PIN PB2 +#else + #define Z_MIN_PIN PA15 +#endif + +// +// Filament runout +// +#if ENABLED(FILAMENT_RUNOUT_SENSOR) + #define FIL_RUNOUT_PIN PC15 +#endif + +// +// Steppers Motor drive chip power control +// +#define X_ENABLE_PIN PC3 +#define X_STEP_PIN PC2 +#define X_DIR_PIN PB9 + +#define Y_ENABLE_PIN PC3 +#define Y_STEP_PIN PB8 +#define Y_DIR_PIN PB7 + +#define Z_ENABLE_PIN PC3 +#define Z_STEP_PIN PB6 +#define Z_DIR_PIN PB5 + +#define E0_ENABLE_PIN PC3 +#define E0_STEP_PIN PB4 +#define E0_DIR_PIN PB3 + +// +// Temperature Sensors +// +#ifndef TEMP_0_PIN + #define TEMP_0_PIN PC5 // E1_THERMISTOR PA0 -> PT100 +#endif +#define TEMP_BED_PIN PC4 // BED_THERMISTOR_1 + +// +// Heaters / Fans +// +#define HEATER_0_PIN PA1 // E1_HEAT_PWM +#define HEATER_BED_PIN PA7 // BED_HEAT_1 FET + +#define FAN0_PIN PA0 // Part cooling fan FET +//#define FAN1_PIN PE11 // Extruder fan FET +//#define FAN2_PIN PE1 // Controller fan FET + +#ifndef E0_AUTO_FAN_PIN + #define E0_AUTO_FAN_PIN PA1 // FAN1_PIN +#endif + +// +// SD Card +// +#define SD_DETECT_PIN PC7 +#define SDCARD_CONNECTION ONBOARD +#define ONBOARD_SPI_DEVICE 1 +#define ONBOARD_SD_CS_PIN PC12 // SDSS +#define SDIO_SUPPORT +#define NO_SD_HOST_DRIVE // This board's SD is only seen by the printer + +// SPI 2 +#if ENABLED(RET6_12864_LCD) + + #define LCD_PINS_RS PB12 + #define LCD_PINS_ENABLE PB15 + #define LCD_PINS_D4 PB13 + #define BTN_EN2 PB14 +#endif + +//#define LED_CONTROL_PIN PA7 + +// +// WiFI Reset +// +#ifdef MENU_RESET_WIFI + #define RESET_WIFI_PIN PB12 +#endif + +// +// Backpower +// +#ifndef BACKPOWER_CTRL_PIN + #define BACKPOWER_CTRL_PIN PA4 // Pull down on the electricity, When the ADC detects that the 24V power supply is below 20V, Save the continued call data first, PA4 = 1 +#endif + +#ifndef CHECK_24V_PIN + #define POWER_DETECTION_PIN PB0 // Detect ADC input pin of 24V power supply +#endif + +/** + * Logical pin vs. port/pin cross reference + * + * PA0 54 // E1_THERMISTOR PA9 0 // TX + * PA1 55 // E2_THERMISTOR PA10 1 // RX + * PA2 56 // E3_THERMISTOR PD3 2 // CTS + * PA3 53 // BED_THERMISTOR_3 PD4 3 // RTS + * PA4 16 // SPI_CS PD5 4 // TX + * PA5 17 // SPI_SCK PD6 5 // RX + * PA6 18 // SPI_MISO PB5 6 // WIFI_WAKEUP + * PA7 19 // SPI_MOSI PE11 7 // WIFI_RESET + * PA8 43 // V_STOP PE12 8 // WIFI_BOOT + * PA9 0 // TX PE1 9 // STATUS_LED + * PA10 1 // RX PB12 10 // SPI_CS + * PA11 30 // OTG_DM PB15 11 // SPI_MOSI + * PA12 31 // OTG_DP PB14 12 // SPI_MISO + * PA13 20 // JTAG_TMS/SWDIO PB13 13 // SPI_SCK + * PA14 21 // JTAG_TCK/SWCLK PB7 14 // SDA + * PA15 25 // SD_CARD_DETECT PB6 15 // SCL + * PB0 49 // E2_HEAT_PWM PA4 16 // SPI_CS + * PB1 50 // E3_HEAT_PWM PA5 17 // SPI_SCK + * PB3 22 // JTAG_TDO/SWO PA6 18 // SPI_MISO + * PB4 37 // USER4 PA7 19 // SPI_MOSI + * PB5 6 // WIFI_WAKEUP PA13 20 // JTAG_TMS/SWDIO + * PB6 15 // SCL PA14 21 // JTAG_TCK/SWCLK + * PB7 14 // SDA PB3 22 // JTAG_TDO/SWO + * PB8 77 // E3_PWM PC8 23 // SDIO_D0 + * PB9 35 // USER1 PC9 24 // SDIO_D1 + * PB10 64 // Y_PWM PA15 25 // SD_CARD_DETECT + * PB12 10 // SPI_CS PC10 26 // SDIO_D2 + * PB13 13 // SPI_SCK PC11 27 // SDIO_D3 + * PB14 12 // SPI_MISO PC12 28 // SDIO_CK + * PB15 11 // SPI_MOSI PD2 29 // SDIO_CMD + * PC0 68 // Z_DIR PA11 30 // OTG_DM + * PC1 33 // IR_ON PA12 31 // OTG_DP + * PC2 51 // BED_THERMISTOR_1 PD1 32 // IR_OUT + * PC3 52 // BED_THERMISTOR_2 PC1 33 // IR_ON + * PC4 57 // E1_FAN PD7 34 // USER3 + * PC5 58 // E2_FAN PB9 35 // USER1 + * PC6 67 // Z_PWM PE0 36 // USER2 + * PC7 48 // E1_HEAT_PWM PB4 37 // USER4 + * PC8 23 // SDIO_D0 PE7 38 // USER_BUTTON + * PC9 24 // SDIO_D1 PD8 39 // X_STOP + * PC10 26 // SDIO_D2 PD9 40 // Y_STOP + * PC11 27 // SDIO_D3 PD10 41 // Z_STOP + * PC12 28 // SDIO_CK PD11 42 // U_STOP + * PC13 70 // E1_DIR PA8 43 // V_STOP + * PC14 69 // E1_RESET PD0 44 // W_STOP + * PC15 66 // Z_RESET PD13 45 // BED_HEAT_2 + * PD0 44 // W_STOP PD14 46 // BED_HEAT_1 + * PD1 32 // IR_OUT PD15 47 // BED_HEAT_3 + * PD2 29 // SDIO_CMD PC7 48 // E1_HEAT_PWM + * PD3 2 // CTS PB0 49 // E2_HEAT_PWM + * PD4 3 // RTS PB1 50 // E3_HEAT_PWM + * PD5 4 // TX PC2 51 // BED_THERMISTOR_1 + * PD6 5 // RX PC3 52 // BED_THERMISTOR_2 + * PD7 34 // USER3 PA3 53 // BED_THERMISTOR_3 + * PD8 39 // X_STOP PA0 54 // E1_THERMISTOR + * PD9 40 // Y_STOP PA1 55 // E2_THERMISTOR + * PD10 41 // Z_STOP PA2 56 // E3_THERMISTOR + * PD11 42 // U_STOP PC4 57 // E1_FAN + * PD12 71 // E1_PWM PC5 58 // E2_FAN + * PD13 45 // BED_HEAT_2 PE8 59 // E3_FAN + * PD14 46 // BED_HEAT_1 PE13 60 // X_RESET + * PD15 47 // BED_HEAT_3 PE14 61 // X_PWM + * PE0 36 // USER2 PE15 62 // X_DIR + * PE1 9 // STATUS_LED PE10 63 // Y_RESET + * PE2 76 // E3_DIR PB10 64 // Y_PWM + * PE3 75 // E3_RESET PE9 65 // Y_DIR + * PE4 72 // E2_RESET PC15 66 // Z_RESET + * PE5 73 // E2_PWM PC6 67 // Z_PWM + * PE6 74 // E2_DIR PC0 68 // Z_DIR + * PE7 38 // USER_BUTTON PC14 69 // E1_RESET + * PE8 59 // E3_FAN PC13 70 // E1_DIR + * PE9 65 // Y_DIR PD12 71 // E1_PWM + * PE10 63 // Y_RESET PE4 72 // E2_RESET + * PE11 7 // WIFI_RESET PE5 73 // E2_PWM + * PE12 8 // WIFI_BOOT PE6 74 // E2_DIR + * PE13 60 // X_RESET PE3 75 // E3_RESET + * PE14 61 // X_PWM PE2 76 // E3_DIR + * PE15 62 // X_DIR PB8 77 // E3_PWM + */ diff --git a/buildroot/share/PlatformIO/boards/marlin_CREALITY_STM32F401RE.json b/buildroot/share/PlatformIO/boards/marlin_CREALITY_STM32F401RE.json new file mode 100644 index 000000000000..31739c3a386a --- /dev/null +++ b/buildroot/share/PlatformIO/boards/marlin_CREALITY_STM32F401RE.json @@ -0,0 +1,65 @@ +{ + "build": { + "core": "stm32", + "cpu": "cortex-m4", + "extra_flags": "-DSTM32F401xx", + "f_cpu": "84000000L", + "hwids": [ + [ + "0x1EAF", + "0x0003" + ], + [ + "0x0483", + "0x3748" + ] + ], + "ldscript": "ldscript.ld", + "mcu": "stm32f401ret6", + "variant": "MARLIN_CREALITY_STM32F401RE" + }, + "debug": { + "jlink_device": "STM32F401RE", + "openocd_target": "stm32f4x", + "svd_path": "STM32F40x.svd", + "tools": { + "stlink": { + "server": { + "arguments": [ + "-f", + "scripts/interface/stlink.cfg", + "-c", + "transport select hla_swd", + "-f", + "scripts/target/stm32f4x.cfg", + "-c", + "reset_config none" + ], + "executable": "bin/openocd", + "package": "tool-openocd" + } + } + } + }, + "frameworks": [ + "arduino", + "stm32cube" + ], + "name": "STM32F401RE (64k RAM. 512k Flash)", + "upload": { + "disable_flushing": false, + "maximum_ram_size": 65536, + "maximum_size": 514288, + "protocol": "stlink", + "protocols": [ + "stlink", + "dfu", + "jlink" + ], + "require_upload_port": true, + "use_1200bps_touch": false, + "wait_for_upload_port": false + }, + "url": "https://www.st.com/en/microcontrollers-microprocessors/stm32f401re.html", + "vendor": "Generic" +} diff --git a/buildroot/share/PlatformIO/ldscripts/creality.ld b/buildroot/share/PlatformIO/ldscripts/creality.ld index 785345543c0c..8b330c9457b2 100644 --- a/buildroot/share/PlatformIO/ldscripts/creality.ld +++ b/buildroot/share/PlatformIO/ldscripts/creality.ld @@ -1,7 +1,7 @@ MEMORY { ram (rwx) : ORIGIN = 0x20000000, LENGTH = 64K - 40 - rom (rx) : ORIGIN = 0x08007000, LENGTH = 512K - 28K + rom (rx) : ORIGIN = 0x08007000, LENGTH = 512K - 64K } /* Provide memory region aliases for common.inc */ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/PeripheralPins.c new file mode 100644 index 000000000000..418ef5aa7abc --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/PeripheralPins.c @@ -0,0 +1,252 @@ +/* + ******************************************************************************* + * Copyright (c) 2019, STMicroelectronics + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. 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. + * 3. Neither the name of STMicroelectronics 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 HOLDER 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. + ******************************************************************************* + * Automatically generated from STM32F401R[(B-C)|(D-E)]Tx.xml + */ +#include "Arduino.h" +#include "PeripheralPins.h" + +/* ===== + * Note: Commented lines are alternative possibilities which are not used per default. + * If you change them, you will have to know what you do + * ===== + */ + +//*** ADC *** + +#ifdef HAL_ADC_MODULE_ENABLED +WEAK const PinMap PinMap_ADC[] = { + {PA_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 0, 0)}, // ADC1_IN0 + {PA_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // ADC1_IN1 + {PA_2, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // ADC1_IN2 + {PA_3, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 3, 0)}, // ADC1_IN3 + {PA_4, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 4, 0)}, // ADC1_IN4 + {PA_5, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)}, // ADC1_IN5 + {PA_6, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 6, 0)}, // ADC1_IN6 + {PA_7, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)}, // ADC1_IN7 + {PB_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 8, 0)}, // ADC1_IN8 + {PB_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 9, 0)}, // ADC1_IN9 + {PC_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 10, 0)}, // ADC1_IN10 + {PC_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 11, 0)}, // ADC1_IN11 + {PC_2, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 12, 0)}, // ADC1_IN12 + {PC_3, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 13, 0)}, // ADC1_IN13 + {PC_4, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 14, 0)}, // ADC1_IN14 + {PC_5, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 15, 0)}, // ADC1_IN15 + {NC, NP, 0} +}; +#endif + +//*** No DAC *** + +//*** I2C *** + +#ifdef HAL_I2C_MODULE_ENABLED +WEAK const PinMap PinMap_I2C_SDA[] = { + {PB_3, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF9_I2C2)}, + {PB_4, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF9_I2C3)}, + {PB_7, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_9, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PC_9, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)}, + {NC, NP, 0} +}; + +WEAK const PinMap PinMap_I2C_SCL[] = { + {PA_8, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)}, + {PB_6, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_8, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_10, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + {NC, NP, 0} +}; +#endif + +//*** PWM *** + +#ifdef HAL_TIM_MODULE_ENABLED +WEAK const PinMap PinMap_PWM[] = { + //{PA_0, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 + {PA_0, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 1, 0)}, // TIM5_CH1 + //{PA_1, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2 + {PA_1, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 2, 0)}, // TIM5_CH2 + //{PA_2, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // TIM2_CH3 + {PA_2, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 3, 0)}, // TIM5_CH3 + //{PA_2, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 1, 0)}, // TIM9_CH1 + //{PA_3, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 4, 0)}, // TIM2_CH4 + {PA_3, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 4, 0)}, // TIM5_CH4 + //{PA_3, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 2, 0)}, // TIM9_CH2 + {PA_5, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 + {PA_6, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 + //{PA_7, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N + {PA_7, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 + {PA_8, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 0)}, // TIM1_CH1 + {PA_9, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 0)}, // TIM1_CH2 + {PA_10, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 0)}, // TIM1_CH3 + {PA_11, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 4, 0)}, // TIM1_CH4 + {PA_15, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 + //{PB_0, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N + {PB_0, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 3, 0)}, // TIM3_CH3 + //{PB_1, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N + {PB_1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 4, 0)}, // TIM3_CH4 + {PB_3, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2 + {PB_4, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 + {PB_5, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 + {PB_6, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 1, 0)}, // TIM4_CH1 + {PB_7, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 2, 0)}, // TIM4_CH2 + {PB_8, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 3, 0)}, // TIM4_CH3 + //{PB_8, TIM10, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM10, 1, 0)}, // TIM10_CH1 + {PB_9, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 4, 0)}, // TIM4_CH4 + //{PB_9, TIM11, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM11, 1, 0)}, // TIM11_CH1 + {PB_10, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // TIM2_CH3 + {PB_13, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N + {PB_14, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N + {PB_15, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N + {PC_6, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 + {PC_7, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 + {PC_8, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 3, 0)}, // TIM3_CH3 + {PC_9, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 4, 0)}, // TIM3_CH4 + {NC, NP, 0} +}; +#endif + +//*** SERIAL *** + +#ifdef HAL_UART_MODULE_ENABLED +WEAK const PinMap PinMap_UART_TX[] = { + {PA_2, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PA_9, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PA_11, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + {PB_6, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PC_6, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + {NC, NP, 0} +}; + +WEAK const PinMap PinMap_UART_RX[] = { + {PA_3, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PA_10, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PA_12, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + {PB_7, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PC_7, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + {NC, NP, 0} +}; + +WEAK const PinMap PinMap_UART_RTS[] = { + {PA_1, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PA_12, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {NC, NP, 0} +}; + +WEAK const PinMap PinMap_UART_CTS[] = { + {PA_0, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PA_11, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {NC, NP, 0} +}; +#endif + +//*** SPI *** + +#ifdef HAL_SPI_MODULE_ENABLED +WEAK const PinMap PinMap_SPI_MOSI[] = { + {PA_7, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + //{PB_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PB_5, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PB_15, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_3, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_12, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {NC, NP, 0} +}; + +WEAK const PinMap PinMap_SPI_MISO[] = { + {PA_6, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + //{PB_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PB_4, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PB_14, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_2, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_11, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {NC, NP, 0} +}; + +WEAK const PinMap PinMap_SPI_SCLK[] = { + {PA_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + //{PB_3, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PB_3, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PB_10, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PB_13, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_10, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {NC, NP, 0} +}; + +WEAK const PinMap PinMap_SPI_SSEL[] = { + {PA_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + //{PA_4, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + //{PA_15, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PA_15, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PB_9, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PB_12, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {NC, NP, 0} +}; +#endif + +//*** No CAN *** + +//*** No ETHERNET *** + +//*** No QUADSPI *** + +//*** USB *** + +#ifdef HAL_PCD_MODULE_ENABLED +WEAK const PinMap PinMap_USB_OTG_FS[] = { +#ifndef ARDUINO_CoreBoard_F401RC + {PA_8, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_SOF + {PA_9, USB_OTG_FS, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, GPIO_AF_NONE)}, // USB_OTG_FS_VBUS + {PA_10, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_ID +#endif + {PA_11, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_DM + {PA_12, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_DP + {NC, NP, 0} +}; +#endif + +//*** No USB_OTG_HS *** + +//*** SD *** + +#ifdef HAL_SD_MODULE_ENABLED +WEAK const PinMap PinMap_SD[] = { + {PB_8, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D4 + {PB_9, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D5 + {PC_6, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D6 + {PC_7, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D7 + {PC_8, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D0 + {PC_9, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D1 + {PC_10, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D2 + {PC_11, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D3 + {PC_12, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF12_SDIO)}, // SDIO_CK + {PD_2, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF12_SDIO)}, // SDIO_CMD + {NC, NP, 0} +}; +#endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/PinNamesVar.h b/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/PinNamesVar.h new file mode 100644 index 000000000000..f5db451e6f19 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/PinNamesVar.h @@ -0,0 +1,33 @@ +/* SYS_WKUP */ +#ifdef PWR_WAKEUP_PIN1 + SYS_WKUP1 = PA_0, +#endif +#ifdef PWR_WAKEUP_PIN2 + SYS_WKUP2 = NC, +#endif +#ifdef PWR_WAKEUP_PIN3 + SYS_WKUP3 = NC, +#endif +#ifdef PWR_WAKEUP_PIN4 + SYS_WKUP4 = NC, +#endif +#ifdef PWR_WAKEUP_PIN5 + SYS_WKUP5 = NC, +#endif +#ifdef PWR_WAKEUP_PIN6 + SYS_WKUP6 = NC, +#endif +#ifdef PWR_WAKEUP_PIN7 + SYS_WKUP7 = NC, +#endif +#ifdef PWR_WAKEUP_PIN8 + SYS_WKUP8 = NC, +#endif +/* USB */ +#ifdef USBCON + USB_OTG_FS_SOF = PA_8, + USB_OTG_FS_VBUS = PA_9, + USB_OTG_FS_ID = PA_10, + USB_OTG_FS_DM = PA_11, + USB_OTG_FS_DP = PA_12, +#endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/hal_conf_custom.h b/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/hal_conf_custom.h new file mode 100644 index 000000000000..1dd047bb9005 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/hal_conf_custom.h @@ -0,0 +1,495 @@ +/** + ****************************************************************************** + * @file stm32f4xx_hal_conf.h + * @brief HAL configuration file. + ****************************************************************************** + * @attention + * + *

© Copyright (c) 2017 STMicroelectronics. + * All rights reserved.

+ * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __STM32F4xx_HAL_CONF_CUSTOM +#define __STM32F4xx_HAL_CONF_CUSTOM + +#ifdef __cplusplus +extern "C" { +#endif + +/* Exported types ------------------------------------------------------------*/ +/* Exported constants --------------------------------------------------------*/ + +/* ########################## Module Selection ############################## */ + /** + * @brief This is the list of modules to be used in the HAL driver + */ +#define HAL_MODULE_ENABLED +#define HAL_ADC_MODULE_ENABLED +#define HAL_CRC_MODULE_ENABLED +#define HAL_DMA_MODULE_ENABLED +#define HAL_FLASH_MODULE_ENABLED +#define HAL_GPIO_MODULE_ENABLED +#define HAL_I2C_MODULE_ENABLED +#define HAL_IWDG_MODULE_ENABLED +#define HAL_PWR_MODULE_ENABLED +#define HAL_RCC_MODULE_ENABLED +#define HAL_RTC_MODULE_ENABLED +#define HAL_SPI_MODULE_ENABLED +#define HAL_TIM_MODULE_ENABLED +#define HAL_CORTEX_MODULE_ENABLED +//#define HAL_PCD_MODULE_ENABLED // Automatically added if any type of USB is enabled, as in Arduino IDE. (STM32 v3.10700.191028) + +//#define HAL_CAN_MODULE_ENABLED +//#define HAL_CAN_LEGACY_MODULE_ENABLED +//#define HAL_CEC_MODULE_ENABLED +//#define HAL_CRYP_MODULE_ENABLED +//#define HAL_DAC_MODULE_ENABLED +//#define HAL_DCMI_MODULE_ENABLED +//#define HAL_DMA2D_MODULE_ENABLED +//#define HAL_ETH_MODULE_ENABLED +//#define HAL_NAND_MODULE_ENABLED +//#define HAL_NOR_MODULE_ENABLED +//#define HAL_PCCARD_MODULE_ENABLED +//#define HAL_SRAM_MODULE_ENABLED +//#define HAL_SDRAM_MODULE_ENABLED +//#define HAL_HASH_MODULE_ENABLED +//#define HAL_EXTI_MODULE_ENABLED +//#define HAL_SMBUS_MODULE_ENABLED +//#define HAL_I2S_MODULE_ENABLED +//#define HAL_LTDC_MODULE_ENABLED +//#define HAL_DSI_MODULE_ENABLED +//#define HAL_QSPI_MODULE_ENABLED +//#define HAL_RNG_MODULE_ENABLED +//#define HAL_SAI_MODULE_ENABLED +#define HAL_SD_MODULE_ENABLED +//#define HAL_UART_MODULE_ENABLED +//#define HAL_USART_MODULE_ENABLED +//#define HAL_IRDA_MODULE_ENABLED +//#define HAL_SMARTCARD_MODULE_ENABLED +//#define HAL_WWDG_MODULE_ENABLED +//#define HAL_HCD_MODULE_ENABLED +//#define HAL_FMPI2C_MODULE_ENABLED +//#define HAL_SPDIFRX_MODULE_ENABLED +//#define HAL_DFSDM_MODULE_ENABLED +//#define HAL_LPTIM_MODULE_ENABLED +//#define HAL_MMC_MODULE_ENABLED + +/* ########################## HSE/HSI Values adaptation ##################### */ +/** + * @brief Adjust the value of External High Speed oscillator (HSE) used in your application. + * This value is used by the RCC HAL module to compute the system frequency + * (when HSE is used as system clock source, directly or through the PLL). + */ +#ifndef HSE_VALUE +#define HSE_VALUE 8000000U /*!< Value of the External oscillator in Hz */ +#endif /* HSE_VALUE */ + +#ifndef HSE_STARTUP_TIMEOUT +#define HSE_STARTUP_TIMEOUT 100U /*!< Time out for HSE start up, in ms */ +#endif /* HSE_STARTUP_TIMEOUT */ + +/** + * @brief Internal High Speed oscillator (HSI) value. + * This value is used by the RCC HAL module to compute the system frequency + * (when HSI is used as system clock source, directly or through the PLL). + */ +#ifndef HSI_VALUE +#define HSI_VALUE 16000000U /*!< Value of the Internal oscillator in Hz */ +#endif /* HSI_VALUE */ + +/** + * @brief Internal Low Speed oscillator (LSI) value. + */ +#ifndef LSI_VALUE +#define LSI_VALUE 32000U /*!< LSI Typical Value in Hz */ +#endif /* LSI_VALUE */ /*!< Value of the Internal Low Speed oscillator in Hz +The real value may vary depending on the variations +in voltage and temperature. */ +/** + * @brief External Low Speed oscillator (LSE) value. + */ +#ifndef LSE_VALUE +#define LSE_VALUE 32768U /*!< Value of the External Low Speed oscillator in Hz */ +#endif /* LSE_VALUE */ + +#ifndef LSE_STARTUP_TIMEOUT +#define LSE_STARTUP_TIMEOUT 5000U /*!< Time out for LSE start up, in ms */ +#endif /* LSE_STARTUP_TIMEOUT */ + +/** + * @brief External clock source for I2S peripheral + * This value is used by the I2S HAL module to compute the I2S clock source + * frequency, this source is inserted directly through I2S_CKIN pad. + */ +#ifndef EXTERNAL_CLOCK_VALUE +#define EXTERNAL_CLOCK_VALUE 12288000U /*!< Value of the External oscillator in Hz*/ +#endif /* EXTERNAL_CLOCK_VALUE */ + +/* Tip: To avoid modifying this file each time you need to use different HSE, + === you can define the HSE value in your toolchain compiler preprocessor. */ + +/* ########################### System Configuration ######################### */ +/** + * @brief This is the HAL system configuration section + */ +#if !defined (VDD_VALUE) +#define VDD_VALUE 3300U /*!< Value of VDD in mv */ +#endif +#if !defined (TICK_INT_PRIORITY) +#define TICK_INT_PRIORITY 0x00U /*!< tick interrupt priority */ +#endif +#if !defined (USE_RTOS) +#define USE_RTOS 0U +#endif +#if !defined (PREFETCH_ENABLE) +#define PREFETCH_ENABLE 1U +#endif +#if !defined (INSTRUCTION_CACHE_ENABLE) +#define INSTRUCTION_CACHE_ENABLE 1U +#endif +#if !defined (DATA_CACHE_ENABLE) +#define DATA_CACHE_ENABLE 1U +#endif + +#define USE_HAL_ADC_REGISTER_CALLBACKS 0U /* ADC register callback disabled */ +#define USE_HAL_CAN_REGISTER_CALLBACKS 0U /* CAN register callback disabled */ +#define USE_HAL_CEC_REGISTER_CALLBACKS 0U /* CEC register callback disabled */ +#define USE_HAL_CRYP_REGISTER_CALLBACKS 0U /* CRYP register callback disabled */ +#define USE_HAL_DAC_REGISTER_CALLBACKS 0U /* DAC register callback disabled */ +#define USE_HAL_DCMI_REGISTER_CALLBACKS 0U /* DCMI register callback disabled */ +#define USE_HAL_DFSDM_REGISTER_CALLBACKS 0U /* DFSDM register callback disabled */ +#define USE_HAL_DMA2D_REGISTER_CALLBACKS 0U /* DMA2D register callback disabled */ +#define USE_HAL_DSI_REGISTER_CALLBACKS 0U /* DSI register callback disabled */ +#define USE_HAL_ETH_REGISTER_CALLBACKS 0U /* ETH register callback disabled */ +#define USE_HAL_HASH_REGISTER_CALLBACKS 0U /* HASH register callback disabled */ +#define USE_HAL_HCD_REGISTER_CALLBACKS 0U /* HCD register callback disabled */ +#define USE_HAL_I2C_REGISTER_CALLBACKS 0U /* I2C register callback disabled */ +#define USE_HAL_FMPI2C_REGISTER_CALLBACKS 0U /* FMPI2C register callback disabled */ +#define USE_HAL_I2S_REGISTER_CALLBACKS 0U /* I2S register callback disabled */ +#define USE_HAL_IRDA_REGISTER_CALLBACKS 0U /* IRDA register callback disabled */ +#define USE_HAL_LPTIM_REGISTER_CALLBACKS 0U /* LPTIM register callback disabled */ +#define USE_HAL_LTDC_REGISTER_CALLBACKS 0U /* LTDC register callback disabled */ +#define USE_HAL_MMC_REGISTER_CALLBACKS 0U /* MMC register callback disabled */ +#define USE_HAL_NAND_REGISTER_CALLBACKS 0U /* NAND register callback disabled */ +#define USE_HAL_NOR_REGISTER_CALLBACKS 0U /* NOR register callback disabled */ +#define USE_HAL_PCCARD_REGISTER_CALLBACKS 0U /* PCCARD register callback disabled */ +#define USE_HAL_PCD_REGISTER_CALLBACKS 0U /* PCD register callback disabled */ +#define USE_HAL_QSPI_REGISTER_CALLBACKS 0U /* QSPI register callback disabled */ +#define USE_HAL_RNG_REGISTER_CALLBACKS 0U /* RNG register callback disabled */ +#define USE_HAL_RTC_REGISTER_CALLBACKS 0U /* RTC register callback disabled */ +#define USE_HAL_SAI_REGISTER_CALLBACKS 0U /* SAI register callback disabled */ +#define USE_HAL_SD_REGISTER_CALLBACKS 0U /* SD register callback disabled */ +#define USE_HAL_SMARTCARD_REGISTER_CALLBACKS 0U /* SMARTCARD register callback disabled */ +#define USE_HAL_SDRAM_REGISTER_CALLBACKS 0U /* SDRAM register callback disabled */ +#define USE_HAL_SRAM_REGISTER_CALLBACKS 0U /* SRAM register callback disabled */ +#define USE_HAL_SPDIFRX_REGISTER_CALLBACKS 0U /* SPDIFRX register callback disabled */ +#define USE_HAL_SMBUS_REGISTER_CALLBACKS 0U /* SMBUS register callback disabled */ +#define USE_HAL_SPI_REGISTER_CALLBACKS 0U /* SPI register callback disabled */ +#define USE_HAL_TIM_REGISTER_CALLBACKS 0U /* TIM register callback disabled */ +#define USE_HAL_UART_REGISTER_CALLBACKS 0U /* UART register callback disabled */ +#define USE_HAL_USART_REGISTER_CALLBACKS 0U /* USART register callback disabled */ +#define USE_HAL_WWDG_REGISTER_CALLBACKS 0U /* WWDG register callback disabled */ + +/* ########################## Assert Selection ############################## */ +/** + * @brief Uncomment the line below to expanse the "assert_param" macro in the + * HAL drivers code + */ +/* #define USE_FULL_ASSERT 1U */ + +/* ################## Ethernet peripheral configuration ##################### */ + +/* Section 1 : Ethernet peripheral configuration */ + +/* MAC ADDRESS: MAC_ADDR0:MAC_ADDR1:MAC_ADDR2:MAC_ADDR3:MAC_ADDR4:MAC_ADDR5 */ +#define MAC_ADDR0 2U +#define MAC_ADDR1 0U +#define MAC_ADDR2 0U +#define MAC_ADDR3 0U +#define MAC_ADDR4 0U +#define MAC_ADDR5 0U + +/* Definition of the Ethernet driver buffers size and count */ +#define ETH_RX_BUF_SIZE ETH_MAX_PACKET_SIZE /* buffer size for receive */ +#define ETH_TX_BUF_SIZE ETH_MAX_PACKET_SIZE /* buffer size for transmit */ +#define ETH_RXBUFNB ((uint32_t)4U) /* 4 Rx buffers of size ETH_RX_BUF_SIZE */ +#define ETH_TXBUFNB ((uint32_t)4U) /* 4 Tx buffers of size ETH_TX_BUF_SIZE */ + +/* Section 2: PHY configuration section */ + +/* DP83848_PHY_ADDRESS Address*/ +#define DP83848_PHY_ADDRESS 0x01U +/* PHY Reset delay these values are based on a 1 ms Systick interrupt*/ +#define PHY_RESET_DELAY 0x000000FFU +/* PHY Configuration delay */ +#define PHY_CONFIG_DELAY 0x00000FFFU + +#define PHY_READ_TO 0x0000FFFFU +#define PHY_WRITE_TO 0x0000FFFFU + +/* Section 3: Common PHY Registers */ + +#define PHY_BCR ((uint16_t)0x0000) /*!< Transceiver Basic Control Register */ +#define PHY_BSR ((uint16_t)0x0001) /*!< Transceiver Basic Status Register */ + +#define PHY_RESET ((uint16_t)0x8000) /*!< PHY Reset */ +#define PHY_LOOPBACK ((uint16_t)0x4000) /*!< Select loop-back mode */ +#define PHY_FULLDUPLEX_100M ((uint16_t)0x2100) /*!< Set the full-duplex mode at 100 Mb/s */ +#define PHY_HALFDUPLEX_100M ((uint16_t)0x2000) /*!< Set the half-duplex mode at 100 Mb/s */ +#define PHY_FULLDUPLEX_10M ((uint16_t)0x0100) /*!< Set the full-duplex mode at 10 Mb/s */ +#define PHY_HALFDUPLEX_10M ((uint16_t)0x0000) /*!< Set the half-duplex mode at 10 Mb/s */ +#define PHY_AUTONEGOTIATION ((uint16_t)0x1000) /*!< Enable auto-negotiation function */ +#define PHY_RESTART_AUTONEGOTIATION ((uint16_t)0x0200) /*!< Restart auto-negotiation function */ +#define PHY_POWERDOWN ((uint16_t)0x0800) /*!< Select the power down mode */ +#define PHY_ISOLATE ((uint16_t)0x0400) /*!< Isolate PHY from MII */ + +#define PHY_AUTONEGO_COMPLETE ((uint16_t)0x0020) /*!< Auto-Negotiation process completed */ +#define PHY_LINKED_STATUS ((uint16_t)0x0004) /*!< Valid link established */ +#define PHY_JABBER_DETECTION ((uint16_t)0x0002) /*!< Jabber condition detected */ + +/* Section 4: Extended PHY Registers */ +#define PHY_SR ((uint16_t)0x10U) /*!< PHY status register Offset */ + +#define PHY_SPEED_STATUS ((uint16_t)0x0002U) /*!< PHY Speed mask */ +#define PHY_DUPLEX_STATUS ((uint16_t)0x0004U) /*!< PHY Duplex mask */ + +/* ################## SPI peripheral configuration ########################## */ + +/* CRC FEATURE: Use to activate CRC feature inside HAL SPI Driver + * Activated: CRC code is present inside driver + * Deactivated: CRC code cleaned from driver + */ +#ifndef USE_SPI_CRC +#define USE_SPI_CRC 0U +#endif + +/* Includes ------------------------------------------------------------------*/ +/** + * @brief Include module's header file + */ + +#ifdef HAL_RCC_MODULE_ENABLED +#include "stm32f4xx_hal_rcc.h" +#endif /* HAL_RCC_MODULE_ENABLED */ + +#ifdef HAL_GPIO_MODULE_ENABLED +#include "stm32f4xx_hal_gpio.h" +#endif /* HAL_GPIO_MODULE_ENABLED */ + +#ifdef HAL_EXTI_MODULE_ENABLED +#include "stm32f4xx_hal_exti.h" +#endif /* HAL_EXTI_MODULE_ENABLED */ + +#ifdef HAL_DMA_MODULE_ENABLED +#include "stm32f4xx_hal_dma.h" +#endif /* HAL_DMA_MODULE_ENABLED */ + +#ifdef HAL_CORTEX_MODULE_ENABLED +#include "stm32f4xx_hal_cortex.h" +#endif /* HAL_CORTEX_MODULE_ENABLED */ + +#ifdef HAL_ADC_MODULE_ENABLED +#include "stm32f4xx_hal_adc.h" +#endif /* HAL_ADC_MODULE_ENABLED */ + +#ifdef HAL_CAN_MODULE_ENABLED +#include "stm32f4xx_hal_can.h" +#endif /* HAL_CAN_MODULE_ENABLED */ + +#ifdef HAL_CAN_LEGACY_MODULE_ENABLED +#include "stm32f4xx_hal_can_legacy.h" +#endif /* HAL_CAN_LEGACY_MODULE_ENABLED */ + +#ifdef HAL_CRC_MODULE_ENABLED +#include "stm32f4xx_hal_crc.h" +#endif /* HAL_CRC_MODULE_ENABLED */ + +#ifdef HAL_CRYP_MODULE_ENABLED +#include "stm32f4xx_hal_cryp.h" +#endif /* HAL_CRYP_MODULE_ENABLED */ + +#ifdef HAL_DMA2D_MODULE_ENABLED +#include "stm32f4xx_hal_dma2d.h" +#endif /* HAL_DMA2D_MODULE_ENABLED */ + +#ifdef HAL_DAC_MODULE_ENABLED +#include "stm32f4xx_hal_dac.h" +#endif /* HAL_DAC_MODULE_ENABLED */ + +#ifdef HAL_DCMI_MODULE_ENABLED +#include "stm32f4xx_hal_dcmi.h" +#endif /* HAL_DCMI_MODULE_ENABLED */ + +#ifdef HAL_ETH_MODULE_ENABLED +#include "stm32f4xx_hal_eth.h" +#endif /* HAL_ETH_MODULE_ENABLED */ + +#ifdef HAL_FLASH_MODULE_ENABLED +#include "stm32f4xx_hal_flash.h" +#endif /* HAL_FLASH_MODULE_ENABLED */ + +#ifdef HAL_SRAM_MODULE_ENABLED +#include "stm32f4xx_hal_sram.h" +#endif /* HAL_SRAM_MODULE_ENABLED */ + +#ifdef HAL_NOR_MODULE_ENABLED +#include "stm32f4xx_hal_nor.h" +#endif /* HAL_NOR_MODULE_ENABLED */ + +#ifdef HAL_NAND_MODULE_ENABLED +#include "stm32f4xx_hal_nand.h" +#endif /* HAL_NAND_MODULE_ENABLED */ + +#ifdef HAL_PCCARD_MODULE_ENABLED +#include "stm32f4xx_hal_pccard.h" +#endif /* HAL_PCCARD_MODULE_ENABLED */ + +#ifdef HAL_SDRAM_MODULE_ENABLED +#include "stm32f4xx_hal_sdram.h" +#endif /* HAL_SDRAM_MODULE_ENABLED */ + +#ifdef HAL_HASH_MODULE_ENABLED +#include "stm32f4xx_hal_hash.h" +#endif /* HAL_HASH_MODULE_ENABLED */ + +#ifdef HAL_I2C_MODULE_ENABLED +#include "stm32f4xx_hal_i2c.h" +#endif /* HAL_I2C_MODULE_ENABLED */ + +#ifdef HAL_SMBUS_MODULE_ENABLED +#include "stm32f4xx_hal_smbus.h" +#endif /* HAL_SMBUS_MODULE_ENABLED */ + +#ifdef HAL_I2S_MODULE_ENABLED +#include "stm32f4xx_hal_i2s.h" +#endif /* HAL_I2S_MODULE_ENABLED */ + +#ifdef HAL_IWDG_MODULE_ENABLED +#include "stm32f4xx_hal_iwdg.h" +#endif /* HAL_IWDG_MODULE_ENABLED */ + +#ifdef HAL_LTDC_MODULE_ENABLED +#include "stm32f4xx_hal_ltdc.h" +#endif /* HAL_LTDC_MODULE_ENABLED */ + +#ifdef HAL_PWR_MODULE_ENABLED +#include "stm32f4xx_hal_pwr.h" +#endif /* HAL_PWR_MODULE_ENABLED */ + +#ifdef HAL_RNG_MODULE_ENABLED +#include "stm32f4xx_hal_rng.h" +#endif /* HAL_RNG_MODULE_ENABLED */ + +#ifdef HAL_RTC_MODULE_ENABLED +#include "stm32f4xx_hal_rtc.h" +#endif /* HAL_RTC_MODULE_ENABLED */ + +#ifdef HAL_SAI_MODULE_ENABLED +#include "stm32f4xx_hal_sai.h" +#endif /* HAL_SAI_MODULE_ENABLED */ + +#ifdef HAL_SD_MODULE_ENABLED +#include "stm32f4xx_hal_sd.h" +#endif /* HAL_SD_MODULE_ENABLED */ + +#ifdef HAL_SPI_MODULE_ENABLED +#include "stm32f4xx_hal_spi.h" +#endif /* HAL_SPI_MODULE_ENABLED */ + +#ifdef HAL_TIM_MODULE_ENABLED +#include "stm32f4xx_hal_tim.h" +#endif /* HAL_TIM_MODULE_ENABLED */ + +#ifdef HAL_UART_MODULE_ENABLED +#include "stm32f4xx_hal_uart.h" +#endif /* HAL_UART_MODULE_ENABLED */ + +#ifdef HAL_USART_MODULE_ENABLED +#include "stm32f4xx_hal_usart.h" +#endif /* HAL_USART_MODULE_ENABLED */ + +#ifdef HAL_IRDA_MODULE_ENABLED +#include "stm32f4xx_hal_irda.h" +#endif /* HAL_IRDA_MODULE_ENABLED */ + +#ifdef HAL_SMARTCARD_MODULE_ENABLED +#include "stm32f4xx_hal_smartcard.h" +#endif /* HAL_SMARTCARD_MODULE_ENABLED */ + +#ifdef HAL_WWDG_MODULE_ENABLED +#include "stm32f4xx_hal_wwdg.h" +#endif /* HAL_WWDG_MODULE_ENABLED */ + +#ifdef HAL_PCD_MODULE_ENABLED +#include "stm32f4xx_hal_pcd.h" +#endif /* HAL_PCD_MODULE_ENABLED */ + +#ifdef HAL_HCD_MODULE_ENABLED +#include "stm32f4xx_hal_hcd.h" +#endif /* HAL_HCD_MODULE_ENABLED */ + +#ifdef HAL_DSI_MODULE_ENABLED +#include "stm32f4xx_hal_dsi.h" +#endif /* HAL_DSI_MODULE_ENABLED */ + +#ifdef HAL_QSPI_MODULE_ENABLED +#include "stm32f4xx_hal_qspi.h" +#endif /* HAL_QSPI_MODULE_ENABLED */ + +#ifdef HAL_CEC_MODULE_ENABLED +#include "stm32f4xx_hal_cec.h" +#endif /* HAL_CEC_MODULE_ENABLED */ + +#ifdef HAL_FMPI2C_MODULE_ENABLED +#include "stm32f4xx_hal_fmpi2c.h" +#endif /* HAL_FMPI2C_MODULE_ENABLED */ + +#ifdef HAL_SPDIFRX_MODULE_ENABLED +#include "stm32f4xx_hal_spdifrx.h" +#endif /* HAL_SPDIFRX_MODULE_ENABLED */ + +#ifdef HAL_DFSDM_MODULE_ENABLED +#include "stm32f4xx_hal_dfsdm.h" +#endif /* HAL_DFSDM_MODULE_ENABLED */ + +#ifdef HAL_LPTIM_MODULE_ENABLED +#include "stm32f4xx_hal_lptim.h" +#endif /* HAL_LPTIM_MODULE_ENABLED */ + +#ifdef HAL_MMC_MODULE_ENABLED +#include "stm32f4xx_hal_mmc.h" +#endif /* HAL_MMC_MODULE_ENABLED */ + +/* Exported macro ------------------------------------------------------------*/ +#ifdef USE_FULL_ASSERT +/** + * @brief The assert_param macro is used for function's parameters check. + * @param expr If expr is false, it calls assert_failed function + * which reports the name of the source file and the source + * line number of the call that failed. + * If expr is true, it returns no value. + * @retval None + */ +#define assert_param(expr) ((expr) ? (void)0U : assert_failed((uint8_t *)__FILE__, __LINE__)) +/* Exported functions ------------------------------------------------------- */ +void assert_failed(uint8_t *file, uint32_t line); +#else +#define assert_param(expr) ((void)0U) +#endif /* USE_FULL_ASSERT */ + +#ifdef __cplusplus +} +#endif + +#endif /* __STM32F4xx_HAL_CONF_CUSTOM_H */ + + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/ldscript.ld b/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/ldscript.ld new file mode 100644 index 000000000000..881b72167ef1 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/ldscript.ld @@ -0,0 +1,186 @@ +/* +***************************************************************************** +** +** File : ldscript.ld +** +** Abstract : Linker script for STM32F401RETx Device with +** 512KByte FLASH, 96KByte RAM +** +** Set heap size, stack size and stack location according +** to application requirements. +** +** Set memory bank area and size if external memory is used. +** +** Target : STMicroelectronics STM32 +** +** +** Distribution: The file is distributed as is, without any warranty +** of any kind. +** +***************************************************************************** +** @attention +** +**

© COPYRIGHT(c) 2014 Ac6

+** +** Redistribution and use in source and binary forms, with or without modification, +** are permitted provided that the following conditions are met: +** 1. Redistributions of source code must retain the above copyright notice, +** this list of conditions and the following disclaimer. +** 2. 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. +** 3. Neither the name of Ac6 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 HOLDER 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. +** +***************************************************************************** +*/ + +/* Entry Point */ +ENTRY(Reset_Handler) + +/* Highest address of the user mode stack */ +_estack = 0x20010000; /* end of RAM */ + +/* Generate a link error if heap and stack don't fit into RAM */ +_Min_Heap_Size = 0x200; /* required amount of heap */ +_Min_Stack_Size = 0x400; /* required amount of stack */ + +/* Specify the memory areas */ +MEMORY +{ +FLASH (rx) : ORIGIN = 0x8000000 + LD_FLASH_OFFSET, LENGTH = LD_MAX_SIZE - LD_FLASH_OFFSET +RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 64K +} + +/* Define output sections */ +SECTIONS +{ + /* The startup code goes first into FLASH */ + .isr_vector : + { + . = ALIGN(4); + KEEP(*(.isr_vector)) /* Startup code */ + . = ALIGN(4); + } >FLASH + + /* The program code and other data goes into FLASH */ + .text ALIGN(4): + { + . = ALIGN(4); + *(.text) /* .text sections (code) */ + *(.text*) /* .text* sections (code) */ + *(.glue_7) /* glue arm to thumb code */ + *(.glue_7t) /* glue thumb to arm code */ + *(.eh_frame) + + KEEP (*(.init)) + KEEP (*(.fini)) + + . = ALIGN(4); + _etext = .; /* define a global symbols at end of code */ + } >FLASH + + /* Constant data goes into FLASH */ + .rodata : + { + . = ALIGN(4); + *(.rodata) /* .rodata sections (constants, strings, etc.) */ + *(.rodata*) /* .rodata* sections (constants, strings, etc.) */ + . = ALIGN(4); + } >FLASH + + .ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH + .ARM : { + __exidx_start = .; + *(.ARM.exidx*) + __exidx_end = .; + } >FLASH + + .preinit_array : + { + PROVIDE_HIDDEN (__preinit_array_start = .); + KEEP (*(.preinit_array*)) + PROVIDE_HIDDEN (__preinit_array_end = .); + } >FLASH + .init_array : + { + PROVIDE_HIDDEN (__init_array_start = .); + KEEP (*(SORT(.init_array.*))) + KEEP (*(.init_array*)) + PROVIDE_HIDDEN (__init_array_end = .); + } >FLASH + .fini_array : + { + PROVIDE_HIDDEN (__fini_array_start = .); + KEEP (*(SORT(.fini_array.*))) + KEEP (*(.fini_array*)) + PROVIDE_HIDDEN (__fini_array_end = .); + } >FLASH + + /* used by the startup to initialize data */ + _sidata = LOADADDR(.data); + + /* Initialized data sections goes into RAM, load LMA copy after code */ + .data : + { + . = ALIGN(4); + _sdata = .; /* create a global symbol at data start */ + *(.data) /* .data sections */ + *(.data*) /* .data* sections */ + + . = ALIGN(4); + _edata = .; /* define a global symbol at data end */ + } >RAM AT> FLASH + + + /* Uninitialized data section */ + . = ALIGN(4); + .bss : + { + /* This is used by the startup in order to initialize the .bss secion */ + _sbss = .; /* define a global symbol at bss start */ + __bss_start__ = _sbss; + *(.bss) + *(.bss*) + *(COMMON) + + . = ALIGN(4); + _ebss = .; /* define a global symbol at bss end */ + __bss_end__ = _ebss; + } >RAM + + /* User_heap_stack section, used to check that there is enough RAM left */ + ._user_heap_stack : + { + . = ALIGN(8); + PROVIDE ( end = . ); + PROVIDE ( _end = . ); + . = . + _Min_Heap_Size; + . = . + _Min_Stack_Size; + . = ALIGN(8); + } >RAM + + + + /* Remove information from the standard libraries */ + /DISCARD/ : + { + libc.a ( * ) + libm.a ( * ) + libgcc.a ( * ) + } + + .ARM.attributes 0 : { *(.ARM.attributes) } +} \ No newline at end of file diff --git a/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/variant.cpp b/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/variant.cpp new file mode 100644 index 000000000000..d603ad6ef1ab --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/variant.cpp @@ -0,0 +1,238 @@ +/* + Copyright (c) 2011 Arduino. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#include "pins_arduino.h" + +#ifdef __cplusplus +extern "C" { +#endif + +// Digital PinName array +const PinName digitalPin[] = { + PA_0, // Digital pin 0 + PA_1, // Digital pin 1 + PA_2, // Digital pin 2 + PA_3, // Digital pin 3 + PA_4, // Digital pin 4 + PA_5, // Digital pin 5 + PA_6, // Digital pin 6 + PA_7, // Digital pin 7 + PA_8, // Digital pin 8 + PA_9, // Digital pin 9 + PA_10, // Digital pin 10 + PA_11, // Digital pin 11 + PA_12, // Digital pin 12 + PA_13, // Digital pin 13 + PA_14, // Digital pin 14 + PA_15, // Digital pin 15 + + PB_0, // Digital pin 16 + PB_1, // Digital pin 17 + PB_2, // Digital pin 18 + PB_3, // Digital pin 19 + PB_4, // Digital pin 20 + PB_5, // Digital pin 21 + PB_6, // Digital pin 22 + PB_7, // Digital pin 23 + PB_8, // Digital pin 24 + PB_9, // Digital pin 25 + PB_10, // Digital pin 26 + PB_12, // Digital pin 27 + PB_13, // Digital pin 28 + PB_14, // Digital pin 29 + PB_15, // Digital pin 30 + + PC_0, // Digital pin 31 + PC_1, // Digital pin 32 + PC_2, // Digital pin 33 + PC_3, // Digital pin 34 + PC_4, // Digital pin 35 + PC_5, // Digital pin 36 + PC_6, // Digital pin 37 + PC_7, // Digital pin 38 + PC_8, // Digital pin 39 + PC_9, // Digital pin 40 + PC_10, // Digital pin 41 + PC_11, // Digital pin 42 + PC_12, // Digital pin 43 + PC_13, // Digital pin 44 + PC_14, // Digital pin 45 + PC_15, // Digital pin 46 + + PD_2, // Digital pin 47 + + PH_0, // Digital pin 48, used by the external oscillator + PH_1 // Digital pin 49, used by the external oscillator +}; + +// Analog (Ax) pin number array +const uint32_t analogInputPin[] = { + 0, // A0, PA0 + 1, // A1, PA1 + 2, // A2, PA2 + 3, // A3, PA3 + 4, // A4, PA4 + 5, // A5, PA5 + 6, // A6, PA6 + 7, // A7, PA7 + 16, // A8, PB0 + 17, // A9, PB1 + 31, // A10, PC0 + 32, // A11, PC1 + 33, // A12, PC2 + 34, // A13, PC3 + 35, // A14, PC4 + 36 // A15, PC5 +}; + +#ifdef __cplusplus +} +#endif + +// ---------------------------------------------------------------------------- + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * @brief Configures the System clock source, PLL Multiplier and Divider factors, + * AHB/APBx prescalers and Flash settings + * @note This function should be called only once the RCC clock configuration + * is reset to the default reset state (done in SystemInit() function). + * @param None + * @retval None + */ + +/******************************************************************************/ +/* PLL (clocked by HSE) used as System clock source */ +/******************************************************************************/ +static uint8_t SetSysClock_PLL_HSE(uint8_t bypass) +{ + RCC_OscInitTypeDef RCC_OscInitStruct; + RCC_ClkInitTypeDef RCC_ClkInitStruct; + + /* The voltage scaling allows optimizing the power consumption when the device is + clocked below the maximum system frequency, to update the voltage scaling value + regarding system frequency refer to product datasheet. */ + __HAL_RCC_PWR_CLK_ENABLE(); + __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE2); + + // Enable HSE oscillator and activate PLL with HSE as source + RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; + if (bypass == 0) { + RCC_OscInitStruct.HSEState = RCC_HSE_ON; // External 8 MHz xtal on OSC_IN/OSC_OUT + } else { + RCC_OscInitStruct.HSEState = RCC_HSE_BYPASS; // External 8 MHz clock on OSC_IN + } + + RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; + RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; + RCC_OscInitStruct.PLL.PLLM = HSE_VALUE / 1000000L; // Expects an 8 MHz external clock by default. Redefine HSE_VALUE if not + RCC_OscInitStruct.PLL.PLLN = 336; // VCO output clock = 336 MHz (1 MHz * 336) + RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV4; // PLLCLK = 84 MHz (336 MHz / 4) + RCC_OscInitStruct.PLL.PLLQ = 7; // USB clock = 48 MHz (336 MHz / 7) --> OK for USB + if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) { + return 0; // FAIL + } + + // Select PLL as system clock source and configure the HCLK, PCLK1 and PCLK2 clocks dividers + RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2; + RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; // 84 MHz + RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; // 84 MHz + RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2; // 42 MHz + RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; // 84 MHz + if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK) { + return 0; // FAIL + } + + /* Output clock on MCO1 pin(PA8) for debugging purpose */ + /* + if (bypass == 0) + HAL_RCC_MCOConfig(RCC_MCO1, RCC_MCO1SOURCE_HSE, RCC_MCODIV_2); // 4 MHz + else + HAL_RCC_MCOConfig(RCC_MCO1, RCC_MCO1SOURCE_HSE, RCC_MCODIV_1); // 8 MHz + */ + + return 1; // OK +} + +/******************************************************************************/ +/* PLL (clocked by HSI) used as System clock source */ +/******************************************************************************/ +uint8_t SetSysClock_PLL_HSI(void) +{ + RCC_OscInitTypeDef RCC_OscInitStruct; + RCC_ClkInitTypeDef RCC_ClkInitStruct; + + /* The voltage scaling allows optimizing the power consumption when the device is + clocked below the maximum system frequency, to update the voltage scaling value + regarding system frequency refer to product datasheet. */ + __HAL_RCC_PWR_CLK_ENABLE(); + __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE2); + + // Enable HSI oscillator and activate PLL with HSI as source + RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI | RCC_OSCILLATORTYPE_HSE; + RCC_OscInitStruct.HSIState = RCC_HSI_ON; + RCC_OscInitStruct.HSEState = RCC_HSE_OFF; + RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT; + RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; + RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI; + RCC_OscInitStruct.PLL.PLLM = 16; // VCO input clock = 1 MHz (16 MHz / 16) + RCC_OscInitStruct.PLL.PLLN = 336; // VCO output clock = 336 MHz (1 MHz * 336) + RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV4; // PLLCLK = 84 MHz (336 MHz / 4) + RCC_OscInitStruct.PLL.PLLQ = 7; // USB clock = 48 MHz (336 MHz / 7) --> freq is ok but not precise enough + if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) { + return 0; // FAIL + } + + /* Select PLL as system clock source and configure the HCLK, PCLK1 and PCLK2 clocks dividers */ + RCC_ClkInitStruct.ClockType = (RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2); + RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; // 84 MHz + RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; // 84 MHz + RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2; // 42 MHz + RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; // 84 MHz + if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK) { + return 0; // FAIL + } + + /* Output clock on MCO1 pin(PA8) for debugging purpose */ + //HAL_RCC_MCOConfig(RCC_MCO1, RCC_MCO1SOURCE_HSI, RCC_MCODIV_1); // 16 MHz + + return 1; // OK +} + +WEAK void SystemClock_Config(void) +{ + /* 1- If fail try to start with HSE and external xtal */ + if (SetSysClock_PLL_HSE(0) == 0) { + /* 2- Try to start with HSE and external clock */ + if (SetSysClock_PLL_HSE(1) == 0) { + /* 3- If fail start with HSI clock */ + if (SetSysClock_PLL_HSI() == 0) { + Error_Handler(); + } + } + } + /* Output clock on MCO2 pin(PC9) for debugging purpose */ + //HAL_RCC_MCOConfig(RCC_MCO2, RCC_MCO2SOURCE_SYSCLK, RCC_MCODIV_4); +} + +#ifdef __cplusplus +} +#endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/variant.h new file mode 100644 index 000000000000..591571bf2c89 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_CREALITY_STM32F401RE/variant.h @@ -0,0 +1,151 @@ +/* + Copyright (c) 2011 Arduino. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef _VARIANT_ARDUINO_STM32_ +#define _VARIANT_ARDUINO_STM32_ + +#ifdef __cplusplus +extern "C" { +#endif // __cplusplus + + +// | DIGITAL | ANALOG | USART | TWI | SPI | SPECIAL | +// |---------|--------|-----------|----------|------------------------|-----------| +#define PA0 0 // | 0 | A0 | | | | | +#define PA1 1 // | 1 | A1 | | | | | +#define PA2 2 // | 2 | A2 | USART2_TX | | | | +#define PA3 3 // | 3 | A3 | USART2_RX | | | | +#define PA4 4 // | 4 | A4 | | | SPI1_SS, (SPI3_SS) | | +#define PA5 5 // | 5 | A5 | | | SPI1_SCK | | +#define PA6 6 // | 6 | A6 | | | SPI1_MISO | | +#define PA7 7 // | 7 | A7 | | | SPI1_MOSI | | +#define PA8 8 // | 8 | | | TWI3_SCL | | | +#define PA9 9 // | 9 | | USART1_TX | | | | +#define PA10 10 // | 10 | | USART1_RX | | | | +#define PA11 11 // | 11 | | USART6_TX | | | | +#define PA12 12 // | 12 | | USART6_RX | | | | +#define PA13 13 // | 13 | | | | | SWD_SWDIO | +#define PA14 14 // | 14 | | | | | SWD_SWCLK | +#define PA15 15 // | 15 | | | | SPI3_SS, (SPI1_SS) | | +// |---------|--------|-----------|----------|------------------------|-----------| +#define PB0 16 // | 16 | A8 | | | | | +#define PB1 17 // | 17 | A9 | | | | | +#define PB2 18 // | 18 | | | | | BOOT1 | +#define PB3 19 // | 19 | | | TWI2_SDA | SPI3_SCK, (SPI1_SCK) | | +#define PB4 20 // | 20 | | | TWI3_SDA | SPI3_MISO, (SPI1_MISO) | | +#define PB5 21 // | 21 | | | | SPI3_MOSI, (SPI1_MOSI) | | +#define PB6 22 // | 22 | | USART1_TX | TWI1_SCL | | | +#define PB7 23 // | 23 | | USART1_RX | TWI1_SDA | | | +#define PB8 24 // | 24 | | | TWI1_SCL | | | +#define PB9 25 // | 25 | | | TWI1_SDA | SPI2_SS | | +#define PB10 26 // | 26 | | | TWI2_SCL | SPI2_SCK | | +#define PB12 27 // | 27 | | | | SPI2_SS | | +#define PB13 28 // | 28 | | | | SPI2_SCK | | +#define PB14 29 // | 29 | | | | SPI2_MISO | | +#define PB15 30 // | 30 | | | | SPI2_MOSI | | +// |---------|--------|-----------|----------|------------------------|-----------| +#define PC0 31 // | 31 | A10 | | | | | +#define PC1 32 // | 32 | A11 | | | | | +#define PC2 33 // | 33 | A12 | | | SPI2_MISO | | +#define PC3 34 // | 34 | A13 | | | SPI2_MOSI | | +#define PC4 35 // | 35 | A14 | | | | | +#define PC5 36 // | 36 | A15 | | | | | +#define PC6 37 // | 37 | | USART6_TX | | | | +#define PC7 38 // | 38 | | USART6_RX | | | | +#define PC8 39 // | 39 | | | | | | +#define PC9 40 // | 40 | | | TWI3_SDA | | | +#define PC10 41 // | 41 | | | | SPI3_SCK | | +#define PC11 42 // | 42 | | | | SPI3_MISO | | +#define PC12 43 // | 43 | | | | SPI3_MOSI | | +#define PC13 44 // | 44 | | | | | | +#define PC14 45 // | 45 | | | | | OSC32_IN | +#define PC15 46 // | 46 | | | | | OSC32_OUT | +// |---------|--------|-----------|----------|------------------------|-----------| +#define PD2 47 // | 47 | | | | | | +// |---------|--------|-----------|----------|------------------------|-----------| +#define PH0 48 // | 48 | | | | | OSC_IN | +#define PH1 49 // | 49 | | | | | OSC_OUT | +// |---------|--------|-----------|----------|------------------------|-----------| + +// This must be a literal +#define NUM_DIGITAL_PINS 50 +#define NUM_ANALOG_INPUTS 16 + +// SPI definitions +#define PIN_SPI_SS PA4 +#define PIN_SPI_SS1 PA4 +#define PIN_SPI_MOSI PA7 +#define PIN_SPI_MISO PA6 +#define PIN_SPI_SCK PA5 + + +// Timer Definitions +#define TIMER_TONE TIM2 +#define TIMER_SERVO TIM11 +#define TIMER_SERIAL TIM5 + +// UART Definitions +//#define ENABLE_HWSERIAL1 done automatically by the #define SERIAL_UART_INSTANCE below +#define ENABLE_HWSERIAL2 + + +// Define here Serial instance number to map on Serial generic name (if not already used by SerialUSB) +#define SERIAL_UART_INSTANCE 1 //1 for Serial = Serial1 (USART1) + +// Default pin used for 'Serial' instance +// Mandatory for Firmata +#define PIN_SERIAL_RX PA10 +#define PIN_SERIAL_TX PA9 + +// Used when user instanciate a hardware Serial using its peripheral name. +// Example: HardwareSerial mySerial(USART3); +// will use PIN_SERIAL3_RX and PIN_SERIAL3_TX if defined. +#define PIN_SERIAL1_RX PA10 +#define PIN_SERIAL1_TX PA9 +#define PIN_SERIAL2_RX PA3 +#define PIN_SERIAL2_TX PA2 + +#ifdef __cplusplus +} // extern "C" +#endif +/*---------------------------------------------------------------------------- + * Arduino objects - C++ only + *----------------------------------------------------------------------------*/ + +#ifdef __cplusplus + // These serial port names are intended to allow libraries and architecture-neutral + // sketches to automatically default to the correct port name for a particular type + // of use. For example, a GPS module would normally connect to SERIAL_PORT_HARDWARE_OPEN, + // the first hardware serial port whose RX/TX pins are not dedicated to another use. + // + // SERIAL_PORT_MONITOR Port which normally prints to the Arduino Serial Monitor + // + // SERIAL_PORT_USBVIRTUAL Port which is USB virtual serial + // + // SERIAL_PORT_LINUXBRIDGE Port which connects to a Linux system via Bridge library + // + // SERIAL_PORT_HARDWARE Hardware serial port, physical RX & TX pins. + // + // SERIAL_PORT_HARDWARE_OPEN Hardware serial ports which are open for use. Their RX & TX + // pins are NOT connected to anything by default. + #define SERIAL_PORT_MONITOR Serial + #define SERIAL_PORT_HARDWARE Serial1 + #define SERIAL_PORT_HARDWARE_OPEN Serial2 +#endif + +#endif /* _VARIANT_ARDUINO_STM32_ */ diff --git a/ini/features.ini b/ini/features.ini index 638f3109fcb4..c8a3cf2908a2 100644 --- a/ini/features.ini +++ b/ini/features.ini @@ -206,6 +206,7 @@ CONTROLLER_FAN_EDITABLE = src_filter=+ GCODE_MACROS = src_filter=+ GRADIENT_MIX = src_filter=+ +OTA_FIRMWARE_UPDATE = src_filter=+ HAS_SAVED_POSITIONS = src_filter=+ + PARK_HEAD_ON_PAUSE = src_filter=+ FILAMENT_LOAD_UNLOAD_GCODES = src_filter=+ diff --git a/ini/stm32f4.ini b/ini/stm32f4.ini index 7060f95db7a5..f30b5e539d24 100644 --- a/ini/stm32f4.ini +++ b/ini/stm32f4.ini @@ -680,14 +680,38 @@ extra_scripts = ${stm32_variant.extra_scripts} monitor_speed = 115200 [env:STM32F401RC_creality_jlink] -extends = env:STM32F401RC_creality -debug_tool = jlink -upload_protocol = jlink +extends = env:STM32F401RC_creality +debug_tool = jlink +upload_protocol = jlink [env:STM32F401RC_creality_stlink] -extends = env:STM32F401RC_creality -debug_tool = stlink -upload_protocol = stlink +extends = env:STM32F401RC_creality +debug_tool = stlink +upload_protocol = stlink + +# +# Ender-5 S1 STM32F401RE_creality (CR4NS200141C13 with STM32F401RET6) +# +[env:STM32F401RE_creality] +extends = stm32_variant +board = marlin_CREALITY_STM32F401RE +board_build.offset = 0x10000 +board_upload.offset_address = 0x08010000 +build_flags = ${stm32_variant.build_flags} -DSTM32F401xE -DSTM32F4 -DSTM32F4_UPDATE_FOLDER +build_unflags = ${stm32_variant.build_unflags} -DUSBCON -DUSBD_USE_CDC +extra_scripts = ${stm32_variant.extra_scripts} + pre:buildroot/share/PlatformIO/scripts/random-bin.py +monitor_speed = 115200 + +[env:STM32F401RE_creality_jlink] +extends = env:STM32F401RE_creality +debug_tool = jlink +upload_protocol = jlink + +[env:STM32F401RE_creality_stlink] +extends = env:STM32F401RC_creality +debug_tool = stlink +upload_protocol = stlink # # BigTree SKR mini E3 V3.0.1 (STM32F401RCT6 ARM Cortex-M4) From dbed3f1c418e1f6edc4d74f5e29659245f6841b0 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Wed, 3 May 2023 00:20:18 +0000 Subject: [PATCH 110/427] [cron] Bump distribution date (2023-05-03) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 6a3684ba4af7..887eee8e76d8 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-02" +//#define STRING_DISTRIBUTION_DATE "2023-05-03" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 92833991824c..c2f46ff4ffce 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-02" + #define STRING_DISTRIBUTION_DATE "2023-05-03" #endif /** From 7642bfbf8b997308e691034aa294a061c5fc5426 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Wed, 3 May 2023 14:19:32 -0700 Subject: [PATCH 111/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20TFT=20Touch=20Cali?= =?UTF-8?q?bration=20overrides=20(#25579)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit …and other misc. display-related updates Co-authored-by: Scott Lahteine --- Marlin/src/HAL/STM32/tft/tft_spi.cpp | 1 - Marlin/src/HAL/STM32F1/tft/tft_spi.cpp | 15 +++--- Marlin/src/inc/Conditionals_LCD.h | 41 ++++++--------- Marlin/src/inc/Conditionals_post.h | 21 +++++++- .../dogm/u8g_dev_tft_upscale_from_128x64.cpp | 2 +- .../src/lcd/extui/mks_ui/draw_print_file.cpp | 50 +++++-------------- Marlin/src/lcd/extui/mks_ui/draw_ui.h | 32 ++++++------ .../extui/mks_ui/tft_lvgl_configuration.cpp | 3 +- .../lcd/extui/mks_ui/tft_lvgl_configuration.h | 2 - Marlin/src/lcd/extui/mks_ui/wifi_module.cpp | 1 + Marlin/src/lcd/tft/touch.cpp | 7 ++- Marlin/src/lcd/tft_io/ili9488.h | 10 ---- Marlin/src/lcd/tft_io/tft_io.h | 2 - Marlin/src/lcd/tft_io/tft_orientation.h | 16 ------ Marlin/src/lcd/tft_io/touch_calibration.h | 4 +- Marlin/src/lcd/touch/touch_buttons.cpp | 2 +- Marlin/src/pins/linux/pins_RAMPS_LINUX.h | 2 +- 17 files changed, 80 insertions(+), 131 deletions(-) diff --git a/Marlin/src/HAL/STM32/tft/tft_spi.cpp b/Marlin/src/HAL/STM32/tft/tft_spi.cpp index 6ee4dc3364ee..dbb93c786b4e 100644 --- a/Marlin/src/HAL/STM32/tft/tft_spi.cpp +++ b/Marlin/src/HAL/STM32/tft/tft_spi.cpp @@ -245,7 +245,6 @@ void TFT_SPI::TransmitDMA(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Coun TERN_(TFT_SHARED_IO, while (isBusy())); } - void TFT_SPI::Transmit(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count) { DMAtx.Init.MemInc = MemoryIncrease; HAL_DMA_Init(&DMAtx); diff --git a/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp b/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp index eed52f4e8a38..5264aabef662 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp +++ b/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp @@ -94,25 +94,24 @@ uint32_t TFT_SPI::GetID() { } uint32_t TFT_SPI::ReadID(uint16_t Reg) { - #if !PIN_EXISTS(TFT_MISO) - return 0; - #else - uint8_t d = 0; - uint32_t data = 0; + uint32_t data = 0; + + #if PIN_EXISTS(TFT_MISO) SPIx.setClockDivider(SPI_CLOCK_DIV16); DataTransferBegin(DATASIZE_8BIT); WriteReg(Reg); LOOP_L_N(i, 4) { - SPIx.read((uint8_t*)&d, 1); + uint8_t d; + SPIx.read(&d, 1); data = (data << 8) | d; } DataTransferEnd(); SPIx.setClockDivider(SPI_CLOCK_MAX); - - return data >> 7; #endif + + return data >> 7; } bool TFT_SPI::isBusy() { diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index c28a49c8dfad..44072ef4a2a9 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -328,24 +328,22 @@ #define IS_ULTIPANEL 1 #endif -// TFT Legacy Compatibility +// TFT Legacy options masquerade as TFT_GENERIC #if ANY(FSMC_GRAPHICAL_TFT, SPI_GRAPHICAL_TFT, TFT_320x240, TFT_480x320, TFT_320x240_SPI, TFT_480x320_SPI, TFT_LVGL_UI_FSMC, TFT_LVGL_UI_SPI) #define IS_LEGACY_TFT 1 #define TFT_GENERIC -#endif - -#if ANY(FSMC_GRAPHICAL_TFT, TFT_320x240, TFT_480x320, TFT_LVGL_UI_FSMC) - #define TFT_INTERFACE_FSMC -#elif ANY(SPI_GRAPHICAL_TFT, TFT_320x240_SPI, TFT_480x320_SPI, TFT_LVGL_UI_SPI) - #define TFT_INTERFACE_SPI -#endif - -#if EITHER(FSMC_GRAPHICAL_TFT, SPI_GRAPHICAL_TFT) - #define TFT_CLASSIC_UI -#elif ANY(TFT_320x240, TFT_480x320, TFT_320x240_SPI, TFT_480x320_SPI) - #define TFT_COLOR_UI -#elif EITHER(TFT_LVGL_UI_FSMC, TFT_LVGL_UI_SPI) - #define TFT_LVGL_UI + #if ANY(FSMC_GRAPHICAL_TFT, TFT_320x240, TFT_480x320, TFT_LVGL_UI_FSMC) + #define TFT_INTERFACE_FSMC + #elif ANY(SPI_GRAPHICAL_TFT, TFT_320x240_SPI, TFT_480x320_SPI, TFT_LVGL_UI_SPI) + #define TFT_INTERFACE_SPI + #endif + #if EITHER(FSMC_GRAPHICAL_TFT, SPI_GRAPHICAL_TFT) + #define TFT_CLASSIC_UI + #elif ANY(TFT_320x240, TFT_480x320, TFT_320x240_SPI, TFT_480x320_SPI) + #define TFT_COLOR_UI + #elif EITHER(TFT_LVGL_UI_FSMC, TFT_LVGL_UI_SPI) + #define TFT_LVGL_UI + #endif #endif // FSMC/SPI TFT Panels (LVGL) @@ -1671,7 +1669,7 @@ #endif #if ANY(HAS_SPI_TFT, HAS_FSMC_TFT, HAS_LTDC_TFT) - #include "../lcd/tft_io/tft_orientation.h" + #include "../lcd/tft_io/tft_orientation.h" // for TFT_COLOR_UI_PORTRAIT #endif #if ENABLED(TFT_RES_320x240) @@ -1775,17 +1773,6 @@ #endif #endif -// XPT2046_** Compatibility -#if !(defined(TOUCH_CALIBRATION_X) || defined(TOUCH_CALIBRATION_Y) || defined(TOUCH_OFFSET_X) || defined(TOUCH_OFFSET_Y) || defined(TOUCH_ORIENTATION)) - #if defined(XPT2046_X_CALIBRATION) && defined(XPT2046_Y_CALIBRATION) && defined(XPT2046_X_OFFSET) && defined(XPT2046_Y_OFFSET) - #define TOUCH_CALIBRATION_X XPT2046_X_CALIBRATION - #define TOUCH_CALIBRATION_Y XPT2046_Y_CALIBRATION - #define TOUCH_OFFSET_X XPT2046_X_OFFSET - #define TOUCH_OFFSET_Y XPT2046_Y_OFFSET - #define TOUCH_ORIENTATION TOUCH_LANDSCAPE - #endif -#endif - #if X_HOME_DIR || (HAS_Y_AXIS && Y_HOME_DIR) || (HAS_Z_AXIS && Z_HOME_DIR) \ || (HAS_I_AXIS && I_HOME_DIR) || (HAS_J_AXIS && J_HOME_DIR) || (HAS_K_AXIS && K_HOME_DIR) \ || (HAS_U_AXIS && U_HOME_DIR) || (HAS_V_AXIS && V_HOME_DIR) || (HAS_W_AXIS && W_HOME_DIR) diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 0d7464900994..7319905ee636 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -560,7 +560,7 @@ #define REINIT_NOISY_LCD 1 // Have the LCD re-init on SD insertion #endif -#endif +#endif // HAS_MEDIA /** * Power Supply @@ -3153,6 +3153,25 @@ #endif #endif +// Touch Calibration +#if ANY(HAS_SPI_TFT, HAS_FSMC_TFT, HAS_LTDC_TFT) + #ifndef TOUCH_CALIBRATION_X + #define TOUCH_CALIBRATION_X 0 + #endif + #ifndef TOUCH_CALIBRATION_Y + #define TOUCH_CALIBRATION_Y 0 + #endif + #ifndef TOUCH_OFFSET_X + #define TOUCH_OFFSET_X 0 + #endif + #ifndef TOUCH_OFFSET_Y + #define TOUCH_OFFSET_Y 0 + #endif + #ifndef TOUCH_ORIENTATION + #define TOUCH_ORIENTATION TOUCH_LANDSCAPE + #endif +#endif + // Number of VFAT entries used. Each entry has 13 UTF-16 characters #if ANY(SCROLL_LONG_FILENAMES, HAS_DWIN_E3V2, TFT_COLOR_UI) #define VFAT_ENTRIES_LIMIT 5 diff --git a/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp b/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp index efc010ca8960..e51767f96a90 100644 --- a/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp +++ b/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp @@ -556,4 +556,4 @@ U8G_PB_DEV(u8g_dev_tft_320x240_upscale_from_128x64, WIDTH, HEIGHT, PAGE_HEIGHT, #endif // TOUCH_SCREEN_CALIBRATION -#endif // HAS_MARLINUI_U8GLIB && (FSMC_CS_PIN || HAS_SPI_GRAPHICAL_TFT) +#endif // HAS_MARLINUI_U8GLIB && (FSMC_CS_PIN || HAS_SPI_GRAPHICAL_TFT || HAS_LTDC_GRAPHICAL_TFT) diff --git a/Marlin/src/lcd/extui/mks_ui/draw_print_file.cpp b/Marlin/src/lcd/extui/mks_ui/draw_print_file.cpp index 4997641e154b..da79cb617495 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_print_file.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_print_file.cpp @@ -120,8 +120,6 @@ bool have_pre_pic(char *path) { static void event_handler(lv_obj_t *obj, lv_event_t event) { if (event != LV_EVENT_RELEASED) return; uint8_t i, file_count = 0; - //switch (obj->mks_obj_id) - //{ if (obj->mks_obj_id == ID_P_UP) { if (dir_offset[curDirLever].curPage > 0) { // 2015.05.19 @@ -130,9 +128,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { if (dir_offset[curDirLever].cur_page_first_offset >= FILE_NUM) list_file.Sd_file_offset = dir_offset[curDirLever].cur_page_first_offset - FILE_NUM; - #if HAS_MEDIA - file_count = search_file(); - #endif + TERN_(HAS_MEDIA, file_count = search_file()); if (file_count != 0) { dir_offset[curDirLever].curPage--; lv_clear_print_file(); @@ -144,9 +140,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { if (dir_offset[curDirLever].cur_page_last_offset > 0) { list_file.Sd_file_cnt = 0; list_file.Sd_file_offset = dir_offset[curDirLever].cur_page_last_offset + 1; - #if HAS_MEDIA - file_count = search_file(); - #endif + TERN_(HAS_MEDIA, file_count = search_file()); if (file_count != 0) { dir_offset[curDirLever].curPage++; lv_clear_print_file(); @@ -161,17 +155,13 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { int8_t *ch = (int8_t *)strrchr(list_file.curDirPath, '/'); if (ch) { *ch = 0; - #if HAS_MEDIA - card.cdup(); - #endif + TERN_(HAS_MEDIA, card.cdup()); dir_offset[curDirLever].curPage = 0; dir_offset[curDirLever].cur_page_first_offset = 0; dir_offset[curDirLever].cur_page_last_offset = 0; curDirLever--; list_file.Sd_file_offset = dir_offset[curDirLever].cur_page_first_offset; - #if HAS_MEDIA - file_count = search_file(); - #endif + TERN_(HAS_MEDIA, file_count = search_file()); lv_clear_print_file(); disp_gcode_icon(file_count); } @@ -189,9 +179,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) { strcpy(list_file.curDirPath, list_file.file_name[i]); curDirLever++; list_file.Sd_file_offset = dir_offset[curDirLever].cur_page_first_offset; - #if HAS_MEDIA - file_count = search_file(); - #endif + TERN_(HAS_MEDIA, file_count = search_file()); lv_clear_print_file(); disp_gcode_icon(file_count); } @@ -396,8 +384,7 @@ int ascii2dec_test(char *ascii) { void lv_gcode_file_read(uint8_t *data_buf) { #if HAS_MEDIA - uint16_t i = 0, j = 0, k = 0; - uint16_t row_1 = 0; + uint16_t i = 0, j = 0, k = 0, row_1 = 0; bool ignore_start = true; char temp_test[200]; volatile uint16_t *p_index; @@ -435,24 +422,13 @@ void lv_gcode_file_read(uint8_t *data_buf) { break; } } - #if HAS_TFT_LVGL_UI_SPI - for (i = 0; i < 200;) { - p_index = (uint16_t *)(&public_buf[i]); - - //Color = (*p_index >> 8); - //*p_index = Color | ((*p_index & 0xFF) << 8); - i += 2; - if (*p_index == 0x0000) *p_index = LV_COLOR_BACKGROUND.full; - } - #else // !HAS_TFT_LVGL_UI_SPI - for (i = 0; i < 200;) { - p_index = (uint16_t *)(&public_buf[i]); - //Color = (*p_index >> 8); - //*p_index = Color | ((*p_index & 0xFF) << 8); - i += 2; - if (*p_index == 0x0000) *p_index = LV_COLOR_BACKGROUND.full; // 0x18C3; - } - #endif // !HAS_TFT_LVGL_UI_SPI + for (i = 0; i < 200;) { + p_index = (uint16_t *)(&public_buf[i]); + //Color = (*p_index >> 8); + //*p_index = Color | ((*p_index & 0xFF) << 8); + i += 2; + if (*p_index == 0x0000) *p_index = LV_COLOR_BACKGROUND.full; + } memcpy(data_buf, public_buf, 200); #endif // HAS_MEDIA } diff --git a/Marlin/src/lcd/extui/mks_ui/draw_ui.h b/Marlin/src/lcd/extui/mks_ui/draw_ui.h index 9bc583d3ad32..da43f2a49098 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_ui.h +++ b/Marlin/src/lcd/extui/mks_ui/draw_ui.h @@ -133,16 +133,16 @@ #define FILE_PRE_PIC_Y_OFFSET 0 #define PREVIEW_LITTLE_PIC_SIZE 40910 // 400*100+9*101+1 - #define PREVIEW_SIZE 202720 // (PREVIEW_LITTLE_PIC_SIZE+800*200+201*9+1) + #define PREVIEW_SIZE 202720 // (PREVIEW_LITTLE_PIC_SIZE+800*200+201*9+1) // machine parameter ui - #define PARA_UI_POS_X 10 - #define PARA_UI_POS_Y 50 + #define PARA_UI_POS_X 10 + #define PARA_UI_POS_Y 50 #define PARA_UI_SIZE_X 450 - #define PARA_UI_SIZE_Y 40 + #define PARA_UI_SIZE_Y 40 - #define PARA_UI_ARROW_V 12 + #define PARA_UI_ARROW_V 12 #define PARA_UI_BACK_POS_X 400 #define PARA_UI_BACK_POS_Y 270 @@ -152,31 +152,31 @@ #define PARA_UI_VALUE_SIZE_X 370 #define PARA_UI_VALUE_POS_X 400 - #define PARA_UI_VALUE_V 5 + #define PARA_UI_VALUE_V 5 #define PARA_UI_STATE_POS_X 380 - #define PARA_UI_STATE_V 2 + #define PARA_UI_STATE_V 2 #define PARA_UI_VALUE_SIZE_X_2 200 #define PARA_UI_VALUE_POS_X_2 320 - #define PARA_UI_VALUE_V_2 5 + #define PARA_UI_VALUE_V_2 5 - #define PARA_UI_VALUE_BTN_X_SIZE 70 - #define PARA_UI_VALUE_BTN_Y_SIZE 28 + #define PARA_UI_VALUE_BTN_X_SIZE 70 + #define PARA_UI_VALUE_BTN_Y_SIZE 28 - #define PARA_UI_BACK_BTN_X_SIZE 70 - #define PARA_UI_BACK_BTN_Y_SIZE 40 + #define PARA_UI_BACK_BTN_X_SIZE 70 + #define PARA_UI_BACK_BTN_Y_SIZE 40 - #define QRCODE_X 20 - #define QRCODE_Y 40 + #define QRCODE_X 20 + #define QRCODE_Y 40 #define QRCODE_WIDTH 160 -#else // ifdef TFT35 +#else // !TFT35 #define TFT_WIDTH 320 #define TFT_HEIGHT 240 -#endif // ifdef TFT35 +#endif #ifdef __cplusplus extern "C" { diff --git a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp index 991754ba96d1..94c3517e3a92 100644 --- a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp +++ b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp @@ -36,10 +36,11 @@ #include #include "../../../MarlinCore.h" +#include "../../marlinui.h" + #include "../../../inc/MarlinConfig.h" #include HAL_PATH(../../.., tft/xpt2046.h) -#include "../../marlinui.h" XPT2046 touch; #if ENABLED(POWER_LOSS_RECOVERY) diff --git a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.h b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.h index 0368140b2858..a71bdc9db766 100644 --- a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.h +++ b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.h @@ -32,8 +32,6 @@ #include -//#define TFT_ROTATION TFT_ROTATE_180 - extern uint8_t bmp_public_buf[14 * 1024]; extern uint8_t public_buf[513]; diff --git a/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp b/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp index cf2411ee7ef5..bf399f70aad4 100644 --- a/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp +++ b/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp @@ -1804,6 +1804,7 @@ void stopEspTransfer() { W25QXX.init(SPI_QUARTER_SPEED); + // ?? Workaround for SPI / Servo issues ?? TERN_(HAS_TFT_LVGL_UI_SPI, SPI_TFT.spi_init(SPI_FULL_SPEED)); TERN_(HAS_SERVOS, servo_init()); TERN_(HAS_Z_SERVO_PROBE, probe.servo_probe_init()); diff --git a/Marlin/src/lcd/tft/touch.cpp b/Marlin/src/lcd/tft/touch.cpp index 9482c85a4706..17784ff52757 100644 --- a/Marlin/src/lcd/tft/touch.cpp +++ b/Marlin/src/lcd/tft/touch.cpp @@ -266,19 +266,18 @@ void Touch::hold(touch_control_t *control, millis_t delay) { bool Touch::get_point(int16_t *x, int16_t *y) { #if ENABLED(TFT_TOUCH_DEVICE_XPT2046) #if ENABLED(TOUCH_SCREEN_CALIBRATION) - bool is_touched = (touch_calibration.calibration.orientation == TOUCH_PORTRAIT ? io.getRawPoint(y, x) : io.getRawPoint(x, y)); - + const bool is_touched = (touch_calibration.calibration.orientation == TOUCH_PORTRAIT ? io.getRawPoint(y, x) : io.getRawPoint(x, y)); if (is_touched && touch_calibration.calibration.orientation != TOUCH_ORIENTATION_NONE) { *x = int16_t((int32_t(*x) * touch_calibration.calibration.x) >> 16) + touch_calibration.calibration.offset_x; *y = int16_t((int32_t(*y) * touch_calibration.calibration.y) >> 16) + touch_calibration.calibration.offset_y; } #else - bool is_touched = (TOUCH_ORIENTATION == TOUCH_PORTRAIT ? io.getRawPoint(y, x) : io.getRawPoint(x, y)); + const bool is_touched = (TOUCH_ORIENTATION == TOUCH_PORTRAIT ? io.getRawPoint(y, x) : io.getRawPoint(x, y)); *x = uint16_t((uint32_t(*x) * TOUCH_CALIBRATION_X) >> 16) + TOUCH_OFFSET_X; *y = uint16_t((uint32_t(*y) * TOUCH_CALIBRATION_Y) >> 16) + TOUCH_OFFSET_Y; #endif #elif ENABLED(TFT_TOUCH_DEVICE_GT911) - bool is_touched = (TOUCH_ORIENTATION == TOUCH_PORTRAIT ? io.getPoint(y, x) : io.getPoint(x, y)); + const bool is_touched = (TOUCH_ORIENTATION == TOUCH_PORTRAIT ? io.getPoint(y, x) : io.getPoint(x, y)); #endif #if HAS_TOUCH_SLEEP if (is_touched) diff --git a/Marlin/src/lcd/tft_io/ili9488.h b/Marlin/src/lcd/tft_io/ili9488.h index fc2add662dbb..f28d411bbd4e 100644 --- a/Marlin/src/lcd/tft_io/ili9488.h +++ b/Marlin/src/lcd/tft_io/ili9488.h @@ -146,16 +146,6 @@ #define ILI9488_ADJCTL6 0xFC // Adjust Control 6 #define ILI9488_ADJCTL7 0xFF // Adjust Control 7 -#if 0 - // https://forum.mikroe.com/viewtopic.php?t=74586 - #if ANY(MKS_ROBIN_TFT35, TFT_TRONXY_X5SA, ANYCUBIC_TFT35) // ILI9488 - #define TFT_DRIVER ILI9488 - #define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_X | TFT_INVERT_Y) - #define TFT_RES_480x320 - #define TFT_INTERFACE_FSMC - #endif -#endif - static const uint16_t ili9488_init[] = { DATASIZE_8BIT, ESC_REG(ILI9488_SWRESET), ESC_DELAY(120), diff --git a/Marlin/src/lcd/tft_io/tft_io.h b/Marlin/src/lcd/tft_io/tft_io.h index 226348552d5c..673bb07d5f9a 100644 --- a/Marlin/src/lcd/tft_io/tft_io.h +++ b/Marlin/src/lcd/tft_io/tft_io.h @@ -37,8 +37,6 @@ #error "DMA_MAX_SIZE is not configured for this platform." #endif -#include "tft_orientation.h" - #ifndef TFT_DRIVER #define TFT_DRIVER AUTO #endif diff --git a/Marlin/src/lcd/tft_io/tft_orientation.h b/Marlin/src/lcd/tft_io/tft_orientation.h index c2c86435b2c0..99c6a13c6446 100644 --- a/Marlin/src/lcd/tft_io/tft_orientation.h +++ b/Marlin/src/lcd/tft_io/tft_orientation.h @@ -66,19 +66,3 @@ #define TOUCH_ORIENTATION_NONE 0 #define TOUCH_LANDSCAPE 1 #define TOUCH_PORTRAIT 2 - -#ifndef TOUCH_CALIBRATION_X - #define TOUCH_CALIBRATION_X 0 -#endif -#ifndef TOUCH_CALIBRATION_Y - #define TOUCH_CALIBRATION_Y 0 -#endif -#ifndef TOUCH_OFFSET_X - #define TOUCH_OFFSET_X 0 -#endif -#ifndef TOUCH_OFFSET_Y - #define TOUCH_OFFSET_Y 0 -#endif -#ifndef TOUCH_ORIENTATION - #define TOUCH_ORIENTATION TOUCH_LANDSCAPE -#endif diff --git a/Marlin/src/lcd/tft_io/touch_calibration.h b/Marlin/src/lcd/tft_io/touch_calibration.h index 030b4977db51..e9d3110c56d6 100644 --- a/Marlin/src/lcd/tft_io/touch_calibration.h +++ b/Marlin/src/lcd/tft_io/touch_calibration.h @@ -21,13 +21,11 @@ */ #pragma once -#include "../../inc/MarlinConfigPre.h" -#include "tft_io.h" +#include "../../inc/MarlinConfig.h" #ifndef TOUCH_SCREEN_CALIBRATION_PRECISION #define TOUCH_SCREEN_CALIBRATION_PRECISION 80 #endif - #ifndef TOUCH_SCREEN_HOLD_TO_CALIBRATE_MS #define TOUCH_SCREEN_HOLD_TO_CALIBRATE_MS 2500 #endif diff --git a/Marlin/src/lcd/touch/touch_buttons.cpp b/Marlin/src/lcd/touch/touch_buttons.cpp index 032015cdd0ed..2e996f30ce5f 100644 --- a/Marlin/src/lcd/touch/touch_buttons.cpp +++ b/Marlin/src/lcd/touch/touch_buttons.cpp @@ -65,7 +65,7 @@ void TouchButtons::init() { } uint8_t TouchButtons::read_buttons() { - #ifdef HAS_WIRED_LCD + #if HAS_WIRED_LCD int16_t x, y; #if ENABLED(TFT_TOUCH_DEVICE_XPT2046) diff --git a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h index b414c0015fd1..e322af8fec22 100644 --- a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h +++ b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h @@ -408,7 +408,7 @@ #ifndef TFT_DRIVER #define TFT_DRIVER ST7796 #endif - #ifndef TOUCH_SCREEN_CALIBRATION + #if DISABLED(TOUCH_SCREEN_CALIBRATION) #if ENABLED(TFT_RES_320x240) #ifndef TOUCH_CALIBRATION_X #define TOUCH_CALIBRATION_X 20525 From cfbd8a2e3665585cecb749de6428c749f833273f Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 4 May 2023 00:20:30 +0000 Subject: [PATCH 112/427] [cron] Bump distribution date (2023-05-04) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 887eee8e76d8..4a59b3b3a098 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-03" +//#define STRING_DISTRIBUTION_DATE "2023-05-04" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index c2f46ff4ffce..c8ed9bc956d3 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-03" + #define STRING_DISTRIBUTION_DATE "2023-05-04" #endif /** From 6bf789d93f18c9ac6f4ebdbedb629d95bb5f6786 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 4 May 2023 18:05:56 -0500 Subject: [PATCH 113/427] =?UTF-8?q?=F0=9F=8E=A8=20Move=20G28O=20inside=20P?= =?UTF-8?q?roUI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/probe/G30.cpp | 4 +--- Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/Marlin/src/gcode/probe/G30.cpp b/Marlin/src/gcode/probe/G30.cpp index 8e64ba7cca04..ad797688bb83 100644 --- a/Marlin/src/gcode/probe/G30.cpp +++ b/Marlin/src/gcode/probe/G30.cpp @@ -70,9 +70,7 @@ void GcodeSuite::G30() { remember_feedrate_scaling_off(); - #if EITHER(DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI) - process_subcommands_now(F("G28O")); - #endif + TERN_(DWIN_CREALITY_LCD_JYERSUI, process_subcommands_now(F("G28O"))); const ProbePtRaise raise_after = parser.boolval('E', true) ? PROBE_PT_STOW : PROBE_PT_NONE; diff --git a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp index 760582c76a75..47b104c5ba47 100644 --- a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp +++ b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp @@ -183,7 +183,7 @@ void BedLevelToolsClass::MoveToZ() { } void BedLevelToolsClass::ProbeXY() { const uint16_t Clear = Z_CLEARANCE_DEPLOY_PROBE; - sprintf_P(cmd, PSTR("G0Z%i\nG30X%sY%s"), + sprintf_P(cmd, PSTR("G28O\nG0Z%i\nG30X%sY%s"), Clear, dtostrf(bedlevel.get_mesh_x(bedLevelTools.mesh_x), 1, 2, str_1), dtostrf(bedlevel.get_mesh_y(bedLevelTools.mesh_y), 1, 2, str_2) From 001d1fd7cb86306cf6e25c11a91d0b2e478007bd Mon Sep 17 00:00:00 2001 From: Thomas Niccolo Reyes Date: Fri, 5 May 2023 07:09:36 +0800 Subject: [PATCH 114/427] =?UTF-8?q?=F0=9F=9A=B8=20Improve=20MMU2=20unload?= =?UTF-8?q?=20(like=20original=20MMU2S)=20(#20147)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/Configuration_adv.h | 49 ++++--- Marlin/src/feature/mmu/mmu2.cpp | 147 ++++++++++--------- Marlin/src/feature/mmu/mmu2.h | 12 +- Marlin/src/gcode/feature/pause/M701_M702.cpp | 2 +- Marlin/src/lcd/menu/menu_mmu2.cpp | 23 ++- buildroot/tests/rambo | 8 + 6 files changed, 126 insertions(+), 115 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 34f5f38ce3e3..4567d5b4c13f 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -4250,30 +4250,29 @@ // Add an LCD menu for MMU2 //#define MMU2_MENUS - #if EITHER(MMU2_MENUS, HAS_PRUSA_MMU2S) - // Settings for filament load / unload from the LCD menu. - // This is for Průša MK3-style extruders. Customize for your hardware. - #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0 - #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \ - { 7.2, 1145 }, \ - { 14.4, 871 }, \ - { 36.0, 1393 }, \ - { 14.4, 871 }, \ - { 50.0, 198 } - - #define MMU2_RAMMING_SEQUENCE \ - { 1.0, 1000 }, \ - { 1.0, 1500 }, \ - { 2.0, 2000 }, \ - { 1.5, 3000 }, \ - { 2.5, 4000 }, \ - { -15.0, 5000 }, \ - { -14.0, 1200 }, \ - { -6.0, 600 }, \ - { 10.0, 700 }, \ - { -10.0, 400 }, \ - { -50.0, 2000 } - #endif + + // Settings for filament load / unload from the LCD menu. + // This is for Průša MK3-style extruders. Customize for your hardware. + #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0 + #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \ + { 7.2, 1145 }, \ + { 14.4, 871 }, \ + { 36.0, 1393 }, \ + { 14.4, 871 }, \ + { 50.0, 198 } + + #define MMU2_RAMMING_SEQUENCE \ + { 1.0, 1000 }, \ + { 1.0, 1500 }, \ + { 2.0, 2000 }, \ + { 1.5, 3000 }, \ + { 2.5, 4000 }, \ + { -15.0, 5000 }, \ + { -14.0, 1200 }, \ + { -6.0, 600 }, \ + { 10.0, 700 }, \ + { -10.0, 400 }, \ + { -50.0, 2000 } /** * Using a sensor like the MMU2S @@ -4296,6 +4295,8 @@ #define MMU2_CAN_LOAD_INCREMENT_SEQUENCE \ { -MMU2_CAN_LOAD_INCREMENT, MMU2_CAN_LOAD_FEEDRATE } + // Continue unloading if sensor detects filament after the initial unload move + //#define MMU_IR_UNLOAD_MOVE #else /** diff --git a/Marlin/src/feature/mmu/mmu2.cpp b/Marlin/src/feature/mmu/mmu2.cpp index ea58c2859be6..8aec1dc1db1b 100644 --- a/Marlin/src/feature/mmu/mmu2.cpp +++ b/Marlin/src/feature/mmu/mmu2.cpp @@ -84,7 +84,7 @@ uint8_t MMU2::cmd, MMU2::cmd_arg, MMU2::last_cmd, MMU2::extruder; int8_t MMU2::state = 0; volatile int8_t MMU2::finda = 1; volatile bool MMU2::finda_runout_valid; -int16_t MMU2::version = -1, MMU2::buildnr = -1; +uint16_t MMU2::version = 0, MMU2::buildnr = 0; millis_t MMU2::prev_request, MMU2::prev_P0_request; char MMU2::rx_buffer[MMU_RX_SIZE], MMU2::tx_buffer[MMU_TX_SIZE]; @@ -93,14 +93,11 @@ struct E_Step { feedRate_t feedRate; //!< feed rate in mm/s }; -static constexpr E_Step - ramming_sequence[] PROGMEM = { MMU2_RAMMING_SEQUENCE } - , load_to_nozzle_sequence[] PROGMEM = { MMU2_LOAD_TO_NOZZLE_SEQUENCE } - #if HAS_PRUSA_MMU2S - , can_load_sequence[] PROGMEM = { MMU2_CAN_LOAD_SEQUENCE } - , can_load_increment_sequence[] PROGMEM = { MMU2_CAN_LOAD_INCREMENT_SEQUENCE } - #endif -; +inline void unscaled_mmu2_e_move(const float &dist, const feedRate_t fr_mm_s, const bool sync=true) { + current_position.e += dist / planner.e_factor[active_extruder]; + line_to_current_position(fr_mm_s); + if (sync) planner.synchronize(); +} MMU2::MMU2() { rx_buffer[0] = '\0'; @@ -136,12 +133,12 @@ void MMU2::reset() { #endif } -uint8_t MMU2::get_current_tool() { - return extruder == MMU2_NO_TOOL ? -1 : extruder; -} +int8_t MMU2::get_current_tool() { return extruder == MMU2_NO_TOOL ? -1 : extruder; } #if EITHER(HAS_PRUSA_MMU2S, MMU_EXTRUDER_SENSOR) #define FILAMENT_PRESENT() (READ(FIL_RUNOUT1_PIN) != FIL_RUNOUT1_STATE) +#else + #define FILAMENT_PRESENT() true #endif void mmu2_attn_buzz(const bool two=false) { @@ -200,15 +197,15 @@ void MMU2::mmu_loop() { break; #if ENABLED(MMU2_MODE_12V) - case -5: - // response to M1 - if (rx_ok()) { - DEBUG_ECHOLNPGM("MMU => ok"); - DEBUG_ECHOLNPGM("MMU <= 'P0'"); - MMU2_SEND("P0"); // Read FINDA - state = -4; - } - break; + case -5: + // response to M1 + if (rx_ok()) { + DEBUG_ECHOLNPGM("MMU => ok"); + DEBUG_ECHOLNPGM("MMU <= 'P0'"); + MMU2_SEND("P0"); // Read FINDA + state = -4; + } + break; #endif case -4: @@ -458,8 +455,15 @@ static void mmu2_not_responding() { BUZZ(100, 659); } +inline void beep_bad_cmd() { BUZZ(400, 40); } + #if HAS_PRUSA_MMU2S + /** + * Load filament until the sensor at the gears is triggered + * and give up after a number of attempts set with MMU2_C0_RETRY. + * Each try has a timeout before returning a fail state. + */ bool MMU2::load_to_gears() { command(MMU_CMD_C0); manage_response(true, true); @@ -484,6 +488,11 @@ static void mmu2_not_responding() { set_runout_valid(false); if (index != extruder) { + if (ENABLED(MMU_IR_UNLOAD_MOVE) && FILAMENT_PRESENT()) { + DEBUG_ECHOLNPGM("Unloading\n"); + while (FILAMENT_PRESENT()) // Filament present? Keep unloading. + unscaled_mmu2_e_move(-0.25, MMM_TO_MMS(120)); // 0.25mm is a guessed value. Adjust to preference. + } stepper.disable_extruder(); ui.status_printf(0, GET_TEXT_F(MSG_MMU2_LOADING_FILAMENT), int(index + 1)); @@ -520,9 +529,9 @@ static void mmu2_not_responding() { #if ENABLED(MMU2_MENUS) const uint8_t index = mmu2_choose_filament(); while (!thermalManager.wait_for_hotend(active_extruder, false)) safe_delay(100); - load_filament_to_nozzle(index); + load_to_nozzle(index); #else - ERR_BUZZ(); + beep_bad_cmd(); #endif } break; @@ -541,13 +550,13 @@ static void mmu2_not_responding() { active_extruder = 0; } #else - ERR_BUZZ(); + beep_bad_cmd(); #endif } break; case 'c': { while (!thermalManager.wait_for_hotend(active_extruder, false)) safe_delay(100); - load_to_nozzle(); + load_to_nozzle_sequence(); } break; } @@ -608,9 +617,9 @@ static void mmu2_not_responding() { #if ENABLED(MMU2_MENUS) uint8_t index = mmu2_choose_filament(); while (!thermalManager.wait_for_hotend(active_extruder, false)) safe_delay(100); - load_filament_to_nozzle(index); + load_to_nozzle(index); #else - ERR_BUZZ(); + beep_bad_cmd(); #endif } break; @@ -630,14 +639,14 @@ static void mmu2_not_responding() { extruder = index; active_extruder = 0; #else - ERR_BUZZ(); + beep_bad_cmd(); #endif } break; case 'c': { DEBUG_ECHOLNPGM("case c\n"); while (!thermalManager.wait_for_hotend(active_extruder, false)) safe_delay(100); - execute_extruder_sequence((const E_Step *)load_to_nozzle_sequence, COUNT(load_to_nozzle_sequence)); + load_to_nozzle_sequence(); } break; } @@ -723,9 +732,9 @@ static void mmu2_not_responding() { #if ENABLED(MMU2_MENUS) uint8_t index = mmu2_choose_filament(); while (!thermalManager.wait_for_hotend(active_extruder, false)) safe_delay(100); - load_filament_to_nozzle(index); + load_to_nozzle(index); #else - ERR_BUZZ(); + beep_bad_cmd(); #endif } break; @@ -744,14 +753,14 @@ static void mmu2_not_responding() { extruder = index; active_extruder = 0; #else - ERR_BUZZ(); + beep_bad_cmd(); #endif } break; case 'c': { DEBUG_ECHOLNPGM("case c\n"); while (!thermalManager.wait_for_hotend(active_extruder, false)) safe_delay(100); - execute_extruder_sequence((const E_Step *)load_to_nozzle_sequence, COUNT(load_to_nozzle_sequence)); + load_to_nozzle_sequence(); } break; } @@ -823,13 +832,12 @@ void MMU2::manage_response(const bool move_axes, const bool turn_off_nozzle) { } } else if (mmu_print_saved) { - SERIAL_ECHOLNPGM("MMU starts responding\n"); + SERIAL_ECHOLNPGM("\nMMU starts responding"); if (turn_off_nozzle && resume_hotend_temp) { thermalManager.setTargetHotend(resume_hotend_temp, active_extruder); LCD_MESSAGE(MSG_HEATING); ERR_BUZZ(); - while (!thermalManager.wait_for_hotend(active_extruder, false)) safe_delay(1000); } @@ -842,7 +850,6 @@ void MMU2::manage_response(const bool move_axes, const bool turn_off_nozzle) { if (move_axes && all_axes_homed()) { // Move XY to starting position, then Z do_blocking_move_to_xy(resume_position, feedRate_t(NOZZLE_PARK_XY_FEEDRATE)); - // Move Z_AXIS to saved position do_blocking_move_to_z(resume_position.z, feedRate_t(NOZZLE_PARK_Z_FEEDRATE)); } @@ -877,23 +884,24 @@ void MMU2::filament_runout() { } // Slowly spin the extruder during C0 else { - while (planner.movesplanned() < 3) { - current_position.e += 0.25; - line_to_current_position(MMM_TO_MMS(120)); - } + while (planner.movesplanned() < 3) + unscaled_mmu2_e_move(0.25, MMM_TO_MMS(120), false); } } mmu2s_triggered = present; } bool MMU2::can_load() { - execute_extruder_sequence((const E_Step *)can_load_sequence, COUNT(can_load_sequence)); + static const E_Step can_load_sequence[] PROGMEM = { MMU2_CAN_LOAD_SEQUENCE }, + can_load_increment_sequence[] PROGMEM = { MMU2_CAN_LOAD_INCREMENT_SEQUENCE }; + + execute_extruder_sequence(can_load_sequence, COUNT(can_load_sequence)); int filament_detected_count = 0; const int steps = (MMU2_CAN_LOAD_RETRACT) / (MMU2_CAN_LOAD_INCREMENT); DEBUG_ECHOLNPGM("MMU can_load:"); LOOP_L_N(i, steps) { - execute_extruder_sequence((const E_Step *)can_load_increment_sequence, COUNT(can_load_increment_sequence)); + execute_extruder_sequence(can_load_increment_sequence, COUNT(can_load_increment_sequence)); check_filament(); // Don't trust the idle function DEBUG_CHAR(mmu2s_triggered ? 'O' : 'o'); if (mmu2s_triggered) ++filament_detected_count; @@ -911,7 +919,7 @@ void MMU2::filament_runout() { #endif // Load filament into MMU2 -void MMU2::load_filament(const uint8_t index) { +void MMU2::load_to_feeder(const uint8_t index) { if (!_enabled) return; command(MMU_CMD_L0 + index); @@ -922,8 +930,7 @@ void MMU2::load_filament(const uint8_t index) { /** * Switch material and load to nozzle */ -bool MMU2::load_filament_to_nozzle(const uint8_t index) { - +bool MMU2::load_to_nozzle(const uint8_t index) { if (!_enabled) return false; if (thermalManager.tooColdToExtrude(active_extruder)) { @@ -932,6 +939,13 @@ bool MMU2::load_filament_to_nozzle(const uint8_t index) { return false; } + if (TERN0(MMU_IR_UNLOAD_MOVE, index != extruder) && FILAMENT_PRESENT()) { + DEBUG_ECHOLNPGM("Unloading\n"); + ramming_sequence(); // Unloading instructions from printer side when operating LCD + while (FILAMENT_PRESENT()) // Filament present? Keep unloading. + unscaled_mmu2_e_move(-0.25, MMM_TO_MMS(120)); // 0.25mm is a guessed value. Adjust to preference. + } + stepper.disable_extruder(); command(MMU_CMD_T0 + index); manage_response(true, true); @@ -941,23 +955,12 @@ bool MMU2::load_filament_to_nozzle(const uint8_t index) { mmu_loop(); extruder = index; active_extruder = 0; - load_to_nozzle(); + load_to_nozzle_sequence(); mmu2_attn_buzz(); } return success; } -/** - * Load filament to nozzle of multimaterial printer - * - * This function is used only after T? (user select filament) and M600 (change filament). - * It is not used after T0 .. T4 command (select filament), in such case, G-code is responsible for loading - * filament to nozzle. - */ -void MMU2::load_to_nozzle() { - execute_extruder_sequence((const E_Step *)load_to_nozzle_sequence, COUNT(load_to_nozzle_sequence)); -} - bool MMU2::eject_filament(const uint8_t index, const bool recover) { if (!_enabled) return false; @@ -970,10 +973,7 @@ bool MMU2::eject_filament(const uint8_t index, const bool recover) { LCD_MESSAGE(MSG_MMU2_EJECTING_FILAMENT); - stepper.enable_extruder(); - current_position.e -= MMU2_FILAMENTCHANGE_EJECT_FEED; - line_to_current_position(MMM_TO_MMS(2500)); - planner.synchronize(); + unscaled_mmu2_e_move(-(MMU2_FILAMENTCHANGE_EJECT_FEED), MMM_TO_MMS(2500)); command(MMU_CMD_E0 + index); manage_response(false, false); @@ -983,7 +983,7 @@ bool MMU2::eject_filament(const uint8_t index, const bool recover) { TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(GET_TEXT_F(MSG_MMU2_EJECT_RECOVER))); TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_MMU2_EJECT_RECOVER))); TERN_(HAS_RESUME_CONTINUE, wait_for_user_response()); - mmu2_attn_buzz(true); + mmu2_attn_buzz(); command(MMU_CMD_R0); manage_response(false, false); @@ -1017,7 +1017,7 @@ bool MMU2::unload() { } // Unload sequence to optimize shape of the tip of the unloaded filament - execute_extruder_sequence((const E_Step *)ramming_sequence, sizeof(ramming_sequence) / sizeof(E_Step)); + ramming_sequence(); command(MMU_CMD_U0); manage_response(false, true); @@ -1032,23 +1032,26 @@ bool MMU2::unload() { return true; } -void MMU2::execute_extruder_sequence(const E_Step * sequence, int steps) { +void MMU2::ramming_sequence() { + static const E_Step sequence[] PROGMEM = { MMU2_RAMMING_SEQUENCE }; + execute_extruder_sequence(sequence, COUNT(sequence)); +} + +void MMU2::load_to_nozzle_sequence() { + static const E_Step sequence[] PROGMEM = { MMU2_LOAD_TO_NOZZLE_SEQUENCE }; + execute_extruder_sequence(sequence, COUNT(sequence)); +} +void MMU2::execute_extruder_sequence(const E_Step * sequence, int steps) { planner.synchronize(); - stepper.enable_extruder(); - const E_Step* step = sequence; + const E_Step *step = sequence; LOOP_L_N(i, steps) { const float es = pgm_read_float(&(step->extrude)); const feedRate_t fr_mm_m = pgm_read_float(&(step->feedRate)); - DEBUG_ECHO_MSG("E step ", es, "/", fr_mm_m); - - current_position.e += es; - line_to_current_position(MMM_TO_MMS(fr_mm_m)); - planner.synchronize(); - + unscaled_mmu2_e_move(es, MMM_TO_MMS(fr_mm_m)); step++; } diff --git a/Marlin/src/feature/mmu/mmu2.h b/Marlin/src/feature/mmu/mmu2.h index 18d6d38a359d..bebbae667e12 100644 --- a/Marlin/src/feature/mmu/mmu2.h +++ b/Marlin/src/feature/mmu/mmu2.h @@ -47,13 +47,12 @@ class MMU2 { static void mmu_loop(); static void tool_change(const uint8_t index); static void tool_change(const char *special); - static uint8_t get_current_tool(); + static int8_t get_current_tool(); static void set_filament_type(const uint8_t index, const uint8_t type); static bool unload(); - static void load_filament(uint8_t); - static void load_all(); - static bool load_filament_to_nozzle(const uint8_t index); + static void load_to_feeder(const uint8_t index); + static bool load_to_nozzle(const uint8_t index); static bool eject_filament(const uint8_t index, const bool recover); private: @@ -71,8 +70,9 @@ class MMU2 { static bool get_response(); static void manage_response(const bool move_axes, const bool turn_off_nozzle); - static void load_to_nozzle(); static void execute_extruder_sequence(const E_Step * sequence, int steps); + static void ramming_sequence(); + static void load_to_nozzle_sequence(); static void filament_runout(); @@ -96,7 +96,7 @@ class MMU2 { static int8_t state; static volatile int8_t finda; static volatile bool finda_runout_valid; - static int16_t version, buildnr; + static uint16_t version, buildnr; static millis_t prev_request, prev_P0_request; static char rx_buffer[MMU_RX_SIZE], tx_buffer[MMU_TX_SIZE]; diff --git a/Marlin/src/gcode/feature/pause/M701_M702.cpp b/Marlin/src/gcode/feature/pause/M701_M702.cpp index 2afc5c36a09b..6ec560f5c6d6 100644 --- a/Marlin/src/gcode/feature/pause/M701_M702.cpp +++ b/Marlin/src/gcode/feature/pause/M701_M702.cpp @@ -102,7 +102,7 @@ void GcodeSuite::M701() { // Load filament #if HAS_PRUSA_MMU2 - mmu2.load_filament_to_nozzle(target_extruder); + mmu2.load_to_nozzle(target_extruder); #else constexpr float purge_length = ADVANCED_PAUSE_PURGE_LENGTH, slow_load_length = FILAMENT_CHANGE_SLOW_LOAD_LENGTH; diff --git a/Marlin/src/lcd/menu/menu_mmu2.cpp b/Marlin/src/lcd/menu/menu_mmu2.cpp index 22230687e42c..a6ce14702449 100644 --- a/Marlin/src/lcd/menu/menu_mmu2.cpp +++ b/Marlin/src/lcd/menu/menu_mmu2.cpp @@ -33,20 +33,19 @@ // Load Filament // -inline void action_mmu2_load_filament_to_nozzle(const uint8_t tool) { - ui.reset_status(); +inline void action_mmu2_load_to_nozzle(const uint8_t tool) { ui.return_to_status(); ui.status_printf(0, GET_TEXT_F(MSG_MMU2_LOADING_FILAMENT), int(tool + 1)); - if (mmu2.load_filament_to_nozzle(tool)) ui.reset_status(); - ui.return_to_status(); + if (mmu2.load_to_nozzle(tool)) ui.reset_status(); } -void _mmu2_load_filament(uint8_t index) { +void _mmu2_load_to_feeder(const uint8_t index) { ui.return_to_status(); ui.status_printf(0, GET_TEXT_F(MSG_MMU2_LOADING_FILAMENT), int(index + 1)); - mmu2.load_filament(index); + mmu2.load_to_feeder(index); ui.reset_status(); } + void action_mmu2_load_all() { EXTRUDER_LOOP() _mmu2_load_filament(e); ui.return_to_status(); @@ -56,14 +55,14 @@ void menu_mmu2_load_filament() { START_MENU(); BACK_ITEM(MSG_MMU2_MENU); ACTION_ITEM(MSG_MMU2_ALL, action_mmu2_load_all); - EXTRUDER_LOOP() ACTION_ITEM_N(e, MSG_MMU2_FILAMENT_N, []{ _mmu2_load_filament(MenuItemBase::itemIndex); }); + EXTRUDER_LOOP() ACTION_ITEM_N(e, MSG_MMU2_FILAMENT_N, []{ _mmu2_load_to_feeder(MenuItemBase::itemIndex); }); END_MENU(); } void menu_mmu2_load_to_nozzle() { START_MENU(); BACK_ITEM(MSG_MMU2_MENU); - EXTRUDER_LOOP() ACTION_ITEM_N(e, MSG_MMU2_FILAMENT_N, []{ action_mmu2_load_filament_to_nozzle(MenuItemBase::itemIndex); }); + EXTRUDER_LOOP() ACTION_ITEM_N(e, MSG_MMU2_FILAMENT_N, []{ action_mmu2_load_to_nozzle(MenuItemBase::itemIndex); }); END_MENU(); } @@ -117,7 +116,7 @@ void menu_mmu2() { // T* Choose Filament // -uint8_t feeder_index; +int8_t feeder_index; bool wait_for_mmu_menu; inline void action_mmu2_chosen(const uint8_t index) { @@ -144,10 +143,10 @@ void menu_mmu2_pause() { #if LCD_HEIGHT > 2 STATIC_ITEM(MSG_FILAMENT_CHANGE_HEADER, SS_DEFAULT|SS_INVERT); #endif - ACTION_ITEM(MSG_MMU2_RESUME, []{ wait_for_mmu_menu = false; }); + ACTION_ITEM(MSG_MMU2_RESUME, []{ wait_for_mmu_menu = false; }); ACTION_ITEM(MSG_MMU2_UNLOAD_FILAMENT, []{ mmu2.unload(); }); - ACTION_ITEM(MSG_MMU2_LOAD_FILAMENT, []{ mmu2.load_filament(feeder_index); }); - ACTION_ITEM(MSG_MMU2_LOAD_TO_NOZZLE, []{ mmu2.load_filament_to_nozzle(feeder_index); }); + ACTION_ITEM(MSG_MMU2_LOAD_FILAMENT, []{ mmu2.load_to_feeder(feeder_index); }); + ACTION_ITEM(MSG_MMU2_LOAD_TO_NOZZLE, []{ mmu2.load_to_nozzle(feeder_index); }); END_MENU(); } diff --git a/buildroot/tests/rambo b/buildroot/tests/rambo index 475b2daf87bf..c0784b95a055 100755 --- a/buildroot/tests/rambo +++ b/buildroot/tests/rambo @@ -73,6 +73,14 @@ opt_set MOTHERBOARD BOARD_RAMBO EXTRUDERS 0 TEMP_SENSOR_BED 1 TEMP_SENSOR_PROBE opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER FIX_MOUNTED_PROBE Z_SAFE_HOMING exec_test $1 $2 "Rambo heated bed only" "$3" +# +# Rambo with MMU2 +# +restore_configs +opt_set MOTHERBOARD BOARD_RAMBO EXTRUDERS 5 MMU_MODEL PRUSA_MMU2 +opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER NOZZLE_PARK_FEATURE ADVANCED_PAUSE_FEATURE EMERGENCY_PARSER MMU2_DEBUG +exec_test $1 $2 "Rambo with PRUSA_MMU2 " "$3" + # # Build with the default configurations # From e5dfb44fe013c4b242efbc0d536b0bb679effdcc Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 5 May 2023 00:19:55 +0000 Subject: [PATCH 115/427] [cron] Bump distribution date (2023-05-05) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 4a59b3b3a098..8bf3b8b0bd2f 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-04" +//#define STRING_DISTRIBUTION_DATE "2023-05-05" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index c8ed9bc956d3..ff2447bfd007 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-04" + #define STRING_DISTRIBUTION_DATE "2023-05-05" #endif /** From 4e2b5b2523cc22700b0b71e6dc8c83fbd8a0b52b Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Fri, 5 May 2023 04:30:51 +0200 Subject: [PATCH 116/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20Extensible=20MMU?= =?UTF-8?q?=20for=20>8=20colors=20(#25772)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/MarlinCore.cpp | 42 +++--------------------- Marlin/src/gcode/control/M17_M18_M84.cpp | 2 +- Marlin/src/module/stepper.h | 17 ++++++++-- 3 files changed, 19 insertions(+), 42 deletions(-) diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index e478a35445b6..5b4d33609de5 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -676,28 +676,9 @@ inline void manage_inactivity(const bool no_stepper_sleep=false) { && ELAPSED(ms, gcode.previous_move_ms + SEC_TO_MS(EXTRUDER_RUNOUT_SECONDS)) && !planner.has_blocks_queued() ) { - #if HAS_SWITCHING_EXTRUDER - bool oldstatus; - switch (active_extruder) { - default: oldstatus = stepper.AXIS_IS_ENABLED(E_AXIS, 0); stepper.ENABLE_EXTRUDER(0); break; - #if E_STEPPERS > 1 - case 2: case 3: oldstatus = stepper.AXIS_IS_ENABLED(E_AXIS, 1); stepper.ENABLE_EXTRUDER(1); break; - #if E_STEPPERS > 2 - case 4: case 5: oldstatus = stepper.AXIS_IS_ENABLED(E_AXIS, 2); stepper.ENABLE_EXTRUDER(2); break; - #if E_STEPPERS > 3 - case 6: case 7: oldstatus = stepper.AXIS_IS_ENABLED(E_AXIS, 3); stepper.ENABLE_EXTRUDER(3); break; - #endif // E_STEPPERS > 3 - #endif // E_STEPPERS > 2 - #endif // E_STEPPERS > 1 - } - #else // !HAS_SWITCHING_EXTRUDER - bool oldstatus; - switch (active_extruder) { - default: - #define _CASE_EN(N) case N: oldstatus = stepper.AXIS_IS_ENABLED(E_AXIS, N); stepper.ENABLE_EXTRUDER(N); break; - REPEAT(E_STEPPERS, _CASE_EN); - } - #endif + const int8_t e_stepper = TERN(HAS_SWITCHING_EXTRUDER, active_extruder >> 1, active_extruder); + const bool e_off = !stepper.AXIS_IS_ENABLED(E_AXIS, e_stepper); + if (e_off) stepper.ENABLE_EXTRUDER(e_stepper); const float olde = current_position.e; current_position.e += EXTRUDER_RUNOUT_EXTRUDE; @@ -706,22 +687,7 @@ inline void manage_inactivity(const bool no_stepper_sleep=false) { planner.set_e_position_mm(olde); planner.synchronize(); - #if HAS_SWITCHING_EXTRUDER - switch (active_extruder) { - default: if (oldstatus) stepper.ENABLE_EXTRUDER(0); else stepper.DISABLE_EXTRUDER(0); break; - #if E_STEPPERS > 1 - case 2: case 3: if (oldstatus) stepper.ENABLE_EXTRUDER(1); else stepper.DISABLE_EXTRUDER(1); break; - #if E_STEPPERS > 2 - case 4: case 5: if (oldstatus) stepper.ENABLE_EXTRUDER(2); else stepper.DISABLE_EXTRUDER(2); break; - #endif // E_STEPPERS > 2 - #endif // E_STEPPERS > 1 - } - #else // !HAS_SWITCHING_EXTRUDER - switch (active_extruder) { - #define _CASE_RESTORE(N) case N: if (oldstatus) stepper.ENABLE_EXTRUDER(N); else stepper.DISABLE_EXTRUDER(N); break; - REPEAT(E_STEPPERS, _CASE_RESTORE); - } - #endif // !HAS_SWITCHING_EXTRUDER + if (e_off) stepper.DISABLE_EXTRUDER(e_stepper); gcode.reset_stepper_timeout(ms); } diff --git a/Marlin/src/gcode/control/M17_M18_M84.cpp b/Marlin/src/gcode/control/M17_M18_M84.cpp index 76fc335e2536..053497c69c02 100644 --- a/Marlin/src/gcode/control/M17_M18_M84.cpp +++ b/Marlin/src/gcode/control/M17_M18_M84.cpp @@ -71,7 +71,7 @@ void do_enable(const stepper_flags_t to_enable) { if (!shall_enable) return; // All specified axes already enabled? - ena_mask_t also_enabled = 0; // Track steppers enabled due to overlap + ena_mask_t also_enabled = 0; // Track steppers enabled due to overlap // Enable all flagged axes LOOP_NUM_AXES(a) { diff --git a/Marlin/src/module/stepper.h b/Marlin/src/module/stepper.h index 63285398cd92..14b8a96daacf 100644 --- a/Marlin/src/module/stepper.h +++ b/Marlin/src/module/stepper.h @@ -255,8 +255,19 @@ // This does not account for the possibility of multi-stepping. #define MIN_STEP_ISR_FREQUENCY (MAX_STEP_ISR_FREQUENCY_1X >> 1) +// TODO: Review and ensure proper handling for special E axes with commands like M17/M18, stepper timeout, etc. +#if ENABLED(MIXING_EXTRUDER) + #define E_STATES EXTRUDERS // All steppers are set together for each mixer. (Currently limited to 1.) +#elif HAS_SWITCHING_EXTRUDER + #define E_STATES E_STEPPERS // One stepper for every two EXTRUDERS. The last extruder can be non-switching. +#elif HAS_PRUSA_MMU2 + #define E_STATES E_STEPPERS // One E stepper shared with all EXTRUDERS, so setting any only sets one. +#else + #define E_STATES E_STEPPERS // One stepper for each extruder, so each can be disabled individually. +#endif + // Number of axes that could be enabled/disabled. Dual/multiple steppers are combined. -#define ENABLE_COUNT (NUM_AXES + E_STEPPERS) +#define ENABLE_COUNT (NUM_AXES + E_STATES) typedef bits_t(ENABLE_COUNT) ena_mask_t; // Axis flags type, for enabled state or other simple state @@ -265,8 +276,8 @@ typedef struct { ena_mask_t bits; struct { bool NUM_AXIS_LIST(X:1, Y:1, Z:1, I:1, J:1, K:1, U:1, V:1, W:1); - #if HAS_EXTRUDERS - bool LIST_N(EXTRUDERS, E0:1, E1:1, E2:1, E3:1, E4:1, E5:1, E6:1, E7:1); + #if E_STATES + bool LIST_N(E_STATES, E0:1, E1:1, E2:1, E3:1, E4:1, E5:1, E6:1, E7:1); #endif }; }; From 673e6d5380017f6cb30e75a3cc0c9d7385bf2654 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 4 May 2023 21:32:46 -0500 Subject: [PATCH 117/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Spl?= =?UTF-8?q?it=20up=20stepper.h=20header?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/stepper.cpp | 1 + Marlin/src/module/stepper.h | 202 -------------------------- Marlin/src/module/stepper/cycles.h | 223 +++++++++++++++++++++++++++++ 3 files changed, 224 insertions(+), 202 deletions(-) create mode 100644 Marlin/src/module/stepper/cycles.h diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 790b118c6de6..bda5319dfcfa 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -83,6 +83,7 @@ Stepper stepper; // Singleton #define BABYSTEPPING_EXTRA_DIR_WAIT +#include "stepper/cycles.h" #ifdef __AVR__ #include "stepper/speed_lookuptable.h" #endif diff --git a/Marlin/src/module/stepper.h b/Marlin/src/module/stepper.h index 14b8a96daacf..7a591d295442 100644 --- a/Marlin/src/module/stepper.h +++ b/Marlin/src/module/stepper.h @@ -53,208 +53,6 @@ #include "ft_types.h" #endif -// -// Estimate the amount of time the Stepper ISR will take to execute -// - -/** - * The method of calculating these cycle-constants is unclear. - * Most of them are no longer used directly for pulse timing, and exist - * only to estimate a maximum step rate based on the user's configuration. - * As 32-bit processors continue to diverge, maintaining cycle counts - * will become increasingly difficult and error-prone. - */ - -#ifdef CPU_32_BIT - /** - * Duration of START_TIMED_PULSE - * - * ...as measured on an LPC1768 with a scope and converted to cycles. - * Not applicable to other 32-bit processors, but as long as others - * take longer, pulses will be longer. For example the SKR Pro - * (stm32f407zgt6) requires ~60 cyles. - */ - #define TIMER_READ_ADD_AND_STORE_CYCLES 34UL - - // The base ISR - #define ISR_BASE_CYCLES 770UL - - // Linear advance base time is 64 cycles - #if ENABLED(LIN_ADVANCE) - #define ISR_LA_BASE_CYCLES 64UL - #else - #define ISR_LA_BASE_CYCLES 0UL - #endif - - // S curve interpolation adds 40 cycles - #if ENABLED(S_CURVE_ACCELERATION) - #ifdef STM32G0B1xx - #define ISR_S_CURVE_CYCLES 500UL - #else - #define ISR_S_CURVE_CYCLES 40UL - #endif - #else - #define ISR_S_CURVE_CYCLES 0UL - #endif - - // Input shaping base time - #if HAS_ZV_SHAPING - #define ISR_SHAPING_BASE_CYCLES 180UL - #else - #define ISR_SHAPING_BASE_CYCLES 0UL - #endif - - // Stepper Loop base cycles - #define ISR_LOOP_BASE_CYCLES 4UL - - // And each stepper (start + stop pulse) takes in worst case - #define ISR_STEPPER_CYCLES 100UL - -#else - // Cycles to perform actions in START_TIMED_PULSE - #define TIMER_READ_ADD_AND_STORE_CYCLES 13UL - - // The base ISR - #define ISR_BASE_CYCLES 882UL - - // Linear advance base time is 32 cycles - #if ENABLED(LIN_ADVANCE) - #define ISR_LA_BASE_CYCLES 30UL - #else - #define ISR_LA_BASE_CYCLES 0UL - #endif - - // S curve interpolation adds 160 cycles - #if ENABLED(S_CURVE_ACCELERATION) - #define ISR_S_CURVE_CYCLES 160UL - #else - #define ISR_S_CURVE_CYCLES 0UL - #endif - - // Input shaping base time - #if HAS_ZV_SHAPING - #define ISR_SHAPING_BASE_CYCLES 290UL - #else - #define ISR_SHAPING_BASE_CYCLES 0UL - #endif - - // Stepper Loop base cycles - #define ISR_LOOP_BASE_CYCLES 32UL - - // And each stepper (start + stop pulse) takes in worst case - #define ISR_STEPPER_CYCLES 60UL - -#endif - -// If linear advance is disabled, the loop also handles them -#if DISABLED(LIN_ADVANCE) && ENABLED(MIXING_EXTRUDER) - #define ISR_MIXING_STEPPER_CYCLES ((MIXING_STEPPERS) * (ISR_STEPPER_CYCLES)) -#else - #define ISR_MIXING_STEPPER_CYCLES 0UL -#endif - -// Add time for each stepper -#if HAS_X_STEP - #define ISR_X_STEPPER_CYCLES ISR_STEPPER_CYCLES -#endif -#if HAS_Y_STEP - #define ISR_Y_STEPPER_CYCLES ISR_STEPPER_CYCLES -#endif -#if HAS_Z_STEP - #define ISR_Z_STEPPER_CYCLES ISR_STEPPER_CYCLES -#endif -#if HAS_I_STEP - #define ISR_I_STEPPER_CYCLES ISR_STEPPER_CYCLES -#endif -#if HAS_J_STEP - #define ISR_J_STEPPER_CYCLES ISR_STEPPER_CYCLES -#endif -#if HAS_K_STEP - #define ISR_K_STEPPER_CYCLES ISR_STEPPER_CYCLES -#endif -#if HAS_U_STEP - #define ISR_U_STEPPER_CYCLES ISR_STEPPER_CYCLES -#endif -#if HAS_V_STEP - #define ISR_V_STEPPER_CYCLES ISR_STEPPER_CYCLES -#endif -#if HAS_W_STEP - #define ISR_W_STEPPER_CYCLES ISR_STEPPER_CYCLES -#endif -#if HAS_EXTRUDERS - #define ISR_E_STEPPER_CYCLES ISR_STEPPER_CYCLES // E is always interpolated, even for mixing extruders -#endif - -// And the total minimum loop time, not including the base -#define _PLUS_AXIS_CYCLES(A) + (ISR_##A##_STEPPER_CYCLES) -#define MIN_ISR_LOOP_CYCLES (ISR_MIXING_STEPPER_CYCLES LOGICAL_AXIS_MAP(_PLUS_AXIS_CYCLES)) - -// Calculate the minimum MPU cycles needed per pulse to enforce, limited to the max stepper rate -#define _MIN_STEPPER_PULSE_CYCLES(N) _MAX(uint32_t((F_CPU) / (MAXIMUM_STEPPER_RATE)), ((F_CPU) / 500000UL) * (N)) -#if MINIMUM_STEPPER_PULSE - #define MIN_STEPPER_PULSE_CYCLES _MIN_STEPPER_PULSE_CYCLES(uint32_t(MINIMUM_STEPPER_PULSE)) -#elif HAS_DRIVER(LV8729) - #define MIN_STEPPER_PULSE_CYCLES uint32_t((((F_CPU) - 1) / 2000000) + 1) // 0.5µs, aka 500ns -#else - #define MIN_STEPPER_PULSE_CYCLES _MIN_STEPPER_PULSE_CYCLES(1UL) -#endif - -// Calculate the minimum pulse times (high and low) -#if MINIMUM_STEPPER_PULSE && MAXIMUM_STEPPER_RATE - constexpr uint32_t _MIN_STEP_PERIOD_NS = 1000000000UL / MAXIMUM_STEPPER_RATE; - constexpr uint32_t _MIN_PULSE_HIGH_NS = 1000UL * MINIMUM_STEPPER_PULSE; - constexpr uint32_t _MIN_PULSE_LOW_NS = _MAX((_MIN_STEP_PERIOD_NS - _MIN(_MIN_STEP_PERIOD_NS, _MIN_PULSE_HIGH_NS)), _MIN_PULSE_HIGH_NS); -#elif MINIMUM_STEPPER_PULSE - // Assume 50% duty cycle - constexpr uint32_t _MIN_PULSE_HIGH_NS = 1000UL * MINIMUM_STEPPER_PULSE; - constexpr uint32_t _MIN_PULSE_LOW_NS = _MIN_PULSE_HIGH_NS; -#elif MAXIMUM_STEPPER_RATE - // Assume 50% duty cycle - constexpr uint32_t _MIN_PULSE_HIGH_NS = 500000000UL / MAXIMUM_STEPPER_RATE; - constexpr uint32_t _MIN_PULSE_LOW_NS = _MIN_PULSE_HIGH_NS; -#else - #error "Expected at least one of MINIMUM_STEPPER_PULSE or MAXIMUM_STEPPER_RATE to be defined" -#endif - -// The loop takes the base time plus the time for all the bresenham logic for 1 << R pulses plus the time -// between pulses for ((1 << R) - 1) pulses. But the user could be enforcing a minimum time so the loop time is: -#define ISR_LOOP_CYCLES(R) ((ISR_LOOP_BASE_CYCLES + MIN_ISR_LOOP_CYCLES + MIN_STEPPER_PULSE_CYCLES) * ((1UL << R) - 1) + _MAX(MIN_ISR_LOOP_CYCLES, MIN_STEPPER_PULSE_CYCLES)) - -// Model input shaping as an extra loop call -#define ISR_SHAPING_LOOP_CYCLES(R) (TERN0(HAS_ZV_SHAPING, (ISR_LOOP_BASE_CYCLES + TERN0(INPUT_SHAPING_X, ISR_X_STEPPER_CYCLES) + TERN0(INPUT_SHAPING_Y, ISR_Y_STEPPER_CYCLES)) << R)) - -// If linear advance is enabled, then it is handled separately -#if ENABLED(LIN_ADVANCE) - - // Estimate the minimum LA loop time - #if ENABLED(MIXING_EXTRUDER) // ToDo: ??? - // HELP ME: What is what? - // Directions are set up for MIXING_STEPPERS - like before. - // Finding the right stepper may last up to MIXING_STEPPERS loops in get_next_stepper(). - // These loops are a bit faster than advancing a bresenham counter. - // Always only one E stepper is stepped. - #define MIN_ISR_LA_LOOP_CYCLES ((MIXING_STEPPERS) * (ISR_STEPPER_CYCLES)) - #else - #define MIN_ISR_LA_LOOP_CYCLES ISR_STEPPER_CYCLES - #endif - - // And the real loop time - #define ISR_LA_LOOP_CYCLES _MAX(MIN_STEPPER_PULSE_CYCLES, MIN_ISR_LA_LOOP_CYCLES) - -#else - #define ISR_LA_LOOP_CYCLES 0UL -#endif - -// Estimate the total ISR execution time in cycles given a step-per-ISR shift multiplier -#define ISR_EXECUTION_CYCLES(R) ((ISR_BASE_CYCLES + ISR_S_CURVE_CYCLES + ISR_SHAPING_BASE_CYCLES + ISR_LOOP_CYCLES(R) + ISR_SHAPING_LOOP_CYCLES(R) + ISR_LA_BASE_CYCLES + ISR_LA_LOOP_CYCLES) >> R) - -// The maximum allowable stepping frequency when doing 1x stepping (in Hz) -#define MAX_STEP_ISR_FREQUENCY_1X ((F_CPU) / ISR_EXECUTION_CYCLES(0)) - -// The minimum step ISR rate used by ADAPTIVE_STEP_SMOOTHING to target 50% CPU usage -// This does not account for the possibility of multi-stepping. -#define MIN_STEP_ISR_FREQUENCY (MAX_STEP_ISR_FREQUENCY_1X >> 1) - // TODO: Review and ensure proper handling for special E axes with commands like M17/M18, stepper timeout, etc. #if ENABLED(MIXING_EXTRUDER) #define E_STATES EXTRUDERS // All steppers are set together for each mixer. (Currently limited to 1.) diff --git a/Marlin/src/module/stepper/cycles.h b/Marlin/src/module/stepper/cycles.h new file mode 100644 index 000000000000..dae9e7c62cd5 --- /dev/null +++ b/Marlin/src/module/stepper/cycles.h @@ -0,0 +1,223 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +/** + * cycles.h - Cycle counting for the Stepper ISR + * + * Estimate the amount of time the Stepper ISR will take to execute. + * + * These cycle counts are rough estimates used to determine whether the ISR + * has enough time to do all its work before it should yield back to userland. + * These constants may be updated as data is gathered from a variety of MCUs. + */ + +#ifdef CPU_32_BIT + /** + * Duration of START_TIMED_PULSE + * + * ...as measured on an LPC1768 with a scope and converted to cycles. + * Not applicable to other 32-bit processors, but as long as others + * take longer, pulses will be longer. For example the SKR Pro + * (stm32f407zgt6) requires ~60 cyles. + */ + #define TIMER_READ_ADD_AND_STORE_CYCLES 34UL + + // The base ISR + #define ISR_BASE_CYCLES 770UL + + // Linear advance base time is 64 cycles + #if ENABLED(LIN_ADVANCE) + #define ISR_LA_BASE_CYCLES 64UL + #else + #define ISR_LA_BASE_CYCLES 0UL + #endif + + // S curve interpolation adds 40 cycles + #if ENABLED(S_CURVE_ACCELERATION) + #ifdef STM32G0B1xx + #define ISR_S_CURVE_CYCLES 500UL + #else + #define ISR_S_CURVE_CYCLES 40UL + #endif + #else + #define ISR_S_CURVE_CYCLES 0UL + #endif + + // Input shaping base time + #if HAS_ZV_SHAPING + #define ISR_SHAPING_BASE_CYCLES 180UL + #else + #define ISR_SHAPING_BASE_CYCLES 0UL + #endif + + // Stepper Loop base cycles + #define ISR_LOOP_BASE_CYCLES 4UL + + // And each stepper (start + stop pulse) takes in worst case + #define ISR_STEPPER_CYCLES 100UL + +#else + + // Cycles to perform actions in START_TIMED_PULSE + #define TIMER_READ_ADD_AND_STORE_CYCLES 13UL + + // The base ISR + #define ISR_BASE_CYCLES 882UL + + // Linear advance base time is 32 cycles + #if ENABLED(LIN_ADVANCE) + #define ISR_LA_BASE_CYCLES 30UL + #else + #define ISR_LA_BASE_CYCLES 0UL + #endif + + // S curve interpolation adds 160 cycles + #if ENABLED(S_CURVE_ACCELERATION) + #define ISR_S_CURVE_CYCLES 160UL + #else + #define ISR_S_CURVE_CYCLES 0UL + #endif + + // Input shaping base time + #if HAS_ZV_SHAPING + #define ISR_SHAPING_BASE_CYCLES 290UL + #else + #define ISR_SHAPING_BASE_CYCLES 0UL + #endif + + // Stepper Loop base cycles + #define ISR_LOOP_BASE_CYCLES 32UL + + // And each stepper (start + stop pulse) takes in worst case + #define ISR_STEPPER_CYCLES 60UL + +#endif + +// If linear advance is disabled, the loop also handles them +#if DISABLED(LIN_ADVANCE) && ENABLED(MIXING_EXTRUDER) + #define ISR_MIXING_STEPPER_CYCLES ((MIXING_STEPPERS) * (ISR_STEPPER_CYCLES)) +#else + #define ISR_MIXING_STEPPER_CYCLES 0UL +#endif + +// Add time for each stepper +#if HAS_X_STEP + #define ISR_X_STEPPER_CYCLES ISR_STEPPER_CYCLES +#endif +#if HAS_Y_STEP + #define ISR_Y_STEPPER_CYCLES ISR_STEPPER_CYCLES +#endif +#if HAS_Z_STEP + #define ISR_Z_STEPPER_CYCLES ISR_STEPPER_CYCLES +#endif +#if HAS_I_STEP + #define ISR_I_STEPPER_CYCLES ISR_STEPPER_CYCLES +#endif +#if HAS_J_STEP + #define ISR_J_STEPPER_CYCLES ISR_STEPPER_CYCLES +#endif +#if HAS_K_STEP + #define ISR_K_STEPPER_CYCLES ISR_STEPPER_CYCLES +#endif +#if HAS_U_STEP + #define ISR_U_STEPPER_CYCLES ISR_STEPPER_CYCLES +#endif +#if HAS_V_STEP + #define ISR_V_STEPPER_CYCLES ISR_STEPPER_CYCLES +#endif +#if HAS_W_STEP + #define ISR_W_STEPPER_CYCLES ISR_STEPPER_CYCLES +#endif +#if HAS_EXTRUDERS + #define ISR_E_STEPPER_CYCLES ISR_STEPPER_CYCLES // E is always interpolated, even for mixing extruders +#endif + +// And the total minimum loop time, not including the base +#define _PLUS_AXIS_CYCLES(A) + (ISR_##A##_STEPPER_CYCLES) +#define MIN_ISR_LOOP_CYCLES (ISR_MIXING_STEPPER_CYCLES LOGICAL_AXIS_MAP(_PLUS_AXIS_CYCLES)) + +// Calculate the minimum MPU cycles needed per pulse to enforce, limited to the max stepper rate +#define _MIN_STEPPER_PULSE_CYCLES(N) _MAX(uint32_t((F_CPU) / (MAXIMUM_STEPPER_RATE)), ((F_CPU) / 500000UL) * (N)) +#if MINIMUM_STEPPER_PULSE + #define MIN_STEPPER_PULSE_CYCLES _MIN_STEPPER_PULSE_CYCLES(uint32_t(MINIMUM_STEPPER_PULSE)) +#elif HAS_DRIVER(LV8729) + #define MIN_STEPPER_PULSE_CYCLES uint32_t((((F_CPU) - 1) / 2000000) + 1) // 0.5µs, aka 500ns +#else + #define MIN_STEPPER_PULSE_CYCLES _MIN_STEPPER_PULSE_CYCLES(1UL) +#endif + +// Calculate the minimum pulse times (high and low) +#if MINIMUM_STEPPER_PULSE && MAXIMUM_STEPPER_RATE + constexpr uint32_t _MIN_STEP_PERIOD_NS = 1000000000UL / MAXIMUM_STEPPER_RATE; + constexpr uint32_t _MIN_PULSE_HIGH_NS = 1000UL * MINIMUM_STEPPER_PULSE; + constexpr uint32_t _MIN_PULSE_LOW_NS = _MAX((_MIN_STEP_PERIOD_NS - _MIN(_MIN_STEP_PERIOD_NS, _MIN_PULSE_HIGH_NS)), _MIN_PULSE_HIGH_NS); +#elif MINIMUM_STEPPER_PULSE + // Assume 50% duty cycle + constexpr uint32_t _MIN_PULSE_HIGH_NS = 1000UL * MINIMUM_STEPPER_PULSE; + constexpr uint32_t _MIN_PULSE_LOW_NS = _MIN_PULSE_HIGH_NS; +#elif MAXIMUM_STEPPER_RATE + // Assume 50% duty cycle + constexpr uint32_t _MIN_PULSE_HIGH_NS = 500000000UL / MAXIMUM_STEPPER_RATE; + constexpr uint32_t _MIN_PULSE_LOW_NS = _MIN_PULSE_HIGH_NS; +#else + #error "Expected at least one of MINIMUM_STEPPER_PULSE or MAXIMUM_STEPPER_RATE to be defined" +#endif + +// The loop takes the base time plus the time for all the bresenham logic for 1 << R pulses plus the time +// between pulses for ((1 << R) - 1) pulses. But the user could be enforcing a minimum time so the loop time is: +#define ISR_LOOP_CYCLES(R) ((ISR_LOOP_BASE_CYCLES + MIN_ISR_LOOP_CYCLES + MIN_STEPPER_PULSE_CYCLES) * ((1UL << R) - 1) + _MAX(MIN_ISR_LOOP_CYCLES, MIN_STEPPER_PULSE_CYCLES)) + +// Model input shaping as an extra loop call +#define ISR_SHAPING_LOOP_CYCLES(R) (TERN0(HAS_ZV_SHAPING, (ISR_LOOP_BASE_CYCLES + TERN0(INPUT_SHAPING_X, ISR_X_STEPPER_CYCLES) + TERN0(INPUT_SHAPING_Y, ISR_Y_STEPPER_CYCLES)) << R)) + +// If linear advance is enabled, then it is handled separately +#if ENABLED(LIN_ADVANCE) + + // Estimate the minimum LA loop time + #if ENABLED(MIXING_EXTRUDER) // ToDo: ??? + // HELP ME: What is what? + // Directions are set up for MIXING_STEPPERS - like before. + // Finding the right stepper may last up to MIXING_STEPPERS loops in get_next_stepper(). + // These loops are a bit faster than advancing a bresenham counter. + // Always only one E stepper is stepped. + #define MIN_ISR_LA_LOOP_CYCLES ((MIXING_STEPPERS) * (ISR_STEPPER_CYCLES)) + #else + #define MIN_ISR_LA_LOOP_CYCLES ISR_STEPPER_CYCLES + #endif + + // And the real loop time + #define ISR_LA_LOOP_CYCLES _MAX(MIN_STEPPER_PULSE_CYCLES, MIN_ISR_LA_LOOP_CYCLES) + +#else + #define ISR_LA_LOOP_CYCLES 0UL +#endif + +// Estimate the total ISR execution time in cycles given a step-per-ISR shift multiplier +#define ISR_EXECUTION_CYCLES(R) ((ISR_BASE_CYCLES + ISR_S_CURVE_CYCLES + ISR_SHAPING_BASE_CYCLES + ISR_LOOP_CYCLES(R) + ISR_SHAPING_LOOP_CYCLES(R) + ISR_LA_BASE_CYCLES + ISR_LA_LOOP_CYCLES) >> R) + +// The maximum allowable stepping frequency when doing 1x stepping (in Hz) +#define MAX_STEP_ISR_FREQUENCY_1X ((F_CPU) / ISR_EXECUTION_CYCLES(0)) + +// The minimum step ISR rate used by ADAPTIVE_STEP_SMOOTHING to target 50% CPU usage +// This does not account for the possibility of multi-stepping. +#define MIN_STEP_ISR_FREQUENCY (MAX_STEP_ISR_FREQUENCY_1X >> 1) From 5abb594f01c5bb6c424eb1d50e1f13a90cc9c8f4 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 5 May 2023 02:01:41 -0500 Subject: [PATCH 118/427] =?UTF-8?q?=F0=9F=94=A7=20TMC=20Config=20Inheritan?= =?UTF-8?q?ce?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 58 +++++++++++++++++++------------------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 4567d5b4c13f..6f81aa4051bd 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -2856,10 +2856,10 @@ #endif #if AXIS_IS_TMC_CONFIG(X2) - #define X2_CURRENT 800 + #define X2_CURRENT X_CURRENT #define X2_CURRENT_HOME X2_CURRENT - #define X2_MICROSTEPS X_MICROSTEPS - #define X2_RSENSE 0.11 + #define X2_MICROSTEPS X_MICROSTEPS + #define X2_RSENSE X_RSENSE #define X2_CHAIN_POS -1 //#define X2_INTERPOLATE true //#define X2_HOLD_MULTIPLIER 0.5 @@ -2876,10 +2876,10 @@ #endif #if AXIS_IS_TMC_CONFIG(Y2) - #define Y2_CURRENT 800 + #define Y2_CURRENT Y_CURRENT #define Y2_CURRENT_HOME Y2_CURRENT - #define Y2_MICROSTEPS Y_MICROSTEPS - #define Y2_RSENSE 0.11 + #define Y2_MICROSTEPS Y_MICROSTEPS + #define Y2_RSENSE Y_RSENSE #define Y2_CHAIN_POS -1 //#define Y2_INTERPOLATE true //#define Y2_HOLD_MULTIPLIER 0.5 @@ -2896,30 +2896,30 @@ #endif #if AXIS_IS_TMC_CONFIG(Z2) - #define Z2_CURRENT 800 + #define Z2_CURRENT Z_CURRENT #define Z2_CURRENT_HOME Z2_CURRENT - #define Z2_MICROSTEPS Z_MICROSTEPS - #define Z2_RSENSE 0.11 + #define Z2_MICROSTEPS Z_MICROSTEPS + #define Z2_RSENSE Z_RSENSE #define Z2_CHAIN_POS -1 //#define Z2_INTERPOLATE true //#define Z2_HOLD_MULTIPLIER 0.5 #endif #if AXIS_IS_TMC_CONFIG(Z3) - #define Z3_CURRENT 800 + #define Z3_CURRENT Z_CURRENT #define Z3_CURRENT_HOME Z3_CURRENT - #define Z3_MICROSTEPS Z_MICROSTEPS - #define Z3_RSENSE 0.11 + #define Z3_MICROSTEPS Z_MICROSTEPS + #define Z3_RSENSE Z_RSENSE #define Z3_CHAIN_POS -1 //#define Z3_INTERPOLATE true //#define Z3_HOLD_MULTIPLIER 0.5 #endif #if AXIS_IS_TMC_CONFIG(Z4) - #define Z4_CURRENT 800 + #define Z4_CURRENT Z_CURRENT #define Z4_CURRENT_HOME Z4_CURRENT - #define Z4_MICROSTEPS Z_MICROSTEPS - #define Z4_RSENSE 0.11 + #define Z4_MICROSTEPS Z_MICROSTEPS + #define Z4_RSENSE Z_RSENSE #define Z4_CHAIN_POS -1 //#define Z4_INTERPOLATE true //#define Z4_HOLD_MULTIPLIER 0.5 @@ -2995,63 +2995,63 @@ #endif #if AXIS_IS_TMC_CONFIG(E1) - #define E1_CURRENT 800 + #define E1_CURRENT E0_CURRENT #define E1_MICROSTEPS E0_MICROSTEPS - #define E1_RSENSE 0.11 + #define E1_RSENSE E0_RSENSE #define E1_CHAIN_POS -1 //#define E1_INTERPOLATE true //#define E1_HOLD_MULTIPLIER 0.5 #endif #if AXIS_IS_TMC_CONFIG(E2) - #define E2_CURRENT 800 + #define E2_CURRENT E0_CURRENT #define E2_MICROSTEPS E0_MICROSTEPS - #define E2_RSENSE 0.11 + #define E2_RSENSE E0_RSENSE #define E2_CHAIN_POS -1 //#define E2_INTERPOLATE true //#define E2_HOLD_MULTIPLIER 0.5 #endif #if AXIS_IS_TMC_CONFIG(E3) - #define E3_CURRENT 800 + #define E3_CURRENT E0_CURRENT #define E3_MICROSTEPS E0_MICROSTEPS - #define E3_RSENSE 0.11 + #define E3_RSENSE E0_RSENSE #define E3_CHAIN_POS -1 //#define E3_INTERPOLATE true //#define E3_HOLD_MULTIPLIER 0.5 #endif #if AXIS_IS_TMC_CONFIG(E4) - #define E4_CURRENT 800 + #define E4_CURRENT E0_CURRENT #define E4_MICROSTEPS E0_MICROSTEPS - #define E4_RSENSE 0.11 + #define E4_RSENSE E0_RSENSE #define E4_CHAIN_POS -1 //#define E4_INTERPOLATE true //#define E4_HOLD_MULTIPLIER 0.5 #endif #if AXIS_IS_TMC_CONFIG(E5) - #define E5_CURRENT 800 + #define E5_CURRENT E0_CURRENT #define E5_MICROSTEPS E0_MICROSTEPS - #define E5_RSENSE 0.11 + #define E5_RSENSE E0_RSENSE #define E5_CHAIN_POS -1 //#define E5_INTERPOLATE true //#define E5_HOLD_MULTIPLIER 0.5 #endif #if AXIS_IS_TMC_CONFIG(E6) - #define E6_CURRENT 800 + #define E6_CURRENT E0_CURRENT #define E6_MICROSTEPS E0_MICROSTEPS - #define E6_RSENSE 0.11 + #define E6_RSENSE E0_RSENSE #define E6_CHAIN_POS -1 //#define E6_INTERPOLATE true //#define E6_HOLD_MULTIPLIER 0.5 #endif #if AXIS_IS_TMC_CONFIG(E7) - #define E7_CURRENT 800 + #define E7_CURRENT E0_CURRENT #define E7_MICROSTEPS E0_MICROSTEPS - #define E7_RSENSE 0.11 + #define E7_RSENSE E0_RSENSE #define E7_CHAIN_POS -1 //#define E7_INTERPOLATE true //#define E7_HOLD_MULTIPLIER 0.5 From 573bc7344bcd66c08bf8cccbc90a29faa4d55030 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 29 Apr 2023 20:20:49 -0500 Subject: [PATCH 119/427] =?UTF-8?q?=F0=9F=8E=A8=20NORM=5FE=5FDIR=20=3D>=20?= =?UTF-8?q?FWD=5FE=5FDIR?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/endstops.cpp | 72 +++++++++++++------------ Marlin/src/module/stepper.cpp | 8 +-- Marlin/src/module/stepper/indirection.h | 44 +++++++-------- 3 files changed, 63 insertions(+), 61 deletions(-) diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index ca231f1cb2be..668be5f1f4b1 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -866,36 +866,38 @@ void Endstops::update() { // Signal, after validation, if an endstop limit is pressed or not - if (stepper.axis_is_moving(X_AXIS)) { - if (stepper.motor_direction(X_AXIS_HEAD)) { // -direction - #if HAS_X_MIN || (X_SPI_SENSORLESS && X_HOME_TO_MIN) - PROCESS_ENDSTOP_X(MIN); - #if CORE_DIAG(XY, Y, MIN) - PROCESS_CORE_ENDSTOP(Y,MIN,X,MIN); - #elif CORE_DIAG(XY, Y, MAX) - PROCESS_CORE_ENDSTOP(Y,MAX,X,MIN); - #elif CORE_DIAG(XZ, Z, MIN) - PROCESS_CORE_ENDSTOP(Z,MIN,X,MIN); - #elif CORE_DIAG(XZ, Z, MAX) - PROCESS_CORE_ENDSTOP(Z,MAX,X,MIN); + #if HAS_X_AXIS + if (stepper.axis_is_moving(X_AXIS)) { + if (stepper.motor_direction(X_AXIS_HEAD)) { // -direction + #if HAS_X_MIN || (X_SPI_SENSORLESS && X_HOME_TO_MIN) + PROCESS_ENDSTOP_X(MIN); + #if CORE_DIAG(XY, Y, MIN) + PROCESS_CORE_ENDSTOP(Y,MIN,X,MIN); + #elif CORE_DIAG(XY, Y, MAX) + PROCESS_CORE_ENDSTOP(Y,MAX,X,MIN); + #elif CORE_DIAG(XZ, Z, MIN) + PROCESS_CORE_ENDSTOP(Z,MIN,X,MIN); + #elif CORE_DIAG(XZ, Z, MAX) + PROCESS_CORE_ENDSTOP(Z,MAX,X,MIN); + #endif #endif - #endif - } - else { // +direction - #if HAS_X_MAX || (X_SPI_SENSORLESS && X_HOME_TO_MAX) - PROCESS_ENDSTOP_X(MAX); - #if CORE_DIAG(XY, Y, MIN) - PROCESS_CORE_ENDSTOP(Y,MIN,X,MAX); - #elif CORE_DIAG(XY, Y, MAX) - PROCESS_CORE_ENDSTOP(Y,MAX,X,MAX); - #elif CORE_DIAG(XZ, Z, MIN) - PROCESS_CORE_ENDSTOP(Z,MIN,X,MAX); - #elif CORE_DIAG(XZ, Z, MAX) - PROCESS_CORE_ENDSTOP(Z,MAX,X,MAX); + } + else { // +direction + #if HAS_X_MAX || (X_SPI_SENSORLESS && X_HOME_TO_MAX) + PROCESS_ENDSTOP_X(MAX); + #if CORE_DIAG(XY, Y, MIN) + PROCESS_CORE_ENDSTOP(Y,MIN,X,MAX); + #elif CORE_DIAG(XY, Y, MAX) + PROCESS_CORE_ENDSTOP(Y,MAX,X,MAX); + #elif CORE_DIAG(XZ, Z, MIN) + PROCESS_CORE_ENDSTOP(Z,MIN,X,MAX); + #elif CORE_DIAG(XZ, Z, MAX) + PROCESS_CORE_ENDSTOP(Z,MAX,X,MAX); + #endif #endif - #endif + } } - } + #endif // HAS_X_AXIS #if HAS_Y_AXIS if (stepper.axis_is_moving(Y_AXIS)) { @@ -928,7 +930,7 @@ void Endstops::update() { #endif } } - #endif + #endif // HAS_Y_AXIS #if HAS_Z_AXIS if (stepper.axis_is_moving(Z_AXIS)) { @@ -973,7 +975,7 @@ void Endstops::update() { #endif } } - #endif + #endif // HAS_Z_AXIS #if HAS_I_AXIS if (stepper.axis_is_moving(I_AXIS)) { @@ -988,7 +990,7 @@ void Endstops::update() { #endif } } - #endif + #endif // HAS_I_AXIS #if HAS_J_AXIS if (stepper.axis_is_moving(J_AXIS)) { @@ -1003,7 +1005,7 @@ void Endstops::update() { #endif } } - #endif + #endif // HAS_J_AXIS #if HAS_K_AXIS if (stepper.axis_is_moving(K_AXIS)) { @@ -1018,7 +1020,7 @@ void Endstops::update() { #endif } } - #endif + #endif // HAS_K_AXIS #if HAS_U_AXIS if (stepper.axis_is_moving(U_AXIS)) { @@ -1033,7 +1035,7 @@ void Endstops::update() { #endif } } - #endif + #endif // HAS_U_AXIS #if HAS_V_AXIS if (stepper.axis_is_moving(V_AXIS)) { @@ -1048,7 +1050,7 @@ void Endstops::update() { #endif } } - #endif + #endif // HAS_V_AXIS #if HAS_W_AXIS if (stepper.axis_is_moving(W_AXIS)) { @@ -1063,7 +1065,7 @@ void Endstops::update() { #endif } } - #endif + #endif // HAS_W_AXIS } // Endstops::update() #if ENABLED(SPI_ENDSTOPS) diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index bda5319dfcfa..9bb93597e2de 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -636,9 +636,9 @@ void Stepper::apply_directions() { } else { #if ENABLED(MIXING_EXTRUDER) - MIXER_STEPPER_LOOP(j) NORM_E_DIR(j); + MIXER_STEPPER_LOOP(j) FWD_E_DIR(j); #else - NORM_E_DIR(stepper_extruder); + FWD_E_DIR(stepper_extruder); #endif count_direction.e = 1; } @@ -2420,9 +2420,9 @@ hal_timer_t Stepper::block_phase_isr() { } else { #if ENABLED(MIXING_EXTRUDER) - MIXER_STEPPER_LOOP(j) NORM_E_DIR(j); + MIXER_STEPPER_LOOP(j) FWD_E_DIR(j); #else - NORM_E_DIR(stepper_extruder); + FWD_E_DIR(stepper_extruder); #endif } diff --git a/Marlin/src/module/stepper/indirection.h b/Marlin/src/module/stepper/indirection.h index 806826b7fce5..1bbbccd8423b 100644 --- a/Marlin/src/module/stepper/indirection.h +++ b/Marlin/src/module/stepper/indirection.h @@ -459,7 +459,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #if HAS_SWITCHING_EXTRUDER // One stepper driver per two extruders, reversed on odd index #if EXTRUDERS > 7 #define E_STEP_WRITE(E,V) do{ if (E < 2) { E0_STEP_WRITE(V); } else if (E < 4) { E1_STEP_WRITE(V); } else if (E < 6) { E2_STEP_WRITE(V); } else { E3_STEP_WRITE(V); } }while(0) - #define NORM_E_DIR(E) do{ switch (E) { \ + #define FWD_E_DIR(E) do{ switch (E) { \ case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; \ case 2: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ case 4: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 5: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; \ @@ -473,7 +473,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset } }while(0) #elif EXTRUDERS > 6 #define E_STEP_WRITE(E,V) do{ if (E < 2) { E0_STEP_WRITE(V); } else if (E < 4) { E1_STEP_WRITE(V); } else if (E < 6) { E2_STEP_WRITE(V); } else { E3_STEP_WRITE(V); } }while(0) - #define NORM_E_DIR(E) do{ switch (E) { \ + #define FWD_E_DIR(E) do{ switch (E) { \ case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; \ case 2: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ case 4: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 5: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; \ @@ -486,7 +486,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset case 6: E3_DIR_WRITE(INVERT_DIR(E3, LOW )); } }while(0) #elif EXTRUDERS > 5 #define E_STEP_WRITE(E,V) do{ if (E < 2) { E0_STEP_WRITE(V); } else if (E < 4) { E1_STEP_WRITE(V); } else { E2_STEP_WRITE(V); } }while(0) - #define NORM_E_DIR(E) do{ switch (E) { \ + #define FWD_E_DIR(E) do{ switch (E) { \ case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; \ case 2: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ case 4: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 5: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; \ @@ -498,7 +498,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset } }while(0) #elif EXTRUDERS > 4 #define E_STEP_WRITE(E,V) do{ if (E < 2) { E0_STEP_WRITE(V); } else if (E < 4) { E1_STEP_WRITE(V); } else { E2_STEP_WRITE(V); } }while(0) - #define NORM_E_DIR(E) do{ switch (E) { \ + #define FWD_E_DIR(E) do{ switch (E) { \ case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; \ case 2: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ case 4: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; \ @@ -510,7 +510,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset } }while(0) #elif EXTRUDERS > 3 #define E_STEP_WRITE(E,V) do{ if (E < 2) { E0_STEP_WRITE(V); } else { E1_STEP_WRITE(V); } }while(0) - #define NORM_E_DIR(E) do{ switch (E) { \ + #define FWD_E_DIR(E) do{ switch (E) { \ case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; \ case 2: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ } }while(0) @@ -520,7 +520,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset } }while(0) #elif EXTRUDERS > 2 #define E_STEP_WRITE(E,V) do{ if (E < 2) { E0_STEP_WRITE(V); } else { E1_STEP_WRITE(V); } }while(0) - #define NORM_E_DIR(E) do{ switch (E) { \ + #define FWD_E_DIR(E) do{ switch (E) { \ case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; \ case 2: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ } }while(0) @@ -530,20 +530,20 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset } }while(0) #else #define E_STEP_WRITE(E,V) E0_STEP_WRITE(V) - #define NORM_E_DIR(E) do{ E0_DIR_WRITE(INVERT_DIR(E0, (E) ? LOW : HIGH)); }while(0) + #define FWD_E_DIR(E) do{ E0_DIR_WRITE(INVERT_DIR(E0, (E) ? LOW : HIGH)); }while(0) #define REV_E_DIR(E) do{ E0_DIR_WRITE(INVERT_DIR(E0, (E) ? HIGH : LOW )); }while(0) #endif #elif HAS_PRUSA_MMU2 // One multiplexed stepper driver #define E_STEP_WRITE(E,V) E0_STEP_WRITE(V) - #define NORM_E_DIR(E) E0_DIR_WRITE(INVERT_DIR(E0, HIGH)) + #define FWD_E_DIR(E) E0_DIR_WRITE(INVERT_DIR(E0, HIGH)) #define REV_E_DIR(E) E0_DIR_WRITE(INVERT_DIR(E0, LOW )) #elif HAS_PRUSA_MMU1 // One multiplexed stepper driver, reversed on odd index #define E_STEP_WRITE(E,V) E0_STEP_WRITE(V) - #define NORM_E_DIR(E) do{ E0_DIR_WRITE(INVERT_DIR(E0, TEST(E, 0) ? HIGH : LOW )); }while(0) + #define FWD_E_DIR(E) do{ E0_DIR_WRITE(INVERT_DIR(E0, TEST(E, 0) ? HIGH : LOW )); }while(0) #define REV_E_DIR(E) do{ E0_DIR_WRITE(INVERT_DIR(E0, TEST(E, 0) ? LOW : HIGH)); }while(0) #elif E_STEPPERS > 1 @@ -554,7 +554,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset case 0: E0_STEP_WRITE(V); break; case 1: E1_STEP_WRITE(V); break; case 2: E2_STEP_WRITE(V); break; case 3: E3_STEP_WRITE(V); break; \ case 4: E4_STEP_WRITE(V); break; case 5: E5_STEP_WRITE(V); break; case 6: E6_STEP_WRITE(V); break; case 7: E7_STEP_WRITE(V); break; \ } }while(0) - #define _NORM_E_DIR(E) do{ switch (E) { \ + #define _FWD_E_DIR(E) do{ switch (E) { \ case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ case 2: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, HIGH)); break; \ case 4: E4_DIR_WRITE(INVERT_DIR(E4, HIGH)); break; case 5: E5_DIR_WRITE(INVERT_DIR(E5, HIGH)); break; \ @@ -573,7 +573,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset case 0: E0_STEP_WRITE(V); break; case 1: E1_STEP_WRITE(V); break; case 2: E2_STEP_WRITE(V); break; case 3: E3_STEP_WRITE(V); break; \ case 4: E4_STEP_WRITE(V); break; case 5: E5_STEP_WRITE(V); break; case 6: E6_STEP_WRITE(V); break; \ } }while(0) - #define _NORM_E_DIR(E) do{ switch (E) { \ + #define _FWD_E_DIR(E) do{ switch (E) { \ case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ case 2: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, HIGH)); break; \ case 4: E4_DIR_WRITE(INVERT_DIR(E4, HIGH)); break; case 5: E5_DIR_WRITE(INVERT_DIR(E5, HIGH)); break; \ @@ -592,7 +592,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset case 0: E0_STEP_WRITE(V); break; case 1: E1_STEP_WRITE(V); break; case 2: E2_STEP_WRITE(V); break; case 3: E3_STEP_WRITE(V); break; \ case 4: E4_STEP_WRITE(V); break; case 5: E5_STEP_WRITE(V); break; \ } }while(0) - #define _NORM_E_DIR(E) do{ switch (E) { \ + #define _FWD_E_DIR(E) do{ switch (E) { \ case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ case 2: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, HIGH)); break; \ case 4: E4_DIR_WRITE(INVERT_DIR(E4, HIGH)); break; case 5: E5_DIR_WRITE(INVERT_DIR(E5, HIGH)); break; \ @@ -609,7 +609,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset case 0: E0_STEP_WRITE(V); break; case 1: E1_STEP_WRITE(V); break; case 2: E2_STEP_WRITE(V); break; case 3: E3_STEP_WRITE(V); break; \ case 4: E4_STEP_WRITE(V); break; \ } }while(0) - #define _NORM_E_DIR(E) do{ switch (E) { \ + #define _FWD_E_DIR(E) do{ switch (E) { \ case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ case 2: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, HIGH)); break; \ case 4: E4_DIR_WRITE(INVERT_DIR(E4, HIGH)); break; \ @@ -625,7 +625,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #define _E_STEP_WRITE(E,V) do{ switch (E) { \ case 0: E0_STEP_WRITE(V); break; case 1: E1_STEP_WRITE(V); break; case 2: E2_STEP_WRITE(V); break; case 3: E3_STEP_WRITE(V); break; \ } }while(0) - #define _NORM_E_DIR(E) do{ switch (E) { \ + #define _FWD_E_DIR(E) do{ switch (E) { \ case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ case 2: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, HIGH)); break; \ } }while(0) @@ -637,13 +637,13 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #elif E_STEPPERS > 2 #define _E_STEP_WRITE(E,V) do{ switch (E) { case 0: E0_STEP_WRITE(V); break; case 1: E1_STEP_WRITE(V); break; case 2: E2_STEP_WRITE(V); } }while(0) - #define _NORM_E_DIR(E) do{ switch (E) { case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; case 2: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); } }while(0) + #define _FWD_E_DIR(E) do{ switch (E) { case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; case 2: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); } }while(0) #define _REV_E_DIR(E) do{ switch (E) { case 0: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; case 2: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); } }while(0) #else #define _E_STEP_WRITE(E,V) do{ if (E == 0) { E0_STEP_WRITE(V); } else { E1_STEP_WRITE(V); } }while(0) - #define _NORM_E_DIR(E) do{ if (E == 0) { E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); } else { E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); } }while(0) + #define _FWD_E_DIR(E) do{ if (E == 0) { E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); } else { E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); } }while(0) #define _REV_E_DIR(E) do{ if (E == 0) { E0_DIR_WRITE(INVERT_DIR(E0, LOW )); } else { E1_DIR_WRITE(INVERT_DIR(E1, LOW )); } }while(0) #endif @@ -659,30 +659,30 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #define RDIR(N) DUPE(N,DIR,INVERT_DIR(E, LOW )); #define E_STEP_WRITE(E,V) do{ if (extruder_duplication_enabled) { REPEAT2(E_STEPPERS, DUPE, STEP, V); } else _E_STEP_WRITE(E,V); }while(0) - #define NORM_E_DIR(E) do{ if (extruder_duplication_enabled) { REPEAT(E_STEPPERS, NDIR); } else _NORM_E_DIR(E); }while(0) - #define REV_E_DIR(E) do{ if (extruder_duplication_enabled) { REPEAT(E_STEPPERS, RDIR); } else _REV_E_DIR(E); }while(0) + #define FWD_E_DIR(E) do{ if (extruder_duplication_enabled) { REPEAT(E_STEPPERS, NDIR); } else _FWD_E_DIR(E); }while(0) + #define REV_E_DIR(E) do{ if (extruder_duplication_enabled) { REPEAT(E_STEPPERS, RDIR); } else _REV_E_DIR(E); }while(0) #else #define E_STEP_WRITE(E,V) _E_STEP_WRITE(E,V) - #define NORM_E_DIR(E) _NORM_E_DIR(E) + #define FWD_E_DIR(E) _FWD_E_DIR(E) #define REV_E_DIR(E) _REV_E_DIR(E) #endif #elif ENABLED(E_DUAL_STEPPER_DRIVERS) #define E_STEP_WRITE(E,V) do{ E0_STEP_WRITE(V); E1_STEP_WRITE(V); }while(0) - #define NORM_E_DIR(E) do{ constexpr bool d = INVERT_DIR(E0, HIGH); E0_DIR_WRITE(d); E1_DIR_WRITE(INVERT_DIR(E1_VS_E0, d)); }while(0) + #define FWD_E_DIR(E) do{ constexpr bool d = INVERT_DIR(E0, HIGH); E0_DIR_WRITE(d); E1_DIR_WRITE(INVERT_DIR(E1_VS_E0, d)); }while(0) #define REV_E_DIR(E) do{ constexpr bool d = INVERT_DIR(E0, LOW ); E0_DIR_WRITE(d); E1_DIR_WRITE(INVERT_DIR(E1_VS_E0, d)); }while(0) #elif E_STEPPERS #define E_STEP_WRITE(E,V) E0_STEP_WRITE(V) - #define NORM_E_DIR(E) E0_DIR_WRITE(INVERT_DIR(E0, HIGH)) + #define FWD_E_DIR(E) E0_DIR_WRITE(INVERT_DIR(E0, HIGH)) #define REV_E_DIR(E) E0_DIR_WRITE(INVERT_DIR(E0, LOW )) #else #define E_STEP_WRITE(E,V) NOOP - #define NORM_E_DIR(E) NOOP + #define FWD_E_DIR(E) NOOP #define REV_E_DIR(E) NOOP #endif From 1234e6af528710c7be4f0c9878a023d69fb7f3fe Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 30 Apr 2023 18:05:56 -0500 Subject: [PATCH 120/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Axi?= =?UTF-8?q?s=20relative=20flags=20type?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/powerloss.h | 2 +- Marlin/src/gcode/gcode.cpp | 14 +------------- Marlin/src/gcode/gcode.h | 8 +++++++- 3 files changed, 9 insertions(+), 15 deletions(-) diff --git a/Marlin/src/feature/powerloss.h b/Marlin/src/feature/powerloss.h index d241fdb74c8e..df46545825ec 100644 --- a/Marlin/src/feature/powerloss.h +++ b/Marlin/src/feature/powerloss.h @@ -113,7 +113,7 @@ typedef struct { millis_t print_job_elapsed; // Relative axis modes - uint8_t axis_relative; + relative_t axis_relative; // Misc. Marlin flags struct { diff --git a/Marlin/src/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index 9c24791c820e..2313bbf78f92 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -80,19 +80,7 @@ millis_t GcodeSuite::previous_move_ms = 0, #endif // Relative motion mode for each logical axis -static constexpr xyze_bool_t ar_init = AXIS_RELATIVE_MODES; -axis_bits_t GcodeSuite::axis_relative = 0 LOGICAL_AXIS_GANG( - | (ar_init.e << REL_E), - | (ar_init.x << REL_X), - | (ar_init.y << REL_Y), - | (ar_init.z << REL_Z), - | (ar_init.i << REL_I), - | (ar_init.j << REL_J), - | (ar_init.k << REL_K), - | (ar_init.u << REL_U), - | (ar_init.v << REL_V), - | (ar_init.w << REL_W) -); +relative_t GcodeSuite::axis_relative; // Init in constructor #if EITHER(HAS_AUTO_REPORTING, HOST_KEEPALIVE_FEATURE) bool GcodeSuite::autoreport_paused; // = false diff --git a/Marlin/src/gcode/gcode.h b/Marlin/src/gcode/gcode.h index 75a60b4dd7c3..eb465ea7c39d 100644 --- a/Marlin/src/gcode/gcode.h +++ b/Marlin/src/gcode/gcode.h @@ -345,14 +345,20 @@ enum AxisRelative : uint8_t { #if HAS_EXTRUDERS , E_MODE_ABS, E_MODE_REL #endif + , NUM_REL_MODES }; +typedef bits_t(NUM_REL_MODES) relative_t; extern const char G28_STR[]; class GcodeSuite { public: - static axis_bits_t axis_relative; + static relative_t axis_relative; + + GcodeSuite() { // Relative motion mode for each logical axis + axis_relative = AxisBits(AXIS_RELATIVE_MODES).bits; + } static bool axis_is_relative(const AxisEnum a) { #if HAS_EXTRUDERS From 2538a7c4d6148d8249f5418a76c58ec483343d2b Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 29 Apr 2023 21:28:12 -0500 Subject: [PATCH 121/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Mov?= =?UTF-8?q?e=20DIR=20inverting=20to=20*=5FDIR=5FWRITE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/bedlevel/bdl/bdl.cpp | 2 +- Marlin/src/module/planner.h | 2 +- Marlin/src/module/stepper.cpp | 66 +++--- Marlin/src/module/stepper.h | 2 +- Marlin/src/module/stepper/indirection.cpp | 2 +- Marlin/src/module/stepper/indirection.h | 265 ++++++++++++---------- 6 files changed, 186 insertions(+), 153 deletions(-) diff --git a/Marlin/src/feature/bedlevel/bdl/bdl.cpp b/Marlin/src/feature/bedlevel/bdl/bdl.cpp index 5ce5e894ca44..064a8ffbd211 100644 --- a/Marlin/src/feature/bedlevel/bdl/bdl.cpp +++ b/Marlin/src/feature/bedlevel/bdl/bdl.cpp @@ -109,7 +109,7 @@ void BDS_Leveling::process() { #endif } else { - babystep.set_mm(Z_AXIS, 0); //if (old_cur_z <= cur_z) Z_DIR_WRITE(INVERT_DIR(Z, HIGH)); + babystep.set_mm(Z_AXIS, 0); //if (old_cur_z <= cur_z) Z_DIR_WRITE(HIGH); stepper.apply_directions(); } #endif diff --git a/Marlin/src/module/planner.h b/Marlin/src/module/planner.h index 030c1b31dbb9..e072e94dbd86 100644 --- a/Marlin/src/module/planner.h +++ b/Marlin/src/module/planner.h @@ -246,7 +246,7 @@ typedef struct PlannerBlock { uint32_t acceleration_rate; // The acceleration rate used for acceleration calculation #endif - axis_bits_t direction_bits; // The direction bit set for this block (refers to *_DIRECTION_BIT in config.h) + axis_bits_t direction_bits; // Direction bits set for this block, where 1 is negative motion // Advance extrusion #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 9bb93597e2de..8a4d801e7655 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -477,6 +477,15 @@ xyze_int8_t Stepper::count_direction{0}; #define W_APPLY_STEP(v,Q) W_STEP_WRITE(v) #endif +#define E0_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(0) : REV_E_DIR(0); }while(0) +#define E1_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(1) : REV_E_DIR(1); }while(0) +#define E2_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(2) : REV_E_DIR(2); }while(0) +#define E3_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(3) : REV_E_DIR(3); }while(0) +#define E4_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(4) : REV_E_DIR(4); }while(0) +#define E5_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(5) : REV_E_DIR(5); }while(0) +#define E6_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(6) : REV_E_DIR(6); }while(0) +#define E7_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(7) : REV_E_DIR(7); }while(0) + #if DISABLED(MIXING_EXTRUDER) #define E_APPLY_STEP(v,Q) E_STEP_WRITE(stepper_extruder, v) #endif @@ -592,14 +601,16 @@ void Stepper::disable_all_steppers() { TERN_(EXTENSIBLE_UI, ExtUI::onSteppersDisabled()); } -#define SET_STEP_DIR(A) \ - if (motor_direction(_AXIS(A))) { \ - A##_APPLY_DIR(INVERT_DIR(A, LOW), false); \ - count_direction[_AXIS(A)] = -1; \ - } \ - else { \ - A##_APPLY_DIR(INVERT_DIR(A, HIGH), false); \ - count_direction[_AXIS(A)] = 1; \ +// Set a single axis direction based on the last set flags. +// A direction bit of "1" indicates reverse or negative motion. +#define SET_STEP_DIR(A) \ + if (motor_direction(_AXIS(A))) { \ + A##_APPLY_DIR(LOW, false); \ + count_direction[_AXIS(A)] = -1; \ + } \ + else { \ + A##_APPLY_DIR(HIGH, false); \ + count_direction[_AXIS(A)] = 1; \ } /** @@ -2402,7 +2413,7 @@ hal_timer_t Stepper::block_phase_isr() { if (la_active) { const uint32_t la_step_rate = la_advance_steps > current_block->final_adv_steps ? current_block->la_advance_rate : 0; if (la_step_rate != step_rate) { - bool reverse_e = la_step_rate > step_rate; + const bool reverse_e = la_step_rate > step_rate; la_interval = calc_timer_interval((reverse_e ? la_step_rate - step_rate : step_rate - la_step_rate) >> current_block->la_scaling); if (reverse_e != motor_direction(E_AXIS)) { @@ -3163,21 +3174,6 @@ void Stepper::init() { sei(); #endif - // Init direction bits for first moves - set_directions(0 - NUM_AXIS_GANG( - | TERN0(INVERT_X_DIR, _BV(X_AXIS)), - | TERN0(INVERT_Y_DIR, _BV(Y_AXIS)), - | TERN0(INVERT_Z_DIR, _BV(Z_AXIS)), - | TERN0(INVERT_I_DIR, _BV(I_AXIS)), - | TERN0(INVERT_J_DIR, _BV(J_AXIS)), - | TERN0(INVERT_K_DIR, _BV(K_AXIS)), - | TERN0(INVERT_U_DIR, _BV(U_AXIS)), - | TERN0(INVERT_V_DIR, _BV(V_AXIS)), - | TERN0(INVERT_W_DIR, _BV(W_AXIS)) - ) - ); - #if HAS_MOTOR_CURRENT_SPI || HAS_MOTOR_CURRENT_PWM initialized = true; digipot_init(); @@ -3472,10 +3468,10 @@ void Stepper::report_positions() { #endif if (applyDir) { - TERN_(HAS_X_AXIS, X_DIR_WRITE(INVERT_DIR(X, TEST(command, FT_BIT_DIR_X)))); - TERN_(HAS_Y_AXIS, Y_DIR_WRITE(INVERT_DIR(Y, TEST(command, FT_BIT_DIR_Y)))); - TERN_(HAS_Z_AXIS, Z_DIR_WRITE(INVERT_DIR(Z, z_dir))); - TERN_(HAS_EXTRUDERS, E0_DIR_WRITE(INVERT_DIR(E0, TEST(command, FT_BIT_DIR_E)))); + TERN_(HAS_X_AXIS, X_DIR_WRITE(TEST(command, FT_BIT_DIR_X))); + TERN_(HAS_Y_AXIS, Y_DIR_WRITE(TEST(command, FT_BIT_DIR_Y))); + TERN_(HAS_Z_AXIS, Z_DIR_WRITE(z_dir)); + TERN_(HAS_EXTRUDERS, E0_DIR_WRITE(TEST(command, FT_BIT_DIR_E))); DIR_WAIT_AFTER(); } @@ -3632,7 +3628,7 @@ void Stepper::report_positions() { const uint8_t old_dir = _READ_DIR(AXIS); \ _ENABLE_AXIS(AXIS); \ DIR_WAIT_BEFORE(); \ - _APPLY_DIR(AXIS, INVERT_DIR(AXIS, (DIR)^(INV))); \ + _APPLY_DIR(AXIS, (DIR)^(INV)); \ DIR_WAIT_AFTER(); \ _SAVE_START(); \ _APPLY_STEP(AXIS, _STEP_STATE(AXIS), true); \ @@ -3651,8 +3647,8 @@ void Stepper::report_positions() { const xy_byte_t old_dir = { _READ_DIR(A), _READ_DIR(B) }; \ _ENABLE_AXIS(A); _ENABLE_AXIS(B); \ DIR_WAIT_BEFORE(); \ - _APPLY_DIR(A, INVERT_DIR(A, (DIR)^(INV))); \ - _APPLY_DIR(B, INVERT_DIR(B, (DIR)^(INV)^(ALT))); \ + _APPLY_DIR(A, (DIR)^(INV)); \ + _APPLY_DIR(B, (DIR)^(INV)^(ALT)); \ DIR_WAIT_AFTER(); \ _SAVE_START(); \ _APPLY_STEP(A, _STEP_STATE(A), true); \ @@ -3710,7 +3706,7 @@ void Stepper::report_positions() { #else // DELTA - const bool z_direction = direction ^ BABYSTEP_INVERT_Z; + const bool z_direction = TERN_(BABYSTEP_INVERT_Z, !) direction; NUM_AXIS_CODE( enable_axis(X_AXIS), enable_axis(Y_AXIS), enable_axis(Z_AXIS), @@ -3727,13 +3723,13 @@ void Stepper::report_positions() { ); #ifdef X_DIR_WRITE - X_DIR_WRITE(INVERT_DIR(X, z_direction)); + X_DIR_WRITE(z_direction); #endif #ifdef Y_DIR_WRITE - Y_DIR_WRITE(INVERT_DIR(Y, z_direction)); + Y_DIR_WRITE(z_direction); #endif #ifdef Z_DIR_WRITE - Z_DIR_WRITE(INVERT_DIR(Z, z_direction)); + Z_DIR_WRITE(z_direction); #endif DIR_WAIT_AFTER(); diff --git a/Marlin/src/module/stepper.h b/Marlin/src/module/stepper.h index 7a591d295442..532db65dd93c 100644 --- a/Marlin/src/module/stepper.h +++ b/Marlin/src/module/stepper.h @@ -522,7 +522,7 @@ class Stepper { // Quickly stop all steppers FORCE_INLINE static void quick_stop() { abort_current_block = true; } - // The direction of a single motor + // The direction of a single motor. A true result indicates reversed or negative motion. FORCE_INLINE static bool motor_direction(const AxisEnum axis) { return TEST(last_direction_bits, axis); } // The last movement direction was not null on the specified axis. Note that motor direction is not necessarily the same. diff --git a/Marlin/src/module/stepper/indirection.cpp b/Marlin/src/module/stepper/indirection.cpp index 427fd71cbe7d..0290d8135d9b 100644 --- a/Marlin/src/module/stepper/indirection.cpp +++ b/Marlin/src/module/stepper/indirection.cpp @@ -42,6 +42,6 @@ void reset_stepper_drivers() { } #if ENABLED(SOFTWARE_DRIVER_ENABLE) - // Flags to optimize XYZ Enabled state + // Flags to optimize axis enabled state xyz_bool_t axis_sw_enabled; // = { false, false, false } #endif diff --git a/Marlin/src/module/stepper/indirection.h b/Marlin/src/module/stepper/indirection.h index 1bbbccd8423b..7669853b2b39 100644 --- a/Marlin/src/module/stepper/indirection.h +++ b/Marlin/src/module/stepper/indirection.h @@ -22,14 +22,51 @@ #pragma once /** - * stepper/indirection.h + * stepper/indirection.h - Stepper Indirection Macros * - * Stepper motor driver indirection to allow some stepper functions to - * be done via SPI/I2c instead of direct pin manipulation. + * Each axis in a machine may have between 1 and 4 stepper motors. + * Currently X and Y allow for 1 or 2 steppers. Z can have up to 4. + * Extruders usually have one E stepper per nozzle. + * + * XYZ Special Cases + * - Delta: 3 steppers contribute to X, Y, and Z. + * - SCARA: A and B steppers contribute to X and Y by angular transformation. + * - CoreXY: A and B steppers contribute to X and Y in combination. + * - CoreXZ: A and B steppers contribute to X and Z in combination. + * - CoreYZ: A and B steppers contribute to Y and Z in combination. + * + * E Special Cases + * - SINGLENOZZLE: All Extruders have a single nozzle so there is one heater and no XYZ offset. + * - Switching Extruder: One stepper is used for each pair of nozzles with a switching mechanism. + * - Duplication Mode: Two or more steppers move in sync when `extruder_duplication_enabled` is set. + * With MULTI_NOZZLE_DUPLICATION a `duplication_e_mask` is also used. + * - Průša MMU1: One stepper is used with a switching mechanism. Odd numbered E indexes are reversed. + * - Průša MMU2: One stepper is used with a switching mechanism. + * - E_DUAL_STEPPER_DRIVERS: Two steppers always move in sync, possibly with opposite DIR states. + * + * Direct Stepper Control + * Where "Q" represents X Y Z I J K U V W / X2 Y2 Z2 Z3 Z4 / E0 E1 E2 E3 E4 E5 E6 E7 + * Here each E index corresponds to a single E stepper driver. + * + * Q_ENABLE_INIT() Q_ENABLE_WRITE(S) Q_ENABLE_READ() + * Q_DIR_INIT() Q_DIR_WRITE(S) Q_DIR_READ() + * Q_STEP_INIT() Q_STEP_WRITE(S) Q_STEP_READ() + * + * Steppers may not have an enable state or may be enabled by other methods + * beyond a single pin (SOFTWARE_DRIVER_ENABLE) so these can be overriden: + * ENABLE_STEPPER_Q() DISABLE_STEPPER_Q() + * + * Axis Stepper Control (X Y Z I J K U V W) + * SOFTWARE_DRIVER_ENABLE gives all axes a status flag, so these macros will + * skip sending commands to steppers that are already in the desired state: + * ENABLE_AXIS_Q() DISABLE_AXIS_Q() + * + * E-Axis Stepper Control (0..n) + * For these macros the E index indicates a logical extruder (e.g., active_extruder). + * + * E_STEP_WRITE(E,V) FWD_E_DIR(E) REV_E_DIR(E) * - * Copyright (c) 2015 Dominik Wenger */ - #include "../../inc/MarlinConfig.h" #if HAS_TMC26X @@ -43,6 +80,8 @@ void restore_stepper_drivers(); // Called by powerManager.power_on() void reset_stepper_drivers(); // Called by settings.load / settings.reset +#define INVERT_DIR(AXIS, D) (TERN_(INVERT_## AXIS ##_DIR, !)(D)) + // X Stepper #ifndef X_ENABLE_INIT #define X_ENABLE_INIT() SET_OUTPUT(X_ENABLE_PIN) @@ -51,7 +90,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef X_DIR_INIT #define X_DIR_INIT() SET_OUTPUT(X_DIR_PIN) - #define X_DIR_WRITE(STATE) WRITE(X_DIR_PIN,STATE) + #define X_DIR_WRITE(STATE) WRITE(X_DIR_PIN,INVERT_DIR(X, STATE)) #define X_DIR_READ() bool(READ(X_DIR_PIN)) #endif #define X_STEP_INIT() SET_OUTPUT(X_STEP_PIN) @@ -69,7 +108,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef Y_DIR_INIT #define Y_DIR_INIT() SET_OUTPUT(Y_DIR_PIN) - #define Y_DIR_WRITE(STATE) WRITE(Y_DIR_PIN,STATE) + #define Y_DIR_WRITE(STATE) WRITE(Y_DIR_PIN,INVERT_DIR(Y, STATE)) #define Y_DIR_READ() bool(READ(Y_DIR_PIN)) #endif #define Y_STEP_INIT() SET_OUTPUT(Y_STEP_PIN) @@ -88,7 +127,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef Z_DIR_INIT #define Z_DIR_INIT() SET_OUTPUT(Z_DIR_PIN) - #define Z_DIR_WRITE(STATE) WRITE(Z_DIR_PIN,STATE) + #define Z_DIR_WRITE(STATE) WRITE(Z_DIR_PIN,INVERT_DIR(Z, STATE)) #define Z_DIR_READ() bool(READ(Z_DIR_PIN)) #endif #define Z_STEP_INIT() SET_OUTPUT(Z_STEP_PIN) @@ -107,7 +146,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef X2_DIR_INIT #define X2_DIR_INIT() SET_OUTPUT(X2_DIR_PIN) - #define X2_DIR_WRITE(STATE) WRITE(X2_DIR_PIN,STATE) + #define X2_DIR_WRITE(STATE) WRITE(X2_DIR_PIN,INVERT_DIR(X2, STATE)) #define X2_DIR_READ() bool(READ(X2_DIR_PIN)) #endif #define X2_STEP_INIT() SET_OUTPUT(X2_STEP_PIN) @@ -126,7 +165,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef Y2_DIR_INIT #define Y2_DIR_INIT() SET_OUTPUT(Y2_DIR_PIN) - #define Y2_DIR_WRITE(STATE) WRITE(Y2_DIR_PIN,STATE) + #define Y2_DIR_WRITE(STATE) WRITE(Y2_DIR_PIN,INVERT_DIR(Y2, STATE)) #define Y2_DIR_READ() bool(READ(Y2_DIR_PIN)) #endif #define Y2_STEP_INIT() SET_OUTPUT(Y2_STEP_PIN) @@ -147,7 +186,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef Z2_DIR_INIT #define Z2_DIR_INIT() SET_OUTPUT(Z2_DIR_PIN) - #define Z2_DIR_WRITE(STATE) WRITE(Z2_DIR_PIN,STATE) + #define Z2_DIR_WRITE(STATE) WRITE(Z2_DIR_PIN,INVERT_DIR(Z2, STATE)) #define Z2_DIR_READ() bool(READ(Z2_DIR_PIN)) #endif #define Z2_STEP_INIT() SET_OUTPUT(Z2_STEP_PIN) @@ -168,7 +207,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef Z3_DIR_INIT #define Z3_DIR_INIT() SET_OUTPUT(Z3_DIR_PIN) - #define Z3_DIR_WRITE(STATE) WRITE(Z3_DIR_PIN,STATE) + #define Z3_DIR_WRITE(STATE) WRITE(Z3_DIR_PIN,INVERT_DIR(Z3, STATE)) #define Z3_DIR_READ() bool(READ(Z3_DIR_PIN)) #endif #define Z3_STEP_INIT() SET_OUTPUT(Z3_STEP_PIN) @@ -189,7 +228,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef Z4_DIR_INIT #define Z4_DIR_INIT() SET_OUTPUT(Z4_DIR_PIN) - #define Z4_DIR_WRITE(STATE) WRITE(Z4_DIR_PIN,STATE) + #define Z4_DIR_WRITE(STATE) WRITE(Z4_DIR_PIN,INVERT_DIR(Z4, STATE)) #define Z4_DIR_READ() bool(READ(Z4_DIR_PIN)) #endif #define Z4_STEP_INIT() SET_OUTPUT(Z4_STEP_PIN) @@ -210,7 +249,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef I_DIR_INIT #define I_DIR_INIT() SET_OUTPUT(I_DIR_PIN) - #define I_DIR_WRITE(STATE) WRITE(I_DIR_PIN,STATE) + #define I_DIR_WRITE(STATE) WRITE(I_DIR_PIN,INVERT_DIR(I, STATE)) #define I_DIR_READ() bool(READ(I_DIR_PIN)) #endif #define I_STEP_INIT() SET_OUTPUT(I_STEP_PIN) @@ -229,7 +268,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef J_DIR_INIT #define J_DIR_INIT() SET_OUTPUT(J_DIR_PIN) - #define J_DIR_WRITE(STATE) WRITE(J_DIR_PIN,STATE) + #define J_DIR_WRITE(STATE) WRITE(J_DIR_PIN,INVERT_DIR(J, STATE)) #define J_DIR_READ() bool(READ(J_DIR_PIN)) #endif #define J_STEP_INIT() SET_OUTPUT(J_STEP_PIN) @@ -248,7 +287,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef K_DIR_INIT #define K_DIR_INIT() SET_OUTPUT(K_DIR_PIN) - #define K_DIR_WRITE(STATE) WRITE(K_DIR_PIN,STATE) + #define K_DIR_WRITE(STATE) WRITE(K_DIR_PIN,INVERT_DIR(K, STATE)) #define K_DIR_READ() bool(READ(K_DIR_PIN)) #endif #define K_STEP_INIT() SET_OUTPUT(K_STEP_PIN) @@ -267,7 +306,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef U_DIR_INIT #define U_DIR_INIT() SET_OUTPUT(U_DIR_PIN) - #define U_DIR_WRITE(STATE) WRITE(U_DIR_PIN,STATE) + #define U_DIR_WRITE(STATE) WRITE(U_DIR_PIN,INVERT_DIR(U, STATE)) #define U_DIR_READ() bool(READ(U_DIR_PIN)) #endif #define U_STEP_INIT() SET_OUTPUT(U_STEP_PIN) @@ -286,7 +325,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef V_DIR_INIT #define V_DIR_INIT() SET_OUTPUT(V_DIR_PIN) - #define V_DIR_WRITE(STATE) WRITE(V_DIR_PIN,STATE) + #define V_DIR_WRITE(STATE) WRITE(V_DIR_PIN,INVERT_DIR(V, STATE)) #define V_DIR_READ() bool(READ(V_DIR_PIN)) #endif #define V_STEP_INIT() SET_OUTPUT(V_STEP_PIN) @@ -305,7 +344,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef W_DIR_INIT #define W_DIR_INIT() SET_OUTPUT(W_DIR_PIN) - #define W_DIR_WRITE(STATE) WRITE(W_DIR_PIN,STATE) + #define W_DIR_WRITE(STATE) WRITE(W_DIR_PIN,INVERT_DIR(W, STATE)) #define W_DIR_READ() bool(READ(W_DIR_PIN)) #endif #define W_STEP_INIT() SET_OUTPUT(W_STEP_PIN) @@ -323,7 +362,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef E0_DIR_INIT #define E0_DIR_INIT() SET_OUTPUT(E0_DIR_PIN) - #define E0_DIR_WRITE(STATE) WRITE(E0_DIR_PIN,STATE) + #define E0_DIR_WRITE(STATE) WRITE(E0_DIR_PIN,INVERT_DIR(E0, STATE)) #define E0_DIR_READ() bool(READ(E0_DIR_PIN)) #endif #define E0_STEP_INIT() SET_OUTPUT(E0_STEP_PIN) @@ -340,7 +379,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef E1_DIR_INIT #define E1_DIR_INIT() SET_OUTPUT(E1_DIR_PIN) - #define E1_DIR_WRITE(STATE) WRITE(E1_DIR_PIN,STATE) + #define E1_DIR_WRITE(STATE) WRITE(E1_DIR_PIN,INVERT_DIR(E1, STATE)) #define E1_DIR_READ() bool(READ(E1_DIR_PIN)) #endif #define E1_STEP_INIT() SET_OUTPUT(E1_STEP_PIN) @@ -357,7 +396,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef E2_DIR_INIT #define E2_DIR_INIT() SET_OUTPUT(E2_DIR_PIN) - #define E2_DIR_WRITE(STATE) WRITE(E2_DIR_PIN,STATE) + #define E2_DIR_WRITE(STATE) WRITE(E2_DIR_PIN,INVERT_DIR(E2, STATE)) #define E2_DIR_READ() bool(READ(E2_DIR_PIN)) #endif #define E2_STEP_INIT() SET_OUTPUT(E2_STEP_PIN) @@ -374,7 +413,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef E3_DIR_INIT #define E3_DIR_INIT() SET_OUTPUT(E3_DIR_PIN) - #define E3_DIR_WRITE(STATE) WRITE(E3_DIR_PIN,STATE) + #define E3_DIR_WRITE(STATE) WRITE(E3_DIR_PIN,INVERT_DIR(E3, STATE)) #define E3_DIR_READ() bool(READ(E3_DIR_PIN)) #endif #define E3_STEP_INIT() SET_OUTPUT(E3_STEP_PIN) @@ -391,7 +430,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef E4_DIR_INIT #define E4_DIR_INIT() SET_OUTPUT(E4_DIR_PIN) - #define E4_DIR_WRITE(STATE) WRITE(E4_DIR_PIN,STATE) + #define E4_DIR_WRITE(STATE) WRITE(E4_DIR_PIN,INVERT_DIR(E4, STATE)) #define E4_DIR_READ() bool(READ(E4_DIR_PIN)) #endif #define E4_STEP_INIT() SET_OUTPUT(E4_STEP_PIN) @@ -408,7 +447,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef E5_DIR_INIT #define E5_DIR_INIT() SET_OUTPUT(E5_DIR_PIN) - #define E5_DIR_WRITE(STATE) WRITE(E5_DIR_PIN,STATE) + #define E5_DIR_WRITE(STATE) WRITE(E5_DIR_PIN,INVERT_DIR(E5, STATE)) #define E5_DIR_READ() bool(READ(E5_DIR_PIN)) #endif #define E5_STEP_INIT() SET_OUTPUT(E5_STEP_PIN) @@ -425,7 +464,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef E6_DIR_INIT #define E6_DIR_INIT() SET_OUTPUT(E6_DIR_PIN) - #define E6_DIR_WRITE(STATE) WRITE(E6_DIR_PIN,STATE) + #define E6_DIR_WRITE(STATE) WRITE(E6_DIR_PIN,INVERT_DIR(E6, STATE)) #define E6_DIR_READ() bool(READ(E6_DIR_PIN)) #endif #define E6_STEP_INIT() SET_OUTPUT(E6_STEP_PIN) @@ -442,7 +481,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #ifndef E7_DIR_INIT #define E7_DIR_INIT() SET_OUTPUT(E7_DIR_PIN) - #define E7_DIR_WRITE(STATE) WRITE(E7_DIR_PIN,STATE) + #define E7_DIR_WRITE(STATE) WRITE(E7_DIR_PIN,INVERT_DIR(E7, STATE)) #define E7_DIR_READ() bool(READ(E7_DIR_PIN)) #endif #define E7_STEP_INIT() SET_OUTPUT(E7_STEP_PIN) @@ -451,8 +490,6 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif #define E7_STEP_READ() bool(READ(E7_STEP_PIN)) -#define INVERT_DIR(AXIS, D) (TERN_(INVERT_## AXIS ##_DIR, !)(D)) - /** * Extruder indirection for the single E axis */ @@ -460,91 +497,91 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #if EXTRUDERS > 7 #define E_STEP_WRITE(E,V) do{ if (E < 2) { E0_STEP_WRITE(V); } else if (E < 4) { E1_STEP_WRITE(V); } else if (E < 6) { E2_STEP_WRITE(V); } else { E3_STEP_WRITE(V); } }while(0) #define FWD_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; \ - case 2: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ - case 4: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 5: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; \ - case 6: E3_DIR_WRITE(INVERT_DIR(E3, HIGH)); break; case 7: E3_DIR_WRITE(INVERT_DIR(E3, LOW )); break; \ + case 0: E0_DIR_WRITE(HIGH); break; case 1: E0_DIR_WRITE(LOW ); break; \ + case 2: E1_DIR_WRITE(HIGH); break; case 3: E1_DIR_WRITE(LOW ); break; \ + case 4: E2_DIR_WRITE(HIGH); break; case 5: E2_DIR_WRITE(LOW ); break; \ + case 6: E3_DIR_WRITE(HIGH); break; case 7: E3_DIR_WRITE(LOW ); break; \ } }while(0) #define REV_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; \ - case 2: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ - case 4: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; case 5: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; \ - case 6: E3_DIR_WRITE(INVERT_DIR(E3, LOW )); break; case 7: E3_DIR_WRITE(INVERT_DIR(E3, HIGH)); break; \ + case 0: E0_DIR_WRITE(LOW ); break; case 1: E0_DIR_WRITE(HIGH); break; \ + case 2: E1_DIR_WRITE(LOW ); break; case 3: E1_DIR_WRITE(HIGH); break; \ + case 4: E2_DIR_WRITE(LOW ); break; case 5: E2_DIR_WRITE(HIGH); break; \ + case 6: E3_DIR_WRITE(LOW ); break; case 7: E3_DIR_WRITE(HIGH); break; \ } }while(0) #elif EXTRUDERS > 6 #define E_STEP_WRITE(E,V) do{ if (E < 2) { E0_STEP_WRITE(V); } else if (E < 4) { E1_STEP_WRITE(V); } else if (E < 6) { E2_STEP_WRITE(V); } else { E3_STEP_WRITE(V); } }while(0) #define FWD_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; \ - case 2: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ - case 4: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 5: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; \ - case 6: E3_DIR_WRITE(INVERT_DIR(E3, HIGH)); break; \ + case 0: E0_DIR_WRITE(HIGH); break; case 1: E0_DIR_WRITE(LOW ); break; \ + case 2: E1_DIR_WRITE(HIGH); break; case 3: E1_DIR_WRITE(LOW ); break; \ + case 4: E2_DIR_WRITE(HIGH); break; case 5: E2_DIR_WRITE(LOW ); break; \ + case 6: E3_DIR_WRITE(HIGH); break; \ } }while(0) #define REV_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; \ - case 2: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ - case 4: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; case 5: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; \ - case 6: E3_DIR_WRITE(INVERT_DIR(E3, LOW )); } }while(0) + case 0: E0_DIR_WRITE(LOW ); break; case 1: E0_DIR_WRITE(HIGH); break; \ + case 2: E1_DIR_WRITE(LOW ); break; case 3: E1_DIR_WRITE(HIGH); break; \ + case 4: E2_DIR_WRITE(LOW ); break; case 5: E2_DIR_WRITE(HIGH); break; \ + case 6: E3_DIR_WRITE(LOW ); } }while(0) #elif EXTRUDERS > 5 #define E_STEP_WRITE(E,V) do{ if (E < 2) { E0_STEP_WRITE(V); } else if (E < 4) { E1_STEP_WRITE(V); } else { E2_STEP_WRITE(V); } }while(0) #define FWD_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; \ - case 2: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ - case 4: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 5: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; \ + case 0: E0_DIR_WRITE(HIGH); break; case 1: E0_DIR_WRITE(LOW ); break; \ + case 2: E1_DIR_WRITE(HIGH); break; case 3: E1_DIR_WRITE(LOW ); break; \ + case 4: E2_DIR_WRITE(HIGH); break; case 5: E2_DIR_WRITE(LOW ); break; \ } }while(0) #define REV_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; \ - case 2: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ - case 4: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; case 5: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; \ + case 0: E0_DIR_WRITE(LOW ); break; case 1: E0_DIR_WRITE(HIGH); break; \ + case 2: E1_DIR_WRITE(LOW ); break; case 3: E1_DIR_WRITE(HIGH); break; \ + case 4: E2_DIR_WRITE(LOW ); break; case 5: E2_DIR_WRITE(HIGH); break; \ } }while(0) #elif EXTRUDERS > 4 #define E_STEP_WRITE(E,V) do{ if (E < 2) { E0_STEP_WRITE(V); } else if (E < 4) { E1_STEP_WRITE(V); } else { E2_STEP_WRITE(V); } }while(0) #define FWD_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; \ - case 2: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ - case 4: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; \ + case 0: E0_DIR_WRITE(HIGH); break; case 1: E0_DIR_WRITE(LOW ); break; \ + case 2: E1_DIR_WRITE(HIGH); break; case 3: E1_DIR_WRITE(LOW ); break; \ + case 4: E2_DIR_WRITE(HIGH); break; \ } }while(0) #define REV_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; \ - case 2: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ - case 4: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; \ + case 0: E0_DIR_WRITE(LOW ); break; case 1: E0_DIR_WRITE(HIGH); break; \ + case 2: E1_DIR_WRITE(LOW ); break; case 3: E1_DIR_WRITE(HIGH); break; \ + case 4: E2_DIR_WRITE(LOW ); break; \ } }while(0) #elif EXTRUDERS > 3 #define E_STEP_WRITE(E,V) do{ if (E < 2) { E0_STEP_WRITE(V); } else { E1_STEP_WRITE(V); } }while(0) #define FWD_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; \ - case 2: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ + case 0: E0_DIR_WRITE(HIGH); break; case 1: E0_DIR_WRITE(LOW ); break; \ + case 2: E1_DIR_WRITE(HIGH); break; case 3: E1_DIR_WRITE(LOW ); break; \ } }while(0) #define REV_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; \ - case 2: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; case 3: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ + case 0: E0_DIR_WRITE(LOW ); break; case 1: E0_DIR_WRITE(HIGH); break; \ + case 2: E1_DIR_WRITE(LOW ); break; case 3: E1_DIR_WRITE(HIGH); break; \ } }while(0) #elif EXTRUDERS > 2 #define E_STEP_WRITE(E,V) do{ if (E < 2) { E0_STEP_WRITE(V); } else { E1_STEP_WRITE(V); } }while(0) #define FWD_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; \ - case 2: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ + case 0: E0_DIR_WRITE(HIGH); break; case 1: E0_DIR_WRITE(LOW ); break; \ + case 2: E1_DIR_WRITE(HIGH); break; \ } }while(0) #define REV_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; case 1: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; \ - case 2: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ + case 0: E0_DIR_WRITE(LOW ); break; case 1: E0_DIR_WRITE(HIGH); break; \ + case 2: E1_DIR_WRITE(LOW ); break; \ } }while(0) #else #define E_STEP_WRITE(E,V) E0_STEP_WRITE(V) - #define FWD_E_DIR(E) do{ E0_DIR_WRITE(INVERT_DIR(E0, (E) ? LOW : HIGH)); }while(0) - #define REV_E_DIR(E) do{ E0_DIR_WRITE(INVERT_DIR(E0, (E) ? HIGH : LOW )); }while(0) + #define FWD_E_DIR(E) do{ E0_DIR_WRITE((E) ? LOW : HIGH); }while(0) + #define REV_E_DIR(E) do{ E0_DIR_WRITE((E) ? HIGH : LOW ); }while(0) #endif #elif HAS_PRUSA_MMU2 // One multiplexed stepper driver #define E_STEP_WRITE(E,V) E0_STEP_WRITE(V) - #define FWD_E_DIR(E) E0_DIR_WRITE(INVERT_DIR(E0, HIGH)) - #define REV_E_DIR(E) E0_DIR_WRITE(INVERT_DIR(E0, LOW )) + #define FWD_E_DIR(E) E0_DIR_WRITE(HIGH) + #define REV_E_DIR(E) E0_DIR_WRITE(LOW ) #elif HAS_PRUSA_MMU1 // One multiplexed stepper driver, reversed on odd index #define E_STEP_WRITE(E,V) E0_STEP_WRITE(V) - #define FWD_E_DIR(E) do{ E0_DIR_WRITE(INVERT_DIR(E0, TEST(E, 0) ? HIGH : LOW )); }while(0) - #define REV_E_DIR(E) do{ E0_DIR_WRITE(INVERT_DIR(E0, TEST(E, 0) ? LOW : HIGH)); }while(0) + #define FWD_E_DIR(E) do{ E0_DIR_WRITE(TEST(E, 0) ? HIGH : LOW ); }while(0) + #define REV_E_DIR(E) do{ E0_DIR_WRITE(TEST(E, 0) ? LOW : HIGH); }while(0) #elif E_STEPPERS > 1 @@ -555,16 +592,16 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset case 4: E4_STEP_WRITE(V); break; case 5: E5_STEP_WRITE(V); break; case 6: E6_STEP_WRITE(V); break; case 7: E7_STEP_WRITE(V); break; \ } }while(0) #define _FWD_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ - case 2: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, HIGH)); break; \ - case 4: E4_DIR_WRITE(INVERT_DIR(E4, HIGH)); break; case 5: E5_DIR_WRITE(INVERT_DIR(E5, HIGH)); break; \ - case 6: E6_DIR_WRITE(INVERT_DIR(E6, HIGH)); break; case 7: E7_DIR_WRITE(INVERT_DIR(E7, HIGH)); break; \ + case 0: E0_DIR_WRITE(HIGH); break; case 1: E1_DIR_WRITE(HIGH); break; \ + case 2: E2_DIR_WRITE(HIGH); break; case 3: E3_DIR_WRITE(HIGH); break; \ + case 4: E4_DIR_WRITE(HIGH); break; case 5: E5_DIR_WRITE(HIGH); break; \ + case 6: E6_DIR_WRITE(HIGH); break; case 7: E7_DIR_WRITE(HIGH); break; \ } }while(0) #define _REV_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ - case 2: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, LOW )); break; \ - case 4: E4_DIR_WRITE(INVERT_DIR(E4, LOW )); break; case 5: E5_DIR_WRITE(INVERT_DIR(E5, LOW )); break; \ - case 6: E6_DIR_WRITE(INVERT_DIR(E6, LOW )); break; case 7: E7_DIR_WRITE(INVERT_DIR(E7, LOW )); break; \ + case 0: E0_DIR_WRITE(LOW ); break; case 1: E1_DIR_WRITE(LOW ); break; \ + case 2: E2_DIR_WRITE(LOW ); break; case 3: E3_DIR_WRITE(LOW ); break; \ + case 4: E4_DIR_WRITE(LOW ); break; case 5: E5_DIR_WRITE(LOW ); break; \ + case 6: E6_DIR_WRITE(LOW ); break; case 7: E7_DIR_WRITE(LOW ); break; \ } }while(0) #elif E_STEPPERS > 6 @@ -574,16 +611,16 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset case 4: E4_STEP_WRITE(V); break; case 5: E5_STEP_WRITE(V); break; case 6: E6_STEP_WRITE(V); break; \ } }while(0) #define _FWD_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ - case 2: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, HIGH)); break; \ - case 4: E4_DIR_WRITE(INVERT_DIR(E4, HIGH)); break; case 5: E5_DIR_WRITE(INVERT_DIR(E5, HIGH)); break; \ - case 6: E6_DIR_WRITE(INVERT_DIR(E6, HIGH)); break; \ + case 0: E0_DIR_WRITE(HIGH); break; case 1: E1_DIR_WRITE(HIGH); break; \ + case 2: E2_DIR_WRITE(HIGH); break; case 3: E3_DIR_WRITE(HIGH); break; \ + case 4: E4_DIR_WRITE(HIGH); break; case 5: E5_DIR_WRITE(HIGH); break; \ + case 6: E6_DIR_WRITE(HIGH); break; \ } }while(0) #define _REV_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ - case 2: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, LOW )); break; \ - case 4: E4_DIR_WRITE(INVERT_DIR(E4, LOW )); break; case 5: E5_DIR_WRITE(INVERT_DIR(E5, LOW )); break; \ - case 6: E6_DIR_WRITE(INVERT_DIR(E6, LOW )); break; \ + case 0: E0_DIR_WRITE(LOW ); break; case 1: E1_DIR_WRITE(LOW ); break; \ + case 2: E2_DIR_WRITE(LOW ); break; case 3: E3_DIR_WRITE(LOW ); break; \ + case 4: E4_DIR_WRITE(LOW ); break; case 5: E5_DIR_WRITE(LOW ); break; \ + case 6: E6_DIR_WRITE(LOW ); break; \ } }while(0) #elif E_STEPPERS > 5 @@ -593,14 +630,14 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset case 4: E4_STEP_WRITE(V); break; case 5: E5_STEP_WRITE(V); break; \ } }while(0) #define _FWD_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ - case 2: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, HIGH)); break; \ - case 4: E4_DIR_WRITE(INVERT_DIR(E4, HIGH)); break; case 5: E5_DIR_WRITE(INVERT_DIR(E5, HIGH)); break; \ + case 0: E0_DIR_WRITE(HIGH); break; case 1: E1_DIR_WRITE(HIGH); break; \ + case 2: E2_DIR_WRITE(HIGH); break; case 3: E3_DIR_WRITE(HIGH); break; \ + case 4: E4_DIR_WRITE(HIGH); break; case 5: E5_DIR_WRITE(HIGH); break; \ } }while(0) #define _REV_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ - case 2: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, LOW )); break; \ - case 4: E4_DIR_WRITE(INVERT_DIR(E4, LOW )); break; case 5: E5_DIR_WRITE(INVERT_DIR(E5, LOW )); break; \ + case 0: E0_DIR_WRITE(LOW ); break; case 1: E1_DIR_WRITE(LOW ); break; \ + case 2: E2_DIR_WRITE(LOW ); break; case 3: E3_DIR_WRITE(LOW ); break; \ + case 4: E4_DIR_WRITE(LOW ); break; case 5: E5_DIR_WRITE(LOW ); break; \ } }while(0) #elif E_STEPPERS > 4 @@ -610,14 +647,14 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset case 4: E4_STEP_WRITE(V); break; \ } }while(0) #define _FWD_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ - case 2: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, HIGH)); break; \ - case 4: E4_DIR_WRITE(INVERT_DIR(E4, HIGH)); break; \ + case 0: E0_DIR_WRITE(HIGH); break; case 1: E1_DIR_WRITE(HIGH); break; \ + case 2: E2_DIR_WRITE(HIGH); break; case 3: E3_DIR_WRITE(HIGH); break; \ + case 4: E4_DIR_WRITE(HIGH); break; \ } }while(0) #define _REV_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ - case 2: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, LOW )); break; \ - case 4: E4_DIR_WRITE(INVERT_DIR(E4, LOW )); break; \ + case 0: E0_DIR_WRITE(LOW ); break; case 1: E1_DIR_WRITE(LOW ); break; \ + case 2: E2_DIR_WRITE(LOW ); break; case 3: E3_DIR_WRITE(LOW ); break; \ + case 4: E4_DIR_WRITE(LOW ); break; \ } }while(0) #elif E_STEPPERS > 3 @@ -626,25 +663,25 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset case 0: E0_STEP_WRITE(V); break; case 1: E1_STEP_WRITE(V); break; case 2: E2_STEP_WRITE(V); break; case 3: E3_STEP_WRITE(V); break; \ } }while(0) #define _FWD_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; \ - case 2: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, HIGH)); break; \ + case 0: E0_DIR_WRITE(HIGH); break; case 1: E1_DIR_WRITE(HIGH); break; \ + case 2: E2_DIR_WRITE(HIGH); break; case 3: E3_DIR_WRITE(HIGH); break; \ } }while(0) #define _REV_E_DIR(E) do{ switch (E) { \ - case 0: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; \ - case 2: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); break; case 3: E3_DIR_WRITE(INVERT_DIR(E3, LOW )); break; \ + case 0: E0_DIR_WRITE(LOW ); break; case 1: E1_DIR_WRITE(LOW ); break; \ + case 2: E2_DIR_WRITE(LOW ); break; case 3: E3_DIR_WRITE(LOW ); break; \ } }while(0) #elif E_STEPPERS > 2 #define _E_STEP_WRITE(E,V) do{ switch (E) { case 0: E0_STEP_WRITE(V); break; case 1: E1_STEP_WRITE(V); break; case 2: E2_STEP_WRITE(V); } }while(0) - #define _FWD_E_DIR(E) do{ switch (E) { case 0: E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); break; case 2: E2_DIR_WRITE(INVERT_DIR(E2, HIGH)); } }while(0) - #define _REV_E_DIR(E) do{ switch (E) { case 0: E0_DIR_WRITE(INVERT_DIR(E0, LOW )); break; case 1: E1_DIR_WRITE(INVERT_DIR(E1, LOW )); break; case 2: E2_DIR_WRITE(INVERT_DIR(E2, LOW )); } }while(0) + #define _FWD_E_DIR(E) do{ switch (E) { case 0: E0_DIR_WRITE(HIGH); break; case 1: E1_DIR_WRITE(HIGH); break; case 2: E2_DIR_WRITE(HIGH); } }while(0) + #define _REV_E_DIR(E) do{ switch (E) { case 0: E0_DIR_WRITE(LOW ); break; case 1: E1_DIR_WRITE(LOW ); break; case 2: E2_DIR_WRITE(LOW ); } }while(0) #else #define _E_STEP_WRITE(E,V) do{ if (E == 0) { E0_STEP_WRITE(V); } else { E1_STEP_WRITE(V); } }while(0) - #define _FWD_E_DIR(E) do{ if (E == 0) { E0_DIR_WRITE(INVERT_DIR(E0, HIGH)); } else { E1_DIR_WRITE(INVERT_DIR(E1, HIGH)); } }while(0) - #define _REV_E_DIR(E) do{ if (E == 0) { E0_DIR_WRITE(INVERT_DIR(E0, LOW )); } else { E1_DIR_WRITE(INVERT_DIR(E1, LOW )); } }while(0) + #define _FWD_E_DIR(E) do{ if (E == 0) { E0_DIR_WRITE(HIGH); } else { E1_DIR_WRITE(HIGH); } }while(0) + #define _REV_E_DIR(E) do{ if (E == 0) { E0_DIR_WRITE(LOW ); } else { E1_DIR_WRITE(LOW ); } }while(0) #endif #if HAS_DUPLICATION_MODE @@ -655,8 +692,8 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #define DUPE(N,T,V) E##N##_##T##_WRITE(V); #endif - #define NDIR(N) DUPE(N,DIR,INVERT_DIR(E, HIGH)); - #define RDIR(N) DUPE(N,DIR,INVERT_DIR(E, LOW )); + #define NDIR(N) DUPE(N,DIR,HIGH); + #define RDIR(N) DUPE(N,DIR,LOW ); #define E_STEP_WRITE(E,V) do{ if (extruder_duplication_enabled) { REPEAT2(E_STEPPERS, DUPE, STEP, V); } else _E_STEP_WRITE(E,V); }while(0) #define FWD_E_DIR(E) do{ if (extruder_duplication_enabled) { REPEAT(E_STEPPERS, NDIR); } else _FWD_E_DIR(E); }while(0) @@ -672,13 +709,13 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #elif ENABLED(E_DUAL_STEPPER_DRIVERS) #define E_STEP_WRITE(E,V) do{ E0_STEP_WRITE(V); E1_STEP_WRITE(V); }while(0) - #define FWD_E_DIR(E) do{ constexpr bool d = INVERT_DIR(E0, HIGH); E0_DIR_WRITE(d); E1_DIR_WRITE(INVERT_DIR(E1_VS_E0, d)); }while(0) - #define REV_E_DIR(E) do{ constexpr bool d = INVERT_DIR(E0, LOW ); E0_DIR_WRITE(d); E1_DIR_WRITE(INVERT_DIR(E1_VS_E0, d)); }while(0) + #define FWD_E_DIR(E) do{ E0_DIR_WRITE(HIGH); E1_DIR_WRITE(INVERT_DIR(E1_VS_E0, HIGH)); }while(0) + #define REV_E_DIR(E) do{ E0_DIR_WRITE(LOW ); E1_DIR_WRITE(INVERT_DIR(E1_VS_E0, LOW )); }while(0) -#elif E_STEPPERS +#elif E_STEPPERS == 1 #define E_STEP_WRITE(E,V) E0_STEP_WRITE(V) - #define FWD_E_DIR(E) E0_DIR_WRITE(INVERT_DIR(E0, HIGH)) - #define REV_E_DIR(E) E0_DIR_WRITE(INVERT_DIR(E0, LOW )) + #define FWD_E_DIR(E) E0_DIR_WRITE(HIGH) + #define REV_E_DIR(E) E0_DIR_WRITE(LOW ) #else #define E_STEP_WRITE(E,V) NOOP From 664b35b77c0ddf9562de6e74dd253f5bb33ce6b0 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 5 May 2023 03:03:33 -0500 Subject: [PATCH 122/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Rep?= =?UTF-8?q?lace=20axis=5Fbits=5Ft=20with=20AxisBits=20class=20(#25761)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/types.h | 152 +++++++++++++++++++++++++++++++- Marlin/src/feature/backlash.cpp | 36 ++++---- Marlin/src/feature/backlash.h | 4 +- Marlin/src/feature/runout.h | 2 +- Marlin/src/module/ft_motion.cpp | 10 +-- Marlin/src/module/planner.cpp | 60 ++++++------- Marlin/src/module/planner.h | 2 +- Marlin/src/module/stepper.cpp | 70 ++++++--------- Marlin/src/module/stepper.h | 16 ++-- 9 files changed, 239 insertions(+), 113 deletions(-) diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index af6834c666b3..c403e7439e2b 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -199,8 +199,6 @@ enum AxisEnum : uint8_t { , ALL_AXES_ENUM = 0xFE, NO_AXIS_ENUM = 0xFF }; -typedef bits_t(NUM_AXIS_ENUMS) axis_bits_t; - // // Loop over axes // @@ -789,6 +787,156 @@ struct XYZEval { FI bool operator!=(const XYZEval &rs) const { return !operator==(rs); } }; +#include // for memset + +class AxisBits; + +class AxisBits { +public: + typedef bits_t(NUM_AXIS_ENUMS) el; + union { + el bits; + struct { + union { + bool NUM_AXIS_LIST(x:1, y:1, z:1, i:1, j:1, k:1, u:1, v:1, w:1); + bool NUM_AXIS_LIST(X:1, Y:1, Z:1, I:1, J:1, K:1, U:1, V:1, W:1); + bool NUM_AXIS_LIST(a:1, b:1, c:1, _i:1, _j:1, _k:1, _u:1, _v:1, _w:1); + bool NUM_AXIS_LIST(A:1, B:1, C:1, _I:1, _J:1, _K:1, _U:1, _V:1, _W:1); + }; + #if HAS_EXTRUDERS + union { bool e:1; bool e0:1; }; + #define _EN_ITEM(N) bool e##N:1; + REPEAT_S(1,EXTRUDERS,_EN_ITEM) + #undef _EN_ITEM + #endif + #if ANY(IS_CORE, MARKFORGED_XY, MARKFORGED_YX) + bool hx:1, hy:1, hz:1; + #endif + }; + }; + + AxisBits() { bits = 0; } + + // Constructor, setter, and operator= for bit mask + AxisBits(const el p) { set(p); } + void set(const el p) { bits = el(p); } + FI AxisBits& operator=(const el p) { set(p); return *this; } + + #define MSET(pE,pX,pY,pZ,pI,pJ,pK,pU,pV,pW) LOGICAL_AXIS_CODE(e=pE, x=pX, y=pY, z=pZ, i=pI, j=pJ, k=pK, u=pU, v=pV, w=pW) + + // Constructor, setter, and operator= for XYZE type + AxisBits(const xyze_bool_t &p) { set(p); } + void set(const xyze_bool_t &p) { + MSET(p.e, p.x, p.y, p.z, p.i, p.j, p.k, p.u, p.v, p.w); + } + FI AxisBits& operator=(const xyze_bool_t &p) { set(p); return *this; } + + // Constructor, setter, and operator= for bool array + AxisBits(const bool (&p)[LOGICAL_AXES]) { set(p); } + void set(const bool (&p)[LOGICAL_AXES]) { + MSET(p[E_AXIS], p[X_AXIS], p[Y_AXIS], p[Z_AXIS], + p[I_AXIS], p[J_AXIS], p[K_AXIS], + p[U_AXIS], p[V_AXIS], p[W_AXIS]); + } + FI AxisBits& operator=(const bool (&p)[LOGICAL_AXES]) { set(p); return *this; } + + // Constructor, setter, and operator= for undersized bool arrays + #if LOGICAL_AXES > 1 + AxisBits(const bool (&p)[1]) { set(p); } + FI void set(const bool (&p)[1]) { + MSET(0, p[X_AXIS], 0, 0, 0, 0, 0, 0, 0, 0); + } + FI AxisBits& operator=(const bool (&p)[1]) { set(p); return *this; } + #endif + #if LOGICAL_AXES > 2 + AxisBits(const bool (&p)[2]) { set(p); } + FI void set(const bool (&p)[2]) { + MSET(0, p[X_AXIS], p[Y_AXIS], 0, 0, 0, 0, 0, 0, 0); + } + FI AxisBits& operator=(const bool (&p)[2]) { set(p); return *this; } + #endif + #if LOGICAL_AXES > 3 + AxisBits(const bool (&p)[3]) { set(p); } + FI void set(const bool (&p)[3]) { + MSET(0, p[X_AXIS], p[Y_AXIS], p[Z_AXIS], 0, 0, 0, 0, 0, 0); + } + FI AxisBits& operator=(const bool (&p)[3]) { set(p); return *this; } + #endif + #if LOGICAL_AXES > 4 + AxisBits(const bool (&p)[4]) { set(p); } + FI void set(const bool (&p)[4]) { + MSET(0, p[X_AXIS], p[Y_AXIS], p[Z_AXIS], p[I_AXIS], 0, 0, 0, 0, 0); + } + FI AxisBits& operator=(const bool (&p)[4]) { set(p); return *this; } + #endif + #if LOGICAL_AXES > 5 + AxisBits(const bool (&p)[5]) { set(p); } + FI void set(const bool (&p)[5]) { + MSET(0, p[X_AXIS], p[Y_AXIS], p[Z_AXIS], p[I_AXIS], p[J_AXIS], 0, 0, 0, 0); + } + FI AxisBits& operator=(const bool (&p)[5]) { set(p); return *this; } + #endif + #if LOGICAL_AXES > 6 + AxisBits(const bool (&p)[6]) { set(p); } + FI void set(const bool (&p)[6]) { + MSET(0, p[X_AXIS], p[Y_AXIS], p[Z_AXIS], p[I_AXIS], p[J_AXIS], p[K_AXIS], 0, 0, 0); + } + FI AxisBits& operator=(const bool (&p)[6]) { set(p); return *this; } + #endif + #if LOGICAL_AXES > 7 + AxisBits(const bool (&p)[7]) { set(p); } + FI void set(const bool (&p)[7]) { + MSET(0, p[X_AXIS], p[Y_AXIS], p[Z_AXIS], p[I_AXIS], p[J_AXIS], p[K_AXIS], p[U_AXIS], 0, 0); + } + FI AxisBits& operator=(const bool (&p)[7]) { set(p); return *this; } + #endif + #if LOGICAL_AXES > 8 + AxisBits(const bool (&p)[8]) { set(p); } + FI void set(const bool (&p)[8]) { + MSET(0, p[X_AXIS], p[Y_AXIS], p[Z_AXIS], p[I_AXIS], p[J_AXIS], p[K_AXIS], p[U_AXIS], p[V_AXIS], 0); + } + FI AxisBits& operator=(const bool (&p)[8]) { set(p); return *this; } + #endif + #if LOGICAL_AXES > 9 + AxisBits(const bool (&p)[9]) { set(p); } + FI void set(const bool (&p)[9]) { + MSET(0, p[X_AXIS], p[Y_AXIS], p[Z_AXIS], p[I_AXIS], p[J_AXIS], p[K_AXIS], p[U_AXIS], p[V_AXIS], p[W_AXIS]); + } + FI AxisBits& operator=(const bool (&p)[9]) { set(p); return *this; } + #endif + #undef MSET + + FI const bool toggle(const AxisEnum n) { return TBI(bits, n); } + + // Accessor via an AxisEnum (or any integer) [index] + FI const bool operator[](const int n) const { return TEST(bits, n); } + FI const bool operator[](const AxisEnum n) const { return TEST(bits, n); } + + FI AxisBits& operator|=(const el &p) { bits |= el(p); return *this; } + FI AxisBits& operator&=(const el &p) { bits &= el(p); return *this; } + FI AxisBits& operator^=(const el &p) { bits ^= el(p); return *this; } + + FI AxisBits& operator|=(const AxisBits &p) { bits |= p.bits; return *this; } + FI AxisBits& operator&=(const AxisBits &p) { bits &= p.bits; return *this; } + FI AxisBits& operator^=(const AxisBits &p) { bits ^= p.bits; return *this; } + + FI bool operator==(const AxisBits &p) const { return p.bits == bits; } + FI bool operator!=(const AxisBits &p) const { return p.bits != bits; } + + FI el operator|(const el &p) const { return bits | el(p); } + FI el operator&(const el &p) const { return bits & el(p); } + FI el operator^(const el &p) const { return bits ^ el(p); } + + FI AxisBits operator|(const AxisBits &p) const { return AxisBits(bits | p.bits); } + FI AxisBits operator&(const AxisBits &p) const { return AxisBits(bits & p.bits); } + FI AxisBits operator^(const AxisBits &p) const { return AxisBits(bits ^ p.bits); } + + FI operator bool() const { return !!bits; } + FI operator uint16_t() const { return uint16_t(bits & 0xFFFF); } + FI operator uint32_t() const { return uint32_t(bits); } + +}; + #undef _RECIP #undef _ABS #undef _LS diff --git a/Marlin/src/feature/backlash.cpp b/Marlin/src/feature/backlash.cpp index 13e2cd99eccb..256488762a7d 100644 --- a/Marlin/src/feature/backlash.cpp +++ b/Marlin/src/feature/backlash.cpp @@ -29,7 +29,7 @@ #include "../module/motion.h" #include "../module/planner.h" -axis_bits_t Backlash::last_direction_bits; +AxisBits Backlash::last_direction_bits; xyz_long_t Backlash::residual_error{0}; #ifdef BACKLASH_DISTANCE_MM @@ -63,25 +63,25 @@ Backlash backlash; * spread over multiple segments, smoothing out artifacts even more. */ -void Backlash::add_correction_steps(const int32_t &da, const int32_t &db, const int32_t &dc, const axis_bits_t dm, block_t * const block) { - axis_bits_t changed_dir = last_direction_bits ^ dm; +void Backlash::add_correction_steps(const int32_t &da, const int32_t &db, const int32_t &dc, const AxisBits dm, block_t * const block) { + AxisBits changed_dir = last_direction_bits ^ dm; // Ignore direction change unless steps are taken in that direction #if DISABLED(CORE_BACKLASH) || EITHER(MARKFORGED_XY, MARKFORGED_YX) - if (!da) CBI(changed_dir, X_AXIS); - if (!db) CBI(changed_dir, Y_AXIS); - if (!dc) CBI(changed_dir, Z_AXIS); + if (!da) changed_dir.x = false; + if (!db) changed_dir.y = false; + if (!dc) changed_dir.z = false; #elif CORE_IS_XY - if (!(da + db)) CBI(changed_dir, X_AXIS); - if (!(da - db)) CBI(changed_dir, Y_AXIS); - if (!dc) CBI(changed_dir, Z_AXIS); + if (!(da + db)) changed_dir.x = false; + if (!(da - db)) changed_dir.y = false; + if (!dc) changed_dir.z = false; #elif CORE_IS_XZ - if (!(da + dc)) CBI(changed_dir, X_AXIS); - if (!(da - dc)) CBI(changed_dir, Z_AXIS); - if (!db) CBI(changed_dir, Y_AXIS); + if (!(da + dc)) changed_dir.x = false; + if (!(da - dc)) changed_dir.z = false; + if (!db) changed_dir.y = false; #elif CORE_IS_YZ - if (!(db + dc)) CBI(changed_dir, Y_AXIS); - if (!(db - dc)) CBI(changed_dir, Z_AXIS); - if (!da) CBI(changed_dir, X_AXIS); + if (!(db + dc)) changed_dir.y = false; + if (!(db - dc)) changed_dir.z = false; + if (!da) changed_dir.x = false; #endif last_direction_bits ^= changed_dir; @@ -99,10 +99,10 @@ void Backlash::add_correction_steps(const int32_t &da, const int32_t &db, const LOOP_NUM_AXES(axis) { if (distance_mm[axis]) { - const bool reverse = TEST(dm, axis); + const bool reverse = dm[axis]; // When an axis changes direction, add axis backlash to the residual error - if (TEST(changed_dir, axis)) + if (changed_dir[axis]) residual_error[axis] += (reverse ? -f_corr : f_corr) * distance_mm[axis] * planner.settings.axis_steps_per_mm[axis]; // Decide how much of the residual error to correct in this segment @@ -147,7 +147,7 @@ void Backlash::add_correction_steps(const int32_t &da, const int32_t &db, const int32_t Backlash::get_applied_steps(const AxisEnum axis) { if (axis >= NUM_AXES) return 0; - const bool reverse = TEST(last_direction_bits, axis); + const bool reverse = last_direction_bits[axis]; const int32_t residual_error_axis = residual_error[axis]; diff --git a/Marlin/src/feature/backlash.h b/Marlin/src/feature/backlash.h index 0bace526e53f..14c0fe20e378 100644 --- a/Marlin/src/feature/backlash.h +++ b/Marlin/src/feature/backlash.h @@ -29,7 +29,7 @@ class Backlash { static constexpr uint8_t all_on = 0xFF, all_off = 0x00; private: - static axis_bits_t last_direction_bits; + static AxisBits last_direction_bits; static xyz_long_t residual_error; #if ENABLED(BACKLASH_GCODE) @@ -72,7 +72,7 @@ class Backlash { return has_measurement(X_AXIS) || has_measurement(Y_AXIS) || has_measurement(Z_AXIS); } - static void add_correction_steps(const int32_t &da, const int32_t &db, const int32_t &dc, const axis_bits_t dm, block_t * const block); + static void add_correction_steps(const int32_t &da, const int32_t &db, const int32_t &dc, const AxisBits dm, block_t * const block); static int32_t get_applied_steps(const AxisEnum axis); #if ENABLED(BACKLASH_GCODE) diff --git a/Marlin/src/feature/runout.h b/Marlin/src/feature/runout.h index fb4d0c269479..e6ca9f78cdd9 100644 --- a/Marlin/src/feature/runout.h +++ b/Marlin/src/feature/runout.h @@ -411,7 +411,7 @@ class FilamentSensorBase { // Only trigger on extrusion with XYZ movement to allow filament change and retract/recover. const uint8_t e = b->extruder; const int32_t steps = b->steps.e; - const float mm = (TEST(b->direction_bits, E_AXIS) ? -steps : steps) * planner.mm_per_step[E_AXIS_N(e)]; + const float mm = (b->direction_bits.e ? -steps : steps) * planner.mm_per_step[E_AXIS_N(e)]; if (e < NUM_RUNOUT_SENSORS) mm_countdown.runout[e] -= mm; #if ENABLED(FILAMENT_SWITCH_AND_MOTION) if (e < NUM_MOTION_SENSORS) mm_countdown.motion[e] -= mm; diff --git a/Marlin/src/module/ft_motion.cpp b/Marlin/src/module/ft_motion.cpp index dfef961c7968..2fe38025296d 100644 --- a/Marlin/src/module/ft_motion.cpp +++ b/Marlin/src/module/ft_motion.cpp @@ -484,33 +484,33 @@ void FxdTiCtrl::loadBlockData(block_t * const current_block) { const float totalLength = current_block->millimeters, oneOverLength = 1.0f / totalLength; - const axis_bits_t direction = current_block->direction_bits; + const AxisBits direction = current_block->direction_bits; #if HAS_X_AXIS x_startPosn = x_endPosn_prevBlock; float x_moveDist = current_block->steps.a / planner.settings.axis_steps_per_mm[X_AXIS]; - if (TEST(direction, X_AXIS)) x_moveDist *= -1.0f; + if (direction.x) x_moveDist *= -1.0f; x_Ratio = x_moveDist * oneOverLength; #endif #if HAS_Y_AXIS y_startPosn = y_endPosn_prevBlock; float y_moveDist = current_block->steps.b / planner.settings.axis_steps_per_mm[Y_AXIS]; - if (TEST(direction, Y_AXIS)) y_moveDist *= -1.0f; + if (direction.y) y_moveDist *= -1.0f; y_Ratio = y_moveDist * oneOverLength; #endif #if HAS_Z_AXIS z_startPosn = z_endPosn_prevBlock; float z_moveDist = current_block->steps.c / planner.settings.axis_steps_per_mm[Z_AXIS]; - if (TEST(direction, Z_AXIS)) z_moveDist *= -1.0f; + if (direction.z) z_moveDist *= -1.0f; z_Ratio = z_moveDist * oneOverLength; #endif #if HAS_EXTRUDERS e_startPosn = e_endPosn_prevBlock; float extrusion = current_block->steps.e / planner.settings.axis_steps_per_mm[E_AXIS_N(current_block->extruder)]; - if (TEST(direction, E_AXIS_N(current_block->extruder))) extrusion *= -1.0f; + if (direction.e) extrusion *= -1.0f; e_Ratio = extrusion * oneOverLength; #endif diff --git a/Marlin/src/module/planner.cpp b/Marlin/src/module/planner.cpp index ccf27a502ac1..52519b805c1b 100644 --- a/Marlin/src/module/planner.cpp +++ b/Marlin/src/module/planner.cpp @@ -1968,54 +1968,50 @@ bool Planner::_populate_block( #endif // PREVENT_COLD_EXTRUSION || PREVENT_LENGTHY_EXTRUDE // Compute direction bit-mask for this block - axis_bits_t dm = 0; + AxisBits dm; #if ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) - if (da < 0) SBI(dm, X_HEAD); // Save the toolhead's true direction in X - if (db < 0) SBI(dm, Y_HEAD); // ...and Y - TERN_(HAS_Z_AXIS, if (dc < 0) SBI(dm, Z_AXIS)); + dm.hx = (da < 0); // Save the toolhead's true direction in X + dm.hy = (db < 0); // ...and Y + TERN_(HAS_Z_AXIS, dm.z = (dc < 0)); #endif #if IS_CORE #if CORE_IS_XY - if (da + db < 0) SBI(dm, A_AXIS); // Motor A direction - if (CORESIGN(da - db) < 0) SBI(dm, B_AXIS); // Motor B direction + dm.a = (da + db < 0); // Motor A direction + dm.b = (CORESIGN(da - db) < 0); // Motor B direction #elif CORE_IS_XZ - if (da < 0) SBI(dm, X_HEAD); // Save the toolhead's true direction in X - if (db < 0) SBI(dm, Y_AXIS); - if (dc < 0) SBI(dm, Z_HEAD); // ...and Z - if (da + dc < 0) SBI(dm, A_AXIS); // Motor A direction - if (CORESIGN(da - dc) < 0) SBI(dm, C_AXIS); // Motor C direction + dm.hx = (da < 0); // Save the toolhead's true direction in X + dm.y = (db < 0); + dm.hz = (dc < 0); // ...and Z + dm.a = (da + dc < 0); // Motor A direction + dm.c = (CORESIGN(da - dc) < 0); // Motor C direction #elif CORE_IS_YZ - if (da < 0) SBI(dm, X_AXIS); - if (db < 0) SBI(dm, Y_HEAD); // Save the toolhead's true direction in Y - if (dc < 0) SBI(dm, Z_HEAD); // ...and Z - if (db + dc < 0) SBI(dm, B_AXIS); // Motor B direction - if (CORESIGN(db - dc) < 0) SBI(dm, C_AXIS); // Motor C direction + dm.x = (da < 0); + dm.hy = (db < 0); // Save the toolhead's true direction in Y + dm.hz = (dc < 0); // ...and Z + dm.b = (db + dc < 0); // Motor B direction + dm.c = (CORESIGN(db - dc) < 0); // Motor C direction #endif #elif ENABLED(MARKFORGED_XY) - if (da + db < 0) SBI(dm, A_AXIS); // Motor A direction - if (db < 0) SBI(dm, B_AXIS); // Motor B direction + dm.a = (da + db < 0); // Motor A direction + dm.b = (db < 0); // Motor B direction #elif ENABLED(MARKFORGED_YX) - if (da < 0) SBI(dm, A_AXIS); // Motor A direction - if (db + da < 0) SBI(dm, B_AXIS); // Motor B direction + dm.a = (da < 0); // Motor A direction + dm.b = (db + da < 0); // Motor B direction #else XYZ_CODE( - if (da < 0) SBI(dm, X_AXIS), - if (db < 0) SBI(dm, Y_AXIS), - if (dc < 0) SBI(dm, Z_AXIS) + dm.x = (da < 0), + dm.y = (db < 0), + dm.z = (dc < 0) ); #endif SECONDARY_AXIS_CODE( - if (di < 0) SBI(dm, I_AXIS), - if (dj < 0) SBI(dm, J_AXIS), - if (dk < 0) SBI(dm, K_AXIS), - if (du < 0) SBI(dm, U_AXIS), - if (dv < 0) SBI(dm, V_AXIS), - if (dw < 0) SBI(dm, W_AXIS) + dm.i = (di < 0), dm.j = (dj < 0), dm.k = (dk < 0), + dm.u = (du < 0), dm.v = (dv < 0), dm.w = (dw < 0) ); #if HAS_EXTRUDERS - if (de < 0) SBI(dm, E_AXIS); + dm.e = (de < 0); const float esteps_float = de * e_factor[extruder]; const uint32_t esteps = ABS(esteps_float) + 0.5f; #else @@ -2435,11 +2431,11 @@ bool Planner::_populate_block( #ifdef XY_FREQUENCY_LIMIT - static axis_bits_t old_direction_bits; // = 0 + static AxisBits old_direction_bits; // = 0 if (xy_freq_limit_hz) { // Check and limit the xy direction change frequency - const axis_bits_t direction_change = block->direction_bits ^ old_direction_bits; + const AxisBits direction_change = block->direction_bits ^ old_direction_bits; old_direction_bits = block->direction_bits; segment_time_us = LROUND(float(segment_time_us) / speed_factor); diff --git a/Marlin/src/module/planner.h b/Marlin/src/module/planner.h index e072e94dbd86..eb0f072f4bf0 100644 --- a/Marlin/src/module/planner.h +++ b/Marlin/src/module/planner.h @@ -246,7 +246,7 @@ typedef struct PlannerBlock { uint32_t acceleration_rate; // The acceleration rate used for acceleration calculation #endif - axis_bits_t direction_bits; // Direction bits set for this block, where 1 is negative motion + AxisBits direction_bits; // Direction bits set for this block, where 1 is negative motion // Advance extrusion #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 8a4d801e7655..140a539ef36c 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -166,8 +166,8 @@ stepper_flags_t Stepper::axis_enabled; // {0} block_t* Stepper::current_block; // (= nullptr) A pointer to the block currently being traced -axis_bits_t Stepper::last_direction_bits, // = 0 - Stepper::axis_did_move; // = 0 +AxisBits Stepper::last_direction_bits, // = 0 + Stepper::axis_did_move; // = 0 bool Stepper::abort_current_block; @@ -624,15 +624,11 @@ void Stepper::apply_directions() { DIR_WAIT_BEFORE(); - TERN_(HAS_X_DIR, SET_STEP_DIR(X)); // A - TERN_(HAS_Y_DIR, SET_STEP_DIR(Y)); // B - TERN_(HAS_Z_DIR, SET_STEP_DIR(Z)); // C - TERN_(HAS_I_DIR, SET_STEP_DIR(I)); - TERN_(HAS_J_DIR, SET_STEP_DIR(J)); - TERN_(HAS_K_DIR, SET_STEP_DIR(K)); - TERN_(HAS_U_DIR, SET_STEP_DIR(U)); - TERN_(HAS_V_DIR, SET_STEP_DIR(V)); - TERN_(HAS_W_DIR, SET_STEP_DIR(W)); + NUM_AXIS_CODE( + SET_STEP_DIR(X), SET_STEP_DIR(Y), SET_STEP_DIR(Z), // ABC + SET_STEP_DIR(I), SET_STEP_DIR(J), SET_STEP_DIR(K), + SET_STEP_DIR(U), SET_STEP_DIR(V), SET_STEP_DIR(W) + ); #if HAS_EXTRUDERS // Because this is valid for the whole block we don't know @@ -1829,7 +1825,7 @@ void Stepper::pulse_phase_isr() { de += step_fwd ? -128 : 128; \ if ((MAXDIR(AXIS) && step_bak) || (MINDIR(AXIS) && step_fwd)) { \ { USING_TIMED_PULSE(); START_TIMED_PULSE(); AWAIT_LOW_PULSE(); } \ - TBI(last_direction_bits, _AXIS(AXIS)); \ + last_direction_bits.toggle(_AXIS(AXIS)); \ DIR_WAIT_BEFORE(); \ SET_STEP_DIR(AXIS); \ DIR_WAIT_AFTER(); \ @@ -1861,11 +1857,11 @@ void Stepper::pulse_phase_isr() { #if STEPPER_PAGE_FORMAT == SP_4x4D_128 - #define PAGE_SEGMENT_UPDATE(AXIS, VALUE) do{ \ - if ((VALUE) < 7) SBI(dm, _AXIS(AXIS)); \ - else if ((VALUE) > 7) CBI(dm, _AXIS(AXIS)); \ - page_step_state.sd[_AXIS(AXIS)] = VALUE; \ - page_step_state.bd[_AXIS(AXIS)] += VALUE; \ + #define PAGE_SEGMENT_UPDATE(AXIS, VALUE) do{ \ + if ((VALUE) < 7) dm[_AXIS(AXIS)] = true; \ + else if ((VALUE) > 7) dm[_AXIS(AXIS)] = false; \ + page_step_state.sd[_AXIS(AXIS)] = VALUE; \ + page_step_state.bd[_AXIS(AXIS)] += VALUE; \ }while(0) #define PAGE_PULSE_PREP(AXIS) do{ \ @@ -1881,7 +1877,7 @@ void Stepper::pulse_phase_isr() { case 0: { const uint8_t low = page_step_state.page[page_step_state.segment_idx], high = page_step_state.page[page_step_state.segment_idx + 1]; - axis_bits_t dm = last_direction_bits; + const AxisBits dm = last_direction_bits; PAGE_SEGMENT_UPDATE(X, low >> 4); PAGE_SEGMENT_UPDATE(Y, low & 0xF); @@ -2417,7 +2413,7 @@ hal_timer_t Stepper::block_phase_isr() { la_interval = calc_timer_interval((reverse_e ? la_step_rate - step_rate : step_rate - la_step_rate) >> current_block->la_scaling); if (reverse_e != motor_direction(E_AXIS)) { - TBI(last_direction_bits, E_AXIS); + last_direction_bits.toggle(E_AXIS); count_direction.e = -count_direction.e; DIR_WAIT_BEFORE(); @@ -2648,7 +2644,7 @@ hal_timer_t Stepper::block_phase_isr() { #define Z_MOVE_TEST !!current_block->steps.c #endif - axis_bits_t axis_bits = 0; + AxisBits axis_bits; NUM_AXIS_CODE( if (X_MOVE_TEST) SBI(axis_bits, A_AXIS), if (Y_MOVE_TEST) SBI(axis_bits, B_AXIS), @@ -2692,24 +2688,24 @@ hal_timer_t Stepper::block_phase_isr() { #if ENABLED(INPUT_SHAPING_X) if (shaping_x.enabled) { - const int64_t steps = TEST(current_block->direction_bits, X_AXIS) ? -int64_t(current_block->steps.x) : int64_t(current_block->steps.x); + const int64_t steps = current_block->direction_bits.x ? -int64_t(current_block->steps.x) : int64_t(current_block->steps.x); shaping_x.last_block_end_pos += steps; // If there are any remaining echos unprocessed, then direction change must // be delayed and processed in PULSE_PREP_SHAPING. This will cause half a step // to be missed, which will need recovering and this can be done through shaping_x.remainder. - shaping_x.forward = !TEST(current_block->direction_bits, X_AXIS); - if (!ShapingQueue::empty_x()) SET_BIT_TO(current_block->direction_bits, X_AXIS, TEST(last_direction_bits, X_AXIS)); + shaping_x.forward = !current_block->direction_bits.x; + if (!ShapingQueue::empty_x()) current_block->direction_bits.x = last_direction_bits.x; } #endif // Y follows the same logic as X (but the comments aren't repeated) #if ENABLED(INPUT_SHAPING_Y) if (shaping_y.enabled) { - const int64_t steps = TEST(current_block->direction_bits, Y_AXIS) ? -int64_t(current_block->steps.y) : int64_t(current_block->steps.y); + const int64_t steps = current_block->direction_bits.y ? -int64_t(current_block->steps.y) : int64_t(current_block->steps.y); shaping_y.last_block_end_pos += steps; - shaping_y.forward = !TEST(current_block->direction_bits, Y_AXIS); - if (!ShapingQueue::empty_y()) SET_BIT_TO(current_block->direction_bits, Y_AXIS, TEST(last_direction_bits, Y_AXIS)); + shaping_y.forward = !current_block->direction_bits.y; + if (!ShapingQueue::empty_y()) current_block->direction_bits.y = last_direction_bits.y; } #endif @@ -2912,24 +2908,10 @@ void Stepper::init() { Z4_DIR_INIT(); #endif #endif - #if HAS_I_DIR - I_DIR_INIT(); - #endif - #if HAS_J_DIR - J_DIR_INIT(); - #endif - #if HAS_K_DIR - K_DIR_INIT(); - #endif - #if HAS_U_DIR - U_DIR_INIT(); - #endif - #if HAS_V_DIR - V_DIR_INIT(); - #endif - #if HAS_W_DIR - W_DIR_INIT(); - #endif + SECONDARY_AXIS_CODE( + I_DIR_INIT(), J_DIR_INIT(), K_DIR_INIT(), + U_DIR_INIT(), V_DIR_INIT(), W_DIR_INIT() + ); #if HAS_E0_DIR E0_DIR_INIT(); #endif diff --git a/Marlin/src/module/stepper.h b/Marlin/src/module/stepper.h index 532db65dd93c..9e45ffa45f6e 100644 --- a/Marlin/src/module/stepper.h +++ b/Marlin/src/module/stepper.h @@ -317,17 +317,17 @@ class Stepper { #endif #if ENABLED(FREEZE_FEATURE) - static bool frozen; // Set this flag to instantly freeze motion + static bool frozen; // Set this flag to instantly freeze motion #endif private: - static block_t* current_block; // A pointer to the block currently being traced + static block_t* current_block; // A pointer to the block currently being traced - static axis_bits_t last_direction_bits, // The next stepping-bits to be output - axis_did_move; // Last Movement in the given direction is not null, as computed when the last movement was fetched from planner + static AxisBits last_direction_bits, // The next stepping-bits to be output + axis_did_move; // Last Movement in the given direction is not null, as computed when the last movement was fetched from planner - static bool abort_current_block; // Signals to the stepper that current block should be aborted + static bool abort_current_block; // Signals to the stepper that current block should be aborted #if ENABLED(X_DUAL_ENDSTOPS) static bool locked_X_motor, locked_X2_motor; @@ -523,10 +523,10 @@ class Stepper { FORCE_INLINE static void quick_stop() { abort_current_block = true; } // The direction of a single motor. A true result indicates reversed or negative motion. - FORCE_INLINE static bool motor_direction(const AxisEnum axis) { return TEST(last_direction_bits, axis); } + FORCE_INLINE static bool motor_direction(const AxisEnum axis) { return last_direction_bits[axis]; } // The last movement direction was not null on the specified axis. Note that motor direction is not necessarily the same. - FORCE_INLINE static bool axis_is_moving(const AxisEnum axis) { return TEST(axis_did_move, axis); } + FORCE_INLINE static bool axis_is_moving(const AxisEnum axis) { return axis_did_move[axis]; } // Handle a triggered endstop static void endstop_triggered(const AxisEnum axis); @@ -626,7 +626,7 @@ class Stepper { static void apply_directions(); // Set direction bits and update all stepper DIR states - static void set_directions(const axis_bits_t bits) { + static void set_directions(const AxisBits bits) { last_direction_bits = bits; apply_directions(); } From f8570257f9595cd2c444a66325aefd8396c178f6 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 5 May 2023 15:37:27 -0500 Subject: [PATCH 123/427] =?UTF-8?q?=F0=9F=90=9B=20AxisBits=20union=20fix?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/types.h | 47 ++++++++++++++++++++++++++++++++--------- 1 file changed, 37 insertions(+), 10 deletions(-) diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index c403e7439e2b..e86880674b6b 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -796,21 +796,48 @@ class AxisBits { typedef bits_t(NUM_AXIS_ENUMS) el; union { el bits; + // x, y, z ... e0, e1, e2 ... hx, hy, hz struct { - union { - bool NUM_AXIS_LIST(x:1, y:1, z:1, i:1, j:1, k:1, u:1, v:1, w:1); - bool NUM_AXIS_LIST(X:1, Y:1, Z:1, I:1, J:1, K:1, U:1, V:1, W:1); - bool NUM_AXIS_LIST(a:1, b:1, c:1, _i:1, _j:1, _k:1, _u:1, _v:1, _w:1); - bool NUM_AXIS_LIST(A:1, B:1, C:1, _I:1, _J:1, _K:1, _U:1, _V:1, _W:1); - }; - #if HAS_EXTRUDERS - union { bool e:1; bool e0:1; }; - #define _EN_ITEM(N) bool e##N:1; + bool NUM_AXIS_LIST(x:1, y:1, z:1, i:1, j:1, k:1, u:1, v:1, w:1); + #define _EN_ITEM(N) bool e##N:1; + REPEAT(EXTRUDERS,_EN_ITEM) + #undef _EN_ITEM + #if ANY(IS_CORE, MARKFORGED_XY, MARKFORGED_YX) + bool hx:1, hy:1, hz:1; + #endif + }; + // X, Y, Z ... E0, E1, E2 ... HX, HY, HZ + struct { + bool NUM_AXIS_LIST(X:1, Y:1, Z:1, I:1, J:1, K:1, U:1, V:1, W:1); + #define _EN_ITEM(N) bool E##N:1; + REPEAT(EXTRUDERS,_EN_ITEM) + #undef _EN_ITEM + #if ANY(IS_CORE, MARKFORGED_XY, MARKFORGED_YX) + bool HX:1, HY:1, HZ:1; + #endif + }; + // a, b, c, e ... ha, hb, hc + struct { + bool LOGICAL_AXIS_LIST(e:1, a:1, b:1, c:1, _i:1, _j:1, _k:1, _u:1, _v:1, _w:1); + #if EXTRUDERS > 1 + #define _EN_ITEM(N) bool _e##N:1; REPEAT_S(1,EXTRUDERS,_EN_ITEM) #undef _EN_ITEM #endif #if ANY(IS_CORE, MARKFORGED_XY, MARKFORGED_YX) - bool hx:1, hy:1, hz:1; + bool ha:1, hb:1, hc:1; + #endif + }; + // A, B, C, E ... HA, HB, HC + struct { + bool LOGICAL_AXIS_LIST(E:1, A:1, B:1, C:1, _I:1, _J:1, _K:1, _U:1, _V:1, _W:1); + #if EXTRUDERS > 1 + #define _EN_ITEM(N) bool _E##N:1; + REPEAT_S(1,EXTRUDERS,_EN_ITEM) + #undef _EN_ITEM + #endif + #if ANY(IS_CORE, MARKFORGED_XY, MARKFORGED_YX) + bool HA:1, HB:1, HC:1; #endif }; }; From 9cc16f87e225d4f9f4ca002b2c33a6fda3da5c25 Mon Sep 17 00:00:00 2001 From: Dmitry Plastinin Date: Sat, 6 May 2023 00:05:30 +0300 Subject: [PATCH 124/427] =?UTF-8?q?=F0=9F=9A=B8=20TS35=20portrait=20displa?= =?UTF-8?q?y=20(#25629)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/Conditionals_LCD.h | 11 ++- Marlin/src/lcd/tft/ui_480x320.cpp | 137 +++++++++++++++++------------- Marlin/src/lcd/tft/ui_480x320.h | 65 ++++++++++++++ 3 files changed, 152 insertions(+), 61 deletions(-) diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 44072ef4a2a9..bee4abf7a70d 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -1686,8 +1686,13 @@ #define TFT_HEIGHT 272 #define GRAPHICAL_TFT_UPSCALE 2 #elif ENABLED(TFT_RES_480x320) - #define TFT_WIDTH 480 - #define TFT_HEIGHT 320 + #if ENABLED(TFT_COLOR_UI_PORTRAIT) + #define TFT_WIDTH 320 + #define TFT_HEIGHT 480 + #else + #define TFT_WIDTH 480 + #define TFT_HEIGHT 320 + #endif #define GRAPHICAL_TFT_UPSCALE 3 #elif ENABLED(TFT_RES_1024x600) #define TFT_WIDTH 1024 @@ -1708,7 +1713,7 @@ #elif ENABLED(TFT_INTERFACE_FSMC) #define TFT_320x240 #endif - #elif TFT_HEIGHT == 320 + #elif TFT_HEIGHT == 320 || (TFT_HEIGHT == 480 && ENABLED(TFT_COLOR_UI_PORTRAIT)) #if ENABLED(TFT_INTERFACE_SPI) #define TFT_480x320_SPI #elif ENABLED(TFT_INTERFACE_FSMC) diff --git a/Marlin/src/lcd/tft/ui_480x320.cpp b/Marlin/src/lcd/tft/ui_480x320.cpp index efb58754c79e..bc4ea0e5e223 100644 --- a/Marlin/src/lcd/tft/ui_480x320.cpp +++ b/Marlin/src/lcd/tft/ui_480x320.cpp @@ -49,9 +49,9 @@ void MarlinUI::tft_idle() { #if ENABLED(TOUCH_SCREEN) if (TERN0(HAS_TOUCH_SLEEP, lcd_sleep_task())) return; if (draw_menu_navigation) { - add_control(104, TFT_HEIGHT - 34, PAGE_UP, imgPageUp, encoderTopLine > 0); - add_control(344, TFT_HEIGHT - 34, PAGE_DOWN, imgPageDown, encoderTopLine + LCD_HEIGHT < screen_items); - add_control(224, TFT_HEIGHT - 34, BACK, imgBack); + add_control(TFT_WIDTH / 6 - 16, TFT_HEIGHT - 34, PAGE_UP, imgPageUp, encoderTopLine > 0); + add_control(TFT_WIDTH / 2 - 16, TFT_HEIGHT - 34, PAGE_DOWN, imgPageDown, encoderTopLine + LCD_HEIGHT < screen_items); + add_control(5 * TFT_WIDTH / 6 - 16, TFT_HEIGHT - 34, BACK, imgBack); draw_menu_navigation = false; } #endif @@ -222,11 +222,10 @@ void MarlinUI::draw_status_screen() { TERN_(TOUCH_SCREEN, touch.clear()); - // heaters and fan - uint16_t i, x, y = TFT_STATUS_TOP_Y; - - for (i = 0 ; i < ITEMS_COUNT; i++) { - x = (TFT_WIDTH / ITEMS_COUNT - 80) / 2 + (TFT_WIDTH * i / ITEMS_COUNT); + // Statuses of heaters and fans + uint16_t y = STATUS_MARGIN_SIZE; + for (uint16_t i = 0; i < ITEMS_COUNT; i++) { + uint16_t x = (TFT_WIDTH / ITEMS_COUNT - 80) / 2 + (TFT_WIDTH * i / ITEMS_COUNT); switch (i) { #if HAS_EXTRUDERS case ITEM_E0: draw_heater_status(x, y, H_E0); break; @@ -252,12 +251,13 @@ void MarlinUI::draw_status_screen() { } } - y += TERN(HAS_UI_480x272, 120, 128); + y += STATUS_MARGIN_SIZE + 114; - // coordinates - tft.canvas(4, y, TFT_WIDTH - 8, FONT_LINE_HEIGHT); + // Coordinates + constexpr uint16_t coords_width = TFT_WIDTH - 8; + tft.canvas((TFT_WIDTH - coords_width) / 2, y, coords_width, FONT_LINE_HEIGHT); tft.set_background(COLOR_BACKGROUND); - tft.add_rectangle(0, 0, TFT_WIDTH - 8, FONT_LINE_HEIGHT, COLOR_AXIS_HOMED); + tft.add_rectangle(0, 0, coords_width, FONT_LINE_HEIGHT, COLOR_AXIS_HOMED); if (TERN0(LCD_SHOW_E_TOTAL, printingIsActive())) { #if ENABLED(LCD_SHOW_E_TOTAL) @@ -270,67 +270,86 @@ void MarlinUI::draw_status_screen() { #endif } else { - tft.add_text( 16, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED , "X"); + // Coords in mask "X____Y____Z____" + tft_string.set("X"); + tft.add_text(coords_width / 30 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, tft_string); + const bool nhx = axis_should_home(X_AXIS); tft_string.set(blink && nhx ? "?" : ftostr4sign(LOGICAL_X_POSITION(current_position.x))); - tft.add_text(102 - tft_string.width(), tft_string.vcenter(FONT_LINE_HEIGHT), nhx ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + tft_string.ltrim(); + tft.add_text(coords_width / 5 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), nhx ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + + tft_string.set("Y"); + tft.add_text(11 * coords_width / 30 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, tft_string); - tft.add_text(192, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED , "Y"); const bool nhy = axis_should_home(Y_AXIS); tft_string.set(blink && nhy ? "?" : ftostr4sign(LOGICAL_Y_POSITION(current_position.y))); - tft.add_text(280 - tft_string.width(), tft_string.vcenter(FONT_LINE_HEIGHT), nhy ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + tft_string.ltrim(); + tft.add_text(8 * coords_width / 15 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), nhy ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); } - tft.add_text(330, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED , "Z"); - uint16_t offset = 32; + + tft_string.set("Z"); + tft.add_text(7 * coords_width / 10 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, tft_string); + const bool nhz = axis_should_home(Z_AXIS); - if (blink && nhz) - tft_string.set('?'); - else { - const float z = LOGICAL_Z_POSITION(current_position.z); - tft_string.set(ftostr52sp((int16_t)z)); - tft_string.rtrim(); - offset += tft_string.width(); + tft_string.set(blink && nhz ? "?" : ftostr52sp(LOGICAL_Z_POSITION(current_position.z))); + tft_string.ltrim(); + tft_string.rtrim(); + tft.add_text(13 * coords_width / 15 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), nhz ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); - tft_string.set(ftostr52sp(z)); - offset -= tft_string.width(); - } - tft.add_text(455 - tft_string.width() - offset, tft_string.vcenter(FONT_LINE_HEIGHT), nhz ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); TERN_(TOUCH_SCREEN, touch.add_control(MOVE_AXIS, 4, y, TFT_WIDTH - 8, FONT_LINE_HEIGHT)); - y += TERN(HAS_UI_480x272, 34, 48); - // feed rate - tft.canvas(96, y, 128, 32); - tft.set_background(COLOR_BACKGROUND); + y += STATUS_MARGIN_SIZE + 34; + + // Feed rate (preparing) + tft_string.set(i16tostr3rj(feedrate_percentage)); + tft_string.add("%"); + uint16_t component_width = 36 + tft_string.width(); // 32px icon size + 4px margin before text uint16_t color = feedrate_percentage == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; + uint16_t x = FEEDRATE_X(component_width); + + // Feed rate (drawing) + tft.canvas(x, y, component_width, 32); + tft.set_background(COLOR_BACKGROUND); tft.add_image(0, 0, imgFeedRate, color); - tft_string.set(i16tostr3rj(feedrate_percentage)); - tft_string.add('%'); tft.add_text(36, tft_string.vcenter(30), color , tft_string); - TERN_(TOUCH_SCREEN, touch.add_control(FEEDRATE, 96, y, 128, 32)); + TERN_(TOUCH_SCREEN, touch.add_control(FEEDRATE, x, y, component_width, 32)); - // flow rate - tft.canvas(284, y, 128, 32); - tft.set_background(COLOR_BACKGROUND); - color = planner.flow_percentage[0] == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; - tft.add_image(0, 0, imgFlowRate, color); + // Flow rate (preparing) tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); tft_string.add('%'); + component_width = 36 + tft_string.width(); + color = planner.flow_percentage[0] == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; + x = FLOWRATE_X(component_width); + + // Flow rate (drawing) + tft.canvas(x, y, component_width, 32); + tft.set_background(COLOR_BACKGROUND); + tft.add_image(0, 0, imgFlowRate, color); tft.add_text(36, tft_string.vcenter(30), color , tft_string); - TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, 284, y, 128, 32, active_extruder)); + TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, x, y, component_width, 32, active_extruder)); + + #if TFT_COLOR_UI_PORTRAIT || DISABLED(TOUCH_SCREEN) + y += STATUS_MARGIN_SIZE + 32; + #endif #if ENABLED(TOUCH_SCREEN) - add_control(404, y, menu_main, imgSettings); + // Settings button + add_control(SETTINGS_X, y, menu_main, imgSettings); + + // SD-card button / Cancel button #if HAS_MEDIA const bool cm = card.isMounted(), pa = printingIsActive(); if (cm && pa) - add_control(12, y, STOP, imgCancel, true, COLOR_CONTROL_CANCEL); + add_control(SDCARD_X, y, STOP, imgCancel, true, COLOR_CONTROL_CANCEL); else - add_control(12, y, menu_media, imgSD, cm && !pa, COLOR_CONTROL_ENABLED, COLOR_CONTROL_DISABLED); + add_control(SDCARD_X, y, menu_media, imgSD, cm && !pa, COLOR_CONTROL_ENABLED, COLOR_CONTROL_DISABLED); // 64px icon size #endif + + y += STATUS_MARGIN_SIZE + TERN(TFT_COLOR_UI_PORTRAIT, 64, 44); #endif - y += TERN(HAS_UI_480x272, 39, 44); - // print duration + // Print duration char buffer[14]; duration_t elapsed = print_job_timer.duration(); elapsed.toDigital(buffer); @@ -340,8 +359,9 @@ void MarlinUI::draw_status_screen() { tft_string.set(buffer); tft.add_text(tft_string.center(128), tft_string.vcenter(29), COLOR_PRINT_TIME, tft_string); - y += TERN(HAS_UI_480x272, 29, 36); - // progress bar + y += STATUS_MARGIN_SIZE + 29; + + // Progress bar const uint8_t progress = ui.get_progress_percent(); tft.canvas(4, y, TFT_WIDTH - 8, 9); tft.set_background(COLOR_PROGRESS_BG); @@ -349,8 +369,9 @@ void MarlinUI::draw_status_screen() { if (progress) tft.add_bar(1, 1, ((TFT_WIDTH - 10) * progress) / 100, 7, COLOR_PROGRESS_BAR); - y += 15; - // status message + y += STATUS_MARGIN_SIZE + 7; + + // Status message tft.canvas(0, y, TFT_WIDTH, FONT_LINE_HEIGHT); tft.set_background(COLOR_BACKGROUND); tft_string.set(status_message); @@ -397,7 +418,7 @@ void MenuEditItemBase::draw_edit_screen(FSTR_P const fstr, const char * const va if (ui.can_show_slider()) { - #define SLIDER_LENGTH 336 + #define SLIDER_LENGTH TFT_WIDTH * 0.7 #define SLIDER_Y_POSITION 186 tft.canvas((TFT_WIDTH - SLIDER_LENGTH) / 2, SLIDER_Y_POSITION, SLIDER_LENGTH, 16); @@ -420,9 +441,9 @@ void MenuEditItemBase::draw_edit_screen(FSTR_P const fstr, const char * const va void TFT::draw_edit_screen_buttons() { #if ENABLED(TOUCH_SCREEN) - add_control(64, TFT_HEIGHT - 64, DECREASE, imgDecrease); - add_control(352, TFT_HEIGHT - 64, INCREASE, imgIncrease); - add_control(208, TFT_HEIGHT - 64, CLICK, imgConfirm); + add_control((TFT_WIDTH - 3 * 64) / 6, TFT_HEIGHT - 64, DECREASE, imgDecrease); + add_control((TFT_WIDTH - 64) / 2, TFT_HEIGHT - 64, INCREASE, imgIncrease); + add_control((TFT_WIDTH * 5 - 3 * 64) / 6, TFT_HEIGHT - 64, CLICK, imgConfirm); #endif } @@ -451,8 +472,8 @@ void MenuItem_confirm::draw_select_screen(FSTR_P const yes, FSTR_P const no, con tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); } #if ENABLED(TOUCH_SCREEN) - if (no) add_control( 88, TFT_HEIGHT - 64, CANCEL, imgCancel, true, yesno ? HALF(COLOR_CONTROL_CANCEL) : COLOR_CONTROL_CANCEL); - if (yes) add_control(328, TFT_HEIGHT - 64, CONFIRM, imgConfirm, true, yesno ? COLOR_CONTROL_CONFIRM : HALF(COLOR_CONTROL_CONFIRM)); + if (no) add_control(TFT_WIDTH / 4 - 32, TFT_HEIGHT - 64, CANCEL, imgCancel, true, yesno ? HALF(COLOR_CONTROL_CANCEL) : COLOR_CONTROL_CANCEL); + if (yes) add_control(TFT_WIDTH * 3 / 4 - 32, TFT_HEIGHT - 64, CONFIRM, imgConfirm, true, yesno ? COLOR_CONTROL_CONFIRM : HALF(COLOR_CONTROL_CONFIRM)); #endif } @@ -898,7 +919,7 @@ void MarlinUI::move_axis_screen() { drawAxisValue(Z_AXIS); // ROW 4 -> step_size disable steppers back - y = TFT_HEIGHT - Y_MARGIN - 32; // + y = TFT_HEIGHT - Y_MARGIN - 32; x = TFT_WIDTH / 2 - CUR_STEP_VALUE_WIDTH / 2; motionAxisState.stepValuePos.x = x; motionAxisState.stepValuePos.y = y; diff --git a/Marlin/src/lcd/tft/ui_480x320.h b/Marlin/src/lcd/tft/ui_480x320.h index d63ae02c09ff..00341650c123 100644 --- a/Marlin/src/lcd/tft/ui_480x320.h +++ b/Marlin/src/lcd/tft/ui_480x320.h @@ -63,4 +63,69 @@ #define MENU_LINE_HEIGHT (MENU_ITEM_HEIGHT + 2) +/** + * Status screen - portrait layout: + * + * | FAN E0 BED .. | - 120px + * | Coordinates | - FONT_LINE_HEIGHT + * | Feedrate Flowrate | - 32px + * | SD Settings | - 64px if ENABLED(TOUCHSCREEN), else 0px + * | Print duration time | - 29px + * | Progress bar | - 7px + * | Status message | - FONT_LINE_HEIGHT + * + * Summary with touchscreen: + * - Total height: 252px + 2 * FONT_LINE_HEIGHT (320px if FONT_LINE_HEIGHT is 34px) + * - Rows count: 7 + * - Margins count: 8 + * + * Summary without touchscreen: + * - Total height: 188px + 2 * FONT_LINE_HEIGHT (256px if FONT_LINE_HEIGHT is 34px) + * - Rows count: 6 + * - Margins count: 7 + * + * Status screen - landscape layout: + * + * | FAN E0 BED ... | - 120px + * | Coordinates | - FONT_LINE_HEIGHT + * | SD Flowrate Feedrate Settings | - 44px for TOUCHSCREEN, else 32px + * | Print duration time | - 29px + * | Progress bar | - 7px + * | Status message | - FONT_LINE_HEIGHT + * + * Summary with touchscreen: + * - Total height: 200px (268px if FONT_LINE_HEIGHT is 34px) + * - Rows count: 6 + * - Margins count: 7 + * + * Summary without touchscreen: + * - Total height: 188px + 2 * FONT_LINE_HEIGHT (256px if FONT_LINE_HEIGHT is 34px) + * - Rows count: 6 + * - Margins count: 7 + */ +#ifdef TFT_COLOR_UI_PORTRAIT + #if ENABLED(TOUCH_SCREEN) + #define STATUS_TOTAL_ROWS_HEIGHT (2 * FONT_LINE_HEIGHT + 120 + 32 + 64 + 29 + 7) + #define STATUS_MARGINS_REGIONS 8 + #else + #define STATUS_TOTAL_ROWS_HEIGHT (2 * FONT_LINE_HEIGHT + 120 + 32 + 29 + 7) + #define STATUS_MARGINS_REGIONS 7 + #endif + + #define FEEDRATE_X(W) ((TFT_WIDTH - 2 * (W)) / 4) + #define FLOWRATE_X(W) ((3 * TFT_WIDTH - 2 * (W)) / 4) + #define SETTINGS_X (3 * TFT_WIDTH / 4 - 32) + #define SDCARD_X (TFT_WIDTH / 4 - 32) +#else + #define STATUS_TOTAL_ROWS_HEIGHT (2 * FONT_LINE_HEIGHT + 120 + TERN(TOUCH_SCREEN, 44, 32) + 29 + 7) + #define STATUS_MARGINS_REGIONS 7 + + #define FEEDRATE_X(W) (3 * TFT_WIDTH / 8 - (W) / 2) + #define FLOWRATE_X(W) (5 * TFT_WIDTH / 8 - (W) / 2) + #define SETTINGS_X (TFT_WIDTH / 8 - 32) + #define SDCARD_X (7 * TFT_WIDTH / 8 - 32) +#endif + +#define STATUS_MARGIN_SIZE ((TFT_HEIGHT - STATUS_TOTAL_ROWS_HEIGHT) / STATUS_MARGINS_REGIONS) + #include "tft_font.h" From 2e06e05d7c2e823ca15bf987331619563577c514 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 6 May 2023 00:19:16 +0000 Subject: [PATCH 125/427] [cron] Bump distribution date (2023-05-06) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 8bf3b8b0bd2f..acd89bc7e8b5 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-05" +//#define STRING_DISTRIBUTION_DATE "2023-05-06" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index ff2447bfd007..c52c32637451 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-05" + #define STRING_DISTRIBUTION_DATE "2023-05-06" #endif /** From 9b883704bc6a9269ec7bfbc1377050d579abcace Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 5 May 2023 19:31:18 -0500 Subject: [PATCH 126/427] =?UTF-8?q?=F0=9F=9A=B8=20Reorder=20some=20Menu=20?= =?UTF-8?q?Items?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/menu/menu_bed_leveling.cpp | 4 ++ Marlin/src/lcd/menu/menu_motion.cpp | 70 +++++++++++------------ 2 files changed, 39 insertions(+), 35 deletions(-) diff --git a/Marlin/src/lcd/menu/menu_bed_leveling.cpp b/Marlin/src/lcd/menu/menu_bed_leveling.cpp index a7fb54f68ddd..3d6af0012dd8 100644 --- a/Marlin/src/lcd/menu/menu_bed_leveling.cpp +++ b/Marlin/src/lcd/menu/menu_bed_leveling.cpp @@ -292,6 +292,10 @@ void menu_bed_leveling() { EDIT_ITEM(LCD_Z_OFFSET_TYPE, MSG_ZPROBE_ZOFFSET, &probe.offset.z, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX); #endif + #if ENABLED(PROBE_OFFSET_WIZARD) + SUBMENU(MSG_PROBE_WIZARD, goto_probe_offset_wizard); + #endif + #if ENABLED(LCD_BED_TRAMMING) SUBMENU(MSG_BED_TRAMMING, _lcd_bed_tramming); #endif diff --git a/Marlin/src/lcd/menu/menu_motion.cpp b/Marlin/src/lcd/menu/menu_motion.cpp index 200d46a8af9d..4c0b1e55a88e 100644 --- a/Marlin/src/lcd/menu/menu_motion.cpp +++ b/Marlin/src/lcd/menu/menu_motion.cpp @@ -337,28 +337,6 @@ void menu_motion() { #endif #endif - // - // Auto-calibration - // - #if ENABLED(CALIBRATION_GCODE) - GCODES_ITEM(MSG_AUTO_CALIBRATE, F("G425")); - #endif - - // - // Auto Z-Align - // - #if EITHER(Z_STEPPER_AUTO_ALIGN, MECHANICAL_GANTRY_CALIBRATION) - GCODES_ITEM(MSG_AUTO_Z_ALIGN, F("G34")); - #endif - - // - // Probe Deploy/Stow - // - #if ENABLED(PROBE_DEPLOY_STOW_MENU) - GCODES_ITEM(MSG_MANUAL_DEPLOY, F("M401")); - GCODES_ITEM(MSG_MANUAL_STOW, F("M402")); - #endif - // // Pen up/down menu // @@ -367,19 +345,6 @@ void menu_motion() { GCODES_ITEM(MSG_MANUAL_PENDOWN, F("M280 P0 S50")); #endif - // Probe Offset Wizard - // - #if ENABLED(PROBE_OFFSET_WIZARD) - SUBMENU(MSG_PROBE_WIZARD, goto_probe_offset_wizard); - #endif - - // - // Assisted Bed Tramming - // - #if ENABLED(ASSISTED_TRAMMING_WIZARD) - SUBMENU(MSG_TRAMMING_WIZARD, goto_tramming_wizard); - #endif - // // Level Bed // @@ -410,14 +375,49 @@ void menu_motion() { #endif + // + // Assisted Bed Tramming + // + #if ENABLED(ASSISTED_TRAMMING_WIZARD) + SUBMENU(MSG_TRAMMING_WIZARD, goto_tramming_wizard); + #endif + + // + // Bed Tramming Submenu + // #if ENABLED(LCD_BED_TRAMMING) && DISABLED(LCD_BED_LEVELING) SUBMENU(MSG_BED_TRAMMING, _lcd_bed_tramming); #endif + // + // Auto Z-Align + // + #if EITHER(Z_STEPPER_AUTO_ALIGN, MECHANICAL_GANTRY_CALIBRATION) + GCODES_ITEM(MSG_AUTO_Z_ALIGN, F("G34")); + #endif + + // + // Probe Deploy/Stow + // + #if ENABLED(PROBE_DEPLOY_STOW_MENU) + GCODES_ITEM(MSG_MANUAL_DEPLOY, F("M401")); + GCODES_ITEM(MSG_MANUAL_STOW, F("M402")); + #endif + + // + // Probe Repeatability Test + // #if ENABLED(Z_MIN_PROBE_REPEATABILITY_TEST) GCODES_ITEM(MSG_M48_TEST, F("G28O\nM48 P10")); #endif + // + // Auto-calibration with Object + // + #if ENABLED(CALIBRATION_GCODE) + GCODES_ITEM(MSG_AUTO_CALIBRATE, F("G425")); + #endif + // // Disable Steppers // From 85325f585ac4a9bb667423561540b5d58bdc3b6e Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 5 May 2023 19:37:13 -0500 Subject: [PATCH 127/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20End?= =?UTF-8?q?stops=20preliminary=20work=20(#25780)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 1 - Marlin/src/HAL/AVR/endstop_interrupts.h | 56 +-- Marlin/src/HAL/DUE/endstop_interrupts.h | 58 +-- Marlin/src/HAL/ESP32/endstop_interrupts.h | 58 +-- Marlin/src/HAL/LPC1768/endstop_interrupts.h | 56 +-- Marlin/src/HAL/LPC1768/inc/SanityCheck.h | 4 +- Marlin/src/HAL/SAMD21/endstop_interrupts.h | 112 +++--- Marlin/src/HAL/SAMD51/endstop_interrupts.h | 104 +++--- Marlin/src/HAL/STM32/endstop_interrupts.h | 58 +-- Marlin/src/HAL/STM32F1/endstop_interrupts.h | 58 +-- .../src/HAL/TEENSY31_32/endstop_interrupts.h | 58 +-- .../src/HAL/TEENSY35_36/endstop_interrupts.h | 58 +-- .../src/HAL/TEENSY40_41/endstop_interrupts.h | 58 +-- Marlin/src/feature/tmc_util.h | 1 + Marlin/src/gcode/calibrate/G28.cpp | 2 +- Marlin/src/gcode/calibrate/G33.cpp | 3 +- Marlin/src/gcode/control/M605.cpp | 29 +- Marlin/src/inc/Conditionals_LCD.h | 6 +- Marlin/src/inc/Conditionals_adv.h | 7 +- Marlin/src/inc/Conditionals_post.h | 244 ++++++------- Marlin/src/inc/SanityCheck.h | 19 +- Marlin/src/inc/Warnings.cpp | 4 + Marlin/src/lcd/e3v2/proui/endstop_diag.cpp | 12 +- .../generic/endstop_state_screen.cpp | 10 +- Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp | 20 +- Marlin/src/lcd/extui/nextion/nextion_tft.cpp | 4 +- Marlin/src/module/endstops.cpp | 342 +++++++++--------- Marlin/src/module/endstops.h | 30 +- Marlin/src/module/motion.h | 2 +- Marlin/src/module/probe.cpp | 6 +- Marlin/src/module/probe.h | 2 +- Marlin/src/module/stepper/trinamic.cpp | 10 +- Marlin/src/pins/pins_postprocess.h | 36 +- 33 files changed, 764 insertions(+), 764 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 6f81aa4051bd..1a35c324b6a1 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -815,7 +815,6 @@ #define X1_MAX_POS X_BED_SIZE // A max coordinate so the X1 carriage can't hit the parked X2 carriage #define X2_MIN_POS 80 // A min coordinate so the X2 carriage can't hit the parked X1 carriage #define X2_MAX_POS 353 // The max position of the X2 carriage, typically also the home position - #define X2_HOME_DIR 1 // Set to 1. The X2 carriage always homes to the max endstop position #define X2_HOME_POS X2_MAX_POS // Default X2 home position. Set to X2_MAX_POS. // NOTE: For Dual X Carriage use M218 T1 Xn to override the X2_HOME_POS. // This allows recalibration of endstops distance without a rebuild. diff --git a/Marlin/src/HAL/AVR/endstop_interrupts.h b/Marlin/src/HAL/AVR/endstop_interrupts.h index a67b4493f0bc..ac827f18422a 100644 --- a/Marlin/src/HAL/AVR/endstop_interrupts.h +++ b/Marlin/src/HAL/AVR/endstop_interrupts.h @@ -120,7 +120,7 @@ void pciSetup(const int8_t pin) { void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(digitalPinToInterrupt(P), endstop_ISR, CHANGE) - #if HAS_X_MAX + #if USE_X_MAX #if (digitalPinToInterrupt(X_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(X_MAX_PIN); #else @@ -128,7 +128,7 @@ void setup_endstop_interrupts() { pciSetup(X_MAX_PIN); #endif #endif - #if HAS_X_MIN + #if USE_X_MIN #if (digitalPinToInterrupt(X_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(X_MIN_PIN); #else @@ -136,7 +136,7 @@ void setup_endstop_interrupts() { pciSetup(X_MIN_PIN); #endif #endif - #if HAS_Y_MAX + #if USE_Y_MAX #if (digitalPinToInterrupt(Y_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(Y_MAX_PIN); #else @@ -144,7 +144,7 @@ void setup_endstop_interrupts() { pciSetup(Y_MAX_PIN); #endif #endif - #if HAS_Y_MIN + #if USE_Y_MIN #if (digitalPinToInterrupt(Y_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(Y_MIN_PIN); #else @@ -152,7 +152,7 @@ void setup_endstop_interrupts() { pciSetup(Y_MIN_PIN); #endif #endif - #if HAS_Z_MAX + #if USE_Z_MAX #if (digitalPinToInterrupt(Z_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(Z_MAX_PIN); #else @@ -168,14 +168,14 @@ void setup_endstop_interrupts() { pciSetup(Z_MIN_PIN); #endif #endif - #if HAS_I_MAX + #if USE_I_MAX #if (digitalPinToInterrupt(I_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(I_MAX_PIN); #else static_assert(digitalPinHasPCICR(I_MAX_PIN), "I_MAX_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(I_MAX_PIN); #endif - #elif HAS_I_MIN + #elif USE_I_MIN #if (digitalPinToInterrupt(I_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(I_MIN_PIN); #else @@ -183,14 +183,14 @@ void setup_endstop_interrupts() { pciSetup(I_MIN_PIN); #endif #endif - #if HAS_J_MAX + #if USE_J_MAX #if (digitalPinToInterrupt(J_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(J_MAX_PIN); #else static_assert(digitalPinHasPCICR(J_MAX_PIN), "J_MAX_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(J_MAX_PIN); #endif - #elif HAS_J_MIN + #elif USE_J_MIN #if (digitalPinToInterrupt(J_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(J_MIN_PIN); #else @@ -198,14 +198,14 @@ void setup_endstop_interrupts() { pciSetup(J_MIN_PIN); #endif #endif - #if HAS_K_MAX + #if USE_K_MAX #if (digitalPinToInterrupt(K_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(K_MAX_PIN); #else static_assert(digitalPinHasPCICR(K_MAX_PIN), "K_MAX_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(K_MAX_PIN); #endif - #elif HAS_K_MIN + #elif USE_K_MIN #if (digitalPinToInterrupt(K_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(K_MIN_PIN); #else @@ -213,14 +213,14 @@ void setup_endstop_interrupts() { pciSetup(K_MIN_PIN); #endif #endif - #if HAS_U_MAX + #if USE_U_MAX #if (digitalPinToInterrupt(U_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(U_MAX_PIN); #else static_assert(digitalPinHasPCICR(U_MAX_PIN), "U_MAX_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(U_MAX_PIN); #endif - #elif HAS_U_MIN + #elif USE_U_MIN #if (digitalPinToInterrupt(U_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(U_MIN_PIN); #else @@ -228,14 +228,14 @@ void setup_endstop_interrupts() { pciSetup(U_MIN_PIN); #endif #endif - #if HAS_V_MAX + #if USE_V_MAX #if (digitalPinToInterrupt(V_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(V_MAX_PIN); #else static_assert(digitalPinHasPCICR(V_MAX_PIN), "V_MAX_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(V_MAX_PIN); #endif - #elif HAS_V_MIN + #elif USE_V_MIN #if (digitalPinToInterrupt(V_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(V_MIN_PIN); #else @@ -243,14 +243,14 @@ void setup_endstop_interrupts() { pciSetup(V_MIN_PIN); #endif #endif - #if HAS_W_MAX + #if USE_W_MAX #if (digitalPinToInterrupt(W_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(W_MAX_PIN); #else static_assert(digitalPinHasPCICR(W_MAX_PIN), "W_MAX_PIN is not interrupt-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue."); pciSetup(W_MAX_PIN); #endif - #elif HAS_W_MIN + #elif USE_W_MIN #if (digitalPinToInterrupt(W_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(W_MIN_PIN); #else @@ -258,7 +258,7 @@ void setup_endstop_interrupts() { pciSetup(W_MIN_PIN); #endif #endif - #if HAS_X2_MAX + #if USE_X2_MAX #if (digitalPinToInterrupt(X2_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(X2_MAX_PIN); #else @@ -266,7 +266,7 @@ void setup_endstop_interrupts() { pciSetup(X2_MAX_PIN); #endif #endif - #if HAS_X2_MIN + #if USE_X2_MIN #if (digitalPinToInterrupt(X2_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(X2_MIN_PIN); #else @@ -274,7 +274,7 @@ void setup_endstop_interrupts() { pciSetup(X2_MIN_PIN); #endif #endif - #if HAS_Y2_MAX + #if USE_Y2_MAX #if (digitalPinToInterrupt(Y2_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(Y2_MAX_PIN); #else @@ -282,7 +282,7 @@ void setup_endstop_interrupts() { pciSetup(Y2_MAX_PIN); #endif #endif - #if HAS_Y2_MIN + #if USE_Y2_MIN #if (digitalPinToInterrupt(Y2_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(Y2_MIN_PIN); #else @@ -290,7 +290,7 @@ void setup_endstop_interrupts() { pciSetup(Y2_MIN_PIN); #endif #endif - #if HAS_Z2_MAX + #if USE_Z2_MAX #if (digitalPinToInterrupt(Z2_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(Z2_MAX_PIN); #else @@ -298,7 +298,7 @@ void setup_endstop_interrupts() { pciSetup(Z2_MAX_PIN); #endif #endif - #if HAS_Z2_MIN + #if USE_Z2_MIN #if (digitalPinToInterrupt(Z2_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(Z2_MIN_PIN); #else @@ -306,7 +306,7 @@ void setup_endstop_interrupts() { pciSetup(Z2_MIN_PIN); #endif #endif - #if HAS_Z3_MAX + #if USE_Z3_MAX #if (digitalPinToInterrupt(Z3_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(Z3_MAX_PIN); #else @@ -314,7 +314,7 @@ void setup_endstop_interrupts() { pciSetup(Z3_MAX_PIN); #endif #endif - #if HAS_Z3_MIN + #if USE_Z3_MIN #if (digitalPinToInterrupt(Z3_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(Z3_MIN_PIN); #else @@ -322,7 +322,7 @@ void setup_endstop_interrupts() { pciSetup(Z3_MIN_PIN); #endif #endif - #if HAS_Z4_MAX + #if USE_Z4_MAX #if (digitalPinToInterrupt(Z4_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(Z4_MAX_PIN); #else @@ -330,7 +330,7 @@ void setup_endstop_interrupts() { pciSetup(Z4_MAX_PIN); #endif #endif - #if HAS_Z4_MIN + #if USE_Z4_MIN #if (digitalPinToInterrupt(Z4_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(Z4_MIN_PIN); #else @@ -338,7 +338,7 @@ void setup_endstop_interrupts() { pciSetup(Z4_MIN_PIN); #endif #endif - #if HAS_Z_MIN_PROBE_PIN + #if USE_Z_MIN_PROBE #if (digitalPinToInterrupt(Z_MIN_PROBE_PIN) != NOT_AN_INTERRUPT) _ATTACH(Z_MIN_PROBE_PIN); #else diff --git a/Marlin/src/HAL/DUE/endstop_interrupts.h b/Marlin/src/HAL/DUE/endstop_interrupts.h index 9ce4fcdb2fce..28510fb508d6 100644 --- a/Marlin/src/HAL/DUE/endstop_interrupts.h +++ b/Marlin/src/HAL/DUE/endstop_interrupts.h @@ -47,33 +47,33 @@ void endstop_ISR() { endstops.update(); } void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(digitalPinToInterrupt(P), endstop_ISR, CHANGE) - TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); - TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); - TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); - TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); - TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); - TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); - TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); - TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); - TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); - TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); - TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); - TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); - TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); - TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); - TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); - TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN)); - TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); - TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); - TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); - TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); - TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); - TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); - TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); - TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); - TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); - TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); - TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); - TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); + TERN_(USE_X_MAX, _ATTACH(X_MAX_PIN)); + TERN_(USE_X_MIN, _ATTACH(X_MIN_PIN)); + TERN_(USE_Y_MAX, _ATTACH(Y_MAX_PIN)); + TERN_(USE_Y_MIN, _ATTACH(Y_MIN_PIN)); + TERN_(USE_Z_MAX, _ATTACH(Z_MAX_PIN)); + TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(USE_X2_MAX, _ATTACH(X2_MAX_PIN)); + TERN_(USE_X2_MIN, _ATTACH(X2_MIN_PIN)); + TERN_(USE_Y2_MAX, _ATTACH(Y2_MAX_PIN)); + TERN_(USE_Y2_MIN, _ATTACH(Y2_MIN_PIN)); + TERN_(USE_Z2_MAX, _ATTACH(Z2_MAX_PIN)); + TERN_(USE_Z2_MIN, _ATTACH(Z2_MIN_PIN)); + TERN_(USE_Z3_MAX, _ATTACH(Z3_MAX_PIN)); + TERN_(USE_Z3_MIN, _ATTACH(Z3_MIN_PIN)); + TERN_(USE_Z4_MAX, _ATTACH(Z4_MAX_PIN)); + TERN_(USE_Z4_MIN, _ATTACH(Z4_MIN_PIN)); + TERN_(USE_Z_MIN_PROBE, _ATTACH(Z_MIN_PROBE_PIN)); + TERN_(USE_I_MAX, _ATTACH(I_MAX_PIN)); + TERN_(USE_I_MIN, _ATTACH(I_MIN_PIN)); + TERN_(USE_J_MAX, _ATTACH(J_MAX_PIN)); + TERN_(USE_J_MIN, _ATTACH(J_MIN_PIN)); + TERN_(USE_K_MAX, _ATTACH(K_MAX_PIN)); + TERN_(USE_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(USE_U_MAX, _ATTACH(U_MAX_PIN)); + TERN_(USE_U_MIN, _ATTACH(U_MIN_PIN)); + TERN_(USE_V_MAX, _ATTACH(V_MAX_PIN)); + TERN_(USE_V_MIN, _ATTACH(V_MIN_PIN)); + TERN_(USE_W_MAX, _ATTACH(W_MAX_PIN)); + TERN_(USE_W_MIN, _ATTACH(W_MIN_PIN)); } diff --git a/Marlin/src/HAL/ESP32/endstop_interrupts.h b/Marlin/src/HAL/ESP32/endstop_interrupts.h index f48cda4511f3..43f4975d4609 100644 --- a/Marlin/src/HAL/ESP32/endstop_interrupts.h +++ b/Marlin/src/HAL/ESP32/endstop_interrupts.h @@ -42,33 +42,33 @@ void ICACHE_RAM_ATTR endstop_ISR() { endstops.update(); } void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(digitalPinToInterrupt(P), endstop_ISR, CHANGE) - TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); - TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); - TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); - TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); - TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); - TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); - TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); - TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); - TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); - TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); - TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); - TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); - TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); - TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); - TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); - TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN)); - TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); - TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); - TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); - TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); - TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); - TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); - TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); - TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); - TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); - TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); - TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); - TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); + TERN_(USE_X_MAX, _ATTACH(X_MAX_PIN)); + TERN_(USE_X_MIN, _ATTACH(X_MIN_PIN)); + TERN_(USE_Y_MAX, _ATTACH(Y_MAX_PIN)); + TERN_(USE_Y_MIN, _ATTACH(Y_MIN_PIN)); + TERN_(USE_Z_MAX, _ATTACH(Z_MAX_PIN)); + TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(USE_X2_MAX, _ATTACH(X2_MAX_PIN)); + TERN_(USE_X2_MIN, _ATTACH(X2_MIN_PIN)); + TERN_(USE_Y2_MAX, _ATTACH(Y2_MAX_PIN)); + TERN_(USE_Y2_MIN, _ATTACH(Y2_MIN_PIN)); + TERN_(USE_Z2_MAX, _ATTACH(Z2_MAX_PIN)); + TERN_(USE_Z2_MIN, _ATTACH(Z2_MIN_PIN)); + TERN_(USE_Z3_MAX, _ATTACH(Z3_MAX_PIN)); + TERN_(USE_Z3_MIN, _ATTACH(Z3_MIN_PIN)); + TERN_(USE_Z4_MAX, _ATTACH(Z4_MAX_PIN)); + TERN_(USE_Z4_MIN, _ATTACH(Z4_MIN_PIN)); + TERN_(USE_Z_MIN_PROBE, _ATTACH(Z_MIN_PROBE_PIN)); + TERN_(USE_I_MAX, _ATTACH(I_MAX_PIN)); + TERN_(USE_I_MIN, _ATTACH(I_MIN_PIN)); + TERN_(USE_J_MAX, _ATTACH(J_MAX_PIN)); + TERN_(USE_J_MIN, _ATTACH(J_MIN_PIN)); + TERN_(USE_K_MAX, _ATTACH(K_MAX_PIN)); + TERN_(USE_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(USE_U_MAX, _ATTACH(U_MAX_PIN)); + TERN_(USE_U_MIN, _ATTACH(U_MIN_PIN)); + TERN_(USE_V_MAX, _ATTACH(V_MAX_PIN)); + TERN_(USE_V_MIN, _ATTACH(V_MIN_PIN)); + TERN_(USE_W_MAX, _ATTACH(W_MAX_PIN)); + TERN_(USE_W_MIN, _ATTACH(W_MIN_PIN)); } diff --git a/Marlin/src/HAL/LPC1768/endstop_interrupts.h b/Marlin/src/HAL/LPC1768/endstop_interrupts.h index 2253b92627d9..cd9de254777a 100644 --- a/Marlin/src/HAL/LPC1768/endstop_interrupts.h +++ b/Marlin/src/HAL/LPC1768/endstop_interrupts.h @@ -44,31 +44,31 @@ void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(digitalPinToInterrupt(P), endstop_ISR, CHANGE) #define LPC1768_PIN_INTERRUPT_M(pin) ((pin >> 0x5 & 0x7) == 0 || (pin >> 0x5 & 0x7) == 2) - #if HAS_X_MAX + #if USE_X_MAX #if !LPC1768_PIN_INTERRUPT_M(X_MAX_PIN) #error "X_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(X_MAX_PIN); #endif - #if HAS_X_MIN + #if USE_X_MIN #if !LPC1768_PIN_INTERRUPT_M(X_MIN_PIN) #error "X_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(X_MIN_PIN); #endif - #if HAS_Y_MAX + #if USE_Y_MAX #if !LPC1768_PIN_INTERRUPT_M(Y_MAX_PIN) #error "Y_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Y_MAX_PIN); #endif - #if HAS_Y_MIN + #if USE_Y_MIN #if !LPC1768_PIN_INTERRUPT_M(Y_MIN_PIN) #error "Y_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Y_MIN_PIN); #endif - #if HAS_Z_MAX + #if USE_Z_MAX #if !LPC1768_PIN_INTERRUPT_M(Z_MAX_PIN) #error "Z_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif @@ -80,133 +80,133 @@ void setup_endstop_interrupts() { #endif _ATTACH(Z_MIN_PIN); #endif - #if HAS_X2_MAX + #if USE_X2_MAX #if !LPC1768_PIN_INTERRUPT_M(X2_MAX_PIN) #error "X2_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(X2_MAX_PIN); #endif - #if HAS_X2_MIN + #if USE_X2_MIN #if !LPC1768_PIN_INTERRUPT_M(X2_MIN_PIN) #error "X2_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(X2_MIN_PIN); #endif - #if HAS_Y2_MAX + #if USE_Y2_MAX #if !LPC1768_PIN_INTERRUPT_M(Y2_MAX_PIN) #error "Y2_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Y2_MAX_PIN); #endif - #if HAS_Y2_MIN + #if USE_Y2_MIN #if !LPC1768_PIN_INTERRUPT_M(Y2_MIN_PIN) #error "Y2_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Y2_MIN_PIN); #endif - #if HAS_Z2_MAX + #if USE_Z2_MAX #if !LPC1768_PIN_INTERRUPT_M(Z2_MAX_PIN) #error "Z2_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z2_MAX_PIN); #endif - #if HAS_Z2_MIN + #if USE_Z2_MIN #if !LPC1768_PIN_INTERRUPT_M(Z2_MIN_PIN) #error "Z2_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z2_MIN_PIN); #endif - #if HAS_Z3_MAX + #if USE_Z3_MAX #if !LPC1768_PIN_INTERRUPT_M(Z3_MAX_PIN) #error "Z3_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z3_MAX_PIN); #endif - #if HAS_Z3_MIN + #if USE_Z3_MIN #if !LPC1768_PIN_INTERRUPT_M(Z3_MIN_PIN) #error "Z3_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z3_MIN_PIN); #endif - #if HAS_Z4_MAX + #if USE_Z4_MAX #if !LPC1768_PIN_INTERRUPT_M(Z4_MAX_PIN) #error "Z4_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z4_MAX_PIN); #endif - #if HAS_Z4_MIN + #if USE_Z4_MIN #if !LPC1768_PIN_INTERRUPT_M(Z4_MIN_PIN) #error "Z4_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z4_MIN_PIN); #endif - #if HAS_Z_MIN_PROBE_PIN + #if USE_Z_MIN_PROBE #if !LPC1768_PIN_INTERRUPT_M(Z_MIN_PROBE_PIN) #error "Z_MIN_PROBE_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z_MIN_PROBE_PIN); #endif - #if HAS_I_MAX + #if USE_I_MAX #if !LPC1768_PIN_INTERRUPT_M(I_MAX_PIN) #error "I_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(I_MAX_PIN); - #elif HAS_I_MIN + #elif USE_I_MIN #if !LPC1768_PIN_INTERRUPT_M(I_MIN_PIN) #error "I_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(I_MIN_PIN); #endif - #if HAS_J_MAX + #if USE_J_MAX #if !LPC1768_PIN_INTERRUPT_M(J_MAX_PIN) #error "J_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(J_MAX_PIN); - #elif HAS_J_MIN + #elif USE_J_MIN #if !LPC1768_PIN_INTERRUPT_M(J_MIN_PIN) #error "J_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(J_MIN_PIN); #endif - #if HAS_K_MAX + #if USE_K_MAX #if !LPC1768_PIN_INTERRUPT_M(K_MAX_PIN) #error "K_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(K_MAX_PIN); - #elif HAS_K_MIN + #elif USE_K_MIN #if !LPC1768_PIN_INTERRUPT_M(K_MIN_PIN) #error "K_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(K_MIN_PIN); #endif - #if HAS_U_MAX + #if USE_U_MAX #if !LPC1768_PIN_INTERRUPT_M(U_MAX_PIN) #error "U_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(U_MAX_PIN); - #elif HAS_U_MIN + #elif USE_U_MIN #if !LPC1768_PIN_INTERRUPT_M(U_MIN_PIN) #error "U_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(U_MIN_PIN); #endif - #if HAS_V_MAX + #if USE_V_MAX #if !LPC1768_PIN_INTERRUPT_M(V_MAX_PIN) #error "V_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(V_MAX_PIN); - #elif HAS_V_MIN + #elif USE_V_MIN #if !LPC1768_PIN_INTERRUPT_M(V_MIN_PIN) #error "V_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(V_MIN_PIN); #endif - #if HAS_W_MAX + #if USE_W_MAX #if !LPC1768_PIN_INTERRUPT_M(W_MAX_PIN) #error "W_MAX_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(W_MAX_PIN); - #elif HAS_W_MIN + #elif USE_W_MIN #if !LPC1768_PIN_INTERRUPT_M(W_MIN_PIN) #error "W_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif diff --git a/Marlin/src/HAL/LPC1768/inc/SanityCheck.h b/Marlin/src/HAL/LPC1768/inc/SanityCheck.h index f49bc34c9253..2782f225b0df 100644 --- a/Marlin/src/HAL/LPC1768/inc/SanityCheck.h +++ b/Marlin/src/HAL/LPC1768/inc/SanityCheck.h @@ -150,7 +150,7 @@ static_assert(DISABLED(BAUD_RATE_GCODE), "BAUD_RATE_GCODE is not yet supported o #error "Serial port pins (2) conflict with other pins!" #elif Y_HOME_TO_MIN && IS_TX2(Y_STOP_PIN) #error "Serial port pins (2) conflict with Y endstop pin!" - #elif USES_Z_MIN_PROBE_PIN && IS_TX2(Z_MIN_PROBE_PIN) + #elif USE_Z_MIN_PROBE && IS_TX2(Z_MIN_PROBE_PIN) #error "Serial port pins (2) conflict with probe pin!" #elif ANY_TX(2, X_ENABLE_PIN, Y_ENABLE_PIN) || ANY_RX(2, X_DIR_PIN, Y_DIR_PIN) #error "Serial port pins (2) conflict with X/Y stepper pins!" @@ -241,7 +241,7 @@ static_assert(DISABLED(BAUD_RATE_GCODE), "BAUD_RATE_GCODE is not yet supported o #define PIN_IS_SCL2(P) (P##_PIN == P0_11) #if PIN_IS_SDA2(Y_STOP) #error "i2c SDA2 overlaps with Y endstop pin!" - #elif USES_Z_MIN_PROBE_PIN && PIN_IS_SDA2(Z_MIN_PROBE) + #elif USE_Z_MIN_PROBE && PIN_IS_SDA2(Z_MIN_PROBE) #error "i2c SDA2 overlaps with Z probe pin!" #elif PIN_IS_SDA2(X_ENABLE) || PIN_IS_SDA2(Y_ENABLE) #error "i2c SDA2 overlaps with X/Y ENABLE pin!" diff --git a/Marlin/src/HAL/SAMD21/endstop_interrupts.h b/Marlin/src/HAL/SAMD21/endstop_interrupts.h index a277e04097f4..31414a39e317 100644 --- a/Marlin/src/HAL/SAMD21/endstop_interrupts.h +++ b/Marlin/src/HAL/SAMD21/endstop_interrupts.h @@ -54,35 +54,35 @@ #include "../../module/endstops.h" #define MATCH_EILINE(P1,P2) (P1 != P2 && PIN_TO_EILINE(P1) == PIN_TO_EILINE(P2)) -#define MATCH_X_MAX_EILINE(P) TERN0(HAS_X_MAX, DEFER4(MATCH_EILINE)(P, X_MAX_PIN)) -#define MATCH_X_MIN_EILINE(P) TERN0(HAS_X_MIN, DEFER4(MATCH_EILINE)(P, X_MIN_PIN)) -#define MATCH_Y_MAX_EILINE(P) TERN0(HAS_Y_MAX, DEFER4(MATCH_EILINE)(P, Y_MAX_PIN)) -#define MATCH_Y_MIN_EILINE(P) TERN0(HAS_Y_MIN, DEFER4(MATCH_EILINE)(P, Y_MIN_PIN)) -#define MATCH_Z_MAX_EILINE(P) TERN0(HAS_Z_MAX, DEFER4(MATCH_EILINE)(P, Z_MAX_PIN)) +#define MATCH_X_MAX_EILINE(P) TERN0(USE_X_MAX, DEFER4(MATCH_EILINE)(P, X_MAX_PIN)) +#define MATCH_X_MIN_EILINE(P) TERN0(USE_X_MIN, DEFER4(MATCH_EILINE)(P, X_MIN_PIN)) +#define MATCH_Y_MAX_EILINE(P) TERN0(USE_Y_MAX, DEFER4(MATCH_EILINE)(P, Y_MAX_PIN)) +#define MATCH_Y_MIN_EILINE(P) TERN0(USE_Y_MIN, DEFER4(MATCH_EILINE)(P, Y_MIN_PIN)) +#define MATCH_Z_MAX_EILINE(P) TERN0(USE_Z_MAX, DEFER4(MATCH_EILINE)(P, Z_MAX_PIN)) #define MATCH_Z_MIN_EILINE(P) TERN0(HAS_Z_MIN_PIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PIN)) -#define MATCH_I_MAX_EILINE(P) TERN0(HAS_I_MAX, DEFER4(MATCH_EILINE)(P, I_MAX_PIN)) -#define MATCH_I_MIN_EILINE(P) TERN0(HAS_I_MIN, DEFER4(MATCH_EILINE)(P, I_MIN_PIN)) -#define MATCH_J_MAX_EILINE(P) TERN0(HAS_J_MAX, DEFER4(MATCH_EILINE)(P, J_MAX_PIN)) -#define MATCH_J_MIN_EILINE(P) TERN0(HAS_J_MIN, DEFER4(MATCH_EILINE)(P, J_MIN_PIN)) -#define MATCH_K_MAX_EILINE(P) TERN0(HAS_K_MAX, DEFER4(MATCH_EILINE)(P, K_MAX_PIN)) -#define MATCH_K_MIN_EILINE(P) TERN0(HAS_K_MIN, DEFER4(MATCH_EILINE)(P, K_MIN_PIN)) -#define MATCH_U_MAX_EILINE(P) TERN0(HAS_U_MAX, DEFER4(MATCH_EILINE)(P, U_MAX_PIN)) -#define MATCH_U_MIN_EILINE(P) TERN0(HAS_U_MIN, DEFER4(MATCH_EILINE)(P, U_MIN_PIN)) -#define MATCH_V_MAX_EILINE(P) TERN0(HAS_V_MAX, DEFER4(MATCH_EILINE)(P, V_MAX_PIN)) -#define MATCH_V_MIN_EILINE(P) TERN0(HAS_V_MIN, DEFER4(MATCH_EILINE)(P, V_MIN_PIN)) -#define MATCH_W_MAX_EILINE(P) TERN0(HAS_W_MAX, DEFER4(MATCH_EILINE)(P, W_MAX_PIN)) -#define MATCH_W_MIN_EILINE(P) TERN0(HAS_W_MIN, DEFER4(MATCH_EILINE)(P, W_MIN_PIN)) -#define MATCH_X2_MAX_EILINE(P) TERN0(HAS_X2_MAX, DEFER4(MATCH_EILINE)(P, X2_MAX_PIN)) -#define MATCH_X2_MIN_EILINE(P) TERN0(HAS_X2_MIN, DEFER4(MATCH_EILINE)(P, X2_MIN_PIN)) -#define MATCH_Y2_MAX_EILINE(P) TERN0(HAS_Y2_MAX, DEFER4(MATCH_EILINE)(P, Y2_MAX_PIN)) -#define MATCH_Y2_MIN_EILINE(P) TERN0(HAS_Y2_MIN, DEFER4(MATCH_EILINE)(P, Y2_MIN_PIN)) -#define MATCH_Z2_MAX_EILINE(P) TERN0(HAS_Z2_MAX, DEFER4(MATCH_EILINE)(P, Z2_MAX_PIN)) -#define MATCH_Z2_MIN_EILINE(P) TERN0(HAS_Z2_MIN, DEFER4(MATCH_EILINE)(P, Z2_MIN_PIN)) -#define MATCH_Z3_MAX_EILINE(P) TERN0(HAS_Z3_MAX, DEFER4(MATCH_EILINE)(P, Z3_MAX_PIN)) -#define MATCH_Z3_MIN_EILINE(P) TERN0(HAS_Z3_MIN, DEFER4(MATCH_EILINE)(P, Z3_MIN_PIN)) -#define MATCH_Z4_MAX_EILINE(P) TERN0(HAS_Z4_MAX, DEFER4(MATCH_EILINE)(P, Z4_MAX_PIN)) -#define MATCH_Z4_MIN_EILINE(P) TERN0(HAS_Z4_MIN, DEFER4(MATCH_EILINE)(P, Z4_MIN_PIN)) -#define MATCH_Z_MIN_PROBE_EILINE(P) TERN0(HAS_Z_MIN_PROBE_PIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PROBE_PIN)) +#define MATCH_I_MAX_EILINE(P) TERN0(USE_I_MAX, DEFER4(MATCH_EILINE)(P, I_MAX_PIN)) +#define MATCH_I_MIN_EILINE(P) TERN0(USE_I_MIN, DEFER4(MATCH_EILINE)(P, I_MIN_PIN)) +#define MATCH_J_MAX_EILINE(P) TERN0(USE_J_MAX, DEFER4(MATCH_EILINE)(P, J_MAX_PIN)) +#define MATCH_J_MIN_EILINE(P) TERN0(USE_J_MIN, DEFER4(MATCH_EILINE)(P, J_MIN_PIN)) +#define MATCH_K_MAX_EILINE(P) TERN0(USE_K_MAX, DEFER4(MATCH_EILINE)(P, K_MAX_PIN)) +#define MATCH_K_MIN_EILINE(P) TERN0(USE_K_MIN, DEFER4(MATCH_EILINE)(P, K_MIN_PIN)) +#define MATCH_U_MAX_EILINE(P) TERN0(USE_U_MAX, DEFER4(MATCH_EILINE)(P, U_MAX_PIN)) +#define MATCH_U_MIN_EILINE(P) TERN0(USE_U_MIN, DEFER4(MATCH_EILINE)(P, U_MIN_PIN)) +#define MATCH_V_MAX_EILINE(P) TERN0(USE_V_MAX, DEFER4(MATCH_EILINE)(P, V_MAX_PIN)) +#define MATCH_V_MIN_EILINE(P) TERN0(USE_V_MIN, DEFER4(MATCH_EILINE)(P, V_MIN_PIN)) +#define MATCH_W_MAX_EILINE(P) TERN0(USE_W_MAX, DEFER4(MATCH_EILINE)(P, W_MAX_PIN)) +#define MATCH_W_MIN_EILINE(P) TERN0(USE_W_MIN, DEFER4(MATCH_EILINE)(P, W_MIN_PIN)) +#define MATCH_X2_MAX_EILINE(P) TERN0(USE_X2_MAX, DEFER4(MATCH_EILINE)(P, X2_MAX_PIN)) +#define MATCH_X2_MIN_EILINE(P) TERN0(USE_X2_MIN, DEFER4(MATCH_EILINE)(P, X2_MIN_PIN)) +#define MATCH_Y2_MAX_EILINE(P) TERN0(USE_Y2_MAX, DEFER4(MATCH_EILINE)(P, Y2_MAX_PIN)) +#define MATCH_Y2_MIN_EILINE(P) TERN0(USE_Y2_MIN, DEFER4(MATCH_EILINE)(P, Y2_MIN_PIN)) +#define MATCH_Z2_MAX_EILINE(P) TERN0(USE_Z2_MAX, DEFER4(MATCH_EILINE)(P, Z2_MAX_PIN)) +#define MATCH_Z2_MIN_EILINE(P) TERN0(USE_Z2_MIN, DEFER4(MATCH_EILINE)(P, Z2_MIN_PIN)) +#define MATCH_Z3_MAX_EILINE(P) TERN0(USE_Z3_MAX, DEFER4(MATCH_EILINE)(P, Z3_MAX_PIN)) +#define MATCH_Z3_MIN_EILINE(P) TERN0(USE_Z3_MIN, DEFER4(MATCH_EILINE)(P, Z3_MIN_PIN)) +#define MATCH_Z4_MAX_EILINE(P) TERN0(USE_Z4_MAX, DEFER4(MATCH_EILINE)(P, Z4_MAX_PIN)) +#define MATCH_Z4_MIN_EILINE(P) TERN0(USE_Z4_MIN, DEFER4(MATCH_EILINE)(P, Z4_MIN_PIN)) +#define MATCH_Z_MIN_PROBE_EILINE(P) TERN0(USE_Z_MIN_PROBE, DEFER4(MATCH_EILINE)(P, Z_MIN_PROBE_PIN)) #define AVAILABLE_EILINE(P) ( PIN_TO_EILINE(P) != -1 \ && !MATCH_X_MAX_EILINE(P) && !MATCH_X_MIN_EILINE(P) \ @@ -106,31 +106,31 @@ void endstop_ISR() { endstops.update(); } void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(P, endstop_ISR, CHANGE) - #if HAS_X_MAX + #if USE_X_MAX #if !AVAILABLE_EILINE(X_MAX_PIN) #error "X_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(X_MAX_PIN); #endif - #if HAS_X_MIN + #if USE_X_MIN #if !AVAILABLE_EILINE(X_MIN_PIN) #error "X_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(X_MIN_PIN); #endif - #if HAS_Y_MAX + #if USE_Y_MAX #if !AVAILABLE_EILINE(Y_MAX_PIN) #error "Y_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Y_MAX_PIN); #endif - #if HAS_Y_MIN + #if USE_Y_MIN #if !AVAILABLE_EILINE(Y_MIN_PIN) #error "Y_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Y_MIN_PIN); #endif - #if HAS_Z_MAX + #if USE_Z_MAX #if !AVAILABLE_EILINE(Z_MAX_PIN) #error "Z_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif @@ -142,139 +142,139 @@ void setup_endstop_interrupts() { #endif _ATTACH(Z_MIN_PIN); #endif - #if HAS_X2_MAX + #if USE_X2_MAX #if !AVAILABLE_EILINE(X2_MAX_PIN) #error "X2_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(X2_MAX_PIN); #endif - #if HAS_X2_MIN + #if USE_X2_MIN #if !AVAILABLE_EILINE(X2_MIN_PIN) #error "X2_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(X2_MIN_PIN); #endif - #if HAS_Y2_MAX + #if USE_Y2_MAX #if !AVAILABLE_EILINE(Y2_MAX_PIN) #error "Y2_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Y2_MAX_PIN); #endif - #if HAS_Y2_MIN + #if USE_Y2_MIN #if !AVAILABLE_EILINE(Y2_MIN_PIN) #error "Y2_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Y2_MIN_PIN); #endif - #if HAS_Z2_MAX + #if USE_Z2_MAX #if !AVAILABLE_EILINE(Z2_MAX_PIN) #error "Z2_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z2_MAX_PIN); #endif - #if HAS_Z2_MIN + #if USE_Z2_MIN #if !AVAILABLE_EILINE(Z2_MIN_PIN) #error "Z2_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z2_MIN_PIN); #endif - #if HAS_Z3_MAX + #if USE_Z3_MAX #if !AVAILABLE_EILINE(Z3_MAX_PIN) #error "Z3_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z3_MAX_PIN); #endif - #if HAS_Z3_MIN + #if USE_Z3_MIN #if !AVAILABLE_EILINE(Z3_MIN_PIN) #error "Z3_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z3_MIN_PIN); #endif - #if HAS_Z4_MAX + #if USE_Z4_MAX #if !AVAILABLE_EILINE(Z4_MAX_PIN) #error "Z4_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z4_MAX_PIN); #endif - #if HAS_Z4_MIN + #if USE_Z4_MIN #if !AVAILABLE_EILINE(Z4_MIN_PIN) #error "Z4_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z4_MIN_PIN); #endif - #if HAS_Z_MIN_PROBE_PIN + #if USE_Z_MIN_PROBE #if !AVAILABLE_EILINE(Z_MIN_PROBE_PIN) #error "Z_MIN_PROBE_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z_MIN_PROBE_PIN); #endif - #if HAS_I_MAX + #if USE_I_MAX #if !AVAILABLE_EILINE(I_MAX_PIN) #error "I_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(I_MAX_PIN, endstop_ISR, CHANGE); #endif - #if HAS_I_MIN + #if USE_I_MIN #if !AVAILABLE_EILINE(I_MIN_PIN) #error "I_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(I_MIN_PIN, endstop_ISR, CHANGE); #endif - #if HAS_J_MAX + #if USE_J_MAX #if !AVAILABLE_EILINE(J_MAX_PIN) #error "J_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(J_MAX_PIN, endstop_ISR, CHANGE); #endif - #if HAS_J_MIN + #if USE_J_MIN #if !AVAILABLE_EILINE(J_MIN_PIN) #error "J_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(J_MIN_PIN, endstop_ISR, CHANGE); #endif - #if HAS_K_MAX + #if USE_K_MAX #if !AVAILABLE_EILINE(K_MAX_PIN) #error "K_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(K_MAX_PIN, endstop_ISR, CHANGE); #endif - #if HAS_K_MIN + #if USE_K_MIN #if !AVAILABLE_EILINE(K_MIN_PIN) #error "K_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(K_MIN_PIN, endstop_ISR, CHANGE); #endif - #if HAS_U_MAX + #if USE_U_MAX #if !AVAILABLE_EILINE(U_MAX_PIN) #error "U_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(U_MAX_PIN, endstop_ISR, CHANGE); #endif - #if HAS_U_MIN + #if USE_U_MIN #if !AVAILABLE_EILINE(U_MIN_PIN) #error "U_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(U_MIN_PIN, endstop_ISR, CHANGE); #endif - #if HAS_V_MAX + #if USE_V_MAX #if !AVAILABLE_EILINE(V_MAX_PIN) #error "V_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(V_MAX_PIN, endstop_ISR, CHANGE); #endif - #if HAS_V_MIN + #if USE_V_MIN #if !AVAILABLE_EILINE(V_MIN_PIN) #error "V_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(V_MIN_PIN, endstop_ISR, CHANGE); #endif - #if HAS_W_MAX + #if USE_W_MAX #if !AVAILABLE_EILINE(W_MAX_PIN) #error "W_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(W_MAX_PIN, endstop_ISR, CHANGE); #endif - #if HAS_W_MIN + #if USE_W_MIN #if !AVAILABLE_EILINE(W_MIN_PIN) #error "W_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif diff --git a/Marlin/src/HAL/SAMD51/endstop_interrupts.h b/Marlin/src/HAL/SAMD51/endstop_interrupts.h index b5fead26f40c..40f78baf878f 100644 --- a/Marlin/src/HAL/SAMD51/endstop_interrupts.h +++ b/Marlin/src/HAL/SAMD51/endstop_interrupts.h @@ -53,35 +53,35 @@ #include "../../module/endstops.h" #define MATCH_EILINE(P1,P2) (P1 != P2 && PIN_TO_EILINE(P1) == PIN_TO_EILINE(P2)) -#define MATCH_X_MAX_EILINE(P) TERN0(HAS_X_MAX, DEFER4(MATCH_EILINE)(P, X_MAX_PIN)) -#define MATCH_X_MIN_EILINE(P) TERN0(HAS_X_MIN, DEFER4(MATCH_EILINE)(P, X_MIN_PIN)) -#define MATCH_Y_MAX_EILINE(P) TERN0(HAS_Y_MAX, DEFER4(MATCH_EILINE)(P, Y_MAX_PIN)) -#define MATCH_Y_MIN_EILINE(P) TERN0(HAS_Y_MIN, DEFER4(MATCH_EILINE)(P, Y_MIN_PIN)) -#define MATCH_Z_MAX_EILINE(P) TERN0(HAS_Z_MAX, DEFER4(MATCH_EILINE)(P, Z_MAX_PIN)) +#define MATCH_X_MAX_EILINE(P) TERN0(USE_X_MAX, DEFER4(MATCH_EILINE)(P, X_MAX_PIN)) +#define MATCH_X_MIN_EILINE(P) TERN0(USE_X_MIN, DEFER4(MATCH_EILINE)(P, X_MIN_PIN)) +#define MATCH_Y_MAX_EILINE(P) TERN0(USE_Y_MAX, DEFER4(MATCH_EILINE)(P, Y_MAX_PIN)) +#define MATCH_Y_MIN_EILINE(P) TERN0(USE_Y_MIN, DEFER4(MATCH_EILINE)(P, Y_MIN_PIN)) +#define MATCH_Z_MAX_EILINE(P) TERN0(USE_Z_MAX, DEFER4(MATCH_EILINE)(P, Z_MAX_PIN)) #define MATCH_Z_MIN_EILINE(P) TERN0(HAS_Z_MIN_PIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PIN)) -#define MATCH_I_MAX_EILINE(P) TERN0(HAS_I_MAX, DEFER4(MATCH_EILINE)(P, I_MAX_PIN)) -#define MATCH_I_MIN_EILINE(P) TERN0(HAS_I_MIN, DEFER4(MATCH_EILINE)(P, I_MIN_PIN)) -#define MATCH_J_MAX_EILINE(P) TERN0(HAS_J_MAX, DEFER4(MATCH_EILINE)(P, J_MAX_PIN)) -#define MATCH_J_MIN_EILINE(P) TERN0(HAS_J_MIN, DEFER4(MATCH_EILINE)(P, J_MIN_PIN)) -#define MATCH_K_MAX_EILINE(P) TERN0(HAS_K_MAX, DEFER4(MATCH_EILINE)(P, K_MAX_PIN)) -#define MATCH_K_MIN_EILINE(P) TERN0(HAS_K_MIN, DEFER4(MATCH_EILINE)(P, K_MIN_PIN)) -#define MATCH_U_MAX_EILINE(P) TERN0(HAS_U_MAX, DEFER4(MATCH_EILINE)(P, U_MAX_PIN)) -#define MATCH_U_MIN_EILINE(P) TERN0(HAS_U_MIN, DEFER4(MATCH_EILINE)(P, U_MIN_PIN)) -#define MATCH_V_MAX_EILINE(P) TERN0(HAS_V_MAX, DEFER4(MATCH_EILINE)(P, V_MAX_PIN)) -#define MATCH_V_MIN_EILINE(P) TERN0(HAS_V_MIN, DEFER4(MATCH_EILINE)(P, V_MIN_PIN)) -#define MATCH_W_MAX_EILINE(P) TERN0(HAS_W_MAX, DEFER4(MATCH_EILINE)(P, W_MAX_PIN)) -#define MATCH_W_MIN_EILINE(P) TERN0(HAS_W_MIN, DEFER4(MATCH_EILINE)(P, W_MIN_PIN)) -#define MATCH_X2_MAX_EILINE(P) TERN0(HAS_X2_MAX, DEFER4(MATCH_EILINE)(P, X2_MAX_PIN)) -#define MATCH_X2_MIN_EILINE(P) TERN0(HAS_X2_MIN, DEFER4(MATCH_EILINE)(P, X2_MIN_PIN)) -#define MATCH_Y2_MAX_EILINE(P) TERN0(HAS_Y2_MAX, DEFER4(MATCH_EILINE)(P, Y2_MAX_PIN)) -#define MATCH_Y2_MIN_EILINE(P) TERN0(HAS_Y2_MIN, DEFER4(MATCH_EILINE)(P, Y2_MIN_PIN)) -#define MATCH_Z2_MAX_EILINE(P) TERN0(HAS_Z2_MAX, DEFER4(MATCH_EILINE)(P, Z2_MAX_PIN)) -#define MATCH_Z2_MIN_EILINE(P) TERN0(HAS_Z2_MIN, DEFER4(MATCH_EILINE)(P, Z2_MIN_PIN)) -#define MATCH_Z3_MAX_EILINE(P) TERN0(HAS_Z3_MAX, DEFER4(MATCH_EILINE)(P, Z3_MAX_PIN)) -#define MATCH_Z3_MIN_EILINE(P) TERN0(HAS_Z3_MIN, DEFER4(MATCH_EILINE)(P, Z3_MIN_PIN)) -#define MATCH_Z4_MAX_EILINE(P) TERN0(HAS_Z4_MAX, DEFER4(MATCH_EILINE)(P, Z4_MAX_PIN)) -#define MATCH_Z4_MIN_EILINE(P) TERN0(HAS_Z4_MIN, DEFER4(MATCH_EILINE)(P, Z4_MIN_PIN)) -#define MATCH_Z_MIN_PROBE_EILINE(P) TERN0(HAS_Z_MIN_PROBE_PIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PROBE_PIN)) +#define MATCH_I_MAX_EILINE(P) TERN0(USE_I_MAX, DEFER4(MATCH_EILINE)(P, I_MAX_PIN)) +#define MATCH_I_MIN_EILINE(P) TERN0(USE_I_MIN, DEFER4(MATCH_EILINE)(P, I_MIN_PIN)) +#define MATCH_J_MAX_EILINE(P) TERN0(USE_J_MAX, DEFER4(MATCH_EILINE)(P, J_MAX_PIN)) +#define MATCH_J_MIN_EILINE(P) TERN0(USE_J_MIN, DEFER4(MATCH_EILINE)(P, J_MIN_PIN)) +#define MATCH_K_MAX_EILINE(P) TERN0(USE_K_MAX, DEFER4(MATCH_EILINE)(P, K_MAX_PIN)) +#define MATCH_K_MIN_EILINE(P) TERN0(USE_K_MIN, DEFER4(MATCH_EILINE)(P, K_MIN_PIN)) +#define MATCH_U_MAX_EILINE(P) TERN0(USE_U_MAX, DEFER4(MATCH_EILINE)(P, U_MAX_PIN)) +#define MATCH_U_MIN_EILINE(P) TERN0(USE_U_MIN, DEFER4(MATCH_EILINE)(P, U_MIN_PIN)) +#define MATCH_V_MAX_EILINE(P) TERN0(USE_V_MAX, DEFER4(MATCH_EILINE)(P, V_MAX_PIN)) +#define MATCH_V_MIN_EILINE(P) TERN0(USE_V_MIN, DEFER4(MATCH_EILINE)(P, V_MIN_PIN)) +#define MATCH_W_MAX_EILINE(P) TERN0(USE_W_MAX, DEFER4(MATCH_EILINE)(P, W_MAX_PIN)) +#define MATCH_W_MIN_EILINE(P) TERN0(USE_W_MIN, DEFER4(MATCH_EILINE)(P, W_MIN_PIN)) +#define MATCH_X2_MAX_EILINE(P) TERN0(USE_X2_MAX, DEFER4(MATCH_EILINE)(P, X2_MAX_PIN)) +#define MATCH_X2_MIN_EILINE(P) TERN0(USE_X2_MIN, DEFER4(MATCH_EILINE)(P, X2_MIN_PIN)) +#define MATCH_Y2_MAX_EILINE(P) TERN0(USE_Y2_MAX, DEFER4(MATCH_EILINE)(P, Y2_MAX_PIN)) +#define MATCH_Y2_MIN_EILINE(P) TERN0(USE_Y2_MIN, DEFER4(MATCH_EILINE)(P, Y2_MIN_PIN)) +#define MATCH_Z2_MAX_EILINE(P) TERN0(USE_Z2_MAX, DEFER4(MATCH_EILINE)(P, Z2_MAX_PIN)) +#define MATCH_Z2_MIN_EILINE(P) TERN0(USE_Z2_MIN, DEFER4(MATCH_EILINE)(P, Z2_MIN_PIN)) +#define MATCH_Z3_MAX_EILINE(P) TERN0(USE_Z3_MAX, DEFER4(MATCH_EILINE)(P, Z3_MAX_PIN)) +#define MATCH_Z3_MIN_EILINE(P) TERN0(USE_Z3_MIN, DEFER4(MATCH_EILINE)(P, Z3_MIN_PIN)) +#define MATCH_Z4_MAX_EILINE(P) TERN0(USE_Z4_MAX, DEFER4(MATCH_EILINE)(P, Z4_MAX_PIN)) +#define MATCH_Z4_MIN_EILINE(P) TERN0(USE_Z4_MIN, DEFER4(MATCH_EILINE)(P, Z4_MIN_PIN)) +#define MATCH_Z_MIN_PROBE_EILINE(P) TERN0(USE_Z_MIN_PROBE, DEFER4(MATCH_EILINE)(P, Z_MIN_PROBE_PIN)) #define AVAILABLE_EILINE(P) ( PIN_TO_EILINE(P) != -1 \ && !MATCH_X_MAX_EILINE(P) && !MATCH_X_MIN_EILINE(P) \ @@ -105,31 +105,31 @@ void endstop_ISR() { endstops.update(); } void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(P, endstop_ISR, CHANGE) - #if HAS_X_MAX + #if USE_X_MAX #if !AVAILABLE_EILINE(X_MAX_PIN) #error "X_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(X_MAX_PIN); #endif - #if HAS_X_MIN + #if USE_X_MIN #if !AVAILABLE_EILINE(X_MIN_PIN) #error "X_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(X_MIN_PIN); #endif - #if HAS_Y_MAX + #if USE_Y_MAX #if !AVAILABLE_EILINE(Y_MAX_PIN) #error "Y_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Y_MAX_PIN); #endif - #if HAS_Y_MIN + #if USE_Y_MIN #if !AVAILABLE_EILINE(Y_MIN_PIN) #error "Y_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Y_MIN_PIN); #endif - #if HAS_Z_MAX + #if USE_Z_MAX #if !AVAILABLE_EILINE(Z_MAX_PIN) #error "Z_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif @@ -141,115 +141,115 @@ void setup_endstop_interrupts() { #endif _ATTACH(Z_MIN_PIN); #endif - #if HAS_Z2_MAX + #if USE_Z2_MAX #if !AVAILABLE_EILINE(Z2_MAX_PIN) #error "Z2_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z2_MAX_PIN); #endif - #if HAS_Z2_MIN + #if USE_Z2_MIN #if !AVAILABLE_EILINE(Z2_MIN_PIN) #error "Z2_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z2_MIN_PIN); #endif - #if HAS_Z3_MAX + #if USE_Z3_MAX #if !AVAILABLE_EILINE(Z3_MAX_PIN) #error "Z3_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z3_MAX_PIN); #endif - #if HAS_Z3_MIN + #if USE_Z3_MIN #if !AVAILABLE_EILINE(Z3_MIN_PIN) #error "Z3_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z3_MIN_PIN); #endif - #if HAS_Z4_MAX + #if USE_Z4_MAX #if !AVAILABLE_EILINE(Z4_MAX_PIN) #error "Z4_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z4_MAX_PIN); #endif - #if HAS_Z4_MIN + #if USE_Z4_MIN #if !AVAILABLE_EILINE(Z4_MIN_PIN) #error "Z4_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z4_MIN_PIN); #endif - #if HAS_Z_MIN_PROBE_PIN + #if USE_Z_MIN_PROBE #if !AVAILABLE_EILINE(Z_MIN_PROBE_PIN) #error "Z_MIN_PROBE_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif _ATTACH(Z_MIN_PROBE_PIN); #endif - #if HAS_I_MAX + #if USE_I_MAX #if !AVAILABLE_EILINE(I_MAX_PIN) #error "I_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(I_MAX_PIN, endstop_ISR, CHANGE); #endif - #if HAS_I_MIN + #if USE_I_MIN #if !AVAILABLE_EILINE(I_MIN_PIN) #error "I_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(I_MIN_PIN, endstop_ISR, CHANGE); #endif - #if HAS_J_MAX + #if USE_J_MAX #if !AVAILABLE_EILINE(J_MAX_PIN) #error "J_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(J_MAX_PIN, endstop_ISR, CHANGE); #endif - #if HAS_J_MIN + #if USE_J_MIN #if !AVAILABLE_EILINE(J_MIN_PIN) #error "J_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(J_MIN_PIN, endstop_ISR, CHANGE); #endif - #if HAS_K_MAX + #if USE_K_MAX #if !AVAILABLE_EILINE(K_MAX_PIN) #error "K_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(K_MAX_PIN, endstop_ISR, CHANGE); #endif - #if HAS_K_MIN + #if USE_K_MIN #if !AVAILABLE_EILINE(K_MIN_PIN) #error "K_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(K_MIN_PIN, endstop_ISR, CHANGE); #endif - #if HAS_U_MAX + #if USE_U_MAX #if !AVAILABLE_EILINE(U_MAX_PIN) #error "U_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(U_MAX_PIN, endstop_ISR, CHANGE); #endif - #if HAS_U_MIN + #if USE_U_MIN #if !AVAILABLE_EILINE(U_MIN_PIN) #error "U_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(U_MIN_PIN, endstop_ISR, CHANGE); #endif - #if HAS_V_MAX + #if USE_V_MAX #if !AVAILABLE_EILINE(V_MAX_PIN) #error "V_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(V_MAX_PIN, endstop_ISR, CHANGE); #endif - #if HAS_V_MIN + #if USE_V_MIN #if !AVAILABLE_EILINE(V_MIN_PIN) #error "V_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(V_MIN_PIN, endstop_ISR, CHANGE); #endif - #if HAS_W_MAX + #if USE_W_MAX #if !AVAILABLE_EILINE(W_MAX_PIN) #error "W_MAX_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif attachInterrupt(W_MAX_PIN, endstop_ISR, CHANGE); #endif - #if HAS_W_MIN + #if USE_W_MIN #if !AVAILABLE_EILINE(W_MIN_PIN) #error "W_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif diff --git a/Marlin/src/HAL/STM32/endstop_interrupts.h b/Marlin/src/HAL/STM32/endstop_interrupts.h index ce160d940551..5ae228d3f869 100644 --- a/Marlin/src/HAL/STM32/endstop_interrupts.h +++ b/Marlin/src/HAL/STM32/endstop_interrupts.h @@ -29,33 +29,33 @@ void endstop_ISR() { endstops.update(); } void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(P, endstop_ISR, CHANGE) - TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); - TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); - TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); - TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); - TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); - TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); - TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); - TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); - TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); - TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); - TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); - TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); - TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); - TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); - TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); - TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN)); - TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); - TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); - TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); - TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); - TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); - TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); - TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); - TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); - TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); - TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); - TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); - TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); + TERN_(USE_X_MAX, _ATTACH(X_MAX_PIN)); + TERN_(USE_X_MIN, _ATTACH(X_MIN_PIN)); + TERN_(USE_Y_MAX, _ATTACH(Y_MAX_PIN)); + TERN_(USE_Y_MIN, _ATTACH(Y_MIN_PIN)); + TERN_(USE_Z_MAX, _ATTACH(Z_MAX_PIN)); + TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(USE_X2_MAX, _ATTACH(X2_MAX_PIN)); + TERN_(USE_X2_MIN, _ATTACH(X2_MIN_PIN)); + TERN_(USE_Y2_MAX, _ATTACH(Y2_MAX_PIN)); + TERN_(USE_Y2_MIN, _ATTACH(Y2_MIN_PIN)); + TERN_(USE_Z2_MAX, _ATTACH(Z2_MAX_PIN)); + TERN_(USE_Z2_MIN, _ATTACH(Z2_MIN_PIN)); + TERN_(USE_Z3_MAX, _ATTACH(Z3_MAX_PIN)); + TERN_(USE_Z3_MIN, _ATTACH(Z3_MIN_PIN)); + TERN_(USE_Z4_MAX, _ATTACH(Z4_MAX_PIN)); + TERN_(USE_Z4_MIN, _ATTACH(Z4_MIN_PIN)); + TERN_(USE_Z_MIN_PROBE, _ATTACH(Z_MIN_PROBE_PIN)); + TERN_(USE_I_MAX, _ATTACH(I_MAX_PIN)); + TERN_(USE_I_MIN, _ATTACH(I_MIN_PIN)); + TERN_(USE_J_MAX, _ATTACH(J_MAX_PIN)); + TERN_(USE_J_MIN, _ATTACH(J_MIN_PIN)); + TERN_(USE_K_MAX, _ATTACH(K_MAX_PIN)); + TERN_(USE_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(USE_U_MAX, _ATTACH(U_MAX_PIN)); + TERN_(USE_U_MIN, _ATTACH(U_MIN_PIN)); + TERN_(USE_V_MAX, _ATTACH(V_MAX_PIN)); + TERN_(USE_V_MIN, _ATTACH(V_MIN_PIN)); + TERN_(USE_W_MAX, _ATTACH(W_MAX_PIN)); + TERN_(USE_W_MIN, _ATTACH(W_MIN_PIN)); } diff --git a/Marlin/src/HAL/STM32F1/endstop_interrupts.h b/Marlin/src/HAL/STM32F1/endstop_interrupts.h index b4df5d71f1b3..6febcec5d0f2 100644 --- a/Marlin/src/HAL/STM32F1/endstop_interrupts.h +++ b/Marlin/src/HAL/STM32F1/endstop_interrupts.h @@ -54,33 +54,33 @@ void endstop_ISR() { endstops.update(); } void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(P, endstop_ISR, CHANGE) - TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); - TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); - TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); - TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); - TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); - TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); - TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); - TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); - TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); - TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); - TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); - TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); - TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); - TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); - TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); - TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN)); - TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); - TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); - TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); - TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); - TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); - TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); - TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); - TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); - TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); - TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); - TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); - TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); + TERN_(USE_X_MAX, _ATTACH(X_MAX_PIN)); + TERN_(USE_X_MIN, _ATTACH(X_MIN_PIN)); + TERN_(USE_Y_MAX, _ATTACH(Y_MAX_PIN)); + TERN_(USE_Y_MIN, _ATTACH(Y_MIN_PIN)); + TERN_(USE_Z_MAX, _ATTACH(Z_MAX_PIN)); + TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(USE_X2_MAX, _ATTACH(X2_MAX_PIN)); + TERN_(USE_X2_MIN, _ATTACH(X2_MIN_PIN)); + TERN_(USE_Y2_MAX, _ATTACH(Y2_MAX_PIN)); + TERN_(USE_Y2_MIN, _ATTACH(Y2_MIN_PIN)); + TERN_(USE_Z2_MAX, _ATTACH(Z2_MAX_PIN)); + TERN_(USE_Z2_MIN, _ATTACH(Z2_MIN_PIN)); + TERN_(USE_Z3_MAX, _ATTACH(Z3_MAX_PIN)); + TERN_(USE_Z3_MIN, _ATTACH(Z3_MIN_PIN)); + TERN_(USE_Z4_MAX, _ATTACH(Z4_MAX_PIN)); + TERN_(USE_Z4_MIN, _ATTACH(Z4_MIN_PIN)); + TERN_(USE_Z_MIN_PROBE, _ATTACH(Z_MIN_PROBE_PIN)); + TERN_(USE_I_MAX, _ATTACH(I_MAX_PIN)); + TERN_(USE_I_MIN, _ATTACH(I_MIN_PIN)); + TERN_(USE_J_MAX, _ATTACH(J_MAX_PIN)); + TERN_(USE_J_MIN, _ATTACH(J_MIN_PIN)); + TERN_(USE_K_MAX, _ATTACH(K_MAX_PIN)); + TERN_(USE_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(USE_U_MAX, _ATTACH(U_MAX_PIN)); + TERN_(USE_U_MIN, _ATTACH(U_MIN_PIN)); + TERN_(USE_V_MAX, _ATTACH(V_MAX_PIN)); + TERN_(USE_V_MIN, _ATTACH(V_MIN_PIN)); + TERN_(USE_W_MAX, _ATTACH(W_MAX_PIN)); + TERN_(USE_W_MIN, _ATTACH(W_MIN_PIN)); } diff --git a/Marlin/src/HAL/TEENSY31_32/endstop_interrupts.h b/Marlin/src/HAL/TEENSY31_32/endstop_interrupts.h index 9ce4fcdb2fce..28510fb508d6 100644 --- a/Marlin/src/HAL/TEENSY31_32/endstop_interrupts.h +++ b/Marlin/src/HAL/TEENSY31_32/endstop_interrupts.h @@ -47,33 +47,33 @@ void endstop_ISR() { endstops.update(); } void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(digitalPinToInterrupt(P), endstop_ISR, CHANGE) - TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); - TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); - TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); - TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); - TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); - TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); - TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); - TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); - TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); - TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); - TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); - TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); - TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); - TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); - TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); - TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN)); - TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); - TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); - TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); - TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); - TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); - TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); - TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); - TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); - TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); - TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); - TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); - TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); + TERN_(USE_X_MAX, _ATTACH(X_MAX_PIN)); + TERN_(USE_X_MIN, _ATTACH(X_MIN_PIN)); + TERN_(USE_Y_MAX, _ATTACH(Y_MAX_PIN)); + TERN_(USE_Y_MIN, _ATTACH(Y_MIN_PIN)); + TERN_(USE_Z_MAX, _ATTACH(Z_MAX_PIN)); + TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(USE_X2_MAX, _ATTACH(X2_MAX_PIN)); + TERN_(USE_X2_MIN, _ATTACH(X2_MIN_PIN)); + TERN_(USE_Y2_MAX, _ATTACH(Y2_MAX_PIN)); + TERN_(USE_Y2_MIN, _ATTACH(Y2_MIN_PIN)); + TERN_(USE_Z2_MAX, _ATTACH(Z2_MAX_PIN)); + TERN_(USE_Z2_MIN, _ATTACH(Z2_MIN_PIN)); + TERN_(USE_Z3_MAX, _ATTACH(Z3_MAX_PIN)); + TERN_(USE_Z3_MIN, _ATTACH(Z3_MIN_PIN)); + TERN_(USE_Z4_MAX, _ATTACH(Z4_MAX_PIN)); + TERN_(USE_Z4_MIN, _ATTACH(Z4_MIN_PIN)); + TERN_(USE_Z_MIN_PROBE, _ATTACH(Z_MIN_PROBE_PIN)); + TERN_(USE_I_MAX, _ATTACH(I_MAX_PIN)); + TERN_(USE_I_MIN, _ATTACH(I_MIN_PIN)); + TERN_(USE_J_MAX, _ATTACH(J_MAX_PIN)); + TERN_(USE_J_MIN, _ATTACH(J_MIN_PIN)); + TERN_(USE_K_MAX, _ATTACH(K_MAX_PIN)); + TERN_(USE_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(USE_U_MAX, _ATTACH(U_MAX_PIN)); + TERN_(USE_U_MIN, _ATTACH(U_MIN_PIN)); + TERN_(USE_V_MAX, _ATTACH(V_MAX_PIN)); + TERN_(USE_V_MIN, _ATTACH(V_MIN_PIN)); + TERN_(USE_W_MAX, _ATTACH(W_MAX_PIN)); + TERN_(USE_W_MIN, _ATTACH(W_MIN_PIN)); } diff --git a/Marlin/src/HAL/TEENSY35_36/endstop_interrupts.h b/Marlin/src/HAL/TEENSY35_36/endstop_interrupts.h index c9ef2787698d..505434cd8966 100644 --- a/Marlin/src/HAL/TEENSY35_36/endstop_interrupts.h +++ b/Marlin/src/HAL/TEENSY35_36/endstop_interrupts.h @@ -46,33 +46,33 @@ void endstop_ISR() { endstops.update(); } */ void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(digitalPinToInterrupt(P), endstop_ISR, CHANGE) - TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); - TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); - TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); - TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); - TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); - TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); - TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); - TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); - TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); - TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); - TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); - TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); - TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); - TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); - TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); - TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN)); - TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); - TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); - TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); - TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); - TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); - TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); - TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); - TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); - TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); - TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); - TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); - TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); + TERN_(USE_X_MAX, _ATTACH(X_MAX_PIN)); + TERN_(USE_X_MIN, _ATTACH(X_MIN_PIN)); + TERN_(USE_Y_MAX, _ATTACH(Y_MAX_PIN)); + TERN_(USE_Y_MIN, _ATTACH(Y_MIN_PIN)); + TERN_(USE_Z_MAX, _ATTACH(Z_MAX_PIN)); + TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(USE_X2_MAX, _ATTACH(X2_MAX_PIN)); + TERN_(USE_X2_MIN, _ATTACH(X2_MIN_PIN)); + TERN_(USE_Y2_MAX, _ATTACH(Y2_MAX_PIN)); + TERN_(USE_Y2_MIN, _ATTACH(Y2_MIN_PIN)); + TERN_(USE_Z2_MAX, _ATTACH(Z2_MAX_PIN)); + TERN_(USE_Z2_MIN, _ATTACH(Z2_MIN_PIN)); + TERN_(USE_Z3_MAX, _ATTACH(Z3_MAX_PIN)); + TERN_(USE_Z3_MIN, _ATTACH(Z3_MIN_PIN)); + TERN_(USE_Z4_MAX, _ATTACH(Z4_MAX_PIN)); + TERN_(USE_Z4_MIN, _ATTACH(Z4_MIN_PIN)); + TERN_(USE_Z_MIN_PROBE, _ATTACH(Z_MIN_PROBE_PIN)); + TERN_(USE_I_MAX, _ATTACH(I_MAX_PIN)); + TERN_(USE_I_MIN, _ATTACH(I_MIN_PIN)); + TERN_(USE_J_MAX, _ATTACH(J_MAX_PIN)); + TERN_(USE_J_MIN, _ATTACH(J_MIN_PIN)); + TERN_(USE_K_MAX, _ATTACH(K_MAX_PIN)); + TERN_(USE_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(USE_U_MAX, _ATTACH(U_MAX_PIN)); + TERN_(USE_U_MIN, _ATTACH(U_MIN_PIN)); + TERN_(USE_V_MAX, _ATTACH(V_MAX_PIN)); + TERN_(USE_V_MIN, _ATTACH(V_MIN_PIN)); + TERN_(USE_W_MAX, _ATTACH(W_MAX_PIN)); + TERN_(USE_W_MIN, _ATTACH(W_MIN_PIN)); } diff --git a/Marlin/src/HAL/TEENSY40_41/endstop_interrupts.h b/Marlin/src/HAL/TEENSY40_41/endstop_interrupts.h index 1e4ce4cef336..325d97daeb71 100644 --- a/Marlin/src/HAL/TEENSY40_41/endstop_interrupts.h +++ b/Marlin/src/HAL/TEENSY40_41/endstop_interrupts.h @@ -46,33 +46,33 @@ void endstop_ISR() { endstops.update(); } */ void setup_endstop_interrupts() { #define _ATTACH(P) attachInterrupt(digitalPinToInterrupt(P), endstop_ISR, CHANGE) - TERN_(HAS_X_MAX, _ATTACH(X_MAX_PIN)); - TERN_(HAS_X_MIN, _ATTACH(X_MIN_PIN)); - TERN_(HAS_Y_MAX, _ATTACH(Y_MAX_PIN)); - TERN_(HAS_Y_MIN, _ATTACH(Y_MIN_PIN)); - TERN_(HAS_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); - TERN_(HAS_X2_MAX, _ATTACH(X2_MAX_PIN)); - TERN_(HAS_X2_MIN, _ATTACH(X2_MIN_PIN)); - TERN_(HAS_Y2_MAX, _ATTACH(Y2_MAX_PIN)); - TERN_(HAS_Y2_MIN, _ATTACH(Y2_MIN_PIN)); - TERN_(HAS_Z2_MAX, _ATTACH(Z2_MAX_PIN)); - TERN_(HAS_Z2_MIN, _ATTACH(Z2_MIN_PIN)); - TERN_(HAS_Z3_MAX, _ATTACH(Z3_MAX_PIN)); - TERN_(HAS_Z3_MIN, _ATTACH(Z3_MIN_PIN)); - TERN_(HAS_Z4_MAX, _ATTACH(Z4_MAX_PIN)); - TERN_(HAS_Z4_MIN, _ATTACH(Z4_MIN_PIN)); - TERN_(HAS_Z_MIN_PROBE_PIN, _ATTACH(Z_MIN_PROBE_PIN)); - TERN_(HAS_I_MAX, _ATTACH(I_MAX_PIN)); - TERN_(HAS_I_MIN, _ATTACH(I_MIN_PIN)); - TERN_(HAS_J_MAX, _ATTACH(J_MAX_PIN)); - TERN_(HAS_J_MIN, _ATTACH(J_MIN_PIN)); - TERN_(HAS_K_MAX, _ATTACH(K_MAX_PIN)); - TERN_(HAS_K_MIN, _ATTACH(K_MIN_PIN)); - TERN_(HAS_U_MAX, _ATTACH(U_MAX_PIN)); - TERN_(HAS_U_MIN, _ATTACH(U_MIN_PIN)); - TERN_(HAS_V_MAX, _ATTACH(V_MAX_PIN)); - TERN_(HAS_V_MIN, _ATTACH(V_MIN_PIN)); - TERN_(HAS_W_MAX, _ATTACH(W_MAX_PIN)); - TERN_(HAS_W_MIN, _ATTACH(W_MIN_PIN)); + TERN_(USE_X_MAX, _ATTACH(X_MAX_PIN)); + TERN_(USE_X_MIN, _ATTACH(X_MIN_PIN)); + TERN_(USE_Y_MAX, _ATTACH(Y_MAX_PIN)); + TERN_(USE_Y_MIN, _ATTACH(Y_MIN_PIN)); + TERN_(USE_Z_MAX, _ATTACH(Z_MAX_PIN)); + TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(USE_X2_MAX, _ATTACH(X2_MAX_PIN)); + TERN_(USE_X2_MIN, _ATTACH(X2_MIN_PIN)); + TERN_(USE_Y2_MAX, _ATTACH(Y2_MAX_PIN)); + TERN_(USE_Y2_MIN, _ATTACH(Y2_MIN_PIN)); + TERN_(USE_Z2_MAX, _ATTACH(Z2_MAX_PIN)); + TERN_(USE_Z2_MIN, _ATTACH(Z2_MIN_PIN)); + TERN_(USE_Z3_MAX, _ATTACH(Z3_MAX_PIN)); + TERN_(USE_Z3_MIN, _ATTACH(Z3_MIN_PIN)); + TERN_(USE_Z4_MAX, _ATTACH(Z4_MAX_PIN)); + TERN_(USE_Z4_MIN, _ATTACH(Z4_MIN_PIN)); + TERN_(USE_Z_MIN_PROBE, _ATTACH(Z_MIN_PROBE_PIN)); + TERN_(USE_I_MAX, _ATTACH(I_MAX_PIN)); + TERN_(USE_I_MIN, _ATTACH(I_MIN_PIN)); + TERN_(USE_J_MAX, _ATTACH(J_MAX_PIN)); + TERN_(USE_J_MIN, _ATTACH(J_MIN_PIN)); + TERN_(USE_K_MAX, _ATTACH(K_MAX_PIN)); + TERN_(USE_K_MIN, _ATTACH(K_MIN_PIN)); + TERN_(USE_U_MAX, _ATTACH(U_MAX_PIN)); + TERN_(USE_U_MIN, _ATTACH(U_MIN_PIN)); + TERN_(USE_V_MAX, _ATTACH(V_MAX_PIN)); + TERN_(USE_V_MIN, _ATTACH(V_MIN_PIN)); + TERN_(USE_W_MAX, _ATTACH(W_MAX_PIN)); + TERN_(USE_W_MIN, _ATTACH(W_MIN_PIN)); } diff --git a/Marlin/src/feature/tmc_util.h b/Marlin/src/feature/tmc_util.h index c10bab62749d..fffa748f93cc 100644 --- a/Marlin/src/feature/tmc_util.h +++ b/Marlin/src/feature/tmc_util.h @@ -378,6 +378,7 @@ void test_tmc_connection(LOGICAL_AXIS_DECL(const bool, true)); return drv_status.stallGuard; } + #endif // SPI_ENDSTOPS #endif // USE_SENSORLESS diff --git a/Marlin/src/gcode/calibrate/G28.cpp b/Marlin/src/gcode/calibrate/G28.cpp index ed2cda29326e..4c654c350925 100644 --- a/Marlin/src/gcode/calibrate/G28.cpp +++ b/Marlin/src/gcode/calibrate/G28.cpp @@ -332,7 +332,7 @@ void GcodeSuite::G28() { #if SENSORLESS_STALLGUARD_DELAY safe_delay(SENSORLESS_STALLGUARD_DELAY); // Short delay needed to settle #endif - #endif + #endif // HAS_HOMING_CURRENT #if ENABLED(IMPROVE_HOMING_RELIABILITY) motion_state_t saved_motion_state = begin_slow_homing(); diff --git a/Marlin/src/gcode/calibrate/G33.cpp b/Marlin/src/gcode/calibrate/G33.cpp index 08734073d665..226570acce36 100644 --- a/Marlin/src/gcode/calibrate/G33.cpp +++ b/Marlin/src/gcode/calibrate/G33.cpp @@ -476,8 +476,7 @@ void GcodeSuite::G33() { #if HAS_DELTA_SENSORLESS_PROBING if (verbose_level > 0 && do_save_offset_adj) { offset_sensorless_adj.reset(); - - auto caltower = [&](Probe::sense_bool_t s){ + auto caltower = [&](Probe::sense_bool_t s) { float z_at_pt[NPP + 1]; LOOP_CAL_ALL(rad) z_at_pt[rad] = 0.0f; probe.test_sensitivity = s; diff --git a/Marlin/src/gcode/control/M605.cpp b/Marlin/src/gcode/control/M605.cpp index a52c706fa6b5..6bf99df4c27a 100644 --- a/Marlin/src/gcode/control/M605.cpp +++ b/Marlin/src/gcode/control/M605.cpp @@ -127,21 +127,20 @@ case DXC_MIRRORED_MODE: DEBUG_ECHOPGM("MIRRORED"); break; } DEBUG_ECHOPGM("\nActive Ext: ", active_extruder); - if (!active_extruder_parked) DEBUG_ECHOPGM(" NOT "); - DEBUG_ECHOPGM(" parked."); - DEBUG_ECHOPGM("\nactive_extruder_x_pos: ", current_position.x); - DEBUG_ECHOPGM("\ninactive_extruder_x: ", inactive_extruder_x); - DEBUG_ECHOPGM("\nextruder_duplication_enabled: ", extruder_duplication_enabled); - DEBUG_ECHOPGM("\nduplicate_extruder_x_offset: ", duplicate_extruder_x_offset); - DEBUG_ECHOPGM("\nduplicate_extruder_temp_offset: ", duplicate_extruder_temp_offset); - DEBUG_ECHOPGM("\ndelayed_move_time: ", delayed_move_time); - DEBUG_ECHOPGM("\nX1 Home X: ", x_home_pos(0), "\nX1_MIN_POS=", X1_MIN_POS, "\nX1_MAX_POS=", X1_MAX_POS); - DEBUG_ECHOPGM("\nX2 Home X: ", x_home_pos(1), "\nX2_MIN_POS=", X2_MIN_POS, "\nX2_MAX_POS=", X2_MAX_POS); - DEBUG_ECHOPGM("\nX2_HOME_DIR=", X2_HOME_DIR, "\nX2_HOME_POS=", X2_HOME_POS); - DEBUG_ECHOPGM("\nDEFAULT_DUAL_X_CARRIAGE_MODE=", STRINGIFY(DEFAULT_DUAL_X_CARRIAGE_MODE)); - DEBUG_ECHOPGM("\toolchange_settings.z_raise=", toolchange_settings.z_raise); - DEBUG_ECHOPGM("\nDEFAULT_DUPLICATION_X_OFFSET=", DEFAULT_DUPLICATION_X_OFFSET); - DEBUG_EOL(); + if (!active_extruder_parked) DEBUG_ECHOPGM(" NOT ", F(" parked.")); + DEBUG_ECHOLNPGM( + "\nactive_extruder_x_pos: ", current_position.x, + "\ninactive_extruder_x: ", inactive_extruder_x, + "\nextruder_duplication_enabled: ", extruder_duplication_enabled, + "\nduplicate_extruder_x_offset: ", duplicate_extruder_x_offset, + "\nduplicate_extruder_temp_offset: ", duplicate_extruder_temp_offset, + "\ndelayed_move_time: ", delayed_move_time, + "\nX1 Home: ", x_home_pos(0), " X1_MIN_POS=", X1_MIN_POS, " X1_MAX_POS=", X1_MAX_POS, + "\nX2 Home: ", x_home_pos(1), " X2_MIN_POS=", X2_MIN_POS, " X2_MAX_POS=", X2_MAX_POS, + "\nDEFAULT_DUAL_X_CARRIAGE_MODE=", STRINGIFY(DEFAULT_DUAL_X_CARRIAGE_MODE), + "\toolchange_settings.z_raise=", toolchange_settings.z_raise, + "\nDEFAULT_DUPLICATION_X_OFFSET=", DEFAULT_DUPLICATION_X_OFFSET + ); HOTEND_LOOP() { DEBUG_ECHOPGM_P(SP_T_STR, e); diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index bee4abf7a70d..8114cb426106 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -1391,9 +1391,9 @@ #define HAS_DELTA_SENSORLESS_PROBING 1 #endif #if NONE(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, HAS_DELTA_SENSORLESS_PROBING) - #define USES_Z_MIN_PROBE_PIN 1 + #define USE_Z_MIN_PROBE 1 #endif - #if Z_HOME_TO_MIN && (DISABLED(USES_Z_MIN_PROBE_PIN) || ENABLED(USE_PROBE_FOR_Z_HOMING)) + #if Z_HOME_TO_MIN && (DISABLED(USE_Z_MIN_PROBE) || ENABLED(USE_PROBE_FOR_Z_HOMING)) #define HOMING_Z_WITH_PROBE 1 #endif #ifndef Z_PROBE_LOW_POINT @@ -1778,7 +1778,7 @@ #endif #endif -#if X_HOME_DIR || (HAS_Y_AXIS && Y_HOME_DIR) || (HAS_Z_AXIS && Z_HOME_DIR) \ +#if (HAS_X_AXIS && X_HOME_DIR) || (HAS_Y_AXIS && Y_HOME_DIR) || (HAS_Z_AXIS && Z_HOME_DIR) \ || (HAS_I_AXIS && I_HOME_DIR) || (HAS_J_AXIS && J_HOME_DIR) || (HAS_K_AXIS && K_HOME_DIR) \ || (HAS_U_AXIS && U_HOME_DIR) || (HAS_V_AXIS && V_HOME_DIR) || (HAS_W_AXIS && W_HOME_DIR) #define HAS_ENDSTOPS 1 diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index 1772430dc493..7ea12f049340 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -1044,12 +1044,6 @@ #define POLL_JOG #endif -#if X2_HOME_DIR > 0 - #define X2_HOME_TO_MAX 1 -#elif X2_HOME_DIR < 0 - #define X2_HOME_TO_MIN 1 -#endif - #ifndef HOMING_BUMP_MM #define HOMING_BUMP_MM { 0, 0, 0 } #endif @@ -1156,6 +1150,7 @@ #define SD_CONNECTION_IS(V) (_SDCARD_ID(SDCARD_CONNECTION) == _SDCARD_ID(V)) #else #define SD_CONNECTION_IS(...) 0 + #undef SD_ABORT_ON_ENDSTOP_HIT #endif // Power Monitor sensors diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 7319905ee636..b7ee00def826 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -1398,6 +1398,7 @@ #if EITHER(SENSORLESS_HOMING, SENSORLESS_PROBING) #define USE_SENSORLESS 1 #endif + // Disable Z axis sensorless homing if a probe is used to home the Z axis #if HOMING_Z_WITH_PROBE #undef Z_STALL_SENSITIVITY @@ -1481,15 +1482,6 @@ #define Y2_SLAVE_ADDRESS 0 #endif #endif - #if HAS_U_AXIS - #define U_SPI_SENSORLESS U_SENSORLESS - #endif - #if HAS_V_AXIS - #define V_SPI_SENSORLESS V_SENSORLESS - #endif - #if HAS_W_AXIS - #define W_SPI_SENSORLESS W_SENSORLESS - #endif #endif #if AXIS_IS_TMC(Z) @@ -1944,202 +1936,205 @@ // Endstops and bed probe // -#define _HAS_STOP(A,N,M,C) ((A##_HOME_TO_##M || (C+0)) && PIN_EXISTS(A##N##_##M)) +#define _USE_STOP(A,N,M,C) ((A##_HOME_TO_##M || (C+0)) && PIN_EXISTS(A##N##_##M)) -#if _HAS_STOP(X,,MIN,) - #define HAS_X_MIN 1 +#if _USE_STOP(X,,MIN,) + #define USE_X_MIN 1 #endif -#if _HAS_STOP(X,,MAX,ENABLED(DUAL_X_CARRIAGE)) - #define HAS_X_MAX 1 +#if _USE_STOP(X,,MAX,ENABLED(DUAL_X_CARRIAGE)) + #define USE_X_MAX 1 #endif -#if HAS_X_MIN || HAS_X_MAX +#if USE_X_MIN || USE_X_MAX #define HAS_X_ENDSTOP 1 #endif -#if _HAS_STOP(Y,,MIN,) - #define HAS_Y_MIN 1 -#elif _HAS_STOP(Y,,MAX,) - #define HAS_Y_MAX 1 +#if _USE_STOP(Y,,MIN,) + #define USE_Y_MIN 1 +#elif _USE_STOP(Y,,MAX,) + #define USE_Y_MAX 1 #endif -#if HAS_Y_MIN || HAS_Y_MAX +#if USE_Y_MIN || USE_Y_MAX #define HAS_Y_ENDSTOP 1 #endif -#if _HAS_STOP(Z,,MIN,EITHER(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, HAS_DELTA_SENSORLESS_PROBING)) - #define HAS_Z_MIN 1 +#if _USE_STOP(Z,,MIN,EITHER(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, HAS_DELTA_SENSORLESS_PROBING)) + #define USE_Z_MIN 1 #if !HAS_DELTA_SENSORLESS_PROBING #define HAS_Z_MIN_PIN 1 #endif #endif -#if _HAS_STOP(Z,,MAX,) - #define HAS_Z_MAX 1 +#if _USE_STOP(Z,,MAX,) + #define USE_Z_MAX 1 #endif -#if HAS_Z_MIN || HAS_Z_MAX +#if USE_Z_MIN || USE_Z_MAX #define HAS_Z_ENDSTOP 1 #endif -#if _HAS_STOP(I,,MIN,) - #define HAS_I_MIN 1 -#elif _HAS_STOP(I,,MAX,) - #define HAS_I_MAX 1 +#if _USE_STOP(I,,MIN,) + #define USE_I_MIN 1 +#elif _USE_STOP(I,,MAX,) + #define USE_I_MAX 1 #endif -#if HAS_I_MIN || HAS_I_MAX +#if USE_I_MIN || USE_I_MAX #define HAS_I_ENDSTOP 1 #endif -#if _HAS_STOP(J,,MIN,) - #define HAS_J_MIN 1 -#elif _HAS_STOP(J,,MAX,) - #define HAS_J_MAX 1 +#if _USE_STOP(J,,MIN,) + #define USE_J_MIN 1 +#elif _USE_STOP(J,,MAX,) + #define USE_J_MAX 1 #endif -#if HAS_J_MIN || HAS_J_MAX +#if USE_J_MIN || USE_J_MAX #define HAS_J_ENDSTOP 1 #endif -#if _HAS_STOP(K,,MIN,) - #define HAS_K_MIN 1 -#elif _HAS_STOP(K,,MAX,) - #define HAS_K_MAX 1 +#if _USE_STOP(K,,MIN,) + #define USE_K_MIN 1 +#elif _USE_STOP(K,,MAX,) + #define USE_K_MAX 1 #endif -#if HAS_K_MIN || HAS_K_MAX +#if USE_K_MIN || USE_K_MAX #define HAS_K_ENDSTOP 1 #endif -#if _HAS_STOP(U,,MIN,) - #define HAS_U_MIN 1 -#elif _HAS_STOP(U,,MAX,) - #define HAS_U_MAX 1 +#if _USE_STOP(U,,MIN,) + #define USE_U_MIN 1 +#elif _USE_STOP(U,,MAX,) + #define USE_U_MAX 1 #endif -#if HAS_U_MIN || HAS_U_MAX +#if USE_U_MIN || USE_U_MAX #define HAS_U_ENDSTOP 1 #endif -#if _HAS_STOP(V,,MIN,) - #define HAS_V_MIN 1 -#elif _HAS_STOP(V,,MAX,) - #define HAS_V_MAX 1 +#if _USE_STOP(V,,MIN,) + #define USE_V_MIN 1 +#elif _USE_STOP(V,,MAX,) + #define USE_V_MAX 1 #endif -#if HAS_V_MIN || HAS_V_MAX +#if USE_V_MIN || USE_V_MAX #define HAS_V_ENDSTOP 1 #endif -#if _HAS_STOP(W,,MIN,) - #define HAS_W_MIN 1 -#elif _HAS_STOP(W,,MAX,) - #define HAS_W_MAX 1 +#if _USE_STOP(W,,MIN,) + #define USE_W_MIN 1 +#elif _USE_STOP(W,,MAX,) + #define USE_W_MAX 1 #endif -#if HAS_W_MIN || HAS_W_MAX +#if USE_W_MIN || USE_W_MAX #define HAS_W_ENDSTOP 1 #endif #if EITHER(DUAL_X_CARRIAGE, X_DUAL_ENDSTOPS) - #if _HAS_STOP(X,2,MIN,) - #define HAS_X2_MIN 1 - #elif _HAS_STOP(X,2,MAX,) - #define HAS_X2_MAX 1 + #if _USE_STOP(X,2,MIN,) + #define USE_X2_MIN 1 + #elif _USE_STOP(X,2,MAX,) + #define USE_X2_MAX 1 #endif - #if HAS_X2_MIN || HAS_X2_MAX + #if USE_X2_MIN || USE_X2_MAX #define HAS_X2_ENDSTOP 1 #endif #endif #if ENABLED(Y_DUAL_ENDSTOPS) - #if _HAS_STOP(Y,2,MIN,) - #define HAS_Y2_MIN 1 - #elif _HAS_STOP(Y,2,MAX,) - #define HAS_Y2_MAX 1 + #if _USE_STOP(Y,2,MIN,) + #define USE_Y2_MIN 1 + #elif _USE_STOP(Y,2,MAX,) + #define USE_Y2_MAX 1 #endif - #if HAS_Y2_MIN || HAS_Y2_MAX + #if USE_Y2_MIN || USE_Y2_MAX #define HAS_Y2_ENDSTOP 1 #endif #endif #if ENABLED(Z_MULTI_ENDSTOPS) - #if _HAS_STOP(Z,2,MIN,) - #define HAS_Z2_MIN 1 - #elif _HAS_STOP(Z,2,MAX,) - #define HAS_Z2_MAX 1 + #if _USE_STOP(Z,2,MIN,) + #define USE_Z2_MIN 1 + #elif _USE_STOP(Z,2,MAX,) + #define USE_Z2_MAX 1 #endif - #if HAS_Z2_MIN || HAS_Z2_MAX + #if USE_Z2_MIN || USE_Z2_MAX #define HAS_Z2_ENDSTOP 1 #endif #if NUM_Z_STEPPERS >= 3 - #if _HAS_STOP(Z,3,MIN,) - #define HAS_Z3_MIN 1 - #elif _HAS_STOP(Z,3,MAX,) - #define HAS_Z3_MAX 1 + #if _USE_STOP(Z,3,MIN,) + #define USE_Z3_MIN 1 + #elif _USE_STOP(Z,3,MAX,) + #define USE_Z3_MAX 1 #endif - #if HAS_Z3_MIN || HAS_Z3_MAX + #if USE_Z3_MIN || USE_Z3_MAX #define HAS_Z3_ENDSTOP 1 #endif #endif #if NUM_Z_STEPPERS >= 4 - #if _HAS_STOP(Z,4,MIN,) - #define HAS_Z4_MIN 1 - #elif _HAS_STOP(Z,4,MAX,) - #define HAS_Z4_MAX 1 + #if _USE_STOP(Z,4,MIN,) + #define USE_Z4_MIN 1 + #elif _USE_STOP(Z,4,MAX,) + #define USE_Z4_MAX 1 #endif - #if HAS_Z4_MIN || HAS_Z4_MAX + #if USE_Z4_MIN || USE_Z4_MAX #define HAS_Z4_ENDSTOP 1 #endif #endif #endif -#if HAS_BED_PROBE && PIN_EXISTS(Z_MIN_PROBE) - #define HAS_Z_MIN_PROBE_PIN 1 -#endif - -#undef _HAS_STOP +#undef _USE_STOP /** * Set ENDSTOPPULLUPS for active endstop switches */ #if ENABLED(ENDSTOPPULLUPS) - #if HAS_X_MIN + #if USE_X_MIN #define ENDSTOPPULLUP_XMIN #endif - #if HAS_X_MAX + #if USE_X_MAX #define ENDSTOPPULLUP_XMAX #endif - #if HAS_Y_MIN + #if USE_Y_MIN #define ENDSTOPPULLUP_YMIN - #elif HAS_Y_MAX + #endif + #if USE_Y_MAX #define ENDSTOPPULLUP_YMAX #endif #if HAS_Z_MIN_PIN #define ENDSTOPPULLUP_ZMIN #endif - #if HAS_Z_MAX + #if USE_Z_MAX #define ENDSTOPPULLUP_ZMAX #endif - #if HAS_I_MIN + #if USE_I_MIN #define ENDSTOPPULLUP_IMIN - #elif HAS_I_MAX + #endif + #if USE_I_MAX #define ENDSTOPPULLUP_IMAX #endif - #if HAS_J_MIN + #if USE_J_MIN #define ENDSTOPPULLUP_JMIN - #elif HAS_J_MAX + #endif + #if USE_J_MAX #define ENDSTOPPULLUP_JMAX #endif - #if HAS_K_MIN + #if USE_K_MIN #define ENDSTOPPULLUP_KMIN - #elif HAS_K_MAX + #endif + #if USE_K_MAX #define ENDSTOPPULLUP_KMAX #endif - #if HAS_U_MIN + #if USE_U_MIN #define ENDSTOPPULLUP_UMIN - #elif HAS_U_MAX + #endif + #if USE_U_MAX #define ENDSTOPPULLUP_UMAX #endif - #if HAS_V_MIN + #if USE_V_MIN #define ENDSTOPPULLUP_VMIN - #elif HAS_V_MAX + #endif + #if USE_V_MAX #define ENDSTOPPULLUP_VMAX #endif - #if HAS_W_MIN + #if USE_W_MIN #define ENDSTOPPULLUP_WMIN - #elif HAS_W_MAX + #endif + #if USE_W_MAX #define ENDSTOPPULLUP_WMAX #endif #endif @@ -2148,51 +2143,58 @@ * Set ENDSTOPPULLDOWNS for active endstop switches */ #if ENABLED(ENDSTOPPULLDOWNS) - #if HAS_X_MIN + #if USE_X_MIN #define ENDSTOPPULLDOWN_XMIN #endif - #if HAS_X_MAX + #if USE_X_MAX #define ENDSTOPPULLDOWN_XMAX #endif - #if HAS_Y_MIN + #if USE_Y_MIN #define ENDSTOPPULLDOWN_YMIN - #elif HAS_Y_MAX + #endif + #if USE_Y_MAX #define ENDSTOPPULLDOWN_YMAX #endif - #if HAS_Z_MIN_PIN + #if USE_Z_MIN #define ENDSTOPPULLDOWN_ZMIN #endif - #if HAS_Z_MAX + #if USE_Z_MAX #define ENDSTOPPULLDOWN_ZMAX #endif - #if HAS_I_MIN + #if USE_I_MIN #define ENDSTOPPULLDOWN_IMIN - #elif HAS_I_MAX + #endif + #if USE_I_MAX #define ENDSTOPPULLDOWN_IMAX #endif - #if HAS_J_MIN + #if USE_J_MIN #define ENDSTOPPULLDOWN_JMIN - #elif HAS_J_MAX + #endif + #if USE_J_MAX #define ENDSTOPPULLDOWN_JMAX #endif - #if HAS_K_MIN + #if USE_K_MIN #define ENDSTOPPULLDOWN_KMIN - #elif HAS_K_MAX + #endif + #if USE_K_MAX #define ENDSTOPPULLDOWN_KMAX #endif - #if HAS_U_MIN + #if USE_U_MIN #define ENDSTOPPULLDOWN_UMIN - #elif HAS_U_MAX + #endif + #if USE_U_MAX #define ENDSTOPPULLDOWN_UMAX #endif - #if HAS_V_MIN + #if USE_V_MIN #define ENDSTOPPULLDOWN_VMIN - #elif HAS_V_MAX + #endif + #if USE_V_MAX #define ENDSTOPPULLDOWN_VMAX #endif - #if HAS_W_MIN + #if USE_W_MIN #define ENDSTOPPULLDOWN_WMIN - #elif HAS_W_MAX + #endif + #if USE_W_MAX #define ENDSTOPPULLDOWN_WMAX #endif #endif @@ -2817,7 +2819,7 @@ #endif #endif #if HAS_BED_PROBE - #if BOTH(ENDSTOPPULLUPS, HAS_Z_MIN_PROBE_PIN) + #if BOTH(ENDSTOPPULLUPS, USE_Z_MIN_PROBE) #define ENDSTOPPULLUP_ZMIN_PROBE #endif #ifndef XY_PROBE_FEEDRATE diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 74633b9ec434..223baf928dcf 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -1253,7 +1253,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #else #define _IS_5V_TOLERANT(P) 1 // Assume 5V tolerance #endif - #if USES_Z_MIN_PROBE_PIN + #if USE_Z_MIN_PROBE #if !_IS_5V_TOLERANT(Z_MIN_PROBE_PIN) #error "BLTOUCH_SET_5V_MODE is not compatible with the Z_MIN_PROBE_PIN." #endif @@ -1265,7 +1265,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #undef _IS_5V_TOLERANT #undef _5V #elif NONE(ONBOARD_ENDSTOPPULLUPS, ENDSTOPPULLUPS, ENDSTOPPULLUP_ZMIN, ENDSTOPPULLUP_ZMIN_PROBE) - #if USES_Z_MIN_PROBE_PIN + #if USE_Z_MIN_PROBE #error "BLTOUCH on Z_MIN_PROBE_PIN requires ENDSTOPPULLUP_ZMIN_PROBE, ENDSTOPPULLUPS, or BLTOUCH_SET_5V_MODE." #else #error "BLTOUCH on Z_MIN_PIN requires ENDSTOPPULLUP_ZMIN, ENDSTOPPULLUPS, or BLTOUCH_SET_5V_MODE." @@ -1382,7 +1382,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #elif Z_MIN_PROBE_ENDSTOP_HIT_STATE != Z_MIN_ENDSTOP_HIT_STATE #error "Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN requires Z_MIN_ENDSTOP_HIT_STATE to match Z_MIN_PROBE_ENDSTOP_HIT_STATE." #endif - #elif !HAS_Z_MIN_PROBE_PIN + #elif !USE_Z_MIN_PROBE #error "Z_MIN_PROBE_PIN must be defined if Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN is not enabled." #endif @@ -1767,12 +1767,12 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "DUAL_X_CARRIAGE cannot be used with COREXY, COREYX, COREXZ, COREZX, MARKFORGED_YX, or MARKFORGED_XY." #elif !GOOD_AXIS_PINS(X2) #error "DUAL_X_CARRIAGE requires X2 stepper pins to be defined." - #elif !HAS_X_MAX + #elif !USE_X_MAX #error "DUAL_X_CARRIAGE requires an X_MAX_PIN in addition to the X_MIN_PIN." #elif !defined(X2_HOME_POS) || !defined(X2_MIN_POS) || !defined(X2_MAX_POS) #error "DUAL_X_CARRIAGE requires X2_HOME_POS, X2_MIN_POS, and X2_MAX_POS." - #elif X_HOME_TO_MAX || X2_HOME_TO_MIN - #error "DUAL_X_CARRIAGE requires X_HOME_DIR -1 and X2_HOME_DIR 1." + #elif X_HOME_TO_MAX + #error "DUAL_X_CARRIAGE requires X_HOME_DIR 1." #endif #endif @@ -3045,13 +3045,12 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_WMIN (or ENDSTOPPULLUPS) for W MIN homing." #elif W_SENSORLESS && W_HOME_TO_MAX && DISABLED(ENDSTOPPULLUP_WMAX) #error "SENSORLESS_HOMING requires ENDSTOPPULLUP_WMAX (or ENDSTOPPULLUPS) for W MAX homing." - #endif #endif #if ENABLED(SPI_ENDSTOPS) - #if ENABLED(QUICK_HOME) - #warning "SPI_ENDSTOPS may be unreliable with QUICK_HOME. Adjust back-offs for better results." + #if !ANY_AXIS_HAS(SPI) + #error "SPI_ENDSTOPS requires stepper drivers with SPI support." #endif #else // !SPI_ENDSTOPS // Stall detection DIAG = HIGH : TMC2209 @@ -3228,7 +3227,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "SENSORLESS_HOMING requires a TMC stepper driver with StallGuard on X, Y, Z, I, J, K, U, V, or W axes." #endif -#endif +#endif // SENSORLESS_HOMING // Sensorless probing requirements #if ENABLED(SENSORLESS_PROBING) diff --git a/Marlin/src/inc/Warnings.cpp b/Marlin/src/inc/Warnings.cpp index ca72ddc3dca6..cf75f3dd28a8 100644 --- a/Marlin/src/inc/Warnings.cpp +++ b/Marlin/src/inc/Warnings.cpp @@ -668,6 +668,10 @@ #endif #endif +#if ENABLED(QUICK_HOME) && (X_SPI_SENSORLESS || Y_SPI_SENSORLESS) + #warning "SPI_ENDSTOPS may be unreliable with QUICK_HOME. Adjust back-offs for better results." +#endif + #if CANNOT_EMBED_CONFIGURATION #warning "Disabled CONFIGURATION_EMBEDDING because the target usually has less flash storage. Define FORCE_CONFIG_EMBED to override." #endif diff --git a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp index 055f26c05830..7ec088e240c4 100644 --- a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp +++ b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp @@ -72,9 +72,9 @@ void ESDiagClass::Draw() { DWINUI::Draw_Button(BTN_Continue, 86, 250); DWINUI::cursor.y = 80; #define ES_LABEL(S) draw_es_label(F(STR_##S)) - TERN_(HAS_X_MIN, ES_LABEL(X_MIN)); TERN_(HAS_X_MAX, ES_LABEL(X_MAX)); - TERN_(HAS_Y_MIN, ES_LABEL(Y_MIN)); TERN_(HAS_Y_MAX, ES_LABEL(Y_MAX)); - TERN_(HAS_Z_MIN_PIN, ES_LABEL(Z_MIN)); TERN_(HAS_Z_MAX, ES_LABEL(Z_MAX)); + TERN_(USE_X_MIN, ES_LABEL(X_MIN)); TERN_(USE_X_MAX, ES_LABEL(X_MAX)); + TERN_(USE_Y_MIN, ES_LABEL(Y_MIN)); TERN_(USE_Y_MAX, ES_LABEL(Y_MAX)); + TERN_(HAS_Z_MIN_PIN, ES_LABEL(Z_MIN)); TERN_(USE_Z_MAX, ES_LABEL(Z_MAX)); TERN_(HAS_FILAMENT_SENSOR, draw_es_label(F(STR_FILAMENT))); Update(); } @@ -82,9 +82,9 @@ void ESDiagClass::Draw() { void ESDiagClass::Update() { DWINUI::cursor.y = 80; #define ES_REPORT(S) draw_es_state(READ(S##_PIN) == S##_ENDSTOP_HIT_STATE) - TERN_(HAS_X_MIN, ES_REPORT(X_MIN)); TERN_(HAS_X_MAX, ES_REPORT(X_MAX)); - TERN_(HAS_Y_MIN, ES_REPORT(Y_MIN)); TERN_(HAS_Y_MAX, ES_REPORT(Y_MAX)); - TERN_(HAS_Z_MIN_PIN, ES_REPORT(Z_MIN)); TERN_(HAS_Z_MAX, ES_REPORT(Z_MAX)); + TERN_(USE_X_MIN, ES_REPORT(X_MIN)); TERN_(USE_X_MAX, ES_REPORT(X_MAX)); + TERN_(USE_Y_MIN, ES_REPORT(Y_MIN)); TERN_(USE_Y_MAX, ES_REPORT(Y_MAX)); + TERN_(HAS_Z_MIN_PIN, ES_REPORT(Z_MIN)); TERN_(USE_Z_MAX, ES_REPORT(Z_MAX)); TERN_(HAS_FILAMENT_SENSOR, draw_es_state(READ(FIL_RUNOUT1_PIN) != FIL_RUNOUT1_STATE)); DWIN_UpdateLCD(); } diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp index 46d4998591ae..eae83d070d48 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp @@ -54,27 +54,27 @@ void EndstopStatesScreen::onRedraw(draw_mode_t) { cmd.font(TERN(TOUCH_UI_PORTRAIT, font_large, font_medium)) .text(BTN_POS(1,1), BTN_SIZE(6,1), GET_TEXT_F(MSG_LCD_ENDSTOPS)) .font(font_tiny); - #if HAS_X_MAX + #if USE_X_MAX PIN_ENABLED (1, 2, PSTR(STR_X_MAX), X_MAX, X_MAX_ENDSTOP_HIT_STATE) #else PIN_DISABLED(1, 2, PSTR(STR_X_MAX), X_MAX) #endif - #if HAS_Y_MAX + #if USE_Y_MAX PIN_ENABLED (3, 2, PSTR(STR_Y_MAX), Y_MAX, Y_MAX_ENDSTOP_HIT_STATE) #else PIN_DISABLED(3, 2, PSTR(STR_Y_MAX), Y_MAX) #endif - #if HAS_Z_MAX + #if USE_Z_MAX PIN_ENABLED (5, 2, PSTR(STR_Z_MAX), Z_MAX, Z_MAX_ENDSTOP_HIT_STATE) #else PIN_DISABLED(5, 2, PSTR(STR_Z_MAX), Z_MAX) #endif - #if HAS_X_MIN + #if USE_X_MIN PIN_ENABLED (1, 3, PSTR(STR_X_MIN), X_MIN, X_MIN_ENDSTOP_HIT_STATE) #else PIN_DISABLED(1, 3, PSTR(STR_X_MIN), X_MIN) #endif - #if HAS_Y_MIN + #if USE_Y_MIN PIN_ENABLED (3, 3, PSTR(STR_Y_MIN), Y_MIN, Y_MIN_ENDSTOP_HIT_STATE) #else PIN_DISABLED(3, 3, PSTR(STR_Y_MIN), Y_MIN) diff --git a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp index 20f069aa49da..e021771b1325 100644 --- a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp +++ b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp @@ -87,12 +87,12 @@ #if PIN_EXISTS(MT_DET_2) mt_det2_sta = (READ(MT_DET_2_PIN) == LOW); #endif - TERN_(HAS_X_ENDSTOP, endstopx1_sta = ESTATE(TERN(HAS_X_MIN, X_MIN, X_MAX))); - TERN_(HAS_X2_ENDSTOP, endstopx2_sta = ESTATE(TERN(HAS_X2_MIN, X2_MIN, X2_MAX))); - TERN_(HAS_Y_ENDSTOP, endstopy1_sta = ESTATE(TERN(HAS_Y_MIN, Y_MIN, Y_MAX))); - TERN_(HAS_Y2_ENDSTOP, endstopy2_sta = ESTATE(TERN(HAS_Y2_MIN, Y2_MIN, Y2_MAX))); + TERN_(HAS_X_ENDSTOP, endstopx1_sta = ESTATE(TERN(USE_X_MIN, X_MIN, X_MAX))); + TERN_(HAS_X2_ENDSTOP, endstopx2_sta = ESTATE(TERN(USE_X2_MIN, X2_MIN, X2_MAX))); + TERN_(HAS_Y_ENDSTOP, endstopy1_sta = ESTATE(TERN(USE_Y_MIN, Y_MIN, Y_MAX))); + TERN_(HAS_Y2_ENDSTOP, endstopy2_sta = ESTATE(TERN(USE_Y2_MIN, Y2_MIN, Y2_MAX))); TERN_(HAS_Z_ENDSTOP, endstopz1_sta = ESTATE(TERN(HAS_Z_MIN_PIN, Z_MIN, Z_MAX))); - TERN_(HAS_Z2_ENDSTOP, endstopz2_sta = ESTATE(TERN(HAS_Z2_MIN, Z2_MIN, Z2_MAX))); + TERN_(HAS_Z2_ENDSTOP, endstopz2_sta = ESTATE(TERN(USE_Z2_MIN, Z2_MIN, Z2_MAX))); } void test_gpio_readlevel_H() { @@ -104,12 +104,12 @@ #if PIN_EXISTS(MT_DET_2) mt_det2_sta = (READ(MT_DET_2_PIN) == HIGH); #endif - TERN_(HAS_X_ENDSTOP, endstopx1_sta = !ESTATE(TERN(HAS_X_MIN, X_MIN, X_MAX))); - TERN_(HAS_X2_ENDSTOP, endstopx2_sta = !ESTATE(TERN(HAS_X2_MIN, X2_MIN, X2_MAX))); - TERN_(HAS_Y_ENDSTOP, endstopy1_sta = !ESTATE(TERN(HAS_Y_MIN, Y_MIN, Y_MAX))); - TERN_(HAS_Y2_ENDSTOP, endstopy2_sta = !ESTATE(TERN(HAS_Y2_MIN, Y2_MIN, Y2_MAX))); + TERN_(HAS_X_ENDSTOP, endstopx1_sta = !ESTATE(TERN(USE_X_MIN, X_MIN, X_MAX))); + TERN_(HAS_X2_ENDSTOP, endstopx2_sta = !ESTATE(TERN(USE_X2_MIN, X2_MIN, X2_MAX))); + TERN_(HAS_Y_ENDSTOP, endstopy1_sta = !ESTATE(TERN(USE_Y_MIN, Y_MIN, Y_MAX))); + TERN_(HAS_Y2_ENDSTOP, endstopy2_sta = !ESTATE(TERN(USE_Y2_MIN, Y2_MIN, Y2_MAX))); TERN_(HAS_Z_ENDSTOP, endstopz1_sta = !ESTATE(TERN(HAS_Z_MIN_PIN, Z_MIN, Z_MAX))); - TERN_(HAS_Z2_ENDSTOP, endstopz2_sta = !ESTATE(TERN(HAS_Z2_MIN, Z2_MIN, Z2_MAX))); + TERN_(HAS_Z2_ENDSTOP, endstopz2_sta = !ESTATE(TERN(USE_Z2_MIN, Z2_MIN, Z2_MAX))); } #include "../../../libs/buzzer.h" diff --git a/Marlin/src/lcd/extui/nextion/nextion_tft.cpp b/Marlin/src/lcd/extui/nextion/nextion_tft.cpp index 8b7b36e9ce52..788be5ac651b 100644 --- a/Marlin/src/lcd/extui/nextion/nextion_tft.cpp +++ b/Marlin/src/lcd/extui/nextion/nextion_tft.cpp @@ -445,9 +445,9 @@ void NextionTFT::PanelInfo(uint8_t req) { #elif Z_HOME_TO_MAX SEND_VALasTXT("z2", READ(Z_MAX_PIN) == Z_MAX_ENDSTOP_HIT_STATE ? "triggered" : "open"); #endif - #if HAS_Z2_MIN + #if USE_Z2_MIN SEND_VALasTXT("z2", READ(Z2_MIN_PIN) == Z2_MIN_ENDSTOP_HIT_STATE ? "triggered" : "open"); - #elif HAS_Z2_MAX + #elif USE_Z2_MAX SEND_VALasTXT("z2", READ(Z2_MAX_PIN) == Z2_MAX_ENDSTOP_HIT_STATE ? "triggered" : "open"); #endif #if HAS_BED_PROBE diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index 668be5f1f4b1..ebe0a64bac79 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -38,7 +38,7 @@ #include HAL_PATH(.., endstop_interrupts.h) #endif -#if BOTH(SD_ABORT_ON_ENDSTOP_HIT, HAS_MEDIA) +#if ENABLED(SD_ABORT_ON_ENDSTOP_HIT) #include "printcounter.h" // for print_job_timer #endif @@ -110,88 +110,88 @@ Endstops::endstop_mask_t Endstops::live_state = 0; void Endstops::init() { #define _INIT_ENDSTOP(T,A,N) TERN(ENDSTOPPULLUP_##A##T, SET_INPUT_PULLUP, TERN(ENDSTOPPULLDOWN_##A##T, SET_INPUT_PULLDOWN, SET_INPUT))(A##N##_##T##_PIN) - #if HAS_X_MIN + #if USE_X_MIN _INIT_ENDSTOP(MIN,X,); #endif - #if HAS_X_MAX + #if USE_X_MAX _INIT_ENDSTOP(MAX,X,); #endif - #if HAS_X2_MIN + #if USE_X2_MIN _INIT_ENDSTOP(MIN,X,2); #endif - #if HAS_X2_MAX + #if USE_X2_MAX _INIT_ENDSTOP(MAX,X,2); #endif - #if HAS_Y_MIN + #if USE_Y_MIN _INIT_ENDSTOP(MIN,Y,); #endif - #if HAS_Y_MAX + #if USE_Y_MAX _INIT_ENDSTOP(MAX,Y,); #endif - #if HAS_Y2_MIN + #if USE_Y2_MIN _INIT_ENDSTOP(MIN,Y,2); #endif - #if HAS_Y2_MAX + #if USE_Y2_MAX _INIT_ENDSTOP(MAX,Y,2); #endif #if HAS_Z_MIN_PIN _INIT_ENDSTOP(MIN,Z,); #endif - #if HAS_Z_MAX + #if USE_Z_MAX _INIT_ENDSTOP(MAX,Z,); #endif - #if HAS_Z2_MIN + #if USE_Z2_MIN _INIT_ENDSTOP(MIN,Z,2); #endif - #if HAS_Z2_MAX + #if USE_Z2_MAX _INIT_ENDSTOP(MAX,Z,2); #endif - #if HAS_Z3_MIN + #if USE_Z3_MIN _INIT_ENDSTOP(MIN,Z,3); #endif - #if HAS_Z3_MAX + #if USE_Z3_MAX _INIT_ENDSTOP(MAX,Z,3); #endif - #if HAS_Z4_MIN + #if USE_Z4_MIN _INIT_ENDSTOP(MIN,Z,4); #endif - #if HAS_Z4_MAX + #if USE_Z4_MAX _INIT_ENDSTOP(MAX,Z,4); #endif - #if HAS_I_MIN + #if USE_I_MIN _INIT_ENDSTOP(MIN,I,); #endif - #if HAS_I_MAX + #if USE_I_MAX _INIT_ENDSTOP(MAX,I,); #endif - #if HAS_J_MIN + #if USE_J_MIN _INIT_ENDSTOP(MIN,J,); #endif - #if HAS_J_MAX + #if USE_J_MAX _INIT_ENDSTOP(MAX,J,); #endif - #if HAS_K_MIN + #if USE_K_MIN _INIT_ENDSTOP(MIN,K,); #endif - #if HAS_K_MAX + #if USE_K_MAX _INIT_ENDSTOP(MAX,K,); #endif - #if HAS_U_MIN + #if USE_U_MIN _INIT_ENDSTOP(MIN,U,); #endif - #if HAS_U_MAX + #if USE_U_MAX _INIT_ENDSTOP(MAX,U,); #endif - #if HAS_V_MIN + #if USE_V_MIN _INIT_ENDSTOP(MIN,V,); #endif - #if HAS_V_MAX + #if USE_V_MAX _INIT_ENDSTOP(MAX,V,); #endif - #if HAS_W_MIN + #if USE_W_MIN _INIT_ENDSTOP(MIN,W,); #endif - #if HAS_W_MAX + #if USE_W_MAX _INIT_ENDSTOP(MAX,W,); #endif @@ -205,7 +205,7 @@ void Endstops::init() { #endif #endif - #if USES_Z_MIN_PROBE_PIN + #if USE_Z_MIN_PROBE #if ENABLED(ENDSTOPPULLUP_ZMIN_PROBE) SET_INPUT_PULLUP(Z_MIN_PROBE_PIN); #elif ENABLED(ENDSTOPPULLDOWN_ZMIN_PROBE) @@ -338,7 +338,7 @@ void Endstops::event_handler() { _ENDSTOP_HIT_TEST(W,'W') ); - #if USES_Z_MIN_PROBE_PIN + #if USE_Z_MIN_PROBE #define P_AXIS Z_AXIS if (TEST(hit_state, Z_MIN_PROBE)) _ENDSTOP_HIT_ECHO(P, 'P'); #endif @@ -352,7 +352,7 @@ void Endstops::event_handler() { ) ); - #if BOTH(SD_ABORT_ON_ENDSTOP_HIT, HAS_MEDIA) + #if ENABLED(SD_ABORT_ON_ENDSTOP_HIT) if (planner.abort_on_endstop_hit) { card.abortFilePrintNow(); quickstop_stepper(); @@ -384,94 +384,94 @@ void __O2 Endstops::report_states() { TERN_(BLTOUCH, bltouch._set_SW_mode()); SERIAL_ECHOLNPGM(STR_M119_REPORT); #define ES_REPORT(S) print_es_state(READ_ENDSTOP(S##_PIN) == S##_ENDSTOP_HIT_STATE, F(STR_##S)) - #if HAS_X_MIN + #if USE_X_MIN ES_REPORT(X_MIN); #endif - #if HAS_X2_MIN + #if USE_X2_MIN ES_REPORT(X2_MIN); #endif - #if HAS_X_MAX + #if USE_X_MAX ES_REPORT(X_MAX); #endif - #if HAS_X2_MAX + #if USE_X2_MAX ES_REPORT(X2_MAX); #endif - #if HAS_Y_MIN + #if USE_Y_MIN ES_REPORT(Y_MIN); #endif - #if HAS_Y2_MIN + #if USE_Y2_MIN ES_REPORT(Y2_MIN); #endif - #if HAS_Y_MAX + #if USE_Y_MAX ES_REPORT(Y_MAX); #endif - #if HAS_Y2_MAX + #if USE_Y2_MAX ES_REPORT(Y2_MAX); #endif - #if HAS_Z_MIN + #if USE_Z_MIN ES_REPORT(Z_MIN); #endif - #if HAS_Z2_MIN + #if USE_Z2_MIN ES_REPORT(Z2_MIN); #endif - #if HAS_Z3_MIN + #if USE_Z3_MIN ES_REPORT(Z3_MIN); #endif - #if HAS_Z4_MIN + #if USE_Z4_MIN ES_REPORT(Z4_MIN); #endif - #if HAS_Z_MAX + #if USE_Z_MAX ES_REPORT(Z_MAX); #endif - #if HAS_Z2_MAX + #if USE_Z2_MAX ES_REPORT(Z2_MAX); #endif - #if HAS_Z3_MAX + #if USE_Z3_MAX ES_REPORT(Z3_MAX); #endif - #if HAS_Z4_MAX + #if USE_Z4_MAX ES_REPORT(Z4_MAX); #endif - #if HAS_I_MIN + #if USE_I_MIN ES_REPORT(I_MIN); #endif - #if HAS_I_MAX + #if USE_I_MAX ES_REPORT(I_MAX); #endif - #if HAS_J_MIN + #if USE_J_MIN ES_REPORT(J_MIN); #endif - #if HAS_J_MAX + #if USE_J_MAX ES_REPORT(J_MAX); #endif - #if HAS_K_MIN + #if USE_K_MIN ES_REPORT(K_MIN); #endif - #if HAS_K_MAX + #if USE_K_MAX ES_REPORT(K_MAX); #endif - #if HAS_U_MIN + #if USE_U_MIN ES_REPORT(U_MIN); #endif - #if HAS_U_MAX + #if USE_U_MAX ES_REPORT(U_MAX); #endif - #if HAS_V_MIN + #if USE_V_MIN ES_REPORT(V_MIN); #endif - #if HAS_V_MAX + #if USE_V_MAX ES_REPORT(V_MAX); #endif - #if HAS_W_MIN + #if USE_W_MIN ES_REPORT(W_MIN); #endif - #if HAS_W_MAX + #if USE_W_MAX ES_REPORT(W_MAX); #endif #if ENABLED(PROBE_ACTIVATION_SWITCH) print_es_state(probe_switch_activated(), F(STR_PROBE_EN)); #endif - #if USES_Z_MIN_PROBE_PIN + #if USE_Z_MIN_PROBE print_es_state(PROBE_TRIGGERED(), F(STR_Z_PROBE)); #endif #if MULTI_FILAMENT_SENSOR @@ -519,12 +519,12 @@ void Endstops::update() { #if ENABLED(G38_PROBE_TARGET) // For G38 moves check the probe's pin for ALL movement - if (G38_move) UPDATE_LIVE_STATE(Z, TERN(USES_Z_MIN_PROBE_PIN, MIN_PROBE, MIN)); + if (G38_move) UPDATE_LIVE_STATE(Z, TERN(USE_Z_MIN_PROBE, MIN_PROBE, MIN)); #endif // With Dual X, endstops are only checked in the homing direction for the active extruder - #define X_MIN_TEST() TERN1(DUAL_X_CARRIAGE, TERN0(X_HOME_TO_MIN, stepper.last_moved_extruder == 0) || TERN0(X2_HOME_TO_MIN, stepper.last_moved_extruder != 0)) - #define X_MAX_TEST() TERN1(DUAL_X_CARRIAGE, TERN0(X_HOME_TO_MAX, stepper.last_moved_extruder == 0) || TERN0(X2_HOME_TO_MAX, stepper.last_moved_extruder != 0)) + #define X_MIN_TEST() TERN1(DUAL_X_CARRIAGE, stepper.last_moved_extruder == 0) // Check min for the left carriage + #define X_MAX_TEST() TERN1(DUAL_X_CARRIAGE, stepper.last_moved_extruder != 0) // Check max for the right carriage // Use HEAD for core axes, AXIS for others #if ANY(CORE_IS_XY, CORE_IS_XZ, MARKFORGED_XY, MARKFORGED_YX) @@ -553,10 +553,10 @@ void Endstops::update() { /** * Check and update endstops */ - #if HAS_X_MIN && !X_SPI_SENSORLESS + #if USE_X_MIN && !X_SPI_SENSORLESS UPDATE_LIVE_STATE(X, MIN); #if ENABLED(X_DUAL_ENDSTOPS) - #if HAS_X2_MIN + #if USE_X2_MIN UPDATE_LIVE_STATE(X2, MIN); #else COPY_LIVE_STATE(X_MIN, X2_MIN); @@ -564,10 +564,10 @@ void Endstops::update() { #endif #endif - #if HAS_X_MAX && !X_SPI_SENSORLESS + #if USE_X_MAX && !X_SPI_SENSORLESS UPDATE_LIVE_STATE(X, MAX); #if ENABLED(X_DUAL_ENDSTOPS) - #if HAS_X2_MAX + #if USE_X2_MAX UPDATE_LIVE_STATE(X2, MAX); #else COPY_LIVE_STATE(X_MAX, X2_MAX); @@ -575,10 +575,10 @@ void Endstops::update() { #endif #endif - #if HAS_Y_MIN && !Y_SPI_SENSORLESS + #if USE_Y_MIN && !Y_SPI_SENSORLESS UPDATE_LIVE_STATE(Y, MIN); #if ENABLED(Y_DUAL_ENDSTOPS) - #if HAS_Y2_MIN + #if USE_Y2_MIN UPDATE_LIVE_STATE(Y2, MIN); #else COPY_LIVE_STATE(Y_MIN, Y2_MIN); @@ -586,10 +586,10 @@ void Endstops::update() { #endif #endif - #if HAS_Y_MAX && !Y_SPI_SENSORLESS + #if USE_Y_MAX && !Y_SPI_SENSORLESS UPDATE_LIVE_STATE(Y, MAX); #if ENABLED(Y_DUAL_ENDSTOPS) - #if HAS_Y2_MAX + #if USE_Y2_MAX UPDATE_LIVE_STATE(Y2, MAX); #else COPY_LIVE_STATE(Y_MAX, Y2_MAX); @@ -597,25 +597,25 @@ void Endstops::update() { #endif #endif - #if HAS_Z_MIN && NONE(Z_SPI_SENSORLESS, Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) + #if USE_Z_MIN && NONE(Z_SPI_SENSORLESS, Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) #if HAS_Z_MIN_PIN UPDATE_LIVE_STATE(Z, MIN); #endif #if ENABLED(Z_MULTI_ENDSTOPS) - #if HAS_Z2_MIN + #if USE_Z2_MIN UPDATE_LIVE_STATE(Z2, MIN); #else COPY_LIVE_STATE(Z_MIN, Z2_MIN); #endif #if NUM_Z_STEPPERS >= 3 - #if HAS_Z3_MIN + #if USE_Z3_MIN UPDATE_LIVE_STATE(Z3, MIN); #else COPY_LIVE_STATE(Z_MIN, Z3_MIN); #endif #endif #if NUM_Z_STEPPERS >= 4 - #if HAS_Z4_MIN + #if USE_Z4_MIN UPDATE_LIVE_STATE(Z4, MIN); #else COPY_LIVE_STATE(Z_MIN, Z4_MIN); @@ -627,39 +627,39 @@ void Endstops::update() { #if HAS_BED_PROBE // When closing the gap check the enabled probe if (probe_switch_activated()) - UPDATE_LIVE_STATE(Z, TERN(USES_Z_MIN_PROBE_PIN, MIN_PROBE, MIN)); + UPDATE_LIVE_STATE(Z, TERN(USE_Z_MIN_PROBE, MIN_PROBE, MIN)); #endif - #if HAS_Z_MAX && !Z_SPI_SENSORLESS + #if USE_Z_MAX && !Z_SPI_SENSORLESS // Check both Z dual endstops #if ENABLED(Z_MULTI_ENDSTOPS) UPDATE_LIVE_STATE(Z, MAX); - #if HAS_Z2_MAX + #if USE_Z2_MAX UPDATE_LIVE_STATE(Z2, MAX); #else COPY_LIVE_STATE(Z_MAX, Z2_MAX); #endif #if NUM_Z_STEPPERS >= 3 - #if HAS_Z3_MAX + #if USE_Z3_MAX UPDATE_LIVE_STATE(Z3, MAX); #else COPY_LIVE_STATE(Z_MAX, Z3_MAX); #endif #endif #if NUM_Z_STEPPERS >= 4 - #if HAS_Z4_MAX + #if USE_Z4_MAX UPDATE_LIVE_STATE(Z4, MAX); #else COPY_LIVE_STATE(Z_MAX, Z4_MAX); #endif #endif - #elif TERN1(USES_Z_MIN_PROBE_PIN, Z_MAX_PIN != Z_MIN_PROBE_PIN) + #elif TERN1(USE_Z_MIN_PROBE, Z_MAX_PIN != Z_MIN_PROBE_PIN) // If this pin isn't the bed probe it's the Z endstop UPDATE_LIVE_STATE(Z, MAX); #endif #endif - #if HAS_I_MIN && !I_SPI_SENSORLESS + #if USE_I_MIN && !I_SPI_SENSORLESS #if ENABLED(I_DUAL_ENDSTOPS) UPDATE_LIVE_STATE(I, MIN); #else @@ -667,7 +667,7 @@ void Endstops::update() { #endif #endif - #if HAS_I_MAX && !I_SPI_SENSORLESS + #if USE_I_MAX && !I_SPI_SENSORLESS #if ENABLED(I_DUAL_ENDSTOPS) UPDATE_LIVE_STATE(I, MAX); #else @@ -675,7 +675,7 @@ void Endstops::update() { #endif #endif - #if HAS_J_MIN && !J_SPI_SENSORLESS + #if USE_J_MIN && !J_SPI_SENSORLESS #if ENABLED(J_DUAL_ENDSTOPS) UPDATE_LIVE_STATE(J, MIN); #else @@ -683,7 +683,7 @@ void Endstops::update() { #endif #endif - #if HAS_J_MAX && !J_SPI_SENSORLESS + #if USE_J_MAX && !J_SPI_SENSORLESS #if ENABLED(J_DUAL_ENDSTOPS) UPDATE_LIVE_STATE(J, MAX); #else @@ -691,7 +691,7 @@ void Endstops::update() { #endif #endif - #if HAS_K_MIN && !K_SPI_SENSORLESS + #if USE_K_MIN && !K_SPI_SENSORLESS #if ENABLED(K_DUAL_ENDSTOPS) UPDATE_LIVE_STATE(K, MIN); #else @@ -699,7 +699,7 @@ void Endstops::update() { #endif #endif - #if HAS_K_MAX && !K_SPI_SENSORLESS + #if USE_K_MAX && !K_SPI_SENSORLESS #if ENABLED(K_DUAL_ENDSTOPS) UPDATE_LIVE_STATE(K, MAX); #else @@ -707,7 +707,7 @@ void Endstops::update() { #endif #endif - #if HAS_U_MIN && !U_SPI_SENSORLESS + #if USE_U_MIN && !U_SPI_SENSORLESS #if ENABLED(U_DUAL_ENDSTOPS) UPDATE_LIVE_STATE(U, MIN); #else @@ -715,7 +715,7 @@ void Endstops::update() { #endif #endif - #if HAS_U_MAX && !U_SPI_SENSORLESS + #if USE_U_MAX && !U_SPI_SENSORLESS #if ENABLED(U_DUAL_ENDSTOPS) UPDATE_LIVE_STATE(U, MAX); #else @@ -723,14 +723,14 @@ void Endstops::update() { #endif #endif - #if HAS_V_MIN && !V_SPI_SENSORLESS + #if USE_V_MIN && !V_SPI_SENSORLESS #if ENABLED(V_DUAL_ENDSTOPS) UPDATE_LIVE_STATE(V, MIN); #else UPDATE_LIVE_STATE(V, MIN); #endif #endif - #if HAS_V_MAX && !V_SPI_SENSORLESS + #if USE_V_MAX && !V_SPI_SENSORLESS #if ENABLED(O_DUAL_ENDSTOPS) UPDATE_LIVE_STATE(V, MAX); #else @@ -738,14 +738,14 @@ void Endstops::update() { #endif #endif - #if HAS_W_MIN && !W_SPI_SENSORLESS + #if USE_W_MIN && !W_SPI_SENSORLESS #if ENABLED(W_DUAL_ENDSTOPS) UPDATE_LIVE_STATE(W, MIN); #else UPDATE_LIVE_STATE(W, MIN); #endif #endif - #if HAS_W_MAX && !W_SPI_SENSORLESS + #if USE_W_MAX && !W_SPI_SENSORLESS #if ENABLED(W_DUAL_ENDSTOPS) UPDATE_LIVE_STATE(W, MAX); #else @@ -902,7 +902,7 @@ void Endstops::update() { #if HAS_Y_AXIS if (stepper.axis_is_moving(Y_AXIS)) { if (stepper.motor_direction(Y_AXIS_HEAD)) { // -direction - #if HAS_Y_MIN || (Y_SPI_SENSORLESS && Y_HOME_TO_MIN) + #if USE_Y_MIN || (Y_SPI_SENSORLESS && Y_HOME_TO_MIN) PROCESS_ENDSTOP_Y(MIN); #if CORE_DIAG(XY, X, MIN) PROCESS_CORE_ENDSTOP(X,MIN,Y,MIN); @@ -916,7 +916,7 @@ void Endstops::update() { #endif } else { // +direction - #if HAS_Y_MAX || (Y_SPI_SENSORLESS && Y_HOME_TO_MAX) + #if USE_Y_MAX || (Y_SPI_SENSORLESS && Y_HOME_TO_MAX) PROCESS_ENDSTOP_Y(MAX); #if CORE_DIAG(XY, X, MIN) PROCESS_CORE_ENDSTOP(X,MIN,Y,MAX); @@ -936,9 +936,9 @@ void Endstops::update() { if (stepper.axis_is_moving(Z_AXIS)) { if (stepper.motor_direction(Z_AXIS_HEAD)) { // Z -direction. Gantry down, bed up. - #if HAS_Z_MIN || (Z_SPI_SENSORLESS && Z_HOME_TO_MIN) + #if USE_Z_MIN || (Z_SPI_SENSORLESS && Z_HOME_TO_MIN) if ( TERN1(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, z_probe_enabled) - && TERN1(USES_Z_MIN_PROBE_PIN, !z_probe_enabled) + && TERN1(USE_Z_MIN_PROBE, !z_probe_enabled) ) PROCESS_ENDSTOP_Z(MIN); #if CORE_DIAG(XZ, X, MIN) PROCESS_CORE_ENDSTOP(X,MIN,Z,MIN); @@ -952,15 +952,15 @@ void Endstops::update() { #endif // When closing the gap check the enabled probe - #if USES_Z_MIN_PROBE_PIN + #if USE_Z_MIN_PROBE if (z_probe_enabled) PROCESS_ENDSTOP(Z, MIN_PROBE); #endif } else { // Z +direction. Gantry up, bed down. - #if HAS_Z_MAX || (Z_SPI_SENSORLESS && Z_HOME_TO_MAX) + #if USE_Z_MAX || (Z_SPI_SENSORLESS && Z_HOME_TO_MAX) #if ENABLED(Z_MULTI_ENDSTOPS) PROCESS_ENDSTOP_Z(MAX); - #elif TERN1(USES_Z_MIN_PROBE_PIN, Z_MAX_PIN != Z_MIN_PROBE_PIN) // No probe or probe is Z_MIN || Probe is not Z_MAX + #elif TERN1(USE_Z_MIN_PROBE, Z_MAX_PIN != Z_MIN_PROBE_PIN) // No probe or probe is Z_MIN || Probe is not Z_MAX PROCESS_ENDSTOP(Z, MAX); #endif #if CORE_DIAG(XZ, X, MIN) @@ -980,12 +980,12 @@ void Endstops::update() { #if HAS_I_AXIS if (stepper.axis_is_moving(I_AXIS)) { if (stepper.motor_direction(I_AXIS_HEAD)) { // -direction - #if HAS_I_MIN || (I_SPI_SENSORLESS && I_HOME_TO_MIN) + #if USE_I_MIN || (I_SPI_SENSORLESS && I_HOME_TO_MIN) PROCESS_ENDSTOP(I, MIN); #endif } else { // +direction - #if HAS_I_MAX || (I_SPI_SENSORLESS && I_HOME_TO_MAX) + #if USE_I_MAX || (I_SPI_SENSORLESS && I_HOME_TO_MAX) PROCESS_ENDSTOP(I, MAX); #endif } @@ -995,12 +995,12 @@ void Endstops::update() { #if HAS_J_AXIS if (stepper.axis_is_moving(J_AXIS)) { if (stepper.motor_direction(J_AXIS_HEAD)) { // -direction - #if HAS_J_MIN || (J_SPI_SENSORLESS && J_HOME_TO_MIN) + #if USE_J_MIN || (J_SPI_SENSORLESS && J_HOME_TO_MIN) PROCESS_ENDSTOP(J, MIN); #endif } else { // +direction - #if HAS_J_MAX || (J_SPI_SENSORLESS && J_HOME_TO_MAX) + #if USE_J_MAX || (J_SPI_SENSORLESS && J_HOME_TO_MAX) PROCESS_ENDSTOP(J, MAX); #endif } @@ -1010,12 +1010,12 @@ void Endstops::update() { #if HAS_K_AXIS if (stepper.axis_is_moving(K_AXIS)) { if (stepper.motor_direction(K_AXIS_HEAD)) { // -direction - #if HAS_K_MIN || (K_SPI_SENSORLESS && K_HOME_TO_MIN) + #if USE_K_MIN || (K_SPI_SENSORLESS && K_HOME_TO_MIN) PROCESS_ENDSTOP(K, MIN); #endif } else { // +direction - #if HAS_K_MAX || (K_SPI_SENSORLESS && K_HOME_TO_MAX) + #if USE_K_MAX || (K_SPI_SENSORLESS && K_HOME_TO_MAX) PROCESS_ENDSTOP(K, MAX); #endif } @@ -1025,12 +1025,12 @@ void Endstops::update() { #if HAS_U_AXIS if (stepper.axis_is_moving(U_AXIS)) { if (stepper.motor_direction(U_AXIS_HEAD)) { // -direction - #if HAS_U_MIN || (U_SPI_SENSORLESS && U_HOME_TO_MIN) + #if USE_U_MIN || (U_SPI_SENSORLESS && U_HOME_TO_MIN) PROCESS_ENDSTOP(U, MIN); #endif } else { // +direction - #if HAS_U_MAX || (U_SPI_SENSORLESS && U_HOME_TO_MAX) + #if USE_U_MAX || (U_SPI_SENSORLESS && U_HOME_TO_MAX) PROCESS_ENDSTOP(U, MAX); #endif } @@ -1040,12 +1040,12 @@ void Endstops::update() { #if HAS_V_AXIS if (stepper.axis_is_moving(V_AXIS)) { if (stepper.motor_direction(V_AXIS_HEAD)) { // -direction - #if HAS_V_MIN || (V_SPI_SENSORLESS && V_HOME_TO_MIN) + #if USE_V_MIN || (V_SPI_SENSORLESS && V_HOME_TO_MIN) PROCESS_ENDSTOP(V, MIN); #endif } else { // +direction - #if HAS_V_MAX || (V_SPI_SENSORLESS && V_HOME_TO_MAX) + #if USE_V_MAX || (V_SPI_SENSORLESS && V_HOME_TO_MAX) PROCESS_ENDSTOP(V, MAX); #endif } @@ -1055,12 +1055,12 @@ void Endstops::update() { #if HAS_W_AXIS if (stepper.axis_is_moving(W_AXIS)) { if (stepper.motor_direction(W_AXIS_HEAD)) { // -direction - #if HAS_W_MIN || (W_SPI_SENSORLESS && W_HOME_TO_MIN) + #if USE_W_MIN || (W_SPI_SENSORLESS && W_HOME_TO_MIN) PROCESS_ENDSTOP(W, MIN); #endif } else { // +direction - #if HAS_W_MAX || (W_SPI_SENSORLESS && W_HOME_TO_MAX) + #if USE_W_MAX || (W_SPI_SENSORLESS && W_HOME_TO_MAX) PROCESS_ENDSTOP(W, MAX); #endif } @@ -1171,91 +1171,91 @@ void Endstops::update() { #define ES_GET_STATE(S) if (READ_ENDSTOP(S##_PIN)) SBI(live_state_local, S) - #if HAS_X_MIN + #if USE_X_MIN ES_GET_STATE(X_MIN); #endif - #if HAS_X_MAX + #if USE_X_MAX ES_GET_STATE(X_MAX); #endif - #if HAS_Y_MIN + #if USE_Y_MIN ES_GET_STATE(Y_MIN); #endif - #if HAS_Y_MAX + #if USE_Y_MAX ES_GET_STATE(Y_MAX); #endif #if HAS_Z_MIN_PIN ES_GET_STATE(Z_MIN); #endif - #if HAS_Z_MAX + #if USE_Z_MAX ES_GET_STATE(Z_MAX); #endif - #if HAS_Z_MIN_PROBE_PIN + #if USE_Z_MIN_PROBE ES_GET_STATE(Z_MIN_PROBE); #endif - #if HAS_X2_MIN + #if USE_X2_MIN ES_GET_STATE(X2_MIN); #endif - #if HAS_X2_MAX + #if USE_X2_MAX ES_GET_STATE(X2_MAX); #endif - #if HAS_Y2_MIN + #if USE_Y2_MIN ES_GET_STATE(Y2_MIN); #endif - #if HAS_Y2_MAX + #if USE_Y2_MAX ES_GET_STATE(Y2_MAX); #endif - #if HAS_Z2_MIN + #if USE_Z2_MIN ES_GET_STATE(Z2_MIN); #endif - #if HAS_Z2_MAX + #if USE_Z2_MAX ES_GET_STATE(Z2_MAX); #endif - #if HAS_Z3_MIN + #if USE_Z3_MIN ES_GET_STATE(Z3_MIN); #endif - #if HAS_Z3_MAX + #if USE_Z3_MAX ES_GET_STATE(Z3_MAX); #endif - #if HAS_Z4_MIN + #if USE_Z4_MIN ES_GET_STATE(Z4_MIN); #endif - #if HAS_Z4_MAX + #if USE_Z4_MAX ES_GET_STATE(Z4_MAX); #endif - #if HAS_I_MAX + #if USE_I_MAX ES_GET_STATE(I_MAX); #endif - #if HAS_I_MIN + #if USE_I_MIN ES_GET_STATE(I_MIN); #endif - #if HAS_J_MAX + #if USE_J_MAX ES_GET_STATE(J_MAX); #endif - #if HAS_J_MIN + #if USE_J_MIN ES_GET_STATE(J_MIN); #endif - #if HAS_K_MAX + #if USE_K_MAX ES_GET_STATE(K_MAX); #endif - #if HAS_K_MIN + #if USE_K_MIN ES_GET_STATE(K_MIN); #endif - #if HAS_U_MAX + #if USE_U_MAX ES_GET_STATE(U_MAX); #endif - #if HAS_U_MIN + #if USE_U_MIN ES_GET_STATE(U_MIN); #endif - #if HAS_V_MAX + #if USE_V_MAX ES_GET_STATE(V_MAX); #endif - #if HAS_V_MIN + #if USE_V_MIN ES_GET_STATE(V_MIN); #endif - #if HAS_W_MAX + #if USE_W_MAX ES_GET_STATE(W_MAX); #endif - #if HAS_W_MIN + #if USE_W_MIN ES_GET_STATE(W_MIN); #endif @@ -1263,91 +1263,91 @@ void Endstops::update() { #define ES_REPORT_CHANGE(S) if (TEST(endstop_change, S)) SERIAL_ECHOPGM(" " STRINGIFY(S) ":", TEST(live_state_local, S)) if (endstop_change) { - #if HAS_X_MIN + #if USE_X_MIN ES_REPORT_CHANGE(X_MIN); #endif - #if HAS_X_MAX + #if USE_X_MAX ES_REPORT_CHANGE(X_MAX); #endif - #if HAS_Y_MIN + #if USE_Y_MIN ES_REPORT_CHANGE(Y_MIN); #endif - #if HAS_Y_MAX + #if USE_Y_MAX ES_REPORT_CHANGE(Y_MAX); #endif - #if HAS_Z_MIN + #if USE_Z_MIN ES_REPORT_CHANGE(Z_MIN); #endif - #if HAS_Z_MAX + #if USE_Z_MAX ES_REPORT_CHANGE(Z_MAX); #endif - #if HAS_Z_MIN_PROBE_PIN + #if USE_Z_MIN_PROBE ES_REPORT_CHANGE(Z_MIN_PROBE); #endif - #if HAS_X2_MIN + #if USE_X2_MIN ES_REPORT_CHANGE(X2_MIN); #endif - #if HAS_X2_MAX + #if USE_X2_MAX ES_REPORT_CHANGE(X2_MAX); #endif - #if HAS_Y2_MIN + #if USE_Y2_MIN ES_REPORT_CHANGE(Y2_MIN); #endif - #if HAS_Y2_MAX + #if USE_Y2_MAX ES_REPORT_CHANGE(Y2_MAX); #endif - #if HAS_Z2_MIN + #if USE_Z2_MIN ES_REPORT_CHANGE(Z2_MIN); #endif - #if HAS_Z2_MAX + #if USE_Z2_MAX ES_REPORT_CHANGE(Z2_MAX); #endif - #if HAS_Z3_MIN + #if USE_Z3_MIN ES_REPORT_CHANGE(Z3_MIN); #endif - #if HAS_Z3_MAX + #if USE_Z3_MAX ES_REPORT_CHANGE(Z3_MAX); #endif - #if HAS_Z4_MIN + #if USE_Z4_MIN ES_REPORT_CHANGE(Z4_MIN); #endif - #if HAS_Z4_MAX + #if USE_Z4_MAX ES_REPORT_CHANGE(Z4_MAX); #endif - #if HAS_I_MIN + #if USE_I_MIN ES_REPORT_CHANGE(I_MIN); #endif - #if HAS_I_MAX + #if USE_I_MAX ES_REPORT_CHANGE(I_MAX); #endif - #if HAS_J_MIN + #if USE_J_MIN ES_REPORT_CHANGE(J_MIN); #endif - #if HAS_J_MAX + #if USE_J_MAX ES_REPORT_CHANGE(J_MAX); #endif - #if HAS_K_MIN + #if USE_K_MIN ES_REPORT_CHANGE(K_MIN); #endif - #if HAS_K_MAX + #if USE_K_MAX ES_REPORT_CHANGE(K_MAX); #endif - #if HAS_U_MIN + #if USE_U_MIN ES_REPORT_CHANGE(U_MIN); #endif - #if HAS_U_MAX + #if USE_U_MAX ES_REPORT_CHANGE(U_MAX); #endif - #if HAS_V_MIN + #if USE_V_MIN ES_REPORT_CHANGE(V_MIN); #endif - #if HAS_V_MAX + #if USE_V_MAX ES_REPORT_CHANGE(V_MAX); #endif - #if HAS_W_MIN + #if USE_W_MIN ES_REPORT_CHANGE(W_MIN); #endif - #if HAS_W_MAX + #if USE_W_MAX ES_REPORT_CHANGE(W_MAX); #endif @@ -1419,6 +1419,6 @@ void Endstops::update() { safe_delay(SENSORLESS_STALLGUARD_DELAY); // Short delay needed to settle #endif - #endif // XYZ + #endif } -#endif +#endif // USE_SENSORLESS diff --git a/Marlin/src/module/endstops.h b/Marlin/src/module/endstops.h index 28917697c431..7b662c27ac83 100644 --- a/Marlin/src/module/endstops.h +++ b/Marlin/src/module/endstops.h @@ -51,36 +51,36 @@ */ enum EndstopEnum : char { // Common XYZ (ABC) endstops. - ES_ITEM(HAS_X_MIN, X_MIN) ES_ITEM(HAS_X_MAX, X_MAX) - ES_ITEM(HAS_Y_MIN, Y_MIN) ES_ITEM(HAS_Y_MAX, Y_MAX) - ES_ITEM(HAS_Z_MIN, Z_MIN) ES_ITEM(HAS_Z_MAX, Z_MAX) - ES_ITEM(HAS_I_MIN, I_MIN) ES_ITEM(HAS_I_MAX, I_MAX) - ES_ITEM(HAS_J_MIN, J_MIN) ES_ITEM(HAS_J_MAX, J_MAX) - ES_ITEM(HAS_K_MIN, K_MIN) ES_ITEM(HAS_K_MAX, K_MAX) - ES_ITEM(HAS_U_MIN, U_MIN) ES_ITEM(HAS_U_MAX, U_MAX) - ES_ITEM(HAS_V_MIN, V_MIN) ES_ITEM(HAS_V_MAX, V_MAX) - ES_ITEM(HAS_W_MIN, W_MIN) ES_ITEM(HAS_W_MAX, W_MAX) + ES_ITEM(USE_X_MIN, X_MIN) ES_ITEM(USE_X_MAX, X_MAX) + ES_ITEM(USE_Y_MIN, Y_MIN) ES_ITEM(USE_Y_MAX, Y_MAX) + ES_ITEM(USE_Z_MIN, Z_MIN) ES_ITEM(USE_Z_MAX, Z_MAX) + ES_ITEM(USE_I_MIN, I_MIN) ES_ITEM(USE_I_MAX, I_MAX) + ES_ITEM(USE_J_MIN, J_MIN) ES_ITEM(USE_J_MAX, J_MAX) + ES_ITEM(USE_K_MIN, K_MIN) ES_ITEM(USE_K_MAX, K_MAX) + ES_ITEM(USE_U_MIN, U_MIN) ES_ITEM(USE_U_MAX, U_MAX) + ES_ITEM(USE_V_MIN, V_MIN) ES_ITEM(USE_V_MAX, V_MAX) + ES_ITEM(USE_W_MIN, W_MIN) ES_ITEM(USE_W_MAX, W_MAX) // Extra Endstops for XYZ #if ENABLED(X_DUAL_ENDSTOPS) - ES_ITEM(HAS_X_MIN, X2_MIN) ES_ITEM(HAS_X_MAX, X2_MAX) + ES_ITEM(USE_X_MIN, X2_MIN) ES_ITEM(USE_X_MAX, X2_MAX) #endif #if ENABLED(Y_DUAL_ENDSTOPS) - ES_ITEM(HAS_Y_MIN, Y2_MIN) ES_ITEM(HAS_Y_MAX, Y2_MAX) + ES_ITEM(USE_Y_MIN, Y2_MIN) ES_ITEM(USE_Y_MAX, Y2_MAX) #endif #if ENABLED(Z_MULTI_ENDSTOPS) - ES_ITEM(HAS_Z_MIN, Z2_MIN) ES_ITEM(HAS_Z_MAX, Z2_MAX) + ES_ITEM(USE_Z_MIN, Z2_MIN) ES_ITEM(USE_Z_MAX, Z2_MAX) #if NUM_Z_STEPPERS >= 3 - ES_ITEM(HAS_Z_MIN, Z3_MIN) ES_ITEM(HAS_Z_MAX, Z3_MAX) + ES_ITEM(USE_Z_MIN, Z3_MIN) ES_ITEM(USE_Z_MAX, Z3_MAX) #if NUM_Z_STEPPERS >= 4 - ES_ITEM(HAS_Z_MIN, Z4_MIN) ES_ITEM(HAS_Z_MAX, Z4_MAX) + ES_ITEM(USE_Z_MIN, Z4_MIN) ES_ITEM(USE_Z_MAX, Z4_MAX) #endif #endif #endif // Bed Probe state is distinct or shared with Z_MIN (i.e., when the probe is the only Z endstop) #if !HAS_DELTA_SENSORLESS_PROBING - ES_ITEM(HAS_BED_PROBE, Z_MIN_PROBE IF_DISABLED(USES_Z_MIN_PROBE_PIN, = Z_MIN)) + ES_ITEM(HAS_BED_PROBE, Z_MIN_PROBE IF_DISABLED(USE_Z_MIN_PROBE, = Z_MIN)) #endif // The total number of states diff --git a/Marlin/src/module/motion.h b/Marlin/src/module/motion.h index e899815c0f88..394c4748d94a 100644 --- a/Marlin/src/module/motion.h +++ b/Marlin/src/module/motion.h @@ -608,7 +608,7 @@ void home_if_needed(const bool keeplev=false); float x_home_pos(const uint8_t extruder); - #define TOOL_X_HOME_DIR(T) ((T) ? X2_HOME_DIR : X_HOME_DIR) + #define TOOL_X_HOME_DIR(T) ((T) ? 1 : -1) void set_duplication_enabled(const bool dupe, const int8_t tool_index=-1); void idex_set_mirrored_mode(const bool mirr); diff --git a/Marlin/src/module/probe.cpp b/Marlin/src/module/probe.cpp index 96606f30a87a..1e01cfd9b616 100644 --- a/Marlin/src/module/probe.cpp +++ b/Marlin/src/module/probe.cpp @@ -615,7 +615,7 @@ bool Probe::probe_down_to_z(const_float_t z, const_feedRate_t fr_mm_s) { if (test_sensitivity.z) stealth_states.z = tmc_enable_stallguard(stepperZ); // All machines will check Z-DIAG for stall endstops.set_homing_current(true); // The "homing" current also applies to probing endstops.enable(true); - #endif + #endif // SENSORLESS_PROBING TERN_(HAS_QUIET_PROBING, set_probing_paused(true)); @@ -623,13 +623,13 @@ bool Probe::probe_down_to_z(const_float_t z, const_feedRate_t fr_mm_s) { do_blocking_move_to_z(z, fr_mm_s); // Check to see if the probe was triggered - const bool probe_triggered = + const bool probe_triggered = ( #if HAS_DELTA_SENSORLESS_PROBING endstops.trigger_state() & (_BV(X_MAX) | _BV(Y_MAX) | _BV(Z_MAX)) #else TEST(endstops.trigger_state(), Z_MIN_PROBE) #endif - ; + ); // Offset sensorless probing #if HAS_DELTA_SENSORLESS_PROBING diff --git a/Marlin/src/module/probe.h b/Marlin/src/module/probe.h index 715f3f3a7380..eb55ea1b4513 100644 --- a/Marlin/src/module/probe.h +++ b/Marlin/src/module/probe.h @@ -45,7 +45,7 @@ }; #endif -#if USES_Z_MIN_PROBE_PIN +#if USE_Z_MIN_PROBE #define PROBE_TRIGGERED() (READ(Z_MIN_PROBE_PIN) == Z_MIN_PROBE_ENDSTOP_HIT_STATE) #else #define PROBE_TRIGGERED() (READ(Z_MIN_PIN) == Z_MIN_ENDSTOP_HIT_STATE) diff --git a/Marlin/src/module/stepper/trinamic.cpp b/Marlin/src/module/stepper/trinamic.cpp index 893ce3f8db18..3db2c0827e43 100644 --- a/Marlin/src/module/stepper/trinamic.cpp +++ b/Marlin/src/module/stepper/trinamic.cpp @@ -991,13 +991,13 @@ void reset_trinamic_drivers() { #if USE_SENSORLESS TERN_(X_SENSORLESS, stepperX.homing_threshold(X_STALL_SENSITIVITY)); - TERN_(X2_SENSORLESS, stepperX2.homing_threshold(CAT(TERN(X2_SENSORLESS, X2, X), _STALL_SENSITIVITY))); + TERN_(X2_SENSORLESS, stepperX2.homing_threshold(X2_STALL_SENSITIVITY)); TERN_(Y_SENSORLESS, stepperY.homing_threshold(Y_STALL_SENSITIVITY)); - TERN_(Y2_SENSORLESS, stepperY2.homing_threshold(CAT(TERN(Y2_SENSORLESS, Y2, Y), _STALL_SENSITIVITY))); + TERN_(Y2_SENSORLESS, stepperY2.homing_threshold(Y2_STALL_SENSITIVITY)); TERN_(Z_SENSORLESS, stepperZ.homing_threshold(Z_STALL_SENSITIVITY)); - TERN_(Z2_SENSORLESS, stepperZ2.homing_threshold(CAT(TERN(Z2_SENSORLESS, Z2, Z), _STALL_SENSITIVITY))); - TERN_(Z3_SENSORLESS, stepperZ3.homing_threshold(CAT(TERN(Z3_SENSORLESS, Z3, Z), _STALL_SENSITIVITY))); - TERN_(Z4_SENSORLESS, stepperZ4.homing_threshold(CAT(TERN(Z4_SENSORLESS, Z4, Z), _STALL_SENSITIVITY))); + TERN_(Z2_SENSORLESS, stepperZ2.homing_threshold(Z2_STALL_SENSITIVITY)); + TERN_(Z3_SENSORLESS, stepperZ3.homing_threshold(Z3_STALL_SENSITIVITY)); + TERN_(Z4_SENSORLESS, stepperZ4.homing_threshold(Z4_STALL_SENSITIVITY)); TERN_(I_SENSORLESS, stepperI.homing_threshold(I_STALL_SENSITIVITY)); TERN_(J_SENSORLESS, stepperJ.homing_threshold(J_STALL_SENSITIVITY)); TERN_(K_SENSORLESS, stepperK.homing_threshold(K_STALL_SENSITIVITY)); diff --git a/Marlin/src/pins/pins_postprocess.h b/Marlin/src/pins/pins_postprocess.h index daf6c03aa321..b0fe6bcb6bc0 100644 --- a/Marlin/src/pins/pins_postprocess.h +++ b/Marlin/src/pins/pins_postprocess.h @@ -497,7 +497,7 @@ #undef NEEDS_Z_MINMAX // -// Assign endstop pins for boards with only 3 connectors +// Assign endstop pins, with handling for boards that have only 3 connectors // #if HAS_X_AXIS #ifdef X_STOP_PIN @@ -1639,10 +1639,10 @@ /** * X_DUAL_ENDSTOPS endstop reassignment */ -#if ENABLED(X_DUAL_ENDSTOPS) - #if X_HOME_TO_MAX && !defined(X2_MAX_PIN) && PIN_EXISTS(X2_STOP) +#if ENABLED(X_DUAL_ENDSTOPS) && PIN_EXISTS(X2_STOP) + #if X_HOME_TO_MAX && !defined(X2_MAX_PIN) #define X2_MAX_PIN X2_STOP_PIN - #elif X_HOME_TO_MIN && !defined(X2_MIN_PIN) && PIN_EXISTS(X2_STOP) + #elif X_HOME_TO_MIN && !defined(X2_MIN_PIN) #define X2_MIN_PIN X2_STOP_PIN #endif #endif @@ -1650,10 +1650,10 @@ /** * Y_DUAL_ENDSTOPS endstop reassignment */ -#if ENABLED(Y_DUAL_ENDSTOPS) - #if Y_HOME_TO_MAX && !defined(Y2_MAX_PIN) && PIN_EXISTS(Y2_STOP) +#if ENABLED(Y_DUAL_ENDSTOPS) && PIN_EXISTS(Y2_STOP) + #if Y_HOME_TO_MAX && !defined(Y2_MAX_PIN) #define Y2_MAX_PIN Y2_STOP_PIN - #elif Y_HOME_TO_MIN && !defined(Y2_MIN_PIN) && PIN_EXISTS(Y2_STOP) + #elif Y_HOME_TO_MIN && !defined(Y2_MIN_PIN) #define Y2_MIN_PIN Y2_STOP_PIN #endif #endif @@ -1662,22 +1662,24 @@ * Z_MULTI_ENDSTOPS endstop reassignment */ #if ENABLED(Z_MULTI_ENDSTOPS) - #if Z_HOME_TO_MAX && !defined(Z2_MAX_PIN) && PIN_EXISTS(Z2_STOP) - #define Z2_MAX_PIN Z2_STOP_PIN - #elif Z_HOME_TO_MIN && !defined(Z2_MIN_PIN) && PIN_EXISTS(Z2_STOP) - #define Z2_MIN_PIN Z2_STOP_PIN + #if PIN_EXISTS(Z2_STOP) + #if Z_HOME_TO_MAX && !defined(Z2_MAX_PIN) + #define Z2_MAX_PIN Z2_STOP_PIN + #elif Z_HOME_TO_MIN && !defined(Z2_MIN_PIN) + #define Z2_MIN_PIN Z2_STOP_PIN + #endif #endif - #if NUM_Z_STEPPERS >= 3 - #if Z_HOME_TO_MAX && !defined(Z3_MAX_PIN) && PIN_EXISTS(Z3_STOP) + #if NUM_Z_STEPPERS >= 3 && PIN_EXISTS(Z3_STOP) + #if Z_HOME_TO_MAX && !defined(Z3_MAX_PIN) #define Z3_MAX_PIN Z3_STOP_PIN - #elif Z_HOME_TO_MIN && !defined(Z3_MIN_PIN) && PIN_EXISTS(Z3_STOP) + #elif Z_HOME_TO_MIN && !defined(Z3_MIN_PIN) #define Z3_MIN_PIN Z3_STOP_PIN #endif #endif - #if NUM_Z_STEPPERS >= 4 - #if Z_HOME_TO_MAX && !defined(Z4_MAX_PIN) && PIN_EXISTS(Z4_STOP) + #if NUM_Z_STEPPERS >= 4 && PIN_EXISTS(Z4_STOP) + #if Z_HOME_TO_MAX && !defined(Z4_MAX_PIN) #define Z4_MAX_PIN Z4_STOP_PIN - #elif Z_HOME_TO_MIN && !defined(Z4_MIN_PIN) && PIN_EXISTS(Z4_STOP) + #elif Z_HOME_TO_MIN && !defined(Z4_MIN_PIN) #define Z4_MIN_PIN Z4_STOP_PIN #endif #endif From 40895cbcbb284b9d5e7440dc8ad40fdcfd1579bd Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 5 May 2023 20:46:33 -0500 Subject: [PATCH 128/427] =?UTF-8?q?=F0=9F=94=A7=20Allow=20TMC=5FBAUD=5FRAT?= =?UTF-8?q?E=20override?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/pins/esp32/pins_ENWI_ESPNP.h | 4 +++- Marlin/src/pins/gd32f1/pins_SOVOL_V131.h | 4 +++- Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h | 7 +++++-- Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h | 7 +++++-- Marlin/src/pins/lpc1768/pins_GMARSH_X6_REV1.h | 4 +++- Marlin/src/pins/lpc1768/pins_MKS_SBASE.h | 7 +++++-- Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h | 5 ++++- Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h | 7 +++++-- Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h | 7 +++++-- Marlin/src/pins/lpc1769/pins_FLY_CDY.h | 7 +++++-- Marlin/src/pins/lpc1769/pins_MKS_SGEN.h | 7 +++++-- Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h | 5 ++++- Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h | 7 +++++-- Marlin/src/pins/ramps/pins_RAMPS.h | 5 +++-- Marlin/src/pins/ramps/pins_TRIGORILLA_14.h | 1 + Marlin/src/pins/stm32f1/pins_BTT_SKR_E3_DIP.h | 7 +++++-- Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_V1_2.h | 7 +++++-- Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h | 7 +++++-- Marlin/src/pins/stm32f1/pins_CCROBOT_MEEB_3DP.h | 4 +++- Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h | 5 +++-- Marlin/src/pins/stm32f1/pins_FYSETC_AIO_II.h | 7 +++++-- Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH_V12.h | 7 +++++-- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h | 5 ++++- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h | 7 +++++-- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h | 5 ++++- Marlin/src/pins/stm32f1/pins_PANDA_PI_V29.h | 7 +++++-- Marlin/src/pins/stm32f4/pins_ARMED.h | 7 +++++-- Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h | 7 +++++-- Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h | 7 +++++-- Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h | 7 +++++-- Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h | 7 +++++-- Marlin/src/pins/stm32f4/pins_BTT_SKR_PRO_common.h | 7 +++++-- Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h | 7 +++++-- Marlin/src/pins/stm32f4/pins_LERDGE_K.h | 7 +++++-- Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h | 7 +++++-- .../src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h | 7 +++++-- Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h | 5 ++++- Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h | 7 +++++-- Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV3.h | 6 ++++-- Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV4.h | 6 ++++-- Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h | 11 +++++++---- Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h | 4 +++- Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h | 7 +++++-- Marlin/src/pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h | 7 +++++-- Marlin/src/pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h | 7 +++++-- Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_V1_0.h | 7 +++++-- Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_V1_1.h | 7 +++++-- Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h | 7 +++++-- Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h | 7 +++++-- Marlin/src/pins/stm32h7/pins_BTT_SKR_SE_BX_common.h | 7 +++++-- Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h | 7 +++++-- 51 files changed, 232 insertions(+), 92 deletions(-) diff --git a/Marlin/src/pins/esp32/pins_ENWI_ESPNP.h b/Marlin/src/pins/esp32/pins_ENWI_ESPNP.h index e911900b1d09..360501aa08ac 100644 --- a/Marlin/src/pins/esp32/pins_ENWI_ESPNP.h +++ b/Marlin/src/pins/esp32/pins_ENWI_ESPNP.h @@ -91,7 +91,9 @@ #define K_CS_PIN 159 // Reduce baud rate to improve software serial reliability -#define TMC_BAUD_RATE 19200 +#ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 +#endif // // Temperature Sensors diff --git a/Marlin/src/pins/gd32f1/pins_SOVOL_V131.h b/Marlin/src/pins/gd32f1/pins_SOVOL_V131.h index 44e527542362..e92c24b86cdb 100644 --- a/Marlin/src/pins/gd32f1/pins_SOVOL_V131.h +++ b/Marlin/src/pins/gd32f1/pins_SOVOL_V131.h @@ -63,7 +63,9 @@ #define E0_SERIAL_RX_PIN PC14 // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif #endif // HAS_TMC_UART diff --git a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h index 90a2ef8afcbc..ec21a1b39dda 100644 --- a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h +++ b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h @@ -186,8 +186,11 @@ #define E1_SERIAL_RX_PIN P1_01 // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART /** * ------ ------ diff --git a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h index 41190e644f31..9aa6a2b21b02 100644 --- a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h +++ b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h @@ -243,8 +243,11 @@ #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART /** ------ ------ * 1.30 | 1 2 | 0.28 0.17 | 1 2 | 0.15 diff --git a/Marlin/src/pins/lpc1768/pins_GMARSH_X6_REV1.h b/Marlin/src/pins/lpc1768/pins_GMARSH_X6_REV1.h index 92c405b267b4..a9184073c5d6 100644 --- a/Marlin/src/pins/lpc1768/pins_GMARSH_X6_REV1.h +++ b/Marlin/src/pins/lpc1768/pins_GMARSH_X6_REV1.h @@ -106,7 +106,9 @@ #define E2_SERIAL_RX_PIN E2_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif #else #error "TMC2208 UART configuration is required for GMarsh X6." #endif diff --git a/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h b/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h index 09a30753014d..6d76fb2c8fcc 100644 --- a/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h +++ b/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h @@ -336,8 +336,11 @@ #define E0_SERIAL_RX_PIN P0_26 // TH4 // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // UNUSED //#define PIN_P0_02 P0_02 // AUX1 (Interrupt Capable/ADC/Serial Port 0) diff --git a/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h b/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h index 0994b20a0cdd..54a91e364d1f 100644 --- a/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h +++ b/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h @@ -184,7 +184,10 @@ #define Z2_SERIAL_RX_PIN P1_17 // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + #endif // HAS_TMC_UART // diff --git a/Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h b/Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h index 6639053d5e60..f5d288fce426 100644 --- a/Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h +++ b/Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h @@ -151,8 +151,11 @@ #endif // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h b/Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h index 8c32202d4ddd..2e04f7869a73 100644 --- a/Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h +++ b/Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h @@ -153,8 +153,11 @@ #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // TMC Low Power Standby pins diff --git a/Marlin/src/pins/lpc1769/pins_FLY_CDY.h b/Marlin/src/pins/lpc1769/pins_FLY_CDY.h index fb768ed46a9b..d5a7a38c234d 100644 --- a/Marlin/src/pins/lpc1769/pins_FLY_CDY.h +++ b/Marlin/src/pins/lpc1769/pins_FLY_CDY.h @@ -126,8 +126,11 @@ #define E2_SERIAL_RX_PIN E2_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/lpc1769/pins_MKS_SGEN.h b/Marlin/src/pins/lpc1769/pins_MKS_SGEN.h index 1e71fccfe5c5..5e552353cd31 100644 --- a/Marlin/src/pins/lpc1769/pins_MKS_SGEN.h +++ b/Marlin/src/pins/lpc1769/pins_MKS_SGEN.h @@ -56,5 +56,8 @@ #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART diff --git a/Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h b/Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h index 51a8f601ee8b..e8c48c1b7a58 100644 --- a/Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h +++ b/Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h @@ -195,7 +195,10 @@ #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + #endif // HAS_TMC_UART // diff --git a/Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h b/Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h index a55b9fb64636..11fa2c9468d1 100644 --- a/Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h +++ b/Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h @@ -99,8 +99,11 @@ #define E0_SERIAL_RX_PIN P0_21 // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temp Sensors diff --git a/Marlin/src/pins/ramps/pins_RAMPS.h b/Marlin/src/pins/ramps/pins_RAMPS.h index 0334da2da39c..73207593fc41 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS.h +++ b/Marlin/src/pins/ramps/pins_RAMPS.h @@ -337,8 +337,9 @@ * Hardware serial communication ports. * If undefined software serial is used according to the pins below * - * Serial2 -- AUX-4 Pin 18 (D16 TX2) and AUX-4 Pin 17 (D17 RX2) - * Serial1 -- Pins D18 and D19 are used for Z-MIN and Z-MAX + * Serial1 -- TX1 = D18 RX1 = D19 (Z-MIN and Z-MAX on RAMPS) + * Serial2 -- TX2 = D16 RX2 = D17 (AUX4-18 and AUX4-17) + * Serial3 -- TX3 = D14 RX3 = D15 (Available on some RAMPS-like boards) */ //#define X_HARDWARE_SERIAL Serial1 //#define X2_HARDWARE_SERIAL Serial1 diff --git a/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h b/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h index c2af8f196856..bb74fe421a7f 100644 --- a/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h +++ b/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h @@ -69,6 +69,7 @@ * IIC : 12V GND D21 D20 GND 5V * (SCL SDA) * + * TX2 RX2 RX3 TX3 * END STOPS : D19 D18 D15 D14 D2 D3 * GND GND GND GND GND GND * 5V 5V 5V 5V 5V 5V diff --git a/Marlin/src/pins/stm32f1/pins_BTT_SKR_E3_DIP.h b/Marlin/src/pins/stm32f1/pins_BTT_SKR_E3_DIP.h index aa8795bf3e20..5f3dc781503d 100644 --- a/Marlin/src/pins/stm32f1/pins_BTT_SKR_E3_DIP.h +++ b/Marlin/src/pins/stm32f1/pins_BTT_SKR_E3_DIP.h @@ -131,8 +131,11 @@ #define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_V1_2.h b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_V1_2.h index 44d4f2343546..c345a27b76e9 100644 --- a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_V1_2.h +++ b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_V1_2.h @@ -46,5 +46,8 @@ #define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART diff --git a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h index eb2f17f40a9b..44a98e5af70e 100644 --- a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h +++ b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h @@ -93,8 +93,11 @@ #define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Heaters / Fans diff --git a/Marlin/src/pins/stm32f1/pins_CCROBOT_MEEB_3DP.h b/Marlin/src/pins/stm32f1/pins_CCROBOT_MEEB_3DP.h index 5cb2845d9fb5..015d8c03ee2b 100644 --- a/Marlin/src/pins/stm32f1/pins_CCROBOT_MEEB_3DP.h +++ b/Marlin/src/pins/stm32f1/pins_CCROBOT_MEEB_3DP.h @@ -100,7 +100,9 @@ #endif // Reduce baud rate to improve software serial reliability -#define TMC_BAUD_RATE 19200 +#ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 +#endif // // Temperature Sensors diff --git a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h index a02b270337b9..fd6609f0fc70 100644 --- a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h +++ b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h @@ -128,7 +128,9 @@ #define Y_SERIAL_RX_PIN Y_SERIAL_TX_PIN #define Z_SERIAL_TX_PIN PC7 // IO1 #define Z_SERIAL_RX_PIN Z_SERIAL_TX_PIN - #define TMC_BAUD_RATE 19200 + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif #else // Motor current PWM pins #define MOTOR_CURRENT_PWM_XY_PIN PA6 // VREF2/3 CONTROL XY @@ -169,7 +171,6 @@ #if AXIS_DRIVER_TYPE_E0(TMC2208) || AXIS_DRIVER_TYPE_E0(TMC2209) #define E0_SERIAL_TX_PIN PA8 // IO0 #define E0_SERIAL_RX_PIN PA8 // IO0 - #define TMC_BAUD_RATE 19200 #else // Motor current PWM pins #define MOTOR_CURRENT_PWM_E_PIN PB0 // VREF1 CONTROL E diff --git a/Marlin/src/pins/stm32f1/pins_FYSETC_AIO_II.h b/Marlin/src/pins/stm32f1/pins_FYSETC_AIO_II.h index 1c62c461f964..c4fde59c47dd 100644 --- a/Marlin/src/pins/stm32f1/pins_FYSETC_AIO_II.h +++ b/Marlin/src/pins/stm32f1/pins_FYSETC_AIO_II.h @@ -118,8 +118,11 @@ #endif // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Stepper current PWM diff --git a/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH_V12.h b/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH_V12.h index 120d6d6f0a7b..96e90b701ca7 100644 --- a/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH_V12.h +++ b/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH_V12.h @@ -55,5 +55,8 @@ #define E0_SERIAL_RX_PIN PA3 // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h index 3ec2c2cfd948..5cf209e53315 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h @@ -156,7 +156,10 @@ #define E0_SERIAL_RX_PIN PD9 // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + #endif // HAS_TMC_UART // diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h index 4d71fcf65615..f257ea3bbb31 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h @@ -112,8 +112,11 @@ #define E0_SERIAL_RX_PIN PC11 // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Heaters 0,1 / Fans / Bed diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h index 6f641f20dd12..d92ea01aa380 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h @@ -163,7 +163,10 @@ #define E1_SERIAL_RX_PIN PD8 // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + #endif // HAS_TMC_UART // diff --git a/Marlin/src/pins/stm32f1/pins_PANDA_PI_V29.h b/Marlin/src/pins/stm32f1/pins_PANDA_PI_V29.h index 60211f53f47c..2ce878ea593c 100644 --- a/Marlin/src/pins/stm32f1/pins_PANDA_PI_V29.h +++ b/Marlin/src/pins/stm32f1/pins_PANDA_PI_V29.h @@ -125,8 +125,11 @@ #define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/stm32f4/pins_ARMED.h b/Marlin/src/pins/stm32f4/pins_ARMED.h index 357ab1bd3b26..9a04c80cdd5e 100644 --- a/Marlin/src/pins/stm32f4/pins_ARMED.h +++ b/Marlin/src/pins/stm32f4/pins_ARMED.h @@ -223,5 +223,8 @@ #define Z2_SERIAL_RX_PIN EXT4_PIN #define Z2_SERIAL_TX_PIN EXT4_PIN - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART diff --git a/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h b/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h index f40e6c2d694d..ce3d2556bffd 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h @@ -152,8 +152,11 @@ #define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h b/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h index 0ed0177da8fe..d737dbdc9339 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h @@ -131,8 +131,11 @@ #endif // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h b/Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h index 6021810f403d..0445476490de 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h @@ -282,8 +282,11 @@ #endif // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h b/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h index bf08aca0fe45..29c1e9f984e4 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h @@ -299,8 +299,11 @@ #define E3_SERIAL_RX_PIN E3_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART /** ------ ------ * (BEEPER) PE8 | 1 2 | PE7 (BTN_ENC) (MISO) PA6 | 1 2 | PA5 (SCK) diff --git a/Marlin/src/pins/stm32f4/pins_BTT_SKR_PRO_common.h b/Marlin/src/pins/stm32f4/pins_BTT_SKR_PRO_common.h index ad0f594a24e9..407d89f60b35 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_SKR_PRO_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_SKR_PRO_common.h @@ -222,8 +222,11 @@ #define E2_SERIAL_RX_PIN E2_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h index 183927a5a62a..05537ec243a4 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h @@ -322,8 +322,11 @@ #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // SD Connection diff --git a/Marlin/src/pins/stm32f4/pins_LERDGE_K.h b/Marlin/src/pins/stm32f4/pins_LERDGE_K.h index 04264ea2e7c8..da11ce05ef18 100644 --- a/Marlin/src/pins/stm32f4/pins_LERDGE_K.h +++ b/Marlin/src/pins/stm32f4/pins_LERDGE_K.h @@ -159,8 +159,11 @@ //#define E2_SERIAL_RX_PIN EX_SERIAL_RX_PIN //#define E2_SERIAL_TX_PIN EX_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h b/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h index 33dedf7e8e62..0940fc5e0c3c 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h @@ -175,8 +175,11 @@ #define E4_SERIAL_RX_PIN E4_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h index 3b1c773b29ec..01f2b00b585a 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h @@ -108,8 +108,11 @@ #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h index 7d537c9643fe..952a8e1ec070 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h @@ -160,7 +160,10 @@ #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + #endif // HAS_TMC_UART // diff --git a/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h b/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h index d26e541d4c87..84d5a5f5e0ab 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h @@ -211,8 +211,11 @@ #define E3_SERIAL_RX_PIN E3_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART /** ------ ------ * (BEEPER) PB2 | 1 2 | PE10 (BTN_ENC) (MISO) PA6 | 1 2 | PA5 (SCK) diff --git a/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV3.h b/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV3.h index eb6edb765ee8..5802c0724136 100644 --- a/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV3.h +++ b/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV3.h @@ -144,9 +144,11 @@ #define K_SERIAL_RX_PIN K_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif -#endif +#endif // HAS_TMC_UART // // Heaters / Fans diff --git a/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV4.h b/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV4.h index b44061a491ab..1697cf000e6e 100644 --- a/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV4.h +++ b/Marlin/src/pins/stm32f4/pins_OPULO_LUMEN_REV4.h @@ -141,9 +141,11 @@ #define K_SERIAL_RX_PIN K_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif -#endif +#endif // HAS_TMC_UART // // Heaters / Fans diff --git a/Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h b/Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h index b74db89f3a0c..0ab67c1558a8 100644 --- a/Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h +++ b/Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h @@ -132,9 +132,6 @@ #define E0_SERIAL_TX_PIN PC10 #define E0_SERIAL_RX_PIN PC11 - // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 - // Default TMC slave addresses #ifndef X_SLAVE_ADDRESS #define X_SLAVE_ADDRESS 0 @@ -148,7 +145,13 @@ #ifndef E0_SLAVE_ADDRESS #define E0_SLAVE_ADDRESS 3 #endif -#endif + + // Reduce baud rate to improve software serial reliability + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temp Sensors diff --git a/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h b/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h index c79f8ab0843d..c3110462d1a4 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h @@ -110,7 +110,9 @@ #define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif // Default TMC slave addresses #ifndef E0_SLAVE_ADDRESS diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h index e2e276f89ab3..25f1b307ca8d 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h @@ -172,8 +172,11 @@ #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h index 8f3cc618e72a..3a18b7864c8b 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h @@ -138,8 +138,11 @@ #define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h index fd926c014fb2..1d77a6cb0751 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h @@ -158,8 +158,11 @@ #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_V1_0.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_V1_0.h index 4f8d30b6b7fa..824e44130f6e 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_V1_0.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_V1_0.h @@ -64,8 +64,11 @@ #define E3_SERIAL_RX_PIN E3_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // NeoPixel LED diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_V1_1.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_V1_1.h index a21bb59e69c3..d7c15eaa047e 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_V1_1.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_V1_1.h @@ -63,8 +63,11 @@ #define E3_SERIAL_RX_PIN E3_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // NeoPixel LED diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h index 792f473d9234..8cab6b53574f 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h @@ -194,8 +194,11 @@ #define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h b/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h index 119c6b39299d..69723947fd73 100644 --- a/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h +++ b/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h @@ -318,8 +318,11 @@ #define E5_SERIAL_RX_PIN E3_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART /** * ---- diff --git a/Marlin/src/pins/stm32h7/pins_BTT_SKR_SE_BX_common.h b/Marlin/src/pins/stm32h7/pins_BTT_SKR_SE_BX_common.h index 7f5f5269d142..caa2272f4d86 100644 --- a/Marlin/src/pins/stm32h7/pins_BTT_SKR_SE_BX_common.h +++ b/Marlin/src/pins/stm32h7/pins_BTT_SKR_SE_BX_common.h @@ -141,8 +141,11 @@ #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // Temperature Sensors diff --git a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h index 09b305f700dd..77f47f810664 100644 --- a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h +++ b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h @@ -310,8 +310,11 @@ #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN // Reduce baud rate to improve software serial reliability - #define TMC_BAUD_RATE 19200 -#endif + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART // // SD Connection From af4ba2b1ced98066b89dde7636b052b075f96621 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 5 May 2023 17:42:56 -0500 Subject: [PATCH 129/427] =?UTF-8?q?=F0=9F=90=9B=20Minor=20Fixed-Time=20Mot?= =?UTF-8?q?ion=20patches?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/MarlinCore.cpp | 5 +++++ Marlin/src/inc/SanityCheck.h | 7 +++++++ Marlin/src/module/ft_motion.cpp | 3 --- Marlin/src/module/stepper.cpp | 2 +- 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index 5b4d33609de5..5000f3673ba0 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -1624,6 +1624,11 @@ void setup() { SETUP_RUN(bdl.init(I2C_BD_SDA_PIN, I2C_BD_SCL_PIN, I2C_BD_DELAY)); #endif + + #if ENABLED(FT_MOTION) + SETUP_RUN(fxdTiCtrl.init()); + #endif + marlin_state = MF_RUNNING; #ifdef STARTUP_TUNE diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 223baf928dcf..e495d7a11582 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -4030,6 +4030,13 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); #endif #endif +/** + * Fixed-Time Motion limitations + */ +#if ENABLED(FT_MOTION) && (NUM_AXES > 3 || E_STEPPERS > 1 || NUM_Z_STEPPERS > 1 || ANY(DUAL_X_CARRIAGE, HAS_DUAL_X_STEPPERS, HAS_DUAL_Y_STEPPERS, HAS_MULTI_EXTRUDER, MIXING_EXTRUDER)) + #error "FT_MOTION is currently limited to machines with 3 linear axes and a single extruder." +#endif + // Multi-Stepping Limit static_assert(WITHIN(MULTISTEPPING_LIMIT, 1, 128) && IS_POWER_OF_2(MULTISTEPPING_LIMIT), "MULTISTEPPING_LIMIT must be 1, 2, 4, 8, 16, 32, 64, or 128."); diff --git a/Marlin/src/module/ft_motion.cpp b/Marlin/src/module/ft_motion.cpp index 2fe38025296d..bc6ba8d3e364 100644 --- a/Marlin/src/module/ft_motion.cpp +++ b/Marlin/src/module/ft_motion.cpp @@ -211,9 +211,6 @@ void FxdTiCtrl::loop() { if (!cfg_mode) return; - static bool initd = false; - if (!initd) { init(); initd = true; } - // Handle block abort with the following sequence: // 1. Zero out commands in stepper ISR. // 2. Drain the motion buffer, stop processing until they are emptied. diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 140a539ef36c..c7c053679a70 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -3466,7 +3466,7 @@ void Stepper::report_positions() { #if HAS_Z_AXIS // Update step counts - if (z_step) count_position.z += z_dir ? -1 : 1; + if (z_step) count_position.z += z_dir ? 1 : -1; #endif AWAIT_HIGH_PULSE(); From 53d06be226a175a5a7950356746941a5319b06c5 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 6 May 2023 02:26:54 -0500 Subject: [PATCH 130/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20End?= =?UTF-8?q?stops=20preliminary=20followup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25780 --- Marlin/src/MarlinCore.cpp | 1 - Marlin/src/module/endstops.cpp | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index 5000f3673ba0..08c69aa5b7c6 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -1624,7 +1624,6 @@ void setup() { SETUP_RUN(bdl.init(I2C_BD_SDA_PIN, I2C_BD_SCL_PIN, I2C_BD_DELAY)); #endif - #if ENABLED(FT_MOTION) SETUP_RUN(fxdTiCtrl.init()); #endif diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index ebe0a64bac79..0a01dd2d04c1 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -869,7 +869,7 @@ void Endstops::update() { #if HAS_X_AXIS if (stepper.axis_is_moving(X_AXIS)) { if (stepper.motor_direction(X_AXIS_HEAD)) { // -direction - #if HAS_X_MIN || (X_SPI_SENSORLESS && X_HOME_TO_MIN) + #if USE_X_MIN || (X_SPI_SENSORLESS && X_HOME_TO_MIN) PROCESS_ENDSTOP_X(MIN); #if CORE_DIAG(XY, Y, MIN) PROCESS_CORE_ENDSTOP(Y,MIN,X,MIN); @@ -883,7 +883,7 @@ void Endstops::update() { #endif } else { // +direction - #if HAS_X_MAX || (X_SPI_SENSORLESS && X_HOME_TO_MAX) + #if USE_X_MAX || (X_SPI_SENSORLESS && X_HOME_TO_MAX) PROCESS_ENDSTOP_X(MAX); #if CORE_DIAG(XY, Y, MIN) PROCESS_CORE_ENDSTOP(Y,MIN,X,MAX); From 97d8a6894903380de76d601be949599b0457f0bb Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 6 May 2023 14:52:58 -0500 Subject: [PATCH 131/427] =?UTF-8?q?=F0=9F=A9=B9=20FT=20Motion=20prelim=20f?= =?UTF-8?q?ollowup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/ft_motion.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/module/ft_motion.h b/Marlin/src/module/ft_motion.h index 6c5b6bf03bf6..a277f3ac26e6 100644 --- a/Marlin/src/module/ft_motion.h +++ b/Marlin/src/module/ft_motion.h @@ -53,6 +53,7 @@ class FxdTiCtrl { // Public methods + static void init(); static void startBlockProc(block_t * const current_block); // Set controller states to begin processing a block. static bool getBlockProcDn() { return blockProcDn; } // Return true if the controller no longer needs the current block. static void runoutBlock(); // Move any free data points to the stepper buffer even if a full batch isn't ready. @@ -160,7 +161,6 @@ class FxdTiCtrl { // Private methods static uint32_t stepperCmdBuffItems(); - static void init(); static void loadBlockData(block_t * const current_block); static void makeVector(); static void convertToSteps(const uint32_t idx); From 4528fde7f9255eb90fc9b9a44e35a04efb764742 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 6 May 2023 14:56:22 -0500 Subject: [PATCH 132/427] =?UTF-8?q?=F0=9F=94=A7=20Apply=20bootscreen=20set?= =?UTF-8?q?tings=20to=20ProUI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/e3v2/proui/dwin.cpp | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index a372ae5b4d7e..f3a23ae1e40a 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -1225,14 +1225,19 @@ void HMI_WaitForUser() { } void HMI_Init() { - DWINUI::Draw_Box(1, Color_Black, { 5, 220, DWIN_WIDTH - 5, DWINUI::fontHeight() }); - DWINUI::Draw_CenteredString(Color_White, 220, F("Professional Firmware ")); - for (uint16_t t = 15; t <= 257; t += 10) { - DWINUI::Draw_Icon(ICON_Bar, 15, 260); - DWIN_Draw_Rectangle(1, HMI_data.Background_Color, t, 260, 257, 280); - DWIN_UpdateLCD(); - delay(50); - } + #if ENABLED(SHOW_BOOTSCREEN) + #ifndef BOOTSCREEN_TIMEOUT + #define BOOTSCREEN_TIMEOUT 1100 + #endif + DWINUI::Draw_Box(1, Color_Black, { 5, 220, DWIN_WIDTH - 5, DWINUI::fontHeight() }); + DWINUI::Draw_CenteredString(Color_White, 220, F("Professional Firmware ")); + for (uint16_t t = 15; t < 257; t += 11) { + DWINUI::Draw_Icon(ICON_Bar, 15, 260); + DWIN_Draw_Rectangle(1, HMI_data.Background_Color, t, 260, 257, 280); + DWIN_UpdateLCD(); + delay((BOOTSCREEN_TIMEOUT) / 22); + } + #endif HMI_SetLanguage(); } From d93aa0c38449bcbc38aeca7eac506297270546c8 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 6 May 2023 16:42:21 -0500 Subject: [PATCH 133/427] =?UTF-8?q?=F0=9F=90=9B=20Apply=20direction=20bits?= =?UTF-8?q?=20at=20startup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/stepper.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index c7c053679a70..ec85db35d6a2 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -3156,6 +3156,9 @@ void Stepper::init() { sei(); #endif + // Init direction states + apply_directions(); + #if HAS_MOTOR_CURRENT_SPI || HAS_MOTOR_CURRENT_PWM initialized = true; digipot_init(); From 12d8108fc6b77bd6c277c49deb4ac99879d551ef Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 6 May 2023 17:37:47 -0500 Subject: [PATCH 134/427] =?UTF-8?q?=F0=9F=9A=B8=20Faster=20default=20Marli?= =?UTF-8?q?n=20feedrate?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/motion.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index 9c59195a8cb7..de512e11fe48 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -136,7 +136,10 @@ xyze_pos_t destination; // {0} // no other feedrate is specified. Overridden for special moves. // Set by the last G0 through G5 command's "F" parameter. // Functions that override this for custom moves *must always* restore it! -feedRate_t feedrate_mm_s = MMM_TO_MMS(1500); +#ifndef DEFAULT_FEEDRATE_MM_M + #define DEFAULT_FEEDRATE_MM_M 4000 +#endif +feedRate_t feedrate_mm_s = MMM_TO_MMS(DEFAULT_FEEDRATE_MM_M); int16_t feedrate_percentage = 100; // Cartesian conversion result goes here: From 99a9e265b0b7356b4d3bc5fdef88e2afe1ab0623 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 6 May 2023 19:07:07 -0500 Subject: [PATCH 135/427] =?UTF-8?q?=F0=9F=A9=B9=20Endstops=20prelim.=20fol?= =?UTF-8?q?lowup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/endstops.cpp | 4 ++-- Marlin/src/module/endstops.h | 3 +++ Marlin/src/module/stepper.cpp | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index 0a01dd2d04c1..bf493023d8ed 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -311,7 +311,7 @@ void Endstops::event_handler() { SERIAL_ECHOPGM(" " STRINGIFY(A) ":", planner.triggered_position_mm(_AXIS(A))); _SET_STOP_CHAR(A,C); }while(0) #define _ENDSTOP_HIT_TEST(A,C) \ - if (TERN0(HAS_##A##_MIN, TEST(hit_state, A##_MIN)) || TERN0(HAS_##A##_MAX, TEST(hit_state, A##_MAX))) \ + if (TERN0(USE_##A##_MIN, TEST(hit_state, ES_ENUM(A,MIN))) || TERN0(USE_##A##_MAX, TEST(hit_state, ES_ENUM(A,MAX)))) \ _ENDSTOP_HIT_ECHO(A,C) #define ENDSTOP_HIT_TEST_X() _ENDSTOP_HIT_TEST(X,'X') @@ -792,7 +792,7 @@ void Endstops::update() { }while(0) // Core Sensorless Homing needs to test an Extra Pin - #define CORE_DIAG(QQ,A,MM) (CORE_IS_##QQ && A##_SENSORLESS && !A##_SPI_SENSORLESS && HAS_##A##_##MM) + #define CORE_DIAG(QQ,A,MM) (CORE_IS_##QQ && A##_SENSORLESS && !A##_SPI_SENSORLESS && USE_##A##_##MM) #define PROCESS_CORE_ENDSTOP(A1,M1,A2,M2) do { \ if (TEST_ENDSTOP(_ENDSTOP(A1,M1))) { \ _ENDSTOP_HIT(A2,M2); \ diff --git a/Marlin/src/module/endstops.h b/Marlin/src/module/endstops.h index 7b662c27ac83..d348e58ab706 100644 --- a/Marlin/src/module/endstops.h +++ b/Marlin/src/module/endstops.h @@ -28,6 +28,9 @@ #include "../inc/MarlinConfig.h" #include +#define _ES_ENUM(A,M) A##_##M +#define ES_ENUM(A,M) _ES_ENUM(A,M) + #define _ES_ITEM(N) N, #define ES_ITEM(K,N) TERN_(K,DEFER4(_ES_ITEM)(N)) diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index ec85db35d6a2..a31159254081 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -287,7 +287,7 @@ xyze_int8_t Stepper::count_direction{0}; #define MINDIR(A) (count_direction[_AXIS(A)] < 0) #define MAXDIR(A) (count_direction[_AXIS(A)] > 0) -#define STEPTEST(A,M,I) TERN0(HAS_ ##A## ##I## _ ##M, !(TEST(endstops.state(), A## ##I## _ ##M) && M## DIR(A)) && !locked_ ##A## ##I## _motor) +#define STEPTEST(A,M,I) TERN0(USE_##A##I##_##M, !(TEST(endstops.state(), A##I##_##M) && M## DIR(A)) && !locked_ ##A##I##_motor) #define DUAL_ENDSTOP_APPLY_STEP(A,V) \ if (separate_multi_axis) { \ From d36f43d80bac5ca8086bc3ca70eb0c5330f317f2 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sun, 7 May 2023 00:38:13 +0000 Subject: [PATCH 136/427] [cron] Bump distribution date (2023-05-07) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index acd89bc7e8b5..fce6f273d391 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-06" +//#define STRING_DISTRIBUTION_DATE "2023-05-07" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index c52c32637451..e19c882dd6fa 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-06" + #define STRING_DISTRIBUTION_DATE "2023-05-07" #endif /** From d3ee4eecdf11810ab3da2ff448bfd298e03a740e Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 7 May 2023 19:31:20 -0500 Subject: [PATCH 137/427] =?UTF-8?q?=F0=9F=A9=B9=20Use=20AxisBits=20methods?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/types.h | 3 +++ Marlin/src/module/stepper.cpp | 40 +++++++++++++++++------------------ 2 files changed, 23 insertions(+), 20 deletions(-) diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index e86880674b6b..6ef23f066c29 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -846,6 +846,9 @@ class AxisBits { // Constructor, setter, and operator= for bit mask AxisBits(const el p) { set(p); } + + void reset() { bits = 0; } + void set(const el p) { bits = el(p); } FI AxisBits& operator=(const el p) { set(p); return *this; } diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index a31159254081..750bf11c463f 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -2583,7 +2583,7 @@ hal_timer_t Stepper::block_phase_isr() { #if IS_CORE // Define conditions for checking endstops #define S_(N) current_block->steps[CORE_AXIS_##N] - #define D_(N) TEST(current_block->direction_bits, CORE_AXIS_##N) + #define D_(N) current_block->direction_bits[CORE_AXIS_##N] #endif #if CORE_IS_XY || CORE_IS_XZ @@ -2646,20 +2646,20 @@ hal_timer_t Stepper::block_phase_isr() { AxisBits axis_bits; NUM_AXIS_CODE( - if (X_MOVE_TEST) SBI(axis_bits, A_AXIS), - if (Y_MOVE_TEST) SBI(axis_bits, B_AXIS), - if (Z_MOVE_TEST) SBI(axis_bits, C_AXIS), - if (current_block->steps.i) SBI(axis_bits, I_AXIS), - if (current_block->steps.j) SBI(axis_bits, J_AXIS), - if (current_block->steps.k) SBI(axis_bits, K_AXIS), - if (current_block->steps.u) SBI(axis_bits, U_AXIS), - if (current_block->steps.v) SBI(axis_bits, V_AXIS), - if (current_block->steps.w) SBI(axis_bits, W_AXIS) + if (X_MOVE_TEST) axis_bits.a = true, + if (Y_MOVE_TEST) axis_bits.b = true, + if (Z_MOVE_TEST) axis_bits.c = true, + if (current_block->steps.i) axis_bits.i = true, + if (current_block->steps.j) axis_bits.j = true, + if (current_block->steps.k) axis_bits.k = true, + if (current_block->steps.u) axis_bits.u = true, + if (current_block->steps.v) axis_bits.v = true, + if (current_block->steps.w) axis_bits.w = true ); - //if (current_block->steps.e) SBI(axis_bits, E_AXIS); - //if (current_block->steps.a) SBI(axis_bits, X_HEAD); - //if (current_block->steps.b) SBI(axis_bits, Y_HEAD); - //if (current_block->steps.c) SBI(axis_bits, Z_HEAD); + //if (current_block->steps.e) axis_bits.e = true; + //if (current_block->steps.a) axis_bits.x = true; + //if (current_block->steps.b) axis_bits.y = true; + //if (current_block->steps.c) axis_bits.z = true; axis_did_move = axis_bits; // No acceleration / deceleration time elapsed so far @@ -3487,7 +3487,7 @@ void Stepper::report_positions() { // If the current block is not done processing, return right away if (!fxdTiCtrl.getBlockProcDn()) return; - axis_did_move = 0; + axis_did_move.reset(); current_block = nullptr; discard_current_block(); } @@ -3533,25 +3533,25 @@ void Stepper::report_positions() { // or the set conditions should be changed from the block to // the motion trajectory or motor commands. - uint8_t axis_bits = 0U; + AxisBits axis_bits; static uint32_t a_debounce = 0U; if (!!current_block->steps.a) a_debounce = (AXIS_DID_MOVE_DEB) * 400; // divide by 0.0025f - if (a_debounce) { SBI(axis_bits, A_AXIS); a_debounce--; } + if (a_debounce) { axis_bits.a = true; a_debounce--; } #if HAS_Y_AXIS static uint32_t b_debounce = 0U; if (!!current_block->steps.b) b_debounce = (AXIS_DID_MOVE_DEB) * 400; - if (b_debounce) { SBI(axis_bits, B_AXIS); b_debounce--; } + if (b_debounce) { axis_bits.b = true; b_debounce--; } #endif #if HAS_Z_AXIS static uint32_t c_debounce = 0U; if (!!current_block->steps.c) c_debounce = (AXIS_DID_MOVE_DEB) * 400; - if (c_debounce) { SBI(axis_bits, C_AXIS); c_debounce--; } + if (c_debounce) { axis_bits.c = true; c_debounce--; } #endif #if HAS_EXTRUDERS static uint32_t e_debounce = 0U; if (!!current_block->steps.e) e_debounce = (AXIS_DID_MOVE_DEB) * 400; - if (e_debounce) { SBI(axis_bits, E_AXIS); e_debounce--; } + if (e_debounce) { axis_bits.e = true; e_debounce--; } #endif axis_did_move = axis_bits; From f2071770984e393ed524d924ff501fc2cd42849d Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 7 May 2023 21:25:53 -0500 Subject: [PATCH 138/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20Babystepping=20for?= =?UTF-8?q?=20CoreXZ?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes #19988 --- Marlin/src/module/stepper.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 750bf11c463f..7517bcd0a6d8 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -3670,7 +3670,7 @@ void Stepper::report_positions() { case Y_AXIS: #if CORE_IS_XY - BABYSTEP_CORE(X, Y, !direction, 1, (CORESIGN(1)>0)); + BABYSTEP_CORE(X, Y, direction, 0, (CORESIGN(1)>0)); #elif CORE_IS_YZ BABYSTEP_CORE(Y, Z, direction, 0, (CORESIGN(1)<0)); #else @@ -3683,7 +3683,7 @@ void Stepper::report_positions() { case Z_AXIS: { #if CORE_IS_XZ - BABYSTEP_CORE(X, Z, direction, BABYSTEP_INVERT_Z, (CORESIGN(1)<0)); + BABYSTEP_CORE(X, Z, direction, BABYSTEP_INVERT_Z, (CORESIGN(1)>0)); #elif CORE_IS_YZ BABYSTEP_CORE(Y, Z, direction, BABYSTEP_INVERT_Z, (CORESIGN(1)<0)); #elif DISABLED(DELTA) From 1f5b886d121f762603ccaec848014859690a98b8 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 7 May 2023 22:06:46 -0500 Subject: [PATCH 139/427] =?UTF-8?q?=F0=9F=A9=B9=20Creality=20F401=20Follow?= =?UTF-8?q?up?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25773 --- Marlin/src/pins/stm32f4/pins_CREALITY_F401.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/pins/stm32f4/pins_CREALITY_F401.h b/Marlin/src/pins/stm32f4/pins_CREALITY_F401.h index 7f9eba990137..f4b5b7d96a72 100644 --- a/Marlin/src/pins/stm32f4/pins_CREALITY_F401.h +++ b/Marlin/src/pins/stm32f4/pins_CREALITY_F401.h @@ -132,7 +132,7 @@ #if ENABLED(RET6_12864_LCD) #define LCD_PINS_RS PB12 - #define LCD_PINS_ENABLE PB15 + #define LCD_PINS_EN PB15 #define LCD_PINS_D4 PB13 #define BTN_EN2 PB14 #endif From 2ee7ed084bd4d68681614b08e60bcd1fe6838003 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 8 May 2023 06:06:01 +0000 Subject: [PATCH 140/427] [cron] Bump distribution date (2023-05-08) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index fce6f273d391..5ec65a5d7fa5 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-07" +//#define STRING_DISTRIBUTION_DATE "2023-05-08" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index e19c882dd6fa..5a8a55507c87 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-07" + #define STRING_DISTRIBUTION_DATE "2023-05-08" #endif /** From f80e706fad85d6c371bdc7cafafeeed787a790d0 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Mon, 8 May 2023 23:54:46 +1200 Subject: [PATCH 141/427] =?UTF-8?q?=F0=9F=94=A8=20MKS=20Robin2=20PIO=20Env?= =?UTF-8?q?=20(#25792)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/boards.h | 2 +- Marlin/src/pins/pins.h | 2 +- Marlin/src/pins/stm32f4/pins_MKS_ROBIN2.h | 36 ++ .../PlatformIO/boards/marlin_MKS_ROBIN2.json | 65 +++ .../MARLIN_MKS_ROBIN2/PeripheralPins.c | 437 ++++++++++++++++ .../variants/MARLIN_MKS_ROBIN2/PinNamesVar.h | 50 ++ .../MARLIN_MKS_ROBIN2/hal_conf_custom.h | 481 ++++++++++++++++++ .../variants/MARLIN_MKS_ROBIN2/ldscript.ld | 206 ++++++++ .../variants/MARLIN_MKS_ROBIN2/variant.cpp | 228 +++++++++ .../variants/MARLIN_MKS_ROBIN2/variant.h | 242 +++++++++ ini/stm32f4.ini | 15 +- 11 files changed, 1761 insertions(+), 3 deletions(-) create mode 100644 buildroot/share/PlatformIO/boards/marlin_MKS_ROBIN2.json create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/PeripheralPins.c create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/PinNamesVar.h create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/hal_conf_custom.h create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/ldscript.ld create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/variant.cpp create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/variant.h diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index 5a05d2c7147f..ccf877cd2498 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -429,7 +429,7 @@ #define BOARD_FYSETC_S6_V2_0 5223 // FYSETC S6 v2.0 (STM32F446VE) #define BOARD_FYSETC_SPIDER 5224 // FYSETC Spider (STM32F446VE) #define BOARD_FLYF407ZG 5225 // FLYmaker FLYF407ZG (STM32F407ZG) -#define BOARD_MKS_ROBIN2 5226 // MKS_ROBIN2 (STM32F407ZE) +#define BOARD_MKS_ROBIN2 5226 // MKS Robin2 V1.0 (STM32F407ZE) #define BOARD_MKS_ROBIN_PRO_V2 5227 // MKS Robin Pro V2 (STM32F407VE) #define BOARD_MKS_ROBIN_NANO_V3 5228 // MKS Robin Nano V3 (STM32F407VG) #define BOARD_MKS_ROBIN_NANO_V3_1 5229 // MKS Robin Nano V3.1 (STM32F407VE) diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index fe7bc9ed17b6..a17778596328 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -751,7 +751,7 @@ #elif MB(FLYF407ZG) #include "stm32f4/pins_FLYF407ZG.h" // STM32F4 env:FLYF407ZG #elif MB(MKS_ROBIN2) - #include "stm32f4/pins_MKS_ROBIN2.h" // STM32F4 env:MKS_ROBIN2 + #include "stm32f4/pins_MKS_ROBIN2.h" // STM32F4 env:mks_robin2 #elif MB(MKS_ROBIN_PRO_V2) #include "stm32f4/pins_MKS_ROBIN_PRO_V2.h" // STM32F4 env:mks_robin_pro2 #elif MB(MKS_ROBIN_NANO_V3) diff --git a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN2.h b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN2.h index 15314c9ca65d..96f3d958610c 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN2.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN2.h @@ -99,3 +99,39 @@ #define SD_DETECT_PIN PF9 #define BEEPER_PIN PG2 + +// +// TFT with FSMC interface +// +#if HAS_FSMC_TFT + /** + * Note: MKS Robin TFT screens use various TFT controllers. + * If the screen stays white, disable 'LCD_RESET_PIN' + * to let the bootloader init the screen. + */ + #define LCD_RESET_PIN PD13 + #define LCD_BACKLIGHT_PIN PD12 + + #define TFT_RESET_PIN LCD_RESET_PIN + #define TFT_BACKLIGHT_PIN LCD_BACKLIGHT_PIN + + #define FSMC_CS_PIN PG12 // NE4 + #define FSMC_RS_PIN PF12 // A0 + #define LCD_USE_DMA_FSMC // Use DMA transfers to send data to the TFT + #define TFT_CS_PIN FSMC_CS_PIN + #define TFT_RS_PIN FSMC_RS_PIN + + #define TFT_BUFFER_SIZE 14400 + + #define BEEPER_PIN PG2 + + #if NEED_TOUCH_PINS + #define TOUCH_BUTTONS_HW_SPI + #define TOUCH_BUTTONS_HW_SPI_DEVICE 1 + #define TOUCH_CS_PIN PD11 // SPI1_NSS + #define TOUCH_SCK_PIN PB3 // SPI1_SCK + #define TOUCH_MISO_PIN PB4 // SPI1_MISO + #define TOUCH_MOSI_PIN PB5 // SPI1_MOSI + #endif + +#endif diff --git a/buildroot/share/PlatformIO/boards/marlin_MKS_ROBIN2.json b/buildroot/share/PlatformIO/boards/marlin_MKS_ROBIN2.json new file mode 100644 index 000000000000..325001df1b44 --- /dev/null +++ b/buildroot/share/PlatformIO/boards/marlin_MKS_ROBIN2.json @@ -0,0 +1,65 @@ +{ + "build": { + "cpu": "cortex-m4", + "extra_flags": "-DSTM32F407xx", + "f_cpu": "168000000L", + "hwids": [ + [ + "0x1EAF", + "0x0003" + ], + [ + "0x0483", + "0x3748" + ] + ], + "ldscript": "ldscript.ld", + "mcu": "stm32f407zet6", + "variant": "MARLIN_MKS_ROBIN2" + }, + "debug": { + "jlink_device": "STM32F407ZE", + "openocd_target": "stm32f4x", + "svd_path": "STM32F40x.svd", + "tools": { + "stlink": { + "server": { + "arguments": [ + "-f", + "scripts/interface/stlink.cfg", + "-c", + "transport select hla_swd", + "-f", + "scripts/target/stm32f4x.cfg", + "-c", + "reset_config none" + ], + "executable": "bin/openocd", + "package": "tool-openocd" + } + } + } + }, + "frameworks": [ + "arduino", + "stm32cube" + ], + "name": "STM32F407ZE (192k RAM. 512k Flash)", + "upload": { + "disable_flushing": false, + "maximum_ram_size": 131072, + "maximum_size": 514288, + "protocol": "stlink", + "protocols": [ + "stlink", + "dfu", + "jlink", + "cmsis-dap" + ], + "require_upload_port": true, + "use_1200bps_touch": false, + "wait_for_upload_port": false + }, + "url": "http://www.st.com/en/microcontrollers/stm32f407ze.html", + "vendor": "Generic" +} diff --git a/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/PeripheralPins.c new file mode 100644 index 000000000000..63763e9db7bd --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/PeripheralPins.c @@ -0,0 +1,437 @@ +/* + ******************************************************************************* + * Copyright (c) 2019, STMicroelectronics + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. 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. + * 3. Neither the name of STMicroelectronics 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 HOLDER 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. + ******************************************************************************* + * Automatically generated from STM32F407Z(E-G)Tx.xml + */ +#include "Arduino.h" +#include "PeripheralPins.h" + +/* ===== + * Note: Commented lines are alternative possibilities which are not used by default. + * If you change them, you should know what you're doing first. + * ===== + */ + +//*** ADC *** + +#ifdef HAL_ADC_MODULE_ENABLED +const PinMap PinMap_ADC[] = { + {PA_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 0, 0)}, // ADC1_IN0 + //{PA_0, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 0, 0)}, // ADC2_IN0 + //{PA_0, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 0, 0)}, // ADC3_IN0 + {PA_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // ADC1_IN1 + //{PA_1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // ADC2_IN1 + //{PA_1, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // ADC3_IN1 + {PA_2, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // ADC1_IN2 + //{PA_2, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // ADC2_IN2 + //{PA_2, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // ADC3_IN2 + {PA_3, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 3, 0)}, // ADC1_IN3 + //{PA_3, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 3, 0)}, // ADC2_IN3 + //{PA_3, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 3, 0)}, // ADC3_IN3 + {PA_4, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 4, 0)}, // ADC1_IN4 + //{PA_4, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 4, 0)}, // ADC2_IN4 + {PA_5, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)}, // ADC1_IN5 + //{PA_5, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)}, // ADC2_IN5 + {PA_6, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 6, 0)}, // ADC1_IN6 + //{PA_6, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 6, 0)}, // ADC2_IN6 + {PA_7, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)}, // ADC1_IN7 + //{PA_7, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)}, // ADC2_IN7 + {PB_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 8, 0)}, // ADC1_IN8 + //{PB_0, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 8, 0)}, // ADC2_IN8 + {PB_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 9, 0)}, // ADC1_IN9 + //{PB_1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 9, 0)}, // ADC2_IN9 + {PC_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 10, 0)}, // ADC1_IN10 + //{PC_0, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 10, 0)}, // ADC2_IN10 + //{PC_0, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 10, 0)}, // ADC3_IN10 + {PC_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 11, 0)}, // ADC1_IN11 + //{PC_1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 11, 0)}, // ADC2_IN11 + //{PC_1, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 11, 0)}, // ADC3_IN11 + {PC_2, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 12, 0)}, // ADC1_IN12 + //{PC_2, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 12, 0)}, // ADC2_IN12 + //{PC_2, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 12, 0)}, // ADC3_IN12 + {PC_3, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 13, 0)}, // ADC1_IN13 + //{PC_3, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 13, 0)}, // ADC2_IN13 + //{PC_3, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 13, 0)}, // ADC3_IN13 + {PC_4, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 14, 0)}, // ADC1_IN14 + //{PC_4, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 14, 0)}, // ADC2_IN14 + {PC_5, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 15, 0)}, // ADC1_IN15 + //{PC_5, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 15, 0)}, // ADC2_IN15 + + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio, 24 ADC + {PF_3, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 9, 0)}, // ADC3_IN9 + {PF_4, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 14, 0)}, // ADC3_IN14 + {PF_5, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 15, 0)}, // ADC3_IN15 + {PF_6, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 4, 0)}, // ADC3_IN4 + {PF_7, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)}, // ADC3_IN5 + {PF_8, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 6, 0)}, // ADC3_IN6 + {PF_9, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)}, // ADC3_IN7 + {PF_10, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 8, 0)}, // ADC3_IN8 + #endif + {NC, NP, 0} +}; +#endif + +//*** DAC *** + +#ifdef HAL_DAC_MODULE_ENABLED +const PinMap PinMap_DAC[] = { + {PA_4, DAC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // DAC_OUT1 + {PA_5, DAC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // DAC_OUT2 + {NC, NP, 0} +}; +#endif + +//*** I2C *** + +#ifdef HAL_I2C_MODULE_ENABLED +const PinMap PinMap_I2C_SDA[] = { + {PB_7, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_9, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_11, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + {PC_9, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)}, + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + {PF_0, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + #endif + {NC, NP, 0} +}; +#endif + +#ifdef HAL_I2C_MODULE_ENABLED +const PinMap PinMap_I2C_SCL[] = { + {PA_8, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)}, + {PB_6, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_8, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_10, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + {PF_1, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + #endif + {NC, NP, 0} +}; +#endif + +//*** PWM *** + +#ifdef HAL_TIM_MODULE_ENABLED +const PinMap PinMap_PWM[] = { + {PA_0, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 + //{PA_0, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 1, 0)}, // TIM5_CH1 + {PA_1, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2 + //{PA_1, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 2, 0)}, // TIM5_CH2 + {PA_2, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // TIM2_CH3 + //{PA_2, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 3, 0)}, // TIM5_CH3 + //{PA_2, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 1, 0)}, // TIM9_CH1 + {PA_3, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 4, 0)}, // TIM2_CH4 + //{PA_3, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 4, 0)}, // TIM5_CH4 + //{PA_3, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 2, 0)}, // TIM9_CH2 + {PA_5, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 + //{PA_5, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 1)}, // TIM8_CH1N + {PA_6, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 + //{PA_6, TIM13, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM13, 1, 0)}, // TIM13_CH1 + //{PA_7, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N + {PA_7, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 + //{PA_7, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 1)}, // TIM8_CH1N + //{PA_7, TIM14, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM14, 1, 0)}, // TIM14_CH1 + {PA_8, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 0)}, // TIM1_CH1 + {PA_9, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 0)}, // TIM1_CH2 + {PA_10, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 0)}, // TIM1_CH3 + {PA_11, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 4, 0)}, // TIM1_CH4 + //{PA_15, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 + //{PB_0, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N + {PB_0, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 3, 0)}, // TIM3_CH3 + //{PB_0, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 1)}, // TIM8_CH2N + //{PB_1, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N + {PB_1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 4, 0)}, // TIM3_CH4 + //{PB_1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 1)}, // TIM8_CH3N + //{PB_3, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2 + {PB_4, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 + {PB_5, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 + //{PB_6, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 1, 0)}, // TIM4_CH1 + //{PB_7, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 2, 0)}, // TIM4_CH2 + //{PB_8, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 3, 0)}, // TIM4_CH3 + {PB_8, TIM10, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM10, 1, 0)}, // TIM10_CH1 + //{PB_9, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 4, 0)}, // TIM4_CH4 + {PB_9, TIM11, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM11, 1, 0)}, // TIM11_CH1 + {PB_10, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // TIM2_CH3 + {PB_11, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 4, 0)}, // TIM2_CH4 + {PB_13, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N + {PB_14, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N + {PB_14, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 1)}, // TIM8_CH2N + {PB_14, TIM12, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM12, 1, 0)}, // TIM12_CH1 + {PB_15, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N + {PB_15, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 1)}, // TIM8_CH3N + {PB_15, TIM12, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM12, 2, 0)}, // TIM12_CH2 + {PC_6, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 + {PC_6, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 0)}, // TIM8_CH1 + {PC_7, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 + {PC_7, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 0)}, // TIM8_CH2 + {PC_8, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 3, 0)}, // TIM3_CH3 + {PC_8, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 0)}, // TIM8_CH3 + //{PC_9, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 4, 0)}, // TIM3_CH4 + //{PC_9, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 4, 0)}, // TIM8_CH4 + {PD_12, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 1, 0)}, // TIM4_CH1 + {PD_13, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 2, 0)}, // TIM4_CH2 + {PD_14, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 3, 0)}, // TIM4_CH3 + {PD_15, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 4, 0)}, // TIM4_CH4 + {PE_5, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 1, 0)}, // TIM9_CH1 + {PE_6, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 2, 0)}, // TIM9_CH2 + {PE_8, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N + {PE_9, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 0)}, // TIM1_CH1 + {PE_10, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N + {PE_11, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 0)}, // TIM1_CH2 + {PE_12, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N + {PE_13, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 0)}, // TIM1_CH3 + {PE_14, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 4, 0)}, // TIM1_CH4 + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + {PF_6, TIM10, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM10, 1, 0)}, // TIM10_CH1 + {PF_7, TIM11, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM11, 1, 0)}, // TIM11_CH1 + {PF_8, TIM13, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM13, 1, 0)}, // TIM13_CH1 + {PF_9, TIM14, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM14, 1, 0)}, // TIM14_CH1 + #endif + {NC, NP, 0} +}; +#endif + +//*** SERIAL *** + +#ifdef HAL_UART_MODULE_ENABLED +const PinMap PinMap_UART_TX[] = { + {PA_0, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PA_2, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PA_9, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PB_6, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PB_10, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PC_6, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + {PC_10, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PC_10, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PC_12, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)}, + {PD_5, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PD_8, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + {PG_14, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + #endif + {NC, NP, 0} +}; +#endif + +#ifdef HAL_UART_MODULE_ENABLED +const PinMap PinMap_UART_RX[] = { + {PA_1, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PA_3, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PA_10, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PB_7, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PB_11, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PC_7, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + {PC_11, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PC_11, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PD_2, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)}, + {PD_6, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PD_9, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + {PG_9, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + #endif + {NC, NP, 0} +}; +#endif + +#ifdef HAL_UART_MODULE_ENABLED +const PinMap PinMap_UART_RTS[] = { + {PA_1, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PA_12, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PB_14, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PD_4, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PD_12, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + {PG_8, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + {PG_12, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + #endif + {NC, NP, 0} +}; +#endif + +#ifdef HAL_UART_MODULE_ENABLED +const PinMap PinMap_UART_CTS[] = { + {PA_0, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PA_11, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PB_13, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PD_3, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PD_11, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + {PG_13, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + {PG_15, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + #endif + {NC, NP, 0} +}; +#endif + +//*** SPI *** + +#ifdef HAL_SPI_MODULE_ENABLED +const PinMap PinMap_SPI_MOSI[] = { + {PA_7, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PB_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PB_5, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PB_15, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_3, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_12, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_SPI_MODULE_ENABLED +const PinMap PinMap_SPI_MISO[] = { + {PA_6, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PB_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PB_4, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PB_14, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_2, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_11, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_SPI_MODULE_ENABLED +const PinMap PinMap_SPI_SCLK[] = { + {PA_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PB_3, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PB_3, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PB_10, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PB_13, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_10, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_SPI_MODULE_ENABLED +const PinMap PinMap_SPI_SSEL[] = { + {PA_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PA_4, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PA_15, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PA_15, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PB_9, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PB_12, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {NC, NP, 0} +}; +#endif + +//*** CAN *** + +#ifdef HAL_CAN_MODULE_ENABLED +const PinMap PinMap_CAN_RD[] = { + {PA_11, CAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_CAN1)}, + {PB_5, CAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_CAN2)}, + {PB_8, CAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_CAN1)}, + {PB_12, CAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_CAN2)}, + {PD_0, CAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_CAN1)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_CAN_MODULE_ENABLED +const PinMap PinMap_CAN_TD[] = { + {PA_12, CAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_CAN1)}, + {PB_6, CAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_CAN2)}, + {PB_9, CAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_CAN1)}, + {PB_13, CAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_CAN2)}, + {PD_1, CAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_CAN1)}, + {NC, NP, 0} +}; +#endif + +//*** ETHERNET *** + +#ifdef HAL_ETH_MODULE_ENABLED +const PinMap PinMap_Ethernet[] = { + {PA_0, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_CRS + {PA_1, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_REF_CLK|ETH_RX_CLK + {PA_2, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_MDIO + {PA_3, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_COL + {PA_7, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_CRS_DV|ETH_RX_DV + {PB_0, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RXD2 + {PB_1, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RXD3 + {PB_5, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_PPS_OUT + {PB_8, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD3 + {PB_10, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RX_ER + {PB_11, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TX_EN + {PB_12, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD0 + {PB_13, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD1 + {PC_1, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_MDC + {PC_2, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD2 + {PC_3, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TX_CLK + {PC_4, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RXD0 + {PC_5, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RXD1 + {PE_2, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD3 + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + {PG_8, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_PPS_OUT + {PG_11, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TX_EN + {PG_13, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD0 + {PG_14, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD1 + #endif + {NC, NP, 0} +}; +#endif + +//*** No QUADSPI *** + +//*** USB *** + +#ifdef HAL_PCD_MODULE_ENABLED +const PinMap PinMap_USB_OTG_FS[] = { + //{PA_8, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_SOF + //{PA_9, USB_OTG_FS, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, GPIO_AF_NONE)}, // USB_OTG_FS_VBUS + //{PA_10, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_ID + {PA_11, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_DM + {PA_12, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_DP + {NC, NP, 0} +}; +#endif + +#ifdef HAL_PCD_MODULE_ENABLED +const PinMap PinMap_USB_OTG_HS[] = { + #ifdef USE_USB_HS_IN_FS + {PA_4, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_OTG_HS_FS)}, // USB_OTG_HS_SOF + {PB_12, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_PULLUP, GPIO_AF12_OTG_HS_FS)}, // USB_OTG_HS_ID + {PB_13, USB_OTG_HS, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, GPIO_AF_NONE)}, // USB_OTG_HS_VBUS + {PB_14, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_OTG_HS_FS)}, // USB_OTG_HS_DM + {PB_15, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_OTG_HS_FS)}, // USB_OTG_HS_DP + #else + {PA_3, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D0 + {PA_5, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_CK + {PB_0, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D1 + {PB_1, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D2 + {PB_5, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D7 + {PB_10, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D3 + {PB_11, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D4 + {PB_12, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D5 + {PB_13, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D6 + {PC_0, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_STP + {PC_2, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_DIR + {PC_3, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_NXT + #endif /* USE_USB_HS_IN_FS */ + {NC, NP, 0} +}; +#endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/PinNamesVar.h b/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/PinNamesVar.h new file mode 100644 index 000000000000..24248859373b --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/PinNamesVar.h @@ -0,0 +1,50 @@ +/* SYS_WKUP */ +#ifdef PWR_WAKEUP_PIN1 + SYS_WKUP1 = PA_0, +#endif +#ifdef PWR_WAKEUP_PIN2 + SYS_WKUP2 = NC, +#endif +#ifdef PWR_WAKEUP_PIN3 + SYS_WKUP3 = NC, +#endif +#ifdef PWR_WAKEUP_PIN4 + SYS_WKUP4 = NC, +#endif +#ifdef PWR_WAKEUP_PIN5 + SYS_WKUP5 = NC, +#endif +#ifdef PWR_WAKEUP_PIN6 + SYS_WKUP6 = NC, +#endif +#ifdef PWR_WAKEUP_PIN7 + SYS_WKUP7 = NC, +#endif +#ifdef PWR_WAKEUP_PIN8 + SYS_WKUP8 = NC, +#endif +/* USB */ +#ifdef USBCON + USB_OTG_FS_SOF = PA_8, + USB_OTG_FS_VBUS = PA_9, + USB_OTG_FS_ID = PA_10, + USB_OTG_FS_DM = PA_11, + USB_OTG_FS_DP = PA_12, + USB_OTG_HS_ULPI_D0 = PA_3, + USB_OTG_HS_SOF = PA_4, + USB_OTG_HS_ULPI_CK = PA_5, + USB_OTG_HS_ULPI_D1 = PB_0, + USB_OTG_HS_ULPI_D2 = PB_1, + USB_OTG_HS_ULPI_D7 = PB_5, + USB_OTG_HS_ULPI_D3 = PB_10, + USB_OTG_HS_ULPI_D4 = PB_11, + USB_OTG_HS_ID = PB_12, + USB_OTG_HS_ULPI_D5 = PB_12, + USB_OTG_HS_ULPI_D6 = PB_13, + USB_OTG_HS_VBUS = PB_13, + USB_OTG_HS_DM = PB_14, + USB_OTG_HS_DP = PB_15, + USB_OTG_HS_ULPI_STP = PC_0, + USB_OTG_HS_ULPI_DIR = PC_2, + USB_OTG_HS_ULPI_NXT = PC_3, +#endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/hal_conf_custom.h b/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/hal_conf_custom.h new file mode 100644 index 000000000000..3640bd1616a5 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/hal_conf_custom.h @@ -0,0 +1,481 @@ +/** + ****************************************************************************** + * @file stm32f4xx_hal_conf.h + * @brief HAL configuration file. + ****************************************************************************** + * @attention + * + *

© Copyright (c) 2017 STMicroelectronics. + * All rights reserved.

+ * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __STM32F4xx_HAL_CONF_CUSTOM +#define __STM32F4xx_HAL_CONF_CUSTOM + +#ifdef __cplusplus +extern "C" { +#endif + +/* Exported types ------------------------------------------------------------*/ +/* Exported constants --------------------------------------------------------*/ + +/* ########################## Module Selection ############################## */ +/** + * @brief This is the list of modules to be used in the HAL driver + */ +#define HAL_MODULE_ENABLED +#define HAL_ADC_MODULE_ENABLED +/* #define HAL_CAN_MODULE_ENABLED */ +/* #define HAL_CAN_LEGACY_MODULE_ENABLED */ +#define HAL_CRC_MODULE_ENABLED +/* #define HAL_CEC_MODULE_ENABLED */ +/* #define HAL_CRYP_MODULE_ENABLED */ +#define HAL_DAC_MODULE_ENABLED +/* #define HAL_DCMI_MODULE_ENABLED */ +#define HAL_DMA_MODULE_ENABLED +/* #define HAL_DMA2D_MODULE_ENABLED */ +/* #define HAL_ETH_MODULE_ENABLED */ +#define HAL_FLASH_MODULE_ENABLED +/* #define HAL_NAND_MODULE_ENABLED */ +/* #define HAL_NOR_MODULE_ENABLED */ +/* #define HAL_PCCARD_MODULE_ENABLED */ +#define HAL_SRAM_MODULE_ENABLED +/* #define HAL_SDRAM_MODULE_ENABLED */ +/* #define HAL_HASH_MODULE_ENABLED */ +#define HAL_GPIO_MODULE_ENABLED +/* #define HAL_EXTI_MODULE_ENABLED */ +#define HAL_I2C_MODULE_ENABLED +/* #define HAL_SMBUS_MODULE_ENABLED */ +/* #define HAL_I2S_MODULE_ENABLED */ +/* #define HAL_IWDG_MODULE_ENABLED */ +/* #define HAL_LTDC_MODULE_ENABLED */ +/* #define HAL_DSI_MODULE_ENABLED */ +#define HAL_PWR_MODULE_ENABLED +/* #define HAL_QSPI_MODULE_ENABLED */ +#define HAL_RCC_MODULE_ENABLED +/* #define HAL_RNG_MODULE_ENABLED */ +#define HAL_RTC_MODULE_ENABLED +/* #define HAL_SAI_MODULE_ENABLED */ +#define HAL_SD_MODULE_ENABLED +#define HAL_SPI_MODULE_ENABLED +#define HAL_TIM_MODULE_ENABLED +/* #define HAL_UART_MODULE_ENABLED */ +/* #define HAL_USART_MODULE_ENABLED */ +/* #define HAL_IRDA_MODULE_ENABLED */ +/* #define HAL_SMARTCARD_MODULE_ENABLED */ +/* #define HAL_WWDG_MODULE_ENABLED */ +#define HAL_CORTEX_MODULE_ENABLED +//#define HAL_PCD_MODULE_ENABLED +/* #define HAL_HCD_MODULE_ENABLED */ +/* #define HAL_FMPI2C_MODULE_ENABLED */ +/* #define HAL_SPDIFRX_MODULE_ENABLED */ +/* #define HAL_DFSDM_MODULE_ENABLED */ +/* #define HAL_LPTIM_MODULE_ENABLED */ +/* #define HAL_MMC_MODULE_ENABLED */ + +/* ########################## HSE/HSI Values adaptation ##################### */ +/** + * @brief Adjust the value of External High Speed oscillator (HSE) used in your application. + * This value is used by the RCC HAL module to compute the system frequency + * (when HSE is used as system clock source, directly or through the PLL). + */ +#if !defined (HSE_VALUE) +#define HSE_VALUE ((uint32_t)8000000U) /*!< Value of the External oscillator in Hz */ +#endif /* HSE_VALUE */ + +#if !defined (HSE_STARTUP_TIMEOUT) +#define HSE_STARTUP_TIMEOUT ((uint32_t)100U) /*!< Time out for HSE start up, in ms */ +#endif /* HSE_STARTUP_TIMEOUT */ + +/** + * @brief Internal High Speed oscillator (HSI) value. + * This value is used by the RCC HAL module to compute the system frequency + * (when HSI is used as system clock source, directly or through the PLL). + */ +#if !defined (HSI_VALUE) +#define HSI_VALUE ((uint32_t)16000000U) /*!< Value of the Internal oscillator in Hz*/ +#endif /* HSI_VALUE */ + +/** + * @brief Internal Low Speed oscillator (LSI) value. + */ +#if !defined (LSI_VALUE) +#define LSI_VALUE ((uint32_t)32000U) /*!< LSI Typical Value in Hz*/ +#endif /* LSI_VALUE */ /*!< Value of the Internal Low Speed oscillator in Hz +The real value may vary depending on the variations +in voltage and temperature.*/ +/** + * @brief External Low Speed oscillator (LSE) value. + */ +#if !defined (LSE_VALUE) +#define LSE_VALUE ((uint32_t)32768U) /*!< Value of the External Low Speed oscillator in Hz */ +#endif /* LSE_VALUE */ + +#if !defined (LSE_STARTUP_TIMEOUT) +#define LSE_STARTUP_TIMEOUT ((uint32_t)5000U) /*!< Time out for LSE start up, in ms */ +#endif /* LSE_STARTUP_TIMEOUT */ + +/** + * @brief External clock source for I2S peripheral + * This value is used by the I2S HAL module to compute the I2S clock source + * frequency, this source is inserted directly through I2S_CKIN pad. + */ +#if !defined (EXTERNAL_CLOCK_VALUE) +#define EXTERNAL_CLOCK_VALUE ((uint32_t)12288000U) /*!< Value of the External audio frequency in Hz*/ +#endif /* EXTERNAL_CLOCK_VALUE */ + +/* Tip: To avoid modifying this file each time you need to use different HSE, + === you can define the HSE value in your toolchain compiler preprocessor. */ + +/* ########################### System Configuration ######################### */ +/** + * @brief This is the HAL system configuration section + */ +#define VDD_VALUE ((uint32_t)3300U) /*!< Value of VDD in mv */ +#define TICK_INT_PRIORITY ((uint32_t)0U) /*!< tick interrupt priority */ +#define USE_RTOS 0U +#define PREFETCH_ENABLE 1U +#define INSTRUCTION_CACHE_ENABLE 1U +#define DATA_CACHE_ENABLE 1U + +#define USE_HAL_ADC_REGISTER_CALLBACKS 0U /* ADC register callback disabled */ +#define USE_HAL_CAN_REGISTER_CALLBACKS 0U /* CAN register callback disabled */ +#define USE_HAL_CEC_REGISTER_CALLBACKS 0U /* CEC register callback disabled */ +#define USE_HAL_CRYP_REGISTER_CALLBACKS 0U /* CRYP register callback disabled */ +#define USE_HAL_DAC_REGISTER_CALLBACKS 0U /* DAC register callback disabled */ +#define USE_HAL_DCMI_REGISTER_CALLBACKS 0U /* DCMI register callback disabled */ +#define USE_HAL_DFSDM_REGISTER_CALLBACKS 0U /* DFSDM register callback disabled */ +#define USE_HAL_DMA2D_REGISTER_CALLBACKS 0U /* DMA2D register callback disabled */ +#define USE_HAL_DSI_REGISTER_CALLBACKS 0U /* DSI register callback disabled */ +#define USE_HAL_ETH_REGISTER_CALLBACKS 0U /* ETH register callback disabled */ +#define USE_HAL_HASH_REGISTER_CALLBACKS 0U /* HASH register callback disabled */ +#define USE_HAL_HCD_REGISTER_CALLBACKS 0U /* HCD register callback disabled */ +#define USE_HAL_I2C_REGISTER_CALLBACKS 0U /* I2C register callback disabled */ +#define USE_HAL_FMPI2C_REGISTER_CALLBACKS 0U /* FMPI2C register callback disabled */ +#define USE_HAL_I2S_REGISTER_CALLBACKS 0U /* I2S register callback disabled */ +#define USE_HAL_IRDA_REGISTER_CALLBACKS 0U /* IRDA register callback disabled */ +#define USE_HAL_LPTIM_REGISTER_CALLBACKS 0U /* LPTIM register callback disabled */ +#define USE_HAL_LTDC_REGISTER_CALLBACKS 0U /* LTDC register callback disabled */ +#define USE_HAL_MMC_REGISTER_CALLBACKS 0U /* MMC register callback disabled */ +#define USE_HAL_NAND_REGISTER_CALLBACKS 0U /* NAND register callback disabled */ +#define USE_HAL_NOR_REGISTER_CALLBACKS 0U /* NOR register callback disabled */ +#define USE_HAL_PCCARD_REGISTER_CALLBACKS 0U /* PCCARD register callback disabled */ +#define USE_HAL_PCD_REGISTER_CALLBACKS 0U /* PCD register callback disabled */ +#define USE_HAL_QSPI_REGISTER_CALLBACKS 0U /* QSPI register callback disabled */ +#define USE_HAL_RNG_REGISTER_CALLBACKS 0U /* RNG register callback disabled */ +#define USE_HAL_RTC_REGISTER_CALLBACKS 0U /* RTC register callback disabled */ +#define USE_HAL_SAI_REGISTER_CALLBACKS 0U /* SAI register callback disabled */ +#define USE_HAL_SD_REGISTER_CALLBACKS 0U /* SD register callback disabled */ +#define USE_HAL_SMARTCARD_REGISTER_CALLBACKS 0U /* SMARTCARD register callback disabled */ +#define USE_HAL_SDRAM_REGISTER_CALLBACKS 0U /* SDRAM register callback disabled */ +#define USE_HAL_SRAM_REGISTER_CALLBACKS 0U /* SRAM register callback disabled */ +#define USE_HAL_SPDIFRX_REGISTER_CALLBACKS 0U /* SPDIFRX register callback disabled */ +#define USE_HAL_SMBUS_REGISTER_CALLBACKS 0U /* SMBUS register callback disabled */ +#define USE_HAL_SPI_REGISTER_CALLBACKS 0U /* SPI register callback disabled */ +#define USE_HAL_TIM_REGISTER_CALLBACKS 0U /* TIM register callback disabled */ +#define USE_HAL_UART_REGISTER_CALLBACKS 0U /* UART register callback disabled */ +#define USE_HAL_USART_REGISTER_CALLBACKS 0U /* USART register callback disabled */ +#define USE_HAL_WWDG_REGISTER_CALLBACKS 0U /* WWDG register callback disabled */ + +/* ########################## Assert Selection ############################## */ +/** + * @brief Uncomment the line below to expanse the "assert_param" macro in the + * HAL drivers code + */ +/* #define USE_FULL_ASSERT 1U */ + +/* ################## Ethernet peripheral configuration ##################### */ + +/* Section 1 : Ethernet peripheral configuration */ + +/* MAC ADDRESS: MAC_ADDR0:MAC_ADDR1:MAC_ADDR2:MAC_ADDR3:MAC_ADDR4:MAC_ADDR5 */ +#define MAC_ADDR0 2U +#define MAC_ADDR1 0U +#define MAC_ADDR2 0U +#define MAC_ADDR3 0U +#define MAC_ADDR4 0U +#define MAC_ADDR5 0U + +/* Definition of the Ethernet driver buffers size and count */ +#define ETH_RX_BUF_SIZE ETH_MAX_PACKET_SIZE /* buffer size for receive */ +#define ETH_TX_BUF_SIZE ETH_MAX_PACKET_SIZE /* buffer size for transmit */ +#define ETH_RXBUFNB ((uint32_t)4U) /* 4 Rx buffers of size ETH_RX_BUF_SIZE */ +#define ETH_TXBUFNB ((uint32_t)4U) /* 4 Tx buffers of size ETH_TX_BUF_SIZE */ + +/* Section 2: PHY configuration section */ + +/* DP83848_PHY_ADDRESS Address*/ +#define DP83848_PHY_ADDRESS 0x01U +/* PHY Reset delay these values are based on a 1 ms Systick interrupt*/ +#define PHY_RESET_DELAY ((uint32_t)0x000000FFU) +/* PHY Configuration delay */ +#define PHY_CONFIG_DELAY ((uint32_t)0x00000FFFU) + +#define PHY_READ_TO ((uint32_t)0x0000FFFFU) +#define PHY_WRITE_TO ((uint32_t)0x0000FFFFU) + +/* Section 3: Common PHY Registers */ + +#define PHY_BCR ((uint16_t)0x0000U) /*!< Transceiver Basic Control Register */ +#define PHY_BSR ((uint16_t)0x0001U) /*!< Transceiver Basic Status Register */ + +#define PHY_RESET ((uint16_t)0x8000U) /*!< PHY Reset */ +#define PHY_LOOPBACK ((uint16_t)0x4000U) /*!< Select loop-back mode */ +#define PHY_FULLDUPLEX_100M ((uint16_t)0x2100U) /*!< Set the full-duplex mode at 100 Mb/s */ +#define PHY_HALFDUPLEX_100M ((uint16_t)0x2000U) /*!< Set the half-duplex mode at 100 Mb/s */ +#define PHY_FULLDUPLEX_10M ((uint16_t)0x0100U) /*!< Set the full-duplex mode at 10 Mb/s */ +#define PHY_HALFDUPLEX_10M ((uint16_t)0x0000U) /*!< Set the half-duplex mode at 10 Mb/s */ +#define PHY_AUTONEGOTIATION ((uint16_t)0x1000U) /*!< Enable auto-negotiation function */ +#define PHY_RESTART_AUTONEGOTIATION ((uint16_t)0x0200U) /*!< Restart auto-negotiation function */ +#define PHY_POWERDOWN ((uint16_t)0x0800U) /*!< Select the power down mode */ +#define PHY_ISOLATE ((uint16_t)0x0400U) /*!< Isolate PHY from MII */ + +#define PHY_AUTONEGO_COMPLETE ((uint16_t)0x0020U) /*!< Auto-Negotiation process completed */ +#define PHY_LINKED_STATUS ((uint16_t)0x0004U) /*!< Valid link established */ +#define PHY_JABBER_DETECTION ((uint16_t)0x0002U) /*!< Jabber condition detected */ + +/* Section 4: Extended PHY Registers */ +#define PHY_SR ((uint16_t)0x10U) /*!< PHY status register Offset */ + +#define PHY_SPEED_STATUS ((uint16_t)0x0002U) /*!< PHY Speed mask */ +#define PHY_DUPLEX_STATUS ((uint16_t)0x0004U) /*!< PHY Duplex mask */ + +/* ################## SPI peripheral configuration ########################## */ + +/* CRC FEATURE: Use to activate CRC feature inside HAL SPI Driver +* Activated: CRC code is present inside driver +* Deactivated: CRC code cleaned from driver +*/ + +#define USE_SPI_CRC 0U + +/* Includes ------------------------------------------------------------------*/ +/** + * @brief Include module's header file + */ + +#ifdef HAL_RCC_MODULE_ENABLED +#include "stm32f4xx_hal_rcc.h" +#endif /* HAL_RCC_MODULE_ENABLED */ + +#ifdef HAL_GPIO_MODULE_ENABLED +#include "stm32f4xx_hal_gpio.h" +#endif /* HAL_GPIO_MODULE_ENABLED */ + +#ifdef HAL_EXTI_MODULE_ENABLED +#include "stm32f4xx_hal_exti.h" +#endif /* HAL_EXTI_MODULE_ENABLED */ + +#ifdef HAL_DMA_MODULE_ENABLED +#include "stm32f4xx_hal_dma.h" +#endif /* HAL_DMA_MODULE_ENABLED */ + +#ifdef HAL_CORTEX_MODULE_ENABLED +#include "stm32f4xx_hal_cortex.h" +#endif /* HAL_CORTEX_MODULE_ENABLED */ + +#ifdef HAL_ADC_MODULE_ENABLED +#include "stm32f4xx_hal_adc.h" +#endif /* HAL_ADC_MODULE_ENABLED */ + +#ifdef HAL_CAN_MODULE_ENABLED +#include "stm32f4xx_hal_can.h" +#endif /* HAL_CAN_MODULE_ENABLED */ + +#ifdef HAL_CAN_LEGACY_MODULE_ENABLED +#include "stm32f4xx_hal_can_legacy.h" +#endif /* HAL_CAN_LEGACY_MODULE_ENABLED */ + +#ifdef HAL_CRC_MODULE_ENABLED +#include "stm32f4xx_hal_crc.h" +#endif /* HAL_CRC_MODULE_ENABLED */ + +#ifdef HAL_CRYP_MODULE_ENABLED +#include "stm32f4xx_hal_cryp.h" +#endif /* HAL_CRYP_MODULE_ENABLED */ + +#ifdef HAL_DMA2D_MODULE_ENABLED +#include "stm32f4xx_hal_dma2d.h" +#endif /* HAL_DMA2D_MODULE_ENABLED */ + +#ifdef HAL_DAC_MODULE_ENABLED +#include "stm32f4xx_hal_dac.h" +#endif /* HAL_DAC_MODULE_ENABLED */ + +#ifdef HAL_DCMI_MODULE_ENABLED +#include "stm32f4xx_hal_dcmi.h" +#endif /* HAL_DCMI_MODULE_ENABLED */ + +#ifdef HAL_ETH_MODULE_ENABLED +#include "stm32f4xx_hal_eth.h" +#endif /* HAL_ETH_MODULE_ENABLED */ + +#ifdef HAL_FLASH_MODULE_ENABLED +#include "stm32f4xx_hal_flash.h" +#endif /* HAL_FLASH_MODULE_ENABLED */ + +#ifdef HAL_SRAM_MODULE_ENABLED +#include "stm32f4xx_hal_sram.h" +#endif /* HAL_SRAM_MODULE_ENABLED */ + +#ifdef HAL_NOR_MODULE_ENABLED +#include "stm32f4xx_hal_nor.h" +#endif /* HAL_NOR_MODULE_ENABLED */ + +#ifdef HAL_NAND_MODULE_ENABLED +#include "stm32f4xx_hal_nand.h" +#endif /* HAL_NAND_MODULE_ENABLED */ + +#ifdef HAL_PCCARD_MODULE_ENABLED +#include "stm32f4xx_hal_pccard.h" +#endif /* HAL_PCCARD_MODULE_ENABLED */ + +#ifdef HAL_SDRAM_MODULE_ENABLED +#include "stm32f4xx_hal_sdram.h" +#endif /* HAL_SDRAM_MODULE_ENABLED */ + +#ifdef HAL_HASH_MODULE_ENABLED +#include "stm32f4xx_hal_hash.h" +#endif /* HAL_HASH_MODULE_ENABLED */ + +#ifdef HAL_I2C_MODULE_ENABLED +#include "stm32f4xx_hal_i2c.h" +#endif /* HAL_I2C_MODULE_ENABLED */ + +#ifdef HAL_SMBUS_MODULE_ENABLED +#include "stm32f4xx_hal_smbus.h" +#endif /* HAL_SMBUS_MODULE_ENABLED */ + +#ifdef HAL_I2S_MODULE_ENABLED +#include "stm32f4xx_hal_i2s.h" +#endif /* HAL_I2S_MODULE_ENABLED */ + +#ifdef HAL_IWDG_MODULE_ENABLED +#include "stm32f4xx_hal_iwdg.h" +#endif /* HAL_IWDG_MODULE_ENABLED */ + +#ifdef HAL_LTDC_MODULE_ENABLED +#include "stm32f4xx_hal_ltdc.h" +#endif /* HAL_LTDC_MODULE_ENABLED */ + +#ifdef HAL_PWR_MODULE_ENABLED +#include "stm32f4xx_hal_pwr.h" +#endif /* HAL_PWR_MODULE_ENABLED */ + +#ifdef HAL_RNG_MODULE_ENABLED +#include "stm32f4xx_hal_rng.h" +#endif /* HAL_RNG_MODULE_ENABLED */ + +#ifdef HAL_RTC_MODULE_ENABLED +#include "stm32f4xx_hal_rtc.h" +#endif /* HAL_RTC_MODULE_ENABLED */ + +#ifdef HAL_SAI_MODULE_ENABLED +#include "stm32f4xx_hal_sai.h" +#endif /* HAL_SAI_MODULE_ENABLED */ + +#ifdef HAL_SD_MODULE_ENABLED +#include "stm32f4xx_hal_sd.h" +#endif /* HAL_SD_MODULE_ENABLED */ + +#ifdef HAL_SPI_MODULE_ENABLED +#include "stm32f4xx_hal_spi.h" +#endif /* HAL_SPI_MODULE_ENABLED */ + +#ifdef HAL_TIM_MODULE_ENABLED +#include "stm32f4xx_hal_tim.h" +#endif /* HAL_TIM_MODULE_ENABLED */ + +#ifdef HAL_UART_MODULE_ENABLED +#include "stm32f4xx_hal_uart.h" +#endif /* HAL_UART_MODULE_ENABLED */ + +#ifdef HAL_USART_MODULE_ENABLED +#include "stm32f4xx_hal_usart.h" +#endif /* HAL_USART_MODULE_ENABLED */ + +#ifdef HAL_IRDA_MODULE_ENABLED +#include "stm32f4xx_hal_irda.h" +#endif /* HAL_IRDA_MODULE_ENABLED */ + +#ifdef HAL_SMARTCARD_MODULE_ENABLED +#include "stm32f4xx_hal_smartcard.h" +#endif /* HAL_SMARTCARD_MODULE_ENABLED */ + +#ifdef HAL_WWDG_MODULE_ENABLED +#include "stm32f4xx_hal_wwdg.h" +#endif /* HAL_WWDG_MODULE_ENABLED */ + +#ifdef HAL_PCD_MODULE_ENABLED +#include "stm32f4xx_hal_pcd.h" +#endif /* HAL_PCD_MODULE_ENABLED */ + +#ifdef HAL_HCD_MODULE_ENABLED +#include "stm32f4xx_hal_hcd.h" +#endif /* HAL_HCD_MODULE_ENABLED */ + +#ifdef HAL_DSI_MODULE_ENABLED +#include "stm32f4xx_hal_dsi.h" +#endif /* HAL_DSI_MODULE_ENABLED */ + +#ifdef HAL_QSPI_MODULE_ENABLED +#include "stm32f4xx_hal_qspi.h" +#endif /* HAL_QSPI_MODULE_ENABLED */ + +#ifdef HAL_CEC_MODULE_ENABLED +#include "stm32f4xx_hal_cec.h" +#endif /* HAL_CEC_MODULE_ENABLED */ + +#ifdef HAL_FMPI2C_MODULE_ENABLED +#include "stm32f4xx_hal_fmpi2c.h" +#endif /* HAL_FMPI2C_MODULE_ENABLED */ + +#ifdef HAL_SPDIFRX_MODULE_ENABLED +#include "stm32f4xx_hal_spdifrx.h" +#endif /* HAL_SPDIFRX_MODULE_ENABLED */ + +#ifdef HAL_DFSDM_MODULE_ENABLED +#include "stm32f4xx_hal_dfsdm.h" +#endif /* HAL_DFSDM_MODULE_ENABLED */ + +#ifdef HAL_LPTIM_MODULE_ENABLED +#include "stm32f4xx_hal_lptim.h" +#endif /* HAL_LPTIM_MODULE_ENABLED */ + +#ifdef HAL_MMC_MODULE_ENABLED +#include "stm32f4xx_hal_mmc.h" +#endif /* HAL_MMC_MODULE_ENABLED */ + +/* Exported macro ------------------------------------------------------------*/ +#ifdef USE_FULL_ASSERT +/** + * @brief The assert_param macro is used for function's parameters check. + * @param expr: If expr is false, it calls assert_failed function + * which reports the name of the source file and the source + * line number of the call that failed. + * If expr is true, it returns no value. + * @retval None + */ +#define assert_param(expr) ((expr) ? (void)0U : assert_failed((uint8_t *)__FILE__, __LINE__)) +/* Exported functions ------------------------------------------------------- */ +void assert_failed(uint8_t *file, uint32_t line); +#else +#define assert_param(expr) ((void)0U) +#endif /* USE_FULL_ASSERT */ + +#ifdef __cplusplus +} +#endif + +#endif /* __STM32F4xx_HAL_CONF_H */ + + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/ldscript.ld b/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/ldscript.ld new file mode 100644 index 000000000000..e83d35496a80 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/ldscript.ld @@ -0,0 +1,206 @@ +/* +***************************************************************************** +** + +** File : LinkerScript.ld +** +** Abstract : Linker script for STM32F407ZGTx Device with +** 1024KByte FLASH, 128KByte RAM +** +** Set heap size, stack size and stack location according +** to application requirements. +** +** Set memory bank area and size if external memory is used. +** +** Target : STMicroelectronics STM32 +** +** +** Distribution: The file is distributed as is, without any warranty +** of any kind. +** +***************************************************************************** +** @attention +** +**

© COPYRIGHT(c) 2014 Ac6

+** +** Redistribution and use in source and binary forms, with or without modification, +** are permitted provided that the following conditions are met: +** 1. Redistributions of source code must retain the above copyright notice, +** this list of conditions and the following disclaimer. +** 2. 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. +** 3. Neither the name of Ac6 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 HOLDER 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. +** +***************************************************************************** +*/ + +/* Entry Point */ +ENTRY(Reset_Handler) + +/* Highest address of the user mode stack */ +_estack = 0x20020000; /* end of RAM */ +/* Generate a link error if heap and stack don't fit into RAM */ +_Min_Heap_Size = 0x200;; /* required amount of heap */ +_Min_Stack_Size = 0x400;; /* required amount of stack */ + +/* Specify the memory areas */ +MEMORY +{ +FLASH (rx) : ORIGIN = 0x800C000, LENGTH = 512K-48K +RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 128K +CCMRAM (rw) : ORIGIN = 0x10000000, LENGTH = 64K +} + +/* Define output sections */ +SECTIONS +{ + /* The startup code goes first into FLASH */ + .isr_vector : + { + . = ALIGN(4); + KEEP(*(.isr_vector)) /* Startup code */ + . = ALIGN(4); + } >FLASH + + /* The program code and other data goes into FLASH */ + .text ALIGN(4): + { + . = ALIGN(4); + *(.text) /* .text sections (code) */ + *(.text*) /* .text* sections (code) */ + *(.glue_7) /* glue arm to thumb code */ + *(.glue_7t) /* glue thumb to arm code */ + *(.eh_frame) + + KEEP (*(.init)) + KEEP (*(.fini)) + + . = ALIGN(4); + _etext = .; /* define a global symbols at end of code */ + } >FLASH + + /* Constant data goes into FLASH */ + .rodata ALIGN(4): + { + . = ALIGN(4); + *(.rodata) /* .rodata sections (constants, strings, etc.) */ + *(.rodata*) /* .rodata* sections (constants, strings, etc.) */ + . = ALIGN(4); + } >FLASH + + .ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH + .ARM : { + __exidx_start = .; + *(.ARM.exidx*) + __exidx_end = .; + } >FLASH + + .preinit_array : + { + PROVIDE_HIDDEN (__preinit_array_start = .); + KEEP (*(.preinit_array*)) + PROVIDE_HIDDEN (__preinit_array_end = .); + } >FLASH + .init_array : + { + PROVIDE_HIDDEN (__init_array_start = .); + KEEP (*(SORT(.init_array.*))) + KEEP (*(.init_array*)) + PROVIDE_HIDDEN (__init_array_end = .); + } >FLASH + .fini_array : + { + PROVIDE_HIDDEN (__fini_array_start = .); + KEEP (*(SORT(.fini_array.*))) + KEEP (*(.fini_array*)) + PROVIDE_HIDDEN (__fini_array_end = .); + } >FLASH + + /* used by the startup to initialize data */ + _sidata = LOADADDR(.data); + + /* Initialized data sections goes into RAM, load LMA copy after code */ + .data : + { + . = ALIGN(4); + _sdata = .; /* create a global symbol at data start */ + *(.data) /* .data sections */ + *(.data*) /* .data* sections */ + + . = ALIGN(4); + _edata = .; /* define a global symbol at data end */ + } >RAM AT> FLASH + + _siccmram = LOADADDR(.ccmram); + + /* CCM-RAM section + * + * IMPORTANT NOTE! + * If initialized variables will be placed in this section, + * the startup code needs to be modified to copy the init-values. + */ + .ccmram : + { + . = ALIGN(4); + _sccmram = .; /* create a global symbol at ccmram start */ + *(.ccmram) + *(.ccmram*) + + . = ALIGN(4); + _eccmram = .; /* create a global symbol at ccmram end */ + } >CCMRAM AT> FLASH + + + /* Uninitialized data section */ + . = ALIGN(4); + .bss : + { + /* This is used by the startup in order to initialize the .bss secion */ + _sbss = .; /* define a global symbol at bss start */ + __bss_start__ = _sbss; + *(.bss) + *(.bss*) + *(COMMON) + + . = ALIGN(4); + _ebss = .; /* define a global symbol at bss end */ + __bss_end__ = _ebss; + } >RAM + + /* User_heap_stack section, used to check that there is enough RAM left */ + ._user_heap_stack : + { + . = ALIGN(4); + PROVIDE ( end = . ); + PROVIDE ( _end = . ); + . = . + _Min_Heap_Size; + . = . + _Min_Stack_Size; + . = ALIGN(4); + } >RAM + + + + /* Remove information from the standard libraries */ + /DISCARD/ : + { + libc.a ( * ) + libm.a ( * ) + libgcc.a ( * ) + } + + .ARM.attributes 0 : { *(.ARM.attributes) } +} diff --git a/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/variant.cpp b/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/variant.cpp new file mode 100644 index 000000000000..cfc7f0affd66 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/variant.cpp @@ -0,0 +1,228 @@ +/* + ******************************************************************************* + * Copyright (c) 2017, STMicroelectronics + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. 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. + * 3. Neither the name of STMicroelectronics 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 HOLDER 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 "variant.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#include "pins_arduino.h" + + +// Pin number +// This array allows to wrap Arduino pin number(Dx or x) +// to STM32 PinName (PX_n) +const PinName digitalPin[] = { + PC_13, //D0 + PC_14, //D1 - OSC32_IN + PC_15, //D2 - OSC32_OUT + PH_0, //D3 - OSC_IN + PH_1, //D4 - OSC_OUT + PB_2, //D21 - BOOT1 + PB_10, //D22 - 1:SPI2_SCK / I2C2_SCL / USART3_TX / TIM2_CH3 + PB_11, //D23 - 1:I2C2_SDA / USART3_RX / TIM2_CH4 + PB_12, //D24 - 1:SPI2_NSS / OTG_HS_ID + PB_13, //D25 - 1:SPI2_SCK 2:OTG_HS_VBUS + PB_14, //D26 - 1:SPI2_MISO / TIM12_CH1 / OTG_HS_DM + PB_15, //D27 - SPI2_MOSI / TIM12_CH2 / OTG_HS_DP + PC_6, //D28 - 1:TIM8_CH1 / SDIO_D6 / USART6_TX / TIM3_CH1 + PC_7, //D29 - 1:TIM8_CH2 / SDIO_D7 / USART6_RX / TIM3_CH2 + PC_8, //D30 - 1:TIM8_CH3 / SDIO_D0 / TIM3_CH3 + PC_9, //D31 - 1:TIM8_CH4 / SDIO_D1 / TIM3_CH4 + PA_8, //D32 - 1:TIM1_CH1 / I2C3_SCL / OTG_FS_SOF + PA_9, //D33 - 1:USART1_TX / TIM1_CH2 2:OTG_FS_VBUS + PA_10, //34 - 1:USART1_RX / TIM1_CH3 / OTG_FS_ID + PA_11, //D35 - 1:TIM1_CH4 / OTG_FS_DM + PA_12, //D36 - 1:OTG_FS_DP + PA_13, //D37 - 0:JTMS-SWDIO + PA_14, //D38 - 0:JTCK-SWCLK + PA_15, //D39 - 0:JTDI 1:SPI3_NSS / SPI1_NSS + PC_10, //D40 - 1:UART4_TX / SPI3_SCK / SDIO_D2 / USART3_TX + PC_11, //D41 - 1:UART4_RX / SPI3_MISO / SDIO_D3 / USART3_RX + PC_12, //D42 - 1:UART5_TX / SPI3_MOSI / SDIO_CK + PD_2, //D43 - 1:UART5_RX / SDIO_CMD + PB_3, //D44 - 0:JTDO 1:SPI3_SCK / TIM2_CH2 / SPI1_SCK + PB_4, //D45 - 0:NJTRST 1:SPI3_MISO / TIM3_CH1 / SPI1_MISO + PB_5, //D45 - 1:TIM3_CH2 / SPI1_MOSI / SPI3_MOSI + PB_6, //D47 - 1:I2C1_SCL / TIM4_CH1 / USART1_TX + PB_7, //D48 - 1:I2C1_SDA / TIM4_CH2 / USART1_RX + PB_8, //D49 - 1:I2C1_SCL / TIM4_CH3 / SDIO_D4 / TIM10_CH1 + PB_9, //D50 - 1:I2C1_SDA / TIM4_CH4 / SDIO_D5 / TIM11_CH1 / SPI2_NSS + PE_2, //D51 - 1:FSMC_A23 + PE_3, //D52 - 1:FSMC_A19 + PE_4, //D53 - 1:FSMC_A20 + PE_5, //D54 - 1:FSMC_A21 + PE_6, //D55 - 1:FSMC_A22 + PE_7, //D56 - 1:FSMC_D4 + PE_8, //D57 - 1:FSMC_D5 + PE_9, //D58 - 1:FSMC_D6 / TIM1_CH1 + PE_10, //D59 - 1:FSMC_D7 + PE_11, //D60 - 1:FSMC_D8 / TIM1_CH2 + PE_12, //D61 - 1:FSMC_D9 + PE_13, //D62 - 1:FSMC_D10 / TIM1_CH3 + PE_14, //D63 - 1:FSMC_D11 / TIM1_CH4 + PE_15, //D64 - 1:FSMC_D12 + PD_8, //D65 - 1:FSMC_D13 / USART3_TX + PD_9, //D66 - 1:FSMC_D14 / USART3_RX + PD_10, //D67 - 1:FSMC_D15 + PD_11, //D68 - 1:FSMC_A16 + PD_12, //D69 - 1:FSMC_A17 / TIM4_CH1 + PD_13, //D70 - 1:FSMC_A18 / TIM4_CH2 + PD_14, //D71 - 1:FSMC_D0 / TIM4_CH3 + PD_15, //D72 - 1:FSMC_D1 / TIM4_CH4 + PD_0, //D73 - 1:FSMC_D2 + PD_1, //D74 - 1:FSMC_D3 + PD_3, //D75 - 1:FSMC_CLK + PD_4, //D76 - 1:FSMC_NOE + PD_5, //D77 - 1:USART2_TX + PD_6, //D78 - 1:USART2_RX + PD_7, //D79 + PE_0, //D80 + PE_1, //D81 + PF_0, //D82 - 1:FSMC_A0 / I2C2_SDA + PF_1, //D83 - 1:FSMC_A1 / I2C2_SCL + PF_2, //D84 - 1:FSMC_A2 + PF_11, //D93 + PF_12, //D94 - 1:FSMC_A6 + PF_13, //D95 - 1:FSMC_A7 + PF_14, //D96 - 1:FSMC_A8 + PF_15, //D97 - 1:FSMC_A9 + PG_0, //D98 - 1:FSMC_A10 + PG_1, //D99 - 1:FSMC_A11 + PG_2, //D100 - 1:FSMC_A12 + PG_3, //D101 - 1:FSMC_A13 + PG_4, //D102 - 1:FSMC_A14 + PG_5, //D103 - 1:FSMC_A15 + PG_6, //D104 + PG_7, //D105 + PG_8, //D106 + PG_9, //D107 - 1:USART6_RX + PG_10, //D108 - 1:FSMC_NE3 + PG_11, //D109 + PG_12, //D110 - 1:FSMC_NE4 + PG_13, //D111 - 1:FSMC_A24 + PG_14, //D112 - 1:FSMC_A25 / USART6_TX + PG_15, //D113 + PA_0, //D140/A0 = D9 - 1:UART4_TX / TIM5_CH1 2:ADC123_IN0 + PA_1, //D141/A1 = D10 - 1:UART4_RX / TIM5_CH2 / TIM2_CH2 2:ADC123_IN1 + PA_2, //D142/A2 = D11 - 1:USART2_TX /TIM5_CH3 / TIM9_CH1 / TIM2_CH3 2:ADC123_IN2 + PA_3, //D143/A3 = D12 - 1:USART2_RX /TIM5_CH4 / TIM9_CH2 / TIM2_CH4 2:ADC123_IN3 + PA_4, //D144/A4 = D13 - NOT FT 1:SPI1_NSS / SPI3_NSS / USART2_CK 2:ADC12_IN4 / DAC_OUT1 + PA_5, //D145/A5 = D14 - NOT FT 1:SPI1_SCK 2:ADC12_IN5 / DAC_OUT2 + PA_6, //D146/A6 = D15 - 1:SPI1_MISO / TIM13_CH1 / TIM3_CH1 2:ADC12_IN6 + PA_7, //D147/A7 = D16 - 1:SPI1_MOSI / TIM14_CH1 / TIM3_CH2 2:ADC12_IN7 + PB_0, //D148/A8 = D19 - 1:TIM3_CH3 2:ADC12_IN8 + PB_1, //D149/A9 = D20 - 1:TIM3_CH4 2:ADC12_IN9 + PC_0, //D150/A10 = D5 - 1: 2:ADC123_IN10 + PC_1, //D151/A11 = D6 - 1: 2:ADC123_IN11 + PC_2, //D152/A12 = D7 - 1:SPI2_MISO 2:ADC123_IN12 + PC_3, //D153/A13 = D8 - 1:SPI2_MOSI 2:ADC123_IN13 + PC_4, //D154/A14 = D17 - 1: 2:ADC12_IN14 + PC_5, //D155/A15 = D18 - 1: 2:ADC12_IN15 + PF_3, //D156/A16 = D85 - 1:FSMC_A3 2:ADC3_IN9 + PF_4, //D157/A17 = D86 - 1:FSMC_A4 2:ADC3_IN14 + PF_5, //D158/A18 = D87 - 1:FSMC_A5 2:ADC3_IN15 + PF_6, //D159/A19 = D88 - 1:TIM10_CH1 2:ADC3_IN4 + PF_7, //D160/A20 = D89 - 1:TIM11_CH1 2:ADC3_IN5 + PF_8, //D161/A21 = D90 - 1:TIM13_CH1 2:ADC3_IN6 + PF_9, //D162/A22 = D91 - 1;TIM14_CH1 2:ADC3_IN7 + PF_10, //D163/A23 = D92 - 2:ADC3_IN8 +}; + +#ifdef __cplusplus +} +#endif + +// ------------------------ + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @brief System Clock Configuration + * @param None + * @retval None + */ +WEAK void SystemClock_Config(void) +{ + + RCC_OscInitTypeDef RCC_OscInitStruct; + RCC_ClkInitTypeDef RCC_ClkInitStruct; + + /**Configure the main internal regulator output voltage + */ + __HAL_RCC_PWR_CLK_ENABLE(); + + __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); + + /**Initializes the CPU, AHB and APB busses clocks + */ + RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; + RCC_OscInitStruct.HSEState = RCC_HSE_ON; + RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; + RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; + RCC_OscInitStruct.PLL.PLLM = 8; + RCC_OscInitStruct.PLL.PLLN = 336; + RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2; + RCC_OscInitStruct.PLL.PLLQ = 7; + if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) { + _Error_Handler(__FILE__, __LINE__); + } + + /**Initializes the CPU, AHB and APB busses clocks + */ + RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK + | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2; + RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; + RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; + RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4; + RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2; + + if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_5) != HAL_OK) { + _Error_Handler(__FILE__, __LINE__); + } + + /**Configure the Systick interrupt time + */ + HAL_SYSTICK_Config(HAL_RCC_GetHCLKFreq() / 1000); + + /**Configure the Systick + */ + HAL_SYSTICK_CLKSourceConfig(SYSTICK_CLKSOURCE_HCLK); + + /* SysTick_IRQn interrupt configuration */ + HAL_NVIC_SetPriority(SysTick_IRQn, 0, 0); +} + +#ifdef __cplusplus +} +#endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/variant.h new file mode 100644 index 000000000000..51c29357986c --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_MKS_ROBIN2/variant.h @@ -0,0 +1,242 @@ + +/* + ******************************************************************************* + * Copyright (c) 2017, STMicroelectronics + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. 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. + * 3. Neither the name of STMicroelectronics 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 HOLDER 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. + ******************************************************************************* + */ + +#ifndef _VARIANT_ARDUINO_STM32_ +#define _VARIANT_ARDUINO_STM32_ + +/*---------------------------------------------------------------------------- + * Headers + *----------------------------------------------------------------------------*/ +// #include "PeripheralPins.h" + +#ifdef __cplusplus +extern "C" { +#endif // __cplusplus + +/*---------------------------------------------------------------------------- + * Pins + *----------------------------------------------------------------------------*/ +//extern const PinName digitalPin[]; + + #define PC13 0 + #define PC14 1 //OSC32_IN + #define PC15 2 //OSC32_OUT + #define PH0 3 //OSC_IN + #define PH1 4 //OSC_OUT + #define PB2 5 //BOOT1 + #define PB10 6 //1:SPI2_SCK / I2C2_SCL / USART3_TX / TIM2_CH3 + #define PB11 7 //1:I2C2_SDA / USART3_RX / TIM2_CH4 + #define PB12 8 //1:SPI2_NSS / OTG_HS_ID + #define PB13 9 //1:SPI2_SCK 2:OTG_HS_VBUS + #define PB14 10 //1:SPI2_MISO / TIM12_CH1 / OTG_HS_DM + #define PB15 11 //SPI2_MOSI / TIM12_CH2 / OTG_HS_DP + #define PC6 12 //1:TIM8_CH1 / SDIO_D6 / USART6_TX / TIM3_CH1 + #define PC7 13 //1:TIM8_CH2 / SDIO_D7 / USART6_RX / TIM3_CH2 + #define PC8 14 //1:TIM8_CH3 / SDIO_D0 / TIM3_CH3 + #define PC9 15 //1:TIM8_CH4 / SDIO_D1 / TIM3_CH4 + #define PA8 16 //1:TIM1_CH1 / I2C3_SCL / OTG_FS_SOF + #define PA9 17 //1:USART1_TX / TIM1_CH2 2:OTG_FS_VBUS + #define PA10 18 //1:USART1_RX / TIM1_CH3 / OTG_FS_ID + #define PA11 19 //1:TIM1_CH4 / OTG_FS_DM + #define PA12 20 //1:OTG_FS_DP + #define PA13 21 //0:JTMS-SWDIO + #define PA14 22 //0:JTCK-SWCLK + #define PA15 23 //0:JTDI 1:SPI3_NSS / SPI1_NSS + #define PC10 24 //1:UART4_TX / SPI3_SCK / SDIO_D2 / USART3_TX + #define PC11 25 //1:UART4_RX / SPI3_MISO / SDIO_D3 / USART3_RX + #define PC12 26 //1:UART5_TX / SPI3_MOSI / SDIO_CK + #define PD2 27 //1:UART5_RX / SDIO_CMD + #define PB3 28 //0:JTDO 1:SPI3_SCK / TIM2_CH2 / SPI1_SCK + #define PB4 29 //0:NJTRST 1:SPI3_MISO / TIM3_CH1 / SPI1_MISO + #define PB5 30 //1:TIM3_CH2 / SPI1_MOSI / SPI3_MOSI + #define PB6 31 //1:I2C1_SCL / TIM4_CH1 / USART1_TX + #define PB7 32 //1:I2C1_SDA / TIM4_CH2 / USART1_RX + #define PB8 33 //1:I2C1_SCL / TIM4_CH3 / SDIO_D4 / TIM10_CH1 + #define PB9 34 //1:I2C1_SDA / TIM4_CH4 / SDIO_D5 / TIM11_CH1 / SPI2_NSS + #define PE2 35 //1:FSMC_A23 + #define PE3 36 //1:FSMC_A19 + #define PE4 37 //1:FSMC_A20 + #define PE5 38 //1:FSMC_A21 + #define PE6 39 //1:FSMC_A22 + #define PE7 40 //1:FSMC_D4 + #define PE8 41 //1:FSMC_D5 + #define PE9 42 //1:FSMC_D6 / TIM1_CH1 + #define PE10 43 //1:FSMC_D7 + #define PE11 44 //1:FSMC_D8 / TIM1_CH2 + #define PE12 45 //1:FSMC_D9 + #define PE13 46 //1:FSMC_D10 / TIM1_CH3 + #define PE14 47 //1:FSMC_D11 / TIM1_CH4 + #define PE15 48 //1:FSMC_D12 + #define PD8 49 //1:FSMC_D13 / USART3_TX + #define PD9 50 //1:FSMC_D14 / USART3_RX + #define PD10 51 //1:FSMC_D15 + #define PD11 52 //1:FSMC_A16 + #define PD12 53 //1:FSMC_A17 / TIM4_CH1 + #define PD13 54 //1:FSMC_A18 / TIM4_CH2 + #define PD14 55 //1:FSMC_D0 / TIM4_CH3 + #define PD15 56 //1:FSMC_D1 / TIM4_CH4 + #define PD0 57 //1:FSMC_D2 + #define PD1 58 //1:FSMC_D3 + #define PD3 59 //1:FSMC_CLK + #define PD4 60 //1:FSMC_NOE + #define PD5 61 //1:USART2_TX + #define PD6 62 //1:USART2_RX + #define PD7 63 + #define PE0 64 + #define PE1 65 + #define PF0 66 //1:FSMC_A0 / I2C2_SDA + #define PF1 67 //1:FSMC_A1 / I2C2_SCL + #define PF2 68 //1:FSMC_A2 + #define PF11 69 + #define PF12 70 //1:FSMC_A6 + #define PF13 71 //1:FSMC_A7 + #define PF14 72 //1:FSMC_A8 + #define PF15 73 //1:FSMC_A9 + #define PG0 74 //1:FSMC_A10 + #define PG1 75 //1:FSMC_A11 + #define PG2 76 //1:FSMC_A12 + #define PG3 77 //1:FSMC_A13 + #define PG4 78 //1:FSMC_A14 + #define PG5 79 //1:FSMC_A15 + #define PG6 80 + #define PG7 81 + #define PG8 82 + #define PG9 83 //1:USART6_RX + #define PG10 84 //1:FSMC_NE3 + #define PG11 85 + #define PG12 86 //1:FSMC_NE4 + #define PG13 87 //1:FSMC_A24 + #define PG14 88 //1:FSMC_A25 / USART6_TX + #define PG15 89 + #define PA0 90 //1:UART4_TX / TIM5_CH1 2:ADC123_IN0 + #define PA1 91 //1:UART4_RX / TIM5_CH2 / TIM2_CH2 2:ADC123_IN1 + #define PA2 92 //1:USART2_TX /TIM5_CH3 / TIM9_CH1 / TIM2_CH3 2:ADC123_IN2 + #define PA3 93 //1:USART2_RX /TIM5_CH4 / TIM9_CH2 / TIM2_CH4 2:ADC123_IN3 + #define PA4 94 //NOT FT 1:SPI1_NSS / SPI3_NSS / USART2_CK 2:ADC12_IN4 / DAC_OUT1 + #define PA5 95 //NOT FT 1:SPI1_SCK 2:ADC12_IN5 / DAC_OUT2 + #define PA6 96 //1:SPI1_MISO / TIM13_CH1 / TIM3_CH1 2:ADC12_IN6 + #define PA7 97 //1:SPI1_MOSI / TIM14_CH1 / TIM3_CH2 2:ADC12_IN7 + #define PB0 98 //1:TIM3_CH3 2:ADC12_IN8 + #define PB1 99 //1:TIM3_CH4 2:ADC12_IN9 + #define PC0 100 //1: 2:ADC123_IN10 + #define PC1 101 //1: 2:ADC123_IN11 + #define PC2 102 //1:SPI2_MISO 2:ADC123_IN12 + #define PC3 103 //1:SPI2_MOSI 2:ADC123_IN13 + #define PC4 104 //1: 2:ADC12_IN14 + #define PC5 105 //1: 2:ADC12_IN15 + #define PF3 106 //1:FSMC_A3 2:ADC3_IN9 + #define PF4 107 //1:FSMC_A4 2:ADC3_IN14 + #define PF5 108 //1:FSMC_A5 2:ADC3_IN15 + #define PF6 109 //1:TIM10_CH1 2:ADC3_IN4 + #define PF7 110 //1:TIM11_CH1 2:ADC3_IN5 + #define PF8 111 //1:TIM13_CH1 2:ADC3_IN6 + #define PF9 112 //1;TIM14_CH1 2:ADC3_IN7 + #define PF10 113 //2:ADC3_IN8 + +// This must be a literal +#define NUM_DIGITAL_PINS 114 +// This must be a literal with a value less than or equal to MAX_ANALOG_INPUTS +#define NUM_ANALOG_INPUTS 24 +#define NUM_ANALOG_FIRST 90 + +// Below ADC, DAC and PWM definitions already done in the core +// Could be redefined here if needed +// ADC resolution is 12bits +//#define ADC_RESOLUTION 12 +//#define DACC_RESOLUTION 12 + +// PWM resolution +#define PWM_RESOLUTION 8 +#define PWM_FREQUENCY 20000 +#define PWM_MAX_DUTY_CYCLE 255 + +// Below SPI and I2C definitions already done in the core +// Could be redefined here if differs from the default one +// SPI Definitions +#define PIN_SPI_MOSI PB15 +#define PIN_SPI_MISO PB14 +#define PIN_SPI_SCK PB13 +#define PIN_SPI_SS PB12 + +// I2C Definitions +#define PIN_WIRE_SDA PB7 +#define PIN_WIRE_SCL PB6 + +// Timer Definitions +//Do not use timer used by PWM pins when possible. See PinMap_PWM in PeripheralPins.c +#define TIMER_TONE TIM6 + +// Do not use basic timer: OC is required +#define TIMER_SERVO TIM2 //TODO: advanced-control timers don't work + +// UART Definitions +// Define here Serial instance number to map on Serial generic name +#define SERIAL_UART_INSTANCE 3 //ex: 2 for Serial2 (USART2) +// DEBUG_UART could be redefined to print on another instance than 'Serial' +//#define DEBUG_UART ((USART_TypeDef *) U(S)ARTX) // ex: USART3 +// DEBUG_UART baudrate, default: 9600 if not defined +//#define DEBUG_UART_BAUDRATE x +// DEBUG_UART Tx pin name, default: the first one found in PinMap_UART_TX for DEBUG_UART +//#define DEBUG_PINNAME_TX PX_n // PinName used for TX + +// Default pin used for 'Serial' instance (ex: ST-Link) +// Mandatory for Firmata +#define PIN_SERIAL_RX PB11//PA10 +#define PIN_SERIAL_TX PB10//PA9 + +#ifdef __cplusplus +} // extern "C" +#endif +/*---------------------------------------------------------------------------- + * Arduino objects - C++ only + *----------------------------------------------------------------------------*/ + +#ifdef __cplusplus +// These serial port names are intended to allow libraries and architecture-neutral +// sketches to automatically default to the correct port name for a particular type +// of use. For example, a GPS module would normally connect to SERIAL_PORT_HARDWARE_OPEN, +// the first hardware serial port whose RX/TX pins are not dedicated to another use. +// +// SERIAL_PORT_MONITOR Port which normally prints to the Arduino Serial Monitor +// +// SERIAL_PORT_USBVIRTUAL Port which is USB virtual serial +// +// SERIAL_PORT_LINUXBRIDGE Port which connects to a Linux system via Bridge library +// +// SERIAL_PORT_HARDWARE Hardware serial port, physical RX & TX pins. +// +// SERIAL_PORT_HARDWARE_OPEN Hardware serial ports which are open for use. Their RX & TX +// pins are NOT connected to anything by default. +#define SERIAL_PORT_MONITOR Serial +#define SERIAL_PORT_HARDWARE Serial1 +#endif + +#endif /* _VARIANT_ARDUINO_STM32_ */ diff --git a/ini/stm32f4.ini b/ini/stm32f4.ini index f30b5e539d24..29c3f5b9597a 100644 --- a/ini/stm32f4.ini +++ b/ini/stm32f4.ini @@ -419,7 +419,20 @@ monitor_speed = 500000 upload_protocol = dfu # -# MKS Robin Pro V2 +# STM32F407ZET6 ARM Cortex-M4 +# +[env:mks_robin2] +extends = stm32_variant +board = marlin_MKS_ROBIN2 +board_build.offset = 0xC000 +board_upload.offset_address = 0x0800C000 +board_build.encrypt_mks = Robin2.bin +build_flags = ${stm32_variant.build_flags} + -DTARGET_STM32F4 -DSTM32F407_5ZX + -DUSBCON -DUSBD_USE_CDC -DUSBD_VID=0x0483 -DUSBD_PID=0x3748 -DUSB_PRODUCT=\"MKS_Robin2\" + +# +# MKS Robin Pro V2 (No bootloader!) # [env:mks_robin_pro2] extends = stm32_variant From c6ea99f4be9c52d28c535e823da4171a7a89fa31 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 8 May 2023 06:50:21 -0500 Subject: [PATCH 142/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20babystep=20corrupt?= =?UTF-8?q?ing=20DIR?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to 2538a7c4 --- Marlin/Configuration_adv.h | 2 +- Marlin/src/module/stepper.cpp | 121 +++++++----------------- Marlin/src/module/stepper/indirection.h | 44 ++++----- buildroot/tests/FYSETC_F6 | 26 ++--- 4 files changed, 71 insertions(+), 122 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 1a35c324b6a1..0d1b3d79fae0 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -2188,7 +2188,7 @@ //#define BABYSTEP_WITHOUT_HOMING //#define BABYSTEP_ALWAYS_AVAILABLE // Allow babystepping at all times (not just during movement). //#define BABYSTEP_XY // Also enable X/Y Babystepping. Not supported on DELTA! - #define BABYSTEP_INVERT_Z false // Change if Z babysteps should go the other way + //#define BABYSTEP_INVERT_Z // Enable if Z babysteps should go the other way //#define BABYSTEP_MILLIMETER_UNITS // Specify BABYSTEP_MULTIPLICATOR_(XY|Z) in mm instead of micro-steps #define BABYSTEP_MULTIPLICATOR_Z 1 // (steps or mm) Steps or millimeter distance for each Z babystep #define BABYSTEP_MULTIPLICATOR_XY 1 // (steps or mm) Steps or millimeter distance for each XY babystep diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 7517bcd0a6d8..d7ef76d18a6d 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -3609,31 +3609,31 @@ void Stepper::report_positions() { #if DISABLED(DELTA) - #define BABYSTEP_AXIS(AXIS, DIR, INV) do{ \ - const uint8_t old_dir = _READ_DIR(AXIS); \ - _ENABLE_AXIS(AXIS); \ - DIR_WAIT_BEFORE(); \ - _APPLY_DIR(AXIS, (DIR)^(INV)); \ - DIR_WAIT_AFTER(); \ - _SAVE_START(); \ - _APPLY_STEP(AXIS, _STEP_STATE(AXIS), true); \ - _PULSE_WAIT(); \ - _APPLY_STEP(AXIS, !_STEP_STATE(AXIS), true); \ - EXTRA_DIR_WAIT_BEFORE(); \ - _APPLY_DIR(AXIS, old_dir); \ - EXTRA_DIR_WAIT_AFTER(); \ + #define BABYSTEP_AXIS(AXIS, FWD, INV) do{ \ + const bool old_fwd = _READ_DIR(AXIS); \ + _ENABLE_AXIS(AXIS); \ + DIR_WAIT_BEFORE(); \ + _APPLY_DIR(AXIS, (FWD)^(INV)); \ + DIR_WAIT_AFTER(); \ + _SAVE_START(); \ + _APPLY_STEP(AXIS, _STEP_STATE(AXIS), true); \ + _PULSE_WAIT(); \ + _APPLY_STEP(AXIS, !_STEP_STATE(AXIS), true); \ + EXTRA_DIR_WAIT_BEFORE(); \ + _APPLY_DIR(AXIS, old_fwd); \ + EXTRA_DIR_WAIT_AFTER(); \ }while(0) #endif #if IS_CORE - #define BABYSTEP_CORE(A, B, DIR, INV, ALT) do{ \ - const xy_byte_t old_dir = { _READ_DIR(A), _READ_DIR(B) }; \ + #define BABYSTEP_CORE(A, B, FWD, INV, ALT) do{ \ + const xy_byte_t old_fwd = { _READ_DIR(A), _READ_DIR(B) }; \ _ENABLE_AXIS(A); _ENABLE_AXIS(B); \ DIR_WAIT_BEFORE(); \ - _APPLY_DIR(A, (DIR)^(INV)); \ - _APPLY_DIR(B, (DIR)^(INV)^(ALT)); \ + _APPLY_DIR(A, (FWD)^(INV)); \ + _APPLY_DIR(B, (FWD)^(INV)^(ALT)); \ DIR_WAIT_AFTER(); \ _SAVE_START(); \ _APPLY_STEP(A, _STEP_STATE(A), true); \ @@ -3642,7 +3642,7 @@ void Stepper::report_positions() { _APPLY_STEP(A, !_STEP_STATE(A), true); \ _APPLY_STEP(B, !_STEP_STATE(B), true); \ EXTRA_DIR_WAIT_BEFORE(); \ - _APPLY_DIR(A, old_dir.a); _APPLY_DIR(B, old_dir.b); \ + _APPLY_DIR(A, old_fwd.a); _APPLY_DIR(B, old_fwd.b); \ EXTRA_DIR_WAIT_AFTER(); \ }while(0) @@ -3683,78 +3683,46 @@ void Stepper::report_positions() { case Z_AXIS: { #if CORE_IS_XZ - BABYSTEP_CORE(X, Z, direction, BABYSTEP_INVERT_Z, (CORESIGN(1)>0)); + BABYSTEP_CORE(X, Z, direction, ENABLED(BABYSTEP_INVERT_Z), (CORESIGN(1)>0)); #elif CORE_IS_YZ - BABYSTEP_CORE(Y, Z, direction, BABYSTEP_INVERT_Z, (CORESIGN(1)<0)); + BABYSTEP_CORE(Y, Z, direction, ENABLED(BABYSTEP_INVERT_Z), (CORESIGN(1)<0)); #elif DISABLED(DELTA) - BABYSTEP_AXIS(Z, direction, BABYSTEP_INVERT_Z); + BABYSTEP_AXIS(Z, direction, ENABLED(BABYSTEP_INVERT_Z)); #else // DELTA const bool z_direction = TERN_(BABYSTEP_INVERT_Z, !) direction; - NUM_AXIS_CODE( - enable_axis(X_AXIS), enable_axis(Y_AXIS), enable_axis(Z_AXIS), - enable_axis(I_AXIS), enable_axis(J_AXIS), enable_axis(K_AXIS), - enable_axis(U_AXIS), enable_axis(V_AXIS), enable_axis(W_AXIS) - ); + enable_axis(A_AXIS); enable_axis(B_AXIS); enable_axis(C_AXIS); DIR_WAIT_BEFORE(); - const xyz_byte_t old_dir = NUM_AXIS_ARRAY( - X_DIR_READ(), Y_DIR_READ(), Z_DIR_READ(), - I_DIR_READ(), J_DIR_READ(), K_DIR_READ(), - U_DIR_READ(), V_DIR_READ(), W_DIR_READ() - ); + const bool old_fwd[3] = { X_DIR_READ(), Y_DIR_READ(), Z_DIR_READ() }; - #ifdef X_DIR_WRITE - X_DIR_WRITE(z_direction); - #endif - #ifdef Y_DIR_WRITE - Y_DIR_WRITE(z_direction); - #endif - #ifdef Z_DIR_WRITE - Z_DIR_WRITE(z_direction); - #endif + X_DIR_WRITE(z_direction); + Y_DIR_WRITE(z_direction); + Z_DIR_WRITE(z_direction); DIR_WAIT_AFTER(); _SAVE_START(); - #ifdef X_STEP_WRITE - X_STEP_WRITE(STEP_STATE_X); - #endif - #ifdef Y_STEP_WRITE - Y_STEP_WRITE(STEP_STATE_Y); - #endif - #ifdef Z_STEP_WRITE - Z_STEP_WRITE(STEP_STATE_Z); - #endif + X_STEP_WRITE(STEP_STATE_X); + Y_STEP_WRITE(STEP_STATE_Y); + Z_STEP_WRITE(STEP_STATE_Z); _PULSE_WAIT(); - #ifdef X_STEP_WRITE - X_STEP_WRITE(!STEP_STATE_X); - #endif - #ifdef Y_STEP_WRITE - Y_STEP_WRITE(!STEP_STATE_Y); - #endif - #ifdef Z_STEP_WRITE - Z_STEP_WRITE(!STEP_STATE_Z); - #endif + X_STEP_WRITE(!STEP_STATE_X); + Y_STEP_WRITE(!STEP_STATE_Y); + Z_STEP_WRITE(!STEP_STATE_Z); // Restore direction bits EXTRA_DIR_WAIT_BEFORE(); - #ifdef X_DIR_WRITE - X_DIR_WRITE(old_dir.x); - #endif - #ifdef Y_DIR_WRITE - Y_DIR_WRITE(old_dir.y); - #endif - #ifdef Z_DIR_WRITE - Z_DIR_WRITE(old_dir.z); - #endif + X_DIR_WRITE(old_fwd[A_AXIS]); + Y_DIR_WRITE(old_fwd[B_AXIS]); + Z_DIR_WRITE(old_fwd[C_AXIS]); EXTRA_DIR_WAIT_AFTER(); @@ -3762,25 +3730,6 @@ void Stepper::report_positions() { } break; - #if HAS_I_AXIS - case I_AXIS: BABYSTEP_AXIS(I, direction, 0); break; - #endif - #if HAS_J_AXIS - case J_AXIS: BABYSTEP_AXIS(J, direction, 0); break; - #endif - #if HAS_K_AXIS - case K_AXIS: BABYSTEP_AXIS(K, direction, 0); break; - #endif - #if HAS_U_AXIS - case U_AXIS: BABYSTEP_AXIS(U, direction, 0); break; - #endif - #if HAS_V_AXIS - case V_AXIS: BABYSTEP_AXIS(V, direction, 0); break; - #endif - #if HAS_W_AXIS - case W_AXIS: BABYSTEP_AXIS(W, direction, 0); break; - #endif - default: break; } diff --git a/Marlin/src/module/stepper/indirection.h b/Marlin/src/module/stepper/indirection.h index 7669853b2b39..d60c539be53e 100644 --- a/Marlin/src/module/stepper/indirection.h +++ b/Marlin/src/module/stepper/indirection.h @@ -91,7 +91,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef X_DIR_INIT #define X_DIR_INIT() SET_OUTPUT(X_DIR_PIN) #define X_DIR_WRITE(STATE) WRITE(X_DIR_PIN,INVERT_DIR(X, STATE)) - #define X_DIR_READ() bool(READ(X_DIR_PIN)) + #define X_DIR_READ() INVERT_DIR(X, bool(READ(X_DIR_PIN))) #endif #define X_STEP_INIT() SET_OUTPUT(X_STEP_PIN) #ifndef X_STEP_WRITE @@ -109,7 +109,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef Y_DIR_INIT #define Y_DIR_INIT() SET_OUTPUT(Y_DIR_PIN) #define Y_DIR_WRITE(STATE) WRITE(Y_DIR_PIN,INVERT_DIR(Y, STATE)) - #define Y_DIR_READ() bool(READ(Y_DIR_PIN)) + #define Y_DIR_READ() INVERT_DIR(Y, bool(READ(Y_DIR_PIN))) #endif #define Y_STEP_INIT() SET_OUTPUT(Y_STEP_PIN) #ifndef Y_STEP_WRITE @@ -128,7 +128,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef Z_DIR_INIT #define Z_DIR_INIT() SET_OUTPUT(Z_DIR_PIN) #define Z_DIR_WRITE(STATE) WRITE(Z_DIR_PIN,INVERT_DIR(Z, STATE)) - #define Z_DIR_READ() bool(READ(Z_DIR_PIN)) + #define Z_DIR_READ() INVERT_DIR(Z, bool(READ(Z_DIR_PIN))) #endif #define Z_STEP_INIT() SET_OUTPUT(Z_STEP_PIN) #ifndef Z_STEP_WRITE @@ -147,7 +147,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef X2_DIR_INIT #define X2_DIR_INIT() SET_OUTPUT(X2_DIR_PIN) #define X2_DIR_WRITE(STATE) WRITE(X2_DIR_PIN,INVERT_DIR(X2, STATE)) - #define X2_DIR_READ() bool(READ(X2_DIR_PIN)) + #define X2_DIR_READ() INVERT_DIR(X2, bool(READ(X2_DIR_PIN))) #endif #define X2_STEP_INIT() SET_OUTPUT(X2_STEP_PIN) #ifndef X2_STEP_WRITE @@ -166,7 +166,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef Y2_DIR_INIT #define Y2_DIR_INIT() SET_OUTPUT(Y2_DIR_PIN) #define Y2_DIR_WRITE(STATE) WRITE(Y2_DIR_PIN,INVERT_DIR(Y2, STATE)) - #define Y2_DIR_READ() bool(READ(Y2_DIR_PIN)) + #define Y2_DIR_READ() INVERT_DIR(Y2, bool(READ(Y2_DIR_PIN))) #endif #define Y2_STEP_INIT() SET_OUTPUT(Y2_STEP_PIN) #ifndef Y2_STEP_WRITE @@ -187,7 +187,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef Z2_DIR_INIT #define Z2_DIR_INIT() SET_OUTPUT(Z2_DIR_PIN) #define Z2_DIR_WRITE(STATE) WRITE(Z2_DIR_PIN,INVERT_DIR(Z2, STATE)) - #define Z2_DIR_READ() bool(READ(Z2_DIR_PIN)) + #define Z2_DIR_READ() INVERT_DIR(Z2, bool(READ(Z2_DIR_PIN))) #endif #define Z2_STEP_INIT() SET_OUTPUT(Z2_STEP_PIN) #ifndef Z2_STEP_WRITE @@ -208,7 +208,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef Z3_DIR_INIT #define Z3_DIR_INIT() SET_OUTPUT(Z3_DIR_PIN) #define Z3_DIR_WRITE(STATE) WRITE(Z3_DIR_PIN,INVERT_DIR(Z3, STATE)) - #define Z3_DIR_READ() bool(READ(Z3_DIR_PIN)) + #define Z3_DIR_READ() INVERT_DIR(Z3, bool(READ(Z3_DIR_PIN))) #endif #define Z3_STEP_INIT() SET_OUTPUT(Z3_STEP_PIN) #ifndef Z3_STEP_WRITE @@ -229,7 +229,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef Z4_DIR_INIT #define Z4_DIR_INIT() SET_OUTPUT(Z4_DIR_PIN) #define Z4_DIR_WRITE(STATE) WRITE(Z4_DIR_PIN,INVERT_DIR(Z4, STATE)) - #define Z4_DIR_READ() bool(READ(Z4_DIR_PIN)) + #define Z4_DIR_READ() INVERT_DIR(Z4, bool(READ(Z4_DIR_PIN))) #endif #define Z4_STEP_INIT() SET_OUTPUT(Z4_STEP_PIN) #ifndef Z4_STEP_WRITE @@ -250,7 +250,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef I_DIR_INIT #define I_DIR_INIT() SET_OUTPUT(I_DIR_PIN) #define I_DIR_WRITE(STATE) WRITE(I_DIR_PIN,INVERT_DIR(I, STATE)) - #define I_DIR_READ() bool(READ(I_DIR_PIN)) + #define I_DIR_READ() INVERT_DIR(I, bool(READ(I_DIR_PIN))) #endif #define I_STEP_INIT() SET_OUTPUT(I_STEP_PIN) #ifndef I_STEP_WRITE @@ -269,7 +269,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef J_DIR_INIT #define J_DIR_INIT() SET_OUTPUT(J_DIR_PIN) #define J_DIR_WRITE(STATE) WRITE(J_DIR_PIN,INVERT_DIR(J, STATE)) - #define J_DIR_READ() bool(READ(J_DIR_PIN)) + #define J_DIR_READ() INVERT_DIR(J, bool(READ(J_DIR_PIN))) #endif #define J_STEP_INIT() SET_OUTPUT(J_STEP_PIN) #ifndef J_STEP_WRITE @@ -288,7 +288,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef K_DIR_INIT #define K_DIR_INIT() SET_OUTPUT(K_DIR_PIN) #define K_DIR_WRITE(STATE) WRITE(K_DIR_PIN,INVERT_DIR(K, STATE)) - #define K_DIR_READ() bool(READ(K_DIR_PIN)) + #define K_DIR_READ() INVERT_DIR(K, bool(READ(K_DIR_PIN))) #endif #define K_STEP_INIT() SET_OUTPUT(K_STEP_PIN) #ifndef K_STEP_WRITE @@ -307,7 +307,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef U_DIR_INIT #define U_DIR_INIT() SET_OUTPUT(U_DIR_PIN) #define U_DIR_WRITE(STATE) WRITE(U_DIR_PIN,INVERT_DIR(U, STATE)) - #define U_DIR_READ() bool(READ(U_DIR_PIN)) + #define U_DIR_READ() INVERT_DIR(U, bool(READ(U_DIR_PIN))) #endif #define U_STEP_INIT() SET_OUTPUT(U_STEP_PIN) #ifndef U_STEP_WRITE @@ -326,7 +326,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef V_DIR_INIT #define V_DIR_INIT() SET_OUTPUT(V_DIR_PIN) #define V_DIR_WRITE(STATE) WRITE(V_DIR_PIN,INVERT_DIR(V, STATE)) - #define V_DIR_READ() bool(READ(V_DIR_PIN)) + #define V_DIR_READ() INVERT_DIR(V, bool(READ(V_DIR_PIN))) #endif #define V_STEP_INIT() SET_OUTPUT(V_STEP_PIN) #ifndef V_STEP_WRITE @@ -345,7 +345,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef W_DIR_INIT #define W_DIR_INIT() SET_OUTPUT(W_DIR_PIN) #define W_DIR_WRITE(STATE) WRITE(W_DIR_PIN,INVERT_DIR(W, STATE)) - #define W_DIR_READ() bool(READ(W_DIR_PIN)) + #define W_DIR_READ() INVERT_DIR(W, bool(READ(W_DIR_PIN))) #endif #define W_STEP_INIT() SET_OUTPUT(W_STEP_PIN) #ifndef W_STEP_WRITE @@ -363,7 +363,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef E0_DIR_INIT #define E0_DIR_INIT() SET_OUTPUT(E0_DIR_PIN) #define E0_DIR_WRITE(STATE) WRITE(E0_DIR_PIN,INVERT_DIR(E0, STATE)) - #define E0_DIR_READ() bool(READ(E0_DIR_PIN)) + #define E0_DIR_READ() INVERT_DIR(E0, bool(READ(E0_DIR_PIN))) #endif #define E0_STEP_INIT() SET_OUTPUT(E0_STEP_PIN) #ifndef E0_STEP_WRITE @@ -380,7 +380,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef E1_DIR_INIT #define E1_DIR_INIT() SET_OUTPUT(E1_DIR_PIN) #define E1_DIR_WRITE(STATE) WRITE(E1_DIR_PIN,INVERT_DIR(E1, STATE)) - #define E1_DIR_READ() bool(READ(E1_DIR_PIN)) + #define E1_DIR_READ() INVERT_DIR(E1, bool(READ(E1_DIR_PIN))) #endif #define E1_STEP_INIT() SET_OUTPUT(E1_STEP_PIN) #ifndef E1_STEP_WRITE @@ -397,7 +397,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef E2_DIR_INIT #define E2_DIR_INIT() SET_OUTPUT(E2_DIR_PIN) #define E2_DIR_WRITE(STATE) WRITE(E2_DIR_PIN,INVERT_DIR(E2, STATE)) - #define E2_DIR_READ() bool(READ(E2_DIR_PIN)) + #define E2_DIR_READ() INVERT_DIR(E2, bool(READ(E2_DIR_PIN))) #endif #define E2_STEP_INIT() SET_OUTPUT(E2_STEP_PIN) #ifndef E2_STEP_WRITE @@ -414,7 +414,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef E3_DIR_INIT #define E3_DIR_INIT() SET_OUTPUT(E3_DIR_PIN) #define E3_DIR_WRITE(STATE) WRITE(E3_DIR_PIN,INVERT_DIR(E3, STATE)) - #define E3_DIR_READ() bool(READ(E3_DIR_PIN)) + #define E3_DIR_READ() INVERT_DIR(E3, bool(READ(E3_DIR_PIN))) #endif #define E3_STEP_INIT() SET_OUTPUT(E3_STEP_PIN) #ifndef E3_STEP_WRITE @@ -431,7 +431,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef E4_DIR_INIT #define E4_DIR_INIT() SET_OUTPUT(E4_DIR_PIN) #define E4_DIR_WRITE(STATE) WRITE(E4_DIR_PIN,INVERT_DIR(E4, STATE)) - #define E4_DIR_READ() bool(READ(E4_DIR_PIN)) + #define E4_DIR_READ() INVERT_DIR(E4, bool(READ(E4_DIR_PIN))) #endif #define E4_STEP_INIT() SET_OUTPUT(E4_STEP_PIN) #ifndef E4_STEP_WRITE @@ -448,7 +448,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef E5_DIR_INIT #define E5_DIR_INIT() SET_OUTPUT(E5_DIR_PIN) #define E5_DIR_WRITE(STATE) WRITE(E5_DIR_PIN,INVERT_DIR(E5, STATE)) - #define E5_DIR_READ() bool(READ(E5_DIR_PIN)) + #define E5_DIR_READ() INVERT_DIR(E5, bool(READ(E5_DIR_PIN))) #endif #define E5_STEP_INIT() SET_OUTPUT(E5_STEP_PIN) #ifndef E5_STEP_WRITE @@ -465,7 +465,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef E6_DIR_INIT #define E6_DIR_INIT() SET_OUTPUT(E6_DIR_PIN) #define E6_DIR_WRITE(STATE) WRITE(E6_DIR_PIN,INVERT_DIR(E6, STATE)) - #define E6_DIR_READ() bool(READ(E6_DIR_PIN)) + #define E6_DIR_READ() INVERT_DIR(E6, bool(READ(E6_DIR_PIN))) #endif #define E6_STEP_INIT() SET_OUTPUT(E6_STEP_PIN) #ifndef E6_STEP_WRITE @@ -482,7 +482,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #ifndef E7_DIR_INIT #define E7_DIR_INIT() SET_OUTPUT(E7_DIR_PIN) #define E7_DIR_WRITE(STATE) WRITE(E7_DIR_PIN,INVERT_DIR(E7, STATE)) - #define E7_DIR_READ() bool(READ(E7_DIR_PIN)) + #define E7_DIR_READ() INVERT_DIR(E7, bool(READ(E7_DIR_PIN))) #endif #define E7_STEP_INIT() SET_OUTPUT(E7_STEP_PIN) #ifndef E7_STEP_WRITE diff --git a/buildroot/tests/FYSETC_F6 b/buildroot/tests/FYSETC_F6 index dbfb76717189..314e207c5806 100755 --- a/buildroot/tests/FYSETC_F6 +++ b/buildroot/tests/FYSETC_F6 @@ -11,7 +11,7 @@ set -e # restore_configs opt_set MOTHERBOARD BOARD_FYSETC_F6_13 LCD_SERIAL_PORT 1 DGUS_LCD_UI FYSETC -exec_test $1 $2 "FYSETC F6 1.3 with DGUS (FYSETC)" "$3" +exec_test $1 $2 "DGUS (FYSETC)" "$3" # # Test DGUS_LCD_UI RELOADED @@ -20,7 +20,14 @@ restore_configs opt_set MOTHERBOARD BOARD_FYSETC_F6_13 TEMP_SENSOR_BED 2 LCD_SERIAL_PORT 1 DGUS_LCD_UI RELOADED GRID_MAX_POINTS_X 5 opt_enable ADVANCED_PAUSE_FEATURE LCD_BED_TRAMMING CLASSIC_JERK BABYSTEPPING BABYSTEP_ALWAYS_AVAILABLE BABYSTEP_ZPROBE_OFFSET \ BLTOUCH Z_SAFE_HOMING AUTO_BED_LEVELING_BILINEAR NOZZLE_PARK_FEATURE -exec_test $1 $2 "FYSETC F6 1.3 with DGUS (RELOADED)" "$3" +exec_test $1 $2 "ABL | DGUS (RELOADED)" "$3" + +# +# Delta Config (FLSUN AC because it's complex) +# +use_example_configs delta/FLSUN/auto_calibrate +opt_set MOTHERBOARD BOARD_FYSETC_F6_13 +exec_test $1 $2 "DELTA / FLSUN Auto-Calibrate" "$3" # # Delta Config (generic) + UBL + ALLEN_KEY + EEPROM_SETTINGS + OLED_PANEL_TINYBOY2 @@ -29,8 +36,8 @@ use_example_configs delta/generic opt_set MOTHERBOARD BOARD_FYSETC_F6_13 LCD_LANGUAGE ko_KR opt_enable RESTORE_LEVELING_AFTER_G28 EEPROM_SETTINGS EEPROM_CHITCHAT \ Z_PROBE_ALLEN_KEY AUTO_BED_LEVELING_UBL UBL_MESH_WIZARD \ - OLED_PANEL_TINYBOY2 MESH_EDIT_GFX_OVERLAY DELTA_CALIBRATION_MENU -exec_test $1 $2 "DELTA, FYSETC F6 1.3, UBL, Allen Key, EEPROM, OLED_PANEL_TINYBOY2..." "$3" + OLED_PANEL_TINYBOY2 MESH_EDIT_GFX_OVERLAY DELTA_CALIBRATION_MENU BABYSTEPPING +exec_test $1 $2 "DELTA | UBL | Allen Key | EEPROM | OLED_PANEL_TINYBOY2..." "$3" # # Test mixed TMC config @@ -44,14 +51,7 @@ opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER \ MARLIN_BRICKOUT MARLIN_INVADERS MARLIN_SNAKE \ MONITOR_DRIVER_STATUS STEALTHCHOP_XY STEALTHCHOP_Z STEALTHCHOP_E HYBRID_THRESHOLD \ SENSORLESS_HOMING TMC_DEBUG M114_DETAIL -exec_test $1 $2 "RAMPS | Mixed TMC | Sensorless | RRDFGSC | Games" "$3" - -# -# Delta Config (FLSUN AC because it's complex) -# -use_example_configs delta/FLSUN/auto_calibrate -opt_set MOTHERBOARD BOARD_FYSETC_F6_13 -exec_test $1 $2 "RAMPS 1.3 | DELTA | FLSUN AC Config" "$3" +exec_test $1 $2 "Mixed TMC | Sensorless | RRDFGSC | Games" "$3" # # SCARA with Mixed TMC @@ -65,7 +65,7 @@ opt_set MOTHERBOARD BOARD_FYSETC_F6_13 \ opt_enable FIX_MOUNTED_PROBE AUTO_BED_LEVELING_BILINEAR PAUSE_BEFORE_DEPLOY_STOW \ FYSETC_242_OLED_12864 EEPROM_SETTINGS EEPROM_CHITCHAT M114_DETAIL Z_SAFE_HOMING \ STEALTHCHOP_XY STEALTHCHOP_Z STEALTHCHOP_E HYBRID_THRESHOLD SENSORLESS_HOMING EDGE_STEPPING -exec_test $1 $2 "FYSETC_F6 | SCARA | Mixed TMC | EEPROM" "$3" +exec_test $1 $2 "SCARA | Mixed TMC | EEPROM" "$3" # clean up restore_configs From 08207fd0869b048a62811aa2b889be0620b7e405 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 8 May 2023 05:26:12 -0500 Subject: [PATCH 143/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Ext?= =?UTF-8?q?end=20AxisBits?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/types.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index 6ef23f066c29..6d4e5c643e1c 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -842,28 +842,28 @@ class AxisBits { }; }; - AxisBits() { bits = 0; } + AxisBits() { reset(); } // Constructor, setter, and operator= for bit mask AxisBits(const el p) { set(p); } - - void reset() { bits = 0; } - - void set(const el p) { bits = el(p); } + FI void set(const el p) { bits = el(p); } FI AxisBits& operator=(const el p) { set(p); return *this; } + FI void reset() { set(0); } + FI void fill() { set(_BV(NUM_AXIS_ENUMS) - 1); } + #define MSET(pE,pX,pY,pZ,pI,pJ,pK,pU,pV,pW) LOGICAL_AXIS_CODE(e=pE, x=pX, y=pY, z=pZ, i=pI, j=pJ, k=pK, u=pU, v=pV, w=pW) // Constructor, setter, and operator= for XYZE type AxisBits(const xyze_bool_t &p) { set(p); } - void set(const xyze_bool_t &p) { + FI void set(const xyze_bool_t &p) { MSET(p.e, p.x, p.y, p.z, p.i, p.j, p.k, p.u, p.v, p.w); } FI AxisBits& operator=(const xyze_bool_t &p) { set(p); return *this; } // Constructor, setter, and operator= for bool array AxisBits(const bool (&p)[LOGICAL_AXES]) { set(p); } - void set(const bool (&p)[LOGICAL_AXES]) { + FI void set(const bool (&p)[LOGICAL_AXES]) { MSET(p[E_AXIS], p[X_AXIS], p[Y_AXIS], p[Z_AXIS], p[I_AXIS], p[J_AXIS], p[K_AXIS], p[U_AXIS], p[V_AXIS], p[W_AXIS]); From 70efb515b16a9c8b5ebd0dae7348a0194841c4e3 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 8 May 2023 05:27:55 -0500 Subject: [PATCH 144/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20PI?= =?UTF-8?q?=20=3D>=20M=5FPI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ftdi_eve_lib/extended/circular_progress.cpp | 16 ++++++++-------- Marlin/src/module/ft_motion.cpp | 2 +- Marlin/src/module/planner.cpp | 16 ++++++++-------- 3 files changed, 17 insertions(+), 17 deletions(-) diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/circular_progress.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/circular_progress.cpp index 32cc37d2e2f7..7849b1e4616f 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/circular_progress.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/circular_progress.cpp @@ -27,11 +27,11 @@ namespace FTDI { void draw_circular_progress(CommandProcessor& cmd, int x, int y, int w, int h, float percent, char *text, uint32_t bgcolor, uint32_t fgcolor) { const float rim = 0.3; - const float a = percent/100.0*2.0*PI; - const float a1 = min(PI/2, a); - const float a2 = min(PI/2, a-a1); - const float a3 = min(PI/2, a-a1-a2); - const float a4 = min(PI/2, a-a1-a2-a3); + const float a = percent/100.0*2.0*M_PI; + const float a1 = min(M_PI/2, a); + const float a2 = min(M_PI/2, a-a1); + const float a3 = min(M_PI/2, a-a1-a2); + const float a4 = min(M_PI/2, a-a1-a2-a3); const int ro = min(w,h) * 8; const int rr = ro * rim; @@ -69,21 +69,21 @@ namespace FTDI { cmd.cmd(VERTEX2F(cx + ro*sin(a1) + 16,cy - ro*cos(a1) + 8)); // Paint lower-right quadrant - if (a > PI/2) { + if (a > M_PI/2) { cmd.cmd(BEGIN(EDGE_STRIP_R)); cmd.cmd(VERTEX2F(cx, cy)); cmd.cmd(VERTEX2F(cx + ro*cos(a2),cy + ro*sin(a2) + 16)); } // Paint lower-left quadrant - if (a > PI) { + if (a > M_PI) { cmd.cmd(BEGIN(EDGE_STRIP_B)); cmd.cmd(VERTEX2F(cx, cy)); cmd.cmd(VERTEX2F(cx - ro*sin(a3) - 8,cy + ro*cos(a3))); } // Paint upper-left quadrant - if (a > 1.5*PI) { + if (a > 1.5*M_PI) { cmd.cmd(BEGIN(EDGE_STRIP_L)); cmd.cmd(VERTEX2F(cx, cy)); cmd.cmd(VERTEX2F(cx - ro*cos(a4),cy - ro*sin(a4))); diff --git a/Marlin/src/module/ft_motion.cpp b/Marlin/src/module/ft_motion.cpp index bc6ba8d3e364..97dae881f889 100644 --- a/Marlin/src/module/ft_motion.cpp +++ b/Marlin/src/module/ft_motion.cpp @@ -288,7 +288,7 @@ void FxdTiCtrl::loop() { // To be called on init or mode or zeta change. void FxdTiCtrl::updateShapingA(const_float_t zeta/*=FTM_SHAPING_ZETA*/, const_float_t vtol/*=FTM_SHAPING_V_TOL*/) { - const float K = exp( -zeta * PI / sqrt(1.0f - sq(zeta)) ), + const float K = exp( -zeta * M_PI / sqrt(1.0f - sq(zeta)) ), K2 = sq(K); switch (cfg_mode) { diff --git a/Marlin/src/module/planner.cpp b/Marlin/src/module/planner.cpp index 52519b805c1b..1b995a322476 100644 --- a/Marlin/src/module/planner.cpp +++ b/Marlin/src/module/planner.cpp @@ -3173,14 +3173,14 @@ bool Planner::buffer_line(const xyze_pos_t &cart, const_feedRate_t fr_mm_s if (delta.a <= POLAR_FAST_RADIUS ) calculated_feedrate = settings.max_feedrate_mm_s[Y_AXIS]; else { - // Normalized vector of movement - const float diffBLength = ABS((2.0f * PI * diff.a) * (diff.b / 360.0f)), - diffTheta = DEGREES(ATAN2(diff.a, diffBLength)), - normalizedTheta = 1.0f - (ABS(diffTheta > 90.0f ? 180.0f - diffTheta : diffTheta) / 90.0f); - - // Normalized position along the radius - const float radiusRatio = PRINTABLE_RADIUS/delta.a; - calculated_feedrate += (fr_mm_s * radiusRatio * normalizedTheta); + // Normalized vector of movement + const float diffBLength = ABS((2.0f * M_PI * diff.a) * (diff.b / 360.0f)), + diffTheta = DEGREES(ATAN2(diff.a, diffBLength)), + normalizedTheta = 1.0f - (ABS(diffTheta > 90.0f ? 180.0f - diffTheta : diffTheta) / 90.0f); + + // Normalized position along the radius + const float radiusRatio = (PRINTABLE_RADIUS) / delta.a; + calculated_feedrate += (fr_mm_s * radiusRatio * normalizedTheta); } } const feedRate_t feedrate = calculated_feedrate; From 3e9848f49c6565ea1c630c272e32e27b0858d85a Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Tue, 9 May 2023 00:27:27 +0000 Subject: [PATCH 145/427] [cron] Bump distribution date (2023-05-09) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 5ec65a5d7fa5..ed2f818ecb60 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-08" +//#define STRING_DISTRIBUTION_DATE "2023-05-09" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 5a8a55507c87..47faccbc259d 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-08" + #define STRING_DISTRIBUTION_DATE "2023-05-09" #endif /** From 1f9bfc5c7491d802d242623f8253b1f52c0917a3 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Wed, 10 May 2023 06:59:25 +1200 Subject: [PATCH 146/427] =?UTF-8?q?=F0=9F=9A=B8=20Optional=20X-Axis=20(#25?= =?UTF-8?q?418)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: alextrical <35117191+alextrical@users.noreply.github.com> Co-authored-by: Scott Lahteine --- Marlin/src/core/language.h | 10 +- Marlin/src/core/serial.cpp | 10 +- Marlin/src/core/serial.h | 4 +- Marlin/src/core/types.h | 136 ++-- Marlin/src/feature/fwretract.cpp | 2 - Marlin/src/feature/tmc_util.cpp | 20 +- Marlin/src/feature/tmc_util.h | 2 +- Marlin/src/gcode/calibrate/G28.cpp | 666 +++++++++--------- Marlin/src/gcode/calibrate/G425.cpp | 14 +- Marlin/src/gcode/calibrate/M425.cpp | 24 +- Marlin/src/gcode/config/M200-M205.cpp | 82 ++- Marlin/src/gcode/config/M217.cpp | 42 +- Marlin/src/gcode/config/M218.cpp | 12 +- Marlin/src/gcode/config/M92.cpp | 30 +- Marlin/src/gcode/control/M17_M18_M84.cpp | 24 +- Marlin/src/gcode/feature/pause/G60.cpp | 23 +- Marlin/src/gcode/feature/trinamic/M569.cpp | 24 +- .../src/gcode/feature/trinamic/M911-M914.cpp | 2 +- Marlin/src/inc/Conditionals_LCD.h | 35 +- Marlin/src/inc/Conditionals_adv.h | 18 + Marlin/src/inc/Conditionals_post.h | 84 ++- Marlin/src/inc/SanityCheck.h | 12 +- Marlin/src/lcd/HD44780/marlinui_HD44780.cpp | 20 +- Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp | 16 +- Marlin/src/lcd/dogm/status_screen_DOGM.cpp | 37 +- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 18 +- .../lcd/e3v2/marlinui/ui_status_480x272.cpp | 4 +- .../extui/dgus/fysetc/DGUSScreenHandler.cpp | 10 +- .../extui/dgus/hiprecy/DGUSScreenHandler.cpp | 10 +- .../lcd/extui/dgus/mks/DGUSScreenHandler.cpp | 20 +- .../extui/dgus/origin/DGUSScreenHandler.cpp | 10 +- .../generic/move_axis_screen.cpp | 6 +- .../mks_ui/draw_acceleration_settings.cpp | 6 +- Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp | 8 +- Marlin/src/lcd/extui/ui_api.cpp | 8 +- Marlin/src/lcd/marlinui.cpp | 2 +- Marlin/src/lcd/menu/menu_advanced.cpp | 20 +- Marlin/src/lcd/menu/menu_backlash.cpp | 4 +- Marlin/src/lcd/menu/menu_motion.cpp | 6 +- Marlin/src/libs/vector_3.h | 10 +- Marlin/src/module/endstops.cpp | 28 +- Marlin/src/module/motion.cpp | 258 +++---- Marlin/src/module/motion.h | 30 +- Marlin/src/module/planner.cpp | 24 +- Marlin/src/module/probe.h | 2 +- Marlin/src/module/settings.cpp | 59 +- Marlin/src/module/stepper.cpp | 30 +- Marlin/src/module/stepper.h | 2 +- Marlin/src/module/stepper/indirection.h | 39 +- Marlin/src/module/stepper/trinamic.cpp | 2 +- Marlin/src/module/stepper/trinamic.h | 2 +- Marlin/src/pins/sensitive_pins.h | 77 +- buildroot/tests/mega2560 | 13 + ini/stm32g0.ini | 5 +- 54 files changed, 1169 insertions(+), 893 deletions(-) diff --git a/Marlin/src/core/language.h b/Marlin/src/core/language.h index 0c5bc0af9bd4..c951012b6df2 100644 --- a/Marlin/src/core/language.h +++ b/Marlin/src/core/language.h @@ -324,10 +324,12 @@ // // Endstop Names used by Endstops::report_states // -#define STR_X_MIN "x_min" -#define STR_X_MAX "x_max" -#define STR_X2_MIN "x2_min" -#define STR_X2_MAX "x2_max" +#if HAS_X_AXIS + #define STR_X_MIN "x_min" + #define STR_X_MAX "x_max" + #define STR_X2_MIN "x2_min" + #define STR_X2_MAX "x2_max" +#endif #if HAS_Y_AXIS #define STR_Y_MIN "y_min" diff --git a/Marlin/src/core/serial.cpp b/Marlin/src/core/serial.cpp index 64704c1e6cb4..8f3a59c81408 100644 --- a/Marlin/src/core/serial.cpp +++ b/Marlin/src/core/serial.cpp @@ -96,10 +96,12 @@ void print_bin(uint16_t val) { } } -void print_pos(NUM_AXIS_ARGS(const_float_t), FSTR_P const prefix/*=nullptr*/, FSTR_P const suffix/*=nullptr*/) { +void print_pos(NUM_AXIS_ARGS_(const_float_t) FSTR_P const prefix/*=nullptr*/, FSTR_P const suffix/*=nullptr*/) { if (prefix) serial_print(prefix); - SERIAL_ECHOPGM_P( - LIST_N(DOUBLE(NUM_AXES), SP_X_STR, x, SP_Y_STR, y, SP_Z_STR, z, SP_I_STR, i, SP_J_STR, j, SP_K_STR, k, SP_U_STR, u, SP_V_STR, v, SP_W_STR, w) - ); + #if NUM_AXES + SERIAL_ECHOPGM_P( + LIST_N(DOUBLE(NUM_AXES), SP_X_STR, x, SP_Y_STR, y, SP_Z_STR, z, SP_I_STR, i, SP_J_STR, j, SP_K_STR, k, SP_U_STR, u, SP_V_STR, v, SP_W_STR, w) + ); + #endif if (suffix) serial_print(suffix); else SERIAL_EOL(); } diff --git a/Marlin/src/core/serial.h b/Marlin/src/core/serial.h index a741d4b1e4d0..475761216c69 100644 --- a/Marlin/src/core/serial.h +++ b/Marlin/src/core/serial.h @@ -340,10 +340,10 @@ void serial_spaces(uint8_t count); void serial_offset(const_float_t v, const uint8_t sp=0); // For v==0 draw space (sp==1) or plus (sp==2) void print_bin(const uint16_t val); -void print_pos(NUM_AXIS_ARGS(const_float_t), FSTR_P const prefix=nullptr, FSTR_P const suffix=nullptr); +void print_pos(NUM_AXIS_ARGS_(const_float_t) FSTR_P const prefix=nullptr, FSTR_P const suffix=nullptr); inline void print_pos(const xyze_pos_t &xyze, FSTR_P const prefix=nullptr, FSTR_P const suffix=nullptr) { - print_pos(NUM_AXIS_ELEM(xyze), prefix, suffix); + print_pos(NUM_AXIS_ELEM_(xyze) prefix, suffix); } #define SERIAL_POS(SUFFIX,VAR) do { print_pos(VAR, F(" " STRINGIFY(VAR) "="), F(" : " SUFFIX "\n")); }while(0) diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index 6d4e5c643e1c..173945a458ee 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -36,31 +36,47 @@ template struct IF { typedef L type; }; #define ALL_AXIS_NAMES X, X2, Y, Y2, Z, Z2, Z3, Z4, I, J, K, U, V, W, E0, E1, E2, E3, E4, E5, E6, E7 -#define NUM_AXIS_GANG(V...) GANG_N(NUM_AXES, V) -#define NUM_AXIS_CODE(V...) CODE_N(NUM_AXES, V) -#define NUM_AXIS_LIST(V...) LIST_N(NUM_AXES, V) -#define NUM_AXIS_LIST_1(V) LIST_N_1(NUM_AXES, V) -#define NUM_AXIS_ARRAY(V...) { NUM_AXIS_LIST(V) } -#define NUM_AXIS_ARRAY_1(V) { NUM_AXIS_LIST_1(V) } -#define NUM_AXIS_ARGS(T) NUM_AXIS_LIST(T x, T y, T z, T i, T j, T k, T u, T v, T w) -#define NUM_AXIS_ELEM(O) NUM_AXIS_LIST(O.x, O.y, O.z, O.i, O.j, O.k, O.u, O.v, O.w) -#define NUM_AXIS_DEFS(T,V) NUM_AXIS_LIST(T x=V, T y=V, T z=V, T i=V, T j=V, T k=V, T u=V, T v=V, T w=V) -#define MAIN_AXIS_NAMES NUM_AXIS_LIST(X, Y, Z, I, J, K, U, V, W) -#define MAIN_AXIS_MAP(F) MAP(F, MAIN_AXIS_NAMES) -#define STR_AXES_MAIN NUM_AXIS_GANG("X", "Y", "Z", STR_I, STR_J, STR_K, STR_U, STR_V, STR_W) - -#define LOGICAL_AXIS_GANG(E,V...) NUM_AXIS_GANG(V) GANG_ITEM_E(E) -#define LOGICAL_AXIS_CODE(E,V...) NUM_AXIS_CODE(V) CODE_ITEM_E(E) -#define LOGICAL_AXIS_LIST(E,V...) NUM_AXIS_LIST(V) LIST_ITEM_E(E) -#define LOGICAL_AXIS_LIST_1(V) NUM_AXIS_LIST_1(V) LIST_ITEM_E(V) +#define NUM_AXIS_GANG(V...) GANG_N(NUM_AXES, V) +#define NUM_AXIS_CODE(V...) CODE_N(NUM_AXES, V) +#define NUM_AXIS_LIST(V...) LIST_N(NUM_AXES, V) +#define NUM_AXIS_LIST_1(V) LIST_N_1(NUM_AXES, V) +#define NUM_AXIS_ARRAY(V...) { NUM_AXIS_LIST(V) } +#define NUM_AXIS_ARRAY_1(V) { NUM_AXIS_LIST_1(V) } +#define NUM_AXIS_ARGS(T) NUM_AXIS_LIST(T x, T y, T z, T i, T j, T k, T u, T v, T w) +#define NUM_AXIS_ELEM(O) NUM_AXIS_LIST(O.x, O.y, O.z, O.i, O.j, O.k, O.u, O.v, O.w) +#define NUM_AXIS_DEFS(T,V) NUM_AXIS_LIST(T x=V, T y=V, T z=V, T i=V, T j=V, T k=V, T u=V, T v=V, T w=V) +#define MAIN_AXIS_NAMES NUM_AXIS_LIST(X, Y, Z, I, J, K, U, V, W) +#define STR_AXES_MAIN NUM_AXIS_GANG("X", "Y", "Z", STR_I, STR_J, STR_K, STR_U, STR_V, STR_W) + +#if NUM_AXES + #define NUM_AXES_SEP , + #define MAIN_AXIS_MAP(F) MAP(F, MAIN_AXIS_NAMES) + #define OPTARGS_LOGICAL(T) , LOGICAL_AXIS_ARGS(T) +#else + #define NUM_AXES_SEP + #define MAIN_AXIS_MAP(F) + #define OPTARGS_LOGICAL(T) +#endif + +#define NUM_AXIS_GANG_(V...) NUM_AXIS_GANG(V) NUM_AXES_SEP +#define NUM_AXIS_LIST_(V...) NUM_AXIS_LIST(V) NUM_AXES_SEP +#define NUM_AXIS_LIST_1_(V...) NUM_AXIS_LIST_1(V) NUM_AXES_SEP +#define NUM_AXIS_ARGS_(T) NUM_AXIS_ARGS(T) NUM_AXES_SEP +#define NUM_AXIS_ELEM_(T) NUM_AXIS_ELEM(T) NUM_AXES_SEP +#define MAIN_AXIS_NAMES_ MAIN_AXIS_NAMES NUM_AXES_SEP + +#define LOGICAL_AXIS_GANG(E,V...) NUM_AXIS_GANG(V) GANG_ITEM_E(E) +#define LOGICAL_AXIS_CODE(E,V...) NUM_AXIS_CODE(V) CODE_ITEM_E(E) +#define LOGICAL_AXIS_LIST(E,V...) NUM_AXIS_LIST(V) LIST_ITEM_E(E) +#define LOGICAL_AXIS_LIST_1(V) NUM_AXIS_LIST_1(V) LIST_ITEM_E(V) #define LOGICAL_AXIS_ARRAY(E,V...) { LOGICAL_AXIS_LIST(E,V) } #define LOGICAL_AXIS_ARRAY_1(V) { LOGICAL_AXIS_LIST_1(V) } -#define LOGICAL_AXIS_ARGS(T) LOGICAL_AXIS_LIST(T e, T x, T y, T z, T i, T j, T k, T u, T v, T w) -#define LOGICAL_AXIS_ELEM(O) LOGICAL_AXIS_LIST(O.e, O.x, O.y, O.z, O.i, O.j, O.k, O.u, O.v, O.w) -#define LOGICAL_AXIS_DECL(T,V) LOGICAL_AXIS_LIST(T e=V, T x=V, T y=V, T z=V, T i=V, T j=V, T k=V, T u=V, T v=V, T w=V) -#define LOGICAL_AXIS_NAMES LOGICAL_AXIS_LIST(E, X, Y, Z, I, J, K, U, V, W) -#define LOGICAL_AXIS_MAP(F) MAP(F, LOGICAL_AXIS_NAMES) -#define STR_AXES_LOGICAL LOGICAL_AXIS_GANG("E", "X", "Y", "Z", STR_I, STR_J, STR_K, STR_U, STR_V, STR_W) +#define LOGICAL_AXIS_ARGS(T) LOGICAL_AXIS_LIST(T e, T x, T y, T z, T i, T j, T k, T u, T v, T w) +#define LOGICAL_AXIS_ELEM(O) LOGICAL_AXIS_LIST(O.e, O.x, O.y, O.z, O.i, O.j, O.k, O.u, O.v, O.w) +#define LOGICAL_AXIS_DECL(T,V) LOGICAL_AXIS_LIST(T e=V, T x=V, T y=V, T z=V, T i=V, T j=V, T k=V, T u=V, T v=V, T w=V) +#define LOGICAL_AXIS_NAMES LOGICAL_AXIS_LIST(E, X, Y, Z, I, J, K, U, V, W) +#define LOGICAL_AXIS_MAP(F) MAP(F, LOGICAL_AXIS_NAMES) +#define STR_AXES_LOGICAL LOGICAL_AXIS_GANG("E", "X", "Y", "Z", STR_I, STR_J, STR_K, STR_U, STR_V, STR_W) #define XYZ_GANG(V...) GANG_N(PRIMARY_LINEAR_AXES, V) #define XYZ_CODE(V...) CODE_N(PRIMARY_LINEAR_AXES, V) @@ -75,8 +91,13 @@ template struct IF { typedef L type; }; #endif #if HAS_EXTRUDERS - #define LIST_ITEM_E(N) , N - #define CODE_ITEM_E(N) ; N + #if NUM_AXES + #define LIST_ITEM_E(N) , N + #define CODE_ITEM_E(N) ; N + #else + #define LIST_ITEM_E(N) N + #define CODE_ITEM_E(N) N + #endif #define GANG_ITEM_E(N) N #else #define LIST_ITEM_E(N) @@ -166,37 +187,38 @@ typedef struct AxisFlags { enum AxisEnum : uint8_t { // Linear axes may be controlled directly or indirectly - NUM_AXIS_LIST(X_AXIS, Y_AXIS, Z_AXIS, I_AXIS, J_AXIS, K_AXIS, U_AXIS, V_AXIS, W_AXIS) + NUM_AXIS_LIST_(X_AXIS, Y_AXIS, Z_AXIS, I_AXIS, J_AXIS, K_AXIS, U_AXIS, V_AXIS, W_AXIS) - // Extruder axes may be considered distinctly - #define _EN_ITEM(N) , E##N##_AXIS + #define _EN_ITEM(N) E##N##_AXIS, REPEAT(EXTRUDERS, _EN_ITEM) #undef _EN_ITEM // Core also keeps toolhead directions #if ANY(IS_CORE, MARKFORGED_XY, MARKFORGED_YX) - , X_HEAD, Y_HEAD, Z_HEAD + X_HEAD, Y_HEAD, Z_HEAD, #endif // Distinct axes, including all E and Core - , NUM_AXIS_ENUMS + NUM_AXIS_ENUMS, // Most of the time we refer only to the single E_AXIS #if HAS_EXTRUDERS - , E_AXIS = E0_AXIS + E_AXIS = E0_AXIS, #endif // A, B, and C are for DELTA, SCARA, etc. - , A_AXIS = X_AXIS + #if HAS_X_AXIS + A_AXIS = X_AXIS, + #endif #if HAS_Y_AXIS - , B_AXIS = Y_AXIS + B_AXIS = Y_AXIS, #endif #if HAS_Z_AXIS - , C_AXIS = Z_AXIS + C_AXIS = Z_AXIS, #endif // To refer to all or none - , ALL_AXES_ENUM = 0xFE, NO_AXIS_ENUM = 0xFF + ALL_AXES_ENUM = 0xFE, NO_AXIS_ENUM = 0xFF }; // @@ -336,7 +358,9 @@ struct XYval { FI void reset() { x = y = 0; } // Setters taking struct types and arrays - FI void set(const T px) { x = px; } + #if HAS_X_AXIS + FI void set(const T px) { x = px; } + #endif #if HAS_Y_AXIS FI void set(const T px, const T py) { x = px; y = py; } FI void set(const T (&arr)[XY]) { x = arr[0]; y = arr[1]; } @@ -453,9 +477,9 @@ struct XYval { FI XYval& operator<<=(const int &p) { _LS(x); _LS(y); return *this; } // Exact comparisons. For floats a "NEAR" operation may be better. - FI bool operator==(const XYval &rs) const { return NUM_AXIS_GANG(x == rs.x, && y == rs.y,,,,,,, ); } - FI bool operator==(const XYZval &rs) const { return NUM_AXIS_GANG(x == rs.x, && y == rs.y,,,,,,, ); } - FI bool operator==(const XYZEval &rs) const { return NUM_AXIS_GANG(x == rs.x, && y == rs.y,,,,,,, ); } + FI bool operator==(const XYval &rs) const { return true NUM_AXIS_GANG(&& x == rs.x, && y == rs.y,,,,,,, ); } + FI bool operator==(const XYZval &rs) const { return true NUM_AXIS_GANG(&& x == rs.x, && y == rs.y,,,,,,, ); } + FI bool operator==(const XYZEval &rs) const { return true NUM_AXIS_GANG(&& x == rs.x, && y == rs.y,,,,,,, ); } FI bool operator!=(const XYval &rs) const { return !operator==(rs); } FI bool operator!=(const XYZval &rs) const { return !operator==(rs); } FI bool operator!=(const XYZEval &rs) const { return !operator==(rs); } @@ -467,23 +491,25 @@ struct XYval { template struct XYZval { union { - struct { T NUM_AXIS_ARGS(); }; - struct { T NUM_AXIS_LIST(a, b, c, _i, _j, _k, _u, _v, _w); }; + #if NUM_AXES + struct { T NUM_AXIS_ARGS(); }; + struct { T NUM_AXIS_LIST(a, b, c, _i, _j, _k, _u, _v, _w); }; + #endif T pos[NUM_AXES]; }; // Set all to 0 - FI void reset() { NUM_AXIS_GANG(x =, y =, z =, i =, j =, k =, u =, v =, w =) 0; } + FI void reset() { NUM_AXIS_CODE(x = 0, y = 0, z = 0, i = 0, j = 0, k = 0, u = 0, v = 0, w = 0); } // Setters taking struct types and arrays - FI void set(const XYval pxy) { NUM_AXIS_CODE(x = pxy.x, y = pxy.y,,,,,,,); } - FI void set(const XYval pxy, const T pz) { NUM_AXIS_CODE(x = pxy.x, y = pxy.y, z = pz,,,,,,); } - FI void set(const T (&arr)[NUM_AXES]) { NUM_AXIS_CODE(x = arr[0], y = arr[1], z = arr[2], i = arr[3], j = arr[4], k = arr[5], u = arr[6], v = arr[7], w = arr[8]); } + FI void set(const XYval pxy) { NUM_AXIS_CODE(x = pxy.x, y = pxy.y,,,,,,,); } + FI void set(const XYval pxy, const T pz) { NUM_AXIS_CODE(x = pxy.x, y = pxy.y, z = pz,,,,,,); } + FI void set(const T (&arr)[NUM_AXES]) { NUM_AXIS_CODE(x = arr[0], y = arr[1], z = arr[2], i = arr[3], j = arr[4], k = arr[5], u = arr[6], v = arr[7], w = arr[8]); } #if LOGICAL_AXES > NUM_AXES - FI void set(const T (&arr)[LOGICAL_AXES]) { NUM_AXIS_CODE(x = arr[0], y = arr[1], z = arr[2], i = arr[3], j = arr[4], k = arr[5], u = arr[6], v = arr[7], w = arr[8]); } - FI void set(LOGICAL_AXIS_ARGS(const T)) { NUM_AXIS_CODE(a = x, b = y, c = z, _i = i, _j = j, _k = k, _u = u, _v = v, _w = w ); } + FI void set(const T (&arr)[LOGICAL_AXES]) { NUM_AXIS_CODE(x = arr[0], y = arr[1], z = arr[2], i = arr[3], j = arr[4], k = arr[5], u = arr[6], v = arr[7], w = arr[8]); } + FI void set(LOGICAL_AXIS_ARGS(const T)) { NUM_AXIS_CODE(a = x, b = y, c = z, _i = i, _j = j, _k = k, _u = u, _v = v, _w = w ); } #if DISTINCT_AXES > LOGICAL_AXES - FI void set(const T (&arr)[DISTINCT_AXES]) { NUM_AXIS_CODE(x = arr[0], y = arr[1], z = arr[2], i = arr[3], j = arr[4], k = arr[5], u = arr[6], v = arr[7], w = arr[8]); } + FI void set(const T (&arr)[DISTINCT_AXES]) { NUM_AXIS_CODE(x = arr[0], y = arr[1], z = arr[2], i = arr[3], j = arr[4], k = arr[5], u = arr[6], v = arr[7], w = arr[8]); } #endif #endif @@ -517,15 +543,15 @@ struct XYZval { #endif // Length reduced to one dimension - FI T magnitude() const { return (T)sqrtf(NUM_AXIS_GANG(x*x, + y*y, + z*z, + i*i, + j*j, + k*k, + u*u, + v*v, + w*w)); } + FI T magnitude() const { return (T)TERN(HAS_X_AXIS, sqrtf(NUM_AXIS_GANG(x*x, + y*y, + z*z, + i*i, + j*j, + k*k, + u*u, + v*v, + w*w)), 0); } // Pointer to the data as a simple array - FI operator T* () { return pos; } + FI operator T* () { return (T*)this; } // If any element is true then it's true - FI operator bool() { return NUM_AXIS_GANG(x, || y, || z, || i, || j, || k, || u, || v, || w); } + FI operator bool() { return 0 NUM_AXIS_GANG(|| x, || y, || z, || i, || j, || k, || u, || v, || w); } // Smallest element - FI T small() const { return _MIN(NUM_AXIS_LIST(x, y, z, i, j, k, u, v, w)); } + FI T small() const { return TERN(HAS_X_AXIS,_MIN(NUM_AXIS_LIST(x, y, z, i, j, k, u, v, w));,0;) } // Largest element - FI T large() const { return _MAX(NUM_AXIS_LIST(x, y, z, i, j, k, u, v, w)); } + FI T large() const { return TERN(HAS_X_AXIS,_MAX(NUM_AXIS_LIST(x, y, z, i, j, k, u, v, w));,0;) } // Explicit copy and copies with conversion FI XYZval copy() const { XYZval o = *this; return o; } @@ -634,10 +660,10 @@ struct XYZEval { T pos[LOGICAL_AXES]; }; // Reset all to 0 - FI void reset() { LOGICAL_AXIS_GANG(e =, x =, y =, z =, i =, j =, k =, u =, v =, w =) 0; } + FI void reset() { LOGICAL_AXIS_GANG(e =, x =, y =, z =, i =, j =, k =, u =, v =, w =) 0; } // Setters taking struct types and arrays - FI void set(const XYval pxy) { x = pxy.x; OPTCODE(HAS_Y_AXIS, y = pxy.y) } + FI void set(const XYval pxy) { OPTCODE(HAS_X_AXIS, x = pxy.x) OPTCODE(HAS_Y_AXIS, y = pxy.y) } FI void set(const XYZval pxyz) { set(NUM_AXIS_ELEM(pxyz)); } FI void set(const XYval pxy, const T pz) { set(pxy); TERN_(HAS_Z_AXIS, z = pz); } FI void set(const T (&arr)[NUM_AXES]) { NUM_AXIS_CODE(x = arr[0], y = arr[1], z = arr[2], i = arr[3], j = arr[4], k = arr[5], u = arr[6], v = arr[7], w = arr[8]); } diff --git a/Marlin/src/feature/fwretract.cpp b/Marlin/src/feature/fwretract.cpp index 28355640d223..b4ef18a9b980 100644 --- a/Marlin/src/feature/fwretract.cpp +++ b/Marlin/src/feature/fwretract.cpp @@ -195,8 +195,6 @@ void FWRetract::retract(const bool retracting E_OPTARG(bool swapping/*=false*/)) //*/ } -//extern const char SP_Z_STR[]; - /** * M207: Set firmware retraction values * diff --git a/Marlin/src/feature/tmc_util.cpp b/Marlin/src/feature/tmc_util.cpp index 2e5a5c55850b..cc99f34c5b5a 100644 --- a/Marlin/src/feature/tmc_util.cpp +++ b/Marlin/src/feature/tmc_util.cpp @@ -773,8 +773,8 @@ } } - static void tmc_debug_loop(const TMC_debug_enum n, LOGICAL_AXIS_ARGS(const bool)) { - if (x) { + static void tmc_debug_loop(const TMC_debug_enum n OPTARGS_LOGICAL(const bool)) { + if (TERN0(HAS_X_AXIS, x)) { #if AXIS_IS_TMC(X) tmc_status(stepperX, n); #endif @@ -856,8 +856,8 @@ SERIAL_EOL(); } - static void drv_status_loop(const TMC_drv_status_enum n, LOGICAL_AXIS_ARGS(const bool)) { - if (x) { + static void drv_status_loop(const TMC_drv_status_enum n OPTARGS_LOGICAL(const bool)) { + if (TERN0(HAS_X_AXIS, x)) { #if AXIS_IS_TMC(X) tmc_parse_drv_status(stepperX, n); #endif @@ -944,8 +944,8 @@ */ void tmc_report_all(LOGICAL_AXIS_ARGS(const bool)) { - #define TMC_REPORT(LABEL, ITEM) do{ SERIAL_ECHOPGM(LABEL); tmc_debug_loop(ITEM, LOGICAL_AXIS_ARGS()); }while(0) - #define DRV_REPORT(LABEL, ITEM) do{ SERIAL_ECHOPGM(LABEL); drv_status_loop(ITEM, LOGICAL_AXIS_ARGS()); }while(0) + #define TMC_REPORT(LABEL, ITEM) do{ SERIAL_ECHOPGM(LABEL); tmc_debug_loop(ITEM OPTARGS_LOGICAL()); }while(0) + #define DRV_REPORT(LABEL, ITEM) do{ SERIAL_ECHOPGM(LABEL); drv_status_loop(ITEM OPTARGS_LOGICAL()); }while(0) TMC_REPORT("\t", TMC_CODES); #if HAS_DRIVER(TMC2209) @@ -1070,8 +1070,8 @@ } #endif - static void tmc_get_registers(TMC_get_registers_enum n, LOGICAL_AXIS_ARGS(const bool)) { - if (x) { + static void tmc_get_registers(TMC_get_registers_enum n OPTARGS_LOGICAL(const bool)) { + if (TERN0(HAS_X_AXIS, x)) { #if AXIS_IS_TMC(X) tmc_get_registers(stepperX, n); #endif @@ -1154,7 +1154,7 @@ } void tmc_get_registers(LOGICAL_AXIS_ARGS(bool)) { - #define _TMC_GET_REG(LABEL, ITEM) do{ SERIAL_ECHOPGM(LABEL); tmc_get_registers(ITEM, LOGICAL_AXIS_ARGS()); }while(0) + #define _TMC_GET_REG(LABEL, ITEM) do{ SERIAL_ECHOPGM(LABEL); tmc_get_registers(ITEM OPTARGS_LOGICAL()); }while(0) #define TMC_GET_REG(NAME, TABS) _TMC_GET_REG(STRINGIFY(NAME) TABS, TMC_GET_##NAME) _TMC_GET_REG("\t", TMC_AXIS_CODES); TMC_GET_REG(GCONF, "\t\t"); @@ -1236,7 +1236,7 @@ static bool test_connection(TMC &st) { void test_tmc_connection(LOGICAL_AXIS_ARGS(const bool)) { uint8_t axis_connection = 0; - if (x) { + if (TERN0(HAS_X_AXIS, x)) { #if AXIS_IS_TMC(X) axis_connection += test_connection(stepperX); #endif diff --git a/Marlin/src/feature/tmc_util.h b/Marlin/src/feature/tmc_util.h index fffa748f93cc..4ba38359069a 100644 --- a/Marlin/src/feature/tmc_util.h +++ b/Marlin/src/feature/tmc_util.h @@ -348,7 +348,7 @@ void test_tmc_connection(LOGICAL_AXIS_DECL(const bool, true)); #if USE_SENSORLESS // Track enabled status of stealthChop and only re-enable where applicable - struct sensorless_t { bool NUM_AXIS_ARGS(), x2, y2, z2, z3, z4; }; + struct sensorless_t { bool NUM_AXIS_ARGS_() x2, y2, z2, z3, z4; }; #if ENABLED(IMPROVE_HOMING_RELIABILITY) extern millis_t sg_guard_period; diff --git a/Marlin/src/gcode/calibrate/G28.cpp b/Marlin/src/gcode/calibrate/G28.cpp index 4c654c350925..be593d0d5b1b 100644 --- a/Marlin/src/gcode/calibrate/G28.cpp +++ b/Marlin/src/gcode/calibrate/G28.cpp @@ -206,20 +206,6 @@ void GcodeSuite::G28() { DEBUG_SECTION(log_G28, "G28", DEBUGGING(LEVELING)); if (DEBUGGING(LEVELING)) log_machine_info(); - TERN_(BD_SENSOR, bdl.config_state = 0); - - /** - * Set the laser power to false to stop the planner from processing the current power setting. - */ - #if ENABLED(LASER_FEATURE) - planner.laser_inline.status.isPowered = false; - #endif - - #if ENABLED(DUAL_X_CARRIAGE) - bool IDEX_saved_duplication_state = extruder_duplication_enabled; - DualXMode IDEX_saved_mode = dual_x_carriage_mode; - #endif - #if ENABLED(MARLIN_DEV_MODE) if (parser.seen_test('S')) { LOOP_NUM_AXES(a) set_axis_is_at_home((AxisEnum)a); @@ -230,12 +216,21 @@ void GcodeSuite::G28() { } #endif + /** + * Set the laser power to false to stop the planner from processing the current power setting. + */ + #if ENABLED(LASER_FEATURE) + planner.laser_inline.status.isPowered = false; + #endif + // Home (O)nly if position is unknown if (!axes_should_home() && parser.seen_test('O')) { if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("> homing not needed, skip"); return; } + TERN_(BD_SENSOR, bdl.config_state = 0); + #if ENABLED(FULL_REPORT_TO_HOST_FEATURE) const M_StateEnum old_grblstate = M_State_grbl; set_and_report_grblstate(M_HOMING); @@ -246,397 +241,411 @@ void GcodeSuite::G28() { planner.synchronize(); // Wait for planner moves to finish! - SET_SOFT_ENDSTOP_LOOSE(false); // Reset a leftover 'loose' motion state - - // Disable the leveling matrix before homing - #if CAN_SET_LEVELING_AFTER_G28 - const bool leveling_restore_state = parser.boolval('L', TERN1(RESTORE_LEVELING_AFTER_G28, planner.leveling_active)); - #endif - - // Cancel any prior G29 session - TERN_(PROBE_MANUALLY, g29_in_progress = false); - - // Disable leveling before homing - TERN_(HAS_LEVELING, set_bed_leveling_enabled(false)); - - // Reset to the XY plane - TERN_(CNC_WORKSPACE_PLANES, workspace_plane = PLANE_XY); - // Count this command as movement / activity reset_stepper_timeout(); - #define HAS_CURRENT_HOME(N) (defined(N##_CURRENT_HOME) && N##_CURRENT_HOME != N##_CURRENT) - #if HAS_CURRENT_HOME(X) || HAS_CURRENT_HOME(X2) || HAS_CURRENT_HOME(Y) || HAS_CURRENT_HOME(Y2) || (ENABLED(DELTA) && HAS_CURRENT_HOME(Z)) || HAS_CURRENT_HOME(I) || HAS_CURRENT_HOME(J) || HAS_CURRENT_HOME(K) || HAS_CURRENT_HOME(U) || HAS_CURRENT_HOME(V) || HAS_CURRENT_HOME(W) - #define HAS_HOMING_CURRENT 1 - #endif + #if NUM_AXES - #if HAS_HOMING_CURRENT - auto debug_current = [](FSTR_P const s, const int16_t a, const int16_t b) { - DEBUG_ECHOF(s); DEBUG_ECHOLNPGM(" current: ", a, " -> ", b); - }; - #if HAS_CURRENT_HOME(X) - const int16_t tmc_save_current_X = stepperX.getMilliamps(); - stepperX.rms_current(X_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_X), tmc_save_current_X, X_CURRENT_HOME); - #endif - #if HAS_CURRENT_HOME(X2) - const int16_t tmc_save_current_X2 = stepperX2.getMilliamps(); - stepperX2.rms_current(X2_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_X2), tmc_save_current_X2, X2_CURRENT_HOME); - #endif - #if HAS_CURRENT_HOME(Y) - const int16_t tmc_save_current_Y = stepperY.getMilliamps(); - stepperY.rms_current(Y_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_Y), tmc_save_current_Y, Y_CURRENT_HOME); - #endif - #if HAS_CURRENT_HOME(Y2) - const int16_t tmc_save_current_Y2 = stepperY2.getMilliamps(); - stepperY2.rms_current(Y2_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_Y2), tmc_save_current_Y2, Y2_CURRENT_HOME); - #endif - #if HAS_CURRENT_HOME(Z) && ENABLED(DELTA) - const int16_t tmc_save_current_Z = stepperZ.getMilliamps(); - stepperZ.rms_current(Z_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_Z), tmc_save_current_Z, Z_CURRENT_HOME); - #endif - #if HAS_CURRENT_HOME(I) - const int16_t tmc_save_current_I = stepperI.getMilliamps(); - stepperI.rms_current(I_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_I), tmc_save_current_I, I_CURRENT_HOME); - #endif - #if HAS_CURRENT_HOME(J) - const int16_t tmc_save_current_J = stepperJ.getMilliamps(); - stepperJ.rms_current(J_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_J), tmc_save_current_J, J_CURRENT_HOME); - #endif - #if HAS_CURRENT_HOME(K) - const int16_t tmc_save_current_K = stepperK.getMilliamps(); - stepperK.rms_current(K_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_K), tmc_save_current_K, K_CURRENT_HOME); - #endif - #if HAS_CURRENT_HOME(U) - const int16_t tmc_save_current_U = stepperU.getMilliamps(); - stepperU.rms_current(U_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_U), tmc_save_current_U, U_CURRENT_HOME); - #endif - #if HAS_CURRENT_HOME(V) - const int16_t tmc_save_current_V = stepperV.getMilliamps(); - stepperV.rms_current(V_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_V), tmc_save_current_V, V_CURRENT_HOME); + #if ENABLED(DUAL_X_CARRIAGE) + bool IDEX_saved_duplication_state = extruder_duplication_enabled; + DualXMode IDEX_saved_mode = dual_x_carriage_mode; #endif - #if HAS_CURRENT_HOME(W) - const int16_t tmc_save_current_W = stepperW.getMilliamps(); - stepperW.rms_current(W_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_W), tmc_save_current_W, W_CURRENT_HOME); - #endif - #if SENSORLESS_STALLGUARD_DELAY - safe_delay(SENSORLESS_STALLGUARD_DELAY); // Short delay needed to settle - #endif - #endif // HAS_HOMING_CURRENT - #if ENABLED(IMPROVE_HOMING_RELIABILITY) - motion_state_t saved_motion_state = begin_slow_homing(); - #endif + SET_SOFT_ENDSTOP_LOOSE(false); // Reset a leftover 'loose' motion state - // Always home with tool 0 active - #if HAS_MULTI_HOTEND - #if DISABLED(DELTA) || ENABLED(DELTA_HOME_TO_SAFE_ZONE) - const uint8_t old_tool_index = active_extruder; + // Disable the leveling matrix before homing + #if CAN_SET_LEVELING_AFTER_G28 + const bool leveling_restore_state = parser.boolval('L', TERN1(RESTORE_LEVELING_AFTER_G28, planner.leveling_active)); #endif - // PARKING_EXTRUDER homing requires different handling of movement / solenoid activation, depending on the side of homing - #if ENABLED(PARKING_EXTRUDER) - const bool pe_final_change_must_unpark = parking_extruder_unpark_after_homing(old_tool_index, X_HOME_DIR + 1 == old_tool_index * 2); - #endif - tool_change(0, true); - #endif - TERN_(HAS_DUPLICATION_MODE, set_duplication_enabled(false)); + // Cancel any prior G29 session + TERN_(PROBE_MANUALLY, g29_in_progress = false); - remember_feedrate_scaling_off(); + // Disable leveling before homing + TERN_(HAS_LEVELING, set_bed_leveling_enabled(false)); - endstops.enable(true); // Enable endstops for next homing move + // Reset to the XY plane + TERN_(CNC_WORKSPACE_PLANES, workspace_plane = PLANE_XY); - bool finalRaiseZ = false; + #define HAS_CURRENT_HOME(N) (defined(N##_CURRENT_HOME) && N##_CURRENT_HOME != N##_CURRENT) + #if HAS_CURRENT_HOME(X) || HAS_CURRENT_HOME(X2) || HAS_CURRENT_HOME(Y) || HAS_CURRENT_HOME(Y2) || (ENABLED(DELTA) && HAS_CURRENT_HOME(Z)) || HAS_CURRENT_HOME(I) || HAS_CURRENT_HOME(J) || HAS_CURRENT_HOME(K) || HAS_CURRENT_HOME(U) || HAS_CURRENT_HOME(V) || HAS_CURRENT_HOME(W) + #define HAS_HOMING_CURRENT 1 + #endif + + #if HAS_HOMING_CURRENT + auto debug_current = [](FSTR_P const s, const int16_t a, const int16_t b) { + DEBUG_ECHOF(s); DEBUG_ECHOLNPGM(" current: ", a, " -> ", b); + }; + #if HAS_CURRENT_HOME(X) + const int16_t tmc_save_current_X = stepperX.getMilliamps(); + stepperX.rms_current(X_CURRENT_HOME); + if (DEBUGGING(LEVELING)) debug_current(F(STR_X), tmc_save_current_X, X_CURRENT_HOME); + #endif + #if HAS_CURRENT_HOME(X2) + const int16_t tmc_save_current_X2 = stepperX2.getMilliamps(); + stepperX2.rms_current(X2_CURRENT_HOME); + if (DEBUGGING(LEVELING)) debug_current(F(STR_X2), tmc_save_current_X2, X2_CURRENT_HOME); + #endif + #if HAS_CURRENT_HOME(Y) + const int16_t tmc_save_current_Y = stepperY.getMilliamps(); + stepperY.rms_current(Y_CURRENT_HOME); + if (DEBUGGING(LEVELING)) debug_current(F(STR_Y), tmc_save_current_Y, Y_CURRENT_HOME); + #endif + #if HAS_CURRENT_HOME(Y2) + const int16_t tmc_save_current_Y2 = stepperY2.getMilliamps(); + stepperY2.rms_current(Y2_CURRENT_HOME); + if (DEBUGGING(LEVELING)) debug_current(F(STR_Y2), tmc_save_current_Y2, Y2_CURRENT_HOME); + #endif + #if HAS_CURRENT_HOME(Z) && ENABLED(DELTA) + const int16_t tmc_save_current_Z = stepperZ.getMilliamps(); + stepperZ.rms_current(Z_CURRENT_HOME); + if (DEBUGGING(LEVELING)) debug_current(F(STR_Z), tmc_save_current_Z, Z_CURRENT_HOME); + #endif + #if HAS_CURRENT_HOME(I) + const int16_t tmc_save_current_I = stepperI.getMilliamps(); + stepperI.rms_current(I_CURRENT_HOME); + if (DEBUGGING(LEVELING)) debug_current(F(STR_I), tmc_save_current_I, I_CURRENT_HOME); + #endif + #if HAS_CURRENT_HOME(J) + const int16_t tmc_save_current_J = stepperJ.getMilliamps(); + stepperJ.rms_current(J_CURRENT_HOME); + if (DEBUGGING(LEVELING)) debug_current(F(STR_J), tmc_save_current_J, J_CURRENT_HOME); + #endif + #if HAS_CURRENT_HOME(K) + const int16_t tmc_save_current_K = stepperK.getMilliamps(); + stepperK.rms_current(K_CURRENT_HOME); + if (DEBUGGING(LEVELING)) debug_current(F(STR_K), tmc_save_current_K, K_CURRENT_HOME); + #endif + #if HAS_CURRENT_HOME(U) + const int16_t tmc_save_current_U = stepperU.getMilliamps(); + stepperU.rms_current(U_CURRENT_HOME); + if (DEBUGGING(LEVELING)) debug_current(F(STR_U), tmc_save_current_U, U_CURRENT_HOME); + #endif + #if HAS_CURRENT_HOME(V) + const int16_t tmc_save_current_V = stepperV.getMilliamps(); + stepperV.rms_current(V_CURRENT_HOME); + if (DEBUGGING(LEVELING)) debug_current(F(STR_V), tmc_save_current_V, V_CURRENT_HOME); + #endif + #if HAS_CURRENT_HOME(W) + const int16_t tmc_save_current_W = stepperW.getMilliamps(); + stepperW.rms_current(W_CURRENT_HOME); + if (DEBUGGING(LEVELING)) debug_current(F(STR_W), tmc_save_current_W, W_CURRENT_HOME); + #endif + #if SENSORLESS_STALLGUARD_DELAY + safe_delay(SENSORLESS_STALLGUARD_DELAY); // Short delay needed to settle + #endif + #endif // HAS_HOMING_CURRENT - #if ENABLED(DELTA) + #if ENABLED(IMPROVE_HOMING_RELIABILITY) + motion_state_t saved_motion_state = begin_slow_homing(); + #endif - constexpr bool doZ = true; // for NANODLP_Z_SYNC if your DLP is on a DELTA + // Always home with tool 0 active + #if HAS_MULTI_HOTEND + #if DISABLED(DELTA) || ENABLED(DELTA_HOME_TO_SAFE_ZONE) + const uint8_t old_tool_index = active_extruder; + #endif + // PARKING_EXTRUDER homing requires different handling of movement / solenoid activation, depending on the side of homing + #if ENABLED(PARKING_EXTRUDER) + const bool pe_final_change_must_unpark = parking_extruder_unpark_after_homing(old_tool_index, X_HOME_DIR + 1 == old_tool_index * 2); + #endif + tool_change(0, true); + #endif - home_delta(); + TERN_(HAS_DUPLICATION_MODE, set_duplication_enabled(false)); - TERN_(IMPROVE_HOMING_RELIABILITY, end_slow_homing(saved_motion_state)); + remember_feedrate_scaling_off(); - #elif ENABLED(AXEL_TPARA) + endstops.enable(true); // Enable endstops for next homing move - constexpr bool doZ = true; // for NANODLP_Z_SYNC if your DLP is on a TPARA + bool finalRaiseZ = false; - home_TPARA(); + #if ENABLED(DELTA) - #else + constexpr bool doZ = true; // for NANODLP_Z_SYNC if your DLP is on a DELTA - #define _UNSAFE(A) (homeZ && TERN0(Z_SAFE_HOMING, axes_should_home(_BV(A##_AXIS)))) + home_delta(); - const bool homeZ = TERN0(HAS_Z_AXIS, parser.seen_test('Z')), - NUM_AXIS_LIST( // Other axes should be homed before Z safe-homing - needX = _UNSAFE(X), needY = _UNSAFE(Y), needZ = false, // UNUSED - needI = _UNSAFE(I), needJ = _UNSAFE(J), needK = _UNSAFE(K), - needU = _UNSAFE(U), needV = _UNSAFE(V), needW = _UNSAFE(W) - ), - NUM_AXIS_LIST( // Home each axis if needed or flagged - homeX = needX || parser.seen_test('X'), - homeY = needY || parser.seen_test('Y'), - homeZZ = homeZ, - homeI = needI || parser.seen_test(AXIS4_NAME), homeJ = needJ || parser.seen_test(AXIS5_NAME), - homeK = needK || parser.seen_test(AXIS6_NAME), homeU = needU || parser.seen_test(AXIS7_NAME), - homeV = needV || parser.seen_test(AXIS8_NAME), homeW = needW || parser.seen_test(AXIS9_NAME) - ), - home_all = NUM_AXIS_GANG( // Home-all if all or none are flagged - homeX == homeX, && homeY == homeX, && homeZ == homeX, - && homeI == homeX, && homeJ == homeX, && homeK == homeX, - && homeU == homeX, && homeV == homeX, && homeW == homeX - ), - NUM_AXIS_LIST( - doX = home_all || homeX, doY = home_all || homeY, doZ = home_all || homeZ, - doI = home_all || homeI, doJ = home_all || homeJ, doK = home_all || homeK, - doU = home_all || homeU, doV = home_all || homeV, doW = home_all || homeW - ); + TERN_(IMPROVE_HOMING_RELIABILITY, end_slow_homing(saved_motion_state)); - #if !HAS_Y_AXIS - constexpr bool doY = false; - #endif + #elif ENABLED(AXEL_TPARA) + + constexpr bool doZ = true; // for NANODLP_Z_SYNC if your DLP is on a TPARA + + home_TPARA(); + + #else // !DELTA && !AXEL_TPARA + + #define _UNSAFE(A) (homeZ && TERN0(Z_SAFE_HOMING, axes_should_home(_BV(A##_AXIS)))) + + const bool homeZ = TERN0(HAS_Z_AXIS, parser.seen_test('Z')), + NUM_AXIS_LIST_( // Other axes should be homed before Z safe-homing + needX = _UNSAFE(X), needY = _UNSAFE(Y), needZ = false, // UNUSED + needI = _UNSAFE(I), needJ = _UNSAFE(J), needK = _UNSAFE(K), + needU = _UNSAFE(U), needV = _UNSAFE(V), needW = _UNSAFE(W) + ) + NUM_AXIS_LIST_( // Home each axis if needed or flagged + homeX = needX || parser.seen_test('X'), + homeY = needY || parser.seen_test('Y'), + homeZZ = homeZ, + homeI = needI || parser.seen_test(AXIS4_NAME), homeJ = needJ || parser.seen_test(AXIS5_NAME), + homeK = needK || parser.seen_test(AXIS6_NAME), homeU = needU || parser.seen_test(AXIS7_NAME), + homeV = needV || parser.seen_test(AXIS8_NAME), homeW = needW || parser.seen_test(AXIS9_NAME) + ) + home_all = NUM_AXIS_GANG_( // Home-all if all or none are flagged + homeX == homeX, && homeY == homeX, && homeZ == homeX, + && homeI == homeX, && homeJ == homeX, && homeK == homeX, + && homeU == homeX, && homeV == homeX, && homeW == homeX + ) + NUM_AXIS_LIST( + doX = home_all || homeX, doY = home_all || homeY, doZ = home_all || homeZ, + doI = home_all || homeI, doJ = home_all || homeJ, doK = home_all || homeK, + doU = home_all || homeU, doV = home_all || homeV, doW = home_all || homeW + ); + + #if !HAS_Y_AXIS + constexpr bool doY = false; + #endif - #if HAS_Z_AXIS + #if HAS_Z_AXIS - UNUSED(needZ); UNUSED(homeZZ); + UNUSED(needZ); UNUSED(homeZZ); - // Z may home first, e.g., when homing away from the bed. - // This is also permitted when homing with a Z endstop. - if (TERN0(HOME_Z_FIRST, doZ)) homeaxis(Z_AXIS); + // Z may home first, e.g., when homing away from the bed. + // This is also permitted when homing with a Z endstop. + if (TERN0(HOME_Z_FIRST, doZ)) homeaxis(Z_AXIS); - // 'R' to specify a specific raise. 'R0' indicates no raise, e.g., for recovery.resume - // When 'R0' is used, there should already be adequate clearance, e.g., from homing Z to max. - const bool seenR = parser.seenval('R'); + // 'R' to specify a specific raise. 'R0' indicates no raise, e.g., for recovery.resume + // When 'R0' is used, there should already be adequate clearance, e.g., from homing Z to max. + const bool seenR = parser.seenval('R'); - // Use raise given by 'R' or Z_CLEARANCE_FOR_HOMING (above the probe trigger point) - float z_homing_height = seenR ? parser.value_linear_units() : Z_CLEARANCE_FOR_HOMING; + // Use raise given by 'R' or Z_CLEARANCE_FOR_HOMING (above the probe trigger point) + float z_homing_height = seenR ? parser.value_linear_units() : Z_CLEARANCE_FOR_HOMING; - // Check for any lateral motion that might require clearance - const bool may_skate = seenR || NUM_AXIS_GANG(doX, || doY, || TERN0(Z_SAFE_HOMING, doZ), || doI, || doJ, || doK, || doU, || doV, || doW); + // Check for any lateral motion that might require clearance + const bool may_skate = seenR NUM_AXIS_GANG(|| doX, || doY, || TERN0(Z_SAFE_HOMING, doZ), || doI, || doJ, || doK, || doU, || doV, || doW); - if (seenR && z_homing_height == 0) { - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("R0 = No Z raise"); - } - else { - bool with_probe = ENABLED(HOMING_Z_WITH_PROBE); - // Raise above the current Z (which should be synced in the planner) - // The "height" for Z is a coordinate. But if Z is not trusted/homed make it relative. - if (seenR || !TERN(HOME_AFTER_DEACTIVATE, axis_is_trusted, axis_was_homed)(Z_AXIS)) { - z_homing_height += current_position.z; - with_probe = false; + if (seenR && z_homing_height == 0) { + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("R0 = No Z raise"); } - - if (may_skate) { - // Apply Z clearance before doing any lateral motion - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Raise Z before homing:"); - do_z_clearance(z_homing_height, with_probe); + else { + bool with_probe = ENABLED(HOMING_Z_WITH_PROBE); + // Raise above the current Z (which should be synced in the planner) + // The "height" for Z is a coordinate. But if Z is not trusted/homed make it relative. + if (seenR || !TERN(HOME_AFTER_DEACTIVATE, axis_is_trusted, axis_was_homed)(Z_AXIS)) { + z_homing_height += current_position.z; + with_probe = false; + } + + if (may_skate) { + // Apply Z clearance before doing any lateral motion + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Raise Z before homing:"); + do_z_clearance(z_homing_height, with_probe); + } } - } - // Init BLTouch ahead of any lateral motion, even if not homing with the probe - TERN_(BLTOUCH, if (may_skate) bltouch.init()); + // Init BLTouch ahead of any lateral motion, even if not homing with the probe + TERN_(BLTOUCH, if (may_skate) bltouch.init()); - #endif // HAS_Z_AXIS + #endif // HAS_Z_AXIS - // Diagonal move first if both are homing - TERN_(QUICK_HOME, if (doX && doY) quick_home_xy()); + // Diagonal move first if both are homing + TERN_(QUICK_HOME, if (doX && doY) quick_home_xy()); - #if HAS_Y_AXIS - // Home Y (before X) - if (ENABLED(HOME_Y_BEFORE_X) && (doY || TERN0(CODEPENDENT_XY_HOMING, doX))) - homeaxis(Y_AXIS); - #endif + #if HAS_Y_AXIS + // Home Y (before X) + if (ENABLED(HOME_Y_BEFORE_X) && (doY || TERN0(CODEPENDENT_XY_HOMING, doX))) + homeaxis(Y_AXIS); + #endif - // Home X - if (doX || (doY && ENABLED(CODEPENDENT_XY_HOMING) && DISABLED(HOME_Y_BEFORE_X))) { + // Home X + #if HAS_X_AXIS + if (doX || (doY && ENABLED(CODEPENDENT_XY_HOMING) && DISABLED(HOME_Y_BEFORE_X))) { - #if ENABLED(DUAL_X_CARRIAGE) + #if ENABLED(DUAL_X_CARRIAGE) - // Always home the 2nd (right) extruder first - active_extruder = 1; - homeaxis(X_AXIS); + // Always home the 2nd (right) extruder first + active_extruder = 1; + homeaxis(X_AXIS); - // Remember this extruder's position for later tool change - inactive_extruder_x = current_position.x; + // Remember this extruder's position for later tool change + inactive_extruder_x = current_position.x; - // Home the 1st (left) extruder - active_extruder = 0; - homeaxis(X_AXIS); + // Home the 1st (left) extruder + active_extruder = 0; + homeaxis(X_AXIS); - // Consider the active extruder to be in its "parked" position - idex_set_parked(); + // Consider the active extruder to be in its "parked" position + idex_set_parked(); - #else + #else - homeaxis(X_AXIS); + homeaxis(X_AXIS); + + #endif + } + #endif // HAS_X_AXIS + #if BOTH(FOAMCUTTER_XYUV, HAS_I_AXIS) + // Home I (after X) + if (doI) homeaxis(I_AXIS); #endif - } - #if BOTH(FOAMCUTTER_XYUV, HAS_I_AXIS) - // Home I (after X) - if (doI) homeaxis(I_AXIS); - #endif + #if HAS_Y_AXIS + // Home Y (after X) + if (DISABLED(HOME_Y_BEFORE_X) && doY) + homeaxis(Y_AXIS); + #endif - #if HAS_Y_AXIS - // Home Y (after X) - if (DISABLED(HOME_Y_BEFORE_X) && doY) - homeaxis(Y_AXIS); - #endif + #if BOTH(FOAMCUTTER_XYUV, HAS_J_AXIS) + // Home J (after Y) + if (doJ) homeaxis(J_AXIS); + #endif - #if BOTH(FOAMCUTTER_XYUV, HAS_J_AXIS) - // Home J (after Y) - if (doJ) homeaxis(J_AXIS); - #endif + TERN_(IMPROVE_HOMING_RELIABILITY, end_slow_homing(saved_motion_state)); - TERN_(IMPROVE_HOMING_RELIABILITY, end_slow_homing(saved_motion_state)); + #if ENABLED(FOAMCUTTER_XYUV) - #if ENABLED(FOAMCUTTER_XYUV) + // Skip homing of unused Z axis for foamcutters + if (doZ) set_axis_is_at_home(Z_AXIS); - // Skip homing of unused Z axis for foamcutters - if (doZ) set_axis_is_at_home(Z_AXIS); + #elif HAS_Z_AXIS - #elif HAS_Z_AXIS + // Home Z last if homing towards the bed + #if DISABLED(HOME_Z_FIRST) + if (doZ) { + #if EITHER(Z_MULTI_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) + stepper.set_all_z_lock(false); + stepper.set_separate_multi_axis(false); + #endif - // Home Z last if homing towards the bed - #if DISABLED(HOME_Z_FIRST) - if (doZ) { - #if EITHER(Z_MULTI_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) - stepper.set_all_z_lock(false); - stepper.set_separate_multi_axis(false); - #endif + #if ENABLED(Z_SAFE_HOMING) + if (TERN1(POWER_LOSS_RECOVERY, !parser.seen_test('H'))) home_z_safely(); else homeaxis(Z_AXIS); + #else + homeaxis(Z_AXIS); + #endif - #if ENABLED(Z_SAFE_HOMING) - if (TERN1(POWER_LOSS_RECOVERY, !parser.seen_test('H'))) home_z_safely(); else homeaxis(Z_AXIS); - #else - homeaxis(Z_AXIS); - #endif + #if EITHER(Z_HOME_TO_MIN, ALLOW_Z_AFTER_HOMING) + finalRaiseZ = true; + #endif + } + #endif - #if EITHER(Z_HOME_TO_MIN, ALLOW_Z_AFTER_HOMING) - finalRaiseZ = true; - #endif - } - #endif + SECONDARY_AXIS_CODE( + if (doI) homeaxis(I_AXIS), + if (doJ) homeaxis(J_AXIS), + if (doK) homeaxis(K_AXIS), + if (doU) homeaxis(U_AXIS), + if (doV) homeaxis(V_AXIS), + if (doW) homeaxis(W_AXIS) + ); - SECONDARY_AXIS_CODE( - if (doI) homeaxis(I_AXIS), - if (doJ) homeaxis(J_AXIS), - if (doK) homeaxis(K_AXIS), - if (doU) homeaxis(U_AXIS), - if (doV) homeaxis(V_AXIS), - if (doW) homeaxis(W_AXIS) - ); + #endif // HAS_Z_AXIS - #endif // HAS_Z_AXIS + sync_plan_position(); - sync_plan_position(); + #endif - #endif + /** + * Preserve DXC mode across a G28 for IDEX printers in DXC_DUPLICATION_MODE. + * This is important because it lets a user use the LCD Panel to set an IDEX Duplication mode, and + * then print a standard GCode file that contains a single print that does a G28 and has no other + * IDEX specific commands in it. + */ + #if ENABLED(DUAL_X_CARRIAGE) - /** - * Preserve DXC mode across a G28 for IDEX printers in DXC_DUPLICATION_MODE. - * This is important because it lets a user use the LCD Panel to set an IDEX Duplication mode, and - * then print a standard GCode file that contains a single print that does a G28 and has no other - * IDEX specific commands in it. - */ - #if ENABLED(DUAL_X_CARRIAGE) + if (idex_is_duplicating()) { - if (idex_is_duplicating()) { + TERN_(IMPROVE_HOMING_RELIABILITY, saved_motion_state = begin_slow_homing()); - TERN_(IMPROVE_HOMING_RELIABILITY, saved_motion_state = begin_slow_homing()); + // Always home the 2nd (right) extruder first + active_extruder = 1; + homeaxis(X_AXIS); - // Always home the 2nd (right) extruder first - active_extruder = 1; - homeaxis(X_AXIS); + // Remember this extruder's position for later tool change + inactive_extruder_x = current_position.x; - // Remember this extruder's position for later tool change - inactive_extruder_x = current_position.x; + // Home the 1st (left) extruder + active_extruder = 0; + homeaxis(X_AXIS); - // Home the 1st (left) extruder - active_extruder = 0; - homeaxis(X_AXIS); + // Consider the active extruder to be parked + idex_set_parked(); - // Consider the active extruder to be parked - idex_set_parked(); + dual_x_carriage_mode = IDEX_saved_mode; + set_duplication_enabled(IDEX_saved_duplication_state); - dual_x_carriage_mode = IDEX_saved_mode; - set_duplication_enabled(IDEX_saved_duplication_state); + TERN_(IMPROVE_HOMING_RELIABILITY, end_slow_homing(saved_motion_state)); + } - TERN_(IMPROVE_HOMING_RELIABILITY, end_slow_homing(saved_motion_state)); - } + #endif // DUAL_X_CARRIAGE - #endif // DUAL_X_CARRIAGE + endstops.not_homing(); - endstops.not_homing(); + // Clear endstop state for polled stallGuard endstops + TERN_(SPI_ENDSTOPS, endstops.clear_endstop_state()); - // Clear endstop state for polled stallGuard endstops - TERN_(SPI_ENDSTOPS, endstops.clear_endstop_state()); + #if HAS_HOMING_CURRENT + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Restore driver current..."); + #if HAS_CURRENT_HOME(X) + stepperX.rms_current(tmc_save_current_X); + #endif + #if HAS_CURRENT_HOME(X2) + stepperX2.rms_current(tmc_save_current_X2); + #endif + #if HAS_CURRENT_HOME(Y) + stepperY.rms_current(tmc_save_current_Y); + #endif + #if HAS_CURRENT_HOME(Y2) + stepperY2.rms_current(tmc_save_current_Y2); + #endif + #if HAS_CURRENT_HOME(Z) && ENABLED(DELTA) + stepperZ.rms_current(tmc_save_current_Z); + #endif + #if HAS_CURRENT_HOME(I) + stepperI.rms_current(tmc_save_current_I); + #endif + #if HAS_CURRENT_HOME(J) + stepperJ.rms_current(tmc_save_current_J); + #endif + #if HAS_CURRENT_HOME(K) + stepperK.rms_current(tmc_save_current_K); + #endif + #if HAS_CURRENT_HOME(U) + stepperU.rms_current(tmc_save_current_U); + #endif + #if HAS_CURRENT_HOME(V) + stepperV.rms_current(tmc_save_current_V); + #endif + #if HAS_CURRENT_HOME(W) + stepperW.rms_current(tmc_save_current_W); + #endif + #if SENSORLESS_STALLGUARD_DELAY + safe_delay(SENSORLESS_STALLGUARD_DELAY); // Short delay needed to settle + #endif + #endif // HAS_HOMING_CURRENT - #if HAS_HOMING_CURRENT - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Restore driver current..."); - #if HAS_CURRENT_HOME(X) - stepperX.rms_current(tmc_save_current_X); - #endif - #if HAS_CURRENT_HOME(X2) - stepperX2.rms_current(tmc_save_current_X2); - #endif - #if HAS_CURRENT_HOME(Y) - stepperY.rms_current(tmc_save_current_Y); - #endif - #if HAS_CURRENT_HOME(Y2) - stepperY2.rms_current(tmc_save_current_Y2); - #endif - #if HAS_CURRENT_HOME(Z) && ENABLED(DELTA) - stepperZ.rms_current(tmc_save_current_Z); - #endif - #if HAS_CURRENT_HOME(I) - stepperI.rms_current(tmc_save_current_I); - #endif - #if HAS_CURRENT_HOME(J) - stepperJ.rms_current(tmc_save_current_J); - #endif - #if HAS_CURRENT_HOME(K) - stepperK.rms_current(tmc_save_current_K); - #endif - #if HAS_CURRENT_HOME(U) - stepperU.rms_current(tmc_save_current_U); - #endif - #if HAS_CURRENT_HOME(V) - stepperV.rms_current(tmc_save_current_V); - #endif - #if HAS_CURRENT_HOME(W) - stepperW.rms_current(tmc_save_current_W); - #endif - #if SENSORLESS_STALLGUARD_DELAY - safe_delay(SENSORLESS_STALLGUARD_DELAY); // Short delay needed to settle - #endif - #endif // HAS_HOMING_CURRENT + // Move to a height where we can use the full xy-area + TERN_(DELTA_HOME_TO_SAFE_ZONE, do_blocking_move_to_z(delta_clip_start_height)); - // Move to a height where we can use the full xy-area - TERN_(DELTA_HOME_TO_SAFE_ZONE, do_blocking_move_to_z(delta_clip_start_height)); + // Move to the configured Z only if Z was homed to MIN, because machines that + // home to MAX historically expect 'G28 Z' to be safe to use at the end of a + // print, and do_move_after_z_homing is not very nuanced. + if (finalRaiseZ) do_move_after_z_homing(); - // Move to the configured Z only if Z was homed to MIN, because machines that - // home to MAX historically expect 'G28 Z' to be safe to use at the end of a - // print, and do_move_after_z_homing is not very nuanced. - if (finalRaiseZ) do_move_after_z_homing(); + TERN_(CAN_SET_LEVELING_AFTER_G28, if (leveling_restore_state) set_bed_leveling_enabled()); - TERN_(CAN_SET_LEVELING_AFTER_G28, if (leveling_restore_state) set_bed_leveling_enabled()); + // Restore the active tool after homing + #if HAS_MULTI_HOTEND && (DISABLED(DELTA) || ENABLED(DELTA_HOME_TO_SAFE_ZONE)) + tool_change(old_tool_index, TERN(PARKING_EXTRUDER, !pe_final_change_must_unpark, DISABLED(DUAL_X_CARRIAGE))); // Do move if one of these + #endif - // Restore the active tool after homing - #if HAS_MULTI_HOTEND && (DISABLED(DELTA) || ENABLED(DELTA_HOME_TO_SAFE_ZONE)) - tool_change(old_tool_index, TERN(PARKING_EXTRUDER, !pe_final_change_must_unpark, DISABLED(DUAL_X_CARRIAGE))); // Do move if one of these - #endif + restore_feedrate_and_scaling(); - restore_feedrate_and_scaling(); + if (ENABLED(NANODLP_Z_SYNC) && (ENABLED(NANODLP_ALL_AXIS) || TERN0(HAS_Z_AXIS, doZ))) + SERIAL_ECHOLNPGM(STR_Z_MOVE_COMP); + + #endif // NUM_AXES ui.refresh(); @@ -645,9 +654,6 @@ void GcodeSuite::G28() { report_current_position(); - if (ENABLED(NANODLP_Z_SYNC) && (ENABLED(NANODLP_ALL_AXIS) || TERN0(HAS_Z_AXIS, doZ))) - SERIAL_ECHOLNPGM(STR_Z_MOVE_COMP); - TERN_(FULL_REPORT_TO_HOST_FEATURE, set_and_report_grblstate(old_grblstate)); } diff --git a/Marlin/src/gcode/calibrate/G425.cpp b/Marlin/src/gcode/calibrate/G425.cpp index e3f8913125ff..ef055498a922 100644 --- a/Marlin/src/gcode/calibrate/G425.cpp +++ b/Marlin/src/gcode/calibrate/G425.cpp @@ -70,7 +70,7 @@ #define CALIBRATION_MEASUREMENT_CERTAIN 0.5 // mm #endif -#if BOTH(CALIBRATION_MEASURE_LEFT, CALIBRATION_MEASURE_RIGHT) +#if ALL(HAS_X_AXIS, CALIBRATION_MEASURE_LEFT, CALIBRATION_MEASURE_RIGHT) #define HAS_X_CENTER 1 #endif #if ALL(HAS_Y_AXIS, CALIBRATION_MEASURE_FRONT, CALIBRATION_MEASURE_BACK) @@ -398,11 +398,13 @@ inline void probe_sides(measurements_t &m, const float uncertainty) { #if AXIS_CAN_CALIBRATE(Z) SERIAL_ECHOLNPGM(" Top: ", m.obj_side[TOP]); #endif - #if ENABLED(CALIBRATION_MEASURE_LEFT) - SERIAL_ECHOLNPGM(" Left: ", m.obj_side[LEFT]); - #endif - #if ENABLED(CALIBRATION_MEASURE_RIGHT) - SERIAL_ECHOLNPGM(" Right: ", m.obj_side[RIGHT]); + #if HAS_X_AXIS + #if ENABLED(CALIBRATION_MEASURE_LEFT) + SERIAL_ECHOLNPGM(" Left: ", m.obj_side[LEFT]); + #endif + #if ENABLED(CALIBRATION_MEASURE_RIGHT) + SERIAL_ECHOLNPGM(" Right: ", m.obj_side[RIGHT]); + #endif #endif #if HAS_Y_AXIS #if ENABLED(CALIBRATION_MEASURE_FRONT) diff --git a/Marlin/src/gcode/calibrate/M425.cpp b/Marlin/src/gcode/calibrate/M425.cpp index 0432b4c96275..cd206ca48927 100644 --- a/Marlin/src/gcode/calibrate/M425.cpp +++ b/Marlin/src/gcode/calibrate/M425.cpp @@ -112,17 +112,19 @@ void GcodeSuite::M425_report(const bool forReplay/*=true*/) { #ifdef BACKLASH_SMOOTHING_MM , PSTR(" S"), LINEAR_UNIT(backlash.get_smoothing_mm()) #endif - , LIST_N(DOUBLE(NUM_AXES), - SP_X_STR, LINEAR_UNIT(backlash.get_distance_mm(X_AXIS)), - SP_Y_STR, LINEAR_UNIT(backlash.get_distance_mm(Y_AXIS)), - SP_Z_STR, LINEAR_UNIT(backlash.get_distance_mm(Z_AXIS)), - SP_I_STR, I_AXIS_UNIT(backlash.get_distance_mm(I_AXIS)), - SP_J_STR, J_AXIS_UNIT(backlash.get_distance_mm(J_AXIS)), - SP_K_STR, K_AXIS_UNIT(backlash.get_distance_mm(K_AXIS)), - SP_U_STR, U_AXIS_UNIT(backlash.get_distance_mm(U_AXIS)), - SP_V_STR, V_AXIS_UNIT(backlash.get_distance_mm(V_AXIS)), - SP_W_STR, W_AXIS_UNIT(backlash.get_distance_mm(W_AXIS)) - ) + #if NUM_AXES + , LIST_N(DOUBLE(NUM_AXES), + SP_X_STR, LINEAR_UNIT(backlash.get_distance_mm(X_AXIS)), + SP_Y_STR, LINEAR_UNIT(backlash.get_distance_mm(Y_AXIS)), + SP_Z_STR, LINEAR_UNIT(backlash.get_distance_mm(Z_AXIS)), + SP_I_STR, I_AXIS_UNIT(backlash.get_distance_mm(I_AXIS)), + SP_J_STR, J_AXIS_UNIT(backlash.get_distance_mm(J_AXIS)), + SP_K_STR, K_AXIS_UNIT(backlash.get_distance_mm(K_AXIS)), + SP_U_STR, U_AXIS_UNIT(backlash.get_distance_mm(U_AXIS)), + SP_V_STR, V_AXIS_UNIT(backlash.get_distance_mm(V_AXIS)), + SP_W_STR, W_AXIS_UNIT(backlash.get_distance_mm(W_AXIS)) + ) + #endif ); } diff --git a/Marlin/src/gcode/config/M200-M205.cpp b/Marlin/src/gcode/config/M200-M205.cpp index cda3177d93eb..8383be691466 100644 --- a/Marlin/src/gcode/config/M200-M205.cpp +++ b/Marlin/src/gcode/config/M200-M205.cpp @@ -143,22 +143,30 @@ void GcodeSuite::M201() { void GcodeSuite::M201_report(const bool forReplay/*=true*/) { report_heading_etc(forReplay, F(STR_MAX_ACCELERATION)); - SERIAL_ECHOLNPGM_P( - LIST_N(DOUBLE(NUM_AXES), - PSTR(" M201 X"), LINEAR_UNIT(planner.settings.max_acceleration_mm_per_s2[X_AXIS]), - SP_Y_STR, LINEAR_UNIT(planner.settings.max_acceleration_mm_per_s2[Y_AXIS]), - SP_Z_STR, LINEAR_UNIT(planner.settings.max_acceleration_mm_per_s2[Z_AXIS]), - SP_I_STR, I_AXIS_UNIT(planner.settings.max_acceleration_mm_per_s2[I_AXIS]), - SP_J_STR, J_AXIS_UNIT(planner.settings.max_acceleration_mm_per_s2[J_AXIS]), - SP_K_STR, K_AXIS_UNIT(planner.settings.max_acceleration_mm_per_s2[K_AXIS]), - SP_U_STR, U_AXIS_UNIT(planner.settings.max_acceleration_mm_per_s2[U_AXIS]), - SP_V_STR, V_AXIS_UNIT(planner.settings.max_acceleration_mm_per_s2[V_AXIS]), - SP_W_STR, W_AXIS_UNIT(planner.settings.max_acceleration_mm_per_s2[W_AXIS]) - ) - #if HAS_EXTRUDERS && DISABLED(DISTINCT_E_FACTORS) - , SP_E_STR, VOLUMETRIC_UNIT(planner.settings.max_acceleration_mm_per_s2[E_AXIS]) - #endif - ); + #if NUM_AXES + SERIAL_ECHOPGM_P( + LIST_N(DOUBLE(NUM_AXES), + PSTR(" M201 X"), LINEAR_UNIT(planner.settings.max_acceleration_mm_per_s2[X_AXIS]), + SP_Y_STR, LINEAR_UNIT(planner.settings.max_acceleration_mm_per_s2[Y_AXIS]), + SP_Z_STR, LINEAR_UNIT(planner.settings.max_acceleration_mm_per_s2[Z_AXIS]), + SP_I_STR, I_AXIS_UNIT(planner.settings.max_acceleration_mm_per_s2[I_AXIS]), + SP_J_STR, J_AXIS_UNIT(planner.settings.max_acceleration_mm_per_s2[J_AXIS]), + SP_K_STR, K_AXIS_UNIT(planner.settings.max_acceleration_mm_per_s2[K_AXIS]), + SP_U_STR, U_AXIS_UNIT(planner.settings.max_acceleration_mm_per_s2[U_AXIS]), + SP_V_STR, V_AXIS_UNIT(planner.settings.max_acceleration_mm_per_s2[V_AXIS]), + SP_W_STR, W_AXIS_UNIT(planner.settings.max_acceleration_mm_per_s2[W_AXIS]) + ) + ); + #endif + + #if HAS_EXTRUDERS && DISABLED(DISTINCT_E_FACTORS) + SERIAL_ECHOPGM_P(SP_E_STR, VOLUMETRIC_UNIT(planner.settings.max_acceleration_mm_per_s2[E_AXIS])); + #endif + + #if NUM_AXES || (HAS_EXTRUDERS && DISABLED(DISTINCT_E_FACTORS)) + SERIAL_EOL(); + #endif + #if ENABLED(DISTINCT_E_FACTORS) LOOP_L_N(i, E_STEPPERS) { report_echo_start(forReplay); @@ -191,22 +199,30 @@ void GcodeSuite::M203() { void GcodeSuite::M203_report(const bool forReplay/*=true*/) { report_heading_etc(forReplay, F(STR_MAX_FEEDRATES)); - SERIAL_ECHOLNPGM_P( - LIST_N(DOUBLE(NUM_AXES), - PSTR(" M203 X"), LINEAR_UNIT(planner.settings.max_feedrate_mm_s[X_AXIS]), - SP_Y_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[Y_AXIS]), - SP_Z_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[Z_AXIS]), - SP_I_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[I_AXIS]), - SP_J_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[J_AXIS]), - SP_K_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[K_AXIS]), - SP_U_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[U_AXIS]), - SP_V_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[V_AXIS]), - SP_W_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[W_AXIS]) - ) - #if HAS_EXTRUDERS && DISABLED(DISTINCT_E_FACTORS) - , SP_E_STR, VOLUMETRIC_UNIT(planner.settings.max_feedrate_mm_s[E_AXIS]) - #endif - ); + #if NUM_AXES + SERIAL_ECHOPGM_P( + LIST_N(DOUBLE(NUM_AXES), + PSTR(" M203 X"), LINEAR_UNIT(planner.settings.max_feedrate_mm_s[X_AXIS]), + SP_Y_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[Y_AXIS]), + SP_Z_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[Z_AXIS]), + SP_I_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[I_AXIS]), + SP_J_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[J_AXIS]), + SP_K_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[K_AXIS]), + SP_U_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[U_AXIS]), + SP_V_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[V_AXIS]), + SP_W_STR, LINEAR_UNIT(planner.settings.max_feedrate_mm_s[W_AXIS]) + ) + ); + #endif + + #if HAS_EXTRUDERS && DISABLED(DISTINCT_E_FACTORS) + SERIAL_ECHOPGM_P(SP_E_STR, VOLUMETRIC_UNIT(planner.settings.max_feedrate_mm_s[E_AXIS])); + #endif + + #if NUM_AXES || (HAS_EXTRUDERS && DISABLED(DISTINCT_E_FACTORS)) + SERIAL_EOL(); + #endif + #if ENABLED(DISTINCT_E_FACTORS) LOOP_L_N(i, E_STEPPERS) { if (!forReplay) SERIAL_ECHO_START(); @@ -336,7 +352,7 @@ void GcodeSuite::M205_report(const bool forReplay/*=true*/) { #if HAS_JUNCTION_DEVIATION , PSTR(" J"), LINEAR_UNIT(planner.junction_deviation_mm) #endif - #if HAS_CLASSIC_JERK + #if HAS_CLASSIC_JERK && NUM_AXES , LIST_N(DOUBLE(NUM_AXES), SP_X_STR, LINEAR_UNIT(planner.max_jerk.x), SP_Y_STR, LINEAR_UNIT(planner.max_jerk.y), diff --git a/Marlin/src/gcode/config/M217.cpp b/Marlin/src/gcode/config/M217.cpp index b360739e210a..908a19fae711 100644 --- a/Marlin/src/gcode/config/M217.cpp +++ b/Marlin/src/gcode/config/M217.cpp @@ -95,7 +95,9 @@ void GcodeSuite::M217() { #if ENABLED(TOOLCHANGE_PARK) if (parser.seenval('W')) { toolchange_settings.enable_park = parser.value_linear_units(); } - if (parser.seenval('X')) { const int16_t v = parser.value_linear_units(); toolchange_settings.change_point.x = constrain(v, X_MIN_POS, X_MAX_POS); } + #if HAS_X_AXIS + if (parser.seenval('X')) { const int16_t v = parser.value_linear_units(); toolchange_settings.change_point.x = constrain(v, X_MIN_POS, X_MAX_POS); } + #endif #if HAS_Y_AXIS if (parser.seenval('Y')) { const int16_t v = parser.value_linear_units(); toolchange_settings.change_point.y = constrain(v, Y_MIN_POS, Y_MAX_POS); } #endif @@ -183,25 +185,27 @@ void GcodeSuite::M217_report(const bool forReplay/*=true*/) { #endif #if ENABLED(TOOLCHANGE_PARK) - { SERIAL_ECHOPGM(" W", LINEAR_UNIT(toolchange_settings.enable_park)); - SERIAL_ECHOPGM_P( - SP_X_STR, LINEAR_UNIT(toolchange_settings.change_point.x) - #if HAS_Y_AXIS - , SP_Y_STR, LINEAR_UNIT(toolchange_settings.change_point.y) - #endif - #if SECONDARY_AXES >= 1 - , LIST_N(DOUBLE(SECONDARY_AXES) - , SP_I_STR, I_AXIS_UNIT(toolchange_settings.change_point.i) - , SP_J_STR, J_AXIS_UNIT(toolchange_settings.change_point.j) - , SP_K_STR, K_AXIS_UNIT(toolchange_settings.change_point.k) - , SP_C_STR, U_AXIS_UNIT(toolchange_settings.change_point.u) - , PSTR(" H"), V_AXIS_UNIT(toolchange_settings.change_point.v) - , PSTR(" O"), W_AXIS_UNIT(toolchange_settings.change_point.w) - ) - #endif - ); - } + #if NUM_AXES + { + SERIAL_ECHOPGM_P( + SP_X_STR, LINEAR_UNIT(toolchange_settings.change_point.x) + #if HAS_Y_AXIS + , SP_Y_STR, LINEAR_UNIT(toolchange_settings.change_point.y) + #endif + #if SECONDARY_AXES >= 1 + , LIST_N(DOUBLE(SECONDARY_AXES) + , SP_I_STR, I_AXIS_UNIT(toolchange_settings.change_point.i) + , SP_J_STR, J_AXIS_UNIT(toolchange_settings.change_point.j) + , SP_K_STR, K_AXIS_UNIT(toolchange_settings.change_point.k) + , SP_C_STR, U_AXIS_UNIT(toolchange_settings.change_point.u) + , PSTR(" H"), V_AXIS_UNIT(toolchange_settings.change_point.v) + , PSTR(" O"), W_AXIS_UNIT(toolchange_settings.change_point.w) + ) + #endif + ); + } + #endif #endif #if ENABLED(TOOLCHANGE_FS_PRIME_FIRST_USED) diff --git a/Marlin/src/gcode/config/M218.cpp b/Marlin/src/gcode/config/M218.cpp index c39447a28d38..62295f5771c6 100644 --- a/Marlin/src/gcode/config/M218.cpp +++ b/Marlin/src/gcode/config/M218.cpp @@ -46,9 +46,15 @@ void GcodeSuite::M218() { const int8_t target_extruder = get_target_extruder_from_command(); if (target_extruder < 0) return; - if (parser.seenval('X')) hotend_offset[target_extruder].x = parser.value_linear_units(); - if (parser.seenval('Y')) hotend_offset[target_extruder].y = parser.value_linear_units(); - if (parser.seenval('Z')) hotend_offset[target_extruder].z = parser.value_linear_units(); + #if HAS_X_AXIS + if (parser.seenval('X')) hotend_offset[target_extruder].x = parser.value_linear_units(); + #endif + #if HAS_Y_AXIS + if (parser.seenval('Y')) hotend_offset[target_extruder].y = parser.value_linear_units(); + #endif + #if HAS_Z_AXIS + if (parser.seenval('Z')) hotend_offset[target_extruder].z = parser.value_linear_units(); + #endif #if ENABLED(DELTA) if (target_extruder == active_extruder) diff --git a/Marlin/src/gcode/config/M92.cpp b/Marlin/src/gcode/config/M92.cpp index c7610b83a9b9..888a7e5c21d0 100644 --- a/Marlin/src/gcode/config/M92.cpp +++ b/Marlin/src/gcode/config/M92.cpp @@ -92,21 +92,27 @@ void GcodeSuite::M92() { void GcodeSuite::M92_report(const bool forReplay/*=true*/, const int8_t e/*=-1*/) { report_heading_etc(forReplay, F(STR_STEPS_PER_UNIT)); - SERIAL_ECHOPGM_P(LIST_N(DOUBLE(NUM_AXES), - PSTR(" M92 X"), LINEAR_UNIT(planner.settings.axis_steps_per_mm[X_AXIS]), - SP_Y_STR, LINEAR_UNIT(planner.settings.axis_steps_per_mm[Y_AXIS]), - SP_Z_STR, LINEAR_UNIT(planner.settings.axis_steps_per_mm[Z_AXIS]), - SP_I_STR, I_AXIS_UNIT(planner.settings.axis_steps_per_mm[I_AXIS]), - SP_J_STR, J_AXIS_UNIT(planner.settings.axis_steps_per_mm[J_AXIS]), - SP_K_STR, K_AXIS_UNIT(planner.settings.axis_steps_per_mm[K_AXIS]), - SP_U_STR, U_AXIS_UNIT(planner.settings.axis_steps_per_mm[U_AXIS]), - SP_V_STR, V_AXIS_UNIT(planner.settings.axis_steps_per_mm[V_AXIS]), - SP_W_STR, W_AXIS_UNIT(planner.settings.axis_steps_per_mm[W_AXIS]) - )); + #if NUM_AXES + SERIAL_ECHOPGM_P(LIST_N(DOUBLE(NUM_AXES), + PSTR(" M92 X"), LINEAR_UNIT(planner.settings.axis_steps_per_mm[X_AXIS]), + SP_Y_STR, LINEAR_UNIT(planner.settings.axis_steps_per_mm[Y_AXIS]), + SP_Z_STR, LINEAR_UNIT(planner.settings.axis_steps_per_mm[Z_AXIS]), + SP_I_STR, I_AXIS_UNIT(planner.settings.axis_steps_per_mm[I_AXIS]), + SP_J_STR, J_AXIS_UNIT(planner.settings.axis_steps_per_mm[J_AXIS]), + SP_K_STR, K_AXIS_UNIT(planner.settings.axis_steps_per_mm[K_AXIS]), + SP_U_STR, U_AXIS_UNIT(planner.settings.axis_steps_per_mm[U_AXIS]), + SP_V_STR, V_AXIS_UNIT(planner.settings.axis_steps_per_mm[V_AXIS]), + SP_W_STR, W_AXIS_UNIT(planner.settings.axis_steps_per_mm[W_AXIS]) + )); + #endif + #if HAS_EXTRUDERS && DISABLED(DISTINCT_E_FACTORS) SERIAL_ECHOPGM_P(SP_E_STR, VOLUMETRIC_UNIT(planner.settings.axis_steps_per_mm[E_AXIS])); #endif - SERIAL_EOL(); + + #if NUM_AXES || (HAS_EXTRUDERS && DISABLED(DISTINCT_E_FACTORS)) + SERIAL_EOL(); + #endif #if ENABLED(DISTINCT_E_FACTORS) LOOP_L_N(i, E_STEPPERS) { diff --git a/Marlin/src/gcode/control/M17_M18_M84.cpp b/Marlin/src/gcode/control/M17_M18_M84.cpp index 053497c69c02..1742d288b3f5 100644 --- a/Marlin/src/gcode/control/M17_M18_M84.cpp +++ b/Marlin/src/gcode/control/M17_M18_M84.cpp @@ -48,17 +48,19 @@ inline stepper_flags_t selected_axis_bits() { selected.bits = e_axis_mask; } #endif - selected.bits |= NUM_AXIS_GANG( - (parser.seen_test('X') << X_AXIS), - | (parser.seen_test('Y') << Y_AXIS), - | (parser.seen_test('Z') << Z_AXIS), - | (parser.seen_test(AXIS4_NAME) << I_AXIS), - | (parser.seen_test(AXIS5_NAME) << J_AXIS), - | (parser.seen_test(AXIS6_NAME) << K_AXIS), - | (parser.seen_test(AXIS7_NAME) << U_AXIS), - | (parser.seen_test(AXIS8_NAME) << V_AXIS), - | (parser.seen_test(AXIS9_NAME) << W_AXIS) - ); + #if NUM_AXES + selected.bits |= NUM_AXIS_GANG( + (parser.seen_test('X') << X_AXIS), + | (parser.seen_test('Y') << Y_AXIS), + | (parser.seen_test('Z') << Z_AXIS), + | (parser.seen_test(AXIS4_NAME) << I_AXIS), + | (parser.seen_test(AXIS5_NAME) << J_AXIS), + | (parser.seen_test(AXIS6_NAME) << K_AXIS), + | (parser.seen_test(AXIS7_NAME) << U_AXIS), + | (parser.seen_test(AXIS8_NAME) << V_AXIS), + | (parser.seen_test(AXIS9_NAME) << W_AXIS) + ); + #endif return selected; } diff --git a/Marlin/src/gcode/feature/pause/G60.cpp b/Marlin/src/gcode/feature/pause/G60.cpp index b32935b341b9..aa74a57596d1 100644 --- a/Marlin/src/gcode/feature/pause/G60.cpp +++ b/Marlin/src/gcode/feature/pause/G60.cpp @@ -50,16 +50,19 @@ void GcodeSuite::G60() { { const xyze_pos_t &pos = stored_position[slot]; DEBUG_ECHOPGM(STR_SAVED_POS " S", slot, " :"); - DEBUG_ECHOLNPGM_P( - LIST_N(DOUBLE(NUM_AXES), - SP_X_LBL, pos.x, SP_Y_LBL, pos.y, SP_Z_LBL, pos.z, - SP_I_LBL, pos.i, SP_J_LBL, pos.j, SP_K_LBL, pos.k, - SP_U_LBL, pos.u, SP_V_LBL, pos.v, SP_W_LBL, pos.w - ) - #if HAS_EXTRUDERS - , SP_E_LBL, pos.e - #endif - ); + #if NUM_AXES + DEBUG_ECHOPGM_P( + LIST_N(DOUBLE(NUM_AXES), + SP_X_LBL, pos.x, SP_Y_LBL, pos.y, SP_Z_LBL, pos.z, + SP_I_LBL, pos.i, SP_J_LBL, pos.j, SP_K_LBL, pos.k, + SP_U_LBL, pos.u, SP_V_LBL, pos.v, SP_W_LBL, pos.w + ) + ); + #endif + #if HAS_EXTRUDERS + DEBUG_ECHOPGM_P(SP_E_LBL, pos.e); + #endif + DEBUG_EOL(); } #endif } diff --git a/Marlin/src/gcode/feature/trinamic/M569.cpp b/Marlin/src/gcode/feature/trinamic/M569.cpp index e0aa182bf285..50ac5c746871 100644 --- a/Marlin/src/gcode/feature/trinamic/M569.cpp +++ b/Marlin/src/gcode/feature/trinamic/M569.cpp @@ -57,10 +57,12 @@ static void set_stealth_status(const bool enable, const int8_t eindex) { LOOP_LOGICAL_AXES(i) if (parser.seen(AXIS_CHAR(i))) { switch (i) { - case X_AXIS: - TERN_(X_HAS_STEALTHCHOP, if (index < 0 || index == 0) TMC_SET_STEALTH(X)); - TERN_(X2_HAS_STEALTHCHOP, if (index < 0 || index == 1) TMC_SET_STEALTH(X2)); - break; + #if HAS_X_AXIS + case X_AXIS: + TERN_(X_HAS_STEALTHCHOP, if (index < 0 || index == 0) TMC_SET_STEALTH(X)); + TERN_(X2_HAS_STEALTHCHOP, if (index < 0 || index == 1) TMC_SET_STEALTH(X2)); + break; + #endif #if HAS_Y_AXIS case Y_AXIS: @@ -198,13 +200,13 @@ void GcodeSuite::M569_report(const bool forReplay/*=true*/) { if (chop_x2 || chop_y2 || chop_z2) { say_M569(forReplay, F("I1")); - if (chop_x2) SERIAL_ECHOPGM_P(SP_X_STR); - #if HAS_Y_AXIS - if (chop_y2) SERIAL_ECHOPGM_P(SP_Y_STR); - #endif - #if HAS_Z_AXIS - if (chop_z2) SERIAL_ECHOPGM_P(SP_Z_STR); - #endif + NUM_AXIS_CODE( + if (chop_x2) SERIAL_ECHOPGM_P(SP_X_STR), + if (chop_y2) SERIAL_ECHOPGM_P(SP_Y_STR), + if (chop_z2) SERIAL_ECHOPGM_P(SP_Z_STR), + NOOP, NOOP, NOOP, + NOOP, NOOP, NOOP + ); SERIAL_EOL(); } diff --git a/Marlin/src/gcode/feature/trinamic/M911-M914.cpp b/Marlin/src/gcode/feature/trinamic/M911-M914.cpp index 0fbf1def6777..fa1cc1227cc2 100644 --- a/Marlin/src/gcode/feature/trinamic/M911-M914.cpp +++ b/Marlin/src/gcode/feature/trinamic/M911-M914.cpp @@ -35,7 +35,7 @@ #define M91x_USE(ST) (AXIS_DRIVER_TYPE(ST, TMC2130) || AXIS_DRIVER_TYPE(ST, TMC2160) || AXIS_DRIVER_TYPE(ST, TMC2208) || AXIS_DRIVER_TYPE(ST, TMC2209) || AXIS_DRIVER_TYPE(ST, TMC2660) || AXIS_DRIVER_TYPE(ST, TMC5130) || AXIS_DRIVER_TYPE(ST, TMC5160)) #define M91x_USE_E(N) (E_STEPPERS > N && M91x_USE(E##N)) - #if M91x_USE(X) || M91x_USE(X2) + #if HAS_X_AXIS && (M91x_USE(X) || M91x_USE(X2)) #define M91x_SOME_X 1 #endif #if HAS_Y_AXIS && (M91x_USE(Y) || M91x_USE(Y2)) diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 8114cb426106..01266354ce85 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -796,10 +796,14 @@ #define NUM_AXES 3 #elif defined(Y_DRIVER_TYPE) #define NUM_AXES 2 -#else +#elif defined(X_DRIVER_TYPE) #define NUM_AXES 1 +#else + #define NUM_AXES 0 +#endif +#if NUM_AXES >= 1 + #define HAS_X_AXIS 1 #endif -#define HAS_X_AXIS 1 #if NUM_AXES >= XY #define HAS_Y_AXIS 1 #endif @@ -825,6 +829,23 @@ #define HAS_W_AXIS 1 #endif +#if !HAS_X_AXIS + #undef ENDSTOPPULLUP_XMIN + #undef ENDSTOPPULLUP_XMAX + #undef X_MIN_ENDSTOP_INVERTING + #undef X_MAX_ENDSTOP_INVERTING + #undef X2_DRIVER_TYPE + #undef X_ENABLE_ON + #undef DISABLE_X + #undef INVERT_X_DIR + #undef X_HOME_DIR + #undef X_MIN_POS + #undef X_MAX_POS + #undef MANUAL_X_HOME_POS + #undef MIN_SOFTWARE_ENDSTOPS + #undef MAX_SOFTWARE_ENDSTOPS +#endif + #if !HAS_Y_AXIS #undef AVOID_OBSTACLES #undef ENDSTOPPULLUP_YMIN @@ -1318,10 +1339,12 @@ #endif // FILAMENT_SWITCH_AND_MOTION // Homing to Min or Max -#if X_HOME_DIR > 0 - #define X_HOME_TO_MAX 1 -#elif X_HOME_DIR < 0 - #define X_HOME_TO_MIN 1 +#if HAS_X_AXIS + #if X_HOME_DIR > 0 + #define X_HOME_TO_MAX 1 + #elif X_HOME_DIR < 0 + #define X_HOME_TO_MIN 1 + #endif #endif #if HAS_Y_AXIS #if Y_HOME_DIR > 0 diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index 7ea12f049340..7880351c0dad 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -94,8 +94,26 @@ #endif // Some options are disallowed without required axes +#if !HAS_X_AXIS + //#define LCD_SHOW_E_TOTAL + #define NO_WORKSPACE_OFFSETS + #undef AUTOTEMP + #undef CALIBRATION_MEASURE_LEFT + #undef CALIBRATION_MEASURE_RIGHT + #undef CALIBRATION_MEASURE_XMAX + #undef CALIBRATION_MEASURE_XMIN + #undef DISABLE_IDLE_X + #undef INPUT_SHAPING_X + #undef SAFE_BED_LEVELING_START_X + #undef SHAPING_BUFFER_X + #undef SHAPING_FREQ_X + #undef STEALTHCHOP_X +#endif + #if !HAS_Y_AXIS #undef ARC_SUPPORT + #undef CALIBRATION_MEASURE_BACK + #undef CALIBRATION_MEASURE_FRONT #undef CALIBRATION_MEASURE_YMAX #undef CALIBRATION_MEASURE_YMIN #undef DISABLE_IDLE_Y diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index b7ee00def826..17f2b909e6a7 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -105,7 +105,9 @@ #define HAS_ROTATIONAL_AXES 1 #endif -#define X_MAX_LENGTH (X_MAX_POS - (X_MIN_POS)) +#if HAS_X_AXIS + #define X_MAX_LENGTH (X_MAX_POS - (X_MIN_POS)) +#endif #if HAS_Y_AXIS #define Y_MAX_LENGTH (Y_MAX_POS - (Y_MIN_POS)) #endif @@ -134,7 +136,7 @@ #endif // Defined only if the sanity-check is bypassed -#ifndef X_BED_SIZE +#if HAS_X_AXIS && !defined(X_BED_SIZE) #define X_BED_SIZE X_MAX_LENGTH #endif #if HAS_Y_AXIS && !defined(Y_BED_SIZE) @@ -165,7 +167,9 @@ #endif // Define center values for future use -#define _X_HALF_BED ((X_BED_SIZE) / 2) +#if HAS_X_AXIS + #define _X_HALF_BED ((X_BED_SIZE) / 2) +#endif #if HAS_Y_AXIS #define _Y_HALF_BED ((Y_BED_SIZE) / 2) #endif @@ -188,7 +192,9 @@ #define _W_HALF_WMAX ((W_BED_SIZE) / 2) #endif -#define X_CENTER TERN(BED_CENTER_AT_0_0, 0, _X_HALF_BED) +#if HAS_X_AXIS + #define X_CENTER TERN(BED_CENTER_AT_0_0, 0, _X_HALF_BED) +#endif #if HAS_Y_AXIS #define Y_CENTER TERN(BED_CENTER_AT_0_0, 0, _Y_HALF_BED) #define XY_CENTER { X_CENTER, Y_CENTER } @@ -213,8 +219,10 @@ #endif // Get the linear boundaries of the bed -#define X_MIN_BED (X_CENTER - _X_HALF_BED) -#define X_MAX_BED (X_MIN_BED + X_BED_SIZE) +#if HAS_X_AXIS + #define X_MIN_BED (X_CENTER - _X_HALF_BED) + #define X_MAX_BED (X_MIN_BED + X_BED_SIZE) +#endif #if HAS_Y_AXIS #define Y_MIN_BED (Y_CENTER - _Y_HALF_BED) #define Y_MAX_BED (Y_MIN_BED + Y_BED_SIZE) @@ -292,14 +300,16 @@ /** * Set the home position based on settings or manual overrides */ -#ifdef MANUAL_X_HOME_POS - #define X_HOME_POS MANUAL_X_HOME_POS -#else - #define X_END_POS TERN(X_HOME_TO_MIN, X_MIN_POS, X_MAX_POS) - #if ENABLED(BED_CENTER_AT_0_0) - #define X_HOME_POS TERN(DELTA, 0, X_END_POS) +#if HAS_X_AXIS + #ifdef MANUAL_X_HOME_POS + #define X_HOME_POS MANUAL_X_HOME_POS #else - #define X_HOME_POS TERN(DELTA, X_MIN_POS + (X_BED_SIZE) * 0.5, X_END_POS) + #define X_END_POS TERN(X_HOME_TO_MIN, X_MIN_POS, X_MAX_POS) + #if ENABLED(BED_CENTER_AT_0_0) + #define X_HOME_POS TERN(DELTA, 0, X_END_POS) + #else + #define X_HOME_POS TERN(DELTA, X_MIN_POS + (X_BED_SIZE) * 0.5, X_END_POS) + #endif #endif #endif @@ -1021,30 +1031,32 @@ */ // Steppers -#if PIN_EXISTS(X_ENABLE) || (ENABLED(SOFTWARE_DRIVER_ENABLE) && AXIS_IS_TMC(X)) - #define HAS_X_ENABLE 1 -#endif -#if PIN_EXISTS(X_DIR) - #define HAS_X_DIR 1 -#endif -#if PIN_EXISTS(X_STEP) - #define HAS_X_STEP 1 -#endif -#if PIN_EXISTS(X_MS1) - #define HAS_X_MS_PINS 1 -#endif +#if HAS_X_AXIS + #if PIN_EXISTS(X_ENABLE) || (ENABLED(SOFTWARE_DRIVER_ENABLE) && AXIS_IS_TMC(X)) + #define HAS_X_ENABLE 1 + #endif + #if PIN_EXISTS(X_DIR) + #define HAS_X_DIR 1 + #endif + #if PIN_EXISTS(X_STEP) + #define HAS_X_STEP 1 + #endif + #if PIN_EXISTS(X_MS1) + #define HAS_X_MS_PINS 1 + #endif -#if PIN_EXISTS(X2_ENABLE) || (ENABLED(SOFTWARE_DRIVER_ENABLE) && AXIS_IS_TMC(X2)) - #define HAS_X2_ENABLE 1 -#endif -#if PIN_EXISTS(X2_DIR) - #define HAS_X2_DIR 1 -#endif -#if PIN_EXISTS(X2_STEP) - #define HAS_X2_STEP 1 -#endif -#if PIN_EXISTS(X2_MS1) - #define HAS_X2_MS_PINS 1 + #if PIN_EXISTS(X2_ENABLE) || (ENABLED(SOFTWARE_DRIVER_ENABLE) && AXIS_IS_TMC(X2)) + #define HAS_X2_ENABLE 1 + #endif + #if PIN_EXISTS(X2_DIR) + #define HAS_X2_DIR 1 + #endif + #if PIN_EXISTS(X2_STEP) + #define HAS_X2_STEP 1 + #endif + #if PIN_EXISTS(X2_MS1) + #define HAS_X2_MS_PINS 1 + #endif #endif /** diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index e495d7a11582..c99297ad4631 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -260,7 +260,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L * Validate bed size */ #if !defined(X_BED_SIZE) || !defined(Y_BED_SIZE) - #error "X_BED_SIZE and Y_BED_SIZE are now required!" + #error "X_BED_SIZE and Y_BED_SIZE are required!" #else #if HAS_X_AXIS static_assert(X_MAX_LENGTH >= X_BED_SIZE, "Movement bounds (X_MIN_POS, X_MAX_POS) are too narrow to contain X_BED_SIZE."); @@ -3372,9 +3372,11 @@ static_assert(COUNT(sanity_arr_3) >= LOGICAL_AXES, "DEFAULT_MAX_ACCELERATION re static_assert(COUNT(sanity_arr_3) <= DISTINCT_AXES, "DEFAULT_MAX_ACCELERATION has too many elements." _EXTRA_NOTE); static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive."); -constexpr float sanity_arr_4[] = HOMING_FEEDRATE_MM_M; -static_assert(COUNT(sanity_arr_4) == NUM_AXES, "HOMING_FEEDRATE_MM_M requires " _NUM_AXES_STR "elements (and no others)."); -static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); +#if NUM_AXES + constexpr float sanity_arr_4[] = HOMING_FEEDRATE_MM_M; + static_assert(COUNT(sanity_arr_4) == NUM_AXES, "HOMING_FEEDRATE_MM_M requires " _NUM_AXES_STR "elements (and no others)."); + static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); +#endif #ifdef MAX_ACCEL_EDIT_VALUES constexpr float sanity_arr_5[] = MAX_ACCEL_EDIT_VALUES; @@ -3571,7 +3573,7 @@ static_assert(_PLUS_TEST(4), "HOMING_FEEDRATE_MM_M values must be positive."); #if ENABLED(DUAL_X_CARRIAGE) #error "DUAL_X_CARRIAGE requires both MIN_ and MAX_SOFTWARE_ENDSTOPS." #elif HAS_HOTEND_OFFSET - #error "MIN_ and MAX_SOFTWARE_ENDSTOPS are both required with offset hotends." + #error "Multi-hotends with offset requires both MIN_ and MAX_SOFTWARE_ENDSTOPS." #endif #endif diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp index 36831767f3e5..a0cf5fe46bda 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp @@ -975,7 +975,7 @@ void MarlinUI::draw_status_screen() { #else // !HAS_DUAL_MIXING - const bool show_e_total = TERN0(LCD_SHOW_E_TOTAL, printingIsActive()); + const bool show_e_total = TERN1(HAS_X_AXIS, TERN0(LCD_SHOW_E_TOTAL, printingIsActive())); if (show_e_total) { #if ENABLED(LCD_SHOW_E_TOTAL) @@ -986,10 +986,14 @@ void MarlinUI::draw_status_screen() { #endif } else { - const xy_pos_t lpos = current_position.asLogical(); - _draw_axis_value(X_AXIS, ftostr4sign(lpos.x), blink); - lcd_put_u8str(F(" ")); - _draw_axis_value(Y_AXIS, ftostr4sign(lpos.y), blink); + #if HAS_X_AXIS + const xy_pos_t lpos = current_position.asLogical(); + _draw_axis_value(X_AXIS, ftostr4sign(lpos.x), blink); + #endif + #if HAS_Y_AXIS + TERN_(HAS_X_AXIS, lcd_put_u8str(F(" "))); + _draw_axis_value(Y_AXIS, ftostr4sign(lpos.y), blink); + #endif } #endif // !HAS_DUAL_MIXING @@ -1065,8 +1069,10 @@ void MarlinUI::draw_status_screen() { // // Z Coordinate // - lcd_moveto(LCD_WIDTH - 9, 0); - _draw_axis_value(Z_AXIS, ftostr52sp(LOGICAL_Z_POSITION(current_position.z)), blink); + #if HAS_Z_AXIS + lcd_moveto(LCD_WIDTH - 9, 0); + _draw_axis_value(Z_AXIS, ftostr52sp(LOGICAL_Z_POSITION(current_position.z)), blink); + #endif #if HAS_LEVELING && (HAS_MULTI_HOTEND || !HAS_HEATED_BED) lcd_put_lchar(LCD_WIDTH - 1, 0, planner.leveling_active || blink ? '_' : ' '); diff --git a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp index 6090b13732ae..f7e9ff3e4564 100644 --- a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp +++ b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp @@ -820,11 +820,17 @@ void MarlinUI::draw_status_screen() { // Line 1 - XYZ coordinates // - lcd_moveto(0, 0); - const xyz_pos_t lpos = current_position.asLogical(); - _draw_axis_value(X_AXIS, ftostr4sign(lpos.x), blink); lcd.write(' '); - _draw_axis_value(Y_AXIS, ftostr4sign(lpos.y), blink); lcd.write(' '); - _draw_axis_value(Z_AXIS, ftostr52sp(lpos.z), blink); + #if NUM_AXES + lcd_moveto(0, 0); + const xyz_pos_t lpos = current_position.asLogical(); + _draw_axis_value(X_AXIS, ftostr4sign(lpos.x), blink); + #if HAS_Y_AXIS + lcd.write(' '); _draw_axis_value(Y_AXIS, ftostr4sign(lpos.y), blink); + #endif + #if HAS_Z_AXIS + lcd.write(' '); _draw_axis_value(Z_AXIS, ftostr52sp(lpos.z), blink); + #endif + #endif #if HAS_LEVELING && !HAS_HEATED_BED lcd.write(planner.leveling_active || blink ? '_' : ' '); diff --git a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp index cb3515a694cb..7d1f090d1e3f 100644 --- a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp +++ b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp @@ -510,20 +510,24 @@ FORCE_INLINE void _draw_axis_value(const AxisEnum axis, const char *value, const * Use the PAGE_CONTAINS macros to avoid pointless draw calls. */ void MarlinUI::draw_status_screen() { - constexpr int xystorage = TERN(INCH_MODE_SUPPORT, 8, 5); - static char xstring[TERN(LCD_SHOW_E_TOTAL, 12, xystorage)]; - #if HAS_Y_AXIS - static char ystring[xystorage]; - #endif - #if HAS_Z_AXIS - static char zstring[8]; + #if NUM_AXES + constexpr int xystorage = TERN(INCH_MODE_SUPPORT, 8, 5); + #if EITHER(HAS_X_AXIS, LCD_SHOW_E_TOTAL) + static char xstring[TERN(LCD_SHOW_E_TOTAL, 12, xystorage)]; + #endif + #if HAS_Y_AXIS + static char ystring[xystorage]; + #endif + #if HAS_Z_AXIS + static char zstring[8]; + #endif #endif #if ENABLED(FILAMENT_LCD_DISPLAY) static char wstring[5], mstring[4]; #endif - const bool show_e_total = TERN0(LCD_SHOW_E_TOTAL, printingIsActive()); + const bool show_e_total = TERN1(HAS_X_AXIS, TERN0(LCD_SHOW_E_TOTAL, printingIsActive())); #if HAS_PRINT_PROGRESS static u8g_uint_t progress_bar_solid_width = 0; @@ -544,10 +548,9 @@ void MarlinUI::draw_status_screen() { draw_bits = new_bits; #endif - const xyz_pos_t lpos = current_position.asLogical(); - const bool is_inch = parser.using_inch_units(); - #if HAS_Z_AXIS - strcpy(zstring, is_inch ? ftostr42_52(LINEAR_UNIT(lpos.z)) : ftostr52sp(lpos.z)); + #if NUM_AXES + const xyz_pos_t lpos = current_position.asLogical(); + const bool is_inch = parser.using_inch_units(); #endif if (show_e_total) { @@ -557,10 +560,12 @@ void MarlinUI::draw_status_screen() { #endif } else { - strcpy(xstring, is_inch ? ftostr53_63(LINEAR_UNIT(lpos.x)) : ftostr4sign(lpos.x)); + TERN_(HAS_X_AXIS, strcpy(xstring, is_inch ? ftostr53_63(LINEAR_UNIT(lpos.x)) : ftostr4sign(lpos.x))); TERN_(HAS_Y_AXIS, strcpy(ystring, is_inch ? ftostr53_63(LINEAR_UNIT(lpos.y)) : ftostr4sign(lpos.y))); } + TERN_(HAS_Z_AXIS, strcpy(zstring, is_inch ? ftostr42_52(LINEAR_UNIT(lpos.z)) : ftostr52sp(lpos.z))); + #if ENABLED(FILAMENT_LCD_DISPLAY) strcpy(wstring, ftostr12ns(filwidth.measured_mm)); strcpy(mstring, i16tostr3rj(planner.volumetric_percent(parser.volumetric_enabled))); @@ -839,15 +844,13 @@ void MarlinUI::draw_status_screen() { #endif } else { - _draw_axis_value(X_AXIS, xstring, blink); + TERN_(HAS_X_AXIS, _draw_axis_value(X_AXIS, xstring, blink)); TERN_(HAS_Y_AXIS, _draw_axis_value(Y_AXIS, ystring, blink)); } #endif - #if HAS_Z_AXIS - _draw_axis_value(Z_AXIS, zstring, blink); - #endif + TERN_(HAS_Z_AXIS, _draw_axis_value(Z_AXIS, zstring, blink)); #if NONE(XYZ_NO_FRAME, XYZ_HOLLOW_FRAME) u8g.setColorIndex(1); // black on white diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index c4098bdb49cc..e7f15792f346 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -2365,14 +2365,16 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item else Draw_Menu(Motion, MOTION_SPEED); break; - case SPEED_X: - if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeedX, F("X Axis")); - Draw_Float(planner.settings.max_feedrate_mm_s[X_AXIS], row, false, 1); - } - else - Modify_Value(planner.settings.max_feedrate_mm_s[X_AXIS], 0, default_max_feedrate[X_AXIS] * 2, 1); - break; + #if HAS_X_AXIS + case SPEED_X: + if (draw) { + Draw_Menu_Item(row, ICON_MaxSpeedX, F("X Axis")); + Draw_Float(planner.settings.max_feedrate_mm_s[X_AXIS], row, false, 1); + } + else + Modify_Value(planner.settings.max_feedrate_mm_s[X_AXIS], 0, default_max_feedrate[X_AXIS] * 2, 1); + break; + #endif #if HAS_Y_AXIS case SPEED_Y: diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp index 70c7c2d8f0ba..5cfeb6488f92 100644 --- a/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp @@ -308,14 +308,14 @@ void MarlinUI::draw_status_screen() { // Axis values const xyz_pos_t lpos = current_position.asLogical(); - const bool show_e_total = TERN0(LCD_SHOW_E_TOTAL, printingIsActive()); UNUSED(show_e_total); + const bool show_e_total = TERN1(HAS_X_AXIS, TERN0(LCD_SHOW_E_TOTAL, printingIsActive())); constexpr int16_t cpy = TERN(DWIN_MARLINUI_PORTRAIT, 195, 117); if (show_e_total) { TERN_(LCD_SHOW_E_TOTAL, _draw_e_value(e_move_accumulator, TERN(DWIN_MARLINUI_PORTRAIT, 6, 75), cpy)); } else { - _draw_axis_value(X_AXIS, ftostr4sign(lpos.x), blink, TERN(DWIN_MARLINUI_PORTRAIT, 6, 75), cpy); + TERN_(HAS_X_AXIS, _draw_axis_value(X_AXIS, ftostr4sign(lpos.x), blink, TERN(DWIN_MARLINUI_PORTRAIT, 6, 75), cpy)); TERN_(HAS_Y_AXIS, _draw_axis_value(Y_AXIS, ftostr4sign(lpos.y), blink, TERN(DWIN_MARLINUI_PORTRAIT, 95, 184), cpy)); } TERN_(HAS_Z_AXIS, _draw_axis_value(Z_AXIS, ftostr52sp(lpos.z), blink, TERN(DWIN_MARLINUI_PORTRAIT, 165, 300), cpy)); diff --git a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp index 0c76454d747e..bdfea5d14720 100644 --- a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp @@ -162,10 +162,12 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { switch (var.VP) { default: return; - case VP_MOVE_X: - axiscode = 'X'; - if (!ExtUI::canMove(ExtUI::axis_t::X)) goto cannotmove; - break; + #if HAS_X_AXIS + case VP_MOVE_X: + axiscode = 'X'; + if (!ExtUI::canMove(ExtUI::axis_t::X)) goto cannotmove; + break; + #endif #if HAS_Y_AXIS case VP_MOVE_Y: diff --git a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp index 83658cc8c021..e37718e0a742 100644 --- a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp @@ -162,10 +162,12 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { switch (var.VP) { default: return; - case VP_MOVE_X: - axiscode = 'X'; - if (!ExtUI::canMove(ExtUI::axis_t::X)) goto cannotmove; - break; + #if HAS_X_AXIS + case VP_MOVE_X: + axiscode = 'X'; + if (!ExtUI::canMove(ExtUI::axis_t::X)) goto cannotmove; + break; + #endif #if HAS_Y_AXIS case VP_MOVE_Y: diff --git a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp index 8cddcb074eea..c06971fb1054 100644 --- a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp @@ -743,10 +743,12 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { switch (var.VP) { // switch X Y Z or Home default: return; - case VP_MOVE_X: - axiscode = 'X'; - if (!ExtUI::canMove(ExtUI::axis_t::X)) goto cannotmove; - break; + #if HAS_X_AXIS + case VP_MOVE_X: + axiscode = 'X'; + if (!ExtUI::canMove(ExtUI::axis_t::X)) goto cannotmove; + break; + #endif #if HAS_Y_AXIS case VP_MOVE_Y: @@ -773,10 +775,12 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { movevalue = 0; // ignore value sent from display, this VP is _ONLY_ for homing. break; - case VP_X_HOME: - axiscode = 'X'; - movevalue = 0; - break; + #if HAS_X_AXIS + case VP_X_HOME: + axiscode = 'X'; + movevalue = 0; + break; + #endif #if HAS_Y_AXIS case VP_Y_HOME: diff --git a/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp index 6921cdc73767..c274d7b431e3 100644 --- a/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp @@ -162,10 +162,12 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { switch (var.VP) { default: return; - case VP_MOVE_X: - axiscode = 'X'; - if (!ExtUI::canMove(ExtUI::axis_t::X)) goto cannotmove; - break; + #if HAS_X_AXIS + case VP_MOVE_X: + axiscode = 'X'; + if (!ExtUI::canMove(ExtUI::axis_t::X)) goto cannotmove; + break; + #endif #if HAS_Y_AXIS case VP_MOVE_Y: diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.cpp index c15ff1173ff7..c08935f3bcda 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.cpp @@ -77,8 +77,10 @@ bool BaseMoveAxisScreen::onTouchHeld(const uint8_t tag) { #define UI_DECREMENT_AXIS(axis) setManualFeedrate(axis, increment); UI_DECREMENT(AxisPosition_mm, axis); const float increment = getIncrement(); switch (tag) { - case 2: UI_DECREMENT_AXIS(X); break; - case 3: UI_INCREMENT_AXIS(X); break; + #if HAS_X_AXIS + case 2: UI_DECREMENT_AXIS(X); break; + case 3: UI_INCREMENT_AXIS(X); break; + #endif #if HAS_EXTRUDERS // For extruders, also update relative distances. case 8: UI_DECREMENT_AXIS(E0); mydata.e_rel[0] -= increment; break; diff --git a/Marlin/src/lcd/extui/mks_ui/draw_acceleration_settings.cpp b/Marlin/src/lcd/extui/mks_ui/draw_acceleration_settings.cpp index ac7d6d3dfb37..48455e7e36c5 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_acceleration_settings.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_acceleration_settings.cpp @@ -124,8 +124,10 @@ void lv_draw_acceleration_settings() { lv_screen_menu_item_1_edit(scr, machine_menu.TravelAcceleration, PARA_UI_POS_X, y, event_handler, ID_ACCE_TRAVEL, 2, public_buf_l); y += PARA_UI_POS_Y; - itoa(planner.settings.max_acceleration_mm_per_s2[X_AXIS], public_buf_l, 10); - lv_screen_menu_item_1_edit(scr, machine_menu.X_Acceleration, PARA_UI_POS_X, y, event_handler, ID_ACCE_X, 3, public_buf_l); + #if HAS_X_AXIS + itoa(planner.settings.max_acceleration_mm_per_s2[X_AXIS], public_buf_l, 10); + lv_screen_menu_item_1_edit(scr, machine_menu.X_Acceleration, PARA_UI_POS_X, y, event_handler, ID_ACCE_X, 3, public_buf_l); + #endif lv_big_button_create(scr, "F:/bmp_back70x40.bin", machine_menu.next, PARA_UI_TURN_PAGE_POS_X, PARA_UI_TURN_PAGE_POS_Y, event_handler, ID_ACCE_DOWN, true); } diff --git a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp index e021771b1325..657629049673 100644 --- a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp +++ b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp @@ -194,7 +194,9 @@ void mks_hardware_test() { if (millis() % 2000 < 1000) { thermalManager.fan_speed[0] = 255; - WRITE(X_DIR_PIN, LOW); + #if HAS_X_AXIS + WRITE(X_DIR_PIN, LOW); + #endif #if HAS_Y_AXIS WRITE(Y_DIR_PIN, LOW); #endif @@ -219,7 +221,9 @@ } else { thermalManager.fan_speed[0] = 0; - WRITE(X_DIR_PIN, HIGH); + #if HAS_X_AXIS + WRITE(X_DIR_PIN, HIGH); + #endif #if HAS_Y_AXIS WRITE(Y_DIR_PIN, HIGH); #endif diff --git a/Marlin/src/lcd/extui/ui_api.cpp b/Marlin/src/lcd/extui/ui_api.cpp index a742a82a5b96..fb77be94afb0 100644 --- a/Marlin/src/lcd/extui/ui_api.cpp +++ b/Marlin/src/lcd/extui/ui_api.cpp @@ -375,7 +375,7 @@ namespace ExtUI { bool canMove(const axis_t axis) { switch (axis) { #if IS_KINEMATIC || ENABLED(NO_MOTION_BEFORE_HOMING) - case X: return !axis_should_home(X_AXIS); + OPTCODE(HAS_X_AXIS, case X: return !axis_should_home(X_AXIS)) OPTCODE(HAS_Y_AXIS, case Y: return !axis_should_home(Y_AXIS)) OPTCODE(HAS_Z_AXIS, case Z: return !axis_should_home(Z_AXIS)) #else @@ -773,7 +773,9 @@ namespace ExtUI { bool babystepAxis_steps(const int16_t steps, const axis_t axis) { switch (axis) { #if ENABLED(BABYSTEP_XY) - case X: babystep.add_steps(X_AXIS, steps); break; + #if HAS_X_AXIS + case X: babystep.add_steps(X_AXIS, steps); break; + #endif #if HAS_Y_AXIS case Y: babystep.add_steps(Y_AXIS, steps); break; #endif @@ -818,7 +820,7 @@ namespace ExtUI { if (e != active_extruder) hotend_offset[e][axis] += mm; - normalizeNozzleOffset(X); + TERN_(HAS_X_AXIS, normalizeNozzleOffset(X)); TERN_(HAS_Y_AXIS, normalizeNozzleOffset(Y)); TERN_(HAS_Z_AXIS, normalizeNozzleOffset(Z)); } diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index ec929753ae42..638a133184f3 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -506,7 +506,7 @@ void MarlinUI::init() { ui.manual_move.menu_scale = REPRAPWORLD_KEYPAD_MOVE_STEP; ui.encoderPosition = dir; switch (axis) { - case X_AXIS: + TERN_(HAS_X_AXIS, case X_AXIS:) TERN_(HAS_Y_AXIS, case Y_AXIS:) TERN_(HAS_Z_AXIS, case Z_AXIS:) lcd_move_axis(axis); diff --git a/Marlin/src/lcd/menu/menu_advanced.cpp b/Marlin/src/lcd/menu/menu_advanced.cpp index 719838f6be86..0be23be71a84 100644 --- a/Marlin/src/lcd/menu/menu_advanced.cpp +++ b/Marlin/src/lcd/menu/menu_advanced.cpp @@ -475,9 +475,23 @@ void menu_backlash(); // M201 / M204 Accelerations void menu_advanced_acceleration() { - float max_accel = planner.settings.max_acceleration_mm_per_s2[A_AXIS]; - TERN_(HAS_Y_AXIS, NOLESS(max_accel, planner.settings.max_acceleration_mm_per_s2[B_AXIS])); - TERN_(HAS_Z_AXIS, NOLESS(max_accel, planner.settings.max_acceleration_mm_per_s2[C_AXIS])); + float max_accel = ( + #if NUM_AXES + _MAX(NUM_AXIS_LIST( + planner.settings.max_acceleration_mm_per_s2[A_AXIS], + planner.settings.max_acceleration_mm_per_s2[B_AXIS], + planner.settings.max_acceleration_mm_per_s2[C_AXIS], + planner.settings.max_acceleration_mm_per_s2[I_AXIS], + planner.settings.max_acceleration_mm_per_s2[J_AXIS], + planner.settings.max_acceleration_mm_per_s2[K_AXIS], + planner.settings.max_acceleration_mm_per_s2[U_AXIS], + planner.settings.max_acceleration_mm_per_s2[V_AXIS], + planner.settings.max_acceleration_mm_per_s2[W_AXIS] + )) + #else + 0 + #endif + ); // M201 settings constexpr xyze_ulong_t max_accel_edit = diff --git a/Marlin/src/lcd/menu/menu_backlash.cpp b/Marlin/src/lcd/menu/menu_backlash.cpp index 2b9404b0f6c5..1f3856918f43 100644 --- a/Marlin/src/lcd/menu/menu_backlash.cpp +++ b/Marlin/src/lcd/menu/menu_backlash.cpp @@ -50,7 +50,9 @@ void menu_backlash() { EDIT_ITEM_FAST_N(float43, _AXIS(N), MSG_BACKLASH_N, &editable.decimal, 0.0f, 9.9f, []{ backlash.set_distance_mm(_AXIS(N), editable.decimal); }); \ } while (0); - if (_CAN_CALI(A)) EDIT_BACKLASH_DISTANCE(A); + #if HAS_X_AXIS && _CAN_CALI(A) + EDIT_BACKLASH_DISTANCE(A); + #endif #if HAS_Y_AXIS && _CAN_CALI(B) EDIT_BACKLASH_DISTANCE(B); #endif diff --git a/Marlin/src/lcd/menu/menu_motion.cpp b/Marlin/src/lcd/menu/menu_motion.cpp index 4c0b1e55a88e..8caa1e526403 100644 --- a/Marlin/src/lcd/menu/menu_motion.cpp +++ b/Marlin/src/lcd/menu/menu_motion.cpp @@ -28,7 +28,7 @@ #if HAS_MARLINUI_MENU -#define HAS_LARGE_AREA ((X_BED_SIZE) >= 1000 || TERN0(HAS_Y_AXIS, (Y_BED_SIZE) >= 1000) || TERN0(HAS_Z_AXIS, (Z_MAX_POS) >= 1000)) +#define HAS_LARGE_AREA (TERN0(HAS_X_AXIS, (X_BED_SIZE) >= 1000) || TERN0(HAS_Y_AXIS, (Y_BED_SIZE) >= 1000) || TERN0(HAS_Z_AXIS, (Z_MAX_POS) >= 1000)) #if ENABLED(LARGE_MOVE_ITEMS) #define HAS_LARGE_MOVES true #elif ENABLED(SLIM_LCD_MENUS) @@ -214,7 +214,9 @@ void menu_move() { // Move submenu for each axis if (NONE(IS_KINEMATIC, NO_MOTION_BEFORE_HOMING) || all_axes_homed()) { if (TERN1(DELTA, current_position.z <= delta_clip_start_height)) { - SUBMENU_N(X_AXIS, MSG_MOVE_N, []{ _menu_move_distance(X_AXIS, []{ lcd_move_axis(X_AXIS); }); }); + #if HAS_X_AXIS + SUBMENU_N(X_AXIS, MSG_MOVE_N, []{ _menu_move_distance(X_AXIS, []{ lcd_move_axis(X_AXIS); }); }); + #endif #if HAS_Y_AXIS SUBMENU_N(Y_AXIS, MSG_MOVE_N, []{ _menu_move_distance(Y_AXIS, []{ lcd_move_axis(Y_AXIS); }); }); #endif diff --git a/Marlin/src/libs/vector_3.h b/Marlin/src/libs/vector_3.h index 58bdb43c7b41..ab719c6a7f43 100644 --- a/Marlin/src/libs/vector_3.h +++ b/Marlin/src/libs/vector_3.h @@ -50,9 +50,9 @@ struct vector_3 { float pos[3]; }; vector_3(const_float_t _x, const_float_t _y, const_float_t _z) : x(_x), y(_y), z(_z) {} - vector_3(const xy_float_t &in) { x = in.x; TERN_(HAS_Y_AXIS, y = in.y); } - vector_3(const xyz_float_t &in) { x = in.x; TERN_(HAS_Y_AXIS, y = in.y); TERN_(HAS_Z_AXIS, z = in.z); } - vector_3(const xyze_float_t &in) { x = in.x; TERN_(HAS_Y_AXIS, y = in.y); TERN_(HAS_Z_AXIS, z = in.z); } + vector_3(const xy_float_t &in) { TERN_(HAS_X_AXIS, x = in.x); TERN_(HAS_Y_AXIS, y = in.y); } + vector_3(const xyz_float_t &in) { TERN_(HAS_X_AXIS, x = in.x); TERN_(HAS_Y_AXIS, y = in.y); TERN_(HAS_Z_AXIS, z = in.z); } + vector_3(const xyze_float_t &in) { TERN_(HAS_X_AXIS, x = in.x); TERN_(HAS_Y_AXIS, y = in.y); TERN_(HAS_Z_AXIS, z = in.z); } vector_3() { x = y = z = 0; } // Factory method @@ -75,8 +75,8 @@ struct vector_3 { vector_3 operator-(const vector_3 &v) { return vector_3(x - v.x, y - v.y, z - v.z); } vector_3 operator*(const float &v) { return vector_3(x * v, y * v, z * v); } - operator xy_float_t() { return xy_float_t({ x OPTARG(HAS_Y_AXIS, y) }); } - operator xyz_float_t() { return xyz_float_t({ x OPTARG(HAS_Y_AXIS, y) OPTARG(HAS_Z_AXIS, z) }); } + operator xy_float_t() { return xy_float_t({ TERN_(HAS_X_AXIS, x) OPTARG(HAS_Y_AXIS, y) }); } + operator xyz_float_t() { return xyz_float_t({ TERN_(HAS_X_AXIS, x) OPTARG(HAS_Y_AXIS, y) OPTARG(HAS_Z_AXIS, z) }); } void debug(FSTR_P const title); }; diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index bf493023d8ed..0a12e1041df9 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -300,7 +300,7 @@ void Endstops::event_handler() { prev_hit_state = hit_state; if (hit_state) { #if HAS_STATUS_MESSAGE - char NUM_AXIS_LIST(chrX = ' ', chrY = ' ', chrZ = ' ', chrI = ' ', chrJ = ' ', chrK = ' ', chrU = ' ', chrV = ' ', chrW = ' '), + char NUM_AXIS_LIST_(chrX = ' ', chrY = ' ', chrZ = ' ', chrI = ' ', chrJ = ' ', chrK = ' ', chrU = ' ', chrV = ' ', chrW = ' ') chrP = ' '; #define _SET_STOP_CHAR(A,C) (chr## A = C) #else @@ -348,7 +348,7 @@ void Endstops::event_handler() { ui.status_printf(0, F(S_FMT GANG_N_1(NUM_AXES, " %c") " %c"), GET_TEXT(MSG_LCD_ENDSTOPS), - NUM_AXIS_LIST(chrX, chrY, chrZ, chrI, chrJ, chrK, chrU, chrV, chrW), chrP + NUM_AXIS_LIST_(chrX, chrY, chrZ, chrI, chrJ, chrK, chrU, chrV, chrW) chrP ) ); @@ -367,18 +367,22 @@ void Endstops::event_handler() { } } -#pragma GCC diagnostic push -#if GCC_VERSION <= 50000 - #pragma GCC diagnostic ignored "-Wunused-function" -#endif +#if NUM_AXES -static void print_es_state(const bool is_hit, FSTR_P const flabel=nullptr) { - if (flabel) SERIAL_ECHOF(flabel); - SERIAL_ECHOPGM(": "); - SERIAL_ECHOLNF(is_hit ? F(STR_ENDSTOP_HIT) : F(STR_ENDSTOP_OPEN)); -} + #pragma GCC diagnostic push + #if GCC_VERSION <= 50000 + #pragma GCC diagnostic ignored "-Wunused-function" + #endif -#pragma GCC diagnostic pop + static void print_es_state(const bool is_hit, FSTR_P const flabel=nullptr) { + if (flabel) SERIAL_ECHOF(flabel); + SERIAL_ECHOPGM(": "); + SERIAL_ECHOLNF(is_hit ? F(STR_ENDSTOP_HIT) : F(STR_ENDSTOP_OPEN)); + } + + #pragma GCC diagnostic pop + +#endif void __O2 Endstops::report_states() { TERN_(BLTOUCH, bltouch._set_SW_mode()); diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index de512e11fe48..a15cfe079610 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -203,22 +203,24 @@ inline void report_more_positions() { // Report the logical position for a given machine position inline void report_logical_position(const xyze_pos_t &rpos) { const xyze_pos_t lpos = rpos.asLogical(); - SERIAL_ECHOPGM_P( - LIST_N(DOUBLE(NUM_AXES), - X_LBL, lpos.x, - SP_Y_LBL, lpos.y, - SP_Z_LBL, lpos.z, - SP_I_LBL, lpos.i, - SP_J_LBL, lpos.j, - SP_K_LBL, lpos.k, - SP_U_LBL, lpos.u, - SP_V_LBL, lpos.v, - SP_W_LBL, lpos.w - ) - #if HAS_EXTRUDERS - , SP_E_LBL, lpos.e - #endif - ); + #if NUM_AXES + SERIAL_ECHOPGM_P( + LIST_N(DOUBLE(NUM_AXES), + X_LBL, lpos.x, + SP_Y_LBL, lpos.y, + SP_Z_LBL, lpos.z, + SP_I_LBL, lpos.i, + SP_J_LBL, lpos.j, + SP_K_LBL, lpos.k, + SP_U_LBL, lpos.u, + SP_V_LBL, lpos.v, + SP_W_LBL, lpos.w + ) + ); + #endif + #if HAS_EXTRUDERS + SERIAL_ECHOPGM_P(SP_E_LBL, lpos.e); + #endif } // Report the real current position according to the steppers. @@ -367,7 +369,7 @@ void report_current_position_projected() { #else // CARTESIAN // Return true if the given position is within the machine bounds. - bool position_is_reachable(const_float_t rx, const_float_t ry) { + bool position_is_reachable(TERN_(HAS_X_AXIS, const_float_t rx) OPTARG(HAS_Y_AXIS, const_float_t ry)) { if (TERN0(HAS_Y_AXIS, !COORDINATE_OKAY(ry, Y_MIN_POS - fslop, Y_MAX_POS + fslop))) return false; #if ENABLED(DUAL_X_CARRIAGE) if (active_extruder) @@ -375,7 +377,8 @@ void report_current_position_projected() { else return COORDINATE_OKAY(rx, X1_MIN_POS - fslop, X1_MAX_POS + fslop); #else - return COORDINATE_OKAY(rx, X_MIN_POS - fslop, X_MAX_POS + fslop); + if (TERN0(HAS_X_AXIS, !COORDINATE_OKAY(rx, X_MIN_POS - fslop, X_MAX_POS + fslop))) return false; + return true; #endif } @@ -567,7 +570,7 @@ void _internal_move_to_destination(const_feedRate_t fr_mm_s/*=0.0f*/ * - Delta may lower Z first to get into the free motion zone. * - Before returning, wait for the planner buffer to empty. */ -void do_blocking_move_to(NUM_AXIS_ARGS(const_float_t), const_feedRate_t fr_mm_s/*=0.0f*/) { +void do_blocking_move_to(NUM_AXIS_ARGS_(const_float_t) const_feedRate_t fr_mm_s/*=0.0f*/) { DEBUG_SECTION(log_move, "do_blocking_move_to", DEBUGGING(LEVELING)); if (DEBUGGING(LEVELING)) DEBUG_XYZ("> ", NUM_AXIS_ARGS()); @@ -642,7 +645,7 @@ void do_blocking_move_to(NUM_AXIS_ARGS(const_float_t), const_feedRate_t fr_mm_s/ if (current_position.z < z) { current_position.z = z; line_to_current_position(z_feedrate); } #endif - current_position.set(x OPTARG(HAS_Y_AXIS, y)); line_to_current_position(xy_feedrate); + current_position.set(TERN_(HAS_X_AXIS, x) OPTARG(HAS_Y_AXIS, y)); line_to_current_position(xy_feedrate); #if SECONDARY_AXES secondary_axis_moves(SECONDARY_AXIS_LIST(i, j, k, u, v, w), fr_mm_s); @@ -659,30 +662,33 @@ void do_blocking_move_to(NUM_AXIS_ARGS(const_float_t), const_feedRate_t fr_mm_s/ } void do_blocking_move_to(const xy_pos_t &raw, const_feedRate_t fr_mm_s/*=0.0f*/) { - do_blocking_move_to(NUM_AXIS_LIST(raw.x, raw.y, current_position.z, current_position.i, current_position.j, current_position.k, - current_position.u, current_position.v, current_position.w), fr_mm_s); + do_blocking_move_to(NUM_AXIS_LIST_(raw.x, raw.y, current_position.z, current_position.i, current_position.j, current_position.k, + current_position.u, current_position.v, current_position.w) fr_mm_s); } void do_blocking_move_to(const xyz_pos_t &raw, const_feedRate_t fr_mm_s/*=0.0f*/) { - do_blocking_move_to(NUM_AXIS_ELEM(raw), fr_mm_s); + do_blocking_move_to(NUM_AXIS_ELEM_(raw) fr_mm_s); } void do_blocking_move_to(const xyze_pos_t &raw, const_feedRate_t fr_mm_s/*=0.0f*/) { - do_blocking_move_to(NUM_AXIS_ELEM(raw), fr_mm_s); -} -void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s/*=0.0*/) { - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("do_blocking_move_to_x(", rx, ", ", fr_mm_s, ")"); - do_blocking_move_to( - NUM_AXIS_LIST(rx, current_position.y, current_position.z, current_position.i, current_position.j, current_position.k, - current_position.u, current_position.v, current_position.w), - fr_mm_s - ); + do_blocking_move_to(NUM_AXIS_ELEM_(raw) fr_mm_s); } +#if HAS_X_AXIS + void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s/*=0.0*/) { + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("do_blocking_move_to_x(", rx, ", ", fr_mm_s, ")"); + do_blocking_move_to( + NUM_AXIS_LIST_(rx, current_position.y, current_position.z, current_position.i, current_position.j, current_position.k, + current_position.u, current_position.v, current_position.w) + fr_mm_s + ); + } +#endif + #if HAS_Y_AXIS void do_blocking_move_to_y(const_float_t ry, const_feedRate_t fr_mm_s/*=0.0*/) { if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("do_blocking_move_to_y(", ry, ", ", fr_mm_s, ")"); do_blocking_move_to( - NUM_AXIS_LIST(current_position.x, ry, current_position.z, current_position.i, current_position.j, current_position.k, - current_position.u, current_position.v, current_position.w), + NUM_AXIS_LIST_(current_position.x, ry, current_position.z, current_position.i, current_position.j, current_position.k, + current_position.u, current_position.v, current_position.w) fr_mm_s ); } @@ -701,7 +707,7 @@ void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s/*=0.0*/) { } void do_blocking_move_to_xyz_i(const xyze_pos_t &raw, const_float_t i, const_feedRate_t fr_mm_s/*=0.0f*/) { do_blocking_move_to( - NUM_AXIS_LIST(raw.x, raw.y, raw.z, i, raw.j, raw.k, raw.u, raw.v, raw.w), + NUM_AXIS_LIST_(raw.x, raw.y, raw.z, i, raw.j, raw.k, raw.u, raw.v, raw.w) fr_mm_s ); } @@ -713,7 +719,7 @@ void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s/*=0.0*/) { } void do_blocking_move_to_xyzi_j(const xyze_pos_t &raw, const_float_t j, const_feedRate_t fr_mm_s/*=0.0f*/) { do_blocking_move_to( - NUM_AXIS_LIST(raw.x, raw.y, raw.z, raw.i, j, raw.k, raw.u, raw.v, raw.w), + NUM_AXIS_LIST_(raw.x, raw.y, raw.z, raw.i, j, raw.k, raw.u, raw.v, raw.w) fr_mm_s ); } @@ -725,7 +731,7 @@ void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s/*=0.0*/) { } void do_blocking_move_to_xyzij_k(const xyze_pos_t &raw, const_float_t k, const_feedRate_t fr_mm_s/*=0.0f*/) { do_blocking_move_to( - NUM_AXIS_LIST(raw.x, raw.y, raw.z, raw.i, raw.j, k, raw.u, raw.v, raw.w), + NUM_AXIS_LIST_(raw.x, raw.y, raw.z, raw.i, raw.j, k, raw.u, raw.v, raw.w) fr_mm_s ); } @@ -737,7 +743,7 @@ void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s/*=0.0*/) { } void do_blocking_move_to_xyzijk_u(const xyze_pos_t &raw, const_float_t u, const_feedRate_t fr_mm_s/*=0.0f*/) { do_blocking_move_to( - NUM_AXIS_LIST(raw.x, raw.y, raw.z, raw.i, raw.j, raw.k, u, raw.v, raw.w), + NUM_AXIS_LIST_(raw.x, raw.y, raw.z, raw.i, raw.j, raw.k, u, raw.v, raw.w) fr_mm_s ); } @@ -749,7 +755,7 @@ void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s/*=0.0*/) { } void do_blocking_move_to_xyzijku_v(const xyze_pos_t &raw, const_float_t v, const_feedRate_t fr_mm_s/*=0.0f*/) { do_blocking_move_to( - NUM_AXIS_LIST(raw.x, raw.y, raw.z, raw.i, raw.j, raw.k, raw.u, v, raw.w), + NUM_AXIS_LIST_(raw.x, raw.y, raw.z, raw.i, raw.j, raw.k, raw.u, v, raw.w) fr_mm_s ); } @@ -761,7 +767,7 @@ void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s/*=0.0*/) { } void do_blocking_move_to_xyzijkuv_w(const xyze_pos_t &raw, const_float_t w, const_feedRate_t fr_mm_s/*=0.0f*/) { do_blocking_move_to( - NUM_AXIS_LIST(raw.x, raw.y, raw.z, raw.i, raw.j, raw.k, raw.u, raw.v, w), + NUM_AXIS_LIST_(raw.x, raw.y, raw.z, raw.i, raw.j, raw.k, raw.u, raw.v, w) fr_mm_s ); } @@ -771,8 +777,8 @@ void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s/*=0.0*/) { void do_blocking_move_to_xy(const_float_t rx, const_float_t ry, const_feedRate_t fr_mm_s/*=0.0*/) { if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("do_blocking_move_to_xy(", rx, ", ", ry, ", ", fr_mm_s, ")"); do_blocking_move_to( - NUM_AXIS_LIST(rx, ry, current_position.z, current_position.i, current_position.j, current_position.k, - current_position.u, current_position.v, current_position.w), + NUM_AXIS_LIST_(rx, ry, current_position.z, current_position.i, current_position.j, current_position.k, + current_position.u, current_position.v, current_position.w) fr_mm_s ); } @@ -784,8 +790,8 @@ void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s/*=0.0*/) { #if HAS_Z_AXIS void do_blocking_move_to_xy_z(const xy_pos_t &raw, const_float_t z, const_feedRate_t fr_mm_s/*=0.0f*/) { do_blocking_move_to( - NUM_AXIS_LIST(raw.x, raw.y, z, current_position.i, current_position.j, current_position.k, - current_position.u, current_position.v, current_position.w), + NUM_AXIS_LIST_(raw.x, raw.y, z, current_position.i, current_position.j, current_position.k, + current_position.u, current_position.v, current_position.w) fr_mm_s ); } @@ -966,14 +972,16 @@ void restore_feedrate_and_scaling() { #else - if (axis_was_homed(X_AXIS)) { - #if !HAS_SOFTWARE_ENDSTOPS || ENABLED(MIN_SOFTWARE_ENDSTOP_X) - NOLESS(target.x, soft_endstop.min.x); - #endif - #if !HAS_SOFTWARE_ENDSTOPS || ENABLED(MAX_SOFTWARE_ENDSTOP_X) - NOMORE(target.x, soft_endstop.max.x); - #endif - } + #if HAS_X_AXIS + if (axis_was_homed(X_AXIS)) { + #if !HAS_SOFTWARE_ENDSTOPS || ENABLED(MIN_SOFTWARE_ENDSTOP_X) + NOLESS(target.x, soft_endstop.min.x); + #endif + #if !HAS_SOFTWARE_ENDSTOPS || ENABLED(MAX_SOFTWARE_ENDSTOP_X) + NOMORE(target.x, soft_endstop.max.x); + #endif + } + #endif #if HAS_Y_AXIS if (axis_was_homed(Y_AXIS)) { @@ -1079,82 +1087,90 @@ FORCE_INLINE void segment_idle(millis_t &next_idle_ms) { * Get distance from displacements along axes and, if required, update move type. */ float get_move_distance(const xyze_pos_t &diff OPTARG(HAS_ROTATIONAL_AXES, bool &is_cartesian_move)) { - if (!(NUM_AXIS_GANG(diff.x, || diff.y, /* skip z */, || diff.i, || diff.j, || diff.k, || diff.u, || diff.v, || diff.w))) - return TERN0(HAS_Z_AXIS, ABS(diff.z)); + #if NUM_AXES - #if ENABLED(ARTICULATED_ROBOT_ARM) + if (!(NUM_AXIS_GANG(diff.x, || diff.y, /* skip z */, || diff.i, || diff.j, || diff.k, || diff.u, || diff.v, || diff.w))) + return TERN0(HAS_Z_AXIS, ABS(diff.z)); - // For articulated robots, interpreting feedrate like LinuxCNC would require inverse kinematics. As a workaround, pretend that motors sit on n mutually orthogonal - // axes and assume that we could think of distance as magnitude of an n-vector in an n-dimensional Euclidian space. - const float distance_sqr = NUM_AXIS_GANG( - sq(diff.x), + sq(diff.y), + sq(diff.z), - + sq(diff.i), + sq(diff.j), + sq(diff.k), - + sq(diff.u), + sq(diff.v), + sq(diff.w) - ); + #if ENABLED(ARTICULATED_ROBOT_ARM) + + // For articulated robots, interpreting feedrate like LinuxCNC would require inverse kinematics. As a workaround, pretend that motors sit on n mutually orthogonal + // axes and assume that we could think of distance as magnitude of an n-vector in an n-dimensional Euclidian space. + const float distance_sqr = NUM_AXIS_GANG( + sq(diff.x), + sq(diff.y), + sq(diff.z), + + sq(diff.i), + sq(diff.j), + sq(diff.k), + + sq(diff.u), + sq(diff.v), + sq(diff.w) + ); - #elif ENABLED(FOAMCUTTER_XYUV) + #elif ENABLED(FOAMCUTTER_XYUV) - const float distance_sqr = ( - #if HAS_J_AXIS - _MAX(sq(diff.x) + sq(diff.y), sq(diff.i) + sq(diff.j)) // Special 5 axis kinematics. Return the larger of plane X/Y or I/J - #else - sq(diff.x) + sq(diff.y) // Foamcutter with only two axes (XY) + const float distance_sqr = ( + #if HAS_J_AXIS + _MAX(sq(diff.x) + sq(diff.y), sq(diff.i) + sq(diff.j)) // Special 5 axis kinematics. Return the larger of plane X/Y or I/J + #else + sq(diff.x) + sq(diff.y) // Foamcutter with only two axes (XY) + #endif + ); + + #else + + /** + * Calculate distance for feedrate interpretation in accordance with NIST RS274NGC interpreter - version 3) and its default CANON_XYZ feed reference mode. + * Assume: + * - X, Y, Z are the primary linear axes; + * - U, V, W are secondary linear axes; + * - A, B, C are rotational axes. + * + * Then: + * - dX, dY, dZ are the displacements of the primary linear axes; + * - dU, dV, dW are the displacements of linear axes; + * - dA, dB, dC are the displacements of rotational axes. + * + * The time it takes to execute a move command with feedrate F is t = D/F, + * plus any time for acceleration and deceleration. + * Here, D is the total distance, calculated as follows: + * + * D^2 = dX^2 + dY^2 + dZ^2 + * if D^2 == 0 (none of XYZ move but any secondary linear axes move, whether other axes are moved or not): + * D^2 = dU^2 + dV^2 + dW^2 + * if D^2 == 0 (only rotational axes are moved): + * D^2 = dA^2 + dB^2 + dC^2 + */ + float distance_sqr = XYZ_GANG(sq(diff.x), + sq(diff.y), + sq(diff.z)); + + #if SECONDARY_LINEAR_AXES + if (UNEAR_ZERO(distance_sqr)) { + // Move does not involve any primary linear axes (xyz) but might involve secondary linear axes + distance_sqr = ( + SECONDARY_AXIS_GANG( + IF_DISABLED(AXIS4_ROTATES, + sq(diff.i)), + IF_DISABLED(AXIS5_ROTATES, + sq(diff.j)), + IF_DISABLED(AXIS6_ROTATES, + sq(diff.k)), + IF_DISABLED(AXIS7_ROTATES, + sq(diff.u)), + IF_DISABLED(AXIS8_ROTATES, + sq(diff.v)), + IF_DISABLED(AXIS9_ROTATES, + sq(diff.w)) + ) + ); + } #endif - ); - #else + #if HAS_ROTATIONAL_AXES + if (UNEAR_ZERO(distance_sqr)) { + // Move involves only rotational axes. Calculate angular distance in accordance with LinuxCNC + is_cartesian_move = false; + distance_sqr = ROTATIONAL_AXIS_GANG(sq(diff.i), + sq(diff.j), + sq(diff.k), + sq(diff.u), + sq(diff.v), + sq(diff.w)); + } + #endif - /** - * Calculate distance for feedrate interpretation in accordance with NIST RS274NGC interpreter - version 3) and its default CANON_XYZ feed reference mode. - * Assume: - * - X, Y, Z are the primary linear axes; - * - U, V, W are secondary linear axes; - * - A, B, C are rotational axes. - * - * Then: - * - dX, dY, dZ are the displacements of the primary linear axes; - * - dU, dV, dW are the displacements of linear axes; - * - dA, dB, dC are the displacements of rotational axes. - * - * The time it takes to execute a move command with feedrate F is t = D/F, - * plus any time for acceleration and deceleration. - * Here, D is the total distance, calculated as follows: - * - * D^2 = dX^2 + dY^2 + dZ^2 - * if D^2 == 0 (none of XYZ move but any secondary linear axes move, whether other axes are moved or not): - * D^2 = dU^2 + dV^2 + dW^2 - * if D^2 == 0 (only rotational axes are moved): - * D^2 = dA^2 + dB^2 + dC^2 - */ - float distance_sqr = XYZ_GANG(sq(diff.x), + sq(diff.y), + sq(diff.z)); - - #if SECONDARY_LINEAR_AXES - if (UNEAR_ZERO(distance_sqr)) { - // Move does not involve any primary linear axes (xyz) but might involve secondary linear axes - distance_sqr = ( - SECONDARY_AXIS_GANG( - IF_DISABLED(AXIS4_ROTATES, + sq(diff.i)), - IF_DISABLED(AXIS5_ROTATES, + sq(diff.j)), - IF_DISABLED(AXIS6_ROTATES, + sq(diff.k)), - IF_DISABLED(AXIS7_ROTATES, + sq(diff.u)), - IF_DISABLED(AXIS8_ROTATES, + sq(diff.v)), - IF_DISABLED(AXIS9_ROTATES, + sq(diff.w)) - ) - ); - } #endif - #if HAS_ROTATIONAL_AXES - if (UNEAR_ZERO(distance_sqr)) { - // Move involves only rotational axes. Calculate angular distance in accordance with LinuxCNC - is_cartesian_move = false; - distance_sqr = ROTATIONAL_AXIS_GANG(sq(diff.i), + sq(diff.j), + sq(diff.k), + sq(diff.u), + sq(diff.v), + sq(diff.w)); - } - #endif + return SQRT(distance_sqr); - #endif + #else - return SQRT(distance_sqr); + return 0; + + #endif } #if IS_KINEMATIC @@ -1702,7 +1718,9 @@ void prepare_line_to_destination() { #if ENABLED(SPI_ENDSTOPS) switch (axis) { - case X_AXIS: if (ENABLED(X_SPI_SENSORLESS)) endstops.tmc_spi_homing.x = true; break; + #if HAS_X_AXIS + case X_AXIS: if (ENABLED(X_SPI_SENSORLESS)) endstops.tmc_spi_homing.x = true; break; + #endif #if HAS_Y_AXIS case Y_AXIS: if (ENABLED(Y_SPI_SENSORLESS)) endstops.tmc_spi_homing.y = true; break; #endif @@ -1796,7 +1814,9 @@ void prepare_line_to_destination() { #if ENABLED(SPI_ENDSTOPS) switch (axis) { - case X_AXIS: if (ENABLED(X_SPI_SENSORLESS)) endstops.tmc_spi_homing.x = false; break; + #if HAS_X_AXIS + case X_AXIS: if (ENABLED(X_SPI_SENSORLESS)) endstops.tmc_spi_homing.x = false; break; + #endif #if HAS_Y_AXIS case Y_AXIS: if (ENABLED(Y_SPI_SENSORLESS)) endstops.tmc_spi_homing.y = false; break; #endif diff --git a/Marlin/src/module/motion.h b/Marlin/src/module/motion.h index 394c4748d94a..ae0976b44c94 100644 --- a/Marlin/src/module/motion.h +++ b/Marlin/src/module/motion.h @@ -153,9 +153,9 @@ inline float home_bump_mm(const AxisEnum axis) { extern xyz_pos_t hotend_offset[HOTENDS]; void reset_hotend_offsets(); #elif HOTENDS - constexpr xyz_pos_t hotend_offset[HOTENDS] = { { 0 } }; + constexpr xyz_pos_t hotend_offset[HOTENDS] = { { TERN_(HAS_X_AXIS, 0) } }; #else - constexpr xyz_pos_t hotend_offset[1] = { { 0 } }; + constexpr xyz_pos_t hotend_offset[1] = { { TERN_(HAS_X_AXIS, 0) } }; #endif #if HAS_SOFTWARE_ENDSTOPS @@ -169,10 +169,12 @@ inline float home_bump_mm(const AxisEnum axis) { amin = -100000; amax = 100000; // "No limits" #if HAS_SOFTWARE_ENDSTOPS if (enabled()) switch (axis) { - case X_AXIS: - TERN_(MIN_SOFTWARE_ENDSTOP_X, amin = min.x); - TERN_(MAX_SOFTWARE_ENDSTOP_X, amax = max.x); - break; + #if HAS_X_AXIS + case X_AXIS: + TERN_(MIN_SOFTWARE_ENDSTOP_X, amin = min.x); + TERN_(MAX_SOFTWARE_ENDSTOP_X, amax = max.x); + break; + #endif #if HAS_Y_AXIS case Y_AXIS: TERN_(MIN_SOFTWARE_ENDSTOP_Y, amin = min.y); @@ -350,12 +352,14 @@ inline void prepare_internal_move_to_destination(const_feedRate_t fr_mm_s=0.0f) /** * Blocking movement and shorthand functions */ -void do_blocking_move_to(NUM_AXIS_ARGS(const_float_t), const_feedRate_t fr_mm_s=0.0f); +void do_blocking_move_to(NUM_AXIS_ARGS_(const_float_t) const_feedRate_t fr_mm_s=0.0f); void do_blocking_move_to(const xy_pos_t &raw, const_feedRate_t fr_mm_s=0.0f); void do_blocking_move_to(const xyz_pos_t &raw, const_feedRate_t fr_mm_s=0.0f); void do_blocking_move_to(const xyze_pos_t &raw, const_feedRate_t fr_mm_s=0.0f); -void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s=0.0f); +#if HAS_X_AXIS + void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s=0.0f); +#endif #if HAS_Y_AXIS void do_blocking_move_to_y(const_float_t ry, const_feedRate_t fr_mm_s=0.0f); #endif @@ -515,8 +519,10 @@ void home_if_needed(const bool keeplev=false); FORCE_INLINE void toNative(xyz_pos_t&) {} FORCE_INLINE void toNative(xyze_pos_t&) {} #endif -#define LOGICAL_X_POSITION(POS) NATIVE_TO_LOGICAL(POS, X_AXIS) -#define RAW_X_POSITION(POS) LOGICAL_TO_NATIVE(POS, X_AXIS) +#if HAS_X_AXIS + #define LOGICAL_X_POSITION(POS) NATIVE_TO_LOGICAL(POS, X_AXIS) + #define RAW_X_POSITION(POS) LOGICAL_TO_NATIVE(POS, X_AXIS) +#endif #if HAS_Y_AXIS #define LOGICAL_Y_POSITION(POS) NATIVE_TO_LOGICAL(POS, Y_AXIS) #define RAW_Y_POSITION(POS) LOGICAL_TO_NATIVE(POS, Y_AXIS) @@ -569,9 +575,9 @@ void home_if_needed(const bool keeplev=false); #else // Return true if the given position is within the machine bounds. - bool position_is_reachable(const_float_t rx, const_float_t ry); + bool position_is_reachable(TERN_(HAS_X_AXIS, const_float_t rx) OPTARG(HAS_Y_AXIS, const_float_t ry)); inline bool position_is_reachable(const xy_pos_t &pos) { - return position_is_reachable(pos.x, pos.y); + return position_is_reachable(TERN_(HAS_X_AXIS, pos.x) OPTARG(HAS_Y_AXIS, pos.y)); } #endif diff --git a/Marlin/src/module/planner.cpp b/Marlin/src/module/planner.cpp index 1b995a322476..a9da48df0188 100644 --- a/Marlin/src/module/planner.cpp +++ b/Marlin/src/module/planner.cpp @@ -1903,7 +1903,9 @@ bool Planner::_populate_block( /* <-- add a slash to enable SERIAL_ECHOLNPGM( " _populate_block FR:", fr_mm_s, - " A:", target.a, " (", da, " steps)" + #if HAS_X_AXIS + " A:", target.a, " (", da, " steps)" + #endif #if HAS_Y_AXIS " B:", target.b, " (", db, " steps)" #endif @@ -2204,11 +2206,17 @@ bool Planner::_populate_block( TERN_(HAS_EXTRUDERS, block->steps.e = esteps); - block->step_event_count = _MAX(LOGICAL_AXIS_LIST(esteps, - block->steps.a, block->steps.b, block->steps.c, - block->steps.i, block->steps.j, block->steps.k, - block->steps.u, block->steps.v, block->steps.w - )); + block->step_event_count = ( + #if NUM_AXES + _MAX(LOGICAL_AXIS_LIST(esteps, + block->steps.a, block->steps.b, block->steps.c, + block->steps.i, block->steps.j, block->steps.k, + block->steps.u, block->steps.v, block->steps.w + )) + #elif HAS_EXTRUDERS + esteps + #endif + ); // Bail if this is a zero-length block if (block->step_event_count < MIN_STEPS_PER_SEGMENT) return false; @@ -2474,8 +2482,8 @@ bool Planner::_populate_block( #if ENABLED(LIN_ADVANCE) bool use_advance_lead = false; #endif - if (NUM_AXIS_GANG( - !block->steps.a, && !block->steps.b, && !block->steps.c, + if (true NUM_AXIS_GANG( + && !block->steps.a, && !block->steps.b, && !block->steps.c, && !block->steps.i, && !block->steps.j, && !block->steps.k, && !block->steps.u, && !block->steps.v, && !block->steps.w) ) { // Is this a retract / recover move? diff --git a/Marlin/src/module/probe.h b/Marlin/src/module/probe.h index eb55ea1b4513..98b4b107cd4f 100644 --- a/Marlin/src/module/probe.h +++ b/Marlin/src/module/probe.h @@ -182,7 +182,7 @@ class Probe { static bool set_deployed(const bool, const bool=false) { return false; } - static bool can_reach(const_float_t rx, const_float_t ry, const bool=true) { return position_is_reachable(rx, ry); } + static bool can_reach(const_float_t rx, const_float_t ry, const bool=true) { return position_is_reachable(TERN_(HAS_X_AXIS, rx) OPTARG(HAS_Y_AXIS, ry)); } #endif // !HAS_BED_PROBE diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index 8ebc8c61f54e..53e98a462659 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -181,10 +181,10 @@ #define _EN_ITEM(N) , E##N #define _EN1_ITEM(N) , E##N:1 -typedef struct { uint16_t MAIN_AXIS_NAMES, X2, Y2, Z2, Z3, Z4 REPEAT(E_STEPPERS, _EN_ITEM); } per_stepper_uint16_t; -typedef struct { uint32_t MAIN_AXIS_NAMES, X2, Y2, Z2, Z3, Z4 REPEAT(E_STEPPERS, _EN_ITEM); } per_stepper_uint32_t; -typedef struct { int16_t MAIN_AXIS_NAMES, X2, Y2, Z2, Z3, Z4; } mot_stepper_int16_t; -typedef struct { bool NUM_AXIS_LIST(X:1, Y:1, Z:1, I:1, J:1, K:1, U:1, V:1, W:1), X2:1, Y2:1, Z2:1, Z3:1, Z4:1 REPEAT(E_STEPPERS, _EN1_ITEM); } per_stepper_bool_t; +typedef struct { uint16_t MAIN_AXIS_NAMES_ X2, Y2, Z2, Z3, Z4 REPEAT(E_STEPPERS, _EN_ITEM); } per_stepper_uint16_t; +typedef struct { uint32_t MAIN_AXIS_NAMES_ X2, Y2, Z2, Z3, Z4 REPEAT(E_STEPPERS, _EN_ITEM); } per_stepper_uint32_t; +typedef struct { int16_t MAIN_AXIS_NAMES_ X2, Y2, Z2, Z3, Z4; } mot_stepper_int16_t; +typedef struct { bool NUM_AXIS_LIST_(X:1, Y:1, Z:1, I:1, J:1, K:1, U:1, V:1, W:1) X2:1, Y2:1, Z2:1, Z3:1, Z4:1 REPEAT(E_STEPPERS, _EN1_ITEM); } per_stepper_bool_t; #undef _EN_ITEM @@ -225,7 +225,9 @@ typedef struct SettingsDataStruct { // // Home Offset // - xyz_pos_t home_offset; // M206 XYZ / M665 TPZ + #if NUM_AXES + xyz_pos_t home_offset; // M206 XYZ / M665 TPZ + #endif // // Hotend Offset @@ -264,8 +266,9 @@ typedef struct SettingsDataStruct { // // HAS_BED_PROBE // - - xyz_pos_t probe_offset; // M851 X Y Z + #if NUM_AXES + xyz_pos_t probe_offset; // M851 X Y Z + #endif // // ABL_PLANAR @@ -475,7 +478,9 @@ typedef struct SettingsDataStruct { // // CNC_COORDINATE_SYSTEMS // - xyz_pos_t coordinate_system[MAX_COORDINATE_SYSTEMS]; // G54-G59.3 + #if NUM_AXES + xyz_pos_t coordinate_system[MAX_COORDINATE_SYSTEMS]; // G54-G59.3 + #endif // // SKEW_CORRECTION @@ -501,9 +506,11 @@ typedef struct SettingsDataStruct { // // BACKLASH_COMPENSATION // - xyz_float_t backlash_distance_mm; // M425 X Y Z - uint8_t backlash_correction; // M425 F - float backlash_smoothing_mm; // M425 S + #if NUM_AXES + xyz_float_t backlash_distance_mm; // M425 X Y Z + uint8_t backlash_correction; // M425 F + float backlash_smoothing_mm; // M425 S + #endif // // EXTENSIBLE_UI @@ -813,6 +820,7 @@ void MarlinSettings::postprocess() { // // Home Offset // + #if NUM_AXES { _FIELD_TEST(home_offset); @@ -825,6 +833,7 @@ void MarlinSettings::postprocess() { EEPROM_WRITE(home_offset); #endif } + #endif // NUM_AXES // // Hotend Offsets, if any @@ -905,6 +914,7 @@ void MarlinSettings::postprocess() { // // Probe XYZ Offsets // + #if NUM_AXES { _FIELD_TEST(probe_offset); #if HAS_BED_PROBE @@ -914,6 +924,7 @@ void MarlinSettings::postprocess() { #endif EEPROM_WRITE(zpo); } + #endif // // Planar Bed Leveling matrix @@ -1364,7 +1375,7 @@ void MarlinSettings::postprocess() { #else #define _EN_ITEM(N) , .E##N = 30 const per_stepper_uint32_t tmc_hybrid_threshold = { - NUM_AXIS_LIST(.X = 100, .Y = 100, .Z = 3, .I = 3, .J = 3, .K = 3, .U = 3, .V = 3, .W = 3), + NUM_AXIS_LIST_(.X = 100, .Y = 100, .Z = 3, .I = 3, .J = 3, .K = 3, .U = 3, .V = 3, .W = 3) .X2 = 100, .Y2 = 100, .Z2 = 3, .Z3 = 3, .Z4 = 3 REPEAT(E_STEPPERS, _EN_ITEM) }; @@ -1462,13 +1473,13 @@ void MarlinSettings::postprocess() { // // CNC Coordinate Systems // - - _FIELD_TEST(coordinate_system); - - #if DISABLED(CNC_COORDINATE_SYSTEMS) - const xyz_pos_t coordinate_system[MAX_COORDINATE_SYSTEMS] = { { 0 } }; + #if NUM_AXES + _FIELD_TEST(coordinate_system); + #if DISABLED(CNC_COORDINATE_SYSTEMS) + const xyz_pos_t coordinate_system[MAX_COORDINATE_SYSTEMS] = { { 0 } }; + #endif + EEPROM_WRITE(TERN(CNC_COORDINATE_SYSTEMS, gcode.coordinate_system, coordinate_system)); #endif - EEPROM_WRITE(TERN(CNC_COORDINATE_SYSTEMS, gcode.coordinate_system, coordinate_system)); // // Skew correction factors @@ -1503,6 +1514,7 @@ void MarlinSettings::postprocess() { // // Backlash Compensation // + #if NUM_AXES { #if ENABLED(BACKLASH_GCODE) xyz_float_t backlash_distance_mm; @@ -1522,6 +1534,7 @@ void MarlinSettings::postprocess() { EEPROM_WRITE(backlash_correction); EEPROM_WRITE(backlash_smoothing_mm); } + #endif // NUM_AXES // // Extensible UI User Data @@ -1775,6 +1788,7 @@ void MarlinSettings::postprocess() { // // Home Offset (M206 / M665) // + #if NUM_AXES { _FIELD_TEST(home_offset); @@ -1787,6 +1801,7 @@ void MarlinSettings::postprocess() { EEPROM_READ(home_offset); #endif } + #endif // NUM_AXES // // Hotend Offsets, if any @@ -1862,6 +1877,7 @@ void MarlinSettings::postprocess() { // // Probe Z Offset // + #if NUM_AXES { _FIELD_TEST(probe_offset); #if HAS_BED_PROBE @@ -1871,6 +1887,7 @@ void MarlinSettings::postprocess() { #endif EEPROM_READ(zpo); } + #endif // // Planar Bed Leveling matrix @@ -2439,6 +2456,7 @@ void MarlinSettings::postprocess() { // // CNC Coordinate System // + #if NUM_AXES { _FIELD_TEST(coordinate_system); #if ENABLED(CNC_COORDINATE_SYSTEMS) @@ -2449,6 +2467,7 @@ void MarlinSettings::postprocess() { EEPROM_READ(coordinate_system); #endif } + #endif // // Skew correction factors @@ -2494,6 +2513,7 @@ void MarlinSettings::postprocess() { // // Backlash Compensation // + #if NUM_AXES { xyz_float_t backlash_distance_mm; uint8_t backlash_correction; @@ -2512,6 +2532,7 @@ void MarlinSettings::postprocess() { #endif #endif } + #endif // NUM_AXES // // Extensible UI User Data @@ -2903,7 +2924,7 @@ void MarlinSettings::reset() { planner.settings.min_travel_feedrate_mm_s = feedRate_t(DEFAULT_MINTRAVELFEEDRATE); #if HAS_CLASSIC_JERK - #ifndef DEFAULT_XJERK + #if HAS_X_AXIS && !defined(DEFAULT_XJERK) #define DEFAULT_XJERK 0 #endif #if HAS_Y_AXIS && !defined(DEFAULT_YJERK) diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index d7ef76d18a6d..3e4f65fd695c 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -398,7 +398,7 @@ xyze_int8_t Stepper::count_direction{0}; if (extruder_duplication_enabled || ALWAYS) { X_STEP_WRITE(v); X2_STEP_WRITE(v); } \ else if (last_moved_extruder) X2_STEP_WRITE(v); else X_STEP_WRITE(v); \ }while(0) -#else +#elif HAS_X_AXIS #define X_APPLY_DIR(v,Q) X_DIR_WRITE(v) #define X_APPLY_STEP(v,Q) X_STEP_WRITE(v) #endif @@ -3407,19 +3407,21 @@ int32_t Stepper::triggered_position(const AxisEnum axis) { #endif void Stepper::report_a_position(const xyz_long_t &pos) { - SERIAL_ECHOLNPGM_P( - LIST_N(DOUBLE(NUM_AXES), - TERN(SAYS_A, PSTR(STR_COUNT_A), PSTR(STR_COUNT_X)), pos.x, - TERN(SAYS_B, PSTR("B:"), SP_Y_LBL), pos.y, - TERN(SAYS_C, PSTR("C:"), SP_Z_LBL), pos.z, - SP_I_LBL, pos.i, - SP_J_LBL, pos.j, - SP_K_LBL, pos.k, - SP_U_LBL, pos.u, - SP_V_LBL, pos.v, - SP_W_LBL, pos.w - ) - ); + #if NUM_AXES + SERIAL_ECHOLNPGM_P( + LIST_N(DOUBLE(NUM_AXES), + TERN(SAYS_A, PSTR(STR_COUNT_A), PSTR(STR_COUNT_X)), pos.x, + TERN(SAYS_B, PSTR("B:"), SP_Y_LBL), pos.y, + TERN(SAYS_C, PSTR("C:"), SP_Z_LBL), pos.z, + SP_I_LBL, pos.i, + SP_J_LBL, pos.j, + SP_K_LBL, pos.k, + SP_U_LBL, pos.u, + SP_V_LBL, pos.v, + SP_W_LBL, pos.w + ) + ); + #endif } void Stepper::report_positions() { diff --git a/Marlin/src/module/stepper.h b/Marlin/src/module/stepper.h index 9e45ffa45f6e..b6996aa932d8 100644 --- a/Marlin/src/module/stepper.h +++ b/Marlin/src/module/stepper.h @@ -83,7 +83,7 @@ typedef struct { // All the stepper enable pins constexpr pin_t ena_pins[] = { - NUM_AXIS_LIST(X_ENABLE_PIN, Y_ENABLE_PIN, Z_ENABLE_PIN, I_ENABLE_PIN, J_ENABLE_PIN, K_ENABLE_PIN, U_ENABLE_PIN, V_ENABLE_PIN, W_ENABLE_PIN), + NUM_AXIS_LIST_(X_ENABLE_PIN, Y_ENABLE_PIN, Z_ENABLE_PIN, I_ENABLE_PIN, J_ENABLE_PIN, K_ENABLE_PIN, U_ENABLE_PIN, V_ENABLE_PIN, W_ENABLE_PIN) LIST_N(E_STEPPERS, E0_ENABLE_PIN, E1_ENABLE_PIN, E2_ENABLE_PIN, E3_ENABLE_PIN, E4_ENABLE_PIN, E5_ENABLE_PIN, E6_ENABLE_PIN, E7_ENABLE_PIN) }; diff --git a/Marlin/src/module/stepper/indirection.h b/Marlin/src/module/stepper/indirection.h index d60c539be53e..99a677c81fe1 100644 --- a/Marlin/src/module/stepper/indirection.h +++ b/Marlin/src/module/stepper/indirection.h @@ -83,21 +83,23 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #define INVERT_DIR(AXIS, D) (TERN_(INVERT_## AXIS ##_DIR, !)(D)) // X Stepper -#ifndef X_ENABLE_INIT - #define X_ENABLE_INIT() SET_OUTPUT(X_ENABLE_PIN) - #define X_ENABLE_WRITE(STATE) WRITE(X_ENABLE_PIN,STATE) - #define X_ENABLE_READ() bool(READ(X_ENABLE_PIN)) -#endif -#ifndef X_DIR_INIT - #define X_DIR_INIT() SET_OUTPUT(X_DIR_PIN) - #define X_DIR_WRITE(STATE) WRITE(X_DIR_PIN,INVERT_DIR(X, STATE)) - #define X_DIR_READ() INVERT_DIR(X, bool(READ(X_DIR_PIN))) -#endif -#define X_STEP_INIT() SET_OUTPUT(X_STEP_PIN) -#ifndef X_STEP_WRITE - #define X_STEP_WRITE(STATE) WRITE(X_STEP_PIN,STATE) +#if HAS_X_AXIS + #ifndef X_ENABLE_INIT + #define X_ENABLE_INIT() SET_OUTPUT(X_ENABLE_PIN) + #define X_ENABLE_WRITE(STATE) WRITE(X_ENABLE_PIN,STATE) + #define X_ENABLE_READ() bool(READ(X_ENABLE_PIN)) + #endif + #ifndef X_DIR_INIT + #define X_DIR_INIT() SET_OUTPUT(X_DIR_PIN) + #define X_DIR_WRITE(STATE) WRITE(X_DIR_PIN,INVERT_DIR(X, STATE)) + #define X_DIR_READ() INVERT_DIR(X, bool(READ(X_DIR_PIN))) + #endif + #define X_STEP_INIT() SET_OUTPUT(X_STEP_PIN) + #ifndef X_STEP_WRITE + #define X_STEP_WRITE(STATE) WRITE(X_STEP_PIN,STATE) + #endif + #define X_STEP_READ() bool(READ(X_STEP_PIN)) #endif -#define X_STEP_READ() bool(READ(X_STEP_PIN)) // Y Stepper #if HAS_Y_AXIS @@ -977,8 +979,13 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #define AFTER_CHANGE(N,TF) NOOP #endif -#define ENABLE_AXIS_X() if (SHOULD_ENABLE(x)) { ENABLE_STEPPER_X(); ENABLE_STEPPER_X2(); AFTER_CHANGE(x, true); } -#define DISABLE_AXIS_X() if (SHOULD_DISABLE(x)) { DISABLE_STEPPER_X(); DISABLE_STEPPER_X2(); AFTER_CHANGE(x, false); set_axis_untrusted(X_AXIS); } +#if HAS_X_AXIS + #define ENABLE_AXIS_X() if (SHOULD_ENABLE(x)) { ENABLE_STEPPER_X(); ENABLE_STEPPER_X2(); AFTER_CHANGE(x, true); } + #define DISABLE_AXIS_X() if (SHOULD_DISABLE(x)) { DISABLE_STEPPER_X(); DISABLE_STEPPER_X2(); AFTER_CHANGE(x, false); set_axis_untrusted(X_AXIS); } +#else + #define ENABLE_AXIS_X() NOOP + #define DISABLE_AXIS_X() NOOP +#endif #if HAS_Y_AXIS #define ENABLE_AXIS_Y() if (SHOULD_ENABLE(y)) { ENABLE_STEPPER_Y(); ENABLE_STEPPER_Y2(); AFTER_CHANGE(y, true); } diff --git a/Marlin/src/module/stepper/trinamic.cpp b/Marlin/src/module/stepper/trinamic.cpp index 3db2c0827e43..7649c52f5ce6 100644 --- a/Marlin/src/module/stepper/trinamic.cpp +++ b/Marlin/src/module/stepper/trinamic.cpp @@ -493,7 +493,7 @@ enum StealthIndex : uint8_t { #endif #define _EN_ITEM(N) , E##N - enum TMCAxis : uint8_t { MAIN_AXIS_NAMES, X2, Y2, Z2, Z3, Z4 REPEAT(EXTRUDERS, _EN_ITEM), TOTAL }; + enum TMCAxis : uint8_t { MAIN_AXIS_NAMES_ X2, Y2, Z2, Z3, Z4 REPEAT(EXTRUDERS, _EN_ITEM), TOTAL }; #undef _EN_ITEM void tmc_serial_begin() { diff --git a/Marlin/src/module/stepper/trinamic.h b/Marlin/src/module/stepper/trinamic.h index 88c0686fc37b..d6de5cd00268 100644 --- a/Marlin/src/module/stepper/trinamic.h +++ b/Marlin/src/module/stepper/trinamic.h @@ -77,7 +77,7 @@ #define TMC_CLASS_E(N) TMC_CLASS(E##N, E) #endif -#ifndef CHOPPER_TIMING_X +#if HAS_X_AXIS && !defined(CHOPPER_TIMING_X) #define CHOPPER_TIMING_X CHOPPER_TIMING #endif #if HAS_Y_AXIS && !defined(CHOPPER_TIMING_Y) diff --git a/Marlin/src/pins/sensitive_pins.h b/Marlin/src/pins/sensitive_pins.h index abccac9dad9d..b7b5195a89b0 100644 --- a/Marlin/src/pins/sensitive_pins.h +++ b/Marlin/src/pins/sensitive_pins.h @@ -24,44 +24,51 @@ // // Prepare a list of protected pins for M42/M43 // +#if HAS_X_AXIS + + #if PIN_EXISTS(X_MIN) + #define _X_MIN X_MIN_PIN, + #else + #define _X_MIN + #endif + #if PIN_EXISTS(X_MAX) + #define _X_MAX X_MAX_PIN, + #else + #define _X_MAX + #endif + #if PIN_EXISTS(X_CS) && AXIS_HAS_SPI(X) + #define _X_CS X_CS_PIN, + #else + #define _X_CS + #endif + #if PIN_EXISTS(X_MS1) + #define _X_MS1 X_MS1_PIN, + #else + #define _X_MS1 + #endif + #if PIN_EXISTS(X_MS2) + #define _X_MS2 X_MS2_PIN, + #else + #define _X_MS2 + #endif + #if PIN_EXISTS(X_MS3) + #define _X_MS3 X_MS3_PIN, + #else + #define _X_MS3 + #endif + #if PIN_EXISTS(X_ENABLE) + #define _X_ENABLE_PIN X_ENABLE_PIN, + #else + #define _X_ENABLE_PIN + #endif + + #define _X_PINS X_STEP_PIN, X_DIR_PIN, _X_ENABLE_PIN _X_MIN _X_MAX _X_MS1 _X_MS2 _X_MS3 _X_CS -#if PIN_EXISTS(X_MIN) - #define _X_MIN X_MIN_PIN, -#else - #define _X_MIN -#endif -#if PIN_EXISTS(X_MAX) - #define _X_MAX X_MAX_PIN, -#else - #define _X_MAX -#endif -#if PIN_EXISTS(X_CS) && AXIS_HAS_SPI(X) - #define _X_CS X_CS_PIN, -#else - #define _X_CS -#endif -#if PIN_EXISTS(X_MS1) - #define _X_MS1 X_MS1_PIN, -#else - #define _X_MS1 -#endif -#if PIN_EXISTS(X_MS2) - #define _X_MS2 X_MS2_PIN, -#else - #define _X_MS2 -#endif -#if PIN_EXISTS(X_MS3) - #define _X_MS3 X_MS3_PIN, -#else - #define _X_MS3 -#endif -#if PIN_EXISTS(X_ENABLE) - #define _X_ENABLE_PIN X_ENABLE_PIN, #else - #define _X_ENABLE_PIN -#endif -#define _X_PINS X_STEP_PIN, X_DIR_PIN, _X_ENABLE_PIN _X_MIN _X_MAX _X_MS1 _X_MS2 _X_MS3 _X_CS + #define _X_PINS + +#endif #if HAS_Y_AXIS diff --git a/buildroot/tests/mega2560 b/buildroot/tests/mega2560 index c2a3452e67e8..ad9763451f47 100755 --- a/buildroot/tests/mega2560 +++ b/buildroot/tests/mega2560 @@ -71,6 +71,19 @@ opt_enable VIKI2 BOOT_MARLIN_LOGO_ANIMATED SDSUPPORT AUTO_REPORT_SD_STATUS \ FILAMENT_RUNOUT_SENSOR NOZZLE_PARK_FEATURE ADVANCED_PAUSE_FEATURE Z_SAFE_HOMING FIL_RUNOUT3_PULLUP exec_test $1 $2 "Z Servo Probe | Multiple runout sensors (x5)" "$3" +# +# Extruder Only. No XYZ axes at all. +# +restore_configs +opt_set DEFAULT_AXIS_STEPS_PER_UNIT '{ 4000 }' \ + DEFAULT_MAX_FEEDRATE '{ 5 }' \ + DEFAULT_MAX_ACCELERATION '{ 100 }' \ + MANUAL_FEEDRATE '{ 4*60 }' \ + AXIS_RELATIVE_MODES '{ false }' \ + HOMING_BUMP_MM '{}' HOMING_BUMP_DIVISOR '{}' HOMING_FEEDRATE_MM_M '{}' +opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER +opt_disable X_DRIVER_TYPE Y_DRIVER_TYPE Z_DRIVER_TYPE +exec_test $1 $2 "E Axis Only | DOGM MarlinUI" "$3" # # Mixing Extruder with 5 steppers, Greek diff --git a/ini/stm32g0.ini b/ini/stm32g0.ini index 2ffee0979051..8d9353f0af89 100644 --- a/ini/stm32g0.ini +++ b/ini/stm32g0.ini @@ -36,9 +36,10 @@ platform_packages = framework-arduinoststm32@https://github.com/stm32d board = marlin_BTT_EBB42_V1_1 board_build.offset = 0x0000 board_upload.offset_address = 0x08000000 -build_flags = ${stm32_variant.build_flags} ${stm32g0_I2C2.build_flags} -upload_protocol = stlink +build_flags = ${stm32_variant.build_flags} ${stm32g0_I2C2.build_flags} -flto debug_tool = stlink +upload_protocol = dfu +upload_command = dfu-util -a 0 -s 0x08000000:leave -D "$SOURCE" # # BigTreeTech SKR Mini E3 V3.0 (STM32G0B1RET6 ARM Cortex-M0+) From 3a8809c1a75c9a8986c983c0921b7f7e62e0037e Mon Sep 17 00:00:00 2001 From: Skopus <71988971+skopusdotorg@users.noreply.github.com> Date: Tue, 9 May 2023 23:31:17 +0300 Subject: [PATCH 147/427] =?UTF-8?q?=E2=9C=A8=20KEDI=20(STM32F1)=20and=20GO?= =?UTF-8?q?DI=20(ESP32)=20boards=20(#25796)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/boards.h | 2 + .../pins/esp32/pins_GODI_CONTROLLER_V1_0.h | 141 +++++++++ Marlin/src/pins/pins.h | 4 + .../pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h | 297 ++++++++++++++++++ ini/esp32.ini | 6 + 5 files changed, 450 insertions(+) create mode 100644 Marlin/src/pins/esp32/pins_GODI_CONTROLLER_V1_0.h create mode 100644 Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index ccf877cd2498..691b03ed0acc 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -391,6 +391,7 @@ #define BOARD_PANDA_PI_V29 5066 // Panda Pi V2.9 - Standalone (STM32F103RC) #define BOARD_SOVOL_V131 5067 // Sovol V1.3.1 (GD32F103RET6) #define BOARD_TRIGORILLA_V006 5068 // Trigorilla V0.0.6 (GD32F103RE) +#define BOARD_KEDI_CONTROLLER_V1_2 5069 // EDUTRONICS Kedi Controller V1.2 (STM32F103RC) // // ARM Cortex-M4F @@ -479,6 +480,7 @@ #define BOARD_PANDA_M4 7007 // Panda_M4 #define BOARD_MKS_TINYBEE 7008 // MKS TinyBee based on ESP32 (with I2S stepper stream) #define BOARD_ENWI_ESPNP 7009 // enwi ESPNP based on ESP32 (with I2S stepper stream) +#define BOARD_GODI_CONTROLLER_V1_0 7010 // Godi Controller based on ESP32 32-Bit V1.0 // // SAMD51 ARM Cortex-M4 diff --git a/Marlin/src/pins/esp32/pins_GODI_CONTROLLER_V1_0.h b/Marlin/src/pins/esp32/pins_GODI_CONTROLLER_V1_0.h new file mode 100644 index 000000000000..35fc4e035d81 --- /dev/null +++ b/Marlin/src/pins/esp32/pins_GODI_CONTROLLER_V1_0.h @@ -0,0 +1,141 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +/** + * Godi Controller 32-Bit V1.0 pin assignments + * + * 3D printer control board based on the ESP32 microcontroller. + * Supports 4 stepper drivers, heated bed, single hotend. + */ + +#include "env_validate.h" + +#if EXTRUDERS > 1 || E_STEPPERS > 1 + #error "Godi Controller only supports 1 E stepper." +#elif HAS_MULTI_HOTEND + #error "Godi Controller only supports 1 hotend." +#endif + +#define BOARD_INFO_NAME "Godi Controller 32-Bit V1.0" + +// +// Disable I2S stepper stream, by default +// +#undef I2S_STEPPER_STREAM +#undef I2S_WS +#undef I2S_BCK +#undef I2S_DATA + +// +// Limit Switches +// +#define X_STOP_PIN 34 +#define Y_STOP_PIN 35 +#define Z_STOP_PIN 15 + +// +// Steppers +// +#define X_STEP_PIN 27 +#define X_DIR_PIN 26 +#define X_ENABLE_PIN 25 + +#define Y_STEP_PIN 33 +#define Y_DIR_PIN 32 +#define Y_ENABLE_PIN X_ENABLE_PIN + +#define Z_STEP_PIN 14 +#define Z_DIR_PIN 12 +#define Z_ENABLE_PIN X_ENABLE_PIN + +#define E0_STEP_PIN 16 +#define E0_DIR_PIN 17 +#define E0_ENABLE_PIN X_ENABLE_PIN + +// +// Temperature Sensors +// +#define TEMP_0_PIN 36 // Analog Input +#define TEMP_BED_PIN 39 // Analog Input + +// +// Heaters / Fans +// +#define HEATER_0_PIN 4 +#define FAN0_PIN 13 +#define HEATER_BED_PIN 2 + +// +// MicroSD card +// +#define SD_MOSI_PIN 23 +#define SD_MISO_PIN 19 +#define SD_SCK_PIN 18 +#define SDSS 5 +#define USES_SHARED_SPI // SPI is shared by SD card with TMC SPI drivers + +#if HAS_TMC_UART + // + // TMC2209 stepper drivers + // + + // + // Hardware serial 1 + // + #define X_HARDWARE_SERIAL Serial1 + #define Y_HARDWARE_SERIAL Serial1 + #define Z_HARDWARE_SERIAL Serial1 + #define E0_HARDWARE_SERIAL Serial1 + + #define TMC_BAUD_RATE 115200 +#endif + +/** + * Hardware serial pins + * + * Override these pins in Configuration.h or Configuration_adv.h if needed. + * + * Note: Serial2 can be defined using HARDWARE_SERIAL2_RX and HARDWARE_SERIAL2_TX + * but Godi Controller 32-Bit does not have enough spare pins for such reassignment. + */ +#ifndef HARDWARE_SERIAL1_RX + #define HARDWARE_SERIAL1_RX 21 +#endif +#ifndef HARDWARE_SERIAL1_TX + #define HARDWARE_SERIAL1_TX 22 +#endif + +// +// Heaters / Fans +// + +#if EITHER(EDUTRONICS_12864OLED_SH1106, EDUTRONICS_12864OLED_SSD1306) + #define LCDSCREEN_NAME "EDUTRONICS 12864 OLED" + #define BTN_EN2 1 + #define BTN_EN1 3 + #define BTN_ENC 0 + #define BEEPER_PIN -1 + #define KILL_PIN -1 + #define DOGLCD_SDA 21 // SDA + #define DOGLCD_SCL 22 // SCL +#endif diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index a17778596328..5bf3b0881008 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -688,6 +688,8 @@ #include "gd32f1/pins_SOVOL_V131.h" // GD32F1 env:GD32F103RET6_sovol_maple #elif MB(TRIGORILLA_V006) #include "gd32f1/pins_TRIGORILLA_V006.h" // GD32F103 env:trigorilla_v006 +#elif MB(KEDI_CONTROLLER_V1_2) + #include "stm32f1/pins_KEDI_CONTROLLER_V1_2.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple // // ARM Cortex-M4F @@ -838,6 +840,8 @@ #include "esp32/pins_MKS_TINYBEE.h" // ESP32 env:mks_tinybee #elif MB(ENWI_ESPNP) #include "esp32/pins_ENWI_ESPNP.h" // ESP32 env:esp32 +#elif MB(GODI_CONTROLLER_V1_0) + #include "esp32/pins_GODI_CONTROLLER_V1_0.h" // ESP32 env:godi_esp32 // // Adafruit Grand Central M4 (SAMD51 ARM Cortex-M4) diff --git a/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h b/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h new file mode 100644 index 000000000000..9ea36e2f2500 --- /dev/null +++ b/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h @@ -0,0 +1,297 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "env_validate.h" + +#define BOARD_INFO_NAME "Kedi Controller 32-Bit V1.2" + +//#define DISABLE_DEBUG +#define DISABLE_JTAG + +// Ignore temp readings during development. +//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 + +#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) + #define FLASH_EEPROM_EMULATION + #define EEPROM_PAGE_SIZE (0x800U) // 2KB + #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) + #define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE // 2KB +#endif + +// +// Limit Switches +// +#define X_MIN_PIN PC2 +#define X_MAX_PIN PA2 +#define Y_MIN_PIN PC1 +#define Y_MAX_PIN PA1 +#define Z_MIN_PIN PC0 +#define Z_MAX_PIN PC3 + +// +// Steppers +// + +#define X_STEP_PIN PC6 +#define X_DIR_PIN PC7 +#define X_ENABLE_PIN PB15 + +#define Y_STEP_PIN PB13 +#define Y_DIR_PIN PB14 +#define Y_ENABLE_PIN PB12 + +#define Z_STEP_PIN PB10 +#define Z_DIR_PIN PB11 +#define Z_ENABLE_PIN PB2 + +#define E0_STEP_PIN PC5 +#define E0_DIR_PIN PB0 +#define E0_ENABLE_PIN PC4 + +// Special Drivers + +// L6470 or L6474 on SPI +#if HAS_DRIVER(L6470) || HAS_DRIVER(L6474) // Shared with SPI on EXP2 + #define L6470_CHAIN_SCK_PIN PB3 + #define L6470_CHAIN_MISO_PIN PB4 + #define L6470_CHAIN_MOSI_PIN PB5 + #define L6470_CHAIN_SS_PIN PA15 + #define ENABLE_RESET_L64XX_CHIPS +#endif + +// TMC2130 on SPI +// SPI Pins (Shared for all drivers) +#if ENABLED(TMC_USE_SW_SPI) // Shared with EXP2 + #ifndef TMC_SW_SCK + #define TMC_SW_SCK PB3 + #endif + #ifndef TMC_SW_MISO + #define TMC_SW_MISO PB4 + #endif + #ifndef TMC_SW_MOSI + #define TMC_SW_MOSI PB5 + #endif +#endif + +// CS Pins (One pin for each driver) +#if HAS_DRIVER(TMC2130) || HAS_DRIVER(TMC2160) || HAS_DRIVER(TMC2660) || HAS_DRIVER(TMC5130) || HAS_DRIVER(TMC5160) + #ifndef X_CS_PIN + #define X_CS_PIN PC10 + #endif + #ifndef Y_CS_PIN + #define Y_CS_PIN PC11 + #endif + #ifndef Z_CS_PIN + #define Z_CS_PIN PC12 + #endif + #ifndef E0_CS_PIN + #define E0_CS_PIN PC14 + #endif +#endif + +// TMC2208 or TMC2209 on UART +#if HAS_DRIVER(TMC2208) || HAS_DRIVER(TMC2209) + +// UART Pins (Single pin for both RX & TX) + #ifndef X_PIN_UART + #define X_PIN_UART PC10 + #endif + #ifndef Y_PIN_UART + #define Y_PIN_UART PC11 + #endif + #ifndef Z_PIN_UART + #define Z_PIN_UART PC12 + #endif + #ifndef E0_PIN_UART + #define E0_PIN_UART PC14 + #endif + +// Configurating Pins +#define X_SERIAL_TX_PIN X_PIN_UART +#define X_SERIAL_RX_PIN X_PIN_UART +#define Y_SERIAL_TX_PIN Y_PIN_UART +#define Y_SERIAL_RX_PIN Y_PIN_UART +#define Z_SERIAL_TX_PIN Z_PIN_UART +#define Z_SERIAL_RX_PIN Z_PIN_UART +#define E0_SERIAL_TX_PIN E0_PIN_UART +#define E0_SERIAL_RX_PIN E0_PIN_UART +#endif + +// +// Heaters / Fans +// +#define HEATER_0_PIN PA8 +#define FAN0_PIN PC8 +#define HEATER_BED_PIN PC9 + +// +// Temperature Sensors +// +#define TEMP_BED_PIN PB1 // Analog Input +#define TEMP_0_PIN PA0 // Analog Input + +/** ------ ------ + * (BEEPER) PC10 |10 9 | PC11 (BTN_ENC) (MISO) PB4 |10 9 | PB3 (SCK) + * (LCD_EN) PB6 | 8 7 | PC12 (LCD_RS) (BTN_EN1) PD2 | 8 7 | PA15 (SD_SS) + * (LCD_D4) PC13 6 5 | PB7 (LCD_D5) (BTN_EN2) PB8 6 5 | PB5 (MOSI) + * (LCD_D6) PC15 | 4 3 | PC14 (LCD_D7) (SD_DETECT) PB9 | 4 3 | RESET + * GND | 2 1 | 5V GND | 2 1 | -- + * ------ ------ + * EXP1 EXP2 + */ +#define EXP1_03_PIN PC14 +#define EXP1_04_PIN PC15 +#define EXP1_05_PIN PB7 +#define EXP1_06_PIN PC13 +#define EXP1_07_PIN PC12 +#define EXP1_08_PIN PB6 +#define EXP1_09_PIN PC11 +#define EXP1_10_PIN PC10 + +#define EXP2_03_PIN -1 // RESET +#define EXP2_04_PIN PB9 +#define EXP2_05_PIN PB5 +#define EXP2_06_PIN PB8 +#define EXP2_07_PIN PA15 +#define EXP2_08_PIN PD2 +#define EXP2_09_PIN PB3 +#define EXP2_10_PIN PB4 + +// +// LCD / Controller +// +#if HAS_WIRED_LCD + #define BEEPER_PIN EXP1_10_PIN + #define BTN_ENC EXP1_09_PIN + + #if ENABLED(CR10_STOCKDISPLAY) + #define LCD_PINS_RS EXP1_04_PIN + + #define BTN_EN1 EXP1_08_PIN + #define BTN_EN2 EXP1_06_PIN + + #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_D4 EXP1_05_PIN + + #elif IS_TFTGLCD_PANEL + + #undef BEEPER_PIN + #undef BTN_ENC + + #if ENABLED(TFTGLCD_PANEL_SPI) + #define TFTGLCD_CS EXP2_08_PIN + #endif + + #define SD_DETECT_PIN EXP2_04_PIN + + #else + + #define LCD_PINS_RS EXP1_07_PIN + + #define BTN_EN1 EXP2_08_PIN + #define BTN_EN2 EXP2_06_PIN + + #define LCD_PINS_ENABLE EXP1_08_PIN + + #if ENABLED(FYSETC_MINI_12864) + + #define LCD_BACKLIGHT_PIN -1 + #define LCD_RESET_PIN EXP1_06_PIN + #define DOGLCD_A0 EXP1_07_PIN + #define DOGLCD_CS EXP1_08_PIN + #define DOGLCD_SCK EXP2_09_PIN + #define DOGLCD_MOSI EXP2_05_PIN + + #define FORCE_SOFT_SPI // SPI MODE3 + + #define LED_PIN EXP1_05_PIN // red pwm + //#define LED_PIN EXP1_04_PIN // green + //#define LED_PIN EXP1_03_PIN // blue + + //#if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + // #ifndef RGB_LED_R_PIN + // #define RGB_LED_R_PIN EXP1_05_PIN + // #endif + // #ifndef RGB_LED_G_PIN + // #define RGB_LED_G_PIN EXP1_04_PIN + // #endif + // #ifndef RGB_LED_B_PIN + // #define RGB_LED_B_PIN EXP1_03_PIN + // #endif + //#elif ENABLED(FYSETC_MINI_12864_2_1) + // #define NEOPIXEL_PIN EXP1_05_PIN + //#endif + + #else // !FYSETC_MINI_12864 + + #define LCD_PINS_D4 EXP1_06_PIN + #if IS_ULTIPANEL + #define LCD_PINS_D5 EXP1_05_PIN + #define LCD_PINS_D6 EXP1_04_PIN + #define LCD_PINS_D7 EXP1_03_PIN + + #if ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) + #define BTN_ENC_EN LCD_PINS_D7 // Detect the presence of the encoder + #endif + + #endif + + #endif // !FYSETC_MINI_12864 + + // Alter timing for graphical display + #if IS_U8GLIB_ST7920 + #define BOARD_ST7920_DELAY_1 125 + #define BOARD_ST7920_DELAY_2 125 + #define BOARD_ST7920_DELAY_3 125 + #endif + + #endif + +#endif // HAS_WIRED_LCD + +// +// SD Card +// + +// By default the onboard SD is enabled. +// Change SDCARD_CONNECTION from 'ONBOARD' to 'LCD' for an external (LCD module) SD +#ifndef SDCARD_CONNECTION + #define SDCARD_CONNECTION ONBOARD +#endif + +#if SD_CONNECTION_IS(LCD) + #define SPI_DEVICE 3 + #define SD_DETECT_PIN EXP2_04_PIN + #define SD_SCK_PIN EXP2_09_PIN + #define SD_MISO_PIN EXP2_10_PIN + #define SD_MOSI_PIN EXP2_05_PIN + #define SD_SS_PIN EXP2_07_PIN +#elif SD_CONNECTION_IS(ONBOARD) + #define SD_DETECT_PIN PA3 + #define SD_SCK_PIN PA5 + #define SD_MISO_PIN PA6 + #define SD_MOSI_PIN PA7 + #define SD_SS_PIN PA4 +#endif +#define ONBOARD_SPI_DEVICE 1 // SPI1 +#define ONBOARD_SD_CS_PIN PA4 // Chip select for "System" SD card diff --git a/ini/esp32.ini b/ini/esp32.ini index f12ef99759cd..98c3e067552e 100644 --- a/ini/esp32.ini +++ b/ini/esp32.ini @@ -40,3 +40,9 @@ monitor_speed = 115200 [env:mks_tinybee] extends = env:esp32 board_build.partitions = default_8MB.csv + +[env:godi_esp32] +extends = env:esp32 +board_build.partitions = Marlin/src/HAL/ESP32/esp32.csv +upload_speed = 115200 +monitor_speed = 115200 From d52d26b4ef55ebb7ebc56ce5c712e4914f3aeb2a Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Wed, 10 May 2023 08:37:34 +1200 Subject: [PATCH 148/427] =?UTF-8?q?=F0=9F=94=A7=20Update=20multi-stepper?= =?UTF-8?q?=20axis=20conditionals=20(#25798)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/Configuration_adv.h | 2 +- Marlin/src/core/drivers.h | 2 +- Marlin/src/inc/Conditionals_LCD.h | 51 +++++----- Marlin/src/inc/Conditionals_adv.h | 38 +++++-- Marlin/src/inc/Conditionals_post.h | 153 +++++++++++++++-------------- Marlin/src/inc/SanityCheck.h | 4 +- Marlin/src/module/stepper.cpp | 10 +- Marlin/src/pins/pins_postprocess.h | 4 +- Marlin/src/pins/sensitive_pins.h | 2 +- 9 files changed, 142 insertions(+), 124 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 0d1b3d79fae0..262e1a81ca9e 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -859,7 +859,7 @@ #endif #endif -#if HAS_DUAL_Y_STEPPERS +#if HAS_Y2_STEPPER //#define INVERT_Y2_VS_Y_DIR // Y2 direction signal is the opposite of Y //#define Y_DUAL_ENDSTOPS // Y2 has its own endstop #if ENABLED(Y_DUAL_ENDSTOPS) diff --git a/Marlin/src/core/drivers.h b/Marlin/src/core/drivers.h index 72a7d1f4b7eb..fce8a5a9b275 100644 --- a/Marlin/src/core/drivers.h +++ b/Marlin/src/core/drivers.h @@ -64,7 +64,7 @@ #define AXIS_DRIVER_TYPE_W(T) _AXIS_DRIVER_TYPE(W,T) #define AXIS_DRIVER_TYPE_X2(T) (HAS_X2_STEPPER && _AXIS_DRIVER_TYPE(X2,T)) -#define AXIS_DRIVER_TYPE_Y2(T) (HAS_DUAL_Y_STEPPERS && _AXIS_DRIVER_TYPE(Y2,T)) +#define AXIS_DRIVER_TYPE_Y2(T) (HAS_Y2_STEPPER && _AXIS_DRIVER_TYPE(Y2,T)) #define AXIS_DRIVER_TYPE_Z2(T) (NUM_Z_STEPPERS >= 2 && _AXIS_DRIVER_TYPE(Z2,T)) #define AXIS_DRIVER_TYPE_Z3(T) (NUM_Z_STEPPERS >= 3 && _AXIS_DRIVER_TYPE(Z3,T)) #define AXIS_DRIVER_TYPE_Z4(T) (NUM_Z_STEPPERS >= 4 && _AXIS_DRIVER_TYPE(Z4,T)) diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 01266354ce85..7c67916765ba 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -803,33 +803,34 @@ #endif #if NUM_AXES >= 1 #define HAS_X_AXIS 1 -#endif -#if NUM_AXES >= XY - #define HAS_Y_AXIS 1 -#endif -#if NUM_AXES >= XYZ - #define HAS_Z_AXIS 1 -#endif -#if NUM_AXES >= 4 - #define HAS_I_AXIS 1 -#endif -#if NUM_AXES >= 5 - #define HAS_J_AXIS 1 -#endif -#if NUM_AXES >= 6 - #define HAS_K_AXIS 1 -#endif -#if NUM_AXES >= 7 - #define HAS_U_AXIS 1 -#endif -#if NUM_AXES >= 8 - #define HAS_V_AXIS 1 -#endif -#if NUM_AXES >= 9 - #define HAS_W_AXIS 1 + #if NUM_AXES >= XY + #define HAS_Y_AXIS 1 + #if NUM_AXES >= XYZ + #define HAS_Z_AXIS 1 + #if NUM_AXES >= 4 + #define HAS_I_AXIS 1 + #if NUM_AXES >= 5 + #define HAS_J_AXIS 1 + #if NUM_AXES >= 6 + #define HAS_K_AXIS 1 + #if NUM_AXES >= 7 + #define HAS_U_AXIS 1 + #if NUM_AXES >= 8 + #define HAS_V_AXIS 1 + #if NUM_AXES >= 9 + #define HAS_W_AXIS 1 + #endif + #endif + #endif + #endif + #endif + #endif + #endif + #endif #endif #if !HAS_X_AXIS + #undef AVOID_OBSTACLES #undef ENDSTOPPULLUP_XMIN #undef ENDSTOPPULLUP_XMAX #undef X_MIN_ENDSTOP_INVERTING @@ -1001,11 +1002,9 @@ #ifdef X2_DRIVER_TYPE #define HAS_X2_STEPPER 1 - // Dual X Carriage isn't known yet. TODO: Consider moving it to Configuration.h. #endif #ifdef Y2_DRIVER_TYPE #define HAS_Y2_STEPPER 1 - #define HAS_DUAL_Y_STEPPERS 1 #endif /** diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index 7880351c0dad..d715b1bd1268 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -882,17 +882,28 @@ #define HAS_MOTOR_CURRENT_I2C 1 #endif -#if ENABLED(Z_STEPPER_AUTO_ALIGN) - #ifdef Z_STEPPER_ALIGN_STEPPER_XY - #define HAS_Z_STEPPER_ALIGN_STEPPER_XY 1 - #undef Z_STEPPER_ALIGN_AMP - #endif - #ifndef Z_STEPPER_ALIGN_AMP - #define Z_STEPPER_ALIGN_AMP 1.0 - #endif +// X2 but not IDEX => Dual Synchronized X Steppers +#if defined(X2_DRIVER_TYPE) && DISABLED(DUAL_X_CARRIAGE) + #define HAS_SYNCED_X_STEPPERS 1 +#endif + +// Y2 Stepper => Dual Synchronized Y Steppers +#ifdef Y2_DRIVER_TYPE + #define HAS_SYNCED_Y_STEPPERS 1 #endif // Multiple Z steppers +#ifdef INVERT_Z_DIR + #if NUM_Z_STEPPERS >= 2 && !defined(INVERT_Z2_DIR) + #define INVERT_Z2_DIR INVERT_Z_DIR + #if NUM_Z_STEPPERS >= 3 && !defined(INVERT_Z3_DIR) + #define INVERT_Z3_DIR INVERT_Z_DIR + #if NUM_Z_STEPPERS >= 4 && !defined(INVERT_Z4_DIR) + #define INVERT_Z4_DIR INVERT_Z_DIR + #endif + #endif + #endif +#endif #if NUM_Z_STEPPERS < 4 #undef INVERT_Z4_VS_Z_DIR #if NUM_Z_STEPPERS < 3 @@ -903,8 +914,15 @@ #endif #endif -#if defined(X2_DRIVER_TYPE) && DISABLED(DUAL_X_CARRIAGE) - #define HAS_DUAL_X_STEPPERS 1 +// Z Stepper Auto-align +#if ENABLED(Z_STEPPER_AUTO_ALIGN) + #ifdef Z_STEPPER_ALIGN_STEPPER_XY + #define HAS_Z_STEPPER_ALIGN_STEPPER_XY 1 + #undef Z_STEPPER_ALIGN_AMP + #endif + #ifndef Z_STEPPER_ALIGN_AMP + #define Z_STEPPER_ALIGN_AMP 1.0 + #endif #endif // diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 17f2b909e6a7..8ad4a6161e31 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -1077,17 +1077,19 @@ #define HAS_Y_MS_PINS 1 #endif - #if PIN_EXISTS(Y2_ENABLE) || (ENABLED(SOFTWARE_DRIVER_ENABLE) && AXIS_IS_TMC(Y2)) - #define HAS_Y2_ENABLE 1 - #endif - #if PIN_EXISTS(Y2_DIR) - #define HAS_Y2_DIR 1 - #endif - #if PIN_EXISTS(Y2_STEP) - #define HAS_Y2_STEP 1 - #endif - #if PIN_EXISTS(Y2_MS1) - #define HAS_Y2_MS_PINS 1 + #if HAS_Y2_STEPPER + #if PIN_EXISTS(Y2_ENABLE) || (ENABLED(SOFTWARE_DRIVER_ENABLE) && AXIS_IS_TMC(Y2)) + #define HAS_Y2_ENABLE 1 + #endif + #if PIN_EXISTS(Y2_DIR) + #define HAS_Y2_DIR 1 + #endif + #if PIN_EXISTS(Y2_STEP) + #define HAS_Y2_STEP 1 + #endif + #if PIN_EXISTS(Y2_MS1) + #define HAS_Y2_MS_PINS 1 + #endif #endif #endif @@ -1439,7 +1441,6 @@ #define X_SLAVE_ADDRESS 0 #endif #endif - #if AXIS_IS_TMC(X2) #if defined(X2_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(X2) #define X2_SENSORLESS 1 @@ -1477,22 +1478,22 @@ #ifndef Y_SLAVE_ADDRESS #define Y_SLAVE_ADDRESS 0 #endif - #if HAS_DUAL_Y_STEPPERS - #if defined(Y2_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(Y2) - #define Y2_SENSORLESS 1 - #endif - #if AXIS_HAS_STEALTHCHOP(Y2) - #define Y2_HAS_STEALTHCHOP 1 - #endif - #ifndef Y2_INTERPOLATE - #define Y2_INTERPOLATE Y_INTERPOLATE - #endif - #ifndef Y2_HOLD_MULTIPLIER - #define Y2_HOLD_MULTIPLIER Y_HOLD_MULTIPLIER - #endif - #ifndef Y2_SLAVE_ADDRESS - #define Y2_SLAVE_ADDRESS 0 - #endif + #endif + #if AXIS_IS_TMC(Y2) + #if defined(Y2_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(Y2) + #define Y2_SENSORLESS 1 + #endif + #if AXIS_HAS_STEALTHCHOP(Y2) + #define Y2_HAS_STEALTHCHOP 1 + #endif + #ifndef Y2_INTERPOLATE + #define Y2_INTERPOLATE Y_INTERPOLATE + #endif + #ifndef Y2_HOLD_MULTIPLIER + #define Y2_HOLD_MULTIPLIER Y_HOLD_MULTIPLIER + #endif + #ifndef Y2_SLAVE_ADDRESS + #define Y2_SLAVE_ADDRESS 0 #endif #endif @@ -1515,56 +1516,56 @@ #ifndef Z_SLAVE_ADDRESS #define Z_SLAVE_ADDRESS 0 #endif - #if NUM_Z_STEPPERS >= 2 - #if defined(Z2_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(Z2) - #define Z2_SENSORLESS 1 - #endif - #if AXIS_HAS_STEALTHCHOP(Z2) - #define Z2_HAS_STEALTHCHOP 1 - #endif - #ifndef Z2_INTERPOLATE - #define Z2_INTERPOLATE Z_INTERPOLATE - #endif - #ifndef Z2_HOLD_MULTIPLIER - #define Z2_HOLD_MULTIPLIER Z_HOLD_MULTIPLIER - #endif - #ifndef Z2_SLAVE_ADDRESS - #define Z2_SLAVE_ADDRESS 0 - #endif + #endif + #if NUM_Z_STEPPERS >= 2 && AXIS_IS_TMC(Z2) + #if defined(Z2_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(Z2) + #define Z2_SENSORLESS 1 #endif - #if NUM_Z_STEPPERS >= 3 - #if defined(Z3_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(Z3) - #define Z3_SENSORLESS 1 - #endif - #if AXIS_HAS_STEALTHCHOP(Z3) - #define Z3_HAS_STEALTHCHOP 1 - #endif - #ifndef Z3_INTERPOLATE - #define Z3_INTERPOLATE Z_INTERPOLATE - #endif - #ifndef Z3_HOLD_MULTIPLIER - #define Z3_HOLD_MULTIPLIER Z_HOLD_MULTIPLIER - #endif - #ifndef Z3_SLAVE_ADDRESS - #define Z3_SLAVE_ADDRESS 0 - #endif + #if AXIS_HAS_STEALTHCHOP(Z2) + #define Z2_HAS_STEALTHCHOP 1 #endif - #if NUM_Z_STEPPERS >= 4 - #if defined(Z4_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(Z4) - #define Z4_SENSORLESS 1 - #endif - #if AXIS_HAS_STEALTHCHOP(Z4) - #define Z4_HAS_STEALTHCHOP 1 - #endif - #ifndef Z4_INTERPOLATE - #define Z4_INTERPOLATE Z_INTERPOLATE - #endif - #ifndef Z4_HOLD_MULTIPLIER - #define Z4_HOLD_MULTIPLIER Z_HOLD_MULTIPLIER - #endif - #ifndef Z4_SLAVE_ADDRESS - #define Z4_SLAVE_ADDRESS 0 - #endif + #ifndef Z2_INTERPOLATE + #define Z2_INTERPOLATE Z_INTERPOLATE + #endif + #ifndef Z2_HOLD_MULTIPLIER + #define Z2_HOLD_MULTIPLIER Z_HOLD_MULTIPLIER + #endif + #ifndef Z2_SLAVE_ADDRESS + #define Z2_SLAVE_ADDRESS 0 + #endif + #endif + #if NUM_Z_STEPPERS >= 3 && AXIS_IS_TMC(Z3) + #if defined(Z3_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(Z3) + #define Z3_SENSORLESS 1 + #endif + #if AXIS_HAS_STEALTHCHOP(Z3) + #define Z3_HAS_STEALTHCHOP 1 + #endif + #ifndef Z3_INTERPOLATE + #define Z3_INTERPOLATE Z_INTERPOLATE + #endif + #ifndef Z3_HOLD_MULTIPLIER + #define Z3_HOLD_MULTIPLIER Z_HOLD_MULTIPLIER + #endif + #ifndef Z3_SLAVE_ADDRESS + #define Z3_SLAVE_ADDRESS 0 + #endif + #endif + #if NUM_Z_STEPPERS >= 4 && AXIS_IS_TMC(Z4) + #if defined(Z4_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(Z4) + #define Z4_SENSORLESS 1 + #endif + #if AXIS_HAS_STEALTHCHOP(Z4) + #define Z4_HAS_STEALTHCHOP 1 + #endif + #ifndef Z4_INTERPOLATE + #define Z4_INTERPOLATE Z_INTERPOLATE + #endif + #ifndef Z4_HOLD_MULTIPLIER + #define Z4_HOLD_MULTIPLIER Z_HOLD_MULTIPLIER + #endif + #ifndef Z4_SLAVE_ADDRESS + #define Z4_SLAVE_ADDRESS 0 #endif #endif diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index c99297ad4631..6e3b4e177d47 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -243,7 +243,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #if HAS_X2_STEPPER && !GOOD_AXIS_PINS(X2) #error "If X2_DRIVER_TYPE is defined, then X2 ENABLE/STEP/DIR pins are also needed." #endif -#if HAS_DUAL_Y_STEPPERS && !GOOD_AXIS_PINS(Y2) +#if HAS_Y2_STEPPER && !GOOD_AXIS_PINS(Y2) #error "If Y2_DRIVER_TYPE is defined, then Y2 ENABLE/STEP/DIR pins are also needed." #endif #if HAS_Z_AXIS @@ -4035,7 +4035,7 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." /** * Fixed-Time Motion limitations */ -#if ENABLED(FT_MOTION) && (NUM_AXES > 3 || E_STEPPERS > 1 || NUM_Z_STEPPERS > 1 || ANY(DUAL_X_CARRIAGE, HAS_DUAL_X_STEPPERS, HAS_DUAL_Y_STEPPERS, HAS_MULTI_EXTRUDER, MIXING_EXTRUDER)) +#if ENABLED(FT_MOTION) && (NUM_AXES > 3 || E_STEPPERS > 1 || NUM_Z_STEPPERS > 1 || ANY(DUAL_X_CARRIAGE, HAS_SYNCED_X_STEPPERS, HAS_SYNCED_Y_STEPPERS, HAS_MULTI_EXTRUDER, MIXING_EXTRUDER)) #error "FT_MOTION is currently limited to machines with 3 linear axes and a single extruder." #endif diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 3e4f65fd695c..c811bf5e38c8 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -382,7 +382,7 @@ xyze_int8_t Stepper::count_direction{0}; A##4_STEP_WRITE(V); \ } -#if HAS_DUAL_X_STEPPERS +#if HAS_SYNCED_X_STEPPERS #define X_APPLY_DIR(v,Q) do{ X_DIR_WRITE(v); X2_DIR_WRITE(INVERT_DIR(X2_VS_X, v)); }while(0) #if ENABLED(X_DUAL_ENDSTOPS) #define X_APPLY_STEP(v,Q) DUAL_ENDSTOP_APPLY_STEP(X,v) @@ -403,7 +403,7 @@ xyze_int8_t Stepper::count_direction{0}; #define X_APPLY_STEP(v,Q) X_STEP_WRITE(v) #endif -#if HAS_DUAL_Y_STEPPERS +#if HAS_SYNCED_Y_STEPPERS #define Y_APPLY_DIR(v,Q) do{ Y_DIR_WRITE(v); Y2_DIR_WRITE(INVERT_DIR(Y2_VS_Y, v)); }while(0) #if ENABLED(Y_DUAL_ENDSTOPS) #define Y_APPLY_STEP(v,Q) DUAL_ENDSTOP_APPLY_STEP(Y,v) @@ -2892,7 +2892,7 @@ void Stepper::init() { TERN_(HAS_X2_DIR, X2_DIR_INIT()); #if HAS_Y_DIR Y_DIR_INIT(); - #if BOTH(HAS_DUAL_Y_STEPPERS, HAS_Y2_DIR) + #if BOTH(HAS_Y2_STEPPER, HAS_Y2_DIR) Y2_DIR_INIT(); #endif #endif @@ -2955,7 +2955,7 @@ void Stepper::init() { #endif Y_ENABLE_INIT(); if (Y_ENABLE_INIT_STATE) Y_ENABLE_WRITE(Y_ENABLE_INIT_STATE); - #if BOTH(HAS_DUAL_Y_STEPPERS, HAS_Y2_ENABLE) + #if BOTH(HAS_Y2_STEPPER, HAS_Y2_ENABLE) Y2_ENABLE_INIT(); if (Y_ENABLE_INIT_STATE) Y2_ENABLE_WRITE(Y_ENABLE_INIT_STATE); #endif @@ -3084,7 +3084,7 @@ void Stepper::init() { #endif #if HAS_Y_STEP - #if HAS_DUAL_Y_STEPPERS + #if HAS_Y2_STEPPER Y2_STEP_INIT(); Y2_STEP_WRITE(!STEP_STATE_Y); #endif diff --git a/Marlin/src/pins/pins_postprocess.h b/Marlin/src/pins/pins_postprocess.h index b0fe6bcb6bc0..e5467833e56b 100644 --- a/Marlin/src/pins/pins_postprocess.h +++ b/Marlin/src/pins/pins_postprocess.h @@ -794,14 +794,14 @@ #endif // Y2 auto-assignment will use up an E stepper, but not if it's chained -#if HAS_DUAL_Y_STEPPERS && !defined(Y2_STEP_PIN) && !PIN_EXISTS(Y2_CS_PIN) +#if HAS_Y2_STEPPER && !defined(Y2_STEP_PIN) && !PIN_EXISTS(Y2_CS_PIN) #define Z2_E_INDEX INCREMENT(Y2_E_INDEX) #else #define Z2_E_INDEX Y2_E_INDEX #endif // The Y2 axis, if any, should be the next open extruder port -#if HAS_DUAL_Y_STEPPERS +#if HAS_Y2_STEPPER #ifndef Y2_STEP_PIN #define Y2_STEP_PIN _EPIN(Y2_E_INDEX, STEP) #define Y2_DIR_PIN _EPIN(Y2_E_INDEX, DIR) diff --git a/Marlin/src/pins/sensitive_pins.h b/Marlin/src/pins/sensitive_pins.h index b7b5195a89b0..e655663a73d4 100644 --- a/Marlin/src/pins/sensitive_pins.h +++ b/Marlin/src/pins/sensitive_pins.h @@ -785,7 +785,7 @@ #define _X2_PINS #endif -#if HAS_DUAL_Y_STEPPERS +#if HAS_Y2_STEPPER #if PIN_EXISTS(Y2_CS) && AXIS_HAS_SPI(Y2) #define _Y2_CS Y2_CS_PIN, #else From a6404aca45ff1e3f09ad7a0702ae95689fd81338 Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Tue, 9 May 2023 22:52:59 +0200 Subject: [PATCH 149/427] =?UTF-8?q?=F0=9F=94=A7=20Move=20SOFT=5FPWM=5FSCAL?= =?UTF-8?q?E=20fallback=20to=20cpp=20(#25800)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/module/temperature.cpp | 4 ++++ Marlin/src/module/temperature.h | 4 ---- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index b4b1ba6372fd..4001ae63bfa7 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -3479,6 +3479,10 @@ void Temperature::isr() { static int8_t temp_count = -1; static ADCSensorState adc_sensor_state = StartupDelay; + + #ifndef SOFT_PWM_SCALE + #define SOFT_PWM_SCALE 0 + #endif static uint8_t pwm_count = _BV(SOFT_PWM_SCALE); // Avoid multiple loads of pwm_count diff --git a/Marlin/src/module/temperature.h b/Marlin/src/module/temperature.h index 2fdd1f02c8dd..27aef11c7eea 100644 --- a/Marlin/src/module/temperature.h +++ b/Marlin/src/module/temperature.h @@ -41,10 +41,6 @@ #include "../feature/fancheck.h" #endif -#ifndef SOFT_PWM_SCALE - #define SOFT_PWM_SCALE 0 -#endif - #define HOTEND_INDEX TERN(HAS_MULTI_HOTEND, e, 0) #define E_NAME TERN_(HAS_MULTI_HOTEND, e) From 21e3e535a6868a84c9e591f6c35e952cc7f9d80f Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Wed, 10 May 2023 00:20:07 +0000 Subject: [PATCH 150/427] [cron] Bump distribution date (2023-05-10) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index ed2f818ecb60..759b34564772 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-09" +//#define STRING_DISTRIBUTION_DATE "2023-05-10" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 47faccbc259d..6e5066321508 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-09" + #define STRING_DISTRIBUTION_DATE "2023-05-10" #endif /** From 53b79f5f70b04b6e7bcc73dea3f37881acbe5f64 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 10 May 2023 04:02:44 -0500 Subject: [PATCH 151/427] =?UTF-8?q?=F0=9F=A9=B9=20No=20const=20on=20return?= =?UTF-8?q?=20type?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/types.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index 173945a458ee..68bf8c1a8750 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -962,11 +962,11 @@ class AxisBits { #endif #undef MSET - FI const bool toggle(const AxisEnum n) { return TBI(bits, n); } + FI bool toggle(const AxisEnum n) { TBI(bits, n); return TEST(bits, n); } // Accessor via an AxisEnum (or any integer) [index] - FI const bool operator[](const int n) const { return TEST(bits, n); } - FI const bool operator[](const AxisEnum n) const { return TEST(bits, n); } + FI bool operator[](const int n) const { return TEST(bits, n); } + FI bool operator[](const AxisEnum n) const { return TEST(bits, n); } FI AxisBits& operator|=(const el &p) { bits |= el(p); return *this; } FI AxisBits& operator&=(const el &p) { bits &= el(p); return *this; } From 9cf1a8891f79f50627efa67aae85b7e19918eef2 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Wed, 10 May 2023 21:19:05 +1200 Subject: [PATCH 152/427] =?UTF-8?q?=F0=9F=A9=B9=20Optional=20X=20followup?= =?UTF-8?q?=20(#25804)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/types.h | 8 ++++++-- Marlin/src/module/stepper.h | 4 +++- Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h | 11 ----------- 3 files changed, 9 insertions(+), 14 deletions(-) diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index 68bf8c1a8750..20f589d60a0c 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -824,7 +824,9 @@ class AxisBits { el bits; // x, y, z ... e0, e1, e2 ... hx, hy, hz struct { - bool NUM_AXIS_LIST(x:1, y:1, z:1, i:1, j:1, k:1, u:1, v:1, w:1); + #if NUM_AXES + bool NUM_AXIS_LIST(x:1, y:1, z:1, i:1, j:1, k:1, u:1, v:1, w:1); + #endif #define _EN_ITEM(N) bool e##N:1; REPEAT(EXTRUDERS,_EN_ITEM) #undef _EN_ITEM @@ -834,7 +836,9 @@ class AxisBits { }; // X, Y, Z ... E0, E1, E2 ... HX, HY, HZ struct { - bool NUM_AXIS_LIST(X:1, Y:1, Z:1, I:1, J:1, K:1, U:1, V:1, W:1); + #if NUM_AXES + bool NUM_AXIS_LIST(X:1, Y:1, Z:1, I:1, J:1, K:1, U:1, V:1, W:1); + #endif #define _EN_ITEM(N) bool E##N:1; REPEAT(EXTRUDERS,_EN_ITEM) #undef _EN_ITEM diff --git a/Marlin/src/module/stepper.h b/Marlin/src/module/stepper.h index b6996aa932d8..134bee7ac657 100644 --- a/Marlin/src/module/stepper.h +++ b/Marlin/src/module/stepper.h @@ -73,7 +73,9 @@ typedef struct { union { ena_mask_t bits; struct { - bool NUM_AXIS_LIST(X:1, Y:1, Z:1, I:1, J:1, K:1, U:1, V:1, W:1); + #if NUM_AXES + bool NUM_AXIS_LIST(X:1, Y:1, Z:1, I:1, J:1, K:1, U:1, V:1, W:1); + #endif #if E_STATES bool LIST_N(E_STATES, E0:1, E1:1, E2:1, E3:1, E4:1, E5:1, E6:1, E7:1); #endif diff --git a/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h b/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h index c3110462d1a4..21f27e452d8c 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h @@ -80,17 +80,6 @@ // // Steppers // -#define X_ENABLE_PIN -1 -#define X_STEP_PIN PA10 // Unused. Assigned so Marlin will compile -#define X_DIR_PIN -1 - -#define Y_ENABLE_PIN -1 -#define Y_STEP_PIN PA10 // Unused. Assigned so Marlin will compile -#define Y_DIR_PIN -1 - -#define Z_ENABLE_PIN -1 -#define Z_STEP_PIN PA10 // Unused. Assigned so Marlin will compile -#define Z_DIR_PIN -1 #define E0_ENABLE_PIN PD2 #define E0_STEP_PIN PD0 From 03bb28c277ce1c8e98c7b418ce607ecd58c58c4f Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 14 Jul 2022 02:21:50 -0500 Subject: [PATCH 153/427] =?UTF-8?q?=F0=9F=8E=A8=20Misc.=20temperature=20cl?= =?UTF-8?q?eanup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/controllerfan.cpp | 6 ++++- Marlin/src/feature/controllerfan.h | 3 +++ Marlin/src/gcode/control/M42.cpp | 26 ++------------------ Marlin/src/gcode/temp/M106_M107.cpp | 2 +- Marlin/src/module/temperature.cpp | 36 ++++++++++++++-------------- 5 files changed, 29 insertions(+), 44 deletions(-) diff --git a/Marlin/src/feature/controllerfan.cpp b/Marlin/src/feature/controllerfan.cpp index 4b3d9f550165..816ffb23b7ea 100644 --- a/Marlin/src/feature/controllerfan.cpp +++ b/Marlin/src/feature/controllerfan.cpp @@ -38,6 +38,10 @@ uint8_t ControllerFan::speed; const controllerFan_settings_t &ControllerFan::settings = controllerFan_defaults; #endif +#if ENABLED(FAN_SOFT_PWM) + uint8_t ControllerFan::soft_pwm_speed; +#endif + void ControllerFan::setup() { SET_OUTPUT(CONTROLLER_FAN_PIN); #ifdef CONTROLLER_FAN2_PIN @@ -98,7 +102,7 @@ void ControllerFan::update() { #endif #if ENABLED(FAN_SOFT_PWM) - thermalManager.soft_pwm_controller_speed = speed; + soft_pwm_speed = speed; #else if (PWM_PIN(CONTROLLER_FAN_PIN)) hal.set_pwm_duty(pin_t(CONTROLLER_FAN_PIN), speed); diff --git a/Marlin/src/feature/controllerfan.h b/Marlin/src/feature/controllerfan.h index 55eb2359b067..68502afa6667 100644 --- a/Marlin/src/feature/controllerfan.h +++ b/Marlin/src/feature/controllerfan.h @@ -60,6 +60,9 @@ class ControllerFan { #else static const controllerFan_settings_t &settings; #endif + #if ENABLED(FAN_SOFT_PWM) + static uint8_t soft_pwm_speed; + #endif static bool state() { return speed > 0; } static void init() { reset(); } static void reset() { TERN_(CONTROLLER_FAN_EDITABLE, settings = controllerFan_defaults); } diff --git a/Marlin/src/gcode/control/M42.cpp b/Marlin/src/gcode/control/M42.cpp index 55ece67de701..cf2c218e9259 100644 --- a/Marlin/src/gcode/control/M42.cpp +++ b/Marlin/src/gcode/control/M42.cpp @@ -87,30 +87,8 @@ void GcodeSuite::M42() { #if HAS_FAN switch (pin) { - #if HAS_FAN0 - case FAN0_PIN: thermalManager.fan_speed[0] = pin_status; return; - #endif - #if HAS_FAN1 - case FAN1_PIN: thermalManager.fan_speed[1] = pin_status; return; - #endif - #if HAS_FAN2 - case FAN2_PIN: thermalManager.fan_speed[2] = pin_status; return; - #endif - #if HAS_FAN3 - case FAN3_PIN: thermalManager.fan_speed[3] = pin_status; return; - #endif - #if HAS_FAN4 - case FAN4_PIN: thermalManager.fan_speed[4] = pin_status; return; - #endif - #if HAS_FAN5 - case FAN5_PIN: thermalManager.fan_speed[5] = pin_status; return; - #endif - #if HAS_FAN6 - case FAN6_PIN: thermalManager.fan_speed[6] = pin_status; return; - #endif - #if HAS_FAN7 - case FAN7_PIN: thermalManager.fan_speed[7] = pin_status; return; - #endif + #define _CASE(N) case FAN##N##_PIN: thermalManager.fan_speed[N] = pin_status; return; + REPEAT(FAN_COUNT, _CASE) } #endif diff --git a/Marlin/src/gcode/temp/M106_M107.cpp b/Marlin/src/gcode/temp/M106_M107.cpp index ae517c977b29..6ba64cd7ba3d 100644 --- a/Marlin/src/gcode/temp/M106_M107.cpp +++ b/Marlin/src/gcode/temp/M106_M107.cpp @@ -85,7 +85,7 @@ void GcodeSuite::M106() { if (!got_preset && parser.seenval('S')) speed = parser.value_ushort(); - TERN_(FOAMCUTTER_XYUV, speed *= 2.55); // Get command in % of max heat + TERN_(FOAMCUTTER_XYUV, speed *= 2.55f); // Get command in % of max heat // Set speed, with constraint thermalManager.set_fan_speed(pfan, speed); diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 4001ae63bfa7..a92d07018319 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -524,7 +524,7 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED); #if HAS_TEMP_CHAMBER chamber_info_t Temperature::temp_chamber; // = { 0 } #if HAS_HEATED_CHAMBER - millis_t next_cool_check_ms_2 = 0; + millis_t next_cool_check_ms = 0; celsius_float_t old_temp = 9999; raw_adc_t Temperature::mintemp_raw_CHAMBER = TEMP_SENSOR_CHAMBER_RAW_LO_TEMP, Temperature::maxtemp_raw_CHAMBER = TEMP_SENSOR_CHAMBER_RAW_HI_TEMP; @@ -546,7 +546,7 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED); raw_adc_t Temperature::mintemp_raw_COOLER = TEMP_SENSOR_COOLER_RAW_LO_TEMP, Temperature::maxtemp_raw_COOLER = TEMP_SENSOR_COOLER_RAW_HI_TEMP; #if WATCH_COOLER - cooler_watch_t Temperature::watch_cooler{0}; + cooler_watch_t Temperature::watch_cooler; // = { 0 } #endif millis_t Temperature::next_cooler_check_ms, Temperature::cooler_fan_flush_ms; #endif @@ -617,11 +617,11 @@ volatile bool Temperature::raw_temps_ready = false; #if MAX_CONSECUTIVE_LOW_TEMPERATURE_ERROR_ALLOWED > 1 #define MULTI_MAX_CONSECUTIVE_LOW_TEMP_ERR 1 - uint8_t Temperature::consecutive_low_temperature_error[HOTENDS] = { 0 }; + uint8_t Temperature::consecutive_low_temperature_error[HOTENDS]; // = { 0 } #endif #if PREHEAT_TIME_HOTEND_MS > 0 - millis_t Temperature::preheat_end_ms_hotend[HOTENDS] { 0 }; + millis_t Temperature::preheat_end_ms_hotend[HOTENDS]; // = { 0 }; #endif #if HAS_HEATED_BED && PREHEAT_TIME_BED_MS > 0 millis_t Temperature::preheat_end_ms_bed = 0; @@ -1781,15 +1781,15 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { if (!flag_chamber_excess_heat && temp_chamber.is_above_target((HIGH_EXCESS_HEAT_LIMIT) - 1)) { // Open vent after MIN_COOLING_SLOPE_TIME_CHAMBER_VENT seconds if the // temperature didn't drop at least MIN_COOLING_SLOPE_DEG_CHAMBER_VENT - if (next_cool_check_ms_2 == 0 || ELAPSED(ms, next_cool_check_ms_2)) { + if (next_cool_check_ms == 0 || ELAPSED(ms, next_cool_check_ms)) { if (temp_chamber.celsius - old_temp > MIN_COOLING_SLOPE_DEG_CHAMBER_VENT) flag_chamber_excess_heat = true; // the bed is heating the chamber too much - next_cool_check_ms_2 = ms + SEC_TO_MS(MIN_COOLING_SLOPE_TIME_CHAMBER_VENT); + next_cool_check_ms = ms + SEC_TO_MS(MIN_COOLING_SLOPE_TIME_CHAMBER_VENT); old_temp = temp_chamber.celsius; } } else { - next_cool_check_ms_2 = 0; + next_cool_check_ms = 0; old_temp = 9999; } if (flag_chamber_excess_heat && temp_chamber.is_above_target((LOW_EXCESS_HEAT_LIMIT) - 1)) @@ -2492,7 +2492,7 @@ void Temperature::updateTemperaturesFromRawValues() { /** // DEBUG PREHEATING TIME SERIAL_ECHOLNPGM("\nExtruder = ", e, " Preheat On/Off = ", is_preheating(e)); - const float test_is_preheating = (preheat_end_time[HOTEND_INDEX] - millis()) * 0.001f; + const float test_is_preheating = (preheat_end_ms_hotend[HOTEND_INDEX] - millis()) * 0.001f; if (test_is_preheating < 31) SERIAL_ECHOLNPGM("Extruder = ", e, " Preheat remaining time = ", test_is_preheating, "s", "\n"); //*/ @@ -3551,7 +3551,7 @@ void Temperature::isr() { #if ENABLED(FAN_SOFT_PWM) #if ENABLED(USE_CONTROLLER_FAN) - WRITE(CONTROLLER_FAN_PIN, soft_pwm_controller.add(pwm_mask, soft_pwm_controller_speed)); + WRITE(CONTROLLER_FAN_PIN, soft_pwm_controller.add(pwm_mask, controllerFan.soft_pwm_speed)); #endif #define _FAN_PWM(N) do{ \ @@ -4183,7 +4183,7 @@ void Temperature::isr() { bool wants_to_cool = false; celsius_float_t target_temp = -1.0, old_temp = 9999.0; - millis_t now, next_temp_ms = 0, next_cool_check_ms = 0; + millis_t now, next_temp_ms = 0, cool_check_ms = 0; wait_for_heatup = true; do { // Target temperature might be changed during the loop @@ -4241,9 +4241,9 @@ void Temperature::isr() { if (wants_to_cool) { // Break after MIN_COOLING_SLOPE_TIME seconds // if the temperature did not drop at least MIN_COOLING_SLOPE_DEG - if (!next_cool_check_ms || ELAPSED(now, next_cool_check_ms)) { + if (!cool_check_ms || ELAPSED(now, cool_check_ms)) { if (old_temp - temp < float(MIN_COOLING_SLOPE_DEG)) break; - next_cool_check_ms = now + SEC_TO_MS(MIN_COOLING_SLOPE_TIME); + cool_check_ms = now + SEC_TO_MS(MIN_COOLING_SLOPE_TIME); old_temp = temp; } } @@ -4320,7 +4320,7 @@ void Temperature::isr() { bool wants_to_cool = false; celsius_float_t target_temp = -1, old_temp = 9999; - millis_t now, next_temp_ms = 0, next_cool_check_ms = 0; + millis_t now, next_temp_ms = 0, cool_check_ms = 0; wait_for_heatup = true; do { // Target temperature might be changed during the loop @@ -4376,9 +4376,9 @@ void Temperature::isr() { if (wants_to_cool) { // Break after MIN_COOLING_SLOPE_TIME_BED seconds // if the temperature did not drop at least MIN_COOLING_SLOPE_DEG_BED - if (!next_cool_check_ms || ELAPSED(now, next_cool_check_ms)) { + if (!cool_check_ms || ELAPSED(now, cool_check_ms)) { if (old_temp - temp < float(MIN_COOLING_SLOPE_DEG_BED)) break; - next_cool_check_ms = now + SEC_TO_MS(MIN_COOLING_SLOPE_TIME_BED); + cool_check_ms = now + SEC_TO_MS(MIN_COOLING_SLOPE_TIME_BED); old_temp = temp; } } @@ -4515,7 +4515,7 @@ void Temperature::isr() { bool wants_to_cool = false; float target_temp = -1, old_temp = 9999; - millis_t now, next_temp_ms = 0, next_cool_check_ms = 0; + millis_t now, next_temp_ms = 0, cool_check_ms = 0; wait_for_heatup = true; do { // Target temperature might be changed during the loop @@ -4567,9 +4567,9 @@ void Temperature::isr() { if (wants_to_cool) { // Break after MIN_COOLING_SLOPE_TIME_CHAMBER seconds // if the temperature did not drop at least MIN_COOLING_SLOPE_DEG_CHAMBER - if (!next_cool_check_ms || ELAPSED(now, next_cool_check_ms)) { + if (!cool_check_ms || ELAPSED(now, cool_check_ms)) { if (old_temp - temp < float(MIN_COOLING_SLOPE_DEG_CHAMBER)) break; - next_cool_check_ms = now + SEC_TO_MS(MIN_COOLING_SLOPE_TIME_CHAMBER); + cool_check_ms = now + SEC_TO_MS(MIN_COOLING_SLOPE_TIME_CHAMBER); old_temp = temp; } } From 7707cbf338436d7e0331fc95bc82ead06ca50f90 Mon Sep 17 00:00:00 2001 From: Chris Bagwell Date: Wed, 10 May 2023 05:59:28 -0500 Subject: [PATCH 154/427] =?UTF-8?q?=F0=9F=94=A7=20Fix=20SHAPING=5FMIN=5FFR?= =?UTF-8?q?EQ=20check=20(#25358)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/SanityCheck.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 6e3b4e177d47..9c54208c538f 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -4008,13 +4008,13 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." #endif #endif + #ifdef SHAPING_MIN_FREQ + static_assert((SHAPING_MIN_FREQ) > 0, "SHAPING_MIN_FREQ must be > 0."); + #else + TERN_(INPUT_SHAPING_X, static_assert((SHAPING_FREQ_X) > 0, "SHAPING_FREQ_X must be > 0 or SHAPING_MIN_FREQ must be set.")); + TERN_(INPUT_SHAPING_Y, static_assert((SHAPING_FREQ_Y) > 0, "SHAPING_FREQ_Y must be > 0 or SHAPING_MIN_FREQ must be set.")); + #endif #ifdef __AVR__ - #ifdef SHAPING_MIN_FREQ - static_assert((SHAPING_MIN_FREQ) > 0, "SHAPING_MIN_FREQ must be > 0."); - #else - TERN_(INPUT_SHAPING_X, static_assert((SHAPING_FREQ_X) > 0, "SHAPING_FREQ_X must be > 0 or SHAPING_MIN_FREQ must be set.")); - TERN_(INPUT_SHAPING_Y, static_assert((SHAPING_FREQ_Y) > 0, "SHAPING_FREQ_Y must be > 0 or SHAPING_MIN_FREQ must be set.")); - #endif #if ENABLED(INPUT_SHAPING_X) #if F_CPU > 16000000 static_assert((SHAPING_FREQ_X) == 0 || (SHAPING_FREQ_X) * 2 * 0x10000 >= (STEPPER_TIMER_RATE), "SHAPING_FREQ_X is below the minimum (20) for AVR 20MHz."); From a07b7161e9acac0bb334e31f06b91725ac1106c1 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 11 May 2023 00:20:08 +0000 Subject: [PATCH 155/427] [cron] Bump distribution date (2023-05-11) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 759b34564772..5c696db45c39 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-10" +//#define STRING_DISTRIBUTION_DATE "2023-05-11" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 6e5066321508..8ab8e76ed761 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-10" + #define STRING_DISTRIBUTION_DATE "2023-05-11" #endif /** From 8fb9b5804e1ff91c4f5d94493db8924a063b0659 Mon Sep 17 00:00:00 2001 From: Muhammad Arslan <55940958+arslan437@users.noreply.github.com> Date: Thu, 11 May 2023 18:18:24 +0500 Subject: [PATCH 156/427] =?UTF-8?q?=E2=9C=A8=20Blackpill-based=20custom=20?= =?UTF-8?q?board=20(#25152)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: striker --- Marlin/src/core/boards.h | 1 + Marlin/src/pins/pins.h | 2 + Marlin/src/pins/stm32f1/pins_CREALITY_V4.h | 8 - .../src/pins/stm32f4/pins_BLACKPILL_CUSTOM.h | 140 ++++++++++++++++++ Marlin/src/pins/stm32f4/pins_TRONXY_V10.h | 7 - ini/stm32f4.ini | 10 ++ 6 files changed, 153 insertions(+), 15 deletions(-) create mode 100644 Marlin/src/pins/stm32f4/pins_BLACKPILL_CUSTOM.h diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index 691b03ed0acc..3820ef8a07cf 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -451,6 +451,7 @@ #define BOARD_MKS_SKIPR_V1 5244 // MKS SKIPR v1.0 all-in-one board (STM32F407VE) #define BOARD_TRONXY_V10 5245 // TRONXY V10 (STM32F446ZE) #define BOARD_CREALITY_F401RE 5246 // Creality CR4NS200141C13 (STM32F401RE) as found in the Ender-5 S1 +#define BOARD_BLACKPILL_CUSTOM 5247 // Custom board based on STM32F401CDU6. // // ARM Cortex-M7 diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index 5bf3b0881008..369506a74873 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -792,6 +792,8 @@ #include "stm32f4/pins_TRONXY_V10.h" // STM32F4 env:STM32F446_tronxy #elif MB(CREALITY_F401RE) #include "stm32f4/pins_CREALITY_F401.h" // STM32F4 env:STM32F401RE_creality +#elif MB(BLACKPILL_CUSTOM) + #include "stm32f4/pins_BLACKPILL_CUSTOM.h" // STM32F4 env:STM32F401CD_blackpill_stlink // // ARM Cortex M7 diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h index 6cb4d48d58c1..3d0a1885af75 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h @@ -299,11 +299,3 @@ #define UART4_RX_PIN PC11 // default uses sdcard SDIO_D3 #define UART5_TX_PIN PC12 // default uses sdcard SDIO_CK #define UART5_RX_PIN PD2 // default uses sdcard SDIO_CMD - -// SDIO pins -#define SDIO_D0_PIN PC8 -#define SDIO_D1_PIN PC9 -#define SDIO_D2_PIN PC10 -#define SDIO_D3_PIN PC11 -#define SDIO_CK_PIN PC12 -#define SDIO_CMD_PIN PD2 diff --git a/Marlin/src/pins/stm32f4/pins_BLACKPILL_CUSTOM.h b/Marlin/src/pins/stm32f4/pins_BLACKPILL_CUSTOM.h new file mode 100644 index 000000000000..9049a553fb49 --- /dev/null +++ b/Marlin/src/pins/stm32f4/pins_BLACKPILL_CUSTOM.h @@ -0,0 +1,140 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "env_validate.h" + +#ifndef BOARD_INFO_NAME + #define BOARD_INFO_NAME "Custom Blackpill" +#endif + +#ifndef DEFAULT_MACHINE_NAME + #define DEFAULT_MACHINE_NAME "SLA Printer" +#endif + +#define DISABLE_DEBUG false // DISABLE_(DEBUG|JTAG) is not supported for STM32F4. +#define ALLOW_STM32F4 +#define BOARD_NO_NATIVE_USB + +// +// EEPROM +// +#if NO_EEPROM_SELECTED + #define IIC_BL24CXX_EEPROM // EEPROM on I2C-0 + //#define SDCARD_EEPROM_EMULATION +#endif + +// +// Servos +// +#if !defined(SERVO0_PIN) && !defined(HAS_PIN_27_BOARD) + #define SERVO0_PIN PC13 // BLTouch OUT +#endif + +#define LED_PIN PC13 + +// +// Limit Switches +// +#define Z_STOP_PIN PA15 +#define X_STOP_PIN PA11 +#define Y_STOP_PIN PA12 + +// +// Filament Runout Sensor +// +#define FIL_RUNOUT_PIN PB15 // "Pulled-high" + +// +// Steppers +// +#define X_STEP_PIN PB0 +#define X_DIR_PIN PB1 +#define X_ENABLE_PIN PB2 // Shared + +#define Y_STEP_PIN PB3 +#define Y_DIR_PIN PB4 +#define Y_ENABLE_PIN X_ENABLE_PIN + +#define Z_STEP_PIN PB8 +#define Z_DIR_PIN PB5 +#define Z_ENABLE_PIN X_ENABLE_PIN + +#define E0_STEP_PIN PB9 +#define E0_DIR_PIN PB10 +#define E0_ENABLE_PIN X_ENABLE_PIN + +// +// Temperature Sensors +// +#define TEMP_0_PIN PA0 // TH1 +#define TEMP_BED_PIN PA1 // TB1 + +// +// Heaters / Fans +// +#define HEATER_BED_PIN PA2 // HOT BED +#define FAN1_PIN PA8 // extruder fan +#define HEATER_0_PIN PA3 // HEATER1 + +// +// Encoder pins +// +#if ENABLED(OLED_PANEL_TINYBOY2) +#define BTN_EN1 PB12 +#define BTN_EN2 PB13 +#define BTN_ENC PB14 +#define BEEPER_PIN PC15 +#endif + +// +// SD Card +// +#define ONBOARD_SPI_DEVICE 1 +// #define ONBOARD_SD_CS_PIN PA4 // SDSS + +#define SD_DETECT_PIN -1 +#define SDCARD_CONNECTION ONBOARD +//#define SDIO_SUPPORT +#define NO_SD_HOST_DRIVE // This board's SD is only seen by the printer + +#if SD_CONNECTION_IS(ONBOARD) + #define SDSS PA4 + #define SD_SCK_PIN PA5 + #define SD_MISO_PIN PA6 + #define SD_MOSI_PIN PA7 +#endif + +// Pins for documentation and sanity checks only. +// Changing these will not change the pin they are on. + +// Hardware UART pins +#define UART1_TX_PIN PA9 // default uses CH340 RX +#define UART1_RX_PIN PA10 // default uses CH340 TX +#define UART2_TX_PIN PA2 // default uses HEATER_BED_PIN +#define UART2_RX_PIN PA3 // not connected +#define UART3_TX_PIN PB10 // default uses LCD connector +#define UART3_RX_PIN PB11 // default uses LCD connector +#define UART4_TX_PIN PC10 // default uses sdcard SDIO_D2 +#define UART4_RX_PIN PC11 // default uses sdcard SDIO_D3 +#define UART5_TX_PIN PC12 // default uses sdcard SDIO_CK +#define UART5_RX_PIN PD2 // default uses sdcard SDIO_CMD diff --git a/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h b/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h index 1677b45697bc..d5752e43dccf 100644 --- a/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h +++ b/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h @@ -255,10 +255,3 @@ #define SD_DETECT_PIN -1 // PF0, but not connected #define SDIO_CLOCK 4500000 #define SDIO_READ_RETRIES 16 - -#define SDIO_D0_PIN PC8 -#define SDIO_D1_PIN PC9 -#define SDIO_D2_PIN PC10 -#define SDIO_D3_PIN PC11 -#define SDIO_CK_PIN PC12 -#define SDIO_CMD_PIN PD2 diff --git a/ini/stm32f4.ini b/ini/stm32f4.ini index 29c3f5b9597a..7dfffe47646b 100644 --- a/ini/stm32f4.ini +++ b/ini/stm32f4.ini @@ -772,3 +772,13 @@ build_flags = ${stm32_variant.build_flags} -DSTM32F4xx build_unflags = ${stm32_variant.build_unflags} -fno-rtti -DUSBCON -DUSBD_USE_CDC + +# +# Blackpill +# +[env:STM32F401CD_blackpill_stlink] +platform = ${common_stm32.platform} +extends = common_stm32 +board = blackpill_f401cc +upload_protocol = stlink +monitor_speed = 115200 From 01f5bd333055e919677d95e05bec1f5f067374a4 Mon Sep 17 00:00:00 2001 From: StevilKnevil Date: Fri, 12 May 2023 01:09:02 +0100 Subject: [PATCH 157/427] =?UTF-8?q?=F0=9F=9A=B8=20Improved=20MPCTEMP=20aut?= =?UTF-8?q?otune=20(#25503)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration.h | 56 ++-- Marlin/src/core/millis_t.h | 1 + Marlin/src/gcode/temp/M306.cpp | 14 +- Marlin/src/module/temperature.cpp | 430 +++++++++++++++++++----------- Marlin/src/module/temperature.h | 67 ++++- 5 files changed, 386 insertions(+), 182 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 8818b04a84f2..fee89898a375 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -650,14 +650,18 @@ // @section hotend temp -// Enable PIDTEMP for PID control or MPCTEMP for Predictive Model. -// temperature control. Disable both for bang-bang heating. -#define PIDTEMP // See the PID Tuning Guide at https://reprap.org/wiki/PID_Tuning -//#define MPCTEMP // ** EXPERIMENTAL ** +/** + * Temperature Control + * + * (NONE) : Bang-bang heating + * PIDTEMP : PID temperature control (~4.1K) + * MPCTEMP : Predictive Model temperature control. (~1.8K without auto-tune) + */ +#define PIDTEMP // See the PID Tuning Guide at https://reprap.org/wiki/PID_Tuning +//#define MPCTEMP // ** EXPERIMENTAL ** See https://marlinfw.org/docs/features/model_predictive_control.html -#define BANG_MAX 255 // Limits current to nozzle while in bang-bang mode; 255=full current -#define PID_MAX BANG_MAX // Limits current to nozzle while PID is active (see PID_FUNCTIONAL_RANGE below); 255=full current -#define PID_K1 0.95 // Smoothing factor within any PID loop +#define PID_MAX 255 // Limit hotend current while PID is active (see PID_FUNCTIONAL_RANGE below); 255=full current +#define PID_K1 0.95 // Smoothing factor within any PID loop #if ENABLED(PIDTEMP) //#define PID_DEBUG // Print PID debug data to the serial port. Use 'M303 D' to toggle activation. @@ -675,6 +679,8 @@ #define DEFAULT_Ki 1.08 #define DEFAULT_Kd 114.00 #endif +#else + #define BANG_MAX 255 // Limit hotend current while in bang-bang mode; 255=full current #endif /** @@ -686,11 +692,11 @@ * @section mpctemp */ #if ENABLED(MPCTEMP) - //#define MPC_AUTOTUNE // Include a method to do MPC auto-tuning (~5664-5882 bytes of flash) - //#define MPC_EDIT_MENU // Add MPC editing to the "Advanced Settings" menu. (~1300 bytes of flash) + //#define MPC_AUTOTUNE // Include a method to do MPC auto-tuning (~6.3K bytes of flash) + //#define MPC_EDIT_MENU // Add MPC editing to the "Advanced Settings" menu. (~1.3K bytes of flash) //#define MPC_AUTOTUNE_MENU // Add MPC auto-tuning to the "Advanced Settings" menu. (~350 bytes of flash) - #define MPC_MAX BANG_MAX // (0..255) Current to nozzle while MPC is active. + #define MPC_MAX 255 // (0..255) Current to nozzle while MPC is active. #define MPC_HEATER_POWER { 40.0f } // (W) Heat cartridge powers. #define MPC_INCLUDE_FAN // Model the fan speed? @@ -725,32 +731,30 @@ //====================== PID > Bed Temperature Control ====================== //=========================================================================== +// @section bed temp + +/** + * Max Bed Power + * Applies to all forms of bed control (PID, bang-bang, and bang-bang with hysteresis). + * When set to any value below 255, enables a form of PWM to the bed that acts like a divider + * so don't use it unless you are OK with PWM on your bed. (See the comment on enabling PIDTEMPBED) + */ +#define MAX_BED_POWER 255 // limits duty cycle to bed; 255=full current + /** * PID Bed Heating * - * If this option is enabled set PID constants below. - * If this option is disabled, bang-bang will be used and BED_LIMIT_SWITCHING will enable hysteresis. - * * The PID frequency will be the same as the extruder PWM. * If PID_dT is the default, and correct for the hardware/configuration, that means 7.689Hz, * which is fine for driving a square wave into a resistive load and does not significantly * impact FET heating. This also works fine on a Fotek SSR-10DA Solid State Relay into a 250W * heater. If your configuration is significantly different than this and you don't understand * the issues involved, don't use bed PID until someone else verifies that your hardware works. - * @section bed temp + * + * With this option disabled, bang-bang will be used. BED_LIMIT_SWITCHING enables hysteresis. */ //#define PIDTEMPBED -//#define BED_LIMIT_SWITCHING - -/** - * Max Bed Power - * Applies to all forms of bed control (PID, bang-bang, and bang-bang with hysteresis). - * When set to any value below 255, enables a form of PWM to the bed that acts like a divider - * so don't use it unless you are OK with PWM on your bed. (See the comment on enabling PIDTEMPBED) - */ -#define MAX_BED_POWER 255 // limits duty cycle to bed; 255=full current - #if ENABLED(PIDTEMPBED) //#define MIN_BED_POWER 0 //#define PID_BED_DEBUG // Print Bed PID debug data to the serial port. @@ -762,7 +766,9 @@ #define DEFAULT_bedKd 305.4 // FIND YOUR OWN: "M303 E-1 C8 S90" to run autotune on the bed at 90 degreesC for 8 cycles. -#endif // PIDTEMPBED +#else + //#define BED_LIMIT_SWITCHING // Keep the bed temperature within BED_HYSTERESIS of the target +#endif //=========================================================================== //==================== PID > Chamber Temperature Control ==================== diff --git a/Marlin/src/core/millis_t.h b/Marlin/src/core/millis_t.h index 95bc40e1ecbb..e7032a2e5579 100644 --- a/Marlin/src/core/millis_t.h +++ b/Marlin/src/core/millis_t.h @@ -28,6 +28,7 @@ typedef uint32_t millis_t; #define SEC_TO_MS(N) millis_t((N)*1000UL) #define MIN_TO_MS(N) SEC_TO_MS((N)*60UL) #define MS_TO_SEC(N) millis_t((N)/1000UL) +#define MS_TO_SEC_PRECISE(N) (float(N)/1000.0f) #define PENDING(NOW,SOON) ((int32_t)(NOW-(SOON))<0) #define ELAPSED(NOW,SOON) (!PENDING(NOW,SOON)) diff --git a/Marlin/src/gcode/temp/M306.cpp b/Marlin/src/gcode/temp/M306.cpp index d0c005ea4eb1..7d2d94952ff0 100644 --- a/Marlin/src/gcode/temp/M306.cpp +++ b/Marlin/src/gcode/temp/M306.cpp @@ -42,7 +42,10 @@ * R Sensor responsiveness (= transfer coefficient / heat capcity). * * With MPC_AUTOTUNE: - * T Autotune the specified or active extruder. + * T Autotune the extruder specified with 'E' or the active extruder. + * S0 : Autotuning method AUTO (default) + * S1 : Autotuning method DIFFERENTIAL + * S2 : Autotuning method ASYMPTOTIC */ void GcodeSuite::M306() { @@ -54,8 +57,15 @@ void GcodeSuite::M306() { #if ENABLED(MPC_AUTOTUNE) if (parser.seen_test('T')) { + Temperature::MPCTuningType tuning_type; + const uint8_t type = parser.byteval('S', 0); + switch (type) { + case 1: tuning_type = Temperature::MPCTuningType::FORCE_DIFFERENTIAL; break; + case 2: tuning_type = Temperature::MPCTuningType::FORCE_ASYMPTOTIC; break; + default: tuning_type = Temperature::MPCTuningType::AUTO; break; + } LCD_MESSAGE(MSG_MPC_AUTOTUNE); - thermalManager.MPC_autotune(e); + thermalManager.MPC_autotune(e, tuning_type); ui.reset_status(); return; } diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index a92d07018319..8bcaf5d83fc5 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -722,16 +722,14 @@ volatile bool Temperature::raw_temps_ready = false; TERN_(DWIN_PID_TUNE, DWIN_PidTuning(isbed ? PIDTEMPBED_START : PIDTEMP_START)); if (target > GHV(CHAMBER_MAX_TARGET, BED_MAX_TARGET, temp_range[heater_id].maxtemp - (HOTEND_OVERSHOOT))) { - SERIAL_ECHOPGM(STR_PID_AUTOTUNE); - SERIAL_ECHOLNPGM(STR_PID_TEMP_TOO_HIGH); + SERIAL_ECHOPGM(STR_PID_AUTOTUNE); SERIAL_ECHOLNPGM(STR_PID_TEMP_TOO_HIGH); TERN_(EXTENSIBLE_UI, ExtUI::onPidTuning(ExtUI::result_t::PID_TEMP_TOO_HIGH)); TERN_(DWIN_PID_TUNE, DWIN_PidTuning(PID_TEMP_TOO_HIGH)); TERN_(HOST_PROMPT_SUPPORT, hostui.notify(GET_TEXT_F(MSG_PID_TEMP_TOO_HIGH))); return; } - SERIAL_ECHOPGM(STR_PID_AUTOTUNE); - SERIAL_ECHOLNPGM(STR_PID_AUTOTUNE_START); + SERIAL_ECHOPGM(STR_PID_AUTOTUNE); SERIAL_ECHOLNPGM(STR_PID_AUTOTUNE_START); disable_all_heaters(); TERN_(AUTO_POWER_CONTROL, powerManager.power_on()); @@ -816,8 +814,7 @@ volatile bool Temperature::raw_temps_ready = false; #define MAX_OVERSHOOT_PID_AUTOTUNE 30 #endif if (current_temp > target + MAX_OVERSHOOT_PID_AUTOTUNE) { - SERIAL_ECHOPGM(STR_PID_AUTOTUNE); - SERIAL_ECHOLNPGM(STR_PID_TEMP_TOO_HIGH); + SERIAL_ECHOPGM(STR_PID_AUTOTUNE); SERIAL_ECHOLNPGM(STR_PID_TEMP_TOO_HIGH); TERN_(EXTENSIBLE_UI, ExtUI::onPidTuning(ExtUI::result_t::PID_TEMP_TOO_HIGH)); TERN_(DWIN_PID_TUNE, DWIN_PidTuning(PID_TEMP_TOO_HIGH)); TERN_(HOST_PROMPT_SUPPORT, hostui.notify(GET_TEXT_F(MSG_PID_TEMP_TOO_HIGH))); @@ -859,14 +856,12 @@ volatile bool Temperature::raw_temps_ready = false; TERN_(DWIN_PID_TUNE, DWIN_PidTuning(PID_TUNING_TIMEOUT)); TERN_(EXTENSIBLE_UI, ExtUI::onPidTuning(ExtUI::result_t::PID_TUNING_TIMEOUT)); TERN_(HOST_PROMPT_SUPPORT, hostui.notify(GET_TEXT_F(MSG_PID_TIMEOUT))); - SERIAL_ECHOPGM(STR_PID_AUTOTUNE); - SERIAL_ECHOLNPGM(STR_PID_TIMEOUT); + SERIAL_ECHOPGM(STR_PID_AUTOTUNE); SERIAL_ECHOLNPGM(STR_PID_TIMEOUT); break; } if (cycles > ncycles && cycles > 2) { - SERIAL_ECHOPGM(STR_PID_AUTOTUNE); - SERIAL_ECHOLNPGM(STR_PID_AUTOTUNE_FINISHED); + SERIAL_ECHOPGM(STR_PID_AUTOTUNE); SERIAL_ECHOLNPGM(STR_PID_AUTOTUNE_FINISHED); TERN_(HOST_PROMPT_SUPPORT, hostui.notify(GET_TEXT_F(MSG_PID_AUTOTUNE_DONE))); #if EITHER(PIDTEMPBED, PIDTEMPCHAMBER) @@ -944,166 +939,175 @@ volatile bool Temperature::raw_temps_ready = false; #define SINGLEFAN 1 #endif - void Temperature::MPC_autotune(const uint8_t e) { - auto housekeeping = [] (millis_t &ms, const uint8_t e, celsius_float_t ¤t_temp, millis_t &next_report_ms) { - ms = millis(); + #define DEBUG_MPC_AUTOTUNE 1 - if (updateTemperaturesIfReady()) { // temp sample ready - current_temp = degHotend(e); - TERN_(HAS_FAN_LOGIC, manage_extruder_fans(ms)); - } + millis_t Temperature::MPC_autotuner::curr_time_ms, Temperature::MPC_autotuner::next_report_ms; - if (ELAPSED(ms, next_report_ms)) { - next_report_ms += 1000UL; + celsius_float_t Temperature::MPC_autotuner::temp_samples[16]; + uint8_t Temperature::MPC_autotuner::sample_count; + uint16_t Temperature::MPC_autotuner::sample_distance; - print_heater_states(e); - SERIAL_EOL(); - } + // Parameters from differential analysis + celsius_float_t Temperature::MPC_autotuner::temp_fastest; - hal.idletask(); - TERN(DWIN_CREALITY_LCD, DWIN_Update(), ui.update()); - - if (!wait_for_heatup) { - SERIAL_ECHOLNPGM(STR_MPC_AUTOTUNE_INTERRUPTED); - TERN_(DWIN_LCD_PROUI, DWIN_MPCTuning(MPC_INTERRUPTED)); - return true; - } - - return false; - }; - - struct OnExit { - uint8_t e; - OnExit(const uint8_t _e) { this->e = _e; } - ~OnExit() { - wait_for_heatup = false; - - ui.reset_status(); - - temp_hotend[e].target = 0.0f; - temp_hotend[e].soft_pwm_amount = 0; - #if HAS_FAN - set_fan_speed(TERN(SINGLEFAN, 0, e), 0); - planner.sync_fan_speeds(fan_speed); - #endif - - do_z_clearance(MPC_TUNING_END_Z, false); + #if HAS_FAN + float Temperature::MPC_autotuner::power_fan255; + #endif - TERN_(TEMP_TUNING_MAINTAIN_FAN, adaptive_fan_slowing = true); - } - } on_exit(e); + Temperature::MPC_autotuner::MPC_autotuner(const uint8_t extruderIdx) : e(extruderIdx) { + TERN_(TEMP_TUNING_MAINTAIN_FAN, adaptive_fan_slowing = false); + } - SERIAL_ECHOLNPGM(STR_MPC_AUTOTUNE_START, e); - MPCHeaterInfo &hotend = temp_hotend[e]; - MPC_t &mpc = hotend.mpc; + Temperature::MPC_autotuner::~MPC_autotuner() { + wait_for_heatup = false; - TERN_(TEMP_TUNING_MAINTAIN_FAN, adaptive_fan_slowing = false); + ui.reset_status(); - // Move to center of bed, just above bed height and cool with max fan - gcode.home_all_axes(true); - disable_all_heaters(); + temp_hotend[e].target = 0.0f; + temp_hotend[e].soft_pwm_amount = 0; #if HAS_FAN - zero_fan_speeds(); - set_fan_speed(TERN(SINGLEFAN, 0, e), 255); + set_fan_speed(TERN(SINGLEFAN, 0, e), 0); planner.sync_fan_speeds(fan_speed); #endif - do_blocking_move_to(xyz_pos_t(MPC_TUNING_POS)); - SERIAL_ECHOLNPGM(STR_MPC_COOLING_TO_AMBIENT); - #if ENABLED(DWIN_LCD_PROUI) - DWIN_MPCTuning(MPCTEMP_START); - LCD_ALERTMESSAGE(MSG_MPC_COOLING_TO_AMBIENT); - #else - LCD_MESSAGE(MSG_COOLING); - #endif + do_z_clearance(MPC_TUNING_END_Z, false); - millis_t ms = millis(), next_report_ms = ms, next_test_ms = ms + 10000UL; - celsius_float_t current_temp = degHotend(e), - ambient_temp = current_temp; + TERN_(TEMP_TUNING_MAINTAIN_FAN, adaptive_fan_slowing = true); + } + Temperature::MPC_autotuner::MeasurementState Temperature::MPC_autotuner::measure_ambient_temp() { + init_timers(); + const millis_t test_interval_ms = 10000UL; + millis_t next_test_ms = curr_time_ms + test_interval_ms; + ambient_temp = current_temp = degHotend(e); wait_for_heatup = true; + for (;;) { // Can be interrupted with M108 - if (housekeeping(ms, e, current_temp, next_report_ms)) return; + if (housekeeping() == CANCELLED) return CANCELLED; - if (ELAPSED(ms, next_test_ms)) { + if (ELAPSED(curr_time_ms, next_test_ms)) { if (current_temp >= ambient_temp) { ambient_temp = (ambient_temp + current_temp) / 2.0f; break; } ambient_temp = current_temp; - next_test_ms += 10000UL; + next_test_ms += test_interval_ms; } } wait_for_heatup = false; - #if HAS_FAN - set_fan_speed(TERN(SINGLEFAN, 0, e), 0); - planner.sync_fan_speeds(fan_speed); + #if ENABLED(DEBUG_MPC_AUTOTUNE) + SERIAL_ECHOLNPGM("MPC_autotuner::measure_ambient_temp() Completed"); + SERIAL_ECHOLNPGM("====="); + SERIAL_ECHOLNPGM("ambient_temp ", get_ambient_temp()); #endif - hotend.modeled_ambient_temp = ambient_temp; + return SUCCESS; + } + + Temperature::MPC_autotuner::MeasurementState Temperature::MPC_autotuner::measure_heatup() { + init_timers(); + constexpr millis_t test_interval_ms = 1000UL; + millis_t next_test_time_ms = curr_time_ms + test_interval_ms; + MPCHeaterInfo &hotend = temp_hotend[e]; + + current_temp = degHotend(e); + millis_t heat_start_time_ms = curr_time_ms; + sample_count = 0; + sample_distance = 1; + t1_time = 0; - SERIAL_ECHOLNPGM(STR_MPC_HEATING_PAST_200); - TERN(DWIN_LCD_PROUI, LCD_ALERTMESSAGE(MSG_MPC_HEATING_PAST_200), LCD_MESSAGE(MSG_HEATING)); hotend.target = 200.0f; // So M105 looks nice hotend.soft_pwm_amount = (MPC_MAX) >> 1; - const millis_t heat_start_time = next_test_ms = ms; - celsius_float_t temp_samples[16]; - uint8_t sample_count = 0; - uint16_t sample_distance = 1; - float t1_time = 0; + + // Initialise rate of change to to steady state at current time + temp_samples[0] = temp_samples[1] = temp_samples[2] = current_temp; + time_fastest = rate_fastest = 0; wait_for_heatup = true; for (;;) { // Can be interrupted with M108 - if (housekeeping(ms, e, current_temp, next_report_ms)) return; + if (housekeeping() == CANCELLED) return CANCELLED; + + if (ELAPSED(curr_time_ms, next_test_time_ms)) { + if (current_temp < 100.0f) { + // Initial regime (below 100deg): Measure rate of change of heating for differential tuning + + // Update the buffer of previous readings + temp_samples[0] = temp_samples[1]; + temp_samples[1] = temp_samples[2]; + temp_samples[2] = current_temp; + + // Measure the rate of change of temperature, https://en.wikipedia.org/wiki/Symmetric_derivative + const float h = MS_TO_SEC_PRECISE(test_interval_ms), + curr_rate = (temp_samples[2] - temp_samples[0]) / 2 * h; + if (curr_rate > rate_fastest) { + // Update fastest values + rate_fastest = curr_rate; + temp_fastest = temp_samples[1]; + time_fastest = get_elapsed_heating_time(); + } + + next_test_time_ms += test_interval_ms; + + } + else if (current_temp < 200.0f) { + // Second regime (after 100deg) measure 3 points to determine asymptotic temperature - if (ELAPSED(ms, next_test_ms)) { - // Record samples between 100C and 200C - if (current_temp >= 100.0f) { // If there are too many samples, space them more widely if (sample_count == COUNT(temp_samples)) { for (uint8_t i = 0; i < COUNT(temp_samples) / 2; i++) - temp_samples[i] = temp_samples[i*2]; + temp_samples[i] = temp_samples[i * 2]; sample_count /= 2; sample_distance *= 2; } - if (sample_count == 0) t1_time = float(ms - heat_start_time) / 1000.0f; + if (sample_count == 0) t1_time = MS_TO_SEC_PRECISE(curr_time_ms - heat_start_time_ms); temp_samples[sample_count++] = current_temp; - } - if (current_temp >= 200.0f) break; + if (current_temp >= 200.0f) break; + + next_test_time_ms += test_interval_ms * sample_distance; - next_test_ms += 1000UL * sample_distance; + } + else { + // Third regime (after 200deg) finished gathering data so finish + break; + } } } wait_for_heatup = false; hotend.soft_pwm_amount = 0; - // Calculate physical constants from three equally-spaced samples - sample_count = (sample_count + 1) / 2 * 2 - 1; - const float t1 = temp_samples[0], - t2 = temp_samples[(sample_count - 1) >> 1], - t3 = temp_samples[sample_count - 1]; - float asymp_temp = (t2 * t2 - t1 * t3) / (2 * t2 - t1 - t3), - block_responsiveness = -log((t2 - asymp_temp) / (t1 - asymp_temp)) / (sample_distance * (sample_count >> 1)); + elapsed_heating_time = MS_TO_SEC_PRECISE(curr_time_ms - heat_start_time_ms); - mpc.ambient_xfer_coeff_fan0 = mpc.heater_power * (MPC_MAX) / 255 / (asymp_temp - ambient_temp); - mpc.block_heat_capacity = mpc.ambient_xfer_coeff_fan0 / block_responsiveness; - mpc.sensor_responsiveness = block_responsiveness / (1.0f - (ambient_temp - asymp_temp) * exp(-block_responsiveness * t1_time) / (t1 - asymp_temp)); - TERN_(MPC_INCLUDE_FAN, mpc.fan255_adjustment = 0.0f); + // Ensure sample count is odd so that we have 3 equally spaced samples + if (sample_count == 0) return FAILED; + if (sample_count % 2 == 0) sample_count--; - hotend.modeled_block_temp = asymp_temp + (ambient_temp - asymp_temp) * exp(-block_responsiveness * (ms - heat_start_time) / 1000.0f); - hotend.modeled_sensor_temp = current_temp; + #if ENABLED(DEBUG_MPC_AUTOTUNE) + SERIAL_ECHOLNPGM("MPC_autotuner::measure_heatup() Completed"); + SERIAL_ECHOLNPGM("====="); + SERIAL_ECHOLNPGM("t1_time ", t1_time); + SERIAL_ECHOLNPGM("sample_count ", sample_count); + SERIAL_ECHOLNPGM("sample_distance ", sample_distance); + for (uint8_t i = 0; i < sample_count; i++) + SERIAL_ECHOLNPGM("sample ", i, " : ", temp_samples[i]); + SERIAL_ECHOLNPGM("t1 ", get_sample_1_temp(), " t2 ", get_sample_2_temp(), " t3 ", get_sample_3_temp()); + #endif + + return SUCCESS; + } + + Temperature::MPC_autotuner::MeasurementState Temperature::MPC_autotuner::measure_transfer() { + init_timers(); + const millis_t test_interval_ms = SEC_TO_MS(MPC_dT); + millis_t next_test_ms = curr_time_ms + test_interval_ms; + MPCHeaterInfo &hotend = temp_hotend[e]; + MPC_t &mpc = hotend.mpc; - // Allow the system to stabilize under MPC, then get a better measure of ambient loss with and without fan - SERIAL_ECHOLNPGM(STR_MPC_MEASURING_AMBIENT, hotend.modeled_block_temp); - TERN(DWIN_LCD_PROUI, LCD_ALERTMESSAGE(MSG_MPC_MEASURING_AMBIENT), LCD_MESSAGE(MSG_MPC_MEASURING_AMBIENT)); - hotend.target = hotend.modeled_block_temp; - next_test_ms = ms + MPC_dT * 1000; constexpr millis_t settle_time = 20000UL, test_duration = 20000UL; - millis_t settle_end_ms = ms + settle_time, + millis_t settle_end_ms = curr_time_ms + settle_time, test_end_ms = settle_end_ms + test_duration; float total_energy_fan0 = 0.0f; #if HAS_FAN @@ -1114,67 +1118,193 @@ volatile bool Temperature::raw_temps_ready = false; wait_for_heatup = true; for (;;) { // Can be interrupted with M108 - if (housekeeping(ms, e, current_temp, next_report_ms)) return; + if (housekeeping() == CANCELLED) return CANCELLED; - if (ELAPSED(ms, next_test_ms)) { + if (ELAPSED(curr_time_ms, next_test_ms)) { hotend.soft_pwm_amount = (int)get_pid_output_hotend(e) >> 1; - if (ELAPSED(ms, settle_end_ms) && !ELAPSED(ms, test_end_ms) && TERN1(HAS_FAN, !fan0_done)) + if (ELAPSED(curr_time_ms, settle_end_ms) && !ELAPSED(curr_time_ms, test_end_ms) && TERN1(HAS_FAN, !fan0_done)) total_energy_fan0 += mpc.heater_power * hotend.soft_pwm_amount / 127 * MPC_dT + (last_temp - current_temp) * mpc.block_heat_capacity; #if HAS_FAN - else if (ELAPSED(ms, test_end_ms) && !fan0_done) { + else if (ELAPSED(curr_time_ms, test_end_ms) && !fan0_done) { set_fan_speed(TERN(SINGLEFAN, 0, e), 255); planner.sync_fan_speeds(fan_speed); - settle_end_ms = ms + settle_time; + settle_end_ms = curr_time_ms + settle_time; test_end_ms = settle_end_ms + test_duration; fan0_done = true; } - else if (ELAPSED(ms, settle_end_ms) && !ELAPSED(ms, test_end_ms)) + else if (ELAPSED(curr_time_ms, settle_end_ms) && !ELAPSED(curr_time_ms, test_end_ms)) total_energy_fan255 += mpc.heater_power * hotend.soft_pwm_amount / 127 * MPC_dT + (last_temp - current_temp) * mpc.block_heat_capacity; #endif - else if (ELAPSED(ms, test_end_ms)) break; + else if (ELAPSED(curr_time_ms, test_end_ms)) break; last_temp = current_temp; - next_test_ms += MPC_dT * 1000; + next_test_ms += test_interval_ms; } - if (!WITHIN(current_temp, t3 - 15.0f, hotend.target + 15.0f)) { + // Ensure we don't drift too far from the window between the last sampled temp and the target temperature + if (!WITHIN(current_temp, get_sample_3_temp() - 15.0f, hotend.target + 15.0f)) { SERIAL_ECHOLNPGM(STR_MPC_TEMPERATURE_ERROR); TERN_(DWIN_LCD_PROUI, DWIN_MPCTuning(MPC_TEMP_ERROR)); - break; + wait_for_heatup = false; + return FAILED; } } wait_for_heatup = false; - const float power_fan0 = total_energy_fan0 * 1000 / test_duration; - mpc.ambient_xfer_coeff_fan0 = power_fan0 / (hotend.target - ambient_temp); + power_fan0 = total_energy_fan0 / MS_TO_SEC_PRECISE(test_duration); + TERN_(HAS_FAN, power_fan255 = (total_energy_fan255 * 1000) / test_duration); + + #if ENABLED(DEBUG_MPC_AUTOTUNE) + SERIAL_ECHOLNPGM("MPC_autotuner::measure_transfer() Completed"); + SERIAL_ECHOLNPGM("====="); + SERIAL_ECHOLNPGM("power_fan0 ", power_fan0); + TERN_(HAS_FAN, SERIAL_ECHOLNPGM("power_fan255 ", power_fan255)); + #endif + + return SUCCESS; + } + + Temperature::MPC_autotuner::MeasurementState Temperature::MPC_autotuner::housekeeping() { + const millis_t report_interval_ms = 1000UL; + curr_time_ms = millis(); + + if (updateTemperaturesIfReady()) { // temp sample ready + current_temp = degHotend(e); + TERN_(HAS_FAN_LOGIC, manage_extruder_fans(curr_time_ms)); + } + + if (ELAPSED(curr_time_ms, next_report_ms)) { + next_report_ms += report_interval_ms; + print_heater_states(e); + SERIAL_EOL(); + } + + hal.idletask(); + TERN(DWIN_CREALITY_LCD, DWIN_Update(), ui.update()); + + if (!wait_for_heatup) { + SERIAL_ECHOLNPGM(STR_MPC_AUTOTUNE_INTERRUPTED); + TERN_(DWIN_LCD_PROUI, DWIN_MPCTuning(MPC_INTERRUPTED)); + return MeasurementState::CANCELLED; + } + + return MeasurementState::SUCCESS; + } + + void Temperature::MPC_autotune(const uint8_t e, MPCTuningType tuning_type=AUTO) { + SERIAL_ECHOLNPGM(STR_MPC_AUTOTUNE_START, e); + + MPC_autotuner tuner(e); + + MPCHeaterInfo &hotend = temp_hotend[e]; + MPC_t &mpc = hotend.mpc; + // Move to center of bed, just above bed height and cool with max fan + gcode.home_all_axes(true); + disable_all_heaters(); #if HAS_FAN - const float power_fan255 = total_energy_fan255 * 1000 / test_duration, - ambient_xfer_coeff_fan255 = power_fan255 / (hotend.target - ambient_temp); - mpc.applyFanAdjustment(ambient_xfer_coeff_fan255); + zero_fan_speeds(); + set_fan_speed(TERN(SINGLEFAN, 0, e), 255); + planner.sync_fan_speeds(fan_speed); #endif + do_blocking_move_to(xyz_pos_t(MPC_TUNING_POS)); - // Calculate a new and better asymptotic temperature and re-evaluate the other constants - asymp_temp = ambient_temp + mpc.heater_power * (MPC_MAX) / 255 / mpc.ambient_xfer_coeff_fan0; - block_responsiveness = -log((t2 - asymp_temp) / (t1 - asymp_temp)) / (sample_distance * (sample_count >> 1)); - mpc.block_heat_capacity = mpc.ambient_xfer_coeff_fan0 / block_responsiveness; - mpc.sensor_responsiveness = block_responsiveness / (1.0f - (ambient_temp - asymp_temp) * exp(-block_responsiveness * t1_time) / (t1 - asymp_temp)); + // Determine ambient temperature. + SERIAL_ECHOLNPGM(STR_MPC_COOLING_TO_AMBIENT); + #if ENABLED(DWIN_LCD_PROUI) + DWIN_MPCTuning(MPCTEMP_START); + LCD_ALERTMESSAGE(MSG_MPC_COOLING_TO_AMBIENT); + #else + LCD_MESSAGE(MSG_COOLING); + #endif - SERIAL_ECHOLNPGM(STR_MPC_AUTOTUNE_FINISHED); - TERN_(DWIN_LCD_PROUI, DWIN_MPCTuning(MPC_DONE)); + if (tuner.measure_ambient_temp() != MPC_autotuner::MeasurementState::SUCCESS) return; + hotend.modeled_ambient_temp = tuner.get_ambient_temp(); - #if 0 - SERIAL_ECHOLNPGM("t1_time ", t1_time); - SERIAL_ECHOLNPGM("sample_count ", sample_count); - SERIAL_ECHOLNPGM("sample_distance ", sample_distance); - for (uint8_t i = 0; i < sample_count; i++) - SERIAL_ECHOLNPGM("sample ", i, " : ", temp_samples[i]); - SERIAL_ECHOLNPGM("t1 ", t1, " t2 ", t2, " t3 ", t3); + #if HAS_FAN + set_fan_speed(TERN(SINGLEFAN, 0, e), 0); + planner.sync_fan_speeds(fan_speed); + #endif + + // Heat to 200 degrees + SERIAL_ECHOLNPGM(STR_MPC_HEATING_PAST_200); + TERN(DWIN_LCD_PROUI, LCD_ALERTMESSAGE(MSG_MPC_HEATING_PAST_200), LCD_MESSAGE(MSG_HEATING)); + + if (tuner.measure_heatup() != MPC_autotuner::MeasurementState::SUCCESS) return; + + // Calculate physical constants from three equally-spaced samples + const float t1 = tuner.get_sample_1_temp(), + t2 = tuner.get_sample_2_temp(), + t3 = tuner.get_sample_3_temp(); + float asymp_temp = (t2 * t2 - t1 * t3) / (2 * t2 - t1 - t3), + block_responsiveness = -log((t2 - asymp_temp) / (t1 - asymp_temp)) / tuner.get_sample_interval(); + + #if ENABLED(DEBUG_MPC_AUTOTUNE) SERIAL_ECHOLNPGM("asymp_temp ", asymp_temp); SERIAL_ECHOLNPAIR_F("block_responsiveness ", block_responsiveness, 4); #endif + // Make initial guess at transfer coefficients + mpc.ambient_xfer_coeff_fan0 = mpc.heater_power * (MPC_MAX) / 255 / (asymp_temp - tuner.get_ambient_temp()); + TERN_(MPC_INCLUDE_FAN, mpc.fan255_adjustment = 0.0f); + + if (tuning_type == AUTO || tuning_type == FORCE_ASYMPTOTIC) { + // Analytic tuning + mpc.block_heat_capacity = mpc.ambient_xfer_coeff_fan0 / block_responsiveness; + mpc.sensor_responsiveness = block_responsiveness / (1.0f - (tuner.get_ambient_temp() - asymp_temp) * exp(-block_responsiveness * tuner.get_sample_1_time()) / (t1 - asymp_temp)); + } + + // If analytic tuning fails, fall back to differential tuning + if (tuning_type == AUTO) { + if (mpc.sensor_responsiveness <= 0 || mpc.block_heat_capacity <= 0) + tuning_type = FORCE_DIFFERENTIAL; + } + + if (tuning_type == FORCE_DIFFERENTIAL) { + // Differential tuning + mpc.block_heat_capacity = mpc.heater_power / tuner.get_rate_fastest(); + mpc.sensor_responsiveness = tuner.get_rate_fastest() / (tuner.get_rate_fastest() * tuner.get_time_fastest() + tuner.get_ambient_temp() - tuner.get_time_fastest()); + } + + hotend.modeled_block_temp = asymp_temp + (tuner.get_ambient_temp() - asymp_temp) * exp(-block_responsiveness * tuner.get_elapsed_heating_time()); + hotend.modeled_sensor_temp = tuner.get_last_measured_temp(); + + // Allow the system to stabilize under MPC, then get a better measure of ambient loss with and without fan + SERIAL_ECHOLNPGM(STR_MPC_MEASURING_AMBIENT, hotend.modeled_block_temp); + TERN(DWIN_LCD_PROUI, LCD_ALERTMESSAGE(MSG_MPC_MEASURING_AMBIENT), LCD_MESSAGE(MSG_MPC_MEASURING_AMBIENT)); + + // Use the estimated overshoot of the temperature as the target to achieve. + hotend.target = hotend.modeled_block_temp; + if (tuner.measure_transfer() != MPC_autotuner::MeasurementState::SUCCESS) return; + + // Update the transfer coefficients + mpc.ambient_xfer_coeff_fan0 = tuner.get_power_fan0() / (hotend.target - tuner.get_ambient_temp()); + #if HAS_FAN + const float ambient_xfer_coeff_fan255 = tuner.get_power_fan255() / (hotend.target - tuner.get_ambient_temp()); + mpc.applyFanAdjustment(ambient_xfer_coeff_fan255); + #endif + + if (tuning_type == AUTO || tuning_type == FORCE_ASYMPTOTIC) { + // Calculate a new and better asymptotic temperature and re-evaluate the other constants + asymp_temp = tuner.get_ambient_temp() + mpc.heater_power * (MPC_MAX) / 255 / mpc.ambient_xfer_coeff_fan0; + block_responsiveness = -log((t2 - asymp_temp) / (t1 - asymp_temp)) / tuner.get_sample_interval(); + + #if ENABLED(DEBUG_MPC_AUTOTUNE) + SERIAL_ECHOLN("Refining estimates for:"); + SERIAL_ECHOLNPGM("asymp_temp ", asymp_temp); + SERIAL_ECHOLNPAIR_F("block_responsiveness ", block_responsiveness, 4); + #endif + + // Update analytic tuning values based on the above + mpc.block_heat_capacity = mpc.ambient_xfer_coeff_fan0 / block_responsiveness; + mpc.sensor_responsiveness = block_responsiveness / (1.0f - (tuner.get_ambient_temp() - asymp_temp) * exp(-block_responsiveness * tuner.get_sample_1_time()) / (t1 - asymp_temp)); + + } + + SERIAL_ECHOLNPGM(STR_MPC_AUTOTUNE_FINISHED); + TERN_(DWIN_LCD_PROUI, DWIN_MPCTuning(MPC_DONE)); + SERIAL_ECHOLNPGM("MPC_BLOCK_HEAT_CAPACITY ", mpc.block_heat_capacity); SERIAL_ECHOLNPAIR_F("MPC_SENSOR_RESPONSIVENESS ", mpc.sensor_responsiveness, 4); SERIAL_ECHOLNPAIR_F("MPC_AMBIENT_XFER_COEFF ", mpc.ambient_xfer_coeff_fan0, 4); @@ -1702,9 +1832,9 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { // Check if temperature is within the correct band if (WITHIN(temp_bed.celsius, BED_MINTEMP, BED_MAXTEMP)) { #if ENABLED(BED_LIMIT_SWITCHING) - if (temp_bed.is_above_target((BED_HYSTERESIS) - 1)) + if (temp_bed.is_above_target(BED_HYSTERESIS)) temp_bed.soft_pwm_amount = 0; - else if (temp_bed.is_below_target((BED_HYSTERESIS) - 1)) + else if (temp_bed.is_below_target(BED_HYSTERESIS)) temp_bed.soft_pwm_amount = MAX_BED_POWER >> 1; #else // !PIDTEMPBED && !BED_LIMIT_SWITCHING temp_bed.soft_pwm_amount = temp_bed.is_below_target() ? MAX_BED_POWER >> 1 : 0; @@ -1778,7 +1908,7 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { #ifndef MIN_COOLING_SLOPE_DEG_CHAMBER_VENT #define MIN_COOLING_SLOPE_DEG_CHAMBER_VENT 1.5 #endif - if (!flag_chamber_excess_heat && temp_chamber.is_above_target((HIGH_EXCESS_HEAT_LIMIT) - 1)) { + if (!flag_chamber_excess_heat && temp_chamber.is_above_target(HIGH_EXCESS_HEAT_LIMIT)) { // Open vent after MIN_COOLING_SLOPE_TIME_CHAMBER_VENT seconds if the // temperature didn't drop at least MIN_COOLING_SLOPE_DEG_CHAMBER_VENT if (next_cool_check_ms == 0 || ELAPSED(ms, next_cool_check_ms)) { @@ -1792,7 +1922,7 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { next_cool_check_ms = 0; old_temp = 9999; } - if (flag_chamber_excess_heat && temp_chamber.is_above_target((LOW_EXCESS_HEAT_LIMIT) - 1)) + if (flag_chamber_excess_heat && temp_chamber.is_above_target(LOW_EXCESS_HEAT_LIMIT)) flag_chamber_excess_heat = false; #endif } @@ -1824,9 +1954,9 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { } else { #if ENABLED(CHAMBER_LIMIT_SWITCHING) - if (temp_chamber.is_above_target((TEMP_CHAMBER_HYSTERESIS) - 1)) + if (temp_chamber.is_above_target(TEMP_CHAMBER_HYSTERESIS)) temp_chamber.soft_pwm_amount = 0; - else if (temp_chamber.is_below_target((TEMP_CHAMBER_HYSTERESIS) - 1)) + else if (temp_chamber.is_below_target(TEMP_CHAMBER_HYSTERESIS)) temp_chamber.soft_pwm_amount = (MAX_CHAMBER_POWER) >> 1; #else temp_chamber.soft_pwm_amount = temp_chamber.is_below_target() ? (MAX_CHAMBER_POWER) >> 1 : 0; diff --git a/Marlin/src/module/temperature.h b/Marlin/src/module/temperature.h index 27aef11c7eea..4bd185c4251b 100644 --- a/Marlin/src/module/temperature.h +++ b/Marlin/src/module/temperature.h @@ -150,7 +150,7 @@ typedef struct { float p, i, d, c, f; } raw_pidcf_t; #if HAS_PID_HEATING - #define PID_K2 (1-float(PID_K1)) + #define PID_K2 (1.0f - float(PID_K1)) #define PID_dT ((OVERSAMPLENR * float(ACTUAL_ADC_SAMPLES)) / (TEMP_TIMER_FREQUENCY)) // Apply the scale factors to the PID values @@ -231,7 +231,7 @@ typedef struct { float p, i, d, c, f; } raw_pidcf_t; }; -#endif +#endif // HAS_PID_HEATING #if ENABLED(PIDTEMP) @@ -1215,11 +1215,68 @@ class Temperature { } #endif - #endif + #endif // HAS_PID_HEATING #if ENABLED(MPC_AUTOTUNE) - void MPC_autotune(const uint8_t e); - #endif + + // Utility class to perform MPCTEMP auto tuning measurements + class MPC_autotuner { + public: + enum MeasurementState { CANCELLED, FAILED, SUCCESS }; + MPC_autotuner(const uint8_t extruderIdx); + ~MPC_autotuner(); + MeasurementState measure_ambient_temp(); + MeasurementState measure_heatup(); + MeasurementState measure_transfer(); + + celsius_float_t get_ambient_temp() { return ambient_temp; } + celsius_float_t get_last_measured_temp() { return current_temp; } + + float get_elapsed_heating_time() { return elapsed_heating_time; } + float get_sample_1_time() { return t1_time; } + static float get_sample_1_temp() { return temp_samples[0]; } + static float get_sample_2_temp() { return temp_samples[(sample_count - 1) >> 1]; } + static float get_sample_3_temp() { return temp_samples[sample_count - 1]; } + static float get_sample_interval() { return sample_distance * (sample_count >> 1); } + + static celsius_float_t get_temp_fastest() { return temp_fastest; } + float get_time_fastest() { return time_fastest; } + float get_rate_fastest() { return rate_fastest; } + + float get_power_fan0() { return power_fan0; } + #if HAS_FAN + static float get_power_fan255() { return power_fan255; } + #endif + + protected: + static void init_timers() { curr_time_ms = next_report_ms = millis(); } + MeasurementState housekeeping(); + + uint8_t e; + + float elapsed_heating_time; + celsius_float_t ambient_temp, current_temp; + float t1_time; + + static millis_t curr_time_ms, next_report_ms; + static celsius_float_t temp_samples[16]; + static uint8_t sample_count; + static uint16_t sample_distance; + + // Parameters from differential analysis + static celsius_float_t temp_fastest; + float time_fastest, rate_fastest; + + float power_fan0; + #if HAS_FAN + static float power_fan255; + #endif + }; + + enum MPCTuningType { AUTO, FORCE_ASYMPTOTIC, FORCE_DIFFERENTIAL }; + static void MPC_autotune(const uint8_t e, MPCTuningType tuning_type); + + #endif // MPC_AUTOTUNE #if ENABLED(PROBING_HEATERS_OFF) static void pause_heaters(const bool p); From 5f89ef99e962a0c8bed7115c87ae4e545ca143ad Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 12 May 2023 00:25:57 +0000 Subject: [PATCH 158/427] [cron] Bump distribution date (2023-05-12) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 5c696db45c39..9a13c5ce3e14 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-11" +//#define STRING_DISTRIBUTION_DATE "2023-05-12" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 8ab8e76ed761..e4eb143c3ddf 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-11" + #define STRING_DISTRIBUTION_DATE "2023-05-12" #endif /** From 79b0f3158556933699cab4c5ed4e8e798b4ef4d8 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 11 May 2023 19:39:30 -0500 Subject: [PATCH 159/427] =?UTF-8?q?=F0=9F=94=A8=20Use=20'build=5Fsrc=5Ffil?= =?UTF-8?q?ter'=20(#25810)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PlatformIO/scripts/common-dependencies.py | 22 +- ini/features.ini | 466 +++++++++--------- 2 files changed, 244 insertions(+), 244 deletions(-) diff --git a/buildroot/share/PlatformIO/scripts/common-dependencies.py b/buildroot/share/PlatformIO/scripts/common-dependencies.py index 58d9cfcb4d74..aa531be29685 100644 --- a/buildroot/share/PlatformIO/scripts/common-dependencies.py +++ b/buildroot/share/PlatformIO/scripts/common-dependencies.py @@ -62,7 +62,7 @@ def add_to_feat_cnf(feature, flines): for line in atoms: parts = line.split('=') name = parts.pop(0) - if name in ['build_flags', 'extra_scripts', 'src_filter', 'lib_ignore']: + if name in ['build_flags', 'extra_scripts', 'build_src_filter', 'lib_ignore']: feat[name] = '='.join(parts) blab("[%s] %s=%s" % (feature, name, feat[name]), 3) else: @@ -130,7 +130,7 @@ def force_ignore_unused_libs(): def apply_features_config(): load_features() blab("========== Apply enabled features...") - build_filters = ' '.join(env.GetProjectOption('src_filter')) + build_filters = ' '.join(env.GetProjectOption('build_src_filter')) for feature in FEATURE_CONFIG: if not env.MarlinHas(feature): continue @@ -175,9 +175,9 @@ def apply_features_config(): blab("Running extra_scripts for %s... " % feature, 2) env.SConscript(feat['extra_scripts'], exports="env") - if 'src_filter' in feat: + if 'build_src_filter' in feat: blab("========== Adding build_src_filter for %s... " % feature, 2) - build_filters = build_filters + ' ' + feat['src_filter'] + build_filters = build_filters + ' ' + feat['build_src_filter'] # Just append the filter in the order that the build environment specifies. # Important here is the order of entries in the "features.ini" file. @@ -186,7 +186,7 @@ def apply_features_config(): lib_ignore = env.GetProjectOption('lib_ignore') + [feat['lib_ignore']] set_env_field('lib_ignore', lib_ignore) - src_filter = "" + build_src_filter = "" if True: # Build the actual equivalent build_src_filter list based on the inclusions by the features. # PlatformIO doesn't do it this way, but maybe in the future.... @@ -247,16 +247,16 @@ def filt(x): cur_srcs = set(filter(filt, cur_srcs)) # Transform the resulting set into a string. for x in cur_srcs: - if len(src_filter) > 0: src_filter += ' ' - src_filter += "+<" + x + ">" + if len(build_src_filter) > 0: build_src_filter += ' ' + build_src_filter += "+<" + x + ">" - #blab("Final src_filter: " + src_filter) + #blab("Final build_src_filter: " + build_src_filter) else: - src_filter = build_filters + build_src_filter = build_filters # Update in PlatformIO - set_env_field('build_src_filter', [src_filter]) - env.Replace(SRC_FILTER=src_filter) + set_env_field('build_src_filter', [build_src_filter]) + env.Replace(SRC_FILTER=build_src_filter) # # Use the compiler to get a list of all enabled features diff --git a/ini/features.ini b/ini/features.ini index c8a3cf2908a2..17d2ece04a05 100644 --- a/ini/features.ini +++ b/ini/features.ini @@ -14,254 +14,254 @@ [features] YHCB2004 = red-scorp/LiquidCrystal_AIP31068@^1.0.4, red-scorp/SoftSPIB@^1.1.1 HAS_TFT_LVGL_UI = lvgl=https://github.com/makerbase-mks/LVGL-6.1.1-MKS/archive/master.zip - src_filter=+ + build_src_filter=+ extra_scripts=download_mks_assets.py -MARLIN_TEST_BUILD = src_filter=+ -POSTMORTEM_DEBUGGING = src_filter=+ + +MARLIN_TEST_BUILD = build_src_filter=+ +POSTMORTEM_DEBUGGING = build_src_filter=+ + build_flags=-funwind-tables MKS_WIFI_MODULE = QRCode=https://github.com/makerbase-mks/QRCode/archive/master.zip HAS_TRINAMIC_CONFIG = TMCStepper@~0.7.3 - src_filter=+ + + + + -HAS_T(RINAMIC_CONFIG|MC_SPI) = src_filter=+ -HAS_STEALTHCHOP = src_filter=+ + build_src_filter=+ + + + + +HAS_T(RINAMIC_CONFIG|MC_SPI) = build_src_filter=+ +HAS_STEALTHCHOP = build_src_filter=+ SR_LCD_3W_NL = SailfishLCD=https://github.com/mikeshub/SailfishLCD/archive/master.zip -HAS_MOTOR_CURRENT_(I2C|DAC|SPI|PWM) = src_filter=+ +HAS_MOTOR_CURRENT_(I2C|DAC|SPI|PWM) = build_src_filter=+ HAS_MOTOR_CURRENT_I2C = SlowSoftI2CMaster - src_filter=+ + build_src_filter=+ HAS_TMC26X = TMC26XStepper=https://github.com/MarlinFirmware/TMC26XStepper/archive/master.zip - src_filter=+ -LIB_INTERNAL_MAX31865 = src_filter=+ + build_src_filter=+ +LIB_INTERNAL_MAX31865 = build_src_filter=+ NEOPIXEL_LED = adafruit/Adafruit NeoPixel@~1.8.0 - src_filter=+ + build_src_filter=+ I2C_AMMETER = peterus/INA226Lib@1.1.2 - src_filter=+ + build_src_filter=+ USES_LIQUIDCRYSTAL = LiquidCrystal=https://github.com/MarlinFirmware/New-LiquidCrystal/archive/1.5.1.zip USES_LIQUIDCRYSTAL_I2C = marcoschwartz/LiquidCrystal_I2C@1.1.4 USES_LIQUIDTWI2 = LiquidTWI2@1.2.7 -HAS_LCDPRINT = src_filter=+ -HAS_MARLINUI_HD44780 = src_filter=+ +HAS_LCDPRINT = build_src_filter=+ +HAS_MARLINUI_HD44780 = build_src_filter=+ HAS_MARLINUI_U8GLIB = marlinfirmware/U8glib-HAL@~0.5.2 - src_filter=+ -HAS_(FSMC|SPI|LTDC)_TFT = src_filter=+ -HAS_LTDC_TFT = src_filter=+ -HAS_FSMC_TFT = src_filter=+ + -HAS_SPI_TFT = src_filter=+ + + -HAS_TFT_XPT2046 = src_filter=+ + + -TFT_TOUCH_DEVICE_GT911 = src_filter=+ -I2C_EEPROM = src_filter=+ + build_src_filter=+ +HAS_(FSMC|SPI|LTDC)_TFT = build_src_filter=+ +HAS_LTDC_TFT = build_src_filter=+ +HAS_FSMC_TFT = build_src_filter=+ + +HAS_SPI_TFT = build_src_filter=+ + + +HAS_TFT_XPT2046 = build_src_filter=+ + + +TFT_TOUCH_DEVICE_GT911 = build_src_filter=+ +I2C_EEPROM = build_src_filter=+ SOFT_I2C_EEPROM = SlowSoftI2CMaster, SlowSoftWire=https://github.com/felias-fogg/SlowSoftWire/archive/master.zip -SPI_EEPROM = src_filter=+ -HAS_DWIN_E3V2|IS_DWIN_MARLINUI = src_filter=+ -DWIN_CREALITY_LCD = src_filter=+ -DWIN_LCD_PROUI = src_filter=+ -DWIN_CREALITY_LCD_JYERSUI = src_filter=+ -IS_DWIN_MARLINUI = src_filter=+ -HAS_GRAPHICAL_TFT = src_filter=+ - -TFT_FONT_HELVETICA = src_filter=+ -TFT_FONT_NOTOSANS = src_filter=+ -TFT_FONT_UNIFONT = src_filter=+ -IS_TFTGLCD_PANEL = src_filter=+ -HAS_TOUCH_BUTTONS = src_filter=+ -HAS_MARLINUI_MENU = src_filter=+ - -HAS_GAMES = src_filter=+ -MARLIN_BRICKOUT = src_filter=+ -MARLIN_INVADERS = src_filter=+ -MARLIN_MAZE = src_filter=+ -MARLIN_SNAKE = src_filter=+ -HAS_MENU_BACKLASH = src_filter=+ -LCD_BED_LEVELING = src_filter=+ -HAS_MENU_BED_TRAMMING = src_filter=+ -HAS_MENU_CANCELOBJECT = src_filter=+ -HAS_MENU_DELTA_CALIBRATE = src_filter=+ -HAS_MENU_FILAMENT = src_filter=+ -LCD_INFO_MENU = src_filter=+ -HAS_MENU_JOB_RECOVERY = src_filter=+ -HAS_MENU_MULTI_LANGUAGE = src_filter=+ -HAS_MENU_LED = src_filter=+ -HAS_MENU_MEDIA = src_filter=+ -HAS_MENU_MIXER = src_filter=+ -HAS_MENU_MMU2 = src_filter=+ -HAS_MENU_PASSWORD = src_filter=+ -HAS_MENU_POWER_MONITOR = src_filter=+ -HAS_MENU_CUTTER = src_filter=+ -HAS_MENU_TEMPERATURE = src_filter=+ -HAS_MENU_TMC = src_filter=+ -HAS_MENU_TOUCH_SCREEN = src_filter=+ -HAS_MENU_TRAMMING_WIZARD = src_filter=+ -HAS_MENU_UBL = src_filter=+ -EXTENSIBLE_UI = src_filter=+ -ANYCUBIC_LCD_(CHIRON|VYPER) = src_filter=+ -ANYCUBIC_LCD_CHIRON = src_filter=+ -ANYCUBIC_LCD_VYPER = src_filter=+ -ANYCUBIC_LCD_I3MEGA = src_filter=+ -HAS_DGUS_LCD_CLASSIC = src_filter=+ -DGUS_LCD_UI_RELOADED = src_filter=+ -DGUS_LCD_UI_FYSETC = src_filter=+ -DGUS_LCD_UI_HIPRECY = src_filter=+ -DGUS_LCD_UI_MKS = src_filter=+ -DGUS_LCD_UI_ORIGIN = src_filter=+ -DGUS_LCD_UI_IA_CREALITY = src_filter=+ -EXTUI_EXAMPLE = src_filter=+ -TOUCH_UI_FTDI_EVE = src_filter=+ -MALYAN_LCD = src_filter=+ -NEXTION_TFT = src_filter=+ -USE_UHS2_USB = src_filter=+ -USE_UHS3_USB = src_filter=+ -USB_FLASH_DRIVE_SUPPORT = src_filter=+ -HAS_MCP3426_ADC = src_filter=+ + -AUTO_BED_LEVELING_BILINEAR = src_filter=+ -AUTO_BED_LEVELING_(3POINT|(BI)?LINEAR) = src_filter=+ -X_AXIS_TWIST_COMPENSATION = src_filter=+ + + +SPI_EEPROM = build_src_filter=+ +HAS_DWIN_E3V2|IS_DWIN_MARLINUI = build_src_filter=+ +DWIN_CREALITY_LCD = build_src_filter=+ +DWIN_LCD_PROUI = build_src_filter=+ +DWIN_CREALITY_LCD_JYERSUI = build_src_filter=+ +IS_DWIN_MARLINUI = build_src_filter=+ +HAS_GRAPHICAL_TFT = build_src_filter=+ - +TFT_FONT_HELVETICA = build_src_filter=+ +TFT_FONT_NOTOSANS = build_src_filter=+ +TFT_FONT_UNIFONT = build_src_filter=+ +IS_TFTGLCD_PANEL = build_src_filter=+ +HAS_TOUCH_BUTTONS = build_src_filter=+ +HAS_MARLINUI_MENU = build_src_filter=+ - +HAS_GAMES = build_src_filter=+ +MARLIN_BRICKOUT = build_src_filter=+ +MARLIN_INVADERS = build_src_filter=+ +MARLIN_MAZE = build_src_filter=+ +MARLIN_SNAKE = build_src_filter=+ +HAS_MENU_BACKLASH = build_src_filter=+ +LCD_BED_LEVELING = build_src_filter=+ +HAS_MENU_BED_TRAMMING = build_src_filter=+ +HAS_MENU_CANCELOBJECT = build_src_filter=+ +HAS_MENU_DELTA_CALIBRATE = build_src_filter=+ +HAS_MENU_FILAMENT = build_src_filter=+ +LCD_INFO_MENU = build_src_filter=+ +HAS_MENU_JOB_RECOVERY = build_src_filter=+ +HAS_MENU_MULTI_LANGUAGE = build_src_filter=+ +HAS_MENU_LED = build_src_filter=+ +HAS_MENU_MEDIA = build_src_filter=+ +HAS_MENU_MIXER = build_src_filter=+ +HAS_MENU_MMU2 = build_src_filter=+ +HAS_MENU_PASSWORD = build_src_filter=+ +HAS_MENU_POWER_MONITOR = build_src_filter=+ +HAS_MENU_CUTTER = build_src_filter=+ +HAS_MENU_TEMPERATURE = build_src_filter=+ +HAS_MENU_TMC = build_src_filter=+ +HAS_MENU_TOUCH_SCREEN = build_src_filter=+ +HAS_MENU_TRAMMING_WIZARD = build_src_filter=+ +HAS_MENU_UBL = build_src_filter=+ +EXTENSIBLE_UI = build_src_filter=+ +ANYCUBIC_LCD_(CHIRON|VYPER) = build_src_filter=+ +ANYCUBIC_LCD_CHIRON = build_src_filter=+ +ANYCUBIC_LCD_VYPER = build_src_filter=+ +ANYCUBIC_LCD_I3MEGA = build_src_filter=+ +HAS_DGUS_LCD_CLASSIC = build_src_filter=+ +DGUS_LCD_UI_RELOADED = build_src_filter=+ +DGUS_LCD_UI_FYSETC = build_src_filter=+ +DGUS_LCD_UI_HIPRECY = build_src_filter=+ +DGUS_LCD_UI_MKS = build_src_filter=+ +DGUS_LCD_UI_ORIGIN = build_src_filter=+ +DGUS_LCD_UI_IA_CREALITY = build_src_filter=+ +EXTUI_EXAMPLE = build_src_filter=+ +TOUCH_UI_FTDI_EVE = build_src_filter=+ +MALYAN_LCD = build_src_filter=+ +NEXTION_TFT = build_src_filter=+ +USE_UHS2_USB = build_src_filter=+ +USE_UHS3_USB = build_src_filter=+ +USB_FLASH_DRIVE_SUPPORT = build_src_filter=+ +HAS_MCP3426_ADC = build_src_filter=+ + +AUTO_BED_LEVELING_BILINEAR = build_src_filter=+ +AUTO_BED_LEVELING_(3POINT|(BI)?LINEAR) = build_src_filter=+ +X_AXIS_TWIST_COMPENSATION = build_src_filter=+ + + BD_SENSOR = markyue/Panda_SoftMasterI2C - src_filter=+ + -MESH_BED_LEVELING = src_filter=+ + -AUTO_BED_LEVELING_UBL = src_filter=+ + -UBL_HILBERT_CURVE = src_filter=+ -BACKLASH_COMPENSATION = src_filter=+ -BARICUDA = src_filter=+ + -BINARY_FILE_TRANSFER = src_filter=+ + -BLTOUCH = src_filter=+ -CANCEL_OBJECTS = src_filter=+ + -CASE_LIGHT_ENABLE = src_filter=+ + -EXTERNAL_CLOSED_LOOP_CONTROLLER = src_filter=+ + -USE_CONTROLLER_FAN = src_filter=+ -HAS_COOLER|LASER_COOLANT_FLOW_METER = src_filter=+ -HAS_MOTOR_CURRENT_DAC = src_filter=+ -DIRECT_STEPPING = src_filter=+ + -EMERGENCY_PARSER = src_filter=+ - -EASYTHREED_UI = src_filter=+ -I2C_POSITION_ENCODERS = src_filter=+ -IIC_BL24CXX_EEPROM = src_filter=+ -SPI_FLASH = src_filter=+ -HAS_ETHERNET = src_filter=+ + -HAS_FANCHECK = src_filter=+ + -HAS_FANMUX = src_filter=+ -FILAMENT_WIDTH_SENSOR = src_filter=+ + -FWRETRACT = src_filter=+ + -HOST_ACTION_COMMANDS = src_filter=+ -HOTEND_IDLE_TIMEOUT = src_filter=+ -JOYSTICK = src_filter=+ -BLINKM = src_filter=+ -HAS_COLOR_LEDS = src_filter=+ + -PCA9533 = src_filter=+ -PCA9632 = src_filter=+ -PRINTER_EVENT_LEDS = src_filter=+ -TEMP_STAT_LEDS = src_filter=+ -MAX7219_DEBUG = src_filter=+ + -HAS_MEATPACK = src_filter=+ -MIXING_EXTRUDER = src_filter=+ + -HAS_PRUSA_MMU1 = src_filter=+ -HAS_PRUSA_MMU2 = src_filter=+ + -PASSWORD_FEATURE = src_filter=+ + -ADVANCED_PAUSE_FEATURE = src_filter=+ + + -PSU_CONTROL = src_filter=+ -HAS_POWER_MONITOR = src_filter=+ + -POWER_LOSS_RECOVERY = src_filter=+ + -HAS_PTC = src_filter=+ + -HAS_FILAMENT_SENSOR = src_filter=+ + -(EXT|MANUAL)_SOLENOID.* = src_filter=+ + -MK2_MULTIPLEXER = src_filter=+ -HAS_CUTTER = src_filter=+ + -HAS_DRIVER_SAFE_POWER_PROTECT = src_filter=+ -EXPERIMENTAL_I2CBUS = src_filter=+ + -G26_MESH_VALIDATION = src_filter=+ -ASSISTED_TRAMMING = src_filter=+ + -HAS_MESH = src_filter=+ -HAS_LEVELING = src_filter=+ + -MECHANICAL_GANTRY_CAL.+ = src_filter=+ -Z_MULTI_ENDSTOPS|Z_STEPPER_AUTO_ALIGN = src_filter=+ -Z_STEPPER_AUTO_ALIGN = src_filter=+ -DELTA_AUTO_CALIBRATION = src_filter=+ -CALIBRATION_GCODE = src_filter=+ -Z_MIN_PROBE_REPEATABILITY_TEST = src_filter=+ -M100_FREE_MEMORY_WATCHER = src_filter=+ -BACKLASH_GCODE = src_filter=+ -IS_KINEMATIC = src_filter=+ -HAS_EXTRA_ENDSTOPS = src_filter=+ -SKEW_CORRECTION_GCODE = src_filter=+ -DIRECT_PIN_CONTROL = src_filter=+ + -PINS_DEBUGGING = src_filter=+ -HAS_MULTI_EXTRUDER = src_filter=+ -HAS_HOTEND_OFFSET = src_filter=+ -EDITABLE_SERVO_ANGLES = src_filter=+ -PIDTEMP = src_filter=+ -PREVENT_COLD_EXTRUSION = src_filter=+ -PIDTEMPBED = src_filter=+ -HAS_USER_THERMISTORS = src_filter=+ -PIDTEMPCHAMBER = src_filter=+ -SD_ABORT_ON_ENDSTOP_HIT = src_filter=+ -BAUD_RATE_GCODE = src_filter=+ -HAS_SMART_EFF_MOD = src_filter=+ -COOLANT_CONTROL|AIR_ASSIST = src_filter=+ -AIR_EVACUATION = src_filter=+ -HAS_SOFTWARE_ENDSTOPS = src_filter=+ -SERVO_DETACH_GCODE = src_filter=+ -HAS_DUPLICATION_MODE = src_filter=+ -SPI_FLASH_BACKUP = src_filter=+ -PLATFORM_M997_SUPPORT = src_filter=+ -FT_MOTION = src_filter=+ + -LIN_ADVANCE = src_filter=+ -PHOTO_GCODE = src_filter=+ -CONTROLLER_FAN_EDITABLE = src_filter=+ -HAS_ZV_SHAPING = src_filter=+ -GCODE_MACROS = src_filter=+ -GRADIENT_MIX = src_filter=+ -OTA_FIRMWARE_UPDATE = src_filter=+ -HAS_SAVED_POSITIONS = src_filter=+ + -PARK_HEAD_ON_PAUSE = src_filter=+ -FILAMENT_LOAD_UNLOAD_GCODES = src_filter=+ -CNC_WORKSPACE_PLANES = src_filter=+ -CNC_COORDINATE_SYSTEMS = src_filter=+ -HAS_M206_COMMAND = src_filter=+ -EXPECTED_PRINTER_CHECK = src_filter=+ -HOST_KEEPALIVE_FEATURE = src_filter=+ -AUTO_REPORT_POSITION = src_filter=+ -REPETIER_GCODE_M360 = src_filter=+ -HAS_GCODE_M876 = src_filter=+ -HAS_RESUME_CONTINUE = src_filter=+ -SET_PROGRESS_MANUALLY = src_filter=+ -HAS_STATUS_MESSAGE = src_filter=+ -HAS_PREHEAT = src_filter=+ -HAS_LCD_CONTRAST = src_filter=+ -HAS_GCODE_M255 = src_filter=+ -HAS_LCD_BRIGHTNESS = src_filter=+ -HAS_SOUND = src_filter=+ -HAS_MULTI_LANGUAGE = src_filter=+ -TOUCH_SCREEN_CALIBRATION = src_filter=+ -ARC_SUPPORT = src_filter=+ -GCODE_MOTION_MODES = src_filter=+ -BABYSTEPPING = src_filter=+ + -Z_PROBE_SLED = src_filter=+ -G38_PROBE_TARGET = src_filter=+ -MAGNETIC_PARKING_EXTRUDER = src_filter=+ -HAS_MEDIA = src_filter=+ + + + + + + -HAS_MEDIA_SUBCALLS = src_filter=+ -GCODE_REPEAT_MARKERS = src_filter=+ + -HAS_EXTRUDERS = src_filter=+ + -HAS_HOTEND = src_filter=+ -HAS_FAN = src_filter=+ -HAS_HEATED_BED = src_filter=+ -HAS_HEATED_CHAMBER = src_filter=+ -HAS_COOLER = src_filter=+ -AUTO_REPORT_TEMPERATURES = src_filter=+ -HAS_TEMP_PROBE = src_filter=+ -HAS_PID_HEATING = src_filter=+ -MPCTEMP = src_filter=+ -INCH_MODE_SUPPORT = src_filter=+ -TEMPERATURE_UNITS_SUPPORT = src_filter=+ -NEED_HEX_PRINT = src_filter=+ -NEED_LSF = src_filter=+ -NOZZLE_PARK_FEATURE = src_filter=+ + -NOZZLE_CLEAN_FEATURE = src_filter=+ + -DELTA = src_filter=+ + -POLARGRAPH = src_filter=+ -BEZIER_CURVE_SUPPORT = src_filter=+ + -PRINTCOUNTER = src_filter=+ -HAS_BED_PROBE = src_filter=+ + + + -IS_SCARA = src_filter=+ -HAS_SERVOS = src_filter=+ + -MORGAN_SCARA = src_filter=+ -HAS_MICROSTEPS = src_filter=+ + build_src_filter=+ + +MESH_BED_LEVELING = build_src_filter=+ + +AUTO_BED_LEVELING_UBL = build_src_filter=+ + +UBL_HILBERT_CURVE = build_src_filter=+ +BACKLASH_COMPENSATION = build_src_filter=+ +BARICUDA = build_src_filter=+ + +BINARY_FILE_TRANSFER = build_src_filter=+ + +BLTOUCH = build_src_filter=+ +CANCEL_OBJECTS = build_src_filter=+ + +CASE_LIGHT_ENABLE = build_src_filter=+ + +EXTERNAL_CLOSED_LOOP_CONTROLLER = build_src_filter=+ + +USE_CONTROLLER_FAN = build_src_filter=+ +HAS_COOLER|LASER_COOLANT_FLOW_METER = build_src_filter=+ +HAS_MOTOR_CURRENT_DAC = build_src_filter=+ +DIRECT_STEPPING = build_src_filter=+ + +EMERGENCY_PARSER = build_src_filter=+ - +EASYTHREED_UI = build_src_filter=+ +I2C_POSITION_ENCODERS = build_src_filter=+ +IIC_BL24CXX_EEPROM = build_src_filter=+ +SPI_FLASH = build_src_filter=+ +HAS_ETHERNET = build_src_filter=+ + +HAS_FANCHECK = build_src_filter=+ + +HAS_FANMUX = build_src_filter=+ +FILAMENT_WIDTH_SENSOR = build_src_filter=+ + +FWRETRACT = build_src_filter=+ + +HOST_ACTION_COMMANDS = build_src_filter=+ +HOTEND_IDLE_TIMEOUT = build_src_filter=+ +JOYSTICK = build_src_filter=+ +BLINKM = build_src_filter=+ +HAS_COLOR_LEDS = build_src_filter=+ + +PCA9533 = build_src_filter=+ +PCA9632 = build_src_filter=+ +PRINTER_EVENT_LEDS = build_src_filter=+ +TEMP_STAT_LEDS = build_src_filter=+ +MAX7219_DEBUG = build_src_filter=+ + +HAS_MEATPACK = build_src_filter=+ +MIXING_EXTRUDER = build_src_filter=+ + +HAS_PRUSA_MMU1 = build_src_filter=+ +HAS_PRUSA_MMU2 = build_src_filter=+ + +PASSWORD_FEATURE = build_src_filter=+ + +ADVANCED_PAUSE_FEATURE = build_src_filter=+ + + +PSU_CONTROL = build_src_filter=+ +HAS_POWER_MONITOR = build_src_filter=+ + +POWER_LOSS_RECOVERY = build_src_filter=+ + +HAS_PTC = build_src_filter=+ + +HAS_FILAMENT_SENSOR = build_src_filter=+ + +(EXT|MANUAL)_SOLENOID.* = build_src_filter=+ + +MK2_MULTIPLEXER = build_src_filter=+ +HAS_CUTTER = build_src_filter=+ + +HAS_DRIVER_SAFE_POWER_PROTECT = build_src_filter=+ +EXPERIMENTAL_I2CBUS = build_src_filter=+ + +G26_MESH_VALIDATION = build_src_filter=+ +ASSISTED_TRAMMING = build_src_filter=+ + +HAS_MESH = build_src_filter=+ +HAS_LEVELING = build_src_filter=+ + +MECHANICAL_GANTRY_CAL.+ = build_src_filter=+ +Z_MULTI_ENDSTOPS|Z_STEPPER_AUTO_ALIGN = build_src_filter=+ +Z_STEPPER_AUTO_ALIGN = build_src_filter=+ +DELTA_AUTO_CALIBRATION = build_src_filter=+ +CALIBRATION_GCODE = build_src_filter=+ +Z_MIN_PROBE_REPEATABILITY_TEST = build_src_filter=+ +M100_FREE_MEMORY_WATCHER = build_src_filter=+ +BACKLASH_GCODE = build_src_filter=+ +IS_KINEMATIC = build_src_filter=+ +HAS_EXTRA_ENDSTOPS = build_src_filter=+ +SKEW_CORRECTION_GCODE = build_src_filter=+ +DIRECT_PIN_CONTROL = build_src_filter=+ + +PINS_DEBUGGING = build_src_filter=+ +HAS_MULTI_EXTRUDER = build_src_filter=+ +HAS_HOTEND_OFFSET = build_src_filter=+ +EDITABLE_SERVO_ANGLES = build_src_filter=+ +PIDTEMP = build_src_filter=+ +PREVENT_COLD_EXTRUSION = build_src_filter=+ +PIDTEMPBED = build_src_filter=+ +HAS_USER_THERMISTORS = build_src_filter=+ +PIDTEMPCHAMBER = build_src_filter=+ +SD_ABORT_ON_ENDSTOP_HIT = build_src_filter=+ +BAUD_RATE_GCODE = build_src_filter=+ +HAS_SMART_EFF_MOD = build_src_filter=+ +COOLANT_CONTROL|AIR_ASSIST = build_src_filter=+ +AIR_EVACUATION = build_src_filter=+ +HAS_SOFTWARE_ENDSTOPS = build_src_filter=+ +SERVO_DETACH_GCODE = build_src_filter=+ +HAS_DUPLICATION_MODE = build_src_filter=+ +SPI_FLASH_BACKUP = build_src_filter=+ +PLATFORM_M997_SUPPORT = build_src_filter=+ +FT_MOTION = build_src_filter=+ + +LIN_ADVANCE = build_src_filter=+ +PHOTO_GCODE = build_src_filter=+ +CONTROLLER_FAN_EDITABLE = build_src_filter=+ +HAS_ZV_SHAPING = build_src_filter=+ +GCODE_MACROS = build_src_filter=+ +GRADIENT_MIX = build_src_filter=+ +OTA_FIRMWARE_UPDATE = build_src_filter=+ +HAS_SAVED_POSITIONS = build_src_filter=+ + +PARK_HEAD_ON_PAUSE = build_src_filter=+ +FILAMENT_LOAD_UNLOAD_GCODES = build_src_filter=+ +CNC_WORKSPACE_PLANES = build_src_filter=+ +CNC_COORDINATE_SYSTEMS = build_src_filter=+ +HAS_M206_COMMAND = build_src_filter=+ +EXPECTED_PRINTER_CHECK = build_src_filter=+ +HOST_KEEPALIVE_FEATURE = build_src_filter=+ +AUTO_REPORT_POSITION = build_src_filter=+ +REPETIER_GCODE_M360 = build_src_filter=+ +HAS_GCODE_M876 = build_src_filter=+ +HAS_RESUME_CONTINUE = build_src_filter=+ +SET_PROGRESS_MANUALLY = build_src_filter=+ +HAS_STATUS_MESSAGE = build_src_filter=+ +HAS_PREHEAT = build_src_filter=+ +HAS_LCD_CONTRAST = build_src_filter=+ +HAS_GCODE_M255 = build_src_filter=+ +HAS_LCD_BRIGHTNESS = build_src_filter=+ +HAS_SOUND = build_src_filter=+ +HAS_MULTI_LANGUAGE = build_src_filter=+ +TOUCH_SCREEN_CALIBRATION = build_src_filter=+ +ARC_SUPPORT = build_src_filter=+ +GCODE_MOTION_MODES = build_src_filter=+ +BABYSTEPPING = build_src_filter=+ + +Z_PROBE_SLED = build_src_filter=+ +G38_PROBE_TARGET = build_src_filter=+ +MAGNETIC_PARKING_EXTRUDER = build_src_filter=+ +HAS_MEDIA = build_src_filter=+ + + + + + + +HAS_MEDIA_SUBCALLS = build_src_filter=+ +GCODE_REPEAT_MARKERS = build_src_filter=+ + +HAS_EXTRUDERS = build_src_filter=+ + +HAS_HOTEND = build_src_filter=+ +HAS_FAN = build_src_filter=+ +HAS_HEATED_BED = build_src_filter=+ +HAS_HEATED_CHAMBER = build_src_filter=+ +HAS_COOLER = build_src_filter=+ +AUTO_REPORT_TEMPERATURES = build_src_filter=+ +HAS_TEMP_PROBE = build_src_filter=+ +HAS_PID_HEATING = build_src_filter=+ +MPCTEMP = build_src_filter=+ +INCH_MODE_SUPPORT = build_src_filter=+ +TEMPERATURE_UNITS_SUPPORT = build_src_filter=+ +NEED_HEX_PRINT = build_src_filter=+ +NEED_LSF = build_src_filter=+ +NOZZLE_PARK_FEATURE = build_src_filter=+ + +NOZZLE_CLEAN_FEATURE = build_src_filter=+ + +DELTA = build_src_filter=+ + +POLARGRAPH = build_src_filter=+ +BEZIER_CURVE_SUPPORT = build_src_filter=+ + +PRINTCOUNTER = build_src_filter=+ +HAS_BED_PROBE = build_src_filter=+ + + + +IS_SCARA = build_src_filter=+ +HAS_SERVOS = build_src_filter=+ + +MORGAN_SCARA = build_src_filter=+ +HAS_MICROSTEPS = build_src_filter=+ (ESP3D_)?WIFISUPPORT = AsyncTCP, ESP Async WebServer ESP3DLib=https://github.com/luc-github/ESP3DLib/archive/master.zip arduinoWebSockets=links2004/WebSockets@2.3.4 From e7de3b92c9952e160c0b46479437cf5de0e993e8 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 13 May 2023 00:19:22 +0000 Subject: [PATCH 160/427] [cron] Bump distribution date (2023-05-13) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 9a13c5ce3e14..f2258b55e74f 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-12" +//#define STRING_DISTRIBUTION_DATE "2023-05-13" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index e4eb143c3ddf..3f3032fe33d2 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-12" + #define STRING_DISTRIBUTION_DATE "2023-05-13" #endif /** From e41dc273c9d9ee05947ecd66c44c7c7a91868545 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 12 May 2023 20:13:12 -0500 Subject: [PATCH 161/427] =?UTF-8?q?=F0=9F=94=A7=20Update=20config.ini=20an?= =?UTF-8?q?d=20script?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/config.ini | 10 +++++----- .../share/PlatformIO/scripts/configuration.py | 20 ++++++++++++++----- 2 files changed, 20 insertions(+), 10 deletions(-) diff --git a/Marlin/config.ini b/Marlin/config.ini index 6d2a49c2edf8..17ff3bec7efb 100644 --- a/Marlin/config.ini +++ b/Marlin/config.ini @@ -42,7 +42,7 @@ preheat_1_temp_hotend = 180 bang_max = 255 pidtemp = on pid_k1 = 0.95 -pid_max = BANG_MAX +pid_max = 255 pid_functional_range = 10 default_kp = 22.20 @@ -96,10 +96,10 @@ step_state_x = HIGH step_state_y = HIGH step_state_z = HIGH -disable_x = false -disable_y = false -disable_z = false -disable_e = false +disable_x = off +disable_y = off +disable_z = off +disable_e = off proportional_font_ratio = 1.0 default_nominal_filament_dia = 1.75 diff --git a/buildroot/share/PlatformIO/scripts/configuration.py b/buildroot/share/PlatformIO/scripts/configuration.py index 3fc43ed6d89a..250d9bbd7f11 100644 --- a/buildroot/share/PlatformIO/scripts/configuration.py +++ b/buildroot/share/PlatformIO/scripts/configuration.py @@ -18,7 +18,16 @@ def apply_opt(name, val, conf=None): if name == "lcd": name, val = val, "on" # Create a regex to match the option and capture parts of the line - regex = re.compile(rf'^(\s*)(//\s*)?(#define\s+)({name}\b)(\s*)(.*?)(\s*)(//.*)?$', re.IGNORECASE) + # 1: Indentation + # 2: Comment + # 3: #define and whitespace + # 4: Option name + # 5: First space after name + # 6: Remaining spaces between name and value + # 7: Option value + # 8: Whitespace after value + # 9: End comment + regex = re.compile(rf'^(\s*)(//\s*)?(#define\s+)({name}\b)(\s?)(\s*)(.*?)(\s*)(//.*)?$', re.IGNORECASE) # Find and enable and/or update all matches for file in ("Configuration.h", "Configuration_adv.h"): @@ -37,10 +46,11 @@ def apply_opt(name, val, conf=None): newline = re.sub(r'^(\s*)(#define)(\s{1,3})?(\s*)', r'\1//\2 \4', line) else: # For options with values, enable and set the value - newline = match[1] + match[3] + match[4] + match[5] + val - if match[8]: - sp = match[7] if match[7] else ' ' - newline += sp + match[8] + addsp = '' if match[5] else ' ' + newline = match[1] + match[3] + match[4] + match[5] + addsp + val + match[6] + if match[9]: + sp = match[8] if match[8] else ' ' + newline += sp + match[9] lines[i] = newline blab(f"Set {name} to {val}") From 18005cb91e6d731b332b0baa29902bdd46a14313 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 13 May 2023 16:12:59 -0500 Subject: [PATCH 162/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Con?= =?UTF-8?q?stexpr=20types.h=20operators=20(#25811)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/types.h | 491 ++++++++++++++++++---------------------- 1 file changed, 225 insertions(+), 266 deletions(-) diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index 20f589d60a0c..4c7ebc884fb6 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -78,14 +78,34 @@ template struct IF { typedef L type; }; #define LOGICAL_AXIS_MAP(F) MAP(F, LOGICAL_AXIS_NAMES) #define STR_AXES_LOGICAL LOGICAL_AXIS_GANG("E", "X", "Y", "Z", STR_I, STR_J, STR_K, STR_U, STR_V, STR_W) -#define XYZ_GANG(V...) GANG_N(PRIMARY_LINEAR_AXES, V) -#define XYZ_CODE(V...) CODE_N(PRIMARY_LINEAR_AXES, V) - #define SECONDARY_AXIS_GANG(V...) GANG_N(SECONDARY_AXES, V) #define SECONDARY_AXIS_CODE(V...) CODE_N(SECONDARY_AXES, V) #define SECONDARY_AXIS_LIST(V...) LIST_N(SECONDARY_AXES, V) #define SECONDARY_AXIS_ARGS(T) SECONDARY_AXIS_LIST(T i, T j, T k, T u, T v, T w) +// Just the XY or XYZ elements +#if HAS_Z_AXIS + #define XYZ_COUNT 3 + #define XY_COUNT 2 +#elif HAS_Y_AXIS + #define XY_COUNT 2 +#elif HAS_X_AXIS + #define XY_COUNT 1 +#else + #define XY_COUNT 0 +#endif +#ifndef XYZ_COUNT + #define XYZ_COUNT XY_COUNT +#endif +#define XY_LIST(V...) LIST_N(XY_COUNT, V) +#define XY_ARRAY(V...) ARRAY_N(XY_COUNT, V) +#define XY_CODE(V...) CODE_N(XY_COUNT, V) +#define XY_GANG(V...) GANG_N(XY_COUNT, V) +#define XYZ_LIST(V...) LIST_N(XYZ_COUNT, V) +#define XYZ_ARRAY(V...) ARRAY_N(XYZ_COUNT, V) +#define XYZ_CODE(V...) CODE_N(XYZ_COUNT, V) +#define XYZ_GANG(V...) GANG_N(XYZ_COUNT, V) + #if HAS_ROTATIONAL_AXES #define ROTATIONAL_AXIS_GANG(V...) GANG_N(ROTATIONAL_AXES, V) #endif @@ -110,8 +130,10 @@ template struct IF { typedef L type; }; // Helpers #define _RECIP(N) ((N) ? 1.0f / static_cast(N) : 0.0f) #define _ABS(N) ((N) < 0 ? -(N) : (N)) -#define _LS(N) (N = (T)(uint32_t(N) << p)) -#define _RS(N) (N = (T)(uint32_t(N) >> p)) +#define _LS(N) T(uint32_t(N) << p) +#define _RS(N) T(uint32_t(N) >> p) +#define _LSE(N) N = T(uint32_t(N) << p) +#define _RSE(N) N = T(uint32_t(N) >> p) #define FI FORCE_INLINE // Define types based on largest bit width stored value required @@ -345,6 +367,7 @@ void toNative(xyze_pos_t &lpos); // // Paired XY coordinates, counters, flags, etc. +// Always has XY elements regardless of the number of configured axes. // template struct XYval { @@ -355,138 +378,116 @@ struct XYval { }; // Set all to 0 - FI void reset() { x = y = 0; } + FI void reset() { x = y = 0; } // Setters taking struct types and arrays #if HAS_X_AXIS - FI void set(const T px) { x = px; } + FI void set(const T px) { x = px; } #endif #if HAS_Y_AXIS - FI void set(const T px, const T py) { x = px; y = py; } - FI void set(const T (&arr)[XY]) { x = arr[0]; y = arr[1]; } + FI void set(const T px, const T py) { x = px; y = py; } + FI void set(const T (&arr)[XY]) { x = arr[0]; y = arr[1]; } #endif #if NUM_AXES > XY - FI void set(const T (&arr)[NUM_AXES]) { x = arr[0]; y = arr[1]; } + FI void set(const T (&arr)[NUM_AXES]) { x = arr[0]; y = arr[1]; } #endif #if LOGICAL_AXES > NUM_AXES - FI void set(const T (&arr)[LOGICAL_AXES]) { x = arr[0]; y = arr[1]; } + FI void set(const T (&arr)[LOGICAL_AXES]) { x = arr[0]; y = arr[1]; } #if DISTINCT_AXES > LOGICAL_AXES - FI void set(const T (&arr)[DISTINCT_AXES]) { x = arr[0]; y = arr[1]; } + FI void set(const T (&arr)[DISTINCT_AXES]) { x = arr[0]; y = arr[1]; } #endif #endif // Length reduced to one dimension - FI T magnitude() const { return (T)sqrtf(x*x + y*y); } + FI constexpr T magnitude() const { return (T)sqrtf(x*x + y*y); } // Pointer to the data as a simple array - FI operator T* () { return pos; } + FI operator T* () { return pos; } // If any element is true then it's true - FI operator bool() { return x || y; } + FI constexpr operator bool() const { return x || y; } // Smallest element - FI T small() const { return _MIN(x, y); } + FI constexpr T small() const { return _MIN(x, y); } // Largest element - FI T large() const { return _MAX(x, y); } + FI constexpr T large() const { return _MAX(x, y); } // Explicit copy and copies with conversion - FI XYval copy() const { return *this; } - FI XYval ABS() const { return { T(_ABS(x)), T(_ABS(y)) }; } - FI XYval asInt() { return { int16_t(x), int16_t(y) }; } - FI XYval asInt() const { return { int16_t(x), int16_t(y) }; } - FI XYval asLong() { return { int32_t(x), int32_t(y) }; } - FI XYval asLong() const { return { int32_t(x), int32_t(y) }; } - FI XYval ROUNDL() { return { int32_t(LROUND(x)), int32_t(LROUND(y)) }; } - FI XYval ROUNDL() const { return { int32_t(LROUND(x)), int32_t(LROUND(y)) }; } - FI XYval asFloat() { return { static_cast(x), static_cast(y) }; } - FI XYval asFloat() const { return { static_cast(x), static_cast(y) }; } - FI XYval reciprocal() const { return { _RECIP(x), _RECIP(y) }; } + FI constexpr XYval copy() const { return *this; } + FI constexpr XYval ABS() const { return { T(_ABS(x)), T(_ABS(y)) }; } + FI constexpr XYval asInt() const { return { int16_t(x), int16_t(y) }; } + FI constexpr XYval asLong() const { return { int32_t(x), int32_t(y) }; } + FI constexpr XYval ROUNDL() const { return { int32_t(LROUND(x)), int32_t(LROUND(y)) }; } + FI constexpr XYval asFloat() const { return { static_cast(x), static_cast(y) }; } + FI constexpr XYval reciprocal() const { return { _RECIP(x), _RECIP(y) }; } // Marlin workspace shifting is done with G92 and M206 - FI XYval asLogical() const { XYval o = asFloat(); toLogical(o); return o; } - FI XYval asNative() const { XYval o = asFloat(); toNative(o); return o; } + FI XYval asLogical() const { XYval o = asFloat(); toLogical(o); return o; } + FI XYval asNative() const { XYval o = asFloat(); toNative(o); return o; } // Cast to a type with more fields by making a new object - FI operator XYZval() { return { x, y }; } - FI operator XYZval() const { return { x, y }; } - FI operator XYZEval() { return { x, y }; } - FI operator XYZEval() const { return { x, y }; } + FI constexpr operator XYZval() const { return { x, y }; } + FI constexpr operator XYZEval() const { return { x, y }; } // Accessor via an AxisEnum (or any integer) [index] - FI T& operator[](const int n) { return pos[n]; } - FI const T& operator[](const int n) const { return pos[n]; } + FI T& operator[](const int n) { return pos[n]; } + FI const T& operator[](const int n) const { return pos[n]; } // Assignment operator overrides do the expected thing - FI XYval& operator= (const T v) { set(v, v ); return *this; } - FI XYval& operator= (const XYZval &rs) { set(rs.x, rs.y); return *this; } - FI XYval& operator= (const XYZEval &rs) { set(rs.x, rs.y); return *this; } + FI XYval& operator= (const T v) { set(v, v); return *this; } + FI XYval& operator= (const XYZval &rs) { set(XY_LIST(rs.x, rs.y)); return *this; } + FI XYval& operator= (const XYZEval &rs) { set(XY_LIST(rs.x, rs.y)); return *this; } // Override other operators to get intuitive behaviors - FI XYval operator+ (const XYval &rs) const { XYval ls = *this; ls.x += rs.x; ls.y += rs.y; return ls; } - FI XYval operator+ (const XYval &rs) { XYval ls = *this; ls.x += rs.x; ls.y += rs.y; return ls; } - FI XYval operator- (const XYval &rs) const { XYval ls = *this; ls.x -= rs.x; ls.y -= rs.y; return ls; } - FI XYval operator- (const XYval &rs) { XYval ls = *this; ls.x -= rs.x; ls.y -= rs.y; return ls; } - FI XYval operator* (const XYval &rs) const { XYval ls = *this; ls.x *= rs.x; ls.y *= rs.y; return ls; } - FI XYval operator* (const XYval &rs) { XYval ls = *this; ls.x *= rs.x; ls.y *= rs.y; return ls; } - FI XYval operator/ (const XYval &rs) const { XYval ls = *this; ls.x /= rs.x; ls.y /= rs.y; return ls; } - FI XYval operator/ (const XYval &rs) { XYval ls = *this; ls.x /= rs.x; ls.y /= rs.y; return ls; } - FI XYval operator+ (const XYZval &rs) const { XYval ls = *this; ls.x += rs.x; ls.y += rs.y; return ls; } - FI XYval operator+ (const XYZval &rs) { XYval ls = *this; ls.x += rs.x; ls.y += rs.y; return ls; } - FI XYval operator- (const XYZval &rs) const { XYval ls = *this; ls.x -= rs.x; ls.y -= rs.y; return ls; } - FI XYval operator- (const XYZval &rs) { XYval ls = *this; ls.x -= rs.x; ls.y -= rs.y; return ls; } - FI XYval operator* (const XYZval &rs) const { XYval ls = *this; ls.x *= rs.x; ls.y *= rs.y; return ls; } - FI XYval operator* (const XYZval &rs) { XYval ls = *this; ls.x *= rs.x; ls.y *= rs.y; return ls; } - FI XYval operator/ (const XYZval &rs) const { XYval ls = *this; ls.x /= rs.x; ls.y /= rs.y; return ls; } - FI XYval operator/ (const XYZval &rs) { XYval ls = *this; ls.x /= rs.x; ls.y /= rs.y; return ls; } - FI XYval operator+ (const XYZEval &rs) const { XYval ls = *this; ls.x += rs.x; ls.y += rs.y; return ls; } - FI XYval operator+ (const XYZEval &rs) { XYval ls = *this; ls.x += rs.x; ls.y += rs.y; return ls; } - FI XYval operator- (const XYZEval &rs) const { XYval ls = *this; ls.x -= rs.x; ls.y -= rs.y; return ls; } - FI XYval operator- (const XYZEval &rs) { XYval ls = *this; ls.x -= rs.x; ls.y -= rs.y; return ls; } - FI XYval operator* (const XYZEval &rs) const { XYval ls = *this; ls.x *= rs.x; ls.y *= rs.y; return ls; } - FI XYval operator* (const XYZEval &rs) { XYval ls = *this; ls.x *= rs.x; ls.y *= rs.y; return ls; } - FI XYval operator/ (const XYZEval &rs) const { XYval ls = *this; ls.x /= rs.x; ls.y /= rs.y; return ls; } - FI XYval operator/ (const XYZEval &rs) { XYval ls = *this; ls.x /= rs.x; ls.y /= rs.y; return ls; } - FI XYval operator* (const float &p) const { XYval ls = *this; ls.x *= p; ls.y *= p; return ls; } - FI XYval operator* (const float &p) { XYval ls = *this; ls.x *= p; ls.y *= p; return ls; } - FI XYval operator* (const int &p) const { XYval ls = *this; ls.x *= p; ls.y *= p; return ls; } - FI XYval operator* (const int &p) { XYval ls = *this; ls.x *= p; ls.y *= p; return ls; } - FI XYval operator/ (const float &p) const { XYval ls = *this; ls.x /= p; ls.y /= p; return ls; } - FI XYval operator/ (const float &p) { XYval ls = *this; ls.x /= p; ls.y /= p; return ls; } - FI XYval operator/ (const int &p) const { XYval ls = *this; ls.x /= p; ls.y /= p; return ls; } - FI XYval operator/ (const int &p) { XYval ls = *this; ls.x /= p; ls.y /= p; return ls; } - FI XYval operator>>(const int &p) const { XYval ls = *this; _RS(ls.x); _RS(ls.y); return ls; } - FI XYval operator>>(const int &p) { XYval ls = *this; _RS(ls.x); _RS(ls.y); return ls; } - FI XYval operator<<(const int &p) const { XYval ls = *this; _LS(ls.x); _LS(ls.y); return ls; } - FI XYval operator<<(const int &p) { XYval ls = *this; _LS(ls.x); _LS(ls.y); return ls; } - FI const XYval operator-() const { XYval o = *this; o.x = -x; o.y = -y; return o; } - FI XYval operator-() { XYval o = *this; o.x = -x; o.y = -y; return o; } + #define XY_OP(OP) { x TERN_(HAS_X_AXIS, OP rs.x), y TERN_(HAS_Y_AXIS, OP rs.y) } + FI constexpr XYval operator+ (const XYval &rs) const { return { x + rs.x, y + rs.y }; } + FI constexpr XYval operator- (const XYval &rs) const { return { x - rs.x, y - rs.y }; } + FI constexpr XYval operator* (const XYval &rs) const { return { x * rs.x, y * rs.y }; } + FI constexpr XYval operator/ (const XYval &rs) const { return { x / rs.x, y / rs.y }; } + FI constexpr XYval operator+ (const XYZval &rs) const { return { XY_OP(+) }; } + FI constexpr XYval operator- (const XYZval &rs) const { return { XY_OP(-) }; } + FI constexpr XYval operator* (const XYZval &rs) const { return { XY_OP(*) }; } + FI constexpr XYval operator/ (const XYZval &rs) const { return { XY_OP(/) }; } + FI constexpr XYval operator+ (const XYZEval &rs) const { return { XY_OP(+) }; } + FI constexpr XYval operator- (const XYZEval &rs) const { return { XY_OP(-) }; } + FI constexpr XYval operator* (const XYZEval &rs) const { return { XY_OP(*) }; } + FI constexpr XYval operator/ (const XYZEval &rs) const { return { XY_OP(/) }; } + FI constexpr XYval operator* (const float &p) const { return { x * p, y * p }; } + FI constexpr XYval operator* (const int &p) const { return { x * p, y * p }; } + FI constexpr XYval operator/ (const float &p) const { return { x / p, y / p }; } + FI constexpr XYval operator/ (const int &p) const { return { x / p, y / p }; } + FI constexpr XYval operator>>(const int &p) const { return { _RS(x), _RS(y) }; } + FI constexpr XYval operator<<(const int &p) const { return { _LS(x), _LS(y) }; } + FI constexpr XYval operator-() const { return { -x, -y }; } + #undef XY_OP // Modifier operators - FI XYval& operator+=(const XYval &rs) { x += rs.x; y += rs.y; return *this; } - FI XYval& operator-=(const XYval &rs) { x -= rs.x; y -= rs.y; return *this; } - FI XYval& operator*=(const XYval &rs) { x *= rs.x; y *= rs.y; return *this; } - FI XYval& operator/=(const XYval &rs) { x /= rs.x; y /= rs.y; return *this; } - FI XYval& operator+=(const XYZval &rs) { NUM_AXIS_CODE(x += rs.x, y += rs.y,,,,,,, ); return *this; } - FI XYval& operator-=(const XYZval &rs) { NUM_AXIS_CODE(x -= rs.x, y -= rs.y,,,,,,, ); return *this; } - FI XYval& operator*=(const XYZval &rs) { NUM_AXIS_CODE(x *= rs.x, y *= rs.y,,,,,,, ); return *this; } - FI XYval& operator/=(const XYZval &rs) { NUM_AXIS_CODE(x /= rs.x, y /= rs.y,,,,,,, ); return *this; } - FI XYval& operator+=(const XYZEval &rs) { NUM_AXIS_CODE(x += rs.x, y += rs.y,,,,,,, ); return *this; } - FI XYval& operator-=(const XYZEval &rs) { NUM_AXIS_CODE(x -= rs.x, y -= rs.y,,,,,,, ); return *this; } - FI XYval& operator*=(const XYZEval &rs) { NUM_AXIS_CODE(x *= rs.x, y *= rs.y,,,,,,, ); return *this; } - FI XYval& operator/=(const XYZEval &rs) { NUM_AXIS_CODE(x /= rs.x, y /= rs.y,,,,,,, ); return *this; } - FI XYval& operator*=(const float &p) { x *= p; y *= p; return *this; } - FI XYval& operator*=(const int &p) { x *= p; y *= p; return *this; } - FI XYval& operator>>=(const int &p) { _RS(x); _RS(y); return *this; } - FI XYval& operator<<=(const int &p) { _LS(x); _LS(y); return *this; } + FI XYval& operator+=(const XYval &rs) { x += rs.x; y += rs.y; return *this; } + FI XYval& operator-=(const XYval &rs) { x -= rs.x; y -= rs.y; return *this; } + FI XYval& operator*=(const XYval &rs) { x *= rs.x; y *= rs.y; return *this; } + FI XYval& operator/=(const XYval &rs) { x /= rs.x; y /= rs.y; return *this; } + FI XYval& operator+=(const XYZval &rs) { XY_CODE(x += rs.x, y += rs.y); return *this; } + FI XYval& operator-=(const XYZval &rs) { XY_CODE(x -= rs.x, y -= rs.y); return *this; } + FI XYval& operator*=(const XYZval &rs) { XY_CODE(x *= rs.x, y *= rs.y); return *this; } + FI XYval& operator/=(const XYZval &rs) { XY_CODE(x /= rs.x, y /= rs.y); return *this; } + FI XYval& operator+=(const XYZEval &rs) { XY_CODE(x += rs.x, y += rs.y); return *this; } + FI XYval& operator-=(const XYZEval &rs) { XY_CODE(x -= rs.x, y -= rs.y); return *this; } + FI XYval& operator*=(const XYZEval &rs) { XY_CODE(x *= rs.x, y *= rs.y); return *this; } + FI XYval& operator/=(const XYZEval &rs) { XY_CODE(x /= rs.x, y /= rs.y); return *this; } + FI XYval& operator*=(const float &p) { x *= p; y *= p; return *this; } + FI XYval& operator*=(const int &p) { x *= p; y *= p; return *this; } + FI XYval& operator>>=(const int &p) { _RSE(x); _RSE(y); return *this; } + FI XYval& operator<<=(const int &p) { _LSE(x); _LSE(y); return *this; } // Exact comparisons. For floats a "NEAR" operation may be better. - FI bool operator==(const XYval &rs) const { return true NUM_AXIS_GANG(&& x == rs.x, && y == rs.y,,,,,,, ); } - FI bool operator==(const XYZval &rs) const { return true NUM_AXIS_GANG(&& x == rs.x, && y == rs.y,,,,,,, ); } - FI bool operator==(const XYZEval &rs) const { return true NUM_AXIS_GANG(&& x == rs.x, && y == rs.y,,,,,,, ); } - FI bool operator!=(const XYval &rs) const { return !operator==(rs); } - FI bool operator!=(const XYZval &rs) const { return !operator==(rs); } - FI bool operator!=(const XYZEval &rs) const { return !operator==(rs); } + FI bool operator==(const XYval &rs) const { return x == rs.x && y == rs.y; } + FI bool operator==(const XYZval &rs) const { return ENABLED(HAS_X_AXIS) XY_GANG(&& x == rs.x, && y == rs.y); } + FI bool operator==(const XYZEval &rs) const { return ENABLED(HAS_X_AXIS) XY_GANG(&& x == rs.x, && y == rs.y); } + FI bool operator!=(const XYval &rs) const { return !operator==(rs); } + FI bool operator!=(const XYZval &rs) const { return !operator==(rs); } + FI bool operator!=(const XYZEval &rs) const { return !operator==(rs); } }; // // Linear Axes coordinates, counters, flags, etc. +// May have any number of axes according to configuration, including zero axes. // template struct XYZval { @@ -502,12 +503,12 @@ struct XYZval { FI void reset() { NUM_AXIS_CODE(x = 0, y = 0, z = 0, i = 0, j = 0, k = 0, u = 0, v = 0, w = 0); } // Setters taking struct types and arrays - FI void set(const XYval pxy) { NUM_AXIS_CODE(x = pxy.x, y = pxy.y,,,,,,,); } - FI void set(const XYval pxy, const T pz) { NUM_AXIS_CODE(x = pxy.x, y = pxy.y, z = pz,,,,,,); } + FI void set(const XYval pxy) { XY_CODE(x = pxy.x, y = pxy.y); } + FI void set(const XYval pxy, const T pz) { XYZ_CODE(x = pxy.x, y = pxy.y, z = pz); } FI void set(const T (&arr)[NUM_AXES]) { NUM_AXIS_CODE(x = arr[0], y = arr[1], z = arr[2], i = arr[3], j = arr[4], k = arr[5], u = arr[6], v = arr[7], w = arr[8]); } #if LOGICAL_AXES > NUM_AXES FI void set(const T (&arr)[LOGICAL_AXES]) { NUM_AXIS_CODE(x = arr[0], y = arr[1], z = arr[2], i = arr[3], j = arr[4], k = arr[5], u = arr[6], v = arr[7], w = arr[8]); } - FI void set(LOGICAL_AXIS_ARGS(const T)) { NUM_AXIS_CODE(a = x, b = y, c = z, _i = i, _j = j, _k = k, _u = u, _v = v, _w = w ); } + FI void set(LOGICAL_AXIS_ARGS(const T)) { NUM_AXIS_CODE(a = x, b = y, c = z, _i = i, _j = j, _k = k, _u = u, _v = v, _w = w); } #if DISTINCT_AXES > LOGICAL_AXES FI void set(const T (&arr)[DISTINCT_AXES]) { NUM_AXIS_CODE(x = arr[0], y = arr[1], z = arr[2], i = arr[3], j = arr[4], k = arr[5], u = arr[6], v = arr[7], w = arr[8]); } #endif @@ -543,114 +544,93 @@ struct XYZval { #endif // Length reduced to one dimension - FI T magnitude() const { return (T)TERN(HAS_X_AXIS, sqrtf(NUM_AXIS_GANG(x*x, + y*y, + z*z, + i*i, + j*j, + k*k, + u*u, + v*v, + w*w)), 0); } + FI constexpr T magnitude() const { return (T)TERN(HAS_X_AXIS, sqrtf(NUM_AXIS_GANG(x*x, + y*y, + z*z, + i*i, + j*j, + k*k, + u*u, + v*v, + w*w)), 0); } // Pointer to the data as a simple array - FI operator T* () { return (T*)this; } + FI operator T* () { return pos; } // If any element is true then it's true - FI operator bool() { return 0 NUM_AXIS_GANG(|| x, || y, || z, || i, || j, || k, || u, || v, || w); } + FI constexpr operator bool() const { return 0 NUM_AXIS_GANG(|| x, || y, || z, || i, || j, || k, || u, || v, || w); } // Smallest element - FI T small() const { return TERN(HAS_X_AXIS,_MIN(NUM_AXIS_LIST(x, y, z, i, j, k, u, v, w));,0;) } + FI constexpr T small() const { return TERN(HAS_X_AXIS, _MIN(NUM_AXIS_LIST(x, y, z, i, j, k, u, v, w)), 0); } // Largest element - FI T large() const { return TERN(HAS_X_AXIS,_MAX(NUM_AXIS_LIST(x, y, z, i, j, k, u, v, w));,0;) } + FI constexpr T large() const { return TERN(HAS_X_AXIS, _MAX(NUM_AXIS_LIST(x, y, z, i, j, k, u, v, w)), 0); } // Explicit copy and copies with conversion - FI XYZval copy() const { XYZval o = *this; return o; } - FI XYZval ABS() const { return NUM_AXIS_ARRAY(T(_ABS(x)), T(_ABS(y)), T(_ABS(z)), T(_ABS(i)), T(_ABS(j)), T(_ABS(k)), T(_ABS(u)), T(_ABS(v)), T(_ABS(w))); } - FI XYZval asInt() { return NUM_AXIS_ARRAY(int16_t(x), int16_t(y), int16_t(z), int16_t(i), int16_t(j), int16_t(k), int16_t(u), int16_t(v), int16_t(w)); } - FI XYZval asInt() const { return NUM_AXIS_ARRAY(int16_t(x), int16_t(y), int16_t(z), int16_t(i), int16_t(j), int16_t(k), int16_t(u), int16_t(v), int16_t(w)); } - FI XYZval asLong() { return NUM_AXIS_ARRAY(int32_t(x), int32_t(y), int32_t(z), int32_t(i), int32_t(j), int32_t(k), int32_t(u), int32_t(v), int32_t(w)); } - FI XYZval asLong() const { return NUM_AXIS_ARRAY(int32_t(x), int32_t(y), int32_t(z), int32_t(i), int32_t(j), int32_t(k), int32_t(u), int32_t(v), int32_t(w)); } - FI XYZval ROUNDL() { return NUM_AXIS_ARRAY(int32_t(LROUND(x)), int32_t(LROUND(y)), int32_t(LROUND(z)), int32_t(LROUND(i)), int32_t(LROUND(j)), int32_t(LROUND(k)), int32_t(LROUND(u)), int32_t(LROUND(v)), int32_t(LROUND(w))); } - FI XYZval ROUNDL() const { return NUM_AXIS_ARRAY(int32_t(LROUND(x)), int32_t(LROUND(y)), int32_t(LROUND(z)), int32_t(LROUND(i)), int32_t(LROUND(j)), int32_t(LROUND(k)), int32_t(LROUND(u)), int32_t(LROUND(v)), int32_t(LROUND(w))); } - FI XYZval asFloat() { return NUM_AXIS_ARRAY(static_cast(x), static_cast(y), static_cast(z), static_cast(i), static_cast(j), static_cast(k), static_cast(u), static_cast(v), static_cast(w)); } - FI XYZval asFloat() const { return NUM_AXIS_ARRAY(static_cast(x), static_cast(y), static_cast(z), static_cast(i), static_cast(j), static_cast(k), static_cast(u), static_cast(v), static_cast(w)); } - FI XYZval reciprocal() const { return NUM_AXIS_ARRAY(_RECIP(x), _RECIP(y), _RECIP(z), _RECIP(i), _RECIP(j), _RECIP(k), _RECIP(u), _RECIP(v), _RECIP(w)); } + FI constexpr XYZval copy() const { XYZval o = *this; return o; } + FI constexpr XYZval ABS() const { return NUM_AXIS_ARRAY(T(_ABS(x)), T(_ABS(y)), T(_ABS(z)), T(_ABS(i)), T(_ABS(j)), T(_ABS(k)), T(_ABS(u)), T(_ABS(v)), T(_ABS(w))); } + FI constexpr XYZval asInt() const { return NUM_AXIS_ARRAY(int16_t(x), int16_t(y), int16_t(z), int16_t(i), int16_t(j), int16_t(k), int16_t(u), int16_t(v), int16_t(w)); } + FI constexpr XYZval asLong() const { return NUM_AXIS_ARRAY(int32_t(x), int32_t(y), int32_t(z), int32_t(i), int32_t(j), int32_t(k), int32_t(u), int32_t(v), int32_t(w)); } + FI constexpr XYZval ROUNDL() const { return NUM_AXIS_ARRAY(int32_t(LROUND(x)), int32_t(LROUND(y)), int32_t(LROUND(z)), int32_t(LROUND(i)), int32_t(LROUND(j)), int32_t(LROUND(k)), int32_t(LROUND(u)), int32_t(LROUND(v)), int32_t(LROUND(w))); } + FI constexpr XYZval asFloat() const { return NUM_AXIS_ARRAY(static_cast(x), static_cast(y), static_cast(z), static_cast(i), static_cast(j), static_cast(k), static_cast(u), static_cast(v), static_cast(w)); } + FI constexpr XYZval reciprocal() const { return NUM_AXIS_ARRAY(_RECIP(x), _RECIP(y), _RECIP(z), _RECIP(i), _RECIP(j), _RECIP(k), _RECIP(u), _RECIP(v), _RECIP(w)); } // Marlin workspace shifting is done with G92 and M206 - FI XYZval asLogical() const { XYZval o = asFloat(); toLogical(o); return o; } - FI XYZval asNative() const { XYZval o = asFloat(); toNative(o); return o; } + FI XYZval asLogical() const { XYZval o = asFloat(); toLogical(o); return o; } + FI XYZval asNative() const { XYZval o = asFloat(); toNative(o); return o; } // In-place cast to types having fewer fields - FI operator XYval&() { return *(XYval*)this; } - FI operator const XYval&() const { return *(const XYval*)this; } + FI operator XYval&() { return *(XYval*)this; } + FI operator const XYval&() const { return *(const XYval*)this; } // Cast to a type with more fields by making a new object - FI operator XYZEval() const { return NUM_AXIS_ARRAY(x, y, z, i, j, k, u, v, w); } + FI constexpr operator XYZEval() const { return NUM_AXIS_ARRAY(x, y, z, i, j, k, u, v, w); } // Accessor via an AxisEnum (or any integer) [index] - FI T& operator[](const int n) { return pos[n]; } - FI const T& operator[](const int n) const { return pos[n]; } + FI T& operator[](const int n) { return pos[n]; } + FI const T& operator[](const int n) const { return pos[n]; } // Assignment operator overrides do the expected thing - FI XYZval& operator= (const T v) { set(ARRAY_N_1(NUM_AXES, v)); return *this; } - FI XYZval& operator= (const XYval &rs) { set(rs.x, rs.y ); return *this; } - FI XYZval& operator= (const XYZEval &rs) { set(NUM_AXIS_ELEM(rs)); return *this; } + FI XYZval& operator= (const T v) { set(ARRAY_N_1(NUM_AXES, v)); return *this; } + FI XYZval& operator= (const XYval &rs) { set(rs.x, rs.y); return *this; } + FI XYZval& operator= (const XYZEval &rs) { set(NUM_AXIS_ELEM(rs)); return *this; } // Override other operators to get intuitive behaviors - FI XYZval operator+ (const XYval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x += rs.x, ls.y += rs.y,,,,,,, ); return ls; } - FI XYZval operator+ (const XYval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x += rs.x, ls.y += rs.y,,,,,,, ); return ls; } - FI XYZval operator- (const XYval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x -= rs.x, ls.y -= rs.y,,,,,,, ); return ls; } - FI XYZval operator- (const XYval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x -= rs.x, ls.y -= rs.y,,,,,,, ); return ls; } - FI XYZval operator* (const XYval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x *= rs.x, ls.y *= rs.y,,,,,,, ); return ls; } - FI XYZval operator* (const XYval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x *= rs.x, ls.y *= rs.y,,,,,,, ); return ls; } - FI XYZval operator/ (const XYval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x /= rs.x, ls.y /= rs.y,,,,,,, ); return ls; } - FI XYZval operator/ (const XYval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x /= rs.x, ls.y /= rs.y,,,,,,, ); return ls; } - FI XYZval operator+ (const XYZval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x += rs.x, ls.y += rs.y, ls.z += rs.z, ls.i += rs.i, ls.j += rs.j, ls.k += rs.k, ls.u += rs.u, ls.v += rs.v, ls.w += rs.w); return ls; } - FI XYZval operator+ (const XYZval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x += rs.x, ls.y += rs.y, ls.z += rs.z, ls.i += rs.i, ls.j += rs.j, ls.k += rs.k, ls.u += rs.u, ls.v += rs.v, ls.w += rs.w); return ls; } - FI XYZval operator- (const XYZval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x -= rs.x, ls.y -= rs.y, ls.z -= rs.z, ls.i -= rs.i, ls.j -= rs.j, ls.k -= rs.k, ls.u -= rs.u, ls.v -= rs.v, ls.w -= rs.w); return ls; } - FI XYZval operator- (const XYZval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x -= rs.x, ls.y -= rs.y, ls.z -= rs.z, ls.i -= rs.i, ls.j -= rs.j, ls.k -= rs.k, ls.u -= rs.u, ls.v -= rs.v, ls.w -= rs.w); return ls; } - FI XYZval operator* (const XYZval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x *= rs.x, ls.y *= rs.y, ls.z *= rs.z, ls.i *= rs.i, ls.j *= rs.j, ls.k *= rs.k, ls.u *= rs.u, ls.v *= rs.v, ls.w *= rs.w); return ls; } - FI XYZval operator* (const XYZval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x *= rs.x, ls.y *= rs.y, ls.z *= rs.z, ls.i *= rs.i, ls.j *= rs.j, ls.k *= rs.k, ls.u *= rs.u, ls.v *= rs.v, ls.w *= rs.w); return ls; } - FI XYZval operator/ (const XYZval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x /= rs.x, ls.y /= rs.y, ls.z /= rs.z, ls.i /= rs.i, ls.j /= rs.j, ls.k /= rs.k, ls.u /= rs.u, ls.v /= rs.v, ls.w /= rs.w); return ls; } - FI XYZval operator/ (const XYZval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x /= rs.x, ls.y /= rs.y, ls.z /= rs.z, ls.i /= rs.i, ls.j /= rs.j, ls.k /= rs.k, ls.u /= rs.u, ls.v /= rs.v, ls.w /= rs.w); return ls; } - FI XYZval operator+ (const XYZEval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x += rs.x, ls.y += rs.y, ls.z += rs.z, ls.i += rs.i, ls.j += rs.j, ls.k += rs.k, ls.u += rs.u, ls.v += rs.v, ls.w += rs.w); return ls; } - FI XYZval operator+ (const XYZEval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x += rs.x, ls.y += rs.y, ls.z += rs.z, ls.i += rs.i, ls.j += rs.j, ls.k += rs.k, ls.u += rs.u, ls.v += rs.v, ls.w += rs.w); return ls; } - FI XYZval operator- (const XYZEval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x -= rs.x, ls.y -= rs.y, ls.z -= rs.z, ls.i -= rs.i, ls.j -= rs.j, ls.k -= rs.k, ls.u -= rs.u, ls.v -= rs.v, ls.w -= rs.w); return ls; } - FI XYZval operator- (const XYZEval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x -= rs.x, ls.y -= rs.y, ls.z -= rs.z, ls.i -= rs.i, ls.j -= rs.j, ls.k -= rs.k, ls.u -= rs.u, ls.v -= rs.v, ls.w -= rs.w); return ls; } - FI XYZval operator* (const XYZEval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x *= rs.x, ls.y *= rs.y, ls.z *= rs.z, ls.i *= rs.i, ls.j *= rs.j, ls.k *= rs.k, ls.u *= rs.u, ls.v *= rs.v, ls.w *= rs.w); return ls; } - FI XYZval operator* (const XYZEval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x *= rs.x, ls.y *= rs.y, ls.z *= rs.z, ls.i *= rs.i, ls.j *= rs.j, ls.k *= rs.k, ls.u *= rs.u, ls.v *= rs.v, ls.w *= rs.w); return ls; } - FI XYZval operator/ (const XYZEval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x /= rs.x, ls.y /= rs.y, ls.z /= rs.z, ls.i /= rs.i, ls.j /= rs.j, ls.k /= rs.k, ls.u /= rs.u, ls.v /= rs.v, ls.w /= rs.w); return ls; } - FI XYZval operator/ (const XYZEval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x /= rs.x, ls.y /= rs.y, ls.z /= rs.z, ls.i /= rs.i, ls.j /= rs.j, ls.k /= rs.k, ls.u /= rs.u, ls.v /= rs.v, ls.w /= rs.w); return ls; } - FI XYZval operator* (const float &p) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x *= p, ls.y *= p, ls.z *= p, ls.i *= p, ls.j *= p, ls.k *= p, ls.u *= p, ls.v *= p, ls.w *= p ); return ls; } - FI XYZval operator* (const float &p) { XYZval ls = *this; NUM_AXIS_CODE(ls.x *= p, ls.y *= p, ls.z *= p, ls.i *= p, ls.j *= p, ls.k *= p, ls.u *= p, ls.v *= p, ls.w *= p ); return ls; } - FI XYZval operator* (const int &p) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x *= p, ls.y *= p, ls.z *= p, ls.i *= p, ls.j *= p, ls.k *= p, ls.u *= p, ls.v *= p, ls.w *= p ); return ls; } - FI XYZval operator* (const int &p) { XYZval ls = *this; NUM_AXIS_CODE(ls.x *= p, ls.y *= p, ls.z *= p, ls.i *= p, ls.j *= p, ls.k *= p, ls.u *= p, ls.v *= p, ls.w *= p ); return ls; } - FI XYZval operator/ (const float &p) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x /= p, ls.y /= p, ls.z /= p, ls.i /= p, ls.j /= p, ls.k /= p, ls.u /= p, ls.v /= p, ls.w /= p ); return ls; } - FI XYZval operator/ (const float &p) { XYZval ls = *this; NUM_AXIS_CODE(ls.x /= p, ls.y /= p, ls.z /= p, ls.i /= p, ls.j /= p, ls.k /= p, ls.u /= p, ls.v /= p, ls.w /= p ); return ls; } - FI XYZval operator/ (const int &p) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x /= p, ls.y /= p, ls.z /= p, ls.i /= p, ls.j /= p, ls.k /= p, ls.u /= p, ls.v /= p, ls.w /= p ); return ls; } - FI XYZval operator/ (const int &p) { XYZval ls = *this; NUM_AXIS_CODE(ls.x /= p, ls.y /= p, ls.z /= p, ls.i /= p, ls.j /= p, ls.k /= p, ls.u /= p, ls.v /= p, ls.w /= p ); return ls; } - FI XYZval operator>>(const int &p) const { XYZval ls = *this; NUM_AXIS_CODE(_RS(ls.x), _RS(ls.y), _RS(ls.z), _RS(ls.i), _RS(ls.j), _RS(ls.k), _RS(ls.u), _RS(ls.v), _RS(ls.w) ); return ls; } - FI XYZval operator>>(const int &p) { XYZval ls = *this; NUM_AXIS_CODE(_RS(ls.x), _RS(ls.y), _RS(ls.z), _RS(ls.i), _RS(ls.j), _RS(ls.k), _RS(ls.u), _RS(ls.v), _RS(ls.w) ); return ls; } - FI XYZval operator<<(const int &p) const { XYZval ls = *this; NUM_AXIS_CODE(_LS(ls.x), _LS(ls.y), _LS(ls.z), _LS(ls.i), _LS(ls.j), _LS(ls.k), _LS(ls.u), _LS(ls.v), _LS(ls.w) ); return ls; } - FI XYZval operator<<(const int &p) { XYZval ls = *this; NUM_AXIS_CODE(_LS(ls.x), _LS(ls.y), _LS(ls.z), _LS(ls.i), _LS(ls.j), _LS(ls.k), _LS(ls.u), _LS(ls.v), _LS(ls.w) ); return ls; } - FI const XYZval operator-() const { XYZval o = *this; NUM_AXIS_CODE(o.x = -x, o.y = -y, o.z = -z, o.i = -i, o.j = -j, o.k = -k, o.u = -u, o.v = -v, o.w = -w); return o; } - FI XYZval operator-() { XYZval o = *this; NUM_AXIS_CODE(o.x = -x, o.y = -y, o.z = -z, o.i = -i, o.j = -j, o.k = -k, o.u = -u, o.v = -v, o.w = -w); return o; } + FI constexpr XYZval operator+ (const XYval &rs) const { return NUM_AXIS_ARRAY(x + rs.x, y + rs.y, z, i, j, k, u, v, w ); } + FI constexpr XYZval operator- (const XYval &rs) const { return NUM_AXIS_ARRAY(x - rs.x, y - rs.y, z, i, j, k, u, v, w ); } + FI constexpr XYZval operator* (const XYval &rs) const { return NUM_AXIS_ARRAY(x * rs.x, y * rs.y, z, i, j, k, u, v, w ); } + FI constexpr XYZval operator/ (const XYval &rs) const { return NUM_AXIS_ARRAY(x / rs.x, y / rs.y, z, i, j, k, u, v, w ); } + FI constexpr XYZval operator+ (const XYZval &rs) const { return NUM_AXIS_ARRAY(x + rs.x, y + rs.y, z + rs.z, i + rs.i, j + rs.j, k + rs.k, u + rs.u, v + rs.v, w + rs.w ); } + FI constexpr XYZval operator- (const XYZval &rs) const { return NUM_AXIS_ARRAY(x - rs.x, y - rs.y, z - rs.z, i - rs.i, j - rs.j, k - rs.k, u - rs.u, v - rs.v, w - rs.w ); } + FI constexpr XYZval operator* (const XYZval &rs) const { return NUM_AXIS_ARRAY(x * rs.x, y * rs.y, z * rs.z, i * rs.i, j * rs.j, k * rs.k, u * rs.u, v * rs.v, w * rs.w ); } + FI constexpr XYZval operator/ (const XYZval &rs) const { return NUM_AXIS_ARRAY(x / rs.x, y / rs.y, z / rs.z, i / rs.i, j / rs.j, k / rs.k, u / rs.u, v / rs.v, w / rs.w ); } + FI constexpr XYZval operator+ (const XYZEval &rs) const { return NUM_AXIS_ARRAY(x + rs.x, y + rs.y, z + rs.z, i + rs.i, j + rs.j, k + rs.k, u + rs.u, v + rs.v, w + rs.w ); } + FI constexpr XYZval operator- (const XYZEval &rs) const { return NUM_AXIS_ARRAY(x - rs.x, y - rs.y, z - rs.z, i - rs.i, j - rs.j, k - rs.k, u - rs.u, v - rs.v, w - rs.w ); } + FI constexpr XYZval operator* (const XYZEval &rs) const { return NUM_AXIS_ARRAY(x * rs.x, y * rs.y, z * rs.z, i * rs.i, j * rs.j, k * rs.k, u * rs.u, v * rs.v, w * rs.w ); } + FI constexpr XYZval operator/ (const XYZEval &rs) const { return NUM_AXIS_ARRAY(x / rs.x, y / rs.y, z / rs.z, i / rs.i, j / rs.j, k / rs.k, u / rs.u, v / rs.v, w / rs.w ); } + FI constexpr XYZval operator* (const float &p) const { return NUM_AXIS_ARRAY(x * p, y * p, z * p, i * p, j * p, k * p, u * p, v * p, w * p); } + FI constexpr XYZval operator* (const int &p) const { return NUM_AXIS_ARRAY(x * p, y * p, z * p, i * p, j * p, k * p, u * p, v * p, w * p); } + FI constexpr XYZval operator/ (const float &p) const { return NUM_AXIS_ARRAY(x / p, y / p, z / p, i / p, j / p, k / p, u / p, v / p, w / p); } + FI constexpr XYZval operator/ (const int &p) const { return NUM_AXIS_ARRAY(x / p, y / p, z / p, i / p, j / p, k / p, u / p, v / p, w / p); } + FI constexpr XYZval operator>>(const int &p) const { return NUM_AXIS_ARRAY(_RS(x), _RS(y), _RS(z), _RS(i), _RS(j), _RS(k), _RS(u), _RS(v), _RS(w)); } + FI constexpr XYZval operator<<(const int &p) const { return NUM_AXIS_ARRAY(_LS(x), _LS(y), _LS(z), _LS(i), _LS(j), _LS(k), _LS(u), _LS(v), _LS(w)); } + FI constexpr XYZval operator-() const { return NUM_AXIS_ARRAY(-x, -y, -z, -i, -j, -k, -u, -v, -w); } // Modifier operators - FI XYZval& operator+=(const XYval &rs) { NUM_AXIS_CODE(x += rs.x, y += rs.y,,,,,,, ); return *this; } - FI XYZval& operator-=(const XYval &rs) { NUM_AXIS_CODE(x -= rs.x, y -= rs.y,,,,,,, ); return *this; } - FI XYZval& operator*=(const XYval &rs) { NUM_AXIS_CODE(x *= rs.x, y *= rs.y,,,,,,, ); return *this; } - FI XYZval& operator/=(const XYval &rs) { NUM_AXIS_CODE(x /= rs.x, y /= rs.y,,,,,,, ); return *this; } - FI XYZval& operator+=(const XYZval &rs) { NUM_AXIS_CODE(x += rs.x, y += rs.y, z += rs.z, i += rs.i, j += rs.j, k += rs.k, u += rs.u, v += rs.v, w += rs.w); return *this; } - FI XYZval& operator-=(const XYZval &rs) { NUM_AXIS_CODE(x -= rs.x, y -= rs.y, z -= rs.z, i -= rs.i, j -= rs.j, k -= rs.k, u -= rs.u, v -= rs.v, w -= rs.w); return *this; } - FI XYZval& operator*=(const XYZval &rs) { NUM_AXIS_CODE(x *= rs.x, y *= rs.y, z *= rs.z, i *= rs.i, j *= rs.j, k *= rs.k, u *= rs.u, v *= rs.v, w *= rs.w); return *this; } - FI XYZval& operator/=(const XYZval &rs) { NUM_AXIS_CODE(x /= rs.x, y /= rs.y, z /= rs.z, i /= rs.i, j /= rs.j, k /= rs.k, u /= rs.u, v /= rs.v, w /= rs.w); return *this; } - FI XYZval& operator+=(const XYZEval &rs) { NUM_AXIS_CODE(x += rs.x, y += rs.y, z += rs.z, i += rs.i, j += rs.j, k += rs.k, u += rs.u, v += rs.v, w += rs.w); return *this; } - FI XYZval& operator-=(const XYZEval &rs) { NUM_AXIS_CODE(x -= rs.x, y -= rs.y, z -= rs.z, i -= rs.i, j -= rs.j, k -= rs.k, u -= rs.u, v -= rs.v, w -= rs.w); return *this; } - FI XYZval& operator*=(const XYZEval &rs) { NUM_AXIS_CODE(x *= rs.x, y *= rs.y, z *= rs.z, i *= rs.i, j *= rs.j, k *= rs.k, u *= rs.u, v *= rs.v, w *= rs.w); return *this; } - FI XYZval& operator/=(const XYZEval &rs) { NUM_AXIS_CODE(x /= rs.x, y /= rs.y, z /= rs.z, i /= rs.i, j /= rs.j, k /= rs.k, u /= rs.u, v /= rs.v, w /= rs.w); return *this; } - FI XYZval& operator*=(const float &p) { NUM_AXIS_CODE(x *= p, y *= p, z *= p, i *= p, j *= p, k *= p, u *= p, v *= p, w *= p); return *this; } - FI XYZval& operator*=(const int &p) { NUM_AXIS_CODE(x *= p, y *= p, z *= p, i *= p, j *= p, k *= p, u *= p, v *= p, w *= p); return *this; } - FI XYZval& operator>>=(const int &p) { NUM_AXIS_CODE(_RS(x), _RS(y), _RS(z), _RS(i), _RS(j), _RS(k), _RS(u), _RS(v), _RS(w)); return *this; } - FI XYZval& operator<<=(const int &p) { NUM_AXIS_CODE(_LS(x), _LS(y), _LS(z), _LS(i), _LS(j), _LS(k), _LS(u), _LS(v), _LS(w)); return *this; } + FI XYZval& operator+=(const XYval &rs) { XY_CODE(x += rs.x, y += rs.y); return *this; } + FI XYZval& operator-=(const XYval &rs) { XY_CODE(x -= rs.x, y -= rs.y); return *this; } + FI XYZval& operator*=(const XYval &rs) { XY_CODE(x *= rs.x, y *= rs.y); return *this; } + FI XYZval& operator/=(const XYval &rs) { XY_CODE(x /= rs.x, y /= rs.y); return *this; } + FI XYZval& operator+=(const XYZval &rs) { NUM_AXIS_CODE(x += rs.x, y += rs.y, z += rs.z, i += rs.i, j += rs.j, k += rs.k, u += rs.u, v += rs.v, w += rs.w); return *this; } + FI XYZval& operator-=(const XYZval &rs) { NUM_AXIS_CODE(x -= rs.x, y -= rs.y, z -= rs.z, i -= rs.i, j -= rs.j, k -= rs.k, u -= rs.u, v -= rs.v, w -= rs.w); return *this; } + FI XYZval& operator*=(const XYZval &rs) { NUM_AXIS_CODE(x *= rs.x, y *= rs.y, z *= rs.z, i *= rs.i, j *= rs.j, k *= rs.k, u *= rs.u, v *= rs.v, w *= rs.w); return *this; } + FI XYZval& operator/=(const XYZval &rs) { NUM_AXIS_CODE(x /= rs.x, y /= rs.y, z /= rs.z, i /= rs.i, j /= rs.j, k /= rs.k, u /= rs.u, v /= rs.v, w /= rs.w); return *this; } + FI XYZval& operator+=(const XYZEval &rs) { NUM_AXIS_CODE(x += rs.x, y += rs.y, z += rs.z, i += rs.i, j += rs.j, k += rs.k, u += rs.u, v += rs.v, w += rs.w); return *this; } + FI XYZval& operator-=(const XYZEval &rs) { NUM_AXIS_CODE(x -= rs.x, y -= rs.y, z -= rs.z, i -= rs.i, j -= rs.j, k -= rs.k, u -= rs.u, v -= rs.v, w -= rs.w); return *this; } + FI XYZval& operator*=(const XYZEval &rs) { NUM_AXIS_CODE(x *= rs.x, y *= rs.y, z *= rs.z, i *= rs.i, j *= rs.j, k *= rs.k, u *= rs.u, v *= rs.v, w *= rs.w); return *this; } + FI XYZval& operator/=(const XYZEval &rs) { NUM_AXIS_CODE(x /= rs.x, y /= rs.y, z /= rs.z, i /= rs.i, j /= rs.j, k /= rs.k, u /= rs.u, v /= rs.v, w /= rs.w); return *this; } + FI XYZval& operator*=(const float &p) { NUM_AXIS_CODE(x *= p, y *= p, z *= p, i *= p, j *= p, k *= p, u *= p, v *= p, w *= p); return *this; } + FI XYZval& operator*=(const int &p) { NUM_AXIS_CODE(x *= p, y *= p, z *= p, i *= p, j *= p, k *= p, u *= p, v *= p, w *= p); return *this; } + FI XYZval& operator>>=(const int &p) { NUM_AXIS_CODE(_RSE(x), _RSE(y), _RSE(z), _RSE(i), _RSE(j), _RSE(k), _RSE(u), _RSE(v), _RSE(w)); return *this; } + FI XYZval& operator<<=(const int &p) { NUM_AXIS_CODE(_LSE(x), _LSE(y), _LSE(z), _LSE(i), _LSE(j), _LSE(k), _LSE(u), _LSE(v), _LSE(w)); return *this; } // Exact comparisons. For floats a "NEAR" operation may be better. - FI bool operator==(const XYZEval &rs) const { return true NUM_AXIS_GANG(&& x == rs.x, && y == rs.y, && z == rs.z, && i == rs.i, && j == rs.j, && k == rs.k, && u == rs.u, && v == rs.v, && w == rs.w); } - FI bool operator!=(const XYZEval &rs) const { return !operator==(rs); } + FI bool operator==(const XYZEval &rs) const { return true NUM_AXIS_GANG(&& x == rs.x, && y == rs.y, && z == rs.z, && i == rs.i, && j == rs.j, && k == rs.k, && u == rs.u, && v == rs.v, && w == rs.w); } + FI bool operator!=(const XYZEval &rs) const { return !operator==(rs); } }; // // Logical Axes coordinates, counters, etc. +// May have any number of axes according to configuration, including zero axes. +// When there is no extruder, essentially identical to XYZval. // template struct XYZEval { @@ -663,9 +643,9 @@ struct XYZEval { FI void reset() { LOGICAL_AXIS_GANG(e =, x =, y =, z =, i =, j =, k =, u =, v =, w =) 0; } // Setters taking struct types and arrays - FI void set(const XYval pxy) { OPTCODE(HAS_X_AXIS, x = pxy.x) OPTCODE(HAS_Y_AXIS, y = pxy.y) } + FI void set(const XYval pxy) { XY_CODE(x = pxy.x, y = pxy.y); } + FI void set(const XYval pxy, const T pz) { XYZ_CODE(x = pxy.x, y = pxy.y, z = pz); } FI void set(const XYZval pxyz) { set(NUM_AXIS_ELEM(pxyz)); } - FI void set(const XYval pxy, const T pz) { set(pxy); TERN_(HAS_Z_AXIS, z = pz); } FI void set(const T (&arr)[NUM_AXES]) { NUM_AXIS_CODE(x = arr[0], y = arr[1], z = arr[2], i = arr[3], j = arr[4], k = arr[5], u = arr[6], v = arr[7], w = arr[8]); } #if LOGICAL_AXES > NUM_AXES FI void set(const T (&arr)[LOGICAL_AXES]) { LOGICAL_AXIS_CODE(e = arr[LOGICAL_AXES-1], x = arr[0], y = arr[1], z = arr[2], i = arr[3], j = arr[4], k = arr[5], u = arr[6], v = arr[7], w = arr[8]); } @@ -707,32 +687,28 @@ struct XYZEval { #endif // Length reduced to one dimension - FI T magnitude() const { return (T)sqrtf(LOGICAL_AXIS_GANG(+ e*e, + x*x, + y*y, + z*z, + i*i, + j*j, + k*k, + u*u, + v*v, + w*w)); } + FI constexpr T magnitude() const { return (T)sqrtf(LOGICAL_AXIS_GANG(+ e*e, + x*x, + y*y, + z*z, + i*i, + j*j, + k*k, + u*u, + v*v, + w*w)); } // Pointer to the data as a simple array - FI operator T* () { return pos; } + FI operator T* () { return pos; } // If any element is true then it's true - FI operator bool() { return 0 LOGICAL_AXIS_GANG(|| e, || x, || y, || z, || i, || j, || k, || u, || v, || w); } + FI constexpr operator bool() const { return 0 LOGICAL_AXIS_GANG(|| e, || x, || y, || z, || i, || j, || k, || u, || v, || w); } // Smallest element - FI T small() const { return _MIN(LOGICAL_AXIS_LIST(e, x, y, z, i, j, k, u, v, w)); } + FI constexpr T small() const { return _MIN(LOGICAL_AXIS_LIST(e, x, y, z, i, j, k, u, v, w)); } // Largest element - FI T large() const { return _MAX(LOGICAL_AXIS_LIST(e, x, y, z, i, j, k, u, v, w)); } + FI constexpr T large() const { return _MAX(LOGICAL_AXIS_LIST(e, x, y, z, i, j, k, u, v, w)); } // Explicit copy and copies with conversion - FI XYZEval copy() const { XYZEval v = *this; return v; } - FI XYZEval ABS() const { return LOGICAL_AXIS_ARRAY(T(_ABS(e)), T(_ABS(x)), T(_ABS(y)), T(_ABS(z)), T(_ABS(i)), T(_ABS(j)), T(_ABS(k)), T(_ABS(u)), T(_ABS(v)), T(_ABS(w))); } - FI XYZEval asInt() { return LOGICAL_AXIS_ARRAY(int16_t(e), int16_t(x), int16_t(y), int16_t(z), int16_t(i), int16_t(j), int16_t(k), int16_t(u), int16_t(v), int16_t(w)); } - FI XYZEval asInt() const { return LOGICAL_AXIS_ARRAY(int16_t(e), int16_t(x), int16_t(y), int16_t(z), int16_t(i), int16_t(j), int16_t(k), int16_t(u), int16_t(v), int16_t(w)); } - FI XYZEval asLong() { return LOGICAL_AXIS_ARRAY(int32_t(e), int32_t(x), int32_t(y), int32_t(z), int32_t(i), int32_t(j), int32_t(k), int32_t(u), int32_t(v), int32_t(w)); } - FI XYZEval asLong() const { return LOGICAL_AXIS_ARRAY(int32_t(e), int32_t(x), int32_t(y), int32_t(z), int32_t(i), int32_t(j), int32_t(k), int32_t(u), int32_t(v), int32_t(w)); } - FI XYZEval ROUNDL() { return LOGICAL_AXIS_ARRAY(int32_t(LROUND(e)), int32_t(LROUND(x)), int32_t(LROUND(y)), int32_t(LROUND(z)), int32_t(LROUND(i)), int32_t(LROUND(j)), int32_t(LROUND(k)), int32_t(LROUND(u)), int32_t(LROUND(v)), int32_t(LROUND(w))); } - FI XYZEval ROUNDL() const { return LOGICAL_AXIS_ARRAY(int32_t(LROUND(e)), int32_t(LROUND(x)), int32_t(LROUND(y)), int32_t(LROUND(z)), int32_t(LROUND(i)), int32_t(LROUND(j)), int32_t(LROUND(k)), int32_t(LROUND(u)), int32_t(LROUND(v)), int32_t(LROUND(w))); } - FI XYZEval asFloat() { return LOGICAL_AXIS_ARRAY(static_cast(e), static_cast(x), static_cast(y), static_cast(z), static_cast(i), static_cast(j), static_cast(k), static_cast(u), static_cast(v), static_cast(w)); } - FI XYZEval asFloat() const { return LOGICAL_AXIS_ARRAY(static_cast(e), static_cast(x), static_cast(y), static_cast(z), static_cast(i), static_cast(j), static_cast(k), static_cast(u), static_cast(v), static_cast(w)); } - FI XYZEval reciprocal() const { return LOGICAL_AXIS_ARRAY(_RECIP(e), _RECIP(x), _RECIP(y), _RECIP(z), _RECIP(i), _RECIP(j), _RECIP(k), _RECIP(u), _RECIP(v), _RECIP(w)); } + FI constexpr XYZEval copy() const { XYZEval v = *this; return v; } + FI constexpr XYZEval ABS() const { return LOGICAL_AXIS_ARRAY(T(_ABS(e)), T(_ABS(x)), T(_ABS(y)), T(_ABS(z)), T(_ABS(i)), T(_ABS(j)), T(_ABS(k)), T(_ABS(u)), T(_ABS(v)), T(_ABS(w))); } + FI constexpr XYZEval asInt() const { return LOGICAL_AXIS_ARRAY(int16_t(e), int16_t(x), int16_t(y), int16_t(z), int16_t(i), int16_t(j), int16_t(k), int16_t(u), int16_t(v), int16_t(w)); } + FI constexpr XYZEval asLong() const { return LOGICAL_AXIS_ARRAY(int32_t(e), int32_t(x), int32_t(y), int32_t(z), int32_t(i), int32_t(j), int32_t(k), int32_t(u), int32_t(v), int32_t(w)); } + FI constexpr XYZEval ROUNDL() const { return LOGICAL_AXIS_ARRAY(int32_t(LROUND(e)), int32_t(LROUND(x)), int32_t(LROUND(y)), int32_t(LROUND(z)), int32_t(LROUND(i)), int32_t(LROUND(j)), int32_t(LROUND(k)), int32_t(LROUND(u)), int32_t(LROUND(v)), int32_t(LROUND(w))); } + FI constexpr XYZEval asFloat() const { return LOGICAL_AXIS_ARRAY(static_cast(e), static_cast(x), static_cast(y), static_cast(z), static_cast(i), static_cast(j), static_cast(k), static_cast(u), static_cast(v), static_cast(w)); } + FI constexpr XYZEval reciprocal() const { return LOGICAL_AXIS_ARRAY(_RECIP(e), _RECIP(x), _RECIP(y), _RECIP(z), _RECIP(i), _RECIP(j), _RECIP(k), _RECIP(u), _RECIP(v), _RECIP(w)); } // Marlin workspace shifting is done with G92 and M206 - FI XYZEval asLogical() const { XYZEval o = asFloat(); toLogical(o); return o; } - FI XYZEval asNative() const { XYZEval o = asFloat(); toNative(o); return o; } + FI XYZEval asLogical() const { XYZEval o = asFloat(); toLogical(o); return o; } + FI XYZEval asNative() const { XYZEval o = asFloat(); toNative(o); return o; } // In-place cast to types having fewer fields FI operator XYval&() { return *(XYval*)this; } @@ -741,76 +717,57 @@ struct XYZEval { FI operator const XYZval&() const { return *(const XYZval*)this; } // Accessor via an AxisEnum (or any integer) [index] - FI T& operator[](const int n) { return pos[n]; } - FI const T& operator[](const int n) const { return pos[n]; } + FI T& operator[](const int n) { return pos[n]; } + FI const T& operator[](const int n) const { return pos[n]; } // Assignment operator overrides do the expected thing - FI XYZEval& operator= (const T v) { set(LOGICAL_AXIS_LIST_1(v)); return *this; } - FI XYZEval& operator= (const XYval &rs) { set(rs.x, rs.y); return *this; } - FI XYZEval& operator= (const XYZval &rs) { set(NUM_AXIS_ELEM(rs)); return *this; } + FI XYZEval& operator= (const T v) { set(LOGICAL_AXIS_LIST_1(v)); return *this; } + FI XYZEval& operator= (const XYval &rs) { set(rs.x, rs.y); return *this; } + FI XYZEval& operator= (const XYZval &rs) { set(NUM_AXIS_ELEM(rs)); return *this; } // Override other operators to get intuitive behaviors - FI XYZEval operator+ (const XYval &rs) const { XYZEval ls = *this; ls.x += rs.x; ls.y += rs.y; return ls; } - FI XYZEval operator+ (const XYval &rs) { XYZEval ls = *this; ls.x += rs.x; ls.y += rs.y; return ls; } - FI XYZEval operator- (const XYval &rs) const { XYZEval ls = *this; ls.x -= rs.x; ls.y -= rs.y; return ls; } - FI XYZEval operator- (const XYval &rs) { XYZEval ls = *this; ls.x -= rs.x; ls.y -= rs.y; return ls; } - FI XYZEval operator* (const XYval &rs) const { XYZEval ls = *this; ls.x *= rs.x; ls.y *= rs.y; return ls; } - FI XYZEval operator* (const XYval &rs) { XYZEval ls = *this; ls.x *= rs.x; ls.y *= rs.y; return ls; } - FI XYZEval operator/ (const XYval &rs) const { XYZEval ls = *this; ls.x /= rs.x; ls.y /= rs.y; return ls; } - FI XYZEval operator/ (const XYval &rs) { XYZEval ls = *this; ls.x /= rs.x; ls.y /= rs.y; return ls; } - FI XYZEval operator+ (const XYZval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x += rs.x, ls.y += rs.y, ls.z += rs.z, ls.i += rs.i, ls.j += rs.j, ls.k += rs.k, ls.u += rs.u, ls.v += rs.v, ls.w += rs.w); return ls; } - FI XYZEval operator+ (const XYZval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x += rs.x, ls.y += rs.y, ls.z += rs.z, ls.i += rs.i, ls.j += rs.j, ls.k += rs.k, ls.u += rs.u, ls.v += rs.v, ls.w += rs.w); return ls; } - FI XYZEval operator- (const XYZval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x -= rs.x, ls.y -= rs.y, ls.z -= rs.z, ls.i -= rs.i, ls.j -= rs.j, ls.k -= rs.k, ls.u -= rs.u, ls.v -= rs.v, ls.w -= rs.w); return ls; } - FI XYZEval operator- (const XYZval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x -= rs.x, ls.y -= rs.y, ls.z -= rs.z, ls.i -= rs.i, ls.j -= rs.j, ls.k -= rs.k, ls.u -= rs.u, ls.v -= rs.v, ls.w -= rs.w); return ls; } - FI XYZEval operator* (const XYZval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x *= rs.x, ls.y *= rs.y, ls.z *= rs.z, ls.i *= rs.i, ls.j *= rs.j, ls.k *= rs.k, ls.u *= rs.u, ls.v *= rs.v, ls.w *= rs.w); return ls; } - FI XYZEval operator* (const XYZval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x *= rs.x, ls.y *= rs.y, ls.z *= rs.z, ls.i *= rs.i, ls.j *= rs.j, ls.k *= rs.k, ls.u *= rs.u, ls.v *= rs.v, ls.w *= rs.w); return ls; } - FI XYZEval operator/ (const XYZval &rs) const { XYZval ls = *this; NUM_AXIS_CODE(ls.x /= rs.x, ls.y /= rs.y, ls.z /= rs.z, ls.i /= rs.i, ls.j /= rs.j, ls.k /= rs.k, ls.u /= rs.u, ls.v /= rs.v, ls.w /= rs.w); return ls; } - FI XYZEval operator/ (const XYZval &rs) { XYZval ls = *this; NUM_AXIS_CODE(ls.x /= rs.x, ls.y /= rs.y, ls.z /= rs.z, ls.i /= rs.i, ls.j /= rs.j, ls.k /= rs.k, ls.u /= rs.u, ls.v /= rs.v, ls.w /= rs.w); return ls; } - FI XYZEval operator+ (const XYZEval &rs) const { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e += rs.e, ls.x += rs.x, ls.y += rs.y, ls.z += rs.z, ls.i += rs.i, ls.j += rs.j, ls.k += rs.k, ls.u += rs.u, ls.v += rs.v, ls.w += rs.w); return ls; } - FI XYZEval operator+ (const XYZEval &rs) { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e += rs.e, ls.x += rs.x, ls.y += rs.y, ls.z += rs.z, ls.i += rs.i, ls.j += rs.j, ls.k += rs.k, ls.u += rs.u, ls.v += rs.v, ls.w += rs.w); return ls; } - FI XYZEval operator- (const XYZEval &rs) const { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e -= rs.e, ls.x -= rs.x, ls.y -= rs.y, ls.z -= rs.z, ls.i -= rs.i, ls.j -= rs.j, ls.k -= rs.k, ls.u -= rs.u, ls.v -= rs.v, ls.w -= rs.w); return ls; } - FI XYZEval operator- (const XYZEval &rs) { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e -= rs.e, ls.x -= rs.x, ls.y -= rs.y, ls.z -= rs.z, ls.i -= rs.i, ls.j -= rs.j, ls.k -= rs.k, ls.u -= rs.u, ls.v -= rs.v, ls.w -= rs.w); return ls; } - FI XYZEval operator* (const XYZEval &rs) const { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e *= rs.e, ls.x *= rs.x, ls.y *= rs.y, ls.z *= rs.z, ls.i *= rs.i, ls.j *= rs.j, ls.k *= rs.k, ls.u *= rs.u, ls.v *= rs.v, ls.w *= rs.w); return ls; } - FI XYZEval operator* (const XYZEval &rs) { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e *= rs.e, ls.x *= rs.x, ls.y *= rs.y, ls.z *= rs.z, ls.i *= rs.i, ls.j *= rs.j, ls.k *= rs.k, ls.u *= rs.u, ls.v *= rs.v, ls.w *= rs.w); return ls; } - FI XYZEval operator/ (const XYZEval &rs) const { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e /= rs.e, ls.x /= rs.x, ls.y /= rs.y, ls.z /= rs.z, ls.i /= rs.i, ls.j /= rs.j, ls.k /= rs.k, ls.u /= rs.u, ls.v /= rs.v, ls.w /= rs.w); return ls; } - FI XYZEval operator/ (const XYZEval &rs) { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e /= rs.e, ls.x /= rs.x, ls.y /= rs.y, ls.z /= rs.z, ls.i /= rs.i, ls.j /= rs.j, ls.k /= rs.k, ls.u /= rs.u, ls.v /= rs.v, ls.w /= rs.w); return ls; } - FI XYZEval operator* (const float &p) const { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e *= p, ls.x *= p, ls.y *= p, ls.z *= p, ls.i *= p, ls.j *= p, ls.k *= p, ls.u *= p, ls.v *= p, ls.w *= p ); return ls; } - FI XYZEval operator* (const float &p) { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e *= p, ls.x *= p, ls.y *= p, ls.z *= p, ls.i *= p, ls.j *= p, ls.k *= p, ls.u *= p, ls.v *= p, ls.w *= p ); return ls; } - FI XYZEval operator* (const int &p) const { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e *= p, ls.x *= p, ls.y *= p, ls.z *= p, ls.i *= p, ls.j *= p, ls.k *= p, ls.u *= p, ls.v *= p, ls.w *= p ); return ls; } - FI XYZEval operator* (const int &p) { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e *= p, ls.x *= p, ls.y *= p, ls.z *= p, ls.i *= p, ls.j *= p, ls.k *= p, ls.u *= p, ls.v *= p, ls.w *= p ); return ls; } - FI XYZEval operator/ (const float &p) const { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e /= p, ls.x /= p, ls.y /= p, ls.z /= p, ls.i /= p, ls.j /= p, ls.k /= p, ls.u /= p, ls.v /= p, ls.w /= p ); return ls; } - FI XYZEval operator/ (const float &p) { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e /= p, ls.x /= p, ls.y /= p, ls.z /= p, ls.i /= p, ls.j /= p, ls.k /= p, ls.u /= p, ls.v /= p, ls.w /= p ); return ls; } - FI XYZEval operator/ (const int &p) const { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e /= p, ls.x /= p, ls.y /= p, ls.z /= p, ls.i /= p, ls.j /= p, ls.k /= p, ls.u /= p, ls.v /= p, ls.w /= p ); return ls; } - FI XYZEval operator/ (const int &p) { XYZEval ls = *this; LOGICAL_AXIS_CODE(ls.e /= p, ls.x /= p, ls.y /= p, ls.z /= p, ls.i /= p, ls.j /= p, ls.k /= p, ls.u /= p, ls.v /= p, ls.w /= p ); return ls; } - FI XYZEval operator>>(const int &p) const { XYZEval ls = *this; LOGICAL_AXIS_CODE(_RS(ls.e), _RS(ls.x), _RS(ls.y), _RS(ls.z), _RS(ls.i), _RS(ls.j), _RS(ls.k), _RS(ls.u), _RS(ls.v), _RS(ls.w) ); return ls; } - FI XYZEval operator>>(const int &p) { XYZEval ls = *this; LOGICAL_AXIS_CODE(_RS(ls.e), _RS(ls.x), _RS(ls.y), _RS(ls.z), _RS(ls.i), _RS(ls.j), _RS(ls.k), _RS(ls.u), _RS(ls.v), _RS(ls.w) ); return ls; } - FI XYZEval operator<<(const int &p) const { XYZEval ls = *this; LOGICAL_AXIS_CODE(_LS(ls.e), _LS(ls.x), _LS(ls.y), _LS(ls.z), _LS(ls.i), _LS(ls.j), _LS(ls.k), _LS(ls.u), _LS(ls.v), _LS(ls.w) ); return ls; } - FI XYZEval operator<<(const int &p) { XYZEval ls = *this; LOGICAL_AXIS_CODE(_LS(ls.e), _LS(ls.x), _LS(ls.y), _LS(ls.z), _LS(ls.i), _LS(ls.j), _LS(ls.k), _LS(ls.u), _LS(ls.v), _LS(ls.w) ); return ls; } - FI const XYZEval operator-() const { return LOGICAL_AXIS_ARRAY(-e, -x, -y, -z, -i, -j, -k, -u, -v, -w); } - FI XYZEval operator-() { return LOGICAL_AXIS_ARRAY(-e, -x, -y, -z, -i, -j, -k, -u, -v, -w); } + FI constexpr XYZEval operator+ (const XYval &rs) const { return LOGICAL_AXIS_ARRAY(e, x + rs.x, y + rs.y, z, i, j, k, u, v, w); } + FI constexpr XYZEval operator- (const XYval &rs) const { return LOGICAL_AXIS_ARRAY(e, x - rs.x, y - rs.y, z, i, j, k, u, v, w); } + FI constexpr XYZEval operator* (const XYval &rs) const { return LOGICAL_AXIS_ARRAY(e, x * rs.x, y * rs.y, z, i, j, k, u, v, w); } + FI constexpr XYZEval operator/ (const XYval &rs) const { return LOGICAL_AXIS_ARRAY(e, x / rs.x, y / rs.y, z, i, j, k, u, v, w); } + FI constexpr XYZEval operator+ (const XYZval &rs) const { return LOGICAL_AXIS_ARRAY(e, x + rs.x, y + rs.y, z + rs.z, i + rs.i, j + rs.j, k + rs.k, u + rs.u, v + rs.v, w + rs.w); } + FI constexpr XYZEval operator- (const XYZval &rs) const { return LOGICAL_AXIS_ARRAY(e, x - rs.x, y - rs.y, z - rs.z, i - rs.i, j - rs.j, k - rs.k, u - rs.u, v - rs.v, w - rs.w); } + FI constexpr XYZEval operator* (const XYZval &rs) const { return LOGICAL_AXIS_ARRAY(e, x * rs.x, y * rs.y, z * rs.z, i * rs.i, j * rs.j, k * rs.k, u * rs.u, v * rs.v, w * rs.w); } + FI constexpr XYZEval operator/ (const XYZval &rs) const { return LOGICAL_AXIS_ARRAY(e, x / rs.x, y / rs.y, z / rs.z, i / rs.i, j / rs.j, k / rs.k, u / rs.u, v / rs.v, w / rs.w); } + FI constexpr XYZEval operator+ (const XYZEval &rs) const { return LOGICAL_AXIS_ARRAY(e + rs.e, x + rs.x, y + rs.y, z + rs.z, i + rs.i, j + rs.j, k + rs.k, u + rs.u, v + rs.v, w + rs.w); } + FI constexpr XYZEval operator- (const XYZEval &rs) const { return LOGICAL_AXIS_ARRAY(e - rs.e, x - rs.x, y - rs.y, z - rs.z, i - rs.i, j - rs.j, k - rs.k, u - rs.u, v - rs.v, w - rs.w); } + FI constexpr XYZEval operator* (const XYZEval &rs) const { return LOGICAL_AXIS_ARRAY(e * rs.e, x * rs.x, y * rs.y, z * rs.z, i * rs.i, j * rs.j, k * rs.k, u * rs.u, v * rs.v, w * rs.w); } + FI constexpr XYZEval operator/ (const XYZEval &rs) const { return LOGICAL_AXIS_ARRAY(e / rs.e, x / rs.x, y / rs.y, z / rs.z, i / rs.i, j / rs.j, k / rs.k, u / rs.u, v / rs.v, w / rs.w); } + FI constexpr XYZEval operator* (const float &p) const { return LOGICAL_AXIS_ARRAY(e * p, x * p, y * p, z * p, i * p, j * p, k * p, u * p, v * p, w * p); } + FI constexpr XYZEval operator* (const int &p) const { return LOGICAL_AXIS_ARRAY(e * p, x * p, y * p, z * p, i * p, j * p, k * p, u * p, v * p, w * p); } + FI constexpr XYZEval operator/ (const float &p) const { return LOGICAL_AXIS_ARRAY(e / p, x / p, y / p, z / p, i / p, j / p, k / p, u / p, v / p, w / p); } + FI constexpr XYZEval operator/ (const int &p) const { return LOGICAL_AXIS_ARRAY(e / p, x / p, y / p, z / p, i / p, j / p, k / p, u / p, v / p, w / p); } + FI constexpr XYZEval operator>>(const int &p) const { return LOGICAL_AXIS_ARRAY(_RS(e), _RS(x), _RS(y), _RS(z), _RS(i), _RS(j), _RS(k), _RS(u), _RS(v), _RS(w)); } + FI constexpr XYZEval operator<<(const int &p) const { return LOGICAL_AXIS_ARRAY(_LS(e), _LS(x), _LS(y), _LS(z), _LS(i), _LS(j), _LS(k), _LS(u), _LS(v), _LS(w)); } + FI constexpr XYZEval operator-() const { return LOGICAL_AXIS_ARRAY(-e, -x, -y, -z, -i, -j, -k, -u, -v, -w); } // Modifier operators - FI XYZEval& operator+=(const XYval &rs) { NUM_AXIS_CODE(x += rs.x, y += rs.y,,,,,,, ); return *this; } - FI XYZEval& operator-=(const XYval &rs) { NUM_AXIS_CODE(x -= rs.x, y -= rs.y,,,,,,, ); return *this; } - FI XYZEval& operator*=(const XYval &rs) { NUM_AXIS_CODE(x *= rs.x, y *= rs.y,,,,,,, ); return *this; } - FI XYZEval& operator/=(const XYval &rs) { NUM_AXIS_CODE(x /= rs.x, y /= rs.y,,,,,,, ); return *this; } - FI XYZEval& operator+=(const XYZval &rs) { NUM_AXIS_CODE(x += rs.x, y += rs.y, z += rs.z, i += rs.i, j += rs.j, k += rs.k, u += rs.u, v += rs.v, w += rs.w); return *this; } - FI XYZEval& operator-=(const XYZval &rs) { NUM_AXIS_CODE(x -= rs.x, y -= rs.y, z -= rs.z, i -= rs.i, j -= rs.j, k -= rs.k, u -= rs.u, v -= rs.v, w -= rs.w); return *this; } - FI XYZEval& operator*=(const XYZval &rs) { NUM_AXIS_CODE(x *= rs.x, y *= rs.y, z *= rs.z, i *= rs.i, j *= rs.j, k *= rs.k, u *= rs.u, v *= rs.v, w *= rs.w); return *this; } - FI XYZEval& operator/=(const XYZval &rs) { NUM_AXIS_CODE(x /= rs.x, y /= rs.y, z /= rs.z, i /= rs.i, j /= rs.j, k /= rs.k, u /= rs.u, v /= rs.v, w /= rs.w); return *this; } - FI XYZEval& operator+=(const XYZEval &rs) { LOGICAL_AXIS_CODE(e += rs.e, x += rs.x, y += rs.y, z += rs.z, i += rs.i, j += rs.j, k += rs.k, u += rs.u, v += rs.v, w += rs.w); return *this; } - FI XYZEval& operator-=(const XYZEval &rs) { LOGICAL_AXIS_CODE(e -= rs.e, x -= rs.x, y -= rs.y, z -= rs.z, i -= rs.i, j -= rs.j, k -= rs.k, u -= rs.u, v -= rs.v, w -= rs.w); return *this; } - FI XYZEval& operator*=(const XYZEval &rs) { LOGICAL_AXIS_CODE(e *= rs.e, x *= rs.x, y *= rs.y, z *= rs.z, i *= rs.i, j *= rs.j, k *= rs.k, u *= rs.u, v *= rs.v, w *= rs.w); return *this; } - FI XYZEval& operator/=(const XYZEval &rs) { LOGICAL_AXIS_CODE(e /= rs.e, x /= rs.x, y /= rs.y, z /= rs.z, i /= rs.i, j /= rs.j, k /= rs.k, u /= rs.u, v /= rs.v, w /= rs.w); return *this; } - FI XYZEval& operator*=(const T &p) { LOGICAL_AXIS_CODE(e *= p, x *= p, y *= p, z *= p, i *= p, j *= p, k *= p, u *= p, v *= p, w *= p); return *this; } - FI XYZEval& operator>>=(const int &p) { LOGICAL_AXIS_CODE(_RS(e), _RS(x), _RS(y), _RS(z), _RS(i), _RS(j), _RS(k), _RS(u), _RS(v), _RS(w)); return *this; } - FI XYZEval& operator<<=(const int &p) { LOGICAL_AXIS_CODE(_LS(e), _LS(x), _LS(y), _LS(z), _LS(i), _LS(j), _LS(k), _LS(u), _LS(v), _LS(w)); return *this; } + FI XYZEval& operator+=(const XYval &rs) { XY_CODE(x += rs.x, y += rs.y); return *this; } + FI XYZEval& operator-=(const XYval &rs) { XY_CODE(x -= rs.x, y -= rs.y); return *this; } + FI XYZEval& operator*=(const XYval &rs) { XY_CODE(x *= rs.x, y *= rs.y); return *this; } + FI XYZEval& operator/=(const XYval &rs) { XY_CODE(x /= rs.x, y /= rs.y); return *this; } + FI XYZEval& operator+=(const XYZval &rs) { NUM_AXIS_CODE(x += rs.x, y += rs.y, z += rs.z, i += rs.i, j += rs.j, k += rs.k, u += rs.u, v += rs.v, w += rs.w); return *this; } + FI XYZEval& operator-=(const XYZval &rs) { NUM_AXIS_CODE(x -= rs.x, y -= rs.y, z -= rs.z, i -= rs.i, j -= rs.j, k -= rs.k, u -= rs.u, v -= rs.v, w -= rs.w); return *this; } + FI XYZEval& operator*=(const XYZval &rs) { NUM_AXIS_CODE(x *= rs.x, y *= rs.y, z *= rs.z, i *= rs.i, j *= rs.j, k *= rs.k, u *= rs.u, v *= rs.v, w *= rs.w); return *this; } + FI XYZEval& operator/=(const XYZval &rs) { NUM_AXIS_CODE(x /= rs.x, y /= rs.y, z /= rs.z, i /= rs.i, j /= rs.j, k /= rs.k, u /= rs.u, v /= rs.v, w /= rs.w); return *this; } + FI XYZEval& operator+=(const XYZEval &rs) { LOGICAL_AXIS_CODE(e += rs.e, x += rs.x, y += rs.y, z += rs.z, i += rs.i, j += rs.j, k += rs.k, u += rs.u, v += rs.v, w += rs.w); return *this; } + FI XYZEval& operator-=(const XYZEval &rs) { LOGICAL_AXIS_CODE(e -= rs.e, x -= rs.x, y -= rs.y, z -= rs.z, i -= rs.i, j -= rs.j, k -= rs.k, u -= rs.u, v -= rs.v, w -= rs.w); return *this; } + FI XYZEval& operator*=(const XYZEval &rs) { LOGICAL_AXIS_CODE(e *= rs.e, x *= rs.x, y *= rs.y, z *= rs.z, i *= rs.i, j *= rs.j, k *= rs.k, u *= rs.u, v *= rs.v, w *= rs.w); return *this; } + FI XYZEval& operator/=(const XYZEval &rs) { LOGICAL_AXIS_CODE(e /= rs.e, x /= rs.x, y /= rs.y, z /= rs.z, i /= rs.i, j /= rs.j, k /= rs.k, u /= rs.u, v /= rs.v, w /= rs.w); return *this; } + FI XYZEval& operator*=(const T &p) { LOGICAL_AXIS_CODE(e *= p, x *= p, y *= p, z *= p, i *= p, j *= p, k *= p, u *= p, v *= p, w *= p); return *this; } + FI XYZEval& operator>>=(const int &p) { LOGICAL_AXIS_CODE(_RSE(e), _RSE(x), _RSE(y), _RSE(z), _RSE(i), _RSE(j), _RSE(k), _RSE(u), _RSE(v), _RSE(w)); return *this; } + FI XYZEval& operator<<=(const int &p) { LOGICAL_AXIS_CODE(_LSE(e), _LSE(x), _LSE(y), _LSE(z), _LSE(i), _LSE(j), _LSE(k), _LSE(u), _LSE(v), _LSE(w)); return *this; } // Exact comparisons. For floats a "NEAR" operation may be better. - FI bool operator==(const XYZval &rs) const { return true NUM_AXIS_GANG(&& x == rs.x, && y == rs.y, && z == rs.z, && i == rs.i, && j == rs.j, && k == rs.k, && u == rs.u, && v == rs.v, && w == rs.w); } - FI bool operator==(const XYZEval &rs) const { return true LOGICAL_AXIS_GANG(&& e == rs.e, && x == rs.x, && y == rs.y, && z == rs.z, && i == rs.i, && j == rs.j, && k == rs.k, && u == rs.u, && v == rs.v, && w == rs.w); } - FI bool operator!=(const XYZval &rs) const { return !operator==(rs); } - FI bool operator!=(const XYZEval &rs) const { return !operator==(rs); } + FI bool operator==(const XYZval &rs) const { return true NUM_AXIS_GANG(&& x == rs.x, && y == rs.y, && z == rs.z, && i == rs.i, && j == rs.j, && k == rs.k, && u == rs.u, && v == rs.v, && w == rs.w); } + FI bool operator==(const XYZEval &rs) const { return true LOGICAL_AXIS_GANG(&& e == rs.e, && x == rs.x, && y == rs.y, && z == rs.z, && i == rs.i, && j == rs.j, && k == rs.k, && u == rs.u, && v == rs.v, && w == rs.w); } + FI bool operator!=(const XYZval &rs) const { return !operator==(rs); } + FI bool operator!=(const XYZEval &rs) const { return !operator==(rs); } }; #include // for memset @@ -1001,4 +958,6 @@ class AxisBits { #undef _ABS #undef _LS #undef _RS +#undef _LSE +#undef _RSE #undef FI From 06aed792c08ee2e105b034601a4ea773d0869dfd Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Sat, 13 May 2023 23:23:23 +0200 Subject: [PATCH 163/427] =?UTF-8?q?=F0=9F=A9=B9=20MMU2=20unload=20followup?= =?UTF-8?q?=20(#25825)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #20147 --- Marlin/src/lcd/menu/menu_mmu2.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/lcd/menu/menu_mmu2.cpp b/Marlin/src/lcd/menu/menu_mmu2.cpp index a6ce14702449..ca3627ce1002 100644 --- a/Marlin/src/lcd/menu/menu_mmu2.cpp +++ b/Marlin/src/lcd/menu/menu_mmu2.cpp @@ -47,7 +47,7 @@ void _mmu2_load_to_feeder(const uint8_t index) { } void action_mmu2_load_all() { - EXTRUDER_LOOP() _mmu2_load_filament(e); + EXTRUDER_LOOP() _mmu2_load_to_feeder(e); ui.return_to_status(); } From d5fdbb89ea55a19815c6997d47f1268a96d2cac9 Mon Sep 17 00:00:00 2001 From: "Alexey D. Filimonov" Date: Sun, 14 May 2023 00:25:36 +0300 Subject: [PATCH 164/427] =?UTF-8?q?=F0=9F=9A=B8=20TFT=20optional=20axes/ex?= =?UTF-8?q?truder=20(#25624)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/lcd/tft/touch.cpp | 22 +- Marlin/src/lcd/tft/ui_1024x600.cpp | 336 ++++++++++++---------- Marlin/src/lcd/tft/ui_320x240.cpp | 429 ++++++++++++++++------------- Marlin/src/lcd/tft/ui_480x320.cpp | 354 ++++++++++++++---------- 4 files changed, 658 insertions(+), 483 deletions(-) diff --git a/Marlin/src/lcd/tft/touch.cpp b/Marlin/src/lcd/tft/touch.cpp index 17784ff52757..1765ae0a8e09 100644 --- a/Marlin/src/lcd/tft/touch.cpp +++ b/Marlin/src/lcd/tft/touch.cpp @@ -222,15 +222,19 @@ void Touch::touch(touch_control_t *control) { ui.clear_lcd(); MenuItem_int3::action(GET_TEXT_F(MSG_SPEED), &feedrate_percentage, 10, 999); break; - case FLOWRATE: - ui.clear_lcd(); - MenuItemBase::itemIndex = control->data; - #if EXTRUDERS == 1 - MenuItem_int3::action(GET_TEXT_F(MSG_FLOW), &planner.flow_percentage[MenuItemBase::itemIndex], 10, 999, []{ planner.refresh_e_factor(MenuItemBase::itemIndex); }); - #else - MenuItem_int3::action(GET_TEXT_F(MSG_FLOW_N), &planner.flow_percentage[MenuItemBase::itemIndex], 10, 999, []{ planner.refresh_e_factor(MenuItemBase::itemIndex); }); - #endif - break; + + #if HAS_EXTRUDERS + case FLOWRATE: + ui.clear_lcd(); + MenuItemBase::itemIndex = control->data; + #if EXTRUDERS == 1 + MenuItem_int3::action(GET_TEXT_F(MSG_FLOW), &planner.flow_percentage[MenuItemBase::itemIndex], 10, 999, []{ planner.refresh_e_factor(MenuItemBase::itemIndex); }); + #else + MenuItem_int3::action(GET_TEXT_F(MSG_FLOW_N), &planner.flow_percentage[MenuItemBase::itemIndex], 10, 999, []{ planner.refresh_e_factor(MenuItemBase::itemIndex); }); + #endif + break; + #endif + case STOP: ui.goto_screen([]{ MenuItem_confirm::select_screen(GET_TEXT_F(MSG_BUTTON_STOP), diff --git a/Marlin/src/lcd/tft/ui_1024x600.cpp b/Marlin/src/lcd/tft/ui_1024x600.cpp index cf5911cdc1c4..460f3a345b55 100644 --- a/Marlin/src/lcd/tft/ui_1024x600.cpp +++ b/Marlin/src/lcd/tft/ui_1024x600.cpp @@ -124,8 +124,12 @@ void draw_heater_status(uint16_t x, uint16_t y, const int8_t Heater) { celsius_t currentTemperature, targetTemperature; if (Heater >= 0) { // HotEnd - currentTemperature = thermalManager.wholeDegHotend(Heater); - targetTemperature = thermalManager.degTargetHotend(Heater); + #if HAS_EXTRUDERS + currentTemperature = thermalManager.wholeDegHotend(Heater); + targetTemperature = thermalManager.degTargetHotend(Heater); + #else + return; + #endif } #if HAS_HEATED_BED else if (Heater == H_BED) { @@ -270,37 +274,45 @@ void MarlinUI::draw_status_screen() { #endif } else { - tft.add_text(200, 3, COLOR_AXIS_HOMED , "X"); - const bool nhx = axis_should_home(X_AXIS); - if (blink && nhx) - tft_string.set('?'); - else - tft_string.set(ftostr4sign(LOGICAL_X_POSITION(current_position.x))); - tft.add_text(300 - tft_string.width(), 3, nhx ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + #if HAS_X_AXIS + tft.add_text(200, 3, COLOR_AXIS_HOMED , "X"); + const bool nhx = axis_should_home(X_AXIS); + if (blink && nhx) + tft_string.set('?'); + else + tft_string.set(ftostr4sign(LOGICAL_X_POSITION(current_position.x))); + tft.add_text(300 - tft_string.width(), 3, nhx ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + #endif - tft.add_text(500, 3, COLOR_AXIS_HOMED , "Y"); - const bool nhy = axis_should_home(Y_AXIS); - if (blink && nhy) - tft_string.set('?'); - else - tft_string.set(ftostr4sign(LOGICAL_Y_POSITION(current_position.y))); - tft.add_text(600 - tft_string.width(), 3, nhy ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + #if HAS_Y_AXIS + tft.add_text(500, 3, COLOR_AXIS_HOMED , "Y"); + const bool nhy = axis_should_home(Y_AXIS); + if (blink && nhy) + tft_string.set('?'); + else + tft_string.set(ftostr4sign(LOGICAL_Y_POSITION(current_position.y))); + tft.add_text(600 - tft_string.width(), 3, nhy ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + #endif } - tft.add_text(800, 3, COLOR_AXIS_HOMED , "Z"); - uint16_t offset = 32; - const bool nhz = axis_should_home(Z_AXIS); - if (blink && nhz) - tft_string.set('?'); - else { - const float z = LOGICAL_Z_POSITION(current_position.z); - tft_string.set(ftostr52sp((int16_t)z)); - tft_string.rtrim(); - offset += tft_string.width(); - tft_string.set(ftostr52sp(z)); - offset -= tft_string.width(); - } - tft.add_text(900 - tft_string.width() - offset, 3, nhz ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + #if HAS_Z_AXIS + tft.add_text(800, 3, COLOR_AXIS_HOMED , "Z"); + uint16_t offset = 32; + const bool nhz = axis_should_home(Z_AXIS); + if (blink && nhz) + tft_string.set('?'); + else { + const float z = LOGICAL_Z_POSITION(current_position.z); + tft_string.set(ftostr52sp((int16_t)z)); + tft_string.rtrim(); + offset += tft_string.width(); + + tft_string.set(ftostr52sp(z)); + offset -= tft_string.width(); + } + tft.add_text(900 - tft_string.width() - offset, 3, nhz ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + #endif // HAS_Z_AXIS + TERN_(TOUCH_SCREEN, touch.add_control(MOVE_AXIS, 4, y, TFT_WIDTH - 8, FONT_LINE_HEIGHT)); y += 100; @@ -314,15 +326,17 @@ void MarlinUI::draw_status_screen() { tft.add_text(36, 1, color , tft_string); TERN_(TOUCH_SCREEN, touch.add_control(FEEDRATE, 274, y, 128, 32)); - // flow rate - tft.canvas(650, y, 128, 32); - tft.set_background(COLOR_BACKGROUND); - color = planner.flow_percentage[0] == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; - tft.add_image(0, 0, imgFlowRate, color); - tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); - tft_string.add('%'); - tft.add_text(36, 1, color , tft_string); - TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, 650, y, 128, 32, active_extruder)); + // Flow rate + #if HAS_EXTRUDERS + tft.canvas(650, y, 128, 32); + tft.set_background(COLOR_BACKGROUND); + color = planner.flow_percentage[0] == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; + tft.add_image(0, 0, imgFlowRate, color); + tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); + tft_string.add('%'); + tft.add_text(36, 1, color , tft_string); + TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, 650, y, 128, 32, active_extruder)); + #endif #if ENABLED(TOUCH_SCREEN) add_control(900, y, menu_main, imgSettings); @@ -584,16 +598,26 @@ void MenuItem_confirm::draw_select_screen(FSTR_P const yes, FSTR_P const no, con #define Z_SELECTION_Z 1 #define Z_SELECTION_Z_PROBE -1 -struct MotionAxisState { - xy_int_t xValuePos, yValuePos, zValuePos, eValuePos, stepValuePos, zTypePos, eNamePos; +struct { + #if HAS_X_AXIS + xy_int_t xValuePos; + #endif + #if HAS_Y_AXIS + xy_int_t yValuePos; + #endif + #if HAS_Z_AXIS + xy_int_t zValuePos, zTypePos; + int z_selection = Z_SELECTION_Z; + #endif + #if HAS_EXTRUDERS + xy_int_t eValuePos, eNamePos; + uint8_t e_selection = 0; + #endif + xy_int_t stepValuePos; float currentStepSize = 10.0; - int z_selection = Z_SELECTION_Z; - uint8_t e_selection = 0; bool blocked = false; char message[32]; -}; - -MotionAxisState motionAxisState; +} motionAxisState; #define BTN_WIDTH 64 #define BTN_HEIGHT 52 @@ -620,27 +644,30 @@ static void drawCurStepValue() { tft.add_text(tft_string.center(CUR_STEP_VALUE_WIDTH), 0, COLOR_AXIS_HOMED, tft_string); } -static void drawCurZSelection() { - tft_string.set('Z'); - tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), 34); - tft.set_background(COLOR_BACKGROUND); - tft.add_text(0, 0, Z_BTN_COLOR, tft_string); - tft.queue.sync(); - tft_string.set(F("Offset")); - tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + 34, tft_string.width(), 34); - tft.set_background(COLOR_BACKGROUND); - if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { +#if HAS_Z_AXIS + static void drawCurZSelection() { + tft_string.set('Z'); + tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), 34); + tft.set_background(COLOR_BACKGROUND); tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + tft.queue.sync(); + tft_string.set(F("Offset")); + tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + 34, tft_string.width(), 34); + tft.set_background(COLOR_BACKGROUND); + if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) + tft.add_text(0, 0, Z_BTN_COLOR, tft_string); } -} +#endif -static void drawCurESelection() { - tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set('E'); - tft.add_text(0, 0, E_BTN_COLOR , tft_string); - tft.add_text(tft_string.width(), 0, E_BTN_COLOR, ui8tostr3rj(motionAxisState.e_selection)); -} +#if HAS_EXTRUDERS + static void drawCurESelection() { + tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft_string.set('E'); + tft.add_text(0, 0, E_BTN_COLOR , tft_string); + tft.add_text(tft_string.width(), 0, E_BTN_COLOR, ui8tostr3rj(motionAxisState.e_selection)); + } +#endif static void drawMessage(PGM_P const msg) { tft.canvas(X_MARGIN, TFT_HEIGHT - Y_MARGIN - 34, TFT_HEIGHT / 2, 34); @@ -658,10 +685,18 @@ static void drawAxisValue(const AxisEnum axis) { xy_int_t pos; uint16_t color; switch (axis) { - case X_AXIS: pos = motionAxisState.xValuePos; color = X_BTN_COLOR; break; - case Y_AXIS: pos = motionAxisState.yValuePos; color = Y_BTN_COLOR; break; - case Z_AXIS: pos = motionAxisState.zValuePos; color = Z_BTN_COLOR; break; - case E_AXIS: pos = motionAxisState.eValuePos; color = E_BTN_COLOR; break; + #if HAS_X_AXIS + case X_AXIS: pos = motionAxisState.xValuePos; color = X_BTN_COLOR; break; + #endif + #if HAS_Y_AXIS + case Y_AXIS: pos = motionAxisState.yValuePos; color = Y_BTN_COLOR; break; + #endif + #if HAS_Z_AXIS + case Z_AXIS: pos = motionAxisState.zValuePos; color = Z_BTN_COLOR; break; + #endif + #if HAS_EXTRUDERS + case E_AXIS: pos = motionAxisState.eValuePos; color = E_BTN_COLOR; break; + #endif default: return; } tft.canvas(pos.x, pos.y, BTN_WIDTH + X_MARGIN, BTN_HEIGHT); @@ -673,53 +708,57 @@ static void drawAxisValue(const AxisEnum axis) { static void moveAxis(const AxisEnum axis, const int8_t direction) { quick_feedback(); - if (axis == E_AXIS && thermalManager.tooColdToExtrude(motionAxisState.e_selection)) { - drawMessage(F("Too cold")); - return; - } + #if HAS_EXTRUDERS + if (axis == E_AXIS && thermalManager.tooColdToExtrude(motionAxisState.e_selection)) { + drawMessage(F("Too cold")); + return; + } + #endif const float diff = motionAxisState.currentStepSize * direction; - if (axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { - #if ENABLED(BABYSTEP_ZPROBE_OFFSET) - const int16_t babystep_increment = direction * BABYSTEP_SIZE_Z; - const bool do_probe = DISABLED(BABYSTEP_HOTEND_Z_OFFSET) || active_extruder == 0; - const float bsDiff = planner.mm_per_step[Z_AXIS] * babystep_increment, - new_probe_offset = probe.offset.z + bsDiff, - new_offs = TERN(BABYSTEP_HOTEND_Z_OFFSET - , do_probe ? new_probe_offset : hotend_offset[active_extruder].z - bsDiff - , new_probe_offset - ); - if (WITHIN(new_offs, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { - babystep.add_steps(Z_AXIS, babystep_increment); - if (do_probe) - probe.offset.z = new_offs; + #if HAS_Z_AXIS + if (axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { + #if ENABLED(BABYSTEP_ZPROBE_OFFSET) + const int16_t babystep_increment = direction * BABYSTEP_SIZE_Z; + const bool do_probe = DISABLED(BABYSTEP_HOTEND_Z_OFFSET) || active_extruder == 0; + const float bsDiff = planner.mm_per_step[Z_AXIS] * babystep_increment, + new_probe_offset = probe.offset.z + bsDiff, + new_offs = TERN(BABYSTEP_HOTEND_Z_OFFSET + , do_probe ? new_probe_offset : hotend_offset[active_extruder].z - bsDiff + , new_probe_offset + ); + if (WITHIN(new_offs, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { + babystep.add_steps(Z_AXIS, babystep_increment); + if (do_probe) + probe.offset.z = new_offs; + else + TERN(BABYSTEP_HOTEND_Z_OFFSET, hotend_offset[active_extruder].z = new_offs, NOOP); + drawMessage(F("")); // clear the error + drawAxisValue(axis); + } else - TERN(BABYSTEP_HOTEND_Z_OFFSET, hotend_offset[active_extruder].z = new_offs, NOOP); - drawMessage(F("")); // clear the error - drawAxisValue(axis); - } - else - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - - #elif HAS_BED_PROBE - // only change probe.offset.z - probe.offset.z += diff; - if (direction < 0 && current_position[axis] < Z_PROBE_OFFSET_RANGE_MIN) { - current_position[axis] = Z_PROBE_OFFSET_RANGE_MIN; - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - else if (direction > 0 && current_position[axis] > Z_PROBE_OFFSET_RANGE_MAX) { - current_position[axis] = Z_PROBE_OFFSET_RANGE_MAX; - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - else - drawMessage(F("")); // clear the error + drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); + + #elif HAS_BED_PROBE + // only change probe.offset.z + probe.offset.z += diff; + if (direction < 0 && current_position[axis] < Z_PROBE_OFFSET_RANGE_MIN) { + current_position[axis] = Z_PROBE_OFFSET_RANGE_MIN; + drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); + } + else if (direction > 0 && current_position[axis] > Z_PROBE_OFFSET_RANGE_MAX) { + current_position[axis] = Z_PROBE_OFFSET_RANGE_MAX; + drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); + } + else + drawMessage(F("")); // clear the error - drawAxisValue(axis); - #endif - return; - } + drawAxisValue(axis); + #endif + return; + } + #endif // HAS_Z_AXIS if (!ui.manual_move.processing) { // Get motion limit from software endstops, if any @@ -729,7 +768,7 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { // Delta limits XY based on the current offset from center // This assumes the center is 0,0 #if ENABLED(DELTA) - if (axis != Z_AXIS && axis != E_AXIS) { + if (axis != Z_AXIS && TERN1(HAS_EXTRUDERS, axis != E_AXIS)) { max = SQRT(sq(float(PRINTABLE_RADIUS)) - sq(current_position[Y_AXIS - axis])); // (Y_AXIS - axis) == the other axis min = -max; } @@ -750,35 +789,44 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { drawAxisValue(axis); } -static void e_plus() { moveAxis(E_AXIS, 1); } -static void e_minus() { moveAxis(E_AXIS, -1); } -static void x_minus() { moveAxis(X_AXIS, -1); } -static void x_plus() { moveAxis(X_AXIS, 1); } -static void y_plus() { moveAxis(Y_AXIS, 1); } -static void y_minus() { moveAxis(Y_AXIS, -1); } -static void z_plus() { moveAxis(Z_AXIS, 1); } -static void z_minus() { moveAxis(Z_AXIS, -1); } +#if HAS_EXTRUDERS + static void e_plus() { moveAxis(E_AXIS, 1); } + static void e_minus() { moveAxis(E_AXIS, -1); } +#endif +#if HAS_X_AXIS + static void x_minus() { moveAxis(X_AXIS, -1); } + static void x_plus() { moveAxis(X_AXIS, 1); } +#endif +#if HAS_Y_AXIS + static void y_plus() { moveAxis(Y_AXIS, 1); } + static void y_minus() { moveAxis(Y_AXIS, -1); } +#endif +#if HAS_Z_AXIS + static void z_plus() { moveAxis(Z_AXIS, 1); } + static void z_minus() { moveAxis(Z_AXIS, -1); } +#endif #if ENABLED(TOUCH_SCREEN) - static void e_select() { - if (++motionAxisState.e_selection >= EXTRUDERS) - motionAxisState.e_selection = 0; - - quick_feedback(); - drawCurESelection(); - drawAxisValue(E_AXIS); - } + #if HAS_EXTRUDERS + static void e_select() { + if (++motionAxisState.e_selection >= EXTRUDERS) + motionAxisState.e_selection = 0; + quick_feedback(); + drawCurESelection(); + drawAxisValue(E_AXIS); + } + #endif static void do_home() { quick_feedback(); drawMessage(GET_TEXT_F(MSG_LEVEL_BED_HOMING)); queue.inject_P(G28_STR); // Disable touch until home is done - TERN_(TOUCH_SCREEN, touch.disable()); - drawAxisValue(E_AXIS); - drawAxisValue(X_AXIS); - drawAxisValue(Y_AXIS); - drawAxisValue(Z_AXIS); + touch.disable(); + TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); + TERN_(HAS_X_AXIS, drawAxisValue(X_AXIS)); + TERN_(HAS_Y_AXIS, drawAxisValue(Y_AXIS)); + TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); } static void step_size() { @@ -845,7 +893,7 @@ void MarlinUI::move_axis_screen() { // ROW 1 -> E- Y- CurY Z+ int x = X_MARGIN, y = Y_MARGIN, spacing = 0; - drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy); + TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy)); spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; x += BTN_WIDTH + spacing; @@ -858,7 +906,9 @@ void MarlinUI::move_axis_screen() { drawAxisValue(Y_AXIS); x += spacing; - drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #if HAS_Z_AXIS + drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #endif // ROW 2 -> "Ex" X- HOME X+ "Z" y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; @@ -867,8 +917,10 @@ void MarlinUI::move_axis_screen() { motionAxisState.eNamePos.x = x; motionAxisState.eNamePos.y = y; - drawCurESelection(); - TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); + #if HAS_EXTRUDERS + drawCurESelection(); + TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); + #endif x += BTN_WIDTH + spacing; drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy); @@ -883,7 +935,7 @@ void MarlinUI::move_axis_screen() { x += BTN_WIDTH + spacing; motionAxisState.zTypePos.x = x; motionAxisState.zTypePos.y = y; - drawCurZSelection(); + TERN_(HAS_Z_AXIS, drawCurZSelection()); #if BOTH(HAS_BED_PROBE, TOUCH_SCREEN) if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); #endif @@ -893,12 +945,12 @@ void MarlinUI::move_axis_screen() { x = X_MARGIN; spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; - drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); + TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy)); // Cur E motionAxisState.eValuePos.x = x; motionAxisState.eValuePos.y = y + BTN_HEIGHT + 2; - drawAxisValue(E_AXIS); + TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); // Cur X motionAxisState.xValuePos.x = BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; //X- pos @@ -909,12 +961,14 @@ void MarlinUI::move_axis_screen() { drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy); x += BTN_WIDTH + spacing; - drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #if HAS_Z_AXIS + drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #endif // Cur Z motionAxisState.zValuePos.x = x; motionAxisState.zValuePos.y = y + BTN_HEIGHT + 2; - drawAxisValue(Z_AXIS); + TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); // ROW 4 -> step_size disable steppers back y = TFT_HEIGHT - Y_MARGIN - 32; // diff --git a/Marlin/src/lcd/tft/ui_320x240.cpp b/Marlin/src/lcd/tft/ui_320x240.cpp index bac7586a25eb..c2918711f47b 100644 --- a/Marlin/src/lcd/tft/ui_320x240.cpp +++ b/Marlin/src/lcd/tft/ui_320x240.cpp @@ -126,8 +126,12 @@ void draw_heater_status(uint16_t x, uint16_t y, const int8_t Heater) { celsius_t currentTemperature, targetTemperature; if (Heater >= 0) { // HotEnd - currentTemperature = thermalManager.wholeDegHotend(Heater); - targetTemperature = thermalManager.degTargetHotend(Heater); + #if HAS_EXTRUDERS + currentTemperature = thermalManager.wholeDegHotend(Heater); + targetTemperature = thermalManager.degTargetHotend(Heater); + #else + return; + #endif } #if HAS_HEATED_BED else if (Heater == H_BED) { @@ -283,52 +287,59 @@ void MarlinUI::draw_status_screen() { #endif } else { - tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 32, 10), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED , "X"); - const bool nhx = axis_should_home(X_AXIS); - tft_string.set(blink && nhx ? "?" : ftostr4sign(LOGICAL_X_POSITION(current_position.x))); - tft.add_text( - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 32 - tft_string.width() / 2, FONT_LINE_HEIGHT + tft_string.vcenter(FONT_LINE_HEIGHT), - #else - 68 - tft_string.width(), tft_string.vcenter(FONT_LINE_HEIGHT), - #endif - nhx ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string - ); + #if HAS_X_AXIS + tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 32, 10), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED , "X"); + const bool nhx = axis_should_home(X_AXIS); + tft_string.set(blink && nhx ? "?" : ftostr4sign(LOGICAL_X_POSITION(current_position.x))); + tft.add_text( + #if ENABLED(TFT_COLOR_UI_PORTRAIT) + 32 - tft_string.width() / 2, FONT_LINE_HEIGHT + tft_string.vcenter(FONT_LINE_HEIGHT), + #else + 68 - tft_string.width(), tft_string.vcenter(FONT_LINE_HEIGHT), + #endif + nhx ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string + ); + #endif + + #if HAS_Y_AXIS + tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 110, 127), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED , "Y"); + const bool nhy = axis_should_home(Y_AXIS); + tft_string.set(blink && nhy ? "?" : ftostr4sign(LOGICAL_Y_POSITION(current_position.y))); + tft.add_text( + #if ENABLED(TFT_COLOR_UI_PORTRAIT) + 110 - tft_string.width() / 2, FONT_LINE_HEIGHT + tft_string.vcenter(FONT_LINE_HEIGHT), + #else + 185 - tft_string.width(), tft_string.vcenter(FONT_LINE_HEIGHT), + #endif + nhy ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string + ); + #endif + } - tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 110, 127), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED , "Y"); - const bool nhy = axis_should_home(Y_AXIS); - tft_string.set(blink && nhy ? "?" : ftostr4sign(LOGICAL_Y_POSITION(current_position.y))); + #if HAS_Z_AXIS + tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 192, 219), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED , "Z"); + const bool nhz = axis_should_home(Z_AXIS); + uint16_t offset = 25; + if (blink && nhz) + tft_string.set('?'); + else { + const float z = LOGICAL_Z_POSITION(current_position.z); + tft_string.set(ftostr52sp((int16_t)z)); + tft_string.rtrim(); + offset += tft_string.width(); + + tft_string.set(ftostr52sp(z)); + offset -= tft_string.width(); + } tft.add_text( #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 110 - tft_string.width() / 2, FONT_LINE_HEIGHT + tft_string.vcenter(FONT_LINE_HEIGHT), + 192 - tft_string.width() / 2, FONT_LINE_HEIGHT + tft_string.vcenter(FONT_LINE_HEIGHT), #else - 185 - tft_string.width(), tft_string.vcenter(FONT_LINE_HEIGHT), + 301 - tft_string.width() - offset, tft_string.vcenter(FONT_LINE_HEIGHT), #endif - nhy ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string - ); - } - - tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 192, 219), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED , "Z"); - const bool nhz = axis_should_home(Z_AXIS); - uint16_t offset = 25; - if (blink && nhz) - tft_string.set('?'); - else { - const float z = LOGICAL_Z_POSITION(current_position.z); - tft_string.set(ftostr52sp((int16_t)z)); - tft_string.rtrim(); - offset += tft_string.width(); + nhz ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + #endif - tft_string.set(ftostr52sp(z)); - offset -= tft_string.width(); - } - tft.add_text( - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 192 - tft_string.width() / 2, FONT_LINE_HEIGHT + tft_string.vcenter(FONT_LINE_HEIGHT), - #else - 301 - tft_string.width() - offset, tft_string.vcenter(FONT_LINE_HEIGHT), - #endif - nhz ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); TERN_(TOUCH_SCREEN, touch.add_control(MOVE_AXIS, 0, 103, #if ENABLED(TFT_COLOR_UI_PORTRAIT) 232, FONT_LINE_HEIGHT * 2 @@ -361,29 +372,31 @@ void MarlinUI::draw_status_screen() { , 32 )); - // flow rate - tft.canvas( - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 140, 172, 80 - #else - 170, 136, 84 - #endif - , 32 - ); - tft.set_background(COLOR_BACKGROUND); - color = planner.flow_percentage[0] == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; - tft.add_image(0, 0, imgFlowRate, color); - tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); - tft_string.add('%'); - tft.add_text(32, tft_string.vcenter(30), color , tft_string); - TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 140, 172, 80 - #else - 170, 136, 84 - #endif - , 32, active_extruder - )); + // Flow rate + #if HAS_EXTRUDERS + tft.canvas( + #if ENABLED(TFT_COLOR_UI_PORTRAIT) + 140, 172, 80 + #else + 170, 136, 84 + #endif + , 32 + ); + tft.set_background(COLOR_BACKGROUND); + color = planner.flow_percentage[0] == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; + tft.add_image(0, 0, imgFlowRate, color); + tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); + tft_string.add('%'); + tft.add_text(32, tft_string.vcenter(30), color , tft_string); + TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, + #if ENABLED(TFT_COLOR_UI_PORTRAIT) + 140, 172, 80 + #else + 170, 136, 84 + #endif + , 32, active_extruder + )); + #endif // HAS_EXTRUDERS // print duration char buffer[14]; @@ -666,16 +679,26 @@ void MenuItem_confirm::draw_select_screen(FSTR_P const yes, FSTR_P const no, con #define Z_SELECTION_Z 1 #define Z_SELECTION_Z_PROBE -1 -struct MotionAxisState { - xy_int_t xValuePos, yValuePos, zValuePos, eValuePos, stepValuePos, zTypePos, eNamePos; +struct { + #if HAS_X_AXIS + xy_int_t xValuePos; + #endif + #if HAS_Y_AXIS + xy_int_t yValuePos; + #endif + #if HAS_Z_AXIS + xy_int_t zValuePos, zTypePos; + int z_selection = Z_SELECTION_Z; + #endif + #if HAS_EXTRUDERS + xy_int_t eValuePos, eNamePos; + uint8_t e_selection = 0; + #endif + xy_int_t stepValuePos; float currentStepSize = 10.0; - int z_selection = Z_SELECTION_Z; - uint8_t e_selection = 0; bool blocked = false; char message[32]; -}; - -MotionAxisState motionAxisState; +} motionAxisState; #define BTN_WIDTH 48 #define BTN_HEIGHT 39 @@ -706,27 +729,30 @@ static void drawCurStepValue() { tft.add_text(CUR_STEP_VALUE_WIDTH - tft_string.width(), 0, COLOR_AXIS_HOMED, tft_string); } -static void drawCurZSelection() { - tft_string.set('Z'); - tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), 20); - tft.set_background(COLOR_BACKGROUND); - tft.add_text(0, 0, Z_BTN_COLOR, tft_string); - tft.queue.sync(); - tft_string.set(F("Offset")); - tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + 34, tft_string.width(), 20); - tft.set_background(COLOR_BACKGROUND); - if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { +#if HAS_Z_AXIS + static void drawCurZSelection() { + tft_string.set('Z'); + tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), 20); + tft.set_background(COLOR_BACKGROUND); tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + tft.queue.sync(); + tft_string.set(F("Offset")); + tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + 34, tft_string.width(), 20); + tft.set_background(COLOR_BACKGROUND); + if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) + tft.add_text(0, 0, Z_BTN_COLOR, tft_string); } -} +#endif -static void drawCurESelection() { - tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set('E'); - tft.add_text(0, 0, E_BTN_COLOR , tft_string); - tft.add_text(tft_string.width(), 0, E_BTN_COLOR, ui8tostr3rj(motionAxisState.e_selection)); -} +#if HAS_EXTRUDERS + static void drawCurESelection() { + tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft_string.set('E'); + tft.add_text(0, 0, E_BTN_COLOR , tft_string); + tft.add_text(tft_string.width(), 0, E_BTN_COLOR, ui8tostr3rj(motionAxisState.e_selection)); + } +#endif static void drawMessage(PGM_P const msg) { tft.canvas(X_MARGIN, @@ -751,10 +777,18 @@ static void drawAxisValue(const AxisEnum axis) { xy_int_t pos; uint16_t color; switch (axis) { - case X_AXIS: pos = motionAxisState.xValuePos; color = X_BTN_COLOR; break; - case Y_AXIS: pos = motionAxisState.yValuePos; color = Y_BTN_COLOR; break; - case Z_AXIS: pos = motionAxisState.zValuePos; color = Z_BTN_COLOR; break; - case E_AXIS: pos = motionAxisState.eValuePos; color = E_BTN_COLOR; break; + #if HAS_X_AXIS + case X_AXIS: pos = motionAxisState.xValuePos; color = X_BTN_COLOR; break; + #endif + #if HAS_Y_AXIS + case Y_AXIS: pos = motionAxisState.yValuePos; color = Y_BTN_COLOR; break; + #endif + #if HAS_Z_AXIS + case Z_AXIS: pos = motionAxisState.zValuePos; color = Z_BTN_COLOR; break; + #endif + #if HAS_EXTRUDERS + case E_AXIS: pos = motionAxisState.eValuePos; color = E_BTN_COLOR; break; + #endif default: return; } tft.canvas(pos.x, pos.y, BTN_WIDTH + X_MARGIN, FONT_LINE_HEIGHT); @@ -766,53 +800,57 @@ static void drawAxisValue(const AxisEnum axis) { static void moveAxis(const AxisEnum axis, const int8_t direction) { quick_feedback(); - if (axis == E_AXIS && thermalManager.tooColdToExtrude(motionAxisState.e_selection)) { - drawMessage(F("Too cold")); - return; - } + #if HAS_EXTRUDERS + if (axis == E_AXIS && thermalManager.tooColdToExtrude(motionAxisState.e_selection)) { + drawMessage(F("Too cold")); + return; + } + #endif const float diff = motionAxisState.currentStepSize * direction; - if (axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { - #if ENABLED(BABYSTEP_ZPROBE_OFFSET) - const int16_t babystep_increment = direction * BABYSTEP_SIZE_Z; - const bool do_probe = DISABLED(BABYSTEP_HOTEND_Z_OFFSET) || active_extruder == 0; - const float bsDiff = planner.mm_per_step[Z_AXIS] * babystep_increment, - new_probe_offset = probe.offset.z + bsDiff, - new_offs = TERN(BABYSTEP_HOTEND_Z_OFFSET - , do_probe ? new_probe_offset : hotend_offset[active_extruder].z - bsDiff - , new_probe_offset - ); - if (WITHIN(new_offs, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { - babystep.add_steps(Z_AXIS, babystep_increment); - if (do_probe) - probe.offset.z = new_offs; - else - TERN(BABYSTEP_HOTEND_Z_OFFSET, hotend_offset[active_extruder].z = new_offs, NOOP); - drawMessage(NUL_STR); // clear the error + #if HAS_Z_AXIS + if (axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { + #if ENABLED(BABYSTEP_ZPROBE_OFFSET) + const int16_t babystep_increment = direction * BABYSTEP_SIZE_Z; + const bool do_probe = DISABLED(BABYSTEP_HOTEND_Z_OFFSET) || active_extruder == 0; + const float bsDiff = planner.mm_per_step[Z_AXIS] * babystep_increment, + new_probe_offset = probe.offset.z + bsDiff, + new_offs = TERN(BABYSTEP_HOTEND_Z_OFFSET + , do_probe ? new_probe_offset : hotend_offset[active_extruder].z - bsDiff + , new_probe_offset + ); + if (WITHIN(new_offs, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { + babystep.add_steps(Z_AXIS, babystep_increment); + if (do_probe) + probe.offset.z = new_offs; + else + TERN(BABYSTEP_HOTEND_Z_OFFSET, hotend_offset[active_extruder].z = new_offs, NOOP); + drawMessage(NUL_STR); // clear the error + drawAxisValue(axis); + } + else { + drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); + } + #elif HAS_BED_PROBE + // only change probe.offset.z + probe.offset.z += diff; + if (direction < 0 && current_position[axis] < Z_PROBE_OFFSET_RANGE_MIN) { + current_position[axis] = Z_PROBE_OFFSET_RANGE_MIN; + drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); + } + else if (direction > 0 && current_position[axis] > Z_PROBE_OFFSET_RANGE_MAX) { + current_position[axis] = Z_PROBE_OFFSET_RANGE_MAX; + drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); + } + else { + drawMessage(NUL_STR); // clear the error + } drawAxisValue(axis); - } - else { - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - #elif HAS_BED_PROBE - // only change probe.offset.z - probe.offset.z += diff; - if (direction < 0 && current_position[axis] < Z_PROBE_OFFSET_RANGE_MIN) { - current_position[axis] = Z_PROBE_OFFSET_RANGE_MIN; - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - else if (direction > 0 && current_position[axis] > Z_PROBE_OFFSET_RANGE_MAX) { - current_position[axis] = Z_PROBE_OFFSET_RANGE_MAX; - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - else { - drawMessage(NUL_STR); // clear the error - } - drawAxisValue(axis); - #endif - return; - } + #endif + return; + } + #endif // HAS_Z_AXIS if (!ui.manual_move.processing) { // Get motion limit from software endstops, if any @@ -822,7 +860,7 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { // Delta limits XY based on the current offset from center // This assumes the center is 0,0 #if ENABLED(DELTA) - if (axis != Z_AXIS && axis != E_AXIS) { + if (axis != Z_AXIS && TERN1(HAS_EXTRUDERS, axis != E_AXIS)) { max = SQRT(sq(float(PRINTABLE_RADIUS)) - sq(current_position[Y_AXIS - axis])); // (Y_AXIS - axis) == the other axis min = -max; } @@ -843,35 +881,44 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { drawAxisValue(axis); } -static void e_plus() { moveAxis(E_AXIS, 1); } -static void e_minus() { moveAxis(E_AXIS, -1); } -static void x_minus() { moveAxis(X_AXIS, -1); } -static void x_plus() { moveAxis(X_AXIS, 1); } -static void y_plus() { moveAxis(Y_AXIS, 1); } -static void y_minus() { moveAxis(Y_AXIS, -1); } -static void z_plus() { moveAxis(Z_AXIS, 1); } -static void z_minus() { moveAxis(Z_AXIS, -1); } +#if HAS_EXTRUDERS + static void e_plus() { moveAxis(E_AXIS, 1); } + static void e_minus() { moveAxis(E_AXIS, -1); } +#endif +#if HAS_X_AXIS + static void x_minus() { moveAxis(X_AXIS, -1); } + static void x_plus() { moveAxis(X_AXIS, 1); } +#endif +#if HAS_Y_AXIS + static void y_plus() { moveAxis(Y_AXIS, 1); } + static void y_minus() { moveAxis(Y_AXIS, -1); } +#endif +#if HAS_Z_AXIS + static void z_plus() { moveAxis(Z_AXIS, 1); } + static void z_minus() { moveAxis(Z_AXIS, -1); } +#endif #if ENABLED(TOUCH_SCREEN) - static void e_select() { - if (++motionAxisState.e_selection >= EXTRUDERS) - motionAxisState.e_selection = 0; - - quick_feedback(); - drawCurESelection(); - drawAxisValue(E_AXIS); - } + #if HAS_EXTRUDERS + static void e_select() { + if (++motionAxisState.e_selection >= EXTRUDERS) + motionAxisState.e_selection = 0; + quick_feedback(); + drawCurESelection(); + drawAxisValue(E_AXIS); + } + #endif static void do_home() { quick_feedback(); drawMessage(GET_TEXT_F(MSG_LEVEL_BED_HOMING)); queue.inject_P(G28_STR); // Disable touch until home is done - TERN_(HAS_TFT_XPT2046, touch.disable()); - drawAxisValue(E_AXIS); - drawAxisValue(X_AXIS); - drawAxisValue(Y_AXIS); - drawAxisValue(Z_AXIS); + touch.disable(); + TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); + TERN_(HAS_X_AXIS, drawAxisValue(X_AXIS)); + TERN_(HAS_Y_AXIS, drawAxisValue(Y_AXIS)); + TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); } static void step_size() { @@ -916,14 +963,14 @@ static void drawBtn(int x, int y, const char *label, intptr_t data, MarlinImage else tft.add_image(0, 0, img, bgColor, COLOR_BACKGROUND, COLOR_DARKGREY); - TERN_(HAS_TFT_XPT2046, if (enabled) touch.add_control(BUTTON, x, y, width, height, data)); + TERN_(TOUCH_SCREEN, if (enabled) touch.add_control(BUTTON, x, y, width, height, data)); } void MarlinUI::move_axis_screen() { // Reset defer_status_screen(true); motionAxisState.blocked = false; - TERN_(HAS_TFT_XPT2046, touch.enable()); + TERN_(TOUCH_SCREEN, touch.enable()); ui.clear_lcd(); @@ -949,7 +996,9 @@ void MarlinUI::move_axis_screen() { x += BTN_WIDTH + spacing; uint16_t zplus_x = x; - drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #if HAS_Z_AXIS + drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #endif // ROW 2 -> "Ex" CurY "Z" x = X_MARGIN; @@ -957,8 +1006,10 @@ void MarlinUI::move_axis_screen() { motionAxisState.eNamePos.x = x; motionAxisState.eNamePos.y = y; - drawCurESelection(); - TERN_(HAS_TFT_XPT2046, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); + #if HAS_EXTRUDERS + drawCurESelection(); + TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); + #endif motionAxisState.yValuePos.x = yplus_x; motionAxisState.yValuePos.y = y; @@ -966,7 +1017,7 @@ void MarlinUI::move_axis_screen() { motionAxisState.zTypePos.x = zplus_x; motionAxisState.zTypePos.y = y; - drawCurZSelection(); + TERN_(HAS_Z_AXIS, drawCurZSelection()); // ROW 3 -> X- HOME X+ y += (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3 - 2; @@ -974,7 +1025,7 @@ void MarlinUI::move_axis_screen() { drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy); - TERN_(HAS_TFT_XPT2046, add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); drawBtn(zplus_x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy); @@ -993,23 +1044,27 @@ void MarlinUI::move_axis_screen() { y += (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3 - 2; x = X_MARGIN; - drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); + #if HAS_EXTRUDERS + drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); + #endif // Cur E motionAxisState.eValuePos.x = x; motionAxisState.eValuePos.y = y + BTN_HEIGHT + 2; - drawAxisValue(E_AXIS); + TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); x += BTN_WIDTH + spacing; drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy); x += BTN_WIDTH + spacing; - drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #if HAS_Z_AXIS + drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #endif // Cur Z motionAxisState.zValuePos.x = x; motionAxisState.zValuePos.y = y + BTN_HEIGHT + 2; - drawAxisValue(Z_AXIS); + TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); // ROW 6 -> step_size disable steppers back y = TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT; // @@ -1019,7 +1074,7 @@ void MarlinUI::move_axis_screen() { if (!busy) { drawCurStepValue(); - TERN_(HAS_TFT_XPT2046, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); + TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); } // aligned with x+ @@ -1030,7 +1085,7 @@ void MarlinUI::move_axis_screen() { // ROW 1 -> E+ Y+ CurY Z+ int x = X_MARGIN, y = Y_MARGIN, spacing = 0; - drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy); + TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy)); spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; x += BTN_WIDTH + spacing; @@ -1044,7 +1099,9 @@ void MarlinUI::move_axis_screen() { drawAxisValue(Y_AXIS); x += spacing; - drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #if HAS_Z_AXIS + drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #endif // ROW 2 -> "Ex" X- HOME X+ "Z" y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; @@ -1053,14 +1110,16 @@ void MarlinUI::move_axis_screen() { motionAxisState.eNamePos.x = x; motionAxisState.eNamePos.y = y; - drawCurESelection(); - TERN_(HAS_TFT_XPT2046, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); + #if HAS_EXTRUDERS + drawCurESelection(); + TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); + #endif x += BTN_WIDTH + spacing; drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy); x += BTN_WIDTH + spacing; //imgHome is 64x64 - TERN_(HAS_TFT_XPT2046, add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); x += BTN_WIDTH + spacing; uint16_t xplus_x = x; @@ -1069,9 +1128,9 @@ void MarlinUI::move_axis_screen() { x += BTN_WIDTH + spacing; motionAxisState.zTypePos.x = x; motionAxisState.zTypePos.y = y; - drawCurZSelection(); + TERN_(HAS_Z_AXIS, drawCurZSelection()); #if BOTH(HAS_BED_PROBE, TOUCH_SCREEN) - if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); + if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); #endif // ROW 3 -> E- CurX Y- Z- @@ -1079,12 +1138,12 @@ void MarlinUI::move_axis_screen() { x = X_MARGIN; spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; - drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); + TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy)); // Cur E motionAxisState.eValuePos.x = x; motionAxisState.eValuePos.y = y + BTN_HEIGHT + 2; - drawAxisValue(E_AXIS); + TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); // Cur X motionAxisState.xValuePos.x = BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; //X- pos @@ -1095,12 +1154,14 @@ void MarlinUI::move_axis_screen() { drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy); x += BTN_WIDTH + spacing; - drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #if HAS_Z_AXIS + drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #endif // Cur Z motionAxisState.zValuePos.x = x; motionAxisState.zValuePos.y = y + BTN_HEIGHT + 2; - drawAxisValue(Z_AXIS); + TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); // ROW 4 -> step_size disable steppers back y = TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT; // @@ -1109,7 +1170,7 @@ void MarlinUI::move_axis_screen() { motionAxisState.stepValuePos.y = TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT; if (!busy) { drawCurStepValue(); - TERN_(HAS_TFT_XPT2046, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); + TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); } // aligned with x+ @@ -1117,7 +1178,7 @@ void MarlinUI::move_axis_screen() { #endif // !TFT_COLOR_UI_PORTRAIT - TERN_(HAS_TFT_XPT2046, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); } #endif // HAS_UI_320x240 diff --git a/Marlin/src/lcd/tft/ui_480x320.cpp b/Marlin/src/lcd/tft/ui_480x320.cpp index bc4ea0e5e223..e1ddfe5e1ab1 100644 --- a/Marlin/src/lcd/tft/ui_480x320.cpp +++ b/Marlin/src/lcd/tft/ui_480x320.cpp @@ -124,8 +124,12 @@ void draw_heater_status(uint16_t x, uint16_t y, const int8_t Heater) { celsius_t currentTemperature, targetTemperature; if (Heater >= 0) { // HotEnd - currentTemperature = thermalManager.wholeDegHotend(Heater); - targetTemperature = thermalManager.degTargetHotend(Heater); + #if HAS_EXTRUDERS + currentTemperature = thermalManager.wholeDegHotend(Heater); + targetTemperature = thermalManager.degTargetHotend(Heater); + #else + return; + #endif } #if HAS_HEATED_BED else if (Heater == H_BED) { @@ -271,31 +275,37 @@ void MarlinUI::draw_status_screen() { } else { // Coords in mask "X____Y____Z____" - tft_string.set("X"); - tft.add_text(coords_width / 30 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, tft_string); - - const bool nhx = axis_should_home(X_AXIS); - tft_string.set(blink && nhx ? "?" : ftostr4sign(LOGICAL_X_POSITION(current_position.x))); - tft_string.ltrim(); - tft.add_text(coords_width / 5 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), nhx ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + #if HAS_X_AXIS + tft_string.set("X"); + tft.add_text(coords_width / 30 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, tft_string); + + const bool nhx = axis_should_home(X_AXIS); + tft_string.set(blink && nhx ? "?" : ftostr4sign(LOGICAL_X_POSITION(current_position.x))); + tft_string.ltrim(); + tft.add_text(coords_width / 5 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), nhx ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + #endif - tft_string.set("Y"); - tft.add_text(11 * coords_width / 30 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, tft_string); + #if HAS_Y_AXIS + tft_string.set("Y"); + tft.add_text(11 * coords_width / 30 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, tft_string); - const bool nhy = axis_should_home(Y_AXIS); - tft_string.set(blink && nhy ? "?" : ftostr4sign(LOGICAL_Y_POSITION(current_position.y))); - tft_string.ltrim(); - tft.add_text(8 * coords_width / 15 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), nhy ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + const bool nhy = axis_should_home(Y_AXIS); + tft_string.set(blink && nhy ? "?" : ftostr4sign(LOGICAL_Y_POSITION(current_position.y))); + tft_string.ltrim(); + tft.add_text(8 * coords_width / 15 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), nhy ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + #endif } - tft_string.set("Z"); - tft.add_text(7 * coords_width / 10 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, tft_string); + #if HAS_Z_AXIS + tft_string.set("Z"); + tft.add_text(7 * coords_width / 10 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, tft_string); - const bool nhz = axis_should_home(Z_AXIS); - tft_string.set(blink && nhz ? "?" : ftostr52sp(LOGICAL_Z_POSITION(current_position.z))); - tft_string.ltrim(); - tft_string.rtrim(); - tft.add_text(13 * coords_width / 15 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), nhz ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + const bool nhz = axis_should_home(Z_AXIS); + tft_string.set(blink && nhz ? "?" : ftostr52sp(LOGICAL_Z_POSITION(current_position.z))); + tft_string.ltrim(); + tft_string.rtrim(); + tft.add_text(13 * coords_width / 15 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), nhz ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + #endif TERN_(TOUCH_SCREEN, touch.add_control(MOVE_AXIS, 4, y, TFT_WIDTH - 8, FONT_LINE_HEIGHT)); @@ -315,19 +325,21 @@ void MarlinUI::draw_status_screen() { tft.add_text(36, tft_string.vcenter(30), color , tft_string); TERN_(TOUCH_SCREEN, touch.add_control(FEEDRATE, x, y, component_width, 32)); - // Flow rate (preparing) - tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); - tft_string.add('%'); - component_width = 36 + tft_string.width(); - color = planner.flow_percentage[0] == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; - x = FLOWRATE_X(component_width); + #if HAS_EXTRUDERS + // Flow rate (preparing) + tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); + tft_string.add('%'); + component_width = 36 + tft_string.width(); + color = planner.flow_percentage[0] == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; + x = FLOWRATE_X(component_width); - // Flow rate (drawing) - tft.canvas(x, y, component_width, 32); - tft.set_background(COLOR_BACKGROUND); - tft.add_image(0, 0, imgFlowRate, color); - tft.add_text(36, tft_string.vcenter(30), color , tft_string); - TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, x, y, component_width, 32, active_extruder)); + // Flow rate (drawing) + tft.canvas(x, y, component_width, 32); + tft.set_background(COLOR_BACKGROUND); + tft.add_image(0, 0, imgFlowRate, color); + tft.add_text(36, tft_string.vcenter(30), color , tft_string); + TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, x, y, component_width, 32, active_extruder)); + #endif #if TFT_COLOR_UI_PORTRAIT || DISABLED(TOUCH_SCREEN) y += STATUS_MARGIN_SIZE + 32; @@ -586,16 +598,26 @@ void MenuItem_confirm::draw_select_screen(FSTR_P const yes, FSTR_P const no, con #define Z_SELECTION_Z 1 #define Z_SELECTION_Z_PROBE -1 -struct MotionAxisState { - xy_int_t xValuePos, yValuePos, zValuePos, eValuePos, stepValuePos, zTypePos, eNamePos; +struct { + #if HAS_X_AXIS + xy_int_t xValuePos; + #endif + #if HAS_Y_AXIS + xy_int_t yValuePos; + #endif + #if HAS_Z_AXIS + xy_int_t zValuePos, zTypePos; + int z_selection = Z_SELECTION_Z; + #endif + #if HAS_EXTRUDERS + xy_int_t eValuePos, eNamePos; + uint8_t e_selection = 0; + #endif + xy_int_t stepValuePos; float currentStepSize = 10.0; - int z_selection = Z_SELECTION_Z; - uint8_t e_selection = 0; bool blocked = false; char message[32]; -}; - -MotionAxisState motionAxisState; +} motionAxisState; #define BTN_WIDTH 64 #define BTN_HEIGHT 52 @@ -622,27 +644,30 @@ static void drawCurStepValue() { tft.add_text(tft_string.center(CUR_STEP_VALUE_WIDTH), 0, COLOR_AXIS_HOMED, tft_string); } -static void drawCurZSelection() { - tft_string.set('Z'); - tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), 34); - tft.set_background(COLOR_BACKGROUND); - tft.add_text(0, 0, Z_BTN_COLOR, tft_string); - tft.queue.sync(); - tft_string.set(F("Offset")); - tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + 34, tft_string.width(), 34); - tft.set_background(COLOR_BACKGROUND); - if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { +#if HAS_Z_AXIS + static void drawCurZSelection() { + tft_string.set('Z'); + tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), 34); + tft.set_background(COLOR_BACKGROUND); tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + tft.queue.sync(); + tft_string.set(F("Offset")); + tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + 34, tft_string.width(), 34); + tft.set_background(COLOR_BACKGROUND); + if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) + tft.add_text(0, 0, Z_BTN_COLOR, tft_string); } -} +#endif -static void drawCurESelection() { - tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set('E'); - tft.add_text(0, 0, E_BTN_COLOR , tft_string); - tft.add_text(tft_string.width(), 0, E_BTN_COLOR, ui8tostr3rj(motionAxisState.e_selection)); -} +#if HAS_EXTRUDERS + static void drawCurESelection() { + tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft_string.set('E'); + tft.add_text(0, 0, E_BTN_COLOR , tft_string); + tft.add_text(tft_string.width(), 0, E_BTN_COLOR, ui8tostr3rj(motionAxisState.e_selection)); + } +#endif static void drawMessage(PGM_P const msg) { tft.canvas(X_MARGIN, TFT_HEIGHT - Y_MARGIN - 34, TFT_HEIGHT / 2, 34); @@ -660,10 +685,18 @@ static void drawAxisValue(const AxisEnum axis) { xy_int_t pos; uint16_t color; switch (axis) { - case X_AXIS: pos = motionAxisState.xValuePos; color = X_BTN_COLOR; break; - case Y_AXIS: pos = motionAxisState.yValuePos; color = Y_BTN_COLOR; break; - case Z_AXIS: pos = motionAxisState.zValuePos; color = Z_BTN_COLOR; break; - case E_AXIS: pos = motionAxisState.eValuePos; color = E_BTN_COLOR; break; + #if HAS_X_AXIS + case X_AXIS: pos = motionAxisState.xValuePos; color = X_BTN_COLOR; break; + #endif + #if HAS_Y_AXIS + case Y_AXIS: pos = motionAxisState.yValuePos; color = Y_BTN_COLOR; break; + #endif + #if HAS_Z_AXIS + case Z_AXIS: pos = motionAxisState.zValuePos; color = Z_BTN_COLOR; break; + #endif + #if HAS_EXTRUDERS + case E_AXIS: pos = motionAxisState.eValuePos; color = E_BTN_COLOR; break; + #endif default: return; } tft.canvas(pos.x, pos.y, BTN_WIDTH + X_MARGIN, BTN_HEIGHT); @@ -675,53 +708,57 @@ static void drawAxisValue(const AxisEnum axis) { static void moveAxis(const AxisEnum axis, const int8_t direction) { quick_feedback(); - if (axis == E_AXIS && thermalManager.tooColdToExtrude(motionAxisState.e_selection)) { - drawMessage(F("Too cold")); - return; - } + #if HAS_EXTRUDERS + if (axis == E_AXIS && thermalManager.tooColdToExtrude(motionAxisState.e_selection)) { + drawMessage(F("Too cold")); + return; + } + #endif const float diff = motionAxisState.currentStepSize * direction; - if (axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { - #if ENABLED(BABYSTEP_ZPROBE_OFFSET) - const int16_t babystep_increment = direction * BABYSTEP_SIZE_Z; - const bool do_probe = DISABLED(BABYSTEP_HOTEND_Z_OFFSET) || active_extruder == 0; - const float bsDiff = planner.mm_per_step[Z_AXIS] * babystep_increment, - new_probe_offset = probe.offset.z + bsDiff, - new_offs = TERN(BABYSTEP_HOTEND_Z_OFFSET - , do_probe ? new_probe_offset : hotend_offset[active_extruder].z - bsDiff - , new_probe_offset - ); - if (WITHIN(new_offs, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { - babystep.add_steps(Z_AXIS, babystep_increment); - if (do_probe) - probe.offset.z = new_offs; - else - TERN(BABYSTEP_HOTEND_Z_OFFSET, hotend_offset[active_extruder].z = new_offs, NOOP); - drawMessage(NUL_STR); // clear the error + #if HAS_Z_AXIS + if (axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { + #if ENABLED(BABYSTEP_ZPROBE_OFFSET) + const int16_t babystep_increment = direction * BABYSTEP_SIZE_Z; + const bool do_probe = DISABLED(BABYSTEP_HOTEND_Z_OFFSET) || active_extruder == 0; + const float bsDiff = planner.mm_per_step[Z_AXIS] * babystep_increment, + new_probe_offset = probe.offset.z + bsDiff, + new_offs = TERN(BABYSTEP_HOTEND_Z_OFFSET + , do_probe ? new_probe_offset : hotend_offset[active_extruder].z - bsDiff + , new_probe_offset + ); + if (WITHIN(new_offs, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { + babystep.add_steps(Z_AXIS, babystep_increment); + if (do_probe) + probe.offset.z = new_offs; + else + TERN(BABYSTEP_HOTEND_Z_OFFSET, hotend_offset[active_extruder].z = new_offs, NOOP); + drawMessage(NUL_STR); // clear the error + drawAxisValue(axis); + } + else { + drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); + } + #elif HAS_BED_PROBE + // only change probe.offset.z + probe.offset.z += diff; + if (direction < 0 && current_position[axis] < Z_PROBE_OFFSET_RANGE_MIN) { + current_position[axis] = Z_PROBE_OFFSET_RANGE_MIN; + drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); + } + else if (direction > 0 && current_position[axis] > Z_PROBE_OFFSET_RANGE_MAX) { + current_position[axis] = Z_PROBE_OFFSET_RANGE_MAX; + drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); + } + else { + drawMessage(NUL_STR); // clear the error + } drawAxisValue(axis); - } - else { - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - #elif HAS_BED_PROBE - // only change probe.offset.z - probe.offset.z += diff; - if (direction < 0 && current_position[axis] < Z_PROBE_OFFSET_RANGE_MIN) { - current_position[axis] = Z_PROBE_OFFSET_RANGE_MIN; - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - else if (direction > 0 && current_position[axis] > Z_PROBE_OFFSET_RANGE_MAX) { - current_position[axis] = Z_PROBE_OFFSET_RANGE_MAX; - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - else { - drawMessage(NUL_STR); // clear the error - } - drawAxisValue(axis); - #endif - return; - } + #endif + return; + } + #endif // HAS_Z_AXIS if (!ui.manual_move.processing) { // Get motion limit from software endstops, if any @@ -731,7 +768,7 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { // Delta limits XY based on the current offset from center // This assumes the center is 0,0 #if ENABLED(DELTA) - if (axis != Z_AXIS && axis != E_AXIS) { + if (axis != Z_AXIS && TERN1(HAS_EXTRUDERS, axis != E_AXIS)) { max = SQRT(sq(float(PRINTABLE_RADIUS)) - sq(current_position[Y_AXIS - axis])); // (Y_AXIS - axis) == the other axis min = -max; } @@ -752,35 +789,44 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { drawAxisValue(axis); } -static void e_plus() { moveAxis(E_AXIS, 1); } -static void e_minus() { moveAxis(E_AXIS, -1); } -static void x_minus() { moveAxis(X_AXIS, -1); } -static void x_plus() { moveAxis(X_AXIS, 1); } -static void y_plus() { moveAxis(Y_AXIS, 1); } -static void y_minus() { moveAxis(Y_AXIS, -1); } -static void z_plus() { moveAxis(Z_AXIS, 1); } -static void z_minus() { moveAxis(Z_AXIS, -1); } +#if HAS_EXTRUDERS + static void e_plus() { moveAxis(E_AXIS, 1); } + static void e_minus() { moveAxis(E_AXIS, -1); } +#endif +#if HAS_X_AXIS + static void x_minus() { moveAxis(X_AXIS, -1); } + static void x_plus() { moveAxis(X_AXIS, 1); } +#endif +#if HAS_Y_AXIS + static void y_plus() { moveAxis(Y_AXIS, 1); } + static void y_minus() { moveAxis(Y_AXIS, -1); } +#endif +#if HAS_Z_AXIS + static void z_plus() { moveAxis(Z_AXIS, 1); } + static void z_minus() { moveAxis(Z_AXIS, -1); } +#endif #if ENABLED(TOUCH_SCREEN) - static void e_select() { - if (++motionAxisState.e_selection >= EXTRUDERS) - motionAxisState.e_selection = 0; - - quick_feedback(); - drawCurESelection(); - drawAxisValue(E_AXIS); - } + #if HAS_EXTRUDERS + static void e_select() { + if (++motionAxisState.e_selection >= EXTRUDERS) + motionAxisState.e_selection = 0; + quick_feedback(); + drawCurESelection(); + drawAxisValue(E_AXIS); + } + #endif static void do_home() { quick_feedback(); drawMessage(GET_TEXT_F(MSG_LEVEL_BED_HOMING)); queue.inject_P(G28_STR); // Disable touch until home is done - TERN_(HAS_TFT_XPT2046, touch.disable()); - drawAxisValue(E_AXIS); - drawAxisValue(X_AXIS); - drawAxisValue(Y_AXIS); - drawAxisValue(Z_AXIS); + touch.disable(); + TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); + TERN_(HAS_X_AXIS, drawAxisValue(X_AXIS)); + TERN_(HAS_Y_AXIS, drawAxisValue(Y_AXIS)); + TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); } static void step_size() { @@ -789,7 +835,7 @@ static void z_minus() { moveAxis(Z_AXIS, -1); } quick_feedback(); drawCurStepValue(); } -#endif +#endif // TOUCH_SCREEN #if BOTH(HAS_BED_PROBE, TOUCH_SCREEN) static void z_select() { @@ -825,14 +871,14 @@ static void drawBtn(int x, int y, const char *label, intptr_t data, MarlinImage tft.add_image(0, 0, img, bgColor, COLOR_BACKGROUND, COLOR_DARKGREY); } - TERN_(HAS_TFT_XPT2046, if (enabled) touch.add_control(BUTTON, x, y, width, height, data)); + TERN_(TOUCH_SCREEN, if (enabled) touch.add_control(BUTTON, x, y, width, height, data)); } void MarlinUI::move_axis_screen() { // Reset defer_status_screen(true); motionAxisState.blocked = false; - TERN_(HAS_TFT_XPT2046, touch.enable()); + TERN_(TOUCH_SCREEN, touch.enable()); ui.clear_lcd(); @@ -842,25 +888,31 @@ void MarlinUI::move_axis_screen() { // Babysteps during printing? Select babystep for Z probe offset if (busy && ENABLED(BABYSTEP_ZPROBE_OFFSET)) - motionAxisState.z_selection = Z_SELECTION_Z_PROBE; + + TERN_(HAS_Z_AXIS, motionAxisState.z_selection = Z_SELECTION_Z_PROBE); // ROW 1 -> E- Y- CurY Z+ int x = X_MARGIN, y = Y_MARGIN, spacing = 0; - drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy); + TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy)); spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; x += BTN_WIDTH + spacing; - drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy); + + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy)); // Cur Y x += BTN_WIDTH; - motionAxisState.yValuePos.x = x + 2; - motionAxisState.yValuePos.y = y; - drawAxisValue(Y_AXIS); + #if HAS_Y_AXIS + motionAxisState.yValuePos.x = x + 2; + motionAxisState.yValuePos.y = y; + drawAxisValue(Y_AXIS); + #endif x += spacing; - drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #if HAS_Z_AXIS + drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #endif // ROW 2 -> "Ex" X- HOME X+ "Z" y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; @@ -869,14 +921,16 @@ void MarlinUI::move_axis_screen() { motionAxisState.eNamePos.x = x; motionAxisState.eNamePos.y = y; - drawCurESelection(); - TERN_(HAS_TFT_XPT2046, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); + #if HAS_EXTRUDERS + drawCurESelection(); + TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); + #endif x += BTN_WIDTH + spacing; drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy); x += BTN_WIDTH + spacing; //imgHome is 64x64 - TERN_(HAS_TFT_XPT2046, add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); x += BTN_WIDTH + spacing; uint16_t xplus_x = x; @@ -885,7 +939,7 @@ void MarlinUI::move_axis_screen() { x += BTN_WIDTH + spacing; motionAxisState.zTypePos.x = x; motionAxisState.zTypePos.y = y; - drawCurZSelection(); + TERN_(HAS_Z_AXIS, drawCurZSelection()); #if BOTH(HAS_BED_PROBE, TOUCH_SCREEN) if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); #endif @@ -895,28 +949,30 @@ void MarlinUI::move_axis_screen() { x = X_MARGIN; spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; - drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); + TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy)); // Cur E motionAxisState.eValuePos.x = x; motionAxisState.eValuePos.y = y + BTN_HEIGHT + 2; - drawAxisValue(E_AXIS); + TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); // Cur X motionAxisState.xValuePos.x = BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; //X- pos motionAxisState.xValuePos.y = y - 10; - drawAxisValue(X_AXIS); + TERN_(HAS_X_AXIS, drawAxisValue(X_AXIS)); x += BTN_WIDTH + spacing; drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy); x += BTN_WIDTH + spacing; - drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #if HAS_Z_AXIS + drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #endif // Cur Z motionAxisState.zValuePos.x = x; motionAxisState.zValuePos.y = y + BTN_HEIGHT + 2; - drawAxisValue(Z_AXIS); + TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); // ROW 4 -> step_size disable steppers back y = TFT_HEIGHT - Y_MARGIN - 32; @@ -925,13 +981,13 @@ void MarlinUI::move_axis_screen() { motionAxisState.stepValuePos.y = y; if (!busy) { drawCurStepValue(); - TERN_(HAS_TFT_XPT2046, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); + TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); } // aligned with x+ drawBtn(xplus_x, TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); - TERN_(HAS_TFT_XPT2046, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); } #endif // HAS_UI_480x320 From 30c3daf03165c2df9966b69ce70ed5e5a75b1fdc Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Sat, 13 May 2023 23:28:17 +0200 Subject: [PATCH 165/427] =?UTF-8?q?=F0=9F=94=A7=20No=20DISABLE=5FOTHER=5FE?= =?UTF-8?q?XTRUDERS=20if=20<=202=20steppers=20(#25818)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/Conditionals_LCD.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 7c67916765ba..5b643386622a 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -681,8 +681,8 @@ #endif -// No inactive extruders with SWITCHING_NOZZLE or Průša MMU1 -#if HAS_SWITCHING_NOZZLE || HAS_PRUSA_MMU1 +// No inactive extruders with SWITCHING_NOZZLE or Průša MMU1 or just 1 E stepper exists +#if HAS_SWITCHING_NOZZLE || HAS_PRUSA_MMU1 || E_STEPPERS < 2 #undef DISABLE_OTHER_EXTRUDERS #endif From de78b60252d83bcf96435c53f1bb2a6c0593c9fd Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Sat, 13 May 2023 23:31:31 +0200 Subject: [PATCH 166/427] =?UTF-8?q?=F0=9F=A9=B9=20Remove=20extraneous=20MP?= =?UTF-8?q?C=20temp=20check=20(#25816)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/temperature.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 8bcaf5d83fc5..09c5ef0cdfe7 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -1064,8 +1064,6 @@ volatile bool Temperature::raw_temps_ready = false; if (sample_count == 0) t1_time = MS_TO_SEC_PRECISE(curr_time_ms - heat_start_time_ms); temp_samples[sample_count++] = current_temp; - if (current_temp >= 200.0f) break; - next_test_time_ms += test_interval_ms * sample_distance; } From e89e67fde0d3d745d7d468e5972456f7484f9027 Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Sat, 13 May 2023 23:36:23 +0200 Subject: [PATCH 167/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Ass?= =?UTF-8?q?ume=20Auto=20Fans=20<=20HOTENDS=20(#25815)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/temperature.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 09c5ef0cdfe7..fa960443caf0 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -1428,7 +1428,7 @@ int16_t Temperature::getHeaterPower(const heater_id_t heater_id) { #define AUTOFAN_CASE(N) TERN(HAS_AUTO_FAN_##N, _AUTOFAN_CASE, _AUTOFAN_NOT)(N) switch (f) { - REPEAT(8, AUTOFAN_CASE) + REPEAT(HOTENDS, AUTOFAN_CASE) #if HAS_AUTO_CHAMBER_FAN && !AUTO_CHAMBER_IS_E case CHAMBER_FAN_INDEX: _UPDATE_AUTO_FAN(CHAMBER, fan_on, CHAMBER_AUTO_FAN_SPEED); break; #endif From 40aa39828598108d519a536d6735354a500a31c6 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Sun, 14 May 2023 09:43:57 +1200 Subject: [PATCH 168/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20large=20edit=20val?= =?UTF-8?q?ue=20to=20encoder=20conversion=20(#25812)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/menu/menu.cpp | 2 +- Marlin/src/lcd/menu/menu.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/lcd/menu/menu.cpp b/Marlin/src/lcd/menu/menu.cpp index 5c4dc12d2651..911a35d482bd 100644 --- a/Marlin/src/lcd/menu/menu.cpp +++ b/Marlin/src/lcd/menu/menu.cpp @@ -138,7 +138,7 @@ void MenuEditItemBase::goto_edit_screen( void * const ev, // Edit value pointer const int32_t minv, // Encoder minimum const int32_t maxv, // Encoder maximum - const uint16_t ep, // Initial encoder value + const uint32_t ep, // Initial encoder value const screenFunc_t cs, // MenuItem_type::draw_edit_screen => MenuEditItemBase::edit() const screenFunc_t cb, // Callback after edit const bool le // Flag to call cb() during editing diff --git a/Marlin/src/lcd/menu/menu.h b/Marlin/src/lcd/menu/menu.h index 9d824e2a4cb1..5a70ddd3a2f9 100644 --- a/Marlin/src/lcd/menu/menu.h +++ b/Marlin/src/lcd/menu/menu.h @@ -168,7 +168,7 @@ class MenuEditItemBase : public MenuItemBase { void * const ev, // Edit value pointer const int32_t minv, // Encoder minimum const int32_t maxv, // Encoder maximum - const uint16_t ep, // Initial encoder value + const uint32_t ep, // Initial encoder value const screenFunc_t cs, // MenuItem_type::draw_edit_screen => MenuEditItemBase::edit() const screenFunc_t cb, // Callback after edit const bool le // Flag to call cb() during editing From 5859ff0280b51b3130e1d13740bfae79eff4d23e Mon Sep 17 00:00:00 2001 From: Vert <45634861+Vertabreak@users.noreply.github.com> Date: Sat, 13 May 2023 17:51:12 -0400 Subject: [PATCH 169/427] =?UTF-8?q?=E2=9C=A8=20NUM=5FREDUNDANT=5FFANS=20(#?= =?UTF-8?q?25808)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/Configuration_adv.h | 7 +++++-- Marlin/src/gcode/temp/M106_M107.cpp | 8 ++------ Marlin/src/inc/Conditionals_adv.h | 5 +++++ Marlin/src/inc/SanityCheck.h | 6 ++++-- Marlin/src/lcd/menu/menu_item.h | 4 ++-- Marlin/src/lcd/menu/menu_temperature.cpp | 18 +++++++++--------- Marlin/src/lcd/menu/menu_tune.cpp | 18 +++++++++--------- Marlin/src/module/temperature.cpp | 8 ++++++-- Marlin/src/module/temperature.h | 11 +++++++++++ 9 files changed, 53 insertions(+), 32 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 262e1a81ca9e..9090eb5a61cd 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -660,9 +660,12 @@ #endif /** - * Use one of the PWM fans as a redundant part-cooling fan + * Assign more PWM fans for part cooling, synchronized with Fan 0 */ -//#define REDUNDANT_PART_COOLING_FAN 2 // Index of the fan to sync with FAN 0. +//#define REDUNDANT_PART_COOLING_FAN 1 // Index of the first fan to synchronize with Fan 0 +#ifdef REDUNDANT_PART_COOLING_FAN + //#define NUM_REDUNDANT_FANS 1 // Number of sequential fans to synchronize with Fan 0 +#endif // @section extruder diff --git a/Marlin/src/gcode/temp/M106_M107.cpp b/Marlin/src/gcode/temp/M106_M107.cpp index 6ba64cd7ba3d..afa2ebfc5669 100644 --- a/Marlin/src/gcode/temp/M106_M107.cpp +++ b/Marlin/src/gcode/temp/M106_M107.cpp @@ -61,9 +61,7 @@ void GcodeSuite::M106() { const uint8_t pfan = parser.byteval('P', _ALT_P); if (pfan >= _CNT_P) return; - #if REDUNDANT_PART_COOLING_FAN - if (pfan == REDUNDANT_PART_COOLING_FAN) return; - #endif + if (FAN_IS_REDUNDANT(pfan)) return; #if ENABLED(EXTRA_FAN_SPEED) const uint16_t t = parser.intval('T'); @@ -102,9 +100,7 @@ void GcodeSuite::M106() { void GcodeSuite::M107() { const uint8_t pfan = parser.byteval('P', _ALT_P); if (pfan >= _CNT_P) return; - #if REDUNDANT_PART_COOLING_FAN - if (pfan == REDUNDANT_PART_COOLING_FAN) return; - #endif + if (FAN_IS_REDUNDANT(pfan)) return; thermalManager.set_fan_speed(pfan, 0); diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index d715b1bd1268..70644ddf0d1b 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -1280,3 +1280,8 @@ #define MULTISTEPPING_LIMIT 128 #define MULTISTEPPING_LIMIT_WARNING 1 #endif + +// One redundant cooling fan by default +#if defined(REDUNDANT_PART_COOLING_FAN) && !defined(NUM_REDUNDANT_FANS) + #define NUM_REDUNDANT_FANS 1 +#endif diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 9c54208c538f..53333d872782 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -1843,8 +1843,10 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #ifdef REDUNDANT_PART_COOLING_FAN #if FAN_COUNT < 2 #error "REDUNDANT_PART_COOLING_FAN requires a board with at least two PWM fans." - #else - static_assert(WITHIN(REDUNDANT_PART_COOLING_FAN, 1, FAN_COUNT - 1), "REDUNDANT_PART_COOLING_FAN must be between 1 and " STRINGIFY(DECREMENT(FAN_COUNT)) "."); + #elif !WITHIN(REDUNDANT_PART_COOLING_FAN, 1, FAN_COUNT - 1) + static_assert(false, "REDUNDANT_PART_COOLING_FAN must be between 1 and " STRINGIFY(DECREMENT(FAN_COUNT)) "."); + #elif !WITHIN(REDUNDANT_PART_COOLING_FAN + NUM_REDUNDANT_FANS - 1, 1, FAN_COUNT - 1) + #error "Not enough fans available for NUM_REDUNDANT_FANS." #endif #endif diff --git a/Marlin/src/lcd/menu/menu_item.h b/Marlin/src/lcd/menu/menu_item.h index 805caa1d90d8..2005be8b5411 100644 --- a/Marlin/src/lcd/menu/menu_item.h +++ b/Marlin/src/lcd/menu/menu_item.h @@ -580,10 +580,10 @@ class MenuItem_bool : public MenuEditItemBase { }while(0) #if FAN_COUNT > 1 - #define FAN_EDIT_ITEMS(F) _FAN_EDIT_ITEMS(F,FAN_SPEED_N) + #define FAN_EDIT_ITEMS(F) _FAN_EDIT_ITEMS(F, FAN_SPEED_N) #endif - #define SNFAN(N) (ENABLED(SINGLENOZZLE_STANDBY_FAN) && !HAS_FAN##N && EXTRUDERS > N) + #define SNFAN(N) (ENABLED(SINGLENOZZLE_STANDBY_FAN) && !HAS_FAN##N && (N) < EXTRUDERS) #if SNFAN(1) || SNFAN(2) || SNFAN(3) || SNFAN(4) || SNFAN(5) || SNFAN(6) || SNFAN(7) #define DEFINE_SINGLENOZZLE_ITEM() \ diff --git a/Marlin/src/lcd/menu/menu_temperature.cpp b/Marlin/src/lcd/menu/menu_temperature.cpp index ec6d49c16f39..c53459769076 100644 --- a/Marlin/src/lcd/menu/menu_temperature.cpp +++ b/Marlin/src/lcd/menu/menu_temperature.cpp @@ -221,40 +221,40 @@ void menu_temperature() { DEFINE_SINGLENOZZLE_ITEM(); - #if HAS_FAN0 - _FAN_EDIT_ITEMS(0,FIRST_FAN_SPEED); + #if FAN_IS_M106ABLE(0) + _FAN_EDIT_ITEMS(0, FIRST_FAN_SPEED); #endif - #if HAS_FAN1 && REDUNDANT_PART_COOLING_FAN != 1 + #if FAN_IS_M106ABLE(1) FAN_EDIT_ITEMS(1); #elif SNFAN(1) singlenozzle_item(1); #endif - #if HAS_FAN2 && REDUNDANT_PART_COOLING_FAN != 2 + #if FAN_IS_M106ABLE(2) FAN_EDIT_ITEMS(2); #elif SNFAN(2) singlenozzle_item(2); #endif - #if HAS_FAN3 && REDUNDANT_PART_COOLING_FAN != 3 + #if FAN_IS_M106ABLE(3) FAN_EDIT_ITEMS(3); #elif SNFAN(3) singlenozzle_item(3); #endif - #if HAS_FAN4 && REDUNDANT_PART_COOLING_FAN != 4 + #if FAN_IS_M106ABLE(4) FAN_EDIT_ITEMS(4); #elif SNFAN(4) singlenozzle_item(4); #endif - #if HAS_FAN5 && REDUNDANT_PART_COOLING_FAN != 5 + #if FAN_IS_M106ABLE(5) FAN_EDIT_ITEMS(5); #elif SNFAN(5) singlenozzle_item(5); #endif - #if HAS_FAN6 && REDUNDANT_PART_COOLING_FAN != 6 + #if FAN_IS_M106ABLE(6) FAN_EDIT_ITEMS(6); #elif SNFAN(6) singlenozzle_item(6); #endif - #if HAS_FAN7 && REDUNDANT_PART_COOLING_FAN != 7 + #if FAN_IS_M106ABLE(7) FAN_EDIT_ITEMS(7); #elif SNFAN(7) singlenozzle_item(7); diff --git a/Marlin/src/lcd/menu/menu_tune.cpp b/Marlin/src/lcd/menu/menu_tune.cpp index 8a2636ba5ddb..081b9f58a02d 100644 --- a/Marlin/src/lcd/menu/menu_tune.cpp +++ b/Marlin/src/lcd/menu/menu_tune.cpp @@ -153,40 +153,40 @@ void menu_tune() { DEFINE_SINGLENOZZLE_ITEM(); - #if HAS_FAN0 - _FAN_EDIT_ITEMS(0,FIRST_FAN_SPEED); + #if FAN_IS_M106ABLE(0) + _FAN_EDIT_ITEMS(0, FIRST_FAN_SPEED); #endif - #if HAS_FAN1 && REDUNDANT_PART_COOLING_FAN != 1 + #if FAN_IS_M106ABLE(1) FAN_EDIT_ITEMS(1); #elif SNFAN(1) singlenozzle_item(1); #endif - #if HAS_FAN2 && REDUNDANT_PART_COOLING_FAN != 2 + #if FAN_IS_M106ABLE(2) FAN_EDIT_ITEMS(2); #elif SNFAN(2) singlenozzle_item(2); #endif - #if HAS_FAN3 && REDUNDANT_PART_COOLING_FAN != 3 + #if FAN_IS_M106ABLE(3) FAN_EDIT_ITEMS(3); #elif SNFAN(3) singlenozzle_item(3); #endif - #if HAS_FAN4 && REDUNDANT_PART_COOLING_FAN != 4 + #if FAN_IS_M106ABLE(4) FAN_EDIT_ITEMS(4); #elif SNFAN(4) singlenozzle_item(4); #endif - #if HAS_FAN5 && REDUNDANT_PART_COOLING_FAN != 5 + #if FAN_IS_M106ABLE(5) FAN_EDIT_ITEMS(5); #elif SNFAN(5) singlenozzle_item(5); #endif - #if HAS_FAN6 && REDUNDANT_PART_COOLING_FAN != 6 + #if FAN_IS_M106ABLE(6) FAN_EDIT_ITEMS(6); #elif SNFAN(6) singlenozzle_item(6); #endif - #if HAS_FAN7 && REDUNDANT_PART_COOLING_FAN != 7 + #if FAN_IS_M106ABLE(7) FAN_EDIT_ITEMS(7); #elif SNFAN(7) singlenozzle_item(7); diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index fa960443caf0..d84b475765f2 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -467,8 +467,12 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED); if (fan >= FAN_COUNT) return; fan_speed[fan] = speed; - #if REDUNDANT_PART_COOLING_FAN - if (fan == 0) fan_speed[REDUNDANT_PART_COOLING_FAN] = speed; + + #if NUM_REDUNDANT_FANS + if (fan == 0) { + for (uint8_t f = REDUNDANT_PART_COOLING_FAN; f < REDUNDANT_PART_COOLING_FAN + NUM_REDUNDANT_FANS; ++f) + thermalManager.set_fan_speed(f, 0); + } #endif TERN_(REPORT_FAN_CHANGE, report_fan_speed(fan)); diff --git a/Marlin/src/module/temperature.h b/Marlin/src/module/temperature.h index 4bd185c4251b..c4dae4c6e5a7 100644 --- a/Marlin/src/module/temperature.h +++ b/Marlin/src/module/temperature.h @@ -44,6 +44,17 @@ #define HOTEND_INDEX TERN(HAS_MULTI_HOTEND, e, 0) #define E_NAME TERN_(HAS_MULTI_HOTEND, e) +#if HAS_FAN + #if NUM_REDUNDANT_FANS + #define FAN_IS_REDUNDANT(Q) WITHIN(Q, REDUNDANT_PART_COOLING_FAN, REDUNDANT_PART_COOLING_FAN + NUM_REDUNDANT_FANS - 1) + #else + #define FAN_IS_REDUNDANT(Q) false + #endif + #define FAN_IS_M106ABLE(Q) (HAS_FAN##Q && !FAN_IS_REDUNDANT(Q)) +#else + #define FAN_IS_M106ABLE(Q) false +#endif + // Element identifiers. Positive values are hotends. Negative values are other heaters or coolers. typedef enum : int_fast8_t { H_REDUNDANT = HID_REDUNDANT, From 4e1bfc4e0de1cbb09cdca0c2d72d92381688e108 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 23 Apr 2022 09:31:38 -0500 Subject: [PATCH 170/427] =?UTF-8?q?=F0=9F=8E=A8=20Misc.=20tweaks=20to=20HA?= =?UTF-8?q?Ls?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/AVR/pinsDebug.h | 72 ++++++++++------------ Marlin/src/HAL/AVR/pinsDebug_Teensyduino.h | 9 +-- Marlin/src/HAL/DUE/pinsDebug.h | 3 +- Marlin/src/HAL/LINUX/HAL.cpp | 3 +- Marlin/src/HAL/LINUX/pinsDebug.h | 31 +++++----- Marlin/src/HAL/LPC1768/pinsDebug.h | 9 +-- Marlin/src/HAL/NATIVE_SIM/pinsDebug.h | 30 ++++----- Marlin/src/HAL/STM32/pinsDebug.h | 3 +- Marlin/src/HAL/STM32F1/pinsDebug.h | 26 ++++---- Marlin/src/HAL/TEENSY35_36/pinsDebug.h | 8 +-- Marlin/src/HAL/TEENSY40_41/pinsDebug.h | 18 +++--- Marlin/src/pins/pinsDebug.h | 4 +- buildroot/tests/at90usb1286_cdc | 2 +- buildroot/tests/at90usb1286_dfu | 2 +- 14 files changed, 101 insertions(+), 119 deletions(-) diff --git a/Marlin/src/HAL/AVR/pinsDebug.h b/Marlin/src/HAL/AVR/pinsDebug.h index 3fe877cd0083..accd3c663f71 100644 --- a/Marlin/src/HAL/AVR/pinsDebug.h +++ b/Marlin/src/HAL/AVR/pinsDebug.h @@ -109,7 +109,7 @@ void PRINT_ARRAY_NAME(uint8_t x) { * Print a pin's PWM status. * Return true if it's currently a PWM pin. */ -static bool pwm_status(uint8_t pin) { +bool pwm_status(uint8_t pin) { char buffer[20]; // for the sprintf statements switch (digitalPinToTimer_DEBUG(pin)) { @@ -232,12 +232,12 @@ const volatile uint8_t* const PWM_OCR[][3] PROGMEM = { #define OCR_VAL(T, L) pgm_read_word(&PWM_OCR[T][L]) -static void err_is_counter() { SERIAL_ECHOPGM(" non-standard PWM mode"); } -static void err_is_interrupt() { SERIAL_ECHOPGM(" compare interrupt enabled"); } -static void err_prob_interrupt() { SERIAL_ECHOPGM(" overflow interrupt enabled"); } -static void print_is_also_tied() { SERIAL_ECHOPGM(" is also tied to this pin"); SERIAL_ECHO_SP(14); } +void err_is_counter() { SERIAL_ECHOPGM(" non-standard PWM mode"); } +void err_is_interrupt() { SERIAL_ECHOPGM(" compare interrupt enabled"); } +void err_prob_interrupt() { SERIAL_ECHOPGM(" overflow interrupt enabled"); } +void print_is_also_tied() { SERIAL_ECHOPGM(" is also tied to this pin"); SERIAL_ECHO_SP(14); } -inline void com_print(const uint8_t N, const uint8_t Z) { +void com_print(const uint8_t N, const uint8_t Z) { const uint8_t *TCCRA = (uint8_t*)TCCR_A(N); SERIAL_ECHOPGM(" COM", AS_DIGIT(N)); SERIAL_CHAR(Z); @@ -279,7 +279,7 @@ void timer_prefix(uint8_t T, char L, uint8_t N) { // T - timer L - pwm N - if (TEST(*TMSK, TOIE)) err_prob_interrupt(); } -static void pwm_details(uint8_t pin) { +void pwm_details(uint8_t pin) { switch (digitalPinToTimer_DEBUG(pin)) { #if ABTEST(0) @@ -353,47 +353,41 @@ static void pwm_details(uint8_t pin) { } // pwm_details #ifndef digitalRead_mod // Use Teensyduino's version of digitalRead - it doesn't disable the PWMs - int digitalRead_mod(const int8_t pin) { // same as digitalRead except the PWM stop section has been removed + int digitalRead_mod(const pin_t pin) { // same as digitalRead except the PWM stop section has been removed const uint8_t port = digitalPinToPort_DEBUG(pin); return (port != NOT_A_PIN) && (*portInputRegister(port) & digitalPinToBitMask_DEBUG(pin)) ? HIGH : LOW; } #endif -#ifndef PRINT_PORT - - void print_port(int8_t pin) { // print port number - #ifdef digitalPinToPort_DEBUG - uint8_t x; - SERIAL_ECHOPGM(" Port: "); - #if AVR_AT90USB1286_FAMILY - x = (pin == 46 || pin == 47) ? 'E' : digitalPinToPort_DEBUG(pin) + 64; - #else - x = digitalPinToPort_DEBUG(pin) + 64; - #endif - SERIAL_CHAR(x); - - #if AVR_AT90USB1286_FAMILY - if (pin == 46) - x = '2'; - else if (pin == 47) - x = '3'; - else { - uint8_t temp = digitalPinToBitMask_DEBUG(pin); - for (x = '0'; x < '9' && temp != 1; x++) temp >>= 1; - } - #else +void print_port(const pin_t pin) { // print port number + #ifdef digitalPinToPort_DEBUG + uint8_t x; + SERIAL_ECHOPGM(" Port: "); + #if AVR_AT90USB1286_FAMILY + x = (pin == 46 || pin == 47) ? 'E' : digitalPinToPort_DEBUG(pin) + 64; + #else + x = digitalPinToPort_DEBUG(pin) + 64; + #endif + SERIAL_CHAR(x); + + #if AVR_AT90USB1286_FAMILY + if (pin == 46) + x = '2'; + else if (pin == 47) + x = '3'; + else { uint8_t temp = digitalPinToBitMask_DEBUG(pin); for (x = '0'; x < '9' && temp != 1; x++) temp >>= 1; - #endif - SERIAL_CHAR(x); + } #else - SERIAL_ECHO_SP(10); + uint8_t temp = digitalPinToBitMask_DEBUG(pin); + for (x = '0'; x < '9' && temp != 1; x++) temp >>= 1; #endif - } - - #define PRINT_PORT(p) print_port(p) - -#endif + SERIAL_CHAR(x); + #else + SERIAL_ECHO_SP(10); + #endif +} #define PRINT_PIN(p) do{ sprintf_P(buffer, PSTR("%3d "), p); SERIAL_ECHO(buffer); }while(0) #define PRINT_PIN_ANALOG(p) do{ sprintf_P(buffer, PSTR(" (A%2d) "), DIGITAL_PIN_TO_ANALOG_PIN(pin)); SERIAL_ECHO(buffer); }while(0) diff --git a/Marlin/src/HAL/AVR/pinsDebug_Teensyduino.h b/Marlin/src/HAL/AVR/pinsDebug_Teensyduino.h index 582ae79ba787..c812d4fb1131 100644 --- a/Marlin/src/HAL/AVR/pinsDebug_Teensyduino.h +++ b/Marlin/src/HAL/AVR/pinsDebug_Teensyduino.h @@ -22,11 +22,10 @@ #pragma once // -// some of the pin mapping functions of the Teensduino extension to the Arduino IDE -// do not function the same as the other Arduino extensions +// Some of the pin mapping functions of the Arduino IDE Teensduino extension +// function differently from other Arduino extensions. // - #define TEENSYDUINO_IDE //digitalPinToTimer(pin) function works like Arduino but Timers are not defined @@ -48,8 +47,6 @@ #define PE 5 #define PF 6 -#undef digitalPinToPort - const uint8_t PROGMEM digital_pin_to_port_PGM[] = { PD, // 0 - PD0 - INT0 - PWM PD, // 1 - PD1 - INT1 - PWM @@ -101,7 +98,7 @@ const uint8_t PROGMEM digital_pin_to_port_PGM[] = { PE, // 47 - PE3 (not defined in teensyduino) }; -#define digitalPinToPort(P) ( pgm_read_byte( digital_pin_to_port_PGM + (P) ) ) +#define digitalPinToPort(P) pgm_read_byte(digital_pin_to_port_PGM[P]) // digitalPinToBitMask(pin) is OK diff --git a/Marlin/src/HAL/DUE/pinsDebug.h b/Marlin/src/HAL/DUE/pinsDebug.h index 2aafe9be0c56..1544853553f0 100644 --- a/Marlin/src/HAL/DUE/pinsDebug.h +++ b/Marlin/src/HAL/DUE/pinsDebug.h @@ -64,7 +64,6 @@ #define NUMBER_PINS_TOTAL PINS_COUNT #define digitalRead_mod(p) extDigitalRead(p) // AVR digitalRead disabled PWM before it read the pin -#define PRINT_PORT(p) #define PRINT_ARRAY_NAME(x) do{ sprintf_P(buffer, PSTR("%-" STRINGIFY(MAX_NAME_LENGTH) "s"), pin_array[x].name); SERIAL_ECHO(buffer); }while(0) #define PRINT_PIN(p) do{ sprintf_P(buffer, PSTR("%02d"), p); SERIAL_ECHO(buffer); }while(0) #define PRINT_PIN_ANALOG(p) do{ sprintf_P(buffer, PSTR(" (A%2d) "), DIGITAL_PIN_TO_ANALOG_PIN(pin)); SERIAL_ECHO(buffer); }while(0) @@ -93,6 +92,8 @@ void pwm_details(int32_t pin) { } } +void print_port(const pin_t) {} + /** * DUE Board pin | PORT | Label * ----------------+--------+------- diff --git a/Marlin/src/HAL/LINUX/HAL.cpp b/Marlin/src/HAL/LINUX/HAL.cpp index db43f42eaafd..6a767c76e7b7 100644 --- a/Marlin/src/HAL/LINUX/HAL.cpp +++ b/Marlin/src/HAL/LINUX/HAL.cpp @@ -52,8 +52,7 @@ uint8_t MarlinHAL::active_ch = 0; uint16_t MarlinHAL::adc_value() { const pin_t pin = analogInputToDigitalPin(active_ch); if (!VALID_PIN(pin)) return 0; - const uint16_t data = ((Gpio::get(pin) >> 2) & 0x3FF); - return data; // return 10bit value as Marlin expects + return uint16_t((Gpio::get(pin) >> 2) & 0x3FF); // return 10bit value as Marlin expects } void MarlinHAL::reboot() { /* Reset the application state and GPIO */ } diff --git a/Marlin/src/HAL/LINUX/pinsDebug.h b/Marlin/src/HAL/LINUX/pinsDebug.h index 7bfd97d024f7..e4ee27e8dd01 100644 --- a/Marlin/src/HAL/LINUX/pinsDebug.h +++ b/Marlin/src/HAL/LINUX/pinsDebug.h @@ -28,36 +28,33 @@ * Translation of routines & variables used by pinsDebug.h */ -#define NUMBER_PINS_TOTAL NUM_DIGITAL_PINS -#define pwm_details(pin) NOOP // (do nothing) -#define pwm_status(pin) false // Print a pin's PWM status. Return true if it's currently a PWM pin. +#define NUMBER_PINS_TOTAL NUM_DIGITAL_PINS #define IS_ANALOG(P) (DIGITAL_PIN_TO_ANALOG_PIN(P) >= 0 ? 1 : 0) #define digitalRead_mod(p) digitalRead(p) -#define PRINT_PORT(p) #define GET_ARRAY_PIN(p) pin_array[p].pin #define PRINT_ARRAY_NAME(x) do{ sprintf_P(buffer, PSTR("%-" STRINGIFY(MAX_NAME_LENGTH) "s"), pin_array[x].name); SERIAL_ECHO(buffer); }while(0) #define PRINT_PIN(p) do{ sprintf_P(buffer, PSTR("%3d "), p); SERIAL_ECHO(buffer); }while(0) #define PRINT_PIN_ANALOG(p) do{ sprintf_P(buffer, PSTR(" (A%2d) "), DIGITAL_PIN_TO_ANALOG_PIN(pin)); SERIAL_ECHO(buffer); }while(0) -#define MULTI_NAME_PAD 16 // space needed to be pretty if not first name assigned to a pin +#define MULTI_NAME_PAD 16 // space needed to be pretty if not first name assigned to a pin // active ADC function/mode/code values for PINSEL registers -constexpr int8_t ADC_pin_mode(pin_t pin) { - return (-1); -} +constexpr int8_t ADC_pin_mode(pin_t pin) { return -1; } -int8_t get_pin_mode(pin_t pin) { - if (!VALID_PIN(pin)) return -1; - return 0; -} +int8_t get_pin_mode(const pin_t pin) { return VALID_PIN(pin) ? 0 : -1; } -bool GET_PINMODE(pin_t pin) { - int8_t pin_mode = get_pin_mode(pin); - if (pin_mode == -1 || pin_mode == ADC_pin_mode(pin)) // found an invalid pin or active analog pin +bool GET_PINMODE(const pin_t pin) { + const int8_t pin_mode = get_pin_mode(pin); + if (pin_mode == -1 || pin_mode == ADC_pin_mode(pin)) // Invalid pin or active analog pin return false; - return (Gpio::getMode(pin) != 0); //input/output state + return (Gpio::getMode(pin) != 0); // Input/output state } -bool GET_ARRAY_IS_DIGITAL(pin_t pin) { +bool GET_ARRAY_IS_DIGITAL(const pin_t pin) { return (!IS_ANALOG(pin) || get_pin_mode(pin) != ADC_pin_mode(pin)); } + +void pwm_details(const pin_t pin) {} +bool pwm_status(const pin_t) { return false; } + +void print_port(const pin_t) {} diff --git a/Marlin/src/HAL/LPC1768/pinsDebug.h b/Marlin/src/HAL/LPC1768/pinsDebug.h index a2f5c123a260..975511be9a94 100644 --- a/Marlin/src/HAL/LPC1768/pinsDebug.h +++ b/Marlin/src/HAL/LPC1768/pinsDebug.h @@ -29,11 +29,8 @@ */ #define NUMBER_PINS_TOTAL NUM_DIGITAL_PINS -#define pwm_details(pin) pin = pin // do nothing // print PWM details -#define pwm_status(pin) false //Print a pin's PWM status. Return true if it's currently a PWM pin. #define IS_ANALOG(P) (DIGITAL_PIN_TO_ANALOG_PIN(P) >= 0 ? 1 : 0) #define digitalRead_mod(p) extDigitalRead(p) -#define PRINT_PORT(p) #define GET_ARRAY_PIN(p) pin_array[p].pin #define PRINT_ARRAY_NAME(x) do{ sprintf_P(buffer, PSTR("%-" STRINGIFY(MAX_NAME_LENGTH) "s"), pin_array[x].name); SERIAL_ECHO(buffer); }while(0) #define PRINT_PIN(p) do{ sprintf_P(buffer, PSTR("P%d_%02d"), LPC176x::pin_port(p), LPC176x::pin_bit(p)); SERIAL_ECHO(buffer); }while(0) @@ -46,10 +43,14 @@ #endif bool GET_PINMODE(const pin_t pin) { - if (!LPC176x::pin_is_valid(pin) || LPC176x::pin_adc_enabled(pin)) // found an invalid pin or active analog pin + if (!LPC176x::pin_is_valid(pin) || LPC176x::pin_adc_enabled(pin)) // Invalid pin or active analog pin return false; return LPC176x::gpio_direction(pin); } #define GET_ARRAY_IS_DIGITAL(x) ((bool) pin_array[x].is_digital) + +void print_port(const pin_t) {} +void pwm_details(const pin_t) {} +bool pwm_status(const pin_t) { return false; } diff --git a/Marlin/src/HAL/NATIVE_SIM/pinsDebug.h b/Marlin/src/HAL/NATIVE_SIM/pinsDebug.h index aa90eb39a330..eeb8245641b4 100644 --- a/Marlin/src/HAL/NATIVE_SIM/pinsDebug.h +++ b/Marlin/src/HAL/NATIVE_SIM/pinsDebug.h @@ -27,35 +27,31 @@ */ #define NUMBER_PINS_TOTAL NUM_DIGITAL_PINS -#define pwm_details(pin) pin = pin // do nothing // print PWM details -#define pwm_status(pin) false //Print a pin's PWM status. Return true if it's currently a PWM pin. #define IS_ANALOG(P) (DIGITAL_PIN_TO_ANALOG_PIN(P) >= 0 ? 1 : 0) #define digitalRead_mod(p) digitalRead(p) -#define PRINT_PORT(p) #define GET_ARRAY_PIN(p) pin_array[p].pin #define PRINT_ARRAY_NAME(x) do{ sprintf_P(buffer, PSTR("%-" STRINGIFY(MAX_NAME_LENGTH) "s"), pin_array[x].name); SERIAL_ECHO(buffer); }while(0) #define PRINT_PIN(p) do{ sprintf_P(buffer, PSTR("%3d "), p); SERIAL_ECHO(buffer); }while(0) #define PRINT_PIN_ANALOG(p) do{ sprintf_P(buffer, PSTR(" (A%2d) "), DIGITAL_PIN_TO_ANALOG_PIN(pin)); SERIAL_ECHO(buffer); }while(0) #define MULTI_NAME_PAD 16 // space needed to be pretty if not first name assigned to a pin -// active ADC function/mode/code values for PINSEL registers -inline constexpr int8_t ADC_pin_mode(pin_t pin) { - return (-1); -} +// Active ADC function/mode/code values for PINSEL registers +constexpr int8_t ADC_pin_mode(pin_t pin) { return -1; } -inline int8_t get_pin_mode(pin_t pin) { - if (!VALID_PIN(pin)) return -1; - return 0; -} +int8_t get_pin_mode(const pin_t pin) { return VALID_PIN(pin) 0 : -1; } -inline bool GET_PINMODE(pin_t pin) { - int8_t pin_mode = get_pin_mode(pin); - if (pin_mode == -1 || pin_mode == ADC_pin_mode(pin)) // found an invalid pin or active analog pin +bool GET_PINMODE(const pin_t pin) { + const int8_t pin_mode = get_pin_mode(pin); + if (pin_mode == -1 || pin_mode == ADC_pin_mode(pin)) // Invalid pin or active analog pin return false; - return (Gpio::getMode(pin) != 0); //input/output state + return (Gpio::getMode(pin) != 0); // Input/output state } -inline bool GET_ARRAY_IS_DIGITAL(pin_t pin) { - return (!IS_ANALOG(pin) || get_pin_mode(pin) != ADC_pin_mode(pin)); +bool GET_ARRAY_IS_DIGITAL(const pin_t pin) { + return !IS_ANALOG(pin) || get_pin_mode(pin) != ADC_pin_mode(pin); } + +void print_port(const pin_t) {} +void pwm_details(const pin_t) {} +bool pwm_status(const pin_t) { return false; } diff --git a/Marlin/src/HAL/STM32/pinsDebug.h b/Marlin/src/HAL/STM32/pinsDebug.h index b12d621e9889..13990a69f5ef 100644 --- a/Marlin/src/HAL/STM32/pinsDebug.h +++ b/Marlin/src/HAL/STM32/pinsDebug.h @@ -119,7 +119,6 @@ const XrefInfo pin_xref[] PROGMEM = { #define digitalRead_mod(Ard_num) extDigitalRead(Ard_num) // must use Arduino pin numbers when doing reads #define PRINT_PIN(Q) #define PRINT_PIN_ANALOG(p) do{ sprintf_P(buffer, PSTR(" (A%2d) "), DIGITAL_PIN_TO_ANALOG_PIN(pin)); SERIAL_ECHO(buffer); }while(0) -#define PRINT_PORT(ANUM) port_print(ANUM) #define DIGITAL_PIN_TO_ANALOG_PIN(ANUM) -1 // will report analog pin number in the print port routine // x is a variable used to search pin_array @@ -187,7 +186,7 @@ bool is_digital(const pin_t Ard_num) { return pin_mode == MODE_PIN_INPUT || pin_mode == MODE_PIN_OUTPUT; } -void port_print(const pin_t Ard_num) { +void print_port(const pin_t Ard_num) { char buffer[16]; pin_t Index; for (Index = 0; Index < NUMBER_PINS_TOTAL; Index++) diff --git a/Marlin/src/HAL/STM32F1/pinsDebug.h b/Marlin/src/HAL/STM32F1/pinsDebug.h index 7828479658a9..2142f0ebac62 100644 --- a/Marlin/src/HAL/STM32F1/pinsDebug.h +++ b/Marlin/src/HAL/STM32F1/pinsDebug.h @@ -41,11 +41,9 @@ extern const stm32_pin_info PIN_MAP[BOARD_NR_GPIO_PINS]; #define NUMBER_PINS_TOTAL BOARD_NR_GPIO_PINS #define VALID_PIN(pin) (pin >= 0 && pin < BOARD_NR_GPIO_PINS) #define GET_ARRAY_PIN(p) pin_t(pin_array[p].pin) -#define pwm_status(pin) PWM_PIN(pin) #define digitalRead_mod(p) extDigitalRead(p) #define PRINT_PIN(p) do{ sprintf_P(buffer, PSTR("%3hd "), int16_t(p)); SERIAL_ECHO(buffer); }while(0) #define PRINT_PIN_ANALOG(p) do{ sprintf_P(buffer, PSTR(" (A%2d) "), DIGITAL_PIN_TO_ANALOG_PIN(pin)); SERIAL_ECHO(buffer); }while(0) -#define PRINT_PORT(p) print_port(p) #define PRINT_ARRAY_NAME(x) do{ sprintf_P(buffer, PSTR("%-" STRINGIFY(MAX_NAME_LENGTH) "s"), pin_array[x].name); SERIAL_ECHO(buffer); }while(0) #define MULTI_NAME_PAD 21 // space needed to be pretty if not first name assigned to a pin @@ -54,20 +52,18 @@ extern const stm32_pin_info PIN_MAP[BOARD_NR_GPIO_PINS]; #define M43_NEVER_TOUCH(Q) (Q >= 9 && Q <= 12) // SERIAL/USB pins PA9(TX) PA10(RX) #endif -static int8_t get_pin_mode(pin_t pin) { - return VALID_PIN(pin) ? _GET_MODE(pin) : -1; -} +int8_t get_pin_mode(const pin_t pin) { return VALID_PIN(pin) ? _GET_MODE(pin) : -1; } -static pin_t DIGITAL_PIN_TO_ANALOG_PIN(pin_t pin) { +pin_t DIGITAL_PIN_TO_ANALOG_PIN(const pin_t pin) { if (!VALID_PIN(pin)) return -1; - int8_t adc_channel = int8_t(PIN_MAP[pin].adc_channel); + pin_t adc_channel = pin_t(PIN_MAP[pin].adc_channel); #ifdef NUM_ANALOG_INPUTS - if (adc_channel >= NUM_ANALOG_INPUTS) adc_channel = ADCx; + if (adc_channel >= NUM_ANALOG_INPUTS) adc_channel = (pin_t)ADCx; #endif - return pin_t(adc_channel); + return adc_channel; } -static bool IS_ANALOG(pin_t pin) { +bool IS_ANALOG(const pin_t pin) { if (!VALID_PIN(pin)) return false; if (PIN_MAP[pin].adc_channel != ADCx) { #ifdef NUM_ANALOG_INPUTS @@ -78,11 +74,11 @@ static bool IS_ANALOG(pin_t pin) { return false; } -static bool GET_PINMODE(const pin_t pin) { +bool GET_PINMODE(const pin_t pin) { return VALID_PIN(pin) && !IS_INPUT(pin); } -static bool GET_ARRAY_IS_DIGITAL(const int16_t array_pin) { +bool GET_ARRAY_IS_DIGITAL(const int16_t array_pin) { const pin_t pin = GET_ARRAY_PIN(array_pin); return (!IS_ANALOG(pin) #ifdef NUM_ANALOG_INPUTS @@ -93,7 +89,7 @@ static bool GET_ARRAY_IS_DIGITAL(const int16_t array_pin) { #include "../../inc/MarlinConfig.h" // Allow pins/pins.h to set density -static void pwm_details(const pin_t pin) { +void pwm_details(const pin_t pin) { if (PWM_PIN(pin)) { timer_dev * const tdev = PIN_MAP[pin].timer_device; const uint8_t channel = PIN_MAP[pin].timer_channel; @@ -113,7 +109,9 @@ static void pwm_details(const pin_t pin) { } } -static void print_port(pin_t pin) { +bool pwm_status(const pin_t pin) { return PWM_PIN(pin); } + +void print_port(const pin_t pin) { const char port = 'A' + char(pin >> 4); // pin div 16 const int16_t gbit = PIN_MAP[pin].gpio_bit; char buffer[8]; diff --git a/Marlin/src/HAL/TEENSY35_36/pinsDebug.h b/Marlin/src/HAL/TEENSY35_36/pinsDebug.h index 235c0e4a4871..8526febf10e3 100644 --- a/Marlin/src/HAL/TEENSY35_36/pinsDebug.h +++ b/Marlin/src/HAL/TEENSY35_36/pinsDebug.h @@ -55,12 +55,12 @@ #define IS_ANALOG(P) ((P) >= analogInputToDigitalPin(0) && (P) <= analogInputToDigitalPin(9)) || ((P) >= analogInputToDigitalPin(12) && (P) <= analogInputToDigitalPin(20)) -void HAL_print_analog_pin(char buffer[], int8_t pin) { +void print_analog_pin(char buffer[], int8_t pin) { if (pin <= 23) sprintf_P(buffer, PSTR("(A%2d) "), int(pin - 14)); else if (pin <= 39) sprintf_P(buffer, PSTR("(A%2d) "), int(pin - 19)); } -void HAL_analog_pin_state(char buffer[], int8_t pin) { +void analog_pin_state(char buffer[], int8_t pin) { if (pin <= 23) sprintf_P(buffer, PSTR("Analog in =% 5d"), analogRead(pin - 14)); else if (pin <= 39) sprintf_P(buffer, PSTR("Analog in =% 5d"), analogRead(pin - 19)); } @@ -77,7 +77,7 @@ void HAL_analog_pin_state(char buffer[], int8_t pin) { * Print a pin's PWM status. * Return true if it's currently a PWM pin. */ -bool HAL_pwm_status(const int8_t pin) { +bool pwm_status(int8_t pin) { char buffer[20]; // for the sprintf statements switch (pin) { FTM_CASE(0,0); @@ -108,4 +108,4 @@ bool HAL_pwm_status(const int8_t pin) { SERIAL_ECHOPGM(" "); } -static void HAL_pwm_details(uint8_t pin) { /* TODO */ } +void pwm_details(uint8_t pin) { /* TODO */ } diff --git a/Marlin/src/HAL/TEENSY40_41/pinsDebug.h b/Marlin/src/HAL/TEENSY40_41/pinsDebug.h index c85a88c9ae67..54f3cb5885a3 100644 --- a/Marlin/src/HAL/TEENSY40_41/pinsDebug.h +++ b/Marlin/src/HAL/TEENSY40_41/pinsDebug.h @@ -30,7 +30,6 @@ #define NUMBER_PINS_TOTAL NUM_DIGITAL_PINS #define digitalRead_mod(p) extDigitalRead(p) // AVR digitalRead disabled PWM before it read the pin -#define PRINT_PORT(p) #define PRINT_ARRAY_NAME(x) do{ sprintf_P(buffer, PSTR("%-" STRINGIFY(MAX_NAME_LENGTH) "s"), pin_array[x].name); SERIAL_ECHO(buffer); }while(0) #define PRINT_PIN(p) do{ sprintf_P(buffer, PSTR("%02d"), p); SERIAL_ECHO(buffer); }while(0) #define PRINT_PIN_ANALOG(p) do{ sprintf_P(buffer, PSTR(" (A%2d) "), DIGITAL_PIN_TO_ANALOG_PIN(pin)); SERIAL_ECHO(buffer); }while(0) @@ -39,7 +38,6 @@ #define VALID_PIN(pin) (pin >= 0 && pin < int8_t(NUMBER_PINS_TOTAL)) #define DIGITAL_PIN_TO_ANALOG_PIN(p) int(p - analogInputToDigitalPin(0)) #define IS_ANALOG(P) ((P) >= analogInputToDigitalPin(0) && (P) <= analogInputToDigitalPin(13)) || ((P) >= analogInputToDigitalPin(14) && (P) <= analogInputToDigitalPin(17)) -#define pwm_status(pin) HAL_pwm_status(pin) #define GET_PINMODE(PIN) (VALID_PIN(pin) && IS_OUTPUT(pin)) #define MULTI_NAME_PAD 16 // space needed to be pretty if not first name assigned to a pin @@ -120,12 +118,12 @@ const struct pwm_pin_info_struct pwm_pin_info[] = { #endif }; -void HAL_print_analog_pin(char buffer[], int8_t pin) { +void print_analog_pin(char buffer[], const pin_t pin) { if (pin <= 23) sprintf_P(buffer, PSTR("(A%2d) "), int(pin - 14)); else if (pin <= 41) sprintf_P(buffer, PSTR("(A%2d) "), int(pin - 24)); } -void HAL_analog_pin_state(char buffer[], int8_t pin) { +void analog_pin_state(char buffer[], const pin_t pin) { if (pin <= 23) sprintf_P(buffer, PSTR("Analog in =% 5d"), analogRead(pin - 14)); else if (pin <= 41) sprintf_P(buffer, PSTR("Analog in =% 5d"), analogRead(pin - 24)); } @@ -136,14 +134,14 @@ void HAL_analog_pin_state(char buffer[], int8_t pin) { * Print a pin's PWM status. * Return true if it's currently a PWM pin. */ -bool HAL_pwm_status(const int8_t pin) { +bool pwm_status(const pin_t pin) { char buffer[20]; // for the sprintf statements const struct pwm_pin_info_struct *info; - if (pin >= CORE_NUM_DIGITAL) return 0; - info = pwm_pin_info + pin; + if (pin >= CORE_NUM_DIGITAL) return false; - if (info->type == 0) return 0; + info = pwm_pin_info + pin; + if (info->type == 0) return false; /* TODO decode pwm value from timers */ // for now just indicate if output is set as pwm @@ -151,4 +149,6 @@ bool HAL_pwm_status(const int8_t pin) { return (*(portConfigRegister(pin)) == info->muxval); } -static void pwm_details(uint8_t pin) { /* TODO */ } +void pwm_details(const pin_t) { /* TODO */ } + +void print_port(const pin_t) {} diff --git a/Marlin/src/pins/pinsDebug.h b/Marlin/src/pins/pinsDebug.h index 25b883eee67c..4a8928c1e561 100644 --- a/Marlin/src/pins/pinsDebug.h +++ b/Marlin/src/pins/pinsDebug.h @@ -206,7 +206,7 @@ inline void report_pin_state_extended(pin_t pin, const bool ignore, const bool e if (start_string) SERIAL_ECHOF(start_string); SERIAL_ECHOPGM("PIN: "); PRINT_PIN(pin); - PRINT_PORT(pin); + print_port(pin); if (int8_t(DIGITAL_PIN_TO_ANALOG_PIN(pin)) >= 0) PRINT_PIN_ANALOG(pin); // analog pin number else SERIAL_ECHO_SP(8); // add padding if not an analog pin } @@ -254,7 +254,7 @@ inline void report_pin_state_extended(pin_t pin, const bool ignore, const bool e if (start_string) SERIAL_ECHOF(start_string); SERIAL_ECHOPGM("PIN: "); PRINT_PIN(pin); - PRINT_PORT(pin); + print_port(pin); if (int8_t(DIGITAL_PIN_TO_ANALOG_PIN(pin)) >= 0) PRINT_PIN_ANALOG(pin); // analog pin number else SERIAL_ECHO_SP(8); // add padding if not an analog pin SERIAL_ECHOPGM(""); diff --git a/buildroot/tests/at90usb1286_cdc b/buildroot/tests/at90usb1286_cdc index 01d752db8b4c..7dcf8d541ab5 100755 --- a/buildroot/tests/at90usb1286_cdc +++ b/buildroot/tests/at90usb1286_cdc @@ -1,6 +1,6 @@ #!/usr/bin/env bash # -# Build tests for AT90USB1286 ARMED +# Build tests for AT90USB1286 (CDC) # # exit on first failure diff --git a/buildroot/tests/at90usb1286_dfu b/buildroot/tests/at90usb1286_dfu index 75672a6a5150..a753097694c4 100755 --- a/buildroot/tests/at90usb1286_dfu +++ b/buildroot/tests/at90usb1286_dfu @@ -1,6 +1,6 @@ #!/usr/bin/env bash # -# Build tests for AT90USB1286 ARMED +# Build tests for AT90USB1286 (DFU) # # exit on first failure From f97a813a2ac315cd925c3651bd7c32d609e6d70f Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 13 May 2023 18:09:48 -0500 Subject: [PATCH 171/427] =?UTF-8?q?=E2=9C=A8=20NUM=5FREDUNDANT=5FFANS=20to?= =?UTF-8?q?o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/temperature.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index d84b475765f2..685f5dab2f59 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -471,7 +471,7 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED); #if NUM_REDUNDANT_FANS if (fan == 0) { for (uint8_t f = REDUNDANT_PART_COOLING_FAN; f < REDUNDANT_PART_COOLING_FAN + NUM_REDUNDANT_FANS; ++f) - thermalManager.set_fan_speed(f, 0); + thermalManager.set_fan_speed(f, speed); } #endif From 4a2db0f7060bc95151eb8512266adaa013c57782 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 2 May 2023 18:15:23 -0500 Subject: [PATCH 172/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20ftd?= =?UTF-8?q?i=5Flanguage?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/lcd/extui/ftdi_eve_touch_ui/generic/language_menu.cpp | 2 +- Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/language_menu.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/language_menu.cpp index 499f741540ab..5d797f44df31 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/language_menu.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/language_menu.cpp @@ -56,7 +56,7 @@ void LanguageMenu::onRedraw(draw_mode_t) { bool LanguageMenu::onTouchEnd(uint8_t tag) { if (tag > 0 && tag <= NUM_LANGUAGES) { - lang = tag - 1; + ftdi_language = tag - 1; GOTO_SCREEN(StatusScreen); return true; } diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language.cpp index bf684e43f917..9ff738e45c19 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language.cpp @@ -23,5 +23,5 @@ #include "../../../../MarlinCore.h" #if ENABLED(TOUCH_UI_FTDI_EVE) #include "language.h" - uint8_t lang = 0; + uint8_t ftdi_language = 0; #endif From 18e63ad880cefc210e4a92657bef389ebef67d49 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sun, 14 May 2023 00:39:01 +0000 Subject: [PATCH 173/427] [cron] Bump distribution date (2023-05-14) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index f2258b55e74f..64e5a6a99d3e 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-13" +//#define STRING_DISTRIBUTION_DATE "2023-05-14" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 3f3032fe33d2..bcddf2dbd121 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-13" + #define STRING_DISTRIBUTION_DATE "2023-05-14" #endif /** From 5201869a55ae838a24afe7b05cc028e1b4fdd532 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 2 May 2023 18:26:06 -0500 Subject: [PATCH 174/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20IA?= =?UTF-8?q?=20RTS=20refactor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lcd/extui/ia_creality/FileNavigator.cpp | 26 +- .../lcd/extui/ia_creality/creality_extui.cpp | 2094 ----------------- .../extui/ia_creality/ia_creality_extui.cpp | 2094 +++++++++++++++++ .../lcd/extui/ia_creality/ia_creality_extui.h | 214 +- 4 files changed, 2210 insertions(+), 2218 deletions(-) delete mode 100644 Marlin/src/lcd/extui/ia_creality/creality_extui.cpp create mode 100644 Marlin/src/lcd/extui/ia_creality/ia_creality_extui.cpp diff --git a/Marlin/src/lcd/extui/ia_creality/FileNavigator.cpp b/Marlin/src/lcd/extui/ia_creality/FileNavigator.cpp index 4e2d294a9b25..6aa9b7c7c888 100644 --- a/Marlin/src/lcd/extui/ia_creality/FileNavigator.cpp +++ b/Marlin/src/lcd/extui/ia_creality/FileNavigator.cpp @@ -95,23 +95,23 @@ void FileNavigator::getFiles(uint16_t index) { // Clear currently drawn screen for (int i = 0; i < DISPLAY_FILES; i++) { for (int j = 0; j < 20; j++) - rtscheck.RTS_SndData(0, SDFILE_ADDR + (i * 20) + j); + rts.sendData(0, SDFILE_ADDR + (i * 20) + j); } for (int j = 0; j < 10; j++) { - rtscheck.RTS_SndData(0, Printfilename + j); // clear screen. - rtscheck.RTS_SndData(0, Choosefilename + j); // clear filename + rts.sendData(0, Printfilename + j); // clear screen. + rts.sendData(0, Choosefilename + j); // clear filename } for (int j = 0; j < 8; j++) - rtscheck.RTS_SndData(0, FilenameCount + j); + rts.sendData(0, FilenameCount + j); for (int j = 1; j <= DISPLAY_FILES; j++) { - rtscheck.RTS_SndData(10, FilenameIcon + j); - rtscheck.RTS_SndData(10, FilenameIcon1 + j); + rts.sendData(10, FilenameIcon + j); + rts.sendData(10, FilenameIcon1 + j); } if (currentindex == 0 && folderdepth > 0) { // Add a link to go up a folder files--; - rtscheck.RTS_SndData("Up Directory", SDFILE_ADDR); + rts.sendData("Up Directory", SDFILE_ADDR); fcnt++; } else if (currentindex == DISPLAY_FILES && folderdepth > 0) @@ -123,18 +123,18 @@ void FileNavigator::getFiles(uint16_t index) { if (filelen > 20) { char *buf = (char *)filelist.filename(); buf[18] = '\0'; // cutoff at screen edge - rtscheck.RTS_SndData(buf, (SDFILE_ADDR + (fcnt * 20))); + rts.sendData(buf, (SDFILE_ADDR + (fcnt * 20))); } else - rtscheck.RTS_SndData(filelist.filename(), (SDFILE_ADDR + (fcnt * 20))); + rts.sendData(filelist.filename(), (SDFILE_ADDR + (fcnt * 20))); if (filelist.isDir()) { - rtscheck.RTS_SndData((uint8_t)4, FilenameIcon + (fcnt+1)); - rtscheck.RTS_SndData((unsigned long)0x041F, (FilenameNature + ((1+fcnt) * 16))); // Change BG of selected line to Blue + rts.sendData((uint8_t)4, FilenameIcon + (fcnt+1)); + rts.sendData((unsigned long)0x041F, (FilenameNature + ((1+fcnt) * 16))); // Change BG of selected line to Blue } else { - rtscheck.RTS_SndData((uint8_t)0, FilenameIcon + (fcnt+1)); - rtscheck.RTS_SndData((unsigned long)0xFFFF, (FilenameNature + ((1+fcnt) * 16))); // white + rts.sendData((uint8_t)0, FilenameIcon + (fcnt+1)); + rts.sendData((unsigned long)0xFFFF, (FilenameNature + ((1+fcnt) * 16))); // white } SERIAL_ECHOLNPGM("-", seek, " '", filelist.filename(), "' '", currentfoldername, "", filelist.shortFilename(), "'\n"); fcnt++; diff --git a/Marlin/src/lcd/extui/ia_creality/creality_extui.cpp b/Marlin/src/lcd/extui/ia_creality/creality_extui.cpp deleted file mode 100644 index 3ba8322f0085..000000000000 --- a/Marlin/src/lcd/extui/ia_creality/creality_extui.cpp +++ /dev/null @@ -1,2094 +0,0 @@ -/** - * Marlin 3D Printer Firmware - * Copyright (c) 2022 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] - * - * Based on Sprinter and grbl. - * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ - -/* **************************************** - * lcd/extui/ia_creality/creality_extui.cpp - * **************************************** - * Extensible_UI implementation for Creality DWIN - * 10SPro, Max, CRX, and others - * Based original Creality release, ported to ExtUI for Marlin 2.0 - * Written by Insanity Automation, sponsored by Tiny Machines 3D - * - * ***************************************/ - -#include "../../../inc/MarlinConfigPre.h" - -#if DGUS_LCD_UI_IA_CREALITY - -#include "ia_creality_extui.h" -#include "FileNavigator.h" - -namespace ExtUI { - static uint16_t fileIndex = 0; - uint8_t recordcount = 0; - uint8_t waitway_lock = 0; - const float manual_feedrate_mm_m[] = MANUAL_FEEDRATE; - uint8_t startprogress = 0; - - char waitway = 0; - int16_t recnum = 0; - float ChangeMaterialbuf[2] = {0}; - - char NozzleTempStatus[3] = {0}; - - char PrinterStatusKey[2] = {0}; // PrinterStatusKey[1] value: 0 represents to keep temperature, 1 represents to heating , 2 stands for cooling , 3 stands for printing - // PrinterStatusKey[0] value: 0 reprensents 3D printer ready - - uint8_t AxisPagenum = 0; // 0 for 10mm, 1 for 1mm, 2 for 0.1mm - bool InforShowStatus = true; - bool TPShowStatus = false; // true for only opening time and percentage, false for closing time and percentage. - bool AutohomeKey = false; - uint8_t AutoHomeIconNum; - int16_t userConfValidation = 0; - - uint8_t lastPauseMsgState = 0; - - creality_dwin_settings_t Settings; - uint8_t dwin_settings_version = 1; - - bool reEntryPrevent = false; - uint8_t reEntryCount = 0; - uint16_t idleThrottling = 0; - - bool pause_resume_selected = false; - - #if HAS_PID_HEATING - uint16_t pid_hotendAutoTemp = 150; - uint16_t pid_bedAutoTemp = 70; - #endif - - #ifndef CUSTOM_MACHINE_NAME - #define CUSTOM_MACHINE_NAME MACHINE_NAME - #endif - #ifndef IA_CREALITY_BOOT_DELAY - #define IA_CREALITY_BOOT_DELAY 500 - #endif - - void onStartup() { - DWIN_SERIAL.begin(115200); - rtscheck.recdat.head[0] = rtscheck.snddat.head[0] = FHONE; - rtscheck.recdat.head[1] = rtscheck.snddat.head[1] = FHTWO; - ZERO(rtscheck.databuf); - - delay_ms(IA_CREALITY_BOOT_DELAY); // Delay to allow screen startup - SetTouchScreenConfiguration(); - rtscheck.RTS_SndData(StartSoundSet, SoundAddr); - delay_ms(400); // Delay to allow screen to configure - - onStatusChanged(CUSTOM_MACHINE_NAME " Ready"); - - rtscheck.RTS_SndData(100, FeedrateDisplay); - - /***************turn off motor*****************/ - rtscheck.RTS_SndData(11, FilenameIcon); - - /***************transmit temperature to screen*****************/ - rtscheck.RTS_SndData(0, NozzlePreheat); - rtscheck.RTS_SndData(0, BedPreheat); - rtscheck.RTS_SndData(getActualTemp_celsius(H0), NozzleTemp); - rtscheck.RTS_SndData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); - rtscheck.RTS_SndData(getActualTemp_celsius(BED), Bedtemp); - /***************transmit Fan speed to screen*****************/ - rtscheck.RTS_SndData(getActualFan_percent((fan_t)getActiveTool()), FanKeyIcon); - - /***************transmit Printer information to screen*****************/ - for (int16_t j = 0; j < 20; j++) // clean filename - rtscheck.RTS_SndData(0, MacVersion + j); - char sizebuf[20] = {0}; - sprintf(sizebuf, "%d X %d X %d", Y_BED_SIZE, X_BED_SIZE, Z_MAX_POS); - rtscheck.RTS_SndData(CUSTOM_MACHINE_NAME, MacVersion); - rtscheck.RTS_SndData(SHORT_BUILD_VERSION, SoftVersion); - rtscheck.RTS_SndData(sizebuf, PrinterSize); - rtscheck.RTS_SndData(WEBSITE_URL, CorpWebsite); - - /**************************some info init*******************************/ - rtscheck.RTS_SndData(0, PrintscheduleIcon); - rtscheck.RTS_SndData(0, PrintscheduleIcon + 1); - - /************************clean screen*******************************/ - for (int16_t i = 0; i < MaxFileNumber; i++) - for (int16_t j = 0; j < 10; j++) rtscheck.RTS_SndData(0, SDFILE_ADDR + i * 10 + j); - - for (int16_t j = 0; j < 10; j++) { - rtscheck.RTS_SndData(0, Printfilename + j); // clean screen. - rtscheck.RTS_SndData(0, Choosefilename + j); // clean filename - } - for (int16_t j = 0; j < 8; j++) rtscheck.RTS_SndData(0, FilenameCount + j); - for (int16_t j = 1; j <= MaxFileNumber; j++) { - rtscheck.RTS_SndData(10, FilenameIcon + j); - rtscheck.RTS_SndData(10, FilenameIcon1 + j); - } - } - - void onIdle() { - - while (rtscheck.RTS_RecData() > 0 && (rtscheck.recdat.data[0] != 0 || rtscheck.recdat.addr != 0)) rtscheck.RTS_HandleData(); - - if (reEntryPrevent && reEntryCount < 120) { - reEntryCount++; - return; - } - reEntryCount = 0; - - if (idleThrottling++ < 750) return; - - // Always send temperature data - rtscheck.RTS_SndData(getActualTemp_celsius(getActiveTool()), NozzleTemp); - rtscheck.RTS_SndData(getActualTemp_celsius(BED), Bedtemp); - rtscheck.RTS_SndData(getTargetTemp_celsius(getActiveTool()), NozzlePreheat); - rtscheck.RTS_SndData(getTargetTemp_celsius(BED), BedPreheat); - rtscheck.RTS_SndData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); - rtscheck.RTS_SndData(TERN0(HAS_MULTI_HOTEND, getTargetTemp_celsius(H1)), e2Preheat); - TERN_(HAS_MULTI_HOTEND, rtscheck.RTS_SndData(uint8_t(getActiveTool() + 1), ActiveToolVP)); - - if (awaitingUserConfirm() && (lastPauseMsgState != ExtUI::pauseModeStatus || userConfValidation > 99)) { - switch (ExtUI::pauseModeStatus) { - case PAUSE_MESSAGE_PARKING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_PAUSE_PRINT_PARKING)); break; - case PAUSE_MESSAGE_CHANGING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_INIT)); break; - case PAUSE_MESSAGE_UNLOAD: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_UNLOAD)); break; - case PAUSE_MESSAGE_WAITING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_ADVANCED_PAUSE_WAITING)); break; - case PAUSE_MESSAGE_INSERT: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_INSERT)); break; - case PAUSE_MESSAGE_LOAD: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_LOAD)); break; - case PAUSE_MESSAGE_PURGE: ExtUI::onUserConfirmRequired(GET_TEXT_F(TERN(ADVANCED_PAUSE_CONTINUOUS_PURGE, MSG_FILAMENT_CHANGE_CONT_PURGE, MSG_FILAMENT_CHANGE_PURGE))); break; - case PAUSE_MESSAGE_RESUME: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_RESUME)); break; - case PAUSE_MESSAGE_HEAT: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_HEAT)); break; - case PAUSE_MESSAGE_HEATING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_HEATING)); break; - case PAUSE_MESSAGE_OPTION: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_OPTION_HEADER)); break; - case PAUSE_MESSAGE_STATUS: break; - default: onUserConfirmRequired(PSTR("Confirm Continue")); break; - } - userConfValidation = 0; - } - else if (pause_resume_selected && !awaitingUserConfirm()) { - rtscheck.RTS_SndData(ExchangePageBase + 53, ExchangepageAddr); - pause_resume_selected = false; - userConfValidation = 0; - } - else if (awaitingUserConfirm()) { - if (pause_resume_selected) { - pause_resume_selected = false; - userConfValidation = 100; - } - else - userConfValidation++; - } - - reEntryPrevent = true; - idleThrottling = 0; - if (waitway && !commandsInQueue()) - waitway_lock++; - else - waitway_lock = 0; - - if (waitway_lock > 100) { - waitway_lock = 0; - waitway = 0; // clear waitway if nothing is going on - } - - switch (waitway) { - case 1: - if (isPositionKnown()) { - InforShowStatus = true; - rtscheck.RTS_SndData(ExchangePageBase + 54, ExchangepageAddr); - waitway = 0; - } - break; - - case 2: - if (isPositionKnown() && !commandsInQueue()) waitway = 0; - break; - - case 3: - //if(isPositionKnown() && (getActualTemp_celsius(BED) >= (getTargetTemp_celsius(BED)-1))) { - rtscheck.RTS_SndData(ExchangePageBase + 64, ExchangepageAddr); - waitway = 7; - //return; - //} - break; - - case 4: - if (AutohomeKey && isPositionKnown() && !commandsInQueue()) { // Manual Move Home Done - //rtscheck.RTS_SndData(ExchangePageBase + 71 + AxisPagenum, ExchangepageAddr); - AutohomeKey = false; - waitway = 0; - } - break; - case 5: - if (isPositionKnown() && !commandsInQueue()) { - InforShowStatus = true; - waitway = 0; - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); // exchange to 78 page - } - break; - case 6: - if (!commandsInQueue()) { - setAxisPosition_mm(BED_TRAMMING_HEIGHT, axis_t(Z)); - waitway = 0; - } - break; - case 7: - if (!commandsInQueue()) waitway = 0; - break; - } - - TERN_(HAS_MESH, rtscheck.RTS_SndData(getLevelingActive() ? 3 : 2, AutoLevelIcon)); - TERN_(HAS_FILAMENT_SENSOR, rtscheck.RTS_SndData(getFilamentRunoutEnabled() ? 3 : 2, RunoutToggle)); - TERN_(CASE_LIGHT_ENABLE, rtscheck.RTS_SndData(getCaseLightState() ? 3 : 2, LedToggle)); - TERN_(POWER_LOSS_RECOVERY, rtscheck.RTS_SndData(getPowerLossRecoveryEnabled() ? 3 : 2, PowerLossToggle)); - - if (startprogress == 0) { - startprogress += 25; - delay_ms(3000); // Delay to show bootscreen - } - else if (startprogress < 250) { - if (isMediaInserted()) // Re init media as it happens too early on STM32 boards often - onMediaInserted(); - else - injectCommands(F("M22\nM21")); - startprogress = 254; - InforShowStatus = true; - TPShowStatus = false; - rtscheck.RTS_SndData(ExchangePageBase + 45, ExchangepageAddr); - reEntryPrevent = false; - return; - } - if (startprogress <= 100) - rtscheck.RTS_SndData(startprogress, StartIcon); - else - rtscheck.RTS_SndData(startprogress - 100, StartIcon + 1); - - //rtscheck.RTS_SndData((startprogress++) % 5, ExchFlmntIcon); - - if (isPrinting()) { - rtscheck.RTS_SndData(getActualFan_percent((fan_t)getActiveTool()), FanKeyIcon); - rtscheck.RTS_SndData(getProgress_seconds_elapsed() / 3600, Timehour); - rtscheck.RTS_SndData((getProgress_seconds_elapsed() % 3600) / 60, Timemin); - if (getProgress_percent() > 0) { - const uint16_t perc = getProgress_percent() + 1; - if (perc <= 50) { - rtscheck.RTS_SndData(uint16_t(perc) * 2, PrintscheduleIcon); - rtscheck.RTS_SndData(0, PrintscheduleIcon + 1); - } - else { - rtscheck.RTS_SndData(100, PrintscheduleIcon); - rtscheck.RTS_SndData(uint16_t(perc) * 2 - 100, PrintscheduleIcon + 1); - } - } - else { - rtscheck.RTS_SndData(0, PrintscheduleIcon); - rtscheck.RTS_SndData(0, PrintscheduleIcon + 1); - } - rtscheck.RTS_SndData(uint16_t(getProgress_percent()), Percentage); - } - else { // Not printing settings - rtscheck.RTS_SndData(map(constrain(Settings.display_volume, 0, 255), 0, 255, 0, 100), VolumeDisplay); - rtscheck.RTS_SndData(Settings.screen_brightness, DisplayBrightness); - rtscheck.RTS_SndData(Settings.standby_screen_brightness, DisplayStandbyBrightness); - rtscheck.RTS_SndData(Settings.standby_time_seconds, DisplayStandbySeconds); - if (Settings.display_standby) - rtscheck.RTS_SndData(3, DisplayStandbyEnableIndicator); - else - rtscheck.RTS_SndData(2, DisplayStandbyEnableIndicator); - - rtscheck.RTS_SndData(getAxisSteps_per_mm(X) * 10, StepMM_X); - rtscheck.RTS_SndData(getAxisSteps_per_mm(Y) * 10, StepMM_Y); - rtscheck.RTS_SndData(getAxisSteps_per_mm(Z) * 10, StepMM_Z); - rtscheck.RTS_SndData(getAxisSteps_per_mm(E0) * 10, StepMM_E); - - rtscheck.RTS_SndData(getAxisMaxAcceleration_mm_s2(X) / 100, Accel_X); - rtscheck.RTS_SndData(getAxisMaxAcceleration_mm_s2(Y) / 100, Accel_Y); - rtscheck.RTS_SndData(getAxisMaxAcceleration_mm_s2(Z) / 10, Accel_Z); - rtscheck.RTS_SndData(getAxisMaxAcceleration_mm_s2(E0), Accel_E); - - rtscheck.RTS_SndData(getAxisMaxFeedrate_mm_s(X), Feed_X); - rtscheck.RTS_SndData(getAxisMaxFeedrate_mm_s(Y), Feed_Y); - rtscheck.RTS_SndData(getAxisMaxFeedrate_mm_s(Z), Feed_Z); - rtscheck.RTS_SndData(getAxisMaxFeedrate_mm_s(E0), Feed_E); - - rtscheck.RTS_SndData(getAxisMaxJerk_mm_s(X) * 100, Jerk_X); - rtscheck.RTS_SndData(getAxisMaxJerk_mm_s(Y) * 100, Jerk_Y); - rtscheck.RTS_SndData(getAxisMaxJerk_mm_s(Z) * 100, Jerk_Z); - rtscheck.RTS_SndData(getAxisMaxJerk_mm_s(E0) * 100, Jerk_E); - - #if HAS_HOTEND_OFFSET - rtscheck.RTS_SndData(getNozzleOffset_mm(X, E1) * 10, T2Offset_X); - rtscheck.RTS_SndData(getNozzleOffset_mm(Y, E1) * 10, T2Offset_Y); - rtscheck.RTS_SndData(getNozzleOffset_mm(Z, E1) * 10, T2Offset_Z); - rtscheck.RTS_SndData(getAxisSteps_per_mm(E1) * 10, T2StepMM_E); - #endif - - #if HAS_BED_PROBE - rtscheck.RTS_SndData(getProbeOffset_mm(X) * 100, ProbeOffset_X); - rtscheck.RTS_SndData(getProbeOffset_mm(Y) * 100, ProbeOffset_Y); - #endif - - #if HAS_PID_HEATING - rtscheck.RTS_SndData(pid_hotendAutoTemp, HotendPID_AutoTmp); - rtscheck.RTS_SndData(pid_bedAutoTemp, BedPID_AutoTmp); - rtscheck.RTS_SndData(getPID_Kp(E0) * 10, HotendPID_P); - rtscheck.RTS_SndData(getPID_Ki(E0) * 10, HotendPID_I); - rtscheck.RTS_SndData(getPID_Kd(E0) * 10, HotendPID_D); - #if ENABLED(PIDTEMPBED) - rtscheck.RTS_SndData(getBedPID_Kp() * 10, BedPID_P); - rtscheck.RTS_SndData(getBedPID_Ki() * 10, BedPID_I); - rtscheck.RTS_SndData(getBedPID_Kd() * 10, BedPID_D); - #endif - #endif - } - - rtscheck.RTS_SndData(getZOffset_mm() * 100, ProbeOffset_Z); - rtscheck.RTS_SndData(uint16_t(getFlow_percent(E0)), Flowrate); - - if (NozzleTempStatus[0] || NozzleTempStatus[2]) { // statuse of loadfilament and unloadfinement when temperature is less than - uint16_t IconTemp = getActualTemp_celsius(getActiveTool()) * 100 / getTargetTemp_celsius(getActiveTool()); - NOMORE(IconTemp, 100U); - rtscheck.RTS_SndData(IconTemp, HeatPercentIcon); - if (getActualTemp_celsius(getActiveTool()) > EXTRUDE_MINTEMP && NozzleTempStatus[0] != 0) { - NozzleTempStatus[0] = 0; - rtscheck.RTS_SndData(10 * ChangeMaterialbuf[0], FilamentUnit1); - rtscheck.RTS_SndData(10 * ChangeMaterialbuf[1], FilamentUnit2); - rtscheck.RTS_SndData(ExchangePageBase + 65, ExchangepageAddr); - } - else if (getActualTemp_celsius(getActiveTool()) >= getTargetTemp_celsius(getActiveTool()) && NozzleTempStatus[2]) { - NozzleTempStatus[2] = 0; - TPShowStatus = true; - rtscheck.RTS_SndData(4, ExchFlmntIcon); - rtscheck.RTS_SndData(ExchangePageBase + 83, ExchangepageAddr); - } - else if (NozzleTempStatus[2]) { - //rtscheck.RTS_SndData((startprogress++) % 5, ExchFlmntIcon); - } - } - - if (AutohomeKey) { - rtscheck.RTS_SndData(AutoHomeIconNum, AutoZeroIcon); - if (++AutoHomeIconNum > 9) AutoHomeIconNum = 0; - } - - if (isMediaInserted()) { - const uint16_t currPage = fileIndex == 0 ? 1 : CEIL(float(fileIndex) / float(DISPLAY_FILES)) + 1, - maxPageAdd = filenavigator.folderdepth ? 1 : 0, - maxPages = CEIL(float(filenavigator.maxFiles() + maxPageAdd) / float(DISPLAY_FILES) ); - - rtscheck.RTS_SndData(currPage, FilesCurentPage); - rtscheck.RTS_SndData(maxPages, FilesMaxPage); - } - else { - rtscheck.RTS_SndData(0, FilesCurentPage); - rtscheck.RTS_SndData(0, FilesMaxPage); - } - - if (rtscheck.recdat.addr != DisplayZaxis && rtscheck.recdat.addr != DisplayYaxis && rtscheck.recdat.addr != DisplayZaxis) { - rtscheck.RTS_SndData(10 * getAxisPosition_mm(axis_t(X)), DisplayXaxis); - rtscheck.RTS_SndData(10 * getAxisPosition_mm(axis_t(Y)), DisplayYaxis); - rtscheck.RTS_SndData(10 * getAxisPosition_mm(axis_t(Z)), DisplayZaxis); - } - reEntryPrevent = false; - } - - rx_datagram_state_t RTSSHOW::rx_datagram_state = DGUS_IDLE; - uint8_t RTSSHOW::rx_datagram_len = 0; - bool RTSSHOW::Initialized = false; - RTSSHOW::RTSSHOW() { - recdat.head[0] = snddat.head[0] = FHONE; - recdat.head[1] = snddat.head[1] = FHTWO; - ZERO(databuf); - } - - int16_t RTSSHOW::RTS_RecData() { - uint8_t receivedbyte; - while (DWIN_SERIAL.available()) - switch (rx_datagram_state) { - - case DGUS_IDLE: // Waiting for the first header byte - receivedbyte = DWIN_SERIAL.read(); - if (FHONE == receivedbyte) rx_datagram_state = DGUS_HEADER1_SEEN; - break; - - case DGUS_HEADER1_SEEN: // Waiting for the second header byte - receivedbyte = DWIN_SERIAL.read(); - rx_datagram_state = (FHTWO == receivedbyte) ? DGUS_HEADER2_SEEN : DGUS_IDLE; - break; - - case DGUS_HEADER2_SEEN: // Waiting for the length byte - rx_datagram_len = DWIN_SERIAL.read(); - //DEBUGLCDCOMM_ECHOPGM(" (", rx_datagram_len, ") "); - - // Telegram min len is 3 (command and one word of payload) - rx_datagram_state = WITHIN(rx_datagram_len, 3, DGUS_RX_BUFFER_SIZE) ? DGUS_WAIT_TELEGRAM : DGUS_IDLE; - break; - - case DGUS_WAIT_TELEGRAM: // wait for complete datagram to arrive. - if (DWIN_SERIAL.available() < rx_datagram_len) return -1; - - Initialized = true; // We've talked to it, so we defined it as initialized. - uint8_t command = DWIN_SERIAL.read(); - - //DEBUGLCDCOMM_ECHOPGM("# ", command); - - uint8_t readlen = rx_datagram_len - 1; // command is part of len. - uint8_t tmp[rx_datagram_len - 1]; - uint8_t *ptmp = tmp; - while (readlen--) { - receivedbyte = DWIN_SERIAL.read(); - //DEBUGLCDCOMM_ECHOPGM(" ", receivedbyte); - *ptmp++ = receivedbyte; - } - //DEBUGLCDCOMM_ECHOPGM(" # "); - // mostly we'll get this: 5A A5 03 82 4F 4B -- ACK on 0x82, so discard it. - if (command == VarAddr_W && 'O' == tmp[0] && 'K' == tmp[1]) { - rx_datagram_state = DGUS_IDLE; - break; - } - - /* AutoUpload, (and answer to) Command 0x83 : - | tmp[0 1 2 3 4 ... ] - | Example 5A A5 06 83 20 01 01 78 01 …… - | / / | | \ / | \ \ - | Header | | | | \_____\_ DATA (Words!) - | DatagramLen / VPAdr | - | Command DataLen (in Words) */ - if (command == VarAddr_R) { - const uint16_t vp = tmp[0] << 8 | tmp[1]; - - const uint8_t dlen = tmp[2] << 1; // Convert to Bytes. (Display works with words) - recdat.addr = vp; - recdat.len = tmp[2]; - for (uint16_t i = 0; i < dlen; i += 2) { - recdat.data[i / 2] = tmp[3 + i]; - recdat.data[i / 2] = (recdat.data[i / 2] << 8 ) | tmp[4 + i]; - } - - rx_datagram_state = DGUS_IDLE; - return 2; - break; - } - - // discard anything else - rx_datagram_state = DGUS_IDLE; - } - return -1; - } - - void RTSSHOW::RTS_SndData() { - if (snddat.head[0] == FHONE && snddat.head[1] == FHTWO && snddat.len >= 3) { - databuf[0] = snddat.head[0]; - databuf[1] = snddat.head[1]; - databuf[2] = snddat.len; - databuf[3] = snddat.command; - if (snddat.command == 0x80) { // to write data to the register - databuf[4] = snddat.addr; - for (int16_t i = 0; i < (snddat.len - 2); i++) databuf[5 + i] = snddat.data[i]; - } - else if (snddat.len == 3 && (snddat.command == 0x81)) { // to read data from the register - databuf[4] = snddat.addr; - databuf[5] = snddat.bytelen; - } - else if (snddat.command == 0x82) { // to write data to the variate - databuf[4] = snddat.addr >> 8; - databuf[5] = snddat.addr & 0xFF; - for (int16_t i = 0; i < (snddat.len - 3); i += 2) { - databuf[6 + i] = snddat.data[i / 2] >> 8; - databuf[7 + i] = snddat.data[i / 2] & 0xFF; - } - } - else if (snddat.len == 4 && (snddat.command == 0x83)) { // to read data from the variate - databuf[4] = snddat.addr >> 8; - databuf[5] = snddat.addr & 0xFF; - databuf[6] = snddat.bytelen; - } - for (int16_t i = 0; i < (snddat.len + 3); i++) { - DWIN_SERIAL.write(databuf[i]); - delay_us(1); - } - - memset(&snddat, 0, sizeof(snddat)); - ZERO(databuf); - snddat.head[0] = FHONE; - snddat.head[1] = FHTWO; - } - } - - void RTSSHOW::RTS_SndData(const String &s, uint32_t addr, uint8_t cmd/*=VarAddr_W*/) { - if (s.length() < 1) return; - RTS_SndData(s.c_str(), addr, cmd); - } - - void RTSSHOW::RTS_SndData(const char *str, uint32_t addr, uint8_t cmd/*=VarAddr_W*/) { - int16_t len = strlen(str); - constexpr int16_t maxlen = SizeofDatabuf - 6; - if (len > 0) { - if (len > maxlen) len = maxlen; - databuf[0] = FHONE; - databuf[1] = FHTWO; - databuf[2] = 3 + len; - databuf[3] = cmd; - databuf[4] = addr >> 8; - databuf[5] = addr & 0x00FF; - for (int16_t i = 0; i < len; i++) databuf[6 + i] = str[i]; - - for (int16_t i = 0; i < (len + 6); i++) { - DWIN_SERIAL.write(databuf[i]); - delay_us(1); - } - ZERO(databuf); - } - } - - void RTSSHOW::RTS_SndData(const char c, const uint32_t addr, const uint8_t cmd/*=VarAddr_W*/) { - snddat.command = cmd; - snddat.addr = addr; - snddat.data[0] = uint32_t(uint16_t(c) << 8); - snddat.len = 5; - RTS_SndData(); - } - - void RTSSHOW::RTS_SndData(const_float_t f, const uint32_t addr, const uint8_t cmd/*=VarAddr_W*/) { - int16_t n = f; - if (cmd == VarAddr_W) { - snddat.data[0] = n; - snddat.len = 5; - } - else if (cmd == RegAddr_W) { - snddat.data[0] = n; - snddat.len = 3; - } - else if (cmd == VarAddr_R) { - snddat.bytelen = n; - snddat.len = 4; - } - snddat.command = cmd; - snddat.addr = addr; - RTS_SndData(); - } - - void RTSSHOW::RTS_SndData(const int n, const uint32_t addr, const uint8_t cmd/*=VarAddr_W*/) { - if (cmd == VarAddr_W) { - if ((unsigned int)n > 0xFFFF) { - snddat.data[0] = n >> 16; - snddat.data[1] = n & 0xFFFF; - snddat.len = 7; - } - else { - snddat.data[0] = n; - snddat.len = 5; - } - } - else if (cmd == RegAddr_W) { - snddat.data[0] = n; - snddat.len = 3; - } - else if (cmd == VarAddr_R) { - snddat.bytelen = n; - snddat.len = 4; - } - snddat.command = cmd; - snddat.addr = addr; - RTS_SndData(); - } - - void RTSSHOW::RTS_SndData(const unsigned long n, uint32_t addr, uint8_t cmd/*=VarAddr_W*/) { - if (cmd == VarAddr_W) { - if (n > 0xFFFF) { - snddat.data[0] = n >> 16; - snddat.data[1] = n & 0xFFFF; - //snddat.data[0] = n >> 24; - //snddat.data[1] = n >> 16; - //snddat.data[2] = n >> 8; - //snddat.data[3] = n; - snddat.len = 7; - } - else { - snddat.data[0] = n; - snddat.len = 5; - } - } - else if (cmd == VarAddr_R) { - snddat.bytelen = n; - snddat.len = 4; - } - snddat.command = cmd; - snddat.addr = addr; - RTS_SndData(); - } - - void RTSSHOW::RTS_HandleData() { - int16_t Checkkey = -1; - if (waitway > 0) { // for waiting - memset(&recdat, 0, sizeof(recdat)); - recdat.head[0] = FHONE; - recdat.head[1] = FHTWO; - return; - } - for (int16_t i = 0; Addrbuf[i] != 0; i++) - if (recdat.addr == Addrbuf[i]) { - if (Addrbuf[i] == NzBdSet || Addrbuf[i] == NozzlePreheat || Addrbuf[i] == BedPreheat || Addrbuf[i] == Flowrate) - Checkkey = ManualSetTemp; - else if (WITHIN(Addrbuf[i], Stopprint, Resumeprint)) - Checkkey = PrintChoice; - else if (WITHIN(Addrbuf[i], AutoZero, DisplayZaxis)) - Checkkey = XYZEaxis; - else if (WITHIN(Addrbuf[i], FilamentUnit1, FilamentUnit2)) - Checkkey = Filament; - else - Checkkey = i; - break; - } - - switch (recdat.addr) { - case Flowrate: - case StepMM_X ... StepMM_E: - case ProbeOffset_X ... ProbeOffset_Y: - case HotendPID_AutoTmp ... BedPID_AutoTmp: - case HotendPID_P ... HotendPID_D: - case BedPID_P ... BedPID_D: - case T2Offset_X ... T2StepMM_E: - case Accel_X ... Accel_E: - case Feed_X ... Feed_E: - case Jerk_X ... Jerk_E: - case RunoutToggle: - case PowerLossToggle: - case FanKeyIcon: - case LedToggle: - case e2Preheat: Checkkey = ManualSetTemp; break; - case ProbeOffset_Z: Checkkey = Zoffset_Value; break; - case VolumeDisplay: Checkkey = VolumeDisplay; break; - case DisplayBrightness: Checkkey = DisplayBrightness; break; - case DisplayStandbyBrightness: Checkkey = DisplayStandbyBrightness; break; - case DisplayStandbySeconds: Checkkey = DisplayStandbySeconds; break; - default: - if (WITHIN(recdat.addr, AutolevelVal, 4400)) // (int16_t(AutolevelVal) + GRID_MAX_POINTS * 2) = 4400 with 5x5 mesh - Checkkey = AutolevelVal; - else if (WITHIN(recdat.addr, SDFILE_ADDR, SDFILE_ADDR + 10 * (FileNum + 1))) - Checkkey = Filename; - break; - } - - if (Checkkey < 0) { - memset(&recdat, 0, sizeof(recdat)); - recdat.head[0] = FHONE; - recdat.head[1] = FHTWO; - return; - } - - constexpr float lfrb[4] = BED_TRAMMING_INSET_LFRB; - - switch (Checkkey) { - case Printfile: - if (recdat.data[0] == 1) { // card - InforShowStatus = false; - filenavigator.getFiles(0); - fileIndex = 0; - recordcount = 0; - RTS_SndData(ExchangePageBase + 46, ExchangepageAddr); - } - else if (recdat.data[0] == 2) { // return after printing result. - InforShowStatus = true; - TPShowStatus = false; - stopPrint(); - injectCommands(F("M84")); - RTS_SndData(11, FilenameIcon); - RTS_SndData(0, PrintscheduleIcon); - RTS_SndData(0, PrintscheduleIcon + 1); - RTS_SndData(0, Percentage); - delay_ms(2); - RTS_SndData(0, Timehour); - RTS_SndData(0, Timemin); - - RTS_SndData(ExchangePageBase + 45, ExchangepageAddr); // exchange to 45 page - } - else if (recdat.data[0] == 3) { // Temperature control - InforShowStatus = true; - TPShowStatus = false; - if (getTargetFan_percent((fan_t)getActiveTool()) == 0) - RTS_SndData(ExchangePageBase + 58, ExchangepageAddr); // exchange to 58 page, the fans off - else - RTS_SndData(ExchangePageBase + 57, ExchangepageAddr); // exchange to 57 page, the fans on - } - else if (recdat.data[0] == 4) { // Settings - InforShowStatus = false; - } - break; - - case Adjust: - if (recdat.data[0] == 1) { - InforShowStatus = false; - } - else if (recdat.data[0] == 2) { - InforShowStatus = true; - if (PrinterStatusKey[1] == 3) // during heating - RTS_SndData(ExchangePageBase + 53, ExchangepageAddr); - else if (PrinterStatusKey[1] == 4) - RTS_SndData(ExchangePageBase + 54, ExchangepageAddr); - else - RTS_SndData(ExchangePageBase + 53, ExchangepageAddr); - } - else if (recdat.data[0] == 3) - setTargetFan_percent(getTargetFan_percent((fan_t)getActiveTool()) != 0 ? 100 : 0, FAN0); - - break; - - case Feedrate: - setFeedrate_percent(recdat.data[0]); - break; - - case PrintChoice: - if (recdat.addr == Stopprint) { - if (recdat.data[0] == 240) { // no - RTS_SndData(ExchangePageBase + 53, ExchangepageAddr); - } - else { - RTS_SndData(ExchangePageBase + 45, ExchangepageAddr); - RTS_SndData(0, Timehour); - RTS_SndData(0, Timemin); - stopPrint(); - } - } - else if (recdat.addr == Pauseprint) { - if (recdat.data[0] != 0xF1) - break; - - RTS_SndData(ExchangePageBase + 54, ExchangepageAddr); - pausePrint(); - } - else if (recdat.addr == Resumeprint && recdat.data[0] == 1) { - resumePrint(); - - PrinterStatusKey[1] = 0; - InforShowStatus = true; - - RTS_SndData(ExchangePageBase + 53, ExchangepageAddr); - } - if (recdat.addr == Resumeprint && recdat.data[0] == 2) { // warming - resumePrint(); - NozzleTempStatus[2] = 1; - PrinterStatusKey[1] = 0; - InforShowStatus = true; - RTS_SndData(ExchangePageBase + 82, ExchangepageAddr); - } - break; - - case Zoffset: - float tmp_zprobe_offset; - if (recdat.data[0] >= 32768) - tmp_zprobe_offset = (float(recdat.data[0]) - 65536) / 100; - else - tmp_zprobe_offset = float(recdat.data[0]) / 100; - if (WITHIN((tmp_zprobe_offset), Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { - int16_t tmpSteps = mmToWholeSteps(getZOffset_mm() - tmp_zprobe_offset, axis_t(Z)); - if (tmpSteps == 0) tmpSteps = getZOffset_mm() < tmp_zprobe_offset ? 1 : -1; - smartAdjustAxis_steps(-tmpSteps, axis_t(Z), false); - char zOffs[20], tmp1[11]; - sprintf_P(zOffs, PSTR("Z Offset : %s"), dtostrf(getZOffset_mm(), 1, 3, tmp1)); - onStatusChanged(zOffs); - } - else { - onStatusChanged(F("Requested Offset Beyond Limits")); - } - - rtscheck.RTS_SndData(getZOffset_mm() * 100, ProbeOffset_Z); - break; - - case TempControl: - if (recdat.data[0] == 0) { - InforShowStatus = true; - TPShowStatus = false; - } - else if (recdat.data[0] == 1) { - if (getTargetFan_percent((fan_t)getActiveTool()) == 0) - RTS_SndData(ExchangePageBase + 60, ExchangepageAddr); // exchange to 60 page, the fans off - else - RTS_SndData(ExchangePageBase + 59, ExchangepageAddr); // exchange to 59 page, the fans on - } - else if (recdat.data[0] == 2) { - InforShowStatus = true; - } - else if (recdat.data[0] == 3) { - if (getTargetFan_percent((fan_t)getActiveTool()) == 0) { // turn on the fan - setTargetFan_percent(100, FAN0); - RTS_SndData(ExchangePageBase + 57, ExchangepageAddr); // exchange to 57 page, the fans on - } - else { // turn off the fan - setTargetFan_percent(0, FAN0); - RTS_SndData(ExchangePageBase + 58, ExchangepageAddr); // exchange to 58 page, the fans on - } - } - else if (recdat.data[0] == 5) { // PLA mode - setTargetTemp_celsius(PREHEAT_1_TEMP_HOTEND, getActiveTool()); - setTargetTemp_celsius(PREHEAT_1_TEMP_BED, BED); - RTS_SndData(PREHEAT_1_TEMP_HOTEND, NozzlePreheat); - RTS_SndData(PREHEAT_1_TEMP_BED, BedPreheat); - } - else if (recdat.data[0] == 6) { // ABS mode - setTargetTemp_celsius(PREHEAT_2_TEMP_HOTEND, getActiveTool()); - setTargetTemp_celsius(PREHEAT_2_TEMP_BED, BED); - RTS_SndData(PREHEAT_2_TEMP_HOTEND, NozzlePreheat); - RTS_SndData(PREHEAT_2_TEMP_BED, BedPreheat); - } - else if (recdat.data[0] == 0xF1) { - //InforShowStatus = true; - #if FAN_COUNT > 0 - for (uint8_t i = 0; i < FAN_COUNT; i++) setTargetFan_percent(0, (fan_t)i); - #endif - setTargetTemp_celsius(0.0, H0); - TERN_(HAS_MULTI_HOTEND, setTargetTemp_celsius(0.0, H1)); - setTargetTemp_celsius(0.0, BED); - RTS_SndData(0, NozzlePreheat); delay_ms(1); - RTS_SndData(0, BedPreheat); delay_ms(1); - RTS_SndData(ExchangePageBase + 57, ExchangepageAddr); - PrinterStatusKey[1] = 2; - } - break; - - case ManualSetTemp: - if (recdat.addr == NzBdSet) { - if (recdat.data[0] == 0) { - if (getTargetFan_percent((fan_t)getActiveTool()) == 0) - RTS_SndData(ExchangePageBase + 58, ExchangepageAddr); // exchange to 58 page, the fans off - else - RTS_SndData(ExchangePageBase + 57, ExchangepageAddr); // exchange to 57 page, the fans on - } - else if (recdat.data[0] == 1) { - setTargetTemp_celsius(0.0, getActiveTool()); - RTS_SndData(0, NozzlePreheat); - } - else if (recdat.data[0] == 2) { - setTargetTemp_celsius(0.0, BED); - RTS_SndData(0, BedPreheat); - } - } - else if (recdat.addr == NozzlePreheat) { - setTargetTemp_celsius(float(recdat.data[0]), H0); - } - #if HAS_MULTI_HOTEND - else if (recdat.addr == e2Preheat) { - setTargetTemp_celsius(float(recdat.data[0]), H1); - } - #endif - else if (recdat.addr == BedPreheat) { - setTargetTemp_celsius(float(recdat.data[0]), BED); - } - else if (recdat.addr == Flowrate) { - setFlow_percent(int16_t(recdat.data[0]), getActiveTool()); - } - - #if HAS_PID_HEATING - else if (recdat.addr == HotendPID_AutoTmp) { - pid_hotendAutoTemp = uint16_t(recdat.data[0]); - } - else if (recdat.addr == BedPID_AutoTmp) { - pid_bedAutoTemp = uint16_t(recdat.data[0]); - } - #endif - - else if (recdat.addr == Accel_X) { - setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]) * 100, X); - } - else if (recdat.addr == Accel_Y) { - setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]) * 100, Y); - } - else if (recdat.addr == Accel_Z) { - setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]) * 10, Z); - } - else if (recdat.addr == Accel_E) { - setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]), E0); - setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]), E1); - } - - else if (recdat.addr == Feed_X) { - setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), X); - } - else if (recdat.addr == Feed_Y) { - setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), Y); - } - else if (recdat.addr == Feed_Z) { - setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), Z); - } - else if (recdat.addr == Feed_E) { - setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), E0); - setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), E1); - } - else if (recdat.addr == FanKeyIcon) { - setTargetFan_percent(uint16_t(recdat.data[0]), (fan_t)getActiveTool()); - } - else { - float tmp_float_handling; - if (recdat.data[0] >= 32768) - tmp_float_handling = (float(recdat.data[0]) - 65536) / 100; - else - tmp_float_handling = float(recdat.data[0]) / 100; - if (recdat.addr == StepMM_X) { - setAxisSteps_per_mm(tmp_float_handling * 10, X); - } - else if (recdat.addr == StepMM_Y) { - setAxisSteps_per_mm(tmp_float_handling * 10, Y); - } - else if (recdat.addr == StepMM_Z) { - setAxisSteps_per_mm(tmp_float_handling * 10, Z); - } - else if (recdat.addr == StepMM_E) { - setAxisSteps_per_mm(tmp_float_handling * 10, E0); - #if DISABLED(DUAL_X_CARRIAGE) - setAxisSteps_per_mm(tmp_float_handling * 10, E1); - #endif - } - #if ENABLED(DUAL_X_CARRIAGE) - else if (recdat.addr == T2StepMM_E) { - setAxisSteps_per_mm(tmp_float_handling * 10, E1); - } - else if (recdat.addr == T2Offset_X) { - setNozzleOffset_mm(tmp_float_handling * 10, X, E1); - } - else if (recdat.addr == T2Offset_Y) { - setNozzleOffset_mm(tmp_float_handling * 10, Y, E1); - } - else if (recdat.addr == T2Offset_Z) { - setNozzleOffset_mm(tmp_float_handling * 10, Z, E1); - } - #endif - #if HAS_BED_PROBE - else if (recdat.addr == ProbeOffset_X) { - setProbeOffset_mm(tmp_float_handling, X); - } - else if (recdat.addr == ProbeOffset_Y) { - setProbeOffset_mm(tmp_float_handling, Y); - } - else if (recdat.addr == ProbeOffset_Z) { - setProbeOffset_mm(tmp_float_handling, Z); - } - #endif - - #if ENABLED(CLASSIC_JERK) - else if (recdat.addr == Jerk_X) { - setAxisMaxJerk_mm_s(tmp_float_handling, X); - } - else if (recdat.addr == Jerk_Y) { - setAxisMaxJerk_mm_s(tmp_float_handling, Y); - } - else if (recdat.addr == Jerk_Z) { - setAxisMaxJerk_mm_s(tmp_float_handling, Z); - } - else if (recdat.addr == Jerk_E) { - setAxisMaxJerk_mm_s(tmp_float_handling, E0); - setAxisMaxJerk_mm_s(tmp_float_handling, E1); - } - #endif - - #if HAS_FILAMENT_SENSOR - else if (recdat.addr == RunoutToggle) { - setFilamentRunoutEnabled(!getFilamentRunoutEnabled()); - } - #endif - - #if ENABLED(POWER_LOSS_RECOVERY) - else if (recdat.addr == PowerLossToggle) { - setPowerLossRecoveryEnabled(!getPowerLossRecoveryEnabled()); - } - #endif - - #if ENABLED(CASE_LIGHT_ENABLE) - else if (recdat.addr == LedToggle) { - setCaseLightState(!getCaseLightState()); - } - #endif - - #if HAS_PID_HEATING - else if (recdat.addr == HotendPID_P) { - setPID(tmp_float_handling * 10, getPID_Ki(getActiveTool()), getPID_Kd(getActiveTool()), getActiveTool()); - } - else if (recdat.addr == HotendPID_I) { - setPID(getPID_Kp(getActiveTool()), tmp_float_handling * 10, getPID_Kd(getActiveTool()), getActiveTool()); - } - else if (recdat.addr == HotendPID_D) { - setPID(getPID_Kp(getActiveTool()), getPID_Ki(getActiveTool()), tmp_float_handling * 10, getActiveTool()); - } - #if ENABLED(PIDTEMPBED) - else if (recdat.addr == BedPID_P) { - setBedPID(tmp_float_handling * 10, getBedPID_Ki(), getBedPID_Kd()); - } - else if (recdat.addr == BedPID_I) { - setBedPID(getBedPID_Kp(), tmp_float_handling * 10, getBedPID_Kd()); - } - else if (recdat.addr == BedPID_D) { - setBedPID(getBedPID_Kp(), getBedPID_Ki(), tmp_float_handling * 10); - } - #endif - #endif // HAS_PID_HEATING - } - break; - - case Setting: - if (recdat.data[0] == 0) { // return to main page - InforShowStatus = true; - TPShowStatus = false; - } - else if (recdat.data[0] == 1) { // Bed Autoleveling - #if HAS_MESH - RTS_SndData(getLevelingActive() ? 3 : 2, AutoLevelIcon); - - if (ExtUI::getMeshValid()) { - uint8_t abl_probe_index = 0; - for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) - for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { - const bool zig = outer & 1; - const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; - rtscheck.RTS_SndData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + abl_probe_index * 2); - ++abl_probe_index; - } - } - #endif - RTS_SndData(10, FilenameIcon); // Motor Icon - injectCommands(isPositionKnown() ? F("G1F1000Z0.0") : F("G28\nG1F1000Z0.0")); - waitway = 2; - RTS_SndData(ExchangePageBase + 64, ExchangepageAddr); - } - else if (recdat.data[0] == 2) { // Exchange filament - InforShowStatus = true; - TPShowStatus = false; - ZERO(ChangeMaterialbuf); - ChangeMaterialbuf[1] = ChangeMaterialbuf[0] = 10; - RTS_SndData(10 * ChangeMaterialbuf[0], FilamentUnit1); // It's ChangeMaterialbuf for show, instead of current_position.e in them. - RTS_SndData(10 * ChangeMaterialbuf[1], FilamentUnit2); - RTS_SndData(getActualTemp_celsius(H0), NozzleTemp); - RTS_SndData(getTargetTemp_celsius(H0), NozzlePreheat); - rtscheck.RTS_SndData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); - rtscheck.RTS_SndData(TERN0(HAS_MULTI_HOTEND, getTargetTemp_celsius(H1)), e2Preheat); - delay_ms(2); - RTS_SndData(ExchangePageBase + 65, ExchangepageAddr); - } - else if (recdat.data[0] == 3) { // Move - AxisPagenum = 0; - RTS_SndData(ExchangePageBase + 71, ExchangepageAddr); - } - else if (recdat.data[0] == 4) { // Language - // Just loads language screen, now used for tools - } - else if (recdat.data[0] == 5) { // Printer Information - RTS_SndData(WEBSITE_URL, CorpWebsite); - } - else if (recdat.data[0] == 6) { // Diabalestepper - injectCommands(F("M84")); - RTS_SndData(11, FilenameIcon); - } - break; - - case ReturnBack: - if (recdat.data[0] == 1) { // return to the tool page - InforShowStatus = false; - RTS_SndData(ExchangePageBase + 63, ExchangepageAddr); - } - if (recdat.data[0] == 2) // return to the Level mode page - RTS_SndData(ExchangePageBase + 64, ExchangepageAddr); - break; - - case Bedlevel: - switch (recdat.data[0]) { - case 1: { // Z-axis to home - // Disallow Z homing if X or Y are unknown - injectCommands(isAxisPositionKnown(axis_t(X)) && isAxisPositionKnown(axis_t(Y)) ? F("G28Z\nG1F1500Z0.0") : F("G28\nG1F1500Z0.0")); - RTS_SndData(getZOffset_mm() * 100, ProbeOffset_Z); - break; - } - case 2: { // Z-axis to Up - if (WITHIN((getZOffset_mm() + 0.1), Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { - smartAdjustAxis_steps(getAxisSteps_per_mm(Z) / 10, axis_t(Z), false); - //setZOffset_mm(getZOffset_mm() + 0.1); - RTS_SndData(getZOffset_mm() * 100, ProbeOffset_Z); - char zOffs[20], tmp1[11]; - sprintf_P(zOffs, PSTR("Z Offset : %s"), dtostrf(getZOffset_mm(), 1, 3, tmp1)); - onStatusChanged(zOffs); - } - break; - } - case 3: { // Z-axis to Down - if (WITHIN((getZOffset_mm() - 0.1), Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { - smartAdjustAxis_steps(-getAxisSteps_per_mm(Z) / 10, axis_t(Z), false); - //babystepAxis_steps(int16_t(-getAxisSteps_per_mm(Z)) / 10, axis_t(Z)); - //setZOffset_mm(getZOffset_mm() - 0.1); - RTS_SndData(getZOffset_mm() * 100, ProbeOffset_Z); - char zOffs[20], tmp1[11]; - sprintf_P(zOffs, PSTR("Z Offset : %s"), dtostrf(getZOffset_mm(), 1, 3, tmp1)); - onStatusChanged(zOffs); - } - break; - } - case 4: { // Assistant Level - TERN_(HAS_MESH, setLevelingActive(false)); - injectCommands(isPositionKnown() ? F("G1 F1000 Z0.0") : F("G28\nG1 F1000 Z0.0")); - waitway = 2; - RTS_SndData(ExchangePageBase + 84, ExchangepageAddr); - break; - } - case 5: { // AutoLevel "Measuring" Button - #if ENABLED(MESH_BED_LEVELING) - RTS_SndData(ExchangePageBase + 93, ExchangepageAddr); - #else - waitway = 3; // only for prohibiting to receive massage - RTS_SndData(3, AutolevelIcon); - uint8_t abl_probe_index = 0; - while (abl_probe_index < 25) { - rtscheck.RTS_SndData(0, AutolevelVal + abl_probe_index * 2); - ++abl_probe_index; - } - RTS_SndData(ExchangePageBase + 64, ExchangepageAddr); - injectCommands(F(MEASURING_GCODE)); - #endif - break; - } - - case 6: { // Assitant Level , Centre 1 - setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); - setAxisPosition_mm(X_CENTER, axis_t(X)); - setAxisPosition_mm(Y_CENTER, axis_t(Y)); - waitway = 6; - break; - } - case 7: { // Assitant Level , Front Left 2 - setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); - setAxisPosition_mm(X_MIN_BED + lfrb[0], axis_t(X)); - setAxisPosition_mm(Y_MIN_BED + lfrb[1], axis_t(Y)); - waitway = 6; - break; - } - case 8: { // Assitant Level , Front Right 3 - setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); - setAxisPosition_mm(X_MAX_BED - lfrb[2], axis_t(X)); - setAxisPosition_mm(Y_MIN_BED + lfrb[1], axis_t(Y)); - waitway = 6; - break; - } - case 9: { // Assitant Level , Back Right 4 - setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); - setAxisPosition_mm(X_MAX_BED - lfrb[2], axis_t(X)); - setAxisPosition_mm(Y_MAX_BED - lfrb[3], axis_t(Y)); - waitway = 6; - break; - } - case 10: { // Assitant Level , Back Left 5 - setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); - setAxisPosition_mm(X_MIN_BED + lfrb[0], axis_t(X)); - setAxisPosition_mm(Y_MAX_BED - lfrb[3], axis_t(Y)); - waitway = 6; - break; - } - case 11: { // Autolevel switch - #if HAS_MESH - const bool gla = !getLevelingActive(); - setLevelingActive(gla); - RTS_SndData(gla ? 3 : 2, AutoLevelIcon); - #endif - RTS_SndData(getZOffset_mm() * 100, ProbeOffset_Z); - break; - } - case 12: { - injectCommands(F("G26R255")); - onStatusChanged(F("Beginning G26.. Heating")); - break; - } - case 13: { - injectCommands(F("G29S1")); - onStatusChanged(F("Begin Manual Mesh")); - break; - } - case 14: { - injectCommands(F("G29S2")); - onStatusChanged(F("Moving to Next Mesh Point")); - break; - } - case 15: { - injectCommands(F("M211S0\nG91\nG1Z-0.025\nG90\nM211S1")); - onStatusChanged(F("Moved down 0.025")); - break; - } - case 16: { - injectCommands(F("M211S0\nG91\nG1Z0.025\nG90\nM211S1")); - onStatusChanged(F("Moved up 0.025")); - break; - } - case 17: { - Settings.display_volume = 0; - Settings.display_sound = false; - SetTouchScreenConfiguration(); - break; - } - case 18: { - Settings.display_volume = 255; - Settings.display_sound = true; - SetTouchScreenConfiguration(); - break; - } - case 19: { - Settings.screen_brightness = 10; - SetTouchScreenConfiguration(); - break; - } - case 20: { - Settings.screen_brightness = 100; - SetTouchScreenConfiguration(); - break; - } - case 21: { - Settings.display_standby ^= true; - SetTouchScreenConfiguration(); - break; - } - case 22: { - Settings.screen_rotation = Settings.screen_rotation == 10 ? 0 : 10; - SetTouchScreenConfiguration(); - break; - } - case 23: { // Set IDEX Autopark - injectCommands(F("M605S1\nG28X\nG1X0")); - break; - } - case 24: { // Set IDEX Duplication - injectCommands(F("M605S1\nT0\nG28\nM605S2\nG28X\nG1X0")); - break; - } - case 25: { // Set IDEX Mirrored Duplication - injectCommands(F("M605S1\nT0\nG28\nM605S2\nG28X\nG1X0\nM605S3")); - break; - } - case 26: { // Set IDEX Full Control - injectCommands(F("M605S0\nG28X")); - break; - } - case 27: { // Change Tool - setActiveTool(getActiveTool() == E0 ? E1 : E0, !isAxisPositionKnown(X)); - break; - } - default: break; - } - - RTS_SndData(10, FilenameIcon); - break; - - case XYZEaxis: { - axis_t axis = X; - float min = 0.0f, max = 0.0f; - waitway = 4; - if (recdat.addr == DisplayXaxis) { - axis = X; - min = X_MIN_POS; - max = X_MAX_POS; - } - else if (recdat.addr == DisplayYaxis) { - axis = Y; - min = Y_MIN_POS; - max = Y_MAX_POS; - } - else if (recdat.addr == DisplayZaxis) { - axis = Z; - min = Z_MIN_POS; - max = Z_MAX_POS; - } - else if (recdat.addr == AutoZero) { - if (recdat.data[0] == 3) { // autohome - waitway = 4; - injectCommands(F("G28\nG1 F1000 Z10")); - InforShowStatus = AutohomeKey = true; - AutoHomeIconNum = 0; - RTS_SndData(10, FilenameIcon); - } - else { - AxisPagenum = recdat.data[0]; - waitway = 0; - } - break; - } - - float targetPos = float(recdat.data[0]) / 10; - LIMIT(targetPos, min, max); - setAxisPosition_mm(targetPos, axis); - waitway = 0; - RTS_SndData(10, FilenameIcon); - break; - } - - case Filament: - - uint16_t IconTemp; - if (recdat.addr == Exchfilament) { - if (getActualTemp_celsius(getActiveTool()) < EXTRUDE_MINTEMP && recdat.data[0] < 5) { - RTS_SndData(int16_t(EXTRUDE_MINTEMP), 0x1020); - delay_ms(5); - RTS_SndData(ExchangePageBase + 66, ExchangepageAddr); - break; - } - - switch (recdat.data[0]) { - case 1: { // Unload filament1 - setAxisPosition_mm(getAxisPosition_mm(E0) - ChangeMaterialbuf[0], E0); - break; - } - case 2: { // Load filament1 - setAxisPosition_mm(getAxisPosition_mm(E0) + ChangeMaterialbuf[0], E0); - break; - } - case 3: { // Unload filament2 - setAxisPosition_mm(getAxisPosition_mm(E1) - ChangeMaterialbuf[1], E1); - break; - } - case 4: { // Load filament2 - setAxisPosition_mm(getAxisPosition_mm(E1) + ChangeMaterialbuf[1], E1); - break; - } - case 5: { // sure to heat - NozzleTempStatus[0] = 1; - - setTargetTemp_celsius((PREHEAT_1_TEMP_HOTEND + 10), getActiveTool()); - IconTemp = getActualTemp_celsius(getActiveTool()) * 100 / getTargetTemp_celsius(getActiveTool()); - NOMORE(IconTemp, 100U); - RTS_SndData(IconTemp, HeatPercentIcon); - - RTS_SndData(getActualTemp_celsius(H0), NozzleTemp); - RTS_SndData(getTargetTemp_celsius(H0), NozzlePreheat); - rtscheck.RTS_SndData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); - rtscheck.RTS_SndData(TERN0(HAS_MULTI_HOTEND, getTargetTemp_celsius(H1)), e2Preheat); - delay_ms(5); - RTS_SndData(ExchangePageBase + 68, ExchangepageAddr); - break; - } - case 6: { // cancel to heat - RTS_SndData(ExchangePageBase + 65, ExchangepageAddr); - break; - } - case 0xF1: { // Sure to cancel heating - NozzleTempStatus[0] = 0; - delay_ms(1); - RTS_SndData(ExchangePageBase + 65, ExchangepageAddr); - break; - } - case 0xF0: // not to cancel heating - break; - } - RTS_SndData(10 * ChangeMaterialbuf[0], FilamentUnit1); // It's ChangeMaterialbuf for show, instead of current_position.e in them. - RTS_SndData(10 * ChangeMaterialbuf[1], FilamentUnit2); - } - else if (recdat.addr == FilamentUnit1) { - ChangeMaterialbuf[0] = float(recdat.data[0]) / 10; - } - else if (recdat.addr == FilamentUnit2) { - ChangeMaterialbuf[1] = float(recdat.data[0]) / 10; - } - break; - - case LanguageChoice: - - //if (recdat.data[0] == 1) settings.save(); else injectCommands(F("M300")); - - // may at some point use language change screens to save eeprom explicitly - switch (recdat.data[0]) { - case 0: { - injectCommands(F("M500")); - break; - } - case 1: { - RTS_SndData(ExchangePageBase + 94, ExchangepageAddr); - break; - } - - #if ENABLED(PIDTEMP) - case 2: { - onStatusChanged(F("Hotend PID Started")); - startPIDTune(static_cast(pid_hotendAutoTemp), getActiveTool()); - break; - } - #endif - - case 3: { - injectCommands(F("M502\nM500")); - break; - } - case 4: { - injectCommands(F("M999\nM280P0S160")); - break; - } - - case 5: { - #if ENABLED(PIDTEMPBED) - onStatusChanged(F("Bed PID Started")); - startBedPIDTune(static_cast(pid_bedAutoTemp)); - #endif - break; - } - case 6: { - injectCommands(F("M500")); - break; - } - default: break; - } - break; - - case No_Filament: - if (recdat.data[0] == 1) { // Filament is out, resume / resume selected on screen - if (ExtUI::pauseModeStatus != PAUSE_MESSAGE_PURGE && ExtUI::pauseModeStatus != PAUSE_MESSAGE_OPTION) { - // setPauseMenuResponse(PAUSE_RESPONSE_RESUME_PRINT); - setUserConfirmed(); - // PrinterStatusKey[1] = 3; - // pause_resume_selected = true; - } - else { - #if ENABLED(FILAMENT_RUNOUT_SENSOR) - bool runouton = false; - if (getFilamentRunoutState()) { - #if NUM_RUNOUT_SENSORS > 1 - if ((runouton = getFilamentRunoutEnabled(getActiveTool()))) - ExtUI::setFilamentRunoutEnabled(false, getActiveTool()); - #else - if ((runouton = getFilamentRunoutEnabled())) - ExtUI::setFilamentRunoutEnabled(false); - #endif - } - #else - constexpr bool runouton = false; - #endif - if (!runouton) { - setPauseMenuResponse(PAUSE_RESPONSE_RESUME_PRINT); - setUserConfirmed(); - PrinterStatusKey[1] = 3; - pause_resume_selected = true; - } - } - } - else if (recdat.data[0] == 0) { // Filamet is out, Cancel Selected - if (ExtUI::pauseModeStatus == PAUSE_MESSAGE_PURGE || ExtUI::pauseModeStatus == PAUSE_MESSAGE_OPTION) { - setPauseMenuResponse(PAUSE_RESPONSE_EXTRUDE_MORE); - setUserConfirmed(); - } - } - break; - - #if ENABLED(POWER_LOSS_RECOVERY) - case PwrOffNoF: - if (recdat.data[0] == 1) // Yes: continue to print the 3Dmode during power-off. - injectCommands(F("M1000")); - else if (recdat.data[0] == 2) // No - injectCommands(F("M1000C")); - break; - #endif - - case Volume: - if (recdat.data[0] < 0) - Settings.display_volume = 0; - else if (recdat.data[0] > 255) - Settings.display_volume = 0xFF; - else - Settings.display_volume = recdat.data[0]; - - if (Settings.display_volume == 0) { - RTS_SndData(0, VolumeIcon); - RTS_SndData(9, SoundIcon); - } - else { - RTS_SndData((Settings.display_volume + 1) / 32 - 1, VolumeIcon); - RTS_SndData(8, SoundIcon); - } - RTS_SndData(Settings.display_volume << 8, SoundAddr + 1); - break; - - case Filename: - if (isMediaInserted() && recdat.addr == FilenameChs) { - - recordcount = recdat.data[0] - 1; - if (filenavigator.currentindex == 0 && filenavigator.folderdepth > 0 && (fileIndex + recordcount) == 0) { - filenavigator.upDIR(); - filenavigator.getFiles(0); - fileIndex = 0; - return; - } - - if (filenavigator.currentindex == 0 && filenavigator.folderdepth > 0) - recordcount = recordcount - 1; // account for return dir link in file index - - for (int16_t j = 1; j <= 4; j++) { // Clear filename BG Color and Frame - RTS_SndData(0xFFFFUL, FilenameNature + j * 16); // white - RTS_SndData(10, FilenameIcon1 + j); // clean - } - for (int16_t j = 0; j < 10; j++) // clear current filename - RTS_SndData(0, Choosefilename + j); - - if (filenavigator.getIndexisDir(fileIndex + recordcount)) { - filenavigator.changeDIR((char *)filenavigator.getIndexName(fileIndex + recordcount)); - filenavigator.getFiles(0); - fileIndex = 0; - return; - } - else { - RTS_SndData(filenavigator.getIndexName(fileIndex + recordcount), Choosefilename); - RTS_SndData(0x87F0UL, FilenameNature + recdat.data[0] * 16); // Change BG of selected line to Light Green - RTS_SndData(6, FilenameIcon1 + recdat.data[0]); // show frame - } - } - else if (recdat.addr == FilenamePlay) { - if (recdat.data[0] == 1 && isMediaInserted()) { // for sure - printFile(filenavigator.getIndexName(fileIndex + recordcount)); - - for (int16_t j = 0; j < 10; j++) // clean screen. - RTS_SndData(0, Printfilename + j); - - RTS_SndData(filenavigator.getIndexName(fileIndex + recordcount), Printfilename); - - delay_ms(4); - - RTS_SndData(ExchangePageBase + 53, ExchangepageAddr); - - TPShowStatus = InforShowStatus = true; - PrinterStatusKey[0] = 1; - PrinterStatusKey[1] = 3; - fileIndex = 0; - recordcount = 0; - } - else if (recdat.data[0] == 2) { // Page Down - if ((fileIndex + DISPLAY_FILES) < (filenavigator.maxFiles() + (filenavigator.folderdepth != 0))) { - fileIndex = fileIndex + DISPLAY_FILES; - // if(filenavigator.folderdepth!=0 && fileIndex!=0) //Shift to acknowledge Return DIR button on first page - // filenavigator.getFiles(fileIndex-1); - // else - filenavigator.getFiles(fileIndex); - // filenavigator.getFiles(filenavigator.currentindex+1); - } - } - else if (recdat.data[0] == 3) { // Page Up - if (fileIndex >= DISPLAY_FILES) { - fileIndex = fileIndex - DISPLAY_FILES; - // if(filenavigator.folderdepth!=0 && fileIndex!=0) //Shift to acknowledge Return DIR button on first page - // filenavigator.getFiles(filenavigator.currentindex-DISPLAY_FILES); - // else - filenavigator.getFiles(fileIndex); - } - } - else if (recdat.data[0] == 4) { // Page Up - injectCommands(F("M22\nM21")); - } - else if (recdat.data[0] == 0) { // return to main page - InforShowStatus = true; - TPShowStatus = false; - } - } - break; - - case VolumeDisplay: { - if (recdat.data[0] == 0) { - Settings.display_volume = 0; - Settings.display_sound = false; - } - else if (recdat.data[0] > 100) { - Settings.display_volume = 255; - Settings.display_sound = true; - } - else { - Settings.display_volume = (uint8_t)map(constrain(recdat.data[0], 0, 100), 0, 100, 0, 255); - Settings.display_sound = true; - } - SetTouchScreenConfiguration(); - break; - } - - case DisplayBrightness: { - if (recdat.data[0] < 10) - Settings.screen_brightness = 10; - else if (recdat.data[0] > 100) - Settings.screen_brightness = 100; - else - Settings.screen_brightness = (uint8_t)recdat.data[0]; - SetTouchScreenConfiguration(); - break; - } - - case DisplayStandbyBrightness: { - if (recdat.data[0] < 10) - Settings.standby_screen_brightness = 10; - else if (recdat.data[0] > 100) - Settings.standby_screen_brightness = 100; - else - Settings.standby_screen_brightness = (uint8_t)recdat.data[0]; - SetTouchScreenConfiguration(); - break; - } - - case DisplayStandbySeconds: { - if (recdat.data[0] < 5) - Settings.standby_time_seconds = 5; - else if (recdat.data[0] > 100) - Settings.standby_time_seconds = 100; - else - Settings.standby_time_seconds = (uint8_t)recdat.data[0]; - SetTouchScreenConfiguration(); - break; - } - - case AutolevelVal: { - uint8_t meshPoint = (recdat.addr - AutolevelVal) / 2, - yPnt = floor(meshPoint / GRID_MAX_POINTS_X), - xPnt = meshPoint - (yPnt * GRID_MAX_POINTS_X); - if (yPnt % 2 != 0) xPnt = (GRID_MAX_POINTS_X - 1) - xPnt; // zag row - - float meshVal = float(recdat.data[0] - (recdat.data[0] >= 32768 ? 65536 : 0)) / 1000; - - LIMIT(meshVal, Z_PROBE_LOW_POINT, Z_CLEARANCE_BETWEEN_PROBES); - xy_uint8_t point = { xPnt, yPnt }; - setMeshPoint(point, meshVal); - rtscheck.RTS_SndData(meshVal * 1000, recdat.addr); - break; - } - - default: break; - } - - memset(&recdat, 0, sizeof(recdat)); - recdat.head[0] = FHONE; - recdat.head[1] = FHTWO; - } - - void WriteVariable(uint16_t adr, const void* values, uint8_t valueslen, bool isstr=false, char fillChar=' ') { - const char* myvalues = static_cast(values); - bool strend = !myvalues; - DWIN_SERIAL.write(FHONE); - DWIN_SERIAL.write(FHTWO); - DWIN_SERIAL.write(valueslen + 3); - DWIN_SERIAL.write(0x82); - DWIN_SERIAL.write(adr >> 8); - DWIN_SERIAL.write(adr & 0xFF); - while (valueslen--) { - char x; - if (!strend) x = *myvalues++; - if ((isstr && !x) || strend) { - strend = true; - x = fillChar; - } - DWIN_SERIAL.write(x); - } - } - - void SetTouchScreenConfiguration() { - // Main configuration (System_Config) - LIMIT(Settings.screen_brightness, 10, 100); // Prevent a possible all-dark screen - LIMIT(Settings.standby_time_seconds, 10, 655); // Prevent a possible all-dark screen for standby, yet also don't go higher than the DWIN limitation - - uint8_t cfg_bits = 0x0 - | _BV(7) // 7: Enable Control ... TERN0(DWINOS_4, _BV(7)) - | _BV(5) // 5: load 22 touch file - | _BV(4) // 4: auto-upload should always be enabled - | (Settings.display_sound ? _BV(3) : 0) // 3: audio - | (Settings.display_standby ? _BV(2) : 0) // 2: backlight on standby - | (Settings.screen_rotation == 10 ? _BV(1) : 0) // 1 & 0: Inversion - #if LCD_SCREEN_ROTATE == 90 - | _BV(0) // Portrait Mode or 800x480 display has 0 point rotated 90deg from 480x272 display - #elif LCD_SCREEN_ROTATE - #error "Only 90° rotation is supported for the selected LCD." - #endif - ; - - const uint8_t config_set[] = { 0x5A, 0x00, TERN(DWINOS_4, 0x00, 0xFF), cfg_bits }; - WriteVariable(0x80 /*System_Config*/, config_set, sizeof(config_set)); - - // Standby brightness (LED_Config) - uint16_t dwinStandbyTimeSeconds = 100 * Settings.standby_time_seconds; /* milliseconds, but divided by 10 (not 5 like the docs say) */ - const uint8_t brightness_set[] = { - Settings.screen_brightness /*% active*/, - Settings.standby_screen_brightness /*% standby*/, - static_cast(dwinStandbyTimeSeconds >> 8), - static_cast(dwinStandbyTimeSeconds) - }; - WriteVariable(0x82 /*LED_Config*/, brightness_set, sizeof(brightness_set)); - - if (!Settings.display_sound) { - rtscheck.RTS_SndData(0, VolumeIcon); - rtscheck.RTS_SndData(9, SoundIcon); - } - else { - rtscheck.RTS_SndData((Settings.display_volume + 1) / 32 - 1, VolumeIcon); - rtscheck.RTS_SndData(8, SoundIcon); - } - rtscheck.RTS_SndData(Settings.display_volume, VolumeIcon - 2); - rtscheck.RTS_SndData(Settings.display_volume << 8, SoundAddr + 1); - rtscheck.RTS_SndData(map(constrain(Settings.display_volume, 0, 255), 0, 255, 0, 100), VolumeDisplay); - rtscheck.RTS_SndData(Settings.screen_brightness, DisplayBrightness); - rtscheck.RTS_SndData(Settings.standby_screen_brightness, DisplayStandbyBrightness); - rtscheck.RTS_SndData(Settings.standby_time_seconds, DisplayStandbySeconds); - if (Settings.display_standby) - rtscheck.RTS_SndData(3, DisplayStandbyEnableIndicator); - else - rtscheck.RTS_SndData(2, DisplayStandbyEnableIndicator); - } - - void onPrinterKilled(FSTR_P const error, FSTR_P const component) { - rtscheck.RTS_SndData(ExchangePageBase + 88, ExchangepageAddr); - int16_t j = 0; - char outmsg[40]; - char killMsg[strlen_P(FTOP(error)) + strlen_P(FTOP(component)) + 3]; - sprintf_P(killMsg, PSTR(S_FMT ": " S_FMT), FTOP(error), FTOP(component)); - while (j < 4) { - outmsg[j] = '*'; - j++; - } - while (const char c = killMsg[j - 4]) { - outmsg[j] = c; - j++; - } - while (j < 40) { - outmsg[j] = '*'; - j++; - } - rtscheck.RTS_SndData(outmsg, MacVersion); - delay_ms(10); - } - - void onMediaInserted() { - filenavigator.reset(); - filenavigator.getFiles(0); - fileIndex = 0; - recordcount = 0; - } - - void onMediaError() { - filenavigator.reset(); - for (int16_t i = 0; i < MaxFileNumber; i++) - for (int16_t j = 0; j < 10; j++) rtscheck.RTS_SndData(0, SDFILE_ADDR + i * 10 + j); - - for (int16_t j = 0; j < 10; j++) { - rtscheck.RTS_SndData(0, Printfilename + j); // clean screen. - rtscheck.RTS_SndData(0, Choosefilename + j); // clean filename - } - for (int16_t j = 0; j < 8; j++) rtscheck.RTS_SndData(0, FilenameCount + j); - for (int16_t j = 1; j <= MaxFileNumber; j++) { - rtscheck.RTS_SndData(10, FilenameIcon + j); - rtscheck.RTS_SndData(10, FilenameIcon1 + j); - } - } - - void onMediaRemoved() { - filenavigator.reset(); - for (int16_t i = 0; i < MaxFileNumber; i++) - for (int16_t j = 0; j < 10; j++) rtscheck.RTS_SndData(0, SDFILE_ADDR + i * 10 + j); - - for (int16_t j = 0; j < 10; j++) { - rtscheck.RTS_SndData(0, Printfilename + j); // clean screen. - rtscheck.RTS_SndData(0, Choosefilename + j); // clean filename - } - for (int16_t j = 0; j < 8; j++) rtscheck.RTS_SndData(0, FilenameCount + j); - for (int16_t j = 1; j <= MaxFileNumber; j++) { - rtscheck.RTS_SndData(10, FilenameIcon + j); - rtscheck.RTS_SndData(10, FilenameIcon1 + j); - } - } - - void onPlayTone(const uint16_t frequency, const uint16_t duration) { - rtscheck.RTS_SndData(StartSoundSet, SoundAddr); - } - - void onPrintTimerStarted() { - if (waitway == 7) return; - PrinterStatusKey[1] = 3; - InforShowStatus = true; - delay_ms(1); - rtscheck.RTS_SndData(ExchangePageBase + 53, ExchangepageAddr); - } - - void onPrintTimerPaused() { - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); // Display Pause Screen - onStatusChanged(F("Pausing...")); - } - void onPrintTimerStopped() { - if (waitway == 3) return; - - #if FAN_COUNT > 0 - for (uint8_t i = 0; i < FAN_COUNT; i++) setTargetFan_percent(FanOff, (fan_t)i); - #endif - - PrinterStatusKey[0] = 0; - InforShowStatus = true; - TPShowStatus = false; - rtscheck.RTS_SndData(ExchangePageBase + 51, ExchangepageAddr); - } - - void onFilamentRunout() { - PrinterStatusKey[1] = 4; - TPShowStatus = false; - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); - } - void onFilamentRunout(extruder_t extruder) { - PrinterStatusKey[1] = 4; - TPShowStatus = false; - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); - } - void onUserConfirmRequired(const char *const msg) { - PrinterStatusKey[1] = 4; - TPShowStatus = false; - if (lastPauseMsgState == ExtUI::pauseModeStatus && msg == (const char*)GET_TEXT_F(MSG_FILAMENT_CHANGE_LOAD)) - return; - - switch (ExtUI::pauseModeStatus) { - case PAUSE_MESSAGE_WAITING: { - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Press Yes to Continue")); - break; - } - case PAUSE_MESSAGE_INSERT: { - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Load Filament to Continue")); - break; - } - case PAUSE_MESSAGE_HEAT: { - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Add Filament and Press Yes to Reheat")); - break; - } - - #if DISABLED(ADVANCED_PAUSE_CONTINUOUS_PURGE) - case PAUSE_MESSAGE_PURGE: { - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); - char newMsg[40] = "Yes to "; - strcat_P(newMsg, TERN1(FILAMENT_RUNOUT_SENSOR, !ExtUI::getFilamentRunoutState() && getFilamentRunoutEnabled()) ? PSTR("Continue") : PSTR("Disable ")); - strcat_P(newMsg, PSTR(" No to Purge")); - onStatusChanged(newMsg); - break; - } - #endif - - case PAUSE_MESSAGE_OPTION: { - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); - char newMsg[40] = "Yes to "; - strcat_P(newMsg, TERN1(FILAMENT_RUNOUT_SENSOR, !ExtUI::getFilamentRunoutState() && getFilamentRunoutEnabled()) ? PSTR("Continue") : PSTR("Disable ")); - strcat_P(newMsg, PSTR(" No to Purge")); - onStatusChanged(newMsg); - break; - } - - case PAUSE_MESSAGE_PARKING: { - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Parking...")); - break; - } - case PAUSE_MESSAGE_CHANGING: { - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Beginning Filament Change")); - break; - } - case PAUSE_MESSAGE_UNLOAD: { - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Unloading...")); - break; - } - case PAUSE_MESSAGE_LOAD: { - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Reloading...")); - break; - } - case PAUSE_MESSAGE_RESUME: - #if ENABLED(ADVANCED_PAUSE_CONTINUOUS_PURGE) - case PAUSE_MESSAGE_PURGE: { - rtscheck.RTS_SndData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Press Yes to Stop Purge")); - break; - } - #endif - - case PAUSE_MESSAGE_HEATING: { - rtscheck.RTS_SndData(ExchangePageBase + 68, ExchangepageAddr); - onStatusChanged(F("Reheating")); - break; - } - - case PAUSE_MESSAGE_STATUS: - default: { - setPauseMenuResponse(PAUSE_RESPONSE_RESUME_PRINT); - setUserConfirmed(); - break; - } - } - lastPauseMsgState = ExtUI::pauseModeStatus; - } - - void onStatusChanged(const char *const statMsg) { - for (int16_t j = 0; j < 20; j++) // Clear old message - rtscheck.RTS_SndData(' ', StatusMessageString + j); - rtscheck.RTS_SndData(statMsg, StatusMessageString); - } - void onFactoryReset() { - Settings.settings_size = sizeof(creality_dwin_settings_t); - Settings.settings_version = dwin_settings_version; - Settings.display_standby = true; - Settings.display_sound = true; - Settings.display_volume = 32; - Settings.standby_screen_brightness = 15; - Settings.screen_brightness = 100; - Settings.standby_time_seconds = 60; - Settings.screen_rotation = 0; - onStartup(); - startprogress = 0; - InforShowStatus = true; - } - - void onMeshUpdate(const int8_t xpos, const int8_t ypos, probe_state_t state) {} - - void onMeshUpdate(const int8_t xpos, const int8_t ypos, const_float_t zval) { - if (waitway == 3) - if (isPositionKnown() && (getActualTemp_celsius(BED) >= (getTargetTemp_celsius(BED) - 1))) - rtscheck.RTS_SndData(ExchangePageBase + 64, ExchangepageAddr); - #if HAS_MESH - uint8_t abl_probe_index = 0; - for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) - for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { - const bool zig = outer & 1; // != ((PR_OUTER_END) & 1); - const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; - if (point.x == xpos && outer == ypos) - rtscheck.RTS_SndData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + (abl_probe_index * 2)); - ++abl_probe_index; - } - #endif - } - - void onStoreSettings(char *buff) { - static_assert( - ExtUI::eeprom_data_size >= sizeof(creality_dwin_settings_t), - "Insufficient space in EEPROM for UI parameters" - ); - - // Write to buffer - memcpy(buff, &Settings, sizeof(creality_dwin_settings_t)); - } - - void onLoadSettings(const char *buff) { - static_assert( - ExtUI::eeprom_data_size >= sizeof(creality_dwin_settings_t), - "Insufficient space in EEPROM for UI parameters" - ); - - creality_dwin_settings_t eepromSettings; - memcpy(&eepromSettings, buff, sizeof(creality_dwin_settings_t)); - - // If size is not the same, discard settings - if (eepromSettings.settings_size != sizeof(creality_dwin_settings_t)) { - onFactoryReset(); - return; - } - - if (eepromSettings.settings_version != dwin_settings_version) { - onFactoryReset(); - return; - } - - // Copy into final location - memcpy(&Settings, &eepromSettings, sizeof(creality_dwin_settings_t)); - - SetTouchScreenConfiguration(); - } - - void onSettingsStored(const bool success) { - // This is called after the entire EEPROM has been written, - // whether successful or not. - } - - void onSettingsLoaded(const bool success) { - #if HAS_MESH - if (ExtUI::getMeshValid()) { - uint8_t abl_probe_index = 0; - for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) - for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { - const bool zig = outer & 1; - const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; - rtscheck.RTS_SndData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + (abl_probe_index * 2)); - ++abl_probe_index; - } - - rtscheck.RTS_SndData(3, AutoLevelIcon); // 2=On, 3=Off - setLevelingActive(true); - } - else { - rtscheck.RTS_SndData(2, AutoLevelIcon); /*Off*/ - setLevelingActive(false); - } - #endif - - rtscheck.RTS_SndData(getZOffset_mm() * 100, ProbeOffset_Z); - SetTouchScreenConfiguration(); - } - - #if ENABLED(POWER_LOSS_RECOVERY) - void onSetPowerLoss(const bool onoff) { - // Called when power-loss is enabled/disabled - } - void onPowerLoss() { - // Called when power-loss state is detected - } - void onPowerLossResume() { - startprogress = 254; - InforShowStatus = true; - TPShowStatus = false; - reEntryPrevent = false; - rtscheck.RTS_SndData(ExchangePageBase + 76, ExchangepageAddr); - } - #endif - - #if HAS_PID_HEATING - void onPidTuning(const result_t rst) { - // Called for temperature PID tuning result - rtscheck.RTS_SndData(pid_hotendAutoTemp, HotendPID_AutoTmp); - rtscheck.RTS_SndData(pid_bedAutoTemp, BedPID_AutoTmp); - rtscheck.RTS_SndData(uint16_t(getPID_Kp(E0)) * 10, HotendPID_P); - rtscheck.RTS_SndData(uint16_t(getPID_Ki(E0)) * 10, HotendPID_I); - rtscheck.RTS_SndData(uint16_t(getPID_Kd(E0)) * 10, HotendPID_D); - #if ENABLED(PIDTEMPBED) - rtscheck.RTS_SndData(uint16_t(getBedPID_Kp()) * 10, BedPID_P); - rtscheck.RTS_SndData(uint16_t(getBedPID_Ki()) * 10, BedPID_I); - rtscheck.RTS_SndData(uint16_t(getBedPID_Kd()) * 10, BedPID_D); - #endif - onStatusChanged(F("PID Tune Finished")); - } - #endif - - void onLevelingStart() {} - - void onLevelingDone() { - #if HAS_MESH - if (ExtUI::getMeshValid()) { - uint8_t abl_probe_index = 0; - for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) - for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { - const bool zig = outer & 1; - const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; - rtscheck.RTS_SndData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + abl_probe_index * 2); - ++abl_probe_index; - } - - rtscheck.RTS_SndData(3, AutoLevelIcon); // 2=On, 3=Off - setLevelingActive(true); - } - else { - rtscheck.RTS_SndData(2, AutoLevelIcon); /*Off*/ - setLevelingActive(false); - } - #endif - } - - void onSteppersEnabled() {} - void onPrintDone() {} - void onHomingStart() {} - void onHomingDone() {} - void onSteppersDisabled() {} - void onPostprocessSettings() {} - -} // namespace ExtUI - -#endif // DGUS_LCD_UI_IA_CREALITY diff --git a/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.cpp b/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.cpp new file mode 100644 index 000000000000..51180206db36 --- /dev/null +++ b/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.cpp @@ -0,0 +1,2094 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2022 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +/* **************************************** + * lcd/extui/ia_creality/ia_creality_extui.cpp + * **************************************** + * Extensible_UI implementation for Creality DWIN + * 10SPro, Max, CRX, and others + * Based original Creality release, ported to ExtUI for Marlin 2.0 + * Written by Insanity Automation, sponsored by Tiny Machines 3D + * + * ***************************************/ + +#include "../../../inc/MarlinConfigPre.h" + +#if DGUS_LCD_UI_IA_CREALITY + +#include "ia_creality_extui.h" +#include "FileNavigator.h" + +// Singleton instance +RTS rts; + +// Static data +DB RTS::recdat, RTS::snddat; +uint8_t RTS::databuf[DATA_BUF_SIZE]; +rx_datagram_state_t RTS::rx_datagram_state = DGUS_IDLE; +uint8_t RTS::rx_datagram_len = 0; + +// Local data +uint16_t fileIndex = 0; +uint8_t recordcount = 0; +uint8_t waitway_lock = 0; +const float manual_feedrate_mm_m[] = MANUAL_FEEDRATE; +uint8_t startprogress = 0; + +char waitway = 0; +int16_t recnum = 0; +float ChangeMaterialbuf[2] = { 0 }; + +char NozzleTempStatus[3] = { 0 }; + +char PrinterStatusKey[2] = { 0 }; // PrinterStatusKey[1] 0:keep temperature, 1:heating, 2:cooling, 3:printing + // PrinterStatusKey[0] 0:ready + +uint8_t AxisPagenum = 0; // 0 for 10mm, 1 for 1mm, 2 for 0.1mm +bool InforShowStatus = true; +bool TPShowStatus = false; // true for only opening time and percentage, false for closing time and percentage. +bool AutohomeKey = false; +uint8_t AutoHomeIconNum; +int16_t userConfValidation = 0; + +uint8_t lastPauseMsgState = 0; + +creality_dwin_settings_t Settings; +uint8_t dwin_settings_version = 1; + +bool reEntryPrevent = false; +uint8_t reEntryCount = 0; +uint16_t idleThrottling = 0; + +bool pause_resume_selected = false; + +#if HAS_PID_HEATING + uint16_t pid_hotendAutoTemp = 150; + uint16_t pid_bedAutoTemp = 70; +#endif + +#ifndef IA_CREALITY_BOOT_DELAY + #define IA_CREALITY_BOOT_DELAY 500 +#endif + +void RTS::onStartup() { + DWIN_SERIAL.begin(115200); + recdat.head[0] = snddat.head[0] = FHONE; + recdat.head[1] = snddat.head[1] = FHTWO; + ZERO(databuf); + + delay_ms(IA_CREALITY_BOOT_DELAY); // Delay to allow screen startup + setTouchScreenConfiguration(); + sendData(StartSoundSet, SoundAddr); + delay_ms(400); // Delay to allow screen to configure + + onStatusChanged(MACHINE_NAME " Ready"); + + sendData(100, FeedrateDisplay); + + /***************turn off motor*****************/ + sendData(11, FilenameIcon); + + /***************transmit temperature to screen*****************/ + sendData(0, NozzlePreheat); + sendData(0, BedPreheat); + sendData(getActualTemp_celsius(H0), NozzleTemp); + sendData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); + sendData(getActualTemp_celsius(BED), Bedtemp); + /***************transmit Fan speed to screen*****************/ + sendData(getActualFan_percent((fan_t)getActiveTool()), FanKeyIcon); + + /***************transmit Printer information to screen*****************/ + for (int16_t j = 0; j < 20; j++) // clean filename + sendData(0, MacVersion + j); + char sizebuf[20] = {0}; + sprintf(sizebuf, "%d X %d X %d", Y_BED_SIZE, X_BED_SIZE, Z_MAX_POS); + sendData(MACHINE_NAME, MacVersion); + sendData(SHORT_BUILD_VERSION, SoftVersion); + sendData(sizebuf, PrinterSize); + sendData(WEBSITE_URL, CorpWebsite); + + /**************************some info init*******************************/ + sendData(0, PrintscheduleIcon); + sendData(0, PrintscheduleIcon + 1); + + /************************clean screen*******************************/ + for (int16_t i = 0; i < MaxFileNumber; i++) + for (int16_t j = 0; j < 10; j++) sendData(0, SDFILE_ADDR + i * 10 + j); + + for (int16_t j = 0; j < 10; j++) { + sendData(0, Printfilename + j); // clean screen. + sendData(0, Choosefilename + j); // clean filename + } + for (int16_t j = 0; j < 8; j++) sendData(0, FilenameCount + j); + for (int16_t j = 1; j <= MaxFileNumber; j++) { + sendData(10, FilenameIcon + j); + sendData(10, FilenameIcon1 + j); + } +} + +void RTS::onIdle() { + while (rts.receiveData() > 0 && (rts.recdat.data[0] != 0 || rts.recdat.addr != 0)) + rts.handleData(); + + if (reEntryPrevent && reEntryCount < 120) { reEntryCount++; return; } + reEntryCount = 0; + + if (idleThrottling++ < 750) return; + + // Always send temperature data + rts.sendData(getActualTemp_celsius(getActiveTool()), NozzleTemp); + rts.sendData(getActualTemp_celsius(BED), Bedtemp); + rts.sendData(getTargetTemp_celsius(getActiveTool()), NozzlePreheat); + rts.sendData(getTargetTemp_celsius(BED), BedPreheat); + rts.sendData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); + rts.sendData(TERN0(HAS_MULTI_HOTEND, getTargetTemp_celsius(H1)), e2Preheat); + TERN_(HAS_MULTI_HOTEND, rts.sendData(uint8_t(getActiveTool() + 1), ActiveToolVP)); + + if (awaitingUserConfirm() && (lastPauseMsgState != ExtUI::pauseModeStatus || userConfValidation > 99)) { + switch (ExtUI::pauseModeStatus) { + case PAUSE_MESSAGE_PARKING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_PAUSE_PRINT_PARKING)); break; + case PAUSE_MESSAGE_CHANGING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_INIT)); break; + case PAUSE_MESSAGE_UNLOAD: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_UNLOAD)); break; + case PAUSE_MESSAGE_WAITING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_ADVANCED_PAUSE_WAITING)); break; + case PAUSE_MESSAGE_INSERT: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_INSERT)); break; + case PAUSE_MESSAGE_LOAD: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_LOAD)); break; + case PAUSE_MESSAGE_PURGE: ExtUI::onUserConfirmRequired(GET_TEXT_F(TERN(ADVANCED_PAUSE_CONTINUOUS_PURGE, MSG_FILAMENT_CHANGE_CONT_PURGE, MSG_FILAMENT_CHANGE_PURGE))); break; + case PAUSE_MESSAGE_RESUME: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_RESUME)); break; + case PAUSE_MESSAGE_HEAT: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_HEAT)); break; + case PAUSE_MESSAGE_HEATING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_HEATING)); break; + case PAUSE_MESSAGE_OPTION: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_OPTION_HEADER)); break; + case PAUSE_MESSAGE_STATUS: break; + default: onUserConfirmRequired(PSTR("Confirm Continue")); break; + } + userConfValidation = 0; + } + else if (pause_resume_selected && !awaitingUserConfirm()) { + rts.sendData(ExchangePageBase + 53, ExchangepageAddr); + pause_resume_selected = false; + userConfValidation = 0; + } + else if (awaitingUserConfirm()) { + if (pause_resume_selected) { + pause_resume_selected = false; + userConfValidation = 100; + } + else + userConfValidation++; + } + + reEntryPrevent = true; + idleThrottling = 0; + if (waitway && !commandsInQueue()) + waitway_lock++; + else + waitway_lock = 0; + + if (waitway_lock > 100) { + waitway_lock = 0; + waitway = 0; // clear waitway if nothing is going on + } + + switch (waitway) { + case 1: + if (isPositionKnown()) { + InforShowStatus = true; + rts.sendData(ExchangePageBase + 54, ExchangepageAddr); + waitway = 0; + } + break; + + case 2: + if (isPositionKnown() && !commandsInQueue()) waitway = 0; + break; + + case 3: + //if(isPositionKnown() && (getActualTemp_celsius(BED) >= (getTargetTemp_celsius(BED)-1))) { + rts.sendData(ExchangePageBase + 64, ExchangepageAddr); + waitway = 7; + //return; + //} + break; + + case 4: + if (AutohomeKey && isPositionKnown() && !commandsInQueue()) { // Manual Move Home Done + //rts.sendData(ExchangePageBase + 71 + AxisPagenum, ExchangepageAddr); + AutohomeKey = false; + waitway = 0; + } + break; + case 5: + if (isPositionKnown() && !commandsInQueue()) { + InforShowStatus = true; + waitway = 0; + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); // exchange to 78 page + } + break; + case 6: + if (!commandsInQueue()) { + setAxisPosition_mm(BED_TRAMMING_HEIGHT, axis_t(Z)); + waitway = 0; + } + break; + case 7: + if (!commandsInQueue()) waitway = 0; + break; + } + + TERN_(HAS_MESH, rts.sendData(getLevelingActive() ? 3 : 2, AutoLevelIcon)); + TERN_(HAS_FILAMENT_SENSOR, rts.sendData(getFilamentRunoutEnabled() ? 3 : 2, RunoutToggle)); + TERN_(CASE_LIGHT_ENABLE, rts.sendData(getCaseLightState() ? 3 : 2, LedToggle)); + TERN_(POWER_LOSS_RECOVERY, rts.sendData(getPowerLossRecoveryEnabled() ? 3 : 2, PowerLossToggle)); + + if (startprogress == 0) { + startprogress += 25; + delay_ms(3000); // Delay to show bootscreen + } + else if (startprogress < 250) { + if (isMediaInserted()) // Re init media as it happens too early on STM32 boards often + onMediaInserted(); + else + injectCommands(F("M22\nM21")); + startprogress = 254; + InforShowStatus = true; + TPShowStatus = false; + rts.sendData(ExchangePageBase + 45, ExchangepageAddr); + reEntryPrevent = false; + return; + } + if (startprogress <= 100) + rts.sendData(startprogress, StartIcon); + else + rts.sendData(startprogress - 100, StartIcon + 1); + + //rts.sendData((startprogress++) % 5, ExchFlmntIcon); + + if (isPrinting()) { + rts.sendData(getActualFan_percent((fan_t)getActiveTool()), FanKeyIcon); + rts.sendData(getProgress_seconds_elapsed() / 3600, Timehour); + rts.sendData((getProgress_seconds_elapsed() % 3600) / 60, Timemin); + if (getProgress_percent() > 0) { + const uint16_t perc = getProgress_percent() + 1; + if (perc <= 50) { + rts.sendData(uint16_t(perc) * 2, PrintscheduleIcon); + rts.sendData(0, PrintscheduleIcon + 1); + } + else { + rts.sendData(100, PrintscheduleIcon); + rts.sendData(uint16_t(perc) * 2 - 100, PrintscheduleIcon + 1); + } + } + else { + rts.sendData(0, PrintscheduleIcon); + rts.sendData(0, PrintscheduleIcon + 1); + } + rts.sendData(uint16_t(getProgress_percent()), Percentage); + } + else { // Not printing settings + rts.sendData(map(constrain(Settings.display_volume, 0, 255), 0, 255, 0, 100), VolumeDisplay); + rts.sendData(Settings.screen_brightness, DisplayBrightness); + rts.sendData(Settings.standby_screen_brightness, DisplayStandbyBrightness); + rts.sendData(Settings.standby_time_seconds, DisplayStandbySeconds); + if (Settings.display_standby) + rts.sendData(3, DisplayStandbyEnableIndicator); + else + rts.sendData(2, DisplayStandbyEnableIndicator); + + rts.sendData(getAxisSteps_per_mm(X) * 10, StepMM_X); + rts.sendData(getAxisSteps_per_mm(Y) * 10, StepMM_Y); + rts.sendData(getAxisSteps_per_mm(Z) * 10, StepMM_Z); + rts.sendData(getAxisSteps_per_mm(E0) * 10, StepMM_E); + + rts.sendData(getAxisMaxAcceleration_mm_s2(X) / 100, Accel_X); + rts.sendData(getAxisMaxAcceleration_mm_s2(Y) / 100, Accel_Y); + rts.sendData(getAxisMaxAcceleration_mm_s2(Z) / 10, Accel_Z); + rts.sendData(getAxisMaxAcceleration_mm_s2(E0), Accel_E); + + rts.sendData(getAxisMaxFeedrate_mm_s(X), Feed_X); + rts.sendData(getAxisMaxFeedrate_mm_s(Y), Feed_Y); + rts.sendData(getAxisMaxFeedrate_mm_s(Z), Feed_Z); + rts.sendData(getAxisMaxFeedrate_mm_s(E0), Feed_E); + + rts.sendData(getAxisMaxJerk_mm_s(X) * 100, Jerk_X); + rts.sendData(getAxisMaxJerk_mm_s(Y) * 100, Jerk_Y); + rts.sendData(getAxisMaxJerk_mm_s(Z) * 100, Jerk_Z); + rts.sendData(getAxisMaxJerk_mm_s(E0) * 100, Jerk_E); + + #if HAS_HOTEND_OFFSET + rts.sendData(getNozzleOffset_mm(X, E1) * 10, T2Offset_X); + rts.sendData(getNozzleOffset_mm(Y, E1) * 10, T2Offset_Y); + rts.sendData(getNozzleOffset_mm(Z, E1) * 10, T2Offset_Z); + rts.sendData(getAxisSteps_per_mm(E1) * 10, T2StepMM_E); + #endif + + #if HAS_BED_PROBE + rts.sendData(getProbeOffset_mm(X) * 100, ProbeOffset_X); + rts.sendData(getProbeOffset_mm(Y) * 100, ProbeOffset_Y); + #endif + + #if HAS_PID_HEATING + rts.sendData(pid_hotendAutoTemp, HotendPID_AutoTmp); + rts.sendData(pid_bedAutoTemp, BedPID_AutoTmp); + rts.sendData(getPID_Kp(E0) * 10, HotendPID_P); + rts.sendData(getPID_Ki(E0) * 10, HotendPID_I); + rts.sendData(getPID_Kd(E0) * 10, HotendPID_D); + #if ENABLED(PIDTEMPBED) + rts.sendData(getBedPID_Kp() * 10, BedPID_P); + rts.sendData(getBedPID_Ki() * 10, BedPID_I); + rts.sendData(getBedPID_Kd() * 10, BedPID_D); + #endif + #endif + } + + rts.sendData(getZOffset_mm() * 100, ProbeOffset_Z); + rts.sendData(uint16_t(getFlow_percent(E0)), Flowrate); + + if (NozzleTempStatus[0] || NozzleTempStatus[2]) { // statuse of loadfilament and unloadfinement when temperature is less than + uint16_t IconTemp = getActualTemp_celsius(getActiveTool()) * 100 / getTargetTemp_celsius(getActiveTool()); + NOMORE(IconTemp, 100U); + rts.sendData(IconTemp, HeatPercentIcon); + if (getActualTemp_celsius(getActiveTool()) > EXTRUDE_MINTEMP && NozzleTempStatus[0] != 0) { + NozzleTempStatus[0] = 0; + rts.sendData(10 * ChangeMaterialbuf[0], FilamentUnit1); + rts.sendData(10 * ChangeMaterialbuf[1], FilamentUnit2); + rts.sendData(ExchangePageBase + 65, ExchangepageAddr); + } + else if (getActualTemp_celsius(getActiveTool()) >= getTargetTemp_celsius(getActiveTool()) && NozzleTempStatus[2]) { + NozzleTempStatus[2] = 0; + TPShowStatus = true; + rts.sendData(4, ExchFlmntIcon); + rts.sendData(ExchangePageBase + 83, ExchangepageAddr); + } + else if (NozzleTempStatus[2]) { + //rts.sendData((startprogress++) % 5, ExchFlmntIcon); + } + } + + if (AutohomeKey) { + rts.sendData(AutoHomeIconNum, AutoZeroIcon); + if (++AutoHomeIconNum > 9) AutoHomeIconNum = 0; + } + + if (isMediaInserted()) { + const uint16_t currPage = fileIndex == 0 ? 1 : CEIL(float(fileIndex) / float(DISPLAY_FILES)) + 1, + maxPageAdd = filenavigator.folderdepth ? 1 : 0, + maxPages = CEIL(float(filenavigator.maxFiles() + maxPageAdd) / float(DISPLAY_FILES) ); + + rts.sendData(currPage, FilesCurentPage); + rts.sendData(maxPages, FilesMaxPage); + } + else { + rts.sendData(0, FilesCurentPage); + rts.sendData(0, FilesMaxPage); + } + + if (rts.recdat.addr != DisplayZaxis && rts.recdat.addr != DisplayYaxis && rts.recdat.addr != DisplayZaxis) { + rts.sendData(10 * getAxisPosition_mm(axis_t(X)), DisplayXaxis); + rts.sendData(10 * getAxisPosition_mm(axis_t(Y)), DisplayYaxis); + rts.sendData(10 * getAxisPosition_mm(axis_t(Z)), DisplayZaxis); + } + reEntryPrevent = false; +} + +RTS::RTS() { + recdat.head[0] = snddat.head[0] = FHONE; + recdat.head[1] = snddat.head[1] = FHTWO; + ZERO(databuf); +} + +int16_t RTS::receiveData() { + uint8_t receivedbyte; + while (DWIN_SERIAL.available()) + switch (rx_datagram_state) { + + case DGUS_IDLE: // Waiting for the first header byte + receivedbyte = DWIN_SERIAL.read(); + if (FHONE == receivedbyte) rx_datagram_state = DGUS_HEADER1_SEEN; + break; + + case DGUS_HEADER1_SEEN: // Waiting for the second header byte + receivedbyte = DWIN_SERIAL.read(); + rx_datagram_state = (FHTWO == receivedbyte) ? DGUS_HEADER2_SEEN : DGUS_IDLE; + break; + + case DGUS_HEADER2_SEEN: // Waiting for the length byte + rx_datagram_len = DWIN_SERIAL.read(); + //DEBUGLCDCOMM_ECHOPGM(" (", rx_datagram_len, ") "); + + // Telegram min len is 3 (command and one word of payload) + rx_datagram_state = WITHIN(rx_datagram_len, 3, DGUS_RX_BUFFER_SIZE) ? DGUS_WAIT_TELEGRAM : DGUS_IDLE; + break; + + case DGUS_WAIT_TELEGRAM: // wait for complete datagram to arrive. + if (DWIN_SERIAL.available() < rx_datagram_len) return -1; + + uint8_t command = DWIN_SERIAL.read(); + + //DEBUGLCDCOMM_ECHOPGM("# ", command); + + uint8_t readlen = rx_datagram_len - 1; // command is part of len. + uint8_t tmp[rx_datagram_len - 1]; + uint8_t *ptmp = tmp; + while (readlen--) { + receivedbyte = DWIN_SERIAL.read(); + //DEBUGLCDCOMM_ECHOPGM(" ", receivedbyte); + *ptmp++ = receivedbyte; + } + //DEBUGLCDCOMM_ECHOPGM(" # "); + // mostly we'll get this: 5A A5 03 82 4F 4B -- ACK on 0x82, so discard it. + if (command == VarAddr_W && 'O' == tmp[0] && 'K' == tmp[1]) { + rx_datagram_state = DGUS_IDLE; + break; + } + + /* AutoUpload, (and answer to) Command 0x83 : + | tmp[0 1 2 3 4 ... ] + | Example 5A A5 06 83 20 01 01 78 01 …… + | / / | | \ / | \ \ + | Header | | | | \_____\_ DATA (Words!) + | DatagramLen / VPAdr | + | Command DataLen (in Words) */ + if (command == VarAddr_R) { + const uint16_t vp = tmp[0] << 8 | tmp[1]; + + const uint8_t dlen = tmp[2] << 1; // Convert to Bytes. (Display works with words) + recdat.addr = vp; + recdat.len = tmp[2]; + for (uint16_t i = 0; i < dlen; i += 2) { + recdat.data[i / 2] = tmp[3 + i]; + recdat.data[i / 2] = (recdat.data[i / 2] << 8 ) | tmp[4 + i]; + } + + rx_datagram_state = DGUS_IDLE; + return 2; + break; + } + + // discard anything else + rx_datagram_state = DGUS_IDLE; + } + return -1; +} + +void RTS::sendData() { + if (snddat.head[0] == FHONE && snddat.head[1] == FHTWO && snddat.len >= 3) { + databuf[0] = snddat.head[0]; + databuf[1] = snddat.head[1]; + databuf[2] = snddat.len; + databuf[3] = snddat.command; + if (snddat.command == 0x80) { // to write data to the register + databuf[4] = snddat.addr; + for (int16_t i = 0; i < (snddat.len - 2); i++) databuf[5 + i] = snddat.data[i]; + } + else if (snddat.len == 3 && (snddat.command == 0x81)) { // to read data from the register + databuf[4] = snddat.addr; + databuf[5] = snddat.bytelen; + } + else if (snddat.command == 0x82) { // to write data to the variate + databuf[4] = snddat.addr >> 8; + databuf[5] = snddat.addr & 0xFF; + for (int16_t i = 0; i < (snddat.len - 3); i += 2) { + databuf[6 + i] = snddat.data[i / 2] >> 8; + databuf[7 + i] = snddat.data[i / 2] & 0xFF; + } + } + else if (snddat.len == 4 && (snddat.command == 0x83)) { // to read data from the variate + databuf[4] = snddat.addr >> 8; + databuf[5] = snddat.addr & 0xFF; + databuf[6] = snddat.bytelen; + } + for (int16_t i = 0; i < (snddat.len + 3); i++) { + DWIN_SERIAL.write(databuf[i]); + delay_us(1); + } + + memset(&snddat, 0, sizeof(snddat)); + ZERO(databuf); + snddat.head[0] = FHONE; + snddat.head[1] = FHTWO; + } +} + +void RTS::sendData(const String &s, uint32_t addr, uint8_t cmd/*=VarAddr_W*/) { + if (s.length() < 1) return; + sendData(s.c_str(), addr, cmd); +} + +void RTS::sendData(const char *str, uint32_t addr, uint8_t cmd/*=VarAddr_W*/) { + int16_t len = strlen(str); + constexpr int16_t maxlen = DATA_BUF_SIZE - 6; + if (len > 0) { + if (len > maxlen) len = maxlen; + databuf[0] = FHONE; + databuf[1] = FHTWO; + databuf[2] = 3 + len; + databuf[3] = cmd; + databuf[4] = addr >> 8; + databuf[5] = addr & 0x00FF; + for (int16_t i = 0; i < len; i++) databuf[6 + i] = str[i]; + + for (int16_t i = 0; i < (len + 6); i++) { + DWIN_SERIAL.write(databuf[i]); + delay_us(1); + } + ZERO(databuf); + } +} + +void RTS::sendData(const char c, const uint32_t addr, const uint8_t cmd/*=VarAddr_W*/) { + snddat.command = cmd; + snddat.addr = addr; + snddat.data[0] = uint32_t(uint16_t(c) << 8); + snddat.len = 5; + sendData(); +} + +void RTS::sendData(const_float_t f, const uint32_t addr, const uint8_t cmd/*=VarAddr_W*/) { + int16_t n = f; + if (cmd == VarAddr_W) { + snddat.data[0] = n; + snddat.len = 5; + } + else if (cmd == RegAddr_W) { + snddat.data[0] = n; + snddat.len = 3; + } + else if (cmd == VarAddr_R) { + snddat.bytelen = n; + snddat.len = 4; + } + snddat.command = cmd; + snddat.addr = addr; + sendData(); +} + +void RTS::sendData(const int n, const uint32_t addr, const uint8_t cmd/*=VarAddr_W*/) { + if (cmd == VarAddr_W) { + if ((unsigned int)n > 0xFFFF) { + snddat.data[0] = n >> 16; + snddat.data[1] = n & 0xFFFF; + snddat.len = 7; + } + else { + snddat.data[0] = n; + snddat.len = 5; + } + } + else if (cmd == RegAddr_W) { + snddat.data[0] = n; + snddat.len = 3; + } + else if (cmd == VarAddr_R) { + snddat.bytelen = n; + snddat.len = 4; + } + snddat.command = cmd; + snddat.addr = addr; + sendData(); +} + +void RTS::sendData(const unsigned long n, uint32_t addr, uint8_t cmd/*=VarAddr_W*/) { + if (cmd == VarAddr_W) { + if (n > 0xFFFF) { + snddat.data[0] = n >> 16; + snddat.data[1] = n & 0xFFFF; + //snddat.data[0] = n >> 24; + //snddat.data[1] = n >> 16; + //snddat.data[2] = n >> 8; + //snddat.data[3] = n; + snddat.len = 7; + } + else { + snddat.data[0] = n; + snddat.len = 5; + } + } + else if (cmd == VarAddr_R) { + snddat.bytelen = n; + snddat.len = 4; + } + snddat.command = cmd; + snddat.addr = addr; + sendData(); +} + +void RTS::handleData() { + int16_t Checkkey = -1; + if (waitway > 0) { // for waiting + memset(&recdat, 0, sizeof(recdat)); + recdat.head[0] = FHONE; + recdat.head[1] = FHTWO; + return; + } + for (int16_t i = 0; Addrbuf[i] != 0; i++) + if (recdat.addr == Addrbuf[i]) { + if (Addrbuf[i] == NzBdSet || Addrbuf[i] == NozzlePreheat || Addrbuf[i] == BedPreheat || Addrbuf[i] == Flowrate) + Checkkey = ManualSetTemp; + else if (WITHIN(Addrbuf[i], Stopprint, Resumeprint)) + Checkkey = PrintChoice; + else if (WITHIN(Addrbuf[i], AutoZero, DisplayZaxis)) + Checkkey = XYZEaxis; + else if (WITHIN(Addrbuf[i], FilamentUnit1, FilamentUnit2)) + Checkkey = Filament; + else + Checkkey = i; + break; + } + + switch (recdat.addr) { + case Flowrate: + case StepMM_X ... StepMM_E: + case ProbeOffset_X ... ProbeOffset_Y: + case HotendPID_AutoTmp ... BedPID_AutoTmp: + case HotendPID_P ... HotendPID_D: + case BedPID_P ... BedPID_D: + case T2Offset_X ... T2StepMM_E: + case Accel_X ... Accel_E: + case Feed_X ... Feed_E: + case Jerk_X ... Jerk_E: + case RunoutToggle: + case PowerLossToggle: + case FanKeyIcon: + case LedToggle: + case e2Preheat: Checkkey = ManualSetTemp; break; + case ProbeOffset_Z: Checkkey = Zoffset_Value; break; + case VolumeDisplay: Checkkey = VolumeDisplay; break; + case DisplayBrightness: Checkkey = DisplayBrightness; break; + case DisplayStandbyBrightness: Checkkey = DisplayStandbyBrightness; break; + case DisplayStandbySeconds: Checkkey = DisplayStandbySeconds; break; + default: + if (WITHIN(recdat.addr, AutolevelVal, 4400)) // (int16_t(AutolevelVal) + GRID_MAX_POINTS * 2) = 4400 with 5x5 mesh + Checkkey = AutolevelVal; + else if (WITHIN(recdat.addr, SDFILE_ADDR, SDFILE_ADDR + 10 * (FileNum + 1))) + Checkkey = Filename; + break; + } + + if (Checkkey < 0) { + memset(&recdat, 0, sizeof(recdat)); + recdat.head[0] = FHONE; + recdat.head[1] = FHTWO; + return; + } + + constexpr float lfrb[4] = BED_TRAMMING_INSET_LFRB; + + switch (Checkkey) { + case Printfile: + if (recdat.data[0] == 1) { // card + InforShowStatus = false; + filenavigator.getFiles(0); + fileIndex = 0; + recordcount = 0; + sendData(ExchangePageBase + 46, ExchangepageAddr); + } + else if (recdat.data[0] == 2) { // return after printing result. + InforShowStatus = true; + TPShowStatus = false; + stopPrint(); + injectCommands(F("M84")); + sendData(11, FilenameIcon); + sendData(0, PrintscheduleIcon); + sendData(0, PrintscheduleIcon + 1); + sendData(0, Percentage); + delay_ms(2); + sendData(0, Timehour); + sendData(0, Timemin); + + sendData(ExchangePageBase + 45, ExchangepageAddr); // exchange to 45 page + } + else if (recdat.data[0] == 3) { // Temperature control + InforShowStatus = true; + TPShowStatus = false; + if (getTargetFan_percent((fan_t)getActiveTool()) == 0) + sendData(ExchangePageBase + 58, ExchangepageAddr); // exchange to 58 page, the fans off + else + sendData(ExchangePageBase + 57, ExchangepageAddr); // exchange to 57 page, the fans on + } + else if (recdat.data[0] == 4) { // Settings + InforShowStatus = false; + } + break; + + case Adjust: + if (recdat.data[0] == 1) { + InforShowStatus = false; + } + else if (recdat.data[0] == 2) { + InforShowStatus = true; + if (PrinterStatusKey[1] == 3) // during heating + sendData(ExchangePageBase + 53, ExchangepageAddr); + else if (PrinterStatusKey[1] == 4) + sendData(ExchangePageBase + 54, ExchangepageAddr); + else + sendData(ExchangePageBase + 53, ExchangepageAddr); + } + else if (recdat.data[0] == 3) + setTargetFan_percent(getTargetFan_percent((fan_t)getActiveTool()) != 0 ? 100 : 0, FAN0); + + break; + + case Feedrate: + setFeedrate_percent(recdat.data[0]); + break; + + case PrintChoice: + if (recdat.addr == Stopprint) { + if (recdat.data[0] == 240) { // no + sendData(ExchangePageBase + 53, ExchangepageAddr); + } + else { + sendData(ExchangePageBase + 45, ExchangepageAddr); + sendData(0, Timehour); + sendData(0, Timemin); + stopPrint(); + } + } + else if (recdat.addr == Pauseprint) { + if (recdat.data[0] != 0xF1) + break; + + sendData(ExchangePageBase + 54, ExchangepageAddr); + pausePrint(); + } + else if (recdat.addr == Resumeprint && recdat.data[0] == 1) { + resumePrint(); + + PrinterStatusKey[1] = 0; + InforShowStatus = true; + + sendData(ExchangePageBase + 53, ExchangepageAddr); + } + if (recdat.addr == Resumeprint && recdat.data[0] == 2) { // warming + resumePrint(); + NozzleTempStatus[2] = 1; + PrinterStatusKey[1] = 0; + InforShowStatus = true; + sendData(ExchangePageBase + 82, ExchangepageAddr); + } + break; + + case Zoffset: + float tmp_zprobe_offset; + if (recdat.data[0] >= 32768) + tmp_zprobe_offset = (float(recdat.data[0]) - 65536) / 100; + else + tmp_zprobe_offset = float(recdat.data[0]) / 100; + if (WITHIN((tmp_zprobe_offset), Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { + int16_t tmpSteps = mmToWholeSteps(getZOffset_mm() - tmp_zprobe_offset, axis_t(Z)); + if (tmpSteps == 0) tmpSteps = getZOffset_mm() < tmp_zprobe_offset ? 1 : -1; + smartAdjustAxis_steps(-tmpSteps, axis_t(Z), false); + char zOffs[20], tmp1[11]; + sprintf_P(zOffs, PSTR("Z Offset : %s"), dtostrf(getZOffset_mm(), 1, 3, tmp1)); + onStatusChanged(zOffs); + } + else { + onStatusChanged(F("Requested Offset Beyond Limits")); + } + + sendData(getZOffset_mm() * 100, ProbeOffset_Z); + break; + + case TempControl: + if (recdat.data[0] == 0) { + InforShowStatus = true; + TPShowStatus = false; + } + else if (recdat.data[0] == 1) { + if (getTargetFan_percent((fan_t)getActiveTool()) == 0) + sendData(ExchangePageBase + 60, ExchangepageAddr); // exchange to 60 page, the fans off + else + sendData(ExchangePageBase + 59, ExchangepageAddr); // exchange to 59 page, the fans on + } + else if (recdat.data[0] == 2) { + InforShowStatus = true; + } + else if (recdat.data[0] == 3) { + if (getTargetFan_percent((fan_t)getActiveTool()) == 0) { // turn on the fan + setTargetFan_percent(100, FAN0); + sendData(ExchangePageBase + 57, ExchangepageAddr); // exchange to 57 page, the fans on + } + else { // turn off the fan + setTargetFan_percent(0, FAN0); + sendData(ExchangePageBase + 58, ExchangepageAddr); // exchange to 58 page, the fans on + } + } + else if (recdat.data[0] == 5) { // PLA mode + setTargetTemp_celsius(PREHEAT_1_TEMP_HOTEND, getActiveTool()); + setTargetTemp_celsius(PREHEAT_1_TEMP_BED, BED); + sendData(PREHEAT_1_TEMP_HOTEND, NozzlePreheat); + sendData(PREHEAT_1_TEMP_BED, BedPreheat); + } + else if (recdat.data[0] == 6) { // ABS mode + setTargetTemp_celsius(PREHEAT_2_TEMP_HOTEND, getActiveTool()); + setTargetTemp_celsius(PREHEAT_2_TEMP_BED, BED); + sendData(PREHEAT_2_TEMP_HOTEND, NozzlePreheat); + sendData(PREHEAT_2_TEMP_BED, BedPreheat); + } + else if (recdat.data[0] == 0xF1) { + //InforShowStatus = true; + #if FAN_COUNT > 0 + for (uint8_t i = 0; i < FAN_COUNT; i++) setTargetFan_percent(0, (fan_t)i); + #endif + setTargetTemp_celsius(0.0, H0); + TERN_(HAS_MULTI_HOTEND, setTargetTemp_celsius(0.0, H1)); + setTargetTemp_celsius(0.0, BED); + sendData(0, NozzlePreheat); delay_ms(1); + sendData(0, BedPreheat); delay_ms(1); + sendData(ExchangePageBase + 57, ExchangepageAddr); + PrinterStatusKey[1] = 2; + } + break; + + case ManualSetTemp: + if (recdat.addr == NzBdSet) { + if (recdat.data[0] == 0) { + if (getTargetFan_percent((fan_t)getActiveTool()) == 0) + sendData(ExchangePageBase + 58, ExchangepageAddr); // exchange to 58 page, the fans off + else + sendData(ExchangePageBase + 57, ExchangepageAddr); // exchange to 57 page, the fans on + } + else if (recdat.data[0] == 1) { + setTargetTemp_celsius(0.0, getActiveTool()); + sendData(0, NozzlePreheat); + } + else if (recdat.data[0] == 2) { + setTargetTemp_celsius(0.0, BED); + sendData(0, BedPreheat); + } + } + else if (recdat.addr == NozzlePreheat) { + setTargetTemp_celsius(float(recdat.data[0]), H0); + } + #if HAS_MULTI_HOTEND + else if (recdat.addr == e2Preheat) { + setTargetTemp_celsius(float(recdat.data[0]), H1); + } + #endif + else if (recdat.addr == BedPreheat) { + setTargetTemp_celsius(float(recdat.data[0]), BED); + } + else if (recdat.addr == Flowrate) { + setFlow_percent(int16_t(recdat.data[0]), getActiveTool()); + } + + #if HAS_PID_HEATING + else if (recdat.addr == HotendPID_AutoTmp) { + pid_hotendAutoTemp = uint16_t(recdat.data[0]); + } + else if (recdat.addr == BedPID_AutoTmp) { + pid_bedAutoTemp = uint16_t(recdat.data[0]); + } + #endif + + else if (recdat.addr == Accel_X) { + setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]) * 100, X); + } + else if (recdat.addr == Accel_Y) { + setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]) * 100, Y); + } + else if (recdat.addr == Accel_Z) { + setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]) * 10, Z); + } + else if (recdat.addr == Accel_E) { + setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]), E0); + setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]), E1); + } + + else if (recdat.addr == Feed_X) { + setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), X); + } + else if (recdat.addr == Feed_Y) { + setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), Y); + } + else if (recdat.addr == Feed_Z) { + setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), Z); + } + else if (recdat.addr == Feed_E) { + setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), E0); + setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), E1); + } + else if (recdat.addr == FanKeyIcon) { + setTargetFan_percent(uint16_t(recdat.data[0]), (fan_t)getActiveTool()); + } + else { + float tmp_float_handling; + if (recdat.data[0] >= 32768) + tmp_float_handling = (float(recdat.data[0]) - 65536) / 100; + else + tmp_float_handling = float(recdat.data[0]) / 100; + if (recdat.addr == StepMM_X) { + setAxisSteps_per_mm(tmp_float_handling * 10, X); + } + else if (recdat.addr == StepMM_Y) { + setAxisSteps_per_mm(tmp_float_handling * 10, Y); + } + else if (recdat.addr == StepMM_Z) { + setAxisSteps_per_mm(tmp_float_handling * 10, Z); + } + else if (recdat.addr == StepMM_E) { + setAxisSteps_per_mm(tmp_float_handling * 10, E0); + #if DISABLED(DUAL_X_CARRIAGE) + setAxisSteps_per_mm(tmp_float_handling * 10, E1); + #endif + } + #if ENABLED(DUAL_X_CARRIAGE) + else if (recdat.addr == T2StepMM_E) { + setAxisSteps_per_mm(tmp_float_handling * 10, E1); + } + else if (recdat.addr == T2Offset_X) { + setNozzleOffset_mm(tmp_float_handling * 10, X, E1); + } + else if (recdat.addr == T2Offset_Y) { + setNozzleOffset_mm(tmp_float_handling * 10, Y, E1); + } + else if (recdat.addr == T2Offset_Z) { + setNozzleOffset_mm(tmp_float_handling * 10, Z, E1); + } + #endif + #if HAS_BED_PROBE + else if (recdat.addr == ProbeOffset_X) { + setProbeOffset_mm(tmp_float_handling, X); + } + else if (recdat.addr == ProbeOffset_Y) { + setProbeOffset_mm(tmp_float_handling, Y); + } + else if (recdat.addr == ProbeOffset_Z) { + setProbeOffset_mm(tmp_float_handling, Z); + } + #endif + + #if ENABLED(CLASSIC_JERK) + else if (recdat.addr == Jerk_X) { + setAxisMaxJerk_mm_s(tmp_float_handling, X); + } + else if (recdat.addr == Jerk_Y) { + setAxisMaxJerk_mm_s(tmp_float_handling, Y); + } + else if (recdat.addr == Jerk_Z) { + setAxisMaxJerk_mm_s(tmp_float_handling, Z); + } + else if (recdat.addr == Jerk_E) { + setAxisMaxJerk_mm_s(tmp_float_handling, E0); + setAxisMaxJerk_mm_s(tmp_float_handling, E1); + } + #endif + + #if HAS_FILAMENT_SENSOR + else if (recdat.addr == RunoutToggle) { + setFilamentRunoutEnabled(!getFilamentRunoutEnabled()); + } + #endif + + #if ENABLED(POWER_LOSS_RECOVERY) + else if (recdat.addr == PowerLossToggle) { + setPowerLossRecoveryEnabled(!getPowerLossRecoveryEnabled()); + } + #endif + + #if ENABLED(CASE_LIGHT_ENABLE) + else if (recdat.addr == LedToggle) { + setCaseLightState(!getCaseLightState()); + } + #endif + + #if HAS_PID_HEATING + else if (recdat.addr == HotendPID_P) { + setPID(tmp_float_handling * 10, getPID_Ki(getActiveTool()), getPID_Kd(getActiveTool()), getActiveTool()); + } + else if (recdat.addr == HotendPID_I) { + setPID(getPID_Kp(getActiveTool()), tmp_float_handling * 10, getPID_Kd(getActiveTool()), getActiveTool()); + } + else if (recdat.addr == HotendPID_D) { + setPID(getPID_Kp(getActiveTool()), getPID_Ki(getActiveTool()), tmp_float_handling * 10, getActiveTool()); + } + #if ENABLED(PIDTEMPBED) + else if (recdat.addr == BedPID_P) { + setBedPID(tmp_float_handling * 10, getBedPID_Ki(), getBedPID_Kd()); + } + else if (recdat.addr == BedPID_I) { + setBedPID(getBedPID_Kp(), tmp_float_handling * 10, getBedPID_Kd()); + } + else if (recdat.addr == BedPID_D) { + setBedPID(getBedPID_Kp(), getBedPID_Ki(), tmp_float_handling * 10); + } + #endif + #endif // HAS_PID_HEATING + } + break; + + case Setting: + if (recdat.data[0] == 0) { // return to main page + InforShowStatus = true; + TPShowStatus = false; + } + else if (recdat.data[0] == 1) { // Bed Autoleveling + #if HAS_MESH + sendData(getLevelingActive() ? 3 : 2, AutoLevelIcon); + + if (ExtUI::getMeshValid()) { + uint8_t abl_probe_index = 0; + for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) + for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { + const bool zig = outer & 1; + const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; + sendData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + abl_probe_index * 2); + ++abl_probe_index; + } + } + #endif + sendData(10, FilenameIcon); // Motor Icon + injectCommands(isPositionKnown() ? F("G1F1000Z0.0") : F("G28\nG1F1000Z0.0")); + waitway = 2; + sendData(ExchangePageBase + 64, ExchangepageAddr); + } + else if (recdat.data[0] == 2) { // Exchange filament + InforShowStatus = true; + TPShowStatus = false; + ZERO(ChangeMaterialbuf); + ChangeMaterialbuf[1] = ChangeMaterialbuf[0] = 10; + sendData(10 * ChangeMaterialbuf[0], FilamentUnit1); // It's ChangeMaterialbuf for show, instead of current_position.e in them. + sendData(10 * ChangeMaterialbuf[1], FilamentUnit2); + sendData(getActualTemp_celsius(H0), NozzleTemp); + sendData(getTargetTemp_celsius(H0), NozzlePreheat); + sendData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); + sendData(TERN0(HAS_MULTI_HOTEND, getTargetTemp_celsius(H1)), e2Preheat); + delay_ms(2); + sendData(ExchangePageBase + 65, ExchangepageAddr); + } + else if (recdat.data[0] == 3) { // Move + AxisPagenum = 0; + sendData(ExchangePageBase + 71, ExchangepageAddr); + } + else if (recdat.data[0] == 4) { // Language + // Just loads language screen, now used for tools + } + else if (recdat.data[0] == 5) { // Printer Information + sendData(WEBSITE_URL, CorpWebsite); + } + else if (recdat.data[0] == 6) { // Diabalestepper + injectCommands(F("M84")); + sendData(11, FilenameIcon); + } + break; + + case ReturnBack: + if (recdat.data[0] == 1) { // return to the tool page + InforShowStatus = false; + sendData(ExchangePageBase + 63, ExchangepageAddr); + } + if (recdat.data[0] == 2) // return to the Level mode page + sendData(ExchangePageBase + 64, ExchangepageAddr); + break; + + case Bedlevel: + switch (recdat.data[0]) { + case 1: { // Z-axis to home + // Disallow Z homing if X or Y are unknown + injectCommands(isAxisPositionKnown(axis_t(X)) && isAxisPositionKnown(axis_t(Y)) ? F("G28Z\nG1F1500Z0.0") : F("G28\nG1F1500Z0.0")); + sendData(getZOffset_mm() * 100, ProbeOffset_Z); + break; + } + case 2: { // Z-axis to Up + if (WITHIN((getZOffset_mm() + 0.1), Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { + smartAdjustAxis_steps(getAxisSteps_per_mm(Z) / 10, axis_t(Z), false); + //setZOffset_mm(getZOffset_mm() + 0.1); + sendData(getZOffset_mm() * 100, ProbeOffset_Z); + char zOffs[20], tmp1[11]; + sprintf_P(zOffs, PSTR("Z Offset : %s"), dtostrf(getZOffset_mm(), 1, 3, tmp1)); + onStatusChanged(zOffs); + } + break; + } + case 3: { // Z-axis to Down + if (WITHIN((getZOffset_mm() - 0.1), Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { + smartAdjustAxis_steps(-getAxisSteps_per_mm(Z) / 10, axis_t(Z), false); + //babystepAxis_steps(int16_t(-getAxisSteps_per_mm(Z)) / 10, axis_t(Z)); + //setZOffset_mm(getZOffset_mm() - 0.1); + sendData(getZOffset_mm() * 100, ProbeOffset_Z); + char zOffs[20], tmp1[11]; + sprintf_P(zOffs, PSTR("Z Offset : %s"), dtostrf(getZOffset_mm(), 1, 3, tmp1)); + onStatusChanged(zOffs); + } + break; + } + case 4: { // Assistant Level + TERN_(HAS_MESH, setLevelingActive(false)); + injectCommands(isPositionKnown() ? F("G1 F1000 Z0.0") : F("G28\nG1 F1000 Z0.0")); + waitway = 2; + sendData(ExchangePageBase + 84, ExchangepageAddr); + break; + } + case 5: { // AutoLevel "Measuring" Button + #if ENABLED(MESH_BED_LEVELING) + sendData(ExchangePageBase + 93, ExchangepageAddr); + #else + waitway = 3; // only for prohibiting to receive massage + sendData(3, AutolevelIcon); + uint8_t abl_probe_index = 0; + while (abl_probe_index < 25) { + sendData(0, AutolevelVal + abl_probe_index * 2); + ++abl_probe_index; + } + sendData(ExchangePageBase + 64, ExchangepageAddr); + injectCommands(F(MEASURING_GCODE)); + #endif + break; + } + + case 6: { // Assitant Level , Centre 1 + setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); + setAxisPosition_mm(X_CENTER, axis_t(X)); + setAxisPosition_mm(Y_CENTER, axis_t(Y)); + waitway = 6; + break; + } + case 7: { // Assitant Level , Front Left 2 + setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); + setAxisPosition_mm(X_MIN_BED + lfrb[0], axis_t(X)); + setAxisPosition_mm(Y_MIN_BED + lfrb[1], axis_t(Y)); + waitway = 6; + break; + } + case 8: { // Assitant Level , Front Right 3 + setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); + setAxisPosition_mm(X_MAX_BED - lfrb[2], axis_t(X)); + setAxisPosition_mm(Y_MIN_BED + lfrb[1], axis_t(Y)); + waitway = 6; + break; + } + case 9: { // Assitant Level , Back Right 4 + setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); + setAxisPosition_mm(X_MAX_BED - lfrb[2], axis_t(X)); + setAxisPosition_mm(Y_MAX_BED - lfrb[3], axis_t(Y)); + waitway = 6; + break; + } + case 10: { // Assitant Level , Back Left 5 + setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); + setAxisPosition_mm(X_MIN_BED + lfrb[0], axis_t(X)); + setAxisPosition_mm(Y_MAX_BED - lfrb[3], axis_t(Y)); + waitway = 6; + break; + } + case 11: { // Autolevel switch + #if HAS_MESH + const bool gla = !getLevelingActive(); + setLevelingActive(gla); + sendData(gla ? 3 : 2, AutoLevelIcon); + #endif + sendData(getZOffset_mm() * 100, ProbeOffset_Z); + break; + } + case 12: { + injectCommands(F("G26R255")); + onStatusChanged(F("Beginning G26.. Heating")); + break; + } + case 13: { + injectCommands(F("G29S1")); + onStatusChanged(F("Begin Manual Mesh")); + break; + } + case 14: { + injectCommands(F("G29S2")); + onStatusChanged(F("Moving to Next Mesh Point")); + break; + } + case 15: { + injectCommands(F("M211S0\nG91\nG1Z-0.025\nG90\nM211S1")); + onStatusChanged(F("Moved down 0.025")); + break; + } + case 16: { + injectCommands(F("M211S0\nG91\nG1Z0.025\nG90\nM211S1")); + onStatusChanged(F("Moved up 0.025")); + break; + } + case 17: { + Settings.display_volume = 0; + Settings.display_sound = false; + setTouchScreenConfiguration(); + break; + } + case 18: { + Settings.display_volume = 255; + Settings.display_sound = true; + setTouchScreenConfiguration(); + break; + } + case 19: { + Settings.screen_brightness = 10; + setTouchScreenConfiguration(); + break; + } + case 20: { + Settings.screen_brightness = 100; + setTouchScreenConfiguration(); + break; + } + case 21: { + Settings.display_standby ^= true; + setTouchScreenConfiguration(); + break; + } + case 22: { + Settings.screen_rotation = Settings.screen_rotation == 10 ? 0 : 10; + setTouchScreenConfiguration(); + break; + } + case 23: { // Set IDEX Autopark + injectCommands(F("M605S1\nG28X\nG1X0")); + break; + } + case 24: { // Set IDEX Duplication + injectCommands(F("M605S1\nT0\nG28\nM605S2\nG28X\nG1X0")); + break; + } + case 25: { // Set IDEX Mirrored Duplication + injectCommands(F("M605S1\nT0\nG28\nM605S2\nG28X\nG1X0\nM605S3")); + break; + } + case 26: { // Set IDEX Full Control + injectCommands(F("M605S0\nG28X")); + break; + } + case 27: { // Change Tool + setActiveTool(getActiveTool() == E0 ? E1 : E0, !isAxisPositionKnown(X)); + break; + } + default: break; + } + + sendData(10, FilenameIcon); + break; + + case XYZEaxis: { + axis_t axis = X; + float min = 0.0f, max = 0.0f; + waitway = 4; + if (recdat.addr == DisplayXaxis) { + axis = X; + min = X_MIN_POS; + max = X_MAX_POS; + } + else if (recdat.addr == DisplayYaxis) { + axis = Y; + min = Y_MIN_POS; + max = Y_MAX_POS; + } + else if (recdat.addr == DisplayZaxis) { + axis = Z; + min = Z_MIN_POS; + max = Z_MAX_POS; + } + else if (recdat.addr == AutoZero) { + if (recdat.data[0] == 3) { // autohome + waitway = 4; + injectCommands(F("G28\nG1 F1000 Z10")); + InforShowStatus = AutohomeKey = true; + AutoHomeIconNum = 0; + sendData(10, FilenameIcon); + } + else { + AxisPagenum = recdat.data[0]; + waitway = 0; + } + break; + } + + float targetPos = float(recdat.data[0]) / 10; + LIMIT(targetPos, min, max); + setAxisPosition_mm(targetPos, axis); + waitway = 0; + sendData(10, FilenameIcon); + break; + } + + case Filament: + + uint16_t IconTemp; + if (recdat.addr == Exchfilament) { + if (getActualTemp_celsius(getActiveTool()) < EXTRUDE_MINTEMP && recdat.data[0] < 5) { + sendData(int16_t(EXTRUDE_MINTEMP), 0x1020); + delay_ms(5); + sendData(ExchangePageBase + 66, ExchangepageAddr); + break; + } + + switch (recdat.data[0]) { + case 1: { // Unload filament1 + setAxisPosition_mm(getAxisPosition_mm(E0) - ChangeMaterialbuf[0], E0); + break; + } + case 2: { // Load filament1 + setAxisPosition_mm(getAxisPosition_mm(E0) + ChangeMaterialbuf[0], E0); + break; + } + case 3: { // Unload filament2 + setAxisPosition_mm(getAxisPosition_mm(E1) - ChangeMaterialbuf[1], E1); + break; + } + case 4: { // Load filament2 + setAxisPosition_mm(getAxisPosition_mm(E1) + ChangeMaterialbuf[1], E1); + break; + } + case 5: { // sure to heat + NozzleTempStatus[0] = 1; + + setTargetTemp_celsius((PREHEAT_1_TEMP_HOTEND + 10), getActiveTool()); + IconTemp = getActualTemp_celsius(getActiveTool()) * 100 / getTargetTemp_celsius(getActiveTool()); + NOMORE(IconTemp, 100U); + sendData(IconTemp, HeatPercentIcon); + + sendData(getActualTemp_celsius(H0), NozzleTemp); + sendData(getTargetTemp_celsius(H0), NozzlePreheat); + sendData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); + sendData(TERN0(HAS_MULTI_HOTEND, getTargetTemp_celsius(H1)), e2Preheat); + delay_ms(5); + sendData(ExchangePageBase + 68, ExchangepageAddr); + break; + } + case 6: { // cancel to heat + sendData(ExchangePageBase + 65, ExchangepageAddr); + break; + } + case 0xF1: { // Sure to cancel heating + NozzleTempStatus[0] = 0; + delay_ms(1); + sendData(ExchangePageBase + 65, ExchangepageAddr); + break; + } + case 0xF0: // not to cancel heating + break; + } + sendData(10 * ChangeMaterialbuf[0], FilamentUnit1); // It's ChangeMaterialbuf for show, instead of current_position.e in them. + sendData(10 * ChangeMaterialbuf[1], FilamentUnit2); + } + else if (recdat.addr == FilamentUnit1) { + ChangeMaterialbuf[0] = float(recdat.data[0]) / 10; + } + else if (recdat.addr == FilamentUnit2) { + ChangeMaterialbuf[1] = float(recdat.data[0]) / 10; + } + break; + + case LanguageChoice: + + //if (recdat.data[0] == 1) settings.save(); else injectCommands(F("M300")); + + // may at some point use language change screens to save eeprom explicitly + switch (recdat.data[0]) { + case 0: { + injectCommands(F("M500")); + break; + } + case 1: { + sendData(ExchangePageBase + 94, ExchangepageAddr); + break; + } + + #if ENABLED(PIDTEMP) + case 2: { + onStatusChanged(F("Hotend PID Started")); + startPIDTune(static_cast(pid_hotendAutoTemp), getActiveTool()); + break; + } + #endif + + case 3: { + injectCommands(F("M502\nM500")); + break; + } + case 4: { + injectCommands(F("M999\nM280P0S160")); + break; + } + + case 5: { + #if ENABLED(PIDTEMPBED) + onStatusChanged(F("Bed PID Started")); + startBedPIDTune(static_cast(pid_bedAutoTemp)); + #endif + break; + } + case 6: { + injectCommands(F("M500")); + break; + } + default: break; + } + break; + + case No_Filament: + if (recdat.data[0] == 1) { // Filament is out, resume / resume selected on screen + if (ExtUI::pauseModeStatus != PAUSE_MESSAGE_PURGE && ExtUI::pauseModeStatus != PAUSE_MESSAGE_OPTION) { + // setPauseMenuResponse(PAUSE_RESPONSE_RESUME_PRINT); + setUserConfirmed(); + // PrinterStatusKey[1] = 3; + // pause_resume_selected = true; + } + else { + #if ENABLED(FILAMENT_RUNOUT_SENSOR) + bool runouton = false; + if (getFilamentRunoutState()) { + #if NUM_RUNOUT_SENSORS > 1 + if ((runouton = getFilamentRunoutEnabled(getActiveTool()))) + ExtUI::setFilamentRunoutEnabled(false, getActiveTool()); + #else + if ((runouton = getFilamentRunoutEnabled())) + ExtUI::setFilamentRunoutEnabled(false); + #endif + } + #else + constexpr bool runouton = false; + #endif + if (!runouton) { + setPauseMenuResponse(PAUSE_RESPONSE_RESUME_PRINT); + setUserConfirmed(); + PrinterStatusKey[1] = 3; + pause_resume_selected = true; + } + } + } + else if (recdat.data[0] == 0) { // Filamet is out, Cancel Selected + if (ExtUI::pauseModeStatus == PAUSE_MESSAGE_PURGE || ExtUI::pauseModeStatus == PAUSE_MESSAGE_OPTION) { + setPauseMenuResponse(PAUSE_RESPONSE_EXTRUDE_MORE); + setUserConfirmed(); + } + } + break; + + #if ENABLED(POWER_LOSS_RECOVERY) + case PwrOffNoF: + if (recdat.data[0] == 1) // Yes: continue to print the 3Dmode during power-off. + injectCommands(F("M1000")); + else if (recdat.data[0] == 2) // No + injectCommands(F("M1000C")); + break; + #endif + + case Volume: + if (recdat.data[0] < 0) + Settings.display_volume = 0; + else if (recdat.data[0] > 255) + Settings.display_volume = 0xFF; + else + Settings.display_volume = recdat.data[0]; + + if (Settings.display_volume == 0) { + sendData(0, VolumeIcon); + sendData(9, SoundIcon); + } + else { + sendData((Settings.display_volume + 1) / 32 - 1, VolumeIcon); + sendData(8, SoundIcon); + } + sendData(Settings.display_volume << 8, SoundAddr + 1); + break; + + case Filename: + if (isMediaInserted() && recdat.addr == FilenameChs) { + + recordcount = recdat.data[0] - 1; + if (filenavigator.currentindex == 0 && filenavigator.folderdepth > 0 && (fileIndex + recordcount) == 0) { + filenavigator.upDIR(); + filenavigator.getFiles(0); + fileIndex = 0; + return; + } + + if (filenavigator.currentindex == 0 && filenavigator.folderdepth > 0) + recordcount = recordcount - 1; // account for return dir link in file index + + for (int16_t j = 1; j <= 4; j++) { // Clear filename BG Color and Frame + sendData(0xFFFFUL, FilenameNature + j * 16); // white + sendData(10, FilenameIcon1 + j); // clean + } + for (int16_t j = 0; j < 10; j++) // clear current filename + sendData(0, Choosefilename + j); + + if (filenavigator.getIndexisDir(fileIndex + recordcount)) { + filenavigator.changeDIR((char *)filenavigator.getIndexName(fileIndex + recordcount)); + filenavigator.getFiles(0); + fileIndex = 0; + return; + } + else { + sendData(filenavigator.getIndexName(fileIndex + recordcount), Choosefilename); + sendData(0x87F0UL, FilenameNature + recdat.data[0] * 16); // Change BG of selected line to Light Green + sendData(6, FilenameIcon1 + recdat.data[0]); // show frame + } + } + else if (recdat.addr == FilenamePlay) { + if (recdat.data[0] == 1 && isMediaInserted()) { // for sure + printFile(filenavigator.getIndexName(fileIndex + recordcount)); + + for (int16_t j = 0; j < 10; j++) // clean screen. + sendData(0, Printfilename + j); + + sendData(filenavigator.getIndexName(fileIndex + recordcount), Printfilename); + + delay_ms(4); + + sendData(ExchangePageBase + 53, ExchangepageAddr); + + TPShowStatus = InforShowStatus = true; + PrinterStatusKey[0] = 1; + PrinterStatusKey[1] = 3; + fileIndex = 0; + recordcount = 0; + } + else if (recdat.data[0] == 2) { // Page Down + if ((fileIndex + DISPLAY_FILES) < (filenavigator.maxFiles() + (filenavigator.folderdepth != 0))) { + fileIndex = fileIndex + DISPLAY_FILES; + // if(filenavigator.folderdepth!=0 && fileIndex!=0) //Shift to acknowledge Return DIR button on first page + // filenavigator.getFiles(fileIndex-1); + // else + filenavigator.getFiles(fileIndex); + // filenavigator.getFiles(filenavigator.currentindex+1); + } + } + else if (recdat.data[0] == 3) { // Page Up + if (fileIndex >= DISPLAY_FILES) { + fileIndex = fileIndex - DISPLAY_FILES; + // if(filenavigator.folderdepth!=0 && fileIndex!=0) //Shift to acknowledge Return DIR button on first page + // filenavigator.getFiles(filenavigator.currentindex-DISPLAY_FILES); + // else + filenavigator.getFiles(fileIndex); + } + } + else if (recdat.data[0] == 4) { // Page Up + injectCommands(F("M22\nM21")); + } + else if (recdat.data[0] == 0) { // return to main page + InforShowStatus = true; + TPShowStatus = false; + } + } + break; + + case VolumeDisplay: { + if (recdat.data[0] == 0) { + Settings.display_volume = 0; + Settings.display_sound = false; + } + else if (recdat.data[0] > 100) { + Settings.display_volume = 255; + Settings.display_sound = true; + } + else { + Settings.display_volume = (uint8_t)map(constrain(recdat.data[0], 0, 100), 0, 100, 0, 255); + Settings.display_sound = true; + } + setTouchScreenConfiguration(); + break; + } + + case DisplayBrightness: { + if (recdat.data[0] < 10) + Settings.screen_brightness = 10; + else if (recdat.data[0] > 100) + Settings.screen_brightness = 100; + else + Settings.screen_brightness = (uint8_t)recdat.data[0]; + setTouchScreenConfiguration(); + break; + } + + case DisplayStandbyBrightness: { + if (recdat.data[0] < 10) + Settings.standby_screen_brightness = 10; + else if (recdat.data[0] > 100) + Settings.standby_screen_brightness = 100; + else + Settings.standby_screen_brightness = (uint8_t)recdat.data[0]; + setTouchScreenConfiguration(); + break; + } + + case DisplayStandbySeconds: { + if (recdat.data[0] < 5) + Settings.standby_time_seconds = 5; + else if (recdat.data[0] > 100) + Settings.standby_time_seconds = 100; + else + Settings.standby_time_seconds = (uint8_t)recdat.data[0]; + setTouchScreenConfiguration(); + break; + } + + case AutolevelVal: { + uint8_t meshPoint = (recdat.addr - AutolevelVal) / 2, + yPnt = floor(meshPoint / GRID_MAX_POINTS_X), + xPnt = meshPoint - (yPnt * GRID_MAX_POINTS_X); + if (yPnt % 2 != 0) xPnt = (GRID_MAX_POINTS_X - 1) - xPnt; // zag row + + float meshVal = float(recdat.data[0] - (recdat.data[0] >= 32768 ? 65536 : 0)) / 1000; + + LIMIT(meshVal, Z_PROBE_LOW_POINT, Z_CLEARANCE_BETWEEN_PROBES); + xy_uint8_t point = { xPnt, yPnt }; + setMeshPoint(point, meshVal); + sendData(meshVal * 1000, recdat.addr); + break; + } + + default: break; + } + + memset(&recdat, 0, sizeof(recdat)); + recdat.head[0] = FHONE; + recdat.head[1] = FHTWO; +} + +void RTS::writeVariable(const uint16_t adr, const void * const values, uint8_t valueslen, const bool isstr/*=false*/, const char fillChar/*=' '*/) { + const char* myvalues = static_cast(values); + bool strend = !myvalues; + DWIN_SERIAL.write(FHONE); + DWIN_SERIAL.write(FHTWO); + DWIN_SERIAL.write(valueslen + 3); + DWIN_SERIAL.write(0x82); + DWIN_SERIAL.write(adr >> 8); + DWIN_SERIAL.write(adr & 0xFF); + while (valueslen--) { + char x; + if (!strend) x = *myvalues++; + if ((isstr && !x) || strend) { + strend = true; + x = fillChar; + } + DWIN_SERIAL.write(x); + } +} + +void RTS::setTouchScreenConfiguration() { + // Main configuration (System_Config) + LIMIT(Settings.screen_brightness, 10, 100); // Prevent a possible all-dark screen + LIMIT(Settings.standby_time_seconds, 10, 655); // Prevent a possible all-dark screen for standby, yet also don't go higher than the DWIN limitation + + uint8_t cfg_bits = (0x0 + | _BV(7) // 7: Enable Control ... TERN0(DWINOS_4, _BV(7)) + | _BV(5) // 5: load 22 touch file + | _BV(4) // 4: auto-upload should always be enabled + | (Settings.display_sound ? _BV(3) : 0) // 3: audio + | (Settings.display_standby ? _BV(2) : 0) // 2: backlight on standby + | (Settings.screen_rotation == 10 ? _BV(1) : 0) // 1 & 0: Inversion + #if LCD_SCREEN_ROTATE == 90 + | _BV(0) // Portrait Mode or 800x480 display has 0 point rotated 90deg from 480x272 display + #elif LCD_SCREEN_ROTATE + #error "Only 90° rotation is supported for the selected LCD." + #endif + ); + + const uint8_t config_set[] = { 0x5A, 0x00, TERN(DWINOS_4, 0x00, 0xFF), cfg_bits }; + writeVariable(0x80 /*System_Config*/, config_set, sizeof(config_set)); + + // Standby brightness (LED_Config) + uint16_t dwinStandbyTimeSeconds = 100 * Settings.standby_time_seconds; /* milliseconds, but divided by 10 (not 5 like the docs say) */ + const uint8_t brightness_set[] = { + Settings.screen_brightness /*% active*/, + Settings.standby_screen_brightness /*% standby*/, + static_cast(dwinStandbyTimeSeconds >> 8), + static_cast(dwinStandbyTimeSeconds) + }; + writeVariable(0x82 /*LED_Config*/, brightness_set, sizeof(brightness_set)); + + if (!Settings.display_sound) { + sendData(0, VolumeIcon); + sendData(9, SoundIcon); + } + else { + sendData((Settings.display_volume + 1) / 32 - 1, VolumeIcon); + sendData(8, SoundIcon); + } + sendData(Settings.display_volume, VolumeIcon - 2); + sendData(Settings.display_volume << 8, SoundAddr + 1); + sendData(map(constrain(Settings.display_volume, 0, 255), 0, 255, 0, 100), VolumeDisplay); + sendData(Settings.screen_brightness, DisplayBrightness); + sendData(Settings.standby_screen_brightness, DisplayStandbyBrightness); + sendData(Settings.standby_time_seconds, DisplayStandbySeconds); + if (Settings.display_standby) + sendData(3, DisplayStandbyEnableIndicator); + else + sendData(2, DisplayStandbyEnableIndicator); +} + +namespace ExtUI { + + void onStartup() { rts.onStartup(); } + + void onIdle() { rts.onIdle(); } + + void onPrinterKilled(FSTR_P const error, FSTR_P const component) { + rts.sendData(ExchangePageBase + 88, ExchangepageAddr); + int16_t j = 0; + char outmsg[40]; + char killMsg[strlen_P(FTOP(error)) + strlen_P(FTOP(component)) + 3]; + sprintf_P(killMsg, PSTR(S_FMT ": " S_FMT), FTOP(error), FTOP(component)); + while (j < 4) outmsg[j++] = '*'; + while (const char c = killMsg[j - 4]) outmsg[j++] = c; + while (j < 40) outmsg[j++] = '*'; + rts.sendData(outmsg, MacVersion); + delay_ms(10); + } + + void onMediaInserted() { + filenavigator.reset(); + filenavigator.getFiles(0); + fileIndex = 0; + recordcount = 0; + } + + void onMediaError() { + filenavigator.reset(); + for (int16_t i = 0; i < MaxFileNumber; i++) + for (int16_t j = 0; j < 10; j++) rts.sendData(0, SDFILE_ADDR + i * 10 + j); + + for (int16_t j = 0; j < 10; j++) { + rts.sendData(0, Printfilename + j); // clean screen. + rts.sendData(0, Choosefilename + j); // clean filename + } + for (int16_t j = 0; j < 8; j++) rts.sendData(0, FilenameCount + j); + for (int16_t j = 1; j <= MaxFileNumber; j++) { + rts.sendData(10, FilenameIcon + j); + rts.sendData(10, FilenameIcon1 + j); + } + } + + void onMediaRemoved() { + filenavigator.reset(); + for (int16_t i = 0; i < MaxFileNumber; i++) + for (int16_t j = 0; j < 10; j++) rts.sendData(0, SDFILE_ADDR + i * 10 + j); + + for (int16_t j = 0; j < 10; j++) { + rts.sendData(0, Printfilename + j); // clean screen. + rts.sendData(0, Choosefilename + j); // clean filename + } + for (int16_t j = 0; j < 8; j++) rts.sendData(0, FilenameCount + j); + for (int16_t j = 1; j <= MaxFileNumber; j++) { + rts.sendData(10, FilenameIcon + j); + rts.sendData(10, FilenameIcon1 + j); + } + } + + void onPlayTone(const uint16_t frequency, const uint16_t duration) { + rts.sendData(StartSoundSet, SoundAddr); + } + + void onPrintTimerStarted() { + if (waitway == 7) return; + PrinterStatusKey[1] = 3; + InforShowStatus = true; + delay_ms(1); + rts.sendData(ExchangePageBase + 53, ExchangepageAddr); + } + + void onPrintTimerPaused() { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); // Display Pause Screen + onStatusChanged(F("Pausing...")); + } + + void onPrintTimerStopped() { + if (waitway == 3) return; + + #if FAN_COUNT > 0 + for (uint8_t i = 0; i < FAN_COUNT; i++) setTargetFan_percent(FanOff, (fan_t)i); + #endif + + PrinterStatusKey[0] = 0; + InforShowStatus = true; + TPShowStatus = false; + rts.sendData(ExchangePageBase + 51, ExchangepageAddr); + } + + void onFilamentRunout() { + PrinterStatusKey[1] = 4; + TPShowStatus = false; + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + } + + void onFilamentRunout(extruder_t extruder) { + PrinterStatusKey[1] = 4; + TPShowStatus = false; + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + } + + void onUserConfirmRequired(const char *const msg) { + PrinterStatusKey[1] = 4; + TPShowStatus = false; + if (lastPauseMsgState == ExtUI::pauseModeStatus && msg == (const char*)GET_TEXT_F(MSG_FILAMENT_CHANGE_LOAD)) + return; + + switch (ExtUI::pauseModeStatus) { + case PAUSE_MESSAGE_WAITING: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Press Yes to Continue")); + break; + } + case PAUSE_MESSAGE_INSERT: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Load Filament to Continue")); + break; + } + case PAUSE_MESSAGE_HEAT: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Add Filament and Press Yes to Reheat")); + break; + } + + #if DISABLED(ADVANCED_PAUSE_CONTINUOUS_PURGE) + case PAUSE_MESSAGE_PURGE: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + char newMsg[40] = "Yes to "; + strcat_P(newMsg, TERN1(FILAMENT_RUNOUT_SENSOR, !ExtUI::getFilamentRunoutState() && getFilamentRunoutEnabled()) ? PSTR("Continue") : PSTR("Disable ")); + strcat_P(newMsg, PSTR(" No to Purge")); + onStatusChanged(newMsg); + break; + } + #endif + + case PAUSE_MESSAGE_OPTION: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + char newMsg[40] = "Yes to "; + strcat_P(newMsg, TERN1(FILAMENT_RUNOUT_SENSOR, !ExtUI::getFilamentRunoutState() && getFilamentRunoutEnabled()) ? PSTR("Continue") : PSTR("Disable ")); + strcat_P(newMsg, PSTR(" No to Purge")); + onStatusChanged(newMsg); + break; + } + + case PAUSE_MESSAGE_PARKING: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Parking...")); + break; + } + case PAUSE_MESSAGE_CHANGING: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Beginning Filament Change")); + break; + } + case PAUSE_MESSAGE_UNLOAD: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Unloading...")); + break; + } + case PAUSE_MESSAGE_LOAD: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Reloading...")); + break; + } + case PAUSE_MESSAGE_RESUME: + #if ENABLED(ADVANCED_PAUSE_CONTINUOUS_PURGE) + case PAUSE_MESSAGE_PURGE: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Press Yes to Stop Purge")); + break; + } + #endif + + case PAUSE_MESSAGE_HEATING: { + rts.sendData(ExchangePageBase + 68, ExchangepageAddr); + onStatusChanged(F("Reheating")); + break; + } + + case PAUSE_MESSAGE_STATUS: + default: { + setPauseMenuResponse(PAUSE_RESPONSE_RESUME_PRINT); + setUserConfirmed(); + break; + } + } + lastPauseMsgState = ExtUI::pauseModeStatus; + } + + void onStatusChanged(const char *const statMsg) { + for (int16_t j = 0; j < 20; j++) // Clear old message + rts.sendData(' ', StatusMessageString + j); + rts.sendData(statMsg, StatusMessageString); + } + + void onFactoryReset() { + Settings.settings_size = sizeof(creality_dwin_settings_t); + Settings.settings_version = dwin_settings_version; + Settings.display_standby = true; + Settings.display_sound = true; + Settings.display_volume = 32; + Settings.standby_screen_brightness = 15; + Settings.screen_brightness = 100; + Settings.standby_time_seconds = 60; + Settings.screen_rotation = 0; + onStartup(); + startprogress = 0; + InforShowStatus = true; + } + + void onMeshUpdate(const int8_t xpos, const int8_t ypos, probe_state_t state) {} + + void onMeshUpdate(const int8_t xpos, const int8_t ypos, const_float_t zval) { + if (waitway == 3) + if (isPositionKnown() && (getActualTemp_celsius(BED) >= (getTargetTemp_celsius(BED) - 1))) + rts.sendData(ExchangePageBase + 64, ExchangepageAddr); + #if HAS_MESH + uint8_t abl_probe_index = 0; + for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) + for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { + const bool zig = outer & 1; // != ((PR_OUTER_END) & 1); + const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; + if (point.x == xpos && outer == ypos) + rts.sendData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + (abl_probe_index * 2)); + ++abl_probe_index; + } + #endif + } + + void onStoreSettings(char *buff) { + static_assert( + ExtUI::eeprom_data_size >= sizeof(creality_dwin_settings_t), + "Insufficient space in EEPROM for UI parameters" + ); + + // Write to buffer + memcpy(buff, &Settings, sizeof(creality_dwin_settings_t)); + } + + void onLoadSettings(const char *buff) { + static_assert( + ExtUI::eeprom_data_size >= sizeof(creality_dwin_settings_t), + "Insufficient space in EEPROM for UI parameters" + ); + + creality_dwin_settings_t eepromSettings; + memcpy(&eepromSettings, buff, sizeof(creality_dwin_settings_t)); + + // If size is not the same, discard settings + if (eepromSettings.settings_size != sizeof(creality_dwin_settings_t)) { + onFactoryReset(); + return; + } + + if (eepromSettings.settings_version != dwin_settings_version) { + onFactoryReset(); + return; + } + + // Copy into final location + memcpy(&Settings, &eepromSettings, sizeof(creality_dwin_settings_t)); + + rts.setTouchScreenConfiguration(); + } + + void onSettingsStored(const bool success) { + // This is called after the entire EEPROM has been written, + // whether successful or not. + } + + void onSettingsLoaded(const bool success) { + #if HAS_MESH + if (ExtUI::getMeshValid()) { + uint8_t abl_probe_index = 0; + for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) + for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { + const bool zig = outer & 1; + const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; + rts.sendData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + (abl_probe_index * 2)); + ++abl_probe_index; + } + + rts.sendData(3, AutoLevelIcon); // 2=On, 3=Off + setLevelingActive(true); + } + else { + rts.sendData(2, AutoLevelIcon); /*Off*/ + setLevelingActive(false); + } + #endif + + rts.sendData(getZOffset_mm() * 100, ProbeOffset_Z); + rts.setTouchScreenConfiguration(); + } + + #if ENABLED(POWER_LOSS_RECOVERY) + void onSetPowerLoss(const bool onoff) { + // Called when power-loss is enabled/disabled + } + void onPowerLoss() { + // Called when power-loss state is detected + } + void onPowerLossResume() { + startprogress = 254; + InforShowStatus = true; + TPShowStatus = false; + reEntryPrevent = false; + rts.sendData(ExchangePageBase + 76, ExchangepageAddr); + } + #endif + + #if HAS_PID_HEATING + void onPidTuning(const result_t rst) { + // Called for temperature PID tuning result + rts.sendData(pid_hotendAutoTemp, HotendPID_AutoTmp); + rts.sendData(pid_bedAutoTemp, BedPID_AutoTmp); + rts.sendData(uint16_t(getPID_Kp(E0)) * 10, HotendPID_P); + rts.sendData(uint16_t(getPID_Ki(E0)) * 10, HotendPID_I); + rts.sendData(uint16_t(getPID_Kd(E0)) * 10, HotendPID_D); + #if ENABLED(PIDTEMPBED) + rts.sendData(uint16_t(getBedPID_Kp()) * 10, BedPID_P); + rts.sendData(uint16_t(getBedPID_Ki()) * 10, BedPID_I); + rts.sendData(uint16_t(getBedPID_Kd()) * 10, BedPID_D); + #endif + onStatusChanged(F("PID Tune Finished")); + } + #endif + + void onLevelingStart() {} + + void onLevelingDone() { + #if HAS_MESH + if (ExtUI::getMeshValid()) { + uint8_t abl_probe_index = 0; + for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) + for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { + const bool zig = outer & 1; + const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; + rts.sendData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + abl_probe_index * 2); + ++abl_probe_index; + } + + rts.sendData(3, AutoLevelIcon); // 2=On, 3=Off + setLevelingActive(true); + } + else { + rts.sendData(2, AutoLevelIcon); /*Off*/ + setLevelingActive(false); + } + #endif + } + + void onSteppersEnabled() {} + void onPrintDone() {} + void onHomingStart() {} + void onHomingDone() {} + void onSteppersDisabled() {} + void onPostprocessSettings() {} + +} // namespace ExtUI + +#endif // DGUS_LCD_UI_IA_CREALITY diff --git a/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.h b/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.h index ba5df4fe77cd..af3824e90485 100644 --- a/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.h +++ b/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.h @@ -47,7 +47,7 @@ #define FileNum MaxFileNumber #define FileNameLen TEXTBYTELEN -#define SizeofDatabuf 46 +#define DATA_BUF_SIZE 46 //#define FONT_EEPROM 90 //#define AutoLeve_EEPROM 100 @@ -177,122 +177,114 @@ #define StatusMessageString 0x2064 +// TODO: Use LCD_SERIAL 1 or 3 (?) by configuration, not overriding here #ifdef TARGET_STM32F4 #define DWIN_SERIAL Serial1 #else #define DWIN_SERIAL LCD_SERIAL #endif -namespace ExtUI { - - /************struct**************/ - - typedef enum : uint8_t { - DGUS_IDLE, //< waiting for DGUS_HEADER1. - DGUS_HEADER1_SEEN, //< DGUS_HEADER1 received - DGUS_HEADER2_SEEN, //< DGUS_HEADER2 received - DGUS_WAIT_TELEGRAM, //< LEN received, Waiting for to receive all bytes. - } rx_datagram_state_t; - - typedef struct DataBuf { - uint8_t len; - uint8_t head[2]; - uint8_t command; - uint32_t addr; - uint32_t bytelen; - uint16_t data[32]; - uint8_t reserv[4]; - } DB; - - struct creality_dwin_settings_t { - size_t settings_size; - uint8_t settings_version; - - bool display_standby; - bool display_sound; - int8_t screen_rotation; - int16_t display_volume; - uint8_t standby_screen_brightness; - uint8_t screen_brightness; - int16_t standby_time_seconds; - }; - - void SetTouchScreenConfiguration(); - - class RTSSHOW { - public: - RTSSHOW(); - int16_t RTS_RecData(); - void RTS_SDCardInit(); - void RTS_SDCardUpate(bool, bool); - int16_t RTS_CheckFilament(int16_t); - void RTS_SndData(); - void RTS_SndData(const String&, const uint32_t, const uint8_t=VarAddr_W); - void RTS_SndData(const char[], const uint32_t, const uint8_t=VarAddr_W); - void RTS_SndData(char, const uint32_t, const uint8_t=VarAddr_W); - void RTS_SndData(int, const uint32_t, const uint8_t=VarAddr_W); - void RTS_SndData(unsigned long, const uint32_t, const uint8_t=VarAddr_W); - void RTS_SndData(const_float_t, const uint32_t, const uint8_t=VarAddr_W); - - void RTS_SndData(uint8_t * const str, const uint32_t addr, const uint8_t cmd=VarAddr_W) { RTS_SndData((char *)str, addr, cmd); } - void RTS_SndData(const unsigned int n, uint32_t addr, const uint8_t cmd=VarAddr_W) { RTS_SndData(int(n), addr, cmd); } - void RTS_SndData(const long n, const uint32_t addr, const uint8_t cmd=VarAddr_W) { RTS_SndData((unsigned long)n, addr, cmd); } - - void RTS_SDcard_Stop(); - void RTS_HandleData(); - void RTS_Init(); - - DB recdat; - DB snddat; - uint8_t databuf[SizeofDatabuf]; - - static rx_datagram_state_t rx_datagram_state; - static uint8_t rx_datagram_len; - static bool Initialized; - }; - - static RTSSHOW rtscheck; - - #define Addvalue 3 - #define PrintChoice_Value (0 + Addvalue) - #define Zoffset_Value (3 + Addvalue) - #define Setting_Value (8 + Addvalue) - #define XYZEaxis_Value (12 + Addvalue) - #define Filament_Value (15 + Addvalue) - #define Language_Value (18 + Addvalue) - #define Filename_Value (22 + Addvalue) - - enum PROC_COM { - Printfile = 0, - Adjust, - Feedrate, - PrintChoice = PrintChoice_Value, - Zoffset = Zoffset_Value, - TempControl, - ManualSetTemp, - Setting = Setting_Value, - ReturnBack, - Bedlevel, - Autohome, - XYZEaxis = XYZEaxis_Value, - Filament = Filament_Value, - LanguageChoice = Language_Value, - No_Filament, - PwrOffNoF, - Volume, - Filename = Filename_Value - }; - - const uint16_t Addrbuf[] = { - 0x1002, 0x1004, 0x1006, 0x1008, 0x100A, 0x100C, 0x1026, 0x1030, 0x1032, 0x1034, 0x103A, - 0x103E, 0x1040, 0x1044, 0x1046, 0x1048, 0x104A, 0x104C, 0x1054, 0x1056, 0x1058, - 0x105C, 0x105E, 0x105F, 0x1088, 0 - }; - - void RTSUpdate(); - void RTSInit(); - -} // ExtUI +/************struct**************/ + +typedef enum : uint8_t { + DGUS_IDLE, //< waiting for DGUS_HEADER1. + DGUS_HEADER1_SEEN, //< DGUS_HEADER1 received + DGUS_HEADER2_SEEN, //< DGUS_HEADER2 received + DGUS_WAIT_TELEGRAM, //< LEN received, Waiting for to receive all bytes. +} rx_datagram_state_t; + +typedef struct DataBuf { + uint8_t len; + uint8_t head[2]; + uint8_t command; + uint32_t addr; + uint32_t bytelen; + uint16_t data[32]; + uint8_t reserv[4]; +} DB; + +struct creality_dwin_settings_t { + size_t settings_size; + uint8_t settings_version; + + bool display_standby; + bool display_sound; + int8_t screen_rotation; + int16_t display_volume; + uint8_t standby_screen_brightness; + uint8_t screen_brightness; + int16_t standby_time_seconds; +}; + +class RTS { + public: + RTS(); + static void onStartup(); + static void onIdle(); + static int16_t receiveData(); + static void sendData(); + static void sendData(const String&, const uint32_t, const uint8_t=VarAddr_W); + static void sendData(const char[], const uint32_t, const uint8_t=VarAddr_W); + static void sendData(char, const uint32_t, const uint8_t=VarAddr_W); + static void sendData(int, const uint32_t, const uint8_t=VarAddr_W); + static void sendData(unsigned long, const uint32_t, const uint8_t=VarAddr_W); + static void sendData(const_float_t, const uint32_t, const uint8_t=VarAddr_W); + + static void sendData(uint8_t * const str, const uint32_t addr, const uint8_t cmd=VarAddr_W) { sendData((char *)str, addr, cmd); } + static void sendData(const unsigned int n, uint32_t addr, const uint8_t cmd=VarAddr_W) { sendData(int(n), addr, cmd); } + static void sendData(const long n, const uint32_t addr, const uint8_t cmd=VarAddr_W) { sendData((unsigned long)n, addr, cmd); } + + static void handleData(); + + static void writeVariable(const uint16_t adr, const void * const values, uint8_t valueslen, const bool isstr=false, const char fillChar=' '); + static void setTouchScreenConfiguration(); + + static DB recdat, snddat; + static uint8_t databuf[DATA_BUF_SIZE]; + + static rx_datagram_state_t rx_datagram_state; + static uint8_t rx_datagram_len; +}; + +extern RTS rts; + +#define Addvalue 3 +#define PrintChoice_Value (0 + Addvalue) +#define Zoffset_Value (3 + Addvalue) +#define Setting_Value (8 + Addvalue) +#define XYZEaxis_Value (12 + Addvalue) +#define Filament_Value (15 + Addvalue) +#define Language_Value (18 + Addvalue) +#define Filename_Value (22 + Addvalue) + +enum PROC_COM { + Printfile = 0, + Adjust, + Feedrate, + PrintChoice = PrintChoice_Value, + Zoffset = Zoffset_Value, + TempControl, + ManualSetTemp, + Setting = Setting_Value, + ReturnBack, + Bedlevel, + Autohome, + XYZEaxis = XYZEaxis_Value, + Filament = Filament_Value, + LanguageChoice = Language_Value, + No_Filament, + PwrOffNoF, + Volume, + Filename = Filename_Value +}; + +const uint16_t Addrbuf[] = { + 0x1002, 0x1004, 0x1006, 0x1008, 0x100A, 0x100C, 0x1026, 0x1030, 0x1032, 0x1034, 0x103A, + 0x103E, 0x1040, 0x1044, 0x1046, 0x1048, 0x104A, 0x104C, 0x1054, 0x1056, 0x1058, + 0x105C, 0x105E, 0x105F, 0x1088, 0 +}; + +void RTS_Update(); #ifndef MAIN_MENU_ITEM_1_GCODE #if ENABLED(AUTO_BED_LEVELING_BILINEAR) From e66cd41654a3ca299acd2111daefe50c255f67ac Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Mon, 15 May 2023 09:29:35 +1200 Subject: [PATCH 175/427] =?UTF-8?q?=F0=9F=90=9B=20Safe=20Delay=20for=20Pro?= =?UTF-8?q?UI=20startup=20animation=20(#25827)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/Warnings.cpp | 4 ++++ Marlin/src/lcd/e3v2/proui/dwin.cpp | 2 +- buildroot/tests/STM32F103RE_creality | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/Marlin/src/inc/Warnings.cpp b/Marlin/src/inc/Warnings.cpp index cf75f3dd28a8..f76092085465 100644 --- a/Marlin/src/inc/Warnings.cpp +++ b/Marlin/src/inc/Warnings.cpp @@ -760,3 +760,7 @@ #ifdef STM32F4_UPDATE_FOLDER #warning "Place the firmware bin file in a folder named 'STM32F4_UPDATE' on the SD card. Install with 'M936 V2'." #endif + +#if ENABLED(DWIN_LCD_PROUI) && BOOTSCREEN_TIMEOUT > 2000 + #warning "For ProUI the original BOOTSCREEN_TIMEOUT of 1100 is recommended." +#endif diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index f3a23ae1e40a..8bd0a67b9b84 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -1235,7 +1235,7 @@ void HMI_Init() { DWINUI::Draw_Icon(ICON_Bar, 15, 260); DWIN_Draw_Rectangle(1, HMI_data.Background_Color, t, 260, 257, 280); DWIN_UpdateLCD(); - delay((BOOTSCREEN_TIMEOUT) / 22); + safe_delay((BOOTSCREEN_TIMEOUT) / 22); } #endif HMI_SetLanguage(); diff --git a/buildroot/tests/STM32F103RE_creality b/buildroot/tests/STM32F103RE_creality index 834580fac8e3..bf56e12d7de6 100755 --- a/buildroot/tests/STM32F103RE_creality +++ b/buildroot/tests/STM32F103RE_creality @@ -29,7 +29,7 @@ opt_enable DWIN_LCD_PROUI INDIVIDUAL_AXIS_HOMING_SUBMENU SET_PROGRESS_MANUALLY S SOUND_MENU_ITEM PRINTCOUNTER NOZZLE_PARK_FEATURE ADVANCED_PAUSE_FEATURE FILAMENT_RUNOUT_SENSOR \ BLTOUCH Z_SAFE_HOMING AUTO_BED_LEVELING_UBL MESH_EDIT_MENU \ LIMITED_MAX_FR_EDITING LIMITED_MAX_ACCEL_EDITING LIMITED_JERK_EDITING BAUD_RATE_GCODE -opt_set PREHEAT_3_LABEL '"CUSTOM"' PREHEAT_3_TEMP_HOTEND 240 PREHEAT_3_TEMP_BED 60 PREHEAT_3_FAN_SPEED 128 +opt_set PREHEAT_3_LABEL '"CUSTOM"' PREHEAT_3_TEMP_HOTEND 240 PREHEAT_3_TEMP_BED 60 PREHEAT_3_FAN_SPEED 128 BOOTSCREEN_TIMEOUT 1100 exec_test $1 $2 "Ender-3 S1 - ProUI (PIDTEMP)" "$3" restore_configs From 1c5426d4af5f5a51f814459f54185c64643a2067 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 15 May 2023 00:22:01 +0000 Subject: [PATCH 176/427] [cron] Bump distribution date (2023-05-15) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 64e5a6a99d3e..1628f16bd2b9 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-14" +//#define STRING_DISTRIBUTION_DATE "2023-05-15" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index bcddf2dbd121..d8d693d9c4d3 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-14" + #define STRING_DISTRIBUTION_DATE "2023-05-15" #endif /** From b364e44716d8ba0d08d01c2d61067dd8602271d2 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 14 May 2023 18:08:33 -0500 Subject: [PATCH 177/427] =?UTF-8?q?=F0=9F=93=8C=20TH3D=20EZBoard=20SD=5FDE?= =?UTF-8?q?TECT=5FPIN=2027?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/Conditionals_post.h | 2 +- Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 8ad4a6161e31..d137e1d9c198 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -526,7 +526,7 @@ */ #if HAS_MEDIA - #if HAS_SD_HOST_DRIVE && SD_CONNECTION_IS(ONBOARD) + #if HAS_SD_HOST_DRIVE && SD_CONNECTION_IS(ONBOARD) && DISABLED(KEEP_SD_DETECT) // // The external SD card is not used. Hardware SPI is used to access the card. // When sharing the SD card with a PC we want the menu options to diff --git a/Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h b/Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h index 11fa2c9468d1..1982652af6c5 100644 --- a/Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h +++ b/Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h @@ -141,7 +141,7 @@ #define SDCARD_CONNECTION ONBOARD -//#define SD_DETECT_PIN P0_25 // SD_CD +#define SD_DETECT_PIN P0_27 // SD_CD #define SD_SCK_PIN P0_07 #define SD_MISO_PIN P0_08 #define SD_MOSI_PIN P0_09 From d17d86d6a5a29e29e4d8e811d9bd6e6a030b7597 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 14 May 2023 18:32:59 -0500 Subject: [PATCH 178/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20M43?= =?UTF-8?q?=20updates?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/config/M43.cpp | 6 +++--- Marlin/src/pins/pinsDebug.h | 20 ++++++++++++-------- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/Marlin/src/gcode/config/M43.cpp b/Marlin/src/gcode/config/M43.cpp index c427fe7a31e8..6bd78c68ff24 100644 --- a/Marlin/src/gcode/config/M43.cpp +++ b/Marlin/src/gcode/config/M43.cpp @@ -372,7 +372,7 @@ void GcodeSuite::M43() { for (;;) { LOOP_S_LE_N(i, first_pin, last_pin) { - pin_t pin = GET_PIN_MAP_PIN_M43(i); + const pin_t pin = GET_PIN_MAP_PIN_M43(i); if (!VALID_PIN(pin)) continue; if (M43_NEVER_TOUCH(i) || (!ignore_protection && pin_is_protected(pin))) continue; const byte val = @@ -383,7 +383,7 @@ void GcodeSuite::M43() { //*/ extDigitalRead(pin); if (val != pin_state[i - first_pin]) { - report_pin_state_extended(pin, ignore_protection, false); + report_pin_state_extended(pin, ignore_protection, true); pin_state[i - first_pin] = val; } } @@ -401,7 +401,7 @@ void GcodeSuite::M43() { else { // Report current state of selected pin(s) LOOP_S_LE_N(i, first_pin, last_pin) { - pin_t pin = GET_PIN_MAP_PIN_M43(i); + const pin_t pin = GET_PIN_MAP_PIN_M43(i); if (VALID_PIN(pin)) report_pin_state_extended(pin, ignore_protection, true); } } diff --git a/Marlin/src/pins/pinsDebug.h b/Marlin/src/pins/pinsDebug.h index 4a8928c1e561..cce3799981a4 100644 --- a/Marlin/src/pins/pinsDebug.h +++ b/Marlin/src/pins/pinsDebug.h @@ -175,11 +175,15 @@ const PinInfo pin_array[] PROGMEM = { #endif static void print_input_or_output(const bool isout) { - SERIAL_ECHOPGM_P(isout ? PSTR("Output = ") : PSTR("Input = ")); + SERIAL_ECHOF(isout ? F("Output ") : F("Input ")); +} + +static void print_pin_state(const bool state) { + SERIAL_ECHOF(state ? F("HIGH") : F("LOW")); } // pretty report with PWM info -inline void report_pin_state_extended(pin_t pin, const bool ignore, const bool extended=false, FSTR_P const start_string=nullptr) { +inline void report_pin_state_extended(const pin_t pin, const bool ignore, const bool extended=false, FSTR_P const start_string=nullptr) { char buffer[MAX_NAME_LENGTH + 1]; // for the sprintf statements bool found = false, multi_name_pin = false; @@ -188,12 +192,12 @@ inline void report_pin_state_extended(pin_t pin, const bool ignore, const bool e // Use FastIO for pins Teensy doesn't expose if (pin == 46) { print_input_or_output(IS_OUTPUT(46)); - SERIAL_CHAR('0' + READ(46)); + print_pin_state(READ(46)); return false; } else if (pin == 47) { print_input_or_output(IS_OUTPUT(47)); - SERIAL_CHAR('0' + READ(47)); + print_pin_state(READ(47)); return false; } #endif @@ -230,14 +234,14 @@ inline void report_pin_state_extended(pin_t pin, const bool ignore, const bool e // because this could interfere with inductive/capacitive // sensors (high impedance voltage divider) and with Pt100 amplifier print_input_or_output(false); - SERIAL_ECHO(digitalRead_mod(pin)); + print_pin_state(digitalRead_mod(pin)); } else if (pwm_status(pin)) { // do nothing } else { print_input_or_output(true); - SERIAL_ECHO(digitalRead_mod(pin)); + print_pin_state(digitalRead_mod(pin)); } } if (!multi_name_pin && extended) pwm_details(pin); // report PWM capabilities only on the first pass & only if doing an extended report @@ -267,7 +271,7 @@ inline void report_pin_state_extended(pin_t pin, const bool ignore, const bool e else if (GET_PINMODE(pin)) { SERIAL_ECHO_SP(MAX_NAME_LENGTH - 16); print_input_or_output(true); - SERIAL_ECHO(digitalRead_mod(pin)); + print_pin_state(digitalRead_mod(pin)); } else { if (IS_ANALOG(pin)) { @@ -279,7 +283,7 @@ inline void report_pin_state_extended(pin_t pin, const bool ignore, const bool e SERIAL_ECHO_SP(MAX_NAME_LENGTH - 16); // add padding if not an analog pin print_input_or_output(false); - SERIAL_ECHO(digitalRead_mod(pin)); + print_pin_state(digitalRead_mod(pin)); } //if (!pwm_status(pin)) SERIAL_CHAR(' '); // add padding if it's not a PWM pin if (extended) { From 2e24637bd66d725dc07a560cda81b40f67fd1d4a Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Mon, 15 May 2023 13:48:55 +1200 Subject: [PATCH 179/427] "One Click" Print newest file (#25781) Co-authored-by: Scott Lahteine --- Marlin/Configuration_adv.h | 1 + Marlin/src/inc/SanityCheck.h | 13 +++ Marlin/src/lcd/marlinui.cpp | 2 +- Marlin/src/lcd/menu/menu.h | 4 + Marlin/src/lcd/menu/menu_media.cpp | 7 +- Marlin/src/lcd/menu/menu_one_click_print.cpp | 44 +++++++ Marlin/src/sd/cardreader.cpp | 107 ++++++++++++++++-- Marlin/src/sd/cardreader.h | 6 + .../PlatformIO/scripts/common-dependencies.h | 3 + buildroot/tests/mks_tinybee | 4 +- ini/features.ini | 1 + 11 files changed, 174 insertions(+), 18 deletions(-) create mode 100644 Marlin/src/lcd/menu/menu_one_click_print.cpp diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 9090eb5a61cd..278853ac609e 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -1675,6 +1675,7 @@ //#define NO_SD_AUTOSTART // Remove auto#.g file support completely to save some Flash, SRAM //#define MENU_ADDAUTOSTART // Add a menu option to run auto#.g files + //#define ONE_CLICK_PRINT // Prompt to print the newest file on inserted media //#define BROWSE_MEDIA_ON_INSERT // Open the file browser when media is inserted //#define MEDIA_MENU_AT_TOP // Force the media menu to be listed on the top of the main menu diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 53333d872782..2a9fdde2dc02 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -4044,6 +4044,19 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." // Multi-Stepping Limit static_assert(WITHIN(MULTISTEPPING_LIMIT, 1, 128) && IS_POWER_OF_2(MULTISTEPPING_LIMIT), "MULTISTEPPING_LIMIT must be 1, 2, 4, 8, 16, 32, 64, or 128."); +// One Click Print +#if ENABLED(ONE_CLICK_PRINT) + #if !HAS_MEDIA + #error "SD Card or Flash Drive is required for ONE_CLICK_PRINT." + #elif ENABLED(BROWSE_MEDIA_ON_INSERT) + #error "ONE_CLICK_PRINT is incompatible with BROWSE_MEDIA_ON_INSERT." + #elif DISABLED(NO_SD_AUTOSTART) + #error "NO_SD_AUTOSTART must be enabled for ONE_CLICK_PRINT." + #elif !defined(HAS_MARLINUI_MENU) + #error "ONE_CLICK_PRINT needs a display that has Marlin UI menus." + #endif +#endif + // Misc. Cleanup #undef _TEST_PWM #undef _NUM_AXES_STR diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index 638a133184f3..e8956ab9e150 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -424,7 +424,7 @@ void MarlinUI::init() { #if !HAS_GRAPHICAL_TFT - void _wrap_string(uint8_t &col, uint8_t &row, const char * const string, read_byte_cb_t cb_read_byte, bool wordwrap/*=false*/) { + void _wrap_string(uint8_t &col, uint8_t &row, const char * const string, read_byte_cb_t cb_read_byte, const bool wordwrap/*=false*/) { SETCURSOR(col, row); if (!string) return; diff --git a/Marlin/src/lcd/menu/menu.h b/Marlin/src/lcd/menu/menu.h index 5a70ddd3a2f9..1face4774bf5 100644 --- a/Marlin/src/lcd/menu/menu.h +++ b/Marlin/src/lcd/menu/menu.h @@ -259,6 +259,10 @@ void _lcd_draw_homing(); void touch_screen_calibration(); #endif +#if ENABLED(ONE_CLICK_PRINT) + void one_click_print(); +#endif + extern uint8_t screen_history_depth; inline void clear_menu_history() { screen_history_depth = 0; } diff --git a/Marlin/src/lcd/menu/menu_media.cpp b/Marlin/src/lcd/menu/menu_media.cpp index e32f41a9a6e1..795ac2052b41 100644 --- a/Marlin/src/lcd/menu/menu_media.cpp +++ b/Marlin/src/lcd/menu/menu_media.cpp @@ -73,14 +73,11 @@ class MenuItem_sdfile : public MenuItem_sdbase { #endif #if ENABLED(SD_MENU_CONFIRM_START) MenuItem_submenu::action(fstr, []{ - char * const longest = card.longest_filename(); - char buffer[strlen(longest) + 2]; - buffer[0] = ' '; - strcpy(buffer + 1, longest); + char * const filename = card.longest_filename(); MenuItem_confirm::select_screen( GET_TEXT_F(MSG_BUTTON_PRINT), GET_TEXT_F(MSG_BUTTON_CANCEL), sdcard_start_selected_file, nullptr, - GET_TEXT_F(MSG_START_PRINT), buffer, F("?") + GET_TEXT_F(MSG_START_PRINT), filename, F("?") ); }); #else diff --git a/Marlin/src/lcd/menu/menu_one_click_print.cpp b/Marlin/src/lcd/menu/menu_one_click_print.cpp new file mode 100644 index 000000000000..f1ed92d0d592 --- /dev/null +++ b/Marlin/src/lcd/menu/menu_one_click_print.cpp @@ -0,0 +1,44 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../inc/MarlinConfigPre.h" + +#if ENABLED(ONE_CLICK_PRINT) + +#include "menu.h" + +void one_click_print() { + ui.goto_screen([]{ + char * const filename = card.longest_filename(); + MenuItem_confirm::select_screen( + GET_TEXT_F(MSG_BUTTON_PRINT), GET_TEXT_F(MSG_BUTTON_CANCEL), + []{ + card.openAndPrintFile(card.filename); + ui.return_to_status(); + ui.reset_status(); + }, nullptr, + GET_TEXT_F(MSG_START_PRINT), filename, F("?") + ); + }); +} + +#endif // ONE_CLICK_PRINT diff --git a/Marlin/src/sd/cardreader.cpp b/Marlin/src/sd/cardreader.cpp index 4e864e567273..cd3d1d2cd603 100644 --- a/Marlin/src/sd/cardreader.cpp +++ b/Marlin/src/sd/cardreader.cpp @@ -56,6 +56,10 @@ #include "../feature/pause.h" #endif +#if ENABLED(ONE_CLICK_PRINT) + #include "../../src/lcd/menu/menu.h" +#endif + #define DEBUG_OUT EITHER(DEBUG_CARDREADER, MARLIN_DEV_MODE) #include "../core/debug_out.h" #include "../libs/hex_print.h" @@ -290,7 +294,7 @@ void CardReader::printListing(MediaFile parent, const char * const prepend, cons while (parent.readDir(&p, longFilename) > 0) { if (DIR_IS_SUBDIR(&p)) { - size_t lenPrepend = prepend ? strlen(prepend) + 1 : 0; + const size_t lenPrepend = prepend ? strlen(prepend) + 1 : 0; // Allocate enough stack space for the full path including / separator char path[lenPrepend + FILENAME_LENGTH]; if (prepend) { strcpy(path, prepend); path[lenPrepend - 1] = '/'; } @@ -545,20 +549,28 @@ void CardReader::manage_media() { if (!stat) return; // Exit if no media is present - if (old_stat != 2) return; // First mount? + bool do_auto = true; UNUSED(do_auto); - DEBUG_ECHOLNPGM("First mount."); + // First mount on boot? Load emulated EEPROM and look for PLR file. + if (old_stat == 2) { + DEBUG_ECHOLNPGM("First mount."); - // Load settings the first time media is inserted (not just during init) - TERN_(SDCARD_EEPROM_EMULATION, settings.first_load()); + // Load settings the first time media is inserted (not just during init) + TERN_(SDCARD_EEPROM_EMULATION, settings.first_load()); - bool do_auto = true; UNUSED(do_auto); + // Check for PLR file. Skip One-Click and auto#.g if found + TERN_(POWER_LOSS_RECOVERY, if (recovery.check()) do_auto = false); + } - // Check for PLR file. - TERN_(POWER_LOSS_RECOVERY, if (recovery.check()) do_auto = false); + // Find the newest file and prompt to print it. + TERN_(ONE_CLICK_PRINT, if (do_auto && one_click_check()) do_auto = false); - // Look for auto0.g on the next idle() - IF_DISABLED(NO_SD_AUTOSTART, if (do_auto) autofile_begin()); + // Also for the first mount run auto#.g for machine init. + // (Skip if PLR or One-Click Print was invoked.) + if (old_stat == 2) { + // Look for auto0.g on the next idle() + IF_DISABLED(NO_SD_AUTOSTART, if (do_auto) autofile_begin()); + } } /** @@ -887,6 +899,81 @@ void CardReader::write_command(char * const buf) { } #endif +#if ENABLED(ONE_CLICK_PRINT) + + /** + * Select the newest file and ask the user if they want to print it. + */ + bool CardReader::one_click_check() { + const bool found = selectNewestFile(); + if (found) { + //SERIAL_ECHO_MSG(" OCP File: ", longest_filename(), "\n"); + //ui.init(); + one_click_print(); + } + return found; + } + + /** + * Recurse the entire directory to find the newest file. + * This may take a very long time so watch out for watchdog reset. + * It may be best to only look at root for reasonable boot and mount times. + */ + void CardReader::diveToNewestFile(MediaFile parent, uint32_t &compareDateTime, MediaFile &outdir, char * const outname) { + // Iterate the given parent dir + parent.rewind(); + for (dir_t p; parent.readDir(&p, longFilename) > 0;) { + + // If the item is a dir, recurse into it + if (DIR_IS_SUBDIR(&p)) { + // Get the name of the dir for opening + char dirname[FILENAME_LENGTH]; + createFilename(dirname, p); + + // Open the item in a new MediaFile + MediaFile child; // child.close() in destructor + if (child.open(&parent, dirname, O_READ)) + diveToNewestFile(child, compareDateTime, outdir, outname); + } + else if (is_visible_entity(p)) { + // Get the newer of the modified/created date and time + const uint32_t modDateTime = uint32_t(p.lastWriteDate) << 16 | p.lastWriteTime, + createDateTime = uint32_t(p.creationDate) << 16 | p.creationTime, + newerDateTime = _MAX(modDateTime, createDateTime); + // If a newer item is found overwrite the outdir and outname + if (newerDateTime > compareDateTime) { + compareDateTime = newerDateTime; + outdir = parent; + createFilename(outname, p); + } + } + } + } + + /** + * Recurse the entire directory to find the newest file. + * Make the found file the current selection. + */ + bool CardReader::selectNewestFile() { + uint32_t dateTimeStorage = 0; + MediaFile foundDir; + char foundName[FILENAME_LENGTH]; + foundName[0] = '\0'; + + diveToNewestFile(root, dateTimeStorage, foundDir, foundName); + + if (foundName[0]) { + workDir = foundDir; + workDir.rewind(); + selectByName(workDir, foundName); + //workDir.close(); // Not needed? + return true; + } + return false; + } + +#endif // ONE_CLICK_PRINT + void CardReader::closefile(const bool store_location/*=false*/) { file.sync(); file.close(); diff --git a/Marlin/src/sd/cardreader.h b/Marlin/src/sd/cardreader.h index 3b7b7debcf6c..4baaa73e1a4a 100644 --- a/Marlin/src/sd/cardreader.h +++ b/Marlin/src/sd/cardreader.h @@ -128,6 +128,12 @@ class CardReader { static void autofile_cancel() { autofile_index = 0; } #endif + #if ENABLED(ONE_CLICK_PRINT) + static bool one_click_check(); // Check for the newest file and prompt to run it. + static void diveToNewestFile(MediaFile parent, uint32_t &compareDateTime, MediaFile &outdir, char * const outname); + static bool selectNewestFile(); + #endif + // Basic file ops static void openFileRead(const char * const path, const uint8_t subcall=0); static void openFileWrite(const char * const path); diff --git a/buildroot/share/PlatformIO/scripts/common-dependencies.h b/buildroot/share/PlatformIO/scripts/common-dependencies.h index 4438b4efe189..c75d9a3d675a 100644 --- a/buildroot/share/PlatformIO/scripts/common-dependencies.h +++ b/buildroot/share/PlatformIO/scripts/common-dependencies.h @@ -104,6 +104,9 @@ #if ENABLED(AUTO_BED_LEVELING_UBL) #define HAS_MENU_UBL #endif + #if ENABLED(ONE_CLICK_PRINT) + #define HAS_MENU_ONE_CLICK_PRINT + #endif #endif #if HAS_GRAPHICAL_TFT diff --git a/buildroot/tests/mks_tinybee b/buildroot/tests/mks_tinybee index 9dcc33ede7c5..0351946d0aea 100755 --- a/buildroot/tests/mks_tinybee +++ b/buildroot/tests/mks_tinybee @@ -25,8 +25,8 @@ opt_set MOTHERBOARD BOARD_MKS_TINYBEE \ LCD_INFO_SCREEN_STYLE 0 \ DISPLAY_CHARSET_HD44780 WESTERN \ NEOPIXEL_TYPE NEO_RGB -opt_enable FYSETC_MINI_12864_2_1 SDSUPPORT -opt_enable LED_CONTROL_MENU LED_USER_PRESET_STARTUP LED_COLOR_PRESETS NEOPIXEL_LED +opt_enable FYSETC_MINI_12864_2_1 SDSUPPORT ONE_CLICK_PRINT NO_SD_AUTOSTART \ + NEOPIXEL_LED LED_CONTROL_MENU LED_USER_PRESET_STARTUP LED_COLOR_PRESETS exec_test $1 $2 "MKS TinyBee with NeoPixel LCD, SD and Speaker" "$3" # cleanup diff --git a/ini/features.ini b/ini/features.ini index 17d2ece04a05..86e7d2e396bd 100644 --- a/ini/features.ini +++ b/ini/features.ini @@ -81,6 +81,7 @@ HAS_MENU_LED = build_src_filter=+ HAS_MENU_MIXER = build_src_filter=+ HAS_MENU_MMU2 = build_src_filter=+ +HAS_MENU_ONE_CLICK_PRINT = build_src_filter=+ HAS_MENU_PASSWORD = build_src_filter=+ HAS_MENU_POWER_MONITOR = build_src_filter=+ HAS_MENU_CUTTER = build_src_filter=+ From 46e8b9cad918aa24595983d49df8498d5f7b794c Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 14 May 2023 23:58:31 -0500 Subject: [PATCH 180/427] =?UTF-8?q?=F0=9F=94=A7=20Disable=20FT=20Motion=20?= =?UTF-8?q?by=20default?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 278853ac609e..587a368301dc 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -1112,7 +1112,7 @@ */ //#define FT_MOTION #if ENABLED(FT_MOTION) - #define FTM_DEFAULT_MODE ftMotionMode_ENABLED // Default mode of fixed time control. (Enums in ft_types.h) + #define FTM_DEFAULT_MODE ftMotionMode_DISABLED // Default mode of fixed time control. (Enums in ft_types.h) #define FTM_DEFAULT_DYNFREQ_MODE dynFreqMode_DISABLED // Default mode of dynamic frequency calculation. (Enums in ft_types.h) #define FTM_SHAPING_DEFAULT_X_FREQ 37.0f // (Hz) Default peak frequency used by input shapers. #define FTM_SHAPING_DEFAULT_Y_FREQ 37.0f // (Hz) Default peak frequency used by input shapers. @@ -1124,26 +1124,26 @@ /** * Advanced configuration */ - #define FTM_BATCH_SIZE 100 // Batch size for trajectory generation; + #define FTM_BATCH_SIZE 100 // Batch size for trajectory generation; // half the window size for Ulendo FBS. - #define FTM_FS 1000 // (Hz) Frequency for trajectory generation. (1 / FTM_TS) - #define FTM_TS 0.001f // (s) Time step for trajectory generation. (1 / FTM_FS) - #define FTM_STEPPER_FS 20000 // (Hz) Frequency for stepper I/O update. + #define FTM_FS 1000 // (Hz) Frequency for trajectory generation. (1 / FTM_TS) + #define FTM_TS 0.001f // (s) Time step for trajectory generation. (1 / FTM_FS) + #define FTM_STEPPER_FS 20000 // (Hz) Frequency for stepper I/O update. #define FTM_MIN_TICKS ((STEPPER_TIMER_RATE) / (FTM_STEPPER_FS)) // Minimum stepper ticks between steps. - #define FTM_MIN_SHAPE_FREQ 10 // Minimum shaping frequency. - #define FTM_ZMAX 100 // Maximum delays for shaping functions (even numbers only!). + #define FTM_MIN_SHAPE_FREQ 10 // Minimum shaping frequency. + #define FTM_ZMAX 100 // Maximum delays for shaping functions (even numbers only!). // Calculate as: // 1/2 * (FTM_FS / FTM_MIN_SHAPE_FREQ) for ZV. // (FTM_FS / FTM_MIN_SHAPE_FREQ) for ZVD, MZV. // 3/2 * (FTM_FS / FTM_MIN_SHAPE_FREQ) for 2HEI. // 2 * (FTM_FS / FTM_MIN_SHAPE_FREQ) for 3HEI. - #define FTM_STEPS_PER_UNIT_TIME 20 // Interpolated stepper commands per unit time. + #define FTM_STEPS_PER_UNIT_TIME 20 // Interpolated stepper commands per unit time. // Calculate as (FTM_STEPPER_FS / FTM_FS). - #define FTM_CTS_COMPARE_VAL 10 // Comparison value used in interpolation algorithm. + #define FTM_CTS_COMPARE_VAL 10 // Comparison value used in interpolation algorithm. // Calculate as (FTM_STEPS_PER_UNIT_TIME / 2). // These values may be configured to adjust duration of loop(). - #define FTM_STEPS_PER_LOOP 60 // Number of stepper commands to generate each loop(). - #define FTM_POINTS_PER_LOOP 100 // Number of trajectory points to generate each loop(). + #define FTM_STEPS_PER_LOOP 60 // Number of stepper commands to generate each loop(). + #define FTM_POINTS_PER_LOOP 100 // Number of trajectory points to generate each loop(). // This value may be configured to adjust duration to consume the command buffer. // Try increasing this value if stepper motion is not smooth. From 99e38c40be66e6e36d05580d80d1bcaf43f71ee6 Mon Sep 17 00:00:00 2001 From: Andrew <18502096+classicrocker883@users.noreply.github.com> Date: Mon, 15 May 2023 17:24:36 -0400 Subject: [PATCH 181/427] =?UTF-8?q?=F0=9F=A9=B9=20Ensure=20pin=5Fis=5Fprot?= =?UTF-8?q?ected=20is=20defined=20(#25829)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/config/M43.cpp | 2 +- Marlin/src/gcode/control/M42.cpp | 3 ++- Marlin/src/pins/pinsDebug.h | 2 ++ 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Marlin/src/gcode/config/M43.cpp b/Marlin/src/gcode/config/M43.cpp index 6bd78c68ff24..91db87a1d245 100644 --- a/Marlin/src/gcode/config/M43.cpp +++ b/Marlin/src/gcode/config/M43.cpp @@ -25,7 +25,7 @@ #if ENABLED(PINS_DEBUGGING) #include "../gcode.h" -#include "../../MarlinCore.h" // for pin_is_protected +#include "../../MarlinCore.h" // for pin_is_protected, wait_for_user #include "../../pins/pinsDebug.h" #include "../../module/endstops.h" diff --git a/Marlin/src/gcode/control/M42.cpp b/Marlin/src/gcode/control/M42.cpp index cf2c218e9259..6e75ffd4e75c 100644 --- a/Marlin/src/gcode/control/M42.cpp +++ b/Marlin/src/gcode/control/M42.cpp @@ -25,7 +25,6 @@ #if ENABLED(DIRECT_PIN_CONTROL) #include "../gcode.h" -#include "../../MarlinCore.h" // for pin_is_protected #if HAS_FAN #include "../../module/temperature.h" @@ -38,6 +37,8 @@ #define OUTPUT_OPEN_DRAIN OUTPUT_OPEN_DRAIN #endif +bool pin_is_protected(const pin_t pin); + void protected_pin_err() { SERIAL_ERROR_MSG(STR_ERR_PROTECTED_PIN); } diff --git a/Marlin/src/pins/pinsDebug.h b/Marlin/src/pins/pinsDebug.h index cce3799981a4..3219b1b7a243 100644 --- a/Marlin/src/pins/pinsDebug.h +++ b/Marlin/src/pins/pinsDebug.h @@ -174,6 +174,8 @@ const PinInfo pin_array[] PROGMEM = { #define M43_NEVER_TOUCH(Q) false #endif +bool pin_is_protected(const pin_t pin); + static void print_input_or_output(const bool isout) { SERIAL_ECHOF(isout ? F("Output ") : F("Input ")); } From dd184cf3c28748b607ba06a6117c4e8425a74e46 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Tue, 16 May 2023 00:20:38 +0000 Subject: [PATCH 182/427] [cron] Bump distribution date (2023-05-16) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 1628f16bd2b9..153a4c3be239 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-15" +//#define STRING_DISTRIBUTION_DATE "2023-05-16" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index d8d693d9c4d3..22e56dd2f4cb 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-15" + #define STRING_DISTRIBUTION_DATE "2023-05-16" #endif /** From 6e5f41fe6b996e074b042c6ac521475b8e8aab91 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 15 May 2023 19:48:30 -0500 Subject: [PATCH 183/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Ser?= =?UTF-8?q?ial=20ternary=20args,=20etc.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/serial.h | 4 ++-- Marlin/src/feature/bedlevel/ubl/ubl.cpp | 2 +- Marlin/src/feature/encoder_i2c.cpp | 2 +- Marlin/src/gcode/config/M43.cpp | 2 +- Marlin/src/gcode/feature/trinamic/M906.cpp | 1 - Marlin/src/gcode/host/M114.cpp | 8 ++------ Marlin/src/lcd/e3v2/proui/dwin_defines.h | 1 - Marlin/src/module/planner.cpp | 1 + Marlin/src/module/temperature.cpp | 2 +- 9 files changed, 9 insertions(+), 14 deletions(-) diff --git a/Marlin/src/core/serial.h b/Marlin/src/core/serial.h index 475761216c69..62e1294e0468 100644 --- a/Marlin/src/core/serial.h +++ b/Marlin/src/core/serial.h @@ -292,7 +292,7 @@ inline void SERIAL_ECHO_F(EnsureDouble x, int digit=2) { SERIAL_IMPL.print(x, di #define SERIAL_ECHO_SP(C) serial_spaces(C) -#define SERIAL_ECHO_TERNARY(TF, PRE, ON, OFF, POST) serial_ternary(TF, F(PRE), F(ON), F(OFF), F(POST)) +#define SERIAL_ECHO_TERNARY(TF, PRE, ON, OFF, POST) serial_ternary(F(PRE), TF, F(ON), F(OFF), F(POST)) #if SERIAL_FLOAT_PRECISION #define SERIAL_DECIMAL(V) SERIAL_PRINT(V, SERIAL_FLOAT_PRECISION) @@ -327,7 +327,7 @@ inline void serial_echolnpair(FSTR_P const fstr, T v) { serial_echolnpair_P(FTOP void serial_echo_start(); void serial_error_start(); -inline void serial_ternary(const bool onoff, FSTR_P const pre, FSTR_P const on, FSTR_P const off, FSTR_P const post=nullptr) { +inline void serial_ternary(FSTR_P const pre, const bool onoff, FSTR_P const on, FSTR_P const off, FSTR_P const post=nullptr) { if (pre) serial_print(pre); if (onoff && on) serial_print(on); if (!onoff && off) serial_print(off); diff --git a/Marlin/src/feature/bedlevel/ubl/ubl.cpp b/Marlin/src/feature/bedlevel/ubl/ubl.cpp index b7ee6aeef8a2..ca519f86b49d 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl.cpp +++ b/Marlin/src/feature/bedlevel/ubl/ubl.cpp @@ -59,7 +59,7 @@ void unified_bed_leveling::report_current_mesh() { void unified_bed_leveling::report_state() { echo_name(); - serial_ternary(planner.leveling_active, F(" System v" UBL_VERSION " "), nullptr, F("in"), F("active\n")); + serial_ternary(F(" System v" UBL_VERSION " "), planner.leveling_active, nullptr, F("in"), F("active\n")); serial_delay(50); } diff --git a/Marlin/src/feature/encoder_i2c.cpp b/Marlin/src/feature/encoder_i2c.cpp index 092ce0f8b852..b1ff21cf92c7 100644 --- a/Marlin/src/feature/encoder_i2c.cpp +++ b/Marlin/src/feature/encoder_i2c.cpp @@ -232,7 +232,7 @@ bool I2CPositionEncoder::passes_test(const bool report) { if (report) { if (H != I2CPE_MAG_SIG_GOOD) SERIAL_ECHOPGM("Warning. "); SERIAL_CHAR(AXIS_CHAR(encoderAxis)); - serial_ternary(H == I2CPE_MAG_SIG_BAD, F(" axis "), F("magnetic strip "), F("encoder ")); + serial_ternary(F(" axis "), H == I2CPE_MAG_SIG_BAD, F("magnetic strip "), F("encoder ")); switch (H) { case I2CPE_MAG_SIG_GOOD: case I2CPE_MAG_SIG_MID: diff --git a/Marlin/src/gcode/config/M43.cpp b/Marlin/src/gcode/config/M43.cpp index 91db87a1d245..3b95ccd3bb1c 100644 --- a/Marlin/src/gcode/config/M43.cpp +++ b/Marlin/src/gcode/config/M43.cpp @@ -149,7 +149,7 @@ inline void servo_probe_test() { #endif SERIAL_ECHOLNPGM(". Probe " _PROBE_PREF "_PIN: ", PROBE_TEST_PIN); - serial_ternary(probe_hit_state, F(". " _PROBE_PREF "_ENDSTOP_HIT_STATE: "), F("HIGH"), F("LOW")); + serial_ternary(F(". " _PROBE_PREF "_ENDSTOP_HIT_STATE: "), probe_hit_state, F("HIGH"), F("LOW")); SERIAL_EOL(); SET_INPUT_PULLUP(PROBE_TEST_PIN); diff --git a/Marlin/src/gcode/feature/trinamic/M906.cpp b/Marlin/src/gcode/feature/trinamic/M906.cpp index b2cab135531c..b949200ad779 100644 --- a/Marlin/src/gcode/feature/trinamic/M906.cpp +++ b/Marlin/src/gcode/feature/trinamic/M906.cpp @@ -328,7 +328,6 @@ void GcodeSuite::M906_report(const bool forReplay/*=true*/) { say_M906(forReplay); SERIAL_ECHOLNPGM(" T7 E", stepperE7.getMilliamps()); #endif - SERIAL_EOL(); } #endif // HAS_TRINAMIC_CONFIG diff --git a/Marlin/src/gcode/host/M114.cpp b/Marlin/src/gcode/host/M114.cpp index e6e83ba6e598..3a75e687b846 100644 --- a/Marlin/src/gcode/host/M114.cpp +++ b/Marlin/src/gcode/host/M114.cpp @@ -128,9 +128,7 @@ void GcodeSuite::M114() { #if ENABLED(M114_DETAIL) if (parser.seen_test('D')) { - #if DISABLED(M114_LEGACY) - planner.synchronize(); - #endif + IF_DISABLED(M114_LEGACY, planner.synchronize()); report_current_position(); report_current_position_detail(); return; @@ -143,9 +141,7 @@ void GcodeSuite::M114() { #endif #endif - #if ENABLED(M114_REALTIME) - if (parser.seen_test('R')) { report_real_position(); return; } - #endif + TERN_(M114_REALTIME, if (parser.seen_test('R')) return report_real_position()); TERN_(M114_LEGACY, planner.synchronize()); report_current_position_projected(); diff --git a/Marlin/src/lcd/e3v2/proui/dwin_defines.h b/Marlin/src/lcd/e3v2/proui/dwin_defines.h index e87aedf31179..164fd00fe6da 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_defines.h +++ b/Marlin/src/lcd/e3v2/proui/dwin_defines.h @@ -29,7 +29,6 @@ */ //#define DEBUG_DWIN 1 -//#define NEED_HEX_PRINT 1 #if defined(__STM32F1__) || defined(STM32F1) #define DASH_REDRAW 1 diff --git a/Marlin/src/module/planner.cpp b/Marlin/src/module/planner.cpp index a9da48df0188..a2d7e6843beb 100644 --- a/Marlin/src/module/planner.cpp +++ b/Marlin/src/module/planner.cpp @@ -1929,6 +1929,7 @@ bool Planner::_populate_block( #endif #if HAS_W_AXIS " " STR_W ":", target.w, " (", dw, " steps)" + #endif #if HAS_EXTRUDERS " E:", target.e, " (", de, " steps)" #endif diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 685f5dab2f59..f785a683eb4a 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -3145,7 +3145,7 @@ void Temperature::init() { if (TERN0(REPORT_ADAPTIVE_FAN_SLOWING, DEBUGGING(INFO))) { const uint8_t fss7 = fan_speed_scaler[fan_index] & 0x80; if (fss7 ^ (scale & 0x80)) - serial_ternary(fss7, F("Adaptive Fan Slowing "), nullptr, F("de"), F("activated.\n")); + serial_ternary(F("Adaptive Fan Slowing "), fss7, nullptr, F("de"), F("activated.\n")); } fan_speed_scaler[fan_index] = scale; From 48496dfec14588e646788f5a7099b55093d90ad1 Mon Sep 17 00:00:00 2001 From: lukasradek Date: Tue, 16 May 2023 03:49:45 +0200 Subject: [PATCH 184/427] =?UTF-8?q?=E2=9C=8F=EF=B8=8F=20Fix=20pin=20debug?= =?UTF-8?q?=20ternary=20(#25832)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/NATIVE_SIM/pinsDebug.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/HAL/NATIVE_SIM/pinsDebug.h b/Marlin/src/HAL/NATIVE_SIM/pinsDebug.h index eeb8245641b4..9c53b4b0d9c9 100644 --- a/Marlin/src/HAL/NATIVE_SIM/pinsDebug.h +++ b/Marlin/src/HAL/NATIVE_SIM/pinsDebug.h @@ -38,7 +38,7 @@ // Active ADC function/mode/code values for PINSEL registers constexpr int8_t ADC_pin_mode(pin_t pin) { return -1; } -int8_t get_pin_mode(const pin_t pin) { return VALID_PIN(pin) 0 : -1; } +int8_t get_pin_mode(const pin_t pin) { return VALID_PIN(pin) ? 0 : -1; } bool GET_PINMODE(const pin_t pin) { const int8_t pin_mode = get_pin_mode(pin); From 25ddde0394361c23194c0f4a8f9777d389040af3 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 15 May 2023 22:00:15 -0500 Subject: [PATCH 185/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Cha?= =?UTF-8?q?nge=20Marlin=20DIR=20bits:=201=3DForward,=200=3DReverse=20(#257?= =?UTF-8?q?91)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/backlash.cpp | 10 +- Marlin/src/feature/runout.h | 2 +- Marlin/src/gcode/feature/ft_motion/M493.cpp | 13 +- Marlin/src/gcode/motion/G6.cpp | 11 +- Marlin/src/inc/SanityCheck.h | 8 +- Marlin/src/module/endstops.cpp | 18 +- Marlin/src/module/ft_motion.cpp | 57 ++--- Marlin/src/module/planner.cpp | 251 ++++++++------------ Marlin/src/module/planner.h | 2 +- Marlin/src/module/stepper.cpp | 222 ++++++++--------- Marlin/src/module/stepper.h | 2 +- 11 files changed, 266 insertions(+), 330 deletions(-) diff --git a/Marlin/src/feature/backlash.cpp b/Marlin/src/feature/backlash.cpp index 256488762a7d..8d180c7a4a3e 100644 --- a/Marlin/src/feature/backlash.cpp +++ b/Marlin/src/feature/backlash.cpp @@ -99,15 +99,15 @@ void Backlash::add_correction_steps(const int32_t &da, const int32_t &db, const LOOP_NUM_AXES(axis) { if (distance_mm[axis]) { - const bool reverse = dm[axis]; + const bool forward = dm[axis]; // When an axis changes direction, add axis backlash to the residual error if (changed_dir[axis]) - residual_error[axis] += (reverse ? -f_corr : f_corr) * distance_mm[axis] * planner.settings.axis_steps_per_mm[axis]; + residual_error[axis] += (forward ? f_corr : -f_corr) * distance_mm[axis] * planner.settings.axis_steps_per_mm[axis]; // Decide how much of the residual error to correct in this segment int32_t error_correction = residual_error[axis]; - if (reverse != (error_correction < 0)) + if (forward == (error_correction < 0)) error_correction = 0; // Don't take up any backlash in this segment, as it would subtract steps #ifdef BACKLASH_SMOOTHING_MM @@ -147,14 +147,14 @@ void Backlash::add_correction_steps(const int32_t &da, const int32_t &db, const int32_t Backlash::get_applied_steps(const AxisEnum axis) { if (axis >= NUM_AXES) return 0; - const bool reverse = last_direction_bits[axis]; + const bool forward = last_direction_bits[axis]; const int32_t residual_error_axis = residual_error[axis]; // At startup it is assumed the last move was forwards. So the applied // steps will always be a non-positive number. - if (!reverse) return -residual_error_axis; + if (forward) return -residual_error_axis; const float f_corr = float(correction) / all_on; const int32_t full_error_axis = -f_corr * distance_mm[axis] * planner.settings.axis_steps_per_mm[axis]; diff --git a/Marlin/src/feature/runout.h b/Marlin/src/feature/runout.h index e6ca9f78cdd9..e160f889050d 100644 --- a/Marlin/src/feature/runout.h +++ b/Marlin/src/feature/runout.h @@ -411,7 +411,7 @@ class FilamentSensorBase { // Only trigger on extrusion with XYZ movement to allow filament change and retract/recover. const uint8_t e = b->extruder; const int32_t steps = b->steps.e; - const float mm = (b->direction_bits.e ? -steps : steps) * planner.mm_per_step[E_AXIS_N(e)]; + const float mm = (b->direction_bits.e ? steps : -steps) * planner.mm_per_step[E_AXIS_N(e)]; if (e < NUM_RUNOUT_SENSORS) mm_countdown.runout[e] -= mm; #if ENABLED(FILAMENT_SWITCH_AND_MOTION) if (e < NUM_MOTION_SENSORS) mm_countdown.motion[e] -= mm; diff --git a/Marlin/src/gcode/feature/ft_motion/M493.cpp b/Marlin/src/gcode/feature/ft_motion/M493.cpp index 31e16a194d7a..f7b8f1e752cf 100644 --- a/Marlin/src/gcode/feature/ft_motion/M493.cpp +++ b/Marlin/src/gcode/feature/ft_motion/M493.cpp @@ -102,8 +102,10 @@ void GcodeSuite::M493() { } switch (val) { - case ftMotionMode_ENABLED: fxdTiCtrl.reset(); break; #if HAS_X_AXIS + //case ftMotionMode_ULENDO_FBS: + //case ftMotionMode_DISCTF: + // break; case ftMotionMode_ZV: case ftMotionMode_ZVD: case ftMotionMode_EI: @@ -114,9 +116,10 @@ void GcodeSuite::M493() { fxdTiCtrl.updateShapingA(); fxdTiCtrl.reset(); break; - //case ftMotionMode_ULENDO_FBS: - //case ftMotionMode_DISCTF: #endif + case ftMotionMode_ENABLED: + fxdTiCtrl.reset(); + break; default: break; } } @@ -195,7 +198,7 @@ void GcodeSuite::M493() { fxdTiCtrl.reset(); if (fxdTiCtrl.cfg_dynFreqMode) { SERIAL_ECHOPGM("Compensator base dynamic frequency (X/A axis) set to:"); } else { SERIAL_ECHOPGM("Compensator static frequency (X/A axis) set to: "); } - SERIAL_ECHO_F( fxdTiCtrl.cfg_baseFreq[0], 2 ); + SERIAL_ECHO_F(fxdTiCtrl.cfg_baseFreq[0], 2); SERIAL_ECHOLNPGM("."); } else { // Frequency out of range. @@ -243,7 +246,7 @@ void GcodeSuite::M493() { fxdTiCtrl.reset(); if (fxdTiCtrl.cfg_dynFreqMode) { SERIAL_ECHOPGM("Compensator base dynamic frequency (Y/B axis) set to:"); } else { SERIAL_ECHOPGM("Compensator static frequency (Y/B axis) set to: "); } - SERIAL_ECHO_F( fxdTiCtrl.cfg_baseFreq[1], 2 ); + SERIAL_ECHO_F(fxdTiCtrl.cfg_baseFreq[1], 2); SERIAL_ECHOLNPGM("."); } else { // Frequency out of range. diff --git a/Marlin/src/gcode/motion/G6.cpp b/Marlin/src/gcode/motion/G6.cpp index fb6281707b45..342741e6341b 100644 --- a/Marlin/src/gcode/motion/G6.cpp +++ b/Marlin/src/gcode/motion/G6.cpp @@ -38,10 +38,13 @@ void GcodeSuite::G6() { planner.last_page_step_rate = parser.value_ulong(); if (!DirectStepping::Config::DIRECTIONAL) { - if (parser.seen('X')) planner.last_page_dir.x = !!parser.value_byte(); - if (parser.seen('Y')) planner.last_page_dir.y = !!parser.value_byte(); - if (parser.seen('Z')) planner.last_page_dir.z = !!parser.value_byte(); - if (parser.seen('E')) planner.last_page_dir.e = !!parser.value_byte(); + #define PAGE_DIR_SET(N,A) do{ if (parser.seen(N)) planner.last_page_dir.A = !!parser.value_byte(); } while(0) + LOGICAL_AXIS_CODE( + PAGE_DIR_SET('E',E), + PAGE_DIR_SET('X',X), PAGE_DIR_SET('Y',Y), PAGE_DIR_SET('Z',Z), + PAGE_DIR_SET(AXIS4_NAME,I), PAGE_DIR_SET(AXIS5_NAME,J), PAGE_DIR_SET(AXIS6_NAME,K), + PAGE_DIR_SET(AXIS5_NAME,U), PAGE_DIR_SET(AXIS6_NAME,V), PAGE_DIR_SET(AXIS7_NAME,W) + ); } // No index means we just set the state diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 2a9fdde2dc02..67d11d93e076 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -4037,8 +4037,12 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." /** * Fixed-Time Motion limitations */ -#if ENABLED(FT_MOTION) && (NUM_AXES > 3 || E_STEPPERS > 1 || NUM_Z_STEPPERS > 1 || ANY(DUAL_X_CARRIAGE, HAS_SYNCED_X_STEPPERS, HAS_SYNCED_Y_STEPPERS, HAS_MULTI_EXTRUDER, MIXING_EXTRUDER)) - #error "FT_MOTION is currently limited to machines with 3 linear axes and a single extruder." +#if ENABLED(FT_MOTION) + #if NUM_AXES > 3 + #error "FT_MOTION is currently limited to machines with 3 linear axes." + #elif ENABLED(MIXING_EXTRUDER) + #error "FT_MOTION is incompatible with MIXING_EXTRUDER." + #endif #endif // Multi-Stepping Limit diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index 0a12e1041df9..a22c4f03817b 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -872,7 +872,7 @@ void Endstops::update() { #if HAS_X_AXIS if (stepper.axis_is_moving(X_AXIS)) { - if (stepper.motor_direction(X_AXIS_HEAD)) { // -direction + if (!stepper.motor_direction(X_AXIS_HEAD)) { // -direction #if USE_X_MIN || (X_SPI_SENSORLESS && X_HOME_TO_MIN) PROCESS_ENDSTOP_X(MIN); #if CORE_DIAG(XY, Y, MIN) @@ -905,7 +905,7 @@ void Endstops::update() { #if HAS_Y_AXIS if (stepper.axis_is_moving(Y_AXIS)) { - if (stepper.motor_direction(Y_AXIS_HEAD)) { // -direction + if (!stepper.motor_direction(Y_AXIS_HEAD)) { // -direction #if USE_Y_MIN || (Y_SPI_SENSORLESS && Y_HOME_TO_MIN) PROCESS_ENDSTOP_Y(MIN); #if CORE_DIAG(XY, X, MIN) @@ -938,7 +938,7 @@ void Endstops::update() { #if HAS_Z_AXIS if (stepper.axis_is_moving(Z_AXIS)) { - if (stepper.motor_direction(Z_AXIS_HEAD)) { // Z -direction. Gantry down, bed up. + if (!stepper.motor_direction(Z_AXIS_HEAD)) { // Z -direction. Gantry down, bed up. #if USE_Z_MIN || (Z_SPI_SENSORLESS && Z_HOME_TO_MIN) if ( TERN1(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, z_probe_enabled) @@ -983,7 +983,7 @@ void Endstops::update() { #if HAS_I_AXIS if (stepper.axis_is_moving(I_AXIS)) { - if (stepper.motor_direction(I_AXIS_HEAD)) { // -direction + if (!stepper.motor_direction(I_AXIS_HEAD)) { // -direction #if USE_I_MIN || (I_SPI_SENSORLESS && I_HOME_TO_MIN) PROCESS_ENDSTOP(I, MIN); #endif @@ -998,7 +998,7 @@ void Endstops::update() { #if HAS_J_AXIS if (stepper.axis_is_moving(J_AXIS)) { - if (stepper.motor_direction(J_AXIS_HEAD)) { // -direction + if (!stepper.motor_direction(J_AXIS_HEAD)) { // -direction #if USE_J_MIN || (J_SPI_SENSORLESS && J_HOME_TO_MIN) PROCESS_ENDSTOP(J, MIN); #endif @@ -1013,7 +1013,7 @@ void Endstops::update() { #if HAS_K_AXIS if (stepper.axis_is_moving(K_AXIS)) { - if (stepper.motor_direction(K_AXIS_HEAD)) { // -direction + if (!stepper.motor_direction(K_AXIS_HEAD)) { // -direction #if USE_K_MIN || (K_SPI_SENSORLESS && K_HOME_TO_MIN) PROCESS_ENDSTOP(K, MIN); #endif @@ -1028,7 +1028,7 @@ void Endstops::update() { #if HAS_U_AXIS if (stepper.axis_is_moving(U_AXIS)) { - if (stepper.motor_direction(U_AXIS_HEAD)) { // -direction + if (!stepper.motor_direction(U_AXIS_HEAD)) { // -direction #if USE_U_MIN || (U_SPI_SENSORLESS && U_HOME_TO_MIN) PROCESS_ENDSTOP(U, MIN); #endif @@ -1043,7 +1043,7 @@ void Endstops::update() { #if HAS_V_AXIS if (stepper.axis_is_moving(V_AXIS)) { - if (stepper.motor_direction(V_AXIS_HEAD)) { // -direction + if (!stepper.motor_direction(V_AXIS_HEAD)) { // -direction #if USE_V_MIN || (V_SPI_SENSORLESS && V_HOME_TO_MIN) PROCESS_ENDSTOP(V, MIN); #endif @@ -1058,7 +1058,7 @@ void Endstops::update() { #if HAS_W_AXIS if (stepper.axis_is_moving(W_AXIS)) { - if (stepper.motor_direction(W_AXIS_HEAD)) { // -direction + if (!stepper.motor_direction(W_AXIS_HEAD)) { // -direction #if USE_W_MIN || (W_SPI_SENSORLESS && W_HOME_TO_MIN) PROCESS_ENDSTOP(W, MIN); #endif diff --git a/Marlin/src/module/ft_motion.cpp b/Marlin/src/module/ft_motion.cpp index 97dae881f889..407296f0303d 100644 --- a/Marlin/src/module/ft_motion.cpp +++ b/Marlin/src/module/ft_motion.cpp @@ -422,9 +422,9 @@ void FxdTiCtrl::reset() { stepperCmdBuff_produceIdx = stepperCmdBuff_consumeIdx = 0; for (uint32_t i = 0U; i < (FTM_BATCH_SIZE); i++) { // Reset trajectory history - TERN_(HAS_X_AXIS, xd[i] = 0.0f); - TERN_(HAS_Y_AXIS, yd[i] = 0.0f); - TERN_(HAS_Z_AXIS, zd[i] = 0.0f); + TERN_(HAS_X_AXIS, xd[i] = 0.0f); + TERN_(HAS_Y_AXIS, yd[i] = 0.0f); + TERN_(HAS_Z_AXIS, zd[i] = 0.0f); TERN_(HAS_EXTRUDERS, ed[i] = 0.0f); } @@ -432,23 +432,26 @@ void FxdTiCtrl::reset() { batchRdy = batchRdyForInterp = false; runoutEna = false; - TERN_(HAS_X_AXIS, x_endPosn_prevBlock = 0.0f); - TERN_(HAS_Y_AXIS, y_endPosn_prevBlock = 0.0f); - TERN_(HAS_Z_AXIS, z_endPosn_prevBlock = 0.0f); + TERN_(HAS_X_AXIS, x_endPosn_prevBlock = 0.0f); + TERN_(HAS_Y_AXIS, y_endPosn_prevBlock = 0.0f); + TERN_(HAS_Z_AXIS, z_endPosn_prevBlock = 0.0f); TERN_(HAS_EXTRUDERS, e_endPosn_prevBlock = 0.0f); makeVector_idx = makeVector_idx_z1 = 0; makeVector_batchIdx = FTM_BATCH_SIZE; - TERN_(HAS_X_AXIS, x_steps = 0); - TERN_(HAS_Y_AXIS, y_steps = 0); - TERN_(HAS_Z_AXIS, z_steps = 0); + TERN_(HAS_X_AXIS, x_steps = 0); + TERN_(HAS_Y_AXIS, y_steps = 0); + TERN_(HAS_Z_AXIS, z_steps = 0); TERN_(HAS_EXTRUDERS, e_steps = 0); + interpIdx = interpIdx_z1 = 0; - TERN_(HAS_X_AXIS, x_dirState = stepDirState_NOT_SET); - TERN_(HAS_Y_AXIS, y_dirState = stepDirState_NOT_SET); - TERN_(HAS_Z_AXIS, z_dirState = stepDirState_NOT_SET); + + TERN_(HAS_X_AXIS, x_dirState = stepDirState_NOT_SET); + TERN_(HAS_Y_AXIS, y_dirState = stepDirState_NOT_SET); + TERN_(HAS_Z_AXIS, z_dirState = stepDirState_NOT_SET); TERN_(HAS_EXTRUDERS, e_dirState = stepDirState_NOT_SET); + nextStepTicks = FTM_MIN_TICKS; #if HAS_X_AXIS @@ -486,28 +489,28 @@ void FxdTiCtrl::loadBlockData(block_t * const current_block) { #if HAS_X_AXIS x_startPosn = x_endPosn_prevBlock; float x_moveDist = current_block->steps.a / planner.settings.axis_steps_per_mm[X_AXIS]; - if (direction.x) x_moveDist *= -1.0f; + if (!direction.x) x_moveDist *= -1.0f; x_Ratio = x_moveDist * oneOverLength; #endif #if HAS_Y_AXIS y_startPosn = y_endPosn_prevBlock; float y_moveDist = current_block->steps.b / planner.settings.axis_steps_per_mm[Y_AXIS]; - if (direction.y) y_moveDist *= -1.0f; + if (!direction.y) y_moveDist *= -1.0f; y_Ratio = y_moveDist * oneOverLength; #endif #if HAS_Z_AXIS z_startPosn = z_endPosn_prevBlock; float z_moveDist = current_block->steps.c / planner.settings.axis_steps_per_mm[Z_AXIS]; - if (direction.z) z_moveDist *= -1.0f; + if (!direction.z) z_moveDist *= -1.0f; z_Ratio = z_moveDist * oneOverLength; #endif #if HAS_EXTRUDERS e_startPosn = e_endPosn_prevBlock; float extrusion = current_block->steps.e / planner.settings.axis_steps_per_mm[E_AXIS_N(current_block->extruder)]; - if (direction.e) extrusion *= -1.0f; + if (!direction.e) extrusion *= -1.0f; e_Ratio = extrusion * oneOverLength; #endif @@ -568,31 +571,31 @@ void FxdTiCtrl::loadBlockData(block_t * const current_block) { // One less than (Accel + Coasting + Decel) datapoints max_intervals = N1 + N2 + N3 - 1U; - TERN_(HAS_X_AXIS, x_endPosn_prevBlock += x_moveDist); - TERN_(HAS_Y_AXIS, y_endPosn_prevBlock += y_moveDist); - TERN_(HAS_Z_AXIS, z_endPosn_prevBlock += z_moveDist); + TERN_(HAS_X_AXIS, x_endPosn_prevBlock += x_moveDist); + TERN_(HAS_Y_AXIS, y_endPosn_prevBlock += y_moveDist); + TERN_(HAS_Z_AXIS, z_endPosn_prevBlock += z_moveDist); TERN_(HAS_EXTRUDERS, e_endPosn_prevBlock += extrusion); } // Generate data points of the trajectory. void FxdTiCtrl::makeVector() { - float accel_k = 0.0f; // (mm/s^2) Acceleration K factor - float tau = (makeVector_idx + 1) * (FTM_TS); // (s) Time since start of block - float dist = 0.0f; // (mm) Distance traveled + float accel_k = 0.0f; // (mm/s^2) Acceleration K factor + float tau = (makeVector_idx + 1) * (FTM_TS); // (s) Time since start of block + float dist = 0.0f; // (mm) Distance traveled if (makeVector_idx < N1) { // Acceleration phase - dist = (f_s * tau) + (0.5f * accel_P * sq(tau)); // (mm) Distance traveled for acceleration phase - accel_k = accel_P; // (mm/s^2) Acceleration K factor from Accel phase + dist = (f_s * tau) + (0.5f * accel_P * sq(tau)); // (mm) Distance traveled for acceleration phase + accel_k = accel_P; // (mm/s^2) Acceleration K factor from Accel phase } else if (makeVector_idx >= N1 && makeVector_idx < (N1 + N2)) { // Coasting phase - dist = s_1e + F_P * (tau - N1 * (FTM_TS)); // (mm) Distance traveled for coasting phase + dist = s_1e + F_P * (tau - N1 * (FTM_TS)); // (mm) Distance traveled for coasting phase //accel_k = 0.0f; } else { // Deceleration phase - const float tau_ = tau - (N1 + N2) * (FTM_TS); // (s) Time since start of decel phase + const float tau_ = tau - (N1 + N2) * (FTM_TS); // (s) Time since start of decel phase dist = s_2e + F_P * tau_ + 0.5f * decel_P * sq(tau_); // (mm) Distance traveled for deceleration phase accel_k = decel_P; // (mm/s^2) Acceleration K factor from Decel phase } @@ -614,7 +617,7 @@ void FxdTiCtrl::makeVector() { } else { ed[makeVector_batchIdx] = new_raw_z1; - // Alternatively: coordArray_e[makeVector_batchIdx] = e_startDist + extrusion / (N1 + N2 + N3); + // Alternatively: ed[makeVector_batchIdx] = e_startPosn + (e_Ratio * dist) / (N1 + N2 + N3); } #endif diff --git a/Marlin/src/module/planner.cpp b/Marlin/src/module/planner.cpp index a2d7e6843beb..b0d0b3e353c2 100644 --- a/Marlin/src/module/planner.cpp +++ b/Marlin/src/module/planner.cpp @@ -169,7 +169,7 @@ float Planner::mm_per_step[DISTINCT_AXES]; // (mm) Millimeters per step #if ENABLED(DIRECT_STEPPING) uint32_t Planner::last_page_step_rate = 0; - xyze_bool_t Planner::last_page_dir{0}; + AxisBits Planner::last_page_dir; // = 0 #endif #if HAS_EXTRUDERS @@ -1887,67 +1887,56 @@ bool Planner::_populate_block( OPTARG(HAS_DIST_MM_ARG, const xyze_float_t &cart_dist_mm) , feedRate_t fr_mm_s, const uint8_t extruder, const PlannerHints &hints ) { - int32_t LOGICAL_AXIS_LIST( - de = target.e - position.e, - da = target.a - position.a, - db = target.b - position.b, - dc = target.c - position.c, - di = target.i - position.i, - dj = target.j - position.j, - dk = target.k - position.k, - du = target.u - position.u, - dv = target.v - position.v, - dw = target.w - position.w - ); + xyze_long_t dist = target - position; /* <-- add a slash to enable SERIAL_ECHOLNPGM( " _populate_block FR:", fr_mm_s, #if HAS_X_AXIS - " A:", target.a, " (", da, " steps)" + " A:", target.a, " (", dist.a, " steps)" #endif #if HAS_Y_AXIS - " B:", target.b, " (", db, " steps)" + " B:", target.b, " (", dist.b, " steps)" #endif #if HAS_Z_AXIS - " C:", target.c, " (", dc, " steps)" + " C:", target.c, " (", dist.c, " steps)" #endif #if HAS_I_AXIS - " " STR_I ":", target.i, " (", di, " steps)" + " " STR_I ":", target.i, " (", dist.i, " steps)" #endif #if HAS_J_AXIS - " " STR_J ":", target.j, " (", dj, " steps)" + " " STR_J ":", target.j, " (", dist.j, " steps)" #endif #if HAS_K_AXIS - " " STR_K ":", target.k, " (", dk, " steps)" + " " STR_K ":", target.k, " (", dist.k, " steps)" #endif #if HAS_U_AXIS - " " STR_U ":", target.u, " (", du, " steps)" + " " STR_U ":", target.u, " (", dist.u, " steps)" #endif #if HAS_V_AXIS - " " STR_V ":", target.v, " (", dv, " steps)" + " " STR_V ":", target.v, " (", dist.v, " steps)" #endif #if HAS_W_AXIS - " " STR_W ":", target.w, " (", dw, " steps)" + " " STR_W ":", target.w, " (", dist.w, " steps)" #endif #if HAS_EXTRUDERS - " E:", target.e, " (", de, " steps)" + " E:", target.e, " (", dist.e, " steps)" #endif ); //*/ #if EITHER(PREVENT_COLD_EXTRUSION, PREVENT_LENGTHY_EXTRUDE) - if (de) { + if (dist.e) { #if ENABLED(PREVENT_COLD_EXTRUSION) if (thermalManager.tooColdToExtrude(extruder)) { position.e = target.e; // Behave as if the move really took place, but ignore E part TERN_(HAS_POSITION_FLOAT, position_float.e = target_float.e); - de = 0; // no difference + dist.e = 0; // no difference SERIAL_ECHO_MSG(STR_ERR_COLD_EXTRUDE_STOP); } #endif // PREVENT_COLD_EXTRUSION #if ENABLED(PREVENT_LENGTHY_EXTRUDE) - const float e_steps = ABS(de * e_factor[extruder]); + const float e_steps = ABS(dist.e * e_factor[extruder]); const float max_e_steps = settings.axis_steps_per_mm[E_AXIS_N(extruder)] * (EXTRUDE_MAXLENGTH); if (e_steps > max_e_steps) { #if ENABLED(MIXING_EXTRUDER) @@ -1962,7 +1951,7 @@ bool Planner::_populate_block( if (ignore_e) { position.e = target.e; // Behave as if the move really took place, but ignore E part TERN_(HAS_POSITION_FLOAT, position_float.e = target_float.e); - de = 0; // no difference + dist.e = 0; // no difference SERIAL_ECHO_MSG(STR_ERR_LONG_EXTRUDE_STOP); } } @@ -1973,49 +1962,49 @@ bool Planner::_populate_block( // Compute direction bit-mask for this block AxisBits dm; #if ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) - dm.hx = (da < 0); // Save the toolhead's true direction in X - dm.hy = (db < 0); // ...and Y - TERN_(HAS_Z_AXIS, dm.z = (dc < 0)); + dm.hx = (dist.a > 0); // Save the toolhead's true direction in X + dm.hy = (dist.b > 0); // ...and Y + TERN_(HAS_Z_AXIS, dm.z = (dist.c > 0)); #endif #if IS_CORE #if CORE_IS_XY - dm.a = (da + db < 0); // Motor A direction - dm.b = (CORESIGN(da - db) < 0); // Motor B direction + dm.a = (dist.a + dist.b > 0); // Motor A direction + dm.b = (CORESIGN(dist.a - dist.b) > 0); // Motor B direction #elif CORE_IS_XZ - dm.hx = (da < 0); // Save the toolhead's true direction in X - dm.y = (db < 0); - dm.hz = (dc < 0); // ...and Z - dm.a = (da + dc < 0); // Motor A direction - dm.c = (CORESIGN(da - dc) < 0); // Motor C direction + dm.hx = (dist.a > 0); // Save the toolhead's true direction in X + dm.y = (dist.b > 0); + dm.hz = (dist.c > 0); // ...and Z + dm.a = (dist.a + dist.c > 0); // Motor A direction + dm.c = (CORESIGN(dist.a - dist.c) > 0); // Motor C direction #elif CORE_IS_YZ - dm.x = (da < 0); - dm.hy = (db < 0); // Save the toolhead's true direction in Y - dm.hz = (dc < 0); // ...and Z - dm.b = (db + dc < 0); // Motor B direction - dm.c = (CORESIGN(db - dc) < 0); // Motor C direction + dm.x = (dist.a > 0); + dm.hy = (dist.b > 0); // Save the toolhead's true direction in Y + dm.hz = (dist.c > 0); // ...and Z + dm.b = (dist.b + dist.c > 0); // Motor B direction + dm.c = (CORESIGN(dist.b - dist.c) > 0); // Motor C direction #endif #elif ENABLED(MARKFORGED_XY) - dm.a = (da + db < 0); // Motor A direction - dm.b = (db < 0); // Motor B direction + dm.a = (dist.a + dist.b > 0); // Motor A direction + dm.b = (dist.b > 0); // Motor B direction #elif ENABLED(MARKFORGED_YX) - dm.a = (da < 0); // Motor A direction - dm.b = (db + da < 0); // Motor B direction + dm.a = (dist.a > 0); // Motor A direction + dm.b = (dist.b + dist.a > 0); // Motor B direction #else XYZ_CODE( - dm.x = (da < 0), - dm.y = (db < 0), - dm.z = (dc < 0) + dm.x = (dist.a > 0), + dm.y = (dist.b > 0), + dm.z = (dist.c > 0) ); #endif SECONDARY_AXIS_CODE( - dm.i = (di < 0), dm.j = (dj < 0), dm.k = (dk < 0), - dm.u = (du < 0), dm.v = (dv < 0), dm.w = (dw < 0) + dm.i = (dist.i > 0), dm.j = (dist.j > 0), dm.k = (dist.k > 0), + dm.u = (dist.u > 0), dm.v = (dist.v > 0), dm.w = (dist.w > 0) ); #if HAS_EXTRUDERS - dm.e = (de < 0); - const float esteps_float = de * e_factor[extruder]; + dm.e = (dist.e > 0); + const float esteps_float = dist.e * e_factor[extruder]; const uint32_t esteps = ABS(esteps_float) + 0.5f; #else constexpr uint32_t esteps = 0; @@ -2061,21 +2050,21 @@ bool Planner::_populate_block( // See https://www.corexy.com/theory.html block->steps.set(NUM_AXIS_LIST( #if CORE_IS_XY - ABS(da + db), ABS(da - db), ABS(dc) + ABS(dist.a + dist.b), ABS(dist.a - dist.b), ABS(dist.c) #elif CORE_IS_XZ - ABS(da + dc), ABS(db), ABS(da - dc) + ABS(dist.a + dist.c), ABS(dist.b), ABS(dist.a - dist.c) #elif CORE_IS_YZ - ABS(da), ABS(db + dc), ABS(db - dc) + ABS(dist.a), ABS(dist.b + dist.c), ABS(dist.b - dist.c) #elif ENABLED(MARKFORGED_XY) - ABS(da + db), ABS(db), ABS(dc) + ABS(dist.a + dist.b), ABS(dist.b), ABS(dist.c) #elif ENABLED(MARKFORGED_YX) - ABS(da), ABS(db + da), ABS(dc) + ABS(dist.a), ABS(dist.b + dist.a), ABS(dist.c) #elif IS_SCARA - ABS(da), ABS(db), ABS(dc) + ABS(dist.a), ABS(dist.b), ABS(dist.c) #else // default non-h-bot planning - ABS(da), ABS(db), ABS(dc) + ABS(dist.a), ABS(dist.b), ABS(dist.c) #endif - , ABS(di), ABS(dj), ABS(dk), ABS(du), ABS(dv), ABS(dw) + , ABS(dist.i), ABS(dist.j), ABS(dist.k), ABS(dist.u), ABS(dist.v), ABS(dist.w) )); /** @@ -2090,104 +2079,82 @@ bool Planner::_populate_block( #if ANY(IS_CORE, MARKFORGED_XY, MARKFORGED_YX) struct { float x, y, z; } head; #endif - } steps_dist_mm; + } dist_mm; #if ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) - steps_dist_mm.head.x = da * mm_per_step[A_AXIS]; - steps_dist_mm.head.y = db * mm_per_step[B_AXIS]; - TERN_(HAS_Z_AXIS, steps_dist_mm.z = dc * mm_per_step[Z_AXIS]); + dist_mm.head.x = dist.a * mm_per_step[A_AXIS]; + dist_mm.head.y = dist.b * mm_per_step[B_AXIS]; + TERN_(HAS_Z_AXIS, dist_mm.z = dist.c * mm_per_step[Z_AXIS]); #endif #if IS_CORE #if CORE_IS_XY - steps_dist_mm.a = (da + db) * mm_per_step[A_AXIS]; - steps_dist_mm.b = CORESIGN(da - db) * mm_per_step[B_AXIS]; + dist_mm.a = (dist.a + dist.b) * mm_per_step[A_AXIS]; + dist_mm.b = CORESIGN(dist.a - dist.b) * mm_per_step[B_AXIS]; #elif CORE_IS_XZ - steps_dist_mm.head.x = da * mm_per_step[A_AXIS]; - steps_dist_mm.y = db * mm_per_step[Y_AXIS]; - steps_dist_mm.head.z = dc * mm_per_step[C_AXIS]; - steps_dist_mm.a = (da + dc) * mm_per_step[A_AXIS]; - steps_dist_mm.c = CORESIGN(da - dc) * mm_per_step[C_AXIS]; + dist_mm.head.x = dist.a * mm_per_step[A_AXIS]; + dist_mm.y = dist.b * mm_per_step[Y_AXIS]; + dist_mm.head.z = dist.c * mm_per_step[C_AXIS]; + dist_mm.a = (dist.a + dist.c) * mm_per_step[A_AXIS]; + dist_mm.c = CORESIGN(dist.a - dist.c) * mm_per_step[C_AXIS]; #elif CORE_IS_YZ - steps_dist_mm.x = da * mm_per_step[X_AXIS]; - steps_dist_mm.head.y = db * mm_per_step[B_AXIS]; - steps_dist_mm.head.z = dc * mm_per_step[C_AXIS]; - steps_dist_mm.b = (db + dc) * mm_per_step[B_AXIS]; - steps_dist_mm.c = CORESIGN(db - dc) * mm_per_step[C_AXIS]; + dist_mm.x = dist.a * mm_per_step[X_AXIS]; + dist_mm.head.y = dist.b * mm_per_step[B_AXIS]; + dist_mm.head.z = dist.c * mm_per_step[C_AXIS]; + dist_mm.b = (dist.b + dist.c) * mm_per_step[B_AXIS]; + dist_mm.c = CORESIGN(dist.b - dist.c) * mm_per_step[C_AXIS]; #endif #elif ENABLED(MARKFORGED_XY) - steps_dist_mm.a = (da - db) * mm_per_step[A_AXIS]; - steps_dist_mm.b = db * mm_per_step[B_AXIS]; + dist_mm.a = (dist.a - dist.b) * mm_per_step[A_AXIS]; + dist_mm.b = dist.b * mm_per_step[B_AXIS]; #elif ENABLED(MARKFORGED_YX) - steps_dist_mm.a = da * mm_per_step[A_AXIS]; - steps_dist_mm.b = (db - da) * mm_per_step[B_AXIS]; + dist_mm.a = dist.a * mm_per_step[A_AXIS]; + dist_mm.b = (dist.b - dist.a) * mm_per_step[B_AXIS]; #else XYZ_CODE( - steps_dist_mm.a = da * mm_per_step[A_AXIS], - steps_dist_mm.b = db * mm_per_step[B_AXIS], - steps_dist_mm.c = dc * mm_per_step[C_AXIS] + dist_mm.a = dist.a * mm_per_step[A_AXIS], + dist_mm.b = dist.b * mm_per_step[B_AXIS], + dist_mm.c = dist.c * mm_per_step[C_AXIS] ); #endif SECONDARY_AXIS_CODE( - steps_dist_mm.i = di * mm_per_step[I_AXIS], - steps_dist_mm.j = dj * mm_per_step[J_AXIS], - steps_dist_mm.k = dk * mm_per_step[K_AXIS], - steps_dist_mm.u = du * mm_per_step[U_AXIS], - steps_dist_mm.v = dv * mm_per_step[V_AXIS], - steps_dist_mm.w = dw * mm_per_step[W_AXIS] + dist_mm.i = dist.i * mm_per_step[I_AXIS], dist_mm.j = dist.j * mm_per_step[J_AXIS], dist_mm.k = dist.k * mm_per_step[K_AXIS], + dist_mm.u = dist.u * mm_per_step[U_AXIS], dist_mm.v = dist.v * mm_per_step[V_AXIS], dist_mm.w = dist.w * mm_per_step[W_AXIS] ); - TERN_(HAS_EXTRUDERS, steps_dist_mm.e = esteps_float * mm_per_step[E_AXIS_N(extruder)]); + TERN_(HAS_EXTRUDERS, dist_mm.e = esteps_float * mm_per_step[E_AXIS_N(extruder)]); - TERN_(LCD_SHOW_E_TOTAL, e_move_accumulator += steps_dist_mm.e); + TERN_(LCD_SHOW_E_TOTAL, e_move_accumulator += dist_mm.e); #if HAS_ROTATIONAL_AXES bool cartesian_move = hints.cartesian_move; #endif if (true NUM_AXIS_GANG( - && block->steps.a < MIN_STEPS_PER_SEGMENT, - && block->steps.b < MIN_STEPS_PER_SEGMENT, - && block->steps.c < MIN_STEPS_PER_SEGMENT, - && block->steps.i < MIN_STEPS_PER_SEGMENT, - && block->steps.j < MIN_STEPS_PER_SEGMENT, - && block->steps.k < MIN_STEPS_PER_SEGMENT, - && block->steps.u < MIN_STEPS_PER_SEGMENT, - && block->steps.v < MIN_STEPS_PER_SEGMENT, - && block->steps.w < MIN_STEPS_PER_SEGMENT + && block->steps.a < MIN_STEPS_PER_SEGMENT, && block->steps.b < MIN_STEPS_PER_SEGMENT, && block->steps.c < MIN_STEPS_PER_SEGMENT, + && block->steps.i < MIN_STEPS_PER_SEGMENT, && block->steps.j < MIN_STEPS_PER_SEGMENT, && block->steps.k < MIN_STEPS_PER_SEGMENT, + && block->steps.u < MIN_STEPS_PER_SEGMENT, && block->steps.v < MIN_STEPS_PER_SEGMENT, && block->steps.w < MIN_STEPS_PER_SEGMENT ) ) { - block->millimeters = TERN0(HAS_EXTRUDERS, ABS(steps_dist_mm.e)); + block->millimeters = TERN0(HAS_EXTRUDERS, ABS(dist_mm.e)); } else { if (hints.millimeters) block->millimeters = hints.millimeters; else { const xyze_pos_t displacement = LOGICAL_AXIS_ARRAY( - steps_dist_mm.e, + dist_mm.e, #if ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) - steps_dist_mm.head.x, - steps_dist_mm.head.y, - steps_dist_mm.z, + dist_mm.head.x, dist_mm.head.y, dist_mm.z, #elif CORE_IS_XZ - steps_dist_mm.head.x, - steps_dist_mm.y, - steps_dist_mm.head.z, + dist_mm.head.x, dist_mm.y, dist_mm.head.z, #elif CORE_IS_YZ - steps_dist_mm.x, - steps_dist_mm.head.y, - steps_dist_mm.head.z, + dist_mm.x, dist_mm.head.y, dist_mm.head.z, #else - steps_dist_mm.x, - steps_dist_mm.y, - steps_dist_mm.z, + dist_mm.x, dist_mm.y, dist_mm.z, #endif - steps_dist_mm.i, - steps_dist_mm.j, - steps_dist_mm.k, - steps_dist_mm.u, - steps_dist_mm.v, - steps_dist_mm.w + dist_mm.i, dist_mm.j, dist_mm.k, + dist_mm.u, dist_mm.v, dist_mm.w ); block->millimeters = get_move_distance(displacement OPTARG(HAS_ROTATIONAL_AXES, cartesian_move)); @@ -2202,7 +2169,7 @@ bool Planner::_populate_block( * A correction function is permitted to add steps to an axis, it * should *never* remove steps! */ - TERN_(BACKLASH_COMPENSATION, backlash.add_correction_steps(da, db, dc, dm, block)); + TERN_(BACKLASH_COMPENSATION, backlash.add_correction_steps(dist.a, dist.b, dist.c, dm, block)); } TERN_(HAS_EXTRUDERS, block->steps.e = esteps); @@ -2279,12 +2246,9 @@ bool Planner::_populate_block( #endif #if ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) SECONDARY_AXIS_CODE( - if (block->steps.i) stepper.enable_axis(I_AXIS), - if (block->steps.j) stepper.enable_axis(J_AXIS), - if (block->steps.k) stepper.enable_axis(K_AXIS), - if (block->steps.u) stepper.enable_axis(U_AXIS), - if (block->steps.v) stepper.enable_axis(V_AXIS), - if (block->steps.w) stepper.enable_axis(W_AXIS) + if (block->steps.i) stepper.enable_axis(I_AXIS), if (block->steps.j) stepper.enable_axis(J_AXIS), + if (block->steps.k) stepper.enable_axis(K_AXIS), if (block->steps.u) stepper.enable_axis(U_AXIS), + if (block->steps.v) stepper.enable_axis(V_AXIS), if (block->steps.w) stepper.enable_axis(W_AXIS) ); #endif @@ -2383,7 +2347,7 @@ bool Planner::_populate_block( #if ENABLED(FILAMENT_WIDTH_SENSOR) if (extruder == FILAMENT_SENSOR_EXTRUDER_NUM) // Only for extruder with filament sensor - filwidth.advance_e(steps_dist_mm.e); + filwidth.advance_e(dist_mm.e); #endif // Calculate and limit speed in mm/sec (linear) or degrees/sec (rotational) @@ -2393,7 +2357,7 @@ bool Planner::_populate_block( // Linear axes first with less logic LOOP_NUM_AXES(i) { - current_speed[i] = steps_dist_mm[i] * inverse_secs; + current_speed[i] = dist_mm[i] * inverse_secs; const feedRate_t cs = ABS(current_speed[i]), max_fr = settings.max_feedrate_mm_s[i]; if (cs > max_fr) NOMORE(speed_factor, max_fr / cs); @@ -2402,7 +2366,7 @@ bool Planner::_populate_block( // Limit speed on extruders, if any #if HAS_EXTRUDERS { - current_speed.e = steps_dist_mm.e * inverse_secs; + current_speed.e = dist_mm.e * inverse_secs; #if HAS_MIXER_SYNC_CHANNEL // Move all mixing extruders at the specified rate if (mixer.get_current_vtool() == MIXER_AUTORETRACT_TOOL) @@ -2519,9 +2483,9 @@ bool Planner::_populate_block( * * extruder_advance_K[extruder] : There is an advance factor set for this extruder. * - * de > 0 : Extruder is running forward (e.g., for "Wipe while retracting" (Slic3r) or "Combing" (Cura) moves) + * dist.e > 0 : Extruder is running forward (e.g., for "Wipe while retracting" (Slic3r) or "Combing" (Cura) moves) */ - use_advance_lead = esteps && extruder_advance_K[E_INDEX_N(extruder)] && de > 0; + use_advance_lead = esteps && extruder_advance_K[E_INDEX_N(extruder)] && dist.e > 0; if (use_advance_lead) { float e_D_ratio = (target_float.e - position_float.e) / @@ -2632,10 +2596,10 @@ bool Planner::_populate_block( #if HAS_DIST_MM_ARG cart_dist_mm #else - LOGICAL_AXIS_ARRAY(steps_dist_mm.e, - steps_dist_mm.x, steps_dist_mm.y, steps_dist_mm.z, - steps_dist_mm.i, steps_dist_mm.j, steps_dist_mm.k, - steps_dist_mm.u, steps_dist_mm.v, steps_dist_mm.w) + LOGICAL_AXIS_ARRAY(dist_mm.e, + dist_mm.x, dist_mm.y, dist_mm.z, + dist_mm.i, dist_mm.j, dist_mm.k, + dist_mm.u, dist_mm.v, dist_mm.w) #endif ; @@ -2804,7 +2768,7 @@ bool Planner::_populate_block( #ifndef TRAVEL_EXTRA_XYJERK #define TRAVEL_EXTRA_XYJERK 0 #endif - const float extra_xyjerk = TERN0(HAS_EXTRUDERS, de <= 0) ? TRAVEL_EXTRA_XYJERK : 0; + const float extra_xyjerk = TERN0(HAS_EXTRUDERS, dist.e <= 0) ? TRAVEL_EXTRA_XYJERK : 0; uint8_t limited = 0; TERN(HAS_LINEAR_E_JERK, LOOP_NUM_AXES, LOOP_LOGICAL_AXES)(i) { @@ -3239,16 +3203,11 @@ bool Planner::buffer_line(const xyze_pos_t &cart, const_feedRate_t fr_mm_s block->decelerate_after = block->step_event_count; // Will be set to last direction later if directional format. - block->direction_bits = 0; - - #define PAGE_UPDATE_DIR(AXIS) \ - if (!last_page_dir[_AXIS(AXIS)]) SBI(block->direction_bits, _AXIS(AXIS)); + block->direction_bits.reset(); if (!DirectStepping::Config::DIRECTIONAL) { - PAGE_UPDATE_DIR(X); - PAGE_UPDATE_DIR(Y); - PAGE_UPDATE_DIR(Z); - PAGE_UPDATE_DIR(E); + #define PAGE_UPDATE_DIR(AXIS) do{ if (last_page_dir.AXIS) block->direction_bits.AXIS = true; }while(0); + LOGICAL_AXIS_MAP(PAGE_UPDATE_DIR); } // If this is the first added movement, reload the delay, otherwise, cancel it. diff --git a/Marlin/src/module/planner.h b/Marlin/src/module/planner.h index eb0f072f4bf0..4b68c5f65634 100644 --- a/Marlin/src/module/planner.h +++ b/Marlin/src/module/planner.h @@ -417,7 +417,7 @@ class Planner { #if ENABLED(DIRECT_STEPPING) static uint32_t last_page_step_rate; // Last page step rate given - static xyze_bool_t last_page_dir; // Last page direction given + static AxisBits last_page_dir; // Last page direction given, where 1 represents forward or positive motion #endif #if HAS_EXTRUDERS diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index c811bf5e38c8..b23667b82015 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -383,111 +383,114 @@ xyze_int8_t Stepper::count_direction{0}; } #if HAS_SYNCED_X_STEPPERS - #define X_APPLY_DIR(v,Q) do{ X_DIR_WRITE(v); X2_DIR_WRITE(INVERT_DIR(X2_VS_X, v)); }while(0) + #define X_APPLY_DIR(FWD,Q) do{ X_DIR_WRITE(FWD); X2_DIR_WRITE(INVERT_DIR(X2_VS_X, FWD)); }while(0) #if ENABLED(X_DUAL_ENDSTOPS) - #define X_APPLY_STEP(v,Q) DUAL_ENDSTOP_APPLY_STEP(X,v) + #define X_APPLY_STEP(FWD,Q) DUAL_ENDSTOP_APPLY_STEP(X,FWD) #else - #define X_APPLY_STEP(v,Q) do{ X_STEP_WRITE(v); X2_STEP_WRITE(v); }while(0) + #define X_APPLY_STEP(FWD,Q) do{ X_STEP_WRITE(FWD); X2_STEP_WRITE(FWD); }while(0) #endif #elif ENABLED(DUAL_X_CARRIAGE) - #define X_APPLY_DIR(v,ALWAYS) do{ \ - if (extruder_duplication_enabled || ALWAYS) { X_DIR_WRITE(v); X2_DIR_WRITE((v) ^ idex_mirrored_mode); } \ - else if (last_moved_extruder) X2_DIR_WRITE(v); else X_DIR_WRITE(v); \ + #define X_APPLY_DIR(FWD,ALWAYS) do{ \ + if (extruder_duplication_enabled || ALWAYS) { X_DIR_WRITE(FWD); X2_DIR_WRITE((FWD) ^ idex_mirrored_mode); } \ + else if (last_moved_extruder) X2_DIR_WRITE(FWD); else X_DIR_WRITE(FWD); \ }while(0) - #define X_APPLY_STEP(v,ALWAYS) do{ \ - if (extruder_duplication_enabled || ALWAYS) { X_STEP_WRITE(v); X2_STEP_WRITE(v); } \ - else if (last_moved_extruder) X2_STEP_WRITE(v); else X_STEP_WRITE(v); \ + #define X_APPLY_STEP(FWD,ALWAYS) do{ \ + if (extruder_duplication_enabled || ALWAYS) { X_STEP_WRITE(FWD); X2_STEP_WRITE(FWD); } \ + else if (last_moved_extruder) X2_STEP_WRITE(FWD); else X_STEP_WRITE(FWD); \ }while(0) #elif HAS_X_AXIS - #define X_APPLY_DIR(v,Q) X_DIR_WRITE(v) - #define X_APPLY_STEP(v,Q) X_STEP_WRITE(v) + #define X_APPLY_DIR(FWD,Q) X_DIR_WRITE(FWD) + #define X_APPLY_STEP(FWD,Q) X_STEP_WRITE(FWD) #endif #if HAS_SYNCED_Y_STEPPERS - #define Y_APPLY_DIR(v,Q) do{ Y_DIR_WRITE(v); Y2_DIR_WRITE(INVERT_DIR(Y2_VS_Y, v)); }while(0) + #define Y_APPLY_DIR(FWD,Q) do{ Y_DIR_WRITE(FWD); Y2_DIR_WRITE(INVERT_DIR(Y2_VS_Y, FWD)); }while(0) #if ENABLED(Y_DUAL_ENDSTOPS) - #define Y_APPLY_STEP(v,Q) DUAL_ENDSTOP_APPLY_STEP(Y,v) + #define Y_APPLY_STEP(FWD,Q) DUAL_ENDSTOP_APPLY_STEP(Y,FWD) #else - #define Y_APPLY_STEP(v,Q) do{ Y_STEP_WRITE(v); Y2_STEP_WRITE(v); }while(0) + #define Y_APPLY_STEP(FWD,Q) do{ Y_STEP_WRITE(FWD); Y2_STEP_WRITE(FWD); }while(0) #endif #elif HAS_Y_AXIS - #define Y_APPLY_DIR(v,Q) Y_DIR_WRITE(v) - #define Y_APPLY_STEP(v,Q) Y_STEP_WRITE(v) + #define Y_APPLY_DIR(FWD,Q) Y_DIR_WRITE(FWD) + #define Y_APPLY_STEP(FWD,Q) Y_STEP_WRITE(FWD) #endif #if NUM_Z_STEPPERS == 4 - #define Z_APPLY_DIR(v,Q) do{ \ - Z_DIR_WRITE(v); Z2_DIR_WRITE(INVERT_DIR(Z2_VS_Z, v)); \ - Z3_DIR_WRITE(INVERT_DIR(Z3_VS_Z, v)); Z4_DIR_WRITE(INVERT_DIR(Z4_VS_Z, v)); \ + #define Z_APPLY_DIR(FWD,Q) do{ \ + Z_DIR_WRITE(FWD); Z2_DIR_WRITE(INVERT_DIR(Z2_VS_Z, FWD)); \ + Z3_DIR_WRITE(INVERT_DIR(Z3_VS_Z, FWD)); Z4_DIR_WRITE(INVERT_DIR(Z4_VS_Z, FWD)); \ }while(0) #if ENABLED(Z_MULTI_ENDSTOPS) - #define Z_APPLY_STEP(v,Q) QUAD_ENDSTOP_APPLY_STEP(Z,v) + #define Z_APPLY_STEP(FWD,Q) QUAD_ENDSTOP_APPLY_STEP(Z,FWD) #elif ENABLED(Z_STEPPER_AUTO_ALIGN) - #define Z_APPLY_STEP(v,Q) QUAD_SEPARATE_APPLY_STEP(Z,v) + #define Z_APPLY_STEP(FWD,Q) QUAD_SEPARATE_APPLY_STEP(Z,FWD) #else - #define Z_APPLY_STEP(v,Q) do{ Z_STEP_WRITE(v); Z2_STEP_WRITE(v); Z3_STEP_WRITE(v); Z4_STEP_WRITE(v); }while(0) + #define Z_APPLY_STEP(FWD,Q) do{ Z_STEP_WRITE(FWD); Z2_STEP_WRITE(FWD); Z3_STEP_WRITE(FWD); Z4_STEP_WRITE(FWD); }while(0) #endif #elif NUM_Z_STEPPERS == 3 - #define Z_APPLY_DIR(v,Q) do{ \ - Z_DIR_WRITE(v); Z2_DIR_WRITE(INVERT_DIR(Z2_VS_Z, v)); Z3_DIR_WRITE(INVERT_DIR(Z3_VS_Z, v)); \ + #define Z_APPLY_DIR(FWD,Q) do{ \ + Z_DIR_WRITE(FWD); Z2_DIR_WRITE(INVERT_DIR(Z2_VS_Z, FWD)); Z3_DIR_WRITE(INVERT_DIR(Z3_VS_Z, FWD)); \ }while(0) #if ENABLED(Z_MULTI_ENDSTOPS) - #define Z_APPLY_STEP(v,Q) TRIPLE_ENDSTOP_APPLY_STEP(Z,v) + #define Z_APPLY_STEP(FWD,Q) TRIPLE_ENDSTOP_APPLY_STEP(Z,FWD) #elif ENABLED(Z_STEPPER_AUTO_ALIGN) - #define Z_APPLY_STEP(v,Q) TRIPLE_SEPARATE_APPLY_STEP(Z,v) + #define Z_APPLY_STEP(FWD,Q) TRIPLE_SEPARATE_APPLY_STEP(Z,FWD) #else - #define Z_APPLY_STEP(v,Q) do{ Z_STEP_WRITE(v); Z2_STEP_WRITE(v); Z3_STEP_WRITE(v); }while(0) + #define Z_APPLY_STEP(FWD,Q) do{ Z_STEP_WRITE(FWD); Z2_STEP_WRITE(FWD); Z3_STEP_WRITE(FWD); }while(0) #endif #elif NUM_Z_STEPPERS == 2 - #define Z_APPLY_DIR(v,Q) do{ Z_DIR_WRITE(v); Z2_DIR_WRITE(INVERT_DIR(Z2_VS_Z, v)); }while(0) + #define Z_APPLY_DIR(FWD,Q) do{ Z_DIR_WRITE(FWD); Z2_DIR_WRITE(INVERT_DIR(Z2_VS_Z, FWD)); }while(0) #if ENABLED(Z_MULTI_ENDSTOPS) - #define Z_APPLY_STEP(v,Q) DUAL_ENDSTOP_APPLY_STEP(Z,v) + #define Z_APPLY_STEP(FWD,Q) DUAL_ENDSTOP_APPLY_STEP(Z,FWD) #elif ENABLED(Z_STEPPER_AUTO_ALIGN) - #define Z_APPLY_STEP(v,Q) DUAL_SEPARATE_APPLY_STEP(Z,v) + #define Z_APPLY_STEP(FWD,Q) DUAL_SEPARATE_APPLY_STEP(Z,FWD) #else - #define Z_APPLY_STEP(v,Q) do{ Z_STEP_WRITE(v); Z2_STEP_WRITE(v); }while(0) + #define Z_APPLY_STEP(FWD,Q) do{ Z_STEP_WRITE(FWD); Z2_STEP_WRITE(FWD); }while(0) #endif #elif HAS_Z_AXIS - #define Z_APPLY_DIR(v,Q) Z_DIR_WRITE(v) - #define Z_APPLY_STEP(v,Q) Z_STEP_WRITE(v) + #define Z_APPLY_DIR(FWD,Q) Z_DIR_WRITE(FWD) + #define Z_APPLY_STEP(FWD,Q) Z_STEP_WRITE(FWD) #endif #if HAS_I_AXIS - #define I_APPLY_DIR(v,Q) I_DIR_WRITE(v) - #define I_APPLY_STEP(v,Q) I_STEP_WRITE(v) + #define I_APPLY_DIR(FWD,Q) I_DIR_WRITE(FWD) + #define I_APPLY_STEP(FWD,Q) I_STEP_WRITE(FWD) #endif #if HAS_J_AXIS - #define J_APPLY_DIR(v,Q) J_DIR_WRITE(v) - #define J_APPLY_STEP(v,Q) J_STEP_WRITE(v) + #define J_APPLY_DIR(FWD,Q) J_DIR_WRITE(FWD) + #define J_APPLY_STEP(FWD,Q) J_STEP_WRITE(FWD) #endif #if HAS_K_AXIS - #define K_APPLY_DIR(v,Q) K_DIR_WRITE(v) - #define K_APPLY_STEP(v,Q) K_STEP_WRITE(v) + #define K_APPLY_DIR(FWD,Q) K_DIR_WRITE(FWD) + #define K_APPLY_STEP(FWD,Q) K_STEP_WRITE(FWD) #endif #if HAS_U_AXIS - #define U_APPLY_DIR(v,Q) U_DIR_WRITE(v) - #define U_APPLY_STEP(v,Q) U_STEP_WRITE(v) + #define U_APPLY_DIR(FWD,Q) U_DIR_WRITE(FWD) + #define U_APPLY_STEP(FWD,Q) U_STEP_WRITE(FWD) #endif #if HAS_V_AXIS - #define V_APPLY_DIR(v,Q) V_DIR_WRITE(v) - #define V_APPLY_STEP(v,Q) V_STEP_WRITE(v) + #define V_APPLY_DIR(FWD,Q) V_DIR_WRITE(FWD) + #define V_APPLY_STEP(FWD,Q) V_STEP_WRITE(FWD) #endif #if HAS_W_AXIS - #define W_APPLY_DIR(v,Q) W_DIR_WRITE(v) - #define W_APPLY_STEP(v,Q) W_STEP_WRITE(v) + #define W_APPLY_DIR(FWD,Q) W_DIR_WRITE(FWD) + #define W_APPLY_STEP(FWD,Q) W_STEP_WRITE(FWD) #endif -#define E0_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(0) : REV_E_DIR(0); }while(0) -#define E1_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(1) : REV_E_DIR(1); }while(0) -#define E2_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(2) : REV_E_DIR(2); }while(0) -#define E3_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(3) : REV_E_DIR(3); }while(0) -#define E4_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(4) : REV_E_DIR(4); }while(0) -#define E5_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(5) : REV_E_DIR(5); }while(0) -#define E6_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(6) : REV_E_DIR(6); }while(0) -#define E7_APPLY_DIR(REV) do{ (REV) ? FWD_E_DIR(7) : REV_E_DIR(7); }while(0) - -#if DISABLED(MIXING_EXTRUDER) - #define E_APPLY_STEP(v,Q) E_STEP_WRITE(stepper_extruder, v) +//#define E0_APPLY_DIR(FWD) do{ (FWD) ? FWD_E_DIR(0) : REV_E_DIR(0); }while(0) +//#define E1_APPLY_DIR(FWD) do{ (FWD) ? FWD_E_DIR(1) : REV_E_DIR(1); }while(0) +//#define E2_APPLY_DIR(FWD) do{ (FWD) ? FWD_E_DIR(2) : REV_E_DIR(2); }while(0) +//#define E3_APPLY_DIR(FWD) do{ (FWD) ? FWD_E_DIR(3) : REV_E_DIR(3); }while(0) +//#define E4_APPLY_DIR(FWD) do{ (FWD) ? FWD_E_DIR(4) : REV_E_DIR(4); }while(0) +//#define E5_APPLY_DIR(FWD) do{ (FWD) ? FWD_E_DIR(5) : REV_E_DIR(5); }while(0) +//#define E6_APPLY_DIR(FWD) do{ (FWD) ? FWD_E_DIR(6) : REV_E_DIR(6); }while(0) +//#define E7_APPLY_DIR(FWD) do{ (FWD) ? FWD_E_DIR(7) : REV_E_DIR(7); }while(0) + +#if ENABLED(MIXING_EXTRUDER) + #define E_APPLY_DIR(FWD,Q) do{ if (FWD) { MIXER_STEPPER_LOOP(j) FWD_E_DIR(j); } else { MIXER_STEPPER_LOOP(j) REV_E_DIR(j); } }while(0) +#else + #define E_APPLY_STEP(FWD,Q) E_STEP_WRITE(stepper_extruder, FWD) + #define E_APPLY_DIR(FWD,Q) do{ if (FWD) { FWD_E_DIR(stepper_extruder); } else { REV_E_DIR(stepper_extruder); } }while(0) #endif #define CYCLES_TO_NS(CYC) (1000UL * (CYC) / ((F_CPU) / 1000000)) @@ -602,16 +605,12 @@ void Stepper::disable_all_steppers() { } // Set a single axis direction based on the last set flags. -// A direction bit of "1" indicates reverse or negative motion. -#define SET_STEP_DIR(A) \ - if (motor_direction(_AXIS(A))) { \ - A##_APPLY_DIR(LOW, false); \ - count_direction[_AXIS(A)] = -1; \ - } \ - else { \ - A##_APPLY_DIR(HIGH, false); \ - count_direction[_AXIS(A)] = 1; \ - } +// A direction bit of "1" indicates forward or positive motion. +#define SET_STEP_DIR(A) do{ \ + const bool fwd = motor_direction(_AXIS(A)); \ + A##_APPLY_DIR(fwd, false); \ + count_direction[_AXIS(A)] = fwd ? 1 : -1; \ + }while(0) /** * Set the stepper direction of each axis @@ -621,36 +620,15 @@ void Stepper::disable_all_steppers() { * COREYZ: Y_AXIS=B_AXIS and Z_AXIS=C_AXIS */ void Stepper::apply_directions() { - DIR_WAIT_BEFORE(); - NUM_AXIS_CODE( + LOGICAL_AXIS_CODE( + SET_STEP_DIR(E), SET_STEP_DIR(X), SET_STEP_DIR(Y), SET_STEP_DIR(Z), // ABC SET_STEP_DIR(I), SET_STEP_DIR(J), SET_STEP_DIR(K), SET_STEP_DIR(U), SET_STEP_DIR(V), SET_STEP_DIR(W) ); - #if HAS_EXTRUDERS - // Because this is valid for the whole block we don't know - // what E steppers will step. Likely all. Set all. - if (motor_direction(E_AXIS)) { - #if ENABLED(MIXING_EXTRUDER) - MIXER_STEPPER_LOOP(j) REV_E_DIR(j); - #else - REV_E_DIR(stepper_extruder); - #endif - count_direction.e = -1; - } - else { - #if ENABLED(MIXING_EXTRUDER) - MIXER_STEPPER_LOOP(j) FWD_E_DIR(j); - #else - FWD_E_DIR(stepper_extruder); - #endif - count_direction.e = 1; - } - #endif // HAS_EXTRUDERS - DIR_WAIT_AFTER(); } @@ -1858,8 +1836,8 @@ void Stepper::pulse_phase_isr() { #if STEPPER_PAGE_FORMAT == SP_4x4D_128 #define PAGE_SEGMENT_UPDATE(AXIS, VALUE) do{ \ - if ((VALUE) < 7) dm[_AXIS(AXIS)] = true; \ - else if ((VALUE) > 7) dm[_AXIS(AXIS)] = false; \ + if ((VALUE) < 7) dm[_AXIS(AXIS)] = false; \ + else if ((VALUE) > 7) dm[_AXIS(AXIS)] = true; \ page_step_state.sd[_AXIS(AXIS)] = VALUE; \ page_step_state.bd[_AXIS(AXIS)] += VALUE; \ }while(0) @@ -1884,8 +1862,7 @@ void Stepper::pulse_phase_isr() { PAGE_SEGMENT_UPDATE(Z, high >> 4); PAGE_SEGMENT_UPDATE(E, high & 0xF); - if (dm != last_direction_bits) - set_directions(dm); + if (dm != last_direction_bits) set_directions(dm); } break; @@ -2409,29 +2386,16 @@ hal_timer_t Stepper::block_phase_isr() { if (la_active) { const uint32_t la_step_rate = la_advance_steps > current_block->final_adv_steps ? current_block->la_advance_rate : 0; if (la_step_rate != step_rate) { - const bool reverse_e = la_step_rate > step_rate; - la_interval = calc_timer_interval((reverse_e ? la_step_rate - step_rate : step_rate - la_step_rate) >> current_block->la_scaling); + const bool forward_e = la_step_rate < step_rate; + la_interval = calc_timer_interval((forward_e ? step_rate - la_step_rate : la_step_rate - step_rate) >> current_block->la_scaling); - if (reverse_e != motor_direction(E_AXIS)) { + if (forward_e != motor_direction(E_AXIS)) { last_direction_bits.toggle(E_AXIS); count_direction.e = -count_direction.e; DIR_WAIT_BEFORE(); - if (reverse_e) { - #if ENABLED(MIXING_EXTRUDER) - MIXER_STEPPER_LOOP(j) REV_E_DIR(j); - #else - REV_E_DIR(stepper_extruder); - #endif - } - else { - #if ENABLED(MIXING_EXTRUDER) - MIXER_STEPPER_LOOP(j) FWD_E_DIR(j); - #else - FWD_E_DIR(stepper_extruder); - #endif - } + E_APPLY_DIR(forward_e, false); DIR_WAIT_AFTER(); } @@ -2688,13 +2652,13 @@ hal_timer_t Stepper::block_phase_isr() { #if ENABLED(INPUT_SHAPING_X) if (shaping_x.enabled) { - const int64_t steps = current_block->direction_bits.x ? -int64_t(current_block->steps.x) : int64_t(current_block->steps.x); + const int64_t steps = current_block->direction_bits.x ? int64_t(current_block->steps.x) : -int64_t(current_block->steps.x); shaping_x.last_block_end_pos += steps; // If there are any remaining echos unprocessed, then direction change must // be delayed and processed in PULSE_PREP_SHAPING. This will cause half a step // to be missed, which will need recovering and this can be done through shaping_x.remainder. - shaping_x.forward = !current_block->direction_bits.x; + shaping_x.forward = current_block->direction_bits.x; if (!ShapingQueue::empty_x()) current_block->direction_bits.x = last_direction_bits.x; } #endif @@ -2702,9 +2666,9 @@ hal_timer_t Stepper::block_phase_isr() { // Y follows the same logic as X (but the comments aren't repeated) #if ENABLED(INPUT_SHAPING_Y) if (shaping_y.enabled) { - const int64_t steps = current_block->direction_bits.y ? -int64_t(current_block->steps.y) : int64_t(current_block->steps.y); + const int64_t steps = current_block->direction_bits.y ? int64_t(current_block->steps.y) : -int64_t(current_block->steps.y); shaping_y.last_block_end_pos += steps; - shaping_y.forward = !current_block->direction_bits.y; + shaping_y.forward = current_block->direction_bits.y; if (!ShapingQueue::empty_y()) current_block->direction_bits.y = last_direction_bits.y; } #endif @@ -3450,36 +3414,36 @@ void Stepper::report_positions() { #if HAS_Z_AXIS // Z is handled differently to update the stepper // counts (needed by Marlin for bed level probing). - const bool z_dir = TEST(command, FT_BIT_DIR_Z), + const bool z_fwd = TEST(command, FT_BIT_DIR_Z), z_step = TEST(command, FT_BIT_STEP_Z); #endif if (applyDir) { - TERN_(HAS_X_AXIS, X_DIR_WRITE(TEST(command, FT_BIT_DIR_X))); - TERN_(HAS_Y_AXIS, Y_DIR_WRITE(TEST(command, FT_BIT_DIR_Y))); - TERN_(HAS_Z_AXIS, Z_DIR_WRITE(z_dir)); - TERN_(HAS_EXTRUDERS, E0_DIR_WRITE(TEST(command, FT_BIT_DIR_E))); + TERN_(HAS_X_AXIS, X_APPLY_DIR(TEST(command, FT_BIT_DIR_X), false)); + TERN_(HAS_Y_AXIS, Y_APPLY_DIR(TEST(command, FT_BIT_DIR_Y), false)); + TERN_(HAS_Z_AXIS, Z_APPLY_DIR(z_fwd, false)); + TERN_(HAS_EXTRUDERS, E_APPLY_DIR(TEST(command, FT_BIT_DIR_E), false)); DIR_WAIT_AFTER(); } - TERN_(HAS_X_AXIS, X_STEP_WRITE(TEST(command, FT_BIT_STEP_X))); - TERN_(HAS_Y_AXIS, Y_STEP_WRITE(TEST(command, FT_BIT_STEP_Y))); - TERN_(HAS_Z_AXIS, Z_STEP_WRITE(z_step)); - TERN_(HAS_EXTRUDERS, E0_STEP_WRITE(TEST(command, FT_BIT_STEP_E))); + TERN_(HAS_X_AXIS, X_APPLY_STEP(TEST(command, FT_BIT_STEP_X), false)); + TERN_(HAS_Y_AXIS, Y_APPLY_STEP(TEST(command, FT_BIT_STEP_Y), false)); + TERN_(HAS_Z_AXIS, Z_APPLY_STEP(z_step, false)); + TERN_(HAS_EXTRUDERS, E_APPLY_STEP(TEST(command, FT_BIT_STEP_E), false)); START_TIMED_PULSE(); #if HAS_Z_AXIS // Update step counts - if (z_step) count_position.z += z_dir ? 1 : -1; + if (z_step) count_position.z += z_fwd ? 1 : -1; #endif AWAIT_HIGH_PULSE(); - X_STEP_WRITE(0); - TERN_(HAS_Y_AXIS, Y_STEP_WRITE(0)); - TERN_(HAS_Z_AXIS, Z_STEP_WRITE(0)); - TERN_(HAS_EXTRUDERS, E0_STEP_WRITE(0)); + TERN_(HAS_X_AXIS, X_APPLY_STEP(0, false)); + TERN_(HAS_Y_AXIS, Y_APPLY_STEP(0, false)); + TERN_(HAS_Z_AXIS, Z_APPLY_STEP(0, false)); + TERN_(HAS_EXTRUDERS, E_APPLY_STEP(0, false)); } // Stepper::fxdTiCtrl_stepper @@ -3565,7 +3529,7 @@ void Stepper::report_positions() { #define _ENABLE_AXIS(A) enable_axis(_AXIS(A)) #define _READ_DIR(AXIS) AXIS ##_DIR_READ() - #define _APPLY_DIR(AXIS, INVERT) AXIS ##_APPLY_DIR(INVERT, true) + #define _APPLY_DIR(AXIS, FWD) AXIS ##_APPLY_DIR(FWD, true) #if MINIMUM_STEPPER_PULSE #define STEP_PULSE_CYCLES ((MINIMUM_STEPPER_PULSE) * CYCLES_PER_MICROSECOND) diff --git a/Marlin/src/module/stepper.h b/Marlin/src/module/stepper.h index 134bee7ac657..a2c9861abc6b 100644 --- a/Marlin/src/module/stepper.h +++ b/Marlin/src/module/stepper.h @@ -524,7 +524,7 @@ class Stepper { // Quickly stop all steppers FORCE_INLINE static void quick_stop() { abort_current_block = true; } - // The direction of a single motor. A true result indicates reversed or negative motion. + // The direction of a single motor. A true result indicates forward or positive motion. FORCE_INLINE static bool motor_direction(const AxisEnum axis) { return last_direction_bits[axis]; } // The last movement direction was not null on the specified axis. Note that motor direction is not necessarily the same. From fadd60441e020e9dcdd53cb592a089e1a06d3189 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 16 May 2023 01:28:04 -0500 Subject: [PATCH 186/427] =?UTF-8?q?=F0=9F=A9=B9=20Improve=20edit=20menu=20?= =?UTF-8?q?rounding?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/menu/menu_item.h | 73 +++++++++++++++++---------------- Marlin/src/libs/numtostr.h | 2 +- 2 files changed, 38 insertions(+), 37 deletions(-) diff --git a/Marlin/src/lcd/menu/menu_item.h b/Marlin/src/lcd/menu/menu_item.h index 2005be8b5411..ecc1ac4047a7 100644 --- a/Marlin/src/lcd/menu/menu_item.h +++ b/Marlin/src/lcd/menu/menu_item.h @@ -79,10 +79,10 @@ template class TMenuEditItem : MenuEditItemBase { private: typedef typename NAME::type_t type_t; - static float scale(const_float_t value) { return NAME::scale(value); } - static float unscale(const_float_t value) { return NAME::unscale(value); } - static const char* to_string(const int32_t value) { return NAME::strfunc(unscale(value)); } - static void load(void *ptr, const int32_t value) { *((type_t*)ptr) = unscale(value); } + static int32_t scaleToEncoder(const type_t &value) { return NAME::scaleToEncoder(value); } + static type_t unscaleEncoder(const int32_t value) { return NAME::unscaleEncoder(value); } + static const char* to_string(const int32_t value) { return NAME::strfunc(unscaleEncoder(value)); } + static void load(void *ptr, const int32_t value) { *((type_t*)ptr) = unscaleEncoder(value); } public: FORCE_INLINE static void draw(const bool sel, const uint8_t row, FSTR_P const fstr, type_t * const data, ...) { MenuEditItemBase::draw(sel, row, fstr, NAME::strfunc(*(data))); @@ -101,9 +101,9 @@ class TMenuEditItem : MenuEditItemBase { const bool live=false // Callback during editing ) { // Make sure minv and maxv fit within int32_t - const int32_t minv = _MAX(scale(minValue), INT32_MIN), - maxv = _MIN(scale(maxValue), INT32_MAX); - goto_edit_screen(fstr, ptr, minv, maxv - minv, scale(*ptr) - minv, + const int32_t minv = _MAX(scaleToEncoder(minValue), INT32_MIN), + maxv = _MIN(scaleToEncoder(maxValue), INT32_MAX); + goto_edit_screen(fstr, ptr, minv, maxv - minv, scaleToEncoder(*ptr) - minv, edit_screen, callback, live); } }; @@ -119,9 +119,9 @@ class TMenuEditItem : MenuEditItemBase { * * struct MenuEditItemInfo_percent { * typedef uint8_t type_t; - * static float scale(const_float_t value) { return value * (100.f/255.f) +0.5f; } - * static float unscale(const_float_t value) { return value / (100.f/255.f) +0.5f; } - * static const char* strfunc(const_float_t value) { return ui8tostr4pctrj(_DOFIX(uint8_t,value)); } + * static int32_t scaleToEncoder(const type_t &value) { return value * (100.f/255.f) +0.5f; } + * static type_t unscaleEncoder(const int32_t value) { return type_t(value) / (100.f/255.f) +0.5f; } + * static const char* strfunc(const type_t &value) { return ui8tostr4pctrj(_DOFIX(uint8_t,value)); } * }; * typedef TMenuEditItem MenuItem_percent */ @@ -130,36 +130,37 @@ class TMenuEditItem : MenuEditItemBase { #define DEFINE_MENU_EDIT_ITEM_TYPE(NAME, TYPE, STRFUNC, SCALE, ETC...) \ struct MenuEditItemInfo_##NAME { \ typedef TYPE type_t; \ - static float scale(const_float_t value) { return value * (SCALE) ETC; } \ - static float unscale(const_float_t value) { return value / (SCALE) ETC; } \ - static const char* strfunc(const_float_t value) { return STRFUNC(_DOFIX(TYPE,value)); } \ + /* scale the given value to the encoder */ \ + static int32_t scaleToEncoder(const type_t &value) { return value * (SCALE) ETC; } \ + static type_t unscaleEncoder(const int32_t value) { return type_t(value) / (SCALE) ETC; } \ + static const char* strfunc(const type_t &value) { return STRFUNC(_DOFIX(TYPE,value)); } \ }; \ typedef TMenuEditItem MenuItem_##NAME // NAME TYPE STRFUNC SCALE ROUND -DEFINE_MENU_EDIT_ITEM_TYPE(percent ,uint8_t ,ui8tostr4pctrj , 100.f/255.f, +0.5f); // 100% right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(percent_3 ,uint8_t ,pcttostrpctrj , 1 ); // 100% right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(int3 ,int16_t ,i16tostr3rj , 1 ); // 123, -12 right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(int4 ,int16_t ,i16tostr4signrj , 1 ); // 1234, -123 right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(int8 ,int8_t ,i8tostr3rj , 1 ); // 123, -12 right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(uint8 ,uint8_t ,ui8tostr3rj , 1 ); // 123 right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(uint16_3 ,uint16_t ,ui16tostr3rj , 1 ); // 123 right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(uint16_4 ,uint16_t ,ui16tostr4rj , 0.1f ); // 1234 right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(uint16_5 ,uint16_t ,ui16tostr5rj , 0.01f ); // 12345 right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(float3 ,float ,ftostr3 , 1 ); // 123 right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(float42_52 ,float ,ftostr42_52 , 100 ); // _2.34, 12.34, -2.34 or 123.45, -23.45 -DEFINE_MENU_EDIT_ITEM_TYPE(float43 ,float ,ftostr43sign ,1000 ); // -1.234, _1.234, +1.234 -DEFINE_MENU_EDIT_ITEM_TYPE(float4 ,float ,ftostr4sign , 1 ); // 1234 right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(float5 ,float ,ftostr5rj , 1 ); // 12345 right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(float5_25 ,float ,ftostr5rj , 0.04f ); // 12345 right-justified (25 increment) -DEFINE_MENU_EDIT_ITEM_TYPE(float61 ,float ,ftostr61rj , 10 ); // 12345.6 right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(float72 ,float ,ftostr72rj , 100 ); // 12345.67 right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(float31sign ,float ,ftostr31sign , 10 ); // +12.3 -DEFINE_MENU_EDIT_ITEM_TYPE(float41sign ,float ,ftostr41sign , 10 ); // +123.4 -DEFINE_MENU_EDIT_ITEM_TYPE(float51sign ,float ,ftostr51sign , 10 ); // +1234.5 -DEFINE_MENU_EDIT_ITEM_TYPE(float52sign ,float ,ftostr52sign , 100 ); // +123.45 -DEFINE_MENU_EDIT_ITEM_TYPE(long5 ,uint32_t ,ftostr5rj , 0.01f ); // 12345 right-justified -DEFINE_MENU_EDIT_ITEM_TYPE(long5_25 ,uint32_t ,ftostr5rj , 0.04f ); // 12345 right-justified (25 increment) +DEFINE_MENU_EDIT_ITEM_TYPE(percent ,uint8_t ,ui8tostr4pctrj , 100.f/255.f, + 0.5f ); // 100% right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(percent_3 ,uint8_t ,pcttostrpctrj , 1 ); // 100% right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(int3 ,int16_t ,i16tostr3rj , 1 ); // 123, -12 right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(int4 ,int16_t ,i16tostr4signrj , 1 ); // 1234, -123 right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(int8 ,int8_t ,i8tostr3rj , 1 ); // 123, -12 right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(uint8 ,uint8_t ,ui8tostr3rj , 1 ); // 123 right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(uint16_3 ,uint16_t ,ui16tostr3rj , 1 ); // 123 right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(uint16_4 ,uint16_t ,ui16tostr4rj , 0.1f ); // 1234 right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(uint16_5 ,uint16_t ,ui16tostr5rj , 0.01f ); // 12345 right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(float3 ,float ,ftostr3rj , 1 ); // 123 right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(float42_52 ,float ,ftostr42_52 , 100 , + 0.001f ); // _2.34, 12.34, -2.34 or 123.45, -23.45 +DEFINE_MENU_EDIT_ITEM_TYPE(float43 ,float ,ftostr43sign ,1000 , + 0.0001f); // -1.234, _1.234, +1.234 +DEFINE_MENU_EDIT_ITEM_TYPE(float4 ,float ,ftostr4sign , 1 ); // 1234 right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(float5 ,float ,ftostr5rj , 1 ); // 12345 right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(float5_25 ,float ,ftostr5rj , 0.04f ); // 12345 right-justified (25 increment) +DEFINE_MENU_EDIT_ITEM_TYPE(float61 ,float ,ftostr61rj , 10 , + 0.01f ); // 12345.6 right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(float72 ,float ,ftostr72rj , 100 , + 0.001f ); // 12345.67 right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(float31sign ,float ,ftostr31sign , 10 , + 0.01f ); // +12.3 +DEFINE_MENU_EDIT_ITEM_TYPE(float41sign ,float ,ftostr41sign , 10 , + 0.01f ); // +123.4 +DEFINE_MENU_EDIT_ITEM_TYPE(float51sign ,float ,ftostr51sign , 10 , + 0.01f ); // +1234.5 +DEFINE_MENU_EDIT_ITEM_TYPE(float52sign ,float ,ftostr52sign , 100 , + 0.001f ); // +123.45 +DEFINE_MENU_EDIT_ITEM_TYPE(long5 ,uint32_t ,ftostr5rj , 0.01f ); // 12345 right-justified +DEFINE_MENU_EDIT_ITEM_TYPE(long5_25 ,uint32_t ,ftostr5rj , 0.04f ); // 12345 right-justified (25 increment) #if HAS_BED_PROBE #if Z_PROBE_OFFSET_RANGE_MIN >= -9 && Z_PROBE_OFFSET_RANGE_MAX <= 9 diff --git a/Marlin/src/libs/numtostr.h b/Marlin/src/libs/numtostr.h index 31e8db004884..f8af09ebeeca 100644 --- a/Marlin/src/libs/numtostr.h +++ b/Marlin/src/libs/numtostr.h @@ -120,7 +120,7 @@ const char* ftostr61rj(const_float_t x); const char* ftostr72rj(const_float_t x); // Convert float to rj string with 123 or -12 format -FORCE_INLINE const char* ftostr3(const_float_t x) { return i16tostr3rj(int16_t(x + (x < 0 ? -0.5f : 0.5f))); } +FORCE_INLINE const char* ftostr3rj(const_float_t x) { return i16tostr3rj(int16_t(x + (x < 0 ? -0.5f : 0.5f))); } #if ENABLED(LCD_DECIMAL_SMALL_XY) // Convert float to rj string with 1234, _123, 12.3, _1.2, -123, _-12, or -1.2 format From ed66f498eb713f59f14d000f8bfa550b34ce8528 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 16 May 2023 02:38:24 -0500 Subject: [PATCH 187/427] =?UTF-8?q?=F0=9F=9A=B8=20Fixed-Time=20Motion=20EE?= =?UTF-8?q?PROM=20and=20Menu=20(#25835)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 2 + Marlin/src/core/language.h | 1 + Marlin/src/gcode/feature/ft_motion/M493.cpp | 290 +++++++++++------- Marlin/src/gcode/gcode.h | 1 + .../ftdi_eve_touch_ui/language/language_en.h | 1 - Marlin/src/lcd/language/language_en.h | 17 + Marlin/src/lcd/menu/menu_motion.cpp | 136 ++++++++ Marlin/src/module/ft_motion.cpp | 66 ++-- Marlin/src/module/ft_motion.h | 68 +++- Marlin/src/module/ft_types.h | 4 +- Marlin/src/module/planner.cpp | 8 +- Marlin/src/module/settings.cpp | 47 ++- Marlin/src/module/stepper.cpp | 2 +- buildroot/tests/STM32F103RC_btt | 2 +- 14 files changed, 473 insertions(+), 172 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 587a368301dc..b68557cb289f 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -1148,6 +1148,8 @@ // This value may be configured to adjust duration to consume the command buffer. // Try increasing this value if stepper motion is not smooth. #define FTM_STEPPERCMD_BUFF_SIZE 1000 // Size of the stepper command buffers. + + //#define FT_MOTION_MENU // Provide a MarlinUI menu to set M493 parameters. #endif /** diff --git a/Marlin/src/core/language.h b/Marlin/src/core/language.h index c951012b6df2..388e7cd820e1 100644 --- a/Marlin/src/core/language.h +++ b/Marlin/src/core/language.h @@ -277,6 +277,7 @@ // Settings Report Strings #define STR_Z_AUTO_ALIGN "Z Auto-Align" #define STR_BACKLASH_COMPENSATION "Backlash compensation" +#define STR_FT_MOTION "Fixed-Time Motion" #define STR_S_SEG_PER_SEC "S" #define STR_DELTA_SETTINGS "Delta (L R H S XYZ ABC)" #define STR_SCARA_SETTINGS "SCARA" diff --git a/Marlin/src/gcode/feature/ft_motion/M493.cpp b/Marlin/src/gcode/feature/ft_motion/M493.cpp index f7b8f1e752cf..83c6a9a5dacb 100644 --- a/Marlin/src/gcode/feature/ft_motion/M493.cpp +++ b/Marlin/src/gcode/feature/ft_motion/M493.cpp @@ -28,26 +28,109 @@ #include "../../../module/ft_motion.h" void say_shaping() { - SERIAL_ECHO_TERNARY(fxdTiCtrl.cfg_mode, "Fixed time controller ", "en", "dis", "abled"); - if (fxdTiCtrl.cfg_mode == ftMotionMode_DISABLED || fxdTiCtrl.cfg_mode == ftMotionMode_ENABLED) { - SERIAL_ECHOLNPGM("."); - return; - } + // FT Enabled + SERIAL_ECHO_TERNARY(fxdTiCtrl.cfg.mode, "Fixed-Time Motion ", "en", "dis", "abled"); + + // FT Shaping #if HAS_X_AXIS - SERIAL_ECHOPGM(" with "); - switch (fxdTiCtrl.cfg_mode) { - default: break; - //case ftMotionMode_ULENDO_FBS: SERIAL_ECHOLNPGM("Ulendo FBS."); return; - case ftMotionMode_ZV: SERIAL_ECHOLNPGM("ZV"); break; - case ftMotionMode_ZVD: SERIAL_ECHOLNPGM("ZVD"); break; - case ftMotionMode_EI: SERIAL_ECHOLNPGM("EI"); break; - case ftMotionMode_2HEI: SERIAL_ECHOLNPGM("2 Hump EI"); break; - case ftMotionMode_3HEI: SERIAL_ECHOLNPGM("3 Hump EI"); break; - case ftMotionMode_MZV: SERIAL_ECHOLNPGM("MZV"); break; - //case ftMotionMode_DISCTF: SERIAL_ECHOLNPGM("discrete transfer functions"); break; + if (fxdTiCtrl.cfg.mode > ftMotionMode_ENABLED) { + SERIAL_ECHOPGM(" with "); + switch (fxdTiCtrl.cfg.mode) { + default: break; + case ftMotionMode_ZV: SERIAL_ECHOPGM("ZV"); break; + case ftMotionMode_ZVD: SERIAL_ECHOPGM("ZVD"); break; + case ftMotionMode_EI: SERIAL_ECHOPGM("EI"); break; + case ftMotionMode_2HEI: SERIAL_ECHOPGM("2 Hump EI"); break; + case ftMotionMode_3HEI: SERIAL_ECHOPGM("3 Hump EI"); break; + case ftMotionMode_MZV: SERIAL_ECHOPGM("MZV"); break; + //case ftMotionMode_DISCTF: SERIAL_ECHOPGM("discrete transfer functions"); break; + //case ftMotionMode_ULENDO_FBS: SERIAL_ECHOPGM("Ulendo FBS."); return; + } + SERIAL_ECHOPGM(" shaping"); } - SERIAL_ECHOLNPGM(" shaping."); #endif + SERIAL_ECHOLNPGM("."); + + const bool z_based = TERN0(HAS_DYNAMIC_FREQ_MM, fxdTiCtrl.cfg.dynFreqMode == dynFreqMode_Z_BASED), + g_based = TERN0(HAS_DYNAMIC_FREQ_G, fxdTiCtrl.cfg.dynFreqMode == dynFreqMode_MASS_BASED), + dynamic = z_based || g_based; + + // FT Dynamic Frequency Mode + if (fxdTiCtrl.cfg.modeHasShaper()) { + #if HAS_DYNAMIC_FREQ + SERIAL_ECHOPGM("Dynamic Frequency Mode "); + switch (fxdTiCtrl.cfg.dynFreqMode) { + default: + case dynFreqMode_DISABLED: SERIAL_ECHOPGM("disabled"); break; + #if HAS_DYNAMIC_FREQ_MM + case dynFreqMode_Z_BASED: SERIAL_ECHOPGM("Z-based"); break; + #endif + #if HAS_DYNAMIC_FREQ_G + case dynFreqMode_MASS_BASED: SERIAL_ECHOPGM("Mass-based"); break; + #endif + } + SERIAL_ECHOLNPGM("."); + #endif + + #if HAS_X_AXIS + SERIAL_ECHO_TERNARY(dynamic, "X/A ", "base dynamic", "static", " compensator frequency: "); + SERIAL_ECHO_F(fxdTiCtrl.cfg.baseFreq[X_AXIS], 2); + SERIAL_ECHOPGM("Hz"); + #if HAS_DYNAMIC_FREQ + if (dynamic) { + SERIAL_ECHOPGM(" scaling: "); + SERIAL_ECHO_F(fxdTiCtrl.cfg.dynFreqK[X_AXIS], 8); + serial_ternary(F("Hz/"), z_based, F("mm"), F("g")); + } + #endif + SERIAL_EOL(); + #endif + + #if HAS_Y_AXIS + SERIAL_ECHO_TERNARY(dynamic, "Y/B ", "base dynamic", "static", " compensator frequency: "); + SERIAL_ECHO_F(fxdTiCtrl.cfg.baseFreq[Y_AXIS], 2); + SERIAL_ECHOLNPGM(" Hz"); + #if HAS_DYNAMIC_FREQ + if (dynamic) { + SERIAL_ECHOPGM(" scaling: "); + SERIAL_ECHO_F(fxdTiCtrl.cfg.dynFreqK[Y_AXIS], 8); + serial_ternary(F("Hz/"), z_based, F("mm"), F("g")); + } + #endif + SERIAL_EOL(); + #endif + } + + #if HAS_EXTRUDERS + SERIAL_ECHO_TERNARY(fxdTiCtrl.cfg.linearAdvEna, "Linear Advance ", "en", "dis", "abled"); + SERIAL_ECHOLNPGM(". Gain: "); SERIAL_ECHO_F(fxdTiCtrl.cfg.linearAdvK, 5); + #endif + +} + +void GcodeSuite::M493_report(const bool forReplay/*=true*/) { + report_heading_etc(forReplay, F(STR_FT_MOTION)); + const ft_config_t &c = fxdTiCtrl.cfg; + SERIAL_ECHOPGM(" M493 S", c.mode); + #if HAS_X_AXIS + SERIAL_ECHOPGM(" A", c.baseFreq[X_AXIS]); + #if HAS_Y_AXIS + SERIAL_ECHOPGM(" B", c.baseFreq[Y_AXIS]); + #endif + #endif + #if HAS_DYNAMIC_FREQ + SERIAL_ECHOPGM(" D", c.dynFreqMode); + #if HAS_X_AXIS + SERIAL_ECHOPGM(" F", c.dynFreqK[X_AXIS]); + #if HAS_Y_AXIS + SERIAL_ECHOPGM(" H", c.dynFreqK[Y_AXIS]); + #endif + #endif + #endif + #if HAS_EXTRUDERS + SERIAL_ECHOPGM(" P", c.linearAdvEna, " K", c.linearAdvK); + #endif + SERIAL_EOL(); } /** @@ -79,29 +162,36 @@ void say_shaping() { * H Set frequency scaling for the Y axis */ void GcodeSuite::M493() { + struct { bool update_n:1, update_a:1, reset_ft:1, report_h:1; } flag = { false }; + + if (!parser.seen_any()) flag.report_h = true; + // Parse 'S' mode parameter. if (parser.seenval('S')) { - const ftMotionMode_t val = (ftMotionMode_t)parser.value_byte(); - switch (val) { - case ftMotionMode_DISABLED: - case ftMotionMode_ENABLED: + const ftMotionMode_t oldmm = fxdTiCtrl.cfg.mode, + newmm = (ftMotionMode_t)parser.value_byte(); + switch (newmm) { #if HAS_X_AXIS + case ftMotionMode_ZV: case ftMotionMode_ZVD: case ftMotionMode_2HEI: case ftMotionMode_3HEI: case ftMotionMode_MZV: //case ftMotionMode_ULENDO_FBS: //case ftMotionMode_DISCTF: - fxdTiCtrl.cfg_mode = val; - say_shaping(); - break; #endif + case ftMotionMode_DISABLED: + case ftMotionMode_ENABLED: + fxdTiCtrl.cfg.mode = newmm; + flag.report_h = true; + break; default: SERIAL_ECHOLNPGM("?Invalid control mode [M] value."); return; } - switch (val) { + if (fxdTiCtrl.cfg.mode != oldmm) switch (newmm) { + default: break; #if HAS_X_AXIS //case ftMotionMode_ULENDO_FBS: //case ftMotionMode_DISCTF: @@ -112,15 +202,11 @@ void GcodeSuite::M493() { case ftMotionMode_2HEI: case ftMotionMode_3HEI: case ftMotionMode_MZV: - fxdTiCtrl.updateShapingN(fxdTiCtrl.cfg_baseFreq[0] OPTARG(HAS_Y_AXIS, fxdTiCtrl.cfg_baseFreq[1])); - fxdTiCtrl.updateShapingA(); - fxdTiCtrl.reset(); - break; + flag.update_n = flag.update_a = true; #endif case ftMotionMode_ENABLED: - fxdTiCtrl.reset(); + flag.reset_ft = true; break; - default: break; } } @@ -129,47 +215,44 @@ void GcodeSuite::M493() { // Pressure control (linear advance) parameter. if (parser.seen('P')) { const bool val = parser.value_bool(); - fxdTiCtrl.cfg_linearAdvEna = val; - SERIAL_ECHO_TERNARY(val, "Pressure control: Linear Advance ", "en", "dis", "abled.\n"); + fxdTiCtrl.cfg.linearAdvEna = val; + SERIAL_ECHO_TERNARY(val, "Linear Advance ", "en", "dis", "abled.\n"); } // Pressure control (linear advance) gain parameter. if (parser.seenval('K')) { const float val = parser.value_float(); if (val >= 0.0f) { - fxdTiCtrl.cfg_linearAdvK = val; - SERIAL_ECHOPGM("Pressure control: Linear Advance gain set to: "); - SERIAL_ECHO_F(val, 5); - SERIAL_ECHOLNPGM("."); - } - else { // Value out of range. - SERIAL_ECHOLNPGM("Pressure control: Linear Advance gain out of range."); + fxdTiCtrl.cfg.linearAdvK = val; + flag.report_h = true; } + else // Value out of range. + SERIAL_ECHOLNPGM("Linear Advance gain out of range."); } #endif // HAS_EXTRUDERS - #if HAS_Z_AXIS || HAS_EXTRUDERS + #if HAS_DYNAMIC_FREQ // Dynamic frequency mode parameter. if (parser.seenval('D')) { - if (WITHIN(fxdTiCtrl.cfg_mode, 10U, 19U)) { + if (fxdTiCtrl.cfg.modeHasShaper()) { const dynFreqMode_t val = dynFreqMode_t(parser.value_byte()); switch (val) { case dynFreqMode_DISABLED: - fxdTiCtrl.cfg_dynFreqMode = val; - SERIAL_ECHOLNPGM("Dynamic frequency mode disabled."); + fxdTiCtrl.cfg.dynFreqMode = val; + flag.report_h = true; break; - #if HAS_Z_AXIS + #if HAS_DYNAMIC_FREQ_MM case dynFreqMode_Z_BASED: - fxdTiCtrl.cfg_dynFreqMode = val; - SERIAL_ECHOLNPGM("Z-based Dynamic Frequency Mode."); + fxdTiCtrl.cfg.dynFreqMode = val; + flag.report_h = true; break; #endif - #if HAS_EXTRUDERS + #if HAS_DYNAMIC_FREQ_G case dynFreqMode_MASS_BASED: - fxdTiCtrl.cfg_dynFreqMode = val; - SERIAL_ECHOLNPGM("Mass-based Dynamic Frequency Mode."); + fxdTiCtrl.cfg.dynFreqMode = val; + flag.report_h = true; break; #endif default: @@ -178,58 +261,46 @@ void GcodeSuite::M493() { } } else { - SERIAL_ECHOLNPGM("Incompatible shaper for [D] Dynamic Frequency mode."); + SERIAL_ECHOLNPGM("?Wrong shaper for [D] Dynamic Frequency mode."); } } - #endif // HAS_Z_AXIS || HAS_EXTRUDERS + const bool modeUsesDynFreq = ( + TERN0(HAS_DYNAMIC_FREQ_MM, fxdTiCtrl.cfg.dynFreqMode == dynFreqMode_Z_BASED) + || TERN0(HAS_DYNAMIC_FREQ_G, fxdTiCtrl.cfg.dynFreqMode == dynFreqMode_MASS_BASED) + ); + + #endif // HAS_DYNAMIC_FREQ #if HAS_X_AXIS // Parse frequency parameter (X axis). if (parser.seenval('A')) { - if (WITHIN(fxdTiCtrl.cfg_mode, 10U, 19U)) { + if (fxdTiCtrl.cfg.modeHasShaper()) { const float val = parser.value_float(); - const bool frequencyInRange = WITHIN(val, FTM_MIN_SHAPE_FREQ, (FTM_FS) / 2); // TODO: Frequency minimum is dependent on the shaper used; the above check isn't always correct. - if (frequencyInRange) { - fxdTiCtrl.cfg_baseFreq[0] = val; - fxdTiCtrl.updateShapingN(fxdTiCtrl.cfg_baseFreq[0] OPTARG(HAS_Y_AXIS, fxdTiCtrl.cfg_baseFreq[1])); - fxdTiCtrl.reset(); - if (fxdTiCtrl.cfg_dynFreqMode) { SERIAL_ECHOPGM("Compensator base dynamic frequency (X/A axis) set to:"); } - else { SERIAL_ECHOPGM("Compensator static frequency (X/A axis) set to: "); } - SERIAL_ECHO_F(fxdTiCtrl.cfg_baseFreq[0], 2); - SERIAL_ECHOLNPGM("."); + if (WITHIN(val, FTM_MIN_SHAPE_FREQ, (FTM_FS) / 2)) { + fxdTiCtrl.cfg.baseFreq[X_AXIS] = val; + flag.update_n = flag.reset_ft = flag.report_h = true; } - else { // Frequency out of range. - SERIAL_ECHOLNPGM("Invalid [A] frequency value."); - } - } - else { // Mode doesn't use frequency. - SERIAL_ECHOLNPGM("Incompatible mode for [A] frequency."); + else // Frequency out of range. + SERIAL_ECHOLNPGM("Invalid [", AS_CHAR('A'), "] frequency value."); } + else // Mode doesn't use frequency. + SERIAL_ECHOLNPGM("Wrong mode for [", AS_CHAR('A'), "] frequency."); } - #if HAS_Z_AXIS || HAS_EXTRUDERS + #if HAS_DYNAMIC_FREQ // Parse frequency scaling parameter (X axis). if (parser.seenval('F')) { - const bool modeUsesDynFreq = ( - TERN0(HAS_Z_AXIS, fxdTiCtrl.cfg_dynFreqMode == dynFreqMode_Z_BASED) - || TERN0(HAS_EXTRUDERS, fxdTiCtrl.cfg_dynFreqMode == dynFreqMode_MASS_BASED) - ); - if (modeUsesDynFreq) { - const float val = parser.value_float(); - fxdTiCtrl.cfg_dynFreqK[0] = val; - SERIAL_ECHOPGM("Frequency scaling (X/A axis) set to: "); - SERIAL_ECHO_F(fxdTiCtrl.cfg_dynFreqK[0], 8); - SERIAL_ECHOLNPGM("."); - } - else { - SERIAL_ECHOLNPGM("Incompatible mode for [F] frequency scaling."); + fxdTiCtrl.cfg.dynFreqK[X_AXIS] = parser.value_float(); + flag.report_h = true; } + else + SERIAL_ECHOLNPGM("Wrong mode for [", AS_CHAR('F'), "] frequency scaling."); } - #endif // HAS_Z_AXIS || HAS_EXTRUDERS + #endif #endif // HAS_X_AXIS @@ -237,49 +308,40 @@ void GcodeSuite::M493() { // Parse frequency parameter (Y axis). if (parser.seenval('B')) { - if (WITHIN(fxdTiCtrl.cfg_mode, 10U, 19U)) { + if (fxdTiCtrl.cfg.modeHasShaper()) { const float val = parser.value_float(); - const bool frequencyInRange = WITHIN(val, FTM_MIN_SHAPE_FREQ, (FTM_FS) / 2); - if (frequencyInRange) { - fxdTiCtrl.cfg_baseFreq[1] = val; - fxdTiCtrl.updateShapingN(fxdTiCtrl.cfg_baseFreq[0] OPTARG(HAS_Y_AXIS, fxdTiCtrl.cfg_baseFreq[1])); - fxdTiCtrl.reset(); - if (fxdTiCtrl.cfg_dynFreqMode) { SERIAL_ECHOPGM("Compensator base dynamic frequency (Y/B axis) set to:"); } - else { SERIAL_ECHOPGM("Compensator static frequency (Y/B axis) set to: "); } - SERIAL_ECHO_F(fxdTiCtrl.cfg_baseFreq[1], 2); - SERIAL_ECHOLNPGM("."); - } - else { // Frequency out of range. - SERIAL_ECHOLNPGM("Invalid frequency [B] value."); + if (WITHIN(val, FTM_MIN_SHAPE_FREQ, (FTM_FS) / 2)) { + fxdTiCtrl.cfg.baseFreq[Y_AXIS] = val; + flag.update_n = flag.reset_ft = flag.report_h = true; } + else // Frequency out of range. + SERIAL_ECHOLNPGM("Invalid frequency [", AS_CHAR('B'), "] value."); } - else { // Mode doesn't use frequency. - SERIAL_ECHOLNPGM("Incompatible mode for [B] frequency."); - } + else // Mode doesn't use frequency. + SERIAL_ECHOLNPGM("Wrong mode for [", AS_CHAR('B'), "] frequency."); } - #if HAS_Z_AXIS || HAS_EXTRUDERS + #if HAS_DYNAMIC_FREQ // Parse frequency scaling parameter (Y axis). if (parser.seenval('H')) { - const bool modeUsesDynFreq = ( - TERN0(HAS_Z_AXIS, fxdTiCtrl.cfg_dynFreqMode == dynFreqMode_Z_BASED) - || TERN0(HAS_EXTRUDERS, fxdTiCtrl.cfg_dynFreqMode == dynFreqMode_MASS_BASED) - ); - if (modeUsesDynFreq) { - const float val = parser.value_float(); - fxdTiCtrl.cfg_dynFreqK[1] = val; - SERIAL_ECHOPGM("Frequency scaling (Y/B axis) set to: "); - SERIAL_ECHO_F(val, 8); - SERIAL_ECHOLNPGM("."); - } - else { - SERIAL_ECHOLNPGM("Incompatible mode for [H] frequency scaling."); + fxdTiCtrl.cfg.dynFreqK[Y_AXIS] = parser.value_float(); + flag.report_h = true; } + else + SERIAL_ECHOLNPGM("Wrong mode for [", AS_CHAR('H'), "] frequency scaling."); } - #endif // HAS_Z_AXIS || HAS_EXTRUDERS + #endif #endif // HAS_Y_AXIS + + #if HAS_X_AXIS + if (flag.update_n) fxdTiCtrl.refreshShapingN(); + if (flag.update_a) fxdTiCtrl.updateShapingA(); + #endif + if (flag.reset_ft) fxdTiCtrl.reset(); + if (flag.report_h) say_shaping(); + } #endif // FT_MOTION diff --git a/Marlin/src/gcode/gcode.h b/Marlin/src/gcode/gcode.h index eb465ea7c39d..9283a92e3965 100644 --- a/Marlin/src/gcode/gcode.h +++ b/Marlin/src/gcode/gcode.h @@ -1047,6 +1047,7 @@ class GcodeSuite { #if ENABLED(FT_MOTION) static void M493(); + static void M493_report(const bool forReplay=true); #endif static void M500(); diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language_en.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language_en.h index 05e625842ad9..9c069d9d246e 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language_en.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language_en.h @@ -91,7 +91,6 @@ namespace Language_en { LSTR MSG_IDLE = u8"idle"; LSTR MSG_SET_MAXIMUM = u8"Set Maximum"; LSTR MSG_PRINT_SPEED = u8"Print Speed"; - LSTR MSG_LINEAR_ADVANCE = u8"Linear Advance"; LSTR MSG_LINEAR_ADVANCE_K = u8"K"; LSTR MSG_LINEAR_ADVANCE_K1 = u8"K E1"; LSTR MSG_LINEAR_ADVANCE_K2 = u8"K E2"; diff --git a/Marlin/src/lcd/language/language_en.h b/Marlin/src/lcd/language/language_en.h index 0cfd2f8beaec..bc97407fc22b 100644 --- a/Marlin/src/lcd/language/language_en.h +++ b/Marlin/src/lcd/language/language_en.h @@ -446,6 +446,7 @@ namespace Language_en { LSTR MSG_DRAW_MIN_Y = _UxGT("Draw Min Y"); LSTR MSG_DRAW_MAX_Y = _UxGT("Draw Max Y"); LSTR MSG_MAX_BELT_LEN = _UxGT("Max Belt Len"); + LSTR MSG_LINEAR_ADVANCE = _UxGT("Linear Advance"); LSTR MSG_ADVANCE_K = _UxGT("Advance K"); LSTR MSG_ADVANCE_K_E = _UxGT("Advance K *"); LSTR MSG_CONTRAST = _UxGT("LCD Contrast"); @@ -836,6 +837,22 @@ namespace Language_en { LSTR MSG_BACKLASH_CORRECTION = _UxGT("Correction"); LSTR MSG_BACKLASH_SMOOTHING = _UxGT("Smoothing"); + LSTR MSG_FIXED_TIME_MOTION = _UxGT("Fixed-Time Motion"); + LSTR MSG_FTM_MODE = _UxGT("Motion Mode:"); + LSTR MSG_FTM_ZV = _UxGT("ZV"); + LSTR MSG_FTM_ZVD = _UxGT("ZVD"); + LSTR MSG_FTM_EI = _UxGT("EI"); + LSTR MSG_FTM_2HEI = _UxGT("2HEI"); + LSTR MSG_FTM_3HEI = _UxGT("3HEI"); + LSTR MSG_FTM_MZV = _UxGT("MZV"); + //LSTR MSG_FTM_ULENDO_FBS = _UxGT("Ulendo FBS"); + //LSTR MSG_FTM_DISCTF = _UxGT("DISCTF"); + LSTR MSG_FTM_DYN_MODE = _UxGT("DF Mode:"); + LSTR MSG_FTM_Z_BASED = _UxGT("Z-based"); + LSTR MSG_FTM_MASS_BASED = _UxGT("Mass-based"); + LSTR MSG_FTM_BASE_FREQ_N = _UxGT("@ Base Freq."); + LSTR MSG_FTM_DFREQ_K_N = _UxGT("@ Dyn. Freq."); + LSTR MSG_LEVEL_X_AXIS = _UxGT("Level X Axis"); LSTR MSG_AUTO_CALIBRATE = _UxGT("Auto Calibrate"); #if ENABLED(TOUCH_UI_FTDI_EVE) diff --git a/Marlin/src/lcd/menu/menu_motion.cpp b/Marlin/src/lcd/menu/menu_motion.cpp index 8caa1e526403..bab03db60627 100644 --- a/Marlin/src/lcd/menu/menu_motion.cpp +++ b/Marlin/src/lcd/menu/menu_motion.cpp @@ -313,7 +313,136 @@ void menu_move() { void goto_tramming_wizard(); #endif +#if ENABLED(FT_MOTION_MENU) + + #include "../../module/ft_motion.h" + #include "../../gcode/gcode.h" + + void _M493_S(const ftMotionMode_t s) { + char cmd[10]; + sprintf_P(cmd, PSTR("M493S%i"), int(s)); + gcode.process_subcommands_now(cmd); + ui.go_back(); + } + + inline void menu_ftm_mode() { + const ftMotionMode_t mode = fxdTiCtrl.cfg.mode; + + START_MENU(); + BACK_ITEM(MSG_FIXED_TIME_MOTION); + + if (mode != ftMotionMode_DISABLED) ACTION_ITEM(MSG_LCD_OFF, []{ _M493_S(ftMotionMode_DISABLED); }); + if (mode != ftMotionMode_ENABLED) ACTION_ITEM(MSG_LCD_ON, []{ _M493_S(ftMotionMode_ENABLED); }); + #if HAS_X_AXIS + if (mode != ftMotionMode_ZV) ACTION_ITEM(MSG_FTM_ZV, []{ _M493_S(ftMotionMode_ZV); }); + if (mode != ftMotionMode_ZVD) ACTION_ITEM(MSG_FTM_ZVD, []{ _M493_S(ftMotionMode_ZVD); }); + if (mode != ftMotionMode_EI) ACTION_ITEM(MSG_FTM_EI, []{ _M493_S(ftMotionMode_EI); }); + if (mode != ftMotionMode_2HEI) ACTION_ITEM(MSG_FTM_2HEI, []{ _M493_S(ftMotionMode_2HEI); }); + if (mode != ftMotionMode_3HEI) ACTION_ITEM(MSG_FTM_3HEI, []{ _M493_S(ftMotionMode_3HEI); }); + if (mode != ftMotionMode_MZV) ACTION_ITEM(MSG_FTM_MZV, []{ _M493_S(ftMotionMode_MZV); }); + //if (mode != ftMotionMode_ULENDO_FBS) ACTION_ITEM(MSG_FTM_ULENDO_FBS, []{ _M493_S(ftMotionMode_ULENDO_FBS); }); + //if (mode != ftMotionMode_DISCTF) ACTION_ITEM(MSG_FTM_DISCTF, []{ _M493_S(ftMotionMode_DISCTF); }); + #endif + + END_MENU(); + } + + #if HAS_DYNAMIC_FREQ + + void _M493_D(const dynFreqMode_t d) { + char cmd[10]; + sprintf_P(cmd, PSTR("M493D%i"), int(d)); + gcode.process_subcommands_now(cmd); + ui.go_back(); + } + + inline void menu_ftm_dyn_mode() { + const dynFreqMode_t dmode = fxdTiCtrl.cfg.dynFreqMode; + + START_MENU(); + BACK_ITEM(MSG_FIXED_TIME_MOTION); + + if (dmode != dynFreqMode_DISABLED) ACTION_ITEM(MSG_LCD_OFF, []{ _M493_D(dynFreqMode_DISABLED); }); + #if HAS_DYNAMIC_FREQ_MM + if (dmode != dynFreqMode_Z_BASED) ACTION_ITEM(MSG_FTM_Z_BASED, []{ _M493_D(dynFreqMode_Z_BASED); }); + #endif + #if HAS_DYNAMIC_FREQ_G + if (dmode != dynFreqMode_MASS_BASED) ACTION_ITEM(MSG_FTM_MASS_BASED, []{ _M493_D(dynFreqMode_MASS_BASED); }); + #endif + + END_MENU(); + } + + #endif // HAS_DYNAMIC_FREQ + + void menu_ft_motion() { + ft_config_t &c = fxdTiCtrl.cfg; + + FSTR_P ftmode; + switch (c.mode) { + default: + case ftMotionMode_DISABLED: ftmode = GET_TEXT_F(MSG_LCD_OFF); break; + case ftMotionMode_ENABLED: ftmode = GET_TEXT_F(MSG_LCD_ON); break; + case ftMotionMode_ZV: ftmode = GET_TEXT_F(MSG_FTM_ZV); break; + case ftMotionMode_ZVD: ftmode = GET_TEXT_F(MSG_FTM_ZVD); break; + case ftMotionMode_EI: ftmode = GET_TEXT_F(MSG_FTM_EI); break; + case ftMotionMode_2HEI: ftmode = GET_TEXT_F(MSG_FTM_2HEI); break; + case ftMotionMode_3HEI: ftmode = GET_TEXT_F(MSG_FTM_3HEI); break; + case ftMotionMode_MZV: ftmode = GET_TEXT_F(MSG_FTM_MZV); break; + //case ftMotionMode_ULENDO_FBS: ftmode = GET_TEXT_F(MSG_FTM_ULENDO_FBS); break; + //case ftMotionMode_DISCTF: ftmode = GET_TEXT_F(MSG_FTM_DISCTF); break; + } + + #if HAS_DYNAMIC_FREQ + FSTR_P dmode; + switch (c.dynFreqMode) { + default: + case dynFreqMode_DISABLED: dmode = GET_TEXT_F(MSG_LCD_OFF); break; + case dynFreqMode_Z_BASED: dmode = GET_TEXT_F(MSG_FTM_Z_BASED); break; + case dynFreqMode_MASS_BASED: dmode = GET_TEXT_F(MSG_FTM_MASS_BASED); break; + } + #endif + + START_MENU(); + BACK_ITEM(MSG_ADVANCED_SETTINGS); + + SUBMENU(MSG_FTM_MODE, menu_ftm_mode); + MENU_ITEM_ADDON_START_RJ(5); lcd_put_u8str(ftmode); MENU_ITEM_ADDON_END(); + + #if HAS_X_AXIS + EDIT_ITEM_FAST_N(float42_52, X_AXIS, MSG_FTM_BASE_FREQ_N, &c.baseFreq[X_AXIS], FTM_MIN_SHAPE_FREQ, (FTM_FS) / 2, fxdTiCtrl.refreshShapingN); + #endif + #if HAS_Y_AXIS + EDIT_ITEM_FAST_N(float42_52, Y_AXIS, MSG_FTM_BASE_FREQ_N, &c.baseFreq[Y_AXIS], FTM_MIN_SHAPE_FREQ, (FTM_FS) / 2, fxdTiCtrl.refreshShapingN); + #endif + + #if HAS_DYNAMIC_FREQ + if (c.modeHasShaper()) { + SUBMENU(MSG_FTM_DYN_MODE, menu_ftm_dyn_mode); + MENU_ITEM_ADDON_START_RJ(11); lcd_put_u8str(dmode); MENU_ITEM_ADDON_END(); + #if HAS_X_AXIS + EDIT_ITEM_FAST_N(float42_52, X_AXIS, MSG_FTM_DFREQ_K_N, &c.dynFreqK[X_AXIS], 0.0f, 20.0f); + #endif + #if HAS_Y_AXIS + EDIT_ITEM_FAST_N(float42_52, Y_AXIS, MSG_FTM_DFREQ_K_N, &c.dynFreqK[Y_AXIS], 0.0f, 20.0f); + #endif + } + #endif + #if HAS_EXTRUDERS + EDIT_ITEM(bool, MSG_LINEAR_ADVANCE, &c.linearAdvEna); + EDIT_ITEM(float42_52, MSG_ADVANCE_K, &c.linearAdvK, 0, 10); + #endif + + END_MENU(); + } + +#endif // FT_MOTION_MENU + void menu_motion() { + #if ENABLED(FT_MOTION_MENU) + const bool is_busy = printer_busy(); + #endif + START_MENU(); // @@ -339,6 +468,13 @@ void menu_motion() { #endif #endif + // + // M493 - Fixed-Time Motion + // + #if ENABLED(FT_MOTION_MENU) + if (!is_busy) SUBMENU(MSG_FIXED_TIME_MOTION, menu_ft_motion); + #endif + // // Pen up/down menu // diff --git a/Marlin/src/module/ft_motion.cpp b/Marlin/src/module/ft_motion.cpp index 407296f0303d..d6c834cbc481 100644 --- a/Marlin/src/module/ft_motion.cpp +++ b/Marlin/src/module/ft_motion.cpp @@ -29,32 +29,28 @@ FxdTiCtrl fxdTiCtrl; -//-----------------------------------------------------------------// -// Variables. -//-----------------------------------------------------------------// - -// Public variables. -ftMotionMode_t FxdTiCtrl::cfg_mode = FTM_DEFAULT_MODE; // Mode / active compensation mode configuration. - -#if HAS_EXTRUDERS - bool FxdTiCtrl::cfg_linearAdvEna = FTM_LINEAR_ADV_DEFAULT_ENA; // Linear advance enable configuration. - float FxdTiCtrl::cfg_linearAdvK = FTM_LINEAR_ADV_DEFAULT_K; // Linear advance gain. +#if !HAS_X_AXIS + static_assert(FTM_DEFAULT_MODE == ftMotionMode_ZV, "ftMotionMode_ZV requires at least one linear axis."); + static_assert(FTM_DEFAULT_MODE == ftMotionMode_ZVD, "ftMotionMode_ZVD requires at least one linear axis."); + static_assert(FTM_DEFAULT_MODE == ftMotionMode_EI, "ftMotionMode_EI requires at least one linear axis."); + static_assert(FTM_DEFAULT_MODE == ftMotionMode_2HEI, "ftMotionMode_2HEI requires at least one linear axis."); + static_assert(FTM_DEFAULT_MODE == ftMotionMode_3HEI, "ftMotionMode_3HEI requires at least one linear axis."); + static_assert(FTM_DEFAULT_MODE == ftMotionMode_MZV, "ftMotionMode_MZV requires at least one linear axis."); #endif - -dynFreqMode_t FxdTiCtrl::cfg_dynFreqMode = FTM_DEFAULT_DYNFREQ_MODE; // Dynamic frequency mode configuration. -#if !HAS_Z_AXIS +#if !HAS_DYNAMIC_FREQ_MM static_assert(FTM_DEFAULT_DYNFREQ_MODE != dynFreqMode_Z_BASED, "dynFreqMode_Z_BASED requires a Z axis."); #endif -#if !(HAS_X_AXIS && HAS_EXTRUDERS) +#if !HAS_DYNAMIC_FREQ_G static_assert(FTM_DEFAULT_DYNFREQ_MODE != dynFreqMode_MASS_BASED, "dynFreqMode_MASS_BASED requires an X axis and an extruder."); #endif -#if HAS_X_AXIS - float FxdTiCtrl::cfg_baseFreq[] = { FTM_SHAPING_DEFAULT_X_FREQ // Base frequency. [Hz] - OPTARG(HAS_Y_AXIS, FTM_SHAPING_DEFAULT_Y_FREQ) }; - float FxdTiCtrl::cfg_dynFreqK[] = { 0.0f OPTARG(HAS_Y_AXIS, 0.0f) }; // Scaling / gain for dynamic frequency. [Hz/mm] or [Hz/g] -#endif +//-----------------------------------------------------------------// +// Variables. +//-----------------------------------------------------------------// +// Public variables. + +ft_config_t FxdTiCtrl::cfg; ft_command_t FxdTiCtrl::stepperCmdBuff[FTM_STEPPERCMD_BUFF_SIZE] = {0U}; // Buffer of stepper commands. hal_timer_t FxdTiCtrl::stepperCmdBuff_StepRelativeTi[FTM_STEPPERCMD_BUFF_SIZE] = {0U}; // Buffer of the stepper command timing. uint8_t FxdTiCtrl::stepperCmdBuff_ApplyDir[FTM_STEPPERCMD_DIR_SIZE] = {0U}; // Buffer of whether DIR needs to be updated. @@ -209,7 +205,7 @@ void FxdTiCtrl::runoutBlock() { // Controller main, to be invoked from non-isr task. void FxdTiCtrl::loop() { - if (!cfg_mode) return; + if (!cfg.mode) return; // Handle block abort with the following sequence: // 1. Zero out commands in stepper ISR. @@ -291,7 +287,7 @@ void FxdTiCtrl::loop() { const float K = exp( -zeta * M_PI / sqrt(1.0f - sq(zeta)) ), K2 = sq(K); - switch (cfg_mode) { + switch (cfg.mode) { case ftMotionMode_ZV: xy_max_i = 1U; @@ -363,7 +359,7 @@ void FxdTiCtrl::loop() { const float df = sqrt(1.0f - sq(zeta)); - switch (cfg_mode) { + switch (cfg.mode) { case ftMotionMode_ZV: x_Ni[1] = round((0.5f / xf / df) * (FTM_FS)); #if HAS_Y_AXIS @@ -472,8 +468,8 @@ uint32_t FxdTiCtrl::stepperCmdBuffItems() { // Initializes storage variables before startup. void FxdTiCtrl::init() { #if HAS_X_AXIS - updateShapingN(cfg_baseFreq[0] OPTARG(HAS_Y_AXIS, cfg_baseFreq[1])); - updateShapingA(FTM_SHAPING_ZETA, FTM_SHAPING_V_TOL); + refreshShapingN(); + updateShapingA(); #endif reset(); // Precautionary. } @@ -606,9 +602,9 @@ void FxdTiCtrl::makeVector() { #if HAS_EXTRUDERS const float new_raw_z1 = e_startPosn + e_Ratio * dist; - if (cfg_linearAdvEna) { + if (cfg.linearAdvEna) { float dedt_adj = (new_raw_z1 - e_raw_z1) * (FTM_FS); - if (e_Ratio > 0.0f) dedt_adj += accel_k * cfg_linearAdvK; + if (e_Ratio > 0.0f) dedt_adj += accel_k * cfg.linearAdvK; e_advanced_z1 += dedt_adj * (FTM_TS); ed[makeVector_batchIdx] = e_advanced_z1; @@ -622,28 +618,28 @@ void FxdTiCtrl::makeVector() { #endif // Update shaping parameters if needed. - #if HAS_Z_AXIS + #if HAS_DYNAMIC_FREQ_MM static float zd_z1 = 0.0f; #endif - switch (cfg_dynFreqMode) { + switch (cfg.dynFreqMode) { - #if HAS_Z_AXIS + #if HAS_DYNAMIC_FREQ_MM case dynFreqMode_Z_BASED: if (zd[makeVector_batchIdx] != zd_z1) { // Only update if Z changed. - const float xf = cfg_baseFreq[0] + cfg_dynFreqK[0] * zd[makeVector_batchIdx], - yf = cfg_baseFreq[1] + cfg_dynFreqK[1] * zd[makeVector_batchIdx]; + const float xf = cfg.baseFreq[X_AXIS] + cfg.dynFreqK[X_AXIS] * zd[makeVector_batchIdx], + yf = cfg.baseFreq[Y_AXIS] + cfg.dynFreqK[Y_AXIS] * zd[makeVector_batchIdx]; updateShapingN(_MAX(xf, FTM_MIN_SHAPE_FREQ), _MAX(yf, FTM_MIN_SHAPE_FREQ)); zd_z1 = zd[makeVector_batchIdx]; } break; #endif - #if HAS_X_AXIS && HAS_EXTRUDERS + #if HAS_DYNAMIC_FREQ_G case dynFreqMode_MASS_BASED: // Update constantly. The optimization done for Z value makes // less sense for E, as E is expected to constantly change. - updateShapingN( cfg_baseFreq[0] + cfg_dynFreqK[0] * ed[makeVector_batchIdx] - OPTARG(HAS_Y_AXIS, cfg_baseFreq[1] + cfg_dynFreqK[1] * ed[makeVector_batchIdx]) ); + updateShapingN( cfg.baseFreq[X_AXIS] + cfg.dynFreqK[X_AXIS] * ed[makeVector_batchIdx] + OPTARG(HAS_Y_AXIS, cfg.baseFreq[Y_AXIS] + cfg.dynFreqK[Y_AXIS] * ed[makeVector_batchIdx]) ); break; #endif @@ -652,7 +648,7 @@ void FxdTiCtrl::makeVector() { // Apply shaping if in mode. #if HAS_X_AXIS - if (WITHIN(cfg_mode, 10U, 19U)) { + if (WITHIN(cfg.mode, 10U, 19U)) { xd_zi[xy_zi_idx] = xd[makeVector_batchIdx]; xd[makeVector_batchIdx] *= x_Ai[0]; #if HAS_Y_AXIS diff --git a/Marlin/src/module/ft_motion.h b/Marlin/src/module/ft_motion.h index a277f3ac26e6..232d191cda69 100644 --- a/Marlin/src/module/ft_motion.h +++ b/Marlin/src/module/ft_motion.h @@ -28,20 +28,69 @@ #define FTM_STEPPERCMD_DIR_SIZE ((FTM_STEPPERCMD_BUFF_SIZE + 7) / 8) +#if HAS_X_AXIS && (HAS_Z_AXIS || HAS_EXTRUDERS) + #define HAS_DYNAMIC_FREQ 1 + #if HAS_Z_AXIS + #define HAS_DYNAMIC_FREQ_MM 1 + #endif + #if HAS_EXTRUDERS + #define HAS_DYNAMIC_FREQ_G 1 + #endif +#endif + +typedef struct FTConfig { + ftMotionMode_t mode = FTM_DEFAULT_MODE; // Mode / active compensation mode configuration. + + bool modeHasShaper() { return WITHIN(mode, 10U, 19U); } + + #if HAS_X_AXIS + float baseFreq[1 + ENABLED(HAS_Y_AXIS)] = // Base frequency. [Hz] + { FTM_SHAPING_DEFAULT_X_FREQ OPTARG(HAS_Y_AXIS, FTM_SHAPING_DEFAULT_Y_FREQ) }; + #endif + + #if HAS_DYNAMIC_FREQ + dynFreqMode_t dynFreqMode = FTM_DEFAULT_DYNFREQ_MODE; // Dynamic frequency mode configuration. + float dynFreqK[1 + ENABLED(HAS_Y_AXIS)] = { 0.0f }; // Scaling / gain for dynamic frequency. [Hz/mm] or [Hz/g] + #else + static constexpr dynFreqMode_t dynFreqMode = dynFreqMode_DISABLED; + #endif + + #if HAS_EXTRUDERS + bool linearAdvEna = FTM_LINEAR_ADV_DEFAULT_ENA; // Linear advance enable configuration. + float linearAdvK = FTM_LINEAR_ADV_DEFAULT_K; // Linear advance gain. + #endif +} ft_config_t; + class FxdTiCtrl { public: // Public variables - static ftMotionMode_t cfg_mode; // Mode / active compensation mode configuration. - static bool cfg_linearAdvEna; // Linear advance enable configuration. - static float cfg_linearAdvK; // Linear advance gain. - static dynFreqMode_t cfg_dynFreqMode; // Dynamic frequency mode configuration. + static ft_config_t cfg; - #if HAS_X_AXIS - static float cfg_baseFreq[1 + ENABLED(HAS_Y_AXIS)]; // Base frequency. [Hz] - static float cfg_dynFreqK[1 + ENABLED(HAS_Y_AXIS)]; // Scaling / gain for dynamic frequency. [Hz/mm] or [Hz/g] - #endif + static void set_defaults() { + cfg.mode = FTM_DEFAULT_MODE; + + TERN_(HAS_X_AXIS, cfg.baseFreq[X_AXIS] = FTM_SHAPING_DEFAULT_X_FREQ); + TERN_(HAS_Y_AXIS, cfg.baseFreq[Y_AXIS] = FTM_SHAPING_DEFAULT_Y_FREQ); + + #if HAS_DYNAMIC_FREQ + cfg.dynFreqMode = FTM_DEFAULT_DYNFREQ_MODE; + cfg.dynFreqK[X_AXIS] = TERN_(HAS_Y_AXIS, cfg.dynFreqK[Y_AXIS]) = 0.0f; + #endif + + #if HAS_EXTRUDERS + cfg.linearAdvEna = FTM_LINEAR_ADV_DEFAULT_ENA; + cfg.linearAdvK = FTM_LINEAR_ADV_DEFAULT_K; + #endif + + #if HAS_X_AXIS + refreshShapingN(); + updateShapingA(); + #endif + + reset(); + } static ft_command_t stepperCmdBuff[FTM_STEPPERCMD_BUFF_SIZE]; // Buffer of stepper commands. static hal_timer_t stepperCmdBuff_StepRelativeTi[FTM_STEPPERCMD_BUFF_SIZE]; // Buffer of the stepper command timing. @@ -68,6 +117,9 @@ class FxdTiCtrl { // Refresh the indices used by shaping functions. // To be called when frequencies change. static void updateShapingN(const_float_t xf OPTARG(HAS_Y_AXIS, const_float_t yf), const_float_t zeta=FTM_SHAPING_ZETA); + + static void refreshShapingN() { updateShapingN(cfg.baseFreq[X_AXIS] OPTARG(HAS_Y_AXIS, cfg.baseFreq[Y_AXIS])); } + #endif static void reset(); // Resets all states of the fixed time conversion to defaults. diff --git a/Marlin/src/module/ft_types.h b/Marlin/src/module/ft_types.h index 613e177a3915..a3239a924643 100644 --- a/Marlin/src/module/ft_types.h +++ b/Marlin/src/module/ft_types.h @@ -26,14 +26,14 @@ typedef enum FXDTICtrlMode : uint8_t { ftMotionMode_DISABLED = 0U, ftMotionMode_ENABLED = 1U, - ftMotionMode_ULENDO_FBS = 2U, + //ftMotionMode_ULENDO_FBS = 2U, ftMotionMode_ZV = 10U, ftMotionMode_ZVD = 11U, ftMotionMode_EI = 12U, ftMotionMode_2HEI = 13U, ftMotionMode_3HEI = 14U, ftMotionMode_MZV = 15U, - ftMotionMode_DISCTF = 20U + //ftMotionMode_DISCTF = 20U } ftMotionMode_t; enum dynFreqMode_t : uint8_t { diff --git a/Marlin/src/module/planner.cpp b/Marlin/src/module/planner.cpp index b0d0b3e353c2..02a7d05cae3a 100644 --- a/Marlin/src/module/planner.cpp +++ b/Marlin/src/module/planner.cpp @@ -1692,7 +1692,7 @@ void Planner::quick_stop() { // Restart the block delay for the first movement - As the queue was // forced to empty, there's no risk the ISR will touch this. - delay_before_delivering = TERN_(FT_MOTION, fxdTiCtrl.cfg_mode ? BLOCK_DELAY_NONE :) BLOCK_DELAY_FOR_1ST_MOVE; + delay_before_delivering = TERN_(FT_MOTION, fxdTiCtrl.cfg.mode ? BLOCK_DELAY_NONE :) BLOCK_DELAY_FOR_1ST_MOVE; TERN_(HAS_WIRED_LCD, clear_block_buffer_runtime()); // Clear the accumulated runtime @@ -1851,7 +1851,7 @@ bool Planner::_buffer_steps(const xyze_long_t &target // As there are no queued movements, the Stepper ISR will not touch this // variable, so there is no risk setting this here (but it MUST be done // before the following line!!) - delay_before_delivering = TERN_(FT_MOTION, fxdTiCtrl.cfg_mode ? BLOCK_DELAY_NONE :) BLOCK_DELAY_FOR_1ST_MOVE; + delay_before_delivering = TERN_(FT_MOTION, fxdTiCtrl.cfg.mode ? BLOCK_DELAY_NONE :) BLOCK_DELAY_FOR_1ST_MOVE; } // Move buffer head @@ -2924,7 +2924,7 @@ void Planner::buffer_sync_block(const BlockFlagBit sync_flag/*=BLOCK_BIT_SYNC_PO // As there are no queued movements, the Stepper ISR will not touch this // variable, so there is no risk setting this here (but it MUST be done // before the following line!!) - delay_before_delivering = TERN_(FT_MOTION, fxdTiCtrl.cfg_mode ? BLOCK_DELAY_NONE :) BLOCK_DELAY_FOR_1ST_MOVE; + delay_before_delivering = TERN_(FT_MOTION, fxdTiCtrl.cfg.mode ? BLOCK_DELAY_NONE :) BLOCK_DELAY_FOR_1ST_MOVE; } block_buffer_head = next_buffer_head; @@ -3217,7 +3217,7 @@ bool Planner::buffer_line(const xyze_pos_t &cart, const_feedRate_t fr_mm_s // As there are no queued movements, the Stepper ISR will not touch this // variable, so there is no risk setting this here (but it MUST be done // before the following line!!) - delay_before_delivering = TERN_(FT_MOTION, fxdTiCtrl.cfg_mode ? BLOCK_DELAY_NONE :) BLOCK_DELAY_FOR_1ST_MOVE; + delay_before_delivering = TERN_(FT_MOTION, fxdTiCtrl.cfg.mode ? BLOCK_DELAY_NONE :) BLOCK_DELAY_FOR_1ST_MOVE; } // Move buffer head diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index 53e98a462659..b6e605e853e4 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -111,6 +111,10 @@ #include "../feature/backlash.h" #endif +#if ENABLED(FT_MOTION) + #include "../module/ft_motion.h" +#endif + #if HAS_FILAMENT_SENSOR #include "../feature/runout.h" #ifndef FIL_RUNOUT_ENABLED_DEFAULT @@ -594,16 +598,23 @@ typedef struct SettingsDataStruct { MPC_t mpc_constants[HOTENDS]; // M306 #endif + // + // Fixed-Time Motion + // + #if ENABLED(FT_MOTION) + ft_config_t fxdTiCtrl_cfg; // M493 + #endif + // // Input Shaping // #if ENABLED(INPUT_SHAPING_X) - float shaping_x_frequency, // M593 X F - shaping_x_zeta; // M593 X D + float shaping_x_frequency, // M593 X F + shaping_x_zeta; // M593 X D #endif #if ENABLED(INPUT_SHAPING_Y) - float shaping_y_frequency, // M593 Y F - shaping_y_zeta; // M593 Y D + float shaping_y_frequency, // M593 Y F + shaping_y_zeta; // M593 Y D #endif } SettingsData; @@ -1648,6 +1659,14 @@ void MarlinSettings::postprocess() { HOTEND_LOOP() EEPROM_WRITE(thermalManager.temp_hotend[e].mpc); #endif + // + // Fixed-Time Motion + // + #if ENABLED(FT_MOTION) + _FIELD_TEST(fxdTiCtrl_cfg); + EEPROM_WRITE(fxdTiCtrl.cfg); + #endif + // // Input Shaping /// @@ -2646,9 +2665,15 @@ void MarlinSettings::postprocess() { // Model predictive control // #if ENABLED(MPCTEMP) - { HOTEND_LOOP() EEPROM_READ(thermalManager.temp_hotend[e].mpc); - } + #endif + + // + // Fixed-Time Motion + // + #if ENABLED(FT_MOTION) + _FIELD_TEST(fxdTiCtrl_cfg); + EEPROM_READ(fxdTiCtrl.cfg); #endif // @@ -3445,6 +3470,11 @@ void MarlinSettings::reset() { } #endif + // + // Fixed-Time Motion + // + TERN_(FT_MOTION, fxdTiCtrl.set_defaults()); + // // Input Shaping // @@ -3706,6 +3736,11 @@ void MarlinSettings::reset() { // TERN_(HAS_STEALTHCHOP, gcode.M569_report(forReplay)); + // + // Fixed-Time Motion + // + TERN_(FT_MOTION, gcode.M493_report(forReplay)); + // // Input Shaping // diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index b23667b82015..3188f77da8bb 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -1497,7 +1497,7 @@ void Stepper::isr() { #if ENABLED(FT_MOTION) // NOTE STEPPER_TIMER_RATE is equal to 2000000, not what VSCode shows - const bool using_fxtictrl = fxdTiCtrl.cfg_mode; + const bool using_fxtictrl = fxdTiCtrl.cfg.mode; if (using_fxtictrl) { if (!nextMainISR) { if (abort_current_block) { diff --git a/buildroot/tests/STM32F103RC_btt b/buildroot/tests/STM32F103RC_btt index 95a18c615ff8..d0da6305e537 100755 --- a/buildroot/tests/STM32F103RC_btt +++ b/buildroot/tests/STM32F103RC_btt @@ -12,7 +12,7 @@ set -e restore_configs opt_set MOTHERBOARD BOARD_BTT_SKR_MINI_E3_V1_0 SERIAL_PORT 1 SERIAL_PORT_2 -1 \ X_DRIVER_TYPE TMC2209 Y_DRIVER_TYPE TMC2209 Z_DRIVER_TYPE TMC2209 E0_DRIVER_TYPE TMC2209 -opt_enable PINS_DEBUGGING Z_IDLE_HEIGHT FT_MOTION +opt_enable CR10_STOCKDISPLAY PINS_DEBUGGING Z_IDLE_HEIGHT FT_MOTION FT_MOTION_MENU exec_test $1 $2 "BigTreeTech SKR Mini E3 1.0 - TMC2209 HW Serial, FT_MOTION" "$3" # clean up From df078cac92b3abe774a11f12b609fa8d952f8f9e Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Tue, 16 May 2023 09:39:50 +0200 Subject: [PATCH 188/427] =?UTF-8?q?=F0=9F=94=A7=20TMC=20Config=20Inheritan?= =?UTF-8?q?ce=20followup=20(#25783)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index b68557cb289f..c66745d8bf55 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -2862,7 +2862,7 @@ #if AXIS_IS_TMC_CONFIG(X2) #define X2_CURRENT X_CURRENT - #define X2_CURRENT_HOME X2_CURRENT + #define X2_CURRENT_HOME X_CURRENT_HOME #define X2_MICROSTEPS X_MICROSTEPS #define X2_RSENSE X_RSENSE #define X2_CHAIN_POS -1 @@ -2882,7 +2882,7 @@ #if AXIS_IS_TMC_CONFIG(Y2) #define Y2_CURRENT Y_CURRENT - #define Y2_CURRENT_HOME Y2_CURRENT + #define Y2_CURRENT_HOME Y_CURRENT_HOME #define Y2_MICROSTEPS Y_MICROSTEPS #define Y2_RSENSE Y_RSENSE #define Y2_CHAIN_POS -1 @@ -2902,7 +2902,7 @@ #if AXIS_IS_TMC_CONFIG(Z2) #define Z2_CURRENT Z_CURRENT - #define Z2_CURRENT_HOME Z2_CURRENT + #define Z2_CURRENT_HOME Z_CURRENT_HOME #define Z2_MICROSTEPS Z_MICROSTEPS #define Z2_RSENSE Z_RSENSE #define Z2_CHAIN_POS -1 @@ -2912,7 +2912,7 @@ #if AXIS_IS_TMC_CONFIG(Z3) #define Z3_CURRENT Z_CURRENT - #define Z3_CURRENT_HOME Z3_CURRENT + #define Z3_CURRENT_HOME Z_CURRENT_HOME #define Z3_MICROSTEPS Z_MICROSTEPS #define Z3_RSENSE Z_RSENSE #define Z3_CHAIN_POS -1 @@ -2922,7 +2922,7 @@ #if AXIS_IS_TMC_CONFIG(Z4) #define Z4_CURRENT Z_CURRENT - #define Z4_CURRENT_HOME Z4_CURRENT + #define Z4_CURRENT_HOME Z_CURRENT_HOME #define Z4_MICROSTEPS Z_MICROSTEPS #define Z4_RSENSE Z_RSENSE #define Z4_CHAIN_POS -1 From 060ddf5e950b104b00f5d20adf858a9ad00ab72e Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 16 May 2023 02:52:52 -0500 Subject: [PATCH 189/427] =?UTF-8?q?=F0=9F=9A=B8=20Support=20Bed=20Leveling?= =?UTF-8?q?=20Mesh=20>=2016x16?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: raTmole --- Marlin/src/core/types.h | 3 +++ Marlin/src/feature/bedlevel/ubl/ubl.h | 4 ++-- Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp | 8 ++++---- Marlin/src/gcode/bedlevel/G26.cpp | 2 +- Marlin/src/gcode/bedlevel/abl/G29.cpp | 14 +++++++------- Marlin/src/gcode/bedlevel/mbl/G29.cpp | 2 +- Marlin/src/inc/SanityCheck.h | 6 ++++-- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 2 +- Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp | 4 ++-- .../src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp | 2 +- .../generic/bed_mesh_view_screen.h | 2 +- Marlin/src/lcd/menu/menu_bed_leveling.cpp | 2 +- Marlin/src/module/settings.cpp | 4 ++-- 13 files changed, 30 insertions(+), 25 deletions(-) diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index 4c7ebc884fb6..958155860414 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -276,6 +276,9 @@ typedef float celsius_float_t; typedef const_float_t const_feedRate_t; typedef const_float_t const_celsius_float_t; +// Type large enough to count leveling grid points +typedef IF 255)), uint16_t, uint8_t>::type grid_count_t; + // Conversion macros #define MMM_TO_MMS(MM_M) feedRate_t(static_cast(MM_M) / 60.0f) #define MMS_TO_MMM(MM_S) (static_cast(MM_S) * 60.0f) diff --git a/Marlin/src/feature/bedlevel/ubl/ubl.h b/Marlin/src/feature/bedlevel/ubl/ubl.h index 05a937c9853d..785cb5d883aa 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl.h +++ b/Marlin/src/feature/bedlevel/ubl/ubl.h @@ -48,8 +48,8 @@ struct mesh_index_pair; typedef struct { bool C_seen; int8_t KLS_storage_slot; - uint8_t R_repetition, - V_verbosity, + grid_count_t R_repetition; + uint8_t V_verbosity, P_phase, T_map_type; float B_shim_thickness, diff --git a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp index 2fbd3bfbebea..ecbf76ec6ed6 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp +++ b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp @@ -351,7 +351,7 @@ void unified_bed_leveling::G29() { // Invalidate one or more nearby mesh points, possibly all. if (parser.seen('I')) { - uint8_t count = parser.has_value() ? parser.value_byte() : 1; + grid_count_t count = parser.has_value() ? parser.value_ushort() : 1; bool invalidate_all = count >= GRID_MAX_POINTS; if (!invalidate_all) { while (count--) { @@ -760,14 +760,14 @@ void unified_bed_leveling::shift_mesh_height() { TERN_(DWIN_LCD_PROUI, DWIN_LevelingStart()); save_ubl_active_state_and_disable(); // No bed level correction so only raw data is obtained - uint8_t count = GRID_MAX_POINTS; + grid_count_t count = GRID_MAX_POINTS; mesh_index_pair best; TERN_(EXTENSIBLE_UI, ExtUI::onMeshUpdate(best.pos, ExtUI::G29_START)); do { if (do_ubl_mesh_map) display_map(param.T_map_type); - const uint8_t point_num = (GRID_MAX_POINTS - count) + 1; + const grid_count_t point_num = (GRID_MAX_POINTS - count) + 1; SERIAL_ECHOLNPGM("Probing mesh point ", point_num, "/", GRID_MAX_POINTS, "."); TERN_(HAS_STATUS_MESSAGE, ui.status_printf(0, F(S_FMT " %i/%i"), GET_TEXT(MSG_PROBING_POINT), point_num, int(GRID_MAX_POINTS))); @@ -1135,7 +1135,7 @@ bool unified_bed_leveling::G29_parse_parameters() { param.R_repetition = 0; if (parser.seen('R')) { - param.R_repetition = parser.has_value() ? parser.value_byte() : GRID_MAX_POINTS; + param.R_repetition = parser.has_value() ? parser.value_ushort() : GRID_MAX_POINTS; NOMORE(param.R_repetition, GRID_MAX_POINTS); if (param.R_repetition < 1) { SERIAL_ECHOLNPGM("?(R)epetition count invalid (1+).\n"); diff --git a/Marlin/src/gcode/bedlevel/G26.cpp b/Marlin/src/gcode/bedlevel/G26.cpp index fe20423b8d8b..1b55bdb4286c 100644 --- a/Marlin/src/gcode/bedlevel/G26.cpp +++ b/Marlin/src/gcode/bedlevel/G26.cpp @@ -628,7 +628,7 @@ void GcodeSuite::G26() { } // Get repeat from 'R', otherwise do one full circuit - int16_t g26_repeats; + grid_count_t g26_repeats; #if HAS_MARLINUI_MENU g26_repeats = parser.intval('R', GRID_MAX_POINTS + 1); #else diff --git a/Marlin/src/gcode/bedlevel/abl/G29.cpp b/Marlin/src/gcode/bedlevel/abl/G29.cpp index dd325284af38..1fe4a31bee48 100644 --- a/Marlin/src/gcode/bedlevel/abl/G29.cpp +++ b/Marlin/src/gcode/bedlevel/abl/G29.cpp @@ -102,11 +102,11 @@ class G29_State { #endif #if ENABLED(AUTO_BED_LEVELING_LINEAR) - int abl_points; + grid_count_t abl_points; #elif ENABLED(AUTO_BED_LEVELING_3POINT) - static constexpr int abl_points = 3; + static constexpr grid_count_t abl_points = 3; #elif ABL_USES_GRID - static constexpr int abl_points = GRID_MAX_POINTS; + static constexpr grid_count_t abl_points = GRID_MAX_POINTS; #endif #if ABL_USES_GRID @@ -132,8 +132,8 @@ class G29_State { #if ENABLED(AUTO_BED_LEVELING_LINEAR) int indexIntoAB[GRID_MAX_POINTS_X][GRID_MAX_POINTS_Y]; - float eqnAMatrix[(GRID_MAX_POINTS) * 3], // "A" matrix of the linear system of equations - eqnBVector[GRID_MAX_POINTS], // "B" vector of Z points + float eqnAMatrix[GRID_MAX_POINTS * 3], // "A" matrix of the linear system of equations + eqnBVector[GRID_MAX_POINTS], // "B" vector of Z points mean; #endif #endif @@ -141,7 +141,7 @@ class G29_State { #if ABL_USES_GRID && EITHER(AUTO_BED_LEVELING_3POINT, AUTO_BED_LEVELING_BILINEAR) constexpr xy_uint8_t G29_State::grid_points; - constexpr int G29_State::abl_points; + constexpr grid_count_t G29_State::abl_points; #endif /** @@ -677,7 +677,7 @@ G29_TYPE GcodeSuite::G29() { zig ^= true; // zag // An index to print current state - uint8_t pt_index = (PR_OUTER_VAR) * (PR_INNER_SIZE) + 1; + grid_count_t pt_index = (PR_OUTER_VAR) * (PR_INNER_SIZE) + 1; // Inner loop is Y with PROBE_Y_FIRST enabled // Inner loop is X with PROBE_Y_FIRST disabled diff --git a/Marlin/src/gcode/bedlevel/mbl/G29.cpp b/Marlin/src/gcode/bedlevel/mbl/G29.cpp index 9f902141fb24..4bc9ba777a09 100644 --- a/Marlin/src/gcode/bedlevel/mbl/G29.cpp +++ b/Marlin/src/gcode/bedlevel/mbl/G29.cpp @@ -173,7 +173,7 @@ void GcodeSuite::G29() { SET_SOFT_ENDSTOP_LOOSE(false); } // If there's another point to sample, move there with optional lift. - if (mbl_probe_index < (GRID_MAX_POINTS)) { + if (mbl_probe_index < GRID_MAX_POINTS) { // Disable software endstops to allow manual adjustment // If G29 is left hanging without completion they won't be re-enabled! SET_SOFT_ENDSTOP_LOOSE(true); diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 67d11d93e076..f77bf7afeb7b 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -1498,8 +1498,8 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "AUTO_BED_LEVELING_UBL does not yet support POLAR printers." #elif DISABLED(EEPROM_SETTINGS) #error "AUTO_BED_LEVELING_UBL requires EEPROM_SETTINGS." - #elif !WITHIN(GRID_MAX_POINTS_X, 3, 15) || !WITHIN(GRID_MAX_POINTS_Y, 3, 15) - #error "GRID_MAX_POINTS_[XY] must be a whole number between 3 and 15." + #elif !WITHIN(GRID_MAX_POINTS_X, 3, 255) || !WITHIN(GRID_MAX_POINTS_Y, 3, 255) + #error "GRID_MAX_POINTS_[XY] must be between 3 and 255." #endif #elif HAS_ABL_NOT_UBL @@ -1513,6 +1513,8 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L */ #if IS_SCARA && DISABLED(AUTO_BED_LEVELING_BILINEAR) #error "SCARA machines can only use the AUTO_BED_LEVELING_BILINEAR leveling option." + #elif ABL_USES_GRID && !(WITHIN(GRID_MAX_POINTS_X, 3, 255) && WITHIN(GRID_MAX_POINTS_Y, 3, 255)) + #error "GRID_MAX_POINTS_[XY] must be between 3 and 255." #endif #elif ENABLED(MESH_BED_LEVELING) diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index e7f15792f346..f430f6d1a900 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -202,7 +202,7 @@ bool livemove = false; bool liveadjust = false; uint8_t preheatmode = 0; float zoffsetvalue = 0; -uint8_t gridpoint; +grid_count_t gridpoint; float corner_avg; float corner_pos; diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp index 387557f2afec..e846d65a1faf 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp @@ -549,7 +549,7 @@ namespace Anycubic { bool msg_matched = false; #if HAS_LEVELING - static uint8_t probe_cnt = 0; + static grid_count_t probe_cnt = 0; #endif // The only way to get printer status is to parse messages @@ -564,7 +564,7 @@ namespace Anycubic { // If probing completes ok save the mesh and park // Ignore the custom machine name if (strcmp_P(msg + strlen(MACHINE_NAME), MARLIN_msg_ready) == 0) { - if (probe_cnt == GRID_MAX_POINTS_X * GRID_MAX_POINTS_Y) { + if (probe_cnt == GRID_MAX_POINTS) { probe_cnt = 0; injectCommands(F("M500")); // G27 park nozzle //ChangePageOfTFT(PAGE_PreLEVEL); diff --git a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp index c06971fb1054..f882ba33d014 100644 --- a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp @@ -415,7 +415,7 @@ void DGUSScreenHandlerMKS::LanguageChange(DGUS_VP_Variable &var, void *val_ptr) } #if ENABLED(MESH_BED_LEVELING) - uint8_t mesh_point_count = GRID_MAX_POINTS; + grid_count_t mesh_point_count = GRID_MAX_POINTS; #endif void DGUSScreenHandlerMKS::Level_Ctrl(DGUS_VP_Variable &var, void *val_ptr) { diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/bed_mesh_view_screen.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/bed_mesh_view_screen.h index b9791fff7a15..3ec8e06adfaa 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/bed_mesh_view_screen.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/bed_mesh_view_screen.h @@ -26,7 +26,7 @@ struct BedMeshViewScreenData { FSTR_P message; - uint8_t count; + grid_count_t count; xy_uint8_t highlight; }; diff --git a/Marlin/src/lcd/menu/menu_bed_leveling.cpp b/Marlin/src/lcd/menu/menu_bed_leveling.cpp index 3d6af0012dd8..dcf77cb3eb3a 100644 --- a/Marlin/src/lcd/menu/menu_bed_leveling.cpp +++ b/Marlin/src/lcd/menu/menu_bed_leveling.cpp @@ -53,7 +53,7 @@ // // LCD probed points are from defaults - constexpr uint8_t total_probe_points = TERN(AUTO_BED_LEVELING_3POINT, 3, GRID_MAX_POINTS); + constexpr grid_count_t total_probe_points = TERN(AUTO_BED_LEVELING_3POINT, 3, GRID_MAX_POINTS); // // Bed leveling is done. Wait for G29 to complete. diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index b6e605e853e4..58e00b7fb0e8 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -901,7 +901,7 @@ void MarlinSettings::postprocess() { { #if ENABLED(MESH_BED_LEVELING) static_assert( - sizeof(bedlevel.z_values) == (GRID_MAX_POINTS) * sizeof(bedlevel.z_values[0][0]), + sizeof(bedlevel.z_values) == GRID_MAX_POINTS * sizeof(bedlevel.z_values[0][0]), "MBL Z array is the wrong size." ); #else @@ -955,7 +955,7 @@ void MarlinSettings::postprocess() { { #if ENABLED(AUTO_BED_LEVELING_BILINEAR) static_assert( - sizeof(bedlevel.z_values) == (GRID_MAX_POINTS) * sizeof(bedlevel.z_values[0][0]), + sizeof(bedlevel.z_values) == GRID_MAX_POINTS * sizeof(bedlevel.z_values[0][0]), "Bilinear Z array is the wrong size." ); #endif From 3136435c19d2e06253f01010c2d5ca740a78a79e Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Wed, 17 May 2023 06:50:57 +1200 Subject: [PATCH 190/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20MKS=20Robin=20Nano?= =?UTF-8?q?=201.3=20F4=20pin=20collision=20(#25838)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V1_3_F4.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V1_3_F4.h b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V1_3_F4.h index 3cba69a7b30a..a0a711647b7b 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V1_3_F4.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V1_3_F4.h @@ -40,6 +40,4 @@ //#define FLASH_EEPROM_EMULATION // Use Flash-based EEPROM emulation #endif -#define LED_PIN PB1 - #include "../stm32f1/pins_MKS_ROBIN_NANO_common.h" From 3b2341fb6127f51dd6b150ea49297b60c364d865 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Wed, 17 May 2023 00:22:49 +0000 Subject: [PATCH 191/427] [cron] Bump distribution date (2023-05-17) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 153a4c3be239..1c01b9cc32d4 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-16" +//#define STRING_DISTRIBUTION_DATE "2023-05-17" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 22e56dd2f4cb..f3e8162cc82e 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-16" + #define STRING_DISTRIBUTION_DATE "2023-05-17" #endif /** From b2f372b20f375852e3e009d490260307e399792c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Krzysztof=20B=C5=82a=C5=BCewicz?= Date: Thu, 18 May 2023 07:38:21 +0200 Subject: [PATCH 192/427] =?UTF-8?q?=F0=9F=9A=B8=20Unify=20edit=20limits=20?= =?UTF-8?q?for=20some=20E3V2=20LCDs=20(#25045)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/lcd/e3v2/common/limits.h | 94 +++++++ Marlin/src/lcd/e3v2/creality/dwin.cpp | 29 +- Marlin/src/lcd/e3v2/creality/dwin.h | 1 + Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 162 ++++++----- Marlin/src/lcd/e3v2/jyersui/dwin.h | 1 + Marlin/src/lcd/e3v2/proui/dwin.cpp | 382 +++++++++++++++----------- Marlin/src/lcd/e3v2/proui/dwin.h | 1 + 7 files changed, 410 insertions(+), 260 deletions(-) create mode 100644 Marlin/src/lcd/e3v2/common/limits.h diff --git a/Marlin/src/lcd/e3v2/common/limits.h b/Marlin/src/lcd/e3v2/common/limits.h new file mode 100644 index 000000000000..4ac97b82bbef --- /dev/null +++ b/Marlin/src/lcd/e3v2/common/limits.h @@ -0,0 +1,94 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +/***************************************************************************** + * @file lcd/e3v2/common/limits.h + * @brief Limits for UI values + ****************************************************************************/ + +#include "../../../inc/MarlinConfig.h" + +// If max edit values are not specified use default * DEFAULT_MAX_MULTIPLIER +#define DEFAULT_MAX_MULTIPLIER 2 + +// +// Feedrate limits +// +#define MIN_FEEDRATE_EDIT_VALUE 1 + +constexpr xyze_float_t min_feedrate_edit_values = LOGICAL_AXIS_ARRAY_1(MIN_FEEDRATE_EDIT_VALUE), + default_max_feedrate = DEFAULT_MAX_FEEDRATE, + max_feedrate_edit_values = + #ifdef MAX_FEEDRATE_EDIT_VALUES + MAX_FEEDRATE_EDIT_VALUES + #else + default_max_feedrate * float(DEFAULT_MAX_MULTIPLIER) + #endif + ; + +// +// Acceleration limits +// +#define MIN_ACCELERATION_EDIT_VALUE 1 + +constexpr xyze_float_t min_acceleration_edit_values = LOGICAL_AXIS_ARRAY_1(MIN_ACCELERATION_EDIT_VALUE), + default_max_acceleration = DEFAULT_MAX_ACCELERATION, + max_acceleration_edit_values = + #ifdef MAX_ACCEL_EDIT_VALUES + MAX_ACCEL_EDIT_VALUES + #else + default_max_acceleration * float(DEFAULT_MAX_MULTIPLIER) + #endif + ; + +// +// Max jerk limits +// +#define MIN_JERK_EDIT_VALUE 0.1 +#define DEFAULT_MAX_JERK_MULTIPLIER 2 + +#if HAS_CLASSIC_JERK + constexpr xyze_float_t min_jerk_edit_values = LOGICAL_AXIS_ARRAY_1(MIN_JERK_EDIT_VALUE), + default_jerk = LOGICAL_AXIS_ARRAY( + DEFAULT_EJERK, + DEFAULT_XJERK, DEFAULT_YJERK, DEFAULT_ZJERK, + DEFAULT_IJERK, DEFAULT_JJERK, DEFAULT_KJERK, + DEFAULT_UJERK, DEFAULT_VJERK, DEFAULT_WJERK + ), + max_jerk_edit_values = + #ifdef MAX_JERK_EDIT_VALUES + MAX_JERK_EDIT_VALUES + #else + default_jerk * float(DEFAULT_MAX_JERK_MULTIPLIER) + #endif + ; +#endif + +// +// Steps per mm limits +// +#define MIN_STEPS_EDIT_VALUE 1 + +constexpr xyze_float_t min_steps_edit_values = LOGICAL_AXIS_ARRAY_1(MIN_STEPS_EDIT_VALUE), + default_steps = DEFAULT_AXIS_STEPS_PER_UNIT, + max_steps_edit_values = default_steps * float(DEFAULT_MAX_MULTIPLIER); diff --git a/Marlin/src/lcd/e3v2/creality/dwin.cpp b/Marlin/src/lcd/e3v2/creality/dwin.cpp index 73621851df40..9ae1cf1e0626 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin.cpp +++ b/Marlin/src/lcd/e3v2/creality/dwin.cpp @@ -101,12 +101,6 @@ #define MIN_PRINT_SPEED 10 #define MAX_PRINT_SPEED 999 -// Feedspeed limit (max feedspeed = DEFAULT_MAX_FEEDRATE * 2) -#define MIN_MAXFEEDSPEED 1 -#define MIN_MAXACCELERATION 1 -#define MIN_MAXJERK 0.1 -#define MIN_STEP 1 - #define FEEDRATE_E (60) // Minimum unit (0.1) : multiple (10) @@ -181,13 +175,6 @@ uint8_t index_file = MROWS, bool dwin_abort_flag = false; // Flag to reset feedrate, return to Home -constexpr float default_max_feedrate[] = DEFAULT_MAX_FEEDRATE; -constexpr float default_max_acceleration[] = DEFAULT_MAX_ACCELERATION; - -#if HAS_CLASSIC_JERK - constexpr float default_max_jerk[] = { DEFAULT_XJERK, DEFAULT_YJERK, DEFAULT_ZJERK, DEFAULT_EJERK }; -#endif - static uint8_t _card_percent = 0; static uint16_t _remain_time = 0; @@ -1568,8 +1555,7 @@ void HMI_MaxFeedspeedXYZE() { } // MaxFeedspeed limit if (WITHIN(HMI_flag.feedspeed_axis, X_AXIS, LAST_AXIS)) - NOMORE(HMI_ValueStruct.Max_Feedspeed, default_max_feedrate[HMI_flag.feedspeed_axis] * 2); - if (HMI_ValueStruct.Max_Feedspeed < MIN_MAXFEEDSPEED) HMI_ValueStruct.Max_Feedspeed = MIN_MAXFEEDSPEED; + LIMIT(HMI_ValueStruct.Max_Feedspeed, min_feedrate_edit_values[HMI_flag.feedspeed_axis], max_feedrate_edit_values[HMI_flag.feedspeed_axis]); // MaxFeedspeed value Draw_Edit_Integer4(select_speed.now, HMI_ValueStruct.Max_Feedspeed, true); } @@ -1587,8 +1573,7 @@ void HMI_MaxAccelerationXYZE() { } // MaxAcceleration limit if (WITHIN(HMI_flag.acc_axis, X_AXIS, LAST_AXIS)) - NOMORE(HMI_ValueStruct.Max_Acceleration, default_max_acceleration[HMI_flag.acc_axis] * 2); - if (HMI_ValueStruct.Max_Acceleration < MIN_MAXACCELERATION) HMI_ValueStruct.Max_Acceleration = MIN_MAXACCELERATION; + LIMIT(HMI_ValueStruct.Max_Acceleration, min_acceleration_edit_values[HMI_flag.acc_axis], max_acceleration_edit_values[HMI_flag.acc_axis]); // MaxAcceleration value Draw_Edit_Integer4(select_acc.now, HMI_ValueStruct.Max_Acceleration, true); } @@ -1602,14 +1587,13 @@ void HMI_MaxAccelerationXYZE() { checkkey = MaxJerk; EncoderRate.enabled = false; if (WITHIN(HMI_flag.jerk_axis, X_AXIS, LAST_AXIS)) - planner.set_max_jerk(HMI_flag.jerk_axis, HMI_ValueStruct.Max_Jerk_scaled / 10); + planner.set_max_jerk(HMI_flag.jerk_axis, HMI_ValueStruct.Max_Jerk_scaled / MINUNITMULT); Draw_Edit_Float3(select_jerk.now, HMI_ValueStruct.Max_Jerk_scaled); return; } // MaxJerk limit if (WITHIN(HMI_flag.jerk_axis, X_AXIS, LAST_AXIS)) - NOMORE(HMI_ValueStruct.Max_Jerk_scaled, default_max_jerk[HMI_flag.jerk_axis] * 2 * MINUNITMULT); - NOLESS(HMI_ValueStruct.Max_Jerk_scaled, (MIN_MAXJERK) * MINUNITMULT); + LIMIT(HMI_ValueStruct.Max_Jerk_scaled, min_jerk_edit_values[HMI_flag.jerk_axis] * MINUNITMULT, max_jerk_edit_values[HMI_flag.jerk_axis] * MINUNITMULT); // MaxJerk value Draw_Edit_Float3(select_jerk.now, HMI_ValueStruct.Max_Jerk_scaled, true); } @@ -1623,14 +1607,13 @@ void HMI_StepXYZE() { checkkey = Step; EncoderRate.enabled = false; if (WITHIN(HMI_flag.step_axis, X_AXIS, LAST_AXIS)) - planner.settings.axis_steps_per_mm[HMI_flag.step_axis] = HMI_ValueStruct.Max_Step_scaled / 10; + planner.settings.axis_steps_per_mm[HMI_flag.step_axis] = HMI_ValueStruct.Max_Step_scaled / MINUNITMULT; Draw_Edit_Float3(select_step.now, HMI_ValueStruct.Max_Step_scaled); return; } // Step limit if (WITHIN(HMI_flag.step_axis, X_AXIS, LAST_AXIS)) - NOMORE(HMI_ValueStruct.Max_Step_scaled, 999.9 * MINUNITMULT); - NOLESS(HMI_ValueStruct.Max_Step_scaled, MIN_STEP); + LIMIT(HMI_ValueStruct.Max_Step_scaled, min_steps_edit_values[HMI_flag.step_axis] * MINUNITMULT, max_steps_edit_values[HMI_flag.step_axis] * MINUNITMULT); // Step value Draw_Edit_Float3(select_step.now, HMI_ValueStruct.Max_Step_scaled, true); } diff --git a/Marlin/src/lcd/e3v2/creality/dwin.h b/Marlin/src/lcd/e3v2/creality/dwin.h index 487f309ed996..854a011c5e3f 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin.h +++ b/Marlin/src/lcd/e3v2/creality/dwin.h @@ -27,6 +27,7 @@ #include "dwin_lcd.h" #include "../common/encoder.h" +#include "../common/limits.h" #include "../../../libs/BL24CXX.h" #include "../../../inc/MarlinConfigPre.h" diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index f430f6d1a900..ceaf147c3ba1 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -127,6 +127,11 @@ #define MIN_BED_TEMP 0 #endif +#define FEEDRATE_UNIT 1 +#define ACCELERATION_UNIT 1 +#define JERK_UNIT 10 +#define STEPS_UNIT 10 + /** * Custom menu items with jyersLCD */ @@ -155,13 +160,6 @@ constexpr uint16_t TROWS = 6, MROWS = TROWS - 1, #define MBASE(L) (49 + MLINE * (L)) -constexpr float default_max_feedrate[] = DEFAULT_MAX_FEEDRATE; -constexpr float default_max_acceleration[] = DEFAULT_MAX_ACCELERATION; -constexpr float default_steps[] = DEFAULT_AXIS_STEPS_PER_UNIT; -#if HAS_CLASSIC_JERK - constexpr float default_max_jerk[] = { DEFAULT_XJERK, DEFAULT_YJERK, DEFAULT_ZJERK, DEFAULT_EJERK }; -#endif - enum SelectItem : uint8_t { PAGE_PRINT = 0, PAGE_PREPARE, @@ -2369,10 +2367,10 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item case SPEED_X: if (draw) { Draw_Menu_Item(row, ICON_MaxSpeedX, F("X Axis")); - Draw_Float(planner.settings.max_feedrate_mm_s[X_AXIS], row, false, 1); + Draw_Float(planner.settings.max_feedrate_mm_s[X_AXIS], row, false, FEEDRATE_UNIT); } else - Modify_Value(planner.settings.max_feedrate_mm_s[X_AXIS], 0, default_max_feedrate[X_AXIS] * 2, 1); + Modify_Value(planner.settings.max_feedrate_mm_s[X_AXIS], min_feedrate_edit_values.x, max_feedrate_edit_values.x, FEEDRATE_UNIT); break; #endif @@ -2380,10 +2378,10 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item case SPEED_Y: if (draw) { Draw_Menu_Item(row, ICON_MaxSpeedY, F("Y Axis")); - Draw_Float(planner.settings.max_feedrate_mm_s[Y_AXIS], row, false, 1); + Draw_Float(planner.settings.max_feedrate_mm_s[Y_AXIS], row, false, FEEDRATE_UNIT); } else - Modify_Value(planner.settings.max_feedrate_mm_s[Y_AXIS], 0, default_max_feedrate[Y_AXIS] * 2, 1); + Modify_Value(planner.settings.max_feedrate_mm_s[Y_AXIS], min_feedrate_edit_values.y, max_feedrate_edit_values.y, FEEDRATE_UNIT); break; #endif @@ -2391,10 +2389,10 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item case SPEED_Z: if (draw) { Draw_Menu_Item(row, ICON_MaxSpeedZ, F("Z Axis")); - Draw_Float(planner.settings.max_feedrate_mm_s[Z_AXIS], row, false, 1); + Draw_Float(planner.settings.max_feedrate_mm_s[Z_AXIS], row, false, FEEDRATE_UNIT); } else - Modify_Value(planner.settings.max_feedrate_mm_s[Z_AXIS], 0, default_max_feedrate[Z_AXIS] * 2, 1); + Modify_Value(planner.settings.max_feedrate_mm_s[Z_AXIS], min_feedrate_edit_values.z, max_feedrate_edit_values.z, FEEDRATE_UNIT); break; #endif @@ -2402,10 +2400,10 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item case SPEED_E: if (draw) { Draw_Menu_Item(row, ICON_MaxSpeedE, F("Extruder")); - Draw_Float(planner.settings.max_feedrate_mm_s[E_AXIS], row, false, 1); + Draw_Float(planner.settings.max_feedrate_mm_s[E_AXIS], row, false, FEEDRATE_UNIT); } else - Modify_Value(planner.settings.max_feedrate_mm_s[E_AXIS], 0, default_max_feedrate[E_AXIS] * 2, 1); + Modify_Value(planner.settings.max_feedrate_mm_s[E_AXIS], min_feedrate_edit_values.e, max_feedrate_edit_values.e, FEEDRATE_UNIT); break; #endif } @@ -2430,35 +2428,35 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item case ACCEL_X: if (draw) { Draw_Menu_Item(row, ICON_MaxAccX, F("X Axis")); - Draw_Float(planner.settings.max_acceleration_mm_per_s2[X_AXIS], row, false, 1); + Draw_Float(planner.settings.max_acceleration_mm_per_s2[X_AXIS], row, false, ACCELERATION_UNIT); } else - Modify_Value(planner.settings.max_acceleration_mm_per_s2[X_AXIS], 0, default_max_acceleration[X_AXIS] * 2, 1); + Modify_Value(planner.settings.max_acceleration_mm_per_s2[X_AXIS], min_acceleration_edit_values.x, max_acceleration_edit_values.x, ACCELERATION_UNIT); break; case ACCEL_Y: if (draw) { Draw_Menu_Item(row, ICON_MaxAccY, F("Y Axis")); - Draw_Float(planner.settings.max_acceleration_mm_per_s2[Y_AXIS], row, false, 1); + Draw_Float(planner.settings.max_acceleration_mm_per_s2[Y_AXIS], row, false, ACCELERATION_UNIT); } else - Modify_Value(planner.settings.max_acceleration_mm_per_s2[Y_AXIS], 0, default_max_acceleration[Y_AXIS] * 2, 1); + Modify_Value(planner.settings.max_acceleration_mm_per_s2[Y_AXIS], min_acceleration_edit_values.y, max_acceleration_edit_values.y, ACCELERATION_UNIT); break; case ACCEL_Z: if (draw) { Draw_Menu_Item(row, ICON_MaxAccZ, F("Z Axis")); - Draw_Float(planner.settings.max_acceleration_mm_per_s2[Z_AXIS], row, false, 1); + Draw_Float(planner.settings.max_acceleration_mm_per_s2[Z_AXIS], row, false, ACCELERATION_UNIT); } else - Modify_Value(planner.settings.max_acceleration_mm_per_s2[Z_AXIS], 0, default_max_acceleration[Z_AXIS] * 2, 1); + Modify_Value(planner.settings.max_acceleration_mm_per_s2[Z_AXIS], min_acceleration_edit_values.z, max_acceleration_edit_values.z, ACCELERATION_UNIT); break; #if HAS_HOTEND case ACCEL_E: if (draw) { Draw_Menu_Item(row, ICON_MaxAccE, F("Extruder")); - Draw_Float(planner.settings.max_acceleration_mm_per_s2[E_AXIS], row, false, 1); + Draw_Float(planner.settings.max_acceleration_mm_per_s2[E_AXIS], row, false, ACCELERATION_UNIT); } else - Modify_Value(planner.settings.max_acceleration_mm_per_s2[E_AXIS], 0, default_max_acceleration[E_AXIS] * 2, 1); + Modify_Value(planner.settings.max_acceleration_mm_per_s2[E_AXIS], min_acceleration_edit_values.e, max_acceleration_edit_values.e, ACCELERATION_UNIT); break; #endif } @@ -2480,38 +2478,44 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item else Draw_Menu(Motion, MOTION_JERK); break; - case JERK_X: - if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeedJerkX, F("X Axis")); - Draw_Float(planner.max_jerk.x, row, false, 10); - } - else - Modify_Value(planner.max_jerk.x, 0, default_max_jerk[X_AXIS] * 2, 10); - break; - case JERK_Y: - if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeedJerkY, F("Y Axis")); - Draw_Float(planner.max_jerk.y, row, false, 10); - } - else - Modify_Value(planner.max_jerk.y, 0, default_max_jerk[Y_AXIS] * 2, 10); - break; - case JERK_Z: - if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeedJerkZ, F("Z Axis")); - Draw_Float(planner.max_jerk.z, row, false, 10); - } - else - Modify_Value(planner.max_jerk.z, 0, default_max_jerk[Z_AXIS] * 2, 10); - break; + #if HAS_X_AXIS + case JERK_X: + if (draw) { + Draw_Menu_Item(row, ICON_MaxSpeedJerkX, F("X Axis")); + Draw_Float(planner.max_jerk.x, row, false, JERK_UNIT); + } + else + Modify_Value(planner.max_jerk.x, min_jerk_edit_values.x, max_jerk_edit_values.x, JERK_UNIT); + break; + #endif + #if HAS_Y_AXIS + case JERK_Y: + if (draw) { + Draw_Menu_Item(row, ICON_MaxSpeedJerkY, F("Y Axis")); + Draw_Float(planner.max_jerk.y, row, false, JERK_UNIT); + } + else + Modify_Value(planner.max_jerk.y, min_jerk_edit_values.y, max_jerk_edit_values.y, JERK_UNIT); + break; + #endif + #if HAS_Z_AXIS + case JERK_Z: + if (draw) { + Draw_Menu_Item(row, ICON_MaxSpeedJerkZ, F("Z Axis")); + Draw_Float(planner.max_jerk.z, row, false, JERK_UNIT); + } + else + Modify_Value(planner.max_jerk.z, min_jerk_edit_values.z, max_jerk_edit_values.z, JERK_UNIT); + break; + #endif #if HAS_HOTEND case JERK_E: if (draw) { Draw_Menu_Item(row, ICON_MaxSpeedJerkE, F("Extruder")); - Draw_Float(planner.max_jerk.e, row, false, 10); + Draw_Float(planner.max_jerk.e, row, false, JERK_UNIT); } else - Modify_Value(planner.max_jerk.e, 0, default_max_jerk[E_AXIS] * 2, 10); + Modify_Value(planner.max_jerk.e, min_jerk_edit_values.e, max_jerk_edit_values.e, JERK_UNIT); break; #endif } @@ -2532,39 +2536,45 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item Draw_Menu_Item(row, ICON_Back, F("Back")); else Draw_Menu(Motion, MOTION_STEPS); - break; - case STEPS_X: - if (draw) { - Draw_Menu_Item(row, ICON_StepX, F("X Axis")); - Draw_Float(planner.settings.axis_steps_per_mm[X_AXIS], row, false, 10); - } - else - Modify_Value(planner.settings.axis_steps_per_mm[X_AXIS], 0, default_steps[X_AXIS] * 2, 10); - break; - case STEPS_Y: - if (draw) { - Draw_Menu_Item(row, ICON_StepY, F("Y Axis")); - Draw_Float(planner.settings.axis_steps_per_mm[Y_AXIS], row, false, 10); - } - else - Modify_Value(planner.settings.axis_steps_per_mm[Y_AXIS], 0, default_steps[Y_AXIS] * 2, 10); - break; - case STEPS_Z: - if (draw) { - Draw_Menu_Item(row, ICON_StepZ, F("Z Axis")); - Draw_Float(planner.settings.axis_steps_per_mm[Z_AXIS], row, false, 10); - } - else - Modify_Value(planner.settings.axis_steps_per_mm[Z_AXIS], 0, default_steps[Z_AXIS] * 2, 10); - break; + break; + #if HAS_X_AXIS + case STEPS_X: + if (draw) { + Draw_Menu_Item(row, ICON_StepX, F("X Axis")); + Draw_Float(planner.settings.axis_steps_per_mm[X_AXIS], row, false, STEPS_UNIT); + } + else + Modify_Value(planner.settings.axis_steps_per_mm[X_AXIS], min_steps_edit_values.x, max_steps_edit_values.x, STEPS_UNIT); + break; + #endif + #if HAS_Y_AXIS + case STEPS_Y: + if (draw) { + Draw_Menu_Item(row, ICON_StepY, F("Y Axis")); + Draw_Float(planner.settings.axis_steps_per_mm[Y_AXIS], row, false, STEPS_UNIT); + } + else + Modify_Value(planner.settings.axis_steps_per_mm[Y_AXIS], min_steps_edit_values.y, max_steps_edit_values.y, STEPS_UNIT); + break; + #endif + #if HAS_Z_AXIS + case STEPS_Z: + if (draw) { + Draw_Menu_Item(row, ICON_StepZ, F("Z Axis")); + Draw_Float(planner.settings.axis_steps_per_mm[Z_AXIS], row, false, STEPS_UNIT); + } + else + Modify_Value(planner.settings.axis_steps_per_mm[Z_AXIS], min_steps_edit_values.z, max_steps_edit_values.z, STEPS_UNIT); + break; + #endif #if HAS_HOTEND case STEPS_E: if (draw) { Draw_Menu_Item(row, ICON_StepE, F("Extruder")); - Draw_Float(planner.settings.axis_steps_per_mm[E_AXIS], row, false, 10); + Draw_Float(planner.settings.axis_steps_per_mm[E_AXIS], row, false, STEPS_UNIT); } else - Modify_Value(planner.settings.axis_steps_per_mm[E_AXIS], 0, 1000, 10); + Modify_Value(planner.settings.axis_steps_per_mm[E_AXIS], min_steps_edit_values.e, max_steps_edit_values.e, STEPS_UNIT); break; #endif } diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.h b/Marlin/src/lcd/e3v2/jyersui/dwin.h index 71db445aa869..2f5369d4a648 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.h +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.h @@ -30,6 +30,7 @@ #include "../common/dwin_font.h" #include "../common/dwin_color.h" #include "../common/encoder.h" +#include "../common/limits.h" #include "../../../libs/BL24CXX.h" #include "../../../inc/MarlinConfigPre.h" diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index 8bd0a67b9b84..6730c026c59a 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -143,13 +143,6 @@ // Load and Unload limits #define MAX_LOAD_UNLOAD 500 -// Feedspeed limit (max feedspeed = MAX_FEEDRATE_EDIT_VALUES) -#define MIN_MAXFEEDSPEED 1 -#define MIN_MAXACCELERATION 1 -#define MIN_MAXJERK 0.1 -#define MIN_STEP 1 -#define MAX_STEP 999.9 - // Editable temperature limits #define MIN_ETEMP 0 #define MAX_ETEMP (thermalManager.hotend_maxtemp[0] - (HOTEND_OVERSHOOT)) @@ -195,32 +188,6 @@ typedef struct { } select_t; select_t select_page{0}, select_print{0}; -constexpr float max_feedrate_edit_values[] = - #ifdef MAX_FEEDRATE_EDIT_VALUES - MAX_FEEDRATE_EDIT_VALUES - #else - { 1000, 1000, 10, 50 } - #endif -; - -constexpr float max_acceleration_edit_values[] = - #ifdef MAX_ACCEL_EDIT_VALUES - MAX_ACCEL_EDIT_VALUES - #else - { 1000, 1000, 200, 2000 } - #endif -; - -#if HAS_CLASSIC_JERK - constexpr float max_jerk_edit_values[] = - #ifdef MAX_JERK_EDIT_VALUES - MAX_JERK_EDIT_VALUES - #else - { DEFAULT_XJERK * 2, DEFAULT_YJERK * 2, DEFAULT_ZJERK * 2, DEFAULT_EJERK * 2 } - #endif - ; -#endif - #if HAS_HOTEND float last_E = 0; #define E_MIN_POS (last_E - (EXTRUDE_MAXLENGTH)) @@ -1301,8 +1268,8 @@ void EachMomentUpdate() { if (card.isPrinting() && !HMI_flag.percent_flag) { uint8_t percentDone = card.percentDone(); if (_percent_done != percentDone) { // print percent - _percent_done = percentDone; - Draw_Print_ProgressBar(); + _percent_done = percentDone; + Draw_Print_ProgressBar(); } // Estimate remaining time every 20 seconds @@ -2537,36 +2504,60 @@ void TramC () { Tram(4); } #endif void ApplyMaxSpeed() { planner.set_max_feedrate(HMI_value.axis, MenuData.Value / MINUNITMULT); } -void SetMaxSpeedX() { HMI_value.axis = X_AXIS, SetFloatOnClick(MIN_MAXFEEDSPEED, max_feedrate_edit_values[X_AXIS], UNITFDIGITS, planner.settings.max_feedrate_mm_s[X_AXIS], ApplyMaxSpeed); } -void SetMaxSpeedY() { HMI_value.axis = Y_AXIS, SetFloatOnClick(MIN_MAXFEEDSPEED, max_feedrate_edit_values[Y_AXIS], UNITFDIGITS, planner.settings.max_feedrate_mm_s[Y_AXIS], ApplyMaxSpeed); } -void SetMaxSpeedZ() { HMI_value.axis = Z_AXIS, SetFloatOnClick(MIN_MAXFEEDSPEED, max_feedrate_edit_values[Z_AXIS], UNITFDIGITS, planner.settings.max_feedrate_mm_s[Z_AXIS], ApplyMaxSpeed); } +#if HAS_X_AXIS + void SetMaxSpeedX() { HMI_value.axis = X_AXIS, SetFloatOnClick(min_feedrate_edit_values.x, max_feedrate_edit_values.x, UNITFDIGITS, planner.settings.max_feedrate_mm_s[X_AXIS], ApplyMaxSpeed); } +#endif +#if HAS_Y_AXIS + void SetMaxSpeedY() { HMI_value.axis = Y_AXIS, SetFloatOnClick(min_feedrate_edit_values.y, max_feedrate_edit_values.y, UNITFDIGITS, planner.settings.max_feedrate_mm_s[Y_AXIS], ApplyMaxSpeed); } +#endif +#if HAS_Z_AXIS + void SetMaxSpeedZ() { HMI_value.axis = Z_AXIS, SetFloatOnClick(min_feedrate_edit_values.z, max_feedrate_edit_values.z, UNITFDIGITS, planner.settings.max_feedrate_mm_s[Z_AXIS], ApplyMaxSpeed); } +#endif #if HAS_HOTEND - void SetMaxSpeedE() { HMI_value.axis = E_AXIS; SetFloatOnClick(MIN_MAXFEEDSPEED, max_feedrate_edit_values[E_AXIS], UNITFDIGITS, planner.settings.max_feedrate_mm_s[E_AXIS], ApplyMaxSpeed); } + void SetMaxSpeedE() { HMI_value.axis = E_AXIS; SetFloatOnClick(min_feedrate_edit_values.e, max_feedrate_edit_values.e, UNITFDIGITS, planner.settings.max_feedrate_mm_s[E_AXIS], ApplyMaxSpeed); } #endif void ApplyMaxAccel() { planner.set_max_acceleration(HMI_value.axis, MenuData.Value); } -void SetMaxAccelX() { HMI_value.axis = X_AXIS, SetIntOnClick(MIN_MAXACCELERATION, max_acceleration_edit_values[X_AXIS], planner.settings.max_acceleration_mm_per_s2[X_AXIS], ApplyMaxAccel); } -void SetMaxAccelY() { HMI_value.axis = Y_AXIS, SetIntOnClick(MIN_MAXACCELERATION, max_acceleration_edit_values[Y_AXIS], planner.settings.max_acceleration_mm_per_s2[Y_AXIS], ApplyMaxAccel); } -void SetMaxAccelZ() { HMI_value.axis = Z_AXIS, SetIntOnClick(MIN_MAXACCELERATION, max_acceleration_edit_values[Z_AXIS], planner.settings.max_acceleration_mm_per_s2[Z_AXIS], ApplyMaxAccel); } +#if HAS_X_AXIS + void SetMaxAccelX() { HMI_value.axis = X_AXIS, SetIntOnClick(min_acceleration_edit_values.x, max_acceleration_edit_values.x, planner.settings.max_acceleration_mm_per_s2[X_AXIS], ApplyMaxAccel); } +#endif +#if HAS_Y_AXIS + void SetMaxAccelY() { HMI_value.axis = Y_AXIS, SetIntOnClick(min_acceleration_edit_values.y, max_acceleration_edit_values.y, planner.settings.max_acceleration_mm_per_s2[Y_AXIS], ApplyMaxAccel); } +#endif +#if HAS_Z_AXIS + void SetMaxAccelZ() { HMI_value.axis = Z_AXIS, SetIntOnClick(min_acceleration_edit_values.z, max_acceleration_edit_values.z, planner.settings.max_acceleration_mm_per_s2[Z_AXIS], ApplyMaxAccel); } +#endif #if HAS_HOTEND - void SetMaxAccelE() { HMI_value.axis = E_AXIS; SetIntOnClick(MIN_MAXACCELERATION, max_acceleration_edit_values[E_AXIS], planner.settings.max_acceleration_mm_per_s2[E_AXIS], ApplyMaxAccel); } + void SetMaxAccelE() { HMI_value.axis = E_AXIS; SetIntOnClick(min_acceleration_edit_values.e, max_acceleration_edit_values.e, planner.settings.max_acceleration_mm_per_s2[E_AXIS], ApplyMaxAccel); } #endif #if HAS_CLASSIC_JERK void ApplyMaxJerk() { planner.set_max_jerk(HMI_value.axis, MenuData.Value / MINUNITMULT); } - void SetMaxJerkX() { HMI_value.axis = X_AXIS, SetFloatOnClick(MIN_MAXJERK, max_jerk_edit_values[X_AXIS], UNITFDIGITS, planner.max_jerk.x, ApplyMaxJerk); } - void SetMaxJerkY() { HMI_value.axis = Y_AXIS, SetFloatOnClick(MIN_MAXJERK, max_jerk_edit_values[Y_AXIS], UNITFDIGITS, planner.max_jerk.y, ApplyMaxJerk); } - void SetMaxJerkZ() { HMI_value.axis = Z_AXIS, SetFloatOnClick(MIN_MAXJERK, max_jerk_edit_values[Z_AXIS], UNITFDIGITS, planner.max_jerk.z, ApplyMaxJerk); } + #if HAS_X_AXIS + void SetMaxJerkX() { HMI_value.axis = X_AXIS, SetFloatOnClick(min_jerk_edit_values.x, max_jerk_edit_values.x, UNITFDIGITS, planner.max_jerk.x, ApplyMaxJerk); } + #endif + #if HAS_Y_AXIS + void SetMaxJerkY() { HMI_value.axis = Y_AXIS, SetFloatOnClick(min_jerk_edit_values.y, max_jerk_edit_values.y, UNITFDIGITS, planner.max_jerk.y, ApplyMaxJerk); } + #endif + #if HAS_Z_AXIS + void SetMaxJerkZ() { HMI_value.axis = Z_AXIS, SetFloatOnClick(min_jerk_edit_values.z, max_jerk_edit_values.z, UNITFDIGITS, planner.max_jerk.z, ApplyMaxJerk); } + #endif #if HAS_HOTEND - void SetMaxJerkE() { HMI_value.axis = E_AXIS; SetFloatOnClick(MIN_MAXJERK, max_jerk_edit_values[E_AXIS], UNITFDIGITS, planner.max_jerk.e, ApplyMaxJerk); } + void SetMaxJerkE() { HMI_value.axis = E_AXIS; SetFloatOnClick(min_jerk_edit_values.e, max_jerk_edit_values.e, UNITFDIGITS, planner.max_jerk.e, ApplyMaxJerk); } #endif #endif -void SetStepsX() { HMI_value.axis = X_AXIS, SetPFloatOnClick( MIN_STEP, MAX_STEP, UNITFDIGITS); } -void SetStepsY() { HMI_value.axis = Y_AXIS, SetPFloatOnClick( MIN_STEP, MAX_STEP, UNITFDIGITS); } -void SetStepsZ() { HMI_value.axis = Z_AXIS, SetPFloatOnClick( MIN_STEP, MAX_STEP, UNITFDIGITS); } +#if HAS_X_AXIS + void SetStepsX() { HMI_value.axis = X_AXIS, SetPFloatOnClick( min_steps_edit_values.x, max_steps_edit_values.x, UNITFDIGITS); } +#endif +#if HAS_Y_AXIS + void SetStepsY() { HMI_value.axis = Y_AXIS, SetPFloatOnClick( min_steps_edit_values.y, max_steps_edit_values.y, UNITFDIGITS); } +#endif +#if HAS_Z_AXIS + void SetStepsZ() { HMI_value.axis = Z_AXIS, SetPFloatOnClick( min_steps_edit_values.z, max_steps_edit_values.z, UNITFDIGITS); } +#endif #if HAS_HOTEND - void SetStepsE() { HMI_value.axis = E_AXIS; SetPFloatOnClick( MIN_STEP, MAX_STEP, UNITFDIGITS); } + void SetStepsE() { HMI_value.axis = E_AXIS; SetPFloatOnClick( min_steps_edit_values.e, max_steps_edit_values.e, UNITFDIGITS); } #if ENABLED(PIDTEMP) void SetHotendPidT() { SetPIntOnClick(MIN_ETEMP, MAX_ETEMP); } #endif @@ -2816,29 +2807,35 @@ void onDrawSpeed(MenuItemClass* menuitem, int8_t line) { onDrawSubMenu(menuitem, line); } -void onDrawMaxSpeedX(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 228, 147); - DWIN_Frame_AreaCopy(1, 229, 133, 236, 147, LBLX + 58, MBASE(line)); // X +#if HAS_X_AXIS + void onDrawMaxSpeedX(MenuItemClass* menuitem, int8_t line) { + if (HMI_IsChinese()) { + menuitem->SetFrame(1, 173, 133, 228, 147); + DWIN_Frame_AreaCopy(1, 229, 133, 236, 147, LBLX + 58, MBASE(line)); // X + } + onDrawPFloatMenu(menuitem, line); } - onDrawPFloatMenu(menuitem, line); -} +#endif -void onDrawMaxSpeedY(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 228, 147); - DWIN_Frame_AreaCopy(1, 1, 150, 7, 160, LBLX + 58, MBASE(line)); // Y +#if HAS_Y_AXIS + void onDrawMaxSpeedY(MenuItemClass* menuitem, int8_t line) { + if (HMI_IsChinese()) { + menuitem->SetFrame(1, 173, 133, 228, 147); + DWIN_Frame_AreaCopy(1, 1, 150, 7, 160, LBLX + 58, MBASE(line)); // Y + } + onDrawPFloatMenu(menuitem, line); } - onDrawPFloatMenu(menuitem, line); -} +#endif -void onDrawMaxSpeedZ(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 228, 147); - DWIN_Frame_AreaCopy(1, 9, 150, 16, 160, LBLX + 58, MBASE(line) + 3); // Z +#if HAS_Z_AXIS + void onDrawMaxSpeedZ(MenuItemClass* menuitem, int8_t line) { + if (HMI_IsChinese()) { + menuitem->SetFrame(1, 173, 133, 228, 147); + DWIN_Frame_AreaCopy(1, 9, 150, 16, 160, LBLX + 58, MBASE(line) + 3); // Z + } + onDrawPFloatMenu(menuitem, line); } - onDrawPFloatMenu(menuitem, line); -} +#endif #if HAS_HOTEND void onDrawMaxSpeedE(MenuItemClass* menuitem, int8_t line) { @@ -2858,32 +2855,38 @@ void onDrawAcc(MenuItemClass* menuitem, int8_t line) { onDrawSubMenu(menuitem, line); } -void onDrawMaxAccelX(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line)); - DWIN_Frame_AreaCopy(1, 229, 133, 236, 147, LBLX + 71, MBASE(line)); // X +#if HAS_X_AXIS + void onDrawMaxAccelX(MenuItemClass* menuitem, int8_t line) { + if (HMI_IsChinese()) { + menuitem->SetFrame(1, 173, 133, 200, 147); + DWIN_Frame_AreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line)); + DWIN_Frame_AreaCopy(1, 229, 133, 236, 147, LBLX + 71, MBASE(line)); // X + } + onDrawPInt32Menu(menuitem, line); } - onDrawPInt32Menu(menuitem, line); -} +#endif -void onDrawMaxAccelY(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line)); - DWIN_Frame_AreaCopy(1, 1, 150, 7, 160, LBLX + 71, MBASE(line)); // Y +#if HAS_Y_AXIS + void onDrawMaxAccelY(MenuItemClass* menuitem, int8_t line) { + if (HMI_IsChinese()) { + menuitem->SetFrame(1, 173, 133, 200, 147); + DWIN_Frame_AreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line)); + DWIN_Frame_AreaCopy(1, 1, 150, 7, 160, LBLX + 71, MBASE(line)); // Y + } + onDrawPInt32Menu(menuitem, line); } - onDrawPInt32Menu(menuitem, line); -} +#endif -void onDrawMaxAccelZ(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line)); - DWIN_Frame_AreaCopy(1, 9, 150, 16, 160, LBLX + 71, MBASE(line)); // Z +#if HAS_Z_AXIS + void onDrawMaxAccelZ(MenuItemClass* menuitem, int8_t line) { + if (HMI_IsChinese()) { + menuitem->SetFrame(1, 173, 133, 200, 147); + DWIN_Frame_AreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line)); + DWIN_Frame_AreaCopy(1, 9, 150, 16, 160, LBLX + 71, MBASE(line)); // Z + } + onDrawPInt32Menu(menuitem, line); } - onDrawPInt32Menu(menuitem, line); -} +#endif #if HAS_HOTEND void onDrawMaxAccelE(MenuItemClass* menuitem, int8_t line) { @@ -2907,35 +2910,41 @@ void onDrawMaxAccelZ(MenuItemClass* menuitem, int8_t line) { onDrawSubMenu(menuitem, line); } - void onDrawMaxJerkX(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line)); - DWIN_Frame_AreaCopy(1, 202, 133, 228, 147, LBLX + 53, MBASE(line)); - DWIN_Frame_AreaCopy(1, 229, 133, 236, 147, LBLX + 83, MBASE(line)); + #if HAS_X_AXIS + void onDrawMaxJerkX(MenuItemClass* menuitem, int8_t line) { + if (HMI_IsChinese()) { + menuitem->SetFrame(1, 173, 133, 200, 147); + DWIN_Frame_AreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line)); + DWIN_Frame_AreaCopy(1, 202, 133, 228, 147, LBLX + 53, MBASE(line)); + DWIN_Frame_AreaCopy(1, 229, 133, 236, 147, LBLX + 83, MBASE(line)); + } + onDrawPFloatMenu(menuitem, line); } - onDrawPFloatMenu(menuitem, line); - } + #endif - void onDrawMaxJerkY(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line)); - DWIN_Frame_AreaCopy(1, 202, 133, 228, 147, LBLX + 53, MBASE(line)); - DWIN_Frame_AreaCopy(1, 1, 150, 7, 160, LBLX + 83, MBASE(line)); + #if HAS_Y_AXIS + void onDrawMaxJerkY(MenuItemClass* menuitem, int8_t line) { + if (HMI_IsChinese()) { + menuitem->SetFrame(1, 173, 133, 200, 147); + DWIN_Frame_AreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line)); + DWIN_Frame_AreaCopy(1, 202, 133, 228, 147, LBLX + 53, MBASE(line)); + DWIN_Frame_AreaCopy(1, 1, 150, 7, 160, LBLX + 83, MBASE(line)); + } + onDrawPFloatMenu(menuitem, line); } - onDrawPFloatMenu(menuitem, line); - } + #endif - void onDrawMaxJerkZ(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line)); - DWIN_Frame_AreaCopy(1, 202, 133, 228, 147, LBLX + 53, MBASE(line)); - DWIN_Frame_AreaCopy(1, 9, 150, 16, 160, LBLX + 83, MBASE(line)); + #if HAS_Z_AXIS + void onDrawMaxJerkZ(MenuItemClass* menuitem, int8_t line) { + if (HMI_IsChinese()) { + menuitem->SetFrame(1, 173, 133, 200, 147); + DWIN_Frame_AreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line)); + DWIN_Frame_AreaCopy(1, 202, 133, 228, 147, LBLX + 53, MBASE(line)); + DWIN_Frame_AreaCopy(1, 9, 150, 16, 160, LBLX + 83, MBASE(line)); + } + onDrawPFloatMenu(menuitem, line); } - onDrawPFloatMenu(menuitem, line); - } + #endif #if HAS_HOTEND @@ -2953,29 +2962,35 @@ void onDrawMaxAccelZ(MenuItemClass* menuitem, int8_t line) { #endif // HAS_CLASSIC_JERK -void onDrawStepsX(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 153, 148, 194, 161); - DWIN_Frame_AreaCopy(1, 229, 133, 236, 147, LBLX + 44, MBASE(line)); // X +#if HAS_X_AXIS + void onDrawStepsX(MenuItemClass* menuitem, int8_t line) { + if (HMI_IsChinese()) { + menuitem->SetFrame(1, 153, 148, 194, 161); + DWIN_Frame_AreaCopy(1, 229, 133, 236, 147, LBLX + 44, MBASE(line)); // X + } + onDrawPFloatMenu(menuitem, line); } - onDrawPFloatMenu(menuitem, line); -} +#endif -void onDrawStepsY(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 153, 148, 194, 161); - DWIN_Frame_AreaCopy(1, 1, 150, 7, 160, LBLX + 44, MBASE(line)); // Y +#if HAS_Y_AXIS + void onDrawStepsY(MenuItemClass* menuitem, int8_t line) { + if (HMI_IsChinese()) { + menuitem->SetFrame(1, 153, 148, 194, 161); + DWIN_Frame_AreaCopy(1, 1, 150, 7, 160, LBLX + 44, MBASE(line)); // Y + } + onDrawPFloatMenu(menuitem, line); } - onDrawPFloatMenu(menuitem, line); -} +#endif -void onDrawStepsZ(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 153, 148, 194, 161); - DWIN_Frame_AreaCopy(1, 9, 150, 16, 160, LBLX + 44, MBASE(line)); // Z +#if HAS_Z_AXIS + void onDrawStepsZ(MenuItemClass* menuitem, int8_t line) { + if (HMI_IsChinese()) { + menuitem->SetFrame(1, 153, 148, 194, 161); + DWIN_Frame_AreaCopy(1, 9, 150, 16, 160, LBLX + 44, MBASE(line)); // Z + } + onDrawPFloatMenu(menuitem, line); } - onDrawPFloatMenu(menuitem, line); -} +#endif #if HAS_HOTEND @@ -2996,10 +3011,7 @@ void onDrawStepsZ(MenuItemClass* menuitem, int8_t line) { // Menu Creation and Drawing functions ====================================================== frame_rect_t selrect(frame_rect_t) { - if (HMI_IsChinese()) - return {133, 1, 28, 13}; - else - return{0}; + return HMI_IsChinese() ? frame_rect_t({ 133, 1, 28, 13 }) : frame_rect_t({ 0 }); } void Draw_Prepare_Menu() { @@ -3147,9 +3159,15 @@ void Draw_Move_Menu() { if (SET_MENU_R(MoveMenu, selrect({192, 1, 42, 14}), MSG_MOVE_AXIS, 6)) { BACK_ITEM(Draw_Prepare_Menu); EDIT_ITEM(ICON_Axis, MSG_LIVE_MOVE, onDrawChkbMenu, SetLiveMove, &EnableLiveMove); - EDIT_ITEM(ICON_MoveX, MSG_MOVE_X, onDrawMoveX, SetMoveX, ¤t_position.x); - EDIT_ITEM(ICON_MoveY, MSG_MOVE_Y, onDrawMoveY, SetMoveY, ¤t_position.y); - EDIT_ITEM(ICON_MoveZ, MSG_MOVE_Z, onDrawMoveZ, SetMoveZ, ¤t_position.z); + #if HAS_X_AXIS + EDIT_ITEM(ICON_MoveX, MSG_MOVE_X, onDrawMoveX, SetMoveX, ¤t_position.x); + #endif + #if HAS_Y_AXIS + EDIT_ITEM(ICON_MoveY, MSG_MOVE_Y, onDrawMoveY, SetMoveY, ¤t_position.y); + #endif + #if HAS_Z_AXIS + EDIT_ITEM(ICON_MoveZ, MSG_MOVE_Z, onDrawMoveZ, SetMoveZ, ¤t_position.z); + #endif #if HAS_HOTEND gcode.process_subcommands_now(F("G92E0")); // reset extruder position EDIT_ITEM(ICON_Extruder, MSG_MOVE_E, onDrawMoveE, SetMoveE, ¤t_position.e); @@ -3165,9 +3183,15 @@ void Draw_Move_Menu() { checkkey = Menu; if (SET_MENU(HomeOffMenu, MSG_SET_HOME_OFFSETS, 4)) { BACK_ITEM(Draw_PhySet_Menu); - EDIT_ITEM(ICON_HomeOffsetX, MSG_HOME_OFFSET_X, onDrawPFloatMenu, SetHomeOffsetX, &home_offset.x); - EDIT_ITEM(ICON_HomeOffsetY, MSG_HOME_OFFSET_Y, onDrawPFloatMenu, SetHomeOffsetY, &home_offset.y); - EDIT_ITEM(ICON_HomeOffsetZ, MSG_HOME_OFFSET_Z, onDrawPFloatMenu, SetHomeOffsetZ, &home_offset.z); + #if HAS_X_AXIS + EDIT_ITEM(ICON_HomeOffsetX, MSG_HOME_OFFSET_X, onDrawPFloatMenu, SetHomeOffsetX, &home_offset.x); + #endif + #if HAS_Y_AXIS + EDIT_ITEM(ICON_HomeOffsetY, MSG_HOME_OFFSET_Y, onDrawPFloatMenu, SetHomeOffsetY, &home_offset.y); + #endif + #if HAS_Z_AXIS + EDIT_ITEM(ICON_HomeOffsetZ, MSG_HOME_OFFSET_Z, onDrawPFloatMenu, SetHomeOffsetZ, &home_offset.z); + #endif } UpdateMenu(HomeOffMenu); } @@ -3180,9 +3204,15 @@ void Draw_Move_Menu() { checkkey = Menu; if (SET_MENU(ProbeSetMenu, MSG_ZPROBE_SETTINGS, 9)) { BACK_ITEM(Draw_AdvancedSettings_Menu); - EDIT_ITEM(ICON_ProbeOffsetX, MSG_ZPROBE_XOFFSET, onDrawPFloatMenu, SetProbeOffsetX, &probe.offset.x); - EDIT_ITEM(ICON_ProbeOffsetY, MSG_ZPROBE_YOFFSET, onDrawPFloatMenu, SetProbeOffsetY, &probe.offset.y); - EDIT_ITEM(ICON_ProbeOffsetZ, MSG_ZPROBE_ZOFFSET, onDrawPFloat2Menu, SetProbeOffsetZ, &probe.offset.z); + #if HAS_X_AXIS + EDIT_ITEM(ICON_ProbeOffsetX, MSG_ZPROBE_XOFFSET, onDrawPFloatMenu, SetProbeOffsetX, &probe.offset.x); + #endif + #if HAS_Y_AXIS + EDIT_ITEM(ICON_ProbeOffsetY, MSG_ZPROBE_YOFFSET, onDrawPFloatMenu, SetProbeOffsetY, &probe.offset.y); + #endif + #if HAS_Z_AXIS + EDIT_ITEM(ICON_ProbeOffsetZ, MSG_ZPROBE_ZOFFSET, onDrawPFloat2Menu, SetProbeOffsetZ, &probe.offset.z); + #endif #if ENABLED(BLTOUCH) MENU_ITEM(ICON_ProbeStow, MSG_MANUAL_STOW, onDrawMenuItem, ProbeStow); MENU_ITEM(ICON_ProbeDeploy, MSG_MANUAL_DEPLOY, onDrawMenuItem, ProbeDeploy); @@ -3431,7 +3461,7 @@ void Draw_Motion_Menu() { #define _Preheat_Menu(N) \ void Draw_Preheat## N ##_Menu() { \ - HMI_value.Select = N-1; \ + HMI_value.Select = (N) - 1; \ Draw_Preheat_Menu(SET_MENU(PreheatMenu, MSG_PREHEAT_## N ##_SETTINGS, 5)); \ } REPEAT_1(PREHEAT_COUNT, _Preheat_Menu) @@ -3463,9 +3493,15 @@ void Draw_MaxSpeed_Menu() { checkkey = Menu; if (SET_MENU_R(MaxSpeedMenu, selrect({1, 16, 28, 13}), MSG_MAX_SPEED, 5)) { BACK_ITEM(Draw_Motion_Menu); - EDIT_ITEM(ICON_MaxSpeedX, MSG_VMAX_A, onDrawMaxSpeedX, SetMaxSpeedX, &planner.settings.max_feedrate_mm_s[X_AXIS]); - EDIT_ITEM(ICON_MaxSpeedY, MSG_VMAX_B, onDrawMaxSpeedY, SetMaxSpeedY, &planner.settings.max_feedrate_mm_s[Y_AXIS]); - EDIT_ITEM(ICON_MaxSpeedZ, MSG_VMAX_C, onDrawMaxSpeedZ, SetMaxSpeedZ, &planner.settings.max_feedrate_mm_s[Z_AXIS]); + #if HAS_X_AXIS + EDIT_ITEM(ICON_MaxSpeedX, MSG_VMAX_A, onDrawMaxSpeedX, SetMaxSpeedX, &planner.settings.max_feedrate_mm_s[X_AXIS]); + #endif + #if HAS_Y_AXIS + EDIT_ITEM(ICON_MaxSpeedY, MSG_VMAX_B, onDrawMaxSpeedY, SetMaxSpeedY, &planner.settings.max_feedrate_mm_s[Y_AXIS]); + #endif + #if HAS_Z_AXIS + EDIT_ITEM(ICON_MaxSpeedZ, MSG_VMAX_C, onDrawMaxSpeedZ, SetMaxSpeedZ, &planner.settings.max_feedrate_mm_s[Z_AXIS]); + #endif #if HAS_HOTEND EDIT_ITEM(ICON_MaxSpeedE, MSG_VMAX_E, onDrawMaxSpeedE, SetMaxSpeedE, &planner.settings.max_feedrate_mm_s[E_AXIS]); #endif @@ -3477,9 +3513,15 @@ void Draw_MaxAccel_Menu() { checkkey = Menu; if (SET_MENU_R(MaxAccelMenu, selrect({1, 16, 28, 13}), MSG_AMAX_EN, 5)) { BACK_ITEM(Draw_Motion_Menu); - EDIT_ITEM(ICON_MaxAccX, MSG_AMAX_A, onDrawMaxAccelX, SetMaxAccelX, &planner.settings.max_acceleration_mm_per_s2[X_AXIS]); - EDIT_ITEM(ICON_MaxAccY, MSG_AMAX_B, onDrawMaxAccelY, SetMaxAccelY, &planner.settings.max_acceleration_mm_per_s2[Y_AXIS]); - EDIT_ITEM(ICON_MaxAccZ, MSG_AMAX_C, onDrawMaxAccelZ, SetMaxAccelZ, &planner.settings.max_acceleration_mm_per_s2[Z_AXIS]); + #if HAS_X_AXIS + EDIT_ITEM(ICON_MaxAccX, MSG_AMAX_A, onDrawMaxAccelX, SetMaxAccelX, &planner.settings.max_acceleration_mm_per_s2[X_AXIS]); + #endif + #if HAS_Y_AXIS + EDIT_ITEM(ICON_MaxAccY, MSG_AMAX_B, onDrawMaxAccelY, SetMaxAccelY, &planner.settings.max_acceleration_mm_per_s2[Y_AXIS]); + #endif + #if HAS_Z_AXIS + EDIT_ITEM(ICON_MaxAccZ, MSG_AMAX_C, onDrawMaxAccelZ, SetMaxAccelZ, &planner.settings.max_acceleration_mm_per_s2[Z_AXIS]); + #endif #if HAS_HOTEND EDIT_ITEM(ICON_MaxAccE, MSG_AMAX_E, onDrawMaxAccelE, SetMaxAccelE, &planner.settings.max_acceleration_mm_per_s2[E_AXIS]); #endif @@ -3493,9 +3535,15 @@ void Draw_MaxAccel_Menu() { checkkey = Menu; if (SET_MENU_R(MaxJerkMenu, selrect({1, 16, 28, 13}), MSG_JERK, 5)) { BACK_ITEM(Draw_Motion_Menu); - EDIT_ITEM(ICON_MaxSpeedJerkX, MSG_VA_JERK, onDrawMaxJerkX, SetMaxJerkX, &planner.max_jerk.x); - EDIT_ITEM(ICON_MaxSpeedJerkY, MSG_VB_JERK, onDrawMaxJerkY, SetMaxJerkY, &planner.max_jerk.y); - EDIT_ITEM(ICON_MaxSpeedJerkZ, MSG_VC_JERK, onDrawMaxJerkZ, SetMaxJerkZ, &planner.max_jerk.z); + #if HAS_X_AXIS + EDIT_ITEM(ICON_MaxSpeedJerkX, MSG_VA_JERK, onDrawMaxJerkX, SetMaxJerkX, &planner.max_jerk.x); + #endif + #if HAS_Y_AXIS + EDIT_ITEM(ICON_MaxSpeedJerkY, MSG_VB_JERK, onDrawMaxJerkY, SetMaxJerkY, &planner.max_jerk.y); + #endif + #if HAS_Z_AXIS + EDIT_ITEM(ICON_MaxSpeedJerkZ, MSG_VC_JERK, onDrawMaxJerkZ, SetMaxJerkZ, &planner.max_jerk.z); + #endif #if HAS_HOTEND EDIT_ITEM(ICON_MaxSpeedJerkE, MSG_VE_JERK, onDrawMaxJerkE, SetMaxJerkE, &planner.max_jerk.e); #endif @@ -3509,9 +3557,15 @@ void Draw_Steps_Menu() { checkkey = Menu; if (SET_MENU_R(StepsMenu, selrect({1, 16, 28, 13}), MSG_STEPS_PER_MM, 5)) { BACK_ITEM(Draw_Motion_Menu); - EDIT_ITEM(ICON_StepX, MSG_A_STEPS, onDrawStepsX, SetStepsX, &planner.settings.axis_steps_per_mm[X_AXIS]); - EDIT_ITEM(ICON_StepY, MSG_B_STEPS, onDrawStepsY, SetStepsY, &planner.settings.axis_steps_per_mm[Y_AXIS]); - EDIT_ITEM(ICON_StepZ, MSG_C_STEPS, onDrawStepsZ, SetStepsZ, &planner.settings.axis_steps_per_mm[Z_AXIS]); + #if HAS_X_AXIS + EDIT_ITEM(ICON_StepX, MSG_A_STEPS, onDrawStepsX, SetStepsX, &planner.settings.axis_steps_per_mm[X_AXIS]); + #endif + #if HAS_Y_AXIS + EDIT_ITEM(ICON_StepY, MSG_B_STEPS, onDrawStepsY, SetStepsY, &planner.settings.axis_steps_per_mm[Y_AXIS]); + #endif + #if HAS_Z_AXIS + EDIT_ITEM(ICON_StepZ, MSG_C_STEPS, onDrawStepsZ, SetStepsZ, &planner.settings.axis_steps_per_mm[Z_AXIS]); + #endif #if HAS_HOTEND EDIT_ITEM(ICON_StepE, MSG_E_STEPS, onDrawStepsE, SetStepsE, &planner.settings.axis_steps_per_mm[E_AXIS]); #endif @@ -3624,9 +3678,15 @@ void Draw_Steps_Menu() { if (SET_MENU(HomingMenu, MSG_HOMING, 6)) { BACK_ITEM(Draw_Prepare_Menu); MENU_ITEM(ICON_Homing, MSG_AUTO_HOME, onDrawMenuItem, AutoHome); - MENU_ITEM(ICON_HomeX, MSG_AUTO_HOME_X, onDrawMenuItem, HomeX); - MENU_ITEM(ICON_HomeY, MSG_AUTO_HOME_Y, onDrawMenuItem, HomeY); - MENU_ITEM(ICON_HomeZ, MSG_AUTO_HOME_Z, onDrawMenuItem, HomeZ); + #if HAS_X_AXIS + MENU_ITEM(ICON_HomeX, MSG_AUTO_HOME_X, onDrawMenuItem, HomeX); + #endif + #if HAS_Y_AXIS + MENU_ITEM(ICON_HomeY, MSG_AUTO_HOME_Y, onDrawMenuItem, HomeY); + #endif + #if HAS_Z_AXIS + MENU_ITEM(ICON_HomeZ, MSG_AUTO_HOME_Z, onDrawMenuItem, HomeZ); + #endif #if ENABLED(MESH_BED_LEVELING) EDIT_ITEM(ICON_ZAfterHome, MSG_Z_AFTER_HOME, onDrawPInt8Menu, SetZAfterHoming, &HMI_data.z_after_homing); #endif diff --git a/Marlin/src/lcd/e3v2/proui/dwin.h b/Marlin/src/lcd/e3v2/proui/dwin.h index 26b77da5fb13..0057a8639234 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.h +++ b/Marlin/src/lcd/e3v2/proui/dwin.h @@ -33,6 +33,7 @@ #include "dwin_defines.h" #include "dwinui.h" #include "../common/encoder.h" +#include "../common/limits.h" #include "../../../libs/BL24CXX.h" #if EITHER(BABYSTEPPING, HAS_BED_PROBE) From 51fbe03016ffab690c336f814ff39ad0cb3b2164 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 18 May 2023 06:06:02 +0000 Subject: [PATCH 193/427] [cron] Bump distribution date (2023-05-18) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 1c01b9cc32d4..d750fb9fa42e 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-17" +//#define STRING_DISTRIBUTION_DATE "2023-05-18" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index f3e8162cc82e..f1b231143e38 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-17" + #define STRING_DISTRIBUTION_DATE "2023-05-18" #endif /** From 74a6f5961bc82ef5887ddb7407a8798dc282b2c5 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 18 May 2023 03:03:54 -0500 Subject: [PATCH 194/427] =?UTF-8?q?=F0=9F=94=A8=20Fix=20Windows=20path=20b?= =?UTF-8?q?ackslash=20treated=20as=20escape?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Luc <8822552+luc-github@users.noreply.github.com> --- .../share/PlatformIO/scripts/common-dependencies.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/buildroot/share/PlatformIO/scripts/common-dependencies.py b/buildroot/share/PlatformIO/scripts/common-dependencies.py index aa531be29685..e90ba24dd349 100644 --- a/buildroot/share/PlatformIO/scripts/common-dependencies.py +++ b/buildroot/share/PlatformIO/scripts/common-dependencies.py @@ -55,10 +55,11 @@ def add_to_feat_cnf(feature, flines): # Get a reference to the FEATURE_CONFIG under construction feat = FEATURE_CONFIG[feature] - # Split up passed lines on commas or newlines and iterate - # Add common options to the features config under construction - # For lib_deps replace a previous instance of the same library - atoms = re.sub(r',\s*', '\n', flines).strip().split('\n') + # Split up passed lines on commas or newlines and iterate. + # Take care to convert Windows '\' paths to Unix-style '/'. + # Add common options to the features config under construction. + # For lib_deps replace a previous instance of the same library. + atoms = re.sub(r',\s*', '\n', flines.replace('\\', '/')).strip().split('\n') for line in atoms: parts = line.split('=') name = parts.pop(0) From a886906f01d44e56d249de1f37a11342697b465c Mon Sep 17 00:00:00 2001 From: I3DBeeTech <129617321+I3DBeeTech@users.noreply.github.com> Date: Thu, 18 May 2023 13:53:29 +0530 Subject: [PATCH 195/427] =?UTF-8?q?=E2=9C=A8=20I3DBEEZ9=20board=20(#25614)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/test-builds.yml | 3 +- Marlin/src/core/boards.h | 1 + Marlin/src/pins/pins.h | 2 + Marlin/src/pins/stm32f4/pins_I3DBEEZ9.h | 626 ++++++++++++++++++ .../PlatformIO/boards/marlin_I3DBEEZ9.json | 46 ++ .../variants/MARLIN_I3DBEEZ9/PeripheralPins.c | 370 +++++++++++ .../variants/MARLIN_I3DBEEZ9/PinNamesVar.h | 50 ++ .../variants/MARLIN_I3DBEEZ9/hal_conf_extra.h | 52 ++ .../variants/MARLIN_I3DBEEZ9/ldscript.ld | 204 ++++++ .../variants/MARLIN_I3DBEEZ9/variant.cpp | 260 ++++++++ .../variants/MARLIN_I3DBEEZ9/variant.h | 323 +++++++++ buildroot/tests/I3DBEEZ9_V1 | 33 + ini/stm32f4.ini | 11 + 13 files changed, 1980 insertions(+), 1 deletion(-) create mode 100644 Marlin/src/pins/stm32f4/pins_I3DBEEZ9.h create mode 100644 buildroot/share/PlatformIO/boards/marlin_I3DBEEZ9.json create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/PeripheralPins.c create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/PinNamesVar.h create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/hal_conf_extra.h create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/ldscript.ld create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/variant.cpp create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/variant.h create mode 100755 buildroot/tests/I3DBEEZ9_V1 diff --git a/.github/workflows/test-builds.yml b/.github/workflows/test-builds.yml index fcda1111cbe6..dea1a4e17616 100644 --- a/.github/workflows/test-builds.yml +++ b/.github/workflows/test-builds.yml @@ -39,11 +39,11 @@ jobs: # AVR - mega2560 + - mega1280 - at90usb1286_dfu # AVR Extended - FYSETC_F6 - - mega1280 - melzi_optiboot - rambo - sanguino1284p @@ -109,6 +109,7 @@ jobs: - rumba32 - STM32F401RC_creality - STM32F407VE_black + - I3DBEEZ9_V1 # STM32F7 - NUCLEO_F767ZI diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index 3820ef8a07cf..742cf8f236fc 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -452,6 +452,7 @@ #define BOARD_TRONXY_V10 5245 // TRONXY V10 (STM32F446ZE) #define BOARD_CREALITY_F401RE 5246 // Creality CR4NS200141C13 (STM32F401RE) as found in the Ender-5 S1 #define BOARD_BLACKPILL_CUSTOM 5247 // Custom board based on STM32F401CDU6. +#define BOARD_I3DBEEZ9_V1 5248 // I3DBEEZ9 V1 (STM32F407ZG) // // ARM Cortex-M7 diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index 369506a74873..511870053324 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -794,6 +794,8 @@ #include "stm32f4/pins_CREALITY_F401.h" // STM32F4 env:STM32F401RE_creality #elif MB(BLACKPILL_CUSTOM) #include "stm32f4/pins_BLACKPILL_CUSTOM.h" // STM32F4 env:STM32F401CD_blackpill_stlink +#elif MB(I3DBEEZ9_V1) + #include "stm32f4/pins_I3DBEEZ9.h" // STM32F4 env:I3DBEEZ9_V1 // // ARM Cortex M7 diff --git a/Marlin/src/pins/stm32f4/pins_I3DBEEZ9.h b/Marlin/src/pins/stm32f4/pins_I3DBEEZ9.h new file mode 100644 index 000000000000..a7ad18c8dcca --- /dev/null +++ b/Marlin/src/pins/stm32f4/pins_I3DBEEZ9.h @@ -0,0 +1,626 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "env_validate.h" + +#if HOTENDS > 3 || E_STEPPERS > 3 + #error "I3DBEEZ9 supports up to 3 hotends / E-steppers." +#endif + +#define BOARD_INFO_NAME "3DBEE_Z9 V1.0" + +#define USES_DIAG_JUMPERS + +//#define MOTOR_EXPANSION + +#if BOTH(HAS_WIRED_LCD, MOTOR_EXPANSION) + #if EITHER(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) + #define EXP_MOT_USE_EXP2_ONLY 1 + #else + #error "You can't use both an LCD and a Motor Expansion Module on EXP1/EXP2 at the same time." + #endif +#endif + +// Use one of these or SDCard-based Emulation will be used +#if NO_EEPROM_SELECTED + //#define SRAM_EEPROM_EMULATION // Use BackSRAM-based EEPROM emulation + #define FLASH_EEPROM_EMULATION // Use Flash-based EEPROM emulation +#endif + +#if ENABLED(FLASH_EEPROM_EMULATION) + // Decrease delays and flash wear by spreading writes across the + // 128 kB sector allocated for EEPROM emulation. + #define FLASH_EEPROM_LEVELING +#endif + +#define HAS_OTG_USB_HOST_SUPPORT // USB Flash Drive support + +// +// Servos +// +#define SERVO0_PIN PA1 +#define SERVO1_PIN PC9 + +// +// Trinamic Stallguard pins +// +#define X_DIAG_PIN PB10 // X- +#define Y_DIAG_PIN PE12 // Y- +#define Z_DIAG_PIN PG8 // Z- +#define E0_DIAG_PIN PE15 // E0 +#define E1_DIAG_PIN PE10 // E1 +#define E2_DIAG_PIN PG5 // E2 +#define E3_DIAG_PIN PD0 // E3 +#define E4_DIAG_PIN PD6 // E4 +#define E5_DIAG_PIN PD1 // E5 + +// +// Limit Switches +// +#ifdef X_STALL_SENSITIVITY + #define X_STOP_PIN X_DIAG_PIN + #if X_HOME_TO_MIN + #define X_MAX_PIN PE15 // E0 + #else + #define X_MIN_PIN PE15 // E0 + #endif +#else + #define X_MIN_PIN PB10 // X- + #define X_MAX_PIN PE15 // E0 +#endif + +#ifdef Y_STALL_SENSITIVITY + #define Y_STOP_PIN Y_DIAG_PIN + #if Y_HOME_TO_MIN + #define Y_MAX_PIN PE10 // E1 + #else + #define Y_MIN_PIN PE10 // E1 + #endif +#else + #define Y_MIN_PIN PE12 // Y- + #define Y_MAX_PIN PE10 // E1 +#endif + +#ifdef Z_STALL_SENSITIVITY + #define Z_STOP_PIN Z_DIAG_PIN + #if Z_HOME_TO_MIN + #define Z_MAX_PIN PG5 // E2 + #else + #define Z_MIN_PIN PG5 // E2 + #endif +#else + #define Z_MIN_PIN PG8 // Z- + #define Z_MAX_PIN PG5 // E2 +#endif + +#ifdef Z2_STALL_SENSITIVITY + #define Z2_STOP_PIN E1_DIAG_PIN + #if Z2_HOME_TO_MIN + #define Z2_MAX_PIN PD0 // E3 + #else + #define Z2_MIN_PIN PD0 // E3 + #endif +#else + #define Z2_MIN_PIN PD0 // Z2- [E3] + #define Z2_MAX_PIN PD6 // E4 +#endif + +// +// Z Probe must be this pin +// +#ifndef Z_MIN_PROBE_PIN + #define Z_MIN_PROBE_PIN PA2 +#endif + +// +// Filament Runout Sensor +// +#ifndef FIL_RUNOUT_PIN + #define FIL_RUNOUT_PIN PE15 +#endif +#ifndef FIL_RUNOUT2_PIN + #define FIL_RUNOUT2_PIN PE10 +#endif +#ifndef FIL_RUNOUT3_PIN + #define FIL_RUNOUT3_PIN PG5 +#endif +#ifndef FIL_RUNOUT4_PIN + #define FIL_RUNOUT4_PIN PD0 +#endif +#ifndef FIL_RUNOUT5_PIN + #define FIL_RUNOUT5_PIN PD6 +#endif +#ifndef FIL_RUNOUT6_PIN + #define FIL_RUNOUT6_PIN PD1 +#endif + +// +// Steppers +// +#define X_STEP_PIN PE9 +#define X_DIR_PIN PF1 +#define X_ENABLE_PIN PF2 +#ifndef X_CS_PIN + #define X_CS_PIN PA15 +#endif + +#define Y_STEP_PIN PE11 +#define Y_DIR_PIN PE1 +#define Y_ENABLE_PIN PD7 +#ifndef Y_CS_PIN + #define Y_CS_PIN PB8 +#endif + +#define Z_STEP_PIN PE13 +#define Z_DIR_PIN PC2 +#define Z_ENABLE_PIN PC0 +#ifndef Z_CS_PIN + #define Z_CS_PIN PB9 +#endif + +#define E0_STEP_PIN PE14 +#define E0_DIR_PIN PA0 +#define E0_ENABLE_PIN PC3 +#ifndef E0_CS_PIN + #define E0_CS_PIN PB3 +#endif + +#define E1_STEP_PIN PD15 +#define E1_DIR_PIN PE7 +#define E1_ENABLE_PIN PA3 +#ifndef E1_CS_PIN + #define E1_CS_PIN PG15 +#endif + +#define E2_STEP_PIN PD13 +#define E2_DIR_PIN PG9 +#define E2_ENABLE_PIN PF0 +#ifndef E2_CS_PIN + #define E2_CS_PIN PG12 +#endif + +#define E3_STEP_PIN PE4 +#define E3_DIR_PIN PE3 +#define E3_ENABLE_PIN PC13 +#ifndef E3_CS_PIN + #define E3_CS_PIN PE2 +#endif + +#define E4_STEP_PIN PG14 +#define E4_DIR_PIN PG13 +#define E4_ENABLE_PIN PE0 +#ifndef E4_CS_PIN + #define E4_CS_PIN PG11 +#endif + +#define E5_STEP_PIN PD4 +#define E5_DIR_PIN PD3 +#define E5_ENABLE_PIN PD5 +#ifndef E5_CS_PIN + #define E5_CS_PIN PD2 +#endif + +// +// SPI pins for TMC2130 stepper drivers +// +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PC12 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PC11 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PC10 +#endif + +#if HAS_TMC_UART + /** + * TMC2208/TMC2209 stepper drivers + * + * Hardware serial communication ports. + * If undefined software serial is used according to the pins below + */ + //#define X_HARDWARE_SERIAL Serial1 + //#define X2_HARDWARE_SERIAL Serial1 + //#define Y_HARDWARE_SERIAL Serial1 + //#define Y2_HARDWARE_SERIAL Serial1 + //#define Z_HARDWARE_SERIAL Serial1 + //#define Z2_HARDWARE_SERIAL Serial1 + //#define E0_HARDWARE_SERIAL Serial1 + //#define E1_HARDWARE_SERIAL Serial1 + //#define E2_HARDWARE_SERIAL Serial1 + //#define E3_HARDWARE_SERIAL Serial1 + //#define E4_HARDWARE_SERIAL Serial1 + + #define X_SERIAL_TX_PIN PA15 + #define X_SERIAL_RX_PIN X_SERIAL_TX_PIN + + #define Y_SERIAL_TX_PIN PB8 + #define Y_SERIAL_RX_PIN Y_SERIAL_TX_PIN + + #define Z_SERIAL_TX_PIN PB9 + #define Z_SERIAL_RX_PIN Z_SERIAL_TX_PIN + + #define E0_SERIAL_TX_PIN PB3 + #define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN + + #define E1_SERIAL_TX_PIN PG15 + #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN + + #define E2_SERIAL_TX_PIN PG12 + #define E2_SERIAL_RX_PIN E2_SERIAL_TX_PIN + + #define E3_SERIAL_TX_PIN PE2 + #define E3_SERIAL_RX_PIN E3_SERIAL_TX_PIN + + #define E4_SERIAL_TX_PIN PG11 + #define E4_SERIAL_RX_PIN E4_SERIAL_TX_PIN + + #define E5_SERIAL_TX_PIN PD2 + #define E5_SERIAL_RX_PIN E5_SERIAL_TX_PIN + + // Reduce baud rate to improve software serial reliability + #define TMC_BAUD_RATE 19200 +#endif + +// +// Temperature Sensors +// Use ADC pins without pullup for sensors that don't need a pullup. +// +#if TEMP_SENSOR_0_IS_AD8495 || TEMP_SENSOR_0 == 20 + #define TEMP_0_PIN PF8 +#else + #define TEMP_0_PIN PF4 // T1 <-> E0 +#endif +#if TEMP_SENSOR_1_IS_AD8495 || TEMP_SENSOR_1 == 20 + #define TEMP_1_PIN PF9 +#else + #define TEMP_1_PIN PF5 // T2 <-> E1 +#endif +#if TEMP_SENSOR_2_IS_AD8495 || TEMP_SENSOR_2 == 20 + #define TEMP_2_PIN PF10 +#else + #define TEMP_2_PIN PF6 // T3 <-> E2 +#endif +#if TEMP_SENSOR_BED_IS_AD8495 || TEMP_SENSOR_BED == 20 + #define TEMP_BED_PIN PF7 +#else + #define TEMP_BED_PIN PF3 // T0 <-> Bed +#endif + +#if TEMP_SENSOR_PROBE && !defined(TEMP_PROBE_PIN) + #if TEMP_SENSOR_PROBE_IS_AD8495 || TEMP_SENSOR_PROBE == 20 + #if HOTENDS == 2 + #define TEMP_PROBE_PIN PF10 + #elif HOTENDS < 2 + #define TEMP_PROBE_PIN PF9 + #endif + #else + #if HOTENDS == 2 + #define TEMP_PROBE_PIN TEMP_2_PIN + #elif HOTENDS < 2 + #define TEMP_PROBE_PIN TEMP_1_PIN + #endif + #endif +#endif + +#if TEMP_SENSOR_CHAMBER && !defined(TEMP_CHAMBER_PIN) + #if TEMP_SENSOR_CHAMBER_IS_AD8495 || TEMP_SENSOR_CHAMBER == 20 + #define TEMP_CHAMBER_PIN PF10 + #else + #define TEMP_CHAMBER_PIN TEMP_2_PIN + #endif +#endif + +// +// Heaters +// +#define HEATER_0_PIN PB1 // Heater0 +#define HEATER_1_PIN PD14 // Heater1 +#if TEMP_SENSOR_CHAMBER && HOTENDS < 3 + #define HEATER_CHAMBER_PIN PB0 // Heater2 +#else + #define HEATER_2_PIN PB0 // Heater2 +#endif +#define HEATER_BED_PIN PD12 // Hotbed + +// +// Fans +// +#define FAN0_PIN PC8 // Fan0 +#define FAN1_PIN PE5 // Fan1 + +#ifndef E0_AUTO_FAN_PIN + #define E0_AUTO_FAN_PIN FAN1_PIN +#endif + +#if !defined(CONTROLLER_FAN_PIN) && ENABLED(USE_CONTROLLER_FAN) && HOTENDS < 2 + #define CONTROLLER_FAN_PIN PE6 // Fan2 +#else + #define FAN2_PIN PE6 // Fan2 +#endif + +// +// Misc. Functions +// + +#ifndef SDCARD_CONNECTION + #define SDCARD_CONNECTION ONBOARD +#endif + +/** ------ ------ + * (BEEPER) PG4 | 1 2 | PA8 (BTN_ENC) (MISO) PB14 | 1 2 | PB13 (SCK) + * (LCD_EN) PD11 | 3 4 | PD10 (LCD_RS) (BTN_EN1) PG10 | 3 4 | PB12 (SD_SS) + * (LCD_D4) PG2 5 6 | PG3 (LCD_D5) (BTN_EN2) PF11 5 6 | PB15 (MOSI) + * (LCD_D6) PG6 | 7 8 | PG7 (LCD_D7) (SD_DETECT) PF12 | 7 8 | RESET + * GND | 9 10 | 5V GND | 9 10 | -- + * ------ ------ + * EXP1 EXP2 + */ +#define EXP1_01_PIN PG4 +#define EXP1_02_PIN PA8 +#define EXP1_03_PIN PD11 +#define EXP1_04_PIN PD10 +#define EXP1_05_PIN PG2 +#define EXP1_06_PIN PG3 +#define EXP1_07_PIN PG6 +#define EXP1_08_PIN PG7 + +#define EXP2_01_PIN PB14 +#define EXP2_02_PIN PB13 +#define EXP2_03_PIN PG10 +#define EXP2_04_PIN PB12 +#define EXP2_05_PIN PF11 +#define EXP2_06_PIN PB15 +#define EXP2_07_PIN PF12 +#define EXP2_08_PIN -1 + +// +// Onboard SD card +// Must use soft SPI because Marlin's default hardware SPI is tied to LCD's EXP2 +// +#if SD_CONNECTION_IS(LCD) + + #define SD_DETECT_PIN EXP2_07_PIN + #define SDSS EXP2_04_PIN + +#elif SD_CONNECTION_IS(ONBOARD) + + // The I3DBEEZ9's ONBOARD SD interface is on SPI1. + // Due to a pull resistor on the clock line, it needs to use SPI Data Mode 3 to + // function with Hardware SPI. This is not currently configurable in the HAL, + // so force Software SPI to work around this issue. + #define SOFTWARE_SPI + #define SDSS PA4 + #define SD_SCK_PIN PA5 + #define SD_MISO_PIN PA6 + #define SD_MOSI_PIN PB5 + #define SD_DETECT_PIN PB11 + +#elif SD_CONNECTION_IS(CUSTOM_CABLE) + #error "CUSTOM_CABLE is not a supported SDCARD_CONNECTION for this board" +#endif + +#if ENABLED(MOTOR_EXPANSION) + /** ----- ----- + * -- | . . | GND -- | . . | GND + * -- | . . | M1EN M2EN | . . | M3EN + * M1STP | . . M1DIR M1RX | . . M1DIAG + * M2DIR | . . | M2STP M2RX | . . | M2DIAG + * M3DIR | . . | M3STP M3RX | . . | M3DIAG + * ----- ----- + * EXP2 EXP1 + * + * NB In EXP_MOT_USE_EXP2_ONLY mode EXP1 is not used and M2EN and M3EN need to be jumpered to M1EN + */ + + // M1 on Driver Expansion Module + #define E6_STEP_PIN EXP2_06_PIN + #define E6_DIR_PIN EXP2_05_PIN + #define E6_ENABLE_PIN EXP2_07_PIN + #if !EXP_MOT_USE_EXP2_ONLY + #define E6_DIAG_PIN EXP1_05_PIN + #define E6_CS_PIN EXP1_06_PIN + #if HAS_TMC_UART + #define E6_SERIAL_TX_PIN EXP1_06_PIN + #define E6_SERIAL_RX_PIN EXP1_06_PIN + #endif + #endif + + // M2 on Driver Expansion Module + #define E7_STEP_PIN EXP2_03_PIN + #define E7_DIR_PIN EXP2_04_PIN + #if !EXP_MOT_USE_EXP2_ONLY + #define E7_ENABLE_PIN EXP1_08_PIN + #define E7_DIAG_PIN EXP1_03_PIN + #define E7_CS_PIN EXP1_04_PIN + #if HAS_TMC_UART + #define E7_SERIAL_TX_PIN EXP1_04_PIN + #define E7_SERIAL_RX_PIN EXP1_04_PIN + #endif + #else + #define E7_ENABLE_PIN EXP2_07_PIN + #endif + + // M3 on Driver Expansion Module + #define E8_STEP_PIN EXP2_01_PIN + #define E8_DIR_PIN EXP2_02_PIN + #if !EXP_MOT_USE_EXP2_ONLY + #define E8_ENABLE_PIN EXP1_07_PIN + #define E8_DIAG_PIN EXP1_01_PIN + #define E8_CS_PIN EXP1_02_PIN + #if HAS_TMC_UART + #define E8_SERIAL_TX_PIN EXP1_02_PIN + #define E8_SERIAL_RX_PIN EXP1_02_PIN + #endif + #else + #define E8_ENABLE_PIN EXP2_07_PIN + #endif + +#endif + +// +// LCDs and Controllers +// +#if IS_TFTGLCD_PANEL + + #if ENABLED(TFTGLCD_PANEL_SPI) + #define TFTGLCD_CS EXP2_03_PIN + #endif + +#elif HAS_WIRED_LCD + + #define BEEPER_PIN EXP1_01_PIN + #define BTN_ENC EXP1_02_PIN + + #if ENABLED(CR10_STOCKDISPLAY) + + #define LCD_PINS_RS EXP1_07_PIN + + #define BTN_EN1 EXP1_03_PIN + #define BTN_EN2 EXP1_05_PIN + + #define LCD_PINS_EN EXP1_08_PIN + #define LCD_PINS_D4 EXP1_06_PIN + + #elif ENABLED(MKS_MINI_12864) + + #define DOGLCD_A0 EXP1_07_PIN + #define DOGLCD_CS EXP1_06_PIN + #define BTN_EN1 EXP2_03_PIN + #define BTN_EN2 EXP2_05_PIN + + #elif ENABLED(WYH_L12864) + + #ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING + #error "CAUTION! WYH_L12864 requires wiring modifications. See 'pins_I3DBEEZ9.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)" + #endif + + /** + * 1. Cut the tab off the LCD connector so it can be plugged into the "EXP1" connector the other way. + * 2. Swap the LCD's +5V (Pin2) and GND (Pin1) wires. + * + * !!! If you are unsure, ask for help! Your motherboard may be damaged in some circumstances !!! + * + * The WYH_L12864 connector plug: + * + * BEFORE AFTER + * ------ ------ + * -- | 1 2 | MOSI -- | 1 2 | MOSI + * BTN_ENC | 3 4 | SCK BTN_ENC | 3 4 | SCK + * BTN_EN1 | 5 6 SID BTN_EN1 | 5 6 SID + * BTN_EN2 | 7 8 | CS BTN_EN2 | 7 8 | CS + * 5V | 9 10 | GND GND | 9 10 | 5V + * ------ ------ + * LCD LCD + */ + #undef BEEPER_PIN + #undef BTN_ENC + #define BTN_EN1 EXP1_05_PIN + #define BTN_EN2 EXP1_07_PIN + #define BTN_ENC EXP1_03_PIN + #define DOGLCD_CS EXP1_08_PIN + #define DOGLCD_A0 EXP1_06_PIN + #define DOGLCD_SCK EXP1_04_PIN + #define DOGLCD_MOSI EXP1_02_PIN + #define LCD_BACKLIGHT_PIN -1 + + #else + + #define LCD_PINS_RS EXP1_04_PIN + + #define BTN_EN1 EXP2_03_PIN + #define BTN_EN2 EXP2_05_PIN + + #define LCD_PINS_EN EXP1_03_PIN + #define LCD_PINS_D4 EXP1_05_PIN + + #if ENABLED(FYSETC_MINI_12864) + #define DOGLCD_CS EXP1_03_PIN + #define DOGLCD_A0 EXP1_04_PIN + //#define LCD_BACKLIGHT_PIN -1 + #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. + #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #ifndef RGB_LED_R_PIN + #define RGB_LED_R_PIN EXP1_06_PIN + #endif + #ifndef RGB_LED_G_PIN + #define RGB_LED_G_PIN EXP1_07_PIN + #endif + #ifndef RGB_LED_B_PIN + #define RGB_LED_B_PIN EXP1_08_PIN + #endif + #elif ENABLED(FYSETC_MINI_12864_2_1) + #define NEOPIXEL_PIN EXP1_06_PIN + #endif + #endif // !FYSETC_MINI_12864 + + #if IS_ULTIPANEL + #define LCD_PINS_D5 EXP1_06_PIN + #define LCD_PINS_D6 EXP1_07_PIN + #define LCD_PINS_D7 EXP1_08_PIN + + #if ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) + #define BTN_ENC_EN LCD_PINS_D7 // Detect the presence of the encoder + #endif + + #endif + + #endif + +#endif // HAS_WIRED_LCD + +// Alter timing for graphical display +#if IS_U8GLIB_ST7920 + #ifndef BOARD_ST7920_DELAY_1 + #define BOARD_ST7920_DELAY_1 125 + #endif + #ifndef BOARD_ST7920_DELAY_2 + #define BOARD_ST7920_DELAY_2 90 + #endif + #ifndef BOARD_ST7920_DELAY_3 + #define BOARD_ST7920_DELAY_3 600 + #endif +#endif + +#if ENABLED(WIFISUPPORT) + // + // WIFI + // + + /** + * ------ + * RX | 8 7 | 3.3V GPIO0 PF14 ... Leave as unused (ESP3D software configures this with a pullup so OK to leave as floating) + * GPIO0 | 6 5 | Reset GPIO2 PF15 ... must be high (ESP3D software configures this with a pullup so OK to leave as floating) + * GPIO2 | 4 3 | Enable Reset PG0 ... active low, probably OK to leave floating + * GND | 2 1 | TX Enable PG1 ... Must be high for module to run + * ------ + * W1 + */ + #define ESP_WIFI_MODULE_COM 6 // Must also set either SERIAL_PORT or SERIAL_PORT_2 to this + #define ESP_WIFI_MODULE_BAUDRATE BAUDRATE // Must use same BAUDRATE as SERIAL_PORT & SERIAL_PORT_2 + #define ESP_WIFI_MODULE_RESET_PIN PG0 + #define ESP_WIFI_MODULE_ENABLE_PIN PG1 + #define ESP_WIFI_MODULE_GPIO0_PIN PF14 + #define ESP_WIFI_MODULE_GPIO2_PIN PF15 +#endif diff --git a/buildroot/share/PlatformIO/boards/marlin_I3DBEEZ9.json b/buildroot/share/PlatformIO/boards/marlin_I3DBEEZ9.json new file mode 100644 index 000000000000..0f0927d28ea2 --- /dev/null +++ b/buildroot/share/PlatformIO/boards/marlin_I3DBEEZ9.json @@ -0,0 +1,46 @@ +{ + "build": { + "core": "stm32", + "cpu": "cortex-m4", + "extra_flags": "-DSTM32F4 -DSTM32F407xx -DSTM32F40_41xxx", + "f_cpu": "168000000L", + "hwids": [ + [ + "0x1EAF", + "0x0003" + ], + [ + "0x0483", + "0x3748" + ] + ], + "mcu": "stm32f407zgt6", + "variant": "MARLIN_I3DBEEZ9" + }, + "debug": { + "jlink_device": "STM32F407ZG", + "openocd_target": "stm32f4x", + "svd_path": "STM32F40x.svd" + }, + "frameworks": [ + "arduino" + ], + "name": "STM32F407ZG (192k RAM. 1024k Flash)", + "upload": { + "disable_flushing": false, + "maximum_ram_size": 196608, + "maximum_size": 1048576, + "protocol": "stlink", + "protocols": [ + "stlink", + "dfu", + "jlink" + ], + "offset_address": "0x8008000", + "require_upload_port": true, + "use_1200bps_touch": false, + "wait_for_upload_port": false + }, + "url": "https://www.st.com/en/microcontrollers-microprocessors/stm32f407zg.html", + "vendor": "Generic" +} diff --git a/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/PeripheralPins.c new file mode 100644 index 000000000000..4ea275d4cf7e --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/PeripheralPins.c @@ -0,0 +1,370 @@ +/* + ******************************************************************************* + * Copyright (c) 2019, STMicroelectronics + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. 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. + * 3. Neither the name of STMicroelectronics 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 HOLDER 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. + ******************************************************************************* + * Automatically generated from STM32F407Z(E-G)Tx.xml + */ +#include +#include + +/* ===== + * Note: Commented lines are alternative possibilities which are not used by default. + * If you change them, you should know what you're doing first. + * ===== + */ + +//*** ADC *** + +#ifdef HAL_ADC_MODULE_ENABLED +const PinMap PinMap_ADC[] = { + {PA_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 0, 0)}, // ADC1_IN0 E0_DIR + {PA_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // ADC1_IN1 BLTOUCH_2 + {PA_2, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // ADC1_IN2 BLTOUCH_4 + {PA_3, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 3, 0)}, // ADC1_IN3 E1_EN + {PA_4, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 4, 0)}, // ADC1_IN4 TF_SS + {PA_5, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)}, // ADC1_IN5 TF_SCLK + {PA_6, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 6, 0)}, // ADC1_IN6 TF_MISO + {PA_7, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)}, // ADC1_IN7 LED + {PB_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 8, 0)}, // ADC1_IN8 HEATER2 + {PB_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 9, 0)}, // ADC1_IN9 HEATER0 + {PC_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 10, 0)}, // ADC1_IN10 Z_EN + {PC_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 11, 0)}, // ADC1_IN11 EXP_14 + {PC_2, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 12, 0)}, // ADC1_IN12 Z_DIR + {PC_3, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 13, 0)}, // ADC1_IN13 E0_EN + {PC_4, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 14, 0)}, // ADC1_IN14 EXP_8 + {PC_5, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 15, 0)}, // ADC1_IN15 EXP_7 + + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio, 24 ADC + {PF_3, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 9, 0)}, // ADC3_IN9 TH_0 + {PF_4, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 14, 0)}, // ADC3_IN14 TH_1 + {PF_5, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 15, 0)}, // ADC3_IN15 TH_2 + {PF_6, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 4, 0)}, // ADC3_IN4 TH_3 + {PF_7, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)}, // ADC3_IN5 EXP_13 + {PF_8, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 6, 0)}, // ADC3_IN6 EXP_3 + {PF_9, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)}, // ADC3_IN7 EXP_6 + {PF_10, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 8, 0)}, // ADC3_IN8 EXP_5 + #endif + {NC, NP, 0} +}; +#endif + +//*** DAC *** + +#ifdef HAL_DAC_MODULE_ENABLED +const PinMap PinMap_DAC[] = { + {PA_4, DAC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // DAC_OUT1 + {PA_5, DAC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // DAC_OUT2 + {NC, NP, 0} +}; +#endif + +//*** I2C *** + +#ifdef HAL_I2C_MODULE_ENABLED +const PinMap PinMap_I2C_SDA[] = { + {PB_7, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_9, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_11, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + {PC_9, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)}, + #if STM32F4X_PIN_NUM >= 144 // 144 pins mcu, 114 gpio + #if STM32F4X_PIN_NUM >= 176 + {PH_5, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + {PH_8, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)}, + #else + {PF_0, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + #endif + #endif + {NC, NP, 0} +}; + +const PinMap PinMap_I2C_SCL[] = { + {PA_8, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)}, + {PB_6, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_8, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_10, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + #if STM32F4X_PIN_NUM >= 144 // 144 pins mcu, 114 gpio + #if STM32F4X_PIN_NUM >= 176 + //{PF_1, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + {PH_4, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + {PH_7, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)}, + #else + {PF_1, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + #endif + #endif + {NC, NP, 0} +}; +#endif + +//*** PWM *** + +#ifdef HAL_TIM_MODULE_ENABLED +const PinMap PinMap_PWM[] = { + {PB_1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 4, 0)}, // TIM3_CH4 HEATER0 + {PD_14, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 3, 0)}, // TIM4_CH3 HEATER1 + {PB_0, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 3, 0)}, // TIM3_CH3 HEATER2 + {PD_12, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 1, 0)}, // TIM4_CH1 BED + {PC_8, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 0)}, // TIM8_CH3 FAN0 + {PE_5, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 1, 0)}, // TIM9_CH1 FAN1 + {PE_6, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 2, 0)}, // TIM9_CH2 FAN2 + {PC_9, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 4, 0)}, // TIM8_CH4 EXTENSION1-4 + {PA_1, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 2, 0)}, // TIM5_CH2 BL-TOUCH-SERVO + + // These pins have been defined for something else on the board but they MIGHT be + // used by the user as PWM pins if they aren't used for their primary purpose. + {PC_6, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 ESP8266 connector. Available if 8266 isn't used + {PC_7, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 ESP8266 connector. Available if 8266 isn't used + {PB_7, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 2, 0)}, // TIM4_CH2 I2C connector, SDA pin. Available if I2C isn't used. + // TIM5_CH1 is used by the Servo Library + {PA_2, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 3, 0)}, // TIM5_CH3 BL-TOUCH port. Available if Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN + + /** + * Unused by specifications on SKR-Pro. + * Uncomment the corresponding line if you want to have HardwarePWM on some pins. + * WARNING: check timers' usage first to avoid conflicts. + * If you don't know what you're doing leave things as they are or you WILL break something (including hardware) + * If you alter this section DO NOT report bugs to Marlin team since they are most likely caused by you. Thank you. + */ + //{PA_0, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 + //{PA_0, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 1, 0)}, // TIM5_CH1 + //{PA_1, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2 BLTOUCH is a "servo" + //{PA_2, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // TIM2_CH3 BLTOUCH is a "servo" + //{PA_1, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 2, 0)}, // TIM5_CH2 + //{PA_2, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 3, 0)}, // TIM5_CH3 + //{PA_2, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 1, 0)}, // TIM9_CH1 + //{PA_3, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 4, 0)}, // TIM2_CH4 + //{PA_3, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 4, 0)}, // TIM5_CH4 + //{PA_3, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 2, 0)}, // TIM9_CH2 + //{PA_5, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 + //{PA_5, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 1)}, // TIM8_CH1N + //{PA_6, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 + //{PA_6, TIM13, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM13, 1, 0)}, // TIM13_CH1 + //{PA_7, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N + //{PA_7, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 + //{PA_7, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 1)}, // TIM8_CH1N + //{PA_7, TIM14, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM14, 1, 0)}, // TIM14_CH1 + //{PA_8, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 0)}, // TIM1_CH1 + //{PA_9, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 0)}, // TIM1_CH2 + //{PA_10, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 0)}, // TIM1_CH3 + //{PA_11, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 4, 0)}, // TIM1_CH4 + //{PA_15, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 + //{PB_0, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N + //{PB_0, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 1)}, // TIM8_CH2N + //{PB_1, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N + //{PB_1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 1)}, // TIM8_CH3N + //{PB_3, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2 + //{PB_4, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 + //{PB_5, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 + //{PB_6, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 1, 0)}, // TIM4_CH1 + //{PB_8, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 3, 0)}, // TIM4_CH3 + //{PB_8, TIM10, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM10, 1, 0)}, // TIM10_CH1 + //{PB_9, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 4, 0)}, // TIM4_CH4 + //{PB_9, TIM11, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM11, 1, 0)}, // TIM11_CH1 + //{PB_10, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // TIM2_CH3 + //{PB_11, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 4, 0)}, // TIM2_CH4 + //{PB_13, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N + //{PB_14, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N + //{PB_14, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 1)}, // TIM8_CH2N + //{PB_14, TIM12, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM12, 1, 0)}, // TIM12_CH1 + //{PB_15, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N + //{PB_15, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 1)}, // TIM8_CH3N + //{PB_15, TIM12, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM12, 2, 0)}, // TIM12_CH2 + //{PC_6, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 0)}, // TIM8_CH1 + //{PC_7, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 + //{PC_7, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 0)}, // TIM8_CH2 + //{PC_8, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 3, 0)}, // TIM3_CH3 + //{PC_9, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 4, 0)}, // TIM3_CH4 + //{PD_13, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 2, 0)}, // TIM4_CH2 + //{PD_15, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 4, 0)}, // TIM4_CH4 + //{PE_8, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N + //{PE_9, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 0)}, // TIM1_CH1 + //{PE_10, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N + //{PE_11, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 0)}, // TIM1_CH2 + //{PE_12, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N + //{PE_13, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 0)}, // TIM1_CH3 + //{PE_14, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 4, 0)}, // TIM1_CH4 + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + //{PF_6, TIM10, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM10, 1, 0)}, // TIM10_CH1 + //{PF_7, TIM11, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM11, 1, 0)}, // TIM11_CH1 + //{PF_8, TIM13, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM13, 1, 0)}, // TIM13_CH1 + //{PF_9, TIM14, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM14, 1, 0)}, // TIM14_CH1 + #endif + #if STM32F4X_PIN_NUM >= 176 //176 pins mcu, 140 gpio + {PH_10, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 1, 0)}, // TIM5_CH1 + {PH_6, TIM12, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM12, 1, 0)}, // TIM12_CH1 + //{PH_11, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 2, 0)}, // TIM5_CH2 + {PI_5, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 0)}, // TIM8_CH1 + {PI_6, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 0)}, // TIM8_CH2 + #endif + {NC, NP, 0} +}; +#endif + +//*** SERIAL *** + +#ifdef HAL_UART_MODULE_ENABLED +const PinMap PinMap_UART_TX[] = { + {PA_9, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PD_8, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PC_6, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + //{PG_14, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + #endif + //{PB_6, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + //{PA_2, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + //{PD_5, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + //{PB_10, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + //{PC_10, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + //{PA_0, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + //{PC_10, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + //{PC_12, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)}, + {NC, NP, 0} +}; + +const PinMap PinMap_UART_RX[] = { + {PA_10, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PD_9, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PC_7, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + //{PA_1, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + //{PA_3, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + //{PB_7, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + //{PB_11, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + //{PC_11, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + //{PC_11, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + //{PD_2, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)}, + //{PD_6, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + //{PG_9, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + #endif + {NC, NP, 0} +}; + +const PinMap PinMap_UART_RTS[] = { + //{PA_1, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + //{PA_12, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + //{PB_14, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + //{PD_4, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + //{PD_12, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + //{PG_8, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + //{PG_12, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + #endif + {NC, NP, 0} +}; + +const PinMap PinMap_UART_CTS[] = { + //{PA_0, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + //{PA_11, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + //{PB_13, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + //{PD_3, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + //{PD_11, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + #if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + //{PG_13, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + //{PG_15, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_USART6)}, + #endif + {NC, NP, 0} +}; +#endif + +//*** SPI *** + +#ifdef HAL_SPI_MODULE_ENABLED +const PinMap PinMap_SPI_MOSI[] = { + {PB_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF5_SPI1)}, + {PB_15, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_12, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {NC, NP, 0} +}; + +const PinMap PinMap_SPI_MISO[] = { + {PA_6, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF5_SPI1)}, + {PB_14, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_11, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {NC, NP, 0} +}; + +const PinMap PinMap_SPI_SCLK[] = { + {PA_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF5_SPI1)}, + {PB_13, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_10, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {NC, NP, 0} +}; + +const PinMap PinMap_SPI_SSEL[] = { + {PA_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF5_SPI1)}, + {PB_12, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PA_15, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {NC, NP, 0} +}; +#endif + +//*** CAN *** + +#ifdef HAL_CAN_MODULE_ENABLED +#error "CAN bus isn't available on this board. Driver should be disabled." +#endif + +//*** ETHERNET *** +#ifdef HAL_ETH_MODULE_ENABLED +#error "Ethernet port isn't available on this board. Driver should be disabled." +#endif + +//*** No QUADSPI *** + +//*** USB *** +#ifdef HAL_PCD_MODULE_ENABLED +const PinMap PinMap_USB_OTG_FS[] = { + //{PA_8, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_SOF used by LCD + //{PA_9, USB_OTG_FS, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, GPIO_AF_NONE)}, // USB_OTG_FS_VBUS available on wifi port, if empty + //{PA_10, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_ID available on UART1_RX if not used + {PA_11, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_DM + {PA_12, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_DP + {NC, NP, 0} +}; + +const PinMap PinMap_USB_OTG_HS[] = { /* + #ifdef USE_USB_HS_IN_FS + {PB_12, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_PULLUP, GPIO_AF12_OTG_HS_FS)}, // USB_OTG_HS_ID + {PB_13, USB_OTG_HS, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, GPIO_AF_NONE)}, // USB_OTG_HS_VBUS + {PB_14, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_OTG_HS_FS)}, // USB_OTG_HS_DM + {PB_15, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_OTG_HS_FS)}, // USB_OTG_HS_DP + #else + #error "USB in HS mode isn't supported by the board" + {PA_3, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D0 + {PB_0, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D1 + {PB_1, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D2 + {PB_5, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D7 + {PB_10, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D3 + {PB_12, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D5 + {PB_13, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_D6 + {PC_0, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_STP + {PC_2, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_DIR + {PC_3, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_HS)}, // USB_OTG_HS_ULPI_NXT + #endif // USE_USB_HS_IN_FS + */ + {NC, NP, 0} +}; +#endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/PinNamesVar.h b/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/PinNamesVar.h new file mode 100644 index 000000000000..b4bb9d45f8ac --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/PinNamesVar.h @@ -0,0 +1,50 @@ +/* SYS_WKUP */ +#ifdef PWR_WAKEUP_PIN1 + SYS_WKUP1 = PA_0, +#endif +#ifdef PWR_WAKEUP_PIN2 + SYS_WKUP2 = NC, +#endif +#ifdef PWR_WAKEUP_PIN3 + SYS_WKUP3 = NC, +#endif +#ifdef PWR_WAKEUP_PIN4 + SYS_WKUP4 = NC, +#endif +#ifdef PWR_WAKEUP_PIN5 + SYS_WKUP5 = NC, +#endif +#ifdef PWR_WAKEUP_PIN6 + SYS_WKUP6 = NC, +#endif +#ifdef PWR_WAKEUP_PIN7 + SYS_WKUP7 = NC, +#endif +#ifdef PWR_WAKEUP_PIN8 + SYS_WKUP8 = NC, +#endif +/* USB */ +#ifdef USBCON + USB_OTG_FS_SOF = PA_8, + USB_OTG_FS_VBUS = PA_9, + USB_OTG_FS_ID = PA_10, + USB_OTG_FS_DM = PA_11, + USB_OTG_FS_DP = PA_12, + USB_OTG_HS_ULPI_D0 = PA_3, + USB_OTG_HS_SOF = PA_4, + USB_OTG_HS_ULPI_CK = PA_5, + USB_OTG_HS_ULPI_D1 = PB_0, + USB_OTG_HS_ULPI_D2 = PB_1, + USB_OTG_HS_ULPI_D7 = PB_5, + USB_OTG_HS_ULPI_D3 = PB_10, + USB_OTG_HS_ULPI_D4 = PB_11, + USB_OTG_HS_ID = PB_12, + USB_OTG_HS_ULPI_D5 = PB_12, + USB_OTG_HS_ULPI_D6 = PB_13, + USB_OTG_HS_VBUS = PB_13, + USB_OTG_HS_DM = PB_14, + USB_OTG_HS_DP = PB_15, + USB_OTG_HS_ULPI_STP = PC_0, + USB_OTG_HS_ULPI_DIR = PC_2, + USB_OTG_HS_ULPI_NXT = PC_3, +#endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/hal_conf_extra.h b/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/hal_conf_extra.h new file mode 100644 index 000000000000..ef621d57bf29 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/hal_conf_extra.h @@ -0,0 +1,52 @@ +#pragma once + +#define HAL_MODULE_ENABLED +#define HAL_ADC_MODULE_ENABLED +#define HAL_CRC_MODULE_ENABLED +#define HAL_DMA_MODULE_ENABLED +#define HAL_EXTI_MODULE_ENABLED // Needed for Endstop (and other external) Interrupts +#define HAL_GPIO_MODULE_ENABLED +#define HAL_I2C_MODULE_ENABLED +#define HAL_PWR_MODULE_ENABLED +#define HAL_RCC_MODULE_ENABLED +//#define HAL_RTC_MODULE_ENABLED // Real Time Clock...do we use it? +#define HAL_SPI_MODULE_ENABLED +#define HAL_TIM_MODULE_ENABLED +#define HAL_USART_MODULE_ENABLED +#define HAL_CORTEX_MODULE_ENABLED +//#define HAL_UART_MODULE_ENABLED // by default +//#define HAL_PCD_MODULE_ENABLED // Automatically added if any type of USB is enabled, as in Arduino IDE. (STM32 v3.10700.191028) + +//#define HAL_SD_MODULE_ENABLED +//#define HAL_DAC_MODULE_ENABLED +//#define HAL_FLASH_MODULE_ENABLED +//#define HAL_CAN_MODULE_ENABLED +//#define HAL_CAN_LEGACY_MODULE_ENABLED +//#define HAL_CEC_MODULE_ENABLED +//#define HAL_CRYP_MODULE_ENABLED +//#define HAL_DCMI_MODULE_ENABLED +//#define HAL_DMA2D_MODULE_ENABLED +//#define HAL_ETH_MODULE_ENABLED +//#define HAL_NAND_MODULE_ENABLED +//#define HAL_NOR_MODULE_ENABLED +//#define HAL_PCCARD_MODULE_ENABLED +//#define HAL_SRAM_MODULE_ENABLED +//#define HAL_SDRAM_MODULE_ENABLED +//#define HAL_HASH_MODULE_ENABLED +//#define HAL_SMBUS_MODULE_ENABLED +//#define HAL_I2S_MODULE_ENABLED +//#define HAL_IWDG_MODULE_ENABLED +//#define HAL_LTDC_MODULE_ENABLED +//#define HAL_DSI_MODULE_ENABLED +//#define HAL_QSPI_MODULE_ENABLED +//#define HAL_RNG_MODULE_ENABLED +//#define HAL_SAI_MODULE_ENABLED +//#define HAL_IRDA_MODULE_ENABLED +//#define HAL_SMARTCARD_MODULE_ENABLED +//#define HAL_WWDG_MODULE_ENABLED +//#define HAL_HCD_MODULE_ENABLED +//#define HAL_FMPI2C_MODULE_ENABLED +//#define HAL_SPDIFRX_MODULE_ENABLED +//#define HAL_DFSDM_MODULE_ENABLED +//#define HAL_LPTIM_MODULE_ENABLED +//#define HAL_MMC_MODULE_ENABLED diff --git a/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/ldscript.ld b/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/ldscript.ld new file mode 100644 index 000000000000..f7e09b8ef0e7 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/ldscript.ld @@ -0,0 +1,204 @@ +/* +***************************************************************************** +** + +** File : LinkerScript.ld +** +** Abstract : Linker script for STM32F407ZGTx Device with +** 1024KByte FLASH, 128KByte RAM +** +** Set heap size, stack size and stack location according +** to application requirements. +** +** Set memory bank area and size if external memory is used. +** +** Target : STMicroelectronics STM32 +** +** +** Distribution: The file is distributed as is, without any warranty +** of any kind. +** +***************************************************************************** +** @attention +** +** Copyright (c) 2014 Ac6 +** +** Redistribution and use in source and binary forms, with or without modification, +** are permitted provided that the following conditions are met: +** 1. Redistributions of source code must retain the above copyright notice, +** this list of conditions and the following disclaimer. +** 2. 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. +** 3. Neither the name of Ac6 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 HOLDER 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. +** +***************************************************************************** +*/ + +/* Entry Point */ +ENTRY(Reset_Handler) + +/* Highest address of the user mode stack */ +_estack = 0x20020000; /* end of RAM */ +/* Generate a link error if heap and stack don't fit into RAM */ +_Min_Heap_Size = 0x200;; /* required amount of heap */ +_Min_Stack_Size = 0x400;; /* required amount of stack */ + +/* Specify the memory areas */ +MEMORY +{ +FLASH (rx) : ORIGIN = 0x8008000, LENGTH = 1024K +RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 128K +CCMRAM (rw) : ORIGIN = 0x10000000, LENGTH = 64K +} + +/* Define output sections */ +SECTIONS +{ + /* The startup code goes first into FLASH */ + .isr_vector : + { + . = ALIGN(4); + KEEP(*(.isr_vector)) /* Startup code */ + . = ALIGN(4); + } >FLASH + + /* The program code and other data goes into FLASH */ + .text ALIGN(4): + { + . = ALIGN(4); + *(.text) /* .text sections (code) */ + *(.text*) /* .text* sections (code) */ + *(.glue_7) /* glue arm to thumb code */ + *(.glue_7t) /* glue thumb to arm code */ + *(.eh_frame) + + KEEP (*(.init)) + KEEP (*(.fini)) + + . = ALIGN(4); + _etext = .; /* define a global symbols at end of code */ + } >FLASH + + /* Constant data goes into FLASH */ + .rodata ALIGN(4): + { + . = ALIGN(4); + *(.rodata) /* .rodata sections (constants, strings, etc.) */ + *(.rodata*) /* .rodata* sections (constants, strings, etc.) */ + . = ALIGN(4); + } >FLASH + + .ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH + .ARM : { + __exidx_start = .; + *(.ARM.exidx*) + __exidx_end = .; + } >FLASH + + .preinit_array : + { + PROVIDE_HIDDEN (__preinit_array_start = .); + KEEP (*(.preinit_array*)) + PROVIDE_HIDDEN (__preinit_array_end = .); + } >FLASH + .init_array : + { + PROVIDE_HIDDEN (__init_array_start = .); + KEEP (*(SORT(.init_array.*))) + KEEP (*(.init_array*)) + PROVIDE_HIDDEN (__init_array_end = .); + } >FLASH + .fini_array : + { + PROVIDE_HIDDEN (__fini_array_start = .); + KEEP (*(SORT(.fini_array.*))) + KEEP (*(.fini_array*)) + PROVIDE_HIDDEN (__fini_array_end = .); + } >FLASH + + /* used by the startup to initialize data */ + _sidata = LOADADDR(.data); + + /* Initialized data sections goes into RAM, load LMA copy after code */ + .data : + { + . = ALIGN(4); + _sdata = .; /* create a global symbol at data start */ + *(.data) /* .data sections */ + *(.data*) /* .data* sections */ + + . = ALIGN(4); + _edata = .; /* define a global symbol at data end */ + } >RAM AT> FLASH + + _siccmram = LOADADDR(.ccmram); + + /* CCM-RAM section + * + * IMPORTANT NOTE! + * If initialized variables will be placed in this section, + * the startup code needs to be modified to copy the init-values. + */ + .ccmram : + { + . = ALIGN(4); + _sccmram = .; /* create a global symbol at ccmram start */ + *(.ccmram) + *(.ccmram*) + + . = ALIGN(4); + _eccmram = .; /* create a global symbol at ccmram end */ + } >CCMRAM AT> FLASH + + + /* Uninitialized data section */ + . = ALIGN(4); + .bss : + { + /* This is used by the startup in order to initialize the .bss section */ + _sbss = .; /* define a global symbol at bss start */ + __bss_start__ = _sbss; + *(.bss) + *(.bss*) + *(COMMON) + + . = ALIGN(4); + _ebss = .; /* define a global symbol at bss end */ + __bss_end__ = _ebss; + } >RAM + + /* User_heap_stack section, used to check that there is enough RAM left */ + ._user_heap_stack : + { + . = ALIGN(4); + PROVIDE ( end = . ); + PROVIDE ( _end = . ); + . = . + _Min_Heap_Size; + . = . + _Min_Stack_Size; + . = ALIGN(4); + } >RAM + + /* Remove information from the standard libraries */ + /DISCARD/ : + { + libc.a ( * ) + libm.a ( * ) + libgcc.a ( * ) + } + + .ARM.attributes 0 : { *(.ARM.attributes) } +} diff --git a/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/variant.cpp b/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/variant.cpp new file mode 100644 index 000000000000..1486b21830a1 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/variant.cpp @@ -0,0 +1,260 @@ +/* + ******************************************************************************* + * Copyright (c) 2017, STMicroelectronics + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. 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. + * 3. Neither the name of STMicroelectronics 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 HOLDER 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 "pins_arduino.h" + +#ifdef __cplusplus +extern "C" { +#endif + +// Pin number +// This array allows to wrap Arduino pin number(Dx or x) +// to STM32 PinName (PX_n) +const PinName digitalPin[] = { +#if STM32F4X_PIN_NUM >= 64 //64 pins mcu, 51 gpio + PC_13, //D0 + PC_14, //D1 - OSC32_IN + PC_15, //D2 - OSC32_OUT + PH_0, //D3 - OSC_IN + PH_1, //D4 - OSC_OUT + PB_2, //D5 - BOOT1 + PB_10, //D6 - 1:SPI2_SCK / I2C2_SCL / USART3_TX / TIM2_CH3 + PB_11, //D7 - 1:I2C2_SDA / USART3_RX / TIM2_CH4 + PB_12, //D8 - 1:SPI2_NSS / OTG_HS_ID + PB_13, //D9 - 1:SPI2_SCK 2:OTG_HS_VBUS + PB_14, //D10 - 1:SPI2_MISO / TIM12_CH1 / OTG_HS_DM + PB_15, //D11 - SPI2_MOSI / TIM12_CH2 / OTG_HS_DP + PC_6, //D12 - 1:TIM8_CH1 / SDIO_D6 / USART6_TX / TIM3_CH1 + PC_7, //D13 - 1:TIM8_CH2 / SDIO_D7 / USART6_RX / TIM3_CH2 + PC_8, //D14 - 1:TIM8_CH3 / SDIO_D0 / TIM3_CH3 + PC_9, //D15 - 1:TIM8_CH4 / SDIO_D1 / TIM3_CH4 + PA_8, //D16 - 1:TIM1_CH1 / I2C3_SCL / OTG_FS_SOF + PA_9, //D17 - 1:USART1_TX / TIM1_CH2 2:OTG_FS_VBUS + PA_10, //D18 - 1:USART1_RX / TIM1_CH3 / OTG_FS_ID + PA_11, //D19 - 1:TIM1_CH4 / OTG_FS_DM + PA_12, //D20 - 1:OTG_FS_DP + PA_13, //D21 - 0:JTMS-SWDIO + PA_14, //D22 - 0:JTCK-SWCLK + PA_15, //D23 - 0:JTDI 1:SPI3_NSS / SPI1_NSS + PC_10, //D24 - 1:UART4_TX / SPI3_SCK / SDIO_D2 / USART3_TX + PC_11, //D25 - 1:UART4_RX / SPI3_MISO / SDIO_D3 / USART3_RX + PC_12, //D26 - 1:UART5_TX / SPI3_MOSI / SDIO_CK + PD_2, //D27 - 1:UART5_RX / SDIO_CMD + PB_3, //D28 - 0:JTDO 1:SPI3_SCK / TIM2_CH2 / SPI1_SCK + PB_4, //D29 - 0:NJTRST 1:SPI3_MISO / TIM3_CH1 / SPI1_MISO + PB_5, //D30 - 1:TIM3_CH2 / SPI1_MOSI / SPI3_MOSI + PB_6, //D31 - 1:I2C1_SCL / TIM4_CH1 / USART1_TX + PB_7, //D32 - 1:I2C1_SDA / TIM4_CH2 / USART1_RX + PB_8, //D33 - 1:I2C1_SCL / TIM4_CH3 / SDIO_D4 / TIM10_CH1 + PB_9, //D34 - 1:I2C1_SDA / TIM4_CH4 / SDIO_D5 / TIM11_CH1 / SPI2_NSS + PA_0, //D35/A0 - 1:UART4_TX / TIM5_CH1 2:ADC123_IN0 + PA_1, //D36/A1 - 1:UART4_RX / TIM5_CH2 / TIM2_CH2 2:ADC123_IN1 + PA_2, //D37/A2 - 1:USART2_TX /TIM5_CH3 / TIM9_CH1 / TIM2_CH3 2:ADC123_IN2 + PA_3, //D38/A3 - 1:USART2_RX /TIM5_CH4 / TIM9_CH2 / TIM2_CH4 2:ADC123_IN3 + PA_4, //D39/A4 - NOT FT 1:SPI1_NSS / SPI3_NSS / USART2_CK 2:ADC12_IN4 / DAC_OUT1 + PA_5, //D40/A5 - NOT FT 1:SPI1_SCK 2:ADC12_IN5 / DAC_OUT2 + PA_6, //D41/A6 - 1:SPI1_MISO / TIM13_CH1 / TIM3_CH1 2:ADC12_IN6 + PA_7, //D42/A7 - 1:SPI1_MOSI / TIM14_CH1 / TIM3_CH2 2:ADC12_IN7 + PB_0, //D43/A8 - 1:TIM3_CH3 2:ADC12_IN8 + PB_1, //D44/A9 - 1:TIM3_CH4 2:ADC12_IN9 + PC_0, //D45/A10 - 1: 2:ADC123_IN10 + PC_1, //D46/A11 - 1: 2:ADC123_IN11 + PC_2, //D47/A12 - 1:SPI2_MISO 2:ADC123_IN12 + PC_3, //D48/A13 - 1:SPI2_MOSI 2:ADC123_IN13 + PC_4, //D49/A14 - 1: 2:ADC12_IN14 + PC_5, //D50/A15 - 1: 2:ADC12_IN15 + #if STM32F4X_PIN_NUM >= 144 + PF_3, //D51/A16 - 1:FSMC_A3 2:ADC3_IN9 + PF_4, //D52/A17 - 1:FSMC_A4 2:ADC3_IN14 + PF_5, //D53/A18 - 1:FSMC_A5 2:ADC3_IN15 + PF_6, //D54/A19 - 1:TIM10_CH1 2:ADC3_IN4 + PF_7, //D55/A20 - 1:TIM11_CH1 2:ADC3_IN5 + PF_8, //D56/A21 - 1:TIM13_CH1 2:ADC3_IN6 + PF_9, //D57/A22 - 1;TIM14_CH1 2:ADC3_IN7 + PF_10, //D58/A23 - 2:ADC3_IN8 + #endif +#endif +#if STM32F4X_PIN_NUM >= 100 //100 pins mcu, 82 gpio + PE_2, //D59 - 1:FSMC_A23 + PE_3, //D60 - 1:FSMC_A19 + PE_4, //D61 - 1:FSMC_A20 + PE_5, //D62 - 1:FSMC_A21 + PE_6, //D63 - 1:FSMC_A22 + PE_7, //D64 - 1:FSMC_D4 + PE_8, //D65 - 1:FSMC_D5 + PE_9, //D66 - 1:FSMC_D6 / TIM1_CH1 + PE_10, //D67 - 1:FSMC_D7 + PE_11, //D68 - 1:FSMC_D8 / TIM1_CH2 + PE_12, //D69 - 1:FSMC_D9 + PE_13, //D70 - 1:FSMC_D10 / TIM1_CH3 + PE_14, //D71 - 1:FSMC_D11 / TIM1_CH4 + PE_15, //D72 - 1:FSMC_D12 + PD_8, //D73 - 1:FSMC_D13 / USART3_TX + PD_9, //D74 - 1:FSMC_D14 / USART3_RX + PD_10, //D75 - 1:FSMC_D15 + PD_11, //D76 - 1:FSMC_A16 + PD_12, //D77 - 1:FSMC_A17 / TIM4_CH1 + PD_13, //D78 - 1:FSMC_A18 / TIM4_CH2 + PD_14, //D79 - 1:FSMC_D0 / TIM4_CH3 + PD_15, //D80 - 1:FSMC_D1 / TIM4_CH4 + PD_0, //D81 - 1:FSMC_D2 + PD_1, //D82 - 1:FSMC_D3 + PD_3, //D83 - 1:FSMC_CLK + PD_4, //D84 - 1:FSMC_NOE + PD_5, //D85 - 1:USART2_TX + PD_6, //D86 - 1:USART2_RX + PD_7, //D87 + PE_0, //D88 + PE_1, //D89 +#endif +#if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + PF_0, //D90 - 1:FSMC_A0 / I2C2_SDA + PF_1, //D91 - 1:FSMC_A1 / I2C2_SCL + PF_2, //D92 - 1:FSMC_A2 + PF_11, //D93 + PF_12, //D94 - 1:FSMC_A6 + PF_13, //D95 - 1:FSMC_A7 + PF_14, //D96 - 1:FSMC_A8 + PF_15, //D97 - 1:FSMC_A9 + PG_0, //D98 - 1:FSMC_A10 + PG_1, //D99 - 1:FSMC_A11 + PG_2, //D100 - 1:FSMC_A12 + PG_3, //D101 - 1:FSMC_A13 + PG_4, //D102 - 1:FSMC_A14 + PG_5, //D103 - 1:FSMC_A15 + PG_6, //D104 + PG_7, //D105 + PG_8, //D106 + PG_9, //D107 - 1:USART6_RX + PG_10, //D108 - 1:FSMC_NE3 + PG_11, //D109 + PG_12, //D110 - 1:FSMC_NE4 + PG_13, //D111 - 1:FSMC_A24 + PG_14, //D112 - 1:FSMC_A25 / USART6_TX + PG_15, //D113 +#endif +#if STM32F4X_PIN_NUM >= 176 //176 pins mcu, 140 gpio + PI_8, //D114 + PI_9, //D115 + PI_10, //D116 + PI_11, //D117 + PH_2, //D118 + PH_3, //D119 + PH_4, //D120 - 1:I2C2_SCL + PH_5, //D121 - 1:I2C2_SDA + PH_6, //D122 - 1:TIM12_CH1 + PH_7, //D123 - 1:I2C3_SCL + PH_8, //D124 - 1:I2C3_SDA + PH_9, //D125 - 1:TIM12_CH2 + PH_10, //D126 - 1:TIM5_CH1 + PH_11, //D127 - 1:TIM5_CH2 + PH_12, //D128 - 1:TIM5_CH3 + PH_13, //D129 + PH_14, //D130 + PH_15, //D131 + PI_0, //D132 - 1:TIM5_CH4 / SPI2_NSS + PI_1, //D133 - 1:SPI2_SCK + PI_2, //D134 - 1:TIM8_CH4 /SPI2_MISO + PI_3, //D135 - 1:SPI2_MOS + PI_4, //D136 + PI_5, //D137 - 1:TIM8_CH1 + PI_6, //D138 - 1:TIM8_CH2 + PI_7, //D139 - 1:TIM8_CH3 +#endif +}; + +#ifdef __cplusplus +} +#endif + +// ------------------------ + +#ifdef __cplusplus +extern "C" { +#endif + + /** + * @brief System Clock Configuration + * @param None + * @retval None + */ +WEAK void SystemClock_Config() { + + RCC_OscInitTypeDef RCC_OscInitStruct; + RCC_ClkInitTypeDef RCC_ClkInitStruct; + + /**Configure the main internal regulator output voltage + */ + __HAL_RCC_PWR_CLK_ENABLE(); + + __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); + + /**Initializes the CPU, AHB and APB busses clocks + */ + RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; + RCC_OscInitStruct.HSEState = RCC_HSE_ON; + RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; + RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; + RCC_OscInitStruct.PLL.PLLM = 8; + RCC_OscInitStruct.PLL.PLLN = 336; + RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2; + RCC_OscInitStruct.PLL.PLLQ = 7; + if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) { + _Error_Handler(__FILE__, __LINE__); + } + + /**Initializes the CPU, AHB and APB busses clocks + */ + RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK + | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2; + RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; + RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; + RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4; + RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2; + + if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_5) != HAL_OK) { + _Error_Handler(__FILE__, __LINE__); + } + + /**Configure the Systick interrupt time + */ + HAL_SYSTICK_Config(HAL_RCC_GetHCLKFreq() / 1000); + + /**Configure the Systick + */ + HAL_SYSTICK_CLKSourceConfig(SYSTICK_CLKSOURCE_HCLK); + + /* SysTick_IRQn interrupt configuration */ + HAL_NVIC_SetPriority(SysTick_IRQn, 0, 0); +} + +#ifdef __cplusplus +} +#endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/variant.h b/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/variant.h new file mode 100644 index 000000000000..cdb0dc2677c4 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_I3DBEEZ9/variant.h @@ -0,0 +1,323 @@ +/* + ******************************************************************************* + * Copyright (c) 2017, STMicroelectronics + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2. 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. + * 3. Neither the name of STMicroelectronics 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 HOLDER 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. + ******************************************************************************* + */ +#pragma once + +#ifdef __cplusplus +extern "C" { +#endif // __cplusplus + +/*---------------------------------------------------------------------------- + * Pins + *----------------------------------------------------------------------------*/ + +#ifdef STM32F405RX + #define STM32F4X_PIN_NUM 64 //64 pins mcu, 51 gpio + #define STM32F4X_GPIO_NUM 51 + #define STM32F4X_ADC_NUM 16 +#elif defined(STM32F407_5VX) + #define STM32F4X_PIN_NUM 100 //100 pins mcu, 82 gpio + #define STM32F4X_GPIO_NUM 82 + #define STM32F4X_ADC_NUM 16 +#elif defined(STM32F407_5ZX) + #define STM32F4X_PIN_NUM 144 //144 pins mcu, 114 gpio + #define STM32F4X_GPIO_NUM 114 + #define STM32F4X_ADC_NUM 24 +#elif defined(STM32F407IX) + #define STM32F4X_PIN_NUM 176 //176 pins mcu, 140 gpio + #define STM32F4X_GPIO_NUM 140 + #define STM32F4X_ADC_NUM 24 +#else + #error "no match MCU defined" +#endif + +#if STM32F4X_PIN_NUM >= 64 //64 pins mcu, 51 gpio + #define PC13 0 + #define PC14 1 //OSC32_IN + #define PC15 2 //OSC32_OUT + #define PH0 3 //OSC_IN + #define PH1 4 //OSC_OUT + #define PB2 5 //BOOT1 + #define PB10 6 //1:SPI2_SCK / I2C2_SCL / USART3_TX / TIM2_CH3 + #define PB11 7 //1:I2C2_SDA / USART3_RX / TIM2_CH4 + #define PB12 8 //1:SPI2_NSS / OTG_HS_ID + #define PB13 9 //1:SPI2_SCK 2:OTG_HS_VBUS + #define PB14 10 //1:SPI2_MISO / TIM12_CH1 / OTG_HS_DM + #define PB15 11 //SPI2_MOSI / TIM12_CH2 / OTG_HS_DP + #define PC6 12 //1:TIM8_CH1 / SDIO_D6 / USART6_TX / TIM3_CH1 + #define PC7 13 //1:TIM8_CH2 / SDIO_D7 / USART6_RX / TIM3_CH2 + #define PC8 14 //1:TIM8_CH3 / SDIO_D0 / TIM3_CH3 + #define PC9 15 //1:TIM8_CH4 / SDIO_D1 / TIM3_CH4 + #define PA8 16 //1:TIM1_CH1 / I2C3_SCL / OTG_FS_SOF + #define PA9 17 //1:USART1_TX / TIM1_CH2 2:OTG_FS_VBUS + #define PA10 18 //1:USART1_RX / TIM1_CH3 / OTG_FS_ID + #define PA11 19 //1:TIM1_CH4 / OTG_FS_DM + #define PA12 20 //1:OTG_FS_DP + #define PA13 21 //0:JTMS-SWDIO + #define PA14 22 //0:JTCK-SWCLK + #define PA15 23 //0:JTDI 1:SPI3_NSS / SPI1_NSS + #define PC10 24 //1:UART4_TX / SPI3_SCK / SDIO_D2 / USART3_TX + #define PC11 25 //1:UART4_RX / SPI3_MISO / SDIO_D3 / USART3_RX + #define PC12 26 //1:UART5_TX / SPI3_MOSI / SDIO_CK + #define PD2 27 //1:UART5_RX / SDIO_CMD + #define PB3 28 //0:JTDO 1:SPI3_SCK / TIM2_CH2 / SPI1_SCK + #define PB4 29 //0:NJTRST 1:SPI3_MISO / TIM3_CH1 / SPI1_MISO + #define PB5 30 //1:TIM3_CH2 / SPI1_MOSI / SPI3_MOSI + #define PB6 31 //1:I2C1_SCL / TIM4_CH1 / USART1_TX + #define PB7 32 //1:I2C1_SDA / TIM4_CH2 / USART1_RX + #define PB8 33 //1:I2C1_SCL / TIM4_CH3 / SDIO_D4 / TIM10_CH1 + #define PB9 34 //1:I2C1_SDA / TIM4_CH4 / SDIO_D5 / TIM11_CH1 / SPI2_NSS + #define PA0 35 //1:UART4_TX / TIM5_CH1 2:ADC123_IN0 + #define PA1 36 //1:UART4_RX / TIM5_CH2 / TIM2_CH2 2:ADC123_IN1 + #define PA2 37 //1:USART2_TX /TIM5_CH3 / TIM9_CH1 / TIM2_CH3 2:ADC123_IN2 + #define PA3 38 //1:USART2_RX /TIM5_CH4 / TIM9_CH2 / TIM2_CH4 2:ADC123_IN3 + #define PA4 39 //NOT FT 1:SPI1_NSS / SPI3_NSS / USART2_CK 2:ADC12_IN4 / DAC_OUT1 + #define PA5 40 //NOT FT 1:SPI1_SCK 2:ADC12_IN5 / DAC_OUT2 + #define PA6 41 //1:SPI1_MISO / TIM13_CH1 / TIM3_CH1 2:ADC12_IN6 + #define PA7 42 //1:SPI1_MOSI / TIM14_CH1 / TIM3_CH2 2:ADC12_IN7 + #define PB0 43 //1:TIM3_CH3 2:ADC12_IN8 + #define PB1 44 //1:TIM3_CH4 2:ADC12_IN9 + #define PC0 45 //1: 2:ADC123_IN10 + #define PC1 46 //1: 2:ADC123_IN11 + #define PC2 47 //1:SPI2_MISO 2:ADC123_IN12 + #define PC3 48 //1:SPI2_MOSI 2:ADC123_IN13 + #define PC4 49 //1: 2:ADC12_IN14 + #define PC5 50 //1: 2:ADC12_IN15 + #if STM32F4X_PIN_NUM >= 144 + #define PF3 51 //1:FSMC_A3 2:ADC3_IN9 + #define PF4 52 //1:FSMC_A4 2:ADC3_IN14 + #define PF5 53 //1:FSMC_A5 2:ADC3_IN15 + #define PF6 54 //1:TIM10_CH1 2:ADC3_IN4 + #define PF7 55 //1:TIM11_CH1 2:ADC3_IN5 + #define PF8 56 //1:TIM13_CH1 2:ADC3_IN6 + #define PF9 57 //1;TIM14_CH1 2:ADC3_IN7 + #define PF10 58 //2:ADC3_IN8 + #endif +#endif +#if STM32F4X_PIN_NUM >= 100 //100 pins mcu, 82 gpio + #define PE2 (35+STM32F4X_ADC_NUM) //1:FSMC_A23 + #define PE3 (36+STM32F4X_ADC_NUM) //1:FSMC_A19 + #define PE4 (37+STM32F4X_ADC_NUM) //1:FSMC_A20 + #define PE5 (38+STM32F4X_ADC_NUM) //1:FSMC_A21 + #define PE6 (39+STM32F4X_ADC_NUM) //1:FSMC_A22 + #define PE7 (40+STM32F4X_ADC_NUM) //1:FSMC_D4 + #define PE8 (41+STM32F4X_ADC_NUM) //1:FSMC_D5 + #define PE9 (42+STM32F4X_ADC_NUM) //1:FSMC_D6 / TIM1_CH1 + #define PE10 (43+STM32F4X_ADC_NUM) //1:FSMC_D7 + #define PE11 (44+STM32F4X_ADC_NUM) //1:FSMC_D8 / TIM1_CH2 + #define PE12 (45+STM32F4X_ADC_NUM) //1:FSMC_D9 + #define PE13 (46+STM32F4X_ADC_NUM) //1:FSMC_D10 / TIM1_CH3 + #define PE14 (47+STM32F4X_ADC_NUM) //1:FSMC_D11 / TIM1_CH4 + #define PE15 (48+STM32F4X_ADC_NUM) //1:FSMC_D12 + #define PD8 (49+STM32F4X_ADC_NUM) //1:FSMC_D13 / USART3_TX + #define PD9 (50+STM32F4X_ADC_NUM) //1:FSMC_D14 / USART3_RX + #define PD10 (51+STM32F4X_ADC_NUM) //1:FSMC_D15 + #define PD11 (52+STM32F4X_ADC_NUM) //1:FSMC_A16 + #define PD12 (53+STM32F4X_ADC_NUM) //1:FSMC_A17 / TIM4_CH1 + #define PD13 (54+STM32F4X_ADC_NUM) //1:FSMC_A18 / TIM4_CH2 + #define PD14 (55+STM32F4X_ADC_NUM) //1:FSMC_D0 / TIM4_CH3 + #define PD15 (56+STM32F4X_ADC_NUM) //1:FSMC_D1 / TIM4_CH4 + #define PD0 (57+STM32F4X_ADC_NUM) //1:FSMC_D2 + #define PD1 (58+STM32F4X_ADC_NUM) //1:FSMC_D3 + #define PD3 (59+STM32F4X_ADC_NUM) //1:FSMC_CLK + #define PD4 (60+STM32F4X_ADC_NUM) //1:FSMC_NOE + #define PD5 (61+STM32F4X_ADC_NUM) //1:USART2_TX + #define PD6 (62+STM32F4X_ADC_NUM) //1:USART2_RX + #define PD7 (63+STM32F4X_ADC_NUM) + #define PE0 (64+STM32F4X_ADC_NUM) + #define PE1 (65+STM32F4X_ADC_NUM) +#endif +#if STM32F4X_PIN_NUM >= 144 //144 pins mcu, 114 gpio + #define PF0 (66+STM32F4X_ADC_NUM) //1:FSMC_A0 / I2C2_SDA + #define PF1 (67+STM32F4X_ADC_NUM) //1:FSMC_A1 / I2C2_SCL + #define PF2 (68+STM32F4X_ADC_NUM) //1:FSMC_A2 + #define PF11 (69+STM32F4X_ADC_NUM) + #define PF12 (70+STM32F4X_ADC_NUM) //1:FSMC_A6 + #define PF13 (71+STM32F4X_ADC_NUM) //1:FSMC_A7 + #define PF14 (72+STM32F4X_ADC_NUM) //1:FSMC_A8 + #define PF15 (73+STM32F4X_ADC_NUM) //1:FSMC_A9 + #define PG0 (74+STM32F4X_ADC_NUM) //1:FSMC_A10 + #define PG1 (75+STM32F4X_ADC_NUM) //1:FSMC_A11 + #define PG2 (76+STM32F4X_ADC_NUM) //1:FSMC_A12 + #define PG3 (77+STM32F4X_ADC_NUM) //1:FSMC_A13 + #define PG4 (78+STM32F4X_ADC_NUM) //1:FSMC_A14 + #define PG5 (79+STM32F4X_ADC_NUM) //1:FSMC_A15 + #define PG6 (80+STM32F4X_ADC_NUM) + #define PG7 (81+STM32F4X_ADC_NUM) + #define PG8 (82+STM32F4X_ADC_NUM) + #define PG9 (83+STM32F4X_ADC_NUM) //1:USART6_RX + #define PG10 (84+STM32F4X_ADC_NUM) //1:FSMC_NE3 + #define PG11 (85+STM32F4X_ADC_NUM) + #define PG12 (86+STM32F4X_ADC_NUM) //1:FSMC_NE4 + #define PG13 (87+STM32F4X_ADC_NUM) //1:FSMC_A24 + #define PG14 (88+STM32F4X_ADC_NUM) //1:FSMC_A25 / USART6_TX + #define PG15 (89+STM32F4X_ADC_NUM) +#endif +#if STM32F4X_PIN_NUM >= 176 //176 pins mcu, 140 gpio + #define PI8 (90+STM32F4X_ADC_NUM) + #define PI9 (91+STM32F4X_ADC_NUM) + #define PI10 (92+STM32F4X_ADC_NUM) + #define PI11 (93+STM32F4X_ADC_NUM) + #define PH2 (94+STM32F4X_ADC_NUM) + #define PH3 (95+STM32F4X_ADC_NUM) + #define PH4 (96+STM32F4X_ADC_NUM) //1:I2C2_SCL + #define PH5 (97+STM32F4X_ADC_NUM) //1:I2C2_SDA + #define PH6 (98+STM32F4X_ADC_NUM) //1:TIM12_CH1 + #define PH7 (99+STM32F4X_ADC_NUM) //1:I2C3_SCL + #define PH8 (100+STM32F4X_ADC_NUM) //1:I2C3_SDA + #define PH9 (101+STM32F4X_ADC_NUM) //1:TIM12_CH2 + #define PH10 (102+STM32F4X_ADC_NUM) //1:TIM5_CH1 + #define PH11 (103+STM32F4X_ADC_NUM) //1:TIM5_CH2 + #define PH12 (104+STM32F4X_ADC_NUM) //1:TIM5_CH3 + #define PH13 (105+STM32F4X_ADC_NUM) + #define PH14 (106+STM32F4X_ADC_NUM) + #define PH15 (107+STM32F4X_ADC_NUM) + #define PI0 (108+STM32F4X_ADC_NUM) //1:TIM5_CH4 / SPI2_NSS + #define PI1 (109+STM32F4X_ADC_NUM) //1:SPI2_SCK + #define PI2 (110+STM32F4X_ADC_NUM) //1:TIM8_CH4 /SPI2_MISO + #define PI3 (111+STM32F4X_ADC_NUM) //1:SPI2_MOS + #define PI4 (112+STM32F4X_ADC_NUM) + #define PI5 (113+STM32F4X_ADC_NUM) //1:TIM8_CH1 + #define PI6 (114+STM32F4X_ADC_NUM) //1:TIM8_CH2 + #define PI7 (115+STM32F4X_ADC_NUM) //1:TIM8_CH3 +#endif + + +// This must be a literal +#define NUM_DIGITAL_PINS (STM32F4X_GPIO_NUM) +// This must be a literal with a value less than or equal to MAX_ANALOG_INPUTS +#define NUM_ANALOG_INPUTS (STM32F4X_ADC_NUM) +#define NUM_ANALOG_FIRST 35 + +// Below ADC, DAC and PWM definitions already done in the core +// Could be redefined here if needed +// ADC resolution is 12bits +//#define ADC_RESOLUTION 12 +//#define DACC_RESOLUTION 12 + +// PWM resolution +/* + * BEWARE: + * Changing this value from the default (1000) will affect the PWM output value of analogWrite (to a PWM pin) + * Since the pin is toggled on capture, if you change the frequency of the timer you have to adapt the compare value (analogWrite thinks you did) + */ +//#define PWM_FREQUENCY 20000 +//The bottom values are the default and don't need to be redefined +//#define PWM_RESOLUTION 8 +//#define PWM_MAX_DUTY_CYCLE 255 + +// On-board LED pin number +#define LED_BUILTIN PA7 +#define LED_GREEN LED_BUILTIN + +// Below SPI and I2C definitions already done in the core +// Could be redefined here if differs from the default one +// SPI Definitions +#define PIN_SPI_MOSI PB15 +#define PIN_SPI_MISO PB14 +#define PIN_SPI_SCK PB13 +#define PIN_SPI_SS PB12 + +// I2C Definitions +#if STM32F4X_PIN_NUM >= 176 + #define PIN_WIRE_SDA PH5 + #define PIN_WIRE_SCL PH4 +#else + #define PIN_WIRE_SDA PB7 + #define PIN_WIRE_SCL PB6 +#endif + +// Timer Definitions +// Do not use timer used by PWM pins when possible. See PinMap_PWM in PeripheralPins.c +#define TIMER_TONE TIM2 // TIMER_TONE must be defined in this file +#define TIMER_SERVO TIM5 // Only 1 Servo PIN on BEEZ9, so use the same timer as defined in PeripheralPins +#define TIMER_SERIAL TIM7 // TIMER_SERIAL must be defined in this file + +// UART Definitions +//#define ENABLE_HWSERIAL1 done automatically by the #define SERIAL_UART_INSTANCE below +#define ENABLE_HWSERIAL3 +#define ENABLE_HWSERIAL6 + +// Define here Serial instance number to map on Serial generic name (if not already used by SerialUSB) +#define SERIAL_UART_INSTANCE 1 //1 for Serial = Serial1 (USART1) + +// DEBUG_UART could be redefined to print on another instance than 'Serial' +//#define DEBUG_UART ((USART_TypeDef *) U(S)ARTX) // ex: USART3 +// DEBUG_UART baudrate, default: 9600 if not defined +//#define DEBUG_UART_BAUDRATE x +// DEBUG_UART Tx pin name, default: the first one found in PinMap_UART_TX for DEBUG_UART +//#define DEBUG_PINNAME_TX PX_n // PinName used for TX + +// Default pin used for 'Serial' instance (ex: ST-Link) +// Mandatory for Firmata +#define PIN_SERIAL_RX PA10 +#define PIN_SERIAL_TX PA9 + +// Optional PIN_SERIALn_RX and PIN_SERIALn_TX where 'n' is the U(S)ART number +// Used when user instantiate a hardware Serial using its peripheral name. +// Example: HardwareSerial mySerial(USART3); +// will use PIN_SERIAL3_RX and PIN_SERIAL3_TX if defined. +#define PIN_SERIAL1_RX PA10 +#define PIN_SERIAL1_TX PA9 +#define PIN_SERIAL3_RX PD9 +#define PIN_SERIAL3_TX PD8 +#define PIN_SERIAL6_RX PC7 +#define PIN_SERIAL6_TX PC6 +//#define PIN_SERIALLP1_RX x // For LPUART1 RX +//#define PIN_SERIALLP1_TX x // For LPUART1 TX + +#ifdef __cplusplus +} // extern "C" +#endif + +/*---------------------------------------------------------------------------- + * Arduino objects - C++ only + *----------------------------------------------------------------------------*/ + +#ifdef __cplusplus +// These serial port names are intended to allow libraries and architecture-neutral +// sketches to automatically default to the correct port name for a particular type +// of use. For example, a GPS module would normally connect to SERIAL_PORT_HARDWARE_OPEN, +// the first hardware serial port whose RX/TX pins are not dedicated to another use. +// +// SERIAL_PORT_MONITOR Port which normally prints to the Arduino Serial Monitor +// +// SERIAL_PORT_USBVIRTUAL Port which is USB virtual serial +// +// SERIAL_PORT_LINUXBRIDGE Port which connects to a Linux system via Bridge library +// +// SERIAL_PORT_HARDWARE Hardware serial port, physical RX & TX pins. +// +// SERIAL_PORT_HARDWARE_OPEN Hardware serial ports which are open for use. Their RX & TX +// pins are NOT connected to anything by default. +#define SERIAL_PORT_MONITOR Serial +#define SERIAL_PORT_HARDWARE Serial1 +#define SERIAL_PORT_HARDWARE_OPEN Serial3 +#define SERIAL_PORT_HARDWARE_OPEN1 Serial6 +#endif diff --git a/buildroot/tests/I3DBEEZ9_V1 b/buildroot/tests/I3DBEEZ9_V1 new file mode 100755 index 000000000000..7c11d2e6c879 --- /dev/null +++ b/buildroot/tests/I3DBEEZ9_V1 @@ -0,0 +1,33 @@ +#!/usr/bin/env bash +# +# Build tests for STM32F407ZG I3DBEEZ9 Board +# + +# exit on first failure +set -e + +# +# Build with the default configurations +# +restore_configs +opt_set MOTHERBOARD BOARD_I3DBEEZ9_V1 SERIAL_PORT 1 +exec_test $1 $2 "I3DBEE Z9 Board | Default Configuration" "$3" + +restore_configs +opt_set MOTHERBOARD BOARD_I3DBEEZ9_V1 SERIAL_PORT -1 \ + EXTRUDERS 3 TEMP_SENSOR_1 1 TEMP_SENSOR_2 1 \ + E0_AUTO_FAN_PIN PC10 E1_AUTO_FAN_PIN PC11 E2_AUTO_FAN_PIN PC12 \ + X_DRIVER_TYPE TMC2209 Y_DRIVER_TYPE TMC2130 +opt_enable BLTOUCH EEPROM_SETTINGS AUTO_BED_LEVELING_3POINT Z_SAFE_HOMING PINS_DEBUGGING +exec_test $1 $2 "I3DBEE Z9 Board | 3 Extruders | Auto-Fan | BLTOUCH | Mixed TMC" "$3" + +restore_configs +opt_set MOTHERBOARD BOARD_I3DBEEZ9_V1 SERIAL_PORT -1 \ + CUTTER_POWER_UNIT PERCENT \ + SPINDLE_LASER_PWM_PIN HEATER_1_PIN SPINDLE_LASER_ENA_PIN HEATER_2_PIN \ + TEMP_SENSOR_COOLER 1000 TEMP_COOLER_PIN PD13 +opt_enable LASER_FEATURE LASER_SAFETY_TIMEOUT_MS REPRAP_DISCOUNT_SMART_CONTROLLER +exec_test $1 $2 "I3DBEE Z9 Board | HD44780 | Laser (Percent) | Cooling | LCD" "$3" + +# clean up +restore_configs diff --git a/ini/stm32f4.ini b/ini/stm32f4.ini index 7dfffe47646b..2889a88863cd 100644 --- a/ini/stm32f4.ini +++ b/ini/stm32f4.ini @@ -782,3 +782,14 @@ extends = common_stm32 board = blackpill_f401cc upload_protocol = stlink monitor_speed = 115200 + +# +# I3Dbeez9 (STM32F407ZGT6 ARM Cortex-M4) +# +[env:I3DBEEZ9_V1] +extends = stm32_variant +board = marlin_I3DBEEZ9 +board_build.offset = 0x8000 +build_flags = ${stm32_variant.build_flags} -DSTM32F407_5ZX +debug_tool = stlink +upload_protocol = stlink From 7249c3c46ffb3d6ae00236691b3c7ff4123424d4 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 18 May 2023 15:44:04 -0500 Subject: [PATCH 196/427] =?UTF-8?q?=F0=9F=A9=B9=20M493=20report=20followup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/feature/ft_motion/M493.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Marlin/src/gcode/feature/ft_motion/M493.cpp b/Marlin/src/gcode/feature/ft_motion/M493.cpp index 83c6a9a5dacb..9469f1575b61 100644 --- a/Marlin/src/gcode/feature/ft_motion/M493.cpp +++ b/Marlin/src/gcode/feature/ft_motion/M493.cpp @@ -103,7 +103,8 @@ void say_shaping() { #if HAS_EXTRUDERS SERIAL_ECHO_TERNARY(fxdTiCtrl.cfg.linearAdvEna, "Linear Advance ", "en", "dis", "abled"); - SERIAL_ECHOLNPGM(". Gain: "); SERIAL_ECHO_F(fxdTiCtrl.cfg.linearAdvK, 5); + SERIAL_ECHOPGM(". Gain: "); SERIAL_ECHO_F(fxdTiCtrl.cfg.linearAdvK, 5); + SERIAL_EOL(); #endif } From 48c14f110998e066e0db3b82956fcc0b3af1f1f7 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 19 May 2023 00:20:49 +0000 Subject: [PATCH 197/427] [cron] Bump distribution date (2023-05-19) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index d750fb9fa42e..20d39cad456d 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-18" +//#define STRING_DISTRIBUTION_DATE "2023-05-19" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index f1b231143e38..ae6f5a88cc15 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-18" + #define STRING_DISTRIBUTION_DATE "2023-05-19" #endif /** From 7d5bd4dfbc029c1be10a3de42c0eb6508965a22d Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 19 May 2023 04:48:11 -0500 Subject: [PATCH 198/427] =?UTF-8?q?=F0=9F=8E=A8=20Cutter=20pins=20cleanup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/tmc_util.cpp | 2 +- Marlin/src/module/motion.h | 2 +- Marlin/src/pins/linux/pins_RAMPS_LINUX.h | 4 ++-- Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h | 2 +- Marlin/src/pins/lpc1769/pins_COHESION3D_REMIX.h | 2 +- Marlin/src/pins/mega/pins_HJC2560C_REV2.h | 4 ++-- Marlin/src/pins/mega/pins_MEGACONTROLLER.h | 8 +++++--- Marlin/src/pins/mega/pins_MEGATRONICS.h | 8 +++++--- Marlin/src/pins/mega/pins_MEGATRONICS_2.h | 8 +++++--- Marlin/src/pins/mega/pins_MINITRONICS.h | 2 +- Marlin/src/pins/rambo/pins_EINSY_RAMBO.h | 10 ++++++---- Marlin/src/pins/rambo/pins_EINSY_RETRO.h | 10 ++++++---- Marlin/src/pins/rambo/pins_MINIRAMBO.h | 10 ++++++---- Marlin/src/pins/rambo/pins_RAMBO.h | 8 +++++--- Marlin/src/pins/ramps/pins_BAM_DICE_DUE.h | 8 +++++--- Marlin/src/pins/ramps/pins_BQ_ZUM_MEGA_3D.h | 8 +++++--- Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR2.h | 4 ++-- Marlin/src/pins/ramps/pins_RAMPS.h | 2 +- Marlin/src/pins/ramps/pins_RAMPS_OLD.h | 8 +++++--- Marlin/src/pins/ramps/pins_RAMPS_S_12.h | 2 +- Marlin/src/pins/ramps/pins_TT_OSCAR.h | 4 ++-- Marlin/src/pins/ramps/pins_ULTIMAIN_2.h | 4 ++-- Marlin/src/pins/ramps/pins_ULTIMAKER.h | 8 +++++--- Marlin/src/pins/ramps/pins_ULTIMAKER_OLD.h | 6 +++--- Marlin/src/pins/ramps/pins_Z_BOLT_X_SERIES.h | 4 ++-- Marlin/src/pins/sam/pins_RAMPS_FD_V1.h | 2 +- Marlin/src/pins/samd/pins_RAMPS_144.h | 2 +- Marlin/src/pins/sanguino/pins_GEN6.h | 8 +++++--- Marlin/src/pins/sanguino/pins_GEN7_14.h | 8 +++++--- Marlin/src/pins/sanguino/pins_GEN7_CUSTOM.h | 8 +++++--- Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h | 2 +- Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h | 2 +- Marlin/src/pins/teensy2/pins_TEENSY2.h | 8 +++++--- Marlin/src/pins/teensy2/pins_TEENSYLU.h | 8 +++++--- 34 files changed, 109 insertions(+), 77 deletions(-) diff --git a/Marlin/src/feature/tmc_util.cpp b/Marlin/src/feature/tmc_util.cpp index cc99f34c5b5a..095e14fe1558 100644 --- a/Marlin/src/feature/tmc_util.cpp +++ b/Marlin/src/feature/tmc_util.cpp @@ -1236,7 +1236,7 @@ static bool test_connection(TMC &st) { void test_tmc_connection(LOGICAL_AXIS_ARGS(const bool)) { uint8_t axis_connection = 0; - if (TERN0(HAS_X_AXIS, x)) { + if (TERN0(HAS_X_AXIS, x)) { #if AXIS_IS_TMC(X) axis_connection += test_connection(stepperX); #endif diff --git a/Marlin/src/module/motion.h b/Marlin/src/module/motion.h index ae0976b44c94..71d80f954e41 100644 --- a/Marlin/src/module/motion.h +++ b/Marlin/src/module/motion.h @@ -358,7 +358,7 @@ void do_blocking_move_to(const xyz_pos_t &raw, const_feedRate_t fr_mm_s=0.0f); void do_blocking_move_to(const xyze_pos_t &raw, const_feedRate_t fr_mm_s=0.0f); #if HAS_X_AXIS - void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s=0.0f); + void do_blocking_move_to_x(const_float_t rx, const_feedRate_t fr_mm_s=0.0f); #endif #if HAS_Y_AXIS void do_blocking_move_to_y(const_float_t ry, const_feedRate_t fr_mm_s=0.0f); diff --git a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h index e322af8fec22..950eb8d88f07 100644 --- a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h +++ b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h @@ -221,12 +221,12 @@ // #if HAS_CUTTER && !PIN_EXISTS(SPINDLE_LASER_ENA) #if !defined(NUM_SERVOS) || NUM_SERVOS == 0 // Prefer the servo connector - #define SPINDLE_LASER_ENA_PIN 4 // Pullup or pulldown! #define SPINDLE_LASER_PWM_PIN 6 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 4 // Pullup or pulldown! #define SPINDLE_DIR_PIN 5 #elif HAS_FREE_AUX2_PINS // try to use AUX 2 - #define SPINDLE_LASER_ENA_PIN 40 // Pullup or pulldown! #define SPINDLE_LASER_PWM_PIN 44 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 40 // Pullup or pulldown! #define SPINDLE_DIR_PIN 65 #endif #endif diff --git a/Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h b/Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h index f5d288fce426..a6341ec5295d 100644 --- a/Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h +++ b/Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h @@ -252,8 +252,8 @@ #error "LASER_FEATURE requires 3 free servo pins." #endif #endif - #define SPINDLE_LASER_ENA_PIN SERVO1_PIN // (6) Pin should have a pullup/pulldown! #define SPINDLE_LASER_PWM_PIN SERVO3_PIN // (4) MUST BE HARDWARE PWM + #define SPINDLE_LASER_ENA_PIN SERVO1_PIN // (6) Pin should have a pullup/pulldown! #define SPINDLE_DIR_PIN SERVO2_PIN // (5) #endif diff --git a/Marlin/src/pins/lpc1769/pins_COHESION3D_REMIX.h b/Marlin/src/pins/lpc1769/pins_COHESION3D_REMIX.h index 4dc275eee7f0..f86cd5d3c695 100644 --- a/Marlin/src/pins/lpc1769/pins_COHESION3D_REMIX.h +++ b/Marlin/src/pins/lpc1769/pins_COHESION3D_REMIX.h @@ -153,8 +153,8 @@ #undef HEATER_0_PIN #undef HEATER_BED_PIN #undef FAN0_PIN - #define SPINDLE_LASER_ENA_PIN P2_07 // FET 1 #define SPINDLE_LASER_PWM_PIN P2_05 // Bed FET + #define SPINDLE_LASER_ENA_PIN P2_07 // FET 1 #define SPINDLE_DIR_PIN P2_06 // FET 4 #endif diff --git a/Marlin/src/pins/mega/pins_HJC2560C_REV2.h b/Marlin/src/pins/mega/pins_HJC2560C_REV2.h index 79eef1436613..512da028348b 100644 --- a/Marlin/src/pins/mega/pins_HJC2560C_REV2.h +++ b/Marlin/src/pins/mega/pins_HJC2560C_REV2.h @@ -114,9 +114,9 @@ // M3/M4/M5 - Spindle/Laser Control // #if HAS_CUTTER - #define SPINDLE_DIR_PIN 16 - #define SPINDLE_LASER_ENA_PIN 17 // Pin should have a pullup! #define SPINDLE_LASER_PWM_PIN 9 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 17 // Pin should have a pullup! + #define SPINDLE_DIR_PIN 16 #endif // diff --git a/Marlin/src/pins/mega/pins_MEGACONTROLLER.h b/Marlin/src/pins/mega/pins_MEGACONTROLLER.h index 19808817c93d..049917b6b689 100644 --- a/Marlin/src/pins/mega/pins_MEGACONTROLLER.h +++ b/Marlin/src/pins/mega/pins_MEGACONTROLLER.h @@ -162,6 +162,8 @@ // // M3/M4/M5 - Spindle/Laser Control // -#define SPINDLE_LASER_PWM_PIN 6 // Hardware PWM -#define SPINDLE_LASER_ENA_PIN 7 // Pullup! -#define SPINDLE_DIR_PIN 8 +#if HAS_CUTTER + #define SPINDLE_LASER_PWM_PIN 6 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 7 // Pullup! + #define SPINDLE_DIR_PIN 8 +#endif diff --git a/Marlin/src/pins/mega/pins_MEGATRONICS.h b/Marlin/src/pins/mega/pins_MEGATRONICS.h index 0e2ac291b2a4..066b577c629b 100644 --- a/Marlin/src/pins/mega/pins_MEGATRONICS.h +++ b/Marlin/src/pins/mega/pins_MEGATRONICS.h @@ -130,6 +130,8 @@ // // M3/M4/M5 - Spindle/Laser Control // -#define SPINDLE_LASER_PWM_PIN 3 // Hardware PWM -#define SPINDLE_LASER_ENA_PIN 4 // Pullup! -#define SPINDLE_DIR_PIN 11 +#if HAS_CUTTER + #define SPINDLE_LASER_PWM_PIN 3 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 4 // Pullup! + #define SPINDLE_DIR_PIN 11 +#endif diff --git a/Marlin/src/pins/mega/pins_MEGATRONICS_2.h b/Marlin/src/pins/mega/pins_MEGATRONICS_2.h index d6840de8d0b3..ff118e732315 100644 --- a/Marlin/src/pins/mega/pins_MEGATRONICS_2.h +++ b/Marlin/src/pins/mega/pins_MEGATRONICS_2.h @@ -122,9 +122,11 @@ // // M3/M4/M5 - Spindle/Laser Control // -#define SPINDLE_LASER_PWM_PIN 3 // Hardware PWM -#define SPINDLE_LASER_ENA_PIN 16 // Pullup! -#define SPINDLE_DIR_PIN 11 +#if HAS_CUTTER + #define SPINDLE_LASER_PWM_PIN 3 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 16 // Pullup! + #define SPINDLE_DIR_PIN 11 +#endif // // LCD / Controller diff --git a/Marlin/src/pins/mega/pins_MINITRONICS.h b/Marlin/src/pins/mega/pins_MINITRONICS.h index 6d0309c4c191..c8828faea7ab 100644 --- a/Marlin/src/pins/mega/pins_MINITRONICS.h +++ b/Marlin/src/pins/mega/pins_MINITRONICS.h @@ -141,7 +141,7 @@ #define HEATER_BED_PIN 4 // won't compile #define TEMP_BED_PIN 50 #define TEMP_0_PIN 51 - #define SPINDLE_LASER_ENA_PIN 52 // using A6 because it already has a pullup #define SPINDLE_LASER_PWM_PIN 3 // WARNING - LED & resistor pull up to +12/+24V stepper voltage + #define SPINDLE_LASER_ENA_PIN 52 // using A6 because it already has a pullup #define SPINDLE_DIR_PIN 53 #endif diff --git a/Marlin/src/pins/rambo/pins_EINSY_RAMBO.h b/Marlin/src/pins/rambo/pins_EINSY_RAMBO.h index 531739ca16b8..d73092c2f68a 100644 --- a/Marlin/src/pins/rambo/pins_EINSY_RAMBO.h +++ b/Marlin/src/pins/rambo/pins_EINSY_RAMBO.h @@ -189,10 +189,12 @@ // // M3/M4/M5 - Spindle/Laser Control // -// use P1 connector for spindle pins -#define SPINDLE_LASER_PWM_PIN EXP1_02_PIN // Hardware PWM -#define SPINDLE_LASER_ENA_PIN 18 // Pullup! -#define SPINDLE_DIR_PIN 19 +#if HAS_CUTTER + // Use P1 connector for spindle pins + #define SPINDLE_LASER_PWM_PIN EXP1_02_PIN // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 18 // Pullup! + #define SPINDLE_DIR_PIN 19 +#endif // // Průša i3 MK2 Multiplexer Support diff --git a/Marlin/src/pins/rambo/pins_EINSY_RETRO.h b/Marlin/src/pins/rambo/pins_EINSY_RETRO.h index 10736d34a994..b4f09b7136b1 100644 --- a/Marlin/src/pins/rambo/pins_EINSY_RETRO.h +++ b/Marlin/src/pins/rambo/pins_EINSY_RETRO.h @@ -153,10 +153,12 @@ // // M3/M4/M5 - Spindle/Laser Control // -// use P1 connector for spindle pins -#define SPINDLE_LASER_PWM_PIN 9 // Hardware PWM -#define SPINDLE_LASER_ENA_PIN 18 // Pullup! -#define SPINDLE_DIR_PIN 19 +#if HAS_CUTTER + // Use P1 connector for spindle pins + #define SPINDLE_LASER_PWM_PIN 9 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 18 // Pullup! + #define SPINDLE_DIR_PIN 19 +#endif // // Průša i3 MK2 Multiplexer Support diff --git a/Marlin/src/pins/rambo/pins_MINIRAMBO.h b/Marlin/src/pins/rambo/pins_MINIRAMBO.h index 6e1a4608381e..32a74515d983 100644 --- a/Marlin/src/pins/rambo/pins_MINIRAMBO.h +++ b/Marlin/src/pins/rambo/pins_MINIRAMBO.h @@ -126,10 +126,12 @@ // // M3/M4/M5 - Spindle/Laser Control // -// use P1 connector for spindle pins -#define SPINDLE_LASER_PWM_PIN 9 // Hardware PWM -#define SPINDLE_LASER_ENA_PIN 18 // Pullup! -#define SPINDLE_DIR_PIN 19 +#if HAS_CUTTER + // Use P1 connector for spindle pins + #define SPINDLE_LASER_PWM_PIN 9 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 18 // Pullup! + #define SPINDLE_DIR_PIN 19 +#endif // // Průša i3 MK2 Multiplexer Support diff --git a/Marlin/src/pins/rambo/pins_RAMBO.h b/Marlin/src/pins/rambo/pins_RAMBO.h index 1e9b9938a5aa..e1ddf972d995 100644 --- a/Marlin/src/pins/rambo/pins_RAMBO.h +++ b/Marlin/src/pins/rambo/pins_RAMBO.h @@ -168,9 +168,11 @@ // // M3/M4/M5 - Spindle/Laser Control // -#define SPINDLE_LASER_PWM_PIN 45 // Hardware PWM -#define SPINDLE_LASER_ENA_PIN 31 // Pullup! -#define SPINDLE_DIR_PIN 32 +#if HAS_CUTTER + #define SPINDLE_LASER_PWM_PIN 45 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 31 // Pullup! + #define SPINDLE_DIR_PIN 32 +#endif // // SPI for MAX Thermocouple diff --git a/Marlin/src/pins/ramps/pins_BAM_DICE_DUE.h b/Marlin/src/pins/ramps/pins_BAM_DICE_DUE.h index f3439aa6bbba..cf237fb9c11e 100644 --- a/Marlin/src/pins/ramps/pins_BAM_DICE_DUE.h +++ b/Marlin/src/pins/ramps/pins_BAM_DICE_DUE.h @@ -37,9 +37,11 @@ // // M3/M4/M5 - Spindle/Laser Control // -#define SPINDLE_LASER_ENA_PIN 66 // Pullup or pulldown! -#define SPINDLE_DIR_PIN 67 -#define SPINDLE_LASER_PWM_PIN 44 // Hardware PWM +#if HAS_CUTTER + #define SPINDLE_LASER_PWM_PIN 44 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 66 // Pullup or pulldown! + #define SPINDLE_DIR_PIN 67 +#endif // // Temperature Sensors diff --git a/Marlin/src/pins/ramps/pins_BQ_ZUM_MEGA_3D.h b/Marlin/src/pins/ramps/pins_BQ_ZUM_MEGA_3D.h index efedb8ffaf54..08d4492ccb5e 100644 --- a/Marlin/src/pins/ramps/pins_BQ_ZUM_MEGA_3D.h +++ b/Marlin/src/pins/ramps/pins_BQ_ZUM_MEGA_3D.h @@ -95,9 +95,11 @@ // // M3/M4/M5 - Spindle/Laser Control // -#define SPINDLE_LASER_ENA_PIN 40 // Pullup or pulldown! -#define SPINDLE_LASER_PWM_PIN 44 // Hardware PWM -#define SPINDLE_DIR_PIN 42 +#if HAS_CUTTER + #define SPINDLE_LASER_PWM_PIN 44 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 40 // Pullup or pulldown! + #define SPINDLE_DIR_PIN 42 +#endif // // Misc. Functions diff --git a/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR2.h b/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR2.h index d79eb8041cbe..65828fd4fb62 100644 --- a/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR2.h +++ b/Marlin/src/pins/ramps/pins_FORMBOT_RAPTOR2.h @@ -44,12 +44,12 @@ // #if HAS_CUTTER && !PIN_EXISTS(SPINDLE_LASER_ENA) #if !NUM_SERVOS // Try to use servo connector first - #define SPINDLE_LASER_ENA_PIN 6 // Pullup or pulldown! #define SPINDLE_LASER_PWM_PIN 4 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 6 // Pullup or pulldown! #define SPINDLE_DIR_PIN 5 #elif !GREEDY_PANEL // Try to use AUX2 - #define SPINDLE_LASER_ENA_PIN 4 // Pullup or pulldown! #define SPINDLE_LASER_PWM_PIN 44 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 4 // Pullup or pulldown! #define SPINDLE_DIR_PIN 65 #endif #endif diff --git a/Marlin/src/pins/ramps/pins_RAMPS.h b/Marlin/src/pins/ramps/pins_RAMPS.h index 73207593fc41..422991aba4c1 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS.h +++ b/Marlin/src/pins/ramps/pins_RAMPS.h @@ -309,8 +309,8 @@ #endif #define SPINDLE_DIR_PIN 5 #elif HAS_FREE_AUX2_PINS - #define SPINDLE_LASER_ENA_PIN 40 // Pullup or pulldown! #define SPINDLE_LASER_PWM_PIN 44 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 40 // Pullup or pulldown! #define SPINDLE_DIR_PIN 65 #else #error "No auto-assignable Spindle/Laser pins available." diff --git a/Marlin/src/pins/ramps/pins_RAMPS_OLD.h b/Marlin/src/pins/ramps/pins_RAMPS_OLD.h index 19b048ec81a9..df24a7f19e7f 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS_OLD.h +++ b/Marlin/src/pins/ramps/pins_RAMPS_OLD.h @@ -113,6 +113,8 @@ // // M3/M4/M5 - Spindle/Laser Control // -#define SPINDLE_LASER_ENA_PIN 41 // Pullup or pulldown! -#define SPINDLE_LASER_PWM_PIN 45 // Hardware PWM -#define SPINDLE_DIR_PIN 43 +#if HAS_CUTTER + #define SPINDLE_LASER_PWM_PIN 45 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 41 // Pullup or pulldown! + #define SPINDLE_DIR_PIN 43 +#endif diff --git a/Marlin/src/pins/ramps/pins_RAMPS_S_12.h b/Marlin/src/pins/ramps/pins_RAMPS_S_12.h index 87535a7de886..542b3cb81642 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS_S_12.h +++ b/Marlin/src/pins/ramps/pins_RAMPS_S_12.h @@ -211,8 +211,8 @@ // M3/M4/M5 - Spindle/Laser Control // #if HAS_CUTTER && !defined(SPINDLE_LASER_ENA_PIN) - #define SPINDLE_LASER_ENA_PIN 4 // Pullup or pulldown! #define SPINDLE_LASER_PWM_PIN 6 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 4 // Pullup or pulldown! #define SPINDLE_DIR_PIN 5 #endif diff --git a/Marlin/src/pins/ramps/pins_TT_OSCAR.h b/Marlin/src/pins/ramps/pins_TT_OSCAR.h index 7078b11b6b62..d9c79f5da8eb 100644 --- a/Marlin/src/pins/ramps/pins_TT_OSCAR.h +++ b/Marlin/src/pins/ramps/pins_TT_OSCAR.h @@ -228,12 +228,12 @@ // #if HAS_CUTTER && !PIN_EXISTS(SPINDLE_LASER_ENA) #if !NUM_SERVOS // Prefer the servo connector - #define SPINDLE_LASER_ENA_PIN 4 // Pullup or pulldown! #define SPINDLE_LASER_PWM_PIN 6 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 4 // Pullup or pulldown! #define SPINDLE_DIR_PIN 5 #elif HAS_FREE_AUX2_PINS // Try to use AUX 2 - #define SPINDLE_LASER_ENA_PIN 40 // Pullup or pulldown! #define SPINDLE_LASER_PWM_PIN 44 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 40 // Pullup or pulldown! #define SPINDLE_DIR_PIN 65 #endif #endif diff --git a/Marlin/src/pins/ramps/pins_ULTIMAIN_2.h b/Marlin/src/pins/ramps/pins_ULTIMAIN_2.h index dc0696328907..049e8bc5d80c 100644 --- a/Marlin/src/pins/ramps/pins_ULTIMAIN_2.h +++ b/Marlin/src/pins/ramps/pins_ULTIMAIN_2.h @@ -151,9 +151,9 @@ // #if HAS_CUTTER // use the LED_PIN for spindle speed control or case light #undef LED_PIN - #define SPINDLE_DIR_PIN 16 - #define SPINDLE_LASER_ENA_PIN 17 // Pullup! #define SPINDLE_LASER_PWM_PIN 8 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 17 // Pullup! + #define SPINDLE_DIR_PIN 16 #else #undef LED_PIN #define CASE_LIGHT_PIN 8 diff --git a/Marlin/src/pins/ramps/pins_ULTIMAKER.h b/Marlin/src/pins/ramps/pins_ULTIMAKER.h index c822a62faf82..10adeb18917d 100644 --- a/Marlin/src/pins/ramps/pins_ULTIMAKER.h +++ b/Marlin/src/pins/ramps/pins_ULTIMAKER.h @@ -162,6 +162,8 @@ // // M3/M4/M5 - Spindle/Laser Control // -#define SPINDLE_LASER_PWM_PIN 9 // Hardware PWM -#define SPINDLE_LASER_ENA_PIN 10 // Pullup! -#define SPINDLE_DIR_PIN 11 // use the EXP3 PWM header +#if HAS_CUTTER + #define SPINDLE_LASER_PWM_PIN 9 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 10 // Pullup! + #define SPINDLE_DIR_PIN 11 // use the EXP3 PWM header +#endif diff --git a/Marlin/src/pins/ramps/pins_ULTIMAKER_OLD.h b/Marlin/src/pins/ramps/pins_ULTIMAKER_OLD.h index 5f5cb6cb1244..a1b02aa06c73 100644 --- a/Marlin/src/pins/ramps/pins_ULTIMAKER_OLD.h +++ b/Marlin/src/pins/ramps/pins_ULTIMAKER_OLD.h @@ -226,9 +226,9 @@ // #if HAS_CUTTER #if EITHER(BOARD_REV_1_0, BOARD_REV_1_5) // Use the last three SW positions - #define SPINDLE_DIR_PIN 10 // 1.0: SW4 1.5: EXP3-6 ("10") #define SPINDLE_LASER_PWM_PIN 9 // 1.0: SW5 1.5: EXP3-7 ( "9") .. MUST BE HARDWARE PWM #define SPINDLE_LASER_ENA_PIN 8 // 1.0: SW6 1.5: EXP3-8 ( "8") .. Pin should have a pullup! + #define SPINDLE_DIR_PIN 10 // 1.0: SW4 1.5: EXP3-6 ("10") #elif ENABLED(BOARD_REV_1_1_TO_1_3) /** * Only four hardware PWMs physically connected to anything on these boards: @@ -242,14 +242,14 @@ * They have an LED and resistor pullup to +24V which could damage 3.3V-5V ICs. */ #if EXTRUDERS == 1 - #define SPINDLE_DIR_PIN 43 #define SPINDLE_LASER_PWM_PIN 45 // Hardware PWM #define SPINDLE_LASER_ENA_PIN 41 // Pullup! + #define SPINDLE_DIR_PIN 43 #elif TEMP_SENSOR_BED == 0 // Can't use E0 so see if HEATER_BED_PIN is available #undef HEATER_BED_PIN - #define SPINDLE_DIR_PIN 38 // Probably pin 4 on 10 pin connector closest to the E0 socket #define SPINDLE_LASER_PWM_PIN 4 // Hardware PWM - Special precautions usually needed. #define SPINDLE_LASER_ENA_PIN 40 // Pullup! (Probably pin 6 on the 10-pin + #define SPINDLE_DIR_PIN 38 // Probably pin 4 on 10 pin connector closest to the E0 socket // connector closest to the E0 socket) #endif #endif diff --git a/Marlin/src/pins/ramps/pins_Z_BOLT_X_SERIES.h b/Marlin/src/pins/ramps/pins_Z_BOLT_X_SERIES.h index e4603591d12a..f63ca83723f3 100644 --- a/Marlin/src/pins/ramps/pins_Z_BOLT_X_SERIES.h +++ b/Marlin/src/pins/ramps/pins_Z_BOLT_X_SERIES.h @@ -170,12 +170,12 @@ // #if HAS_CUTTER && !PIN_EXISTS(SPINDLE_LASER_ENA) #if !defined(NUM_SERVOS) || NUM_SERVOS == 0 // Prefer the servo connector - #define SPINDLE_LASER_ENA_PIN 4 // Pullup or pulldown! #define SPINDLE_LASER_PWM_PIN 6 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 4 // Pullup or pulldown! #define SPINDLE_DIR_PIN 5 #elif HAS_FREE_AUX2_PINS - #define SPINDLE_LASER_ENA_PIN 40 // Pullup or pulldown! #define SPINDLE_LASER_PWM_PIN 44 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 40 // Pullup or pulldown! #define SPINDLE_DIR_PIN 65 #endif #endif diff --git a/Marlin/src/pins/sam/pins_RAMPS_FD_V1.h b/Marlin/src/pins/sam/pins_RAMPS_FD_V1.h index c84d84105c3b..8f206d9f876b 100644 --- a/Marlin/src/pins/sam/pins_RAMPS_FD_V1.h +++ b/Marlin/src/pins/sam/pins_RAMPS_FD_V1.h @@ -260,7 +260,7 @@ // M3/M4/M5 - Spindle/Laser Control // #if HOTENDS < 3 && HAS_CUTTER && !PIN_EXISTS(SPINDLE_LASER_ENA) - #define SPINDLE_LASER_ENA_PIN 45 // Use E2 ENA #define SPINDLE_LASER_PWM_PIN 12 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 45 // Use E2 ENA #define SPINDLE_DIR_PIN 47 // Use E2 DIR #endif diff --git a/Marlin/src/pins/samd/pins_RAMPS_144.h b/Marlin/src/pins/samd/pins_RAMPS_144.h index aa262f5a60f6..a762d3cdbdcc 100644 --- a/Marlin/src/pins/samd/pins_RAMPS_144.h +++ b/Marlin/src/pins/samd/pins_RAMPS_144.h @@ -155,8 +155,8 @@ // #if HAS_CUTTER && !defined(SPINDLE_LASER_ENA_PIN) #if !NUM_SERVOS // Use servo connector if possible - #define SPINDLE_LASER_ENA_PIN 4 // Pullup or pulldown! #define SPINDLE_LASER_PWM_PIN 6 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 4 // Pullup or pulldown! #define SPINDLE_DIR_PIN 5 #else #error "No auto-assignable Spindle/Laser pins available." diff --git a/Marlin/src/pins/sanguino/pins_GEN6.h b/Marlin/src/pins/sanguino/pins_GEN6.h index 75138845f402..4a6136e0810a 100644 --- a/Marlin/src/pins/sanguino/pins_GEN6.h +++ b/Marlin/src/pins/sanguino/pins_GEN6.h @@ -117,6 +117,8 @@ // // M3/M4/M5 - Spindle/Laser Control // -#define SPINDLE_LASER_ENA_PIN 5 // Pullup or pulldown! -#define SPINDLE_LASER_PWM_PIN 16 // Hardware PWM -#define SPINDLE_DIR_PIN 6 +#if HAS_CUTTER + #define SPINDLE_LASER_PWM_PIN 16 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 5 // Pullup or pulldown! + #define SPINDLE_DIR_PIN 6 +#endif diff --git a/Marlin/src/pins/sanguino/pins_GEN7_14.h b/Marlin/src/pins/sanguino/pins_GEN7_14.h index 698bd066066a..db80c45eeefe 100644 --- a/Marlin/src/pins/sanguino/pins_GEN7_14.h +++ b/Marlin/src/pins/sanguino/pins_GEN7_14.h @@ -118,6 +118,8 @@ // // M3/M4/M5 - Spindle/Laser Control // -#define SPINDLE_LASER_ENA_PIN 20 // Pullup or pulldown! -#define SPINDLE_LASER_PWM_PIN 16 // Hardware PWM -#define SPINDLE_DIR_PIN 21 +#if HAS_CUTTER + #define SPINDLE_LASER_PWM_PIN 16 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 20 // Pullup or pulldown! + #define SPINDLE_DIR_PIN 21 +#endif diff --git a/Marlin/src/pins/sanguino/pins_GEN7_CUSTOM.h b/Marlin/src/pins/sanguino/pins_GEN7_CUSTOM.h index 3927250b15b5..154e26725f20 100644 --- a/Marlin/src/pins/sanguino/pins_GEN7_CUSTOM.h +++ b/Marlin/src/pins/sanguino/pins_GEN7_CUSTOM.h @@ -134,6 +134,8 @@ // // M3/M4/M5 - Spindle/Laser Control // -#define SPINDLE_LASER_ENA_PIN 5 // Pullup or pulldown! -#define SPINDLE_LASER_PWM_PIN 16 // Hardware PWM -#define SPINDLE_DIR_PIN 6 +#if HAS_CUTTER + #define SPINDLE_LASER_PWM_PIN 16 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 5 // Pullup or pulldown! + #define SPINDLE_DIR_PIN 6 +#endif diff --git a/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h b/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h index 45b326e74e8f..9a80ca2e63aa 100644 --- a/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h +++ b/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h @@ -272,8 +272,8 @@ #if HAS_CUTTER #if !MB(AZTEEG_X1) && ENABLED(SANGUINOLOLU_V_1_2) && !BOTH(HAS_WIRED_LCD, IS_NEWPANEL) // try to use IO Header - #define SPINDLE_LASER_ENA_PIN 10 // Pullup or pulldown! #define SPINDLE_LASER_PWM_PIN 4 // Hardware PWM + #define SPINDLE_LASER_ENA_PIN 10 // Pullup or pulldown! #define SPINDLE_DIR_PIN 11 #elif !MB(MELZI) // use X stepper motor socket diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h index f2450ffcb4e7..af9a6d891e31 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h @@ -86,8 +86,8 @@ //#define HEATER_0_PIN -1 //#define HEATER_BED_PIN -1 #define FAN0_PIN -1 - #define SPINDLE_LASER_ENA_PIN PC0 // FET 1 #define SPINDLE_LASER_PWM_PIN PC0 // Bed FET + #define SPINDLE_LASER_ENA_PIN PC0 // FET 1 #define SPINDLE_DIR_PIN PC0 // FET 4 #define LASER_SOFT_PWM_PIN PC0 #endif diff --git a/Marlin/src/pins/teensy2/pins_TEENSY2.h b/Marlin/src/pins/teensy2/pins_TEENSY2.h index 2b65f17bc5ea..9c8c6ce628b6 100644 --- a/Marlin/src/pins/teensy2/pins_TEENSY2.h +++ b/Marlin/src/pins/teensy2/pins_TEENSY2.h @@ -182,6 +182,8 @@ // // M3/M4/M5 - Spindle/Laser Control // -#define SPINDLE_LASER_ENA_PIN 5 // D5 Pin should have a pullup! -#define SPINDLE_LASER_PWM_PIN 0 // D0 PWM0B MUST BE HARDWARE PWM -#define SPINDLE_DIR_PIN 7 // D7 +#if HAS_CUTTER + #define SPINDLE_LASER_PWM_PIN 0 // D0 PWM0B MUST BE HARDWARE PWM + #define SPINDLE_LASER_ENA_PIN 5 // D5 Pin should have a pullup! + #define SPINDLE_DIR_PIN 7 // D7 +#endif diff --git a/Marlin/src/pins/teensy2/pins_TEENSYLU.h b/Marlin/src/pins/teensy2/pins_TEENSYLU.h index 81bb56349fb1..deeffe9038cf 100644 --- a/Marlin/src/pins/teensy2/pins_TEENSYLU.h +++ b/Marlin/src/pins/teensy2/pins_TEENSYLU.h @@ -167,6 +167,8 @@ // // M3/M4/M5 - Spindle/Laser Control // -#define SPINDLE_LASER_PWM_PIN 24 // B4 IO-3 PWM2A - MUST BE HARDWARE PWM -#define SPINDLE_LASER_ENA_PIN 39 // F1 IO-11 - Pin should have a pullup! -#define SPINDLE_DIR_PIN 40 // F2 IO-9 +#if HAS_CUTTER + #define SPINDLE_LASER_PWM_PIN 24 // B4 IO-3 PWM2A - MUST BE HARDWARE PWM + #define SPINDLE_LASER_ENA_PIN 39 // F1 IO-11 - Pin should have a pullup! + #define SPINDLE_DIR_PIN 40 // F2 IO-9 +#endif From 26dfbd0660c10328847698b021e8ac9101810056 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 20 May 2023 00:19:33 +0000 Subject: [PATCH 199/427] [cron] Bump distribution date (2023-05-20) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 20d39cad456d..8ea8917f48dc 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-19" +//#define STRING_DISTRIBUTION_DATE "2023-05-20" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index ae6f5a88cc15..8d6d94c44879 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-19" + #define STRING_DISTRIBUTION_DATE "2023-05-20" #endif /** From 5bc84bf08cb47741537fe705dbfe19eee5396d4e Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 19 May 2023 23:30:48 -0500 Subject: [PATCH 200/427] =?UTF-8?q?=F0=9F=9A=B8=20Improve=20EEPROM=20valid?= =?UTF-8?q?ation=20(#25860)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/language.h | 1 + Marlin/src/lcd/language/language_de.h | 2 +- Marlin/src/lcd/language/language_en.h | 7 +- Marlin/src/lcd/language/language_es.h | 2 +- Marlin/src/lcd/language/language_gl.h | 2 +- Marlin/src/lcd/language/language_hu.h | 2 +- Marlin/src/lcd/language/language_it.h | 2 +- Marlin/src/lcd/language/language_ro.h | 6 +- Marlin/src/lcd/language/language_ru.h | 2 +- Marlin/src/lcd/language/language_sk.h | 2 +- Marlin/src/lcd/language/language_sv.h | 2 +- Marlin/src/lcd/language/language_tr.h | 2 +- Marlin/src/lcd/language/language_uk.h | 2 +- Marlin/src/lcd/language/language_zh_CN.h | 6 +- Marlin/src/lcd/language/language_zh_TW.h | 4 +- Marlin/src/lcd/marlinui.cpp | 24 +-- Marlin/src/lcd/marlinui.h | 11 +- Marlin/src/module/settings.cpp | 213 +++++++++++++++++------ Marlin/src/module/settings.h | 19 +- 19 files changed, 210 insertions(+), 101 deletions(-) diff --git a/Marlin/src/core/language.h b/Marlin/src/core/language.h index 388e7cd820e1..521fcfca3ec9 100644 --- a/Marlin/src/core/language.h +++ b/Marlin/src/core/language.h @@ -193,6 +193,7 @@ #define STR_ERR_LONG_EXTRUDE_STOP " too long extrusion prevented" #define STR_ERR_HOTEND_TOO_COLD "Hotend too cold" #define STR_ERR_EEPROM_WRITE "Error writing to EEPROM!" +#define STR_ERR_EEPROM_CORRUPT "EEPROM Corrupt" #define STR_FILAMENT_CHANGE_HEAT_LCD "Press button to heat nozzle" #define STR_FILAMENT_CHANGE_INSERT_LCD "Insert filament and press button" diff --git a/Marlin/src/lcd/language/language_de.h b/Marlin/src/lcd/language/language_de.h index 534d49ade9e9..359afd8ad2ae 100644 --- a/Marlin/src/lcd/language/language_de.h +++ b/Marlin/src/lcd/language/language_de.h @@ -414,7 +414,7 @@ namespace Language_de { LSTR MSG_RESTORE_DEFAULTS = _UxGT("Standardwerte laden"); LSTR MSG_INIT_EEPROM = _UxGT("Werkseinstellungen"); LSTR MSG_ERR_EEPROM_CRC = _UxGT("EEPROM CRC Fehler"); - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("EEPROM Index Fehler"); + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("EEPROM Größe Fehler"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("EEPROM Version Fehler"); LSTR MSG_SETTINGS_STORED = _UxGT("Einstell. gespei."); LSTR MSG_MEDIA_UPDATE = _UxGT("FW Update vom Medium"); diff --git a/Marlin/src/lcd/language/language_en.h b/Marlin/src/lcd/language/language_en.h index bc97407fc22b..568ad49df0b1 100644 --- a/Marlin/src/lcd/language/language_en.h +++ b/Marlin/src/lcd/language/language_en.h @@ -457,9 +457,10 @@ namespace Language_en { LSTR MSG_LOAD_EEPROM = _UxGT("Load Settings"); LSTR MSG_RESTORE_DEFAULTS = _UxGT("Restore Defaults"); LSTR MSG_INIT_EEPROM = _UxGT("Initialize EEPROM"); - LSTR MSG_ERR_EEPROM_CRC = _UxGT("EEPROM CRC Error"); - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("EEPROM Index Error"); - LSTR MSG_ERR_EEPROM_VERSION = _UxGT("EEPROM Version Error"); + LSTR MSG_ERR_EEPROM_CRC = _UxGT("Err: EEPROM CRC"); + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Err: EEPROM Size"); + LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Err: EEPROM Version"); + LSTR MSG_ERR_EEPROM_CORRUPT = _UxGT("Err: EEPROM Corrupt"); LSTR MSG_SETTINGS_STORED = _UxGT("Settings Stored"); LSTR MSG_MEDIA_UPDATE = MEDIA_TYPE_EN _UxGT(" Update"); LSTR MSG_RESET_PRINTER = _UxGT("Reset Printer"); diff --git a/Marlin/src/lcd/language/language_es.h b/Marlin/src/lcd/language/language_es.h index f3d6fc577d51..b2e5af70f526 100644 --- a/Marlin/src/lcd/language/language_es.h +++ b/Marlin/src/lcd/language/language_es.h @@ -315,7 +315,7 @@ namespace Language_es { LSTR MSG_RESTORE_DEFAULTS = _UxGT("Rest. fábrica"); LSTR MSG_INIT_EEPROM = _UxGT("Inicializar EEPROM"); LSTR MSG_ERR_EEPROM_CRC = _UxGT("Err: EEPROM CRC"); - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("Err: Índice EEPROM"); + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Err: EEPROM Tamaño"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Err: Versión EEPROM"); LSTR MSG_MEDIA_UPDATE = _UxGT("Actualizar SD/FD"); LSTR MSG_RESET_PRINTER = _UxGT("Resetear Impresora"); diff --git a/Marlin/src/lcd/language/language_gl.h b/Marlin/src/lcd/language/language_gl.h index 83855dd56d8a..fcdee2405c41 100644 --- a/Marlin/src/lcd/language/language_gl.h +++ b/Marlin/src/lcd/language/language_gl.h @@ -317,7 +317,7 @@ namespace Language_gl { LSTR MSG_RESTORE_DEFAULTS = _UxGT("Rest. Defecto"); LSTR MSG_INIT_EEPROM = _UxGT("Inicializar EEPROM"); LSTR MSG_ERR_EEPROM_CRC = _UxGT("Erro: CRC EEPROM"); - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("Erro: Índice EEPROM"); + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Erro: Tamaño EEPROM"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Erro: Versión EEPROM"); LSTR MSG_SETTINGS_STORED = _UxGT("Config Gardada"); LSTR MSG_MEDIA_UPDATE = _UxGT("Actualizar SD/FD"); diff --git a/Marlin/src/lcd/language/language_hu.h b/Marlin/src/lcd/language/language_hu.h index 99062ca5c342..8a6f66f9941a 100644 --- a/Marlin/src/lcd/language/language_hu.h +++ b/Marlin/src/lcd/language/language_hu.h @@ -363,7 +363,7 @@ namespace Language_hu { LSTR MSG_RESTORE_DEFAULTS = _UxGT("Alapértelmezett"); LSTR MSG_INIT_EEPROM = _UxGT("EEPROM inicializálás"); LSTR MSG_ERR_EEPROM_CRC = _UxGT("Hiba: EEPROM CRC"); - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("Hiba: EEPROM index"); + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Hiba: EEPROM mérete"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Hiba: EEPROM verzió"); LSTR MSG_SETTINGS_STORED = _UxGT("Beállítások mentve"); LSTR MSG_MEDIA_UPDATE = _UxGT("Tároló frissítés"); diff --git a/Marlin/src/lcd/language/language_it.h b/Marlin/src/lcd/language/language_it.h index bd0d2f22576a..96c1499f558e 100644 --- a/Marlin/src/lcd/language/language_it.h +++ b/Marlin/src/lcd/language/language_it.h @@ -451,7 +451,7 @@ namespace Language_it { LSTR MSG_RESTORE_DEFAULTS = _UxGT("Ripristina imp."); LSTR MSG_INIT_EEPROM = _UxGT("Inizializza EEPROM"); LSTR MSG_ERR_EEPROM_CRC = _UxGT("Err: CRC EEPROM"); - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("Err: Indice EEPROM"); + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Err: Taglia EEPROM"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Err: Versione EEPROM"); LSTR MSG_SETTINGS_STORED = _UxGT("Impostazioni mem."); LSTR MSG_MEDIA_UPDATE = _UxGT("Aggiorna media"); diff --git a/Marlin/src/lcd/language/language_ro.h b/Marlin/src/lcd/language/language_ro.h index 327ba7ad814a..75f27c1ecf9b 100644 --- a/Marlin/src/lcd/language/language_ro.h +++ b/Marlin/src/lcd/language/language_ro.h @@ -317,9 +317,9 @@ namespace Language_ro { LSTR MSG_LOAD_EEPROM = _UxGT("Load Settings"); LSTR MSG_RESTORE_DEFAULTS = _UxGT("Restore Defaults"); LSTR MSG_INIT_EEPROM = _UxGT("Initialize EEPROM"); - LSTR MSG_ERR_EEPROM_CRC = _UxGT("EEPROM CRC Error"); - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("EEPROM Index Error"); - LSTR MSG_ERR_EEPROM_VERSION = _UxGT("EEPROM Version Error"); + LSTR MSG_ERR_EEPROM_CRC = _UxGT("Err: EEPROM CRC"); + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Err: Mărimea EEPROM"); + LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Err: Versiunea EEPROM"); LSTR MSG_SETTINGS_STORED = _UxGT("Settings Stored"); LSTR MSG_MEDIA_UPDATE = _UxGT("Media Update"); LSTR MSG_RESET_PRINTER = _UxGT("Reset Imprimanta"); diff --git a/Marlin/src/lcd/language/language_ru.h b/Marlin/src/lcd/language/language_ru.h index b5815be1bd2e..25f62173f350 100644 --- a/Marlin/src/lcd/language/language_ru.h +++ b/Marlin/src/lcd/language/language_ru.h @@ -452,7 +452,7 @@ namespace Language_ru { LSTR MSG_INIT_EEPROM = _UxGT("Инициализ. EEPROM"); #endif LSTR MSG_ERR_EEPROM_CRC = _UxGT("Сбой EEPROM: CRC"); - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("Сбой EEPROM: индекс"); + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Сбой EEPROM: размер"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Сбой EEPROM: версия"); LSTR MSG_SETTINGS_STORED = _UxGT("Параметры сохранены"); LSTR MSG_MEDIA_UPDATE = _UxGT("Обновление прошивки"); diff --git a/Marlin/src/lcd/language/language_sk.h b/Marlin/src/lcd/language/language_sk.h index 907b865bd9e6..572e7fe9eaf8 100644 --- a/Marlin/src/lcd/language/language_sk.h +++ b/Marlin/src/lcd/language/language_sk.h @@ -452,7 +452,7 @@ namespace Language_sk { LSTR MSG_RESTORE_DEFAULTS = _UxGT("Obnoviť nastavenie"); LSTR MSG_INIT_EEPROM = _UxGT("Inicializ. EEPROM"); LSTR MSG_ERR_EEPROM_CRC = _UxGT("Chyba: EEPROM CRC"); - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("Chyba: EEPROM Index"); + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Chyba: Veľkosť EEPROM"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Chyba: Verzia EEPROM"); LSTR MSG_SETTINGS_STORED = _UxGT("Nastavenie uložené"); LSTR MSG_MEDIA_UPDATE = _UxGT("Aktualiz. z karty"); diff --git a/Marlin/src/lcd/language/language_sv.h b/Marlin/src/lcd/language/language_sv.h index 570bc3df8dab..d264c1e6e289 100644 --- a/Marlin/src/lcd/language/language_sv.h +++ b/Marlin/src/lcd/language/language_sv.h @@ -348,7 +348,7 @@ namespace Language_sv { LSTR MSG_RESTORE_DEFAULTS = _UxGT("Återställ Standard"); LSTR MSG_INIT_EEPROM = _UxGT("Initiera EEPROM"); LSTR MSG_ERR_EEPROM_CRC = _UxGT("EEPROM CRC Fel"); - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("EEPROM Index Fel"); + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("EEPROM Storlek Fel"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("EEPROM Version Fel"); LSTR MSG_SETTINGS_STORED = _UxGT("Inställningar Lagrad"); LSTR MSG_MEDIA_UPDATE = _UxGT("Media Uppdatera"); diff --git a/Marlin/src/lcd/language/language_tr.h b/Marlin/src/lcd/language/language_tr.h index 105413723032..5fc78758d4f1 100644 --- a/Marlin/src/lcd/language/language_tr.h +++ b/Marlin/src/lcd/language/language_tr.h @@ -431,7 +431,7 @@ namespace Language_tr { LSTR MSG_RESTORE_DEFAULTS = _UxGT("Fabrika Ayarları"); LSTR MSG_INIT_EEPROM = _UxGT("EEPROM'u başlat"); LSTR MSG_ERR_EEPROM_CRC = _UxGT("Hata: EEPROM CRC"); - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("Hata: EEPROM Indeks"); + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Hata: EEPROM Boyutu"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Hata: EEPROM Sürümü"); LSTR MSG_SETTINGS_STORED = _UxGT("Ayarlar Kaydedildi"); LSTR MSG_MEDIA_UPDATE = _UxGT("SD Güncellemesi"); diff --git a/Marlin/src/lcd/language/language_uk.h b/Marlin/src/lcd/language/language_uk.h index 4ee32fe4bc6a..3a644a0b34c9 100644 --- a/Marlin/src/lcd/language/language_uk.h +++ b/Marlin/src/lcd/language/language_uk.h @@ -465,7 +465,7 @@ namespace Language_uk { LSTR MSG_INIT_EEPROM = _UxGT("Ініціаліз. EEPROM"); #endif LSTR MSG_ERR_EEPROM_CRC = _UxGT("Збій EEPROM: CRC"); - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("Збій EEPROM: індекс"); + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Збій EEPROM: розмір"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Збій EEPROM: версія"); LSTR MSG_SETTINGS_STORED = _UxGT("Параметри збережені"); LSTR MSG_MEDIA_UPDATE = _UxGT("Оновити SD-картку"); diff --git a/Marlin/src/lcd/language/language_zh_CN.h b/Marlin/src/lcd/language/language_zh_CN.h index 27f2a597c6df..7acd0d8e8f49 100644 --- a/Marlin/src/lcd/language/language_zh_CN.h +++ b/Marlin/src/lcd/language/language_zh_CN.h @@ -317,9 +317,9 @@ namespace Language_zh_CN { LSTR MSG_LOAD_EEPROM = _UxGT("装载设置"); // "Load memory" LSTR MSG_RESTORE_DEFAULTS = _UxGT("恢复安全值"); // "Restore Defaults" LSTR MSG_INIT_EEPROM = _UxGT("初始化设置"); // "Initialize EEPROM" - LSTR MSG_ERR_EEPROM_CRC = _UxGT("EEPROM CRC 错误"); - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("EEPROM Index 错误"); - LSTR MSG_ERR_EEPROM_VERSION = _UxGT("EEPROM Version 错误"); + LSTR MSG_ERR_EEPROM_CRC = _UxGT("EEPROM 校验和 错误"); + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("EEPROM 尺寸 错误"); + LSTR MSG_ERR_EEPROM_VERSION = _UxGT("EEPROM 版本 错误"); LSTR MSG_SETTINGS_STORED = _UxGT("设置已保存"); LSTR MSG_MEDIA_UPDATE = _UxGT("存储器更新"); LSTR MSG_RESET_PRINTER = _UxGT("复位打印机"); diff --git a/Marlin/src/lcd/language/language_zh_TW.h b/Marlin/src/lcd/language/language_zh_TW.h index 570dc292c587..9365225cae85 100644 --- a/Marlin/src/lcd/language/language_zh_TW.h +++ b/Marlin/src/lcd/language/language_zh_TW.h @@ -299,8 +299,8 @@ namespace Language_zh_TW { LSTR MSG_RESTORE_DEFAULTS = _UxGT("恢復安全值"); // "Restore failsafe" LSTR MSG_INIT_EEPROM = _UxGT("初始化設置"); // "Initialize EEPROM" LSTR MSG_ERR_EEPROM_CRC = _UxGT("錯誤: EEPROM CRC"); // "Err: EEPROM CRC" - LSTR MSG_ERR_EEPROM_INDEX = _UxGT("錯誤: EEPROM Index"); // "Err: EEPROM Index" - LSTR MSG_ERR_EEPROM_VERSION = _UxGT("錯誤: EEPROM Version"); // "EEPROM Version" + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("錯誤: EEPROM 尺寸"); // "Err: EEPROM Index" + LSTR MSG_ERR_EEPROM_VERSION = _UxGT("錯誤: EEPROM 版本"); // "EEPROM Version" LSTR MSG_MEDIA_UPDATE = _UxGT("媒體更新"); // "Media Update" LSTR MSG_RESET_PRINTER = _UxGT("重置打印機"); // "Reset Printer LSTR MSG_REFRESH = _UxGT("刷新"); // "Refresh" diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index e8956ab9e150..1c4bbe5fa93b 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -1913,18 +1913,22 @@ void MarlinUI::init() { #if DISABLED(EEPROM_AUTO_INIT) - static inline FSTR_P eeprom_err(const uint8_t msgid) { - switch (msgid) { - default: - case 0: return GET_TEXT_F(MSG_ERR_EEPROM_CRC); - case 1: return GET_TEXT_F(MSG_ERR_EEPROM_INDEX); - case 2: return GET_TEXT_F(MSG_ERR_EEPROM_VERSION); + static inline FSTR_P eeprom_err(const EEPROM_Error err) { + switch (err) { + case ERR_EEPROM_VERSION: return GET_TEXT_F(MSG_ERR_EEPROM_VERSION); + case ERR_EEPROM_SIZE: return GET_TEXT_F(MSG_ERR_EEPROM_SIZE); + case ERR_EEPROM_CRC: return GET_TEXT_F(MSG_ERR_EEPROM_CRC); + case ERR_EEPROM_CORRUPT: return GET_TEXT_F(MSG_ERR_EEPROM_CORRUPT); + default: return nullptr; } } - void MarlinUI::eeprom_alert(const uint8_t msgid) { + void MarlinUI::eeprom_alert(const EEPROM_Error err) { + FSTR_P const err_msg = eeprom_err(err); + set_status(err_msg); + TERN_(HOST_PROMPT_SUPPORT, hostui.notify(err_msg)); #if HAS_MARLINUI_MENU - editable.uint8 = msgid; + editable.uint8 = err; goto_screen([]{ FSTR_P const restore_msg = GET_TEXT_F(MSG_INIT_EEPROM); char msg[utf8_strlen(restore_msg) + 1]; @@ -1932,11 +1936,9 @@ void MarlinUI::init() { MenuItem_confirm::select_screen( GET_TEXT_F(MSG_BUTTON_RESET), GET_TEXT_F(MSG_BUTTON_IGNORE), init_eeprom, return_to_status, - eeprom_err(editable.uint8), msg, F("?") + eeprom_err((EEPROM_Error)editable.uint8), msg, F("?") ); }); - #else - set_status(eeprom_err(msgid)); #endif } diff --git a/Marlin/src/lcd/marlinui.h b/Marlin/src/lcd/marlinui.h index 9c5e192fb270..ccdbd6432280 100644 --- a/Marlin/src/lcd/marlinui.h +++ b/Marlin/src/lcd/marlinui.h @@ -27,6 +27,10 @@ #include "../libs/buzzer.h" #include "buttons.h" +#if ENABLED(EEPROM_SETTINGS) + #include "../module/settings.h" +#endif + #if ENABLED(TOUCH_SCREEN_CALIBRATION) #include "tft_io/touch_calibration.h" #endif @@ -674,12 +678,7 @@ class MarlinUI { static void load_settings(); static void store_settings(); #endif - #if DISABLED(EEPROM_AUTO_INIT) - static void eeprom_alert(const uint8_t msgid); - static void eeprom_alert_crc() { eeprom_alert(0); } - static void eeprom_alert_index() { eeprom_alert(1); } - static void eeprom_alert_version() { eeprom_alert(2); } - #endif + static void eeprom_alert(const EEPROM_Error) TERN_(EEPROM_AUTO_INIT, {}); #endif // diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index 58e00b7fb0e8..28eee57c086f 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -36,12 +36,13 @@ */ // Change EEPROM version if the structure changes -#define EEPROM_VERSION "V87" +#define EEPROM_VERSION "V88" #define EEPROM_OFFSET 100 // Check the integrity of data offsets. // Can be disabled for production build. //#define DEBUG_EEPROM_READWRITE +//#define DEBUG_EEPROM_OBSERVE #include "settings.h" @@ -211,7 +212,8 @@ typedef struct SettingsDataStruct { #if ENABLED(EEPROM_INIT_NOW) uint32_t build_hash; // Unique build hash #endif - uint16_t crc; // Data Checksum + uint16_t crc; // Data Checksum for validation + uint16_t data_size; // Data Size for validation // // DISTINCT_E_FACTORS @@ -264,6 +266,7 @@ typedef struct SettingsDataStruct { // float mbl_z_offset; // bedlevel.z_offset uint8_t mesh_num_x, mesh_num_y; // GRID_MAX_POINTS_X, GRID_MAX_POINTS_Y + uint16_t mesh_check; // Hash to check against X/Y float mbl_z_values[TERN(MESH_BED_LEVELING, GRID_MAX_POINTS_X, 3)] // bedlevel.z_values [TERN(MESH_BED_LEVELING, GRID_MAX_POINTS_Y, 3)]; @@ -283,6 +286,7 @@ typedef struct SettingsDataStruct { // AUTO_BED_LEVELING_BILINEAR // uint8_t grid_max_x, grid_max_y; // GRID_MAX_POINTS_X, GRID_MAX_POINTS_Y + uint16_t grid_check; // Hash to check against X/Y xy_pos_t bilinear_grid_spacing, bilinear_start; // G29 L F #if ENABLED(AUTO_BED_LEVELING_BILINEAR) bed_mesh_t z_values; // G29 @@ -744,10 +748,13 @@ void MarlinSettings::postprocess() { #if ENABLED(EEPROM_SETTINGS) - #define EEPROM_ASSERT(TST,ERR) do{ if (!(TST)) { SERIAL_ERROR_MSG(ERR); eeprom_error = true; } }while(0) + #define EEPROM_ASSERT(TST,ERR) do{ if (!(TST)) { SERIAL_ERROR_MSG(ERR); eeprom_error = ERR_EEPROM_SIZE; } }while(0) + + #define TWO_BYTE_HASH(A,B) uint16_t((uint16_t(A ^ 0xC3) << 4) ^ (uint16_t(B ^ 0xC3) << 12)) #if ENABLED(DEBUG_EEPROM_READWRITE) #define _FIELD_TEST(FIELD) \ + SERIAL_ECHOLNPGM("Field: " STRINGIFY(FIELD)); \ EEPROM_ASSERT( \ eeprom_error || eeprom_index == offsetof(SettingsData, FIELD) + EEPROM_OFFSET, \ "Field " STRINGIFY(FIELD) " mismatch." \ @@ -756,6 +763,14 @@ void MarlinSettings::postprocess() { #define _FIELD_TEST(FIELD) NOOP #endif + #if ENABLED(DEBUG_EEPROM_OBSERVE) + #define EEPROM_READ(V...) do{ SERIAL_ECHOLNPGM("READ: ", F(STRINGIFY(FIRST(V)))); EEPROM_READ_(V); }while(0) + #define EEPROM_READ_ALWAYS(V...) do{ SERIAL_ECHOLNPGM("READ: ", F(STRINGIFY(FIRST(V)))); EEPROM_READ_ALWAYS_(V); }while(0) + #else + #define EEPROM_READ(V...) EEPROM_READ_(V) + #define EEPROM_READ_ALWAYS(V...) EEPROM_READ_ALWAYS_(V) + #endif + const char version[4] = EEPROM_VERSION; #if ENABLED(EEPROM_INIT_NOW) @@ -765,20 +780,20 @@ void MarlinSettings::postprocess() { constexpr uint32_t build_hash = strhash32(__DATE__ __TIME__); #endif - bool MarlinSettings::eeprom_error, MarlinSettings::validating; + bool MarlinSettings::validating; int MarlinSettings::eeprom_index; uint16_t MarlinSettings::working_crc; - bool MarlinSettings::size_error(const uint16_t size) { + EEPROM_Error MarlinSettings::size_error(const uint16_t size) { if (size != datasize()) { DEBUG_ERROR_MSG("EEPROM datasize error." #if ENABLED(MARLIN_DEV_MODE) " (Actual:", size, " Expected:", datasize(), ")" #endif ); - return true; + return ERR_EEPROM_SIZE; } - return false; + return ERR_EEPROM_NOERR; } /** @@ -790,18 +805,25 @@ void MarlinSettings::postprocess() { if (!EEPROM_START(EEPROM_OFFSET)) return false; - eeprom_error = false; + EEPROM_Error eeprom_error = ERR_EEPROM_NOERR; // Write or Skip version. (Flash doesn't allow rewrite without erase.) TERN(FLASH_EEPROM_EMULATION, EEPROM_SKIP, EEPROM_WRITE)(ver); #if ENABLED(EEPROM_INIT_NOW) - EEPROM_SKIP(build_hash); // Skip the hash slot + EEPROM_SKIP(build_hash); // Skip the hash slot which will be written later #endif EEPROM_SKIP(working_crc); // Skip the checksum slot - working_crc = 0; // clear before first "real data" + // + // Clear after skipping CRC and before writing the CRC'ed data + // + working_crc = 0; + + // Write the size of the data structure for use in validation + const uint16_t data_size = datasize(); + EEPROM_WRITE(data_size); const uint8_t e_factors = DISTINCT_AXES - (NUM_AXES); _FIELD_TEST(e_factors); @@ -915,6 +937,10 @@ void MarlinSettings::postprocess() { EEPROM_WRITE(mesh_num_x); EEPROM_WRITE(mesh_num_y); + // Check value for the X/Y values + const uint16_t mesh_check = TWO_BYTE_HASH(mesh_num_x, mesh_num_y); + EEPROM_WRITE(mesh_check); + #if ENABLED(MESH_BED_LEVELING) EEPROM_WRITE(bedlevel.z_values); #else @@ -964,6 +990,11 @@ void MarlinSettings::postprocess() { grid_max_y = TERN(AUTO_BED_LEVELING_BILINEAR, GRID_MAX_POINTS_Y, 3); EEPROM_WRITE(grid_max_x); EEPROM_WRITE(grid_max_y); + + // Check value for the X/Y values + const uint16_t grid_check = TWO_BYTE_HASH(grid_max_x, grid_max_y); + EEPROM_WRITE(grid_check); + #if ENABLED(AUTO_BED_LEVELING_BILINEAR) EEPROM_WRITE(bedlevel.grid_spacing); EEPROM_WRITE(bedlevel.grid_start); @@ -1684,7 +1715,7 @@ void MarlinSettings::postprocess() { // // Report final CRC and Data Size // - if (!eeprom_error) { + if (eeprom_error == ERR_EEPROM_NOERR) { const uint16_t eeprom_size = eeprom_index - (EEPROM_OFFSET), final_crc = working_crc; @@ -1700,7 +1731,7 @@ void MarlinSettings::postprocess() { // Report storage size DEBUG_ECHO_MSG("Settings Stored (", eeprom_size, " bytes; crc ", (uint32_t)final_crc, ")"); - eeprom_error |= size_error(eeprom_size); + eeprom_error = size_error(eeprom_size); } EEPROM_FINISH(); @@ -1712,56 +1743,82 @@ void MarlinSettings::postprocess() { store_mesh(bedlevel.storage_slot); #endif - if (!eeprom_error) { + const bool success = (eeprom_error == ERR_EEPROM_NOERR); + if (success) { LCD_MESSAGE(MSG_SETTINGS_STORED); TERN_(HOST_PROMPT_SUPPORT, hostui.notify(GET_TEXT_F(MSG_SETTINGS_STORED))); } - TERN_(EXTENSIBLE_UI, ExtUI::onSettingsStored(!eeprom_error)); + TERN_(EXTENSIBLE_UI, ExtUI::onSettingsStored(success)); - return !eeprom_error; + return success; } /** * M501 - Retrieve Configuration */ - bool MarlinSettings::_load() { - if (!EEPROM_START(EEPROM_OFFSET)) return false; + EEPROM_Error MarlinSettings::_load() { + EEPROM_Error eeprom_error = ERR_EEPROM_NOERR; + + if (!EEPROM_START(EEPROM_OFFSET)) return eeprom_error; char stored_ver[4]; EEPROM_READ_ALWAYS(stored_ver); - // Version has to match or defaults are used - if (strncmp(version, stored_ver, 3) != 0) { - if (stored_ver[3] != '\0') { - stored_ver[0] = '?'; - stored_ver[1] = '\0'; - } - DEBUG_ECHO_MSG("EEPROM version mismatch (EEPROM=", stored_ver, " Marlin=" EEPROM_VERSION ")"); - LCD_MESSAGE(MSG_ERR_EEPROM_VERSION); - TERN_(HOST_PROMPT_SUPPORT, hostui.notify(GET_TEXT_F(MSG_ERR_EEPROM_VERSION))); + uint16_t stored_crc; - IF_DISABLED(EEPROM_AUTO_INIT, ui.eeprom_alert_version()); - eeprom_error = true; - } - else { + do { // A block to break out of on error + + // Version has to match or defaults are used + if (strncmp(version, stored_ver, 3) != 0) { + if (stored_ver[3] != '\0') { + stored_ver[0] = '?'; + stored_ver[1] = '\0'; + } + DEBUG_ECHO_MSG("EEPROM version mismatch (EEPROM=", stored_ver, " Marlin=" EEPROM_VERSION ")"); + eeprom_error = ERR_EEPROM_VERSION; + break; + } - // Optionally reset on the first boot after flashing + // + // Optionally reset on first boot after flashing + // #if ENABLED(EEPROM_INIT_NOW) uint32_t stored_hash; EEPROM_READ_ALWAYS(stored_hash); - if (stored_hash != build_hash) { EEPROM_FINISH(); return false; } + if (stored_hash != build_hash) { + eeprom_error = ERR_EEPROM_CORRUPT; + break; + } #endif - uint16_t stored_crc; + // + // Get the stored CRC to compare at the end + // EEPROM_READ_ALWAYS(stored_crc); + // + // A temporary float for safe storage + // float dummyf = 0; - working_crc = 0; // Init to 0. Accumulated by EEPROM_READ - _FIELD_TEST(e_factors); + // + // Init to 0. Accumulated by EEPROM_READ + // + working_crc = 0; + // + // Validate the stored size against the current data structure size + // + uint16_t stored_size; + EEPROM_READ_ALWAYS(stored_size); + if ((eeprom_error = size_error(stored_size))) break; + + // + // Extruder Parameter Count // Number of e_factors may change + // + _FIELD_TEST(e_factors); uint8_t e_factors; EEPROM_READ_ALWAYS(e_factors); @@ -1872,16 +1929,28 @@ void MarlinSettings::postprocess() { // { uint8_t mesh_num_x, mesh_num_y; + uint16_t mesh_check; EEPROM_READ(dummyf); EEPROM_READ_ALWAYS(mesh_num_x); EEPROM_READ_ALWAYS(mesh_num_y); + // Check value must correspond to the X/Y values + EEPROM_READ_ALWAYS(mesh_check); + if (mesh_check != TWO_BYTE_HASH(mesh_num_x, mesh_num_y)) { + eeprom_error = ERR_EEPROM_CORRUPT; + break; + } + #if ENABLED(MESH_BED_LEVELING) if (!validating) bedlevel.z_offset = dummyf; if (mesh_num_x == (GRID_MAX_POINTS_X) && mesh_num_y == (GRID_MAX_POINTS_Y)) { // EEPROM data fits the current mesh EEPROM_READ(bedlevel.z_values); } + else if (mesh_num_x > (GRID_MAX_POINTS_X) || mesh_num_y > (GRID_MAX_POINTS_Y)) { + eeprom_error = ERR_EEPROM_CORRUPT; + break; + } else { // EEPROM data is stale if (!validating) bedlevel.reset(); @@ -1926,6 +1995,15 @@ void MarlinSettings::postprocess() { uint8_t grid_max_x, grid_max_y; EEPROM_READ_ALWAYS(grid_max_x); // 1 byte EEPROM_READ_ALWAYS(grid_max_y); // 1 byte + + // Check value must correspond to the X/Y values + uint16_t grid_check; + EEPROM_READ_ALWAYS(grid_check); + if (grid_check != TWO_BYTE_HASH(grid_max_x, grid_max_y)) { + eeprom_error = ERR_EEPROM_CORRUPT; + break; + } + xy_pos_t spacing, start; EEPROM_READ(spacing); // 2 ints EEPROM_READ(start); // 2 ints @@ -1935,6 +2013,10 @@ void MarlinSettings::postprocess() { bedlevel.set_grid(spacing, start); EEPROM_READ(bedlevel.z_values); // 9 to 256 floats } + else if (grid_max_x > (GRID_MAX_POINTS_X) || grid_max_y > (GRID_MAX_POINTS_Y)) { + eeprom_error = ERR_EEPROM_CORRUPT; + break; + } else // EEPROM data is stale #endif // AUTO_BED_LEVELING_BILINEAR { @@ -2700,27 +2782,22 @@ void MarlinSettings::postprocess() { // // Validate Final Size and CRC // - eeprom_error = size_error(eeprom_index - (EEPROM_OFFSET)); - if (eeprom_error) { - DEBUG_ECHO_MSG("Index: ", eeprom_index - (EEPROM_OFFSET), " Size: ", datasize()); - IF_DISABLED(EEPROM_AUTO_INIT, ui.eeprom_alert_index()); + const uint16_t eeprom_total = eeprom_index - (EEPROM_OFFSET); + if ((eeprom_error = size_error(eeprom_total))) { + // Handle below and on return + break; } else if (working_crc != stored_crc) { - eeprom_error = true; - DEBUG_ERROR_MSG("EEPROM CRC mismatch - (stored) ", stored_crc, " != ", working_crc, " (calculated)!"); - LCD_MESSAGE(MSG_ERR_EEPROM_CRC); - TERN_(HOST_EEPROM_CHITCHAT, hostui.notify(GET_TEXT_F(MSG_ERR_EEPROM_CRC))); - IF_DISABLED(EEPROM_AUTO_INIT, ui.eeprom_alert_crc()); + eeprom_error = ERR_EEPROM_CRC; + break; } else if (!validating) { DEBUG_ECHO_START(); DEBUG_ECHO(version); - DEBUG_ECHOLNPGM(" stored settings retrieved (", eeprom_index - (EEPROM_OFFSET), " bytes; crc ", (uint32_t)working_crc, ")"); + DEBUG_ECHOLNPGM(" stored settings retrieved (", eeprom_total, " bytes; crc ", working_crc, ")"); TERN_(HOST_EEPROM_CHITCHAT, hostui.notify(F("Stored settings retrieved"))); } - if (!validating && !eeprom_error) postprocess(); - #if ENABLED(AUTO_BED_LEVELING_UBL) if (!validating) { bedlevel.report_state(); @@ -2732,7 +2809,7 @@ void MarlinSettings::postprocess() { #endif } else { - eeprom_error = true; + eeprom_error = ERR_EEPROM_CORRUPT; #if BOTH(EEPROM_CHITCHAT, DEBUG_LEVELING_FEATURE) DEBUG_ECHOPGM("?Can't enable "); bedlevel.echo_name(); @@ -2751,6 +2828,26 @@ void MarlinSettings::postprocess() { } } #endif + + } while(0); + + EEPROM_FINISH(); + + switch (eeprom_error) { + case ERR_EEPROM_NOERR: + if (!validating) postprocess(); + break; + case ERR_EEPROM_SIZE: + DEBUG_ECHO_MSG("Index: ", eeprom_index - (EEPROM_OFFSET), " Size: ", datasize()); + break; + case ERR_EEPROM_CORRUPT: + DEBUG_ERROR_MSG(STR_ERR_EEPROM_CORRUPT); + break; + case ERR_EEPROM_CRC: + DEBUG_ERROR_MSG("EEPROM CRC mismatch - (stored) ", stored_crc, " != ", working_crc, " (calculated)!"); + TERN_(HOST_EEPROM_CHITCHAT, hostui.notify(GET_TEXT_F(MSG_ERR_EEPROM_CRC))); + break; + default: break; } #if ENABLED(EEPROM_CHITCHAT) && DISABLED(DISABLE_M503) @@ -2758,9 +2855,7 @@ void MarlinSettings::postprocess() { if (!validating && TERN1(EEPROM_BOOT_SILENT, IsRunning())) report(); #endif - EEPROM_FINISH(); - - return !eeprom_error; + return eeprom_error; } #ifdef ARCHIM2_SPI_FLASH_EEPROM_BACKUP_SIZE @@ -2770,21 +2865,25 @@ void MarlinSettings::postprocess() { bool MarlinSettings::validate() { validating = true; #ifdef ARCHIM2_SPI_FLASH_EEPROM_BACKUP_SIZE - bool success = _load(); - if (!success && restoreEEPROM()) { + EEPROM_Error err = _load(); + if (err != ERR_EEPROM_NOERR && restoreEEPROM()) { SERIAL_ECHOLNPGM("Recovered backup EEPROM settings from SPI Flash"); - success = _load(); + err = _load(); } #else - const bool success = _load(); + const EEPROM_Error err = _load(); #endif validating = false; - return success; + + if (err) ui.eeprom_alert(err); + + return (err == ERR_EEPROM_NOERR); } bool MarlinSettings::load() { if (validate()) { - const bool success = _load(); + const EEPROM_Error err = _load(); + const bool success = (err == ERR_EEPROM_NOERR); TERN_(EXTENSIBLE_UI, ExtUI::onSettingsLoaded(success)); return success; } diff --git a/Marlin/src/module/settings.h b/Marlin/src/module/settings.h index a8fca60baa12..b7c5210db5b2 100644 --- a/Marlin/src/module/settings.h +++ b/Marlin/src/module/settings.h @@ -29,6 +29,13 @@ #if ENABLED(EEPROM_SETTINGS) #include "../HAL/shared/eeprom_api.h" + enum EEPROM_Error : uint8_t { + ERR_EEPROM_NOERR, + ERR_EEPROM_VERSION, + ERR_EEPROM_SIZE, + ERR_EEPROM_CRC, + ERR_EEPROM_CORRUPT + }; #endif class MarlinSettings { @@ -98,7 +105,7 @@ class MarlinSettings { #if ENABLED(EEPROM_SETTINGS) - static bool eeprom_error, validating; + static bool validating; #if ENABLED(AUTO_BED_LEVELING_UBL) // Eventually make these available if any leveling system // That can store is enabled @@ -106,8 +113,8 @@ class MarlinSettings { // live at the very end of the eeprom #endif - static bool _load(); - static bool size_error(const uint16_t size); + static EEPROM_Error _load(); + static EEPROM_Error size_error(const uint16_t size); static int eeprom_index; static uint16_t working_crc; @@ -130,16 +137,16 @@ class MarlinSettings { } template - static void EEPROM_READ(T &VAR) { + static void EEPROM_READ_(T &VAR) { persistentStore.read_data(eeprom_index, (uint8_t *) &VAR, sizeof(VAR), &working_crc, !validating); } - static void EEPROM_READ(uint8_t *VAR, size_t sizeof_VAR) { + static void EEPROM_READ_(uint8_t *VAR, size_t sizeof_VAR) { persistentStore.read_data(eeprom_index, VAR, sizeof_VAR, &working_crc, !validating); } template - static void EEPROM_READ_ALWAYS(T &VAR) { + static void EEPROM_READ_ALWAYS_(T &VAR) { persistentStore.read_data(eeprom_index, (uint8_t *) &VAR, sizeof(VAR), &working_crc); } From 5ed307ceb807e745441da4c23888a6c7f53f934b Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 20 May 2023 04:28:33 -0500 Subject: [PATCH 201/427] =?UTF-8?q?=F0=9F=93=9D=20MKS=20TinyBee=20pins=20h?= =?UTF-8?q?eader?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/pins/esp32/pins_MKS_TINYBEE.h | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h b/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h index cfb682df5424..546fa82c0d9f 100644 --- a/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h +++ b/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h @@ -22,10 +22,8 @@ #pragma once /** - * MRR ESPE pin assignments - * MRR ESPE is a 3D printer control board based on the ESP32 microcontroller. - * Supports 5 stepper drivers (using I2S stepper stream), heated bed, - * single hotend, and LCD controller. + * MKS TinyBee pin assignments + * https://github.com/makerbase-mks/MKS-TinyBee */ #include "env_validate.h" From 06b1f85514d9e738fa19d406f7cbc2a6c7240429 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sun, 21 May 2023 00:23:00 +0000 Subject: [PATCH 202/427] [cron] Bump distribution date (2023-05-21) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 8ea8917f48dc..1986b74a024d 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-20" +//#define STRING_DISTRIBUTION_DATE "2023-05-21" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 8d6d94c44879..8c1880c6ff36 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-20" + #define STRING_DISTRIBUTION_DATE "2023-05-21" #endif /** From ea63ac8f4d2a5fc9d0501ebf979d115adcd42910 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 21 May 2023 08:38:42 -0500 Subject: [PATCH 203/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20TFT=20LVGL=20compi?= =?UTF-8?q?le=20error=20(#25865)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes regression from #24302 --- .github/workflows/test-builds.yml | 1 + Marlin/src/inc/SanityCheck.h | 6 +- .../extui/mks_ui/tft_lvgl_configuration.cpp | 5 +- Marlin/src/pins/gd32f1/pins_TRIGORILLA_V006.h | 2 +- Marlin/src/pins/linux/pins_RAMPS_LINUX.h | 8 +- .../src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h | 2 +- Marlin/src/pins/stm32f1/pins_CHITU3D_common.h | 16 ++-- Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h | 16 ++-- Marlin/src/pins/stm32f1/pins_FLY_MINI.h | 2 +- .../pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h | 2 +- Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h | 92 +++++++++---------- .../pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h | 2 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h | 6 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h | 8 +- .../pins/stm32f1/pins_MKS_ROBIN_E3_common.h | 2 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_LITE.h | 2 +- .../src/pins/stm32f1/pins_MKS_ROBIN_LITE3.h | 2 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h | 6 +- .../src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h | 8 +- .../pins/stm32f1/pins_MKS_ROBIN_NANO_common.h | 6 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h | 14 +-- Marlin/src/pins/stm32f1/pins_TRIGORILLA_PRO.h | 2 +- .../stm32f4/pins_MKS_ROBIN_NANO_V3_common.h | 11 +-- .../src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h | 14 +-- Marlin/src/pins/stm32f4/pins_TRONXY_V10.h | 4 +- .../PlatformIO/scripts/download_mks_assets.py | 4 +- buildroot/tests/mks_robin_pro2 | 20 ++++ 27 files changed, 144 insertions(+), 119 deletions(-) create mode 100755 buildroot/tests/mks_robin_pro2 diff --git a/.github/workflows/test-builds.yml b/.github/workflows/test-builds.yml index dea1a4e17616..7ebbcd006698 100644 --- a/.github/workflows/test-builds.yml +++ b/.github/workflows/test-builds.yml @@ -105,6 +105,7 @@ jobs: - FYSETC_S6 - LERDGEK - LERDGEX + - mks_robin_pro2 - Opulo_Lumen_REV3 - rumba32 - STM32F401RC_creality diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index f77bf7afeb7b..78630051b67d 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -2629,10 +2629,8 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #if ENABLED(TFT_GENERIC) && NONE(TFT_INTERFACE_FSMC, TFT_INTERFACE_SPI) #error "TFT_GENERIC requires either TFT_INTERFACE_FSMC or TFT_INTERFACE_SPI interface." -#endif - -#if BOTH(TFT_INTERFACE_FSMC, TFT_INTERFACE_SPI) - #error "Please enable only one of TFT_INTERFACE_SPI or TFT_INTERFACE_SPI." +#elif BOTH(TFT_INTERFACE_FSMC, TFT_INTERFACE_SPI) + #error "Please enable only one of TFT_INTERFACE_FSMC or TFT_INTERFACE_SPI." #endif #if defined(LCD_SCREEN_ROTATE) && LCD_SCREEN_ROTATE != 0 && LCD_SCREEN_ROTATE != 90 && LCD_SCREEN_ROTATE != 180 && LCD_SCREEN_ROTATE != 270 diff --git a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp index 94c3517e3a92..be4682f68f1b 100644 --- a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp +++ b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp @@ -138,7 +138,10 @@ void tft_lvgl_init() { uint16_t usb_flash_loop = 1000; #if ENABLED(MULTI_VOLUME) && !HAS_SD_HOST_DRIVE SET_INPUT_PULLUP(SD_DETECT_PIN); - card.changeMedia(IS_SD_INSERTED() ? &card.media_driver_sdcard : &card.media_driver_usbFlash); + if (IS_SD_INSERTED()) + card.changeMedia(&card.media_driver_sdcard); + else + card.changeMedia(&card.media_driver_usbFlash); #endif do { card.media_driver_usbFlash.idle(); diff --git a/Marlin/src/pins/gd32f1/pins_TRIGORILLA_V006.h b/Marlin/src/pins/gd32f1/pins_TRIGORILLA_V006.h index ee4376c50a9a..abdd35f05807 100644 --- a/Marlin/src/pins/gd32f1/pins_TRIGORILLA_V006.h +++ b/Marlin/src/pins/gd32f1/pins_TRIGORILLA_V006.h @@ -122,7 +122,7 @@ // // SPI // - #define SPI_DEVICE -1 + #define SPI_DEVICE -1 // Maple #define SCK_PIN -1 #define MISO_PIN -1 #define MOSI_PIN -1 diff --git a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h index 950eb8d88f07..4f32304dde9d 100644 --- a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h +++ b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h @@ -381,8 +381,8 @@ #define TFT_CS_PIN 49 #define TFT_DC_PIN 43 #define TFT_SCK_PIN SD_SCK_PIN - #define TFT_MOSI_PIN SD_MOSI_PIN #define TFT_MISO_PIN SD_MISO_PIN + #define TFT_MOSI_PIN SD_MOSI_PIN #define LCD_USE_DMA_SPI #define BTN_EN1 40 @@ -396,12 +396,12 @@ #define SPI_FLASH #if ENABLED(SPI_FLASH) - #define SPI_DEVICE 1 + #define SPI_DEVICE 1 // Maple #define SPI_FLASH_SIZE 0x1000000 // 16MB #define SPI_FLASH_CS_PIN 31 - #define SPI_FLASH_MOSI_PIN SD_MOSI_PIN - #define SPI_FLASH_MISO_PIN SD_MISO_PIN #define SPI_FLASH_SCK_PIN SD_SCK_PIN + #define SPI_FLASH_MISO_PIN SD_MISO_PIN + #define SPI_FLASH_MOSI_PIN SD_MOSI_PIN #endif #define TFT_BUFFER_SIZE 0xFFFF diff --git a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h index 44a98e5af70e..851eee8296b2 100644 --- a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h +++ b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h @@ -273,7 +273,7 @@ #endif #if SD_CONNECTION_IS(LCD) - #define SPI_DEVICE 3 + #define SPI_DEVICE 3 // Maple #define SD_DETECT_PIN EXP2_07_PIN #define SD_SCK_PIN EXP2_02_PIN #define SD_MISO_PIN EXP2_01_PIN diff --git a/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h b/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h index 22f78350cf65..7452562c83fa 100644 --- a/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h +++ b/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h @@ -113,18 +113,18 @@ #define FIL_RUNOUT_PIN PA15 // MT_DET #endif -// SPI Flash +// +// SPI Flash (SPI 2) +// #define SPI_FLASH #if ENABLED(SPI_FLASH) #define SPI_FLASH_SIZE 0x200000 // 2MB + #define SPI_FLASH_CS_PIN PB12 + #define SPI_FLASH_SCK_PIN PB13 + #define SPI_FLASH_MISO_PIN PB14 + #define SPI_FLASH_MOSI_PIN PB15 #endif -// SPI 2 -#define SPI_FLASH_CS_PIN PB12 -#define SPI_FLASH_MOSI_PIN PB15 -#define SPI_FLASH_MISO_PIN PB14 -#define SPI_FLASH_SCK_PIN PB13 - // // TFT with FSMC interface // @@ -160,7 +160,7 @@ // SPI1(PA7)=LCD & SPI3(PB5)=STUFF, are not available // so SPI2 is required. -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple #define SD_SCK_PIN PB13 #define SD_MISO_PIN PB14 #define SD_MOSI_PIN PB15 diff --git a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h index fd6609f0fc70..bdfe24cad010 100644 --- a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h +++ b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h @@ -60,22 +60,26 @@ // // SPI -// Note: FLSun Hispeed (clone MKS_Robin_miniV2) board is using SPI2 interface. +// +#define SPI_DEVICE 2 // Maple + +// +// SD Card SPI // #define SD_SCK_PIN PB13 // SPI2 #define SD_MISO_PIN PB14 // SPI2 #define SD_MOSI_PIN PB15 // SPI2 -#define SPI_DEVICE 2 +// // SPI Flash +// #define SPI_FLASH #if ENABLED(SPI_FLASH) - // SPI 2 + #define SPI_FLASH_SIZE 0x1000000 // 16MB #define SPI_FLASH_CS_PIN PB12 // SPI2_NSS / Flash chip-select - #define SPI_FLASH_MOSI_PIN PB15 - #define SPI_FLASH_MISO_PIN PB14 #define SPI_FLASH_SCK_PIN PB13 - #define SPI_FLASH_SIZE 0x1000000 // 16MB + #define SPI_FLASH_MISO_PIN PB14 + #define SPI_FLASH_MOSI_PIN PB15 #endif // diff --git a/Marlin/src/pins/stm32f1/pins_FLY_MINI.h b/Marlin/src/pins/stm32f1/pins_FLY_MINI.h index e723845a2ae6..f7ef25419fd1 100644 --- a/Marlin/src/pins/stm32f1/pins_FLY_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_FLY_MINI.h @@ -152,7 +152,7 @@ // #if HAS_WIRED_LCD - #define SPI_DEVICE 2 + #define SPI_DEVICE 2 // Maple #define SD_SS_PIN EXP2_04_PIN #define SD_SCK_PIN EXP2_02_PIN #define SD_MISO_PIN EXP2_01_PIN diff --git a/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h b/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h index 9ea36e2f2500..494af83f59e1 100644 --- a/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h +++ b/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h @@ -280,7 +280,7 @@ #endif #if SD_CONNECTION_IS(LCD) - #define SPI_DEVICE 3 + #define SPI_DEVICE 3 // Maple #define SD_DETECT_PIN EXP2_04_PIN #define SD_SCK_PIN EXP2_09_PIN #define SD_MISO_PIN EXP2_10_PIN diff --git a/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h b/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h index 168317d8b57b..d4f0ea7fd282 100644 --- a/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h +++ b/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h @@ -35,18 +35,18 @@ #define BOARD_NO_NATIVE_USB -//#define DISABLE_DEBUG // We still want to debug with STLINK... -#define DISABLE_JTAG // We free the jtag pins (PA15) but keep STLINK - // Release PB4 (STEP_X_PIN) from JTAG NRST role. +//#define DISABLE_DEBUG // Allow debug with STLINK... +#define DISABLE_JTAG // We free the JTAG pins (PA15) but keep STLINK + // Release PB4 (STEP_X_PIN) from JTAG NRST role. // // Limit Switches // -#define X_MIN_PIN PC1 // pin 16 -#define X_MAX_PIN PC0 // pin 15 (Filament sensor on Alfawise setup) -#define Y_MIN_PIN PC15 // pin 9 -#define Y_MAX_PIN PC14 // pin 8 (Unused in stock Alfawise setup) -#define Z_MIN_PIN PE6 // pin 5 Standard Endstop or Z_Probe endstop function -#define Z_MAX_PIN PE5 // pin 4 (Unused in stock Alfawise setup) +#define X_MIN_PIN PC1 +#define X_MAX_PIN PC0 // (Filament sensor on Alfawise setup) +#define Y_MIN_PIN PC15 +#define Y_MAX_PIN PC14 // (Unused in stock Alfawise setup) +#define Z_MIN_PIN PE6 // Standard Endstop or Z_Probe endstop function +#define Z_MAX_PIN PE5 // (Unused in stock Alfawise setup) // May be used for BLTouch Servo function on older variants (<= V08) #define ONBOARD_ENDSTOPPULLUPS @@ -60,35 +60,35 @@ // // Steppers // -#define X_ENABLE_PIN PB5 // pin 91 -#define X_STEP_PIN PB4 // pin 90 -#define X_DIR_PIN PB3 // pin 89 +#define X_ENABLE_PIN PB5 +#define X_STEP_PIN PB4 +#define X_DIR_PIN PB3 -#define Y_ENABLE_PIN PB8 // pin 95 -#define Y_STEP_PIN PB7 // pin 93 -#define Y_DIR_PIN PB6 // pin 92 +#define Y_ENABLE_PIN PB8 +#define Y_STEP_PIN PB7 +#define Y_DIR_PIN PB6 -#define Z_ENABLE_PIN PE1 // pin 98 -#define Z_STEP_PIN PE0 // pin 97 -#define Z_DIR_PIN PB9 // pin 96 +#define Z_ENABLE_PIN PE1 +#define Z_STEP_PIN PE0 +#define Z_DIR_PIN PB9 -#define E0_ENABLE_PIN PE4 // pin 3 -#define E0_STEP_PIN PE3 // pin 2 -#define E0_DIR_PIN PE2 // pin 1 +#define E0_ENABLE_PIN PE4 +#define E0_STEP_PIN PE3 +#define E0_DIR_PIN PE2 // // Temperature Sensors // -#define TEMP_0_PIN PA0 // pin 23 (Nozzle 100K/3950 thermistor) -#define TEMP_BED_PIN PA1 // pin 24 (Hot Bed 100K/3950 thermistor) +#define TEMP_0_PIN PA0 // (Nozzle 100K/3950 thermistor) +#define TEMP_BED_PIN PA1 // (Hot Bed 100K/3950 thermistor) // // Heaters / Fans // -#define HEATER_0_PIN PD3 // pin 84 (Nozzle Heat Mosfet) -#define HEATER_BED_PIN PA8 // pin 67 (Hot Bed Mosfet) +#define HEATER_0_PIN PD3 // (Nozzle Heat Mosfet) +#define HEATER_BED_PIN PA8 // (Hot Bed Mosfet) -#define FAN0_PIN PA15 // pin 77 (4cm Fan) +#define FAN0_PIN PA15 // (4cm Fan) #if TERN(MAPLE_STM32F1, ENABLED(FAN_SOFT_PWM), ENABLED(FAST_PWM_FAN)) && FAN_MIN_PWM < 5 // Required to avoid issues with heating or STLink #error "FAN_MIN_PWM must be 5 or higher." // Fan will not start in 1-30 range @@ -104,10 +104,10 @@ #endif #endif -//#define BEEPER_PIN PD13 // pin 60 (Servo PWM output 5V/GND on Board V0G+) made for BL-Touch sensor +//#define BEEPER_PIN PD13 // (Servo PWM output 5V/GND on Board V0G+) made for BL-Touch sensor // Can drive a PC Buzzer, if connected between PWM and 5V pins -#define LED_PIN PC2 // pin 17 +#define LED_PIN PC2 // Longer3D board mosfets are passing by default // Avoid nozzle heat and fan start before serial init @@ -136,14 +136,14 @@ // #if HAS_FSMC_TFT #define LCD_USE_DMA_FSMC // Use DMA transfers to send data to the TFT - #define FSMC_CS_PIN PD7 // pin 88 = FSMC_NE1 - #define FSMC_RS_PIN PD11 // pin 58 A16 Register. Only one address needed + #define FSMC_CS_PIN PD7 // FSMC_NE1 + #define FSMC_RS_PIN PD11 // A16 Register. Only one address needed #define TFT_CS_PIN FSMC_CS_PIN #define TFT_RS_PIN FSMC_RS_PIN - #define TFT_RESET_PIN PC4 // pin 33 - #define TFT_BACKLIGHT_PIN PD12 // pin 59 + #define TFT_RESET_PIN PC4 + #define TFT_BACKLIGHT_PIN PD12 #define TFT_BACKLIGHT_PWM 150 // Brightness with alt. TIM4 chan 1 (1-255) #define DOGLCD_MOSI -1 // Prevent auto-define by Conditionals_post.h @@ -168,11 +168,11 @@ * declared below. */ #if NEED_TOUCH_PINS - #define TOUCH_CS_PIN PB12 // pin 51 SPI2_NSS - #define TOUCH_SCK_PIN PB13 // pin 52 - #define TOUCH_MOSI_PIN PB14 // pin 53 (Inverted MOSI/MISO = No HW SPI2) - #define TOUCH_MISO_PIN PB15 // pin 54 - #define TOUCH_INT_PIN PC6 // pin 63 (PenIRQ coming from ADS7843) + #define TOUCH_CS_PIN PB12 // SPI2_NSS + #define TOUCH_SCK_PIN PB13 + #define TOUCH_MISO_PIN PB15 // (Swapped MOSI/MISO = No HW SPI2) + #define TOUCH_MOSI_PIN PB14 + #define TOUCH_INT_PIN PC6 // (PenIRQ coming from ADS7843) #endif // @@ -181,25 +181,25 @@ // #if NO_EEPROM_SELECTED //#define SPI_EEPROM - //#define SPI_FLASH // need MARLIN_DEV_MODE for M993/M994 EEPROM backup tests + //#define SPI_FLASH // Use MARLIN_DEV_MODE for M993/M994 EEPROM backup tests #define FLASH_EEPROM_EMULATION #endif #if ENABLED(SPI_EEPROM) // SPI1 EEPROM Winbond W25Q64 (8MB/64Mbits) #define SPI_CHAN_EEPROM1 1 - #define SPI_EEPROM1_CS_PIN PC5 // pin 34 - #define EEPROM_SCK_PIN BOARD_SPI1_SCK_PIN // PA5 pin 30 - #define EEPROM_MISO_PIN BOARD_SPI1_MISO_PIN // PA6 pin 31 - #define EEPROM_MOSI_PIN BOARD_SPI1_MOSI_PIN // PA7 pin 32 + #define SPI_EEPROM1_CS_PIN PC5 + #define EEPROM_SCK_PIN BOARD_SPI1_SCK_PIN // PA5 + #define EEPROM_MISO_PIN BOARD_SPI1_MISO_PIN // PA6 + #define EEPROM_MOSI_PIN BOARD_SPI1_MOSI_PIN // PA7 #define EEPROM_PAGE_SIZE 0x1000U // 4K (from datasheet) - #define MARLIN_EEPROM_SIZE 16UL * (EEPROM_PAGE_SIZE) // Limit to 64K for now... + #define MARLIN_EEPROM_SIZE 16UL * (EEPROM_PAGE_SIZE) // Limit to 64K for now... #elif ENABLED(SPI_FLASH) - #define SPI_FLASH_SIZE 0x40000U // limit to 256K (M993 will reboot with 512) + #define SPI_FLASH_SIZE 0x40000U // Limit to 256K (M993 will reboot with 512) #define SPI_FLASH_CS_PIN PC5 - #define SPI_FLASH_MOSI_PIN PA7 - #define SPI_FLASH_MISO_PIN PA6 #define SPI_FLASH_SCK_PIN PA5 + #define SPI_FLASH_MISO_PIN PA6 + #define SPI_FLASH_MOSI_PIN PA7 #elif ENABLED(FLASH_EEPROM_EMULATION) // SoC Flash (framework-arduinoststm32-maple/STM32F1/libraries/EEPROM/EEPROM.h) #define EEPROM_PAGE_SIZE (0x800U) // 2K diff --git a/Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h b/Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h index a7fc323ba0da..c86552ba12ad 100644 --- a/Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h @@ -58,7 +58,7 @@ #define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE // 2K #endif -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple // // Limit Switches diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h index e53ffa008bc7..d456974e9ea0 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h @@ -195,7 +195,7 @@ // SPI2 is shared by LCD touch driver and flash // SPI1(PA7) & SPI3(PB5) not available -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple #define ONBOARD_SDIO #define SDIO_CLOCK 4500000 @@ -274,7 +274,7 @@ #if ENABLED(SPI_FLASH) #define SPI_FLASH_SIZE 0x800000 // 8MB #define SPI_FLASH_CS_PIN PG9 - #define SPI_FLASH_MOSI_PIN PB15 - #define SPI_FLASH_MISO_PIN PB14 #define SPI_FLASH_SCK_PIN PB13 + #define SPI_FLASH_MISO_PIN PB14 + #define SPI_FLASH_MOSI_PIN PB15 #endif diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h index 5cf209e53315..6892655e468f 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h @@ -58,9 +58,9 @@ #endif // -// Note: MKS Robin board is using SPI2 interface. +// SPI // -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple // // Servos @@ -382,9 +382,9 @@ #if ENABLED(SPI_FLASH) #define SPI_FLASH_SIZE 0x1000000 // 16MB #define SPI_FLASH_CS_PIN PB12 - #define SPI_FLASH_MOSI_PIN PB15 - #define SPI_FLASH_MISO_PIN PB14 #define SPI_FLASH_SCK_PIN PB13 + #define SPI_FLASH_MISO_PIN PB14 + #define SPI_FLASH_MOSI_PIN PB15 #endif #ifndef BEEPER_PIN diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h index f257ea3bbb31..a8583e92d7e6 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h @@ -253,7 +253,7 @@ // SD Card // #define SDCARD_CONNECTION ONBOARD -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple #define ONBOARD_SPI_DEVICE 2 #define SDSS SD_SS_PIN #define ONBOARD_SD_CS_PIN SD_SS_PIN diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_LITE.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_LITE.h index af4e12110043..53f31c278459 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_LITE.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_LITE.h @@ -156,7 +156,7 @@ // // SPI // -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple #define SD_SCK_PIN PB13 #define SD_MISO_PIN PB14 #define SD_MOSI_PIN PB15 diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_LITE3.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_LITE3.h index 6835ec3b5658..0651bcebf283 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_LITE3.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_LITE3.h @@ -152,7 +152,7 @@ // // SPI // -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple #define SD_SCK_PIN PB13 #define SD_MISO_PIN PB14 #define SD_MOSI_PIN PB15 diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h index 3a50465a9abf..372da38c628a 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h @@ -50,7 +50,7 @@ #define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE // 2K #endif -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple // // Servos @@ -199,7 +199,7 @@ #if ENABLED(SPI_FLASH) #define SPI_FLASH_SIZE 0x1000000 // 16MB #define SPI_FLASH_CS_PIN PB12 // Flash chip-select - #define SPI_FLASH_MOSI_PIN PB15 - #define SPI_FLASH_MISO_PIN PB14 #define SPI_FLASH_SCK_PIN PB13 + #define SPI_FLASH_MISO_PIN PB14 + #define SPI_FLASH_MOSI_PIN PB15 #endif diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h index d92ea01aa380..956e9dc72ef1 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h @@ -60,9 +60,9 @@ #endif // -// Note: MKS Robin board is using SPI2 interface. +// SPI // -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple // // Servos @@ -384,9 +384,9 @@ #if ENABLED(SPI_FLASH) #define SPI_FLASH_SIZE 0x1000000 // 16MB #define SPI_FLASH_CS_PIN PB12 - #define SPI_FLASH_MOSI_PIN PB15 - #define SPI_FLASH_MISO_PIN PB14 #define SPI_FLASH_SCK_PIN PB13 + #define SPI_FLASH_MISO_PIN PB14 + #define SPI_FLASH_MOSI_PIN PB15 #endif #ifndef BEEPER_PIN diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h index a329b8a4bbdd..69eee63007c5 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h @@ -49,7 +49,7 @@ #define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE // 2K #endif -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple // // Servos @@ -210,7 +210,7 @@ #if ENABLED(SPI_FLASH) #define SPI_FLASH_SIZE 0x1000000 // 16MB #define SPI_FLASH_CS_PIN PB12 - #define SPI_FLASH_MOSI_PIN PB15 - #define SPI_FLASH_MISO_PIN PB14 #define SPI_FLASH_SCK_PIN PB13 + #define SPI_FLASH_MISO_PIN PB14 + #define SPI_FLASH_MOSI_PIN PB15 #endif diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h index 922caa556ea1..114c224b1e33 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h @@ -41,9 +41,9 @@ #define DISABLE_DEBUG // -// Note: MKS Robin board is using SPI2 interface. +// SPI // -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple // // Servos @@ -167,9 +167,9 @@ #define HEATER_BED_PIN PA0 // +HOT-BED- #define FAN0_PIN PB1 // +FAN- -/** - * Note: MKS Robin Pro board is using SPI2 interface. Make sure your stm32duino library is configured accordingly - */ +// +// Note: Using SPI2 interface. Make sure stm32duino is configured accordingly +// //#define TEMP_0_CS_PIN PE5 // TC1 - CS1 //#define TEMP_0_CS_PIN PF11 // TC2 - CS2 @@ -308,7 +308,7 @@ #if ENABLED(SPI_FLASH) #define SPI_FLASH_SIZE 0x1000000 // 16MB #define SPI_FLASH_CS_PIN PB12 // Flash chip-select - #define SPI_FLASH_MOSI_PIN PB15 - #define SPI_FLASH_MISO_PIN PB14 #define SPI_FLASH_SCK_PIN PB13 + #define SPI_FLASH_MISO_PIN PB14 + #define SPI_FLASH_MOSI_PIN PB15 #endif diff --git a/Marlin/src/pins/stm32f1/pins_TRIGORILLA_PRO.h b/Marlin/src/pins/stm32f1/pins_TRIGORILLA_PRO.h index ff2bf5fd8e86..d6a5ef3c178b 100644 --- a/Marlin/src/pins/stm32f1/pins_TRIGORILLA_PRO.h +++ b/Marlin/src/pins/stm32f1/pins_TRIGORILLA_PRO.h @@ -184,7 +184,7 @@ #endif // SPI1(PA7) & SPI3(PB5) not available -#define SPI_DEVICE 2 +#define SPI_DEVICE 2 // Maple #if ENABLED(ONBOARD_SDIO) #define SD_SCK_PIN PB13 // SPI2 ok diff --git a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h index 01f2b00b585a..04c40095295d 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h @@ -213,8 +213,8 @@ // // Onboard SD card +// Detect pin doesn't work when ONBOARD and NO_SD_HOST_DRIVE disabled // -// detect pin doesn't work when ONBOARD and NO_SD_HOST_DRIVE disabled #if SD_CONNECTION_IS(ONBOARD) #define ENABLE_SPI3 #define SD_SS_PIN -1 @@ -227,13 +227,12 @@ #define SPI_FLASH #if ENABLED(SPI_FLASH) - #define SPI_FLASH - #define SPI_DEVICE 2 - #define SPI_FLASH_SIZE 0x1000000 + #define SPI_DEVICE 2 // Maple + #define SPI_FLASH_SIZE 0x1000000 // 16MB #define SPI_FLASH_CS_PIN PB12 - #define SPI_FLASH_MOSI_PIN PC3 - #define SPI_FLASH_MISO_PIN PC2 #define SPI_FLASH_SCK_PIN PB13 + #define SPI_FLASH_MISO_PIN PC2 + #define SPI_FLASH_MOSI_PIN PC3 #endif /** diff --git a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h index 952a8e1ec070..60fe6fa66d62 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h @@ -271,19 +271,19 @@ #endif */ -// -// LCD / Controller -#define SPI_FLASH #define SPI_FLASH -#define SPI_DEVICE 2 -#define SPI_FLASH_SIZE 0x1000000 #if ENABLED(SPI_FLASH) + #define SPI_DEVICE 2 // Maple + #define SPI_FLASH_SIZE 0x1000000 // 16MB #define SPI_FLASH_CS_PIN PB12 - #define SPI_FLASH_MOSI_PIN PB15 - #define SPI_FLASH_MISO_PIN PB14 #define SPI_FLASH_SCK_PIN PB13 + #define SPI_FLASH_MISO_PIN PB14 + #define SPI_FLASH_MOSI_PIN PB15 #endif +// +// LCD / Controller +// #if ANY(TFT_COLOR_UI, TFT_LVGL_UI, TFT_CLASSIC_UI) #ifndef TOUCH_CALIBRATION_X #define TOUCH_CALIBRATION_X -17253 diff --git a/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h b/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h index d5752e43dccf..dbf8ddc5d51f 100644 --- a/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h +++ b/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h @@ -73,9 +73,9 @@ #if ENABLED(SPI_FLASH) #define SPI_FLASH_SIZE 0x200000 // 2MB #define SPI_FLASH_CS_PIN PG15 // SPI2 - #define SPI_FLASH_MOSI_PIN PB5 - #define SPI_FLASH_MISO_PIN PB4 #define SPI_FLASH_SCK_PIN PB3 + #define SPI_FLASH_MISO_PIN PB4 + #define SPI_FLASH_MOSI_PIN PB5 #endif // diff --git a/buildroot/share/PlatformIO/scripts/download_mks_assets.py b/buildroot/share/PlatformIO/scripts/download_mks_assets.py index 661fb2e438e4..0186f59896ea 100644 --- a/buildroot/share/PlatformIO/scripts/download_mks_assets.py +++ b/buildroot/share/PlatformIO/scripts/download_mks_assets.py @@ -14,7 +14,7 @@ assets_path = Path(env.Dictionary("PROJECT_BUILD_DIR"), env.Dictionary("PIOENV"), "assets") def download_mks_assets(): - print("Downloading MKS Assets") + print("Downloading MKS Assets for TFT_LVGL_UI") r = requests.get(url, stream=True) # the user may have a very clean workspace, # so create the PROJECT_LIBDEPS_DIR directory if not exits @@ -25,7 +25,7 @@ def download_mks_assets(): fd.write(chunk) def copy_mks_assets(): - print("Copying MKS Assets") + print("Copying MKS Assets for TFT_LVGL_UI") output_path = Path(tempfile.mkdtemp()) zip_obj = zipfile.ZipFile(zip_path, 'r') zip_obj.extractall(output_path) diff --git a/buildroot/tests/mks_robin_pro2 b/buildroot/tests/mks_robin_pro2 new file mode 100755 index 000000000000..391943743378 --- /dev/null +++ b/buildroot/tests/mks_robin_pro2 @@ -0,0 +1,20 @@ +#!/usr/bin/env bash +# +# Build tests for mks_robin_pro2 (STM32F407VE) +# + +# exit on first failure +set -e + +# +# Robin Pro v2 with LVGL TFT +# +restore_configs +opt_set MOTHERBOARD BOARD_MKS_ROBIN_PRO_V2 SERIAL_PORT 1 +opt_enable SDSUPPORT USB_FLASH_DRIVE_SUPPORT USE_OTG_USB_HOST MULTI_VOLUME \ + TFT_GENERIC TFT_INTERFACE_SPI TFT_RES_480x320 TFT_LVGL_UI TOUCH_SCREEN \ + BLTOUCH Z_SAFE_HOMING LCD_BED_TRAMMING BED_TRAMMING_USE_PROBE +exec_test $1 $2 "MKS Robin Pro v2 | TFT_LVGL_UI | SD/FD Multi-Volume" "$3" + +# cleanup +restore_configs From d22ce55cd5b88d50dd67818c5e44db91575e4d60 Mon Sep 17 00:00:00 2001 From: Andrew <18502096+classicrocker883@users.noreply.github.com> Date: Sun, 21 May 2023 18:34:19 -0400 Subject: [PATCH 204/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20ProUI=20Manual=20M?= =?UTF-8?q?esh=20/=20UBL=20Viewer=20(#25858)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/e3v2/proui/meshviewer.cpp | 2 +- Marlin/src/module/motion.cpp | 4 ---- Marlin/src/module/motion.h | 4 ++++ 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Marlin/src/lcd/e3v2/proui/meshviewer.cpp b/Marlin/src/lcd/e3v2/proui/meshviewer.cpp index 18cdffd00d62..69d21c044ce9 100644 --- a/Marlin/src/lcd/e3v2/proui/meshviewer.cpp +++ b/Marlin/src/lcd/e3v2/proui/meshviewer.cpp @@ -40,7 +40,7 @@ #include "../../../feature/bedlevel/bedlevel.h" #include "meshviewer.h" -#if ENABLED(AUTO_BED_LEVELING_UBL) +#if ENABLED(USE_UBL_VIEWER) #include "bedlevel_tools.h" #endif diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index a15cfe079610..e6df20a99843 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -38,10 +38,6 @@ #include "../lcd/marlinui.h" #endif -#if ALL(DWIN_LCD_PROUI, INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) - #include "../lcd/e3v2/proui/dwin.h" -#endif - #if ENABLED(POLAR) #include "polar.h" #endif diff --git a/Marlin/src/module/motion.h b/Marlin/src/module/motion.h index 71d80f954e41..b7e37f6b7043 100644 --- a/Marlin/src/module/motion.h +++ b/Marlin/src/module/motion.h @@ -30,6 +30,10 @@ #include "../inc/MarlinConfig.h" +#if ALL(DWIN_LCD_PROUI, INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) + #include "../lcd/e3v2/proui/dwin.h" +#endif + #if IS_SCARA #include "scara.h" #elif ENABLED(POLAR) From ae3b00db74c63e51e6e73e4a452468dda9abab1f Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 21 May 2023 17:35:41 -0500 Subject: [PATCH 205/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Fal?= =?UTF-8?q?l=20back=20to=20SPI0=20with=20YHCB2004=20(#25856)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/AVR/fastio/fastio_1280.h | 49 +++++++++---------- Marlin/src/HAL/AVR/fastio/fastio_1281.h | 35 ++++++------- Marlin/src/HAL/AVR/fastio/fastio_168.h | 26 +++++----- Marlin/src/HAL/AVR/fastio/fastio_644.h | 38 +++++++------- Marlin/src/HAL/AVR/fastio/fastio_AT90USB.h | 11 ++--- Marlin/src/HAL/DUE/fastio.h | 8 +-- Marlin/src/lcd/HD44780/marlinui_HD44780.cpp | 18 ++++++- Marlin/src/pins/mega/pins_GT2560_V3.h | 16 ++---- Marlin/src/pins/mega/pins_GT2560_V3_A20.h | 14 ++++-- Marlin/src/pins/mega/pins_GT2560_V4_A20.h | 14 ++++-- Marlin/src/pins/pins.h | 2 +- .../src/pins/stm32f4/pins_BLACKPILL_CUSTOM.h | 2 +- 12 files changed, 118 insertions(+), 115 deletions(-) diff --git a/Marlin/src/HAL/AVR/fastio/fastio_1280.h b/Marlin/src/HAL/AVR/fastio/fastio_1280.h index 6f074cf91124..633774dda916 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_1280.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_1280.h @@ -35,39 +35,36 @@ #include "../fastio.h" -// change for your board -#define DEBUG_LED DIO21 - // UART -#define RXD DIO0 -#define TXD DIO1 +#define RXD 0 +#define TXD 1 // SPI -#define SCK DIO52 -#define MISO DIO50 -#define MOSI DIO51 -#define SS DIO53 +#define MISO 50 +#define MOSI 51 +#define SCK 52 +#define SS 53 // TWI (I2C) -#define SCL DIO21 -#define SDA DIO20 +#define SCL 21 +#define SDA 20 // Timers and PWM -#define OC0A DIO13 -#define OC0B DIO4 -#define OC1A DIO11 -#define OC1B DIO12 -#define OC2A DIO10 -#define OC2B DIO9 -#define OC3A DIO5 -#define OC3B DIO2 -#define OC3C DIO3 -#define OC4A DIO6 -#define OC4B DIO7 -#define OC4C DIO8 -#define OC5A DIO46 -#define OC5B DIO45 -#define OC5C DIO44 +#define OC0A 13 +#define OC0B 4 +#define OC1A 11 +#define OC1B 12 +#define OC2A 10 +#define OC2B 9 +#define OC3A 5 +#define OC3B 2 +#define OC3C 3 +#define OC4A 6 +#define OC4B 7 +#define OC4C 8 +#define OC5A 46 +#define OC5B 45 +#define OC5C 44 // Digital I/O diff --git a/Marlin/src/HAL/AVR/fastio/fastio_1281.h b/Marlin/src/HAL/AVR/fastio/fastio_1281.h index 812586225d17..6067248978ae 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_1281.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_1281.h @@ -33,32 +33,29 @@ #include "../fastio.h" -// change for your board -#define DEBUG_LED DIO46 - // UART -#define RXD DIO0 -#define TXD DIO1 +#define RXD 0 +#define TXD 1 // SPI -#define SCK DIO10 -#define MISO DIO12 -#define MOSI DIO11 -#define SS DIO16 +#define SCK 10 +#define MISO 12 +#define MOSI 11 +#define SS 16 // TWI (I2C) -#define SCL DIO17 -#define SDA DIO18 +#define SCL 17 +#define SDA 18 // Timers and PWM -#define OC0A DIO9 -#define OC0B DIO4 -#define OC1A DIO7 -#define OC1B DIO8 -#define OC2A DIO6 -#define OC3A DIO5 -#define OC3B DIO2 -#define OC3C DIO3 +#define OC0A 9 +#define OC0B 4 +#define OC1A 7 +#define OC1B 8 +#define OC2A 6 +#define OC3A 5 +#define OC3B 2 +#define OC3C 3 // Digital I/O diff --git a/Marlin/src/HAL/AVR/fastio/fastio_168.h b/Marlin/src/HAL/AVR/fastio/fastio_168.h index 4f591b37b901..cc559797408b 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_168.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_168.h @@ -33,29 +33,27 @@ #include "../fastio.h" -#define DEBUG_LED AIO5 - // UART -#define RXD DIO0 -#define TXD DIO1 +#define RXD 0 +#define TXD 1 // SPI -#define SCK DIO13 -#define MISO DIO12 -#define MOSI DIO11 -#define SS DIO10 +#define SS 10 +#define MOSI 11 +#define MISO 12 +#define SCK 13 // TWI (I2C) #define SCL AIO5 #define SDA AIO4 // Timers and PWM -#define OC0A DIO6 -#define OC0B DIO5 -#define OC1A DIO9 -#define OC1B DIO10 -#define OC2A DIO11 -#define OC2B DIO3 +#define OC0A 6 +#define OC0B 5 +#define OC1A 9 +#define OC1B 10 +#define OC2A 11 +#define OC2B 3 // Digital I/O diff --git a/Marlin/src/HAL/AVR/fastio/fastio_644.h b/Marlin/src/HAL/AVR/fastio/fastio_644.h index 16bdc6a23da2..94b322a8190d 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_644.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_644.h @@ -59,34 +59,32 @@ #include "../fastio.h" -#define DEBUG_LED DIO0 - // UART -#define RXD DIO8 -#define TXD DIO9 -#define RXD0 DIO8 -#define TXD0 DIO9 +#define RXD 8 +#define TXD 9 +#define RXD0 8 +#define TXD0 9 -#define RXD1 DIO10 -#define TXD1 DIO11 +#define RXD1 10 +#define TXD1 11 // SPI -#define SCK DIO7 -#define MISO DIO6 -#define MOSI DIO5 -#define SS DIO4 +#define SS 4 +#define MOSI 5 +#define MISO 6 +#define SCK 7 // TWI (I2C) -#define SCL DIO16 -#define SDA DIO17 +#define SCL 16 +#define SDA 17 // Timers and PWM -#define OC0A DIO3 -#define OC0B DIO4 -#define OC1A DIO13 -#define OC1B DIO12 -#define OC2A DIO15 -#define OC2B DIO14 +#define OC0A 3 +#define OC0B 4 +#define OC1A 13 +#define OC1B 12 +#define OC2A 15 +#define OC2B 14 // Digital I/O diff --git a/Marlin/src/HAL/AVR/fastio/fastio_AT90USB.h b/Marlin/src/HAL/AVR/fastio/fastio_AT90USB.h index d2a8aca6f38c..0c434b157c78 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_AT90USB.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_AT90USB.h @@ -34,14 +34,11 @@ #include "../fastio.h" -// change for your board -#define DEBUG_LED DIO31 /* led D5 red */ - // SPI -#define SCK DIO21 // 9 -#define MISO DIO23 // 11 -#define MOSI DIO22 // 10 -#define SS DIO20 // 8 +#define SS 20 // 8 +#define SCK 21 // 9 +#define MOSI 22 // 10 +#define MISO 23 // 11 // Digital I/O diff --git a/Marlin/src/HAL/DUE/fastio.h b/Marlin/src/HAL/DUE/fastio.h index a609210d8130..77bc1911d8df 100644 --- a/Marlin/src/HAL/DUE/fastio.h +++ b/Marlin/src/HAL/DUE/fastio.h @@ -189,12 +189,12 @@ */ // UART -#define RXD DIO0 -#define TXD DIO1 +#define RXD 0 +#define TXD 1 // TWI (I2C) -#define SCL DIO21 -#define SDA DIO20 +#define SCL 21 +#define SDA 20 /** * pins diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp index a0cf5fe46bda..b03ff8a9f533 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp @@ -103,7 +103,23 @@ #elif ENABLED(YHCB2004) - LCD_CLASS lcd(YHCB2004_CLK, 20, 4, YHCB2004_MOSI, YHCB2004_MISO); // CLK, cols, rows, MOSI, MISO + #ifndef YHCB2004_SS_PIN + #define YHCB2004_SS_PIN SS + #endif + #ifndef YHCB2004_SCK_PIN + #define YHCB2004_SCK_PIN SCK + #endif + #ifndef YHCB2004_MOSI_PIN + #define YHCB2004_MOSI_PIN MOSI + #endif + #ifndef YHCB2004_MISO_PIN + #define YHCB2004_MISO_PIN MISO + #endif + #if !PINS_EXIST(YHCB2004_SS, YHCB2004_SCK, YHCB2004_MOSI, YHCB2004_MISO) + #error "YHCB2004 display requires YHCB2004_SS_PIN, YHCB2004_SCK_PIN, YHCB2004_MOSI_PIN, and YHCB2004_MISO_PIN." + #endif + + LCD_CLASS lcd(YHCB2004_SS_PIN, 20, 4, YHCB2004_SCK_PIN, YHCB2004_MOSI_PIN, YHCB2004_MISO_PIN); // SS, cols, rows, SCK, MOSI, MISO #else diff --git a/Marlin/src/pins/mega/pins_GT2560_V3.h b/Marlin/src/pins/mega/pins_GT2560_V3.h index 61f30fc7d4f4..0c588e6516ee 100644 --- a/Marlin/src/pins/mega/pins_GT2560_V3.h +++ b/Marlin/src/pins/mega/pins_GT2560_V3.h @@ -168,18 +168,10 @@ #define BEEPER_PIN 18 #if ENABLED(YHCB2004) - #ifndef YHCB2004_CLK - #define YHCB2004_CLK 5 - #define DIO52 YHCB2004_CLK - #endif - #ifndef YHCB2004_MOSI - #define YHCB2004_MOSI 21 - #define DIO50 YHCB2004_MOSI - #endif - #ifndef YHCB2004_MISO - #define YHCB2004_MISO 36 - #define DIO51 YHCB2004_MISO - #endif + #define YHCB2004_MOSI_PIN 21 + #define YHCB2004_MISO_PIN 36 + #define YHCB2004_SCK_PIN 5 + #define YHCB2004_SS_PIN SS #elif HAS_WIRED_LCD #ifndef LCD_PINS_RS #define LCD_PINS_RS 20 diff --git a/Marlin/src/pins/mega/pins_GT2560_V3_A20.h b/Marlin/src/pins/mega/pins_GT2560_V3_A20.h index 772a45a9186a..2422dfdd73e5 100644 --- a/Marlin/src/pins/mega/pins_GT2560_V3_A20.h +++ b/Marlin/src/pins/mega/pins_GT2560_V3_A20.h @@ -26,12 +26,16 @@ * ATmega2560 */ -#define LCD_PINS_RS 5 -#define LCD_PINS_EN 36 -#define LCD_PINS_D4 21 -#define LCD_PINS_D7 6 +#if HAS_WIRED_LCD + #define LCD_PINS_RS 5 + #define LCD_PINS_EN 36 + #define LCD_PINS_D4 21 + #define LCD_PINS_D7 6 +#endif -#define SPEAKER // The speaker can produce tones +#ifndef SPEAKER + #define SPEAKER // The speaker can produce tones +#endif #if IS_NEWPANEL #define BTN_EN1 16 diff --git a/Marlin/src/pins/mega/pins_GT2560_V4_A20.h b/Marlin/src/pins/mega/pins_GT2560_V4_A20.h index 3b3a80caa83f..405a3aba5bf8 100644 --- a/Marlin/src/pins/mega/pins_GT2560_V4_A20.h +++ b/Marlin/src/pins/mega/pins_GT2560_V4_A20.h @@ -28,12 +28,16 @@ #define BOARD_INFO_NAME "GT2560 4.x" -#define LCD_PINS_RS 5 -#define LCD_PINS_EN 36 -#define LCD_PINS_D4 21 -#define LCD_PINS_D7 6 +#if HAS_WIRED_LCD + #define LCD_PINS_RS 5 + #define LCD_PINS_EN 36 + #define LCD_PINS_D4 21 + #define LCD_PINS_D7 6 +#endif -#define SPEAKER // The speaker can produce tones +#ifndef SPEAKER + #define SPEAKER // The speaker can produce tones +#endif #if IS_NEWPANEL #define BTN_EN1 16 diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index 511870053324..6ee6401badfc 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -795,7 +795,7 @@ #elif MB(BLACKPILL_CUSTOM) #include "stm32f4/pins_BLACKPILL_CUSTOM.h" // STM32F4 env:STM32F401CD_blackpill_stlink #elif MB(I3DBEEZ9_V1) - #include "stm32f4/pins_I3DBEEZ9.h" // STM32F4 env:I3DBEEZ9_V1 + #include "stm32f4/pins_I3DBEEZ9.h" // STM32F4 env:I3DBEEZ9_V1 // // ARM Cortex M7 diff --git a/Marlin/src/pins/stm32f4/pins_BLACKPILL_CUSTOM.h b/Marlin/src/pins/stm32f4/pins_BLACKPILL_CUSTOM.h index 9049a553fb49..039333adfa91 100644 --- a/Marlin/src/pins/stm32f4/pins_BLACKPILL_CUSTOM.h +++ b/Marlin/src/pins/stm32f4/pins_BLACKPILL_CUSTOM.h @@ -117,7 +117,7 @@ //#define SDIO_SUPPORT #define NO_SD_HOST_DRIVE // This board's SD is only seen by the printer -#if SD_CONNECTION_IS(ONBOARD) +#if SD_CONNECTION_IS(ONBOARD) #define SDSS PA4 #define SD_SCK_PIN PA5 #define SD_MISO_PIN PA6 From 8cd2b0976a0c021a87af07876cedde9101682f0e Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 22 May 2023 00:27:46 +0000 Subject: [PATCH 206/427] [cron] Bump distribution date (2023-05-22) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 1986b74a024d..6c3f8122f5cd 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-21" +//#define STRING_DISTRIBUTION_DATE "2023-05-22" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 8c1880c6ff36..64baed6a417c 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-21" + #define STRING_DISTRIBUTION_DATE "2023-05-22" #endif /** From 9ceecefae222e624039eea67dcb478130cb0273c Mon Sep 17 00:00:00 2001 From: alextrical <35117191+alextrical@users.noreply.github.com> Date: Mon, 22 May 2023 02:38:28 +0100 Subject: [PATCH 207/427] =?UTF-8?q?=F0=9F=94=A8=20Fix=20BTT=20EBB42=20V1.1?= =?UTF-8?q?=20compile=20with=20-flto=20(#25849)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h | 3 ++- ini/stm32g0.ini | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h b/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h index 21f27e452d8c..07c68dc780d5 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h @@ -125,7 +125,8 @@ // // Heaters / Fans // -#define HEATER_0_PIN PA2 // "HE" +#define HEATER_0_PIN PA2 // "HE" V1.1 +#define HEATER_1_PIN PB13 // "HE" V1.2 #define FAN0_PIN PA0 // "FAN0" #define FAN1_PIN PA1 // "FAN1" diff --git a/ini/stm32g0.ini b/ini/stm32g0.ini index 8d9353f0af89..17403292b70b 100644 --- a/ini/stm32g0.ini +++ b/ini/stm32g0.ini @@ -33,6 +33,7 @@ build_flags = -DPIN_WIRE_SCL=PB3 -DPIN_WIRE_SDA=PB4 extends = stm32_variant platform = ststm32@~14.1.0 platform_packages = framework-arduinoststm32@https://github.com/stm32duino/Arduino_Core_STM32/archive/main.zip + toolchain-gccarmnoneeabi@1.100301.220327 board = marlin_BTT_EBB42_V1_1 board_build.offset = 0x0000 board_upload.offset_address = 0x08000000 From e82ec734d9a102ca21cfd0f8ad47a7e988579aed Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Tue, 23 May 2023 00:21:34 +0000 Subject: [PATCH 208/427] [cron] Bump distribution date (2023-05-23) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 6c3f8122f5cd..d1fe945715af 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-22" +//#define STRING_DISTRIBUTION_DATE "2023-05-23" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 64baed6a417c..5c35e0550f2d 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-22" + #define STRING_DISTRIBUTION_DATE "2023-05-23" #endif /** From e7a5d4d4169dfd55bc1f0c6e34a527c3f4c17e7a Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 23 May 2023 03:15:02 -0500 Subject: [PATCH 209/427] =?UTF-8?q?=E2=9C=85=20Update=20checkout=20actions?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/bump-date.yml | 4 ++-- .github/workflows/clean-closed.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/bump-date.yml b/.github/workflows/bump-date.yml index 482fbbbb4085..a08eeea561d7 100644 --- a/.github/workflows/bump-date.yml +++ b/.github/workflows/bump-date.yml @@ -19,7 +19,7 @@ jobs: steps: - name: Check out bugfix-2.0.x - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: ref: bugfix-2.0.x @@ -39,7 +39,7 @@ jobs: exit 0 - name: Check out bugfix-2.1.x - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: ref: bugfix-2.1.x diff --git a/.github/workflows/clean-closed.yml b/.github/workflows/clean-closed.yml index befec4498f25..2eab285aeeab 100644 --- a/.github/workflows/clean-closed.yml +++ b/.github/workflows/clean-closed.yml @@ -31,7 +31,7 @@ jobs: - "Needs: Work" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Remove Labels uses: actions-ecosystem/action-remove-labels@v1 with: From 9036cec562a4ae1b8d54a31c9cf296fdbb5a5cba Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Wed, 24 May 2023 00:21:21 +0000 Subject: [PATCH 210/427] [cron] Bump distribution date (2023-05-24) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index d1fe945715af..5b26bfa8ab4f 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-23" +//#define STRING_DISTRIBUTION_DATE "2023-05-24" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 5c35e0550f2d..2864463068ae 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-23" + #define STRING_DISTRIBUTION_DATE "2023-05-24" #endif /** From 37d0f49a82cd2e4d91dce4e62671b266924eb2a7 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 24 May 2023 01:05:55 -0500 Subject: [PATCH 211/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Mis?= =?UTF-8?q?c.=20ExtUI=20LCD=20cleanup=20(#25872)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/AVR/HAL.h | 2 +- Marlin/src/HAL/LPC1768/HAL.h | 2 +- Marlin/src/HAL/STM32/HAL.h | 2 +- Marlin/src/HAL/STM32F1/HAL.h | 2 +- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 2 +- .../extui/anycubic_chiron/FileNavigator.cpp | 30 +- .../lcd/extui/anycubic_chiron/FileNavigator.h | 4 +- .../extui/anycubic_chiron/chiron_extui.cpp | 26 +- .../lcd/extui/anycubic_chiron/chiron_tft.cpp | 310 +-- .../lcd/extui/anycubic_chiron/chiron_tft.h | 48 +- .../extui/anycubic_i3mega/anycubic_extui.cpp | 22 +- .../anycubic_i3mega/anycubic_i3mega_lcd.cpp | 1074 ++++---- .../anycubic_i3mega/anycubic_i3mega_lcd.h | 69 +- .../extui/anycubic_vyper/FileNavigator.cpp | 22 +- .../lcd/extui/anycubic_vyper/FileNavigator.h | 4 +- .../src/lcd/extui/anycubic_vyper/dgus_tft.cpp | 271 +- .../src/lcd/extui/anycubic_vyper/dgus_tft.h | 38 +- .../lcd/extui/anycubic_vyper/vyper_extui.cpp | 26 +- Marlin/src/lcd/extui/dgus/DGUSDisplay.cpp | 2 +- .../extui/dgus/fysetc/DGUSScreenHandler.cpp | 6 +- .../extui/dgus/hiprecy/DGUSScreenHandler.cpp | 6 +- .../lcd/extui/dgus/mks/DGUSScreenHandler.cpp | 6 +- .../extui/dgus/origin/DGUSScreenHandler.cpp | 6 +- .../lcd/extui/dgus_reloaded/DGUSRxHandler.cpp | 2 +- .../lcd/extui/dgus_reloaded/DGUSRxHandler.h | 2 +- .../extui/dgus_reloaded/DGUSScreenHandler.cpp | 4 +- .../extui/dgus_reloaded/DGUSScreenHandler.h | 4 +- .../dgus_reloaded/definition/DGUS_VPList.cpp | 2 +- .../dgus_reloaded/dgus_reloaded_extui.cpp | 4 +- .../lcd/extui/ia_creality/FileNavigator.cpp | 24 +- .../src/lcd/extui/ia_creality/FileNavigator.h | 11 +- .../extui/ia_creality/ia_creality_extui.cpp | 2261 +++-------------- .../lcd/extui/ia_creality/ia_creality_rts.cpp | 1730 +++++++++++++ ...{ia_creality_extui.h => ia_creality_rts.h} | 26 +- .../extui/mks_ui/tft_lvgl_configuration.cpp | 1 - .../src/lcd/extui/nextion/FileNavigator.cpp | 62 +- Marlin/src/lcd/extui/nextion/FileNavigator.h | 4 +- .../src/lcd/extui/nextion/nextion_extui.cpp | 12 +- Marlin/src/lcd/extui/nextion/nextion_tft.cpp | 46 +- Marlin/src/lcd/extui/nextion/nextion_tft.h | 26 +- .../src/lcd/extui/nextion/nextion_tft_defs.h | 14 +- Marlin/src/lcd/language/language_en.h | 6 +- 42 files changed, 3097 insertions(+), 3124 deletions(-) create mode 100644 Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp rename Marlin/src/lcd/extui/ia_creality/{ia_creality_extui.h => ia_creality_rts.h} (92%) diff --git a/Marlin/src/HAL/AVR/HAL.h b/Marlin/src/HAL/AVR/HAL.h index d458790979ff..6d98dff08020 100644 --- a/Marlin/src/HAL/AVR/HAL.h +++ b/Marlin/src/HAL/AVR/HAL.h @@ -140,7 +140,7 @@ typedef Servo hal_servo_t; #endif #define LCD_SERIAL lcdSerial #if HAS_DGUS_LCD - #define SERIAL_GET_TX_BUFFER_FREE() LCD_SERIAL.get_tx_buffer_free() + #define LCD_SERIAL_TX_BUFFER_FREE() LCD_SERIAL.get_tx_buffer_free() #endif #endif diff --git a/Marlin/src/HAL/LPC1768/HAL.h b/Marlin/src/HAL/LPC1768/HAL.h index 6d5824f7a151..be4d59ada737 100644 --- a/Marlin/src/HAL/LPC1768/HAL.h +++ b/Marlin/src/HAL/LPC1768/HAL.h @@ -101,7 +101,7 @@ extern DefaultSerial1 USBSerial; #error "LCD_SERIAL_PORT must be from 0 to 3. You can also use -1 if the board supports Native USB." #endif #if HAS_DGUS_LCD - #define SERIAL_GET_TX_BUFFER_FREE() LCD_SERIAL.available() + #define LCD_SERIAL_TX_BUFFER_FREE() LCD_SERIAL.available() #endif #endif diff --git a/Marlin/src/HAL/STM32/HAL.h b/Marlin/src/HAL/STM32/HAL.h index 54359c5b0987..dc36cc1eca33 100644 --- a/Marlin/src/HAL/STM32/HAL.h +++ b/Marlin/src/HAL/STM32/HAL.h @@ -114,7 +114,7 @@ #error "LCD_SERIAL_PORT must be from 1 to 6, or -1 for Native USB." #endif #if HAS_DGUS_LCD - #define SERIAL_GET_TX_BUFFER_FREE() LCD_SERIAL.availableForWrite() + #define LCD_SERIAL_TX_BUFFER_FREE() LCD_SERIAL.availableForWrite() #endif #endif diff --git a/Marlin/src/HAL/STM32F1/HAL.h b/Marlin/src/HAL/STM32F1/HAL.h index 954281a4be3e..8ed525bfb71b 100644 --- a/Marlin/src/HAL/STM32F1/HAL.h +++ b/Marlin/src/HAL/STM32F1/HAL.h @@ -140,7 +140,7 @@ static_assert(false, "LCD_SERIAL_PORT must be from 1 to " STRINGIFY(NUM_UARTS) ". You can also use -1 if the board supports Native USB.") #endif #if HAS_DGUS_LCD - #define SERIAL_GET_TX_BUFFER_FREE() LCD_SERIAL.availableForWrite() + #define LCD_SERIAL_TX_BUFFER_FREE() LCD_SERIAL.availableForWrite() #endif #endif diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index ceaf147c3ba1..53e4466bf811 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -2536,7 +2536,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item Draw_Menu_Item(row, ICON_Back, F("Back")); else Draw_Menu(Motion, MOTION_STEPS); - break; + break; #if HAS_X_AXIS case STEPS_X: if (draw) { diff --git a/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.cpp b/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.cpp index 6e77b2b2fda6..ffc485a3dc2f 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.cpp +++ b/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.cpp @@ -60,21 +60,21 @@ using namespace ExtUI; namespace Anycubic { FileNavigator filenavigator; -FileList FileNavigator::filelist; // Instance of the Marlin file API +FileList FileNavigator::filelist; // ExtUI file API uint16_t FileNavigator::lastpanelindex; uint16_t FileNavigator::currentindex; // override the panel request uint8_t FileNavigator::folderdepth; -uint16_t FileNavigator::currentfolderindex[MAX_FOLDER_DEPTH]; // track folder pos for iteration -char FileNavigator::currentfoldername[MAX_PATH_LEN + 1]; // Current folder path +uint16_t FileNavigator::currentDirIndex[MAX_FOLDER_DEPTH]; // track folder pos for iteration +char FileNavigator::currentDirPath[MAX_PATH_LEN + 1]; // Current folder path FileNavigator::FileNavigator() { reset(); } void FileNavigator::reset() { - currentfoldername[0] = '\0'; + currentDirPath[0] = '\0'; folderdepth = 0; currentindex = 0; lastpanelindex = 0; - ZERO(currentfolderindex); + ZERO(currentDirIndex); // Start at root folder while (!filelist.isAtRootDir()) filelist.upDir(); @@ -85,9 +85,9 @@ void FileNavigator::refresh() { filelist.refresh(); } void FileNavigator::changeDIR(const char *folder) { if (folderdepth >= MAX_FOLDER_DEPTH) return; // limit the folder depth - currentfolderindex[folderdepth] = currentindex; - strcat(currentfoldername, folder); - strcat(currentfoldername, "/"); + currentDirIndex[folderdepth] = currentindex; + strcat(currentDirPath, folder); + strcat(currentDirPath, "/"); filelist.changeDir(folder); folderdepth++; currentindex = 0; @@ -97,15 +97,15 @@ void FileNavigator::upDIR() { if (!filelist.isAtRootDir()) { filelist.upDir(); folderdepth--; - currentindex = currentfolderindex[folderdepth]; // restore last position in the folder + currentindex = currentDirIndex[folderdepth]; // restore last position in the folder filelist.seek(currentindex); // restore file information } // Remove the child folder from the stored path if (folderdepth == 0) - currentfoldername[0] = '\0'; + currentDirPath[0] = '\0'; else { - char * const pos = strchr(currentfoldername, '/'); + char * const pos = strchr(currentDirPath, '/'); *(pos + 1) = '\0'; } } @@ -151,7 +151,7 @@ void FileNavigator::skiptofileindex(uint16_t skip) { // The new panel ignores entries that don't end in .GCO or .gcode so add and pad them. if (paneltype <= AC_panel_new) { TFTSer.println("<<.GCO"); - Chiron.SendtoTFTLN(F(".. .gcode")); + chiron.tftSendLn(F(".. .gcode")); } else { TFTSer.println("<<"); @@ -186,7 +186,7 @@ void FileNavigator::skiptofileindex(uint16_t skip) { } else { // Not DIR TFTSer.write('/'); - if (folderdepth > 0) TFTSer.print(currentfoldername); + if (folderdepth > 0) TFTSer.print(currentDirPath); TFTSer.println(filelist.shortFilename()); TFTSer.print(filelist.longFilename()); @@ -233,9 +233,9 @@ void FileNavigator::skiptofileindex(uint16_t skip) { void FileNavigator::sendFile(panel_type_t paneltype) { TFTSer.write('/'); - if (folderdepth > 0) TFTSer.print(currentfoldername); + if (folderdepth > 0) TFTSer.print(currentDirPath); TFTSer.println(filelist.shortFilename()); - if (folderdepth > 0) TFTSer.print(currentfoldername); + if (folderdepth > 0) TFTSer.print(currentDirPath); TFTSer.println(filelist.longFilename()); } diff --git a/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.h b/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.h index 71236c4df957..f4fad9665314 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.h +++ b/Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.h @@ -52,8 +52,8 @@ namespace Anycubic { static uint16_t lastpanelindex; static uint16_t currentindex; static uint8_t folderdepth; - static uint16_t currentfolderindex[MAX_FOLDER_DEPTH]; - static char currentfoldername[MAX_PATH_LEN + 1]; + static uint16_t currentDirIndex[MAX_FOLDER_DEPTH]; + static char currentDirPath[MAX_PATH_LEN + 1]; }; extern FileNavigator filenavigator; diff --git a/Marlin/src/lcd/extui/anycubic_chiron/chiron_extui.cpp b/Marlin/src/lcd/extui/anycubic_chiron/chiron_extui.cpp index 520ca587e335..27ee4689ba12 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/chiron_extui.cpp +++ b/Marlin/src/lcd/extui/anycubic_chiron/chiron_extui.cpp @@ -37,17 +37,17 @@ using namespace Anycubic; namespace ExtUI { - void onStartup() { Chiron.Startup(); } + void onStartup() { chiron.startup(); } - void onIdle() { Chiron.IdleLoop(); } + void onIdle() { chiron.idleLoop(); } void onPrinterKilled(FSTR_P const error, FSTR_P const component) { - Chiron.PrinterKilled(error, component); + chiron.printerKilled(error, component); } - void onMediaInserted() { Chiron.MediaEvent(AC_media_inserted); } - void onMediaError() { Chiron.MediaEvent(AC_media_error); } - void onMediaRemoved() { Chiron.MediaEvent(AC_media_removed); } + void onMediaInserted() { chiron.mediaEvent(AC_media_inserted); } + void onMediaError() { chiron.mediaEvent(AC_media_error); } + void onMediaRemoved() { chiron.mediaEvent(AC_media_removed); } void onPlayTone(const uint16_t frequency, const uint16_t duration) { #if ENABLED(SPEAKER) @@ -55,15 +55,15 @@ namespace ExtUI { #endif } - void onPrintTimerStarted() { Chiron.TimerEvent(AC_timer_started); } - void onPrintTimerPaused() { Chiron.TimerEvent(AC_timer_paused); } - void onPrintTimerStopped() { Chiron.TimerEvent(AC_timer_stopped); } + void onPrintTimerStarted() { chiron.timerEvent(AC_timer_started); } + void onPrintTimerPaused() { chiron.timerEvent(AC_timer_paused); } + void onPrintTimerStopped() { chiron.timerEvent(AC_timer_stopped); } void onPrintDone() {} - void onFilamentRunout(const extruder_t) { Chiron.FilamentRunout(); } + void onFilamentRunout(const extruder_t) { chiron.filamentRunout(); } - void onUserConfirmRequired(const char * const msg) { Chiron.ConfirmationRequest(msg); } - void onStatusChanged(const char * const msg) { Chiron.StatusChange(msg); } + void onUserConfirmRequired(const char * const msg) { chiron.confirmationRequest(msg); } + void onStatusChanged(const char * const msg) { chiron.statusChange(msg); } void onHomingStart() {} void onHomingDone() {} @@ -127,7 +127,7 @@ namespace ExtUI { // Called when power-loss state is detected } // Called on resume from power-loss - void onPowerLossResume() { Chiron.PowerLossRecovery(); } + void onPowerLossResume() { chiron.powerLossRecovery(); } #endif #if HAS_PID_HEATING diff --git a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp index f3bc64a02498..bcf78746a240 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp +++ b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp @@ -42,9 +42,13 @@ #include "../../../libs/numtostr.h" #include "../../../MarlinCore.h" +#define DEBUG_OUT ACDEBUGLEVEL +#include "../../../core/debug_out.h" + namespace Anycubic { -ChironTFT Chiron; +ChironTFT chiron; + #if AUTO_DETECT_CHIRON_TFT panel_type_t ChironTFT::panel_type = AC_panel_unknown; #endif @@ -60,7 +64,7 @@ uint8_t ChironTFT::command_len; float ChironTFT::live_Zoffset; file_menu_t ChironTFT::file_menu; -void ChironTFT::Startup() { +void ChironTFT::startup() { selectedfile[0] = '\0'; panel_command[0] = '\0'; command_len = 0; @@ -92,73 +96,73 @@ void ChironTFT::Startup() { break; default: SERIAL_ECHOLNF(AC_msg_auto_panel_detection); - DetectPanelType(); + detectPanelType(); break; } // Signal Board has reset - SendtoTFTLN(AC_msg_main_board_has_reset); + tftSendLn(AC_msg_main_board_has_reset); // Enable leveling and Disable end stops during print // as Z home places nozzle above the bed so we need to allow it past the end stops injectCommands(AC_cmnd_enable_leveling); - // Startup tunes are defined in Tunes.h + // startup tunes are defined in Tunes.h PlayTune(TERN(AC_DEFAULT_STARTUP_TUNE, Anycubic_PowerOn, GB_PowerOn)); #if ACDEBUGLEVEL - SERIAL_ECHOLNPGM("AC Debug Level ", ACDEBUGLEVEL); + DEBUG_ECHOLNPGM("AC Debug Level ", ACDEBUGLEVEL); #endif - SendtoTFTLN(AC_msg_ready); + tftSendLn(AC_msg_ready); } -void ChironTFT::DetectPanelType() { +void ChironTFT::detectPanelType() { #if AUTO_DETECT_CHIRON_TFT // Send a query to the TFT - SendtoTFTLN(AC_Test_for_OldPanel); // The panel will respond with 'SXY 480 320' - SendtoTFTLN(AC_Test_for_NewPanel); // the panel will respond with '[0]=0 ' to '[19]=0 ' + tftSendLn(AC_Test_for_OldPanel); // The panel will respond with 'SXY 480 320' + tftSendLn(AC_Test_for_NewPanel); // the panel will respond with '[0]=0 ' to '[19]=0 ' #endif } -void ChironTFT::IdleLoop() { - if (ReadTFTCommand()) { - ProcessPanelRequest(); +void ChironTFT::idleLoop() { + if (readTFTCommand()) { + processPanelRequest(); command_len = 0; } - CheckHeaters(); + checkHeaters(); } -void ChironTFT::PrinterKilled(FSTR_P const error, FSTR_P const component) { - SendtoTFTLN(AC_msg_kill_lcd); +void ChironTFT::printerKilled(FSTR_P const error, FSTR_P const component) { + tftSendLn(AC_msg_kill_lcd); #if ACDEBUG(AC_MARLIN) - SERIAL_ECHOLNPGM("PrinterKilled()\nerror: ", error , "\ncomponent: ", component); + DEBUG_ECHOLNPGM("printerKilled()\nerror: ", error , "\ncomponent: ", component); #endif } -void ChironTFT::MediaEvent(media_event_t event) { +void ChironTFT::mediaEvent(media_event_t event) { #if ACDEBUG(AC_MARLIN) - SERIAL_ECHOLNPGM("ProcessMediaStatus() ", event); + DEBUG_ECHOLNPGM("ProcessMediaStatus() ", event); #endif switch (event) { case AC_media_inserted: - SendtoTFTLN(AC_msg_sd_card_inserted); + tftSendLn(AC_msg_sd_card_inserted); break; case AC_media_removed: - SendtoTFTLN(AC_msg_sd_card_removed); + tftSendLn(AC_msg_sd_card_removed); break; case AC_media_error: last_error = AC_error_noSD; - SendtoTFTLN(AC_msg_no_sd_card); + tftSendLn(AC_msg_no_sd_card); break; } } -void ChironTFT::TimerEvent(timer_event_t event) { +void ChironTFT::timerEvent(timer_event_t event) { #if ACDEBUG(AC_MARLIN) - SERIAL_ECHOLNPGM("TimerEvent() ", event); - SERIAL_ECHOLNPGM("Printer State: ", printer_state); + DEBUG_ECHOLNPGM("timerEvent() ", event); + DEBUG_ECHOLNPGM("Printer State: ", printer_state); #endif switch (event) { @@ -166,44 +170,44 @@ void ChironTFT::TimerEvent(timer_event_t event) { live_Zoffset = 0.0; // reset print offset setSoftEndstopState(false); // disable endstops to print printer_state = AC_printer_printing; - SendtoTFTLN(AC_msg_print_from_sd_card); + tftSendLn(AC_msg_print_from_sd_card); } break; case AC_timer_paused: { printer_state = AC_printer_paused; pause_state = AC_paused_idle; - SendtoTFTLN(AC_msg_paused); + tftSendLn(AC_msg_paused); } break; case AC_timer_stopped: { if (printer_state != AC_printer_idle) { printer_state = AC_printer_stopping; - SendtoTFTLN(AC_msg_print_complete); + tftSendLn(AC_msg_print_complete); } setSoftEndstopState(true); // enable endstops } break; } } -void ChironTFT::FilamentRunout() { +void ChironTFT::filamentRunout() { #if ACDEBUG(AC_MARLIN) - SERIAL_ECHOLNPGM("FilamentRunout() printer_state ", printer_state); + DEBUG_ECHOLNPGM("filamentRunout() printer_state ", printer_state); #endif // 1 Signal filament out last_error = AC_error_filament_runout; - SendtoTFTLN(isPrintingFromMedia() ? AC_msg_filament_out_alert : AC_msg_filament_out_block); + tftSendLn(isPrintingFromMedia() ? AC_msg_filament_out_alert : AC_msg_filament_out_block); PlayTune(FilamentOut); } -void ChironTFT::ConfirmationRequest(const char * const msg) { +void ChironTFT::confirmationRequest(const char * const msg) { // M108 continue #if ACDEBUG(AC_MARLIN) - SERIAL_ECHOLNPGM("ConfirmationRequest() ", msg, " printer_state:", printer_state); + DEBUG_ECHOLNPGM("confirmationRequest() ", msg, " printer_state:", printer_state); #endif switch (printer_state) { case AC_printer_pausing: { if (strcmp_P(msg, MARLIN_msg_print_paused) == 0 || strcmp_P(msg, MARLIN_msg_nozzle_parked) == 0) { - SendtoTFTLN(AC_msg_paused); // enable continue button + tftSendLn(AC_msg_paused); // enable continue button printer_state = AC_printer_paused; } } break; @@ -214,18 +218,18 @@ void ChironTFT::ConfirmationRequest(const char * const msg) { // Heater timeout, send acknowledgement if (strcmp_P(msg, MARLIN_msg_heater_timeout) == 0) { pause_state = AC_paused_heater_timed_out; - SendtoTFTLN(AC_msg_paused); // enable continue button + tftSendLn(AC_msg_paused); // enable continue button PlayTune(HeaterTimeout); } // Reheat finished, send acknowledgement else if (strcmp_P(msg, MARLIN_msg_reheat_done) == 0) { pause_state = AC_paused_idle; - SendtoTFTLN(AC_msg_paused); // enable continue button + tftSendLn(AC_msg_paused); // enable continue button } // Filament Purging, send acknowledgement enter run mode else if (strcmp_P(msg, MARLIN_msg_filament_purging) == 0) { pause_state = AC_paused_purging_filament; - SendtoTFTLN(AC_msg_paused); // enable continue button + tftSendLn(AC_msg_paused); // enable continue button } } break; default: @@ -233,10 +237,10 @@ void ChironTFT::ConfirmationRequest(const char * const msg) { } } -void ChironTFT::StatusChange(const char * const msg) { +void ChironTFT::statusChange(const char * const msg) { #if ACDEBUG(AC_MARLIN) - SERIAL_ECHOLNPGM("StatusChange() ", msg); - SERIAL_ECHOLNPGM("printer_state:", printer_state); + DEBUG_ECHOLNPGM("statusChange() ", msg); + DEBUG_ECHOLNPGM("printer_state:", printer_state); #endif bool msg_matched = false; // The only way to get printer status is to parse messages @@ -247,7 +251,7 @@ void ChironTFT::StatusChange(const char * const msg) { // Ignore the custom machine name if (strcmp_P(msg + strlen(MACHINE_NAME), MARLIN_msg_ready) == 0) { injectCommands(F("M500\nG27")); - SendtoTFTLN(AC_msg_probing_complete); + tftSendLn(AC_msg_probing_complete); printer_state = AC_printer_idle; msg_matched = true; } @@ -255,7 +259,7 @@ void ChironTFT::StatusChange(const char * const msg) { if (strcmp_P(msg, MARLIN_msg_probing_failed) == 0) { PlayTune(BeepBeepBeeep); injectCommands(F("G1 Z50 F500")); - SendtoTFTLN(AC_msg_probing_complete); + tftSendLn(AC_msg_probing_complete); printer_state = AC_printer_idle; msg_matched = true; } @@ -263,14 +267,14 @@ void ChironTFT::StatusChange(const char * const msg) { case AC_printer_printing: { if (strcmp_P(msg, MARLIN_msg_reheating) == 0) { - SendtoTFTLN(AC_msg_paused); // enable continue button + tftSendLn(AC_msg_paused); // enable continue button msg_matched = true; } } break; case AC_printer_pausing: { if (strcmp_P(msg, MARLIN_msg_print_paused) == 0) { - SendtoTFTLN(AC_msg_paused); + tftSendLn(AC_msg_paused); printer_state = AC_printer_paused; pause_state = AC_paused_idle; msg_matched = true; @@ -279,7 +283,7 @@ void ChironTFT::StatusChange(const char * const msg) { case AC_printer_stopping: { if (strcmp_P(msg, MARLIN_msg_print_aborted) == 0) { - SendtoTFTLN(AC_msg_stop); + tftSendLn(AC_msg_stop); printer_state = AC_printer_idle; msg_matched = true; } @@ -291,11 +295,11 @@ void ChironTFT::StatusChange(const char * const msg) { // If not matched earlier see if this was a heater message if (!msg_matched) { if (strcmp_P(msg, MARLIN_msg_extruder_heating) == 0) { - SendtoTFTLN(AC_msg_nozzle_heating); + tftSendLn(AC_msg_nozzle_heating); hotend_state = AC_heater_temp_set; } else if (strcmp_P(msg, MARLIN_msg_bed_heating) == 0) { - SendtoTFTLN(AC_msg_bed_heating); + tftSendLn(AC_msg_bed_heating); hotbed_state = AC_heater_temp_set; } else if (strcmp_P(msg, MARLIN_msg_EEPROM_version) == 0) { @@ -304,33 +308,33 @@ void ChironTFT::StatusChange(const char * const msg) { } } -void ChironTFT::PowerLossRecovery() { +void ChironTFT::powerLossRecovery() { printer_state = AC_printer_resuming_from_power_outage; // Play tune to notify user we can recover. last_error = AC_error_powerloss; PlayTune(SOS); SERIAL_ECHOLNF(AC_msg_powerloss_recovery); } -void ChironTFT::PrintComplete() { - SendtoTFT(AC_msg_print_complete); +void ChironTFT::printComplete() { + tftSend(AC_msg_print_complete); printer_state = AC_printer_idle; setSoftEndstopState(true); // enable endstops } -void ChironTFT::SendtoTFT(FSTR_P const fstr/*=nullptr*/) { // A helper to print PROGMEM string to the panel +void ChironTFT::tftSend(FSTR_P const fstr/*=nullptr*/) { // A helper to print PROGMEM string to the panel #if ACDEBUG(AC_SOME) - SERIAL_ECHOF(fstr); + DEBUG_ECHOF(fstr); #endif PGM_P str = FTOP(fstr); while (const char c = pgm_read_byte(str++)) TFTSer.write(c); } -void ChironTFT::SendtoTFTLN(FSTR_P const fstr/*=nullptr*/) { +void ChironTFT::tftSendLn(FSTR_P const fstr/*=nullptr*/) { if (fstr) { #if ACDEBUG(AC_SOME) - SERIAL_ECHOPGM("> "); + DEBUG_ECHOPGM("> "); #endif - SendtoTFT(fstr); + tftSend(fstr); #if ACDEBUG(AC_SOME) SERIAL_EOL(); #endif @@ -338,7 +342,7 @@ void ChironTFT::SendtoTFTLN(FSTR_P const fstr/*=nullptr*/) { TFTSer.println(); } -bool ChironTFT::ReadTFTCommand() { +bool ChironTFT::readTFTCommand() { bool command_ready = false; while (TFTSer.available() > 0 && command_len < MAX_CMND_LEN) { panel_command[command_len] = TFTSer.read(); @@ -352,29 +356,29 @@ bool ChironTFT::ReadTFTCommand() { if (command_ready || command_len == MAX_CMND_LEN) { panel_command[command_len] = '\0'; #if ACDEBUG(AC_ALL) - SERIAL_ECHOLNPGM("len(",command_len,") < ", panel_command); + DEBUG_ECHOLNPGM("len(",command_len,") < ", panel_command); #endif command_ready = true; } return command_ready; } -int8_t ChironTFT::FindToken(char c) { +int8_t ChironTFT::findToken(char c) { for (int8_t pos = 0; pos < command_len; pos++) { if (panel_command[pos] == c) { #if ACDEBUG(AC_INFO) - SERIAL_ECHOLNPGM("Tpos:", pos, " ", c); + DEBUG_ECHOLNPGM("Tpos:", pos, " ", c); #endif return pos; } } #if ACDEBUG(AC_INFO) - SERIAL_ECHOLNPGM("Not found: ", c); + DEBUG_ECHOLNPGM("Not found: ", c); #endif return -1; } -void ChironTFT::CheckHeaters() { +void ChironTFT::checkHeaters() { uint8_t faultDuration = 0; // if the hotend temp is abnormal, confirm state before signalling panel @@ -382,7 +386,7 @@ void ChironTFT::CheckHeaters() { while (!WITHIN(temp, HEATER_0_MINTEMP, HEATER_0_MAXTEMP)) { faultDuration++; if (faultDuration >= AC_HEATER_FAULT_VALIDATION_TIME) { - SendtoTFTLN(AC_msg_nozzle_temp_abnormal); + tftSendLn(AC_msg_nozzle_temp_abnormal); last_error = AC_error_abnormal_temp_t0; SERIAL_ECHOLNPGM("Extruder temp abnormal! : ", temp); break; @@ -397,7 +401,7 @@ void ChironTFT::CheckHeaters() { while (!WITHIN(temp, BED_MINTEMP, BED_MAXTEMP)) { faultDuration++; if (faultDuration >= AC_HEATER_FAULT_VALIDATION_TIME) { - SendtoTFTLN(AC_msg_nozzle_temp_abnormal); + tftSendLn(AC_msg_nozzle_temp_abnormal); last_error = AC_error_abnormal_temp_bed; SERIAL_ECHOLNPGM("Bed temp abnormal! : ", temp); break; @@ -409,7 +413,7 @@ void ChironTFT::CheckHeaters() { // Update panel with hotend heater status if (hotend_state != AC_heater_temp_reached) { if (WITHIN(getActualTemp_celsius(E0) - getTargetTemp_celsius(E0), -(TEMP_WINDOW), TEMP_WINDOW)) { - SendtoTFTLN(AC_msg_nozzle_heating_done); + tftSendLn(AC_msg_nozzle_heating_done); hotend_state = AC_heater_temp_reached; } } @@ -417,23 +421,23 @@ void ChironTFT::CheckHeaters() { // Update panel with bed heater status if (hotbed_state != AC_heater_temp_reached) { if (WITHIN(getActualTemp_celsius(BED) - getTargetTemp_celsius(BED), -(TEMP_BED_WINDOW), TEMP_BED_WINDOW)) { - SendtoTFTLN(AC_msg_bed_heating_done); + tftSendLn(AC_msg_bed_heating_done); hotbed_state = AC_heater_temp_reached; } } } -void ChironTFT::SendFileList(int8_t startindex) { +void ChironTFT::sendFileList(int8_t startindex) { // Respond to panel request for 4 files starting at index #if ACDEBUG(AC_INFO) - SERIAL_ECHOLNPGM("## SendFileList ## ", startindex); + DEBUG_ECHOLNPGM("## sendFileList ## ", startindex); #endif - SendtoTFTLN(F("FN ")); + tftSendLn(F("FN ")); filenavigator.getFiles(startindex, panel_type, 4); - SendtoTFTLN(F("END")); + tftSendLn(F("END")); } -void ChironTFT::SelectFile() { +void ChironTFT::selectFile() { if (panel_type <= AC_panel_new) { strncpy(selectedfile, panel_command + 4, command_len - 3); selectedfile[command_len - 4] = '\0'; @@ -443,50 +447,50 @@ void ChironTFT::SelectFile() { selectedfile[command_len - 5] = '\0'; } #if ACDEBUG(AC_FILE) - SERIAL_ECHOLNPGM(" Selected File: ",selectedfile); + DEBUG_ECHOLNPGM(" Selected File: ",selectedfile); #endif switch (selectedfile[0]) { case '/': // Valid file selected - SendtoTFTLN(AC_msg_sd_file_open_success); + tftSendLn(AC_msg_sd_file_open_success); break; case '<': // .. (go up folder level) filenavigator.upDIR(); - SendtoTFTLN(AC_msg_sd_file_open_failed); - SendFileList( 0 ); + tftSendLn(AC_msg_sd_file_open_failed); + sendFileList( 0 ); break; default: // enter sub folder // for new panel remove the '.GCO' tag that was added to the end of the path if (panel_type <= AC_panel_new) selectedfile[strlen(selectedfile) - 4] = '\0'; filenavigator.changeDIR(selectedfile); - SendtoTFTLN(AC_msg_sd_file_open_failed); - SendFileList( 0 ); + tftSendLn(AC_msg_sd_file_open_failed); + sendFileList( 0 ); break; } } -void ChironTFT::ProcessPanelRequest() { +void ChironTFT::processPanelRequest() { // Break these up into logical blocks // as its easier to navigate than one huge switch case! - int8_t tpos = FindToken('A'); + int8_t tpos = findToken('A'); // Panel request are 'A0' - 'A36' if (tpos >= 0) { const int8_t req = atoi(&panel_command[tpos + 1]); // Information requests A0 - A8 and A33 - if (req <= 8 || req == 33) PanelInfo(req); + if (req <= 8 || req == 33) panelInfo(req); // Simple Actions A9 - A28 - else if (req <= 28) PanelAction(req); + else if (req <= 28) panelAction(req); // Process Initiation - else if (req <= 36) PanelProcess(req); + else if (req <= 36) panelProcess(req); } else { #if AUTO_DETECT_CHIRON_TFT // This may be a response to a panel type detection query if (panel_type == AC_panel_unknown) { - tpos = FindToken('S'); // old panel will respond to 'SIZE' with 'SXY 480 320' + tpos = findToken('S'); // old panel will respond to 'SIZE' with 'SXY 480 320' if (tpos >= 0) { if (panel_command[tpos + 1] == 'X' && panel_command[tpos + 2] =='Y') { panel_type = AC_panel_standard; @@ -496,7 +500,7 @@ void ChironTFT::ProcessPanelRequest() { else { // new panel will respond to 'J200' with '[0]=0' // it seems only after a power cycle so detection assumes a new panel - tpos = FindToken('['); + tpos = findToken('['); if (tpos >= 0) { if (panel_command[tpos + 1] == '0' && panel_command[tpos + 2] ==']') { panel_type = AC_panel_new; @@ -508,94 +512,94 @@ void ChironTFT::ProcessPanelRequest() { } #endif - SendtoTFTLN(); // Ignore unknown requests + tftSendLn(); // Ignore unknown requests } } -void ChironTFT::PanelInfo(uint8_t req) { +void ChironTFT::panelInfo(uint8_t req) { // information requests A0-A8 and A33 switch (req) { case 0: // A0 Get HOTEND Temp - SendtoTFT(F("A0V ")); + tftSend(F("A0V ")); TFTSer.println(getActualTemp_celsius(E0)); break; case 1: // A1 Get HOTEND Target Temp - SendtoTFT(F("A1V ")); + tftSend(F("A1V ")); TFTSer.println(getTargetTemp_celsius(E0)); break; case 2: // A2 Get BED Temp - SendtoTFT(F("A2V ")); + tftSend(F("A2V ")); TFTSer.println(getActualTemp_celsius(BED)); break; case 3: // A3 Get BED Target Temp - SendtoTFT(F("A3V ")); + tftSend(F("A3V ")); TFTSer.println(getTargetTemp_celsius(BED)); break; case 4: // A4 Get FAN Speed - SendtoTFT(F("A4V ")); + tftSend(F("A4V ")); TFTSer.println(getActualFan_percent(FAN0)); break; case 5: // A5 Get Current Coordinates - SendtoTFT(F("A5V X: ")); + tftSend(F("A5V X: ")); TFTSer.print(getAxisPosition_mm(X)); - SendtoTFT(F(" Y: ")); + tftSend(F(" Y: ")); TFTSer.print(getAxisPosition_mm(Y)); - SendtoTFT(F(" Z: ")); + tftSend(F(" Z: ")); TFTSer.println(getAxisPosition_mm(Z)); break; case 6: // A6 Get printing progress if (isPrintingFromMedia()) { - SendtoTFT(F("A6V ")); + tftSend(F("A6V ")); TFTSer.println(ui8tostr2(getProgress_percent())); } else - SendtoTFTLN(F("A6V ---")); + tftSendLn(F("A6V ---")); break; case 7: { // A7 Get Printing Time uint32_t time = getProgress_seconds_elapsed() / 60; - SendtoTFT(F("A7V ")); + tftSend(F("A7V ")); TFTSer.print(ui8tostr2(time / 60)); - SendtoTFT(F(" H ")); + tftSend(F(" H ")); TFTSer.print(ui8tostr2(time % 60)); - SendtoTFT(F(" M")); + tftSend(F(" M")); #if ACDEBUG(AC_ALL) - SERIAL_ECHOLNPGM("Print time ", ui8tostr2(time / 60), ":", ui8tostr2(time % 60)); + DEBUG_ECHOLNPGM("Print time ", ui8tostr2(time / 60), ":", ui8tostr2(time % 60)); #endif } break; case 8: // A8 Get SD Card list A8 S0 if (!isMediaInserted()) safe_delay(500); if (!isMediaInserted()) // Make sure the card is removed - SendtoTFTLN(AC_msg_no_sd_card); + tftSendLn(AC_msg_no_sd_card); else if (panel_command[3] == 'S') - SendFileList( atoi( &panel_command[4] ) ); + sendFileList( atoi( &panel_command[4] ) ); break; case 33: // A33 Get firmware info - SendtoTFT(F("J33 ")); + tftSend(F("J33 ")); // If there is an error recorded, show that instead of the FW version - if (!GetLastError()) SendtoTFTLN(F(SHORT_BUILD_VERSION)); + if (!getLastError()) tftSendLn(F(SHORT_BUILD_VERSION)); break; } } -void ChironTFT::PanelAction(uint8_t req) { +void ChironTFT::panelAction(uint8_t req) { switch (req) { case 9: // A9 Pause SD print if (isPrintingFromMedia()) { - SendtoTFTLN(AC_msg_pause); + tftSendLn(AC_msg_pause); pausePrint(); printer_state = AC_printer_pausing; } else - SendtoTFTLN(AC_msg_stop); + tftSendLn(AC_msg_stop); break; case 10: // A10 Resume SD Print @@ -613,7 +617,7 @@ void ChironTFT::PanelAction(uint8_t req) { else { if (printer_state == AC_printer_resuming_from_power_outage) injectCommands(F("M1000 C")); // Cancel recovery - SendtoTFTLN(AC_msg_stop); + tftSendLn(AC_msg_stop); printer_state = AC_printer_idle; } break; @@ -623,7 +627,7 @@ void ChironTFT::PanelAction(uint8_t req) { break; case 13: // A13 Select file - SelectFile(); + selectFile(); break; case 14: // A14 Start Printing @@ -632,11 +636,9 @@ void ChironTFT::PanelAction(uint8_t req) { injectCommands(F("M1000 C")); // Cancel recovery printer_state = AC_printer_idle; } - #if ACDebugLevel >= 1 - SERIAL_ECHOLNPGM("Print: ", selectedfile); - #endif + DEBUG_ECHOLNPGM("Print: ", selectedfile); printFile(selectedfile); - SendtoTFTLN(AC_msg_print_from_sd_card); + tftSendLn(AC_msg_print_from_sd_card); break; case 15: // A15 Resuming from outage @@ -671,7 +673,7 @@ void ChironTFT::PanelAction(uint8_t req) { case 19: // A19 Motors off if (!isPrinting()) { stepper.disable_all_steppers(); - SendtoTFTLN(AC_msg_ready); + tftSendLn(AC_msg_ready); } break; @@ -679,7 +681,7 @@ void ChironTFT::PanelAction(uint8_t req) { if (panel_command[4] == 'S') setFeedrate_percent(atoi(&panel_command[5])); else { - SendtoTFT(F("A20V ")); + tftSend(F("A20V ")); TFTSer.println(getFeedrate_percent()); } break; @@ -707,7 +709,7 @@ void ChironTFT::PanelAction(uint8_t req) { char MoveCmnd[30]; sprintf_P(MoveCmnd, PSTR("G91\nG0%s\nG90"), panel_command + 3); #if ACDEBUG(AC_ACTION) - SERIAL_ECHOLNPGM("Move: ", MoveCmnd); + DEBUG_ECHOLNPGM("Move: ", MoveCmnd); #endif setSoftEndstopState(true); // enable endstops injectCommands(MoveCmnd); @@ -720,7 +722,7 @@ void ChironTFT::PanelAction(uint8_t req) { // Temps defined in configuration.h setTargetTemp_celsius(PREHEAT_1_TEMP_BED, BED); setTargetTemp_celsius(PREHEAT_1_TEMP_HOTEND, E0); - SendtoTFTLN(); + tftSendLn(); hotbed_state = AC_heater_temp_set; hotend_state = AC_heater_temp_set; } @@ -731,7 +733,7 @@ void ChironTFT::PanelAction(uint8_t req) { if (!isPrinting()) { setTargetTemp_celsius(PREHEAT_2_TEMP_BED, BED); setTargetTemp_celsius(PREHEAT_2_TEMP_HOTEND, E0); - SendtoTFTLN(); + tftSendLn(); hotbed_state = AC_heater_temp_set; hotend_state = AC_heater_temp_set; } @@ -742,7 +744,7 @@ void ChironTFT::PanelAction(uint8_t req) { if (!isPrinting()) { setTargetTemp_celsius(0, E0); setTargetTemp_celsius(0, BED); - SendtoTFTLN(AC_msg_ready); + tftSendLn(AC_msg_ready); hotbed_state = AC_heater_off; hotend_state = AC_heater_off; } @@ -761,21 +763,21 @@ void ChironTFT::PanelAction(uint8_t req) { case 28: // A28 Filament set A28 O/C // Ignore request if printing if (isPrinting()) break; - SendtoTFTLN(); + tftSendLn(); break; } } -void ChironTFT::PanelProcess(uint8_t req) { +void ChironTFT::panelProcess(uint8_t req) { switch (req) { case 29: { // A29 Read Mesh Point A29 X1 Y1 xy_uint8_t pos; float pos_z; - pos.x = atoi(&panel_command[FindToken('X')+1]); - pos.y = atoi(&panel_command[FindToken('Y')+1]); + pos.x = atoi(&panel_command[findToken('X')+1]); + pos.y = atoi(&panel_command[findToken('Y')+1]); pos_z = getMeshPoint(pos); - SendtoTFT(F("A29V ")); + tftSend(F("A29V ")); TFTSer.println(pos_z * 100); if (!isPrinting()) { setSoftEndstopState(true); // disable endstops @@ -786,7 +788,7 @@ void ChironTFT::PanelProcess(uint8_t req) { if (isPositionKnown()) { #if ACDEBUG(AC_INFO) - SERIAL_ECHOLNPGM("Moving to mesh point at x: ", pos.x, " y: ", pos.y, " z: ", pos_z); + DEBUG_ECHOLNPGM("Moving to mesh point at x: ", pos.x, " y: ", pos.y, " z: ", pos_z); #endif // Go up before moving setAxisPosition_mm(3.0,Z); @@ -795,7 +797,7 @@ void ChironTFT::PanelProcess(uint8_t req) { setAxisPosition_mm(20 + (93 * pos.y), Y); setAxisPosition_mm(0.0, Z); #if ACDEBUG(AC_INFO) - SERIAL_ECHOLNPGM("Current Z: ", getAxisPosition_mm(Z)); + DEBUG_ECHOLNPGM("Current Z: ", getAxisPosition_mm(Z)); #endif } } @@ -805,24 +807,24 @@ void ChironTFT::PanelProcess(uint8_t req) { } break; case 30: // A30 Auto leveling - if (FindToken('S') >= 0) { // Start probing New panel adds spaces.. + if (findToken('S') >= 0) { // Start probing New panel adds spaces.. // Ignore request if printing if (isPrinting()) - SendtoTFTLN(AC_msg_probing_not_allowed); // forbid auto leveling + tftSendLn(AC_msg_probing_not_allowed); // forbid auto leveling else { - SendtoTFTLN(AC_msg_start_probing); + tftSendLn(AC_msg_start_probing); injectCommands(F("G28\nG29")); printer_state = AC_printer_probing; } } else - SendtoTFTLN(AC_msg_start_probing); // Just enter levelling menu + tftSendLn(AC_msg_start_probing); // Just enter levelling menu break; case 31: // A31 Adjust all Probe Points // The tokens can occur in different places on the new panel so we need to find it. - if (FindToken('C') >= 0) { // Restore and apply original offsets + if (findToken('C') >= 0) { // Restore and apply original offsets if (!isPrinting()) { injectCommands(F("M501\nM420 S1")); selectedmeshpoint.x = selectedmeshpoint.y = 99; @@ -830,7 +832,7 @@ void ChironTFT::PanelProcess(uint8_t req) { } } - else if (FindToken('D') >= 0) { // Save Z Offset tables and restore leveling state + else if (findToken('D') >= 0) { // Save Z Offset tables and restore leveling state if (!isPrinting()) { setAxisPosition_mm(1.0,Z); // Lift nozzle before any further movements are made injectCommands(F("M500")); @@ -839,8 +841,8 @@ void ChironTFT::PanelProcess(uint8_t req) { } } - else if (FindToken('G') >= 0) { // Get current offset - SendtoTFT(F("A31V ")); + else if (findToken('G') >= 0) { // Get current offset + tftSend(F("A31V ")); // When printing use the live z Offset position // we will use babystepping to move the print head if (isPrinting()) @@ -852,7 +854,7 @@ void ChironTFT::PanelProcess(uint8_t req) { } else { - int8_t tokenpos = FindToken('S'); + int8_t tokenpos = findToken('S'); if (tokenpos >= 0) { // Set offset (adjusts all points by value) float Zshift = atof(&panel_command[tokenpos+1]); setSoftEndstopState(false); // disable endstops @@ -860,22 +862,22 @@ void ChironTFT::PanelProcess(uint8_t req) { // From the leveling panel use the all points UI to adjust the print pos. if (isPrinting()) { #if ACDEBUG(AC_INFO) - SERIAL_ECHOLNPGM("Change Zoffset from:", live_Zoffset, " to ", live_Zoffset + Zshift); + DEBUG_ECHOLNPGM("Change Zoffset from:", live_Zoffset, " to ", live_Zoffset + Zshift); #endif if (isAxisPositionKnown(Z)) { #if ACDEBUG(AC_INFO) const float currZpos = getAxisPosition_mm(Z); - SERIAL_ECHOLNPGM("Nudge Z pos from ", currZpos, " to ", currZpos + constrain(Zshift, -0.05, 0.05)); + DEBUG_ECHOLNPGM("Nudge Z pos from ", currZpos, " to ", currZpos + constrain(Zshift, -0.05, 0.05)); #endif // Use babystepping to adjust the head position int16_t steps = mmToWholeSteps(constrain(Zshift,-0.05,0.05), Z); #if ACDEBUG(AC_INFO) - SERIAL_ECHOLNPGM("Steps to move Z: ", steps); + DEBUG_ECHOLNPGM("Steps to move Z: ", steps); #endif babystepAxis_steps(steps, Z); live_Zoffset += Zshift; } - SendtoTFT(F("A31V ")); + tftSend(F("A31V ")); TFTSer.println(live_Zoffset); } else { @@ -884,23 +886,23 @@ void ChironTFT::PanelProcess(uint8_t req) { const float currval = getMeshPoint(pos); setMeshPoint(pos, constrain(currval + Zshift, AC_LOWEST_MESHPOINT_VAL, 2)); #if ACDEBUG(AC_INFO) - SERIAL_ECHOLNPGM("Change mesh point X", x," Y",y ," from ", currval, " to ", getMeshPoint(pos) ); + DEBUG_ECHOLNPGM("Change mesh point X", x," Y",y ," from ", currval, " to ", getMeshPoint(pos) ); #endif } const float currZOffset = getZOffset_mm(); #if ACDEBUG(AC_INFO) - SERIAL_ECHOLNPGM("Change probe offset from ", currZOffset, " to ", currZOffset + Zshift); + DEBUG_ECHOLNPGM("Change probe offset from ", currZOffset, " to ", currZOffset + Zshift); #endif setZOffset_mm(currZOffset + Zshift); - SendtoTFT(F("A31V ")); + tftSend(F("A31V ")); TFTSer.println(getZOffset_mm()); if (isAxisPositionKnown(Z)) { // Move Z axis const float currZpos = getAxisPosition_mm(Z); #if ACDEBUG(AC_INFO) - SERIAL_ECHOLNPGM("Move Z pos from ", currZpos, " to ", currZpos + constrain(Zshift, -0.05, 0.05)); + DEBUG_ECHOLNPGM("Move Z pos from ", currZpos, " to ", currZpos + constrain(Zshift, -0.05, 0.05)); #endif setAxisPosition_mm(currZpos+constrain(Zshift,-0.05,0.05),Z); } @@ -916,7 +918,7 @@ void ChironTFT::PanelProcess(uint8_t req) { //TFTSer.println(); break; - // A33 firmware info request see PanelInfo() + // A33 firmware info request see panelInfo() case 34: // A34 Adjust single mesh point A34 C/S X1 Y1 V123 if (panel_command[3] == 'C') { // Restore original offsets @@ -932,8 +934,8 @@ void ChironTFT::PanelProcess(uint8_t req) { float currmesh = getMeshPoint(pos); float newval = atof(&panel_command[11])/100; #if ACDEBUG(AC_INFO) - SERIAL_ECHOLNPGM("Change mesh point x:", pos.x, " y:", pos.y); - SERIAL_ECHOLNPGM("from ", currmesh, " to ", newval); + DEBUG_ECHOLNPGM("Change mesh point x:", pos.x, " y:", pos.y); + DEBUG_ECHOLNPGM("from ", currmesh, " to ", newval); #endif // Update Meshpoint setMeshPoint(pos,newval); @@ -944,7 +946,7 @@ void ChironTFT::PanelProcess(uint8_t req) { setSoftEndstopState(false); float currZpos = getAxisPosition_mm(Z); #if ACDEBUG(AC_INFO) - SERIAL_ECHOLNPGM("Move Z pos from ", currZpos, " to ", currZpos + constrain(newval - currmesh, -0.05, 0.05)); + DEBUG_ECHOLNPGM("Move Z pos from ", currZpos, " to ", currZpos + constrain(newval - currmesh, -0.05, 0.05)); #endif setAxisPosition_mm(currZpos + constrain(newval - currmesh, -0.05, 0.05), Z); } @@ -953,19 +955,19 @@ void ChironTFT::PanelProcess(uint8_t req) { break; case 36: // A36 Auto leveling for new TFT bet that was a typo in the panel code! - SendtoTFTLN(AC_msg_start_probing); + tftSendLn(AC_msg_start_probing); break; } } -bool ChironTFT::GetLastError() { +bool ChironTFT::getLastError() { switch (last_error) { - case AC_error_abnormal_temp_bed: SendtoTFTLN(AC_msg_error_bed_temp); break; - case AC_error_abnormal_temp_t0: SendtoTFTLN(AC_msg_error_hotend_temp); break; - case AC_error_noSD: SendtoTFTLN(AC_msg_error_sd_card); break; - case AC_error_powerloss: SendtoTFTLN(AC_msg_power_loss); break; - case AC_error_EEPROM: SendtoTFTLN(AC_msg_eeprom_version); break; - case AC_error_filament_runout: SendtoTFTLN(AC_msg_filament_out); break; + case AC_error_abnormal_temp_bed: tftSendLn(AC_msg_error_bed_temp); break; + case AC_error_abnormal_temp_t0: tftSendLn(AC_msg_error_hotend_temp); break; + case AC_error_noSD: tftSendLn(AC_msg_error_sd_card); break; + case AC_error_powerloss: tftSendLn(AC_msg_power_loss); break; + case AC_error_EEPROM: tftSendLn(AC_msg_eeprom_version); break; + case AC_error_filament_runout: tftSendLn(AC_msg_filament_out); break; default: return false; } last_error = AC_error_none; diff --git a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.h b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.h index e0517ec640e0..25b8145b135b 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.h +++ b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.h @@ -57,32 +57,32 @@ class ChironTFT { static float live_Zoffset; static file_menu_t file_menu; public: - static void Startup(); - static void IdleLoop(); - static void PrinterKilled(FSTR_P, FSTR_P); - static void MediaEvent(media_event_t); - static void TimerEvent(timer_event_t); - static void FilamentRunout(); - static void ConfirmationRequest(const char * const); - static void StatusChange(const char * const); - static void PowerLossRecovery(); - static void PrintComplete(); - static void SendtoTFT(FSTR_P const=nullptr); - static void SendtoTFTLN(FSTR_P const=nullptr); + static void startup(); + static void idleLoop(); + static void printerKilled(FSTR_P, FSTR_P); + static void mediaEvent(media_event_t); + static void timerEvent(timer_event_t); + static void filamentRunout(); + static void confirmationRequest(const char * const); + static void statusChange(const char * const); + static void powerLossRecovery(); + static void printComplete(); + static void tftSend(FSTR_P const=nullptr); + static void tftSendLn(FSTR_P const=nullptr); private: - static void DetectPanelType(); - static bool ReadTFTCommand(); - static int8_t FindToken(char); - static void CheckHeaters(); - static void SendFileList(int8_t); - static void SelectFile(); - static void ProcessPanelRequest(); - static void PanelInfo(uint8_t); - static void PanelAction(uint8_t); - static void PanelProcess(uint8_t); - static bool GetLastError(); + static void detectPanelType(); + static bool readTFTCommand(); + static int8_t findToken(char); + static void checkHeaters(); + static void sendFileList(int8_t); + static void selectFile(); + static void processPanelRequest(); + static void panelInfo(uint8_t); + static void panelAction(uint8_t); + static void panelProcess(uint8_t); + static bool getLastError(); }; -extern ChironTFT Chiron; +extern ChironTFT chiron; } // Anycubic namespace diff --git a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_extui.cpp b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_extui.cpp index a2ad678ac62e..0df3bde89d50 100644 --- a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_extui.cpp +++ b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_extui.cpp @@ -35,20 +35,20 @@ namespace ExtUI { - void onStartup() { AnycubicTFT.OnSetup(); } - void onIdle() { AnycubicTFT.OnCommandScan(); } - void onPrinterKilled(FSTR_P const error, FSTR_P const component) { AnycubicTFT.OnKillTFT(); } - void onMediaInserted() { AnycubicTFT.OnSDCardStateChange(true); } - void onMediaError() { AnycubicTFT.OnSDCardError(); } - void onMediaRemoved() { AnycubicTFT.OnSDCardStateChange(false); } + void onStartup() { anycubicTFT.onSetup(); } + void onIdle() { anycubicTFT.onCommandScan(); } + void onPrinterKilled(FSTR_P const error, FSTR_P const component) { anycubicTFT.onKillTFT(); } + void onMediaInserted() { anycubicTFT.onSDCardStateChange(true); } + void onMediaError() { anycubicTFT.onSDCardError(); } + void onMediaRemoved() { anycubicTFT.onSDCardStateChange(false); } void onPlayTone(const uint16_t frequency, const uint16_t duration) { TERN_(SPEAKER, ::tone(BEEPER_PIN, frequency, duration)); } - void onPrintTimerStarted() { AnycubicTFT.OnPrintTimerStarted(); } - void onPrintTimerPaused() { AnycubicTFT.OnPrintTimerPaused(); } - void onPrintTimerStopped() { AnycubicTFT.OnPrintTimerStopped(); } - void onFilamentRunout(const extruder_t extruder) { AnycubicTFT.OnFilamentRunout(); } - void onUserConfirmRequired(const char * const msg) { AnycubicTFT.OnUserConfirmRequired(msg); } + void onPrintTimerStarted() { anycubicTFT.onPrintTimerStarted(); } + void onPrintTimerPaused() { anycubicTFT.onPrintTimerPaused(); } + void onPrintTimerStopped() { anycubicTFT.onPrintTimerStopped(); } + void onFilamentRunout(const extruder_t extruder) { anycubicTFT.onFilamentRunout(); } + void onUserConfirmRequired(const char * const msg) { anycubicTFT.onUserConfirmRequired(msg); } void onStatusChanged(const char * const msg) {} void onHomingStart() {} diff --git a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp index 36b24861fe3b..dca0f2e85da4 100644 --- a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp +++ b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp @@ -24,6 +24,8 @@ #if ENABLED(ANYCUBIC_LCD_I3MEGA) //#define ANYCUBIC_LCD_DEBUG +#define DEBUG_OUT ANYCUBIC_LCD_DEBUG +#include "../../../core/debug_out.h" #include "anycubic_i3mega_lcd.h" #include "../ui_api.h" @@ -40,13 +42,8 @@ #define SEND_PGM_VAL(x,y) (send_P(PSTR(x)), sendLine(i16tostr3rj(y))) #define SEND(x) send(x) #define SENDLINE(x) sendLine(x) -#if ENABLED(ANYCUBIC_LCD_DEBUG) - #define SENDLINE_DBG_PGM(x,y) do{ sendLine_P(PSTR(x)); SERIAL_ECHOLNPGM(y); }while(0) - #define SENDLINE_DBG_PGM_VAL(x,y,z) do{ sendLine_P(PSTR(x)); SERIAL_ECHOLNPGM(y, z); }while(0) -#else - #define SENDLINE_DBG_PGM(x,y) sendLine_P(PSTR(x)) - #define SENDLINE_DBG_PGM_VAL(x,y,z) sendLine_P(PSTR(x)) -#endif +#define SENDLINE_DBG_PGM(x,y) do{ sendLine_P(PSTR(x)); DEBUG_ECHOLNPGM(y); }while(0) +#define SENDLINE_DBG_PGM_VAL(x,y,z) do{ sendLine_P(PSTR(x)); DEBUG_ECHOLNPGM(y, z); }while(0) // Append ".gcode" to filename, if requested. Used for some DGUS-clone displays with built-in filter. // Filenames are limited to 26 characters, so the actual name for the FILENAME can be 20 characters at most. @@ -54,21 +51,20 @@ #define SPECIAL_MENU_FILENAME(A) A TERN_(ANYCUBIC_LCD_GCODE_EXT, ".gcode") #define SPECIAL_MENU_ALTNAME(A, B) TERN(ANYCUBIC_LCD_GCODE_EXT, A ".gcode", B) -AnycubicTFTClass AnycubicTFT; +AnycubicTFTClass anycubicTFT; -char AnycubicTFTClass::TFTcmdbuffer[TFTBUFSIZE][TFT_MAX_CMD_SIZE]; -int AnycubicTFTClass::TFTbuflen = 0, - AnycubicTFTClass::TFTbufindr = 0, - AnycubicTFTClass::TFTbufindw = 0; +char AnycubicTFTClass::tftCommands[TFTBUFSIZE][TFT_MAX_CMD_SIZE]; +int AnycubicTFTClass::tftBufLen = 0, + AnycubicTFTClass::tftBufIndR = 0, + AnycubicTFTClass::tftBufIndW = 0; char AnycubicTFTClass::serial3_char; -int AnycubicTFTClass::serial3_count = 0; -char* AnycubicTFTClass::TFTstrchr_pointer; -uint8_t AnycubicTFTClass::SpecialMenu = false; +char* AnycubicTFTClass::tftStrchrPtr; +uint8_t AnycubicTFTClass::specialMenu = false; AnycubicMediaPrintState AnycubicTFTClass::mediaPrintingState = AMPRINTSTATE_NOT_PRINTING; AnycubicMediaPauseState AnycubicTFTClass::mediaPauseState = AMPAUSESTATE_NOT_PAUSED; -char AnycubicTFTClass::SelectedDirectory[30]; -char AnycubicTFTClass::SelectedFile[FILENAME_LENGTH]; +char AnycubicTFTClass::selectedDirectory[30]; +char AnycubicTFTClass::selectedFile[FILENAME_LENGTH]; // Serial helpers static void sendNewLine() { LCD_SERIAL.write('\r'); LCD_SERIAL.write('\n'); } @@ -84,7 +80,7 @@ using namespace ExtUI; AnycubicTFTClass::AnycubicTFTClass() {} -void AnycubicTFTClass::OnSetup() { +void AnycubicTFTClass::onSetup() { #ifndef LCD_BAUDRATE #define LCD_BAUDRATE 115200 #endif @@ -94,9 +90,6 @@ void AnycubicTFTClass::OnSetup() { delay_ms(10); // Init the state of the key pins running on the TFT - #if BOTH(HAS_MEDIA, HAS_SD_DETECT) - SET_INPUT_PULLUP(SD_DETECT_PIN); - #endif #if ENABLED(FILAMENT_RUNOUT_SENSOR) SET_INPUT_PULLUP(FIL_RUNOUT1_PIN); #endif @@ -104,30 +97,26 @@ void AnycubicTFTClass::OnSetup() { mediaPrintingState = AMPRINTSTATE_NOT_PRINTING; mediaPauseState = AMPAUSESTATE_NOT_PAUSED; - // DoSDCardStateCheck(); + // doSDCardStateCheck(); SENDLINE_DBG_PGM("J12", "TFT Serial Debug: Ready... J12"); // J12 Ready delay_ms(10); - DoFilamentRunoutCheck(); - SelectedFile[0] = 0; + doFilamentRunoutCheck(); + selectedFile[0] = 0; #if ENABLED(STARTUP_CHIME) injectCommands(F("M300 P250 S554\nM300 P250 S554\nM300 P250 S740\nM300 P250 S554\nM300 P250 S740\nM300 P250 S554\nM300 P500 S831")); #endif - #if ENABLED(ANYCUBIC_LCD_DEBUG) - SERIAL_ECHOLNPGM("TFT Serial Debug: Finished startup"); - #endif + DEBUG_ECHOLNPGM("TFT Serial Debug: Finished startup"); } -void AnycubicTFTClass::OnCommandScan() { +void AnycubicTFTClass::onCommandScan() { static millis_t nextStopCheck = 0; // used to slow the stopped print check down to reasonable times const millis_t ms = millis(); if (ELAPSED(ms, nextStopCheck)) { nextStopCheck = ms + 1000UL; - if (mediaPrintingState == AMPRINTSTATE_STOP_REQUESTED && IsNozzleHomed()) { - #if ENABLED(ANYCUBIC_LCD_DEBUG) - SERIAL_ECHOLNPGM("TFT Serial Debug: Finished stopping print, releasing motors ..."); - #endif + if (mediaPrintingState == AMPRINTSTATE_STOP_REQUESTED && isNozzleHomed()) { + DEBUG_ECHOLNPGM("TFT Serial Debug: Finished stopping print, releasing motors ..."); mediaPrintingState = AMPRINTSTATE_NOT_PRINTING; mediaPauseState = AMPAUSESTATE_NOT_PAUSED; injectCommands(F("M84\nM27")); // disable stepper motors and force report of SD status @@ -137,44 +126,36 @@ void AnycubicTFTClass::OnCommandScan() { } } - if (TFTbuflen < (TFTBUFSIZE - 1)) - GetCommandFromTFT(); + if (tftBufLen < (TFTBUFSIZE) - 1) + getCommandFromTFT(); - if (TFTbuflen) { - TFTbuflen = (TFTbuflen - 1); - TFTbufindr = (TFTbufindr + 1) % TFTBUFSIZE; + if (tftBufLen) { + --tftBufLen; + tftBufIndR = (tftBufIndR + 1) % (TFTBUFSIZE); } } -void AnycubicTFTClass::OnKillTFT() { +void AnycubicTFTClass::onKillTFT() { SENDLINE_DBG_PGM("J11", "TFT Serial Debug: Kill command... J11"); } -void AnycubicTFTClass::OnSDCardStateChange(bool isInserted) { - #if ENABLED(ANYCUBIC_LCD_DEBUG) - SERIAL_ECHOLNPGM("TFT Serial Debug: OnSDCardStateChange event triggered...", isInserted); - #endif - DoSDCardStateCheck(); +void AnycubicTFTClass::onSDCardStateChange(bool isInserted) { + DEBUG_ECHOLNPGM("TFT Serial Debug: onSDCardStateChange event triggered...", isInserted); + doSDCardStateCheck(); } -void AnycubicTFTClass::OnSDCardError() { - #if ENABLED(ANYCUBIC_LCD_DEBUG) - SERIAL_ECHOLNPGM("TFT Serial Debug: OnSDCardError event triggered..."); - #endif +void AnycubicTFTClass::onSDCardError() { + DEBUG_ECHOLNPGM("TFT Serial Debug: onSDCardError event triggered..."); SENDLINE_DBG_PGM("J21", "TFT Serial Debug: On SD Card Error ... J21"); } -void AnycubicTFTClass::OnFilamentRunout() { - #if ENABLED(ANYCUBIC_LCD_DEBUG) - SERIAL_ECHOLNPGM("TFT Serial Debug: FilamentRunout triggered..."); - #endif - DoFilamentRunoutCheck(); +void AnycubicTFTClass::onFilamentRunout() { + DEBUG_ECHOLNPGM("TFT Serial Debug: onFilamentRunout triggered..."); + doFilamentRunoutCheck(); } -void AnycubicTFTClass::OnUserConfirmRequired(const char * const msg) { - #if ENABLED(ANYCUBIC_LCD_DEBUG) - SERIAL_ECHOLNPGM("TFT Serial Debug: OnUserConfirmRequired triggered... ", msg); - #endif +void AnycubicTFTClass::onUserConfirmRequired(const char * const msg) { + DEBUG_ECHOLNPGM("TFT Serial Debug: onUserConfirmRequired triggered... ", msg); #if HAS_MEDIA /** @@ -225,190 +206,188 @@ void AnycubicTFTClass::OnUserConfirmRequired(const char * const msg) { #endif } -float AnycubicTFTClass::CodeValue() { - return (strtod(&TFTcmdbuffer[TFTbufindr][TFTstrchr_pointer - TFTcmdbuffer[TFTbufindr] + 1], nullptr)); +float AnycubicTFTClass::codeValue() { + return (strtod(&tftCommands[tftBufIndR][tftStrchrPtr - tftCommands[tftBufIndR] + 1], nullptr)); } -bool AnycubicTFTClass::CodeSeen(char code) { - TFTstrchr_pointer = strchr(TFTcmdbuffer[TFTbufindr], code); - return !!TFTstrchr_pointer; // Return True if a character was found +bool AnycubicTFTClass::codeSeen(char code) { + tftStrchrPtr = strchr(tftCommands[tftBufIndR], code); + return !!tftStrchrPtr; // Return True if a character was found } -bool AnycubicTFTClass::IsNozzleHomed() { +bool AnycubicTFTClass::isNozzleHomed() { const float xPosition = getAxisPosition_mm((axis_t) X); const float yPosition = getAxisPosition_mm((axis_t) Y); return WITHIN(xPosition, X_MIN_POS - 0.1, X_MIN_POS + 0.1) && WITHIN(yPosition, Y_MIN_POS - 0.1, Y_MIN_POS + 0.1); } -void AnycubicTFTClass::HandleSpecialMenu() { +void AnycubicTFTClass::handleSpecialMenu() { /** * NOTE: that the file selection command actual lowercases the entire selected file/foldername, so charracter comparisons need to be lowercase. */ - if (SelectedDirectory[0] == '<') { - switch (SelectedDirectory[1]) { - case 'e': // "" - SpecialMenu = false; - return; + if (selectedDirectory[0] != '<') { + DEBUG_ECHOLNPGM("TFT Serial Debug: Attempted to handleSpecialMenu on non-special menu... ", selectedDirectory); + return; + } + + switch (selectedDirectory[1]) { + default: break; + + case 'e': specialMenu = false; return; // "" + + #if ENABLED(PROBE_MANUALLY) + + case '0': + switch (selectedDirectory[2]) { + default: break; + + case '1': // "<01ZUp0.1>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Z Up 0.1")); + injectCommands(F("G91\nG1 Z+0.1\nG90")); + break; + + case '2': // "<02ZUp0.02>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Z Up 0.02")); + injectCommands(F("G91\nG1 Z+0.02\nG90")); + break; + + case '3': // "<03ZDn0.02>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Z Down 0.02")); + injectCommands(F("G91\nG1 Z-0.02\nG90")); + break; + + case '4': // "<04ZDn0.1>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Z Down 0.1")); + injectCommands(F("G91\nG1 Z-0.1\nG90")); + break; + + case '5': // "<05PrehtBed>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Preheat Bed")); + injectCommands(F("M140 S65")); + break; + + case '6': // "<06SMeshLvl>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Start Mesh Leveling")); + injectCommands(F("G29S1")); + break; + + case '7': // "<07MeshNPnt>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Next Mesh Point")); + injectCommands(F("G29S2")); + break; + + case '8': // "<08HtEndPID>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Auto Tune Hotend PID")); + // need to dwell for half a second to give the fan a chance to start before the pid tuning starts + injectCommands(F("M106 S204\nG4 P500\nM303 E0 S215 C15 U1")); + break; + + case '9': // "<09HtBedPID>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Auto Tune Hotbed Pid")); + injectCommands(F("M303 E-1 S65 C6 U1")); + break; + } break; - #if ENABLED(PROBE_MANUALLY) - case '0': - switch (SelectedDirectory[2]) { - case '1': // "<01ZUp0.1>" - SERIAL_ECHOLNPGM("Special Menu: Z Up 0.1"); - injectCommands(F("G91\nG1 Z+0.1\nG90")); - break; - - case '2': // "<02ZUp0.02>" - SERIAL_ECHOLNPGM("Special Menu: Z Up 0.02"); - injectCommands(F("G91\nG1 Z+0.02\nG90")); - break; - - case '3': // "<03ZDn0.02>" - SERIAL_ECHOLNPGM("Special Menu: Z Down 0.02"); - injectCommands(F("G91\nG1 Z-0.02\nG90")); - break; - - case '4': // "<04ZDn0.1>" - SERIAL_ECHOLNPGM("Special Menu: Z Down 0.1"); - injectCommands(F("G91\nG1 Z-0.1\nG90")); - break; - - case '5': // "<05PrehtBed>" - SERIAL_ECHOLNPGM("Special Menu: Preheat Bed"); - injectCommands(F("M140 S65")); - break; - - case '6': // "<06SMeshLvl>" - SERIAL_ECHOLNPGM("Special Menu: Start Mesh Leveling"); - injectCommands(F("G29S1")); - break; - - case '7': // "<07MeshNPnt>" - SERIAL_ECHOLNPGM("Special Menu: Next Mesh Point"); - injectCommands(F("G29S2")); - break; - - case '8': // "<08HtEndPID>" - SERIAL_ECHOLNPGM("Special Menu: Auto Tune Hotend PID"); - // need to dwell for half a second to give the fan a chance to start before the pid tuning starts - injectCommands(F("M106 S204\nG4 P500\nM303 E0 S215 C15 U1")); - break; - - case '9': // "<09HtBedPID>" - SERIAL_ECHOLNPGM("Special Menu: Auto Tune Hotbed Pid"); - injectCommands(F("M303 E-1 S65 C6 U1")); - break; - - default: - break; - } + case '1': + switch (selectedDirectory[2]) { + default: break; + + case '0': // "<10FWDeflts>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Load FW Defaults")); + injectCommands(F("M502\nM300 P105 S1661\nM300 P210 S1108")); + break; + + case '1': // "<11SvEEPROM>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Save EEPROM")); + injectCommands(F("M500\nM300 P105 S1108\nM300 P210 S1661")); break; + } + break; - case '1': - switch (SelectedDirectory[2]) { - case '0': // "<10FWDeflts>" - SERIAL_ECHOLNPGM("Special Menu: Load FW Defaults"); - injectCommands(F("M502\nM300 P105 S1661\nM300 P210 S1108")); - break; + #else // !PROBE_MANUALLY - case '1': // "<11SvEEPROM>" - SERIAL_ECHOLNPGM("Special Menu: Save EEPROM"); - injectCommands(F("M500\nM300 P105 S1108\nM300 P210 S1661")); - break; + case '0': + switch (selectedDirectory[2]) { + default: break; - default: - break; - } + case '1': // "<01PrehtBed>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Preheat Bed")); + injectCommands(F("M140 S65")); break; - #else // if ENABLED(PROBE_MANUALLY) - case '0': - switch (SelectedDirectory[2]) { - case '1': // "<01PrehtBed>" - SERIAL_ECHOLNPGM("Special Menu: Preheat Bed"); - injectCommands(F("M140 S65")); - break; - - case '2': // "<02ABL>" - SERIAL_ECHOLNPGM("Special Menu: Auto Bed Leveling"); - injectCommands(F("G29N")); - break; - - case '3': // "<03HtendPID>" - SERIAL_ECHOLNPGM("Special Menu: Auto Tune Hotend PID"); - // need to dwell for half a second to give the fan a chance to start before the pid tuning starts - injectCommands(F("M106 S204\nG4 P500\nM303 E0 S215 C15 U1")); - break; - - case '4': // "<04HtbedPID>" - SERIAL_ECHOLNPGM("Special Menu: Auto Tune Hotbed Pid"); - injectCommands(F("M303 E-1 S65 C6 U1")); - break; - - case '5': // "<05FWDeflts>" - SERIAL_ECHOLNPGM("Special Menu: Load FW Defaults"); - injectCommands(F("M502\nM300 P105 S1661\nM300 P210 S1108")); - break; - - case '6': // "<06SvEEPROM>" - SERIAL_ECHOLNPGM("Special Menu: Save EEPROM"); - injectCommands(F("M500\nM300 P105 S1108\nM300 P210 S1661")); - break; - - case '7': // <07SendM108> - SERIAL_ECHOLNPGM("Special Menu: Send User Confirmation"); - injectCommands(F("M108")); - break; - - default: - break; - } + + case '2': // "<02ABL>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Auto Bed Leveling")); + injectCommands(F("G29N")); break; - #endif // PROBE_MANUALLY - default: + case '3': // "<03HtendPID>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Auto Tune Hotend PID")); + // need to dwell for half a second to give the fan a chance to start before the pid tuning starts + injectCommands(F("M106 S204\nG4 P500\nM303 E0 S215 C15 U1")); break; - } - #if ENABLED(ANYCUBIC_LCD_DEBUG) - } - else { - SERIAL_ECHOPGM("TFT Serial Debug: Attempted to HandleSpecialMenu on non-special menu... "); - SERIAL_ECHOLN(SelectedDirectory); - #endif + + case '4': // "<04HtbedPID>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Auto Tune Hotbed Pid")); + injectCommands(F("M303 E-1 S65 C6 U1")); + break; + + case '5': // "<05FWDeflts>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Load FW Defaults")); + injectCommands(F("M502\nM300 P105 S1661\nM300 P210 S1108")); + break; + + case '6': // "<06SvEEPROM>" + SERIAL_ECHOLNPGM("Special Menu: ", F("Save EEPROM")); + injectCommands(F("M500\nM300 P105 S1108\nM300 P210 S1661")); + break; + + case '7': // <07SendM108> + SERIAL_ECHOLNPGM("Special Menu: ", F("Send User Confirmation")); + injectCommands(F("M108")); + break; + } + break; + + #endif // !PROBE_MANUALLY } + } -void AnycubicTFTClass::RenderCurrentFileList() { +void AnycubicTFTClass::renderCurrentFileList() { #if HAS_MEDIA uint16_t selectedNumber = 0; - SelectedDirectory[0] = 0; - SelectedFile[0] = 0; + selectedDirectory[0] = 0; + selectedFile[0] = 0; FileList currentFileList; SENDLINE_PGM("FN "); // Filelist start - if (!isMediaInserted() && !SpecialMenu) { + if (!isMediaInserted() && !specialMenu) { SENDLINE_DBG_PGM("J02", "TFT Serial Debug: No SD Card mounted to render Current File List... J02"); SENDLINE_PGM("")); } else { - if (CodeSeen('S')) - selectedNumber = CodeValue(); + if (codeSeen('S')) + selectedNumber = codeValue(); - if (SpecialMenu) - RenderSpecialMenu(selectedNumber); + if (specialMenu) + renderSpecialMenu(selectedNumber); else if (selectedNumber <= currentFileList.count()) - RenderCurrentFolder(selectedNumber); + renderCurrentFolder(selectedNumber); } SENDLINE_PGM("END"); // Filelist stop #endif // HAS_MEDIA } -void AnycubicTFTClass::RenderSpecialMenu(uint16_t selectedNumber) { +void AnycubicTFTClass::renderSpecialMenu(uint16_t selectedNumber) { + switch (selectedNumber) { + default: break; + #if ENABLED(PROBE_MANUALLY) case 0: // First Page SENDLINE_PGM("<01ZUP~1.GCO"); @@ -442,7 +421,9 @@ void AnycubicTFTClass::RenderSpecialMenu(uint16_t selectedNumber) { SENDLINE_PGM("")); break; - #else + + #else // !PROBE_MANUALLY + case 0: // First Page SENDLINE_PGM("<01PRE~1.GCO"); SENDLINE_PGM(SPECIAL_MENU_FILENAME("")); @@ -465,25 +446,16 @@ void AnycubicTFTClass::RenderSpecialMenu(uint16_t selectedNumber) { SENDLINE_PGM(SPECIAL_MENU_FILENAME("")); break; - #endif // PROBE_MANUALLY - - default: - break; + #endif // !PROBE_MANUALLY } } -void AnycubicTFTClass::RenderCurrentFolder(uint16_t selectedNumber) { +void AnycubicTFTClass::renderCurrentFolder(uint16_t selectedNumber) { FileList currentFileList; - uint16_t cnt = selectedNumber; - uint16_t max_files; - uint16_t dir_files = currentFileList.count(); - - if ((dir_files - selectedNumber) < 4) - max_files = dir_files; - else - max_files = selectedNumber + 3; + const uint16_t dir_files = currentFileList.count(), + max_files = (dir_files - selectedNumber) < 4 ? dir_files : selectedNumber + 3; - for (cnt = selectedNumber; cnt <= max_files; cnt++) { + for (uint16_t cnt = selectedNumber; cnt <= max_files; cnt++) { if (cnt == 0) { // Special Entry if (currentFileList.isAtRootDir()) { SENDLINE_PGM(" 0 && TFTbuflen < TFTBUFSIZE) { - serial3_char = LCD_SERIAL.read(); - if (serial3_char == '\n' || - serial3_char == '\r' || - serial3_char == ':' || - serial3_count >= (TFT_MAX_CMD_SIZE - 1) - ) { - - if (!serial3_count) return; // if empty line - - TFTcmdbuffer[TFTbufindw][serial3_count] = 0; // terminate string - - if ((strchr(TFTcmdbuffer[TFTbufindw], 'A') != nullptr)) { - int16_t a_command; - TFTstrchr_pointer = strchr(TFTcmdbuffer[TFTbufindw], 'A'); - a_command = ((int)((strtod(&TFTcmdbuffer[TFTbufindw][TFTstrchr_pointer - TFTcmdbuffer[TFTbufindw] + 1], nullptr)))); - - #if ENABLED(ANYCUBIC_LCD_DEBUG) - if ((a_command > 7) && (a_command != 20)) // No debugging of status polls, please! - SERIAL_ECHOLNPGM("TFT Serial Command: ", TFTcmdbuffer[TFTbufindw]); - #endif - - switch (a_command) { - case 0: { // A0 GET HOTEND TEMP - const celsius_float_t hotendActualTemp = getActualTemp_celsius(E0); - SEND_PGM_VAL("A0V ", ROUND(hotendActualTemp)); - } - break; + while (LCD_SERIAL.available() > 0 && tftBufLen < (TFTBUFSIZE)) { + char c = LCD_SERIAL.read(); + if (c != '\n' && c != '\r' && c != ':' && serial_count < (TFT_MAX_CMD_SIZE - 1)) { + tftCommands[tftBufIndW][serial_count++] = c; + continue; + } - case 1: { // A1 GET HOTEND TARGET TEMP - const celsius_float_t hotendTargetTemp = getTargetTemp_celsius(E0); - SEND_PGM_VAL("A1V ", ROUND(hotendTargetTemp)); - } - break; + if (!serial_count) return; // if empty line - case 2: { // A2 GET HOTBED TEMP - const celsius_float_t heatedBedActualTemp = getActualTemp_celsius(BED); - SEND_PGM_VAL("A2V ", ROUND(heatedBedActualTemp)); - } - break; + tftCommands[tftBufIndW][serial_count] = 0; // terminate string - case 3: { // A3 GET HOTBED TARGET TEMP - const celsius_float_t heatedBedTargetTemp = getTargetTemp_celsius(BED); - SEND_PGM_VAL("A3V ", ROUND(heatedBedTargetTemp)); - } break; - - case 4: { // A4 GET FAN SPEED - SEND_PGM_VAL("A4V ", int(getActualFan_percent(FAN0))); - } break; - - case 5: { // A5 GET CURRENT COORDINATE - const float xPosition = getAxisPosition_mm(X), - yPosition = getAxisPosition_mm(Y), - zPosition = getAxisPosition_mm(Z); - SEND_PGM("A5V X: "); LCD_SERIAL.print(xPosition); - SEND_PGM( " Y: "); LCD_SERIAL.print(yPosition); - SEND_PGM( " Z: "); LCD_SERIAL.print(zPosition); - SENDLINE_PGM(""); - } break; - - case 6: // A6 GET SD CARD PRINTING STATUS - #if HAS_MEDIA - if (isPrintingFromMedia()) { - SEND_PGM("A6V "); - if (isMediaInserted()) - SENDLINE(ui8tostr3rj(getProgress_percent())); - else - SENDLINE_DBG_PGM("J02", "TFT Serial Debug: No SD Card mounted to return printing status... J02"); - } - else - SENDLINE_PGM("A6V ---"); - #endif - break; + if ((strchr(tftCommands[tftBufIndW], 'A') != nullptr)) { + int16_t a_command; + tftStrchrPtr = strchr(tftCommands[tftBufIndW], 'A'); + a_command = ((int)((strtod(&tftCommands[tftBufIndW][tftStrchrPtr - tftCommands[tftBufIndW] + 1], nullptr)))); + + if (a_command > 7 && a_command != 20) { // No debugging of status polls, please! + DEBUG_ECHOLNPGM("TFT Serial Command: ", tftCommands[tftBufIndW]); + } + + switch (a_command) { + case 0: { // A0 GET HOTEND TEMP + const celsius_float_t hotendActualTemp = getActualTemp_celsius(E0); + SEND_PGM_VAL("A0V ", ROUND(hotendActualTemp)); + } + break; + + case 1: { // A1 GET HOTEND TARGET TEMP + const celsius_float_t hotendTargetTemp = getTargetTemp_celsius(E0); + SEND_PGM_VAL("A1V ", ROUND(hotendTargetTemp)); + } + break; + + case 2: { // A2 GET HOTBED TEMP + const celsius_float_t heatedBedActualTemp = getActualTemp_celsius(BED); + SEND_PGM_VAL("A2V ", ROUND(heatedBedActualTemp)); + } + break; - case 7: { // A7 GET PRINTING TIME - const uint32_t elapsedSeconds = getProgress_seconds_elapsed(); - SEND_PGM("A7V "); - if (elapsedSeconds != 0) { // print time - const uint32_t elapsedMinutes = elapsedSeconds / 60; - SEND(ui8tostr2(elapsedMinutes / 60)); - SEND_PGM(" H "); - SEND(ui8tostr2(elapsedMinutes % 60)); - SENDLINE_PGM(" M"); + case 3: { // A3 GET HOTBED TARGET TEMP + const celsius_float_t heatedBedTargetTemp = getTargetTemp_celsius(BED); + SEND_PGM_VAL("A3V ", ROUND(heatedBedTargetTemp)); + } break; + + case 4: { // A4 GET FAN SPEED + SEND_PGM_VAL("A4V ", int(getActualFan_percent(FAN0))); + } break; + + case 5: { // A5 GET CURRENT COORDINATE + const float xPosition = getAxisPosition_mm(X), + yPosition = getAxisPosition_mm(Y), + zPosition = getAxisPosition_mm(Z); + SEND_PGM("A5V X: "); LCD_SERIAL.print(xPosition); + SEND_PGM( " Y: "); LCD_SERIAL.print(yPosition); + SEND_PGM( " Z: "); LCD_SERIAL.print(zPosition); + SENDLINE_PGM(""); + } break; + + case 6: // A6 GET SD CARD PRINTING STATUS + #if HAS_MEDIA + if (isPrintingFromMedia()) { + SEND_PGM("A6V "); + if (isMediaInserted()) + SENDLINE(ui8tostr3rj(getProgress_percent())); + else + SENDLINE_DBG_PGM("J02", "TFT Serial Debug: No SD Card mounted to return printing status... J02"); } else - SENDLINE_PGM(" 999:999"); - } + SENDLINE_PGM("A6V ---"); + #endif break; - case 8: // A8 GET SD LIST - #if HAS_MEDIA - SelectedFile[0] = 0; - RenderCurrentFileList(); - #endif - break; - - case 9: // A9 pause sd print - #if HAS_MEDIA - if (isPrintingFromMedia()) - PausePrint(); - #endif - break; + case 7: { // A7 GET PRINTING TIME + const uint32_t elapsedSeconds = getProgress_seconds_elapsed(); + SEND_PGM("A7V "); + if (elapsedSeconds != 0) { // print time + const uint32_t elapsedMinutes = elapsedSeconds / 60; + SEND(ui8tostr2(elapsedMinutes / 60)); + SEND_PGM(" H "); + SEND(ui8tostr2(elapsedMinutes % 60)); + SENDLINE_PGM(" M"); + } + else + SENDLINE_PGM(" 999:999"); + } + break; - case 10: // A10 resume sd print - #if HAS_MEDIA - if (isPrintingFromMediaPaused()) - ResumePrint(); - #endif - break; + case 8: // A8 GET SD LIST + #if HAS_MEDIA + selectedFile[0] = 0; + renderCurrentFileList(); + #endif + break; - case 11: // A11 STOP SD PRINT - TERN_(HAS_MEDIA, StopPrint()); - break; + case 9: // A9 pause sd print + TERN_(HAS_MEDIA, if (isPrintingFromMedia()) pausePrint()); + break; - case 12: // A12 kill - kill(F(STR_ERR_KILLED)); - break; + case 10: // A10 resume sd print + #if HAS_MEDIA + if (isPrintingFromMediaPaused()) + resumePrint(); + #endif + break; - case 13: // A13 SELECTION FILE - #if HAS_MEDIA - if (isMediaInserted()) { - starpos = (strchr(TFTstrchr_pointer + 4, '*')); - if (TFTstrchr_pointer[4] == '/') { - strcpy(SelectedDirectory, TFTstrchr_pointer + 5); - SelectedFile[0] = 0; - SENDLINE_DBG_PGM("J21", "TFT Serial Debug: Clear file selection... J21 "); // J21 Not File Selected - SENDLINE_PGM(""); - } - else if (TFTstrchr_pointer[4] == '<') { - strcpy(SelectedDirectory, TFTstrchr_pointer + 4); - SpecialMenu = true; - SelectedFile[0] = 0; - SENDLINE_DBG_PGM("J21", "TFT Serial Debug: Clear file selection... J21 "); // J21 Not File Selected - SENDLINE_PGM(""); - } - else { - SelectedDirectory[0] = 0; + case 11: // A11 STOP SD PRINT + TERN_(HAS_MEDIA, stopPrint()); + break; - if (starpos) *(starpos - 1) = '\0'; + case 12: // A12 kill + kill(F(STR_ERR_KILLED)); + break; - strcpy(SelectedFile, TFTstrchr_pointer + 4); - SENDLINE_DBG_PGM_VAL("J20", "TFT Serial Debug: File Selected... J20 ", SelectedFile); // J20 File Selected - } + case 13: // A13 SELECTION FILE + #if HAS_MEDIA + if (isMediaInserted()) { + starpos = (strchr(tftStrchrPtr + 4, '*')); + if (tftStrchrPtr[4] == '/') { + strcpy(selectedDirectory, tftStrchrPtr + 5); + selectedFile[0] = 0; + SENDLINE_DBG_PGM("J21", "TFT Serial Debug: Clear file selection... J21 "); // J21 Not File Selected + SENDLINE_PGM(""); } - #endif - break; - - case 14: // A14 START PRINTING - #if HAS_MEDIA - if (!isPrinting() && strlen(SelectedFile) > 0) - StartPrint(); - #endif - break; + else if (tftStrchrPtr[4] == '<') { + strcpy(selectedDirectory, tftStrchrPtr + 4); + specialMenu = true; + selectedFile[0] = 0; + SENDLINE_DBG_PGM("J21", "TFT Serial Debug: Clear file selection... J21 "); // J21 Not File Selected + SENDLINE_PGM(""); + } + else { + selectedDirectory[0] = 0; - case 15: // A15 RESUMING FROM OUTAGE - // TODO: JBA implement resume form outage - break; + if (starpos) *(starpos - 1) = '\0'; - case 16: { // A16 set hotend temp - uint16_t tempvalue; - if (CodeSeen('S')) { - tempvalue = constrain(CodeValue(), 0, 275); - setTargetTemp_celsius(tempvalue, (extruder_t)E0); - } - else if (CodeSeen('C') && !isPrinting()) { - if (getAxisPosition_mm(Z) < 10) - injectCommands(F("G1 Z10")); // RASE Z AXIS - tempvalue = constrain(CodeValue(), 0, 275); - setTargetTemp_celsius(tempvalue, (extruder_t)E0); + strcpy(selectedFile, tftStrchrPtr + 4); + SENDLINE_DBG_PGM_VAL("J20", "TFT Serial Debug: File Selected... J20 ", selectedFile); // J20 File Selected + } } - } + #endif break; - case 17: { // A17 set heated bed temp - uint16_t tempbed; - if (CodeSeen('S')) { - tempbed = constrain(CodeValue(), 0, 100); - setTargetTemp_celsius(tempbed, (heater_t)BED); - } - } + case 14: // A14 START PRINTING + #if HAS_MEDIA + if (!isPrinting() && strlen(selectedFile) > 0) + startPrint(); + #endif break; - case 18: { // A18 set fan speed - float fanPercent; - if (CodeSeen('S')) { - fanPercent = CodeValue(); - fanPercent = constrain(fanPercent, 0, 100); - setTargetFan_percent(fanPercent, FAN0); - } - else - fanPercent = 100; + case 15: // A15 RESUMING FROM OUTAGE + // TODO: JBA implement resume form outage + break; + case 16: { // A16 set hotend temp + uint16_t tempvalue; + if (codeSeen('S')) { + tempvalue = constrain(codeValue(), 0, 275); + setTargetTemp_celsius(tempvalue, (extruder_t)E0); + } + else if (codeSeen('C') && !isPrinting()) { + if (getAxisPosition_mm(Z) < 10) + injectCommands(F("G1 Z10")); // RASE Z AXIS + tempvalue = constrain(codeValue(), 0, 275); + setTargetTemp_celsius(tempvalue, (extruder_t)E0); + } + } + break; + + case 17: { // A17 set heated bed temp + uint16_t tempbed; + if (codeSeen('S')) { + tempbed = constrain(codeValue(), 0, 100); + setTargetTemp_celsius(tempbed, (heater_t)BED); + } + } + break; + + case 18: { // A18 set fan speed + float fanPercent; + if (codeSeen('S')) { + fanPercent = codeValue(); + fanPercent = constrain(fanPercent, 0, 100); setTargetFan_percent(fanPercent, FAN0); - SENDLINE_PGM(""); } - break; + else + fanPercent = 100; - case 19: // A19 stop stepper drivers - sent on stop extrude command and on turn motors off command - if (!isPrinting()) { - quickstop_stepper(); - stepper.disable_all_steppers(); - } + setTargetFan_percent(fanPercent, FAN0); + SENDLINE_PGM(""); + } + break; - SENDLINE_PGM(""); - break; + case 19: // A19 stop stepper drivers - sent on stop extrude command and on turn motors off command + if (!isPrinting()) { + quickstop_stepper(); + stepper.disable_all_steppers(); + } - case 20: // A20 read printing speed - if (CodeSeen('S')) - feedrate_percentage = constrain(CodeValue(), 40, 999); - else - SEND_PGM_VAL("A20V ", feedrate_percentage); - break; + SENDLINE_PGM(""); + break; - case 21: // A21 all home - if (!isPrinting() && !isPrintingFromMediaPaused()) { - if (CodeSeen('X') || CodeSeen('Y') || CodeSeen('Z')) { - if (CodeSeen('X')) - injectCommands(F("G28X")); - if (CodeSeen('Y')) - injectCommands(F("G28Y")); - if (CodeSeen('Z')) - injectCommands(F("G28Z")); - } - else if (CodeSeen('C')) { - injectCommands_P(G28_STR); - } + case 20: // A20 read printing speed + if (codeSeen('S')) + feedrate_percentage = constrain(codeValue(), 40, 999); + else + SEND_PGM_VAL("A20V ", feedrate_percentage); + break; + + case 21: // A21 all home + if (!isPrinting() && !isPrintingFromMediaPaused()) { + if (codeSeen('X') || codeSeen('Y') || codeSeen('Z')) { + if (codeSeen('X')) + injectCommands(F("G28X")); + if (codeSeen('Y')) + injectCommands(F("G28Y")); + if (codeSeen('Z')) + injectCommands(F("G28Z")); } - break; + else if (codeSeen('C')) { + injectCommands_P(G28_STR); + } + } + break; - case 22: // A22 move X/Y/Z or extrude - if (!isPrinting()) { - float coorvalue; - uint16_t movespeed = 0; - char commandStr[30]; - char fullCommandStr[38]; - - commandStr[0] = 0; // empty string - if (CodeSeen('F')) // Set feedrate - movespeed = CodeValue(); - - if (CodeSeen('X')) { // Move in X direction - coorvalue = CodeValue(); - if ((coorvalue <= 0.2) && coorvalue > 0) - sprintf_P(commandStr, PSTR("G1 X0.1F%i"), movespeed); - else if ((coorvalue <= -0.1) && coorvalue > -1) - sprintf_P(commandStr, PSTR("G1 X-0.1F%i"), movespeed); - else - sprintf_P(commandStr, PSTR("G1 X%iF%i"), int(coorvalue), movespeed); - } - else if (CodeSeen('Y')) { // Move in Y direction - coorvalue = CodeValue(); - if ((coorvalue <= 0.2) && coorvalue > 0) - sprintf_P(commandStr, PSTR("G1 Y0.1F%i"), movespeed); - else if ((coorvalue <= -0.1) && coorvalue > -1) - sprintf_P(commandStr, PSTR("G1 Y-0.1F%i"), movespeed); - else - sprintf_P(commandStr, PSTR("G1 Y%iF%i"), int(coorvalue), movespeed); - } - else if (CodeSeen('Z')) { // Move in Z direction - coorvalue = CodeValue(); - if ((coorvalue <= 0.2) && coorvalue > 0) - sprintf_P(commandStr, PSTR("G1 Z0.1F%i"), movespeed); - else if ((coorvalue <= -0.1) && coorvalue > -1) - sprintf_P(commandStr, PSTR("G1 Z-0.1F%i"), movespeed); - else - sprintf_P(commandStr, PSTR("G1 Z%iF%i"), int(coorvalue), movespeed); - } - else if (CodeSeen('E')) { // Extrude - coorvalue = CodeValue(); - if ((coorvalue <= 0.2) && coorvalue > 0) - sprintf_P(commandStr, PSTR("G1 E0.1F%i"), movespeed); - else if ((coorvalue <= -0.1) && coorvalue > -1) - sprintf_P(commandStr, PSTR("G1 E-0.1F%i"), movespeed); - else - sprintf_P(commandStr, PSTR("G1 E%iF500"), int(coorvalue)); - } + case 22: // A22 move X/Y/Z or extrude + if (!isPrinting()) { + float coorvalue; + uint16_t movespeed = 0; + char commandStr[30]; + char fullCommandStr[38]; + + commandStr[0] = 0; // empty string + if (codeSeen('F')) // Set feedrate + movespeed = codeValue(); + + if (codeSeen('X')) { // Move in X direction + coorvalue = codeValue(); + if ((coorvalue <= 0.2) && coorvalue > 0) + sprintf_P(commandStr, PSTR("G1 X0.1F%i"), movespeed); + else if ((coorvalue <= -0.1) && coorvalue > -1) + sprintf_P(commandStr, PSTR("G1 X-0.1F%i"), movespeed); + else + sprintf_P(commandStr, PSTR("G1 X%iF%i"), int(coorvalue), movespeed); + } + else if (codeSeen('Y')) { // Move in Y direction + coorvalue = codeValue(); + if ((coorvalue <= 0.2) && coorvalue > 0) + sprintf_P(commandStr, PSTR("G1 Y0.1F%i"), movespeed); + else if ((coorvalue <= -0.1) && coorvalue > -1) + sprintf_P(commandStr, PSTR("G1 Y-0.1F%i"), movespeed); + else + sprintf_P(commandStr, PSTR("G1 Y%iF%i"), int(coorvalue), movespeed); + } + else if (codeSeen('Z')) { // Move in Z direction + coorvalue = codeValue(); + if ((coorvalue <= 0.2) && coorvalue > 0) + sprintf_P(commandStr, PSTR("G1 Z0.1F%i"), movespeed); + else if ((coorvalue <= -0.1) && coorvalue > -1) + sprintf_P(commandStr, PSTR("G1 Z-0.1F%i"), movespeed); + else + sprintf_P(commandStr, PSTR("G1 Z%iF%i"), int(coorvalue), movespeed); + } + else if (codeSeen('E')) { // Extrude + coorvalue = codeValue(); + if ((coorvalue <= 0.2) && coorvalue > 0) + sprintf_P(commandStr, PSTR("G1 E0.1F%i"), movespeed); + else if ((coorvalue <= -0.1) && coorvalue > -1) + sprintf_P(commandStr, PSTR("G1 E-0.1F%i"), movespeed); + else + sprintf_P(commandStr, PSTR("G1 E%iF500"), int(coorvalue)); + } - if (strlen(commandStr) > 0) { - sprintf_P(fullCommandStr, PSTR("G91\n%s\nG90"), commandStr); - #if ENABLED(ANYCUBIC_LCD_DEBUG) - SERIAL_ECHOPGM("TFT Serial Debug: A22 Move final request with gcode... "); - SERIAL_ECHOLN(fullCommandStr); - #endif - injectCommands(fullCommandStr); - } + if (strlen(commandStr) > 0) { + sprintf_P(fullCommandStr, PSTR("G91\n%s\nG90"), commandStr); + DEBUG_ECHOPGM("TFT Serial Debug: A22 Move final request with gcode... "); + DEBUG_ECHOLN(fullCommandStr); + injectCommands(fullCommandStr); } - SENDLINE_PGM(""); - break; + } + SENDLINE_PGM(""); + break; - case 23: // A23 preheat pla - if (!isPrinting()) { - if (getAxisPosition_mm(Z) < 10) - injectCommands(F("G1 Z10")); // RASE Z AXIS + case 23: // A23 preheat pla + if (!isPrinting()) { + if (getAxisPosition_mm(Z) < 10) + injectCommands(F("G1 Z10")); // RASE Z AXIS - setTargetTemp_celsius(PREHEAT_1_TEMP_BED, (heater_t)BED); - setTargetTemp_celsius(PREHEAT_1_TEMP_HOTEND, (extruder_t)E0); - SENDLINE_PGM("OK"); - } - break; + setTargetTemp_celsius(PREHEAT_1_TEMP_BED, (heater_t)BED); + setTargetTemp_celsius(PREHEAT_1_TEMP_HOTEND, (extruder_t)E0); + SENDLINE_PGM("OK"); + } + break; - case 24:// A24 preheat abs - if (!isPrinting()) { - if (getAxisPosition_mm(Z) < 10) - injectCommands(F("G1 Z10")); // RASE Z AXIS + case 24:// A24 preheat abs + if (!isPrinting()) { + if (getAxisPosition_mm(Z) < 10) + injectCommands(F("G1 Z10")); // RASE Z AXIS - setTargetTemp_celsius(PREHEAT_2_TEMP_BED, (heater_t)BED); - setTargetTemp_celsius(PREHEAT_2_TEMP_HOTEND, (extruder_t)E0); - SENDLINE_PGM("OK"); - } - break; + setTargetTemp_celsius(PREHEAT_2_TEMP_BED, (heater_t)BED); + setTargetTemp_celsius(PREHEAT_2_TEMP_HOTEND, (extruder_t)E0); + SENDLINE_PGM("OK"); + } + break; - case 25: // A25 cool down - if (!isPrinting()) { - setTargetTemp_celsius(0, (heater_t) BED); - setTargetTemp_celsius(0, (extruder_t) E0); + case 25: // A25 cool down + if (!isPrinting()) { + setTargetTemp_celsius(0, (heater_t) BED); + setTargetTemp_celsius(0, (extruder_t) E0); - SENDLINE_DBG_PGM("J12", "TFT Serial Debug: Cooling down... J12"); // J12 cool down - } - break; + SENDLINE_DBG_PGM("J12", "TFT Serial Debug: Cooling down... J12"); // J12 cool down + } + break; - case 26: // A26 refresh SD - #if HAS_MEDIA - if (isMediaInserted()) { - if (strlen(SelectedDirectory) > 0) { - FileList currentFileList; - if ((SelectedDirectory[0] == '.') && (SelectedDirectory[1] == '.')) { - currentFileList.upDir(); - } - else { - if (SelectedDirectory[0] == '<') - HandleSpecialMenu(); - else - currentFileList.changeDir(SelectedDirectory); - } + case 26: // A26 refresh SD + #if HAS_MEDIA + if (isMediaInserted()) { + if (strlen(selectedDirectory) > 0) { + FileList currentFileList; + if ((selectedDirectory[0] == '.') && (selectedDirectory[1] == '.')) { + currentFileList.upDir(); + } + else { + if (selectedDirectory[0] == '<') + handleSpecialMenu(); + else + currentFileList.changeDir(selectedDirectory); } } - else { - SENDLINE_DBG_PGM("J02", "TFT Serial Debug: No SD Card mounted to refresh SD A26... J02"); - } + } + else { + SENDLINE_DBG_PGM("J02", "TFT Serial Debug: No SD Card mounted to refresh SD A26... J02"); + } - SelectedDirectory[0] = 0; - #endif - break; + selectedDirectory[0] = 0; + #endif + break; - #if ENABLED(SERVO_ENDSTOPS) - case 27: break; // A27 servos angles adjust - #endif + #if ENABLED(SERVO_ENDSTOPS) + case 27: break; // A27 servos angles adjust + #endif - case 28: // A28 filament test - if (CodeSeen('O')) - NOOP; - else if (CodeSeen('C')) - NOOP; - SENDLINE_PGM(""); - break; + case 28: // A28 filament test + if (codeSeen('O')) + NOOP; + else if (codeSeen('C')) + NOOP; + SENDLINE_PGM(""); + break; - case 33: // A33 get version info - SEND_PGM("J33 "); - SENDLINE_PGM(DETAILED_BUILD_VERSION); - break; + case 33: // A33 get version info + SEND_PGM("J33 "); + SENDLINE_PGM(DETAILED_BUILD_VERSION); + break; - default: - break; - } + default: + break; } - - TFTbufindw = (TFTbufindw + 1) % TFTBUFSIZE; - TFTbuflen += 1; - serial3_count = 0; // clear buffer - } - else { - TFTcmdbuffer[TFTbufindw][serial3_count++] = serial3_char; } - } + + tftBufIndW = (tftBufIndW + 1) % (TFTBUFSIZE); + tftBufLen++; + serial_count = 0; // clear buffer + + } // while } -void AnycubicTFTClass::DoSDCardStateCheck() { +void AnycubicTFTClass::doSDCardStateCheck() { #if BOTH(HAS_MEDIA, HAS_SD_DETECT) bool isInserted = isMediaInserted(); if (isInserted) @@ -934,7 +895,7 @@ void AnycubicTFTClass::DoSDCardStateCheck() { #endif } -void AnycubicTFTClass::DoFilamentRunoutCheck() { +void AnycubicTFTClass::doFilamentRunoutCheck() { #if ENABLED(FILAMENT_RUNOUT_SENSOR) // NOTE: getFilamentRunoutState() only returns the runout state if the job is printing // we want to actually check the status of the pin here, regardless of printstate @@ -953,23 +914,18 @@ void AnycubicTFTClass::DoFilamentRunoutCheck() { #endif // FILAMENT_RUNOUT_SENSOR } -void AnycubicTFTClass::StartPrint() { +void AnycubicTFTClass::startPrint() { #if HAS_MEDIA - if (!isPrinting() && strlen(SelectedFile) > 0) { - #if ENABLED(ANYCUBIC_LCD_DEBUG) - SERIAL_ECHOPGM("TFT Serial Debug: About to print file ... "); - SERIAL_ECHO(isPrinting()); - SERIAL_ECHOPGM(" "); - SERIAL_ECHOLN(SelectedFile); - #endif + if (!isPrinting() && strlen(selectedFile) > 0) { + DEBUG_ECHOLNPGM("TFT Serial Debug: About to print file ... ", isPrinting(), " ", selectedFile); mediaPrintingState = AMPRINTSTATE_PRINTING; mediaPauseState = AMPAUSESTATE_NOT_PAUSED; - printFile(SelectedFile); + printFile(selectedFile); } #endif // SDUPPORT } -void AnycubicTFTClass::PausePrint() { +void AnycubicTFTClass::pausePrint() { #if HAS_MEDIA if (isPrintingFromMedia() && mediaPrintingState != AMPRINTSTATE_STOP_REQUESTED && mediaPauseState == AMPAUSESTATE_NOT_PAUSED) { mediaPrintingState = AMPRINTSTATE_PAUSE_REQUESTED; @@ -983,16 +939,14 @@ void AnycubicTFTClass::PausePrint() { #endif } -void AnycubicTFTClass::ResumePrint() { +void AnycubicTFTClass::resumePrint() { #if HAS_MEDIA #if ENABLED(FILAMENT_RUNOUT_SENSOR) if (READ(FIL_RUNOUT1_PIN)) { - #if ENABLED(ANYCUBIC_LCD_DEBUG) - SERIAL_ECHOLNPGM("TFT Serial Debug: Resume Print with filament sensor still tripped... "); - #endif + DEBUG_ECHOLNPGM("TFT Serial Debug: Resume Print with filament sensor still tripped... "); // trigger the user message box - DoFilamentRunoutCheck(); + doFilamentRunoutCheck(); // re-enable the continue button SENDLINE_DBG_PGM("J18", "TFT Serial Debug: Resume Print with filament sensor still tripped... J18"); @@ -1019,7 +973,7 @@ void AnycubicTFTClass::ResumePrint() { #endif } -void AnycubicTFTClass::StopPrint() { +void AnycubicTFTClass::stopPrint() { #if HAS_MEDIA mediaPrintingState = AMPRINTSTATE_STOP_REQUESTED; mediaPauseState = AMPAUSESTATE_NOT_PAUSED; diff --git a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.h b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.h index 8fcadc1553fd..7316c5fc04fc 100644 --- a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.h +++ b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.h @@ -48,48 +48,45 @@ enum AnycubicMediaPauseState { class AnycubicTFTClass { public: AnycubicTFTClass(); - static void OnSetup(); - static void OnCommandScan(); - static void OnKillTFT(); - static void OnSDCardStateChange(bool); - static void OnSDCardError(); - static void OnFilamentRunout(); - static void OnUserConfirmRequired(const char *); - static void OnPrintTimerStarted(); - static void OnPrintTimerPaused(); - static void OnPrintTimerStopped(); + static void onSetup(); + static void onCommandScan(); + static void onKillTFT(); + static void onSDCardStateChange(bool); + static void onSDCardError(); + static void onFilamentRunout(); + static void onUserConfirmRequired(const char *); + static void onPrintTimerStarted(); + static void onPrintTimerPaused(); + static void onPrintTimerStopped(); private: - static char TFTcmdbuffer[TFTBUFSIZE][TFT_MAX_CMD_SIZE]; - static int TFTbuflen, TFTbufindr, TFTbufindw; - static char serial3_char; - static int serial3_count; - static char *TFTstrchr_pointer; - static uint8_t SpecialMenu; + static char tftCommands[TFTBUFSIZE][TFT_MAX_CMD_SIZE]; + static int tftBufLen, tftBufIndR, tftBufIndW; + static char *tftStrchrPtr; + static uint8_t specialMenu; static AnycubicMediaPrintState mediaPrintingState; static AnycubicMediaPauseState mediaPauseState; - static float CodeValue(); - static bool CodeSeen(char); - static bool IsNozzleHomed(); - static void RenderCurrentFileList(); - static void RenderSpecialMenu(uint16_t); - static void RenderCurrentFolder(uint16_t); - static void GetCommandFromTFT(); - static void CheckSDCardChange(); - static void CheckPauseState(); - static void CheckPrintCompletion(); - static void HandleSpecialMenu(); - static void DoSDCardStateCheck(); - static void DoFilamentRunoutCheck(); - static void StartPrint(); - static void PausePrint(); - static void ResumePrint(); - static void StopPrint(); + static float codeValue(); + static bool codeSeen(char); + static bool isNozzleHomed(); + static void renderCurrentFileList(); + static void renderSpecialMenu(uint16_t); + static void renderCurrentFolder(uint16_t); + static void getCommandFromTFT(); + static void checkSDCardChange(); + static void checkPauseState(); + static void handleSpecialMenu(); + static void doSDCardStateCheck(); + static void doFilamentRunoutCheck(); + static void startPrint(); + static void pausePrint(); + static void resumePrint(); + static void stopPrint(); - static char SelectedDirectory[30]; - static char SelectedFile[FILENAME_LENGTH]; + static char selectedDirectory[30]; + static char selectedFile[FILENAME_LENGTH]; }; -extern AnycubicTFTClass AnycubicTFT; +extern AnycubicTFTClass anycubicTFT; extern const char G28_STR[]; diff --git a/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.cpp b/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.cpp index 03eba4c5b355..da88acc725c1 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.cpp @@ -40,8 +40,8 @@ using namespace ExtUI; namespace Anycubic { - FileList FileNavigator::filelist; // Instance of the Marlin file API - char FileNavigator::currentfoldername[MAX_PATH_LEN + 1]; // Current folder path + FileList FileNavigator::filelist; // ExtUI file API + char FileNavigator::currentDirPath[MAX_PATH_LEN + 1]; // Current folder path uint16_t FileNavigator::lastindex; uint8_t FileNavigator::folderdepth; uint16_t FileNavigator::currentindex; // override the panel request @@ -51,7 +51,7 @@ namespace Anycubic { FileNavigator::FileNavigator() { reset(); } void FileNavigator::reset() { - currentfoldername[0] = '\0'; + currentDirPath[0] = '\0'; folderdepth = 0; currentindex = 0; lastindex = 0; @@ -94,7 +94,7 @@ namespace Anycubic { DgusTFT::SendTxtToTFT(filelist.longFilename(), TXT_FILE_0 + file_num*0x30); #if ACDEBUG(AC_FILE) - SERIAL_ECHOLNPGM("seek: ", _seek, " '", filelist.longFilename(), "' '", currentfoldername, "", filelist.shortFilename(), "'\n"); + SERIAL_ECHOLNPGM("seek: ", _seek, " '", filelist.longFilename(), "' '", currentDirPath, "", filelist.shortFilename(), "'\n"); #endif } else { @@ -120,11 +120,11 @@ namespace Anycubic { void FileNavigator::changeDIR(char *folder) { #if ACDEBUG(AC_FILE) - SERIAL_ECHOLNPGM("currentfolder: ", currentfoldername, " New: ", folder); + SERIAL_ECHOLNPGM("currentfolder: ", currentDirPath, " New: ", folder); #endif if (folderdepth >= MAX_FOLDER_DEPTH) return; // limit the folder depth - strcat(currentfoldername, folder); - strcat(currentfoldername, "/"); + strcat(currentDirPath, folder); + strcat(currentDirPath, "/"); filelist.changeDir(folder); refresh(); folderdepth++; @@ -138,22 +138,22 @@ namespace Anycubic { currentindex = 0; // Remove the last child folder from the stored path if (folderdepth == 0) { - currentfoldername[0] = '\0'; + currentDirPath[0] = '\0'; reset(); } else { char *pos = nullptr; for (uint8_t f = 0; f < folderdepth; f++) - pos = strchr(currentfoldername, '/'); + pos = strchr(currentDirPath, '/'); *(pos + 1) = '\0'; } #if ACDEBUG(AC_FILE) - SERIAL_ECHOLNPGM("depth: ", folderdepth, " currentfoldername: ", currentfoldername); + SERIAL_ECHOLNPGM("depth: ", folderdepth, " currentDirPath: ", currentDirPath); #endif } - char* FileNavigator::getCurrentFolderName() { return currentfoldername; } + char* FileNavigator::getCurrentDirPath() { return currentDirPath; } uint16_t FileNavigator::getFileNum() { return filelist.count(); } } diff --git a/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.h b/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.h index dd4b0b0f7481..2505ae7c4cd9 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.h +++ b/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.h @@ -43,13 +43,13 @@ namespace Anycubic { static void changeDIR(char *); static void sendFile(); static void refresh(); - static char* getCurrentFolderName(); + static char* getCurrentDirPath(); static uint16_t getFileNum(); private: static uint16_t lastindex; static uint16_t currentindex; static uint8_t folderdepth; - static char currentfoldername[MAX_PATH_LEN + 1]; + static char currentDirPath[MAX_PATH_LEN + 1]; }; extern FileNavigator filenavigator; diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp index e846d65a1faf..49609ada329a 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp @@ -111,10 +111,10 @@ namespace Anycubic { uint8_t pop_up_index_saved; uint32_t key_value_saved; - void DEBUG_PRINT_PAUSED_STATE(FSTR_P const msg, paused_state_t state); - void DEBUG_PRINT_PRINTER_STATE(FSTR_P const msg, printer_state_t state); - void DEBUG_PRINT_TIMER_EVENT(FSTR_P const msg, timer_event_t event); - void DEBUG_PRINT_MEDIA_EVENT(FSTR_P const msg, media_event_t event); + void DEBUG_PRINT_PAUSED_STATE(const paused_state_t state, FSTR_P const msg=nullptr); + void DEBUG_PRINT_PRINTER_STATE(const printer_state_t state, FSTR_P const msg=nullptr); + void DEBUG_PRINT_TIMER_EVENT(const timer_event_t event, FSTR_P const msg=nullptr); + void DEBUG_PRINT_MEDIA_EVENT(const media_event_t event, FSTR_P const msg=nullptr); DgusTFT Dgus; @@ -127,9 +127,9 @@ namespace Anycubic { feedrate_back = -1; } - void DgusTFT::Startup() { + void DgusTFT::startup() { #if ACDEBUG(AC_MARLIN) - DEBUG_ECHOLNPGM("DgusTFT::Startup()"); + DEBUG_ECHOLNPGM("DgusTFT::startup()"); #endif selectedfile[0] = '\0'; panel_command[0] = '\0'; @@ -148,16 +148,16 @@ namespace Anycubic { TFTSer.begin(115200); // Signal Board has reset - SendtoTFTLN(AC_msg_main_board_has_reset); + tftSendLn(AC_msg_main_board_has_reset); // Enable levelling and Disable end stops during print // as Z home places nozzle above the bed so we need to allow it past the end stops injectCommands(AC_cmnd_enable_leveling); #if ACDEBUGLEVEL - DEBUG_ECHOLNPGM("Startup AC Debug Level ", ACDEBUGLEVEL); + DEBUG_ECHOLNPGM("startup AC Debug Level ", ACDEBUGLEVEL); #endif - SendtoTFTLN(AC_msg_ready); + tftSendLn(AC_msg_ready); } void DgusTFT::ParamInit() { @@ -188,15 +188,15 @@ namespace Anycubic { RequestValueFromTFT(0x14); // get page ID } - void DgusTFT::IdleLoop() { - if (ReadTFTCommand()) { - ProcessPanelRequest(); + void DgusTFT::idleLoop() { + if (readTFTCommand()) { + processPanelRequest(); command_len = 0; } #if ACDEBUG(AC_MARLIN) if (key_value) { - DEBUG_ECHOLNPGM("IdleLoop page: ", page_index_now); + DEBUG_ECHOLNPGM("idleLoop page: ", page_index_now); DEBUG_ECHOLNPGM("key: ", key_value); } #endif @@ -266,7 +266,7 @@ namespace Anycubic { pop_up_manager(); key_value = 0; - CheckHeaters(); + checkHeaters(); } uint8_t FSHlength(FSTR_P FSHinput) { @@ -276,7 +276,7 @@ namespace Anycubic { return stringLength; } - void DgusTFT::PrinterKilled(FSTR_P error_p, FSTR_P component_p) { + void DgusTFT::printerKilled(FSTR_P error_p, FSTR_P component_p) { // copy string in FLASH to RAM for strcmp_P @@ -288,9 +288,9 @@ namespace Anycubic { char component[FSHlength(component_p) + 1]; memcpy_P(component, component_p, textLength + 1); // +1 for the null terminator - SendtoTFTLN(AC_msg_kill_lcd); + tftSendLn(AC_msg_kill_lcd); #if ACDEBUG(AC_MARLIN) - DEBUG_ECHOLNPGM("PrinterKilled()\nerror: ", error, "\ncomponent: ", component); + DEBUG_ECHOLNPGM("printerKilled()\nerror: ", error, "\ncomponent: ", component); #endif if (strcmp_P(error, PSTR("Heating Failed")) == 0) { @@ -364,9 +364,9 @@ namespace Anycubic { SendColorToTFT(color, TXT_DESCRIPT_0 + 0x30 * (index - 1)); } - void DgusTFT::MediaEvent(media_event_t event) { + void DgusTFT::mediaEvent(media_event_t event) { #if ACDEBUG(AC_MARLIN) - DEBUG_PRINT_MEDIA_EVENT(F("ProcessMediaStatus() "), event); + DEBUG_PRINT_MEDIA_EVENT(event); #endif switch (event) { case AC_media_inserted: @@ -379,12 +379,12 @@ namespace Anycubic { lcd_txtbox_index = 0; } - SendFileList(lcd_txtbox_index); + sendFileList(lcd_txtbox_index); break; case AC_media_removed: - SendtoTFTLN(AC_msg_sd_card_removed); + tftSendLn(AC_msg_sd_card_removed); filenavigator.reset(); @@ -394,33 +394,33 @@ namespace Anycubic { lcd_txtbox_index = 0; } - SendFileList(lcd_txtbox_index); + sendFileList(lcd_txtbox_index); break; case AC_media_error: - SendtoTFTLN(AC_msg_no_sd_card); + tftSendLn(AC_msg_no_sd_card); break; } } - void DgusTFT::TimerEvent(timer_event_t event) { + void DgusTFT::timerEvent(timer_event_t event) { #if ACDEBUG(AC_MARLIN) - DEBUG_PRINT_TIMER_EVENT(F("TimerEvent() "), event); - DEBUG_PRINT_PRINTER_STATE(F("Printer State: "), printer_state); + DEBUG_PRINT_TIMER_EVENT(event); + DEBUG_PRINT_PRINTER_STATE(printer_state); #endif switch (event) { case AC_timer_started: setSoftEndstopState(false); // disable endstops to print printer_state = AC_printer_printing; - SendtoTFTLN(AC_msg_print_from_sd_card); + tftSendLn(AC_msg_print_from_sd_card); break; case AC_timer_paused: //printer_state = AC_printer_paused; //pause_state = AC_paused_idle; - SendtoTFTLN(AC_msg_paused); + tftSendLn(AC_msg_paused); break; case AC_timer_stopped: @@ -438,7 +438,7 @@ namespace Anycubic { sprintf(str_buf + strlen(str_buf), "%s M", utostr3(time % 60)); SendTxtToTFT(str_buf, TXT_FINISH_TIME); ChangePageOfTFT(PAGE_PRINT_FINISH); - SendtoTFTLN(AC_msg_print_complete); + tftSendLn(AC_msg_print_complete); pop_up_index = 100; } } @@ -449,12 +449,12 @@ namespace Anycubic { #if ENABLED(FILAMENT_RUNOUT_SENSOR) - void DgusTFT::FilamentRunout() { + void DgusTFT::filamentRunout() { #if ACDEBUG(AC_MARLIN) - DEBUG_PRINT_PRINTER_STATE(F("FilamentRunout() printer_state "), printer_state); + DEBUG_PRINT_PRINTER_STATE(printer_state, F("filamentRunout() ")); // 1 Signal filament out - SendtoTFTLN(isPrintingFromMedia() ? AC_msg_filament_out_alert : AC_msg_filament_out_block); + tftSendLn(isPrintingFromMedia() ? AC_msg_filament_out_alert : AC_msg_filament_out_block); //printer_state = AC_printer_filament_out; DEBUG_ECHOLNPGM("getFilamentRunoutState: ", getFilamentRunoutState()); @@ -477,13 +477,13 @@ namespace Anycubic { #endif // FILAMENT_RUNOUT_SENSOR - void DgusTFT::ConfirmationRequest(const char * const msg) { + void DgusTFT::confirmationRequest(const char * const msg) { // M108 continue #if ACDEBUG(AC_MARLIN) DEBUG_ECHOLNPGM("HomingComplete, line: ", __LINE__); - DEBUG_ECHOLNPGM("ConfirmationRequest() ", msg); - DEBUG_PRINT_PRINTER_STATE(F("printer_state: " ), printer_state); - DEBUG_PRINT_PAUSED_STATE(F("pause_state: "), pause_state); + DEBUG_ECHOLNPGM("confirmationRequest() ", msg); + DEBUG_PRINT_PRINTER_STATE(printer_state); + DEBUG_PRINT_PAUSED_STATE(pause_state); #endif switch (printer_state) { @@ -504,7 +504,7 @@ namespace Anycubic { // Heater timout, send acknowledgement if (strcmp_P(msg, MARLIN_msg_heater_timeout) == 0) { pause_state = AC_paused_heater_timed_out; - SendtoTFTLN(AC_msg_paused); // enable continue button + tftSendLn(AC_msg_paused); // enable continue button PlayTune(HeaterTimeout); } // Reheat finished, send acknowledgement @@ -517,12 +517,12 @@ namespace Anycubic { if (pause_state != AC_paused_filament_lack) pause_state = AC_paused_idle; - SendtoTFTLN(AC_msg_paused); // enable continue button + tftSendLn(AC_msg_paused); // enable continue button } // Filament Purging, send acknowledgement enter run mode else if (strcmp_P(msg, MARLIN_msg_filament_purging) == 0) { pause_state = AC_paused_purging_filament; - SendtoTFTLN(AC_msg_paused); // enable continue button + tftSendLn(AC_msg_paused); // enable continue button } else if (strcmp_P(msg, MARLIN_msg_nozzle_parked) == 0) { #if ACDEBUG(AC_MARLIN) @@ -540,11 +540,11 @@ namespace Anycubic { } } - void DgusTFT::StatusChange(const char * const msg) { + void DgusTFT::statusChange(const char * const msg) { #if ACDEBUG(AC_MARLIN) - DEBUG_ECHOLNPGM("StatusChange() ", msg); - DEBUG_PRINT_PRINTER_STATE(F("printer_state: "), printer_state); - DEBUG_PRINT_PAUSED_STATE(F("pause_state: "), pause_state); + DEBUG_ECHOLNPGM("statusChange() ", msg); + DEBUG_PRINT_PRINTER_STATE(printer_state); + DEBUG_PRINT_PAUSED_STATE(pause_state); #endif bool msg_matched = false; @@ -579,7 +579,7 @@ namespace Anycubic { PlayTune(BeepBeepBeeep); injectCommands(F("G1 Z50 F500")); ChangePageOfTFT(PAGE_CHS_ABNORMAL_LEVELING_SENSOR); - SendtoTFTLN(AC_msg_probing_complete); + tftSendLn(AC_msg_probing_complete); printer_state = AC_printer_idle; msg_matched = true; } @@ -595,7 +595,7 @@ namespace Anycubic { case AC_printer_printing: if (strcmp_P(msg, MARLIN_msg_reheating) == 0) { - SendtoTFTLN(AC_msg_paused); // enable continue button + tftSendLn(AC_msg_paused); // enable continue button ChangePageOfTFT(PAGE_STATUS2); msg_matched = true; } @@ -652,14 +652,14 @@ namespace Anycubic { if (!msg_matched) { #if HAS_HOTEND if (strcmp_P(msg, MARLIN_msg_extruder_heating) == 0) { - SendtoTFTLN(AC_msg_nozzle_heating); + tftSendLn(AC_msg_nozzle_heating); hotend_state = AC_heater_temp_set; return; } #endif #if HAS_HEATED_BED if (strcmp_P(msg, MARLIN_msg_bed_heating) == 0) { - SendtoTFTLN(AC_msg_bed_heating); + tftSendLn(AC_msg_bed_heating); hotbed_state = AC_heater_temp_set; } #endif @@ -675,7 +675,7 @@ namespace Anycubic { LOOP_L_N(i, COUNT(data)) TFTSer.write(data[i]); } - void DgusTFT::PowerLossRecovery() { + void DgusTFT::powerLossRecovery() { printer_state = AC_printer_resuming_from_power_outage; // Play tune to notify user we can recover. } @@ -699,7 +699,7 @@ namespace Anycubic { ChangePageOfTFT(page_index_last); } - void DgusTFT::SendtoTFT(FSTR_P const fstr/*=nullptr*/) { // A helper to print PROGMEM string to the panel + void DgusTFT::tftSend(FSTR_P const fstr/*=nullptr*/) { // A helper to print PROGMEM string to the panel #if ACDEBUG(AC_SOME) DEBUG_ECHOF(fstr); #endif @@ -707,12 +707,12 @@ namespace Anycubic { while (const char c = pgm_read_byte(str++)) TFTSer.write(c); } - void DgusTFT::SendtoTFTLN(FSTR_P const fstr/*=nullptr*/) { + void DgusTFT::tftSendLn(FSTR_P const fstr/*=nullptr*/) { if (fstr) { #if ACDEBUG(AC_SOME) DEBUG_ECHOPGM("> "); #endif - SendtoTFT(fstr); + tftSend(fstr); #if ACDEBUG(AC_SOME) SERIAL_EOL(); #endif @@ -804,7 +804,7 @@ namespace Anycubic { LOOP_L_N(i, 10) TFTSer.write(data[i]); } - bool DgusTFT::ReadTFTCommand() { + bool DgusTFT::readTFTCommand() { static uint8_t length = 0, cnt = 0, tft_receive_steps = 0; uint8_t data; @@ -858,7 +858,7 @@ namespace Anycubic { #if 0 { - //SERIAL_ECHOLNPGM("ReadTFTCommand: ", millis()); + //SERIAL_ECHOLNPGM("readTFTCommand: ", millis()); //return -1; bool command_ready = false; @@ -888,7 +888,7 @@ namespace Anycubic { uint8_t req = atoi(&panel_command[1]); if (req > 7 && req != 20) { DEBUG_ECHOLNPGM("> ", panel_command); - DEBUG_PRINT_PRINTER_STATE(F("printer_state: "), printer_state); + DEBUG_PRINT_PRINTER_STATE(printer_state); } #endif } @@ -902,7 +902,7 @@ namespace Anycubic { return -1; } - void DgusTFT::CheckHeaters() { + void DgusTFT::checkHeaters() { static uint32_t time_last = 0; if (PENDING(millis(), time_last)) return; time_last = millis() + 500; @@ -916,7 +916,7 @@ namespace Anycubic { if (!WITHIN(temp, HEATER_0_MINTEMP, HEATER_0_MAXTEMP)) { faultE0Duration++; if (faultE0Duration >= AC_HEATER_FAULT_VALIDATION_TIME) { - SendtoTFTLN(AC_msg_nozzle_temp_abnormal); + tftSendLn(AC_msg_nozzle_temp_abnormal); #if ACDEBUG(AC_MARLIN) DEBUG_ECHOLNPGM("Extruder temp abnormal! : ", temp); #endif @@ -931,7 +931,7 @@ namespace Anycubic { if (!WITHIN(temp, BED_MINTEMP, BED_MAXTEMP)) { faultBedDuration++; if (faultBedDuration >= AC_HEATER_FAULT_VALIDATION_TIME) { - SendtoTFTLN(AC_msg_bed_temp_abnormal); + tftSendLn(AC_msg_bed_temp_abnormal); #if ACDEBUG(AC_MARLIN) DEBUG_ECHOLNPGM("Bed temp abnormal! : ", temp); #endif @@ -944,7 +944,7 @@ namespace Anycubic { // Update panel with hotend heater status if (hotend_state != AC_heater_temp_reached) { if (WITHIN(getActualTemp_celsius(E0) - getTargetTemp_celsius(E0), -1, 1)) { - SendtoTFTLN(AC_msg_nozzle_heating_done); + tftSendLn(AC_msg_nozzle_heating_done); hotend_state = AC_heater_temp_reached; } } @@ -952,22 +952,22 @@ namespace Anycubic { // Update panel with bed heater status if (hotbed_state != AC_heater_temp_reached) { if (WITHIN(getActualTemp_celsius(BED) - getTargetTemp_celsius(BED), -0.5, 0.5)) { - SendtoTFTLN(AC_msg_bed_heating_done); + tftSendLn(AC_msg_bed_heating_done); hotbed_state = AC_heater_temp_reached; } } #endif } - void DgusTFT::SendFileList(int8_t startindex) { + void DgusTFT::sendFileList(int8_t startindex) { // Respond to panel request for 4 files starting at index #if ACDEBUG(AC_INFO) - DEBUG_ECHOLNPGM("## SendFileList ## ", startindex); + DEBUG_ECHOLNPGM("## sendFileList ## ", startindex); #endif filenavigator.getFiles(startindex); } - void DgusTFT::SelectFile() { + void DgusTFT::selectFile() { strncpy(selectedfile, panel_command + 4, command_len - 4); selectedfile[command_len - 5] = '\0'; #if ACDEBUG(AC_FILE) @@ -975,22 +975,22 @@ namespace Anycubic { #endif switch (selectedfile[0]) { case '/': // Valid file selected - SendtoTFTLN(AC_msg_sd_file_open_success); + tftSendLn(AC_msg_sd_file_open_success); break; case '<': // .. (go up folder level) filenavigator.upDIR(); - SendtoTFTLN(AC_msg_sd_file_open_failed); - SendFileList(0); + tftSendLn(AC_msg_sd_file_open_failed); + sendFileList(0); break; default: // enter sub folder filenavigator.changeDIR(selectedfile); - SendtoTFTLN(AC_msg_sd_file_open_failed); - SendFileList(0); + tftSendLn(AC_msg_sd_file_open_failed); + sendFileList(0); break; } } - void DgusTFT::ProcessPanelRequest() { + void DgusTFT::processPanelRequest() { uint16_t control_index = 0; uint32_t control_value; uint16_t temp; @@ -1080,7 +1080,7 @@ namespace Anycubic { } else if (control_value == 0x010000) { // startup first gif - // Startup tunes are defined in Tunes.h + // startup tunes are defined in Tunes.h PlayTune(Anycubic_PowerOn); // takes 3500 ms } } @@ -1112,15 +1112,15 @@ namespace Anycubic { int8_t req = atoi(&panel_command[1]); // Information requests A0 - A8 and A33 - if (req <= 8 || req == 33) PanelInfo(req); + if (req <= 8 || req == 33) panelInfo(req); // Simple Actions A9 - A28 - else if (req <= 28) PanelAction(req); + else if (req <= 28) panelAction(req); // Process Initiation - else if (req <= 34) PanelProcess(req); + else if (req <= 34) panelProcess(req); - else SendtoTFTLN(); + else tftSendLn(); } #endif @@ -1187,7 +1187,7 @@ namespace Anycubic { lcd_txtbox_index = 0; } ChangePageOfTFT(PAGE_FILE); - SendFileList(0); + sendFileList(0); } break; case 2: { // tool @@ -1249,7 +1249,7 @@ namespace Anycubic { set_descript_color(COLOR_BLUE); lcd_txtbox_index = 0; - SendFileList(lcd_txtbox_page * 5); + sendFileList(lcd_txtbox_page * 5); } break; @@ -1260,7 +1260,7 @@ namespace Anycubic { set_descript_color(COLOR_BLUE); lcd_txtbox_index = 0; - SendFileList(lcd_txtbox_page * 5); + sendFileList(lcd_txtbox_page * 5); } break; @@ -1274,12 +1274,12 @@ namespace Anycubic { set_descript_color(COLOR_BLUE); lcd_txtbox_index = 0; } - SendFileList(lcd_txtbox_index); + sendFileList(lcd_txtbox_index); break; case 5: // resume of outage(last power off) #if ACDEBUG(AC_MARLIN) - DEBUG_PRINT_PRINTER_STATE(F("printer_state: "), printer_state); + DEBUG_PRINT_PRINTER_STATE(printer_state); #endif if (lcd_txtbox_index > 0 && lcd_txtbox_index < 6) { // 1~5 @@ -1398,8 +1398,8 @@ namespace Anycubic { case 2: // resume print #if ACDEBUG(AC_MARLIN) - DEBUG_PRINT_PRINTER_STATE(F("printer_state: "), printer_state); - DEBUG_PRINT_PAUSED_STATE(F("pause_state :"), pause_state); + DEBUG_PRINT_PRINTER_STATE(printer_state); + DEBUG_PRINT_PAUSED_STATE(pause_state); #endif if ( pause_state == AC_paused_idle || pause_state == AC_paused_filament_lack @@ -2418,8 +2418,8 @@ namespace Anycubic { case 1: // return #if ACDEBUG(AC_MARLIN) - DEBUG_PRINT_PRINTER_STATE(F("printer_state: "), printer_state); - DEBUG_PRINT_PAUSED_STATE(F("pause_state: "), pause_state); + DEBUG_PRINT_PRINTER_STATE(printer_state); + DEBUG_PRINT_PAUSED_STATE(pause_state); #endif if (AC_printer_printing == printer_state) ChangePageOfTFT(PAGE_STATUS2); // show pause @@ -3179,6 +3179,7 @@ namespace Anycubic { break; case 15: // filament lack + case 23: if (page_index_now != PAGE_FILAMENT_LACK) ChangePageOfTFT(PAGE_FILAMENT_LACK); pop_up_index = 100; @@ -3194,12 +3195,6 @@ namespace Anycubic { pop_up_index = 100; break; - case 23: // - if (page_index_now != PAGE_FILAMENT_LACK) - ChangePageOfTFT(PAGE_FILAMENT_LACK); - pop_up_index = 100; - break; - case 24: { // uint32_t time = getProgress_seconds_elapsed() / 60; char str_buf[20]; @@ -3207,7 +3202,7 @@ namespace Anycubic { sprintf(str_buf + strlen(str_buf), "%s M", utostr3(time % 60)); SendTxtToTFT(str_buf, TXT_FINISH_TIME); ChangePageOfTFT(PAGE_PRINT_FINISH); - //SendtoTFTLN(AC_msg_print_complete); // no idea why this causes a compile error + //tftSendLn(AC_msg_print_complete); // no idea why this causes a compile error pop_up_index = 100; } break; @@ -3218,84 +3213,56 @@ namespace Anycubic { } } - void DEBUG_PRINT_PAUSED_STATE(FSTR_P const msg, paused_state_t state) { - DEBUG_ECHOPGM(msg, state); + void DEBUG_PRINT_PAUSED_STATE(const paused_state_t state, FSTR_P const msg/*=nullptr*/) { + if (msg) DEBUG_ECHOF(msg); + DEBUG_ECHOPGM("Paused state: ", state, " "); switch (state) { - case AC_paused_heater_timed_out: - DEBUG_ECHOLNPGM(" AC_paused_heater_timed_out"); - break; - case AC_paused_filament_lack: - DEBUG_ECHOLNPGM(" AC_paused_filament_lack"); - break; - case AC_paused_purging_filament: - DEBUG_ECHOLNPGM(" AC_paused_purging_filament"); - break; - case AC_paused_idle: - DEBUG_ECHOLNPGM(" AC_paused_idle"); - break; + case AC_paused_heater_timed_out: DEBUG_ECHOPGM("AC_paused_heater_timed_out"); break; + case AC_paused_filament_lack: DEBUG_ECHOPGM("AC_paused_filament_lack"); break; + case AC_paused_purging_filament: DEBUG_ECHOPGM("AC_paused_purging_filament"); break; + case AC_paused_idle: DEBUG_ECHOPGM("AC_paused_idle"); break; } + DEBUG_EOL(); } -// routines to make the debug outputs human readable + // Human-readable debugging - void DEBUG_PRINT_PRINTER_STATE(FSTR_P const msg, printer_state_t state) { - DEBUG_ECHOPGM(msg, state); + void DEBUG_PRINT_PRINTER_STATE(const printer_state_t state, FSTR_P const msg/*=nullptr*/) { + if (msg) DEBUG_ECHOF(msg); + DEBUG_ECHOPGM("Printer State: ", state, " "); switch (state) { - case AC_printer_idle: - DEBUG_ECHOLNPGM(" AC_printer_idle"); - break; - case AC_printer_probing: - DEBUG_ECHOLNPGM(" AC_printer_probing"); - break; - case AC_printer_printing: - DEBUG_ECHOLNPGM(" AC_printer_printing"); - break; - case AC_printer_pausing: - DEBUG_ECHOLNPGM(" AC_printer_pausing"); - break; - case AC_printer_paused: - DEBUG_ECHOLNPGM(" AC_printer_paused"); - break; - case AC_printer_stopping: - DEBUG_ECHOLNPGM(" AC_printer_stopping"); - break; - case AC_printer_stopping_from_media_remove: - DEBUG_ECHOLNPGM(" AC_printer_stopping_from_media_remove"); - break; - case AC_printer_resuming_from_power_outage: - DEBUG_ECHOLNPGM(" AC_printer_resuming_from_power_outage"); - break; + case AC_printer_idle: DEBUG_ECHOPGM("AC_printer_idle"); break; + case AC_printer_probing: DEBUG_ECHOPGM("AC_printer_probing"); break; + case AC_printer_printing: DEBUG_ECHOPGM("AC_printer_printing"); break; + case AC_printer_pausing: DEBUG_ECHOPGM("AC_printer_pausing"); break; + case AC_printer_paused: DEBUG_ECHOPGM("AC_printer_paused"); break; + case AC_printer_stopping: DEBUG_ECHOPGM("AC_printer_stopping"); break; + case AC_printer_stopping_from_media_remove: DEBUG_ECHOPGM("AC_printer_stopping_from_media_remove"); break; + case AC_printer_resuming_from_power_outage: DEBUG_ECHOPGM("AC_printer_resuming_from_power_outage"); break; } + DEBUG_EOL(); } - void DEBUG_PRINT_TIMER_EVENT(FSTR_P const msg, timer_event_t event) { - DEBUG_ECHOPGM(msg, event); + void DEBUG_PRINT_TIMER_EVENT(const timer_event_t event, FSTR_P const msg/*=nullptr*/) { + if (msg) DEBUG_ECHOPGM(msg, event); + DEBUG_ECHOPGM("timerEvent() ", event, " "); switch (event) { - case AC_timer_started: - DEBUG_ECHOLNPGM(" AC_timer_started"); - break; - case AC_timer_paused: - DEBUG_ECHOLNPGM(" AC_timer_paused"); - break; - case AC_timer_stopped: - DEBUG_ECHOLNPGM(" AC_timer_stopped"); - break; + case AC_timer_started: DEBUG_ECHOPGM("AC_timer_started"); break; + case AC_timer_paused: DEBUG_ECHOPGM("AC_timer_paused"); break; + case AC_timer_stopped: DEBUG_ECHOPGM("AC_timer_stopped"); break; } + DEBUG_EOL(); } - void DEBUG_PRINT_MEDIA_EVENT(FSTR_P const msg, media_event_t event) { - DEBUG_ECHOPGM(msg, event); + void DEBUG_PRINT_MEDIA_EVENT(const media_event_t event, FSTR_P const msg/*=nullptr*/) { + if (msg) DEBUG_ECHOPGM(msg, event); + DEBUG_ECHOPGM("ProcessMediaStatus() ", event, " "); switch (event) { - case AC_media_inserted: - DEBUG_ECHOLNPGM(" AC_media_inserted"); - break; - case AC_media_removed: - DEBUG_ECHOLNPGM(" AC_media_removed"); - break; - case AC_media_error: - DEBUG_ECHOLNPGM(" AC_media_error"); - break; + case AC_media_inserted: DEBUG_ECHOPGM("AC_media_inserted"); break; + case AC_media_removed: DEBUG_ECHOPGM("AC_media_removed"); break; + case AC_media_error: DEBUG_ECHOPGM("AC_media_error"); break; } + DEBUG_EOL(); } } // namespace diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h index 1903fa118336..747193dd77f5 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h @@ -356,17 +356,17 @@ namespace Anycubic { static lcd_info_t lcd_info, lcd_info_back; static uint16_t page_index_now; - static void Startup(); + static void startup(); static void ParamInit(); - static void IdleLoop(); - static void PrinterKilled(FSTR_P,FSTR_P); - static void MediaEvent(media_event_t); - static void TimerEvent(timer_event_t); - static void FilamentRunout(); - static void ConfirmationRequest(const char * const); - static void StatusChange(const char * const); + static void idleLoop(); + static void printerKilled(FSTR_P,FSTR_P); + static void mediaEvent(media_event_t); + static void timerEvent(timer_event_t); + static void filamentRunout(); + static void confirmationRequest(const char * const); + static void statusChange(const char * const); static void PowerLoss(); - static void PowerLossRecovery(); + static void powerLossRecovery(); static void HomingStart(); static void HomingComplete(); @@ -450,17 +450,17 @@ namespace Anycubic { static void pop_up_manager(); - static void SendtoTFT(FSTR_P const=nullptr); - static void SendtoTFTLN(FSTR_P const=nullptr); - static bool ReadTFTCommand(); + static void tftSend(FSTR_P const=nullptr); + static void tftSendLn(FSTR_P const=nullptr); + static bool readTFTCommand(); static int8_t Findcmndpos(const char *, const char); - static void CheckHeaters(); - static void SendFileList(int8_t); - static void SelectFile(); - static void ProcessPanelRequest(); - static void PanelInfo(uint8_t); - static void PanelAction(uint8_t); - static void PanelProcess(uint8_t); + static void checkHeaters(); + static void sendFileList(int8_t); + static void selectFile(); + static void processPanelRequest(); + static void panelInfo(uint8_t); + static void panelAction(uint8_t); + static void panelProcess(uint8_t); static void SendValueToTFT(const uint16_t value, const uint16_t address); static void RequestValueFromTFT(const uint16_t address); diff --git a/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp b/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp index 142f438861b4..80e1746a2f9f 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp @@ -37,17 +37,17 @@ using namespace Anycubic; namespace ExtUI { - void onStartup() { Dgus.Startup(); } + void onStartup() { Dgus.startup(); } - void onIdle() { Dgus.IdleLoop(); } + void onIdle() { Dgus.idleLoop(); } void onPrinterKilled(FSTR_P const error, FSTR_P const component) { - Dgus.PrinterKilled(error, component); + Dgus.printerKilled(error, component); } - void onMediaInserted() { Dgus.MediaEvent(AC_media_inserted); } - void onMediaError() { Dgus.MediaEvent(AC_media_error); } - void onMediaRemoved() { Dgus.MediaEvent(AC_media_removed); } + void onMediaInserted() { Dgus.mediaEvent(AC_media_inserted); } + void onMediaError() { Dgus.mediaEvent(AC_media_error); } + void onMediaRemoved() { Dgus.mediaEvent(AC_media_removed); } void onPlayTone(const uint16_t frequency, const uint16_t duration) { #if ENABLED(SPEAKER) @@ -55,15 +55,15 @@ namespace ExtUI { #endif } - void onPrintTimerStarted() { Dgus.TimerEvent(AC_timer_started); } - void onPrintTimerPaused() { Dgus.TimerEvent(AC_timer_paused); } - void onPrintTimerStopped() { Dgus.TimerEvent(AC_timer_stopped); } + void onPrintTimerStarted() { Dgus.timerEvent(AC_timer_started); } + void onPrintTimerPaused() { Dgus.timerEvent(AC_timer_paused); } + void onPrintTimerStopped() { Dgus.timerEvent(AC_timer_stopped); } void onPrintDone() {} - void onFilamentRunout(const extruder_t) { Dgus.FilamentRunout(); } + void onFilamentRunout(const extruder_t) { Dgus.filamentRunout(); } - void onUserConfirmRequired(const char * const msg) { Dgus.ConfirmationRequest(msg); } - void onStatusChanged(const char * const msg) { Dgus.StatusChange(msg); } + void onUserConfirmRequired(const char * const msg) { Dgus.confirmationRequest(msg); } + void onStatusChanged(const char * const msg) { Dgus.statusChange(msg); } void onHomingStart() { Dgus.HomingStart(); } void onHomingDone() { Dgus.HomingComplete(); } @@ -129,7 +129,7 @@ namespace ExtUI { // Called when power-loss state is detected void onPowerLoss() { /* handled internally */ } // Called on resume from power-loss - void onPowerLossResume() { Dgus.PowerLossRecovery(); } + void onPowerLossResume() { Dgus.powerLossRecovery(); } #endif #if HAS_PID_HEATING diff --git a/Marlin/src/lcd/extui/dgus/DGUSDisplay.cpp b/Marlin/src/lcd/extui/dgus/DGUSDisplay.cpp index 2a7d635c6d78..876a88891875 100644 --- a/Marlin/src/lcd/extui/dgus/DGUSDisplay.cpp +++ b/Marlin/src/lcd/extui/dgus/DGUSDisplay.cpp @@ -220,7 +220,7 @@ void DGUSDisplay::ProcessRx() { } } -size_t DGUSDisplay::GetFreeTxBuffer() { return SERIAL_GET_TX_BUFFER_FREE(); } +size_t DGUSDisplay::GetFreeTxBuffer() { return LCD_SERIAL_TX_BUFFER_FREE(); } void DGUSDisplay::WriteHeader(uint16_t adr, uint8_t cmd, uint8_t payloadlen) { LCD_SERIAL.write(DGUS_HEADER1); diff --git a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp index bdfea5d14720..aa83ee2a4ee2 100644 --- a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp @@ -157,7 +157,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { } #endif char axiscode; - uint16_t speed = manual_feedrate_mm_m[X_AXIS]; // Default feedrate for manual moves + uint16_t speed = manual_feedrate_mm_m.x; // Default feedrate for manual moves switch (var.VP) { default: return; @@ -172,7 +172,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Y_AXIS case VP_MOVE_Y: axiscode = 'Y'; - speed = manual_feedrate_mm_m[Y_AXIS]; + speed = manual_feedrate_mm_m.y; if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; break; #endif @@ -180,7 +180,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Z_AXIS case VP_MOVE_Z: axiscode = 'Z'; - speed = manual_feedrate_mm_m[Z_AXIS]; + speed = manual_feedrate_mm_m.z; if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; break; #endif diff --git a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp index e37718e0a742..d0119d494f4b 100644 --- a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp @@ -157,7 +157,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { } #endif char axiscode; - uint16_t speed = manual_feedrate_mm_m[X_AXIS]; // Default feedrate for manual moves + uint16_t speed = manual_feedrate_mm_m.x; // Default feedrate for manual moves switch (var.VP) { default: return; @@ -172,7 +172,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Y_AXIS case VP_MOVE_Y: axiscode = 'Y'; - speed = manual_feedrate_mm_m[Y_AXIS]; + speed = manual_feedrate_mm_m.y; if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; break; #endif @@ -180,7 +180,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Z_AXIS case VP_MOVE_Z: axiscode = 'Z'; - speed = manual_feedrate_mm_m[Z_AXIS]; + speed = manual_feedrate_mm_m.z; if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; break; #endif diff --git a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp index f882ba33d014..ad89a715c362 100644 --- a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp @@ -739,7 +739,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { return; char axiscode; - uint16_t speed = manual_feedrate_mm_m[X_AXIS]; // Default feedrate for manual moves + uint16_t speed = manual_feedrate_mm_m.x; // Default feedrate for manual moves switch (var.VP) { // switch X Y Z or Home default: return; @@ -753,7 +753,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Y_AXIS case VP_MOVE_Y: axiscode = 'Y'; - speed = manual_feedrate_mm_m[Y_AXIS]; + speed = manual_feedrate_mm_m.y; if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; break; #endif @@ -761,7 +761,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Z_AXIS case VP_MOVE_Z: axiscode = 'Z'; - speed = manual_feedrate_mm_m[Z_AXIS]; + speed = manual_feedrate_mm_m.z; if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; break; #endif diff --git a/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp index c274d7b431e3..44f4a95cad2a 100644 --- a/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp @@ -157,7 +157,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { } #endif char axiscode; - uint16_t speed = manual_feedrate_mm_m[X_AXIS]; // Default feedrate for manual moves + uint16_t speed = manual_feedrate_mm_m.x; // Default feedrate for manual moves switch (var.VP) { default: return; @@ -172,7 +172,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Y_AXIS case VP_MOVE_Y: axiscode = 'Y'; - speed = manual_feedrate_mm_m[Y_AXIS]; + speed = manual_feedrate_mm_m.y; if (!ExtUI::canMove(ExtUI::axis_t::Y)) goto cannotmove; break; #endif @@ -180,7 +180,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_Z_AXIS case VP_MOVE_Z: axiscode = 'Z'; - speed = manual_feedrate_mm_m[Z_AXIS]; + speed = manual_feedrate_mm_m.z; if (!ExtUI::canMove(ExtUI::axis_t::Z)) goto cannotmove; break; #endif diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp index 40f3bbf1d513..97ae7638c941 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp @@ -111,7 +111,7 @@ void DGUSRxHandler::ScreenChange(DGUS_VP &vp, void *data_ptr) { dgus_screen_handler.TriggerFullUpdate(); } - void DGUSRxHandler::SelectFile(DGUS_VP &vp, void *data_ptr) { + void DGUSRxHandler::selectFile(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const uint8_t index = ((uint8_t*)data_ptr)[1]; diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.h b/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.h index d6d5855b9d8b..b81b142d8411 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.h @@ -30,7 +30,7 @@ namespace DGUSRxHandler { #if HAS_MEDIA void Scroll(DGUS_VP &, void *); - void SelectFile(DGUS_VP &, void *); + void selectFile(DGUS_VP &, void *); void PrintFile(DGUS_VP &, void *); #endif diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp index e8c23b3226a2..6a430e74a6d0 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp @@ -148,7 +148,7 @@ void DGUSScreenHandler::Loop() { dgus_display.Loop(); } -void DGUSScreenHandler::PrinterKilled(FSTR_P const error, FSTR_P const component) { +void DGUSScreenHandler::printerKilled(FSTR_P const error, FSTR_P const component) { SetMessageLine(error, 1); SetMessageLine(component, 2); SetMessageLinePGM(NUL_STR, 3); @@ -271,7 +271,7 @@ void DGUSScreenHandler::PrintTimerStopped() { TriggerScreenChange(DGUS_Screen::PRINT_FINISHED); } -void DGUSScreenHandler::FilamentRunout(const ExtUI::extruder_t extruder) { +void DGUSScreenHandler::filamentRunout(const ExtUI::extruder_t extruder) { char buffer[21]; snprintf_P(buffer, sizeof(buffer), GET_TEXT(DGUS_MSG_FILAMENT_RUNOUT), extruder); diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.h b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.h index 0f71ebdc3d46..2ecf7192fe41 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.h @@ -37,7 +37,7 @@ class DGUSScreenHandler { static void Ready(); static void Loop(); - static void PrinterKilled(FSTR_P const error, FSTR_P const component); + static void printerKilled(FSTR_P const error, FSTR_P const component); static void UserConfirmRequired(const char * const msg); static void SettingsReset(); static void StoreSettings(char *buff); @@ -50,7 +50,7 @@ class DGUSScreenHandler { static void PrintTimerStarted(); static void PrintTimerPaused(); static void PrintTimerStopped(); - static void FilamentRunout(const ExtUI::extruder_t extruder); + static void filamentRunout(const ExtUI::extruder_t extruder); #if HAS_MEDIA /// Marlin informed us that a new SD has been inserted. diff --git a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_VPList.cpp b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_VPList.cpp index cd5408e190a3..69f792c45d1b 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_VPList.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_VPList.cpp @@ -81,7 +81,7 @@ const struct DGUS_VP vp_list[] PROGMEM = { VP_HELPER_RX(DGUS_Addr::SCREENCHANGE_Printing, &DGUSRxHandler::ScreenChange), #if HAS_MEDIA - VP_HELPER_RX(DGUS_Addr::SD_SelectFile, &DGUSRxHandler::SelectFile), + VP_HELPER_RX(DGUS_Addr::SD_SelectFile, &DGUSRxHandler::selectFile), VP_HELPER_RX(DGUS_Addr::SD_Scroll, &DGUSRxHandler::Scroll), VP_HELPER_RX_NODATA(DGUS_Addr::SD_Print, &DGUSRxHandler::PrintFile), #endif diff --git a/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp b/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp index 75ef5f5d6627..73dead1b56f6 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp @@ -47,7 +47,7 @@ namespace ExtUI { } void onPrinterKilled(FSTR_P const error, FSTR_P const component) { - dgus_screen_handler.PrinterKilled(error, component); + dgus_screen_handler.printerKilled(error, component); } void onMediaInserted() { TERN_(HAS_MEDIA, dgus_screen_handler.SDCardInserted()); } @@ -71,7 +71,7 @@ namespace ExtUI { } void onFilamentRunout(const extruder_t extruder) { - dgus_screen_handler.FilamentRunout(extruder); + dgus_screen_handler.filamentRunout(extruder); } void onUserConfirmRequired(const char * const msg) { diff --git a/Marlin/src/lcd/extui/ia_creality/FileNavigator.cpp b/Marlin/src/lcd/extui/ia_creality/FileNavigator.cpp index 6aa9b7c7c888..f16bdde29aae 100644 --- a/Marlin/src/lcd/extui/ia_creality/FileNavigator.cpp +++ b/Marlin/src/lcd/extui/ia_creality/FileNavigator.cpp @@ -33,23 +33,23 @@ #if DGUS_LCD_UI_IA_CREALITY -#include "ia_creality_extui.h" +#include "ia_creality_rts.h" #include "FileNavigator.h" -using namespace ExtUI; +#include -FileList FileNavigator::filelist; // Instance of the Marlin file API -char FileNavigator::currentfoldername[MAX_PATH_LEN]; // Current folder path +ExtUI::FileList FileNavigator::filelist; // ExtUI file API +char FileNavigator::currentDirPath[MAX_PATH_LEN]; // Current folder path uint16_t FileNavigator::lastindex; uint8_t FileNavigator::folderdepth; -uint16_t FileNavigator::currentindex; // override the panel request +uint16_t FileNavigator::currentindex; // override the panel request FileNavigator filenavigator; FileNavigator::FileNavigator() { reset(); } void FileNavigator::reset() { - currentfoldername[0] = '\0'; + currentDirPath[0] = '\0'; folderdepth = 0; currentindex = 0; lastindex = 0; @@ -136,7 +136,7 @@ void FileNavigator::getFiles(uint16_t index) { rts.sendData((uint8_t)0, FilenameIcon + (fcnt+1)); rts.sendData((unsigned long)0xFFFF, (FilenameNature + ((1+fcnt) * 16))); // white } - SERIAL_ECHOLNPGM("-", seek, " '", filelist.filename(), "' '", currentfoldername, "", filelist.shortFilename(), "'\n"); + SERIAL_ECHOLNPGM("-", seek, " '", filelist.filename(), "' '", currentDirPath, "", filelist.shortFilename(), "'\n"); fcnt++; } } @@ -144,8 +144,8 @@ void FileNavigator::getFiles(uint16_t index) { void FileNavigator::changeDIR(char *folder) { if (folderdepth >= MAX_FOLDER_DEPTH) return; // limit the folder depth - strcat(currentfoldername, folder); - strcat(currentfoldername, "/"); + strcat(currentDirPath, folder); + strcat(currentDirPath, "/"); filelist.changeDir(folder); refresh(); folderdepth++; @@ -159,17 +159,17 @@ void FileNavigator::upDIR() { currentindex = 0; // Remove the last child folder from the stored path if (folderdepth == 0) { - currentfoldername[0] = '\0'; + currentDirPath[0] = '\0'; reset(); } else { char *pos = nullptr; for (uint8_t f = 0; f < folderdepth; f++) - pos = strchr(currentfoldername, '/'); + pos = strchr(currentDirPath, '/'); pos[1] = '\0'; } } -char* FileNavigator::getCurrentFolderName() { return currentfoldername; } +char* FileNavigator::getCurrentDirPath() { return currentDirPath; } #endif // DGUS_LCD_UI_IA_CREALITY diff --git a/Marlin/src/lcd/extui/ia_creality/FileNavigator.h b/Marlin/src/lcd/extui/ia_creality/FileNavigator.h index 28d97c67469d..af98210a9f69 100644 --- a/Marlin/src/lcd/extui/ia_creality/FileNavigator.h +++ b/Marlin/src/lcd/extui/ia_creality/FileNavigator.h @@ -30,13 +30,12 @@ * Written by Insanity Automation * ***************************************/ +#include "../ui_api.h" + #define MAX_FOLDER_DEPTH 4 // Limit folder depth TFT has a limit for the file path -#define MAX_CMND_LEN 16 * MAX_FOLDER_DEPTH // Maximum Length for a Panel command #define MAX_PATH_LEN 16 * MAX_FOLDER_DEPTH // Maximum number of characters in a SD file path #define DISPLAY_FILES 4 -using namespace ExtUI; - class FileNavigator { public: FileNavigator(); @@ -45,15 +44,15 @@ class FileNavigator { static void upDIR(); static void changeDIR(char *); static void refresh(); - static char* getCurrentFolderName(); + static char* getCurrentDirPath(); static uint8_t folderdepth; static uint16_t currentindex; static bool getIndexisDir(uint16_t); const char *getIndexName(uint16_t); static uint16_t maxFiles(); private: - static FileList filelist; - static char currentfoldername[MAX_PATH_LEN]; + static ExtUI::FileList filelist; + static char currentDirPath[MAX_PATH_LEN]; static uint16_t lastindex; }; diff --git a/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.cpp b/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.cpp index 51180206db36..4bfdfc6ec3c9 100644 --- a/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.cpp +++ b/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.cpp @@ -25,7 +25,7 @@ * **************************************** * Extensible_UI implementation for Creality DWIN * 10SPro, Max, CRX, and others - * Based original Creality release, ported to ExtUI for Marlin 2.0 + * Based original Creality release, ported to Marlin ExtUI * Written by Insanity Automation, sponsored by Tiny Machines 3D * * ***************************************/ @@ -34,2060 +34,369 @@ #if DGUS_LCD_UI_IA_CREALITY -#include "ia_creality_extui.h" +#include "ia_creality_rts.h" #include "FileNavigator.h" +#include "../ui_api.h" -// Singleton instance -RTS rts; - -// Static data -DB RTS::recdat, RTS::snddat; -uint8_t RTS::databuf[DATA_BUF_SIZE]; -rx_datagram_state_t RTS::rx_datagram_state = DGUS_IDLE; -uint8_t RTS::rx_datagram_len = 0; - -// Local data -uint16_t fileIndex = 0; -uint8_t recordcount = 0; -uint8_t waitway_lock = 0; -const float manual_feedrate_mm_m[] = MANUAL_FEEDRATE; -uint8_t startprogress = 0; - -char waitway = 0; -int16_t recnum = 0; -float ChangeMaterialbuf[2] = { 0 }; - -char NozzleTempStatus[3] = { 0 }; - -char PrinterStatusKey[2] = { 0 }; // PrinterStatusKey[1] 0:keep temperature, 1:heating, 2:cooling, 3:printing - // PrinterStatusKey[0] 0:ready - -uint8_t AxisPagenum = 0; // 0 for 10mm, 1 for 1mm, 2 for 0.1mm -bool InforShowStatus = true; -bool TPShowStatus = false; // true for only opening time and percentage, false for closing time and percentage. -bool AutohomeKey = false; -uint8_t AutoHomeIconNum; -int16_t userConfValidation = 0; - -uint8_t lastPauseMsgState = 0; - -creality_dwin_settings_t Settings; -uint8_t dwin_settings_version = 1; - -bool reEntryPrevent = false; -uint8_t reEntryCount = 0; -uint16_t idleThrottling = 0; - -bool pause_resume_selected = false; - -#if HAS_PID_HEATING - uint16_t pid_hotendAutoTemp = 150; - uint16_t pid_bedAutoTemp = 70; -#endif - -#ifndef IA_CREALITY_BOOT_DELAY - #define IA_CREALITY_BOOT_DELAY 500 -#endif - -void RTS::onStartup() { - DWIN_SERIAL.begin(115200); - recdat.head[0] = snddat.head[0] = FHONE; - recdat.head[1] = snddat.head[1] = FHTWO; - ZERO(databuf); - - delay_ms(IA_CREALITY_BOOT_DELAY); // Delay to allow screen startup - setTouchScreenConfiguration(); - sendData(StartSoundSet, SoundAddr); - delay_ms(400); // Delay to allow screen to configure - - onStatusChanged(MACHINE_NAME " Ready"); - - sendData(100, FeedrateDisplay); - - /***************turn off motor*****************/ - sendData(11, FilenameIcon); - - /***************transmit temperature to screen*****************/ - sendData(0, NozzlePreheat); - sendData(0, BedPreheat); - sendData(getActualTemp_celsius(H0), NozzleTemp); - sendData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); - sendData(getActualTemp_celsius(BED), Bedtemp); - /***************transmit Fan speed to screen*****************/ - sendData(getActualFan_percent((fan_t)getActiveTool()), FanKeyIcon); - - /***************transmit Printer information to screen*****************/ - for (int16_t j = 0; j < 20; j++) // clean filename - sendData(0, MacVersion + j); - char sizebuf[20] = {0}; - sprintf(sizebuf, "%d X %d X %d", Y_BED_SIZE, X_BED_SIZE, Z_MAX_POS); - sendData(MACHINE_NAME, MacVersion); - sendData(SHORT_BUILD_VERSION, SoftVersion); - sendData(sizebuf, PrinterSize); - sendData(WEBSITE_URL, CorpWebsite); - - /**************************some info init*******************************/ - sendData(0, PrintscheduleIcon); - sendData(0, PrintscheduleIcon + 1); - - /************************clean screen*******************************/ - for (int16_t i = 0; i < MaxFileNumber; i++) - for (int16_t j = 0; j < 10; j++) sendData(0, SDFILE_ADDR + i * 10 + j); - - for (int16_t j = 0; j < 10; j++) { - sendData(0, Printfilename + j); // clean screen. - sendData(0, Choosefilename + j); // clean filename - } - for (int16_t j = 0; j < 8; j++) sendData(0, FilenameCount + j); - for (int16_t j = 1; j <= MaxFileNumber; j++) { - sendData(10, FilenameIcon + j); - sendData(10, FilenameIcon1 + j); - } -} - -void RTS::onIdle() { - while (rts.receiveData() > 0 && (rts.recdat.data[0] != 0 || rts.recdat.addr != 0)) - rts.handleData(); - - if (reEntryPrevent && reEntryCount < 120) { reEntryCount++; return; } - reEntryCount = 0; - - if (idleThrottling++ < 750) return; - - // Always send temperature data - rts.sendData(getActualTemp_celsius(getActiveTool()), NozzleTemp); - rts.sendData(getActualTemp_celsius(BED), Bedtemp); - rts.sendData(getTargetTemp_celsius(getActiveTool()), NozzlePreheat); - rts.sendData(getTargetTemp_celsius(BED), BedPreheat); - rts.sendData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); - rts.sendData(TERN0(HAS_MULTI_HOTEND, getTargetTemp_celsius(H1)), e2Preheat); - TERN_(HAS_MULTI_HOTEND, rts.sendData(uint8_t(getActiveTool() + 1), ActiveToolVP)); - - if (awaitingUserConfirm() && (lastPauseMsgState != ExtUI::pauseModeStatus || userConfValidation > 99)) { - switch (ExtUI::pauseModeStatus) { - case PAUSE_MESSAGE_PARKING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_PAUSE_PRINT_PARKING)); break; - case PAUSE_MESSAGE_CHANGING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_INIT)); break; - case PAUSE_MESSAGE_UNLOAD: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_UNLOAD)); break; - case PAUSE_MESSAGE_WAITING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_ADVANCED_PAUSE_WAITING)); break; - case PAUSE_MESSAGE_INSERT: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_INSERT)); break; - case PAUSE_MESSAGE_LOAD: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_LOAD)); break; - case PAUSE_MESSAGE_PURGE: ExtUI::onUserConfirmRequired(GET_TEXT_F(TERN(ADVANCED_PAUSE_CONTINUOUS_PURGE, MSG_FILAMENT_CHANGE_CONT_PURGE, MSG_FILAMENT_CHANGE_PURGE))); break; - case PAUSE_MESSAGE_RESUME: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_RESUME)); break; - case PAUSE_MESSAGE_HEAT: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_HEAT)); break; - case PAUSE_MESSAGE_HEATING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_HEATING)); break; - case PAUSE_MESSAGE_OPTION: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_OPTION_HEADER)); break; - case PAUSE_MESSAGE_STATUS: break; - default: onUserConfirmRequired(PSTR("Confirm Continue")); break; - } - userConfValidation = 0; - } - else if (pause_resume_selected && !awaitingUserConfirm()) { - rts.sendData(ExchangePageBase + 53, ExchangepageAddr); - pause_resume_selected = false; - userConfValidation = 0; - } - else if (awaitingUserConfirm()) { - if (pause_resume_selected) { - pause_resume_selected = false; - userConfValidation = 100; - } - else - userConfValidation++; - } - - reEntryPrevent = true; - idleThrottling = 0; - if (waitway && !commandsInQueue()) - waitway_lock++; - else - waitway_lock = 0; - - if (waitway_lock > 100) { - waitway_lock = 0; - waitway = 0; // clear waitway if nothing is going on - } - - switch (waitway) { - case 1: - if (isPositionKnown()) { - InforShowStatus = true; - rts.sendData(ExchangePageBase + 54, ExchangepageAddr); - waitway = 0; - } - break; - - case 2: - if (isPositionKnown() && !commandsInQueue()) waitway = 0; - break; - - case 3: - //if(isPositionKnown() && (getActualTemp_celsius(BED) >= (getTargetTemp_celsius(BED)-1))) { - rts.sendData(ExchangePageBase + 64, ExchangepageAddr); - waitway = 7; - //return; - //} - break; - - case 4: - if (AutohomeKey && isPositionKnown() && !commandsInQueue()) { // Manual Move Home Done - //rts.sendData(ExchangePageBase + 71 + AxisPagenum, ExchangepageAddr); - AutohomeKey = false; - waitway = 0; - } - break; - case 5: - if (isPositionKnown() && !commandsInQueue()) { - InforShowStatus = true; - waitway = 0; - rts.sendData(ExchangePageBase + 78, ExchangepageAddr); // exchange to 78 page - } - break; - case 6: - if (!commandsInQueue()) { - setAxisPosition_mm(BED_TRAMMING_HEIGHT, axis_t(Z)); - waitway = 0; - } - break; - case 7: - if (!commandsInQueue()) waitway = 0; - break; - } - - TERN_(HAS_MESH, rts.sendData(getLevelingActive() ? 3 : 2, AutoLevelIcon)); - TERN_(HAS_FILAMENT_SENSOR, rts.sendData(getFilamentRunoutEnabled() ? 3 : 2, RunoutToggle)); - TERN_(CASE_LIGHT_ENABLE, rts.sendData(getCaseLightState() ? 3 : 2, LedToggle)); - TERN_(POWER_LOSS_RECOVERY, rts.sendData(getPowerLossRecoveryEnabled() ? 3 : 2, PowerLossToggle)); - - if (startprogress == 0) { - startprogress += 25; - delay_ms(3000); // Delay to show bootscreen - } - else if (startprogress < 250) { - if (isMediaInserted()) // Re init media as it happens too early on STM32 boards often - onMediaInserted(); - else - injectCommands(F("M22\nM21")); - startprogress = 254; - InforShowStatus = true; - TPShowStatus = false; - rts.sendData(ExchangePageBase + 45, ExchangepageAddr); - reEntryPrevent = false; - return; - } - if (startprogress <= 100) - rts.sendData(startprogress, StartIcon); - else - rts.sendData(startprogress - 100, StartIcon + 1); - - //rts.sendData((startprogress++) % 5, ExchFlmntIcon); - - if (isPrinting()) { - rts.sendData(getActualFan_percent((fan_t)getActiveTool()), FanKeyIcon); - rts.sendData(getProgress_seconds_elapsed() / 3600, Timehour); - rts.sendData((getProgress_seconds_elapsed() % 3600) / 60, Timemin); - if (getProgress_percent() > 0) { - const uint16_t perc = getProgress_percent() + 1; - if (perc <= 50) { - rts.sendData(uint16_t(perc) * 2, PrintscheduleIcon); - rts.sendData(0, PrintscheduleIcon + 1); - } - else { - rts.sendData(100, PrintscheduleIcon); - rts.sendData(uint16_t(perc) * 2 - 100, PrintscheduleIcon + 1); - } - } - else { - rts.sendData(0, PrintscheduleIcon); - rts.sendData(0, PrintscheduleIcon + 1); - } - rts.sendData(uint16_t(getProgress_percent()), Percentage); - } - else { // Not printing settings - rts.sendData(map(constrain(Settings.display_volume, 0, 255), 0, 255, 0, 100), VolumeDisplay); - rts.sendData(Settings.screen_brightness, DisplayBrightness); - rts.sendData(Settings.standby_screen_brightness, DisplayStandbyBrightness); - rts.sendData(Settings.standby_time_seconds, DisplayStandbySeconds); - if (Settings.display_standby) - rts.sendData(3, DisplayStandbyEnableIndicator); - else - rts.sendData(2, DisplayStandbyEnableIndicator); - - rts.sendData(getAxisSteps_per_mm(X) * 10, StepMM_X); - rts.sendData(getAxisSteps_per_mm(Y) * 10, StepMM_Y); - rts.sendData(getAxisSteps_per_mm(Z) * 10, StepMM_Z); - rts.sendData(getAxisSteps_per_mm(E0) * 10, StepMM_E); - - rts.sendData(getAxisMaxAcceleration_mm_s2(X) / 100, Accel_X); - rts.sendData(getAxisMaxAcceleration_mm_s2(Y) / 100, Accel_Y); - rts.sendData(getAxisMaxAcceleration_mm_s2(Z) / 10, Accel_Z); - rts.sendData(getAxisMaxAcceleration_mm_s2(E0), Accel_E); - - rts.sendData(getAxisMaxFeedrate_mm_s(X), Feed_X); - rts.sendData(getAxisMaxFeedrate_mm_s(Y), Feed_Y); - rts.sendData(getAxisMaxFeedrate_mm_s(Z), Feed_Z); - rts.sendData(getAxisMaxFeedrate_mm_s(E0), Feed_E); - - rts.sendData(getAxisMaxJerk_mm_s(X) * 100, Jerk_X); - rts.sendData(getAxisMaxJerk_mm_s(Y) * 100, Jerk_Y); - rts.sendData(getAxisMaxJerk_mm_s(Z) * 100, Jerk_Z); - rts.sendData(getAxisMaxJerk_mm_s(E0) * 100, Jerk_E); - - #if HAS_HOTEND_OFFSET - rts.sendData(getNozzleOffset_mm(X, E1) * 10, T2Offset_X); - rts.sendData(getNozzleOffset_mm(Y, E1) * 10, T2Offset_Y); - rts.sendData(getNozzleOffset_mm(Z, E1) * 10, T2Offset_Z); - rts.sendData(getAxisSteps_per_mm(E1) * 10, T2StepMM_E); - #endif - - #if HAS_BED_PROBE - rts.sendData(getProbeOffset_mm(X) * 100, ProbeOffset_X); - rts.sendData(getProbeOffset_mm(Y) * 100, ProbeOffset_Y); - #endif - - #if HAS_PID_HEATING - rts.sendData(pid_hotendAutoTemp, HotendPID_AutoTmp); - rts.sendData(pid_bedAutoTemp, BedPID_AutoTmp); - rts.sendData(getPID_Kp(E0) * 10, HotendPID_P); - rts.sendData(getPID_Ki(E0) * 10, HotendPID_I); - rts.sendData(getPID_Kd(E0) * 10, HotendPID_D); - #if ENABLED(PIDTEMPBED) - rts.sendData(getBedPID_Kp() * 10, BedPID_P); - rts.sendData(getBedPID_Ki() * 10, BedPID_I); - rts.sendData(getBedPID_Kd() * 10, BedPID_D); - #endif - #endif - } - - rts.sendData(getZOffset_mm() * 100, ProbeOffset_Z); - rts.sendData(uint16_t(getFlow_percent(E0)), Flowrate); - - if (NozzleTempStatus[0] || NozzleTempStatus[2]) { // statuse of loadfilament and unloadfinement when temperature is less than - uint16_t IconTemp = getActualTemp_celsius(getActiveTool()) * 100 / getTargetTemp_celsius(getActiveTool()); - NOMORE(IconTemp, 100U); - rts.sendData(IconTemp, HeatPercentIcon); - if (getActualTemp_celsius(getActiveTool()) > EXTRUDE_MINTEMP && NozzleTempStatus[0] != 0) { - NozzleTempStatus[0] = 0; - rts.sendData(10 * ChangeMaterialbuf[0], FilamentUnit1); - rts.sendData(10 * ChangeMaterialbuf[1], FilamentUnit2); - rts.sendData(ExchangePageBase + 65, ExchangepageAddr); - } - else if (getActualTemp_celsius(getActiveTool()) >= getTargetTemp_celsius(getActiveTool()) && NozzleTempStatus[2]) { - NozzleTempStatus[2] = 0; - TPShowStatus = true; - rts.sendData(4, ExchFlmntIcon); - rts.sendData(ExchangePageBase + 83, ExchangepageAddr); - } - else if (NozzleTempStatus[2]) { - //rts.sendData((startprogress++) % 5, ExchFlmntIcon); - } - } - - if (AutohomeKey) { - rts.sendData(AutoHomeIconNum, AutoZeroIcon); - if (++AutoHomeIconNum > 9) AutoHomeIconNum = 0; - } - - if (isMediaInserted()) { - const uint16_t currPage = fileIndex == 0 ? 1 : CEIL(float(fileIndex) / float(DISPLAY_FILES)) + 1, - maxPageAdd = filenavigator.folderdepth ? 1 : 0, - maxPages = CEIL(float(filenavigator.maxFiles() + maxPageAdd) / float(DISPLAY_FILES) ); - - rts.sendData(currPage, FilesCurentPage); - rts.sendData(maxPages, FilesMaxPage); - } - else { - rts.sendData(0, FilesCurentPage); - rts.sendData(0, FilesMaxPage); - } - - if (rts.recdat.addr != DisplayZaxis && rts.recdat.addr != DisplayYaxis && rts.recdat.addr != DisplayZaxis) { - rts.sendData(10 * getAxisPosition_mm(axis_t(X)), DisplayXaxis); - rts.sendData(10 * getAxisPosition_mm(axis_t(Y)), DisplayYaxis); - rts.sendData(10 * getAxisPosition_mm(axis_t(Z)), DisplayZaxis); - } - reEntryPrevent = false; -} - -RTS::RTS() { - recdat.head[0] = snddat.head[0] = FHONE; - recdat.head[1] = snddat.head[1] = FHTWO; - ZERO(databuf); -} - -int16_t RTS::receiveData() { - uint8_t receivedbyte; - while (DWIN_SERIAL.available()) - switch (rx_datagram_state) { - - case DGUS_IDLE: // Waiting for the first header byte - receivedbyte = DWIN_SERIAL.read(); - if (FHONE == receivedbyte) rx_datagram_state = DGUS_HEADER1_SEEN; - break; - - case DGUS_HEADER1_SEEN: // Waiting for the second header byte - receivedbyte = DWIN_SERIAL.read(); - rx_datagram_state = (FHTWO == receivedbyte) ? DGUS_HEADER2_SEEN : DGUS_IDLE; - break; - - case DGUS_HEADER2_SEEN: // Waiting for the length byte - rx_datagram_len = DWIN_SERIAL.read(); - //DEBUGLCDCOMM_ECHOPGM(" (", rx_datagram_len, ") "); - - // Telegram min len is 3 (command and one word of payload) - rx_datagram_state = WITHIN(rx_datagram_len, 3, DGUS_RX_BUFFER_SIZE) ? DGUS_WAIT_TELEGRAM : DGUS_IDLE; - break; - - case DGUS_WAIT_TELEGRAM: // wait for complete datagram to arrive. - if (DWIN_SERIAL.available() < rx_datagram_len) return -1; - - uint8_t command = DWIN_SERIAL.read(); - - //DEBUGLCDCOMM_ECHOPGM("# ", command); - - uint8_t readlen = rx_datagram_len - 1; // command is part of len. - uint8_t tmp[rx_datagram_len - 1]; - uint8_t *ptmp = tmp; - while (readlen--) { - receivedbyte = DWIN_SERIAL.read(); - //DEBUGLCDCOMM_ECHOPGM(" ", receivedbyte); - *ptmp++ = receivedbyte; - } - //DEBUGLCDCOMM_ECHOPGM(" # "); - // mostly we'll get this: 5A A5 03 82 4F 4B -- ACK on 0x82, so discard it. - if (command == VarAddr_W && 'O' == tmp[0] && 'K' == tmp[1]) { - rx_datagram_state = DGUS_IDLE; - break; - } - - /* AutoUpload, (and answer to) Command 0x83 : - | tmp[0 1 2 3 4 ... ] - | Example 5A A5 06 83 20 01 01 78 01 …… - | / / | | \ / | \ \ - | Header | | | | \_____\_ DATA (Words!) - | DatagramLen / VPAdr | - | Command DataLen (in Words) */ - if (command == VarAddr_R) { - const uint16_t vp = tmp[0] << 8 | tmp[1]; - - const uint8_t dlen = tmp[2] << 1; // Convert to Bytes. (Display works with words) - recdat.addr = vp; - recdat.len = tmp[2]; - for (uint16_t i = 0; i < dlen; i += 2) { - recdat.data[i / 2] = tmp[3 + i]; - recdat.data[i / 2] = (recdat.data[i / 2] << 8 ) | tmp[4 + i]; - } - - rx_datagram_state = DGUS_IDLE; - return 2; - break; - } - - // discard anything else - rx_datagram_state = DGUS_IDLE; - } - return -1; -} - -void RTS::sendData() { - if (snddat.head[0] == FHONE && snddat.head[1] == FHTWO && snddat.len >= 3) { - databuf[0] = snddat.head[0]; - databuf[1] = snddat.head[1]; - databuf[2] = snddat.len; - databuf[3] = snddat.command; - if (snddat.command == 0x80) { // to write data to the register - databuf[4] = snddat.addr; - for (int16_t i = 0; i < (snddat.len - 2); i++) databuf[5 + i] = snddat.data[i]; - } - else if (snddat.len == 3 && (snddat.command == 0x81)) { // to read data from the register - databuf[4] = snddat.addr; - databuf[5] = snddat.bytelen; - } - else if (snddat.command == 0x82) { // to write data to the variate - databuf[4] = snddat.addr >> 8; - databuf[5] = snddat.addr & 0xFF; - for (int16_t i = 0; i < (snddat.len - 3); i += 2) { - databuf[6 + i] = snddat.data[i / 2] >> 8; - databuf[7 + i] = snddat.data[i / 2] & 0xFF; - } - } - else if (snddat.len == 4 && (snddat.command == 0x83)) { // to read data from the variate - databuf[4] = snddat.addr >> 8; - databuf[5] = snddat.addr & 0xFF; - databuf[6] = snddat.bytelen; - } - for (int16_t i = 0; i < (snddat.len + 3); i++) { - DWIN_SERIAL.write(databuf[i]); - delay_us(1); - } - - memset(&snddat, 0, sizeof(snddat)); - ZERO(databuf); - snddat.head[0] = FHONE; - snddat.head[1] = FHTWO; - } -} - -void RTS::sendData(const String &s, uint32_t addr, uint8_t cmd/*=VarAddr_W*/) { - if (s.length() < 1) return; - sendData(s.c_str(), addr, cmd); -} - -void RTS::sendData(const char *str, uint32_t addr, uint8_t cmd/*=VarAddr_W*/) { - int16_t len = strlen(str); - constexpr int16_t maxlen = DATA_BUF_SIZE - 6; - if (len > 0) { - if (len > maxlen) len = maxlen; - databuf[0] = FHONE; - databuf[1] = FHTWO; - databuf[2] = 3 + len; - databuf[3] = cmd; - databuf[4] = addr >> 8; - databuf[5] = addr & 0x00FF; - for (int16_t i = 0; i < len; i++) databuf[6 + i] = str[i]; - - for (int16_t i = 0; i < (len + 6); i++) { - DWIN_SERIAL.write(databuf[i]); - delay_us(1); - } - ZERO(databuf); - } -} - -void RTS::sendData(const char c, const uint32_t addr, const uint8_t cmd/*=VarAddr_W*/) { - snddat.command = cmd; - snddat.addr = addr; - snddat.data[0] = uint32_t(uint16_t(c) << 8); - snddat.len = 5; - sendData(); -} - -void RTS::sendData(const_float_t f, const uint32_t addr, const uint8_t cmd/*=VarAddr_W*/) { - int16_t n = f; - if (cmd == VarAddr_W) { - snddat.data[0] = n; - snddat.len = 5; - } - else if (cmd == RegAddr_W) { - snddat.data[0] = n; - snddat.len = 3; - } - else if (cmd == VarAddr_R) { - snddat.bytelen = n; - snddat.len = 4; - } - snddat.command = cmd; - snddat.addr = addr; - sendData(); -} - -void RTS::sendData(const int n, const uint32_t addr, const uint8_t cmd/*=VarAddr_W*/) { - if (cmd == VarAddr_W) { - if ((unsigned int)n > 0xFFFF) { - snddat.data[0] = n >> 16; - snddat.data[1] = n & 0xFFFF; - snddat.len = 7; - } - else { - snddat.data[0] = n; - snddat.len = 5; - } - } - else if (cmd == RegAddr_W) { - snddat.data[0] = n; - snddat.len = 3; - } - else if (cmd == VarAddr_R) { - snddat.bytelen = n; - snddat.len = 4; - } - snddat.command = cmd; - snddat.addr = addr; - sendData(); -} - -void RTS::sendData(const unsigned long n, uint32_t addr, uint8_t cmd/*=VarAddr_W*/) { - if (cmd == VarAddr_W) { - if (n > 0xFFFF) { - snddat.data[0] = n >> 16; - snddat.data[1] = n & 0xFFFF; - //snddat.data[0] = n >> 24; - //snddat.data[1] = n >> 16; - //snddat.data[2] = n >> 8; - //snddat.data[3] = n; - snddat.len = 7; - } - else { - snddat.data[0] = n; - snddat.len = 5; - } - } - else if (cmd == VarAddr_R) { - snddat.bytelen = n; - snddat.len = 4; - } - snddat.command = cmd; - snddat.addr = addr; - sendData(); -} - -void RTS::handleData() { - int16_t Checkkey = -1; - if (waitway > 0) { // for waiting - memset(&recdat, 0, sizeof(recdat)); - recdat.head[0] = FHONE; - recdat.head[1] = FHTWO; - return; - } - for (int16_t i = 0; Addrbuf[i] != 0; i++) - if (recdat.addr == Addrbuf[i]) { - if (Addrbuf[i] == NzBdSet || Addrbuf[i] == NozzlePreheat || Addrbuf[i] == BedPreheat || Addrbuf[i] == Flowrate) - Checkkey = ManualSetTemp; - else if (WITHIN(Addrbuf[i], Stopprint, Resumeprint)) - Checkkey = PrintChoice; - else if (WITHIN(Addrbuf[i], AutoZero, DisplayZaxis)) - Checkkey = XYZEaxis; - else if (WITHIN(Addrbuf[i], FilamentUnit1, FilamentUnit2)) - Checkkey = Filament; - else - Checkkey = i; - break; - } - - switch (recdat.addr) { - case Flowrate: - case StepMM_X ... StepMM_E: - case ProbeOffset_X ... ProbeOffset_Y: - case HotendPID_AutoTmp ... BedPID_AutoTmp: - case HotendPID_P ... HotendPID_D: - case BedPID_P ... BedPID_D: - case T2Offset_X ... T2StepMM_E: - case Accel_X ... Accel_E: - case Feed_X ... Feed_E: - case Jerk_X ... Jerk_E: - case RunoutToggle: - case PowerLossToggle: - case FanKeyIcon: - case LedToggle: - case e2Preheat: Checkkey = ManualSetTemp; break; - case ProbeOffset_Z: Checkkey = Zoffset_Value; break; - case VolumeDisplay: Checkkey = VolumeDisplay; break; - case DisplayBrightness: Checkkey = DisplayBrightness; break; - case DisplayStandbyBrightness: Checkkey = DisplayStandbyBrightness; break; - case DisplayStandbySeconds: Checkkey = DisplayStandbySeconds; break; - default: - if (WITHIN(recdat.addr, AutolevelVal, 4400)) // (int16_t(AutolevelVal) + GRID_MAX_POINTS * 2) = 4400 with 5x5 mesh - Checkkey = AutolevelVal; - else if (WITHIN(recdat.addr, SDFILE_ADDR, SDFILE_ADDR + 10 * (FileNum + 1))) - Checkkey = Filename; - break; - } - - if (Checkkey < 0) { - memset(&recdat, 0, sizeof(recdat)); - recdat.head[0] = FHONE; - recdat.head[1] = FHTWO; - return; - } - - constexpr float lfrb[4] = BED_TRAMMING_INSET_LFRB; - - switch (Checkkey) { - case Printfile: - if (recdat.data[0] == 1) { // card - InforShowStatus = false; - filenavigator.getFiles(0); - fileIndex = 0; - recordcount = 0; - sendData(ExchangePageBase + 46, ExchangepageAddr); - } - else if (recdat.data[0] == 2) { // return after printing result. - InforShowStatus = true; - TPShowStatus = false; - stopPrint(); - injectCommands(F("M84")); - sendData(11, FilenameIcon); - sendData(0, PrintscheduleIcon); - sendData(0, PrintscheduleIcon + 1); - sendData(0, Percentage); - delay_ms(2); - sendData(0, Timehour); - sendData(0, Timemin); - - sendData(ExchangePageBase + 45, ExchangepageAddr); // exchange to 45 page - } - else if (recdat.data[0] == 3) { // Temperature control - InforShowStatus = true; - TPShowStatus = false; - if (getTargetFan_percent((fan_t)getActiveTool()) == 0) - sendData(ExchangePageBase + 58, ExchangepageAddr); // exchange to 58 page, the fans off - else - sendData(ExchangePageBase + 57, ExchangepageAddr); // exchange to 57 page, the fans on - } - else if (recdat.data[0] == 4) { // Settings - InforShowStatus = false; - } - break; - - case Adjust: - if (recdat.data[0] == 1) { - InforShowStatus = false; - } - else if (recdat.data[0] == 2) { - InforShowStatus = true; - if (PrinterStatusKey[1] == 3) // during heating - sendData(ExchangePageBase + 53, ExchangepageAddr); - else if (PrinterStatusKey[1] == 4) - sendData(ExchangePageBase + 54, ExchangepageAddr); - else - sendData(ExchangePageBase + 53, ExchangepageAddr); - } - else if (recdat.data[0] == 3) - setTargetFan_percent(getTargetFan_percent((fan_t)getActiveTool()) != 0 ? 100 : 0, FAN0); - - break; - - case Feedrate: - setFeedrate_percent(recdat.data[0]); - break; - - case PrintChoice: - if (recdat.addr == Stopprint) { - if (recdat.data[0] == 240) { // no - sendData(ExchangePageBase + 53, ExchangepageAddr); - } - else { - sendData(ExchangePageBase + 45, ExchangepageAddr); - sendData(0, Timehour); - sendData(0, Timemin); - stopPrint(); - } - } - else if (recdat.addr == Pauseprint) { - if (recdat.data[0] != 0xF1) - break; - - sendData(ExchangePageBase + 54, ExchangepageAddr); - pausePrint(); - } - else if (recdat.addr == Resumeprint && recdat.data[0] == 1) { - resumePrint(); - - PrinterStatusKey[1] = 0; - InforShowStatus = true; - - sendData(ExchangePageBase + 53, ExchangepageAddr); - } - if (recdat.addr == Resumeprint && recdat.data[0] == 2) { // warming - resumePrint(); - NozzleTempStatus[2] = 1; - PrinterStatusKey[1] = 0; - InforShowStatus = true; - sendData(ExchangePageBase + 82, ExchangepageAddr); - } - break; - - case Zoffset: - float tmp_zprobe_offset; - if (recdat.data[0] >= 32768) - tmp_zprobe_offset = (float(recdat.data[0]) - 65536) / 100; - else - tmp_zprobe_offset = float(recdat.data[0]) / 100; - if (WITHIN((tmp_zprobe_offset), Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { - int16_t tmpSteps = mmToWholeSteps(getZOffset_mm() - tmp_zprobe_offset, axis_t(Z)); - if (tmpSteps == 0) tmpSteps = getZOffset_mm() < tmp_zprobe_offset ? 1 : -1; - smartAdjustAxis_steps(-tmpSteps, axis_t(Z), false); - char zOffs[20], tmp1[11]; - sprintf_P(zOffs, PSTR("Z Offset : %s"), dtostrf(getZOffset_mm(), 1, 3, tmp1)); - onStatusChanged(zOffs); - } - else { - onStatusChanged(F("Requested Offset Beyond Limits")); - } - - sendData(getZOffset_mm() * 100, ProbeOffset_Z); - break; - - case TempControl: - if (recdat.data[0] == 0) { - InforShowStatus = true; - TPShowStatus = false; - } - else if (recdat.data[0] == 1) { - if (getTargetFan_percent((fan_t)getActiveTool()) == 0) - sendData(ExchangePageBase + 60, ExchangepageAddr); // exchange to 60 page, the fans off - else - sendData(ExchangePageBase + 59, ExchangepageAddr); // exchange to 59 page, the fans on - } - else if (recdat.data[0] == 2) { - InforShowStatus = true; - } - else if (recdat.data[0] == 3) { - if (getTargetFan_percent((fan_t)getActiveTool()) == 0) { // turn on the fan - setTargetFan_percent(100, FAN0); - sendData(ExchangePageBase + 57, ExchangepageAddr); // exchange to 57 page, the fans on - } - else { // turn off the fan - setTargetFan_percent(0, FAN0); - sendData(ExchangePageBase + 58, ExchangepageAddr); // exchange to 58 page, the fans on - } - } - else if (recdat.data[0] == 5) { // PLA mode - setTargetTemp_celsius(PREHEAT_1_TEMP_HOTEND, getActiveTool()); - setTargetTemp_celsius(PREHEAT_1_TEMP_BED, BED); - sendData(PREHEAT_1_TEMP_HOTEND, NozzlePreheat); - sendData(PREHEAT_1_TEMP_BED, BedPreheat); - } - else if (recdat.data[0] == 6) { // ABS mode - setTargetTemp_celsius(PREHEAT_2_TEMP_HOTEND, getActiveTool()); - setTargetTemp_celsius(PREHEAT_2_TEMP_BED, BED); - sendData(PREHEAT_2_TEMP_HOTEND, NozzlePreheat); - sendData(PREHEAT_2_TEMP_BED, BedPreheat); - } - else if (recdat.data[0] == 0xF1) { - //InforShowStatus = true; - #if FAN_COUNT > 0 - for (uint8_t i = 0; i < FAN_COUNT; i++) setTargetFan_percent(0, (fan_t)i); - #endif - setTargetTemp_celsius(0.0, H0); - TERN_(HAS_MULTI_HOTEND, setTargetTemp_celsius(0.0, H1)); - setTargetTemp_celsius(0.0, BED); - sendData(0, NozzlePreheat); delay_ms(1); - sendData(0, BedPreheat); delay_ms(1); - sendData(ExchangePageBase + 57, ExchangepageAddr); - PrinterStatusKey[1] = 2; - } - break; - - case ManualSetTemp: - if (recdat.addr == NzBdSet) { - if (recdat.data[0] == 0) { - if (getTargetFan_percent((fan_t)getActiveTool()) == 0) - sendData(ExchangePageBase + 58, ExchangepageAddr); // exchange to 58 page, the fans off - else - sendData(ExchangePageBase + 57, ExchangepageAddr); // exchange to 57 page, the fans on - } - else if (recdat.data[0] == 1) { - setTargetTemp_celsius(0.0, getActiveTool()); - sendData(0, NozzlePreheat); - } - else if (recdat.data[0] == 2) { - setTargetTemp_celsius(0.0, BED); - sendData(0, BedPreheat); - } - } - else if (recdat.addr == NozzlePreheat) { - setTargetTemp_celsius(float(recdat.data[0]), H0); - } - #if HAS_MULTI_HOTEND - else if (recdat.addr == e2Preheat) { - setTargetTemp_celsius(float(recdat.data[0]), H1); - } - #endif - else if (recdat.addr == BedPreheat) { - setTargetTemp_celsius(float(recdat.data[0]), BED); - } - else if (recdat.addr == Flowrate) { - setFlow_percent(int16_t(recdat.data[0]), getActiveTool()); - } - - #if HAS_PID_HEATING - else if (recdat.addr == HotendPID_AutoTmp) { - pid_hotendAutoTemp = uint16_t(recdat.data[0]); - } - else if (recdat.addr == BedPID_AutoTmp) { - pid_bedAutoTemp = uint16_t(recdat.data[0]); - } - #endif - - else if (recdat.addr == Accel_X) { - setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]) * 100, X); - } - else if (recdat.addr == Accel_Y) { - setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]) * 100, Y); - } - else if (recdat.addr == Accel_Z) { - setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]) * 10, Z); - } - else if (recdat.addr == Accel_E) { - setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]), E0); - setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]), E1); - } - - else if (recdat.addr == Feed_X) { - setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), X); - } - else if (recdat.addr == Feed_Y) { - setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), Y); - } - else if (recdat.addr == Feed_Z) { - setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), Z); - } - else if (recdat.addr == Feed_E) { - setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), E0); - setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), E1); - } - else if (recdat.addr == FanKeyIcon) { - setTargetFan_percent(uint16_t(recdat.data[0]), (fan_t)getActiveTool()); - } - else { - float tmp_float_handling; - if (recdat.data[0] >= 32768) - tmp_float_handling = (float(recdat.data[0]) - 65536) / 100; - else - tmp_float_handling = float(recdat.data[0]) / 100; - if (recdat.addr == StepMM_X) { - setAxisSteps_per_mm(tmp_float_handling * 10, X); - } - else if (recdat.addr == StepMM_Y) { - setAxisSteps_per_mm(tmp_float_handling * 10, Y); - } - else if (recdat.addr == StepMM_Z) { - setAxisSteps_per_mm(tmp_float_handling * 10, Z); - } - else if (recdat.addr == StepMM_E) { - setAxisSteps_per_mm(tmp_float_handling * 10, E0); - #if DISABLED(DUAL_X_CARRIAGE) - setAxisSteps_per_mm(tmp_float_handling * 10, E1); - #endif - } - #if ENABLED(DUAL_X_CARRIAGE) - else if (recdat.addr == T2StepMM_E) { - setAxisSteps_per_mm(tmp_float_handling * 10, E1); - } - else if (recdat.addr == T2Offset_X) { - setNozzleOffset_mm(tmp_float_handling * 10, X, E1); - } - else if (recdat.addr == T2Offset_Y) { - setNozzleOffset_mm(tmp_float_handling * 10, Y, E1); - } - else if (recdat.addr == T2Offset_Z) { - setNozzleOffset_mm(tmp_float_handling * 10, Z, E1); - } - #endif - #if HAS_BED_PROBE - else if (recdat.addr == ProbeOffset_X) { - setProbeOffset_mm(tmp_float_handling, X); - } - else if (recdat.addr == ProbeOffset_Y) { - setProbeOffset_mm(tmp_float_handling, Y); - } - else if (recdat.addr == ProbeOffset_Z) { - setProbeOffset_mm(tmp_float_handling, Z); - } - #endif - - #if ENABLED(CLASSIC_JERK) - else if (recdat.addr == Jerk_X) { - setAxisMaxJerk_mm_s(tmp_float_handling, X); - } - else if (recdat.addr == Jerk_Y) { - setAxisMaxJerk_mm_s(tmp_float_handling, Y); - } - else if (recdat.addr == Jerk_Z) { - setAxisMaxJerk_mm_s(tmp_float_handling, Z); - } - else if (recdat.addr == Jerk_E) { - setAxisMaxJerk_mm_s(tmp_float_handling, E0); - setAxisMaxJerk_mm_s(tmp_float_handling, E1); - } - #endif - - #if HAS_FILAMENT_SENSOR - else if (recdat.addr == RunoutToggle) { - setFilamentRunoutEnabled(!getFilamentRunoutEnabled()); - } - #endif - - #if ENABLED(POWER_LOSS_RECOVERY) - else if (recdat.addr == PowerLossToggle) { - setPowerLossRecoveryEnabled(!getPowerLossRecoveryEnabled()); - } - #endif - - #if ENABLED(CASE_LIGHT_ENABLE) - else if (recdat.addr == LedToggle) { - setCaseLightState(!getCaseLightState()); - } - #endif - - #if HAS_PID_HEATING - else if (recdat.addr == HotendPID_P) { - setPID(tmp_float_handling * 10, getPID_Ki(getActiveTool()), getPID_Kd(getActiveTool()), getActiveTool()); - } - else if (recdat.addr == HotendPID_I) { - setPID(getPID_Kp(getActiveTool()), tmp_float_handling * 10, getPID_Kd(getActiveTool()), getActiveTool()); - } - else if (recdat.addr == HotendPID_D) { - setPID(getPID_Kp(getActiveTool()), getPID_Ki(getActiveTool()), tmp_float_handling * 10, getActiveTool()); - } - #if ENABLED(PIDTEMPBED) - else if (recdat.addr == BedPID_P) { - setBedPID(tmp_float_handling * 10, getBedPID_Ki(), getBedPID_Kd()); - } - else if (recdat.addr == BedPID_I) { - setBedPID(getBedPID_Kp(), tmp_float_handling * 10, getBedPID_Kd()); - } - else if (recdat.addr == BedPID_D) { - setBedPID(getBedPID_Kp(), getBedPID_Ki(), tmp_float_handling * 10); - } - #endif - #endif // HAS_PID_HEATING - } - break; - - case Setting: - if (recdat.data[0] == 0) { // return to main page - InforShowStatus = true; - TPShowStatus = false; - } - else if (recdat.data[0] == 1) { // Bed Autoleveling - #if HAS_MESH - sendData(getLevelingActive() ? 3 : 2, AutoLevelIcon); - - if (ExtUI::getMeshValid()) { - uint8_t abl_probe_index = 0; - for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) - for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { - const bool zig = outer & 1; - const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; - sendData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + abl_probe_index * 2); - ++abl_probe_index; - } - } - #endif - sendData(10, FilenameIcon); // Motor Icon - injectCommands(isPositionKnown() ? F("G1F1000Z0.0") : F("G28\nG1F1000Z0.0")); - waitway = 2; - sendData(ExchangePageBase + 64, ExchangepageAddr); - } - else if (recdat.data[0] == 2) { // Exchange filament - InforShowStatus = true; - TPShowStatus = false; - ZERO(ChangeMaterialbuf); - ChangeMaterialbuf[1] = ChangeMaterialbuf[0] = 10; - sendData(10 * ChangeMaterialbuf[0], FilamentUnit1); // It's ChangeMaterialbuf for show, instead of current_position.e in them. - sendData(10 * ChangeMaterialbuf[1], FilamentUnit2); - sendData(getActualTemp_celsius(H0), NozzleTemp); - sendData(getTargetTemp_celsius(H0), NozzlePreheat); - sendData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); - sendData(TERN0(HAS_MULTI_HOTEND, getTargetTemp_celsius(H1)), e2Preheat); - delay_ms(2); - sendData(ExchangePageBase + 65, ExchangepageAddr); - } - else if (recdat.data[0] == 3) { // Move - AxisPagenum = 0; - sendData(ExchangePageBase + 71, ExchangepageAddr); - } - else if (recdat.data[0] == 4) { // Language - // Just loads language screen, now used for tools - } - else if (recdat.data[0] == 5) { // Printer Information - sendData(WEBSITE_URL, CorpWebsite); - } - else if (recdat.data[0] == 6) { // Diabalestepper - injectCommands(F("M84")); - sendData(11, FilenameIcon); - } - break; - - case ReturnBack: - if (recdat.data[0] == 1) { // return to the tool page - InforShowStatus = false; - sendData(ExchangePageBase + 63, ExchangepageAddr); - } - if (recdat.data[0] == 2) // return to the Level mode page - sendData(ExchangePageBase + 64, ExchangepageAddr); - break; - - case Bedlevel: - switch (recdat.data[0]) { - case 1: { // Z-axis to home - // Disallow Z homing if X or Y are unknown - injectCommands(isAxisPositionKnown(axis_t(X)) && isAxisPositionKnown(axis_t(Y)) ? F("G28Z\nG1F1500Z0.0") : F("G28\nG1F1500Z0.0")); - sendData(getZOffset_mm() * 100, ProbeOffset_Z); - break; - } - case 2: { // Z-axis to Up - if (WITHIN((getZOffset_mm() + 0.1), Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { - smartAdjustAxis_steps(getAxisSteps_per_mm(Z) / 10, axis_t(Z), false); - //setZOffset_mm(getZOffset_mm() + 0.1); - sendData(getZOffset_mm() * 100, ProbeOffset_Z); - char zOffs[20], tmp1[11]; - sprintf_P(zOffs, PSTR("Z Offset : %s"), dtostrf(getZOffset_mm(), 1, 3, tmp1)); - onStatusChanged(zOffs); - } - break; - } - case 3: { // Z-axis to Down - if (WITHIN((getZOffset_mm() - 0.1), Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { - smartAdjustAxis_steps(-getAxisSteps_per_mm(Z) / 10, axis_t(Z), false); - //babystepAxis_steps(int16_t(-getAxisSteps_per_mm(Z)) / 10, axis_t(Z)); - //setZOffset_mm(getZOffset_mm() - 0.1); - sendData(getZOffset_mm() * 100, ProbeOffset_Z); - char zOffs[20], tmp1[11]; - sprintf_P(zOffs, PSTR("Z Offset : %s"), dtostrf(getZOffset_mm(), 1, 3, tmp1)); - onStatusChanged(zOffs); - } - break; - } - case 4: { // Assistant Level - TERN_(HAS_MESH, setLevelingActive(false)); - injectCommands(isPositionKnown() ? F("G1 F1000 Z0.0") : F("G28\nG1 F1000 Z0.0")); - waitway = 2; - sendData(ExchangePageBase + 84, ExchangepageAddr); - break; - } - case 5: { // AutoLevel "Measuring" Button - #if ENABLED(MESH_BED_LEVELING) - sendData(ExchangePageBase + 93, ExchangepageAddr); - #else - waitway = 3; // only for prohibiting to receive massage - sendData(3, AutolevelIcon); - uint8_t abl_probe_index = 0; - while (abl_probe_index < 25) { - sendData(0, AutolevelVal + abl_probe_index * 2); - ++abl_probe_index; - } - sendData(ExchangePageBase + 64, ExchangepageAddr); - injectCommands(F(MEASURING_GCODE)); - #endif - break; - } - - case 6: { // Assitant Level , Centre 1 - setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); - setAxisPosition_mm(X_CENTER, axis_t(X)); - setAxisPosition_mm(Y_CENTER, axis_t(Y)); - waitway = 6; - break; - } - case 7: { // Assitant Level , Front Left 2 - setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); - setAxisPosition_mm(X_MIN_BED + lfrb[0], axis_t(X)); - setAxisPosition_mm(Y_MIN_BED + lfrb[1], axis_t(Y)); - waitway = 6; - break; - } - case 8: { // Assitant Level , Front Right 3 - setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); - setAxisPosition_mm(X_MAX_BED - lfrb[2], axis_t(X)); - setAxisPosition_mm(Y_MIN_BED + lfrb[1], axis_t(Y)); - waitway = 6; - break; - } - case 9: { // Assitant Level , Back Right 4 - setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); - setAxisPosition_mm(X_MAX_BED - lfrb[2], axis_t(X)); - setAxisPosition_mm(Y_MAX_BED - lfrb[3], axis_t(Y)); - waitway = 6; - break; - } - case 10: { // Assitant Level , Back Left 5 - setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); - setAxisPosition_mm(X_MIN_BED + lfrb[0], axis_t(X)); - setAxisPosition_mm(Y_MAX_BED - lfrb[3], axis_t(Y)); - waitway = 6; - break; - } - case 11: { // Autolevel switch - #if HAS_MESH - const bool gla = !getLevelingActive(); - setLevelingActive(gla); - sendData(gla ? 3 : 2, AutoLevelIcon); - #endif - sendData(getZOffset_mm() * 100, ProbeOffset_Z); - break; - } - case 12: { - injectCommands(F("G26R255")); - onStatusChanged(F("Beginning G26.. Heating")); - break; - } - case 13: { - injectCommands(F("G29S1")); - onStatusChanged(F("Begin Manual Mesh")); - break; - } - case 14: { - injectCommands(F("G29S2")); - onStatusChanged(F("Moving to Next Mesh Point")); - break; - } - case 15: { - injectCommands(F("M211S0\nG91\nG1Z-0.025\nG90\nM211S1")); - onStatusChanged(F("Moved down 0.025")); - break; - } - case 16: { - injectCommands(F("M211S0\nG91\nG1Z0.025\nG90\nM211S1")); - onStatusChanged(F("Moved up 0.025")); - break; - } - case 17: { - Settings.display_volume = 0; - Settings.display_sound = false; - setTouchScreenConfiguration(); - break; - } - case 18: { - Settings.display_volume = 255; - Settings.display_sound = true; - setTouchScreenConfiguration(); - break; - } - case 19: { - Settings.screen_brightness = 10; - setTouchScreenConfiguration(); - break; - } - case 20: { - Settings.screen_brightness = 100; - setTouchScreenConfiguration(); - break; - } - case 21: { - Settings.display_standby ^= true; - setTouchScreenConfiguration(); - break; - } - case 22: { - Settings.screen_rotation = Settings.screen_rotation == 10 ? 0 : 10; - setTouchScreenConfiguration(); - break; - } - case 23: { // Set IDEX Autopark - injectCommands(F("M605S1\nG28X\nG1X0")); - break; - } - case 24: { // Set IDEX Duplication - injectCommands(F("M605S1\nT0\nG28\nM605S2\nG28X\nG1X0")); - break; - } - case 25: { // Set IDEX Mirrored Duplication - injectCommands(F("M605S1\nT0\nG28\nM605S2\nG28X\nG1X0\nM605S3")); - break; - } - case 26: { // Set IDEX Full Control - injectCommands(F("M605S0\nG28X")); - break; - } - case 27: { // Change Tool - setActiveTool(getActiveTool() == E0 ? E1 : E0, !isAxisPositionKnown(X)); - break; - } - default: break; - } - - sendData(10, FilenameIcon); - break; +namespace ExtUI { - case XYZEaxis: { - axis_t axis = X; - float min = 0.0f, max = 0.0f; - waitway = 4; - if (recdat.addr == DisplayXaxis) { - axis = X; - min = X_MIN_POS; - max = X_MAX_POS; - } - else if (recdat.addr == DisplayYaxis) { - axis = Y; - min = Y_MIN_POS; - max = Y_MAX_POS; - } - else if (recdat.addr == DisplayZaxis) { - axis = Z; - min = Z_MIN_POS; - max = Z_MAX_POS; - } - else if (recdat.addr == AutoZero) { - if (recdat.data[0] == 3) { // autohome - waitway = 4; - injectCommands(F("G28\nG1 F1000 Z10")); - InforShowStatus = AutohomeKey = true; - AutoHomeIconNum = 0; - sendData(10, FilenameIcon); - } - else { - AxisPagenum = recdat.data[0]; - waitway = 0; - } - break; - } +uint8_t dwin_settings_version = 1; - float targetPos = float(recdat.data[0]) / 10; - LIMIT(targetPos, min, max); - setAxisPosition_mm(targetPos, axis); - waitway = 0; - sendData(10, FilenameIcon); - break; - } +void onStartup() { rts.onStartup(); } + +void onIdle() { rts.onIdle(); } + +void onPrinterKilled(FSTR_P const error, FSTR_P const component) { + rts.sendData(ExchangePageBase + 88, ExchangepageAddr); + int16_t j = 0; + char outmsg[40]; + char killMsg[strlen_P(FTOP(error)) + strlen_P(FTOP(component)) + 3]; + sprintf_P(killMsg, PSTR(S_FMT ": " S_FMT), FTOP(error), FTOP(component)); + while (j < 4) outmsg[j++] = '*'; + while (const char c = killMsg[j - 4]) outmsg[j++] = c; + while (j < 40) outmsg[j++] = '*'; + rts.sendData(outmsg, MacVersion); + delay_ms(10); +} - case Filament: +void onMediaInserted() { + filenavigator.reset(); + filenavigator.getFiles(0); + fileIndex = 0; + recordcount = 0; +} - uint16_t IconTemp; - if (recdat.addr == Exchfilament) { - if (getActualTemp_celsius(getActiveTool()) < EXTRUDE_MINTEMP && recdat.data[0] < 5) { - sendData(int16_t(EXTRUDE_MINTEMP), 0x1020); - delay_ms(5); - sendData(ExchangePageBase + 66, ExchangepageAddr); - break; - } +void onMediaError() { + filenavigator.reset(); + for (int16_t i = 0; i < MaxFileNumber; i++) + for (int16_t j = 0; j < 10; j++) rts.sendData(0, SDFILE_ADDR + i * 10 + j); - switch (recdat.data[0]) { - case 1: { // Unload filament1 - setAxisPosition_mm(getAxisPosition_mm(E0) - ChangeMaterialbuf[0], E0); - break; - } - case 2: { // Load filament1 - setAxisPosition_mm(getAxisPosition_mm(E0) + ChangeMaterialbuf[0], E0); - break; - } - case 3: { // Unload filament2 - setAxisPosition_mm(getAxisPosition_mm(E1) - ChangeMaterialbuf[1], E1); - break; - } - case 4: { // Load filament2 - setAxisPosition_mm(getAxisPosition_mm(E1) + ChangeMaterialbuf[1], E1); - break; - } - case 5: { // sure to heat - NozzleTempStatus[0] = 1; + for (int16_t j = 0; j < 10; j++) { + rts.sendData(0, Printfilename + j); // clean screen. + rts.sendData(0, Choosefilename + j); // clean filename + } + for (int16_t j = 0; j < 8; j++) rts.sendData(0, FilenameCount + j); + for (int16_t j = 1; j <= MaxFileNumber; j++) { + rts.sendData(10, FilenameIcon + j); + rts.sendData(10, FilenameIcon1 + j); + } +} - setTargetTemp_celsius((PREHEAT_1_TEMP_HOTEND + 10), getActiveTool()); - IconTemp = getActualTemp_celsius(getActiveTool()) * 100 / getTargetTemp_celsius(getActiveTool()); - NOMORE(IconTemp, 100U); - sendData(IconTemp, HeatPercentIcon); +void onMediaRemoved() { + filenavigator.reset(); + for (int16_t i = 0; i < MaxFileNumber; i++) + for (int16_t j = 0; j < 10; j++) rts.sendData(0, SDFILE_ADDR + i * 10 + j); - sendData(getActualTemp_celsius(H0), NozzleTemp); - sendData(getTargetTemp_celsius(H0), NozzlePreheat); - sendData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); - sendData(TERN0(HAS_MULTI_HOTEND, getTargetTemp_celsius(H1)), e2Preheat); - delay_ms(5); - sendData(ExchangePageBase + 68, ExchangepageAddr); - break; - } - case 6: { // cancel to heat - sendData(ExchangePageBase + 65, ExchangepageAddr); - break; - } - case 0xF1: { // Sure to cancel heating - NozzleTempStatus[0] = 0; - delay_ms(1); - sendData(ExchangePageBase + 65, ExchangepageAddr); - break; - } - case 0xF0: // not to cancel heating - break; - } - sendData(10 * ChangeMaterialbuf[0], FilamentUnit1); // It's ChangeMaterialbuf for show, instead of current_position.e in them. - sendData(10 * ChangeMaterialbuf[1], FilamentUnit2); - } - else if (recdat.addr == FilamentUnit1) { - ChangeMaterialbuf[0] = float(recdat.data[0]) / 10; - } - else if (recdat.addr == FilamentUnit2) { - ChangeMaterialbuf[1] = float(recdat.data[0]) / 10; - } - break; + for (int16_t j = 0; j < 10; j++) { + rts.sendData(0, Printfilename + j); // clean screen. + rts.sendData(0, Choosefilename + j); // clean filename + } + for (int16_t j = 0; j < 8; j++) rts.sendData(0, FilenameCount + j); + for (int16_t j = 1; j <= MaxFileNumber; j++) { + rts.sendData(10, FilenameIcon + j); + rts.sendData(10, FilenameIcon1 + j); + } +} - case LanguageChoice: +void onPlayTone(const uint16_t frequency, const uint16_t duration) { + rts.sendData(StartSoundSet, SoundAddr); +} - //if (recdat.data[0] == 1) settings.save(); else injectCommands(F("M300")); +void onPrintTimerStarted() { + if (waitway == 7) return; + printerStatusKey[1] = 3; + show_status = true; + delay_ms(1); + rts.sendData(ExchangePageBase + 53, ExchangepageAddr); +} - // may at some point use language change screens to save eeprom explicitly - switch (recdat.data[0]) { - case 0: { - injectCommands(F("M500")); - break; - } - case 1: { - sendData(ExchangePageBase + 94, ExchangepageAddr); - break; - } +void onPrintTimerPaused() { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); // Display Pause Screen + onStatusChanged(F("Pausing...")); +} - #if ENABLED(PIDTEMP) - case 2: { - onStatusChanged(F("Hotend PID Started")); - startPIDTune(static_cast(pid_hotendAutoTemp), getActiveTool()); - break; - } - #endif +void onPrintTimerStopped() { + if (waitway == 3) return; - case 3: { - injectCommands(F("M502\nM500")); - break; - } - case 4: { - injectCommands(F("M999\nM280P0S160")); - break; - } + #if FAN_COUNT > 0 + for (uint8_t i = 0; i < FAN_COUNT; i++) setTargetFan_percent(FanOff, (fan_t)i); + #endif - case 5: { - #if ENABLED(PIDTEMPBED) - onStatusChanged(F("Bed PID Started")); - startBedPIDTune(static_cast(pid_bedAutoTemp)); - #endif - break; - } - case 6: { - injectCommands(F("M500")); - break; - } - default: break; - } - break; + printerStatusKey[0] = 0; + show_status = true; + tpShowStatus = false; + rts.sendData(ExchangePageBase + 51, ExchangepageAddr); +} - case No_Filament: - if (recdat.data[0] == 1) { // Filament is out, resume / resume selected on screen - if (ExtUI::pauseModeStatus != PAUSE_MESSAGE_PURGE && ExtUI::pauseModeStatus != PAUSE_MESSAGE_OPTION) { - // setPauseMenuResponse(PAUSE_RESPONSE_RESUME_PRINT); - setUserConfirmed(); - // PrinterStatusKey[1] = 3; - // pause_resume_selected = true; - } - else { - #if ENABLED(FILAMENT_RUNOUT_SENSOR) - bool runouton = false; - if (getFilamentRunoutState()) { - #if NUM_RUNOUT_SENSORS > 1 - if ((runouton = getFilamentRunoutEnabled(getActiveTool()))) - ExtUI::setFilamentRunoutEnabled(false, getActiveTool()); - #else - if ((runouton = getFilamentRunoutEnabled())) - ExtUI::setFilamentRunoutEnabled(false); - #endif - } - #else - constexpr bool runouton = false; - #endif - if (!runouton) { - setPauseMenuResponse(PAUSE_RESPONSE_RESUME_PRINT); - setUserConfirmed(); - PrinterStatusKey[1] = 3; - pause_resume_selected = true; - } - } - } - else if (recdat.data[0] == 0) { // Filamet is out, Cancel Selected - if (ExtUI::pauseModeStatus == PAUSE_MESSAGE_PURGE || ExtUI::pauseModeStatus == PAUSE_MESSAGE_OPTION) { - setPauseMenuResponse(PAUSE_RESPONSE_EXTRUDE_MORE); - setUserConfirmed(); - } - } - break; +void onFilamentRunout() { + printerStatusKey[1] = 4; + tpShowStatus = false; + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); +} - #if ENABLED(POWER_LOSS_RECOVERY) - case PwrOffNoF: - if (recdat.data[0] == 1) // Yes: continue to print the 3Dmode during power-off. - injectCommands(F("M1000")); - else if (recdat.data[0] == 2) // No - injectCommands(F("M1000C")); - break; - #endif +void onFilamentRunout(extruder_t extruder) { + printerStatusKey[1] = 4; + tpShowStatus = false; + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); +} - case Volume: - if (recdat.data[0] < 0) - Settings.display_volume = 0; - else if (recdat.data[0] > 255) - Settings.display_volume = 0xFF; - else - Settings.display_volume = recdat.data[0]; +void onUserConfirmRequired(const char *const msg) { + printerStatusKey[1] = 4; + tpShowStatus = false; + if (lastPauseMsgState == ExtUI::pauseModeStatus && msg == (const char*)GET_TEXT_F(MSG_FILAMENT_CHANGE_LOAD)) + return; - if (Settings.display_volume == 0) { - sendData(0, VolumeIcon); - sendData(9, SoundIcon); - } - else { - sendData((Settings.display_volume + 1) / 32 - 1, VolumeIcon); - sendData(8, SoundIcon); - } - sendData(Settings.display_volume << 8, SoundAddr + 1); + switch (ExtUI::pauseModeStatus) { + case PAUSE_MESSAGE_WAITING: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Press Yes to Continue")); break; + } + case PAUSE_MESSAGE_INSERT: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Load Filament to Continue")); + break; + } + case PAUSE_MESSAGE_HEAT: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Add Filament and Press Yes to Reheat")); + break; + } - case Filename: - if (isMediaInserted() && recdat.addr == FilenameChs) { - - recordcount = recdat.data[0] - 1; - if (filenavigator.currentindex == 0 && filenavigator.folderdepth > 0 && (fileIndex + recordcount) == 0) { - filenavigator.upDIR(); - filenavigator.getFiles(0); - fileIndex = 0; - return; - } - - if (filenavigator.currentindex == 0 && filenavigator.folderdepth > 0) - recordcount = recordcount - 1; // account for return dir link in file index - - for (int16_t j = 1; j <= 4; j++) { // Clear filename BG Color and Frame - sendData(0xFFFFUL, FilenameNature + j * 16); // white - sendData(10, FilenameIcon1 + j); // clean - } - for (int16_t j = 0; j < 10; j++) // clear current filename - sendData(0, Choosefilename + j); - - if (filenavigator.getIndexisDir(fileIndex + recordcount)) { - filenavigator.changeDIR((char *)filenavigator.getIndexName(fileIndex + recordcount)); - filenavigator.getFiles(0); - fileIndex = 0; - return; - } - else { - sendData(filenavigator.getIndexName(fileIndex + recordcount), Choosefilename); - sendData(0x87F0UL, FilenameNature + recdat.data[0] * 16); // Change BG of selected line to Light Green - sendData(6, FilenameIcon1 + recdat.data[0]); // show frame - } + #if DISABLED(ADVANCED_PAUSE_CONTINUOUS_PURGE) + case PAUSE_MESSAGE_PURGE: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + char newMsg[40] = "Yes to "; + strcat_P(newMsg, TERN1(FILAMENT_RUNOUT_SENSOR, !ExtUI::getFilamentRunoutState() && getFilamentRunoutEnabled()) ? PSTR("Continue") : PSTR("Disable ")); + strcat_P(newMsg, PSTR(" No to Purge")); + onStatusChanged(newMsg); + break; } - else if (recdat.addr == FilenamePlay) { - if (recdat.data[0] == 1 && isMediaInserted()) { // for sure - printFile(filenavigator.getIndexName(fileIndex + recordcount)); - - for (int16_t j = 0; j < 10; j++) // clean screen. - sendData(0, Printfilename + j); - - sendData(filenavigator.getIndexName(fileIndex + recordcount), Printfilename); - - delay_ms(4); - - sendData(ExchangePageBase + 53, ExchangepageAddr); + #endif - TPShowStatus = InforShowStatus = true; - PrinterStatusKey[0] = 1; - PrinterStatusKey[1] = 3; - fileIndex = 0; - recordcount = 0; - } - else if (recdat.data[0] == 2) { // Page Down - if ((fileIndex + DISPLAY_FILES) < (filenavigator.maxFiles() + (filenavigator.folderdepth != 0))) { - fileIndex = fileIndex + DISPLAY_FILES; - // if(filenavigator.folderdepth!=0 && fileIndex!=0) //Shift to acknowledge Return DIR button on first page - // filenavigator.getFiles(fileIndex-1); - // else - filenavigator.getFiles(fileIndex); - // filenavigator.getFiles(filenavigator.currentindex+1); - } - } - else if (recdat.data[0] == 3) { // Page Up - if (fileIndex >= DISPLAY_FILES) { - fileIndex = fileIndex - DISPLAY_FILES; - // if(filenavigator.folderdepth!=0 && fileIndex!=0) //Shift to acknowledge Return DIR button on first page - // filenavigator.getFiles(filenavigator.currentindex-DISPLAY_FILES); - // else - filenavigator.getFiles(fileIndex); - } - } - else if (recdat.data[0] == 4) { // Page Up - injectCommands(F("M22\nM21")); - } - else if (recdat.data[0] == 0) { // return to main page - InforShowStatus = true; - TPShowStatus = false; - } - } + case PAUSE_MESSAGE_OPTION: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + char newMsg[40] = "Yes to "; + strcat_P(newMsg, TERN1(FILAMENT_RUNOUT_SENSOR, !ExtUI::getFilamentRunoutState() && getFilamentRunoutEnabled()) ? PSTR("Continue") : PSTR("Disable ")); + strcat_P(newMsg, PSTR(" No to Purge")); + onStatusChanged(newMsg); break; + } - case VolumeDisplay: { - if (recdat.data[0] == 0) { - Settings.display_volume = 0; - Settings.display_sound = false; - } - else if (recdat.data[0] > 100) { - Settings.display_volume = 255; - Settings.display_sound = true; - } - else { - Settings.display_volume = (uint8_t)map(constrain(recdat.data[0], 0, 100), 0, 100, 0, 255); - Settings.display_sound = true; - } - setTouchScreenConfiguration(); + case PAUSE_MESSAGE_PARKING: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Parking...")); break; } - - case DisplayBrightness: { - if (recdat.data[0] < 10) - Settings.screen_brightness = 10; - else if (recdat.data[0] > 100) - Settings.screen_brightness = 100; - else - Settings.screen_brightness = (uint8_t)recdat.data[0]; - setTouchScreenConfiguration(); + case PAUSE_MESSAGE_CHANGING: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Beginning Filament Change")); break; } - - case DisplayStandbyBrightness: { - if (recdat.data[0] < 10) - Settings.standby_screen_brightness = 10; - else if (recdat.data[0] > 100) - Settings.standby_screen_brightness = 100; - else - Settings.standby_screen_brightness = (uint8_t)recdat.data[0]; - setTouchScreenConfiguration(); + case PAUSE_MESSAGE_UNLOAD: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Unloading...")); break; } - - case DisplayStandbySeconds: { - if (recdat.data[0] < 5) - Settings.standby_time_seconds = 5; - else if (recdat.data[0] > 100) - Settings.standby_time_seconds = 100; - else - Settings.standby_time_seconds = (uint8_t)recdat.data[0]; - setTouchScreenConfiguration(); + case PAUSE_MESSAGE_LOAD: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Reloading...")); break; } + case PAUSE_MESSAGE_RESUME: + #if ENABLED(ADVANCED_PAUSE_CONTINUOUS_PURGE) + case PAUSE_MESSAGE_PURGE: { + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); + onStatusChanged(F("Press Yes to Stop Purge")); + break; + } + #endif - case AutolevelVal: { - uint8_t meshPoint = (recdat.addr - AutolevelVal) / 2, - yPnt = floor(meshPoint / GRID_MAX_POINTS_X), - xPnt = meshPoint - (yPnt * GRID_MAX_POINTS_X); - if (yPnt % 2 != 0) xPnt = (GRID_MAX_POINTS_X - 1) - xPnt; // zag row - - float meshVal = float(recdat.data[0] - (recdat.data[0] >= 32768 ? 65536 : 0)) / 1000; - - LIMIT(meshVal, Z_PROBE_LOW_POINT, Z_CLEARANCE_BETWEEN_PROBES); - xy_uint8_t point = { xPnt, yPnt }; - setMeshPoint(point, meshVal); - sendData(meshVal * 1000, recdat.addr); + case PAUSE_MESSAGE_HEATING: { + rts.sendData(ExchangePageBase + 68, ExchangepageAddr); + onStatusChanged(F("Reheating")); break; } - default: break; + case PAUSE_MESSAGE_STATUS: + default: { + setPauseMenuResponse(PAUSE_RESPONSE_RESUME_PRINT); + setUserConfirmed(); + break; + } } - - memset(&recdat, 0, sizeof(recdat)); - recdat.head[0] = FHONE; - recdat.head[1] = FHTWO; + lastPauseMsgState = ExtUI::pauseModeStatus; } -void RTS::writeVariable(const uint16_t adr, const void * const values, uint8_t valueslen, const bool isstr/*=false*/, const char fillChar/*=' '*/) { - const char* myvalues = static_cast(values); - bool strend = !myvalues; - DWIN_SERIAL.write(FHONE); - DWIN_SERIAL.write(FHTWO); - DWIN_SERIAL.write(valueslen + 3); - DWIN_SERIAL.write(0x82); - DWIN_SERIAL.write(adr >> 8); - DWIN_SERIAL.write(adr & 0xFF); - while (valueslen--) { - char x; - if (!strend) x = *myvalues++; - if ((isstr && !x) || strend) { - strend = true; - x = fillChar; - } - DWIN_SERIAL.write(x); - } +void onStatusChanged(const char *const statMsg) { + for (int16_t j = 0; j < 20; j++) // Clear old message + rts.sendData(' ', StatusMessageString + j); + rts.sendData(statMsg, StatusMessageString); } -void RTS::setTouchScreenConfiguration() { - // Main configuration (System_Config) - LIMIT(Settings.screen_brightness, 10, 100); // Prevent a possible all-dark screen - LIMIT(Settings.standby_time_seconds, 10, 655); // Prevent a possible all-dark screen for standby, yet also don't go higher than the DWIN limitation +void onFactoryReset() { + dwin_settings.settings_size = sizeof(creality_dwin_settings_t); + dwin_settings.settings_version = dwin_settings_version; + dwin_settings.display_standby = true; + dwin_settings.display_sound = true; + dwin_settings.display_volume = 32; + dwin_settings.standby_brightness = 15; + dwin_settings.screen_brightness = 100; + dwin_settings.standby_time_seconds = 60; + dwin_settings.screen_rotation = 0; + onStartup(); + startprogress = 0; + show_status = true; +} - uint8_t cfg_bits = (0x0 - | _BV(7) // 7: Enable Control ... TERN0(DWINOS_4, _BV(7)) - | _BV(5) // 5: load 22 touch file - | _BV(4) // 4: auto-upload should always be enabled - | (Settings.display_sound ? _BV(3) : 0) // 3: audio - | (Settings.display_standby ? _BV(2) : 0) // 2: backlight on standby - | (Settings.screen_rotation == 10 ? _BV(1) : 0) // 1 & 0: Inversion - #if LCD_SCREEN_ROTATE == 90 - | _BV(0) // Portrait Mode or 800x480 display has 0 point rotated 90deg from 480x272 display - #elif LCD_SCREEN_ROTATE - #error "Only 90° rotation is supported for the selected LCD." - #endif - ); +void onMeshUpdate(const int8_t xpos, const int8_t ypos, probe_state_t state) {} - const uint8_t config_set[] = { 0x5A, 0x00, TERN(DWINOS_4, 0x00, 0xFF), cfg_bits }; - writeVariable(0x80 /*System_Config*/, config_set, sizeof(config_set)); +void onMeshUpdate(const int8_t xpos, const int8_t ypos, const_float_t zval) { + if (waitway == 3) + if (isPositionKnown() && (getActualTemp_celsius(BED) >= (getTargetTemp_celsius(BED) - 1))) + rts.sendData(ExchangePageBase + 64, ExchangepageAddr); + #if HAS_MESH + uint8_t abl_probe_index = 0; + for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) + for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { + const bool zig = outer & 1; // != ((PR_OUTER_END) & 1); + const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; + if (point.x == xpos && outer == ypos) + rts.sendData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + (abl_probe_index * 2)); + ++abl_probe_index; + } + #endif +} - // Standby brightness (LED_Config) - uint16_t dwinStandbyTimeSeconds = 100 * Settings.standby_time_seconds; /* milliseconds, but divided by 10 (not 5 like the docs say) */ - const uint8_t brightness_set[] = { - Settings.screen_brightness /*% active*/, - Settings.standby_screen_brightness /*% standby*/, - static_cast(dwinStandbyTimeSeconds >> 8), - static_cast(dwinStandbyTimeSeconds) - }; - writeVariable(0x82 /*LED_Config*/, brightness_set, sizeof(brightness_set)); +void onStoreSettings(char *buff) { + static_assert( + ExtUI::eeprom_data_size >= sizeof(creality_dwin_settings_t), + "Insufficient space in EEPROM for UI parameters" + ); - if (!Settings.display_sound) { - sendData(0, VolumeIcon); - sendData(9, SoundIcon); - } - else { - sendData((Settings.display_volume + 1) / 32 - 1, VolumeIcon); - sendData(8, SoundIcon); - } - sendData(Settings.display_volume, VolumeIcon - 2); - sendData(Settings.display_volume << 8, SoundAddr + 1); - sendData(map(constrain(Settings.display_volume, 0, 255), 0, 255, 0, 100), VolumeDisplay); - sendData(Settings.screen_brightness, DisplayBrightness); - sendData(Settings.standby_screen_brightness, DisplayStandbyBrightness); - sendData(Settings.standby_time_seconds, DisplayStandbySeconds); - if (Settings.display_standby) - sendData(3, DisplayStandbyEnableIndicator); - else - sendData(2, DisplayStandbyEnableIndicator); + // Write to buffer + memcpy(buff, &dwin_settings, sizeof(creality_dwin_settings_t)); } -namespace ExtUI { - - void onStartup() { rts.onStartup(); } +void onLoadSettings(const char *buff) { + static_assert( + ExtUI::eeprom_data_size >= sizeof(creality_dwin_settings_t), + "Insufficient space in EEPROM for UI parameters" + ); - void onIdle() { rts.onIdle(); } + creality_dwin_settings_t eepromSettings; + memcpy(&eepromSettings, buff, sizeof(creality_dwin_settings_t)); - void onPrinterKilled(FSTR_P const error, FSTR_P const component) { - rts.sendData(ExchangePageBase + 88, ExchangepageAddr); - int16_t j = 0; - char outmsg[40]; - char killMsg[strlen_P(FTOP(error)) + strlen_P(FTOP(component)) + 3]; - sprintf_P(killMsg, PSTR(S_FMT ": " S_FMT), FTOP(error), FTOP(component)); - while (j < 4) outmsg[j++] = '*'; - while (const char c = killMsg[j - 4]) outmsg[j++] = c; - while (j < 40) outmsg[j++] = '*'; - rts.sendData(outmsg, MacVersion); - delay_ms(10); + // If size is not the same, discard settings + if (eepromSettings.settings_size != sizeof(creality_dwin_settings_t)) { + onFactoryReset(); + return; } - void onMediaInserted() { - filenavigator.reset(); - filenavigator.getFiles(0); - fileIndex = 0; - recordcount = 0; + if (eepromSettings.settings_version != dwin_settings_version) { + onFactoryReset(); + return; } - void onMediaError() { - filenavigator.reset(); - for (int16_t i = 0; i < MaxFileNumber; i++) - for (int16_t j = 0; j < 10; j++) rts.sendData(0, SDFILE_ADDR + i * 10 + j); + // Copy into final location + memcpy(&dwin_settings, &eepromSettings, sizeof(creality_dwin_settings_t)); - for (int16_t j = 0; j < 10; j++) { - rts.sendData(0, Printfilename + j); // clean screen. - rts.sendData(0, Choosefilename + j); // clean filename - } - for (int16_t j = 0; j < 8; j++) rts.sendData(0, FilenameCount + j); - for (int16_t j = 1; j <= MaxFileNumber; j++) { - rts.sendData(10, FilenameIcon + j); - rts.sendData(10, FilenameIcon1 + j); - } - } + rts.setTouchScreenConfiguration(); +} + +void onSettingsStored(const bool success) { + // This is called after the entire EEPROM has been written, + // whether successful or not. +} - void onMediaRemoved() { - filenavigator.reset(); - for (int16_t i = 0; i < MaxFileNumber; i++) - for (int16_t j = 0; j < 10; j++) rts.sendData(0, SDFILE_ADDR + i * 10 + j); +void onSettingsLoaded(const bool success) { + #if HAS_MESH + if (ExtUI::getMeshValid()) { + uint8_t abl_probe_index = 0; + for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) + for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { + const bool zig = outer & 1; + const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; + rts.sendData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + (abl_probe_index * 2)); + ++abl_probe_index; + } - for (int16_t j = 0; j < 10; j++) { - rts.sendData(0, Printfilename + j); // clean screen. - rts.sendData(0, Choosefilename + j); // clean filename + rts.sendData(3, AutoLevelIcon); // 2=On, 3=Off + setLevelingActive(true); } - for (int16_t j = 0; j < 8; j++) rts.sendData(0, FilenameCount + j); - for (int16_t j = 1; j <= MaxFileNumber; j++) { - rts.sendData(10, FilenameIcon + j); - rts.sendData(10, FilenameIcon1 + j); + else { + rts.sendData(2, AutoLevelIcon); /*Off*/ + setLevelingActive(false); } - } - - void onPlayTone(const uint16_t frequency, const uint16_t duration) { - rts.sendData(StartSoundSet, SoundAddr); - } - - void onPrintTimerStarted() { - if (waitway == 7) return; - PrinterStatusKey[1] = 3; - InforShowStatus = true; - delay_ms(1); - rts.sendData(ExchangePageBase + 53, ExchangepageAddr); - } - - void onPrintTimerPaused() { - rts.sendData(ExchangePageBase + 78, ExchangepageAddr); // Display Pause Screen - onStatusChanged(F("Pausing...")); - } - - void onPrintTimerStopped() { - if (waitway == 3) return; - - #if FAN_COUNT > 0 - for (uint8_t i = 0; i < FAN_COUNT; i++) setTargetFan_percent(FanOff, (fan_t)i); - #endif - - PrinterStatusKey[0] = 0; - InforShowStatus = true; - TPShowStatus = false; - rts.sendData(ExchangePageBase + 51, ExchangepageAddr); - } + #endif - void onFilamentRunout() { - PrinterStatusKey[1] = 4; - TPShowStatus = false; - rts.sendData(ExchangePageBase + 78, ExchangepageAddr); - } + rts.sendData(getZOffset_mm() * 100, ProbeOffset_Z); + rts.setTouchScreenConfiguration(); +} - void onFilamentRunout(extruder_t extruder) { - PrinterStatusKey[1] = 4; - TPShowStatus = false; - rts.sendData(ExchangePageBase + 78, ExchangepageAddr); +#if ENABLED(POWER_LOSS_RECOVERY) + void onSetPowerLoss(const bool onoff) { + // Called when power-loss is enabled/disabled } - - void onUserConfirmRequired(const char *const msg) { - PrinterStatusKey[1] = 4; - TPShowStatus = false; - if (lastPauseMsgState == ExtUI::pauseModeStatus && msg == (const char*)GET_TEXT_F(MSG_FILAMENT_CHANGE_LOAD)) - return; - - switch (ExtUI::pauseModeStatus) { - case PAUSE_MESSAGE_WAITING: { - rts.sendData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Press Yes to Continue")); - break; - } - case PAUSE_MESSAGE_INSERT: { - rts.sendData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Load Filament to Continue")); - break; - } - case PAUSE_MESSAGE_HEAT: { - rts.sendData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Add Filament and Press Yes to Reheat")); - break; - } - - #if DISABLED(ADVANCED_PAUSE_CONTINUOUS_PURGE) - case PAUSE_MESSAGE_PURGE: { - rts.sendData(ExchangePageBase + 78, ExchangepageAddr); - char newMsg[40] = "Yes to "; - strcat_P(newMsg, TERN1(FILAMENT_RUNOUT_SENSOR, !ExtUI::getFilamentRunoutState() && getFilamentRunoutEnabled()) ? PSTR("Continue") : PSTR("Disable ")); - strcat_P(newMsg, PSTR(" No to Purge")); - onStatusChanged(newMsg); - break; - } - #endif - - case PAUSE_MESSAGE_OPTION: { - rts.sendData(ExchangePageBase + 78, ExchangepageAddr); - char newMsg[40] = "Yes to "; - strcat_P(newMsg, TERN1(FILAMENT_RUNOUT_SENSOR, !ExtUI::getFilamentRunoutState() && getFilamentRunoutEnabled()) ? PSTR("Continue") : PSTR("Disable ")); - strcat_P(newMsg, PSTR(" No to Purge")); - onStatusChanged(newMsg); - break; - } - - case PAUSE_MESSAGE_PARKING: { - rts.sendData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Parking...")); - break; - } - case PAUSE_MESSAGE_CHANGING: { - rts.sendData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Beginning Filament Change")); - break; - } - case PAUSE_MESSAGE_UNLOAD: { - rts.sendData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Unloading...")); - break; - } - case PAUSE_MESSAGE_LOAD: { - rts.sendData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Reloading...")); - break; - } - case PAUSE_MESSAGE_RESUME: - #if ENABLED(ADVANCED_PAUSE_CONTINUOUS_PURGE) - case PAUSE_MESSAGE_PURGE: { - rts.sendData(ExchangePageBase + 78, ExchangepageAddr); - onStatusChanged(F("Press Yes to Stop Purge")); - break; - } - #endif - - case PAUSE_MESSAGE_HEATING: { - rts.sendData(ExchangePageBase + 68, ExchangepageAddr); - onStatusChanged(F("Reheating")); - break; - } - - case PAUSE_MESSAGE_STATUS: - default: { - setPauseMenuResponse(PAUSE_RESPONSE_RESUME_PRINT); - setUserConfirmed(); - break; - } - } - lastPauseMsgState = ExtUI::pauseModeStatus; + void onPowerLoss() { + // Called when power-loss state is detected } - - void onStatusChanged(const char *const statMsg) { - for (int16_t j = 0; j < 20; j++) // Clear old message - rts.sendData(' ', StatusMessageString + j); - rts.sendData(statMsg, StatusMessageString); + void onPowerLossResume() { + startprogress = 254; + show_status = true; + tpShowStatus = false; + no_reentry = false; + rts.sendData(ExchangePageBase + 76, ExchangepageAddr); } +#endif - void onFactoryReset() { - Settings.settings_size = sizeof(creality_dwin_settings_t); - Settings.settings_version = dwin_settings_version; - Settings.display_standby = true; - Settings.display_sound = true; - Settings.display_volume = 32; - Settings.standby_screen_brightness = 15; - Settings.screen_brightness = 100; - Settings.standby_time_seconds = 60; - Settings.screen_rotation = 0; - onStartup(); - startprogress = 0; - InforShowStatus = true; +#if HAS_PID_HEATING + void onPidTuning(const result_t rst) { + // Called for temperature PID tuning result + rts.sendData(pid_hotendAutoTemp, HotendPID_AutoTmp); + rts.sendData(pid_bedAutoTemp, BedPID_AutoTmp); + rts.sendData(uint16_t(getPID_Kp(E0)) * 10, HotendPID_P); + rts.sendData(uint16_t(getPID_Ki(E0)) * 10, HotendPID_I); + rts.sendData(uint16_t(getPID_Kd(E0)) * 10, HotendPID_D); + #if ENABLED(PIDTEMPBED) + rts.sendData(uint16_t(getBedPID_Kp()) * 10, BedPID_P); + rts.sendData(uint16_t(getBedPID_Ki()) * 10, BedPID_I); + rts.sendData(uint16_t(getBedPID_Kd()) * 10, BedPID_D); + #endif + onStatusChanged(F("PID Tune Finished")); } +#endif - void onMeshUpdate(const int8_t xpos, const int8_t ypos, probe_state_t state) {} +void onLevelingStart() {} - void onMeshUpdate(const int8_t xpos, const int8_t ypos, const_float_t zval) { - if (waitway == 3) - if (isPositionKnown() && (getActualTemp_celsius(BED) >= (getTargetTemp_celsius(BED) - 1))) - rts.sendData(ExchangePageBase + 64, ExchangepageAddr); - #if HAS_MESH +void onLevelingDone() { + #if HAS_MESH + if (ExtUI::getMeshValid()) { uint8_t abl_probe_index = 0; for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { - const bool zig = outer & 1; // != ((PR_OUTER_END) & 1); + const bool zig = outer & 1; const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; - if (point.x == xpos && outer == ypos) - rts.sendData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + (abl_probe_index * 2)); + rts.sendData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + abl_probe_index * 2); ++abl_probe_index; } - #endif - } - - void onStoreSettings(char *buff) { - static_assert( - ExtUI::eeprom_data_size >= sizeof(creality_dwin_settings_t), - "Insufficient space in EEPROM for UI parameters" - ); - - // Write to buffer - memcpy(buff, &Settings, sizeof(creality_dwin_settings_t)); - } - void onLoadSettings(const char *buff) { - static_assert( - ExtUI::eeprom_data_size >= sizeof(creality_dwin_settings_t), - "Insufficient space in EEPROM for UI parameters" - ); - - creality_dwin_settings_t eepromSettings; - memcpy(&eepromSettings, buff, sizeof(creality_dwin_settings_t)); - - // If size is not the same, discard settings - if (eepromSettings.settings_size != sizeof(creality_dwin_settings_t)) { - onFactoryReset(); - return; - } - - if (eepromSettings.settings_version != dwin_settings_version) { - onFactoryReset(); - return; - } - - // Copy into final location - memcpy(&Settings, &eepromSettings, sizeof(creality_dwin_settings_t)); - - rts.setTouchScreenConfiguration(); - } - - void onSettingsStored(const bool success) { - // This is called after the entire EEPROM has been written, - // whether successful or not. - } - - void onSettingsLoaded(const bool success) { - #if HAS_MESH - if (ExtUI::getMeshValid()) { - uint8_t abl_probe_index = 0; - for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) - for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { - const bool zig = outer & 1; - const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; - rts.sendData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + (abl_probe_index * 2)); - ++abl_probe_index; - } - - rts.sendData(3, AutoLevelIcon); // 2=On, 3=Off - setLevelingActive(true); - } - else { - rts.sendData(2, AutoLevelIcon); /*Off*/ - setLevelingActive(false); - } - #endif - - rts.sendData(getZOffset_mm() * 100, ProbeOffset_Z); - rts.setTouchScreenConfiguration(); - } - - #if ENABLED(POWER_LOSS_RECOVERY) - void onSetPowerLoss(const bool onoff) { - // Called when power-loss is enabled/disabled - } - void onPowerLoss() { - // Called when power-loss state is detected - } - void onPowerLossResume() { - startprogress = 254; - InforShowStatus = true; - TPShowStatus = false; - reEntryPrevent = false; - rts.sendData(ExchangePageBase + 76, ExchangepageAddr); + rts.sendData(3, AutoLevelIcon); // 2=On, 3=Off + setLevelingActive(true); } - #endif - - #if HAS_PID_HEATING - void onPidTuning(const result_t rst) { - // Called for temperature PID tuning result - rts.sendData(pid_hotendAutoTemp, HotendPID_AutoTmp); - rts.sendData(pid_bedAutoTemp, BedPID_AutoTmp); - rts.sendData(uint16_t(getPID_Kp(E0)) * 10, HotendPID_P); - rts.sendData(uint16_t(getPID_Ki(E0)) * 10, HotendPID_I); - rts.sendData(uint16_t(getPID_Kd(E0)) * 10, HotendPID_D); - #if ENABLED(PIDTEMPBED) - rts.sendData(uint16_t(getBedPID_Kp()) * 10, BedPID_P); - rts.sendData(uint16_t(getBedPID_Ki()) * 10, BedPID_I); - rts.sendData(uint16_t(getBedPID_Kd()) * 10, BedPID_D); - #endif - onStatusChanged(F("PID Tune Finished")); + else { + rts.sendData(2, AutoLevelIcon); /*Off*/ + setLevelingActive(false); } #endif +} - void onLevelingStart() {} - - void onLevelingDone() { - #if HAS_MESH - if (ExtUI::getMeshValid()) { - uint8_t abl_probe_index = 0; - for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) - for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { - const bool zig = outer & 1; - const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; - rts.sendData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + abl_probe_index * 2); - ++abl_probe_index; - } - - rts.sendData(3, AutoLevelIcon); // 2=On, 3=Off - setLevelingActive(true); - } - else { - rts.sendData(2, AutoLevelIcon); /*Off*/ - setLevelingActive(false); - } - #endif - } - - void onSteppersEnabled() {} - void onPrintDone() {} - void onHomingStart() {} - void onHomingDone() {} - void onSteppersDisabled() {} - void onPostprocessSettings() {} +void onSteppersEnabled() {} +void onPrintDone() {} +void onHomingStart() {} +void onHomingDone() {} +void onSteppersDisabled() {} +void onPostprocessSettings() {} } // namespace ExtUI diff --git a/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp new file mode 100644 index 000000000000..37ba539ff102 --- /dev/null +++ b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp @@ -0,0 +1,1730 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2022 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +/* **************************************** + * lcd/extui/ia_creality/ia_creality_rts.cpp + * **************************************** + * Creality DWIN Resistive Touch Screen + * 10SPro, Max, CRX, and others + * Based original Creality release + * Written by Insanity Automation, sponsored by Tiny Machines 3D + * + * ***************************************/ + +#include "../../../inc/MarlinConfigPre.h" + +#if DGUS_LCD_UI_IA_CREALITY + +#include "ia_creality_rts.h" +#include "FileNavigator.h" +#include "../ui_api.h" + +using namespace ExtUI; + +#include // for memset + +// Singleton instance +RTS rts; + +// Static data +DB RTS::recdat, RTS::snddat; +uint8_t RTS::databuf[DATA_BUF_SIZE]; +rx_datagram_state_t RTS::rx_datagram_state = DGUS_IDLE; +uint8_t RTS::rx_datagram_len = 0; + +// Local data +uint16_t fileIndex = 0; +uint8_t recordcount = 0; +uint8_t waitway_lock = 0; +uint8_t startprogress = 0; + +char waitway = 0; +int16_t recnum = 0; +float changeMaterialBuf[2] = { 0 }; +char nozzleTempStatus[3] = { 0 }; +char printerStatusKey[2] = { 0 }; + +uint8_t axisPageNum = 0; // 0 for 10mm, 1 for 1mm, 2 for 0.1mm +bool show_status = true; +bool tpShowStatus = false; // true for only opening time and percentage, false for closing time and percentage. +bool autoHomeKey = false; +uint8_t autoHomeIconNum; +int16_t userConfValidation = 0; +uint8_t lastPauseMsgState = 0; + +creality_dwin_settings_t dwin_settings; + +bool no_reentry = false; +uint8_t reentryCount = 0; +uint16_t idleThrottling = 0; + +bool pause_resume_selected = false; + +#if HAS_PID_HEATING + uint16_t pid_hotendAutoTemp = 150; + uint16_t pid_bedAutoTemp = 70; +#endif + +#ifndef IA_CREALITY_BOOT_DELAY + #define IA_CREALITY_BOOT_DELAY 500 +#endif + +void RTS::onStartup() { + DWIN_SERIAL.begin(115200); + recdat.head[0] = snddat.head[0] = FHONE; + recdat.head[1] = snddat.head[1] = FHTWO; + ZERO(databuf); + + delay_ms(IA_CREALITY_BOOT_DELAY); // Delay to allow screen startup + setTouchScreenConfiguration(); + sendData(StartSoundSet, SoundAddr); + delay_ms(400); // Delay to allow screen to configure + + onStatusChanged(MACHINE_NAME " Ready"); + + sendData(100, FeedrateDisplay); + + /***************turn off motor*****************/ + sendData(11, FilenameIcon); + + /***************transmit temperature to screen*****************/ + sendData(0, NozzlePreheat); + sendData(0, BedPreheat); + sendData(getActualTemp_celsius(H0), NozzleTemp); + sendData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); + sendData(getActualTemp_celsius(BED), Bedtemp); + /***************transmit Fan speed to screen*****************/ + sendData(getActualFan_percent((fan_t)getActiveTool()), FanKeyIcon); + + /***************transmit Printer information to screen*****************/ + for (int16_t j = 0; j < 20; j++) // clean filename + sendData(0, MacVersion + j); + char sizebuf[20] = {0}; + sprintf(sizebuf, "%d X %d X %d", Y_BED_SIZE, X_BED_SIZE, Z_MAX_POS); + sendData(MACHINE_NAME, MacVersion); + sendData(SHORT_BUILD_VERSION, SoftVersion); + sendData(sizebuf, PrinterSize); + sendData(WEBSITE_URL, CorpWebsite); + + /**************************some info init*******************************/ + sendData(0, PrintscheduleIcon); + sendData(0, PrintscheduleIcon + 1); + + /************************clean screen*******************************/ + for (int16_t i = 0; i < MaxFileNumber; i++) + for (int16_t j = 0; j < 10; j++) sendData(0, SDFILE_ADDR + i * 10 + j); + + for (int16_t j = 0; j < 10; j++) { + sendData(0, Printfilename + j); // clean screen. + sendData(0, Choosefilename + j); // clean filename + } + for (int16_t j = 0; j < 8; j++) sendData(0, FilenameCount + j); + for (int16_t j = 1; j <= MaxFileNumber; j++) { + sendData(10, FilenameIcon + j); + sendData(10, FilenameIcon1 + j); + } +} + +void RTS::onIdle() { + while (rts.receiveData() > 0 && (rts.recdat.data[0] != 0 || rts.recdat.addr != 0)) + rts.handleData(); + + if (no_reentry && reentryCount < 120) { reentryCount++; return; } + reentryCount = 0; + + if (idleThrottling++ < 750) return; + + // Always send temperature data + rts.sendData(getActualTemp_celsius(getActiveTool()), NozzleTemp); + rts.sendData(getActualTemp_celsius(BED), Bedtemp); + rts.sendData(getTargetTemp_celsius(getActiveTool()), NozzlePreheat); + rts.sendData(getTargetTemp_celsius(BED), BedPreheat); + rts.sendData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); + rts.sendData(TERN0(HAS_MULTI_HOTEND, getTargetTemp_celsius(H1)), e2Preheat); + TERN_(HAS_MULTI_HOTEND, rts.sendData(uint8_t(getActiveTool() + 1), ActiveToolVP)); + + if (awaitingUserConfirm() && (lastPauseMsgState != ExtUI::pauseModeStatus || userConfValidation > 99)) { + switch (ExtUI::pauseModeStatus) { + case PAUSE_MESSAGE_PARKING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_PAUSE_PRINT_PARKING)); break; + case PAUSE_MESSAGE_CHANGING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_INIT)); break; + case PAUSE_MESSAGE_UNLOAD: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_UNLOAD)); break; + case PAUSE_MESSAGE_WAITING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_ADVANCED_PAUSE_WAITING)); break; + case PAUSE_MESSAGE_INSERT: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_INSERT)); break; + case PAUSE_MESSAGE_LOAD: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_LOAD)); break; + case PAUSE_MESSAGE_PURGE: ExtUI::onUserConfirmRequired(GET_TEXT_F(TERN(ADVANCED_PAUSE_CONTINUOUS_PURGE, MSG_FILAMENT_CHANGE_CONT_PURGE, MSG_FILAMENT_CHANGE_PURGE))); break; + case PAUSE_MESSAGE_RESUME: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_RESUME)); break; + case PAUSE_MESSAGE_HEAT: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_HEAT)); break; + case PAUSE_MESSAGE_HEATING: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_HEATING)); break; + case PAUSE_MESSAGE_OPTION: ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FILAMENT_CHANGE_OPTION_HEADER)); break; + case PAUSE_MESSAGE_STATUS: break; + default: onUserConfirmRequired(PSTR("Confirm Continue")); break; + } + userConfValidation = 0; + } + else if (pause_resume_selected && !awaitingUserConfirm()) { + rts.sendData(ExchangePageBase + 53, ExchangepageAddr); + pause_resume_selected = false; + userConfValidation = 0; + } + else if (awaitingUserConfirm()) { + if (pause_resume_selected) { + pause_resume_selected = false; + userConfValidation = 100; + } + else + userConfValidation++; + } + + no_reentry = true; + idleThrottling = 0; + if (waitway && !commandsInQueue()) + waitway_lock++; + else + waitway_lock = 0; + + if (waitway_lock > 100) { + waitway_lock = 0; + waitway = 0; // clear waitway if nothing is going on + } + + switch (waitway) { + case 1: + if (isPositionKnown()) { + show_status = true; + rts.sendData(ExchangePageBase + 54, ExchangepageAddr); + waitway = 0; + } + break; + + case 2: + if (isPositionKnown() && !commandsInQueue()) waitway = 0; + break; + + case 3: + //if(isPositionKnown() && (getActualTemp_celsius(BED) >= (getTargetTemp_celsius(BED)-1))) { + rts.sendData(ExchangePageBase + 64, ExchangepageAddr); + waitway = 7; + //return; + //} + break; + + case 4: + if (autoHomeKey && isPositionKnown() && !commandsInQueue()) { // Manual Move Home Done + //rts.sendData(ExchangePageBase + 71 + axisPageNum, ExchangepageAddr); + autoHomeKey = false; + waitway = 0; + } + break; + case 5: + if (isPositionKnown() && !commandsInQueue()) { + show_status = true; + waitway = 0; + rts.sendData(ExchangePageBase + 78, ExchangepageAddr); // exchange to 78 page + } + break; + case 6: + if (!commandsInQueue()) { + setAxisPosition_mm(BED_TRAMMING_HEIGHT, axis_t(Z)); + waitway = 0; + } + break; + case 7: + if (!commandsInQueue()) waitway = 0; + break; + } + + TERN_(HAS_MESH, rts.sendData(getLevelingActive() ? 3 : 2, AutoLevelIcon)); + TERN_(HAS_FILAMENT_SENSOR, rts.sendData(getFilamentRunoutEnabled() ? 3 : 2, RunoutToggle)); + TERN_(CASE_LIGHT_ENABLE, rts.sendData(getCaseLightState() ? 3 : 2, LedToggle)); + TERN_(POWER_LOSS_RECOVERY, rts.sendData(getPowerLossRecoveryEnabled() ? 3 : 2, PowerLossToggle)); + + if (startprogress == 0) { + startprogress += 25; + delay_ms(3000); // Delay to show bootscreen + } + else if (startprogress < 250) { + if (isMediaInserted()) // Re init media as it happens too early on STM32 boards often + onMediaInserted(); + else + injectCommands(F("M22\nM21")); + startprogress = 254; + show_status = true; + tpShowStatus = false; + rts.sendData(ExchangePageBase + 45, ExchangepageAddr); + no_reentry = false; + return; + } + if (startprogress <= 100) + rts.sendData(startprogress, StartIcon); + else + rts.sendData(startprogress - 100, StartIcon + 1); + + //rts.sendData((startprogress++) % 5, ExchFlmntIcon); + + if (isPrinting()) { + rts.sendData(getActualFan_percent((fan_t)getActiveTool()), FanKeyIcon); + rts.sendData(getProgress_seconds_elapsed() / 3600, Timehour); + rts.sendData((getProgress_seconds_elapsed() % 3600) / 60, Timemin); + if (getProgress_percent() > 0) { + const uint16_t perc = getProgress_percent() + 1; + if (perc <= 50) { + rts.sendData(uint16_t(perc) * 2, PrintscheduleIcon); + rts.sendData(0, PrintscheduleIcon + 1); + } + else { + rts.sendData(100, PrintscheduleIcon); + rts.sendData(uint16_t(perc) * 2 - 100, PrintscheduleIcon + 1); + } + } + else { + rts.sendData(0, PrintscheduleIcon); + rts.sendData(0, PrintscheduleIcon + 1); + } + rts.sendData(uint16_t(getProgress_percent()), Percentage); + } + else { // Not printing settings + rts.sendData(map(constrain(dwin_settings.display_volume, 0, 255), 0, 255, 0, 100), VolumeDisplay); + rts.sendData(dwin_settings.screen_brightness, DisplayBrightness); + rts.sendData(dwin_settings.standby_brightness, DisplayStandbyBrightness); + rts.sendData(dwin_settings.standby_time_seconds, DisplayStandbySeconds); + if (dwin_settings.display_standby) + rts.sendData(3, DisplayStandbyEnableIndicator); + else + rts.sendData(2, DisplayStandbyEnableIndicator); + + rts.sendData(getAxisSteps_per_mm(X) * 10, StepMM_X); + rts.sendData(getAxisSteps_per_mm(Y) * 10, StepMM_Y); + rts.sendData(getAxisSteps_per_mm(Z) * 10, StepMM_Z); + rts.sendData(getAxisSteps_per_mm(E0) * 10, StepMM_E); + + rts.sendData(getAxisMaxAcceleration_mm_s2(X) / 100, Accel_X); + rts.sendData(getAxisMaxAcceleration_mm_s2(Y) / 100, Accel_Y); + rts.sendData(getAxisMaxAcceleration_mm_s2(Z) / 10, Accel_Z); + rts.sendData(getAxisMaxAcceleration_mm_s2(E0), Accel_E); + + rts.sendData(getAxisMaxFeedrate_mm_s(X), Feed_X); + rts.sendData(getAxisMaxFeedrate_mm_s(Y), Feed_Y); + rts.sendData(getAxisMaxFeedrate_mm_s(Z), Feed_Z); + rts.sendData(getAxisMaxFeedrate_mm_s(E0), Feed_E); + + rts.sendData(getAxisMaxJerk_mm_s(X) * 100, Jerk_X); + rts.sendData(getAxisMaxJerk_mm_s(Y) * 100, Jerk_Y); + rts.sendData(getAxisMaxJerk_mm_s(Z) * 100, Jerk_Z); + rts.sendData(getAxisMaxJerk_mm_s(E0) * 100, Jerk_E); + + #if HAS_HOTEND_OFFSET + rts.sendData(getNozzleOffset_mm(X, E1) * 10, T2Offset_X); + rts.sendData(getNozzleOffset_mm(Y, E1) * 10, T2Offset_Y); + rts.sendData(getNozzleOffset_mm(Z, E1) * 10, T2Offset_Z); + rts.sendData(getAxisSteps_per_mm(E1) * 10, T2StepMM_E); + #endif + + #if HAS_BED_PROBE + rts.sendData(getProbeOffset_mm(X) * 100, ProbeOffset_X); + rts.sendData(getProbeOffset_mm(Y) * 100, ProbeOffset_Y); + #endif + + #if HAS_PID_HEATING + rts.sendData(pid_hotendAutoTemp, HotendPID_AutoTmp); + rts.sendData(pid_bedAutoTemp, BedPID_AutoTmp); + rts.sendData(getPID_Kp(E0) * 10, HotendPID_P); + rts.sendData(getPID_Ki(E0) * 10, HotendPID_I); + rts.sendData(getPID_Kd(E0) * 10, HotendPID_D); + #if ENABLED(PIDTEMPBED) + rts.sendData(getBedPID_Kp() * 10, BedPID_P); + rts.sendData(getBedPID_Ki() * 10, BedPID_I); + rts.sendData(getBedPID_Kd() * 10, BedPID_D); + #endif + #endif + } + + rts.sendData(getZOffset_mm() * 100, ProbeOffset_Z); + rts.sendData(uint16_t(getFlow_percent(E0)), Flowrate); + + if (nozzleTempStatus[0] || nozzleTempStatus[2]) { // statuse of loadfilament and unloadfinement when temperature is less than + uint16_t IconTemp = getActualTemp_celsius(getActiveTool()) * 100 / getTargetTemp_celsius(getActiveTool()); + NOMORE(IconTemp, 100U); + rts.sendData(IconTemp, HeatPercentIcon); + if (getActualTemp_celsius(getActiveTool()) > EXTRUDE_MINTEMP && nozzleTempStatus[0] != 0) { + nozzleTempStatus[0] = 0; + rts.sendData(10 * changeMaterialBuf[0], FilamentUnit1); + rts.sendData(10 * changeMaterialBuf[1], FilamentUnit2); + rts.sendData(ExchangePageBase + 65, ExchangepageAddr); + } + else if (getActualTemp_celsius(getActiveTool()) >= getTargetTemp_celsius(getActiveTool()) && nozzleTempStatus[2]) { + nozzleTempStatus[2] = 0; + tpShowStatus = true; + rts.sendData(4, ExchFlmntIcon); + rts.sendData(ExchangePageBase + 83, ExchangepageAddr); + } + else if (nozzleTempStatus[2]) { + //rts.sendData((startprogress++) % 5, ExchFlmntIcon); + } + } + + if (autoHomeKey) { + rts.sendData(autoHomeIconNum, AutoZeroIcon); + if (++autoHomeIconNum > 9) autoHomeIconNum = 0; + } + + if (isMediaInserted()) { + const uint16_t currPage = fileIndex == 0 ? 1 : CEIL(float(fileIndex) / float(DISPLAY_FILES)) + 1, + maxPageAdd = filenavigator.folderdepth ? 1 : 0, + maxPages = CEIL(float(filenavigator.maxFiles() + maxPageAdd) / float(DISPLAY_FILES) ); + + rts.sendData(currPage, FilesCurentPage); + rts.sendData(maxPages, FilesMaxPage); + } + else { + rts.sendData(0, FilesCurentPage); + rts.sendData(0, FilesMaxPage); + } + + if (rts.recdat.addr != DisplayZaxis && rts.recdat.addr != DisplayYaxis && rts.recdat.addr != DisplayZaxis) { + rts.sendData(10 * getAxisPosition_mm(axis_t(X)), DisplayXaxis); + rts.sendData(10 * getAxisPosition_mm(axis_t(Y)), DisplayYaxis); + rts.sendData(10 * getAxisPosition_mm(axis_t(Z)), DisplayZaxis); + } + no_reentry = false; +} + +RTS::RTS() { + recdat.head[0] = snddat.head[0] = FHONE; + recdat.head[1] = snddat.head[1] = FHTWO; + ZERO(databuf); +} + +int16_t RTS::receiveData() { + uint8_t receivedbyte; + while (DWIN_SERIAL.available()) + switch (rx_datagram_state) { + + case DGUS_IDLE: // Waiting for the first header byte + receivedbyte = DWIN_SERIAL.read(); + if (FHONE == receivedbyte) rx_datagram_state = DGUS_HEADER1_SEEN; + break; + + case DGUS_HEADER1_SEEN: // Waiting for the second header byte + receivedbyte = DWIN_SERIAL.read(); + rx_datagram_state = (FHTWO == receivedbyte) ? DGUS_HEADER2_SEEN : DGUS_IDLE; + break; + + case DGUS_HEADER2_SEEN: // Waiting for the length byte + rx_datagram_len = DWIN_SERIAL.read(); + //DEBUGLCDCOMM_ECHOPGM(" (", rx_datagram_len, ") "); + + // Telegram min len is 3 (command and one word of payload) + rx_datagram_state = WITHIN(rx_datagram_len, 3, DGUS_RX_BUFFER_SIZE) ? DGUS_WAIT_TELEGRAM : DGUS_IDLE; + break; + + case DGUS_WAIT_TELEGRAM: // wait for complete datagram to arrive. + if (DWIN_SERIAL.available() < rx_datagram_len) return -1; + + uint8_t command = DWIN_SERIAL.read(); + + //DEBUGLCDCOMM_ECHOPGM("# ", command); + + uint8_t readlen = rx_datagram_len - 1; // command is part of len. + uint8_t tmp[rx_datagram_len - 1]; + uint8_t *ptmp = tmp; + while (readlen--) { + receivedbyte = DWIN_SERIAL.read(); + //DEBUGLCDCOMM_ECHOPGM(" ", receivedbyte); + *ptmp++ = receivedbyte; + } + //DEBUGLCDCOMM_ECHOPGM(" # "); + // mostly we'll get this: 5A A5 03 82 4F 4B -- ACK on 0x82, so discard it. + if (command == VarAddr_W && 'O' == tmp[0] && 'K' == tmp[1]) { + rx_datagram_state = DGUS_IDLE; + break; + } + + /* AutoUpload, (and answer to) Command 0x83 : + | tmp[0 1 2 3 4 ... ] + | Example 5A A5 06 83 20 01 01 78 01 …… + | / / | | \ / | \ \ + | Header | | | | \_____\_ DATA (Words!) + | DatagramLen / VPAdr | + | Command DataLen (in Words) */ + if (command == VarAddr_R) { + const uint16_t vp = tmp[0] << 8 | tmp[1]; + + const uint8_t dlen = tmp[2] << 1; // Convert to Bytes. (Display works with words) + recdat.addr = vp; + recdat.len = tmp[2]; + for (uint16_t i = 0; i < dlen; i += 2) { + recdat.data[i / 2] = tmp[3 + i]; + recdat.data[i / 2] = (recdat.data[i / 2] << 8 ) | tmp[4 + i]; + } + + rx_datagram_state = DGUS_IDLE; + return 2; + break; + } + + // discard anything else + rx_datagram_state = DGUS_IDLE; + } + return -1; +} + +void RTS::sendData() { + if (snddat.head[0] == FHONE && snddat.head[1] == FHTWO && snddat.len >= 3) { + databuf[0] = snddat.head[0]; + databuf[1] = snddat.head[1]; + databuf[2] = snddat.len; + databuf[3] = snddat.command; + if (snddat.command == 0x80) { // to write data to the register + databuf[4] = snddat.addr; + for (int16_t i = 0; i < (snddat.len - 2); i++) databuf[5 + i] = snddat.data[i]; + } + else if (snddat.len == 3 && (snddat.command == 0x81)) { // to read data from the register + databuf[4] = snddat.addr; + databuf[5] = snddat.bytelen; + } + else if (snddat.command == 0x82) { // to write data to the variate + databuf[4] = snddat.addr >> 8; + databuf[5] = snddat.addr & 0xFF; + for (int16_t i = 0; i < (snddat.len - 3); i += 2) { + databuf[6 + i] = snddat.data[i / 2] >> 8; + databuf[7 + i] = snddat.data[i / 2] & 0xFF; + } + } + else if (snddat.len == 4 && (snddat.command == 0x83)) { // to read data from the variate + databuf[4] = snddat.addr >> 8; + databuf[5] = snddat.addr & 0xFF; + databuf[6] = snddat.bytelen; + } + for (int16_t i = 0; i < (snddat.len + 3); i++) { + DWIN_SERIAL.write(databuf[i]); + delay_us(1); + } + + memset(&snddat, 0, sizeof(snddat)); + ZERO(databuf); + snddat.head[0] = FHONE; + snddat.head[1] = FHTWO; + } +} + +void RTS::sendData(const String &s, uint32_t addr, uint8_t cmd/*=VarAddr_W*/) { + if (s.length() < 1) return; + sendData(s.c_str(), addr, cmd); +} + +void RTS::sendData(const char *str, uint32_t addr, uint8_t cmd/*=VarAddr_W*/) { + int16_t len = strlen(str); + constexpr int16_t maxlen = DATA_BUF_SIZE - 6; + if (len > 0) { + if (len > maxlen) len = maxlen; + databuf[0] = FHONE; + databuf[1] = FHTWO; + databuf[2] = 3 + len; + databuf[3] = cmd; + databuf[4] = addr >> 8; + databuf[5] = addr & 0x00FF; + for (int16_t i = 0; i < len; i++) databuf[6 + i] = str[i]; + + for (int16_t i = 0; i < (len + 6); i++) { + DWIN_SERIAL.write(databuf[i]); + delay_us(1); + } + ZERO(databuf); + } +} + +void RTS::sendData(const char c, const uint32_t addr, const uint8_t cmd/*=VarAddr_W*/) { + snddat.command = cmd; + snddat.addr = addr; + snddat.data[0] = uint32_t(uint16_t(c) << 8); + snddat.len = 5; + sendData(); +} + +void RTS::sendData(const_float_t f, const uint32_t addr, const uint8_t cmd/*=VarAddr_W*/) { + int16_t n = f; + if (cmd == VarAddr_W) { + snddat.data[0] = n; + snddat.len = 5; + } + else if (cmd == RegAddr_W) { + snddat.data[0] = n; + snddat.len = 3; + } + else if (cmd == VarAddr_R) { + snddat.bytelen = n; + snddat.len = 4; + } + snddat.command = cmd; + snddat.addr = addr; + sendData(); +} + +void RTS::sendData(const int n, const uint32_t addr, const uint8_t cmd/*=VarAddr_W*/) { + if (cmd == VarAddr_W) { + if ((unsigned int)n > 0xFFFF) { + snddat.data[0] = n >> 16; + snddat.data[1] = n & 0xFFFF; + snddat.len = 7; + } + else { + snddat.data[0] = n; + snddat.len = 5; + } + } + else if (cmd == RegAddr_W) { + snddat.data[0] = n; + snddat.len = 3; + } + else if (cmd == VarAddr_R) { + snddat.bytelen = n; + snddat.len = 4; + } + snddat.command = cmd; + snddat.addr = addr; + sendData(); +} + +void RTS::sendData(const unsigned long n, uint32_t addr, uint8_t cmd/*=VarAddr_W*/) { + if (cmd == VarAddr_W) { + if (n > 0xFFFF) { + snddat.data[0] = n >> 16; + snddat.data[1] = n & 0xFFFF; + //snddat.data[0] = n >> 24; + //snddat.data[1] = n >> 16; + //snddat.data[2] = n >> 8; + //snddat.data[3] = n; + snddat.len = 7; + } + else { + snddat.data[0] = n; + snddat.len = 5; + } + } + else if (cmd == VarAddr_R) { + snddat.bytelen = n; + snddat.len = 4; + } + snddat.command = cmd; + snddat.addr = addr; + sendData(); +} + +void RTS::handleData() { + int16_t Checkkey = -1; + if (waitway > 0) { // for waiting + memset(&recdat, 0, sizeof(recdat)); + recdat.head[0] = FHONE; + recdat.head[1] = FHTWO; + return; + } + for (int16_t i = 0; Addrbuf[i] != 0; i++) + if (recdat.addr == Addrbuf[i]) { + if (Addrbuf[i] == NzBdSet || Addrbuf[i] == NozzlePreheat || Addrbuf[i] == BedPreheat || Addrbuf[i] == Flowrate) + Checkkey = ManualSetTemp; + else if (WITHIN(Addrbuf[i], Stopprint, Resumeprint)) + Checkkey = PrintChoice; + else if (WITHIN(Addrbuf[i], AutoZero, DisplayZaxis)) + Checkkey = XYZEaxis; + else if (WITHIN(Addrbuf[i], FilamentUnit1, FilamentUnit2)) + Checkkey = Filament; + else + Checkkey = i; + break; + } + + switch (recdat.addr) { + case Flowrate: + case StepMM_X ... StepMM_E: + case ProbeOffset_X ... ProbeOffset_Y: + case HotendPID_AutoTmp ... BedPID_AutoTmp: + case HotendPID_P ... HotendPID_D: + case BedPID_P ... BedPID_D: + case T2Offset_X ... T2StepMM_E: + case Accel_X ... Accel_E: + case Feed_X ... Feed_E: + case Jerk_X ... Jerk_E: + case RunoutToggle: + case PowerLossToggle: + case FanKeyIcon: + case LedToggle: + case e2Preheat: Checkkey = ManualSetTemp; break; + case ProbeOffset_Z: Checkkey = Zoffset_Value; break; + case VolumeDisplay: Checkkey = VolumeDisplay; break; + case DisplayBrightness: Checkkey = DisplayBrightness; break; + case DisplayStandbyBrightness: Checkkey = DisplayStandbyBrightness; break; + case DisplayStandbySeconds: Checkkey = DisplayStandbySeconds; break; + default: + if (WITHIN(recdat.addr, AutolevelVal, 4400)) // (int16_t(AutolevelVal) + GRID_MAX_POINTS * 2) = 4400 with 5x5 mesh + Checkkey = AutolevelVal; + else if (WITHIN(recdat.addr, SDFILE_ADDR, SDFILE_ADDR + 10 * (FileNum + 1))) + Checkkey = Filename; + break; + } + + if (Checkkey < 0) { + memset(&recdat, 0, sizeof(recdat)); + recdat.head[0] = FHONE; + recdat.head[1] = FHTWO; + return; + } + + constexpr float lfrb[4] = BED_TRAMMING_INSET_LFRB; + + switch (Checkkey) { + case Printfile: + if (recdat.data[0] == 1) { // card + show_status = false; + filenavigator.getFiles(0); + fileIndex = 0; + recordcount = 0; + sendData(ExchangePageBase + 46, ExchangepageAddr); + } + else if (recdat.data[0] == 2) { // return after printing result. + show_status = true; + tpShowStatus = false; + stopPrint(); + injectCommands(F("M84")); + sendData(11, FilenameIcon); + sendData(0, PrintscheduleIcon); + sendData(0, PrintscheduleIcon + 1); + sendData(0, Percentage); + delay_ms(2); + sendData(0, Timehour); + sendData(0, Timemin); + + sendData(ExchangePageBase + 45, ExchangepageAddr); // exchange to 45 page + } + else if (recdat.data[0] == 3) { // Temperature control + show_status = true; + tpShowStatus = false; + if (getTargetFan_percent((fan_t)getActiveTool()) == 0) + sendData(ExchangePageBase + 58, ExchangepageAddr); // exchange to 58 page, the fans off + else + sendData(ExchangePageBase + 57, ExchangepageAddr); // exchange to 57 page, the fans on + } + else if (recdat.data[0] == 4) { // Settings + show_status = false; + } + break; + + case Adjust: + if (recdat.data[0] == 1) { + show_status = false; + } + else if (recdat.data[0] == 2) { + show_status = true; + if (printerStatusKey[1] == 3) // during heating + sendData(ExchangePageBase + 53, ExchangepageAddr); + else if (printerStatusKey[1] == 4) + sendData(ExchangePageBase + 54, ExchangepageAddr); + else + sendData(ExchangePageBase + 53, ExchangepageAddr); + } + else if (recdat.data[0] == 3) + setTargetFan_percent(getTargetFan_percent((fan_t)getActiveTool()) != 0 ? 100 : 0, FAN0); + + break; + + case Feedrate: + setFeedrate_percent(recdat.data[0]); + break; + + case PrintChoice: + if (recdat.addr == Stopprint) { + if (recdat.data[0] == 240) { // no + sendData(ExchangePageBase + 53, ExchangepageAddr); + } + else { + sendData(ExchangePageBase + 45, ExchangepageAddr); + sendData(0, Timehour); + sendData(0, Timemin); + stopPrint(); + } + } + else if (recdat.addr == Pauseprint) { + if (recdat.data[0] != 0xF1) + break; + + sendData(ExchangePageBase + 54, ExchangepageAddr); + pausePrint(); + } + else if (recdat.addr == Resumeprint && recdat.data[0] == 1) { + resumePrint(); + + printerStatusKey[1] = 0; + show_status = true; + + sendData(ExchangePageBase + 53, ExchangepageAddr); + } + if (recdat.addr == Resumeprint && recdat.data[0] == 2) { // warming + resumePrint(); + nozzleTempStatus[2] = 1; + printerStatusKey[1] = 0; + show_status = true; + sendData(ExchangePageBase + 82, ExchangepageAddr); + } + break; + + case Zoffset: + float tmp_zprobe_offset; + if (recdat.data[0] >= 32768) + tmp_zprobe_offset = (float(recdat.data[0]) - 65536) / 100; + else + tmp_zprobe_offset = float(recdat.data[0]) / 100; + if (WITHIN((tmp_zprobe_offset), Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { + int16_t tmpSteps = mmToWholeSteps(getZOffset_mm() - tmp_zprobe_offset, axis_t(Z)); + if (tmpSteps == 0) tmpSteps = getZOffset_mm() < tmp_zprobe_offset ? 1 : -1; + smartAdjustAxis_steps(-tmpSteps, axis_t(Z), false); + char zOffs[20], tmp1[11]; + sprintf_P(zOffs, PSTR("Z Offset : %s"), dtostrf(getZOffset_mm(), 1, 3, tmp1)); + onStatusChanged(zOffs); + } + else { + onStatusChanged(F("Requested Offset Beyond Limits")); + } + + sendData(getZOffset_mm() * 100, ProbeOffset_Z); + break; + + case TempControl: + if (recdat.data[0] == 0) { + show_status = true; + tpShowStatus = false; + } + else if (recdat.data[0] == 1) { + if (getTargetFan_percent((fan_t)getActiveTool()) == 0) + sendData(ExchangePageBase + 60, ExchangepageAddr); // exchange to 60 page, the fans off + else + sendData(ExchangePageBase + 59, ExchangepageAddr); // exchange to 59 page, the fans on + } + else if (recdat.data[0] == 2) { + show_status = true; + } + else if (recdat.data[0] == 3) { + if (getTargetFan_percent((fan_t)getActiveTool()) == 0) { // turn on the fan + setTargetFan_percent(100, FAN0); + sendData(ExchangePageBase + 57, ExchangepageAddr); // exchange to 57 page, the fans on + } + else { // turn off the fan + setTargetFan_percent(0, FAN0); + sendData(ExchangePageBase + 58, ExchangepageAddr); // exchange to 58 page, the fans on + } + } + else if (recdat.data[0] == 5) { // PLA mode + setTargetTemp_celsius(PREHEAT_1_TEMP_HOTEND, getActiveTool()); + setTargetTemp_celsius(PREHEAT_1_TEMP_BED, BED); + sendData(PREHEAT_1_TEMP_HOTEND, NozzlePreheat); + sendData(PREHEAT_1_TEMP_BED, BedPreheat); + } + else if (recdat.data[0] == 6) { // ABS mode + setTargetTemp_celsius(PREHEAT_2_TEMP_HOTEND, getActiveTool()); + setTargetTemp_celsius(PREHEAT_2_TEMP_BED, BED); + sendData(PREHEAT_2_TEMP_HOTEND, NozzlePreheat); + sendData(PREHEAT_2_TEMP_BED, BedPreheat); + } + else if (recdat.data[0] == 0xF1) { + //show_status = true; + #if FAN_COUNT > 0 + for (uint8_t i = 0; i < FAN_COUNT; i++) setTargetFan_percent(0, (fan_t)i); + #endif + setTargetTemp_celsius(0.0, H0); + TERN_(HAS_MULTI_HOTEND, setTargetTemp_celsius(0.0, H1)); + setTargetTemp_celsius(0.0, BED); + sendData(0, NozzlePreheat); delay_ms(1); + sendData(0, BedPreheat); delay_ms(1); + sendData(ExchangePageBase + 57, ExchangepageAddr); + printerStatusKey[1] = 2; + } + break; + + case ManualSetTemp: + if (recdat.addr == NzBdSet) { + if (recdat.data[0] == 0) { + if (getTargetFan_percent((fan_t)getActiveTool()) == 0) + sendData(ExchangePageBase + 58, ExchangepageAddr); // exchange to 58 page, the fans off + else + sendData(ExchangePageBase + 57, ExchangepageAddr); // exchange to 57 page, the fans on + } + else if (recdat.data[0] == 1) { + setTargetTemp_celsius(0.0, getActiveTool()); + sendData(0, NozzlePreheat); + } + else if (recdat.data[0] == 2) { + setTargetTemp_celsius(0.0, BED); + sendData(0, BedPreheat); + } + } + else if (recdat.addr == NozzlePreheat) { + setTargetTemp_celsius(float(recdat.data[0]), H0); + } + #if HAS_MULTI_HOTEND + else if (recdat.addr == e2Preheat) { + setTargetTemp_celsius(float(recdat.data[0]), H1); + } + #endif + else if (recdat.addr == BedPreheat) { + setTargetTemp_celsius(float(recdat.data[0]), BED); + } + else if (recdat.addr == Flowrate) { + setFlow_percent(int16_t(recdat.data[0]), getActiveTool()); + } + + #if HAS_PID_HEATING + else if (recdat.addr == HotendPID_AutoTmp) { + pid_hotendAutoTemp = uint16_t(recdat.data[0]); + } + else if (recdat.addr == BedPID_AutoTmp) { + pid_bedAutoTemp = uint16_t(recdat.data[0]); + } + #endif + + else if (recdat.addr == Accel_X) { + setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]) * 100, X); + } + else if (recdat.addr == Accel_Y) { + setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]) * 100, Y); + } + else if (recdat.addr == Accel_Z) { + setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]) * 10, Z); + } + else if (recdat.addr == Accel_E) { + setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]), E0); + setAxisMaxAcceleration_mm_s2(uint16_t(recdat.data[0]), E1); + } + + else if (recdat.addr == Feed_X) { + setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), X); + } + else if (recdat.addr == Feed_Y) { + setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), Y); + } + else if (recdat.addr == Feed_Z) { + setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), Z); + } + else if (recdat.addr == Feed_E) { + setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), E0); + setAxisMaxFeedrate_mm_s(uint16_t(recdat.data[0]), E1); + } + else if (recdat.addr == FanKeyIcon) { + setTargetFan_percent(uint16_t(recdat.data[0]), (fan_t)getActiveTool()); + } + else { + float tmp_float_handling; + if (recdat.data[0] >= 32768) + tmp_float_handling = (float(recdat.data[0]) - 65536) / 100; + else + tmp_float_handling = float(recdat.data[0]) / 100; + if (recdat.addr == StepMM_X) { + setAxisSteps_per_mm(tmp_float_handling * 10, X); + } + else if (recdat.addr == StepMM_Y) { + setAxisSteps_per_mm(tmp_float_handling * 10, Y); + } + else if (recdat.addr == StepMM_Z) { + setAxisSteps_per_mm(tmp_float_handling * 10, Z); + } + else if (recdat.addr == StepMM_E) { + setAxisSteps_per_mm(tmp_float_handling * 10, E0); + #if DISABLED(DUAL_X_CARRIAGE) + setAxisSteps_per_mm(tmp_float_handling * 10, E1); + #endif + } + #if ENABLED(DUAL_X_CARRIAGE) + else if (recdat.addr == T2StepMM_E) { + setAxisSteps_per_mm(tmp_float_handling * 10, E1); + } + else if (recdat.addr == T2Offset_X) { + setNozzleOffset_mm(tmp_float_handling * 10, X, E1); + } + else if (recdat.addr == T2Offset_Y) { + setNozzleOffset_mm(tmp_float_handling * 10, Y, E1); + } + else if (recdat.addr == T2Offset_Z) { + setNozzleOffset_mm(tmp_float_handling * 10, Z, E1); + } + #endif + #if HAS_BED_PROBE + else if (recdat.addr == ProbeOffset_X) { + setProbeOffset_mm(tmp_float_handling, X); + } + else if (recdat.addr == ProbeOffset_Y) { + setProbeOffset_mm(tmp_float_handling, Y); + } + else if (recdat.addr == ProbeOffset_Z) { + setProbeOffset_mm(tmp_float_handling, Z); + } + #endif + + #if ENABLED(CLASSIC_JERK) + else if (recdat.addr == Jerk_X) { + setAxisMaxJerk_mm_s(tmp_float_handling, X); + } + else if (recdat.addr == Jerk_Y) { + setAxisMaxJerk_mm_s(tmp_float_handling, Y); + } + else if (recdat.addr == Jerk_Z) { + setAxisMaxJerk_mm_s(tmp_float_handling, Z); + } + else if (recdat.addr == Jerk_E) { + setAxisMaxJerk_mm_s(tmp_float_handling, E0); + setAxisMaxJerk_mm_s(tmp_float_handling, E1); + } + #endif + + #if HAS_FILAMENT_SENSOR + else if (recdat.addr == RunoutToggle) { + setFilamentRunoutEnabled(!getFilamentRunoutEnabled()); + } + #endif + + #if ENABLED(POWER_LOSS_RECOVERY) + else if (recdat.addr == PowerLossToggle) { + setPowerLossRecoveryEnabled(!getPowerLossRecoveryEnabled()); + } + #endif + + #if ENABLED(CASE_LIGHT_ENABLE) + else if (recdat.addr == LedToggle) { + setCaseLightState(!getCaseLightState()); + } + #endif + + #if HAS_PID_HEATING + else if (recdat.addr == HotendPID_P) { + setPID(tmp_float_handling * 10, getPID_Ki(getActiveTool()), getPID_Kd(getActiveTool()), getActiveTool()); + } + else if (recdat.addr == HotendPID_I) { + setPID(getPID_Kp(getActiveTool()), tmp_float_handling * 10, getPID_Kd(getActiveTool()), getActiveTool()); + } + else if (recdat.addr == HotendPID_D) { + setPID(getPID_Kp(getActiveTool()), getPID_Ki(getActiveTool()), tmp_float_handling * 10, getActiveTool()); + } + #if ENABLED(PIDTEMPBED) + else if (recdat.addr == BedPID_P) { + setBedPID(tmp_float_handling * 10, getBedPID_Ki(), getBedPID_Kd()); + } + else if (recdat.addr == BedPID_I) { + setBedPID(getBedPID_Kp(), tmp_float_handling * 10, getBedPID_Kd()); + } + else if (recdat.addr == BedPID_D) { + setBedPID(getBedPID_Kp(), getBedPID_Ki(), tmp_float_handling * 10); + } + #endif + #endif // HAS_PID_HEATING + } + break; + + case Setting: + if (recdat.data[0] == 0) { // return to main page + show_status = true; + tpShowStatus = false; + } + else if (recdat.data[0] == 1) { // Bed Autoleveling + #if HAS_MESH + sendData(getLevelingActive() ? 3 : 2, AutoLevelIcon); + + if (ExtUI::getMeshValid()) { + uint8_t abl_probe_index = 0; + for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) + for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { + const bool zig = outer & 1; + const xy_uint8_t point = { uint8_t(zig ? (GRID_MAX_POINTS_X - 1) - inner : inner), outer }; + sendData(ExtUI::getMeshPoint(point) * 1000, AutolevelVal + abl_probe_index * 2); + ++abl_probe_index; + } + } + #endif + sendData(10, FilenameIcon); // Motor Icon + injectCommands(isPositionKnown() ? F("G1F1000Z0.0") : F("G28\nG1F1000Z0.0")); + waitway = 2; + sendData(ExchangePageBase + 64, ExchangepageAddr); + } + else if (recdat.data[0] == 2) { // Exchange filament + show_status = true; + tpShowStatus = false; + ZERO(changeMaterialBuf); + changeMaterialBuf[1] = changeMaterialBuf[0] = 10; + sendData(10 * changeMaterialBuf[0], FilamentUnit1); // It's changeMaterialBuf for show, instead of current_position.e in them. + sendData(10 * changeMaterialBuf[1], FilamentUnit2); + sendData(getActualTemp_celsius(H0), NozzleTemp); + sendData(getTargetTemp_celsius(H0), NozzlePreheat); + sendData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); + sendData(TERN0(HAS_MULTI_HOTEND, getTargetTemp_celsius(H1)), e2Preheat); + delay_ms(2); + sendData(ExchangePageBase + 65, ExchangepageAddr); + } + else if (recdat.data[0] == 3) { // Move + axisPageNum = 0; + sendData(ExchangePageBase + 71, ExchangepageAddr); + } + else if (recdat.data[0] == 4) { // Language + // Just loads language screen, now used for tools + } + else if (recdat.data[0] == 5) { // Printer Information + sendData(WEBSITE_URL, CorpWebsite); + } + else if (recdat.data[0] == 6) { // Diabalestepper + injectCommands(F("M84")); + sendData(11, FilenameIcon); + } + break; + + case ReturnBack: + if (recdat.data[0] == 1) { // return to the tool page + show_status = false; + sendData(ExchangePageBase + 63, ExchangepageAddr); + } + if (recdat.data[0] == 2) // return to the Level mode page + sendData(ExchangePageBase + 64, ExchangepageAddr); + break; + + case Bedlevel: + switch (recdat.data[0]) { + case 1: { // Z-axis to home + // Disallow Z homing if X or Y are unknown + injectCommands(isAxisPositionKnown(axis_t(X)) && isAxisPositionKnown(axis_t(Y)) ? F("G28Z\nG1F1500Z0.0") : F("G28\nG1F1500Z0.0")); + sendData(getZOffset_mm() * 100, ProbeOffset_Z); + break; + } + case 2: { // Z-axis to Up + if (WITHIN((getZOffset_mm() + 0.1), Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { + smartAdjustAxis_steps(getAxisSteps_per_mm(Z) / 10, axis_t(Z), false); + //setZOffset_mm(getZOffset_mm() + 0.1); + sendData(getZOffset_mm() * 100, ProbeOffset_Z); + char zOffs[20], tmp1[11]; + sprintf_P(zOffs, PSTR("Z Offset : %s"), dtostrf(getZOffset_mm(), 1, 3, tmp1)); + onStatusChanged(zOffs); + } + break; + } + case 3: { // Z-axis to Down + if (WITHIN((getZOffset_mm() - 0.1), Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { + smartAdjustAxis_steps(-getAxisSteps_per_mm(Z) / 10, axis_t(Z), false); + //babystepAxis_steps(int16_t(-getAxisSteps_per_mm(Z)) / 10, axis_t(Z)); + //setZOffset_mm(getZOffset_mm() - 0.1); + sendData(getZOffset_mm() * 100, ProbeOffset_Z); + char zOffs[20], tmp1[11]; + sprintf_P(zOffs, PSTR("Z Offset : %s"), dtostrf(getZOffset_mm(), 1, 3, tmp1)); + onStatusChanged(zOffs); + } + break; + } + case 4: { // Assistant Level + TERN_(HAS_MESH, setLevelingActive(false)); + injectCommands(isPositionKnown() ? F("G1 F1000 Z0.0") : F("G28\nG1 F1000 Z0.0")); + waitway = 2; + sendData(ExchangePageBase + 84, ExchangepageAddr); + break; + } + case 5: { // AutoLevel "Measuring" Button + #if ENABLED(MESH_BED_LEVELING) + sendData(ExchangePageBase + 93, ExchangepageAddr); + #else + waitway = 3; // only for prohibiting to receive massage + sendData(3, AutolevelIcon); + uint8_t abl_probe_index = 0; + while (abl_probe_index < 25) { + sendData(0, AutolevelVal + abl_probe_index * 2); + ++abl_probe_index; + } + sendData(ExchangePageBase + 64, ExchangepageAddr); + injectCommands(F(MEASURING_GCODE)); + #endif + break; + } + + case 6: { // Assitant Level , Centre 1 + setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); + setAxisPosition_mm(X_CENTER, axis_t(X)); + setAxisPosition_mm(Y_CENTER, axis_t(Y)); + waitway = 6; + break; + } + case 7: { // Assitant Level , Front Left 2 + setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); + setAxisPosition_mm(X_MIN_BED + lfrb[0], axis_t(X)); + setAxisPosition_mm(Y_MIN_BED + lfrb[1], axis_t(Y)); + waitway = 6; + break; + } + case 8: { // Assitant Level , Front Right 3 + setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); + setAxisPosition_mm(X_MAX_BED - lfrb[2], axis_t(X)); + setAxisPosition_mm(Y_MIN_BED + lfrb[1], axis_t(Y)); + waitway = 6; + break; + } + case 9: { // Assitant Level , Back Right 4 + setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); + setAxisPosition_mm(X_MAX_BED - lfrb[2], axis_t(X)); + setAxisPosition_mm(Y_MAX_BED - lfrb[3], axis_t(Y)); + waitway = 6; + break; + } + case 10: { // Assitant Level , Back Left 5 + setAxisPosition_mm(BED_TRAMMING_Z_HOP, axis_t(Z)); + setAxisPosition_mm(X_MIN_BED + lfrb[0], axis_t(X)); + setAxisPosition_mm(Y_MAX_BED - lfrb[3], axis_t(Y)); + waitway = 6; + break; + } + case 11: { // Autolevel switch + #if HAS_MESH + const bool gla = !getLevelingActive(); + setLevelingActive(gla); + sendData(gla ? 3 : 2, AutoLevelIcon); + #endif + sendData(getZOffset_mm() * 100, ProbeOffset_Z); + break; + } + case 12: { + injectCommands(F("G26R255")); + onStatusChanged(F("Beginning G26.. Heating")); + break; + } + case 13: { + injectCommands(F("G29S1")); + onStatusChanged(F("Begin Manual Mesh")); + break; + } + case 14: { + injectCommands(F("G29S2")); + onStatusChanged(F("Moving to Next Mesh Point")); + break; + } + case 15: { + injectCommands(F("M211S0\nG91\nG1Z-0.025\nG90\nM211S1")); + onStatusChanged(F("Moved down 0.025")); + break; + } + case 16: { + injectCommands(F("M211S0\nG91\nG1Z0.025\nG90\nM211S1")); + onStatusChanged(F("Moved up 0.025")); + break; + } + case 17: { + dwin_settings.display_volume = 0; + dwin_settings.display_sound = false; + setTouchScreenConfiguration(); + break; + } + case 18: { + dwin_settings.display_volume = 255; + dwin_settings.display_sound = true; + setTouchScreenConfiguration(); + break; + } + case 19: { + dwin_settings.screen_brightness = 10; + setTouchScreenConfiguration(); + break; + } + case 20: { + dwin_settings.screen_brightness = 100; + setTouchScreenConfiguration(); + break; + } + case 21: { + dwin_settings.display_standby ^= true; + setTouchScreenConfiguration(); + break; + } + case 22: { + dwin_settings.screen_rotation = dwin_settings.screen_rotation == 10 ? 0 : 10; + setTouchScreenConfiguration(); + break; + } + case 23: { // Set IDEX Autopark + injectCommands(F("M605S1\nG28X\nG1X0")); + break; + } + case 24: { // Set IDEX Duplication + injectCommands(F("M605S1\nT0\nG28\nM605S2\nG28X\nG1X0")); + break; + } + case 25: { // Set IDEX Mirrored Duplication + injectCommands(F("M605S1\nT0\nG28\nM605S2\nG28X\nG1X0\nM605S3")); + break; + } + case 26: { // Set IDEX Full Control + injectCommands(F("M605S0\nG28X")); + break; + } + case 27: { // Change Tool + setActiveTool(getActiveTool() == E0 ? E1 : E0, !isAxisPositionKnown(X)); + break; + } + default: break; + } + + sendData(10, FilenameIcon); + break; + + case XYZEaxis: { + axis_t axis = X; + float min = 0.0f, max = 0.0f; + waitway = 4; + if (recdat.addr == DisplayXaxis) { + axis = X; + min = X_MIN_POS; + max = X_MAX_POS; + } + else if (recdat.addr == DisplayYaxis) { + axis = Y; + min = Y_MIN_POS; + max = Y_MAX_POS; + } + else if (recdat.addr == DisplayZaxis) { + axis = Z; + min = Z_MIN_POS; + max = Z_MAX_POS; + } + else if (recdat.addr == AutoZero) { + if (recdat.data[0] == 3) { // autohome + waitway = 4; + injectCommands(F("G28\nG1 F1000 Z10")); + show_status = autoHomeKey = true; + autoHomeIconNum = 0; + sendData(10, FilenameIcon); + } + else { + axisPageNum = recdat.data[0]; + waitway = 0; + } + break; + } + + float targetPos = float(recdat.data[0]) / 10; + LIMIT(targetPos, min, max); + setAxisPosition_mm(targetPos, axis); + waitway = 0; + sendData(10, FilenameIcon); + break; + } + + case Filament: + + uint16_t IconTemp; + if (recdat.addr == Exchfilament) { + if (getActualTemp_celsius(getActiveTool()) < EXTRUDE_MINTEMP && recdat.data[0] < 5) { + sendData(int16_t(EXTRUDE_MINTEMP), 0x1020); + delay_ms(5); + sendData(ExchangePageBase + 66, ExchangepageAddr); + break; + } + + switch (recdat.data[0]) { + case 1: { // Unload filament1 + setAxisPosition_mm(getAxisPosition_mm(E0) - changeMaterialBuf[0], E0); + break; + } + case 2: { // Load filament1 + setAxisPosition_mm(getAxisPosition_mm(E0) + changeMaterialBuf[0], E0); + break; + } + case 3: { // Unload filament2 + setAxisPosition_mm(getAxisPosition_mm(E1) - changeMaterialBuf[1], E1); + break; + } + case 4: { // Load filament2 + setAxisPosition_mm(getAxisPosition_mm(E1) + changeMaterialBuf[1], E1); + break; + } + case 5: { // sure to heat + nozzleTempStatus[0] = 1; + + setTargetTemp_celsius((PREHEAT_1_TEMP_HOTEND + 10), getActiveTool()); + IconTemp = getActualTemp_celsius(getActiveTool()) * 100 / getTargetTemp_celsius(getActiveTool()); + NOMORE(IconTemp, 100U); + sendData(IconTemp, HeatPercentIcon); + + sendData(getActualTemp_celsius(H0), NozzleTemp); + sendData(getTargetTemp_celsius(H0), NozzlePreheat); + sendData(TERN0(HAS_MULTI_HOTEND, getActualTemp_celsius(H1)), e2Temp); + sendData(TERN0(HAS_MULTI_HOTEND, getTargetTemp_celsius(H1)), e2Preheat); + delay_ms(5); + sendData(ExchangePageBase + 68, ExchangepageAddr); + break; + } + case 6: { // cancel to heat + sendData(ExchangePageBase + 65, ExchangepageAddr); + break; + } + case 0xF1: { // Sure to cancel heating + nozzleTempStatus[0] = 0; + delay_ms(1); + sendData(ExchangePageBase + 65, ExchangepageAddr); + break; + } + case 0xF0: // not to cancel heating + break; + } + sendData(10 * changeMaterialBuf[0], FilamentUnit1); // It's changeMaterialBuf for show, instead of current_position.e in them. + sendData(10 * changeMaterialBuf[1], FilamentUnit2); + } + else if (recdat.addr == FilamentUnit1) { + changeMaterialBuf[0] = float(recdat.data[0]) / 10; + } + else if (recdat.addr == FilamentUnit2) { + changeMaterialBuf[1] = float(recdat.data[0]) / 10; + } + break; + + case LanguageChoice: + + //if (recdat.data[0] == 1) settings.save(); else injectCommands(F("M300")); + + // may at some point use language change screens to save eeprom explicitly + switch (recdat.data[0]) { + case 0: { + injectCommands(F("M500")); + break; + } + case 1: { + sendData(ExchangePageBase + 94, ExchangepageAddr); + break; + } + + #if ENABLED(PIDTEMP) + case 2: { + onStatusChanged(F("Hotend PID Started")); + startPIDTune(static_cast(pid_hotendAutoTemp), getActiveTool()); + break; + } + #endif + + case 3: { + injectCommands(F("M502\nM500")); + break; + } + case 4: { + injectCommands(F("M999\nM280P0S160")); + break; + } + + case 5: { + #if ENABLED(PIDTEMPBED) + onStatusChanged(F("Bed PID Started")); + startBedPIDTune(static_cast(pid_bedAutoTemp)); + #endif + break; + } + case 6: { + injectCommands(F("M500")); + break; + } + default: break; + } + break; + + case No_Filament: + if (recdat.data[0] == 1) { // Filament is out, resume / resume selected on screen + if (ExtUI::pauseModeStatus != PAUSE_MESSAGE_PURGE && ExtUI::pauseModeStatus != PAUSE_MESSAGE_OPTION) { + // setPauseMenuResponse(PAUSE_RESPONSE_RESUME_PRINT); + setUserConfirmed(); + // printerStatusKey[1] = 3; + // pause_resume_selected = true; + } + else { + #if ENABLED(FILAMENT_RUNOUT_SENSOR) + bool runouton = false; + if (getFilamentRunoutState()) { + #if NUM_RUNOUT_SENSORS > 1 + if ((runouton = getFilamentRunoutEnabled(getActiveTool()))) + ExtUI::setFilamentRunoutEnabled(false, getActiveTool()); + #else + if ((runouton = getFilamentRunoutEnabled())) + ExtUI::setFilamentRunoutEnabled(false); + #endif + } + #else + constexpr bool runouton = false; + #endif + if (!runouton) { + setPauseMenuResponse(PAUSE_RESPONSE_RESUME_PRINT); + setUserConfirmed(); + printerStatusKey[1] = 3; + pause_resume_selected = true; + } + } + } + else if (recdat.data[0] == 0) { // Filamet is out, Cancel Selected + if (ExtUI::pauseModeStatus == PAUSE_MESSAGE_PURGE || ExtUI::pauseModeStatus == PAUSE_MESSAGE_OPTION) { + setPauseMenuResponse(PAUSE_RESPONSE_EXTRUDE_MORE); + setUserConfirmed(); + } + } + break; + + #if ENABLED(POWER_LOSS_RECOVERY) + case PwrOffNoF: + if (recdat.data[0] == 1) // Yes: continue to print the 3Dmode during power-off. + injectCommands(F("M1000")); + else if (recdat.data[0] == 2) // No + injectCommands(F("M1000C")); + break; + #endif + + case Volume: + if (recdat.data[0] < 0) + dwin_settings.display_volume = 0; + else if (recdat.data[0] > 255) + dwin_settings.display_volume = 0xFF; + else + dwin_settings.display_volume = recdat.data[0]; + + if (dwin_settings.display_volume == 0) { + sendData(0, VolumeIcon); + sendData(9, SoundIcon); + } + else { + sendData((dwin_settings.display_volume + 1) / 32 - 1, VolumeIcon); + sendData(8, SoundIcon); + } + sendData(dwin_settings.display_volume << 8, SoundAddr + 1); + break; + + case Filename: + if (isMediaInserted() && recdat.addr == FilenameChs) { + + recordcount = recdat.data[0] - 1; + if (filenavigator.currentindex == 0 && filenavigator.folderdepth > 0 && (fileIndex + recordcount) == 0) { + filenavigator.upDIR(); + filenavigator.getFiles(0); + fileIndex = 0; + return; + } + + if (filenavigator.currentindex == 0 && filenavigator.folderdepth > 0) + recordcount = recordcount - 1; // account for return dir link in file index + + for (int16_t j = 1; j <= 4; j++) { // Clear filename BG Color and Frame + sendData(0xFFFFUL, FilenameNature + j * 16); // white + sendData(10, FilenameIcon1 + j); // clean + } + for (int16_t j = 0; j < 10; j++) // clear current filename + sendData(0, Choosefilename + j); + + if (filenavigator.getIndexisDir(fileIndex + recordcount)) { + filenavigator.changeDIR((char *)filenavigator.getIndexName(fileIndex + recordcount)); + filenavigator.getFiles(0); + fileIndex = 0; + return; + } + else { + sendData(filenavigator.getIndexName(fileIndex + recordcount), Choosefilename); + sendData(0x87F0UL, FilenameNature + recdat.data[0] * 16); // Change BG of selected line to Light Green + sendData(6, FilenameIcon1 + recdat.data[0]); // show frame + } + } + else if (recdat.addr == FilenamePlay) { + if (recdat.data[0] == 1 && isMediaInserted()) { // for sure + printFile(filenavigator.getIndexName(fileIndex + recordcount)); + + for (int16_t j = 0; j < 10; j++) // clean screen. + sendData(0, Printfilename + j); + + sendData(filenavigator.getIndexName(fileIndex + recordcount), Printfilename); + + delay_ms(4); + + sendData(ExchangePageBase + 53, ExchangepageAddr); + + tpShowStatus = show_status = true; + printerStatusKey[0] = 1; + printerStatusKey[1] = 3; + fileIndex = 0; + recordcount = 0; + } + else if (recdat.data[0] == 2) { // Page Down + if ((fileIndex + DISPLAY_FILES) < (filenavigator.maxFiles() + (filenavigator.folderdepth != 0))) { + fileIndex = fileIndex + DISPLAY_FILES; + // if(filenavigator.folderdepth!=0 && fileIndex!=0) //Shift to acknowledge Return DIR button on first page + // filenavigator.getFiles(fileIndex-1); + // else + filenavigator.getFiles(fileIndex); + // filenavigator.getFiles(filenavigator.currentindex+1); + } + } + else if (recdat.data[0] == 3) { // Page Up + if (fileIndex >= DISPLAY_FILES) { + fileIndex = fileIndex - DISPLAY_FILES; + // if(filenavigator.folderdepth!=0 && fileIndex!=0) //Shift to acknowledge Return DIR button on first page + // filenavigator.getFiles(filenavigator.currentindex-DISPLAY_FILES); + // else + filenavigator.getFiles(fileIndex); + } + } + else if (recdat.data[0] == 4) { // Page Up + injectCommands(F("M22\nM21")); + } + else if (recdat.data[0] == 0) { // return to main page + show_status = true; + tpShowStatus = false; + } + } + break; + + case VolumeDisplay: { + if (recdat.data[0] == 0) { + dwin_settings.display_volume = 0; + dwin_settings.display_sound = false; + } + else if (recdat.data[0] > 100) { + dwin_settings.display_volume = 255; + dwin_settings.display_sound = true; + } + else { + dwin_settings.display_volume = (uint8_t)map(constrain(recdat.data[0], 0, 100), 0, 100, 0, 255); + dwin_settings.display_sound = true; + } + setTouchScreenConfiguration(); + break; + } + + case DisplayBrightness: { + if (recdat.data[0] < 10) + dwin_settings.screen_brightness = 10; + else if (recdat.data[0] > 100) + dwin_settings.screen_brightness = 100; + else + dwin_settings.screen_brightness = (uint8_t)recdat.data[0]; + setTouchScreenConfiguration(); + break; + } + + case DisplayStandbyBrightness: { + if (recdat.data[0] < 10) + dwin_settings.standby_brightness = 10; + else if (recdat.data[0] > 100) + dwin_settings.standby_brightness = 100; + else + dwin_settings.standby_brightness = (uint8_t)recdat.data[0]; + setTouchScreenConfiguration(); + break; + } + + case DisplayStandbySeconds: { + if (recdat.data[0] < 5) + dwin_settings.standby_time_seconds = 5; + else if (recdat.data[0] > 100) + dwin_settings.standby_time_seconds = 100; + else + dwin_settings.standby_time_seconds = (uint8_t)recdat.data[0]; + setTouchScreenConfiguration(); + break; + } + + case AutolevelVal: { + uint8_t meshPoint = (recdat.addr - AutolevelVal) / 2, + yPnt = floor(meshPoint / GRID_MAX_POINTS_X), + xPnt = meshPoint - (yPnt * GRID_MAX_POINTS_X); + if (yPnt % 2 != 0) xPnt = (GRID_MAX_POINTS_X - 1) - xPnt; // zag row + + float meshVal = float(recdat.data[0] - (recdat.data[0] >= 32768 ? 65536 : 0)) / 1000; + + LIMIT(meshVal, Z_PROBE_LOW_POINT, Z_CLEARANCE_BETWEEN_PROBES); + xy_uint8_t point = { xPnt, yPnt }; + setMeshPoint(point, meshVal); + sendData(meshVal * 1000, recdat.addr); + break; + } + + default: break; + } + + memset(&recdat, 0, sizeof(recdat)); + recdat.head[0] = FHONE; + recdat.head[1] = FHTWO; +} + +void RTS::writeVariable(const uint16_t adr, const void * const values, uint8_t valueslen, const bool isstr/*=false*/, const char fillChar/*=' '*/) { + const char* myvalues = static_cast(values); + bool strend = !myvalues; + DWIN_SERIAL.write(FHONE); + DWIN_SERIAL.write(FHTWO); + DWIN_SERIAL.write(valueslen + 3); + DWIN_SERIAL.write(0x82); + DWIN_SERIAL.write(adr >> 8); + DWIN_SERIAL.write(adr & 0xFF); + while (valueslen--) { + char x; + if (!strend) x = *myvalues++; + if ((isstr && !x) || strend) { + strend = true; + x = fillChar; + } + DWIN_SERIAL.write(x); + } +} + +void RTS::setTouchScreenConfiguration() { + // Main configuration (System_Config) + LIMIT(dwin_settings.screen_brightness, 10, 100); // Prevent a possible all-dark screen + LIMIT(dwin_settings.standby_time_seconds, 10, 655); // Prevent a possible all-dark screen for standby, yet also don't go higher than the DWIN limitation + + uint8_t cfg_bits = (0x0 + | _BV(7) // 7: Enable Control ... TERN0(DWINOS_4, _BV(7)) + | _BV(5) // 5: load 22 touch file + | _BV(4) // 4: auto-upload should always be enabled + | (dwin_settings.display_sound ? _BV(3) : 0) // 3: audio + | (dwin_settings.display_standby ? _BV(2) : 0) // 2: backlight on standby + | (dwin_settings.screen_rotation == 10 ? _BV(1) : 0) // 1 & 0: Inversion + #if LCD_SCREEN_ROTATE == 90 + | _BV(0) // Portrait Mode or 800x480 display has 0 point rotated 90deg from 480x272 display + #elif LCD_SCREEN_ROTATE + #error "Only 90° rotation is supported for the selected LCD." + #endif + ); + + const uint8_t config_set[] = { 0x5A, 0x00, TERN(DWINOS_4, 0x00, 0xFF), cfg_bits }; + writeVariable(0x80 /*System_Config*/, config_set, sizeof(config_set)); + + // Standby brightness (LED_Config) + uint16_t dwinStandbyTimeSeconds = 100 * dwin_settings.standby_time_seconds; /* milliseconds, but divided by 10 (not 5 like the docs say) */ + const uint8_t brightness_set[] = { + dwin_settings.screen_brightness /*% active*/, + dwin_settings.standby_brightness /*% standby*/, + static_cast(dwinStandbyTimeSeconds >> 8), + static_cast(dwinStandbyTimeSeconds) + }; + writeVariable(0x82 /*LED_Config*/, brightness_set, sizeof(brightness_set)); + + if (!dwin_settings.display_sound) { + sendData(0, VolumeIcon); + sendData(9, SoundIcon); + } + else { + sendData((dwin_settings.display_volume + 1) / 32 - 1, VolumeIcon); + sendData(8, SoundIcon); + } + sendData(dwin_settings.display_volume, VolumeIcon - 2); + sendData(dwin_settings.display_volume << 8, SoundAddr + 1); + sendData(map(constrain(dwin_settings.display_volume, 0, 255), 0, 255, 0, 100), VolumeDisplay); + sendData(dwin_settings.screen_brightness, DisplayBrightness); + sendData(dwin_settings.standby_brightness, DisplayStandbyBrightness); + sendData(dwin_settings.standby_time_seconds, DisplayStandbySeconds); + sendData(dwin_settings.display_standby ? 3 : 2, DisplayStandbyEnableIndicator); +} + +#endif // DGUS_LCD_UI_IA_CREALITY diff --git a/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.h b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.h similarity index 92% rename from Marlin/src/lcd/extui/ia_creality/ia_creality_extui.h rename to Marlin/src/lcd/extui/ia_creality/ia_creality_rts.h index af3824e90485..9ec7d7872f96 100644 --- a/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.h +++ b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.h @@ -22,18 +22,18 @@ #pragma once /* **************************************** - * lcd/extui/ia_creality/ia_creality_extui.h + * lcd/extui/ia_creality/ia_creality_rts.h * **************************************** * Extensible_UI implementation for Creality DWIN * 10SPro, Max, CRX, and others - * Based original Creality release, ported to ExtUI for Marlin 2.0 + * Based original Creality release * Written by Insanity Automation, sponsored by Tiny Machines 3D * * ***************************************/ -#include "../ui_api.h" +#include "../../../inc/MarlinConfig.h" -#include +#include /*********************************/ #define FHONE (0x5A) @@ -211,7 +211,7 @@ struct creality_dwin_settings_t { bool display_sound; int8_t screen_rotation; int16_t display_volume; - uint8_t standby_screen_brightness; + uint8_t standby_brightness; uint8_t screen_brightness; int16_t standby_time_seconds; }; @@ -297,3 +297,19 @@ void RTS_Update(); #else #define MEASURING_GCODE MAIN_MENU_ITEM_1_GCODE #endif + +// Data shared by RTS and ExtUI +extern uint16_t fileIndex; +extern uint8_t recordcount; +extern uint8_t startprogress; +extern char waitway; +extern char printerStatusKey[2]; // [0] = 0:ready [1] = 0:keep temperature, 1:heating, 2:cooling, 3:printing +extern bool show_status; +extern bool tpShowStatus; // true: opening time/percentage, false: closing time/percentage +extern uint8_t lastPauseMsgState; +extern creality_dwin_settings_t dwin_settings; +extern bool no_reentry; +#if HAS_PID_HEATING + extern uint16_t pid_hotendAutoTemp; + extern uint16_t pid_bedAutoTemp; +#endif diff --git a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp index be4682f68f1b..71f4166ca89e 100644 --- a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp +++ b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp @@ -137,7 +137,6 @@ void tft_lvgl_init() { #if ENABLED(USB_FLASH_DRIVE_SUPPORT) uint16_t usb_flash_loop = 1000; #if ENABLED(MULTI_VOLUME) && !HAS_SD_HOST_DRIVE - SET_INPUT_PULLUP(SD_DETECT_PIN); if (IS_SD_INSERTED()) card.changeMedia(&card.media_driver_sdcard); else diff --git a/Marlin/src/lcd/extui/nextion/FileNavigator.cpp b/Marlin/src/lcd/extui/nextion/FileNavigator.cpp index 6730370a94e2..c00ccb4e3690 100644 --- a/Marlin/src/lcd/extui/nextion/FileNavigator.cpp +++ b/Marlin/src/lcd/extui/nextion/FileNavigator.cpp @@ -39,18 +39,18 @@ using namespace ExtUI; #define DEBUG_OUT NEXDEBUGLEVEL #include "../../../core/debug_out.h" -FileList FileNavigator::filelist; // Instance of the Marlin file API -char FileNavigator::currentfoldername[MAX_PATH_LEN]; // Current folder path +FileList FileNavigator::filelist; // ExtUI file API +char FileNavigator::currentDirPath[MAX_PATH_LEN]; // Current folder path uint16_t FileNavigator::lastindex; uint8_t FileNavigator::folderdepth; -uint16_t FileNavigator::currentindex; // override the panel request +uint16_t FileNavigator::currentindex; // override the panel request FileNavigator filenavigator; FileNavigator::FileNavigator() { reset(); } void FileNavigator::reset() { - currentfoldername[0] = '\0'; + currentDirPath[0] = '\0'; folderdepth = 0; currentindex = 0; lastindex = 0; @@ -83,51 +83,51 @@ void FileNavigator::getFiles(uint16_t index) { #endif if (currentindex == 0 && folderdepth > 0) { // Add a link to go up a folder - nextion.SendtoTFT(F("vis p0,1")); - nextion.SendtoTFT(F("\xFF\xFF\xFF")); + nextion.tftSend(F("vis p0,1")); + nextion.tftSend(F("\xFF\xFF\xFF")); SEND_VAL("tmpUP", "0"); files--; } else { - nextion.SendtoTFT(F("vis p0,0")); - nextion.SendtoTFT(F("\xFF\xFF\xFF")); + nextion.tftSend(F("vis p0,0")); + nextion.tftSend(F("\xFF\xFF\xFF")); } for (uint16_t seek = currentindex; seek < currentindex + files; seek++) { if (filelist.seek(seek)) { - nextion.SendtoTFT(F("s")); + nextion.tftSend(F("s")); LCD_SERIAL.print(fcnt); - nextion.SendtoTFT(F(".txt=\"")); + nextion.tftSend(F(".txt=\"")); if (filelist.isDir()) { LCD_SERIAL.print(filelist.shortFilename()); - nextion.SendtoTFT(F("/\"")); - nextion.SendtoTFT(F("\xFF\xFF\xFF")); + nextion.tftSend(F("/\"")); + nextion.tftSend(F("\xFF\xFF\xFF")); - nextion.SendtoTFT(F("l")); + nextion.tftSend(F("l")); LCD_SERIAL.print(fcnt); - nextion.SendtoTFT(F(".txt=\"")); + nextion.tftSend(F(".txt=\"")); LCD_SERIAL.print(filelist.filename()); - nextion.SendtoTFT(F("\"")); - nextion.SendtoTFT(F("\xFF\xFF\xFF")); + nextion.tftSend(F("\"")); + nextion.tftSend(F("\xFF\xFF\xFF")); SEND_PCO2("l", fcnt, "1055"); } else { - LCD_SERIAL.print(currentfoldername); + LCD_SERIAL.print(currentDirPath); LCD_SERIAL.print(filelist.shortFilename()); - nextion.SendtoTFT(F("\"")); - nextion.SendtoTFT(F("\xFF\xFF\xFF")); + nextion.tftSend(F("\"")); + nextion.tftSend(F("\xFF\xFF\xFF")); - nextion.SendtoTFT(F("l")); + nextion.tftSend(F("l")); LCD_SERIAL.print(fcnt); - nextion.SendtoTFT(F(".txt=\"")); + nextion.tftSend(F(".txt=\"")); LCD_SERIAL.print(filelist.longFilename()); - nextion.SendtoTFT(F("\"")); - nextion.SendtoTFT(F("\xFF\xFF\xFF")); + nextion.tftSend(F("\"")); + nextion.tftSend(F("\xFF\xFF\xFF")); } fcnt++; fseek = seek; #if NEXDEBUG(AC_FILE) - DEBUG_ECHOLNPGM("-", seek, " '", filelist.longFilename(), "' '", currentfoldername, "", filelist.shortFilename(), "'\n"); + DEBUG_ECHOLNPGM("-", seek, " '", filelist.longFilename(), "' '", currentDirPath, "", filelist.shortFilename(), "'\n"); #endif } } @@ -137,11 +137,11 @@ void FileNavigator::getFiles(uint16_t index) { void FileNavigator::changeDIR(char *folder) { #if NEXDEBUG(AC_FILE) - DEBUG_ECHOLNPGM("currentfolder: ", currentfoldername, " New: ", folder); + DEBUG_ECHOLNPGM("currentfolder: ", currentDirPath, " New: ", folder); #endif if (folderdepth >= MAX_FOLDER_DEPTH) return; // limit the folder depth - strcat(currentfoldername, folder); - strcat(currentfoldername, "/"); + strcat(currentDirPath, folder); + strcat(currentDirPath, "/"); filelist.changeDir(folder); refresh(); folderdepth++; @@ -155,20 +155,20 @@ void FileNavigator::upDIR() { currentindex = 0; // Remove the last child folder from the stored path if (folderdepth == 0) { - currentfoldername[0] = '\0'; + currentDirPath[0] = '\0'; reset(); } else { char *pos = nullptr; for (uint8_t f = 0; f < folderdepth; f++) - pos = strchr(currentfoldername, '/'); + pos = strchr(currentDirPath, '/'); pos[1] = '\0'; } #if NEXDEBUG(AC_FILE) - DEBUG_ECHOLNPGM("depth: ", folderdepth, " currentfoldername: ", currentfoldername); + DEBUG_ECHOLNPGM("depth: ", folderdepth, " currentDirPath: ", currentDirPath); #endif } -char* FileNavigator::getCurrentFolderName() { return currentfoldername; } +char* FileNavigator::getCurrentDirPath() { return currentDirPath; } #endif // NEXTION_TFT diff --git a/Marlin/src/lcd/extui/nextion/FileNavigator.h b/Marlin/src/lcd/extui/nextion/FileNavigator.h index fd29bceadea7..57773fab5e51 100644 --- a/Marlin/src/lcd/extui/nextion/FileNavigator.h +++ b/Marlin/src/lcd/extui/nextion/FileNavigator.h @@ -41,10 +41,10 @@ class FileNavigator { static void upDIR(); static void changeDIR(char *); static void refresh(); - static char* getCurrentFolderName(); + static char* getCurrentDirPath(); private: static FileList filelist; - static char currentfoldername[MAX_PATH_LEN]; + static char currentDirPath[MAX_PATH_LEN]; static uint16_t lastindex; static uint8_t folderdepth; static uint16_t currentindex; diff --git a/Marlin/src/lcd/extui/nextion/nextion_extui.cpp b/Marlin/src/lcd/extui/nextion/nextion_extui.cpp index bf40fe97ac71..da3e344a35aa 100644 --- a/Marlin/src/lcd/extui/nextion/nextion_extui.cpp +++ b/Marlin/src/lcd/extui/nextion/nextion_extui.cpp @@ -35,9 +35,9 @@ namespace ExtUI { - void onStartup() { nextion.Startup(); } - void onIdle() { nextion.IdleLoop(); } - void onPrinterKilled(FSTR_P const error, FSTR_P const component) { nextion.PrinterKilled(error, component); } + void onStartup() { nextion.startup(); } + void onIdle() { nextion.idleLoop(); } + void onPrinterKilled(FSTR_P const error, FSTR_P const component) { nextion.printerKilled(error, component); } void onMediaInserted() {} void onMediaError() {} void onMediaRemoved() {} @@ -46,8 +46,8 @@ namespace ExtUI { void onPrintTimerPaused() {} void onPrintTimerStopped() {} void onFilamentRunout(const extruder_t) {} - void onUserConfirmRequired(const char * const msg) { nextion.ConfirmationRequest(msg); } - void onStatusChanged(const char * const msg) { nextion.StatusChange(msg); } + void onUserConfirmRequired(const char * const msg) { nextion.confirmationRequest(msg); } + void onStatusChanged(const char * const msg) { nextion.statusChange(msg); } void onHomingStart() {} void onHomingDone() {} @@ -117,7 +117,7 @@ namespace ExtUI { #if HAS_PID_HEATING void onPidTuning(const result_t rst) { // Called for temperature PID tuning result - nextion.PanelInfo(37); + nextion.panelInfo(37); } #endif diff --git a/Marlin/src/lcd/extui/nextion/nextion_tft.cpp b/Marlin/src/lcd/extui/nextion/nextion_tft.cpp index 788be5ac651b..15c384808f89 100644 --- a/Marlin/src/lcd/extui/nextion/nextion_tft.cpp +++ b/Marlin/src/lcd/extui/nextion/nextion_tft.cpp @@ -53,7 +53,7 @@ NextionTFT nextion; NextionTFT::NextionTFT() {} -void NextionTFT::Startup() { +void NextionTFT::startup() { selectedfile[0] = '\0'; nextion_command[0] = '\0'; command_len = 0; @@ -76,15 +76,15 @@ void NextionTFT::Startup() { DEBUG_ECHOLNPGM("Nextion Debug Level ", NEXDEBUGLEVEL); } -void NextionTFT::IdleLoop() { - if (ReadTFTCommand()) { - ProcessPanelRequest(); +void NextionTFT::idleLoop() { + if (readTFTCommand()) { + processPanelRequest(); command_len = 0; } UpdateOnChange(); } -void NextionTFT::PrinterKilled(FSTR_P const error, FSTR_P const component) { +void NextionTFT::printerKilled(FSTR_P const error, FSTR_P const component) { SEND_TXT_END("page error"); SEND_TXT_F("t3", F("Error")); SEND_TXT_F("t4", component); @@ -96,21 +96,21 @@ void NextionTFT::PrintFinished() { SEND_TXT_END("page printfinished"); } -void NextionTFT::ConfirmationRequest(const char * const msg) { +void NextionTFT::confirmationRequest(const char * const msg) { SEND_VALasTXT("tmppage.M117", msg); #if NEXDEBUG(N_MARLIN) - DEBUG_ECHOLNPGM("ConfirmationRequest() ", msg, " printer_state:", printer_state); + DEBUG_ECHOLNPGM("confirmationRequest() ", msg, " printer_state:", printer_state); #endif } -void NextionTFT::StatusChange(const char * const msg) { +void NextionTFT::statusChange(const char * const msg) { #if NEXDEBUG(N_MARLIN) - DEBUG_ECHOLNPGM("StatusChange() ", msg, "\nprinter_state:", printer_state); + DEBUG_ECHOLNPGM("statusChange() ", msg, "\nprinter_state:", printer_state); #endif SEND_VALasTXT("tmppage.M117", msg); } -void NextionTFT::SendtoTFT(FSTR_P const fstr/*=nullptr*/) { // A helper to print PROGMEM string to the panel +void NextionTFT::tftSend(FSTR_P const fstr/*=nullptr*/) { // A helper to print PROGMEM string to the panel #if NEXDEBUG(N_SOME) DEBUG_ECHOF(fstr); #endif @@ -118,7 +118,7 @@ void NextionTFT::SendtoTFT(FSTR_P const fstr/*=nullptr*/) { // A helper to print while (const char c = pgm_read_byte(str++)) LCD_SERIAL.write(c); } -bool NextionTFT::ReadTFTCommand() { +bool NextionTFT::readTFTCommand() { bool command_ready = false; while ((LCD_SERIAL.available() > 0) && (command_len < MAX_CMND_LEN)) { nextion_command[command_len] = LCD_SERIAL.read(); @@ -149,15 +149,15 @@ bool NextionTFT::ReadTFTCommand() { return command_ready; } -void NextionTFT::SendFileList(int8_t startindex) { +void NextionTFT::sendFileList(int8_t startindex) { // respond to panel request for 7 files starting at index #if NEXDEBUG(N_INFO) - DEBUG_ECHOLNPGM("## SendFileList ## ", startindex); + DEBUG_ECHOLNPGM("## sendFileList ## ", startindex); #endif filenavigator.getFiles(startindex); } -void NextionTFT::SelectFile() { +void NextionTFT::selectFile() { strncpy(selectedfile, nextion_command + 4, command_len - 4); selectedfile[command_len - 5] = '\0'; #if NEXDEBUG(N_FILE) @@ -169,11 +169,11 @@ void NextionTFT::SelectFile() { break; case '<': // .. (go up folder level) filenavigator.upDIR(); - SendFileList(0); + sendFileList(0); break; default: // enter sub folder filenavigator.changeDIR(selectedfile); - SendFileList(0); + sendFileList(0); break; } } @@ -188,24 +188,24 @@ void NextionTFT::_format_time(char *outstr, uint32_t time) { sprintf_P(outstr, PSTR("%02d:%02ds"), min, sec); } -void NextionTFT::ProcessPanelRequest() { +void NextionTFT::processPanelRequest() { // Break these up into logical blocks as its easier to navigate than one huge switch case! if (nextion_command[0] == 'X') { int8_t req = atoi(&nextion_command[1]); // Information requests if (req <= 49) - PanelInfo(req); + panelInfo(req); // Simple Actions else if (req >= 50) - PanelAction(req); + panelAction(req); } } #define SEND_NA(A) SEND_TXT(A, "n/a") -void NextionTFT::PanelInfo(uint8_t req) { +void NextionTFT::panelInfo(uint8_t req) { switch (req) { case 0: break; @@ -216,7 +216,7 @@ void NextionTFT::PanelInfo(uint8_t req) { //SEND_TXT("tmppage.M117", msg_no_sd_card); } else if (nextion_command[3] == 'S') - SendFileList(atoi(&nextion_command[4])); + sendFileList(atoi(&nextion_command[4])); } break; @@ -488,7 +488,7 @@ void NextionTFT::PanelInfo(uint8_t req) { } } -void NextionTFT::PanelAction(uint8_t req) { +void NextionTFT::panelAction(uint8_t req) { switch (req) { case 50: // Pause SD print @@ -512,7 +512,7 @@ void NextionTFT::PanelAction(uint8_t req) { break; case 54: // A13 Select file - SelectFile(); + selectFile(); break; case 65: // Cool Down diff --git a/Marlin/src/lcd/extui/nextion/nextion_tft.h b/Marlin/src/lcd/extui/nextion/nextion_tft.h index 806630485cd2..9e085b0f7219 100644 --- a/Marlin/src/lcd/extui/nextion/nextion_tft.h +++ b/Marlin/src/lcd/extui/nextion/nextion_tft.h @@ -40,23 +40,23 @@ class NextionTFT { public: NextionTFT(); - static void Startup(); - static void IdleLoop(); - static void PrinterKilled(FSTR_P const, FSTR_P const); - static void ConfirmationRequest(const char * const); - static void StatusChange(const char * const); - static void SendtoTFT(FSTR_P const=nullptr); - //static void SendtoTFTLN(FSTR_P const=nullptr); + static void startup(); + static void idleLoop(); + static void printerKilled(FSTR_P const, FSTR_P const); + static void confirmationRequest(const char * const); + static void statusChange(const char * const); + static void tftSend(FSTR_P const=nullptr); + //static void tftSendLn(FSTR_P const=nullptr); static void UpdateOnChange(); static void PrintFinished(); - static void PanelInfo(uint8_t); + static void panelInfo(uint8_t); private: - static bool ReadTFTCommand(); - static void SendFileList(int8_t); - static void SelectFile(); - static void ProcessPanelRequest(); - static void PanelAction(uint8_t); + static bool readTFTCommand(); + static void sendFileList(int8_t); + static void selectFile(); + static void processPanelRequest(); + static void panelAction(uint8_t); static void _format_time(char *, uint32_t); }; diff --git a/Marlin/src/lcd/extui/nextion/nextion_tft_defs.h b/Marlin/src/lcd/extui/nextion/nextion_tft_defs.h index cdd91bf2a3c9..061d29559c0a 100644 --- a/Marlin/src/lcd/extui/nextion/nextion_tft_defs.h +++ b/Marlin/src/lcd/extui/nextion/nextion_tft_defs.h @@ -54,10 +54,10 @@ // TFT panel commands #define msg_welcome MACHINE_NAME " Ready." -#define SEND_TEMP(x,y,t,z) (nextion.SendtoTFT(F(x)), nextion.SendtoTFT(F(".txt=\"")), LCD_SERIAL.print(y), nextion.SendtoTFT(F(t)), LCD_SERIAL.print(z), nextion.SendtoTFT(F("\"\xFF\xFF\xFF"))) -#define SEND_VAL(x,y) (nextion.SendtoTFT(F(x)), nextion.SendtoTFT(F(".val=")), LCD_SERIAL.print(y), nextion.SendtoTFT(F("\xFF\xFF\xFF"))) -#define SEND_TXT(x,y) (nextion.SendtoTFT(F(x)), nextion.SendtoTFT(F(".txt=\"")), nextion.SendtoTFT(F(y)), nextion.SendtoTFT(F("\"\xFF\xFF\xFF"))) -#define SEND_TXT_F(x,y) (nextion.SendtoTFT(F(x)), nextion.SendtoTFT(F(".txt=\"")), nextion.SendtoTFT(y), nextion.SendtoTFT(F("\"\xFF\xFF\xFF"))) -#define SEND_VALasTXT(x,y) (nextion.SendtoTFT(F(x)), nextion.SendtoTFT(F(".txt=\"")), LCD_SERIAL.print(y), nextion.SendtoTFT(F("\"\xFF\xFF\xFF"))) -#define SEND_TXT_END(x) (nextion.SendtoTFT(F(x)), nextion.SendtoTFT(F("\xFF\xFF\xFF"))) -#define SEND_PCO2(x,y,z) (nextion.SendtoTFT(F(x)), LCD_SERIAL.print(y), nextion.SendtoTFT(F(".pco=")), nextion.SendtoTFT(F(z)), nextion.SendtoTFT(F("\xFF\xFF\xFF"))) +#define SEND_TEMP(x,y,t,z) (nextion.tftSend(F(x)), nextion.tftSend(F(".txt=\"")), LCD_SERIAL.print(y), nextion.tftSend(F(t)), LCD_SERIAL.print(z), nextion.tftSend(F("\"\xFF\xFF\xFF"))) +#define SEND_VAL(x,y) (nextion.tftSend(F(x)), nextion.tftSend(F(".val=")), LCD_SERIAL.print(y), nextion.tftSend(F("\xFF\xFF\xFF"))) +#define SEND_TXT(x,y) (nextion.tftSend(F(x)), nextion.tftSend(F(".txt=\"")), nextion.tftSend(F(y)), nextion.tftSend(F("\"\xFF\xFF\xFF"))) +#define SEND_TXT_F(x,y) (nextion.tftSend(F(x)), nextion.tftSend(F(".txt=\"")), nextion.tftSend(y), nextion.tftSend(F("\"\xFF\xFF\xFF"))) +#define SEND_VALasTXT(x,y) (nextion.tftSend(F(x)), nextion.tftSend(F(".txt=\"")), LCD_SERIAL.print(y), nextion.tftSend(F("\"\xFF\xFF\xFF"))) +#define SEND_TXT_END(x) (nextion.tftSend(F(x)), nextion.tftSend(F("\xFF\xFF\xFF"))) +#define SEND_PCO2(x,y,z) (nextion.tftSend(F(x)), LCD_SERIAL.print(y), nextion.tftSend(F(".pco=")), nextion.tftSend(F(z)), nextion.tftSend(F("\xFF\xFF\xFF"))) diff --git a/Marlin/src/lcd/language/language_en.h b/Marlin/src/lcd/language/language_en.h index 568ad49df0b1..f74e24e93a1c 100644 --- a/Marlin/src/lcd/language/language_en.h +++ b/Marlin/src/lcd/language/language_en.h @@ -748,9 +748,9 @@ namespace Language_en { LSTR MSG_MMU2_EJECT_FILAMENT = _UxGT("MMU Eject"); LSTR MSG_MMU2_EJECT_FILAMENT_N = _UxGT("MMU Eject ~"); LSTR MSG_MMU2_UNLOAD_FILAMENT = _UxGT("MMU Unload"); - LSTR MSG_MMU2_LOADING_FILAMENT = _UxGT("Loading Fil. %i..."); - LSTR MSG_MMU2_EJECTING_FILAMENT = _UxGT("Ejecting Fil. ..."); - LSTR MSG_MMU2_UNLOADING_FILAMENT = _UxGT("Unloading Fil...."); + LSTR MSG_MMU2_LOADING_FILAMENT = _UxGT("Filament %i Load..."); + LSTR MSG_MMU2_EJECTING_FILAMENT = _UxGT("Filament Eject..."); + LSTR MSG_MMU2_UNLOADING_FILAMENT = _UxGT("Filament Unload..."); LSTR MSG_MMU2_ALL = _UxGT("All"); LSTR MSG_MMU2_FILAMENT_N = _UxGT("Filament ~"); LSTR MSG_MMU2_RESET = _UxGT("Reset MMU"); From 317450af3226cc4a1647404cbe31a6ab82cc318e Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 24 May 2023 02:53:12 -0500 Subject: [PATCH 212/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Upd?= =?UTF-8?q?ated=20toolchain=20for=20ststm32@~14.1.0=20(#25846)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ini/stm32f4.ini | 1 + ini/stm32g0.ini | 20 +++++++++++--------- ini/stm32h7.ini | 26 +++++++++++++------------- 3 files changed, 25 insertions(+), 22 deletions(-) diff --git a/ini/stm32f4.ini b/ini/stm32f4.ini index 2889a88863cd..34a5c4d607bd 100644 --- a/ini/stm32f4.ini +++ b/ini/stm32f4.ini @@ -733,6 +733,7 @@ upload_protocol = stlink extends = stm32_variant platform = ststm32@~14.1.0 platform_packages = framework-arduinoststm32@https://github.com/stm32duino/Arduino_Core_STM32/archive/main.zip + toolchain-gccarmnoneeabi@1.100301.220327 board = marlin_STM32F401RC board_build.offset = 0x4000 board_upload.offset_address = 0x08004000 diff --git a/ini/stm32g0.ini b/ini/stm32g0.ini index 17403292b70b..f67002fa5c3c 100644 --- a/ini/stm32g0.ini +++ b/ini/stm32g0.ini @@ -49,14 +49,15 @@ upload_command = dfu-util -a 0 -s 0x08000000:leave -D "$SOURCE" extends = stm32_variant platform = ststm32@~14.1.0 platform_packages = framework-arduinoststm32@https://github.com/stm32duino/Arduino_Core_STM32/archive/main.zip + toolchain-gccarmnoneeabi@1.100301.220327 board = marlin_STM32G0B1RE board_build.offset = 0x2000 board_upload.offset_address = 0x08002000 build_flags = ${stm32_variant.build_flags} - -DPIN_SERIAL4_RX=PC_11 -DPIN_SERIAL4_TX=PC_10 - -DSERIAL_RX_BUFFER_SIZE=1024 -DSERIAL_TX_BUFFER_SIZE=1024 - -DTIMER_SERVO=TIM3 -DTIMER_TONE=TIM4 - -DSTEP_TIMER_IRQ_PRIO=0 + -DPIN_SERIAL4_RX=PC_11 -DPIN_SERIAL4_TX=PC_10 + -DSERIAL_RX_BUFFER_SIZE=1024 -DSERIAL_TX_BUFFER_SIZE=1024 + -DTIMER_SERVO=TIM3 -DTIMER_TONE=TIM4 + -DSTEP_TIMER_IRQ_PRIO=0 upload_protocol = stlink debug_tool = stlink @@ -103,15 +104,16 @@ upload_protocol = custom extends = stm32_variant platform = ststm32@~14.1.0 platform_packages = framework-arduinoststm32@https://github.com/stm32duino/Arduino_Core_STM32/archive/main.zip + toolchain-gccarmnoneeabi@1.100301.220327 board = marlin_STM32G0B1VE board_build.offset = 0x2000 board_upload.offset_address = 0x08002000 build_flags = ${stm32_variant.build_flags} - -DPIN_SERIAL4_RX=PE_9 -DPIN_SERIAL4_TX=PE_8 - -DPIN_SERIAL5_RX=PE_11 -DPIN_SERIAL5_TX=PE_10 - -DSERIAL_RX_BUFFER_SIZE=1024 -DSERIAL_TX_BUFFER_SIZE=1024 - -DTIMER_SERVO=TIM3 -DTIMER_TONE=TIM4 - -DSTEP_TIMER_IRQ_PRIO=0 + -DPIN_SERIAL4_RX=PE_9 -DPIN_SERIAL4_TX=PE_8 + -DPIN_SERIAL5_RX=PE_11 -DPIN_SERIAL5_TX=PE_10 + -DSERIAL_RX_BUFFER_SIZE=1024 -DSERIAL_TX_BUFFER_SIZE=1024 + -DTIMER_SERVO=TIM3 -DTIMER_TONE=TIM4 + -DSTEP_TIMER_IRQ_PRIO=0 upload_protocol = stlink debug_tool = stlink diff --git a/ini/stm32h7.ini b/ini/stm32h7.ini index 5733d35bf0fd..e7617b1c965d 100644 --- a/ini/stm32h7.ini +++ b/ini/stm32h7.ini @@ -50,9 +50,9 @@ board = marlin_STM32H743Vx board_build.offset = 0x20000 board_upload.offset_address = 0x08020000 build_flags = ${stm32_variant.build_flags} - -DPIN_SERIAL1_RX=PA_10 -DPIN_SERIAL1_TX=PA_9 - -DPIN_SERIAL3_RX=PD_9 -DPIN_SERIAL3_TX=PD_8 - -DPIN_SERIAL4_RX=PA_1 -DPIN_SERIAL4_TX=PA_0 + -DPIN_SERIAL1_TX=PA_9 -DPIN_SERIAL1_RX=PA_10 + -DPIN_SERIAL3_TX=PD_8 -DPIN_SERIAL3_RX=PD_9 + -DPIN_SERIAL4_TX=PA_0 -DPIN_SERIAL4_RX=PA_1 -DSERIAL_RX_BUFFER_SIZE=1024 -DSERIAL_TX_BUFFER_SIZE=1024 -DTIMER_SERVO=TIM5 -DTIMER_TONE=TIM2 -DSTEP_TIMER_IRQ_PRIO=0 @@ -72,11 +72,11 @@ board = marlin_STM32H723Vx board_build.offset = 0x20000 board_upload.offset_address = 0x08020000 build_flags = ${stm32_variant.build_flags} - -DPIN_SERIAL1_RX=PA_10 -DPIN_SERIAL1_TX=PA_9 - -DPIN_SERIAL2_RX=PD_6 -DPIN_SERIAL2_TX=PD_5 - -DPIN_SERIAL3_RX=PD_9 -DPIN_SERIAL3_TX=PD_8 - -DPIN_SERIAL4_RX=PA_1 -DPIN_SERIAL4_TX=PA_0 - -DPIN_SERIAL7_RX=PE_7 -DPIN_SERIAL7_TX=PE_8 + -DPIN_SERIAL1_TX=PA_9 -DPIN_SERIAL1_RX=PA_10 + -DPIN_SERIAL2_TX=PD_5 -DPIN_SERIAL2_RX=PD_6 + -DPIN_SERIAL3_TX=PD_8 -DPIN_SERIAL3_RX=PD_9 + -DPIN_SERIAL4_TX=PA_0 -DPIN_SERIAL4_RX=PA_1 + -DPIN_SERIAL7_TX=PE_8 -DPIN_SERIAL7_RX=PE_7 -DSERIAL_RX_BUFFER_SIZE=1024 -DSERIAL_TX_BUFFER_SIZE=1024 -DTIMER_SERVO=TIM5 -DTIMER_TONE=TIM2 -DSTEP_TIMER_IRQ_PRIO=0 @@ -98,11 +98,11 @@ board = marlin_STM32H723Zx board_build.offset = 0x20000 board_upload.offset_address = 0x08020000 build_flags = ${stm32_variant.build_flags} - -DPIN_SERIAL1_RX=PA_10 -DPIN_SERIAL1_TX=PA_9 - -DPIN_SERIAL2_RX=PD_6 -DPIN_SERIAL2_TX=PD_5 - -DPIN_SERIAL3_RX=PD_9 -DPIN_SERIAL3_TX=PD_8 - -DPIN_SERIAL4_RX=PA_1 -DPIN_SERIAL4_TX=PA_0 - -DPIN_SERIAL7_RX=PE_7 -DPIN_SERIAL7_TX=PE_8 + -DPIN_SERIAL1_TX=PA_9 -DPIN_SERIAL1_RX=PA_10 + -DPIN_SERIAL2_TX=PD_5 -DPIN_SERIAL2_RX=PD_6 + -DPIN_SERIAL3_TX=PD_8 -DPIN_SERIAL3_RX=PD_9 + -DPIN_SERIAL4_TX=PA_0 -DPIN_SERIAL4_RX=PA_1 + -DPIN_SERIAL7_TX=PE_8 -DPIN_SERIAL7_RX=PE_7 -DSERIAL_RX_BUFFER_SIZE=1024 -DSERIAL_TX_BUFFER_SIZE=1024 -DTIMER_SERVO=TIM5 -DTIMER_TONE=TIM2 -DSTEP_TIMER_IRQ_PRIO=0 From eb439b93a57ca6676c02635f6395fd9e733d0afe Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Wed, 24 May 2023 19:58:11 +1200 Subject: [PATCH 213/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20ESP32=20compile=20?= =?UTF-8?q?error=20(#25873)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/bedlevel/hilbert_curve.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/feature/bedlevel/hilbert_curve.cpp b/Marlin/src/feature/bedlevel/hilbert_curve.cpp index 7474123e3fe1..57cbdfb34ddd 100644 --- a/Marlin/src/feature/bedlevel/hilbert_curve.cpp +++ b/Marlin/src/feature/bedlevel/hilbert_curve.cpp @@ -28,8 +28,8 @@ constexpr int8_t to_fix(int8_t v) { return v * 2; } constexpr int8_t to_int(int8_t v) { return v / 2; } -constexpr uint8_t log2(uint8_t n) { return (n > 1) ? 1 + log2(n >> 1) : 0; } -constexpr uint8_t order(uint8_t n) { return uint8_t(log2(n - 1)) + 1; } +constexpr uint8_t log2(uint8_t n) { return (n > 1) ? 1 + log2(uint8_t(n >> 1)) : 0; } +constexpr uint8_t order(uint8_t n) { return uint8_t(log2(uint8_t(n - 1))) + 1; } constexpr uint8_t ord = order(_MAX(GRID_MAX_POINTS_X, GRID_MAX_POINTS_Y)); constexpr uint8_t dim = _BV(ord); From e2a724990762dab554ce5bab092327eb604d3d83 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 25 May 2023 00:20:08 +0000 Subject: [PATCH 214/427] [cron] Bump distribution date (2023-05-25) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 5b26bfa8ab4f..4a4d91378139 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-24" +//#define STRING_DISTRIBUTION_DATE "2023-05-25" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 2864463068ae..be7fa433757e 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-24" + #define STRING_DISTRIBUTION_DATE "2023-05-25" #endif /** From 1a4e208c6901cf3727940e98f12748aa14a52f5d Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 24 May 2023 21:22:54 -0500 Subject: [PATCH 215/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20card.ls=20call=20(?= =?UTF-8?q?in=20easythreed=5Fui)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix regression in #24679 --- Marlin/src/sd/SdBaseFile.cpp | 4 ++-- Marlin/src/sd/SdBaseFile.h | 2 +- Marlin/src/sd/cardreader.cpp | 2 +- Marlin/src/sd/cardreader.h | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Marlin/src/sd/SdBaseFile.cpp b/Marlin/src/sd/SdBaseFile.cpp index cf403d4b3aae..98cbe9ba9d1c 100644 --- a/Marlin/src/sd/SdBaseFile.cpp +++ b/Marlin/src/sd/SdBaseFile.cpp @@ -322,12 +322,12 @@ void SdBaseFile::getpos(filepos_t * const pos) { * \param[in] indent Amount of space before file name. Used for recursive * list to indicate subdirectory level. */ -void SdBaseFile::ls(uint8_t flags, uint8_t indent) { +void SdBaseFile::ls(const uint8_t flags/*=0*/, const uint8_t indent/*=0*/) { rewind(); int8_t status; while ((status = lsPrintNext(flags, indent))) { if (status > 1 && (flags & LS_R)) { - uint16_t index = curPosition() / 32 - 1; + const uint16_t index = curPosition() / 32 - 1; SdBaseFile s; if (s.open(this, index, O_READ)) s.ls(flags, indent + 2); seekSet(32 * (index + 1)); diff --git a/Marlin/src/sd/SdBaseFile.h b/Marlin/src/sd/SdBaseFile.h index 3ac23138b154..b806a3cd7021 100644 --- a/Marlin/src/sd/SdBaseFile.h +++ b/Marlin/src/sd/SdBaseFile.h @@ -283,7 +283,7 @@ class SdBaseFile { bool isRoot() const { return type_ == FAT_FILE_TYPE_ROOT_FIXED || type_ == FAT_FILE_TYPE_ROOT32; } bool getDosName(char * const name); - void ls(uint8_t flags=0, uint8_t indent=0); + void ls(const uint8_t flags=0, const uint8_t indent=0); bool mkdir(SdBaseFile *parent, const char *path, const bool pFlag=true); bool open(SdBaseFile * const dirFile, uint16_t index, const uint8_t oflag); diff --git a/Marlin/src/sd/cardreader.cpp b/Marlin/src/sd/cardreader.cpp index cd3d1d2cd603..a4a10b316986 100644 --- a/Marlin/src/sd/cardreader.cpp +++ b/Marlin/src/sd/cardreader.cpp @@ -353,7 +353,7 @@ void CardReader::printListing(MediaFile parent, const char * const prepend, cons // // List all files on the SD card // -void CardReader::ls(const uint8_t lsflags) { +void CardReader::ls(const uint8_t lsflags/*=0*/) { if (flag.mounted) { root.rewind(); printListing(root, nullptr, lsflags); diff --git a/Marlin/src/sd/cardreader.h b/Marlin/src/sd/cardreader.h index 4baaa73e1a4a..832d79efe4ee 100644 --- a/Marlin/src/sd/cardreader.h +++ b/Marlin/src/sd/cardreader.h @@ -209,7 +209,7 @@ class CardReader { } #endif - static void ls(const uint8_t lsflags); + static void ls(const uint8_t lsflags=0); #if ENABLED(POWER_LOSS_RECOVERY) static bool jobRecoverFileExists(); From 772e19aab988b5d6466bdf2e8948c8c7eee3cafd Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 24 May 2023 22:10:40 -0500 Subject: [PATCH 216/427] =?UTF-8?q?=E2=9C=A8=20EP=5FBABYSTEPPING=20(#25869?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 7 +- Marlin/src/MarlinCore.cpp | 9 ++ Marlin/src/feature/babystep.cpp | 12 +- Marlin/src/feature/babystep.h | 19 ++++ Marlin/src/feature/e_parser.cpp | 185 ++++++++++++++++++++++++++++++- Marlin/src/feature/e_parser.h | 165 +-------------------------- Marlin/src/gcode/gcode.cpp | 4 + Marlin/src/gcode/gcode.h | 4 + Marlin/src/gcode/host/M115.cpp | 6 + Marlin/src/gcode/motion/M290.cpp | 6 + Marlin/src/inc/Warnings.cpp | 7 ++ Marlin/src/lcd/menu/menu.h | 11 -- Marlin/src/module/planner.h | 12 ++ buildroot/tests/LPC1768 | 2 +- buildroot/tests/mega2560 | 2 +- ini/native.ini | 2 +- 16 files changed, 273 insertions(+), 180 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index c66745d8bf55..a635e4a3022c 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -1543,7 +1543,7 @@ */ #define SHOW_BOOTSCREEN // Show the Marlin bootscreen on startup. ** ENABLE FOR PRODUCTION ** #if ENABLED(SHOW_BOOTSCREEN) - #define BOOTSCREEN_TIMEOUT 4000 // (ms) Total Duration to display the boot screen(s) + #define BOOTSCREEN_TIMEOUT 3000 // (ms) Total Duration to display the boot screen(s) #if EITHER(HAS_MARLINUI_U8GLIB, TFT_COLOR_UI) #define BOOT_MARLIN_LOGO_SMALL // Show a smaller Marlin logo on the Boot Screen (saving lots of flash) #endif @@ -2190,9 +2190,10 @@ */ //#define BABYSTEPPING #if ENABLED(BABYSTEPPING) - //#define INTEGRATED_BABYSTEPPING // EXPERIMENTAL integration of babystepping into the Stepper ISR + //#define INTEGRATED_BABYSTEPPING // Integration of babystepping into the Stepper ISR + //#define EP_BABYSTEPPING // M293/M294 babystepping with EMERGENCY_PARSER support //#define BABYSTEP_WITHOUT_HOMING - //#define BABYSTEP_ALWAYS_AVAILABLE // Allow babystepping at all times (not just during movement). + //#define BABYSTEP_ALWAYS_AVAILABLE // Allow babystepping at all times (not just during movement) //#define BABYSTEP_XY // Also enable X/Y Babystepping. Not supported on DELTA! //#define BABYSTEP_INVERT_Z // Enable if Z babysteps should go the other way //#define BABYSTEP_MILLIMETER_UNITS // Specify BABYSTEP_MULTIPLICATOR_(XY|Z) in mm instead of micro-steps diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index 08c69aa5b7c6..f1d43e7b6093 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -726,6 +726,10 @@ inline void manage_inactivity(const bool no_stepper_sleep=false) { #endif } +#if BOTH(EP_BABYSTEPPING, EMERGENCY_PARSER) + #include "feature/babystep.h" +#endif + /** * Standard idle routine keeps the machine alive: * - Core Marlin activities @@ -848,6 +852,11 @@ void idle(const bool no_stepper_sleep/*=false*/) { // Handle Joystick jogging TERN_(POLL_JOG, joystick.inject_jog_moves()); + // Async Babystepping via the Emergency Parser + #if BOTH(EP_BABYSTEPPING, EMERGENCY_PARSER) + babystep.do_ep_steps(); + #endif + // Direct Stepping TERN_(DIRECT_STEPPING, page_manager.write_responses()); diff --git a/Marlin/src/feature/babystep.cpp b/Marlin/src/feature/babystep.cpp index 2e3d6a9fd20b..c8c1d42f886b 100644 --- a/Marlin/src/feature/babystep.cpp +++ b/Marlin/src/feature/babystep.cpp @@ -26,7 +26,7 @@ #include "babystep.h" #include "../MarlinCore.h" -#include "../module/motion.h" // for axes_should_home() +#include "../module/motion.h" // for axes_should_home(), BABYSTEP_ALLOWED #include "../module/planner.h" // for axis_steps_per_mm[] #include "../module/stepper.h" @@ -42,6 +42,10 @@ volatile int16_t Babystep::steps[BS_AXIS_IND(Z_AXIS) + 1]; #endif int16_t Babystep::accum; +#if BOTH(EP_BABYSTEPPING, EMERGENCY_PARSER) + int16_t Babystep::ep_babysteps; +#endif + void Babystep::step_axis(const AxisEnum axis) { const int16_t curTodo = steps[BS_AXIS_IND(axis)]; // get rid of volatile for performance if (curTodo) { @@ -76,4 +80,10 @@ void Babystep::add_steps(const AxisEnum axis, const int16_t distance) { TERN_(INTEGRATED_BABYSTEPPING, if (has_steps()) stepper.initiateBabystepping()); } +#if ENABLED(EP_BABYSTEPPING) + // Step Z for M293 / M294 + void Babystep::z_up() { if (BABYSTEP_ALLOWED()) add_steps(Z_AXIS, +BABYSTEP_SIZE_Z); } + void Babystep::z_down() { if (BABYSTEP_ALLOWED()) add_steps(Z_AXIS, -BABYSTEP_SIZE_Z); } +#endif + #endif // BABYSTEPPING diff --git a/Marlin/src/feature/babystep.h b/Marlin/src/feature/babystep.h index bbf0c5a26060..1e319ec5446d 100644 --- a/Marlin/src/feature/babystep.h +++ b/Marlin/src/feature/babystep.h @@ -52,6 +52,10 @@ class Babystep { static volatile int16_t steps[BS_AXIS_IND(Z_AXIS) + 1]; static int16_t accum; // Total babysteps in current edit + #if BOTH(EP_BABYSTEPPING, EMERGENCY_PARSER) + static int16_t ep_babysteps; + #endif + #if ENABLED(BABYSTEP_DISPLAY_TOTAL) static int16_t axis_total[BS_TOTAL_IND(Z_AXIS) + 1]; // Total babysteps since G28 static void reset_total(const AxisEnum axis) { @@ -63,6 +67,21 @@ class Babystep { static void add_steps(const AxisEnum axis, const int16_t distance); static void add_mm(const AxisEnum axis, const_float_t mm); + #if ENABLED(EP_BABYSTEPPING) + // Step Z for M293 / M294 + static void z_up(); + static void z_down(); + #if ENABLED(EMERGENCY_PARSER) + // Step Z according to steps accumulated by the EP + FORCE_INLINE static void do_ep_steps() { + if (ep_babysteps) { + if (ep_babysteps > 0) { z_up(); ep_babysteps--; } + else { z_down(); ep_babysteps++; } + } + } + #endif + #endif // EP_BABYSTEPPING + #if ENABLED(BD_SENSOR) static void set_mm(const AxisEnum axis, const_float_t mm); #endif diff --git a/Marlin/src/feature/e_parser.cpp b/Marlin/src/feature/e_parser.cpp index b50a12d1af18..da193ed30aba 100644 --- a/Marlin/src/feature/e_parser.cpp +++ b/Marlin/src/feature/e_parser.cpp @@ -24,7 +24,7 @@ * e_parser.cpp - Intercept special commands directly in the serial stream */ -#include "../inc/MarlinConfigPre.h" +#include "../inc/MarlinConfig.h" #if ENABLED(EMERGENCY_PARSER) @@ -39,10 +39,193 @@ bool EmergencyParser::killed_by_M112, // = false EmergencyParser::enabled; #if ENABLED(HOST_PROMPT_SUPPORT) + #include "host_actions.h" uint8_t EmergencyParser::M876_reason; // = 0 #endif // Global instance EmergencyParser emergency_parser; +// External references +extern bool wait_for_user, wait_for_heatup; + +#if ENABLED(EP_BABYSTEPPING) + #include "babystep.h" +#endif + +#if ENABLED(REALTIME_REPORTING_COMMANDS) + // From motion.h, which cannot be included here + void report_current_position_moving(); + void quickpause_stepper(); + void quickresume_stepper(); +#endif + +void EmergencyParser::update(EmergencyParser::State &state, const uint8_t c) { + switch (state) { + case EP_RESET: + switch (c) { + case ' ': case '\n': case '\r': break; + case 'N': state = EP_N; break; + case 'M': state = EP_M; break; + #if ENABLED(REALTIME_REPORTING_COMMANDS) + case 'S': state = EP_S; break; + case 'P': state = EP_P; break; + case 'R': state = EP_R; break; + #endif + #if ENABLED(SOFT_RESET_VIA_SERIAL) + case '^': state = EP_ctrl; break; + case 'K': state = EP_K; break; + #endif + default: state = EP_IGNORE; + } + break; + + case EP_N: + switch (c) { + case '0' ... '9': + case '-': case ' ': break; + case 'M': state = EP_M; break; + #if ENABLED(REALTIME_REPORTING_COMMANDS) + case 'S': state = EP_S; break; + case 'P': state = EP_P; break; + case 'R': state = EP_R; break; + #endif + default: state = EP_IGNORE; + } + break; + + #if ENABLED(REALTIME_REPORTING_COMMANDS) + case EP_S: state = (c == '0') ? EP_S0 : EP_IGNORE; break; + case EP_S0: state = (c == '0') ? EP_S00 : EP_IGNORE; break; + case EP_S00: state = (c == '0') ? EP_GRBL_STATUS : EP_IGNORE; break; + + case EP_R: state = (c == '0') ? EP_R0 : EP_IGNORE; break; + case EP_R0: state = (c == '0') ? EP_R00 : EP_IGNORE; break; + case EP_R00: state = (c == '0') ? EP_GRBL_RESUME : EP_IGNORE; break; + + case EP_P: state = (c == '0') ? EP_P0 : EP_IGNORE; break; + case EP_P0: state = (c == '0') ? EP_P00 : EP_IGNORE; break; + case EP_P00: state = (c == '0') ? EP_GRBL_PAUSE : EP_IGNORE; break; + #endif + + #if ENABLED(SOFT_RESET_VIA_SERIAL) + case EP_ctrl: state = (c == 'X') ? EP_KILL : EP_IGNORE; break; + case EP_K: state = (c == 'I') ? EP_KI : EP_IGNORE; break; + case EP_KI: state = (c == 'L') ? EP_KIL : EP_IGNORE; break; + case EP_KIL: state = (c == 'L') ? EP_KILL : EP_IGNORE; break; + #endif + + case EP_M: + switch (c) { + case ' ': break; + case '1': state = EP_M1; break; + #if ENABLED(EP_BABYSTEPPING) + case '2': state = EP_M2; break; + #endif + case '4': state = EP_M4; break; + #if HAS_MEDIA + case '5': state = EP_M5; break; + #endif + #if ENABLED(HOST_PROMPT_SUPPORT) + case '8': state = EP_M8; break; + #endif + default: state = EP_IGNORE; + } + break; + + case EP_M1: + switch (c) { + case '0': state = EP_M10; break; + case '1': state = EP_M11; break; + default: state = EP_IGNORE; + } + break; + + case EP_M10: state = (c == '8') ? EP_M108 : EP_IGNORE; break; + case EP_M11: state = (c == '2') ? EP_M112 : EP_IGNORE; break; + case EP_M4: state = (c == '1') ? EP_M41 : EP_IGNORE; break; + case EP_M41: state = (c == '0') ? EP_M410 : EP_IGNORE; break; + + #if HAS_MEDIA + case EP_M5: state = (c == '2') ? EP_M52 : EP_IGNORE; break; + case EP_M52: state = (c == '4') ? EP_M524 : EP_IGNORE; break; + #endif + + #if ENABLED(EP_BABYSTEPPING) + case EP_M2: + switch (c) { + case '9': state = EP_M29; break; + default: state = EP_IGNORE; + } + break; + + case EP_M29: + switch (c) { + case '3': state = EP_M293; break; + case '4': state = EP_M294; break; + default: state = EP_IGNORE; + } + break; + #endif + + #if ENABLED(HOST_PROMPT_SUPPORT) + + case EP_M8: state = (c == '7') ? EP_M87 : EP_IGNORE; break; + case EP_M87: state = (c == '6') ? EP_M876 : EP_IGNORE; break; + + case EP_M876: + switch (c) { + case ' ': break; + case 'S': state = EP_M876S; break; + default: state = EP_IGNORE; break; + } + break; + + case EP_M876S: + switch (c) { + case ' ': break; + case '0' ... '9': + state = EP_M876SN; + M876_reason = uint8_t(c - '0'); + break; + } + break; + + #endif + + case EP_IGNORE: + if (ISEOL(c)) state = EP_RESET; + break; + + default: + if (ISEOL(c)) { + if (enabled) switch (state) { + case EP_M108: wait_for_user = wait_for_heatup = false; break; + case EP_M112: killed_by_M112 = true; break; + case EP_M410: quickstop_by_M410 = true; break; + #if ENABLED(EP_BABYSTEPPING) + case EP_M293: babystep.ep_babysteps++; break; + case EP_M294: babystep.ep_babysteps--; break; + #endif + #if HAS_MEDIA + case EP_M524: sd_abort_by_M524 = true; break; + #endif + #if ENABLED(HOST_PROMPT_SUPPORT) + case EP_M876SN: hostui.handle_response(M876_reason); break; + #endif + #if ENABLED(REALTIME_REPORTING_COMMANDS) + case EP_GRBL_STATUS: report_current_position_moving(); break; + case EP_GRBL_PAUSE: quickpause_stepper(); break; + case EP_GRBL_RESUME: quickresume_stepper(); break; + #endif + #if ENABLED(SOFT_RESET_VIA_SERIAL) + case EP_KILL: hal.reboot(); break; + #endif + default: break; + } + state = EP_RESET; + } + } +} + #endif // EMERGENCY_PARSER diff --git a/Marlin/src/feature/e_parser.h b/Marlin/src/feature/e_parser.h index df4456d8d3ca..8dacb0581c12 100644 --- a/Marlin/src/feature/e_parser.h +++ b/Marlin/src/feature/e_parser.h @@ -27,24 +27,6 @@ #include "../inc/MarlinConfigPre.h" -#if ENABLED(HOST_PROMPT_SUPPORT) - #include "host_actions.h" -#endif - -// External references -extern bool wait_for_user, wait_for_heatup; - -#if ENABLED(REALTIME_REPORTING_COMMANDS) - // From motion.h, which cannot be included here - void report_current_position_moving(); - void quickpause_stepper(); - void quickresume_stepper(); -#endif - -#if ENABLED(SOFT_RESET_VIA_SERIAL) - void HAL_reboot(); -#endif - class EmergencyParser { public: @@ -61,6 +43,9 @@ class EmergencyParser { #if HAS_MEDIA EP_M5, EP_M52, EP_M524, #endif + #if ENABLED(EP_BABYSTEPPING) + EP_M2, EP_M29, EP_M293, EP_M294, + #endif #if ENABLED(HOST_PROMPT_SUPPORT) EP_M8, EP_M87, EP_M876, EP_M876S, EP_M876SN, #endif @@ -92,149 +77,7 @@ class EmergencyParser { FORCE_INLINE static void enable() { enabled = true; } FORCE_INLINE static void disable() { enabled = false; } - FORCE_INLINE static void update(State &state, const uint8_t c) { - switch (state) { - case EP_RESET: - switch (c) { - case ' ': case '\n': case '\r': break; - case 'N': state = EP_N; break; - case 'M': state = EP_M; break; - #if ENABLED(REALTIME_REPORTING_COMMANDS) - case 'S': state = EP_S; break; - case 'P': state = EP_P; break; - case 'R': state = EP_R; break; - #endif - #if ENABLED(SOFT_RESET_VIA_SERIAL) - case '^': state = EP_ctrl; break; - case 'K': state = EP_K; break; - #endif - default: state = EP_IGNORE; - } - break; - - case EP_N: - switch (c) { - case '0' ... '9': - case '-': case ' ': break; - case 'M': state = EP_M; break; - #if ENABLED(REALTIME_REPORTING_COMMANDS) - case 'S': state = EP_S; break; - case 'P': state = EP_P; break; - case 'R': state = EP_R; break; - #endif - default: state = EP_IGNORE; - } - break; - - #if ENABLED(REALTIME_REPORTING_COMMANDS) - case EP_S: state = (c == '0') ? EP_S0 : EP_IGNORE; break; - case EP_S0: state = (c == '0') ? EP_S00 : EP_IGNORE; break; - case EP_S00: state = (c == '0') ? EP_GRBL_STATUS : EP_IGNORE; break; - - case EP_R: state = (c == '0') ? EP_R0 : EP_IGNORE; break; - case EP_R0: state = (c == '0') ? EP_R00 : EP_IGNORE; break; - case EP_R00: state = (c == '0') ? EP_GRBL_RESUME : EP_IGNORE; break; - - case EP_P: state = (c == '0') ? EP_P0 : EP_IGNORE; break; - case EP_P0: state = (c == '0') ? EP_P00 : EP_IGNORE; break; - case EP_P00: state = (c == '0') ? EP_GRBL_PAUSE : EP_IGNORE; break; - #endif - - #if ENABLED(SOFT_RESET_VIA_SERIAL) - case EP_ctrl: state = (c == 'X') ? EP_KILL : EP_IGNORE; break; - case EP_K: state = (c == 'I') ? EP_KI : EP_IGNORE; break; - case EP_KI: state = (c == 'L') ? EP_KIL : EP_IGNORE; break; - case EP_KIL: state = (c == 'L') ? EP_KILL : EP_IGNORE; break; - #endif - - case EP_M: - switch (c) { - case ' ': break; - case '1': state = EP_M1; break; - case '4': state = EP_M4; break; - #if HAS_MEDIA - case '5': state = EP_M5; break; - #endif - #if ENABLED(HOST_PROMPT_SUPPORT) - case '8': state = EP_M8; break; - #endif - default: state = EP_IGNORE; - } - break; - - case EP_M1: - switch (c) { - case '0': state = EP_M10; break; - case '1': state = EP_M11; break; - default: state = EP_IGNORE; - } - break; - - case EP_M10: state = (c == '8') ? EP_M108 : EP_IGNORE; break; - case EP_M11: state = (c == '2') ? EP_M112 : EP_IGNORE; break; - case EP_M4: state = (c == '1') ? EP_M41 : EP_IGNORE; break; - case EP_M41: state = (c == '0') ? EP_M410 : EP_IGNORE; break; - - #if HAS_MEDIA - case EP_M5: state = (c == '2') ? EP_M52 : EP_IGNORE; break; - case EP_M52: state = (c == '4') ? EP_M524 : EP_IGNORE; break; - #endif - - #if ENABLED(HOST_PROMPT_SUPPORT) - - case EP_M8: state = (c == '7') ? EP_M87 : EP_IGNORE; break; - case EP_M87: state = (c == '6') ? EP_M876 : EP_IGNORE; break; - - case EP_M876: - switch (c) { - case ' ': break; - case 'S': state = EP_M876S; break; - default: state = EP_IGNORE; break; - } - break; - - case EP_M876S: - switch (c) { - case ' ': break; - case '0' ... '9': - state = EP_M876SN; - M876_reason = uint8_t(c - '0'); - break; - } - break; - - #endif - - case EP_IGNORE: - if (ISEOL(c)) state = EP_RESET; - break; - - default: - if (ISEOL(c)) { - if (enabled) switch (state) { - case EP_M108: wait_for_user = wait_for_heatup = false; break; - case EP_M112: killed_by_M112 = true; break; - case EP_M410: quickstop_by_M410 = true; break; - #if HAS_MEDIA - case EP_M524: sd_abort_by_M524 = true; break; - #endif - #if ENABLED(HOST_PROMPT_SUPPORT) - case EP_M876SN: hostui.handle_response(M876_reason); break; - #endif - #if ENABLED(REALTIME_REPORTING_COMMANDS) - case EP_GRBL_STATUS: report_current_position_moving(); break; - case EP_GRBL_PAUSE: quickpause_stepper(); break; - case EP_GRBL_RESUME: quickresume_stepper(); break; - #endif - #if ENABLED(SOFT_RESET_VIA_SERIAL) - case EP_KILL: HAL_reboot(); break; - #endif - default: break; - } - state = EP_RESET; - } - } - } + static void update(State &state, const uint8_t c); private: static bool enabled; diff --git a/Marlin/src/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index 2313bbf78f92..530cde7901a2 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -757,6 +757,10 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { #if ENABLED(BABYSTEPPING) case 290: M290(); break; // M290: Babystepping + #if ENABLED(EP_BABYSTEPPING) + case 293: IF_DISABLED(EMERGENCY_PARSER, M293()); break; // M293: Babystep up + case 294: IF_DISABLED(EMERGENCY_PARSER, M294()); break; // M294: Babystep down + #endif #endif #if HAS_SOUND diff --git a/Marlin/src/gcode/gcode.h b/Marlin/src/gcode/gcode.h index 9283a92e3965..52e8fbf8025e 100644 --- a/Marlin/src/gcode/gcode.h +++ b/Marlin/src/gcode/gcode.h @@ -930,6 +930,10 @@ class GcodeSuite { #if ENABLED(BABYSTEPPING) static void M290(); + #if ENABLED(EP_BABYSTEPPING) + static void M293(); + static void M294(); + #endif #endif #if HAS_SOUND diff --git a/Marlin/src/gcode/host/M115.cpp b/Marlin/src/gcode/host/M115.cpp index 239407816b93..8ca6d07ce269 100644 --- a/Marlin/src/gcode/host/M115.cpp +++ b/Marlin/src/gcode/host/M115.cpp @@ -54,6 +54,9 @@ * M115: Capabilities string and extended capabilities report * If a capability is not reported, hosts should assume * the capability is not present. + * + * NOTE: Always make sure to add new capabilities to the RepRap Wiki + * at https://reprap.org/wiki/Firmware_Capabilities_Protocol */ void GcodeSuite::M115() { SERIAL_ECHOPGM("FIRMWARE_NAME:Marlin" @@ -201,6 +204,9 @@ void GcodeSuite::M115() { // BABYSTEPPING (M290) cap_line(F("BABYSTEPPING"), ENABLED(BABYSTEPPING)); + // EP_BABYSTEP (M293, M294) + cap_line(F("EP_BABYSTEP"), ENABLED(EP_BABYSTEPPING)); + // CHAMBER_TEMPERATURE (M141, M191) cap_line(F("CHAMBER_TEMPERATURE"), ENABLED(HAS_HEATED_CHAMBER)); diff --git a/Marlin/src/gcode/motion/M290.cpp b/Marlin/src/gcode/motion/M290.cpp index 4fe83ccd4079..d10f9ee73caa 100644 --- a/Marlin/src/gcode/motion/M290.cpp +++ b/Marlin/src/gcode/motion/M290.cpp @@ -131,4 +131,10 @@ void GcodeSuite::M290() { } } +#if ENABLED(EP_BABYSTEPPING) && DISABLED(EMERGENCY_PARSER) + // Without Emergency Parser M293/M294 will be added to the queue + void GcodeSuite::M293() { babystep.z_up(); } + void GcodeSuite::M294() { babystep.z_down(); } +#endif + #endif // BABYSTEPPING diff --git a/Marlin/src/inc/Warnings.cpp b/Marlin/src/inc/Warnings.cpp index f76092085465..5c6297ba6019 100644 --- a/Marlin/src/inc/Warnings.cpp +++ b/Marlin/src/inc/Warnings.cpp @@ -729,6 +729,13 @@ #warning "BABYSTEPPING is recommended with BD_SENSOR." #endif +/** + * EP Babystepping works best with EMERGENCY_PARSER + */ +#if ENABLED(EP_BABYSTEPPING) && DISABLED(EMERGENCY_PARSER) + #warning "EMERGENCY_PARSER is recommended for EP_BABYSTEPPING." +#endif + /** * POLAR warnings */ diff --git a/Marlin/src/lcd/menu/menu.h b/Marlin/src/lcd/menu/menu.h index 1face4774bf5..d4cbfd7a73d5 100644 --- a/Marlin/src/lcd/menu/menu.h +++ b/Marlin/src/lcd/menu/menu.h @@ -242,17 +242,6 @@ void _lcd_draw_homing(); #else void lcd_babystep_z(); #endif - - #if ENABLED(BABYSTEP_MILLIMETER_UNITS) - #define BABYSTEP_SIZE_X int32_t((BABYSTEP_MULTIPLICATOR_XY) * planner.settings.axis_steps_per_mm[X_AXIS]) - #define BABYSTEP_SIZE_Y int32_t((BABYSTEP_MULTIPLICATOR_XY) * planner.settings.axis_steps_per_mm[Y_AXIS]) - #define BABYSTEP_SIZE_Z int32_t((BABYSTEP_MULTIPLICATOR_Z) * planner.settings.axis_steps_per_mm[Z_AXIS]) - #else - #define BABYSTEP_SIZE_X BABYSTEP_MULTIPLICATOR_XY - #define BABYSTEP_SIZE_Y BABYSTEP_MULTIPLICATOR_XY - #define BABYSTEP_SIZE_Z BABYSTEP_MULTIPLICATOR_Z - #endif - #endif #if ENABLED(TOUCH_SCREEN_CALIBRATION) diff --git a/Marlin/src/module/planner.h b/Marlin/src/module/planner.h index 4b68c5f65634..ee79c913af52 100644 --- a/Marlin/src/module/planner.h +++ b/Marlin/src/module/planner.h @@ -88,6 +88,18 @@ MMM_TO_MMS(manual_feedrate_mm_m.u), MMM_TO_MMS(manual_feedrate_mm_m.v), MMM_TO_MMS(manual_feedrate_mm_m.w)); #endif +#if ENABLED(BABYSTEPPING) + #if ENABLED(BABYSTEP_MILLIMETER_UNITS) + #define BABYSTEP_SIZE_X int32_t((BABYSTEP_MULTIPLICATOR_XY) * planner.settings.axis_steps_per_mm[X_AXIS]) + #define BABYSTEP_SIZE_Y int32_t((BABYSTEP_MULTIPLICATOR_XY) * planner.settings.axis_steps_per_mm[Y_AXIS]) + #define BABYSTEP_SIZE_Z int32_t((BABYSTEP_MULTIPLICATOR_Z) * planner.settings.axis_steps_per_mm[Z_AXIS]) + #else + #define BABYSTEP_SIZE_X BABYSTEP_MULTIPLICATOR_XY + #define BABYSTEP_SIZE_Y BABYSTEP_MULTIPLICATOR_XY + #define BABYSTEP_SIZE_Z BABYSTEP_MULTIPLICATOR_Z + #endif +#endif + #if IS_KINEMATIC && HAS_JUNCTION_DEVIATION #define HAS_DIST_MM_ARG 1 #endif diff --git a/buildroot/tests/LPC1768 b/buildroot/tests/LPC1768 index ee01bb621fcf..d616f7f48f82 100755 --- a/buildroot/tests/LPC1768 +++ b/buildroot/tests/LPC1768 @@ -44,7 +44,7 @@ opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER ADAPTIVE_FAN_SLOWING TE FILAMENT_WIDTH_SENSOR FILAMENT_LCD_DISPLAY PID_EXTRUSION_SCALING SOUND_MENU_ITEM \ NOZZLE_AS_PROBE AUTO_BED_LEVELING_BILINEAR PREHEAT_BEFORE_LEVELING G29_RETRY_AND_RECOVER Z_MIN_PROBE_REPEATABILITY_TEST DEBUG_LEVELING_FEATURE \ ASSISTED_TRAMMING ASSISTED_TRAMMING_WIZARD REPORT_TRAMMING_MM ASSISTED_TRAMMING_WAIT_POSITION \ - BABYSTEPPING BABYSTEP_XY BABYSTEP_ZPROBE_OFFSET BABYSTEP_GFX_OVERLAY \ + BABYSTEPPING BABYSTEP_XY BABYSTEP_ZPROBE_OFFSET EP_BABYSTEPPING BABYSTEP_GFX_OVERLAY \ PRINTCOUNTER NOZZLE_PARK_FEATURE NOZZLE_CLEAN_FEATURE SLOW_PWM_HEATERS PIDTEMPBED EEPROM_SETTINGS INCH_MODE_SUPPORT TEMPERATURE_UNITS_SUPPORT \ Z_SAFE_HOMING ADVANCED_PAUSE_FEATURE PARK_HEAD_ON_PAUSE \ HOST_KEEPALIVE_FEATURE HOST_ACTION_COMMANDS HOST_PROMPT_SUPPORT \ diff --git a/buildroot/tests/mega2560 b/buildroot/tests/mega2560 index ad9763451f47..1490c9e4aaa4 100755 --- a/buildroot/tests/mega2560 +++ b/buildroot/tests/mega2560 @@ -30,7 +30,7 @@ opt_enable AUTO_BED_LEVELING_UBL AVOID_OBSTACLES RESTORE_LEVELING_AFTER_G28 DEBU REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER LIGHTWEIGHT_UI STATUS_MESSAGE_SCROLLING SHOW_CUSTOM_BOOTSCREEN BOOT_MARLIN_LOGO_SMALL \ SDSUPPORT SDCARD_SORT_ALPHA USB_FLASH_DRIVE_SUPPORT AUTO_REPORT_SD_STATUS SCROLL_LONG_FILENAMES MEDIA_MENU_AT_TOP \ EEPROM_SETTINGS EEPROM_CHITCHAT GCODE_MACROS CUSTOM_MENU_MAIN FREEZE_FEATURE CANCEL_OBJECTS SOUND_MENU_ITEM \ - MULTI_NOZZLE_DUPLICATION CLASSIC_JERK LIN_ADVANCE ADVANCE_K_EXTRA QUICK_HOME \ + EMERGENCY_PARSER MULTI_NOZZLE_DUPLICATION CLASSIC_JERK LIN_ADVANCE ADVANCE_K_EXTRA QUICK_HOME \ SET_PROGRESS_MANUALLY SET_PROGRESS_PERCENT PRINT_PROGRESS_SHOW_DECIMALS SHOW_REMAINING_TIME \ ENCODER_NOISE_FILTER BABYSTEPPING BABYSTEP_XY NANODLP_Z_SYNC I2C_POSITION_ENCODERS M114_DETAIL exec_test $1 $2 "Azteeg X3 Pro | EXTRUDERS 5 | RRDFGSC | UBL | LIN_ADVANCE ..." "$3" diff --git a/ini/native.ini b/ini/native.ini index 481dac1777bd..03c6c59265e9 100644 --- a/ini/native.ini +++ b/ini/native.ini @@ -43,7 +43,7 @@ debug_build_flags = -fstack-protector-strong -g -g3 -ggdb lib_compat_mode = off build_src_filter = ${common.default_src_filter} + lib_deps = ${common.lib_deps} - MarlinSimUI=https://github.com/p3p/MarlinSimUI/archive/refs/heads/bugfix-2.1.x.zip + MarlinSimUI=https://github.com/p3p/MarlinSimUI/archive/bugfix-2.1.x.zip Adafruit NeoPixel=https://github.com/p3p/Adafruit_NeoPixel/archive/marlin_sim_native.zip LiquidCrystal=https://github.com/p3p/LiquidCrystal/archive/master.zip extra_scripts = ${common.extra_scripts} From a3eace117ced5ad72227046465a6d878f66261d9 Mon Sep 17 00:00:00 2001 From: EvilGremlin <22657714+EvilGremlin@users.noreply.github.com> Date: Thu, 25 May 2023 10:32:04 +0300 Subject: [PATCH 217/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Imp?= =?UTF-8?q?rove=20missing=20translations=20script=20(#25841)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- .../share/scripts/findMissingTranslations.sh | 69 +++++++++++++++++-- 1 file changed, 63 insertions(+), 6 deletions(-) diff --git a/buildroot/share/scripts/findMissingTranslations.sh b/buildroot/share/scripts/findMissingTranslations.sh index 24a2a910a21c..ece3a1fe59b1 100755 --- a/buildroot/share/scripts/findMissingTranslations.sh +++ b/buildroot/share/scripts/findMissingTranslations.sh @@ -9,6 +9,29 @@ # If no language codes are specified then all languages will be checked # +langname() { + case "$1" in + an ) echo "Aragonese" ;; bg ) echo "Bulgarian" ;; + ca ) echo "Catalan" ;; cz ) echo "Czech" ;; + da ) echo "Danish" ;; de ) echo "German" ;; + el ) echo "Greek" ;; el_CY ) echo "Greek (Cyprus)" ;; + el_gr) echo "Greek (Greece)" ;; en ) echo "English" ;; + es ) echo "Spanish" ;; eu ) echo "Basque-Euskera" ;; + fi ) echo "Finnish" ;; fr ) echo "French" ;; + fr_na) echo "French (no accent)" ;; gl ) echo "Galician" ;; + hr ) echo "Croatian (Hrvatski)" ;; hu ) echo "Hungarian / Magyar" ;; + it ) echo "Italian" ;; jp_kana) echo "Japanese (Kana)" ;; + ko_KR) echo "Korean" ;; nl ) echo "Dutch" ;; + pl ) echo "Polish" ;; pt ) echo "Portuguese" ;; + pt_br) echo "Portuguese (Brazil)" ;; ru ) echo "Russian" ;; + sk ) echo "Slovak" ;; sv ) echo "Swedish" ;; + test ) echo "TEST" ;; tr ) echo "Turkish" ;; + uk ) echo "Ukrainian" ;; vi ) echo "Vietnamese" ;; + zh_CN) echo "Simplified Chinese" ;; zh_TW ) echo "Traditional Chinese" ;; + * ) echo "" ;; + esac +} + LANGHOME="Marlin/src/lcd/language" [ -d $LANGHOME ] && cd $LANGHOME @@ -20,7 +43,7 @@ TEST_LANGS="" if [[ -n $@ ]]; then for K in "$@"; do for F in $FILES; do - [[ "$F" != "${F%$K*}" ]] && TEST_LANGS+="$F " + [[ $F == $K ]] && TEST_LANGS+="$F " done done [[ -z $TEST_LANGS ]] && { echo "No languages matching $@." ; exit 0 ; } @@ -28,20 +51,54 @@ else TEST_LANGS=$FILES fi -echo "Missing strings for $TEST_LANGS..." +echo "Finding all missing strings for $TEST_LANGS..." + +WORD_LINES=() # Complete lines for all words (or, grep out of en at the end instead) +ALL_MISSING=() # All missing languages for each missing word +#NEED_WORDS=() # All missing words across all specified languages + +WORD_COUNT=0 +# Go through all strings in the English language file +# For each word, query all specified languages for the word +# If the word is missing, add its language to the list for WORD in $(awk '/LSTR/{print $2}' language_en.h); do + # Skip MSG_MARLIN [[ $WORD == "MSG_MARLIN" ]] && break - LANG_LIST="" + + ((WORD_COUNT++)) + + # Find all selected languages that lack the string + LANG_MISSING=" " for LANG in $TEST_LANGS; do if [[ $(grep -c -E "^ *LSTR +$WORD\b" language_${LANG}.h) -eq 0 ]]; then INHERIT=$(awk '/using namespace/{print $3}' language_${LANG}.h | sed -E 's/Language_([a-zA-Z_]+)\s*;/\1/') if [[ -z $INHERIT || $INHERIT == "en" ]]; then - LANG_LIST+=" $LANG" + LANG_MISSING+="$LANG " elif [[ $(grep -c -E "^ *LSTR +$WORD\b" language_${INHERIT}.h) -eq 0 ]]; then - LANG_LIST+=" $LANG" + LANG_MISSING+="$LANG " fi fi done - [[ -n $LANG_LIST ]] && printf "%-38s :%s\n" "$WORD" "$LANG_LIST" + # For each word store all the missing languages + if [[ $LANG_MISSING != " " ]]; then + WORD_LINES+=("$(grep -m 1 -E "$WORD\b" language_en.h)") + ALL_MISSING+=("$LANG_MISSING") + #NEED_WORDS+=($WORD) + fi +done + +echo +echo "${#WORD_LINES[@]} out of $WORD_COUNT LCD strings need translation" + +for LANG in $TEST_LANGS; do + HED=0 ; IND=0 + for WORDLANGS in "${ALL_MISSING[@]}"; do + # If the current word is missing from the current language then print it + if [[ $WORDLANGS =~ " $LANG " ]]; then + [[ $HED == 0 ]] && { echo ; echo "Missing strings for language_$LANG.h ($(langname $LANG)):" ; HED=1 ; } + echo "${WORD_LINES[$IND]}" + fi + ((IND++)) + done done From d20ce5ff0a4d45e2ac7091832c86d4441f0356a9 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 26 May 2023 00:21:31 +0000 Subject: [PATCH 218/427] [cron] Bump distribution date (2023-05-26) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 4a4d91378139..bb0da0664885 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-25" +//#define STRING_DISTRIBUTION_DATE "2023-05-26" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index be7fa433757e..a203e9267c89 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-25" + #define STRING_DISTRIBUTION_DATE "2023-05-26" #endif /** From f73fe76b6c5f9088222265e47494611e9d8bc379 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 26 May 2023 17:50:42 -0500 Subject: [PATCH 219/427] =?UTF-8?q?=F0=9F=8C=90=20Language=20export=20to?= =?UTF-8?q?=20CSV?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 + Marlin/src/lcd/language/language_el_gr.h | 2 +- buildroot/share/scripts/exportTranslations.py | 193 ++++++++++++++++++ .../share/scripts/findMissingTranslations.sh | 6 +- 4 files changed, 199 insertions(+), 4 deletions(-) create mode 100755 buildroot/share/scripts/exportTranslations.py diff --git a/.gitignore b/.gitignore index a7f8a091aa4a..cff637d36e79 100755 --- a/.gitignore +++ b/.gitignore @@ -25,6 +25,8 @@ bdf2u8g.exe genpages.exe marlin_config.json mczip.h +language*.csv +csv-out/ *.gen *.sublime-workspace diff --git a/Marlin/src/lcd/language/language_el_gr.h b/Marlin/src/lcd/language/language_el_gr.h index d4eabb70cea2..696b1d055df6 100644 --- a/Marlin/src/lcd/language/language_el_gr.h +++ b/Marlin/src/lcd/language/language_el_gr.h @@ -147,7 +147,7 @@ namespace Language_el_gr { LSTR MSG_STORE_EEPROM = _UxGT("Αποθήκευση"); LSTR MSG_LOAD_EEPROM = _UxGT("Φόρτωση"); LSTR MSG_RESTORE_DEFAULTS = _UxGT("Επαναφορά ασφαλούς αντιγράφου"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Ανανέωση"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Ανανέωση"); LSTR MSG_INFO_SCREEN = _UxGT("Οθόνη πληροφόρησης"); LSTR MSG_PREPARE = _UxGT("Προετοιμασία"); LSTR MSG_TUNE = _UxGT("Συντονισμός"); diff --git a/buildroot/share/scripts/exportTranslations.py b/buildroot/share/scripts/exportTranslations.py new file mode 100755 index 000000000000..620c2e77b1c2 --- /dev/null +++ b/buildroot/share/scripts/exportTranslations.py @@ -0,0 +1,193 @@ +#!/usr/bin/env python3 +# +# exportTranslations.py +# +# Export LCD language strings to CSV files for easier translation. +# Use importTranslations.py to import CSV into the language files. +# + +import re +from pathlib import Path + +# Write multiple sheets if true, otherwise write one giant sheet +MULTISHEET = True + +# Where to look for the language files +LANGHOME = "Marlin/src/lcd/language" + +# Check for the path to the language files +if not Path(LANGHOME).is_dir(): + print("Error: Couldn't find the '%s' directory." % LANGHOME) + print("Edit LANGHOME or cd to the root of the repo before running.") + exit(1) + +# A dictionary to contain language names +LANGNAME = { + 'an': "Aragonese", + 'bg': "Bulgarian", + 'ca': "Catalan", + 'cz': "Czech", + 'da': "Danish", + 'de': "German", + 'el': "Greek", 'el_CY': "Greek (Cyprus)", 'el_gr': "Greek (Greece)", + 'en': "English", + 'es': "Spanish", + 'eu': "Basque-Euskera", + 'fi': "Finnish", + 'fr': "French", 'fr_na': "French (no accent)", + 'gl': "Galician", + 'hr': "Croatian (Hrvatski)", + 'hu': "Hungarian / Magyar", + 'it': "Italian", + 'jp_kana': "Japanese (Kana)", + 'ko_KR': "Korean", + 'nl': "Dutch", + 'pl': "Polish", + 'pt': "Portuguese", 'pt_br': "Portuguese (Brazil)", + 'ro': "Romanian", + 'ru': "Russian", + 'sk': "Slovak", + 'sv': "Swedish", + 'tr': "Turkish", + 'uk': "Ukrainian", + 'vi': "Vietnamese", + 'zh_CN': "Simplified Chinese", 'zh_TW': "Traditional Chinese" +} + +# A limit just for testing +LIMIT = 0 + +# A dictionary to contain strings for each language. +# Init with 'en' so English will always be first. +language_strings = { 'en': 0 } + +# A dictionary to contain all distinct LCD string names +names = {} + +# Get all "language_*.h" files +langfiles = sorted(list(Path(LANGHOME).glob('language_*.h'))) + +# Read each language file +for langfile in langfiles: + # Get the language code from the filename + langcode = langfile.name.replace('language_', '').replace('.h', '') + + # Skip 'test' and any others that we don't want + if langcode in ['test']: continue + + # Open the file + f = open(langfile, 'r', encoding='utf-8') + if not f: continue + + # Flags to indicate a wide or tall section + wideflag = False + tallflag = False + # A counter for the number of strings in the file + stringcount = 0 + # A dictionary to hold all the strings + strings = { 'narrow': {}, 'wide': {}, 'tall': {} } + # Read each line in the file + for line in f: + # Clean up the line for easier parsing + line = line.split("//")[0].strip() + if line.endswith(';'): line = line[:-1].strip() + + # Check for wide or tall sections, assume no complicated nesting + if line.startswith("#endif") or line.startswith("#else"): + wideflag = False + tallflag = False + elif re.match(r'#if.*WIDTH\s*>=?\s*2[01].*', line): wideflag = True + elif re.match(r'#if.*LCD_HEIGHT\s*>=?\s*4.*', line): tallflag = True + + # For string-defining lines capture the string data + match = re.match(r'LSTR\s+([A-Z0-9_]+)\s*=\s*(.+)\s*', line) + if match: + # The name is the first captured group + name = match.group(1) + # The value is the second captured group + value = match.group(2) + # Replace escaped quotes temporarily + value = value.replace('\\"', '__Q__') + + # Remove all _UxGT wrappers from the value in a non-greedy way + value = re.sub(r'_UxGT\((".*?")\)', r'\1', value) + + # Multi-line strings will get one or more bars | for identification + multiline = 0 + multimatch = re.match(r'.*MSG_(\d)_LINE\s*\(\s*(.+?)\s*\).*', value) + if multimatch: + multiline = int(multimatch.group(1)) + value = '|' + re.sub(r'"\s*,\s*"', '|', multimatch.group(2)) + + # Wrap inline defines in parentheses + value = re.sub(r' *([A-Z0-9]+_[A-Z0-9_]+) *', r'(\1)', value) + # Remove quotes around strings + value = re.sub(r'"(.*?)"', r'\1', value).replace('__Q__', '"') + # Store all unique names as dictionary keys + names[name] = 1 + # Store the string as narrow or wide + strings['tall' if tallflag else 'wide' if wideflag else 'narrow'][name] = value + + # Increment the string counter + stringcount += 1 + # Break for testing + if LIMIT and stringcount >= LIMIT: break + + # Close the file + f.close() + # Store the array in the dict + language_strings[langcode] = strings + +# Get the language codes from the dictionary +langcodes = list(language_strings.keys()) + +# Print the array +#print(language_strings) + +# Write a single language entry to the CSV file with narrow, wide, and tall strings +def write_csv_lang(f, strings, name): + f.write(',') + if name in strings['narrow']: f.write('"%s"' % strings['narrow'][name]) + f.write(',') + if name in strings['wide']: f.write('"%s"' % strings['wide'][name]) + f.write(',') + if name in strings['tall']: f.write('"%s"' % strings['tall'][name]) + +if MULTISHEET: + # + # Export a separate sheet for each language + # + OUTDIR = 'csv-out' + Path.mkdir(Path(OUTDIR), exist_ok=True) + + for lang in langcodes: + f = open("%s/language_%s.csv" % (OUTDIR, lang), 'w', encoding='utf-8') + if not f: continue + + lname = lang + ' ' + LANGNAME[lang] + header = ['name', lname, lname + ' (wide)', lname + ' (tall)'] + f.write('"' + '","'.join(header) + '"\n') + + for name in names.keys(): + f.write('"' + name + '"') + write_csv_lang(f, language_strings[lang], name) + f.write('\n') + f.close() + +else: + # + # Export one large sheet containing all languages + # + f = open("languages.csv", 'w', encoding='utf-8') + if f: + header = ['name'] + for lang in langcodes: + lname = lang + ' ' + LANGNAME[lang] + header += [lname, lname + ' (wide)', lname + ' (tall)'] + f.write('"' + '","'.join(header) + '"\n') + + for name in names.keys(): + f.write('"' + name + '"') + for lang in langcodes: write_csv_lang(f, language_strings[lang], name) + f.write('\n') + f.close() diff --git a/buildroot/share/scripts/findMissingTranslations.sh b/buildroot/share/scripts/findMissingTranslations.sh index ece3a1fe59b1..366075d5b969 100755 --- a/buildroot/share/scripts/findMissingTranslations.sh +++ b/buildroot/share/scripts/findMissingTranslations.sh @@ -23,9 +23,9 @@ langname() { it ) echo "Italian" ;; jp_kana) echo "Japanese (Kana)" ;; ko_KR) echo "Korean" ;; nl ) echo "Dutch" ;; pl ) echo "Polish" ;; pt ) echo "Portuguese" ;; - pt_br) echo "Portuguese (Brazil)" ;; ru ) echo "Russian" ;; - sk ) echo "Slovak" ;; sv ) echo "Swedish" ;; - test ) echo "TEST" ;; tr ) echo "Turkish" ;; + pt_br) echo "Portuguese (Brazil)" ;; ro ) echo "Romanian" ;; + ru ) echo "Russian" ;; sk ) echo "Slovak" ;; + sv ) echo "Swedish" ;; tr ) echo "Turkish" ;; uk ) echo "Ukrainian" ;; vi ) echo "Vietnamese" ;; zh_CN) echo "Simplified Chinese" ;; zh_TW ) echo "Traditional Chinese" ;; * ) echo "" ;; From 154e48ba22ceedb01e9058a7f8da9457a445ee19 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 26 May 2023 18:54:50 -0500 Subject: [PATCH 220/427] =?UTF-8?q?=F0=9F=8E=A8=20Misc.=20spacing?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/language/language_ca.h | 2 +- Marlin/src/lcd/language/language_da.h | 8 +- Marlin/src/lcd/language/language_de.h | 2 +- Marlin/src/lcd/language/language_el.h | 14 +- Marlin/src/lcd/language/language_es.h | 2 +- Marlin/src/lcd/language/language_eu.h | 2 +- Marlin/src/lcd/language/language_fi.h | 2 +- Marlin/src/lcd/language/language_fr.h | 2 +- Marlin/src/lcd/language/language_fr_na.h | 2 +- Marlin/src/lcd/language/language_gl.h | 2 +- Marlin/src/lcd/language/language_hr.h | 2 +- Marlin/src/lcd/language/language_hu.h | 2 +- Marlin/src/lcd/language/language_it.h | 16 +- Marlin/src/lcd/language/language_jp_kana.h | 328 ++++---- Marlin/src/lcd/language/language_ko_KR.h | 2 +- Marlin/src/lcd/language/language_nl.h | 10 +- Marlin/src/lcd/language/language_pl.h | 2 +- Marlin/src/lcd/language/language_pt_br.h | 2 +- Marlin/src/lcd/language/language_ro.h | 2 +- Marlin/src/lcd/language/language_sk.h | 2 +- Marlin/src/lcd/language/language_tr.h | 2 +- Marlin/src/lcd/language/language_uk.h | 2 +- Marlin/src/lcd/language/language_vi.h | 341 ++++---- Marlin/src/lcd/language/language_zh_CN.h | 606 +++++++------- Marlin/src/lcd/language/language_zh_TW.h | 768 +++++++++--------- .../pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h | 10 +- 26 files changed, 1068 insertions(+), 1067 deletions(-) diff --git a/Marlin/src/lcd/language/language_ca.h b/Marlin/src/lcd/language/language_ca.h index ac6d4388e1ad..b750ff155125 100644 --- a/Marlin/src/lcd/language/language_ca.h +++ b/Marlin/src/lcd/language/language_ca.h @@ -122,7 +122,7 @@ namespace Language_ca { LSTR MSG_STORE_EEPROM = _UxGT("Desa memoria"); LSTR MSG_LOAD_EEPROM = _UxGT("Carrega memoria"); LSTR MSG_RESTORE_DEFAULTS = _UxGT("Restaura valors"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Actualitza"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Actualitza"); LSTR MSG_INFO_SCREEN = _UxGT("Pantalla Info."); LSTR MSG_PREPARE = _UxGT("Prepara"); LSTR MSG_TUNE = _UxGT("Ajusta"); diff --git a/Marlin/src/lcd/language/language_da.h b/Marlin/src/lcd/language/language_da.h index a424883000b9..91dc3513f7fc 100644 --- a/Marlin/src/lcd/language/language_da.h +++ b/Marlin/src/lcd/language/language_da.h @@ -92,9 +92,9 @@ namespace Language_da { LSTR MSG_FAN_SPEED = _UxGT("Blæser hastighed"); LSTR MSG_FAN_SPEED_N = _UxGT("Blæser hastighed ~"); LSTR MSG_CONTROL = _UxGT("Kontrol"); - LSTR MSG_MIN = _UxGT(" \002 Min"); - LSTR MSG_MAX = _UxGT(" \002 Max"); - LSTR MSG_FACTOR = _UxGT(" \002 Fact"); + LSTR MSG_MIN = " " LCD_STR_THERMOMETER _UxGT(" Min"); + LSTR MSG_MAX = " " LCD_STR_THERMOMETER _UxGT(" Max"); + LSTR MSG_FACTOR = " " LCD_STR_THERMOMETER _UxGT(" Fact"); LSTR MSG_AUTOTEMP = _UxGT("Autotemp"); LSTR MSG_LCD_ON = _UxGT("Til"); LSTR MSG_LCD_OFF = _UxGT("Fra"); @@ -111,7 +111,7 @@ namespace Language_da { LSTR MSG_STORE_EEPROM = _UxGT("Gem i EEPROM"); LSTR MSG_LOAD_EEPROM = _UxGT("Hent fra EEPROM"); LSTR MSG_RESTORE_DEFAULTS = _UxGT("Gendan Defaults"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Genopfrisk"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Genopfrisk"); LSTR MSG_INFO_SCREEN = _UxGT("Info skærm"); LSTR MSG_PREPARE = _UxGT("Forbered"); LSTR MSG_PAUSE_PRINT = _UxGT("Pause printet"); diff --git a/Marlin/src/lcd/language/language_de.h b/Marlin/src/lcd/language/language_de.h index 359afd8ad2ae..2e75c2668b90 100644 --- a/Marlin/src/lcd/language/language_de.h +++ b/Marlin/src/lcd/language/language_de.h @@ -513,7 +513,7 @@ namespace Language_de { LSTR MSG_FILAMENTUNLOAD = _UxGT("Filament entladen"); LSTR MSG_FILAMENTUNLOAD_E = _UxGT("Filament entladen *"); LSTR MSG_FILAMENTUNLOAD_ALL = _UxGT("Alles entladen"); - LSTR MSG_ATTACH_MEDIA = _UxGT("Medium initial."); // Manually initialize the SD-card via user interface + LSTR MSG_ATTACH_MEDIA = _UxGT("Medium initial."); // Manually initialize the SD-card via user interface LSTR MSG_CHANGE_MEDIA = _UxGT("Medium getauscht"); // SD-card changed by user. For machines with no autocarddetect. Both send "M21" LSTR MSG_RELEASE_MEDIA = _UxGT("Medium freigeben"); // if Marlin gets confused - M22 LSTR MSG_ZPROBE_OUT = _UxGT("Z-Sonde außerhalb"); diff --git a/Marlin/src/lcd/language/language_el.h b/Marlin/src/lcd/language/language_el.h index e18bda4edfc3..aab74cc494f4 100644 --- a/Marlin/src/lcd/language/language_el.h +++ b/Marlin/src/lcd/language/language_el.h @@ -70,16 +70,16 @@ namespace Language_el { LSTR MSG_PREHEAT_1_END = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" End"); LSTR MSG_PREHEAT_1_END_E = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" End ~"); LSTR MSG_PREHEAT_1_ALL = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" όλα"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" bed"); //SHORTEN - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" επιβεβαίωση"); //SHORTEN + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" bed"); // SHORTEN + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" επιβεβαίωση"); // SHORTEN LSTR MSG_PREHEAT_M = _UxGT("Προθέρμανση $"); LSTR MSG_PREHEAT_M_H = _UxGT("Προθέρμανση $ ~"); LSTR MSG_PREHEAT_M_END = _UxGT("Προθέρμανση $ End"); LSTR MSG_PREHEAT_M_END_E = _UxGT("Προθέρμανση $ End ~"); LSTR MSG_PREHEAT_M_ALL = _UxGT("Προθέρμανση $ όλα"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Προθέρμανση $ bed"); //SHORTEN - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Προθέρμανση $ επιβεβαίωση"); //SHORTEN + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Προθέρμανση $ bed"); // SHORTEN + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Προθέρμανση $ επιβεβαίωση"); // SHORTEN #endif LSTR MSG_COOLDOWN = _UxGT("Αποθέρμανση"); LSTR MSG_SWITCH_PS_ON = _UxGT("Ενεργοποίηση"); @@ -157,7 +157,7 @@ namespace Language_el { LSTR MSG_STORE_EEPROM = _UxGT("Αποθήκευση σε EEPROM"); LSTR MSG_LOAD_EEPROM = _UxGT("Φόρτωση από EEPROM"); LSTR MSG_RESTORE_DEFAULTS = _UxGT("Επαναφορά προεπιλογών"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Ανανέωση"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Ανανέωση"); LSTR MSG_INFO_SCREEN = _UxGT("Οθόνη πληροφόρησης"); LSTR MSG_PREPARE = _UxGT("Προετοιμασία"); LSTR MSG_TUNE = _UxGT("Συντονισμός"); @@ -173,7 +173,7 @@ namespace Language_el { LSTR MSG_KILLED = _UxGT("ΤΕΡΜΑΤΙΣΜΟΣ. "); LSTR MSG_STOPPED = _UxGT("ΔΙΑΚΟΠΗ. "); LSTR MSG_CONTROL_RETRACT = _UxGT("Ανάσυρση μμ"); - LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Εναλλαγή ανάσυρσης mm"); //SHORTEN + LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Εναλλαγή ανάσυρσης mm"); // SHORTEN LSTR MSG_CONTROL_RETRACTF = _UxGT("Ανάσυρση V"); LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("Μεταπήδηση mm"); LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("Unretr. mm"); @@ -184,7 +184,7 @@ namespace Language_el { LSTR MSG_FILAMENTCHANGE_E = _UxGT("Αλλαγή νήματος *"); LSTR MSG_ATTACH_MEDIA = _UxGT("Προετοιμασία SD"); LSTR MSG_CHANGE_MEDIA = _UxGT("Αλλαγή κάρτας SD"); - LSTR MSG_ZPROBE_OUT = _UxGT("Διερεύνηση Z εκτός Επ.Εκτύπωσης"); //SHORTEN + LSTR MSG_ZPROBE_OUT = _UxGT("Διερεύνηση Z εκτός Επ.Εκτύπωσης"); // SHORTEN LSTR MSG_YX_UNHOMED = _UxGT("Επαναφορά Χ/Υ πρώτα"); LSTR MSG_XYZ_UNHOMED = _UxGT("Επαναφορά ΧΥΖ πρώτα"); LSTR MSG_ZPROBE_ZOFFSET = _UxGT("Μετατόπιση Ζ"); diff --git a/Marlin/src/lcd/language/language_es.h b/Marlin/src/lcd/language/language_es.h index b2e5af70f526..a487c7d28918 100644 --- a/Marlin/src/lcd/language/language_es.h +++ b/Marlin/src/lcd/language/language_es.h @@ -319,7 +319,7 @@ namespace Language_es { LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Err: Versión EEPROM"); LSTR MSG_MEDIA_UPDATE = _UxGT("Actualizar SD/FD"); LSTR MSG_RESET_PRINTER = _UxGT("Resetear Impresora"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Recargar"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Recargar"); LSTR MSG_INFO_SCREEN = _UxGT("Pantalla de Inf."); LSTR MSG_PREPARE = _UxGT("Preparar"); LSTR MSG_TUNE = _UxGT("Ajustar"); diff --git a/Marlin/src/lcd/language/language_eu.h b/Marlin/src/lcd/language/language_eu.h index 9b969762d550..6433fde99fba 100644 --- a/Marlin/src/lcd/language/language_eu.h +++ b/Marlin/src/lcd/language/language_eu.h @@ -194,7 +194,7 @@ namespace Language_eu { LSTR MSG_LOAD_EEPROM = _UxGT("Kargatu memoria"); LSTR MSG_RESTORE_DEFAULTS = _UxGT("Larri. berriz."); LSTR MSG_INIT_EEPROM = _UxGT("EEPROM-a hasieratu"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Berriz kargatu"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Berriz kargatu"); LSTR MSG_INFO_SCREEN = _UxGT("Pantaila info"); LSTR MSG_PREPARE = _UxGT("Prestatu"); LSTR MSG_TUNE = _UxGT("Doitu"); diff --git a/Marlin/src/lcd/language/language_fi.h b/Marlin/src/lcd/language/language_fi.h index 57fc0a7c21b5..8d5e4c714309 100644 --- a/Marlin/src/lcd/language/language_fi.h +++ b/Marlin/src/lcd/language/language_fi.h @@ -102,7 +102,7 @@ namespace Language_fi { LSTR MSG_STORE_EEPROM = _UxGT("Tallenna muistiin"); LSTR MSG_LOAD_EEPROM = _UxGT("Lataa muistista"); LSTR MSG_RESTORE_DEFAULTS = _UxGT("Palauta oletus"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Päivitä"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Päivitä"); LSTR MSG_INFO_SCREEN = _UxGT("Seuraa"); LSTR MSG_PREPARE = _UxGT("Valmistele"); LSTR MSG_TUNE = _UxGT("Säädä"); diff --git a/Marlin/src/lcd/language/language_fr.h b/Marlin/src/lcd/language/language_fr.h index 01422f5c76e7..4f0434525264 100644 --- a/Marlin/src/lcd/language/language_fr.h +++ b/Marlin/src/lcd/language/language_fr.h @@ -331,7 +331,7 @@ namespace Language_fr { LSTR MSG_SETTINGS_STORED = _UxGT("Config. enregistrée"); LSTR MSG_MEDIA_UPDATE = _UxGT("MaJ Firmware SD"); LSTR MSG_RESET_PRINTER = _UxGT("RaZ imprimante"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Actualiser"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Actualiser"); LSTR MSG_INFO_SCREEN = _UxGT("Surveiller"); LSTR MSG_PREPARE = _UxGT("Préparer"); LSTR MSG_TUNE = _UxGT("Régler"); diff --git a/Marlin/src/lcd/language/language_fr_na.h b/Marlin/src/lcd/language/language_fr_na.h index 12fa0295eaa0..4441a7970a2e 100644 --- a/Marlin/src/lcd/language/language_fr_na.h +++ b/Marlin/src/lcd/language/language_fr_na.h @@ -331,7 +331,7 @@ namespace Language_fr_na { LSTR MSG_SETTINGS_STORED = _UxGT("Config. enregistree"); LSTR MSG_MEDIA_UPDATE = _UxGT("MaJ Firmware SD"); LSTR MSG_RESET_PRINTER = _UxGT("RaZ imprimante"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Actualiser"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Actualiser"); LSTR MSG_INFO_SCREEN = _UxGT("Surveiller"); LSTR MSG_PREPARE = _UxGT("Preparer"); LSTR MSG_TUNE = _UxGT("Regler"); diff --git a/Marlin/src/lcd/language/language_gl.h b/Marlin/src/lcd/language/language_gl.h index fcdee2405c41..25b30f71eb0a 100644 --- a/Marlin/src/lcd/language/language_gl.h +++ b/Marlin/src/lcd/language/language_gl.h @@ -322,7 +322,7 @@ namespace Language_gl { LSTR MSG_SETTINGS_STORED = _UxGT("Config Gardada"); LSTR MSG_MEDIA_UPDATE = _UxGT("Actualizar SD/FD"); LSTR MSG_RESET_PRINTER = _UxGT("Reiniciar Impresora"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Recargar"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Recargar"); LSTR MSG_INFO_SCREEN = _UxGT("Información"); LSTR MSG_PREPARE = _UxGT("Preparar"); LSTR MSG_TUNE = _UxGT("Axustar"); diff --git a/Marlin/src/lcd/language/language_hr.h b/Marlin/src/lcd/language/language_hr.h index 1f51c5c539b0..a857fb361996 100644 --- a/Marlin/src/lcd/language/language_hr.h +++ b/Marlin/src/lcd/language/language_hr.h @@ -105,7 +105,7 @@ namespace Language_hr { LSTR MSG_STORE_EEPROM = _UxGT("Pohrani u memoriju"); LSTR MSG_LOAD_EEPROM = _UxGT("Učitaj memoriju"); LSTR MSG_RESTORE_DEFAULTS = _UxGT("Učitaj Defaults"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Osvježi"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Osvježi"); LSTR MSG_INFO_SCREEN = _UxGT("Info screen"); LSTR MSG_PREPARE = _UxGT("Pripremi"); LSTR MSG_PAUSE_PRINT = _UxGT("Pauziraj print"); diff --git a/Marlin/src/lcd/language/language_hu.h b/Marlin/src/lcd/language/language_hu.h index 8a6f66f9941a..f3880a31a6f8 100644 --- a/Marlin/src/lcd/language/language_hu.h +++ b/Marlin/src/lcd/language/language_hu.h @@ -368,7 +368,7 @@ namespace Language_hu { LSTR MSG_SETTINGS_STORED = _UxGT("Beállítások mentve"); LSTR MSG_MEDIA_UPDATE = _UxGT("Tároló frissítés"); LSTR MSG_RESET_PRINTER = _UxGT("Nyomtató újraindítása"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Frissítés"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Frissítés"); LSTR MSG_INFO_SCREEN = _UxGT(""); LSTR MSG_PREPARE = _UxGT("Vezérlés"); LSTR MSG_TUNE = _UxGT("Hangolás"); diff --git a/Marlin/src/lcd/language/language_it.h b/Marlin/src/lcd/language/language_it.h index 96c1499f558e..a6b48b0d0a1b 100644 --- a/Marlin/src/lcd/language/language_it.h +++ b/Marlin/src/lcd/language/language_it.h @@ -338,11 +338,11 @@ namespace Language_it { LSTR MSG_FLOWMETER_SAFETY = _UxGT("Sicurezza flusso"); LSTR MSG_CUTTER = _UxGT("Taglio"); LSTR MSG_LASER = _UxGT("Laser"); - LSTR MSG_FAN_SPEED = _UxGT("Vel. ventola"); // Max 15 characters - LSTR MSG_FAN_SPEED_N = _UxGT("Vel. ventola ~"); // Max 15 characters - LSTR MSG_STORED_FAN_N = _UxGT("Ventola mem. ~"); // Max 15 characters - LSTR MSG_EXTRA_FAN_SPEED = _UxGT("Extra vel.vent."); // Max 15 characters - LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("Extra v.vent. ~"); // Max 15 characters + LSTR MSG_FAN_SPEED = _UxGT("Vel. ventola"); // Max 15 characters + LSTR MSG_FAN_SPEED_N = _UxGT("Vel. ventola ~"); // Max 15 characters + LSTR MSG_STORED_FAN_N = _UxGT("Ventola mem. ~"); // Max 15 characters + LSTR MSG_EXTRA_FAN_SPEED = _UxGT("Extra vel.vent."); // Max 15 characters + LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("Extra v.vent. ~"); // Max 15 characters LSTR MSG_CONTROLLER_FAN = _UxGT("Controller vent."); LSTR MSG_CONTROLLER_FAN_IDLE_SPEED = _UxGT("Vel. inattivo"); LSTR MSG_CONTROLLER_FAN_AUTO_ON = _UxGT("Modo autom."); @@ -597,7 +597,7 @@ namespace Language_it { LSTR MSG_BABYSTEP_N = _UxGT("Babystep @"); LSTR MSG_BABYSTEP_TOTAL = _UxGT("Totali"); LSTR MSG_ENDSTOP_ABORT = _UxGT("Interrompi se FC"); - LSTR MSG_HEATING_FAILED_LCD = _UxGT("Risc.Fallito"); // Max 12 characters + LSTR MSG_HEATING_FAILED_LCD = _UxGT("Risc.Fallito"); // Max 12 characters LSTR MSG_ERR_REDUNDANT_TEMP = _UxGT("Err: TEMP RIDONDANTE"); LSTR MSG_THERMAL_RUNAWAY = _UxGT("TEMP FUORI CONTROLLO"); LSTR MSG_TEMP_MALFUNCTION = _UxGT("MALFUNZIONAMENTO TEMP"); @@ -702,13 +702,13 @@ namespace Language_it { LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("Riprendi stampa"); LSTR MSG_FILAMENT_CHANGE_PURGE_CONTINUE = _UxGT("Spurga o continua?"); LSTR MSG_FILAMENT_CHANGE_NOZZLE = _UxGT(" Ugello: "); - LSTR MSG_RUNOUT_SENSOR = _UxGT("Sens.filo termin."); // Max 17 characters + LSTR MSG_RUNOUT_SENSOR = _UxGT("Sens.filo termin."); // Max 17 characters LSTR MSG_RUNOUT_DISTANCE_MM = _UxGT("Dist mm filo term."); LSTR MSG_RUNOUT_ENABLE = _UxGT("Abil.filo termin."); LSTR MSG_RUNOUT_ACTIVE = _UxGT("Filo termin. attivo"); LSTR MSG_INVERT_EXTRUDER = _UxGT("Inverti estrusore"); LSTR MSG_EXTRUDER_MIN_TEMP = _UxGT("Temp.min estrusore"); - LSTR MSG_FANCHECK = _UxGT("Verif.tacho vent."); // Max 17 characters + LSTR MSG_FANCHECK = _UxGT("Verif.tacho vent."); // Max 17 characters LSTR MSG_KILL_HOMING_FAILED = _UxGT("Home fallito"); LSTR MSG_LCD_PROBING_FAILED = _UxGT("Sondaggio fallito"); diff --git a/Marlin/src/lcd/language/language_jp_kana.h b/Marlin/src/lcd/language/language_jp_kana.h index 75707108381a..950ddcb5e5a2 100644 --- a/Marlin/src/lcd/language/language_jp_kana.h +++ b/Marlin/src/lcd/language/language_jp_kana.h @@ -42,188 +42,188 @@ namespace Language_jp_kana { // 片仮名表示定義 LSTR WELCOME_MSG = MACHINE_NAME _UxGT(" ジュンビカンリョウ"); - LSTR MSG_MEDIA_INSERTED = _UxGT("メディアガソウニュウサレマシタ"); // "Card inserted" - LSTR MSG_MEDIA_REMOVED = _UxGT("メディアガアリマセン"); // "Card removed" + LSTR MSG_MEDIA_INSERTED = _UxGT("メディアガソウニュウサレマシタ"); // "Card inserted" + LSTR MSG_MEDIA_REMOVED = _UxGT("メディアガアリマセン"); // "Card removed" LSTR MSG_RELEASE_MEDIA = _UxGT("メディアノトリダシ"); - LSTR MSG_LCD_ENDSTOPS = _UxGT("エンドストップ"); // "Endstops" // Max length 8 characters - LSTR MSG_MAIN_MENU = _UxGT("メイン"); // "Main" - LSTR MSG_RUN_AUTO_FILES = _UxGT("ジドウカイシ"); // "Autostart" - LSTR MSG_DISABLE_STEPPERS = _UxGT("モーターデンゲン オフ"); // "Disable steppers" - LSTR MSG_DEBUG_MENU = _UxGT("デバッグメニュー"); // "Debug Menu" - LSTR MSG_PROGRESS_BAR_TEST = _UxGT("プログレスバー テスト"); // "Progress Bar Test" - LSTR MSG_AUTO_HOME = _UxGT("ゲンテンフッキ"); // "Auto home" - LSTR MSG_AUTO_HOME_X = _UxGT("Xジク ゲンテンフッキ"); // "Home X" - LSTR MSG_AUTO_HOME_Y = _UxGT("Yジク ゲンテンフッキ"); // "Home Y" - LSTR MSG_AUTO_HOME_Z = _UxGT("Zジク ゲンテンフッキ"); // "Home Z" - LSTR MSG_LEVEL_BED_HOMING = _UxGT("ゲンテンフッキチュウ"); // "Homing XYZ" - LSTR MSG_LEVEL_BED_WAITING = _UxGT("レベリングカイシ"); // "Click to Begin" - LSTR MSG_LEVEL_BED_NEXT_POINT = _UxGT("ツギノソクテイテンヘ"); // "Next Point" - LSTR MSG_LEVEL_BED_DONE = _UxGT("レベリングカンリョウ"); // "Leveling Done!" - LSTR MSG_SET_HOME_OFFSETS = _UxGT("キジュンオフセットセッテイ"); // "Set home offsets" - LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("オフセットガテキヨウサレマシタ"); // "Offsets applied" + LSTR MSG_LCD_ENDSTOPS = _UxGT("エンドストップ"); // "Endstops" // Max length 8 characters + LSTR MSG_MAIN_MENU = _UxGT("メイン"); // "Main" + LSTR MSG_RUN_AUTO_FILES = _UxGT("ジドウカイシ"); // "Autostart" + LSTR MSG_DISABLE_STEPPERS = _UxGT("モーターデンゲン オフ"); // "Disable steppers" + LSTR MSG_DEBUG_MENU = _UxGT("デバッグメニュー"); // "Debug Menu" + LSTR MSG_PROGRESS_BAR_TEST = _UxGT("プログレスバー テスト"); // "Progress Bar Test" + LSTR MSG_AUTO_HOME = _UxGT("ゲンテンフッキ"); // "Auto home" + LSTR MSG_AUTO_HOME_X = _UxGT("Xジク ゲンテンフッキ"); // "Home X" + LSTR MSG_AUTO_HOME_Y = _UxGT("Yジク ゲンテンフッキ"); // "Home Y" + LSTR MSG_AUTO_HOME_Z = _UxGT("Zジク ゲンテンフッキ"); // "Home Z" + LSTR MSG_LEVEL_BED_HOMING = _UxGT("ゲンテンフッキチュウ"); // "Homing XYZ" + LSTR MSG_LEVEL_BED_WAITING = _UxGT("レベリングカイシ"); // "Click to Begin" + LSTR MSG_LEVEL_BED_NEXT_POINT = _UxGT("ツギノソクテイテンヘ"); // "Next Point" + LSTR MSG_LEVEL_BED_DONE = _UxGT("レベリングカンリョウ"); // "Leveling Done!" + LSTR MSG_SET_HOME_OFFSETS = _UxGT("キジュンオフセットセッテイ"); // "Set home offsets" + LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("オフセットガテキヨウサレマシタ"); // "Offsets applied" #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = PREHEAT_1_LABEL _UxGT(" ヨネツ"); // "Preheat " PREHEAT_1_LABEL - LSTR MSG_PREHEAT_1_H = PREHEAT_1_LABEL _UxGT(" ヨネツ ~"); // "Preheat " PREHEAT_1_LABEL - LSTR MSG_PREHEAT_1_END = PREHEAT_1_LABEL _UxGT(" ヨネツノズル"); // " Nozzle" - LSTR MSG_PREHEAT_1_END_E = PREHEAT_1_LABEL _UxGT(" ヨネツノズル ~"); // " Nozzle" - LSTR MSG_PREHEAT_1_ALL = PREHEAT_1_LABEL _UxGT(" スベテヨネツ"); // " All" - LSTR MSG_PREHEAT_1_BEDONLY = PREHEAT_1_LABEL _UxGT(" ベッドヨネツ"); // " Bed" - LSTR MSG_PREHEAT_1_SETTINGS = PREHEAT_1_LABEL _UxGT(" ヨネツセッテイ"); // " conf" + LSTR MSG_PREHEAT_1 = PREHEAT_1_LABEL _UxGT(" ヨネツ"); // "Preheat " PREHEAT_1_LABEL + LSTR MSG_PREHEAT_1_H = PREHEAT_1_LABEL _UxGT(" ヨネツ ~"); // "Preheat " PREHEAT_1_LABEL + LSTR MSG_PREHEAT_1_END = PREHEAT_1_LABEL _UxGT(" ヨネツノズル"); // " Nozzle" + LSTR MSG_PREHEAT_1_END_E = PREHEAT_1_LABEL _UxGT(" ヨネツノズル ~"); // " Nozzle" + LSTR MSG_PREHEAT_1_ALL = PREHEAT_1_LABEL _UxGT(" スベテヨネツ"); // " All" + LSTR MSG_PREHEAT_1_BEDONLY = PREHEAT_1_LABEL _UxGT(" ベッドヨネツ"); // " Bed" + LSTR MSG_PREHEAT_1_SETTINGS = PREHEAT_1_LABEL _UxGT(" ヨネツセッテイ"); // " conf" - LSTR MSG_PREHEAT_M = _UxGT("$ ヨネツ"); // "Preheat " PREHEAT_1_LABEL - LSTR MSG_PREHEAT_M_H = _UxGT("$ ヨネツ ~"); // "Preheat " PREHEAT_1_LABEL - LSTR MSG_PREHEAT_M_END = _UxGT("$ ヨネツノズル"); // " Nozzle" - LSTR MSG_PREHEAT_M_END_E = _UxGT("$ ヨネツノズル ~"); // " Nozzle" - LSTR MSG_PREHEAT_M_ALL = _UxGT("$ スベテヨネツ"); // " All" - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("$ ベッドヨネツ"); // " Bed" - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("$ ヨネツセッテイ"); // " conf" + LSTR MSG_PREHEAT_M = _UxGT("$ ヨネツ"); // "Preheat " PREHEAT_1_LABEL + LSTR MSG_PREHEAT_M_H = _UxGT("$ ヨネツ ~"); // "Preheat " PREHEAT_1_LABEL + LSTR MSG_PREHEAT_M_END = _UxGT("$ ヨネツノズル"); // " Nozzle" + LSTR MSG_PREHEAT_M_END_E = _UxGT("$ ヨネツノズル ~"); // " Nozzle" + LSTR MSG_PREHEAT_M_ALL = _UxGT("$ スベテヨネツ"); // " All" + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("$ ベッドヨネツ"); // " Bed" + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("$ ヨネツセッテイ"); // " conf" #endif - LSTR MSG_COOLDOWN = _UxGT("カネツテイシ"); // "Cooldown" - LSTR MSG_SWITCH_PS_ON = _UxGT("デンゲン オン"); // "Switch power on" - LSTR MSG_SWITCH_PS_OFF = _UxGT("デンゲン オフ"); // "Switch power off" - LSTR MSG_EXTRUDE = _UxGT("オシダシ"); // "Extrude" - LSTR MSG_RETRACT = _UxGT("ヒキコミセッテイ"); // "Retract" - LSTR MSG_MOVE_AXIS = _UxGT("ジクイドウ"); // "Move axis" - LSTR MSG_BED_LEVELING = _UxGT("ベッドレベリング"); // "Bed leveling" - LSTR MSG_LEVEL_BED = _UxGT("ベッドレベリング"); // "Level bed" + LSTR MSG_COOLDOWN = _UxGT("カネツテイシ"); // "Cooldown" + LSTR MSG_SWITCH_PS_ON = _UxGT("デンゲン オン"); // "Switch power on" + LSTR MSG_SWITCH_PS_OFF = _UxGT("デンゲン オフ"); // "Switch power off" + LSTR MSG_EXTRUDE = _UxGT("オシダシ"); // "Extrude" + LSTR MSG_RETRACT = _UxGT("ヒキコミセッテイ"); // "Retract" + LSTR MSG_MOVE_AXIS = _UxGT("ジクイドウ"); // "Move axis" + LSTR MSG_BED_LEVELING = _UxGT("ベッドレベリング"); // "Bed leveling" + LSTR MSG_LEVEL_BED = _UxGT("ベッドレベリング"); // "Level bed" - LSTR MSG_MOVING = _UxGT("イドウチュウ"); // "Moving..." - LSTR MSG_FREE_XY = _UxGT("XYジク カイホウ"); // "Free XY" - LSTR MSG_MOVE_X = _UxGT("Xジク イドウ"); // "Move X" - LSTR MSG_MOVE_Y = _UxGT("Yジク イドウ"); // "Move Y" - LSTR MSG_MOVE_Z = _UxGT("Zジク イドウ"); // "Move Z" - LSTR MSG_MOVE_N = _UxGT("@ジク イドウ"); // "Move @" - LSTR MSG_MOVE_E = _UxGT("エクストルーダー"); // "Extruder" - LSTR MSG_MOVE_EN = _UxGT("* エクストルーダー"); // "En" - LSTR MSG_MOVE_N_MM = _UxGT("$mm イドウ"); // "Move 0.025mm" - LSTR MSG_MOVE_01MM = _UxGT("0.1mm イドウ"); // "Move 0.1mm" - LSTR MSG_MOVE_1MM = _UxGT(" 1mm イドウ"); // "Move 1mm" - LSTR MSG_MOVE_10MM = _UxGT(" 10mm イドウ"); // "Move 10mm" - LSTR MSG_MOVE_50MM = _UxGT(" 50mm イドウ"); // "Move 50mm" - LSTR MSG_MOVE_100MM = _UxGT(" 100mm イドウ"); // "Move 100mm" - LSTR MSG_SPEED = _UxGT("ソクド"); // "Speed" - LSTR MSG_MESH_Z_OFFSET = _UxGT("Zオフセット"); // "Bed Z" - LSTR MSG_NOZZLE = _UxGT("ノズル"); // "Nozzle" - LSTR MSG_BED = _UxGT("ベッド"); // "Bed" - LSTR MSG_FAN_SPEED = _UxGT("ファンソクド"); // "Fan speed" - LSTR MSG_FLOW = _UxGT("トシュツリョウ"); // "Flow" - LSTR MSG_CONTROL = _UxGT("セイギョ"); // "Control" + LSTR MSG_MOVING = _UxGT("イドウチュウ"); // "Moving..." + LSTR MSG_FREE_XY = _UxGT("XYジク カイホウ"); // "Free XY" + LSTR MSG_MOVE_X = _UxGT("Xジク イドウ"); // "Move X" + LSTR MSG_MOVE_Y = _UxGT("Yジク イドウ"); // "Move Y" + LSTR MSG_MOVE_Z = _UxGT("Zジク イドウ"); // "Move Z" + LSTR MSG_MOVE_N = _UxGT("@ジク イドウ"); // "Move @" + LSTR MSG_MOVE_E = _UxGT("エクストルーダー"); // "Extruder" + LSTR MSG_MOVE_EN = _UxGT("* エクストルーダー"); // "En" + LSTR MSG_MOVE_N_MM = _UxGT("$mm イドウ"); // "Move 0.025mm" + LSTR MSG_MOVE_01MM = _UxGT("0.1mm イドウ"); // "Move 0.1mm" + LSTR MSG_MOVE_1MM = _UxGT(" 1mm イドウ"); // "Move 1mm" + LSTR MSG_MOVE_10MM = _UxGT(" 10mm イドウ"); // "Move 10mm" + LSTR MSG_MOVE_50MM = _UxGT(" 50mm イドウ"); // "Move 50mm" + LSTR MSG_MOVE_100MM = _UxGT(" 100mm イドウ"); // "Move 100mm" + LSTR MSG_SPEED = _UxGT("ソクド"); // "Speed" + LSTR MSG_MESH_Z_OFFSET = _UxGT("Zオフセット"); // "Bed Z" + LSTR MSG_NOZZLE = _UxGT("ノズル"); // "Nozzle" + LSTR MSG_BED = _UxGT("ベッド"); // "Bed" + LSTR MSG_FAN_SPEED = _UxGT("ファンソクド"); // "Fan speed" + LSTR MSG_FLOW = _UxGT("トシュツリョウ"); // "Flow" + LSTR MSG_CONTROL = _UxGT("セイギョ"); // "Control" LSTR MSG_MIN = " " LCD_STR_THERMOMETER _UxGT(" サイテイ"); // " Min" LSTR MSG_MAX = " " LCD_STR_THERMOMETER _UxGT(" サイコウ"); // " Max" LSTR MSG_FACTOR = " " LCD_STR_THERMOMETER _UxGT(" ファクター"); // " Fact" - LSTR MSG_AUTOTEMP = _UxGT("ジドウオンドセイギョ"); // "Autotemp" - LSTR MSG_LCD_ON = _UxGT("オン"); // "On" - LSTR MSG_LCD_OFF = _UxGT("オフ"); // "Off" + LSTR MSG_AUTOTEMP = _UxGT("ジドウオンドセイギョ"); // "Autotemp" + LSTR MSG_LCD_ON = _UxGT("オン"); // "On" + LSTR MSG_LCD_OFF = _UxGT("オフ"); // "Off" LSTR MSG_SELECT_E = _UxGT("センタク *"); - LSTR MSG_ACC = _UxGT("カソクド mm/s") SUPERSCRIPT_TWO; // "Accel" - LSTR MSG_JERK = _UxGT("ヤクドウ mm/s"); // "Jerk" - LSTR MSG_VA_JERK = _UxGT("ジク ヤクドウ mm/s") STR_A; // "Va-jerk" - LSTR MSG_VB_JERK = _UxGT("ジク ヤクドウ mm/s") STR_B; // "Vb-jerk" - LSTR MSG_VC_JERK = _UxGT("ジク ヤクドウ mm/s") STR_C; // "Vc-jerk" - LSTR MSG_VN_JERK = _UxGT("ジク ヤクドウ mm/s@"); // "V@-jerk" + LSTR MSG_ACC = _UxGT("カソクド mm/s") SUPERSCRIPT_TWO; // "Accel" + LSTR MSG_JERK = _UxGT("ヤクドウ mm/s"); // "Jerk" + LSTR MSG_VA_JERK = _UxGT("ジク ヤクドウ mm/s") STR_A; // "Va-jerk" + LSTR MSG_VB_JERK = _UxGT("ジク ヤクドウ mm/s") STR_B; // "Vb-jerk" + LSTR MSG_VC_JERK = _UxGT("ジク ヤクドウ mm/s") STR_C; // "Vc-jerk" + LSTR MSG_VN_JERK = _UxGT("ジク ヤクドウ mm/s@"); // "V@-jerk" LSTR MSG_A_STEPS = STR_A _UxGT("ステップ/mm"); LSTR MSG_B_STEPS = STR_B _UxGT("ステップ/mm"); LSTR MSG_C_STEPS = STR_C _UxGT("ステップ/mm"); LSTR MSG_N_STEPS = _UxGT("@ステップ/mm"); - LSTR MSG_VE_JERK = _UxGT("エクストルーダー ヤクド"); // "Ve-jerk" - LSTR MSG_VMAX_A = _UxGT("サイダイオクリソクド ") STR_A; // "Vmax A" - LSTR MSG_VMAX_B = _UxGT("サイダイオクリソクド ") STR_B; // "Vmax B" - LSTR MSG_VMAX_C = _UxGT("サイダイオクリソクド ") STR_C; // "Vmax C" - LSTR MSG_VMAX_E = _UxGT("サイダイオクリソクド E"); // "Vmax E" - LSTR MSG_VMAX_EN = _UxGT("サイダイオクリソクド *"); // "Vmax E1" - LSTR MSG_VMIN = _UxGT("サイショウオクリソクド"); // "Vmin" - LSTR MSG_VTRAV_MIN = _UxGT("サイショウイドウソクド"); // "VTrav min" - LSTR MSG_ACCELERATION = _UxGT("カソクド mm/s") SUPERSCRIPT_TWO; // "Accel" - LSTR MSG_A_RETRACT = _UxGT("ヒキコミカソクド"); // "A-retract" - LSTR MSG_A_TRAVEL = _UxGT("イドウカソクド"); // "A-travel" - LSTR MSG_TEMPERATURE = _UxGT("オンド"); // "Temperature" - LSTR MSG_MOTION = _UxGT("ウゴキセッテイ"); // "Motion" - LSTR MSG_FILAMENT = _UxGT("フィラメント"); // "Filament" + LSTR MSG_VE_JERK = _UxGT("エクストルーダー ヤクド"); // "Ve-jerk" + LSTR MSG_VMAX_A = _UxGT("サイダイオクリソクド ") STR_A; // "Vmax A" + LSTR MSG_VMAX_B = _UxGT("サイダイオクリソクド ") STR_B; // "Vmax B" + LSTR MSG_VMAX_C = _UxGT("サイダイオクリソクド ") STR_C; // "Vmax C" + LSTR MSG_VMAX_E = _UxGT("サイダイオクリソクド E"); // "Vmax E" + LSTR MSG_VMAX_EN = _UxGT("サイダイオクリソクド *"); // "Vmax E1" + LSTR MSG_VMIN = _UxGT("サイショウオクリソクド"); // "Vmin" + LSTR MSG_VTRAV_MIN = _UxGT("サイショウイドウソクド"); // "VTrav min" + LSTR MSG_ACCELERATION = _UxGT("カソクド mm/s") SUPERSCRIPT_TWO; // "Accel" + LSTR MSG_A_RETRACT = _UxGT("ヒキコミカソクド"); // "A-retract" + LSTR MSG_A_TRAVEL = _UxGT("イドウカソクド"); // "A-travel" + LSTR MSG_TEMPERATURE = _UxGT("オンド"); // "Temperature" + LSTR MSG_MOTION = _UxGT("ウゴキセッテイ"); // "Motion" + LSTR MSG_FILAMENT = _UxGT("フィラメント"); // "Filament" LSTR MSG_VOLUMETRIC_ENABLED = _UxGT("E in mm") SUPERSCRIPT_THREE; - LSTR MSG_FILAMENT_DIAM = _UxGT("フィラメントチョッケイ"); // "Fil. Dia." + LSTR MSG_FILAMENT_DIAM = _UxGT("フィラメントチョッケイ"); // "Fil. Dia." LSTR MSG_FILAMENT_DIAM_E = _UxGT("フィラメントチョッケイ *"); - LSTR MSG_CONTRAST = _UxGT("LCDコントラスト"); // "LCD contrast" - LSTR MSG_STORE_EEPROM = _UxGT("EEPROMヘホゾン"); // "Store memory" - LSTR MSG_LOAD_EEPROM = _UxGT("EEPROMカラヨミコミ"); // "Load memory" - LSTR MSG_RESTORE_DEFAULTS = _UxGT("セッテイリセット"); // "Restore Defaults" - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("リフレッシュ"); // "Refresh" - LSTR MSG_INFO_SCREEN = _UxGT("ジョウホウガメン"); // "Info screen" - LSTR MSG_PREPARE = _UxGT("ジュンビセッテイ"); // "Prepare" - LSTR MSG_TUNE = _UxGT("チョウセイ"); // "Tune" - LSTR MSG_PAUSE_PRINT = _UxGT("イチジテイシ"); // "Pause print" - LSTR MSG_RESUME_PRINT = _UxGT("プリントサイカイ"); // "Resume print" - LSTR MSG_STOP_PRINT = _UxGT("プリントテイシ"); // "Stop print" - LSTR MSG_MEDIA_MENU = _UxGT("メディアカラプリント"); // "Print from SD" - LSTR MSG_NO_MEDIA = _UxGT("メディアガアリマセン"); // "Card removed" - LSTR MSG_DWELL = _UxGT("キュウシ"); // "Sleep..." - LSTR MSG_USERWAIT = _UxGT("ツヅケルニハクリックシテクダサイ"); // "Wait for user..." - LSTR MSG_PRINT_ABORTED = _UxGT("プリントガチュウシサレマシタ"); // "Print aborted" - LSTR MSG_NO_MOVE = _UxGT("ウゴキマセン"); // "No move." - LSTR MSG_KILLED = _UxGT("ヒジョウテイシ"); // "KILLED. " - LSTR MSG_STOPPED = _UxGT("テイシシマシタ"); // "STOPPED. " - LSTR MSG_CONTROL_RETRACT = _UxGT("ヒキコミリョウ mm"); // "Retract mm" - LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("ヒキコミリョウS mm"); // "Swap Re.mm" - LSTR MSG_CONTROL_RETRACTF = _UxGT("ヒキコミソクド mm/s"); // "Retract V" - LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("ノズルタイヒ mm"); // "Hop mm" - LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("ホショウリョウ mm"); // "Unretr. mm" - LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("ホショウリョウS mm"); // "S Unretr. mm" - LSTR MSG_CONTROL_RETRACT_RECOVERF = _UxGT("ホショウソクド mm/s"); // "Unretract V" - LSTR MSG_AUTORETRACT = _UxGT("ジドウヒキコミ"); // "Auto-Retract" - LSTR MSG_FILAMENTCHANGE = _UxGT("フィラメントコウカン"); // "Change filament" - LSTR MSG_ATTACH_MEDIA = _UxGT("メディアサイヨミコミ"); // "Init. SD card" - LSTR MSG_CHANGE_MEDIA = _UxGT("メディアコウカン"); // "Change SD card" - LSTR MSG_ZPROBE_OUT = _UxGT("Zプローブ ベッドガイ"); // "Z probe out. bed" - LSTR MSG_BLTOUCH_SELFTEST = _UxGT("BLTouch ジコシンダン"); // "BLTouch Self-Test" - LSTR MSG_BLTOUCH_RESET = _UxGT("BLTouch リセット"); // "Reset BLTouch" + LSTR MSG_CONTRAST = _UxGT("LCDコントラスト"); // "LCD contrast" + LSTR MSG_STORE_EEPROM = _UxGT("EEPROMヘホゾン"); // "Store memory" + LSTR MSG_LOAD_EEPROM = _UxGT("EEPROMカラヨミコミ"); // "Load memory" + LSTR MSG_RESTORE_DEFAULTS = _UxGT("セッテイリセット"); // "Restore Defaults" + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("リフレッシュ"); // "Refresh" + LSTR MSG_INFO_SCREEN = _UxGT("ジョウホウガメン"); // "Info screen" + LSTR MSG_PREPARE = _UxGT("ジュンビセッテイ"); // "Prepare" + LSTR MSG_TUNE = _UxGT("チョウセイ"); // "Tune" + LSTR MSG_PAUSE_PRINT = _UxGT("イチジテイシ"); // "Pause print" + LSTR MSG_RESUME_PRINT = _UxGT("プリントサイカイ"); // "Resume print" + LSTR MSG_STOP_PRINT = _UxGT("プリントテイシ"); // "Stop print" + LSTR MSG_MEDIA_MENU = _UxGT("メディアカラプリント"); // "Print from SD" + LSTR MSG_NO_MEDIA = _UxGT("メディアガアリマセン"); // "Card removed" + LSTR MSG_DWELL = _UxGT("キュウシ"); // "Sleep..." + LSTR MSG_USERWAIT = _UxGT("ツヅケルニハクリックシテクダサイ"); // "Wait for user..." + LSTR MSG_PRINT_ABORTED = _UxGT("プリントガチュウシサレマシタ"); // "Print aborted" + LSTR MSG_NO_MOVE = _UxGT("ウゴキマセン"); // "No move." + LSTR MSG_KILLED = _UxGT("ヒジョウテイシ"); // "KILLED. " + LSTR MSG_STOPPED = _UxGT("テイシシマシタ"); // "STOPPED. " + LSTR MSG_CONTROL_RETRACT = _UxGT("ヒキコミリョウ mm"); // "Retract mm" + LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("ヒキコミリョウS mm"); // "Swap Re.mm" + LSTR MSG_CONTROL_RETRACTF = _UxGT("ヒキコミソクド mm/s"); // "Retract V" + LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("ノズルタイヒ mm"); // "Hop mm" + LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("ホショウリョウ mm"); // "Unretr. mm" + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("ホショウリョウS mm"); // "S Unretr. mm" + LSTR MSG_CONTROL_RETRACT_RECOVERF = _UxGT("ホショウソクド mm/s"); // "Unretract V" + LSTR MSG_AUTORETRACT = _UxGT("ジドウヒキコミ"); // "Auto-Retract" + LSTR MSG_FILAMENTCHANGE = _UxGT("フィラメントコウカン"); // "Change filament" + LSTR MSG_ATTACH_MEDIA = _UxGT("メディアサイヨミコミ"); // "Init. SD card" + LSTR MSG_CHANGE_MEDIA = _UxGT("メディアコウカン"); // "Change SD card" + LSTR MSG_ZPROBE_OUT = _UxGT("Zプローブ ベッドガイ"); // "Z probe out. bed" + LSTR MSG_BLTOUCH_SELFTEST = _UxGT("BLTouch ジコシンダン"); // "BLTouch Self-Test" + LSTR MSG_BLTOUCH_RESET = _UxGT("BLTouch リセット"); // "Reset BLTouch" LSTR MSG_HOME_FIRST = _UxGT("サキニ %s ヲフッキサセテクダサイ"); // "Home ... first" - LSTR MSG_ZPROBE_ZOFFSET = _UxGT("Zオフセット"); // "Z Offset" - LSTR MSG_BABYSTEP_X = _UxGT("Xジク ビドウ"); // "Babystep X" - LSTR MSG_BABYSTEP_Y = _UxGT("Yジク ビドウ"); // "Babystep Y" - LSTR MSG_BABYSTEP_Z = _UxGT("Zジク ビドウ"); // "Babystep Z" - LSTR MSG_ENDSTOP_ABORT = _UxGT("イドウゲンカイケンチキノウ"); // "Endstop abort" - LSTR MSG_HEATING_FAILED_LCD = _UxGT("カネツシッパイ"); // "Heating failed" - LSTR MSG_ERR_REDUNDANT_TEMP = _UxGT("エラー:ジョウチョウサーミスターキノウ"); // "Err: REDUNDANT TEMP" - LSTR MSG_THERMAL_RUNAWAY = _UxGT("ネツボウソウ"); // "THERMAL RUNAWAY" - LSTR MSG_ERR_MAXTEMP = _UxGT("エラー:サイコウオンチョウカ"); // "Err: MAXTEMP" - LSTR MSG_ERR_MINTEMP = _UxGT("エラー:サイテイオンミマン"); // "Err: MINTEMP" - LSTR MSG_HALTED = _UxGT("プリンターハテイシシマシタ"); // "PRINTER HALTED" - LSTR MSG_PLEASE_RESET = _UxGT("リセットシテクダサイ"); // "Please reset" - LSTR MSG_HEATING = _UxGT("カネツチュウ"); // "Heating..." - LSTR MSG_BED_HEATING = _UxGT("ベッド カネツチュウ"); // "Bed Heating..." - LSTR MSG_DELTA_CALIBRATE = _UxGT("デルタ コウセイ"); // "Delta Calibration" - LSTR MSG_DELTA_CALIBRATE_X = _UxGT("Xジク コウセイ"); // "Calibrate X" - LSTR MSG_DELTA_CALIBRATE_Y = _UxGT("Yジク コウセイ"); // "Calibrate Y" - LSTR MSG_DELTA_CALIBRATE_Z = _UxGT("Zジク コウセイ"); // "Calibrate Z" - LSTR MSG_DELTA_CALIBRATE_CENTER = _UxGT("チュウシン コウセイ"); // "Calibrate Center" - LSTR MSG_INFO_MENU = _UxGT("コノプリンターニツイテ"); // "About Printer" - LSTR MSG_INFO_PRINTER_MENU = _UxGT("プリンタージョウホウ"); // "Printer Info" - LSTR MSG_INFO_STATS_MENU = _UxGT("プリントジョウキョウ"); // "Printer Stats" - LSTR MSG_INFO_BOARD_MENU = _UxGT("セイギョケイジョウホウ"); // "Board Info" - LSTR MSG_INFO_THERMISTOR_MENU = _UxGT("サーミスター"); // "Thermistors" - LSTR MSG_INFO_EXTRUDERS = _UxGT("エクストルーダースウ"); // "Extruders" - LSTR MSG_INFO_BAUDRATE = _UxGT("ボーレート"); // "Baud" - LSTR MSG_INFO_PROTOCOL = _UxGT("プロトコル"); // "Protocol" - LSTR MSG_CASE_LIGHT = _UxGT("キョウタイナイショウメイ"); // "Case light" - LSTR MSG_INFO_PRINT_COUNT = _UxGT("プリントスウ "); // "Print Count" - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("カンリョウスウ"); // "Completed" - LSTR MSG_INFO_PRINT_TIME = _UxGT("プリントジカンルイケイ"); // "Total print time" - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("サイチョウプリントジカン"); // "Longest job time" - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("フィラメントシヨウリョウルイケイ"); // "Extruded total" - LSTR MSG_INFO_MIN_TEMP = _UxGT("セッテイサイテイオン"); // "Min Temp" - LSTR MSG_INFO_MAX_TEMP = _UxGT("セッテイサイコウオン"); // "Max Temp" - LSTR MSG_INFO_PSU = _UxGT("デンゲンシュベツ"); // "Power Supply" - LSTR MSG_DRIVE_STRENGTH = _UxGT("モータークドウリョク"); // "Drive Strength" - LSTR MSG_DAC_PERCENT_N = _UxGT("@ DACシュツリョク %"); // "@ Driver %" - LSTR MSG_DAC_EEPROM_WRITE = _UxGT("EEPROMヘホゾン"); // "Store memory" + LSTR MSG_ZPROBE_ZOFFSET = _UxGT("Zオフセット"); // "Z Offset" + LSTR MSG_BABYSTEP_X = _UxGT("Xジク ビドウ"); // "Babystep X" + LSTR MSG_BABYSTEP_Y = _UxGT("Yジク ビドウ"); // "Babystep Y" + LSTR MSG_BABYSTEP_Z = _UxGT("Zジク ビドウ"); // "Babystep Z" + LSTR MSG_ENDSTOP_ABORT = _UxGT("イドウゲンカイケンチキノウ"); // "Endstop abort" + LSTR MSG_HEATING_FAILED_LCD = _UxGT("カネツシッパイ"); // "Heating failed" + LSTR MSG_ERR_REDUNDANT_TEMP = _UxGT("エラー:ジョウチョウサーミスターキノウ"); // "Err: REDUNDANT TEMP" + LSTR MSG_THERMAL_RUNAWAY = _UxGT("ネツボウソウ"); // "THERMAL RUNAWAY" + LSTR MSG_ERR_MAXTEMP = _UxGT("エラー:サイコウオンチョウカ"); // "Err: MAXTEMP" + LSTR MSG_ERR_MINTEMP = _UxGT("エラー:サイテイオンミマン"); // "Err: MINTEMP" + LSTR MSG_HALTED = _UxGT("プリンターハテイシシマシタ"); // "PRINTER HALTED" + LSTR MSG_PLEASE_RESET = _UxGT("リセットシテクダサイ"); // "Please reset" + LSTR MSG_HEATING = _UxGT("カネツチュウ"); // "Heating..." + LSTR MSG_BED_HEATING = _UxGT("ベッド カネツチュウ"); // "Bed Heating..." + LSTR MSG_DELTA_CALIBRATE = _UxGT("デルタ コウセイ"); // "Delta Calibration" + LSTR MSG_DELTA_CALIBRATE_X = _UxGT("Xジク コウセイ"); // "Calibrate X" + LSTR MSG_DELTA_CALIBRATE_Y = _UxGT("Yジク コウセイ"); // "Calibrate Y" + LSTR MSG_DELTA_CALIBRATE_Z = _UxGT("Zジク コウセイ"); // "Calibrate Z" + LSTR MSG_DELTA_CALIBRATE_CENTER = _UxGT("チュウシン コウセイ"); // "Calibrate Center" + LSTR MSG_INFO_MENU = _UxGT("コノプリンターニツイテ"); // "About Printer" + LSTR MSG_INFO_PRINTER_MENU = _UxGT("プリンタージョウホウ"); // "Printer Info" + LSTR MSG_INFO_STATS_MENU = _UxGT("プリントジョウキョウ"); // "Printer Stats" + LSTR MSG_INFO_BOARD_MENU = _UxGT("セイギョケイジョウホウ"); // "Board Info" + LSTR MSG_INFO_THERMISTOR_MENU = _UxGT("サーミスター"); // "Thermistors" + LSTR MSG_INFO_EXTRUDERS = _UxGT("エクストルーダースウ"); // "Extruders" + LSTR MSG_INFO_BAUDRATE = _UxGT("ボーレート"); // "Baud" + LSTR MSG_INFO_PROTOCOL = _UxGT("プロトコル"); // "Protocol" + LSTR MSG_CASE_LIGHT = _UxGT("キョウタイナイショウメイ"); // "Case light" + LSTR MSG_INFO_PRINT_COUNT = _UxGT("プリントスウ "); // "Print Count" + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("カンリョウスウ"); // "Completed" + LSTR MSG_INFO_PRINT_TIME = _UxGT("プリントジカンルイケイ"); // "Total print time" + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("サイチョウプリントジカン"); // "Longest job time" + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("フィラメントシヨウリョウルイケイ"); // "Extruded total" + LSTR MSG_INFO_MIN_TEMP = _UxGT("セッテイサイテイオン"); // "Min Temp" + LSTR MSG_INFO_MAX_TEMP = _UxGT("セッテイサイコウオン"); // "Max Temp" + LSTR MSG_INFO_PSU = _UxGT("デンゲンシュベツ"); // "Power Supply" + LSTR MSG_DRIVE_STRENGTH = _UxGT("モータークドウリョク"); // "Drive Strength" + LSTR MSG_DAC_PERCENT_N = _UxGT("@ DACシュツリョク %"); // "@ Driver %" + LSTR MSG_DAC_EEPROM_WRITE = _UxGT("EEPROMヘホゾン"); // "Store memory" LSTR MSG_FILAMENT_CHANGE_HEADER_PAUSE = _UxGT("イチジテイシ"); - LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("プリントサイカイ"); // "Resume print" - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("コウカンヲカイシシマス", "シバラクオマチクダサイ")); // "Wait for start of the filament" - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("フィラメントヌキダシチュウ", "シバラクオマチクダサイ")); // "Wait for filament unload" - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_2_LINE("フィラメントヲソウニュウシ,", "クリックスルトゾッコウシマス")); // "Insert filament and press button" - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("フィラメントソウテンチュウ", "シバラクオマチクダサイ")); // "Wait for filament load" - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("プリントヲサイカイシマス", "シバラクオマチクダサイ")); // "Wait for print to resume" + LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("プリントサイカイ"); // "Resume print" + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("コウカンヲカイシシマス", "シバラクオマチクダサイ")); // "Wait for start of the filament" + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("フィラメントヌキダシチュウ", "シバラクオマチクダサイ")); // "Wait for filament unload" + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_2_LINE("フィラメントヲソウニュウシ,", "クリックスルトゾッコウシマス")); // "Insert filament and press button" + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("フィラメントソウテンチュウ", "シバラクオマチクダサイ")); // "Wait for filament load" + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("プリントヲサイカイシマス", "シバラクオマチクダサイ")); // "Wait for print to resume" - LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("マチガッタプリンター"); // "Wrong printer" + LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("マチガッタプリンター"); // "Wrong printer" LSTR MSG_CONFIGURATION = _UxGT("セッテイカンリ"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("ショウサイセッテイ"); diff --git a/Marlin/src/lcd/language/language_ko_KR.h b/Marlin/src/lcd/language/language_ko_KR.h index e52ced2dad6f..27be03734492 100644 --- a/Marlin/src/lcd/language/language_ko_KR.h +++ b/Marlin/src/lcd/language/language_ko_KR.h @@ -88,7 +88,7 @@ namespace Language_ko_KR { LSTR MSG_LOAD_EEPROM = _UxGT("설정 읽어오기"); LSTR MSG_RESTORE_DEFAULTS = _UxGT("설정 되돌리기"); LSTR MSG_INIT_EEPROM = _UxGT("EEPROM 초기화"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("새로고침"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("새로고침"); LSTR MSG_INFO_SCREEN = _UxGT("처음으로"); LSTR MSG_PREPARE = _UxGT("준비하기"); LSTR MSG_PAUSE_PRINT = _UxGT("일시정지"); diff --git a/Marlin/src/lcd/language/language_nl.h b/Marlin/src/lcd/language/language_nl.h index d708135fac0a..bc60d19946bd 100644 --- a/Marlin/src/lcd/language/language_nl.h +++ b/Marlin/src/lcd/language/language_nl.h @@ -113,7 +113,7 @@ namespace Language_nl { LSTR MSG_TEMPERATURE = _UxGT("Temperatuur"); LSTR MSG_MOTION = _UxGT("Beweging"); LSTR MSG_FILAMENT = _UxGT("Filament"); - LSTR MSG_ADVANCE_K = _UxGT("Advance K"); // accepted english dutch + LSTR MSG_ADVANCE_K = _UxGT("Advance K"); // accepted english dutch LSTR MSG_ADVANCE_K_E = _UxGT("Advance K *"); // accepted english dutch LSTR MSG_VOLUMETRIC_ENABLED = _UxGT("E in mm") SUPERSCRIPT_THREE; LSTR MSG_FILAMENT_DIAM = _UxGT("Fil. Dia."); @@ -122,7 +122,7 @@ namespace Language_nl { LSTR MSG_STORE_EEPROM = _UxGT("Geheugen opslaan"); LSTR MSG_LOAD_EEPROM = _UxGT("Geheugen laden"); LSTR MSG_RESTORE_DEFAULTS = _UxGT("Noodstop reset"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Ververs"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Ververs"); LSTR MSG_INFO_SCREEN = _UxGT("Info scherm"); LSTR MSG_PREPARE = _UxGT("Voorbereiden"); LSTR MSG_TUNE = _UxGT("Afstellen"); @@ -137,7 +137,7 @@ namespace Language_nl { LSTR MSG_NO_MOVE = _UxGT("Geen beweging."); LSTR MSG_KILLED = _UxGT("Afgebroken. "); LSTR MSG_STOPPED = _UxGT("Gestopt. "); - LSTR MSG_CONTROL_RETRACT = _UxGT("Retract mm"); // accepted English term in Dutch + LSTR MSG_CONTROL_RETRACT = _UxGT("Retract mm"); // accepted English term in Dutch LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Ruil Retract mm"); LSTR MSG_CONTROL_RETRACTF = _UxGT("Retract F"); LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("Hop mm"); @@ -153,7 +153,7 @@ namespace Language_nl { LSTR MSG_BLTOUCH_SELFTEST = _UxGT("BLTouch Zelf-Test"); LSTR MSG_BLTOUCH_RESET = _UxGT("Reset BLTouch"); LSTR MSG_HOME_FIRST = _UxGT("Home %s Eerst"); - LSTR MSG_ZPROBE_ZOFFSET = _UxGT("Z Offset"); // accepted English term in Dutch + LSTR MSG_ZPROBE_ZOFFSET = _UxGT("Z Offset"); // accepted English term in Dutch LSTR MSG_BABYSTEP_X = _UxGT("Babystap X"); LSTR MSG_BABYSTEP_Y = _UxGT("Babystap Y"); LSTR MSG_BABYSTEP_Z = _UxGT("Babystap Z"); @@ -196,7 +196,7 @@ namespace Language_nl { LSTR MSG_INFO_MIN_TEMP = _UxGT("Min Temp"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Max Temp"); - LSTR MSG_INFO_PSU = _UxGT("PSU"); // accepted English term in Dutch + LSTR MSG_INFO_PSU = _UxGT("PSU"); // accepted English term in Dutch LSTR MSG_DRIVE_STRENGTH = _UxGT("Motorstroom"); diff --git a/Marlin/src/lcd/language/language_pl.h b/Marlin/src/lcd/language/language_pl.h index 855a1e3bd167..8aa12d903d21 100644 --- a/Marlin/src/lcd/language/language_pl.h +++ b/Marlin/src/lcd/language/language_pl.h @@ -306,7 +306,7 @@ namespace Language_pl { LSTR MSG_INIT_EEPROM = _UxGT("Initializuj EEPROM"); LSTR MSG_MEDIA_UPDATE = _UxGT("Uaktualnij kartę"); LSTR MSG_RESET_PRINTER = _UxGT("Resetuj drukarkę"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Odswież"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Odswież"); LSTR MSG_INFO_SCREEN = _UxGT("Ekran główny"); LSTR MSG_PREPARE = _UxGT("Przygotuj"); LSTR MSG_TUNE = _UxGT("Strojenie"); diff --git a/Marlin/src/lcd/language/language_pt_br.h b/Marlin/src/lcd/language/language_pt_br.h index 4ace61e11691..81344b60c4a6 100644 --- a/Marlin/src/lcd/language/language_pt_br.h +++ b/Marlin/src/lcd/language/language_pt_br.h @@ -274,7 +274,7 @@ namespace Language_pt_br { LSTR MSG_INIT_EEPROM = _UxGT("Iniciar EEPROM"); LSTR MSG_MEDIA_UPDATE = _UxGT("Atualiz. SD"); LSTR MSG_RESET_PRINTER = _UxGT("Resetar Impressora"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Atualização"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Atualização"); LSTR MSG_INFO_SCREEN = _UxGT("Informações"); LSTR MSG_PREPARE = _UxGT("Preparar"); LSTR MSG_TUNE = _UxGT("Ajustar"); diff --git a/Marlin/src/lcd/language/language_ro.h b/Marlin/src/lcd/language/language_ro.h index 75f27c1ecf9b..b4f7550a7fa5 100644 --- a/Marlin/src/lcd/language/language_ro.h +++ b/Marlin/src/lcd/language/language_ro.h @@ -323,7 +323,7 @@ namespace Language_ro { LSTR MSG_SETTINGS_STORED = _UxGT("Settings Stored"); LSTR MSG_MEDIA_UPDATE = _UxGT("Media Update"); LSTR MSG_RESET_PRINTER = _UxGT("Reset Imprimanta"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Refresh"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Refresh"); LSTR MSG_INFO_SCREEN = _UxGT("Info Screen"); LSTR MSG_PREPARE = _UxGT("Prepare"); LSTR MSG_TUNE = _UxGT("Tune"); diff --git a/Marlin/src/lcd/language/language_sk.h b/Marlin/src/lcd/language/language_sk.h index 572e7fe9eaf8..c7b2cef0d10c 100644 --- a/Marlin/src/lcd/language/language_sk.h +++ b/Marlin/src/lcd/language/language_sk.h @@ -457,7 +457,7 @@ namespace Language_sk { LSTR MSG_SETTINGS_STORED = _UxGT("Nastavenie uložené"); LSTR MSG_MEDIA_UPDATE = _UxGT("Aktualiz. z karty"); LSTR MSG_RESET_PRINTER = _UxGT("Reštart. tlačiar."); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Obnoviť"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Obnoviť"); LSTR MSG_INFO_SCREEN = _UxGT("Info. obrazovka"); LSTR MSG_INFO_MACHINENAME = _UxGT("Názov stroja"); LSTR MSG_INFO_SIZE = _UxGT("Rozmer"); diff --git a/Marlin/src/lcd/language/language_tr.h b/Marlin/src/lcd/language/language_tr.h index 5fc78758d4f1..5be21c9c565f 100644 --- a/Marlin/src/lcd/language/language_tr.h +++ b/Marlin/src/lcd/language/language_tr.h @@ -436,7 +436,7 @@ namespace Language_tr { LSTR MSG_SETTINGS_STORED = _UxGT("Ayarlar Kaydedildi"); LSTR MSG_MEDIA_UPDATE = _UxGT("SD Güncellemesi"); LSTR MSG_RESET_PRINTER = _UxGT("Yazıcıyı Resetle"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Yenile"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Yenile"); LSTR MSG_INFO_SCREEN = _UxGT("Bilgi Ekranı"); LSTR MSG_INFO_MACHINENAME = _UxGT("Makine Adı"); LSTR MSG_INFO_SIZE = _UxGT("Boyut"); diff --git a/Marlin/src/lcd/language/language_uk.h b/Marlin/src/lcd/language/language_uk.h index 3a644a0b34c9..7a7f4a5f4445 100644 --- a/Marlin/src/lcd/language/language_uk.h +++ b/Marlin/src/lcd/language/language_uk.h @@ -480,7 +480,7 @@ namespace Language_uk { LSTR MSG_POWER = _UxGT("Потужність"); LSTR MSG_START_PRINT = _UxGT("Почати друк"); - LSTR MSG_BUTTON_NEXT = _UxGT("Далі"); //short text for buttons + LSTR MSG_BUTTON_NEXT = _UxGT("Далі"); //short text for buttons LSTR MSG_BUTTON_INIT = _UxGT("Ініц-я"); LSTR MSG_BUTTON_STOP = _UxGT("Зупинка"); LSTR MSG_BUTTON_PRINT = _UxGT("Друк"); diff --git a/Marlin/src/lcd/language/language_vi.h b/Marlin/src/lcd/language/language_vi.h index 5795c58a1ea7..2ce22961ca73 100644 --- a/Marlin/src/lcd/language/language_vi.h +++ b/Marlin/src/lcd/language/language_vi.h @@ -43,7 +43,7 @@ namespace Language_vi { LSTR MSG_MEDIA_USB_REMOVED = _UxGT("USB được rút ra"); LSTR MSG_MEDIA_USB_FAILED = _UxGT("USB khởi thất bại"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Công tắc"); // Endstops - công tắc hành trình - LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Công tắc mềm"); // soft Endstops + LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Công tắc mềm"); // Soft Endstops LSTR MSG_MAIN_MENU = _UxGT("Chính"); // Main LSTR MSG_ADVANCED_SETTINGS = _UxGT("Thiết lập cấp cao"); // Advanced Settings LSTR MSG_CONFIGURATION = _UxGT("Cấu hình"); // Configuration @@ -52,9 +52,9 @@ namespace Language_vi { LSTR MSG_DEBUG_MENU = _UxGT("Menu gỡ lỗi"); // Debug Menu LSTR MSG_PROGRESS_BAR_TEST = _UxGT("Kiểm tra tiến độ"); // Progress bar test LSTR MSG_AUTO_HOME = _UxGT("Về nhà tự động"); // Auto home - LSTR MSG_AUTO_HOME_X = _UxGT("Về nhà X"); // home X - LSTR MSG_AUTO_HOME_Y = _UxGT("Về nhà Y"); // home Y - LSTR MSG_AUTO_HOME_Z = _UxGT("Về nhà Z"); // home Z + LSTR MSG_AUTO_HOME_X = _UxGT("Về nhà X"); // Home X + LSTR MSG_AUTO_HOME_Y = _UxGT("Về nhà Y"); // Home Y + LSTR MSG_AUTO_HOME_Z = _UxGT("Về nhà Z"); // Home Z LSTR MSG_AUTO_Z_ALIGN = _UxGT("Chỉnh canh Z tự động"); LSTR MSG_LEVEL_BED_HOMING = _UxGT("Đang về nhà XYZ"); // Homing XYZ LSTR MSG_LEVEL_BED_WAITING = _UxGT("Nhấn để bắt đầu"); // Click to Begin @@ -68,17 +68,17 @@ namespace Language_vi { LSTR MSG_PREHEAT_1_H = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" trước ~"); // Preheat LSTR MSG_PREHEAT_1_END = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Đầu"); LSTR MSG_PREHEAT_1_END_E = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Đầu ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Tất cả"); // all - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Bàn"); // bed -- using vietnamese term for 'table' instead - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Cấu hình"); // conf + LSTR MSG_PREHEAT_1_ALL = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Tất cả"); // All + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Bàn"); // Bed -- using vietnamese term for 'table' instead + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Cấu hình"); // Conf - LSTR MSG_PREHEAT_M = _UxGT("Làm nóng $ trước"); // Preheat - LSTR MSG_PREHEAT_M_H = _UxGT("Làm nóng $ trước ~"); // Preheat + LSTR MSG_PREHEAT_M = _UxGT("Làm nóng $ trước"); // Preheat + LSTR MSG_PREHEAT_M_H = _UxGT("Làm nóng $ trước ~"); // Preheat LSTR MSG_PREHEAT_M_END = _UxGT("Làm nóng $ Đầu"); LSTR MSG_PREHEAT_M_END_E = _UxGT("Làm nóng $ Đầu ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Làm nóng $ Tất cả"); // all - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Làm nóng $ Bàn"); // bed -- using vietnamese term for 'table' instead - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Làm nóng $ Cấu hình"); // conf + LSTR MSG_PREHEAT_M_ALL = _UxGT("Làm nóng $ Tất cả"); // All + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Làm nóng $ Bàn"); // Bed -- using vietnamese term for 'table' instead + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Làm nóng $ Cấu hình"); // Conf #endif LSTR MSG_PREHEAT_CUSTOM = _UxGT("Sự nóng trước tự chọn"); // Preheat Custom LSTR MSG_COOLDOWN = _UxGT("Nguội xuống"); // Cooldown @@ -112,7 +112,7 @@ namespace Language_vi { LSTR MSG_UBL_BC_INSERT = _UxGT("Đặt chêm và đo"); // Place shim & measure LSTR MSG_UBL_BC_INSERT2 = _UxGT("Đo"); // Measure LSTR MSG_UBL_BC_REMOVE = _UxGT("Tháo và đo bàn"); // Remove & measure bed - LSTR MSG_UBL_MOVING_TO_NEXT = _UxGT("Chuyển sang tiếp theo"); // moving to next + LSTR MSG_UBL_MOVING_TO_NEXT = _UxGT("Chuyển sang tiếp theo"); // Moving to next LSTR MSG_UBL_ACTIVATE_MESH = _UxGT("Bật UBL"); LSTR MSG_UBL_DEACTIVATE_MESH = _UxGT("Tắt UBL"); LSTR MSG_UBL_SET_TEMP_BED = _UxGT("Nhiệt độ bàn"); // Bed Temp @@ -133,7 +133,7 @@ namespace Language_vi { LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("Điều chỉnh chiều cao lưới"); // Adjust Mesh Height LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("Số lượng chiều cao"); // Height Amount LSTR MSG_UBL_VALIDATE_MESH_MENU = _UxGT("Thẩm tra lưới"); // Validate Mesh - LSTR MSG_UBL_VALIDATE_CUSTOM_MESH = _UxGT("Thẩm tra lưới tự chọn"); // validate custom mesh + LSTR MSG_UBL_VALIDATE_CUSTOM_MESH = _UxGT("Thẩm tra lưới tự chọn"); // Validate custom mesh LSTR MSG_UBL_CONTINUE_MESH = _UxGT("Tiếp tục xây lưới bàn"); // Continue Bed Mesh LSTR MSG_UBL_MESH_LEVELING = _UxGT("Đang san lấp lưới"); // Mesh Leveling LSTR MSG_UBL_3POINT_MESH_LEVELING = _UxGT("Đang san lấp 3-điểm"); // 3-Point Leveling @@ -210,20 +210,20 @@ namespace Language_vi { LSTR MSG_MESH_Z_OFFSET = _UxGT("Z Bàn"); LSTR MSG_NOZZLE = _UxGT("Đầu phun"); // Nozzle LSTR MSG_NOZZLE_N = _UxGT("Đầu phun ~"); - LSTR MSG_BED = _UxGT("Bàn"); // bed - LSTR MSG_FAN_SPEED = _UxGT("Tốc độ quạt"); // fan speed + LSTR MSG_BED = _UxGT("Bàn"); // Bed + LSTR MSG_FAN_SPEED = _UxGT("Tốc độ quạt"); // Fan speed LSTR MSG_FAN_SPEED_N = _UxGT("Tốc độ quạt ~"); LSTR MSG_EXTRA_FAN_SPEED = _UxGT("Tốc độ quạt phụ"); // Extra fan speed LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("Tốc độ quạt phụ ~"); LSTR MSG_FLOW = _UxGT("Lưu Lượng"); LSTR MSG_FLOW_N = _UxGT("Lưu Lượng ~"); LSTR MSG_CONTROL = _UxGT("Điều khiển"); // Control - LSTR MSG_MIN = " " LCD_STR_THERMOMETER _UxGT(" Đa"); // min - LSTR MSG_MAX = " " LCD_STR_THERMOMETER _UxGT(" Thiểu"); - LSTR MSG_FACTOR = " " LCD_STR_THERMOMETER _UxGT(" Hệ Số"); // factor + LSTR MSG_MIN = " " LCD_STR_THERMOMETER _UxGT(" Đa"); // Min + LSTR MSG_MAX = " " LCD_STR_THERMOMETER _UxGT(" Thiểu"); // Max + LSTR MSG_FACTOR = " " LCD_STR_THERMOMETER _UxGT(" Hệ Số"); // Factor LSTR MSG_AUTOTEMP = _UxGT("Nhiệt độ tự động"); // Autotemp - LSTR MSG_LCD_ON = _UxGT("Bật"); // on - LSTR MSG_LCD_OFF = _UxGT("Tắt"); // off + LSTR MSG_LCD_ON = _UxGT("Bật"); // On + LSTR MSG_LCD_OFF = _UxGT("Tắt"); // Off LSTR MSG_SELECT_E = _UxGT("Lựa *"); LSTR MSG_ACC = _UxGT("Tăng Tốc"); LSTR MSG_JERK = _UxGT("Giật"); @@ -233,8 +233,8 @@ namespace Language_vi { LSTR MSG_VN_JERK = _UxGT("Giật-V@"); LSTR MSG_VE_JERK = _UxGT("Giật-Ve"); LSTR MSG_JUNCTION_DEVIATION = _UxGT("Độ Lệch Chỗ Giao"); // Junction Dev - LSTR MSG_MAX_SPEED = _UxGT("Vận tốc"); // velocity - LSTR MSG_VMAX_A = _UxGT("Vđa") STR_A; // Vmax + LSTR MSG_MAX_SPEED = _UxGT("Vận tốc"); // Velocity + LSTR MSG_VMAX_A = _UxGT("Vđa") STR_A; // Vmax LSTR MSG_VMAX_B = _UxGT("Vđa") STR_B; LSTR MSG_VMAX_C = _UxGT("Vđa") STR_C; LSTR MSG_VMAX_N = _UxGT("Vđa@"); @@ -243,162 +243,162 @@ namespace Language_vi { LSTR MSG_VMIN = _UxGT("Vthiểu"); // Vmin LSTR MSG_VTRAV_MIN = _UxGT("Vchuyển thiểu"); // VTrav min LSTR MSG_ACCELERATION = _UxGT("Sự tăng tốc"); // Acceleration - LSTR MSG_AMAX_A = _UxGT("Tăng tốc ca") STR_A; // Amax + LSTR MSG_AMAX_A = _UxGT("Tăng tốc ca") STR_A; // Amax LSTR MSG_AMAX_B = _UxGT("Tăng tốc ca") STR_B; LSTR MSG_AMAX_C = _UxGT("Tăng tốc ca") STR_C; LSTR MSG_AMAX_N = _UxGT("Tăng tốc ca@"); LSTR MSG_AMAX_E = _UxGT("Tăng tốc caE"); LSTR MSG_AMAX_EN = _UxGT("Tăng tốc ca *"); - LSTR MSG_A_RETRACT = _UxGT("TT-Rút"); // A-retract - LSTR MSG_A_TRAVEL = _UxGT("TT-Chuyển"); // A-travel - LSTR MSG_STEPS_PER_MM = _UxGT("Bước/mm"); // Steps - LSTR MSG_A_STEPS = _UxGT("Bước") STR_A _UxGT("/mm"); // Steps/mm + LSTR MSG_A_RETRACT = _UxGT("TT-Rút"); // A-retract + LSTR MSG_A_TRAVEL = _UxGT("TT-Chuyển"); // A-travel + LSTR MSG_STEPS_PER_MM = _UxGT("Bước/mm"); // Steps + LSTR MSG_A_STEPS = _UxGT("Bước") STR_A _UxGT("/mm"); // Steps/mm LSTR MSG_B_STEPS = _UxGT("Bước") STR_B _UxGT("/mm"); LSTR MSG_C_STEPS = _UxGT("Bước") STR_C _UxGT("/mm"); LSTR MSG_N_STEPS = _UxGT("Bước@/mm"); LSTR MSG_E_STEPS = _UxGT("BướcE/mm"); LSTR MSG_EN_STEPS = _UxGT("Bước */mm"); - LSTR MSG_TEMPERATURE = _UxGT("Nhiệt độ"); // Temperature - LSTR MSG_MOTION = _UxGT("Chuyển động"); // Motion - LSTR MSG_FILAMENT = _UxGT("Vật liệu in"); // dây nhựa - LSTR MSG_VOLUMETRIC_ENABLED = _UxGT("E bằng mm") SUPERSCRIPT_THREE; // E in mm - LSTR MSG_FILAMENT_DIAM = _UxGT("Đường kính nhựa"); // Fil. Dai. + LSTR MSG_TEMPERATURE = _UxGT("Nhiệt độ"); // Temperature + LSTR MSG_MOTION = _UxGT("Chuyển động"); // Motion + LSTR MSG_FILAMENT = _UxGT("Vật liệu in"); // Dây nhựa + LSTR MSG_VOLUMETRIC_ENABLED = _UxGT("E bằng mm") SUPERSCRIPT_THREE; // E in mm + LSTR MSG_FILAMENT_DIAM = _UxGT("Đường kính nhựa"); // Fil. Dai. LSTR MSG_FILAMENT_DIAM_E = _UxGT("Đường kính nhựa *"); - LSTR MSG_FILAMENT_UNLOAD = _UxGT("Dỡ mm"); // unload mm + LSTR MSG_FILAMENT_UNLOAD = _UxGT("Dỡ mm"); // Unload mm LSTR MSG_FILAMENT_LOAD = _UxGT("Nạp mm"); - LSTR MSG_ADVANCE_K = _UxGT("K Cấp Cao"); // Advance K - LSTR MSG_ADVANCE_K_E = _UxGT("K Cấp Cao *"); // Advance K - LSTR MSG_CONTRAST = _UxGT("Độ tương phản LCD"); // LCD contrast - LSTR MSG_STORE_EEPROM = _UxGT("Lưu các thiết lập"); // Store settings - LSTR MSG_LOAD_EEPROM = _UxGT("Tải các cài đặt"); // Load settings - LSTR MSG_RESTORE_DEFAULTS = _UxGT("Khôi phục phòng hư"); // Restore Defaults - LSTR MSG_INIT_EEPROM = _UxGT("Khởi Tạo EEPROM"); // Initialize EEPROM - LSTR MSG_MEDIA_UPDATE = _UxGT("Cập Nhật phương tiện"); // Update media + LSTR MSG_ADVANCE_K = _UxGT("K Cấp Cao"); // Advance K + LSTR MSG_ADVANCE_K_E = _UxGT("K Cấp Cao *"); // Advance K + LSTR MSG_CONTRAST = _UxGT("Độ tương phản LCD"); // LCD contrast + LSTR MSG_STORE_EEPROM = _UxGT("Lưu các thiết lập"); // Store settings + LSTR MSG_LOAD_EEPROM = _UxGT("Tải các cài đặt"); // Load settings + LSTR MSG_RESTORE_DEFAULTS = _UxGT("Khôi phục phòng hư"); // Restore Defaults + LSTR MSG_INIT_EEPROM = _UxGT("Khởi Tạo EEPROM"); // Initialize EEPROM + LSTR MSG_MEDIA_UPDATE = _UxGT("Cập Nhật phương tiện"); // Update media LSTR MSG_RESET_PRINTER = _UxGT("Bặt Lại Máy In"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Cập Nhật"); // Refresh - LSTR MSG_INFO_SCREEN = _UxGT("Màn Hình Thông Tin"); // Info screen - LSTR MSG_PREPARE = _UxGT("Chuẩn bị"); // Prepare - LSTR MSG_TUNE = _UxGT("Điều Chỉnh"); // Tune - LSTR MSG_PAUSE_PRINT = _UxGT("Tạm dừng in"); // Pause print - LSTR MSG_RESUME_PRINT = _UxGT("Tiếp tục in"); // Resume print - LSTR MSG_STOP_PRINT = _UxGT("Ngừng in"); // Stop print - LSTR MSG_OUTAGE_RECOVERY = _UxGT("Phục Hồi Mất Điện"); // Outage Recovery - LSTR MSG_MEDIA_MENU = _UxGT("In từ phương tiện"); // Print from media - LSTR MSG_NO_MEDIA = _UxGT("Không có phương tiện"); // No media - LSTR MSG_DWELL = _UxGT("Ngủ..."); // Sleep - LSTR MSG_USERWAIT = _UxGT("Nhấn để tiếp tục..."); // Click to resume (same as 'continue') - LSTR MSG_PRINT_PAUSED = _UxGT("In tạm dừng"); // print paused - LSTR MSG_PRINTING = _UxGT("Đang in..."); // printing - LSTR MSG_PRINT_ABORTED = _UxGT("In đã hủy bỏ"); // Print aborted - LSTR MSG_NO_MOVE = _UxGT("Không di chuyển."); // No move. + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Cập Nhật"); // Refresh + LSTR MSG_INFO_SCREEN = _UxGT("Màn Hình Thông Tin"); // Info screen + LSTR MSG_PREPARE = _UxGT("Chuẩn bị"); // Prepare + LSTR MSG_TUNE = _UxGT("Điều Chỉnh"); // Tune + LSTR MSG_PAUSE_PRINT = _UxGT("Tạm dừng in"); // Pause print + LSTR MSG_RESUME_PRINT = _UxGT("Tiếp tục in"); // Resume print + LSTR MSG_STOP_PRINT = _UxGT("Ngừng in"); // Stop print + LSTR MSG_OUTAGE_RECOVERY = _UxGT("Phục Hồi Mất Điện"); // Outage Recovery + LSTR MSG_MEDIA_MENU = _UxGT("In từ phương tiện"); // Print from media + LSTR MSG_NO_MEDIA = _UxGT("Không có phương tiện"); // No media + LSTR MSG_DWELL = _UxGT("Ngủ..."); // Sleep + LSTR MSG_USERWAIT = _UxGT("Nhấn để tiếp tục..."); // Click to resume (same as 'continue') + LSTR MSG_PRINT_PAUSED = _UxGT("In tạm dừng"); // Print paused + LSTR MSG_PRINTING = _UxGT("Đang in..."); // Printing + LSTR MSG_PRINT_ABORTED = _UxGT("In đã hủy bỏ"); // Print aborted + LSTR MSG_NO_MOVE = _UxGT("Không di chuyển."); // No move. LSTR MSG_KILLED = _UxGT("ĐÃ CHẾT. "); LSTR MSG_STOPPED = _UxGT("ĐÃ NGỪNG. "); - LSTR MSG_CONTROL_RETRACT = _UxGT("Rút mm"); // Retract mm - LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Rút Trao.mm"); // Swap Re.mm + LSTR MSG_CONTROL_RETRACT = _UxGT("Rút mm"); // Retract mm + LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Rút Trao.mm"); // Swap Re.mm LSTR MSG_CONTROL_RETRACTF = _UxGT("Rút V"); - LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("Nhảy mm"); // hop - LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("BỏRút mm"); // Unretr. mm - LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("BỏRút T mm"); // S Unretr. mm - LSTR MSG_CONTROL_RETRACT_RECOVERF = _UxGT("BỏRút V"); // UnRet V - LSTR MSG_CONTROL_RETRACT_RECOVER_SWAPF = _UxGT("BỏRút T V"); // S UnRet V - LSTR MSG_AUTORETRACT = _UxGT("RútTựĐộng"); // Auto-Retract - LSTR MSG_FILAMENT_SWAP_LENGTH = _UxGT("Khoảng Cách Rút"); // Retract Distance - LSTR MSG_TOOL_CHANGE = _UxGT("Thay Đổi Công Cụ"); // Tool Change - LSTR MSG_TOOL_CHANGE_ZLIFT = _UxGT("Đưa Lên Z"); // Z Raise - LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("Tốc Độ Tuôn Ra"); // Prime Speed - LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("Tốc Độ Rút Lại"); // Retract Speed - LSTR MSG_FILAMENTCHANGE = _UxGT("Thay dây nhựa"); // change filament - LSTR MSG_FILAMENTCHANGE_E = _UxGT("Thay dây nhựa *"); // change filament - LSTR MSG_FILAMENTLOAD = _UxGT("Nạp dây nhựa"); // load filament - LSTR MSG_FILAMENTLOAD_E = _UxGT("Nạp dây nhựa *"); // load filament - LSTR MSG_FILAMENTUNLOAD = _UxGT("Dỡ dây nhựa"); // unload filament - LSTR MSG_FILAMENTUNLOAD_E = _UxGT("Dỡ dây nhựa *"); // unload filament - LSTR MSG_FILAMENTUNLOAD_ALL = _UxGT("Dỡ tất cả"); // Unload All - LSTR MSG_ATTACH_MEDIA = _UxGT("Khởi tạo phương tiện"); // Attach media - LSTR MSG_CHANGE_MEDIA = _UxGT("Thay phương tiện"); // Change midea + LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("Nhảy mm"); // Hop + LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("BỏRút mm"); // Unretr. mm + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("BỏRút T mm"); // S Unretr. mm + LSTR MSG_CONTROL_RETRACT_RECOVERF = _UxGT("BỏRút V"); // UnRet V + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAPF = _UxGT("BỏRút T V"); // S UnRet V + LSTR MSG_AUTORETRACT = _UxGT("RútTựĐộng"); // Auto-Retract + LSTR MSG_FILAMENT_SWAP_LENGTH = _UxGT("Khoảng Cách Rút"); // Retract Distance + LSTR MSG_TOOL_CHANGE = _UxGT("Thay Đổi Công Cụ"); // Tool Change + LSTR MSG_TOOL_CHANGE_ZLIFT = _UxGT("Đưa Lên Z"); // Z Raise + LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("Tốc Độ Tuôn Ra"); // Prime Speed + LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("Tốc Độ Rút Lại"); // Retract Speed + LSTR MSG_FILAMENTCHANGE = _UxGT("Thay dây nhựa"); // Change filament + LSTR MSG_FILAMENTCHANGE_E = _UxGT("Thay dây nhựa *"); // Change filament + LSTR MSG_FILAMENTLOAD = _UxGT("Nạp dây nhựa"); // Load filament + LSTR MSG_FILAMENTLOAD_E = _UxGT("Nạp dây nhựa *"); // Load filament + LSTR MSG_FILAMENTUNLOAD = _UxGT("Dỡ dây nhựa"); // Unload filament + LSTR MSG_FILAMENTUNLOAD_E = _UxGT("Dỡ dây nhựa *"); // Unload filament + LSTR MSG_FILAMENTUNLOAD_ALL = _UxGT("Dỡ tất cả"); // Unload All + LSTR MSG_ATTACH_MEDIA = _UxGT("Khởi tạo phương tiện"); // Attach media + LSTR MSG_CHANGE_MEDIA = _UxGT("Thay phương tiện"); // Change midea LSTR MSG_RELEASE_MEDIA = _UxGT("Phát hành phương tiện"); - LSTR MSG_ZPROBE_OUT = _UxGT("Đầu Dò Z qua bàn"); // Z Probe past bed - LSTR MSG_SKEW_FACTOR = _UxGT("Hệ số nghiêng"); // Skew Factor - LSTR MSG_BLTOUCH = _UxGT("BLTOUCH"); // BLTouch - LSTR MSG_BLTOUCH_SELFTEST = _UxGT("Tự kiểm tra BLTOUCH "); // BLTouch Self-Test - LSTR MSG_BLTOUCH_RESET = _UxGT("Bặt lại BLTouch"); // Reset BLTouch - LSTR MSG_BLTOUCH_DEPLOY = _UxGT("Đem BLTouch"); // Deploy BLTouch - LSTR MSG_BLTOUCH_STOW = _UxGT("Cất BLTouch"); // Stow BLTouch - LSTR MSG_MANUAL_DEPLOY = _UxGT("Đem Đầu Dò-Z"); // Deploy Z-Probe - LSTR MSG_MANUAL_STOW = _UxGT("Cất Đầu Dò-Z"); // Stow Z-Probe + LSTR MSG_ZPROBE_OUT = _UxGT("Đầu Dò Z qua bàn"); // Z Probe past bed + LSTR MSG_SKEW_FACTOR = _UxGT("Hệ số nghiêng"); // Skew Factor + LSTR MSG_BLTOUCH = _UxGT("BLTOUCH"); // BLTouch + LSTR MSG_BLTOUCH_SELFTEST = _UxGT("Tự kiểm tra BLTOUCH "); // BLTouch Self-Test + LSTR MSG_BLTOUCH_RESET = _UxGT("Bặt lại BLTouch"); // Reset BLTouch + LSTR MSG_BLTOUCH_DEPLOY = _UxGT("Đem BLTouch"); // Deploy BLTouch + LSTR MSG_BLTOUCH_STOW = _UxGT("Cất BLTouch"); // Stow BLTouch + LSTR MSG_MANUAL_DEPLOY = _UxGT("Đem Đầu Dò-Z"); // Deploy Z-Probe + LSTR MSG_MANUAL_STOW = _UxGT("Cất Đầu Dò-Z"); // Stow Z-Probe LSTR MSG_HOME_FIRST = _UxGT("Về nhà %s Trước"); - LSTR MSG_ZPROBE_ZOFFSET = _UxGT("Đầu Dò Bù Đắp Z"); // Probe Z Offset - LSTR MSG_BABYSTEP_X = _UxGT("Nhít X"); // Babystep X + LSTR MSG_ZPROBE_ZOFFSET = _UxGT("Đầu Dò Bù Đắp Z"); // Probe Z Offset + LSTR MSG_BABYSTEP_X = _UxGT("Nhít X"); // Babystep X LSTR MSG_BABYSTEP_Y = _UxGT("Nhít Y"); LSTR MSG_BABYSTEP_Z = _UxGT("Nhít Z"); LSTR MSG_BABYSTEP_N = _UxGT("Nhít @"); - LSTR MSG_ENDSTOP_ABORT = _UxGT("Hủy bỏ công tắc"); // Endstop abort - LSTR MSG_HEATING_FAILED_LCD = _UxGT("Sưởi đầu phun không thành công"); // Heating failed - LSTR MSG_ERR_REDUNDANT_TEMP = _UxGT("Điều sai: nhiệt độ dư"); // Err: REDUNDANT TEMP - LSTR MSG_THERMAL_RUNAWAY = _UxGT("Vấn đề nhiệt"); // THERMAL RUNAWAY | problem - LSTR MSG_THERMAL_RUNAWAY_BED = _UxGT("Vấn đề nhiệt bàn"); // BED THERMAL RUNAWAY - LSTR MSG_ERR_MAXTEMP = _UxGT("Điều sai: nhiệt độ tối đa"); // Err: MAXTEMP - LSTR MSG_ERR_MINTEMP = _UxGT("Điều sai: nhiệt độ tối thiểu"); // Err: MINTEMP - LSTR MSG_HALTED = _UxGT("MÁY IN ĐÃ DỪNG LẠI"); // PRINTER HALTED - LSTR MSG_PLEASE_RESET = _UxGT("Xin bặt lại"); // Please reset - LSTR MSG_HEATING = _UxGT("Đang sưởi nóng..."); // heating - LSTR MSG_COOLING = _UxGT("Đang làm nguội..."); // cooling - LSTR MSG_BED_HEATING = _UxGT("Đang sưởi nong bàn..."); // bed heating - LSTR MSG_BED_COOLING = _UxGT("Đang làm nguội bàn..."); // bed cooling - LSTR MSG_DELTA_CALIBRATE = _UxGT("Cân Chỉnh Delta"); // Delta calibration + LSTR MSG_ENDSTOP_ABORT = _UxGT("Hủy bỏ công tắc"); // Endstop abort + LSTR MSG_HEATING_FAILED_LCD = _UxGT("Sưởi đầu phun không thành công"); // Heating failed + LSTR MSG_ERR_REDUNDANT_TEMP = _UxGT("Điều sai: nhiệt độ dư"); // Err: REDUNDANT TEMP + LSTR MSG_THERMAL_RUNAWAY = _UxGT("Vấn đề nhiệt"); // THERMAL RUNAWAY | problem + LSTR MSG_THERMAL_RUNAWAY_BED = _UxGT("Vấn đề nhiệt bàn"); // BED THERMAL RUNAWAY + LSTR MSG_ERR_MAXTEMP = _UxGT("Điều sai: nhiệt độ tối đa"); // Err: MAXTEMP + LSTR MSG_ERR_MINTEMP = _UxGT("Điều sai: nhiệt độ tối thiểu"); // Err: MINTEMP + LSTR MSG_HALTED = _UxGT("MÁY IN ĐÃ DỪNG LẠI"); // PRINTER HALTED + LSTR MSG_PLEASE_RESET = _UxGT("Xin bặt lại"); // Please reset + LSTR MSG_HEATING = _UxGT("Đang sưởi nóng..."); // Heating + LSTR MSG_COOLING = _UxGT("Đang làm nguội..."); // Cooling + LSTR MSG_BED_HEATING = _UxGT("Đang sưởi nong bàn..."); // Bed heating + LSTR MSG_BED_COOLING = _UxGT("Đang làm nguội bàn..."); // Bed cooling + LSTR MSG_DELTA_CALIBRATE = _UxGT("Cân Chỉnh Delta"); // Delta calibration LSTR MSG_DELTA_CALIBRATE_X = _UxGT("Chỉnh X lại"); LSTR MSG_DELTA_CALIBRATE_Y = _UxGT("Chỉnh Y lại"); LSTR MSG_DELTA_CALIBRATE_Z = _UxGT("Chỉnh Z lại"); - LSTR MSG_DELTA_CALIBRATE_CENTER = _UxGT("Chỉnh Z Center"); // Calibrate Center - LSTR MSG_DELTA_SETTINGS = _UxGT("Cài Đặt Delta"); // Delta Settings - LSTR MSG_DELTA_AUTO_CALIBRATE = _UxGT("Cân Chỉnh Tự Động"); // Auto Calibration - LSTR MSG_DELTA_DIAG_ROD = _UxGT("Gậy Chéo"); // Diag Rod - LSTR MSG_DELTA_HEIGHT = _UxGT("Chiều Cao"); // Height - LSTR MSG_DELTA_RADIUS = _UxGT("Bán Kính"); // Radius + LSTR MSG_DELTA_CALIBRATE_CENTER = _UxGT("Chỉnh Z Center"); // Calibrate Center + LSTR MSG_DELTA_SETTINGS = _UxGT("Cài Đặt Delta"); // Delta Settings + LSTR MSG_DELTA_AUTO_CALIBRATE = _UxGT("Cân Chỉnh Tự Động"); // Auto Calibration + LSTR MSG_DELTA_DIAG_ROD = _UxGT("Gậy Chéo"); // Diag Rod + LSTR MSG_DELTA_HEIGHT = _UxGT("Chiều Cao"); // Height + LSTR MSG_DELTA_RADIUS = _UxGT("Bán Kính"); // Radius LSTR MSG_INFO_MENU = _UxGT("Về Máy In"); - LSTR MSG_INFO_PRINTER_MENU = _UxGT("Thông Tin Máy In"); // Printer Info - LSTR MSG_3POINT_LEVELING = _UxGT("San lấp 3-Điểm"); // 3-Point Leveling - LSTR MSG_LINEAR_LEVELING = _UxGT("San Lấp Tuyến Tính"); // Linear Leveling - LSTR MSG_BILINEAR_LEVELING = _UxGT("San Lấp Song Tuyến"); // Bilinear Leveling - LSTR MSG_UBL_LEVELING = _UxGT("San Lấp Bàn Thống Nhất"); // Unified Bed Leveling - LSTR MSG_MESH_LEVELING = _UxGT("Lưới San Lấp"); // Mesh Leveling - LSTR MSG_INFO_STATS_MENU = _UxGT("Thống Kê Máy In"); // Printer Stats - LSTR MSG_INFO_BOARD_MENU = _UxGT("Thông Tin Bo Mạch"); // Board Info - LSTR MSG_INFO_THERMISTOR_MENU = _UxGT("Điện Trở Nhiệt"); // Thermistors - LSTR MSG_INFO_EXTRUDERS = _UxGT("Máy đùn"); // Extruders - LSTR MSG_INFO_BAUDRATE = _UxGT("Baud"); // Baud - LSTR MSG_INFO_PROTOCOL = _UxGT("Giao Thức"); // Protocol - LSTR MSG_CASE_LIGHT = _UxGT("Đèn Khuông"); // Case light - LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Độ Sáng"); // Light Brightness + LSTR MSG_INFO_PRINTER_MENU = _UxGT("Thông Tin Máy In"); // Printer Info + LSTR MSG_3POINT_LEVELING = _UxGT("San lấp 3-Điểm"); // 3-Point Leveling + LSTR MSG_LINEAR_LEVELING = _UxGT("San Lấp Tuyến Tính"); // Linear Leveling + LSTR MSG_BILINEAR_LEVELING = _UxGT("San Lấp Song Tuyến"); // Bilinear Leveling + LSTR MSG_UBL_LEVELING = _UxGT("San Lấp Bàn Thống Nhất"); // Unified Bed Leveling + LSTR MSG_MESH_LEVELING = _UxGT("Lưới San Lấp"); // Mesh Leveling + LSTR MSG_INFO_STATS_MENU = _UxGT("Thống Kê Máy In"); // Printer Stats + LSTR MSG_INFO_BOARD_MENU = _UxGT("Thông Tin Bo Mạch"); // Board Info + LSTR MSG_INFO_THERMISTOR_MENU = _UxGT("Điện Trở Nhiệt"); // Thermistors + LSTR MSG_INFO_EXTRUDERS = _UxGT("Máy đùn"); // Extruders + LSTR MSG_INFO_BAUDRATE = _UxGT("Baud"); // Baud + LSTR MSG_INFO_PROTOCOL = _UxGT("Giao Thức"); // Protocol + LSTR MSG_CASE_LIGHT = _UxGT("Đèn Khuông"); // Case light + LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Độ Sáng"); // Light Brightness #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Số In"); // Print Count + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Số In"); // Print Count LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Đã hoàn thành"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Tổng số thời gian in"); // Total print time - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Thời gian việc lâu nhất"); // Longest job time - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Tổng số đùn"); // Extruded total + LSTR MSG_INFO_PRINT_TIME = _UxGT("Tổng số thời gian in"); // Total print time + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Thời gian việc lâu nhất"); // Longest job time + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Tổng số đùn"); // Extruded total #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("In"); // prints - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Đã hoàn thành"); // Completed - LSTR MSG_INFO_PRINT_TIME = _UxGT("Tổng số"); // total - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Dài nhất"); // Longest + LSTR MSG_INFO_PRINT_COUNT = _UxGT("In"); // Prints + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Đã hoàn thành"); // Completed + LSTR MSG_INFO_PRINT_TIME = _UxGT("Tổng số"); // Total + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Dài nhất"); // Longest LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Đã ép đùn"); #endif - LSTR MSG_INFO_MIN_TEMP = _UxGT("Nhiệt độ tối thiểu"); // Min Temp - LSTR MSG_INFO_MAX_TEMP = _UxGT("Nhiệt độ tối đa"); // Max temp - LSTR MSG_INFO_PSU = _UxGT("Bộ nguồn"); // PSU - LSTR MSG_DRIVE_STRENGTH = _UxGT("Sức mạnh ổ đĩa"); // Drive Strength + LSTR MSG_INFO_MIN_TEMP = _UxGT("Nhiệt độ tối thiểu"); // Min Temp + LSTR MSG_INFO_MAX_TEMP = _UxGT("Nhiệt độ tối đa"); // Max temp + LSTR MSG_INFO_PSU = _UxGT("Bộ nguồn"); // PSU + LSTR MSG_DRIVE_STRENGTH = _UxGT("Sức mạnh ổ đĩa"); // Drive Strength LSTR MSG_DAC_PERCENT_N = _UxGT("@ % trình điều khiển"); - LSTR MSG_DAC_EEPROM_WRITE = _UxGT("Ghi DAC EEPROM"); // DAC EEPROM Write - LSTR MSG_FILAMENT_CHANGE_HEADER_PAUSE = _UxGT("In tạm dừng"); // PRINT PAUSED + LSTR MSG_DAC_EEPROM_WRITE = _UxGT("Ghi DAC EEPROM"); // DAC EEPROM Write + LSTR MSG_FILAMENT_CHANGE_HEADER_PAUSE = _UxGT("In tạm dừng"); // PRINT PAUSED LSTR MSG_FILAMENT_CHANGE_HEADER_LOAD = _UxGT("Nạp dây nhựa"); - LSTR MSG_FILAMENT_CHANGE_HEADER_UNLOAD = _UxGT("Dỡ dây nhựa"); // unload filament - LSTR MSG_FILAMENT_CHANGE_OPTION_HEADER = _UxGT("Tùy chọn hồi phục:"); // RESUME OPTIONS - LSTR MSG_FILAMENT_CHANGE_OPTION_PURGE = _UxGT("Xả thêm"); // Purge more - LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("Tiếp tục"); // continue - LSTR MSG_FILAMENT_CHANGE_NOZZLE = _UxGT(" Đầu Phun: "); // Nozzle - LSTR MSG_RUNOUT_SENSOR_ENABLE = _UxGT("Cảm Biến Hết"); // Runout Sensor - LSTR MSG_KILL_HOMING_FAILED = _UxGT("Sự nhà không thành công"); // Homing failed - LSTR MSG_LCD_PROBING_FAILED = _UxGT(" không thành công"); // Probing failed + LSTR MSG_FILAMENT_CHANGE_HEADER_UNLOAD = _UxGT("Dỡ dây nhựa"); // Unload filament + LSTR MSG_FILAMENT_CHANGE_OPTION_HEADER = _UxGT("Tùy chọn hồi phục:"); // RESUME OPTIONS + LSTR MSG_FILAMENT_CHANGE_OPTION_PURGE = _UxGT("Xả thêm"); // Purge more + LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("Tiếp tục"); // Continue + LSTR MSG_FILAMENT_CHANGE_NOZZLE = _UxGT(" Đầu Phun: "); // Nozzle + LSTR MSG_RUNOUT_SENSOR_ENABLE = _UxGT("Cảm Biến Hết"); // Runout Sensor + LSTR MSG_KILL_HOMING_FAILED = _UxGT("Sự nhà không thành công"); // Homing failed + LSTR MSG_LCD_PROBING_FAILED = _UxGT(" không thành công"); // Probing failed // // Filament Change screens show up to 3 lines on a 4-line display @@ -406,36 +406,37 @@ namespace Language_vi { // #if LCD_HEIGHT >= 4 LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Nhấn nút", "để tiếp tục in")); // Press button to resume print - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Chờ cho sự", "thay đổi dây nhựa", "bắt đầu")); // wait for filament change to start - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Đút dây nhựa vào", "và nhấn nút", "để tiếp tục")); // insert filament and press button to continue // + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Chờ cho sự", "thay đổi dây nhựa", "bắt đầu")); // Wait for filament change to start + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Đút dây nhựa vào", "và nhấn nút", "để tiếp tục")); // Insert filament and press button to continue // LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Nhấn nút", "để làm nóng đầu phun")); // Press button to heat nozzle LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Đầu phun đang nóng lên", "Xin chờ...")); // Nozzle heating Please wait - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Chờ tro", "dây nhựa ra")); // Wait for filament unload - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Chờ tro", "dây nhựa vào")); // Wait for filament load - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Chờ tro", "xả dây nhựa")); // wait for filament purge + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Chờ tro", "dây nhựa ra")); // Wait for filament unload + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Chờ tro", "dây nhựa vào")); // Wait for filament load + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Chờ tro", "xả dây nhựa")); // Wait for filament purge LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Nhấn nút để kết thúc", "xả dây nhựa")); // Click to finish dây nhựa purge LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Chờ tro in", "tiếp tục...")); // Wait for print to resume #else // LCD_HEIGHT < 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Nhấn nút để tiếp tục")); // Click to continue + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Nhấn nút để tiếp tục")); // Click to continue LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Xin chờ...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Chèn và nhấn")); // Insert and Click - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Nhấn để sưởi")); // Click to heat - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Đang sưởi nóng")); // Heating - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Đang dỡ ra...")); // Ejecting - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Đang nạp...")); // Loading - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Đang xả...")); // Purging - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Nhấn nút để kết thúc")); // Click to finish - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Đang tiếp tục...")); // Resuming + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Chèn và nhấn")); // Insert and Click + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Nhấn để sưởi")); // Click to heat + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Đang sưởi nóng")); // Heating + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Đang dỡ ra...")); // Ejecting + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Đang nạp...")); // Loading + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Đang xả...")); // Purging + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Nhấn nút để kết thúc")); // Click to finish + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Đang tiếp tục...")); // Resuming #endif // LCD_HEIGHT < 4 - LSTR MSG_TMC_DRIVERS = _UxGT("Trình điều khiển TMC"); // TMC drivers - LSTR MSG_TMC_CURRENT = _UxGT("Dòng điện trình điều khiển"); // Driver current - LSTR MSG_TMC_HYBRID_THRS = _UxGT("Ngưỡng Hỗn Hợp"); // Hybrid threshold - LSTR MSG_TMC_HOMING_THRS = _UxGT("Vô cảm biến"); // Sensorless homing - LSTR MSG_TMC_STEPPING_MODE = _UxGT("Chế độ từng bước"); // Stepping mode - LSTR MSG_TMC_STEALTH_ENABLED = _UxGT("CắtTàngHình được kích hoạt"); // StealthChop enabled + LSTR MSG_TMC_DRIVERS = _UxGT("Trình điều khiển TMC"); // TMC drivers + LSTR MSG_TMC_CURRENT = _UxGT("Dòng điện trình điều khiển"); // Driver current + LSTR MSG_TMC_HYBRID_THRS = _UxGT("Ngưỡng Hỗn Hợp"); // Hybrid threshold + LSTR MSG_TMC_HOMING_THRS = _UxGT("Vô cảm biến"); // Sensorless homing + LSTR MSG_TMC_STEPPING_MODE = _UxGT("Chế độ từng bước"); // Stepping mode + LSTR MSG_TMC_STEALTH_ENABLED = _UxGT("CắtTàngHình được kích hoạt"); // StealthChop enabled - LSTR MSG_SHORT_DAY = _UxGT("n"); // d - ngày - One character only - LSTR MSG_SHORT_HOUR = _UxGT("g"); // h - giờ - One character only - LSTR MSG_SHORT_MINUTE = _UxGT("p"); // m - phút - One character only + LSTR MSG_SHORT_DAY = _UxGT("n"); // d - ngày - One character only + LSTR MSG_SHORT_HOUR = _UxGT("g"); // h - giờ - One character only + LSTR MSG_SHORT_MINUTE = _UxGT("p"); // m - phút - One character only + LSTR MSG_SHORT_MINUTE = _UxGT("p"); // M - phút - One character only } diff --git a/Marlin/src/lcd/language/language_zh_CN.h b/Marlin/src/lcd/language/language_zh_CN.h index 7acd0d8e8f49..03c8d80bca74 100644 --- a/Marlin/src/lcd/language/language_zh_CN.h +++ b/Marlin/src/lcd/language/language_zh_CN.h @@ -28,88 +28,88 @@ * See also https://marlinfw.org/docs/development/lcd_language.html */ namespace Language_zh_CN { - using namespace Language_en; // Inherit undefined strings from English + using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 3; LSTR LANGUAGE = _UxGT("Simplified Chinese"); - LSTR WELCOME_MSG = MACHINE_NAME _UxGT("已就绪."); // " ready." + LSTR WELCOME_MSG = MACHINE_NAME _UxGT("已就绪."); // " ready." LSTR MSG_MARLIN = _UxGT("马林"); LSTR MSG_YES = _UxGT("是"); LSTR MSG_NO = _UxGT("否"); - LSTR MSG_BACK = _UxGT("返回"); // ”Back“ + LSTR MSG_BACK = _UxGT("返回"); // ”Back“ LSTR MSG_MEDIA_ABORTING = _UxGT("放弃中..."); - LSTR MSG_MEDIA_INSERTED = _UxGT("存储卡已插入"); // "Card inserted" - LSTR MSG_MEDIA_REMOVED = _UxGT("存储卡被拔出"); // "Card removed" + LSTR MSG_MEDIA_INSERTED = _UxGT("存储卡已插入"); // "Card inserted" + LSTR MSG_MEDIA_REMOVED = _UxGT("存储卡被拔出"); // "Card removed" LSTR MSG_MEDIA_WAITING = _UxGT("等待存储器"); LSTR MSG_MEDIA_READ_ERROR = _UxGT("存储器读取错误"); LSTR MSG_MEDIA_USB_REMOVED = _UxGT("USB设备已弹出"); LSTR MSG_MEDIA_USB_FAILED = _UxGT("USB启动错误"); LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("子响应溢出"); - LSTR MSG_LCD_ENDSTOPS = _UxGT("挡块"); // "Endstops" // Max length 8 characters + LSTR MSG_LCD_ENDSTOPS = _UxGT("挡块"); // "Endstops" // Max length 8 characters LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("软挡块"); - LSTR MSG_MAIN_MENU = _UxGT("主菜单"); // "Main" + LSTR MSG_MAIN_MENU = _UxGT("主菜单"); // "Main" LSTR MSG_ADVANCED_SETTINGS = _UxGT("高级设置"); LSTR MSG_CONFIGURATION = _UxGT("配置"); - LSTR MSG_RUN_AUTO_FILES = _UxGT("自动开始"); // "Autostart" - LSTR MSG_DISABLE_STEPPERS = _UxGT("关闭步进电机"); // "Disable steppers" - LSTR MSG_DEBUG_MENU = _UxGT("调试菜单"); // "Debug Menu" - LSTR MSG_PROGRESS_BAR_TEST = _UxGT("进度条测试"); // "Progress Bar Test" + LSTR MSG_RUN_AUTO_FILES = _UxGT("自动开始"); // "Autostart" + LSTR MSG_DISABLE_STEPPERS = _UxGT("关闭步进电机"); // "Disable steppers" + LSTR MSG_DEBUG_MENU = _UxGT("调试菜单"); // "Debug Menu" + LSTR MSG_PROGRESS_BAR_TEST = _UxGT("进度条测试"); // "Progress Bar Test" LSTR MSG_HOMING = _UxGT("回原点"); - LSTR MSG_AUTO_HOME = _UxGT("自动回原点"); // "Auto home" - LSTR MSG_AUTO_HOME_X = _UxGT("回X原位"); // "Home X" - LSTR MSG_AUTO_HOME_Y = _UxGT("回Y原位"); // "Home Y" - LSTR MSG_AUTO_HOME_Z = _UxGT("回Z原位"); // "Home Z" + LSTR MSG_AUTO_HOME = _UxGT("自动回原点"); // "Auto home" + LSTR MSG_AUTO_HOME_X = _UxGT("回X原位"); // "Home X" + LSTR MSG_AUTO_HOME_Y = _UxGT("回Y原位"); // "Home Y" + LSTR MSG_AUTO_HOME_Z = _UxGT("回Z原位"); // "Home Z" LSTR MSG_AUTO_Z_ALIGN = _UxGT("自动Z对齐"); - LSTR MSG_LEVEL_BED_HOMING = _UxGT("平台调平XYZ归原位"); // "Homing XYZ" - LSTR MSG_LEVEL_BED_WAITING = _UxGT("单击开始热床调平"); // "Click to Begin" - LSTR MSG_LEVEL_BED_NEXT_POINT = _UxGT("下个热床调平点"); // "Next Point" - LSTR MSG_LEVEL_BED_DONE = _UxGT("完成热床调平"); // "Leveling Done!" - LSTR MSG_Z_FADE_HEIGHT = _UxGT("淡出高度"); // "Fade Height" - LSTR MSG_SET_HOME_OFFSETS = _UxGT("设置原点偏移"); // "Set home offsets" - LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("偏移已启用"); // "Offsets applied" + LSTR MSG_LEVEL_BED_HOMING = _UxGT("平台调平XYZ归原位"); // "Homing XYZ" + LSTR MSG_LEVEL_BED_WAITING = _UxGT("单击开始热床调平"); // "Click to Begin" + LSTR MSG_LEVEL_BED_NEXT_POINT = _UxGT("下个热床调平点"); // "Next Point" + LSTR MSG_LEVEL_BED_DONE = _UxGT("完成热床调平"); // "Leveling Done!" + LSTR MSG_Z_FADE_HEIGHT = _UxGT("淡出高度"); // "Fade Height" + LSTR MSG_SET_HOME_OFFSETS = _UxGT("设置原点偏移"); // "Set home offsets" + LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("偏移已启用"); // "Offsets applied" #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("预热 ") PREHEAT_1_LABEL; // "Preheat PREHEAT_2_LABEL" - LSTR MSG_PREHEAT_1_H = _UxGT("预热 ") PREHEAT_1_LABEL " ~"; // "Preheat PREHEAT_2_LABEL" - LSTR MSG_PREHEAT_1_END = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 喷嘴"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_1_END_E = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 喷嘴 ~"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_1_ALL = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 全部"); //MSG_PREHEAT_1 " All" - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 热床"); //MSG_PREHEAT_1 " Bed" - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 设置"); //MSG_PREHEAT_1 " conf" + LSTR MSG_PREHEAT_1 = _UxGT("预热 ") PREHEAT_1_LABEL; // "Preheat PREHEAT_2_LABEL" + LSTR MSG_PREHEAT_1_H = _UxGT("预热 ") PREHEAT_1_LABEL " ~"; // "Preheat PREHEAT_2_LABEL" + LSTR MSG_PREHEAT_1_END = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 喷嘴"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_1_END_E = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 喷嘴 ~"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_1_ALL = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 全部"); //MSG_PREHEAT_1 " All" + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 热床"); //MSG_PREHEAT_1 " Bed" + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 设置"); //MSG_PREHEAT_1 " conf" - LSTR MSG_PREHEAT_M = _UxGT("预热 $"); // "Preheat PREHEAT_2_LABEL" - LSTR MSG_PREHEAT_M_H = _UxGT("预热 $ ~"); // "Preheat PREHEAT_2_LABEL" - LSTR MSG_PREHEAT_M_END = _UxGT("预热 $ 喷嘴"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_M_END_E = _UxGT("预热 $ 喷嘴 ~"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_M_ALL = _UxGT("预热 $ 全部"); //MSG_PREHEAT_1 " All" - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("预热 $ 热床"); //MSG_PREHEAT_1 " Bed" - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("预热 $ 设置"); //MSG_PREHEAT_1 " conf" + LSTR MSG_PREHEAT_M = _UxGT("预热 $"); // "Preheat PREHEAT_2_LABEL" + LSTR MSG_PREHEAT_M_H = _UxGT("预热 $ ~"); // "Preheat PREHEAT_2_LABEL" + LSTR MSG_PREHEAT_M_END = _UxGT("预热 $ 喷嘴"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_M_END_E = _UxGT("预热 $ 喷嘴 ~"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_M_ALL = _UxGT("预热 $ 全部"); //MSG_PREHEAT_1 " All" + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("预热 $ 热床"); //MSG_PREHEAT_1 " Bed" + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("预热 $ 设置"); //MSG_PREHEAT_1 " conf" #endif LSTR MSG_PREHEAT_CUSTOM = _UxGT("预热自定义"); - LSTR MSG_COOLDOWN = _UxGT("降温"); // "Cooldown" + LSTR MSG_COOLDOWN = _UxGT("降温"); // "Cooldown" LSTR MSG_CUTTER_FREQUENCY = _UxGT("切割频率"); LSTR MSG_LASER_MENU = _UxGT("激光控制"); LSTR MSG_LASER_POWER = _UxGT("激光电源"); LSTR MSG_SPINDLE_MENU = _UxGT("主轴控制"); LSTR MSG_SPINDLE_POWER = _UxGT("主轴电源"); LSTR MSG_SPINDLE_REVERSE = _UxGT("主轴反转"); - LSTR MSG_SWITCH_PS_ON = _UxGT("开启电源"); // "Switch power on" - LSTR MSG_SWITCH_PS_OFF = _UxGT("关闭电源"); // "Switch power off" - LSTR MSG_EXTRUDE = _UxGT("挤出"); // "Extrude" - LSTR MSG_RETRACT = _UxGT("回抽"); // "Retract" - LSTR MSG_MOVE_AXIS = _UxGT("移动轴"); // "Move axis" - LSTR MSG_BED_LEVELING = _UxGT("调平热床"); // "Bed leveling" - LSTR MSG_LEVEL_BED = _UxGT("调平热床"); // "Level bed" - LSTR MSG_BED_TRAMMING = _UxGT("调平边角"); // "Bed Tramming" - LSTR MSG_NEXT_CORNER = _UxGT("下个边角"); // "Next corner" + LSTR MSG_SWITCH_PS_ON = _UxGT("开启电源"); // "Switch power on" + LSTR MSG_SWITCH_PS_OFF = _UxGT("关闭电源"); // "Switch power off" + LSTR MSG_EXTRUDE = _UxGT("挤出"); // "Extrude" + LSTR MSG_RETRACT = _UxGT("回抽"); // "Retract" + LSTR MSG_MOVE_AXIS = _UxGT("移动轴"); // "Move axis" + LSTR MSG_BED_LEVELING = _UxGT("调平热床"); // "Bed leveling" + LSTR MSG_LEVEL_BED = _UxGT("调平热床"); // "Level bed" + LSTR MSG_BED_TRAMMING = _UxGT("调平边角"); // "Bed Tramming" + LSTR MSG_NEXT_CORNER = _UxGT("下个边角"); // "Next corner" LSTR MSG_MESH_EDITOR = _UxGT("网格编辑器"); - LSTR MSG_EDIT_MESH = _UxGT("编辑网格"); // "Edit Mesh" - LSTR MSG_EDITING_STOPPED = _UxGT("网格编辑已停止"); // "Mesh Editing Stopped" + LSTR MSG_EDIT_MESH = _UxGT("编辑网格"); // "Edit Mesh" + LSTR MSG_EDITING_STOPPED = _UxGT("网格编辑已停止"); // "Mesh Editing Stopped" LSTR MSG_PROBING_POINT = _UxGT("探测点"); LSTR MSG_MESH_X = _UxGT("索引X"); LSTR MSG_MESH_Y = _UxGT("索引Y"); LSTR MSG_MESH_EDIT_Z = _UxGT("Z 值"); - LSTR MSG_CUSTOM_COMMANDS = _UxGT("定制命令"); // "Custom Commands" + LSTR MSG_CUSTOM_COMMANDS = _UxGT("定制命令"); // "Custom Commands" LSTR MSG_M48_TEST = _UxGT("M48探测"); LSTR MSG_M48_POINT = _UxGT("M48点"); LSTR MSG_M48_DEVIATION = _UxGT("M48偏差"); @@ -121,36 +121,36 @@ namespace Language_zh_CN { LSTR MSG_IDEX_MODE_FULL_CTRL = _UxGT("完全控制"); LSTR MSG_HOTEND_OFFSET_Z = _UxGT("第二喷头是Z"); LSTR MSG_HOTEND_OFFSET_A = _UxGT("第二喷头是@"); - LSTR MSG_UBL_DOING_G29 = _UxGT("执行G29"); // "Doing G29" - LSTR MSG_UBL_TOOLS = _UxGT("UBL工具"); // "UBL Tools" - LSTR MSG_UBL_LEVEL_BED = _UxGT("统一热床调平(UBL)"); // "Unified Bed Leveling" + LSTR MSG_UBL_DOING_G29 = _UxGT("执行G29"); // "Doing G29" + LSTR MSG_UBL_TOOLS = _UxGT("UBL工具"); // "UBL Tools" + LSTR MSG_UBL_LEVEL_BED = _UxGT("统一热床调平(UBL)"); // "Unified Bed Leveling" LSTR MSG_LCD_TILTING_MESH = _UxGT("倾斜點"); - LSTR MSG_UBL_MANUAL_MESH = _UxGT("手工创设网格"); // "Manually Build Mesh" - LSTR MSG_UBL_BC_INSERT = _UxGT("放置垫片并测量"); // "Place shim & measure" - LSTR MSG_UBL_BC_INSERT2 = _UxGT("测量"); // "Measure" - LSTR MSG_UBL_BC_REMOVE = _UxGT("移除并测量热床"); // "Remove & measure bed" - LSTR MSG_UBL_MOVING_TO_NEXT = _UxGT("移动到下一个"); // "Moving to next" - LSTR MSG_UBL_ACTIVATE_MESH = _UxGT("激活UBL"); // "Activate UBL" - LSTR MSG_UBL_DEACTIVATE_MESH = _UxGT("关闭UBL"); // "Deactivate UBL" - LSTR MSG_UBL_SET_TEMP_BED = _UxGT("热床温度"); // "Bed Temp" + LSTR MSG_UBL_MANUAL_MESH = _UxGT("手工创设网格"); // "Manually Build Mesh" + LSTR MSG_UBL_BC_INSERT = _UxGT("放置垫片并测量"); // "Place shim & measure" + LSTR MSG_UBL_BC_INSERT2 = _UxGT("测量"); // "Measure" + LSTR MSG_UBL_BC_REMOVE = _UxGT("移除并测量热床"); // "Remove & measure bed" + LSTR MSG_UBL_MOVING_TO_NEXT = _UxGT("移动到下一个"); // "Moving to next" + LSTR MSG_UBL_ACTIVATE_MESH = _UxGT("激活UBL"); // "Activate UBL" + LSTR MSG_UBL_DEACTIVATE_MESH = _UxGT("关闭UBL"); // "Deactivate UBL" + LSTR MSG_UBL_SET_TEMP_BED = _UxGT("热床温度"); // "Bed Temp" LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("热床温度"); - LSTR MSG_UBL_SET_TEMP_HOTEND = _UxGT("热端温度"); // "Hotend Temp" + LSTR MSG_UBL_SET_TEMP_HOTEND = _UxGT("热端温度"); // "Hotend Temp" LSTR MSG_UBL_HOTEND_TEMP_CUSTOM = _UxGT("热端温度"); - LSTR MSG_UBL_MESH_EDIT = _UxGT("网格编辑"); // "Mesh Edit" - LSTR MSG_UBL_EDIT_CUSTOM_MESH = _UxGT("编辑客户网格"); // "Edit Custom Mesh" - LSTR MSG_UBL_FINE_TUNE_MESH = _UxGT("细调网格"); // "Fine Tuning Mesh" - LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("完成编辑网格"); // "Done Editing Mesh" - LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("创设客户网格"); // "Build Custom Mesh" - LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("创设网格"); // "Build Mesh" + LSTR MSG_UBL_MESH_EDIT = _UxGT("网格编辑"); // "Mesh Edit" + LSTR MSG_UBL_EDIT_CUSTOM_MESH = _UxGT("编辑客户网格"); // "Edit Custom Mesh" + LSTR MSG_UBL_FINE_TUNE_MESH = _UxGT("细调网格"); // "Fine Tuning Mesh" + LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("完成编辑网格"); // "Done Editing Mesh" + LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("创设客户网格"); // "Build Custom Mesh" + LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("创设网格"); // "Build Mesh" #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("创设 $ 网格"); // "Build PREHEAT_1_LABEL Mesh" - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("批准 $ 网格"); // "Validate PREHEAT_1_LABEL Mesh" + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("创设 $ 网格"); // "Build PREHEAT_1_LABEL Mesh" + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("批准 $ 网格"); // "Validate PREHEAT_1_LABEL Mesh" #endif - LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("创设冷网格"); // "Build Cold Mesh" - LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("调整网格高度"); // "Adjust Mesh Height" - LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("高度合计"); // "Height Amount" - LSTR MSG_UBL_VALIDATE_MESH_MENU = _UxGT("批准网格"); // "Validate Mesh" - LSTR MSG_UBL_VALIDATE_CUSTOM_MESH = _UxGT("批准客户网格"); // "Validate Custom Mesh" + LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("创设冷网格"); // "Build Cold Mesh" + LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("调整网格高度"); // "Adjust Mesh Height" + LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("高度合计"); // "Height Amount" + LSTR MSG_UBL_VALIDATE_MESH_MENU = _UxGT("批准网格"); // "Validate Mesh" + LSTR MSG_UBL_VALIDATE_CUSTOM_MESH = _UxGT("批准客户网格"); // "Validate Custom Mesh" LSTR MSG_G26_HEATING_BED = _UxGT("G26加热热床"); LSTR MSG_G26_HEATING_NOZZLE = _UxGT("G26加热喷嘴"); LSTR MSG_G26_MANUAL_PRIME = _UxGT("手动填装中..."); @@ -158,38 +158,38 @@ namespace Language_zh_CN { LSTR MSG_G26_PRIME_DONE = _UxGT("填装完成"); LSTR MSG_G26_CANCELED = _UxGT("G26已取消"); LSTR MSG_G26_LEAVING = _UxGT("离开G26"); - LSTR MSG_UBL_CONTINUE_MESH = _UxGT("继续热床网格"); // "Continue Bed Mesh" - LSTR MSG_UBL_MESH_LEVELING = _UxGT("网格调平"); // "Mesh Leveling" - LSTR MSG_UBL_3POINT_MESH_LEVELING = _UxGT("三点调平"); // "3-Point Leveling" - LSTR MSG_UBL_GRID_MESH_LEVELING = _UxGT("格子网格调平"); // "Grid Mesh Leveling" - LSTR MSG_UBL_MESH_LEVEL = _UxGT("调平网格"); // "Level Mesh" - LSTR MSG_UBL_SIDE_POINTS = _UxGT("边点"); // "Side Points" - LSTR MSG_UBL_MAP_TYPE = _UxGT("图类型"); // "Map Type" - LSTR MSG_UBL_OUTPUT_MAP = _UxGT("输出网格图"); // "Output Mesh Map" - LSTR MSG_UBL_OUTPUT_MAP_HOST = _UxGT("输出到主机"); // "Output for Host" - LSTR MSG_UBL_OUTPUT_MAP_CSV = _UxGT("输出到CSV"); // "Output for CSV" - LSTR MSG_UBL_OUTPUT_MAP_BACKUP = _UxGT("输出到备份"); // "Off Printer Backup" - LSTR MSG_UBL_INFO_UBL = _UxGT("输出UBL信息"); // "Output UBL Info" - LSTR MSG_UBL_FILLIN_AMOUNT = _UxGT("填充合计"); // "Fill-in Amount" - LSTR MSG_UBL_MANUAL_FILLIN = _UxGT("手工填充"); // "Manual Fill-in" - LSTR MSG_UBL_SMART_FILLIN = _UxGT("聪明填充"); // "Smart Fill-in" - LSTR MSG_UBL_FILLIN_MESH = _UxGT("填充网格"); // "Fill-in Mesh" - LSTR MSG_UBL_INVALIDATE_ALL = _UxGT("作废所有的"); // "Invalidate All" - LSTR MSG_UBL_INVALIDATE_CLOSEST = _UxGT("作废最近的"); // "Invalidate Closest" - LSTR MSG_UBL_FINE_TUNE_ALL = _UxGT("细调所有的"); // "Fine Tune All" - LSTR MSG_UBL_FINE_TUNE_CLOSEST = _UxGT("细调最近的"); // "Fine Tune Closest" - LSTR MSG_UBL_STORAGE_MESH_MENU = _UxGT("网格存储"); // "Mesh Storage" - LSTR MSG_UBL_STORAGE_SLOT = _UxGT("存储槽"); // "Memory Slot" - LSTR MSG_UBL_LOAD_MESH = _UxGT("装载热床网格"); // "Load Bed Mesh" - LSTR MSG_UBL_SAVE_MESH = _UxGT("保存热床网格"); // "Save Bed Mesh" - LSTR MSG_MESH_LOADED = _UxGT("网格 %i 已装载"); // "Mesh %i loaded" - LSTR MSG_MESH_SAVED = _UxGT("网格 %i 已保存"); // "Mesh %i saved" - LSTR MSG_UBL_NO_STORAGE = _UxGT("没有存储"); // "No storage" - LSTR MSG_UBL_SAVE_ERROR = _UxGT("错误: UBL保存"); // "Err: UBL Save" - LSTR MSG_UBL_RESTORE_ERROR = _UxGT("错误: UBL还原"); // "Err: UBL Restore" + LSTR MSG_UBL_CONTINUE_MESH = _UxGT("继续热床网格"); // "Continue Bed Mesh" + LSTR MSG_UBL_MESH_LEVELING = _UxGT("网格调平"); // "Mesh Leveling" + LSTR MSG_UBL_3POINT_MESH_LEVELING = _UxGT("三点调平"); // "3-Point Leveling" + LSTR MSG_UBL_GRID_MESH_LEVELING = _UxGT("格子网格调平"); // "Grid Mesh Leveling" + LSTR MSG_UBL_MESH_LEVEL = _UxGT("调平网格"); // "Level Mesh" + LSTR MSG_UBL_SIDE_POINTS = _UxGT("边点"); // "Side Points" + LSTR MSG_UBL_MAP_TYPE = _UxGT("图类型"); // "Map Type" + LSTR MSG_UBL_OUTPUT_MAP = _UxGT("输出网格图"); // "Output Mesh Map" + LSTR MSG_UBL_OUTPUT_MAP_HOST = _UxGT("输出到主机"); // "Output for Host" + LSTR MSG_UBL_OUTPUT_MAP_CSV = _UxGT("输出到CSV"); // "Output for CSV" + LSTR MSG_UBL_OUTPUT_MAP_BACKUP = _UxGT("输出到备份"); // "Off Printer Backup" + LSTR MSG_UBL_INFO_UBL = _UxGT("输出UBL信息"); // "Output UBL Info" + LSTR MSG_UBL_FILLIN_AMOUNT = _UxGT("填充合计"); // "Fill-in Amount" + LSTR MSG_UBL_MANUAL_FILLIN = _UxGT("手工填充"); // "Manual Fill-in" + LSTR MSG_UBL_SMART_FILLIN = _UxGT("聪明填充"); // "Smart Fill-in" + LSTR MSG_UBL_FILLIN_MESH = _UxGT("填充网格"); // "Fill-in Mesh" + LSTR MSG_UBL_INVALIDATE_ALL = _UxGT("作废所有的"); // "Invalidate All" + LSTR MSG_UBL_INVALIDATE_CLOSEST = _UxGT("作废最近的"); // "Invalidate Closest" + LSTR MSG_UBL_FINE_TUNE_ALL = _UxGT("细调所有的"); // "Fine Tune All" + LSTR MSG_UBL_FINE_TUNE_CLOSEST = _UxGT("细调最近的"); // "Fine Tune Closest" + LSTR MSG_UBL_STORAGE_MESH_MENU = _UxGT("网格存储"); // "Mesh Storage" + LSTR MSG_UBL_STORAGE_SLOT = _UxGT("存储槽"); // "Memory Slot" + LSTR MSG_UBL_LOAD_MESH = _UxGT("装载热床网格"); // "Load Bed Mesh" + LSTR MSG_UBL_SAVE_MESH = _UxGT("保存热床网格"); // "Save Bed Mesh" + LSTR MSG_MESH_LOADED = _UxGT("网格 %i 已装载"); // "Mesh %i loaded" + LSTR MSG_MESH_SAVED = _UxGT("网格 %i 已保存"); // "Mesh %i saved" + LSTR MSG_UBL_NO_STORAGE = _UxGT("没有存储"); // "No storage" + LSTR MSG_UBL_SAVE_ERROR = _UxGT("错误: UBL保存"); // "Err: UBL Save" + LSTR MSG_UBL_RESTORE_ERROR = _UxGT("错误: UBL还原"); // "Err: UBL Restore" LSTR MSG_UBL_Z_OFFSET = _UxGT("Z偏移量: "); - LSTR MSG_UBL_Z_OFFSET_STOPPED = _UxGT("Z偏移已停止"); // "Z-Offset Stopped" - LSTR MSG_UBL_STEP_BY_STEP_MENU = _UxGT("一步步UBL"); // "Step-By-Step UBL" + LSTR MSG_UBL_Z_OFFSET_STOPPED = _UxGT("Z偏移已停止"); // "Z-Offset Stopped" + LSTR MSG_UBL_STEP_BY_STEP_MENU = _UxGT("一步步UBL"); // "Step-By-Step UBL" LSTR MSG_UBL_1_BUILD_COLD_MESH = _UxGT("1. 创设冷网格"); LSTR MSG_UBL_2_SMART_FILLIN = _UxGT("2. 聪明填充"); LSTR MSG_UBL_3_VALIDATE_MESH_MENU = _UxGT("3. 批准网格"); @@ -198,66 +198,66 @@ namespace Language_zh_CN { LSTR MSG_UBL_6_FINE_TUNE_ALL = _UxGT("6. 细调所有的"); LSTR MSG_UBL_7_SAVE_MESH = _UxGT("7. 保存热床网格"); - LSTR MSG_LED_CONTROL = _UxGT("LED控制"); // "LED Control" - LSTR MSG_LEDS = _UxGT("灯"); // "Lights" - LSTR MSG_LED_PRESETS = _UxGT("灯预置"); // "Light Presets" - LSTR MSG_SET_LEDS_RED = _UxGT("红"); // "Red" - LSTR MSG_SET_LEDS_ORANGE = _UxGT("橙"); // "Orange" - LSTR MSG_SET_LEDS_YELLOW = _UxGT("黄"); // "Yellow" - LSTR MSG_SET_LEDS_GREEN = _UxGT("绿"); // "Green" - LSTR MSG_SET_LEDS_BLUE = _UxGT("蓝"); // "Blue" - LSTR MSG_SET_LEDS_INDIGO = _UxGT("青"); // "Indigo" - LSTR MSG_SET_LEDS_VIOLET = _UxGT("紫"); // "Violet" - LSTR MSG_SET_LEDS_WHITE = _UxGT("白"); // "White" - LSTR MSG_SET_LEDS_DEFAULT = _UxGT("缺省"); // "Default" - LSTR MSG_CUSTOM_LEDS = _UxGT("定制灯"); // "Custom Lights" - LSTR MSG_INTENSITY_R = _UxGT("红饱和度"); // "Red Intensity" - LSTR MSG_INTENSITY_G = _UxGT("绿饱和度"); // "Green Intensity" - LSTR MSG_INTENSITY_B = _UxGT("蓝饱和度"); // "Blue Intensity" - LSTR MSG_INTENSITY_W = _UxGT("白饱和度"); // "White Intensity" - LSTR MSG_LED_BRIGHTNESS = _UxGT("亮度"); // "Brightness" + LSTR MSG_LED_CONTROL = _UxGT("LED控制"); // "LED Control" + LSTR MSG_LEDS = _UxGT("灯"); // "Lights" + LSTR MSG_LED_PRESETS = _UxGT("灯预置"); // "Light Presets" + LSTR MSG_SET_LEDS_RED = _UxGT("红"); // "Red" + LSTR MSG_SET_LEDS_ORANGE = _UxGT("橙"); // "Orange" + LSTR MSG_SET_LEDS_YELLOW = _UxGT("黄"); // "Yellow" + LSTR MSG_SET_LEDS_GREEN = _UxGT("绿"); // "Green" + LSTR MSG_SET_LEDS_BLUE = _UxGT("蓝"); // "Blue" + LSTR MSG_SET_LEDS_INDIGO = _UxGT("青"); // "Indigo" + LSTR MSG_SET_LEDS_VIOLET = _UxGT("紫"); // "Violet" + LSTR MSG_SET_LEDS_WHITE = _UxGT("白"); // "White" + LSTR MSG_SET_LEDS_DEFAULT = _UxGT("缺省"); // "Default" + LSTR MSG_CUSTOM_LEDS = _UxGT("定制灯"); // "Custom Lights" + LSTR MSG_INTENSITY_R = _UxGT("红饱和度"); // "Red Intensity" + LSTR MSG_INTENSITY_G = _UxGT("绿饱和度"); // "Green Intensity" + LSTR MSG_INTENSITY_B = _UxGT("蓝饱和度"); // "Blue Intensity" + LSTR MSG_INTENSITY_W = _UxGT("白饱和度"); // "White Intensity" + LSTR MSG_LED_BRIGHTNESS = _UxGT("亮度"); // "Brightness" - LSTR MSG_MOVING = _UxGT("移动..."); // "Moving..." - LSTR MSG_FREE_XY = _UxGT("释放 XY"); // "Free XY" - LSTR MSG_MOVE_X = _UxGT("移动X"); // "Move X" - LSTR MSG_MOVE_Y = _UxGT("移动Y"); // "Move Y" - LSTR MSG_MOVE_Z = _UxGT("移动Z"); // "Move Z" - LSTR MSG_MOVE_N = _UxGT("移动@"); // "Move @" - LSTR MSG_MOVE_E = _UxGT("挤出机"); // "Extruder" - LSTR MSG_MOVE_EN = _UxGT("挤出机 *"); // "Extruder" + LSTR MSG_MOVING = _UxGT("移动..."); // "Moving..." + LSTR MSG_FREE_XY = _UxGT("释放 XY"); // "Free XY" + LSTR MSG_MOVE_X = _UxGT("移动X"); // "Move X" + LSTR MSG_MOVE_Y = _UxGT("移动Y"); // "Move Y" + LSTR MSG_MOVE_Z = _UxGT("移动Z"); // "Move Z" + LSTR MSG_MOVE_N = _UxGT("移动@"); // "Move @" + LSTR MSG_MOVE_E = _UxGT("挤出机"); // "Extruder" + LSTR MSG_MOVE_EN = _UxGT("挤出机 *"); // "Extruder" LSTR MSG_HOTEND_TOO_COLD = _UxGT("热端太冷"); - LSTR MSG_MOVE_N_MM = _UxGT("移动 $ mm"); // "Move 0.025mm" - LSTR MSG_MOVE_01MM = _UxGT("移动 0.1 mm"); // "Move 0.1mm" - LSTR MSG_MOVE_1MM = _UxGT("移动 1 mm"); // "Move 1mm" - LSTR MSG_MOVE_10MM = _UxGT("移动 10 mm"); // "Move 10mm" - LSTR MSG_MOVE_100MM = _UxGT("移动 100 mm"); // "Move 100mm" - LSTR MSG_SPEED = _UxGT("速率"); // "Speed" - LSTR MSG_MESH_Z_OFFSET = _UxGT("热床Z"); // "Bed Z" - LSTR MSG_NOZZLE = _UxGT("喷嘴"); // "Nozzle" 噴嘴 - LSTR MSG_NOZZLE_N = _UxGT("喷嘴 ~"); // "Nozzle" 噴嘴 + LSTR MSG_MOVE_N_MM = _UxGT("移动 $ mm"); // "Move 0.025mm" + LSTR MSG_MOVE_01MM = _UxGT("移动 0.1 mm"); // "Move 0.1mm" + LSTR MSG_MOVE_1MM = _UxGT("移动 1 mm"); // "Move 1mm" + LSTR MSG_MOVE_10MM = _UxGT("移动 10 mm"); // "Move 10mm" + LSTR MSG_MOVE_100MM = _UxGT("移动 100 mm"); // "Move 100mm" + LSTR MSG_SPEED = _UxGT("速率"); // "Speed" + LSTR MSG_MESH_Z_OFFSET = _UxGT("热床Z"); // "Bed Z" + LSTR MSG_NOZZLE = _UxGT("喷嘴"); // "Nozzle" 噴嘴 + LSTR MSG_NOZZLE_N = _UxGT("喷嘴 ~"); // "Nozzle" 噴嘴 LSTR MSG_NOZZLE_PARKED = _UxGT("喷嘴已停靠"); LSTR MSG_NOZZLE_STANDBY = _UxGT("喷嘴待命中"); - LSTR MSG_BED = _UxGT("热床"); // "Bed" + LSTR MSG_BED = _UxGT("热床"); // "Bed" LSTR MSG_CHAMBER = _UxGT("机箱壳"); - LSTR MSG_FAN_SPEED = _UxGT("风扇速率"); // "Fan speed" - LSTR MSG_FAN_SPEED_N = _UxGT("风扇速率 ~"); // "Fan speed" + LSTR MSG_FAN_SPEED = _UxGT("风扇速率"); // "Fan speed" + LSTR MSG_FAN_SPEED_N = _UxGT("风扇速率 ~"); // "Fan speed" LSTR MSG_STORED_FAN_N = _UxGT("存储的风扇 ~"); - LSTR MSG_EXTRA_FAN_SPEED = _UxGT("额外风扇速率"); // "Extra fan speed" - LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("额外风扇速率 ~"); // "Extra fan speed" + LSTR MSG_EXTRA_FAN_SPEED = _UxGT("额外风扇速率"); // "Extra fan speed" + LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("额外风扇速率 ~"); // "Extra fan speed" LSTR MSG_CONTROLLER_FAN = _UxGT("控制器风扇"); LSTR MSG_CONTROLLER_FAN_IDLE_SPEED = _UxGT("空闲速度"); LSTR MSG_CONTROLLER_FAN_AUTO_ON = _UxGT("自动模式"); LSTR MSG_CONTROLLER_FAN_SPEED = _UxGT("工作速度"); LSTR MSG_CONTROLLER_FAN_DURATION = _UxGT("空闲周期"); - LSTR MSG_FLOW = _UxGT("挤出速率"); // "Flow" - LSTR MSG_FLOW_N = _UxGT("挤出速率 ~"); // "Flow" - LSTR MSG_CONTROL = _UxGT("控制"); // "Control" - LSTR MSG_MIN = " " LCD_STR_THERMOMETER _UxGT(" 最小"); // " " LCD_STR_THERMOMETER " Min" - LSTR MSG_MAX = " " LCD_STR_THERMOMETER _UxGT(" 最大"); // " " LCD_STR_THERMOMETER " Max" - LSTR MSG_FACTOR = " " LCD_STR_THERMOMETER _UxGT(" 因数"); // " " LCD_STR_THERMOMETER " Fact" - LSTR MSG_AUTOTEMP = _UxGT("自动控温"); // "Autotemp" - LSTR MSG_LCD_ON = _UxGT("开"); // "On" - LSTR MSG_LCD_OFF = _UxGT("关"); // "Off" + LSTR MSG_FLOW = _UxGT("挤出速率"); // "Flow" + LSTR MSG_FLOW_N = _UxGT("挤出速率 ~"); // "Flow" + LSTR MSG_CONTROL = _UxGT("控制"); // "Control" + LSTR MSG_MIN = " " LCD_STR_THERMOMETER _UxGT(" 最小"); // " " LCD_STR_THERMOMETER " Min" + LSTR MSG_MAX = " " LCD_STR_THERMOMETER _UxGT(" 最大"); // " " LCD_STR_THERMOMETER " Max" + LSTR MSG_FACTOR = " " LCD_STR_THERMOMETER _UxGT(" 因数"); // " " LCD_STR_THERMOMETER " Fact" + LSTR MSG_AUTOTEMP = _UxGT("自动控温"); // "Autotemp" + LSTR MSG_LCD_ON = _UxGT("开"); // "On" + LSTR MSG_LCD_OFF = _UxGT("关"); // "Off" LSTR MSG_PID_AUTOTUNE = _UxGT("自动PID"); LSTR MSG_PID_AUTOTUNE_E = _UxGT("自动PID *"); LSTR MSG_PID_AUTOTUNE_DONE = _UxGT("PID调整完成"); @@ -265,58 +265,58 @@ namespace Language_zh_CN { LSTR MSG_PID_TEMP_TOO_HIGH = _UxGT("自动调失败! 温度太高"); LSTR MSG_PID_TIMEOUT = _UxGT("自动调失败! 超时"); LSTR MSG_SELECT_E = _UxGT("选择 *"); - LSTR MSG_ACC = _UxGT("加速度"); // "Accel" acceleration - LSTR MSG_JERK = _UxGT("抖动速率"); // "Jerk" - LSTR MSG_VA_JERK = _UxGT("轴抖动速率") STR_A; // "Va-jerk" - LSTR MSG_VB_JERK = _UxGT("轴抖动速率") STR_B; // "Vb-jerk" - LSTR MSG_VC_JERK = _UxGT("轴抖动速率") STR_C; // "Vc-jerk" - LSTR MSG_VN_JERK = _UxGT("轴抖动速率@"); // "V@-jerk" - LSTR MSG_VE_JERK = _UxGT("挤出机抖动速率"); // "Ve-jerk" + LSTR MSG_ACC = _UxGT("加速度"); // "Accel" acceleration + LSTR MSG_JERK = _UxGT("抖动速率"); // "Jerk" + LSTR MSG_VA_JERK = _UxGT("轴抖动速率") STR_A; // "Va-jerk" + LSTR MSG_VB_JERK = _UxGT("轴抖动速率") STR_B; // "Vb-jerk" + LSTR MSG_VC_JERK = _UxGT("轴抖动速率") STR_C; // "Vc-jerk" + LSTR MSG_VN_JERK = _UxGT("轴抖动速率@"); // "V@-jerk" + LSTR MSG_VE_JERK = _UxGT("挤出机抖动速率"); // "Ve-jerk" LSTR MSG_JUNCTION_DEVIATION = _UxGT("接点差"); - LSTR MSG_MAX_SPEED = _UxGT("速度"); // "Velocity" - LSTR MSG_VMAX_A = _UxGT("最大进料速率") STR_A; // "Vmax " max_feedrate_mm_s + LSTR MSG_MAX_SPEED = _UxGT("速度"); // "Velocity" + LSTR MSG_VMAX_A = _UxGT("最大进料速率") STR_A; // "Vmax " max_feedrate_mm_s LSTR MSG_VMAX_B = _UxGT("最大进料速率") STR_B; LSTR MSG_VMAX_C = _UxGT("最大进料速率") STR_C; LSTR MSG_VMAX_N = _UxGT("最大进料速率@"); LSTR MSG_VMAX_E = _UxGT("最大进料速率E"); LSTR MSG_VMAX_EN = _UxGT("最大进料速率 *"); - LSTR MSG_VMIN = _UxGT("最小进料速率"); // "Vmin" min_feedrate_mm_s - LSTR MSG_VTRAV_MIN = _UxGT("最小移动速率"); // "VTrav min" min_travel_feedrate_mm_s, (target) speed of the move - LSTR MSG_ACCELERATION = _UxGT("加速度"); // "Acceleration" - LSTR MSG_AMAX_A = _UxGT("最大打印加速度") STR_A; // "Amax " max_acceleration_mm_per_s2, acceleration in units/s^2 for print moves + LSTR MSG_VMIN = _UxGT("最小进料速率"); // "Vmin" min_feedrate_mm_s + LSTR MSG_VTRAV_MIN = _UxGT("最小移动速率"); // "VTrav min" min_travel_feedrate_mm_s, (target) speed of the move + LSTR MSG_ACCELERATION = _UxGT("加速度"); // "Acceleration" + LSTR MSG_AMAX_A = _UxGT("最大打印加速度") STR_A; // "Amax " max_acceleration_mm_per_s2, acceleration in units/s^2 for print moves LSTR MSG_AMAX_B = _UxGT("最大打印加速度") STR_B; LSTR MSG_AMAX_C = _UxGT("最大打印加速度") STR_C; LSTR MSG_AMAX_N = _UxGT("最大打印加速度@"); LSTR MSG_AMAX_E = _UxGT("最大打印加速度E"); LSTR MSG_AMAX_EN = _UxGT("最大打印加速度 *"); - LSTR MSG_A_RETRACT = _UxGT("收进加速度"); // "A-retract" retract_acceleration, E acceleration in mm/s^2 for retracts - LSTR MSG_A_TRAVEL = _UxGT("非打印移动加速度"); // "A-travel" travel_acceleration, X, Y, Z acceleration in mm/s^2 for travel (non printing) moves + LSTR MSG_A_RETRACT = _UxGT("收进加速度"); // "A-retract" retract_acceleration, E acceleration in mm/s^2 for retracts + LSTR MSG_A_TRAVEL = _UxGT("非打印移动加速度"); // "A-travel" travel_acceleration, X, Y, Z acceleration in mm/s^2 for travel (non printing) moves LSTR MSG_XY_FREQUENCY_LIMIT = _UxGT("频率最大"); LSTR MSG_XY_FREQUENCY_FEEDRATE = _UxGT("进给速度"); - LSTR MSG_STEPS_PER_MM = _UxGT("轴步数/mm"); // "Steps/mm" axis_steps_per_mm, axis steps-per-unit G92 - LSTR MSG_A_STEPS = STR_A _UxGT(" 步数/mm"); // "Asteps/mm" + LSTR MSG_STEPS_PER_MM = _UxGT("轴步数/mm"); // "Steps/mm" axis_steps_per_mm, axis steps-per-unit G92 + LSTR MSG_A_STEPS = STR_A _UxGT(" 步数/mm"); // "Asteps/mm" LSTR MSG_B_STEPS = STR_B _UxGT(" 步数/mm"); LSTR MSG_C_STEPS = STR_C _UxGT(" 步数/mm"); LSTR MSG_N_STEPS = _UxGT("@ 步数/mm"); - LSTR MSG_E_STEPS = _UxGT("E 步数/mm"); // "Esteps/mm" + LSTR MSG_E_STEPS = _UxGT("E 步数/mm"); // "Esteps/mm" LSTR MSG_EN_STEPS = _UxGT("* 步数/mm"); - LSTR MSG_TEMPERATURE = _UxGT("温度"); // "Temperature" - LSTR MSG_MOTION = _UxGT("运动"); // "Motion" - LSTR MSG_FILAMENT = _UxGT("料丝"); // "Filament" menu_advanced_filament - LSTR MSG_VOLUMETRIC_ENABLED = _UxGT("E 在 mm") SUPERSCRIPT_THREE; // "E in mm3" volumetric_enabled + LSTR MSG_TEMPERATURE = _UxGT("温度"); // "Temperature" + LSTR MSG_MOTION = _UxGT("运动"); // "Motion" + LSTR MSG_FILAMENT = _UxGT("料丝"); // "Filament" menu_advanced_filament + LSTR MSG_VOLUMETRIC_ENABLED = _UxGT("E 在 mm") SUPERSCRIPT_THREE; // "E in mm3" volumetric_enabled LSTR MSG_VOLUMETRIC_LIMIT = _UxGT("E 限制 在 mm") SUPERSCRIPT_THREE; LSTR MSG_VOLUMETRIC_LIMIT_E = _UxGT("E 限制 *"); - LSTR MSG_FILAMENT_DIAM = _UxGT("丝料直径"); // "Fil. Dia." + LSTR MSG_FILAMENT_DIAM = _UxGT("丝料直径"); // "Fil. Dia." LSTR MSG_FILAMENT_DIAM_E = _UxGT("丝料直径 *"); - LSTR MSG_FILAMENT_UNLOAD = _UxGT("卸载 mm"); // "Unload mm" - LSTR MSG_FILAMENT_LOAD = _UxGT("装载 mm"); // "Load mm" + LSTR MSG_FILAMENT_UNLOAD = _UxGT("卸载 mm"); // "Unload mm" + LSTR MSG_FILAMENT_LOAD = _UxGT("装载 mm"); // "Load mm" LSTR MSG_ADVANCE_K = _UxGT("Advance K"); LSTR MSG_ADVANCE_K_E = _UxGT("Advance K *"); - LSTR MSG_CONTRAST = _UxGT("LCD对比度"); // "LCD contrast" - LSTR MSG_STORE_EEPROM = _UxGT("保存设置"); // "Store memory" - LSTR MSG_LOAD_EEPROM = _UxGT("装载设置"); // "Load memory" - LSTR MSG_RESTORE_DEFAULTS = _UxGT("恢复安全值"); // "Restore Defaults" - LSTR MSG_INIT_EEPROM = _UxGT("初始化设置"); // "Initialize EEPROM" + LSTR MSG_CONTRAST = _UxGT("LCD对比度"); // "LCD contrast" + LSTR MSG_STORE_EEPROM = _UxGT("保存设置"); // "Store memory" + LSTR MSG_LOAD_EEPROM = _UxGT("装载设置"); // "Load memory" + LSTR MSG_RESTORE_DEFAULTS = _UxGT("恢复安全值"); // "Restore Defaults" + LSTR MSG_INIT_EEPROM = _UxGT("初始化设置"); // "Initialize EEPROM" LSTR MSG_ERR_EEPROM_CRC = _UxGT("EEPROM 校验和 错误"); LSTR MSG_ERR_EEPROM_SIZE = _UxGT("EEPROM 尺寸 错误"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("EEPROM 版本 错误"); @@ -324,9 +324,9 @@ namespace Language_zh_CN { LSTR MSG_MEDIA_UPDATE = _UxGT("存储器更新"); LSTR MSG_RESET_PRINTER = _UxGT("复位打印机"); LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("刷新"); - LSTR MSG_INFO_SCREEN = _UxGT("信息屏"); // "Info screen" - LSTR MSG_PREPARE = _UxGT("准备"); // "Prepare" - LSTR MSG_TUNE = _UxGT("调整"); // "Tune" + LSTR MSG_INFO_SCREEN = _UxGT("信息屏"); // "Info screen" + LSTR MSG_PREPARE = _UxGT("准备"); // "Prepare" + LSTR MSG_TUNE = _UxGT("调整"); // "Tune" LSTR MSG_POWER_MONITOR = _UxGT("电源监控"); LSTR MSG_CURRENT = _UxGT("电流"); LSTR MSG_VOLTAGE = _UxGT("电压"); @@ -343,33 +343,33 @@ namespace Language_zh_CN { LSTR MSG_BUTTON_BACK = _UxGT("返回"); LSTR MSG_BUTTON_PROCEED = _UxGT("继续"); LSTR MSG_PAUSING = _UxGT("暂停中..."); - LSTR MSG_PAUSE_PRINT = _UxGT("暂停打印"); // "Pause print" - LSTR MSG_RESUME_PRINT = _UxGT("恢复打印"); // "Resume print" - LSTR MSG_STOP_PRINT = _UxGT("停止打印"); // "Stop print" + LSTR MSG_PAUSE_PRINT = _UxGT("暂停打印"); // "Pause print" + LSTR MSG_RESUME_PRINT = _UxGT("恢复打印"); // "Resume print" + LSTR MSG_STOP_PRINT = _UxGT("停止打印"); // "Stop print" LSTR MSG_PRINTING_OBJECT = _UxGT("打印物体"); LSTR MSG_CANCEL_OBJECT = _UxGT("取消物体"); LSTR MSG_CANCEL_OBJECT_N = _UxGT("取消物体 {"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("中断恢复"); - LSTR MSG_MEDIA_MENU = _UxGT("从存储卡上打印"); // "Print from SD" - LSTR MSG_NO_MEDIA = _UxGT("无存储卡"); // "No SD card" - LSTR MSG_DWELL = _UxGT("休眠中 ..."); // "Sleep..." - LSTR MSG_USERWAIT = _UxGT("点击继续 ..."); // "Click to resume..." - LSTR MSG_PRINT_PAUSED = _UxGT("暫停打印"); // "Print paused" + LSTR MSG_MEDIA_MENU = _UxGT("从存储卡上打印"); // "Print from SD" + LSTR MSG_NO_MEDIA = _UxGT("无存储卡"); // "No SD card" + LSTR MSG_DWELL = _UxGT("休眠中 ..."); // "Sleep..." + LSTR MSG_USERWAIT = _UxGT("点击继续 ..."); // "Click to resume..." + LSTR MSG_PRINT_PAUSED = _UxGT("暫停打印"); // "Print paused" LSTR MSG_PRINTING = _UxGT("打印中..."); - LSTR MSG_PRINT_ABORTED = _UxGT("已取消打印"); // "Print aborted" + LSTR MSG_PRINT_ABORTED = _UxGT("已取消打印"); // "Print aborted" LSTR MSG_PRINT_DONE = _UxGT("打印已完成"); - LSTR MSG_NO_MOVE = _UxGT("无移动"); // "No move." - LSTR MSG_KILLED = _UxGT("已杀掉"); // "KILLED. " - LSTR MSG_STOPPED = _UxGT("已停止"); // "STOPPED. " - LSTR MSG_CONTROL_RETRACT = _UxGT("回抽长度mm"); // "Retract mm" retract_length, retract length (positive mm) - LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("换手回抽长度mm"); // "Swap Re.mm" swap_retract_length, swap retract length (positive mm), for extruder change - LSTR MSG_CONTROL_RETRACTF = _UxGT("回抽速率mm/s"); // "Retract V" retract_feedrate_mm_s, feedrate for retracting (mm/s) - LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("Hop mm"); // "Hop mm" retract_zraise, retract Z-lift - LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("回抽恢复长度mm"); // "UnRet +mm" retract_recover_extra, additional recover length (mm, added to retract length when recovering) - LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("换手回抽恢复长度mm"); // "S UnRet+mm" swap_retract_recover_extra, additional swap recover length (mm, added to retract length when recovering from extruder change) - LSTR MSG_CONTROL_RETRACT_RECOVERF = _UxGT("回抽恢复后进料速率mm/s"); // "Unretract V" retract_recover_feedrate_mm_s, feedrate for recovering from retraction (mm/s) - LSTR MSG_CONTROL_RETRACT_RECOVER_SWAPF = _UxGT("S UnRet V"); // "S UnRet V" - LSTR MSG_AUTORETRACT = _UxGT("自动抽回"); // "Auto-Retract" autoretract_enabled, + LSTR MSG_NO_MOVE = _UxGT("无移动"); // "No move." + LSTR MSG_KILLED = _UxGT("已杀掉"); // "KILLED. " + LSTR MSG_STOPPED = _UxGT("已停止"); // "STOPPED. " + LSTR MSG_CONTROL_RETRACT = _UxGT("回抽长度mm"); // "Retract mm" retract_length, retract length (positive mm) + LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("换手回抽长度mm"); // "Swap Re.mm" swap_retract_length, swap retract length (positive mm), for extruder change + LSTR MSG_CONTROL_RETRACTF = _UxGT("回抽速率mm/s"); // "Retract V" retract_feedrate_mm_s, feedrate for retracting (mm/s) + LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("Hop mm"); // "Hop mm" retract_zraise, retract Z-lift + LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("回抽恢复长度mm"); // "UnRet +mm" retract_recover_extra, additional recover length (mm, added to retract length when recovering) + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("换手回抽恢复长度mm"); // "S UnRet+mm" swap_retract_recover_extra, additional swap recover length (mm, added to retract length when recovering from extruder change) + LSTR MSG_CONTROL_RETRACT_RECOVERF = _UxGT("回抽恢复后进料速率mm/s"); // "Unretract V" retract_recover_feedrate_mm_s, feedrate for recovering from retraction (mm/s) + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAPF = _UxGT("S UnRet V"); // "S UnRet V" + LSTR MSG_AUTORETRACT = _UxGT("自动抽回"); // "Auto-Retract" autoretract_enabled, LSTR MSG_FILAMENT_SWAP_LENGTH = _UxGT("交换长度"); LSTR MSG_FILAMENT_SWAP_EXTRA = _UxGT("额外的交换"); LSTR MSG_FILAMENT_PURGE_LENGTH = _UxGT("清洗长度"); @@ -387,19 +387,19 @@ namespace Language_zh_CN { LSTR MSG_TOOL_MIGRATION_AUTO = _UxGT("自动迁移"); LSTR MSG_TOOL_MIGRATION_END = _UxGT("上一个挤出机"); LSTR MSG_TOOL_MIGRATION_SWAP = _UxGT("迁移至 *"); - LSTR MSG_FILAMENTCHANGE = _UxGT("更换丝料"); // "Change filament" - LSTR MSG_FILAMENTCHANGE_E = _UxGT("更换丝料 *"); // "Change filament" - LSTR MSG_FILAMENTLOAD = _UxGT("装载丝料"); // "Load filament" - LSTR MSG_FILAMENTLOAD_E = _UxGT("装载丝料 *"); // "Load filament" - LSTR MSG_FILAMENTUNLOAD = _UxGT("卸载丝料"); // "Unload filament" - LSTR MSG_FILAMENTUNLOAD_E = _UxGT("卸载丝料 *"); // "Unload filament" - LSTR MSG_FILAMENTUNLOAD_ALL = _UxGT("卸载全部"); // "Unload All" - LSTR MSG_ATTACH_MEDIA = _UxGT("初始化存储卡"); // "Init. SD card" - LSTR MSG_CHANGE_MEDIA = _UxGT("更换存储卡"); // "Change SD card" + LSTR MSG_FILAMENTCHANGE = _UxGT("更换丝料"); // "Change filament" + LSTR MSG_FILAMENTCHANGE_E = _UxGT("更换丝料 *"); // "Change filament" + LSTR MSG_FILAMENTLOAD = _UxGT("装载丝料"); // "Load filament" + LSTR MSG_FILAMENTLOAD_E = _UxGT("装载丝料 *"); // "Load filament" + LSTR MSG_FILAMENTUNLOAD = _UxGT("卸载丝料"); // "Unload filament" + LSTR MSG_FILAMENTUNLOAD_E = _UxGT("卸载丝料 *"); // "Unload filament" + LSTR MSG_FILAMENTUNLOAD_ALL = _UxGT("卸载全部"); // "Unload All" + LSTR MSG_ATTACH_MEDIA = _UxGT("初始化存储卡"); // "Init. SD card" + LSTR MSG_CHANGE_MEDIA = _UxGT("更换存储卡"); // "Change SD card" LSTR MSG_RELEASE_MEDIA = _UxGT("释放存储卡"); - LSTR MSG_ZPROBE_OUT = _UxGT("Z探针在热床之外"); // "Z probe out. bed" Z probe is not within the physical limits - LSTR MSG_SKEW_FACTOR = _UxGT("偏斜因数"); // "Skew Factor" - LSTR MSG_BLTOUCH = _UxGT("BLTouch"); // "BLTouch" + LSTR MSG_ZPROBE_OUT = _UxGT("Z探针在热床之外"); // "Z probe out. bed" Z probe is not within the physical limits + LSTR MSG_SKEW_FACTOR = _UxGT("偏斜因数"); // "Skew Factor" + LSTR MSG_BLTOUCH = _UxGT("BLTouch"); // "BLTouch" LSTR MSG_BLTOUCH_SELFTEST = _UxGT("自检"); LSTR MSG_BLTOUCH_RESET = _UxGT("重置"); LSTR MSG_BLTOUCH_STOW = _UxGT("装载"); @@ -419,96 +419,96 @@ namespace Language_zh_CN { LSTR MSG_MANUAL_DEPLOY_TOUCHMI = _UxGT("部署TouchMI"); LSTR MSG_MANUAL_DEPLOY = _UxGT("部署Z探针"); LSTR MSG_MANUAL_STOW = _UxGT("收好Z探针"); - LSTR MSG_HOME_FIRST = _UxGT("归位 %s 先"); // "Home ... first" + LSTR MSG_HOME_FIRST = _UxGT("归位 %s 先"); // "Home ... first" LSTR MSG_ZPROBE_OFFSETS = _UxGT("探针偏移量"); LSTR MSG_ZPROBE_XOFFSET = _UxGT("探针X偏移"); LSTR MSG_ZPROBE_YOFFSET = _UxGT("探针Y偏移"); - LSTR MSG_ZPROBE_ZOFFSET = _UxGT("探针Z偏移"); // "Z Offset" - LSTR MSG_BABYSTEP_X = _UxGT("微量调整X轴"); // "Babystep X" lcd_babystep_x, Babystepping enables the user to control the axis in tiny amounts - LSTR MSG_BABYSTEP_Y = _UxGT("微量调整Y轴"); // "Babystep Y" - LSTR MSG_BABYSTEP_Z = _UxGT("微量调整Z轴"); // "Babystep Z" + LSTR MSG_ZPROBE_ZOFFSET = _UxGT("探针Z偏移"); // "Z Offset" + LSTR MSG_BABYSTEP_X = _UxGT("微量调整X轴"); // "Babystep X" lcd_babystep_x, Babystepping enables the user to control the axis in tiny amounts + LSTR MSG_BABYSTEP_Y = _UxGT("微量调整Y轴"); // "Babystep Y" + LSTR MSG_BABYSTEP_Z = _UxGT("微量调整Z轴"); // "Babystep Z" LSTR MSG_BABYSTEP_TOTAL = _UxGT("总计"); - LSTR MSG_ENDSTOP_ABORT = _UxGT("挡块终止"); // "Endstop abort" - LSTR MSG_HEATING_FAILED_LCD = _UxGT("加热失败"); // "Heating failed" - LSTR MSG_ERR_REDUNDANT_TEMP = _UxGT("错误:冗余温度"); // "Err: REDUNDANT TEMP" - LSTR MSG_THERMAL_RUNAWAY = _UxGT("温控失控"); // "THERMAL RUNAWAY" + LSTR MSG_ENDSTOP_ABORT = _UxGT("挡块终止"); // "Endstop abort" + LSTR MSG_HEATING_FAILED_LCD = _UxGT("加热失败"); // "Heating failed" + LSTR MSG_ERR_REDUNDANT_TEMP = _UxGT("错误:冗余温度"); // "Err: REDUNDANT TEMP" + LSTR MSG_THERMAL_RUNAWAY = _UxGT("温控失控"); // "THERMAL RUNAWAY" LSTR MSG_THERMAL_RUNAWAY_BED = _UxGT("热床热量失控"); LSTR MSG_THERMAL_RUNAWAY_CHAMBER = _UxGT("机箱热量失控"); - LSTR MSG_ERR_MAXTEMP = _UxGT("错误:最高温度"); // "Err: MAXTEMP" - LSTR MSG_ERR_MINTEMP = _UxGT("错误:最低温度"); // "Err: MINTEMP" - LSTR MSG_HALTED = _UxGT("打印停机"); // "PRINTER HALTED" - LSTR MSG_PLEASE_RESET = _UxGT("请重置"); // "Please reset" - LSTR MSG_HEATING = _UxGT("加热中 ..."); // "Heating..." + LSTR MSG_ERR_MAXTEMP = _UxGT("错误:最高温度"); // "Err: MAXTEMP" + LSTR MSG_ERR_MINTEMP = _UxGT("错误:最低温度"); // "Err: MINTEMP" + LSTR MSG_HALTED = _UxGT("打印停机"); // "PRINTER HALTED" + LSTR MSG_PLEASE_RESET = _UxGT("请重置"); // "Please reset" + LSTR MSG_HEATING = _UxGT("加热中 ..."); // "Heating..." LSTR MSG_COOLING = _UxGT("冷却中 ..."); - LSTR MSG_BED_HEATING = _UxGT("加热热床中 ..."); // "Bed Heating..." + LSTR MSG_BED_HEATING = _UxGT("加热热床中 ..."); // "Bed Heating..." LSTR MSG_BED_COOLING = _UxGT("热床冷却中 ..."); LSTR MSG_CHAMBER_HEATING = _UxGT("机箱加热中 ..."); LSTR MSG_CHAMBER_COOLING = _UxGT("机箱冷却中 ..."); - LSTR MSG_DELTA_CALIBRATE = _UxGT("⊿校准"); // "Delta Calibration" - LSTR MSG_DELTA_CALIBRATE_X = _UxGT("⊿校准X"); // "Calibrate X" - LSTR MSG_DELTA_CALIBRATE_Y = _UxGT("⊿校准Y"); // "Calibrate Y" - LSTR MSG_DELTA_CALIBRATE_Z = _UxGT("⊿校准Z"); // "Calibrate Z" - LSTR MSG_DELTA_CALIBRATE_CENTER = _UxGT("⊿校准中心"); // "Calibrate Center" - LSTR MSG_DELTA_SETTINGS = _UxGT("⊿设置"); // "Delta Settings" - LSTR MSG_DELTA_AUTO_CALIBRATE = _UxGT("⊿自动校准"); // "Auto Calibration" - LSTR MSG_DELTA_DIAG_ROD = _UxGT("⊿斜柱"); // "Diag Rod" - LSTR MSG_DELTA_HEIGHT = _UxGT("⊿高度"); // "Height" - LSTR MSG_DELTA_RADIUS = _UxGT("⊿半径"); // "Radius" - LSTR MSG_INFO_MENU = _UxGT("关于打印机"); // "About Printer" - LSTR MSG_INFO_PRINTER_MENU = _UxGT("打印机信息"); // "Printer Info" - LSTR MSG_3POINT_LEVELING = _UxGT("三点调平"); // "3-Point Leveling" - LSTR MSG_LINEAR_LEVELING = _UxGT("线性调平"); // "Linear Leveling" - LSTR MSG_BILINEAR_LEVELING = _UxGT("双线性调平"); // "Bilinear Leveling" - LSTR MSG_UBL_LEVELING = _UxGT("统一热床调平(UBL)"); // "Unified Bed Leveling" - LSTR MSG_MESH_LEVELING = _UxGT("网格调平"); // "Mesh Leveling" - LSTR MSG_INFO_STATS_MENU = _UxGT("打印机统计"); // "Printer Stats" - LSTR MSG_INFO_BOARD_MENU = _UxGT("主板信息"); // "Board Info" - LSTR MSG_INFO_THERMISTOR_MENU = _UxGT("温度计"); // "Thermistors" - LSTR MSG_INFO_EXTRUDERS = _UxGT("挤出机"); // "Extruders" - LSTR MSG_INFO_BAUDRATE = _UxGT("波特率"); // "Baud" - LSTR MSG_INFO_PROTOCOL = _UxGT("协议"); // "Protocol" + LSTR MSG_DELTA_CALIBRATE = _UxGT("⊿校准"); // "Delta Calibration" + LSTR MSG_DELTA_CALIBRATE_X = _UxGT("⊿校准X"); // "Calibrate X" + LSTR MSG_DELTA_CALIBRATE_Y = _UxGT("⊿校准Y"); // "Calibrate Y" + LSTR MSG_DELTA_CALIBRATE_Z = _UxGT("⊿校准Z"); // "Calibrate Z" + LSTR MSG_DELTA_CALIBRATE_CENTER = _UxGT("⊿校准中心"); // "Calibrate Center" + LSTR MSG_DELTA_SETTINGS = _UxGT("⊿设置"); // "Delta Settings" + LSTR MSG_DELTA_AUTO_CALIBRATE = _UxGT("⊿自动校准"); // "Auto Calibration" + LSTR MSG_DELTA_DIAG_ROD = _UxGT("⊿斜柱"); // "Diag Rod" + LSTR MSG_DELTA_HEIGHT = _UxGT("⊿高度"); // "Height" + LSTR MSG_DELTA_RADIUS = _UxGT("⊿半径"); // "Radius" + LSTR MSG_INFO_MENU = _UxGT("关于打印机"); // "About Printer" + LSTR MSG_INFO_PRINTER_MENU = _UxGT("打印机信息"); // "Printer Info" + LSTR MSG_3POINT_LEVELING = _UxGT("三点调平"); // "3-Point Leveling" + LSTR MSG_LINEAR_LEVELING = _UxGT("线性调平"); // "Linear Leveling" + LSTR MSG_BILINEAR_LEVELING = _UxGT("双线性调平"); // "Bilinear Leveling" + LSTR MSG_UBL_LEVELING = _UxGT("统一热床调平(UBL)"); // "Unified Bed Leveling" + LSTR MSG_MESH_LEVELING = _UxGT("网格调平"); // "Mesh Leveling" + LSTR MSG_INFO_STATS_MENU = _UxGT("打印机统计"); // "Printer Stats" + LSTR MSG_INFO_BOARD_MENU = _UxGT("主板信息"); // "Board Info" + LSTR MSG_INFO_THERMISTOR_MENU = _UxGT("温度计"); // "Thermistors" + LSTR MSG_INFO_EXTRUDERS = _UxGT("挤出机"); // "Extruders" + LSTR MSG_INFO_BAUDRATE = _UxGT("波特率"); // "Baud" + LSTR MSG_INFO_PROTOCOL = _UxGT("协议"); // "Protocol" LSTR MSG_INFO_RUNAWAY_OFF = _UxGT("监控温度失控:关"); LSTR MSG_INFO_RUNAWAY_ON = _UxGT("监控温度失控:开"); LSTR MSG_HOTEND_IDLE_TIMEOUT = _UxGT("热端空闲超时"); - LSTR MSG_CASE_LIGHT = _UxGT("外壳灯"); // "Case light" - LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("灯亮度"); // "Light BRIGHTNESS" + LSTR MSG_CASE_LIGHT = _UxGT("外壳灯"); // "Case light" + LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("灯亮度"); // "Light BRIGHTNESS" - LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("打印机不正确"); // "The printer is incorrect" + LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("打印机不正确"); // "The printer is incorrect" #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("打印计数"); // "Print Count" - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("完成了"); // "Completed" - LSTR MSG_INFO_PRINT_TIME = _UxGT("总打印时间"); // "Total print time" - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最长工作时间"); // "Longest job time" - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("总计挤出"); // "Extruded total" + LSTR MSG_INFO_PRINT_COUNT = _UxGT("打印计数"); // "Print Count" + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("完成了"); // "Completed" + LSTR MSG_INFO_PRINT_TIME = _UxGT("总打印时间"); // "Total print time" + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最长工作时间"); // "Longest job time" + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("总计挤出"); // "Extruded total" #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("打印数"); // "Prints" - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("完成"); // "Completed" - LSTR MSG_INFO_PRINT_TIME = _UxGT("总共"); // "Total" - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最长"); // "Longest" - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("已挤出"); // "Extruded" + LSTR MSG_INFO_PRINT_COUNT = _UxGT("打印数"); // "Prints" + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("完成"); // "Completed" + LSTR MSG_INFO_PRINT_TIME = _UxGT("总共"); // "Total" + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最长"); // "Longest" + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("已挤出"); // "Extruded" #endif - LSTR MSG_INFO_MIN_TEMP = _UxGT("最低温度"); // "Min Temp" - LSTR MSG_INFO_MAX_TEMP = _UxGT("最高温度"); // "Max Temp" - LSTR MSG_INFO_PSU = _UxGT("电源供应"); // "Power Supply" - LSTR MSG_DRIVE_STRENGTH = _UxGT("驱动力度"); // "Drive Strength" - LSTR MSG_DAC_PERCENT_N = _UxGT("@ 驱动 %"); // "E Driver %" + LSTR MSG_INFO_MIN_TEMP = _UxGT("最低温度"); // "Min Temp" + LSTR MSG_INFO_MAX_TEMP = _UxGT("最高温度"); // "Max Temp" + LSTR MSG_INFO_PSU = _UxGT("电源供应"); // "Power Supply" + LSTR MSG_DRIVE_STRENGTH = _UxGT("驱动力度"); // "Drive Strength" + LSTR MSG_DAC_PERCENT_N = _UxGT("@ 驱动 %"); // "E Driver %" LSTR MSG_ERROR_TMC = _UxGT("TMC 连接错误"); - LSTR MSG_DAC_EEPROM_WRITE = _UxGT("保存驱动设置"); // "DAC EEPROM Write" + LSTR MSG_DAC_EEPROM_WRITE = _UxGT("保存驱动设置"); // "DAC EEPROM Write" LSTR MSG_FILAMENT_CHANGE_HEADER = _UxGT("更换料"); - LSTR MSG_FILAMENT_CHANGE_HEADER_PAUSE = _UxGT("打印已暂停"); // "PRINT PAUSED" - LSTR MSG_FILAMENT_CHANGE_HEADER_LOAD = _UxGT("装载丝料"); // "LOAD FILAMENT" - LSTR MSG_FILAMENT_CHANGE_HEADER_UNLOAD = _UxGT("卸载丝料"); // "UNLOAD FILAMENT" - LSTR MSG_FILAMENT_CHANGE_OPTION_HEADER = _UxGT("恢复选项:"); // "RESUME OPTIONS:" - LSTR MSG_FILAMENT_CHANGE_OPTION_PURGE = _UxGT("清除更多"); // "Purge more" - LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("恢复打印"); // "Resume print" - LSTR MSG_FILAMENT_CHANGE_NOZZLE = _UxGT(" 喷嘴: "); // " Nozzle: " + LSTR MSG_FILAMENT_CHANGE_HEADER_PAUSE = _UxGT("打印已暂停"); // "PRINT PAUSED" + LSTR MSG_FILAMENT_CHANGE_HEADER_LOAD = _UxGT("装载丝料"); // "LOAD FILAMENT" + LSTR MSG_FILAMENT_CHANGE_HEADER_UNLOAD = _UxGT("卸载丝料"); // "UNLOAD FILAMENT" + LSTR MSG_FILAMENT_CHANGE_OPTION_HEADER = _UxGT("恢复选项:"); // "RESUME OPTIONS:" + LSTR MSG_FILAMENT_CHANGE_OPTION_PURGE = _UxGT("清除更多"); // "Purge more" + LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("恢复打印"); // "Resume print" + LSTR MSG_FILAMENT_CHANGE_NOZZLE = _UxGT(" 喷嘴: "); // " Nozzle: " LSTR MSG_RUNOUT_SENSOR = _UxGT("断料传感器"); LSTR MSG_RUNOUT_DISTANCE_MM = _UxGT("断料距离mm"); - LSTR MSG_KILL_HOMING_FAILED = _UxGT("归原位失败"); // "Homing failed" - LSTR MSG_LCD_PROBING_FAILED = _UxGT("探针探测失败"); // "Probing failed" + LSTR MSG_KILL_HOMING_FAILED = _UxGT("归原位失败"); // "Homing failed" + LSTR MSG_LCD_PROBING_FAILED = _UxGT("探针探测失败"); // "Probing failed" LSTR MSG_MMU2_CHOOSE_FILAMENT_HEADER = _UxGT("选择料"); LSTR MSG_MMU2_MENU = _UxGT("MMU"); @@ -566,27 +566,27 @@ namespace Language_zh_CN { #if LCD_HEIGHT >= 4 LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("按下按钮", "恢复打印")); LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("停靠中...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("等待开始", "丝料", "变更")); // "Wait for start of the filament change" + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("等待开始", "丝料", "变更")); // "Wait for start of the filament change" LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("插入料", "并按下", "以继续")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("按下按钮来", "加热喷嘴.")); // "Press button to heat nozzle." - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("加热喷嘴", "请等待 ...")); // "Heating nozzle Please wait..." - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("等待", "卸下丝料")); // "Wait for filament unload" - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("等待", "进料")); // "Wait for filament load" - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("等待", "丝料清除")); // "Wait for filament purge" + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("按下按钮来", "加热喷嘴.")); // "Press button to heat nozzle." + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("加热喷嘴", "请等待 ...")); // "Heating nozzle Please wait..." + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("等待", "卸下丝料")); // "Wait for filament unload" + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("等待", "进料")); // "Wait for filament load" + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("等待", "丝料清除")); // "Wait for filament purge" LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("按下已完成", "料的清洗")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("等待打印", "恢复")); // "Wait for print to resume" + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("等待打印", "恢复")); // "Wait for print to resume" #else LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("按下继续")); LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("停靠中...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("请等待 ...")); // "Please wait..." - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("插入并单击")); // "Insert and Click" + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("请等待 ...")); // "Please wait..." + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("插入并单击")); // "Insert and Click" LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("按下加热")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("加热中 ...")); // "Heating..." - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("退出中 ...")); // "Ejecting..." - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("装载中 ...")); // "Loading..." - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("清除中 ...")); // "Purging..." + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("加热中 ...")); // "Heating..." + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("退出中 ...")); // "Ejecting..." + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("装载中 ...")); // "Loading..." + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("清除中 ...")); // "Purging..." LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("按下完成")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("恢复中 ...")); // "Resuming..." + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("恢复中 ...")); // "Resuming..." #endif LSTR MSG_TMC_DRIVERS = _UxGT("TMC驱动器"); LSTR MSG_TMC_CURRENT = _UxGT("驱动电流"); @@ -606,7 +606,7 @@ namespace Language_zh_CN { LSTR MSG_REHEAT = _UxGT("重新加热"); LSTR MSG_REHEATING = _UxGT("重新加热中..."); - LSTR MSG_SHORT_DAY = _UxGT("天"); // "d" // One character only - LSTR MSG_SHORT_HOUR = _UxGT("时"); // "h" // One character only - LSTR MSG_SHORT_MINUTE = _UxGT("分"); // "m" // One character only + LSTR MSG_SHORT_DAY = _UxGT("天"); // "d" // One character only + LSTR MSG_SHORT_HOUR = _UxGT("时"); // "h" // One character only + LSTR MSG_SHORT_MINUTE = _UxGT("分"); // "m" // One character only } diff --git a/Marlin/src/lcd/language/language_zh_TW.h b/Marlin/src/lcd/language/language_zh_TW.h index 9365225cae85..968ad4424e19 100644 --- a/Marlin/src/lcd/language/language_zh_TW.h +++ b/Marlin/src/lcd/language/language_zh_TW.h @@ -28,87 +28,87 @@ * See also https://marlinfw.org/docs/development/lcd_language.html */ namespace Language_zh_TW { - using namespace Language_en; // Inherit undefined strings from English + using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 3; LSTR LANGUAGE = _UxGT("Traditional Chinese"); - LSTR WELCOME_MSG = MACHINE_NAME _UxGT("已就緒."); // " ready." - LSTR MSG_YES = _UxGT("是"); // "YES" - LSTR MSG_NO = _UxGT("否"); // "NO" - LSTR MSG_BACK = _UxGT("返回"); // "Back" - LSTR MSG_MEDIA_ABORTING = _UxGT("正在中止..."); // "Aborting..." - LSTR MSG_MEDIA_INSERTED = _UxGT("記憶卡已插入"); // "Card inserted" - LSTR MSG_MEDIA_REMOVED = _UxGT("記憶卡被拔出"); // "Card removed" - LSTR MSG_MEDIA_WAITING = _UxGT("等待記憶卡"); // "Waiting for media" + LSTR WELCOME_MSG = MACHINE_NAME _UxGT("已就緒."); // " ready." + LSTR MSG_YES = _UxGT("是"); // "YES" + LSTR MSG_NO = _UxGT("否"); // "NO" + LSTR MSG_BACK = _UxGT("返回"); // "Back" + LSTR MSG_MEDIA_ABORTING = _UxGT("正在中止..."); // "Aborting..." + LSTR MSG_MEDIA_INSERTED = _UxGT("記憶卡已插入"); // "Card inserted" + LSTR MSG_MEDIA_REMOVED = _UxGT("記憶卡被拔出"); // "Card removed" + LSTR MSG_MEDIA_WAITING = _UxGT("等待記憶卡"); // "Waiting for media" LSTR MSG_MEDIA_READ_ERROR = _UxGT("記憶卡讀取錯誤"); //"Media read error" - LSTR MSG_MEDIA_USB_REMOVED = _UxGT("USB裝置已移除"); // "USB device removed" - LSTR MSG_MEDIA_USB_FAILED = _UxGT("USB啟動失敗"); // "USB start failed" - LSTR MSG_LCD_ENDSTOPS = _UxGT("擋塊"); // "Endstops" // Max length 8 characters - LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("軟體擋塊"); // "Soft Endstops" - LSTR MSG_MAIN_MENU = _UxGT("主選單"); // "Main" - LSTR MSG_ADVANCED_SETTINGS = _UxGT("進階設置"); // "Advanced Settings" - LSTR MSG_CONFIGURATION = _UxGT("設置"); //Configuration - LSTR MSG_RUN_AUTO_FILES = _UxGT("自動開始"); // "Autostart" - LSTR MSG_DISABLE_STEPPERS = _UxGT("關閉步進馬達"); // "Disable steppers" - LSTR MSG_DEBUG_MENU = _UxGT("除錯選單"); // "Debug Menu" - LSTR MSG_PROGRESS_BAR_TEST = _UxGT("進度條測試"); // "Progress Bar Test" - LSTR MSG_AUTO_HOME = _UxGT("自動回原點"); // "Auto home" - LSTR MSG_AUTO_HOME_X = _UxGT("回X原點"); // "Home X" - LSTR MSG_AUTO_HOME_Y = _UxGT("回Y原點"); // "Home Y" - LSTR MSG_AUTO_HOME_Z = _UxGT("回Z原點"); // "Home Z" - LSTR MSG_AUTO_Z_ALIGN = _UxGT("自動Z對齊"); // "Auto Z-Align" - LSTR MSG_LEVEL_BED_HOMING = _UxGT("平台調平XYZ歸原點"); // "Homing XYZ" - LSTR MSG_LEVEL_BED_WAITING = _UxGT("單擊開始熱床調平"); // "Click to Begin" - LSTR MSG_LEVEL_BED_NEXT_POINT = _UxGT("下個熱床調平點"); // "Next Point" - LSTR MSG_LEVEL_BED_DONE = _UxGT("完成熱床調平"); // "Leveling Done!" - LSTR MSG_Z_FADE_HEIGHT = _UxGT("淡出高度"); // "Fade Height" - LSTR MSG_SET_HOME_OFFSETS = _UxGT("設置原點偏移"); // "Set home offsets" - LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("偏移已啟用"); // "Offsets applied" + LSTR MSG_MEDIA_USB_REMOVED = _UxGT("USB裝置已移除"); // "USB device removed" + LSTR MSG_MEDIA_USB_FAILED = _UxGT("USB啟動失敗"); // "USB start failed" + LSTR MSG_LCD_ENDSTOPS = _UxGT("擋塊"); // "Endstops" // Max length 8 characters + LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("軟體擋塊"); // "Soft Endstops" + LSTR MSG_MAIN_MENU = _UxGT("主選單"); // "Main" + LSTR MSG_ADVANCED_SETTINGS = _UxGT("進階設置"); // "Advanced Settings" + LSTR MSG_CONFIGURATION = _UxGT("設置"); //Configuration + LSTR MSG_RUN_AUTO_FILES = _UxGT("自動開始"); // "Autostart" + LSTR MSG_DISABLE_STEPPERS = _UxGT("關閉步進馬達"); // "Disable steppers" + LSTR MSG_DEBUG_MENU = _UxGT("除錯選單"); // "Debug Menu" + LSTR MSG_PROGRESS_BAR_TEST = _UxGT("進度條測試"); // "Progress Bar Test" + LSTR MSG_AUTO_HOME = _UxGT("自動回原點"); // "Auto home" + LSTR MSG_AUTO_HOME_X = _UxGT("回X原點"); // "Home X" + LSTR MSG_AUTO_HOME_Y = _UxGT("回Y原點"); // "Home Y" + LSTR MSG_AUTO_HOME_Z = _UxGT("回Z原點"); // "Home Z" + LSTR MSG_AUTO_Z_ALIGN = _UxGT("自動Z對齊"); // "Auto Z-Align" + LSTR MSG_LEVEL_BED_HOMING = _UxGT("平台調平XYZ歸原點"); // "Homing XYZ" + LSTR MSG_LEVEL_BED_WAITING = _UxGT("單擊開始熱床調平"); // "Click to Begin" + LSTR MSG_LEVEL_BED_NEXT_POINT = _UxGT("下個熱床調平點"); // "Next Point" + LSTR MSG_LEVEL_BED_DONE = _UxGT("完成熱床調平"); // "Leveling Done!" + LSTR MSG_Z_FADE_HEIGHT = _UxGT("淡出高度"); // "Fade Height" + LSTR MSG_SET_HOME_OFFSETS = _UxGT("設置原點偏移"); // "Set home offsets" + LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("偏移已啟用"); // "Offsets applied" #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("預熱 ") PREHEAT_1_LABEL; // "Preheat PREHEAT_1_LABEL" - LSTR MSG_PREHEAT_1_H = _UxGT("預熱 ") PREHEAT_1_LABEL " ~"; // "Preheat PREHEAT_1_LABEL" - LSTR MSG_PREHEAT_1_END = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 噴嘴"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_1_END_E = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 噴嘴 ~"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_1_ALL = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 全部"); //MSG_PREHEAT_1 " All" - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 熱床"); //MSG_PREHEAT_1 " Bed" - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 設置"); //MSG_PREHEAT_1 " conf" + LSTR MSG_PREHEAT_1 = _UxGT("預熱 ") PREHEAT_1_LABEL; // "Preheat PREHEAT_1_LABEL" + LSTR MSG_PREHEAT_1_H = _UxGT("預熱 ") PREHEAT_1_LABEL " ~"; // "Preheat PREHEAT_1_LABEL" + LSTR MSG_PREHEAT_1_END = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 噴嘴"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_1_END_E = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 噴嘴 ~"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_1_ALL = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 全部"); //MSG_PREHEAT_1 " All" + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 熱床"); //MSG_PREHEAT_1 " Bed" + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 設置"); //MSG_PREHEAT_1 " conf" - LSTR MSG_PREHEAT_M = _UxGT("預熱 $"); // "Preheat PREHEAT_1_LABEL" - LSTR MSG_PREHEAT_M_H = _UxGT("預熱 $ ~"); // "Preheat PREHEAT_1_LABEL" - LSTR MSG_PREHEAT_M_END = _UxGT("預熱 $ 噴嘴"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_M_END_E = _UxGT("預熱 $ 噴嘴 ~"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_M_ALL = _UxGT("預熱 $ 全部"); //MSG_PREHEAT_1 " All" - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("預熱 $ 熱床"); //MSG_PREHEAT_1 " Bed" - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("預熱 $ 設置"); //MSG_PREHEAT_1 " conf" + LSTR MSG_PREHEAT_M = _UxGT("預熱 $"); // "Preheat PREHEAT_1_LABEL" + LSTR MSG_PREHEAT_M_H = _UxGT("預熱 $ ~"); // "Preheat PREHEAT_1_LABEL" + LSTR MSG_PREHEAT_M_END = _UxGT("預熱 $ 噴嘴"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_M_END_E = _UxGT("預熱 $ 噴嘴 ~"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_M_ALL = _UxGT("預熱 $ 全部"); //MSG_PREHEAT_1 " All" + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("預熱 $ 熱床"); //MSG_PREHEAT_1 " Bed" + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("預熱 $ 設置"); //MSG_PREHEAT_1 " conf" #endif - LSTR MSG_PREHEAT_CUSTOM = _UxGT("自定預熱"); // "Preheat Custom" - LSTR MSG_COOLDOWN = _UxGT("降溫"); // "Cooldown" - LSTR MSG_LASER_MENU = _UxGT("激光控制"); // "Laser Control" - LSTR MSG_LASER_POWER = _UxGT("激光電源"); // "Laser Power" - LSTR MSG_SPINDLE_MENU = _UxGT("主軸控告制"); // "Spindle Control" - LSTR MSG_SPINDLE_POWER = _UxGT("主軸電源"); // "Spindle Power" - LSTR MSG_SPINDLE_REVERSE = _UxGT("主軸反轉"); // "Spindle Reverse" - LSTR MSG_SWITCH_PS_ON = _UxGT("電源打開"); // "Switch power on" - LSTR MSG_SWITCH_PS_OFF = _UxGT("電源關閉"); // "Switch power off" - LSTR MSG_EXTRUDE = _UxGT("擠出"); // "Extrude" - LSTR MSG_RETRACT = _UxGT("回縮"); // "Retract" - LSTR MSG_MOVE_AXIS = _UxGT("移動軸"); // "Move axis" - LSTR MSG_BED_LEVELING = _UxGT("調平熱床"); // "Bed leveling" - LSTR MSG_LEVEL_BED = _UxGT("調平熱床"); // "Level bed" - LSTR MSG_BED_TRAMMING = _UxGT("調平邊角"); // "Bed Tramming" - LSTR MSG_NEXT_CORNER = _UxGT("下個邊角"); // "Next corner" - LSTR MSG_MESH_EDITOR = _UxGT("網格編輯器"); // "Mesh Editor" - LSTR MSG_EDIT_MESH = _UxGT("編輯網格"); // "Edit Mesh" - LSTR MSG_EDITING_STOPPED = _UxGT("網格編輯已停止"); // "Mesh Editing Stopped" - LSTR MSG_PROBING_POINT = _UxGT("探測點"); // "Probing Point" - LSTR MSG_MESH_X = _UxGT("索引 X"); // "Index X" - LSTR MSG_MESH_Y = _UxGT("索引 Y"); // "Index Y" - LSTR MSG_MESH_EDIT_Z = _UxGT("Z 值"); // "Z Value" - LSTR MSG_CUSTOM_COMMANDS = _UxGT("自定命令"); // "Custom Commands" - LSTR MSG_M48_TEST = _UxGT("M48 探測測試"); // "M48 Probe Test" - LSTR MSG_M48_POINT = _UxGT("M48 探測點"); // "M48 Point" - LSTR MSG_M48_DEVIATION = _UxGT("偏差"); // "Deviation" + LSTR MSG_PREHEAT_CUSTOM = _UxGT("自定預熱"); // "Preheat Custom" + LSTR MSG_COOLDOWN = _UxGT("降溫"); // "Cooldown" + LSTR MSG_LASER_MENU = _UxGT("激光控制"); // "Laser Control" + LSTR MSG_LASER_POWER = _UxGT("激光電源"); // "Laser Power" + LSTR MSG_SPINDLE_MENU = _UxGT("主軸控告制"); // "Spindle Control" + LSTR MSG_SPINDLE_POWER = _UxGT("主軸電源"); // "Spindle Power" + LSTR MSG_SPINDLE_REVERSE = _UxGT("主軸反轉"); // "Spindle Reverse" + LSTR MSG_SWITCH_PS_ON = _UxGT("電源打開"); // "Switch power on" + LSTR MSG_SWITCH_PS_OFF = _UxGT("電源關閉"); // "Switch power off" + LSTR MSG_EXTRUDE = _UxGT("擠出"); // "Extrude" + LSTR MSG_RETRACT = _UxGT("回縮"); // "Retract" + LSTR MSG_MOVE_AXIS = _UxGT("移動軸"); // "Move axis" + LSTR MSG_BED_LEVELING = _UxGT("調平熱床"); // "Bed leveling" + LSTR MSG_LEVEL_BED = _UxGT("調平熱床"); // "Level bed" + LSTR MSG_BED_TRAMMING = _UxGT("調平邊角"); // "Bed Tramming" + LSTR MSG_NEXT_CORNER = _UxGT("下個邊角"); // "Next corner" + LSTR MSG_MESH_EDITOR = _UxGT("網格編輯器"); // "Mesh Editor" + LSTR MSG_EDIT_MESH = _UxGT("編輯網格"); // "Edit Mesh" + LSTR MSG_EDITING_STOPPED = _UxGT("網格編輯已停止"); // "Mesh Editing Stopped" + LSTR MSG_PROBING_POINT = _UxGT("探測點"); // "Probing Point" + LSTR MSG_MESH_X = _UxGT("索引 X"); // "Index X" + LSTR MSG_MESH_Y = _UxGT("索引 Y"); // "Index Y" + LSTR MSG_MESH_EDIT_Z = _UxGT("Z 值"); // "Z Value" + LSTR MSG_CUSTOM_COMMANDS = _UxGT("自定命令"); // "Custom Commands" + LSTR MSG_M48_TEST = _UxGT("M48 探測測試"); // "M48 Probe Test" + LSTR MSG_M48_POINT = _UxGT("M48 探測點"); // "M48 Point" + LSTR MSG_M48_DEVIATION = _UxGT("偏差"); // "Deviation" LSTR MSG_IDEX_MENU = _UxGT("IDEX Mode"); LSTR MSG_OFFSETS_MENU = _UxGT("Tool Offsets"); LSTR MSG_IDEX_MODE_AUTOPARK = _UxGT("Auto-Park"); @@ -117,75 +117,75 @@ namespace Language_zh_TW { LSTR MSG_IDEX_MODE_FULL_CTRL = _UxGT("Full Control"); LSTR MSG_HOTEND_OFFSET_Z = _UxGT("2nd Nozzle Z"); LSTR MSG_HOTEND_OFFSET_A = _UxGT("2nd Nozzle @"); - LSTR MSG_UBL_DOING_G29 = _UxGT("執行G29"); // "Doing G29" - LSTR MSG_UBL_TOOLS = _UxGT("UBL工具"); // "UBL Tools" - LSTR MSG_UBL_LEVEL_BED = _UxGT("統一熱床調平(UBL)"); // "Unified Bed Leveling" - LSTR MSG_LCD_TILTING_MESH = _UxGT("傾斜點"); // "Tilting Point" - LSTR MSG_UBL_MANUAL_MESH = _UxGT("手工建網"); // "Manually Build Mesh" - LSTR MSG_UBL_BC_INSERT = _UxGT("放置墊片並測量"); // "Place shim & measure" - LSTR MSG_UBL_BC_INSERT2 = _UxGT("測量"); // "Measure" - LSTR MSG_UBL_BC_REMOVE = _UxGT("移除並測量熱床"); // "Remove & measure bed" - LSTR MSG_UBL_MOVING_TO_NEXT = _UxGT("移動到下一個"); // "Moving to next" - LSTR MSG_UBL_ACTIVATE_MESH = _UxGT("啟動UBL"); // "Activate UBL" - LSTR MSG_UBL_DEACTIVATE_MESH = _UxGT("關閉UBL"); // "Deactivate UBL" - LSTR MSG_UBL_SET_TEMP_BED = _UxGT("置設熱床溫度"); // "Bed Temp" - LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("置設熱床溫度"); // "Bed Temp" - LSTR MSG_UBL_SET_TEMP_HOTEND = _UxGT("置設噴嘴溫度"); // "Hotend Temp" - LSTR MSG_UBL_HOTEND_TEMP_CUSTOM = _UxGT("熱端溫度"); // "Hotend Temp" - LSTR MSG_UBL_MESH_EDIT = _UxGT("網格編輯"); // "Mesh Edit" - LSTR MSG_UBL_EDIT_CUSTOM_MESH = _UxGT("編輯客戶網格"); // "Edit Custom Mesh" - LSTR MSG_UBL_FINE_TUNE_MESH = _UxGT("細調網格"); // "Fine Tuning Mesh" - LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("完成編輯網格"); // "Done Editing Mesh" - LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("創設客戶網格"); // "Build Custom Mesh" - LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("創設網格"); // "Build Mesh" + LSTR MSG_UBL_DOING_G29 = _UxGT("執行G29"); // "Doing G29" + LSTR MSG_UBL_TOOLS = _UxGT("UBL工具"); // "UBL Tools" + LSTR MSG_UBL_LEVEL_BED = _UxGT("統一熱床調平(UBL)"); // "Unified Bed Leveling" + LSTR MSG_LCD_TILTING_MESH = _UxGT("傾斜點"); // "Tilting Point" + LSTR MSG_UBL_MANUAL_MESH = _UxGT("手工建網"); // "Manually Build Mesh" + LSTR MSG_UBL_BC_INSERT = _UxGT("放置墊片並測量"); // "Place shim & measure" + LSTR MSG_UBL_BC_INSERT2 = _UxGT("測量"); // "Measure" + LSTR MSG_UBL_BC_REMOVE = _UxGT("移除並測量熱床"); // "Remove & measure bed" + LSTR MSG_UBL_MOVING_TO_NEXT = _UxGT("移動到下一個"); // "Moving to next" + LSTR MSG_UBL_ACTIVATE_MESH = _UxGT("啟動UBL"); // "Activate UBL" + LSTR MSG_UBL_DEACTIVATE_MESH = _UxGT("關閉UBL"); // "Deactivate UBL" + LSTR MSG_UBL_SET_TEMP_BED = _UxGT("置設熱床溫度"); // "Bed Temp" + LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("置設熱床溫度"); // "Bed Temp" + LSTR MSG_UBL_SET_TEMP_HOTEND = _UxGT("置設噴嘴溫度"); // "Hotend Temp" + LSTR MSG_UBL_HOTEND_TEMP_CUSTOM = _UxGT("熱端溫度"); // "Hotend Temp" + LSTR MSG_UBL_MESH_EDIT = _UxGT("網格編輯"); // "Mesh Edit" + LSTR MSG_UBL_EDIT_CUSTOM_MESH = _UxGT("編輯客戶網格"); // "Edit Custom Mesh" + LSTR MSG_UBL_FINE_TUNE_MESH = _UxGT("細調網格"); // "Fine Tuning Mesh" + LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("完成編輯網格"); // "Done Editing Mesh" + LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("創設客戶網格"); // "Build Custom Mesh" + LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("創設網格"); // "Build Mesh" #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("創設 $ 網格"); // "Build PREHEAT_1_LABEL Mesh" - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("批准 $ 網格"); // "Validate PREHEAT_1_LABEL Mesh" + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("創設 $ 網格"); // "Build PREHEAT_1_LABEL Mesh" + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("批准 $ 網格"); // "Validate PREHEAT_1_LABEL Mesh" #endif - LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("創設冷網格"); // "Build Cold Mesh" - LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("調整網格高度"); // "Adjust Mesh Height" - LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("高度合計"); // "Height Amount" - LSTR MSG_UBL_VALIDATE_MESH_MENU = _UxGT("批准網格"); // "Validate Mesh" - LSTR MSG_UBL_VALIDATE_CUSTOM_MESH = _UxGT("批准客戶網格"); // "Validate Custom Mesh" - LSTR MSG_G26_HEATING_BED = _UxGT("G26 加熱熱床"); // "G26 Heating Bed" + LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("創設冷網格"); // "Build Cold Mesh" + LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("調整網格高度"); // "Adjust Mesh Height" + LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("高度合計"); // "Height Amount" + LSTR MSG_UBL_VALIDATE_MESH_MENU = _UxGT("批准網格"); // "Validate Mesh" + LSTR MSG_UBL_VALIDATE_CUSTOM_MESH = _UxGT("批准客戶網格"); // "Validate Custom Mesh" + LSTR MSG_G26_HEATING_BED = _UxGT("G26 加熱熱床"); // "G26 Heating Bed" LSTR MSG_G26_HEATING_NOZZLE = _UxGT("G26 加熱噴嘴"); //"G26 Heating Nozzle" - LSTR MSG_G26_MANUAL_PRIME = _UxGT("手動填裝"); // "Manual priming..." - LSTR MSG_G26_FIXED_LENGTH = _UxGT("固定距離填裝"); // "Fixed Length Prime" - LSTR MSG_G26_PRIME_DONE = _UxGT("完成填裝"); // "Done Priming" - LSTR MSG_G26_CANCELED = _UxGT("G26已取消"); // "G26 Canceled" - LSTR MSG_G26_LEAVING = _UxGT("離開 G26"); // "Leaving G26" - LSTR MSG_UBL_CONTINUE_MESH = _UxGT("繼續熱床網格"); // "Continue Bed Mesh" - LSTR MSG_UBL_MESH_LEVELING = _UxGT("網格調平"); // "Mesh Leveling" - LSTR MSG_UBL_3POINT_MESH_LEVELING = _UxGT("三點調平"); // "3-Point Leveling" - LSTR MSG_UBL_GRID_MESH_LEVELING = _UxGT("格子網格調平"); // "Grid Mesh Leveling" - LSTR MSG_UBL_MESH_LEVEL = _UxGT("調平網格"); // "Level Mesh" - LSTR MSG_UBL_SIDE_POINTS = _UxGT("邊點"); // "Side Points" - LSTR MSG_UBL_MAP_TYPE = _UxGT("圖類型"); // "Map Type" - LSTR MSG_UBL_OUTPUT_MAP = _UxGT("輸出網格圖"); // "Output Mesh Map" - LSTR MSG_UBL_OUTPUT_MAP_HOST = _UxGT("輸出到主機"); // "Output for Host" - LSTR MSG_UBL_OUTPUT_MAP_CSV = _UxGT("輸出到CSV"); // "Output for CSV" - LSTR MSG_UBL_OUTPUT_MAP_BACKUP = _UxGT("輸出到備份"); // "Off Printer Backup" - LSTR MSG_UBL_INFO_UBL = _UxGT("輸出UBL信息"); // "Output UBL Info" - LSTR MSG_UBL_FILLIN_AMOUNT = _UxGT("填充合計"); // "Fill-in Amount" - LSTR MSG_UBL_MANUAL_FILLIN = _UxGT("手工填充"); // "Manual Fill-in" - LSTR MSG_UBL_SMART_FILLIN = _UxGT("聰明填充"); // "Smart Fill-in" - LSTR MSG_UBL_FILLIN_MESH = _UxGT("填充網格"); // "Fill-in Mesh" - LSTR MSG_UBL_INVALIDATE_ALL = _UxGT("作廢所有的"); // "Invalidate All" - LSTR MSG_UBL_INVALIDATE_CLOSEST = _UxGT("作廢最近的"); // "Invalidate Closest" - LSTR MSG_UBL_FINE_TUNE_ALL = _UxGT("細調所有的"); // "Fine Tune All" - LSTR MSG_UBL_FINE_TUNE_CLOSEST = _UxGT("細調最近的"); // "Fine Tune Closest" - LSTR MSG_UBL_STORAGE_MESH_MENU = _UxGT("網格存儲"); // "Mesh Storage" - LSTR MSG_UBL_STORAGE_SLOT = _UxGT("存儲槽"); // "Memory Slot" - LSTR MSG_UBL_LOAD_MESH = _UxGT("裝載熱床網格"); // "Load Bed Mesh" - LSTR MSG_UBL_SAVE_MESH = _UxGT("保存熱床網格"); // "Save Bed Mesh" - LSTR MSG_MESH_LOADED = _UxGT("網格 %i 已裝載"); // "Mesh %i loaded" - LSTR MSG_MESH_SAVED = _UxGT("網格 %i 已保存"); // "Mesh %i saved" - LSTR MSG_UBL_NO_STORAGE = _UxGT("沒有存儲"); // "No storage" - LSTR MSG_UBL_SAVE_ERROR = _UxGT("錯誤: UBL保存"); // "Err: UBL Save" - LSTR MSG_UBL_RESTORE_ERROR = _UxGT("錯誤: UBL還原"); // "Err: UBL Restore" - LSTR MSG_UBL_Z_OFFSET = _UxGT("Z-偏移:"); // "Z-Offset: " - LSTR MSG_UBL_Z_OFFSET_STOPPED = _UxGT("Z偏移已停止"); // "Z-Offset Stopped" - LSTR MSG_UBL_STEP_BY_STEP_MENU = _UxGT("一步步UBL"); // "Step-By-Step UBL" + LSTR MSG_G26_MANUAL_PRIME = _UxGT("手動填裝"); // "Manual priming..." + LSTR MSG_G26_FIXED_LENGTH = _UxGT("固定距離填裝"); // "Fixed Length Prime" + LSTR MSG_G26_PRIME_DONE = _UxGT("完成填裝"); // "Done Priming" + LSTR MSG_G26_CANCELED = _UxGT("G26已取消"); // "G26 Canceled" + LSTR MSG_G26_LEAVING = _UxGT("離開 G26"); // "Leaving G26" + LSTR MSG_UBL_CONTINUE_MESH = _UxGT("繼續熱床網格"); // "Continue Bed Mesh" + LSTR MSG_UBL_MESH_LEVELING = _UxGT("網格調平"); // "Mesh Leveling" + LSTR MSG_UBL_3POINT_MESH_LEVELING = _UxGT("三點調平"); // "3-Point Leveling" + LSTR MSG_UBL_GRID_MESH_LEVELING = _UxGT("格子網格調平"); // "Grid Mesh Leveling" + LSTR MSG_UBL_MESH_LEVEL = _UxGT("調平網格"); // "Level Mesh" + LSTR MSG_UBL_SIDE_POINTS = _UxGT("邊點"); // "Side Points" + LSTR MSG_UBL_MAP_TYPE = _UxGT("圖類型"); // "Map Type" + LSTR MSG_UBL_OUTPUT_MAP = _UxGT("輸出網格圖"); // "Output Mesh Map" + LSTR MSG_UBL_OUTPUT_MAP_HOST = _UxGT("輸出到主機"); // "Output for Host" + LSTR MSG_UBL_OUTPUT_MAP_CSV = _UxGT("輸出到CSV"); // "Output for CSV" + LSTR MSG_UBL_OUTPUT_MAP_BACKUP = _UxGT("輸出到備份"); // "Off Printer Backup" + LSTR MSG_UBL_INFO_UBL = _UxGT("輸出UBL信息"); // "Output UBL Info" + LSTR MSG_UBL_FILLIN_AMOUNT = _UxGT("填充合計"); // "Fill-in Amount" + LSTR MSG_UBL_MANUAL_FILLIN = _UxGT("手工填充"); // "Manual Fill-in" + LSTR MSG_UBL_SMART_FILLIN = _UxGT("聰明填充"); // "Smart Fill-in" + LSTR MSG_UBL_FILLIN_MESH = _UxGT("填充網格"); // "Fill-in Mesh" + LSTR MSG_UBL_INVALIDATE_ALL = _UxGT("作廢所有的"); // "Invalidate All" + LSTR MSG_UBL_INVALIDATE_CLOSEST = _UxGT("作廢最近的"); // "Invalidate Closest" + LSTR MSG_UBL_FINE_TUNE_ALL = _UxGT("細調所有的"); // "Fine Tune All" + LSTR MSG_UBL_FINE_TUNE_CLOSEST = _UxGT("細調最近的"); // "Fine Tune Closest" + LSTR MSG_UBL_STORAGE_MESH_MENU = _UxGT("網格存儲"); // "Mesh Storage" + LSTR MSG_UBL_STORAGE_SLOT = _UxGT("存儲槽"); // "Memory Slot" + LSTR MSG_UBL_LOAD_MESH = _UxGT("裝載熱床網格"); // "Load Bed Mesh" + LSTR MSG_UBL_SAVE_MESH = _UxGT("保存熱床網格"); // "Save Bed Mesh" + LSTR MSG_MESH_LOADED = _UxGT("網格 %i 已裝載"); // "Mesh %i loaded" + LSTR MSG_MESH_SAVED = _UxGT("網格 %i 已保存"); // "Mesh %i saved" + LSTR MSG_UBL_NO_STORAGE = _UxGT("沒有存儲"); // "No storage" + LSTR MSG_UBL_SAVE_ERROR = _UxGT("錯誤: UBL保存"); // "Err: UBL Save" + LSTR MSG_UBL_RESTORE_ERROR = _UxGT("錯誤: UBL還原"); // "Err: UBL Restore" + LSTR MSG_UBL_Z_OFFSET = _UxGT("Z-偏移:"); // "Z-Offset: " + LSTR MSG_UBL_Z_OFFSET_STOPPED = _UxGT("Z偏移已停止"); // "Z-Offset Stopped" + LSTR MSG_UBL_STEP_BY_STEP_MENU = _UxGT("一步步UBL"); // "Step-By-Step UBL" LSTR MSG_UBL_1_BUILD_COLD_MESH = _UxGT("1. 創設冷網格"); LSTR MSG_UBL_2_SMART_FILLIN = _UxGT("2. 聰明填充"); LSTR MSG_UBL_3_VALIDATE_MESH_MENU = _UxGT("3. 批准網格"); @@ -194,269 +194,269 @@ namespace Language_zh_TW { LSTR MSG_UBL_6_FINE_TUNE_ALL = _UxGT("6. 細調所有的"); LSTR MSG_UBL_7_SAVE_MESH = _UxGT("7. 保存熱床網格"); - LSTR MSG_LED_CONTROL = _UxGT("燈管控制"); // "LED Control" - LSTR MSG_LEDS = _UxGT("燈"); // "Lights" - LSTR MSG_LED_PRESETS = _UxGT("燈預置"); // "Light Presets" - LSTR MSG_SET_LEDS_RED = _UxGT("红"); // "Red" - LSTR MSG_SET_LEDS_ORANGE = _UxGT("橙"); // "Orange" - LSTR MSG_SET_LEDS_YELLOW = _UxGT("黃"); // "Yellow" - LSTR MSG_SET_LEDS_GREEN = _UxGT("綠"); // "Green" - LSTR MSG_SET_LEDS_BLUE = _UxGT("藍"); // "Blue" - LSTR MSG_SET_LEDS_INDIGO = _UxGT("青"); // "Indigo" - LSTR MSG_SET_LEDS_VIOLET = _UxGT("紫"); // "Violet" - LSTR MSG_SET_LEDS_WHITE = _UxGT("白"); // "White" - LSTR MSG_SET_LEDS_DEFAULT = _UxGT("復歸"); // "Default" - LSTR MSG_CUSTOM_LEDS = _UxGT("定制燈"); // "Custom Lights" - LSTR MSG_INTENSITY_R = _UxGT("紅飽和度"); // "Red Intensity" - LSTR MSG_INTENSITY_G = _UxGT("綠飽和度"); // "Green Intensity" - LSTR MSG_INTENSITY_B = _UxGT("藍飽和度"); // "Blue Intensity" - LSTR MSG_INTENSITY_W = _UxGT("白飽和度"); // "White Intensity" - LSTR MSG_LED_BRIGHTNESS = _UxGT("亮度"); // "Brightness" + LSTR MSG_LED_CONTROL = _UxGT("燈管控制"); // "LED Control" + LSTR MSG_LEDS = _UxGT("燈"); // "Lights" + LSTR MSG_LED_PRESETS = _UxGT("燈預置"); // "Light Presets" + LSTR MSG_SET_LEDS_RED = _UxGT("红"); // "Red" + LSTR MSG_SET_LEDS_ORANGE = _UxGT("橙"); // "Orange" + LSTR MSG_SET_LEDS_YELLOW = _UxGT("黃"); // "Yellow" + LSTR MSG_SET_LEDS_GREEN = _UxGT("綠"); // "Green" + LSTR MSG_SET_LEDS_BLUE = _UxGT("藍"); // "Blue" + LSTR MSG_SET_LEDS_INDIGO = _UxGT("青"); // "Indigo" + LSTR MSG_SET_LEDS_VIOLET = _UxGT("紫"); // "Violet" + LSTR MSG_SET_LEDS_WHITE = _UxGT("白"); // "White" + LSTR MSG_SET_LEDS_DEFAULT = _UxGT("復歸"); // "Default" + LSTR MSG_CUSTOM_LEDS = _UxGT("定制燈"); // "Custom Lights" + LSTR MSG_INTENSITY_R = _UxGT("紅飽和度"); // "Red Intensity" + LSTR MSG_INTENSITY_G = _UxGT("綠飽和度"); // "Green Intensity" + LSTR MSG_INTENSITY_B = _UxGT("藍飽和度"); // "Blue Intensity" + LSTR MSG_INTENSITY_W = _UxGT("白飽和度"); // "White Intensity" + LSTR MSG_LED_BRIGHTNESS = _UxGT("亮度"); // "Brightness" - LSTR MSG_MOVING = _UxGT("移動 ..."); // "Moving..." - LSTR MSG_FREE_XY = _UxGT("釋放 XY"); // "Free XY" - LSTR MSG_MOVE_X = _UxGT("移動X"); // "Move X" - LSTR MSG_MOVE_Y = _UxGT("移動Y"); // "Move Y" - LSTR MSG_MOVE_Z = _UxGT("移動Z"); // "Move Z" - LSTR MSG_MOVE_N = _UxGT("移動Q"); // "Move @" - LSTR MSG_MOVE_E = _UxGT("擠出機"); // "Extruder" - LSTR MSG_MOVE_EN = _UxGT("擠出機 *"); // "Extruder *" - LSTR MSG_HOTEND_TOO_COLD = _UxGT("噴嘴溫度不夠"); // "Hotend too cold" - LSTR MSG_MOVE_N_MM = _UxGT("移動 $ mm"); // "Move 0.025mm" - LSTR MSG_MOVE_01MM = _UxGT("移動 0.1 mm"); // "Move 0.1mm" - LSTR MSG_MOVE_1MM = _UxGT("移動 1 mm"); // "Move 1mm" - LSTR MSG_MOVE_10MM = _UxGT("移動 10 mm"); // "Move 10mm" - LSTR MSG_MOVE_50MM = _UxGT("移動 50 mm"); // "Move 50mm" - LSTR MSG_MOVE_100MM = _UxGT("移動 100 mm"); // "Move 100mm" - LSTR MSG_SPEED = _UxGT("速率"); // "Speed" - LSTR MSG_MESH_Z_OFFSET = _UxGT("熱床Z"); // "Bed Z" - LSTR MSG_NOZZLE = " " LCD_STR_THERMOMETER _UxGT(" 噴嘴"); // "Nozzle" 噴嘴 + LSTR MSG_MOVING = _UxGT("移動 ..."); // "Moving..." + LSTR MSG_FREE_XY = _UxGT("釋放 XY"); // "Free XY" + LSTR MSG_MOVE_X = _UxGT("移動X"); // "Move X" + LSTR MSG_MOVE_Y = _UxGT("移動Y"); // "Move Y" + LSTR MSG_MOVE_Z = _UxGT("移動Z"); // "Move Z" + LSTR MSG_MOVE_N = _UxGT("移動Q"); // "Move @" + LSTR MSG_MOVE_E = _UxGT("擠出機"); // "Extruder" + LSTR MSG_MOVE_EN = _UxGT("擠出機 *"); // "Extruder *" + LSTR MSG_HOTEND_TOO_COLD = _UxGT("噴嘴溫度不夠"); // "Hotend too cold" + LSTR MSG_MOVE_N_MM = _UxGT("移動 $ mm"); // "Move 0.025mm" + LSTR MSG_MOVE_01MM = _UxGT("移動 0.1 mm"); // "Move 0.1mm" + LSTR MSG_MOVE_1MM = _UxGT("移動 1 mm"); // "Move 1mm" + LSTR MSG_MOVE_10MM = _UxGT("移動 10 mm"); // "Move 10mm" + LSTR MSG_MOVE_50MM = _UxGT("移動 50 mm"); // "Move 50mm" + LSTR MSG_MOVE_100MM = _UxGT("移動 100 mm"); // "Move 100mm" + LSTR MSG_SPEED = _UxGT("速率"); // "Speed" + LSTR MSG_MESH_Z_OFFSET = _UxGT("熱床Z"); // "Bed Z" + LSTR MSG_NOZZLE = " " LCD_STR_THERMOMETER _UxGT(" 噴嘴"); // "Nozzle" 噴嘴 LSTR MSG_NOZZLE_N = " " LCD_STR_THERMOMETER _UxGT(" 噴嘴 ~"); - LSTR MSG_BED = " " LCD_STR_THERMOMETER _UxGT(" 熱床"); // "Bed" + LSTR MSG_BED = " " LCD_STR_THERMOMETER _UxGT(" 熱床"); // "Bed" LSTR MSG_CHAMBER = _UxGT("Enclosure"); - LSTR MSG_FAN_SPEED = _UxGT("風扇速率"); // "Fan speed" + LSTR MSG_FAN_SPEED = _UxGT("風扇速率"); // "Fan speed" LSTR MSG_FAN_SPEED_N = _UxGT("風扇速率 {"); LSTR MSG_STORED_FAN_N = _UxGT("Stored Fan {"); - LSTR MSG_EXTRA_FAN_SPEED = _UxGT("額外風扇速率"); // "Extra fan speed" + LSTR MSG_EXTRA_FAN_SPEED = _UxGT("額外風扇速率"); // "Extra fan speed" LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("額外風扇速率 {"); LSTR MSG_FLOW = _UxGT("擠出速率"); - LSTR MSG_FLOW_N = _UxGT("擠出速率 ~"); // "Flow" - LSTR MSG_CONTROL = _UxGT("控制"); // "Control" - LSTR MSG_MIN = " " LCD_STR_THERMOMETER _UxGT(" 最小"); // " " LCD_STR_THERMOMETER " Min" - LSTR MSG_MAX = " " LCD_STR_THERMOMETER _UxGT(" 最大"); // " " LCD_STR_THERMOMETER " Max" - LSTR MSG_FACTOR = " " LCD_STR_THERMOMETER _UxGT(" 系數"); // " " LCD_STR_THERMOMETER " Fact" - LSTR MSG_AUTOTEMP = _UxGT("自動控溫"); // "Autotemp" - LSTR MSG_LCD_ON = _UxGT("開 "); // "On" - LSTR MSG_LCD_OFF = _UxGT("關 "); // "Off" + LSTR MSG_FLOW_N = _UxGT("擠出速率 ~"); // "Flow" + LSTR MSG_CONTROL = _UxGT("控制"); // "Control" + LSTR MSG_MIN = " " LCD_STR_THERMOMETER _UxGT(" 最小"); // " " LCD_STR_THERMOMETER " Min" + LSTR MSG_MAX = " " LCD_STR_THERMOMETER _UxGT(" 最大"); // " " LCD_STR_THERMOMETER " Max" + LSTR MSG_FACTOR = " " LCD_STR_THERMOMETER _UxGT(" 系數"); // " " LCD_STR_THERMOMETER " Fact" + LSTR MSG_AUTOTEMP = _UxGT("自動控溫"); // "Autotemp" + LSTR MSG_LCD_ON = _UxGT("開 "); // "On" + LSTR MSG_LCD_OFF = _UxGT("關 "); // "Off" LSTR MSG_SELECT_E = _UxGT("選擇 *"); - LSTR MSG_ACC = _UxGT("加速度"); // "Accel" acceleration - LSTR MSG_JERK = _UxGT("抖動速率"); // "Jerk" - LSTR MSG_VA_JERK = _UxGT("軸抖動速率") STR_A; // "Va-jerk" + LSTR MSG_ACC = _UxGT("加速度"); // "Accel" acceleration + LSTR MSG_JERK = _UxGT("抖動速率"); // "Jerk" + LSTR MSG_VA_JERK = _UxGT("軸抖動速率") STR_A; // "Va-jerk" LSTR MSG_VB_JERK = _UxGT("軸抖動速率") STR_B; LSTR MSG_VC_JERK = _UxGT("軸抖動速率") STR_C; LSTR MSG_VN_JERK = _UxGT("軸抖動速率@"); LSTR MSG_VE_JERK = _UxGT("擠出機抖動速率"); - LSTR MSG_MAX_SPEED = _UxGT("速度"); // "Velocity" - LSTR MSG_VMAX_A = _UxGT("最大進料速率") STR_A; // "Vmax " max_feedrate_mm_s + LSTR MSG_MAX_SPEED = _UxGT("速度"); // "Velocity" + LSTR MSG_VMAX_A = _UxGT("最大進料速率") STR_A; // "Vmax " max_feedrate_mm_s LSTR MSG_VMAX_B = _UxGT("最大進料速率") STR_B; LSTR MSG_VMAX_C = _UxGT("最大進料速率") STR_C; LSTR MSG_VMAX_N = _UxGT("最大進料速率@"); LSTR MSG_VMAX_E = _UxGT("最大進料速率E"); - LSTR MSG_VMAX_EN = _UxGT("最大進料速率 *"); // "Vmax " max_feedrate_mm_s - LSTR MSG_VMIN = _UxGT("最小進料速率"); // "Vmin" min_feedrate_mm_s - LSTR MSG_VTRAV_MIN = _UxGT("最小移動速率"); // "VTrav min" min_travel_feedrate_mm_s, (target) speed of the move - LSTR MSG_ACCELERATION = _UxGT("加速度"); // "Acceleration" - LSTR MSG_AMAX_A = _UxGT("最大列印加速度") STR_A; // "Amax " max_acceleration_mm_per_s2, acceleration in units/s^2 for print moves + LSTR MSG_VMAX_EN = _UxGT("最大進料速率 *"); // "Vmax " max_feedrate_mm_s + LSTR MSG_VMIN = _UxGT("最小進料速率"); // "Vmin" min_feedrate_mm_s + LSTR MSG_VTRAV_MIN = _UxGT("最小移動速率"); // "VTrav min" min_travel_feedrate_mm_s, (target) speed of the move + LSTR MSG_ACCELERATION = _UxGT("加速度"); // "Acceleration" + LSTR MSG_AMAX_A = _UxGT("最大列印加速度") STR_A; // "Amax " max_acceleration_mm_per_s2, acceleration in units/s^2 for print moves LSTR MSG_AMAX_B = _UxGT("最大列印加速度") STR_B; LSTR MSG_AMAX_C = _UxGT("最大列印加速度") STR_C; LSTR MSG_AMAX_N = _UxGT("最大列印加速度@"); LSTR MSG_AMAX_E = _UxGT("最大列印加速度E"); - LSTR MSG_AMAX_EN = _UxGT("最大列印加速度 *"); // "Amax " max_acceleration_mm_per_s2, acceleration in units/s^2 for print moves - LSTR MSG_A_RETRACT = _UxGT("回縮加速度"); // "A-retract" retract_acceleration, E acceleration in mm/s^2 for retracts - LSTR MSG_A_TRAVEL = _UxGT("非列印移動加速度"); // "A-travel" travel_acceleration, X, Y, Z acceleration in mm/s^2 for travel (non printing) moves - LSTR MSG_STEPS_PER_MM = _UxGT("軸步數/mm"); // "Steps/mm" axis_steps_per_mm, axis steps-per-unit G92 - LSTR MSG_A_STEPS = STR_A _UxGT(" 軸步數/mm"); // "Asteps/mm" axis_steps_per_mm, axis steps-per-unit G92 + LSTR MSG_AMAX_EN = _UxGT("最大列印加速度 *"); // "Amax " max_acceleration_mm_per_s2, acceleration in units/s^2 for print moves + LSTR MSG_A_RETRACT = _UxGT("回縮加速度"); // "A-retract" retract_acceleration, E acceleration in mm/s^2 for retracts + LSTR MSG_A_TRAVEL = _UxGT("非列印移動加速度"); // "A-travel" travel_acceleration, X, Y, Z acceleration in mm/s^2 for travel (non printing) moves + LSTR MSG_STEPS_PER_MM = _UxGT("軸步數/mm"); // "Steps/mm" axis_steps_per_mm, axis steps-per-unit G92 + LSTR MSG_A_STEPS = STR_A _UxGT(" 軸步數/mm"); // "Asteps/mm" axis_steps_per_mm, axis steps-per-unit G92 LSTR MSG_B_STEPS = STR_B _UxGT(" 軸步數/mm"); LSTR MSG_C_STEPS = STR_C _UxGT(" 軸步數/mm"); LSTR MSG_N_STEPS = _UxGT("@ 軸步數/mm"); - LSTR MSG_E_STEPS = _UxGT("擠出機步數/mm"); // "Esteps/mm" + LSTR MSG_E_STEPS = _UxGT("擠出機步數/mm"); // "Esteps/mm" LSTR MSG_EN_STEPS = _UxGT("擠出機~步數/mm"); - LSTR MSG_TEMPERATURE = _UxGT("溫度"); // "Temperature" - LSTR MSG_MOTION = _UxGT("運作"); // "Motion" - LSTR MSG_FILAMENT = _UxGT("絲料測容"); // "Filament" menu_control_volumetric - LSTR MSG_VOLUMETRIC_ENABLED = _UxGT("測容積mm") SUPERSCRIPT_THREE; // "E in mm3" volumetric_enabled - LSTR MSG_FILAMENT_DIAM = _UxGT("絲料直徑"); // "Fil. Dia." + LSTR MSG_TEMPERATURE = _UxGT("溫度"); // "Temperature" + LSTR MSG_MOTION = _UxGT("運作"); // "Motion" + LSTR MSG_FILAMENT = _UxGT("絲料測容"); // "Filament" menu_control_volumetric + LSTR MSG_VOLUMETRIC_ENABLED = _UxGT("測容積mm") SUPERSCRIPT_THREE; // "E in mm3" volumetric_enabled + LSTR MSG_FILAMENT_DIAM = _UxGT("絲料直徑"); // "Fil. Dia." LSTR MSG_FILAMENT_DIAM_E = _UxGT("絲料直徑 *"); - LSTR MSG_FILAMENT_UNLOAD = _UxGT("卸載 mm"); // "Unload mm" - LSTR MSG_FILAMENT_LOAD = _UxGT("装載 mm"); // "Load mm" + LSTR MSG_FILAMENT_UNLOAD = _UxGT("卸載 mm"); // "Unload mm" + LSTR MSG_FILAMENT_LOAD = _UxGT("装載 mm"); // "Load mm" LSTR MSG_ADVANCE_K = _UxGT("Advance K"); LSTR MSG_ADVANCE_K_E = _UxGT("Advance K *"); - LSTR MSG_CONTRAST = _UxGT("LCD對比度"); // "LCD contrast" - LSTR MSG_STORE_EEPROM = _UxGT("保存設置"); // "Store memory" - LSTR MSG_LOAD_EEPROM = _UxGT("載入設置"); // "Load memory" - LSTR MSG_RESTORE_DEFAULTS = _UxGT("恢復安全值"); // "Restore failsafe" - LSTR MSG_INIT_EEPROM = _UxGT("初始化設置"); // "Initialize EEPROM" - LSTR MSG_ERR_EEPROM_CRC = _UxGT("錯誤: EEPROM CRC"); // "Err: EEPROM CRC" - LSTR MSG_ERR_EEPROM_SIZE = _UxGT("錯誤: EEPROM 尺寸"); // "Err: EEPROM Index" - LSTR MSG_ERR_EEPROM_VERSION = _UxGT("錯誤: EEPROM 版本"); // "EEPROM Version" - LSTR MSG_MEDIA_UPDATE = _UxGT("媒體更新"); // "Media Update" - LSTR MSG_RESET_PRINTER = _UxGT("重置打印機"); // "Reset Printer - LSTR MSG_REFRESH = _UxGT("刷新"); // "Refresh" - LSTR MSG_INFO_SCREEN = _UxGT("資訊界面"); // "Info screen" - LSTR MSG_PREPARE = _UxGT("準備"); // "Prepare" - LSTR MSG_TUNE = _UxGT("調整"); // "Tune" - LSTR MSG_START_PRINT = _UxGT("開始列印"); // "Start Print" - LSTR MSG_BUTTON_NEXT = _UxGT("下一個"); // "Next" - LSTR MSG_BUTTON_INIT = _UxGT("初始 "); // "Init" - LSTR MSG_BUTTON_STOP = _UxGT("停止 "); // "Stop" - LSTR MSG_BUTTON_PRINT = _UxGT("列印 "); // "Print" - LSTR MSG_BUTTON_RESET = _UxGT("復歸 "); // "Reset" - LSTR MSG_BUTTON_CANCEL = _UxGT("放棄 "); // "Cancel" - LSTR MSG_BUTTON_DONE = _UxGT("確認 "); // "Done" - LSTR MSG_BUTTON_BACK = _UxGT("返回 "); // "Back" - LSTR MSG_BUTTON_PROCEED = _UxGT("繼續 "); // "Proceed" - LSTR MSG_PAUSE_PRINT = _UxGT("暫停列印"); // "Pause print" - LSTR MSG_RESUME_PRINT = _UxGT("恢復列印"); // "Resume print" - LSTR MSG_STOP_PRINT = _UxGT("停止列印"); // "Stop print" - LSTR MSG_PRINTING_OBJECT = _UxGT("列印物件"); // "Printing Object" - LSTR MSG_CANCEL_OBJECT = _UxGT("中止物件"); // "Cancel Object" - LSTR MSG_CANCEL_OBJECT_N = _UxGT("中止物件 {"); // "Cancel Object {" - LSTR MSG_OUTAGE_RECOVERY = _UxGT("中斷恢復"); // "Outage Recovery" - LSTR MSG_MEDIA_MENU = _UxGT("從記憶卡上列印"); // "Print from SD" - LSTR MSG_NO_MEDIA = _UxGT("無記憶卡"); // "No SD card" - LSTR MSG_DWELL = _UxGT("休眠 ..."); // "Sleep..." - LSTR MSG_USERWAIT = _UxGT("點擊繼續 ..."); // "Click to resume..." - LSTR MSG_PRINT_PAUSED = _UxGT("列印已暫停"); // "Print paused" - LSTR MSG_PRINTING = _UxGT("列印中 ..."); // "Printing..." - LSTR MSG_PRINT_ABORTED = _UxGT("已取消列印"); // "Print aborted" - LSTR MSG_NO_MOVE = _UxGT("無移動"); // "No move." - LSTR MSG_KILLED = _UxGT("已砍掉"); // "KILLED. " - LSTR MSG_STOPPED = _UxGT("已停止"); // "STOPPED. " - LSTR MSG_CONTROL_RETRACT = _UxGT("回縮長度mm"); // "Retract mm" retract_length, retract length (positive mm) - LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("換手回抽長度mm"); // "Swap Re.mm" swap_retract_length, swap retract length (positive mm), for extruder change - LSTR MSG_CONTROL_RETRACTF = _UxGT("回縮速率mm/s"); // "Retract V" retract_feedrate_mm_s, feedrate for retracting (mm/s) - LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("Hop mm"); // "Hop mm" retract_zraise, retract Z-lift - LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("回縮恢復長度mm"); // "UnRet +mm" retract_recover_extra, additional recover length (mm, added to retract length when recovering) - LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("換手回縮恢復長度mm"); // "S UnRet+mm" swap_retract_recover_extra, additional swap recover length (mm, added to retract length when recovering from extruder change) - LSTR MSG_CONTROL_RETRACT_RECOVERF = _UxGT("回縮恢復後進料速率mm/s"); // "Unretract V" retract_recover_feedrate_mm_s, feedrate for recovering from retraction (mm/s) - LSTR MSG_CONTROL_RETRACT_RECOVER_SWAPF = _UxGT("S UnRet V"); // "S UnRet V" - LSTR MSG_AUTORETRACT = _UxGT("自動回縮"); // "Auto-Retract" autoretract_enabled, - LSTR MSG_FILAMENT_SWAP_LENGTH = _UxGT("交換長度"); // "Swap Length" - LSTR MSG_FILAMENT_PURGE_LENGTH = _UxGT("清除長度"); // "Purge Length" + LSTR MSG_CONTRAST = _UxGT("LCD對比度"); // "LCD contrast" + LSTR MSG_STORE_EEPROM = _UxGT("保存設置"); // "Store memory" + LSTR MSG_LOAD_EEPROM = _UxGT("載入設置"); // "Load memory" + LSTR MSG_RESTORE_DEFAULTS = _UxGT("恢復安全值"); // "Restore failsafe" + LSTR MSG_INIT_EEPROM = _UxGT("初始化設置"); // "Initialize EEPROM" + LSTR MSG_ERR_EEPROM_CRC = _UxGT("錯誤: EEPROM CRC"); // "Err: EEPROM CRC" + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("錯誤: EEPROM 尺寸"); // "Err: EEPROM Index" + LSTR MSG_ERR_EEPROM_VERSION = _UxGT("錯誤: EEPROM 版本"); // "EEPROM Version" + LSTR MSG_MEDIA_UPDATE = _UxGT("媒體更新"); // "Media Update" + LSTR MSG_RESET_PRINTER = _UxGT("重置打印機"); // "Reset Printer + LSTR MSG_REFRESH = _UxGT("刷新"); // "Refresh" + LSTR MSG_INFO_SCREEN = _UxGT("資訊界面"); // "Info screen" + LSTR MSG_PREPARE = _UxGT("準備"); // "Prepare" + LSTR MSG_TUNE = _UxGT("調整"); // "Tune" + LSTR MSG_START_PRINT = _UxGT("開始列印"); // "Start Print" + LSTR MSG_BUTTON_NEXT = _UxGT("下一個"); // "Next" + LSTR MSG_BUTTON_INIT = _UxGT("初始 "); // "Init" + LSTR MSG_BUTTON_STOP = _UxGT("停止 "); // "Stop" + LSTR MSG_BUTTON_PRINT = _UxGT("列印 "); // "Print" + LSTR MSG_BUTTON_RESET = _UxGT("復歸 "); // "Reset" + LSTR MSG_BUTTON_CANCEL = _UxGT("放棄 "); // "Cancel" + LSTR MSG_BUTTON_DONE = _UxGT("確認 "); // "Done" + LSTR MSG_BUTTON_BACK = _UxGT("返回 "); // "Back" + LSTR MSG_BUTTON_PROCEED = _UxGT("繼續 "); // "Proceed" + LSTR MSG_PAUSE_PRINT = _UxGT("暫停列印"); // "Pause print" + LSTR MSG_RESUME_PRINT = _UxGT("恢復列印"); // "Resume print" + LSTR MSG_STOP_PRINT = _UxGT("停止列印"); // "Stop print" + LSTR MSG_PRINTING_OBJECT = _UxGT("列印物件"); // "Printing Object" + LSTR MSG_CANCEL_OBJECT = _UxGT("中止物件"); // "Cancel Object" + LSTR MSG_CANCEL_OBJECT_N = _UxGT("中止物件 {"); // "Cancel Object {" + LSTR MSG_OUTAGE_RECOVERY = _UxGT("中斷恢復"); // "Outage Recovery" + LSTR MSG_MEDIA_MENU = _UxGT("從記憶卡上列印"); // "Print from SD" + LSTR MSG_NO_MEDIA = _UxGT("無記憶卡"); // "No SD card" + LSTR MSG_DWELL = _UxGT("休眠 ..."); // "Sleep..." + LSTR MSG_USERWAIT = _UxGT("點擊繼續 ..."); // "Click to resume..." + LSTR MSG_PRINT_PAUSED = _UxGT("列印已暫停"); // "Print paused" + LSTR MSG_PRINTING = _UxGT("列印中 ..."); // "Printing..." + LSTR MSG_PRINT_ABORTED = _UxGT("已取消列印"); // "Print aborted" + LSTR MSG_NO_MOVE = _UxGT("無移動"); // "No move." + LSTR MSG_KILLED = _UxGT("已砍掉"); // "KILLED. " + LSTR MSG_STOPPED = _UxGT("已停止"); // "STOPPED. " + LSTR MSG_CONTROL_RETRACT = _UxGT("回縮長度mm"); // "Retract mm" retract_length, retract length (positive mm) + LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("換手回抽長度mm"); // "Swap Re.mm" swap_retract_length, swap retract length (positive mm), for extruder change + LSTR MSG_CONTROL_RETRACTF = _UxGT("回縮速率mm/s"); // "Retract V" retract_feedrate_mm_s, feedrate for retracting (mm/s) + LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("Hop mm"); // "Hop mm" retract_zraise, retract Z-lift + LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("回縮恢復長度mm"); // "UnRet +mm" retract_recover_extra, additional recover length (mm, added to retract length when recovering) + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("換手回縮恢復長度mm"); // "S UnRet+mm" swap_retract_recover_extra, additional swap recover length (mm, added to retract length when recovering from extruder change) + LSTR MSG_CONTROL_RETRACT_RECOVERF = _UxGT("回縮恢復後進料速率mm/s"); // "Unretract V" retract_recover_feedrate_mm_s, feedrate for recovering from retraction (mm/s) + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAPF = _UxGT("S UnRet V"); // "S UnRet V" + LSTR MSG_AUTORETRACT = _UxGT("自動回縮"); // "Auto-Retract" autoretract_enabled, + LSTR MSG_FILAMENT_SWAP_LENGTH = _UxGT("交換長度"); // "Swap Length" + LSTR MSG_FILAMENT_PURGE_LENGTH = _UxGT("清除長度"); // "Purge Length" LSTR MSG_TOOL_CHANGE = _UxGT("交換工具"); //"Tool Change" - LSTR MSG_TOOL_CHANGE_ZLIFT = _UxGT("Z軸提昇"); // "Z Raise" - LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("最高速度"); // "Prime Speed" - LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("收回速度"); // "Retract Speed" + LSTR MSG_TOOL_CHANGE_ZLIFT = _UxGT("Z軸提昇"); // "Z Raise" + LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("最高速度"); // "Prime Speed" + LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("收回速度"); // "Retract Speed" LSTR MSG_NOZZLE_STANDBY = _UxGT("噴嘴待機"); //"Nozzle Standby" - LSTR MSG_FILAMENTCHANGE = _UxGT("更換絲料"); // "Change filament" + LSTR MSG_FILAMENTCHANGE = _UxGT("更換絲料"); // "Change filament" LSTR MSG_FILAMENTCHANGE_E = _UxGT("更換絲料 *"); - LSTR MSG_FILAMENTLOAD = _UxGT("裝載絲料"); // "Load filament" + LSTR MSG_FILAMENTLOAD = _UxGT("裝載絲料"); // "Load filament" LSTR MSG_FILAMENTLOAD_E = _UxGT("裝載絲料 *"); - LSTR MSG_FILAMENTUNLOAD = _UxGT("卸載絲料"); // "Unload filament" - LSTR MSG_FILAMENTUNLOAD_E = _UxGT("卸載絲料 *"); // "Unload filament" - LSTR MSG_FILAMENTUNLOAD_ALL = _UxGT("卸載全部"); // "Unload All" - LSTR MSG_INIT_MEDIA = _UxGT("初始化記憶卡"); // "Init. SD card" - LSTR MSG_ATTACH_MEDIA = _UxGT("連接記憶卡"); // "Attach Media - LSTR MSG_CHANGE_MEDIA = _UxGT("更換記憶卡"); // "Change SD card" - LSTR MSG_RELEASE_MEDIA = _UxGT("釋放媒體"); // "Release Media" - LSTR MSG_ZPROBE_OUT = _UxGT("Z探針在熱床之外"); // "Z probe out. bed" Z probe is not within the physical limits - LSTR MSG_SKEW_FACTOR = _UxGT("偏斜因數"); // "Skew Factor" + LSTR MSG_FILAMENTUNLOAD = _UxGT("卸載絲料"); // "Unload filament" + LSTR MSG_FILAMENTUNLOAD_E = _UxGT("卸載絲料 *"); // "Unload filament" + LSTR MSG_FILAMENTUNLOAD_ALL = _UxGT("卸載全部"); // "Unload All" + LSTR MSG_INIT_MEDIA = _UxGT("初始化記憶卡"); // "Init. SD card" + LSTR MSG_ATTACH_MEDIA = _UxGT("連接記憶卡"); // "Attach Media + LSTR MSG_CHANGE_MEDIA = _UxGT("更換記憶卡"); // "Change SD card" + LSTR MSG_RELEASE_MEDIA = _UxGT("釋放媒體"); // "Release Media" + LSTR MSG_ZPROBE_OUT = _UxGT("Z探針在熱床之外"); // "Z probe out. bed" Z probe is not within the physical limits + LSTR MSG_SKEW_FACTOR = _UxGT("偏斜因數"); // "Skew Factor" - LSTR MSG_BLTOUCH_SELFTEST = _UxGT("BLTouch 自檢"); // "BLTouch Self-Test" - LSTR MSG_BLTOUCH_RESET = _UxGT("重置BLTouch"); // "Reset BLTouch" - LSTR MSG_BLTOUCH_STOW = _UxGT("裝載BLTouch"); // "Stow BLTouch" - LSTR MSG_BLTOUCH_DEPLOY = _UxGT("部署BLTouch"); // "Deploy BLTouch" + LSTR MSG_BLTOUCH_SELFTEST = _UxGT("BLTouch 自檢"); // "BLTouch Self-Test" + LSTR MSG_BLTOUCH_RESET = _UxGT("重置BLTouch"); // "Reset BLTouch" + LSTR MSG_BLTOUCH_STOW = _UxGT("裝載BLTouch"); // "Stow BLTouch" + LSTR MSG_BLTOUCH_DEPLOY = _UxGT("部署BLTouch"); // "Deploy BLTouch" - LSTR MSG_HOME_FIRST = _UxGT("歸位 %s 先"); // "Home ... first" - LSTR MSG_ZPROBE_OFFSETS = _UxGT("探針偏移"); //Probe Offsets - LSTR MSG_ZPROBE_XOFFSET = _UxGT("探針X偏移量"); //Probe X Offset - LSTR MSG_ZPROBE_YOFFSET = _UxGT("探針Y偏移量"); //Probe Y Offset - LSTR MSG_ZPROBE_ZOFFSET = _UxGT("探針Z偏移量"); //Probe Z Offset - LSTR MSG_BABYSTEP_X = _UxGT("微量調整X軸"); // "Babystep X" lcd_babystep_x, Babystepping enables the user to control the axis in tiny amounts - LSTR MSG_BABYSTEP_Y = _UxGT("微量調整Y軸"); // "Babystep Y" - LSTR MSG_BABYSTEP_Z = _UxGT("微量調整Z軸"); // "Babystep Z" - LSTR MSG_BABYSTEP_TOTAL = _UxGT("總計"); // "Total" - LSTR MSG_ENDSTOP_ABORT = _UxGT("擋塊終止"); // "Endstop abort" - LSTR MSG_HEATING_FAILED_LCD = _UxGT("加熱失敗"); // "Heating failed" - LSTR MSG_ERR_REDUNDANT_TEMP = _UxGT("錯誤:冗餘溫度"); // "Err: REDUNDANT TEMP" - LSTR MSG_THERMAL_RUNAWAY = _UxGT("溫度失控"); // "THERMAL RUNAWAY" - LSTR MSG_THERMAL_RUNAWAY_BED = _UxGT("熱床溫度失控"); // "BED THERMAL RUNAWAY" - LSTR MSG_THERMAL_RUNAWAY_CHAMBER = _UxGT("機箱溫度失控"); // "CHAMBER T. RUNAWAY" - LSTR MSG_ERR_MAXTEMP = _UxGT("錯誤:最高溫度"); // "Err: MAXTEMP" - LSTR MSG_ERR_MINTEMP = _UxGT("錯誤:最低溫度"); // "Err: MINTEMP" - LSTR MSG_HALTED = _UxGT("印表機停機"); // "PRINTER HALTED" - LSTR MSG_PLEASE_RESET = _UxGT("請重置"); // "Please reset" - LSTR MSG_HEATING = _UxGT("加熱中 ..."); // "Heating..." - LSTR MSG_COOLING = _UxGT("冷卻中 ..."); // "Cooling..." - LSTR MSG_BED_HEATING = _UxGT("加熱熱床中 ..."); // "Bed Heating..." - LSTR MSG_BED_COOLING = _UxGT("熱床冷卻中 ..."); // "Bed Cooling..." - LSTR MSG_CHAMBER_HEATING = _UxGT("機箱加熱中 .."); // "Chamber Heating..." - LSTR MSG_CHAMBER_COOLING = _UxGT("機箱冷卻中 ..."); //Chamber Cooling... - LSTR MSG_DELTA_CALIBRATE = _UxGT("⊿校準"); // "Delta Calibration" - LSTR MSG_DELTA_CALIBRATE_X = _UxGT("⊿校準X"); // "Calibrate X" - LSTR MSG_DELTA_CALIBRATE_Y = _UxGT("⊿校準Y"); // "Calibrate Y" - LSTR MSG_DELTA_CALIBRATE_Z = _UxGT("⊿校準Z"); // "Calibrate Z" - LSTR MSG_DELTA_CALIBRATE_CENTER = _UxGT("⊿校準中心"); // "Calibrate Center" - LSTR MSG_DELTA_SETTINGS = _UxGT("⊿設置"); // "Delta Settings" - LSTR MSG_DELTA_AUTO_CALIBRATE = _UxGT("⊿自動校準"); // "Auto Calibration" - LSTR MSG_DELTA_DIAG_ROD = _UxGT("⊿斜柱"); // "Diag Rod" - LSTR MSG_DELTA_HEIGHT = _UxGT("⊿高度"); // "Height" - LSTR MSG_DELTA_RADIUS = _UxGT("⊿半徑"); // "Radius" - LSTR MSG_INFO_MENU = _UxGT("關於印表機"); // "About Printer" - LSTR MSG_INFO_PRINTER_MENU = _UxGT("印表機訊息"); // "Printer Info" - LSTR MSG_3POINT_LEVELING = _UxGT("三點調平"); // "3-Point Leveling" - LSTR MSG_LINEAR_LEVELING = _UxGT("線性調平"); // "Linear Leveling" - LSTR MSG_BILINEAR_LEVELING = _UxGT(" 雙線性調平"); // "Bilinear Leveling" - LSTR MSG_UBL_LEVELING = _UxGT("統一熱床調平(UBL)"); // "Unified Bed Leveling" - LSTR MSG_MESH_LEVELING = _UxGT("網格調平"); // "Mesh Leveling" - LSTR MSG_INFO_STATS_MENU = _UxGT("印表機統計"); // "Printer Stats" - LSTR MSG_INFO_BOARD_MENU = _UxGT("主板訊息"); // "Board Info" - LSTR MSG_INFO_THERMISTOR_MENU = _UxGT("溫度計"); // "Thermistors" - LSTR MSG_INFO_EXTRUDERS = _UxGT(" 擠出機"); // "Extruders" - LSTR MSG_INFO_BAUDRATE = _UxGT("傳輸率"); // "Baud" - LSTR MSG_INFO_PROTOCOL = _UxGT("協議"); // "Protocol" - LSTR MSG_INFO_RUNAWAY_OFF = _UxGT("監測溫度失控:關"); // "Runaway Watch: OFF" - LSTR MSG_INFO_RUNAWAY_ON = _UxGT("監測溫度失控:開"); // "Runaway Watch: ON" + LSTR MSG_HOME_FIRST = _UxGT("歸位 %s 先"); // "Home ... first" + LSTR MSG_ZPROBE_OFFSETS = _UxGT("探針偏移"); //Probe Offsets + LSTR MSG_ZPROBE_XOFFSET = _UxGT("探針X偏移量"); //Probe X Offset + LSTR MSG_ZPROBE_YOFFSET = _UxGT("探針Y偏移量"); //Probe Y Offset + LSTR MSG_ZPROBE_ZOFFSET = _UxGT("探針Z偏移量"); //Probe Z Offset + LSTR MSG_BABYSTEP_X = _UxGT("微量調整X軸"); // "Babystep X" lcd_babystep_x, Babystepping enables the user to control the axis in tiny amounts + LSTR MSG_BABYSTEP_Y = _UxGT("微量調整Y軸"); // "Babystep Y" + LSTR MSG_BABYSTEP_Z = _UxGT("微量調整Z軸"); // "Babystep Z" + LSTR MSG_BABYSTEP_TOTAL = _UxGT("總計"); // "Total" + LSTR MSG_ENDSTOP_ABORT = _UxGT("擋塊終止"); // "Endstop abort" + LSTR MSG_HEATING_FAILED_LCD = _UxGT("加熱失敗"); // "Heating failed" + LSTR MSG_ERR_REDUNDANT_TEMP = _UxGT("錯誤:冗餘溫度"); // "Err: REDUNDANT TEMP" + LSTR MSG_THERMAL_RUNAWAY = _UxGT("溫度失控"); // "THERMAL RUNAWAY" + LSTR MSG_THERMAL_RUNAWAY_BED = _UxGT("熱床溫度失控"); // "BED THERMAL RUNAWAY" + LSTR MSG_THERMAL_RUNAWAY_CHAMBER = _UxGT("機箱溫度失控"); // "CHAMBER T. RUNAWAY" + LSTR MSG_ERR_MAXTEMP = _UxGT("錯誤:最高溫度"); // "Err: MAXTEMP" + LSTR MSG_ERR_MINTEMP = _UxGT("錯誤:最低溫度"); // "Err: MINTEMP" + LSTR MSG_HALTED = _UxGT("印表機停機"); // "PRINTER HALTED" + LSTR MSG_PLEASE_RESET = _UxGT("請重置"); // "Please reset" + LSTR MSG_HEATING = _UxGT("加熱中 ..."); // "Heating..." + LSTR MSG_COOLING = _UxGT("冷卻中 ..."); // "Cooling..." + LSTR MSG_BED_HEATING = _UxGT("加熱熱床中 ..."); // "Bed Heating..." + LSTR MSG_BED_COOLING = _UxGT("熱床冷卻中 ..."); // "Bed Cooling..." + LSTR MSG_CHAMBER_HEATING = _UxGT("機箱加熱中 .."); // "Chamber Heating..." + LSTR MSG_CHAMBER_COOLING = _UxGT("機箱冷卻中 ..."); //Chamber Cooling... + LSTR MSG_DELTA_CALIBRATE = _UxGT("⊿校準"); // "Delta Calibration" + LSTR MSG_DELTA_CALIBRATE_X = _UxGT("⊿校準X"); // "Calibrate X" + LSTR MSG_DELTA_CALIBRATE_Y = _UxGT("⊿校準Y"); // "Calibrate Y" + LSTR MSG_DELTA_CALIBRATE_Z = _UxGT("⊿校準Z"); // "Calibrate Z" + LSTR MSG_DELTA_CALIBRATE_CENTER = _UxGT("⊿校準中心"); // "Calibrate Center" + LSTR MSG_DELTA_SETTINGS = _UxGT("⊿設置"); // "Delta Settings" + LSTR MSG_DELTA_AUTO_CALIBRATE = _UxGT("⊿自動校準"); // "Auto Calibration" + LSTR MSG_DELTA_DIAG_ROD = _UxGT("⊿斜柱"); // "Diag Rod" + LSTR MSG_DELTA_HEIGHT = _UxGT("⊿高度"); // "Height" + LSTR MSG_DELTA_RADIUS = _UxGT("⊿半徑"); // "Radius" + LSTR MSG_INFO_MENU = _UxGT("關於印表機"); // "About Printer" + LSTR MSG_INFO_PRINTER_MENU = _UxGT("印表機訊息"); // "Printer Info" + LSTR MSG_3POINT_LEVELING = _UxGT("三點調平"); // "3-Point Leveling" + LSTR MSG_LINEAR_LEVELING = _UxGT("線性調平"); // "Linear Leveling" + LSTR MSG_BILINEAR_LEVELING = _UxGT(" 雙線性調平"); // "Bilinear Leveling" + LSTR MSG_UBL_LEVELING = _UxGT("統一熱床調平(UBL)"); // "Unified Bed Leveling" + LSTR MSG_MESH_LEVELING = _UxGT("網格調平"); // "Mesh Leveling" + LSTR MSG_INFO_STATS_MENU = _UxGT("印表機統計"); // "Printer Stats" + LSTR MSG_INFO_BOARD_MENU = _UxGT("主板訊息"); // "Board Info" + LSTR MSG_INFO_THERMISTOR_MENU = _UxGT("溫度計"); // "Thermistors" + LSTR MSG_INFO_EXTRUDERS = _UxGT(" 擠出機"); // "Extruders" + LSTR MSG_INFO_BAUDRATE = _UxGT("傳輸率"); // "Baud" + LSTR MSG_INFO_PROTOCOL = _UxGT("協議"); // "Protocol" + LSTR MSG_INFO_RUNAWAY_OFF = _UxGT("監測溫度失控:關"); // "Runaway Watch: OFF" + LSTR MSG_INFO_RUNAWAY_ON = _UxGT("監測溫度失控:開"); // "Runaway Watch: ON" - LSTR MSG_CASE_LIGHT = _UxGT("外殼燈"); // "Case light" - LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("燈亮度"); // "Light BRIGHTNESS" - LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("打印機不正確"); // "The printer is incorrect" + LSTR MSG_CASE_LIGHT = _UxGT("外殼燈"); // "Case light" + LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("燈亮度"); // "Light BRIGHTNESS" + LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("打印機不正確"); // "The printer is incorrect" #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("列印計數"); // "Print Count" - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("已完成"); // "Completed" - LSTR MSG_INFO_PRINT_TIME = _UxGT("總列印時間"); // "Total print time" - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最長工作時間"); // "Longest job time" - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("總計擠出"); // "Extruded total" + LSTR MSG_INFO_PRINT_COUNT = _UxGT("列印計數"); // "Print Count" + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("已完成"); // "Completed" + LSTR MSG_INFO_PRINT_TIME = _UxGT("總列印時間"); // "Total print time" + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最長工作時間"); // "Longest job time" + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("總計擠出"); // "Extruded total" #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("列印數"); // "Prints" - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("完成"); // "Completed" - LSTR MSG_INFO_PRINT_TIME = _UxGT("總共"); // "Total" - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最長"); // "Longest" - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("已擠出"); // "Extruded" + LSTR MSG_INFO_PRINT_COUNT = _UxGT("列印數"); // "Prints" + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("完成"); // "Completed" + LSTR MSG_INFO_PRINT_TIME = _UxGT("總共"); // "Total" + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最長"); // "Longest" + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("已擠出"); // "Extruded" #endif - LSTR MSG_INFO_MIN_TEMP = _UxGT("最低溫度"); // "Min Temp" - LSTR MSG_INFO_MAX_TEMP = _UxGT("最高溫度"); // "Max Temp" - LSTR MSG_INFO_PSU = _UxGT("電源供應"); // "Power Supply" - LSTR MSG_DRIVE_STRENGTH = _UxGT("驅動力度"); // "Drive Strength" - LSTR MSG_DAC_PERCENT_N = _UxGT("@ 驅動 %"); //E Driver % - LSTR MSG_ERROR_TMC = _UxGT("TMC連接錯誤"); // "TMC CONNECTION ERROR" - LSTR MSG_DAC_EEPROM_WRITE = _UxGT("保存驅動設置"); // "DAC EEPROM Write" - LSTR MSG_FILAMENT_CHANGE_HEADER = _UxGT("更換絲料"); // "FILAMENT CHANGE" - LSTR MSG_FILAMENT_CHANGE_HEADER_PAUSE = _UxGT("列印已暫停"); // "PRINT PAUSED" - LSTR MSG_FILAMENT_CHANGE_HEADER_LOAD = _UxGT("裝載絲料"); // "LOAD FILAMENT" - LSTR MSG_FILAMENT_CHANGE_HEADER_UNLOAD = _UxGT("卸載絲料"); // "UNLOAD FILAMENT" - LSTR MSG_FILAMENT_CHANGE_OPTION_HEADER = _UxGT("恢複選項:"); // "RESUME OPTIONS:" - LSTR MSG_FILAMENT_CHANGE_OPTION_PURGE = _UxGT("清除更多"); // "Purge more" - LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("恢復列印"); // "Resume print" - LSTR MSG_FILAMENT_CHANGE_NOZZLE = _UxGT(" 噴嘴: "); // " Nozzle: " - LSTR MSG_RUNOUT_SENSOR = _UxGT("斷絲偵測"); // "Runout Sensor" - LSTR MSG_RUNOUT_DISTANCE_MM = _UxGT("絲距離mm"); // "Runout Dist mm" - LSTR MSG_KILL_HOMING_FAILED = _UxGT("歸原位失敗"); // "Homing failed" - LSTR MSG_LCD_PROBING_FAILED = _UxGT("探針探測失敗"); // "Probing failed" + LSTR MSG_INFO_MIN_TEMP = _UxGT("最低溫度"); // "Min Temp" + LSTR MSG_INFO_MAX_TEMP = _UxGT("最高溫度"); // "Max Temp" + LSTR MSG_INFO_PSU = _UxGT("電源供應"); // "Power Supply" + LSTR MSG_DRIVE_STRENGTH = _UxGT("驅動力度"); // "Drive Strength" + LSTR MSG_DAC_PERCENT_N = _UxGT("@ 驅動 %"); //E Driver % + LSTR MSG_ERROR_TMC = _UxGT("TMC連接錯誤"); // "TMC CONNECTION ERROR" + LSTR MSG_DAC_EEPROM_WRITE = _UxGT("保存驅動設置"); // "DAC EEPROM Write" + LSTR MSG_FILAMENT_CHANGE_HEADER = _UxGT("更換絲料"); // "FILAMENT CHANGE" + LSTR MSG_FILAMENT_CHANGE_HEADER_PAUSE = _UxGT("列印已暫停"); // "PRINT PAUSED" + LSTR MSG_FILAMENT_CHANGE_HEADER_LOAD = _UxGT("裝載絲料"); // "LOAD FILAMENT" + LSTR MSG_FILAMENT_CHANGE_HEADER_UNLOAD = _UxGT("卸載絲料"); // "UNLOAD FILAMENT" + LSTR MSG_FILAMENT_CHANGE_OPTION_HEADER = _UxGT("恢複選項:"); // "RESUME OPTIONS:" + LSTR MSG_FILAMENT_CHANGE_OPTION_PURGE = _UxGT("清除更多"); // "Purge more" + LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("恢復列印"); // "Resume print" + LSTR MSG_FILAMENT_CHANGE_NOZZLE = _UxGT(" 噴嘴: "); // " Nozzle: " + LSTR MSG_RUNOUT_SENSOR = _UxGT("斷絲偵測"); // "Runout Sensor" + LSTR MSG_RUNOUT_DISTANCE_MM = _UxGT("絲距離mm"); // "Runout Dist mm" + LSTR MSG_KILL_HOMING_FAILED = _UxGT("歸原位失敗"); // "Homing failed" + LSTR MSG_LCD_PROBING_FAILED = _UxGT("探針探測失敗"); // "Probing failed" // // Filament Change screens show up to 3 lines on a 4-line display @@ -464,31 +464,31 @@ namespace Language_zh_TW { // #if LCD_HEIGHT >= 4 LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("按下按鈕", "恢復列印")); //"Press Button to resume print" - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("停車中 ...")); // "Parking..." - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("等待開始", "絲料", "變更")); // "Wait for start of the filament change" - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("等待", "卸下絲料")); // "Wait for filament unload" - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("插入絲料", "並按鍵", "繼續 ...")); // "Insert filament and press button to continue..." - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("按下按鈕", "加熱噴嘴.")); // "Press button to heat nozzle." - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("加熱噴嘴", "請等待 ...")); // "Heating nozzle Please wait..." - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("等待", "進料")); // "Wait for filament load" - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("等待", "絲料清除")); // "Wait for filament purge" + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("停車中 ...")); // "Parking..." + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("等待開始", "絲料", "變更")); // "Wait for start of the filament change" + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("等待", "卸下絲料")); // "Wait for filament unload" + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("插入絲料", "並按鍵", "繼續 ...")); // "Insert filament and press button to continue..." + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("按下按鈕", "加熱噴嘴.")); // "Press button to heat nozzle." + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("加熱噴嘴", "請等待 ...")); // "Heating nozzle Please wait..." + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("等待", "進料")); // "Wait for filament load" + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("等待", "絲料清除")); // "Wait for filament purge" LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("按下完成","絲料清除")); //"Press button to filament purge" - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("等待列印", "恢復")); // "Wait for print to resume" + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("等待列印", "恢復")); // "Wait for print to resume" #else // LCD_HEIGHT < 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("按下繼續..")); // "Click to continue" - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("停車中 ...")); // "Parking..." - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("請等待 ...")); // "Please wait..." - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("插入並點擊")); // "Insert and Click" - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("按下加熱..")); // "Click to heat" - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("加熱中 ...")); // "Heating..." - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("退出中 ...")); // "Ejecting..." - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("載入中 ...")); // "Loading..." - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("清除中 ...")); // "Purging..." - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("按下完成..")); // "Click to finish" - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("恢復中 ...")); // "Resuming..." + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("按下繼續..")); // "Click to continue" + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("停車中 ...")); // "Parking..." + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("請等待 ...")); // "Please wait..." + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("插入並點擊")); // "Insert and Click" + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("按下加熱..")); // "Click to heat" + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("加熱中 ...")); // "Heating..." + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("退出中 ...")); // "Ejecting..." + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("載入中 ...")); // "Loading..." + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("清除中 ...")); // "Purging..." + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("按下完成..")); // "Click to finish" + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("恢復中 ...")); // "Resuming..." #endif // LCD_HEIGHT < 4 - LSTR MSG_SHORT_DAY = _UxGT("天"); // "d" // One character only - LSTR MSG_SHORT_HOUR = _UxGT("時"); // "h" // One character only - LSTR MSG_SHORT_MINUTE = _UxGT("分"); // "m" // One character only + LSTR MSG_SHORT_DAY = _UxGT("天"); // "d" // One character only + LSTR MSG_SHORT_HOUR = _UxGT("時"); // "h" // One character only + LSTR MSG_SHORT_MINUTE = _UxGT("分"); // "m" // One character only } diff --git a/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h b/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h index 494af83f59e1..c2865372c5ae 100644 --- a/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h +++ b/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h @@ -72,11 +72,11 @@ // L6470 or L6474 on SPI #if HAS_DRIVER(L6470) || HAS_DRIVER(L6474) // Shared with SPI on EXP2 - #define L6470_CHAIN_SCK_PIN PB3 - #define L6470_CHAIN_MISO_PIN PB4 - #define L6470_CHAIN_MOSI_PIN PB5 - #define L6470_CHAIN_SS_PIN PA15 - #define ENABLE_RESET_L64XX_CHIPS + #define L6470_CHAIN_SCK_PIN PB3 + #define L6470_CHAIN_MISO_PIN PB4 + #define L6470_CHAIN_MOSI_PIN PB5 + #define L6470_CHAIN_SS_PIN PA15 + #define ENABLE_RESET_L64XX_CHIPS #endif // TMC2130 on SPI From ef93b401c38eb1748721be74c9fdbae77f375792 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 27 May 2023 00:22:42 +0000 Subject: [PATCH 221/427] [cron] Bump distribution date (2023-05-27) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index bb0da0664885..cac9dbda5dda 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-26" +//#define STRING_DISTRIBUTION_DATE "2023-05-27" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index a203e9267c89..0bb7faffe2a6 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-26" + #define STRING_DISTRIBUTION_DATE "2023-05-27" #endif /** From 0b4500155e8c61aecf41090b41f34a3452593b78 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Sun, 28 May 2023 13:24:45 -0700 Subject: [PATCH 222/427] =?UTF-8?q?=F0=9F=A9=B9=20Update=20KEDI=20/=20GODI?= =?UTF-8?q?=20LCD=5FPINS=5FEN=20pin=20(#25886)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/language/language_vi.h | 1 - Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/Marlin/src/lcd/language/language_vi.h b/Marlin/src/lcd/language/language_vi.h index 2ce22961ca73..69b58f71f01d 100644 --- a/Marlin/src/lcd/language/language_vi.h +++ b/Marlin/src/lcd/language/language_vi.h @@ -438,5 +438,4 @@ namespace Language_vi { LSTR MSG_SHORT_DAY = _UxGT("n"); // d - ngày - One character only LSTR MSG_SHORT_HOUR = _UxGT("g"); // h - giờ - One character only LSTR MSG_SHORT_MINUTE = _UxGT("p"); // m - phút - One character only - LSTR MSG_SHORT_MINUTE = _UxGT("p"); // M - phút - One character only } diff --git a/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h b/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h index c2865372c5ae..c18085755c32 100644 --- a/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h +++ b/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h @@ -190,7 +190,7 @@ #define BTN_EN1 EXP1_08_PIN #define BTN_EN2 EXP1_06_PIN - #define LCD_PINS_ENABLE EXP1_03_PIN + #define LCD_PINS_EN EXP1_03_PIN #define LCD_PINS_D4 EXP1_05_PIN #elif IS_TFTGLCD_PANEL @@ -211,7 +211,7 @@ #define BTN_EN1 EXP2_08_PIN #define BTN_EN2 EXP2_06_PIN - #define LCD_PINS_ENABLE EXP1_08_PIN + #define LCD_PINS_EN EXP1_08_PIN #if ENABLED(FYSETC_MINI_12864) From b4ba3dd7f37a6214ed8a3e62f45f9d2aac3917c9 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 29 May 2023 00:21:30 +0000 Subject: [PATCH 223/427] [cron] Bump distribution date (2023-05-29) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index cac9dbda5dda..4c3f7ed26252 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-27" +//#define STRING_DISTRIBUTION_DATE "2023-05-29" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 0bb7faffe2a6..5fc2b732c3b3 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-27" + #define STRING_DISTRIBUTION_DATE "2023-05-29" #endif /** From d926d4dea413f70303ae38a74bc627aaaf21d97e Mon Sep 17 00:00:00 2001 From: DejitaruJin Date: Sun, 28 May 2023 21:22:00 -0400 Subject: [PATCH 224/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20and=20improve=20GT?= =?UTF-8?q?2560=20pins=20(#25890)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/pins/mega/pins_GT2560_REV_A.h | 122 +++++++++++------- Marlin/src/pins/mega/pins_GT2560_REV_A_PLUS.h | 6 +- .../stm32f1/pins_BTT_SKR_MINI_E3_common.h | 8 +- 3 files changed, 84 insertions(+), 52 deletions(-) diff --git a/Marlin/src/pins/mega/pins_GT2560_REV_A.h b/Marlin/src/pins/mega/pins_GT2560_REV_A.h index 61c61f94fff4..783a93a85b93 100644 --- a/Marlin/src/pins/mega/pins_GT2560_REV_A.h +++ b/Marlin/src/pins/mega/pins_GT2560_REV_A.h @@ -47,14 +47,12 @@ #define Y_MAX_PIN 28 #define Z_MIN_PIN 30 -#if ENABLED(BLTOUCH) - #if MB(GT2560_REV_A_PLUS) - #define SERVO0_PIN 11 - #define Z_MAX_PIN 32 - #else - #define SERVO0_PIN 32 - #define Z_MAX_PIN -1 - #endif +#if ENABLED(BLTOUCH) && !defined(SERVO0_PIN) + #define SERVO0_PIN 32 +#endif + +#if SERVO0_PIN == 32 + #define Z_MAX_PIN -1 #else #define Z_MAX_PIN 32 #endif @@ -102,64 +100,100 @@ // // Misc. Functions // -#define SDSS 53 + +// Power monitoring pins - set to 0 for main VIN, 1 for dedicated bed supply rail. +// Don't forget to enable POWER_MONITOR_VOLTAGE in Configuration_adv.h +// and set POWER_MONITOR_VOLTS_PER_VOLT to 0.090909. +#define POWER_MONITOR_VOLTAGE_PIN 0 + +/** LCD SDCARD + * ------ ------ + * (TX1) 18 | 1 2 | 19 (RX1) (MISO) 50 | 1 2 | 52 (SCK) + * (RX2) 17 | 3 4 | 20 (SDA) 42 | 3 4 | 53 (SS) + * (TX2) 16 | 5 6 21 (SCL) 40 | 5 6 51 (MOSI) + * 5 | 7 8 | 6 38 | 7 8 | RESET + * GND | 9 10 | 5V GND | 9 10 | 5V/3V3 + * ------ ------ + * SV1 SV3 + * + * GT2560 LCD & SD headers follow typical EXP1 & EXP2 format. + * SD header voltage pin set by link pads beneath the header; R25 for 5V, R44 for 3.3V (default) + * Pins 20 (SDA) and 21 (SCL) have external 10K pull-ups on the board. + */ + +#define EXP1_01_PIN 18 // TX1 / BEEPER +#define EXP1_02_PIN 19 // RX1 / ENC +#define EXP1_03_PIN 17 // RX2 / CS +#define EXP1_04_PIN 20 // SDA / A0 +#define EXP1_05_PIN 16 // TX2 / LCD_RS +#define EXP1_06_PIN 21 // SCL / CS +#define EXP1_07_PIN 5 // D6 / A0 +#define EXP1_08_PIN 6 // D7 / D4 + +#define EXP2_01_PIN 50 // MISO +#define EXP2_02_PIN 52 // SCK +#define EXP2_03_PIN 42 // EN2 +#define EXP2_04_PIN 53 // SDSS +#define EXP2_05_PIN 40 // EN1 +#define EXP2_06_PIN 51 // MOSI +#define EXP2_07_PIN 38 // SD_DET +#define EXP2_08_PIN -1 // RESET + +#define SDSS EXP2_04_PIN #define LED_PIN 13 -#define PS_ON_PIN 12 -#define SUICIDE_PIN 54 // Must be enabled at startup to keep power flowing -#define KILL_PIN -1 #if HAS_WIRED_LCD - #define BEEPER_PIN 18 + #define BEEPER_PIN EXP1_01_PIN #if IS_NEWPANEL #if ENABLED(MKS_MINI_12864) - #define DOGLCD_A0 5 - #define DOGLCD_CS 21 - #define BTN_EN1 40 - #define BTN_EN2 42 + #define DOGLCD_CS EXP1_06_PIN + #define DOGLCD_A0 EXP1_07_PIN + #define BTN_EN1 EXP2_05_PIN + #define BTN_EN2 EXP2_03_PIN #elif ENABLED(FYSETC_MINI_12864) // Disconnect EXP2-1 and EXP2-2, otherwise future firmware upload won't work. - #define DOGLCD_A0 20 - #define DOGLCD_CS 17 + #define DOGLCD_CS EXP1_03_PIN + #define DOGLCD_A0 EXP1_04_PIN - #define NEOPIXEL_PIN 21 - #define BTN_EN1 42 - #define BTN_EN2 40 + #define NEOPIXEL_PIN EXP1_06_PIN + #define BTN_EN1 EXP2_03_PIN + #define BTN_EN2 EXP2_05_PIN - #define LCD_RESET_PIN 16 + #define LCD_RESET_PIN EXP1_05_PIN #define LCD_CONTRAST_INIT 220 #define LCD_BACKLIGHT_PIN -1 #else - #define LCD_PINS_RS 20 - #define LCD_PINS_EN 17 - #define LCD_PINS_D4 16 - #define LCD_PINS_D5 21 - #define LCD_PINS_D6 5 - #define LCD_PINS_D7 6 - #define BTN_EN1 42 - #define BTN_EN2 40 + #define LCD_PINS_RS EXP1_04_PIN + #define LCD_PINS_EN EXP1_03_PIN + #define LCD_PINS_D4 EXP1_05_PIN + #define LCD_PINS_D5 EXP1_06_PIN + #define LCD_PINS_D6 EXP1_07_PIN + #define LCD_PINS_D7 EXP1_08_PIN + #define BTN_EN1 EXP2_03_PIN + #define BTN_EN2 EXP2_05_PIN #endif - #define BTN_ENC 19 - #define SD_DETECT_PIN 38 + #define BTN_ENC EXP1_02_PIN + #define SD_DETECT_PIN EXP2_07_PIN #else // !IS_NEWPANEL - #define SHIFT_CLK_PIN 38 - #define SHIFT_LD_PIN 42 - #define SHIFT_OUT_PIN 40 - #define SHIFT_EN_PIN 17 - - #define LCD_PINS_RS 16 - #define LCD_PINS_EN 5 - #define LCD_PINS_D4 6 - #define LCD_PINS_D5 21 - #define LCD_PINS_D6 20 - #define LCD_PINS_D7 19 + #define SHIFT_CLK_PIN EXP2_07_PIN + #define SHIFT_LD_PIN EXP2_03_PIN + #define SHIFT_OUT_PIN EXP2_05_PIN + #define SHIFT_EN_PIN EXP1_03_PIN + + #define LCD_PINS_RS EXP1_05_PIN + #define LCD_PINS_EN EXP1_07_PIN + #define LCD_PINS_D4 EXP1_08_PIN + #define LCD_PINS_D5 EXP1_06_PIN + #define LCD_PINS_D6 EXP1_04_PIN + #define LCD_PINS_D7 EXP1_02_PIN #if ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) #define BTN_ENC_EN LCD_PINS_D7 // Detect the presence of the encoder diff --git a/Marlin/src/pins/mega/pins_GT2560_REV_A_PLUS.h b/Marlin/src/pins/mega/pins_GT2560_REV_A_PLUS.h index a982a0e00e73..1905f58108d0 100644 --- a/Marlin/src/pins/mega/pins_GT2560_REV_A_PLUS.h +++ b/Marlin/src/pins/mega/pins_GT2560_REV_A_PLUS.h @@ -30,8 +30,6 @@ #define BOARD_INFO_NAME "GT2560 Rev.A+" -#include "pins_GT2560_REV_A.h" +#define SERVO0_PIN 11 -#if DISABLED(BLTOUCH) - #define SERVO0_PIN 32 -#endif +#include "pins_GT2560_REV_A.h" diff --git a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_common.h b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_common.h index 689e73c4f3e1..45829d2eded2 100644 --- a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_common.h +++ b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_common.h @@ -114,15 +114,15 @@ #define USB_CONNECT_INVERTING false /** - * SKR Mini E3 V1.0, V1.2 - * ------ + * SKR Mini E3 V1.0, V1.2 + * ------ * (BEEPER) PB5 | 1 2 | PB6 (BTN_ENC) * (BTN_EN1) PA9 | 3 4 | RESET * (BTN_EN2) PA10 5 6 | PB9 (LCD_D4) * (LCD_RS) PB8 | 7 8 | PB7 (LCD_EN) * GND | 9 10 | 5V - * ------ - * EXP1 + * ------ + * EXP1 */ #ifndef EXP1_02_PIN #define EXP1_02_PIN PB6 From 47616c7dfa7f3f7fddd8fa8d207929d65d2291a6 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 29 May 2023 19:00:09 -0500 Subject: [PATCH 225/427] =?UTF-8?q?=F0=9F=94=A8=20Install=20'heatshrink'?= =?UTF-8?q?=20if=20needed=20(#25896)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../share/scripts/MarlinBinaryProtocol.py | 28 +++++++++++-------- buildroot/share/scripts/upload.py | 26 +++++++++-------- 2 files changed, 31 insertions(+), 23 deletions(-) diff --git a/buildroot/share/scripts/MarlinBinaryProtocol.py b/buildroot/share/scripts/MarlinBinaryProtocol.py index ecf9df35e2f5..dca5e167f761 100644 --- a/buildroot/share/scripts/MarlinBinaryProtocol.py +++ b/buildroot/share/scripts/MarlinBinaryProtocol.py @@ -11,11 +11,14 @@ import datetime import random try: - import heatshrink + import heatshrink2 as heatshrink heatshrink_exists = True except ImportError: - heatshrink_exists = False - + try: + import heatshrink + heatshrink_exists = True + except ImportError: + heatshrink_exists = False def millis(): return time.perf_counter() * 1000 @@ -393,18 +396,19 @@ def abort(self): def copy(self, filename, dest_filename, compression, dummy): self.connect() - compression_support = heatshrink_exists and self.compression['algorithm'] == 'heatshrink' and compression - if compression and (not heatshrink_exists or not self.compression['algorithm'] == 'heatshrink'): - print("Compression not supported by client") - #compression_support = False + has_heatshrink = heatshrink_exists and self.compression['algorithm'] == 'heatshrink' + if compression and not has_heatshrink: + hs = '2' if sys.version_info[0] > 2 else '' + print("Compression not supported by client. Use 'pip install heatshrink%s' to fix." % hs) + compression = False data = open(filename, "rb").read() filesize = len(data) - self.open(dest_filename, compression_support, dummy) + self.open(dest_filename, compression, dummy) block_size = self.protocol.block_size - if compression_support: + if compression: data = heatshrink.encode(data, window_sz2=self.compression['window'], lookahead_sz2=self.compression['lookahead']) cratio = filesize / len(data) @@ -419,17 +423,17 @@ def copy(self, filename, dest_filename, compression, dummy): self.write(data[start:end]) kibs = (( (i+1) * block_size) / 1024) / (millis() + 1 - start_time) * 1000 if (i / blocks) >= dump_pctg: - print("\r{0:2.0f}% {1:4.2f}KiB/s {2} Errors: {3}".format((i / blocks) * 100, kibs, "[{0:4.2f}KiB/s]".format(kibs * cratio) if compression_support else "", self.protocol.errors), end='') + print("\r{0:2.0f}% {1:4.2f}KiB/s {2} Errors: {3}".format((i / blocks) * 100, kibs, "[{0:4.2f}KiB/s]".format(kibs * cratio) if compression else "", self.protocol.errors), end='') dump_pctg += 0.1 if self.protocol.errors > 0: # Dump last status (errors may not be visible) - print("\r{0:2.0f}% {1:4.2f}KiB/s {2} Errors: {3} - Aborting...".format((i / blocks) * 100, kibs, "[{0:4.2f}KiB/s]".format(kibs * cratio) if compression_support else "", self.protocol.errors), end='') + print("\r{0:2.0f}% {1:4.2f}KiB/s {2} Errors: {3} - Aborting...".format((i / blocks) * 100, kibs, "[{0:4.2f}KiB/s]".format(kibs * cratio) if compression else "", self.protocol.errors), end='') print("") # New line to break the transfer speed line self.close() print("Transfer aborted due to protocol errors") #raise Exception("Transfer aborted due to protocol errors") return False; - print("\r{0:2.0f}% {1:4.2f}KiB/s {2} Errors: {3}".format(100, kibs, "[{0:4.2f}KiB/s]".format(kibs * cratio) if compression_support else "", self.protocol.errors)) # no one likes transfers finishing at 99.8% + print("\r{0:2.0f}% {1:4.2f}KiB/s {2} Errors: {3}".format(100, kibs, "[{0:4.2f}KiB/s]".format(kibs * cratio) if compression else "", self.protocol.errors)) # no one likes transfers finishing at 99.8% if not self.close(): print("Transfer failed") diff --git a/buildroot/share/scripts/upload.py b/buildroot/share/scripts/upload.py index af15a825906e..c97605e3f4b7 100644 --- a/buildroot/share/scripts/upload.py +++ b/buildroot/share/scripts/upload.py @@ -7,17 +7,6 @@ Import("env") -# Needed (only) for compression, but there are problems with pip install heatshrink -#try: -# import heatshrink -#except ImportError: -# # Install heatshrink -# print("Installing 'heatshrink' python module...") -# env.Execute(env.subst("$PYTHONEXE -m pip install heatshrink")) -# -# Not tested: If it's safe to install python libraries in PIO python try: -# env.Execute(env.subst("$PYTHONEXE -m pip install https://github.com/p3p/pyheatshrink/releases/download/0.3.3/pyheatshrink-pip.zip")) - import MarlinBinaryProtocol #-----------------# @@ -191,6 +180,21 @@ def _RollbackUpload(FirmwareFile): # "upload_random_name": generate a random 8.3 firmware filename to upload upload_random_filename = upload_delete_old_bins and not marlin_long_filename_host_support + # Heatshrink module is needed (only) for compression + if upload_compression: + if sys.version_info[0] > 2: + try: + import heatshrink2 + except ImportError: + print("Installing 'heatshrink2' python module...") + env.Execute(env.subst("$PYTHONEXE -m pip install heatshrink2")) + else: + try: + import heatshrink + except ImportError: + print("Installing 'heatshrink' python module...") + env.Execute(env.subst("$PYTHONEXE -m pip install heatshrink")) + try: # Start upload job From 67f0d6ae5ea89fe1cdfc7ac4b25ea2947df1772b Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Tue, 30 May 2023 00:33:07 +0000 Subject: [PATCH 226/427] [cron] Bump distribution date (2023-05-30) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 4c3f7ed26252..745b738b3b51 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-29" +//#define STRING_DISTRIBUTION_DATE "2023-05-30" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 5fc2b732c3b3..47b8fecd57c2 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-29" + #define STRING_DISTRIBUTION_DATE "2023-05-30" #endif /** From 3999d67e514c1e752128df2a6dc80ec0579ee504 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Thu, 1 Jun 2023 12:44:19 -0700 Subject: [PATCH 227/427] =?UTF-8?q?=F0=9F=94=A7=20Default=20has=20Heated?= =?UTF-8?q?=20Bed=20(#25895)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/Configuration.h | 2 +- Marlin/src/inc/Conditionals_adv.h | 2 -- Marlin/src/inc/Conditionals_post.h | 18 ++++++++++++------ Marlin/src/inc/SanityCheck.h | 11 +++++++++++ buildroot/tests/DUE | 2 +- buildroot/tests/mega2560 | 2 +- buildroot/tests/rumba32 | 2 +- 7 files changed, 27 insertions(+), 12 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index fee89898a375..61377189a8bd 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -547,7 +547,7 @@ #define TEMP_SENSOR_5 0 #define TEMP_SENSOR_6 0 #define TEMP_SENSOR_7 0 -#define TEMP_SENSOR_BED 0 +#define TEMP_SENSOR_BED 1 #define TEMP_SENSOR_PROBE 0 #define TEMP_SENSOR_CHAMBER 0 #define TEMP_SENSOR_COOLER 0 diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index 70644ddf0d1b..343ebae1ff38 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -688,8 +688,6 @@ #define TEMP_SENSOR_BED_IS_CUSTOM 1 #endif #else - #undef THERMAL_PROTECTION_BED - #undef THERMAL_PROTECTION_BED_PERIOD #undef BED_MINTEMP #undef BED_MAXTEMP #endif diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index d137e1d9c198..5794a96b8b81 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -2240,8 +2240,11 @@ #if HOTENDS > 7 && HAS_ADC_TEST(7) #define HAS_TEMP_ADC_7 1 #endif -#if HAS_ADC_TEST(BED) - #define HAS_TEMP_ADC_BED 1 +#if TEMP_SENSOR_BED + #define HAS_HEATED_BED 1 + #if HAS_ADC_TEST(BED) + #define HAS_TEMP_ADC_BED 1 + #endif #endif #if HAS_ADC_TEST(PROBE) #define HAS_TEMP_ADC_PROBE 1 @@ -2262,7 +2265,7 @@ #define HAS_TEMP_ADC_REDUNDANT 1 #endif -#define HAS_TEMP(N) (TEMP_SENSOR_IS_MAX_TC(N) || EITHER(HAS_TEMP_ADC_##N, TEMP_SENSOR_##N##_IS_DUMMY)) +#define HAS_TEMP(N) (TEMP_SENSOR_IS_MAX_TC(N) || HAS_TEMP_ADC_##N || TEMP_SENSOR_##N##_IS_DUMMY) #if HAS_HOTEND && HAS_TEMP(0) #define HAS_TEMP_HOTEND 1 #endif @@ -2331,10 +2334,12 @@ #if PIN_EXISTS(HEATER_BED) #define HAS_HEATER_BED 1 #endif +#if PIN_EXISTS(HEATER_CHAMBER) + #define HAS_HEATER_CHAMBER 1 +#endif // Shorthand for common combinations -#if HAS_TEMP_BED && HAS_HEATER_BED - #define HAS_HEATED_BED 1 +#if HAS_HEATED_BED #ifndef BED_OVERSHOOT #define BED_OVERSHOOT 10 #endif @@ -2361,7 +2366,7 @@ #define HAS_TEMP_SENSOR 1 #endif -#if HAS_TEMP_CHAMBER && PIN_EXISTS(HEATER_CHAMBER) +#if HAS_TEMP_CHAMBER && HAS_HEATER_CHAMBER #define HAS_HEATED_CHAMBER 1 #ifndef CHAMBER_OVERSHOOT #define CHAMBER_OVERSHOOT 10 @@ -2388,6 +2393,7 @@ // Thermal protection #if !HAS_HEATED_BED #undef THERMAL_PROTECTION_BED + #undef THERMAL_PROTECTION_BED_PERIOD #endif #if ENABLED(THERMAL_PROTECTION_HOTENDS) && WATCH_TEMP_PERIOD > 0 #define WATCH_HOTENDS 1 diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 78630051b67d..89cf8c5198c5 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -127,6 +127,17 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #undef _ISMAX_1 #undef _ISSNS_1 +/** + * Heated Bed requirements + */ +#if HAS_HEATED_BED + #if !HAS_TEMP_BED + #error "The Heated Bed requires a TEMP_BED_PIN or Thermocouple." + #elif !HAS_HEATER_BED + #error "The Heated Bed requires HEATER_BED_PIN." + #endif +#endif + /** * Hephestos 2 Heated Bed Kit requirements */ diff --git a/buildroot/tests/DUE b/buildroot/tests/DUE index c43d30c76ed3..81e60c962345 100755 --- a/buildroot/tests/DUE +++ b/buildroot/tests/DUE @@ -47,6 +47,6 @@ exec_test $1 $2 "RADDS with ABL (Bilinear), Triple Z Axis, Z_STEPPER_AUTO_ALIGN, # Test SWITCHING_EXTRUDER # restore_configs -opt_set MOTHERBOARD BOARD_RAMPS4DUE_EEF LCD_LANGUAGE fi EXTRUDERS 2 NUM_SERVOS 1 +opt_set MOTHERBOARD BOARD_RAMPS4DUE_EEF LCD_LANGUAGE fi EXTRUDERS 2 TEMP_SENSOR_BED 0 NUM_SERVOS 1 opt_enable SWITCHING_EXTRUDER ULTIMAKERCONTROLLER BEEP_ON_FEEDRATE_CHANGE POWER_LOSS_RECOVERY exec_test $1 $2 "RAMPS4DUE_EEF with SWITCHING_EXTRUDER, POWER_LOSS_RECOVERY" "$3" diff --git a/buildroot/tests/mega2560 b/buildroot/tests/mega2560 index 1490c9e4aaa4..46de664e43b6 100755 --- a/buildroot/tests/mega2560 +++ b/buildroot/tests/mega2560 @@ -90,7 +90,7 @@ exec_test $1 $2 "E Axis Only | DOGM MarlinUI" "$3" # restore_configs opt_set MOTHERBOARD BOARD_AZTEEG_X3_PRO MIXING_STEPPERS 5 LCD_LANGUAGE ru \ - NUM_RUNOUT_SENSORS E_STEPPERS REDUNDANT_PART_COOLING_FAN 1 \ + NUM_RUNOUT_SENSORS E_STEPPERS TEMP_SENSOR_BED 0 REDUNDANT_PART_COOLING_FAN 1 \ FIL_RUNOUT2_PIN 16 FIL_RUNOUT3_PIN 17 FIL_RUNOUT4_PIN 4 FIL_RUNOUT5_PIN 5 opt_enable MIXING_EXTRUDER GRADIENT_MIX GRADIENT_VTOOL CR10_STOCKDISPLAY \ USE_CONTROLLER_FAN CONTROLLER_FAN_EDITABLE CONTROLLER_FAN_IGNORE_Z \ diff --git a/buildroot/tests/rumba32 b/buildroot/tests/rumba32 index 833769d0b9ba..c3d7603e4e8d 100755 --- a/buildroot/tests/rumba32 +++ b/buildroot/tests/rumba32 @@ -13,7 +13,7 @@ opt_set MOTHERBOARD BOARD_RUMBA32_V1_0 SERIAL_PORT -1 \ opt_disable PIDTEMP opt_enable PIDTEMPBED FAN_SOFT_PWM opt_disable THERMAL_PROTECTION_BED -exec_test $1 $2 "RUMBA32 V1.0 with TMC2130, PID Bed, and bed thermal protection disabled" "$3" +exec_test $1 $2 "RUMBA32 V1.0 with TMC2130, PID Bed, no Bed Thermal Protection" "$3" # Build examples restore_configs From ad23b8c559d55bfbc81d077a129c256c9ef9a585 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 1 Jun 2023 14:54:23 -0500 Subject: [PATCH 228/427] =?UTF-8?q?=F0=9F=9A=B8=20Probe=20Wizard=20display?= =?UTF-8?q?=20fix?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/menu/menu_probe_offset.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/lcd/menu/menu_probe_offset.cpp b/Marlin/src/lcd/menu/menu_probe_offset.cpp index 0dd118ed2230..82bf23ca842e 100644 --- a/Marlin/src/lcd/menu/menu_probe_offset.cpp +++ b/Marlin/src/lcd/menu/menu_probe_offset.cpp @@ -59,7 +59,7 @@ void probe_offset_wizard_menu() { STATIC_ITEM(MSG_MOVE_NOZZLE_TO_BED, SS_CENTER|SS_INVERT); STATIC_ITEM_F(F("Z"), SS_CENTER, ftostr42_52(current_position.z)); - STATIC_ITEM(MSG_ZPROBE_ZOFFSET, SS_LEFT, ftostr42_52(calculated_z_offset)); + STATIC_ITEM(MSG_ZPROBE_ZOFFSET, SS_FULL, ftostr42_52(calculated_z_offset)); SUBMENU(MSG_MOVE_1MM, []{ _goto_manual_move_z( 1); }); SUBMENU(MSG_MOVE_01MM, []{ _goto_manual_move_z( 0.1f); }); From 9e0dcd4a2b6d0262ee2b09170aff0c1f21d9175e Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 1 Jun 2023 16:53:02 -0500 Subject: [PATCH 229/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Ext?= =?UTF-8?q?UI::onLevelingStart/Done=20for=20all=20leveling=20(#25913)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/extui/anycubic_chiron/chiron_extui.cpp | 4 +++- .../src/lcd/extui/anycubic_i3mega/anycubic_extui.cpp | 5 +++-- Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp | 4 +++- Marlin/src/lcd/extui/dgus/dgus_extui.cpp | 4 +++- .../src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp | 11 +++++------ .../src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp | 2 +- .../lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp | 4 +++- Marlin/src/lcd/extui/example/example.cpp | 4 +++- .../lcd/extui/ftdi_eve_touch_ui/ftdi_eve_extui.cpp | 5 ++++- .../generic/bed_mesh_edit_screen.cpp | 2 +- .../generic/bed_mesh_view_screen.cpp | 2 +- .../src/lcd/extui/ia_creality/ia_creality_extui.cpp | 4 ++-- Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp | 2 +- Marlin/src/lcd/extui/malyan/malyan_extui.cpp | 9 ++++++--- Marlin/src/lcd/extui/nextion/nextion_extui.cpp | 4 +++- Marlin/src/lcd/extui/ui_api.cpp | 2 +- Marlin/src/lcd/extui/ui_api.h | 6 +++--- 17 files changed, 46 insertions(+), 28 deletions(-) diff --git a/Marlin/src/lcd/extui/anycubic_chiron/chiron_extui.cpp b/Marlin/src/lcd/extui/anycubic_chiron/chiron_extui.cpp index 27ee4689ba12..4ed0461afe0e 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/chiron_extui.cpp +++ b/Marlin/src/lcd/extui/anycubic_chiron/chiron_extui.cpp @@ -104,10 +104,12 @@ namespace ExtUI { // whether successful or not. } - #if HAS_MESH + #if HAS_LEVELING void onLevelingStart() {} void onLevelingDone() {} + #endif + #if HAS_MESH void onMeshUpdate(const int8_t xpos, const int8_t ypos, const_float_t zval) { // Called when any mesh points are updated //SERIAL_ECHOLNPGM("onMeshUpdate() x:", xpos, " y:", ypos, " z:", zval); diff --git a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_extui.cpp b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_extui.cpp index 0df3bde89d50..2bd2a458b879 100644 --- a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_extui.cpp +++ b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_extui.cpp @@ -91,11 +91,12 @@ namespace ExtUI { // whether successful or not. } - #if HAS_MESH - + #if HAS_LEVELING void onLevelingStart() {} void onLevelingDone() {} + #endif + #if HAS_MESH void onMeshUpdate(const int8_t xpos, const int8_t ypos, const_float_t zval) { // Called when any mesh points are updated } diff --git a/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp b/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp index 80e1746a2f9f..6990a23f7b72 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp @@ -108,10 +108,12 @@ namespace ExtUI { // whether successful or not. } - #if HAS_MESH + #if HAS_LEVELING void onLevelingStart() {} void onLevelingDone() {} + #endif + #if HAS_MESH void onMeshUpdate(const int8_t xpos, const int8_t ypos, const_float_t zval) { // Called when any mesh points are updated //SERIAL_ECHOLNPGM("onMeshUpdate() x:", xpos, " y:", ypos, " z:", zval); diff --git a/Marlin/src/lcd/extui/dgus/dgus_extui.cpp b/Marlin/src/lcd/extui/dgus/dgus_extui.cpp index 1d86d8bd558f..ede627c3dad5 100644 --- a/Marlin/src/lcd/extui/dgus/dgus_extui.cpp +++ b/Marlin/src/lcd/extui/dgus/dgus_extui.cpp @@ -112,10 +112,12 @@ namespace ExtUI { // whether successful or not. } - #if HAS_MESH + #if HAS_LEVELING void onLevelingStart() {} void onLevelingDone() {} + #endif + #if HAS_MESH void onMeshUpdate(const int8_t xpos, const int8_t ypos, const_float_t zval) { // Called when any mesh points are updated } diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp index 6a430e74a6d0..c0f85760456a 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp @@ -118,8 +118,7 @@ void DGUSScreenHandler::Loop() { } if (current_screen == DGUS_Screen::WAIT - && ((wait_continue && !wait_for_user) - || (!wait_continue && IsPrinterIdle())) + && ((wait_continue && !wait_for_user) || (!wait_continue && IsPrinterIdle())) ) { MoveToScreen(wait_return_screen, true); return; @@ -128,7 +127,7 @@ void DGUSScreenHandler::Loop() { if (current_screen == DGUS_Screen::LEVELING_PROBING && IsPrinterIdle()) { dgus_display.PlaySound(3); - SetStatusMessage(ExtUI::getMeshValid() ? GET_TEXT_F(DGUS_MSG_PROBING_SUCCESS) : GET_TEXT_F(DGUS_MSG_PROBING_FAILED)); + SetStatusMessage(ExtUI::getLevelingIsValid() ? GET_TEXT_F(DGUS_MSG_PROBING_SUCCESS) : GET_TEXT_F(DGUS_MSG_PROBING_FAILED)); MoveToScreen(DGUS_Screen::LEVELING_AUTOMATIC); return; @@ -190,7 +189,7 @@ void DGUSScreenHandler::StoreSettings(char *buff) { data.initialized = true; data.volume = dgus_display.GetVolume(); data.brightness = dgus_display.GetBrightness(); - data.abl_okay = (ExtUI::getLevelingActive() && ExtUI::getMeshValid()); + data.abl_okay = (ExtUI::getLevelingActive() && ExtUI::getLevelingIsValid()); memcpy(buff, &data, sizeof(data)); } @@ -206,7 +205,7 @@ void DGUSScreenHandler::LoadSettings(const char *buff) { dgus_display.SetBrightness(data.initialized ? data.brightness : DGUS_DEFAULT_BRIGHTNESS); if (data.initialized) { - leveling_active = (data.abl_okay && ExtUI::getMeshValid()); + leveling_active = (data.abl_okay && ExtUI::getLevelingIsValid()); ExtUI::setLevelingActive(leveling_active); } } @@ -247,7 +246,7 @@ void DGUSScreenHandler::MeshUpdate(const int8_t xpos, const int8_t ypos) { uint8_t point = ypos * GRID_MAX_POINTS_X + xpos; probing_icons[point < 16 ? 0 : 1] |= (1U << (point % 16)); - if (xpos >= GRID_MAX_POINTS_X - 1 && ypos >= GRID_MAX_POINTS_Y - 1 && !ExtUI::getMeshValid()) + if (xpos >= GRID_MAX_POINTS_X - 1 && ypos >= GRID_MAX_POINTS_Y - 1 && !ExtUI::getLevelingIsValid()) probing_icons[0] = probing_icons[1] = 0; TriggerFullUpdate(); diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp index 3b1a38502db6..c3b4bad88ad5 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp @@ -136,7 +136,7 @@ bool DGUSSetupHandler::LevelingOffset() { } bool DGUSSetupHandler::LevelingAutomatic() { - if (ExtUI::getMeshValid()) { + if (ExtUI::getLevelingIsValid()) { dgus_screen_handler.leveling_active = true; ExtUI::setLevelingActive(true); diff --git a/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp b/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp index 73dead1b56f6..6e8f2b010067 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp @@ -108,10 +108,12 @@ namespace ExtUI { dgus_screen_handler.ConfigurationStoreRead(success); } - #if HAS_MESH + #if HAS_LEVELING void onLevelingStart() {} void onLevelingDone() {} + #endif + #if HAS_MESH void onMeshUpdate(const int8_t xpos, const int8_t ypos, const_float_t zval) { dgus_screen_handler.MeshUpdate(xpos, ypos); } diff --git a/Marlin/src/lcd/extui/example/example.cpp b/Marlin/src/lcd/extui/example/example.cpp index 83b7a0a3cabc..b295434d842c 100644 --- a/Marlin/src/lcd/extui/example/example.cpp +++ b/Marlin/src/lcd/extui/example/example.cpp @@ -98,10 +98,12 @@ namespace ExtUI { // whether successful or not. } - #if HAS_MESH + #if HAS_LEVELING void onLevelingStart() {} void onLevelingDone() {} + #endif + #if HAS_MESH void onMeshUpdate(const int8_t xpos, const int8_t ypos, const_float_t zval) { // Called when any mesh points are updated } diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_extui.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_extui.cpp index 86f470ee1915..dc49a77ff8a3 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_extui.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_extui.cpp @@ -117,9 +117,12 @@ namespace ExtUI { ConfirmUserRequestAlertBox::hide(); } - #if HAS_LEVELING && HAS_MESH + #if HAS_LEVELING void onLevelingStart() {} void onLevelingDone() {} + #endif + + #if HAS_MESH void onMeshUpdate(const int8_t x, const int8_t y, const_float_t val) { BedMeshViewScreen::onMeshUpdate(x, y, val); } void onMeshUpdate(const int8_t x, const int8_t y, const ExtUI::probe_state_t state) { BedMeshViewScreen::onMeshUpdate(x, y, state); } #endif diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/bed_mesh_edit_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/bed_mesh_edit_screen.cpp index 37eb29a99d11..ab6d8a89024d 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/bed_mesh_edit_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/bed_mesh_edit_screen.cpp @@ -95,7 +95,7 @@ void BedMeshEditScreen::setHighlightedValue(float value) { } void BedMeshEditScreen::moveToHighlightedValue() { - if (ExtUI::getMeshValid()) { + if (ExtUI::getLevelingIsValid()) { ExtUI::setLevelingActive(true); ExtUI::setSoftEndstopState(false); ExtUI::moveToMeshPoint(mydata.highlight, gaugeThickness + mydata.zAdjustment); diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/bed_mesh_view_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/bed_mesh_view_screen.cpp index 7b4195ff5ce3..86eab54d85b1 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/bed_mesh_view_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/bed_mesh_view_screen.cpp @@ -125,7 +125,7 @@ void BedMeshViewScreen::onMeshUpdate(const int8_t x, const int8_t y, const ExtUI mydata.count = 0; break; case ExtUI::G29_FINISH: - if (mydata.count == GRID_MAX_POINTS && ExtUI::getMeshValid()) + if (mydata.count == GRID_MAX_POINTS && ExtUI::getLevelingIsValid()) mydata.message = GET_TEXT_F(MSG_BED_MAPPING_DONE); else mydata.message = GET_TEXT_F(MSG_BED_MAPPING_INCOMPLETE); diff --git a/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.cpp b/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.cpp index 4bfdfc6ec3c9..2d6c2aa96e68 100644 --- a/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.cpp +++ b/Marlin/src/lcd/extui/ia_creality/ia_creality_extui.cpp @@ -311,7 +311,7 @@ void onSettingsStored(const bool success) { void onSettingsLoaded(const bool success) { #if HAS_MESH - if (ExtUI::getMeshValid()) { + if (ExtUI::getLevelingIsValid()) { uint8_t abl_probe_index = 0; for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { @@ -371,7 +371,7 @@ void onLevelingStart() {} void onLevelingDone() { #if HAS_MESH - if (ExtUI::getMeshValid()) { + if (ExtUI::getLevelingIsValid()) { uint8_t abl_probe_index = 0; for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { diff --git a/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp index 37ba539ff102..3eac438bb1b7 100644 --- a/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp +++ b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp @@ -1043,7 +1043,7 @@ void RTS::handleData() { #if HAS_MESH sendData(getLevelingActive() ? 3 : 2, AutoLevelIcon); - if (ExtUI::getMeshValid()) { + if (ExtUI::getLevelingIsValid()) { uint8_t abl_probe_index = 0; for (uint8_t outer = 0; outer < GRID_MAX_POINTS_Y; outer++) for (uint8_t inner = 0; inner < GRID_MAX_POINTS_X; inner++) { diff --git a/Marlin/src/lcd/extui/malyan/malyan_extui.cpp b/Marlin/src/lcd/extui/malyan/malyan_extui.cpp index 042062b7c9b7..f82f1f06a7de 100644 --- a/Marlin/src/lcd/extui/malyan/malyan_extui.cpp +++ b/Marlin/src/lcd/extui/malyan/malyan_extui.cpp @@ -150,11 +150,14 @@ namespace ExtUI { void onSettingsStored(const bool) {} void onSettingsLoaded(const bool) {} - #if HAS_MESH + #if HAS_LEVELING void onLevelingStart() {} void onLevelingDone() {} - void onMeshUpdate(const int8_t xpos, const int8_t ypos, const_float_t zval) {} - void onMeshUpdate(const int8_t xpos, const int8_t ypos, const ExtUI::probe_state_t state) {} + #endif + + #if HAS_MESH + void onMeshUpdate(const int8_t, const int8_t, const_float_t) {} + void onMeshUpdate(const int8_t, const int8_t, const ExtUI::probe_state_t) {} #endif #if ENABLED(POWER_LOSS_RECOVERY) diff --git a/Marlin/src/lcd/extui/nextion/nextion_extui.cpp b/Marlin/src/lcd/extui/nextion/nextion_extui.cpp index da3e344a35aa..b1e1997a3ac6 100644 --- a/Marlin/src/lcd/extui/nextion/nextion_extui.cpp +++ b/Marlin/src/lcd/extui/nextion/nextion_extui.cpp @@ -89,10 +89,12 @@ namespace ExtUI { // whether successful or not. } - #if HAS_MESH + #if HAS_LEVELING void onLevelingStart() {} void onLevelingDone() {} + #endif + #if HAS_MESH void onMeshUpdate(const int8_t xpos, const int8_t ypos, const float zval) { // Called when any mesh points are updated } diff --git a/Marlin/src/lcd/extui/ui_api.cpp b/Marlin/src/lcd/extui/ui_api.cpp index fb77be94afb0..1d917df7cd62 100644 --- a/Marlin/src/lcd/extui/ui_api.cpp +++ b/Marlin/src/lcd/extui/ui_api.cpp @@ -919,7 +919,7 @@ namespace ExtUI { bool getLevelingActive() { return planner.leveling_active; } void setLevelingActive(const bool state) { set_bed_leveling_enabled(state); } - bool getMeshValid() { return leveling_is_valid(); } + bool getLevelingIsValid() { return leveling_is_valid(); } #if HAS_MESH diff --git a/Marlin/src/lcd/extui/ui_api.h b/Marlin/src/lcd/extui/ui_api.h index 209635ea0944..125c85ffa275 100644 --- a/Marlin/src/lcd/extui/ui_api.h +++ b/Marlin/src/lcd/extui/ui_api.h @@ -172,14 +172,14 @@ namespace ExtUI { #if HAS_LEVELING bool getLevelingActive(); void setLevelingActive(const bool); - bool getMeshValid(); + bool getLevelingIsValid(); + void onLevelingStart(); + void onLevelingDone(); #if HAS_MESH bed_mesh_t& getMeshArray(); float getMeshPoint(const xy_uint8_t &pos); void setMeshPoint(const xy_uint8_t &pos, const_float_t zval); void moveToMeshPoint(const xy_uint8_t &pos, const_float_t z); - void onLevelingStart(); - void onLevelingDone(); void onMeshUpdate(const int8_t xpos, const int8_t ypos, const_float_t zval); inline void onMeshUpdate(const xy_int8_t &pos, const_float_t zval) { onMeshUpdate(pos.x, pos.y, zval); } From ded810cebfbde80ebbb64afe1f4fd277c94e12f1 Mon Sep 17 00:00:00 2001 From: EvilGremlin <22657714+EvilGremlin@users.noreply.github.com> Date: Fri, 2 Jun 2023 01:35:42 +0300 Subject: [PATCH 230/427] =?UTF-8?q?=F0=9F=8C=90=20Update=20Russian=20trans?= =?UTF-8?q?lation=20(#25840)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/language/language_ru.h | 373 +++++++++++++++++++------- 1 file changed, 278 insertions(+), 95 deletions(-) diff --git a/Marlin/src/lcd/language/language_ru.h b/Marlin/src/lcd/language/language_ru.h index 25f62173f350..4594a1046f54 100644 --- a/Marlin/src/lcd/language/language_ru.h +++ b/Marlin/src/lcd/language/language_ru.h @@ -52,6 +52,8 @@ namespace Language_ru { LSTR MSG_ADVANCED_SETTINGS = _UxGT("Расшир. настройки"); LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Переполн. вызова"); #endif + LSTR MSG_TOOLBAR_SETUP = _UxGT("Настр. инструменты"); + LSTR MSG_OPTION_DISABLED = _UxGT("Опция отключена"); LSTR MSG_MEDIA_READ_ERROR = _UxGT("Ошибка чтения"); LSTR MSG_MEDIA_USB_REMOVED = _UxGT("USB диск удалён"); LSTR MSG_MEDIA_USB_FAILED = _UxGT("Ошибка USB диска"); @@ -91,42 +93,49 @@ namespace Language_ru { LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Смещения применены"); LSTR MSG_SELECT_ORIGIN = _UxGT("Выберите ноль"); #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_LAST_VALUE_SP = _UxGT("Последнее знач. "); + LSTR MSG_LAST_VALUE_SP = _UxGT("Последнее значение "); #else LSTR MSG_LAST_VALUE_SP = _UxGT("Послед. знач. "); #endif #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Преднагрев ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Нагреть ~ ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_END = _UxGT("Нагреть сопло ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_END_E = _UxGT("Нагреть сопло ~") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_ALL = _UxGT("Нагреть всё ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Нагреть стол ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Правка предн. ") PREHEAT_1_LABEL; - - LSTR MSG_PREHEAT_M = _UxGT("Преднагрев $"); + LSTR MSG_PREHEAT_1 = _UxGT("Нагрев ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Нагреть ~ ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Нагреть сопло ") PREHEAT_1_LABEL _UxGT(" сопло"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Нагреть сопло ~") PREHEAT_1_LABEL _UxGT(" сопло ~");; + LSTR MSG_PREHEAT_1_ALL = _UxGT("Нагреть всё ") PREHEAT_1_LABEL _UxGT(" всё"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Нагреть стол ") PREHEAT_1_LABEL _UxGT(" стол"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Правка предн. ") PREHEAT_1_LABEL _UxGT(" наст."); + #ifdef PREHEAT_2_LABEL + LSTR MSG_PREHEAT_2 = _UxGT("Нагрев ") PREHEAT_2_LABEL; + LSTR MSG_PREHEAT_2_SETTINGS = _UxGT("Нагрев ") PREHEAT_2_LABEL _UxGT(" настр."); + #endif + #ifdef PREHEAT_3_LABEL + LSTR MSG_PREHEAT_3 = _UxGT("Нагрев ") PREHEAT_3_LABEL; + LSTR MSG_PREHEAT_3_SETTINGS = _UxGT("Нагрев ") PREHEAT_3_LABEL _UxGT(" настр."); + #endif + LSTR MSG_PREHEAT_M = _UxGT("Нагрев $"); LSTR MSG_PREHEAT_M_H = _UxGT("Нагреть ~ $"); LSTR MSG_PREHEAT_M_END = _UxGT("Нагреть сопло $"); LSTR MSG_PREHEAT_M_END_E = _UxGT("Нагреть сопло ~ $"); LSTR MSG_PREHEAT_M_ALL = _UxGT("Нагреть всё $"); LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Нагреть стол $"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Правка преднаг. $"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Настр.нагрева $"); #endif LSTR MSG_PREHEAT_CUSTOM = _UxGT("Нагрев Свой"); LSTR MSG_COOLDOWN = _UxGT("Охлаждение"); LSTR MSG_CUTTER_FREQUENCY = _UxGT("Частота"); LSTR MSG_LASER_MENU = _UxGT("Управление лазером"); #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_SPINDLE_MENU = _UxGT("Управление шпинделем"); + LSTR MSG_SPINDLE_MENU = _UxGT("Управлен.шпинделем"); LSTR MSG_LASER_TOGGLE = _UxGT("Переключить лазер"); - LSTR MSG_SPINDLE_TOGGLE = _UxGT("Переключ.шпиндель"); + LSTR MSG_SPINDLE_TOGGLE = _UxGT("Переключ. шпиндель"); LSTR MSG_SPINDLE_POWER = _UxGT("Мощность шпинделя"); LSTR MSG_LASER_POWER = _UxGT("Мощность лазера"); LSTR MSG_LASER_PULSE_MS = _UxGT("Тестовый импульс мс"); LSTR MSG_LASER_EVAC_TOGGLE = _UxGT("Переключить обдув"); LSTR MSG_SPINDLE_EVAC_TOGGLE = _UxGT("Переключить вакуум"); #else - LSTR MSG_SPINDLE_MENU = _UxGT("Управление шпинд."); + LSTR MSG_SPINDLE_MENU = _UxGT("Управл. шпинд."); LSTR MSG_LASER_TOGGLE = _UxGT("Переключ.лазер"); LSTR MSG_SPINDLE_TOGGLE = _UxGT("Переключ.шпинд"); LSTR MSG_SPINDLE_POWER = _UxGT("Мощн.шпинделя"); @@ -339,6 +348,11 @@ namespace Language_ru { LSTR MSG_MOVE_1MM = _UxGT("Движение 1мм"); LSTR MSG_MOVE_10MM = _UxGT("Движение 10мм"); LSTR MSG_MOVE_100MM = _UxGT("Движение 100mm"); + LSTR MSG_MOVE_0001IN = _UxGT("Движение 0.001in"); + LSTR MSG_MOVE_001IN = _UxGT("Движение 0.01in"); + LSTR MSG_MOVE_01IN = _UxGT("Движение 0.1in"); + LSTR MSG_MOVE_05IN = _UxGT("Движение 0.5in"); + LSTR MSG_MOVE_1IN = _UxGT("Движение 1.0in"); LSTR MSG_SPEED = _UxGT("Скорость"); LSTR MSG_MESH_Z_OFFSET = _UxGT("Z стола"); LSTR MSG_NOZZLE = _UxGT("Сопло, ") LCD_STR_DEGREE _UxGT("C"); @@ -454,10 +468,11 @@ namespace Language_ru { LSTR MSG_ERR_EEPROM_CRC = _UxGT("Сбой EEPROM: CRC"); LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Сбой EEPROM: размер"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Сбой EEPROM: версия"); + LSTR MSG_ERR_EEPROM_CORRUPT = _UxGT("Сбой EEPROM: данные"); LSTR MSG_SETTINGS_STORED = _UxGT("Параметры сохранены"); LSTR MSG_MEDIA_UPDATE = _UxGT("Обновление прошивки"); LSTR MSG_RESET_PRINTER = _UxGT("Сброс принтера"); - LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT(" Обновить"); + LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT(" Обновить"); LSTR MSG_INFO_SCREEN = _UxGT("Главный экран"); LSTR MSG_PREPARE = _UxGT("Подготовить"); LSTR MSG_TUNE = _UxGT("Настроить"); @@ -777,93 +792,261 @@ namespace Language_ru { LSTR MSG_BAD_PAGE_SPEED = _UxGT("Плохая скор.стран."); #endif - LSTR MSG_EDIT_PASSWORD = _UxGT("Редактировать пароль"); - LSTR MSG_LOGIN_REQUIRED = _UxGT("Нужен логин"); - LSTR MSG_PASSWORD_SETTINGS = _UxGT("Настройки пароля"); - LSTR MSG_ENTER_DIGIT = _UxGT("Введите цифру"); - LSTR MSG_CHANGE_PASSWORD = _UxGT("Смените пароль"); - LSTR MSG_REMOVE_PASSWORD = _UxGT("Удалить пароль"); - LSTR MSG_PASSWORD_SET = _UxGT("Пароль это "); - LSTR MSG_START_OVER = _UxGT("Старт через"); + LSTR MSG_EDIT_PASSWORD = _UxGT("Редактировать пароль"); + LSTR MSG_LOGIN_REQUIRED = _UxGT("Нужен логин"); + LSTR MSG_PASSWORD_SETTINGS = _UxGT("Настройки пароля"); + LSTR MSG_ENTER_DIGIT = _UxGT("Введите цифру"); + LSTR MSG_CHANGE_PASSWORD = _UxGT("Смените пароль"); + LSTR MSG_REMOVE_PASSWORD = _UxGT("Удалить пароль"); + LSTR MSG_PASSWORD_SET = _UxGT("Пароль это "); + LSTR MSG_START_OVER = _UxGT("Старт через"); #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_REMINDER_SAVE_SETTINGS = _UxGT("Не забудь сохранить!"); + LSTR MSG_REMINDER_SAVE_SETTINGS = _UxGT("Не забудь сохранить!"); #else - LSTR MSG_REMINDER_SAVE_SETTINGS = _UxGT("Не забудь сохранить"); + LSTR MSG_REMINDER_SAVE_SETTINGS = _UxGT("Не забудь сохранить"); #endif - LSTR MSG_PASSWORD_REMOVED = _UxGT("Пароль удалён"); + LSTR MSG_PASSWORD_REMOVED = _UxGT("Пароль удалён"); // // Filament Change screens show up to 3 lines on a 4-line display // ...or up to 2 lines on a 3-line display // - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Парковка...")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Парковка...")); #if LCD_HEIGHT >= 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_3_LINE("Нажмите кнопку", "для продолжения", "печати")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("Ожидайте начала", "смены филамента")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Вставьте филамент", "и нажмите кнопку", "для продолжения")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_3_LINE("Нажмите кнопку", "для нагрева", "сопла...")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Нагрев сопла", "Ждите...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Ожидайте", "выгрузки", "филамента")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Ожидайте", "загрузки", "филамента")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_3_LINE("Ожидайте", "экструзии", "филамента")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_3_LINE("Нажмите кнопку", "для завершения", "прочистки филамента")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_3_LINE("Ожидайте", "возобновления", "печати")); - #else - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Продолжить печать")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Ожидайте...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Вставь и нажми")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Нагреть сопло")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Нагрев...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Выгрузка...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Загрузка...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Прочистка...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Завершить прочистку")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Возобновление...")); - #endif - - LSTR MSG_TMC_DRIVERS = _UxGT("Драйвера TMC"); - LSTR MSG_TMC_CURRENT = _UxGT("Ток двигателей"); - LSTR MSG_TMC_HYBRID_THRS = _UxGT("Гибридный режим"); - LSTR MSG_TMC_HOMING_THRS = _UxGT("Чувствительность"); - LSTR MSG_TMC_STEPPING_MODE = _UxGT("Режим драйвера"); - LSTR MSG_TMC_STEALTH_ENABLED = _UxGT("Тихий режим вкл"); - - LSTR MSG_SERVICE_RESET = _UxGT("Сброс"); - LSTR MSG_SERVICE_IN = _UxGT(" в:"); - LSTR MSG_BACKLASH = _UxGT("Люфт"); - LSTR MSG_BACKLASH_CORRECTION = _UxGT("Исправление"); - LSTR MSG_BACKLASH_SMOOTHING = _UxGT("Сглаживание"); - - LSTR MSG_LEVEL_X_AXIS = _UxGT("Выровнять ось X"); - LSTR MSG_AUTO_CALIBRATE = _UxGT("Автокалибровка"); - LSTR MSG_HEATER_TIMEOUT = _UxGT("Таймаут нагрева"); - LSTR MSG_REHEAT = _UxGT("Возобновить нагрев"); - LSTR MSG_REHEATING = _UxGT("Нагрев..."); - - LSTR MSG_PROBE_WIZARD = _UxGT("Мастер Z-зонда"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_PROBE_WIZARD_PROBING = _UxGT("Зондиров. контр. точки Z"); - LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Движение к точке зондиров."); - #else - LSTR MSG_PROBE_WIZARD_PROBING = _UxGT("Зондир.контр.точки Z"); - LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Движ. к точке зондир."); - #endif - - LSTR MSG_SOUND = _UxGT("Звук"); - - LSTR MSG_TOP_LEFT = _UxGT("Верхний левый"); - LSTR MSG_BOTTOM_LEFT = _UxGT("Нижний левый"); - LSTR MSG_TOP_RIGHT = _UxGT("Верхний правый"); - LSTR MSG_BOTTOM_RIGHT = _UxGT("Нижний правый"); - LSTR MSG_CALIBRATION_COMPLETED = _UxGT("Калибровка успешна"); - LSTR MSG_CALIBRATION_FAILED = _UxGT("Ошибка калибровки"); - - LSTR MSG_DRIVER_BACKWARD = _UxGT(" драйвер наоборот"); - - LSTR MSG_SD_CARD = _UxGT("SD Карта"); - LSTR MSG_USB_DISK = _UxGT("USB Диск"); - - LSTR MSG_SHORT_DAY = _UxGT("д"); // One character only - LSTR MSG_SHORT_HOUR = _UxGT("ч"); // One character only - LSTR MSG_SHORT_MINUTE = _UxGT("м"); // One character only + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_3_LINE("Нажмите кнопку", "для продолжения", "печати")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("Ожидайте начала", "смены филамента")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Вставьте филамент", "и нажмите кнопку", "для продолжения")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_3_LINE("Нажмите кнопку", "для нагрева", "сопла...")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Нагрев сопла", "Ждите...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Ожидайте", "выгрузки", "филамента")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Ожидайте", "загрузки", "филамента")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_3_LINE("Ожидайте", "экструзии", "филамента")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_3_LINE("Нажмите кнопку", "для завершения", "прочистки филамента")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_3_LINE("Ожидайте", "возобновления", "печати")); + #else + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Продолжить печать")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Ожидайте...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Вставь и нажми")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Нагреть сопло")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Нагрев...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Выгрузка...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Загрузка...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Прочистка...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Завершить прочистку")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Возобновление...")); + #endif + + LSTR MSG_TMC_DRIVERS = _UxGT("Драйвера TMC"); + LSTR MSG_TMC_CURRENT = _UxGT("Ток двигателей"); + LSTR MSG_TMC_HYBRID_THRS = _UxGT("Гибридный режим"); + LSTR MSG_TMC_HOMING_THRS = _UxGT("Чувствительность"); + LSTR MSG_TMC_STEPPING_MODE = _UxGT("Режим драйвера"); + LSTR MSG_TMC_STEALTH_ENABLED = _UxGT("Тихий режим вкл"); + + LSTR MSG_SERVICE_RESET = _UxGT("Сброс"); + LSTR MSG_SERVICE_IN = _UxGT(" в:"); + LSTR MSG_BACKLASH = _UxGT("Люфт"); + LSTR MSG_BACKLASH_CORRECTION = _UxGT("Исправление"); + LSTR MSG_BACKLASH_SMOOTHING = _UxGT("Сглаживание"); + + LSTR MSG_LEVEL_X_AXIS = _UxGT("Выровнять ось X"); + LSTR MSG_AUTO_CALIBRATE = _UxGT("Автокалибровка"); + LSTR MSG_HEATER_TIMEOUT = _UxGT("Таймаут нагрева"); + LSTR MSG_REHEAT = _UxGT("Возобновить нагрев"); + LSTR MSG_REHEATING = _UxGT("Нагрев..."); + + LSTR MSG_PROBE_WIZARD = _UxGT("Мастер Z-зонда"); + #if LCD_WIDTH > 20 || HAS_DWIN_E3V2 + LSTR MSG_PROBE_WIZARD_PROBING = _UxGT("Зондиров. контр. точки Z"); + LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Движение к точке зондиров."); + #else + LSTR MSG_PROBE_WIZARD_PROBING = _UxGT("Зондир.контр.точки Z"); + LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Движ.к точке зондир."); + #endif + + LSTR MSG_SOUND = _UxGT("Звук"); + + LSTR MSG_TOP_LEFT = _UxGT("Верхний левый"); + LSTR MSG_BOTTOM_LEFT = _UxGT("Нижний левый"); + LSTR MSG_TOP_RIGHT = _UxGT("Верхний правый"); + LSTR MSG_BOTTOM_RIGHT = _UxGT("Нижний правый"); + LSTR MSG_CALIBRATION_COMPLETED = _UxGT("Калибровка успешна"); + LSTR MSG_CALIBRATION_FAILED = _UxGT("Ошибка калибровки"); + + LSTR MSG_DRIVER_BACKWARD = _UxGT(" драйвер наоборот"); + + LSTR MSG_SD_CARD = _UxGT("SD Карта"); + LSTR MSG_USB_DISK = _UxGT("USB Диск"); + + LSTR MSG_SHORT_DAY = _UxGT("д"); // One character only + LSTR MSG_SHORT_HOUR = _UxGT("ч"); // One character only + LSTR MSG_SHORT_MINUTE = _UxGT("м"); // One character only + + LSTR MSG_HIGH = _UxGT("ВЫСОКИЙ"); + LSTR MSG_LOW = _UxGT("НИЗКИЙ"); + LSTR MSG_ERROR = _UxGT("Ошибка"); + LSTR MSG_ENDSTOP_TEST = _UxGT("Тест концевиков"); + LSTR MSG_Z_PROBE = _UxGT("Z-зонд"); + LSTR MSG_HOMING = _UxGT("Парковка"); + LSTR MSG_Z_AFTER_HOME = _UxGT("Z после парковки"); + LSTR MSG_FILAMENT_SET = _UxGT("Настройки филамента"); + #if LCD_WIDTH > 20 || HAS_DWIN_E3V2 + LSTR MSG_FILAMENT_MAN = _UxGT("Управление филаментом"); + #else + LSTR MSG_FILAMENT_MAN = _UxGT("Управл.филаментом"); + #endif + LSTR MSG_MANUAL_LEVELING = _UxGT("Ручное выравнивание"); + LSTR MSG_LEVBED_FL = _UxGT("Передний левый"); + LSTR MSG_LEVBED_FR = _UxGT("Передний правый"); + LSTR MSG_LEVBED_C = _UxGT("Центр"); + LSTR MSG_LEVBED_BL = _UxGT("Задний левый"); + LSTR MSG_LEVBED_BR = _UxGT("Задний правый"); + LSTR MSG_MANUAL_MESH = _UxGT("Сетка вручную"); + LSTR MSG_AUTO_MESH = _UxGT("Сетка автоматически"); + LSTR MSG_ERR_M428_TOO_FAR = _UxGT("Ошибка: слишком далеко!"); + LSTR MSG_TRAMMING_WIZARD = _UxGT("Помощник выравнив."); + LSTR MSG_PREHEAT_HOTEND = _UxGT("Нагреть сопло"); + LSTR MSG_BED_TRAMMING_MANUAL = _UxGT("Ручное выравнив."); + LSTR MSG_MESH_VIEWER = _UxGT("Просмотр сетки"); + LSTR MSG_MESH_VIEW = _UxGT("Смотреть сетку"); + LSTR MSG_NO_VALID_MESH = _UxGT("Нет годной сетки"); + LSTR MSG_ACTIVATE_MESH = _UxGT("Включить сетку"); + LSTR MSG_MESH_INSET = _UxGT("Отступы сетки"); + LSTR MSG_MESH_MIN_X = _UxGT("Сетка X минимум"); + LSTR MSG_MESH_MAX_X = _UxGT("Сетка X максимум"); + LSTR MSG_MESH_MIN_Y = _UxGT("Сетка Y минимум"); + LSTR MSG_MESH_MAX_Y = _UxGT("Сетка Y максимум"); + LSTR MSG_MESH_AMAX = _UxGT("Максимальная зона"); + LSTR MSG_MESH_CENTER = _UxGT("Центрировать зону"); + LSTR MSG_MESH_CANCEL = _UxGT("Сетка отменена"); + LSTR MSG_UBL_TILT_MESH = _UxGT("Наколнить сетку"); + LSTR MSG_UBL_TILTING_GRID = _UxGT("Величина наклона"); + LSTR MSG_UBL_MESH_TILTED = _UxGT("Сетка наклонена"); + LSTR MSG_UBL_MESH_FILLED = _UxGT("Попущенные точки заполнены"); + LSTR MSG_UBL_MESH_INVALID = _UxGT("Негодная сетка"); + LSTR MSG_UBL_INVALID_SLOT = _UxGT("Сперва выберите слот сетки"); + LSTR MSG_MESH_ACTIVE = _UxGT("Сетка %i активна"); + LSTR MSG_MOVE_50MM = _UxGT("Двигать 50mm"); + LSTR MSG_LIVE_MOVE = _UxGT("Живое перемещение"); + LSTR MSG_CUTTER = _UxGT("Резак"); + LSTR MSG_PID_CYCLE = _UxGT("Циклы PID"); + LSTR MSG_PID_AUTOTUNE_FAILED = _UxGT("Автонастройка PID не удалась!"); + LSTR MSG_BAD_HEATER_ID = _UxGT("Неверный экструдер."); + LSTR MSG_TEMP_TOO_HIGH = _UxGT("Слишком высокая температура."); + LSTR MSG_TIMEOUT = _UxGT("Таймаут."); + LSTR MSG_MPC_MEASURING_AMBIENT = _UxGT("Тест потери тепла"); + LSTR MSG_MPC_HEATING_PAST_200 = _UxGT("Нагрев выше >200C"); + LSTR MSG_MPC_COOLING_TO_AMBIENT = _UxGT("Охлаждение до окружающей"); + LSTR MSG_MPC_AUTOTUNE = _UxGT("Автонастройка MPC"); + LSTR MSG_MPC_EDIT = _UxGT("Изменить * MPC"); + LSTR MSG_MPC_POWER = _UxGT("Мощность нагревателя"); + LSTR MSG_MPC_POWER_E = _UxGT("Мощность *"); + LSTR MSG_MPC_BLOCK_HEAT_CAPACITY = _UxGT("Теплоёмкость"); + LSTR MSG_MPC_BLOCK_HEAT_CAPACITY_E = _UxGT("Теплоёмк. *"); + LSTR MSG_SENSOR_RESPONSIVENESS = _UxGT("Отклик датчика"); + LSTR MSG_SENSOR_RESPONSIVENESS_E = _UxGT("Отклик датч. *"); + LSTR MSG_MPC_AMBIENT_XFER_COEFF = _UxGT("Коэфф.окружения"); + LSTR MSG_MPC_AMBIENT_XFER_COEFF_E = _UxGT("Коэфф.окруж *"); + LSTR MSG_MPC_AMBIENT_XFER_COEFF_FAN = _UxGT("Коэфф.кулера"); + LSTR MSG_MPC_AMBIENT_XFER_COEFF_FAN_E = _UxGT("Коэфф.кулер *"); + LSTR MSG_INPUT_SHAPING = _UxGT("Input Shaping"); + LSTR MSG_SHAPING_ENABLE = _UxGT("Включить шейпинг @"); + LSTR MSG_SHAPING_DISABLE = _UxGT("Выключить шейпинг @"); + LSTR MSG_SHAPING_FREQ = _UxGT("@ частота"); + LSTR MSG_SHAPING_ZETA = _UxGT("@ подавление"); + LSTR MSG_FILAMENT_EN = _UxGT("Филамент *"); + LSTR MSG_SEGMENTS_PER_SECOND = _UxGT("Сегментов/сек"); + LSTR MSG_DRAW_MIN_X = _UxGT("Рисовать мин X"); + LSTR MSG_DRAW_MAX_X = _UxGT("Рисовать макс X"); + LSTR MSG_DRAW_MIN_Y = _UxGT("Рисовать мин Y"); + LSTR MSG_DRAW_MAX_Y = _UxGT("Рисовать макс Y"); + LSTR MSG_MAX_BELT_LEN = _UxGT("Макс.длина ремня"); + LSTR MSG_LINEAR_ADVANCE = _UxGT("Linear Advance"); + LSTR MSG_BRIGHTNESS = _UxGT("Яркость LCD"); + LSTR MSG_SCREEN_TIMEOUT = _UxGT("Таймаут LCD (м)"); + LSTR MSG_BRIGHTNESS_OFF = _UxGT("Выкл.подсветку"); + LSTR MSG_INFO_MACHINENAME = _UxGT("Название машины"); + LSTR MSG_INFO_SIZE = _UxGT("Размер"); + LSTR MSG_INFO_FWVERSION = _UxGT("Версия прошивки"); + LSTR MSG_INFO_BUILD = _UxGT("Дата сборки"); + LSTR MSG_BUTTON_CONFIRM = _UxGT("Подтвердить"); + LSTR MSG_BUTTON_CONTINUE = _UxGT("Продолжить"); + LSTR MSG_BUTTON_INFO = _UxGT("Инфо"); + LSTR MSG_BUTTON_LEVEL = _UxGT("Выровнять"); + LSTR MSG_BUTTON_PAUSE = _UxGT("Пауза"); + LSTR MSG_BUTTON_RESUME = _UxGT("Продолжить"); + LSTR MSG_BUTTON_ADVANCED = _UxGT("Расширанные"); + LSTR MSG_BUTTON_SAVE = _UxGT("Сохранить"); + LSTR MSG_BUTTON_PURGE = _UxGT("Прочистить"); + LSTR MSG_PAUSING = _UxGT("Пауза..."); + LSTR MSG_ADVANCED_PAUSE = _UxGT("Расширенная пауза"); + LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Продолжить печать"); + LSTR MSG_TURN_OFF = _UxGT("Выключить принтер"); + LSTR MSG_END_LOOPS = _UxGT("Завершить петлю"); + LSTR MSG_STOPPING = _UxGT("Остановка..."); + LSTR MSG_REMAINING_TIME = _UxGT("Осталось"); + LSTR MSG_PRINTER_KILLED = _UxGT("Принтер убит!"); + LSTR MSG_FWRETRACT = _UxGT("Откат принтера"); + LSTR MSG_SINGLENOZZLE_WIPE_RETRACT = _UxGT("Вытирание при откате"); + LSTR MSG_PARK_FAILED = _UxGT("Не удалось запарковать"); + LSTR MSG_FILAMENTUNLOAD = _UxGT("Выгрузить филамент"); + LSTR MSG_ATTACH_USB_MEDIA = _UxGT("Монтировать USB"); + LSTR MSG_BLTOUCH_SPEED_MODE = _UxGT("Высокая скорость"); + LSTR MSG_MANUAL_PENUP = _UxGT("Поднять перо"); + LSTR MSG_MANUAL_PENDOWN = _UxGT("Опустить перо"); + LSTR MSG_ZPROBE_SETTINGS = _UxGT("Наторойки зонда"); + LSTR MSG_ZPROBE_MARGIN = _UxGT("Отступы зонда"); + LSTR MSG_Z_FEED_RATE = _UxGT("Скорость Z"); + LSTR MSG_ENABLE_HS_MODE = _UxGT("Включить режим ВС"); + LSTR MSG_TEMP_MALFUNCTION = _UxGT("СБОЙ ТЕМПЕРАТУРЫ"); + LSTR MSG_PLEASE_WAIT = _UxGT("Ожидайте..."); + LSTR MSG_PREHEATING = _UxGT("Нагреваю..."); + LSTR MSG_DELTA_CALIBRATION_IN_PROGRESS = _UxGT("Делаю дельта-калибровку"); + LSTR MSG_RESET_STATS = _UxGT("Сбросить статистику печати?"); + LSTR MSG_FAN_SPEED_FAULT = _UxGT("Сбой скорости кулера"); + LSTR MSG_COLORS_GET = _UxGT("Получить цвет"); + LSTR MSG_COLORS_SELECT = _UxGT("Выбрать цвета"); + LSTR MSG_COLORS_APPLIED = _UxGT("Цвета применены"); + LSTR MSG_COLORS_RED = _UxGT("Красный"); + LSTR MSG_COLORS_GREEN = _UxGT("Зелёный"); + LSTR MSG_COLORS_BLUE = _UxGT("Синий"); + LSTR MSG_COLORS_WHITE = _UxGT("Белый"); + LSTR MSG_UI_LANGUAGE = _UxGT("UI Language"); + LSTR MSG_SOUND_ENABLE = _UxGT("Включить звук"); + LSTR MSG_LOCKSCREEN = _UxGT("Блокировать экран"); + LSTR MSG_LOCKSCREEN_LOCKED = _UxGT("Принтер заблокирован,"); + LSTR MSG_LOCKSCREEN_UNLOCK = _UxGT("Крутить для разблокировки."); + LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Ждите перезагрузки."); + LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Нет носителя."); + LSTR MSG_PLEASE_PREHEAT = _UxGT("Нагрейте сопло."); + LSTR MSG_INFO_PRINT_COUNT_RESET = _UxGT("Сбросить счетчик"); + LSTR MSG_FILAMENT_CHANGE_PURGE_CONTINUE = _UxGT("Прочистить или продолжить?"); + LSTR MSG_RUNOUT_ENABLE = _UxGT("Включить датч.филамента"); + LSTR MSG_RUNOUT_ACTIVE = _UxGT("Датч.филам. активен"); + LSTR MSG_INVERT_EXTRUDER = _UxGT("Инвертировать экструдер"); + LSTR MSG_EXTRUDER_MIN_TEMP = _UxGT("Миню темп. экструдера."); + LSTR MSG_FANCHECK = _UxGT("Пров.тахометра кулера"); + LSTR MSG_MMU2_REMOVE_AND_CLICK = _UxGT("Уберите и кликните..."); + LSTR MSG_REHEATDONE = _UxGT("Нагрето"); + LSTR MSG_XATC = _UxGT("Помощник перекоса X"); + LSTR MSG_XATC_DONE = _UxGT("Перекос Х настроен!"); + LSTR MSG_XATC_UPDATE_Z_OFFSET = _UxGT("Новое смещение Z-зонда "); + LSTR MSG_HOST_SHUTDOWN = _UxGT("Выключить хост"); + + // did not translate as there is no local terms/slang yet + LSTR MSG_FIXED_TIME_MOTION = _UxGT("Fixed-Time Motion"); + LSTR MSG_FTM_MODE = _UxGT("Motion Mode:"); + LSTR MSG_FTM_ZV = _UxGT("ZV"); + LSTR MSG_FTM_ZVD = _UxGT("ZVD"); + LSTR MSG_FTM_EI = _UxGT("EI"); + LSTR MSG_FTM_2HEI = _UxGT("2HEI"); + LSTR MSG_FTM_3HEI = _UxGT("3HEI"); + LSTR MSG_FTM_MZV = _UxGT("MZV"); + //LSTR MSG_FTM_ULENDO_FBS = _UxGT("Ulendo ФBС"); + //LSTR MSG_FTM_DISCTF = _UxGT("DISCTF"); + LSTR MSG_FTM_DYN_MODE = _UxGT("DF Mode:"); + LSTR MSG_FTM_Z_BASED = _UxGT("Z-based"); + LSTR MSG_FTM_MASS_BASED = _UxGT("Mass-based"); + LSTR MSG_FTM_BASE_FREQ_N = _UxGT("@ Base Freq."); + LSTR MSG_FTM_DFREQ_K_N = _UxGT("@ Dyn. Freq."); } From 6044cb99559e0bb29a697f346fd1507c59ffbba5 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 1 Jun 2023 17:39:08 -0500 Subject: [PATCH 231/427] =?UTF-8?q?=F0=9F=8C=90=20Remove=20unused=20string?= =?UTF-8?q?s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/language/language_de.h | 2 -- Marlin/src/lcd/language/language_en.h | 2 -- Marlin/src/lcd/language/language_it.h | 2 -- Marlin/src/lcd/language/language_ru.h | 2 -- Marlin/src/lcd/language/language_sk.h | 2 -- Marlin/src/lcd/language/language_tr.h | 2 -- 6 files changed, 12 deletions(-) diff --git a/Marlin/src/lcd/language/language_de.h b/Marlin/src/lcd/language/language_de.h index 2e75c2668b90..3f17ca1453bb 100644 --- a/Marlin/src/lcd/language/language_de.h +++ b/Marlin/src/lcd/language/language_de.h @@ -54,8 +54,6 @@ namespace Language_de { LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Software-Endstopp"); LSTR MSG_MAIN_MENU = _UxGT("Hauptmenü"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Erw. Einstellungen"); - LSTR MSG_TOOLBAR_SETUP = _UxGT("Toolbar Einstellung"); - LSTR MSG_OPTION_DISABLED = _UxGT("Option Deaktiviert"); LSTR MSG_CONFIGURATION = _UxGT("Konfiguration"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Autostart"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Motoren deaktivieren"); // M84 :: Max length 19 characters diff --git a/Marlin/src/lcd/language/language_en.h b/Marlin/src/lcd/language/language_en.h index f74e24e93a1c..1876b26038d8 100644 --- a/Marlin/src/lcd/language/language_en.h +++ b/Marlin/src/lcd/language/language_en.h @@ -69,8 +69,6 @@ namespace Language_en { LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Soft Endstops"); LSTR MSG_MAIN_MENU = _UxGT("Main Menu"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Advanced Settings"); - LSTR MSG_TOOLBAR_SETUP = _UxGT("Toolbar Setup"); - LSTR MSG_OPTION_DISABLED = _UxGT("Option Disabled"); LSTR MSG_CONFIGURATION = _UxGT("Configuration"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Run Auto Files"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Disable Steppers"); diff --git a/Marlin/src/lcd/language/language_it.h b/Marlin/src/lcd/language/language_it.h index a6b48b0d0a1b..e4f95bf72ce1 100644 --- a/Marlin/src/lcd/language/language_it.h +++ b/Marlin/src/lcd/language/language_it.h @@ -64,8 +64,6 @@ namespace Language_it { LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Finecorsa Soft"); LSTR MSG_MAIN_MENU = _UxGT("Menu principale"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Impostaz. avanzate"); - LSTR MSG_TOOLBAR_SETUP = _UxGT("Cnf barra strumenti"); - LSTR MSG_OPTION_DISABLED = _UxGT("Opzione disab."); LSTR MSG_CONFIGURATION = _UxGT("Configurazione"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Esegui files auto"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Disabilita Motori"); diff --git a/Marlin/src/lcd/language/language_ru.h b/Marlin/src/lcd/language/language_ru.h index 4594a1046f54..a8db7852ccf3 100644 --- a/Marlin/src/lcd/language/language_ru.h +++ b/Marlin/src/lcd/language/language_ru.h @@ -52,8 +52,6 @@ namespace Language_ru { LSTR MSG_ADVANCED_SETTINGS = _UxGT("Расшир. настройки"); LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Переполн. вызова"); #endif - LSTR MSG_TOOLBAR_SETUP = _UxGT("Настр. инструменты"); - LSTR MSG_OPTION_DISABLED = _UxGT("Опция отключена"); LSTR MSG_MEDIA_READ_ERROR = _UxGT("Ошибка чтения"); LSTR MSG_MEDIA_USB_REMOVED = _UxGT("USB диск удалён"); LSTR MSG_MEDIA_USB_FAILED = _UxGT("Ошибка USB диска"); diff --git a/Marlin/src/lcd/language/language_sk.h b/Marlin/src/lcd/language/language_sk.h index c7b2cef0d10c..cea40d2406aa 100644 --- a/Marlin/src/lcd/language/language_sk.h +++ b/Marlin/src/lcd/language/language_sk.h @@ -67,8 +67,6 @@ namespace Language_sk { LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Soft. endstopy"); LSTR MSG_MAIN_MENU = _UxGT("Hlavná ponuka"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Pokročilé nastav."); - LSTR MSG_TOOLBAR_SETUP = _UxGT("Panel nástrojov"); - LSTR MSG_OPTION_DISABLED = _UxGT("Možnosť vypnutá"); LSTR MSG_CONFIGURATION = _UxGT("Konfigurácia"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Auto-štart"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Uvolniť motory"); diff --git a/Marlin/src/lcd/language/language_tr.h b/Marlin/src/lcd/language/language_tr.h index 5be21c9c565f..63c41854477b 100644 --- a/Marlin/src/lcd/language/language_tr.h +++ b/Marlin/src/lcd/language/language_tr.h @@ -57,8 +57,6 @@ namespace Language_tr { LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Yazılımsal Endstops"); LSTR MSG_MAIN_MENU = _UxGT("Ana"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Gelişmiş Ayarlar"); - LSTR MSG_TOOLBAR_SETUP = _UxGT("Araç Çubuğu Kurulumu"); - LSTR MSG_OPTION_DISABLED = _UxGT("Seçenek Devre Dışı"); LSTR MSG_CONFIGURATION = _UxGT("Yapılandırma"); LSTR MSG_RUN_AUTO_FILES = _UxGT("Oto. Başlat"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Motorları Durdur"); From 49134a9467f79037cc6ea643b8ac9634e5f7eb36 Mon Sep 17 00:00:00 2001 From: I3DBeeTech <129617321+I3DBeeTech@users.noreply.github.com> Date: Fri, 2 Jun 2023 04:58:34 +0530 Subject: [PATCH 232/427] =?UTF-8?q?=F0=9F=94=A7=20Update=20LCD=20with=20Ne?= =?UTF-8?q?oPixel=20Contrast=20(#25893)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/Conditionals_post.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 5794a96b8b81..92b4463556b3 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -472,8 +472,8 @@ #elif EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY) #define _LCD_CONTRAST_MIN 120 #define _LCD_CONTRAST_INIT 195 -#elif EITHER(MKS_MINI_12864_V3, BTT_MINI_12864_V1) - #define _LCD_CONTRAST_MIN 255 +#elif ENABLED(FYSETC_MINI_12864_2_1) + #define _LCD_CONTRAST_MIN 230 #define _LCD_CONTRAST_INIT 255 #elif ENABLED(FYSETC_MINI_12864) #define _LCD_CONTRAST_MIN 180 From 2de2185d970ce63dab078bfdd7eb9e49a64a39c2 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 2 Jun 2023 01:38:48 +0000 Subject: [PATCH 233/427] [cron] Bump distribution date (2023-06-02) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 745b738b3b51..dbb481833cad 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-05-30" +//#define STRING_DISTRIBUTION_DATE "2023-06-02" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 47b8fecd57c2..e1e4a9a8af38 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-05-30" + #define STRING_DISTRIBUTION_DATE "2023-06-02" #endif /** From d9659d3177ff3ffd3530fac2db850a5384b67af9 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 1 Jun 2023 22:58:17 -0500 Subject: [PATCH 234/427] =?UTF-8?q?=F0=9F=93=9D=20M122=20comment?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/feature/trinamic/M122.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Marlin/src/gcode/feature/trinamic/M122.cpp b/Marlin/src/gcode/feature/trinamic/M122.cpp index 61786d51ada1..a1765bfb43b4 100644 --- a/Marlin/src/gcode/feature/trinamic/M122.cpp +++ b/Marlin/src/gcode/feature/trinamic/M122.cpp @@ -30,6 +30,14 @@ /** * M122: Debug TMC drivers + * + * I - Flag to re-initialize stepper drivers with current settings. + * X, Y, Z, E - Flags to only report the specified axes. + * + * With TMC_DEBUG: + * V - Report raw register data. Refer to the datasheet to decipher the report. + * S - Flag to enable/disable continuous debug reporting. + * P - Interval between continuous debug reports, in milliseconds. */ void GcodeSuite::M122() { xyze_bool_t print_axis = ARRAY_N_1(LOGICAL_AXES, false); From 500415955051a3295756668b3aae3c383bc1b4bf Mon Sep 17 00:00:00 2001 From: alextrical <35117191+alextrical@users.noreply.github.com> Date: Fri, 2 Jun 2023 17:32:43 +0100 Subject: [PATCH 235/427] =?UTF-8?q?=F0=9F=94=A8=20Clarify=20env=20error=20?= =?UTF-8?q?(#25915)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buildroot/share/PlatformIO/scripts/preflight-checks.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildroot/share/PlatformIO/scripts/preflight-checks.py b/buildroot/share/PlatformIO/scripts/preflight-checks.py index 3f7c97af9d78..54d7f3db55e1 100644 --- a/buildroot/share/PlatformIO/scripts/preflight-checks.py +++ b/buildroot/share/PlatformIO/scripts/preflight-checks.py @@ -72,7 +72,7 @@ def sanity_check_target(): result = check_envs("env:"+build_env, board_envs, config) if not result: - err = "Error: Build environment '%s' is incompatible with %s. Use one of these: %s" % \ + err = "Error: Build environment '%s' is incompatible with %s. Use one of these environments: %s" % \ ( build_env, motherboard, ", ".join([ e[4:] for e in board_envs if e.startswith("env:") ]) ) raise SystemExit(err) From e45eddfd6c4008d82b3aefe4764793b0669dc60a Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 2 Jun 2023 12:46:23 -0500 Subject: [PATCH 236/427] =?UTF-8?q?=F0=9F=94=A8=20Fix=20pins=20debugging?= =?UTF-8?q?=20for=20Simulator?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/NATIVE_SIM/pinsDebug.cpp | 45 +++++++++++++++++++++++++ Marlin/src/HAL/NATIVE_SIM/pinsDebug.h | 26 ++++---------- 2 files changed, 52 insertions(+), 19 deletions(-) create mode 100644 Marlin/src/HAL/NATIVE_SIM/pinsDebug.cpp diff --git a/Marlin/src/HAL/NATIVE_SIM/pinsDebug.cpp b/Marlin/src/HAL/NATIVE_SIM/pinsDebug.cpp new file mode 100644 index 000000000000..e75826c58a8c --- /dev/null +++ b/Marlin/src/HAL/NATIVE_SIM/pinsDebug.cpp @@ -0,0 +1,45 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2021 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#ifdef __PLAT_NATIVE_SIM__ + +#include "../../inc/MarlinConfig.h" +#include "pinsDebug.h" + +int8_t ADC_pin_mode(pin_t pin) { return -1; } + +int8_t get_pin_mode(const pin_t pin) { return VALID_PIN(pin) ? 0 : -1; } + +bool GET_PINMODE(const pin_t pin) { + const int8_t pin_mode = get_pin_mode(pin); + if (pin_mode == -1 || pin_mode == ADC_pin_mode(pin)) // Invalid pin or active analog pin + return false; + + return (Gpio::getMode(pin) != 0); // Input/output state +} + +bool GET_ARRAY_IS_DIGITAL(const pin_t pin) { + return !IS_ANALOG(pin) || get_pin_mode(pin) != ADC_pin_mode(pin); +} + +void print_port(const pin_t) {} +void pwm_details(const pin_t) {} +bool pwm_status(const pin_t) { return false; } + +#endif diff --git a/Marlin/src/HAL/NATIVE_SIM/pinsDebug.h b/Marlin/src/HAL/NATIVE_SIM/pinsDebug.h index 9c53b4b0d9c9..28821acbd07c 100644 --- a/Marlin/src/HAL/NATIVE_SIM/pinsDebug.h +++ b/Marlin/src/HAL/NATIVE_SIM/pinsDebug.h @@ -36,22 +36,10 @@ #define MULTI_NAME_PAD 16 // space needed to be pretty if not first name assigned to a pin // Active ADC function/mode/code values for PINSEL registers -constexpr int8_t ADC_pin_mode(pin_t pin) { return -1; } - -int8_t get_pin_mode(const pin_t pin) { return VALID_PIN(pin) ? 0 : -1; } - -bool GET_PINMODE(const pin_t pin) { - const int8_t pin_mode = get_pin_mode(pin); - if (pin_mode == -1 || pin_mode == ADC_pin_mode(pin)) // Invalid pin or active analog pin - return false; - - return (Gpio::getMode(pin) != 0); // Input/output state -} - -bool GET_ARRAY_IS_DIGITAL(const pin_t pin) { - return !IS_ANALOG(pin) || get_pin_mode(pin) != ADC_pin_mode(pin); -} - -void print_port(const pin_t) {} -void pwm_details(const pin_t) {} -bool pwm_status(const pin_t) { return false; } +int8_t ADC_pin_mode(pin_t pin); +int8_t get_pin_mode(const pin_t pin); +bool GET_PINMODE(const pin_t pin); +bool GET_ARRAY_IS_DIGITAL(const pin_t pin); +void print_port(const pin_t); +void pwm_details(const pin_t); +bool pwm_status(const pin_t); From bc385122e94d7eda79bdf1573a7c2071c4589da2 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 2 Jun 2023 13:34:13 -0500 Subject: [PATCH 237/427] =?UTF-8?q?=F0=9F=8E=A8=20Lowercase=20method=20/?= =?UTF-8?q?=20data=20member=20names=20(#25914)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/MarlinCore.cpp | 2 +- .../src/lcd/extui/anycubic_vyper/dgus_tft.cpp | 24 +- .../src/lcd/extui/anycubic_vyper/dgus_tft.h | 24 +- Marlin/src/lcd/extui/dgus/DGUSDisplay.cpp | 56 +- Marlin/src/lcd/extui/dgus/DGUSDisplay.h | 46 +- .../src/lcd/extui/dgus/DGUSScreenHandler.cpp | 226 +++--- Marlin/src/lcd/extui/dgus/DGUSScreenHandler.h | 2 +- .../lcd/extui/dgus/DGUSScreenHandlerBase.h | 148 ++-- Marlin/src/lcd/extui/dgus/dgus_extui.cpp | 46 +- .../lcd/extui/dgus/fysetc/DGUSDisplayDef.cpp | 212 +++--- .../lcd/extui/dgus/fysetc/DGUSDisplayDef.h | 58 +- .../extui/dgus/fysetc/DGUSScreenHandler.cpp | 88 +-- .../lcd/extui/dgus/fysetc/DGUSScreenHandler.h | 4 +- .../lcd/extui/dgus/hiprecy/DGUSDisplayDef.cpp | 208 +++--- .../lcd/extui/dgus/hiprecy/DGUSDisplayDef.h | 58 +- .../extui/dgus/hiprecy/DGUSScreenHandler.cpp | 88 +-- .../extui/dgus/hiprecy/DGUSScreenHandler.h | 4 +- .../src/lcd/extui/dgus/mks/DGUSDisplayDef.cpp | 314 ++++----- .../src/lcd/extui/dgus/mks/DGUSDisplayDef.h | 60 +- .../lcd/extui/dgus/mks/DGUSScreenHandler.cpp | 664 +++++++++--------- .../lcd/extui/dgus/mks/DGUSScreenHandler.h | 106 +-- .../lcd/extui/dgus/origin/DGUSDisplayDef.cpp | 182 ++--- .../lcd/extui/dgus/origin/DGUSDisplayDef.h | 48 +- .../extui/dgus/origin/DGUSScreenHandler.cpp | 88 +-- .../lcd/extui/dgus/origin/DGUSScreenHandler.h | 4 +- .../lcd/extui/dgus_reloaded/DGUSDisplay.cpp | 78 +- .../src/lcd/extui/dgus_reloaded/DGUSDisplay.h | 62 +- .../lcd/extui/dgus_reloaded/DGUSRxHandler.cpp | 376 +++++----- .../lcd/extui/dgus_reloaded/DGUSRxHandler.h | 90 +-- .../extui/dgus_reloaded/DGUSScreenHandler.cpp | 294 ++++---- .../extui/dgus_reloaded/DGUSScreenHandler.h | 82 +-- .../extui/dgus_reloaded/DGUSSetupHandler.cpp | 64 +- .../lcd/extui/dgus_reloaded/DGUSTxHandler.cpp | 228 +++--- .../lcd/extui/dgus_reloaded/DGUSTxHandler.h | 88 +-- .../config/{DGUS_Screen.h => DGUS_ScreenID.h} | 2 +- .../definition/DGUS_ScreenAddrList.cpp | 52 +- .../definition/DGUS_ScreenAddrList.h | 6 +- .../definition/DGUS_ScreenSetup.cpp | 34 +- .../definition/DGUS_ScreenSetup.h | 4 +- .../dgus_reloaded/definition/DGUS_VPList.cpp | 224 +++--- .../dgus_reloaded/dgus_reloaded_extui.cpp | 44 +- Marlin/src/lcd/extui/mks_ui/wifi_upload.cpp | 92 +-- Marlin/src/lcd/tft/canvas.cpp | 52 +- Marlin/src/lcd/tft/canvas.h | 32 +- Marlin/src/lcd/tft/tft_queue.cpp | 22 +- Marlin/src/lcd/tft/tft_queue.h | 2 +- Marlin/src/libs/duration_t.h | 14 +- 47 files changed, 2352 insertions(+), 2350 deletions(-) rename Marlin/src/lcd/extui/dgus_reloaded/config/{DGUS_Screen.h => DGUS_ScreenID.h} (97%) diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index f1d43e7b6093..779dea4ca274 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -393,7 +393,7 @@ void startOrResumeJob() { if (queue.enqueue_one(F("M1001"))) { // Keep trying until it gets queued marlin_state = MF_RUNNING; // Signal to stop trying TERN_(PASSWORD_AFTER_SD_PRINT_END, password.lock_machine()); - TERN_(DGUS_LCD_UI_MKS, ScreenHandler.SDPrintingFinished()); + TERN_(DGUS_LCD_UI_MKS, screen.sdPrintingFinished()); } } diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp index 49609ada329a..2ccc3a37f8f8 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp @@ -160,7 +160,7 @@ namespace Anycubic { tftSendLn(AC_msg_ready); } - void DgusTFT::ParamInit() { + void DgusTFT::paramInit() { #if ACDEBUG(AC_MARLIN) DEBUG_ECHOLNPGM("DgusTFT::ParamInit()"); @@ -668,7 +668,7 @@ namespace Anycubic { #if ENABLED(POWER_LOSS_RECOVERY) - void DgusTFT::PowerLoss() { + void DgusTFT::powerLoss() { // On: 5A A5 05 82 00 82 00 00 // Off: 5A A5 05 82 00 82 00 64 uint8_t data[] = { 0x5A, 0xA5, 0x05, 0x82, 0x00, 0x82, 0x00, uint8_t(recovery.enabled ? 0x00 : 0x64) }; @@ -681,12 +681,12 @@ namespace Anycubic { #endif // POWER_LOSS_RECOVERY - void DgusTFT::HomingStart() { + void DgusTFT::homingStart() { if (!isPrintingFromMedia()) ChangePageOfTFT(PAGE_CHS_HOMING); } - void DgusTFT::HomingComplete() { + void DgusTFT::homingComplete() { if (lcd_info.language == ENG && page_index_last > 120) page_index_last -= 120; @@ -720,17 +720,17 @@ namespace Anycubic { TFTSer.println(); } - void DgusTFT::SendValueToTFT(const uint16_t value, const uint16_t address) { + void DgusTFT::sendValueToTFT(const uint16_t value, const uint16_t address) { uint8_t data[] = { 0x5A, 0xA5, 0x05, 0x82, uint8_t(address >> 8), uint8_t(address & 0xFF), uint8_t(value >> 8), uint8_t(value & 0xFF) }; LOOP_L_N(i, COUNT(data)) TFTSer.write(data[i]); } - void DgusTFT::RequestValueFromTFT(const uint16_t address) { + void DgusTFT::requestValueFromTFT(const uint16_t address) { uint8_t data[] = { 0x5A, 0xA5, 0x04, 0x83, uint8_t(address >> 8), uint8_t(address & 0xFF), 0x01 }; LOOP_L_N(i, COUNT(data)) TFTSer.write(data[i]); } - void DgusTFT::SendTxtToTFT(const char *pdata, const uint16_t address) { + void DgusTFT::sendTxtToTFT(const char *pdata, const uint16_t address) { uint8_t data_len = strlen(pdata); uint8_t data[] = { 0x5A, 0xA5, uint8_t(data_len + 5), 0x82, uint8_t(address >> 8), uint8_t(address & 0xFF) }; LOOP_L_N(i, COUNT(data)) TFTSer.write(data[i]); @@ -738,17 +738,17 @@ namespace Anycubic { TFTSer.write(0xFF); TFTSer.write(0xFF); } - void DgusTFT::SendColorToTFT(const uint16_t color, const uint16_t address) { + void DgusTFT::sendColorToTFT(const uint16_t color, const uint16_t address) { uint8_t data[] = { 0x5A, 0xA5, 0x05, 0x82, uint8_t(address >> 8), uint8_t(address & 0xFF), uint8_t(color >> 8), uint8_t(color & 0xFF) }; LOOP_L_N(i, COUNT(data)) TFTSer.write(data[i]); } - void DgusTFT::SendReadNumOfTxtToTFT(const uint8_t number, const uint16_t address) { + void DgusTFT::sendReadNumOfTxtToTFT(const uint8_t number, const uint16_t address) { uint8_t data[] = { 0x5A, 0xA5, 0x04, 0x83, uint8_t(address >> 8), uint8_t(address & 0xFF), number }; LOOP_L_N(i, COUNT(data)) TFTSer.write(data[i]); } - void DgusTFT::ChangePageOfTFT(const uint16_t page_index, const bool no_send/*=false*/) { + void DgusTFT::changePageOfTFT(const uint16_t page_index, const bool no_send/*=false*/) { #if ACDEBUG(AC_MARLIN) DEBUG_ECHOLNPGM("ChangePageOfTFT: ", page_index); #endif @@ -789,7 +789,7 @@ namespace Anycubic { #endif } - void DgusTFT::FakeChangePageOfTFT(const uint16_t page_index) { + void DgusTFT::fakeChangePageOfTFT(const uint16_t page_index) { #if ACDEBUG(AC_MARLIN) if (page_index_saved != page_index_now) DEBUG_ECHOLNPGM("FakeChangePageOfTFT: ", page_index); @@ -797,7 +797,7 @@ namespace Anycubic { ChangePageOfTFT(page_index, true); } - void DgusTFT::LcdAudioSet(const bool audio_on) { + void DgusTFT::lcdAudioSet(const bool audio_on) { // On: 5A A5 07 82 00 80 5A 00 00 1A // Off: 5A A5 07 82 00 80 5A 00 00 12 uint8_t data[] = { 0x5A, 0xA5, 0x07, 0x82, 0x00, 0x80, 0x5A, 0x00, 0x00, uint8_t(audio_on ? 0x1A : 0x12) }; diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h index 747193dd77f5..63803d209fba 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h @@ -357,7 +357,7 @@ namespace Anycubic { static uint16_t page_index_now; static void startup(); - static void ParamInit(); + static void paramInit(); static void idleLoop(); static void printerKilled(FSTR_P,FSTR_P); static void mediaEvent(media_event_t); @@ -365,10 +365,10 @@ namespace Anycubic { static void filamentRunout(); static void confirmationRequest(const char * const); static void statusChange(const char * const); - static void PowerLoss(); + static void powerLoss(); static void powerLossRecovery(); - static void HomingStart(); - static void HomingComplete(); + static void homingStart(); + static void homingComplete(); static void set_descript_color(const uint16_t color, const uint8_t index=lcd_txtbox_index); static void set_language(language_t); @@ -462,14 +462,14 @@ namespace Anycubic { static void panelAction(uint8_t); static void panelProcess(uint8_t); - static void SendValueToTFT(const uint16_t value, const uint16_t address); - static void RequestValueFromTFT(const uint16_t address); - static void SendTxtToTFT(const char *pdata, const uint16_t address); - static void SendColorToTFT(const uint16_t color, const uint16_t address); - static void SendReadNumOfTxtToTFT(const uint8_t number, const uint16_t address); - static void ChangePageOfTFT(const uint16_t page_index, const bool no_send=false); - static void FakeChangePageOfTFT(const uint16_t page_index); - static void LcdAudioSet(const bool audio_on); + static void sendValueToTFT(const uint16_t value, const uint16_t address); + static void requestValueFromTFT(const uint16_t address); + static void sendTxtToTFT(const char *pdata, const uint16_t address); + static void sendColorToTFT(const uint16_t color, const uint16_t address); + static void sendReadNumOfTxtToTFT(const uint8_t number, const uint16_t address); + static void changePageOfTFT(const uint16_t page_index, const bool no_send=false); + static void fakeChangePageOfTFT(const uint16_t page_index); + static void lcdAudioSet(const bool audio_on); private: diff --git a/Marlin/src/lcd/extui/dgus/DGUSDisplay.cpp b/Marlin/src/lcd/extui/dgus/DGUSDisplay.cpp index 876a88891875..8e54b20d99a1 100644 --- a/Marlin/src/lcd/extui/dgus/DGUSDisplay.cpp +++ b/Marlin/src/lcd/extui/dgus/DGUSDisplay.cpp @@ -44,9 +44,9 @@ #include "DGUSVPVariable.h" #include "DGUSDisplayDef.h" -DGUSDisplay dgusdisplay; +DGUSDisplay dgus; -#ifdef DEBUG_DGUSLCD_COMM +#ifdef DEBUG_DGUS_COMM #define DEBUGLCDCOMM_ECHOPGM DEBUG_ECHOPGM #else #define DEBUGLCDCOMM_ECHOPGM(...) NOOP @@ -63,7 +63,7 @@ constexpr uint8_t DGUS_CMD_READVAR = 0x83; bool dguslcd_local_debug; // = false; #endif -void DGUSDisplay::InitDisplay() { +void DGUSDisplay::initDisplay() { #ifndef LCD_BAUDRATE #define LCD_BAUDRATE 115200 #endif @@ -73,13 +73,13 @@ void DGUSDisplay::InitDisplay() { TERN_(DGUS_LCD_UI_MKS, delay(LOGO_TIME_DELAY)); // Show the logo for a little while } - RequestScreen(TERN(SHOW_BOOTSCREEN, DGUSLCD_SCREEN_BOOT, DGUSLCD_SCREEN_MAIN)); + requestScreen(TERN(SHOW_BOOTSCREEN, DGUS_SCREEN_BOOT, DGUS_SCREEN_MAIN)); } -void DGUSDisplay::WriteVariable(uint16_t adr, const void *values, uint8_t valueslen, bool isstr) { +void DGUSDisplay::writeVariable(uint16_t adr, const void *values, uint8_t valueslen, bool isstr) { const char* myvalues = static_cast(values); bool strend = !myvalues; - WriteHeader(adr, DGUS_CMD_WRITEVAR, valueslen); + writeHeader(adr, DGUS_CMD_WRITEVAR, valueslen); while (valueslen--) { char x; if (!strend) x = *myvalues++; @@ -91,25 +91,25 @@ void DGUSDisplay::WriteVariable(uint16_t adr, const void *values, uint8_t values } } -void DGUSDisplay::WriteVariable(uint16_t adr, uint16_t value) { +void DGUSDisplay::writeVariable(uint16_t adr, uint16_t value) { value = (value & 0xFFU) << 8U | (value >> 8U); - WriteVariable(adr, static_cast(&value), sizeof(uint16_t)); + writeVariable(adr, static_cast(&value), sizeof(uint16_t)); } -void DGUSDisplay::WriteVariable(uint16_t adr, int16_t value) { +void DGUSDisplay::writeVariable(uint16_t adr, int16_t value) { value = (value & 0xFFU) << 8U | (value >> 8U); - WriteVariable(adr, static_cast(&value), sizeof(uint16_t)); + writeVariable(adr, static_cast(&value), sizeof(uint16_t)); } -void DGUSDisplay::WriteVariable(uint16_t adr, uint8_t value) { - WriteVariable(adr, static_cast(&value), sizeof(uint8_t)); +void DGUSDisplay::writeVariable(uint16_t adr, uint8_t value) { + writeVariable(adr, static_cast(&value), sizeof(uint8_t)); } -void DGUSDisplay::WriteVariable(uint16_t adr, int8_t value) { - WriteVariable(adr, static_cast(&value), sizeof(int8_t)); +void DGUSDisplay::writeVariable(uint16_t adr, int8_t value) { + writeVariable(adr, static_cast(&value), sizeof(int8_t)); } -void DGUSDisplay::WriteVariable(uint16_t adr, long value) { +void DGUSDisplay::writeVariable(uint16_t adr, long value) { union { long l; char lb[4]; } endian; char tmp[4]; endian.l = value; @@ -117,13 +117,13 @@ void DGUSDisplay::WriteVariable(uint16_t adr, long value) { tmp[1] = endian.lb[2]; tmp[2] = endian.lb[1]; tmp[3] = endian.lb[0]; - WriteVariable(adr, static_cast(&tmp), sizeof(long)); + writeVariable(adr, static_cast(&tmp), sizeof(long)); } -void DGUSDisplay::WriteVariablePGM(uint16_t adr, const void *values, uint8_t valueslen, bool isstr) { +void DGUSDisplay::writeVariablePGM(uint16_t adr, const void *values, uint8_t valueslen, bool isstr) { const char* myvalues = static_cast(values); bool strend = !myvalues; - WriteHeader(adr, DGUS_CMD_WRITEVAR, valueslen); + writeHeader(adr, DGUS_CMD_WRITEVAR, valueslen); while (valueslen--) { char x; if (!strend) x = pgm_read_byte(myvalues++); @@ -135,7 +135,7 @@ void DGUSDisplay::WriteVariablePGM(uint16_t adr, const void *values, uint8_t val } } -void DGUSDisplay::ProcessRx() { +void DGUSDisplay::processRx() { #if ENABLED(SERIAL_STATS_RX_BUFFER_OVERRUNS) if (!LCD_SERIAL.available() && LCD_SERIAL.buffer_overruns()) { @@ -174,8 +174,8 @@ void DGUSDisplay::ProcessRx() { case DGUS_WAIT_TELEGRAM: // wait for complete datagram to arrive. if (LCD_SERIAL.available() < rx_datagram_len) return; - Initialized = true; // We've talked to it, so we defined it as initialized. - uint8_t command = LCD_SERIAL.read(); + initialized = true; // We've talked to it, so we defined it as initialized. + const uint8_t command = LCD_SERIAL.read(); //DEBUGLCDCOMM_ECHOPGM("# ", command); @@ -220,9 +220,9 @@ void DGUSDisplay::ProcessRx() { } } -size_t DGUSDisplay::GetFreeTxBuffer() { return LCD_SERIAL_TX_BUFFER_FREE(); } +size_t DGUSDisplay::getFreeTxBuffer() { return LCD_SERIAL_TX_BUFFER_FREE(); } -void DGUSDisplay::WriteHeader(uint16_t adr, uint8_t cmd, uint8_t payloadlen) { +void DGUSDisplay::writeHeader(uint16_t adr, uint8_t cmd, uint8_t payloadlen) { LCD_SERIAL.write(DGUS_HEADER1); LCD_SERIAL.write(DGUS_HEADER2); LCD_SERIAL.write(payloadlen + 3); @@ -231,29 +231,29 @@ void DGUSDisplay::WriteHeader(uint16_t adr, uint8_t cmd, uint8_t payloadlen) { LCD_SERIAL.write(adr & 0xFF); } -void DGUSDisplay::WritePGM(const char str[], uint8_t len) { +void DGUSDisplay::writePGM(const char str[], uint8_t len) { while (len--) LCD_SERIAL.write(pgm_read_byte(str++)); } void DGUSDisplay::loop() { - // Protect against recursion. ProcessRx() may indirectly call idle() when injecting G-code commands. + // Protect against recursion. processRx() may indirectly call idle() when injecting G-code commands. if (!no_reentrance) { no_reentrance = true; - ProcessRx(); + processRx(); no_reentrance = false; } } rx_datagram_state_t DGUSDisplay::rx_datagram_state = DGUS_IDLE; uint8_t DGUSDisplay::rx_datagram_len = 0; -bool DGUSDisplay::Initialized = false, +bool DGUSDisplay::initialized = false, DGUSDisplay::no_reentrance = false; // A SW memory barrier, to ensure GCC does not overoptimize loops #define sw_barrier() asm volatile("": : :"memory"); bool populate_VPVar(const uint16_t VP, DGUS_VP_Variable * const ramcopy) { - const DGUS_VP_Variable *pvp = DGUSLCD_FindVPVar(VP); + const DGUS_VP_Variable *pvp = findVPVar(VP); if (!pvp) return false; memcpy_P(ramcopy, pvp, sizeof(DGUS_VP_Variable)); return true; diff --git a/Marlin/src/lcd/extui/dgus/DGUSDisplay.h b/Marlin/src/lcd/extui/dgus/DGUSDisplay.h index c307ff44787e..d65c30fc16b6 100644 --- a/Marlin/src/lcd/extui/dgus/DGUSDisplay.h +++ b/Marlin/src/lcd/extui/dgus/DGUSDisplay.h @@ -30,14 +30,14 @@ #include // size_t //#define DEBUG_DGUSLCD -//#define DEBUG_DGUSLCD_COMM +//#define DEBUG_DGUS_COMM #if HAS_BED_PROBE #include "../../../module/probe.h" #endif #include "DGUSVPVariable.h" -enum DGUSLCD_Screens : uint8_t; +enum DGUS_ScreenID : uint8_t; #define DEBUG_OUT ENABLED(DEBUG_DGUSLCD) #include "../../../core/debug_out.h" @@ -57,25 +57,25 @@ class DGUSDisplay { DGUSDisplay() = default; - static void InitDisplay(); + static void initDisplay(); // Variable access. - static void WriteVariable(uint16_t adr, const void *values, uint8_t valueslen, bool isstr=false); - static void WriteVariablePGM(uint16_t adr, const void *values, uint8_t valueslen, bool isstr=false); - static void WriteVariable(uint16_t adr, int16_t value); - static void WriteVariable(uint16_t adr, uint16_t value); - static void WriteVariable(uint16_t adr, uint8_t value); - static void WriteVariable(uint16_t adr, int8_t value); - static void WriteVariable(uint16_t adr, long value); + static void writeVariable(uint16_t adr, const void *values, uint8_t valueslen, bool isstr=false); + static void writeVariablePGM(uint16_t adr, const void *values, uint8_t valueslen, bool isstr=false); + static void writeVariable(uint16_t adr, int16_t value); + static void writeVariable(uint16_t adr, uint16_t value); + static void writeVariable(uint16_t adr, uint8_t value); + static void writeVariable(uint16_t adr, int8_t value); + static void writeVariable(uint16_t adr, long value); // Utility functions for bridging ui_api and dbus template - static void SetVariable(DGUS_VP_Variable &var) { - WriteVariable(var.VP, (WireType)Getter(selector)); + static void setVariable(DGUS_VP_Variable &var) { + writeVariable(var.VP, (WireType)Getter(selector)); } template - static void GetVariable(DGUS_VP_Variable &var, void *val_ptr) { + static void getVariable(DGUS_VP_Variable &var, void *val_ptr) { uint16_t newvalue = swap16(*(uint16_t*)val_ptr); Setter(newvalue, selector); } @@ -86,39 +86,39 @@ class DGUSDisplay { // Force display into another screen. // (And trigger update of containing VPs) // (to implement a pop up message, which may not be nested) - static void RequestScreen(DGUSLCD_Screens screen); + static void requestScreen(const DGUS_ScreenID screenID); // Periodic tasks, eg. Rx-Queue handling. static void loop(); public: // Helper for users of this class to estimate if an interaction would be blocking. - static size_t GetFreeTxBuffer(); + static size_t getFreeTxBuffer(); // Checks two things: Can we confirm the presence of the display and has we initialized it. // (both boils down that the display answered to our chatting) - static bool isInitialized() { return Initialized; } + static bool isInitialized() { return initialized; } private: - static void WriteHeader(uint16_t adr, uint8_t cmd, uint8_t payloadlen); - static void WritePGM(const char str[], uint8_t len); - static void ProcessRx(); + static void writeHeader(uint16_t adr, uint8_t cmd, uint8_t payloadlen); + static void writePGM(const char str[], uint8_t len); + static void processRx(); static rx_datagram_state_t rx_datagram_state; static uint8_t rx_datagram_len; - static bool Initialized, no_reentrance; + static bool initialized, no_reentrance; }; -extern DGUSDisplay dgusdisplay; +extern DGUSDisplay dgus; // compile-time x^y constexpr float cpow(const float x, const int y) { return y == 0 ? 1.0 : x * cpow(x, y - 1); } /// -const uint16_t* DGUSLCD_FindScreenVPMapList(uint8_t screen); +const uint16_t* findScreenVPMapList(uint8_t screen); /// Find the flash address of a DGUS_VP_Variable for the VP. -const DGUS_VP_Variable* DGUSLCD_FindVPVar(const uint16_t vp); +const DGUS_VP_Variable* findVPVar(const uint16_t vp); /// Helper to populate a DGUS_VP_Variable for a given VP. Return false if not found. bool populate_VPVar(const uint16_t VP, DGUS_VP_Variable * const ramcopy); diff --git a/Marlin/src/lcd/extui/dgus/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/DGUSScreenHandler.cpp index e8abc259a21d..d440ea537539 100644 --- a/Marlin/src/lcd/extui/dgus/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/DGUSScreenHandler.cpp @@ -40,15 +40,15 @@ #include "../../../feature/powerloss.h" #endif -DGUSScreenHandlerClass ScreenHandler; +DGUSScreenHandlerClass screen; -uint16_t DGUSScreenHandler::ConfirmVP; +uint16_t DGUSScreenHandler::confirmVP; -DGUSLCD_Screens DGUSScreenHandler::current_screen; -DGUSLCD_Screens DGUSScreenHandler::past_screens[NUM_PAST_SCREENS]; +DGUS_ScreenID DGUSScreenHandler::current_screenID; +DGUS_ScreenID DGUSScreenHandler::past_screenIDs[NUM_PAST_SCREENS]; uint8_t DGUSScreenHandler::update_ptr; uint16_t DGUSScreenHandler::skipVP; -bool DGUSScreenHandler::ScreenComplete; +bool DGUSScreenHandler::screenComplete; void (*DGUSScreenHandler::confirm_action_cb)() = nullptr; @@ -62,42 +62,42 @@ void (*DGUSScreenHandler::confirm_action_cb)() = nullptr; filament_data_t filament_data; #endif -void DGUSScreenHandler::sendinfoscreen(PGM_P const line1, PGM_P const line2, PGM_P const line3, PGM_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool l4inflash) { +void DGUSScreenHandler::sendInfoScreen(PGM_P const line1, PGM_P const line2, PGM_P const line3, PGM_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool l4inflash) { DGUS_VP_Variable ramcopy; if (populate_VPVar(VP_MSGSTR1, &ramcopy)) { ramcopy.memadr = (void*) line1; - l1inflash ? DGUSScreenHandler::DGUSLCD_SendStringToDisplayPGM(ramcopy) : DGUSScreenHandler::DGUSLCD_SendStringToDisplay(ramcopy); + l1inflash ? DGUSScreenHandler::sendStringToDisplayPGM(ramcopy) : DGUSScreenHandler::sendStringToDisplay(ramcopy); } if (populate_VPVar(VP_MSGSTR2, &ramcopy)) { ramcopy.memadr = (void*) line2; - l2inflash ? DGUSScreenHandler::DGUSLCD_SendStringToDisplayPGM(ramcopy) : DGUSScreenHandler::DGUSLCD_SendStringToDisplay(ramcopy); + l2inflash ? DGUSScreenHandler::sendStringToDisplayPGM(ramcopy) : DGUSScreenHandler::sendStringToDisplay(ramcopy); } if (populate_VPVar(VP_MSGSTR3, &ramcopy)) { ramcopy.memadr = (void*) line3; - l3inflash ? DGUSScreenHandler::DGUSLCD_SendStringToDisplayPGM(ramcopy) : DGUSScreenHandler::DGUSLCD_SendStringToDisplay(ramcopy); + l3inflash ? DGUSScreenHandler::sendStringToDisplayPGM(ramcopy) : DGUSScreenHandler::sendStringToDisplay(ramcopy); } #ifdef VP_MSGSTR4 if (populate_VPVar(VP_MSGSTR4, &ramcopy)) { ramcopy.memadr = (void*) line4; - l4inflash ? DGUSScreenHandler::DGUSLCD_SendStringToDisplayPGM(ramcopy) : DGUSScreenHandler::DGUSLCD_SendStringToDisplay(ramcopy); + l4inflash ? DGUSScreenHandler::sendStringToDisplayPGM(ramcopy) : DGUSScreenHandler::sendStringToDisplay(ramcopy); } #endif } -void DGUSScreenHandler::HandleUserConfirmationPopUp(uint16_t VP, PGM_P const line1, PGM_P const line2, PGM_P const line3, PGM_P const line4, bool l1, bool l2, bool l3, bool l4) { - if (current_screen == DGUSLCD_SCREEN_CONFIRM) // Already showing a pop up, so we need to cancel that first. - PopToOldScreen(); +void DGUSScreenHandler::handleUserConfirmationPopUp(uint16_t VP, PGM_P const line1, PGM_P const line2, PGM_P const line3, PGM_P const line4, bool l1, bool l2, bool l3, bool l4) { + if (current_screenID == DGUS_SCREEN_CONFIRM) // Already showing a pop up, so we need to cancel that first. + popToOldScreen(); - ConfirmVP = VP; - sendinfoscreen(line1, line2, line3, line4, l1, l2, l3, l4); - GotoScreen(DGUSLCD_SCREEN_CONFIRM); + confirmVP = VP; + sendInfoScreen(line1, line2, line3, line4, l1, l2, l3, l4); + gotoScreen(DGUS_SCREEN_CONFIRM); } -void DGUSScreenHandler::setstatusmessage(const char *msg) { +void DGUSScreenHandler::setStatusMessage(const char *msg) { DGUS_VP_Variable ramcopy; if (populate_VPVar(VP_M117, &ramcopy)) { ramcopy.memadr = (void*) msg; - DGUSLCD_SendStringToDisplay(ramcopy); + sendStringToDisplay(ramcopy); } } @@ -105,46 +105,46 @@ void DGUSScreenHandler::setstatusmessagePGM(PGM_P const msg) { DGUS_VP_Variable ramcopy; if (populate_VPVar(VP_M117, &ramcopy)) { ramcopy.memadr = (void*) msg; - DGUSLCD_SendStringToDisplayPGM(ramcopy); + sendStringToDisplayPGM(ramcopy); } } // Send an 8 bit or 16 bit value to the display. -void DGUSScreenHandler::DGUSLCD_SendWordValueToDisplay(DGUS_VP_Variable &var) { +void DGUSScreenHandler::sendWordValueToDisplay(DGUS_VP_Variable &var) { if (var.memadr) { if (var.size > 1) - dgusdisplay.WriteVariable(var.VP, *(int16_t*)var.memadr); + dgus.writeVariable(var.VP, *(int16_t*)var.memadr); else - dgusdisplay.WriteVariable(var.VP, *(int8_t*)var.memadr); + dgus.writeVariable(var.VP, *(int8_t*)var.memadr); } } // Send an uint8_t between 0 and 255 to the display, but scale to a percentage (0..100) -void DGUSScreenHandler::DGUSLCD_SendPercentageToDisplay(DGUS_VP_Variable &var) { +void DGUSScreenHandler::sendPercentageToDisplay(DGUS_VP_Variable &var) { if (var.memadr) { uint16_t tmp = *(uint8_t *) var.memadr + 1; // +1 -> avoid rounding issues for the display. tmp = map(tmp, 0, 255, 0, 100); - dgusdisplay.WriteVariable(var.VP, tmp); + dgus.writeVariable(var.VP, tmp); } } // Send the current print progress to the display. -void DGUSScreenHandler::DGUSLCD_SendPrintProgressToDisplay(DGUS_VP_Variable &var) { +void DGUSScreenHandler::sendPrintProgressToDisplay(DGUS_VP_Variable &var) { uint16_t tmp = ExtUI::getProgress_percent(); - dgusdisplay.WriteVariable(var.VP, tmp); + dgus.writeVariable(var.VP, tmp); } // Send the current print time to the display. // It is using a hex display for that: It expects BSD coded data in the format xxyyzz -void DGUSScreenHandler::DGUSLCD_SendPrintTimeToDisplay(DGUS_VP_Variable &var) { +void DGUSScreenHandler::sendPrintTimeToDisplay(DGUS_VP_Variable &var) { duration_t elapsed = print_job_timer.duration(); char buf[32]; elapsed.toString(buf); - dgusdisplay.WriteVariable(VP_PrintTime, buf, var.size, true); + dgus.writeVariable(VP_PrintTime, buf, var.size, true); } // Send an uint8_t between 0 and 100 to a variable scale to 0..255 -void DGUSScreenHandler::DGUSLCD_PercentageToUint8(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::percentageToUint8(DGUS_VP_Variable &var, void *val_ptr) { if (var.memadr) { const uint16_t value = BE16_P(val_ptr); *(uint8_t*)var.memadr = map(constrain(value, 0, 100), 0, 100, 0, 255); @@ -154,21 +154,21 @@ void DGUSScreenHandler::DGUSLCD_PercentageToUint8(DGUS_VP_Variable &var, void *v // Sends a (RAM located) string to the DGUS Display // (Note: The DGUS Display does not clear after the \0, you have to // overwrite the remainings with spaces.// var.size has the display buffer size! -void DGUSScreenHandler::DGUSLCD_SendStringToDisplay(DGUS_VP_Variable &var) { +void DGUSScreenHandler::sendStringToDisplay(DGUS_VP_Variable &var) { char *tmp = (char*) var.memadr; - dgusdisplay.WriteVariable(var.VP, tmp, var.size, true); + dgus.writeVariable(var.VP, tmp, var.size, true); } // Sends a (flash located) string to the DGUS Display // (Note: The DGUS Display does not clear after the \0, you have to // overwrite the remainings with spaces.// var.size has the display buffer size! -void DGUSScreenHandler::DGUSLCD_SendStringToDisplayPGM(DGUS_VP_Variable &var) { +void DGUSScreenHandler::sendStringToDisplayPGM(DGUS_VP_Variable &var) { char *tmp = (char*) var.memadr; - dgusdisplay.WriteVariablePGM(var.VP, tmp, var.size, true); + dgus.writeVariablePGM(var.VP, tmp, var.size, true); } #if HAS_PID_HEATING - void DGUSScreenHandler::DGUSLCD_SendTemperaturePID(DGUS_VP_Variable &var) { + void DGUSScreenHandler::sendTemperaturePID(DGUS_VP_Variable &var) { float value = *(float *)var.memadr; value /= 10; float valuesend = 0; @@ -198,7 +198,7 @@ void DGUSScreenHandler::DGUSLCD_SendStringToDisplayPGM(DGUS_VP_Variable &var) { endian.i = valuesend; tmp[0] = endian.lb[1]; tmp[1] = endian.lb[0]; - dgusdisplay.WriteVariable(var.VP, tmp, 2); + dgus.writeVariable(var.VP, tmp, 2); } #endif @@ -206,19 +206,19 @@ void DGUSScreenHandler::DGUSLCD_SendStringToDisplayPGM(DGUS_VP_Variable &var) { // Send the accumulate print time to the display. // It is using a hex display for that: It expects BSD coded data in the format xxyyzz - void DGUSScreenHandler::DGUSLCD_SendPrintAccTimeToDisplay(DGUS_VP_Variable &var) { + void DGUSScreenHandler::sendPrintAccTimeToDisplay(DGUS_VP_Variable &var) { printStatistics state = print_job_timer.getStats(); char buf[22]; duration_t elapsed = state.printTime; elapsed.toString(buf); - dgusdisplay.WriteVariable(VP_PrintAccTime, buf, var.size, true); + dgus.writeVariable(VP_PrintAccTime, buf, var.size, true); } - void DGUSScreenHandler::DGUSLCD_SendPrintsTotalToDisplay(DGUS_VP_Variable &var) { + void DGUSScreenHandler::sendPrintsTotalToDisplay(DGUS_VP_Variable &var) { printStatistics state = print_job_timer.getStats(); char buf[10]; sprintf_P(buf, PSTR("%u"), state.totalPrints); - dgusdisplay.WriteVariable(VP_PrintsTotal, buf, var.size, true); + dgus.writeVariable(VP_PrintsTotal, buf, var.size, true); } #endif @@ -226,33 +226,33 @@ void DGUSScreenHandler::DGUSLCD_SendStringToDisplayPGM(DGUS_VP_Variable &var) { // Send fan status value to the display. #if HAS_FAN - void DGUSScreenHandler::DGUSLCD_SendFanStatusToDisplay(DGUS_VP_Variable &var) { + void DGUSScreenHandler::sendFanStatusToDisplay(DGUS_VP_Variable &var) { if (var.memadr) { uint16_t data_to_send = 0; if (*(uint8_t *) var.memadr) data_to_send = 1; - dgusdisplay.WriteVariable(var.VP, data_to_send); + dgus.writeVariable(var.VP, data_to_send); } } #endif // Send heater status value to the display. -void DGUSScreenHandler::DGUSLCD_SendHeaterStatusToDisplay(DGUS_VP_Variable &var) { +void DGUSScreenHandler::sendHeaterStatusToDisplay(DGUS_VP_Variable &var) { if (var.memadr) { uint16_t data_to_send = 0; if (*(int16_t *) var.memadr) data_to_send = 1; - dgusdisplay.WriteVariable(var.VP, data_to_send); + dgus.writeVariable(var.VP, data_to_send); } } #if ENABLED(DGUS_UI_WAITING) - void DGUSScreenHandler::DGUSLCD_SendWaitingStatusToDisplay(DGUS_VP_Variable &var) { + void DGUSScreenHandler::sendWaitingStatusToDisplay(DGUS_VP_Variable &var) { // In FYSETC UI design there are 10 statuses to loop static uint16_t period = 0; static uint16_t index = 0; if (period++ > DGUS_UI_WAITING_STATUS_PERIOD) { - dgusdisplay.WriteVariable(var.VP, index); + dgus.writeVariable(var.VP, index); if (++index >= DGUS_UI_WAITING_STATUS) index = 0; period = 0; } @@ -262,11 +262,11 @@ void DGUSScreenHandler::DGUSLCD_SendHeaterStatusToDisplay(DGUS_VP_Variable &var) #if HAS_MEDIA - void DGUSScreenHandler::ScreenChangeHookIfSD(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::screenChangeHookIfSD(DGUS_VP_Variable &var, void *val_ptr) { // default action executed when there is a SD card, but not printing if (ExtUI::isMediaInserted() && !ExtUI::isPrintingFromMedia()) { - ScreenChangeHook(var, val_ptr); - dgusdisplay.RequestScreen(current_screen); + screenChangeHook(var, val_ptr); + dgus.requestScreen(current_screenID); return; } @@ -274,22 +274,22 @@ void DGUSScreenHandler::DGUSLCD_SendHeaterStatusToDisplay(DGUS_VP_Variable &var) // This should host e.g a print pause / print abort / print resume dialog. // This concept allows to recycle this hook for other file if (ExtUI::isPrintingFromMedia() && !card.flag.abort_sd_printing) { - GotoScreen(DGUSLCD_SCREEN_SDPRINTMANIPULATION); + gotoScreen(DGUS_SCREEN_SDPRINTMANIPULATION); return; } // Don't let the user in the dark why there is no reaction. if (!ExtUI::isMediaInserted()) { - setstatusmessage(GET_TEXT_F(MSG_NO_MEDIA)); + setStatusMessage(GET_TEXT_F(MSG_NO_MEDIA)); return; } if (card.flag.abort_sd_printing) { - setstatusmessage(GET_TEXT_F(MSG_MEDIA_ABORTING)); + setStatusMessage(GET_TEXT_F(MSG_MEDIA_ABORTING)); return; } } - void DGUSScreenHandler::DGUSLCD_SD_ScrollFilelist(DGUS_VP_Variable& var, void *val_ptr) { + void DGUSScreenHandler::sdScrollFilelist(DGUS_VP_Variable& var, void *val_ptr) { auto old_top = top_file; const int16_t scroll = (int16_t)BE16_P(val_ptr); if (scroll) { @@ -306,38 +306,38 @@ void DGUSScreenHandler::DGUSLCD_SendHeaterStatusToDisplay(DGUS_VP_Variable &var) else if (!filelist.isAtRootDir()) { IF_DISABLED(DGUS_LCD_UI_MKS, filelist.upDir()); top_file = 0; - ForceCompleteUpdate(); + forceCompleteUpdate(); } - if (old_top != top_file) ForceCompleteUpdate(); + if (old_top != top_file) forceCompleteUpdate(); } - void DGUSScreenHandler::DGUSLCD_SD_ReallyAbort(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::sdReallyAbort(DGUS_VP_Variable &var, void *val_ptr) { ExtUI::stopPrint(); - GotoScreen(DGUSLCD_SCREEN_MAIN); + gotoScreen(DGUS_SCREEN_MAIN); } - void DGUSScreenHandler::DGUSLCD_SD_PrintTune(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::sdPrintTune(DGUS_VP_Variable &var, void *val_ptr) { if (!ExtUI::isPrintingFromMedia()) return; // avoid race condition when user stays in this menu and printer finishes. - GotoScreen(DGUSLCD_SCREEN_SDPRINTTUNE); + gotoScreen(DGUS_SCREEN_SDPRINTTUNE); } - void DGUSScreenHandler::SDCardError() { - DGUSScreenHandler::SDCardRemoved(); - sendinfoscreen(F("NOTICE"), nullptr, F("SD card error"), nullptr, true, true, true, true); - SetupConfirmAction(nullptr); - GotoScreen(DGUSLCD_SCREEN_POPUP); + void DGUSScreenHandler::sdCardError() { + DGUSScreenHandler::sdCardRemoved(); + sendInfoScreen(F("NOTICE"), nullptr, F("SD card error"), nullptr, true, true, true, true); + setupConfirmAction(nullptr); + gotoScreen(DGUS_SCREEN_POPUP); } #endif // HAS_MEDIA -void DGUSScreenHandler::ScreenConfirmedOK(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::screenConfirmedOK(DGUS_VP_Variable &var, void *val_ptr) { DGUS_VP_Variable ramcopy; - if (!populate_VPVar(ConfirmVP, &ramcopy)) return; + if (!populate_VPVar(confirmVP, &ramcopy)) return; if (ramcopy.set_by_display_handler) ramcopy.set_by_display_handler(ramcopy, val_ptr); } -const uint16_t* DGUSLCD_FindScreenVPMapList(uint8_t screen) { +const uint16_t* findScreenVPMapList(uint8_t screen) { const uint16_t *ret; const struct VPMapping *map = VPMap; while ((ret = (uint16_t*) pgm_read_ptr(&(map->VPList)))) { @@ -347,7 +347,7 @@ const uint16_t* DGUSLCD_FindScreenVPMapList(uint8_t screen) { return nullptr; } -const DGUS_VP_Variable* DGUSLCD_FindVPVar(const uint16_t vp) { +const DGUS_VP_Variable* findVPVar(const uint16_t vp) { const DGUS_VP_Variable *ret = ListOfVP; do { const uint16_t vpcheck = pgm_read_word(&(ret->VP)); @@ -359,19 +359,19 @@ const DGUS_VP_Variable* DGUSLCD_FindVPVar(const uint16_t vp) { return nullptr; } -void DGUSScreenHandler::ScreenChangeHookIfIdle(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::screenChangeHookIfIdle(DGUS_VP_Variable &var, void *val_ptr) { if (!ExtUI::isPrinting()) { - ScreenChangeHook(var, val_ptr); - dgusdisplay.RequestScreen(current_screen); + screenChangeHook(var, val_ptr); + dgus.requestScreen(current_screenID); } } -void DGUSScreenHandler::HandleAllHeatersOff(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::handleAllHeatersOff(DGUS_VP_Variable &var, void *val_ptr) { thermalManager.disable_all_heaters(); - ForceCompleteUpdate(); // hint to send all data. + forceCompleteUpdate(); // hint to send all data. } -void DGUSScreenHandler::HandleTemperatureChanged(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::handleTemperatureChanged(DGUS_VP_Variable &var, void *val_ptr) { celsius_t newvalue = BE16_P(val_ptr); celsius_t acceptedvalue; @@ -405,7 +405,7 @@ void DGUSScreenHandler::HandleTemperatureChanged(DGUS_VP_Variable &var, void *va skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandler::HandleFlowRateChanged(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::handleFlowRateChanged(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_EXTRUDERS const uint16_t newvalue = BE16_P(val_ptr); uint8_t target_extruder; @@ -424,7 +424,7 @@ void DGUSScreenHandler::HandleFlowRateChanged(DGUS_VP_Variable &var, void *val_p #endif } -void DGUSScreenHandler::HandleManualExtrude(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::handleManualExtrude(DGUS_VP_Variable &var, void *val_ptr) { const int16_t movevalue = BE16_P(val_ptr); float target = movevalue * 0.01f; ExtUI::extruder_t target_extruder; @@ -445,17 +445,17 @@ void DGUSScreenHandler::HandleManualExtrude(DGUS_VP_Variable &var, void *val_ptr } #if ENABLED(DGUS_UI_MOVE_DIS_OPTION) - void DGUSScreenHandler::HandleManualMoveOption(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleManualMoveOption(DGUS_VP_Variable &var, void *val_ptr) { *(uint16_t*)var.memadr = BE16_P(val_ptr); } #endif -void DGUSScreenHandler::HandleMotorLockUnlock(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::handleMotorLockUnlock(DGUS_VP_Variable &var, void *val_ptr) { const int16_t lock = BE16_P(val_ptr); queue.enqueue_one_now(lock ? F("M18") : F("M17")); } -void DGUSScreenHandler::HandleSettings(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::handleSettings(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t value = BE16_P(val_ptr); switch (value) { default: break; @@ -469,7 +469,7 @@ void DGUSScreenHandler::HandleSettings(DGUS_VP_Variable &var, void *val_ptr) { } } -void DGUSScreenHandler::HandleStepPerMMChanged(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::handleStepPerMMChanged(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t value_raw = BE16_P(val_ptr); const float value = (float)value_raw / 10; ExtUI::axis_t axis; @@ -483,7 +483,7 @@ void DGUSScreenHandler::HandleStepPerMMChanged(DGUS_VP_Variable &var, void *val_ skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandler::HandleStepPerMMExtruderChanged(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::handleStepPerMMExtruderChanged(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t value_raw = BE16_P(val_ptr); const float value = (float)value_raw / 10; ExtUI::extruder_t extruder; @@ -501,7 +501,7 @@ void DGUSScreenHandler::HandleStepPerMMExtruderChanged(DGUS_VP_Variable &var, vo } #if HAS_PID_HEATING - void DGUSScreenHandler::HandlePIDAutotune(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handlePIDAutotune(DGUS_VP_Variable &var, void *val_ptr) { char buf[32] = {0}; switch (var.VP) { @@ -528,14 +528,14 @@ void DGUSScreenHandler::HandleStepPerMMExtruderChanged(DGUS_VP_Variable &var, vo } #if ENABLED(DGUS_UI_WAITING) - sendinfoscreen(F("PID is autotuning"), F("please wait"), NUL_STR, NUL_STR, true, true, true, true); - GotoScreen(DGUSLCD_SCREEN_WAITING); + sendInfoScreen(F("PID is autotuning"), F("please wait"), NUL_STR, NUL_STR, true, true, true, true); + gotoScreen(DGUS_SCREEN_WAITING); #endif } #endif // HAS_PID_HEATING #if HAS_BED_PROBE - void DGUSScreenHandler::HandleProbeOffsetZChanged(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleProbeOffsetZChanged(DGUS_VP_Variable &var, void *val_ptr) { const float offset = float(int16_t(BE16_P(val_ptr))) / 100.0f; ExtUI::setZOffset_mm(offset); skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel @@ -544,12 +544,12 @@ void DGUSScreenHandler::HandleStepPerMMExtruderChanged(DGUS_VP_Variable &var, vo #endif #if HAS_FAN - void DGUSScreenHandler::HandleFanControl(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleFanControl(DGUS_VP_Variable &var, void *val_ptr) { *(uint8_t*)var.memadr = *(uint8_t*)var.memadr > 0 ? 0 : 255; } #endif -void DGUSScreenHandler::HandleHeaterControl(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::handleHeaterControl(DGUS_VP_Variable &var, void *val_ptr) { uint8_t preheat_temp = 0; switch (var.VP) { #if HAS_HOTEND @@ -576,7 +576,7 @@ void DGUSScreenHandler::HandleHeaterControl(DGUS_VP_Variable &var, void *val_ptr #if ENABLED(DGUS_PREHEAT_UI) - void DGUSScreenHandler::HandlePreheat(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handlePreheat(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t preheat_option = BE16_P(val_ptr); switch (preheat_option) { default: @@ -592,48 +592,48 @@ void DGUSScreenHandler::HandleHeaterControl(DGUS_VP_Variable &var, void *val_ptr } // Go to the preheat screen to show the heating progress - GotoScreen(DGUSLCD_SCREEN_PREHEAT); + gotoScreen(DGUS_SCREEN_PREHEAT); } #endif // DGUS_PREHEAT_UI #if ENABLED(POWER_LOSS_RECOVERY) - void DGUSScreenHandler::HandlePowerLossRecovery(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handlePowerLossRecovery(DGUS_VP_Variable &var, void *val_ptr) { uint16_t value = BE16_P(val_ptr); if (value) { queue.inject(F("M1000")); - dgusdisplay.WriteVariable(VP_SD_Print_Filename, filelist.filename(), 32, true); - GotoScreen(PLR_SCREEN_RECOVER); + dgus.writeVariable(VP_SD_Print_Filename, filelist.filename(), 32, true); + gotoScreen(PLR_SCREEN_RECOVER); } else { recovery.cancel(); - GotoScreen(PLR_SCREEN_CANCEL); + gotoScreen(PLR_SCREEN_CANCEL); } } #endif -void DGUSScreenHandler::UpdateNewScreen(DGUSLCD_Screens newscreen, bool popup) { +void DGUSScreenHandler::updateNewScreen(const DGUS_ScreenID screenID, const bool popup) { if (!popup) { - memmove(&past_screens[1], &past_screens[0], sizeof(past_screens) - 1); - past_screens[0] = current_screen; + memmove(&past_screenIDs[1], &past_screenIDs[0], sizeof(past_screenIDs) - 1); + past_screenIDs[0] = current_screenID; } - current_screen = newscreen; + current_screenID = screenID; skipVP = 0; - ForceCompleteUpdate(); + forceCompleteUpdate(); } -void DGUSScreenHandler::PopToOldScreen() { - GotoScreen(past_screens[0], true); - memmove(&past_screens[0], &past_screens[1], sizeof(past_screens) - 1); - past_screens[sizeof(past_screens) - 1] = DGUSLCD_SCREEN_MAIN; +void DGUSScreenHandler::popToOldScreen() { + gotoScreen(past_screenIDs[0], true); + memmove(&past_screenIDs[0], &past_screenIDs[1], sizeof(past_screenIDs) - 1); + past_screenIDs[sizeof(past_screenIDs) - 1] = DGUS_SCREEN_MAIN; } -void DGUSScreenHandler::UpdateScreenVPData() { - const uint16_t *VPList = DGUSLCD_FindScreenVPMapList(current_screen); +void DGUSScreenHandler::updateScreenVPData() { + const uint16_t *VPList = findScreenVPMapList(current_screenID); if (!VPList) { - ScreenComplete = true; + screenComplete = true; return; // nothing to do, likely a bug or boring screen. } @@ -645,7 +645,7 @@ void DGUSScreenHandler::UpdateScreenVPData() { uint16_t VP = pgm_read_word(VPList); if (!VP) { update_ptr = 0; - ScreenComplete = true; + screenComplete = true; return; // Screen completed. } @@ -656,12 +656,12 @@ void DGUSScreenHandler::UpdateScreenVPData() { uint8_t expected_tx = 6 + rcpy.size; // expected overhead is 6 bytes + payload. // Send the VP to the display, but try to avoid overrunning the Tx Buffer. // But send at least one VP, to avoid getting stalled. - if (rcpy.send_to_display_handler && (!sent_one || expected_tx <= dgusdisplay.GetFreeTxBuffer())) { + if (rcpy.send_to_display_handler && (!sent_one || expected_tx <= dgus.getFreeTxBuffer())) { sent_one = true; rcpy.send_to_display_handler(rcpy); } else { - ScreenComplete = false; + screenComplete = false; return; // please call again! } } @@ -669,14 +669,14 @@ void DGUSScreenHandler::UpdateScreenVPData() { } while (++update_ptr, ++VPList, true); } -void DGUSScreenHandler::GotoScreen(DGUSLCD_Screens screen, bool ispopup) { - dgusdisplay.RequestScreen(screen); - UpdateNewScreen(screen, ispopup); +void DGUSScreenHandler::gotoScreen(const DGUS_ScreenID screenID, const bool popup/*=false*/) { + dgus.requestScreen(screenID); + updateNewScreen(screenID, popup); } -void DGUSDisplay::RequestScreen(DGUSLCD_Screens screen) { - const unsigned char gotoscreen[] = { 0x5A, 0x01, (unsigned char) (screen >> 8U), (unsigned char) (screen & 0xFFU) }; - WriteVariable(0x84, gotoscreen, sizeof(gotoscreen)); +void DGUSDisplay::requestScreen(const DGUS_ScreenID screenID) { + const unsigned char gotoscreen[] = { 0x5A, 0x01, (unsigned char) (screenID >> 8U), (unsigned char) (screenID & 0xFFU) }; + writeVariable(0x84, gotoscreen, sizeof(gotoscreen)); } #endif // HAS_DGUS_LCD_CLASSIC diff --git a/Marlin/src/lcd/extui/dgus/DGUSScreenHandler.h b/Marlin/src/lcd/extui/dgus/DGUSScreenHandler.h index 4486105d3c4a..cb403dbdad76 100644 --- a/Marlin/src/lcd/extui/dgus/DGUSScreenHandler.h +++ b/Marlin/src/lcd/extui/dgus/DGUSScreenHandler.h @@ -56,7 +56,7 @@ #include "hiprecy/DGUSScreenHandler.h" #endif -extern DGUSScreenHandlerClass ScreenHandler; +extern DGUSScreenHandlerClass screen; // Helper to define a DGUS_VP_Variable for common use-cases. #define VPHELPER(VPADR, VPADRVAR, RXFPTR, TXFPTR) { \ diff --git a/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h b/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h index 9ebca87be1d9..e2405bf2ef3e 100644 --- a/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h +++ b/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h @@ -27,7 +27,7 @@ #include "../../../inc/MarlinConfig.h" -enum DGUSLCD_Screens : uint8_t; +enum DGUS_ScreenID : uint8_t; class DGUSScreenHandler { public: @@ -37,150 +37,150 @@ class DGUSScreenHandler { // Send all 4 strings that are displayed on the infoscreen, confirmation screen and kill screen // The bools specifying whether the strings are in RAM or FLASH. - static void sendinfoscreen(PGM_P const line1, PGM_P const line2, PGM_P const line3, PGM_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool liinflash); - static void sendinfoscreen(FSTR_P const line1, FSTR_P const line2, PGM_P const line3, PGM_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool liinflash) { - sendinfoscreen(FTOP(line1), FTOP(line2), line3, line4, l1inflash, l2inflash, l3inflash, liinflash); + static void sendInfoScreen(PGM_P const line1, PGM_P const line2, PGM_P const line3, PGM_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool liinflash); + static void sendInfoScreen(FSTR_P const line1, FSTR_P const line2, PGM_P const line3, PGM_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool liinflash) { + sendInfoScreen(FTOP(line1), FTOP(line2), line3, line4, l1inflash, l2inflash, l3inflash, liinflash); } - static void sendinfoscreen(FSTR_P const line1, FSTR_P const line2, FSTR_P const line3, FSTR_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool liinflash) { - sendinfoscreen(FTOP(line1), FTOP(line2), FTOP(line3), FTOP(line4), l1inflash, l2inflash, l3inflash, liinflash); + static void sendInfoScreen(FSTR_P const line1, FSTR_P const line2, FSTR_P const line3, FSTR_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool liinflash) { + sendInfoScreen(FTOP(line1), FTOP(line2), FTOP(line3), FTOP(line4), l1inflash, l2inflash, l3inflash, liinflash); } - static void HandleUserConfirmationPopUp(uint16_t ConfirmVP, PGM_P const line1, PGM_P const line2, PGM_P const line3, PGM_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool liinflash); + static void handleUserConfirmationPopUp(uint16_t confirmVP, PGM_P const line1, PGM_P const line2, PGM_P const line3, PGM_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool liinflash); // "M117" Message -- msg is a RAM ptr. - static void setstatusmessage(const char *msg); + static void setStatusMessage(const char *msg); // The same for messages from Flash static void setstatusmessagePGM(PGM_P const msg); - static void setstatusmessage(FSTR_P const fmsg) { setstatusmessagePGM(FTOP(fmsg)); } + static void setStatusMessage(FSTR_P const fmsg) { setstatusmessagePGM(FTOP(fmsg)); } // Callback for VP "Display wants to change screen on idle printer" - static void ScreenChangeHookIfIdle(DGUS_VP_Variable &var, void *val_ptr); + static void screenChangeHookIfIdle(DGUS_VP_Variable &var, void *val_ptr); // Callback for VP "Screen has been changed" - static void ScreenChangeHook(DGUS_VP_Variable &var, void *val_ptr); + static void screenChangeHook(DGUS_VP_Variable &var, void *val_ptr); // Callback for VP "All Heaters Off" - static void HandleAllHeatersOff(DGUS_VP_Variable &var, void *val_ptr); + static void handleAllHeatersOff(DGUS_VP_Variable &var, void *val_ptr); // Hook for "Change this temperature" - static void HandleTemperatureChanged(DGUS_VP_Variable &var, void *val_ptr); + static void handleTemperatureChanged(DGUS_VP_Variable &var, void *val_ptr); // Hook for "Change Flowrate" - static void HandleFlowRateChanged(DGUS_VP_Variable &var, void *val_ptr); + static void handleFlowRateChanged(DGUS_VP_Variable &var, void *val_ptr); #if ENABLED(DGUS_UI_MOVE_DIS_OPTION) // Hook for manual move option - static void HandleManualMoveOption(DGUS_VP_Variable &var, void *val_ptr); + static void handleManualMoveOption(DGUS_VP_Variable &var, void *val_ptr); #endif // Hook for manual move. - static void HandleManualMove(DGUS_VP_Variable &var, void *val_ptr); + static void handleManualMove(DGUS_VP_Variable &var, void *val_ptr); // Hook for manual extrude. - static void HandleManualExtrude(DGUS_VP_Variable &var, void *val_ptr); + static void handleManualExtrude(DGUS_VP_Variable &var, void *val_ptr); // Hook for motor lock and unlook - static void HandleMotorLockUnlock(DGUS_VP_Variable &var, void *val_ptr); + static void handleMotorLockUnlock(DGUS_VP_Variable &var, void *val_ptr); #if ENABLED(POWER_LOSS_RECOVERY) // Hook for power loss recovery. - static void HandlePowerLossRecovery(DGUS_VP_Variable &var, void *val_ptr); + static void handlePowerLossRecovery(DGUS_VP_Variable &var, void *val_ptr); #endif // Hook for settings - static void HandleSettings(DGUS_VP_Variable &var, void *val_ptr); - static void HandleStepPerMMChanged(DGUS_VP_Variable &var, void *val_ptr); - static void HandleStepPerMMExtruderChanged(DGUS_VP_Variable &var, void *val_ptr); + static void handleSettings(DGUS_VP_Variable &var, void *val_ptr); + static void handleStepPerMMChanged(DGUS_VP_Variable &var, void *val_ptr); + static void handleStepPerMMExtruderChanged(DGUS_VP_Variable &var, void *val_ptr); #if HAS_PID_HEATING // Hook for "Change this temperature PID para" - static void HandleTemperaturePIDChanged(DGUS_VP_Variable &var, void *val_ptr); + static void handleTemperaturePIDChanged(DGUS_VP_Variable &var, void *val_ptr); // Hook for PID autotune - static void HandlePIDAutotune(DGUS_VP_Variable &var, void *val_ptr); + static void handlePIDAutotune(DGUS_VP_Variable &var, void *val_ptr); #endif #if HAS_BED_PROBE // Hook for "Change probe offset z" - static void HandleProbeOffsetZChanged(DGUS_VP_Variable &var, void *val_ptr); + static void handleProbeOffsetZChanged(DGUS_VP_Variable &var, void *val_ptr); #endif #if ENABLED(BABYSTEPPING) // Hook for live z adjust action - static void HandleLiveAdjustZ(DGUS_VP_Variable &var, void *val_ptr); + static void handleLiveAdjustZ(DGUS_VP_Variable &var, void *val_ptr); #endif #if HAS_FAN // Hook for fan control - static void HandleFanControl(DGUS_VP_Variable &var, void *val_ptr); + static void handleFanControl(DGUS_VP_Variable &var, void *val_ptr); #endif // Hook for heater control - static void HandleHeaterControl(DGUS_VP_Variable &var, void *val_ptr); + static void handleHeaterControl(DGUS_VP_Variable &var, void *val_ptr); #if ENABLED(DGUS_PREHEAT_UI) // Hook for preheat - static void HandlePreheat(DGUS_VP_Variable &var, void *val_ptr); + static void handlePreheat(DGUS_VP_Variable &var, void *val_ptr); #endif #if ENABLED(DGUS_FILAMENT_LOADUNLOAD) // Hook for filament load and unload filament option - static void HandleFilamentOption(DGUS_VP_Variable &var, void *val_ptr); + static void handleFilamentOption(DGUS_VP_Variable &var, void *val_ptr); // Hook for filament load and unload - static void HandleFilamentLoadUnload(DGUS_VP_Variable &var); + static void handleFilamentLoadUnload(DGUS_VP_Variable &var); #endif #if HAS_MEDIA // Callback for VP "Display wants to change screen when there is a SD card" - static void ScreenChangeHookIfSD(DGUS_VP_Variable &var, void *val_ptr); + static void screenChangeHookIfSD(DGUS_VP_Variable &var, void *val_ptr); // Scroll buttons on the file listing screen. - static void DGUSLCD_SD_ScrollFilelist(DGUS_VP_Variable &var, void *val_ptr); + static void sdScrollFilelist(DGUS_VP_Variable &var, void *val_ptr); // File touched. - static void DGUSLCD_SD_FileSelected(DGUS_VP_Variable &var, void *val_ptr); + static void sdFileSelected(DGUS_VP_Variable &var, void *val_ptr); // start print after confirmation received. - static void DGUSLCD_SD_StartPrint(DGUS_VP_Variable &var, void *val_ptr); + static void sdStartPrint(DGUS_VP_Variable &var, void *val_ptr); // User hit the pause, resume or abort button. - static void DGUSLCD_SD_ResumePauseAbort(DGUS_VP_Variable &var, void *val_ptr); + static void sdResumePauseAbort(DGUS_VP_Variable &var, void *val_ptr); // User confirmed the abort action - static void DGUSLCD_SD_ReallyAbort(DGUS_VP_Variable &var, void *val_ptr); + static void sdReallyAbort(DGUS_VP_Variable &var, void *val_ptr); // User hit the tune button - static void DGUSLCD_SD_PrintTune(DGUS_VP_Variable &var, void *val_ptr); + static void sdPrintTune(DGUS_VP_Variable &var, void *val_ptr); // Send a single filename to the display. - static void DGUSLCD_SD_SendFilename(DGUS_VP_Variable &var); + static void sdSendFilename(DGUS_VP_Variable &var); // Marlin informed us that a new SD has been inserted. - static void SDCardInserted(); + static void sdCardInserted(); // Marlin informed us that the SD Card has been removed(). - static void SDCardRemoved(); + static void sdCardRemoved(); // Marlin informed us about a bad SD Card. - static void SDCardError(); + static void sdCardError(); #endif // OK Button on the Confirm screen. - static void ScreenConfirmedOK(DGUS_VP_Variable &var, void *val_ptr); + static void screenConfirmedOK(DGUS_VP_Variable &var, void *val_ptr); - // Update data after going to a new screen (by display or by GotoScreen) + // Update data after going to a new screen (by display or by gotoScreen) // remember to store the last-displayed screen so it can be restored. // (e.g., for popup messages) - static void UpdateNewScreen(DGUSLCD_Screens newscreen, bool popup=false); + static void updateNewScreen(const DGUS_ScreenID screenID, const bool popup=false); // Recall the remembered screen. - static void PopToOldScreen(); + static void popToOldScreen(); // Make the display show the screen and update all VPs in it. - static void GotoScreen(DGUSLCD_Screens screen, bool ispopup = false); + static void gotoScreen(const DGUS_ScreenID screenID, const bool popup=false); - static void UpdateScreenVPData(); + static void updateScreenVPData(); // Helpers to convert and transfer data to the display. - static void DGUSLCD_SendWordValueToDisplay(DGUS_VP_Variable &var); - static void DGUSLCD_SendStringToDisplay(DGUS_VP_Variable &var); - static void DGUSLCD_SendStringToDisplayPGM(DGUS_VP_Variable &var); - static void DGUSLCD_SendTemperaturePID(DGUS_VP_Variable &var); - static void DGUSLCD_SendPercentageToDisplay(DGUS_VP_Variable &var); - static void DGUSLCD_SendPrintProgressToDisplay(DGUS_VP_Variable &var); - static void DGUSLCD_SendPrintTimeToDisplay(DGUS_VP_Variable &var); + static void sendWordValueToDisplay(DGUS_VP_Variable &var); + static void sendStringToDisplay(DGUS_VP_Variable &var); + static void sendStringToDisplayPGM(DGUS_VP_Variable &var); + static void sendTemperaturePID(DGUS_VP_Variable &var); + static void sendPercentageToDisplay(DGUS_VP_Variable &var); + static void sendPrintProgressToDisplay(DGUS_VP_Variable &var); + static void sendPrintTimeToDisplay(DGUS_VP_Variable &var); #if ENABLED(PRINTCOUNTER) - static void DGUSLCD_SendPrintAccTimeToDisplay(DGUS_VP_Variable &var); - static void DGUSLCD_SendPrintsTotalToDisplay(DGUS_VP_Variable &var); + static void sendPrintAccTimeToDisplay(DGUS_VP_Variable &var); + static void sendPrintsTotalToDisplay(DGUS_VP_Variable &var); #endif #if HAS_FAN - static void DGUSLCD_SendFanStatusToDisplay(DGUS_VP_Variable &var); + static void sendFanStatusToDisplay(DGUS_VP_Variable &var); #endif - static void DGUSLCD_SendHeaterStatusToDisplay(DGUS_VP_Variable &var); + static void sendHeaterStatusToDisplay(DGUS_VP_Variable &var); #if ENABLED(DGUS_UI_WAITING) - static void DGUSLCD_SendWaitingStatusToDisplay(DGUS_VP_Variable &var); + static void sendWaitingStatusToDisplay(DGUS_VP_Variable &var); #endif // Send a value from 0..100 to a variable with a range from 0..255 - static void DGUSLCD_PercentageToUint8(DGUS_VP_Variable &var, void *val_ptr); + static void percentageToUint8(DGUS_VP_Variable &var, void *val_ptr); template - static void DGUSLCD_SetValueDirectly(DGUS_VP_Variable &var, void *val_ptr) { + static void setValueDirectly(DGUS_VP_Variable &var, void *val_ptr) { if (!var.memadr) return; union { unsigned char tmp[sizeof(T)]; T t; } x; unsigned char *ptr = (unsigned char*)val_ptr; @@ -192,11 +192,11 @@ class DGUSScreenHandler { // Display will get a 4-byte integer scaled to the number of digits: // Tell the display the number of digits and it cheats by displaying a dot between... template - static void DGUSLCD_SendFloatAsLongValueToDisplay(DGUS_VP_Variable &var) { + static void sendFloatAsLongValueToDisplay(DGUS_VP_Variable &var) { if (var.memadr) { float f = *(float *)var.memadr; f *= cpow(10, decimals); - dgusdisplay.WriteVariable(var.VP, (long)f); + dgus.writeVariable(var.VP, (long)f); } } @@ -204,34 +204,34 @@ class DGUSScreenHandler { // Display will get a 2-byte integer scaled to the number of digits: // Tell the display the number of digits and it cheats by displaying a dot between... template - static void DGUSLCD_SendFloatAsIntValueToDisplay(DGUS_VP_Variable &var) { + static void sendFloatAsIntValueToDisplay(DGUS_VP_Variable &var) { if (var.memadr) { float f = *(float *)var.memadr; DEBUG_ECHOLNPAIR_F(" >> ", f, 6); f *= cpow(10, decimals); - dgusdisplay.WriteVariable(var.VP, (int16_t)f); + dgus.writeVariable(var.VP, (int16_t)f); } } // Force an update of all VP on the current screen. - static void ForceCompleteUpdate() { update_ptr = 0; ScreenComplete = false; } + static void forceCompleteUpdate() { update_ptr = 0; screenComplete = false; } // Has all VPs sent to the screen - static bool IsScreenComplete() { return ScreenComplete; } + static bool isScreenComplete() { return screenComplete; } - static DGUSLCD_Screens getCurrentScreen() { return current_screen; } + static DGUS_ScreenID getCurrentScreen() { return current_screenID; } - static void SetupConfirmAction( void (*f)()) { confirm_action_cb = f; } + static void setupConfirmAction( void (*f)()) { confirm_action_cb = f; } protected: - static DGUSLCD_Screens current_screen; //< currently on screen + static DGUS_ScreenID current_screenID; //< currently on screen static constexpr uint8_t NUM_PAST_SCREENS = 4; - static DGUSLCD_Screens past_screens[NUM_PAST_SCREENS]; //< LIFO with past screens for the "back" button. + static DGUS_ScreenID past_screenIDs[NUM_PAST_SCREENS]; //< LIFO with past screens for the "back" button. static uint8_t update_ptr; //< Last sent entry in the VPList for the actual screen. static uint16_t skipVP; //< When updating the screen data, skip this one, because the user is interacting with it. - static bool ScreenComplete; //< All VPs sent to screen? + static bool screenComplete; //< All VPs sent to screen? - static uint16_t ConfirmVP; //< context for confirm screen (VP that will be emulated-sent on "OK"). + static uint16_t confirmVP; //< context for confirm screen (VP that will be emulated-sent on "OK"). #if HAS_MEDIA static int16_t top_file; //< file on top of file chooser diff --git a/Marlin/src/lcd/extui/dgus/dgus_extui.cpp b/Marlin/src/lcd/extui/dgus/dgus_extui.cpp index ede627c3dad5..30d1c710b213 100644 --- a/Marlin/src/lcd/extui/dgus/dgus_extui.cpp +++ b/Marlin/src/lcd/extui/dgus/dgus_extui.cpp @@ -36,21 +36,21 @@ namespace ExtUI { void onStartup() { - dgusdisplay.InitDisplay(); - ScreenHandler.UpdateScreenVPData(); + dgus.initDisplay(); + screen.updateScreenVPData(); } - void onIdle() { ScreenHandler.loop(); } + void onIdle() { screen.loop(); } void onPrinterKilled(FSTR_P const error, FSTR_P const) { - ScreenHandler.sendinfoscreen(GET_TEXT_F(MSG_HALTED), error, FPSTR(NUL_STR), GET_TEXT_F(MSG_PLEASE_RESET), true, true, true, true); - ScreenHandler.GotoScreen(DGUSLCD_SCREEN_KILL); - while (!ScreenHandler.loop()); // Wait while anything is left to be sent + screen.sendInfoScreen(GET_TEXT_F(MSG_HALTED), error, FPSTR(NUL_STR), GET_TEXT_F(MSG_PLEASE_RESET), true, true, true, true); + screen.gotoScreen(DGUS_SCREEN_KILL); + while (!screen.loop()); // Wait while anything is left to be sent } - void onMediaInserted() { TERN_(HAS_MEDIA, ScreenHandler.SDCardInserted()); } - void onMediaError() { TERN_(HAS_MEDIA, ScreenHandler.SDCardError()); } - void onMediaRemoved() { TERN_(HAS_MEDIA, ScreenHandler.SDCardRemoved()); } + void onMediaInserted() { TERN_(HAS_MEDIA, screen.sdCardInserted()); } + void onMediaError() { TERN_(HAS_MEDIA, screen.sdCardError()); } + void onMediaRemoved() { TERN_(HAS_MEDIA, screen.sdCardRemoved()); } void onPlayTone(const uint16_t frequency, const uint16_t duration) {} void onPrintTimerStarted() {} @@ -60,17 +60,17 @@ namespace ExtUI { void onUserConfirmRequired(const char * const msg) { if (msg) { - ScreenHandler.sendinfoscreen(F("Please confirm."), nullptr, msg, nullptr, true, true, false, true); - ScreenHandler.SetupConfirmAction(setUserConfirmed); - ScreenHandler.GotoScreen(DGUSLCD_SCREEN_POPUP); + screen.sendInfoScreen(F("Please confirm."), nullptr, msg, nullptr, true, true, false, true); + screen.setupConfirmAction(setUserConfirmed); + screen.gotoScreen(DGUS_SCREEN_POPUP); } - else if (ScreenHandler.getCurrentScreen() == DGUSLCD_SCREEN_POPUP) { - ScreenHandler.SetupConfirmAction(nullptr); - ScreenHandler.PopToOldScreen(); + else if (screen.getCurrentScreen() == DGUS_SCREEN_POPUP) { + screen.setupConfirmAction(nullptr); + screen.popToOldScreen(); } } - void onStatusChanged(const char * const msg) { ScreenHandler.setstatusmessage(msg); } + void onStatusChanged(const char * const msg) { screen.setStatusMessage(msg); } void onHomingStart() {} void onHomingDone() {} @@ -136,7 +136,7 @@ namespace ExtUI { } void onPowerLossResume() { // Called on resume from power-loss - IF_DISABLED(DGUS_LCD_UI_MKS, ScreenHandler.GotoScreen(DGUSLCD_SCREEN_POWER_LOSS)); + IF_DISABLED(DGUS_LCD_UI_MKS, screen.gotoScreen(DGUS_SCREEN_POWER_LOSS)); } #endif @@ -145,22 +145,22 @@ namespace ExtUI { // Called for temperature PID tuning result switch (rst) { case PID_STARTED: - ScreenHandler.setstatusmessage(GET_TEXT_F(MSG_PID_AUTOTUNE)); + screen.setStatusMessage(GET_TEXT_F(MSG_PID_AUTOTUNE)); break; case PID_BAD_HEATER_ID: - ScreenHandler.setstatusmessage(GET_TEXT_F(MSG_PID_BAD_HEATER_ID)); + screen.setStatusMessage(GET_TEXT_F(MSG_PID_BAD_HEATER_ID)); break; case PID_TEMP_TOO_HIGH: - ScreenHandler.setstatusmessage(GET_TEXT_F(MSG_PID_TEMP_TOO_HIGH)); + screen.setStatusMessage(GET_TEXT_F(MSG_PID_TEMP_TOO_HIGH)); break; case PID_TUNING_TIMEOUT: - ScreenHandler.setstatusmessage(GET_TEXT_F(MSG_PID_TIMEOUT)); + screen.setStatusMessage(GET_TEXT_F(MSG_PID_TIMEOUT)); break; case PID_DONE: - ScreenHandler.setstatusmessage(GET_TEXT_F(MSG_PID_AUTOTUNE_DONE)); + screen.setStatusMessage(GET_TEXT_F(MSG_PID_AUTOTUNE_DONE)); break; } - ScreenHandler.GotoScreen(DGUSLCD_SCREEN_MAIN); + screen.gotoScreen(DGUS_SCREEN_MAIN); } #endif diff --git a/Marlin/src/lcd/extui/dgus/fysetc/DGUSDisplayDef.cpp b/Marlin/src/lcd/extui/dgus/fysetc/DGUSDisplayDef.cpp index 6b670368b656..08d5387ceff3 100644 --- a/Marlin/src/lcd/extui/dgus/fysetc/DGUSDisplayDef.cpp +++ b/Marlin/src/lcd/extui/dgus/fysetc/DGUSDisplayDef.cpp @@ -289,28 +289,28 @@ const uint16_t VPList_Z_Offset[] PROGMEM = { }; const struct VPMapping VPMap[] PROGMEM = { - { DGUSLCD_SCREEN_BOOT, VPList_Boot }, - { DGUSLCD_SCREEN_MAIN, VPList_Main }, - { DGUSLCD_SCREEN_TEMPERATURE, VPList_Temp }, - { DGUSLCD_SCREEN_STATUS, VPList_Status }, - { DGUSLCD_SCREEN_STATUS2, VPList_Status2 }, - { DGUSLCD_SCREEN_PREHEAT, VPList_Preheat }, - { DGUSLCD_SCREEN_MANUALMOVE, VPList_ManualMove }, - { DGUSLCD_SCREEN_MANUALEXTRUDE, VPList_ManualExtrude }, - { DGUSLCD_SCREEN_FILAMENT_HEATING, VPList_Filament_heating }, - { DGUSLCD_SCREEN_FILAMENT_LOADING, VPList_Filament_load_unload }, - { DGUSLCD_SCREEN_FILAMENT_UNLOADING, VPList_Filament_load_unload }, - { DGUSLCD_SCREEN_SDPRINTMANIPULATION, VPList_SD_PrintManipulation }, - { DGUSLCD_SCREEN_SDFILELIST, VPList_SDFileList }, - { DGUSLCD_SCREEN_SDPRINTTUNE, VPList_SDPrintTune }, - { DGUSLCD_SCREEN_WAITING, VPList_PIDTuningWaiting }, - { DGUSLCD_SCREEN_FLC_PREHEAT, VPList_FLCPreheat }, - { DGUSLCD_SCREEN_FLC_PRINTING, VPList_FLCPrinting }, - { DGUSLCD_SCREEN_Z_OFFSET, VPList_Z_Offset }, - { DGUSLCD_SCREEN_STEPPERMM, VPList_StepPerMM }, - { DGUSLCD_SCREEN_PID_E, VPList_PIDE0 }, - { DGUSLCD_SCREEN_PID_BED, VPList_PIDBED }, - { DGUSLCD_SCREEN_INFOS, VPList_Infos }, + { DGUS_SCREEN_BOOT, VPList_Boot }, + { DGUS_SCREEN_MAIN, VPList_Main }, + { DGUS_SCREEN_TEMPERATURE, VPList_Temp }, + { DGUS_SCREEN_STATUS, VPList_Status }, + { DGUS_SCREEN_STATUS2, VPList_Status2 }, + { DGUS_SCREEN_PREHEAT, VPList_Preheat }, + { DGUS_SCREEN_MANUALMOVE, VPList_ManualMove }, + { DGUS_SCREEN_MANUALEXTRUDE, VPList_ManualExtrude }, + { DGUS_SCREEN_FILAMENT_HEATING, VPList_Filament_heating }, + { DGUS_SCREEN_FILAMENT_LOADING, VPList_Filament_load_unload }, + { DGUS_SCREEN_FILAMENT_UNLOADING, VPList_Filament_load_unload }, + { DGUS_SCREEN_SDPRINTMANIPULATION, VPList_SD_PrintManipulation }, + { DGUS_SCREEN_SDFILELIST, VPList_SDFileList }, + { DGUS_SCREEN_SDPRINTTUNE, VPList_SDPrintTune }, + { DGUS_SCREEN_WAITING, VPList_PIDTuningWaiting }, + { DGUS_SCREEN_FLC_PREHEAT, VPList_FLCPreheat }, + { DGUS_SCREEN_FLC_PRINTING, VPList_FLCPrinting }, + { DGUS_SCREEN_Z_OFFSET, VPList_Z_Offset }, + { DGUS_SCREEN_STEPPERMM, VPList_StepPerMM }, + { DGUS_SCREEN_PID_E, VPList_PIDE0 }, + { DGUS_SCREEN_PID_BED, VPList_PIDBED }, + { DGUS_SCREEN_INFOS, VPList_Infos }, { 0 , nullptr } // List is terminated with an nullptr as table entry. }; @@ -318,159 +318,159 @@ const char MarlinVersion[] PROGMEM = SHORT_BUILD_VERSION; const struct DGUS_VP_Variable ListOfVP[] PROGMEM = { // Helper to detect touch events - VPHELPER(VP_SCREENCHANGE, nullptr, ScreenHandler.ScreenChangeHook, nullptr), - VPHELPER(VP_SCREENCHANGE_ASK, nullptr, ScreenHandler.ScreenChangeHookIfIdle, nullptr), + VPHELPER(VP_SCREENCHANGE, nullptr, screen.screenChangeHook, nullptr), + VPHELPER(VP_SCREENCHANGE_ASK, nullptr, screen.screenChangeHookIfIdle, nullptr), #if HAS_MEDIA - VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, ScreenHandler.ScreenChangeHookIfSD, nullptr), + VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, screen.screenChangeHookIfSD, nullptr), #endif - VPHELPER(VP_CONFIRMED, nullptr, ScreenHandler.ScreenConfirmedOK, nullptr), + VPHELPER(VP_CONFIRMED, nullptr, screen.screenConfirmedOK, nullptr), - VPHELPER(VP_TEMP_ALL_OFF, nullptr, ScreenHandler.HandleAllHeatersOff, nullptr), + VPHELPER(VP_TEMP_ALL_OFF, nullptr, screen.handleAllHeatersOff, nullptr), #if ENABLED(DGUS_UI_MOVE_DIS_OPTION) - VPHELPER(VP_MOVE_OPTION, &distanceToMove, ScreenHandler.HandleManualMoveOption, nullptr), + VPHELPER(VP_MOVE_OPTION, &distanceToMove, screen.handleManualMoveOption, nullptr), #endif #if ENABLED(DGUS_UI_MOVE_DIS_OPTION) - VPHELPER(VP_MOVE_X, &distanceToMove, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_MOVE_Y, &distanceToMove, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_MOVE_Z, &distanceToMove, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_HOME_ALL, &distanceToMove, ScreenHandler.HandleManualMove, nullptr), + VPHELPER(VP_MOVE_X, &distanceToMove, screen.handleManualMove, nullptr), + VPHELPER(VP_MOVE_Y, &distanceToMove, screen.handleManualMove, nullptr), + VPHELPER(VP_MOVE_Z, &distanceToMove, screen.handleManualMove, nullptr), + VPHELPER(VP_HOME_ALL, &distanceToMove, screen.handleManualMove, nullptr), #else - VPHELPER(VP_MOVE_X, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_MOVE_Y, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_MOVE_Z, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_HOME_ALL, nullptr, ScreenHandler.HandleManualMove, nullptr), + VPHELPER(VP_MOVE_X, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_MOVE_Y, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_MOVE_Z, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_HOME_ALL, nullptr, screen.handleManualMove, nullptr), #endif - VPHELPER(VP_MOTOR_LOCK_UNLOK, nullptr, ScreenHandler.HandleMotorLockUnlock, nullptr), + VPHELPER(VP_MOTOR_LOCK_UNLOK, nullptr, screen.handleMotorLockUnlock, nullptr), #if ENABLED(POWER_LOSS_RECOVERY) - VPHELPER(VP_POWER_LOSS_RECOVERY, nullptr, ScreenHandler.HandlePowerLossRecovery, nullptr), + VPHELPER(VP_POWER_LOSS_RECOVERY, nullptr, screen.handlePowerLossRecovery, nullptr), #endif - VPHELPER(VP_SETTINGS, nullptr, ScreenHandler.HandleSettings, nullptr), + VPHELPER(VP_SETTINGS, nullptr, screen.handleSettings, nullptr), #if ENABLED(SINGLE_Z_CALIBRATION) - VPHELPER(VP_Z_CALIBRATE, nullptr, ScreenHandler.HandleZCalibration, nullptr), + VPHELPER(VP_Z_CALIBRATE, nullptr, screen.handleZCalibration, nullptr), #endif #if ENABLED(FIRST_LAYER_CAL) - VPHELPER(VP_Z_FIRST_LAYER_CAL, nullptr, ScreenHandler.HandleFirstLayerCal, nullptr), + VPHELPER(VP_Z_FIRST_LAYER_CAL, nullptr, screen.handleFirstLayerCal, nullptr), #endif - { .VP = VP_MARLIN_VERSION, .memadr = (void*)MarlinVersion, .size = VP_MARLIN_VERSION_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, + { .VP = VP_MARLIN_VERSION, .memadr = (void*)MarlinVersion, .size = VP_MARLIN_VERSION_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, // M117 LCD String (We don't need the string in memory but "just" push it to the display on demand, hence the nullptr - { .VP = VP_M117, .memadr = nullptr, .size = VP_M117_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplay }, + { .VP = VP_M117, .memadr = nullptr, .size = VP_M117_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplay }, // Temperature Data #if HAS_HOTEND - VPHELPER(VP_T_E0_Is, &thermalManager.temp_hotend[0].celsius, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<0>), - VPHELPER(VP_T_E0_Set, &thermalManager.temp_hotend[0].target, ScreenHandler.HandleTemperatureChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Flowrate_E0, &planner.flow_percentage[ExtUI::extruder_t::E0], ScreenHandler.HandleFlowRateChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_EPos, &destination.e, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), - VPHELPER(VP_MOVE_E0, nullptr, ScreenHandler.HandleManualExtrude, nullptr), - VPHELPER(VP_E0_CONTROL, &thermalManager.temp_hotend[0].target, ScreenHandler.HandleHeaterControl, nullptr), - VPHELPER(VP_E0_STATUS, &thermalManager.temp_hotend[0].target, nullptr, ScreenHandler.DGUSLCD_SendHeaterStatusToDisplay), + VPHELPER(VP_T_E0_Is, &thermalManager.temp_hotend[0].celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>), + VPHELPER(VP_T_E0_Set, &thermalManager.temp_hotend[0].target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_Flowrate_E0, &planner.flow_percentage[ExtUI::extruder_t::E0], screen.handleFlowRateChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_EPos, &destination.e, nullptr, screen.sendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_MOVE_E0, nullptr, screen.handleManualExtrude, nullptr), + VPHELPER(VP_E0_CONTROL, &thermalManager.temp_hotend[0].target, screen.handleHeaterControl, nullptr), + VPHELPER(VP_E0_STATUS, &thermalManager.temp_hotend[0].target, nullptr, screen.sendHeaterStatusToDisplay), #if ENABLED(DGUS_PREHEAT_UI) - VPHELPER(VP_E0_BED_PREHEAT, nullptr, ScreenHandler.HandlePreheat, nullptr), + VPHELPER(VP_E0_BED_PREHEAT, nullptr, screen.handlePreheat, nullptr), #endif #if ENABLED(PIDTEMP) - VPHELPER(VP_E0_PID_P, &thermalManager.temp_hotend[0].pid.Kp, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_E0_PID_I, &thermalManager.temp_hotend[0].pid.Ki, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_E0_PID_D, &thermalManager.temp_hotend[0].pid.Kd, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_PID_AUTOTUNE_E0, nullptr, ScreenHandler.HandlePIDAutotune, nullptr), + VPHELPER(VP_E0_PID_P, &thermalManager.temp_hotend[0].pid.Kp, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_E0_PID_I, &thermalManager.temp_hotend[0].pid.Ki, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_E0_PID_D, &thermalManager.temp_hotend[0].pid.Kd, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_PID_AUTOTUNE_E0, nullptr, screen.handlePIDAutotune, nullptr), #endif #if ENABLED(DGUS_FILAMENT_LOADUNLOAD) - VPHELPER(VP_E0_FILAMENT_LOAD_UNLOAD, nullptr, ScreenHandler.HandleFilamentOption, ScreenHandler.HandleFilamentLoadUnload), + VPHELPER(VP_E0_FILAMENT_LOAD_UNLOAD, nullptr, screen.handleFilamentOption, screen.handleFilamentLoadUnload), #endif #endif #if HAS_MULTI_HOTEND - VPHELPER(VP_T_E1_Is, &thermalManager.temp_hotend[1].celsius, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<0>), - VPHELPER(VP_T_E1_Set, &thermalManager.temp_hotend[1].target, ScreenHandler.HandleTemperatureChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Flowrate_E1, &planner.flow_percentage[ExtUI::extruder_t::E1], ScreenHandler.HandleFlowRateChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), // ERROR: Flow is per-extruder, not per-hotend - VPHELPER(VP_MOVE_E1, nullptr, ScreenHandler.HandleManualExtrude, nullptr), - VPHELPER(VP_E1_CONTROL, &thermalManager.temp_hotend[1].target, ScreenHandler.HandleHeaterControl, nullptr), - VPHELPER(VP_E1_STATUS, &thermalManager.temp_hotend[1].target, nullptr, ScreenHandler.DGUSLCD_SendHeaterStatusToDisplay), + VPHELPER(VP_T_E1_Is, &thermalManager.temp_hotend[1].celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>), + VPHELPER(VP_T_E1_Set, &thermalManager.temp_hotend[1].target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_Flowrate_E1, &planner.flow_percentage[ExtUI::extruder_t::E1], screen.handleFlowRateChanged, screen.sendWordValueToDisplay), // ERROR: Flow is per-extruder, not per-hotend + VPHELPER(VP_MOVE_E1, nullptr, screen.handleManualExtrude, nullptr), + VPHELPER(VP_E1_CONTROL, &thermalManager.temp_hotend[1].target, screen.handleHeaterControl, nullptr), + VPHELPER(VP_E1_STATUS, &thermalManager.temp_hotend[1].target, nullptr, screen.sendHeaterStatusToDisplay), #if ENABLED(PIDTEMP) - VPHELPER(VP_PID_AUTOTUNE_E1, nullptr, ScreenHandler.HandlePIDAutotune, nullptr), + VPHELPER(VP_PID_AUTOTUNE_E1, nullptr, screen.handlePIDAutotune, nullptr), #endif - VPHELPER(VP_E1_FILAMENT_LOAD_UNLOAD, nullptr, ScreenHandler.HandleFilamentOption, ScreenHandler.HandleFilamentLoadUnload), + VPHELPER(VP_E1_FILAMENT_LOAD_UNLOAD, nullptr, screen.handleFilamentOption, screen.handleFilamentLoadUnload), #endif #if HAS_HEATED_BED - VPHELPER(VP_T_Bed_Is, &thermalManager.temp_bed.celsius, nullptr, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_T_Bed_Set, &thermalManager.temp_bed.target, ScreenHandler.HandleTemperatureChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_BED_CONTROL, &thermalManager.temp_bed.target, ScreenHandler.HandleHeaterControl, nullptr), - VPHELPER(VP_BED_STATUS, &thermalManager.temp_bed.target, nullptr, ScreenHandler.DGUSLCD_SendHeaterStatusToDisplay), + VPHELPER(VP_T_Bed_Is, &thermalManager.temp_bed.celsius, nullptr, screen.sendWordValueToDisplay), + VPHELPER(VP_T_Bed_Set, &thermalManager.temp_bed.target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_BED_CONTROL, &thermalManager.temp_bed.target, screen.handleHeaterControl, nullptr), + VPHELPER(VP_BED_STATUS, &thermalManager.temp_bed.target, nullptr, screen.sendHeaterStatusToDisplay), #if ENABLED(PIDTEMPBED) - VPHELPER(VP_BED_PID_P, &thermalManager.temp_bed.pid.Kp, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_BED_PID_I, &thermalManager.temp_bed.pid.Ki, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_BED_PID_D, &thermalManager.temp_bed.pid.Kd, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_PID_AUTOTUNE_BED, nullptr, ScreenHandler.HandlePIDAutotune, nullptr), + VPHELPER(VP_BED_PID_P, &thermalManager.temp_bed.pid.Kp, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_BED_PID_I, &thermalManager.temp_bed.pid.Ki, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_BED_PID_D, &thermalManager.temp_bed.pid.Kd, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_PID_AUTOTUNE_BED, nullptr, screen.handlePIDAutotune, nullptr), #endif #endif // Fan Data #if HAS_FAN #define FAN_VPHELPER(N) \ - VPHELPER(VP_Fan##N##_Percentage, &thermalManager.fan_speed[N], ScreenHandler.DGUSLCD_PercentageToUint8, ScreenHandler.DGUSLCD_SendPercentageToDisplay), \ - VPHELPER(VP_FAN##N##_CONTROL, &thermalManager.fan_speed[N], ScreenHandler.HandleFanControl, nullptr), \ - VPHELPER(VP_FAN##N##_STATUS, &thermalManager.fan_speed[N], nullptr, ScreenHandler.DGUSLCD_SendFanStatusToDisplay), + VPHELPER(VP_Fan##N##_Percentage, &thermalManager.fan_speed[N], screen.percentageToUint8, screen.sendPercentageToDisplay), \ + VPHELPER(VP_FAN##N##_CONTROL, &thermalManager.fan_speed[N], screen.handleFanControl, nullptr), \ + VPHELPER(VP_FAN##N##_STATUS, &thermalManager.fan_speed[N], nullptr, screen.sendFanStatusToDisplay), REPEAT(FAN_COUNT, FAN_VPHELPER) #endif // Feedrate - VPHELPER(VP_Feedrate_Percentage, &feedrate_percentage, ScreenHandler.DGUSLCD_SetValueDirectly, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_Feedrate_Percentage, &feedrate_percentage, screen.setValueDirectly, screen.sendWordValueToDisplay), // Position Data - VPHELPER(VP_XPos, ¤t_position.x, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), - VPHELPER(VP_YPos, ¤t_position.y, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), - VPHELPER(VP_ZPos, ¤t_position.z, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_XPos, ¤t_position.x, nullptr, screen.sendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_YPos, ¤t_position.y, nullptr, screen.sendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_ZPos, ¤t_position.z, nullptr, screen.sendFloatAsLongValueToDisplay<2>), // Print Progress - VPHELPER(VP_PrintProgress_Percentage, nullptr, nullptr, ScreenHandler.DGUSLCD_SendPrintProgressToDisplay), + VPHELPER(VP_PrintProgress_Percentage, nullptr, nullptr, screen.sendPrintProgressToDisplay), // Print Time - VPHELPER_STR(VP_PrintTime, nullptr, VP_PrintTime_LEN, nullptr, ScreenHandler.DGUSLCD_SendPrintTimeToDisplay), + VPHELPER_STR(VP_PrintTime, nullptr, VP_PrintTime_LEN, nullptr, screen.sendPrintTimeToDisplay), #if ENABLED(PRINTCOUNTER) - VPHELPER_STR(VP_PrintAccTime, nullptr, VP_PrintAccTime_LEN, nullptr, ScreenHandler.DGUSLCD_SendPrintAccTimeToDisplay), - VPHELPER_STR(VP_PrintsTotal, nullptr, VP_PrintsTotal_LEN, nullptr, ScreenHandler.DGUSLCD_SendPrintsTotalToDisplay), + VPHELPER_STR(VP_PrintAccTime, nullptr, VP_PrintAccTime_LEN, nullptr, screen.sendPrintAccTimeToDisplay), + VPHELPER_STR(VP_PrintsTotal, nullptr, VP_PrintsTotal_LEN, nullptr, screen.sendPrintsTotalToDisplay), #endif - VPHELPER(VP_X_STEP_PER_MM, &planner.settings.axis_steps_per_mm[X_AXIS], ScreenHandler.HandleStepPerMMChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), - VPHELPER(VP_Y_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Y_AXIS], ScreenHandler.HandleStepPerMMChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), - VPHELPER(VP_Z_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Z_AXIS], ScreenHandler.HandleStepPerMMChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_X_STEP_PER_MM, &planner.settings.axis_steps_per_mm[X_AXIS], screen.handleStepPerMMChanged, screen.sendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_Y_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Y_AXIS], screen.handleStepPerMMChanged, screen.sendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_Z_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Z_AXIS], screen.handleStepPerMMChanged, screen.sendFloatAsIntValueToDisplay<1>), #if HAS_EXTRUDERS - VPHELPER(VP_E0_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(0)], ScreenHandler.HandleStepPerMMExtruderChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_E0_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(0)], screen.handleStepPerMMExtruderChanged, screen.sendFloatAsIntValueToDisplay<1>), #if HAS_MULTI_EXTRUDER - VPHELPER(VP_E1_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(1)], ScreenHandler.HandleStepPerMMExtruderChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_E1_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(1)], screen.handleStepPerMMExtruderChanged, screen.sendFloatAsIntValueToDisplay<1>), #endif #endif // SDCard File listing. #if HAS_MEDIA - VPHELPER(VP_SD_ScrollEvent, nullptr, ScreenHandler.DGUSLCD_SD_ScrollFilelist, nullptr), - VPHELPER(VP_SD_FileSelected, nullptr, ScreenHandler.DGUSLCD_SD_FileSelected, nullptr), - VPHELPER(VP_SD_FileSelectConfirm, nullptr, ScreenHandler.DGUSLCD_SD_StartPrint, nullptr), - VPHELPER_STR(VP_SD_FileName0, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName1, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName2, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName3, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName4, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER(VP_SD_ResumePauseAbort, nullptr, ScreenHandler.DGUSLCD_SD_ResumePauseAbort, nullptr), - VPHELPER(VP_SD_AbortPrintConfirmed, nullptr, ScreenHandler.DGUSLCD_SD_ReallyAbort, nullptr), - VPHELPER(VP_SD_Print_Setting, nullptr, ScreenHandler.DGUSLCD_SD_PrintTune, nullptr), + VPHELPER(VP_SD_ScrollEvent, nullptr, screen.sdScrollFilelist, nullptr), + VPHELPER(VP_SD_FileSelected, nullptr, screen.sdFileSelected, nullptr), + VPHELPER(VP_SD_FileSelectConfirm, nullptr, screen.sdStartPrint, nullptr), + VPHELPER_STR(VP_SD_FileName0, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName1, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName2, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName3, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName4, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER(VP_SD_ResumePauseAbort, nullptr, screen.sdResumePauseAbort, nullptr), + VPHELPER(VP_SD_AbortPrintConfirmed, nullptr, screen.sdReallyAbort, nullptr), + VPHELPER(VP_SD_Print_Setting, nullptr, screen.sdPrintTune, nullptr), #if HAS_BED_PROBE - VPHELPER(VP_SD_Print_ProbeOffsetZ, &probe.offset.z, ScreenHandler.HandleProbeOffsetZChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<2>), + VPHELPER(VP_SD_Print_ProbeOffsetZ, &probe.offset.z, screen.handleProbeOffsetZChanged, screen.sendFloatAsIntValueToDisplay<2>), #if ENABLED(BABYSTEPPING) - VPHELPER(VP_SD_Print_LiveAdjustZ, nullptr, ScreenHandler.HandleLiveAdjustZ, nullptr), + VPHELPER(VP_SD_Print_LiveAdjustZ, nullptr, screen.handleLiveAdjustZ, nullptr), #endif #endif #endif #if ENABLED(DGUS_UI_WAITING) - VPHELPER(VP_WAITING_STATUS, nullptr, nullptr, ScreenHandler.DGUSLCD_SendWaitingStatusToDisplay), + VPHELPER(VP_WAITING_STATUS, nullptr, nullptr, screen.sendWaitingStatusToDisplay), #endif // Messages for the User, shared by the popup and the kill screen. They can't be autouploaded as we do not buffer content. - { .VP = VP_MSGSTR1, .memadr = nullptr, .size = VP_MSGSTR1_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, - { .VP = VP_MSGSTR2, .memadr = nullptr, .size = VP_MSGSTR2_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, - { .VP = VP_MSGSTR3, .memadr = nullptr, .size = VP_MSGSTR3_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, - { .VP = VP_MSGSTR4, .memadr = nullptr, .size = VP_MSGSTR4_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, + { .VP = VP_MSGSTR1, .memadr = nullptr, .size = VP_MSGSTR1_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, + { .VP = VP_MSGSTR2, .memadr = nullptr, .size = VP_MSGSTR2_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, + { .VP = VP_MSGSTR3, .memadr = nullptr, .size = VP_MSGSTR3_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, + { .VP = VP_MSGSTR4, .memadr = nullptr, .size = VP_MSGSTR4_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, VPHELPER(0, 0, 0, 0) // must be last entry. }; diff --git a/Marlin/src/lcd/extui/dgus/fysetc/DGUSDisplayDef.h b/Marlin/src/lcd/extui/dgus/fysetc/DGUSDisplayDef.h index 5deedc045079..70559f903196 100644 --- a/Marlin/src/lcd/extui/dgus/fysetc/DGUSDisplayDef.h +++ b/Marlin/src/lcd/extui/dgus/fysetc/DGUSDisplayDef.h @@ -23,35 +23,35 @@ #include "../DGUSDisplayDef.h" -enum DGUSLCD_Screens : uint8_t { - DGUSLCD_SCREEN_BOOT = 0, - DGUSLCD_SCREEN_MAIN = 1, - DGUSLCD_SCREEN_STATUS = 1, - DGUSLCD_SCREEN_STATUS2 = 1, - DGUSLCD_SCREEN_TEMPERATURE = 10, - DGUSLCD_SCREEN_PREHEAT = 18, - DGUSLCD_SCREEN_POWER_LOSS = 100, - DGUSLCD_SCREEN_MANUALMOVE = 192, - DGUSLCD_SCREEN_UTILITY = 120, - DGUSLCD_SCREEN_FILAMENT_HEATING = 146, - DGUSLCD_SCREEN_FILAMENT_LOADING = 148, - DGUSLCD_SCREEN_FILAMENT_UNLOADING = 158, - DGUSLCD_SCREEN_MANUALEXTRUDE = 160, - DGUSLCD_SCREEN_SDFILELIST = 71, - DGUSLCD_SCREEN_SDPRINTMANIPULATION = 73, - DGUSLCD_SCREEN_SDPRINTTUNE = 75, - DGUSLCD_SCREEN_FLC_PREHEAT = 94, - DGUSLCD_SCREEN_FLC_PRINTING = 96, - DGUSLCD_SCREEN_STEPPERMM = 212, - DGUSLCD_SCREEN_PID_E = 214, - DGUSLCD_SCREEN_PID_BED = 218, - DGUSLCD_SCREEN_Z_OFFSET = 222, - DGUSLCD_SCREEN_INFOS = 36, - DGUSLCD_SCREEN_CONFIRM = 240, - DGUSLCD_SCREEN_KILL = 250, ///< Kill Screen. Must always be 250 (to be able to display "Error wrong LCD Version") - DGUSLCD_SCREEN_WAITING = 251, - DGUSLCD_SCREEN_POPUP = 252, ///< special target, popup screen will also return this code to say "return to previous screen" - DGUSLCD_SCREEN_UNUSED = 255 +enum DGUS_ScreenID : uint8_t { + DGUS_SCREEN_BOOT = 0, + DGUS_SCREEN_MAIN = 1, + DGUS_SCREEN_STATUS = 1, + DGUS_SCREEN_STATUS2 = 1, + DGUS_SCREEN_TEMPERATURE = 10, + DGUS_SCREEN_PREHEAT = 18, + DGUS_SCREEN_POWER_LOSS = 100, + DGUS_SCREEN_MANUALMOVE = 192, + DGUS_SCREEN_UTILITY = 120, + DGUS_SCREEN_FILAMENT_HEATING = 146, + DGUS_SCREEN_FILAMENT_LOADING = 148, + DGUS_SCREEN_FILAMENT_UNLOADING = 158, + DGUS_SCREEN_MANUALEXTRUDE = 160, + DGUS_SCREEN_SDFILELIST = 71, + DGUS_SCREEN_SDPRINTMANIPULATION = 73, + DGUS_SCREEN_SDPRINTTUNE = 75, + DGUS_SCREEN_FLC_PREHEAT = 94, + DGUS_SCREEN_FLC_PRINTING = 96, + DGUS_SCREEN_STEPPERMM = 212, + DGUS_SCREEN_PID_E = 214, + DGUS_SCREEN_PID_BED = 218, + DGUS_SCREEN_Z_OFFSET = 222, + DGUS_SCREEN_INFOS = 36, + DGUS_SCREEN_CONFIRM = 240, + DGUS_SCREEN_KILL = 250, ///< Kill Screen. Must always be 250 (to be able to display "Error wrong LCD Version") + DGUS_SCREEN_WAITING = 251, + DGUS_SCREEN_POPUP = 252, ///< special target, popup screen will also return this code to say "return to previous screen" + DGUS_SCREEN_UNUSED = 255 }; // Display Memory layout used (T5UID) diff --git a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp index aa83ee2a4ee2..768092633eda 100644 --- a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp @@ -44,7 +44,7 @@ extern ExtUI::FileList filelist; - void DGUSScreenHandler::DGUSLCD_SD_FileSelected(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::sdFileSelected(DGUS_VP_Variable &var, void *val_ptr) { uint16_t touched_nr = (int16_t)swap16(*(uint16_t*)val_ptr) + top_file; if (touched_nr > filelist.count()) return; if (!filelist.seek(touched_nr)) return; @@ -52,28 +52,28 @@ if (filelist.isDir()) { filelist.changeDir(filelist.filename()); top_file = 0; - ForceCompleteUpdate(); + forceCompleteUpdate(); return; } #if ENABLED(DGUS_PRINT_FILENAME) // Send print filename - dgusdisplay.WriteVariable(VP_SD_Print_Filename, filelist.filename(), VP_SD_FileName_LEN, true); + dgus.writeVariable(VP_SD_Print_Filename, filelist.filename(), VP_SD_FileName_LEN, true); #endif // Setup Confirmation screen file_to_print = touched_nr; - HandleUserConfirmationPopUp(VP_SD_FileSelectConfirm, nullptr, PSTR("Print file"), filelist.filename(), PSTR("from SD Card?"), true, true, false, true); + handleUserConfirmationPopUp(VP_SD_FileSelectConfirm, nullptr, PSTR("Print file"), filelist.filename(), PSTR("from SD Card?"), true, true, false, true); } - void DGUSScreenHandler::DGUSLCD_SD_StartPrint(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::sdStartPrint(DGUS_VP_Variable &var, void *val_ptr) { if (!filelist.seek(file_to_print)) return; ExtUI::printFile(filelist.shortFilename()); - GotoScreen(DGUSLCD_SCREEN_SDPRINTMANIPULATION); + gotoScreen(DGUS_SCREEN_SDPRINTMANIPULATION); } - void DGUSScreenHandler::DGUSLCD_SD_ResumePauseAbort(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::sdResumePauseAbort(DGUS_VP_Variable &var, void *val_ptr) { if (!ExtUI::isPrintingFromMedia()) return; // avoid race condition when user stays in this menu and printer finishes. switch (swap16(*(uint16_t*)val_ptr)) { @@ -85,19 +85,19 @@ case 1: // Pause - GotoScreen(DGUSLCD_SCREEN_SDPRINTMANIPULATION); + gotoScreen(DGUS_SCREEN_SDPRINTMANIPULATION); if (!ExtUI::isPrintingFromMediaPaused()) { ExtUI::pausePrint(); //ExtUI::mks_pausePrint(); } break; case 2: // Abort - HandleUserConfirmationPopUp(VP_SD_AbortPrintConfirmed, nullptr, PSTR("Abort printing"), filelist.filename(), PSTR("?"), true, true, false, true); + handleUserConfirmationPopUp(VP_SD_AbortPrintConfirmed, nullptr, PSTR("Abort printing"), filelist.filename(), PSTR("?"), true, true, false, true); break; } } - void DGUSScreenHandler::DGUSLCD_SD_SendFilename(DGUS_VP_Variable& var) { + void DGUSScreenHandler::sdSendFilename(DGUS_VP_Variable& var) { uint16_t target_line = (var.VP - VP_SD_FileName0) / VP_SD_FileName_LEN; if (target_line > DGUS_SD_FILESPERSCREEN) return; char tmpfilename[VP_SD_FileName_LEN + 1] = ""; @@ -106,49 +106,49 @@ if (filelist.seek(top_file + target_line)) { snprintf_P(tmpfilename, VP_SD_FileName_LEN, PSTR("%s%c"), filelist.filename(), filelist.isDir() ? '/' : 0); // snprintf_P(tmpfilename, VP_SD_FileName_LEN, PSTR("%s"), filelist.filename()); } - DGUSLCD_SendStringToDisplay(var); + sendStringToDisplay(var); } - void DGUSScreenHandler::SDCardInserted() { + void DGUSScreenHandler::sdCardInserted() { top_file = 0; filelist.refresh(); auto cs = getCurrentScreen(); - if (cs == DGUSLCD_SCREEN_MAIN || cs == DGUSLCD_SCREEN_STATUS) - GotoScreen(DGUSLCD_SCREEN_SDFILELIST); + if (cs == DGUS_SCREEN_MAIN || cs == DGUS_SCREEN_STATUS) + gotoScreen(DGUS_SCREEN_SDFILELIST); } - void DGUSScreenHandler::SDCardRemoved() { - if (current_screen == DGUSLCD_SCREEN_SDFILELIST - || (current_screen == DGUSLCD_SCREEN_CONFIRM && (ConfirmVP == VP_SD_AbortPrintConfirmed || ConfirmVP == VP_SD_FileSelectConfirm)) - || current_screen == DGUSLCD_SCREEN_SDPRINTMANIPULATION - ) GotoScreen(DGUSLCD_SCREEN_MAIN); + void DGUSScreenHandler::sdCardRemoved() { + if (current_screenID == DGUS_SCREEN_SDFILELIST + || (current_screenID == DGUS_SCREEN_CONFIRM && (confirmVP == VP_SD_AbortPrintConfirmed || confirmVP == VP_SD_FileSelectConfirm)) + || current_screenID == DGUS_SCREEN_SDPRINTMANIPULATION + ) gotoScreen(DGUS_SCREEN_MAIN); } #endif // HAS_MEDIA -void DGUSScreenHandler::ScreenChangeHook(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::screenChangeHook(DGUS_VP_Variable &var, void *val_ptr) { uint8_t *tmp = (uint8_t*)val_ptr; // The keycode in target is coded as , so 0x0100A means - // from screen 1 (main) to 10 (temperature). DGUSLCD_SCREEN_POPUP is special, + // from screen 1 (main) to 10 (temperature). DGUS_SCREEN_POPUP is special, // meaning "return to previous screen" - DGUSLCD_Screens target = (DGUSLCD_Screens)tmp[1]; + DGUS_ScreenID target = (DGUS_ScreenID)tmp[1]; - if (target == DGUSLCD_SCREEN_POPUP) { + if (target == DGUS_SCREEN_POPUP) { // Special handling for popup is to return to previous menu - if (current_screen == DGUSLCD_SCREEN_POPUP && confirm_action_cb) confirm_action_cb(); - PopToOldScreen(); + if (current_screenID == DGUS_SCREEN_POPUP && confirm_action_cb) confirm_action_cb(); + popToOldScreen(); return; } - UpdateNewScreen(target); + updateNewScreen(target); #ifdef DEBUG_DGUSLCD - if (!DGUSLCD_FindScreenVPMapList(target)) DEBUG_ECHOLNPGM("WARNING: No screen Mapping found for ", target); + if (!findScreenVPMapList(target)) DEBUG_ECHOLNPGM("WARNING: No screen Mapping found for ", target); #endif } -void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) { int16_t movevalue = swap16(*(uint16_t*)val_ptr); #if ENABLED(DGUS_UI_MOVE_DIS_OPTION) if (movevalue) { @@ -196,7 +196,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { char buf[6] = "G28 X"; buf[4] = axiscode; queue.enqueue_one_now(buf); - ForceCompleteUpdate(); + forceCompleteUpdate(); return; } else { @@ -219,14 +219,14 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { if (!old_relative_mode) queue.enqueue_now(F("G90")); } - ForceCompleteUpdate(); + forceCompleteUpdate(); cannotmove: return; } #if HAS_PID_HEATING - void DGUSScreenHandler::HandleTemperaturePIDChanged(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleTemperaturePIDChanged(DGUS_VP_Variable &var, void *val_ptr) { uint16_t rawvalue = swap16(*(uint16_t*)val_ptr); float value = (float)rawvalue / 10; float newvalue = 0; @@ -257,17 +257,17 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #endif // HAS_PID_HEATING #if ENABLED(BABYSTEPPING) - void DGUSScreenHandler::HandleLiveAdjustZ(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleLiveAdjustZ(DGUS_VP_Variable &var, void *val_ptr) { int16_t flag = swap16(*(uint16_t*)val_ptr), steps = flag ? -20 : 20; ExtUI::smartAdjustAxis_steps(steps, ExtUI::axis_t::Z, true); - ForceCompleteUpdate(); + forceCompleteUpdate(); } #endif #if ENABLED(DGUS_FILAMENT_LOADUNLOAD) - void DGUSScreenHandler::HandleFilamentOption(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleFilamentOption(DGUS_VP_Variable &var, void *val_ptr) { uint8_t e_temp = 0; filament_data.heated = false; uint16_t preheat_option = swap16(*(uint16_t*)val_ptr); @@ -315,7 +315,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { thermalManager.setTargetHotend(e_temp, ExtUI::extruder_t::E1); #endif #endif - GotoScreen(DGUSLCD_SCREEN_UTILITY); + gotoScreen(DGUS_SCREEN_UTILITY); } else { // Go to the preheat screen to show the heating progress switch (var.VP) { @@ -333,11 +333,11 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { break; #endif } - GotoScreen(DGUSLCD_SCREEN_FILAMENT_HEATING); + gotoScreen(DGUS_SCREEN_FILAMENT_HEATING); } } - void DGUSScreenHandler::HandleFilamentLoadUnload(DGUS_VP_Variable &var) { + void DGUSScreenHandler::handleFilamentLoadUnload(DGUS_VP_Variable &var) { if (filament_data.action <= 0) return; // If we close to the target temperature, we can start load or unload the filament @@ -347,14 +347,14 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { if (filament_data.action == 1) { // load filament if (!filament_data.heated) { - //GotoScreen(DGUSLCD_SCREEN_FILAMENT_LOADING); + //gotoScreen(DGUS_SCREEN_FILAMENT_LOADING); filament_data.heated = true; } movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder) + movevalue; } else { // unload filament if (!filament_data.heated) { - GotoScreen(DGUSLCD_SCREEN_FILAMENT_UNLOADING); + gotoScreen(DGUS_SCREEN_FILAMENT_UNLOADING); filament_data.heated = true; } // Before unloading extrude to prevent jamming @@ -372,14 +372,14 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #endif // DGUS_FILAMENT_LOADUNLOAD bool DGUSScreenHandler::loop() { - dgusdisplay.loop(); + dgus.loop(); const millis_t ms = millis(); static millis_t next_event_ms = 0; - if (!IsScreenComplete() || ELAPSED(ms, next_event_ms)) { + if (!isScreenComplete() || ELAPSED(ms, next_event_ms)) { next_event_ms = ms + DGUS_UPDATE_INTERVAL_MS; - UpdateScreenVPData(); + updateScreenVPData(); } #if ENABLED(SHOW_BOOTSCREEN) @@ -390,11 +390,11 @@ bool DGUSScreenHandler::loop() { if (!booted && ELAPSED(ms, BOOTSCREEN_TIMEOUT)) { booted = true; - GotoScreen(TERN0(POWER_LOSS_RECOVERY, recovery.valid()) ? DGUSLCD_SCREEN_POWER_LOSS : DGUSLCD_SCREEN_MAIN); + gotoScreen(TERN0(POWER_LOSS_RECOVERY, recovery.valid()) ? DGUS_SCREEN_POWER_LOSS : DGUS_SCREEN_MAIN); } #endif - return IsScreenComplete(); + return isScreenComplete(); } #endif // DGUS_LCD_UI_FYSETC diff --git a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.h b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.h index 73e3527d7e7c..16c5dec408d6 100644 --- a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.h +++ b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.h @@ -26,6 +26,6 @@ typedef DGUSScreenHandler DGUSScreenHandlerClass; #if ENABLED(POWER_LOSS_RECOVERY) - #define PLR_SCREEN_RECOVER DGUSLCD_SCREEN_SDPRINTMANIPULATION - #define PLR_SCREEN_CANCEL DGUSLCD_SCREEN_STATUS + #define PLR_SCREEN_RECOVER DGUS_SCREEN_SDPRINTMANIPULATION + #define PLR_SCREEN_CANCEL DGUS_SCREEN_STATUS #endif diff --git a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSDisplayDef.cpp b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSDisplayDef.cpp index c278179e3f27..d99a4fe4f688 100644 --- a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSDisplayDef.cpp +++ b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSDisplayDef.cpp @@ -286,28 +286,28 @@ const uint16_t VPList_Z_Offset[] PROGMEM = { }; const struct VPMapping VPMap[] PROGMEM = { - { DGUSLCD_SCREEN_BOOT, VPList_Boot }, - { DGUSLCD_SCREEN_MAIN, VPList_Main }, - { DGUSLCD_SCREEN_TEMPERATURE, VPList_Temp }, - { DGUSLCD_SCREEN_STATUS, VPList_Status }, - { DGUSLCD_SCREEN_STATUS2, VPList_Status2 }, - { DGUSLCD_SCREEN_PREHEAT, VPList_Preheat }, - { DGUSLCD_SCREEN_MANUALMOVE, VPList_ManualMove }, - { DGUSLCD_SCREEN_Z_OFFSET, VPList_Z_Offset }, - { DGUSLCD_SCREEN_MANUALEXTRUDE, VPList_ManualExtrude }, - { DGUSLCD_SCREEN_FILAMENT_HEATING, VPList_Filament_heating }, - { DGUSLCD_SCREEN_FILAMENT_LOADING, VPList_Filament_load_unload }, - { DGUSLCD_SCREEN_FILAMENT_UNLOADING, VPList_Filament_load_unload }, - { DGUSLCD_SCREEN_SDPRINTMANIPULATION, VPList_SD_PrintManipulation }, - { DGUSLCD_SCREEN_SDFILELIST, VPList_SDFileList }, - { DGUSLCD_SCREEN_SDPRINTTUNE, VPList_SDPrintTune }, - { DGUSLCD_SCREEN_WAITING, VPList_PIDTuningWaiting }, - { DGUSLCD_SCREEN_FLC_PREHEAT, VPList_FLCPreheat }, - { DGUSLCD_SCREEN_FLC_PRINTING, VPList_FLCPrinting }, - { DGUSLCD_SCREEN_STEPPERMM, VPList_StepPerMM }, - { DGUSLCD_SCREEN_PID_E, VPList_PIDE0 }, - { DGUSLCD_SCREEN_PID_BED, VPList_PIDBED }, - { DGUSLCD_SCREEN_INFOS, VPList_Infos }, + { DGUS_SCREEN_BOOT, VPList_Boot }, + { DGUS_SCREEN_MAIN, VPList_Main }, + { DGUS_SCREEN_TEMPERATURE, VPList_Temp }, + { DGUS_SCREEN_STATUS, VPList_Status }, + { DGUS_SCREEN_STATUS2, VPList_Status2 }, + { DGUS_SCREEN_PREHEAT, VPList_Preheat }, + { DGUS_SCREEN_MANUALMOVE, VPList_ManualMove }, + { DGUS_SCREEN_Z_OFFSET, VPList_Z_Offset }, + { DGUS_SCREEN_MANUALEXTRUDE, VPList_ManualExtrude }, + { DGUS_SCREEN_FILAMENT_HEATING, VPList_Filament_heating }, + { DGUS_SCREEN_FILAMENT_LOADING, VPList_Filament_load_unload }, + { DGUS_SCREEN_FILAMENT_UNLOADING, VPList_Filament_load_unload }, + { DGUS_SCREEN_SDPRINTMANIPULATION, VPList_SD_PrintManipulation }, + { DGUS_SCREEN_SDFILELIST, VPList_SDFileList }, + { DGUS_SCREEN_SDPRINTTUNE, VPList_SDPrintTune }, + { DGUS_SCREEN_WAITING, VPList_PIDTuningWaiting }, + { DGUS_SCREEN_FLC_PREHEAT, VPList_FLCPreheat }, + { DGUS_SCREEN_FLC_PRINTING, VPList_FLCPrinting }, + { DGUS_SCREEN_STEPPERMM, VPList_StepPerMM }, + { DGUS_SCREEN_PID_E, VPList_PIDE0 }, + { DGUS_SCREEN_PID_BED, VPList_PIDBED }, + { DGUS_SCREEN_INFOS, VPList_Infos }, { 0 , nullptr } // List is terminated with an nullptr as table entry. }; @@ -315,155 +315,155 @@ const char MarlinVersion[] PROGMEM = SHORT_BUILD_VERSION; const struct DGUS_VP_Variable ListOfVP[] PROGMEM = { // Helper to detect touch events - VPHELPER(VP_SCREENCHANGE, nullptr, ScreenHandler.ScreenChangeHook, nullptr), - VPHELPER(VP_SCREENCHANGE_ASK, nullptr, ScreenHandler.ScreenChangeHookIfIdle, nullptr), + VPHELPER(VP_SCREENCHANGE, nullptr, screen.screenChangeHook, nullptr), + VPHELPER(VP_SCREENCHANGE_ASK, nullptr, screen.screenChangeHookIfIdle, nullptr), #if HAS_MEDIA - VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, ScreenHandler.ScreenChangeHookIfSD, nullptr), + VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, screen.screenChangeHookIfSD, nullptr), #endif - VPHELPER(VP_CONFIRMED, nullptr, ScreenHandler.ScreenConfirmedOK, nullptr), + VPHELPER(VP_CONFIRMED, nullptr, screen.screenConfirmedOK, nullptr), - VPHELPER(VP_TEMP_ALL_OFF, nullptr, ScreenHandler.HandleAllHeatersOff, nullptr), + VPHELPER(VP_TEMP_ALL_OFF, nullptr, screen.handleAllHeatersOff, nullptr), #if ENABLED(DGUS_UI_MOVE_DIS_OPTION) - VPHELPER(VP_MOVE_OPTION, &distanceToMove, ScreenHandler.HandleManualMoveOption, nullptr), + VPHELPER(VP_MOVE_OPTION, &distanceToMove, screen.handleManualMoveOption, nullptr), #endif #if ENABLED(DGUS_UI_MOVE_DIS_OPTION) - VPHELPER(VP_MOVE_X, &distanceToMove, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_MOVE_Y, &distanceToMove, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_MOVE_Z, &distanceToMove, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_HOME_ALL, &distanceToMove, ScreenHandler.HandleManualMove, nullptr), + VPHELPER(VP_MOVE_X, &distanceToMove, screen.handleManualMove, nullptr), + VPHELPER(VP_MOVE_Y, &distanceToMove, screen.handleManualMove, nullptr), + VPHELPER(VP_MOVE_Z, &distanceToMove, screen.handleManualMove, nullptr), + VPHELPER(VP_HOME_ALL, &distanceToMove, screen.handleManualMove, nullptr), #else - VPHELPER(VP_MOVE_X, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_MOVE_Y, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_MOVE_Z, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_HOME_ALL, nullptr, ScreenHandler.HandleManualMove, nullptr), + VPHELPER(VP_MOVE_X, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_MOVE_Y, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_MOVE_Z, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_HOME_ALL, nullptr, screen.handleManualMove, nullptr), #endif - VPHELPER(VP_MOTOR_LOCK_UNLOK, nullptr, ScreenHandler.HandleMotorLockUnlock, nullptr), + VPHELPER(VP_MOTOR_LOCK_UNLOK, nullptr, screen.handleMotorLockUnlock, nullptr), #if ENABLED(POWER_LOSS_RECOVERY) - VPHELPER(VP_POWER_LOSS_RECOVERY, nullptr, ScreenHandler.HandlePowerLossRecovery, nullptr), + VPHELPER(VP_POWER_LOSS_RECOVERY, nullptr, screen.handlePowerLossRecovery, nullptr), #endif - VPHELPER(VP_SETTINGS, nullptr, ScreenHandler.HandleSettings, nullptr), + VPHELPER(VP_SETTINGS, nullptr, screen.handleSettings, nullptr), #if ENABLED(SINGLE_Z_CALIBRATION) - VPHELPER(VP_Z_CALIBRATE, nullptr, ScreenHandler.HandleZCalibration, nullptr), + VPHELPER(VP_Z_CALIBRATE, nullptr, screen.handleZCalibration, nullptr), #endif #if ENABLED(FIRST_LAYER_CAL) - VPHELPER(VP_Z_FIRST_LAYER_CAL, nullptr, ScreenHandler.HandleFirstLayerCal, nullptr), + VPHELPER(VP_Z_FIRST_LAYER_CAL, nullptr, screen.handleFirstLayerCal, nullptr), #endif - { .VP = VP_MARLIN_VERSION, .memadr = (void*)MarlinVersion, .size = VP_MARLIN_VERSION_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, + { .VP = VP_MARLIN_VERSION, .memadr = (void*)MarlinVersion, .size = VP_MARLIN_VERSION_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, // M117 LCD String (We don't need the string in memory but "just" push it to the display on demand, hence the nullptr - { .VP = VP_M117, .memadr = nullptr, .size = VP_M117_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplay }, + { .VP = VP_M117, .memadr = nullptr, .size = VP_M117_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplay }, // Temperature Data #if HAS_HOTEND - VPHELPER(VP_T_E0_Is, &thermalManager.temp_hotend[0].celsius, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<0>), - VPHELPER(VP_T_E0_Set, &thermalManager.temp_hotend[0].target, ScreenHandler.HandleTemperatureChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Flowrate_E0, &planner.flow_percentage[ExtUI::extruder_t::E0], ScreenHandler.HandleFlowRateChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_EPos, &destination.e, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), - VPHELPER(VP_MOVE_E0, nullptr, ScreenHandler.HandleManualExtrude, nullptr), - VPHELPER(VP_E0_CONTROL, &thermalManager.temp_hotend[0].target, ScreenHandler.HandleHeaterControl, nullptr), - VPHELPER(VP_E0_STATUS, &thermalManager.temp_hotend[0].target, nullptr, ScreenHandler.DGUSLCD_SendHeaterStatusToDisplay), + VPHELPER(VP_T_E0_Is, &thermalManager.temp_hotend[0].celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>), + VPHELPER(VP_T_E0_Set, &thermalManager.temp_hotend[0].target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_Flowrate_E0, &planner.flow_percentage[ExtUI::extruder_t::E0], screen.handleFlowRateChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_EPos, &destination.e, nullptr, screen.sendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_MOVE_E0, nullptr, screen.handleManualExtrude, nullptr), + VPHELPER(VP_E0_CONTROL, &thermalManager.temp_hotend[0].target, screen.handleHeaterControl, nullptr), + VPHELPER(VP_E0_STATUS, &thermalManager.temp_hotend[0].target, nullptr, screen.sendHeaterStatusToDisplay), #if ENABLED(DGUS_PREHEAT_UI) - VPHELPER(VP_E0_BED_PREHEAT, nullptr, ScreenHandler.HandlePreheat, nullptr), + VPHELPER(VP_E0_BED_PREHEAT, nullptr, screen.handlePreheat, nullptr), #endif #if ENABLED(DGUS_FILAMENT_LOADUNLOAD) - VPHELPER(VP_E0_FILAMENT_LOAD_UNLOAD, nullptr, ScreenHandler.HandleFilamentOption, ScreenHandler.HandleFilamentLoadUnload), + VPHELPER(VP_E0_FILAMENT_LOAD_UNLOAD, nullptr, screen.handleFilamentOption, screen.handleFilamentLoadUnload), #endif #if ENABLED(PIDTEMP) - VPHELPER(VP_E0_PID_P, &thermalManager.temp_hotend[0].pid.Kp, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_E0_PID_I, &thermalManager.temp_hotend[0].pid.Ki, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_E0_PID_D, &thermalManager.temp_hotend[0].pid.Kd, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_PID_AUTOTUNE_E0, nullptr, ScreenHandler.HandlePIDAutotune, nullptr), + VPHELPER(VP_E0_PID_P, &thermalManager.temp_hotend[0].pid.Kp, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_E0_PID_I, &thermalManager.temp_hotend[0].pid.Ki, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_E0_PID_D, &thermalManager.temp_hotend[0].pid.Kd, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_PID_AUTOTUNE_E0, nullptr, screen.handlePIDAutotune, nullptr), #endif #endif #if HAS_MULTI_HOTEND - VPHELPER(VP_T_E1_Is, &thermalManager.temp_hotend[1].celsius, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<0>), - VPHELPER(VP_T_E1_Set, &thermalManager.temp_hotend[1].target, ScreenHandler.HandleTemperatureChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Flowrate_E1, nullptr, ScreenHandler.HandleFlowRateChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_MOVE_E1, nullptr, ScreenHandler.HandleManualExtrude, nullptr), - VPHELPER(VP_E1_CONTROL, &thermalManager.temp_hotend[1].target, ScreenHandler.HandleHeaterControl, nullptr), - VPHELPER(VP_E1_STATUS, &thermalManager.temp_hotend[1].target, nullptr, ScreenHandler.DGUSLCD_SendHeaterStatusToDisplay), + VPHELPER(VP_T_E1_Is, &thermalManager.temp_hotend[1].celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>), + VPHELPER(VP_T_E1_Set, &thermalManager.temp_hotend[1].target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_Flowrate_E1, nullptr, screen.handleFlowRateChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_MOVE_E1, nullptr, screen.handleManualExtrude, nullptr), + VPHELPER(VP_E1_CONTROL, &thermalManager.temp_hotend[1].target, screen.handleHeaterControl, nullptr), + VPHELPER(VP_E1_STATUS, &thermalManager.temp_hotend[1].target, nullptr, screen.sendHeaterStatusToDisplay), #endif #if HAS_HEATED_BED - VPHELPER(VP_T_Bed_Is, &thermalManager.temp_bed.celsius, nullptr, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_T_Bed_Set, &thermalManager.temp_bed.target, ScreenHandler.HandleTemperatureChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_BED_CONTROL, &thermalManager.temp_bed.target, ScreenHandler.HandleHeaterControl, nullptr), - VPHELPER(VP_BED_STATUS, &thermalManager.temp_bed.target, nullptr, ScreenHandler.DGUSLCD_SendHeaterStatusToDisplay), + VPHELPER(VP_T_Bed_Is, &thermalManager.temp_bed.celsius, nullptr, screen.sendWordValueToDisplay), + VPHELPER(VP_T_Bed_Set, &thermalManager.temp_bed.target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_BED_CONTROL, &thermalManager.temp_bed.target, screen.handleHeaterControl, nullptr), + VPHELPER(VP_BED_STATUS, &thermalManager.temp_bed.target, nullptr, screen.sendHeaterStatusToDisplay), #if ENABLED(PIDTEMPBED) - VPHELPER(VP_BED_PID_P, &thermalManager.temp_bed.pid.Kp, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_BED_PID_I, &thermalManager.temp_bed.pid.Ki, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_BED_PID_D, &thermalManager.temp_bed.pid.Kd, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_PID_AUTOTUNE_BED, nullptr, ScreenHandler.HandlePIDAutotune, nullptr), + VPHELPER(VP_BED_PID_P, &thermalManager.temp_bed.pid.Kp, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_BED_PID_I, &thermalManager.temp_bed.pid.Ki, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_BED_PID_D, &thermalManager.temp_bed.pid.Kd, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_PID_AUTOTUNE_BED, nullptr, screen.handlePIDAutotune, nullptr), #endif #endif // Fan Data #if HAS_FAN #define FAN_VPHELPER(N) \ - VPHELPER(VP_Fan##N##_Percentage, &thermalManager.fan_speed[N], ScreenHandler.DGUSLCD_PercentageToUint8, ScreenHandler.DGUSLCD_SendPercentageToDisplay), \ - VPHELPER(VP_FAN##N##_CONTROL, &thermalManager.fan_speed[N], ScreenHandler.HandleFanControl, nullptr), \ - VPHELPER(VP_FAN##N##_STATUS, &thermalManager.fan_speed[N], nullptr, ScreenHandler.DGUSLCD_SendFanStatusToDisplay), + VPHELPER(VP_Fan##N##_Percentage, &thermalManager.fan_speed[N], screen.percentageToUint8, screen.sendPercentageToDisplay), \ + VPHELPER(VP_FAN##N##_CONTROL, &thermalManager.fan_speed[N], screen.handleFanControl, nullptr), \ + VPHELPER(VP_FAN##N##_STATUS, &thermalManager.fan_speed[N], nullptr, screen.sendFanStatusToDisplay), REPEAT(FAN_COUNT, FAN_VPHELPER) #endif // Feedrate - VPHELPER(VP_Feedrate_Percentage, &feedrate_percentage, ScreenHandler.DGUSLCD_SetValueDirectly, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_Feedrate_Percentage, &feedrate_percentage, screen.setValueDirectly, screen.sendWordValueToDisplay), // Position Data - VPHELPER(VP_XPos, ¤t_position.x, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), - VPHELPER(VP_YPos, ¤t_position.y, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), - VPHELPER(VP_ZPos, ¤t_position.z, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_XPos, ¤t_position.x, nullptr, screen.sendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_YPos, ¤t_position.y, nullptr, screen.sendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_ZPos, ¤t_position.z, nullptr, screen.sendFloatAsLongValueToDisplay<2>), // Print Progress - VPHELPER(VP_PrintProgress_Percentage, nullptr, nullptr, ScreenHandler.DGUSLCD_SendPrintProgressToDisplay), + VPHELPER(VP_PrintProgress_Percentage, nullptr, nullptr, screen.sendPrintProgressToDisplay), // Print Time - VPHELPER_STR(VP_PrintTime, nullptr, VP_PrintTime_LEN, nullptr, ScreenHandler.DGUSLCD_SendPrintTimeToDisplay), + VPHELPER_STR(VP_PrintTime, nullptr, VP_PrintTime_LEN, nullptr, screen.sendPrintTimeToDisplay), #if ENABLED(PRINTCOUNTER) - VPHELPER_STR(VP_PrintAccTime, nullptr, VP_PrintAccTime_LEN, nullptr, ScreenHandler.DGUSLCD_SendPrintAccTimeToDisplay), - VPHELPER_STR(VP_PrintsTotal, nullptr, VP_PrintsTotal_LEN, nullptr, ScreenHandler.DGUSLCD_SendPrintsTotalToDisplay), + VPHELPER_STR(VP_PrintAccTime, nullptr, VP_PrintAccTime_LEN, nullptr, screen.sendPrintAccTimeToDisplay), + VPHELPER_STR(VP_PrintsTotal, nullptr, VP_PrintsTotal_LEN, nullptr, screen.sendPrintsTotalToDisplay), #endif - VPHELPER(VP_X_STEP_PER_MM, &planner.settings.axis_steps_per_mm[X_AXIS], ScreenHandler.HandleStepPerMMChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), - VPHELPER(VP_Y_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Y_AXIS], ScreenHandler.HandleStepPerMMChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), - VPHELPER(VP_Z_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Z_AXIS], ScreenHandler.HandleStepPerMMChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_X_STEP_PER_MM, &planner.settings.axis_steps_per_mm[X_AXIS], screen.handleStepPerMMChanged, screen.sendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_Y_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Y_AXIS], screen.handleStepPerMMChanged, screen.sendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_Z_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Z_AXIS], screen.handleStepPerMMChanged, screen.sendFloatAsIntValueToDisplay<1>), #if HAS_HOTEND - VPHELPER(VP_E0_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(0)], ScreenHandler.HandleStepPerMMExtruderChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_E0_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(0)], screen.handleStepPerMMExtruderChanged, screen.sendFloatAsIntValueToDisplay<1>), #if HAS_MULTI_HOTEND - VPHELPER(VP_E1_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(1)], ScreenHandler.HandleStepPerMMExtruderChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_E1_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(1)], screen.handleStepPerMMExtruderChanged, screen.sendFloatAsIntValueToDisplay<1>), #endif #endif // SDCard File listing. #if HAS_MEDIA - VPHELPER(VP_SD_ScrollEvent, nullptr, ScreenHandler.DGUSLCD_SD_ScrollFilelist, nullptr), - VPHELPER(VP_SD_FileSelected, nullptr, ScreenHandler.DGUSLCD_SD_FileSelected, nullptr), - VPHELPER(VP_SD_FileSelectConfirm, nullptr, ScreenHandler.DGUSLCD_SD_StartPrint, nullptr), - VPHELPER_STR(VP_SD_FileName0, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName1, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName2, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName3, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName4, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER(VP_SD_ResumePauseAbort, nullptr, ScreenHandler.DGUSLCD_SD_ResumePauseAbort, nullptr), - VPHELPER(VP_SD_AbortPrintConfirmed, nullptr, ScreenHandler.DGUSLCD_SD_ReallyAbort, nullptr), - VPHELPER(VP_SD_Print_Setting, nullptr, ScreenHandler.DGUSLCD_SD_PrintTune, nullptr), + VPHELPER(VP_SD_ScrollEvent, nullptr, screen.sdScrollFilelist, nullptr), + VPHELPER(VP_SD_FileSelected, nullptr, screen.sdFileSelected, nullptr), + VPHELPER(VP_SD_FileSelectConfirm, nullptr, screen.sdStartPrint, nullptr), + VPHELPER_STR(VP_SD_FileName0, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName1, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName2, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName3, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName4, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER(VP_SD_ResumePauseAbort, nullptr, screen.sdResumePauseAbort, nullptr), + VPHELPER(VP_SD_AbortPrintConfirmed, nullptr, screen.sdReallyAbort, nullptr), + VPHELPER(VP_SD_Print_Setting, nullptr, screen.sdPrintTune, nullptr), #if HAS_BED_PROBE - VPHELPER(VP_SD_Print_ProbeOffsetZ, &probe.offset.z, ScreenHandler.HandleProbeOffsetZChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<2>), + VPHELPER(VP_SD_Print_ProbeOffsetZ, &probe.offset.z, screen.handleProbeOffsetZChanged, screen.sendFloatAsIntValueToDisplay<2>), #if ENABLED(BABYSTEPPING) - VPHELPER(VP_SD_Print_LiveAdjustZ, nullptr, ScreenHandler.HandleLiveAdjustZ, nullptr), + VPHELPER(VP_SD_Print_LiveAdjustZ, nullptr, screen.handleLiveAdjustZ, nullptr), #endif #endif #endif #if ENABLED(DGUS_UI_WAITING) - VPHELPER(VP_WAITING_STATUS, nullptr, nullptr, ScreenHandler.DGUSLCD_SendWaitingStatusToDisplay), + VPHELPER(VP_WAITING_STATUS, nullptr, nullptr, screen.sendWaitingStatusToDisplay), #endif // Messages for the User, shared by the popup and the kill screen. They can't be autouploaded as we do not buffer content. - { .VP = VP_MSGSTR1, .memadr = nullptr, .size = VP_MSGSTR1_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, - { .VP = VP_MSGSTR2, .memadr = nullptr, .size = VP_MSGSTR2_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, - { .VP = VP_MSGSTR3, .memadr = nullptr, .size = VP_MSGSTR3_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, - { .VP = VP_MSGSTR4, .memadr = nullptr, .size = VP_MSGSTR4_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, + { .VP = VP_MSGSTR1, .memadr = nullptr, .size = VP_MSGSTR1_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, + { .VP = VP_MSGSTR2, .memadr = nullptr, .size = VP_MSGSTR2_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, + { .VP = VP_MSGSTR3, .memadr = nullptr, .size = VP_MSGSTR3_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, + { .VP = VP_MSGSTR4, .memadr = nullptr, .size = VP_MSGSTR4_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, VPHELPER(0, 0, 0, 0) // must be last entry. }; diff --git a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSDisplayDef.h b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSDisplayDef.h index 3b7199f07eb8..6270207990a7 100644 --- a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSDisplayDef.h +++ b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSDisplayDef.h @@ -23,35 +23,35 @@ #include "../DGUSDisplayDef.h" -enum DGUSLCD_Screens : uint8_t { - DGUSLCD_SCREEN_BOOT = 160, - DGUSLCD_SCREEN_MAIN = 1, - DGUSLCD_SCREEN_STATUS = 1, - DGUSLCD_SCREEN_STATUS2 = 1, - DGUSLCD_SCREEN_POWER_LOSS = 17, - DGUSLCD_SCREEN_TEMPERATURE = 40, - DGUSLCD_SCREEN_MANUALMOVE = 86, - DGUSLCD_SCREEN_PREHEAT = 48, - DGUSLCD_SCREEN_UTILITY = 70, - DGUSLCD_SCREEN_FILAMENT_HEATING = 80, - DGUSLCD_SCREEN_FILAMENT_LOADING = 76, - DGUSLCD_SCREEN_FILAMENT_UNLOADING = 82, - DGUSLCD_SCREEN_MANUALEXTRUDE = 84, - DGUSLCD_SCREEN_Z_OFFSET = 88, - DGUSLCD_SCREEN_SDFILELIST = 3, - DGUSLCD_SCREEN_SDPRINTMANIPULATION = 7, - DGUSLCD_SCREEN_SDPRINTTUNE = 9, - DGUSLCD_SCREEN_FLC_PREHEAT = 94, - DGUSLCD_SCREEN_FLC_PRINTING = 96, - DGUSLCD_SCREEN_STEPPERMM = 122, - DGUSLCD_SCREEN_PID_E = 126, - DGUSLCD_SCREEN_PID_BED = 128, - DGUSLCD_SCREEN_INFOS = 131, - DGUSLCD_SCREEN_CONFIRM = 240, - DGUSLCD_SCREEN_KILL = 250, ///< Kill Screen. Must always be 250 (to be able to display "Error wrong LCD Version") - DGUSLCD_SCREEN_WAITING = 251, - DGUSLCD_SCREEN_POPUP = 252, ///< special target, popup screen will also return this code to say "return to previous screen" - DGUSLCD_SCREEN_UNUSED = 255 +enum DGUS_ScreenID : uint8_t { + DGUS_SCREEN_BOOT = 160, + DGUS_SCREEN_MAIN = 1, + DGUS_SCREEN_STATUS = 1, + DGUS_SCREEN_STATUS2 = 1, + DGUS_SCREEN_POWER_LOSS = 17, + DGUS_SCREEN_TEMPERATURE = 40, + DGUS_SCREEN_MANUALMOVE = 86, + DGUS_SCREEN_PREHEAT = 48, + DGUS_SCREEN_UTILITY = 70, + DGUS_SCREEN_FILAMENT_HEATING = 80, + DGUS_SCREEN_FILAMENT_LOADING = 76, + DGUS_SCREEN_FILAMENT_UNLOADING = 82, + DGUS_SCREEN_MANUALEXTRUDE = 84, + DGUS_SCREEN_Z_OFFSET = 88, + DGUS_SCREEN_SDFILELIST = 3, + DGUS_SCREEN_SDPRINTMANIPULATION = 7, + DGUS_SCREEN_SDPRINTTUNE = 9, + DGUS_SCREEN_FLC_PREHEAT = 94, + DGUS_SCREEN_FLC_PRINTING = 96, + DGUS_SCREEN_STEPPERMM = 122, + DGUS_SCREEN_PID_E = 126, + DGUS_SCREEN_PID_BED = 128, + DGUS_SCREEN_INFOS = 131, + DGUS_SCREEN_CONFIRM = 240, + DGUS_SCREEN_KILL = 250, ///< Kill Screen. Must always be 250 (to be able to display "Error wrong LCD Version") + DGUS_SCREEN_WAITING = 251, + DGUS_SCREEN_POPUP = 252, ///< special target, popup screen will also return this code to say "return to previous screen" + DGUS_SCREEN_UNUSED = 255 }; // Display Memory layout used (T5UID) diff --git a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp index d0119d494f4b..f817453f1b0e 100644 --- a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.cpp @@ -44,7 +44,7 @@ extern ExtUI::FileList filelist; - void DGUSScreenHandler::DGUSLCD_SD_FileSelected(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::sdFileSelected(DGUS_VP_Variable &var, void *val_ptr) { uint16_t touched_nr = (int16_t)swap16(*(uint16_t*)val_ptr) + top_file; if (touched_nr > filelist.count()) return; if (!filelist.seek(touched_nr)) return; @@ -52,28 +52,28 @@ if (filelist.isDir()) { filelist.changeDir(filelist.filename()); top_file = 0; - ForceCompleteUpdate(); + forceCompleteUpdate(); return; } #if ENABLED(DGUS_PRINT_FILENAME) // Send print filename - dgusdisplay.WriteVariable(VP_SD_Print_Filename, filelist.filename(), VP_SD_FileName_LEN, true); + dgus.writeVariable(VP_SD_Print_Filename, filelist.filename(), VP_SD_FileName_LEN, true); #endif // Setup Confirmation screen file_to_print = touched_nr; - HandleUserConfirmationPopUp(VP_SD_FileSelectConfirm, nullptr, PSTR("Print file"), filelist.filename(), PSTR("from SD Card?"), true, true, false, true); + handleUserConfirmationPopUp(VP_SD_FileSelectConfirm, nullptr, PSTR("Print file"), filelist.filename(), PSTR("from SD Card?"), true, true, false, true); } - void DGUSScreenHandler::DGUSLCD_SD_StartPrint(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::sdStartPrint(DGUS_VP_Variable &var, void *val_ptr) { if (!filelist.seek(file_to_print)) return; ExtUI::printFile(filelist.shortFilename()); - GotoScreen(DGUSLCD_SCREEN_SDPRINTMANIPULATION); + gotoScreen(DGUS_SCREEN_SDPRINTMANIPULATION); } - void DGUSScreenHandler::DGUSLCD_SD_ResumePauseAbort(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::sdResumePauseAbort(DGUS_VP_Variable &var, void *val_ptr) { if (!ExtUI::isPrintingFromMedia()) return; // avoid race condition when user stays in this menu and printer finishes. switch (swap16(*(uint16_t*)val_ptr)) { @@ -85,19 +85,19 @@ case 1: // Pause - GotoScreen(MKSLCD_SCREEN_PAUSE); + gotoScreen(MKSLCD_SCREEN_PAUSE); if (!ExtUI::isPrintingFromMediaPaused()) { ExtUI::pausePrint(); //ExtUI::mks_pausePrint(); } break; case 2: // Abort - HandleUserConfirmationPopUp(VP_SD_AbortPrintConfirmed, nullptr, PSTR("Abort printing"), filelist.filename(), PSTR("?"), true, true, false, true); + handleUserConfirmationPopUp(VP_SD_AbortPrintConfirmed, nullptr, PSTR("Abort printing"), filelist.filename(), PSTR("?"), true, true, false, true); break; } } - void DGUSScreenHandler::DGUSLCD_SD_SendFilename(DGUS_VP_Variable& var) { + void DGUSScreenHandler::sdSendFilename(DGUS_VP_Variable& var) { uint16_t target_line = (var.VP - VP_SD_FileName0) / VP_SD_FileName_LEN; if (target_line > DGUS_SD_FILESPERSCREEN) return; char tmpfilename[VP_SD_FileName_LEN + 1] = ""; @@ -106,49 +106,49 @@ if (filelist.seek(top_file + target_line)) { snprintf_P(tmpfilename, VP_SD_FileName_LEN, PSTR("%s%c"), filelist.filename(), filelist.isDir() ? '/' : 0); // snprintf_P(tmpfilename, VP_SD_FileName_LEN, PSTR("%s"), filelist.filename()); } - DGUSLCD_SendStringToDisplay(var); + sendStringToDisplay(var); } - void DGUSScreenHandler::SDCardInserted() { + void DGUSScreenHandler::sdCardInserted() { top_file = 0; filelist.refresh(); auto cs = getCurrentScreen(); - if (cs == DGUSLCD_SCREEN_MAIN || cs == DGUSLCD_SCREEN_STATUS) - GotoScreen(DGUSLCD_SCREEN_SDFILELIST); + if (cs == DGUS_SCREEN_MAIN || cs == DGUS_SCREEN_STATUS) + gotoScreen(DGUS_SCREEN_SDFILELIST); } - void DGUSScreenHandler::SDCardRemoved() { - if (current_screen == DGUSLCD_SCREEN_SDFILELIST - || (current_screen == DGUSLCD_SCREEN_CONFIRM && (ConfirmVP == VP_SD_AbortPrintConfirmed || ConfirmVP == VP_SD_FileSelectConfirm)) - || current_screen == DGUSLCD_SCREEN_SDPRINTMANIPULATION - ) GotoScreen(DGUSLCD_SCREEN_MAIN); + void DGUSScreenHandler::sdCardRemoved() { + if (current_screenID == DGUS_SCREEN_SDFILELIST + || (current_screenID == DGUS_SCREEN_CONFIRM && (confirmVP == VP_SD_AbortPrintConfirmed || confirmVP == VP_SD_FileSelectConfirm)) + || current_screenID == DGUS_SCREEN_SDPRINTMANIPULATION + ) gotoScreen(DGUS_SCREEN_MAIN); } #endif // HAS_MEDIA -void DGUSScreenHandler::ScreenChangeHook(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::screenChangeHook(DGUS_VP_Variable &var, void *val_ptr) { uint8_t *tmp = (uint8_t*)val_ptr; // The keycode in target is coded as , so 0x0100A means - // from screen 1 (main) to 10 (temperature). DGUSLCD_SCREEN_POPUP is special, + // from screen 1 (main) to 10 (temperature). DGUS_SCREEN_POPUP is special, // meaning "return to previous screen" - DGUSLCD_Screens target = (DGUSLCD_Screens)tmp[1]; + DGUS_ScreenID target = (DGUS_ScreenID)tmp[1]; - if (target == DGUSLCD_SCREEN_POPUP) { + if (target == DGUS_SCREEN_POPUP) { // Special handling for popup is to return to previous menu - if (current_screen == DGUSLCD_SCREEN_POPUP && confirm_action_cb) confirm_action_cb(); - PopToOldScreen(); + if (current_screenID == DGUS_SCREEN_POPUP && confirm_action_cb) confirm_action_cb(); + popToOldScreen(); return; } - UpdateNewScreen(target); + updateNewScreen(target); #ifdef DEBUG_DGUSLCD - if (!DGUSLCD_FindScreenVPMapList(target)) DEBUG_ECHOLNPGM("WARNING: No screen Mapping found for ", target); + if (!findScreenVPMapList(target)) DEBUG_ECHOLNPGM("WARNING: No screen Mapping found for ", target); #endif } -void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) { int16_t movevalue = swap16(*(uint16_t*)val_ptr); #if ENABLED(DGUS_UI_MOVE_DIS_OPTION) if (movevalue) { @@ -196,7 +196,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { char buf[6] = "G28 X"; buf[4] = axiscode; queue.enqueue_one_now(buf); - ForceCompleteUpdate(); + forceCompleteUpdate(); return; } else { @@ -219,14 +219,14 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { if (!old_relative_mode) queue.enqueue_now(F("G90")); } - ForceCompleteUpdate(); + forceCompleteUpdate(); cannotmove: return; } #if HAS_PID_HEATING - void DGUSScreenHandler::HandleTemperaturePIDChanged(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleTemperaturePIDChanged(DGUS_VP_Variable &var, void *val_ptr) { uint16_t rawvalue = swap16(*(uint16_t*)val_ptr); float value = (float)rawvalue / 10; float newvalue = 0; @@ -257,17 +257,17 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #endif // HAS_PID_HEATING #if ENABLED(BABYSTEPPING) - void DGUSScreenHandler::HandleLiveAdjustZ(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleLiveAdjustZ(DGUS_VP_Variable &var, void *val_ptr) { int16_t flag = swap16(*(uint16_t*)val_ptr), steps = flag ? -20 : 20; ExtUI::smartAdjustAxis_steps(steps, ExtUI::axis_t::Z, true); - ForceCompleteUpdate(); + forceCompleteUpdate(); } #endif #if ENABLED(DGUS_FILAMENT_LOADUNLOAD) - void DGUSScreenHandler::HandleFilamentOption(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleFilamentOption(DGUS_VP_Variable &var, void *val_ptr) { uint8_t e_temp = 0; filament_data.heated = false; uint16_t preheat_option = swap16(*(uint16_t*)val_ptr); @@ -315,7 +315,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { thermalManager.setTargetHotend(e_temp, ExtUI::extruder_t::E1); #endif #endif - GotoScreen(DGUSLCD_SCREEN_UTILITY); + gotoScreen(DGUS_SCREEN_UTILITY); } else { // Go to the preheat screen to show the heating progress switch (var.VP) { @@ -333,11 +333,11 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { break; #endif } - GotoScreen(DGUSLCD_SCREEN_FILAMENT_HEATING); + gotoScreen(DGUS_SCREEN_FILAMENT_HEATING); } } - void DGUSScreenHandler::HandleFilamentLoadUnload(DGUS_VP_Variable &var) { + void DGUSScreenHandler::handleFilamentLoadUnload(DGUS_VP_Variable &var) { if (filament_data.action <= 0) return; // If we close to the target temperature, we can start load or unload the filament @@ -347,14 +347,14 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { if (filament_data.action == 1) { // load filament if (!filament_data.heated) { - //GotoScreen(DGUSLCD_SCREEN_FILAMENT_LOADING); + //gotoScreen(DGUS_SCREEN_FILAMENT_LOADING); filament_data.heated = true; } movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder) + movevalue; } else { // unload filament if (!filament_data.heated) { - GotoScreen(DGUSLCD_SCREEN_FILAMENT_UNLOADING); + gotoScreen(DGUS_SCREEN_FILAMENT_UNLOADING); filament_data.heated = true; } // Before unloading extrude to prevent jamming @@ -372,14 +372,14 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #endif // DGUS_FILAMENT_LOADUNLOAD bool DGUSScreenHandler::loop() { - dgusdisplay.loop(); + dgus.loop(); const millis_t ms = millis(); static millis_t next_event_ms = 0; - if (!IsScreenComplete() || ELAPSED(ms, next_event_ms)) { + if (!isScreenComplete() || ELAPSED(ms, next_event_ms)) { next_event_ms = ms + DGUS_UPDATE_INTERVAL_MS; - UpdateScreenVPData(); + updateScreenVPData(); } #if ENABLED(SHOW_BOOTSCREEN) @@ -390,11 +390,11 @@ bool DGUSScreenHandler::loop() { if (!booted && ELAPSED(ms, BOOTSCREEN_TIMEOUT)) { booted = true; - GotoScreen(TERN0(POWER_LOSS_RECOVERY, recovery.valid()) ? DGUSLCD_SCREEN_POWER_LOSS : DGUSLCD_SCREEN_MAIN); + gotoScreen(TERN0(POWER_LOSS_RECOVERY, recovery.valid()) ? DGUS_SCREEN_POWER_LOSS : DGUS_SCREEN_MAIN); } #endif - return IsScreenComplete(); + return isScreenComplete(); } #endif // DGUS_LCD_UI_HIPRECY diff --git a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.h b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.h index 73e3527d7e7c..16c5dec408d6 100644 --- a/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.h +++ b/Marlin/src/lcd/extui/dgus/hiprecy/DGUSScreenHandler.h @@ -26,6 +26,6 @@ typedef DGUSScreenHandler DGUSScreenHandlerClass; #if ENABLED(POWER_LOSS_RECOVERY) - #define PLR_SCREEN_RECOVER DGUSLCD_SCREEN_SDPRINTMANIPULATION - #define PLR_SCREEN_CANCEL DGUSLCD_SCREEN_STATUS + #define PLR_SCREEN_RECOVER DGUS_SCREEN_SDPRINTMANIPULATION + #define PLR_SCREEN_CANCEL DGUS_SCREEN_STATUS #endif diff --git a/Marlin/src/lcd/extui/dgus/mks/DGUSDisplayDef.cpp b/Marlin/src/lcd/extui/dgus/mks/DGUSDisplayDef.cpp index 8dee8e26d705..2b5b6d956e2a 100644 --- a/Marlin/src/lcd/extui/dgus/mks/DGUSDisplayDef.cpp +++ b/Marlin/src/lcd/extui/dgus/mks/DGUSDisplayDef.cpp @@ -500,301 +500,301 @@ const char Updata_Time[] PROGMEM = STRING_DISTRIBUTION_DATE; const struct DGUS_VP_Variable ListOfVP[] PROGMEM = { // Helper to detect touch events - VPHELPER(VP_SCREENCHANGE, nullptr, ScreenHandler.ScreenChangeHook, nullptr), - VPHELPER(VP_SCREENCHANGE_ASK, nullptr, ScreenHandler.ScreenChangeHookIfIdle, nullptr), + VPHELPER(VP_SCREENCHANGE, nullptr, screen.screenChangeHook, nullptr), + VPHELPER(VP_SCREENCHANGE_ASK, nullptr, screen.screenChangeHookIfIdle, nullptr), #if HAS_MEDIA - VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, ScreenHandler.ScreenChangeHookIfSD, nullptr), + VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, screen.screenChangeHookIfSD, nullptr), #endif - VPHELPER(VP_CONFIRMED, nullptr, ScreenHandler.ScreenConfirmedOK, nullptr), + VPHELPER(VP_CONFIRMED, nullptr, screen.screenConfirmedOK, nullptr), // Back Button - VPHELPER(VP_BACK_PAGE, nullptr, ScreenHandler.ScreenBackChange, nullptr), - VPHELPER(VP_TEMP_ALL_OFF, nullptr, ScreenHandler.HandleAllHeatersOff, nullptr), + VPHELPER(VP_BACK_PAGE, nullptr, screen.screenBackChange, nullptr), + VPHELPER(VP_TEMP_ALL_OFF, nullptr, screen.handleAllHeatersOff, nullptr), - VPHELPER(VP_MOVE_X, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_MOVE_Y, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_MOVE_Z, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_HOME_ALL, nullptr, ScreenHandler.HandleManualMove, nullptr), + VPHELPER(VP_MOVE_X, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_MOVE_Y, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_MOVE_Z, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_HOME_ALL, nullptr, screen.handleManualMove, nullptr), - VPHELPER(VP_X_HOME, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_Y_HOME, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_Z_HOME, nullptr, ScreenHandler.HandleManualMove, nullptr), + VPHELPER(VP_X_HOME, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_Y_HOME, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_Z_HOME, nullptr, screen.handleManualMove, nullptr), - VPHELPER(VP_MOVE_DISTANCE, &manualMoveStep, ScreenHandler.GetManualMovestep, nullptr), + VPHELPER(VP_MOVE_DISTANCE, &manualMoveStep, screen.getManualMovestep, nullptr), - VPHELPER(VP_MOTOR_LOCK_UNLOK, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_LEVEL_POINT, nullptr, ScreenHandler.ManualAssistLeveling, nullptr), + VPHELPER(VP_MOTOR_LOCK_UNLOK, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_LEVEL_POINT, nullptr, screen.manualAssistLeveling, nullptr), #if ENABLED(POWER_LOSS_RECOVERY) - VPHELPER(VP_POWER_LOSS_RECOVERY, nullptr, ScreenHandler.HandlePowerLossRecovery, nullptr), + VPHELPER(VP_POWER_LOSS_RECOVERY, nullptr, screen.handlePowerLossRecovery, nullptr), #endif - VPHELPER(VP_SETTINGS, nullptr, ScreenHandler.HandleSettings, nullptr), + VPHELPER(VP_SETTINGS, nullptr, screen.handleSettings, nullptr), #if ENABLED(SINGLE_Z_CALIBRATION) - VPHELPER(VP_Z_CALIBRATE, nullptr, ScreenHandler.HandleZCalibration, nullptr), + VPHELPER(VP_Z_CALIBRATE, nullptr, screen.handleZCalibration, nullptr), #endif #if ENABLED(FIRST_LAYER_CAL) - VPHELPER(VP_Z_FIRST_LAYER_CAL, nullptr, ScreenHandler.HandleFirstLayerCal, nullptr), + VPHELPER(VP_Z_FIRST_LAYER_CAL, nullptr, screen.handleFirstLayerCal, nullptr), #endif - {.VP = VP_MARLIN_VERSION, .memadr = (void *)MarlinVersion, .size = VP_MARLIN_VERSION_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM}, + {.VP = VP_MARLIN_VERSION, .memadr = (void *)MarlinVersion, .size = VP_MARLIN_VERSION_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM}, // M117 LCD String (We don't need the string in memory but "just" push it to the display on demand, hence the nullptr - {.VP = VP_M117, .memadr = nullptr, .size = VP_M117_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplay}, - {.VP = VP_MKS_H43_VERSION, .memadr = (void *)H43Version, .size = VP_MKS_H43_VERSION_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM}, - {.VP = VP_MKS_H43_UpdataVERSION, .memadr = (void *)Updata_Time, .size = VP_MKS_H43_VERSION_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM}, + {.VP = VP_M117, .memadr = nullptr, .size = VP_M117_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplay}, + {.VP = VP_MKS_H43_VERSION, .memadr = (void *)H43Version, .size = VP_MKS_H43_VERSION_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM}, + {.VP = VP_MKS_H43_UpdataVERSION, .memadr = (void *)Updata_Time, .size = VP_MKS_H43_VERSION_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM}, // Temperature Data #if HAS_HOTEND - VPHELPER(VP_T_E0_Is, &thermalManager.temp_hotend[0].celsius, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<0>), - VPHELPER(VP_T_E0_Set, &thermalManager.temp_hotend[0].target, ScreenHandler.HandleTemperatureChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Flowrate_E0, &planner.flow_percentage[ExtUI::extruder_t::E0], ScreenHandler.HandleFlowRateChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_EPos, &destination.e, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), - VPHELPER(VP_MOVE_E0, nullptr, ScreenHandler.HandleManualExtrude, nullptr), - VPHELPER(VP_E0_CONTROL, &thermalManager.temp_hotend[0].target, ScreenHandler.HandleHeaterControl, nullptr), - VPHELPER(VP_E0_STATUS, &thermalManager.temp_hotend[0].target, nullptr, ScreenHandler.DGUSLCD_SendHeaterStatusToDisplay), + VPHELPER(VP_T_E0_Is, &thermalManager.temp_hotend[0].celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>), + VPHELPER(VP_T_E0_Set, &thermalManager.temp_hotend[0].target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_Flowrate_E0, &planner.flow_percentage[ExtUI::extruder_t::E0], screen.handleFlowRateChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_EPos, &destination.e, nullptr, screen.sendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_MOVE_E0, nullptr, screen.handleManualExtrude, nullptr), + VPHELPER(VP_E0_CONTROL, &thermalManager.temp_hotend[0].target, screen.handleHeaterControl, nullptr), + VPHELPER(VP_E0_STATUS, &thermalManager.temp_hotend[0].target, nullptr, screen.sendHeaterStatusToDisplay), #if ENABLED(DGUS_PREHEAT_UI) - VPHELPER(VP_E0_BED_PREHEAT, nullptr, ScreenHandler.HandlePreheat, nullptr), + VPHELPER(VP_E0_BED_PREHEAT, nullptr, screen.handlePreheat, nullptr), #endif #if ENABLED(PIDTEMP) - VPHELPER(VP_E0_PID_P, &thermalManager.temp_hotend[0].pid.Kp, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_E0_PID_I, &thermalManager.temp_hotend[0].pid.Ki, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_E0_PID_D, &thermalManager.temp_hotend[0].pid.Kd, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_PID_AUTOTUNE_E0, nullptr, ScreenHandler.HandlePIDAutotune, nullptr), + VPHELPER(VP_E0_PID_P, &thermalManager.temp_hotend[0].pid.Kp, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_E0_PID_I, &thermalManager.temp_hotend[0].pid.Ki, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_E0_PID_D, &thermalManager.temp_hotend[0].pid.Kd, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_PID_AUTOTUNE_E0, nullptr, screen.handlePIDAutotune, nullptr), #endif #if ENABLED(DGUS_FILAMENT_LOADUNLOAD) - VPHELPER(VP_LOAD_Filament, nullptr, ScreenHandler.FilamentLoad, nullptr), - VPHELPER(VP_UNLOAD_Filament, nullptr, ScreenHandler.FilamentUnLoad, nullptr), - VPHELPER(VP_Filament_distance, &distanceFilament, ScreenHandler.GetManualFilament, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Filament_speed, &filamentSpeed_mm_s, ScreenHandler.GetManualFilamentSpeed, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_LOAD_Filament, nullptr, screen.filamentLoad, nullptr), + VPHELPER(VP_UNLOAD_Filament, nullptr, screen.filamentUnload, nullptr), + VPHELPER(VP_Filament_distance, &distanceFilament, screen.getManualFilament, screen.sendWordValueToDisplay), + VPHELPER(VP_Filament_speed, &filamentSpeed_mm_s, screen.getManualFilamentSpeed, screen.sendWordValueToDisplay), #endif #endif #if HAS_MULTI_HOTEND - VPHELPER(VP_T_E1_Is, &thermalManager.temp_hotend[1].celsius, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<0>), - VPHELPER(VP_T_E1_Set, &thermalManager.temp_hotend[1].target, ScreenHandler.HandleTemperatureChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Flowrate_E1, &planner.flow_percentage[ExtUI::extruder_t::E1], ScreenHandler.HandleFlowRateChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_MOVE_E1, nullptr, ScreenHandler.HandleManualExtrude, nullptr), - VPHELPER(VP_E1_CONTROL, &thermalManager.temp_hotend[1].target, ScreenHandler.HandleHeaterControl, nullptr), - VPHELPER(VP_E1_STATUS, &thermalManager.temp_hotend[1].target, nullptr, ScreenHandler.DGUSLCD_SendHeaterStatusToDisplay), + VPHELPER(VP_T_E1_Is, &thermalManager.temp_hotend[1].celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>), + VPHELPER(VP_T_E1_Set, &thermalManager.temp_hotend[1].target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_Flowrate_E1, &planner.flow_percentage[ExtUI::extruder_t::E1], screen.handleFlowRateChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_MOVE_E1, nullptr, screen.handleManualExtrude, nullptr), + VPHELPER(VP_E1_CONTROL, &thermalManager.temp_hotend[1].target, screen.handleHeaterControl, nullptr), + VPHELPER(VP_E1_STATUS, &thermalManager.temp_hotend[1].target, nullptr, screen.sendHeaterStatusToDisplay), #if ENABLED(DGUS_FILAMENT_LOADUNLOAD) - VPHELPER(VP_Filament_distance, &distanceFilament, ScreenHandler.GetManualFilament, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<0>), - VPHELPER(VP_Filament_speed, &filamentSpeed_mm_s, ScreenHandler.GetManualFilamentSpeed, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_Filament_distance, &distanceFilament, screen.getManualFilament, screen.sendFloatAsIntValueToDisplay<0>), + VPHELPER(VP_Filament_speed, &filamentSpeed_mm_s, screen.getManualFilamentSpeed, screen.sendWordValueToDisplay), #endif #if ENABLED(PIDTEMP) - VPHELPER(VP_PID_AUTOTUNE_E1, nullptr, ScreenHandler.HandlePIDAutotune, nullptr), + VPHELPER(VP_PID_AUTOTUNE_E1, nullptr, screen.handlePIDAutotune, nullptr), #endif - VPHELPER(VP_E1_FILAMENT_LOAD_UNLOAD, nullptr, ScreenHandler.HandleFilamentOption, ScreenHandler.HandleFilamentLoadUnload), + VPHELPER(VP_E1_FILAMENT_LOAD_UNLOAD, nullptr, screen.handleFilamentOption, screen.handleFilamentLoadUnload), #endif #if HAS_HEATED_BED - VPHELPER(VP_T_Bed_Is, &thermalManager.temp_bed.celsius, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<0>), - VPHELPER(VP_T_Bed_Set, &thermalManager.temp_bed.target, ScreenHandler.HandleTemperatureChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_BED_CONTROL, &thermalManager.temp_bed.target, ScreenHandler.HandleHeaterControl, nullptr), - VPHELPER(VP_BED_STATUS, &thermalManager.temp_bed.target, nullptr, ScreenHandler.DGUSLCD_SendHeaterStatusToDisplay), + VPHELPER(VP_T_Bed_Is, &thermalManager.temp_bed.celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>), + VPHELPER(VP_T_Bed_Set, &thermalManager.temp_bed.target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_BED_CONTROL, &thermalManager.temp_bed.target, screen.handleHeaterControl, nullptr), + VPHELPER(VP_BED_STATUS, &thermalManager.temp_bed.target, nullptr, screen.sendHeaterStatusToDisplay), #if ENABLED(PIDTEMPBED) - VPHELPER(VP_BED_PID_P, &thermalManager.temp_bed.pid.Kp, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_BED_PID_I, &thermalManager.temp_bed.pid.Ki, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_BED_PID_D, &thermalManager.temp_bed.pid.Kd, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_PID_AUTOTUNE_BED, nullptr, ScreenHandler.HandlePIDAutotune, nullptr), + VPHELPER(VP_BED_PID_P, &thermalManager.temp_bed.pid.Kp, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_BED_PID_I, &thermalManager.temp_bed.pid.Ki, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_BED_PID_D, &thermalManager.temp_bed.pid.Kd, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_PID_AUTOTUNE_BED, nullptr, screen.handlePIDAutotune, nullptr), #endif #endif // Fan Data #if HAS_FAN #define FAN_VPHELPER(N) \ - VPHELPER(VP_Fan##N##_Percentage, &thermalManager.fan_speed[N], ScreenHandler.DGUSLCD_SetUint8, ScreenHandler.DGUSLCD_SendFanToDisplay), \ - VPHELPER(VP_FAN##N##_CONTROL, &thermalManager.fan_speed[N], ScreenHandler.HandleFanControl, nullptr), \ - VPHELPER(VP_FAN##N##_STATUS, &thermalManager.fan_speed[N], nullptr, ScreenHandler.DGUSLCD_SendFanStatusToDisplay), + VPHELPER(VP_Fan##N##_Percentage, &thermalManager.fan_speed[N], screen.setUint8, screen.sendFanToDisplay), \ + VPHELPER(VP_FAN##N##_CONTROL, &thermalManager.fan_speed[N], screen.handleFanControl, nullptr), \ + VPHELPER(VP_FAN##N##_STATUS, &thermalManager.fan_speed[N], nullptr, screen.sendFanStatusToDisplay), REPEAT(FAN_COUNT, FAN_VPHELPER) #endif // Feedrate - VPHELPER(VP_Feedrate_Percentage, &feedrate_percentage, ScreenHandler.DGUSLCD_SetValueDirectly, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_Feedrate_Percentage, &feedrate_percentage, screen.setValueDirectly, screen.sendWordValueToDisplay), // Position Data - VPHELPER(VP_XPos, ¤t_position.x, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), - VPHELPER(VP_YPos, ¤t_position.y, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), - VPHELPER(VP_ZPos, ¤t_position.z, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_XPos, ¤t_position.x, nullptr, screen.sendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_YPos, ¤t_position.y, nullptr, screen.sendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_ZPos, ¤t_position.z, nullptr, screen.sendFloatAsLongValueToDisplay<2>), // Level Point Set - VPHELPER(VP_Level_Point_One_X, &mks_corner_offsets[0].x, ScreenHandler.HandleChangeLevelPoint, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Level_Point_One_Y, &mks_corner_offsets[0].y, ScreenHandler.HandleChangeLevelPoint, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Level_Point_Two_X, &mks_corner_offsets[1].x, ScreenHandler.HandleChangeLevelPoint, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Level_Point_Two_Y, &mks_corner_offsets[1].y, ScreenHandler.HandleChangeLevelPoint, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Level_Point_Three_X, &mks_corner_offsets[2].x, ScreenHandler.HandleChangeLevelPoint, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Level_Point_Three_Y, &mks_corner_offsets[2].y, ScreenHandler.HandleChangeLevelPoint, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Level_Point_Four_X, &mks_corner_offsets[3].x, ScreenHandler.HandleChangeLevelPoint, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Level_Point_Four_Y, &mks_corner_offsets[3].y, ScreenHandler.HandleChangeLevelPoint, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Level_Point_Five_X, &mks_corner_offsets[4].x, ScreenHandler.HandleChangeLevelPoint, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Level_Point_Five_Y, &mks_corner_offsets[4].y, ScreenHandler.HandleChangeLevelPoint, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_Level_Point_One_X, &mks_corner_offsets[0].x, screen.handleChangeLevelPoint, screen.sendWordValueToDisplay), + VPHELPER(VP_Level_Point_One_Y, &mks_corner_offsets[0].y, screen.handleChangeLevelPoint, screen.sendWordValueToDisplay), + VPHELPER(VP_Level_Point_Two_X, &mks_corner_offsets[1].x, screen.handleChangeLevelPoint, screen.sendWordValueToDisplay), + VPHELPER(VP_Level_Point_Two_Y, &mks_corner_offsets[1].y, screen.handleChangeLevelPoint, screen.sendWordValueToDisplay), + VPHELPER(VP_Level_Point_Three_X, &mks_corner_offsets[2].x, screen.handleChangeLevelPoint, screen.sendWordValueToDisplay), + VPHELPER(VP_Level_Point_Three_Y, &mks_corner_offsets[2].y, screen.handleChangeLevelPoint, screen.sendWordValueToDisplay), + VPHELPER(VP_Level_Point_Four_X, &mks_corner_offsets[3].x, screen.handleChangeLevelPoint, screen.sendWordValueToDisplay), + VPHELPER(VP_Level_Point_Four_Y, &mks_corner_offsets[3].y, screen.handleChangeLevelPoint, screen.sendWordValueToDisplay), + VPHELPER(VP_Level_Point_Five_X, &mks_corner_offsets[4].x, screen.handleChangeLevelPoint, screen.sendWordValueToDisplay), + VPHELPER(VP_Level_Point_Five_Y, &mks_corner_offsets[4].y, screen.handleChangeLevelPoint, screen.sendWordValueToDisplay), // Print Progress - VPHELPER(VP_PrintProgress_Percentage, nullptr, nullptr, ScreenHandler.DGUSLCD_SendPrintProgressToDisplay), + VPHELPER(VP_PrintProgress_Percentage, nullptr, nullptr, screen.sendPrintProgressToDisplay), // LCD Control - VPHELPER(VP_LCD_BLK, &lcd_default_light, ScreenHandler.LCD_BLK_Adjust, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_LCD_BLK, &lcd_default_light, screen.lcdBLKAdjust, screen.sendWordValueToDisplay), // SD File - Back - VPHELPER(VP_SD_FileSelect_Back, nullptr, ScreenHandler.SD_FileBack, nullptr), + VPHELPER(VP_SD_FileSelect_Back, nullptr, screen.sdFileBack, nullptr), // Print Time - VPHELPER_STR(VP_PrintTime, nullptr, VP_PrintTime_LEN, nullptr, ScreenHandler.DGUSLCD_SendPrintTimeToDisplay), + VPHELPER_STR(VP_PrintTime, nullptr, VP_PrintTime_LEN, nullptr, screen.sendPrintTimeToDisplay), #if ENABLED(PRINTCOUNTER) - VPHELPER_STR(VP_PrintAccTime, nullptr, VP_PrintAccTime_LEN, nullptr, ScreenHandler.DGUSLCD_SendPrintAccTimeToDisplay), - VPHELPER_STR(VP_PrintsTotal, nullptr, VP_PrintsTotal_LEN, nullptr, ScreenHandler.DGUSLCD_SendPrintsTotalToDisplay), + VPHELPER_STR(VP_PrintAccTime, nullptr, VP_PrintAccTime_LEN, nullptr, screen.sendPrintAccTimeToDisplay), + VPHELPER_STR(VP_PrintsTotal, nullptr, VP_PrintsTotal_LEN, nullptr, screen.sendPrintsTotalToDisplay), #endif - VPHELPER(VP_X_STEP_PER_MM, &planner.settings.axis_steps_per_mm[X_AXIS], ScreenHandler.HandleStepPerMMChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<0>), - VPHELPER(VP_Y_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Y_AXIS], ScreenHandler.HandleStepPerMMChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<0>), - VPHELPER(VP_Z_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Z_AXIS], ScreenHandler.HandleStepPerMMChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<0>), + VPHELPER(VP_X_STEP_PER_MM, &planner.settings.axis_steps_per_mm[X_AXIS], screen.handleStepPerMMChanged, screen.sendFloatAsIntValueToDisplay<0>), + VPHELPER(VP_Y_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Y_AXIS], screen.handleStepPerMMChanged, screen.sendFloatAsIntValueToDisplay<0>), + VPHELPER(VP_Z_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Z_AXIS], screen.handleStepPerMMChanged, screen.sendFloatAsIntValueToDisplay<0>), - VPHELPER(VP_X_MAX_SPEED, &planner.settings.max_feedrate_mm_s[X_AXIS], ScreenHandler.HandleMaxSpeedChange, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<0>), - VPHELPER(VP_Y_MAX_SPEED, &planner.settings.max_feedrate_mm_s[Y_AXIS], ScreenHandler.HandleMaxSpeedChange, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<0>), - VPHELPER(VP_Z_MAX_SPEED, &planner.settings.max_feedrate_mm_s[Z_AXIS], ScreenHandler.HandleMaxSpeedChange, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<0>), + VPHELPER(VP_X_MAX_SPEED, &planner.settings.max_feedrate_mm_s[X_AXIS], screen.handleMaxSpeedChange, screen.sendFloatAsIntValueToDisplay<0>), + VPHELPER(VP_Y_MAX_SPEED, &planner.settings.max_feedrate_mm_s[Y_AXIS], screen.handleMaxSpeedChange, screen.sendFloatAsIntValueToDisplay<0>), + VPHELPER(VP_Z_MAX_SPEED, &planner.settings.max_feedrate_mm_s[Z_AXIS], screen.handleMaxSpeedChange, screen.sendFloatAsIntValueToDisplay<0>), #if HAS_HOTEND - VPHELPER(VP_E0_MAX_SPEED, &planner.settings.max_feedrate_mm_s[E_AXIS_N(0)], ScreenHandler.HandleExtruderMaxSpeedChange, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<0>), + VPHELPER(VP_E0_MAX_SPEED, &planner.settings.max_feedrate_mm_s[E_AXIS_N(0)], screen.handleExtruderMaxSpeedChange, screen.sendFloatAsIntValueToDisplay<0>), #if HAS_MULTI_HOTEND - VPHELPER(VP_E1_MAX_SPEED, &planner.settings.max_feedrate_mm_s[E_AXIS_N(1)], ScreenHandler.HandleExtruderMaxSpeedChange, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<0>), + VPHELPER(VP_E1_MAX_SPEED, &planner.settings.max_feedrate_mm_s[E_AXIS_N(1)], screen.handleExtruderMaxSpeedChange, screen.sendFloatAsIntValueToDisplay<0>), #endif #endif - VPHELPER(VP_X_ACC_MAX_SPEED, (uint16_t *)&planner.settings.max_acceleration_mm_per_s2[X_AXIS], ScreenHandler.HandleMaxAccChange, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Y_ACC_MAX_SPEED, (uint16_t *)&planner.settings.max_acceleration_mm_per_s2[Y_AXIS], ScreenHandler.HandleMaxAccChange, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Z_ACC_MAX_SPEED, (uint16_t *)&planner.settings.max_acceleration_mm_per_s2[Z_AXIS], ScreenHandler.HandleMaxAccChange, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_X_ACC_MAX_SPEED, (uint16_t *)&planner.settings.max_acceleration_mm_per_s2[X_AXIS], screen.handleMaxAccChange, screen.sendWordValueToDisplay), + VPHELPER(VP_Y_ACC_MAX_SPEED, (uint16_t *)&planner.settings.max_acceleration_mm_per_s2[Y_AXIS], screen.handleMaxAccChange, screen.sendWordValueToDisplay), + VPHELPER(VP_Z_ACC_MAX_SPEED, (uint16_t *)&planner.settings.max_acceleration_mm_per_s2[Z_AXIS], screen.handleMaxAccChange, screen.sendWordValueToDisplay), #if HAS_HOTEND - VPHELPER(VP_E0_ACC_MAX_SPEED, (uint16_t *)&planner.settings.max_acceleration_mm_per_s2[E_AXIS_N(0)], ScreenHandler.HandleExtruderAccChange, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_E0_ACC_MAX_SPEED, (uint16_t *)&planner.settings.max_acceleration_mm_per_s2[E_AXIS_N(0)], screen.handleExtruderAccChange, screen.sendWordValueToDisplay), #if HAS_MULTI_HOTEND - VPHELPER(VP_E1_ACC_MAX_SPEED, (uint16_t *)&planner.settings.max_acceleration_mm_per_s2[E_AXIS_N(1)], ScreenHandler.HandleExtruderAccChange, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_E1_ACC_MAX_SPEED, (uint16_t *)&planner.settings.max_acceleration_mm_per_s2[E_AXIS_N(1)], screen.handleExtruderAccChange, screen.sendWordValueToDisplay), #endif #endif - VPHELPER(VP_TRAVEL_SPEED, (uint16_t *)&planner.settings.travel_acceleration, ScreenHandler.HandleTravelAccChange, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<0>), - VPHELPER(VP_FEEDRATE_MIN_SPEED, (uint16_t *)&planner.settings.min_feedrate_mm_s, ScreenHandler.HandleFeedRateMinChange, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<0>), - VPHELPER(VP_T_F_SPEED, (uint16_t *)&planner.settings.min_travel_feedrate_mm_s, ScreenHandler.HandleMin_T_F, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<0>), - VPHELPER(VP_ACC_SPEED, (uint16_t *)&planner.settings.acceleration, ScreenHandler.HandleAccChange, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_TRAVEL_SPEED, (uint16_t *)&planner.settings.travel_acceleration, screen.handleTravelAccChange, screen.sendFloatAsIntValueToDisplay<0>), + VPHELPER(VP_FEEDRATE_MIN_SPEED, (uint16_t *)&planner.settings.min_feedrate_mm_s, screen.handleFeedRateMinChange, screen.sendFloatAsIntValueToDisplay<0>), + VPHELPER(VP_T_F_SPEED, (uint16_t *)&planner.settings.min_travel_feedrate_mm_s, screen.handleMin_T_F, screen.sendFloatAsIntValueToDisplay<0>), + VPHELPER(VP_ACC_SPEED, (uint16_t *)&planner.settings.acceleration, screen.handleAccChange, screen.sendWordValueToDisplay), - VPHELPER(VP_X_PARK_POS, &mks_park_pos.x, ScreenHandler.GetParkPos, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Y_PARK_POS, &mks_park_pos.y, ScreenHandler.GetParkPos, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Z_PARK_POS, &mks_park_pos.z, ScreenHandler.GetParkPos, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_X_PARK_POS, &mks_park_pos.x, screen.getParkPos, screen.sendWordValueToDisplay), + VPHELPER(VP_Y_PARK_POS, &mks_park_pos.y, screen.getParkPos, screen.sendWordValueToDisplay), + VPHELPER(VP_Z_PARK_POS, &mks_park_pos.z, screen.getParkPos, screen.sendWordValueToDisplay), #if ENABLED(PREVENT_COLD_EXTRUSION) - VPHELPER(VP_MIN_EX_T, &thermalManager.extrude_min_temp, ScreenHandler.HandleGetExMinTemp, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_MIN_EX_T, &thermalManager.extrude_min_temp, screen.handleGetExMinTemp, screen.sendWordValueToDisplay), #endif #if ENABLED(SENSORLESS_HOMING) // TMC SENSORLESS Setting #if X_HAS_STEALTHCHOP - VPHELPER(VP_TMC_X_STEP, &tmc_step.x, ScreenHandler.TMC_ChangeConfig, ScreenHandler.DGUSLCD_SendTMCStepValue), + VPHELPER(VP_TMC_X_STEP, &tmc_step.x, screen.tmcChangeConfig, screen.sendTMCStepValue), #endif #if Y_HAS_STEALTHCHOP - VPHELPER(VP_TMC_Y_STEP, &tmc_step.y, ScreenHandler.TMC_ChangeConfig, ScreenHandler.DGUSLCD_SendTMCStepValue), + VPHELPER(VP_TMC_Y_STEP, &tmc_step.y, screen.tmcChangeConfig, screen.sendTMCStepValue), #endif #if Z_HAS_STEALTHCHOP - VPHELPER(VP_TMC_Z_STEP, &tmc_step.z, ScreenHandler.TMC_ChangeConfig, ScreenHandler.DGUSLCD_SendTMCStepValue), + VPHELPER(VP_TMC_Z_STEP, &tmc_step.z, screen.tmcChangeConfig, screen.sendTMCStepValue), #endif #endif #if HAS_TRINAMIC_CONFIG // TMC Current Setting #if AXIS_IS_TMC(X) - VPHELPER(VP_TMC_X_Current, &stepperX.val_mA, ScreenHandler.TMC_ChangeConfig, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_TMC_X_Current, &stepperX.val_mA, screen.tmcChangeConfig, screen.sendWordValueToDisplay), #endif #if AXIS_IS_TMC(Y) - VPHELPER(VP_TMC_Y_Current, &stepperY.val_mA, ScreenHandler.TMC_ChangeConfig, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_TMC_Y_Current, &stepperY.val_mA, screen.tmcChangeConfig, screen.sendWordValueToDisplay), #endif #if AXIS_IS_TMC(Z) - VPHELPER(VP_TMC_Z_Current, &stepperZ.val_mA, ScreenHandler.TMC_ChangeConfig, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_TMC_Z_Current, &stepperZ.val_mA, screen.tmcChangeConfig, screen.sendWordValueToDisplay), #endif #if AXIS_IS_TMC(E0) - VPHELPER(VP_TMC_E0_Current, &stepperE0.val_mA, ScreenHandler.TMC_ChangeConfig, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_TMC_E0_Current, &stepperE0.val_mA, screen.tmcChangeConfig, screen.sendWordValueToDisplay), #endif #if AXIS_IS_TMC(E1) - VPHELPER(VP_TMC_E1_Current, &stepperE1.val_mA, ScreenHandler.TMC_ChangeConfig, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_TMC_E1_Current, &stepperE1.val_mA, screen.tmcChangeConfig, screen.sendWordValueToDisplay), #endif #if AXIS_IS_TMC(X2) - VPHELPER(VP_TMC_X1_Current, &stepperX2.val_mA, ScreenHandler.TMC_ChangeConfig, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_TMC_X1_Current, &stepperX2.val_mA, screen.tmcChangeConfig, screen.sendWordValueToDisplay), #endif #if AXIS_IS_TMC(Y2) - VPHELPER(VP_TMC_Y1_Current, &stepperY2.val_mA, ScreenHandler.TMC_ChangeConfig, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_TMC_Y1_Current, &stepperY2.val_mA, screen.tmcChangeConfig, screen.sendWordValueToDisplay), #endif #if AXIS_IS_TMC(Z2) - VPHELPER(VP_TMC_Z1_Current, &stepperZ2.val_mA, ScreenHandler.TMC_ChangeConfig, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_TMC_Z1_Current, &stepperZ2.val_mA, screen.tmcChangeConfig, screen.sendWordValueToDisplay), #endif #endif - VPHELPER(VP_EEPROM_CTRL, nullptr, ScreenHandler.EEPROM_CTRL, nullptr), - VPHELPER(VP_LEVEL_BUTTON, nullptr, ScreenHandler.Level_Ctrl, nullptr), - VPHELPER(VP_LANGUAGE_CHANGE, nullptr, ScreenHandler.LanguageChange, nullptr), + VPHELPER(VP_EEPROM_CTRL, nullptr, screen.eepromControl, nullptr), + VPHELPER(VP_LEVEL_BUTTON, nullptr, screen.levelControl, nullptr), + VPHELPER(VP_LANGUAGE_CHANGE, nullptr, screen.languageChange, nullptr), - //VPHELPER(VP_SD_Print_LiveAdjustZ, nullptr, ScreenHandler.HandleLiveAdjustZ, nullptr), + //VPHELPER(VP_SD_Print_LiveAdjustZ, nullptr, screen.handleLiveAdjustZ, nullptr), - VPHELPER(VP_SD_Print_LiveAdjustZ_Confirm, nullptr, ScreenHandler.ZoffsetConfirm, nullptr), + VPHELPER(VP_SD_Print_LiveAdjustZ_Confirm, nullptr, screen.zOffsetConfirm, nullptr), - VPHELPER(VP_ZOffset_Distance,nullptr ,ScreenHandler.GetZoffsetDistance, nullptr), - VPHELPER(VP_MESH_LEVEL_ADJUST, nullptr, ScreenHandler.MeshLevelDistanceConfig, nullptr), - VPHELPER(VP_MESH_LEVEL_POINT,nullptr, ScreenHandler.MeshLevel,nullptr), + VPHELPER(VP_ZOffset_Distance,nullptr ,screen.getZoffsetDistance, nullptr), + VPHELPER(VP_MESH_LEVEL_ADJUST, nullptr, screen.meshLevelDistanceConfig, nullptr), + VPHELPER(VP_MESH_LEVEL_POINT,nullptr, screen.meshLevel, nullptr), #if ENABLED(PREVENT_COLD_EXTRUSION) - VPHELPER(VP_Min_EX_T_E, &thermalManager.extrude_min_temp, ScreenHandler.GetMinExtrudeTemp, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_Min_EX_T_E, &thermalManager.extrude_min_temp, screen.getMinExtrudeTemp, screen.sendWordValueToDisplay), #endif - VPHELPER(VP_AutoTurnOffSw, nullptr, ScreenHandler.GetTurnOffCtrl, nullptr), + VPHELPER(VP_AutoTurnOffSw, nullptr, screen.getTurnOffCtrl, nullptr), #if HAS_HOTEND - VPHELPER(VP_E0_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(0)], ScreenHandler.HandleStepPerMMExtruderChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<0>), + VPHELPER(VP_E0_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(0)], screen.handleStepPerMMExtruderChanged, screen.sendFloatAsIntValueToDisplay<0>), #if HAS_MULTI_HOTEND - VPHELPER(VP_E1_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(1)], ScreenHandler.HandleStepPerMMExtruderChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<0>), + VPHELPER(VP_E1_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(1)], screen.handleStepPerMMExtruderChanged, screen.sendFloatAsIntValueToDisplay<0>), #endif #endif // SDCard File listing #if HAS_MEDIA - VPHELPER(VP_SD_FileSelected, nullptr, ScreenHandler.DGUSLCD_SD_FileSelected, nullptr), - VPHELPER(VP_SD_ScrollEvent, nullptr, ScreenHandler.DGUSLCD_SD_ScrollFilelist, nullptr), - VPHELPER(VP_SD_FileSelectConfirm, nullptr, ScreenHandler.DGUSLCD_SD_StartPrint, nullptr), - VPHELPER_STR(VP_SD_FileName0, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName1, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName2, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName3, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName4, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName5, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName6, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName7, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName8, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName9, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER(VP_SD_ResumePauseAbort, nullptr, ScreenHandler.DGUSLCD_SD_ResumePauseAbort, nullptr), - VPHELPER(VP_SD_AbortPrintConfirmed, nullptr, ScreenHandler.DGUSLCD_SD_ReallyAbort, nullptr), - VPHELPER(VP_SD_Print_Setting, nullptr, ScreenHandler.DGUSLCD_SD_PrintTune, nullptr), + VPHELPER(VP_SD_FileSelected, nullptr, screen.sdFileSelected, nullptr), + VPHELPER(VP_SD_ScrollEvent, nullptr, screen.sdScrollFilelist, nullptr), + VPHELPER(VP_SD_FileSelectConfirm, nullptr, screen.sdStartPrint, nullptr), + VPHELPER_STR(VP_SD_FileName0, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName1, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName2, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName3, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName4, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName5, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName6, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName7, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName8, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName9, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER(VP_SD_ResumePauseAbort, nullptr, screen.sdResumePauseAbort, nullptr), + VPHELPER(VP_SD_AbortPrintConfirmed, nullptr, screen.sdReallyAbort, nullptr), + VPHELPER(VP_SD_Print_Setting, nullptr, screen.sdPrintTune, nullptr), #if ENABLED(BABYSTEPPING) - VPHELPER(VP_SD_Print_LiveAdjustZ, nullptr, ScreenHandler.HandleLiveAdjustZ, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<2>), - VPHELPER(VP_ZOffset_DE_DIS, &z_offset_add, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_SD_Print_LiveAdjustZ, nullptr, screen.handleLiveAdjustZ, screen.sendFloatAsIntValueToDisplay<2>), + VPHELPER(VP_ZOffset_DE_DIS, &z_offset_add, nullptr, screen.sendFloatAsLongValueToDisplay<2>), #endif #if HAS_BED_PROBE - VPHELPER(VP_OFFSET_X, &probe.offset.x, ScreenHandler.GetOffsetValue,ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), - VPHELPER(VP_OFFSET_Y, &probe.offset.y, ScreenHandler.GetOffsetValue,ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), - VPHELPER(VP_OFFSET_Z, &probe.offset.z, ScreenHandler.GetOffsetValue,ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_OFFSET_X, &probe.offset.x, screen.getOffsetValue,screen.sendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_OFFSET_Y, &probe.offset.y, screen.getOffsetValue,screen.sendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_OFFSET_Z, &probe.offset.z, screen.getOffsetValue,screen.sendFloatAsLongValueToDisplay<2>), #endif #else - VPHELPER(VP_SD_FileSelected, nullptr, ScreenHandler.PrintReturn, nullptr), + VPHELPER(VP_SD_FileSelected, nullptr, screen.printReturn, nullptr), #endif #if ENABLED(DGUS_UI_WAITING) - VPHELPER(VP_WAITING_STATUS, nullptr, nullptr, ScreenHandler.DGUSLCD_SendWaitingStatusToDisplay), + VPHELPER(VP_WAITING_STATUS, nullptr, nullptr, screen.sendWaitingStatusToDisplay), #endif // Messages for the User, shared by the popup and the kill screen. They can't be autouploaded as we do not buffer content. - //{.VP = VP_MSGSTR1, .memadr = nullptr, .size = VP_MSGSTR1_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM}, - //{.VP = VP_MSGSTR2, .memadr = nullptr, .size = VP_MSGSTR2_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM}, - //{.VP = VP_MSGSTR3, .memadr = nullptr, .size = VP_MSGSTR3_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM}, - //{.VP = VP_MSGSTR4, .memadr = nullptr, .size = VP_MSGSTR4_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM}, - - {.VP = VP_MSGSTR1, .memadr = nullptr, .size = VP_MSGSTR1_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplay_Language}, - {.VP = VP_MSGSTR2, .memadr = nullptr, .size = VP_MSGSTR2_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplay_Language}, - {.VP = VP_MSGSTR3, .memadr = nullptr, .size = VP_MSGSTR3_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplay_Language}, - {.VP = VP_MSGSTR4, .memadr = nullptr, .size = VP_MSGSTR4_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplay_Language}, + //{.VP = VP_MSGSTR1, .memadr = nullptr, .size = VP_MSGSTR1_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM}, + //{.VP = VP_MSGSTR2, .memadr = nullptr, .size = VP_MSGSTR2_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM}, + //{.VP = VP_MSGSTR3, .memadr = nullptr, .size = VP_MSGSTR3_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM}, + //{.VP = VP_MSGSTR4, .memadr = nullptr, .size = VP_MSGSTR4_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM}, + + {.VP = VP_MSGSTR1, .memadr = nullptr, .size = VP_MSGSTR1_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplay_Language}, + {.VP = VP_MSGSTR2, .memadr = nullptr, .size = VP_MSGSTR2_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplay_Language}, + {.VP = VP_MSGSTR3, .memadr = nullptr, .size = VP_MSGSTR3_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplay_Language}, + {.VP = VP_MSGSTR4, .memadr = nullptr, .size = VP_MSGSTR4_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplay_Language}, VPHELPER(0, 0, 0, 0) // must be last entry. }; diff --git a/Marlin/src/lcd/extui/dgus/mks/DGUSDisplayDef.h b/Marlin/src/lcd/extui/dgus/mks/DGUSDisplayDef.h index 63586e7fe517..53e57e1c65bb 100644 --- a/Marlin/src/lcd/extui/dgus/mks/DGUSDisplayDef.h +++ b/Marlin/src/lcd/extui/dgus/mks/DGUSDisplayDef.h @@ -124,21 +124,21 @@ typedef struct { extern NOZZLE_PARK_DEF nozzle_park_mks; -enum DGUSLCD_Screens : uint8_t { +enum DGUS_ScreenID : uint8_t { #if ENABLED(USE_MKS_GREEN_UI) - DGUSLCD_SCREEN_BOOT = 33, - DGUSLCD_SCREEN_MAIN = 60, - DGUSLCD_SCREEN_STATUS = 60, - DGUSLCD_SCREEN_STATUS2 = 60, - DGUSLCD_SCREEN_PREHEAT = 18, - DGUSLCD_SCREEN_POWER_LOSS = 100, - DGUSLCD_SCREEN_MANUALMOVE = 192, - DGUSLCD_SCREEN_UTILITY = 120, - DGUSLCD_SCREEN_FILAMENT_UNLOADING = 158, - DGUSLCD_SCREEN_SDFILELIST = 15, - DGUSLCD_SCREEN_SDPRINTMANIPULATION = 15, - DGUSLCD_SCREEN_SDPRINTTUNE = 17, + DGUS_SCREEN_BOOT = 33, + DGUS_SCREEN_MAIN = 60, + DGUS_SCREEN_STATUS = 60, + DGUS_SCREEN_STATUS2 = 60, + DGUS_SCREEN_PREHEAT = 18, + DGUS_SCREEN_POWER_LOSS = 100, + DGUS_SCREEN_MANUALMOVE = 192, + DGUS_SCREEN_UTILITY = 120, + DGUS_SCREEN_FILAMENT_UNLOADING = 158, + DGUS_SCREEN_SDFILELIST = 15, + DGUS_SCREEN_SDPRINTMANIPULATION = 15, + DGUS_SCREEN_SDPRINTTUNE = 17, MKSLCD_SCREEN_BOOT = 33, MKSLCD_SCREEN_HOME = 60, // MKS main page @@ -178,19 +178,19 @@ enum DGUSLCD_Screens : uint8_t { #else - DGUSLCD_SCREEN_BOOT = 120, - DGUSLCD_SCREEN_MAIN = 1, + DGUS_SCREEN_BOOT = 120, + DGUS_SCREEN_MAIN = 1, - DGUSLCD_SCREEN_STATUS = 1, - DGUSLCD_SCREEN_STATUS2 = 1, - DGUSLCD_SCREEN_PREHEAT = 18, - DGUSLCD_SCREEN_POWER_LOSS = 100, - DGUSLCD_SCREEN_MANUALMOVE = 192, - DGUSLCD_SCREEN_UTILITY = 120, - DGUSLCD_SCREEN_FILAMENT_UNLOADING = 158, - DGUSLCD_SCREEN_SDFILELIST = 15, - DGUSLCD_SCREEN_SDPRINTMANIPULATION = 15, - DGUSLCD_SCREEN_SDPRINTTUNE = 17, + DGUS_SCREEN_STATUS = 1, + DGUS_SCREEN_STATUS2 = 1, + DGUS_SCREEN_PREHEAT = 18, + DGUS_SCREEN_POWER_LOSS = 100, + DGUS_SCREEN_MANUALMOVE = 192, + DGUS_SCREEN_UTILITY = 120, + DGUS_SCREEN_FILAMENT_UNLOADING = 158, + DGUS_SCREEN_SDFILELIST = 15, + DGUS_SCREEN_SDPRINTMANIPULATION = 15, + DGUS_SCREEN_SDPRINTTUNE = 17, MKSLCD_SCREEN_BOOT = 0, MKSLCD_SCREEN_HOME = 1, // MKS main page @@ -234,11 +234,11 @@ enum DGUSLCD_Screens : uint8_t { #endif - DGUSLCD_SCREEN_CONFIRM = 240, - DGUSLCD_SCREEN_KILL = 250, ///< Kill Screen. Must always be 250 (to be able to display "Error wrong LCD Version") - DGUSLCD_SCREEN_WAITING = 251, - DGUSLCD_SCREEN_POPUP = 252, ///< special target, popup screen will also return this code to say "return to previous screen" - DGUSLCD_SCREEN_UNUSED = 255 + DGUS_SCREEN_CONFIRM = 240, + DGUS_SCREEN_KILL = 250, ///< Kill Screen. Must always be 250 (to be able to display "Error wrong LCD Version") + DGUS_SCREEN_WAITING = 251, + DGUS_SCREEN_POPUP = 252, ///< special target, popup screen will also return this code to say "return to previous screen" + DGUS_SCREEN_UNUSED = 255 }; diff --git a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp index ad89a715c362..16aeeab1a142 100644 --- a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp @@ -56,20 +56,20 @@ MKS_Language mks_language_index; // Initialized by settings.load() #if 0 void DGUSScreenHandlerMKS::sendinfoscreen_ch(const uint16_t *line1, const uint16_t *line2, const uint16_t *line3, const uint16_t *line4) { - dgusdisplay.WriteVariable(VP_MSGSTR1, line1, 32, true); - dgusdisplay.WriteVariable(VP_MSGSTR2, line2, 32, true); - dgusdisplay.WriteVariable(VP_MSGSTR3, line3, 32, true); - dgusdisplay.WriteVariable(VP_MSGSTR4, line4, 32, true); + dgus.writeVariable(VP_MSGSTR1, line1, 32, true); + dgus.writeVariable(VP_MSGSTR2, line2, 32, true); + dgus.writeVariable(VP_MSGSTR3, line3, 32, true); + dgus.writeVariable(VP_MSGSTR4, line4, 32, true); } void DGUSScreenHandlerMKS::sendinfoscreen_en(PGM_P const line1, PGM_P const line2, PGM_P const line3, PGM_P const line4) { - dgusdisplay.WriteVariable(VP_MSGSTR1, line1, 32, true); - dgusdisplay.WriteVariable(VP_MSGSTR2, line2, 32, true); - dgusdisplay.WriteVariable(VP_MSGSTR3, line3, 32, true); - dgusdisplay.WriteVariable(VP_MSGSTR4, line4, 32, true); + dgus.writeVariable(VP_MSGSTR1, line1, 32, true); + dgus.writeVariable(VP_MSGSTR2, line2, 32, true); + dgus.writeVariable(VP_MSGSTR3, line3, 32, true); + dgus.writeVariable(VP_MSGSTR4, line4, 32, true); } -void DGUSScreenHandlerMKS::sendinfoscreen(const void *line1, const void *line2, const void *line3, const void *line4, uint16_t language) { +void DGUSScreenHandlerMKS::sendInfoScreen(const void *line1, const void *line2, const void *line3, const void *line4, uint16_t language) { if (language == MKS_English) DGUSScreenHandlerMKS::sendinfoscreen_en((char *)line1, (char *)line2, (char *)line3, (char *)line4); else if (language == MKS_SimpleChinese) @@ -78,78 +78,78 @@ void DGUSScreenHandlerMKS::sendinfoscreen(const void *line1, const void *line2, #endif -void DGUSScreenHandlerMKS::DGUSLCD_SendFanToDisplay(DGUS_VP_Variable &var) { +void DGUSScreenHandlerMKS::sendFanToDisplay(DGUS_VP_Variable &var) { if (var.memadr) { uint16_t tmp = *(uint8_t *) var.memadr; // +1 -> avoid rounding issues for the display. // tmp = map(tmp, 0, 255, 0, 100); - dgusdisplay.WriteVariable(var.VP, tmp); + dgus.writeVariable(var.VP, tmp); } } -void DGUSScreenHandlerMKS::DGUSLCD_SendBabyStepToDisplay(DGUS_VP_Variable &var) { +void DGUSScreenHandlerMKS::sendBabyStepToDisplay(DGUS_VP_Variable &var) { float value = current_position.z; value *= cpow(10, 2); - dgusdisplay.WriteVariable(VP_SD_Print_Baby, (uint16_t)value); + dgus.writeVariable(VP_SD_Print_Baby, (uint16_t)value); } -void DGUSScreenHandlerMKS::DGUSLCD_SendPrintTimeToDisplay(DGUS_VP_Variable &var) { +void DGUSScreenHandlerMKS::sendPrintTimeToDisplay(DGUS_VP_Variable &var) { duration_t elapsed = print_job_timer.duration(); uint32_t time = elapsed.value; - dgusdisplay.WriteVariable(VP_PrintTime_H, uint16_t(time / 3600)); - dgusdisplay.WriteVariable(VP_PrintTime_M, uint16_t(time % 3600 / 60)); - dgusdisplay.WriteVariable(VP_PrintTime_S, uint16_t((time % 3600) % 60)); + dgus.writeVariable(VP_PrintTime_H, uint16_t(time / 3600)); + dgus.writeVariable(VP_PrintTime_M, uint16_t(time % 3600 / 60)); + dgus.writeVariable(VP_PrintTime_S, uint16_t((time % 3600) % 60)); } -void DGUSScreenHandlerMKS::DGUSLCD_SetUint8(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::setUint8(DGUS_VP_Variable &var, void *val_ptr) { if (var.memadr) { const uint16_t value = BE16_P(val_ptr); *(uint8_t*)var.memadr = map(constrain(value, 0, 255), 0, 255, 0, 255); } } -void DGUSScreenHandlerMKS::DGUSLCD_SendGbkToDisplay(DGUS_VP_Variable &var) { +void DGUSScreenHandlerMKS::sendGbkToDisplay(DGUS_VP_Variable &var) { uint16_t *tmp = (uint16_t*) var.memadr; - dgusdisplay.WriteVariable(var.VP, tmp, var.size, true); + dgus.writeVariable(var.VP, tmp, var.size, true); } -void DGUSScreenHandlerMKS::DGUSLCD_SendStringToDisplay_Language(DGUS_VP_Variable &var) { +void DGUSScreenHandlerMKS::sendStringToDisplay_Language(DGUS_VP_Variable &var) { if (mks_language_index == MKS_English) { char *tmp = (char*) var.memadr; - dgusdisplay.WriteVariable(var.VP, tmp, var.size, true); + dgus.writeVariable(var.VP, tmp, var.size, true); } else if (mks_language_index == MKS_SimpleChinese) { uint16_t *tmp = (uint16_t *)var.memadr; - dgusdisplay.WriteVariable(var.VP, tmp, var.size, true); + dgus.writeVariable(var.VP, tmp, var.size, true); } } -void DGUSScreenHandlerMKS::DGUSLCD_SendTMCStepValue(DGUS_VP_Variable &var) { +void DGUSScreenHandlerMKS::sendTMCStepValue(DGUS_VP_Variable &var) { #if ENABLED(SENSORLESS_HOMING) #if X_HAS_STEALTHCHOP tmc_step.x = stepperX.homing_threshold(); - dgusdisplay.WriteVariable(var.VP, *(int16_t*)var.memadr); + dgus.writeVariable(var.VP, *(int16_t*)var.memadr); #endif #if Y_HAS_STEALTHCHOP tmc_step.y = stepperY.homing_threshold(); - dgusdisplay.WriteVariable(var.VP, *(int16_t*)var.memadr); + dgus.writeVariable(var.VP, *(int16_t*)var.memadr); #endif #if Z_HAS_STEALTHCHOP tmc_step.z = stepperZ.homing_threshold(); - dgusdisplay.WriteVariable(var.VP, *(int16_t*)var.memadr); + dgus.writeVariable(var.VP, *(int16_t*)var.memadr); #endif #endif } #if HAS_MEDIA - void DGUSScreenHandler::DGUSLCD_SD_FileSelected(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::sdFileSelected(DGUS_VP_Variable &var, void *val_ptr) { uint16_t touched_nr = (int16_t)BE16_P(val_ptr) + top_file; if (touched_nr != 0x0F && touched_nr > filelist.count()) return; if (!filelist.seek(touched_nr) && touched_nr != 0x0F) return; if (touched_nr == 0x0F) { if (filelist.isAtRootDir()) - GotoScreen(DGUSLCD_SCREEN_MAIN); + gotoScreen(DGUS_SCREEN_MAIN); else filelist.upDir(); return; @@ -158,28 +158,28 @@ void DGUSScreenHandlerMKS::DGUSLCD_SendTMCStepValue(DGUS_VP_Variable &var) { if (filelist.isDir()) { filelist.changeDir(filelist.filename()); top_file = 0; - ForceCompleteUpdate(); + forceCompleteUpdate(); return; } #if ENABLED(DGUS_PRINT_FILENAME) // Send print filename - dgusdisplay.WriteVariable(VP_SD_Print_Filename, filelist.filename(), VP_SD_FileName_LEN, true); + dgus.writeVariable(VP_SD_Print_Filename, filelist.filename(), VP_SD_FileName_LEN, true); #endif // Setup Confirmation screen file_to_print = touched_nr; - GotoScreen(MKSLCD_SCREEN_PRINT_CONFIRM); + gotoScreen(MKSLCD_SCREEN_PRINT_CONFIRM); } - void DGUSScreenHandler::DGUSLCD_SD_StartPrint(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::sdStartPrint(DGUS_VP_Variable &var, void *val_ptr) { if (!filelist.seek(file_to_print)) return; ExtUI::printFile(filelist.shortFilename()); - GotoScreen(MKSLCD_SCREEN_PRINT); + gotoScreen(MKSLCD_SCREEN_PRINT); z_offset_add = 0; } - void DGUSScreenHandler::DGUSLCD_SD_ResumePauseAbort(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::sdResumePauseAbort(DGUS_VP_Variable &var, void *val_ptr) { if (!ExtUI::isPrintingFromMedia()) return; // avoid race condition when user stays in this menu and printer finishes. switch (BE16_P(val_ptr)) { @@ -187,13 +187,13 @@ void DGUSScreenHandlerMKS::DGUSLCD_SendTMCStepValue(DGUS_VP_Variable &var) { auto cs = getCurrentScreen(); if (runout_mks.runout_status != RUNOUT_WAITING_STATUS && runout_mks.runout_status != UNRUNOUT_STATUS) { if (cs == MKSLCD_SCREEN_PRINT || cs == MKSLCD_SCREEN_PAUSE) - GotoScreen(MKSLCD_SCREEN_PAUSE); + gotoScreen(MKSLCD_SCREEN_PAUSE); return; } else runout_mks.runout_status = UNRUNOUT_STATUS; - GotoScreen(MKSLCD_SCREEN_PRINT); + gotoScreen(MKSLCD_SCREEN_PRINT); if (ExtUI::isPrintingFromMediaPaused()) { nozzle_park_mks.print_pause_start_flag = 0; @@ -203,7 +203,7 @@ void DGUSScreenHandlerMKS::DGUSLCD_SendTMCStepValue(DGUS_VP_Variable &var) { } break; case 1: // Pause - GotoScreen(MKSLCD_SCREEN_PAUSE); + gotoScreen(MKSLCD_SCREEN_PAUSE); if (!ExtUI::isPrintingFromMediaPaused()) { nozzle_park_mks.print_pause_start_flag = 1; nozzle_park_mks.blstatus = true; @@ -213,12 +213,12 @@ void DGUSScreenHandlerMKS::DGUSLCD_SendTMCStepValue(DGUS_VP_Variable &var) { break; case 2: // Abort - HandleUserConfirmationPopUp(VP_SD_AbortPrintConfirmed, nullptr, PSTR("Abort printing"), filelist.filename(), PSTR("?"), true, true, false, true); + handleUserConfirmationPopUp(VP_SD_AbortPrintConfirmed, nullptr, PSTR("Abort printing"), filelist.filename(), PSTR("?"), true, true, false, true); break; } } - void DGUSScreenHandler::DGUSLCD_SD_SendFilename(DGUS_VP_Variable& var) { + void DGUSScreenHandler::sdSendFilename(DGUS_VP_Variable& var) { uint16_t target_line = (var.VP - VP_SD_FileName0) / VP_SD_FileName_LEN; if (target_line > DGUS_SD_FILESPERSCREEN) return; char tmpfilename[VP_SD_FileName_LEN + 1] = ""; @@ -229,50 +229,50 @@ void DGUSScreenHandlerMKS::DGUSLCD_SendTMCStepValue(DGUS_VP_Variable &var) { snprintf_P(tmpfilename, VP_SD_FileName_LEN, PSTR("%s%c"), filelist.filename(), filelist.isDir() ? '/' : 0); // snprintf_P(tmpfilename, VP_SD_FileName_LEN, PSTR("%s"), filelist.filename()); dir_icon_val = filelist.isDir() ? 0 : 1; } - DGUSLCD_SendStringToDisplay(var); + sendStringToDisplay(var); - dgusdisplay.WriteVariable(VP_File_Pictutr0 + target_line * 2, dir_icon_val); + dgus.writeVariable(VP_File_Pictutr0 + target_line * 2, dir_icon_val); } - void DGUSScreenHandler::SDCardInserted() { + void DGUSScreenHandler::sdCardInserted() { top_file = 0; filelist.refresh(); auto cs = getCurrentScreen(); - if (cs == DGUSLCD_SCREEN_MAIN || cs == DGUSLCD_SCREEN_STATUS) - GotoScreen(MKSLCD_SCREEN_CHOOSE_FILE); + if (cs == DGUS_SCREEN_MAIN || cs == DGUS_SCREEN_STATUS) + gotoScreen(MKSLCD_SCREEN_CHOOSE_FILE); } - void DGUSScreenHandler::SDCardRemoved() { - if (current_screen == DGUSLCD_SCREEN_SDFILELIST - || (current_screen == DGUSLCD_SCREEN_CONFIRM && (ConfirmVP == VP_SD_AbortPrintConfirmed || ConfirmVP == VP_SD_FileSelectConfirm)) - || current_screen == DGUSLCD_SCREEN_SDPRINTMANIPULATION + void DGUSScreenHandler::sdCardRemoved() { + if (current_screenID == DGUS_SCREEN_SDFILELIST + || (current_screenID == DGUS_SCREEN_CONFIRM && (confirmVP == VP_SD_AbortPrintConfirmed || confirmVP == VP_SD_FileSelectConfirm)) + || current_screenID == DGUS_SCREEN_SDPRINTMANIPULATION ) filelist.refresh(); } - void DGUSScreenHandlerMKS::SDPrintingFinished() { + void DGUSScreenHandlerMKS::sdPrintingFinished() { if (DGUSAutoTurnOff) { queue.exhaust(); gcode.process_subcommands_now(F("M81")); } - GotoScreen(MKSLCD_SCREEN_PrintDone); + gotoScreen(MKSLCD_SCREEN_PrintDone); } #else - void DGUSScreenHandlerMKS::PrintReturn(DGUS_VP_Variable& var, void *val_ptr) { + void DGUSScreenHandlerMKS::printReturn(DGUS_VP_Variable& var, void *val_ptr) { const uint16_t value = BE16_P(val_ptr); - if (value == 0x0F) GotoScreen(DGUSLCD_SCREEN_MAIN); + if (value == 0x0F) gotoScreen(DGUS_SCREEN_MAIN); } #endif // HAS_MEDIA -void DGUSScreenHandler::ScreenChangeHook(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::screenChangeHook(DGUS_VP_Variable &var, void *val_ptr) { uint8_t *tmp = (uint8_t*)val_ptr; // The keycode in target is coded as , so 0x0100A means - // from screen 1 (main) to 10 (temperature). DGUSLCD_SCREEN_POPUP is special, + // from screen 1 (main) to 10 (temperature). DGUS_SCREEN_POPUP is special, // meaning "return to previous screen" - DGUSLCD_Screens target = (DGUSLCD_Screens)tmp[1]; + DGUS_ScreenID target = (DGUS_ScreenID)tmp[1]; - // when the dgus had reboot, it will enter the DGUSLCD_SCREEN_MAIN page, + // when the dgus had reboot, it will enter the DGUS_SCREEN_MAIN page, // so user can change any page to use this function, an it will check // if robin nano is printing. when it is, dgus will enter the printing // page to continue print; @@ -283,41 +283,41 @@ void DGUSScreenHandler::ScreenChangeHook(DGUS_VP_Variable &var, void *val_ptr) { // ) { // } // else - // GotoScreen(MKSLCD_SCREEN_PRINT); + // gotoScreen(MKSLCD_SCREEN_PRINT); // return; //} - if (target == DGUSLCD_SCREEN_POPUP) { - SetupConfirmAction(ExtUI::setUserConfirmed); + if (target == DGUS_SCREEN_POPUP) { + setupConfirmAction(ExtUI::setUserConfirmed); // Special handling for popup is to return to previous menu - if (current_screen == DGUSLCD_SCREEN_POPUP && confirm_action_cb) confirm_action_cb(); - PopToOldScreen(); + if (current_screenID == DGUS_SCREEN_POPUP && confirm_action_cb) confirm_action_cb(); + popToOldScreen(); return; } - UpdateNewScreen(target); + updateNewScreen(target); #ifdef DEBUG_DGUSLCD - if (!DGUSLCD_FindScreenVPMapList(target)) DEBUG_ECHOLNPGM("WARNING: No screen Mapping found for ", target); + if (!findScreenVPMapList(target)) DEBUG_ECHOLNPGM("WARNING: No screen Mapping found for ", target); #endif } -void DGUSScreenHandlerMKS::ScreenBackChange(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::screenBackChange(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t target = BE16_P(val_ptr); switch (target) { } } -void DGUSScreenHandlerMKS::ZoffsetConfirm(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::zOffsetConfirm(DGUS_VP_Variable &var, void *val_ptr) { settings.save(); if (printJobOngoing()) - GotoScreen(MKSLCD_SCREEN_PRINT); + gotoScreen(MKSLCD_SCREEN_PRINT); else if (print_job_timer.isPaused) - GotoScreen(MKSLCD_SCREEN_PAUSE); + gotoScreen(MKSLCD_SCREEN_PAUSE); } -void DGUSScreenHandlerMKS::GetTurnOffCtrl(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::getTurnOffCtrl(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t value = BE16_P(val_ptr); switch (value) { case 0 ... 1: DGUSAutoTurnOff = (bool)value; break; @@ -325,14 +325,14 @@ void DGUSScreenHandlerMKS::GetTurnOffCtrl(DGUS_VP_Variable &var, void *val_ptr) } } -void DGUSScreenHandlerMKS::GetMinExtrudeTemp(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::getMinExtrudeTemp(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t value = BE16_P(val_ptr); TERN_(PREVENT_COLD_EXTRUSION, thermalManager.extrude_min_temp = value); mks_min_extrusion_temp = value; settings.save(); } -void DGUSScreenHandlerMKS::GetZoffsetDistance(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::getZoffsetDistance(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t value = BE16_P(val_ptr); float val_distance = 0; switch (value) { @@ -345,29 +345,29 @@ void DGUSScreenHandlerMKS::GetZoffsetDistance(DGUS_VP_Variable &var, void *val_p ZOffset_distance = val_distance; } -void DGUSScreenHandlerMKS::GetManualMovestep(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::getManualMovestep(DGUS_VP_Variable &var, void *val_ptr) { *(uint16_t *)var.memadr = BE16_P(val_ptr); } -void DGUSScreenHandlerMKS::EEPROM_CTRL(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::eepromControl(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t eep_flag = BE16_P(val_ptr); switch (eep_flag) { case 0: settings.save(); settings.load(); // load eeprom data to check the data is right - GotoScreen(MKSLCD_SCREEN_EEP_Config); + gotoScreen(MKSLCD_SCREEN_EEP_Config); break; case 1: settings.reset(); - GotoScreen(MKSLCD_SCREEN_EEP_Config); + gotoScreen(MKSLCD_SCREEN_EEP_Config); break; default: break; } } -void DGUSScreenHandlerMKS::Z_offset_select(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::zOffsetSelect(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t z = BE16_P(val_ptr); switch (z) { case 0: Z_distance = 0.01; break; @@ -377,7 +377,7 @@ void DGUSScreenHandlerMKS::Z_offset_select(DGUS_VP_Variable &var, void *val_ptr) } } -void DGUSScreenHandlerMKS::GetOffsetValue(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::getOffsetValue(DGUS_VP_Variable &var, void *val_ptr) { #if HAS_BED_PROBE const int32_t value = BE32_P(val_ptr); @@ -393,21 +393,21 @@ void DGUSScreenHandlerMKS::GetOffsetValue(DGUS_VP_Variable &var, void *val_ptr) #endif } -void DGUSScreenHandlerMKS::LanguageChange(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::languageChange(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t lag_flag = BE16_P(val_ptr); switch (lag_flag) { case MKS_SimpleChinese: - DGUS_LanguageDisplay(MKS_SimpleChinese); + languageDisplay(MKS_SimpleChinese); mks_language_index = MKS_SimpleChinese; - dgusdisplay.WriteVariable(VP_LANGUAGE_CHANGE1, (uint8_t)MKS_Language_Choose); - dgusdisplay.WriteVariable(VP_LANGUAGE_CHANGE2, (uint8_t)MKS_Language_NoChoose); + dgus.writeVariable(VP_LANGUAGE_CHANGE1, (uint8_t)MKS_Language_Choose); + dgus.writeVariable(VP_LANGUAGE_CHANGE2, (uint8_t)MKS_Language_NoChoose); settings.save(); break; case MKS_English: - DGUS_LanguageDisplay(MKS_English); + languageDisplay(MKS_English); mks_language_index = MKS_English; - dgusdisplay.WriteVariable(VP_LANGUAGE_CHANGE1, (uint8_t)MKS_Language_NoChoose); - dgusdisplay.WriteVariable(VP_LANGUAGE_CHANGE2, (uint8_t)MKS_Language_Choose); + dgus.writeVariable(VP_LANGUAGE_CHANGE1, (uint8_t)MKS_Language_NoChoose); + dgus.writeVariable(VP_LANGUAGE_CHANGE2, (uint8_t)MKS_Language_Choose); settings.save(); break; default: break; @@ -418,7 +418,7 @@ void DGUSScreenHandlerMKS::LanguageChange(DGUS_VP_Variable &var, void *val_ptr) grid_count_t mesh_point_count = GRID_MAX_POINTS; #endif -void DGUSScreenHandlerMKS::Level_Ctrl(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::levelControl(DGUS_VP_Variable &var, void *val_ptr) { #if ENABLED(MESH_BED_LEVELING) auto cs = getCurrentScreen(); #endif @@ -440,32 +440,32 @@ void DGUSScreenHandlerMKS::Level_Ctrl(DGUS_VP_Variable &var, void *val_ptr) { if (mks_language_index == MKS_English) { const char level_buf_en[] = "Start Level"; - dgusdisplay.WriteVariable(VP_AutoLevel_1_Dis, level_buf_en, 32, true); + dgus.writeVariable(VP_AutoLevel_1_Dis, level_buf_en, 32, true); } else if (mks_language_index == MKS_SimpleChinese) { const uint16_t level_buf_ch[] = {0xAABF, 0xBCCA, 0xF7B5, 0xBDC6, 0x2000}; - dgusdisplay.WriteVariable(VP_AutoLevel_1_Dis, level_buf_ch, 32, true); + dgus.writeVariable(VP_AutoLevel_1_Dis, level_buf_ch, 32, true); } cs = getCurrentScreen(); - if (cs != MKSLCD_AUTO_LEVEL) GotoScreen(MKSLCD_AUTO_LEVEL); + if (cs != MKSLCD_AUTO_LEVEL) gotoScreen(MKSLCD_AUTO_LEVEL); #else - GotoScreen(MKSLCD_SCREEN_LEVEL); + gotoScreen(MKSLCD_SCREEN_LEVEL); #endif break; case 1: soft_endstop._enabled = true; - GotoScreen(MKSLCD_SCREEM_TOOL); + gotoScreen(MKSLCD_SCREEM_TOOL); break; default: break; } } -void DGUSScreenHandlerMKS::MeshLevelDistanceConfig(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::meshLevelDistanceConfig(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t mesh_dist = BE16_P(val_ptr); switch (mesh_dist) { case 0: mesh_adj_distance = 0.01; break; @@ -475,7 +475,7 @@ void DGUSScreenHandlerMKS::MeshLevelDistanceConfig(DGUS_VP_Variable &var, void * } } -void DGUSScreenHandlerMKS::MeshLevel(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::meshLevel(DGUS_VP_Variable &var, void *val_ptr) { #if ENABLED(MESH_BED_LEVELING) const uint16_t mesh_val = BE16_P(val_ptr); // static uint8_t a_first_level = 1; @@ -524,11 +524,11 @@ void DGUSScreenHandlerMKS::MeshLevel(DGUS_VP_Variable &var, void *val_ptr) { if (mks_language_index == MKS_English) { const char level_buf_en1[] = "Next Point"; - dgusdisplay.WriteVariable(VP_AutoLevel_1_Dis, level_buf_en1, 32, true); + dgus.writeVariable(VP_AutoLevel_1_Dis, level_buf_en1, 32, true); } else if (mks_language_index == MKS_SimpleChinese) { const uint16_t level_buf_ch1[] = {0xC2CF, 0xBBD2, 0xE3B5, 0x2000}; - dgusdisplay.WriteVariable(VP_AutoLevel_1_Dis, level_buf_ch1, 32, true); + dgus.writeVariable(VP_AutoLevel_1_Dis, level_buf_ch1, 32, true); } } else if (mesh_point_count > 1) { // 倒数第二个点 @@ -536,11 +536,11 @@ void DGUSScreenHandlerMKS::MeshLevel(DGUS_VP_Variable &var, void *val_ptr) { mesh_point_count--; if (mks_language_index == MKS_English) { const char level_buf_en2[] = "Next Point"; - dgusdisplay.WriteVariable(VP_AutoLevel_1_Dis, level_buf_en2, 32, true); + dgus.writeVariable(VP_AutoLevel_1_Dis, level_buf_en2, 32, true); } else if (mks_language_index == MKS_SimpleChinese) { const uint16_t level_buf_ch2[] = {0xC2CF, 0xBBD2, 0xE3B5, 0x2000}; - dgusdisplay.WriteVariable(VP_AutoLevel_1_Dis, level_buf_ch2, 32, true); + dgus.writeVariable(VP_AutoLevel_1_Dis, level_buf_ch2, 32, true); } } else if (mesh_point_count == 1) { @@ -548,11 +548,11 @@ void DGUSScreenHandlerMKS::MeshLevel(DGUS_VP_Variable &var, void *val_ptr) { mesh_point_count--; if (mks_language_index == MKS_English) { const char level_buf_en2[] = "Leveling Done"; - dgusdisplay.WriteVariable(VP_AutoLevel_1_Dis, level_buf_en2, 32, true); + dgus.writeVariable(VP_AutoLevel_1_Dis, level_buf_en2, 32, true); } else if (mks_language_index == MKS_SimpleChinese) { const uint16_t level_buf_ch2[] = {0xF7B5, 0xBDC6, 0xEACD, 0xC9B3, 0x2000}; - dgusdisplay.WriteVariable(VP_AutoLevel_1_Dis, level_buf_ch2, 32, true); + dgus.writeVariable(VP_AutoLevel_1_Dis, level_buf_ch2, 32, true); } settings.save(); } @@ -560,7 +560,7 @@ void DGUSScreenHandlerMKS::MeshLevel(DGUS_VP_Variable &var, void *val_ptr) { mesh_point_count = GRID_MAX_POINTS; soft_endstop._enabled = true; settings.save(); - GotoScreen(MKSLCD_SCREEM_TOOL); + gotoScreen(MKSLCD_SCREEM_TOOL); } break; @@ -570,19 +570,19 @@ void DGUSScreenHandlerMKS::MeshLevel(DGUS_VP_Variable &var, void *val_ptr) { #endif // MESH_BED_LEVELING } -void DGUSScreenHandlerMKS::SD_FileBack(DGUS_VP_Variable&, void*) { - GotoScreen(MKSLCD_SCREEN_HOME); +void DGUSScreenHandlerMKS::sdFileBack(DGUS_VP_Variable&, void*) { + gotoScreen(MKSLCD_SCREEN_HOME); } -void DGUSScreenHandlerMKS::LCD_BLK_Adjust(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::lcdBLKAdjust(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t lcd_val = BE16_P(val_ptr); lcd_default_light = constrain(lcd_val, 10, 100); const uint16_t lcd_data[2] = { lcd_default_light, lcd_default_light }; - dgusdisplay.WriteVariable(0x0082, &lcd_data, 5, true); + dgus.writeVariable(0x0082, &lcd_data, 5, true); } -void DGUSScreenHandlerMKS::ManualAssistLeveling(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::manualAssistLeveling(DGUS_VP_Variable &var, void *val_ptr) { const int16_t point_val = BE16_P(val_ptr); // Insist on leveling first time at this screen @@ -635,7 +635,7 @@ void DGUSScreenHandlerMKS::ManualAssistLeveling(DGUS_VP_Variable &var, void *val #define mks_min(a, b) ((a) < (b)) ? (a) : (b) #define mks_max(a, b) ((a) > (b)) ? (a) : (b) -void DGUSScreenHandlerMKS::TMC_ChangeConfig(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::tmcChangeConfig(DGUS_VP_Variable &var, void *val_ptr) { #if EITHER(HAS_TRINAMIC_CONFIG, HAS_STEALTHCHOP) const uint16_t tmc_val = BE16_P(val_ptr); #endif @@ -727,7 +727,7 @@ void DGUSScreenHandlerMKS::TMC_ChangeConfig(DGUS_VP_Variable &var, void *val_ptr #endif } -void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) { int16_t movevalue = BE16_P(val_ptr); // Choose Move distance @@ -812,14 +812,14 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { char buf[6]; sprintf(buf, "G28 %c", axiscode); queue.enqueue_one_now(buf); - ForceCompleteUpdate(); + forceCompleteUpdate(); return; } else if (movevalue == 5) { char buf[6]; snprintf_P(buf,6,PSTR("M84 %c"), axiscode); queue.enqueue_one_now(buf); - ForceCompleteUpdate(); + forceCompleteUpdate(); return; } else { @@ -845,13 +845,13 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { if (!old_relative_mode) queue.enqueue_now(F("G90")); } - ForceCompleteUpdate(); + forceCompleteUpdate(); cannotmove: return; } -void DGUSScreenHandlerMKS::GetParkPos(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::getParkPos(DGUS_VP_Variable &var, void *val_ptr) { const int16_t pos = BE16_P(val_ptr); switch (var.VP) { @@ -863,7 +863,7 @@ void DGUSScreenHandlerMKS::GetParkPos(DGUS_VP_Variable &var, void *val_ptr) { skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandlerMKS::HandleChangeLevelPoint(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::handleChangeLevelPoint(DGUS_VP_Variable &var, void *val_ptr) { const int16_t raw = BE16_P(val_ptr); *(int16_t*)var.memadr = raw; @@ -872,7 +872,7 @@ void DGUSScreenHandlerMKS::HandleChangeLevelPoint(DGUS_VP_Variable &var, void *v skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandlerMKS::HandleStepPerMMChanged(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::handleStepPerMMChanged(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t raw = BE16_P(val_ptr); const float value = (float)raw; @@ -888,7 +888,7 @@ void DGUSScreenHandlerMKS::HandleStepPerMMChanged(DGUS_VP_Variable &var, void *v skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandlerMKS::HandleStepPerMMExtruderChanged(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::handleStepPerMMExtruderChanged(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t raw = BE16_P(val_ptr); const float value = (float)raw; @@ -907,7 +907,7 @@ void DGUSScreenHandlerMKS::HandleStepPerMMExtruderChanged(DGUS_VP_Variable &var, skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandlerMKS::HandleMaxSpeedChange(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::handleMaxSpeedChange(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t raw = BE16_P(val_ptr); const float value = (float)raw; @@ -923,7 +923,7 @@ void DGUSScreenHandlerMKS::HandleMaxSpeedChange(DGUS_VP_Variable &var, void *val skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandlerMKS::HandleExtruderMaxSpeedChange(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::handleExtruderMaxSpeedChange(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t raw = BE16_P(val_ptr); const float value = (float)raw; @@ -942,7 +942,7 @@ void DGUSScreenHandlerMKS::HandleExtruderMaxSpeedChange(DGUS_VP_Variable &var, v skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandlerMKS::HandleMaxAccChange(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::handleMaxAccChange(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t raw = BE16_P(val_ptr); const float value = (float)raw; @@ -958,7 +958,7 @@ void DGUSScreenHandlerMKS::HandleMaxAccChange(DGUS_VP_Variable &var, void *val_p skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandlerMKS::HandleExtruderAccChange(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::handleExtruderAccChange(DGUS_VP_Variable &var, void *val_ptr) { uint16_t raw = BE16_P(val_ptr); float value = (float)raw; ExtUI::extruder_t extruder; @@ -976,32 +976,32 @@ void DGUSScreenHandlerMKS::HandleExtruderAccChange(DGUS_VP_Variable &var, void * skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandlerMKS::HandleTravelAccChange(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::handleTravelAccChange(DGUS_VP_Variable &var, void *val_ptr) { uint16_t travel = BE16_P(val_ptr); planner.settings.travel_acceleration = (float)travel; skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandlerMKS::HandleFeedRateMinChange(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::handleFeedRateMinChange(DGUS_VP_Variable &var, void *val_ptr) { uint16_t t = BE16_P(val_ptr); planner.settings.min_feedrate_mm_s = (float)t; skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandlerMKS::HandleMin_T_F(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::handleMin_T_F(DGUS_VP_Variable &var, void *val_ptr) { uint16_t t_f = BE16_P(val_ptr); planner.settings.min_travel_feedrate_mm_s = (float)t_f; skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandlerMKS::HandleAccChange(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::handleAccChange(DGUS_VP_Variable &var, void *val_ptr) { uint16_t acc = BE16_P(val_ptr); planner.settings.acceleration = (float)acc; skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } #if ENABLED(PREVENT_COLD_EXTRUSION) - void DGUSScreenHandlerMKS::HandleGetExMinTemp(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandlerMKS::handleGetExMinTemp(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t ex_min_temp = BE16_P(val_ptr); thermalManager.extrude_min_temp = ex_min_temp; skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel @@ -1009,7 +1009,7 @@ void DGUSScreenHandlerMKS::HandleAccChange(DGUS_VP_Variable &var, void *val_ptr) #endif #if HAS_PID_HEATING - void DGUSScreenHandler::HandleTemperaturePIDChanged(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleTemperaturePIDChanged(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t rawvalue = BE16_P(val_ptr); const float value = float(rawvalue); float newvalue = 0; @@ -1041,7 +1041,7 @@ void DGUSScreenHandlerMKS::HandleAccChange(DGUS_VP_Variable &var, void *val_ptr) #endif // HAS_PID_HEATING #if ENABLED(BABYSTEPPING) - void DGUSScreenHandler::HandleLiveAdjustZ(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleLiveAdjustZ(DGUS_VP_Variable &var, void *val_ptr) { const float step = ZOffset_distance; const uint16_t flag = BE16_P(val_ptr); @@ -1078,11 +1078,11 @@ void DGUSScreenHandlerMKS::HandleAccChange(DGUS_VP_Variable &var, void *val_ptr) default: break; } - ForceCompleteUpdate(); + forceCompleteUpdate(); } #endif // BABYSTEPPING -void DGUSScreenHandlerMKS::GetManualFilament(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::getManualFilament(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t len = BE16_P(val_ptr); const float value = (float)len; @@ -1091,14 +1091,14 @@ void DGUSScreenHandlerMKS::GetManualFilament(DGUS_VP_Variable &var, void *val_pt skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandlerMKS::GetManualFilamentSpeed(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandlerMKS::getManualFilamentSpeed(DGUS_VP_Variable &var, void *val_ptr) { const uint16_t len = BE16_P(val_ptr); filamentSpeed_mm_s = len; skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel } -void DGUSScreenHandlerMKS::FilamentLoadUnload(DGUS_VP_Variable &var, void *val_ptr, const int filamentDir) { +void DGUSScreenHandlerMKS::filamentLoadUnload(DGUS_VP_Variable &var, void *val_ptr, const int filamentDir) { #if EITHER(HAS_MULTI_HOTEND, SINGLENOZZLE) uint8_t swap_tool = 0; #else @@ -1138,9 +1138,9 @@ void DGUSScreenHandlerMKS::FilamentLoadUnload(DGUS_VP_Variable &var, void *val_p #if BOTH(HAS_HOTEND, PREVENT_COLD_EXTRUSION) if (hotend_too_cold) { if (thermalManager.targetTooColdToExtrude(hotend_too_cold - 1)) thermalManager.setTargetHotend(thermalManager.extrude_min_temp, hotend_too_cold - 1); - sendinfoscreen(F("NOTICE"), nullptr, F("Please wait."), F("Nozzle heating!"), true, true, true, true); - SetupConfirmAction(nullptr); - GotoScreen(DGUSLCD_SCREEN_POPUP); + sendInfoScreen(F("NOTICE"), nullptr, F("Please wait."), F("Nozzle heating!"), true, true, true, true); + setupConfirmAction(nullptr); + gotoScreen(DGUS_SCREEN_POPUP); } #endif @@ -1159,7 +1159,7 @@ void DGUSScreenHandlerMKS::FilamentLoadUnload(DGUS_VP_Variable &var, void *val_p } /** - * M1002: Do a tool-change and relative move for FilamentLoadUnload + * M1002: Do a tool-change and relative move for filamentLoadUnload * within the G-code execution window for best concurrency. */ void GcodeSuite::M1002() { @@ -1181,17 +1181,17 @@ void GcodeSuite::M1002() { axis_relative = old_axis_relative; } -void DGUSScreenHandlerMKS::FilamentLoad(DGUS_VP_Variable &var, void *val_ptr) { - FilamentLoadUnload(var, val_ptr, 1); +void DGUSScreenHandlerMKS::filamentLoad(DGUS_VP_Variable &var, void *val_ptr) { + filamentLoadUnload(var, val_ptr, 1); } -void DGUSScreenHandlerMKS::FilamentUnLoad(DGUS_VP_Variable &var, void *val_ptr) { - FilamentLoadUnload(var, val_ptr, -1); +void DGUSScreenHandlerMKS::filamentUnload(DGUS_VP_Variable &var, void *val_ptr) { + filamentLoadUnload(var, val_ptr, -1); } #if ENABLED(DGUS_FILAMENT_LOADUNLOAD) - void DGUSScreenHandler::HandleFilamentOption(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleFilamentOption(DGUS_VP_Variable &var, void *val_ptr) { uint8_t e_temp = 0; filament_data.heated = false; uint16_t preheat_option = BE16_P(val_ptr); @@ -1237,7 +1237,7 @@ void DGUSScreenHandlerMKS::FilamentUnLoad(DGUS_VP_Variable &var, void *val_ptr) #if HAS_MULTI_HOTEND thermalManager.setTargetHotend(e_temp, ExtUI::extruder_t::E1); #endif - GotoScreen(DGUSLCD_SCREEN_UTILITY); + gotoScreen(DGUS_SCREEN_UTILITY); } else { // Go to the preheat screen to show the heating progress switch (var.VP) { @@ -1258,7 +1258,7 @@ void DGUSScreenHandlerMKS::FilamentUnLoad(DGUS_VP_Variable &var, void *val_ptr) } } - void DGUSScreenHandler::HandleFilamentLoadUnload(DGUS_VP_Variable &var) { + void DGUSScreenHandler::handleFilamentLoadUnload(DGUS_VP_Variable &var) { if (filament_data.action <= 0) return; // If we close to the target temperature, we can start load or unload the filament @@ -1274,7 +1274,7 @@ void DGUSScreenHandlerMKS::FilamentUnLoad(DGUS_VP_Variable &var, void *val_ptr) } else { // unload filament if (!filament_data.heated) { - GotoScreen(DGUSLCD_SCREEN_FILAMENT_UNLOADING); + gotoScreen(DGUS_SCREEN_FILAMENT_UNLOADING); filament_data.heated = true; } // Before unloading extrude to prevent jamming @@ -1293,21 +1293,21 @@ void DGUSScreenHandlerMKS::FilamentUnLoad(DGUS_VP_Variable &var, void *val_ptr) #endif // DGUS_FILAMENT_LOADUNLOAD bool DGUSScreenHandlerMKS::loop() { - dgusdisplay.loop(); + dgus.loop(); const millis_t ms = millis(); static millis_t next_event_ms = 0; static uint8_t language_times = 2; - if (!IsScreenComplete() || ELAPSED(ms, next_event_ms)) { + if (!isScreenComplete() || ELAPSED(ms, next_event_ms)) { next_event_ms = ms + DGUS_UPDATE_INTERVAL_MS; - UpdateScreenVPData(); + updateScreenVPData(); } if (language_times != 0) { - LanguagePInit(); - DGUS_LanguageDisplay(mks_language_index); + languagePInit(); + languageDisplay(mks_language_index); language_times--; } @@ -1326,40 +1326,40 @@ bool DGUSScreenHandlerMKS::loop() { thermalManager.extrude_min_temp = mks_min_extrusion_temp; #endif - DGUS_ExtrudeLoadInit(); + extrudeLoadInit(); - TERN_(DGUS_MKS_RUNOUT_SENSOR, DGUS_RunoutInit()); + TERN_(DGUS_MKS_RUNOUT_SENSOR, runoutInit()); if (TERN0(POWER_LOSS_RECOVERY, recovery.valid())) - GotoScreen(DGUSLCD_SCREEN_POWER_LOSS); + gotoScreen(DGUS_SCREEN_POWER_LOSS); else - GotoScreen(DGUSLCD_SCREEN_MAIN); + gotoScreen(DGUS_SCREEN_MAIN); } #if ENABLED(DGUS_MKS_RUNOUT_SENSOR) - if (booted && printingIsActive()) DGUS_Runout_Idle(); + if (booted && printingIsActive()) runoutIdle(); #endif #endif // SHOW_BOOTSCREEN - return IsScreenComplete(); + return isScreenComplete(); } -void DGUSScreenHandlerMKS::LanguagePInit() { +void DGUSScreenHandlerMKS::languagePInit() { switch (mks_language_index) { case MKS_SimpleChinese: - dgusdisplay.WriteVariable(VP_LANGUAGE_CHANGE1, (uint8_t)MKS_Language_Choose); - dgusdisplay.WriteVariable(VP_LANGUAGE_CHANGE2, (uint8_t)MKS_Language_NoChoose); + dgus.writeVariable(VP_LANGUAGE_CHANGE1, (uint8_t)MKS_Language_Choose); + dgus.writeVariable(VP_LANGUAGE_CHANGE2, (uint8_t)MKS_Language_NoChoose); break; case MKS_English: - dgusdisplay.WriteVariable(VP_LANGUAGE_CHANGE1, (uint8_t)MKS_Language_NoChoose); - dgusdisplay.WriteVariable(VP_LANGUAGE_CHANGE2, (uint8_t)MKS_Language_Choose); + dgus.writeVariable(VP_LANGUAGE_CHANGE1, (uint8_t)MKS_Language_NoChoose); + dgus.writeVariable(VP_LANGUAGE_CHANGE2, (uint8_t)MKS_Language_Choose); break; default: break; } } -void DGUSScreenHandlerMKS::DGUS_ExtrudeLoadInit() { +void DGUSScreenHandlerMKS::extrudeLoadInit() { ex_filament.ex_length = distanceFilament; ex_filament.ex_load_unload_flag = 0; ex_filament.ex_need_time = filamentSpeed_mm_s; @@ -1369,7 +1369,7 @@ void DGUSScreenHandlerMKS::DGUS_ExtrudeLoadInit() { ex_filament.ex_tick_start = 0; } -void DGUSScreenHandlerMKS::DGUS_RunoutInit() { +void DGUSScreenHandlerMKS::runoutInit() { #if PIN_EXISTS(MT_DET_1) SET_INPUT_PULLUP(MT_DET_1_PIN); #endif @@ -1379,7 +1379,7 @@ void DGUSScreenHandlerMKS::DGUS_RunoutInit() { runout_mks.runout_status = UNRUNOUT_STATUS; } -void DGUSScreenHandlerMKS::DGUS_Runout_Idle() { +void DGUSScreenHandlerMKS::runoutIdle() { #if ENABLED(DGUS_MKS_RUNOUT_SENSOR) // scanf runout pin switch (runout_mks.runout_status) { @@ -1387,11 +1387,11 @@ void DGUSScreenHandlerMKS::DGUS_Runout_Idle() { case RUNOUT_STATUS: runout_mks.runout_status = RUNOUT_BEGIN_STATUS; queue.inject(F("M25")); - GotoScreen(MKSLCD_SCREEN_PAUSE); + gotoScreen(MKSLCD_SCREEN_PAUSE); - sendinfoscreen(F("NOTICE"), nullptr, F("Please change filament!"), nullptr, true, true, true, true); - //SetupConfirmAction(nullptr); - GotoScreen(DGUSLCD_SCREEN_POPUP); + sendInfoScreen(F("NOTICE"), nullptr, F("Please change filament!"), nullptr, true, true, true, true); + //setupConfirmAction(nullptr); + gotoScreen(DGUS_SCREEN_POPUP); break; case UNRUNOUT_STATUS: @@ -1414,516 +1414,516 @@ void DGUSScreenHandlerMKS::DGUS_Runout_Idle() { #endif } -void DGUSScreenHandlerMKS::DGUS_LanguageDisplay(uint8_t var) { +void DGUSScreenHandlerMKS::languageDisplay(uint8_t var) { if (var == MKS_English) { const char home_buf_en[] = "Home"; - dgusdisplay.WriteVariable(VP_HOME_Dis, home_buf_en, 32, true); + dgus.writeVariable(VP_HOME_Dis, home_buf_en, 32, true); const char setting_buf_en[] = "Setting"; - dgusdisplay.WriteVariable(VP_Setting_Dis, setting_buf_en, 32, true); + dgus.writeVariable(VP_Setting_Dis, setting_buf_en, 32, true); const char Tool_buf_en[] = "Tool"; - dgusdisplay.WriteVariable(VP_Tool_Dis, Tool_buf_en, 32, true); + dgus.writeVariable(VP_Tool_Dis, Tool_buf_en, 32, true); const char Print_buf_en[] = "Print"; - dgusdisplay.WriteVariable(VP_Print_Dis, Print_buf_en, 32, true); + dgus.writeVariable(VP_Print_Dis, Print_buf_en, 32, true); const char Language_buf_en[] = "Language"; - dgusdisplay.WriteVariable(VP_Language_Dis, Language_buf_en, 32, true); + dgus.writeVariable(VP_Language_Dis, Language_buf_en, 32, true); const char About_buf_en[] = "About"; - dgusdisplay.WriteVariable(VP_About_Dis, About_buf_en, 32, true); + dgus.writeVariable(VP_About_Dis, About_buf_en, 32, true); const char Config_buf_en[] = "Config"; - dgusdisplay.WriteVariable(VP_Config_Dis, Config_buf_en, 32, true); + dgus.writeVariable(VP_Config_Dis, Config_buf_en, 32, true); const char MotorConfig_buf_en[] = "MotorConfig"; - dgusdisplay.WriteVariable(VP_MotorConfig_Dis, MotorConfig_buf_en, 32, true); + dgus.writeVariable(VP_MotorConfig_Dis, MotorConfig_buf_en, 32, true); const char LevelConfig_buf_en[] = "LevelConfig"; - dgusdisplay.WriteVariable(VP_LevelConfig_Dis, LevelConfig_buf_en, 32, true); + dgus.writeVariable(VP_LevelConfig_Dis, LevelConfig_buf_en, 32, true); const char TemperatureConfig_buf_en[] = "Temperature"; - dgusdisplay.WriteVariable(VP_TemperatureConfig_Dis, TemperatureConfig_buf_en, 32, true); + dgus.writeVariable(VP_TemperatureConfig_Dis, TemperatureConfig_buf_en, 32, true); const char Advance_buf_en[] = "Advance"; - dgusdisplay.WriteVariable(VP_Advance_Dis, Advance_buf_en, 32, true); + dgus.writeVariable(VP_Advance_Dis, Advance_buf_en, 32, true); const char Filament_buf_en[] = "Extrude"; - dgusdisplay.WriteVariable(VP_Filament_Dis, Filament_buf_en, 32, true); + dgus.writeVariable(VP_Filament_Dis, Filament_buf_en, 32, true); const char Move_buf_en[] = "Move"; - dgusdisplay.WriteVariable(VP_Move_Dis, Move_buf_en, 32, true); + dgus.writeVariable(VP_Move_Dis, Move_buf_en, 32, true); #if ENABLED(AUTO_BED_LEVELING_BILINEAR) const char Level_buf_en[] = "AutoLevel"; - dgusdisplay.WriteVariable(VP_Level_Dis, Level_buf_en, 32, true); + dgus.writeVariable(VP_Level_Dis, Level_buf_en, 32, true); #elif ENABLED(MESH_BED_LEVELING) const char Level_buf_en[] = "MeshLevel"; - dgusdisplay.WriteVariable(VP_Level_Dis, Level_buf_en, 32, true); + dgus.writeVariable(VP_Level_Dis, Level_buf_en, 32, true); #else const char Level_buf_en[] = "Level"; - dgusdisplay.WriteVariable(VP_Level_Dis, Level_buf_en, 32, true); + dgus.writeVariable(VP_Level_Dis, Level_buf_en, 32, true); #endif const char MotorPluse_buf_en[] = "MotorPluse"; - dgusdisplay.WriteVariable(VP_MotorPluse_Dis, MotorPluse_buf_en, 32, true); + dgus.writeVariable(VP_MotorPluse_Dis, MotorPluse_buf_en, 32, true); const char MotorMaxSpeed_buf_en[] = "MotorMaxSpeed"; - dgusdisplay.WriteVariable(VP_MotorMaxSpeed_Dis, MotorMaxSpeed_buf_en, 32, true); + dgus.writeVariable(VP_MotorMaxSpeed_Dis, MotorMaxSpeed_buf_en, 32, true); const char MotorMaxAcc_buf_en[] = "MotorAcc"; - dgusdisplay.WriteVariable(VP_MotorMaxAcc_Dis, MotorMaxAcc_buf_en, 32, true); + dgus.writeVariable(VP_MotorMaxAcc_Dis, MotorMaxAcc_buf_en, 32, true); const char TravelAcc_buf_en[] = "TravelAcc"; - dgusdisplay.WriteVariable(VP_TravelAcc_Dis, TravelAcc_buf_en, 32, true); + dgus.writeVariable(VP_TravelAcc_Dis, TravelAcc_buf_en, 32, true); const char FeedRateMin_buf_en[] = "FeedRateMin"; - dgusdisplay.WriteVariable(VP_FeedRateMin_Dis, FeedRateMin_buf_en, 32, true); + dgus.writeVariable(VP_FeedRateMin_Dis, FeedRateMin_buf_en, 32, true); const char TravelFeeRateMin_buf_en[] = "TravelFeedRateMin"; - dgusdisplay.WriteVariable(VP_TravelFeeRateMin_Dis, TravelFeeRateMin_buf_en, 32, true); + dgus.writeVariable(VP_TravelFeeRateMin_Dis, TravelFeeRateMin_buf_en, 32, true); const char Acc_buf_en[] = "Acc"; - dgusdisplay.WriteVariable(VP_ACC_Dis, Acc_buf_en, 32, true); + dgus.writeVariable(VP_ACC_Dis, Acc_buf_en, 32, true); const char Point_One_buf_en[] = "Point_First"; - dgusdisplay.WriteVariable(VP_Point_One_Dis, Point_One_buf_en, 32, true); + dgus.writeVariable(VP_Point_One_Dis, Point_One_buf_en, 32, true); const char Point_Two_buf_en[] = "Point_Second"; - dgusdisplay.WriteVariable(VP_Point_Two_Dis, Point_Two_buf_en, 32, true); + dgus.writeVariable(VP_Point_Two_Dis, Point_Two_buf_en, 32, true); const char Point_Three_buf_en[] = "Point_Third"; - dgusdisplay.WriteVariable(VP_Point_Three_Dis, Point_Three_buf_en, 32, true); + dgus.writeVariable(VP_Point_Three_Dis, Point_Three_buf_en, 32, true); const char Point_Four_buf_en[] = "Point_Fourth"; - dgusdisplay.WriteVariable(VP_Point_Four_Dis, Point_Four_buf_en, 32, true); + dgus.writeVariable(VP_Point_Four_Dis, Point_Four_buf_en, 32, true); const char Point_Five_buf_en[] = "Point_Fifth"; - dgusdisplay.WriteVariable(VP_Point_Five_Dis, Point_Five_buf_en, 32, true); + dgus.writeVariable(VP_Point_Five_Dis, Point_Five_buf_en, 32, true); const char Extrusion_buf_en[] = "Extrusion"; - dgusdisplay.WriteVariable(VP_Extrusion_Dis, Extrusion_buf_en, 32, true); + dgus.writeVariable(VP_Extrusion_Dis, Extrusion_buf_en, 32, true); const char HeatBed_buf_en[] = "HeatBed"; - dgusdisplay.WriteVariable(VP_HeatBed_Dis, HeatBed_buf_en, 32, true); + dgus.writeVariable(VP_HeatBed_Dis, HeatBed_buf_en, 32, true); const char FactoryDefaults_buf_en[] = "FactoryDefaults"; - dgusdisplay.WriteVariable(VP_FactoryDefaults_Dis, FactoryDefaults_buf_en, 32, true); + dgus.writeVariable(VP_FactoryDefaults_Dis, FactoryDefaults_buf_en, 32, true); const char StoreSetting_buf_en[] = "StoreSetting"; - dgusdisplay.WriteVariable(VP_StoreSetting_Dis, StoreSetting_buf_en, 32, true); + dgus.writeVariable(VP_StoreSetting_Dis, StoreSetting_buf_en, 32, true); const char PrintPauseConfig_buf_en[] = "PrintPauseConfig"; - dgusdisplay.WriteVariable(VP_PrintPauseConfig_Dis, PrintPauseConfig_buf_en, 32, true); + dgus.writeVariable(VP_PrintPauseConfig_Dis, PrintPauseConfig_buf_en, 32, true); const char X_Pluse_buf_en[] = "X_Pluse"; - dgusdisplay.WriteVariable(VP_X_Pluse_Dis, X_Pluse_buf_en, 32, true); + dgus.writeVariable(VP_X_Pluse_Dis, X_Pluse_buf_en, 32, true); const char Y_Pluse_buf_en[] = "Y_Pluse"; - dgusdisplay.WriteVariable(VP_Y_Pluse_Dis, Y_Pluse_buf_en, 32, true); + dgus.writeVariable(VP_Y_Pluse_Dis, Y_Pluse_buf_en, 32, true); const char Z_Pluse_buf_en[] = "Z_Pluse"; - dgusdisplay.WriteVariable(VP_Z_Pluse_Dis, Z_Pluse_buf_en, 32, true); + dgus.writeVariable(VP_Z_Pluse_Dis, Z_Pluse_buf_en, 32, true); const char E0_Pluse_buf_en[] = "E0_Pluse"; - dgusdisplay.WriteVariable(VP_E0_Pluse_Dis, E0_Pluse_buf_en, 32, true); + dgus.writeVariable(VP_E0_Pluse_Dis, E0_Pluse_buf_en, 32, true); const char E1_Pluse_buf_en[] = "E1_Pluse"; - dgusdisplay.WriteVariable(VP_E1_Pluse_Dis, E1_Pluse_buf_en, 32, true); + dgus.writeVariable(VP_E1_Pluse_Dis, E1_Pluse_buf_en, 32, true); const char X_Max_Speed_buf_en[] = "X_Max_Speed"; - dgusdisplay.WriteVariable(VP_X_Max_Speed_Dis, X_Max_Speed_buf_en, 32, true); + dgus.writeVariable(VP_X_Max_Speed_Dis, X_Max_Speed_buf_en, 32, true); const char Y_Max_Speed_buf_en[] = "Y_Max_Speed"; - dgusdisplay.WriteVariable(VP_Y_Max_Speed_Dis, Y_Max_Speed_buf_en, 32, true); + dgus.writeVariable(VP_Y_Max_Speed_Dis, Y_Max_Speed_buf_en, 32, true); const char Z_Max_Speed_buf_en[] = "Z_Max_Speed"; - dgusdisplay.WriteVariable(VP_Z_Max_Speed_Dis, Z_Max_Speed_buf_en, 32, true); + dgus.writeVariable(VP_Z_Max_Speed_Dis, Z_Max_Speed_buf_en, 32, true); const char E0_Max_Speed_buf_en[] = "E0_Max_Speed"; - dgusdisplay.WriteVariable(VP_E0_Max_Speed_Dis, E0_Max_Speed_buf_en, 32, true); + dgus.writeVariable(VP_E0_Max_Speed_Dis, E0_Max_Speed_buf_en, 32, true); const char E1_Max_Speed_buf_en[] = "E1_Max_Speed"; - dgusdisplay.WriteVariable(VP_E1_Max_Speed_Dis, E1_Max_Speed_buf_en, 32, true); + dgus.writeVariable(VP_E1_Max_Speed_Dis, E1_Max_Speed_buf_en, 32, true); const char X_Max_Acc_Speed_buf_en[] = "X_Max_Acc_Speed"; - dgusdisplay.WriteVariable(VP_X_Max_Acc_Speed_Dis, X_Max_Acc_Speed_buf_en, 32, true); + dgus.writeVariable(VP_X_Max_Acc_Speed_Dis, X_Max_Acc_Speed_buf_en, 32, true); const char Y_Max_Acc_Speed_buf_en[] = "Y_Max_Acc_Speed"; - dgusdisplay.WriteVariable(VP_Y_Max_Acc_Speed_Dis, Y_Max_Acc_Speed_buf_en, 32, true); + dgus.writeVariable(VP_Y_Max_Acc_Speed_Dis, Y_Max_Acc_Speed_buf_en, 32, true); const char Z_Max_Acc_Speed_buf_en[] = "Z_Max_Acc_Speed"; - dgusdisplay.WriteVariable(VP_Z_Max_Acc_Speed_Dis, Z_Max_Acc_Speed_buf_en, 32, true); + dgus.writeVariable(VP_Z_Max_Acc_Speed_Dis, Z_Max_Acc_Speed_buf_en, 32, true); const char E0_Max_Acc_Speed_buf_en[] = "E0_Max_Acc_Speed"; - dgusdisplay.WriteVariable(VP_E0_Max_Acc_Speed_Dis, E0_Max_Acc_Speed_buf_en, 32, true); + dgus.writeVariable(VP_E0_Max_Acc_Speed_Dis, E0_Max_Acc_Speed_buf_en, 32, true); const char E1_Max_Acc_Speed_buf_en[] = "E1_Max_Acc_Speed"; - dgusdisplay.WriteVariable(VP_E1_Max_Acc_Speed_Dis, E1_Max_Acc_Speed_buf_en, 32, true); + dgus.writeVariable(VP_E1_Max_Acc_Speed_Dis, E1_Max_Acc_Speed_buf_en, 32, true); const char X_PARK_POS_buf_en[] = "X_PARK_POS"; - dgusdisplay.WriteVariable(VP_X_PARK_POS_Dis, X_PARK_POS_buf_en, 32, true); + dgus.writeVariable(VP_X_PARK_POS_Dis, X_PARK_POS_buf_en, 32, true); const char Y_PARK_POS_buf_en[] = "Y_PARK_POS"; - dgusdisplay.WriteVariable(VP_Y_PARK_POS_Dis, Y_PARK_POS_buf_en, 32, true); + dgus.writeVariable(VP_Y_PARK_POS_Dis, Y_PARK_POS_buf_en, 32, true); const char Z_PARK_POS_buf_en[] = "Z_PARK_POS"; - dgusdisplay.WriteVariable(VP_Z_PARK_POS_Dis, Z_PARK_POS_buf_en, 32, true); + dgus.writeVariable(VP_Z_PARK_POS_Dis, Z_PARK_POS_buf_en, 32, true); const char Length_buf_en[] = "Length"; - dgusdisplay.WriteVariable(VP_Length_Dis, Length_buf_en, 32, true); + dgus.writeVariable(VP_Length_Dis, Length_buf_en, 32, true); const char Speed_buf_en[] = "Speed"; - dgusdisplay.WriteVariable(VP_Speed_Dis, Speed_buf_en, 32, true); + dgus.writeVariable(VP_Speed_Dis, Speed_buf_en, 32, true); const char InOut_buf_en[] = "InOut"; - dgusdisplay.WriteVariable(VP_InOut_Dis, InOut_buf_en, 32, true); + dgus.writeVariable(VP_InOut_Dis, InOut_buf_en, 32, true); const char PrintTimet_buf_en[] = "PrintTime"; - dgusdisplay.WriteVariable(VP_PrintTime_Dis, PrintTimet_buf_en, 32, true); + dgus.writeVariable(VP_PrintTime_Dis, PrintTimet_buf_en, 32, true); const char E0_Temp_buf_en[] = "E0_Temp"; - dgusdisplay.WriteVariable(VP_E0_Temp_Dis, E0_Temp_buf_en, 32, true); + dgus.writeVariable(VP_E0_Temp_Dis, E0_Temp_buf_en, 32, true); const char E1_Temp_buf_en[] = "E1_Temp"; - dgusdisplay.WriteVariable(VP_E1_Temp_Dis, E1_Temp_buf_en, 32, true); + dgus.writeVariable(VP_E1_Temp_Dis, E1_Temp_buf_en, 32, true); const char HB_Temp_buf_en[] = "HB_Temp"; - dgusdisplay.WriteVariable(VP_HB_Temp_Dis, HB_Temp_buf_en, 32, true); + dgus.writeVariable(VP_HB_Temp_Dis, HB_Temp_buf_en, 32, true); const char Feedrate_buf_en[] = "Feedrate"; - dgusdisplay.WriteVariable(VP_Feedrate_Dis, Feedrate_buf_en, 32, true); + dgus.writeVariable(VP_Feedrate_Dis, Feedrate_buf_en, 32, true); const char PrintAcc_buf_en[] = "PrintSpeed"; - dgusdisplay.WriteVariable(VP_PrintAcc_Dis, PrintAcc_buf_en, 32, true); + dgus.writeVariable(VP_PrintAcc_Dis, PrintAcc_buf_en, 32, true); const char FAN_Speed_buf_en[] = "FAN_Speed"; - dgusdisplay.WriteVariable(VP_Fan_Speed_Dis, FAN_Speed_buf_en, 32, true); + dgus.writeVariable(VP_Fan_Speed_Dis, FAN_Speed_buf_en, 32, true); const char Printing_buf_en[] = "Printing"; - dgusdisplay.WriteVariable(VP_Printing_Dis, Printing_buf_en, 32, true); + dgus.writeVariable(VP_Printing_Dis, Printing_buf_en, 32, true); const char Info_EEPROM_1_buf_en[] = "Store setting?"; - dgusdisplay.WriteVariable(VP_Info_EEPROM_1_Dis, Info_EEPROM_1_buf_en, 32, true); + dgus.writeVariable(VP_Info_EEPROM_1_Dis, Info_EEPROM_1_buf_en, 32, true); const char Info_EEPROM_2_buf_en[] = "Revert setting?"; - dgusdisplay.WriteVariable(VP_Info_EEPROM_2_Dis, Info_EEPROM_2_buf_en, 32, true); + dgus.writeVariable(VP_Info_EEPROM_2_Dis, Info_EEPROM_2_buf_en, 32, true); const char Info_PrintFinish_1_buf_en[] = "Print Done"; - dgusdisplay.WriteVariable(VP_Info_PrintFinish_1_Dis, Info_PrintFinish_1_buf_en, 32, true); + dgus.writeVariable(VP_Info_PrintFinish_1_Dis, Info_PrintFinish_1_buf_en, 32, true); const char TMC_X_Step_buf_en[] = "X_SenSitivity"; - dgusdisplay.WriteVariable(VP_TMC_X_Step_Dis, TMC_X_Step_buf_en, 32, true); + dgus.writeVariable(VP_TMC_X_Step_Dis, TMC_X_Step_buf_en, 32, true); const char TMC_Y_Step_buf_en[] = "Y_SenSitivity"; - dgusdisplay.WriteVariable(VP_TMC_Y_Step_Dis, TMC_Y_Step_buf_en, 32, true); + dgus.writeVariable(VP_TMC_Y_Step_Dis, TMC_Y_Step_buf_en, 32, true); const char TMC_Z_Step_buf_en[] = "Z_SenSitivity"; - dgusdisplay.WriteVariable(VP_TMC_Z_Step_Dis, TMC_Z_Step_buf_en, 32, true); + dgus.writeVariable(VP_TMC_Z_Step_Dis, TMC_Z_Step_buf_en, 32, true); const char TMC_X_Current_buf_en[] = "X_Current"; - dgusdisplay.WriteVariable(VP_TMC_X_Current_Dis, TMC_X_Current_buf_en, 32, true); + dgus.writeVariable(VP_TMC_X_Current_Dis, TMC_X_Current_buf_en, 32, true); const char TMC_Y_Current_buf_en[] = "Y_Current"; - dgusdisplay.WriteVariable(VP_TMC_Y_Current_Dis, TMC_Y_Current_buf_en, 32, true); + dgus.writeVariable(VP_TMC_Y_Current_Dis, TMC_Y_Current_buf_en, 32, true); const char TMC_Z_Current_buf_en[] = "Z_Current"; - dgusdisplay.WriteVariable(VP_TMC_Z_Current_Dis, TMC_Z_Current_buf_en, 32, true); + dgus.writeVariable(VP_TMC_Z_Current_Dis, TMC_Z_Current_buf_en, 32, true); const char TMC_E0_Current_buf_en[] = "E0_Current"; - dgusdisplay.WriteVariable(VP_TMC_E0_Current_Dis, TMC_E0_Current_buf_en, 32, true); + dgus.writeVariable(VP_TMC_E0_Current_Dis, TMC_E0_Current_buf_en, 32, true); const char TMC_X1_Current_buf_en[] = "X1_Current"; - dgusdisplay.WriteVariable(VP_TMC_X1_Current_Dis, TMC_X1_Current_buf_en, 32, true); + dgus.writeVariable(VP_TMC_X1_Current_Dis, TMC_X1_Current_buf_en, 32, true); const char TMC_Y1_Current_buf_en[] = "Y1_Current"; - dgusdisplay.WriteVariable(VP_TMC_Y1_Current_Dis, TMC_Y1_Current_buf_en, 32, true); + dgus.writeVariable(VP_TMC_Y1_Current_Dis, TMC_Y1_Current_buf_en, 32, true); const char TMC_Z1_Current_buf_en[] = "Z1_Current"; - dgusdisplay.WriteVariable(VP_TMC_Z1_Current_Dis, TMC_Z1_Current_buf_en, 32, true); + dgus.writeVariable(VP_TMC_Z1_Current_Dis, TMC_Z1_Current_buf_en, 32, true); const char TMC_E1_Current_buf_en[] = "E1_Current"; - dgusdisplay.WriteVariable(VP_TMC_E1_Current_Dis, TMC_E1_Current_buf_en, 32, true); + dgus.writeVariable(VP_TMC_E1_Current_Dis, TMC_E1_Current_buf_en, 32, true); const char Min_Ex_Temp_buf_en[] = "Min_Ex_Temp"; - dgusdisplay.WriteVariable(VP_Min_Ex_Temp_Dis, Min_Ex_Temp_buf_en, 32, true); + dgus.writeVariable(VP_Min_Ex_Temp_Dis, Min_Ex_Temp_buf_en, 32, true); const char AutoLEVEL_INFO1_buf_en[] = "Please Press Button!"; - dgusdisplay.WriteVariable(VP_AutoLEVEL_INFO1, AutoLEVEL_INFO1_buf_en, 32, true); + dgus.writeVariable(VP_AutoLEVEL_INFO1, AutoLEVEL_INFO1_buf_en, 32, true); const char EX_TEMP_INFO2_buf_en[] = "Please wait a monent"; - dgusdisplay.WriteVariable(VP_EX_TEMP_INFO2_Dis, EX_TEMP_INFO2_buf_en, 32, true); + dgus.writeVariable(VP_EX_TEMP_INFO2_Dis, EX_TEMP_INFO2_buf_en, 32, true); const char EX_TEMP_INFO3_buf_en[] = "Cancle"; - dgusdisplay.WriteVariable(VP_EX_TEMP_INFO3_Dis, EX_TEMP_INFO3_buf_en, 32, true); + dgus.writeVariable(VP_EX_TEMP_INFO3_Dis, EX_TEMP_INFO3_buf_en, 32, true); const char PrintConfrim_Info_buf_en[] = "Start Print?"; - dgusdisplay.WriteVariable(VP_PrintConfrim_Info_Dis, PrintConfrim_Info_buf_en, 32, true); + dgus.writeVariable(VP_PrintConfrim_Info_Dis, PrintConfrim_Info_buf_en, 32, true); const char StopPrintConfrim_Info_buf_en[] = "Stop Print?"; - dgusdisplay.WriteVariable(VP_StopPrintConfrim_Info_Dis, StopPrintConfrim_Info_buf_en, 32, true); + dgus.writeVariable(VP_StopPrintConfrim_Info_Dis, StopPrintConfrim_Info_buf_en, 32, true); const char Printting_buf_en[] = "Printing"; - dgusdisplay.WriteVariable(VP_Printting_Dis, Printting_buf_en, 32, true); + dgus.writeVariable(VP_Printting_Dis, Printting_buf_en, 32, true); const char LCD_BLK_buf_en[] = "Backlight"; - dgusdisplay.WriteVariable(VP_LCD_BLK_Dis, LCD_BLK_buf_en, 32, true); + dgus.writeVariable(VP_LCD_BLK_Dis, LCD_BLK_buf_en, 32, true); } else if (var == MKS_SimpleChinese) { uint16_t home_buf_ch[] = { 0xF7D6, 0xB3D2 }; - dgusdisplay.WriteVariable(VP_HOME_Dis, home_buf_ch, 4, true); + dgus.writeVariable(VP_HOME_Dis, home_buf_ch, 4, true); const uint16_t Setting_Dis[] = { 0xE8C9, 0xC3D6, 0x2000, 0x2000, 0x2000 }; - dgusdisplay.WriteVariable(VP_Setting_Dis, Setting_Dis, 7, true); + dgus.writeVariable(VP_Setting_Dis, Setting_Dis, 7, true); const uint16_t Tool_Dis[] = { 0xA4B9, 0xDFBE }; - dgusdisplay.WriteVariable(VP_Tool_Dis, Tool_Dis, 4, true); + dgus.writeVariable(VP_Tool_Dis, Tool_Dis, 4, true); const uint16_t Print_buf_ch[] = { 0xF2B4, 0xA1D3, 0x2000 }; - dgusdisplay.WriteVariable(VP_Print_Dis, Print_buf_ch, 6, true); + dgus.writeVariable(VP_Print_Dis, Print_buf_ch, 6, true); const uint16_t Language_buf_ch[] = { 0xEFD3, 0xD4D1, 0x2000, 0x2000 }; - dgusdisplay.WriteVariable(VP_Language_Dis, Language_buf_ch, 8, true); + dgus.writeVariable(VP_Language_Dis, Language_buf_ch, 8, true); const uint16_t About_buf_ch[] = { 0xD8B9, 0xDAD3, 0x2000 }; - dgusdisplay.WriteVariable(VP_About_Dis, About_buf_ch, 6, true); + dgus.writeVariable(VP_About_Dis, About_buf_ch, 6, true); const uint16_t Config_buf_ch[] = { 0xE4C5, 0xC3D6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Config_Dis, Config_buf_ch, 6, true); + dgus.writeVariable(VP_Config_Dis, Config_buf_ch, 6, true); const uint16_t MotorConfig_buf_ch[] = { 0xE7B5, 0xFABB, 0xE4C5, 0xC3D6, 0x2000 }; - dgusdisplay.WriteVariable(VP_MotorConfig_Dis, MotorConfig_buf_ch, 12, true); + dgus.writeVariable(VP_MotorConfig_Dis, MotorConfig_buf_ch, 12, true); const uint16_t LevelConfig_buf_ch[] = { 0xD6CA, 0xAFB6, 0xF7B5, 0xBDC6, 0xE8C9, 0xC3D6, 0x2000 }; - dgusdisplay.WriteVariable(VP_LevelConfig_Dis, LevelConfig_buf_ch, 32, true); + dgus.writeVariable(VP_LevelConfig_Dis, LevelConfig_buf_ch, 32, true); const uint16_t TemperatureConfig_buf_ch[] = { 0xC2CE, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_TemperatureConfig_Dis, TemperatureConfig_buf_ch, 11, true); + dgus.writeVariable(VP_TemperatureConfig_Dis, TemperatureConfig_buf_ch, 11, true); const uint16_t Advance_buf_ch[] = { 0xDFB8, 0xB6BC, 0xE8C9, 0xC3D6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Advance_Dis, Advance_buf_ch, 16, true); + dgus.writeVariable(VP_Advance_Dis, Advance_buf_ch, 16, true); const uint16_t Filament_buf_ch[] = { 0xB7BC, 0xF6B3, 0x2000 }; - dgusdisplay.WriteVariable(VP_Filament_Dis, Filament_buf_ch, 8, true); + dgus.writeVariable(VP_Filament_Dis, Filament_buf_ch, 8, true); const uint16_t Move_buf_ch[] = { 0xC6D2, 0xAFB6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Move_Dis, Move_buf_ch, 4, true); + dgus.writeVariable(VP_Move_Dis, Move_buf_ch, 4, true); #if ENABLED(AUTO_BED_LEVELING_BILINEAR) const uint16_t Level_buf_ch[] = { 0xD4D7, 0xAFB6, 0xF7B5, 0xBDC6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Level_Dis, Level_buf_ch, 32, true); + dgus.writeVariable(VP_Level_Dis, Level_buf_ch, 32, true); #elif ENABLED(MESH_BED_LEVELING) const uint16_t Level_buf_ch[] = { 0xF8CD, 0xF1B8, 0xF7B5, 0xBDC6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Level_Dis, Level_buf_ch, 32, true); + dgus.writeVariable(VP_Level_Dis, Level_buf_ch, 32, true); #else const uint16_t Level_buf_ch[] = { 0xD6CA, 0xAFB6, 0xF7B5, 0xBDC6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Level_Dis, Level_buf_ch, 32, true); + dgus.writeVariable(VP_Level_Dis, Level_buf_ch, 32, true); #endif const uint16_t MotorPluse_buf_ch[] = { 0xF6C2, 0xE5B3, 0x2000 }; - dgusdisplay.WriteVariable(VP_MotorPluse_Dis, MotorPluse_buf_ch, 16, true); + dgus.writeVariable(VP_MotorPluse_Dis, MotorPluse_buf_ch, 16, true); const uint16_t MotorMaxSpeed_buf_ch[] = { 0xEED7, 0xF3B4, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_MotorMaxSpeed_Dis, MotorMaxSpeed_buf_ch, 16, true); + dgus.writeVariable(VP_MotorMaxSpeed_Dis, MotorMaxSpeed_buf_ch, 16, true); const uint16_t MotorMaxAcc_buf_ch[] = { 0xEED7, 0xF3B4, 0xD3BC, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_MotorMaxAcc_Dis, MotorMaxAcc_buf_ch, 16, true); + dgus.writeVariable(VP_MotorMaxAcc_Dis, MotorMaxAcc_buf_ch, 16, true); const uint16_t TravelAcc_buf_ch[] = { 0xD5BF, 0xD0D0, 0xD3BC, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_TravelAcc_Dis, TravelAcc_buf_ch, 16, true); + dgus.writeVariable(VP_TravelAcc_Dis, TravelAcc_buf_ch, 16, true); const uint16_t FeedRateMin_buf_ch[] = { 0xEED7, 0xA1D0, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_FeedRateMin_Dis, FeedRateMin_buf_ch, 12, true); + dgus.writeVariable(VP_FeedRateMin_Dis, FeedRateMin_buf_ch, 12, true); const uint16_t TravelFeeRateMin_buf_ch[] = { 0xD5BF, 0xD0D0, 0xEED7, 0xA1D0, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_TravelFeeRateMin_Dis, TravelFeeRateMin_buf_ch, 24, true); + dgus.writeVariable(VP_TravelFeeRateMin_Dis, TravelFeeRateMin_buf_ch, 24, true); const uint16_t Acc_buf_ch[] = { 0xD3BC, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_ACC_Dis, Acc_buf_ch, 16, true); + dgus.writeVariable(VP_ACC_Dis, Acc_buf_ch, 16, true); const uint16_t Point_One_buf_ch[] = { 0xDAB5, 0xBBD2, 0xE3B5, 0x2000 }; - dgusdisplay.WriteVariable(VP_Point_One_Dis, Point_One_buf_ch, 12, true); + dgus.writeVariable(VP_Point_One_Dis, Point_One_buf_ch, 12, true); const uint16_t Point_Two_buf_ch[] = { 0xDAB5, 0xFEB6, 0xE3B5, 0x2000 }; - dgusdisplay.WriteVariable(VP_Point_Two_Dis, Point_Two_buf_ch, 12, true); + dgus.writeVariable(VP_Point_Two_Dis, Point_Two_buf_ch, 12, true); const uint16_t Point_Three_buf_ch[] = { 0xDAB5, 0xFDC8, 0xE3B5, 0x2000 }; - dgusdisplay.WriteVariable(VP_Point_Three_Dis, Point_Three_buf_ch, 12, true); + dgus.writeVariable(VP_Point_Three_Dis, Point_Three_buf_ch, 12, true); const uint16_t Point_Four_buf_ch[] = { 0xDAB5, 0xC4CB, 0xE3B5, 0x2000 }; - dgusdisplay.WriteVariable(VP_Point_Four_Dis, Point_Four_buf_ch, 12, true); + dgus.writeVariable(VP_Point_Four_Dis, Point_Four_buf_ch, 12, true); const uint16_t Point_Five_buf_ch[] = { 0xDAB5, 0xE5CE, 0xE3B5, 0x2000 }; - dgusdisplay.WriteVariable(VP_Point_Five_Dis, Point_Five_buf_ch, 12, true); + dgus.writeVariable(VP_Point_Five_Dis, Point_Five_buf_ch, 12, true); const uint16_t Extrusion_buf_ch[] = { 0xB7BC, 0xF6B3, 0xB7CD, 0x2000 }; - dgusdisplay.WriteVariable(VP_Extrusion_Dis, Extrusion_buf_ch, 12, true); + dgus.writeVariable(VP_Extrusion_Dis, Extrusion_buf_ch, 12, true); const uint16_t HeatBed_buf_ch[] = { 0xC8C8, 0xB2B4, 0x2000 }; - dgusdisplay.WriteVariable(VP_HeatBed_Dis, HeatBed_buf_ch, 12, true); + dgus.writeVariable(VP_HeatBed_Dis, HeatBed_buf_ch, 12, true); const uint16_t FactoryDefaults_buf_ch[] = { 0xD6BB, 0xB4B8, 0xF6B3, 0xA7B3, 0xE8C9, 0xC3D6, 0x2000 }; - dgusdisplay.WriteVariable(VP_FactoryDefaults_Dis, FactoryDefaults_buf_ch, 16, true); + dgus.writeVariable(VP_FactoryDefaults_Dis, FactoryDefaults_buf_ch, 16, true); const uint16_t StoreSetting_buf_ch[] = { 0xA3B1, 0xE6B4, 0xE8C9, 0xC3D6, 0x2000 }; - dgusdisplay.WriteVariable(VP_StoreSetting_Dis, StoreSetting_buf_ch, 16, true); + dgus.writeVariable(VP_StoreSetting_Dis, StoreSetting_buf_ch, 16, true); const uint16_t PrintPauseConfig_buf_ch[] = { 0xDDD4, 0xA3CD, 0xBBCE, 0xC3D6, 0x2000 }; - dgusdisplay.WriteVariable(VP_PrintPauseConfig_Dis, PrintPauseConfig_buf_ch, 32, true); + dgus.writeVariable(VP_PrintPauseConfig_Dis, PrintPauseConfig_buf_ch, 32, true); const uint16_t X_Pluse_buf_ch[] = { 0x2058, 0xE1D6, 0xF6C2, 0xE5B3, 0x2000 }; - dgusdisplay.WriteVariable(VP_X_Pluse_Dis, X_Pluse_buf_ch, 16, true); + dgus.writeVariable(VP_X_Pluse_Dis, X_Pluse_buf_ch, 16, true); const uint16_t Y_Pluse_buf_ch[] = { 0x2059, 0xE1D6, 0xF6C2, 0xE5B3, 0x2000 }; - dgusdisplay.WriteVariable(VP_Y_Pluse_Dis, Y_Pluse_buf_ch, 16, true); + dgus.writeVariable(VP_Y_Pluse_Dis, Y_Pluse_buf_ch, 16, true); const uint16_t Z_Pluse_buf_ch[] = { 0x205A, 0xE1D6, 0xF6C2, 0xE5B3, 0x2000 }; - dgusdisplay.WriteVariable(VP_Z_Pluse_Dis, Z_Pluse_buf_ch, 16, true); + dgus.writeVariable(VP_Z_Pluse_Dis, Z_Pluse_buf_ch, 16, true); const uint16_t E0_Pluse_buf_ch[] = { 0x3045, 0xE1D6, 0xF6C2, 0xE5B3, 0x2000 }; - dgusdisplay.WriteVariable(VP_E0_Pluse_Dis, E0_Pluse_buf_ch, 16, true); + dgus.writeVariable(VP_E0_Pluse_Dis, E0_Pluse_buf_ch, 16, true); const uint16_t E1_Pluse_buf_ch[] = { 0x3145, 0xE1D6, 0xF6C2, 0xE5B3, 0x2000 }; - dgusdisplay.WriteVariable(VP_E1_Pluse_Dis, E1_Pluse_buf_ch, 16, true); + dgus.writeVariable(VP_E1_Pluse_Dis, E1_Pluse_buf_ch, 16, true); const uint16_t X_Max_Speed_buf_ch[] = { 0x2058, 0xEED7, 0xF3B4, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_X_Max_Speed_Dis, X_Max_Speed_buf_ch, 16, true); + dgus.writeVariable(VP_X_Max_Speed_Dis, X_Max_Speed_buf_ch, 16, true); const uint16_t Y_Max_Speed_buf_ch[] = { 0x2059, 0xEED7, 0xF3B4, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Y_Max_Speed_Dis, Y_Max_Speed_buf_ch, 16, true); + dgus.writeVariable(VP_Y_Max_Speed_Dis, Y_Max_Speed_buf_ch, 16, true); const uint16_t Z_Max_Speed_buf_ch[] = { 0x205A, 0xEED7, 0xF3B4, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Z_Max_Speed_Dis, Z_Max_Speed_buf_ch, 16, true); + dgus.writeVariable(VP_Z_Max_Speed_Dis, Z_Max_Speed_buf_ch, 16, true); const uint16_t E0_Max_Speed_buf_ch[] = { 0x3045, 0xEED7, 0xF3B4, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_E0_Max_Speed_Dis, E0_Max_Speed_buf_ch, 16, true); + dgus.writeVariable(VP_E0_Max_Speed_Dis, E0_Max_Speed_buf_ch, 16, true); const uint16_t E1_Max_Speed_buf_ch[] = { 0x3145, 0xEED7, 0xF3B4, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_E1_Max_Speed_Dis, E1_Max_Speed_buf_ch, 16, true); + dgus.writeVariable(VP_E1_Max_Speed_Dis, E1_Max_Speed_buf_ch, 16, true); const uint16_t X_Max_Acc_Speed_buf_ch[] = { 0x2058, 0xEED7, 0xF3B4, 0xD3BC, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_X_Max_Acc_Speed_Dis, X_Max_Acc_Speed_buf_ch, 16, true); + dgus.writeVariable(VP_X_Max_Acc_Speed_Dis, X_Max_Acc_Speed_buf_ch, 16, true); const uint16_t Y_Max_Acc_Speed_buf_ch[] = { 0x2059, 0xEED7, 0xF3B4, 0xD3BC, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Y_Max_Acc_Speed_Dis, Y_Max_Acc_Speed_buf_ch, 16, true); + dgus.writeVariable(VP_Y_Max_Acc_Speed_Dis, Y_Max_Acc_Speed_buf_ch, 16, true); const uint16_t Z_Max_Acc_Speed_buf_ch[] = { 0x205A, 0xEED7, 0xF3B4, 0xD3BC, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Z_Max_Acc_Speed_Dis, Z_Max_Acc_Speed_buf_ch, 16, true); + dgus.writeVariable(VP_Z_Max_Acc_Speed_Dis, Z_Max_Acc_Speed_buf_ch, 16, true); const uint16_t E0_Max_Acc_Speed_buf_ch[] = { 0x3045, 0xEED7, 0xF3B4, 0xD3BC, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_E0_Max_Acc_Speed_Dis, E0_Max_Acc_Speed_buf_ch, 16, true); + dgus.writeVariable(VP_E0_Max_Acc_Speed_Dis, E0_Max_Acc_Speed_buf_ch, 16, true); const uint16_t E1_Max_Acc_Speed_buf_ch[] = { 0x3145, 0xEED7, 0xF3B4, 0xD3BC, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_E1_Max_Acc_Speed_Dis, E1_Max_Acc_Speed_buf_ch, 16, true); + dgus.writeVariable(VP_E1_Max_Acc_Speed_Dis, E1_Max_Acc_Speed_buf_ch, 16, true); const uint16_t X_PARK_POS_buf_ch[] = { 0x2058, 0xDDD4, 0xA3CD, 0xBBCE, 0xC3D6, 0x2000 }; - dgusdisplay.WriteVariable(VP_X_PARK_POS_Dis, X_PARK_POS_buf_ch, 16, true); + dgus.writeVariable(VP_X_PARK_POS_Dis, X_PARK_POS_buf_ch, 16, true); const uint16_t Y_PARK_POS_buf_ch[] = { 0x2059, 0xDDD4, 0xA3CD, 0xBBCE, 0xC3D6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Y_PARK_POS_Dis, Y_PARK_POS_buf_ch, 16, true); + dgus.writeVariable(VP_Y_PARK_POS_Dis, Y_PARK_POS_buf_ch, 16, true); const uint16_t Z_PARK_POS_buf_ch[] = { 0x205A, 0xDDD4, 0xA3CD, 0xBBCE, 0xC3D6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Z_PARK_POS_Dis, Z_PARK_POS_buf_ch, 16, true); + dgus.writeVariable(VP_Z_PARK_POS_Dis, Z_PARK_POS_buf_ch, 16, true); const uint16_t Length_buf_ch[] = { 0xBDB2, 0xA4B3, 0x2000 }; - dgusdisplay.WriteVariable(VP_Length_Dis, Length_buf_ch, 8, true); + dgus.writeVariable(VP_Length_Dis, Length_buf_ch, 8, true); const uint16_t Speed_buf_ch[] = { 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Speed_Dis, Speed_buf_ch, 8, true); + dgus.writeVariable(VP_Speed_Dis, Speed_buf_ch, 8, true); const uint16_t InOut_buf_ch[] = { 0xF8BD, 0xF6B3, 0x2000 }; - dgusdisplay.WriteVariable(VP_InOut_Dis, InOut_buf_ch, 8, true); + dgus.writeVariable(VP_InOut_Dis, InOut_buf_ch, 8, true); const uint16_t PrintTimet_buf_en[] = { 0xF2B4, 0xA1D3, 0xB1CA, 0xE4BC, 0x2000 }; - dgusdisplay.WriteVariable(VP_PrintTime_Dis, PrintTimet_buf_en, 16, true); + dgus.writeVariable(VP_PrintTime_Dis, PrintTimet_buf_en, 16, true); const uint16_t E0_Temp_buf_ch[] = { 0x3045, 0xC2CE, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_E0_Temp_Dis, E0_Temp_buf_ch, 16, true); + dgus.writeVariable(VP_E0_Temp_Dis, E0_Temp_buf_ch, 16, true); const uint16_t E1_Temp_buf_ch[] = { 0x3145, 0xC2CE, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_E1_Temp_Dis, E1_Temp_buf_ch, 16, true); + dgus.writeVariable(VP_E1_Temp_Dis, E1_Temp_buf_ch, 16, true); const uint16_t HB_Temp_buf_ch[] = { 0xC8C8, 0xB2B4, 0xC2CE, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_HB_Temp_Dis, HB_Temp_buf_ch, 16, true); + dgus.writeVariable(VP_HB_Temp_Dis, HB_Temp_buf_ch, 16, true); const uint16_t Feedrate_buf_ch[] = { 0xB7BC, 0xF6B3, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Feedrate_Dis, Feedrate_buf_ch, 16, true); + dgus.writeVariable(VP_Feedrate_Dis, Feedrate_buf_ch, 16, true); const uint16_t PrintAcc_buf_ch[] = { 0xF2B4, 0xA1D3, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_PrintAcc_Dis, PrintAcc_buf_ch, 16, true); + dgus.writeVariable(VP_PrintAcc_Dis, PrintAcc_buf_ch, 16, true); const uint16_t FAN_Speed_buf_ch[] = { 0xE7B7, 0xC8C9, 0xD9CB, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Fan_Speed_Dis, FAN_Speed_buf_ch, 16, true); + dgus.writeVariable(VP_Fan_Speed_Dis, FAN_Speed_buf_ch, 16, true); const uint16_t Printing_buf_ch[] = { 0xF2B4, 0xA1D3, 0xD0D6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Printing_Dis, Printing_buf_ch, 16, true); + dgus.writeVariable(VP_Printing_Dis, Printing_buf_ch, 16, true); const uint16_t Info_EEPROM_1_buf_ch[] = { 0xC7CA, 0xF1B7, 0xA3B1, 0xE6B4, 0xE8C9, 0xC3D6, 0xBFA3, 0x2000 }; - dgusdisplay.WriteVariable(VP_Info_EEPROM_1_Dis, Info_EEPROM_1_buf_ch, 32, true); + dgus.writeVariable(VP_Info_EEPROM_1_Dis, Info_EEPROM_1_buf_ch, 32, true); const uint16_t Info_EEPROM_2_buf_ch[] = { 0xC7CA, 0xF1B7, 0xD6BB, 0xB4B8, 0xF6B3, 0xA7B3, 0xE8C9, 0xC3D6, 0xBFA3, 0x2000 }; - dgusdisplay.WriteVariable(VP_Info_EEPROM_2_Dis, Info_EEPROM_2_buf_ch, 32, true); + dgus.writeVariable(VP_Info_EEPROM_2_Dis, Info_EEPROM_2_buf_ch, 32, true); const uint16_t TMC_X_Step_buf_ch[] = { 0x2058, 0xE9C1, 0xF4C3, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_TMC_X_Step_Dis, TMC_X_Step_buf_ch, 16, true); + dgus.writeVariable(VP_TMC_X_Step_Dis, TMC_X_Step_buf_ch, 16, true); const uint16_t TMC_Y_Step_buf_ch[] = { 0x2059, 0xE9C1, 0xF4C3, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_TMC_Y_Step_Dis, TMC_Y_Step_buf_ch, 16, true); + dgus.writeVariable(VP_TMC_Y_Step_Dis, TMC_Y_Step_buf_ch, 16, true); const uint16_t TMC_Z_Step_buf_ch[] = { 0x205A, 0xE9C1, 0xF4C3, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_TMC_Z_Step_Dis, TMC_Z_Step_buf_ch, 16, true); + dgus.writeVariable(VP_TMC_Z_Step_Dis, TMC_Z_Step_buf_ch, 16, true); const uint16_t Info_PrintFinish_1_buf_ch[] = { 0xF2B4, 0xA1D3, 0xEACD, 0xC9B3, 0x2000 }; - dgusdisplay.WriteVariable(VP_Info_PrintFinish_1_Dis, Info_PrintFinish_1_buf_ch, 32, true); + dgus.writeVariable(VP_Info_PrintFinish_1_Dis, Info_PrintFinish_1_buf_ch, 32, true); const uint16_t TMC_X_Current_buf_ch[] = { 0x2058, 0xE1D6, 0xE7B5, 0xF7C1, 0x2000 }; - dgusdisplay.WriteVariable(VP_TMC_X_Current_Dis, TMC_X_Current_buf_ch, 16, true); + dgus.writeVariable(VP_TMC_X_Current_Dis, TMC_X_Current_buf_ch, 16, true); const uint16_t TMC_Y_Current_buf_ch[] = { 0x2059, 0xE1D6, 0xE7B5, 0xF7C1, 0x2000 }; - dgusdisplay.WriteVariable(VP_TMC_Y_Current_Dis, TMC_Y_Current_buf_ch, 16, true); + dgus.writeVariable(VP_TMC_Y_Current_Dis, TMC_Y_Current_buf_ch, 16, true); const uint16_t TMC_Z_Current_buf_ch[] = { 0x205A, 0xE1D6, 0xE7B5, 0xF7C1, 0x2000 }; - dgusdisplay.WriteVariable(VP_TMC_Z_Current_Dis, TMC_Z_Current_buf_ch, 16, true); + dgus.writeVariable(VP_TMC_Z_Current_Dis, TMC_Z_Current_buf_ch, 16, true); const uint16_t TMC_E0_Current_buf_ch[] = { 0x3045, 0xE1D6, 0xE7B5, 0xF7C1, 0x2000 }; - dgusdisplay.WriteVariable(VP_TMC_E0_Current_Dis, TMC_E0_Current_buf_ch, 16, true); + dgus.writeVariable(VP_TMC_E0_Current_Dis, TMC_E0_Current_buf_ch, 16, true); const uint16_t TMC_X1_Current_buf_ch[] = { 0x3158, 0xE1D6, 0xE7B5, 0xF7C1, 0x2000 }; - dgusdisplay.WriteVariable(VP_TMC_X1_Current_Dis, TMC_X1_Current_buf_ch, 16, true); + dgus.writeVariable(VP_TMC_X1_Current_Dis, TMC_X1_Current_buf_ch, 16, true); const uint16_t TMC_Y1_Current_buf_ch[] = { 0x3159, 0xE1D6, 0xE7B5, 0xF7C1, 0x2000 }; - dgusdisplay.WriteVariable(VP_TMC_Y1_Current_Dis, TMC_Y1_Current_buf_ch, 16, true); + dgus.writeVariable(VP_TMC_Y1_Current_Dis, TMC_Y1_Current_buf_ch, 16, true); const uint16_t TMC_Z1_Current_buf_ch[] = { 0x315A, 0xE1D6, 0xE7B5, 0xF7C1, 0x2000 }; - dgusdisplay.WriteVariable(VP_TMC_Z1_Current_Dis, TMC_Z1_Current_buf_ch, 16, true); + dgus.writeVariable(VP_TMC_Z1_Current_Dis, TMC_Z1_Current_buf_ch, 16, true); const uint16_t TMC_E1_Current_buf_ch[] = { 0x3145, 0xE1D6, 0xE7B5, 0xF7C1, 0x2000 }; - dgusdisplay.WriteVariable(VP_TMC_E1_Current_Dis, TMC_E1_Current_buf_ch, 16, true); + dgus.writeVariable(VP_TMC_E1_Current_Dis, TMC_E1_Current_buf_ch, 16, true); const uint16_t Min_Ex_Temp_buf_ch[] = { 0xEED7, 0xA1D0, 0xB7BC, 0xF6B3, 0xC2CE, 0xC8B6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Min_Ex_Temp_Dis, Min_Ex_Temp_buf_ch, 32, true); + dgus.writeVariable(VP_Min_Ex_Temp_Dis, Min_Ex_Temp_buf_ch, 32, true); const uint16_t AutoLEVEL_INFO1_buf_ch[] = { 0xEBC7, 0xB4B0, 0xC2CF, 0xB4B0, 0xA5C5, 0x2000 }; - dgusdisplay.WriteVariable(VP_AutoLEVEL_INFO1, AutoLEVEL_INFO1_buf_ch, 32, true); + dgus.writeVariable(VP_AutoLEVEL_INFO1, AutoLEVEL_INFO1_buf_ch, 32, true); const uint16_t EX_TEMP_INFO2_buf_ch[] = { 0xEBC7, 0xD4C9, 0xC8B5, 0x2000 }; - dgusdisplay.WriteVariable(VP_EX_TEMP_INFO2_Dis, EX_TEMP_INFO2_buf_ch, 32, true); + dgus.writeVariable(VP_EX_TEMP_INFO2_Dis, EX_TEMP_INFO2_buf_ch, 32, true); const uint16_t EX_TEMP_INFO3_buf_ch[] = { 0xA1C8, 0xFBCF, 0xD3BC, 0xC8C8, 0x2000 }; - dgusdisplay.WriteVariable(VP_EX_TEMP_INFO3_Dis, EX_TEMP_INFO3_buf_ch, 32, true); + dgus.writeVariable(VP_EX_TEMP_INFO3_Dis, EX_TEMP_INFO3_buf_ch, 32, true); const uint16_t PrintConfrim_Info_buf_ch[] = { 0xC7CA, 0xF1B7, 0xAABF, 0xBCCA, 0xF2B4, 0xA1D3, 0x2000 }; - dgusdisplay.WriteVariable(VP_PrintConfrim_Info_Dis, PrintConfrim_Info_buf_ch, 32, true); + dgus.writeVariable(VP_PrintConfrim_Info_Dis, PrintConfrim_Info_buf_ch, 32, true); const uint16_t StopPrintConfrim_Info_buf_ch[] = { 0xC7CA, 0xF1B7, 0xA3CD, 0xB9D6, 0xF2B4, 0xA1D3, 0x2000 }; - dgusdisplay.WriteVariable(VP_StopPrintConfrim_Info_Dis, StopPrintConfrim_Info_buf_ch, 32, true); + dgus.writeVariable(VP_StopPrintConfrim_Info_Dis, StopPrintConfrim_Info_buf_ch, 32, true); const uint16_t Printting_buf_ch[] = { 0xF2B4, 0xA1D3, 0xD0D6, 0x2000 }; - dgusdisplay.WriteVariable(VP_Printting_Dis, Printting_buf_ch, 32, true); + dgus.writeVariable(VP_Printting_Dis, Printting_buf_ch, 32, true); const uint16_t LCD_BLK_buf_ch[] = { 0xB3B1, 0xE2B9, 0xE8C9, 0xC3D6, 0x2000 }; - dgusdisplay.WriteVariable(VP_LCD_BLK_Dis, LCD_BLK_buf_ch, 32, true); + dgus.writeVariable(VP_LCD_BLK_Dis, LCD_BLK_buf_ch, 32, true); } } diff --git a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.h b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.h index 69ded29ffbc7..9527badb5a79 100644 --- a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.h +++ b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.h @@ -23,7 +23,7 @@ #include "../DGUSScreenHandlerBase.h" -enum DGUSLCD_Screens : uint8_t; +enum DGUS_ScreenID : uint8_t; class DGUSScreenHandlerMKS : public DGUSScreenHandler { public: @@ -32,72 +32,72 @@ class DGUSScreenHandlerMKS : public DGUSScreenHandler { #if 0 static void sendinfoscreen_ch(const uint16_t *line1, const uint16_t *line2, const uint16_t *line3, const uint16_t *line4); static void sendinfoscreen_en(PGM_P const line1, PGM_P const line2, PGM_P const line3, PGM_P const line4); - static void sendinfoscreen(const void *line1, const void *line2, const void *line3, const void *line4, uint16_t language); + static void sendInfoScreen(const void *line1, const void *line2, const void *line3, const void *line4, uint16_t language); #endif - static void ScreenBackChange(DGUS_VP_Variable &var, void *val_ptr); - - static void EEPROM_CTRL(DGUS_VP_Variable &var, void *val_ptr); - static void LanguageChange(DGUS_VP_Variable &var, void *val_ptr); - static void GetOffsetValue(DGUS_VP_Variable &var, void *val_ptr); - static void Level_Ctrl(DGUS_VP_Variable &var, void *val_ptr); - static void MeshLevel(DGUS_VP_Variable &var, void *val_ptr); - static void MeshLevelDistanceConfig(DGUS_VP_Variable &var, void *val_ptr); - static void ManualAssistLeveling(DGUS_VP_Variable &var, void *val_ptr); - static void ZoffsetConfirm(DGUS_VP_Variable &var, void *val_ptr); - static void Z_offset_select(DGUS_VP_Variable &var, void *val_ptr); - static void GetManualMovestep(DGUS_VP_Variable &var, void *val_ptr); - static void GetZoffsetDistance(DGUS_VP_Variable &var, void *val_ptr); - static void GetMinExtrudeTemp(DGUS_VP_Variable &var, void *val_ptr); - static void GetParkPos(DGUS_VP_Variable &var, void *val_ptr); + static void screenBackChange(DGUS_VP_Variable &var, void *val_ptr); + + static void eepromControl(DGUS_VP_Variable &var, void *val_ptr); + static void languageChange(DGUS_VP_Variable &var, void *val_ptr); + static void getOffsetValue(DGUS_VP_Variable &var, void *val_ptr); + static void levelControl(DGUS_VP_Variable &var, void *val_ptr); + static void meshLevel(DGUS_VP_Variable &var, void *val_ptr); + static void meshLevelDistanceConfig(DGUS_VP_Variable &var, void *val_ptr); + static void manualAssistLeveling(DGUS_VP_Variable &var, void *val_ptr); + static void zOffsetConfirm(DGUS_VP_Variable &var, void *val_ptr); + static void zOffsetSelect(DGUS_VP_Variable &var, void *val_ptr); + static void getManualMovestep(DGUS_VP_Variable &var, void *val_ptr); + static void getZoffsetDistance(DGUS_VP_Variable &var, void *val_ptr); + static void getMinExtrudeTemp(DGUS_VP_Variable &var, void *val_ptr); + static void getParkPos(DGUS_VP_Variable &var, void *val_ptr); #if ENABLED(PREVENT_COLD_EXTRUSION) - static void HandleGetExMinTemp(DGUS_VP_Variable &var, void *val_ptr); + static void handleGetExMinTemp(DGUS_VP_Variable &var, void *val_ptr); #endif - static void DGUS_LanguageDisplay(uint8_t var); - static void TMC_ChangeConfig(DGUS_VP_Variable &var, void *val_ptr); - static void GetTurnOffCtrl(DGUS_VP_Variable &var, void *val_ptr); - static void LanguagePInit(); - static void DGUS_Runout_Idle(); - static void DGUS_RunoutInit(); - static void DGUS_ExtrudeLoadInit(); - static void LCD_BLK_Adjust(DGUS_VP_Variable &var, void *val_ptr); - static void SD_FileBack(DGUS_VP_Variable &var, void *val_ptr); - - static void HandleStepPerMMChanged(DGUS_VP_Variable &var, void *val_ptr); - static void HandleStepPerMMExtruderChanged(DGUS_VP_Variable &var, void *val_ptr); - static void HandleMaxSpeedChange(DGUS_VP_Variable &var, void *val_ptr); - static void HandleExtruderMaxSpeedChange(DGUS_VP_Variable &var, void *val_ptr); - static void HandleAccChange(DGUS_VP_Variable &var, void *val_ptr); - static void HandleMaxAccChange(DGUS_VP_Variable &var, void *val_ptr); - static void HandleExtruderAccChange(DGUS_VP_Variable &var, void *val_ptr); - static void HandleChangeLevelPoint(DGUS_VP_Variable &var, void *val_ptr); - static void HandleTravelAccChange(DGUS_VP_Variable &var, void *val_ptr); - static void HandleFeedRateMinChange(DGUS_VP_Variable &var, void *val_ptr); - static void HandleMin_T_F(DGUS_VP_Variable &var, void *val_ptr); + static void languageDisplay(uint8_t var); + static void tmcChangeConfig(DGUS_VP_Variable &var, void *val_ptr); + static void getTurnOffCtrl(DGUS_VP_Variable &var, void *val_ptr); + static void languagePInit(); + static void runoutIdle(); + static void runoutInit(); + static void extrudeLoadInit(); + static void lcdBLKAdjust(DGUS_VP_Variable &var, void *val_ptr); + static void sdFileBack(DGUS_VP_Variable &var, void *val_ptr); + + static void handleStepPerMMChanged(DGUS_VP_Variable &var, void *val_ptr); + static void handleStepPerMMExtruderChanged(DGUS_VP_Variable &var, void *val_ptr); + static void handleMaxSpeedChange(DGUS_VP_Variable &var, void *val_ptr); + static void handleExtruderMaxSpeedChange(DGUS_VP_Variable &var, void *val_ptr); + static void handleAccChange(DGUS_VP_Variable &var, void *val_ptr); + static void handleMaxAccChange(DGUS_VP_Variable &var, void *val_ptr); + static void handleExtruderAccChange(DGUS_VP_Variable &var, void *val_ptr); + static void handleChangeLevelPoint(DGUS_VP_Variable &var, void *val_ptr); + static void handleTravelAccChange(DGUS_VP_Variable &var, void *val_ptr); + static void handleFeedRateMinChange(DGUS_VP_Variable &var, void *val_ptr); + static void handleMin_T_F(DGUS_VP_Variable &var, void *val_ptr); #if HAS_PID_HEATING - static void FilamentLoadUnload(DGUS_VP_Variable &var, void *val_ptr, const int filamentDir); - static void FilamentLoad(DGUS_VP_Variable &var, void *val_ptr); - static void FilamentUnLoad(DGUS_VP_Variable &var, void *val_ptr); - static void GetManualFilament(DGUS_VP_Variable &var, void *val_ptr); - static void GetManualFilamentSpeed(DGUS_VP_Variable &var, void *val_ptr); + static void filamentLoadUnload(DGUS_VP_Variable &var, void *val_ptr, const int filamentDir); + static void filamentLoad(DGUS_VP_Variable &var, void *val_ptr); + static void filamentUnload(DGUS_VP_Variable &var, void *val_ptr); + static void getManualFilament(DGUS_VP_Variable &var, void *val_ptr); + static void getManualFilamentSpeed(DGUS_VP_Variable &var, void *val_ptr); #endif #if HAS_MEDIA // Marlin informed us about SD print completion. - static void SDPrintingFinished(); + static void sdPrintingFinished(); #else - static void PrintReturn(DGUS_VP_Variable &var, void *val_ptr); + static void printReturn(DGUS_VP_Variable &var, void *val_ptr); #endif - static void DGUSLCD_SendPrintTimeToDisplay(DGUS_VP_Variable &var); - static void DGUSLCD_SendBabyStepToDisplay(DGUS_VP_Variable &var); - static void DGUSLCD_SendFanToDisplay(DGUS_VP_Variable &var); - static void DGUSLCD_SendGbkToDisplay(DGUS_VP_Variable &var); - static void DGUSLCD_SendStringToDisplay_Language(DGUS_VP_Variable &var); - static void DGUSLCD_SendTMCStepValue(DGUS_VP_Variable &var); + static void sendPrintTimeToDisplay(DGUS_VP_Variable &var); + static void sendBabyStepToDisplay(DGUS_VP_Variable &var); + static void sendFanToDisplay(DGUS_VP_Variable &var); + static void sendGbkToDisplay(DGUS_VP_Variable &var); + static void sendStringToDisplay_Language(DGUS_VP_Variable &var); + static void sendTMCStepValue(DGUS_VP_Variable &var); - static void DGUSLCD_SetUint8(DGUS_VP_Variable &var, void *val_ptr); + static void setUint8(DGUS_VP_Variable &var, void *val_ptr); static bool loop(); }; diff --git a/Marlin/src/lcd/extui/dgus/origin/DGUSDisplayDef.cpp b/Marlin/src/lcd/extui/dgus/origin/DGUSDisplayDef.cpp index c5711320ec18..d69041ebc5e0 100644 --- a/Marlin/src/lcd/extui/dgus/origin/DGUSDisplayDef.cpp +++ b/Marlin/src/lcd/extui/dgus/origin/DGUSDisplayDef.cpp @@ -108,17 +108,17 @@ const uint16_t VPList_SDFileList[] PROGMEM = { VP_SD_FileName0, VP_SD_ const uint16_t VPList_SD_PrintManipulation[] PROGMEM = { VP_PrintProgress_Percentage, VP_PrintTime, 0x0000 }; const struct VPMapping VPMap[] PROGMEM = { - { DGUSLCD_SCREEN_BOOT, VPList_Boot }, - { DGUSLCD_SCREEN_MAIN, VPList_Main }, - { DGUSLCD_SCREEN_TEMPERATURE, VPList_Temp }, - { DGUSLCD_SCREEN_STATUS, VPList_Status }, - { DGUSLCD_SCREEN_STATUS2, VPList_Status2 }, - { DGUSLCD_SCREEN_MANUALMOVE, VPList_ManualMove }, - { DGUSLCD_SCREEN_MANUALEXTRUDE, VPList_ManualExtrude }, - { DGUSLCD_SCREEN_FANANDFEEDRATE, VPList_FanAndFeedrate }, - { DGUSLCD_SCREEN_FLOWRATES, VPList_SD_FlowRates }, - { DGUSLCD_SCREEN_SDPRINTMANIPULATION, VPList_SD_PrintManipulation }, - { DGUSLCD_SCREEN_SDFILELIST, VPList_SDFileList }, + { DGUS_SCREEN_BOOT, VPList_Boot }, + { DGUS_SCREEN_MAIN, VPList_Main }, + { DGUS_SCREEN_TEMPERATURE, VPList_Temp }, + { DGUS_SCREEN_STATUS, VPList_Status }, + { DGUS_SCREEN_STATUS2, VPList_Status2 }, + { DGUS_SCREEN_MANUALMOVE, VPList_ManualMove }, + { DGUS_SCREEN_MANUALEXTRUDE, VPList_ManualExtrude }, + { DGUS_SCREEN_FANANDFEEDRATE, VPList_FanAndFeedrate }, + { DGUS_SCREEN_FLOWRATES, VPList_SD_FlowRates }, + { DGUS_SCREEN_SDPRINTMANIPULATION, VPList_SD_PrintManipulation }, + { DGUS_SCREEN_SDFILELIST, VPList_SDFileList }, { 0 , nullptr } // List is terminated with an nullptr as table entry. }; @@ -126,152 +126,152 @@ const char MarlinVersion[] PROGMEM = SHORT_BUILD_VERSION; const struct DGUS_VP_Variable ListOfVP[] PROGMEM = { // Helper to detect touch events - VPHELPER(VP_SCREENCHANGE, nullptr, ScreenHandler.ScreenChangeHook, nullptr), - VPHELPER(VP_SCREENCHANGE_ASK, nullptr, ScreenHandler.ScreenChangeHookIfIdle, nullptr), + VPHELPER(VP_SCREENCHANGE, nullptr, screen.screenChangeHook, nullptr), + VPHELPER(VP_SCREENCHANGE_ASK, nullptr, screen.screenChangeHookIfIdle, nullptr), #if HAS_MEDIA - VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, ScreenHandler.ScreenChangeHookIfSD, nullptr), + VPHELPER(VP_SCREENCHANGE_WHENSD, nullptr, screen.screenChangeHookIfSD, nullptr), #endif - VPHELPER(VP_CONFIRMED, nullptr, ScreenHandler.ScreenConfirmedOK, nullptr), + VPHELPER(VP_CONFIRMED, nullptr, screen.screenConfirmedOK, nullptr), - VPHELPER(VP_TEMP_ALL_OFF, nullptr, ScreenHandler.HandleAllHeatersOff, nullptr), + VPHELPER(VP_TEMP_ALL_OFF, nullptr, screen.handleAllHeatersOff, nullptr), #if ENABLED(DGUS_UI_MOVE_DIS_OPTION) - VPHELPER(VP_MOVE_OPTION, &distanceToMove, ScreenHandler.HandleManualMoveOption, nullptr), + VPHELPER(VP_MOVE_OPTION, &distanceToMove, screen.handleManualMoveOption, nullptr), #endif #if ENABLED(DGUS_UI_MOVE_DIS_OPTION) - VPHELPER(VP_MOVE_X, &distanceToMove, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_MOVE_Y, &distanceToMove, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_MOVE_Z, &distanceToMove, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_HOME_ALL, &distanceToMove, ScreenHandler.HandleManualMove, nullptr), + VPHELPER(VP_MOVE_X, &distanceToMove, screen.handleManualMove, nullptr), + VPHELPER(VP_MOVE_Y, &distanceToMove, screen.handleManualMove, nullptr), + VPHELPER(VP_MOVE_Z, &distanceToMove, screen.handleManualMove, nullptr), + VPHELPER(VP_HOME_ALL, &distanceToMove, screen.handleManualMove, nullptr), #else - VPHELPER(VP_MOVE_X, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_MOVE_Y, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_MOVE_Z, nullptr, ScreenHandler.HandleManualMove, nullptr), - VPHELPER(VP_HOME_ALL, nullptr, ScreenHandler.HandleManualMove, nullptr), + VPHELPER(VP_MOVE_X, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_MOVE_Y, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_MOVE_Z, nullptr, screen.handleManualMove, nullptr), + VPHELPER(VP_HOME_ALL, nullptr, screen.handleManualMove, nullptr), #endif - VPHELPER(VP_MOTOR_LOCK_UNLOK, nullptr, ScreenHandler.HandleMotorLockUnlock, nullptr), + VPHELPER(VP_MOTOR_LOCK_UNLOK, nullptr, screen.handleMotorLockUnlock, nullptr), #if ENABLED(POWER_LOSS_RECOVERY) - VPHELPER(VP_POWER_LOSS_RECOVERY, nullptr, ScreenHandler.HandlePowerLossRecovery, nullptr), + VPHELPER(VP_POWER_LOSS_RECOVERY, nullptr, screen.handlePowerLossRecovery, nullptr), #endif - VPHELPER(VP_SETTINGS, nullptr, ScreenHandler.HandleSettings, nullptr), + VPHELPER(VP_SETTINGS, nullptr, screen.handleSettings, nullptr), - { .VP = VP_MARLIN_VERSION, .memadr = (void*)MarlinVersion, .size = VP_MARLIN_VERSION_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, + { .VP = VP_MARLIN_VERSION, .memadr = (void*)MarlinVersion, .size = VP_MARLIN_VERSION_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, // M117 LCD String (We don't need the string in memory but "just" push it to the display on demand, hence the nullptr - { .VP = VP_M117, .memadr = nullptr, .size = VP_M117_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplay }, + { .VP = VP_M117, .memadr = nullptr, .size = VP_M117_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplay }, // Temperature Data #if HAS_HOTEND - VPHELPER(VP_T_E0_Is, &thermalManager.temp_hotend[0].celsius, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<0>), - VPHELPER(VP_T_E0_Set, &thermalManager.temp_hotend[0].target, ScreenHandler.HandleTemperatureChanged, &ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Flowrate_E0, nullptr, ScreenHandler.HandleFlowRateChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_EPos, &destination.e, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), - VPHELPER(VP_MOVE_E0, nullptr, ScreenHandler.HandleManualExtrude, nullptr), - VPHELPER(VP_E0_CONTROL, &thermalManager.temp_hotend[0].target, ScreenHandler.HandleHeaterControl, nullptr), - VPHELPER(VP_E0_STATUS, &thermalManager.temp_hotend[0].target, nullptr, ScreenHandler.DGUSLCD_SendHeaterStatusToDisplay), + VPHELPER(VP_T_E0_Is, &thermalManager.temp_hotend[0].celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>), + VPHELPER(VP_T_E0_Set, &thermalManager.temp_hotend[0].target, screen.handleTemperatureChanged, &screen.sendWordValueToDisplay), + VPHELPER(VP_Flowrate_E0, nullptr, screen.handleFlowRateChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_EPos, &destination.e, nullptr, screen.sendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_MOVE_E0, nullptr, screen.handleManualExtrude, nullptr), + VPHELPER(VP_E0_CONTROL, &thermalManager.temp_hotend[0].target, screen.handleHeaterControl, nullptr), + VPHELPER(VP_E0_STATUS, &thermalManager.temp_hotend[0].target, nullptr, screen.sendHeaterStatusToDisplay), #if ENABLED(DGUS_PREHEAT_UI) - VPHELPER(VP_E0_BED_PREHEAT, nullptr, ScreenHandler.HandlePreheat, nullptr), + VPHELPER(VP_E0_BED_PREHEAT, nullptr, screen.handlePreheat, nullptr), #endif #if ENABLED(PIDTEMP) - VPHELPER(VP_E0_PID_P, &thermalManager.temp_hotend[0].pid.Kp, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_E0_PID_I, &thermalManager.temp_hotend[0].pid.Ki, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_E0_PID_D, &thermalManager.temp_hotend[0].pid.Kd, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_PID_AUTOTUNE_E0, nullptr, ScreenHandler.HandlePIDAutotune, nullptr), + VPHELPER(VP_E0_PID_P, &thermalManager.temp_hotend[0].pid.Kp, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_E0_PID_I, &thermalManager.temp_hotend[0].pid.Ki, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_E0_PID_D, &thermalManager.temp_hotend[0].pid.Kd, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_PID_AUTOTUNE_E0, nullptr, screen.handlePIDAutotune, nullptr), #endif #if ENABLED(DGUS_FILAMENT_LOADUNLOAD) - VPHELPER(VP_E0_FILAMENT_LOAD_UNLOAD, nullptr, ScreenHandler.HandleFilamentOption, ScreenHandler.HandleFilamentLoadUnload), + VPHELPER(VP_E0_FILAMENT_LOAD_UNLOAD, nullptr, screen.handleFilamentOption, screen.handleFilamentLoadUnload), #endif #endif #if HAS_MULTI_HOTEND - VPHELPER(VP_T_E1_Is, &thermalManager.temp_hotend[1].celsius, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<0>), - VPHELPER(VP_T_E1_Set, &thermalManager.temp_hotend[1].target, ScreenHandler.HandleTemperatureChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_Flowrate_E1, nullptr, ScreenHandler.HandleFlowRateChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_MOVE_E1, nullptr, ScreenHandler.HandleManualExtrude, nullptr), - VPHELPER(VP_E1_CONTROL, &thermalManager.temp_hotend[1].target, ScreenHandler.HandleHeaterControl, nullptr), - VPHELPER(VP_E1_STATUS, &thermalManager.temp_hotend[1].target, nullptr, ScreenHandler.DGUSLCD_SendHeaterStatusToDisplay), + VPHELPER(VP_T_E1_Is, &thermalManager.temp_hotend[1].celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>), + VPHELPER(VP_T_E1_Set, &thermalManager.temp_hotend[1].target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_Flowrate_E1, nullptr, screen.handleFlowRateChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_MOVE_E1, nullptr, screen.handleManualExtrude, nullptr), + VPHELPER(VP_E1_CONTROL, &thermalManager.temp_hotend[1].target, screen.handleHeaterControl, nullptr), + VPHELPER(VP_E1_STATUS, &thermalManager.temp_hotend[1].target, nullptr, screen.sendHeaterStatusToDisplay), #if ENABLED(PIDTEMP) - VPHELPER(VP_PID_AUTOTUNE_E1, nullptr, ScreenHandler.HandlePIDAutotune, nullptr), + VPHELPER(VP_PID_AUTOTUNE_E1, nullptr, screen.handlePIDAutotune, nullptr), #endif #endif #if HAS_HEATED_BED - VPHELPER(VP_T_Bed_Is, &thermalManager.temp_bed.celsius, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<0>), - VPHELPER(VP_T_Bed_Set, &thermalManager.temp_bed.target, ScreenHandler.HandleTemperatureChanged, ScreenHandler.DGUSLCD_SendWordValueToDisplay), - VPHELPER(VP_BED_CONTROL, &thermalManager.temp_bed.target, ScreenHandler.HandleHeaterControl, nullptr), - VPHELPER(VP_BED_STATUS, &thermalManager.temp_bed.target, nullptr, ScreenHandler.DGUSLCD_SendHeaterStatusToDisplay), + VPHELPER(VP_T_Bed_Is, &thermalManager.temp_bed.celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>), + VPHELPER(VP_T_Bed_Set, &thermalManager.temp_bed.target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay), + VPHELPER(VP_BED_CONTROL, &thermalManager.temp_bed.target, screen.handleHeaterControl, nullptr), + VPHELPER(VP_BED_STATUS, &thermalManager.temp_bed.target, nullptr, screen.sendHeaterStatusToDisplay), #if ENABLED(PIDTEMPBED) - VPHELPER(VP_BED_PID_P, &thermalManager.temp_bed.pid.Kp, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_BED_PID_I, &thermalManager.temp_bed.pid.Ki, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), - VPHELPER(VP_BED_PID_D, &thermalManager.temp_bed.pid.Kd, ScreenHandler.HandleTemperaturePIDChanged, ScreenHandler.DGUSLCD_SendTemperaturePID), + VPHELPER(VP_BED_PID_P, &thermalManager.temp_bed.pid.Kp, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_BED_PID_I, &thermalManager.temp_bed.pid.Ki, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), + VPHELPER(VP_BED_PID_D, &thermalManager.temp_bed.pid.Kd, screen.handleTemperaturePIDChanged, screen.sendTemperaturePID), #endif #endif // Fan Data #if HAS_FAN #define FAN_VPHELPER(N) \ - VPHELPER(VP_Fan##N##_Percentage, &thermalManager.fan_speed[N], ScreenHandler.DGUSLCD_PercentageToUint8, ScreenHandler.DGUSLCD_SendPercentageToDisplay), \ - VPHELPER(VP_FAN##N##_CONTROL, &thermalManager.fan_speed[N], ScreenHandler.HandleFanControl, nullptr), \ - VPHELPER(VP_FAN##N##_STATUS, &thermalManager.fan_speed[N], nullptr, ScreenHandler.DGUSLCD_SendFanStatusToDisplay), + VPHELPER(VP_Fan##N##_Percentage, &thermalManager.fan_speed[N], screen.percentageToUint8, screen.sendPercentageToDisplay), \ + VPHELPER(VP_FAN##N##_CONTROL, &thermalManager.fan_speed[N], screen.handleFanControl, nullptr), \ + VPHELPER(VP_FAN##N##_STATUS, &thermalManager.fan_speed[N], nullptr, screen.sendFanStatusToDisplay), REPEAT(FAN_COUNT, FAN_VPHELPER) #endif // Feedrate - VPHELPER(VP_Feedrate_Percentage, &feedrate_percentage, ScreenHandler.DGUSLCD_SetValueDirectly, ScreenHandler.DGUSLCD_SendWordValueToDisplay), + VPHELPER(VP_Feedrate_Percentage, &feedrate_percentage, screen.setValueDirectly, screen.sendWordValueToDisplay), // Position Data - VPHELPER(VP_XPos, ¤t_position.x, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), - VPHELPER(VP_YPos, ¤t_position.y, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), - VPHELPER(VP_ZPos, ¤t_position.z, nullptr, ScreenHandler.DGUSLCD_SendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_XPos, ¤t_position.x, nullptr, screen.sendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_YPos, ¤t_position.y, nullptr, screen.sendFloatAsLongValueToDisplay<2>), + VPHELPER(VP_ZPos, ¤t_position.z, nullptr, screen.sendFloatAsLongValueToDisplay<2>), // Print Progress - VPHELPER(VP_PrintProgress_Percentage, nullptr, nullptr, ScreenHandler.DGUSLCD_SendPrintProgressToDisplay), + VPHELPER(VP_PrintProgress_Percentage, nullptr, nullptr, screen.sendPrintProgressToDisplay), // Print Time - VPHELPER_STR(VP_PrintTime, nullptr, VP_PrintTime_LEN, nullptr, ScreenHandler.DGUSLCD_SendPrintTimeToDisplay), + VPHELPER_STR(VP_PrintTime, nullptr, VP_PrintTime_LEN, nullptr, screen.sendPrintTimeToDisplay), #if ENABLED(PRINTCOUNTER) - VPHELPER_STR(VP_PrintAccTime, nullptr, VP_PrintAccTime_LEN, nullptr, ScreenHandler.DGUSLCD_SendPrintAccTimeToDisplay), - VPHELPER_STR(VP_PrintsTotal, nullptr, VP_PrintsTotal_LEN, nullptr, ScreenHandler.DGUSLCD_SendPrintsTotalToDisplay), + VPHELPER_STR(VP_PrintAccTime, nullptr, VP_PrintAccTime_LEN, nullptr, screen.sendPrintAccTimeToDisplay), + VPHELPER_STR(VP_PrintsTotal, nullptr, VP_PrintsTotal_LEN, nullptr, screen.sendPrintsTotalToDisplay), #endif - VPHELPER(VP_X_STEP_PER_MM, &planner.settings.axis_steps_per_mm[X_AXIS], ScreenHandler.HandleStepPerMMChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), - VPHELPER(VP_Y_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Y_AXIS], ScreenHandler.HandleStepPerMMChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), - VPHELPER(VP_Z_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Z_AXIS], ScreenHandler.HandleStepPerMMChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_X_STEP_PER_MM, &planner.settings.axis_steps_per_mm[X_AXIS], screen.handleStepPerMMChanged, screen.sendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_Y_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Y_AXIS], screen.handleStepPerMMChanged, screen.sendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_Z_STEP_PER_MM, &planner.settings.axis_steps_per_mm[Z_AXIS], screen.handleStepPerMMChanged, screen.sendFloatAsIntValueToDisplay<1>), #if HAS_HOTEND - VPHELPER(VP_E0_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(0)], ScreenHandler.HandleStepPerMMExtruderChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_E0_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(0)], screen.handleStepPerMMExtruderChanged, screen.sendFloatAsIntValueToDisplay<1>), #if HAS_MULTI_HOTEND - VPHELPER(VP_E1_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(1)], ScreenHandler.HandleStepPerMMExtruderChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<1>), + VPHELPER(VP_E1_STEP_PER_MM, &planner.settings.axis_steps_per_mm[E_AXIS_N(1)], screen.handleStepPerMMExtruderChanged, screen.sendFloatAsIntValueToDisplay<1>), #endif #endif // SDCard File listing. #if HAS_MEDIA - VPHELPER(VP_SD_ScrollEvent, nullptr, ScreenHandler.DGUSLCD_SD_ScrollFilelist, nullptr), - VPHELPER(VP_SD_FileSelected, nullptr, ScreenHandler.DGUSLCD_SD_FileSelected, nullptr), - VPHELPER(VP_SD_FileSelectConfirm, nullptr, ScreenHandler.DGUSLCD_SD_StartPrint, nullptr), - VPHELPER_STR(VP_SD_FileName0, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName1, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName2, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName3, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER_STR(VP_SD_FileName4, nullptr, VP_SD_FileName_LEN, nullptr, ScreenHandler.DGUSLCD_SD_SendFilename), - VPHELPER(VP_SD_ResumePauseAbort, nullptr, ScreenHandler.DGUSLCD_SD_ResumePauseAbort, nullptr), - VPHELPER(VP_SD_AbortPrintConfirmed, nullptr, ScreenHandler.DGUSLCD_SD_ReallyAbort, nullptr), - VPHELPER(VP_SD_Print_Setting, nullptr, ScreenHandler.DGUSLCD_SD_PrintTune, nullptr), + VPHELPER(VP_SD_ScrollEvent, nullptr, screen.sdScrollFilelist, nullptr), + VPHELPER(VP_SD_FileSelected, nullptr, screen.sdFileSelected, nullptr), + VPHELPER(VP_SD_FileSelectConfirm, nullptr, screen.sdStartPrint, nullptr), + VPHELPER_STR(VP_SD_FileName0, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName1, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName2, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName3, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER_STR(VP_SD_FileName4, nullptr, VP_SD_FileName_LEN, nullptr, screen.sdSendFilename), + VPHELPER(VP_SD_ResumePauseAbort, nullptr, screen.sdResumePauseAbort, nullptr), + VPHELPER(VP_SD_AbortPrintConfirmed, nullptr, screen.sdReallyAbort, nullptr), + VPHELPER(VP_SD_Print_Setting, nullptr, screen.sdPrintTune, nullptr), #if HAS_BED_PROBE - VPHELPER(VP_SD_Print_ProbeOffsetZ, &probe.offset.z, ScreenHandler.HandleProbeOffsetZChanged, ScreenHandler.DGUSLCD_SendFloatAsIntValueToDisplay<2>), + VPHELPER(VP_SD_Print_ProbeOffsetZ, &probe.offset.z, screen.handleProbeOffsetZChanged, screen.sendFloatAsIntValueToDisplay<2>), #if ENABLED(BABYSTEPPING) - VPHELPER(VP_SD_Print_LiveAdjustZ, nullptr, ScreenHandler.HandleLiveAdjustZ, nullptr), + VPHELPER(VP_SD_Print_LiveAdjustZ, nullptr, screen.handleLiveAdjustZ, nullptr), #endif #endif #endif #if ENABLED(DGUS_UI_WAITING) - VPHELPER(VP_WAITING_STATUS, nullptr, nullptr, ScreenHandler.DGUSLCD_SendWaitingStatusToDisplay), + VPHELPER(VP_WAITING_STATUS, nullptr, nullptr, screen.sendWaitingStatusToDisplay), #endif // Messages for the User, shared by the popup and the kill screen. They can't be autouploaded as we do not buffer content. - { .VP = VP_MSGSTR1, .memadr = nullptr, .size = VP_MSGSTR1_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, - { .VP = VP_MSGSTR2, .memadr = nullptr, .size = VP_MSGSTR2_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, - { .VP = VP_MSGSTR3, .memadr = nullptr, .size = VP_MSGSTR3_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, - { .VP = VP_MSGSTR4, .memadr = nullptr, .size = VP_MSGSTR4_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = ScreenHandler.DGUSLCD_SendStringToDisplayPGM }, + { .VP = VP_MSGSTR1, .memadr = nullptr, .size = VP_MSGSTR1_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, + { .VP = VP_MSGSTR2, .memadr = nullptr, .size = VP_MSGSTR2_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, + { .VP = VP_MSGSTR3, .memadr = nullptr, .size = VP_MSGSTR3_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, + { .VP = VP_MSGSTR4, .memadr = nullptr, .size = VP_MSGSTR4_LEN, .set_by_display_handler = nullptr, .send_to_display_handler = screen.sendStringToDisplayPGM }, VPHELPER(0, 0, 0, 0) // must be last entry. }; diff --git a/Marlin/src/lcd/extui/dgus/origin/DGUSDisplayDef.h b/Marlin/src/lcd/extui/dgus/origin/DGUSDisplayDef.h index d529b0adfe60..e601abd25518 100644 --- a/Marlin/src/lcd/extui/dgus/origin/DGUSDisplayDef.h +++ b/Marlin/src/lcd/extui/dgus/origin/DGUSDisplayDef.h @@ -23,30 +23,30 @@ #include "../DGUSDisplayDef.h" -enum DGUSLCD_Screens : uint8_t { - DGUSLCD_SCREEN_BOOT = 0, - DGUSLCD_SCREEN_MAIN = 10, - DGUSLCD_SCREEN_TEMPERATURE = 20, - DGUSLCD_SCREEN_STATUS = 30, - DGUSLCD_SCREEN_STATUS2 = 32, - DGUSLCD_SCREEN_MANUALMOVE = 40, - DGUSLCD_SCREEN_MANUALEXTRUDE = 42, - DGUSLCD_SCREEN_FANANDFEEDRATE = 44, - DGUSLCD_SCREEN_FLOWRATES = 46, - DGUSLCD_SCREEN_SDFILELIST = 50, - DGUSLCD_SCREEN_SDPRINTMANIPULATION = 52, - DGUSLCD_SCREEN_POWER_LOSS = 100, - DGUSLCD_SCREEN_PREHEAT = 120, - DGUSLCD_SCREEN_UTILITY = 110, - DGUSLCD_SCREEN_FILAMENT_HEATING = 146, - DGUSLCD_SCREEN_FILAMENT_LOADING = 148, - DGUSLCD_SCREEN_FILAMENT_UNLOADING = 158, - DGUSLCD_SCREEN_SDPRINTTUNE = 170, - DGUSLCD_SCREEN_CONFIRM = 240, - DGUSLCD_SCREEN_KILL = 250, ///< Kill Screen. Must always be 250 (to be able to display "Error wrong LCD Version") - DGUSLCD_SCREEN_WAITING = 251, - DGUSLCD_SCREEN_POPUP = 252, ///< special target, popup screen will also return this code to say "return to previous screen" - DGUSLCD_SCREEN_UNUSED = 255 +enum DGUS_ScreenID : uint8_t { + DGUS_SCREEN_BOOT = 0, + DGUS_SCREEN_MAIN = 10, + DGUS_SCREEN_TEMPERATURE = 20, + DGUS_SCREEN_STATUS = 30, + DGUS_SCREEN_STATUS2 = 32, + DGUS_SCREEN_MANUALMOVE = 40, + DGUS_SCREEN_MANUALEXTRUDE = 42, + DGUS_SCREEN_FANANDFEEDRATE = 44, + DGUS_SCREEN_FLOWRATES = 46, + DGUS_SCREEN_SDFILELIST = 50, + DGUS_SCREEN_SDPRINTMANIPULATION = 52, + DGUS_SCREEN_POWER_LOSS = 100, + DGUS_SCREEN_PREHEAT = 120, + DGUS_SCREEN_UTILITY = 110, + DGUS_SCREEN_FILAMENT_HEATING = 146, + DGUS_SCREEN_FILAMENT_LOADING = 148, + DGUS_SCREEN_FILAMENT_UNLOADING = 158, + DGUS_SCREEN_SDPRINTTUNE = 170, + DGUS_SCREEN_CONFIRM = 240, + DGUS_SCREEN_KILL = 250, ///< Kill Screen. Must always be 250 (to be able to display "Error wrong LCD Version") + DGUS_SCREEN_WAITING = 251, + DGUS_SCREEN_POPUP = 252, ///< special target, popup screen will also return this code to say "return to previous screen" + DGUS_SCREEN_UNUSED = 255 }; // Display Memory layout used (T5UID) diff --git a/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp index 44f4a95cad2a..943d8c50a55e 100644 --- a/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.cpp @@ -44,7 +44,7 @@ extern ExtUI::FileList filelist; - void DGUSScreenHandler::DGUSLCD_SD_FileSelected(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::sdFileSelected(DGUS_VP_Variable &var, void *val_ptr) { uint16_t touched_nr = (int16_t)swap16(*(uint16_t*)val_ptr) + top_file; if (touched_nr > filelist.count()) return; if (!filelist.seek(touched_nr)) return; @@ -52,28 +52,28 @@ if (filelist.isDir()) { filelist.changeDir(filelist.filename()); top_file = 0; - ForceCompleteUpdate(); + forceCompleteUpdate(); return; } #if ENABLED(DGUS_PRINT_FILENAME) // Send print filename - dgusdisplay.WriteVariable(VP_SD_Print_Filename, filelist.filename(), VP_SD_FileName_LEN, true); + dgus.writeVariable(VP_SD_Print_Filename, filelist.filename(), VP_SD_FileName_LEN, true); #endif // Setup Confirmation screen file_to_print = touched_nr; - HandleUserConfirmationPopUp(VP_SD_FileSelectConfirm, nullptr, PSTR("Print file"), filelist.filename(), PSTR("from SD Card?"), true, true, false, true); + handleUserConfirmationPopUp(VP_SD_FileSelectConfirm, nullptr, PSTR("Print file"), filelist.filename(), PSTR("from SD Card?"), true, true, false, true); } - void DGUSScreenHandler::DGUSLCD_SD_StartPrint(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::sdStartPrint(DGUS_VP_Variable &var, void *val_ptr) { if (!filelist.seek(file_to_print)) return; ExtUI::printFile(filelist.shortFilename()); - GotoScreen(DGUSLCD_SCREEN_STATUS); + gotoScreen(DGUS_SCREEN_STATUS); } - void DGUSScreenHandler::DGUSLCD_SD_ResumePauseAbort(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::sdResumePauseAbort(DGUS_VP_Variable &var, void *val_ptr) { if (!ExtUI::isPrintingFromMedia()) return; // avoid race condition when user stays in this menu and printer finishes. switch (swap16(*(uint16_t*)val_ptr)) { @@ -85,19 +85,19 @@ case 1: // Pause - GotoScreen(DGUSLCD_SCREEN_SDPRINTMANIPULATION); + gotoScreen(DGUS_SCREEN_SDPRINTMANIPULATION); if (!ExtUI::isPrintingFromMediaPaused()) { ExtUI::pausePrint(); //ExtUI::mks_pausePrint(); } break; case 2: // Abort - HandleUserConfirmationPopUp(VP_SD_AbortPrintConfirmed, nullptr, PSTR("Abort printing"), filelist.filename(), PSTR("?"), true, true, false, true); + handleUserConfirmationPopUp(VP_SD_AbortPrintConfirmed, nullptr, PSTR("Abort printing"), filelist.filename(), PSTR("?"), true, true, false, true); break; } } - void DGUSScreenHandler::DGUSLCD_SD_SendFilename(DGUS_VP_Variable& var) { + void DGUSScreenHandler::sdSendFilename(DGUS_VP_Variable& var) { uint16_t target_line = (var.VP - VP_SD_FileName0) / VP_SD_FileName_LEN; if (target_line > DGUS_SD_FILESPERSCREEN) return; char tmpfilename[VP_SD_FileName_LEN + 1] = ""; @@ -106,49 +106,49 @@ if (filelist.seek(top_file + target_line)) { snprintf_P(tmpfilename, VP_SD_FileName_LEN, PSTR("%s%c"), filelist.filename(), filelist.isDir() ? '/' : 0); // snprintf_P(tmpfilename, VP_SD_FileName_LEN, PSTR("%s"), filelist.filename()); } - DGUSLCD_SendStringToDisplay(var); + sendStringToDisplay(var); } - void DGUSScreenHandler::SDCardInserted() { + void DGUSScreenHandler::sdCardInserted() { top_file = 0; filelist.refresh(); auto cs = getCurrentScreen(); - if (cs == DGUSLCD_SCREEN_MAIN || cs == DGUSLCD_SCREEN_STATUS) - GotoScreen(DGUSLCD_SCREEN_SDFILELIST); + if (cs == DGUS_SCREEN_MAIN || cs == DGUS_SCREEN_STATUS) + gotoScreen(DGUS_SCREEN_SDFILELIST); } - void DGUSScreenHandler::SDCardRemoved() { - if (current_screen == DGUSLCD_SCREEN_SDFILELIST - || (current_screen == DGUSLCD_SCREEN_CONFIRM && (ConfirmVP == VP_SD_AbortPrintConfirmed || ConfirmVP == VP_SD_FileSelectConfirm)) - || current_screen == DGUSLCD_SCREEN_SDPRINTMANIPULATION - ) GotoScreen(DGUSLCD_SCREEN_MAIN); + void DGUSScreenHandler::sdCardRemoved() { + if (current_screenID == DGUS_SCREEN_SDFILELIST + || (current_screenID == DGUS_SCREEN_CONFIRM && (confirmVP == VP_SD_AbortPrintConfirmed || confirmVP == VP_SD_FileSelectConfirm)) + || current_screenID == DGUS_SCREEN_SDPRINTMANIPULATION + ) gotoScreen(DGUS_SCREEN_MAIN); } #endif // HAS_MEDIA -void DGUSScreenHandler::ScreenChangeHook(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::screenChangeHook(DGUS_VP_Variable &var, void *val_ptr) { uint8_t *tmp = (uint8_t*)val_ptr; // The keycode in target is coded as , so 0x0100A means - // from screen 1 (main) to 10 (temperature). DGUSLCD_SCREEN_POPUP is special, + // from screen 1 (main) to 10 (temperature). DGUS_SCREEN_POPUP is special, // meaning "return to previous screen" - DGUSLCD_Screens target = (DGUSLCD_Screens)tmp[1]; + DGUS_ScreenID target = (DGUS_ScreenID)tmp[1]; - if (target == DGUSLCD_SCREEN_POPUP) { + if (target == DGUS_SCREEN_POPUP) { // Special handling for popup is to return to previous menu - if (current_screen == DGUSLCD_SCREEN_POPUP && confirm_action_cb) confirm_action_cb(); - PopToOldScreen(); + if (current_screenID == DGUS_SCREEN_POPUP && confirm_action_cb) confirm_action_cb(); + popToOldScreen(); return; } - UpdateNewScreen(target); + updateNewScreen(target); #ifdef DEBUG_DGUSLCD - if (!DGUSLCD_FindScreenVPMapList(target)) DEBUG_ECHOLNPGM("WARNING: No screen Mapping found for ", target); + if (!findScreenVPMapList(target)) DEBUG_ECHOLNPGM("WARNING: No screen Mapping found for ", target); #endif } -void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { +void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) { int16_t movevalue = swap16(*(uint16_t*)val_ptr); #if ENABLED(DGUS_UI_MOVE_DIS_OPTION) if (movevalue) { @@ -196,7 +196,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { char buf[6] = "G28 X"; buf[4] = axiscode; queue.enqueue_one_now(buf); - ForceCompleteUpdate(); + forceCompleteUpdate(); return; } else { @@ -219,14 +219,14 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { if (!old_relative_mode) queue.enqueue_now(F("G90")); } - ForceCompleteUpdate(); + forceCompleteUpdate(); cannotmove: return; } #if HAS_PID_HEATING - void DGUSScreenHandler::HandleTemperaturePIDChanged(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleTemperaturePIDChanged(DGUS_VP_Variable &var, void *val_ptr) { uint16_t rawvalue = swap16(*(uint16_t*)val_ptr); float value = (float)rawvalue / 10; float newvalue = 0; @@ -257,17 +257,17 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #endif // HAS_PID_HEATING #if ENABLED(BABYSTEPPING) - void DGUSScreenHandler::HandleLiveAdjustZ(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleLiveAdjustZ(DGUS_VP_Variable &var, void *val_ptr) { int16_t flag = swap16(*(uint16_t*)val_ptr), steps = flag ? -20 : 20; ExtUI::smartAdjustAxis_steps(steps, ExtUI::axis_t::Z, true); - ForceCompleteUpdate(); + forceCompleteUpdate(); } #endif #if ENABLED(DGUS_FILAMENT_LOADUNLOAD) - void DGUSScreenHandler::HandleFilamentOption(DGUS_VP_Variable &var, void *val_ptr) { + void DGUSScreenHandler::handleFilamentOption(DGUS_VP_Variable &var, void *val_ptr) { uint8_t e_temp = 0; filament_data.heated = false; uint16_t preheat_option = swap16(*(uint16_t*)val_ptr); @@ -315,7 +315,7 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { thermalManager.setTargetHotend(e_temp, ExtUI::extruder_t::E1); #endif #endif - GotoScreen(DGUSLCD_SCREEN_UTILITY); + gotoScreen(DGUS_SCREEN_UTILITY); } else { // Go to the preheat screen to show the heating progress switch (var.VP) { @@ -333,11 +333,11 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { break; #endif } - GotoScreen(DGUSLCD_SCREEN_FILAMENT_HEATING); + gotoScreen(DGUS_SCREEN_FILAMENT_HEATING); } } - void DGUSScreenHandler::HandleFilamentLoadUnload(DGUS_VP_Variable &var) { + void DGUSScreenHandler::handleFilamentLoadUnload(DGUS_VP_Variable &var) { if (filament_data.action <= 0) return; // If we close to the target temperature, we can start load or unload the filament @@ -347,14 +347,14 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { if (filament_data.action == 1) { // load filament if (!filament_data.heated) { - //GotoScreen(DGUSLCD_SCREEN_FILAMENT_LOADING); + //gotoScreen(DGUS_SCREEN_FILAMENT_LOADING); filament_data.heated = true; } movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder) + movevalue; } else { // unload filament if (!filament_data.heated) { - GotoScreen(DGUSLCD_SCREEN_FILAMENT_UNLOADING); + gotoScreen(DGUS_SCREEN_FILAMENT_UNLOADING); filament_data.heated = true; } // Before unloading extrude to prevent jamming @@ -372,14 +372,14 @@ void DGUSScreenHandler::HandleManualMove(DGUS_VP_Variable &var, void *val_ptr) { #endif // DGUS_FILAMENT_LOADUNLOAD bool DGUSScreenHandler::loop() { - dgusdisplay.loop(); + dgus.loop(); const millis_t ms = millis(); static millis_t next_event_ms = 0; - if (!IsScreenComplete() || ELAPSED(ms, next_event_ms)) { + if (!isScreenComplete() || ELAPSED(ms, next_event_ms)) { next_event_ms = ms + DGUS_UPDATE_INTERVAL_MS; - UpdateScreenVPData(); + updateScreenVPData(); } #if ENABLED(SHOW_BOOTSCREEN) @@ -390,11 +390,11 @@ bool DGUSScreenHandler::loop() { if (!booted && ELAPSED(ms, BOOTSCREEN_TIMEOUT)) { booted = true; - GotoScreen(TERN0(POWER_LOSS_RECOVERY, recovery.valid()) ? DGUSLCD_SCREEN_POWER_LOSS : DGUSLCD_SCREEN_MAIN); + gotoScreen(TERN0(POWER_LOSS_RECOVERY, recovery.valid()) ? DGUS_SCREEN_POWER_LOSS : DGUS_SCREEN_MAIN); } #endif - return IsScreenComplete(); + return isScreenComplete(); } #endif // DGUS_LCD_UI_ORIGIN diff --git a/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.h b/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.h index 73e3527d7e7c..16c5dec408d6 100644 --- a/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.h +++ b/Marlin/src/lcd/extui/dgus/origin/DGUSScreenHandler.h @@ -26,6 +26,6 @@ typedef DGUSScreenHandler DGUSScreenHandlerClass; #if ENABLED(POWER_LOSS_RECOVERY) - #define PLR_SCREEN_RECOVER DGUSLCD_SCREEN_SDPRINTMANIPULATION - #define PLR_SCREEN_CANCEL DGUSLCD_SCREEN_STATUS + #define PLR_SCREEN_RECOVER DGUS_SCREEN_SDPRINTMANIPULATION + #define PLR_SCREEN_CANCEL DGUS_SCREEN_STATUS #endif diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.cpp index 7e215f887c5b..31272681804f 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.cpp @@ -50,26 +50,26 @@ uint8_t DGUSDisplay::rx_datagram_len = 0; bool DGUSDisplay::initialized = false; -void DGUSDisplay::Loop() { - ProcessRx(); +void DGUSDisplay::loop() { + processRx(); } -void DGUSDisplay::Init() { +void DGUSDisplay::init() { LCD_SERIAL.begin(LCD_BAUDRATE); - ReadVersions(); + readVersions(); } -void DGUSDisplay::Read(uint16_t addr, uint8_t size) { - WriteHeader(addr, DGUS_READVAR, size); +void DGUSDisplay::read(uint16_t addr, uint8_t size) { + writeHeader(addr, DGUS_READVAR, size); LCD_SERIAL.write(size); } -void DGUSDisplay::Write(uint16_t addr, const void* data_ptr, uint8_t size) { +void DGUSDisplay::write(uint16_t addr, const void* data_ptr, uint8_t size) { if (!data_ptr) return; - WriteHeader(addr, DGUS_WRITEVAR, size); + writeHeader(addr, DGUS_WRITEVAR, size); const char* data = static_cast(data_ptr); @@ -78,10 +78,10 @@ void DGUSDisplay::Write(uint16_t addr, const void* data_ptr, uint8_t size) { } } -void DGUSDisplay::WriteString(uint16_t addr, const void* data_ptr, uint8_t size, bool left, bool right, bool use_space) { +void DGUSDisplay::writeString(uint16_t addr, const void* data_ptr, uint8_t size, bool left, bool right, bool use_space) { if (!data_ptr) return; - WriteHeader(addr, DGUS_WRITEVAR, size); + writeHeader(addr, DGUS_WRITEVAR, size); const char* data = static_cast(data_ptr); size_t len = strlen(data); @@ -118,10 +118,10 @@ void DGUSDisplay::WriteString(uint16_t addr, const void* data_ptr, uint8_t size, } } -void DGUSDisplay::WriteStringPGM(uint16_t addr, const void* data_ptr, uint8_t size, bool left, bool right, bool use_space) { +void DGUSDisplay::writeStringPGM(uint16_t addr, const void* data_ptr, uint8_t size, bool left, bool right, bool use_space) { if (!data_ptr) return; - WriteHeader(addr, DGUS_WRITEVAR, size); + writeHeader(addr, DGUS_WRITEVAR, size); const char* data = static_cast(data_ptr); size_t len = strlen_P(data); @@ -151,61 +151,61 @@ void DGUSDisplay::WriteStringPGM(uint16_t addr, const void* data_ptr, uint8_t si while (right_spaces--) LCD_SERIAL.write(use_space ? ' ' : '\0'); } -void DGUSDisplay::ReadVersions() { +void DGUSDisplay::readVersions() { if (gui_version != 0 && os_version != 0) return; - Read(DGUS_VERSION, 1); + read(DGUS_VERSION, 1); } -void DGUSDisplay::SwitchScreen(DGUS_Screen screen) { - const uint8_t command[] = { 0x5A, 0x01, 0x00, (uint8_t)screen }; - Write(0x84, command, sizeof(command)); +void DGUSDisplay::switchScreen(const DGUS_ScreenID screenID) { + const uint8_t command[] = { 0x5A, 0x01, 0x00, (uint8_t)screenID }; + write(0x84, command, sizeof(command)); } -void DGUSDisplay::PlaySound(uint8_t start, uint8_t len, uint8_t volume) { +void DGUSDisplay::playSound(uint8_t start, uint8_t len, uint8_t volume) { if (volume == 0) volume = DGUSDisplay::volume; if (volume == 0) return; const uint8_t command[] = { start, len, volume, 0x00 }; - Write(0xA0, command, sizeof(command)); + write(0xA0, command, sizeof(command)); } -void DGUSDisplay::EnableControl(DGUS_Screen screen, DGUS_ControlType type, DGUS_Control control) { - const uint8_t command[] = { 0x5A, 0xA5, 0x00, (uint8_t)screen, (uint8_t)control, type, 0x00, 0x01 }; - Write(0xB0, command, sizeof(command)); +void DGUSDisplay::enableControl(const DGUS_ScreenID screenID, DGUS_ControlType type, DGUS_Control control) { + const uint8_t command[] = { 0x5A, 0xA5, 0x00, (uint8_t)screenID, (uint8_t)control, type, 0x00, 0x01 }; + write(0xB0, command, sizeof(command)); - FlushTx(); + flushTx(); delay(50); } -void DGUSDisplay::DisableControl(DGUS_Screen screen, DGUS_ControlType type, DGUS_Control control) { - const uint8_t command[] = { 0x5A, 0xA5, 0x00, (uint8_t)screen, (uint8_t)control, type, 0x00, 0x00 }; - Write(0xB0, command, sizeof(command)); +void DGUSDisplay::disableControl(const DGUS_ScreenID screenID, DGUS_ControlType type, DGUS_Control control) { + const uint8_t command[] = { 0x5A, 0xA5, 0x00, (uint8_t)screenID, (uint8_t)control, type, 0x00, 0x00 }; + write(0xB0, command, sizeof(command)); - FlushTx(); + flushTx(); delay(50); } -uint8_t DGUSDisplay::GetBrightness() { +uint8_t DGUSDisplay::getBrightness() { return brightness; } -uint8_t DGUSDisplay::GetVolume() { +uint8_t DGUSDisplay::getVolume() { return map_precise(volume, 0, 255, 0, 100); } -void DGUSDisplay::SetBrightness(uint8_t new_brightness) { +void DGUSDisplay::setBrightness(uint8_t new_brightness) { brightness = constrain(new_brightness, 0, 100); new_brightness = map_precise(brightness, 0, 100, 5, 100); const uint8_t command[] = { new_brightness, new_brightness }; - Write(0x82, command, sizeof(command)); + write(0x82, command, sizeof(command)); } -void DGUSDisplay::SetVolume(uint8_t new_volume) { +void DGUSDisplay::setVolume(uint8_t new_volume) { volume = map_precise(constrain(new_volume, 0, 100), 0, 100, 0, 255); const uint8_t command[] = { volume, 0x00 }; - Write(0xA1, command, sizeof(command)); + write(0xA1, command, sizeof(command)); } -void DGUSDisplay::ProcessRx() { +void DGUSDisplay::processRx() { #if ENABLED(LCD_SERIAL_STATS_RX_BUFFER_OVERRUNS) if (!LCD_SERIAL.available() && LCD_SERIAL.buffer_overruns()) { @@ -274,7 +274,7 @@ void DGUSDisplay::ProcessRx() { } DGUS_VP vp; - if (!DGUS_PopulateVP((DGUS_Addr)addr, &vp)) { + if (!populateVP((DGUS_Addr)addr, &vp)) { rx_datagram_state = DGUS_IDLE; break; } @@ -332,7 +332,7 @@ void DGUSDisplay::ProcessRx() { } } -size_t DGUSDisplay::GetFreeTxBuffer() { +size_t DGUSDisplay::getFreeTxBuffer() { return ( #ifdef LCD_SERIAL_GET_TX_BUFFER_FREE LCD_SERIAL_GET_TX_BUFFER_FREE() @@ -342,7 +342,7 @@ size_t DGUSDisplay::GetFreeTxBuffer() { ); } -void DGUSDisplay::FlushTx() { +void DGUSDisplay::flushTx() { #ifdef ARDUINO_ARCH_STM32 LCD_SERIAL.flush(); #else @@ -350,7 +350,7 @@ void DGUSDisplay::FlushTx() { #endif } -void DGUSDisplay::WriteHeader(uint16_t addr, uint8_t command, uint8_t len) { +void DGUSDisplay::writeHeader(uint16_t addr, uint8_t command, uint8_t len) { LCD_SERIAL.write(DGUS_HEADER1); LCD_SERIAL.write(DGUS_HEADER2); LCD_SERIAL.write(len + 3); @@ -359,7 +359,7 @@ void DGUSDisplay::WriteHeader(uint16_t addr, uint8_t command, uint8_t len) { LCD_SERIAL.write(addr & 0xFF); } -bool DGUS_PopulateVP(const DGUS_Addr addr, DGUS_VP * const buffer) { +bool populateVP(const DGUS_Addr addr, DGUS_VP * const buffer) { const DGUS_VP *ret = vp_list; do { diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.h b/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.h index bfea5780a1f0..88fed7a3b812 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.h @@ -26,7 +26,7 @@ * Updated for STM32G0B1RE by Protomosh in 2022. */ -#include "config/DGUS_Screen.h" +#include "config/DGUS_ScreenID.h" #include "config/DGUS_Control.h" #include "definition/DGUS_VP.h" @@ -58,58 +58,58 @@ class DGUSDisplay { DGUSDisplay() = default; - static void Init(); + static void init(); - static void Read(uint16_t addr, uint8_t size); - static void Write(uint16_t addr, const void* data_ptr, uint8_t size); + static void read(uint16_t addr, uint8_t size); + static void write(uint16_t addr, const void* data_ptr, uint8_t size); - static void WriteString(uint16_t addr, const void* data_ptr, uint8_t size, bool left=true, bool right=false, bool use_space=true); - static void WriteStringPGM(uint16_t addr, const void* data_ptr, uint8_t size, bool left=true, bool right=false, bool use_space=true); - static void WriteString(uint16_t addr, FSTR_P const fstr, uint8_t size, bool left=true, bool right=false, bool use_space=true) { - WriteStringPGM(addr, FTOP(fstr), size, left, right, use_space); + static void writeString(uint16_t addr, const void* data_ptr, uint8_t size, bool left=true, bool right=false, bool use_space=true); + static void writeStringPGM(uint16_t addr, const void* data_ptr, uint8_t size, bool left=true, bool right=false, bool use_space=true); + static void writeString(uint16_t addr, FSTR_P const fstr, uint8_t size, bool left=true, bool right=false, bool use_space=true) { + writeStringPGM(addr, FTOP(fstr), size, left, right, use_space); } template - static void Write(uint16_t addr, T data) { - Write(addr, static_cast(&data), sizeof(T)); + static void write(uint16_t addr, T data) { + write(addr, static_cast(&data), sizeof(T)); } // Until now I did not need to actively read from the display. That's why there is no ReadVariable // (I extensively use the auto upload of the display) // Read GUI and OS version from screen - static void ReadVersions(); + static void readVersions(); // Force display into another screen. - static void SwitchScreen(DGUS_Screen screen); + static void switchScreen(const DGUS_ScreenID screenID); // Play sounds using the display speaker. // start: position at which the sound was stored on the display. // len: how many sounds to play. Sounds will play consecutively from start to start+len-1. // volume: playback volume. 0 keeps the current volume. - static void PlaySound(uint8_t start, uint8_t len=1, uint8_t volume=0); + static void playSound(uint8_t start, uint8_t len=1, uint8_t volume=0); // Enable/disable a specific touch control. // type: control type. // control: index of the control on the page (set during screen development). - static void EnableControl(DGUS_Screen screen, DGUS_ControlType type, DGUS_Control control); - static void DisableControl(DGUS_Screen screen, DGUS_ControlType type, DGUS_Control control); + static void enableControl(const DGUS_ScreenID screenID, DGUS_ControlType type, DGUS_Control control); + static void disableControl(const DGUS_ScreenID screenID, DGUS_ControlType type, DGUS_Control control); - static uint8_t GetBrightness(); - static uint8_t GetVolume(); + static uint8_t getBrightness(); + static uint8_t getVolume(); // Set the display brightness/volume, ranging 0 - 100 - static void SetBrightness(uint8_t brightness); - static void SetVolume(uint8_t volume); + static void setBrightness(uint8_t brightness); + static void setVolume(uint8_t volume); // Periodic tasks, eg. Rx-Queue handling. - static void Loop(); + static void loop(); // Helper for users of this class to estimate if an interaction would be blocking. - static size_t GetFreeTxBuffer(); - static void FlushTx(); + static size_t getFreeTxBuffer(); + static void flushTx(); // Checks two things: Can we confirm the presence of the display and has we initialized it. // (both boils down that the display answered to our chatting) - static bool IsInitialized() { + static bool isInitialized() { return initialized; } @@ -117,7 +117,7 @@ class DGUSDisplay { static uint8_t os_version; template - static T SwapBytes(const T value) { + static T swapBytes(const T value) { union { T val; char byte[sizeof(T)]; @@ -129,12 +129,12 @@ class DGUSDisplay { } template - T_out FromFixedPoint(const T_in value) { + T_out fromFixedPoint(const T_in value) { return (T_out)((float)value / POW(10, decimals)); } template - T_out ToFixedPoint(const T_in value) { + T_out toFixedPoint(const T_in value) { return (T_out)LROUND((float)value * POW(10, decimals)); } @@ -160,8 +160,8 @@ class DGUSDisplay { DGUS_VERSION = 0x000F // OS/GUI version }; - static void WriteHeader(uint16_t addr, uint8_t command, uint8_t len); - static void ProcessRx(); + static void writeHeader(uint16_t addr, uint8_t command, uint8_t len); + static void processRx(); static uint8_t volume; static uint8_t brightness; @@ -172,11 +172,11 @@ class DGUSDisplay { static bool initialized; }; -template<> inline uint16_t DGUSDisplay::SwapBytes(const uint16_t value) { +template<> inline uint16_t DGUSDisplay::swapBytes(const uint16_t value) { return ((value << 8) | (value >> 8)); } -extern DGUSDisplay dgus_display; +extern DGUSDisplay dgus; /// Helper to populate a DGUS_VP for a given VP. Return false if not found. -extern bool DGUS_PopulateVP(const DGUS_Addr addr, DGUS_VP * const buffer); +extern bool populateVP(const DGUS_Addr addr, DGUS_VP * const buffer); diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp index 97ae7638c941..aa58e8569229 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp @@ -27,7 +27,7 @@ #include "DGUSRxHandler.h" #include "DGUSScreenHandler.h" -#include "config/DGUS_Screen.h" +#include "config/DGUS_ScreenID.h" #include "../ui_api.h" #include "../../../core/language.h" @@ -42,73 +42,73 @@ #include "../../../feature/powerloss.h" #endif -void DGUSRxHandler::ScreenChange(DGUS_VP &vp, void *data_ptr) { - const DGUS_Screen screen = (DGUS_Screen)((uint8_t*)data_ptr)[1]; +void DGUSRxHandler::screenChange(DGUS_VP &vp, void *data_ptr) { + const DGUS_ScreenID screenID = (DGUS_ScreenID)((uint8_t*)data_ptr)[1]; if (vp.addr == DGUS_Addr::SCREENCHANGE_SD) { #if HAS_MEDIA IF_DISABLED(HAS_SD_DETECT, card.mount()); if (!ExtUI::isMediaInserted()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(MSG_NO_MEDIA)); + screen.setStatusMessage(GET_TEXT_F(MSG_NO_MEDIA)); return; } card.cdroot(); #else - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(MSG_NO_MEDIA)); + screen.setStatusMessage(GET_TEXT_F(MSG_NO_MEDIA)); return; #endif } if (vp.addr == DGUS_Addr::SCREENCHANGE_Idle && (ExtUI::isPrinting() || ExtUI::isPrintingPaused())) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_NOT_WHILE_PRINTING)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_NOT_WHILE_PRINTING)); return; } if (vp.addr == DGUS_Addr::SCREENCHANGE_Printing && (!ExtUI::isPrinting() && !ExtUI::isPrintingPaused())) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_NOT_WHILE_IDLE)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_NOT_WHILE_IDLE)); return; } - dgus_screen_handler.TriggerScreenChange(screen); + screen.triggerScreenChange(screenID); } #if HAS_MEDIA - void DGUSRxHandler::Scroll(DGUS_VP &vp, void *data_ptr) { + void DGUSRxHandler::scroll(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::Scroll scroll = (DGUS_Data::Scroll)((uint8_t*)data_ptr)[1]; switch (scroll) { case DGUS_Data::Scroll::GO_BACK: - if (dgus_screen_handler.filelist.isAtRootDir()) { + if (screen.filelist.isAtRootDir()) { return; } - dgus_screen_handler.filelist_offset = 0; - dgus_screen_handler.filelist_selected = -1; - dgus_screen_handler.filelist.upDir(); + screen.filelist_offset = 0; + screen.filelist_selected = -1; + screen.filelist.upDir(); break; case DGUS_Data::Scroll::UP: - if (dgus_screen_handler.filelist_offset < 1) { + if (screen.filelist_offset < 1) { return; } - --dgus_screen_handler.filelist_offset; + --screen.filelist_offset; break; case DGUS_Data::Scroll::DOWN: - if (dgus_screen_handler.filelist_offset + 1 + DGUS_FILE_COUNT > dgus_screen_handler.filelist.count()) { + if (screen.filelist_offset + 1 + DGUS_FILE_COUNT > screen.filelist.count()) { return; } - ++dgus_screen_handler.filelist_offset; + ++screen.filelist_offset; break; } - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } void DGUSRxHandler::selectFile(DGUS_VP &vp, void *data_ptr) { @@ -116,47 +116,47 @@ void DGUSRxHandler::ScreenChange(DGUS_VP &vp, void *data_ptr) { const uint8_t index = ((uint8_t*)data_ptr)[1]; - if (!dgus_screen_handler.filelist.seek(dgus_screen_handler.filelist_offset + index)) { + if (!screen.filelist.seek(screen.filelist_offset + index)) { return; } - if (dgus_screen_handler.filelist.isDir()) { - dgus_screen_handler.filelist_offset = 0; - dgus_screen_handler.filelist_selected = -1; - dgus_screen_handler.filelist.changeDir(dgus_screen_handler.filelist.filename()); + if (screen.filelist.isDir()) { + screen.filelist_offset = 0; + screen.filelist_selected = -1; + screen.filelist.changeDir(screen.filelist.filename()); } else { - dgus_screen_handler.filelist_selected = dgus_screen_handler.filelist_offset + index; + screen.filelist_selected = screen.filelist_offset + index; } - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } - void DGUSRxHandler::PrintFile(DGUS_VP &vp, void *data_ptr) { + void DGUSRxHandler::printFile(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); UNUSED(data_ptr); - if (dgus_screen_handler.filelist_selected < 0) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_NO_FILE_SELECTED)); + if (screen.filelist_selected < 0) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_NO_FILE_SELECTED)); return; } - if (!dgus_screen_handler.filelist.seek(dgus_screen_handler.filelist_selected) - || dgus_screen_handler.filelist.isDir()) { + if (!screen.filelist.seek(screen.filelist_selected) + || screen.filelist.isDir()) { return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } - ExtUI::printFile(dgus_screen_handler.filelist.shortFilename()); - dgus_screen_handler.TriggerScreenChange(DGUS_Screen::PRINT_STATUS); + ExtUI::printFile(screen.filelist.shortFilename()); + screen.triggerScreenChange(DGUS_ScreenID::PRINT_STATUS); } #endif // HAS_MEDIA -void DGUSRxHandler::PrintAbort(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::printAbort(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::Popup result = (DGUS_Data::Popup)((uint8_t*)data_ptr)[1]; @@ -166,14 +166,14 @@ void DGUSRxHandler::PrintAbort(DGUS_VP &vp, void *data_ptr) { } if (!ExtUI::isPrinting() && !ExtUI::isPrintingPaused()) { - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); return; } ExtUI::stopPrint(); } -void DGUSRxHandler::PrintPause(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::printPause(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::Popup result = (DGUS_Data::Popup)((uint8_t*)data_ptr)[1]; @@ -183,14 +183,14 @@ void DGUSRxHandler::PrintPause(DGUS_VP &vp, void *data_ptr) { } if (!ExtUI::isPrinting()) { - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); return; } ExtUI::pausePrint(); } -void DGUSRxHandler::PrintResume(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::printResume(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::Popup result = (DGUS_Data::Popup)((uint8_t*)data_ptr)[1]; @@ -200,29 +200,29 @@ void DGUSRxHandler::PrintResume(DGUS_VP &vp, void *data_ptr) { } if (!ExtUI::isPrintingPaused()) { - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } ExtUI::resumePrint(); } -void DGUSRxHandler::Feedrate(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::feedrate(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const int16_t feedrate = BE16_P(data_ptr); ExtUI::setFeedrate_percent(feedrate); - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::Flowrate(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::flowrate(DGUS_VP &vp, void *data_ptr) { const int16_t flowrate = BE16_P(data_ptr); switch (vp.addr) { @@ -240,24 +240,24 @@ void DGUSRxHandler::Flowrate(DGUS_VP &vp, void *data_ptr) { #endif } - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::BabystepSet(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::babystepSet(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const int16_t data = BE16_P(data_ptr); - const float offset = dgus_display.FromFixedPoint(data); + const float offset = dgus.fromFixedPoint(data); const int16_t steps = ExtUI::mmToWholeSteps(offset - ExtUI::getZOffset_mm(), ExtUI::Z); ExtUI::smartAdjustAxis_steps(steps, ExtUI::Z, true); - dgus_screen_handler.TriggerEEPROMSave(); - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerEEPROMSave(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::Babystep(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::babystep(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::Adjust adjust = (DGUS_Data::Adjust)((uint8_t*)data_ptr)[1]; @@ -275,11 +275,11 @@ void DGUSRxHandler::Babystep(DGUS_VP &vp, void *data_ptr) { ExtUI::smartAdjustAxis_steps(steps, ExtUI::Z, true); - dgus_screen_handler.TriggerEEPROMSave(); - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerEEPROMSave(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::TempPreset(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::tempPreset(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::TempPreset preset = (DGUS_Data::TempPreset)((uint8_t*)data_ptr)[1]; @@ -311,10 +311,10 @@ void DGUSRxHandler::TempPreset(DGUS_VP &vp, void *data_ptr) { break; } - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::TempTarget(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::tempTarget(DGUS_VP &vp, void *data_ptr) { const int16_t temp = BE16_P(data_ptr); switch (vp.addr) { @@ -332,10 +332,10 @@ void DGUSRxHandler::TempTarget(DGUS_VP &vp, void *data_ptr) { #endif } - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::TempCool(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::tempCool(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::Heater heater = (DGUS_Data::Heater)BE16_P(data_ptr); @@ -362,12 +362,12 @@ void DGUSRxHandler::TempCool(DGUS_VP &vp, void *data_ptr) { #endif } - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(MSG_COOLING)); + screen.setStatusMessage(GET_TEXT_F(MSG_COOLING)); - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::Steppers(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::steppers(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::Control control = (DGUS_Data::Control)((uint8_t*)data_ptr)[1]; @@ -381,50 +381,50 @@ void DGUSRxHandler::Steppers(DGUS_VP &vp, void *data_ptr) { break; } - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::ZOffset(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::zOffset(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); if (TERN0(NO_MOTION_BEFORE_HOMING, !ExtUI::isAxisPositionKnown(ExtUI::Z))) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } const int16_t data = BE16_P(data_ptr); - const float offset = dgus_display.FromFixedPoint(data); + const float offset = dgus.fromFixedPoint(data); const int16_t steps = ExtUI::mmToWholeSteps(offset - ExtUI::getZOffset_mm(), ExtUI::Z); ExtUI::smartAdjustAxis_steps(steps, ExtUI::Z, true); - dgus_screen_handler.TriggerEEPROMSave(); - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerEEPROMSave(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::ZOffsetStep(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::zOffsetStep(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); if (TERN0(NO_MOTION_BEFORE_HOMING, !ExtUI::isAxisPositionKnown(ExtUI::Z))) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } const DGUS_Data::Adjust adjust = (DGUS_Data::Adjust)((uint8_t*)data_ptr)[1]; int16_t steps; - switch (dgus_screen_handler.offset_steps) { + switch (screen.offset_steps) { default: return; case DGUS_Data::StepSize::MMP1: steps = ExtUI::mmToWholeSteps((adjust == DGUS_Data::Adjust::INCREMENT ? 0.1f : -0.1f), ExtUI::Z); @@ -436,30 +436,30 @@ void DGUSRxHandler::ZOffsetStep(DGUS_VP &vp, void *data_ptr) { ExtUI::smartAdjustAxis_steps(steps, ExtUI::Z, true); - dgus_screen_handler.TriggerEEPROMSave(); - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerEEPROMSave(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::ZOffsetSetStep(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::zOffsetSetStep(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::StepSize size = (DGUS_Data::StepSize)((uint8_t*)data_ptr)[1]; - dgus_screen_handler.offset_steps = size; + screen.offset_steps = size; - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::MoveToPoint(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::moveToPoint(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); if (!ExtUI::isPositionKnown()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } @@ -499,26 +499,26 @@ void DGUSRxHandler::MoveToPoint(DGUS_VP &vp, void *data_ptr) { ExtUI::setAxisPosition_mm(Z_MIN_POS + BED_TRAMMING_HEIGHT, ExtUI::Z); } -void DGUSRxHandler::Probe(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::probe(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); UNUSED(data_ptr); #if ENABLED(MESH_BED_LEVELING) - dgus_screen_handler.SetStatusMessage(FPSTR(DGUS_MSG_ABL_REQUIRED)); + screen.setStatusMessage(FPSTR(DGUS_MSG_ABL_REQUIRED)); return; #endif if (!ExtUI::isPositionKnown()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } - dgus_screen_handler.TriggerScreenChange(DGUS_Screen::LEVELING_PROBING); + screen.triggerScreenChange(DGUS_ScreenID::LEVELING_PROBING); #if ENABLED(AUTO_BED_LEVELING_UBL) queue.enqueue_now(F("G29P1\nG29P3\nG29P5C")); @@ -528,22 +528,22 @@ void DGUSRxHandler::Probe(DGUS_VP &vp, void *data_ptr) { queue.enqueue_now(F("M500")); } -void DGUSRxHandler::DisableABL(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::disableABL(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); UNUSED(data_ptr); - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } ExtUI::setLevelingActive(false); - dgus_screen_handler.TriggerEEPROMSave(); - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerEEPROMSave(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::FilamentSelect(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::filamentSelect(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::Extruder extruder = (DGUS_Data::Extruder)BE16_P(data_ptr); @@ -553,34 +553,34 @@ void DGUSRxHandler::FilamentSelect(DGUS_VP &vp, void *data_ptr) { case DGUS_Data::Extruder::CURRENT: case DGUS_Data::Extruder::E0: E_TERN_(case DGUS_Data::Extruder::E1:) - dgus_screen_handler.filament_extruder = extruder; + screen.filament_extruder = extruder; break; } - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::FilamentLength(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::filamentLength(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const uint16_t length = BE16_P(data_ptr); - dgus_screen_handler.filament_length = constrain(length, 0, EXTRUDE_MAXLENGTH); + screen.filament_length = constrain(length, 0, EXTRUDE_MAXLENGTH); - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::FilamentMove(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::filamentMove(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } ExtUI::extruder_t extruder; - switch (dgus_screen_handler.filament_extruder) { + switch (screen.filament_extruder) { default: return; case DGUS_Data::Extruder::CURRENT: #if HAS_MULTI_EXTRUDER @@ -598,7 +598,7 @@ void DGUSRxHandler::FilamentMove(DGUS_VP &vp, void *data_ptr) { } if (ExtUI::getActualTemp_celsius(extruder) < (float)EXTRUDE_MINTEMP) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_TEMP_TOO_LOW)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_TEMP_TOO_LOW)); return; } @@ -606,25 +606,25 @@ void DGUSRxHandler::FilamentMove(DGUS_VP &vp, void *data_ptr) { switch (move) { case DGUS_Data::FilamentMove::RETRACT: - UI_DECREMENT_BY(AxisPosition_mm, (float)dgus_screen_handler.filament_length, extruder); + UI_DECREMENT_BY(AxisPosition_mm, (float)screen.filament_length, extruder); break; case DGUS_Data::FilamentMove::EXTRUDE: - UI_INCREMENT_BY(AxisPosition_mm, (float)dgus_screen_handler.filament_length, extruder); + UI_INCREMENT_BY(AxisPosition_mm, (float)screen.filament_length, extruder); break; } } -void DGUSRxHandler::Home(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::home(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } DGUS_Data::Axis axis = (DGUS_Data::Axis)((uint8_t*)data_ptr)[1]; - dgus_screen_handler.ShowWaitScreen(GET_TEXT_F(DGUS_MSG_HOMING), dgus_screen_handler.GetCurrentScreen()); + screen.showWaitScreen(GET_TEXT_F(DGUS_MSG_HOMING), screen.getCurrentScreen()); switch (axis) { case DGUS_Data::Axis::X_Y_Z: @@ -639,9 +639,9 @@ void DGUSRxHandler::Home(DGUS_VP &vp, void *data_ptr) { } } -void DGUSRxHandler::Move(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::move(DGUS_VP &vp, void *data_ptr) { const int16_t data = BE16_P(data_ptr); - const float position = dgus_display.FromFixedPoint(data); + const float position = dgus.fromFixedPoint(data); ExtUI::axis_t axis; switch (vp.addr) { @@ -652,20 +652,20 @@ void DGUSRxHandler::Move(DGUS_VP &vp, void *data_ptr) { } if (TERN0(NO_MOTION_BEFORE_HOMING, !ExtUI::isAxisPositionKnown(axis))) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); return; } ExtUI::setAxisPosition_mm(position, axis); - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::MoveStep(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::moveStep(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); float offset; - switch (dgus_screen_handler.move_steps) { + switch (screen.move_steps) { default: return; case DGUS_Data::StepSize::MM10: offset = 10.0f; break; case DGUS_Data::StepSize::MM1: offset = 1.0f; break; @@ -686,58 +686,58 @@ void DGUSRxHandler::MoveStep(DGUS_VP &vp, void *data_ptr) { } if (TERN0(NO_MOTION_BEFORE_HOMING, !ExtUI::isAxisPositionKnown(axis))) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_HOMING_REQUIRED)); return; } UI_INCREMENT_BY(AxisPosition_mm, offset, axis); - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::MoveSetStep(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::moveSetStep(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::StepSize size = (DGUS_Data::StepSize)((uint8_t*)data_ptr)[1]; - dgus_screen_handler.move_steps = size; + screen.move_steps = size; - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::GcodeClear(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::gcodeClear(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); UNUSED(data_ptr); - ZERO(dgus_screen_handler.gcode); + ZERO(screen.gcode); - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::GcodeExecute(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::gcodeExecute(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); UNUSED(data_ptr); - if (!strlen(dgus_screen_handler.gcode)) return; + if (!strlen(screen.gcode)) return; - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } - dgus_screen_handler.ShowWaitScreen(GET_TEXT_F(DGUS_MSG_EXECUTING_COMMAND), DGUS_Screen::GCODE); + screen.showWaitScreen(GET_TEXT_F(DGUS_MSG_EXECUTING_COMMAND), DGUS_ScreenID::GCODE); - queue.enqueue_one_now(dgus_screen_handler.gcode); + queue.enqueue_one_now(screen.gcode); } -void DGUSRxHandler::ResetEEPROM(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::resetEEPROM(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::Popup result = (DGUS_Data::Popup)((uint8_t*)data_ptr)[1]; if (result != DGUS_Data::Popup::CONFIRMED) return; - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } @@ -745,7 +745,7 @@ void DGUSRxHandler::ResetEEPROM(DGUS_VP &vp, void *data_ptr) { queue.enqueue_now(F("M500")); } -void DGUSRxHandler::SettingsExtra(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::settingsExtra(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::Extra extra = (DGUS_Data::Extra)((uint8_t*)data_ptr)[1]; @@ -754,25 +754,25 @@ void DGUSRxHandler::SettingsExtra(DGUS_VP &vp, void *data_ptr) { default: return; case DGUS_Data::Extra::BUTTON1: #if ENABLED(BLTOUCH) - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } queue.enqueue_now(F(DGUS_RESET_BLTOUCH)); #else - dgus_screen_handler.TriggerScreenChange(DGUS_Screen::INFOS); + screen.triggerScreenChange(DGUS_ScreenID::INFOS); #endif break; #if ENABLED(BLTOUCH) case DGUS_Data::Extra::BUTTON2: - dgus_screen_handler.TriggerScreenChange(DGUS_Screen::INFOS); + screen.triggerScreenChange(DGUS_ScreenID::INFOS); break; #endif } } -void DGUSRxHandler::PIDSelect(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::pidSelect(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::Heater heater = (DGUS_Data::Heater)BE16_P(data_ptr); @@ -780,34 +780,34 @@ void DGUSRxHandler::PIDSelect(DGUS_VP &vp, void *data_ptr) { switch (heater) { default: return; case DGUS_Data::Heater::BED: - dgus_screen_handler.pid_temp = DGUS_PLA_TEMP_BED; - dgus_screen_handler.pid_heater = heater; + screen.pid_temp = DGUS_PLA_TEMP_BED; + screen.pid_heater = heater; break; case DGUS_Data::Heater::H0: #if HAS_MULTI_HOTEND case DGUS_Data::Heater::H1: #endif - dgus_screen_handler.pid_temp = DGUS_PLA_TEMP_HOTEND; - dgus_screen_handler.pid_heater = heater; + screen.pid_temp = DGUS_PLA_TEMP_HOTEND; + screen.pid_heater = heater; break; } - dgus_screen_handler.pid_cycles = 5; + screen.pid_cycles = 5; - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::PIDSetTemp(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::pidSetTemp(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } uint16_t temp = BE16_P(data_ptr); - switch (dgus_screen_handler.pid_heater) { + switch (screen.pid_heater) { default: return; case DGUS_Data::Heater::BED: temp = constrain(temp, BED_MINTEMP, BED_MAX_TARGET); @@ -822,31 +822,31 @@ void DGUSRxHandler::PIDSetTemp(DGUS_VP &vp, void *data_ptr) { #endif } - dgus_screen_handler.pid_temp = temp; + screen.pid_temp = temp; - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::PIDRun(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::pidRun(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); UNUSED(data_ptr); - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } heater_id_t heater; - uint8_t cycles = constrain(dgus_screen_handler.pid_cycles, 3, 10); + uint8_t cycles = constrain(screen.pid_cycles, 3, 10); - switch (dgus_screen_handler.pid_heater) { + switch (screen.pid_heater) { default: return; case DGUS_Data::Heater::BED: #if ENABLED(PIDTEMPBED) heater = H_BED; break; #else - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BED_PID_DISABLED)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BED_PID_DISABLED)); return; #endif case DGUS_Data::Heater::H0: @@ -854,7 +854,7 @@ void DGUSRxHandler::PIDRun(DGUS_VP &vp, void *data_ptr) { heater = H_E0; break; #else - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_PID_DISABLED)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_PID_DISABLED)); return; #endif #if HAS_MULTI_HOTEND @@ -863,23 +863,23 @@ void DGUSRxHandler::PIDRun(DGUS_VP &vp, void *data_ptr) { heater = H_E1; break; #else - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_PID_DISABLED)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_PID_DISABLED)); return; #endif #endif } char buffer[24]; - snprintf_P(buffer, sizeof(buffer), PSTR("M303C%dE%dS%dU1"), cycles, heater, dgus_screen_handler.pid_temp); + snprintf_P(buffer, sizeof(buffer), PSTR("M303C%dE%dS%dU1"), cycles, heater, screen.pid_temp); - dgus_screen_handler.ShowWaitScreen(GET_TEXT_F(DGUS_MSG_PID_AUTOTUNING), DGUS_Screen::PID); + screen.showWaitScreen(GET_TEXT_F(DGUS_MSG_PID_AUTOTUNING), DGUS_ScreenID::PID); queue.enqueue_one_now(buffer); queue.enqueue_now(F("M500")); } #if ENABLED(POWER_LOSS_RECOVERY) - void DGUSRxHandler::PowerLossAbort(DGUS_VP &vp, void *data_ptr) { + void DGUSRxHandler::powerLossAbort(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::Popup result = (DGUS_Data::Popup)((uint8_t*)data_ptr)[1]; @@ -888,17 +888,17 @@ void DGUSRxHandler::PIDRun(DGUS_VP &vp, void *data_ptr) { return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } - dgus_screen_handler.TriggerScreenChange(DGUS_Screen::HOME); + screen.triggerScreenChange(DGUS_ScreenID::HOME); queue.enqueue_now(F("M1000C")); } - void DGUSRxHandler::PowerLossResume(DGUS_VP &vp, void *data_ptr) { + void DGUSRxHandler::powerLossResume(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::Popup result = (DGUS_Data::Popup)((uint8_t*)data_ptr)[1]; @@ -907,23 +907,23 @@ void DGUSRxHandler::PIDRun(DGUS_VP &vp, void *data_ptr) { return; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return; } if (!recovery.valid()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_INVALID_RECOVERY_DATA)); + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_INVALID_RECOVERY_DATA)); return; } - dgus_screen_handler.TriggerScreenChange(DGUS_Screen::PRINT_STATUS); + screen.triggerScreenChange(DGUS_ScreenID::PRINT_STATUS); queue.enqueue_now(F("M1000")); } #endif // POWER_LOSS_RECOVERY -void DGUSRxHandler::WaitAbort(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::waitAbort(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); const DGUS_Data::Popup result = (DGUS_Data::Popup)((uint8_t*)data_ptr)[1]; @@ -933,25 +933,25 @@ void DGUSRxHandler::WaitAbort(DGUS_VP &vp, void *data_ptr) { } if (!ExtUI::isPrintingPaused()) { - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); return; } ExtUI::stopPrint(); - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::WaitContinue(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::waitContinue(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); UNUSED(data_ptr); ExtUI::setUserConfirmed(); - dgus_screen_handler.TriggerFullUpdate(); + screen.triggerFullUpdate(); } -void DGUSRxHandler::FanSpeed(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::fanSpeed(DGUS_VP &vp, void *data_ptr) { uint8_t speed = ((uint8_t*)data_ptr)[1]; switch (vp.addr) { default: return; @@ -961,36 +961,36 @@ void DGUSRxHandler::FanSpeed(DGUS_VP &vp, void *data_ptr) { } } -void DGUSRxHandler::Volume(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::volume(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); uint8_t volume = ((uint8_t*)data_ptr)[1]; - dgus_display.SetVolume(volume); + dgus.setVolume(volume); - dgus_screen_handler.TriggerEEPROMSave(); + screen.triggerEEPROMSave(); } -void DGUSRxHandler::Brightness(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::brightness(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); uint8_t brightness = ((uint8_t*)data_ptr)[1]; - dgus_display.SetBrightness(brightness); + dgus.setBrightness(brightness); - dgus_screen_handler.TriggerEEPROMSave(); + screen.triggerEEPROMSave(); } -void DGUSRxHandler::Debug(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::debug(DGUS_VP &vp, void *data_ptr) { UNUSED(vp); UNUSED(data_ptr); - ++dgus_screen_handler.debug_count; + ++screen.debug_count; - if (dgus_screen_handler.debug_count >= 10) { - dgus_screen_handler.TriggerScreenChange(DGUS_Screen::DEBUG); + if (screen.debug_count >= 10) { + screen.triggerScreenChange(DGUS_ScreenID::DEBUG); } } -void DGUSRxHandler::StringToExtra(DGUS_VP &vp, void *data_ptr) { +void DGUSRxHandler::stringToExtra(DGUS_VP &vp, void *data_ptr) { if (!vp.size || !vp.extra) return; memcpy(vp.extra, data_ptr, vp.size); } diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.h b/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.h index b81b142d8411..9143b83554ee 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.h @@ -26,78 +26,78 @@ namespace DGUSRxHandler { - void ScreenChange(DGUS_VP &, void *); + void screenChange(DGUS_VP &, void *); #if HAS_MEDIA - void Scroll(DGUS_VP &, void *); + void scroll(DGUS_VP &, void *); void selectFile(DGUS_VP &, void *); - void PrintFile(DGUS_VP &, void *); + void printFile(DGUS_VP &, void *); #endif - void PrintAbort(DGUS_VP &, void *); - void PrintPause(DGUS_VP &, void *); - void PrintResume(DGUS_VP &, void *); + void printAbort(DGUS_VP &, void *); + void printPause(DGUS_VP &, void *); + void printResume(DGUS_VP &, void *); - void Feedrate(DGUS_VP &, void *); - void Flowrate(DGUS_VP &, void *); - void BabystepSet(DGUS_VP &, void *); - void Babystep(DGUS_VP &, void *); + void feedrate(DGUS_VP &, void *); + void flowrate(DGUS_VP &, void *); + void babystepSet(DGUS_VP &, void *); + void babystep(DGUS_VP &, void *); - void TempPreset(DGUS_VP &, void *); - void TempTarget(DGUS_VP &, void *); - void TempCool(DGUS_VP &, void *); + void tempPreset(DGUS_VP &, void *); + void tempTarget(DGUS_VP &, void *); + void tempCool(DGUS_VP &, void *); - void Steppers(DGUS_VP &, void *); + void steppers(DGUS_VP &, void *); - void ZOffset(DGUS_VP &, void *); - void ZOffsetStep(DGUS_VP &, void *); - void ZOffsetSetStep(DGUS_VP &, void *); + void zOffset(DGUS_VP &, void *); + void zOffsetStep(DGUS_VP &, void *); + void zOffsetSetStep(DGUS_VP &, void *); - void MoveToPoint(DGUS_VP &, void *); + void moveToPoint(DGUS_VP &, void *); - void Probe(DGUS_VP &, void *); - void DisableABL(DGUS_VP &, void *); + void probe(DGUS_VP &, void *); + void disableABL(DGUS_VP &, void *); - void FilamentSelect(DGUS_VP &, void *); - void FilamentLength(DGUS_VP &, void *); - void FilamentMove(DGUS_VP &, void *); + void filamentSelect(DGUS_VP &, void *); + void filamentLength(DGUS_VP &, void *); + void filamentMove(DGUS_VP &, void *); - void Home(DGUS_VP &, void *); - void Move(DGUS_VP &, void *); - void MoveStep(DGUS_VP &, void *); - void MoveSetStep(DGUS_VP &, void *); + void home(DGUS_VP &, void *); + void move(DGUS_VP &, void *); + void moveStep(DGUS_VP &, void *); + void moveSetStep(DGUS_VP &, void *); - void GcodeClear(DGUS_VP &, void *); - void GcodeExecute(DGUS_VP &, void *); + void gcodeClear(DGUS_VP &, void *); + void gcodeExecute(DGUS_VP &, void *); - void ResetEEPROM(DGUS_VP &, void *); + void resetEEPROM(DGUS_VP &, void *); - void SettingsExtra(DGUS_VP &, void *); + void settingsExtra(DGUS_VP &, void *); - void PIDSelect(DGUS_VP &, void *); - void PIDSetTemp(DGUS_VP &, void *); - void PIDRun(DGUS_VP &, void *); + void pidSelect(DGUS_VP &, void *); + void pidSetTemp(DGUS_VP &, void *); + void pidRun(DGUS_VP &, void *); #if ENABLED(POWER_LOSS_RECOVERY) - void PowerLossAbort(DGUS_VP &, void *); - void PowerLossResume(DGUS_VP &, void *); + void powerLossAbort(DGUS_VP &, void *); + void powerLossResume(DGUS_VP &, void *); #endif - void WaitAbort(DGUS_VP &, void *); - void WaitContinue(DGUS_VP &, void *); + void waitAbort(DGUS_VP &, void *); + void waitContinue(DGUS_VP &, void *); - void FanSpeed(DGUS_VP &, void *); + void fanSpeed(DGUS_VP &, void *); - void Volume(DGUS_VP &, void *); + void volume(DGUS_VP &, void *); - void Brightness(DGUS_VP &, void *); + void brightness(DGUS_VP &, void *); - void Debug(DGUS_VP &, void *); + void debug(DGUS_VP &, void *); - void StringToExtra(DGUS_VP &, void *); + void stringToExtra(DGUS_VP &, void *); template - void IntegerToExtra(DGUS_VP &vp, void *data_ptr) { + void integerToExtra(DGUS_VP &vp, void *data_ptr) { if (!vp.size || !vp.extra) return; switch (vp.size) { default: return; @@ -112,7 +112,7 @@ namespace DGUSRxHandler { break; } case 4: { - const uint32_t data = dgus_display.SwapBytes(*(uint32_t*)data_ptr); + const uint32_t data = dgus.swapBytes(*(uint32_t*)data_ptr); *(T*)vp.extra = (T)data; break; } diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp index c0f85760456a..793a2c15796f 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp @@ -57,11 +57,11 @@ uint8_t DGUSScreenHandler::pid_cycles = 5; bool DGUSScreenHandler::settings_ready = false; bool DGUSScreenHandler::booted = false; -DGUS_Screen DGUSScreenHandler::current_screen = DGUS_Screen::BOOT; -DGUS_Screen DGUSScreenHandler::new_screen = DGUS_Screen::BOOT; +DGUS_ScreenID DGUSScreenHandler::current_screenID = DGUS_ScreenID::BOOT; +DGUS_ScreenID DGUSScreenHandler::new_screenID = DGUS_ScreenID::BOOT; bool DGUSScreenHandler::full_update = false; -DGUS_Screen DGUSScreenHandler::wait_return_screen = DGUS_Screen::HOME; +DGUS_ScreenID DGUSScreenHandler::wait_return_screenID = DGUS_ScreenID::HOME; bool DGUSScreenHandler::wait_continue = false; bool DGUSScreenHandler::leveling_active = false; @@ -69,41 +69,41 @@ bool DGUSScreenHandler::leveling_active = false; millis_t DGUSScreenHandler::status_expire = 0; millis_t DGUSScreenHandler::eeprom_save = 0; -void DGUSScreenHandler::Init() { - dgus_display.Init(); +void DGUSScreenHandler::init() { + dgus.init(); - MoveToScreen(DGUS_Screen::BOOT, true); + moveToScreen(DGUS_ScreenID::BOOT, true); } -void DGUSScreenHandler::Ready() { - dgus_display.PlaySound(1); +void DGUSScreenHandler::ready() { + dgus.playSound(1); } -void DGUSScreenHandler::Loop() { - if (!settings_ready || current_screen == DGUS_Screen::KILL) { +void DGUSScreenHandler::loop() { + if (!settings_ready || current_screenID == DGUS_ScreenID::KILL) { return; } const millis_t ms = ExtUI::safe_millis(); static millis_t next_event_ms = 0; - if (new_screen != DGUS_Screen::BOOT) { - const DGUS_Screen screen = new_screen; - new_screen = DGUS_Screen::BOOT; - if (current_screen == screen) - TriggerFullUpdate(); + if (new_screenID != DGUS_ScreenID::BOOT) { + const DGUS_ScreenID screenID = new_screenID; + new_screenID = DGUS_ScreenID::BOOT; + if (current_screenID == screenID) + triggerFullUpdate(); else - MoveToScreen(screen); + moveToScreen(screenID); return; } if (!booted && ELAPSED(ms, 3000)) { booted = true; - dgus_display.ReadVersions(); + dgus.readVersions(); - if (current_screen == DGUS_Screen::BOOT) - MoveToScreen(DGUS_Screen::HOME); + if (current_screenID == DGUS_ScreenID::BOOT) + moveToScreen(DGUS_ScreenID::HOME); return; } @@ -111,98 +111,98 @@ void DGUSScreenHandler::Loop() { if (ELAPSED(ms, next_event_ms) || full_update) { next_event_ms = ms + DGUS_UPDATE_INTERVAL_MS; - if (!SendScreenVPData(current_screen, full_update)) - DEBUG_ECHOLNPGM("SendScreenVPData failed"); + if (!sendScreenVPData(current_screenID, full_update)) + DEBUG_ECHOLNPGM("sendScreenVPData failed"); return; } - if (current_screen == DGUS_Screen::WAIT - && ((wait_continue && !wait_for_user) || (!wait_continue && IsPrinterIdle())) + if (current_screenID == DGUS_ScreenID::WAIT + && ((wait_continue && !wait_for_user) || (!wait_continue && isPrinterIdle())) ) { - MoveToScreen(wait_return_screen, true); + moveToScreen(wait_return_screenID, true); return; } - if (current_screen == DGUS_Screen::LEVELING_PROBING && IsPrinterIdle()) { - dgus_display.PlaySound(3); + if (current_screenID == DGUS_ScreenID::LEVELING_PROBING && isPrinterIdle()) { + dgus.playSound(3); - SetStatusMessage(ExtUI::getLevelingIsValid() ? GET_TEXT_F(DGUS_MSG_PROBING_SUCCESS) : GET_TEXT_F(DGUS_MSG_PROBING_FAILED)); + setStatusMessage(ExtUI::getLevelingIsValid() ? GET_TEXT_F(DGUS_MSG_PROBING_SUCCESS) : GET_TEXT_F(DGUS_MSG_PROBING_FAILED)); - MoveToScreen(DGUS_Screen::LEVELING_AUTOMATIC); + moveToScreen(DGUS_ScreenID::LEVELING_AUTOMATIC); return; } if (status_expire > 0 && ELAPSED(ms, status_expire)) { - SetStatusMessage(FPSTR(NUL_STR), 0); + setStatusMessage(FPSTR(NUL_STR), 0); return; } - if (eeprom_save > 0 && ELAPSED(ms, eeprom_save) && IsPrinterIdle()) { + if (eeprom_save > 0 && ELAPSED(ms, eeprom_save) && isPrinterIdle()) { eeprom_save = 0; queue.enqueue_now(F("M500")); return; } - dgus_display.Loop(); + dgus.loop(); } void DGUSScreenHandler::printerKilled(FSTR_P const error, FSTR_P const component) { - SetMessageLine(error, 1); - SetMessageLine(component, 2); - SetMessageLinePGM(NUL_STR, 3); - SetMessageLine(GET_TEXT_F(MSG_PLEASE_RESET), 4); + setMessageLine(error, 1); + setMessageLine(component, 2); + setMessageLinePGM(NUL_STR, 3); + setMessageLine(GET_TEXT_F(MSG_PLEASE_RESET), 4); - dgus_display.PlaySound(3, 1, 200); + dgus.playSound(3, 1, 200); - MoveToScreen(DGUS_Screen::KILL, true); + moveToScreen(DGUS_ScreenID::KILL, true); } -void DGUSScreenHandler::UserConfirmRequired(const char * const msg) { - SetMessageLinePGM(NUL_STR, 1); - SetMessageLine(msg, 2); - SetMessageLinePGM(NUL_STR, 3); - SetMessageLinePGM(NUL_STR, 4); +void DGUSScreenHandler::userConfirmRequired(const char * const msg) { + setMessageLinePGM(NUL_STR, 1); + setMessageLine(msg, 2); + setMessageLinePGM(NUL_STR, 3); + setMessageLinePGM(NUL_STR, 4); - dgus_display.PlaySound(3); + dgus.playSound(3); - ShowWaitScreen(current_screen, true); + showWaitScreen(current_screenID, true); } -void DGUSScreenHandler::SettingsReset() { - dgus_display.SetVolume(DGUS_DEFAULT_VOLUME); - dgus_display.SetBrightness(DGUS_DEFAULT_BRIGHTNESS); +void DGUSScreenHandler::settingsReset() { + dgus.setVolume(DGUS_DEFAULT_VOLUME); + dgus.setBrightness(DGUS_DEFAULT_BRIGHTNESS); if (!settings_ready) { settings_ready = true; - Ready(); + ready(); } - SetStatusMessage(GET_TEXT_F(DGUS_MSG_RESET_EEPROM)); + setStatusMessage(GET_TEXT_F(DGUS_MSG_RESET_EEPROM)); } -void DGUSScreenHandler::StoreSettings(char *buff) { +void DGUSScreenHandler::storeSettings(char *buff) { eeprom_data_t data; static_assert(sizeof(data) <= ExtUI::eeprom_data_size, "sizeof(eeprom_data_t) > eeprom_data_size."); data.initialized = true; - data.volume = dgus_display.GetVolume(); - data.brightness = dgus_display.GetBrightness(); + data.volume = dgus.getVolume(); + data.brightness = dgus.getBrightness(); data.abl_okay = (ExtUI::getLevelingActive() && ExtUI::getLevelingIsValid()); memcpy(buff, &data, sizeof(data)); } -void DGUSScreenHandler::LoadSettings(const char *buff) { +void DGUSScreenHandler::loadSettings(const char *buff) { eeprom_data_t data; static_assert(sizeof(data) <= ExtUI::eeprom_data_size, "sizeof(eeprom_data_t) > eeprom_data_size."); memcpy(&data, buff, sizeof(data)); - dgus_display.SetVolume(data.initialized ? data.volume : DGUS_DEFAULT_VOLUME); - dgus_display.SetBrightness(data.initialized ? data.brightness : DGUS_DEFAULT_BRIGHTNESS); + dgus.setVolume(data.initialized ? data.volume : DGUS_DEFAULT_VOLUME); + dgus.setBrightness(data.initialized ? data.brightness : DGUS_DEFAULT_BRIGHTNESS); if (data.initialized) { leveling_active = (data.abl_okay && ExtUI::getLevelingIsValid()); @@ -210,36 +210,36 @@ void DGUSScreenHandler::LoadSettings(const char *buff) { } } -void DGUSScreenHandler::ConfigurationStoreWritten(bool success) { +void DGUSScreenHandler::configurationStoreWritten(bool success) { if (!success) - SetStatusMessage(GET_TEXT_F(DGUS_MSG_WRITE_EEPROM_FAILED)); + setStatusMessage(GET_TEXT_F(DGUS_MSG_WRITE_EEPROM_FAILED)); } -void DGUSScreenHandler::ConfigurationStoreRead(bool success) { +void DGUSScreenHandler::configurationStoreRead(bool success) { if (!success) { - SetStatusMessage(GET_TEXT_F(DGUS_MSG_READ_EEPROM_FAILED)); + setStatusMessage(GET_TEXT_F(DGUS_MSG_READ_EEPROM_FAILED)); } else if (!settings_ready) { settings_ready = true; - Ready(); + ready(); } } -void DGUSScreenHandler::PlayTone(const uint16_t frequency, const uint16_t duration) { +void DGUSScreenHandler::playTone(const uint16_t frequency, const uint16_t duration) { UNUSED(duration); if (frequency >= 1 && frequency <= 255) { if (duration >= 1 && duration <= 255) - dgus_display.PlaySound((uint8_t)frequency, (uint8_t)duration); + dgus.playSound((uint8_t)frequency, (uint8_t)duration); else - dgus_display.PlaySound((uint8_t)frequency); + dgus.playSound((uint8_t)frequency); } } -void DGUSScreenHandler::MeshUpdate(const int8_t xpos, const int8_t ypos) { - if (current_screen != DGUS_Screen::LEVELING_PROBING) { - if (current_screen == DGUS_Screen::LEVELING_AUTOMATIC) - TriggerFullUpdate(); +void DGUSScreenHandler::meshUpdate(const int8_t xpos, const int8_t ypos) { + if (current_screenID != DGUS_ScreenID::LEVELING_PROBING) { + if (current_screenID == DGUS_ScreenID::LEVELING_AUTOMATIC) + triggerFullUpdate(); return; } @@ -249,25 +249,25 @@ void DGUSScreenHandler::MeshUpdate(const int8_t xpos, const int8_t ypos) { if (xpos >= GRID_MAX_POINTS_X - 1 && ypos >= GRID_MAX_POINTS_Y - 1 && !ExtUI::getLevelingIsValid()) probing_icons[0] = probing_icons[1] = 0; - TriggerFullUpdate(); + triggerFullUpdate(); } -void DGUSScreenHandler::PrintTimerStarted() { - TriggerScreenChange(DGUS_Screen::PRINT_STATUS); +void DGUSScreenHandler::printTimerStarted() { + triggerScreenChange(DGUS_ScreenID::PRINT_STATUS); } -void DGUSScreenHandler::PrintTimerPaused() { - dgus_display.PlaySound(3); - TriggerFullUpdate(); +void DGUSScreenHandler::printTimerPaused() { + dgus.playSound(3); + triggerFullUpdate(); } -void DGUSScreenHandler::PrintTimerStopped() { - if (current_screen != DGUS_Screen::PRINT_STATUS && current_screen != DGUS_Screen::PRINT_ADJUST) +void DGUSScreenHandler::printTimerStopped() { + if (current_screenID != DGUS_ScreenID::PRINT_STATUS && current_screenID != DGUS_ScreenID::PRINT_ADJUST) return; - dgus_display.PlaySound(3); + dgus.playSound(3); - TriggerScreenChange(DGUS_Screen::PRINT_FINISHED); + triggerScreenChange(DGUS_ScreenID::PRINT_FINISHED); } void DGUSScreenHandler::filamentRunout(const ExtUI::extruder_t extruder) { @@ -275,161 +275,161 @@ void DGUSScreenHandler::filamentRunout(const ExtUI::extruder_t extruder) { snprintf_P(buffer, sizeof(buffer), GET_TEXT(DGUS_MSG_FILAMENT_RUNOUT), extruder); - SetStatusMessage(buffer); + setStatusMessage(buffer); - dgus_display.PlaySound(3); + dgus.playSound(3); } #if HAS_MEDIA - void DGUSScreenHandler::SDCardInserted() { - if (current_screen == DGUS_Screen::HOME) - TriggerScreenChange(DGUS_Screen::PRINT); + void DGUSScreenHandler::sdCardInserted() { + if (current_screenID == DGUS_ScreenID::HOME) + triggerScreenChange(DGUS_ScreenID::PRINT); } - void DGUSScreenHandler::SDCardRemoved() { - if (current_screen == DGUS_Screen::PRINT) - TriggerScreenChange(DGUS_Screen::HOME); + void DGUSScreenHandler::sdCardRemoved() { + if (current_screenID == DGUS_ScreenID::PRINT) + triggerScreenChange(DGUS_ScreenID::HOME); } - void DGUSScreenHandler::SDCardError() { - SetStatusMessage(GET_TEXT_F(MSG_MEDIA_READ_ERROR)); - if (current_screen == DGUS_Screen::PRINT) - TriggerScreenChange(DGUS_Screen::HOME); + void DGUSScreenHandler::sdCardError() { + setStatusMessage(GET_TEXT_F(MSG_MEDIA_READ_ERROR)); + if (current_screenID == DGUS_ScreenID::PRINT) + triggerScreenChange(DGUS_ScreenID::HOME); } #endif // HAS_MEDIA #if ENABLED(POWER_LOSS_RECOVERY) - void DGUSScreenHandler::PowerLossResume() { - MoveToScreen(DGUS_Screen::POWERLOSS, true); + void DGUSScreenHandler::powerLossResume() { + moveToScreen(DGUS_ScreenID::POWERLOSS, true); } #endif // POWER_LOSS_RECOVERY #if HAS_PID_HEATING - void DGUSScreenHandler::PidTuning(const ExtUI::result_t rst) { + void DGUSScreenHandler::pidTuning(const ExtUI::result_t rst) { switch (rst) { case ExtUI::PID_STARTED: - SetStatusMessage(GET_TEXT_F(MSG_PID_AUTOTUNE)); + setStatusMessage(GET_TEXT_F(MSG_PID_AUTOTUNE)); break; case ExtUI::PID_BAD_HEATER_ID: - SetStatusMessage(GET_TEXT_F(MSG_PID_BAD_HEATER_ID)); + setStatusMessage(GET_TEXT_F(MSG_PID_BAD_HEATER_ID)); break; case ExtUI::PID_TEMP_TOO_HIGH: - SetStatusMessage(GET_TEXT_F(MSG_PID_TEMP_TOO_HIGH)); + setStatusMessage(GET_TEXT_F(MSG_PID_TEMP_TOO_HIGH)); break; case ExtUI::PID_TUNING_TIMEOUT: - SetStatusMessage(GET_TEXT_F(MSG_PID_TIMEOUT)); + setStatusMessage(GET_TEXT_F(MSG_PID_TIMEOUT)); break; case ExtUI::PID_DONE: - SetStatusMessage(GET_TEXT_F(MSG_PID_AUTOTUNE_DONE)); + setStatusMessage(GET_TEXT_F(MSG_PID_AUTOTUNE_DONE)); break; default: return; } - dgus_display.PlaySound(3); + dgus.playSound(3); } #endif // HAS_PID_HEATING -void DGUSScreenHandler::SetMessageLine(const char * const msg, const uint8_t line) { +void DGUSScreenHandler::setMessageLine(const char * const msg, const uint8_t line) { switch (line) { default: return; case 1: - dgus_display.WriteString((uint16_t)DGUS_Addr::MESSAGE_Line1, msg, DGUS_LINE_LEN, true, true); + dgus.writeString((uint16_t)DGUS_Addr::MESSAGE_Line1, msg, DGUS_LINE_LEN, true, true); break; case 2: - dgus_display.WriteString((uint16_t)DGUS_Addr::MESSAGE_Line2, msg, DGUS_LINE_LEN, true, true); + dgus.writeString((uint16_t)DGUS_Addr::MESSAGE_Line2, msg, DGUS_LINE_LEN, true, true); break; case 3: - dgus_display.WriteString((uint16_t)DGUS_Addr::MESSAGE_Line3, msg, DGUS_LINE_LEN, true, true); + dgus.writeString((uint16_t)DGUS_Addr::MESSAGE_Line3, msg, DGUS_LINE_LEN, true, true); break; case 4: - dgus_display.WriteString((uint16_t)DGUS_Addr::MESSAGE_Line4, msg, DGUS_LINE_LEN, true, true); + dgus.writeString((uint16_t)DGUS_Addr::MESSAGE_Line4, msg, DGUS_LINE_LEN, true, true); break; } } -void DGUSScreenHandler::SetMessageLinePGM(PGM_P const msg, const uint8_t line) { +void DGUSScreenHandler::setMessageLinePGM(PGM_P const msg, const uint8_t line) { switch (line) { default: return; case 1: - dgus_display.WriteStringPGM((uint16_t)DGUS_Addr::MESSAGE_Line1, msg, DGUS_LINE_LEN, true, true); + dgus.writeStringPGM((uint16_t)DGUS_Addr::MESSAGE_Line1, msg, DGUS_LINE_LEN, true, true); break; case 2: - dgus_display.WriteStringPGM((uint16_t)DGUS_Addr::MESSAGE_Line2, msg, DGUS_LINE_LEN, true, true); + dgus.writeStringPGM((uint16_t)DGUS_Addr::MESSAGE_Line2, msg, DGUS_LINE_LEN, true, true); break; case 3: - dgus_display.WriteStringPGM((uint16_t)DGUS_Addr::MESSAGE_Line3, msg, DGUS_LINE_LEN, true, true); + dgus.writeStringPGM((uint16_t)DGUS_Addr::MESSAGE_Line3, msg, DGUS_LINE_LEN, true, true); break; case 4: - dgus_display.WriteStringPGM((uint16_t)DGUS_Addr::MESSAGE_Line4, msg, DGUS_LINE_LEN, true, true); + dgus.writeStringPGM((uint16_t)DGUS_Addr::MESSAGE_Line4, msg, DGUS_LINE_LEN, true, true); break; } } -void DGUSScreenHandler::SetStatusMessage(const char* msg, const millis_t duration) { - dgus_display.WriteString((uint16_t)DGUS_Addr::MESSAGE_Status, msg, DGUS_STATUS_LEN, false, true); +void DGUSScreenHandler::setStatusMessage(const char* msg, const millis_t duration) { + dgus.writeString((uint16_t)DGUS_Addr::MESSAGE_Status, msg, DGUS_STATUS_LEN, false, true); status_expire = (duration > 0 ? ExtUI::safe_millis() + duration : 0); } -void DGUSScreenHandler::SetStatusMessage(FSTR_P const fmsg, const millis_t duration) { - dgus_display.WriteString((uint16_t)DGUS_Addr::MESSAGE_Status, fmsg, DGUS_STATUS_LEN, false, true); +void DGUSScreenHandler::setStatusMessage(FSTR_P const fmsg, const millis_t duration) { + dgus.writeString((uint16_t)DGUS_Addr::MESSAGE_Status, fmsg, DGUS_STATUS_LEN, false, true); status_expire = (duration > 0 ? ExtUI::safe_millis() + duration : 0); } -void DGUSScreenHandler::ShowWaitScreen(const DGUS_Screen return_screen, const bool has_continue/*=false*/) { - if (return_screen != DGUS_Screen::WAIT) { - wait_return_screen = return_screen; +void DGUSScreenHandler::showWaitScreen(const DGUS_ScreenID return_screenID, const bool has_continue/*=false*/) { + if (return_screenID != DGUS_ScreenID::WAIT) { + wait_return_screenID = return_screenID; } wait_continue = has_continue; - TriggerScreenChange(DGUS_Screen::WAIT); + triggerScreenChange(DGUS_ScreenID::WAIT); } -void DGUSScreenHandler::ShowWaitScreen(FSTR_P const msg, const DGUS_Screen return_screen, const bool has_continue/*=false*/) { - SetMessageLinePGM(NUL_STR, 1); - SetMessageLine(msg, 2); - SetMessageLinePGM(NUL_STR, 3); - SetMessageLinePGM(NUL_STR, 4); - ShowWaitScreen(return_screen, has_continue); +void DGUSScreenHandler::showWaitScreen(FSTR_P const msg, const DGUS_ScreenID return_screenID, const bool has_continue/*=false*/) { + setMessageLinePGM(NUL_STR, 1); + setMessageLine(msg, 2); + setMessageLinePGM(NUL_STR, 3); + setMessageLinePGM(NUL_STR, 4); + showWaitScreen(return_screenID, has_continue); } -DGUS_Screen DGUSScreenHandler::GetCurrentScreen() { - return current_screen; +DGUS_ScreenID DGUSScreenHandler::getCurrentScreen() { + return current_screenID; } -void DGUSScreenHandler::TriggerScreenChange(DGUS_Screen screen) { - new_screen = screen; +void DGUSScreenHandler::triggerScreenChange(const DGUS_ScreenID screenID) { + new_screenID = screenID; } -void DGUSScreenHandler::TriggerFullUpdate() { +void DGUSScreenHandler::triggerFullUpdate() { full_update = true; } -void DGUSScreenHandler::TriggerEEPROMSave() { +void DGUSScreenHandler::triggerEEPROMSave() { eeprom_save = ExtUI::safe_millis() + 500; } -bool DGUSScreenHandler::IsPrinterIdle() { +bool DGUSScreenHandler::isPrinterIdle() { return (!ExtUI::commandsInQueue() && !ExtUI::isMoving()); } -const DGUS_Addr* DGUSScreenHandler::FindScreenAddrList(DGUS_Screen screen) { +const DGUS_Addr* DGUSScreenHandler::findScreenAddrList(const DGUS_ScreenID screenID) { DGUS_ScreenAddrList list; const DGUS_ScreenAddrList *map = screen_addr_list_map; do { memcpy_P(&list, map, sizeof(*map)); if (!list.addr_list) break; - if (list.screen == screen) { + if (list.screenID == screenID) { return list.addr_list; } } while (++map); @@ -437,14 +437,14 @@ const DGUS_Addr* DGUSScreenHandler::FindScreenAddrList(DGUS_Screen screen) { return nullptr; } -bool DGUSScreenHandler::CallScreenSetup(DGUS_Screen screen) { +bool DGUSScreenHandler::callScreenSetup(const DGUS_ScreenID screenID) { DGUS_ScreenSetup setup; const DGUS_ScreenSetup *list = screen_setup_list; do { memcpy_P(&setup, list, sizeof(*list)); if (!setup.setup_fn) break; - if (setup.screen == screen) { + if (setup.screenID == screenID) { return setup.setup_fn(); } } while (++list); @@ -452,14 +452,14 @@ bool DGUSScreenHandler::CallScreenSetup(DGUS_Screen screen) { return true; } -void DGUSScreenHandler::MoveToScreen(DGUS_Screen screen, bool abort_wait) { - if (current_screen == DGUS_Screen::KILL) { +void DGUSScreenHandler::moveToScreen(const DGUS_ScreenID screenID, bool abort_wait) { + if (current_screenID == DGUS_ScreenID::KILL) { return; } - if (current_screen == DGUS_Screen::WAIT) { - if (screen != DGUS_Screen::WAIT) { - wait_return_screen = screen; + if (current_screenID == DGUS_ScreenID::WAIT) { + if (screenID != DGUS_ScreenID::WAIT) { + wait_return_screenID = screenID; } if (!abort_wait) return; @@ -469,18 +469,18 @@ void DGUSScreenHandler::MoveToScreen(DGUS_Screen screen, bool abort_wait) { } } - if (!CallScreenSetup(screen)) return; + if (!callScreenSetup(screenID)) return; - if (!SendScreenVPData(screen, true)) return; + if (!sendScreenVPData(screenID, true)) return; - current_screen = screen; - dgus_display.SwitchScreen(current_screen); + current_screenID = screenID; + dgus.switchScreen(current_screenID); } -bool DGUSScreenHandler::SendScreenVPData(DGUS_Screen screen, bool complete_update) { +bool DGUSScreenHandler::sendScreenVPData(const DGUS_ScreenID screenID, bool complete_update) { if (complete_update) full_update = false; - const DGUS_Addr *list = FindScreenAddrList(screen); + const DGUS_Addr *list = findScreenAddrList(screenID); while (true) { if (!list) return true; // Nothing left to send @@ -489,17 +489,17 @@ bool DGUSScreenHandler::SendScreenVPData(DGUS_Screen screen, bool complete_updat if (!addr) return true; // Nothing left to send DGUS_VP vp; - if (!DGUS_PopulateVP((DGUS_Addr)addr, &vp)) continue; // Invalid VP + if (!populateVP((DGUS_Addr)addr, &vp)) continue; // Invalid VP if (!vp.tx_handler) continue; // Nothing to send if (!complete_update && !(vp.flags & VPFLAG_AUTOUPLOAD)) continue; // Unnecessary VP uint8_t expected_tx = 6 + vp.size; // 6 bytes header + payload. const millis_t try_until = ExtUI::safe_millis() + 1000; - while (expected_tx > dgus_display.GetFreeTxBuffer()) { + while (expected_tx > dgus.getFreeTxBuffer()) { if (ELAPSED(ExtUI::safe_millis(), try_until)) return false; // Stop trying after 1 second - dgus_display.FlushTx(); // Flush the TX buffer + dgus.flushTx(); // Flush the TX buffer delay(50); } diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.h b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.h index 2ecf7192fe41..27f7f92517ca 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.h @@ -23,7 +23,7 @@ #include "config/DGUS_Addr.h" #include "config/DGUS_Data.h" -#include "config/DGUS_Screen.h" +#include "config/DGUS_ScreenID.h" #include "config/DGUS_Constants.h" #include "../ui_api.h" @@ -33,59 +33,59 @@ class DGUSScreenHandler { public: DGUSScreenHandler() = default; - static void Init(); - static void Ready(); - static void Loop(); + static void init(); + static void ready(); + static void loop(); static void printerKilled(FSTR_P const error, FSTR_P const component); - static void UserConfirmRequired(const char * const msg); - static void SettingsReset(); - static void StoreSettings(char *buff); - static void LoadSettings(const char *buff); - static void ConfigurationStoreWritten(bool success); - static void ConfigurationStoreRead(bool success); - - static void PlayTone(const uint16_t frequency, const uint16_t duration); - static void MeshUpdate(const int8_t xpos, const int8_t ypos); - static void PrintTimerStarted(); - static void PrintTimerPaused(); - static void PrintTimerStopped(); + static void userConfirmRequired(const char * const msg); + static void settingsReset(); + static void storeSettings(char *buff); + static void loadSettings(const char *buff); + static void configurationStoreWritten(bool success); + static void configurationStoreRead(bool success); + + static void playTone(const uint16_t frequency, const uint16_t duration); + static void meshUpdate(const int8_t xpos, const int8_t ypos); + static void printTimerStarted(); + static void printTimerPaused(); + static void printTimerStopped(); static void filamentRunout(const ExtUI::extruder_t extruder); #if HAS_MEDIA /// Marlin informed us that a new SD has been inserted. - static void SDCardInserted(); + static void sdCardInserted(); /// Marlin informed us that the SD Card has been removed(). - static void SDCardRemoved(); + static void sdCardRemoved(); /// Marlin informed us about a bad SD Card. - static void SDCardError(); + static void sdCardError(); #endif #if ENABLED(POWER_LOSS_RECOVERY) - static void PowerLossResume(); + static void powerLossResume(); #endif #if HAS_PID_HEATING - static void PidTuning(const ExtUI::result_t rst); + static void pidTuning(const ExtUI::result_t rst); #endif - static void SetMessageLine(const char * const msg, const uint8_t line); - static void SetMessageLinePGM(PGM_P const msg, const uint8_t line); - static void SetMessageLine(FSTR_P const msg, const uint8_t line) { SetMessageLinePGM(FTOP(msg), line); } + static void setMessageLine(const char * const msg, const uint8_t line); + static void setMessageLinePGM(PGM_P const msg, const uint8_t line); + static void setMessageLine(FSTR_P const msg, const uint8_t line) { setMessageLinePGM(FTOP(msg), line); } - static void SetStatusMessage(const char* msg, const millis_t duration=DGUS_STATUS_EXPIRATION_MS); - static void SetStatusMessage(FSTR_P const msg, const millis_t duration=DGUS_STATUS_EXPIRATION_MS); + static void setStatusMessage(const char* msg, const millis_t duration=DGUS_STATUS_EXPIRATION_MS); + static void setStatusMessage(FSTR_P const msg, const millis_t duration=DGUS_STATUS_EXPIRATION_MS); - static void ShowWaitScreen(const DGUS_Screen return_screen, const bool has_continue=false); - static void ShowWaitScreen(FSTR_P const msg, const DGUS_Screen return_screen, const bool has_continue=false); + static void showWaitScreen(const DGUS_ScreenID return_screenID, const bool has_continue=false); + static void showWaitScreen(FSTR_P const msg, const DGUS_ScreenID return_screenID, const bool has_continue=false); - static DGUS_Screen GetCurrentScreen(); - static void TriggerScreenChange(DGUS_Screen screen); - static void TriggerFullUpdate(); + static DGUS_ScreenID getCurrentScreen(); + static void triggerScreenChange(const DGUS_ScreenID screenID); + static void triggerFullUpdate(); - static void TriggerEEPROMSave(); + static void triggerEEPROMSave(); - static bool IsPrinterIdle(); + static bool isPrinterIdle(); static uint8_t debug_count; @@ -114,20 +114,20 @@ class DGUSScreenHandler { static bool leveling_active; private: - static const DGUS_Addr* FindScreenAddrList(DGUS_Screen screen); - static bool CallScreenSetup(DGUS_Screen screen); + static const DGUS_Addr* findScreenAddrList(const DGUS_ScreenID screenID); + static bool callScreenSetup(const DGUS_ScreenID screenID); - static void MoveToScreen(DGUS_Screen screen, bool abort_wait=false); - static bool SendScreenVPData(DGUS_Screen screen, bool complete_update); + static void moveToScreen(const DGUS_ScreenID screenID, bool abort_wait=false); + static bool sendScreenVPData(const DGUS_ScreenID screenID, bool complete_update); static bool settings_ready; static bool booted; - static DGUS_Screen current_screen; - static DGUS_Screen new_screen; + static DGUS_ScreenID current_screenID; + static DGUS_ScreenID new_screenID; static bool full_update; - static DGUS_Screen wait_return_screen; + static DGUS_ScreenID wait_return_screenID; static millis_t status_expire; static millis_t eeprom_save; @@ -140,4 +140,4 @@ class DGUSScreenHandler { } eeprom_data_t; }; -extern DGUSScreenHandler dgus_screen_handler; +extern DGUSScreenHandler screen; diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp index c3b4bad88ad5..b0aeacbfdffe 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp @@ -33,14 +33,14 @@ #if HAS_MEDIA bool DGUSSetupHandler::Print() { - dgus_screen_handler.filelist.refresh(); + screen.filelist.refresh(); - while (!dgus_screen_handler.filelist.isAtRootDir()) { - dgus_screen_handler.filelist.upDir(); + while (!screen.filelist.isAtRootDir()) { + screen.filelist.upDir(); } - dgus_screen_handler.filelist_offset = 0; - dgus_screen_handler.filelist_selected = -1; + screen.filelist_offset = 0; + screen.filelist_selected = -1; return true; } @@ -51,7 +51,7 @@ bool DGUSSetupHandler::PrintStatus() { return true; } - dgus_screen_handler.TriggerScreenChange(DGUS_Screen::PRINT_FINISHED); + screen.triggerScreenChange(DGUS_ScreenID::PRINT_FINISHED); return false; } @@ -60,15 +60,15 @@ bool DGUSSetupHandler::PrintAdjust() { return true; } - dgus_screen_handler.TriggerScreenChange(DGUS_Screen::PRINT_FINISHED); + screen.triggerScreenChange(DGUS_ScreenID::PRINT_FINISHED); return false; } bool DGUSSetupHandler::LevelingMenu() { - ExtUI::setLevelingActive(dgus_screen_handler.leveling_active); + ExtUI::setLevelingActive(screen.leveling_active); - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return false; } @@ -80,7 +80,7 @@ bool DGUSSetupHandler::LevelingMenu() { return true; } - dgus_screen_handler.ShowWaitScreen(GET_TEXT_F(DGUS_MSG_HOMING), DGUS_Screen::LEVELING_MENU); + screen.showWaitScreen(GET_TEXT_F(DGUS_MSG_HOMING), DGUS_ScreenID::LEVELING_MENU); queue.enqueue_now(F("G28")); @@ -94,12 +94,12 @@ bool DGUSSetupHandler::LevelingManual() { return true; } - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return false; } - dgus_screen_handler.ShowWaitScreen(GET_TEXT_F(DGUS_MSG_HOMING), DGUS_Screen::LEVELING_MANUAL); + screen.showWaitScreen(GET_TEXT_F(DGUS_MSG_HOMING), DGUS_ScreenID::LEVELING_MANUAL); queue.enqueue_now(F("G28")); @@ -107,10 +107,10 @@ bool DGUSSetupHandler::LevelingManual() { } bool DGUSSetupHandler::LevelingOffset() { - dgus_screen_handler.offset_steps = DGUS_Data::StepSize::MMP1; + screen.offset_steps = DGUS_Data::StepSize::MMP1; - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return false; } @@ -128,7 +128,7 @@ bool DGUSSetupHandler::LevelingOffset() { return true; } - dgus_screen_handler.ShowWaitScreen(GET_TEXT_F(DGUS_MSG_HOMING), DGUS_Screen::LEVELING_OFFSET); + screen.showWaitScreen(GET_TEXT_F(DGUS_MSG_HOMING), DGUS_ScreenID::LEVELING_OFFSET); queue.enqueue_now(F("G28")); @@ -137,7 +137,7 @@ bool DGUSSetupHandler::LevelingOffset() { bool DGUSSetupHandler::LevelingAutomatic() { if (ExtUI::getLevelingIsValid()) { - dgus_screen_handler.leveling_active = true; + screen.leveling_active = true; ExtUI::setLevelingActive(true); } @@ -146,24 +146,24 @@ bool DGUSSetupHandler::LevelingAutomatic() { } bool DGUSSetupHandler::LevelingProbing() { - dgus_screen_handler.probing_icons[0] = 0; - dgus_screen_handler.probing_icons[1] = 0; + screen.probing_icons[0] = 0; + screen.probing_icons[1] = 0; return true; } bool DGUSSetupHandler::Filament() { - dgus_screen_handler.filament_extruder = DGUS_Data::Extruder::CURRENT; - dgus_screen_handler.filament_length = DGUS_DEFAULT_FILAMENT_LEN; + screen.filament_extruder = DGUS_Data::Extruder::CURRENT; + screen.filament_length = DGUS_DEFAULT_FILAMENT_LEN; return true; } bool DGUSSetupHandler::Move() { - dgus_screen_handler.move_steps = DGUS_Data::StepSize::MM10; + screen.move_steps = DGUS_Data::StepSize::MM10; - if (!dgus_screen_handler.IsPrinterIdle()) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); + if (!screen.isPrinterIdle()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_BUSY)); return false; } @@ -171,10 +171,10 @@ bool DGUSSetupHandler::Move() { } bool DGUSSetupHandler::Gcode() { - ZERO(dgus_screen_handler.gcode); + ZERO(screen.gcode); - if (dgus_display.gui_version < 0x30 || dgus_display.os_version < 0x21) { - dgus_screen_handler.SetStatusMessage(GET_TEXT_F(DGUS_MSG_FW_OUTDATED)); + if (dgus.gui_version < 0x30 || dgus.os_version < 0x21) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_FW_OUTDATED)); return false; } @@ -182,14 +182,14 @@ bool DGUSSetupHandler::Gcode() { } bool DGUSSetupHandler::PID() { - dgus_screen_handler.pid_heater = DGUS_Data::Heater::H0; - dgus_screen_handler.pid_temp = DGUS_PLA_TEMP_HOTEND; + screen.pid_heater = DGUS_Data::Heater::H0; + screen.pid_temp = DGUS_PLA_TEMP_HOTEND; return true; } bool DGUSSetupHandler::Infos() { - dgus_screen_handler.debug_count = 0; + screen.debug_count = 0; return true; } diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.cpp index c7d650c03ec8..037eafcc9424 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.cpp @@ -37,7 +37,7 @@ #endif #if HAS_MEDIA - void DGUSTxHandler::SetFileControlState(int16_t file, bool state) { + void DGUSTxHandler::setFileControlState(int16_t file, bool state) { DGUS_Control control; switch (file) { @@ -60,40 +60,40 @@ } if (state) { - dgus_display.EnableControl(DGUS_Screen::PRINT, + dgus.enableControl(DGUS_ScreenID::PRINT, DGUSDisplay::RETURN_KEY_CODE, control); } else { - dgus_display.DisableControl(DGUS_Screen::PRINT, + dgus.disableControl(DGUS_ScreenID::PRINT, DGUSDisplay::RETURN_KEY_CODE, control); } } - void DGUSTxHandler::FileType(DGUS_VP &vp) { + void DGUSTxHandler::fileType(DGUS_VP &vp) { // Batch send uint16_t data[DGUS_FILE_COUNT]; for (int16_t i = 0; i < DGUS_FILE_COUNT; i++) { - if (!dgus_screen_handler.filelist.seek(dgus_screen_handler.filelist_offset + i)) { + if (!screen.filelist.seek(screen.filelist_offset + i)) { data[i] = Swap16(DGUS_Data::SDType::NONE); - SetFileControlState(i, false); + setFileControlState(i, false); continue; } - data[i] = dgus_screen_handler.filelist.isDir() ? + data[i] = screen.filelist.isDir() ? Swap16(DGUS_Data::SDType::DIRECTORY) : Swap16(DGUS_Data::SDType::FILE); - SetFileControlState(i, true); + setFileControlState(i, true); } - dgus_display.Write((uint16_t)vp.addr, data, sizeof(*data) * DGUS_FILE_COUNT); + dgus.write((uint16_t)vp.addr, data, sizeof(*data) * DGUS_FILE_COUNT); } - void DGUSTxHandler::FileName(DGUS_VP &vp) { + void DGUSTxHandler::fileName(DGUS_VP &vp) { uint8_t offset; switch (vp.addr) { @@ -115,84 +115,84 @@ break; } - if (dgus_screen_handler.filelist.seek(dgus_screen_handler.filelist_offset + offset)) { - dgus_display.WriteString((uint16_t)vp.addr, dgus_screen_handler.filelist.filename(), vp.size); + if (screen.filelist.seek(screen.filelist_offset + offset)) { + dgus.writeString((uint16_t)vp.addr, screen.filelist.filename(), vp.size); } else { - dgus_display.WriteStringPGM((uint16_t)vp.addr, NUL_STR, vp.size); + dgus.writeStringPGM((uint16_t)vp.addr, NUL_STR, vp.size); } } - void DGUSTxHandler::ScrollIcons(DGUS_VP &vp) { + void DGUSTxHandler::scrollIcons(DGUS_VP &vp) { uint16_t icons = 0; - if (!dgus_screen_handler.filelist.isAtRootDir()) { + if (!screen.filelist.isAtRootDir()) { icons |= (uint16_t)DGUS_Data::ScrollIcon::GO_BACK; - dgus_display.EnableControl(DGUS_Screen::PRINT, + dgus.enableControl(DGUS_ScreenID::PRINT, DGUSDisplay::RETURN_KEY_CODE, DGUS_Control::GO_BACK); } else { - dgus_display.DisableControl(DGUS_Screen::PRINT, + dgus.disableControl(DGUS_ScreenID::PRINT, DGUSDisplay::RETURN_KEY_CODE, DGUS_Control::GO_BACK); } - if (dgus_screen_handler.filelist_offset > 0) { + if (screen.filelist_offset > 0) { icons |= (uint16_t)DGUS_Data::ScrollIcon::UP; - dgus_display.EnableControl(DGUS_Screen::PRINT, + dgus.enableControl(DGUS_ScreenID::PRINT, DGUSDisplay::RETURN_KEY_CODE, DGUS_Control::SCROLL_UP); } else { - dgus_display.DisableControl(DGUS_Screen::PRINT, + dgus.disableControl(DGUS_ScreenID::PRINT, DGUSDisplay::RETURN_KEY_CODE, DGUS_Control::SCROLL_UP); } - if (dgus_screen_handler.filelist_offset + DGUS_FILE_COUNT < dgus_screen_handler.filelist.count()) { + if (screen.filelist_offset + DGUS_FILE_COUNT < screen.filelist.count()) { icons |= (uint16_t)DGUS_Data::ScrollIcon::DOWN; - dgus_display.EnableControl(DGUS_Screen::PRINT, + dgus.enableControl(DGUS_ScreenID::PRINT, DGUSDisplay::RETURN_KEY_CODE, DGUS_Control::SCROLL_DOWN); } else { - dgus_display.DisableControl(DGUS_Screen::PRINT, + dgus.disableControl(DGUS_ScreenID::PRINT, DGUSDisplay::RETURN_KEY_CODE, DGUS_Control::SCROLL_DOWN); } - dgus_display.Write((uint16_t)vp.addr, Swap16(icons)); + dgus.write((uint16_t)vp.addr, Swap16(icons)); } - void DGUSTxHandler::SelectedFileName(DGUS_VP &vp) { - if (dgus_screen_handler.filelist_selected < 0 - || !dgus_screen_handler.filelist.seek(dgus_screen_handler.filelist_selected)) { - dgus_display.WriteStringPGM((uint16_t)vp.addr, NUL_STR, vp.size); + void DGUSTxHandler::selectedFileName(DGUS_VP &vp) { + if (screen.filelist_selected < 0 + || !screen.filelist.seek(screen.filelist_selected)) { + dgus.writeStringPGM((uint16_t)vp.addr, NUL_STR, vp.size); return; } - dgus_display.WriteString((uint16_t)vp.addr, dgus_screen_handler.filelist.filename(), vp.size); + dgus.writeString((uint16_t)vp.addr, screen.filelist.filename(), vp.size); } #endif // HAS_MEDIA -void DGUSTxHandler::PositionZ(DGUS_VP &vp) { +void DGUSTxHandler::zPosition(DGUS_VP &vp) { const float position = ExtUI::isAxisPositionKnown(ExtUI::Z) ? planner.get_axis_position_mm(Z_AXIS) : 0; - const int32_t data = dgus_display.ToFixedPoint(int32_t(position * 50.0f) / 50.0f); // Round to 0.02 - dgus_display.Write((uint16_t)vp.addr, dgus_display.SwapBytes(data)); + const int32_t data = dgus.toFixedPoint(int32_t(position * 50.0f) / 50.0f); // Round to 0.02 + dgus.write((uint16_t)vp.addr, dgus.swapBytes(data)); } -void DGUSTxHandler::Elapsed(DGUS_VP &vp) { +void DGUSTxHandler::elapsed(DGUS_VP &vp) { char buffer[21]; duration_t(print_job_timer.duration()).toString(buffer); - dgus_display.WriteString((uint16_t)vp.addr, buffer, vp.size); + dgus.writeString((uint16_t)vp.addr, buffer, vp.size); } -void DGUSTxHandler::Percent(DGUS_VP &vp) { +void DGUSTxHandler::percent(DGUS_VP &vp) { uint16_t progress; switch (vp.addr) { @@ -205,21 +205,21 @@ void DGUSTxHandler::Percent(DGUS_VP &vp) { break; } - dgus_display.Write((uint16_t)DGUS_Addr::STATUS_Percent, Swap16(progress)); + dgus.write((uint16_t)DGUS_Addr::STATUS_Percent, Swap16(progress)); } -void DGUSTxHandler::StatusIcons(DGUS_VP &vp) { +void DGUSTxHandler::statusIcons(DGUS_VP &vp) { uint16_t icons = 0; if (ExtUI::isPrinting()) { icons |= (uint16_t)DGUS_Data::StatusIcon::PAUSE; - dgus_display.EnableControl(DGUS_Screen::PRINT_STATUS, + dgus.enableControl(DGUS_ScreenID::PRINT_STATUS, DGUSDisplay::POPUP_WINDOW, DGUS_Control::PAUSE); } else { - dgus_display.DisableControl(DGUS_Screen::PRINT_STATUS, + dgus.disableControl(DGUS_ScreenID::PRINT_STATUS, DGUSDisplay::POPUP_WINDOW, DGUS_Control::PAUSE); } @@ -227,20 +227,20 @@ void DGUSTxHandler::StatusIcons(DGUS_VP &vp) { if (ExtUI::isPrintingPaused()) { icons |= (uint16_t)DGUS_Data::StatusIcon::RESUME; - dgus_display.EnableControl(DGUS_Screen::PRINT_STATUS, + dgus.enableControl(DGUS_ScreenID::PRINT_STATUS, DGUSDisplay::POPUP_WINDOW, DGUS_Control::RESUME); } else { - dgus_display.DisableControl(DGUS_Screen::PRINT_STATUS, + dgus.disableControl(DGUS_ScreenID::PRINT_STATUS, DGUSDisplay::POPUP_WINDOW, DGUS_Control::RESUME); } - dgus_display.Write((uint16_t)vp.addr, Swap16(icons)); + dgus.write((uint16_t)vp.addr, Swap16(icons)); } -void DGUSTxHandler::Flowrate(DGUS_VP &vp) { +void DGUSTxHandler::flowrate(DGUS_VP &vp) { int16_t flowrate; switch (vp.addr) { @@ -258,10 +258,10 @@ void DGUSTxHandler::Flowrate(DGUS_VP &vp) { #endif } - dgus_display.Write((uint16_t)vp.addr, Swap16(flowrate)); + dgus.write((uint16_t)vp.addr, Swap16(flowrate)); } -void DGUSTxHandler::TempMax(DGUS_VP &vp) { +void DGUSTxHandler::tempMax(DGUS_VP &vp) { uint16_t temp; switch (vp.addr) { @@ -279,15 +279,15 @@ void DGUSTxHandler::TempMax(DGUS_VP &vp) { #endif } - dgus_display.Write((uint16_t)vp.addr, Swap16(temp)); + dgus.write((uint16_t)vp.addr, Swap16(temp)); } -void DGUSTxHandler::StepperStatus(DGUS_VP &vp) { +void DGUSTxHandler::stepperStatus(DGUS_VP &vp) { const bool motor_on = stepper.axis_enabled.bits & (_BV(NUM_AXES) - 1); - dgus_display.Write((uint16_t)vp.addr, Swap16(motor_on ? DGUS_Data::Status::ENABLED : DGUS_Data::Status::DISABLED)); + dgus.write((uint16_t)vp.addr, Swap16(motor_on ? DGUS_Data::Status::ENABLED : DGUS_Data::Status::DISABLED)); } -void DGUSTxHandler::StepIcons(DGUS_VP &vp) { +void DGUSTxHandler::stepIcons(DGUS_VP &vp) { if (!vp.extra) return; uint16_t icons = 0; DGUS_Data::StepSize size = *(DGUS_Data::StepSize*)vp.extra; @@ -307,31 +307,31 @@ void DGUSTxHandler::StepIcons(DGUS_VP &vp) { break; } - dgus_display.Write((uint16_t)vp.addr, Swap16(icons)); + dgus.write((uint16_t)vp.addr, Swap16(icons)); } -void DGUSTxHandler::ABLDisableIcon(DGUS_VP &vp) { +void DGUSTxHandler::ablDisableIcon(DGUS_VP &vp) { uint16_t data; if (ExtUI::getLevelingActive()) { data = (uint16_t)DGUS_Data::Status::ENABLED; - dgus_display.EnableControl(DGUS_Screen::LEVELING_AUTOMATIC, + dgus.enableControl(DGUS_ScreenID::LEVELING_AUTOMATIC, DGUSDisplay::RETURN_KEY_CODE, DGUS_Control::DISABLE); } else { data = (uint16_t)DGUS_Data::Status::DISABLED; - dgus_display.DisableControl(DGUS_Screen::LEVELING_AUTOMATIC, + dgus.disableControl(DGUS_ScreenID::LEVELING_AUTOMATIC, DGUSDisplay::RETURN_KEY_CODE, DGUS_Control::DISABLE); } - dgus_display.Write((uint16_t)vp.addr, Swap16(data)); + dgus.write((uint16_t)vp.addr, Swap16(data)); } -void DGUSTxHandler::ABLGrid(DGUS_VP &vp) { +void DGUSTxHandler::ablGrid(DGUS_VP &vp) { // Batch send int16_t data[DGUS_LEVEL_GRID_SIZE]; xy_uint8_t point; @@ -340,17 +340,17 @@ void DGUSTxHandler::ABLGrid(DGUS_VP &vp) { for (int16_t i = 0; i < DGUS_LEVEL_GRID_SIZE; i++) { point.x = i % (GRID_MAX_POINTS_X); point.y = i / (GRID_MAX_POINTS_X); - fixed = dgus_display.ToFixedPoint(ExtUI::getMeshPoint(point)); + fixed = dgus.toFixedPoint(ExtUI::getMeshPoint(point)); data[i] = Swap16(fixed); } - dgus_display.Write((uint16_t)vp.addr, data, sizeof(*data) * DGUS_LEVEL_GRID_SIZE); + dgus.write((uint16_t)vp.addr, data, sizeof(*data) * DGUS_LEVEL_GRID_SIZE); } -void DGUSTxHandler::FilamentIcons(DGUS_VP &vp) { +void DGUSTxHandler::filamentIcons(DGUS_VP &vp) { uint16_t icons = 0; - switch (dgus_screen_handler.filament_extruder) { + switch (screen.filament_extruder) { default: return; case DGUS_Data::Extruder::CURRENT: #if HAS_MULTI_EXTRUDER @@ -373,29 +373,29 @@ void DGUSTxHandler::FilamentIcons(DGUS_VP &vp) { break; } - dgus_display.Write((uint16_t)vp.addr, Swap16(icons)); + dgus.write((uint16_t)vp.addr, Swap16(icons)); } -void DGUSTxHandler::BLTouch(DGUS_VP &vp) { +void DGUSTxHandler::blTouch(DGUS_VP &vp) { #if ENABLED(BLTOUCH) - dgus_display.EnableControl(DGUS_Screen::SETTINGS_MENU2, + dgus.enableControl(DGUS_ScreenID::SETTINGS_MENU2, DGUSDisplay::RETURN_KEY_CODE, DGUS_Control::EXTRA2); - dgus_display.Write((uint16_t)vp.addr, Swap16(DGUS_Data::Status::ENABLED)); + dgus.write((uint16_t)vp.addr, Swap16(DGUS_Data::Status::ENABLED)); #else - dgus_display.DisableControl(DGUS_Screen::SETTINGS_MENU2, + dgus.disableControl(DGUS_ScreenID::SETTINGS_MENU2, DGUSDisplay::RETURN_KEY_CODE, DGUS_Control::EXTRA2); - dgus_display.Write((uint16_t)vp.addr, Swap16(DGUS_Data::Status::DISABLED)); + dgus.write((uint16_t)vp.addr, Swap16(DGUS_Data::Status::DISABLED)); #endif } -void DGUSTxHandler::PIDIcons(DGUS_VP &vp) { +void DGUSTxHandler::pidIcons(DGUS_VP &vp) { uint16_t icons = 0; - switch (dgus_screen_handler.pid_heater) { + switch (screen.pid_heater) { default: return; case DGUS_Data::Heater::BED: icons |= (uint16_t)DGUS_Data::HeaterIcon::BED; @@ -408,13 +408,13 @@ void DGUSTxHandler::PIDIcons(DGUS_VP &vp) { break; } - dgus_display.Write((uint16_t)vp.addr, Swap16(icons)); + dgus.write((uint16_t)vp.addr, Swap16(icons)); } -void DGUSTxHandler::PIDKp(DGUS_VP &vp) { +void DGUSTxHandler::pidKp(DGUS_VP &vp) { float value; - switch (dgus_screen_handler.pid_heater) { + switch (screen.pid_heater) { default: return; #if ENABLED(PIDTEMPBED) case DGUS_Data::Heater::BED: @@ -433,14 +433,14 @@ void DGUSTxHandler::PIDKp(DGUS_VP &vp) { #endif } - const int32_t data = dgus_display.ToFixedPoint(value); - dgus_display.Write((uint16_t)vp.addr, dgus_display.SwapBytes(data)); + const int32_t data = dgus.toFixedPoint(value); + dgus.write((uint16_t)vp.addr, dgus.swapBytes(data)); } -void DGUSTxHandler::PIDKi(DGUS_VP &vp) { +void DGUSTxHandler::pidKi(DGUS_VP &vp) { float value; - switch (dgus_screen_handler.pid_heater) { + switch (screen.pid_heater) { default: return; #if ENABLED(PIDTEMPBED) case DGUS_Data::Heater::BED: @@ -459,14 +459,14 @@ void DGUSTxHandler::PIDKi(DGUS_VP &vp) { #endif } - const int32_t data = dgus_display.ToFixedPoint(value); - dgus_display.Write((uint16_t)vp.addr, dgus_display.SwapBytes(data)); + const int32_t data = dgus.toFixedPoint(value); + dgus.write((uint16_t)vp.addr, dgus.swapBytes(data)); } -void DGUSTxHandler::PIDKd(DGUS_VP &vp) { +void DGUSTxHandler::pidKd(DGUS_VP &vp) { float value; - switch (dgus_screen_handler.pid_heater) { + switch (screen.pid_heater) { default: return; #if ENABLED(PIDTEMPBED) case DGUS_Data::Heater::BED: @@ -485,99 +485,99 @@ void DGUSTxHandler::PIDKd(DGUS_VP &vp) { #endif } - const int32_t data = dgus_display.ToFixedPoint(value); - dgus_display.Write((uint16_t)vp.addr, dgus_display.SwapBytes(data)); + const int32_t data = dgus.toFixedPoint(value); + dgus.write((uint16_t)vp.addr, dgus.swapBytes(data)); } -void DGUSTxHandler::BuildVolume(DGUS_VP &vp) { +void DGUSTxHandler::buildVolume(DGUS_VP &vp) { char buffer[vp.size]; snprintf_P(buffer, vp.size, PSTR("%dx%dx%d"), X_BED_SIZE, Y_BED_SIZE, (Z_MAX_POS - Z_MIN_POS)); - dgus_display.WriteString((uint16_t)vp.addr, buffer, vp.size); + dgus.writeString((uint16_t)vp.addr, buffer, vp.size); } -void DGUSTxHandler::TotalPrints(DGUS_VP &vp) { +void DGUSTxHandler::totalPrints(DGUS_VP &vp) { #if ENABLED(PRINTCOUNTER) - dgus_display.Write((uint16_t)vp.addr, dgus_display.SwapBytes(print_job_timer.getStats().totalPrints)); + dgus.write((uint16_t)vp.addr, dgus.swapBytes(print_job_timer.getStats().totalPrints)); #else UNUSED(vp); #endif } -void DGUSTxHandler::FinishedPrints(DGUS_VP &vp) { +void DGUSTxHandler::finishedPrints(DGUS_VP &vp) { #if ENABLED(PRINTCOUNTER) - dgus_display.Write((uint16_t)vp.addr, dgus_display.SwapBytes(print_job_timer.getStats().finishedPrints)); + dgus.write((uint16_t)vp.addr, dgus.swapBytes(print_job_timer.getStats().finishedPrints)); #else UNUSED(vp); #endif } -void DGUSTxHandler::PrintTime(DGUS_VP &vp) { +void DGUSTxHandler::printTime(DGUS_VP &vp) { #if ENABLED(PRINTCOUNTER) char buffer[21]; ExtUI::getTotalPrintTime_str(buffer); - dgus_display.WriteString((uint16_t)vp.addr, buffer, vp.size); + dgus.writeString((uint16_t)vp.addr, buffer, vp.size); #else - dgus_display.WriteString((uint16_t)vp.addr, F("-"), vp.size); + dgus.writeString((uint16_t)vp.addr, F("-"), vp.size); #endif } -void DGUSTxHandler::LongestPrint(DGUS_VP &vp) { +void DGUSTxHandler::longestPrint(DGUS_VP &vp) { #if ENABLED(PRINTCOUNTER) char buffer[21]; ExtUI::getLongestPrint_str(buffer); - dgus_display.WriteString((uint16_t)vp.addr, buffer, vp.size); + dgus.writeString((uint16_t)vp.addr, buffer, vp.size); #else - dgus_display.WriteString((uint16_t)vp.addr, F("-"), vp.size); + dgus.writeString((uint16_t)vp.addr, F("-"), vp.size); #endif } -void DGUSTxHandler::FilamentUsed(DGUS_VP &vp) { +void DGUSTxHandler::filamentUsed(DGUS_VP &vp) { #if ENABLED(PRINTCOUNTER) char buffer[21]; ExtUI::getFilamentUsed_str(buffer); - dgus_display.WriteString((uint16_t)vp.addr, buffer, vp.size); + dgus.writeString((uint16_t)vp.addr, buffer, vp.size); #else - dgus_display.WriteString((uint16_t)vp.addr, F("-"), vp.size); + dgus.writeString((uint16_t)vp.addr, F("-"), vp.size); #endif } -void DGUSTxHandler::WaitIcons(DGUS_VP &vp) { +void DGUSTxHandler::waitIcons(DGUS_VP &vp) { uint16_t icons = 0; if (ExtUI::isPrintingPaused()) { icons |= (uint16_t)DGUS_Data::WaitIcon::ABORT; - dgus_display.EnableControl(DGUS_Screen::WAIT, + dgus.enableControl(DGUS_ScreenID::WAIT, DGUSDisplay::POPUP_WINDOW, DGUS_Control::ABORT); } else { - dgus_display.DisableControl(DGUS_Screen::WAIT, + dgus.disableControl(DGUS_ScreenID::WAIT, DGUSDisplay::POPUP_WINDOW, DGUS_Control::ABORT); } - if (dgus_screen_handler.wait_continue) { + if (screen.wait_continue) { icons |= (uint16_t)DGUS_Data::WaitIcon::CONTINUE; - dgus_display.EnableControl(DGUS_Screen::WAIT, + dgus.enableControl(DGUS_ScreenID::WAIT, DGUSDisplay::RETURN_KEY_CODE, DGUS_Control::CONTINUE); } else { - dgus_display.DisableControl(DGUS_Screen::WAIT, + dgus.disableControl(DGUS_ScreenID::WAIT, DGUSDisplay::RETURN_KEY_CODE, DGUS_Control::CONTINUE); } - dgus_display.Write((uint16_t)vp.addr, Swap16(icons)); + dgus.write((uint16_t)vp.addr, Swap16(icons)); } -void DGUSTxHandler::FanSpeed(DGUS_VP &vp) { +void DGUSTxHandler::fanSpeed(DGUS_VP &vp) { uint16_t fan_speed; switch (vp.addr) { @@ -585,31 +585,31 @@ void DGUSTxHandler::FanSpeed(DGUS_VP &vp) { case DGUS_Addr::FAN0_Speed: fan_speed = ExtUI::getTargetFan_percent(ExtUI::FAN0); break; } - dgus_display.Write((uint16_t)vp.addr, Swap16(fan_speed)); + dgus.write((uint16_t)vp.addr, Swap16(fan_speed)); } -void DGUSTxHandler::Volume(DGUS_VP &vp) { - const uint16_t volume = dgus_display.GetVolume(); +void DGUSTxHandler::volume(DGUS_VP &vp) { + const uint16_t volume = dgus.getVolume(); - dgus_display.Write((uint16_t)vp.addr, Swap16(volume)); + dgus.write((uint16_t)vp.addr, Swap16(volume)); } -void DGUSTxHandler::Brightness(DGUS_VP &vp) { - const uint16_t brightness = dgus_display.GetBrightness(); +void DGUSTxHandler::brightness(DGUS_VP &vp) { + const uint16_t brightness = dgus.getBrightness(); - dgus_display.Write((uint16_t)vp.addr, Swap16(brightness)); + dgus.write((uint16_t)vp.addr, Swap16(brightness)); } -void DGUSTxHandler::ExtraToString(DGUS_VP &vp) { +void DGUSTxHandler::extraToString(DGUS_VP &vp) { if (!vp.size || !vp.extra) return; - dgus_display.WriteString((uint16_t)vp.addr, vp.extra, vp.size, true, false, false); + dgus.writeString((uint16_t)vp.addr, vp.extra, vp.size, true, false, false); } -void DGUSTxHandler::ExtraPGMToString(DGUS_VP &vp) { +void DGUSTxHandler::extraPGMToString(DGUS_VP &vp) { if (!vp.size || !vp.extra) return; - dgus_display.WriteStringPGM((uint16_t)vp.addr, vp.extra, vp.size, true, false, false); + dgus.writeStringPGM((uint16_t)vp.addr, vp.extra, vp.size, true, false, false); } #endif // DGUS_LCD_UI_RELOADED diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.h b/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.h index 6e4f1db5dc7e..c82f4c80dadc 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSTxHandler.h @@ -29,97 +29,97 @@ namespace DGUSTxHandler { #if HAS_MEDIA - void SetFileControlState(int16_t, bool); - void FileType(DGUS_VP &); - void FileName(DGUS_VP &); - void ScrollIcons(DGUS_VP &); - void SelectedFileName(DGUS_VP &); + void setFileControlState(int16_t, bool); + void fileType(DGUS_VP &); + void fileName(DGUS_VP &); + void scrollIcons(DGUS_VP &); + void selectedFileName(DGUS_VP &); #endif - void PositionZ(DGUS_VP &); - void Elapsed(DGUS_VP &); - void Percent(DGUS_VP &); - void StatusIcons(DGUS_VP &); + void zPosition(DGUS_VP &); + void elapsed(DGUS_VP &); + void percent(DGUS_VP &); + void statusIcons(DGUS_VP &); - void Flowrate(DGUS_VP &); + void flowrate(DGUS_VP &); - void TempMax(DGUS_VP &); + void tempMax(DGUS_VP &); - void StepperStatus(DGUS_VP &); + void stepperStatus(DGUS_VP &); - void StepIcons(DGUS_VP &); + void stepIcons(DGUS_VP &); - void ABLDisableIcon(DGUS_VP &); - void ABLGrid(DGUS_VP &); + void ablDisableIcon(DGUS_VP &); + void ablGrid(DGUS_VP &); - void FilamentIcons(DGUS_VP &); + void filamentIcons(DGUS_VP &); - void BLTouch(DGUS_VP &); + void blTouch(DGUS_VP &); - void PIDIcons(DGUS_VP &); - void PIDKp(DGUS_VP &); - void PIDKi(DGUS_VP &); - void PIDKd(DGUS_VP &); + void pidIcons(DGUS_VP &); + void pidKp(DGUS_VP &); + void pidKi(DGUS_VP &); + void pidKd(DGUS_VP &); - void BuildVolume(DGUS_VP &); - void TotalPrints(DGUS_VP &); - void FinishedPrints(DGUS_VP &); - void PrintTime(DGUS_VP &); - void LongestPrint(DGUS_VP &); - void FilamentUsed(DGUS_VP &); + void buildVolume(DGUS_VP &); + void totalPrints(DGUS_VP &); + void finishedPrints(DGUS_VP &); + void printTime(DGUS_VP &); + void longestPrint(DGUS_VP &); + void filamentUsed(DGUS_VP &); - void WaitIcons(DGUS_VP &); + void waitIcons(DGUS_VP &); - void FanSpeed(DGUS_VP &); + void fanSpeed(DGUS_VP &); - void Volume(DGUS_VP &); + void volume(DGUS_VP &); - void Brightness(DGUS_VP &); + void brightness(DGUS_VP &); - void ExtraToString(DGUS_VP &); - void ExtraPGMToString(DGUS_VP &); + void extraToString(DGUS_VP &); + void extraPGMToString(DGUS_VP &); template - void ExtraToInteger(DGUS_VP &vp) { + void extraToInteger(DGUS_VP &vp) { if (!vp.size || !vp.extra) return; switch (vp.size) { default: return; case 1: { const uint8_t data = uint8_t(*(T*)vp.extra); - dgus_display.Write(uint16_t(vp.addr), data); + dgus.write(uint16_t(vp.addr), data); break; } case 2: { const uint16_t data = uint16_t(*(T*)vp.extra); - dgus_display.Write(uint16_t(vp.addr), Swap16(data)); + dgus.write(uint16_t(vp.addr), Swap16(data)); break; } case 4: { const uint32_t data = uint32_t(*(T*)vp.extra); - dgus_display.Write(uint16_t(vp.addr), dgus_display.SwapBytes(data)); + dgus.write(uint16_t(vp.addr), dgus.swapBytes(data)); break; } } } template - void ExtraToFixedPoint(DGUS_VP &vp) { + void extraToFixedPoint(DGUS_VP &vp) { if (!vp.size || !vp.extra) return; switch (vp.size) { default: return; case 1: { - const uint8_t data = dgus_display.ToFixedPoint(*(T*)vp.extra); - dgus_display.Write(uint16_t(vp.addr), data); + const uint8_t data = dgus.toFixedPoint(*(T*)vp.extra); + dgus.write(uint16_t(vp.addr), data); break; } case 2: { - const uint16_t data = dgus_display.ToFixedPoint(*(T*)vp.extra); - dgus_display.Write(uint16_t(vp.addr), Swap16(data)); + const uint16_t data = dgus.toFixedPoint(*(T*)vp.extra); + dgus.write(uint16_t(vp.addr), Swap16(data)); break; } case 4: { - const uint32_t data = dgus_display.ToFixedPoint(*(T*)vp.extra); - dgus_display.Write(uint16_t(vp.addr), dgus_display.SwapBytes(data)); + const uint32_t data = dgus.toFixedPoint(*(T*)vp.extra); + dgus.write(uint16_t(vp.addr), dgus.swapBytes(data)); break; } } diff --git a/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_Screen.h b/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_ScreenID.h similarity index 97% rename from Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_Screen.h rename to Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_ScreenID.h index 0a738223ce36..546ebb466665 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_Screen.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_ScreenID.h @@ -21,7 +21,7 @@ */ #pragma once -enum class DGUS_Screen : uint8_t { +enum class DGUS_ScreenID : uint8_t { BOOT = 0, HOME = 1, PRINT = 2, diff --git a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.cpp b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.cpp index 4c99ff6a0089..1a99eceeff3a 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.cpp @@ -204,37 +204,35 @@ constexpr DGUS_Addr LIST_WAIT[] PROGMEM = { (DGUS_Addr)0 }; -#define MAP_HELPER(SCREEN, LIST) \ - { .screen = SCREEN, \ - .addr_list = LIST } +#define MAP_HELPER(SCREEN, LIST) { .screenID = SCREEN, .addr_list = LIST } const struct DGUS_ScreenAddrList screen_addr_list_map[] PROGMEM = { - MAP_HELPER(DGUS_Screen::HOME, LIST_HOME), + MAP_HELPER(DGUS_ScreenID::HOME, LIST_HOME), #if HAS_MEDIA - MAP_HELPER(DGUS_Screen::PRINT, LIST_PRINT), + MAP_HELPER(DGUS_ScreenID::PRINT, LIST_PRINT), #endif - MAP_HELPER(DGUS_Screen::PRINT_STATUS, LIST_PRINT_STATUS), - MAP_HELPER(DGUS_Screen::PRINT_ADJUST, LIST_PRINT_ADJUST), - MAP_HELPER(DGUS_Screen::PRINT_FINISHED, LIST_PRINT_FINISHED), - MAP_HELPER(DGUS_Screen::TEMP_MENU, LIST_TEMP_MENU), - MAP_HELPER(DGUS_Screen::TEMP_MANUAL, LIST_TEMP_MANUAL), - MAP_HELPER(DGUS_Screen::FAN, LIST_FAN), - MAP_HELPER(DGUS_Screen::SETTINGS_MENU, LIST_SETTINGS_MENU), - MAP_HELPER(DGUS_Screen::LEVELING_OFFSET, LIST_LEVELING_OFFSET), - MAP_HELPER(DGUS_Screen::LEVELING_MANUAL, LIST_LEVELING_MANUAL), - MAP_HELPER(DGUS_Screen::LEVELING_AUTOMATIC, LIST_LEVELING_AUTOMATIC), - MAP_HELPER(DGUS_Screen::LEVELING_PROBING, LIST_LEVELING_PROBING), - MAP_HELPER(DGUS_Screen::FILAMENT, LIST_FILAMENT), - MAP_HELPER(DGUS_Screen::MOVE, LIST_MOVE), - MAP_HELPER(DGUS_Screen::GCODE, LIST_GCODE), - MAP_HELPER(DGUS_Screen::SETTINGS_MENU2, LIST_SETTINGS_MENU2), - MAP_HELPER(DGUS_Screen::PID, LIST_PID), - MAP_HELPER(DGUS_Screen::VOLUME, LIST_VOLUME), - MAP_HELPER(DGUS_Screen::BRIGHTNESS, LIST_BRIGHTNESS), - MAP_HELPER(DGUS_Screen::INFOS, LIST_INFOS), - MAP_HELPER(DGUS_Screen::WAIT, LIST_WAIT), - - MAP_HELPER((DGUS_Screen)0, nullptr) + MAP_HELPER(DGUS_ScreenID::PRINT_STATUS, LIST_PRINT_STATUS), + MAP_HELPER(DGUS_ScreenID::PRINT_ADJUST, LIST_PRINT_ADJUST), + MAP_HELPER(DGUS_ScreenID::PRINT_FINISHED, LIST_PRINT_FINISHED), + MAP_HELPER(DGUS_ScreenID::TEMP_MENU, LIST_TEMP_MENU), + MAP_HELPER(DGUS_ScreenID::TEMP_MANUAL, LIST_TEMP_MANUAL), + MAP_HELPER(DGUS_ScreenID::FAN, LIST_FAN), + MAP_HELPER(DGUS_ScreenID::SETTINGS_MENU, LIST_SETTINGS_MENU), + MAP_HELPER(DGUS_ScreenID::LEVELING_OFFSET, LIST_LEVELING_OFFSET), + MAP_HELPER(DGUS_ScreenID::LEVELING_MANUAL, LIST_LEVELING_MANUAL), + MAP_HELPER(DGUS_ScreenID::LEVELING_AUTOMATIC, LIST_LEVELING_AUTOMATIC), + MAP_HELPER(DGUS_ScreenID::LEVELING_PROBING, LIST_LEVELING_PROBING), + MAP_HELPER(DGUS_ScreenID::FILAMENT, LIST_FILAMENT), + MAP_HELPER(DGUS_ScreenID::MOVE, LIST_MOVE), + MAP_HELPER(DGUS_ScreenID::GCODE, LIST_GCODE), + MAP_HELPER(DGUS_ScreenID::SETTINGS_MENU2, LIST_SETTINGS_MENU2), + MAP_HELPER(DGUS_ScreenID::PID, LIST_PID), + MAP_HELPER(DGUS_ScreenID::VOLUME, LIST_VOLUME), + MAP_HELPER(DGUS_ScreenID::BRIGHTNESS, LIST_BRIGHTNESS), + MAP_HELPER(DGUS_ScreenID::INFOS, LIST_INFOS), + MAP_HELPER(DGUS_ScreenID::WAIT, LIST_WAIT), + + MAP_HELPER((DGUS_ScreenID)0, nullptr) }; #endif // DGUS_LCD_UI_RELOADED diff --git a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.h b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.h index 1e481ef3cce6..dea39ed145ad 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.h @@ -21,12 +21,12 @@ */ #pragma once -#include "../config/DGUS_Screen.h" +#include "../config/DGUS_ScreenID.h" #include "../config/DGUS_Addr.h" struct DGUS_ScreenAddrList { - DGUS_Screen screen; - const DGUS_Addr *addr_list; + DGUS_ScreenID screenID; + const DGUS_Addr *addr_list; }; extern const struct DGUS_ScreenAddrList screen_addr_list_map[]; diff --git a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.cpp b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.cpp index e3ba393af25b..e01f6ab3a6bb 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.cpp @@ -30,28 +30,26 @@ #include "../../ui_api.h" -#define SETUP_HELPER(SCREEN, SETUP) \ - { .screen = SCREEN, \ - .setup_fn = SETUP } +#define SETUP_HELPER(SCREEN, SETUP) { .screenID = SCREEN, .setup_fn = SETUP } const struct DGUS_ScreenSetup screen_setup_list[] PROGMEM = { #if HAS_MEDIA - SETUP_HELPER(DGUS_Screen::PRINT, &DGUSSetupHandler::Print), + SETUP_HELPER(DGUS_ScreenID::PRINT, &DGUSSetupHandler::Print), #endif - SETUP_HELPER(DGUS_Screen::PRINT_STATUS, &DGUSSetupHandler::PrintStatus), - SETUP_HELPER(DGUS_Screen::PRINT_ADJUST, &DGUSSetupHandler::PrintAdjust), - SETUP_HELPER(DGUS_Screen::LEVELING_MENU, &DGUSSetupHandler::LevelingMenu), - SETUP_HELPER(DGUS_Screen::LEVELING_OFFSET, &DGUSSetupHandler::LevelingOffset), - SETUP_HELPER(DGUS_Screen::LEVELING_MANUAL, &DGUSSetupHandler::LevelingManual), - SETUP_HELPER(DGUS_Screen::LEVELING_AUTOMATIC, &DGUSSetupHandler::LevelingAutomatic), - SETUP_HELPER(DGUS_Screen::LEVELING_PROBING, &DGUSSetupHandler::LevelingProbing), - SETUP_HELPER(DGUS_Screen::FILAMENT, &DGUSSetupHandler::Filament), - SETUP_HELPER(DGUS_Screen::MOVE, &DGUSSetupHandler::Move), - SETUP_HELPER(DGUS_Screen::GCODE, &DGUSSetupHandler::Gcode), - SETUP_HELPER(DGUS_Screen::PID, &DGUSSetupHandler::PID), - SETUP_HELPER(DGUS_Screen::INFOS, &DGUSSetupHandler::Infos), - - SETUP_HELPER((DGUS_Screen)0, nullptr) + SETUP_HELPER(DGUS_ScreenID::PRINT_STATUS, &DGUSSetupHandler::PrintStatus), + SETUP_HELPER(DGUS_ScreenID::PRINT_ADJUST, &DGUSSetupHandler::PrintAdjust), + SETUP_HELPER(DGUS_ScreenID::LEVELING_MENU, &DGUSSetupHandler::LevelingMenu), + SETUP_HELPER(DGUS_ScreenID::LEVELING_OFFSET, &DGUSSetupHandler::LevelingOffset), + SETUP_HELPER(DGUS_ScreenID::LEVELING_MANUAL, &DGUSSetupHandler::LevelingManual), + SETUP_HELPER(DGUS_ScreenID::LEVELING_AUTOMATIC, &DGUSSetupHandler::LevelingAutomatic), + SETUP_HELPER(DGUS_ScreenID::LEVELING_PROBING, &DGUSSetupHandler::LevelingProbing), + SETUP_HELPER(DGUS_ScreenID::FILAMENT, &DGUSSetupHandler::Filament), + SETUP_HELPER(DGUS_ScreenID::MOVE, &DGUSSetupHandler::Move), + SETUP_HELPER(DGUS_ScreenID::GCODE, &DGUSSetupHandler::Gcode), + SETUP_HELPER(DGUS_ScreenID::PID, &DGUSSetupHandler::PID), + SETUP_HELPER(DGUS_ScreenID::INFOS, &DGUSSetupHandler::Infos), + + SETUP_HELPER((DGUS_ScreenID)0, nullptr) }; #endif // DGUS_LCD_UI_RELOADED diff --git a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.h b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.h index 93df5ad90ae6..e740997ad446 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.h @@ -21,10 +21,10 @@ */ #pragma once -#include "../config/DGUS_Screen.h" +#include "../config/DGUS_ScreenID.h" struct DGUS_ScreenSetup { - DGUS_Screen screen; + DGUS_ScreenID screenID; bool (*setup_fn)(void); }; diff --git a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_VPList.cpp b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_VPList.cpp index 69f792c45d1b..172cf98fe6f6 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_VPList.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_VPList.cpp @@ -75,248 +75,248 @@ const struct DGUS_VP vp_list[] PROGMEM = { // READ-ONLY VARIABLES - VP_HELPER_RX(DGUS_Addr::SCREENCHANGE, &DGUSRxHandler::ScreenChange), - VP_HELPER_RX(DGUS_Addr::SCREENCHANGE_SD, &DGUSRxHandler::ScreenChange), - VP_HELPER_RX(DGUS_Addr::SCREENCHANGE_Idle, &DGUSRxHandler::ScreenChange), - VP_HELPER_RX(DGUS_Addr::SCREENCHANGE_Printing, &DGUSRxHandler::ScreenChange), + VP_HELPER_RX(DGUS_Addr::SCREENCHANGE, &DGUSRxHandler::screenChange), + VP_HELPER_RX(DGUS_Addr::SCREENCHANGE_SD, &DGUSRxHandler::screenChange), + VP_HELPER_RX(DGUS_Addr::SCREENCHANGE_Idle, &DGUSRxHandler::screenChange), + VP_HELPER_RX(DGUS_Addr::SCREENCHANGE_Printing, &DGUSRxHandler::screenChange), #if HAS_MEDIA VP_HELPER_RX(DGUS_Addr::SD_SelectFile, &DGUSRxHandler::selectFile), - VP_HELPER_RX(DGUS_Addr::SD_Scroll, &DGUSRxHandler::Scroll), - VP_HELPER_RX_NODATA(DGUS_Addr::SD_Print, &DGUSRxHandler::PrintFile), + VP_HELPER_RX(DGUS_Addr::SD_Scroll, &DGUSRxHandler::scroll), + VP_HELPER_RX_NODATA(DGUS_Addr::SD_Print, &DGUSRxHandler::printFile), #endif - VP_HELPER_RX(DGUS_Addr::STATUS_Abort, &DGUSRxHandler::PrintAbort), - VP_HELPER_RX(DGUS_Addr::STATUS_Pause, &DGUSRxHandler::PrintPause), - VP_HELPER_RX(DGUS_Addr::STATUS_Resume, &DGUSRxHandler::PrintResume), + VP_HELPER_RX(DGUS_Addr::STATUS_Abort, &DGUSRxHandler::printAbort), + VP_HELPER_RX(DGUS_Addr::STATUS_Pause, &DGUSRxHandler::printPause), + VP_HELPER_RX(DGUS_Addr::STATUS_Resume, &DGUSRxHandler::printResume), - VP_HELPER_RX(DGUS_Addr::ADJUST_SetFeedrate, &DGUSRxHandler::Feedrate), - VP_HELPER_RX(DGUS_Addr::ADJUST_SetFlowrate_CUR, &DGUSRxHandler::Flowrate), + VP_HELPER_RX(DGUS_Addr::ADJUST_SetFeedrate, &DGUSRxHandler::feedrate), + VP_HELPER_RX(DGUS_Addr::ADJUST_SetFlowrate_CUR, &DGUSRxHandler::flowrate), #if HAS_MULTI_EXTRUDER - VP_HELPER_RX(DGUS_Addr::ADJUST_SetFlowrate_E0, &DGUSRxHandler::Flowrate), - VP_HELPER_RX(DGUS_Addr::ADJUST_SetFlowrate_E1, &DGUSRxHandler::Flowrate), + VP_HELPER_RX(DGUS_Addr::ADJUST_SetFlowrate_E0, &DGUSRxHandler::flowrate), + VP_HELPER_RX(DGUS_Addr::ADJUST_SetFlowrate_E1, &DGUSRxHandler::flowrate), #endif - VP_HELPER_RX(DGUS_Addr::ADJUST_SetBabystep, &DGUSRxHandler::BabystepSet), - VP_HELPER_RX(DGUS_Addr::ADJUST_Babystep, &DGUSRxHandler::Babystep), + VP_HELPER_RX(DGUS_Addr::ADJUST_SetBabystep, &DGUSRxHandler::babystepSet), + VP_HELPER_RX(DGUS_Addr::ADJUST_Babystep, &DGUSRxHandler::babystep), - VP_HELPER_RX(DGUS_Addr::TEMP_Preset, &DGUSRxHandler::TempPreset), - VP_HELPER_RX(DGUS_Addr::TEMP_SetTarget_Bed, &DGUSRxHandler::TempTarget), - VP_HELPER_RX(DGUS_Addr::TEMP_SetTarget_H0, &DGUSRxHandler::TempTarget), + VP_HELPER_RX(DGUS_Addr::TEMP_Preset, &DGUSRxHandler::tempPreset), + VP_HELPER_RX(DGUS_Addr::TEMP_SetTarget_Bed, &DGUSRxHandler::tempTarget), + VP_HELPER_RX(DGUS_Addr::TEMP_SetTarget_H0, &DGUSRxHandler::tempTarget), #if HAS_MULTI_HOTEND - VP_HELPER_RX(DGUS_Addr::TEMP_SetTarget_H1, &DGUSRxHandler::TempTarget), + VP_HELPER_RX(DGUS_Addr::TEMP_SetTarget_H1, &DGUSRxHandler::tempTarget), #endif - VP_HELPER_RX(DGUS_Addr::TEMP_Cool, &DGUSRxHandler::TempCool), + VP_HELPER_RX(DGUS_Addr::TEMP_Cool, &DGUSRxHandler::tempCool), - VP_HELPER_RX(DGUS_Addr::STEPPER_Control, &DGUSRxHandler::Steppers), + VP_HELPER_RX(DGUS_Addr::STEPPER_Control, &DGUSRxHandler::steppers), - VP_HELPER_RX(DGUS_Addr::LEVEL_OFFSET_Set, &DGUSRxHandler::ZOffset), - VP_HELPER_RX(DGUS_Addr::LEVEL_OFFSET_Step, &DGUSRxHandler::ZOffsetStep), - VP_HELPER_RX(DGUS_Addr::LEVEL_OFFSET_SetStep, &DGUSRxHandler::ZOffsetSetStep), + VP_HELPER_RX(DGUS_Addr::LEVEL_OFFSET_Set, &DGUSRxHandler::zOffset), + VP_HELPER_RX(DGUS_Addr::LEVEL_OFFSET_Step, &DGUSRxHandler::zOffsetStep), + VP_HELPER_RX(DGUS_Addr::LEVEL_OFFSET_SetStep, &DGUSRxHandler::zOffsetSetStep), - VP_HELPER_RX(DGUS_Addr::LEVEL_MANUAL_Point, &DGUSRxHandler::MoveToPoint), + VP_HELPER_RX(DGUS_Addr::LEVEL_MANUAL_Point, &DGUSRxHandler::moveToPoint), - VP_HELPER_RX_NODATA(DGUS_Addr::LEVEL_AUTO_Probe, &DGUSRxHandler::Probe), - VP_HELPER_RX_NODATA(DGUS_Addr::LEVEL_AUTO_Disable, &DGUSRxHandler::DisableABL), + VP_HELPER_RX_NODATA(DGUS_Addr::LEVEL_AUTO_Probe, &DGUSRxHandler::probe), + VP_HELPER_RX_NODATA(DGUS_Addr::LEVEL_AUTO_Disable, &DGUSRxHandler::disableABL), - VP_HELPER_RX(DGUS_Addr::FILAMENT_Select, &DGUSRxHandler::FilamentSelect), - VP_HELPER_RX(DGUS_Addr::FILAMENT_SetLength, &DGUSRxHandler::FilamentLength), - VP_HELPER_RX(DGUS_Addr::FILAMENT_Move, &DGUSRxHandler::FilamentMove), + VP_HELPER_RX(DGUS_Addr::FILAMENT_Select, &DGUSRxHandler::filamentSelect), + VP_HELPER_RX(DGUS_Addr::FILAMENT_SetLength, &DGUSRxHandler::filamentLength), + VP_HELPER_RX(DGUS_Addr::FILAMENT_Move, &DGUSRxHandler::filamentMove), - VP_HELPER_RX(DGUS_Addr::MOVE_Home, &DGUSRxHandler::Home), - VP_HELPER_RX(DGUS_Addr::MOVE_SetX, &DGUSRxHandler::Move), - VP_HELPER_RX(DGUS_Addr::MOVE_SetY, &DGUSRxHandler::Move), - VP_HELPER_RX(DGUS_Addr::MOVE_SetZ, &DGUSRxHandler::Move), - VP_HELPER_RX(DGUS_Addr::MOVE_Step, &DGUSRxHandler::MoveStep), - VP_HELPER_RX(DGUS_Addr::MOVE_SetStep, &DGUSRxHandler::MoveSetStep), + VP_HELPER_RX(DGUS_Addr::MOVE_Home, &DGUSRxHandler::home), + VP_HELPER_RX(DGUS_Addr::MOVE_SetX, &DGUSRxHandler::move), + VP_HELPER_RX(DGUS_Addr::MOVE_SetY, &DGUSRxHandler::move), + VP_HELPER_RX(DGUS_Addr::MOVE_SetZ, &DGUSRxHandler::move), + VP_HELPER_RX(DGUS_Addr::MOVE_Step, &DGUSRxHandler::moveStep), + VP_HELPER_RX(DGUS_Addr::MOVE_SetStep, &DGUSRxHandler::moveSetStep), - VP_HELPER_RX_NODATA(DGUS_Addr::GCODE_Clear, &DGUSRxHandler::GcodeClear), - VP_HELPER_RX_NODATA(DGUS_Addr::GCODE_Execute, &DGUSRxHandler::GcodeExecute), + VP_HELPER_RX_NODATA(DGUS_Addr::GCODE_Clear, &DGUSRxHandler::gcodeClear), + VP_HELPER_RX_NODATA(DGUS_Addr::GCODE_Execute, &DGUSRxHandler::gcodeExecute), - VP_HELPER_RX(DGUS_Addr::EEPROM_Reset, &DGUSRxHandler::ResetEEPROM), + VP_HELPER_RX(DGUS_Addr::EEPROM_Reset, &DGUSRxHandler::resetEEPROM), - VP_HELPER_RX(DGUS_Addr::SETTINGS2_Extra, &DGUSRxHandler::SettingsExtra), + VP_HELPER_RX(DGUS_Addr::SETTINGS2_Extra, &DGUSRxHandler::settingsExtra), - VP_HELPER_RX(DGUS_Addr::PID_Select, &DGUSRxHandler::PIDSelect), - VP_HELPER_RX(DGUS_Addr::PID_SetTemp, &DGUSRxHandler::PIDSetTemp), - VP_HELPER_RX_NODATA(DGUS_Addr::PID_Run, &DGUSRxHandler::PIDRun), + VP_HELPER_RX(DGUS_Addr::PID_Select, &DGUSRxHandler::pidSelect), + VP_HELPER_RX(DGUS_Addr::PID_SetTemp, &DGUSRxHandler::pidSetTemp), + VP_HELPER_RX_NODATA(DGUS_Addr::PID_Run, &DGUSRxHandler::pidRun), #if ENABLED(POWER_LOSS_RECOVERY) - VP_HELPER_RX(DGUS_Addr::POWERLOSS_Abort, &DGUSRxHandler::PowerLossAbort), - VP_HELPER_RX(DGUS_Addr::POWERLOSS_Resume, &DGUSRxHandler::PowerLossResume), + VP_HELPER_RX(DGUS_Addr::POWERLOSS_Abort, &DGUSRxHandler::powerLossAbort), + VP_HELPER_RX(DGUS_Addr::POWERLOSS_Resume, &DGUSRxHandler::powerLossResume), #endif - VP_HELPER_RX(DGUS_Addr::WAIT_Abort, &DGUSRxHandler::WaitAbort), - VP_HELPER_RX_NODATA(DGUS_Addr::WAIT_Continue, &DGUSRxHandler::WaitContinue), + VP_HELPER_RX(DGUS_Addr::WAIT_Abort, &DGUSRxHandler::waitAbort), + VP_HELPER_RX_NODATA(DGUS_Addr::WAIT_Continue, &DGUSRxHandler::waitContinue), // WRITE-ONLY VARIABLES #if HAS_MEDIA - VP_HELPER_TX(DGUS_Addr::SD_Type, &DGUSTxHandler::FileType), + VP_HELPER_TX(DGUS_Addr::SD_Type, &DGUSTxHandler::fileType), VP_HELPER_TX_SIZE(DGUS_Addr::SD_FileName0, DGUS_FILENAME_LEN, - &DGUSTxHandler::FileName), + &DGUSTxHandler::fileName), VP_HELPER_TX_SIZE(DGUS_Addr::SD_FileName1, DGUS_FILENAME_LEN, - &DGUSTxHandler::FileName), + &DGUSTxHandler::fileName), VP_HELPER_TX_SIZE(DGUS_Addr::SD_FileName2, DGUS_FILENAME_LEN, - &DGUSTxHandler::FileName), + &DGUSTxHandler::fileName), VP_HELPER_TX_SIZE(DGUS_Addr::SD_FileName3, DGUS_FILENAME_LEN, - &DGUSTxHandler::FileName), + &DGUSTxHandler::fileName), VP_HELPER_TX_SIZE(DGUS_Addr::SD_FileName4, DGUS_FILENAME_LEN, - &DGUSTxHandler::FileName), - VP_HELPER_TX(DGUS_Addr::SD_ScrollIcons, &DGUSTxHandler::ScrollIcons), + &DGUSTxHandler::fileName), + VP_HELPER_TX(DGUS_Addr::SD_ScrollIcons, &DGUSTxHandler::scrollIcons), VP_HELPER_TX_SIZE(DGUS_Addr::SD_SelectedFileName, DGUS_FILENAME_LEN, - &DGUSTxHandler::SelectedFileName), + &DGUSTxHandler::selectedFileName), #endif VP_HELPER_TX_AUTO(DGUS_Addr::STATUS_PositionZ, nullptr, - &DGUSTxHandler::PositionZ), + &DGUSTxHandler::zPosition), VP_HELPER(DGUS_Addr::STATUS_Elapsed, DGUS_ELAPSED_LEN, VPFLAG_AUTOUPLOAD, nullptr, nullptr, - &DGUSTxHandler::Elapsed), + &DGUSTxHandler::elapsed), VP_HELPER_TX_AUTO(DGUS_Addr::STATUS_Percent, nullptr, - &DGUSTxHandler::Percent), - VP_HELPER_TX(DGUS_Addr::STATUS_Icons, &DGUSTxHandler::StatusIcons), + &DGUSTxHandler::percent), + VP_HELPER_TX(DGUS_Addr::STATUS_Icons, &DGUSTxHandler::statusIcons), VP_HELPER_TX_AUTO(DGUS_Addr::ADJUST_Feedrate, &feedrate_percentage, - &DGUSTxHandler::ExtraToInteger), + &DGUSTxHandler::extraToInteger), VP_HELPER_TX_AUTO(DGUS_Addr::ADJUST_Flowrate_CUR, nullptr, - &DGUSTxHandler::Flowrate), + &DGUSTxHandler::flowrate), #if HAS_MULTI_EXTRUDER VP_HELPER_TX_AUTO(DGUS_Addr::ADJUST_Flowrate_E0, nullptr, - &DGUSTxHandler::Flowrate), + &DGUSTxHandler::flowrate), VP_HELPER_TX_AUTO(DGUS_Addr::ADJUST_Flowrate_E1, nullptr, - &DGUSTxHandler::Flowrate), + &DGUSTxHandler::flowrate), #endif VP_HELPER_TX_AUTO(DGUS_Addr::TEMP_Current_Bed, &thermalManager.temp_bed.celsius, - (&DGUSTxHandler::ExtraToFixedPoint)), + (&DGUSTxHandler::extraToFixedPoint)), VP_HELPER_TX_AUTO(DGUS_Addr::TEMP_Target_Bed, &thermalManager.temp_bed.target, - &DGUSTxHandler::ExtraToInteger), - VP_HELPER_TX(DGUS_Addr::TEMP_Max_Bed, &DGUSTxHandler::TempMax), + &DGUSTxHandler::extraToInteger), + VP_HELPER_TX(DGUS_Addr::TEMP_Max_Bed, &DGUSTxHandler::tempMax), VP_HELPER_TX_AUTO(DGUS_Addr::TEMP_Current_H0, &thermalManager.temp_hotend[ExtUI::heater_t::H0].celsius, - (&DGUSTxHandler::ExtraToFixedPoint)), + (&DGUSTxHandler::extraToFixedPoint)), VP_HELPER_TX_AUTO(DGUS_Addr::TEMP_Target_H0, &thermalManager.temp_hotend[ExtUI::heater_t::H0].target, - &DGUSTxHandler::ExtraToInteger), - VP_HELPER_TX(DGUS_Addr::TEMP_Max_H0, &DGUSTxHandler::TempMax), + &DGUSTxHandler::extraToInteger), + VP_HELPER_TX(DGUS_Addr::TEMP_Max_H0, &DGUSTxHandler::tempMax), #if HAS_MULTI_HOTEND VP_HELPER_TX_AUTO(DGUS_Addr::TEMP_Current_H1, &thermalManager.temp_hotend[ExtUI::heater_t::H1].celsius, - (&DGUSTxHandler::ExtraToFixedPoint)), + (&DGUSTxHandler::extraToFixedPoint)), VP_HELPER_TX_AUTO(DGUS_Addr::TEMP_Target_H1, &thermalManager.temp_hotend[ExtUI::heater_t::H1].target, - &DGUSTxHandler::ExtraToInteger), - VP_HELPER_TX(DGUS_Addr::TEMP_Max_H1, &DGUSTxHandler::TempMax), + &DGUSTxHandler::extraToInteger), + VP_HELPER_TX(DGUS_Addr::TEMP_Max_H1, &DGUSTxHandler::tempMax), #endif VP_HELPER_TX_AUTO(DGUS_Addr::STEPPER_Status, nullptr, - &DGUSTxHandler::StepperStatus), + &DGUSTxHandler::stepperStatus), VP_HELPER_TX_AUTO(DGUS_Addr::LEVEL_OFFSET_Current, &probe.offset.z, - (&DGUSTxHandler::ExtraToFixedPoint)), + (&DGUSTxHandler::extraToFixedPoint)), VP_HELPER_TX_EXTRA(DGUS_Addr::LEVEL_OFFSET_StepIcons, &DGUSScreenHandler::offset_steps, - &DGUSTxHandler::StepIcons), + &DGUSTxHandler::stepIcons), VP_HELPER_TX_AUTO(DGUS_Addr::LEVEL_AUTO_DisableIcon, nullptr, - &DGUSTxHandler::ABLDisableIcon), - VP_HELPER_TX(DGUS_Addr::LEVEL_AUTO_Grid, &DGUSTxHandler::ABLGrid), + &DGUSTxHandler::ablDisableIcon), + VP_HELPER_TX(DGUS_Addr::LEVEL_AUTO_Grid, &DGUSTxHandler::ablGrid), VP_HELPER_TX_EXTRA(DGUS_Addr::LEVEL_PROBING_Icons1, &DGUSScreenHandler::probing_icons[0], - &DGUSTxHandler::ExtraToInteger), + &DGUSTxHandler::extraToInteger), VP_HELPER_TX_EXTRA(DGUS_Addr::LEVEL_PROBING_Icons2, &DGUSScreenHandler::probing_icons[1], - &DGUSTxHandler::ExtraToInteger), + &DGUSTxHandler::extraToInteger), - VP_HELPER_TX(DGUS_Addr::FILAMENT_ExtruderIcons, &DGUSTxHandler::FilamentIcons), + VP_HELPER_TX(DGUS_Addr::FILAMENT_ExtruderIcons, &DGUSTxHandler::filamentIcons), VP_HELPER_TX_EXTRA(DGUS_Addr::FILAMENT_Length, &DGUSScreenHandler::filament_length, - &DGUSTxHandler::ExtraToInteger), + &DGUSTxHandler::extraToInteger), VP_HELPER_TX_AUTO(DGUS_Addr::MOVE_CurrentX, ¤t_position.x, - (&DGUSTxHandler::ExtraToFixedPoint)), + (&DGUSTxHandler::extraToFixedPoint)), VP_HELPER_TX_AUTO(DGUS_Addr::MOVE_CurrentY, ¤t_position.y, - (&DGUSTxHandler::ExtraToFixedPoint)), + (&DGUSTxHandler::extraToFixedPoint)), VP_HELPER_TX_AUTO(DGUS_Addr::MOVE_CurrentZ, ¤t_position.z, - (&DGUSTxHandler::ExtraToFixedPoint)), + (&DGUSTxHandler::extraToFixedPoint)), VP_HELPER_TX_EXTRA(DGUS_Addr::MOVE_StepIcons, &DGUSScreenHandler::move_steps, - &DGUSTxHandler::StepIcons), + &DGUSTxHandler::stepIcons), - VP_HELPER_TX(DGUS_Addr::SETTINGS2_BLTouch, &DGUSTxHandler::BLTouch), + VP_HELPER_TX(DGUS_Addr::SETTINGS2_BLTouch, &DGUSTxHandler::blTouch), - VP_HELPER_TX(DGUS_Addr::PID_HeaterIcons, &DGUSTxHandler::PIDIcons), + VP_HELPER_TX(DGUS_Addr::PID_HeaterIcons, &DGUSTxHandler::pidIcons), VP_HELPER_TX_EXTRA(DGUS_Addr::PID_Temp, &DGUSScreenHandler::pid_temp, - &DGUSTxHandler::ExtraToInteger), + &DGUSTxHandler::extraToInteger), VP_HELPER_DWORD(DGUS_Addr::PID_Kp, VPFLAG_AUTOUPLOAD, nullptr, nullptr, - &DGUSTxHandler::PIDKp), + &DGUSTxHandler::pidKp), VP_HELPER_DWORD(DGUS_Addr::PID_Ki, VPFLAG_AUTOUPLOAD, nullptr, nullptr, - &DGUSTxHandler::PIDKi), + &DGUSTxHandler::pidKi), VP_HELPER_DWORD(DGUS_Addr::PID_Kd, VPFLAG_AUTOUPLOAD, nullptr, nullptr, - &DGUSTxHandler::PIDKd), + &DGUSTxHandler::pidKd), VP_HELPER(DGUS_Addr::INFOS_Machine, DGUS_MACHINE_LEN, VPFLAG_NONE, (void*)DGUS_MACHINENAME, nullptr, - &DGUSTxHandler::ExtraPGMToString), + &DGUSTxHandler::extraPGMToString), VP_HELPER_TX_SIZE(DGUS_Addr::INFOS_BuildVolume, DGUS_BUILDVOLUME_LEN, - &DGUSTxHandler::BuildVolume), + &DGUSTxHandler::buildVolume), VP_HELPER(DGUS_Addr::INFOS_Version, DGUS_VERSION_LEN, VPFLAG_NONE, (void*)DGUS_MARLINVERSION, nullptr, - &DGUSTxHandler::ExtraPGMToString), - VP_HELPER_TX(DGUS_Addr::INFOS_TotalPrints, &DGUSTxHandler::TotalPrints), - VP_HELPER_TX(DGUS_Addr::INFOS_FinishedPrints, &DGUSTxHandler::FinishedPrints), + &DGUSTxHandler::extraPGMToString), + VP_HELPER_TX(DGUS_Addr::INFOS_TotalPrints, &DGUSTxHandler::totalPrints), + VP_HELPER_TX(DGUS_Addr::INFOS_FinishedPrints, &DGUSTxHandler::finishedPrints), VP_HELPER_TX_SIZE(DGUS_Addr::INFOS_PrintTime, DGUS_PRINTTIME_LEN, - &DGUSTxHandler::PrintTime), + &DGUSTxHandler::printTime), VP_HELPER_TX_SIZE(DGUS_Addr::INFOS_LongestPrint, DGUS_LONGESTPRINT_LEN, - &DGUSTxHandler::LongestPrint), + &DGUSTxHandler::longestPrint), VP_HELPER_TX_SIZE(DGUS_Addr::INFOS_FilamentUsed, DGUS_FILAMENTUSED_LEN, - &DGUSTxHandler::FilamentUsed), + &DGUSTxHandler::filamentUsed), - VP_HELPER_TX(DGUS_Addr::WAIT_Icons, &DGUSTxHandler::WaitIcons), + VP_HELPER_TX(DGUS_Addr::WAIT_Icons, &DGUSTxHandler::waitIcons), // READ-WRITE VARIABLES @@ -324,41 +324,41 @@ const struct DGUS_VP vp_list[] PROGMEM = { 2, VPFLAG_AUTOUPLOAD, nullptr, - &DGUSRxHandler::FanSpeed, - &DGUSTxHandler::FanSpeed), + &DGUSRxHandler::fanSpeed, + &DGUSTxHandler::fanSpeed), VP_HELPER(DGUS_Addr::GCODE_Data, DGUS_GCODE_LEN, VPFLAG_RXSTRING, (void*)DGUSScreenHandler::gcode, - &DGUSRxHandler::StringToExtra, - &DGUSTxHandler::ExtraToString), + &DGUSRxHandler::stringToExtra, + &DGUSTxHandler::extraToString), VP_HELPER(DGUS_Addr::PID_Cycles, 2, VPFLAG_NONE, &DGUSScreenHandler::pid_cycles, - &DGUSRxHandler::IntegerToExtra, - &DGUSTxHandler::ExtraToInteger), + &DGUSRxHandler::integerToExtra, + &DGUSTxHandler::extraToInteger), VP_HELPER(DGUS_Addr::VOLUME_Level, 2, VPFLAG_NONE, nullptr, - &DGUSRxHandler::Volume, - &DGUSTxHandler::Volume), + &DGUSRxHandler::volume, + &DGUSTxHandler::volume), VP_HELPER(DGUS_Addr::BRIGHTNESS_Level, 2, VPFLAG_NONE, nullptr, - &DGUSRxHandler::Brightness, - &DGUSTxHandler::Brightness), + &DGUSRxHandler::brightness, + &DGUSTxHandler::brightness), // SPECIAL CASES - VP_HELPER_TX(DGUS_Addr::STATUS_Percent_Complete, &DGUSTxHandler::Percent), - VP_HELPER_RX_NODATA(DGUS_Addr::INFOS_Debug, &DGUSRxHandler::Debug), + VP_HELPER_TX(DGUS_Addr::STATUS_Percent_Complete, &DGUSTxHandler::percent), + VP_HELPER_RX_NODATA(DGUS_Addr::INFOS_Debug, &DGUSRxHandler::debug), VP_HELPER((DGUS_Addr)0, 0, VPFLAG_NONE, nullptr, nullptr, nullptr) diff --git a/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp b/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp index 6e8f2b010067..e9e3940a0805 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp @@ -33,7 +33,7 @@ namespace ExtUI { - void onStartup() { dgus_screen_handler.Init(); } + void onStartup() { screen.init(); } void onIdle() { static bool processing = false; @@ -41,45 +41,45 @@ namespace ExtUI { // Prevent recursion if (!processing) { processing = true; - dgus_screen_handler.Loop(); + screen.loop(); processing = false; } } void onPrinterKilled(FSTR_P const error, FSTR_P const component) { - dgus_screen_handler.printerKilled(error, component); + screen.printerKilled(error, component); } - void onMediaInserted() { TERN_(HAS_MEDIA, dgus_screen_handler.SDCardInserted()); } - void onMediaError() { TERN_(HAS_MEDIA, dgus_screen_handler.SDCardError()); } - void onMediaRemoved() { TERN_(HAS_MEDIA, dgus_screen_handler.SDCardRemoved()); } + void onMediaInserted() { TERN_(HAS_MEDIA, screen.sDCardInserted()); } + void onMediaError() { TERN_(HAS_MEDIA, screen.sdCardError()); } + void onMediaRemoved() { TERN_(HAS_MEDIA, screen.sdCardRemoved()); } void onPlayTone(const uint16_t frequency, const uint16_t duration) { - dgus_screen_handler.PlayTone(frequency, duration); + screen.playTone(frequency, duration); } void onPrintTimerStarted() { - dgus_screen_handler.PrintTimerStarted(); + screen.printTimerStarted(); } void onPrintTimerPaused() { - dgus_screen_handler.PrintTimerPaused(); + screen.printTimerPaused(); } void onPrintTimerStopped() { - dgus_screen_handler.PrintTimerStopped(); + screen.printTimerStopped(); } void onFilamentRunout(const extruder_t extruder) { - dgus_screen_handler.filamentRunout(extruder); + screen.filamentRunout(extruder); } void onUserConfirmRequired(const char * const msg) { - dgus_screen_handler.UserConfirmRequired(msg); + screen.userConfirmRequired(msg); } void onStatusChanged(const char * const msg) { - dgus_screen_handler.SetStatusMessage(msg); + screen.setStatusMessage(msg); } void onHomingStart() {} @@ -87,25 +87,25 @@ namespace ExtUI { void onPrintDone() {} void onFactoryReset() { - dgus_screen_handler.SettingsReset(); + screen.settingsReset(); } void onStoreSettings(char *buff) { - dgus_screen_handler.StoreSettings(buff); + screen.storeSettings(buff); } void onLoadSettings(const char *buff) { - dgus_screen_handler.LoadSettings(buff); + screen.loadSettings(buff); } void onPostprocessSettings() {} void onSettingsStored(const bool success) { - dgus_screen_handler.ConfigurationStoreWritten(success); + screen.configurationStoreWritten(success); } void onSettingsLoaded(const bool success) { - dgus_screen_handler.ConfigurationStoreRead(success); + screen.configurationStoreRead(success); } #if HAS_LEVELING @@ -115,12 +115,12 @@ namespace ExtUI { #if HAS_MESH void onMeshUpdate(const int8_t xpos, const int8_t ypos, const_float_t zval) { - dgus_screen_handler.MeshUpdate(xpos, ypos); + screen.meshUpdate(xpos, ypos); } void onMeshUpdate(const int8_t xpos, const int8_t ypos, const probe_state_t state) { if (state == G29_POINT_FINISH) - dgus_screen_handler.MeshUpdate(xpos, ypos); + screen.meshUpdate(xpos, ypos); } #endif @@ -133,14 +133,14 @@ namespace ExtUI { } void onPowerLossResume() { // Called on resume from power-loss - dgus_screen_handler.PowerLossResume(); + screen.powerLossResume(); } #endif #if HAS_PID_HEATING void onPidTuning(const result_t rst) { // Called for temperature PID tuning result - dgus_screen_handler.PidTuning(rst); + screen.pidTuning(rst); } #endif diff --git a/Marlin/src/lcd/extui/mks_ui/wifi_upload.cpp b/Marlin/src/lcd/extui/mks_ui/wifi_upload.cpp index 398d35fdc3f3..eaf41526e5d2 100644 --- a/Marlin/src/lcd/extui/mks_ui/wifi_upload.cpp +++ b/Marlin/src/lcd/extui/mks_ui/wifi_upload.cpp @@ -101,15 +101,17 @@ const char *resultMessages[] = { "slip data" }; -// A note on baud rates. -// The ESP8266 supports 921600, 460800, 230400, 115200, 74880 and some lower baud rates. -// 921600b is not reliable because even though it sometimes succeeds in connecting, we get a bad response during uploading after a few blocks. -// Probably our UART ISR cannot receive bytes fast enough, perhaps because of the latency of the system tick ISR. -// 460800b doesn't always manage to connect, but if it does then uploading appears to be reliable. -// 230400b always manages to connect. +/** + * Baud Rate Notes: + * The ESP8266 supports 921600, 460800, 230400, 115200, 74880 and some lower baud rates. + * 921600b is not reliable because even though it sometimes succeeds in connecting, we get a bad response during uploading after a few blocks. + * Probably our UART ISR cannot receive bytes fast enough, perhaps because of the latency of the system tick ISR. + * 460800b doesn't always manage to connect, but if it does then uploading appears to be reliable. + * 230400b always manages to connect. + */ static const uint32_t uploadBaudRates[] = { 460800, 230400, 115200, 74880 }; -signed char IsReady() { +signed char isReady() { return esp_upload.state == upload_idle; } @@ -170,15 +172,17 @@ void putData(uint32_t val, unsigned byteCnt, uint8_t *buf, int ofst) { } } -// Read a byte optionally performing SLIP decoding. The return values are: -// -// 2 - an escaped byte was read successfully -// 1 - a non-escaped byte was read successfully -// 0 - no data was available -// -1 - the value 0xC0 was encountered (shouldn't happen) -// -2 - a SLIP escape byte was found but the following byte wasn't available -// -3 - a SLIP escape byte was followed by an invalid byte -int ReadByte(uint8_t *data, signed char slipDecode) { +/** + * Read a byte optionally performing SLIP decoding. The return values are: + * + * 2 - an escaped byte was read successfully + * 1 - a non-escaped byte was read successfully + * 0 - no data was available + * -1 - the value 0xC0 was encountered (shouldn't happen) + * -2 - a SLIP escape byte was found but the following byte wasn't available + * -3 - a SLIP escape byte was followed by an invalid byte + */ +int readByte(uint8_t *data, signed char slipDecode) { if (uploadPort_available() == 0) return 0; // At least one byte is available @@ -206,31 +210,33 @@ void _writePacketRaw(const uint8_t *buf, size_t len) { } // Write a byte to the serial port optionally SLIP encoding. Return the number of bytes actually written. -void WriteByteRaw(uint8_t b) { +void writeByteRaw(uint8_t b) { uploadPort_write((const uint8_t *)&b, 1); } // Write a byte to the serial port optionally SLIP encoding. Return the number of bytes actually written. -void WriteByteSlip(const uint8_t b) { +void writeByteSlip(const uint8_t b) { if (b == 0xC0) { - WriteByteRaw(0xDB); - WriteByteRaw(0xDC); + writeByteRaw(0xDB); + writeByteRaw(0xDC); } else if (b == 0xDB) { - WriteByteRaw(0xDB); - WriteByteRaw(0xDD); + writeByteRaw(0xDB); + writeByteRaw(0xDD); } else uploadPort_write((const uint8_t *)&b, 1); } -// Wait for a data packet to be returned. If the body of the packet is -// non-zero length, return an allocated buffer indirectly containing the -// data and return the data length. Note that if the pointer for returning -// the data buffer is nullptr, the response is expected to be two bytes of zero. -// -// If an error occurs, return a negative value. Otherwise, return the number -// of bytes in the response (or zero if the response was not the standard "two bytes of zero"). +/** + * Wait for a data packet to be returned. If the body of the packet is + * non-zero length, return an allocated buffer indirectly containing the + * data and return the data length. Note that if the pointer for returning + * the data buffer is nullptr, the response is expected to be two bytes of zero. + * + * If an error occurs, return a negative value. Otherwise, return the number + * of bytes in the response (or zero if the response was not the standard "two bytes of zero"). + */ EspUploadResult readPacket(uint8_t op, uint32_t *valp, size_t *bodyLen, uint32_t msTimeout) { typedef enum { begin = 0, @@ -292,7 +298,7 @@ EspUploadResult readPacket(uint8_t op, uint32_t *valp, size_t *bodyLen, uint32_t case body: { // reading the response body int rslt; // retrieve a byte with SLIP decoding - rslt = ReadByte(&c, 1); + rslt = readByte(&c, 1); if (rslt != 1 && rslt != 2) { // some error occurred stat = (rslt == 0 || rslt == -2) ? slipData : slipFrame; @@ -370,19 +376,19 @@ void _writePacket(const uint8_t *data, size_t len) { // 0xC0 and 0xDB replaced by the two-byte sequences {0xDB, 0xDC} and {0xDB, 0xDD} respectively. void writePacket(const uint8_t *hdr, size_t hdrLen, const uint8_t *data, size_t dataLen) { - WriteByteRaw(0xC0); // send the packet start character + writeByteRaw(0xC0); // send the packet start character _writePacket(hdr, hdrLen); // send the header _writePacket(data, dataLen); // send the data block - WriteByteRaw(0xC0); // send the packet end character + writeByteRaw(0xC0); // send the packet end character } // Send a packet to the serial port while performing SLIP framing. The packet data comprises a header and an optional data block. // This is like writePacket except that it does a fast block write for both the header and the main data with no SLIP encoding. Used to send sync commands. void writePacketRaw(const uint8_t *hdr, size_t hdrLen, const uint8_t *data, size_t dataLen) { - WriteByteRaw(0xC0); // send the packet start character + writeByteRaw(0xC0); // send the packet start character _writePacketRaw(hdr, hdrLen); // send the header _writePacketRaw(data, dataLen); // send the data block in raw mode - WriteByteRaw(0xC0); // send the packet end character + writeByteRaw(0xC0); // send the packet end character } // Send a command to the attached device together with the supplied data, if any. @@ -418,7 +424,7 @@ EspUploadResult doCommand(uint8_t op, const uint8_t *data, size_t dataLen, uint3 // Send a synchronising packet to the serial port in an attempt to induce // the ESP8266 to auto-baud lock on the baud rate. -EspUploadResult Sync(uint16_t timeout) { +EspUploadResult sync(uint16_t timeout) { uint8_t buf[36]; EspUploadResult stat; int i; @@ -553,7 +559,7 @@ void upload_spin() { case connecting: if ((getWifiTickDiff(esp_upload.lastAttemptTime, getWifiTick()) >= connectAttemptInterval) && (getWifiTickDiff(esp_upload.lastResetTime, getWifiTick()) >= 500)) { - EspUploadResult res = Sync(5000); + EspUploadResult res = sync(5000); esp_upload.lastAttemptTime = getWifiTick(); if (res == success) esp_upload.state = erasing; @@ -622,7 +628,7 @@ void upload_spin() { } // Try to upload the given file at the given address -void SendUpdateFile(const char *file, uint32_t address) { +void sendUpdateFile(const char *file, uint32_t address) { const char * const fname = card.diveToFile(false, update_curDir, ESP_FIRMWARE_FILE); if (!update_file.open(update_curDir, fname, O_READ)) return; @@ -640,7 +646,7 @@ void SendUpdateFile(const char *file, uint32_t address) { static const uint32_t FirmwareAddress = 0x00000000, WebFilesAddress = 0x00100000; -void ResetWiFiForUpload(int begin_or_end) { +void resetWiFiForUpload(int begin_or_end) { //#if 0 uint32_t start = getWifiTick(); @@ -660,12 +666,12 @@ void ResetWiFiForUpload(int begin_or_end) { int32_t wifi_upload(int type) { esp_upload.retriesPerBaudRate = 9; - ResetWiFiForUpload(0); + resetWiFiForUpload(0); switch (type) { - case 0: SendUpdateFile(ESP_FIRMWARE_FILE, FirmwareAddress); break; - case 1: SendUpdateFile(ESP_WEB_FIRMWARE_FILE, FirmwareAddress); break; - case 2: SendUpdateFile(ESP_WEB_FILE, WebFilesAddress); break; + case 0: sendUpdateFile(ESP_FIRMWARE_FILE, FirmwareAddress); break; + case 1: sendUpdateFile(ESP_WEB_FIRMWARE_FILE, FirmwareAddress); break; + case 2: sendUpdateFile(ESP_WEB_FILE, WebFilesAddress); break; default: return -1; } @@ -674,7 +680,7 @@ int32_t wifi_upload(int type) { hal.watchdog_refresh(); } - ResetWiFiForUpload(1); + resetWiFiForUpload(1); return esp_upload.uploadResult == success ? 0 : -1; } diff --git a/Marlin/src/lcd/tft/canvas.cpp b/Marlin/src/lcd/tft/canvas.cpp index 3fb500e8e21b..0894f7afb94b 100644 --- a/Marlin/src/lcd/tft/canvas.cpp +++ b/Marlin/src/lcd/tft/canvas.cpp @@ -26,31 +26,31 @@ #include "canvas.h" -uint16_t CANVAS::width, CANVAS::height; -uint16_t CANVAS::startLine, CANVAS::endLine; -uint16_t CANVAS::background_color; -uint16_t *CANVAS::buffer = TFT::buffer; - -void CANVAS::New(uint16_t x, uint16_t y, uint16_t width, uint16_t height) { - CANVAS::width = width; - CANVAS::height = height; +uint16_t Canvas::width, Canvas::height; +uint16_t Canvas::startLine, Canvas::endLine; +uint16_t Canvas::background_color; +uint16_t *Canvas::buffer = TFT::buffer; + +void Canvas::instantiate(uint16_t x, uint16_t y, uint16_t width, uint16_t height) { + Canvas::width = width; + Canvas::height = height; startLine = 0; endLine = 0; tft.set_window(x, y, x + width - 1, y + height - 1); } -void CANVAS::Continue() { +void Canvas::next() { startLine = endLine; endLine = TFT_BUFFER_SIZE < width * (height - startLine) ? startLine + TFT_BUFFER_SIZE / width : height; } -bool CANVAS::ToScreen() { +bool Canvas::toScreen() { tft.write_sequence(buffer, width * (endLine - startLine)); return endLine == height; } -void CANVAS::SetBackground(uint16_t color) { +void Canvas::setBackground(uint16_t color) { /* TODO: test and optimize performance */ /* uint32_t count = (endLine - startLine) * width; @@ -67,35 +67,35 @@ void CANVAS::SetBackground(uint16_t color) { extern uint16_t gradient(uint16_t colorA, uint16_t colorB, uint16_t factor); -void CANVAS::AddText(uint16_t x, uint16_t y, uint16_t color, uint16_t *string, uint16_t maxWidth) { - if (endLine < y || startLine > y + GetFontHeight()) return; +void Canvas::addText(uint16_t x, uint16_t y, uint16_t color, uint16_t *string, uint16_t maxWidth) { + if (endLine < y || startLine > y + getFontHeight()) return; if (maxWidth == 0) maxWidth = width - x; uint16_t colors[16]; uint16_t stringWidth = 0; - if (GetFontType() == FONT_MARLIN_GLYPHS_2BPP) { + if (getFontType() == FONT_MARLIN_GLYPHS_2BPP) { for (uint8_t i = 0; i < 3; i++) { colors[i] = gradient(ENDIAN_COLOR(color), ENDIAN_COLOR(background_color), ((i+1) << 8) / 3); colors[i] = ENDIAN_COLOR(colors[i]); } } for (uint16_t i = 0 ; *(string + i) ; i++) { - glyph_t *glyph = Glyph(string + i); - if (stringWidth + glyph->BBXWidth > maxWidth) break; - switch (GetFontType()) { + glyph_t *pGlyph = glyph(string + i); + if (stringWidth + pGlyph->BBXWidth > maxWidth) break; + switch (getFontType()) { case FONT_MARLIN_GLYPHS_1BPP: - AddImage(x + stringWidth + glyph->BBXOffsetX, y + GetFontAscent() - glyph->BBXHeight - glyph->BBXOffsetY, glyph->BBXWidth, glyph->BBXHeight, GREYSCALE1, ((uint8_t *)glyph) + sizeof(glyph_t), &color); + addImage(x + stringWidth + pGlyph->BBXOffsetX, y + getFontAscent() - pGlyph->BBXHeight - pGlyph->BBXOffsetY, pGlyph->BBXWidth, pGlyph->BBXHeight, GREYSCALE1, ((uint8_t *)glyph) + sizeof(glyph_t), &color); break; case FONT_MARLIN_GLYPHS_2BPP: - AddImage(x + stringWidth + glyph->BBXOffsetX, y + GetFontAscent() - glyph->BBXHeight - glyph->BBXOffsetY, glyph->BBXWidth, glyph->BBXHeight, GREYSCALE2, ((uint8_t *)glyph) + sizeof(glyph_t), colors); + addImage(x + stringWidth + pGlyph->BBXOffsetX, y + getFontAscent() - pGlyph->BBXHeight - pGlyph->BBXOffsetY, pGlyph->BBXWidth, pGlyph->BBXHeight, GREYSCALE2, ((uint8_t *)glyph) + sizeof(glyph_t), colors); break; } - stringWidth += glyph->DWidth; + stringWidth += pGlyph->DWidth; } } -void CANVAS::AddImage(int16_t x, int16_t y, MarlinImage image, uint16_t *colors) { +void Canvas::addImage(int16_t x, int16_t y, MarlinImage image, uint16_t *colors) { uint16_t *data = (uint16_t *)Images[image].data; if (!data) return; @@ -104,7 +104,7 @@ void CANVAS::AddImage(int16_t x, int16_t y, MarlinImage image, uint16_t *colors) colorMode_t color_mode = Images[image].colorMode; if (color_mode != HIGHCOLOR) - return AddImage(x, y, image_width, image_height, color_mode, (uint8_t *)data, colors); + return addImage(x, y, image_width, image_height, color_mode, (uint8_t *)data, colors); // HIGHCOLOR - 16 bits per pixel @@ -123,7 +123,7 @@ void CANVAS::AddImage(int16_t x, int16_t y, MarlinImage image, uint16_t *colors) } } -void CANVAS::AddImage(int16_t x, int16_t y, uint8_t image_width, uint8_t image_height, colorMode_t color_mode, uint8_t *data, uint16_t *colors) { +void Canvas::addImage(int16_t x, int16_t y, uint8_t image_width, uint8_t image_height, colorMode_t color_mode, uint8_t *data, uint16_t *colors) { uint8_t bitsPerPixel; switch (color_mode) { case GREYSCALE1: bitsPerPixel = 1; break; @@ -161,7 +161,7 @@ void CANVAS::AddImage(int16_t x, int16_t y, uint8_t image_width, uint8_t image_h } } -void CANVAS::AddRectangle(uint16_t x, uint16_t y, uint16_t rectangleWidth, uint16_t rectangleHeight, uint16_t color) { +void Canvas::addRect(uint16_t x, uint16_t y, uint16_t rectangleWidth, uint16_t rectangleHeight, uint16_t color) { if (endLine < y || startLine > y + rectangleHeight) return; for (uint16_t i = 0; i < rectangleHeight; i++) { @@ -180,7 +180,7 @@ void CANVAS::AddRectangle(uint16_t x, uint16_t y, uint16_t rectangleWidth, uint1 } } -void CANVAS::AddBar(uint16_t x, uint16_t y, uint16_t barWidth, uint16_t barHeight, uint16_t color) { +void Canvas::addBar(uint16_t x, uint16_t y, uint16_t barWidth, uint16_t barHeight, uint16_t color) { if (endLine < y || startLine > y + barHeight) return; for (uint16_t i = 0; i < barHeight; i++) { @@ -192,6 +192,6 @@ void CANVAS::AddBar(uint16_t x, uint16_t y, uint16_t barWidth, uint16_t barHeigh } } -CANVAS Canvas; +Canvas tftCanvas; #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/canvas.h b/Marlin/src/lcd/tft/canvas.h index 1c9c7bb13a27..d271ae7af3f7 100644 --- a/Marlin/src/lcd/tft/canvas.h +++ b/Marlin/src/lcd/tft/canvas.h @@ -28,32 +28,32 @@ #include "../../inc/MarlinConfig.h" -class CANVAS { +class Canvas { private: static uint16_t background_color; static uint16_t width, height; static uint16_t startLine, endLine; static uint16_t *buffer; - inline static glyph_t *Glyph(uint16_t *character) { return TFT_String::glyph(character); } - inline static uint16_t GetFontType() { return TFT_String::font_type(); } - inline static uint16_t GetFontAscent() { return TFT_String::font_ascent(); } - inline static uint16_t GetFontHeight() { return TFT_String::font_height(); } + inline static glyph_t *glyph(uint16_t *character) { return TFT_String::glyph(character); } + inline static uint16_t getFontType() { return TFT_String::font_type(); } + inline static uint16_t getFontAscent() { return TFT_String::font_ascent(); } + inline static uint16_t getFontHeight() { return TFT_String::font_height(); } - static void AddImage(int16_t x, int16_t y, uint8_t image_width, uint8_t image_height, colorMode_t color_mode, uint8_t *data, uint16_t *colors); - static void AddImage(uint16_t x, uint16_t y, uint16_t imageWidth, uint16_t imageHeight, uint16_t color, uint16_t bgColor, uint8_t *image); + static void addImage(int16_t x, int16_t y, uint8_t image_width, uint8_t image_height, colorMode_t color_mode, uint8_t *data, uint16_t *colors); + static void addImage(uint16_t x, uint16_t y, uint16_t imageWidth, uint16_t imageHeight, uint16_t color, uint16_t bgColor, uint8_t *image); public: - static void New(uint16_t x, uint16_t y, uint16_t width, uint16_t height); - static void Continue(); - static bool ToScreen(); + static void instantiate(uint16_t x, uint16_t y, uint16_t width, uint16_t height); + static void next(); + static bool toScreen(); - static void SetBackground(uint16_t color); - static void AddText(uint16_t x, uint16_t y, uint16_t color, uint16_t *string, uint16_t maxWidth); - static void AddImage(int16_t x, int16_t y, MarlinImage image, uint16_t *colors); + static void setBackground(uint16_t color); + static void addText(uint16_t x, uint16_t y, uint16_t color, uint16_t *string, uint16_t maxWidth); + static void addImage(int16_t x, int16_t y, MarlinImage image, uint16_t *colors); - static void AddRectangle(uint16_t x, uint16_t y, uint16_t width, uint16_t height, uint16_t color); - static void AddBar(uint16_t x, uint16_t y, uint16_t width, uint16_t height, uint16_t color); + static void addRect(uint16_t x, uint16_t y, uint16_t width, uint16_t height, uint16_t color); + static void addBar(uint16_t x, uint16_t y, uint16_t width, uint16_t height, uint16_t color); }; -extern CANVAS Canvas; +extern Canvas tftCanvas; diff --git a/Marlin/src/lcd/tft/tft_queue.cpp b/Marlin/src/lcd/tft/tft_queue.cpp index 1cec4a715947..fb96a440eaa8 100644 --- a/Marlin/src/lcd/tft/tft_queue.cpp +++ b/Marlin/src/lcd/tft/tft_queue.cpp @@ -107,17 +107,17 @@ void TFT_Queue::canvas(queueTask_t *task) { if (task->state == TASK_STATE_READY) { task->state = TASK_STATE_IN_PROGRESS; - Canvas.New(task_parameters->x, task_parameters->y, task_parameters->width, task_parameters->height); + tftCanvas.instantiate(task_parameters->x, task_parameters->y, task_parameters->width, task_parameters->height); } - Canvas.Continue(); + tftCanvas.next(); for (i = 0; i < task_parameters->count; i++) { switch (*item) { case CANVAS_SET_BACKGROUND: - Canvas.SetBackground(((parametersCanvasBackground_t *)item)->color); + tftCanvas.setBackground(((parametersCanvasBackground_t *)item)->color); break; case CANVAS_ADD_TEXT: - Canvas.AddText(((parametersCanvasText_t *)item)->x, ((parametersCanvasText_t *)item)->y, ((parametersCanvasText_t *)item)->color, (uint16_t*)(item + sizeof(parametersCanvasText_t)), ((parametersCanvasText_t *)item)->maxWidth); + tftCanvas.addText(((parametersCanvasText_t *)item)->x, ((parametersCanvasText_t *)item)->y, ((parametersCanvasText_t *)item)->color, (uint16_t*)(item + sizeof(parametersCanvasText_t)), ((parametersCanvasText_t *)item)->maxWidth); break; case CANVAS_ADD_IMAGE: @@ -126,20 +126,20 @@ void TFT_Queue::canvas(queueTask_t *task) { image = ((parametersCanvasImage_t *)item)->image; colors = (uint16_t *)(item + sizeof(parametersCanvasImage_t)); - Canvas.AddImage(((parametersCanvasImage_t *)item)->x, ((parametersCanvasImage_t *)item)->y, image, colors); + tftCanvas.addImage(((parametersCanvasImage_t *)item)->x, ((parametersCanvasImage_t *)item)->y, image, colors); break; case CANVAS_ADD_BAR: - Canvas.AddBar(((parametersCanvasBar_t *)item)->x, ((parametersCanvasBar_t *)item)->y, ((parametersCanvasBar_t *)item)->width, ((parametersCanvasBar_t *)item)->height, ((parametersCanvasBar_t *)item)->color); + tftCanvas.addBar(((parametersCanvasBar_t *)item)->x, ((parametersCanvasBar_t *)item)->y, ((parametersCanvasBar_t *)item)->width, ((parametersCanvasBar_t *)item)->height, ((parametersCanvasBar_t *)item)->color); break; - case CANVAS_ADD_RECTANGLE: - Canvas.AddRectangle(((parametersCanvasRectangle_t *)item)->x, ((parametersCanvasRectangle_t *)item)->y, ((parametersCanvasRectangle_t *)item)->width, ((parametersCanvasRectangle_t *)item)->height, ((parametersCanvasRectangle_t *)item)->color); + case CANVAS_ADD_RECT: + tftCanvas.addRect(((parametersCanvasRectangle_t *)item)->x, ((parametersCanvasRectangle_t *)item)->y, ((parametersCanvasRectangle_t *)item)->width, ((parametersCanvasRectangle_t *)item)->height, ((parametersCanvasRectangle_t *)item)->color); break; } item = ((parametersCanvasBackground_t *)item)->nextParameter; } - if (Canvas.ToScreen()) task->state = TASK_STATE_COMPLETED; + if (tftCanvas.toScreen()) task->state = TASK_STATE_COMPLETED; } void TFT_Queue::fill(uint16_t x, uint16_t y, uint16_t width, uint16_t height, uint16_t color) { @@ -265,7 +265,7 @@ void TFT_Queue::add_text(uint16_t x, uint16_t y, uint16_t color, const uint16_t end_of_queue += sizeof(parametersCanvasText_t); uint16_t *character = (uint16_t *)end_of_queue; - /* TODO: Deal with maxWidth */ + // TODO: Deal with maxWidth while ((*character++ = *pointer++) != 0); end_of_queue = (uint8_t *)character; @@ -373,7 +373,7 @@ void TFT_Queue::add_rectangle(uint16_t x, uint16_t y, uint16_t width, uint16_t h parametersCanvasRectangle_t *parameters = (parametersCanvasRectangle_t *)end_of_queue; last_parameter = end_of_queue; - parameters->type = CANVAS_ADD_RECTANGLE; + parameters->type = CANVAS_ADD_RECT; parameters->x = x; parameters->y = y; parameters->width = width; diff --git a/Marlin/src/lcd/tft/tft_queue.h b/Marlin/src/lcd/tft/tft_queue.h index ed929166cb98..59a13dd43a46 100644 --- a/Marlin/src/lcd/tft/tft_queue.h +++ b/Marlin/src/lcd/tft/tft_queue.h @@ -47,7 +47,7 @@ enum CanvasSubtype : uint8_t { CANVAS_ADD_TEXT, CANVAS_ADD_IMAGE, CANVAS_ADD_BAR, - CANVAS_ADD_RECTANGLE, + CANVAS_ADD_RECT, }; typedef struct __attribute__((__packed__)) { diff --git a/Marlin/src/libs/duration_t.h b/Marlin/src/libs/duration_t.h index 69a648441feb..e45ce01496c7 100644 --- a/Marlin/src/libs/duration_t.h +++ b/Marlin/src/libs/duration_t.h @@ -67,7 +67,7 @@ struct duration_t { } /** - * @brief Formats the duration as years + * @brief Format the duration as years * @return The number of years */ inline uint8_t year() const { @@ -75,7 +75,7 @@ struct duration_t { } /** - * @brief Formats the duration as days + * @brief Format the duration as days * @return The number of days */ inline uint16_t day() const { @@ -83,7 +83,7 @@ struct duration_t { } /** - * @brief Formats the duration as hours + * @brief Format the duration as hours * @return The number of hours */ inline uint32_t hour() const { @@ -91,7 +91,7 @@ struct duration_t { } /** - * @brief Formats the duration as minutes + * @brief Format the duration as minutes * @return The number of minutes */ inline uint32_t minute() const { @@ -99,7 +99,7 @@ struct duration_t { } /** - * @brief Formats the duration as seconds + * @brief Format the duration as seconds * @return The number of seconds */ inline uint32_t second() const { @@ -112,7 +112,7 @@ struct duration_t { #endif /** - * @brief Formats the duration as a string + * @brief Format the duration as a string * @details String will be formatted using a "full" representation of duration * * @param buffer The array pointed to must be able to accommodate 22 bytes @@ -142,7 +142,7 @@ struct duration_t { } /** - * @brief Formats the duration as a string + * @brief Format the duration as a string * @details String will be formatted using a "digital" representation of duration * * @param buffer The array pointed to must be able to accommodate 10 bytes From 32be4065efeafe781e007ca6ff47bd5a3fc22184 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 31 May 2023 16:47:05 -0500 Subject: [PATCH 238/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20num?= =?UTF-8?q?tostr=20use=20functions?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/libs/numtostr.cpp | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/Marlin/src/libs/numtostr.cpp b/Marlin/src/libs/numtostr.cpp index 2938229a7ae1..c34faf68ff7a 100644 --- a/Marlin/src/libs/numtostr.cpp +++ b/Marlin/src/libs/numtostr.cpp @@ -25,14 +25,25 @@ #include "../inc/MarlinConfigPre.h" #include "../core/utility.h" -char conv[9] = { 0 }; +constexpr char DIGIT(const uint8_t n) { return '0' + n; } + +template +constexpr char DIGIMOD(const T1 n, const T2 f) { return DIGIT((n / f) % 10); } + +template +constexpr char RJDIGIT(const T1 n, const T2 f) { return (n >= f ? DIGIMOD(n, f) : ' '); } + +template +constexpr char MINUSOR(T &n, const char alt) { return (n >= 0) ? alt : (n = -n) ? '-' : '-'; } -#define DIGIT(n) ('0' + (n)) -#define DIGIMOD(n, f) DIGIT(((n)/(f)) % 10) -#define RJDIGIT(n, f) ((n) >= (f) ? DIGIMOD(n, f) : ' ') -#define MINUSOR(n, alt) (n >= 0 ? (alt) : (n = -n, '-')) -#define INTFLOAT(V,N) (((V) * 10 * pow(10, N) + ((V) < 0 ? -5: 5)) / 10) // pow10? -#define UINTFLOAT(V,N) INTFLOAT((V) < 0 ? -(V) : (V), N) +constexpr long INTFLOAT(const float V, const int N) { + return long((V * 10.0f * pow(10.0f, N) + (V < 0.0f ? -5.0f : 5.0f)) / 10.0f); +} +constexpr long UINTFLOAT(const float V, const int N) { + return INTFLOAT(V < 0.0f ? -V : V, N); +} + +char conv[9] = { 0 }; // Format uint8_t (0-100) as rj string with 123% / _12% / __1% format const char* pcttostrpctrj(const uint8_t i) { From 2691167afe02fbbe74b0fdca2c28a49fac635741 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 2 Jun 2023 14:26:02 -0500 Subject: [PATCH 239/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Dum?= =?UTF-8?q?p=20BOTH=20and=20EITHER=20macros=20(#25908)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration.h | 16 +- Marlin/Configuration_adv.h | 38 ++-- Marlin/src/HAL/AVR/MarlinSerial.h | 2 +- Marlin/src/HAL/AVR/eeprom.cpp | 2 +- Marlin/src/HAL/AVR/inc/SanityCheck.h | 4 +- Marlin/src/HAL/DUE/HAL_SPI.cpp | 2 +- Marlin/src/HAL/DUE/inc/Conditionals_post.h | 2 +- Marlin/src/HAL/ESP32/HAL.cpp | 2 +- Marlin/src/HAL/ESP32/inc/SanityCheck.h | 8 +- Marlin/src/HAL/ESP32/ota.cpp | 2 +- Marlin/src/HAL/ESP32/spiffs.cpp | 2 +- Marlin/src/HAL/ESP32/u8g_esp32_spi.cpp | 4 +- Marlin/src/HAL/ESP32/web.cpp | 2 +- Marlin/src/HAL/LINUX/spi_pins.h | 2 +- .../src/HAL/LPC1768/inc/Conditionals_post.h | 2 +- Marlin/src/HAL/LPC1768/spi_pins.h | 2 +- .../u8g/u8g_com_HAL_LPC1768_sw_spi.cpp | 10 +- Marlin/src/HAL/NATIVE_SIM/spi_pins.h | 2 +- .../src/HAL/NATIVE_SIM/u8g/u8g_com_sw_spi.cpp | 10 +- Marlin/src/HAL/SAMD21/HAL_SPI.cpp | 2 +- Marlin/src/HAL/SAMD21/inc/Conditionals_post.h | 2 +- Marlin/src/HAL/SAMD51/HAL_SPI.cpp | 2 +- Marlin/src/HAL/SAMD51/inc/Conditionals_post.h | 2 +- Marlin/src/HAL/STM32/inc/Conditionals_adv.h | 2 +- Marlin/src/HAL/STM32/inc/Conditionals_post.h | 2 +- Marlin/src/HAL/STM32/timers.cpp | 6 +- Marlin/src/HAL/STM32/usb_host.cpp | 2 +- Marlin/src/HAL/STM32F1/HAL.cpp | 2 +- Marlin/src/HAL/STM32F1/HAL.h | 2 +- Marlin/src/HAL/STM32F1/MarlinSerial.cpp | 2 +- Marlin/src/HAL/STM32F1/MarlinSerial.h | 2 +- .../STM32F1/dogm/u8g_com_stm32duino_swspi.cpp | 2 +- .../src/HAL/STM32F1/inc/Conditionals_post.h | 2 +- Marlin/src/HAL/STM32F1/pinsDebug.h | 2 +- Marlin/src/HAL/STM32F1/sdio.cpp | 2 +- Marlin/src/HAL/shared/HAL_ST7920.h | 2 +- Marlin/src/HAL/shared/eeprom_api.cpp | 2 +- Marlin/src/MarlinCore.cpp | 22 +-- Marlin/src/core/language.h | 2 +- Marlin/src/core/macros.h | 12 +- Marlin/src/feature/babystep.cpp | 2 +- Marlin/src/feature/babystep.h | 4 +- Marlin/src/feature/backlash.cpp | 2 +- Marlin/src/feature/bedlevel/bedlevel.cpp | 6 +- Marlin/src/feature/bedlevel/bedlevel.h | 6 +- Marlin/src/feature/cancel_object.cpp | 2 +- Marlin/src/feature/cooler.cpp | 2 +- Marlin/src/feature/host_actions.cpp | 6 +- Marlin/src/feature/leds/leds.cpp | 14 +- Marlin/src/feature/leds/leds.h | 4 +- Marlin/src/feature/leds/neopixel.cpp | 2 +- Marlin/src/feature/leds/neopixel.h | 2 +- Marlin/src/feature/mixing.cpp | 4 +- Marlin/src/feature/mixing.h | 2 +- Marlin/src/feature/mmu/mmu2.cpp | 2 +- Marlin/src/feature/pause.cpp | 12 +- Marlin/src/feature/pause.h | 2 +- Marlin/src/feature/power.cpp | 14 +- Marlin/src/feature/power.h | 4 +- Marlin/src/feature/powerloss.cpp | 2 +- Marlin/src/feature/solenoid.cpp | 2 +- Marlin/src/gcode/bedlevel/G35.cpp | 2 +- Marlin/src/gcode/bedlevel/abl/G29.cpp | 14 +- Marlin/src/gcode/calibrate/G28.cpp | 8 +- Marlin/src/gcode/calibrate/G34_M422.cpp | 4 +- Marlin/src/gcode/calibrate/G76_M871.cpp | 2 +- Marlin/src/gcode/calibrate/M100.cpp | 2 +- Marlin/src/gcode/calibrate/M666.cpp | 2 +- Marlin/src/gcode/control/M380_M381.cpp | 2 +- Marlin/src/gcode/control/M7-M9.cpp | 2 +- Marlin/src/gcode/control/M80_M81.cpp | 2 +- Marlin/src/gcode/control/T.cpp | 2 +- Marlin/src/gcode/feature/pause/M125.cpp | 2 +- Marlin/src/gcode/feature/pause/M701_M702.cpp | 2 +- Marlin/src/gcode/gcode.cpp | 22 +-- Marlin/src/gcode/gcode.h | 18 +- Marlin/src/gcode/geometry/G92.cpp | 14 +- Marlin/src/gcode/motion/G0_G1.cpp | 6 +- Marlin/src/gcode/parser.cpp | 2 +- Marlin/src/gcode/probe/G30.cpp | 2 +- Marlin/src/gcode/sd/M1001.cpp | 2 +- Marlin/src/gcode/sd/M34.cpp | 2 +- Marlin/src/inc/Conditionals_LCD.h | 88 ++++----- Marlin/src/inc/Conditionals_adv.h | 36 ++-- Marlin/src/inc/Conditionals_post.h | 61 +++--- Marlin/src/inc/SanityCheck.h | 186 +++++++++--------- Marlin/src/inc/Warnings.cpp | 10 +- Marlin/src/lcd/HD44780/marlinui_HD44780.cpp | 14 +- Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp | 12 +- Marlin/src/lcd/buttons.h | 4 +- Marlin/src/lcd/dogm/dogm_Statusscreen.h | 16 +- Marlin/src/lcd/dogm/marlinui_DOGM.cpp | 2 +- Marlin/src/lcd/dogm/marlinui_DOGM.h | 4 +- Marlin/src/lcd/dogm/status_screen_DOGM.cpp | 14 +- Marlin/src/lcd/e3v2/creality/dwin.cpp | 20 +- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 6 +- Marlin/src/lcd/e3v2/marlinui/ui_common.cpp | 2 +- .../lcd/e3v2/marlinui/ui_status_480x272.cpp | 2 +- Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp | 2 +- Marlin/src/lcd/e3v2/proui/dwin.cpp | 36 ++-- Marlin/src/lcd/e3v2/proui/dwin.h | 16 +- Marlin/src/lcd/e3v2/proui/dwin_defines.h | 2 +- Marlin/src/lcd/e3v2/proui/endstop_diag.cpp | 2 +- Marlin/src/lcd/e3v2/proui/gcode_preview.cpp | 2 +- Marlin/src/lcd/e3v2/proui/lockscreen.cpp | 2 +- Marlin/src/lcd/e3v2/proui/meshviewer.cpp | 2 +- Marlin/src/lcd/e3v2/proui/plot.cpp | 2 +- Marlin/src/lcd/e3v2/proui/printstats.cpp | 2 +- Marlin/src/lcd/extui/anycubic/Tunes.cpp | 2 +- .../anycubic_i3mega/anycubic_i3mega_lcd.cpp | 2 +- .../lcd/extui/dgus/mks/DGUSScreenHandler.cpp | 12 +- Marlin/src/lcd/extui/example/example.cpp | 2 +- .../cocoa_press/leveling_menu.cpp | 2 +- .../cocoa_press/main_menu.cpp | 4 +- .../ftdi_eve_lib/basic/commands.cpp | 2 +- .../ftdi_eve_touch_ui/ftdi_eve_lib/compat.h | 7 +- .../extended/unicode/font_size_t.cpp | 2 +- .../extended/unicode/standard_char_set.cpp | 2 +- .../ftdi_eve_lib/extended/unicode/unicode.cpp | 2 +- .../generic/about_screen.cpp | 8 +- .../generic/advanced_settings_menu.cpp | 8 +- .../generic/endstop_state_screen.cpp | 2 +- .../generic/leveling_menu.cpp | 6 +- .../extui/ftdi_eve_touch_ui/generic/screens.h | 4 +- .../ftdi_eve_touch_ui/generic/tune_menu.cpp | 8 +- .../extui/ftdi_eve_touch_ui/theme/colors.h | 4 +- .../draw_auto_level_offset_settings.cpp | 2 +- .../src/lcd/extui/mks_ui/draw_cloud_bind.cpp | 2 +- .../lcd/extui/mks_ui/draw_jerk_settings.cpp | 2 +- .../lcd/extui/mks_ui/draw_media_select.cpp | 2 +- .../lcd/extui/mks_ui/draw_pause_message.cpp | 2 +- .../mks_ui/draw_tmc_current_settings.cpp | 2 +- .../mks_ui/draw_tmc_step_mode_settings.cpp | 2 +- .../extui/mks_ui/draw_touch_calibration.cpp | 2 +- Marlin/src/lcd/extui/mks_ui/draw_ui.cpp | 2 +- .../lcd/extui/mks_ui/draw_z_offset_wizard.cpp | 2 +- Marlin/src/lcd/extui/mks_ui/irq_overrid.cpp | 2 +- Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp | 2 +- Marlin/src/lcd/extui/mks_ui/mks_hardware.h | 2 +- .../extui/mks_ui/tft_lvgl_configuration.cpp | 4 +- .../src/lcd/extui/mks_ui/wifiSerial_STM32.cpp | 2 +- .../lcd/extui/mks_ui/wifiSerial_STM32F1.cpp | 2 +- Marlin/src/lcd/extui/mks_ui/wifi_module.cpp | 2 +- Marlin/src/lcd/extui/mks_ui/wifi_upload.cpp | 2 +- Marlin/src/lcd/extui/nextion/nextion_tft.cpp | 4 +- Marlin/src/lcd/extui/ui_api.cpp | 2 +- Marlin/src/lcd/marlinui.cpp | 42 ++-- Marlin/src/lcd/marlinui.h | 28 +-- Marlin/src/lcd/menu/menu.cpp | 2 +- Marlin/src/lcd/menu/menu_advanced.cpp | 10 +- Marlin/src/lcd/menu/menu_backlash.cpp | 4 +- Marlin/src/lcd/menu/menu_bed_leveling.cpp | 6 +- Marlin/src/lcd/menu/menu_bed_tramming.cpp | 10 +- Marlin/src/lcd/menu/menu_cancelobject.cpp | 2 +- Marlin/src/lcd/menu/menu_configuration.cpp | 6 +- Marlin/src/lcd/menu/menu_delta_calibrate.cpp | 2 +- Marlin/src/lcd/menu/menu_filament.cpp | 2 +- Marlin/src/lcd/menu/menu_info.cpp | 2 +- Marlin/src/lcd/menu/menu_job_recovery.cpp | 2 +- Marlin/src/lcd/menu/menu_led.cpp | 2 +- Marlin/src/lcd/menu/menu_main.cpp | 10 +- Marlin/src/lcd/menu/menu_media.cpp | 2 +- Marlin/src/lcd/menu/menu_mixer.cpp | 2 +- Marlin/src/lcd/menu/menu_mmu2.cpp | 2 +- Marlin/src/lcd/menu/menu_motion.cpp | 6 +- Marlin/src/lcd/menu/menu_password.cpp | 2 +- Marlin/src/lcd/menu/menu_temperature.cpp | 2 +- Marlin/src/lcd/menu/menu_touch_screen.cpp | 2 +- Marlin/src/lcd/menu/menu_tramming_wizard.cpp | 2 +- Marlin/src/lcd/menu/menu_tune.cpp | 2 +- Marlin/src/lcd/menu/menu_ubl.cpp | 2 +- Marlin/src/lcd/menu/menu_x_twist.cpp | 2 +- Marlin/src/lcd/tft/ui_1024x600.cpp | 8 +- Marlin/src/lcd/tft/ui_320x240.cpp | 8 +- Marlin/src/lcd/tft/ui_480x320.cpp | 8 +- Marlin/src/libs/nozzle.cpp | 4 +- Marlin/src/module/endstops.cpp | 6 +- Marlin/src/module/motion.cpp | 26 +-- Marlin/src/module/motion.h | 2 +- Marlin/src/module/planner.cpp | 16 +- Marlin/src/module/planner.h | 4 +- Marlin/src/module/printcounter.h | 2 +- Marlin/src/module/probe.cpp | 20 +- Marlin/src/module/probe.h | 2 +- Marlin/src/module/scara.cpp | 2 +- Marlin/src/module/settings.cpp | 18 +- Marlin/src/module/stepper.cpp | 20 +- Marlin/src/module/stepper.h | 10 +- Marlin/src/module/temperature.cpp | 52 ++--- Marlin/src/module/temperature.h | 22 +-- Marlin/src/module/tool_change.cpp | 8 +- .../pins/esp32/pins_GODI_CONTROLLER_V1_0.h | 2 +- Marlin/src/pins/esp32/pins_MKS_TINYBEE.h | 2 +- Marlin/src/pins/linux/pins_RAMPS_LINUX.h | 6 +- Marlin/src/pins/lpc1768/pins_BIQU_B300_V1.0.h | 2 +- Marlin/src/pins/lpc1768/pins_BIQU_BQ111_A4.h | 2 +- Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h | 2 +- Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h | 2 +- Marlin/src/pins/lpc1768/pins_BTT_SKR_common.h | 4 +- Marlin/src/pins/lpc1768/pins_MKS_SBASE.h | 4 +- Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h | 2 +- Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h | 8 +- Marlin/src/pins/lpc1769/pins_AZTEEG_X5_GT.h | 2 +- Marlin/src/pins/lpc1769/pins_AZTEEG_X5_MINI.h | 2 +- .../src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h | 2 +- .../src/pins/lpc1769/pins_COHESION3D_REMIX.h | 2 +- Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h | 2 +- Marlin/src/pins/lpc1769/pins_SMOOTHIEBOARD.h | 2 +- Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h | 2 +- Marlin/src/pins/pins.h | 4 +- Marlin/src/pins/pinsDebug.h | 8 +- Marlin/src/pins/rambo/pins_RAMBO.h | 2 +- Marlin/src/pins/rambo/pins_SCOOVO_X9H.h | 2 +- Marlin/src/pins/ramps/pins_3DRAG.h | 2 +- Marlin/src/pins/ramps/pins_AZTEEG_X3.h | 2 +- Marlin/src/pins/ramps/pins_AZTEEG_X3_PRO.h | 4 +- Marlin/src/pins/ramps/pins_FYSETC_F6_13.h | 2 +- Marlin/src/pins/ramps/pins_K8400.h | 2 +- Marlin/src/pins/ramps/pins_LONGER3D_LKx_PRO.h | 2 +- Marlin/src/pins/ramps/pins_MKS_GEN_13.h | 2 +- Marlin/src/pins/ramps/pins_RAMPS.h | 20 +- Marlin/src/pins/ramps/pins_RUMBA.h | 4 +- Marlin/src/pins/ramps/pins_TRIGORILLA_14.h | 6 +- Marlin/src/pins/ramps/pins_TT_OSCAR.h | 6 +- Marlin/src/pins/ramps/pins_ULTIMAKER_OLD.h | 10 +- Marlin/src/pins/ramps/pins_ZRIB_V53.h | 4 +- Marlin/src/pins/sam/env_validate.h | 2 +- Marlin/src/pins/sam/pins_KRATOS32.h | 2 +- Marlin/src/pins/sam/pins_RADDS.h | 2 +- Marlin/src/pins/sam/pins_RAMPS_DUO.h | 2 +- Marlin/src/pins/sam/pins_RAMPS_FD_V1.h | 4 +- Marlin/src/pins/sam/pins_RURAMPS4D_11.h | 4 +- Marlin/src/pins/sam/pins_RURAMPS4D_13.h | 4 +- .../src/pins/samd/pins_BRICOLEMON_LITE_V1_0.h | 10 +- Marlin/src/pins/samd/pins_BRICOLEMON_V1_0.h | 10 +- Marlin/src/pins/samd/pins_MINITRONICS20.h | 10 +- Marlin/src/pins/samd/pins_RAMPS_144.h | 10 +- .../pins/sanguino/pins_MELZI_CREALITY_E2.h | 2 +- Marlin/src/pins/sanguino/pins_MELZI_TRONXY.h | 2 +- .../src/pins/sanguino/pins_SANGUINOLOLU_11.h | 4 +- Marlin/src/pins/sanguino/pins_ZMIB_V2.h | 10 +- Marlin/src/pins/sensitive_pins.h | 2 +- Marlin/src/pins/stm32f1/pins_BEAST.h | 2 +- Marlin/src/pins/stm32f1/pins_BTT_SKR_E3_DIP.h | 8 +- .../stm32f1/pins_BTT_SKR_MINI_E3_common.h | 8 +- .../src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h | 6 +- .../src/pins/stm32f1/pins_CCROBOT_MEEB_3DP.h | 2 +- Marlin/src/pins/stm32f1/pins_CHITU3D.h | 4 +- .../pins/stm32f1/pins_CREALITY_V24S1_301.h | 2 +- Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h | 2 +- Marlin/src/pins/stm32f1/pins_CREALITY_V4.h | 4 +- Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h | 2 +- Marlin/src/pins/stm32f1/pins_CREALITY_V521.h | 2 +- .../src/pins/stm32f1/pins_ERYONE_ERY32_MINI.h | 8 +- Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h | 2 +- Marlin/src/pins/stm32f1/pins_FLY_MINI.h | 2 +- Marlin/src/pins/stm32f1/pins_FYSETC_AIO_II.h | 2 +- Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH.h | 4 +- Marlin/src/pins/stm32f1/pins_GTM32_MINI.h | 2 +- Marlin/src/pins/stm32f1/pins_GTM32_MINI_A30.h | 2 +- Marlin/src/pins/stm32f1/pins_GTM32_PRO_VB.h | 2 +- Marlin/src/pins/stm32f1/pins_GTM32_REV_B.h | 2 +- .../pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h | 4 +- .../pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h | 2 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h | 2 +- .../pins/stm32f1/pins_MKS_ROBIN_E3_common.h | 2 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h | 2 +- .../src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h | 2 +- .../pins/stm32f1/pins_MKS_ROBIN_NANO_common.h | 2 +- Marlin/src/pins/stm32f1/pins_PANDA_PI_V29.h | 6 +- Marlin/src/pins/stm32f1/pins_STM32F1R.h | 2 +- Marlin/src/pins/stm32f1/pins_STM3R_MINI.h | 2 +- Marlin/src/pins/stm32f1/pins_ZM3E2_V1_0.h | 2 +- Marlin/src/pins/stm32f4/pins_ARMED.h | 2 +- Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h | 4 +- .../src/pins/stm32f4/pins_BTT_BTT002_V1_0.h | 2 +- Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h | 6 +- Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h | 2 +- .../pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h | 4 +- .../stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h | 8 +- .../pins/stm32f4/pins_BTT_SKR_PRO_common.h | 6 +- .../pins/stm32f4/pins_BTT_SKR_V2_0_common.h | 6 +- .../pins/stm32f4/pins_FYSETC_CHEETAH_V20.h | 4 +- Marlin/src/pins/stm32f4/pins_FYSETC_S6.h | 2 +- Marlin/src/pins/stm32f4/pins_I3DBEEZ9.h | 6 +- .../pins/stm32f4/pins_MKS_MONSTER8_common.h | 2 +- .../stm32f4/pins_MKS_ROBIN_NANO_V3_common.h | 2 +- Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h | 2 +- .../src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h | 4 +- Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h | 2 +- .../pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h | 6 +- .../pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h | 4 +- .../pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h | 4 +- .../pins/stm32g0/pins_BTT_MANTA_M8P_common.h | 4 +- .../pins/stm32g0/pins_BTT_SKR_MINI_E3_V3_0.h | 8 +- .../pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h | 4 +- .../pins/stm32h7/pins_BTT_SKR_V3_0_common.h | 8 +- Marlin/src/pins/teensy2/pins_PRINTRBOARD.h | 2 +- .../src/pins/teensy2/pins_PRINTRBOARD_REVF.h | 2 +- Marlin/src/pins/teensy2/pins_SAV_MKI.h | 2 +- Marlin/src/sd/Sd2Card.h | 2 +- Marlin/src/sd/cardreader.cpp | 8 +- Marlin/src/sd/cardreader.h | 2 +- .../sd/usb_flashdrive/Sd2Card_FlashDrive.h | 2 +- .../PlatformIO/scripts/common-dependencies.h | 6 +- 305 files changed, 946 insertions(+), 952 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 61377189a8bd..b905b246886e 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -266,7 +266,7 @@ */ //#define MAGNETIC_PARKING_EXTRUDER -#if EITHER(PARKING_EXTRUDER, MAGNETIC_PARKING_EXTRUDER) +#if ANY(PARKING_EXTRUDER, MAGNETIC_PARKING_EXTRUDER) #define PARKING_EXTRUDER_PARKING_X { -78, 184 } // X positions for parking the extruders #define PARKING_EXTRUDER_GRAB_DISTANCE 1 // (mm) Distance to move beyond the parking point to grab the extruder @@ -419,7 +419,7 @@ #define POWER_TIMEOUT 30 // (s) Turn off power if the machine is idle for this duration //#define POWER_OFF_DELAY 60 // (s) Delay of poweroff after M81 command. Useful to let fans run for extra time. #endif - #if EITHER(AUTO_POWER_CONTROL, POWER_OFF_WAIT_FOR_COOLDOWN) + #if ANY(AUTO_POWER_CONTROL, POWER_OFF_WAIT_FOR_COOLDOWN) //#define AUTO_POWER_E_TEMP 50 // (°C) PSU on if any extruder is over this temperature //#define AUTO_POWER_CHAMBER_TEMP 30 // (°C) PSU on if the chamber is over this temperature //#define AUTO_POWER_COOLER_TEMP 26 // (°C) PSU on if the cooler is over this temperature @@ -921,7 +921,7 @@ #define DELTA_CALIBRATION_DEFAULT_POINTS 4 #endif - #if EITHER(DELTA_AUTO_CALIBRATION, DELTA_CALIBRATION_MENU) + #if ANY(DELTA_AUTO_CALIBRATION, DELTA_CALIBRATION_MENU) // Step size for paper-test probing #define PROBE_MANUALLY_STEP 0.05 // (mm) #endif @@ -965,7 +965,7 @@ */ //#define MORGAN_SCARA //#define MP_SCARA -#if EITHER(MORGAN_SCARA, MP_SCARA) +#if ANY(MORGAN_SCARA, MP_SCARA) // If movement is choppy try lowering this value #define DEFAULT_SEGMENTS_PER_SECOND 200 @@ -1809,7 +1809,7 @@ #define MAX_SOFTWARE_ENDSTOP_W #endif -#if EITHER(MIN_SOFTWARE_ENDSTOPS, MAX_SOFTWARE_ENDSTOPS) +#if ANY(MIN_SOFTWARE_ENDSTOPS, MAX_SOFTWARE_ENDSTOPS) //#define SOFT_ENDSTOPS_MENU_ITEM // Enable/Disable software endstops from the LCD #endif @@ -2046,7 +2046,7 @@ #endif -#if EITHER(AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_BILINEAR) +#if ANY(AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_BILINEAR) // Set the number of grid points per dimension. #define GRID_MAX_POINTS_X 3 @@ -3340,7 +3340,7 @@ //#define TOUCH_OFFSET_Y 257 //#define TOUCH_ORIENTATION TOUCH_LANDSCAPE - #if BOTH(TOUCH_SCREEN_CALIBRATION, EEPROM_SETTINGS) + #if ALL(TOUCH_SCREEN_CALIBRATION, EEPROM_SETTINGS) #define TOUCH_CALIBRATION_AUTO_SAVE // Auto save successful calibration values to EEPROM #endif @@ -3437,7 +3437,7 @@ //#define RGB_LED //#define RGBW_LED -#if EITHER(RGB_LED, RGBW_LED) +#if ANY(RGB_LED, RGBW_LED) //#define RGB_LED_R_PIN 34 //#define RGB_LED_G_PIN 43 //#define RGB_LED_B_PIN 35 diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index a635e4a3022c..eee111a5412a 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -310,7 +310,7 @@ //#define ADAPTIVE_FAN_SLOWING // Slow down the part-cooling fan if the temperature drops #if ENABLED(ADAPTIVE_FAN_SLOWING) //#define REPORT_ADAPTIVE_FAN_SLOWING // Report fan slowing activity to the console - #if EITHER(MPCTEMP, PIDTEMP) + #if ANY(MPCTEMP, PIDTEMP) //#define TEMP_TUNING_MAINTAIN_FAN // Don't slow down the fan speed during M303 or M306 T #endif #endif @@ -759,10 +759,10 @@ #if ENABLED(NEOPIXEL_LED) //#define CASE_LIGHT_USE_NEOPIXEL // Use NeoPixel LED as case light #endif - #if EITHER(RGB_LED, RGBW_LED) + #if ANY(RGB_LED, RGBW_LED) //#define CASE_LIGHT_USE_RGB_LED // Use RGB / RGBW LED as case light #endif - #if EITHER(CASE_LIGHT_USE_NEOPIXEL, CASE_LIGHT_USE_RGB_LED) + #if ANY(CASE_LIGHT_USE_NEOPIXEL, CASE_LIGHT_USE_RGB_LED) #define CASE_LIGHT_DEFAULT_COLOR { 255, 255, 255, 255 } // { Red, Green, Blue, White } #endif #endif @@ -1175,7 +1175,7 @@ */ //#define INPUT_SHAPING_X //#define INPUT_SHAPING_Y -#if EITHER(INPUT_SHAPING_X, INPUT_SHAPING_Y) +#if ANY(INPUT_SHAPING_X, INPUT_SHAPING_Y) #if ENABLED(INPUT_SHAPING_X) #define SHAPING_FREQ_X 40 // (Hz) The default dominant resonant frequency on the X axis. #define SHAPING_ZETA_X 0.15f // Damping ratio of the X axis (range: 0.0 = no damping to 1.0 = critical damping). @@ -1417,7 +1417,7 @@ */ //#define DIGIPOT_MCP4018 // Requires https://github.com/felias-fogg/SlowSoftI2CMaster //#define DIGIPOT_MCP4451 -#if EITHER(DIGIPOT_MCP4018, DIGIPOT_MCP4451) +#if ANY(DIGIPOT_MCP4018, DIGIPOT_MCP4451) #define DIGIPOT_I2C_NUM_CHANNELS 8 // 5DPRINT:4 AZTEEG_X3_PRO:8 MKS_SBASE:5 MIGHTYBOARD_REVE:5 // Actual motor currents in Amps. The number of entries must match DIGIPOT_I2C_NUM_CHANNELS. @@ -1474,7 +1474,7 @@ // //#define LCD_BACKLIGHT_TIMEOUT_MINS 1 // (minutes) Timeout before turning off the backlight -#if HAS_BED_PROBE && EITHER(HAS_MARLINUI_MENU, HAS_TFT_LVGL_UI) +#if HAS_BED_PROBE && ANY(HAS_MARLINUI_MENU, HAS_TFT_LVGL_UI) //#define PROBE_OFFSET_WIZARD // Add a Probe Z Offset calibration option to the LCD menu #if ENABLED(PROBE_OFFSET_WIZARD) /** @@ -1544,13 +1544,13 @@ #define SHOW_BOOTSCREEN // Show the Marlin bootscreen on startup. ** ENABLE FOR PRODUCTION ** #if ENABLED(SHOW_BOOTSCREEN) #define BOOTSCREEN_TIMEOUT 3000 // (ms) Total Duration to display the boot screen(s) - #if EITHER(HAS_MARLINUI_U8GLIB, TFT_COLOR_UI) + #if ANY(HAS_MARLINUI_U8GLIB, TFT_COLOR_UI) #define BOOT_MARLIN_LOGO_SMALL // Show a smaller Marlin logo on the Boot Screen (saving lots of flash) #endif #if HAS_MARLINUI_U8GLIB //#define BOOT_MARLIN_LOGO_ANIMATED // Animated Marlin logo. Costs ~3260 (or ~940) bytes of flash. #endif - #if EITHER(HAS_MARLINUI_U8GLIB, TOUCH_UI_FTDI_EVE) + #if ANY(HAS_MARLINUI_U8GLIB, TOUCH_UI_FTDI_EVE) //#define SHOW_CUSTOM_BOOTSCREEN // Show the bitmap in Marlin/_Bootscreen.h on startup. #endif #endif @@ -1615,13 +1615,13 @@ #define SET_REMAINING_TIME // Add 'R' parameter to set remaining time //#define SET_INTERACTION_TIME // Add 'C' parameter to set time until next filament change or other user interaction //#define M73_REPORT // Report M73 values to host - #if BOTH(M73_REPORT, HAS_MEDIA) + #if ALL(M73_REPORT, HAS_MEDIA) #define M73_REPORT_SD_ONLY // Report only when printing from SD #endif #endif // LCD Print Progress options. Multiple times may be displayed in turn. -#if HAS_DISPLAY && EITHER(HAS_MEDIA, SET_PROGRESS_MANUALLY) +#if HAS_DISPLAY && ANY(HAS_MEDIA, SET_PROGRESS_MANUALLY) #define SHOW_PROGRESS_PERCENT // Show print progress percentage (doesn't affect progress bar) #define SHOW_ELAPSED_TIME // Display elapsed printing time (prefix 'E') //#define SHOW_REMAINING_TIME // Display estimated time to completion (prefix 'R') @@ -1630,7 +1630,7 @@ #endif //#define PRINT_PROGRESS_SHOW_DECIMALS // Show/report progress with decimal digits, not all UIs support this - #if EITHER(HAS_MARLINUI_HD44780, IS_TFTGLCD_PANEL) + #if ANY(HAS_MARLINUI_HD44780, IS_TFTGLCD_PANEL) //#define LCD_PROGRESS_BAR // Show a progress bar on HD44780 LCDs for SD printing #if ENABLED(LCD_PROGRESS_BAR) #define PROGRESS_BAR_BAR_TIME 2000 // (ms) Amount of time to show the bar @@ -2302,7 +2302,7 @@ //#define PROBING_MARGIN_BACK PROBING_MARGIN #endif -#if EITHER(MESH_BED_LEVELING, AUTO_BED_LEVELING_UBL) +#if ANY(MESH_BED_LEVELING, AUTO_BED_LEVELING_UBL) // Override the mesh area if the automatic (max) area is too large //#define MESH_MIN_X MESH_INSET //#define MESH_MIN_Y MESH_INSET @@ -2310,7 +2310,7 @@ //#define MESH_MAX_Y Y_BED_SIZE - (MESH_INSET) #endif -#if BOTH(AUTO_BED_LEVELING_UBL, EEPROM_SETTINGS) +#if ALL(AUTO_BED_LEVELING_UBL, EEPROM_SETTINGS) //#define OPTIMIZED_MESH_STORAGE // Store mesh with less precision to save EEPROM space #endif @@ -2380,7 +2380,7 @@ #endif // G76 options - #if BOTH(PTC_PROBE, PTC_BED) + #if ALL(PTC_PROBE, PTC_BED) // Park position to wait for probe cooldown #define PTC_PARK_POS { 0, 0, 100 } @@ -2422,7 +2422,7 @@ // G5 Bézier Curve Support with XYZE destination and IJPQ offsets //#define BEZIER_CURVE_SUPPORT // Requires ~2666 bytes -#if EITHER(ARC_SUPPORT, BEZIER_CURVE_SUPPORT) +#if ANY(ARC_SUPPORT, BEZIER_CURVE_SUPPORT) //#define CNC_WORKSPACE_PLANES // Allow G2/G3/G5 to operate in XY, ZX, or YZ planes #endif @@ -2508,7 +2508,7 @@ // The number of linear moves that can be in the planner at once. // The value of BLOCK_BUFFER_SIZE must be a power of 2 (e.g., 8, 16, 32) -#if BOTH(HAS_MEDIA, DIRECT_STEPPING) +#if ALL(HAS_MEDIA, DIRECT_STEPPING) #define BLOCK_BUFFER_SIZE 8 #elif HAS_MEDIA #define BLOCK_BUFFER_SIZE 16 @@ -3290,7 +3290,7 @@ */ //#define SENSORLESS_HOMING // StallGuard capable drivers only - #if EITHER(SENSORLESS_HOMING, SENSORLESS_PROBING) + #if ANY(SENSORLESS_HOMING, SENSORLESS_PROBING) // TMC2209: 0...255. TMC2130: -64...63 #define X_STALL_SENSITIVITY 8 #define X2_STALL_SENSITIVITY X_STALL_SENSITIVITY @@ -3453,7 +3453,7 @@ */ //#define SPINDLE_FEATURE //#define LASER_FEATURE -#if EITHER(SPINDLE_FEATURE, LASER_FEATURE) +#if ANY(SPINDLE_FEATURE, LASER_FEATURE) #define SPINDLE_LASER_ACTIVE_STATE LOW // Set to "HIGH" if SPINDLE_LASER_ENA_PIN is active HIGH #define SPINDLE_LASER_USE_PWM // Enable if your controller supports setting the speed/power @@ -4205,7 +4205,7 @@ //#define WIFISUPPORT // Marlin embedded WiFi management //#define ESP3D_WIFISUPPORT // ESP3D Library WiFi management (https://github.com/luc-github/ESP3DLib) -#if EITHER(WIFISUPPORT, ESP3D_WIFISUPPORT) +#if ANY(WIFISUPPORT, ESP3D_WIFISUPPORT) //#define WEBSUPPORT // Start a webserver (which may include auto-discovery) //#define OTASUPPORT // Support over-the-air firmware updates //#define WIFI_CUSTOM_COMMAND // Accept feature config commands (e.g., WiFi ESP3D) from the host diff --git a/Marlin/src/HAL/AVR/MarlinSerial.h b/Marlin/src/HAL/AVR/MarlinSerial.h index 7dd208e54e85..f47541f12dc5 100644 --- a/Marlin/src/HAL/AVR/MarlinSerial.h +++ b/Marlin/src/HAL/AVR/MarlinSerial.h @@ -280,7 +280,7 @@ static constexpr bool DROPPED_RX = false; static constexpr bool RX_FRAMING_ERRORS = false; static constexpr bool MAX_RX_QUEUED = false; - static constexpr bool RX_OVERRUNS = BOTH(HAS_DGUS_LCD, SERIAL_STATS_RX_BUFFER_OVERRUNS); + static constexpr bool RX_OVERRUNS = ALL(HAS_DGUS_LCD, SERIAL_STATS_RX_BUFFER_OVERRUNS); }; typedef Serial1Class< MarlinSerial< LCDSerialCfg > > MSerialLCD; diff --git a/Marlin/src/HAL/AVR/eeprom.cpp b/Marlin/src/HAL/AVR/eeprom.cpp index 8d084dec7fdf..6465e4702544 100644 --- a/Marlin/src/HAL/AVR/eeprom.cpp +++ b/Marlin/src/HAL/AVR/eeprom.cpp @@ -23,7 +23,7 @@ #include "../../inc/MarlinConfig.h" -#if EITHER(EEPROM_SETTINGS, SD_FIRMWARE_UPDATE) +#if ANY(EEPROM_SETTINGS, SD_FIRMWARE_UPDATE) /** * PersistentStore for Arduino-style EEPROM interface diff --git a/Marlin/src/HAL/AVR/inc/SanityCheck.h b/Marlin/src/HAL/AVR/inc/SanityCheck.h index 665e68043a85..6a7e1728891d 100644 --- a/Marlin/src/HAL/AVR/inc/SanityCheck.h +++ b/Marlin/src/HAL/AVR/inc/SanityCheck.h @@ -95,11 +95,11 @@ /** * The Trinamic library includes SoftwareSerial.h, leading to a compile error. */ -#if BOTH(HAS_TRINAMIC_CONFIG, ENDSTOP_INTERRUPTS_FEATURE) +#if ALL(HAS_TRINAMIC_CONFIG, ENDSTOP_INTERRUPTS_FEATURE) #error "TMCStepper includes SoftwareSerial.h which is incompatible with ENDSTOP_INTERRUPTS_FEATURE. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif -#if BOTH(HAS_TMC_SW_SERIAL, MONITOR_DRIVER_STATUS) +#if ALL(HAS_TMC_SW_SERIAL, MONITOR_DRIVER_STATUS) #error "MONITOR_DRIVER_STATUS causes performance issues when used with SoftwareSerial-connected drivers. Disable MONITOR_DRIVER_STATUS or use hardware serial to continue." #endif diff --git a/Marlin/src/HAL/DUE/HAL_SPI.cpp b/Marlin/src/HAL/DUE/HAL_SPI.cpp index f5bcaacee505..63ebf164f2b1 100644 --- a/Marlin/src/HAL/DUE/HAL_SPI.cpp +++ b/Marlin/src/HAL/DUE/HAL_SPI.cpp @@ -42,7 +42,7 @@ // Public functions // ------------------------ -#if EITHER(DUE_SOFTWARE_SPI, FORCE_SOFT_SPI) +#if ANY(DUE_SOFTWARE_SPI, FORCE_SOFT_SPI) // ------------------------ // Software SPI diff --git a/Marlin/src/HAL/DUE/inc/Conditionals_post.h b/Marlin/src/HAL/DUE/inc/Conditionals_post.h index ce6d3fdde27f..295596b78b19 100644 --- a/Marlin/src/HAL/DUE/inc/Conditionals_post.h +++ b/Marlin/src/HAL/DUE/inc/Conditionals_post.h @@ -23,6 +23,6 @@ #if USE_FALLBACK_EEPROM #define FLASH_EEPROM_EMULATION -#elif EITHER(I2C_EEPROM, SPI_EEPROM) +#elif ANY(I2C_EEPROM, SPI_EEPROM) #define USE_SHARED_EEPROM 1 #endif diff --git a/Marlin/src/HAL/ESP32/HAL.cpp b/Marlin/src/HAL/ESP32/HAL.cpp index 46dd4e761b8c..27f6516f9ae8 100644 --- a/Marlin/src/HAL/ESP32/HAL.cpp +++ b/Marlin/src/HAL/ESP32/HAL.cpp @@ -165,7 +165,7 @@ void MarlinHAL::init_board() { } void MarlinHAL::idletask() { - #if BOTH(WIFISUPPORT, OTASUPPORT) + #if ALL(WIFISUPPORT, OTASUPPORT) OTA_handle(); #endif TERN_(ESP3D_WIFISUPPORT, esp3dlib.idletask()); diff --git a/Marlin/src/HAL/ESP32/inc/SanityCheck.h b/Marlin/src/HAL/ESP32/inc/SanityCheck.h index 910918b9ea47..e6c364a6fe4c 100644 --- a/Marlin/src/HAL/ESP32/inc/SanityCheck.h +++ b/Marlin/src/HAL/ESP32/inc/SanityCheck.h @@ -40,7 +40,7 @@ #error "TMC220x Software Serial is not supported on ESP32." #endif -#if BOTH(WIFISUPPORT, ESP3D_WIFISUPPORT) +#if ALL(WIFISUPPORT, ESP3D_WIFISUPPORT) #error "Only enable one WiFi option, either WIFISUPPORT or ESP3D_WIFISUPPORT." #endif @@ -52,7 +52,7 @@ #error "FAST_PWM_FAN is not available on TinyBee." #endif -#if BOTH(I2S_STEPPER_STREAM, BABYSTEPPING) && DISABLED(INTEGRATED_BABYSTEPPING) +#if ALL(I2S_STEPPER_STREAM, BABYSTEPPING) && DISABLED(INTEGRATED_BABYSTEPPING) #error "BABYSTEPPING on I2S stream requires INTEGRATED_BABYSTEPPING." #endif @@ -60,10 +60,10 @@ #error "PULLDOWN pin mode is not available on ESP32 boards." #endif -#if BOTH(I2S_STEPPER_STREAM, LIN_ADVANCE) && DISABLED(EXPERIMENTAL_I2S_LA) +#if ALL(I2S_STEPPER_STREAM, LIN_ADVANCE) && DISABLED(EXPERIMENTAL_I2S_LA) #error "I2S stream is currently incompatible with LIN_ADVANCE." #endif -#if BOTH(I2S_STEPPER_STREAM, PRINTCOUNTER) && PRINTCOUNTER_SAVE_INTERVAL > 0 && DISABLED(PRINTCOUNTER_SYNC) +#if ALL(I2S_STEPPER_STREAM, PRINTCOUNTER) && PRINTCOUNTER_SAVE_INTERVAL > 0 && DISABLED(PRINTCOUNTER_SYNC) #error "PRINTCOUNTER_SAVE_INTERVAL may cause issues on ESP32 with an I2S expander. Define PRINTCOUNTER_SYNC in Configuration.h for an imperfect solution." #endif diff --git a/Marlin/src/HAL/ESP32/ota.cpp b/Marlin/src/HAL/ESP32/ota.cpp index f31a78c2c519..c5c3082c30cb 100644 --- a/Marlin/src/HAL/ESP32/ota.cpp +++ b/Marlin/src/HAL/ESP32/ota.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(WIFISUPPORT, OTASUPPORT) +#if ALL(WIFISUPPORT, OTASUPPORT) #include #include diff --git a/Marlin/src/HAL/ESP32/spiffs.cpp b/Marlin/src/HAL/ESP32/spiffs.cpp index a0e713bff0bb..043ad7849adb 100644 --- a/Marlin/src/HAL/ESP32/spiffs.cpp +++ b/Marlin/src/HAL/ESP32/spiffs.cpp @@ -23,7 +23,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(WIFISUPPORT, WEBSUPPORT) +#if ALL(WIFISUPPORT, WEBSUPPORT) #include "../../core/serial.h" diff --git a/Marlin/src/HAL/ESP32/u8g_esp32_spi.cpp b/Marlin/src/HAL/ESP32/u8g_esp32_spi.cpp index 955c751e4869..012604dbfb8b 100644 --- a/Marlin/src/HAL/ESP32/u8g_esp32_spi.cpp +++ b/Marlin/src/HAL/ESP32/u8g_esp32_spi.cpp @@ -25,7 +25,7 @@ #include "../../inc/MarlinConfig.h" -#if EITHER(MKS_MINI_12864, FYSETC_MINI_12864_2_1) +#if ANY(MKS_MINI_12864, FYSETC_MINI_12864_2_1) #include #include "../shared/HAL_SPI.h" @@ -101,6 +101,6 @@ uint8_t u8g_eps_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_pt return 1; } -#endif // EITHER(MKS_MINI_12864, FYSETC_MINI_12864_2_1) +#endif // MKS_MINI_12864 || FYSETC_MINI_12864_2_1 #endif // ARDUINO_ARCH_ESP32 diff --git a/Marlin/src/HAL/ESP32/web.cpp b/Marlin/src/HAL/ESP32/web.cpp index 7a27707a3e14..63a101595ff7 100644 --- a/Marlin/src/HAL/ESP32/web.cpp +++ b/Marlin/src/HAL/ESP32/web.cpp @@ -23,7 +23,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(WIFISUPPORT, WEBSUPPORT) +#if ALL(WIFISUPPORT, WEBSUPPORT) #include "../../inc/MarlinConfig.h" diff --git a/Marlin/src/HAL/LINUX/spi_pins.h b/Marlin/src/HAL/LINUX/spi_pins.h index f09d1decb8eb..7bd2498be748 100644 --- a/Marlin/src/HAL/LINUX/spi_pins.h +++ b/Marlin/src/HAL/LINUX/spi_pins.h @@ -24,7 +24,7 @@ #include "../../core/macros.h" #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_U8GLIB, HAS_MEDIA) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_EN == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) +#if ALL(HAS_MARLINUI_U8GLIB, HAS_MEDIA) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_EN == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) #define SOFTWARE_SPI // If the SD card and LCD adapter share the same SPI pins, then software SPI is currently // needed due to the speed and mode required for communicating with each device being different. // This requirement can be removed if the SPI access to these devices is updated to use diff --git a/Marlin/src/HAL/LPC1768/inc/Conditionals_post.h b/Marlin/src/HAL/LPC1768/inc/Conditionals_post.h index a0bf4215383e..0b03cb2aea63 100644 --- a/Marlin/src/HAL/LPC1768/inc/Conditionals_post.h +++ b/Marlin/src/HAL/LPC1768/inc/Conditionals_post.h @@ -23,7 +23,7 @@ #if USE_FALLBACK_EEPROM #define FLASH_EEPROM_EMULATION -#elif EITHER(I2C_EEPROM, SPI_EEPROM) +#elif ANY(I2C_EEPROM, SPI_EEPROM) #define USE_SHARED_EEPROM 1 #endif diff --git a/Marlin/src/HAL/LPC1768/spi_pins.h b/Marlin/src/HAL/LPC1768/spi_pins.h index 33a5b369adab..babe8a11d719 100644 --- a/Marlin/src/HAL/LPC1768/spi_pins.h +++ b/Marlin/src/HAL/LPC1768/spi_pins.h @@ -23,7 +23,7 @@ #include "../../core/macros.h" -#if BOTH(HAS_MEDIA, HAS_MARLINUI_U8GLIB) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_EN == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) +#if ALL(HAS_MEDIA, HAS_MARLINUI_U8GLIB) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_EN == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) #define SOFTWARE_SPI // If the SD card and LCD adapter share the same SPI pins, then software SPI is currently // needed due to the speed and mode required for communicating with each device being different. // This requirement can be removed if the SPI access to these devices is updated to use diff --git a/Marlin/src/HAL/LPC1768/u8g/u8g_com_HAL_LPC1768_sw_spi.cpp b/Marlin/src/HAL/LPC1768/u8g/u8g_com_HAL_LPC1768_sw_spi.cpp index f116a9b80aa6..785b4ef5c410 100644 --- a/Marlin/src/HAL/LPC1768/u8g/u8g_com_HAL_LPC1768_sw_spi.cpp +++ b/Marlin/src/HAL/LPC1768/u8g/u8g_com_HAL_LPC1768_sw_spi.cpp @@ -132,7 +132,7 @@ uint8_t swSpiTransfer_mode_3(uint8_t b, const uint8_t spi_speed, const pin_t sck static uint8_t SPI_speed = 0; static void u8g_sw_spi_HAL_LPC1768_shift_out(uint8_t dataPin, uint8_t clockPin, uint8_t val) { - #if EITHER(FYSETC_MINI_12864, MKS_MINI_12864) + #if ANY(FYSETC_MINI_12864, MKS_MINI_12864) swSpiTransfer_mode_3(val, SPI_speed, clockPin, -1, dataPin); #else swSpiTransfer_mode_0(val, SPI_speed, clockPin, -1, dataPin); @@ -160,10 +160,10 @@ uint8_t u8g_com_HAL_LPC1768_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, break; case U8G_COM_MSG_CHIP_SELECT: - #if EITHER(FYSETC_MINI_12864, MKS_MINI_12864) // LCD SPI is running mode 3 while SD card is running mode 0 - if (arg_val) { // SCK idle state needs to be set to the proper idle state before - // the next chip select goes active - u8g_SetPILevel(u8g, U8G_PI_SCK, 1); // Set SCK to mode 3 idle state before CS goes active + #if ANY(FYSETC_MINI_12864, MKS_MINI_12864) // LCD SPI is running mode 3 while SD card is running mode 0 + if (arg_val) { // SCK idle state needs to be set to the proper idle state before + // the next chip select goes active + u8g_SetPILevel(u8g, U8G_PI_SCK, 1); // Set SCK to mode 3 idle state before CS goes active u8g_SetPILevel(u8g, U8G_PI_CS, LOW); } else { diff --git a/Marlin/src/HAL/NATIVE_SIM/spi_pins.h b/Marlin/src/HAL/NATIVE_SIM/spi_pins.h index 02fb3592382c..9b1bae9a5836 100644 --- a/Marlin/src/HAL/NATIVE_SIM/spi_pins.h +++ b/Marlin/src/HAL/NATIVE_SIM/spi_pins.h @@ -24,7 +24,7 @@ #include "../../core/macros.h" #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_U8GLIB, HAS_MEDIA) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_EN == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) +#if ALL(HAS_MARLINUI_U8GLIB, HAS_MEDIA) && (LCD_PINS_D4 == SD_SCK_PIN || LCD_PINS_EN == SD_MOSI_PIN || DOGLCD_SCK == SD_SCK_PIN || DOGLCD_MOSI == SD_MOSI_PIN) #define SOFTWARE_SPI // If the SD card and LCD adapter share the same SPI pins, then software SPI is currently // needed due to the speed and mode required for communicating with each device being different. // This requirement can be removed if the SPI access to these devices is updated to use diff --git a/Marlin/src/HAL/NATIVE_SIM/u8g/u8g_com_sw_spi.cpp b/Marlin/src/HAL/NATIVE_SIM/u8g/u8g_com_sw_spi.cpp index 7be84580b133..5187a4958308 100644 --- a/Marlin/src/HAL/NATIVE_SIM/u8g/u8g_com_sw_spi.cpp +++ b/Marlin/src/HAL/NATIVE_SIM/u8g/u8g_com_sw_spi.cpp @@ -131,7 +131,7 @@ static uint8_t swSpiInit(const uint8_t spi_speed, const uint8_t clk_pin, const u } static void u8g_sw_spi_shift_out(uint8_t dataPin, uint8_t clockPin, uint8_t val) { - #if EITHER(FYSETC_MINI_12864, MKS_MINI_12864) + #if ANY(FYSETC_MINI_12864, MKS_MINI_12864) swSpiTransfer_mode_3(val, SPI_speed, clockPin, -1, dataPin); #else swSpiTransfer_mode_0(val, SPI_speed, clockPin, -1, dataPin); @@ -159,10 +159,10 @@ uint8_t u8g_com_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_pt break; case U8G_COM_MSG_CHIP_SELECT: - #if EITHER(FYSETC_MINI_12864, MKS_MINI_12864) // LCD SPI is running mode 3 while SD card is running mode 0 - if (arg_val) { // SCK idle state needs to be set to the proper idle state before - // the next chip select goes active - u8g_SetPILevel(u8g, U8G_PI_SCK, 1); // Set SCK to mode 3 idle state before CS goes active + #if ANY(FYSETC_MINI_12864, MKS_MINI_12864) // LCD SPI is running mode 3 while SD card is running mode 0 + if (arg_val) { // SCK idle state needs to be set to the proper idle state before + // the next chip select goes active + u8g_SetPILevel(u8g, U8G_PI_SCK, 1); // Set SCK to mode 3 idle state before CS goes active u8g_SetPILevel(u8g, U8G_PI_CS, LOW); } else { diff --git a/Marlin/src/HAL/SAMD21/HAL_SPI.cpp b/Marlin/src/HAL/SAMD21/HAL_SPI.cpp index 69c6a43af835..e01f540cf8a1 100644 --- a/Marlin/src/HAL/SAMD21/HAL_SPI.cpp +++ b/Marlin/src/HAL/SAMD21/HAL_SPI.cpp @@ -45,7 +45,7 @@ // Public functions // -------------------------------------------------------------------------- -#if EITHER(SOFTWARE_SPI, FORCE_SOFT_SPI) +#if ANY(SOFTWARE_SPI, FORCE_SOFT_SPI) // ------------------------ // Software SPI diff --git a/Marlin/src/HAL/SAMD21/inc/Conditionals_post.h b/Marlin/src/HAL/SAMD21/inc/Conditionals_post.h index 7315dc12a779..87d3350c9450 100644 --- a/Marlin/src/HAL/SAMD21/inc/Conditionals_post.h +++ b/Marlin/src/HAL/SAMD21/inc/Conditionals_post.h @@ -28,6 +28,6 @@ #if USE_FALLBACK_EEPROM #define FLASH_EEPROM_EMULATION -#elif EITHER(I2C_EEPROM, SPI_EEPROM) +#elif ANY(I2C_EEPROM, SPI_EEPROM) #define USE_SHARED_EEPROM 1 #endif diff --git a/Marlin/src/HAL/SAMD51/HAL_SPI.cpp b/Marlin/src/HAL/SAMD51/HAL_SPI.cpp index 58fdfe9499a1..63d3971965c9 100644 --- a/Marlin/src/HAL/SAMD51/HAL_SPI.cpp +++ b/Marlin/src/HAL/SAMD51/HAL_SPI.cpp @@ -44,7 +44,7 @@ // Public functions // -------------------------------------------------------------------------- -#if EITHER(SOFTWARE_SPI, FORCE_SOFT_SPI) +#if ANY(SOFTWARE_SPI, FORCE_SOFT_SPI) // ------------------------ // Software SPI diff --git a/Marlin/src/HAL/SAMD51/inc/Conditionals_post.h b/Marlin/src/HAL/SAMD51/inc/Conditionals_post.h index ce6d3fdde27f..295596b78b19 100644 --- a/Marlin/src/HAL/SAMD51/inc/Conditionals_post.h +++ b/Marlin/src/HAL/SAMD51/inc/Conditionals_post.h @@ -23,6 +23,6 @@ #if USE_FALLBACK_EEPROM #define FLASH_EEPROM_EMULATION -#elif EITHER(I2C_EEPROM, SPI_EEPROM) +#elif ANY(I2C_EEPROM, SPI_EEPROM) #define USE_SHARED_EEPROM 1 #endif diff --git a/Marlin/src/HAL/STM32/inc/Conditionals_adv.h b/Marlin/src/HAL/STM32/inc/Conditionals_adv.h index ee8c49e4e055..032716a294ce 100644 --- a/Marlin/src/HAL/STM32/inc/Conditionals_adv.h +++ b/Marlin/src/HAL/STM32/inc/Conditionals_adv.h @@ -21,7 +21,7 @@ */ #pragma once -#if BOTH(HAS_MEDIA, USBD_USE_CDC_MSC) && DISABLED(NO_SD_HOST_DRIVE) +#if ALL(HAS_MEDIA, USBD_USE_CDC_MSC) && DISABLED(NO_SD_HOST_DRIVE) #define HAS_SD_HOST_DRIVE 1 #endif diff --git a/Marlin/src/HAL/STM32/inc/Conditionals_post.h b/Marlin/src/HAL/STM32/inc/Conditionals_post.h index 83ce077c754d..6c97a635b3cc 100644 --- a/Marlin/src/HAL/STM32/inc/Conditionals_post.h +++ b/Marlin/src/HAL/STM32/inc/Conditionals_post.h @@ -24,7 +24,7 @@ // If no real or emulated EEPROM selected, fall back to SD emulation #if USE_FALLBACK_EEPROM #define SDCARD_EEPROM_EMULATION -#elif EITHER(I2C_EEPROM, SPI_EEPROM) +#elif ANY(I2C_EEPROM, SPI_EEPROM) #define USE_SHARED_EEPROM 1 #endif diff --git a/Marlin/src/HAL/STM32/timers.cpp b/Marlin/src/HAL/STM32/timers.cpp index e68b59c46fee..27ced33db2c1 100644 --- a/Marlin/src/HAL/STM32/timers.cpp +++ b/Marlin/src/HAL/STM32/timers.cpp @@ -292,9 +292,9 @@ static constexpr int get_timer_num_from_base_address(uintptr_t base_address) { // constexpr doesn't like using the base address pointers that timers evaluate to. // We can get away with casting them to uintptr_t, if we do so inside an array. // GCC will not currently do it directly to a uintptr_t. -IF_ENABLED(HAS_TMC_SW_SERIAL, static constexpr uintptr_t timer_serial[] = {uintptr_t(TIMER_SERIAL)}); -IF_ENABLED(SPEAKER, static constexpr uintptr_t timer_tone[] = {uintptr_t(TIMER_TONE)}); -IF_ENABLED(HAS_SERVOS, static constexpr uintptr_t timer_servo[] = {uintptr_t(TIMER_SERVO)}); +TERN_(HAS_TMC_SW_SERIAL, static constexpr uintptr_t timer_serial[] = {uintptr_t(TIMER_SERIAL)}); +TERN_(SPEAKER, static constexpr uintptr_t timer_tone[] = {uintptr_t(TIMER_TONE)}); +TERN_(HAS_SERVOS, static constexpr uintptr_t timer_servo[] = {uintptr_t(TIMER_SERVO)}); enum TimerPurpose { TP_SERIAL, TP_TONE, TP_SERVO, TP_STEP, TP_TEMP }; diff --git a/Marlin/src/HAL/STM32/usb_host.cpp b/Marlin/src/HAL/STM32/usb_host.cpp index f3784670049c..afafe1d4f3d1 100644 --- a/Marlin/src/HAL/STM32/usb_host.cpp +++ b/Marlin/src/HAL/STM32/usb_host.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfig.h" -#if BOTH(USE_OTG_USB_HOST, USBHOST) +#if ALL(USE_OTG_USB_HOST, USBHOST) #include "usb_host.h" #include "../shared/Marduino.h" diff --git a/Marlin/src/HAL/STM32F1/HAL.cpp b/Marlin/src/HAL/STM32F1/HAL.cpp index a0cdda3b4fd7..373116ba39fb 100644 --- a/Marlin/src/HAL/STM32F1/HAL.cpp +++ b/Marlin/src/HAL/STM32F1/HAL.cpp @@ -224,7 +224,7 @@ void MarlinHAL::init() { #endif #if HAS_SD_HOST_DRIVE MSC_SD_init(); - #elif BOTH(SERIAL_USB, EMERGENCY_PARSER) + #elif ALL(SERIAL_USB, EMERGENCY_PARSER) usb_cdcacm_set_hooks(USB_CDCACM_HOOK_RX, my_rx_callback); #endif #if PIN_EXISTS(USB_CONNECT) diff --git a/Marlin/src/HAL/STM32F1/HAL.h b/Marlin/src/HAL/STM32F1/HAL.h index 8ed525bfb71b..b5f4d6fe8bab 100644 --- a/Marlin/src/HAL/STM32F1/HAL.h +++ b/Marlin/src/HAL/STM32F1/HAL.h @@ -82,7 +82,7 @@ #define _MSERIAL(X) MSerial##X #define MSERIAL(X) _MSERIAL(X) -#if EITHER(STM32_HIGH_DENSITY, STM32_XL_DENSITY) +#if ANY(STM32_HIGH_DENSITY, STM32_XL_DENSITY) #define NUM_UARTS 5 #else #define NUM_UARTS 3 diff --git a/Marlin/src/HAL/STM32F1/MarlinSerial.cpp b/Marlin/src/HAL/STM32F1/MarlinSerial.cpp index 7898e9f2bcc1..568fc05d4185 100644 --- a/Marlin/src/HAL/STM32F1/MarlinSerial.cpp +++ b/Marlin/src/HAL/STM32F1/MarlinSerial.cpp @@ -116,7 +116,7 @@ constexpr bool serial_handles_emergency(int port) { #endif DEFINE_HWSERIAL_MARLIN(MSerial2, 2); DEFINE_HWSERIAL_MARLIN(MSerial3, 3); -#if EITHER(STM32_HIGH_DENSITY, STM32_XL_DENSITY) +#if ANY(STM32_HIGH_DENSITY, STM32_XL_DENSITY) DEFINE_HWSERIAL_UART_MARLIN(MSerial4, 4); DEFINE_HWSERIAL_UART_MARLIN(MSerial5, 5); #endif diff --git a/Marlin/src/HAL/STM32F1/MarlinSerial.h b/Marlin/src/HAL/STM32F1/MarlinSerial.h index dda32fe7a2ef..53bcd4847638 100644 --- a/Marlin/src/HAL/STM32F1/MarlinSerial.h +++ b/Marlin/src/HAL/STM32F1/MarlinSerial.h @@ -52,7 +52,7 @@ typedef Serial1Class MSerialT; extern MSerialT MSerial1; extern MSerialT MSerial2; extern MSerialT MSerial3; -#if EITHER(STM32_HIGH_DENSITY, STM32_XL_DENSITY) +#if ANY(STM32_HIGH_DENSITY, STM32_XL_DENSITY) extern MSerialT MSerial4; extern MSerialT MSerial5; #endif diff --git a/Marlin/src/HAL/STM32F1/dogm/u8g_com_stm32duino_swspi.cpp b/Marlin/src/HAL/STM32F1/dogm/u8g_com_stm32duino_swspi.cpp index 26ea1ea19af9..db9b6f0b1c8d 100644 --- a/Marlin/src/HAL/STM32F1/dogm/u8g_com_stm32duino_swspi.cpp +++ b/Marlin/src/HAL/STM32F1/dogm/u8g_com_stm32duino_swspi.cpp @@ -24,7 +24,7 @@ #include "../../../inc/MarlinConfig.h" -#if BOTH(HAS_MARLINUI_U8GLIB, FORCE_SOFT_SPI) +#if ALL(HAS_MARLINUI_U8GLIB, FORCE_SOFT_SPI) #include #include "../../shared/HAL_SPI.h" diff --git a/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h b/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h index 5a4bde16a5e6..f130f5cad8e1 100644 --- a/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h +++ b/Marlin/src/HAL/STM32F1/inc/Conditionals_post.h @@ -24,7 +24,7 @@ // If no real EEPROM, Flash emulation, or SRAM emulation is available fall back to SD emulation #if USE_FALLBACK_EEPROM #define SDCARD_EEPROM_EMULATION -#elif EITHER(I2C_EEPROM, SPI_EEPROM) +#elif ANY(I2C_EEPROM, SPI_EEPROM) #define USE_SHARED_EEPROM 1 #endif diff --git a/Marlin/src/HAL/STM32F1/pinsDebug.h b/Marlin/src/HAL/STM32F1/pinsDebug.h index 2142f0ebac62..6f8e48f455bd 100644 --- a/Marlin/src/HAL/STM32F1/pinsDebug.h +++ b/Marlin/src/HAL/STM32F1/pinsDebug.h @@ -94,7 +94,7 @@ void pwm_details(const pin_t pin) { timer_dev * const tdev = PIN_MAP[pin].timer_device; const uint8_t channel = PIN_MAP[pin].timer_channel; const char num = ( - #if EITHER(STM32_HIGH_DENSITY, STM32_XL_DENSITY) + #if ANY(STM32_HIGH_DENSITY, STM32_XL_DENSITY) tdev == &timer8 ? '8' : tdev == &timer5 ? '5' : #endif diff --git a/Marlin/src/HAL/STM32F1/sdio.cpp b/Marlin/src/HAL/STM32F1/sdio.cpp index b00be302179d..1ab76440b7aa 100644 --- a/Marlin/src/HAL/STM32F1/sdio.cpp +++ b/Marlin/src/HAL/STM32F1/sdio.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfig.h" // Allow pins/pins.h to set density -#if EITHER(STM32_HIGH_DENSITY, STM32_XL_DENSITY) +#if ANY(STM32_HIGH_DENSITY, STM32_XL_DENSITY) #include "sdio.h" diff --git a/Marlin/src/HAL/shared/HAL_ST7920.h b/Marlin/src/HAL/shared/HAL_ST7920.h index 4e362f96ba55..305736c3a514 100644 --- a/Marlin/src/HAL/shared/HAL_ST7920.h +++ b/Marlin/src/HAL/shared/HAL_ST7920.h @@ -27,7 +27,7 @@ * (bypassing U8G), it will allow the LIGHTWEIGHT_UI to operate. */ -#if BOTH(HAS_MARLINUI_U8GLIB, LIGHTWEIGHT_UI) +#if ALL(HAS_MARLINUI_U8GLIB, LIGHTWEIGHT_UI) void ST7920_cs(); void ST7920_ncs(); void ST7920_set_cmd(); diff --git a/Marlin/src/HAL/shared/eeprom_api.cpp b/Marlin/src/HAL/shared/eeprom_api.cpp index 47cfa5a2dbe0..083ccc70d7c9 100644 --- a/Marlin/src/HAL/shared/eeprom_api.cpp +++ b/Marlin/src/HAL/shared/eeprom_api.cpp @@ -22,7 +22,7 @@ */ #include "../../inc/MarlinConfigPre.h" -#if EITHER(EEPROM_SETTINGS, SD_FIRMWARE_UPDATE) +#if ANY(EEPROM_SETTINGS, SD_FIRMWARE_UPDATE) #include "eeprom_api.h" PersistentStore persistentStore; diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index 779dea4ca274..618410903080 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -199,7 +199,7 @@ #include "feature/runout.h" #endif -#if EITHER(PROBE_TARE, HAS_Z_SERVO_PROBE) +#if ANY(PROBE_TARE, HAS_Z_SERVO_PROBE) #include "module/probe.h" #endif @@ -726,7 +726,7 @@ inline void manage_inactivity(const bool no_stepper_sleep=false) { #endif } -#if BOTH(EP_BABYSTEPPING, EMERGENCY_PARSER) +#if ALL(EP_BABYSTEPPING, EMERGENCY_PARSER) #include "feature/babystep.h" #endif @@ -853,7 +853,7 @@ void idle(const bool no_stepper_sleep/*=false*/) { TERN_(POLL_JOG, joystick.inject_jog_moves()); // Async Babystepping via the Emergency Parser - #if BOTH(EP_BABYSTEPPING, EMERGENCY_PARSER) + #if ALL(EP_BABYSTEPPING, EMERGENCY_PARSER) babystep.do_ep_steps(); #endif @@ -924,7 +924,7 @@ void minkill(const bool steppers_off/*=false*/) { TERN_(HAS_SUICIDE, suicide()); - #if EITHER(HAS_KILL, SOFT_RESET_ON_KILL) + #if ANY(HAS_KILL, SOFT_RESET_ON_KILL) // Wait for both KILL and ENC to be released while (TERN0(HAS_KILL, kill_state()) || TERN0(SOFT_RESET_ON_KILL, ui.button_pressed())) @@ -953,7 +953,7 @@ void stop() { print_job_timer.stop(); - #if EITHER(PROBING_FANS_OFF, ADVANCED_PAUSE_FANS_PAUSE) + #if ANY(PROBING_FANS_OFF, ADVANCED_PAUSE_FANS_PAUSE) thermalManager.set_fans_paused(false); // Un-pause fans for safety #endif @@ -1315,14 +1315,14 @@ void setup() { #endif #endif - #if BOTH(HAS_MEDIA, SDCARD_EEPROM_EMULATION) + #if ALL(HAS_MEDIA, SDCARD_EEPROM_EMULATION) SETUP_RUN(card.mount()); // Mount media with settings before first_load #endif SETUP_RUN(settings.first_load()); // Load data from EEPROM if available (or use defaults) // This also updates variables in the planner, elsewhere - #if BOTH(HAS_WIRED_LCD, SHOW_BOOTSCREEN) + #if ALL(HAS_WIRED_LCD, SHOW_BOOTSCREEN) SETUP_RUN(ui.show_bootscreen()); const millis_t bootscreen_ms = millis(); #endif @@ -1397,7 +1397,7 @@ void setup() { SETUP_RUN(stepper_dac.init()); #endif - #if EITHER(Z_PROBE_SLED, SOLENOID_PROBE) && HAS_SOLENOID_1 + #if ANY(Z_PROBE_SLED, SOLENOID_PROBE) && HAS_SOLENOID_1 OUT_WRITE(SOL1_PIN, LOW); // OFF #endif @@ -1605,7 +1605,7 @@ void setup() { SETUP_RUN(tft_lvgl_init()); #endif - #if BOTH(HAS_WIRED_LCD, SHOW_BOOTSCREEN) + #if ALL(HAS_WIRED_LCD, SHOW_BOOTSCREEN) const millis_t elapsed = millis() - bootscreen_ms; #if ENABLED(MARLIN_DEV_MODE) SERIAL_ECHOLNPGM("elapsed=", elapsed); @@ -1617,7 +1617,7 @@ void setup() { SETUP_RUN(password.lock_machine()); // Will not proceed until correct password provided #endif - #if BOTH(HAS_MARLINUI_MENU, TOUCH_SCREEN_CALIBRATION) && EITHER(TFT_CLASSIC_UI, TFT_COLOR_UI) + #if ALL(HAS_MARLINUI_MENU, TOUCH_SCREEN_CALIBRATION) && ANY(TFT_CLASSIC_UI, TFT_COLOR_UI) SETUP_RUN(ui.check_touch_calibration()); #endif @@ -1674,7 +1674,7 @@ void loop() { queue.advance(); - #if EITHER(POWER_OFF_TIMER, POWER_OFF_WAIT_FOR_COOLDOWN) + #if ANY(POWER_OFF_TIMER, POWER_OFF_WAIT_FOR_COOLDOWN) powerManager.checkAutoPowerOff(); #endif diff --git a/Marlin/src/core/language.h b/Marlin/src/core/language.h index 521fcfca3ec9..b76a3d301cc5 100644 --- a/Marlin/src/core/language.h +++ b/Marlin/src/core/language.h @@ -508,7 +508,7 @@ #define STR_W "" #endif -#if EITHER(HAS_MARLINUI_HD44780, IS_TFTGLCD_PANEL) +#if ANY(HAS_MARLINUI_HD44780, IS_TFTGLCD_PANEL) // Custom characters defined in the first 8 characters of the LCD #define LCD_STR_BEDTEMP "\x00" // Print only as a char. This will have 'unexpected' results when used in a string! diff --git a/Marlin/src/core/macros.h b/Marlin/src/core/macros.h index 7e20f838032a..c44d60843ad2 100644 --- a/Marlin/src/core/macros.h +++ b/Marlin/src/core/macros.h @@ -192,7 +192,11 @@ #define _DIS_1(O) NOT(_ENA_1(O)) #define ENABLED(V...) DO(ENA,&&,V) #define DISABLED(V...) DO(DIS,&&,V) +#define ANY(V...) !DISABLED(V) +#define ALL ENABLED +#define NONE DISABLED #define COUNT_ENABLED(V...) DO(ENA,+,V) +#define MANY(V...) (COUNT_ENABLED(V) > 1) #define TERN(O,A,B) _TERN(_ENA_1(O),B,A) // OPTION ? 'A' : 'B' #define TERN0(O,A) _TERN(_ENA_1(O),0,A) // OPTION ? 'A' : '0' @@ -216,16 +220,8 @@ #define SUM_TERN(O,B,A) ((B) PLUS_TERN0(O,A)) // ((B) (OPTION ? '+ (A)' : '')) #define DIFF_TERN(O,B,A) ((B) MINUS_TERN0(O,A)) // ((B) (OPTION ? '- (A)' : '')) -#define IF_ENABLED TERN_ #define IF_DISABLED(O,A) TERN(O,,A) -#define ANY(V...) !DISABLED(V) -#define NONE(V...) DISABLED(V) -#define ALL(V...) ENABLED(V) -#define BOTH(V1,V2) ALL(V1,V2) -#define EITHER(V1,V2) ANY(V1,V2) -#define MANY(V...) (COUNT_ENABLED(V) > 1) - // Macros to support pins/buttons exist testing #define PIN_EXISTS(PN) (defined(PN##_PIN) && PN##_PIN >= 0) #define _PINEX_1 PIN_EXISTS diff --git a/Marlin/src/feature/babystep.cpp b/Marlin/src/feature/babystep.cpp index c8c1d42f886b..e431e40165ff 100644 --- a/Marlin/src/feature/babystep.cpp +++ b/Marlin/src/feature/babystep.cpp @@ -42,7 +42,7 @@ volatile int16_t Babystep::steps[BS_AXIS_IND(Z_AXIS) + 1]; #endif int16_t Babystep::accum; -#if BOTH(EP_BABYSTEPPING, EMERGENCY_PARSER) +#if ALL(EP_BABYSTEPPING, EMERGENCY_PARSER) int16_t Babystep::ep_babysteps; #endif diff --git a/Marlin/src/feature/babystep.h b/Marlin/src/feature/babystep.h index 1e319ec5446d..70a529a0c3c5 100644 --- a/Marlin/src/feature/babystep.h +++ b/Marlin/src/feature/babystep.h @@ -31,7 +31,7 @@ #define BABYSTEP_TICKS ((TEMP_TIMER_RATE) / (BABYSTEPS_PER_SEC)) #endif -#if IS_CORE || EITHER(BABYSTEP_XY, I2C_POSITION_ENCODERS) +#if ANY(IS_CORE, BABYSTEP_XY, I2C_POSITION_ENCODERS) #define BS_AXIS_IND(A) A #define BS_AXIS(I) AxisEnum(I) #else @@ -52,7 +52,7 @@ class Babystep { static volatile int16_t steps[BS_AXIS_IND(Z_AXIS) + 1]; static int16_t accum; // Total babysteps in current edit - #if BOTH(EP_BABYSTEPPING, EMERGENCY_PARSER) + #if ALL(EP_BABYSTEPPING, EMERGENCY_PARSER) static int16_t ep_babysteps; #endif diff --git a/Marlin/src/feature/backlash.cpp b/Marlin/src/feature/backlash.cpp index 8d180c7a4a3e..c6eb0d33f309 100644 --- a/Marlin/src/feature/backlash.cpp +++ b/Marlin/src/feature/backlash.cpp @@ -66,7 +66,7 @@ Backlash backlash; void Backlash::add_correction_steps(const int32_t &da, const int32_t &db, const int32_t &dc, const AxisBits dm, block_t * const block) { AxisBits changed_dir = last_direction_bits ^ dm; // Ignore direction change unless steps are taken in that direction - #if DISABLED(CORE_BACKLASH) || EITHER(MARKFORGED_XY, MARKFORGED_YX) + #if DISABLED(CORE_BACKLASH) || ANY(MARKFORGED_XY, MARKFORGED_YX) if (!da) changed_dir.x = false; if (!db) changed_dir.y = false; if (!dc) changed_dir.z = false; diff --git a/Marlin/src/feature/bedlevel/bedlevel.cpp b/Marlin/src/feature/bedlevel/bedlevel.cpp index 03b67745ec16..0bb8b8191a5e 100644 --- a/Marlin/src/feature/bedlevel/bedlevel.cpp +++ b/Marlin/src/feature/bedlevel/bedlevel.cpp @@ -27,7 +27,7 @@ #include "bedlevel.h" #include "../../module/planner.h" -#if EITHER(MESH_BED_LEVELING, PROBE_MANUALLY) +#if ANY(MESH_BED_LEVELING, PROBE_MANUALLY) #include "../../module/motion.h" #endif @@ -120,7 +120,7 @@ void reset_bed_level() { TERN_(ABL_PLANAR, planner.bed_level_matrix.set_to_identity()); } -#if EITHER(AUTO_BED_LEVELING_BILINEAR, MESH_BED_LEVELING) +#if ANY(AUTO_BED_LEVELING_BILINEAR, MESH_BED_LEVELING) /** * Enable to produce output in JSON format suitable @@ -188,7 +188,7 @@ void reset_bed_level() { #endif // AUTO_BED_LEVELING_BILINEAR || MESH_BED_LEVELING -#if EITHER(MESH_BED_LEVELING, PROBE_MANUALLY) +#if ANY(MESH_BED_LEVELING, PROBE_MANUALLY) void _manual_goto_xy(const xy_pos_t &pos) { diff --git a/Marlin/src/feature/bedlevel/bedlevel.h b/Marlin/src/feature/bedlevel/bedlevel.h index aeafec10d6ab..ccb9543e72e5 100644 --- a/Marlin/src/feature/bedlevel/bedlevel.h +++ b/Marlin/src/feature/bedlevel/bedlevel.h @@ -23,7 +23,7 @@ #include "../../inc/MarlinConfigPre.h" -#if EITHER(RESTORE_LEVELING_AFTER_G28, ENABLE_LEVELING_AFTER_G28) +#if ANY(RESTORE_LEVELING_AFTER_G28, ENABLE_LEVELING_AFTER_G28) #define CAN_SET_LEVELING_AFTER_G28 1 #endif @@ -41,7 +41,7 @@ void reset_bed_level(); void set_z_fade_height(const_float_t zfh, const bool do_report=true); #endif -#if EITHER(MESH_BED_LEVELING, PROBE_MANUALLY) +#if ANY(MESH_BED_LEVELING, PROBE_MANUALLY) void _manual_goto_xy(const xy_pos_t &pos); #endif @@ -69,7 +69,7 @@ class TemporaryBedLevelingState { #include "mbl/mesh_bed_leveling.h" #endif - #if EITHER(AUTO_BED_LEVELING_BILINEAR, MESH_BED_LEVELING) + #if ANY(AUTO_BED_LEVELING_BILINEAR, MESH_BED_LEVELING) #include diff --git a/Marlin/src/feature/cancel_object.cpp b/Marlin/src/feature/cancel_object.cpp index bffd2bb72020..9b658315ed8b 100644 --- a/Marlin/src/feature/cancel_object.cpp +++ b/Marlin/src/feature/cancel_object.cpp @@ -44,7 +44,7 @@ void CancelObject::set_active_object(const int8_t obj) { else skipping = false; - #if BOTH(HAS_STATUS_MESSAGE, CANCEL_OBJECTS_REPORTING) + #if ALL(HAS_STATUS_MESSAGE, CANCEL_OBJECTS_REPORTING) if (active_object >= 0) ui.status_printf(0, F(S_FMT " %i"), GET_TEXT(MSG_PRINTING_OBJECT), int(active_object)); else diff --git a/Marlin/src/feature/cooler.cpp b/Marlin/src/feature/cooler.cpp index e0f99777d19a..6c45e992262e 100644 --- a/Marlin/src/feature/cooler.cpp +++ b/Marlin/src/feature/cooler.cpp @@ -22,7 +22,7 @@ #include "../inc/MarlinConfig.h" -#if EITHER(HAS_COOLER, LASER_COOLANT_FLOW_METER) +#if ANY(HAS_COOLER, LASER_COOLANT_FLOW_METER) #include "cooler.h" Cooler cooler; diff --git a/Marlin/src/feature/host_actions.cpp b/Marlin/src/feature/host_actions.cpp index a1c1bad5bb44..235253b5a345 100644 --- a/Marlin/src/feature/host_actions.cpp +++ b/Marlin/src/feature/host_actions.cpp @@ -187,13 +187,13 @@ void HostUI::action(FSTR_P const fstr, const bool eol) { switch (response) { case 0: // "Purge More" button - #if BOTH(M600_PURGE_MORE_RESUMABLE, ADVANCED_PAUSE_FEATURE) + #if ALL(M600_PURGE_MORE_RESUMABLE, ADVANCED_PAUSE_FEATURE) pause_menu_response = PAUSE_RESPONSE_EXTRUDE_MORE; // Simulate menu selection (menu exits, doesn't extrude more) #endif break; case 1: // "Continue" / "Disable Runout" button - #if BOTH(M600_PURGE_MORE_RESUMABLE, ADVANCED_PAUSE_FEATURE) + #if ALL(M600_PURGE_MORE_RESUMABLE, ADVANCED_PAUSE_FEATURE) pause_menu_response = PAUSE_RESPONSE_RESUME_PRINT; // Simulate menu selection #endif #if HAS_FILAMENT_SENSOR @@ -209,7 +209,7 @@ void HostUI::action(FSTR_P const fstr, const bool eol) { TERN_(HAS_RESUME_CONTINUE, wait_for_user = false); break; case PROMPT_PAUSE_RESUME: - #if BOTH(ADVANCED_PAUSE_FEATURE, HAS_MEDIA) + #if ALL(ADVANCED_PAUSE_FEATURE, HAS_MEDIA) extern const char M24_STR[]; queue.inject_P(M24_STR); #endif diff --git a/Marlin/src/feature/leds/leds.cpp b/Marlin/src/feature/leds/leds.cpp index 94900445dcbc..45810a31ab3c 100644 --- a/Marlin/src/feature/leds/leds.cpp +++ b/Marlin/src/feature/leds/leds.cpp @@ -30,7 +30,7 @@ #include "leds.h" -#if EITHER(CASE_LIGHT_USE_RGB_LED, CASE_LIGHT_USE_NEOPIXEL) +#if ANY(CASE_LIGHT_USE_RGB_LED, CASE_LIGHT_USE_NEOPIXEL) #include "../../feature/caselight.h" #endif @@ -50,7 +50,7 @@ LEDLights leds; void LEDLights::setup() { - #if EITHER(RGB_LED, RGBW_LED) + #if ANY(RGB_LED, RGBW_LED) if (PWM_PIN(RGB_LED_R_PIN)) SET_PWM(RGB_LED_R_PIN); else SET_OUTPUT(RGB_LED_R_PIN); if (PWM_PIN(RGB_LED_G_PIN)) SET_PWM(RGB_LED_G_PIN); else SET_OUTPUT(RGB_LED_G_PIN); if (PWM_PIN(RGB_LED_B_PIN)) SET_PWM(RGB_LED_B_PIN); else SET_OUTPUT(RGB_LED_B_PIN); @@ -96,7 +96,7 @@ void LEDLights::setup() { } #endif // RGB_STARTUP_TEST - #elif BOTH(PCA9632, RGB_STARTUP_TEST) // PCA9632 RGB_STARTUP_TEST + #elif ALL(PCA9632, RGB_STARTUP_TEST) // PCA9632 RGB_STARTUP_TEST constexpr int8_t led_pin_count = TERN(HAS_WHITE_LED, 4, 3); @@ -176,7 +176,7 @@ void LEDLights::set_color(const LEDColor &incol #endif #endif - #if BOTH(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL) + #if ALL(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL) // Update brightness only if caselight is ON or switching leds off if (caselight.on || incol.is_off()) #endif @@ -191,7 +191,7 @@ void LEDLights::set_color(const LEDColor &incol } #endif - #if BOTH(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL) + #if ALL(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL) // Update color only if caselight is ON or switching leds off if (caselight.on || incol.is_off()) #endif @@ -206,7 +206,7 @@ void LEDLights::set_color(const LEDColor &incol #endif - #if EITHER(RGB_LED, RGBW_LED) + #if ANY(RGB_LED, RGBW_LED) // This variant uses 3-4 separate pins for the RGB(W) components. // If the pins can do PWM then their intensity will be set. @@ -228,7 +228,7 @@ void LEDLights::set_color(const LEDColor &incol TERN_(PCA9632, PCA9632_set_led_color(incol)); TERN_(PCA9533, PCA9533_set_rgb(incol.r, incol.g, incol.b)); - #if EITHER(LED_CONTROL_MENU, PRINTER_EVENT_LEDS) + #if ANY(LED_CONTROL_MENU, PRINTER_EVENT_LEDS) // Don't update the color when OFF lights_on = !incol.is_off(); if (lights_on) color = incol; diff --git a/Marlin/src/feature/leds/leds.h b/Marlin/src/feature/leds/leds.h index c6137b45c355..7a31ca685d49 100644 --- a/Marlin/src/feature/leds/leds.h +++ b/Marlin/src/feature/leds/leds.h @@ -30,7 +30,7 @@ #include // A white component can be passed -#if EITHER(RGBW_LED, PCA9632_RGBW) +#if ANY(RGBW_LED, PCA9632_RGBW) #define HAS_WHITE_LED 1 #endif @@ -164,7 +164,7 @@ class LEDLights { #if ENABLED(LED_CONTROL_MENU) static void toggle(); // swap "off" with color #endif - #if EITHER(LED_CONTROL_MENU, CASE_LIGHT_USE_RGB_LED) || LED_POWEROFF_TIMEOUT > 0 + #if ANY(LED_CONTROL_MENU, CASE_LIGHT_USE_RGB_LED) || LED_POWEROFF_TIMEOUT > 0 static void update() { set_color(color); } #endif diff --git a/Marlin/src/feature/leds/neopixel.cpp b/Marlin/src/feature/leds/neopixel.cpp index 2193217df055..1b0772c2f9a6 100644 --- a/Marlin/src/feature/leds/neopixel.cpp +++ b/Marlin/src/feature/leds/neopixel.cpp @@ -30,7 +30,7 @@ #include "leds.h" -#if EITHER(NEOPIXEL_STARTUP_TEST, NEOPIXEL2_STARTUP_TEST) +#if ANY(NEOPIXEL_STARTUP_TEST, NEOPIXEL2_STARTUP_TEST) #include "../../core/utility.h" #endif diff --git a/Marlin/src/feature/leds/neopixel.h b/Marlin/src/feature/leds/neopixel.h index 3801ded6aa45..6cc8b6157e80 100644 --- a/Marlin/src/feature/leds/neopixel.h +++ b/Marlin/src/feature/leds/neopixel.h @@ -58,7 +58,7 @@ #define MULTIPLE_NEOPIXEL_TYPES 1 #endif -#if EITHER(MULTIPLE_NEOPIXEL_TYPES, NEOPIXEL2_INSERIES) +#if ANY(MULTIPLE_NEOPIXEL_TYPES, NEOPIXEL2_INSERIES) #define CONJOINED_NEOPIXEL 1 #endif diff --git a/Marlin/src/feature/mixing.cpp b/Marlin/src/feature/mixing.cpp index cf88b806f542..7c9c54a314b8 100644 --- a/Marlin/src/feature/mixing.cpp +++ b/Marlin/src/feature/mixing.cpp @@ -42,7 +42,7 @@ int_fast8_t Mixer::runner = 0; mixer_comp_t Mixer::s_color[MIXING_STEPPERS]; mixer_accu_t Mixer::accu[MIXING_STEPPERS] = { 0 }; -#if EITHER(HAS_DUAL_MIXING, GRADIENT_MIX) +#if ANY(HAS_DUAL_MIXING, GRADIENT_MIX) mixer_perc_t Mixer::mix[MIXING_STEPPERS]; #endif @@ -138,7 +138,7 @@ void Mixer::init() { color[MIXER_AUTORETRACT_TOOL][i] = COLOR_A_MASK; #endif - #if EITHER(HAS_DUAL_MIXING, GRADIENT_MIX) + #if ANY(HAS_DUAL_MIXING, GRADIENT_MIX) update_mix_from_vtool(); #endif diff --git a/Marlin/src/feature/mixing.h b/Marlin/src/feature/mixing.h index 3a14fdad5975..a43b0599447a 100644 --- a/Marlin/src/feature/mixing.h +++ b/Marlin/src/feature/mixing.h @@ -122,7 +122,7 @@ class Mixer { MIXER_STEPPER_LOOP(i) s_color[i] = b_color[i]; } - #if EITHER(HAS_DUAL_MIXING, GRADIENT_MIX) + #if ANY(HAS_DUAL_MIXING, GRADIENT_MIX) static mixer_perc_t mix[MIXING_STEPPERS]; // Scratch array for the Mix in proportion to 100 diff --git a/Marlin/src/feature/mmu/mmu2.cpp b/Marlin/src/feature/mmu/mmu2.cpp index 8aec1dc1db1b..fbfcf3fd3f7f 100644 --- a/Marlin/src/feature/mmu/mmu2.cpp +++ b/Marlin/src/feature/mmu/mmu2.cpp @@ -135,7 +135,7 @@ void MMU2::reset() { int8_t MMU2::get_current_tool() { return extruder == MMU2_NO_TOOL ? -1 : extruder; } -#if EITHER(HAS_PRUSA_MMU2S, MMU_EXTRUDER_SENSOR) +#if ANY(HAS_PRUSA_MMU2S, MMU_EXTRUDER_SENSOR) #define FILAMENT_PRESENT() (READ(FIL_RUNOUT1_PIN) != FIL_RUNOUT1_STATE) #else #define FILAMENT_PRESENT() true diff --git a/Marlin/src/feature/pause.cpp b/Marlin/src/feature/pause.cpp index 504a9f61c78a..6e57f6e2dc84 100644 --- a/Marlin/src/feature/pause.cpp +++ b/Marlin/src/feature/pause.cpp @@ -210,7 +210,7 @@ bool load_filament(const_float_t slow_load_length/*=0*/, const_float_t fast_load while (wait_for_user) { impatient_beep(max_beep_count); - #if BOTH(FILAMENT_CHANGE_RESUME_ON_INSERT, FILAMENT_RUNOUT_SENSOR) + #if ALL(FILAMENT_CHANGE_RESUME_ON_INSERT, FILAMENT_RUNOUT_SENSOR) #if MULTI_FILAMENT_SENSOR #define _CASE_INSERTED(N) case N-1: if (READ(FIL_RUNOUT##N##_PIN) != FIL_RUNOUT##N##_STATE) wait_for_user = false; break; switch (active_extruder) { @@ -286,7 +286,7 @@ bool load_filament(const_float_t slow_load_length/*=0*/, const_float_t fast_load // Show "Purge More" / "Resume" menu and wait for reply KEEPALIVE_STATE(PAUSED_FOR_USER); wait_for_user = false; - #if EITHER(HAS_MARLINUI_MENU, DWIN_LCD_PROUI) + #if ANY(HAS_MARLINUI_MENU, DWIN_LCD_PROUI) ui.pause_show_message(PAUSE_MESSAGE_OPTION); // Also sets PAUSE_RESPONSE_WAIT_FOR #else pause_menu_response = PAUSE_RESPONSE_WAIT_FOR; @@ -331,18 +331,18 @@ inline void disable_active_extruder() { */ bool unload_filament(const_float_t unload_length, const bool show_lcd/*=false*/, const PauseMode mode/*=PAUSE_MODE_PAUSE_PRINT*/ - #if BOTH(FILAMENT_UNLOAD_ALL_EXTRUDERS, MIXING_EXTRUDER) + #if ALL(FILAMENT_UNLOAD_ALL_EXTRUDERS, MIXING_EXTRUDER) , const_float_t mix_multiplier/*=1.0*/ #endif ) { DEBUG_SECTION(uf, "unload_filament", true); DEBUG_ECHOLNPGM("... unloadlen:", unload_length, " showlcd:", show_lcd, " mode:", mode - #if BOTH(FILAMENT_UNLOAD_ALL_EXTRUDERS, MIXING_EXTRUDER) + #if ALL(FILAMENT_UNLOAD_ALL_EXTRUDERS, MIXING_EXTRUDER) , " mixmult:", mix_multiplier #endif ); - #if !BOTH(FILAMENT_UNLOAD_ALL_EXTRUDERS, MIXING_EXTRUDER) + #if !ALL(FILAMENT_UNLOAD_ALL_EXTRUDERS, MIXING_EXTRUDER) constexpr float mix_multiplier = 1.0f; #endif @@ -445,7 +445,7 @@ bool pause_print(const_float_t retract, const xyz_pos_t &park_point, const bool // Wait for buffered blocks to complete planner.synchronize(); - #if BOTH(ADVANCED_PAUSE_FANS_PAUSE, HAS_FAN) + #if ALL(ADVANCED_PAUSE_FANS_PAUSE, HAS_FAN) thermalManager.set_fans_paused(true); #endif diff --git a/Marlin/src/feature/pause.h b/Marlin/src/feature/pause.h index 134b1d1b3294..7ea0c03b6bbb 100644 --- a/Marlin/src/feature/pause.h +++ b/Marlin/src/feature/pause.h @@ -117,7 +117,7 @@ bool unload_filament( const_float_t unload_length, // (mm) Filament Unload Length - 0 to skip const bool show_lcd=false, // Set LCD status messages? const PauseMode mode=PAUSE_MODE_PAUSE_PRINT // Pause Mode to apply - #if BOTH(FILAMENT_UNLOAD_ALL_EXTRUDERS, MIXING_EXTRUDER) + #if ALL(FILAMENT_UNLOAD_ALL_EXTRUDERS, MIXING_EXTRUDER) , const_float_t mix_multiplier=1.0f // Extrusion multiplier (for a Mixing Extruder) #endif ); diff --git a/Marlin/src/feature/power.cpp b/Marlin/src/feature/power.cpp index 8a16628bac45..d0f8a66fec36 100644 --- a/Marlin/src/feature/power.cpp +++ b/Marlin/src/feature/power.cpp @@ -26,7 +26,7 @@ #include "../inc/MarlinConfigPre.h" -#if EITHER(PSU_CONTROL, AUTO_POWER_CONTROL) +#if ANY(PSU_CONTROL, AUTO_POWER_CONTROL) #include "power.h" #include "../module/planner.h" @@ -49,7 +49,7 @@ bool Power::psu_on; #include "../module/stepper.h" #include "../module/temperature.h" - #if BOTH(USE_CONTROLLER_FAN, AUTO_POWER_CONTROLLERFAN) + #if ALL(USE_CONTROLLER_FAN, AUTO_POWER_CONTROLLERFAN) #include "controllerfan.h" #endif @@ -78,7 +78,7 @@ void Power::power_on() { if (psu_on) return; - #if EITHER(POWER_OFF_TIMER, POWER_OFF_WAIT_FOR_COOLDOWN) + #if ANY(POWER_OFF_TIMER, POWER_OFF_WAIT_FOR_COOLDOWN) cancelAutoPowerOff(); #endif @@ -115,12 +115,12 @@ void Power::power_off() { OUT_WRITE(PS_ON_PIN, !PSU_ACTIVE_STATE); psu_on = false; - #if EITHER(POWER_OFF_TIMER, POWER_OFF_WAIT_FOR_COOLDOWN) + #if ANY(POWER_OFF_TIMER, POWER_OFF_WAIT_FOR_COOLDOWN) cancelAutoPowerOff(); #endif } -#if EITHER(AUTO_POWER_CONTROL, POWER_OFF_WAIT_FOR_COOLDOWN) +#if ANY(AUTO_POWER_CONTROL, POWER_OFF_WAIT_FOR_COOLDOWN) bool Power::is_cooling_needed() { #if HAS_HOTEND && AUTO_POWER_E_TEMP @@ -140,7 +140,7 @@ void Power::power_off() { #endif -#if EITHER(POWER_OFF_TIMER, POWER_OFF_WAIT_FOR_COOLDOWN) +#if ANY(POWER_OFF_TIMER, POWER_OFF_WAIT_FOR_COOLDOWN) #if ENABLED(POWER_OFF_TIMER) millis_t Power::power_off_time = 0; @@ -192,7 +192,7 @@ void Power::power_off() { HOTEND_LOOP() if (thermalManager.autofan_speed[e]) return true; #endif - #if BOTH(USE_CONTROLLER_FAN, AUTO_POWER_CONTROLLERFAN) + #if ALL(USE_CONTROLLER_FAN, AUTO_POWER_CONTROLLERFAN) if (controllerFan.state()) return true; #endif diff --git a/Marlin/src/feature/power.h b/Marlin/src/feature/power.h index 839366ca602b..fdbb7126ceae 100644 --- a/Marlin/src/feature/power.h +++ b/Marlin/src/feature/power.h @@ -25,7 +25,7 @@ * power.h - power control */ -#if EITHER(AUTO_POWER_CONTROL, POWER_OFF_TIMER) +#if ANY(AUTO_POWER_CONTROL, POWER_OFF_TIMER) #include "../core/millis_t.h" #endif @@ -37,7 +37,7 @@ class Power { static void power_on(); static void power_off(); - #if EITHER(POWER_OFF_TIMER, POWER_OFF_WAIT_FOR_COOLDOWN) + #if ANY(POWER_OFF_TIMER, POWER_OFF_WAIT_FOR_COOLDOWN) #if ENABLED(POWER_OFF_TIMER) static millis_t power_off_time; static void setPowerOffTimer(const millis_t delay_ms); diff --git a/Marlin/src/feature/powerloss.cpp b/Marlin/src/feature/powerloss.cpp index 29c4695ca476..24ff2b219582 100644 --- a/Marlin/src/feature/powerloss.cpp +++ b/Marlin/src/feature/powerloss.cpp @@ -699,7 +699,7 @@ void PrintJobRecovery::resume() { #endif // Mixing extruder and gradient - #if BOTH(MIXING_EXTRUDER, GRADIENT_MIX) + #if ALL(MIXING_EXTRUDER, GRADIENT_MIX) DEBUG_ECHOLNPGM("gradient: ", info.gradient.enabled ? "ON" : "OFF"); #endif diff --git a/Marlin/src/feature/solenoid.cpp b/Marlin/src/feature/solenoid.cpp index 861e44ed05de..46364eaf8f5b 100644 --- a/Marlin/src/feature/solenoid.cpp +++ b/Marlin/src/feature/solenoid.cpp @@ -22,7 +22,7 @@ #include "../inc/MarlinConfig.h" -#if EITHER(EXT_SOLENOID, MANUAL_SOLENOID_CONTROL) +#if ANY(EXT_SOLENOID, MANUAL_SOLENOID_CONTROL) #include "solenoid.h" diff --git a/Marlin/src/gcode/bedlevel/G35.cpp b/Marlin/src/gcode/bedlevel/G35.cpp index f5f395ee2e25..901e97ab756b 100644 --- a/Marlin/src/gcode/bedlevel/G35.cpp +++ b/Marlin/src/gcode/bedlevel/G35.cpp @@ -144,7 +144,7 @@ void GcodeSuite::G35() { // Restore the active tool after homing probe.use_probing_tool(false); - #if BOTH(HAS_LEVELING, RESTORE_LEVELING_AFTER_G35) + #if ALL(HAS_LEVELING, RESTORE_LEVELING_AFTER_G35) set_bed_leveling_enabled(leveling_was_active); #endif diff --git a/Marlin/src/gcode/bedlevel/abl/G29.cpp b/Marlin/src/gcode/bedlevel/abl/G29.cpp index 1fe4a31bee48..5c86f4b99168 100644 --- a/Marlin/src/gcode/bedlevel/abl/G29.cpp +++ b/Marlin/src/gcode/bedlevel/abl/G29.cpp @@ -97,7 +97,7 @@ class G29_State { bool dryrun, reenable; - #if EITHER(PROBE_MANUALLY, AUTO_BED_LEVELING_LINEAR) + #if ANY(PROBE_MANUALLY, AUTO_BED_LEVELING_LINEAR) int abl_probe_index; #endif @@ -139,7 +139,7 @@ class G29_State { #endif }; -#if ABL_USES_GRID && EITHER(AUTO_BED_LEVELING_3POINT, AUTO_BED_LEVELING_BILINEAR) +#if ABL_USES_GRID && ANY(AUTO_BED_LEVELING_3POINT, AUTO_BED_LEVELING_BILINEAR) constexpr xy_uint8_t G29_State::grid_points; constexpr grid_count_t G29_State::abl_points; #endif @@ -231,7 +231,7 @@ G29_TYPE GcodeSuite::G29() { reset_stepper_timeout(); // Q = Query leveling and G29 state - const bool seenQ = EITHER(DEBUG_LEVELING_FEATURE, PROBE_MANUALLY) && parser.seen_test('Q'); + const bool seenQ = ANY(DEBUG_LEVELING_FEATURE, PROBE_MANUALLY) && parser.seen_test('Q'); // G29 Q is also available if debugging #if ENABLED(DEBUG_LEVELING_FEATURE) @@ -279,7 +279,7 @@ G29_TYPE GcodeSuite::G29() { probe.use_probing_tool(); - #if EITHER(PROBE_MANUALLY, AUTO_BED_LEVELING_LINEAR) + #if ANY(PROBE_MANUALLY, AUTO_BED_LEVELING_LINEAR) abl.abl_probe_index = -1; #endif @@ -436,7 +436,7 @@ G29_TYPE GcodeSuite::G29() { #if ENABLED(PREHEAT_BEFORE_LEVELING) if (!abl.dryrun) probe.preheat_for_probing(LEVELING_NOZZLE_TEMP, - #if BOTH(DWIN_LCD_PROUI, HAS_HEATED_BED) + #if ALL(DWIN_LCD_PROUI, HAS_HEATED_BED) HMI_data.BedLevT #else LEVELING_BED_TEMP @@ -484,7 +484,7 @@ G29_TYPE GcodeSuite::G29() { if (!no_action) set_bed_leveling_enabled(false); // Deploy certain probes before starting probing - #if ENABLED(BLTOUCH) || BOTH(HAS_Z_SERVO_PROBE, Z_SERVO_INTERMEDIATE_STOW) + #if ENABLED(BLTOUCH) || ALL(HAS_Z_SERVO_PROBE, Z_SERVO_INTERMEDIATE_STOW) do_z_clearance(Z_CLEARANCE_DEPLOY_PROBE); #elif HAS_BED_PROBE if (probe.deploy()) { // (returns true on deploy failure) @@ -542,7 +542,7 @@ G29_TYPE GcodeSuite::G29() { } else { - #if EITHER(AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_3POINT) + #if ANY(AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_3POINT) const uint16_t index = abl.abl_probe_index - 1; #endif diff --git a/Marlin/src/gcode/calibrate/G28.cpp b/Marlin/src/gcode/calibrate/G28.cpp index be593d0d5b1b..fde640fe9895 100644 --- a/Marlin/src/gcode/calibrate/G28.cpp +++ b/Marlin/src/gcode/calibrate/G28.cpp @@ -486,7 +486,7 @@ void GcodeSuite::G28() { } #endif // HAS_X_AXIS - #if BOTH(FOAMCUTTER_XYUV, HAS_I_AXIS) + #if ALL(FOAMCUTTER_XYUV, HAS_I_AXIS) // Home I (after X) if (doI) homeaxis(I_AXIS); #endif @@ -497,7 +497,7 @@ void GcodeSuite::G28() { homeaxis(Y_AXIS); #endif - #if BOTH(FOAMCUTTER_XYUV, HAS_J_AXIS) + #if ALL(FOAMCUTTER_XYUV, HAS_J_AXIS) // Home J (after Y) if (doJ) homeaxis(J_AXIS); #endif @@ -514,7 +514,7 @@ void GcodeSuite::G28() { // Home Z last if homing towards the bed #if DISABLED(HOME_Z_FIRST) if (doZ) { - #if EITHER(Z_MULTI_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) + #if ANY(Z_MULTI_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) stepper.set_all_z_lock(false); stepper.set_separate_multi_axis(false); #endif @@ -525,7 +525,7 @@ void GcodeSuite::G28() { homeaxis(Z_AXIS); #endif - #if EITHER(Z_HOME_TO_MIN, ALLOW_Z_AFTER_HOMING) + #if ANY(Z_HOME_TO_MIN, ALLOW_Z_AFTER_HOMING) finalRaiseZ = true; #endif } diff --git a/Marlin/src/gcode/calibrate/G34_M422.cpp b/Marlin/src/gcode/calibrate/G34_M422.cpp index 3e7ed08b6c1e..a878db2edfec 100644 --- a/Marlin/src/gcode/calibrate/G34_M422.cpp +++ b/Marlin/src/gcode/calibrate/G34_M422.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfigPre.h" -#if EITHER(Z_MULTI_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) +#if ANY(Z_MULTI_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) #include "../../feature/z_stepper_align.h" @@ -431,7 +431,7 @@ void GcodeSuite::G34() { probe.use_probing_tool(false); - #if BOTH(HAS_LEVELING, RESTORE_LEVELING_AFTER_G34) + #if ALL(HAS_LEVELING, RESTORE_LEVELING_AFTER_G34) set_bed_leveling_enabled(leveling_was_active); #endif diff --git a/Marlin/src/gcode/calibrate/G76_M871.cpp b/Marlin/src/gcode/calibrate/G76_M871.cpp index f25c848f2fac..34b72ecdf317 100644 --- a/Marlin/src/gcode/calibrate/G76_M871.cpp +++ b/Marlin/src/gcode/calibrate/G76_M871.cpp @@ -81,7 +81,7 @@ * - `P` - Run probe temperature calibration. */ -#if BOTH(PTC_PROBE, PTC_BED) +#if ALL(PTC_PROBE, PTC_BED) static void say_waiting_for() { SERIAL_ECHOPGM("Waiting for "); } static void say_waiting_for_probe_heating() { say_waiting_for(); SERIAL_ECHOLNPGM("probe heating."); } diff --git a/Marlin/src/gcode/calibrate/M100.cpp b/Marlin/src/gcode/calibrate/M100.cpp index 338392b59746..9141d360e1b9 100644 --- a/Marlin/src/gcode/calibrate/M100.cpp +++ b/Marlin/src/gcode/calibrate/M100.cpp @@ -60,7 +60,7 @@ #define TEST_BYTE ((char) 0xE5) -#if EITHER(__AVR__, IS_32BIT_TEENSY) +#if ANY(__AVR__, IS_32BIT_TEENSY) extern char __bss_end; char *end_bss = &__bss_end, diff --git a/Marlin/src/gcode/calibrate/M666.cpp b/Marlin/src/gcode/calibrate/M666.cpp index 546aa7fcb54a..dbee73f3947b 100644 --- a/Marlin/src/gcode/calibrate/M666.cpp +++ b/Marlin/src/gcode/calibrate/M666.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if EITHER(DELTA, HAS_EXTRA_ENDSTOPS) +#if ANY(DELTA, HAS_EXTRA_ENDSTOPS) #include "../gcode.h" diff --git a/Marlin/src/gcode/control/M380_M381.cpp b/Marlin/src/gcode/control/M380_M381.cpp index 6bcec891e281..20d24484ed0f 100644 --- a/Marlin/src/gcode/control/M380_M381.cpp +++ b/Marlin/src/gcode/control/M380_M381.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if EITHER(EXT_SOLENOID, MANUAL_SOLENOID_CONTROL) +#if ANY(EXT_SOLENOID, MANUAL_SOLENOID_CONTROL) #include "../gcode.h" #include "../../feature/solenoid.h" diff --git a/Marlin/src/gcode/control/M7-M9.cpp b/Marlin/src/gcode/control/M7-M9.cpp index ccde4f552cb9..837bb114b299 100644 --- a/Marlin/src/gcode/control/M7-M9.cpp +++ b/Marlin/src/gcode/control/M7-M9.cpp @@ -37,7 +37,7 @@ } #endif -#if EITHER(COOLANT_FLOOD, AIR_ASSIST) +#if ANY(COOLANT_FLOOD, AIR_ASSIST) #if ENABLED(AIR_ASSIST) #include "../../feature/spindle_laser.h" diff --git a/Marlin/src/gcode/control/M80_M81.cpp b/Marlin/src/gcode/control/M80_M81.cpp index 90b25e7ed34d..94dd5e3dd93f 100644 --- a/Marlin/src/gcode/control/M80_M81.cpp +++ b/Marlin/src/gcode/control/M80_M81.cpp @@ -79,7 +79,7 @@ void GcodeSuite::M81() { print_job_timer.stop(); - #if BOTH(HAS_FAN, PROBING_FANS_OFF) + #if ALL(HAS_FAN, PROBING_FANS_OFF) thermalManager.fans_paused = false; ZERO(thermalManager.saved_fan_speed); #endif diff --git a/Marlin/src/gcode/control/T.cpp b/Marlin/src/gcode/control/T.cpp index 5e8f6b5436d4..5e1579ec123a 100644 --- a/Marlin/src/gcode/control/T.cpp +++ b/Marlin/src/gcode/control/T.cpp @@ -23,7 +23,7 @@ #include "../gcode.h" #include "../../module/tool_change.h" -#if EITHER(HAS_MULTI_EXTRUDER, DEBUG_LEVELING_FEATURE) +#if ANY(HAS_MULTI_EXTRUDER, DEBUG_LEVELING_FEATURE) #include "../../module/motion.h" #endif diff --git a/Marlin/src/gcode/feature/pause/M125.cpp b/Marlin/src/gcode/feature/pause/M125.cpp index d6e6cb93150a..079ae6c1ba5f 100644 --- a/Marlin/src/gcode/feature/pause/M125.cpp +++ b/Marlin/src/gcode/feature/pause/M125.cpp @@ -96,7 +96,7 @@ void GcodeSuite::M125() { const bool show_lcd = TERN0(HAS_MARLINUI_MENU, parser.boolval('P')); if (pause_print(retract, park_point, show_lcd, 0)) { - if (ENABLED(EXTENSIBLE_UI) || BOTH(EMERGENCY_PARSER, HOST_PROMPT_SUPPORT) || !sd_printing || show_lcd) { + if (ENABLED(EXTENSIBLE_UI) || ALL(EMERGENCY_PARSER, HOST_PROMPT_SUPPORT) || !sd_printing || show_lcd) { wait_for_confirmation(false, 0); resume_print(0, 0, -retract, 0); } diff --git a/Marlin/src/gcode/feature/pause/M701_M702.cpp b/Marlin/src/gcode/feature/pause/M701_M702.cpp index 6ec560f5c6d6..aec3a16a2a02 100644 --- a/Marlin/src/gcode/feature/pause/M701_M702.cpp +++ b/Marlin/src/gcode/feature/pause/M701_M702.cpp @@ -199,7 +199,7 @@ void GcodeSuite::M702() { #if HAS_PRUSA_MMU2 mmu2.unload(); #else - #if BOTH(HAS_MULTI_EXTRUDER, FILAMENT_UNLOAD_ALL_EXTRUDERS) + #if ALL(HAS_MULTI_EXTRUDER, FILAMENT_UNLOAD_ALL_EXTRUDERS) if (!parser.seenval('T')) { HOTEND_LOOP() { if (e != active_extruder) tool_change(e); diff --git a/Marlin/src/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index 530cde7901a2..01b48a4af92b 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -82,7 +82,7 @@ millis_t GcodeSuite::previous_move_ms = 0, // Relative motion mode for each logical axis relative_t GcodeSuite::axis_relative; // Init in constructor -#if EITHER(HAS_AUTO_REPORTING, HOST_KEEPALIVE_FEATURE) +#if ANY(HAS_AUTO_REPORTING, HOST_KEEPALIVE_FEATURE) bool GcodeSuite::autoreport_paused; // = false #endif @@ -204,13 +204,13 @@ void GcodeSuite::get_destination_from_command() { TERN_(LASER_FEATURE, cutter.feedrate_mm_m = MMS_TO_MMM(feedrate_mm_s)); } - #if BOTH(PRINTCOUNTER, HAS_EXTRUDERS) + #if ALL(PRINTCOUNTER, HAS_EXTRUDERS) if (!DEBUGGING(DRYRUN) && !skip_move) print_job_timer.incFilamentUsed(destination.e - current_position.e); #endif // Get ABCDHI mixing factors - #if BOTH(MIXING_EXTRUDER, DIRECT_MIXING_IN_G1) + #if ALL(MIXING_EXTRUDER, DIRECT_MIXING_IN_G1) M165(); #endif @@ -442,7 +442,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 61: G61(); break; // G61: Apply/restore saved coordinates. #endif - #if BOTH(PTC_PROBE, PTC_BED) + #if ALL(PTC_PROBE, PTC_BED) case 76: G76(); break; // G76: Calibrate first layer compensation values #endif @@ -484,11 +484,11 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 7: M7(); break; // M7: Coolant Mist ON #endif - #if EITHER(AIR_ASSIST, COOLANT_FLOOD) + #if ANY(AIR_ASSIST, COOLANT_FLOOD) case 8: M8(); break; // M8: Air Assist / Coolant Flood ON #endif - #if EITHER(AIR_ASSIST, COOLANT_CONTROL) + #if ANY(AIR_ASSIST, COOLANT_CONTROL) case 9: M9(); break; // M9: Air Assist / Coolant OFF #endif @@ -528,7 +528,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 33: M33(); break; // M33: Get the long full path to a file or folder #endif - #if BOTH(SDCARD_SORT_ALPHA, SDSORT_GCODE) + #if ALL(SDCARD_SORT_ALPHA, SDSORT_GCODE) case 34: M34(); break; // M34: Set SD card sorting options #endif @@ -628,7 +628,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 154: M154(); break; // M154: Set position auto-report interval #endif - #if BOTH(AUTO_REPORT_TEMPERATURES, HAS_TEMP_SENSOR) + #if ALL(AUTO_REPORT_TEMPERATURES, HAS_TEMP_SENSOR) case 155: M155(); break; // M155: Set temperature auto-report interval #endif @@ -828,7 +828,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 364: if (M364()) return; break; // M364: SCARA Psi pos3 (90 deg to Theta) #endif - #if EITHER(EXT_SOLENOID, MANUAL_SOLENOID_CONTROL) + #if ANY(EXT_SOLENOID, MANUAL_SOLENOID_CONTROL) case 380: M380(); break; // M380: Activate solenoid on active (or specified) extruder case 381: M381(); break; // M381: Disable all solenoids or, if MANUAL_SOLENOID_CONTROL, active (or specified) solenoid #endif @@ -946,7 +946,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 665: M665(); break; // M665: Set Kinematics parameters #endif - #if EITHER(DELTA, HAS_EXTRA_ENDSTOPS) + #if ANY(DELTA, HAS_EXTRA_ENDSTOPS) case 666: M666(); break; // M666: Set delta or multiple endstop adjustment #endif @@ -987,7 +987,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { #if ANY(HAS_MOTOR_CURRENT_SPI, HAS_MOTOR_CURRENT_PWM, HAS_MOTOR_CURRENT_I2C, HAS_MOTOR_CURRENT_DAC) case 907: M907(); break; // M907: Set digital trimpot motor current using axis codes. - #if EITHER(HAS_MOTOR_CURRENT_SPI, HAS_MOTOR_CURRENT_DAC) + #if ANY(HAS_MOTOR_CURRENT_SPI, HAS_MOTOR_CURRENT_DAC) case 908: M908(); break; // M908: Control digital trimpot directly. #if HAS_MOTOR_CURRENT_DAC case 909: M909(); break; // M909: Print digipot/DAC current value diff --git a/Marlin/src/gcode/gcode.h b/Marlin/src/gcode/gcode.h index 52e8fbf8025e..73729491adab 100644 --- a/Marlin/src/gcode/gcode.h +++ b/Marlin/src/gcode/gcode.h @@ -336,7 +336,7 @@ #include "../feature/encoder_i2c.h" #endif -#if EITHER(IS_SCARA, POLAR) || defined(G0_FEEDRATE) +#if ANY(IS_SCARA, POLAR) || defined(G0_FEEDRATE) #define HAS_FAST_MOVES 1 #endif @@ -442,7 +442,7 @@ class GcodeSuite { process_subcommands_now(keep_leveling ? FPSTR(G28_STR) : TERN(CAN_SET_LEVELING_AFTER_G28, F("G28L0"), FPSTR(G28_STR))); } - #if EITHER(HAS_AUTO_REPORTING, HOST_KEEPALIVE_FEATURE) + #if ANY(HAS_AUTO_REPORTING, HOST_KEEPALIVE_FEATURE) static bool autoreport_paused; static bool set_autoreport_paused(const bool p) { const bool was = autoreport_paused; @@ -592,7 +592,7 @@ class GcodeSuite { static void G59(); #endif - #if BOTH(PTC_PROBE, PTC_BED) + #if ALL(PTC_PROBE, PTC_BED) static void G76(); #endif @@ -624,11 +624,11 @@ class GcodeSuite { static void M7(); #endif - #if EITHER(AIR_ASSIST, COOLANT_FLOOD) + #if ANY(AIR_ASSIST, COOLANT_FLOOD) static void M8(); #endif - #if EITHER(AIR_ASSIST, COOLANT_CONTROL) + #if ANY(AIR_ASSIST, COOLANT_CONTROL) static void M9(); #endif @@ -672,7 +672,7 @@ class GcodeSuite { #if ENABLED(LONG_FILENAME_HOST_SUPPORT) static void M33(); #endif - #if BOTH(SDCARD_SORT_ALPHA, SDSORT_GCODE) + #if ALL(SDCARD_SORT_ALPHA, SDSORT_GCODE) static void M34(); #endif #endif @@ -821,7 +821,7 @@ class GcodeSuite { static void M154(); #endif - #if BOTH(AUTO_REPORT_TEMPERATURES, HAS_TEMP_SENSOR) + #if ALL(AUTO_REPORT_TEMPERATURES, HAS_TEMP_SENSOR) static void M155(); #endif @@ -993,7 +993,7 @@ class GcodeSuite { static bool M364(); #endif - #if EITHER(EXT_SOLENOID, MANUAL_SOLENOID_CONTROL) + #if ANY(EXT_SOLENOID, MANUAL_SOLENOID_CONTROL) static void M380(); static void M381(); #endif @@ -1120,7 +1120,7 @@ class GcodeSuite { static void M665_report(const bool forReplay=true); #endif - #if EITHER(DELTA, HAS_EXTRA_ENDSTOPS) + #if ANY(DELTA, HAS_EXTRA_ENDSTOPS) static void M666(); static void M666_report(const bool forReplay=true); #endif diff --git a/Marlin/src/gcode/geometry/G92.cpp b/Marlin/src/gcode/geometry/G92.cpp index b36f21d3c08f..dfe4170620ec 100644 --- a/Marlin/src/gcode/geometry/G92.cpp +++ b/Marlin/src/gcode/geometry/G92.cpp @@ -88,28 +88,28 @@ void GcodeSuite::G92() { case 0: LOOP_LOGICAL_AXES(i) { if (parser.seenval(AXIS_CHAR(i))) { - const float l = parser.value_axis_units((AxisEnum)i), // Given axis coordinate value, converted to millimeters + const float l = parser.value_axis_units((AxisEnum)i), // Given axis coordinate value, converted to millimeters v = TERN0(HAS_EXTRUDERS, i == E_AXIS) ? l : LOGICAL_TO_NATIVE(l, i), // Axis position in NATIVE space (applying the existing offset) - d = v - current_position[i]; // How much is the current axis position altered by? + d = v - current_position[i]; // How much is the current axis position altered by? if (!NEAR_ZERO(d)) { - #if HAS_POSITION_SHIFT && NONE(IS_SCARA, POLARGRAPH) // When using workspaces... + #if HAS_POSITION_SHIFT && NONE(IS_SCARA, POLARGRAPH) // When using workspaces... if (TERN1(HAS_EXTRUDERS, i != E_AXIS)) { - position_shift[i] += d; // ...most axes offset the workspace... + position_shift[i] += d; // ...most axes offset the workspace... update_workspace_offset((AxisEnum)i); } else { #if HAS_EXTRUDERS sync_E = true; - current_position.e = v; // ...but E is set directly + current_position.e = v; // ...but E is set directly #endif } - #else // Without workspaces... + #else // Without workspaces... if (TERN1(HAS_EXTRUDERS, i != E_AXIS)) sync_XYZE = true; else { TERN_(HAS_EXTRUDERS, sync_E = true); } - current_position[i] = v; // ...set Current Position directly (like Marlin 1.0) + current_position[i] = v; // ...set Current Position directly (like Marlin 1.0) #endif } } diff --git a/Marlin/src/gcode/motion/G0_G1.cpp b/Marlin/src/gcode/motion/G0_G1.cpp index 88551f5eb6e9..957541a361d0 100644 --- a/Marlin/src/gcode/motion/G0_G1.cpp +++ b/Marlin/src/gcode/motion/G0_G1.cpp @@ -25,7 +25,7 @@ #include "../../MarlinCore.h" -#if BOTH(FWRETRACT, FWRETRACT_AUTORETRACT) +#if ALL(FWRETRACT, FWRETRACT_AUTORETRACT) #include "../../feature/fwretract.h" #endif @@ -72,7 +72,7 @@ void GcodeSuite::G0_G1(TERN_(HAS_FAST_MOVES, const bool fast_move/*=false*/)) { } #endif - #if BOTH(FWRETRACT, FWRETRACT_AUTORETRACT) + #if ALL(FWRETRACT, FWRETRACT_AUTORETRACT) if (MIN_AUTORETRACT <= MAX_AUTORETRACT) { // When M209 Autoretract is enabled, convert E-only moves to firmware retract/recover moves @@ -91,7 +91,7 @@ void GcodeSuite::G0_G1(TERN_(HAS_FAST_MOVES, const bool fast_move/*=false*/)) { #endif // FWRETRACT - #if EITHER(IS_SCARA, POLAR) + #if ANY(IS_SCARA, POLAR) fast_move ? prepare_fast_move_to_destination() : prepare_line_to_destination(); #else prepare_line_to_destination(); diff --git a/Marlin/src/gcode/parser.cpp b/Marlin/src/gcode/parser.cpp index 3fc1fc1625ad..90586e371f50 100644 --- a/Marlin/src/gcode/parser.cpp +++ b/Marlin/src/gcode/parser.cpp @@ -233,7 +233,7 @@ void GCodeParser::parse(char *p) { #if ENABLED(GCODE_MOTION_MODES) - #if EITHER(BEZIER_CURVE_SUPPORT, ARC_SUPPORT) + #if ANY(BEZIER_CURVE_SUPPORT, ARC_SUPPORT) case 'I' ... 'J': case 'P': if (TERN1(BEZIER_CURVE_SUPPORT, motion_mode_codenum != 5) && TERN1(ARC_P_CIRCLES, !WITHIN(motion_mode_codenum, 2, 3)) diff --git a/Marlin/src/gcode/probe/G30.cpp b/Marlin/src/gcode/probe/G30.cpp index ad797688bb83..4c044af9d6e7 100644 --- a/Marlin/src/gcode/probe/G30.cpp +++ b/Marlin/src/gcode/probe/G30.cpp @@ -79,7 +79,7 @@ void GcodeSuite::G30() { TERN_(HAS_PTC, ptc.set_enabled(true)); if (!isnan(measured_z)) { SERIAL_ECHOLNPGM("Bed X: ", probepos.asLogical().x, " Y: ", probepos.asLogical().y, " Z: ", measured_z); - #if EITHER(DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI) + #if ANY(DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI) char msg[31], str_1[6], str_2[6], str_3[6]; sprintf_P(msg, PSTR("X:%s, Y:%s, Z:%s"), dtostrf(probepos.x, 1, 1, str_1), diff --git a/Marlin/src/gcode/sd/M1001.cpp b/Marlin/src/gcode/sd/M1001.cpp index 3c8f38a1448a..c49909646eaa 100644 --- a/Marlin/src/gcode/sd/M1001.cpp +++ b/Marlin/src/gcode/sd/M1001.cpp @@ -34,7 +34,7 @@ #include "../queue.h" #endif -#if EITHER(SET_PROGRESS_MANUALLY, SD_REPRINT_LAST_SELECTED_FILE) +#if ANY(SET_PROGRESS_MANUALLY, SD_REPRINT_LAST_SELECTED_FILE) #include "../../lcd/marlinui.h" #endif diff --git a/Marlin/src/gcode/sd/M34.cpp b/Marlin/src/gcode/sd/M34.cpp index 2dd7dc580c93..0a7d4d8c6221 100644 --- a/Marlin/src/gcode/sd/M34.cpp +++ b/Marlin/src/gcode/sd/M34.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if BOTH(SDCARD_SORT_ALPHA, SDSORT_GCODE) +#if ALL(SDCARD_SORT_ALPHA, SDSORT_GCODE) #include "../gcode.h" #include "../../sd/cardreader.h" diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 5b643386622a..e5cbc83459d9 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -31,12 +31,12 @@ #endif // MKS_LCD12864A/B is a variant of MKS_MINI_12864 -#if EITHER(MKS_LCD12864A, MKS_LCD12864B) +#if ANY(MKS_LCD12864A, MKS_LCD12864B) #define MKS_MINI_12864 #endif // MKS_MINI_12864_V3 and BTT_MINI_12864_V1 are identical to FYSETC_MINI_12864_2_1 -#if EITHER(MKS_MINI_12864_V3, BTT_MINI_12864_V1) +#if ANY(MKS_MINI_12864_V3, BTT_MINI_12864_V1) #define FYSETC_MINI_12864_2_1 #endif @@ -70,7 +70,7 @@ * IS_U8GLIB_ST7565_64128N : ST7565 128x64 LCD with SPI interface via U8GLib * IS_U8GLIB_LM6059_AF : LM6059 with Hardware SPI via U8GLib */ -#if EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY) +#if ANY(MKS_MINI_12864, ENDER2_STOCKDISPLAY) #define MINIPANEL @@ -83,7 +83,7 @@ #define DOGLCD #define IS_ULTIPANEL 1 -#elif EITHER(DWIN_MARLINUI_PORTRAIT, DWIN_MARLINUI_LANDSCAPE) +#elif ANY(DWIN_MARLINUI_PORTRAIT, DWIN_MARLINUI_LANDSCAPE) #define IS_DWIN_MARLINUI 1 #define IS_ULTIPANEL 1 @@ -216,7 +216,7 @@ #define LCD_WIDTH 16 #define LCD_HEIGHT 2 -#elif EITHER(TFTGLCD_PANEL_SPI, TFTGLCD_PANEL_I2C) +#elif ANY(TFTGLCD_PANEL_SPI, TFTGLCD_PANEL_I2C) #define IS_TFTGLCD_PANEL 1 #define IS_ULTIPANEL 1 // Note that IS_ULTIPANEL leads to HAS_WIRED_LCD @@ -246,7 +246,7 @@ #define LCD_ST7920_DELAY_2 125 #define LCD_ST7920_DELAY_3 125 -#elif EITHER(ANET_FULL_GRAPHICS_LCD, ANET_FULL_GRAPHICS_LCD_ALT_WIRING) +#elif ANY(ANET_FULL_GRAPHICS_LCD, ANET_FULL_GRAPHICS_LCD_ALT_WIRING) #define IS_RRD_FG_SC 1 #define LCD_ST7920_DELAY_1 150 @@ -276,7 +276,7 @@ #endif // ST7565 / 64128N graphical displays -#if EITHER(MAKRPANEL, MINIPANEL) +#if ANY(MAKRPANEL, MINIPANEL) #define IS_ULTIPANEL 1 #define DOGLCD #if ENABLED(MAKRPANEL) @@ -337,11 +337,11 @@ #elif ANY(SPI_GRAPHICAL_TFT, TFT_320x240_SPI, TFT_480x320_SPI, TFT_LVGL_UI_SPI) #define TFT_INTERFACE_SPI #endif - #if EITHER(FSMC_GRAPHICAL_TFT, SPI_GRAPHICAL_TFT) + #if ANY(FSMC_GRAPHICAL_TFT, SPI_GRAPHICAL_TFT) #define TFT_CLASSIC_UI #elif ANY(TFT_320x240, TFT_480x320, TFT_320x240_SPI, TFT_480x320_SPI) #define TFT_COLOR_UI - #elif EITHER(TFT_LVGL_UI_FSMC, TFT_LVGL_UI_SPI) + #elif ANY(TFT_LVGL_UI_FSMC, TFT_LVGL_UI_SPI) #define TFT_LVGL_UI #endif #endif @@ -387,7 +387,7 @@ #define IS_ULTIPANEL 1 #endif -#elif EITHER(LCD_SAINSMART_I2C_1602, LCD_SAINSMART_I2C_2004) +#elif ANY(LCD_SAINSMART_I2C_1602, LCD_SAINSMART_I2C_2004) #define LCD_I2C_TYPE_PCF8575 // I2C Character-based 12864 display #define LCD_I2C_ADDRESS 0x27 // I2C Address of the port expander @@ -425,7 +425,7 @@ #endif -#if EITHER(LCD_I2C_TYPE_MCP23017, LCD_I2C_TYPE_MCP23008) && DISABLED(NO_LCD_DETECT) +#if ANY(LCD_I2C_TYPE_MCP23017, LCD_I2C_TYPE_MCP23008) && DISABLED(NO_LCD_DETECT) #define DETECT_I2C_LCD_DEVICE 1 #endif @@ -463,15 +463,15 @@ #define IS_ULTIPANEL 1 #endif -#if EITHER(IS_ULTIPANEL, ULTRA_LCD) +#if ANY(IS_ULTIPANEL, ULTRA_LCD) #define HAS_WIRED_LCD 1 #endif -#if EITHER(IS_ULTIPANEL, REPRAPWORLD_KEYPAD) +#if ANY(IS_ULTIPANEL, REPRAPWORLD_KEYPAD) #define IS_NEWPANEL 1 #endif -#if EITHER(ZONESTAR_LCD, REPRAPWORLD_KEYPAD) +#if ANY(ZONESTAR_LCD, REPRAPWORLD_KEYPAD) #define IS_RRW_KEYPAD 1 #ifndef REPRAPWORLD_KEYPAD_MOVE_STEP #define REPRAPWORLD_KEYPAD_MOVE_STEP 1.0 @@ -493,10 +493,10 @@ #endif // Aliases for LCD features -#if EITHER(DWIN_CREALITY_LCD, DWIN_LCD_PROUI) +#if ANY(DWIN_CREALITY_LCD, DWIN_LCD_PROUI) #define HAS_DWIN_E3V2_BASIC 1 #endif -#if EITHER(HAS_DWIN_E3V2_BASIC, DWIN_CREALITY_LCD_JYERSUI) +#if ANY(HAS_DWIN_E3V2_BASIC, DWIN_CREALITY_LCD_JYERSUI) #define HAS_DWIN_E3V2 1 #endif @@ -639,10 +639,10 @@ #define E_TERN_(N) TERN_(HAS_MULTI_EXTRUDER, N) #define E_TERN0(N) TERN0(HAS_MULTI_EXTRUDER, N) -#if EITHER(SWITCHING_EXTRUDER, MECHANICAL_SWITCHING_EXTRUDER) +#if ANY(SWITCHING_EXTRUDER, MECHANICAL_SWITCHING_EXTRUDER) #define HAS_SWITCHING_EXTRUDER 1 #endif -#if EITHER(SWITCHING_NOZZLE, MECHANICAL_SWITCHING_NOZZLE) +#if ANY(SWITCHING_NOZZLE, MECHANICAL_SWITCHING_NOZZLE) #define HAS_SWITCHING_NOZZLE 1 #endif @@ -700,14 +700,14 @@ #endif // Number of hotends... -#if EITHER(SINGLENOZZLE, MIXING_EXTRUDER) // Only one for singlenozzle or mixing extruder +#if ANY(SINGLENOZZLE, MIXING_EXTRUDER) // Only one for singlenozzle or mixing extruder #define HOTENDS 1 -#elif HAS_SWITCHING_EXTRUDER && !HAS_SWITCHING_NOZZLE // One for each pair of abstract "extruders" +#elif HAS_SWITCHING_EXTRUDER && !HAS_SWITCHING_NOZZLE // One for each pair of abstract "extruders" #define HOTENDS E_STEPPERS #elif TEMP_SENSOR_0 - #define HOTENDS EXTRUDERS // One per extruder if at least one heater exists + #define HOTENDS EXTRUDERS // One per extruder if at least one heater exists #else - #define HOTENDS 0 // A machine with no hotends at all can still extrude + #define HOTENDS 0 // A machine with no hotends at all can still extrude #endif // More than one hotend... @@ -1104,7 +1104,7 @@ #if DISABLED(SINGLENOZZLE) #undef SINGLENOZZLE_STANDBY_TEMP #endif -#if !BOTH(HAS_FAN, SINGLENOZZLE) +#if !ALL(HAS_FAN, SINGLENOZZLE) #undef SINGLENOZZLE_STANDBY_FAN #endif @@ -1409,7 +1409,7 @@ #if DISABLED(NOZZLE_AS_PROBE) #define HAS_PROBE_XY_OFFSET 1 #endif - #if BOTH(DELTA, SENSORLESS_PROBING) + #if ALL(DELTA, SENSORLESS_PROBING) #define HAS_DELTA_SENSORLESS_PROBING 1 #endif #if NONE(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, HAS_DELTA_SENSORLESS_PROBING) @@ -1421,7 +1421,7 @@ #ifndef Z_PROBE_LOW_POINT #define Z_PROBE_LOW_POINT -5 #endif - #if EITHER(Z_PROBE_ALLEN_KEY, MAG_MOUNTED_PROBE) + #if ANY(Z_PROBE_ALLEN_KEY, MAG_MOUNTED_PROBE) #define PROBE_TRIGGERED_WHEN_STOWED_TEST 1 // Extra test for Allen Key Probe #endif #if MULTIPLE_PROBING > 1 @@ -1451,14 +1451,14 @@ */ #if ENABLED(AUTO_BED_LEVELING_UBL) #undef LCD_BED_LEVELING - #if EITHER(DELTA, SEGMENT_LEVELED_MOVES) + #if ANY(DELTA, SEGMENT_LEVELED_MOVES) #define UBL_SEGMENTED 1 #endif #endif -#if EITHER(AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_3POINT) +#if ANY(AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_3POINT) #define ABL_PLANAR 1 #endif -#if EITHER(AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_BILINEAR) +#if ANY(AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_BILINEAR) #define ABL_USES_GRID 1 #endif #if ANY(AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_BILINEAR, AUTO_BED_LEVELING_3POINT) @@ -1467,16 +1467,16 @@ #if ANY(AUTO_BED_LEVELING_BILINEAR, AUTO_BED_LEVELING_UBL, MESH_BED_LEVELING) #define HAS_MESH 1 #endif -#if EITHER(AUTO_BED_LEVELING_UBL, AUTO_BED_LEVELING_3POINT) +#if ANY(AUTO_BED_LEVELING_UBL, AUTO_BED_LEVELING_3POINT) #define NEEDS_THREE_PROBE_POINTS 1 #endif -#if EITHER(HAS_ABL_NOT_UBL, AUTO_BED_LEVELING_UBL) +#if ANY(HAS_ABL_NOT_UBL, AUTO_BED_LEVELING_UBL) #define HAS_ABL_OR_UBL 1 #if DISABLED(PROBE_MANUALLY) #define HAS_AUTOLEVEL 1 #endif #endif -#if EITHER(HAS_ABL_OR_UBL, MESH_BED_LEVELING) +#if ANY(HAS_ABL_OR_UBL, MESH_BED_LEVELING) #define HAS_LEVELING 1 #if DISABLED(AUTO_BED_LEVELING_UBL) #define PLANNER_LEVELING 1 @@ -1487,7 +1487,7 @@ #undef ENABLE_LEVELING_AFTER_G28 #undef G29_RETRY_AND_RECOVER #endif -#if !HAS_LEVELING || EITHER(MESH_BED_LEVELING, AUTO_BED_LEVELING_UBL) +#if !HAS_LEVELING || ANY(MESH_BED_LEVELING, AUTO_BED_LEVELING_UBL) #undef PROBE_MANUALLY #endif #if ANY(HAS_BED_PROBE, PROBE_MANUALLY, MESH_BED_LEVELING) @@ -1507,13 +1507,13 @@ /** * CoreXY, CoreXZ, and CoreYZ - and their reverse */ -#if EITHER(COREXY, COREYX) +#if ANY(COREXY, COREYX) #define CORE_IS_XY 1 #endif -#if EITHER(COREXZ, COREZX) +#if ANY(COREXZ, COREZX) #define CORE_IS_XZ 1 #endif -#if EITHER(COREYZ, COREZY) +#if ANY(COREYZ, COREZY) #define CORE_IS_YZ 1 #endif #if CORE_IS_XY || CORE_IS_XZ || CORE_IS_YZ @@ -1534,7 +1534,7 @@ #define CORE_AXIS_2 C_AXIS #endif #define CORESIGN(n) (ANY(COREYX, COREZX, COREZY) ? (-(n)) : (n)) -#elif EITHER(MARKFORGED_XY, MARKFORGED_YX) +#elif ANY(MARKFORGED_XY, MARKFORGED_YX) // Markforged kinematics #define CORE_AXIS_1 A_AXIS #define CORE_AXIS_2 B_AXIS @@ -1558,7 +1558,7 @@ #endif // This flag indicates some kind of jerk storage is needed -#if EITHER(CLASSIC_JERK, IS_KINEMATIC) +#if ANY(CLASSIC_JERK, IS_KINEMATIC) #define HAS_CLASSIC_JERK 1 #endif @@ -1622,12 +1622,12 @@ * - TFT_COLOR * - GRAPHICAL_TFT_UPSCALE */ -#if EITHER(MKS_TS35_V2_0, BTT_TFT35_SPI_V1_0) // ST7796 +#if ANY(MKS_TS35_V2_0, BTT_TFT35_SPI_V1_0) // ST7796 #define TFT_DEFAULT_DRIVER ST7796 #define TFT_DEFAULT_ORIENTATION TFT_EXCHANGE_XY #define TFT_RES_480x320 #define TFT_INTERFACE_SPI -#elif EITHER(LERDGE_TFT35, ANET_ET5_TFT35) // ST7796 +#elif ANY(LERDGE_TFT35, ANET_ET5_TFT35) // ST7796 #define TFT_DEFAULT_ORIENTATION TFT_EXCHANGE_XY #define TFT_RES_480x320 #define TFT_INTERFACE_FSMC @@ -1645,7 +1645,7 @@ #define TFT_DEFAULT_ORIENTATION 0 #define TFT_RES_480x272 #define TFT_INTERFACE_FSMC -#elif EITHER(MKS_ROBIN_TFT_V1_1R, LONGER_LK_TFT28) // ILI9328 or R61505 +#elif ANY(MKS_ROBIN_TFT_V1_1R, LONGER_LK_TFT28) // ILI9328 or R61505 #define TFT_DEFAULT_ORIENTATION (TFT_EXCHANGE_XY | TFT_INVERT_X | TFT_INVERT_Y) #define TFT_RES_320x240 #define TFT_INTERFACE_FSMC @@ -1756,13 +1756,13 @@ #endif #endif -#if EITHER(TFT_320x240, TFT_320x240_SPI) +#if ANY(TFT_320x240, TFT_320x240_SPI) #define HAS_UI_320x240 1 -#elif EITHER(TFT_480x320, TFT_480x320_SPI) +#elif ANY(TFT_480x320, TFT_480x320_SPI) #define HAS_UI_480x320 1 -#elif EITHER(TFT_480x272, TFT_480x272_SPI) +#elif ANY(TFT_480x272, TFT_480x272_SPI) #define HAS_UI_480x272 1 -#elif EITHER(TFT_1024x600_LTDC, TFT_1024x600_SIM) +#elif ANY(TFT_1024x600_LTDC, TFT_1024x600_SIM) #define HAS_UI_1024x600 1 #endif #if ANY(HAS_UI_320x240, HAS_UI_480x320, HAS_UI_480x272) diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index 343ebae1ff38..683eeb3da217 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -245,8 +245,8 @@ #define DISABLE_IDLE_E #endif -#define _OR_HAS_DI(A) || BOTH(HAS_##A##_AXIS, DISABLE_IDLE_##A) -#if BOTH(HAS_EXTRUDERS, DISABLE_IDLE_E) MAP(_OR_HAS_DI, X, Y, Z, I, J, K, U, V, W) +#define _OR_HAS_DI(A) || ALL(HAS_##A##_AXIS, DISABLE_IDLE_##A) +#if ALL(HAS_EXTRUDERS, DISABLE_IDLE_E) MAP(_OR_HAS_DI, X, Y, Z, I, J, K, U, V, W) #define HAS_DISABLE_IDLE_AXES 1 #endif #undef _OR_HAS_DI @@ -768,11 +768,11 @@ #endif #endif -#if ENABLED(MIXING_EXTRUDER) && (ENABLED(RETRACT_SYNC_MIXING) || BOTH(FILAMENT_LOAD_UNLOAD_GCODES, FILAMENT_UNLOAD_ALL_EXTRUDERS)) +#if ENABLED(MIXING_EXTRUDER) && (ENABLED(RETRACT_SYNC_MIXING) || ALL(FILAMENT_LOAD_UNLOAD_GCODES, FILAMENT_UNLOAD_ALL_EXTRUDERS)) #define HAS_MIXER_SYNC_CHANNEL 1 #endif -#if EITHER(DUAL_X_CARRIAGE, MULTI_NOZZLE_DUPLICATION) +#if ANY(DUAL_X_CARRIAGE, MULTI_NOZZLE_DUPLICATION) #define HAS_DUPLICATION_MODE 1 #endif @@ -810,7 +810,7 @@ #undef MENU_ADDAUTOSTART #endif -#if EITHER(HAS_MEDIA, SET_PROGRESS_MANUALLY) +#if ANY(HAS_MEDIA, SET_PROGRESS_MANUALLY) #define HAS_PRINT_PROGRESS 1 #endif @@ -836,7 +836,7 @@ #define HAS_EXTRA_PROGRESS 1 #endif -#if HAS_PRINT_PROGRESS && EITHER(PRINT_PROGRESS_SHOW_DECIMALS, SHOW_REMAINING_TIME) +#if HAS_PRINT_PROGRESS && ANY(PRINT_PROGRESS_SHOW_DECIMALS, SHOW_REMAINING_TIME) #define HAS_PRINT_PROGRESS_PERMYRIAD 1 #endif @@ -854,7 +854,7 @@ #if ANY(X_DUAL_ENDSTOPS, Y_DUAL_ENDSTOPS, Z_MULTI_ENDSTOPS) #define HAS_EXTRA_ENDSTOPS 1 #endif -#if EITHER(MIN_SOFTWARE_ENDSTOPS, MAX_SOFTWARE_ENDSTOPS) +#if ANY(MIN_SOFTWARE_ENDSTOPS, MAX_SOFTWARE_ENDSTOPS) #define HAS_SOFTWARE_ENDSTOPS 1 #endif #if ANY(EXTENSIBLE_UI, IS_NEWPANEL, EMERGENCY_PARSER, HAS_ADC_BUTTONS, HAS_DWIN_E3V2) @@ -876,7 +876,7 @@ #define HAS_GCODE_M255 1 #endif -#if EITHER(DIGIPOT_MCP4018, DIGIPOT_MCP4451) +#if ANY(DIGIPOT_MCP4018, DIGIPOT_MCP4451) #define HAS_MOTOR_CURRENT_I2C 1 #endif @@ -927,7 +927,7 @@ // Spindle/Laser power display types // Defined here so sanity checks can use them // -#if EITHER(SPINDLE_FEATURE, LASER_FEATURE) +#if ANY(SPINDLE_FEATURE, LASER_FEATURE) #define HAS_CUTTER 1 #define _CUTTER_POWER_PWM255 1 #define _CUTTER_POWER_PERCENT 2 @@ -1000,7 +1000,7 @@ #endif #endif -#if EITHER(FYSETC_MINI_12864_2_1, FYSETC_242_OLED_12864) +#if ANY(FYSETC_MINI_12864_2_1, FYSETC_242_OLED_12864) #ifndef LED_USER_PRESET_GREEN #define LED_USER_PRESET_GREEN 128 #endif @@ -1035,7 +1035,7 @@ #endif #endif -#if BOTH(LED_CONTROL_MENU, NEOPIXEL2_SEPARATE) +#if ALL(LED_CONTROL_MENU, NEOPIXEL2_SEPARATE) #ifndef LED2_USER_PRESET_RED #define LED2_USER_PRESET_RED 255 #endif @@ -1058,7 +1058,7 @@ #endif // Full Touch Screen needs 'tft/xpt2046' -#if EITHER(TFT_TOUCH_DEVICE_XPT2046, HAS_TFT_LVGL_UI) +#if ANY(TFT_TOUCH_DEVICE_XPT2046, HAS_TFT_LVGL_UI) #define HAS_TFT_XPT2046 1 #endif @@ -1188,7 +1188,7 @@ #endif // Power Monitor sensors -#if EITHER(POWER_MONITOR_CURRENT, POWER_MONITOR_VOLTAGE) +#if ANY(POWER_MONITOR_CURRENT, POWER_MONITOR_VOLTAGE) #define HAS_POWER_MONITOR 1 #if ENABLED(POWER_MONITOR_CURRENT) && (ENABLED(POWER_MONITOR_VOLTAGE) || defined(POWER_MONITOR_FIXED_VOLTAGE)) #define HAS_POWER_MONITOR_WATTS 1 @@ -1207,7 +1207,7 @@ // Flags for Case Light having a color property or a single pin #if ENABLED(CASE_LIGHT_ENABLE) - #if EITHER(CASE_LIGHT_USE_NEOPIXEL, CASE_LIGHT_USE_RGB_LED) + #if ANY(CASE_LIGHT_USE_NEOPIXEL, CASE_LIGHT_USE_RGB_LED) #define CASE_LIGHT_IS_COLOR_LED 1 #else #define NEED_CASE_LIGHT_PIN 1 @@ -1224,7 +1224,7 @@ #define NEED_LSF 1 #endif -#if BOTH(HAS_TFT_LVGL_UI, CUSTOM_MENU_MAIN) +#if ALL(HAS_TFT_LVGL_UI, CUSTOM_MENU_MAIN) #define _HAS_1(N) (defined(MAIN_MENU_ITEM_##N##_DESC) && defined(MAIN_MENU_ITEM_##N##_GCODE)) #define HAS_USER_ITEM(V...) DO(HAS,||,V) #else @@ -1251,18 +1251,18 @@ #if !HAS_MULTI_SERIAL #undef MEATPACK_ON_SERIAL_PORT_2 #endif -#if EITHER(MEATPACK_ON_SERIAL_PORT_1, MEATPACK_ON_SERIAL_PORT_2) +#if ANY(MEATPACK_ON_SERIAL_PORT_1, MEATPACK_ON_SERIAL_PORT_2) #define HAS_MEATPACK 1 #endif // AVR are (usually) too limited in resources to store the configuration into the binary -#if ENABLED(CONFIGURATION_EMBEDDING) && !defined(FORCE_CONFIG_EMBED) && (defined(__AVR__) || !HAS_MEDIA || EITHER(SDCARD_READONLY, DISABLE_M503)) +#if ENABLED(CONFIGURATION_EMBEDDING) && !defined(FORCE_CONFIG_EMBED) && (defined(__AVR__) || !HAS_MEDIA || ANY(SDCARD_READONLY, DISABLE_M503)) #undef CONFIGURATION_EMBEDDING #define CANNOT_EMBED_CONFIGURATION defined(__AVR__) #endif // Input shaping -#if EITHER(INPUT_SHAPING_X, INPUT_SHAPING_Y) +#if ANY(INPUT_SHAPING_X, INPUT_SHAPING_Y) #define HAS_ZV_SHAPING 1 #endif diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 92b4463556b3..588484ff3e3b 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -38,7 +38,7 @@ #endif // Linear advance uses Jerk since E is an isolated axis -#if BOTH(HAS_JUNCTION_DEVIATION, LIN_ADVANCE) +#if ALL(HAS_JUNCTION_DEVIATION, LIN_ADVANCE) #define HAS_LINEAR_E_JERK 1 #endif @@ -48,7 +48,7 @@ // Set additional flags to let HALs choose in their Conditionals_post.h #if ANY(FLASH_EEPROM_EMULATION, SRAM_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION, QSPI_EEPROM) #define USE_EMULATED_EEPROM 1 - #elif EITHER(I2C_EEPROM, SPI_EEPROM) + #elif ANY(I2C_EEPROM, SPI_EEPROM) #define USE_WIRED_EEPROM 1 #elif ENABLED(IIC_BL24CXX_EEPROM) // nothing @@ -265,7 +265,7 @@ #endif // Calibration codes only for non-core axes -#if EITHER(BACKLASH_GCODE, CALIBRATION_GCODE) +#if ANY(BACKLASH_GCODE, CALIBRATION_GCODE) #if ANY(IS_CORE, MARKFORGED_XY, MARKFORGED_YX) #define CAN_CALIBRATE(A,B) TERN0(HAS_##A##_AXIS, (_AXIS(A) == B)) #else @@ -466,14 +466,15 @@ #elif ENABLED(AZSMZ_12864) #define _LCD_CONTRAST_MIN 120 #define _LCD_CONTRAST_INIT 190 -#elif EITHER(MKS_LCD12864A, MKS_LCD12864B) +#elif ANY(MKS_LCD12864A, MKS_LCD12864B) #define _LCD_CONTRAST_MIN 120 #define _LCD_CONTRAST_INIT 205 -#elif EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY) +#elif ANY(MKS_MINI_12864, ENDER2_STOCKDISPLAY) #define _LCD_CONTRAST_MIN 120 #define _LCD_CONTRAST_INIT 195 #elif ENABLED(FYSETC_MINI_12864_2_1) #define _LCD_CONTRAST_MIN 230 + #define _LCD_CONTRAST_MIN 255 #define _LCD_CONTRAST_INIT 255 #elif ENABLED(FYSETC_MINI_12864) #define _LCD_CONTRAST_MIN 180 @@ -558,7 +559,7 @@ #endif #endif - #if DISABLED(USB_FLASH_DRIVE_SUPPORT) || BOTH(MULTI_VOLUME, VOLUME_SD_ONBOARD) + #if DISABLED(USB_FLASH_DRIVE_SUPPORT) || ALL(MULTI_VOLUME, VOLUME_SD_ONBOARD) #if ENABLED(ONBOARD_SDIO) #define NEED_SD2CARD_SDIO 1 #else @@ -731,13 +732,13 @@ // Add LIB_MAX6675 / LIB_MAX31855 / LIB_MAX31865 to the build_flags // to select a USER library for MAX6675, MAX31855, MAX31865 // - #if BOTH(HAS_MAX6675, LIB_MAX6675) + #if ALL(HAS_MAX6675, LIB_MAX6675) #define USE_LIB_MAX6675 1 #endif - #if BOTH(HAS_MAX31855, LIB_MAX31855) + #if ALL(HAS_MAX31855, LIB_MAX31855) #define USE_ADAFRUIT_MAX31855 1 #endif - #if BOTH(HAS_MAX31865, LIB_MAX31865) + #if ALL(HAS_MAX31865, LIB_MAX31865) #define USE_ADAFRUIT_MAX31865 1 #elif HAS_MAX31865 #define LIB_INTERNAL_MAX31865 1 @@ -1375,7 +1376,7 @@ * - Z_PROBE_SLED uses SOL1_PIN, when defined (unless EXT_SOLENOID is enabled) */ #if ANY(EXT_SOLENOID, MANUAL_SOLENOID_CONTROL, PARKING_EXTRUDER, SOLENOID_PROBE, Z_PROBE_SLED) - #if PIN_EXISTS(SOL0) && (EITHER(MANUAL_SOLENOID_CONTROL, PARKING_EXTRUDER) || BOTH(EXT_SOLENOID, HAS_EXTRUDERS)) + #if PIN_EXISTS(SOL0) && (ANY(MANUAL_SOLENOID_CONTROL, PARKING_EXTRUDER) || ALL(EXT_SOLENOID, HAS_EXTRUDERS)) #define HAS_SOLENOID_0 1 #endif #if PIN_EXISTS(SOL1) && (ANY(MANUAL_SOLENOID_CONTROL, PARKING_EXTRUDER, SOLENOID_PROBE, Z_PROBE_SLED) || TERN0(EXT_SOLENOID, E_STEPPERS > 1)) @@ -1409,7 +1410,7 @@ #if ANY(STEALTHCHOP_E, STEALTHCHOP_XY, STEALTHCHOP_Z, STEALTHCHOP_I, STEALTHCHOP_J, STEALTHCHOP_K, STEALTHCHOP_U, STEALTHCHOP_V, STEALTHCHOP_W) #define STEALTHCHOP_ENABLED 1 #endif - #if EITHER(SENSORLESS_HOMING, SENSORLESS_PROBING) + #if ANY(SENSORLESS_HOMING, SENSORLESS_PROBING) #define USE_SENSORLESS 1 #endif @@ -1970,7 +1971,7 @@ #define HAS_Y_ENDSTOP 1 #endif -#if _USE_STOP(Z,,MIN,EITHER(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, HAS_DELTA_SENSORLESS_PROBING)) +#if _USE_STOP(Z,,MIN,ANY(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, HAS_DELTA_SENSORLESS_PROBING)) #define USE_Z_MIN 1 #if !HAS_DELTA_SENSORLESS_PROBING #define HAS_Z_MIN_PIN 1 @@ -2037,7 +2038,7 @@ #define HAS_W_ENDSTOP 1 #endif -#if EITHER(DUAL_X_CARRIAGE, X_DUAL_ENDSTOPS) +#if ANY(DUAL_X_CARRIAGE, X_DUAL_ENDSTOPS) #if _USE_STOP(X,2,MIN,) #define USE_X2_MIN 1 #elif _USE_STOP(X,2,MAX,) @@ -2382,10 +2383,10 @@ #endif #if ENABLED(DWIN_LCD_PROUI) - #if EITHER(PIDTEMP, PIDTEMPBED) + #if ANY(PIDTEMP, PIDTEMPBED) #define DWIN_PID_TUNE 1 #endif - #if EITHER(DWIN_PID_TUNE, MPC_AUTOTUNE) && DISABLED(DISABLE_TUNING_GRAPH) + #if ANY(DWIN_PID_TUNE, MPC_AUTOTUNE) && DISABLED(DISABLE_TUNING_GRAPH) #define SHOW_TUNING_GRAPH 1 #endif #endif @@ -2401,10 +2402,10 @@ #if ENABLED(THERMAL_PROTECTION_BED) && WATCH_BED_TEMP_PERIOD > 0 #define WATCH_BED 1 #endif -#if BOTH(HAS_HEATED_CHAMBER, THERMAL_PROTECTION_CHAMBER) && WATCH_CHAMBER_TEMP_PERIOD > 0 +#if ALL(HAS_HEATED_CHAMBER, THERMAL_PROTECTION_CHAMBER) && WATCH_CHAMBER_TEMP_PERIOD > 0 #define WATCH_CHAMBER 1 #endif -#if BOTH(HAS_COOLER, THERMAL_PROTECTION_COOLER) && WATCH_COOLER_TEMP_PERIOD > 0 +#if ALL(HAS_COOLER, THERMAL_PROTECTION_COOLER) && WATCH_COOLER_TEMP_PERIOD > 0 #define WATCH_COOLER 1 #endif #if NONE(THERMAL_PROTECTION_HOTENDS, THERMAL_PROTECTION_CHAMBER, THERMAL_PROTECTION_BED, THERMAL_PROTECTION_COOLER) @@ -2616,7 +2617,7 @@ /** * MIN/MAX fan PWM scaling */ -#if EITHER(HAS_FAN, USE_CONTROLLER_FAN) +#if ANY(HAS_FAN, USE_CONTROLLER_FAN) #ifndef FAN_OFF_PWM #define FAN_OFF_PWM 0 #endif @@ -2716,7 +2717,7 @@ * Helper Macros for heaters and extruder fan */ #define WRITE_HEATER_0P(v) WRITE(HEATER_0_PIN, (v) ^ ENABLED(HEATER_0_INVERTING)) -#if EITHER(HAS_MULTI_HOTEND, HEATERS_PARALLEL) +#if ANY(HAS_MULTI_HOTEND, HEATERS_PARALLEL) #define WRITE_HEATER_1(v) WRITE(HEATER_1_PIN, (v) ^ ENABLED(HEATER_1_INVERTING)) #if HOTENDS > 2 #define WRITE_HEATER_2(v) WRITE(HEATER_2_PIN, (v) ^ ENABLED(HEATER_2_INVERTING)) @@ -2829,7 +2830,7 @@ /** * Bed Probe dependencies */ -#if EITHER(MESH_BED_LEVELING, HAS_BED_PROBE) +#if ANY(MESH_BED_LEVELING, HAS_BED_PROBE) #ifndef Z_PROBE_OFFSET_RANGE_MIN #define Z_PROBE_OFFSET_RANGE_MIN -20 #endif @@ -2838,7 +2839,7 @@ #endif #endif #if HAS_BED_PROBE - #if BOTH(ENDSTOPPULLUPS, USE_Z_MIN_PROBE) + #if ALL(ENDSTOPPULLUPS, USE_Z_MIN_PROBE) #define ENDSTOPPULLUP_ZMIN_PROBE #endif #ifndef XY_PROBE_FEEDRATE @@ -2896,16 +2897,16 @@ #undef ADAPTIVE_FAN_SLOWING #undef TEMP_TUNING_MAINTAIN_FAN #endif -#if !BOTH(HAS_BED_PROBE, HAS_FAN) +#if !ALL(HAS_BED_PROBE, HAS_FAN) #undef PROBING_FANS_OFF #endif -#if !BOTH(HAS_BED_PROBE, HAS_EXTRUDERS) +#if !ALL(HAS_BED_PROBE, HAS_EXTRUDERS) #undef PROBING_ESTEPPERS_OFF #elif ENABLED(PROBING_STEPPERS_OFF) // PROBING_STEPPERS_OFF implies PROBING_ESTEPPERS_OFF, make sure it is defined #define PROBING_ESTEPPERS_OFF #endif -#if EITHER(ADVANCED_PAUSE_FEATURE, PROBING_HEATERS_OFF) +#if ANY(ADVANCED_PAUSE_FEATURE, PROBING_HEATERS_OFF) #define HEATER_IDLE_HANDLER 1 #endif #if HAS_BED_PROBE && (ANY(PROBING_HEATERS_OFF, PROBING_STEPPERS_OFF, PROBING_ESTEPPERS_OFF, PROBING_FANS_OFF) || DELAY_BEFORE_PROBING > 0) @@ -2916,7 +2917,7 @@ * Advanced Pause - Filament Change */ #if ENABLED(ADVANCED_PAUSE_FEATURE) - #if ANY(HAS_MARLINUI_MENU, EXTENSIBLE_UI, DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI) || BOTH(EMERGENCY_PARSER, HOST_PROMPT_SUPPORT) + #if ANY(HAS_MARLINUI_MENU, EXTENSIBLE_UI, DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI) || ALL(EMERGENCY_PARSER, HOST_PROMPT_SUPPORT) #define M600_PURGE_MORE_RESUMABLE 1 #endif #ifndef FILAMENT_CHANGE_SLOW_LOAD_LENGTH @@ -3002,7 +3003,7 @@ /** * Default mesh area is an area with an inset margin on the print area. */ -#if EITHER(MESH_BED_LEVELING, AUTO_BED_LEVELING_UBL) +#if ANY(MESH_BED_LEVELING, AUTO_BED_LEVELING_UBL) #if IS_KINEMATIC // Probing points may be verified at compile time within the radius // using static_assert(HYPOT2(X2-X1,Y2-Y1)<=sq(PRINTABLE_RADIUS),"bad probe point!") @@ -3052,7 +3053,7 @@ #if ANY(IS_TFTGLCD_PANEL, PCA9632_BUZZER, LCD_USE_I2C_BUZZER) #define USE_MARLINUI_BUZZER 1 #endif -#if EITHER(HAS_BEEPER, USE_MARLINUI_BUZZER) +#if ANY(HAS_BEEPER, USE_MARLINUI_BUZZER) #define HAS_SOUND 1 #endif @@ -3123,7 +3124,7 @@ // Define a starting height for measuring manual probe points #ifndef MANUAL_PROBE_START_Z - #if EITHER(MESH_BED_LEVELING, PROBE_MANUALLY) + #if ANY(MESH_BED_LEVELING, PROBE_MANUALLY) // Leave MANUAL_PROBE_START_Z undefined so the prior Z height will be used. // Note: If Z_CLEARANCE_BETWEEN_MANUAL_PROBES is 0 there will be no raise between points #elif ENABLED(AUTO_BED_LEVELING_UBL) && defined(Z_CLEARANCE_BETWEEN_PROBES) @@ -3149,7 +3150,7 @@ #endif #endif -#if EITHER(HAS_MARLINUI_MENU, TOUCH_UI_FTDI_EVE) +#if ANY(HAS_MARLINUI_MENU, TOUCH_UI_FTDI_EVE) // LCD timeout to status screen default is 15s #ifndef LCD_TIMEOUT_TO_STATUS #define LCD_TIMEOUT_TO_STATUS 15000 @@ -3202,7 +3203,7 @@ #define MAX_VFAT_ENTRIES 20 // by VFAT specs to fit LFN of length 255 // Nozzle park for Delta -#if BOTH(NOZZLE_PARK_FEATURE, DELTA) +#if ALL(NOZZLE_PARK_FEATURE, DELTA) #undef NOZZLE_PARK_Z_FEEDRATE #define NOZZLE_PARK_Z_FEEDRATE NOZZLE_PARK_XY_FEEDRATE #endif diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 89cf8c5198c5..00b532120518 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -46,8 +46,8 @@ #if ENABLED(TEST0) || !ENABLED(TEST2) || ENABLED(TEST3) || !ENABLED(TEST1, TEST2, TEST4) #error "ENABLED is borked!" #endif -#if BOTH(TEST0, TEST1) - #error "BOTH is borked!" +#if ALL(TEST0, TEST1) + #error "ALL is borked!" #endif #if DISABLED(TEST1) || !DISABLED(TEST3) || DISABLED(TEST4) || DISABLED(TEST0, TEST1, TEST2, TEST4) || !DISABLED(TEST0, TEST3) #error "DISABLED is borked!" @@ -300,45 +300,45 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #endif #endif -#if BOTH(ENDSTOPPULLUPS, ENDSTOPPULLDOWNS) +#if ALL(ENDSTOPPULLUPS, ENDSTOPPULLDOWNS) #error "Enable only one of ENDSTOPPULLUPS or ENDSTOPPULLDOWNS." -#elif BOTH(FIL_RUNOUT_PULLUP, FIL_RUNOUT_PULLDOWN) +#elif ALL(FIL_RUNOUT_PULLUP, FIL_RUNOUT_PULLDOWN) #error "Enable only one of FIL_RUNOUT_PULLUP or FIL_RUNOUT_PULLDOWN." -#elif BOTH(ENDSTOPPULLUP_XMAX, ENDSTOPPULLDOWN_XMAX) +#elif ALL(ENDSTOPPULLUP_XMAX, ENDSTOPPULLDOWN_XMAX) #error "Enable only one of ENDSTOPPULLUP_X_MAX or ENDSTOPPULLDOWN_X_MAX." -#elif BOTH(ENDSTOPPULLUP_YMAX, ENDSTOPPULLDOWN_YMAX) +#elif ALL(ENDSTOPPULLUP_YMAX, ENDSTOPPULLDOWN_YMAX) #error "Enable only one of ENDSTOPPULLUP_Y_MAX or ENDSTOPPULLDOWN_Y_MAX." -#elif BOTH(ENDSTOPPULLUP_ZMAX, ENDSTOPPULLDOWN_ZMAX) +#elif ALL(ENDSTOPPULLUP_ZMAX, ENDSTOPPULLDOWN_ZMAX) #error "Enable only one of ENDSTOPPULLUP_Z_MAX or ENDSTOPPULLDOWN_Z_MAX." -#elif BOTH(ENDSTOPPULLUP_IMAX, ENDSTOPPULLDOWN_IMAX) +#elif ALL(ENDSTOPPULLUP_IMAX, ENDSTOPPULLDOWN_IMAX) #error "Enable only one of ENDSTOPPULLUP_I_MAX or ENDSTOPPULLDOWN_I_MAX." -#elif BOTH(ENDSTOPPULLUP_JMAX, ENDSTOPPULLDOWN_JMAX) +#elif ALL(ENDSTOPPULLUP_JMAX, ENDSTOPPULLDOWN_JMAX) #error "Enable only one of ENDSTOPPULLUP_J_MAX or ENDSTOPPULLDOWN_J_MAX." -#elif BOTH(ENDSTOPPULLUP_KMAX, ENDSTOPPULLDOWN_KMAX) +#elif ALL(ENDSTOPPULLUP_KMAX, ENDSTOPPULLDOWN_KMAX) #error "Enable only one of ENDSTOPPULLUP_K_MAX or ENDSTOPPULLDOWN_K_MAX." -#elif BOTH(ENDSTOPPULLUP_UMAX, ENDSTOPPULLDOWN_UMAX) +#elif ALL(ENDSTOPPULLUP_UMAX, ENDSTOPPULLDOWN_UMAX) #error "Enable only one of ENDSTOPPULLUP_U_MAX or ENDSTOPPULLDOWN_U_MAX." -#elif BOTH(ENDSTOPPULLUP_VMAX, ENDSTOPPULLDOWN_VMAX) +#elif ALL(ENDSTOPPULLUP_VMAX, ENDSTOPPULLDOWN_VMAX) #error "Enable only one of ENDSTOPPULLUP_V_MAX or ENDSTOPPULLDOWN_V_MAX." -#elif BOTH(ENDSTOPPULLUP_WMAX, ENDSTOPPULLDOWN_WMAX) +#elif ALL(ENDSTOPPULLUP_WMAX, ENDSTOPPULLDOWN_WMAX) #error "Enable only one of ENDSTOPPULLUP_W_MAX or ENDSTOPPULLDOWN_W_MAX." -#elif BOTH(ENDSTOPPULLUP_XMIN, ENDSTOPPULLDOWN_XMIN) +#elif ALL(ENDSTOPPULLUP_XMIN, ENDSTOPPULLDOWN_XMIN) #error "Enable only one of ENDSTOPPULLUP_X_MIN or ENDSTOPPULLDOWN_X_MIN." -#elif BOTH(ENDSTOPPULLUP_YMIN, ENDSTOPPULLDOWN_YMIN) +#elif ALL(ENDSTOPPULLUP_YMIN, ENDSTOPPULLDOWN_YMIN) #error "Enable only one of ENDSTOPPULLUP_Y_MIN or ENDSTOPPULLDOWN_Y_MIN." -#elif BOTH(ENDSTOPPULLUP_ZMIN, ENDSTOPPULLDOWN_ZMIN) +#elif ALL(ENDSTOPPULLUP_ZMIN, ENDSTOPPULLDOWN_ZMIN) #error "Enable only one of ENDSTOPPULLUP_Z_MIN or ENDSTOPPULLDOWN_Z_MIN." -#elif BOTH(ENDSTOPPULLUP_IMIN, ENDSTOPPULLDOWN_IMIN) +#elif ALL(ENDSTOPPULLUP_IMIN, ENDSTOPPULLDOWN_IMIN) #error "Enable only one of ENDSTOPPULLUP_I_MIN or ENDSTOPPULLDOWN_I_MIN." -#elif BOTH(ENDSTOPPULLUP_JMIN, ENDSTOPPULLDOWN_JMIN) +#elif ALL(ENDSTOPPULLUP_JMIN, ENDSTOPPULLDOWN_JMIN) #error "Enable only one of ENDSTOPPULLUP_J_MIN or ENDSTOPPULLDOWN_J_MIN." -#elif BOTH(ENDSTOPPULLUP_KMIN, ENDSTOPPULLDOWN_KMIN) +#elif ALL(ENDSTOPPULLUP_KMIN, ENDSTOPPULLDOWN_KMIN) #error "Enable only one of ENDSTOPPULLUP_K_MIN or ENDSTOPPULLDOWN_K_MIN." -#elif BOTH(ENDSTOPPULLUP_UMIN, ENDSTOPPULLDOWN_UMIN) +#elif ALL(ENDSTOPPULLUP_UMIN, ENDSTOPPULLDOWN_UMIN) #error "Enable only one of ENDSTOPPULLUP_U_MIN or ENDSTOPPULLDOWN_U_MIN." -#elif BOTH(ENDSTOPPULLUP_VMIN, ENDSTOPPULLDOWN_VMIN) +#elif ALL(ENDSTOPPULLUP_VMIN, ENDSTOPPULLDOWN_VMIN) #error "Enable only one of ENDSTOPPULLUP_V_MIN or ENDSTOPPULLDOWN_V_MIN." -#elif BOTH(ENDSTOPPULLUP_WMIN, ENDSTOPPULLDOWN_WMIN) +#elif ALL(ENDSTOPPULLUP_WMIN, ENDSTOPPULLDOWN_WMIN) #error "Enable only one of ENDSTOPPULLUP_W_MIN or ENDSTOPPULLDOWN_W_MIN." #endif @@ -455,7 +455,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L * I2C Position Encoders */ #if ENABLED(I2C_POSITION_ENCODERS) - #if !BOTH(BABYSTEPPING, BABYSTEP_XY) + #if !ALL(BABYSTEPPING, BABYSTEP_XY) #error "I2C_POSITION_ENCODERS requires BABYSTEPPING and BABYSTEP_XY." #elif !WITHIN(I2CPE_ENCODER_CNT, 1, 5) #error "I2CPE_ENCODER_CNT must be between 1 and 5." @@ -468,11 +468,11 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #if ENABLED(BABYSTEPPING) #if ENABLED(SCARA) #error "BABYSTEPPING is not implemented for SCARA yet." - #elif ENABLED(BABYSTEP_XY) && EITHER(MARKFORGED_XY, MARKFORGED_YX) + #elif ENABLED(BABYSTEP_XY) && ANY(MARKFORGED_XY, MARKFORGED_YX) #error "BABYSTEPPING only implemented for Z axis on MarkForged." - #elif BOTH(DELTA, BABYSTEP_XY) + #elif ALL(DELTA, BABYSTEP_XY) #error "BABYSTEPPING only implemented for Z axis on deltabots." - #elif BOTH(BABYSTEP_ZPROBE_OFFSET, MESH_BED_LEVELING) + #elif ALL(BABYSTEP_ZPROBE_OFFSET, MESH_BED_LEVELING) #error "MESH_BED_LEVELING and BABYSTEP_ZPROBE_OFFSET is not a valid combination" #elif ENABLED(BABYSTEP_ZPROBE_OFFSET) && !HAS_BED_PROBE #error "BABYSTEP_ZPROBE_OFFSET requires a probe." @@ -482,7 +482,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "BABYSTEP_GFX_OVERLAY requires a BABYSTEP_ZPROBE_OFFSET." #elif ENABLED(BABYSTEP_HOTEND_Z_OFFSET) && !HAS_HOTEND_OFFSET #error "BABYSTEP_HOTEND_Z_OFFSET requires 2 or more HOTENDS." - #elif BOTH(BABYSTEP_ALWAYS_AVAILABLE, MOVE_Z_WHEN_IDLE) + #elif ALL(BABYSTEP_ALWAYS_AVAILABLE, MOVE_Z_WHEN_IDLE) #error "BABYSTEP_ALWAYS_AVAILABLE and MOVE_Z_WHEN_IDLE are incompatible." #elif !defined(BABYSTEP_MULTIPLICATOR_Z) #error "BABYSTEPPING requires BABYSTEP_MULTIPLICATOR_Z." @@ -520,21 +520,21 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "FIL_RUNOUT3_PIN is required with NUM_RUNOUT_SENSORS >= 3." #elif NUM_RUNOUT_SENSORS >= 2 && !PIN_EXISTS(FIL_RUNOUT2) #error "FIL_RUNOUT2_PIN is required with NUM_RUNOUT_SENSORS >= 2." - #elif BOTH(FIL_RUNOUT1_PULLUP, FIL_RUNOUT1_PULLDOWN) + #elif ALL(FIL_RUNOUT1_PULLUP, FIL_RUNOUT1_PULLDOWN) #error "You can't enable FIL_RUNOUT1_PULLUP and FIL_RUNOUT1_PULLDOWN at the same time." - #elif BOTH(FIL_RUNOUT2_PULLUP, FIL_RUNOUT2_PULLDOWN) + #elif ALL(FIL_RUNOUT2_PULLUP, FIL_RUNOUT2_PULLDOWN) #error "You can't enable FIL_RUNOUT2_PULLUP and FIL_RUNOUT2_PULLDOWN at the same time." - #elif BOTH(FIL_RUNOUT3_PULLUP, FIL_RUNOUT3_PULLDOWN) + #elif ALL(FIL_RUNOUT3_PULLUP, FIL_RUNOUT3_PULLDOWN) #error "You can't enable FIL_RUNOUT3_PULLUP and FIL_RUNOUT3_PULLDOWN at the same time." - #elif BOTH(FIL_RUNOUT4_PULLUP, FIL_RUNOUT4_PULLDOWN) + #elif ALL(FIL_RUNOUT4_PULLUP, FIL_RUNOUT4_PULLDOWN) #error "You can't enable FIL_RUNOUT4_PULLUP and FIL_RUNOUT4_PULLDOWN at the same time." - #elif BOTH(FIL_RUNOUT5_PULLUP, FIL_RUNOUT5_PULLDOWN) + #elif ALL(FIL_RUNOUT5_PULLUP, FIL_RUNOUT5_PULLDOWN) #error "You can't enable FIL_RUNOUT5_PULLUP and FIL_RUNOUT5_PULLDOWN at the same time." - #elif BOTH(FIL_RUNOUT6_PULLUP, FIL_RUNOUT6_PULLDOWN) + #elif ALL(FIL_RUNOUT6_PULLUP, FIL_RUNOUT6_PULLDOWN) #error "You can't enable FIL_RUNOUT6_PULLUP and FIL_RUNOUT6_PULLDOWN at the same time." - #elif BOTH(FIL_RUNOUT7_PULLUP, FIL_RUNOUT7_PULLDOWN) + #elif ALL(FIL_RUNOUT7_PULLUP, FIL_RUNOUT7_PULLDOWN) #error "You can't enable FIL_RUNOUT7_PULLUP and FIL_RUNOUT7_PULLDOWN at the same time." - #elif BOTH(FIL_RUNOUT8_PULLUP, FIL_RUNOUT8_PULLDOWN) + #elif ALL(FIL_RUNOUT8_PULLUP, FIL_RUNOUT8_PULLDOWN) #error "You can't enable FIL_RUNOUT8_PULLUP and FIL_RUNOUT8_PULLDOWN at the same time." #elif FILAMENT_RUNOUT_DISTANCE_MM < 0 #error "FILAMENT_RUNOUT_DISTANCE_MM must be greater than or equal to zero." @@ -587,7 +587,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Individual axis homing is useless for DELTAS */ -#if BOTH(INDIVIDUAL_AXIS_HOMING_MENU, DELTA) +#if ALL(INDIVIDUAL_AXIS_HOMING_MENU, DELTA) #error "INDIVIDUAL_AXIS_HOMING_MENU is incompatible with DELTA kinematics." #endif @@ -691,7 +691,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * A Dual Nozzle carriage with switching servo */ -#if BOTH(SWITCHING_NOZZLE, MECHANICAL_SWITCHING_NOZZLE) +#if ALL(SWITCHING_NOZZLE, MECHANICAL_SWITCHING_NOZZLE) #error "Enable only one of SWITCHING_NOZZLE or MECHANICAL_SWITCHING_NOZZLE." #elif ENABLED(MECHANICAL_SWITCHING_NOZZLE) #if EXTRUDERS != 2 @@ -747,7 +747,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Single Stepper Dual Extruder with switching servo */ -#if BOTH(SWITCHING_EXTRUDER, MECHANICAL_SWITCHING_EXTRUDER) +#if ALL(SWITCHING_EXTRUDER, MECHANICAL_SWITCHING_EXTRUDER) #error "Enable only one of SWITCHING_EXTRUDER or MECHANICAL_SWITCHING_EXTRUDER." #elif ENABLED(MECHANICAL_SWITCHING_EXTRUDER) #if EXTRUDERS < 2 @@ -855,7 +855,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * (Magnetic) Parking Extruder requirements */ -#if EITHER(PARKING_EXTRUDER, MAGNETIC_PARKING_EXTRUDER) +#if ANY(PARKING_EXTRUDER, MAGNETIC_PARKING_EXTRUDER) #if ENABLED(EXT_SOLENOID) #error "(MAGNETIC_)PARKING_EXTRUDER and EXT_SOLENOID are incompatible. (Pins are used twice.)" #elif EXTRUDERS != 2 @@ -913,7 +913,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Magnetic / Electromagnetic Switching Toolhead requirements */ -#if EITHER(MAGNETIC_SWITCHING_TOOLHEAD, ELECTROMAGNETIC_SWITCHING_TOOLHEAD) +#if ANY(MAGNETIC_SWITCHING_TOOLHEAD, ELECTROMAGNETIC_SWITCHING_TOOLHEAD) #ifndef SWITCHING_TOOLHEAD_Y_POS #error "(ELECTRO)?MAGNETIC_SWITCHING_TOOLHEAD requires SWITCHING_TOOLHEAD_Y_POS" #elif !defined(SWITCHING_TOOLHEAD_X_POS) @@ -983,7 +983,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Extruder temperature control algorithm - There can be only one! */ -#if BOTH(PIDTEMP, MPCTEMP) +#if ALL(PIDTEMP, MPCTEMP) #error "Only enable PIDTEMP or MPCTEMP, but not both." #undef MPCTEMP #undef MPC_AUTOTUNE @@ -1007,7 +1007,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Bed Heating Options - PID vs Limit Switching */ -#if BOTH(PIDTEMPBED, BED_LIMIT_SWITCHING) +#if ALL(PIDTEMPBED, BED_LIMIT_SWITCHING) #error "To use BED_LIMIT_SWITCHING you must disable PIDTEMPBED." #endif @@ -1030,7 +1030,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Chamber Heating Options - PID vs Limit Switching */ -#if BOTH(PIDTEMPCHAMBER, CHAMBER_LIMIT_SWITCHING) +#if ALL(PIDTEMPCHAMBER, CHAMBER_LIMIT_SWITCHING) #error "To use CHAMBER_LIMIT_SWITCHING you must disable PIDTEMPCHAMBER." #endif @@ -1196,7 +1196,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Some things should not be used on Belt Printers */ -#if BOTH(BELTPRINTER, HAS_LEVELING) +#if ALL(BELTPRINTER, HAS_LEVELING) #error "Bed Leveling is not compatible with BELTPRINTER." #endif @@ -1218,7 +1218,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Z_PROBE_SLED is incompatible with DELTA */ - #if BOTH(Z_PROBE_SLED, DELTA) + #if ALL(Z_PROBE_SLED, DELTA) #error "You cannot use Z_PROBE_SLED with DELTA." #endif @@ -1361,7 +1361,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Mag mounted probe requirements */ - #if BOTH(MAG_MOUNTED_PROBE, USE_PROBE_FOR_Z_HOMING) && DISABLED(Z_SAFE_HOMING) + #if ALL(MAG_MOUNTED_PROBE, USE_PROBE_FOR_Z_HOMING) && DISABLED(Z_SAFE_HOMING) #error "MAG_MOUNTED_PROBE requires Z_SAFE_HOMING if it's being used to home Z." #endif @@ -1586,7 +1586,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #endif #endif -#if BOTH(PREHEAT_BEFORE_PROBING, PREHEAT_BEFORE_LEVELING) +#if ALL(PREHEAT_BEFORE_PROBING, PREHEAT_BEFORE_LEVELING) #error "Disable PREHEAT_BEFORE_LEVELING when using PREHEAT_BEFORE_PROBING." #endif @@ -1703,7 +1703,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Make sure DISABLE_[XYZ] compatible with selected homing options */ -#if HAS_DISABLE_MAIN_AXES && EITHER(HOME_AFTER_DEACTIVATE, Z_SAFE_HOMING) +#if HAS_DISABLE_MAIN_AXES && ANY(HOME_AFTER_DEACTIVATE, Z_SAFE_HOMING) #error "DISABLE_[XYZIJKUVW] is not compatible with HOME_AFTER_DEACTIVATE or Z_SAFE_HOMING." #endif @@ -1725,7 +1725,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "POWER_MONITOR_CURRENT requires a valid POWER_MONITOR_CURRENT_PIN." #elif ENABLED(POWER_MONITOR_VOLTAGE) && !PIN_EXISTS(POWER_MONITOR_VOLTAGE) #error "POWER_MONITOR_VOLTAGE requires POWER_MONITOR_VOLTAGE_PIN to be defined." -#elif BOTH(POWER_MONITOR_CURRENT, POWER_MONITOR_VOLTAGE) && POWER_MONITOR_CURRENT_PIN == POWER_MONITOR_VOLTAGE_PIN +#elif ALL(POWER_MONITOR_CURRENT, POWER_MONITOR_VOLTAGE) && POWER_MONITOR_CURRENT_PIN == POWER_MONITOR_VOLTAGE_PIN #error "POWER_MONITOR_CURRENT_PIN and POWER_MONITOR_VOLTAGE_PIN must be different." #endif @@ -1757,7 +1757,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #if ENABLED(SAV_3DGLCD) #if NONE(U8GLIB_SSD1306, U8GLIB_SH1106) #error "Enable a SAV_3DGLCD display type: U8GLIB_SSD1306 or U8GLIB_SH1106." - #elif BOTH(U8GLIB_SSD1306, U8GLIB_SH1106) + #elif ALL(U8GLIB_SSD1306, U8GLIB_SH1106) #error "Only enable one SAV_3DGLCD display type: U8GLIB_SSD1306 or U8GLIB_SH1106." #endif #endif @@ -1841,7 +1841,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Make sure FAN_*_PWM values are sensible */ -#if EITHER(HAS_FAN, USE_CONTROLLER_FAN) +#if ANY(HAS_FAN, USE_CONTROLLER_FAN) #if !WITHIN(FAN_MIN_PWM, 0, 255) #error "FAN_MIN_PWM must be a value from 0 to 255." #elif !WITHIN(FAN_MAX_PWM, 0, 255) @@ -2047,7 +2047,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #elif !ANY_PIN(TEMP_0, TEMP_0_CS) && !TEMP_SENSOR_0_IS_DUMMY #error "TEMP_0_PIN or TEMP_0_CS_PIN not defined for this board." #endif - #if EITHER(HAS_MULTI_HOTEND, HEATERS_PARALLEL) && !HAS_HEATER_1 + #if ANY(HAS_MULTI_HOTEND, HEATERS_PARALLEL) && !HAS_HEATER_1 #error "HEATER_1_PIN is not defined. TEMP_SENSOR_1 might not be set, or the board (not EEB / EEF?) doesn't define a pin." #endif #if HAS_MULTI_HOTEND @@ -2230,7 +2230,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * FYSETC/MKS/BTT Mini Panel Requirements */ -#if EITHER(FYSETC_242_OLED_12864, FYSETC_MINI_12864_2_1) +#if ANY(FYSETC_242_OLED_12864, FYSETC_MINI_12864_2_1) #ifndef NEO_RGB #define NEO_RGB 123 #define FAUX_RGB 1 @@ -2244,7 +2244,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #undef NEO_RGB #undef FAUX_RGB #endif -#elif EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) && DISABLED(RGB_LED) +#elif ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) && DISABLED(RGB_LED) #error "Your FYSETC Mini Panel requires RGB_LED." #endif @@ -2354,12 +2354,12 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L // Z homing requirements #if Z_HOME_TO_MAX && ENABLED(USE_PROBE_FOR_Z_HOMING) #error "Z_HOME_DIR must be -1 when homing Z with the probe." - #elif BOTH(HOMING_Z_WITH_PROBE, Z_MULTI_ENDSTOPS) + #elif ALL(HOMING_Z_WITH_PROBE, Z_MULTI_ENDSTOPS) #error "Z_MULTI_ENDSTOPS is incompatible with USE_PROBE_FOR_Z_HOMING." #endif #endif -#if BOTH(HOME_Z_FIRST, USE_PROBE_FOR_Z_HOMING) +#if ALL(HOME_Z_FIRST, USE_PROBE_FOR_Z_HOMING) #error "HOME_Z_FIRST can't be used when homing Z with a probe." #endif @@ -2498,21 +2498,21 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L * Fan check */ #if HAS_FANCHECK - #if BOTH(E0_FAN_TACHO_PULLUP, E0_FAN_TACHO_PULLDOWN) + #if ALL(E0_FAN_TACHO_PULLUP, E0_FAN_TACHO_PULLDOWN) #error "Enable only one of E0_FAN_TACHO_PULLUP or E0_FAN_TACHO_PULLDOWN." - #elif BOTH(E1_FAN_TACHO_PULLUP, E1_FAN_TACHO_PULLDOWN) + #elif ALL(E1_FAN_TACHO_PULLUP, E1_FAN_TACHO_PULLDOWN) #error "Enable only one of E1_FAN_TACHO_PULLUP or E1_FAN_TACHO_PULLDOWN." - #elif BOTH(E2_FAN_TACHO_PULLUP, E2_FAN_TACHO_PULLDOWN) + #elif ALL(E2_FAN_TACHO_PULLUP, E2_FAN_TACHO_PULLDOWN) #error "Enable only one of E2_FAN_TACHO_PULLUP or E2_FAN_TACHO_PULLDOWN." - #elif BOTH(E3_FAN_TACHO_PULLUP, E3_FAN_TACHO_PULLDOWN) + #elif ALL(E3_FAN_TACHO_PULLUP, E3_FAN_TACHO_PULLDOWN) #error "Enable only one of E3_FAN_TACHO_PULLUP or E3_FAN_TACHO_PULLDOWN." - #elif BOTH(E4_FAN_TACHO_PULLUP, E4_FAN_TACHO_PULLDOWN) + #elif ALL(E4_FAN_TACHO_PULLUP, E4_FAN_TACHO_PULLDOWN) #error "Enable only one of E4_FAN_TACHO_PULLUP or E4_FAN_TACHO_PULLDOWN." - #elif BOTH(E5_FAN_TACHO_PULLUP, E5_FAN_TACHO_PULLDOWN) + #elif ALL(E5_FAN_TACHO_PULLUP, E5_FAN_TACHO_PULLDOWN) #error "Enable only one of E5_FAN_TACHO_PULLUP or E5_FAN_TACHO_PULLDOWN." - #elif BOTH(E6_FAN_TACHO_PULLUP, E6_FAN_TACHO_PULLDOWN) + #elif ALL(E6_FAN_TACHO_PULLUP, E6_FAN_TACHO_PULLDOWN) #error "Enable only one of E6_FAN_TACHO_PULLUP or E6_FAN_TACHO_PULLDOWN." - #elif BOTH(E7_FAN_TACHO_PULLUP, E7_FAN_TACHO_PULLDOWN) + #elif ALL(E7_FAN_TACHO_PULLUP, E7_FAN_TACHO_PULLDOWN) #error "Enable only one of E7_FAN_TACHO_PULLUP or E7_FAN_TACHO_PULLDOWN." #endif #elif ENABLED(AUTO_REPORT_FANS) @@ -2640,7 +2640,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #if ENABLED(TFT_GENERIC) && NONE(TFT_INTERFACE_FSMC, TFT_INTERFACE_SPI) #error "TFT_GENERIC requires either TFT_INTERFACE_FSMC or TFT_INTERFACE_SPI interface." -#elif BOTH(TFT_INTERFACE_FSMC, TFT_INTERFACE_SPI) +#elif ALL(TFT_INTERFACE_FSMC, TFT_INTERFACE_SPI) #error "Please enable only one of TFT_INTERFACE_FSMC or TFT_INTERFACE_SPI." #endif @@ -2664,7 +2664,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "GRAPHICAL_TFT_UPSCALE must be between 2 and 8." #endif -#if BOTH(CHIRON_TFT_STANDARD, CHIRON_TFT_NEW) +#if ALL(CHIRON_TFT_STANDARD, CHIRON_TFT_NEW) #error "Please select only one of CHIRON_TFT_STANDARD or CHIRON_TFT_NEW." #endif @@ -2686,7 +2686,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L static_assert(strcmp(STRINGIFY(LCD_LANGUAGE_2), "zh_CN") == 0, "LCD_LANGUAGE_2 must be set to zh_CN for ANYCUBIC_LCD_VYPER."); #endif -#if EITHER(MKS_TS35_V2_0, BTT_TFT35_SPI_V1_0) && SD_CONNECTION_IS(LCD) +#if ANY(MKS_TS35_V2_0, BTT_TFT35_SPI_V1_0) && SD_CONNECTION_IS(LCD) #error "SDCARD_CONNECTION cannot be set to LCD for the enabled TFT. No available SD card reader." #endif @@ -2696,25 +2696,25 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #if ENABLED(DWIN_CREALITY_LCD) #if !HAS_MEDIA #error "DWIN_CREALITY_LCD requires SDSUPPORT to be enabled." - #elif EITHER(PID_EDIT_MENU, PID_AUTOTUNE_MENU) + #elif ANY(PID_EDIT_MENU, PID_AUTOTUNE_MENU) #error "DWIN_CREALITY_LCD does not support PID_EDIT_MENU or PID_AUTOTUNE_MENU." - #elif EITHER(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) + #elif ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) #error "DWIN_CREALITY_LCD does not support MPC_EDIT_MENU or MPC_AUTOTUNE_MENU." #elif ENABLED(LCD_BED_TRAMMING) #error "DWIN_CREALITY_LCD does not support LCD_BED_TRAMMING." - #elif BOTH(LCD_BED_LEVELING, PROBE_MANUALLY) + #elif ALL(LCD_BED_LEVELING, PROBE_MANUALLY) #error "DWIN_CREALITY_LCD does not support LCD_BED_LEVELING with PROBE_MANUALLY." #endif #elif ENABLED(DWIN_LCD_PROUI) #if !HAS_MEDIA #error "DWIN_LCD_PROUI requires SDSUPPORT to be enabled." - #elif EITHER(PID_EDIT_MENU, PID_AUTOTUNE_MENU) + #elif ANY(PID_EDIT_MENU, PID_AUTOTUNE_MENU) #error "DWIN_LCD_PROUI does not support PID_EDIT_MENU or PID_AUTOTUNE_MENU." - #elif EITHER(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) + #elif ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) #error "DWIN_LCD_PROUI does not support MPC_EDIT_MENU or MPC_AUTOTUNE_MENU." #elif ENABLED(LCD_BED_TRAMMING) #error "DWIN_LCD_PROUI does not support LCD_BED_TRAMMING." - #elif BOTH(LCD_BED_LEVELING, PROBE_MANUALLY) + #elif ALL(LCD_BED_LEVELING, PROBE_MANUALLY) #error "DWIN_LCD_PROUI does not support LCD_BED_LEVELING with PROBE_MANUALLY." #endif #endif @@ -2735,9 +2735,9 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L // Startup Tune requirements #ifdef STARTUP_TUNE - #if EITHER(ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_VYPER) + #if ANY(ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_VYPER) #error "STARTUP_TUNE should be disabled with ANYCUBIC_LCD_CHIRON or ANYCUBIC_LCD_VYPER." - #elif !(BOTH(HAS_BEEPER, SPEAKER) || USE_MARLINUI_BUZZER) + #elif !(ALL(HAS_BEEPER, SPEAKER) || USE_MARLINUI_BUZZER) #error "STARTUP_TUNE requires a BEEPER_PIN with SPEAKER or USE_MARLINUI_BUZZER." #undef STARTUP_TUNE #endif @@ -3232,7 +3232,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #endif // !SPI_ENDSTOPS - #if ENABLED(DELTA) && !BOTH(STEALTHCHOP_XY, STEALTHCHOP_Z) + #if ENABLED(DELTA) && !ALL(STEALTHCHOP_XY, STEALTHCHOP_Z) #error "SENSORLESS_HOMING on DELTA currently requires STEALTHCHOP_XY and STEALTHCHOP_Z." #elif ENDSTOP_NOISE_THRESHOLD #error "SENSORLESS_HOMING is incompatible with ENDSTOP_NOISE_THRESHOLD." @@ -3262,7 +3262,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "CoreXZ requires both X and Z to use sensorless homing if either one does." #elif CORE_IS_YZ && Y_SENSORLESS != Z_SENSORLESS && !HOMING_Z_WITH_PROBE #error "CoreYZ requires both Y and Z to use sensorless homing if either one does." -#elif EITHER(MARKFORGED_XY, MARKFORGED_YX) && X_SENSORLESS != Y_SENSORLESS +#elif ANY(MARKFORGED_XY, MARKFORGED_YX) && X_SENSORLESS != Y_SENSORLESS #error "MARKFORGED requires both X and Y to use sensorless homing if either one does." #endif @@ -3350,7 +3350,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L * Digipot requirement */ #if HAS_MOTOR_CURRENT_I2C - #if BOTH(DIGIPOT_MCP4018, DIGIPOT_MCP4451) + #if ALL(DIGIPOT_MCP4018, DIGIPOT_MCP4451) #error "Enable only one of DIGIPOT_MCP4018 or DIGIPOT_MCP4451." #elif !MB(MKS_SBASE, AZTEEG_X5_GT, AZTEEG_X5_MINI, AZTEEG_X5_MINI_WIFI) \ && (!defined(DIGIPOTS_I2C_SDA_X) || !defined(DIGIPOTS_I2C_SDA_Y) || !defined(DIGIPOTS_I2C_SDA_Z) || !defined(DIGIPOTS_I2C_SDA_E0) || !defined(DIGIPOTS_I2C_SDA_E1)) @@ -3423,7 +3423,7 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." #undef _PLUS_TEST #undef _EXTRA_NOTE -#if BOTH(CNC_COORDINATE_SYSTEMS, NO_WORKSPACE_OFFSETS) +#if ALL(CNC_COORDINATE_SYSTEMS, NO_WORKSPACE_OFFSETS) #error "CNC_COORDINATE_SYSTEMS is incompatible with NO_WORKSPACE_OFFSETS." #endif @@ -3459,18 +3459,18 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." #endif #endif -#if BOTH(X_AXIS_TWIST_COMPENSATION, NOZZLE_AS_PROBE) +#if ALL(X_AXIS_TWIST_COMPENSATION, NOZZLE_AS_PROBE) #error "X_AXIS_TWIST_COMPENSATION is incompatible with NOZZLE_AS_PROBE." #endif #if ENABLED(POWER_LOSS_RECOVERY) #if ENABLED(BACKUP_POWER_SUPPLY) && !PIN_EXISTS(POWER_LOSS) #error "BACKUP_POWER_SUPPLY requires a POWER_LOSS_PIN." - #elif BOTH(POWER_LOSS_PULLUP, POWER_LOSS_PULLDOWN) + #elif ALL(POWER_LOSS_PULLUP, POWER_LOSS_PULLDOWN) #error "You can't enable POWER_LOSS_PULLUP and POWER_LOSS_PULLDOWN at the same time." #elif ENABLED(POWER_LOSS_RECOVER_ZHOME) && Z_HOME_TO_MAX #error "POWER_LOSS_RECOVER_ZHOME is not needed on a machine that homes to ZMAX." - #elif BOTH(IS_CARTESIAN, POWER_LOSS_RECOVER_ZHOME) && Z_HOME_TO_MIN && !defined(POWER_LOSS_ZHOME_POS) + #elif ALL(IS_CARTESIAN, POWER_LOSS_RECOVER_ZHOME) && Z_HOME_TO_MIN && !defined(POWER_LOSS_ZHOME_POS) #error "POWER_LOSS_RECOVER_ZHOME requires POWER_LOSS_ZHOME_POS for a Cartesian that homes to ZMIN." #endif #endif @@ -3532,7 +3532,7 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." #error "BACKLASH_COMPENSATION requires BACKLASH_DISTANCE_MM." #elif !defined(BACKLASH_CORRECTION) #error "BACKLASH_COMPENSATION requires BACKLASH_CORRECTION." - #elif EITHER(MARKFORGED_XY, MARKFORGED_YX) + #elif ANY(MARKFORGED_XY, MARKFORGED_YX) constexpr float backlash_arr[] = BACKLASH_DISTANCE_MM; static_assert(!backlash_arr[CORE_AXIS_1] && !backlash_arr[CORE_AXIS_2], "BACKLASH_COMPENSATION can only apply to " STRINGIFY(NORMAL_AXIS) " on a MarkForged system."); @@ -3582,7 +3582,7 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." /** * Require soft endstops for certain setups */ -#if !BOTH(MIN_SOFTWARE_ENDSTOPS, MAX_SOFTWARE_ENDSTOPS) +#if !ALL(MIN_SOFTWARE_ENDSTOPS, MAX_SOFTWARE_ENDSTOPS) #if ENABLED(DUAL_X_CARRIAGE) #error "DUAL_X_CARRIAGE requires both MIN_ and MAX_SOFTWARE_ENDSTOPS." #elif HAS_HOTEND_OFFSET @@ -3643,7 +3643,7 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." #endif #define _PIN_CONFLICT(P) (PIN_EXISTS(P) && P##_PIN == SPINDLE_LASER_PWM_PIN) - #if BOTH(SPINDLE_FEATURE, LASER_FEATURE) + #if ALL(SPINDLE_FEATURE, LASER_FEATURE) #error "Enable only one of SPINDLE_FEATURE or LASER_FEATURE." #elif NONE(SPINDLE_SERVO, SPINDLE_LASER_USE_PWM) && !PIN_EXISTS(SPINDLE_LASER_ENA) #error "(SPINDLE|LASER)_FEATURE requires SPINDLE_LASER_ENA_PIN, SPINDLE_LASER_USE_PWM, or SPINDLE_SERVO to control the power." @@ -3792,7 +3792,7 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." #error "ESP3D_WIFISUPPORT requires an ESP32 MOTHERBOARD." #elif ENABLED(WEBSUPPORT) && NONE(ARDUINO_ARCH_ESP32, WIFISUPPORT) #error "WEBSUPPORT requires WIFISUPPORT and an ESP32 MOTHERBOARD." -#elif BOTH(ESP3D_WIFISUPPORT, WIFISUPPORT) +#elif ALL(ESP3D_WIFISUPPORT, WIFISUPPORT) #error "Enable only one of ESP3D_WIFISUPPORT or WIFISUPPORT." #endif @@ -3810,14 +3810,14 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." /** * Sanity Check for MEATPACK and BINARY_FILE_TRANSFER Features */ -#if BOTH(HAS_MEATPACK, BINARY_FILE_TRANSFER) +#if ALL(HAS_MEATPACK, BINARY_FILE_TRANSFER) #error "Either enable MEATPACK_ON_SERIAL_PORT_* or BINARY_FILE_TRANSFER, not both." #endif /** * Sanity Check for Slim LCD Menus and Probe Offset Wizard */ -#if BOTH(SLIM_LCD_MENUS, PROBE_OFFSET_WIZARD) +#if ALL(SLIM_LCD_MENUS, PROBE_OFFSET_WIZARD) #error "SLIM_LCD_MENUS disables \"Advanced Settings > Probe Offsets > PROBE_OFFSET_WIZARD.\"" #endif @@ -3854,7 +3854,7 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." /** * Sanity check for MIXING_EXTRUDER & DISTINCT_E_FACTORS these are not compatible */ -#if BOTH(MIXING_EXTRUDER, DISTINCT_E_FACTORS) +#if ALL(MIXING_EXTRUDER, DISTINCT_E_FACTORS) #error "MIXING_EXTRUDER can't be used with DISTINCT_E_FACTORS. But you may use SINGLENOZZLE with DISTINCT_E_FACTORS." #endif @@ -3988,7 +3988,7 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." #endif // Check requirements for upload.py -#if ENABLED(XFER_BUILD) && !BOTH(BINARY_FILE_TRANSFER, CUSTOM_FIRMWARE_UPLOAD) +#if ENABLED(XFER_BUILD) && !ALL(BINARY_FILE_TRANSFER, CUSTOM_FIRMWARE_UPLOAD) #error "BINARY_FILE_TRANSFER and CUSTOM_FIRMWARE_UPLOAD are required for custom upload." #endif @@ -4008,12 +4008,12 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." #error "Input Shaping is not compatible with POLARGRAPH kinematics." #elif ENABLED(DIRECT_STEPPING) #error "Input Shaping is not compatible with DIRECT_STEPPING." - #elif BOTH(INPUT_SHAPING_X, CORE_IS_XZ) + #elif ALL(INPUT_SHAPING_X, CORE_IS_XZ) #error "INPUT_SHAPING_X is not supported with COREXZ." - #elif BOTH(INPUT_SHAPING_Y, CORE_IS_YZ) + #elif ALL(INPUT_SHAPING_Y, CORE_IS_YZ) #error "INPUT_SHAPING_Y is not supported with COREYZ." #elif ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) - #if !BOTH(INPUT_SHAPING_X, INPUT_SHAPING_Y) + #if !ALL(INPUT_SHAPING_X, INPUT_SHAPING_Y) #error "INPUT_SHAPING_X and INPUT_SHAPING_Y must both be enabled for COREXY, COREYX, or MARKFORGED_*." #else static_assert(SHAPING_FREQ_X == SHAPING_FREQ_Y, "SHAPING_FREQ_X and SHAPING_FREQ_Y must be the same for COREXY / COREYX / MARKFORGED_*."); diff --git a/Marlin/src/inc/Warnings.cpp b/Marlin/src/inc/Warnings.cpp index 5c6297ba6019..34c63239e5c6 100644 --- a/Marlin/src/inc/Warnings.cpp +++ b/Marlin/src/inc/Warnings.cpp @@ -687,17 +687,17 @@ /** * FYSETC/MKS/BTT Mini Panel backlighting */ -#if EITHER(FYSETC_242_OLED_12864, FYSETC_MINI_12864_2_1) && !ALL(NEOPIXEL_LED, LED_CONTROL_MENU, LED_USER_PRESET_STARTUP, LED_COLOR_PRESETS) +#if ANY(FYSETC_242_OLED_12864, FYSETC_MINI_12864_2_1) && !ALL(NEOPIXEL_LED, LED_CONTROL_MENU, LED_USER_PRESET_STARTUP, LED_COLOR_PRESETS) #warning "Your FYSETC/MKS/BTT Mini Panel works best with NEOPIXEL_LED, LED_CONTROL_MENU, LED_USER_PRESET_STARTUP, and LED_COLOR_PRESETS." #endif -#if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) && DISABLED(RGB_LED) +#if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) && DISABLED(RGB_LED) #warning "Your FYSETC Mini Panel works best with RGB_LED." -#elif EITHER(FYSETC_MINI_12864_2_0, FYSETC_MINI_12864_2_1) && DISABLED(LED_USER_PRESET_STARTUP) +#elif ANY(FYSETC_MINI_12864_2_0, FYSETC_MINI_12864_2_1) && DISABLED(LED_USER_PRESET_STARTUP) #warning "Your FYSETC Mini Panel works best with LED_USER_PRESET_STARTUP." #endif -#if EITHER(FYSETC_242_OLED_12864, FYSETC_MINI_12864) && BOTH(PSU_CONTROL, HAS_COLOR_LEDS) && !LED_POWEROFF_TIMEOUT +#if ANY(FYSETC_242_OLED_12864, FYSETC_MINI_12864) && ALL(PSU_CONTROL, HAS_COLOR_LEDS) && !LED_POWEROFF_TIMEOUT #warning "Your FYSETC display with PSU_CONTROL works best with LED_POWEROFF_TIMEOUT." #endif @@ -739,7 +739,7 @@ /** * POLAR warnings */ -#if BOTH(POLAR, S_CURVE_ACCELERATION) +#if ALL(POLAR, S_CURVE_ACCELERATION) #warning "POLAR kinematics may not work well with S_CURVE_ACCELERATION." #endif diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp index b03ff8a9f533..55e4d156ea9e 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp @@ -41,12 +41,12 @@ #include "../../module/planner.h" #include "../../module/motion.h" -#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) +#if DISABLED(LCD_PROGRESS_BAR) && ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) #include "../../feature/filwidth.h" #include "../../gcode/parser.h" #endif -#if EITHER(HAS_COOLER, LASER_COOLANT_FLOW_METER) +#if ANY(HAS_COOLER, LASER_COOLANT_FLOW_METER) #include "../../feature/cooler.h" #endif @@ -70,7 +70,7 @@ LCD_CLASS lcd(LCD_I2C_ADDRESS, LCD_I2C_PIN_EN, LCD_I2C_PIN_RW, LCD_I2C_PIN_RS, LCD_I2C_PIN_D4, LCD_I2C_PIN_D5, LCD_I2C_PIN_D6, LCD_I2C_PIN_D7); -#elif EITHER(LCD_I2C_TYPE_MCP23017, LCD_I2C_TYPE_MCP23008) +#elif ANY(LCD_I2C_TYPE_MCP23017, LCD_I2C_TYPE_MCP23008) LCD_CLASS lcd(LCD_I2C_ADDRESS OPTARG(DETECT_I2C_LCD_DEVICE, 1)); @@ -305,7 +305,7 @@ void MarlinUI::set_custom_characters(const HD44780CharSet screen_charset/*=CHARS #endif // LCD_PROGRESS_BAR - #if BOTH(HAS_MEDIA, HAS_MARLINUI_MENU) + #if ALL(HAS_MEDIA, HAS_MARLINUI_MENU) // CHARSET_MENU const static PROGMEM byte refresh[8] = { @@ -355,7 +355,7 @@ void MarlinUI::set_custom_characters(const HD44780CharSet screen_charset/*=CHARS #endif { createChar_P(LCD_STR_UPLEVEL[0], uplevel); - #if BOTH(HAS_MEDIA, HAS_MARLINUI_MENU) + #if ALL(HAS_MEDIA, HAS_MARLINUI_MENU) // SD Card sub-menu special characters createChar_P(LCD_STR_REFRESH[0], refresh); createChar_P(LCD_STR_FOLDER[0], folder); @@ -713,7 +713,7 @@ void MarlinUI::draw_status_message(const bool blink) { if (progress > 2) return draw_progress_bar(progress); } - #elif BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) + #elif ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) // Alternate Status message and Filament display if (ELAPSED(millis(), next_filament_display)) { @@ -1046,7 +1046,7 @@ void MarlinUI::draw_status_screen() { uint16_t per; #if HAS_FAN0 if (true - #if BOTH(HAS_EXTRUDERS, ADAPTIVE_FAN_SLOWING) + #if ALL(HAS_EXTRUDERS, ADAPTIVE_FAN_SLOWING) && (blink || thermalManager.fan_speed_scaler[0] < 128) #endif ) { diff --git a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp index f7e9ff3e4564..dfb685f096ec 100644 --- a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp +++ b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp @@ -52,12 +52,12 @@ #include "../../module/planner.h" #include "../../module/motion.h" -#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) +#if DISABLED(LCD_PROGRESS_BAR) && ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) #include "../../feature/filwidth.h" #include "../../gcode/parser.h" #endif -#if EITHER(HAS_COOLER, LASER_COOLANT_FLOW_METER) +#if ANY(HAS_COOLER, LASER_COOLANT_FLOW_METER) #include "../../feature/cooler.h" #endif @@ -141,7 +141,7 @@ static uint8_t PanelDetected = 0; #if ANY(__AVR__, TARGET_LPC1768, __STM32F1__, ARDUINO_ARCH_SAM, __SAMD51__, __MK20DX256__, __MK64FX512__) #define SPI_SEND_ONE(V) SPI.transfer(V); #define SPI_SEND_TWO(V) SPI.transfer16(V); -#elif EITHER(STM32F4xx, STM32F1xx) +#elif ANY(STM32F4xx, STM32F1xx) #define SPI_SEND_ONE(V) SPI.transfer(V, SPI_CONTINUE); #define SPI_SEND_TWO(V) SPI.transfer16(V, SPI_CONTINUE); #elif defined(ARDUINO_ARCH_ESP32) @@ -151,7 +151,7 @@ static uint8_t PanelDetected = 0; #if ANY(__AVR__, ARDUINO_ARCH_SAM, __SAMD51__, __MK20DX256__, __MK64FX512__) #define SPI_SEND_SOME(V,L,Z) SPI.transfer(&V[Z], L); -#elif EITHER(STM32F4xx, STM32F1xx) +#elif ANY(STM32F4xx, STM32F1xx) #define SPI_SEND_SOME(V,L,Z) SPI.transfer(&V[Z], L, SPI_CONTINUE); #elif ANY(TARGET_LPC1768, __STM32F1__, ARDUINO_ARCH_ESP32) #define SPI_SEND_SOME(V,L,Z) do{ for (uint16_t i = 0; i < L; i++) SPI_SEND_ONE(V[(Z)+i]); }while(0) @@ -290,7 +290,7 @@ uint8_t MarlinUI::read_slow_buttons() { Wire.requestFrom((uint8_t)LCD_I2C_ADDRESS, 2, 0, 0, 1); #elif defined(STM32F1) Wire.requestFrom((uint8_t)LCD_I2C_ADDRESS, (uint8_t)2); - #elif EITHER(STM32F4xx, TARGET_LPC1768) + #elif ANY(STM32F4xx, TARGET_LPC1768) Wire.requestFrom(LCD_I2C_ADDRESS, 2); #endif encoderDiff += Wire.read(); @@ -672,7 +672,7 @@ FORCE_INLINE void _draw_axis_value(const AxisEnum axis, const char *value, const void MarlinUI::draw_status_message(const bool blink) { if (!PanelDetected) return; lcd_moveto(0, 3); - #if BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) + #if ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) // Alternate Status message and Filament display if (ELAPSED(millis(), next_filament_display)) { diff --git a/Marlin/src/lcd/buttons.h b/Marlin/src/lcd/buttons.h index 58471239bbfb..601e8a70ae05 100644 --- a/Marlin/src/lcd/buttons.h +++ b/Marlin/src/lcd/buttons.h @@ -38,7 +38,7 @@ #define HAS_SLOW_BUTTONS 1 #endif -#if EITHER(HAS_DIGITAL_BUTTONS, HAS_DWIN_E3V2) +#if ANY(HAS_DIGITAL_BUTTONS, HAS_DWIN_E3V2) // Wheel spin pins where BA is 00, 10, 11, 01 (1 bit always changes) #define BLEN_A 0 #define BLEN_B 1 @@ -149,7 +149,7 @@ #ifndef EN_C #define EN_C 0 #endif -#if BUTTON_EXISTS(BACK) || EITHER(HAS_TOUCH_BUTTONS, IS_TFTGLCD_PANEL) +#if BUTTON_EXISTS(BACK) || ANY(HAS_TOUCH_BUTTONS, IS_TFTGLCD_PANEL) #define BLEN_D 3 #define EN_D _BV(BLEN_D) #else diff --git a/Marlin/src/lcd/dogm/dogm_Statusscreen.h b/Marlin/src/lcd/dogm/dogm_Statusscreen.h index 8d0ab4efbe46..9eec9d198717 100644 --- a/Marlin/src/lcd/dogm/dogm_Statusscreen.h +++ b/Marlin/src/lcd/dogm/dogm_Statusscreen.h @@ -143,7 +143,7 @@ // Can also be overridden in Configuration_adv.h // If you can afford it, try the 3-frame fan animation! // Don't compile in the fan animation with no fan -#if !HAS_FAN0 || (HOTENDS == 5 || (HOTENDS == 4 && BED_OR_CHAMBER) || BOTH(STATUS_COMBINE_HEATERS, HAS_HEATED_CHAMBER)) +#if !HAS_FAN0 || (HOTENDS == 5 || (HOTENDS == 4 && BED_OR_CHAMBER) || ALL(STATUS_COMBINE_HEATERS, HAS_HEATED_CHAMBER)) #undef STATUS_FAN_FRAMES #elif !STATUS_FAN_FRAMES #define STATUS_FAN_FRAMES 2 @@ -253,7 +253,7 @@ ((STATUS_CHAMBER_WIDTH || STATUS_FAN_WIDTH || STATUS_BED_WIDTH) && STATUS_HOTEND_BITMAPS == 4) #define STATUS_HEATERS_X 5 #else - #if BOTH(STATUS_COMBINE_HEATERS, HAS_HEATED_BED) && HOTENDS <= 4 + #if ALL(STATUS_COMBINE_HEATERS, HAS_HEATED_BED) && HOTENDS <= 4 #define STATUS_HEATERS_X 5 #else #define STATUS_HEATERS_X 8 // Like the included bitmaps @@ -742,22 +742,22 @@ #if HAS_FAN0 && STATUS_FAN_WIDTH && HOTENDS <= 4 && defined(STATUS_FAN_FRAMES) #define DO_DRAW_FAN 1 #endif -#if BOTH(HAS_HOTEND, STATUS_HOTEND_ANIM) +#if ALL(HAS_HOTEND, STATUS_HOTEND_ANIM) #define ANIM_HOTEND 1 #endif -#if BOTH(DO_DRAW_BED, STATUS_BED_ANIM) +#if ALL(DO_DRAW_BED, STATUS_BED_ANIM) #define ANIM_BED 1 #endif -#if BOTH(DO_DRAW_CHAMBER, STATUS_CHAMBER_ANIM) +#if ALL(DO_DRAW_CHAMBER, STATUS_CHAMBER_ANIM) #define ANIM_CHAMBER 1 #endif -#if BOTH(DO_DRAW_CUTTER, STATUS_CUTTER_ANIM) +#if ALL(DO_DRAW_CUTTER, STATUS_CUTTER_ANIM) #define ANIM_CUTTER 1 #endif -#if BOTH(DO_DRAW_COOLER, STATUS_COOLER_ANIM) +#if ALL(DO_DRAW_COOLER, STATUS_COOLER_ANIM) #define ANIM_COOLER 1 #endif -#if BOTH(DO_DRAW_FLOWMETER, STATUS_FLOWMETER_ANIM) +#if ALL(DO_DRAW_FLOWMETER, STATUS_FLOWMETER_ANIM) #define ANIM_FLOWMETER 1 #endif #if ANIM_HOTEND || ANIM_BED || ANIM_CHAMBER || ANIM_CUTTER diff --git a/Marlin/src/lcd/dogm/marlinui_DOGM.cpp b/Marlin/src/lcd/dogm/marlinui_DOGM.cpp index 2552df3b88f4..185d3488dbc9 100644 --- a/Marlin/src/lcd/dogm/marlinui_DOGM.cpp +++ b/Marlin/src/lcd/dogm/marlinui_DOGM.cpp @@ -645,7 +645,7 @@ void MarlinUI::clear_lcd() { } // Automatically cleared by Picture Loop #endif // AUTO_BED_LEVELING_UBL - #if EITHER(BABYSTEP_GFX_OVERLAY, MESH_EDIT_GFX_OVERLAY) + #if ANY(BABYSTEP_GFX_OVERLAY, MESH_EDIT_GFX_OVERLAY) // // Draw knob rotation => Z motion key for: diff --git a/Marlin/src/lcd/dogm/marlinui_DOGM.h b/Marlin/src/lcd/dogm/marlinui_DOGM.h index afdda5ac5bf5..414508b1294c 100644 --- a/Marlin/src/lcd/dogm/marlinui_DOGM.h +++ b/Marlin/src/lcd/dogm/marlinui_DOGM.h @@ -127,7 +127,7 @@ #define U8G_CLASS U8GLIB_SSD1306_128X64 // 8 stripes #endif -#elif EITHER(FYSETC_242_OLED_12864, K3D_242_OLED_CONTROLLER) +#elif ANY(FYSETC_242_OLED_12864, K3D_242_OLED_CONTROLLER) // FYSETC OLED 2.42" 128 × 64 Full Graphics Controller // or K3D OLED 2.42" 128 × 64 Full Graphics Controller @@ -151,7 +151,7 @@ #define U8G_CLASS U8GLIB_SH1306_128X64 // 8 stripes #endif -#elif EITHER(MKS_12864OLED, ZONESTAR_12864OLED) +#elif ANY(MKS_12864OLED, ZONESTAR_12864OLED) // MKS 128x64 (SH1106) OLED I2C LCD // - or - diff --git a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp index 7d1f090d1e3f..61181f9a005b 100644 --- a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp +++ b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp @@ -55,7 +55,7 @@ #include "../../feature/spindle_laser.h" #endif -#if EITHER(HAS_COOLER, LASER_COOLANT_FLOW_METER) +#if ANY(HAS_COOLER, LASER_COOLANT_FLOW_METER) #include "../../feature/cooler.h" #endif @@ -127,7 +127,7 @@ #define MAX_HOTEND_DRAW _MIN(HOTENDS, ((LCD_PIXEL_WIDTH - (STATUS_LOGO_BYTEWIDTH + STATUS_FAN_BYTEWIDTH) * 8) / (STATUS_HEATERS_XSPACE))) #endif -#if EITHER(DO_DRAW_BED, DO_DRAW_HOTENDS) +#if ANY(DO_DRAW_BED, DO_DRAW_HOTENDS) #define STATUS_HEATERS_BOT (STATUS_HEATERS_Y + STATUS_HEATERS_HEIGHT - 1) #endif @@ -457,7 +457,7 @@ FORCE_INLINE void _draw_axis_value(const AxisEnum axis, const char *value, const } // Prepare strings for progress display -#if EITHER(HAS_EXTRA_PROGRESS, HAS_PRINT_PROGRESS) +#if ANY(HAS_EXTRA_PROGRESS, HAS_PRINT_PROGRESS) static MarlinUI::progress_t progress = 0; static char bufferc[13]; #endif @@ -512,7 +512,7 @@ FORCE_INLINE void _draw_axis_value(const AxisEnum axis, const char *value, const void MarlinUI::draw_status_screen() { #if NUM_AXES constexpr int xystorage = TERN(INCH_MODE_SUPPORT, 8, 5); - #if EITHER(HAS_X_AXIS, LCD_SHOW_E_TOTAL) + #if ANY(HAS_X_AXIS, LCD_SHOW_E_TOTAL) static char xstring[TERN(LCD_SHOW_E_TOTAL, 12, xystorage)]; #endif #if HAS_Y_AXIS @@ -612,7 +612,7 @@ void MarlinUI::draw_status_screen() { #if DO_DRAW_BED && DISABLED(STATUS_COMBINE_HEATERS) #if ANIM_BED - #if BOTH(HAS_LEVELING, STATUS_ALT_BED_BITMAP) + #if ALL(HAS_LEVELING, STATUS_ALT_BED_BITMAP) #define BED_BITMAP(S) ((S) \ ? (planner.leveling_active ? status_bed_leveled_on_bmp : status_bed_on_bmp) \ : (planner.leveling_active ? status_bed_leveled_bmp : status_bed_bmp)) @@ -783,7 +783,7 @@ void MarlinUI::draw_status_screen() { // XYZ Coordinates // - #if EITHER(XYZ_NO_FRAME, XYZ_HOLLOW_FRAME) + #if ANY(XYZ_NO_FRAME, XYZ_HOLLOW_FRAME) #define XYZ_FRAME_TOP 29 #define XYZ_FRAME_HEIGHT INFO_FONT_ASCENT + 3 #else @@ -890,7 +890,7 @@ void MarlinUI::draw_status_screen() { if (PAGE_CONTAINS(STATUS_BASELINE - INFO_FONT_ASCENT, STATUS_BASELINE + INFO_FONT_DESCENT)) { lcd_moveto(0, STATUS_BASELINE); - #if BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) + #if ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) // Alternate Status message and Filament display if (ELAPSED(millis(), next_filament_display)) { lcd_put_u8str(F(LCD_STR_FILAM_DIA)); diff --git a/Marlin/src/lcd/e3v2/creality/dwin.cpp b/Marlin/src/lcd/e3v2/creality/dwin.cpp index 9ae1cf1e0626..3c259e5bf4de 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin.cpp +++ b/Marlin/src/lcd/e3v2/creality/dwin.cpp @@ -76,7 +76,7 @@ #include "../../../module/probe.h" #endif -#if EITHER(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) +#if ANY(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) #include "../../../feature/babystep.h" #endif @@ -201,7 +201,7 @@ void HMI_SetLanguageCache() { } void HMI_SetLanguage() { - #if BOTH(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) + #if ALL(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) BL24CXX::read(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language)); #endif HMI_SetLanguageCache(); @@ -210,7 +210,7 @@ void HMI_SetLanguage() { void HMI_ToggleLanguage() { HMI_flag.language = HMI_IsChinese() ? DWIN_ENGLISH : DWIN_CHINESE; HMI_SetLanguageCache(); - #if BOTH(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) + #if ALL(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) BL24CXX::write(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language)); #endif } @@ -475,7 +475,7 @@ void Draw_Back_First(const bool is_sel=true) { #define PREPARE_CASE_ZOFF (PREPARE_CASE_HOME + ENABLED(HAS_ZOFFSET_ITEM)) #define PREPARE_CASE_PLA (PREPARE_CASE_ZOFF + ENABLED(HAS_PREHEAT)) #define PREPARE_CASE_ABS (PREPARE_CASE_PLA + (TERN0(HAS_PREHEAT, PREHEAT_COUNT > 1))) -#define PREPARE_CASE_COOL (PREPARE_CASE_ABS + EITHER(HAS_HOTEND, HAS_HEATED_BED)) +#define PREPARE_CASE_COOL (PREPARE_CASE_ABS + ANY(HAS_HOTEND, HAS_HEATED_BED)) #define PREPARE_CASE_LANG (PREPARE_CASE_COOL + 1) #define PREPARE_CASE_TOTAL PREPARE_CASE_LANG @@ -1375,7 +1375,7 @@ void HMI_Move_Z() { LIMIT(HMI_ValueStruct.offset_value, (Z_PROBE_OFFSET_RANGE_MIN) * 100, (Z_PROBE_OFFSET_RANGE_MAX) * 100); last_zoffset = dwin_zoffset; dwin_zoffset = HMI_ValueStruct.offset_value / 100.0f; - #if EITHER(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) + #if ANY(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) if (BABYSTEP_ALLOWED()) babystep.add_mm(Z_AXIS, dwin_zoffset - last_zoffset); #endif Draw_Edit_Signed_Float2(zoff_line, HMI_ValueStruct.offset_value, true); @@ -2291,10 +2291,10 @@ void HMI_Printing() { char cmd[40]; cmd[0] = '\0'; - #if BOTH(HAS_HEATED_BED, PAUSE_HEAT) + #if ALL(HAS_HEATED_BED, PAUSE_HEAT) if (resume_bed_temp) sprintf_P(cmd, PSTR("M190 S%i\n"), resume_bed_temp); #endif - #if BOTH(HAS_HOTEND, PAUSE_HEAT) + #if ALL(HAS_HOTEND, PAUSE_HEAT) if (resume_hotend_temp) sprintf_P(&cmd[strlen(cmd)], PSTR("M109 S%i\n"), resume_hotend_temp); #endif @@ -2701,7 +2701,7 @@ void HMI_Prepare() { #if HAS_ZOFFSET_ITEM case PREPARE_CASE_ZOFF: - #if EITHER(HAS_BED_PROBE, BABYSTEPPING) + #if ANY(HAS_BED_PROBE, BABYSTEPPING) checkkey = Homeoffset; HMI_ValueStruct.show_mode = -4; HMI_ValueStruct.offset_value = BABY_Z_VAR * 100; @@ -3780,7 +3780,7 @@ void HMI_Tune() { #endif #if HAS_ZOFFSET_ITEM case TUNE_CASE_ZOFF: // Z-offset - #if EITHER(HAS_BED_PROBE, BABYSTEPPING) + #if ANY(HAS_BED_PROBE, BABYSTEPPING) checkkey = Homeoffset; HMI_ValueStruct.offset_value = BABY_Z_VAR * 100; Draw_Edit_Signed_Float2(TUNE_CASE_ZOFF + MROWS - index_tune, HMI_ValueStruct.offset_value, true); @@ -4240,7 +4240,7 @@ void DWIN_HandleScreen() { case Extruder: HMI_Move_E(); break; case ETemp: HMI_ETemp(); break; #endif - #if EITHER(HAS_BED_PROBE, BABYSTEPPING) + #if ANY(HAS_BED_PROBE, BABYSTEPPING) case Homeoffset: HMI_Zoffset(); break; #endif #if HAS_HEATED_BED diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index 53e4466bf811..81478887cec3 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -1104,7 +1104,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #define PREPARE_MANUALLEVEL (PREPARE_HOME + 1) #define PREPARE_ZOFFSET (PREPARE_MANUALLEVEL + ENABLED(HAS_ZOFFSET_ITEM)) #define PREPARE_PREHEAT (PREPARE_ZOFFSET + ENABLED(HAS_PREHEAT)) - #define PREPARE_COOLDOWN (PREPARE_PREHEAT + EITHER(HAS_HOTEND, HAS_HEATED_BED)) + #define PREPARE_COOLDOWN (PREPARE_PREHEAT + ANY(HAS_HOTEND, HAS_HEATED_BED)) #define PREPARE_CHANGEFIL (PREPARE_COOLDOWN + ENABLED(ADVANCED_PAUSE_FEATURE)) #define PREPARE_CUSTOM_MENU (PREPARE_CHANGEFIL + ENABLED(HAS_CUSTOM_MENU)) #define PREPARE_TOTAL PREPARE_CUSTOM_MENU @@ -3081,7 +3081,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #define LEVELING_BACK 0 #define LEVELING_ACTIVE (LEVELING_BACK + 1) - #define LEVELING_GET_TILT (LEVELING_ACTIVE + BOTH(HAS_BED_PROBE, AUTO_BED_LEVELING_UBL)) + #define LEVELING_GET_TILT (LEVELING_ACTIVE + ALL(HAS_BED_PROBE, AUTO_BED_LEVELING_UBL)) #define LEVELING_GET_MESH (LEVELING_GET_TILT + 1) #define LEVELING_MANUAL (LEVELING_GET_MESH + 1) #define LEVELING_VIEW (LEVELING_MANUAL + 1) @@ -3116,7 +3116,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item Draw_Checkbox(row, planner.leveling_active); } break; - #if BOTH(HAS_BED_PROBE, AUTO_BED_LEVELING_UBL) + #if ALL(HAS_BED_PROBE, AUTO_BED_LEVELING_UBL) case LEVELING_GET_TILT: if (draw) Draw_Menu_Item(row, ICON_Tilt, F("Autotilt Current Mesh")); diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp index 58a84ac34e51..5d6e238fe1d2 100644 --- a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp @@ -582,7 +582,7 @@ void MarlinUI::draw_status_message(const bool blink) { #endif // AUTO_BED_LEVELING_UBL - #if EITHER(BABYSTEP_GFX_OVERLAY, MESH_EDIT_GFX_OVERLAY) + #if ANY(BABYSTEP_GFX_OVERLAY, MESH_EDIT_GFX_OVERLAY) void MarlinUI::zoffset_overlay(const int8_t dir) { const int rot_up = TERN(OVERLAY_GFX_REVERSE, ICON_RotateCCW, ICON_RotateCW), diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp index 5cfeb6488f92..b66750bd8812 100644 --- a/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp @@ -192,7 +192,7 @@ FORCE_INLINE void _draw_heater_status(const heater_id_t heater, const uint16_t x #endif celsius_float_t tc = 0, tt = 0; - bool isBed = (DISABLED(HAS_HOTEND) && ENABLED(HAS_HEATED_BED)) || (BOTH(HAS_HOTEND, HAS_HEATED_BED) && heater < 0), + bool isBed = (DISABLED(HAS_HOTEND) && ENABLED(HAS_HEATED_BED)) || (ALL(HAS_HOTEND, HAS_HEATED_BED) && heater < 0), ta = false, c_draw, t_draw, i_draw; c_draw = t_draw = i_draw = !ui.did_first_redraw; if (isBed) { diff --git a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp index 47b104c5ba47..48e07cc20793 100644 --- a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp +++ b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp @@ -46,7 +46,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(DWIN_LCD_PROUI, HAS_LEVELING) +#if ALL(DWIN_LCD_PROUI, HAS_LEVELING) #include "../../marlinui.h" #include "../../../core/types.h" diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index 6730c026c59a..807f1915f6f3 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -233,7 +233,7 @@ MenuClass *MaxAccelMenu = nullptr; MenuClass *MaxJerkMenu = nullptr; #endif MenuClass *StepsMenu = nullptr; -#if EITHER(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) +#if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) MenuClass *HotendMPCMenu = nullptr; #endif #if ENABLED(PIDTEMP) @@ -285,7 +285,7 @@ void HMI_SetLanguageCache() { } void HMI_SetLanguage() { - #if BOTH(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) + #if ALL(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) BL24CXX::read(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language)); #endif HMI_SetLanguageCache(); @@ -294,7 +294,7 @@ void HMI_SetLanguage() { void HMI_ToggleLanguage() { HMI_flag.language = HMI_IsChinese() ? DWIN_ENGLISH : DWIN_CHINESE; HMI_SetLanguageCache(); - #if BOTH(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) + #if ALL(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) BL24CXX::write(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language)); #endif } @@ -1410,7 +1410,7 @@ void DWIN_LevelingStart() { HMI_SaveProcessID(Leveling); Title.ShowCaption(GET_TEXT_F(MSG_BED_LEVELING)); DWIN_Show_Popup(ICON_AutoLeveling, GET_TEXT_F(MSG_BED_LEVELING), GET_TEXT_F(MSG_PLEASE_WAIT)); - #if BOTH(AUTO_BED_LEVELING_UBL, PREHEAT_BEFORE_LEVELING) + #if ALL(AUTO_BED_LEVELING_UBL, PREHEAT_BEFORE_LEVELING) #if HAS_HOTEND if (thermalManager.degTargetHotend(0) < LEVELING_NOZZLE_TEMP) thermalManager.setTargetHotend(LEVELING_NOZZLE_TEMP, 0); @@ -1460,7 +1460,7 @@ void DWIN_LevelingDone() { DWINUI::Draw_String(HMI_data.PopupTxt_Color, gfrm.x, gfrm.y - DWINUI::fontHeight() - 4, F("MPC target: Celsius")); break; #endif - #if EITHER(PIDTEMP, PIDTEMPBED) + #if ANY(PIDTEMP, PIDTEMPBED) TERN_(PIDTEMP, case PIDTEMP_START:) TERN_(PIDTEMPBED, case PIDTEMPBED_START:) DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 100, GET_TEXT_F(MSG_PID_AUTOTUNE)); @@ -1471,7 +1471,7 @@ void DWIN_LevelingDone() { switch (HMI_value.pidresult) { default: break; - #if EITHER(PIDTEMP, MPC_AUTOTUNE) + #if ANY(PIDTEMP, MPC_AUTOTUNE) TERN_(PIDTEMP, case PIDTEMP_START:) TERN_(MPC_AUTOTUNE, case MPCTEMP_START:) DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 120, F("for Nozzle is running.")); @@ -1705,10 +1705,10 @@ void DWIN_SetDataDefaults() { TERN_(BAUD_RATE_GCODE, SetBaud250K()); HMI_data.FullManualTramming = false; HMI_data.MediaAutoMount = ENABLED(HAS_SD_EXTENDER); - #if BOTH(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) + #if ALL(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) HMI_data.z_after_homing = DEF_Z_AFTER_HOMING; #endif - #if BOTH(LED_CONTROL_MENU, HAS_COLOR_LEDS) + #if ALL(LED_CONTROL_MENU, HAS_COLOR_LEDS) TERN_(LED_COLOR_PRESETS, leds.set_default()); ApplyLEDColor(); #endif @@ -1725,7 +1725,7 @@ void DWIN_CopySettingsFrom(const char * const buff) { TERN_(PREVENT_COLD_EXTRUSION, ApplyExtMinT()); feedrate_percentage = 100; TERN_(BAUD_RATE_GCODE, HMI_SetBaudRate()); - #if BOTH(LED_CONTROL_MENU, HAS_COLOR_LEDS) + #if ALL(LED_CONTROL_MENU, HAS_COLOR_LEDS) leds.set_color( HMI_data.Led_Color.r, HMI_data.Led_Color.g, @@ -1983,7 +1983,7 @@ void AutoHome() { queue.inject_P(G28_STR); } void HomeX() { queue.inject(F("G28X")); } void HomeY() { queue.inject(F("G28Y")); } void HomeZ() { queue.inject(F("G28Z")); } - #if BOTH(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) + #if ALL(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) void ApplyZAfterHoming() { HMI_data.z_after_homing = MenuData.Value; }; void SetZAfterHoming() { SetIntOnClick(0, 20, HMI_data.z_after_homing, ApplyZAfterHoming); } #endif @@ -2001,13 +2001,13 @@ void AutoHome() { queue.inject_P(G28_STR); } void ApplyZOffset() { TERN_(EEPROM_SETTINGS, settings.save()); } void LiveZOffset() { - #if EITHER(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) + #if ANY(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) const_float_t step_zoffset = round((MenuData.Value / 100.0f) * planner.settings.axis_steps_per_mm[Z_AXIS]) - babystep.accum; if (BABYSTEP_ALLOWED()) babystep.add_steps(Z_AXIS, step_zoffset); #endif } void SetZOffset() { - #if EITHER(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) + #if ANY(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) babystep.accum = round(planner.settings.axis_steps_per_mm[Z_AXIS] * BABY_Z_VAR); #endif SetPFloatOnClick(Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX, 2, ApplyZOffset, LiveZOffset); @@ -2135,7 +2135,7 @@ void SetMoveZ() { HMI_value.axis = Z_AXIS; SetPFloatOnClick(Z_MIN_POS, Z_MAX_POS #endif #if ENABLED(LED_CONTROL_MENU) - #if !BOTH(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL) + #if !ALL(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL) void SetLedStatus() { leds.toggle(); Show_Chkb_Line(leds.lights_on); @@ -2675,7 +2675,7 @@ void onDrawAutoHome(MenuItemClass* menuitem, int8_t line) { } #if HAS_ZOFFSET_ITEM - #if EITHER(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) + #if ANY(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) void onDrawZOffset(MenuItemClass* menuitem, int8_t line) { if (HMI_IsChinese()) menuitem->SetFrame(1, 174, 164, 223, 177); onDrawPFloat2Menu(menuitem, line); @@ -3118,7 +3118,7 @@ void Draw_AdvancedSettings_Menu() { #if ENABLED(PIDTEMP) MENU_ITEM_F(ICON_PIDNozzle, STR_HOTEND_PID " Settings", onDrawSubMenu, Draw_HotendPID_Menu); #endif - #if EITHER(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) + #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) MENU_ITEM_F(ICON_MPCNozzle, "MPC Settings", onDrawSubMenu, Draw_HotendMPC_Menu); #endif #if ENABLED(PIDTEMPBED) @@ -3292,7 +3292,7 @@ void Draw_GetColor_Menu() { DWIN_Draw_Rectangle(1, *MenuData.P_Int, 20, 315, DWIN_WIDTH - 20, 335); } -#if BOTH(CASE_LIGHT_MENU, CASELIGHT_USES_BRIGHTNESS) +#if ALL(CASE_LIGHT_MENU, CASELIGHT_USES_BRIGHTNESS) void Draw_CaseLight_Menu() { checkkey = Menu; @@ -3312,7 +3312,7 @@ void Draw_GetColor_Menu() { checkkey = Menu; if (SET_MENU(LedControlMenu, MSG_LED_CONTROL, 10)) { BACK_ITEM(Draw_Control_Menu); - #if !BOTH(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL) + #if !ALL(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL) EDIT_ITEM(ICON_LedControl, MSG_LEDS, onDrawChkbMenu, SetLedStatus, &leds.lights_on); #endif #if HAS_COLOR_LEDS @@ -3594,7 +3594,7 @@ void Draw_Steps_Menu() { #endif -#if EITHER(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) +#if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) #if ENABLED(MPC_AUTOTUNE_MENU) void HotendMPC() { thermalManager.MPC_autotune(active_extruder); } diff --git a/Marlin/src/lcd/e3v2/proui/dwin.h b/Marlin/src/lcd/e3v2/proui/dwin.h index 0057a8639234..2e967bc15f6f 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.h +++ b/Marlin/src/lcd/e3v2/proui/dwin.h @@ -36,7 +36,7 @@ #include "../common/limits.h" #include "../../../libs/BL24CXX.h" -#if EITHER(BABYSTEPPING, HAS_BED_PROBE) +#if ANY(BABYSTEPPING, HAS_BED_PROBE) #define HAS_ZOFFSET_ITEM 1 #if !HAS_BED_PROBE #define JUST_BABYSTEP 1 @@ -75,7 +75,7 @@ enum processID : uint8_t { NothingToDo }; -#if EITHER(DWIN_PID_TUNE, MPC_AUTOTUNE) +#if ANY(DWIN_PID_TUNE, MPC_AUTOTUNE) enum tempcontrol_t : uint8_t { #if DWIN_PID_TUNE @@ -142,10 +142,10 @@ typedef struct { bool FullManualTramming = false; bool MediaAutoMount = ENABLED(HAS_SD_EXTENDER); - #if BOTH(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) + #if ALL(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) uint8_t z_after_homing = DEF_Z_AFTER_HOMING; #endif - #if BOTH(LED_CONTROL_MENU, HAS_COLOR_LEDS) + #if ALL(LED_CONTROL_MENU, HAS_COLOR_LEDS) LEDColor Led_Color = Def_Leds_Color; #endif } HMI_data_t; @@ -225,7 +225,7 @@ void ParkHead(); #if HAS_ONESTEP_LEVELING void Trammingwizard(); #endif -#if BOTH(LED_CONTROL_MENU, HAS_COLOR_LEDS) +#if ALL(LED_CONTROL_MENU, HAS_COLOR_LEDS) void ApplyLEDColor(); #endif #if ENABLED(AUTO_BED_LEVELING_UBL) @@ -333,7 +333,7 @@ void Draw_FilSet_Menu(); void Draw_PhySet_Menu(); void Draw_SelectColors_Menu(); void Draw_GetColor_Menu(); -#if BOTH(CASE_LIGHT_MENU, CASELIGHT_USES_BRIGHTNESS) +#if ALL(CASE_LIGHT_MENU, CASELIGHT_USES_BRIGHTNESS) void Draw_CaseLight_Menu(); #endif #if ENABLED(LED_CONTROL_MENU) @@ -354,7 +354,7 @@ void Draw_MaxAccel_Menu(); void Draw_MaxJerk_Menu(); #endif void Draw_Steps_Menu(); -#if EITHER(HAS_BED_PROBE, BABYSTEPPING) +#if ANY(HAS_BED_PROBE, BABYSTEPPING) void Draw_ZOffsetWiz_Menu(); #endif #if ENABLED(INDIVIDUAL_AXIS_HOMING_SUBMENU) @@ -384,7 +384,7 @@ void Draw_Steps_Menu(); #endif // MPC -#if EITHER(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) +#if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) void Draw_HotendMPC_Menu(); #endif #if ENABLED(MPC_AUTOTUNE) diff --git a/Marlin/src/lcd/e3v2/proui/dwin_defines.h b/Marlin/src/lcd/e3v2/proui/dwin_defines.h index 164fd00fe6da..6f4520e23bc0 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_defines.h +++ b/Marlin/src/lcd/e3v2/proui/dwin_defines.h @@ -65,7 +65,7 @@ #define Def_Indicator_Color Color_White #define Def_Coordinate_Color Color_White #define Def_Button_Color RGB( 0, 23, 16) -#if BOTH(LED_CONTROL_MENU, HAS_COLOR_LEDS) +#if ALL(LED_CONTROL_MENU, HAS_COLOR_LEDS) #define Def_Leds_Color LEDColorWhite() #endif #if ENABLED(CASELIGHT_USES_BRIGHTNESS) diff --git a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp index 7ec088e240c4..860bad74f3f4 100644 --- a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp +++ b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp @@ -29,7 +29,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(DWIN_LCD_PROUI, HAS_ESDIAG) +#if ALL(DWIN_LCD_PROUI, HAS_ESDIAG) #include "endstop_diag.h" diff --git a/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp b/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp index f8bcda83530a..6cf3e9e135f5 100644 --- a/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp +++ b/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp @@ -29,7 +29,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(DWIN_LCD_PROUI, HAS_GCODE_PREVIEW) +#if ALL(DWIN_LCD_PROUI, HAS_GCODE_PREVIEW) #include "../../../core/types.h" #include "../../marlinui.h" diff --git a/Marlin/src/lcd/e3v2/proui/lockscreen.cpp b/Marlin/src/lcd/e3v2/proui/lockscreen.cpp index 85f35582b268..abf67ad9aff4 100644 --- a/Marlin/src/lcd/e3v2/proui/lockscreen.cpp +++ b/Marlin/src/lcd/e3v2/proui/lockscreen.cpp @@ -29,7 +29,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(DWIN_LCD_PROUI, HAS_LOCKSCREEN) +#if ALL(DWIN_LCD_PROUI, HAS_LOCKSCREEN) #include "dwin_defines.h" #include "dwinui.h" diff --git a/Marlin/src/lcd/e3v2/proui/meshviewer.cpp b/Marlin/src/lcd/e3v2/proui/meshviewer.cpp index 69d21c044ce9..c0ca216c32a9 100644 --- a/Marlin/src/lcd/e3v2/proui/meshviewer.cpp +++ b/Marlin/src/lcd/e3v2/proui/meshviewer.cpp @@ -29,7 +29,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(DWIN_LCD_PROUI, HAS_MESH) +#if ALL(DWIN_LCD_PROUI, HAS_MESH) #include "../../../core/types.h" #include "../../marlinui.h" diff --git a/Marlin/src/lcd/e3v2/proui/plot.cpp b/Marlin/src/lcd/e3v2/proui/plot.cpp index fddaf3963ae1..627dc39223cf 100644 --- a/Marlin/src/lcd/e3v2/proui/plot.cpp +++ b/Marlin/src/lcd/e3v2/proui/plot.cpp @@ -29,7 +29,7 @@ #include "../../../inc/MarlinConfig.h" -#if BOTH(DWIN_LCD_PROUI, SHOW_TUNING_GRAPH) +#if ALL(DWIN_LCD_PROUI, SHOW_TUNING_GRAPH) #include "plot.h" #include "../../../core/types.h" diff --git a/Marlin/src/lcd/e3v2/proui/printstats.cpp b/Marlin/src/lcd/e3v2/proui/printstats.cpp index 638cd3420809..7f45fa71ef1b 100644 --- a/Marlin/src/lcd/e3v2/proui/printstats.cpp +++ b/Marlin/src/lcd/e3v2/proui/printstats.cpp @@ -29,7 +29,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(DWIN_LCD_PROUI, PRINTCOUNTER) +#if ALL(DWIN_LCD_PROUI, PRINTCOUNTER) #include "printstats.h" diff --git a/Marlin/src/lcd/extui/anycubic/Tunes.cpp b/Marlin/src/lcd/extui/anycubic/Tunes.cpp index d1fb888d17a2..8a9e84f0001d 100644 --- a/Marlin/src/lcd/extui/anycubic/Tunes.cpp +++ b/Marlin/src/lcd/extui/anycubic/Tunes.cpp @@ -31,7 +31,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if EITHER(ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_VYPER) +#if ANY(ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_VYPER) #include "Tunes.h" #include "../../../libs/buzzer.h" diff --git a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp index dca0f2e85da4..a560e5e9a078 100644 --- a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp +++ b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp @@ -885,7 +885,7 @@ void AnycubicTFTClass::getCommandFromTFT() { } void AnycubicTFTClass::doSDCardStateCheck() { - #if BOTH(HAS_MEDIA, HAS_SD_DETECT) + #if ALL(HAS_MEDIA, HAS_SD_DETECT) bool isInserted = isMediaInserted(); if (isInserted) SENDLINE_DBG_PGM("J00", "TFT Serial Debug: SD card state changed... isInserted"); diff --git a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp index 16aeeab1a142..4c1995cebc24 100644 --- a/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp @@ -636,7 +636,7 @@ void DGUSScreenHandlerMKS::manualAssistLeveling(DGUS_VP_Variable &var, void *val #define mks_min(a, b) ((a) < (b)) ? (a) : (b) #define mks_max(a, b) ((a) > (b)) ? (a) : (b) void DGUSScreenHandlerMKS::tmcChangeConfig(DGUS_VP_Variable &var, void *val_ptr) { - #if EITHER(HAS_TRINAMIC_CONFIG, HAS_STEALTHCHOP) + #if ANY(HAS_TRINAMIC_CONFIG, HAS_STEALTHCHOP) const uint16_t tmc_val = BE16_P(val_ptr); #endif @@ -1099,7 +1099,7 @@ void DGUSScreenHandlerMKS::getManualFilamentSpeed(DGUS_VP_Variable &var, void *v } void DGUSScreenHandlerMKS::filamentLoadUnload(DGUS_VP_Variable &var, void *val_ptr, const int filamentDir) { - #if EITHER(HAS_MULTI_HOTEND, SINGLENOZZLE) + #if ANY(HAS_MULTI_HOTEND, SINGLENOZZLE) uint8_t swap_tool = 0; #else constexpr uint8_t swap_tool = 1; // T0 (or none at all) @@ -1120,7 +1120,7 @@ void DGUSScreenHandlerMKS::filamentLoadUnload(DGUS_VP_Variable &var, void *val_p if (thermalManager.tooColdToExtrude(0)) hotend_too_cold = 1; else { - #if EITHER(HAS_MULTI_HOTEND, SINGLENOZZLE) + #if ANY(HAS_MULTI_HOTEND, SINGLENOZZLE) swap_tool = 1; #endif } @@ -1135,7 +1135,7 @@ void DGUSScreenHandlerMKS::filamentLoadUnload(DGUS_VP_Variable &var, void *val_p break; } - #if BOTH(HAS_HOTEND, PREVENT_COLD_EXTRUSION) + #if ALL(HAS_HOTEND, PREVENT_COLD_EXTRUSION) if (hotend_too_cold) { if (thermalManager.targetTooColdToExtrude(hotend_too_cold - 1)) thermalManager.setTargetHotend(thermalManager.extrude_min_temp, hotend_too_cold - 1); sendInfoScreen(F("NOTICE"), nullptr, F("Please wait."), F("Nozzle heating!"), true, true, true, true); @@ -1147,7 +1147,7 @@ void DGUSScreenHandlerMKS::filamentLoadUnload(DGUS_VP_Variable &var, void *val_p if (swap_tool) { char buf[30]; snprintf_P(buf, 30 - #if EITHER(HAS_MULTI_HOTEND, SINGLENOZZLE) + #if ANY(HAS_MULTI_HOTEND, SINGLENOZZLE) , PSTR("M1002T%cE%dF%d"), char('0' + swap_tool - 1) #else , PSTR("M1002E%dF%d") @@ -1163,7 +1163,7 @@ void DGUSScreenHandlerMKS::filamentLoadUnload(DGUS_VP_Variable &var, void *val_p * within the G-code execution window for best concurrency. */ void GcodeSuite::M1002() { - #if EITHER(HAS_MULTI_HOTEND, SINGLENOZZLE) + #if ANY(HAS_MULTI_HOTEND, SINGLENOZZLE) { char buf[3]; sprintf_P(buf, PSTR("T%c"), char('0' + parser.intval('T'))); diff --git a/Marlin/src/lcd/extui/example/example.cpp b/Marlin/src/lcd/extui/example/example.cpp index b295434d842c..e78e4b967987 100644 --- a/Marlin/src/lcd/extui/example/example.cpp +++ b/Marlin/src/lcd/extui/example/example.cpp @@ -21,7 +21,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(EXTUI_EXAMPLE, EXTENSIBLE_UI) +#if ALL(EXTUI_EXAMPLE, EXTENSIBLE_UI) #include "../ui_api.h" diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/leveling_menu.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/leveling_menu.cpp index be18c0348388..fa31ce155332 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/leveling_menu.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/leveling_menu.cpp @@ -25,7 +25,7 @@ #if ENABLED(COCOA_LEVELING_MENU) -#if BOTH(HAS_BED_PROBE, BLTOUCH) +#if ALL(HAS_BED_PROBE, BLTOUCH) #include "../../../../feature/bltouch.h" #endif diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/main_menu.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/main_menu.cpp index ee299a7f64d6..2f231278f2d8 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/main_menu.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/main_menu.cpp @@ -57,7 +57,7 @@ void MainMenu::onRedraw(draw_mode_t what) { .font(Theme::font_medium) .tag( 2).button(MOVE_XYZ_POS, GET_TEXT_F(MSG_XYZ_MOVE)) .tag( 3).button(TEMPERATURE_POS, GET_TEXT_F(MSG_TEMPERATURE)) - .enabled(BOTH(HAS_LEVELING, HAS_BED_PROBE)) + .enabled(ALL(HAS_LEVELING, HAS_BED_PROBE)) .tag( 4).button(ZPROBE_ZOFFSET_POS, GET_TEXT_F(MSG_ZPROBE_ZOFFSET)) .tag( 5).button(MOVE_E_POS, GET_TEXT_F(MSG_E_MOVE)) .tag( 6).button(SPEED_POS, GET_TEXT_F(MSG_PRINT_SPEED)) @@ -79,7 +79,7 @@ bool MainMenu::onTouchEnd(uint8_t tag) { case 1: SaveSettingsDialogBox::promptToSaveSettings(); break; case 2: GOTO_SCREEN(MoveXYZScreen); break; case 3: GOTO_SCREEN(TemperatureScreen); break; - #if BOTH(HAS_LEVELING, HAS_BED_PROBE) + #if ALL(HAS_LEVELING, HAS_BED_PROBE) case 4: GOTO_SCREEN(ZOffsetScreen); break; #endif case 5: GOTO_SCREEN(MoveEScreen); break; diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/basic/commands.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/basic/commands.cpp index 662753a1547c..a796c8edcf5f 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/basic/commands.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/basic/commands.cpp @@ -1208,7 +1208,7 @@ void CLCD::default_display_orientation() { + ENABLED(TOUCH_UI_INVERTED) * 1 ); cmd.execute(); - #elif EITHER(TOUCH_UI_PORTRAIT, TOUCH_UI_MIRRORED) + #elif ANY(TOUCH_UI_PORTRAIT, TOUCH_UI_MIRRORED) #error "PORTRAIT or MIRRORED orientation not supported on the FT800." #elif ENABLED(TOUCH_UI_INVERTED) mem_write_32(REG::ROTATE, 1); diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/compat.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/compat.h index 6b2dc9eb4498..a9f77a518ba0 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/compat.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/compat.h @@ -305,14 +305,11 @@ #define __TERN(T,V...) ___TERN(_CAT(_NO,T),V) // Prepend '_NO' to get '_NOT_0' or '_NOT_1' #define ___TERN(P,V...) THIRD(P,V) // If first argument has a comma, A. Else B. - #define IF_ENABLED TERN_ #define IF_DISABLED(O,A) _TERN(_ENA_1(O),,A) #define ANY(V...) !DISABLED(V) - #define NONE(V...) DISABLED(V) - #define ALL(V...) ENABLED(V) - #define BOTH(V1,V2) ALL(V1,V2) - #define EITHER(V1,V2) ANY(V1,V2) + #define NONE DISABLED + #define ALL ENABLED // Remove compiler warning on an unused variable #ifndef UNUSED diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/font_size_t.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/font_size_t.cpp index 0e251f7bb1c7..b229154e82a4 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/font_size_t.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/font_size_t.cpp @@ -21,7 +21,7 @@ #include "../ftdi_extended.h" -#if BOTH(FTDI_EXTENDED, TOUCH_UI_USE_UTF8) +#if ALL(FTDI_EXTENDED, TOUCH_UI_USE_UTF8) namespace FTDI { // Returns the height of a standard FTDI romfont diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/standard_char_set.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/standard_char_set.cpp index d12bf9711907..5171ee508aff 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/standard_char_set.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/standard_char_set.cpp @@ -21,7 +21,7 @@ #include "../ftdi_extended.h" -#if BOTH(FTDI_EXTENDED, TOUCH_UI_USE_UTF8) +#if ALL(FTDI_EXTENDED, TOUCH_UI_USE_UTF8) constexpr static uint8_t std_font = 31; diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/unicode.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/unicode.cpp index 6f189155f5de..d7f4d31bdc12 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/unicode.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/unicode.cpp @@ -21,7 +21,7 @@ #include "../ftdi_extended.h" -#if BOTH(FTDI_EXTENDED, TOUCH_UI_USE_UTF8) +#if ALL(FTDI_EXTENDED, TOUCH_UI_USE_UTF8) using namespace FTDI; diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/about_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/about_screen.cpp index 43e5c333651a..698f0d47b794 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/about_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/about_screen.cpp @@ -76,7 +76,7 @@ void AboutScreen::onRedraw(draw_mode_t) { #endif , OPT_CENTER, font_xlarge ); - #if BOTH(TOUCH_UI_DEVELOPER_MENU, FTDI_DEVELOPER_MENU) + #if ALL(TOUCH_UI_DEVELOPER_MENU, FTDI_DEVELOPER_MENU) cmd.tag(3); #endif draw_text_box(cmd, FW_VERS_POS, @@ -91,7 +91,7 @@ void AboutScreen::onRedraw(draw_mode_t) { draw_text_box(cmd, LICENSE_POS, GET_TEXT_F(MSG_LICENSE), OPT_CENTER, font_tiny); cmd.font(font_medium); - #if BOTH(PRINTCOUNTER, FTDI_STATISTICS_SCREEN) + #if ALL(PRINTCOUNTER, FTDI_STATISTICS_SCREEN) cmd.colors(normal_btn) .tag(2).button(STATS_POS, GET_TEXT_F(MSG_INFO_STATS_MENU)); #endif @@ -102,10 +102,10 @@ void AboutScreen::onRedraw(draw_mode_t) { bool AboutScreen::onTouchEnd(uint8_t tag) { switch (tag) { case 1: GOTO_PREVIOUS(); break; - #if BOTH(PRINTCOUNTER, FTDI_STATISTICS_SCREEN) + #if ALL(PRINTCOUNTER, FTDI_STATISTICS_SCREEN) case 2: GOTO_SCREEN(StatisticsScreen); break; #endif - #if BOTH(TOUCH_UI_DEVELOPER_MENU, FTDI_DEVELOPER_MENU) + #if ALL(TOUCH_UI_DEVELOPER_MENU, FTDI_DEVELOPER_MENU) case 3: GOTO_SCREEN(DeveloperMenu); break; #endif default: return false; diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/advanced_settings_menu.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/advanced_settings_menu.cpp index 8753b44e709b..4745ff99dc55 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/advanced_settings_menu.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/advanced_settings_menu.cpp @@ -37,7 +37,7 @@ void AdvancedSettingsMenu::onRedraw(draw_mode_t what) { } #if ENABLED(TOUCH_UI_PORTRAIT) - #if EITHER(HAS_MULTI_HOTEND, SENSORLESS_HOMING) + #if ANY(HAS_MULTI_HOTEND, SENSORLESS_HOMING) #define GRID_ROWS 9 #else #define GRID_ROWS 8 @@ -58,7 +58,7 @@ void AdvancedSettingsMenu::onRedraw(draw_mode_t what) { #define BACKLASH_POS BTN_POS(2,7), BTN_SIZE(1,1) #define OFFSETS_POS BTN_POS(1,8), BTN_SIZE(1,1) #define TMC_HOMING_THRS_POS BTN_POS(2,8), BTN_SIZE(1,1) - #if EITHER(HAS_MULTI_HOTEND, SENSORLESS_HOMING) + #if ANY(HAS_MULTI_HOTEND, SENSORLESS_HOMING) #define BACK_POS BTN_POS(1,9), BTN_SIZE(2,1) #else #define BACK_POS BTN_POS(1,8), BTN_SIZE(2,1) @@ -99,7 +99,7 @@ void AdvancedSettingsMenu::onRedraw(draw_mode_t what) { .tag(14).button(TMC_HOMING_THRS_POS, GET_TEXT_F(MSG_TMC_HOMING_THRS)) .enabled(ENABLED(HAS_MULTI_HOTEND)) .tag(4) .button(OFFSETS_POS, GET_TEXT_F(MSG_OFFSETS_MENU)) - .enabled(EITHER(LIN_ADVANCE, FILAMENT_RUNOUT_SENSOR)) + .enabled(ANY(LIN_ADVANCE, FILAMENT_RUNOUT_SENSOR)) .tag(11).button(FILAMENT_POS, GET_TEXT_F(MSG_FILAMENT)) .tag(12).button(ENDSTOPS_POS, GET_TEXT_F(MSG_LCD_ENDSTOPS)) .tag(15).button(DISPLAY_POS, GET_TEXT_F(MSG_DISPLAY_MENU)) @@ -133,7 +133,7 @@ bool AdvancedSettingsMenu::onTouchEnd(uint8_t tag) { #endif case 9: GOTO_SCREEN(InterfaceSettingsScreen); LockScreen::check_passcode(); break; case 10: GOTO_SCREEN(RestoreFailsafeDialogBox); LockScreen::check_passcode(); break; - #if EITHER(LIN_ADVANCE, FILAMENT_RUNOUT_SENSOR) + #if ANY(LIN_ADVANCE, FILAMENT_RUNOUT_SENSOR) case 11: GOTO_SCREEN(FilamentMenu); break; #endif case 12: GOTO_SCREEN(EndstopStatesScreen); break; diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp index eae83d070d48..1d81649444e2 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp @@ -89,7 +89,7 @@ void EndstopStatesScreen::onRedraw(draw_mode_t) { #else PIN_DISABLED(1, 4, GET_TEXT_F(MSG_RUNOUT_1), FIL_RUNOUT) #endif - #if BOTH(HAS_MULTI_EXTRUDER, FILAMENT_RUNOUT_SENSOR) && PIN_EXISTS(FIL_RUNOUT2) + #if ALL(HAS_MULTI_EXTRUDER, FILAMENT_RUNOUT_SENSOR) && PIN_EXISTS(FIL_RUNOUT2) PIN_ENABLED (3, 4, GET_TEXT_F(MSG_RUNOUT_2), FIL_RUNOUT2, FIL_RUNOUT2_STATE) #else PIN_DISABLED(3, 4, GET_TEXT_F(MSG_RUNOUT_2), FIL_RUNOUT2) diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/leveling_menu.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/leveling_menu.cpp index 2fb9d18498c0..47540b0f5519 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/leveling_menu.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/leveling_menu.cpp @@ -25,7 +25,7 @@ #ifdef FTDI_LEVELING_MENU -#if BOTH(HAS_BED_PROBE,BLTOUCH) +#if ALL(HAS_BED_PROBE,BLTOUCH) #include "../../../../feature/bltouch.h" #endif @@ -81,7 +81,7 @@ void LevelingMenu::onRedraw(draw_mode_t what) { .text(BLTOUCH_TITLE_POS, GET_TEXT_F(MSG_BLTOUCH)) #endif .font(font_medium).colors(normal_btn) - .enabled(EITHER(Z_STEPPER_AUTO_ALIGN,MECHANICAL_GANTRY_CALIBRATION)) + .enabled(ANY(Z_STEPPER_AUTO_ALIGN,MECHANICAL_GANTRY_CALIBRATION)) .tag(2).button(LEVEL_AXIS_POS, GET_TEXT_F(MSG_LEVEL_X_AXIS)) .enabled(ENABLED(HAS_BED_PROBE)) .tag(3).button(PROBE_BED_POS, GET_TEXT_F(MSG_PROBE_BED)) @@ -103,7 +103,7 @@ void LevelingMenu::onRedraw(draw_mode_t what) { bool LevelingMenu::onTouchEnd(uint8_t tag) { switch (tag) { case 1: GOTO_PREVIOUS(); break; - #if EITHER(Z_STEPPER_AUTO_ALIGN,MECHANICAL_GANTRY_CALIBRATION) + #if ANY(Z_STEPPER_AUTO_ALIGN,MECHANICAL_GANTRY_CALIBRATION) case 2: SpinnerDialogBox::enqueueAndWait(F("G34")); break; #endif #if HAS_BED_PROBE diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/screens.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/screens.h index e2df29cb833d..c200931eec51 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/screens.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/screens.h @@ -74,7 +74,7 @@ enum { #if ENABLED(CASE_LIGHT_ENABLE) CASE_LIGHT_SCREEN_CACHE, #endif - #if EITHER(LIN_ADVANCE, FILAMENT_RUNOUT_SENSOR) + #if ANY(LIN_ADVANCE, FILAMENT_RUNOUT_SENSOR) FILAMENT_MENU_CACHE, #endif #if ENABLED(LIN_ADVANCE) @@ -192,7 +192,7 @@ enum { #include "case_light_screen.h" #endif -#if EITHER(LIN_ADVANCE, FILAMENT_RUNOUT_SENSOR) +#if ANY(LIN_ADVANCE, FILAMENT_RUNOUT_SENSOR) #include "filament_menu.h" #endif diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/tune_menu.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/tune_menu.cpp index 0370c4417478..259f6d5b89ef 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/tune_menu.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/tune_menu.cpp @@ -74,11 +74,11 @@ void TuneMenu::onRedraw(draw_mode_t what) { .tag(2).button(TEMPERATURE_POS, GET_TEXT_F(MSG_TEMPERATURE)) .enabled(!sdOrHostPrinting || sdOrHostPaused) .tag(3).button(FIL_CHANGE_POS, GET_TEXT_F(MSG_FILAMENTCHANGE)) - .enabled(EITHER(LIN_ADVANCE, FILAMENT_RUNOUT_SENSOR)) + .enabled(ANY(LIN_ADVANCE, FILAMENT_RUNOUT_SENSOR)) .tag(9).button(FILAMENT_POS, GET_TEXT_F(MSG_FILAMENT)) #if ENABLED(BABYSTEPPING) && HAS_MULTI_HOTEND .tag(4).button(NUDGE_NOZ_POS, GET_TEXT_F(MSG_NUDGE_NOZZLE)) - #elif BOTH(HAS_LEVELING, HAS_BED_PROBE) + #elif ALL(HAS_LEVELING, HAS_BED_PROBE) .tag(4).button(NUDGE_NOZ_POS, GET_TEXT_F(MSG_ZPROBE_ZOFFSET)) #endif .tag(5).button(SPEED_POS, GET_TEXT_F(MSG_PRINT_SPEED)) @@ -105,7 +105,7 @@ bool TuneMenu::onTouchEnd(uint8_t tag) { case 4: #if ENABLED(BABYSTEPPING) && HAS_MULTI_HOTEND GOTO_SCREEN(NudgeNozzleScreen); - #elif BOTH(HAS_LEVELING, HAS_BED_PROBE) + #elif ALL(HAS_LEVELING, HAS_BED_PROBE) GOTO_SCREEN(ZOffsetScreen); #endif break; @@ -117,7 +117,7 @@ bool TuneMenu::onTouchEnd(uint8_t tag) { current_screen.forget(); PUSH_SCREEN(StatusScreen); break; - #if EITHER(LIN_ADVANCE, FILAMENT_RUNOUT_SENSOR) + #if ANY(LIN_ADVANCE, FILAMENT_RUNOUT_SENSOR) case 9: GOTO_SCREEN(FilamentMenu); break; #endif #if ENABLED(CASE_LIGHT_ENABLE) diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/theme/colors.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/theme/colors.h index 70c2be4ec23f..0e145e39f208 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/theme/colors.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/theme/colors.h @@ -37,7 +37,7 @@ namespace Theme { #else // Use linear accent colors - #if EITHER(TOUCH_UI_ROYAL_THEME, TOUCH_UI_FROZEN_THEME) + #if ANY(TOUCH_UI_ROYAL_THEME, TOUCH_UI_FROZEN_THEME) // Dark blue accent colors constexpr int accent_hue = 216; constexpr float accent_sat = 0.7; @@ -88,7 +88,7 @@ namespace Theme { constexpr uint32_t bed_mesh_lines_rgb = 0xFFFFFF; constexpr uint32_t bed_mesh_shadow_rgb = 0x444444; - #elif EITHER(TOUCH_UI_COCOA_THEME, TOUCH_UI_FROZEN_THEME) + #elif ANY(TOUCH_UI_COCOA_THEME, TOUCH_UI_FROZEN_THEME) constexpr uint32_t theme_darkest = accent_color_1; constexpr uint32_t theme_dark = accent_color_4; diff --git a/Marlin/src/lcd/extui/mks_ui/draw_auto_level_offset_settings.cpp b/Marlin/src/lcd/extui/mks_ui/draw_auto_level_offset_settings.cpp index fd14585e7028..5a5d457b080b 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_auto_level_offset_settings.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_auto_level_offset_settings.cpp @@ -22,7 +22,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(HAS_TFT_LVGL_UI, HAS_BED_PROBE) +#if ALL(HAS_TFT_LVGL_UI, HAS_BED_PROBE) #include "draw_ui.h" #include diff --git a/Marlin/src/lcd/extui/mks_ui/draw_cloud_bind.cpp b/Marlin/src/lcd/extui/mks_ui/draw_cloud_bind.cpp index 1dae0ebe2251..0798db1cc9f4 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_cloud_bind.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_cloud_bind.cpp @@ -22,7 +22,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(HAS_TFT_LVGL_UI, MKS_WIFI_MODULE) +#if ALL(HAS_TFT_LVGL_UI, MKS_WIFI_MODULE) #include "lv_conf.h" #include "draw_ui.h" diff --git a/Marlin/src/lcd/extui/mks_ui/draw_jerk_settings.cpp b/Marlin/src/lcd/extui/mks_ui/draw_jerk_settings.cpp index a070cae15f4e..5b22103e8f2d 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_jerk_settings.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_jerk_settings.cpp @@ -22,7 +22,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(HAS_TFT_LVGL_UI, HAS_CLASSIC_JERK) +#if ALL(HAS_TFT_LVGL_UI, HAS_CLASSIC_JERK) #include "draw_ui.h" #include diff --git a/Marlin/src/lcd/extui/mks_ui/draw_media_select.cpp b/Marlin/src/lcd/extui/mks_ui/draw_media_select.cpp index 81c82dc02dfa..085a008acde9 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_media_select.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_media_select.cpp @@ -21,7 +21,7 @@ */ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(HAS_TFT_LVGL_UI, MULTI_VOLUME) +#if ALL(HAS_TFT_LVGL_UI, MULTI_VOLUME) #include "draw_ui.h" #include diff --git a/Marlin/src/lcd/extui/mks_ui/draw_pause_message.cpp b/Marlin/src/lcd/extui/mks_ui/draw_pause_message.cpp index e5f6a5963a6b..b753a578012b 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_pause_message.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_pause_message.cpp @@ -22,7 +22,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(HAS_TFT_LVGL_UI, ADVANCED_PAUSE_FEATURE) +#if ALL(HAS_TFT_LVGL_UI, ADVANCED_PAUSE_FEATURE) #include "draw_ui.h" #include diff --git a/Marlin/src/lcd/extui/mks_ui/draw_tmc_current_settings.cpp b/Marlin/src/lcd/extui/mks_ui/draw_tmc_current_settings.cpp index 9ec8f1501a0b..b243c88705a3 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_tmc_current_settings.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_tmc_current_settings.cpp @@ -22,7 +22,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(HAS_TFT_LVGL_UI, HAS_TRINAMIC_CONFIG) +#if ALL(HAS_TFT_LVGL_UI, HAS_TRINAMIC_CONFIG) #include "draw_ui.h" #include diff --git a/Marlin/src/lcd/extui/mks_ui/draw_tmc_step_mode_settings.cpp b/Marlin/src/lcd/extui/mks_ui/draw_tmc_step_mode_settings.cpp index 990cdda7e63b..d09c823b5979 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_tmc_step_mode_settings.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_tmc_step_mode_settings.cpp @@ -22,7 +22,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(HAS_TFT_LVGL_UI, HAS_STEALTHCHOP) +#if ALL(HAS_TFT_LVGL_UI, HAS_STEALTHCHOP) #include "draw_ui.h" #include diff --git a/Marlin/src/lcd/extui/mks_ui/draw_touch_calibration.cpp b/Marlin/src/lcd/extui/mks_ui/draw_touch_calibration.cpp index a9a25db11822..74902a30ddc8 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_touch_calibration.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_touch_calibration.cpp @@ -22,7 +22,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(HAS_TFT_LVGL_UI, TOUCH_SCREEN_CALIBRATION) +#if ALL(HAS_TFT_LVGL_UI, TOUCH_SCREEN_CALIBRATION) #include "draw_ui.h" #include "draw_touch_calibration.h" diff --git a/Marlin/src/lcd/extui/mks_ui/draw_ui.cpp b/Marlin/src/lcd/extui/mks_ui/draw_ui.cpp index 102109a1363e..708ad77fca8c 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_ui.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_ui.cpp @@ -1377,7 +1377,7 @@ void LV_TASK_HANDLER() { if (TERN1(USE_SPI_DMA_TC, !get_lcd_dma_lock())) lv_task_handler(); - #if BOTH(MKS_TEST, HAS_MEDIA) + #if ALL(MKS_TEST, HAS_MEDIA) if (mks_test_flag == 0x1E) mks_hardware_test(); #endif diff --git a/Marlin/src/lcd/extui/mks_ui/draw_z_offset_wizard.cpp b/Marlin/src/lcd/extui/mks_ui/draw_z_offset_wizard.cpp index 69e547a68ccb..9d16c9dff261 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_z_offset_wizard.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_z_offset_wizard.cpp @@ -22,7 +22,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(HAS_TFT_LVGL_UI, PROBE_OFFSET_WIZARD) +#if ALL(HAS_TFT_LVGL_UI, PROBE_OFFSET_WIZARD) #include "draw_ui.h" #include diff --git a/Marlin/src/lcd/extui/mks_ui/irq_overrid.cpp b/Marlin/src/lcd/extui/mks_ui/irq_overrid.cpp index aca1db0039ba..b2615ac24b24 100644 --- a/Marlin/src/lcd/extui/mks_ui/irq_overrid.cpp +++ b/Marlin/src/lcd/extui/mks_ui/irq_overrid.cpp @@ -23,7 +23,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(HAS_TFT_LVGL_UI, MKS_WIFI_MODULE) +#if ALL(HAS_TFT_LVGL_UI, MKS_WIFI_MODULE) #include "tft_lvgl_configuration.h" diff --git a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp index 657629049673..53f31b1c4042 100644 --- a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp +++ b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp @@ -681,7 +681,7 @@ void disp_assets_update_progress(FSTR_P const fmsg) { #endif } -#if BOTH(MKS_TEST, HAS_MEDIA) +#if ALL(MKS_TEST, HAS_MEDIA) uint8_t mks_test_flag = 0; const char *MKSTestPath = "MKS_TEST"; void mks_test_get() { diff --git a/Marlin/src/lcd/extui/mks_ui/mks_hardware.h b/Marlin/src/lcd/extui/mks_ui/mks_hardware.h index 6a2574e3b0ce..f73f4e645910 100644 --- a/Marlin/src/lcd/extui/mks_ui/mks_hardware.h +++ b/Marlin/src/lcd/extui/mks_ui/mks_hardware.h @@ -26,7 +26,7 @@ #include // Functions for MKS_TEST -#if BOTH(MKS_TEST, HAS_MEDIA) +#if ALL(MKS_TEST, HAS_MEDIA) void mks_hardware_test(); void mks_test_get(); void mks_gpio_test(); diff --git a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp index 71f4166ca89e..5dfb02bfaca4 100644 --- a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp +++ b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp @@ -51,7 +51,7 @@ XPT2046 touch; #include "../../../module/servo.h" #endif -#if EITHER(PROBE_TARE, HAS_Z_SERVO_PROBE) +#if ANY(PROBE_TARE, HAS_Z_SERVO_PROBE) #include "../../../module/probe.h" #endif @@ -249,7 +249,7 @@ void tft_lvgl_init() { if (ready) lv_draw_ready_print(); - #if BOTH(MKS_TEST, HAS_MEDIA) + #if ALL(MKS_TEST, HAS_MEDIA) if (mks_test_flag == 0x1E) mks_gpio_test(); #endif } diff --git a/Marlin/src/lcd/extui/mks_ui/wifiSerial_STM32.cpp b/Marlin/src/lcd/extui/mks_ui/wifiSerial_STM32.cpp index 9d7f5e20325f..cb5b7f0b68c8 100644 --- a/Marlin/src/lcd/extui/mks_ui/wifiSerial_STM32.cpp +++ b/Marlin/src/lcd/extui/mks_ui/wifiSerial_STM32.cpp @@ -25,7 +25,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(HAS_TFT_LVGL_UI, MKS_WIFI_MODULE) +#if ALL(HAS_TFT_LVGL_UI, MKS_WIFI_MODULE) #include "tft_lvgl_configuration.h" diff --git a/Marlin/src/lcd/extui/mks_ui/wifiSerial_STM32F1.cpp b/Marlin/src/lcd/extui/mks_ui/wifiSerial_STM32F1.cpp index 654fca6cb334..92fd139dfa5d 100644 --- a/Marlin/src/lcd/extui/mks_ui/wifiSerial_STM32F1.cpp +++ b/Marlin/src/lcd/extui/mks_ui/wifiSerial_STM32F1.cpp @@ -23,7 +23,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(HAS_TFT_LVGL_UI, MKS_WIFI_MODULE) +#if ALL(HAS_TFT_LVGL_UI, MKS_WIFI_MODULE) #include "tft_lvgl_configuration.h" diff --git a/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp b/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp index bf399f70aad4..f3967a3ec38a 100644 --- a/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp +++ b/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp @@ -22,7 +22,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(HAS_TFT_LVGL_UI, MKS_WIFI_MODULE) +#if ALL(HAS_TFT_LVGL_UI, MKS_WIFI_MODULE) #include "draw_ui.h" #include "wifi_module.h" diff --git a/Marlin/src/lcd/extui/mks_ui/wifi_upload.cpp b/Marlin/src/lcd/extui/mks_ui/wifi_upload.cpp index eaf41526e5d2..2d4d19e7a23e 100644 --- a/Marlin/src/lcd/extui/mks_ui/wifi_upload.cpp +++ b/Marlin/src/lcd/extui/mks_ui/wifi_upload.cpp @@ -22,7 +22,7 @@ #include "../../../inc/MarlinConfigPre.h" -#if BOTH(HAS_TFT_LVGL_UI, MKS_WIFI_MODULE) +#if ALL(HAS_TFT_LVGL_UI, MKS_WIFI_MODULE) #include "draw_ui.h" #include "wifi_module.h" diff --git a/Marlin/src/lcd/extui/nextion/nextion_tft.cpp b/Marlin/src/lcd/extui/nextion/nextion_tft.cpp index 15c384808f89..e5e3a74be2c5 100644 --- a/Marlin/src/lcd/extui/nextion/nextion_tft.cpp +++ b/Marlin/src/lcd/extui/nextion/nextion_tft.cpp @@ -294,7 +294,7 @@ void NextionTFT::panelInfo(uint8_t req) { break; case 26: // TMC Hybrid Threshold Speed - #if 0 && BOTH(HAS_TRINAMIC_CONFIG, HYBRID_THRESHOLD) + #if 0 && ALL(HAS_TRINAMIC_CONFIG, HYBRID_THRESHOLD) #define SEND_TRINAMIC_THRS(A, B) SEND_VALasTXT(A, getAxisPWMthrs(B)) #else #define SEND_TRINAMIC_THRS(A, B) SEND_NA(A) @@ -463,7 +463,7 @@ void NextionTFT::panelInfo(uint8_t req) { #else #define SEND_PID_INFO_0(A, B) SEND_NA(A) #endif - #if BOTH(PIDTEMP, HAS_MULTI_EXTRUDER) + #if ALL(PIDTEMP, HAS_MULTI_EXTRUDER) #define SEND_PID_INFO_1(A, B) SEND_VALasTXT(A, getPID_K##B(E1)) #else #define SEND_PID_INFO_1(A, B) SEND_NA(A) diff --git a/Marlin/src/lcd/extui/ui_api.cpp b/Marlin/src/lcd/extui/ui_api.cpp index 1d917df7cd62..7f216107289a 100644 --- a/Marlin/src/lcd/extui/ui_api.cpp +++ b/Marlin/src/lcd/extui/ui_api.cpp @@ -933,7 +933,7 @@ namespace ExtUI { } void moveToMeshPoint(const xy_uint8_t &pos, const_float_t z) { - #if EITHER(MESH_BED_LEVELING, AUTO_BED_LEVELING_UBL) + #if ANY(MESH_BED_LEVELING, AUTO_BED_LEVELING_UBL) REMEMBER(fr, feedrate_mm_s); const float x_target = MESH_MIN_X + pos.x * (MESH_X_DIST), y_target = MESH_MIN_Y + pos.y * (MESH_Y_DIST); diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index 1c4bbe5fa93b..a812dff556a7 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -24,7 +24,7 @@ #include "../MarlinCore.h" // for printingIsPaused -#if LED_POWEROFF_TIMEOUT > 0 || BOTH(HAS_WIRED_LCD, PRINTER_EVENT_LEDS) || (defined(LCD_BACKLIGHT_TIMEOUT_MINS) && defined(NEOPIXEL_BKGD_INDEX_FIRST)) +#if LED_POWEROFF_TIMEOUT > 0 || ALL(HAS_WIRED_LCD, PRINTER_EVENT_LEDS) || (defined(LCD_BACKLIGHT_TIMEOUT_MINS) && defined(NEOPIXEL_BKGD_INDEX_FIRST)) #include "../feature/leds/leds.h" #endif @@ -32,7 +32,7 @@ #include "../feature/host_actions.h" #endif -#if BOTH(BROWSE_MEDIA_ON_INSERT, PASSWORD_ON_SD_PRINT_MENU) +#if ALL(BROWSE_MEDIA_ON_INSERT, PASSWORD_ON_SD_PRINT_MENU) #include "../feature/password/password.h" #endif @@ -68,7 +68,7 @@ MarlinUI ui; constexpr uint8_t epps = ENCODER_PULSES_PER_STEP; #if HAS_STATUS_MESSAGE - #if ENABLED(STATUS_MESSAGE_SCROLLING) && EITHER(HAS_WIRED_LCD, DWIN_LCD_PROUI) + #if ENABLED(STATUS_MESSAGE_SCROLLING) && ANY(HAS_WIRED_LCD, DWIN_LCD_PROUI) uint8_t MarlinUI::status_scroll_offset; // = 0 #endif char MarlinUI::status_message[MAX_MESSAGE_LENGTH + 1]; @@ -154,7 +154,7 @@ constexpr uint8_t epps = ENCODER_PULSES_PER_STEP; } #endif -#if EITHER(HAS_MARLINUI_MENU, EXTENSIBLE_UI) +#if ANY(HAS_MARLINUI_MENU, EXTENSIBLE_UI) bool MarlinUI::lcd_clicked; #endif @@ -270,7 +270,7 @@ void MarlinUI::init() { #endif // HAS_SHIFT_ENCODER - #if BOTH(HAS_ENCODER_ACTION, HAS_SLOW_BUTTONS) + #if ALL(HAS_ENCODER_ACTION, HAS_SLOW_BUTTONS) slow_buttons = 0; #endif @@ -339,7 +339,7 @@ void MarlinUI::init() { uint8_t MarlinUI::lcd_status_update_delay = 1; // First update one loop delayed - #if BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) + #if ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) millis_t MarlinUI::next_filament_display; // = 0 #endif @@ -402,7 +402,7 @@ void MarlinUI::init() { } #endif - #if EITHER(REVERSE_MENU_DIRECTION, REVERSE_SELECT_DIRECTION) + #if ANY(REVERSE_MENU_DIRECTION, REVERSE_SELECT_DIRECTION) int8_t MarlinUI::encoderDirection = ENCODERBASE; #endif @@ -411,7 +411,7 @@ void MarlinUI::init() { uint8_t MarlinUI::repeat_delay; #endif - #if EITHER(AUTO_BED_LEVELING_UBL, G26_MESH_VALIDATION) + #if ANY(AUTO_BED_LEVELING_UBL, G26_MESH_VALIDATION) bool MarlinUI::external_control; // = false @@ -574,7 +574,7 @@ void MarlinUI::init() { #endif if (homed) { - #if EITHER(DELTA, Z_HOME_TO_MAX) + #if ANY(DELTA, Z_HOME_TO_MAX) if (RRK(EN_KEYPAD_F2)) _reprapworld_keypad_move(Z_AXIS, 1); #endif if (RRK(EN_KEYPAD_F3)) _reprapworld_keypad_move(Z_AXIS, -1); @@ -670,7 +670,7 @@ void MarlinUI::init() { #if HAS_MARLINUI_MENU if (use_click()) { - #if BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) + #if ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) pause_filament_display(); #endif goto_screen(menu_main); @@ -702,7 +702,7 @@ void MarlinUI::init() { if (old_frm != new_frm) { feedrate_percentage = new_frm; encoderPosition = 0; - #if BOTH(HAS_SOUND, BEEP_ON_FEEDRATE_CHANGE) + #if ALL(HAS_SOUND, BEEP_ON_FEEDRATE_CHANGE) static millis_t next_beep; #ifndef GOT_MS const millis_t ms = millis(); @@ -1046,7 +1046,7 @@ void MarlinUI::init() { if (encoderPastThreshold || lcd_clicked) { if (encoderPastThreshold && TERN1(IS_TFTGLCD_PANEL, !external_control)) { - #if BOTH(HAS_MARLINUI_MENU, ENCODER_RATE_MULTIPLIER) + #if ALL(HAS_MARLINUI_MENU, ENCODER_RATE_MULTIPLIER) int32_t encoderMultiplier = 1; @@ -1112,7 +1112,7 @@ void MarlinUI::init() { refresh(LCDVIEW_REDRAW_NOW); } - #if BOTH(HAS_MARLINUI_MENU, SCROLL_LONG_FILENAMES) + #if ALL(HAS_MARLINUI_MENU, SCROLL_LONG_FILENAMES) // If scrolling of long file names is enabled and we are in the sd card menu, // cause a refresh to occur until all the text has scrolled into view. if (currentScreen == menu_media && !lcd_status_update_delay--) { @@ -1353,7 +1353,7 @@ void MarlinUI::init() { #endif // UP || DOWN || LEFT || RIGHT buttons = (newbutton | TERN0(HAS_SLOW_BUTTONS, slow_buttons) - #if BOTH(HAS_TOUCH_BUTTONS, HAS_ENCODER_ACTION) + #if ALL(HAS_TOUCH_BUTTONS, HAS_ENCODER_ACTION) | (touch_buttons & TERN(HAS_ENCODER_WHEEL, ~(EN_A | EN_B), 0xFF)) #endif ); @@ -1413,7 +1413,7 @@ void MarlinUI::init() { case 3: ENCODER_SPIN(2, 1); break; case 1: ENCODER_SPIN(3, 0); break; } - #if BOTH(HAS_MARLINUI_MENU, AUTO_BED_LEVELING_UBL) + #if ALL(HAS_MARLINUI_MENU, AUTO_BED_LEVELING_UBL) external_encoder(); #endif lastEncoderBits = enc; @@ -1587,7 +1587,7 @@ void MarlinUI::init() { #if HAS_WIRED_LCD - #if BASIC_PROGRESS_BAR || BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) + #if BASIC_PROGRESS_BAR || ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) const millis_t ms = millis(); #endif @@ -1598,13 +1598,13 @@ void MarlinUI::init() { #endif #endif - #if BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) + #if ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) pause_filament_display(ms); // Show status message for 5s #endif #endif - #if ENABLED(STATUS_MESSAGE_SCROLLING) && EITHER(HAS_WIRED_LCD, DWIN_LCD_PROUI) + #if ENABLED(STATUS_MESSAGE_SCROLLING) && ANY(HAS_WIRED_LCD, DWIN_LCD_PROUI) status_scroll_offset = 0; #endif @@ -1670,7 +1670,7 @@ void MarlinUI::init() { TERN_(DWIN_LCD_PROUI, HMI_flag.abort_flag = true); } - #if BOTH(HAS_MARLINUI_MENU, PSU_CONTROL) + #if ALL(HAS_MARLINUI_MENU, PSU_CONTROL) void MarlinUI::poweroff() { queue.inject(F("M81" TERN_(POWER_OFF_WAIT_FOR_COOLDOWN, "S"))); @@ -1848,7 +1848,7 @@ void MarlinUI::init() { #endif } - #if EITHER(BABYSTEP_GFX_OVERLAY, MESH_EDIT_GFX_OVERLAY) + #if ANY(BABYSTEP_GFX_OVERLAY, MESH_EDIT_GFX_OVERLAY) void MarlinUI::zoffset_overlay(const_float_t zvalue) { // Determine whether the user is raising or lowering the nozzle. static int8_t dir; @@ -1863,7 +1863,7 @@ void MarlinUI::init() { #endif -#if BOTH(EXTENSIBLE_UI, ADVANCED_PAUSE_FEATURE) +#if ALL(EXTENSIBLE_UI, ADVANCED_PAUSE_FEATURE) void MarlinUI::pause_show_message( const PauseMessage message, diff --git a/Marlin/src/lcd/marlinui.h b/Marlin/src/lcd/marlinui.h index ccdbd6432280..7819afe97869 100644 --- a/Marlin/src/lcd/marlinui.h +++ b/Marlin/src/lcd/marlinui.h @@ -88,7 +88,7 @@ typedef bool (*statusResetFunc_t)(); #endif // HAS_WIRED_LCD -#if EITHER(HAS_WIRED_LCD, DWIN_CREALITY_LCD_JYERSUI) +#if ANY(HAS_WIRED_LCD, DWIN_CREALITY_LCD_JYERSUI) #define LCD_WITH_BLINK 1 #define LCD_UPDATE_INTERVAL TERN(HAS_TOUCH_BUTTONS, 50, 100) #endif @@ -246,7 +246,7 @@ class MarlinUI { // LCD implementations static void clear_lcd(); - #if BOTH(HAS_MARLINUI_MENU, TOUCH_SCREEN_CALIBRATION) + #if ALL(HAS_MARLINUI_MENU, TOUCH_SCREEN_CALIBRATION) static void check_touch_calibration() { if (touch_calibration.need_calibration()) currentScreen = touch_calibration_screen; } @@ -313,7 +313,7 @@ class MarlinUI { static void set_progress_done() { progress_override = (PROGRESS_MASK + 1U) + 100U * (PROGRESS_SCALE); } static void progress_reset() { if (progress_override & (PROGRESS_MASK + 1U)) set_progress(0); } #endif - #if EITHER(SHOW_REMAINING_TIME, SET_PROGRESS_MANUALLY) + #if ANY(SHOW_REMAINING_TIME, SET_PROGRESS_MANUALLY) static uint32_t _calculated_remaining_time() { const duration_t elapsed = print_job_timer.duration(); const progress_t progress = _get_progress(); @@ -361,7 +361,7 @@ class MarlinUI { #if HAS_STATUS_MESSAGE - #if EITHER(HAS_WIRED_LCD, DWIN_LCD_PROUI) + #if ANY(HAS_WIRED_LCD, DWIN_LCD_PROUI) #if ENABLED(STATUS_MESSAGE_SCROLLING) #define MAX_MESSAGE_LENGTH _MAX(LONG_FILENAME_LENGTH, MAX_LANG_CHARSIZE * 2 * (LCD_WIDTH)) #else @@ -412,7 +412,7 @@ class MarlinUI { static void resume_print(); static void flow_fault(); - #if BOTH(HAS_MARLINUI_MENU, PSU_CONTROL) + #if ALL(HAS_MARLINUI_MENU, PSU_CONTROL) static void poweroff(); #endif @@ -471,7 +471,7 @@ class MarlinUI { FORCE_INLINE static void refresh_contrast() { set_contrast(contrast); } #endif - #if BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) + #if ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) static millis_t next_filament_display; static void pause_filament_display(const millis_t ms=millis()) { next_filament_display = ms + 5000UL; } #endif @@ -510,7 +510,7 @@ class MarlinUI { static bool did_first_redraw; #endif - #if EITHER(BABYSTEP_GFX_OVERLAY, MESH_EDIT_GFX_OVERLAY) + #if ANY(BABYSTEP_GFX_OVERLAY, MESH_EDIT_GFX_OVERLAY) static void zoffset_overlay(const int8_t dir); static void zoffset_overlay(const_float_t zvalue); #endif @@ -534,7 +534,7 @@ class MarlinUI { #endif #if HAS_MEDIA - #if BOTH(SCROLL_LONG_FILENAMES, HAS_MARLINUI_MENU) + #if ALL(SCROLL_LONG_FILENAMES, HAS_MARLINUI_MENU) #define MARLINUI_SCROLL_NAME 1 #endif #if MARLINUI_SCROLL_NAME @@ -646,7 +646,7 @@ class MarlinUI { #endif - #if EITHER(HAS_MARLINUI_MENU, EXTENSIBLE_UI) + #if ANY(HAS_MARLINUI_MENU, EXTENSIBLE_UI) static bool lcd_clicked; static bool use_click() { const bool click = lcd_clicked; @@ -684,7 +684,7 @@ class MarlinUI { // // Special handling if a move is underway // - #if ANY(DELTA_CALIBRATION_MENU, DELTA_AUTO_CALIBRATION, PROBE_OFFSET_WIZARD, X_AXIS_TWIST_COMPENSATION) || (ENABLED(LCD_BED_LEVELING) && EITHER(PROBE_MANUALLY, MESH_BED_LEVELING)) + #if ANY(DELTA_CALIBRATION_MENU, DELTA_AUTO_CALIBRATION, PROBE_OFFSET_WIZARD, X_AXIS_TWIST_COMPENSATION) || (ENABLED(LCD_BED_LEVELING) && ANY(PROBE_MANUALLY, MESH_BED_LEVELING)) #define LCD_HAS_WAIT_FOR_MOVE 1 static bool wait_for_move; #else @@ -694,7 +694,7 @@ class MarlinUI { // // Block interaction while under external control // - #if HAS_MARLINUI_MENU && EITHER(AUTO_BED_LEVELING_UBL, G26_MESH_VALIDATION) + #if HAS_MARLINUI_MENU && ANY(AUTO_BED_LEVELING_UBL, G26_MESH_VALIDATION) static bool external_control; FORCE_INLINE static void capture() { external_control = true; } FORCE_INLINE static void release() { external_control = false; } @@ -737,7 +737,7 @@ class MarlinUI { static bool hw_button_pressed() { return BUTTON_CLICK(); } #endif - #if EITHER(AUTO_BED_LEVELING_UBL, G26_MESH_VALIDATION) + #if ANY(AUTO_BED_LEVELING_UBL, G26_MESH_VALIDATION) static void wait_for_release(); #endif @@ -745,14 +745,14 @@ class MarlinUI { #define ENCODERBASE (TERN(REVERSE_ENCODER_DIRECTION, -1, +1)) - #if EITHER(REVERSE_MENU_DIRECTION, REVERSE_SELECT_DIRECTION) + #if ANY(REVERSE_MENU_DIRECTION, REVERSE_SELECT_DIRECTION) static int8_t encoderDirection; #else static constexpr int8_t encoderDirection = ENCODERBASE; #endif FORCE_INLINE static void encoder_direction_normal() { - #if EITHER(REVERSE_MENU_DIRECTION, REVERSE_SELECT_DIRECTION) + #if ANY(REVERSE_MENU_DIRECTION, REVERSE_SELECT_DIRECTION) encoderDirection = ENCODERBASE; #endif } diff --git a/Marlin/src/lcd/menu/menu.cpp b/Marlin/src/lcd/menu/menu.cpp index 911a35d482bd..a9574dd4d9af 100644 --- a/Marlin/src/lcd/menu/menu.cpp +++ b/Marlin/src/lcd/menu/menu.cpp @@ -176,7 +176,7 @@ void MarlinUI::goto_screen(screenFunc_t screen, const uint16_t encoder/*=0*/, co TERN_(SET_PROGRESS_PERCENT, progress_reset()); - #if BOTH(DOUBLECLICK_FOR_Z_BABYSTEPPING, BABYSTEPPING) + #if ALL(DOUBLECLICK_FOR_Z_BABYSTEPPING, BABYSTEPPING) static millis_t doubleclick_expire_ms = 0; // Going to menu_main from status screen? Remember first click time. // Going back to status screen within a very short time? Go to Z babystepping. diff --git a/Marlin/src/lcd/menu/menu_advanced.cpp b/Marlin/src/lcd/menu/menu_advanced.cpp index 0be23be71a84..370ea56402ff 100644 --- a/Marlin/src/lcd/menu/menu_advanced.cpp +++ b/Marlin/src/lcd/menu/menu_advanced.cpp @@ -268,7 +268,7 @@ void menu_backlash(); } #endif -#if BOTH(AUTOTEMP, HAS_TEMP_HOTEND) || ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU, MPC_AUTOTUNE_MENU, MPC_EDIT_MENU) +#if ALL(AUTOTEMP, HAS_TEMP_HOTEND) || ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU, MPC_AUTOTUNE_MENU, MPC_EDIT_MENU) #define SHOW_MENU_ADVANCED_TEMPERATURE 1 #endif @@ -277,7 +277,7 @@ void menu_backlash(); // #if SHOW_MENU_ADVANCED_TEMPERATURE - #if BOTH(MPC_EDIT_MENU, MPC_INCLUDE_FAN) + #if ALL(MPC_EDIT_MENU, MPC_INCLUDE_FAN) #define MPC_EDIT_DEFS(N) editable.decimal = thermalManager.temp_hotend[N].fanCoefficient() #else #define MPC_EDIT_DEFS(...) @@ -294,7 +294,7 @@ void menu_backlash(); // // Autotemp, Min, Max, Fact // - #if BOTH(AUTOTEMP, HAS_TEMP_HOTEND) + #if ALL(AUTOTEMP, HAS_TEMP_HOTEND) EDIT_ITEM(int3, MSG_MIN, &planner.autotemp.min, 0, thermalManager.hotend_max_target(0)); EDIT_ITEM(int3, MSG_MAX, &planner.autotemp.max, 0, thermalManager.hotend_max_target(0)); EDIT_ITEM(float42_52, MSG_FACTOR, &planner.autotemp.factor, 0, 10); @@ -309,7 +309,7 @@ void menu_backlash(); // PID-P E5, PID-I E5, PID-D E5, PID-C E5, PID Autotune E5 // - #if BOTH(PIDTEMP, PID_EDIT_MENU) + #if ALL(PIDTEMP, PID_EDIT_MENU) #define __PID_HOTEND_MENU_ITEMS(N) \ raw_Kp = thermalManager.temp_hotend[N].pid.p(); \ raw_Ki = thermalManager.temp_hotend[N].pid.i(); \ @@ -342,7 +342,7 @@ void menu_backlash(); #endif - #if ENABLED(PID_EDIT_MENU) && EITHER(PIDTEMPBED, PIDTEMPCHAMBER) + #if ENABLED(PID_EDIT_MENU) && ANY(PIDTEMPBED, PIDTEMPCHAMBER) #define _PID_EDIT_ITEMS_TMPL(N,T) \ raw_Kp = T.pid.p(); \ raw_Ki = T.pid.i(); \ diff --git a/Marlin/src/lcd/menu/menu_backlash.cpp b/Marlin/src/lcd/menu/menu_backlash.cpp index 1f3856918f43..a5f1f3746bf0 100644 --- a/Marlin/src/lcd/menu/menu_backlash.cpp +++ b/Marlin/src/lcd/menu/menu_backlash.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_MENU, BACKLASH_GCODE) +#if ALL(HAS_MARLINUI_MENU, BACKLASH_GCODE) #include "menu_item.h" @@ -39,7 +39,7 @@ void menu_backlash() { editable.uint8 = backlash.get_correction_uint8(); EDIT_ITEM_FAST(percent, MSG_BACKLASH_CORRECTION, &editable.uint8, backlash.all_off, backlash.all_on, []{ backlash.set_correction_uint8(editable.uint8); }); - #if DISABLED(CORE_BACKLASH) || EITHER(MARKFORGED_XY, MARKFORGED_YX) + #if DISABLED(CORE_BACKLASH) || ANY(MARKFORGED_XY, MARKFORGED_YX) #define _CAN_CALI AXIS_CAN_CALIBRATE #else #define _CAN_CALI(A) true diff --git a/Marlin/src/lcd/menu/menu_bed_leveling.cpp b/Marlin/src/lcd/menu/menu_bed_leveling.cpp index dcf77cb3eb3a..efc05aabde48 100644 --- a/Marlin/src/lcd/menu/menu_bed_leveling.cpp +++ b/Marlin/src/lcd/menu/menu_bed_leveling.cpp @@ -43,7 +43,7 @@ #endif #endif -#if EITHER(PROBE_MANUALLY, MESH_BED_LEVELING) +#if ANY(PROBE_MANUALLY, MESH_BED_LEVELING) #include "../../module/motion.h" #include "../../gcode/queue.h" @@ -169,7 +169,7 @@ if (ui.should_draw()) { MenuItem_static::draw(1, GET_TEXT_F(MSG_LEVEL_BED_WAITING)); // Color UI needs a control to detect a touch - #if BOTH(TOUCH_SCREEN, HAS_GRAPHICAL_TFT) + #if ALL(TOUCH_SCREEN, HAS_GRAPHICAL_TFT) touch.add_control(CLICK, 0, 0, TFT_WIDTH, TFT_HEIGHT); #endif } @@ -249,7 +249,7 @@ void menu_bed_leveling() { #endif // Level Bed - #if EITHER(PROBE_MANUALLY, MESH_BED_LEVELING) + #if ANY(PROBE_MANUALLY, MESH_BED_LEVELING) // Manual leveling uses a guided procedure SUBMENU(MSG_LEVEL_BED, _lcd_level_bed_continue); #else diff --git a/Marlin/src/lcd/menu/menu_bed_tramming.cpp b/Marlin/src/lcd/menu/menu_bed_tramming.cpp index 8129a347c314..b6b3e7212485 100644 --- a/Marlin/src/lcd/menu/menu_bed_tramming.cpp +++ b/Marlin/src/lcd/menu/menu_bed_tramming.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_MENU, LCD_BED_TRAMMING) +#if ALL(HAS_MARLINUI_MENU, LCD_BED_TRAMMING) #include "menu_item.h" #include "../../module/motion.h" @@ -43,7 +43,7 @@ #define BED_TRAMMING_HEIGHT 0.0 #endif -#if BOTH(HAS_STOWABLE_PROBE, BED_TRAMMING_USE_PROBE) && DISABLED(BLTOUCH) +#if ALL(HAS_STOWABLE_PROBE, BED_TRAMMING_USE_PROBE) && DISABLED(BLTOUCH) #define NEEDS_PROBE_DEPLOY 1 #endif @@ -152,7 +152,7 @@ static void _lcd_goto_next_corner() { } float z = BED_TRAMMING_Z_HOP; - #if BOTH(BED_TRAMMING_USE_PROBE, BLTOUCH) + #if ALL(BED_TRAMMING_USE_PROBE, BLTOUCH) z += bltouch.z_extra_clearance(); #endif line_to_z(z); @@ -187,7 +187,7 @@ static void _lcd_goto_next_corner() { if (PAGE_CONTAINS(y - (MENU_FONT_HEIGHT), y)) { SETCURSOR(TERN(TFT_COLOR_UI, 2, 0), cy); lcd_put_u8str(GET_TEXT_F(MSG_BED_TRAMMING_GOOD_POINTS)); - IF_ENABLED(TFT_COLOR_UI, lcd_moveto(12, cy)); + TERN_(TFT_COLOR_UI, lcd_moveto(12, cy)); lcd_put_u8str(GOOD_POINTS_TO_STR(good_points)); lcd_put_u8str(F("/")); lcd_put_u8str(GOOD_POINTS_TO_STR(nr_edge_points)); @@ -200,7 +200,7 @@ static void _lcd_goto_next_corner() { if (PAGE_CONTAINS(y - (MENU_FONT_HEIGHT), y)) { SETCURSOR(TERN(TFT_COLOR_UI, 2, 0), cy); lcd_put_u8str(GET_TEXT_F(MSG_BED_TRAMMING_LAST_Z)); - IF_ENABLED(TFT_COLOR_UI, lcd_moveto(12, 2)); + TERN_(TFT_COLOR_UI, lcd_moveto(12, 2)); lcd_put_u8str(LAST_Z_TO_STR(last_z)); } } diff --git a/Marlin/src/lcd/menu/menu_cancelobject.cpp b/Marlin/src/lcd/menu/menu_cancelobject.cpp index b2784bcd41b6..bcbd90ee3a60 100644 --- a/Marlin/src/lcd/menu/menu_cancelobject.cpp +++ b/Marlin/src/lcd/menu/menu_cancelobject.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_MENU, CANCEL_OBJECTS) +#if ALL(HAS_MARLINUI_MENU, CANCEL_OBJECTS) #include "menu_item.h" #include "menu_addon.h" diff --git a/Marlin/src/lcd/menu/menu_configuration.cpp b/Marlin/src/lcd/menu/menu_configuration.cpp index 0611bda84b32..0622eb98d4e4 100644 --- a/Marlin/src/lcd/menu/menu_configuration.cpp +++ b/Marlin/src/lcd/menu/menu_configuration.cpp @@ -59,7 +59,7 @@ #include "../../libs/buzzer.h" #endif -#if EITHER(LCD_PROGRESS_BAR_TEST, LCD_ENDSTOP_TEST) +#if ANY(LCD_PROGRESS_BAR_TEST, LCD_ENDSTOP_TEST) #include "../lcdprint.h" #define HAS_DEBUG_MENU 1 #endif @@ -68,7 +68,7 @@ #include "../../core/debug_out.h" void menu_advanced_settings(); -#if EITHER(DELTA_CALIBRATION_MENU, DELTA_AUTO_CALIBRATION) +#if ANY(DELTA_CALIBRATION_MENU, DELTA_AUTO_CALIBRATION) void menu_delta_calibrate(); #endif @@ -592,7 +592,7 @@ void menu_configuration() { #endif if (!busy) { - #if EITHER(DELTA_CALIBRATION_MENU, DELTA_AUTO_CALIBRATION) + #if ANY(DELTA_CALIBRATION_MENU, DELTA_AUTO_CALIBRATION) SUBMENU(MSG_DELTA_CALIBRATE, menu_delta_calibrate); #endif diff --git a/Marlin/src/lcd/menu/menu_delta_calibrate.cpp b/Marlin/src/lcd/menu/menu_delta_calibrate.cpp index fe0be0439853..c7da12a61ee6 100644 --- a/Marlin/src/lcd/menu/menu_delta_calibrate.cpp +++ b/Marlin/src/lcd/menu/menu_delta_calibrate.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfigPre.h" -#if HAS_MARLINUI_MENU && EITHER(DELTA_CALIBRATION_MENU, DELTA_AUTO_CALIBRATION) +#if HAS_MARLINUI_MENU && ANY(DELTA_CALIBRATION_MENU, DELTA_AUTO_CALIBRATION) #include "menu_item.h" #include "../../module/delta.h" diff --git a/Marlin/src/lcd/menu/menu_filament.cpp b/Marlin/src/lcd/menu/menu_filament.cpp index 6fdcc2b48818..bdcd20fae3c6 100644 --- a/Marlin/src/lcd/menu/menu_filament.cpp +++ b/Marlin/src/lcd/menu/menu_filament.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_MENU, ADVANCED_PAUSE_FEATURE) +#if ALL(HAS_MARLINUI_MENU, ADVANCED_PAUSE_FEATURE) #include "menu_item.h" #include "../../module/temperature.h" diff --git a/Marlin/src/lcd/menu/menu_info.cpp b/Marlin/src/lcd/menu/menu_info.cpp index e2dd6c647527..59ed52e6f17b 100644 --- a/Marlin/src/lcd/menu/menu_info.cpp +++ b/Marlin/src/lcd/menu/menu_info.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_MENU, LCD_INFO_MENU) +#if ALL(HAS_MARLINUI_MENU, LCD_INFO_MENU) #include "menu_item.h" diff --git a/Marlin/src/lcd/menu/menu_job_recovery.cpp b/Marlin/src/lcd/menu/menu_job_recovery.cpp index 6329c5839786..b2276aeb0cdd 100644 --- a/Marlin/src/lcd/menu/menu_job_recovery.cpp +++ b/Marlin/src/lcd/menu/menu_job_recovery.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_MENU, POWER_LOSS_RECOVERY) +#if ALL(HAS_MARLINUI_MENU, POWER_LOSS_RECOVERY) #include "menu_item.h" #include "../../gcode/queue.h" diff --git a/Marlin/src/lcd/menu/menu_led.cpp b/Marlin/src/lcd/menu/menu_led.cpp index dea5ecceeb01..c7390b98cb20 100644 --- a/Marlin/src/lcd/menu/menu_led.cpp +++ b/Marlin/src/lcd/menu/menu_led.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfigPre.h" -#if HAS_MARLINUI_MENU && EITHER(LED_CONTROL_MENU, CASE_LIGHT_MENU) +#if HAS_MARLINUI_MENU && ANY(LED_CONTROL_MENU, CASE_LIGHT_MENU) #include "menu_item.h" diff --git a/Marlin/src/lcd/menu/menu_main.cpp b/Marlin/src/lcd/menu/menu_main.cpp index a202f624f7fc..4ccdb60bf14c 100644 --- a/Marlin/src/lcd/menu/menu_main.cpp +++ b/Marlin/src/lcd/menu/menu_main.cpp @@ -43,7 +43,7 @@ #include "game/game.h" #endif -#if EITHER(HAS_MEDIA, HOST_PROMPT_SUPPORT) || defined(ACTION_ON_CANCEL) +#if ANY(HAS_MEDIA, HOST_PROMPT_SUPPORT) || defined(ACTION_ON_CANCEL) #define MACHINE_CAN_STOP 1 #endif #if ANY(HAS_MEDIA, HOST_PROMPT_SUPPORT, PARK_HEAD_ON_PAUSE) || defined(ACTION_ON_PAUSE) @@ -88,7 +88,7 @@ void menu_configuration(); void menu_info(); #endif -#if EITHER(LED_CONTROL_MENU, CASE_LIGHT_MENU) +#if ANY(LED_CONTROL_MENU, CASE_LIGHT_MENU) void menu_led(); #endif @@ -273,7 +273,7 @@ void menu_main() { #endif } else { - #if BOTH(HAS_MEDIA, MEDIA_MENU_AT_TOP) + #if ALL(HAS_MEDIA, MEDIA_MENU_AT_TOP) // BEGIN MEDIA MENU #if ENABLED(MENU_ADDAUTOSTART) ACTION_ITEM(MSG_RUN_AUTO_FILES, card.autofile_begin); // Run Auto Files @@ -326,7 +326,7 @@ void menu_main() { SUBMENU(MSG_MOTION, menu_motion); } - #if BOTH(ADVANCED_PAUSE_FEATURE, DISABLE_ENCODER) + #if ALL(ADVANCED_PAUSE_FEATURE, DISABLE_ENCODER) FILAMENT_CHANGE_ITEM(); #endif @@ -366,7 +366,7 @@ void menu_main() { SUBMENU(MSG_INFO_MENU, menu_info); #endif - #if EITHER(LED_CONTROL_MENU, CASE_LIGHT_MENU) + #if ANY(LED_CONTROL_MENU, CASE_LIGHT_MENU) SUBMENU(MSG_LEDS, menu_led); #endif diff --git a/Marlin/src/lcd/menu/menu_media.cpp b/Marlin/src/lcd/menu/menu_media.cpp index 795ac2052b41..26f7a0517d31 100644 --- a/Marlin/src/lcd/menu/menu_media.cpp +++ b/Marlin/src/lcd/menu/menu_media.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_MENU, HAS_MEDIA) +#if ALL(HAS_MARLINUI_MENU, HAS_MEDIA) #include "menu_item.h" #include "../../sd/cardreader.h" diff --git a/Marlin/src/lcd/menu/menu_mixer.cpp b/Marlin/src/lcd/menu/menu_mixer.cpp index 478792479cc1..b3be5e6336fd 100644 --- a/Marlin/src/lcd/menu/menu_mixer.cpp +++ b/Marlin/src/lcd/menu/menu_mixer.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_MENU, MIXING_EXTRUDER) +#if ALL(HAS_MARLINUI_MENU, MIXING_EXTRUDER) #include "menu_item.h" #include "menu_addon.h" diff --git a/Marlin/src/lcd/menu/menu_mmu2.cpp b/Marlin/src/lcd/menu/menu_mmu2.cpp index ca3627ce1002..c9d163357bbd 100644 --- a/Marlin/src/lcd/menu/menu_mmu2.cpp +++ b/Marlin/src/lcd/menu/menu_mmu2.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if BOTH(HAS_MARLINUI_MENU, MMU2_MENUS) +#if ALL(HAS_MARLINUI_MENU, MMU2_MENUS) #include "../../MarlinCore.h" #include "../../feature/mmu/mmu2.h" diff --git a/Marlin/src/lcd/menu/menu_motion.cpp b/Marlin/src/lcd/menu/menu_motion.cpp index bab03db60627..67fcbdd8511e 100644 --- a/Marlin/src/lcd/menu/menu_motion.cpp +++ b/Marlin/src/lcd/menu/menu_motion.cpp @@ -119,7 +119,7 @@ void lcd_move_axis(const AxisEnum axis) { #endif // E_MANUAL -#if EITHER(PROBE_OFFSET_WIZARD, X_AXIS_TWIST_COMPENSATION) +#if ANY(PROBE_OFFSET_WIZARD, X_AXIS_TWIST_COMPENSATION) void _goto_manual_move_z(const_float_t scale) { ui.manual_move.menu_scale = scale; @@ -207,7 +207,7 @@ void menu_move() { START_MENU(); BACK_ITEM(MSG_MOTION); - #if BOTH(HAS_SOFTWARE_ENDSTOPS, SOFT_ENDSTOPS_MENU_ITEM) + #if ALL(HAS_SOFTWARE_ENDSTOPS, SOFT_ENDSTOPS_MENU_ITEM) EDIT_ITEM(bool, MSG_LCD_SOFT_ENDSTOPS, &soft_endstop._enabled); #endif @@ -530,7 +530,7 @@ void menu_motion() { // // Auto Z-Align // - #if EITHER(Z_STEPPER_AUTO_ALIGN, MECHANICAL_GANTRY_CALIBRATION) + #if ANY(Z_STEPPER_AUTO_ALIGN, MECHANICAL_GANTRY_CALIBRATION) GCODES_ITEM(MSG_AUTO_Z_ALIGN, F("G34")); #endif diff --git a/Marlin/src/lcd/menu/menu_password.cpp b/Marlin/src/lcd/menu/menu_password.cpp index b50194d60dc8..6ca4202f6c27 100644 --- a/Marlin/src/lcd/menu/menu_password.cpp +++ b/Marlin/src/lcd/menu/menu_password.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_MENU, PASSWORD_FEATURE) +#if ALL(HAS_MARLINUI_MENU, PASSWORD_FEATURE) #include "../../feature/password/password.h" diff --git a/Marlin/src/lcd/menu/menu_temperature.cpp b/Marlin/src/lcd/menu/menu_temperature.cpp index c53459769076..82b358623fc2 100644 --- a/Marlin/src/lcd/menu/menu_temperature.cpp +++ b/Marlin/src/lcd/menu/menu_temperature.cpp @@ -35,7 +35,7 @@ #include "../../module/motion.h" #endif -#if EITHER(HAS_COOLER, LASER_COOLANT_FLOW_METER) +#if ANY(HAS_COOLER, LASER_COOLANT_FLOW_METER) #include "../../feature/cooler.h" #endif diff --git a/Marlin/src/lcd/menu/menu_touch_screen.cpp b/Marlin/src/lcd/menu/menu_touch_screen.cpp index 130308dadffa..93380cb0e04a 100644 --- a/Marlin/src/lcd/menu/menu_touch_screen.cpp +++ b/Marlin/src/lcd/menu/menu_touch_screen.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_MENU, TOUCH_SCREEN_CALIBRATION) +#if ALL(HAS_MARLINUI_MENU, TOUCH_SCREEN_CALIBRATION) #include "menu_item.h" #include "../marlinui.h" diff --git a/Marlin/src/lcd/menu/menu_tramming_wizard.cpp b/Marlin/src/lcd/menu/menu_tramming_wizard.cpp index 8fb251c23862..e0f88ea1bb85 100644 --- a/Marlin/src/lcd/menu/menu_tramming_wizard.cpp +++ b/Marlin/src/lcd/menu/menu_tramming_wizard.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_MENU, ASSISTED_TRAMMING_WIZARD) +#if ALL(HAS_MARLINUI_MENU, ASSISTED_TRAMMING_WIZARD) #include "menu_item.h" diff --git a/Marlin/src/lcd/menu/menu_tune.cpp b/Marlin/src/lcd/menu/menu_tune.cpp index 081b9f58a02d..5247c714c662 100644 --- a/Marlin/src/lcd/menu/menu_tune.cpp +++ b/Marlin/src/lcd/menu/menu_tune.cpp @@ -119,7 +119,7 @@ void menu_tune() { // // Manual bed leveling, Bed Z: // - #if BOTH(MESH_BED_LEVELING, LCD_BED_LEVELING) + #if ALL(MESH_BED_LEVELING, LCD_BED_LEVELING) EDIT_ITEM(float43, MSG_MESH_Z_OFFSET, &bedlevel.z_offset, -1, 1); #endif diff --git a/Marlin/src/lcd/menu/menu_ubl.cpp b/Marlin/src/lcd/menu/menu_ubl.cpp index d6f42faa5558..c8fd33d26df0 100644 --- a/Marlin/src/lcd/menu/menu_ubl.cpp +++ b/Marlin/src/lcd/menu/menu_ubl.cpp @@ -26,7 +26,7 @@ #include "../../inc/MarlinConfigPre.h" -#if BOTH(HAS_MARLINUI_MENU, AUTO_BED_LEVELING_UBL) +#if ALL(HAS_MARLINUI_MENU, AUTO_BED_LEVELING_UBL) #include "menu_item.h" #include "../../gcode/gcode.h" diff --git a/Marlin/src/lcd/menu/menu_x_twist.cpp b/Marlin/src/lcd/menu/menu_x_twist.cpp index 86ef3be7b999..5339e8e6e515 100644 --- a/Marlin/src/lcd/menu/menu_x_twist.cpp +++ b/Marlin/src/lcd/menu/menu_x_twist.cpp @@ -170,7 +170,7 @@ void xatc_wizard_homing_done() { MenuItem_static::draw(1, GET_TEXT_F(MSG_LEVEL_BED_WAITING)); // Color UI needs a control to detect a touch - #if BOTH(TOUCH_SCREEN, HAS_GRAPHICAL_TFT) + #if ALL(TOUCH_SCREEN, HAS_GRAPHICAL_TFT) touch.add_control(CLICK, 0, 0, TFT_WIDTH, TFT_HEIGHT); #endif } diff --git a/Marlin/src/lcd/tft/ui_1024x600.cpp b/Marlin/src/lcd/tft/ui_1024x600.cpp index 460f3a345b55..e43ccf74500a 100644 --- a/Marlin/src/lcd/tft/ui_1024x600.cpp +++ b/Marlin/src/lcd/tft/ui_1024x600.cpp @@ -36,7 +36,7 @@ #include "../../module/planner.h" #include "../../module/motion.h" -#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) +#if DISABLED(LCD_PROGRESS_BAR) && ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) #include "../../feature/filwidth.h" #include "../../gcode/parser.h" #endif @@ -627,7 +627,7 @@ struct { static void quick_feedback() { #if HAS_CHIRP ui.chirp(); // Buzz and wait. Is the delay needed for buttons to settle? - #if BOTH(HAS_MARLINUI_MENU, HAS_BEEPER) + #if ALL(HAS_MARLINUI_MENU, HAS_BEEPER) for (int8_t i = 5; i--;) { buzzer.tick(); delay(2); } #elif HAS_MARLINUI_MENU delay(10); @@ -837,7 +837,7 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { } #endif -#if BOTH(HAS_BED_PROBE, TOUCH_SCREEN) +#if ALL(HAS_BED_PROBE, TOUCH_SCREEN) static void z_select() { motionAxisState.z_selection *= -1; quick_feedback(); @@ -936,7 +936,7 @@ void MarlinUI::move_axis_screen() { motionAxisState.zTypePos.x = x; motionAxisState.zTypePos.y = y; TERN_(HAS_Z_AXIS, drawCurZSelection()); - #if BOTH(HAS_BED_PROBE, TOUCH_SCREEN) + #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); #endif diff --git a/Marlin/src/lcd/tft/ui_320x240.cpp b/Marlin/src/lcd/tft/ui_320x240.cpp index c2918711f47b..0d145f10eb9d 100644 --- a/Marlin/src/lcd/tft/ui_320x240.cpp +++ b/Marlin/src/lcd/tft/ui_320x240.cpp @@ -36,7 +36,7 @@ #include "../../module/planner.h" #include "../../module/motion.h" -#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) +#if DISABLED(LCD_PROGRESS_BAR) && ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) #include "../../feature/filwidth.h" #include "../../gcode/parser.h" #endif @@ -708,7 +708,7 @@ struct { static void quick_feedback() { #if HAS_CHIRP ui.chirp(); // Buzz and wait. Is the delay needed for buttons to settle? - #if BOTH(HAS_MARLINUI_MENU, HAS_BEEPER) + #if ALL(HAS_MARLINUI_MENU, HAS_BEEPER) for (int8_t i = 5; i--;) { buzzer.tick(); delay(2); } #elif HAS_MARLINUI_MENU delay(10); @@ -1029,7 +1029,7 @@ void MarlinUI::move_axis_screen() { drawBtn(zplus_x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy); - #if BOTH(HAS_BED_PROBE, TOUCH_SCREEN) + #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); #endif @@ -1129,7 +1129,7 @@ void MarlinUI::move_axis_screen() { motionAxisState.zTypePos.x = x; motionAxisState.zTypePos.y = y; TERN_(HAS_Z_AXIS, drawCurZSelection()); - #if BOTH(HAS_BED_PROBE, TOUCH_SCREEN) + #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); #endif diff --git a/Marlin/src/lcd/tft/ui_480x320.cpp b/Marlin/src/lcd/tft/ui_480x320.cpp index e1ddfe5e1ab1..75ec50adc284 100644 --- a/Marlin/src/lcd/tft/ui_480x320.cpp +++ b/Marlin/src/lcd/tft/ui_480x320.cpp @@ -36,7 +36,7 @@ #include "../../module/planner.h" #include "../../module/motion.h" -#if DISABLED(LCD_PROGRESS_BAR) && BOTH(FILAMENT_LCD_DISPLAY, HAS_MEDIA) +#if DISABLED(LCD_PROGRESS_BAR) && ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) #include "../../feature/filwidth.h" #include "../../gcode/parser.h" #endif @@ -627,7 +627,7 @@ struct { static void quick_feedback() { #if HAS_CHIRP ui.chirp(); // Buzz and wait. Is the delay needed for buttons to settle? - #if BOTH(HAS_MARLINUI_MENU, HAS_BEEPER) + #if ALL(HAS_MARLINUI_MENU, HAS_BEEPER) for (int8_t i = 5; i--;) { buzzer.tick(); delay(2); } #elif HAS_MARLINUI_MENU delay(10); @@ -837,7 +837,7 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { } #endif // TOUCH_SCREEN -#if BOTH(HAS_BED_PROBE, TOUCH_SCREEN) +#if ALL(HAS_BED_PROBE, TOUCH_SCREEN) static void z_select() { motionAxisState.z_selection *= -1; quick_feedback(); @@ -940,7 +940,7 @@ void MarlinUI::move_axis_screen() { motionAxisState.zTypePos.x = x; motionAxisState.zTypePos.y = y; TERN_(HAS_Z_AXIS, drawCurZSelection()); - #if BOTH(HAS_BED_PROBE, TOUCH_SCREEN) + #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); #endif diff --git a/Marlin/src/libs/nozzle.cpp b/Marlin/src/libs/nozzle.cpp index e675c53cb106..58c097e3167e 100644 --- a/Marlin/src/libs/nozzle.cpp +++ b/Marlin/src/libs/nozzle.cpp @@ -22,7 +22,7 @@ #include "../inc/MarlinConfig.h" -#if EITHER(NOZZLE_CLEAN_FEATURE, NOZZLE_PARK_FEATURE) +#if ANY(NOZZLE_CLEAN_FEATURE, NOZZLE_PARK_FEATURE) #include "nozzle.h" @@ -170,7 +170,7 @@ Nozzle nozzle; xyz_pos_t middle[HOTENDS] = NOZZLE_CLEAN_CIRCLE_MIDDLE; #endif - const uint8_t arrPos = EITHER(SINGLENOZZLE, MIXING_EXTRUDER) ? 0 : active_extruder; + const uint8_t arrPos = ANY(SINGLENOZZLE, MIXING_EXTRUDER) ? 0 : active_extruder; switch (pattern) { #if DISABLED(NOZZLE_CLEAN_PATTERN_LINE) diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index a22c4f03817b..f73d0f1e6b42 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -31,7 +31,7 @@ #include "temperature.h" #include "../lcd/marlinui.h" -#define DEBUG_OUT BOTH(USE_SENSORLESS, DEBUG_LEVELING_FEATURE) +#define DEBUG_OUT ALL(USE_SENSORLESS, DEBUG_LEVELING_FEATURE) #include "../core/debug_out.h" #if ENABLED(ENDSTOP_INTERRUPTS_FEATURE) @@ -1136,11 +1136,11 @@ void Endstops::update() { void Endstops::clear_endstop_state() { TERN_(X_SPI_SENSORLESS, CBI(live_state, X_ENDSTOP)); - #if BOTH(X_SPI_SENSORLESS, X_DUAL_ENDSTOPS) + #if ALL(X_SPI_SENSORLESS, X_DUAL_ENDSTOPS) CBI(live_state, X2_ENDSTOP); #endif TERN_(Y_SPI_SENSORLESS, CBI(live_state, Y_ENDSTOP)); - #if BOTH(Y_SPI_SENSORLESS, Y_DUAL_ENDSTOPS) + #if ALL(Y_SPI_SENSORLESS, Y_DUAL_ENDSTOPS) CBI(live_state, Y2_ENDSTOP); #endif TERN_(Z_SPI_SENSORLESS, CBI(live_state, Z_ENDSTOP)); diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index e6df20a99843..d7b6d76fae8d 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -257,7 +257,7 @@ void report_current_position_projected() { AutoReporter position_auto_reporter; #endif -#if EITHER(FULL_REPORT_TO_HOST_FEATURE, REALTIME_REPORTING_COMMANDS) +#if ANY(FULL_REPORT_TO_HOST_FEATURE, REALTIME_REPORTING_COMMANDS) M_StateEnum M_State_grbl = M_INIT; @@ -941,7 +941,7 @@ void restore_feedrate_and_scaling() { if (TERN0(DELTA, !all_axes_homed())) return; - #if BOTH(HAS_HOTEND_OFFSET, DELTA) + #if ALL(HAS_HOTEND_OFFSET, DELTA) // The effector center position will be the target minus the hotend offset. const xy_pos_t offs = hotend_offset[active_extruder]; #elif ENABLED(POLARGRAPH) @@ -1232,7 +1232,7 @@ float get_move_distance(const xyze_pos_t &diff OPTARG(HAS_ROTATIONAL_AXES, bool // Minimum number of seconds to move the given distance const float seconds = cartesian_mm / ( - #if BOTH(HAS_ROTATIONAL_AXES, INCH_MODE_SUPPORT) + #if ALL(HAS_ROTATIONAL_AXES, INCH_MODE_SUPPORT) cartes_move ? scaled_fr_mm_s : LINEAR_UNIT(scaled_fr_mm_s) #else scaled_fr_mm_s @@ -1542,7 +1542,7 @@ float get_move_distance(const xyze_pos_t &diff OPTARG(HAS_ROTATIONAL_AXES, bool void prepare_line_to_destination() { apply_motion_limits(destination); - #if EITHER(PREVENT_COLD_EXTRUSION, PREVENT_LENGTHY_EXTRUDE) + #if ANY(PREVENT_COLD_EXTRUSION, PREVENT_LENGTHY_EXTRUDE) if (!DEBUGGING(DRYRUN) && destination.e != current_position.e) { bool ignore_e = thermalManager.tooColdToExtrude(active_extruder); @@ -1873,12 +1873,12 @@ void prepare_line_to_destination() { if (is_home_dir) { if (TERN0(HOMING_Z_WITH_PROBE, axis == Z_AXIS)) { - #if BOTH(HAS_HEATED_BED, WAIT_FOR_BED_HEATER) + #if ALL(HAS_HEATED_BED, WAIT_FOR_BED_HEATER) // Wait for bed to heat back up between probing points thermalManager.wait_for_bed_heating(); #endif - #if BOTH(HAS_HOTEND, WAIT_FOR_HOTEND) + #if ALL(HAS_HOTEND, WAIT_FOR_HOTEND) // Wait for the hotend to heat back up between probing points thermalManager.wait_for_hotend_heating(active_extruder); #endif @@ -1895,7 +1895,7 @@ void prepare_line_to_destination() { #endif } - #if EITHER(MORGAN_SCARA, MP_SCARA) + #if ANY(MORGAN_SCARA, MP_SCARA) // Tell the planner the axis is at 0 current_position[axis] = 0; sync_plan_position(); @@ -2093,11 +2093,11 @@ void prepare_line_to_destination() { void homeaxis(const AxisEnum axis) { - #if EITHER(MORGAN_SCARA, MP_SCARA) + #if ANY(MORGAN_SCARA, MP_SCARA) // Only Z homing (with probe) is permitted if (axis != Z_AXIS) { BUZZ(100, 880); return; } #else - #define _CAN_HOME(A) (axis == _AXIS(A) && (EITHER(A##_SPI_SENSORLESS, HAS_##A##_ENDSTOP) || TERN0(HOMING_Z_WITH_PROBE, _AXIS(A) == Z_AXIS))) + #define _CAN_HOME(A) (axis == _AXIS(A) && (ANY(A##_SPI_SENSORLESS, HAS_##A##_ENDSTOP) || TERN0(HOMING_Z_WITH_PROBE, _AXIS(A) == Z_AXIS))) #define _ANDCANT(N) && !_CAN_HOME(N) if (true MAIN_AXIS_MAP(_ANDCANT)) return; #endif @@ -2173,7 +2173,7 @@ void prepare_line_to_destination() { // If a second homing move is configured... if (bump) { - #if BOTH(HOMING_Z_WITH_PROBE, BLTOUCH) + #if ALL(HOMING_Z_WITH_PROBE, BLTOUCH) if (axis == Z_AXIS && !bltouch.high_speed_mode) bltouch.stow(); // Intermediate STOW (in LOW SPEED MODE) #endif @@ -2195,7 +2195,7 @@ void prepare_line_to_destination() { } #endif - #if BOTH(HOMING_Z_WITH_PROBE, BLTOUCH) + #if ALL(HOMING_Z_WITH_PROBE, BLTOUCH) if (axis == Z_AXIS && !bltouch.high_speed_mode && bltouch.deploy()) return; // Intermediate DEPLOY (in LOW SPEED MODE) #endif @@ -2206,7 +2206,7 @@ void prepare_line_to_destination() { do_homing_move(axis, rebump, get_homing_bump_feedrate(axis), true); } - #if BOTH(HOMING_Z_WITH_PROBE, BLTOUCH) + #if ALL(HOMING_Z_WITH_PROBE, BLTOUCH) if (axis == Z_AXIS) bltouch.stow(); // The final STOW #endif @@ -2443,7 +2443,7 @@ void set_axis_is_at_home(const AxisEnum axis) { } #endif - #if EITHER(MORGAN_SCARA, AXEL_TPARA) + #if ANY(MORGAN_SCARA, AXEL_TPARA) scara_set_axis_is_at_home(axis); #elif ENABLED(DELTA) current_position[axis] = (axis == Z_AXIS) ? DIFF_TERN(HAS_BED_PROBE, delta_height, probe.offset.z) : base_home_pos(axis); diff --git a/Marlin/src/module/motion.h b/Marlin/src/module/motion.h index b7e37f6b7043..ce05c82c772d 100644 --- a/Marlin/src/module/motion.h +++ b/Marlin/src/module/motion.h @@ -271,7 +271,7 @@ void report_current_position_projected(); extern AutoReporter position_auto_reporter; #endif -#if EITHER(FULL_REPORT_TO_HOST_FEATURE, REALTIME_REPORTING_COMMANDS) +#if ANY(FULL_REPORT_TO_HOST_FEATURE, REALTIME_REPORTING_COMMANDS) #define HAS_GRBL_STATE 1 /** * Machine states for GRBL or TinyG diff --git a/Marlin/src/module/planner.cpp b/Marlin/src/module/planner.cpp index 02a7d05cae3a..1d3bb268efa4 100644 --- a/Marlin/src/module/planner.cpp +++ b/Marlin/src/module/planner.cpp @@ -795,7 +795,7 @@ void Planner::calculate_trapezoid_for_block(block_t * const block, const_float_t NOLESS(initial_rate, uint32_t(MINIMAL_STEP_RATE)); NOLESS(final_rate, uint32_t(MINIMAL_STEP_RATE)); - #if EITHER(S_CURVE_ACCELERATION, LIN_ADVANCE) + #if ANY(S_CURVE_ACCELERATION, LIN_ADVANCE) // If we have some plateau time, the cruise rate will be the nominal rate uint32_t cruise_rate = block->nominal_rate; #endif @@ -829,7 +829,7 @@ void Planner::calculate_trapezoid_for_block(block_t * const block, const_float_t accelerate_steps = _MIN(uint32_t(_MAX(accelerate_steps_float, 0)), block->step_event_count); decelerate_steps = block->step_event_count - accelerate_steps; - #if EITHER(S_CURVE_ACCELERATION, LIN_ADVANCE) + #if ANY(S_CURVE_ACCELERATION, LIN_ADVANCE) // We won't reach the cruising rate. Let's calculate the speed we will reach cruise_rate = final_speed(initial_rate, accel, accelerate_steps); #endif @@ -1349,7 +1349,7 @@ void Planner::check_axes_activity() { if (has_blocks_queued()) { - #if EITHER(HAS_TAIL_FAN_SPEED, BARICUDA) + #if ANY(HAS_TAIL_FAN_SPEED, BARICUDA) block_t *block = &block_buffer[block_buffer_tail]; #endif @@ -1773,7 +1773,7 @@ float Planner::get_axis_position_mm(const AxisEnum axis) { else axis_steps = DIFF_TERN(BACKLASH_COMPENSATION, stepper.position(axis), backlash.get_applied_steps(axis)); - #elif EITHER(MARKFORGED_XY, MARKFORGED_YX) + #elif ANY(MARKFORGED_XY, MARKFORGED_YX) // Requesting one of the joined axes? if (axis == CORE_AXIS_1 || axis == CORE_AXIS_2) { @@ -1925,7 +1925,7 @@ bool Planner::_populate_block( ); //*/ - #if EITHER(PREVENT_COLD_EXTRUSION, PREVENT_LENGTHY_EXTRUDE) + #if ANY(PREVENT_COLD_EXTRUSION, PREVENT_LENGTHY_EXTRUDE) if (dist.e) { #if ENABLED(PREVENT_COLD_EXTRUSION) if (thermalManager.tooColdToExtrude(extruder)) { @@ -2299,7 +2299,7 @@ bool Planner::_populate_block( // Example: At 120mm/s a 60mm move involving XYZ axes takes 0.5s. So this will give 2.0. // Example 2: At 120°/s a 60° move involving only rotational axes takes 0.5s. So this will give 2.0. float inverse_secs = inverse_millimeters * ( - #if BOTH(HAS_ROTATIONAL_AXES, INCH_MODE_SUPPORT) + #if ALL(HAS_ROTATIONAL_AXES, INCH_MODE_SUPPORT) cartesian_move ? fr_mm_s : LINEAR_UNIT(fr_mm_s) #else fr_mm_s @@ -2310,7 +2310,7 @@ bool Planner::_populate_block( const uint8_t moves_queued = nonbusy_movesplanned(); // Slow down when the buffer starts to empty, rather than wait at the corner for a buffer refill - #if EITHER(SLOWDOWN, HAS_WIRED_LCD) || defined(XY_FREQUENCY_LIMIT) + #if ANY(SLOWDOWN, HAS_WIRED_LCD) || defined(XY_FREQUENCY_LIMIT) // Segment time in microseconds int32_t segment_time_us = LROUND(1000000.0f / inverse_secs); #endif @@ -2907,7 +2907,7 @@ void Planner::buffer_sync_block(const BlockFlagBit sync_flag/*=BLOCK_BIT_SYNC_PO #if ENABLED(BACKLASH_COMPENSATION) LOOP_NUM_AXES(axis) block->position[axis] += backlash.get_applied_steps((AxisEnum)axis); #endif - #if BOTH(HAS_FAN, LASER_SYNCHRONOUS_M106_M107) + #if ALL(HAS_FAN, LASER_SYNCHRONOUS_M106_M107) FANS_LOOP(i) block->fan_speed[i] = thermalManager.fan_speed[i]; #endif diff --git a/Marlin/src/module/planner.h b/Marlin/src/module/planner.h index ee79c913af52..e74aea56a571 100644 --- a/Marlin/src/module/planner.h +++ b/Marlin/src/module/planner.h @@ -938,7 +938,7 @@ class Planner { } // SCARA AB and Polar YB axes are in degrees, not mm - #if EITHER(IS_SCARA, POLAR) + #if ANY(IS_SCARA, POLAR) FORCE_INLINE static float get_axis_position_degrees(const AxisEnum axis) { return get_axis_position_mm(axis); } #endif @@ -1041,7 +1041,7 @@ class Planner { return target_velocity_sqr - 2 * accel * distance; } - #if EITHER(S_CURVE_ACCELERATION, LIN_ADVANCE) + #if ANY(S_CURVE_ACCELERATION, LIN_ADVANCE) /** * Calculate the speed reached given initial speed, acceleration and distance */ diff --git a/Marlin/src/module/printcounter.h b/Marlin/src/module/printcounter.h index 63cc1da158e8..ebf61a3a1ce0 100644 --- a/Marlin/src/module/printcounter.h +++ b/Marlin/src/module/printcounter.h @@ -54,7 +54,7 @@ struct printStatistics { // 16 bytes class PrintCounter: public Stopwatch { private: typedef Stopwatch super; - typedef IF::type eeprom_address_t; + typedef IF::type eeprom_address_t; static printStatistics data; diff --git a/Marlin/src/module/probe.cpp b/Marlin/src/module/probe.cpp index 1e01cfd9b616..c3ea161cb413 100644 --- a/Marlin/src/module/probe.cpp +++ b/Marlin/src/module/probe.cpp @@ -57,9 +57,9 @@ float largest_sensorless_adj = 0; #endif -#if EITHER(HAS_QUIET_PROBING, USE_SENSORLESS) +#if ANY(HAS_QUIET_PROBING, USE_SENSORLESS) #include "stepper/indirection.h" - #if BOTH(HAS_QUIET_PROBING, PROBING_ESTEPPERS_OFF) + #if ALL(HAS_QUIET_PROBING, PROBING_ESTEPPERS_OFF) #include "stepper.h" #endif #if USE_SENSORLESS @@ -429,7 +429,7 @@ FORCE_INLINE void probe_specific_action(const bool deploy) { #endif } -#if EITHER(PREHEAT_BEFORE_PROBING, PREHEAT_BEFORE_LEVELING) +#if ANY(PREHEAT_BEFORE_PROBING, PREHEAT_BEFORE_LEVELING) #if ENABLED(PREHEAT_BEFORE_PROBING) #ifndef PROBING_NOZZLE_TEMP @@ -490,7 +490,7 @@ FORCE_INLINE void probe_specific_action(const bool deploy) { void Probe::probe_error_stop() { SERIAL_ERROR_START(); SERIAL_ECHOPGM(STR_STOP_PRE); - #if EITHER(Z_PROBE_SLED, Z_PROBE_ALLEN_KEY) + #if ANY(Z_PROBE_SLED, Z_PROBE_ALLEN_KEY) SERIAL_ECHOPGM(STR_STOP_UNHOMED); #elif ENABLED(BLTOUCH) SERIAL_ECHOPGM(STR_STOP_BLTOUCH); @@ -515,7 +515,7 @@ bool Probe::set_deployed(const bool deploy, const bool no_return/*=false*/) { // Make room for probe to deploy (or stow) // Fix-mounted probe should only raise for deploy // unless PAUSE_BEFORE_DEPLOY_STOW is enabled - #if EITHER(FIX_MOUNTED_PROBE, NOZZLE_AS_PROBE) && DISABLED(PAUSE_BEFORE_DEPLOY_STOW) + #if ANY(FIX_MOUNTED_PROBE, NOZZLE_AS_PROBE) && DISABLED(PAUSE_BEFORE_DEPLOY_STOW) const bool z_raise_wanted = deploy; #else constexpr bool z_raise_wanted = true; @@ -527,7 +527,7 @@ bool Probe::set_deployed(const bool deploy, const bool no_return/*=false*/) { do_z_clearance(zdest); } - #if EITHER(Z_PROBE_SLED, Z_PROBE_ALLEN_KEY) + #if ANY(Z_PROBE_SLED, Z_PROBE_ALLEN_KEY) if (homing_needed_error(TERN_(Z_PROBE_SLED, _BV(X_AXIS)))) { probe_error_stop(); return true; @@ -588,11 +588,11 @@ bool Probe::set_deployed(const bool deploy, const bool no_return/*=false*/) { bool Probe::probe_down_to_z(const_float_t z, const_feedRate_t fr_mm_s) { DEBUG_SECTION(log_probe, "Probe::probe_down_to_z", DEBUGGING(LEVELING)); - #if BOTH(HAS_HEATED_BED, WAIT_FOR_BED_HEATER) + #if ALL(HAS_HEATED_BED, WAIT_FOR_BED_HEATER) thermalManager.wait_for_bed_heating(); #endif - #if BOTH(HAS_TEMP_HOTEND, WAIT_FOR_HOTEND) + #if ALL(HAS_TEMP_HOTEND, WAIT_FOR_HOTEND) thermalManager.wait_for_hotend_heating(active_extruder); #endif @@ -654,7 +654,7 @@ bool Probe::probe_down_to_z(const_float_t z, const_feedRate_t fr_mm_s) { return true; // Stow in LOW SPEED MODE on every trigger #endif - #if BOTH(HAS_Z_SERVO_PROBE, Z_SERVO_INTERMEDIATE_STOW) + #if ALL(HAS_Z_SERVO_PROBE, Z_SERVO_INTERMEDIATE_STOW) probe_specific_action(false); // Always stow #endif @@ -689,7 +689,7 @@ bool Probe::probe_down_to_z(const_float_t z, const_feedRate_t fr_mm_s) { * @return TRUE if the tare cold not be completed */ bool Probe::tare() { - #if BOTH(PROBE_ACTIVATION_SWITCH, PROBE_TARE_ONLY_WHILE_INACTIVE) + #if ALL(PROBE_ACTIVATION_SWITCH, PROBE_TARE_ONLY_WHILE_INACTIVE) if (endstops.probe_switch_activated()) { if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Cannot tare an active probe"); return true; diff --git a/Marlin/src/module/probe.h b/Marlin/src/module/probe.h index 98b4b107cd4f..05a97d947024 100644 --- a/Marlin/src/module/probe.h +++ b/Marlin/src/module/probe.h @@ -79,7 +79,7 @@ class Probe { static xyz_pos_t offset; - #if EITHER(PREHEAT_BEFORE_PROBING, PREHEAT_BEFORE_LEVELING) + #if ANY(PREHEAT_BEFORE_PROBING, PREHEAT_BEFORE_LEVELING) static void preheat_for_probing(const celsius_t hotend_temp, const celsius_t bed_temp, const bool early=false); #endif diff --git a/Marlin/src/module/scara.cpp b/Marlin/src/module/scara.cpp index 4c42ace884de..9c149670e92e 100644 --- a/Marlin/src/module/scara.cpp +++ b/Marlin/src/module/scara.cpp @@ -39,7 +39,7 @@ float segments_per_second = DEFAULT_SEGMENTS_PER_SECOND; -#if EITHER(MORGAN_SCARA, MP_SCARA) +#if ANY(MORGAN_SCARA, MP_SCARA) static constexpr xy_pos_t scara_offset = { SCARA_OFFSET_X, SCARA_OFFSET_Y }; diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index 28eee57c086f..f9dff246569e 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -56,7 +56,7 @@ #include "../gcode/gcode.h" #include "../MarlinCore.h" -#if EITHER(EEPROM_SETTINGS, SD_FIRMWARE_UPDATE) +#if ANY(EEPROM_SETTINGS, SD_FIRMWARE_UPDATE) #include "../HAL/shared/eeprom_api.h" #endif @@ -695,7 +695,7 @@ void MarlinSettings::postprocess() { #endif } -#if BOTH(PRINTCOUNTER, EEPROM_SETTINGS) +#if ALL(PRINTCOUNTER, EEPROM_SETTINGS) #include "printcounter.h" static_assert( !WITHIN(STATS_EEPROM_ADDRESS, EEPROM_OFFSET, EEPROM_OFFSET + sizeof(SettingsData)) && @@ -739,10 +739,10 @@ void MarlinSettings::postprocess() { // This file simply uses the DEBUG_ECHO macros to implement EEPROM_CHITCHAT. // For deeper debugging of EEPROM issues enable DEBUG_EEPROM_READWRITE. // -#define DEBUG_OUT EITHER(EEPROM_CHITCHAT, DEBUG_LEVELING_FEATURE) +#define DEBUG_OUT ANY(EEPROM_CHITCHAT, DEBUG_LEVELING_FEATURE) #include "../core/debug_out.h" -#if BOTH(EEPROM_CHITCHAT, HOST_PROMPT_SUPPORT) +#if ALL(EEPROM_CHITCHAT, HOST_PROMPT_SUPPORT) #define HOST_EEPROM_CHITCHAT 1 #endif @@ -2803,14 +2803,14 @@ void MarlinSettings::postprocess() { bedlevel.report_state(); if (!bedlevel.sanity_check()) { - #if BOTH(EEPROM_CHITCHAT, DEBUG_LEVELING_FEATURE) + #if ALL(EEPROM_CHITCHAT, DEBUG_LEVELING_FEATURE) bedlevel.echo_name(); DEBUG_ECHOLNPGM(" initialized.\n"); #endif } else { eeprom_error = ERR_EEPROM_CORRUPT; - #if BOTH(EEPROM_CHITCHAT, DEBUG_LEVELING_FEATURE) + #if ALL(EEPROM_CHITCHAT, DEBUG_LEVELING_FEATURE) DEBUG_ECHOPGM("?Can't enable "); bedlevel.echo_name(); DEBUG_ECHOLNPGM("."); @@ -2888,7 +2888,7 @@ void MarlinSettings::postprocess() { return success; } reset(); - #if EITHER(EEPROM_AUTO_INIT, EEPROM_INIT_NOW) + #if ANY(EEPROM_AUTO_INIT, EEPROM_INIT_NOW) (void)save(); SERIAL_ECHO_MSG("EEPROM Initialized"); #endif @@ -3590,7 +3590,7 @@ void MarlinSettings::reset() { postprocess(); - #if EITHER(EEPROM_CHITCHAT, DEBUG_LEVELING_FEATURE) + #if ANY(EEPROM_CHITCHAT, DEBUG_LEVELING_FEATURE) FSTR_P const hdsl = F("Hardcoded Default Settings Loaded"); TERN_(HOST_EEPROM_CHITCHAT, hostui.notify(hdsl)); DEBUG_ECHO_START(); DEBUG_ECHOLNF(hdsl); @@ -3743,7 +3743,7 @@ void MarlinSettings::reset() { // // M666 Endstops Adjustment // - #if EITHER(DELTA, HAS_EXTRA_ENDSTOPS) + #if ANY(DELTA, HAS_EXTRA_ENDSTOPS) gcode.M666_report(forReplay); #endif diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 3188f77da8bb..eb977793efe2 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -148,7 +148,7 @@ Stepper stepper; // Singleton // public: -#if EITHER(HAS_EXTRA_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) +#if ANY(HAS_EXTRA_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) bool Stepper::separate_multi_axis = false; #endif @@ -182,7 +182,7 @@ bool Stepper::abort_current_block; bool Stepper::locked_Y_motor = false, Stepper::locked_Y2_motor = false; #endif -#if EITHER(Z_MULTI_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) +#if ANY(Z_MULTI_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) bool Stepper::locked_Z_motor = false, Stepper::locked_Z2_motor = false #if NUM_Z_STEPPERS >= 3 , Stepper::locked_Z3_motor = false @@ -218,7 +218,7 @@ uint32_t Stepper::advance_divisor = 0, Stepper::decelerate_after, // The count at which to start decelerating Stepper::step_event_count; // The total event count for the current block -#if EITHER(HAS_MULTI_EXTRUDER, MIXING_EXTRUDER) +#if ANY(HAS_MULTI_EXTRUDER, MIXING_EXTRUDER) uint8_t Stepper::stepper_extruder; #else constexpr uint8_t Stepper::stepper_extruder; @@ -1967,7 +1967,7 @@ void Stepper::pulse_phase_isr() { PULSE_PREP(W); #endif - #if EITHER(HAS_E0_STEP, MIXING_EXTRUDER) + #if ANY(HAS_E0_STEP, MIXING_EXTRUDER) PULSE_PREP(E); #if ENABLED(LIN_ADVANCE) @@ -2558,7 +2558,7 @@ hal_timer_t Stepper::block_phase_isr() { * If DeltaA == -DeltaB, the movement is only in the 2nd axis (Y or Z, handled below) * If DeltaA == DeltaB, the movement is only in the 1st axis (X) */ - #if EITHER(COREXY, COREXZ) + #if ANY(COREXY, COREXZ) #define X_CMP(A,B) ((A)==(B)) #else #define X_CMP(A,B) ((A)!=(B)) @@ -2578,7 +2578,7 @@ hal_timer_t Stepper::block_phase_isr() { * If DeltaA == DeltaB, the movement is only in the 1st axis (X or Y) * If DeltaA == -DeltaB, the movement is only in the 2nd axis (Y or Z) */ - #if EITHER(COREYX, COREYZ) + #if ANY(COREYX, COREYZ) #define Y_CMP(A,B) ((A)==(B)) #else #define Y_CMP(A,B) ((A)!=(B)) @@ -2598,7 +2598,7 @@ hal_timer_t Stepper::block_phase_isr() { * If DeltaA == DeltaB, the movement is only in the 1st axis (X or Y, already handled above) * If DeltaA == -DeltaB, the movement is only in the 2nd axis (Z) */ - #if EITHER(COREZX, COREZY) + #if ANY(COREZX, COREZY) #define Z_CMP(A,B) ((A)==(B)) #else #define Z_CMP(A,B) ((A)!=(B)) @@ -2856,7 +2856,7 @@ void Stepper::init() { TERN_(HAS_X2_DIR, X2_DIR_INIT()); #if HAS_Y_DIR Y_DIR_INIT(); - #if BOTH(HAS_Y2_STEPPER, HAS_Y2_DIR) + #if ALL(HAS_Y2_STEPPER, HAS_Y2_DIR) Y2_DIR_INIT(); #endif #endif @@ -2908,7 +2908,7 @@ void Stepper::init() { #endif X_ENABLE_INIT(); if (X_ENABLE_INIT_STATE) X_ENABLE_WRITE(X_ENABLE_INIT_STATE); - #if BOTH(HAS_X2_STEPPER, HAS_X2_ENABLE) + #if ALL(HAS_X2_STEPPER, HAS_X2_ENABLE) X2_ENABLE_INIT(); if (X_ENABLE_INIT_STATE) X2_ENABLE_WRITE(X_ENABLE_INIT_STATE); #endif @@ -2919,7 +2919,7 @@ void Stepper::init() { #endif Y_ENABLE_INIT(); if (Y_ENABLE_INIT_STATE) Y_ENABLE_WRITE(Y_ENABLE_INIT_STATE); - #if BOTH(HAS_Y2_STEPPER, HAS_Y2_ENABLE) + #if ALL(HAS_Y2_STEPPER, HAS_Y2_ENABLE) Y2_ENABLE_INIT(); if (Y_ENABLE_INIT_STATE) Y2_ENABLE_WRITE(Y_ENABLE_INIT_STATE); #endif diff --git a/Marlin/src/module/stepper.h b/Marlin/src/module/stepper.h index a2c9861abc6b..97993193684a 100644 --- a/Marlin/src/module/stepper.h +++ b/Marlin/src/module/stepper.h @@ -290,7 +290,7 @@ class Stepper { public: - #if EITHER(HAS_EXTRA_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) + #if ANY(HAS_EXTRA_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) static bool separate_multi_axis; #endif @@ -337,7 +337,7 @@ class Stepper { #if ENABLED(Y_DUAL_ENDSTOPS) static bool locked_Y_motor, locked_Y2_motor; #endif - #if EITHER(Z_MULTI_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) + #if ANY(Z_MULTI_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) static bool locked_Z_motor, locked_Z2_motor #if NUM_Z_STEPPERS >= 3 , locked_Z3_motor @@ -375,7 +375,7 @@ class Stepper { decelerate_after, // The point from where we need to start decelerating step_event_count; // The total event count for the current block - #if EITHER(HAS_MULTI_EXTRUDER, MIXING_EXTRUDER) + #if ANY(HAS_MULTI_EXTRUDER, MIXING_EXTRUDER) static uint8_t stepper_extruder; #else static constexpr uint8_t stepper_extruder = 0; @@ -547,7 +547,7 @@ class Stepper { static void microstep_readings(); #endif - #if EITHER(HAS_EXTRA_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) + #if ANY(HAS_EXTRA_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) FORCE_INLINE static void set_separate_multi_axis(const bool state) { separate_multi_axis = state; } #endif #if ENABLED(X_DUAL_ENDSTOPS) @@ -558,7 +558,7 @@ class Stepper { FORCE_INLINE static void set_y_lock(const bool state) { locked_Y_motor = state; } FORCE_INLINE static void set_y2_lock(const bool state) { locked_Y2_motor = state; } #endif - #if EITHER(Z_MULTI_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) + #if ANY(Z_MULTI_ENDSTOPS, Z_STEPPER_AUTO_ALIGN) FORCE_INLINE static void set_z1_lock(const bool state) { locked_Z_motor = state; } FORCE_INLINE static void set_z2_lock(const bool state) { locked_Z2_motor = state; } #if NUM_Z_STEPPERS >= 3 diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index f785a683eb4a..315cf8883089 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -37,7 +37,7 @@ #include "planner.h" #include "printcounter.h" -#if EITHER(HAS_COOLER, LASER_COOLANT_FLOW_METER) +#if ANY(HAS_COOLER, LASER_COOLANT_FLOW_METER) #include "../feature/cooler.h" #include "../feature/spindle_laser.h" #endif @@ -156,7 +156,7 @@ #include "probe.h" #endif -#if EITHER(MPCTEMP, PID_EXTRUSION_SCALING) +#if ANY(MPCTEMP, PID_EXTRUSION_SCALING) #include "stepper.h" #endif @@ -373,7 +373,7 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED); redundant_info_t Temperature::temp_redundant; #endif -#if EITHER(AUTO_POWER_E_FANS, HAS_FANCHECK) +#if ANY(AUTO_POWER_E_FANS, HAS_FANCHECK) uint8_t Temperature::autofan_speed[HOTENDS] = ARRAY_N_1(HOTENDS, FAN_OFF_PWM); #endif @@ -385,7 +385,7 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED); uint8_t Temperature::coolerfan_speed = FAN_OFF_PWM; #endif -#if BOTH(FAN_SOFT_PWM, USE_CONTROLLER_FAN) +#if ALL(FAN_SOFT_PWM, USE_CONTROLLER_FAN) uint8_t Temperature::soft_pwm_controller_speed = FAN_OFF_PWM; #endif @@ -439,7 +439,7 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED); #endif - #if EITHER(PROBING_FANS_OFF, ADVANCED_PAUSE_FANS_PAUSE) + #if ANY(PROBING_FANS_OFF, ADVANCED_PAUSE_FANS_PAUSE) bool Temperature::fans_paused; // = false; uint8_t Temperature::saved_fan_speed[FAN_COUNT] = ARRAY_N_1(FAN_COUNT, FAN_OFF_PWM); #endif @@ -489,7 +489,7 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED); } #endif - #if EITHER(PROBING_FANS_OFF, ADVANCED_PAUSE_FANS_PAUSE) + #if ANY(PROBING_FANS_OFF, ADVANCED_PAUSE_FANS_PAUSE) void Temperature::set_fans_paused(const bool p) { if (p != fans_paused) { @@ -573,7 +573,7 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED); raw_adc_t Temperature::maxtemp_raw_SOC = TEMP_SENSOR_SOC_RAW_HI_TEMP; #endif -#if BOTH(HAS_MARLINUI_MENU, PREVENT_COLD_EXTRUSION) && E_MANUAL > 0 +#if ALL(HAS_MARLINUI_MENU, PREVENT_COLD_EXTRUSION) && E_MANUAL > 0 bool Temperature::allow_cold_extrude_override = false; #else constexpr bool Temperature::allow_cold_extrude_override; @@ -698,15 +698,15 @@ volatile bool Temperature::raw_temps_ready = false; #define ONHEATINGSTART() C_TERN(ischamber, printerEventLEDs.onChamberHeatingStart(), B_TERN(isbed, printerEventLEDs.onBedHeatingStart(), printerEventLEDs.onHotendHeatingStart())) #define ONHEATING(S,C,T) C_TERN(ischamber, printerEventLEDs.onChamberHeating(S,C,T), B_TERN(isbed, printerEventLEDs.onBedHeating(S,C,T), printerEventLEDs.onHotendHeating(S,C,T))) - #define WATCH_PID DISABLED(NO_WATCH_PID_TUNING) && (BOTH(WATCH_CHAMBER, PIDTEMPCHAMBER) || BOTH(WATCH_BED, PIDTEMPBED) || BOTH(WATCH_HOTENDS, PIDTEMP)) + #define WATCH_PID DISABLED(NO_WATCH_PID_TUNING) && (ALL(WATCH_CHAMBER, PIDTEMPCHAMBER) || ALL(WATCH_BED, PIDTEMPBED) || ALL(WATCH_HOTENDS, PIDTEMP)) #if WATCH_PID - #if BOTH(THERMAL_PROTECTION_CHAMBER, PIDTEMPCHAMBER) + #if ALL(THERMAL_PROTECTION_CHAMBER, PIDTEMPCHAMBER) #define C_GTV(T,A,B) ((T) ? (A) : (B)) #else #define C_GTV(T,A,B) (B) #endif - #if BOTH(THERMAL_PROTECTION_BED, PIDTEMPBED) + #if ALL(THERMAL_PROTECTION_BED, PIDTEMPBED) #define B_GTV(T,A,B) ((T) ? (A) : (B)) #else #define B_GTV(T,A,B) (B) @@ -835,7 +835,7 @@ volatile bool Temperature::raw_temps_ready = false; // Make sure heating is actually working #if WATCH_PID - if (BOTH(WATCH_BED, WATCH_HOTENDS) || isbed == DISABLED(WATCH_HOTENDS) || ischamber == DISABLED(WATCH_HOTENDS)) { + if (ALL(WATCH_BED, WATCH_HOTENDS) || isbed == DISABLED(WATCH_HOTENDS) || ischamber == DISABLED(WATCH_HOTENDS)) { if (!heated) { // If not yet reached target... if (current_temp > next_watch_temp) { // Over the watch temp? next_watch_temp = current_temp + watch_temp_increase; // - set the next temp to watch for @@ -868,7 +868,7 @@ volatile bool Temperature::raw_temps_ready = false; SERIAL_ECHOPGM(STR_PID_AUTOTUNE); SERIAL_ECHOLNPGM(STR_PID_AUTOTUNE_FINISHED); TERN_(HOST_PROMPT_SUPPORT, hostui.notify(GET_TEXT_F(MSG_PID_AUTOTUNE_DONE))); - #if EITHER(PIDTEMPBED, PIDTEMPCHAMBER) + #if ANY(PIDTEMPBED, PIDTEMPCHAMBER) FSTR_P const estring = GHV(F("chamber"), F("bed"), FPSTR(NUL_STR)); say_default_(); SERIAL_ECHOF(estring); SERIAL_ECHOLNPGM("Kp ", tune_pid.p); say_default_(); SERIAL_ECHOF(estring); SERIAL_ECHOLNPGM("Ki ", tune_pid.i); @@ -939,7 +939,7 @@ volatile bool Temperature::raw_temps_ready = false; #if ENABLED(MPC_AUTOTUNE) - #if EITHER(MPC_FAN_0_ALL_HOTENDS, MPC_FAN_0_ACTIVE_HOTEND) + #if ANY(MPC_FAN_0_ALL_HOTENDS, MPC_FAN_0_ACTIVE_HOTEND) #define SINGLEFAN 1 #endif @@ -1416,13 +1416,13 @@ int16_t Temperature::getHeaterPower(const heater_id_t heater_id) { break; #endif default: - #if EITHER(AUTO_POWER_E_FANS, HAS_FANCHECK) + #if ANY(AUTO_POWER_E_FANS, HAS_FANCHECK) autofan_speed[realFan] = fan_on ? EXTRUDER_AUTO_FAN_SPEED : 0; #endif break; } - #if BOTH(HAS_FANCHECK, HAS_PWMFANCHECK) + #if ALL(HAS_FANCHECK, HAS_PWMFANCHECK) #define _AUTOFAN_SPEED() fan_check.is_measuring() ? 255 : EXTRUDER_AUTO_FAN_SPEED #else #define _AUTOFAN_SPEED() EXTRUDER_AUTO_FAN_SPEED @@ -1789,7 +1789,7 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { } #endif // WATCH_BED - #if BOTH(PROBING_HEATERS_OFF, BED_LIMIT_SWITCHING) + #if ALL(PROBING_HEATERS_OFF, BED_LIMIT_SWITCHING) #define PAUSE_CHANGE_REQD 1 #endif @@ -1877,11 +1877,11 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { } #endif - #if EITHER(CHAMBER_FAN, CHAMBER_VENT) || DISABLED(PIDTEMPCHAMBER) + #if ANY(CHAMBER_FAN, CHAMBER_VENT) || DISABLED(PIDTEMPCHAMBER) static bool flag_chamber_excess_heat; // = false; #endif - #if EITHER(CHAMBER_FAN, CHAMBER_VENT) + #if ANY(CHAMBER_FAN, CHAMBER_VENT) static bool flag_chamber_off; // = false if (temp_chamber.target > CHAMBER_MINTEMP) { @@ -2646,22 +2646,22 @@ void Temperature::updateTemperaturesFromRawValues() { if (temp_bed.target > 0 && !is_bed_preheating() && TP_CMP(BED, mintemp_raw_BED, temp_bed.getraw())) mintemp_error(H_BED); #endif - #if BOTH(HAS_HEATED_CHAMBER, THERMAL_PROTECTION_CHAMBER) + #if ALL(HAS_HEATED_CHAMBER, THERMAL_PROTECTION_CHAMBER) if (TP_CMP(CHAMBER, temp_chamber.getraw(), maxtemp_raw_CHAMBER)) maxtemp_error(H_CHAMBER); if (temp_chamber.target > 0 && TP_CMP(CHAMBER, mintemp_raw_CHAMBER, temp_chamber.getraw())) mintemp_error(H_CHAMBER); #endif - #if BOTH(HAS_COOLER, THERMAL_PROTECTION_COOLER) + #if ALL(HAS_COOLER, THERMAL_PROTECTION_COOLER) if (cutter.unitPower > 0 && TP_CMP(COOLER, temp_cooler.getraw(), maxtemp_raw_COOLER)) maxtemp_error(H_COOLER); if (TP_CMP(COOLER, mintemp_raw_COOLER, temp_cooler.getraw())) mintemp_error(H_COOLER); #endif - #if BOTH(HAS_TEMP_BOARD, THERMAL_PROTECTION_BOARD) + #if ALL(HAS_TEMP_BOARD, THERMAL_PROTECTION_BOARD) if (TP_CMP(BOARD, temp_board.getraw(), maxtemp_raw_BOARD)) maxtemp_error(H_BOARD); if (TP_CMP(BOARD, mintemp_raw_BOARD, temp_board.getraw())) mintemp_error(H_BOARD); #endif - #if BOTH(HAS_TEMP_SOC, THERMAL_PROTECTION_SOC) + #if ALL(HAS_TEMP_SOC, THERMAL_PROTECTION_SOC) if (TP_CMP(SOC, temp_soc.getraw(), maxtemp_raw_SOC)) maxtemp_error(H_SOC); #endif #undef TP_CMP @@ -3011,12 +3011,12 @@ void Temperature::init() { while (analog_to_celsius_cooler(maxtemp_raw_COOLER) < COOLER_MAXTEMP) maxtemp_raw_COOLER -= TEMPDIR(COOLER) * (OVERSAMPLENR); #endif - #if BOTH(HAS_TEMP_BOARD, THERMAL_PROTECTION_BOARD) + #if ALL(HAS_TEMP_BOARD, THERMAL_PROTECTION_BOARD) while (analog_to_celsius_board(mintemp_raw_BOARD) < BOARD_MINTEMP) mintemp_raw_BOARD += TEMPDIR(BOARD) * (OVERSAMPLENR); while (analog_to_celsius_board(maxtemp_raw_BOARD) > BOARD_MAXTEMP) maxtemp_raw_BOARD -= TEMPDIR(BOARD) * (OVERSAMPLENR); #endif - #if BOTH(HAS_TEMP_SOC, THERMAL_PROTECTION_SOC) + #if ALL(HAS_TEMP_SOC, THERMAL_PROTECTION_SOC) while (analog_to_celsius_soc(maxtemp_raw_SOC) > SOC_MAXTEMP) maxtemp_raw_SOC -= OVERSAMPLENR; #endif @@ -3272,7 +3272,7 @@ void Temperature::disable_all_heaters() { #endif // PROBING_HEATERS_OFF -#if EITHER(SINGLENOZZLE_STANDBY_TEMP, SINGLENOZZLE_STANDBY_FAN) +#if ANY(SINGLENOZZLE_STANDBY_TEMP, SINGLENOZZLE_STANDBY_FAN) void Temperature::singlenozzle_change(const uint8_t old_tool, const uint8_t new_tool) { #if ENABLED(SINGLENOZZLE_STANDBY_FAN) @@ -3641,7 +3641,7 @@ void Temperature::isr() { static SoftPWM soft_pwm_cooler; #endif - #if BOTH(FAN_SOFT_PWM, USE_CONTROLLER_FAN) + #if ALL(FAN_SOFT_PWM, USE_CONTROLLER_FAN) static SoftPWM soft_pwm_controller; #endif diff --git a/Marlin/src/module/temperature.h b/Marlin/src/module/temperature.h index c4dae4c6e5a7..9d1d68cf0b00 100644 --- a/Marlin/src/module/temperature.h +++ b/Marlin/src/module/temperature.h @@ -369,7 +369,7 @@ typedef struct { float p, i, d, c, f; } raw_pidcf_t; }; typedef - #if BOTH(PID_EXTRUSION_SCALING, PID_FAN_SCALING) + #if ALL(PID_EXTRUSION_SCALING, PID_FAN_SCALING) PIDCF_t<0, PID_MAX, LPQ_MAX_LEN, PID_FAN_SCALING_MIN_SPEED, PID_FAN_SCALING_LIN_FACTOR> #elif ENABLED(PID_EXTRUSION_SCALING) PIDC_t<0, PID_MAX, LPQ_MAX_LEN> @@ -409,7 +409,7 @@ typedef struct { float p, i, d, c, f; } raw_pidcf_t; #endif -#if ENABLED(G26_MESH_VALIDATION) && EITHER(HAS_MARLINUI_MENU, EXTENSIBLE_UI) +#if ENABLED(G26_MESH_VALIDATION) && ANY(HAS_MARLINUI_MENU, EXTENSIBLE_UI) #define G26_CLICK_CAN_CANCEL 1 #endif @@ -485,7 +485,7 @@ struct PIDHeaterInfo : public HeaterInfo { #if HAS_TEMP_PROBE typedef temp_info_t probe_info_t; #endif -#if EITHER(HAS_COOLER, HAS_TEMP_COOLER) +#if ANY(HAS_COOLER, HAS_TEMP_COOLER) typedef heater_info_t cooler_info_t; #endif #if HAS_TEMP_BOARD @@ -628,7 +628,7 @@ class Temperature { static redundant_info_t temp_redundant; #endif - #if EITHER(AUTO_POWER_E_FANS, HAS_FANCHECK) + #if ANY(AUTO_POWER_E_FANS, HAS_FANCHECK) static uint8_t autofan_speed[HOTENDS]; #endif #if ENABLED(AUTO_POWER_CHAMBER_FAN) @@ -643,11 +643,11 @@ class Temperature { soft_pwm_count_fan[FAN_COUNT]; #endif - #if BOTH(FAN_SOFT_PWM, USE_CONTROLLER_FAN) + #if ALL(FAN_SOFT_PWM, USE_CONTROLLER_FAN) static uint8_t soft_pwm_controller_speed; #endif - #if BOTH(HAS_MARLINUI_MENU, PREVENT_COLD_EXTRUSION) && E_MANUAL > 0 + #if ALL(HAS_MARLINUI_MENU, PREVENT_COLD_EXTRUSION) && E_MANUAL > 0 static bool allow_cold_extrude_override; static void set_menu_cold_override(const bool allow) { allow_cold_extrude_override = allow; } #else @@ -671,7 +671,7 @@ class Temperature { static bool hotEnoughToExtrude(const uint8_t e) { return !tooColdToExtrude(e); } static bool targetHotEnoughToExtrude(const uint8_t e) { return !targetTooColdToExtrude(e); } - #if EITHER(SINGLENOZZLE_STANDBY_TEMP, SINGLENOZZLE_STANDBY_FAN) + #if ANY(SINGLENOZZLE_STANDBY_TEMP, SINGLENOZZLE_STANDBY_FAN) #if ENABLED(SINGLENOZZLE_STANDBY_TEMP) static celsius_t singlenozzle_temp[EXTRUDERS]; #endif @@ -767,11 +767,11 @@ class Temperature { static raw_adc_t mintemp_raw_COOLER, maxtemp_raw_COOLER; #endif - #if BOTH(HAS_TEMP_BOARD, THERMAL_PROTECTION_BOARD) + #if ALL(HAS_TEMP_BOARD, THERMAL_PROTECTION_BOARD) static raw_adc_t mintemp_raw_BOARD, maxtemp_raw_BOARD; #endif - #if BOTH(HAS_TEMP_SOC, THERMAL_PROTECTION_SOC) + #if ALL(HAS_TEMP_SOC, THERMAL_PROTECTION_SOC) static raw_adc_t maxtemp_raw_SOC; #endif @@ -885,7 +885,7 @@ class Temperature { static void report_fan_speed(const uint8_t fan); #endif - #if EITHER(PROBING_FANS_OFF, ADVANCED_PAUSE_FANS_PAUSE) + #if ANY(PROBING_FANS_OFF, ADVANCED_PAUSE_FANS_PAUSE) static bool fans_paused; static uint8_t saved_fan_speed[FAN_COUNT]; #endif @@ -913,7 +913,7 @@ class Temperature { static void set_temp_fan_speed(const uint8_t fan, const uint16_t command_or_speed); #endif - #if EITHER(PROBING_FANS_OFF, ADVANCED_PAUSE_FANS_PAUSE) + #if ANY(PROBING_FANS_OFF, ADVANCED_PAUSE_FANS_PAUSE) void set_fans_paused(const bool p); #endif diff --git a/Marlin/src/module/tool_change.cpp b/Marlin/src/module/tool_change.cpp index cce3669355e1..d4c2fcb675d1 100644 --- a/Marlin/src/module/tool_change.cpp +++ b/Marlin/src/module/tool_change.cpp @@ -1165,7 +1165,7 @@ void tool_change(const uint8_t new_tool, bool no_move/*=false*/) { if (new_tool != old_tool || TERN0(PARKING_EXTRUDER, extruder_parked)) { // PARKING_EXTRUDER may need to attach old_tool when homing destination = current_position; - #if BOTH(TOOLCHANGE_FILAMENT_SWAP, HAS_FAN) && TOOLCHANGE_FS_FAN >= 0 + #if ALL(TOOLCHANGE_FILAMENT_SWAP, HAS_FAN) && TOOLCHANGE_FS_FAN >= 0 // Store and stop fan. Restored on any exit. REMEMBER(fan, thermalManager.fan_speed[TOOLCHANGE_FS_FAN], 0); #endif @@ -1277,7 +1277,7 @@ void tool_change(const uint8_t new_tool, bool no_move/*=false*/) { fast_line_to_current(Z_AXIS); } move_nozzle_servo(new_tool); - #elif EITHER(MECHANICAL_SWITCHING_EXTRUDER, MECHANICAL_SWITCHING_NOZZLE) + #elif ANY(MECHANICAL_SWITCHING_EXTRUDER, MECHANICAL_SWITCHING_NOZZLE) if (!no_move) { current_position.z = _MIN(current_position.z + toolchange_settings.z_raise, _MIN(TERN(HAS_SOFTWARE_ENDSTOPS, soft_endstop.max.z, Z_MAX_POS), Z_MAX_POS)); fast_line_to_current(Z_AXIS); @@ -1308,7 +1308,7 @@ void tool_change(const uint8_t new_tool, bool no_move/*=false*/) { const bool should_move = safe_to_move && !no_move && IsRunning(); if (should_move) { - #if EITHER(SINGLENOZZLE_STANDBY_TEMP, SINGLENOZZLE_STANDBY_FAN) + #if ANY(SINGLENOZZLE_STANDBY_TEMP, SINGLENOZZLE_STANDBY_FAN) thermalManager.singlenozzle_change(old_tool, new_tool); #endif @@ -1469,7 +1469,7 @@ void tool_change(const uint8_t new_tool, bool no_move/*=false*/) { // If using MECHANICAL_SWITCHING extruder/nozzle, set HOTEND_OFFSET in Z axis after running EVENT_GCODE_TOOLCHANGE // so that nozzle does not lower below print surface if new hotend Z offset is higher than old hotend Z offset. - #if EITHER(MECHANICAL_SWITCHING_EXTRUDER, MECHANICAL_SWITCHING_NOZZLE) + #if ANY(MECHANICAL_SWITCHING_EXTRUDER, MECHANICAL_SWITCHING_NOZZLE) #if HAS_HOTEND_OFFSET xyz_pos_t diff = hotend_offset[new_tool] - hotend_offset[old_tool]; TERN_(DUAL_X_CARRIAGE, diff.x = 0); diff --git a/Marlin/src/pins/esp32/pins_GODI_CONTROLLER_V1_0.h b/Marlin/src/pins/esp32/pins_GODI_CONTROLLER_V1_0.h index 35fc4e035d81..6f8046988e37 100644 --- a/Marlin/src/pins/esp32/pins_GODI_CONTROLLER_V1_0.h +++ b/Marlin/src/pins/esp32/pins_GODI_CONTROLLER_V1_0.h @@ -129,7 +129,7 @@ // Heaters / Fans // -#if EITHER(EDUTRONICS_12864OLED_SH1106, EDUTRONICS_12864OLED_SSD1306) +#if ANY(EDUTRONICS_12864OLED_SH1106, EDUTRONICS_12864OLED_SSD1306) #define LCDSCREEN_NAME "EDUTRONICS 12864 OLED" #define BTN_EN2 1 #define BTN_EN1 3 diff --git a/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h b/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h index 546fa82c0d9f..2dea1edacc59 100644 --- a/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h +++ b/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h @@ -177,7 +177,7 @@ #if SD_CONNECTION_IS(ONBOARD) #define FORCE_SOFT_SPI #endif - #if BOTH(MKS_MINI_12864_V3, HAS_MEDIA) + #if ALL(MKS_MINI_12864_V3, HAS_MEDIA) #define PAUSE_LCD_FOR_BUSY_SD #endif #else diff --git a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h index 4f32304dde9d..19ea927531b8 100644 --- a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h +++ b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h @@ -477,7 +477,7 @@ #define LCD_PINS_EN 51 // SID (MOSI) #define LCD_PINS_D4 52 // SCK (CLK) clock - #elif BOTH(IS_NEWPANEL, PANEL_ONE) + #elif ALL(IS_NEWPANEL, PANEL_ONE) #define LCD_PINS_RS 40 #define LCD_PINS_EN 42 @@ -509,7 +509,7 @@ #else - #if EITHER(MKS_12864OLED, MKS_12864OLED_SSD1306) + #if ANY(MKS_12864OLED, MKS_12864OLED_SSD1306) #define LCD_PINS_DC 25 // Set as output on init #define LCD_PINS_RS 27 // Pull low for 1s to init // DOGM SPI LCD Support @@ -593,7 +593,7 @@ #define LCD_SDSS SDSS #define SD_DETECT_PIN 49 - #elif EITHER(VIKI2, miniVIKI) + #elif ANY(VIKI2, miniVIKI) #define DOGLCD_CS 45 #define DOGLCD_A0 44 diff --git a/Marlin/src/pins/lpc1768/pins_BIQU_B300_V1.0.h b/Marlin/src/pins/lpc1768/pins_BIQU_B300_V1.0.h index 423c89b8c949..c498af3a64d9 100644 --- a/Marlin/src/pins/lpc1768/pins_BIQU_B300_V1.0.h +++ b/Marlin/src/pins/lpc1768/pins_BIQU_B300_V1.0.h @@ -130,7 +130,7 @@ #define LCD_PINS_EN P0_18 // (MOSI) EXP1-3 #define LCD_PINS_D4 P0_15 // (SCK) EXP1-5 - #if BOTH(HAS_MARLINUI_HD44780, IS_RRD_SC) + #if ALL(HAS_MARLINUI_HD44780, IS_RRD_SC) #error "REPRAP_DISCOUNT_SMART_CONTROLLER displays aren't supported by the BIQU B300 v1.0" #endif diff --git a/Marlin/src/pins/lpc1768/pins_BIQU_BQ111_A4.h b/Marlin/src/pins/lpc1768/pins_BIQU_BQ111_A4.h index 278ba12dd508..3fb29b90929d 100644 --- a/Marlin/src/pins/lpc1768/pins_BIQU_BQ111_A4.h +++ b/Marlin/src/pins/lpc1768/pins_BIQU_BQ111_A4.h @@ -107,7 +107,7 @@ #define LCD_PINS_EN P0_18 // (MOSI) EXP1-3 #define LCD_PINS_D4 P0_15 // (SCK) EXP1-5 - #if BOTH(HAS_MARLINUI_HD44780, IS_RRD_SC) + #if ALL(HAS_MARLINUI_HD44780, IS_RRD_SC) #error "REPRAP_DISCOUNT_SMART_CONTROLLER displays aren't supported by the BIQU BQ111-A4" #endif diff --git a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h index ec21a1b39dda..8cca8ec44081 100644 --- a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h +++ b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h @@ -407,7 +407,7 @@ #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h index 9aa6a2b21b02..a3fb8f648875 100644 --- a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h +++ b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h @@ -450,7 +450,7 @@ #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/lpc1768/pins_BTT_SKR_common.h b/Marlin/src/pins/lpc1768/pins_BTT_SKR_common.h index 2b01b4ce6f9a..75eea8e0f6ca 100644 --- a/Marlin/src/pins/lpc1768/pins_BTT_SKR_common.h +++ b/Marlin/src/pins/lpc1768/pins_BTT_SKR_common.h @@ -27,8 +27,8 @@ // https://github.com/bigtreetech/BTT-Expansion-module/tree/master/BTT%20EXP-MOT //#define BTT_MOTOR_EXPANSION -#if BOTH(HAS_WIRED_LCD, BTT_MOTOR_EXPANSION) - #if EITHER(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) +#if ALL(HAS_WIRED_LCD, BTT_MOTOR_EXPANSION) + #if ANY(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) #define EXP_MOT_USE_EXP2_ONLY 1 #else #error "You can't use both an LCD and a Motor Expansion Module on EXP1/EXP2 at the same time." diff --git a/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h b/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h index 6d76fb2c8fcc..a4150aa22f21 100644 --- a/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h +++ b/Marlin/src/pins/lpc1768/pins_MKS_SBASE.h @@ -240,7 +240,7 @@ #define LCD_SDSS P0_28 // EXP2.4 #define LCD_PINS_EN P0_18 // EXP1.3 #define LCD_PINS_D4 P0_15 // EXP1.5 - #if EITHER(VIKI2, miniVIKI) + #if ANY(VIKI2, miniVIKI) #define DOGLCD_SCK SD_SCK_PIN #define DOGLCD_MOSI SD_MOSI_PIN #endif @@ -265,7 +265,7 @@ //#define FORCE_SOFT_SPI // Use this if default of hardware SPI causes display problems // results in LCD soft SPI mode 3, SD soft SPI mode 0 - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN P2_12 // J8-4 (LCD_D6 on FYSETC schematic) #endif diff --git a/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h b/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h index 54a91e364d1f..42a0155471b2 100644 --- a/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h +++ b/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h @@ -371,7 +371,7 @@ #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h b/Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h index a6341ec5295d..f3b134cd36f4 100644 --- a/Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h +++ b/Marlin/src/pins/lpc1768/pins_RAMPS_RE_ARM.h @@ -207,9 +207,9 @@ #endif #ifndef FAN0_PIN - #if EITHER(FET_ORDER_EFB, FET_ORDER_EFF) // Hotend, Fan, Bed or Hotend, Fan, Fan + #if ANY(FET_ORDER_EFB, FET_ORDER_EFF) // Hotend, Fan, Bed or Hotend, Fan, Fan #define FAN0_PIN MOSFET_B_PIN - #elif EITHER(FET_ORDER_EEF, FET_ORDER_SF) // Hotend, Hotend, Fan or Spindle, Fan + #elif ANY(FET_ORDER_EEF, FET_ORDER_SF) // Hotend, Hotend, Fan or Spindle, Fan #define FAN0_PIN MOSFET_C_PIN #elif FET_ORDER_EEB // Hotend, Hotend, Bed #define FAN0_PIN P1_18 // (4) IO pin. Buffer needed @@ -353,7 +353,7 @@ //#define SHIFT_EN_PIN P1_22 // (41) J5-4 & AUX-4 #endif - #if EITHER(VIKI2, miniVIKI) + #if ANY(VIKI2, miniVIKI) #define DOGLCD_CS P0_16 // (16) #define DOGLCD_A0 P2_06 // (59) J3-8 & AUX-2 #define DOGLCD_SCK P0_15 // (52) (SCK) J3-9 & AUX-3 @@ -378,7 +378,7 @@ #define LCD_RESET_PIN P0_16 // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN P1_00 #endif diff --git a/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_GT.h b/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_GT.h index 5899cb0f503a..8412f1c12d3b 100644 --- a/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_GT.h +++ b/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_GT.h @@ -108,7 +108,7 @@ // // Display // -#if EITHER(VIKI2, miniVIKI) +#if ANY(VIKI2, miniVIKI) #define BEEPER_PIN P1_31 #define DOGLCD_A0 P2_06 #define DOGLCD_CS P0_16 diff --git a/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_MINI.h b/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_MINI.h index 1a8192bafe20..92e97ca8753d 100644 --- a/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_MINI.h +++ b/Marlin/src/pins/lpc1769/pins_AZTEEG_X5_MINI.h @@ -158,7 +158,7 @@ //#define SHIFT_EN_PIN P1_22 // (41) J5-4 & AUX-4 #endif - #if EITHER(VIKI2, miniVIKI) + #if ANY(VIKI2, miniVIKI) #define BEEPER_PIN P1_30 // (37) may change if cable changes #define DOGLCD_CS P0_26 // (63) J5-3 & AUX-2 #define DOGLCD_SCK SD_SCK_PIN diff --git a/Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h b/Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h index 2e04f7869a73..966ff5ef957f 100644 --- a/Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h +++ b/Marlin/src/pins/lpc1769/pins_BTT_SKR_E3_TURBO.h @@ -260,7 +260,7 @@ #define LCD_PINS_D7 EXP1_01_PIN #define ADC_KEYPAD_PIN P1_23 // Repurpose servo pin for ADC - CONNECTING TO 5V WILL DAMAGE THE BOARD! - #elif EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY) + #elif ANY(MKS_MINI_12864, ENDER2_STOCKDISPLAY) #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN diff --git a/Marlin/src/pins/lpc1769/pins_COHESION3D_REMIX.h b/Marlin/src/pins/lpc1769/pins_COHESION3D_REMIX.h index f86cd5d3c695..362aafe12e75 100644 --- a/Marlin/src/pins/lpc1769/pins_COHESION3D_REMIX.h +++ b/Marlin/src/pins/lpc1769/pins_COHESION3D_REMIX.h @@ -190,7 +190,7 @@ // A custom EXP1 cable is required colored LEDs. Pins 1-5, 9, 10 of the cable go to pins 1-5, 9, 10 // on the board's EXP1 connector. Pins 6, 7, and 8 of the EXP1 cable go to the Ethernet connector. // Rev 1.2 displays do NOT require the RGB LEDs. 2.0 and 2.1 displays do require RGB. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN P1_16 // EXP1-6 => Ethernet pin 6 (top row, 3 from left) #endif diff --git a/Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h b/Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h index e8c48c1b7a58..ba781466232e 100644 --- a/Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h +++ b/Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h @@ -389,7 +389,7 @@ #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/lpc1769/pins_SMOOTHIEBOARD.h b/Marlin/src/pins/lpc1769/pins_SMOOTHIEBOARD.h index 3e7e784b59ab..3db18e4acfea 100644 --- a/Marlin/src/pins/lpc1769/pins_SMOOTHIEBOARD.h +++ b/Marlin/src/pins/lpc1769/pins_SMOOTHIEBOARD.h @@ -93,7 +93,7 @@ // // LCD / Controller // -#if EITHER(VIKI2, miniVIKI) +#if ANY(VIKI2, miniVIKI) #define BEEPER_PIN P1_31 #define DOGLCD_A0 P2_11 diff --git a/Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h b/Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h index 1982652af6c5..634e50c223af 100644 --- a/Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h +++ b/Marlin/src/pins/lpc1769/pins_TH3D_EZBOARD.h @@ -217,7 +217,7 @@ #endif -#if EITHER(CR10_STOCKDISPLAY, MKS_MINI_12864) +#if ANY(CR10_STOCKDISPLAY, MKS_MINI_12864) #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN #define BTN_ENC EXP1_02_PIN diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index 6ee6401badfc..77c2fc803737 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -61,7 +61,7 @@ #endif #endif -#if !(BOTH(HAS_WIRED_LCD, IS_NEWPANEL) && ANY(PANEL_ONE, VIKI2, miniVIKI, WYH_L12864, MINIPANEL, REPRAPWORLD_KEYPAD)) +#if !(ALL(HAS_WIRED_LCD, IS_NEWPANEL) && ANY(PANEL_ONE, VIKI2, miniVIKI, WYH_L12864, MINIPANEL, REPRAPWORLD_KEYPAD)) #define HAS_FREE_AUX2_PINS 1 #endif @@ -93,7 +93,7 @@ #if _ENDSTOP_IS_ANY(Y_MIN_PIN) || _ENDSTOP_IS_ANY(Y_MAX_PIN) #define NEEDS_Y_MINMAX 1 #endif -#if _ENDSTOP_IS_ANY(Z_MIN_PIN) || _ENDSTOP_IS_ANY(Z_MAX_PIN) || BOTH(Z_HOME_TO_MAX, Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) +#if _ENDSTOP_IS_ANY(Z_MIN_PIN) || _ENDSTOP_IS_ANY(Z_MAX_PIN) || ALL(Z_HOME_TO_MAX, Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) #define NEEDS_Z_MINMAX 1 #endif #undef _ENDSTOP_IS_ANY diff --git a/Marlin/src/pins/pinsDebug.h b/Marlin/src/pins/pinsDebug.h index 3219b1b7a243..a342d546c48c 100644 --- a/Marlin/src/pins/pinsDebug.h +++ b/Marlin/src/pins/pinsDebug.h @@ -100,7 +100,7 @@ const PinInfo pin_array[] PROGMEM = { */ #if SERIAL_IN_USE(0) - #if EITHER(AVR_ATmega2560_FAMILY, ARDUINO_ARCH_SAM) + #if ANY(AVR_ATmega2560_FAMILY, ARDUINO_ARCH_SAM) { RXD_NAME_0, 0, true }, { TXD_NAME_0, 1, true }, #elif AVR_ATmega1284_FAMILY @@ -113,7 +113,7 @@ const PinInfo pin_array[] PROGMEM = { #endif #if SERIAL_IN_USE(1) - #if EITHER(AVR_ATmega2560_FAMILY, ARDUINO_ARCH_SAM) + #if ANY(AVR_ATmega2560_FAMILY, ARDUINO_ARCH_SAM) { RXD_NAME_1, 19, true }, { TXD_NAME_1, 18, true }, #elif AVR_ATmega1284_FAMILY @@ -131,7 +131,7 @@ const PinInfo pin_array[] PROGMEM = { #endif #if SERIAL_IN_USE(2) - #if EITHER(AVR_ATmega2560_FAMILY, ARDUINO_ARCH_SAM) + #if ANY(AVR_ATmega2560_FAMILY, ARDUINO_ARCH_SAM) { RXD_NAME_2, 17, true }, { TXD_NAME_2, 16, true }, #elif defined(TARGET_LPC1768) @@ -146,7 +146,7 @@ const PinInfo pin_array[] PROGMEM = { #endif #if SERIAL_IN_USE(3) - #if EITHER(AVR_ATmega2560_FAMILY, ARDUINO_ARCH_SAM) + #if ANY(AVR_ATmega2560_FAMILY, ARDUINO_ARCH_SAM) { RXD_NAME_3, 15, true }, { TXD_NAME_3, 14, true }, #elif defined(TARGET_LPC1768) diff --git a/Marlin/src/pins/rambo/pins_RAMBO.h b/Marlin/src/pins/rambo/pins_RAMBO.h index e1ddf972d995..ba8046d6d0fb 100644 --- a/Marlin/src/pins/rambo/pins_RAMBO.h +++ b/Marlin/src/pins/rambo/pins_RAMBO.h @@ -212,7 +212,7 @@ #define LCD_PINS_D6 74 #define LCD_PINS_D7 75 - #if EITHER(VIKI2, miniVIKI) + #if ANY(VIKI2, miniVIKI) #define BEEPER_PIN 44 // NB: Panucatt's Viki 2.0 wiring diagram (v1.2) indicates that the // beeper/buzzer is connected to pin 33; however, the pin used in the diff --git a/Marlin/src/pins/rambo/pins_SCOOVO_X9H.h b/Marlin/src/pins/rambo/pins_SCOOVO_X9H.h index f0e107f398c0..0d212010e065 100644 --- a/Marlin/src/pins/rambo/pins_SCOOVO_X9H.h +++ b/Marlin/src/pins/rambo/pins_SCOOVO_X9H.h @@ -143,7 +143,7 @@ #define HOME_PIN BTN_HOME -#if EITHER(VIKI2, miniVIKI) +#if ANY(VIKI2, miniVIKI) #define BEEPER_PIN 44 // Pins for DOGM SPI LCD Support #define DOGLCD_A0 70 diff --git a/Marlin/src/pins/ramps/pins_3DRAG.h b/Marlin/src/pins/ramps/pins_3DRAG.h index 6f57b0eca62a..2d419e132179 100644 --- a/Marlin/src/pins/ramps/pins_3DRAG.h +++ b/Marlin/src/pins/ramps/pins_3DRAG.h @@ -117,7 +117,7 @@ #define SPINDLE_LASER_PWM_PIN 46 // Hardware PWM #define SPINDLE_LASER_ENA_PIN 62 // Pullup! #define SPINDLE_DIR_PIN 48 - #elif !BOTH(HAS_WIRED_LCD, IS_NEWPANEL) // Use expansion header if no LCD in use + #elif !ALL(HAS_WIRED_LCD, IS_NEWPANEL) // Use expansion header if no LCD in use #define SPINDLE_LASER_ENA_PIN 16 // Pullup or pulldown! #define SPINDLE_DIR_PIN 17 #if !NUM_SERVOS // Use servo connector if possible diff --git a/Marlin/src/pins/ramps/pins_AZTEEG_X3.h b/Marlin/src/pins/ramps/pins_AZTEEG_X3.h index 4d3722655df9..17581dca6241 100644 --- a/Marlin/src/pins/ramps/pins_AZTEEG_X3.h +++ b/Marlin/src/pins/ramps/pins_AZTEEG_X3.h @@ -54,7 +54,7 @@ #undef STAT_LED_RED_PIN #undef STAT_LED_BLUE_PIN -#if EITHER(VIKI2, miniVIKI) +#if ANY(VIKI2, miniVIKI) #undef DOGLCD_A0 #undef DOGLCD_CS diff --git a/Marlin/src/pins/ramps/pins_AZTEEG_X3_PRO.h b/Marlin/src/pins/ramps/pins_AZTEEG_X3_PRO.h index b0eee92c7218..ddd56b28e859 100644 --- a/Marlin/src/pins/ramps/pins_AZTEEG_X3_PRO.h +++ b/Marlin/src/pins/ramps/pins_AZTEEG_X3_PRO.h @@ -145,7 +145,7 @@ #undef BEEPER_PIN #define BEEPER_PIN 33 -#if EITHER(VIKI2, miniVIKI) +#if ANY(VIKI2, miniVIKI) #undef SD_DETECT_PIN #define SD_DETECT_PIN 49 // For easy adapter board #undef BEEPER_PIN @@ -172,7 +172,7 @@ #undef SPINDLE_DIR_PIN #if HAS_CUTTER // EXP2 header - #if EITHER(VIKI2, miniVIKI) + #if ANY(VIKI2, miniVIKI) #define BTN_EN2 31 // Pin 7 needed for Spindle PWM #endif #define SPINDLE_LASER_PWM_PIN 7 // Hardware PWM diff --git a/Marlin/src/pins/ramps/pins_FYSETC_F6_13.h b/Marlin/src/pins/ramps/pins_FYSETC_F6_13.h index fa5bbb5b9e75..824dbd9f2df8 100644 --- a/Marlin/src/pins/ramps/pins_FYSETC_F6_13.h +++ b/Marlin/src/pins/ramps/pins_FYSETC_F6_13.h @@ -249,7 +249,7 @@ #define LCD_RESET_PIN 23 // Must be high or open for LCD to operate normally. // Seems to work best if left open. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN 25 #endif diff --git a/Marlin/src/pins/ramps/pins_K8400.h b/Marlin/src/pins/ramps/pins_K8400.h index 56ec66191b32..bcb145825b24 100644 --- a/Marlin/src/pins/ramps/pins_K8400.h +++ b/Marlin/src/pins/ramps/pins_K8400.h @@ -53,7 +53,7 @@ #define X_STOP_PIN 3 #define Y_STOP_PIN 14 -#if EITHER(BLTOUCH, TOUCH_MI_PROBE) +#if ANY(BLTOUCH, TOUCH_MI_PROBE) #define INVERTED_PROBE_STATE #endif diff --git a/Marlin/src/pins/ramps/pins_LONGER3D_LKx_PRO.h b/Marlin/src/pins/ramps/pins_LONGER3D_LKx_PRO.h index 89da25d074fa..cb28762adc55 100644 --- a/Marlin/src/pins/ramps/pins_LONGER3D_LKx_PRO.h +++ b/Marlin/src/pins/ramps/pins_LONGER3D_LKx_PRO.h @@ -127,7 +127,7 @@ // Aux-1 | D19 D18 GND 5V | J21 | D4 D5 D6 GND | J17 | D11 GND 24V | J18 | D7 GND 5V | // ------------------ ---------------- --------------- ------------- -#if BOTH(CR10_STOCKDISPLAY, LONGER_LK5) +#if ALL(CR10_STOCKDISPLAY, LONGER_LK5) /** CR-10 Stock Display * ------ * BEEPER D11 | 1 2 | D15 ENC diff --git a/Marlin/src/pins/ramps/pins_MKS_GEN_13.h b/Marlin/src/pins/ramps/pins_MKS_GEN_13.h index 4cf66ed2cd41..9afdc62a53a8 100644 --- a/Marlin/src/pins/ramps/pins_MKS_GEN_13.h +++ b/Marlin/src/pins/ramps/pins_MKS_GEN_13.h @@ -63,7 +63,7 @@ // // LCD / Controller // -#if EITHER(VIKI2, miniVIKI) +#if ANY(VIKI2, miniVIKI) /** * VIKI2 Has two groups of wires with... * diff --git a/Marlin/src/pins/ramps/pins_RAMPS.h b/Marlin/src/pins/ramps/pins_RAMPS.h index 422991aba4c1..8b15f82736f9 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS.h +++ b/Marlin/src/pins/ramps/pins_RAMPS.h @@ -250,7 +250,7 @@ #ifndef HEATER_BED_PIN #define HEATER_BED_PIN MOSFET_C_PIN #endif - #if EITHER(HAS_MULTI_HOTEND, HEATERS_PARALLEL) + #if ANY(HAS_MULTI_HOTEND, HEATERS_PARALLEL) #define HEATER_1_PIN MOSFET_D_PIN #else #define FAN1_PIN MOSFET_D_PIN @@ -258,9 +258,9 @@ #endif #ifndef FAN0_PIN - #if EITHER(FET_ORDER_EFB, FET_ORDER_EFF) // Hotend, Fan, Bed or Hotend, Fan, Fan + #if ANY(FET_ORDER_EFB, FET_ORDER_EFF) // Hotend, Fan, Bed or Hotend, Fan, Fan #define FAN0_PIN MOSFET_B_PIN - #elif EITHER(FET_ORDER_EEF, FET_ORDER_SF) // Hotend, Hotend, Fan or Spindle, Fan + #elif ANY(FET_ORDER_EEF, FET_ORDER_SF) // Hotend, Hotend, Fan or Spindle, Fan #define FAN0_PIN MOSFET_C_PIN #elif FET_ORDER_EEB // Hotend, Hotend, Bed #define FAN0_PIN 4 // IO pin. Buffer needed @@ -567,7 +567,7 @@ #define EXP1_01_PIN AUX4_09_PIN #define EXP1_02_PIN AUX4_10_PIN - #if BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) + #if ALL(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) #define EXP2_03_PIN AUX4_11_PIN #define EXP2_05_PIN AUX4_12_PIN #define EXP2_08_PIN -1 // RESET @@ -598,7 +598,7 @@ #define LCD_PINS_EN EXP2_06_PIN // SID (MOSI) #define LCD_PINS_D4 EXP2_02_PIN // SCK (CLK) clock - #elif BOTH(IS_NEWPANEL, PANEL_ONE) + #elif ALL(IS_NEWPANEL, PANEL_ONE) #define LCD_PINS_RS AUX2_06_PIN #define LCD_PINS_EN AUX2_08_PIN @@ -642,7 +642,7 @@ #else - #if EITHER(MKS_12864OLED, MKS_12864OLED_SSD1306) + #if ANY(MKS_12864OLED, MKS_12864OLED_SSD1306) #define LCD_PINS_DC EXP1_06_PIN // Set as output on init #define LCD_PINS_RS EXP1_07_PIN // Pull low for 1s to init // DOGM SPI LCD Support @@ -736,7 +736,7 @@ #define SD_DETECT_PIN EXP2_07_PIN #endif - #elif EITHER(VIKI2, miniVIKI) + #elif ANY(VIKI2, miniVIKI) #define DOGLCD_CS AUX4_05_PIN #define DOGLCD_A0 AUX2_07_PIN @@ -777,7 +777,7 @@ #endif #define KILL_PIN EXP2_08_PIN - #elif EITHER(MKS_MINI_12864, FYSETC_MINI_12864) + #elif ANY(MKS_MINI_12864, FYSETC_MINI_12864) #define BTN_ENC EXP1_02_PIN #ifndef SD_DETECT_PIN @@ -814,7 +814,7 @@ #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif @@ -914,7 +914,7 @@ #endif #endif -#if BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) +#if ALL(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) #ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING #error "CAUTION! LCD_FYSETC_TFT81050 requires wiring modifications. See 'pins_RAMPS.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)" diff --git a/Marlin/src/pins/ramps/pins_RUMBA.h b/Marlin/src/pins/ramps/pins_RUMBA.h index 20c804367adb..1d2aeb4f0f88 100644 --- a/Marlin/src/pins/ramps/pins_RUMBA.h +++ b/Marlin/src/pins/ramps/pins_RUMBA.h @@ -190,7 +190,7 @@ // // LCD / Controller // -#if EITHER(MKS_12864OLED, MKS_12864OLED_SSD1306) +#if ANY(MKS_12864OLED, MKS_12864OLED_SSD1306) #define LCD_PINS_DC 38 // Set as output on init #define LCD_PINS_RS 41 // Pull low for 1s to init // DOGM SPI LCD Support @@ -209,7 +209,7 @@ #define LCD_RESET_PIN 18 // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN 41 #endif diff --git a/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h b/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h index bb74fe421a7f..7306272127e1 100644 --- a/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h +++ b/Marlin/src/pins/ramps/pins_TRIGORILLA_14.h @@ -115,7 +115,7 @@ #if ENABLED(ANYCUBIC_4_MAX_PRO_ENDSTOPS) #define X_MAX_PIN 43 // AUX (2) #define Y_STOP_PIN 19 // Z+ -#elif EITHER(TRIGORILLA_MAPPING_CHIRON, TRIGORILLA_MAPPING_I3MEGA) +#elif ANY(TRIGORILLA_MAPPING_CHIRON, TRIGORILLA_MAPPING_I3MEGA) // Chiron uses AUX header for Y and Z endstops #define Y_STOP_PIN 42 // AUX (1) #define Z_STOP_PIN 43 // AUX (2) @@ -145,7 +145,7 @@ #define FIL_RUNOUT_PIN 19 // Z+ #endif - #if EITHER(TRIGORILLA_MAPPING_CHIRON, SWAP_Z_MOTORS) + #if ANY(TRIGORILLA_MAPPING_CHIRON, SWAP_Z_MOTORS) // Chiron and some Anycubic i3 MEGAs swap Z steppers #define Z_STEP_PIN 36 #define Z_DIR_PIN 34 @@ -159,7 +159,7 @@ #endif #endif -#if EITHER(ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_I3MEGA) +#if ANY(ANYCUBIC_LCD_CHIRON, ANYCUBIC_LCD_I3MEGA) #ifndef BEEPER_PIN #define BEEPER_PIN EXP2_03_PIN // Chiron Standard Adapter #endif diff --git a/Marlin/src/pins/ramps/pins_TT_OSCAR.h b/Marlin/src/pins/ramps/pins_TT_OSCAR.h index d9c79f5da8eb..1edeb6b8fedf 100644 --- a/Marlin/src/pins/ramps/pins_TT_OSCAR.h +++ b/Marlin/src/pins/ramps/pins_TT_OSCAR.h @@ -279,7 +279,7 @@ #define LCD_PINS_EN 51 // SID (MOSI) #define LCD_PINS_D4 52 // SCK (CLK) clock - #elif BOTH(IS_NEWPANEL, PANEL_ONE) + #elif ALL(IS_NEWPANEL, PANEL_ONE) #define LCD_PINS_RS 40 #define LCD_PINS_EN 42 @@ -312,7 +312,7 @@ #else - #if EITHER(MKS_12864OLED, MKS_12864OLED_SSD1306) + #if ANY(MKS_12864OLED, MKS_12864OLED_SSD1306) #define LCD_PINS_DC 25 // Set as output on init #define LCD_PINS_RS 27 // Pull low for 1s to init // DOGM SPI LCD Support @@ -400,7 +400,7 @@ #define LCD_SDSS 53 #define SD_DETECT_PIN 49 - #elif EITHER(VIKI2, miniVIKI) + #elif ANY(VIKI2, miniVIKI) #define DOGLCD_CS 45 #define DOGLCD_A0 44 diff --git a/Marlin/src/pins/ramps/pins_ULTIMAKER_OLD.h b/Marlin/src/pins/ramps/pins_ULTIMAKER_OLD.h index a1b02aa06c73..0e3b25b4f670 100644 --- a/Marlin/src/pins/ramps/pins_ULTIMAKER_OLD.h +++ b/Marlin/src/pins/ramps/pins_ULTIMAKER_OLD.h @@ -116,7 +116,7 @@ // // Z Probe (when not Z_MIN_PIN) // -#if !defined(Z_MIN_PROBE_PIN) && !BOTH(HAS_CUTTER, BOARD_REV_1_0) +#if !defined(Z_MIN_PROBE_PIN) && !ALL(HAS_CUTTER, BOARD_REV_1_0) #define Z_MIN_PROBE_PIN Z_MAX_PIN #endif @@ -135,7 +135,7 @@ #define Z_DIR_PIN 39 #define Z_ENABLE_PIN 35 -#if BOTH(HAS_CUTTER, BOARD_REV_1_1_TO_1_3) && EXTRUDERS == 1 +#if ALL(HAS_CUTTER, BOARD_REV_1_1_TO_1_3) && EXTRUDERS == 1 // Move E0 to the spare and get Spindle/Laser signals from E0 #define E0_STEP_PIN 49 #define E0_DIR_PIN 47 @@ -166,7 +166,7 @@ // // LCD / Controller // -#if EITHER(BOARD_REV_1_0, BOARD_REV_1_1_TO_1_3) +#if ANY(BOARD_REV_1_0, BOARD_REV_1_1_TO_1_3) #define LCD_PINS_RS 24 #define LCD_PINS_EN 22 @@ -175,7 +175,7 @@ #define LCD_PINS_D6 32 #define LCD_PINS_D7 30 -#elif BOTH(BOARD_REV_1_5, HAS_WIRED_LCD) +#elif ALL(BOARD_REV_1_5, HAS_WIRED_LCD) #define BEEPER_PIN 18 @@ -225,7 +225,7 @@ // M3/M4/M5 - Spindle/Laser Control // #if HAS_CUTTER - #if EITHER(BOARD_REV_1_0, BOARD_REV_1_5) // Use the last three SW positions + #if ANY(BOARD_REV_1_0, BOARD_REV_1_5) // Use the last three SW positions #define SPINDLE_LASER_PWM_PIN 9 // 1.0: SW5 1.5: EXP3-7 ( "9") .. MUST BE HARDWARE PWM #define SPINDLE_LASER_ENA_PIN 8 // 1.0: SW6 1.5: EXP3-8 ( "8") .. Pin should have a pullup! #define SPINDLE_DIR_PIN 10 // 1.0: SW4 1.5: EXP3-6 ("10") diff --git a/Marlin/src/pins/ramps/pins_ZRIB_V53.h b/Marlin/src/pins/ramps/pins_ZRIB_V53.h index 2b8b583075a3..8d59eeb1f76d 100644 --- a/Marlin/src/pins/ramps/pins_ZRIB_V53.h +++ b/Marlin/src/pins/ramps/pins_ZRIB_V53.h @@ -361,7 +361,7 @@ // OLED 128x64 //================================================================================ -#if EITHER(ZONESTAR_12864OLED, ZONESTAR_12864OLED_SSD1306) +#if ANY(ZONESTAR_12864OLED, ZONESTAR_12864OLED_SSD1306) #define LCDSCREEN_NAME "ZONESTAR 12864OLED" #define LCD_SDSS 16 #define LCD_PINS_RS 23 // RESET Pull low for 1s to init @@ -372,7 +372,7 @@ #define BTN_ENC 29 #define BEEPER_PIN -1 #define KILL_PIN -1 - #if EITHER(OLED_HW_IIC, OLED_HW_SPI) + #if ANY(OLED_HW_IIC, OLED_HW_SPI) #error "Oops! You must choose SW SPI for ZRIB V53 board and connect the OLED screen to EXP1 connector." #else // SW_SPI #define DOGLCD_A0 LCD_PINS_DC diff --git a/Marlin/src/pins/sam/env_validate.h b/Marlin/src/pins/sam/env_validate.h index c6f4d76894be..c51583f0a13c 100644 --- a/Marlin/src/pins/sam/env_validate.h +++ b/Marlin/src/pins/sam/env_validate.h @@ -22,7 +22,7 @@ #ifndef ENV_VALIDATE_H #define ENV_VALIDATE_H -#if BOTH(ALLOW_MEGA1280, ALLOW_MEGA2560) && NOT_TARGET(__SAM3X8E__, __AVR_ATmega1280__, __AVR_ATmega2560__) +#if ALL(ALLOW_MEGA1280, ALLOW_MEGA2560) && NOT_TARGET(__SAM3X8E__, __AVR_ATmega1280__, __AVR_ATmega2560__) #error "Oops! Select 'Arduino Due or Mega' in 'Tools > Board.'" #elif ENABLED(ALLOW_MEGA2560) && NOT_TARGET(__SAM3X8E__, __AVR_ATmega2560__) #error "Oops! Select 'Arduino Due or Mega' in 'Tools > Board.'" diff --git a/Marlin/src/pins/sam/pins_KRATOS32.h b/Marlin/src/pins/sam/pins_KRATOS32.h index f4e3eb479cce..74da7a78f625 100644 --- a/Marlin/src/pins/sam/pins_KRATOS32.h +++ b/Marlin/src/pins/sam/pins_KRATOS32.h @@ -32,7 +32,7 @@ // // EEPROM // -#if EITHER(NO_EEPROM_SELECTED, I2C_EEPROM) +#if ANY(NO_EEPROM_SELECTED, I2C_EEPROM) #define I2C_EEPROM #define MARLIN_EEPROM_SIZE 0x1F400 // 16K #endif diff --git a/Marlin/src/pins/sam/pins_RADDS.h b/Marlin/src/pins/sam/pins_RADDS.h index 93011679595f..9a3edff0c989 100644 --- a/Marlin/src/pins/sam/pins_RADDS.h +++ b/Marlin/src/pins/sam/pins_RADDS.h @@ -32,7 +32,7 @@ // // EEPROM // -#if EITHER(NO_EEPROM_SELECTED, I2C_EEPROM) +#if ANY(NO_EEPROM_SELECTED, I2C_EEPROM) #define I2C_EEPROM #define MARLIN_EEPROM_SIZE 0x2000 // 8K #endif diff --git a/Marlin/src/pins/sam/pins_RAMPS_DUO.h b/Marlin/src/pins/sam/pins_RAMPS_DUO.h index 92de79bd7f23..b00d215cc7fb 100644 --- a/Marlin/src/pins/sam/pins_RAMPS_DUO.h +++ b/Marlin/src/pins/sam/pins_RAMPS_DUO.h @@ -68,7 +68,7 @@ // #if HAS_WIRED_LCD - #if BOTH(IS_NEWPANEL, PANEL_ONE) + #if ALL(IS_NEWPANEL, PANEL_ONE) #undef LCD_PINS_D4 #define LCD_PINS_D4 68 diff --git a/Marlin/src/pins/sam/pins_RAMPS_FD_V1.h b/Marlin/src/pins/sam/pins_RAMPS_FD_V1.h index 8f206d9f876b..f5587a6cbaa1 100644 --- a/Marlin/src/pins/sam/pins_RAMPS_FD_V1.h +++ b/Marlin/src/pins/sam/pins_RAMPS_FD_V1.h @@ -191,7 +191,7 @@ #define LCD_RESET_PIN EXP1_06_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_05_PIN #endif @@ -219,7 +219,7 @@ #endif - #if EITHER(VIKI2, miniVIKI) + #if ANY(VIKI2, miniVIKI) #define DOGLCD_A0 EXP1_07_PIN #define KILL_PIN 51 #define STAT_LED_BLUE_PIN EXP1_03_PIN diff --git a/Marlin/src/pins/sam/pins_RURAMPS4D_11.h b/Marlin/src/pins/sam/pins_RURAMPS4D_11.h index 516063d158a9..64fad0e08123 100644 --- a/Marlin/src/pins/sam/pins_RURAMPS4D_11.h +++ b/Marlin/src/pins/sam/pins_RURAMPS4D_11.h @@ -227,7 +227,7 @@ #define SD_DETECT_PIN EXP2_07_PIN #endif - #if EITHER(RADDS_DISPLAY, IS_RRD_SC) + #if ANY(RADDS_DISPLAY, IS_RRD_SC) #define LCD_PINS_RS EXP1_04_PIN #define LCD_PINS_EN EXP1_03_PIN @@ -254,7 +254,7 @@ #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN // D5 #endif diff --git a/Marlin/src/pins/sam/pins_RURAMPS4D_13.h b/Marlin/src/pins/sam/pins_RURAMPS4D_13.h index 9e9aeb9fec17..1b66b766db2c 100644 --- a/Marlin/src/pins/sam/pins_RURAMPS4D_13.h +++ b/Marlin/src/pins/sam/pins_RURAMPS4D_13.h @@ -217,7 +217,7 @@ #define SD_DETECT_PIN EXP2_07_PIN #endif - #if EITHER(RADDS_DISPLAY, IS_RRD_SC) + #if ANY(RADDS_DISPLAY, IS_RRD_SC) #define LCD_PINS_RS EXP1_04_PIN #define LCD_PINS_EN EXP1_03_PIN @@ -244,7 +244,7 @@ #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN // D5 #endif diff --git a/Marlin/src/pins/samd/pins_BRICOLEMON_LITE_V1_0.h b/Marlin/src/pins/samd/pins_BRICOLEMON_LITE_V1_0.h index 8af1054a2cd1..6f41bd6848c9 100644 --- a/Marlin/src/pins/samd/pins_BRICOLEMON_LITE_V1_0.h +++ b/Marlin/src/pins/samd/pins_BRICOLEMON_LITE_V1_0.h @@ -238,7 +238,7 @@ //#define LCD_PINS_EN EXP2_06_PIN // SID (MOSI) //#define LCD_PINS_D4 EXP2_02_PIN // SCK (CLK) clock - #elif BOTH(IS_NEWPANEL, PANEL_ONE) + #elif ALL(IS_NEWPANEL, PANEL_ONE) // TO TEST //#define LCD_PINS_RS EXP1_02_PIN @@ -274,7 +274,7 @@ #else - #if EITHER(MKS_12864OLED, MKS_12864OLED_SSD1306) + #if ANY(MKS_12864OLED, MKS_12864OLED_SSD1306) // TO TEST //#define LCD_PINS_DC 25 // Set as output on init //#define LCD_PINS_RS 27 // Pull low for 1s to init @@ -372,7 +372,7 @@ //#define LCD_SDSS SDSS //#define SD_DETECT_PIN EXP2_10_PIN - #elif EITHER(VIKI2, miniVIKI) + #elif ANY(VIKI2, miniVIKI) // TO TEST //#define DOGLCD_CS 45 @@ -407,7 +407,7 @@ //#define SD_DETECT_PIN EXP2_10_PIN //#define KILL_PIN EXP1_01_PIN - #elif EITHER(MKS_MINI_12864, FYSETC_MINI_12864) + #elif ANY(MKS_MINI_12864, FYSETC_MINI_12864) // TO TEST //#define BEEPER_PIN EXP1_06_PIN @@ -452,7 +452,7 @@ //#define LCD_RESET_PIN 23 // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN // TO TEST //#define RGB_LED_R_PIN 25 diff --git a/Marlin/src/pins/samd/pins_BRICOLEMON_V1_0.h b/Marlin/src/pins/samd/pins_BRICOLEMON_V1_0.h index 7378731c9071..699f10ed481e 100644 --- a/Marlin/src/pins/samd/pins_BRICOLEMON_V1_0.h +++ b/Marlin/src/pins/samd/pins_BRICOLEMON_V1_0.h @@ -291,7 +291,7 @@ //#define LCD_PINS_EN EXP2_06_PIN // SID (MOSI) //#define LCD_PINS_D4 EXP2_02_PIN // SCK (CLK) clock - #elif BOTH(IS_NEWPANEL, PANEL_ONE) + #elif ALL(IS_NEWPANEL, PANEL_ONE) // TO TEST //#define LCD_PINS_RS EXP1_02_PIN @@ -327,7 +327,7 @@ #else - #if EITHER(MKS_12864OLED, MKS_12864OLED_SSD1306) + #if ANY(MKS_12864OLED, MKS_12864OLED_SSD1306) // TO TEST //#define LCD_PINS_DC 25 // Set as output on init //#define LCD_PINS_RS 27 // Pull low for 1s to init @@ -424,7 +424,7 @@ //#define LCD_SDSS SDSS //#define SD_DETECT_PIN EXP2_10_PIN - #elif EITHER(VIKI2, miniVIKI) + #elif ANY(VIKI2, miniVIKI) // TO TEST //#define DOGLCD_CS 45 @@ -459,7 +459,7 @@ //#define SD_DETECT_PIN EXP2_10_PIN //#define KILL_PIN EXP1_01_PIN - #elif EITHER(MKS_MINI_12864, FYSETC_MINI_12864) + #elif ANY(MKS_MINI_12864, FYSETC_MINI_12864) // TO TEST //#define BEEPER_PIN EXP1_06_PIN @@ -504,7 +504,7 @@ //#define LCD_RESET_PIN 23 // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN // TO TEST //#define RGB_LED_R_PIN 25 diff --git a/Marlin/src/pins/samd/pins_MINITRONICS20.h b/Marlin/src/pins/samd/pins_MINITRONICS20.h index 804750b69a3d..8c0daa497b01 100644 --- a/Marlin/src/pins/samd/pins_MINITRONICS20.h +++ b/Marlin/src/pins/samd/pins_MINITRONICS20.h @@ -197,7 +197,7 @@ #define BTN_EN1 27 #define BTN_EN2 33 - #elif BOTH(IS_NEWPANEL, PANEL_ONE) + #elif ALL(IS_NEWPANEL, PANEL_ONE) // TO TEST //#define LCD_PINS_RS EXP1_02_PIN @@ -233,7 +233,7 @@ #else - #if EITHER(MKS_12864OLED, MKS_12864OLED_SSD1306) + #if ANY(MKS_12864OLED, MKS_12864OLED_SSD1306) // TO TEST //#define LCD_PINS_DC 25 // Set as output on init //#define LCD_PINS_RS 27 // Pull low for 1s to init @@ -322,7 +322,7 @@ //#define LCD_SDSS SDSS //#define SD_DETECT_PIN EXP2_10_PIN - #elif EITHER(VIKI2, miniVIKI) + #elif ANY(VIKI2, miniVIKI) // TO TEST //#define DOGLCD_CS 45 @@ -357,7 +357,7 @@ //#define SD_DETECT_PIN EXP2_10_PIN //#define KILL_PIN EXP1_01_PIN - #elif EITHER(MKS_MINI_12864, FYSETC_MINI_12864) + #elif ANY(MKS_MINI_12864, FYSETC_MINI_12864) // TO TEST //#define BEEPER_PIN EXP1_06_PIN @@ -402,7 +402,7 @@ //#define LCD_RESET_PIN 23 // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN // TO TEST //#define RGB_LED_R_PIN 25 diff --git a/Marlin/src/pins/samd/pins_RAMPS_144.h b/Marlin/src/pins/samd/pins_RAMPS_144.h index a762d3cdbdcc..3e5d563929ed 100644 --- a/Marlin/src/pins/samd/pins_RAMPS_144.h +++ b/Marlin/src/pins/samd/pins_RAMPS_144.h @@ -276,7 +276,7 @@ //#define LCD_PINS_EN 51 // SID (MOSI) //#define LCD_PINS_D4 52 // SCK (CLK) clock - #elif BOTH(IS_NEWPANEL, PANEL_ONE) + #elif ALL(IS_NEWPANEL, PANEL_ONE) // TO TEST //#define LCD_PINS_RS 40 @@ -312,7 +312,7 @@ #else - #if EITHER(MKS_12864OLED, MKS_12864OLED_SSD1306) + #if ANY(MKS_12864OLED, MKS_12864OLED_SSD1306) // TO TEST //#define LCD_PINS_DC 25 // Set as output on init //#define LCD_PINS_RS 27 // Pull low for 1s to init @@ -406,7 +406,7 @@ //#define LCD_SDSS SDSS //#define SD_DETECT_PIN 49 - #elif EITHER(VIKI2, miniVIKI) + #elif ANY(VIKI2, miniVIKI) // TO TEST //#define DOGLCD_CS 45 @@ -442,7 +442,7 @@ //#define SD_DETECT_PIN 49 //#define KILL_PIN 41 - #elif EITHER(MKS_MINI_12864, FYSETC_MINI_12864) + #elif ANY(MKS_MINI_12864, FYSETC_MINI_12864) // TO TEST //#define BEEPER_PIN 37 @@ -483,7 +483,7 @@ //#define LCD_RESET_PIN 23 // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN // TO TEST //#define RGB_LED_R_PIN 25 diff --git a/Marlin/src/pins/sanguino/pins_MELZI_CREALITY_E2.h b/Marlin/src/pins/sanguino/pins_MELZI_CREALITY_E2.h index 0d021e1bf694..4ded3294b950 100644 --- a/Marlin/src/pins/sanguino/pins_MELZI_CREALITY_E2.h +++ b/Marlin/src/pins/sanguino/pins_MELZI_CREALITY_E2.h @@ -56,7 +56,7 @@ // // LCD / Controller // -#if EITHER(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) +#if ANY(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) #if ENABLED(CR10_STOCKDISPLAY) #if ENABLED(SDSUPPORT) #error "Cannot have SDSUPPORT with CR10_STOCKDISPLAY on this motherboard." // Hardware SDCARD SCK and MOSI pins are reallocated. diff --git a/Marlin/src/pins/sanguino/pins_MELZI_TRONXY.h b/Marlin/src/pins/sanguino/pins_MELZI_TRONXY.h index 6b47d9186c41..7e4cc22bbe8f 100644 --- a/Marlin/src/pins/sanguino/pins_MELZI_TRONXY.h +++ b/Marlin/src/pins/sanguino/pins_MELZI_TRONXY.h @@ -32,7 +32,7 @@ #define LCD_SDSS -1 -#if EITHER(CR10_STOCKDISPLAY, LCD_FOR_MELZI) +#if ANY(CR10_STOCKDISPLAY, LCD_FOR_MELZI) #define LCD_PINS_RS 30 #define LCD_PINS_EN 28 #define LCD_PINS_D4 16 diff --git a/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h b/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h index 9a80ca2e63aa..b99437ac93e5 100644 --- a/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h +++ b/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h @@ -133,7 +133,7 @@ #define LCD_BACKLIGHT_PIN 17 // LCD backlight LED #endif -#if !HAS_CUTTER && ENABLED(SANGUINOLOLU_V_1_2) && !BOTH(HAS_WIRED_LCD, IS_NEWPANEL) // try to use IO Header +#if !HAS_CUTTER && ENABLED(SANGUINOLOLU_V_1_2) && !ALL(HAS_WIRED_LCD, IS_NEWPANEL) // try to use IO Header #define CASE_LIGHT_PIN 4 // Hardware PWM - see if IO Header is available #endif @@ -270,7 +270,7 @@ // M3/M4/M5 - Spindle/Laser Control // #if HAS_CUTTER - #if !MB(AZTEEG_X1) && ENABLED(SANGUINOLOLU_V_1_2) && !BOTH(HAS_WIRED_LCD, IS_NEWPANEL) // try to use IO Header + #if !MB(AZTEEG_X1) && ENABLED(SANGUINOLOLU_V_1_2) && !ALL(HAS_WIRED_LCD, IS_NEWPANEL) // try to use IO Header #define SPINDLE_LASER_PWM_PIN 4 // Hardware PWM #define SPINDLE_LASER_ENA_PIN 10 // Pullup or pulldown! diff --git a/Marlin/src/pins/sanguino/pins_ZMIB_V2.h b/Marlin/src/pins/sanguino/pins_ZMIB_V2.h index 1e449579cf40..438acb79c789 100644 --- a/Marlin/src/pins/sanguino/pins_ZMIB_V2.h +++ b/Marlin/src/pins/sanguino/pins_ZMIB_V2.h @@ -92,7 +92,7 @@ #define X_MIN_PIN 21 #define Y_MIN_PIN 18 -#if EITHER(Z6S_ZFAULT, Z6BS_ZFAULT) +#if ANY(Z6S_ZFAULT, Z6BS_ZFAULT) #define Z_MIN_PIN 25 #else #define Z_MIN_PIN 13 @@ -109,7 +109,7 @@ #define Y_DIR_PIN 19 #define Y_ENABLE_PIN 24 -#if EITHER(Z6S_ZFAULT, Z6BS_ZFAULT) +#if ANY(Z6S_ZFAULT, Z6BS_ZFAULT) #define Z_STEP_PIN 27 #define Z_DIR_PIN 26 #else @@ -119,7 +119,7 @@ #define Z_ENABLE_PIN 24 -#if EITHER(Z6S_ZFAULT, Z6BS_ZFAULT) +#if ANY(Z6S_ZFAULT, Z6BS_ZFAULT) #define E0_STEP_PIN 15 #define E0_DIR_PIN 14 #else @@ -150,7 +150,7 @@ // // Filament Runout Sensor // -#if EITHER(Z6S_ZFAULT, Z6BS_ZFAULT) +#if ANY(Z6S_ZFAULT, Z6BS_ZFAULT) #define FIL_RUNOUT_PIN 13 #else #define FIL_RUNOUT_PIN 25 // Z-MIN @@ -201,7 +201,7 @@ #define BOARD_ST7920_DELAY_2 DELAY_2_NOP #define BOARD_ST7920_DELAY_3 DELAY_2_NOP -#elif EITHER(ZONESTAR_12864OLED, ZONESTAR_12864OLED_SSD1306) +#elif ANY(ZONESTAR_12864OLED, ZONESTAR_12864OLED_SSD1306) // // OLED 128x64 // diff --git a/Marlin/src/pins/sensitive_pins.h b/Marlin/src/pins/sensitive_pins.h index e655663a73d4..7264a2653968 100644 --- a/Marlin/src/pins/sensitive_pins.h +++ b/Marlin/src/pins/sensitive_pins.h @@ -650,7 +650,7 @@ #endif #endif -#elif EITHER(HAS_MULTI_EXTRUDER, MIXING_EXTRUDER) +#elif ANY(HAS_MULTI_EXTRUDER, MIXING_EXTRUDER) #undef _E1_PINS #define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN, _E1_CS _E1_MS1 _E1_MS2 _E1_MS3 diff --git a/Marlin/src/pins/stm32f1/pins_BEAST.h b/Marlin/src/pins/stm32f1/pins_BEAST.h index eca4529636ba..b136ca52cd70 100644 --- a/Marlin/src/pins/stm32f1/pins_BEAST.h +++ b/Marlin/src/pins/stm32f1/pins_BEAST.h @@ -131,7 +131,7 @@ #error "LCD_I2C_PANELOLU2 is not supported." #elif ENABLED(LCD_I2C_VIKI) #error "LCD_I2C_VIKI is not supported." - #elif EITHER(VIKI2, miniVIKI) + #elif ANY(VIKI2, miniVIKI) #error "VIKI2 / miniVIKI is not supported." #elif ENABLED(ELB_FULL_GRAPHIC_CONTROLLER) #error "ELB_FULL_GRAPHIC_CONTROLLER is not supported." diff --git a/Marlin/src/pins/stm32f1/pins_BTT_SKR_E3_DIP.h b/Marlin/src/pins/stm32f1/pins_BTT_SKR_E3_DIP.h index 5f3dc781503d..8be66eedb570 100644 --- a/Marlin/src/pins/stm32f1/pins_BTT_SKR_E3_DIP.h +++ b/Marlin/src/pins/stm32f1/pins_BTT_SKR_E3_DIP.h @@ -31,7 +31,7 @@ // Ignore temp readings during development. //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE (0x800U) // 2K #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) @@ -204,7 +204,7 @@ #define LCD_PINS_D7 EXP1_01_PIN #define ADC_KEYPAD_PIN PA1 // Repurpose servo pin for ADC - CONNECTING TO 5V WILL DAMAGE THE BOARD! - #elif EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY) + #elif ANY(MKS_MINI_12864, ENDER2_STOCKDISPLAY) /** Creality Ender-2 display pinout * ------ @@ -296,7 +296,7 @@ #endif // HAS_WIRED_LCD -#if BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) +#if ALL(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) #ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING #error "CAUTION! LCD_FYSETC_TFT81050 requires wiring modifications. See 'pins_BTT_SKR_E3_DIP.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)" @@ -352,7 +352,7 @@ #define SD_SCK_PIN PA5 #define SD_MISO_PIN PA6 #define SD_MOSI_PIN PA7 -#elif SD_CONNECTION_IS(LCD) && BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) +#elif SD_CONNECTION_IS(LCD) && ALL(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) #define SD_DETECT_PIN EXP1_01_PIN #define SD_SS_PIN EXP1_05_PIN #elif SD_CONNECTION_IS(CUSTOM_CABLE) diff --git a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_common.h b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_common.h index 45829d2eded2..c86e2f750452 100644 --- a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_common.h +++ b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_E3_common.h @@ -31,7 +31,7 @@ // Ignore temp readings during development. //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE (0x800U) // 2K #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) @@ -217,7 +217,7 @@ #define LCD_PINS_D7 EXP1_01_PIN #define ADC_KEYPAD_PIN PA1 // Repurpose servo pin for ADC - CONNECTING TO 5V WILL DAMAGE THE BOARD! - #elif EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY) + #elif ANY(MKS_MINI_12864, ENDER2_STOCKDISPLAY) #define BTN_ENC EXP1_02_PIN #define BTN_EN1 EXP1_03_PIN @@ -342,7 +342,7 @@ #endif // HAS_WIRED_LCD -#if BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) +#if ALL(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) #ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING #error "CAUTION! LCD_FYSETC_TFT81050 requires wiring modifications. See 'pins_BTT_SKR_MINI_E3_common.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)" @@ -396,7 +396,7 @@ #if SD_CONNECTION_IS(ONBOARD) #define SD_DETECT_PIN PC4 -#elif SD_CONNECTION_IS(LCD) && (BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) || IS_TFTGLCD_PANEL) +#elif SD_CONNECTION_IS(LCD) && (ALL(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) || IS_TFTGLCD_PANEL) #define SD_DETECT_PIN EXP1_01_PIN #define SD_SS_PIN EXP1_05_PIN #elif SD_CONNECTION_IS(CUSTOM_CABLE) diff --git a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h index 851eee8296b2..6719b090495b 100644 --- a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h +++ b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h @@ -31,7 +31,7 @@ // Ignore temp readings during development. //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE (0x800U) // 2K #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) @@ -142,7 +142,7 @@ // // LCD / Controller // -#if EITHER(TFT_COLOR_UI, TFT_CLASSIC_UI) +#if ANY(TFT_COLOR_UI, TFT_CLASSIC_UI) #define BEEPER_PIN EXP1_01_PIN #define BTN_ENC EXP1_02_PIN #define BTN_EN1 EXP2_03_PIN @@ -221,7 +221,7 @@ //#define LED_PIN EXP1_07_PIN // green //#define LED_PIN EXP1_08_PIN // blue - //#if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + //#if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) // #ifndef RGB_LED_R_PIN // #define RGB_LED_R_PIN EXP1_06_PIN // #endif diff --git a/Marlin/src/pins/stm32f1/pins_CCROBOT_MEEB_3DP.h b/Marlin/src/pins/stm32f1/pins_CCROBOT_MEEB_3DP.h index 015d8c03ee2b..1d501e512b26 100644 --- a/Marlin/src/pins/stm32f1/pins_CCROBOT_MEEB_3DP.h +++ b/Marlin/src/pins/stm32f1/pins_CCROBOT_MEEB_3DP.h @@ -41,7 +41,7 @@ // // EEPROM // -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE 0x800U // 2K #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) diff --git a/Marlin/src/pins/stm32f1/pins_CHITU3D.h b/Marlin/src/pins/stm32f1/pins_CHITU3D.h index 73030c8ef6eb..2074bbeccec1 100644 --- a/Marlin/src/pins/stm32f1/pins_CHITU3D.h +++ b/Marlin/src/pins/stm32f1/pins_CHITU3D.h @@ -104,7 +104,7 @@ #define LCD_PINS_RS PD1 // 49 // CS chip select /SS chip slave select #define LCD_PINS_EN PD3 // 51 // SID (MOSI) #define LCD_PINS_D4 PD4 // 52 // SCK (CLK) clock - #elif BOTH(IS_NEWPANEL, PANEL_ONE) + #elif ALL(IS_NEWPANEL, PANEL_ONE) #define LCD_PINS_RS PB8 #define LCD_PINS_EN PD2 #define LCD_PINS_D4 PB12 @@ -171,7 +171,7 @@ #define LCD_SDSS PD5 // 53 #define SD_DETECT_PIN PD1 // 49 - #elif EITHER(VIKI2, miniVIKI) + #elif ANY(VIKI2, miniVIKI) #define BEEPER_PIN PC1 // 33 diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h index af9a6d891e31..ce942ba5450e 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V24S1_301.h @@ -33,7 +33,7 @@ #define E_ERROR 1 #endif -#if BOTH(BLTOUCH, Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) +#if ALL(BLTOUCH, Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) #error "Disable Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN when using BLTOUCH with Creality V24S1-301." #endif diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h index f78bad624d28..5657a7995027 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h @@ -52,7 +52,7 @@ #define IIC_EEPROM_SDA PA11 #define IIC_EEPROM_SCL PA12 #define MARLIN_EEPROM_SIZE 0x800 // 2K (24C16) -#elif EITHER(SDCARD_EEPROM_EMULATION, FLASH_EEPROM_EMULATION) +#elif ANY(SDCARD_EEPROM_EMULATION, FLASH_EEPROM_EMULATION) #define MARLIN_EEPROM_SIZE 0x800 // 2K #endif diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h index 3d0a1885af75..96b3007ca650 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V4.h @@ -183,7 +183,7 @@ #define EXP3_07_PIN PB12 #define EXP3_08_PIN PB15 -#elif EITHER(VET6_12864_LCD, DWIN_VET6_CREALITY_LCD) +#elif ANY(VET6_12864_LCD, DWIN_VET6_CREALITY_LCD) /** * VET6 12864 LCD @@ -204,7 +204,7 @@ #define EXP3_07_PIN PA4 #define EXP3_08_PIN PA7 -#elif EITHER(CR10_STOCKDISPLAY, FYSETC_MINI_12864_2_1) +#elif ANY(CR10_STOCKDISPLAY, FYSETC_MINI_12864_2_1) #error "Define RET6_12864_LCD or VET6_12864_LCD to select pins for the LCD with the Creality V4 controller." #endif diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h index 7a7ec355084f..2e0de876410b 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h @@ -164,7 +164,7 @@ #define EXP3_07_PIN PB12 #define EXP3_08_PIN PB15 -#elif EITHER(VET6_12864_LCD, DWIN_VET6_CREALITY_LCD) +#elif ANY(VET6_12864_LCD, DWIN_VET6_CREALITY_LCD) /** * VET6 12864 LCD diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V521.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V521.h index 81cb1e1f790e..d555c0aaa12d 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V521.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V521.h @@ -168,7 +168,7 @@ #define EXP3_07_PIN PB12 #define EXP3_08_PIN PB15 -#elif EITHER(VET6_12864_LCD, DWIN_VET6_CREALITY_LCD) +#elif ANY(VET6_12864_LCD, DWIN_VET6_CREALITY_LCD) /** * VET6 12864 LCD diff --git a/Marlin/src/pins/stm32f1/pins_ERYONE_ERY32_MINI.h b/Marlin/src/pins/stm32f1/pins_ERYONE_ERY32_MINI.h index 7a1f1e6cce32..b18bd09de894 100644 --- a/Marlin/src/pins/stm32f1/pins_ERYONE_ERY32_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_ERYONE_ERY32_MINI.h @@ -39,7 +39,7 @@ #define DISABLE_JTAG //#define ENABLE_SPI3 -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE (0x800U) // 2K #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) @@ -98,7 +98,7 @@ #define FAN1_PIN PD12 #elif DISABLED(FET_ORDER_SF) // Not Spindle, Fan (i.e., "EFBF" or "EFBE") #define HEATER_BED_PIN PD12 - #if EITHER(HAS_MULTI_HOTEND, HEATERS_PARALLEL) + #if ANY(HAS_MULTI_HOTEND, HEATERS_PARALLEL) #define HEATER_1_PIN PB9 #else #define FAN1_PIN PB9 @@ -106,9 +106,9 @@ #endif #ifndef FAN0_PIN - #if EITHER(FET_ORDER_EFB, FET_ORDER_EFF) // Hotend, Fan, Bed or Hotend, Fan, Fan + #if ANY(FET_ORDER_EFB, FET_ORDER_EFF) // Hotend, Fan, Bed or Hotend, Fan, Fan #define FAN0_PIN PB5 - #elif EITHER(FET_ORDER_EEF, FET_ORDER_SF) // Hotend, Hotend, Fan or Spindle, Fan + #elif ANY(FET_ORDER_EEF, FET_ORDER_SF) // Hotend, Hotend, Fan or Spindle, Fan #define FAN0_PIN PD12 #elif ENABLED(FET_ORDER_EEB) // Hotend, Hotend, Bed #define FAN0_PIN -1 // IO pin. Buffer needed diff --git a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h index bdfe24cad010..a0c2ed1dc827 100644 --- a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h +++ b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h @@ -51,7 +51,7 @@ // // EEPROM // -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE (0x800U) // 2K #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) diff --git a/Marlin/src/pins/stm32f1/pins_FLY_MINI.h b/Marlin/src/pins/stm32f1/pins_FLY_MINI.h index f7ef25419fd1..69e11be20cf5 100644 --- a/Marlin/src/pins/stm32f1/pins_FLY_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_FLY_MINI.h @@ -30,7 +30,7 @@ // // Flash EEPROM Emulation // -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE 0x800 // 2K #define EEPROM_START_ADDRESS (0x8000000 + 256 * 1024 - 2 * EEPROM_PAGE_SIZE) // 256K firmware space diff --git a/Marlin/src/pins/stm32f1/pins_FYSETC_AIO_II.h b/Marlin/src/pins/stm32f1/pins_FYSETC_AIO_II.h index c4fde59c47dd..93ef7b75d4e7 100644 --- a/Marlin/src/pins/stm32f1/pins_FYSETC_AIO_II.h +++ b/Marlin/src/pins/stm32f1/pins_FYSETC_AIO_II.h @@ -38,7 +38,7 @@ // // Flash EEPROM Emulation // -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE (0x800U) // 2K #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) diff --git a/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH.h b/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH.h index 47bea172a8aa..49b6f25a47e6 100644 --- a/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH.h +++ b/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH.h @@ -35,7 +35,7 @@ #define RESET_STEPPERS_ON_MEDIA_INSERT #define DISABLE_JTAG -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE (0x800U) // 2K #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) @@ -164,7 +164,7 @@ #define DOGLCD_SCK EXP1_06_PIN #define DOGLCD_MOSI EXP1_08_PIN - #if EITHER(FYSETC_MINI_12864, U8GLIB_ST7920) + #if ANY(FYSETC_MINI_12864, U8GLIB_ST7920) #define FORCE_SOFT_SPI #endif //#define LCD_SCREEN_ROTATE 180 // 0, 90, 180, 270 diff --git a/Marlin/src/pins/stm32f1/pins_GTM32_MINI.h b/Marlin/src/pins/stm32f1/pins_GTM32_MINI.h index 9c136c11f65a..b97ccc8ec738 100644 --- a/Marlin/src/pins/stm32f1/pins_GTM32_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_GTM32_MINI.h @@ -51,7 +51,7 @@ //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 // Enable EEPROM Emulation for this board as it doesn't have EEPROM -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define MARLIN_EEPROM_SIZE 0x1000 // 4K #endif diff --git a/Marlin/src/pins/stm32f1/pins_GTM32_MINI_A30.h b/Marlin/src/pins/stm32f1/pins_GTM32_MINI_A30.h index 2cd77f42b204..4bb8c5dee627 100644 --- a/Marlin/src/pins/stm32f1/pins_GTM32_MINI_A30.h +++ b/Marlin/src/pins/stm32f1/pins_GTM32_MINI_A30.h @@ -51,7 +51,7 @@ //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 // Enable EEPROM Emulation for this board as it doesn't have EEPROM -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define MARLIN_EEPROM_SIZE 0x1000 // 4K #endif diff --git a/Marlin/src/pins/stm32f1/pins_GTM32_PRO_VB.h b/Marlin/src/pins/stm32f1/pins_GTM32_PRO_VB.h index 5e012c177d44..57abf7aca79e 100644 --- a/Marlin/src/pins/stm32f1/pins_GTM32_PRO_VB.h +++ b/Marlin/src/pins/stm32f1/pins_GTM32_PRO_VB.h @@ -56,7 +56,7 @@ //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 // Enable EEPROM Emulation for this board as it doesn't have EEPROM -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define MARLIN_EEPROM_SIZE 0x1000 // 4K #endif diff --git a/Marlin/src/pins/stm32f1/pins_GTM32_REV_B.h b/Marlin/src/pins/stm32f1/pins_GTM32_REV_B.h index 8a0f15806e77..34f7dba91f9c 100644 --- a/Marlin/src/pins/stm32f1/pins_GTM32_REV_B.h +++ b/Marlin/src/pins/stm32f1/pins_GTM32_REV_B.h @@ -51,7 +51,7 @@ //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 // Enable EEPROM Emulation for this board as it doesn't have EEPROM -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define MARLIN_EEPROM_SIZE 0x1000 // 4K #endif diff --git a/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h b/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h index c18085755c32..9b20700adb52 100644 --- a/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h +++ b/Marlin/src/pins/stm32f1/pins_KEDI_CONTROLLER_V1_2.h @@ -31,7 +31,7 @@ // Ignore temp readings during development. //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE (0x800U) // 2KB #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) @@ -228,7 +228,7 @@ //#define LED_PIN EXP1_04_PIN // green //#define LED_PIN EXP1_03_PIN // blue - //#if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + //#if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) // #ifndef RGB_LED_R_PIN // #define RGB_LED_R_PIN EXP1_05_PIN // #endif diff --git a/Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h b/Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h index c86552ba12ad..6add3ca01c12 100644 --- a/Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_MINGDA_MPX_ARM_MINI.h @@ -51,7 +51,7 @@ #define E2END 0xFFFF // EEPROM end address AT24C256 (32kB) */ -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE 0x800U // 2K #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h index 6892655e468f..c7a8da2ddcce 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h @@ -52,7 +52,7 @@ //#define FLASH_EEPROM_EMULATION //#define SDCARD_EEPROM_EMULATION -#if EITHER(NO_EEPROM_SELECTED, I2C_EEPROM) +#if ANY(NO_EEPROM_SELECTED, I2C_EEPROM) #define I2C_EEPROM // EEPROM on I2C-0 #define MARLIN_EEPROM_SIZE 0x1000 // 4K #endif diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h index a8583e92d7e6..c3becd3fa1aa 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h @@ -38,7 +38,7 @@ // // EEPROM // -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE (0x800U) // 2K #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h index 372da38c628a..85c8de26ad70 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h @@ -43,7 +43,7 @@ // // EEPROM // -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE (0x800U) // 2K #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h index 956e9dc72ef1..983cb6adedeb 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h @@ -54,7 +54,7 @@ //#define FLASH_EEPROM_EMULATION //#define SDCARD_EEPROM_EMULATION -#if EITHER(NO_EEPROM_SELECTED, I2C_EEPROM) +#if ANY(NO_EEPROM_SELECTED, I2C_EEPROM) #define I2C_EEPROM // EEPROM on I2C-0 #define MARLIN_EEPROM_SIZE 0x1000 // 4K #endif diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h index 69eee63007c5..16ee7757b95b 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h @@ -42,7 +42,7 @@ #if ENABLED(SRAM_EEPROM_EMULATION) #undef NO_EEPROM_SELECTED #endif -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE (0x800U) // 2K #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) diff --git a/Marlin/src/pins/stm32f1/pins_PANDA_PI_V29.h b/Marlin/src/pins/stm32f1/pins_PANDA_PI_V29.h index 2ce878ea593c..4c65ce9f6456 100644 --- a/Marlin/src/pins/stm32f1/pins_PANDA_PI_V29.h +++ b/Marlin/src/pins/stm32f1/pins_PANDA_PI_V29.h @@ -31,7 +31,7 @@ // Ignore temp readings during development. //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define EEPROM_PAGE_SIZE (0x800U) // 2K #define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL) @@ -178,7 +178,7 @@ #define LCD_PINS_D4 PC1 #endif -#if BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) +#if ALL(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) #ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING #error "CAUTION! LCD_FYSETC_TFT81050 requires wiring modifications. See 'pins_PANDA_PI_V29.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)" @@ -219,7 +219,7 @@ #define CLCD_MOD_RESET PA9 #define CLCD_SPI_CS PB8 - #if SD_CONNECTION_IS(LCD) && BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) + #if SD_CONNECTION_IS(LCD) && ALL(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) #define SD_DETECT_PIN PA15 #define SD_SS_PIN PA10 #endif diff --git a/Marlin/src/pins/stm32f1/pins_STM32F1R.h b/Marlin/src/pins/stm32f1/pins_STM32F1R.h index 46bd48f93fb3..a2efa632f8c8 100644 --- a/Marlin/src/pins/stm32f1/pins_STM32F1R.h +++ b/Marlin/src/pins/stm32f1/pins_STM32F1R.h @@ -120,7 +120,7 @@ #error "LCD_I2C_PANELOLU2 is not supported." #elif ENABLED(LCD_I2C_VIKI) #error "LCD_I2C_VIKI is not supported." - #elif EITHER(VIKI2, miniVIKI) + #elif ANY(VIKI2, miniVIKI) #error "VIKI2 / miniVIKI is not supported." #elif ENABLED(ELB_FULL_GRAPHIC_CONTROLLER) #error "ELB_FULL_GRAPHIC_CONTROLLER is not supported." diff --git a/Marlin/src/pins/stm32f1/pins_STM3R_MINI.h b/Marlin/src/pins/stm32f1/pins_STM3R_MINI.h index 4cf464aaeeca..b4cf21ee7f04 100644 --- a/Marlin/src/pins/stm32f1/pins_STM3R_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_STM3R_MINI.h @@ -144,7 +144,7 @@ #error "LCD_I2C_PANELOLU2 is not supported." #elif ENABLED(LCD_I2C_VIKI) #error "LCD_I2C_VIKI is not supported." - #elif EITHER(VIKI2, miniVIKI) + #elif ANY(VIKI2, miniVIKI) #error "VIKI2 / miniVIKI is not supported." #elif ENABLED(ELB_FULL_GRAPHIC_CONTROLLER) #error "ELB_FULL_GRAPHIC_CONTROLLER is not supported." diff --git a/Marlin/src/pins/stm32f1/pins_ZM3E2_V1_0.h b/Marlin/src/pins/stm32f1/pins_ZM3E2_V1_0.h index 08491fc21cbc..8ce0f48839de 100644 --- a/Marlin/src/pins/stm32f1/pins_ZM3E2_V1_0.h +++ b/Marlin/src/pins/stm32f1/pins_ZM3E2_V1_0.h @@ -205,7 +205,7 @@ #define BOARD_ST7920_DELAY_2 200 #define BOARD_ST7920_DELAY_3 125 -#elif EITHER(ZONESTAR_12864OLED, ZONESTAR_12864OLED_SSD1306) +#elif ANY(ZONESTAR_12864OLED, ZONESTAR_12864OLED_SSD1306) //================================================================================ // OLED 128x64 diff --git a/Marlin/src/pins/stm32f4/pins_ARMED.h b/Marlin/src/pins/stm32f4/pins_ARMED.h index 9a04c80cdd5e..b4661226380f 100644 --- a/Marlin/src/pins/stm32f4/pins_ARMED.h +++ b/Marlin/src/pins/stm32f4/pins_ARMED.h @@ -158,7 +158,7 @@ #define LCD_RESET_PIN PB12 // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN PB13 #endif diff --git a/Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h b/Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h index 8510e8148259..02ad9bb4ad76 100644 --- a/Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h +++ b/Marlin/src/pins/stm32f4/pins_ARTILLERY_RUBY.h @@ -126,7 +126,7 @@ // LCD / Controller // #if HAS_WIRED_LCD - #if EITHER(MKS_12864OLED, MKS_12864OLED_SSD1306) + #if ANY(MKS_12864OLED, MKS_12864OLED_SSD1306) #define LCD_PINS_DC PB8 // Set as output on init #define LCD_PINS_RS PB9 // Pull low for 1s to init // DOGM SPI LCD Support @@ -143,7 +143,7 @@ #define LCD_RESET_PIN PB5 // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN PB9 #endif diff --git a/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h b/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h index ce3d2556bffd..bc80720916fb 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_BTT002_V1_0.h @@ -287,7 +287,7 @@ #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h b/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h index d737dbdc9339..4350fad7f78f 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_E3_RRF.h @@ -196,7 +196,7 @@ #if HAS_WIRED_LCD - #if EITHER(CR10_STOCKDISPLAY, LCD_FOR_MELZI) + #if ANY(CR10_STOCKDISPLAY, LCD_FOR_MELZI) #define BEEPER_PIN PE8 @@ -258,7 +258,7 @@ #define LCD_PINS_D7 PE8 #define ADC_KEYPAD_PIN PB0 // Repurpose servo pin for ADC - CONNECTING TO 5V WILL DAMAGE THE BOARD! - #elif EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY) + #elif ANY(MKS_MINI_12864, ENDER2_STOCKDISPLAY) #define BTN_ENC PE9 #define BTN_EN1 PE7 @@ -330,7 +330,7 @@ #endif // HAS_WIRED_LCD -#if BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) +#if ALL(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) #ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING #error "CAUTION! LCD_FYSETC_TFT81050 requires wiring modifications. See 'pins_BTT_E3_RRF.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)" diff --git a/Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h b/Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h index 0445476490de..2414c07ae363 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_GTR_V1_0.h @@ -464,7 +464,7 @@ //#define LCD_BACKLIGHT_PIN -1 #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h b/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h index 29c1e9f984e4..4cfb8e7b7ea6 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h @@ -27,7 +27,7 @@ #define USES_DIAG_JUMPERS // Onboard I2C EEPROM -#if EITHER(NO_EEPROM_SELECTED, I2C_EEPROM) +#if ANY(NO_EEPROM_SELECTED, I2C_EEPROM) #undef NO_EEPROM_SELECTED #define I2C_EEPROM #define MARLIN_EEPROM_SIZE 0x1000 // 4K (AT24C32) @@ -467,7 +467,7 @@ #define DOGLCD_A0 EXP1_04_PIN //#define LCD_BACKLIGHT_PIN -1 #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h b/Marlin/src/pins/stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h index 6f2de83b5142..64ab2dd6c9e8 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h @@ -43,7 +43,7 @@ #endif // Onboard I2C EEPROM -#if EITHER(NO_EEPROM_SELECTED, I2C_EEPROM) +#if ANY(NO_EEPROM_SELECTED, I2C_EEPROM) #undef NO_EEPROM_SELECTED #define I2C_EEPROM #define SOFT_I2C_EEPROM // Force the use of Software I2C @@ -219,7 +219,7 @@ #define LCD_PINS_D7 EXP1_01_PIN #define ADC_KEYPAD_PIN PA1 // Repurpose servo pin for ADC - CONNECTING TO 5V WILL DAMAGE THE BOARD! - #elif EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY) + #elif ANY(MKS_MINI_12864, ENDER2_STOCKDISPLAY) #define BTN_ENC EXP1_02_PIN #define BTN_EN1 EXP1_03_PIN @@ -280,7 +280,7 @@ #endif // HAS_WIRED_LCD -#if BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) +#if ALL(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) #ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING #error "CAUTION! LCD_FYSETC_TFT81050 requires wiring modifications. See 'pins_BTT_SKR_MINI_E3_common.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)" @@ -332,7 +332,7 @@ #define SDCARD_CONNECTION ONBOARD #endif -#if SD_CONNECTION_IS(LCD) && (BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) || IS_TFTGLCD_PANEL) +#if SD_CONNECTION_IS(LCD) && (ALL(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) || IS_TFTGLCD_PANEL) #define SD_DETECT_PIN EXP1_01_PIN #define SD_SS_PIN EXP1_05_PIN #elif SD_CONNECTION_IS(CUSTOM_CABLE) diff --git a/Marlin/src/pins/stm32f4/pins_BTT_SKR_PRO_common.h b/Marlin/src/pins/stm32f4/pins_BTT_SKR_PRO_common.h index 407d89f60b35..f2fbdb9ece74 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_SKR_PRO_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_SKR_PRO_common.h @@ -29,8 +29,8 @@ // https://github.com/bigtreetech/BTT-Expansion-module/tree/master/BTT%20EXP-MOT //#define BTT_MOTOR_EXPANSION -#if BOTH(HAS_WIRED_LCD, BTT_MOTOR_EXPANSION) - #if EITHER(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) +#if ALL(HAS_WIRED_LCD, BTT_MOTOR_EXPANSION) + #if ANY(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) #define EXP_MOT_USE_EXP2_ONLY 1 #else #error "You can't use both an LCD and a Motor Expansion Module on EXP1/EXP2 at the same time." @@ -505,7 +505,7 @@ #define DOGLCD_A0 EXP1_04_PIN //#define LCD_BACKLIGHT_PIN -1 #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h index 05537ec243a4..055338f45b38 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h @@ -29,8 +29,8 @@ // https://github.com/bigtreetech/BTT-Expansion-module/tree/master/BTT%20EXP-MOT //#define BTT_MOTOR_EXPANSION -#if BOTH(HAS_WIRED_LCD, BTT_MOTOR_EXPANSION) - #if EITHER(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) +#if ALL(HAS_WIRED_LCD, BTT_MOTOR_EXPANSION) + #if ANY(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) #define EXP_MOT_USE_EXP2_ONLY 1 #else #error "You can't use both an LCD and a Motor Expansion Module on EXP1/EXP2 at the same time." @@ -484,7 +484,7 @@ #define DOGLCD_A0 EXP1_04_PIN //#define LCD_BACKLIGHT_PIN -1 #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/stm32f4/pins_FYSETC_CHEETAH_V20.h b/Marlin/src/pins/stm32f4/pins_FYSETC_CHEETAH_V20.h index 626bdcde7621..16973b344fb3 100644 --- a/Marlin/src/pins/stm32f4/pins_FYSETC_CHEETAH_V20.h +++ b/Marlin/src/pins/stm32f4/pins_FYSETC_CHEETAH_V20.h @@ -34,7 +34,7 @@ // Ignore temp readings during development. //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #define FLASH_EEPROM_EMULATION #define FLASH_EEPROM_LEVELING @@ -224,7 +224,7 @@ #define DOGLCD_A0 EXP1_04_PIN //#define LCD_BACKLIGHT_PIN -1 #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/stm32f4/pins_FYSETC_S6.h b/Marlin/src/pins/stm32f4/pins_FYSETC_S6.h index 778049079910..3daa8139524a 100644 --- a/Marlin/src/pins/stm32f4/pins_FYSETC_S6.h +++ b/Marlin/src/pins/stm32f4/pins_FYSETC_S6.h @@ -291,7 +291,7 @@ #define LCD_BACKLIGHT_PIN EXP1_07_PIN #endif #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/stm32f4/pins_I3DBEEZ9.h b/Marlin/src/pins/stm32f4/pins_I3DBEEZ9.h index a7ad18c8dcca..f63f4adeec1e 100644 --- a/Marlin/src/pins/stm32f4/pins_I3DBEEZ9.h +++ b/Marlin/src/pins/stm32f4/pins_I3DBEEZ9.h @@ -33,8 +33,8 @@ //#define MOTOR_EXPANSION -#if BOTH(HAS_WIRED_LCD, MOTOR_EXPANSION) - #if EITHER(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) +#if ALL(HAS_WIRED_LCD, MOTOR_EXPANSION) + #if ANY(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) #define EXP_MOT_USE_EXP2_ONLY 1 #else #error "You can't use both an LCD and a Motor Expansion Module on EXP1/EXP2 at the same time." @@ -560,7 +560,7 @@ #define DOGLCD_A0 EXP1_04_PIN //#define LCD_BACKLIGHT_PIN -1 #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h b/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h index 0940fc5e0c3c..05c938037d51 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h @@ -263,7 +263,7 @@ #endif #endif -#if EITHER(TFT_COLOR_UI, TFT_CLASSIC_UI) +#if ANY(TFT_COLOR_UI, TFT_CLASSIC_UI) #define TFT_CS_PIN EXP1_07_PIN #define TFT_SCK_PIN EXP2_02_PIN #define TFT_MISO_PIN EXP2_01_PIN diff --git a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h index 04c40095295d..cdb9f5edecc4 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h @@ -33,7 +33,7 @@ // Use one of these or SDCard-based Emulation will be used //#define SRAM_EEPROM_EMULATION // Use BackSRAM-based EEPROM emulation //#define FLASH_EEPROM_EMULATION // Use Flash-based EEPROM emulation -#if EITHER(NO_EEPROM_SELECTED, I2C_EEPROM) +#if ANY(NO_EEPROM_SELECTED, I2C_EEPROM) #define I2C_EEPROM #define MARLIN_EEPROM_SIZE 0x1000 // 4K #define I2C_SCL_PIN PB6 diff --git a/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h b/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h index 84d5a5f5e0ab..f7b9fb467432 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_SKIPR_V1_0.h @@ -311,7 +311,7 @@ #define DOGLCD_A0 EXP1_04_PIN //#define LCD_BACKLIGHT_PIN -1 #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h b/Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h index 0ab67c1558a8..61490005987e 100644 --- a/Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h +++ b/Marlin/src/pins/stm32f4/pins_TH3D_EZBOARD_V2.h @@ -61,7 +61,7 @@ // // Limit Switches // -#if EITHER(SENSORLESS_HOMING, SENSORLESS_PROBING) +#if ANY(SENSORLESS_HOMING, SENSORLESS_PROBING) // Sensorless homing pins #if ENABLED(X_AXIS_SENSORLESS_HOMING) #define X_STOP_PIN PB4 @@ -269,7 +269,7 @@ #endif -#if EITHER(CR10_STOCKDISPLAY, MKS_MINI_12864) +#if ANY(CR10_STOCKDISPLAY, MKS_MINI_12864) #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN #define BTN_ENC EXP1_02_PIN diff --git a/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h b/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h index 07c68dc780d5..6c31fdc57261 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_EBB42_V1_1.h @@ -38,7 +38,7 @@ // // EEPROM // -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #undef NO_EEPROM_SELECTED #ifndef FLASH_EEPROM_EMULATION #define FLASH_EEPROM_EMULATION diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h index 25f1b307ca8d..156698f4247e 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h @@ -35,7 +35,7 @@ // // EEPROM // -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #undef NO_EEPROM_SELECTED #ifndef FLASH_EEPROM_EMULATION #define FLASH_EEPROM_EMULATION @@ -286,7 +286,7 @@ #define LCD_PINS_D7 EXP1_01_PIN #define ADC_KEYPAD_PIN PA7 // Repurpose default SERVO0_PIN for ADC - CONNECTING TO 5V WILL DAMAGE THE BOARD! - #elif EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY) + #elif ANY(MKS_MINI_12864, ENDER2_STOCKDISPLAY) #define BTN_EN1 EXP1_03_PIN #define BTN_EN2 EXP1_05_PIN @@ -317,7 +317,7 @@ #define SD_DETECT_PIN -1 -#if SD_CONNECTION_IS(LCD) && (BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) || IS_TFTGLCD_PANEL) +#if SD_CONNECTION_IS(LCD) && (ALL(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) || IS_TFTGLCD_PANEL) #define SD_SS_PIN EXP1_05_PIN #elif SD_CONNECTION_IS(CUSTOM_CABLE) #error "SD CUSTOM_CABLE is not compatible with Manta E3 EZ." diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h index 3a18b7864c8b..33b957f53a3e 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h @@ -37,7 +37,7 @@ // // EEPROM // -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #undef NO_EEPROM_SELECTED #ifndef FLASH_EEPROM_EMULATION #define FLASH_EEPROM_EMULATION @@ -259,7 +259,7 @@ // results in LCD soft SPI mode 3, SD soft SPI mode 0 #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h index 1d77a6cb0751..286a59a00b6e 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h @@ -35,7 +35,7 @@ // // EEPROM // -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #undef NO_EEPROM_SELECTED #ifndef FLASH_EEPROM_EMULATION #define FLASH_EEPROM_EMULATION @@ -287,7 +287,7 @@ // results in LCD soft SPI mode 3, SD soft SPI mode 0 #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h index 8cab6b53574f..d4a21ba2f24f 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h @@ -33,7 +33,7 @@ // // EEPROM // -#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) +#if ANY(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION) #undef NO_EEPROM_SELECTED #ifndef FLASH_EEPROM_EMULATION #define FLASH_EEPROM_EMULATION @@ -337,7 +337,7 @@ // results in LCD soft SPI mode 3, SD soft SPI mode 0 #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/stm32g0/pins_BTT_SKR_MINI_E3_V3_0.h b/Marlin/src/pins/stm32g0/pins_BTT_SKR_MINI_E3_V3_0.h index 0f7da52572e8..ef6a22b88f1b 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_SKR_MINI_E3_V3_0.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_SKR_MINI_E3_V3_0.h @@ -37,7 +37,7 @@ #define LED_PIN PD8 // Onboard I2C EEPROM -#if EITHER(NO_EEPROM_SELECTED, I2C_EEPROM) +#if ANY(NO_EEPROM_SELECTED, I2C_EEPROM) #undef NO_EEPROM_SELECTED #define I2C_EEPROM #define SOFT_I2C_EEPROM // Force the use of Software I2C @@ -255,7 +255,7 @@ #define LCD_PINS_D7 EXP1_01_PIN #define ADC_KEYPAD_PIN PA1 // Repurpose servo pin for ADC - CONNECTING TO 5V WILL DAMAGE THE BOARD! - #elif EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY) + #elif ANY(MKS_MINI_12864, ENDER2_STOCKDISPLAY) #define BTN_ENC EXP1_02_PIN #define BTN_EN1 EXP1_03_PIN @@ -363,7 +363,7 @@ #endif // HAS_WIRED_LCD -#if BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) +#if ALL(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) #ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING #error "CAUTION! LCD_FYSETC_TFT81050 requires wiring modifications. See 'pins_BTT_SKR_MINI_E3_common.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)" @@ -416,7 +416,7 @@ #if SD_CONNECTION_IS(ONBOARD) #define SD_DETECT_PIN PC3 -#elif SD_CONNECTION_IS(LCD) && (BOTH(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) || IS_TFTGLCD_PANEL) +#elif SD_CONNECTION_IS(LCD) && (ALL(TOUCH_UI_FTDI_EVE, LCD_FYSETC_TFT81050) || IS_TFTGLCD_PANEL) #define SD_DETECT_PIN EXP1_01_PIN #define SD_SS_PIN EXP1_05_PIN #elif SD_CONNECTION_IS(CUSTOM_CABLE) diff --git a/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h b/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h index 69723947fd73..ee92372b5a0f 100644 --- a/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h +++ b/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h @@ -28,7 +28,7 @@ #define USES_DIAG_JUMPERS // Onboard I2C EEPROM -#if EITHER(NO_EEPROM_SELECTED, I2C_EEPROM) +#if ANY(NO_EEPROM_SELECTED, I2C_EEPROM) #undef NO_EEPROM_SELECTED #define I2C_EEPROM #define SOFT_I2C_EEPROM // Force the use of Software I2C @@ -440,7 +440,7 @@ // results in LCD soft SPI mode 3, SD soft SPI mode 0 //#define LCD_BACKLIGHT_PIN -1 #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h index 77f47f810664..85fd24da0fc6 100644 --- a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h +++ b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h @@ -27,8 +27,8 @@ // https://github.com/bigtreetech/BTT-Expansion-module/tree/master/BTT%20EXP-MOT //#define BTT_MOTOR_EXPANSION -#if BOTH(HAS_WIRED_LCD, BTT_MOTOR_EXPANSION) - #if EITHER(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) +#if ALL(HAS_WIRED_LCD, BTT_MOTOR_EXPANSION) + #if ANY(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) #define EXP_MOT_USE_EXP2_ONLY 1 #else #error "You can't use both an LCD and a Motor Expansion Module on EXP1/EXP2 at the same time." @@ -38,7 +38,7 @@ #define USES_DIAG_JUMPERS // Onboard I2C EEPROM -#if EITHER(NO_EEPROM_SELECTED, I2C_EEPROM) +#if ANY(NO_EEPROM_SELECTED, I2C_EEPROM) #undef NO_EEPROM_SELECTED #define I2C_EEPROM #define SOFT_I2C_EEPROM // Force the use of Software I2C @@ -473,7 +473,7 @@ #define DOGLCD_A0 EXP1_04_PIN //#define LCD_BACKLIGHT_PIN -1 #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) #ifndef RGB_LED_R_PIN #define RGB_LED_R_PIN EXP1_06_PIN #endif diff --git a/Marlin/src/pins/teensy2/pins_PRINTRBOARD.h b/Marlin/src/pins/teensy2/pins_PRINTRBOARD.h index 124faa769106..c1eee00c2dd3 100644 --- a/Marlin/src/pins/teensy2/pins_PRINTRBOARD.h +++ b/Marlin/src/pins/teensy2/pins_PRINTRBOARD.h @@ -139,7 +139,7 @@ #define LCD_PINS_D6 5 // D5 JP11-6 #define LCD_PINS_D7 4 // D4 JP11-5 - #if EITHER(VIKI2, miniVIKI) + #if ANY(VIKI2, miniVIKI) #define BEEPER_PIN 8 // E0 JP11-10 #define DOGLCD_A0 40 // F2 JP2-2 diff --git a/Marlin/src/pins/teensy2/pins_PRINTRBOARD_REVF.h b/Marlin/src/pins/teensy2/pins_PRINTRBOARD_REVF.h index b208b08826f3..62922399d827 100644 --- a/Marlin/src/pins/teensy2/pins_PRINTRBOARD_REVF.h +++ b/Marlin/src/pins/teensy2/pins_PRINTRBOARD_REVF.h @@ -220,7 +220,7 @@ #define LCD_PINS_D6 5 // D5 JP11-6 #define LCD_PINS_D7 4 // D4 JP11-5 - #if EITHER(VIKI2, miniVIKI) + #if ANY(VIKI2, miniVIKI) #define BEEPER_PIN 8 // E0 JP11-10 #define DOGLCD_A0 40 // F2 JP2-2 diff --git a/Marlin/src/pins/teensy2/pins_SAV_MKI.h b/Marlin/src/pins/teensy2/pins_SAV_MKI.h index c1809eed6b3c..28b0aebe42a6 100644 --- a/Marlin/src/pins/teensy2/pins_SAV_MKI.h +++ b/Marlin/src/pins/teensy2/pins_SAV_MKI.h @@ -163,7 +163,7 @@ #define SR_CLK_PIN EXT_AUX_SCL_D0 #endif -#if EITHER(SAV_3DLCD, SAV_3DGLCD) +#if ANY(SAV_3DLCD, SAV_3DGLCD) #define BTN_EN1 EXT_AUX_A1_IO #define BTN_EN2 EXT_AUX_A0_IO diff --git a/Marlin/src/sd/Sd2Card.h b/Marlin/src/sd/Sd2Card.h index 23677b24fa4b..71e31ac614c2 100644 --- a/Marlin/src/sd/Sd2Card.h +++ b/Marlin/src/sd/Sd2Card.h @@ -83,7 +83,7 @@ uint8_t const SD_CARD_TYPE_SD1 = 1, // Standard capacity V1 SD card /** * Define SOFTWARE_SPI to use bit-bang SPI */ -#if EITHER(MEGA_SOFT_SPI, USE_SOFTWARE_SPI) +#if ANY(MEGA_SOFT_SPI, USE_SOFTWARE_SPI) #define SOFTWARE_SPI #endif diff --git a/Marlin/src/sd/cardreader.cpp b/Marlin/src/sd/cardreader.cpp index a4a10b316986..811351ec8c1f 100644 --- a/Marlin/src/sd/cardreader.cpp +++ b/Marlin/src/sd/cardreader.cpp @@ -60,7 +60,7 @@ #include "../../src/lcd/menu/menu.h" #endif -#define DEBUG_OUT EITHER(DEBUG_CARDREADER, MARLIN_DEV_MODE) +#define DEBUG_OUT ANY(DEBUG_CARDREADER, MARLIN_DEV_MODE) #include "../core/debug_out.h" #include "../libs/hex_print.h" @@ -176,7 +176,7 @@ CardReader::CardReader() { workDirDepth = 0; ZERO(workDirParents); - #if BOTH(HAS_MEDIA, HAS_SD_DETECT) + #if ALL(HAS_MEDIA, HAS_SD_DETECT) SET_INPUT_PULLUP(SD_DETECT_PIN); #endif @@ -499,7 +499,7 @@ void CardReader::mount() { if (flag.mounted) cdroot(); else { - #if EITHER(HAS_SD_DETECT, USB_FLASH_DRIVE_SUPPORT) + #if ANY(HAS_SD_DETECT, USB_FLASH_DRIVE_SUPPORT) if (marlin_state != MF_INITIALIZING) LCD_ALERTMESSAGE(MSG_MEDIA_INIT_FAIL); #endif } @@ -1355,7 +1355,7 @@ void CardReader::cdroot() { } else { sort_order[0] = 0; - #if BOTH(SDSORT_USES_RAM, SDSORT_CACHE_NAMES) + #if ALL(SDSORT_USES_RAM, SDSORT_CACHE_NAMES) #if ENABLED(SDSORT_DYNAMIC_RAM) sortnames = new char*[1]; sortshort = new char*[1]; diff --git a/Marlin/src/sd/cardreader.h b/Marlin/src/sd/cardreader.h index 832d79efe4ee..80e317ebcf10 100644 --- a/Marlin/src/sd/cardreader.h +++ b/Marlin/src/sd/cardreader.h @@ -284,7 +284,7 @@ class CardReader { static uint8_t sort_order[SDSORT_LIMIT]; #endif - #if BOTH(SDSORT_USES_RAM, SDSORT_CACHE_NAMES) && DISABLED(SDSORT_DYNAMIC_RAM) + #if ALL(SDSORT_USES_RAM, SDSORT_CACHE_NAMES) && DISABLED(SDSORT_DYNAMIC_RAM) #define SORTED_LONGNAME_MAXLEN (SDSORT_CACHE_VFATS) * (FILENAME_LENGTH) #define SORTED_LONGNAME_STORAGE (SORTED_LONGNAME_MAXLEN + 1) #else diff --git a/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.h b/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.h index 3390bc51becc..f722c873ae0a 100644 --- a/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.h +++ b/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.h @@ -33,7 +33,7 @@ /** * Define SOFTWARE_SPI to use bit-bang SPI */ - #if EITHER(MEGA_SOFT_SPI, USE_SOFTWARE_SPI) + #if ANY(MEGA_SOFT_SPI, USE_SOFTWARE_SPI) #define SOFTWARE_SPI #endif diff --git a/buildroot/share/PlatformIO/scripts/common-dependencies.h b/buildroot/share/PlatformIO/scripts/common-dependencies.h index c75d9a3d675a..b37a377df994 100644 --- a/buildroot/share/PlatformIO/scripts/common-dependencies.h +++ b/buildroot/share/PlatformIO/scripts/common-dependencies.h @@ -33,7 +33,7 @@ // #if ENABLED(SR_LCD_3W_NL) // Feature checks for SR_LCD_3W_NL -#elif EITHER(LCD_I2C_TYPE_MCP23017, LCD_I2C_TYPE_MCP23008) +#elif ANY(LCD_I2C_TYPE_MCP23017, LCD_I2C_TYPE_MCP23008) #define USES_LIQUIDTWI2 #elif ENABLED(LCD_I2C_TYPE_PCA8574) #define USES_LIQUIDCRYSTAL_I2C @@ -59,10 +59,10 @@ #if ENABLED(CANCEL_OBJECTS) #define HAS_MENU_CANCELOBJECT #endif - #if EITHER(DELTA_CALIBRATION_MENU, DELTA_AUTO_CALIBRATION) + #if ANY(DELTA_CALIBRATION_MENU, DELTA_AUTO_CALIBRATION) #define HAS_MENU_DELTA_CALIBRATE #endif - #if EITHER(LED_CONTROL_MENU, CASE_LIGHT_MENU) + #if ANY(LED_CONTROL_MENU, CASE_LIGHT_MENU) #define HAS_MENU_LED #endif #if ENABLED(ADVANCED_PAUSE_FEATURE) From 86c811660ebf0b3fcbae2f34273d4c9d0c22abc4 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 2 Jun 2023 14:30:34 -0500 Subject: [PATCH 240/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Rem?= =?UTF-8?q?ove=20LOOP=20macros=20(#25917)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/AVR/HAL_SPI.cpp | 4 ++-- Marlin/src/HAL/AVR/fast_pwm.cpp | 4 ++-- Marlin/src/HAL/AVR/pinsDebug.h | 4 ++-- Marlin/src/HAL/AVR/u8g_com_HAL_AVR_sw_spi.cpp | 4 ++-- .../dogm/u8g_com_HAL_DUE_sw_spi_shared.cpp | 4 ++-- Marlin/src/HAL/DUE/fastio/G2_PWM.h | 2 +- Marlin/src/HAL/ESP32/i2s.cpp | 2 +- Marlin/src/HAL/LPC1768/main.cpp | 2 +- Marlin/src/HAL/LPC1768/tft/tft_spi.cpp | 2 +- .../u8g/u8g_com_HAL_LPC1768_sw_spi.cpp | 16 ++++++------- .../src/HAL/NATIVE_SIM/u8g/u8g_com_sw_spi.cpp | 16 ++++++------- Marlin/src/HAL/SAMD51/HAL.cpp | 6 ++--- Marlin/src/HAL/STM32/fastio.cpp | 2 +- Marlin/src/HAL/STM32/tft/gt911.cpp | 12 +++++----- Marlin/src/HAL/STM32/timers.cpp | 4 ++-- .../STM32F1/dogm/u8g_com_stm32duino_swspi.cpp | 16 ++++++------- Marlin/src/HAL/STM32F1/tft/tft_spi.cpp | 2 +- Marlin/src/HAL/shared/servo.cpp | 2 +- Marlin/src/MarlinCore.cpp | 4 ++-- Marlin/src/core/macros.h | 5 ---- Marlin/src/core/serial_base.h | 2 +- Marlin/src/core/types.h | 10 ++++---- Marlin/src/feature/babystep.h | 2 +- Marlin/src/feature/bedlevel/abl/bbl.cpp | 16 ++++++------- Marlin/src/feature/bedlevel/bedlevel.cpp | 8 +++---- .../bedlevel/mbl/mesh_bed_leveling.cpp | 4 ++-- Marlin/src/feature/bedlevel/ubl/ubl.cpp | 4 ++-- Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp | 24 +++++++++---------- .../src/feature/digipot/digipot_mcp4018.cpp | 4 ++-- .../src/feature/digipot/digipot_mcp4451.cpp | 2 +- Marlin/src/feature/encoder_i2c.cpp | 6 ++--- Marlin/src/feature/encoder_i2c.h | 2 +- Marlin/src/feature/fancheck.cpp | 10 ++++---- Marlin/src/feature/filwidth.cpp | 2 +- Marlin/src/feature/leds/leds.cpp | 8 +++---- Marlin/src/feature/max7219.cpp | 22 ++++++++--------- Marlin/src/feature/mixing.cpp | 4 ++-- Marlin/src/feature/mmu/mmu2.cpp | 10 ++++---- Marlin/src/feature/powerloss.cpp | 2 +- Marlin/src/feature/probe_temp_comp.cpp | 12 +++++----- Marlin/src/feature/repeat.cpp | 2 +- Marlin/src/feature/repeat.h | 2 +- Marlin/src/feature/runout.h | 24 +++++++++---------- Marlin/src/feature/twibus.cpp | 2 +- Marlin/src/feature/x_twist.cpp | 4 ++-- Marlin/src/gcode/bedlevel/G26.cpp | 2 +- Marlin/src/gcode/bedlevel/G35.cpp | 4 ++-- Marlin/src/gcode/bedlevel/abl/G29.cpp | 4 ++-- Marlin/src/gcode/bedlevel/abl/M421.cpp | 4 ++-- Marlin/src/gcode/calibrate/G34_M422.cpp | 16 ++++++------- Marlin/src/gcode/calibrate/G425.cpp | 4 ++-- Marlin/src/gcode/calibrate/M100.cpp | 4 ++-- Marlin/src/gcode/calibrate/M48.cpp | 6 ++--- Marlin/src/gcode/config/M200-M205.cpp | 4 ++-- Marlin/src/gcode/config/M218.cpp | 2 +- Marlin/src/gcode/config/M281.cpp | 2 +- Marlin/src/gcode/config/M305.cpp | 2 +- Marlin/src/gcode/config/M43.cpp | 10 ++++---- Marlin/src/gcode/config/M672.cpp | 2 +- Marlin/src/gcode/config/M92.cpp | 2 +- Marlin/src/gcode/control/M111.cpp | 2 +- Marlin/src/gcode/feature/camera/M240.cpp | 2 +- .../src/gcode/feature/digipot/M907-M910.cpp | 6 ++--- Marlin/src/gcode/feature/leds/M7219.cpp | 2 +- .../src/gcode/feature/network/M552-M554.cpp | 4 ++-- Marlin/src/gcode/host/M114.cpp | 2 +- Marlin/src/gcode/host/M115.cpp | 2 +- Marlin/src/gcode/lcd/M145.cpp | 2 +- Marlin/src/gcode/probe/M423.cpp | 2 +- Marlin/src/gcode/queue.cpp | 6 ++--- Marlin/src/inc/Conditionals_LCD.h | 2 +- Marlin/src/lcd/HD44780/marlinui_HD44780.cpp | 4 ++-- Marlin/src/lcd/dogm/marlinui_DOGM.cpp | 4 ++-- Marlin/src/lcd/dogm/status_screen_DOGM.cpp | 2 +- .../lcd/dogm/status_screen_lite_ST7920.cpp | 8 +++---- .../lcd/dogm/u8g_dev_st7920_128x64_HAL.cpp | 4 ++-- .../dogm/u8g_dev_tft_upscale_from_128x64.cpp | 12 +++++----- Marlin/src/lcd/e3v2/common/dwin_api.cpp | 4 ++-- Marlin/src/lcd/e3v2/creality/dwin.cpp | 14 +++++------ Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 12 +++++----- Marlin/src/lcd/e3v2/proui/dwin.cpp | 14 +++++------ Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp | 4 ++-- Marlin/src/lcd/e3v2/proui/meshviewer.cpp | 10 ++++---- .../src/lcd/extui/anycubic_vyper/dgus_tft.cpp | 18 +++++++------- .../lcd/extui/dgus/DGUSScreenHandlerBase.h | 2 +- .../src/lcd/extui/dgus_reloaded/DGUSDisplay.h | 2 +- .../extended/unicode/cyrillic_char_set.cpp | 4 ++-- .../extended/unicode/western_char_set.cpp | 4 ++-- .../generic/move_axis_screen.cpp | 2 +- Marlin/src/lcd/extui/malyan/malyan.cpp | 4 ++-- Marlin/src/lcd/extui/mks_ui/pic_manager.cpp | 2 +- Marlin/src/lcd/marlinui.cpp | 4 ++-- Marlin/src/lcd/marlinui.h | 2 +- Marlin/src/lcd/menu/game/brickout.cpp | 8 +++---- Marlin/src/lcd/menu/game/invaders.cpp | 20 ++++++++-------- Marlin/src/lcd/menu/game/maze.cpp | 2 +- Marlin/src/lcd/menu/game/snake.cpp | 14 +++++------ Marlin/src/lcd/menu/menu_advanced.cpp | 6 ++--- Marlin/src/lcd/menu/menu_configuration.cpp | 2 +- Marlin/src/lcd/menu/menu_filament.cpp | 8 +++---- Marlin/src/lcd/menu/menu_mixer.cpp | 2 +- Marlin/src/lcd/menu/menu_password.cpp | 2 +- Marlin/src/lcd/menu/menu_temperature.cpp | 6 ++--- Marlin/src/lcd/menu/menu_tune.cpp | 2 +- Marlin/src/lcd/menu/menu_x_twist.cpp | 4 ++-- Marlin/src/libs/BL24CXX.cpp | 8 +++---- Marlin/src/libs/nozzle.cpp | 8 +++---- Marlin/src/libs/vector_3.cpp | 12 +++++----- Marlin/src/module/endstops.cpp | 2 +- Marlin/src/module/planner.cpp | 4 ++-- Marlin/src/module/planner.h | 2 +- Marlin/src/module/probe.cpp | 4 ++-- Marlin/src/module/settings.cpp | 24 +++++++++---------- Marlin/src/module/stepper.cpp | 6 ++--- Marlin/src/module/stepper/trinamic.cpp | 2 +- Marlin/src/module/temperature.cpp | 2 +- Marlin/src/module/temperature.h | 4 ++-- Marlin/src/module/tool_change.cpp | 2 +- Marlin/src/pins/pinsDebug.h | 2 +- Marlin/src/sd/Sd2Card.cpp | 10 ++++---- Marlin/src/sd/SdBaseFile.cpp | 18 +++++++------- Marlin/src/sd/cardreader.cpp | 6 ++--- 122 files changed, 362 insertions(+), 367 deletions(-) diff --git a/Marlin/src/HAL/AVR/HAL_SPI.cpp b/Marlin/src/HAL/AVR/HAL_SPI.cpp index dc98f2f79e71..32c0361d0352 100644 --- a/Marlin/src/HAL/AVR/HAL_SPI.cpp +++ b/Marlin/src/HAL/AVR/HAL_SPI.cpp @@ -198,7 +198,7 @@ void spiBegin() { // output pin high - like sending 0xFF WRITE(SD_MOSI_PIN, HIGH); - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { WRITE(SD_SCK_PIN, HIGH); nop; // adjust so SCK is nice @@ -225,7 +225,7 @@ void spiBegin() { void spiSend(uint8_t data) { // no interrupts during byte send - about 8µs cli(); - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { WRITE(SD_SCK_PIN, LOW); WRITE(SD_MOSI_PIN, data & 0x80); data <<= 1; diff --git a/Marlin/src/HAL/AVR/fast_pwm.cpp b/Marlin/src/HAL/AVR/fast_pwm.cpp index 0b2b8fd0b3a4..6da68e6245d3 100644 --- a/Marlin/src/HAL/AVR/fast_pwm.cpp +++ b/Marlin/src/HAL/AVR/fast_pwm.cpp @@ -132,7 +132,7 @@ void MarlinHAL::set_pwm_frequency(const pin_t pin, const uint16_t f_desired) { DEBUG_ECHOLNPGM("f=", f); DEBUG_ECHOLNPGM("(prescaler loop)"); - LOOP_L_N(i, COUNT(prescaler)) { // Loop through all prescaler values + for (uint8_t i = 0; i < COUNT(prescaler); ++i) { // Loop through all prescaler values const uint32_t p = prescaler[i]; // Extend to 32 bits for calculations DEBUG_ECHOLNPGM("prescaler[", i, "]=", p); uint16_t res_fast_temp, res_pc_temp; @@ -232,7 +232,7 @@ void MarlinHAL::init_pwm_timers() { #endif }; - LOOP_L_N(i, COUNT(pwm_pin)) + for (uint8_t i = 0; i < COUNT(pwm_pin); ++i) set_pwm_frequency(pwm_pin[i], 1000); } diff --git a/Marlin/src/HAL/AVR/pinsDebug.h b/Marlin/src/HAL/AVR/pinsDebug.h index accd3c663f71..fc51f41ef81e 100644 --- a/Marlin/src/HAL/AVR/pinsDebug.h +++ b/Marlin/src/HAL/AVR/pinsDebug.h @@ -77,12 +77,12 @@ void PRINT_ARRAY_NAME(uint8_t x) { PGM_P const name_mem_pointer = (PGM_P)pgm_read_ptr(&pin_array[x].name); - LOOP_L_N(y, MAX_NAME_LENGTH) { + for (uint8_t y = 0; y < MAX_NAME_LENGTH; ++y) { char temp_char = pgm_read_byte(name_mem_pointer + y); if (temp_char != 0) SERIAL_CHAR(temp_char); else { - LOOP_L_N(i, MAX_NAME_LENGTH - y) SERIAL_CHAR(' '); + for (uint8_t i = 0; i < MAX_NAME_LENGTH - y; ++i) SERIAL_CHAR(' '); break; } } diff --git a/Marlin/src/HAL/AVR/u8g_com_HAL_AVR_sw_spi.cpp b/Marlin/src/HAL/AVR/u8g_com_HAL_AVR_sw_spi.cpp index 45b54379dba7..79bafe293967 100644 --- a/Marlin/src/HAL/AVR/u8g_com_HAL_AVR_sw_spi.cpp +++ b/Marlin/src/HAL/AVR/u8g_com_HAL_AVR_sw_spi.cpp @@ -88,7 +88,7 @@ void u8g_spiSend_sw_AVR_mode_0(uint8_t val) { volatile uint8_t *outData = u8g_outData, *outClock = u8g_outClock; U8G_ATOMIC_START(); - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { if (val & 0x80) *outData |= bitData; else @@ -108,7 +108,7 @@ void u8g_spiSend_sw_AVR_mode_3(uint8_t val) { volatile uint8_t *outData = u8g_outData, *outClock = u8g_outClock; U8G_ATOMIC_START(); - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { *outClock &= bitNotClock; if (val & 0x80) *outData |= bitData; diff --git a/Marlin/src/HAL/DUE/dogm/u8g_com_HAL_DUE_sw_spi_shared.cpp b/Marlin/src/HAL/DUE/dogm/u8g_com_HAL_DUE_sw_spi_shared.cpp index 904924793b4c..86c8a4847026 100644 --- a/Marlin/src/HAL/DUE/dogm/u8g_com_HAL_DUE_sw_spi_shared.cpp +++ b/Marlin/src/HAL/DUE/dogm/u8g_com_HAL_DUE_sw_spi_shared.cpp @@ -81,7 +81,7 @@ Pio *SCK_pPio, *MOSI_pPio; uint32_t SCK_dwMask, MOSI_dwMask; void u8g_spiSend_sw_DUE_mode_0(uint8_t val) { // 3MHz - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { if (val & 0x80) MOSI_pPio->PIO_SODR = MOSI_dwMask; else @@ -95,7 +95,7 @@ void u8g_spiSend_sw_DUE_mode_0(uint8_t val) { // 3MHz } void u8g_spiSend_sw_DUE_mode_3(uint8_t val) { // 3.5MHz - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { SCK_pPio->PIO_CODR = SCK_dwMask; DELAY_NS(50); if (val & 0x80) diff --git a/Marlin/src/HAL/DUE/fastio/G2_PWM.h b/Marlin/src/HAL/DUE/fastio/G2_PWM.h index dc4edffff851..2afe246ceaea 100644 --- a/Marlin/src/HAL/DUE/fastio/G2_PWM.h +++ b/Marlin/src/HAL/DUE/fastio/G2_PWM.h @@ -63,7 +63,7 @@ extern PWM_map ISR_table[NUM_PWMS]; extern uint32_t motor_current_setting[3]; #define IR_BIT(p) (WITHIN(p, 0, 3) ? (p) : (p) + 4) -#define COPY_ACTIVE_TABLE() do{ LOOP_L_N(i, 6) work_table[i] = active_table[i]; }while(0) +#define COPY_ACTIVE_TABLE() do{ for (uint8_t i = 0; i < 6; ++i) work_table[i] = active_table[i]; }while(0) #define PWM_MR0 19999 // base repetition rate minus one count - 20mS #define PWM_PR 24 // prescaler value - prescaler divide by 24 + 1 - 1 MHz output diff --git a/Marlin/src/HAL/ESP32/i2s.cpp b/Marlin/src/HAL/ESP32/i2s.cpp index 63ceed4c9dcd..69f8ca98458a 100644 --- a/Marlin/src/HAL/ESP32/i2s.cpp +++ b/Marlin/src/HAL/ESP32/i2s.cpp @@ -356,7 +356,7 @@ void i2s_push_sample() { // Every 4µs (when space in DMA buffer) toggle each expander PWM output using // the current duty cycle/frequency so they sync with any steps (once // through the DMA/FIFO buffers). PWM signal inversion handled by other functions - LOOP_L_N(p, MAX_EXPANDER_BITS) { + for (uint8_t p = 0; p < MAX_EXPANDER_BITS; ++p) { if (hal.pwm_pin_data[p].pwm_duty_ticks > 0) { // pin has active pwm? if (hal.pwm_pin_data[p].pwm_tick_count == 0) { if (TEST32(i2s_port_data, p)) { // hi->lo diff --git a/Marlin/src/HAL/LPC1768/main.cpp b/Marlin/src/HAL/LPC1768/main.cpp index 419c99793fb8..15518c3d8654 100644 --- a/Marlin/src/HAL/LPC1768/main.cpp +++ b/Marlin/src/HAL/LPC1768/main.cpp @@ -68,7 +68,7 @@ void MarlinHAL::init() { #endif // Flash status LED 3 times to indicate Marlin has started booting - LOOP_L_N(i, 6) { + for (uint8_t i = 0; i < 6; ++i) { TOGGLE(LED_PIN); delay(100); } diff --git a/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp b/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp index 10555762b1a0..c148617785cc 100644 --- a/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp +++ b/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp @@ -74,7 +74,7 @@ uint32_t TFT_SPI::ReadID(uint16_t Reg) { WRITE(TFT_CS_PIN, LOW); WriteReg(Reg); - LOOP_L_N(i, 4) { + for (uint8_t i = 0; i < 4; ++i) { SPIx.read((uint8_t*)&d, 1); data = (data << 8) | d; } diff --git a/Marlin/src/HAL/LPC1768/u8g/u8g_com_HAL_LPC1768_sw_spi.cpp b/Marlin/src/HAL/LPC1768/u8g/u8g_com_HAL_LPC1768_sw_spi.cpp index 785b4ef5c410..f6ed7b0e7e8a 100644 --- a/Marlin/src/HAL/LPC1768/u8g/u8g_com_HAL_LPC1768_sw_spi.cpp +++ b/Marlin/src/HAL/LPC1768/u8g/u8g_com_HAL_LPC1768_sw_spi.cpp @@ -75,7 +75,7 @@ uint8_t swSpiTransfer_mode_0(uint8_t b, const uint8_t spi_speed, const pin_t sck_pin, const pin_t miso_pin, const pin_t mosi_pin ) { - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { if (spi_speed == 0) { LPC176x::gpio_set(mosi_pin, !!(b & 0x80)); LPC176x::gpio_set(sck_pin, HIGH); @@ -85,16 +85,16 @@ uint8_t swSpiTransfer_mode_0(uint8_t b, const uint8_t spi_speed, const pin_t sck } else { const uint8_t state = (b & 0x80) ? HIGH : LOW; - LOOP_L_N(j, spi_speed) + for (uint8_t j = 0; j < spi_speed; ++j) LPC176x::gpio_set(mosi_pin, state); - LOOP_L_N(j, spi_speed + (miso_pin >= 0 ? 0 : 1)) + for (uint8_t j = 0; j < spi_speed + (miso_pin >= 0 ? 0 : 1); ++j) LPC176x::gpio_set(sck_pin, HIGH); b <<= 1; if (miso_pin >= 0 && LPC176x::gpio_get(miso_pin)) b |= 1; - LOOP_L_N(j, spi_speed) + for (uint8_t j = 0; j < spi_speed; ++j) LPC176x::gpio_set(sck_pin, LOW); } } @@ -104,7 +104,7 @@ uint8_t swSpiTransfer_mode_0(uint8_t b, const uint8_t spi_speed, const pin_t sck uint8_t swSpiTransfer_mode_3(uint8_t b, const uint8_t spi_speed, const pin_t sck_pin, const pin_t miso_pin, const pin_t mosi_pin ) { - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { const uint8_t state = (b & 0x80) ? HIGH : LOW; if (spi_speed == 0) { LPC176x::gpio_set(sck_pin, LOW); @@ -113,13 +113,13 @@ uint8_t swSpiTransfer_mode_3(uint8_t b, const uint8_t spi_speed, const pin_t sck LPC176x::gpio_set(sck_pin, HIGH); } else { - LOOP_L_N(j, spi_speed + (miso_pin >= 0 ? 0 : 1)) + for (uint8_t j = 0; j < spi_speed + (miso_pin >= 0 ? 0 : 1); ++j) LPC176x::gpio_set(sck_pin, LOW); - LOOP_L_N(j, spi_speed) + for (uint8_t j = 0; j < spi_speed; ++j) LPC176x::gpio_set(mosi_pin, state); - LOOP_L_N(j, spi_speed) + for (uint8_t j = 0; j < spi_speed; ++j) LPC176x::gpio_set(sck_pin, HIGH); } b <<= 1; diff --git a/Marlin/src/HAL/NATIVE_SIM/u8g/u8g_com_sw_spi.cpp b/Marlin/src/HAL/NATIVE_SIM/u8g/u8g_com_sw_spi.cpp index 5187a4958308..9184e2f6188c 100644 --- a/Marlin/src/HAL/NATIVE_SIM/u8g/u8g_com_sw_spi.cpp +++ b/Marlin/src/HAL/NATIVE_SIM/u8g/u8g_com_sw_spi.cpp @@ -70,7 +70,7 @@ #endif uint8_t swSpiTransfer_mode_0(uint8_t b, const uint8_t spi_speed, const pin_t sck_pin, const pin_t miso_pin, const pin_t mosi_pin ) { - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { if (spi_speed == 0) { WRITE_PIN(mosi_pin, !!(b & 0x80)); WRITE_PIN(sck_pin, HIGH); @@ -80,16 +80,16 @@ uint8_t swSpiTransfer_mode_0(uint8_t b, const uint8_t spi_speed, const pin_t sck } else { const uint8_t state = (b & 0x80) ? HIGH : LOW; - LOOP_L_N(j, spi_speed) + for (uint8_t j = 0; j < spi_speed; ++j) WRITE_PIN(mosi_pin, state); - LOOP_L_N(j, spi_speed + (miso_pin >= 0 ? 0 : 1)) + for (uint8_t j = 0; j < spi_speed + (miso_pin >= 0 ? 0 : 1); ++j) WRITE_PIN(sck_pin, HIGH); b <<= 1; if (miso_pin >= 0 && READ_PIN(miso_pin)) b |= 1; - LOOP_L_N(j, spi_speed) + for (uint8_t j = 0; j < spi_speed; ++j) WRITE_PIN(sck_pin, LOW); } } @@ -99,7 +99,7 @@ uint8_t swSpiTransfer_mode_0(uint8_t b, const uint8_t spi_speed, const pin_t sck uint8_t swSpiTransfer_mode_3(uint8_t b, const uint8_t spi_speed, const pin_t sck_pin, const pin_t miso_pin, const pin_t mosi_pin ) { - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { const uint8_t state = (b & 0x80) ? HIGH : LOW; if (spi_speed == 0) { WRITE_PIN(sck_pin, LOW); @@ -108,13 +108,13 @@ uint8_t swSpiTransfer_mode_3(uint8_t b, const uint8_t spi_speed, const pin_t sck WRITE_PIN(sck_pin, HIGH); } else { - LOOP_L_N(j, spi_speed + (miso_pin >= 0 ? 0 : 1)) + for (uint8_t j = 0; j < spi_speed + (miso_pin >= 0 ? 0 : 1); ++j) WRITE_PIN(sck_pin, LOW); - LOOP_L_N(j, spi_speed) + for (uint8_t j = 0; j < spi_speed; ++j) WRITE_PIN(mosi_pin, state); - LOOP_L_N(j, spi_speed) + for (uint8_t j = 0; j < spi_speed; ++j) WRITE_PIN(sck_pin, HIGH); } b <<= 1; diff --git a/Marlin/src/HAL/SAMD51/HAL.cpp b/Marlin/src/HAL/SAMD51/HAL.cpp index bc7a9b6d913a..8ec5d5a86c4b 100644 --- a/Marlin/src/HAL/SAMD51/HAL.cpp +++ b/Marlin/src/HAL/SAMD51/HAL.cpp @@ -650,10 +650,10 @@ void MarlinHAL::adc_init() { #if ADC_IS_REQUIRED memset(adc_results, 0xFF, sizeof(adc_results)); // Fill result with invalid values - LOOP_L_N(pi, COUNT(adc_pins)) + for (uint8_t pi = 0; pi < COUNT(adc_pins); ++pi) pinPeripheral(adc_pins[pi], PIO_ANALOG); - LOOP_S_LE_N(ai, FIRST_ADC, LAST_ADC) { + for (uint8_t ai = FIRST_ADC; ai <= LAST_ADC; ++ai) { Adc* adc = ((Adc*[])ADC_INSTS)[ai]; // ADC clock setup @@ -685,7 +685,7 @@ void MarlinHAL::adc_init() { void MarlinHAL::adc_start(const pin_t pin) { #if ADC_IS_REQUIRED - LOOP_L_N(pi, COUNT(adc_pins)) + for (uint8_t pi = 0; pi < COUNT(adc_pins); ++pi) if (pin == adc_pins[pi]) { adc_result = adc_results[pi]; return; } #endif diff --git a/Marlin/src/HAL/STM32/fastio.cpp b/Marlin/src/HAL/STM32/fastio.cpp index b34555b8c841..a4b3ba70c923 100644 --- a/Marlin/src/HAL/STM32/fastio.cpp +++ b/Marlin/src/HAL/STM32/fastio.cpp @@ -29,7 +29,7 @@ GPIO_TypeDef* FastIOPortMap[LastPort + 1] = { 0 }; void FastIO_init() { - LOOP_L_N(i, NUM_DIGITAL_PINS) + for (uint8_t i = 0; i < NUM_DIGITAL_PINS; ++i) FastIOPortMap[STM_PORT(digitalPin[i])] = get_GPIO_Port(STM_PORT(digitalPin[i])); } diff --git a/Marlin/src/HAL/STM32/tft/gt911.cpp b/Marlin/src/HAL/STM32/tft/gt911.cpp index 82b7c5b10391..6809f6620093 100644 --- a/Marlin/src/HAL/STM32/tft/gt911.cpp +++ b/Marlin/src/HAL/STM32/tft/gt911.cpp @@ -90,7 +90,7 @@ bool SW_IIC::read_ack() { } void SW_IIC::send_byte(uint8_t txd) { - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { write_sda(txd & 0x80); // write data bit txd <<= 1; iic_delay(1); @@ -107,7 +107,7 @@ uint8_t SW_IIC::read_byte(bool ack) { uint8_t data = 0; set_sda_in(); - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { write_scl(HIGH); // SCL = 1 iic_delay(1); data <<= 1; @@ -128,12 +128,12 @@ SW_IIC GT911::sw_iic = SW_IIC(GT911_SW_I2C_SDA_PIN, GT911_SW_I2C_SCL_PIN); void GT911::write_reg(uint16_t reg, uint8_t reg_len, uint8_t* w_data, uint8_t w_len) { sw_iic.start(); sw_iic.send_byte(gt911_slave_address); // Set IIC Slave address - LOOP_L_N(i, reg_len) { // Set reg address + for (uint8_t i = 0; i < reg_len; ++i) { // Set reg address uint8_t r = (reg >> (8 * (reg_len - 1 - i))) & 0xFF; sw_iic.send_byte(r); } - LOOP_L_N(i, w_len) { // Write data to reg + for (uint8_t i = 0; i < w_len; ++i) { // Write data to reg sw_iic.send_byte(w_data[i]); } sw_iic.stop(); @@ -142,7 +142,7 @@ void GT911::write_reg(uint16_t reg, uint8_t reg_len, uint8_t* w_data, uint8_t w_ void GT911::read_reg(uint16_t reg, uint8_t reg_len, uint8_t* r_data, uint8_t r_len) { sw_iic.start(); sw_iic.send_byte(gt911_slave_address); // Set IIC Slave address - LOOP_L_N(i, reg_len) { // Set reg address + for (uint8_t i = 0; i < reg_len; ++i) { // Set reg address uint8_t r = (reg >> (8 * (reg_len - 1 - i))) & 0xFF; sw_iic.send_byte(r); } @@ -150,7 +150,7 @@ void GT911::read_reg(uint16_t reg, uint8_t reg_len, uint8_t* r_data, uint8_t r_l sw_iic.start(); sw_iic.send_byte(gt911_slave_address + 1); // Set read mode - LOOP_L_N(i, r_len) + for (uint8_t i = 0; i < r_len; ++i) r_data[i] = sw_iic.read_byte(1); // Read data from reg sw_iic.stop(); diff --git a/Marlin/src/HAL/STM32/timers.cpp b/Marlin/src/HAL/STM32/timers.cpp index 27ced33db2c1..54506cb4513f 100644 --- a/Marlin/src/HAL/STM32/timers.cpp +++ b/Marlin/src/HAL/STM32/timers.cpp @@ -316,8 +316,8 @@ static constexpr struct { TimerPurpose p; int t; } timers_in_use[] = { }; static constexpr bool verify_no_timer_conflicts() { - LOOP_L_N(i, COUNT(timers_in_use)) - LOOP_S_L_N(j, i + 1, COUNT(timers_in_use)) + for (uint8_t i = 0; i < COUNT(timers_in_use); ++i) + for (uint8_t j = i + 1; j < COUNT(timers_in_use); ++j) if (timers_in_use[i].t == timers_in_use[j].t) return false; return true; } diff --git a/Marlin/src/HAL/STM32F1/dogm/u8g_com_stm32duino_swspi.cpp b/Marlin/src/HAL/STM32F1/dogm/u8g_com_stm32duino_swspi.cpp index db9b6f0b1c8d..c57350aa2efd 100644 --- a/Marlin/src/HAL/STM32F1/dogm/u8g_com_stm32duino_swspi.cpp +++ b/Marlin/src/HAL/STM32F1/dogm/u8g_com_stm32duino_swspi.cpp @@ -37,7 +37,7 @@ static uint8_t SPI_speed = LCD_SPI_SPEED; static inline uint8_t swSpiTransfer_mode_0(uint8_t b, const uint8_t spi_speed, const pin_t miso_pin=-1) { - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { if (spi_speed == 0) { WRITE(DOGLCD_MOSI, !!(b & 0x80)); WRITE(DOGLCD_SCK, HIGH); @@ -47,16 +47,16 @@ static inline uint8_t swSpiTransfer_mode_0(uint8_t b, const uint8_t spi_speed, c } else { const uint8_t state = (b & 0x80) ? HIGH : LOW; - LOOP_L_N(j, spi_speed) + for (uint8_t j = 0; j < spi_speed; ++j) WRITE(DOGLCD_MOSI, state); - LOOP_L_N(j, spi_speed + (miso_pin >= 0 ? 0 : 1)) + for (uint8_t j = 0; j < spi_speed + (miso_pin >= 0 ? 0 : 1); ++j) WRITE(DOGLCD_SCK, HIGH); b <<= 1; if (miso_pin >= 0 && READ(miso_pin)) b |= 1; - LOOP_L_N(j, spi_speed) + for (uint8_t j = 0; j < spi_speed; ++j) WRITE(DOGLCD_SCK, LOW); } } @@ -64,7 +64,7 @@ static inline uint8_t swSpiTransfer_mode_0(uint8_t b, const uint8_t spi_speed, c } static inline uint8_t swSpiTransfer_mode_3(uint8_t b, const uint8_t spi_speed, const pin_t miso_pin=-1) { - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { const uint8_t state = (b & 0x80) ? HIGH : LOW; if (spi_speed == 0) { WRITE(DOGLCD_SCK, LOW); @@ -73,13 +73,13 @@ static inline uint8_t swSpiTransfer_mode_3(uint8_t b, const uint8_t spi_speed, c WRITE(DOGLCD_SCK, HIGH); } else { - LOOP_L_N(j, spi_speed + (miso_pin >= 0 ? 0 : 1)) + for (uint8_t j = 0; j < spi_speed + (miso_pin >= 0 ? 0 : 1); ++j) WRITE(DOGLCD_SCK, LOW); - LOOP_L_N(j, spi_speed) + for (uint8_t j = 0; j < spi_speed; ++j) WRITE(DOGLCD_MOSI, state); - LOOP_L_N(j, spi_speed) + for (uint8_t j = 0; j < spi_speed; ++j) WRITE(DOGLCD_SCK, HIGH); } b <<= 1; diff --git a/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp b/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp index 5264aabef662..a68b2b98f8a3 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp +++ b/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp @@ -101,7 +101,7 @@ uint32_t TFT_SPI::ReadID(uint16_t Reg) { DataTransferBegin(DATASIZE_8BIT); WriteReg(Reg); - LOOP_L_N(i, 4) { + for (uint8_t i = 0; i < 4; ++i) { uint8_t d; SPIx.read(&d, 1); data = (data << 8) | d; diff --git a/Marlin/src/HAL/shared/servo.cpp b/Marlin/src/HAL/shared/servo.cpp index b838800de654..bb9d61801841 100644 --- a/Marlin/src/HAL/shared/servo.cpp +++ b/Marlin/src/HAL/shared/servo.cpp @@ -67,7 +67,7 @@ uint8_t ServoCount = 0; // the total number of attached static bool anyTimerChannelActive(const timer16_Sequence_t timer) { // returns true if any servo is active on this timer - LOOP_L_N(channel, SERVOS_PER_TIMER) { + for (uint8_t channel = 0; channel < SERVOS_PER_TIMER; ++channel) { if (SERVO(timer, channel).Pin.isActive) return true; } diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index 618410903080..ac5a6b7ff9b0 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -321,7 +321,7 @@ bool pin_is_protected(const pin_t pin) { static constexpr size_t pincount = OnlyPins::size; static const pin_t (&sensitive_pins)[pincount] PROGMEM = OnlyPins::table; #endif - LOOP_L_N(i, pincount) { + for (uint8_t i = 0; i < pincount; ++i) { const pin_t * const pptr = &sensitive_pins[i]; if (pin == (sizeof(pin_t) == 2 ? (pin_t)pgm_read_word(pptr) : (pin_t)pgm_read_byte(pptr))) return true; } @@ -800,7 +800,7 @@ void idle(const bool no_stepper_sleep/*=false*/) { // Run StallGuard endstop checks #if ENABLED(SPI_ENDSTOPS) if (endstops.tmc_spi_homing.any && TERN1(IMPROVE_HOMING_RELIABILITY, ELAPSED(millis(), sg_guard_period))) - LOOP_L_N(i, 4) if (endstops.tmc_spi_homing_check()) break; // Read SGT 4 times per idle loop + for (uint8_t i = 0; i < 4; ++i) if (endstops.tmc_spi_homing_check()) break; // Read SGT 4 times per idle loop #endif // Handle SD Card insert / remove diff --git a/Marlin/src/core/macros.h b/Marlin/src/core/macros.h index c44d60843ad2..565de2436c11 100644 --- a/Marlin/src/core/macros.h +++ b/Marlin/src/core/macros.h @@ -326,11 +326,6 @@ #define _JOIN_1(O) (O) #define JOIN_N(N,C,V...) (DO(JOIN,C,LIST_N(N,V))) -#define LOOP_S_LE_N(VAR, S, N) for (uint8_t VAR=(S); VAR<=(N); VAR++) -#define LOOP_S_L_N(VAR, S, N) for (uint8_t VAR=(S); VAR<(N); VAR++) -#define LOOP_LE_N(VAR, N) LOOP_S_LE_N(VAR, 0, N) -#define LOOP_L_N(VAR, N) LOOP_S_L_N(VAR, 0, N) - #define NOOP (void(0)) #define CEILING(x,y) (((x) + (y) - 1) / (y)) diff --git a/Marlin/src/core/serial_base.h b/Marlin/src/core/serial_base.h index 059b42428498..fa0a2298f7c0 100644 --- a/Marlin/src/core/serial_base.h +++ b/Marlin/src/core/serial_base.h @@ -234,7 +234,7 @@ struct SerialBase { // Round correctly so that print(1.999, 2) prints as "2.00" double rounding = 0.5; - LOOP_L_N(i, digits) rounding *= 0.1; + for (uint8_t i = 0; i < digits; ++i) rounding *= 0.1; number += rounding; // Extract the integer part of the number and print it diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index 958155860414..7b5837efb8d7 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -246,11 +246,11 @@ enum AxisEnum : uint8_t { // // Loop over axes // -#define LOOP_ABC(VAR) LOOP_S_LE_N(VAR, A_AXIS, C_AXIS) -#define LOOP_NUM_AXES(VAR) LOOP_S_L_N(VAR, 0, NUM_AXES) -#define LOOP_LOGICAL_AXES(VAR) LOOP_S_L_N(VAR, 0, LOGICAL_AXES) -#define LOOP_DISTINCT_AXES(VAR) LOOP_S_L_N(VAR, 0, DISTINCT_AXES) -#define LOOP_DISTINCT_E(VAR) LOOP_L_N(VAR, DISTINCT_E) +#define LOOP_ABC(VAR) for (uint8_t VAR = A_AXIS; VAR <= C_AXIS; ++VAR) +#define LOOP_NUM_AXES(VAR) for (uint8_t VAR = 0; VAR < NUM_AXES; ++VAR) +#define LOOP_LOGICAL_AXES(VAR) for (uint8_t VAR = 0; VAR < LOGICAL_AXES; ++VAR) +#define LOOP_DISTINCT_AXES(VAR) for (uint8_t VAR = 0; VAR < DISTINCT_AXES; ++VAR) +#define LOOP_DISTINCT_E(VAR) for (uint8_t VAR = 0; VAR < DISTINCT_E; ++VAR) // // feedRate_t is just a humble float diff --git a/Marlin/src/feature/babystep.h b/Marlin/src/feature/babystep.h index 70a529a0c3c5..df88da6e147a 100644 --- a/Marlin/src/feature/babystep.h +++ b/Marlin/src/feature/babystep.h @@ -95,7 +95,7 @@ class Babystep { // apply accumulated babysteps to the axes. // static void task() { - LOOP_LE_N(i, BS_AXIS_IND(Z_AXIS)) step_axis(BS_AXIS(i)); + for (uint8_t i = 0; i <= BS_AXIS_IND(Z_AXIS); ++i) step_axis(BS_AXIS(i)); } private: diff --git a/Marlin/src/feature/bedlevel/abl/bbl.cpp b/Marlin/src/feature/bedlevel/abl/bbl.cpp index 6ef3945fa52c..14c4bd24bcf0 100644 --- a/Marlin/src/feature/bedlevel/abl/bbl.cpp +++ b/Marlin/src/feature/bedlevel/abl/bbl.cpp @@ -133,8 +133,8 @@ void LevelingBilinear::extrapolate_unprobed_bed_level() { yend = ctry1; #endif - LOOP_LE_N(xo, xend) - LOOP_LE_N(yo, yend) { + for (uint8_t xo = 0; xo <= xend; ++xo) + for (uint8_t yo = 0; yo <= yend; ++yo) { uint8_t x2 = ctrx2 + xo, y2 = ctry2 + yo; #ifndef HALF_IN_X const uint8_t x1 = ctrx1 - xo; @@ -231,8 +231,8 @@ void LevelingBilinear::print_leveling_grid(const bed_mesh_t* _z_values/*=nullptr float LevelingBilinear::virt_2cmr(const uint8_t x, const uint8_t y, const_float_t tx, const_float_t ty) { float row[4], column[4]; - LOOP_L_N(i, 4) { - LOOP_L_N(j, 4) { + for (uint8_t i = 0; i < 4; ++i) { + for (uint8_t j = 0; j < 4; ++j) { column[j] = virt_coord(i + x - 1, j + y - 1); } row[i] = virt_cmr(column, 1, ty); @@ -243,10 +243,10 @@ void LevelingBilinear::print_leveling_grid(const bed_mesh_t* _z_values/*=nullptr void LevelingBilinear::subdivide_mesh() { grid_spacing_virt = grid_spacing / (BILINEAR_SUBDIVISIONS); grid_factor_virt = grid_spacing_virt.reciprocal(); - LOOP_L_N(y, GRID_MAX_POINTS_Y) - LOOP_L_N(x, GRID_MAX_POINTS_X) - LOOP_L_N(ty, BILINEAR_SUBDIVISIONS) - LOOP_L_N(tx, BILINEAR_SUBDIVISIONS) { + for (uint8_t y = 0; y < GRID_MAX_POINTS_Y; ++y) + for (uint8_t x = 0; x < GRID_MAX_POINTS_X; ++x) + for (uint8_t ty = 0; ty < BILINEAR_SUBDIVISIONS; ++ty) + for (uint8_t tx = 0; tx < BILINEAR_SUBDIVISIONS; ++tx) { if ((ty && y == (GRID_MAX_POINTS_Y) - 1) || (tx && x == (GRID_MAX_POINTS_X) - 1)) continue; z_values_virt[x * (BILINEAR_SUBDIVISIONS) + tx][y * (BILINEAR_SUBDIVISIONS) + ty] = diff --git a/Marlin/src/feature/bedlevel/bedlevel.cpp b/Marlin/src/feature/bedlevel/bedlevel.cpp index 0bb8b8191a5e..17407eafb958 100644 --- a/Marlin/src/feature/bedlevel/bedlevel.cpp +++ b/Marlin/src/feature/bedlevel/bedlevel.cpp @@ -137,7 +137,7 @@ void reset_bed_level() { */ void print_2d_array(const uint8_t sx, const uint8_t sy, const uint8_t precision, const float *values) { #ifndef SCAD_MESH_OUTPUT - LOOP_L_N(x, sx) { + for (uint8_t x = 0; x < sx; ++x) { serial_spaces(precision + (x < 10 ? 3 : 2)); SERIAL_ECHO(x); } @@ -146,14 +146,14 @@ void reset_bed_level() { #ifdef SCAD_MESH_OUTPUT SERIAL_ECHOLNPGM("measured_z = ["); // open 2D array #endif - LOOP_L_N(y, sy) { + for (uint8_t y = 0; y < sy; ++y) { #ifdef SCAD_MESH_OUTPUT SERIAL_ECHOPGM(" ["); // open sub-array #else if (y < 10) SERIAL_CHAR(' '); SERIAL_ECHO(y); #endif - LOOP_L_N(x, sx) { + for (uint8_t x = 0; x < sx; ++x) { SERIAL_CHAR(' '); const float offset = values[x * sy + y]; if (!isnan(offset)) { @@ -166,7 +166,7 @@ void reset_bed_level() { SERIAL_CHAR(' '); SERIAL_ECHOPGM("NAN"); #else - LOOP_L_N(i, precision + 3) + for (uint8_t i = 0; i < precision + 3; ++i) SERIAL_CHAR(i ? '=' : ' '); #endif } diff --git a/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.cpp b/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.cpp index 193cbbf7654a..787827bb9bfc 100644 --- a/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.cpp +++ b/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.cpp @@ -40,9 +40,9 @@ mesh_bed_leveling::index_to_ypos[GRID_MAX_POINTS_Y]; mesh_bed_leveling::mesh_bed_leveling() { - LOOP_L_N(i, GRID_MAX_POINTS_X) + for (uint8_t i = 0; i < GRID_MAX_POINTS_X; ++i) index_to_xpos[i] = MESH_MIN_X + i * (MESH_X_DIST); - LOOP_L_N(i, GRID_MAX_POINTS_Y) + for (uint8_t i = 0; i < GRID_MAX_POINTS_Y; ++i) index_to_ypos[i] = MESH_MIN_Y + i * (MESH_Y_DIST); reset(); } diff --git a/Marlin/src/feature/bedlevel/ubl/ubl.cpp b/Marlin/src/feature/bedlevel/ubl/ubl.cpp index ca519f86b49d..b99334795d13 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl.cpp +++ b/Marlin/src/feature/bedlevel/ubl/ubl.cpp @@ -149,7 +149,7 @@ static void serial_echo_xy(const uint8_t sp, const int16_t x, const int16_t y) { static void serial_echo_column_labels(const uint8_t sp) { SERIAL_ECHO_SP(7); - LOOP_L_N(i, GRID_MAX_POINTS_X) { + for (uint8_t i = 0; i < GRID_MAX_POINTS_X; ++i) { if (i < 10) SERIAL_CHAR(' '); SERIAL_ECHO(i); SERIAL_ECHO_SP(sp); @@ -199,7 +199,7 @@ void unified_bed_leveling::display_map(const uint8_t map_type) { } // Row Values (I indexes) - LOOP_L_N(i, GRID_MAX_POINTS_X) { + for (uint8_t i = 0; i < GRID_MAX_POINTS_X; ++i) { // Opening Brace or Space const bool is_current = i == curr.x && j == curr.y; diff --git a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp index ecbf76ec6ed6..551277c35d1c 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp +++ b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp @@ -396,7 +396,7 @@ void unified_bed_leveling::G29() { break; case 1: - LOOP_L_N(x, GRID_MAX_POINTS_X) { // Create a diagonal line several Mesh cells thick that is raised + for (uint8_t x = 0; x < GRID_MAX_POINTS_X; ++x) { // Create a diagonal line several Mesh cells thick that is raised const uint8_t x2 = x + (x < (GRID_MAX_POINTS_Y) - 1 ? 1 : -1); z_values[x][x] += 9.999f; z_values[x][x2] += 9.999f; // We want the altered line several mesh points thick @@ -1445,7 +1445,7 @@ void unified_bed_leveling::smart_fill_mesh() { info3 PROGMEM = { (GRID_MAX_POINTS_X) - 1, 0, 0, GRID_MAX_POINTS_Y, true }; // Right side of the mesh looking left static const smart_fill_info * const info[] PROGMEM = { &info0, &info1, &info2, &info3 }; - LOOP_L_N(i, COUNT(info)) { + for (uint8_t i = 0; i < COUNT(info); ++i) { const smart_fill_info *f = (smart_fill_info*)pgm_read_ptr(&info[i]); const int8_t sx = pgm_read_byte(&f->sx), sy = pgm_read_byte(&f->sy), ex = pgm_read_byte(&f->ex), ey = pgm_read_byte(&f->ey); @@ -1484,7 +1484,7 @@ void unified_bed_leveling::smart_fill_mesh() { #if ENABLED(UBL_TILT_ON_MESH_POINTS_3POINT) mesh_index_pair cpos[3]; - LOOP_L_N(ix, 3) { // Convert points to coordinates of mesh points + for (uint8_t ix = 0; ix < 3; ++ix) { // Convert points to coordinates of mesh points cpos[ix] = find_closest_mesh_point_of_type(REAL, points[ix], true); points[ix] = cpos[ix].meshpos(); } @@ -1494,7 +1494,7 @@ void unified_bed_leveling::smart_fill_mesh() { float gotz[3]; // Used for algorithm validation below #endif - LOOP_L_N(i, 3) { + for (uint8_t i = 0; i < 3; ++i) { SERIAL_ECHOLNPGM("Tilting mesh (", i + 1, "/3)"); TERN_(HAS_STATUS_MESSAGE, ui.status_printf(0, F(S_FMT " %i/3"), GET_TEXT(MSG_LCD_TILTING_MESH), i + 1)); @@ -1534,10 +1534,10 @@ void unified_bed_leveling::smart_fill_mesh() { const uint16_t total_points = sq(param.J_grid_size); uint16_t point_num = 1; - LOOP_L_N(ix, param.J_grid_size) { + for (uint8_t ix = 0; ix < param.J_grid_size; ++ix) { xy_pos_t rpos; rpos.x = x_min + ix * dx; - LOOP_L_N(iy, param.J_grid_size) { + for (uint8_t iy = 0; iy < param.J_grid_size; ++iy) { rpos.y = y_min + dy * (zig_zag ? param.J_grid_size - 1 - iy : iy); #if ENABLED(UBL_TILT_ON_MESH_POINTS) @@ -1714,17 +1714,17 @@ void unified_bed_leveling::smart_fill_mesh() { GRID_LOOP(jx, jy) if (!isnan(z_values[jx][jy])) SBI(bitmap[jx], jy); xy_pos_t ppos; - LOOP_L_N(ix, GRID_MAX_POINTS_X) { + for (uint8_t ix = 0; ix < GRID_MAX_POINTS_X; ++ix) { ppos.x = get_mesh_x(ix); - LOOP_L_N(iy, GRID_MAX_POINTS_Y) { + for (uint8_t iy = 0; iy < GRID_MAX_POINTS_Y; ++iy) { ppos.y = get_mesh_y(iy); if (isnan(z_values[ix][iy])) { // undefined mesh point at (ppos.x,ppos.y), compute weighted LSF from original valid mesh points. incremental_LSF_reset(&lsf_results); xy_pos_t rpos; - LOOP_L_N(jx, GRID_MAX_POINTS_X) { + for (uint8_t jx = 0; jx < GRID_MAX_POINTS_X; ++jx) { rpos.x = get_mesh_x(jx); - LOOP_L_N(jy, GRID_MAX_POINTS_Y) { + for (uint8_t jy = 0; jy < GRID_MAX_POINTS_Y; ++jy) { if (TEST(bitmap[jx], jy)) { rpos.y = get_mesh_y(jy); const float rz = z_values[jx][jy], @@ -1784,7 +1784,7 @@ void unified_bed_leveling::smart_fill_mesh() { SERIAL_ECHOLNPGM("MESH_Y_DIST ", MESH_Y_DIST); serial_delay(50); SERIAL_ECHOPGM("X-Axis Mesh Points at: "); - LOOP_L_N(i, GRID_MAX_POINTS_X) { + for (uint8_t i = 0; i < GRID_MAX_POINTS_X; ++i) { SERIAL_ECHO_F(LOGICAL_X_POSITION(get_mesh_x(i)), 3); SERIAL_ECHOPGM(" "); serial_delay(25); @@ -1792,7 +1792,7 @@ void unified_bed_leveling::smart_fill_mesh() { SERIAL_EOL(); SERIAL_ECHOPGM("Y-Axis Mesh Points at: "); - LOOP_L_N(i, GRID_MAX_POINTS_Y) { + for (uint8_t i = 0; i < GRID_MAX_POINTS_Y; ++i) { SERIAL_ECHO_F(LOGICAL_Y_POSITION(get_mesh_y(i)), 3); SERIAL_ECHOPGM(" "); serial_delay(25); diff --git a/Marlin/src/feature/digipot/digipot_mcp4018.cpp b/Marlin/src/feature/digipot/digipot_mcp4018.cpp index 3f2ecbfcdc0b..f776c5a33901 100644 --- a/Marlin/src/feature/digipot/digipot_mcp4018.cpp +++ b/Marlin/src/feature/digipot/digipot_mcp4018.cpp @@ -89,7 +89,7 @@ void DigipotI2C::set_current(const uint8_t channel, const float current) { } void DigipotI2C::init() { - LOOP_L_N(i, DIGIPOT_I2C_NUM_CHANNELS) pots[i].i2c_init(); + for (uint8_t i = 0; i < DIGIPOT_I2C_NUM_CHANNELS; ++i) pots[i].i2c_init(); // Init currents according to Configuration_adv.h static const float digipot_motor_current[] PROGMEM = @@ -99,7 +99,7 @@ void DigipotI2C::init() { DIGIPOT_I2C_MOTOR_CURRENTS #endif ; - LOOP_L_N(i, COUNT(digipot_motor_current)) + for (uint8_t i = 0; i < COUNT(digipot_motor_current); ++i) set_current(i, pgm_read_float(&digipot_motor_current[i])); } diff --git a/Marlin/src/feature/digipot/digipot_mcp4451.cpp b/Marlin/src/feature/digipot/digipot_mcp4451.cpp index ba5ecdad050a..7416fe9f8d5c 100644 --- a/Marlin/src/feature/digipot/digipot_mcp4451.cpp +++ b/Marlin/src/feature/digipot/digipot_mcp4451.cpp @@ -94,7 +94,7 @@ void DigipotI2C::init() { DIGIPOT_I2C_MOTOR_CURRENTS #endif ; - LOOP_L_N(i, COUNT(digipot_motor_current)) + for (uint8_t i = 0; i < COUNT(digipot_motor_current); ++i) set_current(i, pgm_read_float(&digipot_motor_current[i])); } diff --git a/Marlin/src/feature/encoder_i2c.cpp b/Marlin/src/feature/encoder_i2c.cpp index b1ff21cf92c7..1c01e1c23b5e 100644 --- a/Marlin/src/feature/encoder_i2c.cpp +++ b/Marlin/src/feature/encoder_i2c.cpp @@ -138,7 +138,7 @@ void I2CPositionEncoder::update() { errIdx = (errIdx >= I2CPE_ERR_ARRAY_SIZE - 1) ? 0 : errIdx + 1; err[errIdx] = get_axis_error_steps(false); - LOOP_L_N(i, I2CPE_ERR_ARRAY_SIZE) { + for (uint8_t i = 0; i < I2CPE_ERR_ARRAY_SIZE; ++i) { sum += err[i]; if (i) diffSum += ABS(err[i-1] - err[i]); } @@ -170,7 +170,7 @@ void I2CPositionEncoder::update() { errPrst[errPrstIdx++] = error; // Error must persist for I2CPE_ERR_PRST_ARRAY_SIZE error cycles. This also serves to improve the average accuracy if (errPrstIdx >= I2CPE_ERR_PRST_ARRAY_SIZE) { float sumP = 0; - LOOP_L_N(i, I2CPE_ERR_PRST_ARRAY_SIZE) sumP += errPrst[i]; + for (uint8_t i = 0; i < I2CPE_ERR_PRST_ARRAY_SIZE; ++i) sumP += errPrst[i]; const int32_t errorP = int32_t(sumP * RECIPROCAL(I2CPE_ERR_PRST_ARRAY_SIZE)); SERIAL_CHAR(AXIS_CHAR(encoderAxis)); SERIAL_ECHOLNPGM(" : CORRECT ERR ", errorP * planner.mm_per_step[encoderAxis], "mm"); @@ -404,7 +404,7 @@ void I2CPositionEncoder::calibrate_steps_mm(const uint8_t iter) { planner.synchronize(); - LOOP_L_N(i, iter) { + for (uint8_t i = 0; i < iter; ++i) { TERN_(HAS_EXTRUDERS, startCoord.e = planner.get_axis_position_mm(E_AXIS)); planner.buffer_line(startCoord, fr_mm_s, 0); planner.synchronize(); diff --git a/Marlin/src/feature/encoder_i2c.h b/Marlin/src/feature/encoder_i2c.h index f25fe2ea6bc4..1ae05d1433b3 100644 --- a/Marlin/src/feature/encoder_i2c.h +++ b/Marlin/src/feature/encoder_i2c.h @@ -90,7 +90,7 @@ #define I2CPE_PARSE_ERR 1 #define I2CPE_PARSE_OK 0 -#define LOOP_PE(VAR) LOOP_L_N(VAR, I2CPE_ENCODER_CNT) +#define LOOP_PE(VAR) for (uint8_t VAR = 0; VAR < I2CPE_ENCODER_CNT; ++VAR) #define CHECK_IDX() do{ if (!WITHIN(idx, 0, I2CPE_ENCODER_CNT - 1)) return; }while(0) typedef union { diff --git a/Marlin/src/feature/fancheck.cpp b/Marlin/src/feature/fancheck.cpp index 126b79b0a409..844191e7e442 100644 --- a/Marlin/src/feature/fancheck.cpp +++ b/Marlin/src/feature/fancheck.cpp @@ -72,7 +72,7 @@ void FanCheck::update_tachometers() { bool status; #define _TACHO_CASE(N) case N: status = READ(E##N##_FAN_TACHO_PIN); break; - LOOP_L_N(f, TACHO_COUNT) { + for (uint8_t f = 0; f < TACHO_COUNT; ++f) { switch (f) { #if HAS_E0_FAN_TACHO _TACHO_CASE(0) @@ -113,7 +113,7 @@ void FanCheck::compute_speed(uint16_t elapsedTime) { static uint8_t fan_reported_errors_msk = 0; uint8_t fan_error_msk = 0; - LOOP_L_N(f, TACHO_COUNT) { + for (uint8_t f = 0; f < TACHO_COUNT; ++f) { switch (f) { TERN_(HAS_E0_FAN_TACHO, case 0:) TERN_(HAS_E1_FAN_TACHO, case 1:) @@ -150,7 +150,7 @@ void FanCheck::compute_speed(uint16_t elapsedTime) { if (fan_error_msk & ~fan_reported_errors_msk) { // Handle new faults only - LOOP_L_N(f, TACHO_COUNT) if (TEST(fan_error_msk, f)) report_speed_error(f); + for (uint8_t f = 0; f < TACHO_COUNT; ++f) if (TEST(fan_error_msk, f)) report_speed_error(f); } fan_reported_errors_msk = fan_error_msk; } @@ -176,8 +176,8 @@ void FanCheck::report_speed_error(uint8_t fan) { } void FanCheck::print_fan_states() { - LOOP_L_N(s, 2) { - LOOP_L_N(f, TACHO_COUNT) { + for (uint8_t s = 0; s < 2; ++s) { + for (uint8_t f = 0; f < TACHO_COUNT; ++f) { switch (f) { TERN_(HAS_E0_FAN_TACHO, case 0:) TERN_(HAS_E1_FAN_TACHO, case 1:) diff --git a/Marlin/src/feature/filwidth.cpp b/Marlin/src/feature/filwidth.cpp index 2bd9c789808e..3befd7752a6e 100644 --- a/Marlin/src/feature/filwidth.cpp +++ b/Marlin/src/feature/filwidth.cpp @@ -42,7 +42,7 @@ int8_t FilamentWidthSensor::ratios[MAX_MEASUREMENT_DELAY + 1], // Ring void FilamentWidthSensor::init() { const int8_t ratio = sample_to_size_ratio(); - LOOP_L_N(i, COUNT(ratios)) ratios[i] = ratio; + for (uint8_t i = 0; i < COUNT(ratios); ++i) ratios[i] = ratio; index_r = index_w = 0; } diff --git a/Marlin/src/feature/leds/leds.cpp b/Marlin/src/feature/leds/leds.cpp index 45810a31ab3c..7305581cd046 100644 --- a/Marlin/src/feature/leds/leds.cpp +++ b/Marlin/src/feature/leds/leds.cpp @@ -76,8 +76,8 @@ void LEDLights::setup() { #endif delay(200); - LOOP_L_N(i, led_pin_count) { - LOOP_LE_N(b, 200) { + for (uint8_t i = 0; i < led_pin_count; ++i) { + for (uint8_t b = 0; b <= 200; ++b) { const uint16_t led_pwm = b <= 100 ? b : 200 - b; if (i == 0 && PWM_PIN(RGB_LED_R_PIN)) hal.set_pwm_duty(pin_t(RGB_LED_R_PIN), led_pwm); else WRITE(RGB_LED_R_PIN, b < 100 ? HIGH : LOW); if (i == 1 && PWM_PIN(RGB_LED_G_PIN)) hal.set_pwm_duty(pin_t(RGB_LED_G_PIN), led_pwm); else WRITE(RGB_LED_G_PIN, b < 100 ? HIGH : LOW); @@ -118,7 +118,7 @@ void LEDLights::setup() { while (led_pin_counters[0] != 99 || !canEnd) { if (led_pin_counters[0] == 99) // End loop next time pin0 counter is 99 canEnd = true; - LOOP_L_N(i, led_pin_count) { + for (uint8_t i = 0; i < led_pin_count; ++i) { if (led_pin_counters[i] > 0) { if (++led_pin_counters[i] == 400) // turn off current pin counter in led_pin_counters led_pin_counters[i] = 0; @@ -140,7 +140,7 @@ void LEDLights::setup() { } // Fade to white - LOOP_LE_N(led_pwm, 100) { + for (uint8_t led_pwm = 0; led_pwm <= 100; ++led_pwm) { NOLESS(curColor.r, led_pwm); NOLESS(curColor.g, led_pwm); NOLESS(curColor.b, led_pwm); diff --git a/Marlin/src/feature/max7219.cpp b/Marlin/src/feature/max7219.cpp index efc992f80fe1..d3328855f444 100644 --- a/Marlin/src/feature/max7219.cpp +++ b/Marlin/src/feature/max7219.cpp @@ -156,7 +156,7 @@ void Max7219::error(FSTR_P const func, const int32_t v1, const int32_t v2/*=-1*/ */ inline uint32_t flipped(const uint32_t bits, const uint8_t n_bytes) { uint32_t mask = 1, outbits = 0; - LOOP_L_N(b, n_bytes * 8) { + for (uint8_t b = 0; b < n_bytes * 8; ++b) { outbits <<= 1; if (bits & mask) outbits |= 1; mask <<= 1; @@ -339,13 +339,13 @@ void Max7219::fill() { void Max7219::clear_row(const uint8_t row) { if (row >= MAX7219_Y_LEDS) return error(F("clear_row"), row); - LOOP_L_N(x, MAX7219_X_LEDS) CLR_7219(x, row); + for (uint8_t x = 0; x < MAX7219_X_LEDS; ++x) CLR_7219(x, row); send_row(row); } void Max7219::clear_column(const uint8_t col) { if (col >= MAX7219_X_LEDS) return error(F("set_column"), col); - LOOP_L_N(y, MAX7219_Y_LEDS) CLR_7219(col, y); + for (uint8_t y = 0; y < MAX7219_Y_LEDS; ++y) CLR_7219(col, y); send_column(col); } @@ -357,7 +357,7 @@ void Max7219::clear_column(const uint8_t col) { void Max7219::set_row(const uint8_t row, const uint32_t val) { if (row >= MAX7219_Y_LEDS) return error(F("set_row"), row); uint32_t mask = _BV32(MAX7219_X_LEDS - 1); - LOOP_L_N(x, MAX7219_X_LEDS) { + for (uint8_t x = 0; x < MAX7219_X_LEDS; ++x) { if (val & mask) SET_7219(x, row); else CLR_7219(x, row); mask >>= 1; } @@ -372,7 +372,7 @@ void Max7219::set_row(const uint8_t row, const uint32_t val) { void Max7219::set_column(const uint8_t col, const uint32_t val) { if (col >= MAX7219_X_LEDS) return error(F("set_column"), col); uint32_t mask = _BV32(MAX7219_Y_LEDS - 1); - LOOP_L_N(y, MAX7219_Y_LEDS) { + for (uint8_t y = 0; y < MAX7219_Y_LEDS; ++y) { if (val & mask) SET_7219(col, y); else CLR_7219(col, y); mask >>= 1; } @@ -437,23 +437,23 @@ void Max7219::set_columns_32bits(const uint8_t x, uint32_t val) { // Initialize the Max7219 void Max7219::register_setup() { - LOOP_L_N(i, MAX7219_NUMBER_UNITS) + for (uint8_t i = 0; i < MAX7219_NUMBER_UNITS; ++i) send(max7219_reg_scanLimit, 0x07); pulse_load(); // Tell the chips to load the clocked out data - LOOP_L_N(i, MAX7219_NUMBER_UNITS) + for (uint8_t i = 0; i < MAX7219_NUMBER_UNITS; ++i) send(max7219_reg_decodeMode, 0x00); // Using an led matrix (not digits) pulse_load(); // Tell the chips to load the clocked out data - LOOP_L_N(i, MAX7219_NUMBER_UNITS) + for (uint8_t i = 0; i < MAX7219_NUMBER_UNITS; ++i) send(max7219_reg_shutdown, 0x01); // Not in shutdown mode pulse_load(); // Tell the chips to load the clocked out data - LOOP_L_N(i, MAX7219_NUMBER_UNITS) + for (uint8_t i = 0; i < MAX7219_NUMBER_UNITS; ++i) send(max7219_reg_displayTest, 0x00); // No display test pulse_load(); // Tell the chips to load the clocked out data - LOOP_L_N(i, MAX7219_NUMBER_UNITS) + for (uint8_t i = 0; i < MAX7219_NUMBER_UNITS; ++i) send(max7219_reg_intensity, 0x01 & 0x0F); // The first 0x0F is the value you can set // Range: 0x00 to 0x0F pulse_load(); // Tell the chips to load the clocked out data @@ -740,7 +740,7 @@ void Max7219::idle_tasks() { // batch line updates suspended--; if (!suspended) - LOOP_L_N(i, 8) if (row_change_mask & _BV(i)) + for (uint8_t i = 0; i < 8; ++i) if (row_change_mask & _BV(i)) refresh_line(i); // After resume() automatically do a refresh() diff --git a/Marlin/src/feature/mixing.cpp b/Marlin/src/feature/mixing.cpp index 7c9c54a314b8..1ce489224813 100644 --- a/Marlin/src/feature/mixing.cpp +++ b/Marlin/src/feature/mixing.cpp @@ -94,13 +94,13 @@ void Mixer::normalize(const uint8_t tool_index) { void Mixer::reset_vtools() { // Virtual Tools 0, 1, 2, 3 = Filament 1, 2, 3, 4, etc. // Every virtual tool gets a pure filament - LOOP_L_N(t, _MIN(MIXING_VIRTUAL_TOOLS, MIXING_STEPPERS)) + for (uint8_t t = 0; t < _MIN(MIXING_VIRTUAL_TOOLS, MIXING_STEPPERS); ++t) MIXER_STEPPER_LOOP(i) color[t][i] = (t == i) ? COLOR_A_MASK : 0; // Remaining virtual tools are 100% filament 1 #if MIXING_VIRTUAL_TOOLS > MIXING_STEPPERS - LOOP_S_L_N(t, MIXING_STEPPERS, MIXING_VIRTUAL_TOOLS) + for (uint8_t t = MIXING_STEPPERS; t < MIXING_VIRTUAL_TOOLS; ++t) MIXER_STEPPER_LOOP(i) color[t][i] = (i == 0) ? COLOR_A_MASK : 0; #endif diff --git a/Marlin/src/feature/mmu/mmu2.cpp b/Marlin/src/feature/mmu/mmu2.cpp index fbfcf3fd3f7f..ea1a33ddaad4 100644 --- a/Marlin/src/feature/mmu/mmu2.cpp +++ b/Marlin/src/feature/mmu/mmu2.cpp @@ -403,7 +403,7 @@ void MMU2::tx_str(FSTR_P fstr) { void MMU2::tx_printf(FSTR_P format, int argument = -1) { clear_rx_buffer(); const uint8_t len = sprintf_P(tx_buffer, FTOP(format), argument); - LOOP_L_N(i, len) MMU2_SERIAL.write(tx_buffer[i]); + for (uint8_t i = 0; i < len; ++i) MMU2_SERIAL.write(tx_buffer[i]); prev_request = millis(); } @@ -413,7 +413,7 @@ void MMU2::tx_printf(FSTR_P format, int argument = -1) { void MMU2::tx_printf(FSTR_P format, int argument1, int argument2) { clear_rx_buffer(); const uint8_t len = sprintf_P(tx_buffer, FTOP(format), argument1, argument2); - LOOP_L_N(i, len) MMU2_SERIAL.write(tx_buffer[i]); + for (uint8_t i = 0; i < len; ++i) MMU2_SERIAL.write(tx_buffer[i]); prev_request = millis(); } @@ -467,7 +467,7 @@ inline void beep_bad_cmd() { BUZZ(400, 40); } bool MMU2::load_to_gears() { command(MMU_CMD_C0); manage_response(true, true); - LOOP_L_N(i, MMU2_C0_RETRY) { // Keep loading until filament reaches gears + for (uint8_t i = 0; i < MMU2_C0_RETRY; ++i) { // Keep loading until filament reaches gears if (mmu2s_triggered) break; command(MMU_CMD_C0); manage_response(true, true); @@ -900,7 +900,7 @@ void MMU2::filament_runout() { int filament_detected_count = 0; const int steps = (MMU2_CAN_LOAD_RETRACT) / (MMU2_CAN_LOAD_INCREMENT); DEBUG_ECHOLNPGM("MMU can_load:"); - LOOP_L_N(i, steps) { + for (uint8_t i = 0; i < steps; ++i) { execute_extruder_sequence(can_load_increment_sequence, COUNT(can_load_increment_sequence)); check_filament(); // Don't trust the idle function DEBUG_CHAR(mmu2s_triggered ? 'O' : 'o'); @@ -1047,7 +1047,7 @@ void MMU2::execute_extruder_sequence(const E_Step * sequence, int steps) { const E_Step *step = sequence; - LOOP_L_N(i, steps) { + for (uint8_t i = 0; i < steps; ++i) { const float es = pgm_read_float(&(step->extrude)); const feedRate_t fr_mm_m = pgm_read_float(&(step->feedRate)); DEBUG_ECHO_MSG("E step ", es, "/", fr_mm_m); diff --git a/Marlin/src/feature/powerloss.cpp b/Marlin/src/feature/powerloss.cpp index 24ff2b219582..af85a1644862 100644 --- a/Marlin/src/feature/powerloss.cpp +++ b/Marlin/src/feature/powerloss.cpp @@ -630,7 +630,7 @@ void PrintJobRecovery::resume() { #if ENABLED(GCODE_REPEAT_MARKERS) DEBUG_ECHOLNPGM("repeat index: ", info.stored_repeat.index); - LOOP_L_N(i, info.stored_repeat.index) + for (uint8_t i = 0; i < info.stored_repeat.index; ++i) DEBUG_ECHOLNPGM("..... sdpos: ", info.stored_repeat.marker.sdpos, " count: ", info.stored_repeat.marker.counter); #endif diff --git a/Marlin/src/feature/probe_temp_comp.cpp b/Marlin/src/feature/probe_temp_comp.cpp index b5f636e698c9..2b362a2186b6 100644 --- a/Marlin/src/feature/probe_temp_comp.cpp +++ b/Marlin/src/feature/probe_temp_comp.cpp @@ -66,13 +66,13 @@ float ProbeTempComp::init_measurement; // = 0.0 bool ProbeTempComp::enabled = true; void ProbeTempComp::reset() { - TERN_(PTC_PROBE, LOOP_L_N(i, PTC_PROBE_COUNT) z_offsets_probe[i] = z_offsets_probe_default[i]); - TERN_(PTC_BED, LOOP_L_N(i, PTC_BED_COUNT) z_offsets_bed[i] = z_offsets_bed_default[i]); - TERN_(PTC_HOTEND, LOOP_L_N(i, PTC_HOTEND_COUNT) z_offsets_hotend[i] = z_offsets_hotend_default[i]); + TERN_(PTC_PROBE, for (uint8_t i = 0; i < PTC_PROBE_COUNT; ++i) z_offsets_probe[i] = z_offsets_probe_default[i]); + TERN_(PTC_BED, for (uint8_t i = 0; i < PTC_BED_COUNT; ++i) z_offsets_bed[i] = z_offsets_bed_default[i]); + TERN_(PTC_HOTEND, for (uint8_t i = 0; i < PTC_HOTEND_COUNT; ++i) z_offsets_hotend[i] = z_offsets_hotend_default[i]); } void ProbeTempComp::clear_offsets(const TempSensorID tsi) { - LOOP_L_N(i, cali_info[tsi].measurements) + for (uint8_t i = 0; i < cali_info[tsi].measurements; ++i) sensor_z_offsets[tsi][i] = 0; calib_idx = 0; } @@ -84,7 +84,7 @@ bool ProbeTempComp::set_offset(const TempSensorID tsi, const uint8_t idx, const } void ProbeTempComp::print_offsets() { - LOOP_L_N(s, TSI_COUNT) { + for (uint8_t s = 0; s < TSI_COUNT; ++s) { celsius_t temp = cali_info[s].start_temp; for (int16_t i = -1; i < cali_info[s].measurements; ++i) { SERIAL_ECHOF( @@ -232,7 +232,7 @@ bool ProbeTempComp::linear_regression(const TempSensorID tsi, float &k, float &d sum_xy = 0, sum_y = 0; float xi = static_cast(start_temp); - LOOP_L_N(i, calib_idx) { + for (uint8_t i = 0; i < calib_idx; ++i) { const float yi = static_cast(data[i]); xi += res_temp; sum_x += xi; diff --git a/Marlin/src/feature/repeat.cpp b/Marlin/src/feature/repeat.cpp index fed7ac0908a0..4484dab95b39 100644 --- a/Marlin/src/feature/repeat.cpp +++ b/Marlin/src/feature/repeat.cpp @@ -66,7 +66,7 @@ void Repeat::loop() { } } -void Repeat::cancel() { LOOP_L_N(i, index) marker[i].counter = 0; } +void Repeat::cancel() { for (uint8_t i = 0; i < index; ++i) marker[i].counter = 0; } void Repeat::early_parse_M808(char * const cmd) { if (is_command_M808(cmd)) { diff --git a/Marlin/src/feature/repeat.h b/Marlin/src/feature/repeat.h index fc11e4a9e2cf..8a54149b3d1e 100644 --- a/Marlin/src/feature/repeat.h +++ b/Marlin/src/feature/repeat.h @@ -40,7 +40,7 @@ class Repeat { public: static void reset() { index = 0; } static bool is_active() { - LOOP_L_N(i, index) if (marker[i].counter) return true; + for (uint8_t i = 0; i < index; ++i) if (marker[i].counter) return true; return false; } static bool is_command_M808(char * const cmd) { return cmd[0] == 'M' && cmd[1] == '8' && cmd[2] == '0' && cmd[3] == '8' && !NUMERIC(cmd[4]); } diff --git a/Marlin/src/feature/runout.h b/Marlin/src/feature/runout.h index e160f889050d..ea17cbc4422b 100644 --- a/Marlin/src/feature/runout.h +++ b/Marlin/src/feature/runout.h @@ -155,7 +155,7 @@ class TFilamentMonitor : public FilamentMonitorBase { #if ENABLED(FILAMENT_RUNOUT_SENSOR_DEBUG) if (runout_flags) { SERIAL_ECHOPGM("Runout Sensors: "); - LOOP_L_N(i, 8) SERIAL_ECHO('0' + TEST(runout_flags, i)); + for (uint8_t i = 0; i < 8; ++i) SERIAL_ECHO('0' + TEST(runout_flags, i)); SERIAL_ECHOPGM(" -> ", extruder); if (ran_out) SERIAL_ECHOPGM(" RUN OUT"); SERIAL_EOL(); @@ -255,7 +255,7 @@ class FilamentSensorBase { #if ENABLED(FILAMENT_RUNOUT_SENSOR_DEBUG) if (change) { SERIAL_ECHOPGM("Motion detected:"); - LOOP_L_N(e, TERN(FILAMENT_SWITCH_AND_MOTION, NUM_MOTION_SENSORS, NUM_RUNOUT_SENSORS)) + for (uint8_t e = 0; e < TERN(FILAMENT_SWITCH_AND_MOTION, NUM_MOTION_SENSORS, NUM_RUNOUT_SENSORS); ++e) if (TEST(change, e)) SERIAL_CHAR(' ', '0' + e); SERIAL_EOL(); } @@ -304,7 +304,7 @@ class FilamentSensorBase { static void block_completed(const block_t * const) {} static void run() { - LOOP_L_N(s, NUM_RUNOUT_SENSORS) { + for (uint8_t s = 0; s < NUM_RUNOUT_SENSORS; ++s) { const bool out = poll_runout_state(s); if (!out) filament_present(s); #if ENABLED(FILAMENT_RUNOUT_SENSOR_DEBUG) @@ -364,9 +364,9 @@ class FilamentSensorBase { static float runout_distance_mm; static void reset() { - LOOP_L_N(i, NUM_RUNOUT_SENSORS) filament_present(i); + for (uint8_t i = 0; i < NUM_RUNOUT_SENSORS; ++i) filament_present(i); #if ENABLED(FILAMENT_SWITCH_AND_MOTION) - LOOP_L_N(i, NUM_MOTION_SENSORS) filament_motion_present(i); + for (uint8_t i = 0; i < NUM_MOTION_SENSORS; ++i) filament_motion_present(i); #endif } @@ -376,10 +376,10 @@ class FilamentSensorBase { const millis_t ms = millis(); if (ELAPSED(ms, t)) { t = millis() + 1000UL; - LOOP_L_N(i, NUM_RUNOUT_SENSORS) + for (uint8_t i = 0; i < NUM_RUNOUT_SENSORS; ++i) SERIAL_ECHOF(i ? F(", ") : F("Runout remaining mm: "), mm_countdown.runout[i]); #if ENABLED(FILAMENT_SWITCH_AND_MOTION) - LOOP_L_N(i, NUM_MOTION_SENSORS) + for (uint8_t i = 0; i < NUM_MOTION_SENSORS; ++i) SERIAL_ECHOF(i ? F(", ") : F("Motion remaining mm: "), mm_countdown.motion[i]); #endif SERIAL_EOL(); @@ -389,9 +389,9 @@ class FilamentSensorBase { static uint8_t has_run_out() { uint8_t runout_flags = 0; - LOOP_L_N(i, NUM_RUNOUT_SENSORS) if (mm_countdown.runout[i] < 0) SBI(runout_flags, i); + for (uint8_t i = 0; i < NUM_RUNOUT_SENSORS; ++i) if (mm_countdown.runout[i] < 0) SBI(runout_flags, i); #if ENABLED(FILAMENT_SWITCH_AND_MOTION) - LOOP_L_N(i, NUM_MOTION_SENSORS) if (mm_countdown.motion[i] < 0) SBI(runout_flags, i); + for (uint8_t i = 0; i < NUM_MOTION_SENSORS; ++i) if (mm_countdown.motion[i] < 0) SBI(runout_flags, i); #endif return runout_flags; } @@ -432,16 +432,16 @@ class FilamentSensorBase { public: static void reset() { - LOOP_L_N(i, NUM_RUNOUT_SENSORS) filament_present(i); + for (uint8_t i = 0; i < NUM_RUNOUT_SENSORS; ++i) filament_present(i); } static void run() { - LOOP_L_N(i, NUM_RUNOUT_SENSORS) if (runout_count[i] >= 0) runout_count[i]--; + for (uint8_t i = 0; i < NUM_RUNOUT_SENSORS; ++i) if (runout_count[i] >= 0) runout_count[i]--; } static uint8_t has_run_out() { uint8_t runout_flags = 0; - LOOP_L_N(i, NUM_RUNOUT_SENSORS) if (runout_count[i] < 0) SBI(runout_flags, i); + for (uint8_t i = 0; i < NUM_RUNOUT_SENSORS; ++i) if (runout_count[i] < 0) SBI(runout_flags, i); return runout_flags; } diff --git a/Marlin/src/feature/twibus.cpp b/Marlin/src/feature/twibus.cpp index 9aec6b030537..4aedb4b5f3c5 100644 --- a/Marlin/src/feature/twibus.cpp +++ b/Marlin/src/feature/twibus.cpp @@ -145,7 +145,7 @@ void TWIBus::echodata(uint8_t bytes, FSTR_P const pref, uint8_t adr, const uint8 void TWIBus::echobuffer(FSTR_P const prefix, uint8_t adr) { echoprefix(buffer_s, prefix, adr); - LOOP_L_N(i, buffer_s) SERIAL_CHAR(buffer[i]); + for (uint8_t i = 0; i < buffer_s; ++i) SERIAL_CHAR(buffer[i]); SERIAL_EOL(); } diff --git a/Marlin/src/feature/x_twist.cpp b/Marlin/src/feature/x_twist.cpp index b5ad25cba87d..b8f7e52ab6d5 100644 --- a/Marlin/src/feature/x_twist.cpp +++ b/Marlin/src/feature/x_twist.cpp @@ -43,12 +43,12 @@ void XATC::reset() { void XATC::print_points() { SERIAL_ECHOLNPGM(" X-Twist Correction:"); - LOOP_L_N(x, XATC_MAX_POINTS) { + for (uint8_t x = 0; x < XATC_MAX_POINTS; ++x) { SERIAL_CHAR(' '); if (!isnan(z_offset[x])) serial_offset(z_offset[x]); else - LOOP_L_N(i, 6) SERIAL_CHAR(i ? '=' : ' '); + for (uint8_t i = 0; i < 6; ++i) SERIAL_CHAR(i ? '=' : ' '); } SERIAL_EOL(); } diff --git a/Marlin/src/gcode/bedlevel/G26.cpp b/Marlin/src/gcode/bedlevel/G26.cpp index 1b55bdb4286c..30643cb84e9b 100644 --- a/Marlin/src/gcode/bedlevel/G26.cpp +++ b/Marlin/src/gcode/bedlevel/G26.cpp @@ -707,7 +707,7 @@ void GcodeSuite::G26() { #error "A_CNT must be a positive value. Please change A_INT." #endif float trig_table[A_CNT]; - LOOP_L_N(i, A_CNT) + for (uint8_t i = 0; i < A_CNT; ++i) trig_table[i] = INTERSECTION_CIRCLE_RADIUS * cos(RADIANS(i * A_INT)); #endif // !ARC_SUPPORT diff --git a/Marlin/src/gcode/bedlevel/G35.cpp b/Marlin/src/gcode/bedlevel/G35.cpp index 901e97ab756b..9c1ee472ec5a 100644 --- a/Marlin/src/gcode/bedlevel/G35.cpp +++ b/Marlin/src/gcode/bedlevel/G35.cpp @@ -97,7 +97,7 @@ void GcodeSuite::G35() { bool err_break = false; // Probe all positions - LOOP_L_N(i, G35_PROBE_COUNT) { + for (uint8_t i = 0; i < G35_PROBE_COUNT; ++i) { const float z_probed_height = probe.probe_at_point(tramming_points[i], PROBE_PT_RAISE); if (isnan(z_probed_height)) { SERIAL_ECHOPGM("G35 failed at point ", i + 1, " ("); @@ -122,7 +122,7 @@ void GcodeSuite::G35() { const float threads_factor[] = { 0.5, 0.7, 0.8 }; // Calculate adjusts - LOOP_S_L_N(i, 1, G35_PROBE_COUNT) { + for (uint8_t i = 1; i < G35_PROBE_COUNT; ++i) { const float diff = z_measured[0] - z_measured[i], adjust = ABS(diff) < 0.001f ? 0 : diff / threads_factor[(screw_thread - 30) / 10]; diff --git a/Marlin/src/gcode/bedlevel/abl/G29.cpp b/Marlin/src/gcode/bedlevel/abl/G29.cpp index 5c86f4b99168..ca02fc976536 100644 --- a/Marlin/src/gcode/bedlevel/abl/G29.cpp +++ b/Marlin/src/gcode/bedlevel/abl/G29.cpp @@ -728,7 +728,7 @@ G29_TYPE GcodeSuite::G29() { // Probe at 3 arbitrary points - LOOP_L_N(i, 3) { + for (uint8_t i = 0; i < 3; ++i) { if (abl.verbose_level) SERIAL_ECHOLNPGM("Probing point ", i + 1, "/3."); TERN_(HAS_STATUS_MESSAGE, ui.status_printf(0, F(S_FMT " %i/3"), GET_TEXT(MSG_PROBING_POINT), int(i + 1))); @@ -839,7 +839,7 @@ G29_TYPE GcodeSuite::G29() { auto print_topo_map = [&](FSTR_P const title, const bool get_min) { SERIAL_ECHOF(title); for (int8_t yy = abl.grid_points.y - 1; yy >= 0; yy--) { - LOOP_L_N(xx, abl.grid_points.x) { + for (uint8_t xx = 0; xx < abl.grid_points.x; ++xx) { const int ind = abl.indexIntoAB[xx][yy]; xyz_float_t tmp = { abl.eqnAMatrix[ind + 0 * abl.abl_points], abl.eqnAMatrix[ind + 1 * abl.abl_points], 0 }; diff --git a/Marlin/src/gcode/bedlevel/abl/M421.cpp b/Marlin/src/gcode/bedlevel/abl/M421.cpp index 3272ea1bd227..f66d0231901e 100644 --- a/Marlin/src/gcode/bedlevel/abl/M421.cpp +++ b/Marlin/src/gcode/bedlevel/abl/M421.cpp @@ -56,8 +56,8 @@ void GcodeSuite::M421() { const float zval = parser.value_linear_units(); uint8_t sx = ix >= 0 ? ix : 0, ex = ix >= 0 ? ix : GRID_MAX_POINTS_X - 1, sy = iy >= 0 ? iy : 0, ey = iy >= 0 ? iy : GRID_MAX_POINTS_Y - 1; - LOOP_S_LE_N(x, sx, ex) { - LOOP_S_LE_N(y, sy, ey) { + for (uint8_t x = sx; x <= ex; ++x) { + for (uint8_t y = sy; y <= ey; ++y) { bedlevel.z_values[x][y] = zval + (hasQ ? bedlevel.z_values[x][y] : 0); TERN_(EXTENSIBLE_UI, ExtUI::onMeshUpdate(x, y, bedlevel.z_values[x][y])); } diff --git a/Marlin/src/gcode/calibrate/G34_M422.cpp b/Marlin/src/gcode/calibrate/G34_M422.cpp index a878db2edfec..7650443de862 100644 --- a/Marlin/src/gcode/calibrate/G34_M422.cpp +++ b/Marlin/src/gcode/calibrate/G34_M422.cpp @@ -204,7 +204,7 @@ void GcodeSuite::G34() { float z_measured_max = -100000.0f; // Probe all positions (one per Z-Stepper) - LOOP_L_N(i, NUM_Z_STEPPERS) { + for (uint8_t i = 0; i < NUM_Z_STEPPERS; ++i) { // iteration odd/even --> downward / upward stepper sequence const uint8_t iprobe = (iteration & 1) ? NUM_Z_STEPPERS - 1 - i : i; @@ -255,14 +255,14 @@ void GcodeSuite::G34() { // This allows the actual adjustment logic to be shared by both algorithms. linear_fit_data lfd; incremental_LSF_reset(&lfd); - LOOP_L_N(i, NUM_Z_STEPPERS) { + for (uint8_t i = 0; i < NUM_Z_STEPPERS; ++i) { SERIAL_ECHOLNPGM("PROBEPT_", i, ": ", z_measured[i]); incremental_LSF(&lfd, z_stepper_align.xy[i], z_measured[i]); } finish_incremental_LSF(&lfd); z_measured_min = 100000.0f; - LOOP_L_N(i, NUM_Z_STEPPERS) { + for (uint8_t i = 0; i < NUM_Z_STEPPERS; ++i) { z_measured[i] = -(lfd.A * z_stepper_align.stepper_xy[i].x + lfd.B * z_stepper_align.stepper_xy[i].y + lfd.D); z_measured_min = _MIN(z_measured_min, z_measured[i]); } @@ -330,12 +330,12 @@ void GcodeSuite::G34() { // Calculate mean value as a reference float z_measured_mean = 0.0f; - LOOP_L_N(zstepper, NUM_Z_STEPPERS) z_measured_mean += z_measured[zstepper]; + for (uint8_t zstepper = 0; zstepper < NUM_Z_STEPPERS; ++zstepper) z_measured_mean += z_measured[zstepper]; z_measured_mean /= NUM_Z_STEPPERS; // Calculate the sum of the absolute deviations from the mean value float z_align_level_indicator = 0.0f; - LOOP_L_N(zstepper, NUM_Z_STEPPERS) + for (uint8_t zstepper = 0; zstepper < NUM_Z_STEPPERS; ++zstepper) z_align_level_indicator += ABS(z_measured[zstepper] - z_measured_mean); // If it's getting worse, stop and throw an error @@ -350,7 +350,7 @@ void GcodeSuite::G34() { bool success_break = true; // Correct the individual stepper offsets - LOOP_L_N(zstepper, NUM_Z_STEPPERS) { + for (uint8_t zstepper = 0; zstepper < NUM_Z_STEPPERS; ++zstepper) { // Calculate current stepper move float z_align_move = z_measured[zstepper] - z_measured_min; const float z_align_abs = ABS(z_align_move); @@ -529,7 +529,7 @@ void GcodeSuite::M422() { void GcodeSuite::M422_report(const bool forReplay/*=true*/) { report_heading(forReplay, F(STR_Z_AUTO_ALIGN)); - LOOP_L_N(i, NUM_Z_STEPPERS) { + for (uint8_t i = 0; i < NUM_Z_STEPPERS; ++i) { report_echo_start(forReplay); SERIAL_ECHOLNPGM_P( PSTR(" M422 S"), i + 1, @@ -538,7 +538,7 @@ void GcodeSuite::M422_report(const bool forReplay/*=true*/) { ); } #if HAS_Z_STEPPER_ALIGN_STEPPER_XY - LOOP_L_N(i, NUM_Z_STEPPERS) { + for (uint8_t i = 0; i < NUM_Z_STEPPERS; ++i) { report_echo_start(forReplay); SERIAL_ECHOLNPGM_P( PSTR(" M422 W"), i + 1, diff --git a/Marlin/src/gcode/calibrate/G425.cpp b/Marlin/src/gcode/calibrate/G425.cpp index ef055498a922..fb211ad88c74 100644 --- a/Marlin/src/gcode/calibrate/G425.cpp +++ b/Marlin/src/gcode/calibrate/G425.cpp @@ -171,7 +171,7 @@ inline void park_above_object(measurements_t &m, const float uncertainty) { #if HAS_HOTEND_OFFSET inline void normalize_hotend_offsets() { - LOOP_S_L_N(e, 1, HOTENDS) + for (uint8_t e = 1; e < HOTENDS; ++e) hotend_offset[e] -= hotend_offset[0]; hotend_offset[0].reset(); } @@ -618,7 +618,7 @@ inline void probe_sides(measurements_t &m, const float uncertainty) { // This function requires normalize_hotend_offsets() to be called // inline void report_hotend_offsets() { - LOOP_S_L_N(e, 1, HOTENDS) + for (uint8_t e = 1; e < HOTENDS; ++e) SERIAL_ECHOLNPGM_P(PSTR("T"), e, PSTR(" Hotend Offset X"), hotend_offset[e].x, SP_Y_STR, hotend_offset[e].y, SP_Z_STR, hotend_offset[e].z); } #endif diff --git a/Marlin/src/gcode/calibrate/M100.cpp b/Marlin/src/gcode/calibrate/M100.cpp index 9141d360e1b9..3791c69f88bd 100644 --- a/Marlin/src/gcode/calibrate/M100.cpp +++ b/Marlin/src/gcode/calibrate/M100.cpp @@ -163,14 +163,14 @@ inline int32_t count_test_bytes(const char * const start_free_memory) { while (start_free_memory < end_free_memory) { print_hex_address(start_free_memory); // Print the address SERIAL_CHAR(':'); - LOOP_L_N(i, 16) { // and 16 data bytes + for (uint8_t i = 0; i < 16; ++i) { // and 16 data bytes if (i == 8) SERIAL_CHAR('-'); print_hex_byte(start_free_memory[i]); SERIAL_CHAR(' '); } serial_delay(25); SERIAL_CHAR('|'); // Point out non test bytes - LOOP_L_N(i, 16) { + for (uint8_t i = 0; i < 16; ++i) { char ccc = (char)start_free_memory[i]; // cast to char before automatically casting to char on assignment, in case the compiler is broken ccc = (ccc == TEST_BYTE) ? ' ' : '?'; SERIAL_CHAR(ccc); diff --git a/Marlin/src/gcode/calibrate/M48.cpp b/Marlin/src/gcode/calibrate/M48.cpp index 701e9386979a..2748d4e7bada 100644 --- a/Marlin/src/gcode/calibrate/M48.cpp +++ b/Marlin/src/gcode/calibrate/M48.cpp @@ -148,7 +148,7 @@ void GcodeSuite::M48() { float sample_sum = 0.0; - LOOP_L_N(n, n_samples) { + for (uint8_t n = 0; n < n_samples; ++n) { #if HAS_STATUS_MESSAGE // Display M48 progress in the status bar ui.status_printf(0, F(S_FMT ": %d/%d"), GET_TEXT(MSG_M48_POINT), int(n + 1), int(n_samples)); @@ -175,7 +175,7 @@ void GcodeSuite::M48() { } // Move from leg to leg in rapid succession - LOOP_L_N(l, n_legs - 1) { + for (uint8_t l = 0; l < n_legs - 1; ++l) { // Move some distance around the perimeter float delta_angle; @@ -243,7 +243,7 @@ void GcodeSuite::M48() { // Calculate the standard deviation so far. // The value after the last sample will be the final output. float dev_sum = 0.0; - LOOP_LE_N(j, n) dev_sum += sq(sample_set[j] - mean); + for (uint8_t j = 0; j <= n; ++j) dev_sum += sq(sample_set[j] - mean); sigma = SQRT(dev_sum / (n + 1)); if (verbose_level > 1) { diff --git a/Marlin/src/gcode/config/M200-M205.cpp b/Marlin/src/gcode/config/M200-M205.cpp index 8383be691466..e5e1edf3261f 100644 --- a/Marlin/src/gcode/config/M200-M205.cpp +++ b/Marlin/src/gcode/config/M200-M205.cpp @@ -168,7 +168,7 @@ void GcodeSuite::M201_report(const bool forReplay/*=true*/) { #endif #if ENABLED(DISTINCT_E_FACTORS) - LOOP_L_N(i, E_STEPPERS) { + for (uint8_t i = 0; i < E_STEPPERS; ++i) { report_echo_start(forReplay); SERIAL_ECHOLNPGM_P( PSTR(" M201 T"), i @@ -224,7 +224,7 @@ void GcodeSuite::M203_report(const bool forReplay/*=true*/) { #endif #if ENABLED(DISTINCT_E_FACTORS) - LOOP_L_N(i, E_STEPPERS) { + for (uint8_t i = 0; i < E_STEPPERS; ++i) { if (!forReplay) SERIAL_ECHO_START(); SERIAL_ECHOLNPGM_P( PSTR(" M203 T"), i diff --git a/Marlin/src/gcode/config/M218.cpp b/Marlin/src/gcode/config/M218.cpp index 62295f5771c6..d645685701ec 100644 --- a/Marlin/src/gcode/config/M218.cpp +++ b/Marlin/src/gcode/config/M218.cpp @@ -64,7 +64,7 @@ void GcodeSuite::M218() { void GcodeSuite::M218_report(const bool forReplay/*=true*/) { report_heading_etc(forReplay, F(STR_HOTEND_OFFSETS)); - LOOP_S_L_N(e, 1, HOTENDS) { + for (uint8_t e = 1; e < HOTENDS; ++e) { report_echo_start(forReplay); SERIAL_ECHOPGM_P( PSTR(" M218 T"), e, diff --git a/Marlin/src/gcode/config/M281.cpp b/Marlin/src/gcode/config/M281.cpp index e4ef3ab40b8c..2e7f08fe8659 100644 --- a/Marlin/src/gcode/config/M281.cpp +++ b/Marlin/src/gcode/config/M281.cpp @@ -56,7 +56,7 @@ void GcodeSuite::M281() { void GcodeSuite::M281_report(const bool forReplay/*=true*/) { report_heading_etc(forReplay, F(STR_SERVO_ANGLES)); - LOOP_L_N(i, NUM_SERVOS) { + for (uint8_t i = 0; i < NUM_SERVOS; ++i) { switch (i) { default: break; #if ENABLED(SWITCHING_EXTRUDER) diff --git a/Marlin/src/gcode/config/M305.cpp b/Marlin/src/gcode/config/M305.cpp index e7746923b318..48d7cf18820a 100644 --- a/Marlin/src/gcode/config/M305.cpp +++ b/Marlin/src/gcode/config/M305.cpp @@ -69,7 +69,7 @@ void GcodeSuite::M305() { SERIAL_ECHO_MSG("!Invalid Steinhart-Hart C coeff. (-0.01 < C < +0.01)"); } // If not setting then report parameters else if (t_index < 0) { // ...all user thermistors - LOOP_L_N(i, USER_THERMISTORS) + for (uint8_t i = 0; i < USER_THERMISTORS; ++i) thermalManager.M305_report(i); } else // ...one user thermistor diff --git a/Marlin/src/gcode/config/M43.cpp b/Marlin/src/gcode/config/M43.cpp index 3b95ccd3bb1c..7daf8afab8b6 100644 --- a/Marlin/src/gcode/config/M43.cpp +++ b/Marlin/src/gcode/config/M43.cpp @@ -61,7 +61,7 @@ inline void toggle_pins() { end = PARSED_PIN_INDEX('L', NUM_DIGITAL_PINS - 1), wait = parser.intval('W', 500); - LOOP_S_LE_N(i, start, end) { + for (uint8_t i = start; i <= end; ++i) { pin_t pin = GET_PIN_MAP_PIN_M43(i); if (!VALID_PIN(pin)) continue; if (M43_NEVER_TOUCH(i) || (!ignore_protection && pin_is_protected(pin))) { @@ -189,7 +189,7 @@ inline void servo_probe_test() { // DEPLOY and STOW 4 times and see if the signal follows // Then it is a mechanical switch SERIAL_ECHOLNPGM(". Deploy & stow 4 times"); - LOOP_L_N(i, 4) { + for (uint8_t i = 0; i < 4; ++i) { servo[probe_index].move(servo_angles[Z_PROBE_SERVO_NR][0]); // Deploy safe_delay(500); deploy_state = READ(PROBE_TEST_PIN); @@ -328,7 +328,7 @@ void GcodeSuite::M43() { const uint8_t pin_count = last_pin - first_pin + 1; uint8_t pin_state[pin_count]; bool can_watch = false; - LOOP_S_LE_N(i, first_pin, last_pin) { + for (uint8_t i = first_pin; i <= last_pin; ++i) { pin_t pin = GET_PIN_MAP_PIN_M43(i); if (!VALID_PIN(pin)) continue; if (M43_NEVER_TOUCH(i) || (!ignore_protection && pin_is_protected(pin))) continue; @@ -371,7 +371,7 @@ void GcodeSuite::M43() { #endif for (;;) { - LOOP_S_LE_N(i, first_pin, last_pin) { + for (uint8_t i = first_pin; i <= last_pin; ++i) { const pin_t pin = GET_PIN_MAP_PIN_M43(i); if (!VALID_PIN(pin)) continue; if (M43_NEVER_TOUCH(i) || (!ignore_protection && pin_is_protected(pin))) continue; @@ -400,7 +400,7 @@ void GcodeSuite::M43() { } else { // Report current state of selected pin(s) - LOOP_S_LE_N(i, first_pin, last_pin) { + for (uint8_t i = first_pin; i <= last_pin; ++i) { const pin_t pin = GET_PIN_MAP_PIN_M43(i); if (VALID_PIN(pin)) report_pin_state_extended(pin, ignore_protection, true); } diff --git a/Marlin/src/gcode/config/M672.cpp b/Marlin/src/gcode/config/M672.cpp index 257b49471f61..064d05d0b639 100644 --- a/Marlin/src/gcode/config/M672.cpp +++ b/Marlin/src/gcode/config/M672.cpp @@ -54,7 +54,7 @@ // b3 b2 b1 b0 ~b0 ... lo bits, NOT last bit // void M672_send(uint8_t b) { // bit rate requirement: 1kHz +/- 30% - LOOP_L_N(bits, 14) { + for (uint8_t bits = 0; bits < 14; ++bits) { switch (bits) { default: { OUT_WRITE(SMART_EFFECTOR_MOD_PIN, !!(b & 0x80)); b <<= 1; break; } // send bit, shift next into place case 7: diff --git a/Marlin/src/gcode/config/M92.cpp b/Marlin/src/gcode/config/M92.cpp index 888a7e5c21d0..e848665e6b6d 100644 --- a/Marlin/src/gcode/config/M92.cpp +++ b/Marlin/src/gcode/config/M92.cpp @@ -115,7 +115,7 @@ void GcodeSuite::M92_report(const bool forReplay/*=true*/, const int8_t e/*=-1*/ #endif #if ENABLED(DISTINCT_E_FACTORS) - LOOP_L_N(i, E_STEPPERS) { + for (uint8_t i = 0; i < E_STEPPERS; ++i) { if (e >= 0 && i != e) continue; report_echo_start(forReplay); SERIAL_ECHOLNPGM_P( diff --git a/Marlin/src/gcode/control/M111.cpp b/Marlin/src/gcode/control/M111.cpp index a92d334ae9d3..02f37f84974e 100644 --- a/Marlin/src/gcode/control/M111.cpp +++ b/Marlin/src/gcode/control/M111.cpp @@ -46,7 +46,7 @@ void GcodeSuite::M111() { SERIAL_ECHOPGM(STR_DEBUG_PREFIX); if (marlin_debug_flags) { uint8_t comma = 0; - LOOP_L_N(i, COUNT(debug_strings)) { + for (uint8_t i = 0; i < COUNT(debug_strings); ++i) { if (TEST(marlin_debug_flags, i)) { if (comma++) SERIAL_CHAR(','); SERIAL_ECHOPGM_P((PGM_P)pgm_read_ptr(&debug_strings[i])); diff --git a/Marlin/src/gcode/feature/camera/M240.cpp b/Marlin/src/gcode/feature/camera/M240.cpp index cf2e47ef6d2f..f79e80bcc236 100644 --- a/Marlin/src/gcode/feature/camera/M240.cpp +++ b/Marlin/src/gcode/feature/camera/M240.cpp @@ -84,7 +84,7 @@ inline void spin_photo_pin() { static constexpr uint32_t sequence[] = PHOTO_PULSES_US; - LOOP_L_N(i, COUNT(sequence)) + for (uint8_t i = 0; i < COUNT(sequence); ++i) pulse_photo_pin(sequence[i], !(i & 1)); } diff --git a/Marlin/src/gcode/feature/digipot/M907-M910.cpp b/Marlin/src/gcode/feature/digipot/M907-M910.cpp index 9ebe713cde46..8869f8d49462 100644 --- a/Marlin/src/gcode/feature/digipot/M907-M910.cpp +++ b/Marlin/src/gcode/feature/digipot/M907-M910.cpp @@ -51,7 +51,7 @@ void GcodeSuite::M907() { if (!parser.seen("BS" STR_AXES_LOGICAL)) return M907_report(); - if (parser.seenval('S')) LOOP_L_N(i, MOTOR_CURRENT_COUNT) stepper.set_digipot_current(i, parser.value_int()); + if (parser.seenval('S')) for (uint8_t i = 0; i < MOTOR_CURRENT_COUNT; ++i) stepper.set_digipot_current(i, parser.value_int()); LOOP_LOGICAL_AXES(i) if (parser.seenval(IAXIS_CHAR(i))) stepper.set_digipot_current(i, parser.value_int()); // X Y Z (I J K U V W) E (map to drivers according to DIGIPOT_CHANNELS. Default with NUM_AXES 3: map X Y Z E to X Y Z E0) // Additional extruders use B,C. // TODO: Change these parameters because 'E' is used and D should be reserved for debugging. B? @@ -82,7 +82,7 @@ void GcodeSuite::M907() { #endif )) return M907_report(); - if (parser.seenval('S')) LOOP_L_N(a, MOTOR_CURRENT_COUNT) stepper.set_digipot_current(a, parser.value_int()); + if (parser.seenval('S')) for (uint8_t a = 0; a < MOTOR_CURRENT_COUNT; ++a) stepper.set_digipot_current(a, parser.value_int()); #if HAS_X_Y_XY_I_J_K_U_V_W if (NUM_AXIS_GANG( @@ -104,7 +104,7 @@ void GcodeSuite::M907() { #if HAS_MOTOR_CURRENT_I2C // this one uses actual amps in floating point - if (parser.seenval('S')) LOOP_L_N(q, DIGIPOT_I2C_NUM_CHANNELS) digipot_i2c.set_current(q, parser.value_float()); + if (parser.seenval('S')) for (uint8_t q = 0; q < DIGIPOT_I2C_NUM_CHANNELS; ++q) digipot_i2c.set_current(q, parser.value_float()); LOOP_LOGICAL_AXES(i) if (parser.seenval(IAXIS_CHAR(i))) digipot_i2c.set_current(i, parser.value_float()); // X Y Z (I J K U V W) E (map to drivers according to pots adresses. Default with NUM_AXES 3 X Y Z E: map to X Y Z E0) // Additional extruders use B,C,D. // TODO: Change these parameters because 'E' is used and because 'D' should be reserved for debugging. B? diff --git a/Marlin/src/gcode/feature/leds/M7219.cpp b/Marlin/src/gcode/feature/leds/M7219.cpp index 40d3554dfe6e..1f74217be3cb 100644 --- a/Marlin/src/gcode/feature/leds/M7219.cpp +++ b/Marlin/src/gcode/feature/leds/M7219.cpp @@ -79,7 +79,7 @@ void GcodeSuite::M7219() { } if (parser.seen('P')) { - LOOP_L_N(r, MAX7219_LINES) { + for (uint8_t r = 0; r < MAX7219_LINES; ++r) { SERIAL_ECHOPGM("led_line["); if (r < 10) SERIAL_CHAR(' '); SERIAL_ECHO(r); diff --git a/Marlin/src/gcode/feature/network/M552-M554.cpp b/Marlin/src/gcode/feature/network/M552-M554.cpp index 0973fb87bf1a..ca7ddd0d360f 100644 --- a/Marlin/src/gcode/feature/network/M552-M554.cpp +++ b/Marlin/src/gcode/feature/network/M552-M554.cpp @@ -46,7 +46,7 @@ void MAC_report() { if (ethernet.hardware_enabled) { Ethernet.MACAddress(mac); SERIAL_ECHOPGM(" MAC: "); - LOOP_L_N(i, 6) { + for (uint8_t i = 0; i < 6; ++i) { if (mac[i] < 16) SERIAL_CHAR('0'); SERIAL_PRINT(mac[i], PrintBase::Hex); if (i < 5) SERIAL_CHAR(':'); @@ -59,7 +59,7 @@ void MAC_report() { // otherwise show the stored values void ip_report(const uint16_t cmd, FSTR_P const post, const IPAddress &ipo) { SERIAL_CHAR('M'); SERIAL_ECHO(cmd); SERIAL_CHAR(' '); - LOOP_L_N(i, 4) { + for (uint8_t i = 0; i < 4; ++i) { SERIAL_ECHO(ipo[i]); if (i < 3) SERIAL_CHAR('.'); } diff --git a/Marlin/src/gcode/host/M114.cpp b/Marlin/src/gcode/host/M114.cpp index 3a75e687b846..979764f75e30 100644 --- a/Marlin/src/gcode/host/M114.cpp +++ b/Marlin/src/gcode/host/M114.cpp @@ -30,7 +30,7 @@ void report_all_axis_pos(const xyze_pos_t &pos, const uint8_t n=LOGICAL_AXES, const uint8_t precision=3) { char str[12]; - LOOP_L_N(a, n) { + for (uint8_t a = 0; a < n; ++a) { SERIAL_ECHOPGM_P((PGM_P)pgm_read_ptr(&SP_AXIS_LBL[a])); if (pos[a] >= 0) SERIAL_CHAR(' '); SERIAL_ECHO(dtostrf(pos[a], 1, precision, str)); diff --git a/Marlin/src/gcode/host/M115.cpp b/Marlin/src/gcode/host/M115.cpp index 8ca6d07ce269..806e593fcb4a 100644 --- a/Marlin/src/gcode/host/M115.cpp +++ b/Marlin/src/gcode/host/M115.cpp @@ -81,7 +81,7 @@ void GcodeSuite::M115() { // Although this code should work on all STM32 based boards SERIAL_ECHOPGM(" UUID:"); uint32_t *uid_address = (uint32_t*)UID_BASE; - LOOP_L_N(i, 3) { + for (uint8_t i = 0; i < 3; ++i) { const uint32_t UID = uint32_t(READ_REG(*(uid_address))); uid_address += 4U; for (int B = 24; B >= 0; B -= 8) print_hex_byte(UID >> B); diff --git a/Marlin/src/gcode/lcd/M145.cpp b/Marlin/src/gcode/lcd/M145.cpp index 942d20afd2f8..d72d5d678989 100644 --- a/Marlin/src/gcode/lcd/M145.cpp +++ b/Marlin/src/gcode/lcd/M145.cpp @@ -62,7 +62,7 @@ void GcodeSuite::M145() { void GcodeSuite::M145_report(const bool forReplay/*=true*/) { report_heading(forReplay, F(STR_MATERIAL_HEATUP)); - LOOP_L_N(i, PREHEAT_COUNT) { + for (uint8_t i = 0; i < PREHEAT_COUNT; ++i) { report_echo_start(forReplay); SERIAL_ECHOLNPGM_P( PSTR(" M145 S"), i diff --git a/Marlin/src/gcode/probe/M423.cpp b/Marlin/src/gcode/probe/M423.cpp index fde5aaaf87c9..7c82a4f8af30 100644 --- a/Marlin/src/gcode/probe/M423.cpp +++ b/Marlin/src/gcode/probe/M423.cpp @@ -88,7 +88,7 @@ void GcodeSuite::M423() { void GcodeSuite::M423_report(const bool forReplay/*=true*/) { report_heading(forReplay, F("X-Twist Correction")); SERIAL_ECHOLNPGM(" M423 A", xatc.start, " I", xatc.spacing); - LOOP_L_N(x, XATC_MAX_POINTS) { + for (uint8_t x = 0; x < XATC_MAX_POINTS; ++x) { const float z = xatc.z_offset[x]; SERIAL_ECHOPGM(" M423 X", x, " Z"); serial_offset(isnan(z) ? 0 : z); diff --git a/Marlin/src/gcode/queue.cpp b/Marlin/src/gcode/queue.cpp index b64aa951129e..156436b7dda4 100644 --- a/Marlin/src/gcode/queue.cpp +++ b/Marlin/src/gcode/queue.cpp @@ -294,7 +294,7 @@ static bool serial_data_available(serial_index_t index) { #if NO_TIMEOUTS > 0 // Multiserial already handles dispatch to/from multiple ports static bool any_serial_data_available() { - LOOP_L_N(p, NUM_SERIAL) + for (uint8_t p = 0; p < NUM_SERIAL; ++p) if (serial_data_available(p)) return true; return false; @@ -313,7 +313,7 @@ inline int read_serial(const serial_index_t index) { return SERIAL_IMPL.read(ind */ void GCodeQueue::flush_rx() { // Flush receive buffer - LOOP_L_N(p, NUM_SERIAL) { + for (uint8_t p = 0; p < NUM_SERIAL; ++p) { if (!serial_data_available(p)) continue; // No data for this port? Skip. while (SERIAL_IMPL.available(p)) (void)read_serial(p); } @@ -441,7 +441,7 @@ void GCodeQueue::get_serial_commands() { // Unless a serial port has data, this will exit on next iteration hadData = false; - LOOP_L_N(p, NUM_SERIAL) { + for (uint8_t p = 0; p < NUM_SERIAL; ++p) { // Check if the queue is full and exit if it is. if (ring_buffer.full()) return; diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index e5cbc83459d9..f2b501627279 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -1496,7 +1496,7 @@ #ifdef GRID_MAX_POINTS_X #define GRID_MAX_POINTS ((GRID_MAX_POINTS_X) * (GRID_MAX_POINTS_Y)) - #define GRID_LOOP(A,B) LOOP_L_N(A, GRID_MAX_POINTS_X) LOOP_L_N(B, GRID_MAX_POINTS_Y) + #define GRID_LOOP(A,B) for (uint8_t A = 0; A < GRID_MAX_POINTS_X; ++A) for (uint8_t B = 0; B < GRID_MAX_POINTS_Y; ++B) #endif // Slim menu optimizations diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp index 55e4d156ea9e..51b3fbd3c434 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp @@ -130,7 +130,7 @@ static void createChar_P(const char c, const byte * const ptr) { byte temp[8]; - LOOP_L_N(i, 8) + for (uint8_t i = 0; i < 8; ++i) temp[i] = pgm_read_byte(&ptr[i]); lcd.createChar(c, temp); } @@ -440,7 +440,7 @@ void MarlinUI::clear_lcd() { lcd.clear(); } else { PGM_P p = FTOP(ftxt); int dly = time / _MAX(slen, 1); - LOOP_LE_N(i, slen) { + for (uint8_t i = 0; i <= slen; ++i) { // Print the text at the correct place lcd_put_u8str_max_P(col, line, p, len); diff --git a/Marlin/src/lcd/dogm/marlinui_DOGM.cpp b/Marlin/src/lcd/dogm/marlinui_DOGM.cpp index 185d3488dbc9..5b2db31fbbd2 100644 --- a/Marlin/src/lcd/dogm/marlinui_DOGM.cpp +++ b/Marlin/src/lcd/dogm/marlinui_DOGM.cpp @@ -155,7 +155,7 @@ bool MarlinUI::detected() { return true; } #if DISABLED(CUSTOM_BOOTSCREEN_ANIMATED_FRAME_TIME) constexpr millis_t frame_time = CUSTOM_BOOTSCREEN_FRAME_TIME; #endif - LOOP_L_N(f, COUNT(custom_bootscreen_animation)) + for (uint8_t f = 0; f < COUNT(custom_bootscreen_animation); ++f) #endif { #if ENABLED(CUSTOM_BOOTSCREEN_ANIMATED_FRAME_TIME) @@ -228,7 +228,7 @@ bool MarlinUI::detected() { return true; } draw_bootscreen_bmp(start_bmp); #else constexpr millis_t frame_time = MARLIN_BOOTSCREEN_FRAME_TIME; - LOOP_L_N(f, COUNT(marlin_bootscreen_animation)) { + for (uint8_t f = 0; f < COUNT(marlin_bootscreen_animation); ++f) { draw_bootscreen_bmp((uint8_t*)pgm_read_ptr(&marlin_bootscreen_animation[f])); if (frame_time) safe_delay(frame_time); } diff --git a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp index 61181f9a005b..12cee1fc80d4 100644 --- a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp +++ b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp @@ -672,7 +672,7 @@ void MarlinUI::draw_status_screen() { if (PAGE_UNDER(6 + 1 + 12 + 1 + 6 + 1)) { // Extruders #if DO_DRAW_HOTENDS - LOOP_L_N(e, MAX_HOTEND_DRAW) _draw_hotend_status((heater_id_t)e, blink); + for (uint8_t e = 0; e < MAX_HOTEND_DRAW; ++e) _draw_hotend_status((heater_id_t)e, blink); #endif // Laser / Spindle diff --git a/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp b/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp index bc961dbf15d4..8e709416288f 100644 --- a/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp +++ b/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp @@ -237,7 +237,7 @@ void ST7920_Lite_Status_Screen::clear_ddram() { /* This fills the entire graphics buffer with zeros */ void ST7920_Lite_Status_Screen::clear_gdram() { - LOOP_L_N(y, BUFFER_HEIGHT) { + for (uint8_t y = 0; y < BUFFER_HEIGHT; ++y) { set_gdram_address(0, y); begin_data(); for (uint8_t i = (BUFFER_WIDTH) / 16; i--;) write_word(0); @@ -435,7 +435,7 @@ void ST7920_Lite_Status_Screen::draw_degree_symbol(uint8_t x, uint8_t y, const b const uint8_t x_word = x >> 1, y_top = degree_symbol_y_top, y_bot = y_top + COUNT(degree_symbol); - LOOP_S_L_N(i, y_top, y_bot) { + for (uint8_t i = y_top; i < y_bot; ++i) { uint8_t byte = pgm_read_byte(p_bytes++); set_gdram_address(x_word, i + y * 16); begin_data(); @@ -754,10 +754,10 @@ bool ST7920_Lite_Status_Screen::indicators_changed() { // This drawing is a mess and only produce readable result around 25% steps // i.e. 74-76% look fine [|||||||||||||||||||||||| ], but 73% look like this: [|||||||||||||||| | ] // meaning partially filled bytes produce only single vertical line, and i bet they're not supposed to! - LOOP_S_LE_N(y, top, bottom) { + for (uint8_t y = top; y <= bottom; ++y) { set_gdram_address(left, y); begin_data(); - LOOP_L_N(x, width) { + for (uint8_t x = 0; x < width; ++x) { uint16_t gfx_word = 0x0000; if ((x + 1) * char_pcnt <= value) gfx_word = 0xFFFF; // Draw completely filled bytes diff --git a/Marlin/src/lcd/dogm/u8g_dev_st7920_128x64_HAL.cpp b/Marlin/src/lcd/dogm/u8g_dev_st7920_128x64_HAL.cpp index fde6e41792dc..ae1531e9f8df 100644 --- a/Marlin/src/lcd/dogm/u8g_dev_st7920_128x64_HAL.cpp +++ b/Marlin/src/lcd/dogm/u8g_dev_st7920_128x64_HAL.cpp @@ -87,11 +87,11 @@ void clear_graphics_DRAM(u8g_t *u8g, u8g_dev_t *dev) { u8g_SetAddress(u8g, dev, 0); // cmd mode u8g_WriteByte(u8g, dev, 0x08); //display off, cursor+blink off u8g_WriteByte(u8g, dev, 0x3E); //extended mode + GDRAM active - LOOP_L_N(y, (LCD_PIXEL_HEIGHT) / 2) { //clear GDRAM + for (uint8_t y = 0; y < (LCD_PIXEL_HEIGHT) / 2; ++y) { //clear GDRAM u8g_WriteByte(u8g, dev, 0x80 | y); //set y u8g_WriteByte(u8g, dev, 0x80); //set x = 0 u8g_SetAddress(u8g, dev, 1); /* data mode */ - LOOP_L_N(i, 2 * (LCD_PIXEL_WIDTH) / 8) //2x width clears both segments + for (uint8_t i = 0; i < 2 * (LCD_PIXEL_WIDTH) / 8; ++i) //2x width clears both segments u8g_WriteByte(u8g, dev, 0); u8g_SetAddress(u8g, dev, 0); /* cmd mode */ } diff --git a/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp b/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp index e51767f96a90..3e173aab6cec 100644 --- a/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp +++ b/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp @@ -298,10 +298,10 @@ static void setWindow(u8g_t *u8g, u8g_dev_t *dev, uint16_t Xmin, uint16_t Ymin, v = color; else v = TFT_MARLINBG_COLOR; - LOOP_L_N(n, GRAPHICAL_TFT_UPSCALE) buffer[k++] = v; + for (uint8_t n = 0; n < GRAPHICAL_TFT_UPSCALE; ++n) buffer[k++] = v; } #if HAS_LCD_IO - LOOP_S_L_N(n, 1, GRAPHICAL_TFT_UPSCALE) + for (uint8_t n = 1; n < GRAPHICAL_TFT_UPSCALE; ++n) for (uint16_t l = 0; l < UPSCALE0(length); l++) buffer[l + n * UPSCALE0(length)] = buffer[l]; @@ -412,16 +412,16 @@ uint8_t u8g_dev_tft_320x240_upscale_from_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, u if (TERN0(HAS_TOUCH_BUTTONS_SLEEP, touchBt.isSleeping())) break; if (++page > (HEIGHT / PAGE_HEIGHT)) return 1; - LOOP_L_N(y, PAGE_HEIGHT) { + for (uint8_t y = 0; y < PAGE_HEIGHT; ++y) { uint32_t k = 0; TERN_(HAS_LCD_IO, buffer = (y & 1) ? bufferB : bufferA); for (uint16_t i = 0; i < (uint32_t)pb->width; i++) { const uint8_t b = *(((uint8_t *)pb->buf) + i); const uint16_t c = TEST(b, y) ? TFT_MARLINUI_COLOR : TFT_MARLINBG_COLOR; - LOOP_L_N(n, GRAPHICAL_TFT_UPSCALE) buffer[k++] = c; + for (uint8_t n = 0; n < GRAPHICAL_TFT_UPSCALE; ++n) buffer[k++] = c; } #if HAS_LCD_IO - LOOP_S_L_N(n, 1, GRAPHICAL_TFT_UPSCALE) + for (uint8_t n = 1; n < GRAPHICAL_TFT_UPSCALE; ++n) for (uint16_t l = 0; l < UPSCALE0(WIDTH); l++) buffer[l + n * UPSCALE0(WIDTH)] = buffer[l]; @@ -429,7 +429,7 @@ uint8_t u8g_dev_tft_320x240_upscale_from_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, u #else uint8_t *bufptr = (uint8_t*) buffer; for (uint8_t i = GRAPHICAL_TFT_UPSCALE; i--;) { - LOOP_S_L_N(n, 0, GRAPHICAL_TFT_UPSCALE * 2) { + for (uint8_t n = 0; n < GRAPHICAL_TFT_UPSCALE * 2; ++n) { u8g_WriteSequence(u8g, dev, WIDTH, &bufptr[WIDTH * n]); } } diff --git a/Marlin/src/lcd/e3v2/common/dwin_api.cpp b/Marlin/src/lcd/e3v2/common/dwin_api.cpp index f3abaf25c96b..319c861ea4ff 100644 --- a/Marlin/src/lcd/e3v2/common/dwin_api.cpp +++ b/Marlin/src/lcd/e3v2/common/dwin_api.cpp @@ -38,8 +38,8 @@ uint8_t databuf[26] = { 0 }; // Send the data in the buffer plus the packet tail void DWIN_Send(size_t &i) { ++i; - LOOP_L_N(n, i) { LCD_SERIAL.write(DWIN_SendBuf[n]); delayMicroseconds(1); } - LOOP_L_N(n, 4) { LCD_SERIAL.write(DWIN_BufTail[n]); delayMicroseconds(1); } + for (uint8_t n = 0; n < i; ++n) { LCD_SERIAL.write(DWIN_SendBuf[n]); delayMicroseconds(1); } + for (uint8_t n = 0; n < 4; ++n) { LCD_SERIAL.write(DWIN_BufTail[n]); delayMicroseconds(1); } } /*-------------------------------------- System variable function --------------------------------------*/ diff --git a/Marlin/src/lcd/e3v2/creality/dwin.cpp b/Marlin/src/lcd/e3v2/creality/dwin.cpp index 3c259e5bf4de..af3d1eaeb8fa 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin.cpp +++ b/Marlin/src/lcd/e3v2/creality/dwin.cpp @@ -1891,7 +1891,7 @@ void Redraw_SD_List() { if (card.isMounted()) { // As many files as will fit - LOOP_L_N(i, _MIN(nr_sd_menu_items(), MROWS)) + for (uint8_t i = 0; i < _MIN(nr_sd_menu_items(), MROWS); ++i) Draw_SDItem(i, i + 1); TERN_(SCROLL_LONG_FILENAMES, Init_SDItem_Shift()); @@ -2038,7 +2038,7 @@ void Draw_Info_Menu() { DWIN_Draw_String(false, font8x16, Color_White, Color_Bg_Black, (DWIN_WIDTH - strlen(CORP_WEBSITE) * MENU_CHR_W) / 2, 268, F(CORP_WEBSITE)); Draw_Back_First(); - LOOP_L_N(i, 3) { + for (uint8_t i = 0; i < 3; ++i) { DWIN_ICON_Show(ICON, ICON_PrintSize + i, 26, 99 + i * 73); DWIN_Draw_Line(Line_Color, 16, MBASE(2) + i * 73, 256, 156 + i * 73); } @@ -2390,7 +2390,7 @@ void Draw_Move_Menu() { if (select_axis.now != CASE_BACK) Draw_Menu_Cursor(select_axis.now); // Draw separators and icons - LOOP_L_N(i, 3 + ENABLED(HAS_HOTEND)) Draw_Menu_Line(i + 1, ICON_MoveX + i); + for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) Draw_Menu_Line(i + 1, ICON_MoveX + i); } void Item_Adv_HomeOffsets(const uint8_t row) { @@ -3264,7 +3264,7 @@ void Draw_Max_Speed_Menu() { } Draw_Back_First(); - LOOP_L_N(i, 3 + ENABLED(HAS_HOTEND)) Draw_Menu_Line(i + 1, ICON_MaxSpeedX + i); + for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) Draw_Menu_Line(i + 1, ICON_MaxSpeedX + i); Draw_Edit_Integer4(1, planner.settings.max_feedrate_mm_s[X_AXIS]); Draw_Edit_Integer4(2, planner.settings.max_feedrate_mm_s[Y_AXIS]); Draw_Edit_Integer4(3, planner.settings.max_feedrate_mm_s[Z_AXIS]); @@ -3318,7 +3318,7 @@ void Draw_Max_Accel_Menu() { } Draw_Back_First(); - LOOP_L_N(i, 3 + ENABLED(HAS_HOTEND)) Draw_Menu_Line(i + 1, ICON_MaxAccX + i); + for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) Draw_Menu_Line(i + 1, ICON_MaxAccX + i); Draw_Edit_Integer4(1, planner.settings.max_acceleration_mm_per_s2[X_AXIS]); Draw_Edit_Integer4(2, planner.settings.max_acceleration_mm_per_s2[Y_AXIS]); Draw_Edit_Integer4(3, planner.settings.max_acceleration_mm_per_s2[Z_AXIS]); @@ -3377,7 +3377,7 @@ void Draw_Max_Accel_Menu() { } Draw_Back_First(); - LOOP_L_N(i, 3 + ENABLED(HAS_HOTEND)) Draw_Menu_Line(i + 1, ICON_MaxSpeedJerkX + i); + for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) Draw_Menu_Line(i + 1, ICON_MaxSpeedJerkX + i); Draw_Edit_Float3(1, planner.max_jerk.x * MINUNITMULT); Draw_Edit_Float3(2, planner.max_jerk.y * MINUNITMULT); Draw_Edit_Float3(3, planner.max_jerk.z * MINUNITMULT); @@ -3428,7 +3428,7 @@ void Draw_Steps_Menu() { } Draw_Back_First(); - LOOP_L_N(i, 3 + ENABLED(HAS_HOTEND)) Draw_Menu_Line(i + 1, ICON_StepX + i); + for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) Draw_Menu_Line(i + 1, ICON_StepX + i); Draw_Edit_Float3(1, planner.settings.axis_steps_per_mm[X_AXIS] * MINUNITMULT); Draw_Edit_Float3(2, planner.settings.axis_steps_per_mm[Y_AXIS] * MINUNITMULT); Draw_Edit_Float3(3, planner.settings.axis_steps_per_mm[Z_AXIS] * MINUNITMULT); diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index 81478887cec3..b453bc20317d 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -594,7 +594,7 @@ void CrealityDWINClass::Draw_Menu(const uint8_t menu, const uint8_t select/*=0*/ active_menu = menu; Clear_Screen(); Draw_Title(Get_Menu_Title(menu)); - LOOP_L_N(i, TROWS) Menu_Item_Handler(menu, i + scrollpos); + for (uint8_t i = 0; i < TROWS; ++i) Menu_Item_Handler(menu, i + scrollpos); DWIN_Draw_Rectangle(1, GetColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); } @@ -814,9 +814,9 @@ void CrealityDWINClass::Draw_SD_Item(const uint8_t item, const uint8_t row) { len = pos; if (len > max) len = max; char name[len + 1]; - LOOP_L_N(i, len) name[i] = filename[i]; + for (uint8_t i = 0; i < len; ++i) name[i] = filename[i]; if (pos > max) - LOOP_S_L_N(i, len - 3, len) name[i] = '.'; + for (uint8_t i = len - 3; i < len; ++i) name[i] = '.'; name[len] = '\0'; Draw_Menu_Item(row, card.flag.filenameIsDir ? ICON_More : ICON_File, name); } @@ -829,7 +829,7 @@ void CrealityDWINClass::Draw_SD_List(const bool removed/*=false*/) { scrollpos = 0; process = File; if (card.isMounted() && !removed) { - LOOP_L_N(i, _MIN(card.get_num_items() + 1, TROWS)) + for (uint8_t i = 0; i < _MIN(card.get_num_items() + 1, TROWS); ++i) Draw_SD_Item(i, i); } else { @@ -4664,12 +4664,12 @@ void CrealityDWINClass::Modify_Option(const uint8_t value, const char * const * void CrealityDWINClass::Update_Status(const char * const text) { if (strncmp_P(text, PSTR(""), 3) == 0) { - LOOP_L_N(i, _MIN((size_t)LONG_FILENAME_LENGTH, strlen(text))) filename[i] = text[i + 3]; + for (uint8_t i = 0; i < _MIN((size_t)LONG_FILENAME_LENGTH, strlen(text)); ++i) filename[i] = text[i + 3]; filename[_MIN((size_t)LONG_FILENAME_LENGTH - 1, strlen(text))] = '\0'; Draw_Print_Filename(true); } else { - LOOP_L_N(i, _MIN((size_t)64, strlen(text))) statusmsg[i] = text[i]; + for (uint8_t i = 0; i < _MIN((size_t)64, strlen(text)); ++i) statusmsg[i] = text[i]; statusmsg[_MIN((size_t)64, strlen(text))] = '\0'; } } diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index 807f1915f6f3..293e6c2d5cf1 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -569,7 +569,7 @@ void DWIN_Print_Header(const char *text = nullptr) { static char headertxt[31] = ""; // Print header text if (text) { const int8_t size = _MIN(30U, strlen_P(text)); - LOOP_L_N(i, size) headertxt[i] = text[i]; + for (uint8_t i = 0; i < size; ++i) headertxt[i] = text[i]; headertxt[size] = '\0'; } if (checkkey == PrintProcess || checkkey == PrintDone) { @@ -938,7 +938,7 @@ void Draw_Print_File_Menu() { if (card.isMounted()) { if (SET_MENU(FileMenu, MSG_MEDIA_MENU, nr_sd_menu_items() + 1)) { BACK_ITEM(Goto_Main_Menu); - LOOP_L_N(i, nr_sd_menu_items()) { + for (uint8_t i = 0; i < nr_sd_menu_items(); ++i) { MenuItemAdd(onDrawFileName, onClickSDItem); } } @@ -1040,7 +1040,7 @@ void Draw_Info_Menu() { DWINUI::Draw_CenteredString(122, F(MACHINE_SIZE)); DWINUI::Draw_CenteredString(195, F(SHORT_BUILD_VERSION)); - LOOP_L_N(i, 3) { + for (uint8_t i = 0; i < 3; ++i) { DWINUI::Draw_Icon(ICON_PrintSize + i, ICOX, 99 + i * 73); DWIN_Draw_HLine(HMI_data.SplitLine_Color, 16, MBASE(2) + i * 73, 240); } @@ -2413,9 +2413,9 @@ void TramC () { Tram(4); } DWINUI::Draw_CenteredString(160, F("and relative heights")); safe_delay(1000); float avg = 0.0f; - LOOP_L_N(x, 2) LOOP_L_N(y, 2) avg += zval[x][y]; + for (uint8_t x = 0; x < 2; ++x) for (uint8_t y = 0; y < 2; ++y) avg += zval[x][y]; avg /= 4.0f; - LOOP_L_N(x, 2) LOOP_L_N(y, 2) zval[x][y] -= avg; + for (uint8_t x = 0; x < 2; ++x) for (uint8_t y = 0; y < 2; ++y) zval[x][y] -= avg; MeshViewer.DrawMesh(zval, 2, 2); ui.reset_status(); @@ -2428,7 +2428,7 @@ void TramC () { Tram(4); } float max = 0; FSTR_P plabel; bool s = true; - LOOP_L_N(x, 2) LOOP_L_N(y, 2) { + for (uint8_t x = 0; x < 2; ++x) for (uint8_t y = 0; y < 2; ++y) { const float d = ABS(zval[x][y]); if (max < d) { s = (zval[x][y] >= 0); @@ -3771,7 +3771,7 @@ void Draw_Steps_Menu() { } void UBLSmartFillMesh() { - LOOP_L_N(x, GRID_MAX_POINTS_Y) bedlevel.smart_fill_mesh(); + for (uint8_t x = 0; x < GRID_MAX_POINTS_Y; ++x) bedlevel.smart_fill_mesh(); LCD_MESSAGE(MSG_UBL_MESH_FILLED); } diff --git a/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp b/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp index 6cdafc8a935f..ad2cd2709348 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp @@ -126,9 +126,9 @@ void DWIN_WriteToMem(uint8_t mem, uint16_t addr, uint16_t length, uint8_t *data) DWIN_Byte(i, mem); DWIN_Word(i, addr + indx); // start address of the data block ++i; - LOOP_L_N(j, i) { LCD_SERIAL.write(DWIN_SendBuf[j]); delayMicroseconds(1); } // Buf header + for (uint8_t j = 0; j < i; ++j) { LCD_SERIAL.write(DWIN_SendBuf[j]); delayMicroseconds(1); } // Buf header for (uint16_t j = indx; j <= indx + to_send - 1; j++) LCD_SERIAL.write(*(data + j)); delayMicroseconds(1); // write block of data - LOOP_L_N(j, 4) { LCD_SERIAL.write(DWIN_BufTail[j]); delayMicroseconds(1); } + for (uint8_t j = 0; j < 4; ++j) { LCD_SERIAL.write(DWIN_BufTail[j]); delayMicroseconds(1); } block++; pending -= to_send; } diff --git a/Marlin/src/lcd/e3v2/proui/meshviewer.cpp b/Marlin/src/lcd/e3v2/proui/meshviewer.cpp index c0ca216c32a9..80f1d35f4034 100644 --- a/Marlin/src/lcd/e3v2/proui/meshviewer.cpp +++ b/Marlin/src/lcd/e3v2/proui/meshviewer.cpp @@ -60,7 +60,7 @@ void MeshViewerClass::DrawMesh(bed_mesh_t zval, const uint8_t sizex, const uint8 #define DrawMeshHLine(yp) DWIN_Draw_HLine(HMI_data.SplitLine_Color, px(0), py(yp), DWIN_WIDTH - 2 * mx) #define DrawMeshVLine(xp) DWIN_Draw_VLine(HMI_data.SplitLine_Color, px(xp), py(sizey - 1), DWIN_WIDTH - 2 * my) int16_t maxz =-32000; int16_t minz = 32000; - LOOP_L_N(y, sizey) LOOP_L_N(x, sizex) { + for (uint8_t y = 0; y < sizey; ++y) for (uint8_t x = 0; x < sizex; ++x) { const float v = isnan(zval[x][y]) ? 0 : round(zval[x][y] * 100); zmesh[x][y] = v; NOLESS(maxz, v); @@ -70,11 +70,11 @@ void MeshViewerClass::DrawMesh(bed_mesh_t zval, const uint8_t sizex, const uint8 min = (float)minz / 100; DWINUI::ClearMainArea(); DWIN_Draw_Rectangle(0, HMI_data.SplitLine_Color, px(0), py(0), px(sizex - 1), py(sizey - 1)); - LOOP_S_L_N(x, 1, sizex - 1) DrawMeshVLine(x); - LOOP_S_L_N(y, 1, sizey - 1) DrawMeshHLine(y); - LOOP_L_N(y, sizey) { + for (uint8_t x = 1; x < sizex - 1; ++x) DrawMeshVLine(x); + for (uint8_t y = 1; y < sizey - 1; ++y) DrawMeshHLine(y); + for (uint8_t y = 0; y < sizey; ++y) { hal.watchdog_refresh(); - LOOP_L_N(x, sizex) { + for (uint8_t x = 0; x < sizex; ++x) { uint16_t color = DWINUI::RainbowInt(zmesh[x][y], _MIN(-5, minz), _MAX(5, maxz)); uint8_t radius = rm(zmesh[x][y]); DWINUI::Draw_FillCircle(color, px(x), py(y), radius); diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp index 2ccc3a37f8f8..518bda73f3f6 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp @@ -672,7 +672,7 @@ namespace Anycubic { // On: 5A A5 05 82 00 82 00 00 // Off: 5A A5 05 82 00 82 00 64 uint8_t data[] = { 0x5A, 0xA5, 0x05, 0x82, 0x00, 0x82, 0x00, uint8_t(recovery.enabled ? 0x00 : 0x64) }; - LOOP_L_N(i, COUNT(data)) TFTSer.write(data[i]); + for (uint8_t i = 0; i < COUNT(data); ++i) TFTSer.write(data[i]); } void DgusTFT::powerLossRecovery() { @@ -722,30 +722,30 @@ namespace Anycubic { void DgusTFT::sendValueToTFT(const uint16_t value, const uint16_t address) { uint8_t data[] = { 0x5A, 0xA5, 0x05, 0x82, uint8_t(address >> 8), uint8_t(address & 0xFF), uint8_t(value >> 8), uint8_t(value & 0xFF) }; - LOOP_L_N(i, COUNT(data)) TFTSer.write(data[i]); + for (uint8_t i = 0; i < COUNT(data); ++i) TFTSer.write(data[i]); } void DgusTFT::requestValueFromTFT(const uint16_t address) { uint8_t data[] = { 0x5A, 0xA5, 0x04, 0x83, uint8_t(address >> 8), uint8_t(address & 0xFF), 0x01 }; - LOOP_L_N(i, COUNT(data)) TFTSer.write(data[i]); + for (uint8_t i = 0; i < COUNT(data); ++i) TFTSer.write(data[i]); } void DgusTFT::sendTxtToTFT(const char *pdata, const uint16_t address) { uint8_t data_len = strlen(pdata); uint8_t data[] = { 0x5A, 0xA5, uint8_t(data_len + 5), 0x82, uint8_t(address >> 8), uint8_t(address & 0xFF) }; - LOOP_L_N(i, COUNT(data)) TFTSer.write(data[i]); - LOOP_L_N(i, data_len) TFTSer.write(pdata[i]); + for (uint8_t i = 0; i < COUNT(data); ++i) TFTSer.write(data[i]); + for (uint8_t i = 0; i < data_len; ++i) TFTSer.write(pdata[i]); TFTSer.write(0xFF); TFTSer.write(0xFF); } void DgusTFT::sendColorToTFT(const uint16_t color, const uint16_t address) { uint8_t data[] = { 0x5A, 0xA5, 0x05, 0x82, uint8_t(address >> 8), uint8_t(address & 0xFF), uint8_t(color >> 8), uint8_t(color & 0xFF) }; - LOOP_L_N(i, COUNT(data)) TFTSer.write(data[i]); + for (uint8_t i = 0; i < COUNT(data); ++i) TFTSer.write(data[i]); } void DgusTFT::sendReadNumOfTxtToTFT(const uint8_t number, const uint16_t address) { uint8_t data[] = { 0x5A, 0xA5, 0x04, 0x83, uint8_t(address >> 8), uint8_t(address & 0xFF), number }; - LOOP_L_N(i, COUNT(data)) TFTSer.write(data[i]); + for (uint8_t i = 0; i < COUNT(data); ++i) TFTSer.write(data[i]); } void DgusTFT::changePageOfTFT(const uint16_t page_index, const bool no_send/*=false*/) { @@ -775,7 +775,7 @@ namespace Anycubic { if (!no_send) { uint8_t data[] = { 0x5A, 0xA5, 0x07, 0x82, 0x00, 0x84, 0x5A, 0x01, uint8_t(data_temp >> 8), uint8_t(data_temp & 0xFF) }; - LOOP_L_N(i, COUNT(data)) TFTSer.write(data[i]); + for (uint8_t i = 0; i < COUNT(data); ++i) TFTSer.write(data[i]); } page_index_last_2 = page_index_last; @@ -801,7 +801,7 @@ namespace Anycubic { // On: 5A A5 07 82 00 80 5A 00 00 1A // Off: 5A A5 07 82 00 80 5A 00 00 12 uint8_t data[] = { 0x5A, 0xA5, 0x07, 0x82, 0x00, 0x80, 0x5A, 0x00, 0x00, uint8_t(audio_on ? 0x1A : 0x12) }; - LOOP_L_N(i, 10) TFTSer.write(data[i]); + for (uint8_t i = 0; i < 10; ++i) TFTSer.write(data[i]); } bool DgusTFT::readTFTCommand() { diff --git a/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h b/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h index e2405bf2ef3e..c6dd270edf90 100644 --- a/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h +++ b/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h @@ -184,7 +184,7 @@ class DGUSScreenHandler { if (!var.memadr) return; union { unsigned char tmp[sizeof(T)]; T t; } x; unsigned char *ptr = (unsigned char*)val_ptr; - LOOP_L_N(i, sizeof(T)) x.tmp[i] = ptr[sizeof(T) - i - 1]; + for (uint8_t i = 0; i < sizeof(T); ++i) x.tmp[i] = ptr[sizeof(T) - i - 1]; *(T*)var.memadr = x.t; } diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.h b/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.h index 88fed7a3b812..7c27162ce657 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSDisplay.h @@ -124,7 +124,7 @@ class DGUSDisplay { } src, dst; src.val = value; - LOOP_L_N(i, sizeof(T)) dst.byte[i] = src.byte[sizeof(T) - i - 1]; + for (uint8_t i = 0; i < sizeof(T); ++i) dst.byte[i] = src.byte[sizeof(T) - i - 1]; return dst.val; } diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/cyrillic_char_set.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/cyrillic_char_set.cpp index 1c193ade4be1..2faa1c72e688 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/cyrillic_char_set.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/cyrillic_char_set.cpp @@ -58,11 +58,11 @@ cyrillic_fm.stride = 20; cyrillic_fm.width = 40; cyrillic_fm.height = 49; - LOOP_L_N(i, 127) + for (uint8_t i = 0; i < 127; ++i) cyrillic_fm.char_widths[i] = 0; // For cyrillic characters, copy the character widths from the widths tables - LOOP_L_N(i, NUM_ELEMENTS(cyrillic_font_widths)) { + for (uint8_t i = 0; i < NUM_ELEMENTS(cyrillic_font_widths); ++i) { cyrillic_fm.char_widths[i] = cyrillic_font_widths[i]; } CLCD::mem_write_bulk(addr, &cyrillic_fm, 148); diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/western_char_set.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/western_char_set.cpp index 4fb2f8fdbf24..02a39cd01c87 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/western_char_set.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/unicode/western_char_set.cpp @@ -342,11 +342,11 @@ alt_fm.stride = 19; alt_fm.width = 38; alt_fm.height = 49; - LOOP_L_N(i, 127) + for (uint8_t i = 0; i < 127; ++i) alt_fm.char_widths[i] = 0; // For special characters, copy the character widths from the char tables - LOOP_L_N(i, NUM_ELEMENTS(char_recipe)) { + for (uint8_t i = 0; i < NUM_ELEMENTS(char_recipe); ++i) { uint8_t std_char, alt_char, alt_data; get_char_data(i, std_char, alt_char, alt_data); if (std_char == 0) diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.cpp index c08935f3bcda..95fe023cdaf6 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/move_axis_screen.cpp @@ -37,7 +37,7 @@ void BaseMoveAxisScreen::onEntry() { // ourselves. The relative distances are reset to zero whenever this // screen is entered. - LOOP_L_N(i, ExtUI::extruderCount) { + for (uint8_t i = 0; i < ExtUI::extruderCount; ++i) { mydata.e_rel[i] = 0; } BaseNumericAdjustmentScreen::onEntry(); diff --git a/Marlin/src/lcd/extui/malyan/malyan.cpp b/Marlin/src/lcd/extui/malyan/malyan.cpp index 1c051f4504cd..d1c2387682ff 100644 --- a/Marlin/src/lcd/extui/malyan/malyan.cpp +++ b/Marlin/src/lcd/extui/malyan/malyan.cpp @@ -79,7 +79,7 @@ void write_to_lcd(FSTR_P const fmsg) { char encoded_message[MAX_CURLY_COMMAND]; uint8_t message_length = _MIN(strlen_P(pmsg), sizeof(encoded_message)); - LOOP_L_N(i, message_length) + for (uint8_t i = 0; i < message_length; ++i) encoded_message[i] = pgm_read_byte(&pmsg[i]) | 0x80; LCD_SERIAL.Print::write(encoded_message, message_length); @@ -89,7 +89,7 @@ void write_to_lcd(const char * const cmsg) { char encoded_message[MAX_CURLY_COMMAND]; const uint8_t message_length = _MIN(strlen(cmsg), sizeof(encoded_message)); - LOOP_L_N(i, message_length) + for (uint8_t i = 0; i < message_length; ++i) encoded_message[i] = cmsg[i] | 0x80; LCD_SERIAL.Print::write(encoded_message, message_length); diff --git a/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp b/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp index 6e39c9a36e8f..7c0ec802c306 100644 --- a/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp +++ b/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp @@ -379,7 +379,7 @@ uint32_t Pic_Info_Write(uint8_t *P_name, uint32_t P_size) { static void dosName2LongName(const char dosName[11], char *longName) { uint8_t j = 0; - LOOP_L_N(i, 11) { + for (uint8_t i = 0; i < 11; ++i) { if (i == 8) longName[j++] = '.'; if (dosName[i] == '\0' || dosName[i] == ' ') continue; longName[j++] = dosName[i]; diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index a812dff556a7..8d27ee8f7e26 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -1289,7 +1289,7 @@ void MarlinUI::init() { thermalManager.current_ADCKey_raw = HAL_ADC_RANGE; thermalManager.ADCKey_count = 0; if (currentkpADCValue < adc_other_button) - LOOP_L_N(i, ADC_KEY_NUM) { + for (uint8_t i = 0; i < ADC_KEY_NUM; ++i) { const raw_adc_t lo = pgm_read_word(&stADCKeyTable[i].ADCKeyValueMin), hi = pgm_read_word(&stADCKeyTable[i].ADCKeyValueMax); if (WITHIN(currentkpADCValue, lo, hi)) return pgm_read_byte(&stADCKeyTable[i].ADCKeyNo); @@ -1380,7 +1380,7 @@ void MarlinUI::init() { uint8_t val = 0; WRITE(SHIFT_LD_PIN, LOW); WRITE(SHIFT_LD_PIN, HIGH); - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { val >>= 1; if (READ(SHIFT_OUT_PIN)) SBI(val, 7); WRITE(SHIFT_CLK_PIN, HIGH); diff --git a/Marlin/src/lcd/marlinui.h b/Marlin/src/lcd/marlinui.h index 7819afe97869..f811545ef66b 100644 --- a/Marlin/src/lcd/marlinui.h +++ b/Marlin/src/lcd/marlinui.h @@ -727,7 +727,7 @@ class MarlinUI { * printer unusable in practice. */ static bool hw_button_pressed() { - LOOP_L_N(s, ENCODER_SAMPLES) { + for (uint8_t s = 0; s < ENCODER_SAMPLES; ++s) { if (!BUTTON_CLICK()) return false; safe_delay(1); } diff --git a/Marlin/src/lcd/menu/game/brickout.cpp b/Marlin/src/lcd/menu/game/brickout.cpp index fc4d19b1d98d..078cbbcceee2 100644 --- a/Marlin/src/lcd/menu/game/brickout.cpp +++ b/Marlin/src/lcd/menu/game/brickout.cpp @@ -44,7 +44,7 @@ brickout_data_t &bdat = marlin_game_data.brickout; inline void reset_bricks(const uint16_t v) { bdat.brick_count = (BRICK_COLS) * (BRICK_ROWS); - LOOP_L_N(i, BRICK_ROWS) bdat.bricks[i] = v; + for (uint8_t i = 0; i < BRICK_ROWS; ++i) bdat.bricks[i] = v; } void reset_ball() { @@ -138,13 +138,13 @@ void BrickoutGame::game_screen() { // Draw bricks if (PAGE_CONTAINS(BRICK_TOP, BRICK_BOT)) { - LOOP_L_N(y, BRICK_ROWS) { + for (uint8_t y = 0; y < BRICK_ROWS; ++y) { const uint8_t yy = y * BRICK_H + BRICK_TOP; if (PAGE_CONTAINS(yy, yy + BRICK_H - 1)) { - LOOP_L_N(x, BRICK_COLS) { + for (uint8_t x = 0; x < BRICK_COLS; ++x) { if (TEST(bdat.bricks[y], x)) { const uint8_t xx = x * BRICK_W; - LOOP_L_N(v, BRICK_H - 1) + for (uint8_t v = 0; v < BRICK_H - 1; ++v) if (PAGE_CONTAINS(yy + v, yy + v)) u8g.drawHLine(xx, yy + v, BRICK_W - 1); } diff --git a/Marlin/src/lcd/menu/game/invaders.cpp b/Marlin/src/lcd/menu/game/invaders.cpp index 56e4c224dd14..1cb3e5bf3fcb 100644 --- a/Marlin/src/lcd/menu/game/invaders.cpp +++ b/Marlin/src/lcd/menu/game/invaders.cpp @@ -166,29 +166,29 @@ inline void update_invader_data() { uint8_t inv_mask = 0; // Get a list of all active invaders uint8_t sc = 0; - LOOP_L_N(y, INVADER_ROWS) { + for (uint8_t y = 0; y < INVADER_ROWS; ++y) { uint8_t m = idat.bugs[y]; if (m) idat.botmost = y + 1; inv_mask |= m; - LOOP_L_N(x, INVADER_COLS) + for (uint8_t x = 0; x < INVADER_COLS; ++x) if (TEST(m, x)) idat.shooters[sc++] = (y << 4) | x; } idat.leftmost = 0; - LOOP_L_N(i, INVADER_COLS) { if (TEST(inv_mask, i)) break; idat.leftmost -= INVADER_COL_W; } + for (uint8_t i = 0; i < INVADER_COLS; ++i) { if (TEST(inv_mask, i)) break; idat.leftmost -= INVADER_COL_W; } idat.rightmost = LCD_PIXEL_WIDTH - (INVADERS_WIDE); for (uint8_t i = INVADER_COLS; i--;) { if (TEST(inv_mask, i)) break; idat.rightmost += INVADER_COL_W; } if (idat.count == 2) idat.dir = idat.dir > 0 ? INVADER_VEL + 1 : -(INVADER_VEL + 1); } inline void reset_bullets() { - LOOP_L_N(i, COUNT(idat.bullet)) idat.bullet[i].v = 0; + for (uint8_t i = 0; i < COUNT(idat.bullet); ++i) idat.bullet[i].v = 0; } inline void reset_invaders() { idat.pos.x = 0; idat.pos.y = INVADER_TOP; idat.dir = INVADER_VEL; idat.count = (INVADER_COLS) * (INVADER_ROWS); - LOOP_L_N(i, INVADER_ROWS) idat.bugs[i] = _BV(INVADER_COLS) - 1; + for (uint8_t i = 0; i < INVADER_ROWS; ++i) idat.bugs[i] = _BV(INVADER_COLS) - 1; update_invader_data(); reset_bullets(); } @@ -274,7 +274,7 @@ void InvadersGame::game_screen() { // Find a free bullet laser_t *b = nullptr; - LOOP_L_N(i, COUNT(idat.bullet)) if (!idat.bullet[i].v) { b = &idat.bullet[i]; break; } + for (uint8_t i = 0; i < COUNT(idat.bullet); ++i) if (!idat.bullet[i].v) { b = &idat.bullet[i]; break; } if (b) { // Pick a random shooter and update the bullet //SERIAL_ECHOLNPGM("free bullet found"); @@ -322,7 +322,7 @@ void InvadersGame::game_screen() { } // laser in invader zone // Handle alien bullets - LOOP_L_N(s, COUNT(idat.bullet)) { + for (uint8_t s = 0; s < COUNT(idat.bullet); ++s) { laser_t *b = &idat.bullet[s]; if (b->v) { // Update alien bullet position @@ -371,11 +371,11 @@ void InvadersGame::game_screen() { // Draw invaders if (PAGE_CONTAINS(idat.pos.y, idat.pos.y + idat.botmost * (INVADER_ROW_H) - 2 - 1)) { int8_t yy = idat.pos.y; - LOOP_L_N(y, INVADER_ROWS) { + for (uint8_t y = 0; y < INVADER_ROWS; ++y) { const uint8_t type = inv_type[y]; if (PAGE_CONTAINS(yy, yy + INVADER_H - 1)) { int8_t xx = idat.pos.x; - LOOP_L_N(x, INVADER_COLS) { + for (uint8_t x = 0; x < INVADER_COLS; ++x) { if (TEST(idat.bugs[y], x)) u8g.drawBitmapP(xx, yy, 2, INVADER_H, invader[type][idat.game_blink]); xx += INVADER_COL_W; @@ -398,7 +398,7 @@ void InvadersGame::game_screen() { u8g.drawVLine(idat.laser.x, idat.laser.y, LASER_H); // Draw invader bullets - LOOP_L_N (i, COUNT(idat.bullet)) { + for (uint8_t i = 0; i < COUNT(idat.bullet); ++i) { if (idat.bullet[i].v && PAGE_CONTAINS(idat.bullet[i].y - (SHOT_H - 1), idat.bullet[i].y)) u8g.drawVLine(idat.bullet[i].x, idat.bullet[i].y - (SHOT_H - 1), SHOT_H); } diff --git a/Marlin/src/lcd/menu/game/maze.cpp b/Marlin/src/lcd/menu/game/maze.cpp index 85f752ee7de5..0c77f69e1ed4 100644 --- a/Marlin/src/lcd/menu/game/maze.cpp +++ b/Marlin/src/lcd/menu/game/maze.cpp @@ -83,7 +83,7 @@ void MazeGame::game_screen() { if (PAGE_UNDER(HEADER_H)) lcd_put_int(0, HEADER_H - 1, score); // Draw the maze - // LOOP_L_N(n, head_ind) { + // for (uint8_t n = 0; n < head_ind; ++n) { // const pos_t &p = maze_walls[n], &q = maze_walls[n + 1]; // if (p.x == q.x) { // const int8_t y1 = GAMEY(_MIN(p.y, q.y)), y2 = GAMEY(_MAX(p.y, q.y)); diff --git a/Marlin/src/lcd/menu/game/snake.cpp b/Marlin/src/lcd/menu/game/snake.cpp index c88893a6e6c7..2a78c089cfbe 100644 --- a/Marlin/src/lcd/menu/game/snake.cpp +++ b/Marlin/src/lcd/menu/game/snake.cpp @@ -84,14 +84,14 @@ void shorten_tail() { } if (shift) { sdat.head_ind--; - LOOP_LE_N(i, sdat.head_ind) + for (uint8_t i = 0; i <= sdat.head_ind; ++i) sdat.snake_tail[i] = sdat.snake_tail[i + 1]; } } // The food is on a line inline bool food_on_line() { - LOOP_L_N(n, sdat.head_ind) { + for (uint8_t n = 0; n < sdat.head_ind; ++n) { pos_t &p = sdat.snake_tail[n], &q = sdat.snake_tail[n + 1]; if (p.x == q.x) { if ((sdat.foodx == p.x - 1 || sdat.foodx == p.x) && WITHIN(sdat.foody, _MIN(p.y, q.y), _MAX(p.y, q.y))) @@ -151,7 +151,7 @@ bool snake_overlap() { // VERTICAL head segment? if (h1.x == h2.x) { // Loop from oldest to segment two away from head - LOOP_L_N(n, sdat.head_ind - 2) { + for (uint8_t n = 0; n < sdat.head_ind - 2; ++n) { // Segment p to q const pos_t &p = sdat.snake_tail[n], &q = sdat.snake_tail[n + 1]; if (p.x != q.x) { @@ -163,7 +163,7 @@ bool snake_overlap() { } else { // Loop from oldest to segment two away from head - LOOP_L_N(n, sdat.head_ind - 2) { + for (uint8_t n = 0; n < sdat.head_ind - 2; ++n) { // Segment p to q const pos_t &p = sdat.snake_tail[n], &q = sdat.snake_tail[n + 1]; if (p.y != q.y) { @@ -240,7 +240,7 @@ void SnakeGame::game_screen() { #if SNAKE_WH < 2 // At this scale just draw a line - LOOP_L_N(n, sdat.head_ind) { + for (uint8_t n = 0; n < sdat.head_ind; ++n) { const pos_t &p = sdat.snake_tail[n], &q = sdat.snake_tail[n + 1]; if (p.x == q.x) { const int8_t y1 = GAMEY(_MIN(p.y, q.y)), y2 = GAMEY(_MAX(p.y, q.y)); @@ -256,7 +256,7 @@ void SnakeGame::game_screen() { #elif SNAKE_WH == 2 // At this scale draw two lines - LOOP_L_N(n, sdat.head_ind) { + for (uint8_t n = 0; n < sdat.head_ind; ++n) { const pos_t &p = sdat.snake_tail[n], &q = sdat.snake_tail[n + 1]; if (p.x == q.x) { const int8_t y1 = GAMEY(_MIN(p.y, q.y)), y2 = GAMEY(_MAX(p.y, q.y)); @@ -275,7 +275,7 @@ void SnakeGame::game_screen() { #else // Draw a series of boxes - LOOP_L_N(n, sdat.head_ind) { + for (uint8_t n = 0; n < sdat.head_ind; ++n) { const pos_t &p = sdat.snake_tail[n], &q = sdat.snake_tail[n + 1]; if (p.x == q.x) { const int8_t y1 = _MIN(p.y, q.y), y2 = _MAX(p.y, q.y); diff --git a/Marlin/src/lcd/menu/menu_advanced.cpp b/Marlin/src/lcd/menu/menu_advanced.cpp index 370ea56402ff..7ef11d0e06c4 100644 --- a/Marlin/src/lcd/menu/menu_advanced.cpp +++ b/Marlin/src/lcd/menu/menu_advanced.cpp @@ -460,7 +460,7 @@ void menu_backlash(); EDIT_ITEM_FAST_N(float5, E_AXIS, MSG_VMAX_N, &planner.settings.max_feedrate_mm_s[E_AXIS_N(active_extruder)], 1, max_fr_edit_scaled.e); #endif #if ENABLED(DISTINCT_E_FACTORS) - LOOP_L_N(n, E_STEPPERS) + for (uint8_t n = 0; n < E_STEPPERS; ++n) EDIT_ITEM_FAST_N(float5, n, MSG_VMAX_EN, &planner.settings.max_feedrate_mm_s[E_AXIS_N(n)], 1, max_fr_edit_scaled.e); #endif @@ -532,7 +532,7 @@ void menu_backlash(); #if ENABLED(DISTINCT_E_FACTORS) EDIT_ITEM_FAST(long5_25, MSG_AMAX_E, &planner.settings.max_acceleration_mm_per_s2[E_AXIS_N(active_extruder)], 100, max_accel_edit_scaled.e, []{ planner.refresh_acceleration_rates(); }); - LOOP_L_N(n, E_STEPPERS) + for (uint8_t n = 0; n < E_STEPPERS; ++n) EDIT_ITEM_FAST_N(long5_25, n, MSG_AMAX_EN, &planner.settings.max_acceleration_mm_per_s2[E_AXIS_N(n)], 100, max_accel_edit_scaled.e, []{ if (MenuItemBase::itemIndex == active_extruder) planner.refresh_acceleration_rates(); @@ -656,7 +656,7 @@ void menu_advanced_steps_per_mm() { EDIT_ITEM_FAST_N(float72, a, MSG_N_STEPS, &planner.settings.axis_steps_per_mm[a], 5, 9999, []{ planner.refresh_positioning(); }); #if ENABLED(DISTINCT_E_FACTORS) - LOOP_L_N(n, E_STEPPERS) + for (uint8_t n = 0; n < E_STEPPERS; ++n) EDIT_ITEM_FAST_N(float72, n, MSG_EN_STEPS, &planner.settings.axis_steps_per_mm[E_AXIS_N(n)], 5, 9999, []{ const uint8_t e = MenuItemBase::itemIndex; if (e == active_extruder) diff --git a/Marlin/src/lcd/menu/menu_configuration.cpp b/Marlin/src/lcd/menu/menu_configuration.cpp index 0622eb98d4e4..6440cae03302 100644 --- a/Marlin/src/lcd/menu/menu_configuration.cpp +++ b/Marlin/src/lcd/menu/menu_configuration.cpp @@ -657,7 +657,7 @@ void menu_configuration() { // Preheat configurations #if HAS_PREHEAT && DISABLED(SLIM_LCD_MENUS) - LOOP_L_N(m, PREHEAT_COUNT) + for (uint8_t m = 0; m < PREHEAT_COUNT; ++m) SUBMENU_N_f(m, ui.get_preheat_label(m), MSG_PREHEAT_M_SETTINGS, _menu_configuration_preheat_settings); #endif diff --git a/Marlin/src/lcd/menu/menu_filament.cpp b/Marlin/src/lcd/menu/menu_filament.cpp index bdcd20fae3c6..073ffc183855 100644 --- a/Marlin/src/lcd/menu/menu_filament.cpp +++ b/Marlin/src/lcd/menu/menu_filament.cpp @@ -96,7 +96,7 @@ void _menu_temp_filament_op(const PauseMode mode, const int8_t extruder) { if (LCD_HEIGHT >= 4) STATIC_ITEM_F(change_filament_header(mode), SS_DEFAULT|SS_INVERT); BACK_ITEM(MSG_BACK); #if HAS_PREHEAT - LOOP_L_N(m, PREHEAT_COUNT) + for (uint8_t m = 0; m < PREHEAT_COUNT; ++m) ACTION_ITEM_N_f(m, ui.get_preheat_label(m), MSG_PREHEAT_M, _change_filament_with_preset); #endif EDIT_ITEM_FAST_N(int3, extruder, MSG_PREHEAT_CUSTOM, &thermalManager.temp_hotend[extruder].target, @@ -141,7 +141,7 @@ void menu_change_filament() { GCODES_ITEM_F(fmsg, F("M600 B0")); #else FSTR_P const fmsg = GET_TEXT_F(MSG_FILAMENTCHANGE_E); - LOOP_L_N(s, E_STEPPERS) { + for (uint8_t s = 0; s < E_STEPPERS; ++s) { if (thermalManager.targetTooColdToExtrude(s)) SUBMENU_N_F(s, fmsg, []{ _menu_temp_filament_op(PAUSE_MODE_CHANGE_FILAMENT, MenuItemBase::itemIndex); }); else { @@ -166,7 +166,7 @@ void menu_change_filament() { GCODES_ITEM_F(msg_load, F("M701")); #else FSTR_P const msg_load = GET_TEXT_F(MSG_FILAMENTLOAD_E); - LOOP_L_N(s, E_STEPPERS) { + for (uint8_t s = 0; s < E_STEPPERS; ++s) { if (thermalManager.targetTooColdToExtrude(s)) SUBMENU_N_F(s, msg_load, []{ _menu_temp_filament_op(PAUSE_MODE_LOAD_FILAMENT, MenuItemBase::itemIndex); }); else { @@ -194,7 +194,7 @@ void menu_change_filament() { GCODES_ITEM(MSG_FILAMENTUNLOAD_ALL, F("M702")); #endif FSTR_P const msg_unload = GET_TEXT_F(MSG_FILAMENTUNLOAD_E); - LOOP_L_N(s, E_STEPPERS) { + for (uint8_t s = 0; s < E_STEPPERS; ++s) { if (thermalManager.targetTooColdToExtrude(s)) SUBMENU_N_F(s, msg_unload, []{ _menu_temp_filament_op(PAUSE_MODE_UNLOAD_FILAMENT, MenuItemBase::itemIndex); }); else { diff --git a/Marlin/src/lcd/menu/menu_mixer.cpp b/Marlin/src/lcd/menu/menu_mixer.cpp index b3be5e6336fd..21c18c820989 100644 --- a/Marlin/src/lcd/menu/menu_mixer.cpp +++ b/Marlin/src/lcd/menu/menu_mixer.cpp @@ -170,7 +170,7 @@ void lcd_mixer_mix_edit() { #if CHANNEL_MIX_EDITING - LOOP_S_LE_N(n, 1, MIXING_STEPPERS) + for (uint8_t n = 1; n <= MIXING_STEPPERS; ++n) EDIT_ITEM_FAST_N(float42_52, n, MSG_MIX_COMPONENT_N, &mixer.collector[n-1], 0, 10); ACTION_ITEM(MSG_CYCLE_MIX, _lcd_mixer_cycle_mix); diff --git a/Marlin/src/lcd/menu/menu_password.cpp b/Marlin/src/lcd/menu/menu_password.cpp index 6ca4202f6c27..33d4231cd543 100644 --- a/Marlin/src/lcd/menu/menu_password.cpp +++ b/Marlin/src/lcd/menu/menu_password.cpp @@ -85,7 +85,7 @@ void Password::authentication_done() { // A single digit was completed void Password::digit_entered() { uint32_t multiplier = CAT(1e, PASSWORD_LENGTH); // 1e5 = 100000 - LOOP_LE_N(i, digit_no) multiplier /= 10; + for (uint8_t i = 0; i <= digit_no; ++i) multiplier /= 10; value_entry += editable.uint8 * multiplier; string[digit_no++] = '0' + editable.uint8; diff --git a/Marlin/src/lcd/menu/menu_temperature.cpp b/Marlin/src/lcd/menu/menu_temperature.cpp index 82b358623fc2..710cef6468a1 100644 --- a/Marlin/src/lcd/menu/menu_temperature.cpp +++ b/Marlin/src/lcd/menu/menu_temperature.cpp @@ -179,7 +179,7 @@ void menu_temperature() { #endif #if ENABLED(SINGLENOZZLE_STANDBY_TEMP) - LOOP_S_L_N(e, 1, EXTRUDERS) + for (uint8_t e = 1; e < EXTRUDERS; ++e) EDIT_ITEM_FAST_N(int3, e, MSG_NOZZLE_STANDBY, &thermalManager.singlenozzle_temp[e], 0, thermalManager.hotend_max_target(0)); #endif @@ -266,7 +266,7 @@ void menu_temperature() { // // Preheat for all Materials // - LOOP_L_N(m, PREHEAT_COUNT) { + for (uint8_t m = 0; m < PREHEAT_COUNT; ++m) { editable.int8 = m; #if HAS_MULTI_HOTEND || HAS_HEATED_BED SUBMENU_f(ui.get_preheat_label(m), MSG_PREHEAT_M, menu_preheat_m); @@ -293,7 +293,7 @@ void menu_temperature() { START_MENU(); BACK_ITEM(MSG_MAIN_MENU); - LOOP_L_N(m, PREHEAT_COUNT) { + for (uint8_t m = 0; m < PREHEAT_COUNT; ++m) { editable.int8 = m; #if HAS_MULTI_HOTEND || HAS_HEATED_BED SUBMENU_f(ui.get_preheat_label(m), MSG_PREHEAT_M, menu_preheat_m); diff --git a/Marlin/src/lcd/menu/menu_tune.cpp b/Marlin/src/lcd/menu/menu_tune.cpp index 5247c714c662..c36ac013b86f 100644 --- a/Marlin/src/lcd/menu/menu_tune.cpp +++ b/Marlin/src/lcd/menu/menu_tune.cpp @@ -135,7 +135,7 @@ void menu_tune() { #endif #if ENABLED(SINGLENOZZLE_STANDBY_TEMP) - LOOP_S_L_N(e, 1, EXTRUDERS) + for (uint8_t e = 1; e < EXTRUDERS; ++e) EDIT_ITEM_FAST_N(int3, e, MSG_NOZZLE_STANDBY, &thermalManager.singlenozzle_temp[e], 0, thermalManager.hotend_max_target(0)); #endif diff --git a/Marlin/src/lcd/menu/menu_x_twist.cpp b/Marlin/src/lcd/menu/menu_x_twist.cpp index 5339e8e6e515..56872b73ee25 100644 --- a/Marlin/src/lcd/menu/menu_x_twist.cpp +++ b/Marlin/src/lcd/menu/menu_x_twist.cpp @@ -150,12 +150,12 @@ void xatc_wizard_goto_next_point() { else { // Compute the z-offset by averaging the values found with this wizard z_offset = 0; - LOOP_L_N(i, XATC_MAX_POINTS) z_offset += xatc.z_offset[i]; + for (uint8_t i = 0; i < XATC_MAX_POINTS; ++i) z_offset += xatc.z_offset[i]; z_offset /= XATC_MAX_POINTS; // Subtract the average from the values found with this wizard. // This way they are indipendent from the z-offset - LOOP_L_N(i, XATC_MAX_POINTS) xatc.z_offset[i] -= z_offset; + for (uint8_t i = 0; i < XATC_MAX_POINTS; ++i) xatc.z_offset[i] -= z_offset; ui.goto_screen(xatc_wizard_update_z_offset); } diff --git a/Marlin/src/libs/BL24CXX.cpp b/Marlin/src/libs/BL24CXX.cpp index 4b5a23e4c550..adfdc1387cf2 100644 --- a/Marlin/src/libs/BL24CXX.cpp +++ b/Marlin/src/libs/BL24CXX.cpp @@ -141,7 +141,7 @@ void IIC::nAck() { void IIC::send_byte(uint8_t txd) { SDA_OUT(); IIC_SCL_0(); // Pull down the clock to start data transmission - LOOP_L_N(t, 8) { + for (uint8_t t = 0; t < 8; ++t) { // IIC_SDA = (txd & 0x80) >> 7; if (txd & 0x80) IIC_SDA_1(); else IIC_SDA_0(); txd <<= 1; @@ -157,7 +157,7 @@ void IIC::send_byte(uint8_t txd) { uint8_t IIC::read_byte(unsigned char ack_chr) { unsigned char receive = 0; SDA_IN(); // SDA is set as input - LOOP_L_N(i, 8) { + for (uint8_t i = 0; i < 8; ++i) { IIC_SCL_0(); delay_us(2); IIC_SCL_1(); @@ -228,7 +228,7 @@ void BL24CXX::writeOneByte(uint16_t WriteAddr, uint8_t DataToWrite) { // DataToWrite: the first address of the data array // Len: The length of the data to be written 2, 4 void BL24CXX::writeLenByte(uint16_t WriteAddr, uint32_t DataToWrite, uint8_t Len) { - LOOP_L_N(t, Len) + for (uint8_t t = 0; t < Len; ++t) writeOneByte(WriteAddr + t, (DataToWrite >> (8 * t)) & 0xFF); } @@ -239,7 +239,7 @@ void BL24CXX::writeLenByte(uint16_t WriteAddr, uint32_t DataToWrite, uint8_t Len // Len: The length of the data to be read 2,4 uint32_t BL24CXX::readLenByte(uint16_t ReadAddr, uint8_t Len) { uint32_t temp = 0; - LOOP_L_N(t, Len) { + for (uint8_t t = 0; t < Len; ++t) { temp <<= 8; temp += readOneByte(ReadAddr + Len - t - 1); } diff --git a/Marlin/src/libs/nozzle.cpp b/Marlin/src/libs/nozzle.cpp index 58c097e3167e..10ebd71efd9a 100644 --- a/Marlin/src/libs/nozzle.cpp +++ b/Marlin/src/libs/nozzle.cpp @@ -63,7 +63,7 @@ Nozzle nozzle; #endif // Start the stroke pattern - LOOP_L_N(i, strokes >> 1) { + for (uint8_t i = 0; i < strokes >> 1; ++i) { #if ENABLED(NOZZLE_CLEAN_NO_Y) do_blocking_move_to_x(end.x); do_blocking_move_to_x(start.x); @@ -105,7 +105,7 @@ Nozzle nozzle; const bool horiz = ABS(diff.x) >= ABS(diff.y); // Do a horizontal wipe? const float P = (horiz ? diff.x : diff.y) / zigs; // Period of each zig / zag const xyz_pos_t *side; - LOOP_L_N(j, strokes) { + for (uint8_t j = 0; j < strokes; ++j) { for (int8_t i = 0; i < zigs; i++) { side = (i & 1) ? &end : &start; if (horiz) @@ -143,8 +143,8 @@ Nozzle nozzle; #endif TERN(NOZZLE_CLEAN_NO_Z, do_blocking_move_to_xy, do_blocking_move_to)(start); - LOOP_L_N(s, strokes) - LOOP_L_N(i, NOZZLE_CLEAN_CIRCLE_FN) + for (uint8_t s = 0; s < strokes; ++s) + for (uint8_t i = 0; i < NOZZLE_CLEAN_CIRCLE_FN; ++i) do_blocking_move_to_xy( middle.x + sin((RADIANS(360) / NOZZLE_CLEAN_CIRCLE_FN) * i) * radius, middle.y + cos((RADIANS(360) / NOZZLE_CLEAN_CIRCLE_FN) * i) * radius diff --git a/Marlin/src/libs/vector_3.cpp b/Marlin/src/libs/vector_3.cpp index 02945fe6871a..a222b5cc2e7e 100644 --- a/Marlin/src/libs/vector_3.cpp +++ b/Marlin/src/libs/vector_3.cpp @@ -93,8 +93,8 @@ void matrix_3x3::apply_rotation_xyz(float &_x, float &_y, float &_z) { // Reset to identity. No rotate or translate. void matrix_3x3::set_to_identity() { - LOOP_L_N(i, 3) - LOOP_L_N(j, 3) + for (uint8_t i = 0; i < 3; ++i) + for (uint8_t j = 0; j < 3; ++j) vectors[i][j] = float(i == j); } @@ -131,16 +131,16 @@ matrix_3x3 matrix_3x3::create_look_at(const vector_3 &target) { // Get a transposed copy of the matrix matrix_3x3 matrix_3x3::transpose(const matrix_3x3 &original) { matrix_3x3 new_matrix; - LOOP_L_N(i, 3) - LOOP_L_N(j, 3) + for (uint8_t i = 0; i < 3; ++i) + for (uint8_t j = 0; j < 3; ++j) new_matrix.vectors[i][j] = original.vectors[j][i]; return new_matrix; } void matrix_3x3::debug(FSTR_P const title) { if (title) SERIAL_ECHOLNF(title); - LOOP_L_N(i, 3) { - LOOP_L_N(j, 3) { + for (uint8_t i = 0; i < 3; ++i) { + for (uint8_t j = 0; j < 3; ++j) { serial_offset(vectors[i][j], 2); SERIAL_CHAR(' '); } diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index f73d0f1e6b42..3031e7d69489 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -480,7 +480,7 @@ void __O2 Endstops::report_states() { #endif #if MULTI_FILAMENT_SENSOR #define _CASE_RUNOUT(N) case N: pin = FIL_RUNOUT##N##_PIN; state = FIL_RUNOUT##N##_STATE; break; - LOOP_S_LE_N(i, 1, NUM_RUNOUT_SENSORS) { + for (uint8_t i = 1; i <= NUM_RUNOUT_SENSORS; ++i) { pin_t pin; uint8_t state; switch (i) { diff --git a/Marlin/src/module/planner.cpp b/Marlin/src/module/planner.cpp index 1d3bb268efa4..10b8ca86706a 100644 --- a/Marlin/src/module/planner.cpp +++ b/Marlin/src/module/planner.cpp @@ -1520,7 +1520,7 @@ void Planner::check_axes_activity() { * The multiplier converts a given E value into a length. */ void Planner::calculate_volumetric_multipliers() { - LOOP_L_N(i, COUNT(filament_size)) { + for (uint8_t i = 0; i < COUNT(filament_size); ++i) { volumetric_multiplier[i] = calculate_volumetric_multiplier(filament_size[i]); refresh_e_factor(i); } @@ -2260,7 +2260,7 @@ bool Planner::_populate_block( #if ENABLED(DISABLE_OTHER_EXTRUDERS) // Enable only the selected extruder // Count down all steppers that were recently moved - LOOP_L_N(i, E_STEPPERS) + for (uint8_t i = 0; i < E_STEPPERS; ++i) if (extruder_last_move[i]) extruder_last_move[i]--; // Switching Extruder uses one E stepper motor per two nozzles diff --git a/Marlin/src/module/planner.h b/Marlin/src/module/planner.h index e74aea56a571..c45ff6ad1d1d 100644 --- a/Marlin/src/module/planner.h +++ b/Marlin/src/module/planner.h @@ -650,7 +650,7 @@ class Planner { filament_size[e] = v; if (v > 0) volumetric_area_nominal = CIRCLE_AREA(v * 0.5); //TODO: should it be per extruder // make sure all extruders have some sane value for the filament size - LOOP_L_N(i, COUNT(filament_size)) + for (uint8_t i = 0; i < COUNT(filament_size); ++i) if (!filament_size[i]) filament_size[i] = DEFAULT_NOMINAL_FILAMENT_DIA; } diff --git a/Marlin/src/module/probe.cpp b/Marlin/src/module/probe.cpp index c3ea161cb413..0bece02c15a8 100644 --- a/Marlin/src/module/probe.cpp +++ b/Marlin/src/module/probe.cpp @@ -811,7 +811,7 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/, const_float_t z_min_p #if EXTRA_PROBING > 0 // Insert Z measurement into probes[]. Keep it sorted ascending. - LOOP_LE_N(i, p) { // Iterate the saved Zs to insert the new Z + for (uint8_t i = 0; i <= p; ++i) { // Iterate the saved Zs to insert the new Z if (i == p || probes[i] > z) { // Last index or new Z is smaller than this Z for (int8_t m = p; --m >= i;) probes[m + 1] = probes[m]; // Shift items down after the insertion point probes[i] = z; // Insert the new Z measurement @@ -849,7 +849,7 @@ float Probe::run_z_probe(const bool sanity_check/*=true*/, const_float_t z_min_p max_avg_idx--; else min_avg_idx++; // Return the average value of all remaining probes. - LOOP_S_LE_N(i, min_avg_idx, max_avg_idx) + for (uint8_t i = min_avg_idx; i <= max_avg_idx; ++i) probes_z_sum += probes[i]; #endif diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index f9dff246569e..62b03a1b9cff 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -874,7 +874,7 @@ void MarlinSettings::postprocess() { { #if HAS_HOTEND_OFFSET // Skip hotend 0 which must be 0 - LOOP_S_L_N(e, 1, HOTENDS) + for (uint8_t e = 1; e < HOTENDS; ++e) EEPROM_WRITE(hotend_offset[e]); #endif } @@ -1885,7 +1885,7 @@ void MarlinSettings::postprocess() { { #if HAS_HOTEND_OFFSET // Skip hotend 0 which must be 0 - LOOP_S_L_N(e, 1, HOTENDS) + for (uint8_t e = 1; e < HOTENDS; ++e) EEPROM_READ(hotend_offset[e]); #endif } @@ -3294,7 +3294,7 @@ void MarlinSettings::reset() { #if HAS_FAN constexpr uint8_t fpre[] = { REPEAT2_S(1, INCREMENT(PREHEAT_COUNT), _PITEM, FAN_SPEED) }; #endif - LOOP_L_N(i, PREHEAT_COUNT) { + for (uint8_t i = 0; i < PREHEAT_COUNT; ++i) { TERN_(HAS_HOTEND, ui.material_preset[i].hotend_temp = hpre[i]); TERN_(HAS_HEATED_BED, ui.material_preset[i].bed_temp = bpre[i]); TERN_(HAS_FAN, ui.material_preset[i].fan_speed = fpre[i]); @@ -3435,10 +3435,10 @@ void MarlinSettings::reset() { #if DISABLED(NO_VOLUMETRICS) parser.volumetric_enabled = ENABLED(VOLUMETRIC_DEFAULT_ON); - LOOP_L_N(q, COUNT(planner.filament_size)) + for (uint8_t q = 0; q < COUNT(planner.filament_size); ++q) planner.filament_size[q] = DEFAULT_NOMINAL_FILAMENT_DIA; #if ENABLED(VOLUMETRIC_EXTRUDER_LIMIT) - LOOP_L_N(q, COUNT(planner.volumetric_extruder_limit)) + for (uint8_t q = 0; q < COUNT(planner.volumetric_extruder_limit); ++q) planner.volumetric_extruder_limit[q] = DEFAULT_VOLUMETRIC_EXTRUDER_LIMIT; #endif #endif @@ -3469,7 +3469,7 @@ void MarlinSettings::reset() { #if HAS_MOTOR_CURRENT_PWM constexpr uint32_t tmp_motor_current_setting[MOTOR_CURRENT_COUNT] = PWM_MOTOR_CURRENT; - LOOP_L_N(q, MOTOR_CURRENT_COUNT) + for (uint8_t q = 0; q < MOTOR_CURRENT_COUNT; ++q) stepper.set_digipot_current(q, (stepper.motor_current_setting[q] = tmp_motor_current_setting[q])); #endif @@ -3479,7 +3479,7 @@ void MarlinSettings::reset() { #if HAS_MOTOR_CURRENT_SPI static constexpr uint32_t tmp_motor_current_setting[] = DIGIPOT_MOTOR_CURRENT; DEBUG_ECHOLNPGM("Writing Digipot"); - LOOP_L_N(q, COUNT(tmp_motor_current_setting)) + for (uint8_t q = 0; q < COUNT(tmp_motor_current_setting); ++q) stepper.set_digipot_current(q, tmp_motor_current_setting[q]); DEBUG_ECHOLNPGM("Digipot Written"); #endif @@ -3686,8 +3686,8 @@ void MarlinSettings::reset() { #if ENABLED(MESH_BED_LEVELING) if (leveling_is_valid()) { - LOOP_L_N(py, GRID_MAX_POINTS_Y) { - LOOP_L_N(px, GRID_MAX_POINTS_X) { + for (uint8_t py = 0; py < GRID_MAX_POINTS_Y; ++py) { + for (uint8_t px = 0; px < GRID_MAX_POINTS_X; ++px) { CONFIG_ECHO_START(); SERIAL_ECHOPGM(" G29 S3 I", px, " J", py); SERIAL_ECHOLNPAIR_F_P(SP_Z_STR, LINEAR_UNIT(bedlevel.z_values[px][py]), 5); @@ -3712,8 +3712,8 @@ void MarlinSettings::reset() { #elif ENABLED(AUTO_BED_LEVELING_BILINEAR) if (leveling_is_valid()) { - LOOP_L_N(py, GRID_MAX_POINTS_Y) { - LOOP_L_N(px, GRID_MAX_POINTS_X) { + for (uint8_t py = 0; py < GRID_MAX_POINTS_Y; ++py) { + for (uint8_t px = 0; px < GRID_MAX_POINTS_X; ++px) { CONFIG_ECHO_START(); SERIAL_ECHOPGM(" G29 W I", px, " J", py); SERIAL_ECHOLNPAIR_F_P(SP_Z_STR, LINEAR_UNIT(bedlevel.z_values[px][py]), 5); @@ -3765,7 +3765,7 @@ void MarlinSettings::reset() { TERN_(PIDTEMPCHAMBER, gcode.M309_report(forReplay)); #if HAS_USER_THERMISTORS - LOOP_L_N(i, USER_THERMISTORS) + for (uint8_t i = 0; i < USER_THERMISTORS; ++i) thermalManager.M305_report(i, forReplay); #endif diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index eb977793efe2..66dd114616df 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -2842,7 +2842,7 @@ void Stepper::init() { #if MB(ALLIGATOR) const float motor_current[] = MOTOR_CURRENT; unsigned int digipot_motor = 0; - LOOP_L_N(i, 3 + EXTRUDERS) { + for (uint8_t i = 0; i < 3 + EXTRUDERS; ++i) { digipot_motor = 255 * (motor_current[i] / 2.5); dac084s085::setValue(i, digipot_motor); } @@ -3725,7 +3725,7 @@ void Stepper::report_positions() { void Stepper::refresh_motor_power() { if (!initialized) return; - LOOP_L_N(i, COUNT(motor_current_setting)) { + for (uint8_t i = 0; i < COUNT(motor_current_setting); ++i) { switch (i) { #if ANY_PIN(MOTOR_CURRENT_PWM_XY, MOTOR_CURRENT_PWM_X, MOTOR_CURRENT_PWM_Y, MOTOR_CURRENT_PWM_I, MOTOR_CURRENT_PWM_J, MOTOR_CURRENT_PWM_K, MOTOR_CURRENT_PWM_U, MOTOR_CURRENT_PWM_V, MOTOR_CURRENT_PWM_W) case 0: @@ -3821,7 +3821,7 @@ void Stepper::report_positions() { SPI.begin(); SET_OUTPUT(DIGIPOTSS_PIN); - LOOP_L_N(i, COUNT(motor_current_setting)) + for (uint8_t i = 0; i < COUNT(motor_current_setting); ++i) set_digipot_current(i, motor_current_setting[i]); #elif HAS_MOTOR_CURRENT_PWM diff --git a/Marlin/src/module/stepper/trinamic.cpp b/Marlin/src/module/stepper/trinamic.cpp index 7649c52f5ce6..1e8782753ae0 100644 --- a/Marlin/src/module/stepper/trinamic.cpp +++ b/Marlin/src/module/stepper/trinamic.cpp @@ -501,7 +501,7 @@ enum StealthIndex : uint8_t { struct { const void *ptr[TMCAxis::TOTAL]; bool began(const TMCAxis a, const void * const p) { - LOOP_L_N(i, a) if (p == ptr[i]) return true; + for (uint8_t i = 0; i < a; ++i) if (p == ptr[i]) return true; ptr[a] = p; return false; }; } sp_helper; diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 315cf8883089..7383f6a1c3de 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -1400,7 +1400,7 @@ int16_t Temperature::getHeaterPower(const heater_id_t heater_id) { }while(0) uint8_t fanDone = 0; - LOOP_L_N(f, COUNT(fanBit)) { + for (uint8_t f = 0; f < COUNT(fanBit); ++f) { const uint8_t realFan = pgm_read_byte(&fanBit[f]); if (TEST(fanDone, realFan)) continue; const bool fan_on = TEST(fanState, realFan); diff --git a/Marlin/src/module/temperature.h b/Marlin/src/module/temperature.h index 9d1d68cf0b00..b0cb3d778ebe 100644 --- a/Marlin/src/module/temperature.h +++ b/Marlin/src/module/temperature.h @@ -273,7 +273,7 @@ typedef struct { float p, i, d, c, f; } raw_pidcf_t; base::reset(); prev_e_pos = 0; lpq_ptr = 0; - LOOP_L_N(i, LPQ_ARR_SZ) lpq[i] = 0; + for (uint8_t i = 0; i < LPQ_ARR_SZ; ++i) lpq[i] = 0; } float get_extrusion_scale_output(const bool is_active, const int32_t e_position, const float e_mm_per_step, const int16_t lpq_len) { @@ -877,7 +877,7 @@ class Temperature { #if HAS_FAN static uint8_t fan_speed[FAN_COUNT]; - #define FANS_LOOP(I) LOOP_L_N(I, FAN_COUNT) + #define FANS_LOOP(I) for (uint8_t I = 0; I < FAN_COUNT; ++I) static void set_fan_speed(const uint8_t fan, const uint16_t speed); diff --git a/Marlin/src/module/tool_change.cpp b/Marlin/src/module/tool_change.cpp index d4c2fcb675d1..21f5ce80b532 100644 --- a/Marlin/src/module/tool_change.cpp +++ b/Marlin/src/module/tool_change.cpp @@ -250,7 +250,7 @@ void fast_line_to_current(const AxisEnum fr_axis) { _line_to_current(fr_axis, 0. #elif ENABLED(PARKING_EXTRUDER) void pe_solenoid_init() { - LOOP_LE_N(n, 1) pe_solenoid_set_pin_state(n, !PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE); + for (uint8_t n = 0; n <= 1; ++n) pe_solenoid_set_pin_state(n, !PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE); } void pe_solenoid_set_pin_state(const uint8_t extruder_num, const uint8_t state) { diff --git a/Marlin/src/pins/pinsDebug.h b/Marlin/src/pins/pinsDebug.h index a342d546c48c..4d51de52c88e 100644 --- a/Marlin/src/pins/pinsDebug.h +++ b/Marlin/src/pins/pinsDebug.h @@ -206,7 +206,7 @@ inline void report_pin_state_extended(const pin_t pin, const bool ignore, const return true; }; - LOOP_L_N(x, COUNT(pin_array)) { // scan entire array and report all instances of this pin + for (uint8_t x = 0; x < COUNT(pin_array); ++x) { // scan entire array and report all instances of this pin if (GET_ARRAY_PIN(x) == pin) { if (!found) { // report digital and analog pin number only on the first time through if (start_string) SERIAL_ECHOF(start_string); diff --git a/Marlin/src/sd/Sd2Card.cpp b/Marlin/src/sd/Sd2Card.cpp index 81cc03230483..7deebd4776a2 100644 --- a/Marlin/src/sd/Sd2Card.cpp +++ b/Marlin/src/sd/Sd2Card.cpp @@ -74,7 +74,7 @@ #else static uint8_t CRC7(const uint8_t *data, uint8_t n) { uint8_t crc = 0; - LOOP_L_N(i, n) { + for (uint8_t i = 0; i < n; ++i) { uint8_t d = data[i]; d ^= crc << 1; if (d & 0x80) d ^= 9; @@ -111,7 +111,7 @@ uint8_t DiskIODriver_SPI_SD::cardCommand(const uint8_t cmd, const uint32_t arg) d[5] = CRC7(d, 5); // Send message - LOOP_L_N(k, 6) spiSend(d[k]); + for (uint8_t k = 0; k < 6; ++k) spiSend(d[k]); #else // Send command @@ -268,7 +268,7 @@ bool DiskIODriver_SPI_SD::init(const uint8_t sckRateID, const pin_t chipSelectPi spiInit(spiRate_); // Must supply min of 74 clock cycles with CS high. - LOOP_L_N(i, 10) spiSend(0xFF); + for (uint8_t i = 0; i < 10; ++i) spiSend(0xFF); hal.watchdog_refresh(); // In case init takes too long @@ -294,7 +294,7 @@ bool DiskIODriver_SPI_SD::init(const uint8_t sckRateID, const pin_t chipSelectPi } // Get the last byte of r7 response - LOOP_L_N(i, 4) status_ = spiRec(); + for (uint8_t i = 0; i < 4; ++i) status_ = spiRec(); if (status_ == 0xAA) { type(SD_CARD_TYPE_SD2); break; @@ -325,7 +325,7 @@ bool DiskIODriver_SPI_SD::init(const uint8_t sckRateID, const pin_t chipSelectPi } if ((spiRec() & 0xC0) == 0xC0) type(SD_CARD_TYPE_SDHC); // Discard rest of ocr - contains allowed voltage range - LOOP_L_N(i, 3) spiRec(); + for (uint8_t i = 0; i < 3; ++i) spiRec(); } chipDeselect(); diff --git a/Marlin/src/sd/SdBaseFile.cpp b/Marlin/src/sd/SdBaseFile.cpp index 98cbe9ba9d1c..46312bca82fb 100644 --- a/Marlin/src/sd/SdBaseFile.cpp +++ b/Marlin/src/sd/SdBaseFile.cpp @@ -209,7 +209,7 @@ bool SdBaseFile::dirEntry(dir_t *dir) { */ void SdBaseFile::dirName(const dir_t &dir, char *name) { uint8_t j = 0; - LOOP_L_N(i, 11) { + for (uint8_t i = 0; i < 11; ++i) { if (dir.name[i] == ' ')continue; if (i == 8) name[j++] = '.'; name[j++] = dir.name[i]; @@ -350,10 +350,10 @@ int8_t SdBaseFile::lsPrintNext(const uint8_t flags, const uint8_t indent) { && DIR_IS_FILE_OR_SUBDIR(&dir)) break; } // indent for dir level - LOOP_L_N(i, indent) SERIAL_CHAR(' '); + for (uint8_t i = 0; i < indent; ++i) SERIAL_CHAR(' '); // print name - LOOP_L_N(i, 11) { + for (uint8_t i = 0; i < 11; ++i) { if (dir.name[i] == ' ')continue; if (i == 8) { SERIAL_CHAR('.'); @@ -504,7 +504,7 @@ bool SdBaseFile::mkdir(SdBaseFile * const parent, const uint8_t dname[11] dir_t d; memcpy(&d, p, sizeof(d)); d.name[0] = '.'; - LOOP_S_L_N(i, 1, 11) d.name[i] = ' '; + for (uint8_t i = 1; i < 11; ++i) d.name[i] = ' '; // cache block for '.' and '..' uint32_t block = vol_->clusterStartBlock(firstCluster_); @@ -771,7 +771,7 @@ bool SdBaseFile::open(SdBaseFile * const dirFile, const uint8_t dname[11] if (!dirFile->seekSet(32 * index)) return false; // Dir entries write loop: [LFN] + SFN(1) - LOOP_L_N(dirWriteIdx, reqEntriesNum) { + for (uint8_t dirWriteIdx = 0; dirWriteIdx < reqEntriesNum; ++dirWriteIdx) { index = (dirFile->curPosition_ / 32) & 0xF; p = dirFile->readDirCache(); // LFN or SFN Entry? @@ -1137,7 +1137,7 @@ bool SdBaseFile::openNext(SdBaseFile *dirFile, const uint8_t oflag) { */ void SdBaseFile::getLFNName(vfat_t *pFatDir, char *lname, const uint8_t sequenceNumber) { const uint8_t startOffset = (sequenceNumber - 1) * FILENAME_LENGTH; - LOOP_L_N(i, FILENAME_LENGTH) { + for (uint8_t i = 0; i < FILENAME_LENGTH; ++i) { const uint16_t utf16_ch = (i >= 11) ? pFatDir->name3[i - 11] : (i >= 5) ? pFatDir->name2[i - 5] : pFatDir->name1[i]; #if ENABLED(UTF_FILENAME_SUPPORT) // We can't reconvert to UTF-8 here as UTF-8 is variable-size encoding, but joining LFN blocks @@ -1158,7 +1158,7 @@ bool SdBaseFile::openNext(SdBaseFile *dirFile, const uint8_t oflag) { void SdBaseFile::setLFNName(vfat_t *pFatDir, char *lname, const uint8_t sequenceNumber) { const uint8_t startOffset = (sequenceNumber - 1) * FILENAME_LENGTH, nameLength = strlen(lname); - LOOP_L_N(i, FILENAME_LENGTH) { + for (uint8_t i = 0; i < FILENAME_LENGTH; ++i) { uint16_t ch = 0; if ((startOffset + i) < nameLength) ch = lname[startOffset + i]; @@ -1479,7 +1479,7 @@ int8_t SdBaseFile::readDir(dir_t * const dir, char * const longFilename) { n = (seq - 1) * (FILENAME_LENGTH); - LOOP_L_N(i, FILENAME_LENGTH) { + for (uint8_t i = 0; i < FILENAME_LENGTH; ++i) { const uint16_t utf16_ch = (i >= 11) ? VFAT->name3[i - 11] : (i >= 5) ? VFAT->name2[i - 5] : VFAT->name1[i]; #if ENABLED(UTF_FILENAME_SUPPORT) // We can't reconvert to UTF-8 here as UTF-8 is variable-size encoding, but joining LFN blocks @@ -1627,7 +1627,7 @@ bool SdBaseFile::remove() { // Check if the entry has a LFN bool lastEntry = false; // loop back to search for any LFN entries related to this file - LOOP_S_LE_N(sequenceNumber, 1, VFAT_ENTRIES_LIMIT) { + for (uint8_t sequenceNumber = 1; sequenceNumber <= VFAT_ENTRIES_LIMIT; ++sequenceNumber) { dirIndex_ = (dirIndex_ - 1) & 0xF; if (dirBlock_ == 0) break; if (dirIndex_ == 0xF) dirBlock_--; diff --git a/Marlin/src/sd/cardreader.cpp b/Marlin/src/sd/cardreader.cpp index 811351ec8c1f..40c1f09f1182 100644 --- a/Marlin/src/sd/cardreader.cpp +++ b/Marlin/src/sd/cardreader.cpp @@ -190,7 +190,7 @@ CardReader::CardReader() { // char *createFilename(char * const buffer, const dir_t &p) { char *pos = buffer; - LOOP_L_N(i, 11) { + for (uint8_t i = 0; i < 11; ++i) { if (p.name[i] == ' ') continue; if (i == 8) *pos++ = '.'; *pos++ = p.name[i]; @@ -650,7 +650,7 @@ void CardReader::getAbsFilenameInCWD(char *dst) { if (cnt < MAXPATHNAMELENGTH) { *dst = '/'; dst++; cnt++; } }; - LOOP_L_N(i, workDirDepth) // Loop down to current work dir + for (uint8_t i = 0; i < workDirDepth; ++i) // Loop down to current work dir appendAtom(workDirParents[i]); if (cnt < MAXPATHNAMELENGTH - (FILENAME_LENGTH) - 1) { // Leave room for filename and nul @@ -1377,7 +1377,7 @@ void CardReader::cdroot() { #if ENABLED(SDSORT_DYNAMIC_RAM) delete [] sort_order; #if ENABLED(SDSORT_CACHE_NAMES) - LOOP_L_N(i, sort_count) { + for (uint8_t i = 0; i < sort_count; ++i) { free(sortshort[i]); // strdup free(sortnames[i]); // strdup } From ad0d700a3e783943a722fec00ee3ac24020691ba Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 3 Jun 2023 00:22:16 +0000 Subject: [PATCH 241/427] [cron] Bump distribution date (2023-06-03) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index dbb481833cad..361b1035d070 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-02" +//#define STRING_DISTRIBUTION_DATE "2023-06-03" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index e1e4a9a8af38..69937ac7fced 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-02" + #define STRING_DISTRIBUTION_DATE "2023-06-03" #endif /** From a6b56d171d855429d1f0249fcc1ffe64881994f4 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Sat, 3 Jun 2023 15:37:29 +1200 Subject: [PATCH 242/427] =?UTF-8?q?=F0=9F=8E=A8=20Lowercase=20followup=20(?= =?UTF-8?q?#25923)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25914 --- Marlin/src/lcd/tft/canvas.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/lcd/tft/canvas.cpp b/Marlin/src/lcd/tft/canvas.cpp index 0894f7afb94b..ac3a2d76c389 100644 --- a/Marlin/src/lcd/tft/canvas.cpp +++ b/Marlin/src/lcd/tft/canvas.cpp @@ -85,10 +85,10 @@ void Canvas::addText(uint16_t x, uint16_t y, uint16_t color, uint16_t *string, u if (stringWidth + pGlyph->BBXWidth > maxWidth) break; switch (getFontType()) { case FONT_MARLIN_GLYPHS_1BPP: - addImage(x + stringWidth + pGlyph->BBXOffsetX, y + getFontAscent() - pGlyph->BBXHeight - pGlyph->BBXOffsetY, pGlyph->BBXWidth, pGlyph->BBXHeight, GREYSCALE1, ((uint8_t *)glyph) + sizeof(glyph_t), &color); + addImage(x + stringWidth + pGlyph->BBXOffsetX, y + getFontAscent() - pGlyph->BBXHeight - pGlyph->BBXOffsetY, pGlyph->BBXWidth, pGlyph->BBXHeight, GREYSCALE1, ((uint8_t *)pGlyph) + sizeof(glyph_t), &color); break; case FONT_MARLIN_GLYPHS_2BPP: - addImage(x + stringWidth + pGlyph->BBXOffsetX, y + getFontAscent() - pGlyph->BBXHeight - pGlyph->BBXOffsetY, pGlyph->BBXWidth, pGlyph->BBXHeight, GREYSCALE2, ((uint8_t *)glyph) + sizeof(glyph_t), colors); + addImage(x + stringWidth + pGlyph->BBXOffsetX, y + getFontAscent() - pGlyph->BBXHeight - pGlyph->BBXOffsetY, pGlyph->BBXWidth, pGlyph->BBXHeight, GREYSCALE2, ((uint8_t *)pGlyph) + sizeof(glyph_t), colors); break; } stringWidth += pGlyph->DWidth; From 739f1027f8e12da28d15e1de78a5b7ecc49c3b12 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Sat, 3 Jun 2023 15:47:57 +1200 Subject: [PATCH 243/427] =?UTF-8?q?=F0=9F=94=A8=20STM32H723VG=20(1024KB)?= =?UTF-8?q?=20(#25921)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/pins/pins.h | 6 +- ...M32H723Vx.json => marlin_STM32H723VE.json} | 4 +- .../PlatformIO/boards/marlin_STM32H723VG.json | 61 ++ .../PeripheralPins.c | 0 .../PinNamesVar.h | 0 .../ldscript.ld | 0 .../variant_MARLIN_STM32H723VE.cpp} | 0 .../variant_MARLIN_STM32H723VE.h} | 0 .../variants/MARLIN_H723VG/PeripheralPins.c | 590 ++++++++++++++++++ .../variants/MARLIN_H723VG/PinNamesVar.h | 108 ++++ .../variants/MARLIN_H723VG/ldscript.ld | 174 ++++++ .../variant_MARLIN_STM32H723VG.cpp | 273 ++++++++ .../variant_MARLIN_STM32H723VG.h | 269 ++++++++ ini/renamed.ini | 3 + ini/stm32h7.ini | 24 +- 15 files changed, 1501 insertions(+), 11 deletions(-) rename buildroot/share/PlatformIO/boards/{marlin_STM32H723Vx.json => marlin_STM32H723VE.json} (96%) create mode 100644 buildroot/share/PlatformIO/boards/marlin_STM32H723VG.json rename buildroot/share/PlatformIO/variants/{MARLIN_H723Vx => MARLIN_H723VE}/PeripheralPins.c (100%) rename buildroot/share/PlatformIO/variants/{MARLIN_H723Vx => MARLIN_H723VE}/PinNamesVar.h (100%) rename buildroot/share/PlatformIO/variants/{MARLIN_H723Vx => MARLIN_H723VE}/ldscript.ld (100%) rename buildroot/share/PlatformIO/variants/{MARLIN_H723Vx/variant_MARLIN_STM32H723VX.cpp => MARLIN_H723VE/variant_MARLIN_STM32H723VE.cpp} (100%) rename buildroot/share/PlatformIO/variants/{MARLIN_H723Vx/variant_MARLIN_STM32H723VX.h => MARLIN_H723VE/variant_MARLIN_STM32H723VE.h} (100%) create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_H723VG/PeripheralPins.c create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_H723VG/PinNamesVar.h create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_H723VG/ldscript.ld create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_H723VG/variant_MARLIN_STM32H723VG.cpp create mode 100644 buildroot/share/PlatformIO/variants/MARLIN_H723VG/variant_MARLIN_STM32H723VG.h diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index 77c2fc803737..0ae0312daef3 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -810,11 +810,11 @@ #elif MB(BTT_SKR_SE_BX_V3) #include "stm32h7/pins_BTT_SKR_SE_BX_V3.h" // STM32H7 env:BTT_SKR_SE_BX #elif MB(BTT_SKR_V3_0) - #include "stm32h7/pins_BTT_SKR_V3_0.h" // STM32H7 env:STM32H723Vx_btt env:STM32H743Vx_btt + #include "stm32h7/pins_BTT_SKR_V3_0.h" // STM32H743Vx/STM32H723VG env:STM32H743Vx_btt env:STM32H723VG_btt #elif MB(BTT_SKR_V3_0_EZ) - #include "stm32h7/pins_BTT_SKR_V3_0_EZ.h" // STM32H7 env:STM32H723Vx_btt env:STM32H743Vx_btt + #include "stm32h7/pins_BTT_SKR_V3_0_EZ.h" // STM32H743Vx/STM32H723VG env:STM32H743Vx_btt env:STM32H723VG_btt #elif MB(BTT_OCTOPUS_MAX_EZ_V1_0) - #include "stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h" // STM32H7 env:STM32H723Vx_btt env:STM32H723Zx_btt + #include "stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h" // STM32H723Zx/STM32H723VE env:STM32H723Zx_btt env:STM32H723VE_btt #elif MB(TEENSY41) #include "teensy4/pins_TEENSY41.h" // Teensy-4.x env:teensy41 #elif MB(T41U5XBB) diff --git a/buildroot/share/PlatformIO/boards/marlin_STM32H723Vx.json b/buildroot/share/PlatformIO/boards/marlin_STM32H723VE.json similarity index 96% rename from buildroot/share/PlatformIO/boards/marlin_STM32H723Vx.json rename to buildroot/share/PlatformIO/boards/marlin_STM32H723VE.json index a2154d448a9e..3941b3d00a76 100644 --- a/buildroot/share/PlatformIO/boards/marlin_STM32H723Vx.json +++ b/buildroot/share/PlatformIO/boards/marlin_STM32H723VE.json @@ -6,7 +6,7 @@ "f_cpu": "550000000L", "mcu": "stm32h723vet6", "product_line": "STM32H723xx", - "variant": "MARLIN_H723Vx" + "variant": "MARLIN_H723VE" }, "connectivity": [ "can", @@ -56,6 +56,6 @@ "use_1200bps_touch": false, "wait_for_upload_port": false }, - "url": "https://www.st.com/en/microcontrollers-microprocessors/stm32h723ze.html", + "url": "https://www.st.com/en/microcontrollers-microprocessors/stm32h723ve.html", "vendor": "ST" } diff --git a/buildroot/share/PlatformIO/boards/marlin_STM32H723VG.json b/buildroot/share/PlatformIO/boards/marlin_STM32H723VG.json new file mode 100644 index 000000000000..bf1fc961af0f --- /dev/null +++ b/buildroot/share/PlatformIO/boards/marlin_STM32H723VG.json @@ -0,0 +1,61 @@ +{ + "build": { + "core": "stm32", + "cpu": "cortex-m7", + "extra_flags": "-DSTM32H7xx -DSTM32H723xx", + "f_cpu": "550000000L", + "mcu": "stm32h723vzt6", + "product_line": "STM32H723xx", + "variant": "MARLIN_H723VG" + }, + "connectivity": [ + "can", + "ethernet" + ], + "debug": { + "jlink_device": "STM32H723VG", + "openocd_target": "stm32h7x", + "svd_path": "STM32H7x3.svd", + "tools": { + "stlink": { + "server": { + "arguments": [ + "-f", + "scripts/interface/stlink.cfg", + "-c", + "transport select hla_swd", + "-f", + "scripts/target/stm32h7x.cfg", + "-c", + "reset_config none" + ], + "executable": "bin/openocd", + "package": "tool-openocd" + } + } + } + }, + "frameworks": [ + "arduino", + "stm32cube" + ], + "name": "STM32H723VG (564k RAM. 1024k Flash)", + "upload": { + "disable_flushing": false, + "maximum_ram_size": 577536, + "maximum_size": 1048576, + "protocol": "stlink", + "protocols": [ + "stlink", + "dfu", + "jlink", + "cmsis-dap" + ], + "offset_address": "0x8020000", + "require_upload_port": true, + "use_1200bps_touch": false, + "wait_for_upload_port": false + }, + "url": "https://www.st.com/en/microcontrollers-microprocessors/stm32h723vg.html", + "vendor": "ST" +} diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723Vx/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_H723VE/PeripheralPins.c similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H723Vx/PeripheralPins.c rename to buildroot/share/PlatformIO/variants/MARLIN_H723VE/PeripheralPins.c diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723Vx/PinNamesVar.h b/buildroot/share/PlatformIO/variants/MARLIN_H723VE/PinNamesVar.h similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H723Vx/PinNamesVar.h rename to buildroot/share/PlatformIO/variants/MARLIN_H723VE/PinNamesVar.h diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723Vx/ldscript.ld b/buildroot/share/PlatformIO/variants/MARLIN_H723VE/ldscript.ld similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H723Vx/ldscript.ld rename to buildroot/share/PlatformIO/variants/MARLIN_H723VE/ldscript.ld diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723Vx/variant_MARLIN_STM32H723VX.cpp b/buildroot/share/PlatformIO/variants/MARLIN_H723VE/variant_MARLIN_STM32H723VE.cpp similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H723Vx/variant_MARLIN_STM32H723VX.cpp rename to buildroot/share/PlatformIO/variants/MARLIN_H723VE/variant_MARLIN_STM32H723VE.cpp diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723Vx/variant_MARLIN_STM32H723VX.h b/buildroot/share/PlatformIO/variants/MARLIN_H723VE/variant_MARLIN_STM32H723VE.h similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H723Vx/variant_MARLIN_STM32H723VX.h rename to buildroot/share/PlatformIO/variants/MARLIN_H723VE/variant_MARLIN_STM32H723VE.h diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723VG/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_H723VG/PeripheralPins.c new file mode 100644 index 000000000000..e484edd1ad44 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_H723VG/PeripheralPins.c @@ -0,0 +1,590 @@ +/* + ******************************************************************************* + * Copyright (c) 2020, STMicroelectronics + * All rights reserved. + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ******************************************************************************* + */ +/* + * Automatically generated from STM32H723VEHx.xml, STM32H723VETx.xml + * STM32H723VGHx.xml, STM32H723VGTx.xml + * STM32H730VBHx.xml, STM32H730VBTx.xml + * STM32H733VGHx.xml, STM32H733VGTx.xml + * CubeMX DB release 6.0.60 + */ +#if !defined(CUSTOM_PERIPHERAL_PINS) +#include "Arduino.h" +#include "PeripheralPins.h" + +/* ===== + * Notes: + * - The pins mentioned Px_y_ALTz are alternative possibilities which use other + * HW peripheral instances. You can use them the same way as any other "normal" + * pin (i.e. analogWrite(PA7_ALT1, 128);). + * + * - Commented lines are alternative possibilities which are not used per default. + * If you change them, you will have to know what you do + * ===== + */ + +//*** ADC *** + +#ifdef HAL_ADC_MODULE_ENABLED +WEAK const PinMap PinMap_ADC[] = { + {PA_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 16, 0)}, // ADC1_INP16 + {PA_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 17, 0)}, // ADC1_INP17 + {PA_2, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 14, 0)}, // ADC1_INP14 + {PA_2_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 14, 0)}, // ADC2_INP14 + {PA_3, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 15, 0)}, // ADC1_INP15 + {PA_3_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 15, 0)}, // ADC2_INP15 + {PA_4, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 18, 0)}, // ADC1_INP18 + {PA_4_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 18, 0)}, // ADC2_INP18 + {PA_5, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 19, 0)}, // ADC1_INP19 + {PA_5_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 19, 0)}, // ADC2_INP19 + {PA_6, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 3, 0)}, // ADC1_INP3 + {PA_6_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 3, 0)}, // ADC2_INP3 + {PA_7, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)}, // ADC1_INP7 + {PA_7_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)}, // ADC2_INP7 + {PB_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 9, 0)}, // ADC1_INP9 + {PB_0_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 9, 0)}, // ADC2_INP9 + {PB_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)}, // ADC1_INP5 + {PB_1_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)}, // ADC2_INP5 + {PC_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 10, 0)}, // ADC1_INP10 + {PC_0_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 10, 0)}, // ADC2_INP10 + {PC_0_ALT2, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 10, 0)}, // ADC3_INP10 + {PC_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 11, 0)}, // ADC1_INP11 + {PC_1_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 11, 0)}, // ADC2_INP11 + {PC_1_ALT2, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 11, 0)}, // ADC3_INP11 + {PC_2_C, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 0, 0)}, // ADC3_INP0 + {PC_3_C, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // ADC3_INP1 + {PC_4, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 4, 0)}, // ADC1_INP4 + {PC_4_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 4, 0)}, // ADC2_INP4 + {PC_5, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 8, 0)}, // ADC1_INP8 + {PC_5_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 8, 0)}, // ADC2_INP8 + {NC, NP, 0} +}; +#endif + +//*** DAC *** + +#ifdef HAL_DAC_MODULE_ENABLED +WEAK const PinMap PinMap_DAC[] = { + {PA_4, DAC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // DAC1_OUT1 + {PA_5, DAC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // DAC1_OUT2 + {NC, NP, 0} +}; +#endif + +//*** I2C *** + +#ifdef HAL_I2C_MODULE_ENABLED +WEAK const PinMap PinMap_I2C_SDA[] = { + {PB_7, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_7_ALT1, I2C4, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C4)}, + {PB_9, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_9_ALT1, I2C4, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C4)}, + {PB_11, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + {PC_9, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)}, + {PC_9_ALT1, I2C5, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C5)}, + {PC_10, I2C5, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C5)}, + {PD_13, I2C4, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C4)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_I2C_MODULE_ENABLED +WEAK const PinMap PinMap_I2C_SCL[] = { + {PA_8, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)}, + {PA_8_ALT1, I2C5, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C5)}, + {PB_6, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_6_ALT1, I2C4, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C4)}, + {PB_8, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, + {PB_8_ALT1, I2C4, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C4)}, + {PB_10, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, + {PC_11, I2C5, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C5)}, + {PD_12, I2C4, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C4)}, + {NC, NP, 0} +}; +#endif + +//*** TIM *** + +#ifdef HAL_TIM_MODULE_ENABLED +WEAK const PinMap PinMap_TIM[] = { + {PA_0, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 + {PA_0_ALT1, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 1, 0)}, // TIM5_CH1 + {PA_1, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2 + {PA_1_ALT1, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 2, 0)}, // TIM5_CH2 + {PA_1_ALT2, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM15, 1, 1)}, // TIM15_CH1N + {PA_2, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // TIM2_CH3 + {PA_2_ALT1, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 3, 0)}, // TIM5_CH3 + {PA_2_ALT2, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM15, 1, 0)}, // TIM15_CH1 + {PA_3, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 4, 0)}, // TIM2_CH4 + {PA_3_ALT1, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 4, 0)}, // TIM5_CH4 + {PA_3_ALT2, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM15, 2, 0)}, // TIM15_CH2 + {PA_5, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 + {PA_5_ALT1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 1)}, // TIM8_CH1N + {PA_6, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 + {PA_6_ALT1, TIM13, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM13, 1, 0)}, // TIM13_CH1 + {PA_7, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N + {PA_7_ALT1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 + {PA_7_ALT2, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 1)}, // TIM8_CH1N + {PA_7_ALT3, TIM14, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM14, 1, 0)}, // TIM14_CH1 + {PA_8, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 0)}, // TIM1_CH1 + {PA_9, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 0)}, // TIM1_CH2 + {PA_10, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 0)}, // TIM1_CH3 + {PA_11, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 4, 0)}, // TIM1_CH4 + {PA_15, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 + {PB_0, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N + {PB_0_ALT1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 3, 0)}, // TIM3_CH3 + {PB_0_ALT2, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 1)}, // TIM8_CH2N + {PB_1, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N + {PB_1_ALT1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 4, 0)}, // TIM3_CH4 + {PB_1_ALT2, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 1)}, // TIM8_CH3N + {PB_3, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2 + {PB_4, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 + {PB_5, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 + {PB_6, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 1, 0)}, // TIM4_CH1 + {PB_6_ALT1, TIM16, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM16, 1, 1)}, // TIM16_CH1N + {PB_7, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 2, 0)}, // TIM4_CH2 + {PB_7_ALT1, TIM17, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM17, 1, 1)}, // TIM17_CH1N + {PB_8, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 3, 0)}, // TIM4_CH3 + {PB_8_ALT1, TIM16, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM16, 1, 0)}, // TIM16_CH1 + {PB_9, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 4, 0)}, // TIM4_CH4 + {PB_9_ALT1, TIM17, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM17, 1, 0)}, // TIM17_CH1 + {PB_10, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // TIM2_CH3 + {PB_11, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 4, 0)}, // TIM2_CH4 + {PB_13, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N + {PB_14, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N + {PB_14_ALT1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 1)}, // TIM8_CH2N + {PB_14_ALT2, TIM12, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM12, 1, 0)}, // TIM12_CH1 + {PB_15, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N + {PB_15_ALT1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 1)}, // TIM8_CH3N + {PB_15_ALT2, TIM12, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM12, 2, 0)}, // TIM12_CH2 + {PC_6, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 + {PC_6_ALT1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 0)}, // TIM8_CH1 + {PC_7, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 + {PC_7_ALT1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 0)}, // TIM8_CH2 + {PC_8, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 3, 0)}, // TIM3_CH3 + {PC_8_ALT1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 0)}, // TIM8_CH3 + {PC_9, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 4, 0)}, // TIM3_CH4 + {PC_9_ALT1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 4, 0)}, // TIM8_CH4 + {PC_12, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM15, 1, 0)}, // TIM15_CH1 + {PD_12, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 1, 0)}, // TIM4_CH1 + {PD_13, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 2, 0)}, // TIM4_CH2 + {PD_14, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 3, 0)}, // TIM4_CH3 + {PD_15, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 4, 0)}, // TIM4_CH4 + {PE_4, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM15, 1, 1)}, // TIM15_CH1N + {PE_5, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM15, 1, 0)}, // TIM15_CH1 + {PE_6, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM15, 2, 0)}, // TIM15_CH2 + {PE_8, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N + {PE_9, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 0)}, // TIM1_CH1 + {PE_10, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N + {PE_11, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 0)}, // TIM1_CH2 + {PE_12, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N + {PE_13, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 0)}, // TIM1_CH3 + {PE_14, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 4, 0)}, // TIM1_CH4 + {NC, NP, 0} +}; +#endif + +//*** UART *** + +#ifdef HAL_UART_MODULE_ENABLED +WEAK const PinMap PinMap_UART_TX[] = { + {PA_0, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PA_2, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PA_9, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART)}, + {PA_9_ALT1, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PA_12, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_UART4)}, + {PA_15, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART7)}, + {PB_4, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART7)}, + {PB_6, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_LPUART)}, + {PB_6_ALT1, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_UART5)}, + {PB_6_ALT2, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PB_9, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PB_10, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PB_13, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_UART5)}, + {PB_14, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART1)}, + {PC_6, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART6)}, + {PC_10, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PC_10_ALT1, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PC_12, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)}, + {PD_1, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PD_5, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PD_8, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PD_15, UART9, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART9)}, + {PE_1, UART8, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART8)}, + {PE_3, USART10, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_USART10)}, + {PE_8, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_UART7)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_UART_MODULE_ENABLED +WEAK const PinMap PinMap_UART_RX[] = { + {PA_1, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PA_3, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PA_8, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART7)}, + {PA_10, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART)}, + {PA_10_ALT1, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PA_11, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_UART4)}, + {PB_3, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART7)}, + {PB_5, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_UART5)}, + {PB_7, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_LPUART)}, + {PB_7_ALT1, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PB_8, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PB_11, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PB_12, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_UART5)}, + {PB_15, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART1)}, + {PC_7, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART6)}, + {PC_11, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PC_11_ALT1, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PD_0, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PD_2, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)}, + {PD_6, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PD_9, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PD_14, UART9, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART9)}, + {PE_0, UART8, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART8)}, + {PE_2, USART10, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART10)}, + {PE_7, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_UART7)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_UART_MODULE_ENABLED +WEAK const PinMap PinMap_UART_RTS[] = { + {PA_1, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PA_12, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART)}, + {PA_12_ALT1, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PA_15, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PB_14, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PB_14_ALT1, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PC_8, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)}, + {PD_4, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PD_12, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PD_13, UART9, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART9)}, + {PD_15, UART8, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART8)}, + {PE_9, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_UART7)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_UART_MODULE_ENABLED +WEAK const PinMap PinMap_UART_CTS[] = { + {PA_0, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PA_11, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART)}, + {PA_11_ALT1, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PB_0, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PB_13, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PB_15, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, + {PC_9, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)}, + {PD_0, UART9, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART9)}, + {PD_3, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, + {PD_11, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, + {PD_14, UART8, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART8)}, + {PE_10, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_UART7)}, + {NC, NP, 0} +}; +#endif + +//*** SPI *** + +#ifdef HAL_SPI_MODULE_ENABLED +WEAK const PinMap PinMap_SPI_MOSI[] = { + {PA_7, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PA_7_ALT1, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_SPI6)}, + {PB_2, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_SPI3)}, + {PB_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PB_5_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_SPI3)}, + {PB_5_ALT2, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_SPI6)}, + {PB_15, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_1, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_3_C, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_12, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PD_6, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI3)}, + {PD_7, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PE_6, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, + {PE_14, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_SPI_MODULE_ENABLED +WEAK const PinMap PinMap_SPI_MISO[] = { + {PA_6, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PA_6_ALT1, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_SPI6)}, + {PB_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PB_4_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PB_4_ALT2, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_SPI6)}, + {PB_14, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_2_C, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_11, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PE_5, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, + {PE_13, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_SPI_MODULE_ENABLED +WEAK const PinMap PinMap_SPI_SCLK[] = { + {PA_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PA_5_ALT1, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_SPI6)}, + {PA_9, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PA_12, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PB_3, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PB_3_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PB_3_ALT2, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_SPI6)}, + {PB_10, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PB_13, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PC_10, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PC_12, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI6)}, + {PD_3, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PE_2, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, + {PE_12, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_SPI_MODULE_ENABLED +WEAK const PinMap PinMap_SPI_SSEL[] = { + {PA_0, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI6)}, + {PA_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PA_4_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PA_4_ALT2, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_SPI6)}, + {PA_11, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PA_15, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PA_15_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, + {PA_15_ALT2, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_SPI6)}, + {PB_4, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_SPI2)}, + {PB_9, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PB_12, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, + {PE_4, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, + {PE_11, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, + {NC, NP, 0} +}; +#endif + +//*** FDCAN *** + +#ifdef HAL_FDCAN_MODULE_ENABLED +WEAK const PinMap PinMap_CAN_RD[] = { + {PA_11, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN1)}, + {PB_5, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN2)}, + {PB_8, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN1)}, + {PB_12, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN2)}, + {PD_0, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN1)}, + {PD_12, FDCAN3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF5_FDCAN3)}, + {NC, NP, 0} +}; +#endif + +#ifdef HAL_FDCAN_MODULE_ENABLED +WEAK const PinMap PinMap_CAN_TD[] = { + {PA_12, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN1)}, + {PB_6, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN2)}, + {PB_9, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN1)}, + {PB_13, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN2)}, + {PD_1, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN1)}, + {PD_13, FDCAN3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF5_FDCAN3)}, + {NC, NP, 0} +}; +#endif + +//*** ETHERNET *** + +#if defined(HAL_ETH_MODULE_ENABLED) || defined(HAL_ETH_LEGACY_MODULE_ENABLED) +WEAK const PinMap PinMap_Ethernet[] = { + {PA_0, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_CRS + {PA_1, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_REF_CLK + {PA_1_ALT1, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RX_CLK + {PA_2, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_MDIO + {PA_3, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_COL + {PA_7, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_CRS_DV + {PA_7_ALT1, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RX_DV + {PA_9, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TX_ER + {PB_0, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RXD2 + {PB_1, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RXD3 + {PB_2, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TX_ER + {PB_5, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_PPS_OUT + {PB_8, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD3 + {PB_10, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RX_ER + {PB_11, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TX_EN + {PB_12, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD0 + {PB_13, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD1 + {PC_1, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_MDC + {PC_2_C, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD2 + {PC_3_C, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TX_CLK + {PC_4, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RXD0 + {PC_5, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RXD1 + {PE_2, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD3 + {NC, NP, 0} +}; +#endif + +//*** OCTOSPI *** + +#ifdef HAL_OSPI_MODULE_ENABLED +WEAK const PinMap PinMap_OCTOSPI_DATA0[] = { + {PA_2, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO0 + {PB_1, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO0 + {PB_12, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO0 + {PC_3_C, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO0 + {PC_9, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO0 + {PD_11, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO0 + {NC, NP, 0} +}; +#endif + +#ifdef HAL_OSPI_MODULE_ENABLED +WEAK const PinMap PinMap_OCTOSPI_DATA1[] = { + {PB_0, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO1 + {PC_10, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO1 + {PD_12, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO1 + {NC, NP, 0} +}; +#endif + +#ifdef HAL_OSPI_MODULE_ENABLED +WEAK const PinMap PinMap_OCTOSPI_DATA2[] = { + {PA_3, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO2 + {PA_7, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO2 + {PB_13, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO2 + {PC_2_C, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO2 + {PE_2, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO2 + {NC, NP, 0} +}; +#endif + +#ifdef HAL_OSPI_MODULE_ENABLED +WEAK const PinMap PinMap_OCTOSPI_DATA3[] = { + {PA_1, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO3 + {PA_6, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO3 + {PD_13, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO3 + {NC, NP, 0} +}; +#endif + +#ifdef HAL_OSPI_MODULE_ENABLED +WEAK const PinMap PinMap_OCTOSPI_DATA4[] = { + {PC_1, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO4 + {PD_4, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO4 + {PE_7, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO4 + {NC, NP, 0} +}; +#endif + +#ifdef HAL_OSPI_MODULE_ENABLED +WEAK const PinMap PinMap_OCTOSPI_DATA5[] = { + {PC_2_C, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO5 + {PD_5, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO5 + {PE_8, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO5 + {NC, NP, 0} +}; +#endif + +#ifdef HAL_OSPI_MODULE_ENABLED +WEAK const PinMap PinMap_OCTOSPI_DATA6[] = { + {PC_3_C, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO6 + {PD_6, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO6 + {PE_9, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO6 + {NC, NP, 0} +}; +#endif + +#ifdef HAL_OSPI_MODULE_ENABLED +WEAK const PinMap PinMap_OCTOSPI_DATA7[] = { + {PD_7, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO7 + {PE_10, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO7 + {NC, NP, 0} +}; +#endif + +#ifdef HAL_OSPI_MODULE_ENABLED +WEAK const PinMap PinMap_OCTOSPI_SCLK[] = { + {PA_3, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_OCTOSPIM_P1)}, // OCTOSPIM_P1_CLK + {PB_2, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_CLK + {NC, NP, 0} +}; +#endif + +#ifdef HAL_OSPI_MODULE_ENABLED +WEAK const PinMap PinMap_OCTOSPI_SSEL[] = { + {PB_6, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_NCS + {PB_10, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_NCS + {PC_11, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_NCS + {PE_11, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_OCTOSPIM_P1)}, // OCTOSPIM_P1_NCS + {NC, NP, 0} +}; +#endif + +//*** USB *** + +#if defined(HAL_PCD_MODULE_ENABLED) || defined(HAL_HCD_MODULE_ENABLED) +WEAK const PinMap PinMap_USB_OTG_HS[] = { +#ifdef USE_USB_HS_IN_FS + {PA_8, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_SOF + {PA_9, USB_OTG_HS, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, GPIO_AF_NONE)}, // USB_OTG_HS_VBUS + {PA_10, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ID + {PA_11, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF_NONE)}, // USB_OTG_HS_DM + {PA_12, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF_NONE)}, // USB_OTG_HS_DP +#else + {PA_3, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D0 + {PA_5, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_CK + {PB_0, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D1 + {PB_1, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D2 + {PB_5, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D7 + {PB_10, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D3 + {PB_11, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D4 + {PB_12, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D5 + {PB_13, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D6 + {PC_0, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_STP + {PC_2_C, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_DIR + {PC_3_C, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_NXT +#endif /* USE_USB_HS_IN_FS */ + {NC, NP, 0} +}; +#endif + +//*** SD *** + +#ifdef HAL_SD_MODULE_ENABLED +WEAK const PinMap PinMap_SD[] = { + {PA_0, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_SDMMC2)}, // SDMMC2_CMD + {PB_3, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_SDMMC2)}, // SDMMC2_D2 + {PB_4, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_SDMMC2)}, // SDMMC2_D3 + {PB_8, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF7_SDMMC1)}, // SDMMC1_CKIN + {PB_8_ALT1, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D4 + {PB_8_ALT2, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_SDMMC2)}, // SDMMC2_D4 + {PB_9, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF7_SDMMC1)}, // SDMMC1_CDIR + {PB_9_ALT1, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D5 + {PB_9_ALT2, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_SDMMC2)}, // SDMMC2_D5 + {PB_13, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D0 + {PB_14, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_SDMMC2)}, // SDMMC2_D0 + {PB_15, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_SDMMC2)}, // SDMMC2_D1 + {PC_1, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_SDMMC2)}, // SDMMC2_CK + {PC_4, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF10_SDMMC2)}, // SDMMC2_CKIN + {PC_6, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF8_SDMMC1)}, // SDMMC1_D0DIR + {PC_6_ALT1, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D6 + {PC_6_ALT2, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_SDMMC2)}, // SDMMC2_D6 + {PC_7, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF8_SDMMC1)}, // SDMMC1_D123DIR + {PC_7_ALT1, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D7 + {PC_7_ALT2, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_SDMMC2)}, // SDMMC2_D7 + {PC_8, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D0 + {PC_9, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D1 + {PC_10, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D2 + {PC_11, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D3 + {PC_12, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF12_SDMMC1)}, // SDMMC1_CK + {PD_2, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF12_SDMMC1)}, // SDMMC1_CMD + {PD_6, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF11_SDMMC2)}, // SDMMC2_CK + {PD_7, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF11_SDMMC2)}, // SDMMC2_CMD + {NC, NP, 0} +}; +#endif + +#endif /* !CUSTOM_PERIPHERAL_PINS */ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723VG/PinNamesVar.h b/buildroot/share/PlatformIO/variants/MARLIN_H723VG/PinNamesVar.h new file mode 100644 index 000000000000..3bd0ed8fcd64 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_H723VG/PinNamesVar.h @@ -0,0 +1,108 @@ +/* Dual pad pin name */ +PC_2_C = PC_2 | PDUAL, +PC_3_C = PC_3 | PDUAL, + +/* Alternate pin name */ +PA_0_ALT1 = PA_0 | ALT1, +PA_1_ALT1 = PA_1 | ALT1, +PA_1_ALT2 = PA_1 | ALT2, +PA_2_ALT1 = PA_2 | ALT1, +PA_2_ALT2 = PA_2 | ALT2, +PA_3_ALT1 = PA_3 | ALT1, +PA_3_ALT2 = PA_3 | ALT2, +PA_4_ALT1 = PA_4 | ALT1, +PA_4_ALT2 = PA_4 | ALT2, +PA_5_ALT1 = PA_5 | ALT1, +PA_6_ALT1 = PA_6 | ALT1, +PA_7_ALT1 = PA_7 | ALT1, +PA_7_ALT2 = PA_7 | ALT2, +PA_7_ALT3 = PA_7 | ALT3, +PA_8_ALT1 = PA_8 | ALT1, +PA_9_ALT1 = PA_9 | ALT1, +PA_10_ALT1 = PA_10 | ALT1, +PA_11_ALT1 = PA_11 | ALT1, +PA_12_ALT1 = PA_12 | ALT1, +PA_15_ALT1 = PA_15 | ALT1, +PA_15_ALT2 = PA_15 | ALT2, +PB_0_ALT1 = PB_0 | ALT1, +PB_0_ALT2 = PB_0 | ALT2, +PB_1_ALT1 = PB_1 | ALT1, +PB_1_ALT2 = PB_1 | ALT2, +PB_3_ALT1 = PB_3 | ALT1, +PB_3_ALT2 = PB_3 | ALT2, +PB_4_ALT1 = PB_4 | ALT1, +PB_4_ALT2 = PB_4 | ALT2, +PB_5_ALT1 = PB_5 | ALT1, +PB_5_ALT2 = PB_5 | ALT2, +PB_6_ALT1 = PB_6 | ALT1, +PB_6_ALT2 = PB_6 | ALT2, +PB_7_ALT1 = PB_7 | ALT1, +PB_8_ALT1 = PB_8 | ALT1, +PB_8_ALT2 = PB_8 | ALT2, +PB_9_ALT1 = PB_9 | ALT1, +PB_9_ALT2 = PB_9 | ALT2, +PB_14_ALT1 = PB_14 | ALT1, +PB_14_ALT2 = PB_14 | ALT2, +PB_15_ALT1 = PB_15 | ALT1, +PB_15_ALT2 = PB_15 | ALT2, +PC_0_ALT1 = PC_0 | ALT1, +PC_0_ALT2 = PC_0 | ALT2, +PC_1_ALT1 = PC_1 | ALT1, +PC_1_ALT2 = PC_1 | ALT2, +PC_4_ALT1 = PC_4 | ALT1, +PC_5_ALT1 = PC_5 | ALT1, +PC_6_ALT1 = PC_6 | ALT1, +PC_6_ALT2 = PC_6 | ALT2, +PC_7_ALT1 = PC_7 | ALT1, +PC_7_ALT2 = PC_7 | ALT2, +PC_8_ALT1 = PC_8 | ALT1, +PC_9_ALT1 = PC_9 | ALT1, +PC_10_ALT1 = PC_10 | ALT1, +PC_11_ALT1 = PC_11 | ALT1, + +/* SYS_WKUP */ +#ifdef PWR_WAKEUP_PIN1 + SYS_WKUP1 = PA_0, +#endif +#ifdef PWR_WAKEUP_PIN2 + SYS_WKUP2 = PA_2, +#endif +#ifdef PWR_WAKEUP_PIN3 + SYS_WKUP3 = NC, +#endif +#ifdef PWR_WAKEUP_PIN4 + SYS_WKUP4 = PC_13, +#endif +#ifdef PWR_WAKEUP_PIN5 + SYS_WKUP5 = NC, +#endif +#ifdef PWR_WAKEUP_PIN6 + SYS_WKUP6 = PC_1, +#endif +#ifdef PWR_WAKEUP_PIN7 + SYS_WKUP7 = NC, +#endif +#ifdef PWR_WAKEUP_PIN8 + SYS_WKUP8 = NC, +#endif + +/* USB */ +#ifdef USBCON + USB_OTG_HS_DM = PA_11, + USB_OTG_HS_DP = PA_12, + USB_OTG_HS_ID = PA_10, + USB_OTG_HS_SOF = PA_8, + USB_OTG_HS_ULPI_CK = PA_5, + USB_OTG_HS_ULPI_D0 = PA_3, + USB_OTG_HS_ULPI_D1 = PB_0, + USB_OTG_HS_ULPI_D2 = PB_1, + USB_OTG_HS_ULPI_D3 = PB_10, + USB_OTG_HS_ULPI_D4 = PB_11, + USB_OTG_HS_ULPI_D5 = PB_12, + USB_OTG_HS_ULPI_D6 = PB_13, + USB_OTG_HS_ULPI_D7 = PB_5, + USB_OTG_HS_ULPI_DIR = PC_2_C, + USB_OTG_HS_ULPI_NXT = PC_3_C, + USB_OTG_HS_ULPI_STP = PC_0, + USB_OTG_HS_VBUS = PA_9, +#endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723VG/ldscript.ld b/buildroot/share/PlatformIO/variants/MARLIN_H723VG/ldscript.ld new file mode 100644 index 000000000000..63228610336b --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_H723VG/ldscript.ld @@ -0,0 +1,174 @@ +/* +****************************************************************************** +** +** File : LinkerScript.ld +** +** Author : STM32CubeIDE +** +** Abstract : Linker script for STM32H7 series +** 512Kbytes FLASH and 560Kbytes RAM +** +** Set heap size, stack size and stack location according +** to application requirements. +** +** Set memory bank area and size if external memory is used. +** +** Target : STMicroelectronics STM32 +** +** Distribution: The file is distributed as is, without any warranty +** of any kind. +** +***************************************************************************** +** @attention +** +** Copyright (c) 2022 STMicroelectronics. +** All rights reserved. +** +** This software is licensed under terms that can be found in the LICENSE file +** in the root directory of this software component. +** If no LICENSE file comes with this software, it is provided AS-IS. +** +**************************************************************************** +*/ + +/* Entry Point */ +ENTRY(Reset_Handler) + +/* Highest address of the user mode stack */ +_estack = ORIGIN(RAM_D1) + LENGTH(RAM_D1); /* end of RAM */ +/* Generate a link error if heap and stack don't fit into RAM */ +_Min_Heap_Size = 0x200 ; /* required amount of heap */ +_Min_Stack_Size = 0x400 ; /* required amount of stack */ + +/* Specify the memory areas */ +MEMORY +{ + ITCMRAM (xrw) : ORIGIN = 0x00000000, LENGTH = 64K + DTCMRAM (xrw) : ORIGIN = 0x20000000, LENGTH = 128K + FLASH (rx) : ORIGIN = 0x8000000 + LD_FLASH_OFFSET, LENGTH = LD_MAX_SIZE - LD_FLASH_OFFSET + RAM_D1 (xrw) : ORIGIN = 0x24000000, LENGTH = 320K + RAM_D2 (xrw) : ORIGIN = 0x30000000, LENGTH = 32K + RAM_D3 (xrw) : ORIGIN = 0x38000000, LENGTH = 16K +} + +/* Define output sections */ +SECTIONS +{ + /* The startup code goes first into FLASH */ + .isr_vector : + { + . = ALIGN(4); + KEEP(*(.isr_vector)) /* Startup code */ + . = ALIGN(4); + } >FLASH + + /* The program code and other data goes into FLASH */ + .text : + { + . = ALIGN(4); + *(.text) /* .text sections (code) */ + *(.text*) /* .text* sections (code) */ + *(.glue_7) /* glue arm to thumb code */ + *(.glue_7t) /* glue thumb to arm code */ + *(.eh_frame) + + KEEP (*(.init)) + KEEP (*(.fini)) + + . = ALIGN(4); + _etext = .; /* define a global symbols at end of code */ + } >FLASH + + /* Constant data goes into FLASH */ + .rodata : + { + . = ALIGN(4); + *(.rodata) /* .rodata sections (constants, strings, etc.) */ + *(.rodata*) /* .rodata* sections (constants, strings, etc.) */ + . = ALIGN(4); + } >FLASH + + .ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH + .ARM : { + __exidx_start = .; + *(.ARM.exidx*) + __exidx_end = .; + } >FLASH + + .preinit_array : + { + PROVIDE_HIDDEN (__preinit_array_start = .); + KEEP (*(.preinit_array*)) + PROVIDE_HIDDEN (__preinit_array_end = .); + } >FLASH + + .init_array : + { + PROVIDE_HIDDEN (__init_array_start = .); + KEEP (*(SORT(.init_array.*))) + KEEP (*(.init_array*)) + PROVIDE_HIDDEN (__init_array_end = .); + } >FLASH + + .fini_array : + { + PROVIDE_HIDDEN (__fini_array_start = .); + KEEP (*(SORT(.fini_array.*))) + KEEP (*(.fini_array*)) + PROVIDE_HIDDEN (__fini_array_end = .); + } >FLASH + + /* used by the startup to initialize data */ + _sidata = LOADADDR(.data); + + /* Initialized data sections goes into RAM, load LMA copy after code */ + .data : + { + . = ALIGN(4); + _sdata = .; /* create a global symbol at data start */ + *(.data) /* .data sections */ + *(.data*) /* .data* sections */ + *(.RamFunc) /* .RamFunc sections */ + *(.RamFunc*) /* .RamFunc* sections */ + + . = ALIGN(4); + _edata = .; /* define a global symbol at data end */ + } >RAM_D1 AT> FLASH + + /* Uninitialized data section */ + . = ALIGN(4); + .bss : + { + /* This is used by the startup in order to initialize the .bss section */ + _sbss = .; /* define a global symbol at bss start */ + __bss_start__ = _sbss; + *(.bss) + *(.bss*) + *(COMMON) + + . = ALIGN(4); + _ebss = .; /* define a global symbol at bss end */ + __bss_end__ = _ebss; + } >RAM_D1 + + /* User_heap_stack section, used to check that there is enough RAM left */ + ._user_heap_stack : + { + . = ALIGN(8); + PROVIDE ( end = . ); + PROVIDE ( _end = . ); + . = . + _Min_Heap_Size; + . = . + _Min_Stack_Size; + . = ALIGN(8); + } >RAM_D1 + + /* Remove information from the standard libraries */ + /DISCARD/ : + { + libc.a ( * ) + libm.a ( * ) + libgcc.a ( * ) + } + + .ARM.attributes 0 : { *(.ARM.attributes) } +} diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723VG/variant_MARLIN_STM32H723VG.cpp b/buildroot/share/PlatformIO/variants/MARLIN_H723VG/variant_MARLIN_STM32H723VG.cpp new file mode 100644 index 000000000000..bfeb0f9abc62 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_H723VG/variant_MARLIN_STM32H723VG.cpp @@ -0,0 +1,273 @@ +/* + ******************************************************************************* + * Copyright (c) 2020-2021, STMicroelectronics + * All rights reserved. + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ******************************************************************************* + */ +#ifdef STM32H723xx +#include "pins_arduino.h" + +// Digital PinName array +const PinName digitalPin[] = { + PA_0, // D0/A0 + PA_1, // D1/A1 + PA_2, // D2/A2 + PA_3, // D3/A3 + PA_4, // D4/A4 + PA_5, // D5/A5 + PA_6, // D6/A6 + PA_7, // D7/A7 + PA_8, // D8 + PA_9, // D9 + PA_10, // D10 + PA_11, // D11 + PA_12, // D12 + PA_13, // D13 + PA_14, // D14 + PA_15, // D15 + PB_0, // D16/A8 + PB_1, // D17/A9 + PB_2, // D18 + PB_3, // D19 + PB_4, // D20 + PB_5, // D21 + PB_6, // D22 + PB_7, // D23 + PB_8, // D24 + PB_9, // D25 + PB_10, // D26 + PB_11, // D27 + PB_12, // D28 + PB_13, // D29 + PB_14, // D30 + PB_15, // D31 + PC_0, // D32/A10 + PC_1, // D33/A11 + PC_4, // D34/A12 + PC_5, // D35/A13 + PC_6, // D36 + PC_7, // D37 + PC_8, // D38 + PC_9, // D39 + PC_10, // D40 + PC_11, // D41 + PC_12, // D42 + PC_13, // D43 + PC_14, // D44 + PC_15, // D45 + PD_0, // D46 + PD_1, // D47 + PD_2, // D48 + PD_3, // D49 + PD_4, // D50 + PD_5, // D51 + PD_6, // D52 + PD_7, // D53 + PD_8, // D54 + PD_9, // D55 + PD_10, // D56 + PD_11, // D57 + PD_12, // D58 + PD_13, // D59 + PD_14, // D60 + PD_15, // D61 + PE_0, // D62 + PE_1, // D63 + PE_2, // D64 + PE_3, // D65 + PE_4, // D66 + PE_5, // D67 + PE_6, // D68 + PE_7, // D69 + PE_8, // D70 + PE_9, // D71 + PE_10, // D72 + PE_11, // D73 + PE_12, // D74 + PE_13, // D75 + PE_14, // D76 + PE_15, // D77 + PH_0, // D78 + PH_1, // D79 + PC_2_C, // D80/A14 + PC_3_C // D81/A15 +}; + +// Analog (Ax) pin number array +const uint32_t analogInputPin[] = { + 0, // A0, PA0 + 1, // A1, PA1 + 2, // A2, PA2 + 3, // A3, PA3 + 4, // A4, PA4 + 5, // A5, PA5 + 6, // A6, PA6 + 7, // A7, PA7 + 16, // A8, PB0 + 17, // A9, PB1 + 32, // A10, PC0 + 33, // A11, PC1 + 34, // A12, PC4 + 35, // A13, PC5 + 80, // A14, PC2_C + 81 // A15, PC3_C +}; + +void MPU_Config(void) +{ + MPU_Region_InitTypeDef MPU_InitStruct = {0}; + + /* Disables the MPU */ + HAL_MPU_Disable(); + + /** Initializes and configures the Region and the memory to be protected + */ + MPU_InitStruct.Enable = MPU_REGION_ENABLE; + MPU_InitStruct.Number = MPU_REGION_NUMBER0; + MPU_InitStruct.BaseAddress = 0x0; + MPU_InitStruct.Size = MPU_REGION_SIZE_4GB; + MPU_InitStruct.SubRegionDisable = 0x87; + MPU_InitStruct.TypeExtField = MPU_TEX_LEVEL0; + MPU_InitStruct.AccessPermission = MPU_REGION_NO_ACCESS; + MPU_InitStruct.DisableExec = MPU_INSTRUCTION_ACCESS_DISABLE; + MPU_InitStruct.IsShareable = MPU_ACCESS_SHAREABLE; + MPU_InitStruct.IsCacheable = MPU_ACCESS_NOT_CACHEABLE; + MPU_InitStruct.IsBufferable = MPU_ACCESS_NOT_BUFFERABLE; + + HAL_MPU_ConfigRegion(&MPU_InitStruct); + /* Enables the MPU */ + HAL_MPU_Enable(MPU_PRIVILEGED_DEFAULT); + +} + +/* + * @brief System Clock Configuration + * @param None + * @retval None + */ +WEAK void SystemClock_Config(void) +{ + RCC_OscInitTypeDef RCC_OscInitStruct = {0}; + RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; + RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {}; + + MPU_Config(); + + /** Supply configuration update enable + */ + HAL_PWREx_ConfigSupply(PWR_LDO_SUPPLY); + /** Configure the main internal regulator output voltage + */ + __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE0); + + while(!__HAL_PWR_GET_FLAG(PWR_FLAG_VOSRDY)) {} + /** Initializes the RCC Oscillators according to the specified parameters + * in the RCC_OscInitTypeDef structure. + */ + RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI48 | RCC_OSCILLATORTYPE_HSE; + RCC_OscInitStruct.HSEState = RCC_HSE_ON; + RCC_OscInitStruct.HSI48State = RCC_HSI48_ON; // 48Mhz for USB + RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; + RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; + RCC_OscInitStruct.PLL.PLLM = 5; // 25Mhz / 5 = 5Mhz + RCC_OscInitStruct.PLL.PLLN = 110; // 25Mhz / 5 * 110 = 550Mhz + RCC_OscInitStruct.PLL.PLLP = 1; // 550Mhz / 1 = 550Mhz + RCC_OscInitStruct.PLL.PLLQ = 10; // 550Mhz / 10 = 55Mhz + RCC_OscInitStruct.PLL.PLLR = 10; // unused + RCC_OscInitStruct.PLL.PLLRGE = RCC_PLL1VCIRANGE_2; + RCC_OscInitStruct.PLL.PLLVCOSEL = RCC_PLL1VCOWIDE; + RCC_OscInitStruct.PLL.PLLFRACN = 0; + if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) + { + Error_Handler(); + } + /** Initializes the CPU, AHB and APB buses clocks + */ + RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK + |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2 + |RCC_CLOCKTYPE_D3PCLK1|RCC_CLOCKTYPE_D1PCLK1; + RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; + RCC_ClkInitStruct.SYSCLKDivider = RCC_SYSCLK_DIV1; + RCC_ClkInitStruct.AHBCLKDivider = RCC_HCLK_DIV2; + RCC_ClkInitStruct.APB3CLKDivider = RCC_APB3_DIV2; + RCC_ClkInitStruct.APB1CLKDivider = RCC_APB1_DIV2; + RCC_ClkInitStruct.APB2CLKDivider = RCC_APB2_DIV2; + RCC_ClkInitStruct.APB4CLKDivider = RCC_APB4_DIV2; + + if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_4) != HAL_OK) + { + Error_Handler(); + } + + PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_USB + | RCC_PERIPHCLK_SDMMC | RCC_PERIPHCLK_ADC + | RCC_PERIPHCLK_LPUART1 | RCC_PERIPHCLK_USART16 + | RCC_PERIPHCLK_USART234578 | RCC_PERIPHCLK_I2C123 + | RCC_PERIPHCLK_I2C4 | RCC_PERIPHCLK_SPI123 + | RCC_PERIPHCLK_SPI45 | RCC_PERIPHCLK_SPI6; + + /* HSI48 used for USB 48 Mhz */ + /* PLL1 qclk also used for FMC, SDMMC, RNG, SAI */ + /* PLL2 pclk is needed for adc max 80 Mhz (p,q,r same) */ + /* PLL2 pclk also used for LP timers 2,3,4,5, SPI 1,2,3 */ + /* PLL2 qclk is needed for uart, can, spi4,5,6 80 Mhz */ + /* PLL3 r clk is needed for i2c 80 Mhz (p,q,r same) */ + PeriphClkInitStruct.PLL2.PLL2M = 15; // M DIV 15 vco 25 / 15 ~ 1.667 Mhz + PeriphClkInitStruct.PLL2.PLL2N = 96; // N MUL 96 + PeriphClkInitStruct.PLL2.PLL2P = 2; // P div 2 + PeriphClkInitStruct.PLL2.PLL2Q = 2; // Q div 2 + PeriphClkInitStruct.PLL2.PLL2R = 2; // R div 2 + // RCC_PLL1VCIRANGE_0 Clock range frequency between 1 and 2 MHz + PeriphClkInitStruct.PLL2.PLL2RGE = RCC_PLL2VCIRANGE_0; + PeriphClkInitStruct.PLL2.PLL2VCOSEL = RCC_PLL2VCOMEDIUM; + PeriphClkInitStruct.PLL2.PLL2FRACN = 0; + PeriphClkInitStruct.PLL3.PLL3M = 15; // M DIV 15 vco 25 / 15 ~ 1.667 Mhz + PeriphClkInitStruct.PLL3.PLL3N = 96; // N MUL 96 + PeriphClkInitStruct.PLL3.PLL3P = 2; // P div 2 + PeriphClkInitStruct.PLL3.PLL3Q = 2; // Q div 2 + PeriphClkInitStruct.PLL3.PLL3R = 2; // R div 2 + // RCC_PLL1VCIRANGE_0 Clock range frequency between 1 and 2 MHz + PeriphClkInitStruct.PLL3.PLL3RGE = RCC_PLL3VCIRANGE_0; + PeriphClkInitStruct.PLL3.PLL3VCOSEL = RCC_PLL3VCOMEDIUM; + PeriphClkInitStruct.PLL3.PLL3FRACN = 0; + // ADC from PLL2 pclk + PeriphClkInitStruct.AdcClockSelection = RCC_ADCCLKSOURCE_PLL2; + // USB from HSI48 + PeriphClkInitStruct.UsbClockSelection = RCC_USBCLKSOURCE_HSI48; + // SDMMC from PLL1 qclk + PeriphClkInitStruct.SdmmcClockSelection = 0; + //PeriphClkInitStruct.SdmmcClockSelection = RCC_SDMMCCLKSOURCE_PLL; + // LPUART from PLL2 qclk + PeriphClkInitStruct.Lpuart1ClockSelection = 0; + //PeriphClkInitStruct.Lpuart1ClockSelection = RCC_LPUART1CLKSOURCE_PLL2; + // USART from PLL2 qclk + PeriphClkInitStruct.Usart16ClockSelection = RCC_USART16CLKSOURCE_PLL2; + // USART from PLL2 qclk + PeriphClkInitStruct.Usart234578ClockSelection = 0; + //PeriphClkInitStruct.Usart234578ClockSelection = RCC_USART234578CLKSOURCE_PLL2; + // I2C123 from PLL3 rclk + PeriphClkInitStruct.I2c123ClockSelection = RCC_I2C123CLKSOURCE_PLL3; + // I2C4 from PLL3 rclk + PeriphClkInitStruct.I2c4ClockSelection = 0; + //PeriphClkInitStruct.I2c4ClockSelection = RCC_I2C4CLKSOURCE_PLL3; + // SPI123 from PLL2 pclk + PeriphClkInitStruct.Spi123ClockSelection = RCC_SPI123CLKSOURCE_PLL2; + // SPI45 from PLL2 qclk + PeriphClkInitStruct.Spi45ClockSelection = 0; + //PeriphClkInitStruct.Spi45ClockSelection = RCC_SPI45CLKSOURCE_PLL2; + // SPI6 from PLL2 qclk + PeriphClkInitStruct.Spi6ClockSelection = 0; + //PeriphClkInitStruct.Spi6ClockSelection = RCC_SPI6CLKSOURCE_PLL2; + + if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK) { + Error_Handler(); + } +} + +#endif /* ARDUINO_GENERIC_* */ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723VG/variant_MARLIN_STM32H723VG.h b/buildroot/share/PlatformIO/variants/MARLIN_H723VG/variant_MARLIN_STM32H723VG.h new file mode 100644 index 000000000000..8b67905680a9 --- /dev/null +++ b/buildroot/share/PlatformIO/variants/MARLIN_H723VG/variant_MARLIN_STM32H723VG.h @@ -0,0 +1,269 @@ +/* + ******************************************************************************* + * Copyright (c) 2020, STMicroelectronics + * All rights reserved. + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ******************************************************************************* + */ +#pragma once + +/*---------------------------------------------------------------------------- + * STM32 pins number + *----------------------------------------------------------------------------*/ +#define PA0 PIN_A0 +#define PA1 PIN_A1 +#define PA2 PIN_A2 +#define PA3 PIN_A3 +#define PA4 PIN_A4 +#define PA5 PIN_A5 +#define PA6 PIN_A6 +#define PA7 PIN_A7 +#define PA8 8 +#define PA9 9 +#define PA10 10 +#define PA11 11 +#define PA12 12 +#define PA13 13 +#define PA14 14 +#define PA15 15 +#define PB0 PIN_A8 +#define PB1 PIN_A9 +#define PB2 18 +#define PB3 19 +#define PB4 20 +#define PB5 21 +#define PB6 22 +#define PB7 23 +#define PB8 24 +#define PB9 25 +#define PB10 26 +#define PB11 27 +#define PB12 28 +#define PB13 29 +#define PB14 30 +#define PB15 31 +#define PC0 PIN_A10 +#define PC1 PIN_A11 +#define PC4 PIN_A12 +#define PC5 PIN_A13 +#define PC6 36 +#define PC7 37 +#define PC8 38 +#define PC9 39 +#define PC10 40 +#define PC11 41 +#define PC12 42 +#define PC13 43 +#define PC14 44 +#define PC15 45 +#define PD0 46 +#define PD1 47 +#define PD2 48 +#define PD3 49 +#define PD4 50 +#define PD5 51 +#define PD6 52 +#define PD7 53 +#define PD8 54 +#define PD9 55 +#define PD10 56 +#define PD11 57 +#define PD12 58 +#define PD13 59 +#define PD14 60 +#define PD15 61 +#define PE0 62 +#define PE1 63 +#define PE2 64 +#define PE3 65 +#define PE4 66 +#define PE5 67 +#define PE6 68 +#define PE7 69 +#define PE8 70 +#define PE9 71 +#define PE10 72 +#define PE11 73 +#define PE12 74 +#define PE13 75 +#define PE14 76 +#define PE15 77 +#define PH0 78 +#define PH1 79 +#define PC2_C PIN_A14 +#define PC3_C PIN_A15 +#define PC2 PC2_C +#define PC3 PC3_C + +// Alternate pins number +#define PA0_ALT1 (PA0 | ALT1) +#define PA1_ALT1 (PA1 | ALT1) +#define PA1_ALT2 (PA1 | ALT2) +#define PA2_ALT1 (PA2 | ALT1) +#define PA2_ALT2 (PA2 | ALT2) +#define PA3_ALT1 (PA3 | ALT1) +#define PA3_ALT2 (PA3 | ALT2) +#define PA4_ALT1 (PA4 | ALT1) +#define PA4_ALT2 (PA4 | ALT2) +#define PA5_ALT1 (PA5 | ALT1) +#define PA6_ALT1 (PA6 | ALT1) +#define PA7_ALT1 (PA7 | ALT1) +#define PA7_ALT2 (PA7 | ALT2) +#define PA7_ALT3 (PA7 | ALT3) +#define PA8_ALT1 (PA8 | ALT1) +#define PA9_ALT1 (PA9 | ALT1) +#define PA10_ALT1 (PA10 | ALT1) +#define PA11_ALT1 (PA11 | ALT1) +#define PA12_ALT1 (PA12 | ALT1) +#define PA15_ALT1 (PA15 | ALT1) +#define PA15_ALT2 (PA15 | ALT2) +#define PB0_ALT1 (PB0 | ALT1) +#define PB0_ALT2 (PB0 | ALT2) +#define PB1_ALT1 (PB1 | ALT1) +#define PB1_ALT2 (PB1 | ALT2) +#define PB3_ALT1 (PB3 | ALT1) +#define PB3_ALT2 (PB3 | ALT2) +#define PB4_ALT1 (PB4 | ALT1) +#define PB4_ALT2 (PB4 | ALT2) +#define PB5_ALT1 (PB5 | ALT1) +#define PB5_ALT2 (PB5 | ALT2) +#define PB6_ALT1 (PB6 | ALT1) +#define PB6_ALT2 (PB6 | ALT2) +#define PB7_ALT1 (PB7 | ALT1) +#define PB8_ALT1 (PB8 | ALT1) +#define PB8_ALT2 (PB8 | ALT2) +#define PB9_ALT1 (PB9 | ALT1) +#define PB9_ALT2 (PB9 | ALT2) +#define PB14_ALT1 (PB14 | ALT1) +#define PB14_ALT2 (PB14 | ALT2) +#define PB15_ALT1 (PB15 | ALT1) +#define PB15_ALT2 (PB15 | ALT2) +#define PC0_ALT1 (PC0 | ALT1) +#define PC0_ALT2 (PC0 | ALT2) +#define PC1_ALT1 (PC1 | ALT1) +#define PC1_ALT2 (PC1 | ALT2) +#define PC4_ALT1 (PC4 | ALT1) +#define PC5_ALT1 (PC5 | ALT1) +#define PC6_ALT1 (PC6 | ALT1) +#define PC6_ALT2 (PC6 | ALT2) +#define PC7_ALT1 (PC7 | ALT1) +#define PC7_ALT2 (PC7 | ALT2) +#define PC8_ALT1 (PC8 | ALT1) +#define PC9_ALT1 (PC9 | ALT1) +#define PC10_ALT1 (PC10 | ALT1) +#define PC11_ALT1 (PC11 | ALT1) + +#define NUM_DIGITAL_PINS 82 +#define NUM_DUALPAD_PINS 2 +#define NUM_ANALOG_INPUTS 16 + +// On-board LED pin number +#ifndef LED_BUILTIN + #define LED_BUILTIN PNUM_NOT_DEFINED +#endif + +// On-board user button +#ifndef USER_BTN + #define USER_BTN PNUM_NOT_DEFINED +#endif + +// SPI definitions +#ifndef PIN_SPI_SS + #define PIN_SPI_SS PA4 +#endif +#ifndef PIN_SPI_SS1 + #define PIN_SPI_SS1 PA15 +#endif +#ifndef PIN_SPI_SS2 + #define PIN_SPI_SS2 PNUM_NOT_DEFINED +#endif +#ifndef PIN_SPI_SS3 + #define PIN_SPI_SS3 PNUM_NOT_DEFINED +#endif +#ifndef PIN_SPI_MOSI + #define PIN_SPI_MOSI PA7 +#endif +#ifndef PIN_SPI_MISO + #define PIN_SPI_MISO PA6 +#endif +#ifndef PIN_SPI_SCK + #define PIN_SPI_SCK PA5 +#endif + +// I2C definitions +#ifndef PIN_WIRE_SDA + #define PIN_WIRE_SDA PB7 +#endif +#ifndef PIN_WIRE_SCL + #define PIN_WIRE_SCL PB6 +#endif + +// Timer Definitions +// Use TIM6/TIM7 when possible as servo and tone don't need GPIO output pin +#ifndef TIMER_TONE + #define TIMER_TONE TIM6 +#endif +#ifndef TIMER_SERVO + #define TIMER_SERVO TIM7 +#endif + +// UART Definitions +#ifndef SERIAL_UART_INSTANCE + #define SERIAL_UART_INSTANCE 4 +#endif + +// Default pin used for generic 'Serial' instance +// Mandatory for Firmata +#ifndef PIN_SERIAL_RX + #define PIN_SERIAL_RX PA1 +#endif +#ifndef PIN_SERIAL_TX + #define PIN_SERIAL_TX PA0 +#endif + +// Extra HAL modules +#if !defined(HAL_DAC_MODULE_DISABLED) + #define HAL_DAC_MODULE_ENABLED +#endif +#if !defined(HAL_ETH_MODULE_DISABLED) + #define HAL_ETH_MODULE_ENABLED +#endif +#if !defined(HAL_OSPI_MODULE_DISABLED) + #define HAL_OSPI_MODULE_ENABLED +#endif +#if !defined(HAL_SD_MODULE_DISABLED) + #define HAL_SD_MODULE_ENABLED +#endif + +/*---------------------------------------------------------------------------- + * Arduino objects - C++ only + *----------------------------------------------------------------------------*/ + +#ifdef __cplusplus + // These serial port names are intended to allow libraries and architecture-neutral + // sketches to automatically default to the correct port name for a particular type + // of use. For example, a GPS module would normally connect to SERIAL_PORT_HARDWARE_OPEN, + // the first hardware serial port whose RX/TX pins are not dedicated to another use. + // + // SERIAL_PORT_MONITOR Port which normally prints to the Arduino Serial Monitor + // + // SERIAL_PORT_USBVIRTUAL Port which is USB virtual serial + // + // SERIAL_PORT_LINUXBRIDGE Port which connects to a Linux system via Bridge library + // + // SERIAL_PORT_HARDWARE Hardware serial port, physical RX & TX pins. + // + // SERIAL_PORT_HARDWARE_OPEN Hardware serial ports which are open for use. Their RX & TX + // pins are NOT connected to anything by default. + #ifndef SERIAL_PORT_MONITOR + #define SERIAL_PORT_MONITOR Serial + #endif + #ifndef SERIAL_PORT_HARDWARE + #define SERIAL_PORT_HARDWARE Serial + #endif +#endif diff --git a/ini/renamed.ini b/ini/renamed.ini index ae1b5742b5e0..99fbde95d01a 100644 --- a/ini/renamed.ini +++ b/ini/renamed.ini @@ -71,3 +71,6 @@ extends = renamed [env:BIGTREE_OCTOPUS_V1_F407_USB] ;=> STM32F407ZE_btt_USB extends = renamed + +[env:STM32H723Vx_btt] ;=> STM32H723VE_btt or STM32H723VG_btt +extends = renamed diff --git a/ini/stm32h7.ini b/ini/stm32h7.ini index e7617b1c965d..5485e57e91d8 100644 --- a/ini/stm32h7.ini +++ b/ini/stm32h7.ini @@ -12,8 +12,8 @@ # H : High Performance # 7 : Cortex M7 core (0:M0, 1-2:M3, 3-4:M4, 7:M7) # 43 : Line/Features -# I : 176 pins -# I : 2048KB Flash-memory +# I : 176 pins (T:36, C:48 or 49, M:81, V:100, Z:144, I:176) +# I : 2048KB Flash-memory (C:256KB, D:384KB, E:512KB, G:1024KB) # T : LQFP package # 6 : -40...85°C (7: ...105°C) # @@ -61,14 +61,12 @@ upload_protocol = cmsis-dap debug_tool = cmsis-dap # -# BigTreeTech SKR V3.0 / SKR V3.0 EZ (STM32H723VGT6 ARM Cortex-M7) -# BigTreeTech Octopus Max EZ V1.0 (STM32H723VET6 ARM Cortex-M7) +# BigTreeTech STM32H723Vx ARM Cortex-M7 Common # -[env:STM32H723Vx_btt] +[STM32H723Vx_btt] extends = stm32_variant platform = ststm32@15.4.1 platform_packages = framework-arduinoststm32@~4.20200.220530 -board = marlin_STM32H723Vx board_build.offset = 0x20000 board_upload.offset_address = 0x08020000 build_flags = ${stm32_variant.build_flags} @@ -87,6 +85,20 @@ build_flags = ${stm32_variant.build_flags} upload_protocol = cmsis-dap debug_tool = cmsis-dap +# +# BigTreeTech Octopus Max EZ V1.0 (STM32H723VET6 ARM Cortex-M7) +# +[env:STM32H723VE_btt] +extends = STM32H723Vx_btt +board = marlin_STM32H723VE + +# +# BigTreeTech SKR V3.0 / SKR V3.0 EZ (STM32H723VGT6 ARM Cortex-M7) +# +[env:STM32H723VG_btt] +extends = STM32H723Vx_btt +board = marlin_STM32H723VG + # # BigTreeTech Octopus Pro V1.0 / Octopus Max EZ V1.0 (STM32H723ZET6 ARM Cortex-M7) # From ac954b57f764cf958000314efc20b725c2b8e054 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Fri, 2 Jun 2023 20:50:45 -0700 Subject: [PATCH 244/427] =?UTF-8?q?=F0=9F=A9=B9=20Endstop=20hit=20state=20?= =?UTF-8?q?followup=20(#25885)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25574 --- Marlin/src/inc/Conditionals_LCD.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index f2b501627279..b33720b2a5f3 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -833,8 +833,8 @@ #undef AVOID_OBSTACLES #undef ENDSTOPPULLUP_XMIN #undef ENDSTOPPULLUP_XMAX - #undef X_MIN_ENDSTOP_INVERTING - #undef X_MAX_ENDSTOP_INVERTING + #undef X_MIN_ENDSTOP_HIT_STATE + #undef X_MAX_ENDSTOP_HIT_STATE #undef X2_DRIVER_TYPE #undef X_ENABLE_ON #undef DISABLE_X From ba08dcfb76804a912380603b3f69831ea0d1d6eb Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 3 Jun 2023 04:40:07 -0500 Subject: [PATCH 245/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Fix?= =?UTF-8?q?=20narrowing=20conversions=20(#25924)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/types.h | 15 +++++++++++++++ .../src/feature/bedlevel/mbl/mesh_bed_leveling.h | 10 +++++----- Marlin/src/feature/bedlevel/ubl/ubl.h | 12 ++++++------ Marlin/src/feature/bedlevel/ubl/ubl_motion.cpp | 8 ++++---- Marlin/src/libs/numtostr.cpp | 2 +- Marlin/src/module/motion.h | 3 --- Marlin/src/module/stepper.h | 3 +++ 7 files changed, 34 insertions(+), 19 deletions(-) diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index 7b5837efb8d7..57d1c5d5f788 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -479,6 +479,11 @@ struct XYval { FI XYval& operator>>=(const int &p) { _RSE(x); _RSE(y); return *this; } FI XYval& operator<<=(const int &p) { _LSE(x); _LSE(y); return *this; } + // Absolute difference between two objects + FI constexpr XYval diff(const XYZEval &rs) const { return { TERN(HAS_X_AXIS, T(_ABS(x - rs.x)), x), TERN(HAS_Y_AXIS, T(_ABS(y - rs.y)), y) }; } + FI constexpr XYval diff(const XYZval &rs) const { return { TERN(HAS_X_AXIS, T(_ABS(x - rs.x)), x), TERN(HAS_Y_AXIS, T(_ABS(y - rs.y)), y) }; } + FI constexpr XYval diff(const XYval &rs) const { return { T(_ABS(x - rs.x)), T(_ABS(y - rs.y)) }; } + // Exact comparisons. For floats a "NEAR" operation may be better. FI bool operator==(const XYval &rs) const { return x == rs.x && y == rs.y; } FI bool operator==(const XYZval &rs) const { return ENABLED(HAS_X_AXIS) XY_GANG(&& x == rs.x, && y == rs.y); } @@ -607,6 +612,11 @@ struct XYZval { FI constexpr XYZval operator<<(const int &p) const { return NUM_AXIS_ARRAY(_LS(x), _LS(y), _LS(z), _LS(i), _LS(j), _LS(k), _LS(u), _LS(v), _LS(w)); } FI constexpr XYZval operator-() const { return NUM_AXIS_ARRAY(-x, -y, -z, -i, -j, -k, -u, -v, -w); } + // Absolute difference between two objects + FI constexpr XYZval diff(const XYZEval &rs) const { return NUM_AXIS_ARRAY(T(_ABS(x - rs.x)), T(_ABS(y - rs.y)), T(_ABS(z - rs.z)), T(_ABS(i - rs.i)), T(_ABS(j - rs.j)), T(_ABS(k - rs.k)), T(_ABS(u - rs.u)), T(_ABS(v - rs.v)), T(_ABS(w - rs.w)) ); } + FI constexpr XYZval diff(const XYZval &rs) const { return NUM_AXIS_ARRAY(T(_ABS(x - rs.x)), T(_ABS(y - rs.y)), T(_ABS(z - rs.z)), T(_ABS(i - rs.i)), T(_ABS(j - rs.j)), T(_ABS(k - rs.k)), T(_ABS(u - rs.u)), T(_ABS(v - rs.v)), T(_ABS(w - rs.w)) ); } + FI constexpr XYZval diff(const XYval &rs) const { return NUM_AXIS_ARRAY(T(_ABS(x - rs.x)), T(_ABS(y - rs.y)), z, i, j, k, u, v, w ); } + // Modifier operators FI XYZval& operator+=(const XYval &rs) { XY_CODE(x += rs.x, y += rs.y); return *this; } FI XYZval& operator-=(const XYval &rs) { XY_CODE(x -= rs.x, y -= rs.y); return *this; } @@ -749,6 +759,11 @@ struct XYZEval { FI constexpr XYZEval operator<<(const int &p) const { return LOGICAL_AXIS_ARRAY(_LS(e), _LS(x), _LS(y), _LS(z), _LS(i), _LS(j), _LS(k), _LS(u), _LS(v), _LS(w)); } FI constexpr XYZEval operator-() const { return LOGICAL_AXIS_ARRAY(-e, -x, -y, -z, -i, -j, -k, -u, -v, -w); } + // Absolute difference between two objects + FI constexpr XYZEval diff(const XYZEval &rs) const { return LOGICAL_AXIS_ARRAY(T(_ABS(e - rs.e)), T(_ABS(x - rs.x)), T(_ABS(y - rs.y)), T(_ABS(z - rs.z)), T(_ABS(i - rs.i)), T(_ABS(j - rs.j)), T(_ABS(k - rs.k)), T(_ABS(u - rs.u)), T(_ABS(v - rs.v)), T(_ABS(w - rs.w)) ); } + FI constexpr XYZEval diff(const XYZval &rs) const { return LOGICAL_AXIS_ARRAY(0 , T(_ABS(x - rs.x)), T(_ABS(y - rs.y)), T(_ABS(z - rs.z)), T(_ABS(i - rs.i)), T(_ABS(j - rs.j)), T(_ABS(k - rs.k)), T(_ABS(u - rs.u)), T(_ABS(v - rs.v)), T(_ABS(w - rs.w)) ); } + FI constexpr XYZEval diff(const XYval &rs) const { return LOGICAL_AXIS_ARRAY(0 , T(_ABS(x - rs.x)), T(_ABS(y - rs.y)), z, i, j, k, u, v, w ); } + // Modifier operators FI XYZEval& operator+=(const XYval &rs) { XY_CODE(x += rs.x, y += rs.y); return *this; } FI XYZEval& operator-=(const XYval &rs) { XY_CODE(x -= rs.x, y -= rs.y); return *this; } diff --git a/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.h b/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.h index 0193b4f43e5b..cb4f36cd59f2 100644 --- a/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.h +++ b/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.h @@ -72,18 +72,18 @@ class mesh_bed_leveling { static float get_mesh_x(const uint8_t i) { return index_to_xpos[i]; } static float get_mesh_y(const uint8_t i) { return index_to_ypos[i]; } - static int8_t cell_index_x(const_float_t x) { + static uint8_t cell_index_x(const_float_t x) { int8_t cx = (x - (MESH_MIN_X)) * RECIPROCAL(MESH_X_DIST); return constrain(cx, 0, GRID_MAX_CELLS_X - 1); } - static int8_t cell_index_y(const_float_t y) { + static uint8_t cell_index_y(const_float_t y) { int8_t cy = (y - (MESH_MIN_Y)) * RECIPROCAL(MESH_Y_DIST); return constrain(cy, 0, GRID_MAX_CELLS_Y - 1); } - static xy_int8_t cell_indexes(const_float_t x, const_float_t y) { + static xy_uint8_t cell_indexes(const_float_t x, const_float_t y) { return { cell_index_x(x), cell_index_y(y) }; } - static xy_int8_t cell_indexes(const xy_pos_t &xy) { return cell_indexes(xy.x, xy.y); } + static xy_uint8_t cell_indexes(const xy_pos_t &xy) { return cell_indexes(xy.x, xy.y); } static int8_t probe_index_x(const_float_t x) { int8_t px = (x - (MESH_MIN_X) + 0.5f * (MESH_X_DIST)) * RECIPROCAL(MESH_X_DIST); @@ -107,7 +107,7 @@ class mesh_bed_leveling { static float get_z_offset() { return z_offset; } static float get_z_correction(const xy_pos_t &pos) { - const xy_int8_t ind = cell_indexes(pos); + const xy_uint8_t ind = cell_indexes(pos); const float x1 = index_to_xpos[ind.x], x2 = index_to_xpos[ind.x+1], y1 = index_to_ypos[ind.y], y2 = index_to_ypos[ind.y+1], z1 = calc_z0(pos.x, x1, z_values[ind.x][ind.y ], x2, z_values[ind.x+1][ind.y ]), diff --git a/Marlin/src/feature/bedlevel/ubl/ubl.h b/Marlin/src/feature/bedlevel/ubl/ubl.h index 785cb5d883aa..c9bc7974296c 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl.h +++ b/Marlin/src/feature/bedlevel/ubl/ubl.h @@ -141,26 +141,26 @@ class unified_bed_leveling { return FLOOR((y - (MESH_MIN_Y)) * RECIPROCAL(MESH_Y_DIST)); } - static int8_t cell_index_x_valid(const_float_t x) { + static bool cell_index_x_valid(const_float_t x) { return WITHIN(cell_index_x_raw(x), 0, GRID_MAX_CELLS_X - 1); } - static int8_t cell_index_y_valid(const_float_t y) { + static bool cell_index_y_valid(const_float_t y) { return WITHIN(cell_index_y_raw(y), 0, GRID_MAX_CELLS_Y - 1); } - static int8_t cell_index_x(const_float_t x) { + static uint8_t cell_index_x(const_float_t x) { return constrain(cell_index_x_raw(x), 0, GRID_MAX_CELLS_X - 1); } - static int8_t cell_index_y(const_float_t y) { + static uint8_t cell_index_y(const_float_t y) { return constrain(cell_index_y_raw(y), 0, GRID_MAX_CELLS_Y - 1); } - static xy_int8_t cell_indexes(const_float_t x, const_float_t y) { + static xy_uint8_t cell_indexes(const_float_t x, const_float_t y) { return { cell_index_x(x), cell_index_y(y) }; } - static xy_int8_t cell_indexes(const xy_pos_t &xy) { return cell_indexes(xy.x, xy.y); } + static xy_uint8_t cell_indexes(const xy_pos_t &xy) { return cell_indexes(xy.x, xy.y); } static int8_t closest_x_index(const_float_t x) { const int8_t px = (x - (MESH_MIN_X) + (MESH_X_DIST) * 0.5) * RECIPROCAL(MESH_X_DIST); diff --git a/Marlin/src/feature/bedlevel/ubl/ubl_motion.cpp b/Marlin/src/feature/bedlevel/ubl/ubl_motion.cpp index 1a2b6eb23abd..053a68b77d78 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl_motion.cpp +++ b/Marlin/src/feature/bedlevel/ubl/ubl_motion.cpp @@ -61,7 +61,7 @@ const xyze_pos_t &start = current_position, &end = destination; #endif - const xy_int8_t istart = cell_indexes(start), iend = cell_indexes(end); + const xy_uint8_t istart = cell_indexes(start), iend = cell_indexes(end); // A move within the same cell needs no splitting if (istart == iend) { @@ -108,7 +108,7 @@ const xy_float_t dist = end - start; const xy_bool_t neg { dist.x < 0, dist.y < 0 }; - const xy_int8_t ineg { int8_t(neg.x), int8_t(neg.y) }; + const xy_uint8_t ineg { uint8_t(neg.x), uint8_t(neg.y) }; const xy_float_t sign { neg.x ? -1.0f : 1.0f, neg.y ? -1.0f : 1.0f }; const xy_int8_t iadd { int8_t(iend.x == istart.x ? 0 : sign.x), int8_t(iend.y == istart.y ? 0 : sign.y) }; @@ -131,7 +131,7 @@ const bool inf_normalized_flag = isinf(e_normalized_dist); #endif - xy_int8_t icell = istart; + xy_uint8_t icell = istart; const float ratio = dist.y / dist.x, // Allow divide by zero c = start.y - ratio * start.x; @@ -252,7 +252,7 @@ * Generic case of a line crossing both X and Y Mesh lines. */ - xy_int8_t cnt = (istart - iend).ABS(); + xy_uint8_t cnt = istart.diff(iend); icell += ineg; diff --git a/Marlin/src/libs/numtostr.cpp b/Marlin/src/libs/numtostr.cpp index c34faf68ff7a..e27373263556 100644 --- a/Marlin/src/libs/numtostr.cpp +++ b/Marlin/src/libs/numtostr.cpp @@ -31,7 +31,7 @@ template constexpr char DIGIMOD(const T1 n, const T2 f) { return DIGIT((n / f) % 10); } template -constexpr char RJDIGIT(const T1 n, const T2 f) { return (n >= f ? DIGIMOD(n, f) : ' '); } +constexpr char RJDIGIT(const T1 n, const T2 f) { return (n >= (T1)f ? DIGIMOD(n, f) : ' '); } template constexpr char MINUSOR(T &n, const char alt) { return (n >= 0) ? alt : (n = -n) ? '-' : '-'; } diff --git a/Marlin/src/module/motion.h b/Marlin/src/module/motion.h index ce05c82c772d..1e6d02d2a7c8 100644 --- a/Marlin/src/module/motion.h +++ b/Marlin/src/module/motion.h @@ -434,9 +434,6 @@ void restore_feedrate_and_scaling(); typedef bits_t(NUM_AXES) main_axes_bits_t; constexpr main_axes_bits_t main_axes_mask = _BV(NUM_AXES) - 1; -typedef bits_t(NUM_AXES + EXTRUDERS) e_axis_bits_t; -constexpr e_axis_bits_t e_axis_mask = (_BV(EXTRUDERS) - 1) << NUM_AXES; - void set_axis_is_at_home(const AxisEnum axis); #if HAS_ENDSTOPS diff --git a/Marlin/src/module/stepper.h b/Marlin/src/module/stepper.h index 97993193684a..9f49e353a753 100644 --- a/Marlin/src/module/stepper.h +++ b/Marlin/src/module/stepper.h @@ -83,6 +83,9 @@ typedef struct { }; } stepper_flags_t; +typedef bits_t(NUM_AXES + E_STATES) e_axis_bits_t; +constexpr e_axis_bits_t e_axis_mask = (_BV(E_STATES) - 1) << NUM_AXES; + // All the stepper enable pins constexpr pin_t ena_pins[] = { NUM_AXIS_LIST_(X_ENABLE_PIN, Y_ENABLE_PIN, Z_ENABLE_PIN, I_ENABLE_PIN, J_ENABLE_PIN, K_ENABLE_PIN, U_ENABLE_PIN, V_ENABLE_PIN, W_ENABLE_PIN) From b8655ca0ed05e077ac89ff377bff3e4db7ff5b3a Mon Sep 17 00:00:00 2001 From: Manuel McLure Date: Sat, 3 Jun 2023 13:39:41 -0700 Subject: [PATCH 246/427] =?UTF-8?q?=F0=9F=94=A7=20BTT=20SKR=203=20has=20on?= =?UTF-8?q?board=20endstop=20pullups=20(#24876)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h | 1 + 1 file changed, 1 insertion(+) diff --git a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h index 85fd24da0fc6..d6a7358f3e58 100644 --- a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h +++ b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h @@ -119,6 +119,7 @@ #define Z_STOP_PIN PC0 // Z-STOP #endif #endif +#define ONBOARD_ENDSTOPPULLUPS // Board has built-in pullups // // Z Probe (when not Z_MIN_PIN) From 6136e48df5c8e2aee3447b99beb8464231895b69 Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Sat, 3 Jun 2023 23:09:29 +0200 Subject: [PATCH 247/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20M25/M125=20for=20L?= =?UTF-8?q?CDs=20with=20ui.resume=5Fprint=20(#24877)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/pause.cpp | 2 -- Marlin/src/gcode/feature/pause/M125.cpp | 2 +- Marlin/src/lcd/language/language_it.h | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/Marlin/src/feature/pause.cpp b/Marlin/src/feature/pause.cpp index 6e57f6e2dc84..66f7ad15edfd 100644 --- a/Marlin/src/feature/pause.cpp +++ b/Marlin/src/feature/pause.cpp @@ -402,8 +402,6 @@ bool pause_print(const_float_t retract, const xyz_pos_t &park_point, const bool DEBUG_SECTION(pp, "pause_print", true); DEBUG_ECHOLNPGM("... park.x:", park_point.x, " y:", park_point.y, " z:", park_point.z, " unloadlen:", unload_length, " showlcd:", show_lcd DXC_SAY); - UNUSED(show_lcd); - if (did_pause_print) return false; // already paused #if ENABLED(HOST_ACTION_COMMANDS) diff --git a/Marlin/src/gcode/feature/pause/M125.cpp b/Marlin/src/gcode/feature/pause/M125.cpp index 079ae6c1ba5f..0e0d6ed143d2 100644 --- a/Marlin/src/gcode/feature/pause/M125.cpp +++ b/Marlin/src/gcode/feature/pause/M125.cpp @@ -96,7 +96,7 @@ void GcodeSuite::M125() { const bool show_lcd = TERN0(HAS_MARLINUI_MENU, parser.boolval('P')); if (pause_print(retract, park_point, show_lcd, 0)) { - if (ENABLED(EXTENSIBLE_UI) || ALL(EMERGENCY_PARSER, HOST_PROMPT_SUPPORT) || !sd_printing || show_lcd) { + if (HAS_DISPLAY || ALL(EMERGENCY_PARSER, HOST_PROMPT_SUPPORT) || !sd_printing || show_lcd) { wait_for_confirmation(false, 0); resume_print(0, 0, -retract, 0); } diff --git a/Marlin/src/lcd/language/language_it.h b/Marlin/src/lcd/language/language_it.h index e4f95bf72ce1..d9a9340762df 100644 --- a/Marlin/src/lcd/language/language_it.h +++ b/Marlin/src/lcd/language/language_it.h @@ -776,7 +776,7 @@ namespace Language_it { // #if LCD_HEIGHT >= 4 LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_3_LINE("Premi per", "riprendere", "la stampa")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parcheggiando...")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Sto parcheggiando...")); LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Attendere avvio", "del cambio", "di filamento")); LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Inserisci il", "filamento e premi", "per continuare")); LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Premi per", "riscaldare ugello")); From f8c51523694e5ccc6473bc9791f3fa0135ad395f Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sun, 4 Jun 2023 00:27:30 +0000 Subject: [PATCH 248/427] [cron] Bump distribution date (2023-06-04) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 361b1035d070..921e496acb4a 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-03" +//#define STRING_DISTRIBUTION_DATE "2023-06-04" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 69937ac7fced..578ed8a20a21 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-03" + #define STRING_DISTRIBUTION_DATE "2023-06-04" #endif /** From 1a2816284c0e92f39840e8688d617faa1e32cd2f Mon Sep 17 00:00:00 2001 From: Andrew <18502096+classicrocker883@users.noreply.github.com> Date: Sun, 4 Jun 2023 05:20:07 -0400 Subject: [PATCH 249/427] =?UTF-8?q?=E2=9C=8F=EF=B8=8F=20Fix=20LCD=20contra?= =?UTF-8?q?st=20typo=20(#25929)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/parser.cpp | 2 +- Marlin/src/inc/Conditionals_post.h | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/Marlin/src/gcode/parser.cpp b/Marlin/src/gcode/parser.cpp index 90586e371f50..ccd6b4111f10 100644 --- a/Marlin/src/gcode/parser.cpp +++ b/Marlin/src/gcode/parser.cpp @@ -229,7 +229,7 @@ void GCodeParser::parse(char *p) { } #endif - } break; + } break; #if ENABLED(GCODE_MOTION_MODES) diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 588484ff3e3b..6d2bbd6edf22 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -474,7 +474,6 @@ #define _LCD_CONTRAST_INIT 195 #elif ENABLED(FYSETC_MINI_12864_2_1) #define _LCD_CONTRAST_MIN 230 - #define _LCD_CONTRAST_MIN 255 #define _LCD_CONTRAST_INIT 255 #elif ENABLED(FYSETC_MINI_12864) #define _LCD_CONTRAST_MIN 180 From f8423f9da09a8d67074b4243917953a6b2b8d279 Mon Sep 17 00:00:00 2001 From: kisslorand <50251547+kisslorand@users.noreply.github.com> Date: Sun, 4 Jun 2023 12:49:27 +0300 Subject: [PATCH 250/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20D576=20buffer=20un?= =?UTF-8?q?derrun=20reporting=20(#25931)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/queue.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/gcode/queue.cpp b/Marlin/src/gcode/queue.cpp index 156436b7dda4..967ab76897f7 100644 --- a/Marlin/src/gcode/queue.cpp +++ b/Marlin/src/gcode/queue.cpp @@ -713,8 +713,8 @@ void GCodeQueue::advance() { void GCodeQueue::report_buffer_statistics() { SERIAL_ECHOLNPGM("D576" - " P:", planner.moves_free(), " ", -planner_buffer_underruns, " (", max_planner_buffer_empty_duration, ")" - " B:", BUFSIZE - ring_buffer.length, " ", -command_buffer_underruns, " (", max_command_buffer_empty_duration, ")" + " P:", planner.moves_free(), " ", planner_buffer_underruns, " (", max_planner_buffer_empty_duration, ")" + " B:", BUFSIZE - ring_buffer.length, " ", command_buffer_underruns, " (", max_command_buffer_empty_duration, ")" ); command_buffer_underruns = planner_buffer_underruns = 0; max_command_buffer_empty_duration = max_planner_buffer_empty_duration = 0; From 6e8035e5aa59454600cd359665a34954dac80a70 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 5 Jun 2023 00:24:02 +0000 Subject: [PATCH 251/427] [cron] Bump distribution date (2023-06-05) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 921e496acb4a..4b3e3b2c8c83 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-04" +//#define STRING_DISTRIBUTION_DATE "2023-06-05" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 578ed8a20a21..66ee44531cc3 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-04" + #define STRING_DISTRIBUTION_DATE "2023-06-05" #endif /** From 3b681f7b7450582e0fca2425aabf47b37624cbda Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roi=20Rodr=C3=ADguez=20Huertas?= Date: Mon, 5 Jun 2023 07:13:57 +0200 Subject: [PATCH 252/427] =?UTF-8?q?=F0=9F=94=A7=20TMC=20Driver=20axis=20ba?= =?UTF-8?q?ud=20for=20Soft=20Serial=20(#25664)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/stepper/trinamic.cpp | 44 +++++++++++++------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/Marlin/src/module/stepper/trinamic.cpp b/Marlin/src/module/stepper/trinamic.cpp index 1e8782753ae0..ce99d87f0996 100644 --- a/Marlin/src/module/stepper/trinamic.cpp +++ b/Marlin/src/module/stepper/trinamic.cpp @@ -514,154 +514,154 @@ enum StealthIndex : uint8_t { #ifdef X_HARDWARE_SERIAL HW_SERIAL_BEGIN(X); #else - stepperX.beginSerial(TMC_BAUD_RATE); + stepperX.beginSerial(TMC_X_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(X2) #ifdef X2_HARDWARE_SERIAL HW_SERIAL_BEGIN(X2); #else - stepperX2.beginSerial(TMC_BAUD_RATE); + stepperX2.beginSerial(TMC_X2_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(Y) #ifdef Y_HARDWARE_SERIAL HW_SERIAL_BEGIN(Y); #else - stepperY.beginSerial(TMC_BAUD_RATE); + stepperY.beginSerial(TMC_Y_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(Y2) #ifdef Y2_HARDWARE_SERIAL HW_SERIAL_BEGIN(Y2); #else - stepperY2.beginSerial(TMC_BAUD_RATE); + stepperY2.beginSerial(TMC_Y2_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(Z) #ifdef Z_HARDWARE_SERIAL HW_SERIAL_BEGIN(Z); #else - stepperZ.beginSerial(TMC_BAUD_RATE); + stepperZ.beginSerial(TMC_Z_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(Z2) #ifdef Z2_HARDWARE_SERIAL HW_SERIAL_BEGIN(Z2); #else - stepperZ2.beginSerial(TMC_BAUD_RATE); + stepperZ2.beginSerial(TMC_Z2_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(Z3) #ifdef Z3_HARDWARE_SERIAL HW_SERIAL_BEGIN(Z3); #else - stepperZ3.beginSerial(TMC_BAUD_RATE); + stepperZ3.beginSerial(TMC_Z3_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(Z4) #ifdef Z4_HARDWARE_SERIAL HW_SERIAL_BEGIN(Z4); #else - stepperZ4.beginSerial(TMC_BAUD_RATE); + stepperZ4.beginSerial(TMC_Z4_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(I) #ifdef I_HARDWARE_SERIAL HW_SERIAL_BEGIN(I); #else - stepperI.beginSerial(TMC_BAUD_RATE); + stepperI.beginSerial(TMC_I_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(J) #ifdef J_HARDWARE_SERIAL HW_SERIAL_BEGIN(J); #else - stepperJ.beginSerial(TMC_BAUD_RATE); + stepperJ.beginSerial(TMC_J_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(K) #ifdef K_HARDWARE_SERIAL HW_SERIAL_BEGIN(K); #else - stepperK.beginSerial(TMC_BAUD_RATE); + stepperK.beginSerial(TMC_K_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(U) #ifdef U_HARDWARE_SERIAL HW_SERIAL_BEGIN(U); #else - stepperU.beginSerial(TMC_BAUD_RATE); + stepperU.beginSerial(TMC_U_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(V) #ifdef V_HARDWARE_SERIAL HW_SERIAL_BEGIN(V); #else - stepperV.beginSerial(TMC_BAUD_RATE); + stepperV.beginSerial(TMC_V_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(W) #ifdef W_HARDWARE_SERIAL HW_SERIAL_BEGIN(W); #else - stepperW.beginSerial(TMC_BAUD_RATE); + stepperW.beginSerial(TMC_W_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(E0) #ifdef E0_HARDWARE_SERIAL HW_SERIAL_BEGIN(E0); #else - stepperE0.beginSerial(TMC_BAUD_RATE); + stepperE0.beginSerial(TMC_E0_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(E1) #ifdef E1_HARDWARE_SERIAL HW_SERIAL_BEGIN(E1); #else - stepperE1.beginSerial(TMC_BAUD_RATE); + stepperE1.beginSerial(TMC_E1_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(E2) #ifdef E2_HARDWARE_SERIAL HW_SERIAL_BEGIN(E2); #else - stepperE2.beginSerial(TMC_BAUD_RATE); + stepperE2.beginSerial(TMC_E2_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(E3) #ifdef E3_HARDWARE_SERIAL HW_SERIAL_BEGIN(E3); #else - stepperE3.beginSerial(TMC_BAUD_RATE); + stepperE3.beginSerial(TMC_E3_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(E4) #ifdef E4_HARDWARE_SERIAL HW_SERIAL_BEGIN(E4); #else - stepperE4.beginSerial(TMC_BAUD_RATE); + stepperE4.beginSerial(TMC_E4_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(E5) #ifdef E5_HARDWARE_SERIAL HW_SERIAL_BEGIN(E5); #else - stepperE5.beginSerial(TMC_BAUD_RATE); + stepperE5.beginSerial(TMC_E5_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(E6) #ifdef E6_HARDWARE_SERIAL HW_SERIAL_BEGIN(E6); #else - stepperE6.beginSerial(TMC_BAUD_RATE); + stepperE6.beginSerial(TMC_E6_BAUD_RATE); #endif #endif #if AXIS_HAS_UART(E7) #ifdef E7_HARDWARE_SERIAL HW_SERIAL_BEGIN(E7); #else - stepperE7.beginSerial(TMC_BAUD_RATE); + stepperE7.beginSerial(TMC_E7_BAUD_RATE); #endif #endif } From 70288c6c4fae6a6334d7c48b9ef17da7ecf3c173 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 5 Jun 2023 00:43:31 -0500 Subject: [PATCH 253/427] =?UTF-8?q?=F0=9F=8E=A8=20Detab=20C/C++?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/DUE/usb/genclk.h | 296 ++++++------- Marlin/src/HAL/DUE/usb/osc.h | 211 +++++---- Marlin/src/HAL/DUE/usb/pll.h | 254 +++++------ Marlin/src/HAL/DUE/usb/sbc_protocol.h | 111 +++-- Marlin/src/HAL/DUE/usb/spc_protocol.h | 357 ++++++++------- Marlin/src/HAL/DUE/usb/sysclk.h | 30 +- Marlin/src/HAL/DUE/usb/udc.h | 411 +++++++++--------- Marlin/src/HAL/DUE/usb/udc_desc.h | 57 ++- Marlin/src/HAL/DUE/usb/udd.h | 58 +-- Marlin/src/HAL/DUE/usb/udi.h | 94 ++-- Marlin/src/HAL/DUE/usb/udi_cdc.h | 304 +++++++------ Marlin/src/HAL/DUE/usb/udi_msc.c | 142 ++---- Marlin/src/HAL/DUE/usb/udi_msc.h | 227 +++++----- Marlin/src/HAL/DUE/usb/uotghs_otg.h | 27 +- Marlin/src/HAL/DUE/usb/usb_protocol.h | 266 ++++++------ Marlin/src/HAL/DUE/usb/usb_protocol_cdc.h | 132 +++--- Marlin/src/HAL/DUE/usb/usb_protocol_msc.h | 64 +-- .../marlin_maple_CHITU_F103/board/board.h | 12 +- .../marlin_maple_MEEB_3DP/board/board.h | 12 +- 19 files changed, 1463 insertions(+), 1602 deletions(-) diff --git a/Marlin/src/HAL/DUE/usb/genclk.h b/Marlin/src/HAL/DUE/usb/genclk.h index cde03bc0d107..45eba5873f8c 100644 --- a/Marlin/src/HAL/DUE/usb/genclk.h +++ b/Marlin/src/HAL/DUE/usb/genclk.h @@ -74,17 +74,17 @@ extern "C" { //@{ enum genclk_source { - GENCLK_PCK_SRC_SLCK_RC = 0, //!< Internal 32kHz RC oscillator as PCK source clock - GENCLK_PCK_SRC_SLCK_XTAL = 1, //!< External 32kHz crystal oscillator as PCK source clock - GENCLK_PCK_SRC_SLCK_BYPASS = 2, //!< External 32kHz bypass oscillator as PCK source clock - GENCLK_PCK_SRC_MAINCK_4M_RC = 3, //!< Internal 4MHz RC oscillator as PCK source clock - GENCLK_PCK_SRC_MAINCK_8M_RC = 4, //!< Internal 8MHz RC oscillator as PCK source clock - GENCLK_PCK_SRC_MAINCK_12M_RC = 5, //!< Internal 12MHz RC oscillator as PCK source clock - GENCLK_PCK_SRC_MAINCK_XTAL = 6, //!< External crystal oscillator as PCK source clock - GENCLK_PCK_SRC_MAINCK_BYPASS = 7, //!< External bypass oscillator as PCK source clock - GENCLK_PCK_SRC_PLLACK = 8, //!< Use PLLACK as PCK source clock - GENCLK_PCK_SRC_PLLBCK = 9, //!< Use PLLBCK as PCK source clock - GENCLK_PCK_SRC_MCK = 10, //!< Use Master Clk as PCK source clock + GENCLK_PCK_SRC_SLCK_RC = 0, //!< Internal 32kHz RC oscillator as PCK source clock + GENCLK_PCK_SRC_SLCK_XTAL = 1, //!< External 32kHz crystal oscillator as PCK source clock + GENCLK_PCK_SRC_SLCK_BYPASS = 2, //!< External 32kHz bypass oscillator as PCK source clock + GENCLK_PCK_SRC_MAINCK_4M_RC = 3, //!< Internal 4MHz RC oscillator as PCK source clock + GENCLK_PCK_SRC_MAINCK_8M_RC = 4, //!< Internal 8MHz RC oscillator as PCK source clock + GENCLK_PCK_SRC_MAINCK_12M_RC = 5, //!< Internal 12MHz RC oscillator as PCK source clock + GENCLK_PCK_SRC_MAINCK_XTAL = 6, //!< External crystal oscillator as PCK source clock + GENCLK_PCK_SRC_MAINCK_BYPASS = 7, //!< External bypass oscillator as PCK source clock + GENCLK_PCK_SRC_PLLACK = 8, //!< Use PLLACK as PCK source clock + GENCLK_PCK_SRC_PLLBCK = 9, //!< Use PLLBCK as PCK source clock + GENCLK_PCK_SRC_MCK = 10, //!< Use Master Clk as PCK source clock }; //@} @@ -93,176 +93,162 @@ enum genclk_source { //@{ enum genclk_divider { - GENCLK_PCK_PRES_1 = PMC_PCK_PRES_CLK_1, //!< Set PCK clock prescaler to 1 - GENCLK_PCK_PRES_2 = PMC_PCK_PRES_CLK_2, //!< Set PCK clock prescaler to 2 - GENCLK_PCK_PRES_4 = PMC_PCK_PRES_CLK_4, //!< Set PCK clock prescaler to 4 - GENCLK_PCK_PRES_8 = PMC_PCK_PRES_CLK_8, //!< Set PCK clock prescaler to 8 - GENCLK_PCK_PRES_16 = PMC_PCK_PRES_CLK_16, //!< Set PCK clock prescaler to 16 - GENCLK_PCK_PRES_32 = PMC_PCK_PRES_CLK_32, //!< Set PCK clock prescaler to 32 - GENCLK_PCK_PRES_64 = PMC_PCK_PRES_CLK_64, //!< Set PCK clock prescaler to 64 + GENCLK_PCK_PRES_1 = PMC_PCK_PRES_CLK_1, //!< Set PCK clock prescaler to 1 + GENCLK_PCK_PRES_2 = PMC_PCK_PRES_CLK_2, //!< Set PCK clock prescaler to 2 + GENCLK_PCK_PRES_4 = PMC_PCK_PRES_CLK_4, //!< Set PCK clock prescaler to 4 + GENCLK_PCK_PRES_8 = PMC_PCK_PRES_CLK_8, //!< Set PCK clock prescaler to 8 + GENCLK_PCK_PRES_16 = PMC_PCK_PRES_CLK_16, //!< Set PCK clock prescaler to 16 + GENCLK_PCK_PRES_32 = PMC_PCK_PRES_CLK_32, //!< Set PCK clock prescaler to 32 + GENCLK_PCK_PRES_64 = PMC_PCK_PRES_CLK_64, //!< Set PCK clock prescaler to 64 }; //@} struct genclk_config { - uint32_t ctrl; + uint32_t ctrl; }; -static inline void genclk_config_defaults(struct genclk_config *p_cfg, - uint32_t ul_id) -{ - ul_id = ul_id; - p_cfg->ctrl = 0; +static inline void genclk_config_defaults(struct genclk_config *p_cfg, uint32_t ul_id) { + ul_id = ul_id; + p_cfg->ctrl = 0; } -static inline void genclk_config_read(struct genclk_config *p_cfg, - uint32_t ul_id) -{ - p_cfg->ctrl = PMC->PMC_PCK[ul_id]; +static inline void genclk_config_read(struct genclk_config *p_cfg, uint32_t ul_id) { + p_cfg->ctrl = PMC->PMC_PCK[ul_id]; } -static inline void genclk_config_write(const struct genclk_config *p_cfg, - uint32_t ul_id) -{ - PMC->PMC_PCK[ul_id] = p_cfg->ctrl; +static inline void genclk_config_write(const struct genclk_config *p_cfg, uint32_t ul_id) { + PMC->PMC_PCK[ul_id] = p_cfg->ctrl; } //! \name Programmable Clock Source and Prescaler configuration //@{ -static inline void genclk_config_set_source(struct genclk_config *p_cfg, - enum genclk_source e_src) -{ - p_cfg->ctrl &= (~PMC_PCK_CSS_Msk); - - switch (e_src) { - case GENCLK_PCK_SRC_SLCK_RC: - case GENCLK_PCK_SRC_SLCK_XTAL: - case GENCLK_PCK_SRC_SLCK_BYPASS: - p_cfg->ctrl |= (PMC_PCK_CSS_SLOW_CLK); - break; - - case GENCLK_PCK_SRC_MAINCK_4M_RC: - case GENCLK_PCK_SRC_MAINCK_8M_RC: - case GENCLK_PCK_SRC_MAINCK_12M_RC: - case GENCLK_PCK_SRC_MAINCK_XTAL: - case GENCLK_PCK_SRC_MAINCK_BYPASS: - p_cfg->ctrl |= (PMC_PCK_CSS_MAIN_CLK); - break; - - case GENCLK_PCK_SRC_PLLACK: - p_cfg->ctrl |= (PMC_PCK_CSS_PLLA_CLK); - break; - - case GENCLK_PCK_SRC_PLLBCK: - p_cfg->ctrl |= (PMC_PCK_CSS_UPLL_CLK); - break; - - case GENCLK_PCK_SRC_MCK: - p_cfg->ctrl |= (PMC_PCK_CSS_MCK); - break; - } +static inline void genclk_config_set_source(struct genclk_config *p_cfg, enum genclk_source e_src) { + p_cfg->ctrl &= (~PMC_PCK_CSS_Msk); + + switch (e_src) { + case GENCLK_PCK_SRC_SLCK_RC: + case GENCLK_PCK_SRC_SLCK_XTAL: + case GENCLK_PCK_SRC_SLCK_BYPASS: + p_cfg->ctrl |= (PMC_PCK_CSS_SLOW_CLK); + break; + + case GENCLK_PCK_SRC_MAINCK_4M_RC: + case GENCLK_PCK_SRC_MAINCK_8M_RC: + case GENCLK_PCK_SRC_MAINCK_12M_RC: + case GENCLK_PCK_SRC_MAINCK_XTAL: + case GENCLK_PCK_SRC_MAINCK_BYPASS: + p_cfg->ctrl |= (PMC_PCK_CSS_MAIN_CLK); + break; + + case GENCLK_PCK_SRC_PLLACK: + p_cfg->ctrl |= (PMC_PCK_CSS_PLLA_CLK); + break; + + case GENCLK_PCK_SRC_PLLBCK: + p_cfg->ctrl |= (PMC_PCK_CSS_UPLL_CLK); + break; + + case GENCLK_PCK_SRC_MCK: + p_cfg->ctrl |= (PMC_PCK_CSS_MCK); + break; + } } -static inline void genclk_config_set_divider(struct genclk_config *p_cfg, - uint32_t e_divider) -{ - p_cfg->ctrl &= ~PMC_PCK_PRES_Msk; - p_cfg->ctrl |= e_divider; +static inline void genclk_config_set_divider(struct genclk_config *p_cfg, uint32_t e_divider) { + p_cfg->ctrl &= ~PMC_PCK_PRES_Msk; + p_cfg->ctrl |= e_divider; } //@} -static inline void genclk_enable(const struct genclk_config *p_cfg, - uint32_t ul_id) -{ - PMC->PMC_PCK[ul_id] = p_cfg->ctrl; - pmc_enable_pck(ul_id); +static inline void genclk_enable(const struct genclk_config *p_cfg, uint32_t ul_id) { + PMC->PMC_PCK[ul_id] = p_cfg->ctrl; + pmc_enable_pck(ul_id); } -static inline void genclk_disable(uint32_t ul_id) -{ - pmc_disable_pck(ul_id); +static inline void genclk_disable(uint32_t ul_id) { + pmc_disable_pck(ul_id); } -static inline void genclk_enable_source(enum genclk_source e_src) -{ - switch (e_src) { - case GENCLK_PCK_SRC_SLCK_RC: - if (!osc_is_ready(OSC_SLCK_32K_RC)) { - osc_enable(OSC_SLCK_32K_RC); - osc_wait_ready(OSC_SLCK_32K_RC); - } - break; - - case GENCLK_PCK_SRC_SLCK_XTAL: - if (!osc_is_ready(OSC_SLCK_32K_XTAL)) { - osc_enable(OSC_SLCK_32K_XTAL); - osc_wait_ready(OSC_SLCK_32K_XTAL); - } - break; - - case GENCLK_PCK_SRC_SLCK_BYPASS: - if (!osc_is_ready(OSC_SLCK_32K_BYPASS)) { - osc_enable(OSC_SLCK_32K_BYPASS); - osc_wait_ready(OSC_SLCK_32K_BYPASS); - } - break; - - case GENCLK_PCK_SRC_MAINCK_4M_RC: - if (!osc_is_ready(OSC_MAINCK_4M_RC)) { - osc_enable(OSC_MAINCK_4M_RC); - osc_wait_ready(OSC_MAINCK_4M_RC); - } - break; - - case GENCLK_PCK_SRC_MAINCK_8M_RC: - if (!osc_is_ready(OSC_MAINCK_8M_RC)) { - osc_enable(OSC_MAINCK_8M_RC); - osc_wait_ready(OSC_MAINCK_8M_RC); - } - break; - - case GENCLK_PCK_SRC_MAINCK_12M_RC: - if (!osc_is_ready(OSC_MAINCK_12M_RC)) { - osc_enable(OSC_MAINCK_12M_RC); - osc_wait_ready(OSC_MAINCK_12M_RC); - } - break; - - case GENCLK_PCK_SRC_MAINCK_XTAL: - if (!osc_is_ready(OSC_MAINCK_XTAL)) { - osc_enable(OSC_MAINCK_XTAL); - osc_wait_ready(OSC_MAINCK_XTAL); - } - break; - - case GENCLK_PCK_SRC_MAINCK_BYPASS: - if (!osc_is_ready(OSC_MAINCK_BYPASS)) { - osc_enable(OSC_MAINCK_BYPASS); - osc_wait_ready(OSC_MAINCK_BYPASS); - } - break; - -#ifdef CONFIG_PLL0_SOURCE - case GENCLK_PCK_SRC_PLLACK: - pll_enable_config_defaults(0); - break; -#endif - -#ifdef CONFIG_PLL1_SOURCE - case GENCLK_PCK_SRC_PLLBCK: - pll_enable_config_defaults(1); - break; -#endif - - case GENCLK_PCK_SRC_MCK: - break; - - default: - Assert(false); - break; - } +static inline void genclk_enable_source(enum genclk_source e_src) { + switch (e_src) { + case GENCLK_PCK_SRC_SLCK_RC: + if (!osc_is_ready(OSC_SLCK_32K_RC)) { + osc_enable(OSC_SLCK_32K_RC); + osc_wait_ready(OSC_SLCK_32K_RC); + } + break; + + case GENCLK_PCK_SRC_SLCK_XTAL: + if (!osc_is_ready(OSC_SLCK_32K_XTAL)) { + osc_enable(OSC_SLCK_32K_XTAL); + osc_wait_ready(OSC_SLCK_32K_XTAL); + } + break; + + case GENCLK_PCK_SRC_SLCK_BYPASS: + if (!osc_is_ready(OSC_SLCK_32K_BYPASS)) { + osc_enable(OSC_SLCK_32K_BYPASS); + osc_wait_ready(OSC_SLCK_32K_BYPASS); + } + break; + + case GENCLK_PCK_SRC_MAINCK_4M_RC: + if (!osc_is_ready(OSC_MAINCK_4M_RC)) { + osc_enable(OSC_MAINCK_4M_RC); + osc_wait_ready(OSC_MAINCK_4M_RC); + } + break; + + case GENCLK_PCK_SRC_MAINCK_8M_RC: + if (!osc_is_ready(OSC_MAINCK_8M_RC)) { + osc_enable(OSC_MAINCK_8M_RC); + osc_wait_ready(OSC_MAINCK_8M_RC); + } + break; + + case GENCLK_PCK_SRC_MAINCK_12M_RC: + if (!osc_is_ready(OSC_MAINCK_12M_RC)) { + osc_enable(OSC_MAINCK_12M_RC); + osc_wait_ready(OSC_MAINCK_12M_RC); + } + break; + + case GENCLK_PCK_SRC_MAINCK_XTAL: + if (!osc_is_ready(OSC_MAINCK_XTAL)) { + osc_enable(OSC_MAINCK_XTAL); + osc_wait_ready(OSC_MAINCK_XTAL); + } + break; + + case GENCLK_PCK_SRC_MAINCK_BYPASS: + if (!osc_is_ready(OSC_MAINCK_BYPASS)) { + osc_enable(OSC_MAINCK_BYPASS); + osc_wait_ready(OSC_MAINCK_BYPASS); + } + break; + + #ifdef CONFIG_PLL0_SOURCE + case GENCLK_PCK_SRC_PLLACK: + pll_enable_config_defaults(0); + break; + #endif + + #ifdef CONFIG_PLL1_SOURCE + case GENCLK_PCK_SRC_PLLBCK: + pll_enable_config_defaults(1); + break; + #endif + + case GENCLK_PCK_SRC_MCK: + break; + + default: + Assert(false); + break; + } } //! @} diff --git a/Marlin/src/HAL/DUE/usb/osc.h b/Marlin/src/HAL/DUE/usb/osc.h index 953bcbbed1d3..c0ae24381a39 100644 --- a/Marlin/src/HAL/DUE/usb/osc.h +++ b/Marlin/src/HAL/DUE/usb/osc.h @@ -62,28 +62,28 @@ extern "C" { * should be defined by the board code, otherwise default value are used. */ #ifndef BOARD_FREQ_SLCK_XTAL -# warning The board slow clock xtal frequency has not been defined. -# define BOARD_FREQ_SLCK_XTAL (32768UL) + #warning The board slow clock xtal frequency has not been defined. + #define BOARD_FREQ_SLCK_XTAL (32768UL) #endif #ifndef BOARD_FREQ_SLCK_BYPASS -# warning The board slow clock bypass frequency has not been defined. -# define BOARD_FREQ_SLCK_BYPASS (32768UL) + #warning The board slow clock bypass frequency has not been defined. + #define BOARD_FREQ_SLCK_BYPASS (32768UL) #endif #ifndef BOARD_FREQ_MAINCK_XTAL -# warning The board main clock xtal frequency has not been defined. -# define BOARD_FREQ_MAINCK_XTAL (12000000UL) + #warning The board main clock xtal frequency has not been defined. + #define BOARD_FREQ_MAINCK_XTAL (12000000UL) #endif #ifndef BOARD_FREQ_MAINCK_BYPASS -# warning The board main clock bypass frequency has not been defined. -# define BOARD_FREQ_MAINCK_BYPASS (12000000UL) + #warning The board main clock bypass frequency has not been defined. + #define BOARD_FREQ_MAINCK_BYPASS (12000000UL) #endif #ifndef BOARD_OSC_STARTUP_US -# warning The board main clock xtal startup time has not been defined. -# define BOARD_OSC_STARTUP_US (15625UL) + #warning The board main clock xtal startup time has not been defined. + #define BOARD_OSC_STARTUP_US (15625UL) #endif /** @@ -115,122 +115,118 @@ extern "C" { #define OSC_MAINCK_BYPASS_HZ BOARD_FREQ_MAINCK_BYPASS //!< External bypass oscillator. //@} -static inline void osc_enable(uint32_t ul_id) -{ - switch (ul_id) { - case OSC_SLCK_32K_RC: - break; +static inline void osc_enable(uint32_t ul_id) { + switch (ul_id) { + case OSC_SLCK_32K_RC: + break; - case OSC_SLCK_32K_XTAL: - pmc_switch_sclk_to_32kxtal(PMC_OSC_XTAL); - break; + case OSC_SLCK_32K_XTAL: + pmc_switch_sclk_to_32kxtal(PMC_OSC_XTAL); + break; - case OSC_SLCK_32K_BYPASS: - pmc_switch_sclk_to_32kxtal(PMC_OSC_BYPASS); - break; + case OSC_SLCK_32K_BYPASS: + pmc_switch_sclk_to_32kxtal(PMC_OSC_BYPASS); + break; - case OSC_MAINCK_4M_RC: - pmc_switch_mainck_to_fastrc(CKGR_MOR_MOSCRCF_4_MHz); - break; + case OSC_MAINCK_4M_RC: + pmc_switch_mainck_to_fastrc(CKGR_MOR_MOSCRCF_4_MHz); + break; - case OSC_MAINCK_8M_RC: - pmc_switch_mainck_to_fastrc(CKGR_MOR_MOSCRCF_8_MHz); - break; + case OSC_MAINCK_8M_RC: + pmc_switch_mainck_to_fastrc(CKGR_MOR_MOSCRCF_8_MHz); + break; - case OSC_MAINCK_12M_RC: - pmc_switch_mainck_to_fastrc(CKGR_MOR_MOSCRCF_12_MHz); - break; + case OSC_MAINCK_12M_RC: + pmc_switch_mainck_to_fastrc(CKGR_MOR_MOSCRCF_12_MHz); + break; - case OSC_MAINCK_XTAL: - pmc_switch_mainck_to_xtal(PMC_OSC_XTAL/*, - pmc_us_to_moscxtst(BOARD_OSC_STARTUP_US, - OSC_SLCK_32K_RC_HZ)*/); - break; + case OSC_MAINCK_XTAL: + pmc_switch_mainck_to_xtal(PMC_OSC_XTAL/*, + pmc_us_to_moscxtst(BOARD_OSC_STARTUP_US, + OSC_SLCK_32K_RC_HZ)*/); + break; - case OSC_MAINCK_BYPASS: - pmc_switch_mainck_to_xtal(PMC_OSC_BYPASS/*, - pmc_us_to_moscxtst(BOARD_OSC_STARTUP_US, - OSC_SLCK_32K_RC_HZ)*/); - break; - } + case OSC_MAINCK_BYPASS: + pmc_switch_mainck_to_xtal(PMC_OSC_BYPASS/*, + pmc_us_to_moscxtst(BOARD_OSC_STARTUP_US, + OSC_SLCK_32K_RC_HZ)*/); + break; + } } -static inline void osc_disable(uint32_t ul_id) -{ - switch (ul_id) { - case OSC_SLCK_32K_RC: - case OSC_SLCK_32K_XTAL: - case OSC_SLCK_32K_BYPASS: - break; - - case OSC_MAINCK_4M_RC: - case OSC_MAINCK_8M_RC: - case OSC_MAINCK_12M_RC: - pmc_osc_disable_fastrc(); - break; - - case OSC_MAINCK_XTAL: - pmc_osc_disable_xtal(PMC_OSC_XTAL); - break; - - case OSC_MAINCK_BYPASS: - pmc_osc_disable_xtal(PMC_OSC_BYPASS); - break; - } +static inline void osc_disable(uint32_t ul_id) { + switch (ul_id) { + case OSC_SLCK_32K_RC: + case OSC_SLCK_32K_XTAL: + case OSC_SLCK_32K_BYPASS: + break; + + case OSC_MAINCK_4M_RC: + case OSC_MAINCK_8M_RC: + case OSC_MAINCK_12M_RC: + pmc_osc_disable_fastrc(); + break; + + case OSC_MAINCK_XTAL: + pmc_osc_disable_xtal(PMC_OSC_XTAL); + break; + + case OSC_MAINCK_BYPASS: + pmc_osc_disable_xtal(PMC_OSC_BYPASS); + break; + } } -static inline bool osc_is_ready(uint32_t ul_id) -{ - switch (ul_id) { - case OSC_SLCK_32K_RC: - return 1; - - case OSC_SLCK_32K_XTAL: - case OSC_SLCK_32K_BYPASS: - return pmc_osc_is_ready_32kxtal(); - - case OSC_MAINCK_4M_RC: - case OSC_MAINCK_8M_RC: - case OSC_MAINCK_12M_RC: - case OSC_MAINCK_XTAL: - case OSC_MAINCK_BYPASS: - return pmc_osc_is_ready_mainck(); - } - - return 0; +static inline bool osc_is_ready(uint32_t ul_id) { + switch (ul_id) { + case OSC_SLCK_32K_RC: + return 1; + + case OSC_SLCK_32K_XTAL: + case OSC_SLCK_32K_BYPASS: + return pmc_osc_is_ready_32kxtal(); + + case OSC_MAINCK_4M_RC: + case OSC_MAINCK_8M_RC: + case OSC_MAINCK_12M_RC: + case OSC_MAINCK_XTAL: + case OSC_MAINCK_BYPASS: + return pmc_osc_is_ready_mainck(); + } + + return 0; } -static inline uint32_t osc_get_rate(uint32_t ul_id) -{ - switch (ul_id) { - case OSC_SLCK_32K_RC: - return OSC_SLCK_32K_RC_HZ; +static inline uint32_t osc_get_rate(uint32_t ul_id) { + switch (ul_id) { + case OSC_SLCK_32K_RC: + return OSC_SLCK_32K_RC_HZ; - case OSC_SLCK_32K_XTAL: - return BOARD_FREQ_SLCK_XTAL; + case OSC_SLCK_32K_XTAL: + return BOARD_FREQ_SLCK_XTAL; - case OSC_SLCK_32K_BYPASS: - return BOARD_FREQ_SLCK_BYPASS; + case OSC_SLCK_32K_BYPASS: + return BOARD_FREQ_SLCK_BYPASS; - case OSC_MAINCK_4M_RC: - return OSC_MAINCK_4M_RC_HZ; + case OSC_MAINCK_4M_RC: + return OSC_MAINCK_4M_RC_HZ; - case OSC_MAINCK_8M_RC: - return OSC_MAINCK_8M_RC_HZ; + case OSC_MAINCK_8M_RC: + return OSC_MAINCK_8M_RC_HZ; - case OSC_MAINCK_12M_RC: - return OSC_MAINCK_12M_RC_HZ; + case OSC_MAINCK_12M_RC: + return OSC_MAINCK_12M_RC_HZ; - case OSC_MAINCK_XTAL: - return BOARD_FREQ_MAINCK_XTAL; + case OSC_MAINCK_XTAL: + return BOARD_FREQ_MAINCK_XTAL; - case OSC_MAINCK_BYPASS: - return BOARD_FREQ_MAINCK_BYPASS; - } + case OSC_MAINCK_BYPASS: + return BOARD_FREQ_MAINCK_BYPASS; + } - return 0; + return 0; } /** @@ -241,11 +237,10 @@ static inline uint32_t osc_get_rate(uint32_t ul_id) * * \param id A number identifying the oscillator to wait for. */ -static inline void osc_wait_ready(uint8_t id) -{ - while (!osc_is_ready(id)) { - /* Do nothing */ - } +static inline void osc_wait_ready(uint8_t id) { + while (!osc_is_ready(id)) { + /* Do nothing */ + } } //! @} diff --git a/Marlin/src/HAL/DUE/usb/pll.h b/Marlin/src/HAL/DUE/usb/pll.h index 8eaf27672b25..d25a1f65d09b 100644 --- a/Marlin/src/HAL/DUE/usb/pll.h +++ b/Marlin/src/HAL/DUE/usb/pll.h @@ -77,22 +77,22 @@ extern "C" { #define PLL_COUNT 0x3FU enum pll_source { - PLL_SRC_MAINCK_4M_RC = OSC_MAINCK_4M_RC, //!< Internal 4MHz RC oscillator. - PLL_SRC_MAINCK_8M_RC = OSC_MAINCK_8M_RC, //!< Internal 8MHz RC oscillator. - PLL_SRC_MAINCK_12M_RC = OSC_MAINCK_12M_RC, //!< Internal 12MHz RC oscillator. - PLL_SRC_MAINCK_XTAL = OSC_MAINCK_XTAL, //!< External crystal oscillator. - PLL_SRC_MAINCK_BYPASS = OSC_MAINCK_BYPASS, //!< External bypass oscillator. - PLL_NR_SOURCES, //!< Number of PLL sources. + PLL_SRC_MAINCK_4M_RC = OSC_MAINCK_4M_RC, //!< Internal 4MHz RC oscillator. + PLL_SRC_MAINCK_8M_RC = OSC_MAINCK_8M_RC, //!< Internal 8MHz RC oscillator. + PLL_SRC_MAINCK_12M_RC = OSC_MAINCK_12M_RC, //!< Internal 12MHz RC oscillator. + PLL_SRC_MAINCK_XTAL = OSC_MAINCK_XTAL, //!< External crystal oscillator. + PLL_SRC_MAINCK_BYPASS = OSC_MAINCK_BYPASS, //!< External bypass oscillator. + PLL_NR_SOURCES, //!< Number of PLL sources. }; struct pll_config { - uint32_t ctrl; + uint32_t ctrl; }; #define pll_get_default_rate(pll_id) \ - ((osc_get_rate(CONFIG_PLL##pll_id##_SOURCE) \ - * CONFIG_PLL##pll_id##_MUL) \ - / CONFIG_PLL##pll_id##_DIV) + ((osc_get_rate(CONFIG_PLL##pll_id##_SOURCE) \ + * CONFIG_PLL##pll_id##_MUL) \ + / CONFIG_PLL##pll_id##_DIV) /* Force UTMI PLL parameters (Hardware defined) */ #ifdef CONFIG_PLL1_SOURCE @@ -113,145 +113,130 @@ struct pll_config { * is hidden in this implementation. Use mul as mul effective value. */ static inline void pll_config_init(struct pll_config *p_cfg, - enum pll_source e_src, uint32_t ul_div, uint32_t ul_mul) -{ - uint32_t vco_hz; - - Assert(e_src < PLL_NR_SOURCES); - - if (ul_div == 0 && ul_mul == 0) { /* Must only be true for UTMI PLL */ - p_cfg->ctrl = CKGR_UCKR_UPLLCOUNT(PLL_COUNT); - } else { /* PLLA */ - /* Calculate internal VCO frequency */ - vco_hz = osc_get_rate(e_src) / ul_div; - Assert(vco_hz >= PLL_INPUT_MIN_HZ); - Assert(vco_hz <= PLL_INPUT_MAX_HZ); - - vco_hz *= ul_mul; - Assert(vco_hz >= PLL_OUTPUT_MIN_HZ); - Assert(vco_hz <= PLL_OUTPUT_MAX_HZ); - - /* PMC hardware will automatically make it mul+1 */ - p_cfg->ctrl = CKGR_PLLAR_MULA(ul_mul - 1) | CKGR_PLLAR_DIVA(ul_div) | CKGR_PLLAR_PLLACOUNT(PLL_COUNT); - } + enum pll_source e_src, uint32_t ul_div, uint32_t ul_mul) { + uint32_t vco_hz; + + Assert(e_src < PLL_NR_SOURCES); + + if (ul_div == 0 && ul_mul == 0) { /* Must only be true for UTMI PLL */ + p_cfg->ctrl = CKGR_UCKR_UPLLCOUNT(PLL_COUNT); + } + else { /* PLLA */ + /* Calculate internal VCO frequency */ + vco_hz = osc_get_rate(e_src) / ul_div; + Assert(vco_hz >= PLL_INPUT_MIN_HZ); + Assert(vco_hz <= PLL_INPUT_MAX_HZ); + + vco_hz *= ul_mul; + Assert(vco_hz >= PLL_OUTPUT_MIN_HZ); + Assert(vco_hz <= PLL_OUTPUT_MAX_HZ); + + /* PMC hardware will automatically make it mul+1 */ + p_cfg->ctrl = CKGR_PLLAR_MULA(ul_mul - 1) | CKGR_PLLAR_DIVA(ul_div) | CKGR_PLLAR_PLLACOUNT(PLL_COUNT); + } } -#define pll_config_defaults(cfg, pll_id) \ - pll_config_init(cfg, \ - CONFIG_PLL##pll_id##_SOURCE, \ - CONFIG_PLL##pll_id##_DIV, \ - CONFIG_PLL##pll_id##_MUL) - -static inline void pll_config_read(struct pll_config *p_cfg, uint32_t ul_pll_id) -{ - Assert(ul_pll_id < NR_PLLS); - - if (ul_pll_id == PLLA_ID) { - p_cfg->ctrl = PMC->CKGR_PLLAR; - } else { - p_cfg->ctrl = PMC->CKGR_UCKR; - } +#define pll_config_defaults(cfg, pll_id) \ + pll_config_init(cfg, \ + CONFIG_PLL##pll_id##_SOURCE, \ + CONFIG_PLL##pll_id##_DIV, \ + CONFIG_PLL##pll_id##_MUL) + +static inline void pll_config_read(struct pll_config *p_cfg, uint32_t ul_pll_id) { + Assert(ul_pll_id < NR_PLLS); + p_cfg->ctrl = ul_pll_id == PLLA_ID ? PMC->CKGR_PLLAR : PMC->CKGR_UCKR; } -static inline void pll_config_write(const struct pll_config *p_cfg, uint32_t ul_pll_id) -{ - Assert(ul_pll_id < NR_PLLS); +static inline void pll_config_write(const struct pll_config *p_cfg, uint32_t ul_pll_id) { + Assert(ul_pll_id < NR_PLLS); - if (ul_pll_id == PLLA_ID) { - pmc_disable_pllack(); // Always stop PLL first! - PMC->CKGR_PLLAR = CKGR_PLLAR_ONE | p_cfg->ctrl; - } else { - PMC->CKGR_UCKR = p_cfg->ctrl; - } + if (ul_pll_id == PLLA_ID) { + pmc_disable_pllack(); // Always stop PLL first! + PMC->CKGR_PLLAR = CKGR_PLLAR_ONE | p_cfg->ctrl; + } + else + PMC->CKGR_UCKR = p_cfg->ctrl; } -static inline void pll_enable(const struct pll_config *p_cfg, uint32_t ul_pll_id) -{ - Assert(ul_pll_id < NR_PLLS); +static inline void pll_enable(const struct pll_config *p_cfg, uint32_t ul_pll_id) { + Assert(ul_pll_id < NR_PLLS); - if (ul_pll_id == PLLA_ID) { - pmc_disable_pllack(); // Always stop PLL first! - PMC->CKGR_PLLAR = CKGR_PLLAR_ONE | p_cfg->ctrl; - } else { - PMC->CKGR_UCKR = p_cfg->ctrl | CKGR_UCKR_UPLLEN; - } + if (ul_pll_id == PLLA_ID) { + pmc_disable_pllack(); // Always stop PLL first! + PMC->CKGR_PLLAR = CKGR_PLLAR_ONE | p_cfg->ctrl; + } + else + PMC->CKGR_UCKR = p_cfg->ctrl | CKGR_UCKR_UPLLEN; } /** * \note This will only disable the selected PLL, not the underlying oscillator (mainck). */ -static inline void pll_disable(uint32_t ul_pll_id) -{ - Assert(ul_pll_id < NR_PLLS); - - if (ul_pll_id == PLLA_ID) { - pmc_disable_pllack(); - } else { - PMC->CKGR_UCKR &= ~CKGR_UCKR_UPLLEN; - } +static inline void pll_disable(uint32_t ul_pll_id) { + Assert(ul_pll_id < NR_PLLS); + + if (ul_pll_id == PLLA_ID) + pmc_disable_pllack(); + else + PMC->CKGR_UCKR &= ~CKGR_UCKR_UPLLEN; } -static inline uint32_t pll_is_locked(uint32_t ul_pll_id) -{ - Assert(ul_pll_id < NR_PLLS); +static inline uint32_t pll_is_locked(uint32_t ul_pll_id) { + Assert(ul_pll_id < NR_PLLS); - if (ul_pll_id == PLLA_ID) { - return pmc_is_locked_pllack(); - } else { - return pmc_is_locked_upll(); - } + if (ul_pll_id == PLLA_ID) + return pmc_is_locked_pllack(); + else + return pmc_is_locked_upll(); } -static inline void pll_enable_source(enum pll_source e_src) -{ - switch (e_src) { - case PLL_SRC_MAINCK_4M_RC: - case PLL_SRC_MAINCK_8M_RC: - case PLL_SRC_MAINCK_12M_RC: - case PLL_SRC_MAINCK_XTAL: - case PLL_SRC_MAINCK_BYPASS: - osc_enable(e_src); - osc_wait_ready(e_src); - break; - - default: - Assert(false); - break; - } +static inline void pll_enable_source(enum pll_source e_src) { + switch (e_src) { + case PLL_SRC_MAINCK_4M_RC: + case PLL_SRC_MAINCK_8M_RC: + case PLL_SRC_MAINCK_12M_RC: + case PLL_SRC_MAINCK_XTAL: + case PLL_SRC_MAINCK_BYPASS: + osc_enable(e_src); + osc_wait_ready(e_src); + break; + + default: + Assert(false); + break; + } } -static inline void pll_enable_config_defaults(unsigned int ul_pll_id) -{ - struct pll_config pllcfg; - - if (pll_is_locked(ul_pll_id)) { - return; // Pll already running - } - switch (ul_pll_id) { -#ifdef CONFIG_PLL0_SOURCE - case 0: - pll_enable_source(CONFIG_PLL0_SOURCE); - pll_config_init(&pllcfg, - CONFIG_PLL0_SOURCE, - CONFIG_PLL0_DIV, - CONFIG_PLL0_MUL); - break; -#endif -#ifdef CONFIG_PLL1_SOURCE - case 1: - pll_enable_source(CONFIG_PLL1_SOURCE); - pll_config_init(&pllcfg, - CONFIG_PLL1_SOURCE, - CONFIG_PLL1_DIV, - CONFIG_PLL1_MUL); - break; -#endif - default: - Assert(false); - break; - } - pll_enable(&pllcfg, ul_pll_id); - while (!pll_is_locked(ul_pll_id)); +static inline void pll_enable_config_defaults(unsigned int ul_pll_id) { + struct pll_config pllcfg; + + if (pll_is_locked(ul_pll_id)) return; // Pll already running + + switch (ul_pll_id) { + #ifdef CONFIG_PLL0_SOURCE + case 0: + pll_enable_source(CONFIG_PLL0_SOURCE); + pll_config_init(&pllcfg, + CONFIG_PLL0_SOURCE, + CONFIG_PLL0_DIV, + CONFIG_PLL0_MUL); + break; + #endif + #ifdef CONFIG_PLL1_SOURCE + case 1: + pll_enable_source(CONFIG_PLL1_SOURCE); + pll_config_init(&pllcfg, + CONFIG_PLL1_SOURCE, + CONFIG_PLL1_DIV, + CONFIG_PLL1_MUL); + break; + #endif + default: + Assert(false); + break; + } + pll_enable(&pllcfg, ul_pll_id); + while (!pll_is_locked(ul_pll_id)); } /** @@ -264,15 +249,12 @@ static inline void pll_enable_config_defaults(unsigned int ul_pll_id) * \retval STATUS_OK The PLL is now locked. * \retval ERR_TIMEOUT Timed out waiting for PLL to become locked. */ -static inline int pll_wait_for_lock(unsigned int pll_id) -{ - Assert(pll_id < NR_PLLS); +static inline int pll_wait_for_lock(unsigned int pll_id) { + Assert(pll_id < NR_PLLS); - while (!pll_is_locked(pll_id)) { - /* Do nothing */ - } + while (!pll_is_locked(pll_id)) { /* Do nothing */ } - return 0; + return 0; } //! @} diff --git a/Marlin/src/HAL/DUE/usb/sbc_protocol.h b/Marlin/src/HAL/DUE/usb/sbc_protocol.h index ab845739fd48..983ec7adca1c 100644 --- a/Marlin/src/HAL/DUE/usb/sbc_protocol.h +++ b/Marlin/src/HAL/DUE/usb/sbc_protocol.h @@ -57,7 +57,6 @@ #ifndef _SBC_PROTOCOL_H_ #define _SBC_PROTOCOL_H_ - /** * \ingroup usb_msc_protocol * \defgroup usb_sbc_protocol SCSI Block Commands protocol definitions @@ -81,82 +80,82 @@ //@{ enum scsi_sbc_mode { - SCSI_MS_MODE_RW_ERR_RECOV = 0x01, //!< Read-Write Error Recovery mode page - SCSI_MS_MODE_FORMAT_DEVICE = 0x03, //!< Format Device mode page - SCSI_MS_MODE_FLEXIBLE_DISK = 0x05, //!< Flexible Disk mode page - SCSI_MS_MODE_CACHING = 0x08, //!< Caching mode page + SCSI_MS_MODE_RW_ERR_RECOV = 0x01, //!< Read-Write Error Recovery mode page + SCSI_MS_MODE_FORMAT_DEVICE = 0x03, //!< Format Device mode page + SCSI_MS_MODE_FLEXIBLE_DISK = 0x05, //!< Flexible Disk mode page + SCSI_MS_MODE_CACHING = 0x08, //!< Caching mode page }; //! \name SBC-2 Device-Specific Parameter //@{ -#define SCSI_MS_SBC_WP 0x80 //!< Write Protected -#define SCSI_MS_SBC_DPOFUA 0x10 //!< DPO and FUA supported +#define SCSI_MS_SBC_WP 0x80 //!< Write Protected +#define SCSI_MS_SBC_DPOFUA 0x10 //!< DPO and FUA supported //@} /** * \brief SBC-2 Short LBA mode parameter block descriptor */ struct sbc_slba_block_desc { - be32_t nr_blocks; //!< Number of Blocks - be32_t block_len; //!< Block Length -#define SBC_SLBA_BLOCK_LEN_MASK 0x00FFFFFFU //!< Mask reserved bits + be32_t nr_blocks; //!< Number of Blocks + be32_t block_len; //!< Block Length +#define SBC_SLBA_BLOCK_LEN_MASK 0x00FFFFFFU //!< Mask reserved bits }; /** * \brief SBC-2 Caching mode page */ struct sbc_caching_mode_page { - uint8_t page_code; - uint8_t page_length; - uint8_t flags2; -#define SBC_MP_CACHE_IC (1 << 7) //!< Initiator Control -#define SBC_MP_CACHE_ABPF (1 << 6) //!< Abort Pre-Fetch -#define SBC_MP_CACHE_CAP (1 << 5) //!< Catching Analysis Permitted -#define SBC_MP_CACHE_DISC (1 << 4) //!< Discontinuity -#define SBC_MP_CACHE_SIZE (1 << 3) //!< Size enable -#define SBC_MP_CACHE_WCE (1 << 2) //!< Write back Cache Enable -#define SBC_MP_CACHE_MF (1 << 1) //!< Multiplication Factor -#define SBC_MP_CACHE_RCD (1 << 0) //!< Read Cache Disable - uint8_t retention; - be16_t dis_pf_transfer_len; - be16_t min_prefetch; - be16_t max_prefetch; - be16_t max_prefetch_ceil; - uint8_t flags12; -#define SBC_MP_CACHE_FSW (1 << 7) //!< Force Sequential Write -#define SBC_MP_CACHE_LBCSS (1 << 6) //!< Logical Blk Cache Seg Sz -#define SBC_MP_CACHE_DRA (1 << 5) //!< Disable Read-Ahead -#define SBC_MP_CACHE_NV_DIS (1 << 0) //!< Non-Volatile Cache Disable - uint8_t nr_cache_segments; - be16_t cache_segment_size; - uint8_t reserved[4]; + uint8_t page_code; + uint8_t page_length; + uint8_t flags2; +#define SBC_MP_CACHE_IC (1 << 7) //!< Initiator Control +#define SBC_MP_CACHE_ABPF (1 << 6) //!< Abort Pre-Fetch +#define SBC_MP_CACHE_CAP (1 << 5) //!< Catching Analysis Permitted +#define SBC_MP_CACHE_DISC (1 << 4) //!< Discontinuity +#define SBC_MP_CACHE_SIZE (1 << 3) //!< Size enable +#define SBC_MP_CACHE_WCE (1 << 2) //!< Write back Cache Enable +#define SBC_MP_CACHE_MF (1 << 1) //!< Multiplication Factor +#define SBC_MP_CACHE_RCD (1 << 0) //!< Read Cache Disable + uint8_t retention; + be16_t dis_pf_transfer_len; + be16_t min_prefetch; + be16_t max_prefetch; + be16_t max_prefetch_ceil; + uint8_t flags12; +#define SBC_MP_CACHE_FSW (1 << 7) //!< Force Sequential Write +#define SBC_MP_CACHE_LBCSS (1 << 6) //!< Logical Blk Cache Seg Sz +#define SBC_MP_CACHE_DRA (1 << 5) //!< Disable Read-Ahead +#define SBC_MP_CACHE_NV_DIS (1 << 0) //!< Non-Volatile Cache Disable + uint8_t nr_cache_segments; + be16_t cache_segment_size; + uint8_t reserved[4]; }; /** * \brief SBC-2 Read-Write Error Recovery mode page */ struct sbc_rdwr_error_recovery_mode_page { - uint8_t page_code; - uint8_t page_length; -#define SPC_MP_RW_ERR_RECOV_PAGE_LENGTH 0x0A - uint8_t flags1; -#define SBC_MP_RW_ERR_RECOV_AWRE (1 << 7) -#define SBC_MP_RW_ERR_RECOV_ARRE (1 << 6) -#define SBC_MP_RW_ERR_RECOV_TB (1 << 5) -#define SBC_MP_RW_ERR_RECOV_RC (1 << 4) -#define SBC_MP_RW_ERR_RECOV_ERR (1 << 3) -#define SBC_MP_RW_ERR_RECOV_PER (1 << 2) -#define SBC_MP_RW_ERR_RECOV_DTE (1 << 1) -#define SBC_MP_RW_ERR_RECOV_DCR (1 << 0) - uint8_t read_retry_count; - uint8_t correction_span; - uint8_t head_offset_count; - uint8_t data_strobe_offset_count; - uint8_t flags2; - uint8_t write_retry_count; - uint8_t flags3; - be16_t recovery_time_limit; + uint8_t page_code; + uint8_t page_length; + #define SPC_MP_RW_ERR_RECOV_PAGE_LENGTH 0x0A + uint8_t flags1; + #define SBC_MP_RW_ERR_RECOV_AWRE (1 << 7) + #define SBC_MP_RW_ERR_RECOV_ARRE (1 << 6) + #define SBC_MP_RW_ERR_RECOV_TB (1 << 5) + #define SBC_MP_RW_ERR_RECOV_RC (1 << 4) + #define SBC_MP_RW_ERR_RECOV_ERR (1 << 3) + #define SBC_MP_RW_ERR_RECOV_PER (1 << 2) + #define SBC_MP_RW_ERR_RECOV_DTE (1 << 1) + #define SBC_MP_RW_ERR_RECOV_DCR (1 << 0) + uint8_t read_retry_count; + uint8_t correction_span; + uint8_t head_offset_count; + uint8_t data_strobe_offset_count; + uint8_t flags2; + uint8_t write_retry_count; + uint8_t flags3; + be16_t recovery_time_limit; }; //@} @@ -164,8 +163,8 @@ struct sbc_rdwr_error_recovery_mode_page { * \brief SBC-2 READ CAPACITY (10) parameter data */ struct sbc_read_capacity10_data { - be32_t max_lba; //!< LBA of last logical block - be32_t block_len; //!< Number of bytes in the last logical block + be32_t max_lba; //!< LBA of last logical block + be32_t block_len; //!< Number of bytes in the last logical block }; //@} diff --git a/Marlin/src/HAL/DUE/usb/spc_protocol.h b/Marlin/src/HAL/DUE/usb/spc_protocol.h index d67cc5c78803..808c388f4fc4 100644 --- a/Marlin/src/HAL/DUE/usb/spc_protocol.h +++ b/Marlin/src/HAL/DUE/usb/spc_protocol.h @@ -59,23 +59,23 @@ //! \name SCSI commands defined by SPC-2 //@{ -#define SPC_TEST_UNIT_READY 0x00 -#define SPC_REQUEST_SENSE 0x03 -#define SPC_INQUIRY 0x12 -#define SPC_MODE_SELECT6 0x15 -#define SPC_MODE_SENSE6 0x1A -#define SPC_SEND_DIAGNOSTIC 0x1D -#define SPC_PREVENT_ALLOW_MEDIUM_REMOVAL 0x1E -#define SPC_MODE_SENSE10 0x5A -#define SPC_REPORT_LUNS 0xA0 +#define SPC_TEST_UNIT_READY 0x00 +#define SPC_REQUEST_SENSE 0x03 +#define SPC_INQUIRY 0x12 +#define SPC_MODE_SELECT6 0x15 +#define SPC_MODE_SENSE6 0x1A +#define SPC_SEND_DIAGNOSTIC 0x1D +#define SPC_PREVENT_ALLOW_MEDIUM_REMOVAL 0x1E +#define SPC_MODE_SENSE10 0x5A +#define SPC_REPORT_LUNS 0xA0 //@} //! \brief May be set in byte 0 of the INQUIRY CDB //@{ //! Enable Vital Product Data -#define SCSI_INQ_REQ_EVPD 0x01 +#define SCSI_INQ_REQ_EVPD 0x01 //! Command Support Data specified by the PAGE OR OPERATION CODE field -#define SCSI_INQ_REQ_CMDT 0x02 +#define SCSI_INQ_REQ_CMDT 0x02 //@} COMPILER_PACK_SET(1) @@ -84,110 +84,110 @@ COMPILER_PACK_SET(1) * \brief SCSI Standard Inquiry data structure */ struct scsi_inquiry_data { - uint8_t pq_pdt; //!< Peripheral Qual / Peripheral Dev Type -#define SCSI_INQ_PQ_CONNECTED 0x00 //!< Peripheral connected -#define SCSI_INQ_PQ_NOT_CONN 0x20 //!< Peripheral not connected -#define SCSI_INQ_PQ_NOT_SUPP 0x60 //!< Peripheral not supported -#define SCSI_INQ_DT_DIR_ACCESS 0x00 //!< Direct Access (SBC) -#define SCSI_INQ_DT_SEQ_ACCESS 0x01 //!< Sequential Access -#define SCSI_INQ_DT_PRINTER 0x02 //!< Printer -#define SCSI_INQ_DT_PROCESSOR 0x03 //!< Processor device -#define SCSI_INQ_DT_WRITE_ONCE 0x04 //!< Write-once device -#define SCSI_INQ_DT_CD_DVD 0x05 //!< CD/DVD device -#define SCSI_INQ_DT_OPTICAL 0x07 //!< Optical Memory -#define SCSI_INQ_DT_MC 0x08 //!< Medium Changer -#define SCSI_INQ_DT_ARRAY 0x0C //!< Storage Array Controller -#define SCSI_INQ_DT_ENCLOSURE 0x0D //!< Enclosure Services -#define SCSI_INQ_DT_RBC 0x0E //!< Simplified Direct Access -#define SCSI_INQ_DT_OCRW 0x0F //!< Optical card reader/writer -#define SCSI_INQ_DT_BCC 0x10 //!< Bridge Controller Commands -#define SCSI_INQ_DT_OSD 0x11 //!< Object-based Storage -#define SCSI_INQ_DT_NONE 0x1F //!< No Peripheral - uint8_t flags1; //!< Flags (byte 1) -#define SCSI_INQ_RMB 0x80 //!< Removable Medium - uint8_t version; //!< Version -#define SCSI_INQ_VER_NONE 0x00 //!< No standards conformance -#define SCSI_INQ_VER_SPC 0x03 //!< SCSI Primary Commands (link to SBC) -#define SCSI_INQ_VER_SPC2 0x04 //!< SCSI Primary Commands - 2 (link to SBC-2) -#define SCSI_INQ_VER_SPC3 0x05 //!< SCSI Primary Commands - 3 (link to SBC-2) -#define SCSI_INQ_VER_SPC4 0x06 //!< SCSI Primary Commands - 4 (link to SBC-3) - uint8_t flags3; //!< Flags (byte 3) -#define SCSI_INQ_NORMACA 0x20 //!< Normal ACA Supported -#define SCSI_INQ_HISUP 0x10 //!< Hierarchal LUN addressing -#define SCSI_INQ_RSP_SPC2 0x02 //!< SPC-2 / SPC-3 response format - uint8_t addl_len; //!< Additional Length (n-4) -#define SCSI_INQ_ADDL_LEN(tot) ((tot)-5) //!< Total length is \a tot - uint8_t flags5; //!< Flags (byte 5) -#define SCSI_INQ_SCCS 0x80 - uint8_t flags6; //!< Flags (byte 6) -#define SCSI_INQ_BQUE 0x80 -#define SCSI_INQ_ENCSERV 0x40 -#define SCSI_INQ_MULTIP 0x10 -#define SCSI_INQ_MCHGR 0x08 -#define SCSI_INQ_ADDR16 0x01 - uint8_t flags7; //!< Flags (byte 7) -#define SCSI_INQ_WBUS16 0x20 -#define SCSI_INQ_SYNC 0x10 -#define SCSI_INQ_LINKED 0x08 -#define SCSI_INQ_CMDQUE 0x02 - uint8_t vendor_id[8]; //!< T10 Vendor Identification - uint8_t product_id[16]; //!< Product Identification - uint8_t product_rev[4]; //!< Product Revision Level + uint8_t pq_pdt; //!< Peripheral Qual / Peripheral Dev Type + #define SCSI_INQ_PQ_CONNECTED 0x00 //!< Peripheral connected + #define SCSI_INQ_PQ_NOT_CONN 0x20 //!< Peripheral not connected + #define SCSI_INQ_PQ_NOT_SUPP 0x60 //!< Peripheral not supported + #define SCSI_INQ_DT_DIR_ACCESS 0x00 //!< Direct Access (SBC) + #define SCSI_INQ_DT_SEQ_ACCESS 0x01 //!< Sequential Access + #define SCSI_INQ_DT_PRINTER 0x02 //!< Printer + #define SCSI_INQ_DT_PROCESSOR 0x03 //!< Processor device + #define SCSI_INQ_DT_WRITE_ONCE 0x04 //!< Write-once device + #define SCSI_INQ_DT_CD_DVD 0x05 //!< CD/DVD device + #define SCSI_INQ_DT_OPTICAL 0x07 //!< Optical Memory + #define SCSI_INQ_DT_MC 0x08 //!< Medium Changer + #define SCSI_INQ_DT_ARRAY 0x0C //!< Storage Array Controller + #define SCSI_INQ_DT_ENCLOSURE 0x0D //!< Enclosure Services + #define SCSI_INQ_DT_RBC 0x0E //!< Simplified Direct Access + #define SCSI_INQ_DT_OCRW 0x0F //!< Optical card reader/writer + #define SCSI_INQ_DT_BCC 0x10 //!< Bridge Controller Commands + #define SCSI_INQ_DT_OSD 0x11 //!< Object-based Storage + #define SCSI_INQ_DT_NONE 0x1F //!< No Peripheral + uint8_t flags1; //!< Flags (byte 1) + #define SCSI_INQ_RMB 0x80 //!< Removable Medium + uint8_t version; //!< Version + #define SCSI_INQ_VER_NONE 0x00 //!< No standards conformance + #define SCSI_INQ_VER_SPC 0x03 //!< SCSI Primary Commands (link to SBC) + #define SCSI_INQ_VER_SPC2 0x04 //!< SCSI Primary Commands - 2 (link to SBC-2) + #define SCSI_INQ_VER_SPC3 0x05 //!< SCSI Primary Commands - 3 (link to SBC-2) + #define SCSI_INQ_VER_SPC4 0x06 //!< SCSI Primary Commands - 4 (link to SBC-3) + uint8_t flags3; //!< Flags (byte 3) + #define SCSI_INQ_NORMACA 0x20 //!< Normal ACA Supported + #define SCSI_INQ_HISUP 0x10 //!< Hierarchal LUN addressing + #define SCSI_INQ_RSP_SPC2 0x02 //!< SPC-2 / SPC-3 response format + uint8_t addl_len; //!< Additional Length (n-4) + #define SCSI_INQ_ADDL_LEN(tot) ((tot)-5) //!< Total length is \a tot + uint8_t flags5; //!< Flags (byte 5) + #define SCSI_INQ_SCCS 0x80 + uint8_t flags6; //!< Flags (byte 6) + #define SCSI_INQ_BQUE 0x80 + #define SCSI_INQ_ENCSERV 0x40 + #define SCSI_INQ_MULTIP 0x10 + #define SCSI_INQ_MCHGR 0x08 + #define SCSI_INQ_ADDR16 0x01 + uint8_t flags7; //!< Flags (byte 7) + #define SCSI_INQ_WBUS16 0x20 + #define SCSI_INQ_SYNC 0x10 + #define SCSI_INQ_LINKED 0x08 + #define SCSI_INQ_CMDQUE 0x02 + uint8_t vendor_id[8]; //!< T10 Vendor Identification + uint8_t product_id[16]; //!< Product Identification + uint8_t product_rev[4]; //!< Product Revision Level }; /** * \brief SCSI Standard Request sense data structure */ struct scsi_request_sense_data { - /* 1st byte: REQUEST SENSE response flags*/ - uint8_t valid_reponse_code; -#define SCSI_SENSE_VALID 0x80 //!< Indicates the INFORMATION field contains valid information -#define SCSI_SENSE_RESPONSE_CODE_MASK 0x7F -#define SCSI_SENSE_CURRENT 0x70 //!< Response code 70h (current errors) -#define SCSI_SENSE_DEFERRED 0x71 - - /* 2nd byte */ - uint8_t obsolete; - - /* 3rd byte */ - uint8_t sense_flag_key; -#define SCSI_SENSE_FILEMARK 0x80 //!< Indicates that the current command has read a filemark or setmark. -#define SCSI_SENSE_EOM 0x40 //!< Indicates that an end-of-medium condition exists. -#define SCSI_SENSE_ILI 0x20 //!< Indicates that the requested logical block length did not match the logical block length of the data on the medium. -#define SCSI_SENSE_RESERVED 0x10 //!< Reserved -#define SCSI_SENSE_KEY(x) (x&0x0F) //!< Sense Key - - /* 4th to 7th bytes - INFORMATION field */ - uint8_t information[4]; - - /* 8th byte - ADDITIONAL SENSE LENGTH field */ - uint8_t AddSenseLen; -#define SCSI_SENSE_ADDL_LEN(total_len) ((total_len) - 8) - - /* 9th to 12th byte - COMMAND-SPECIFIC INFORMATION field */ - uint8_t CmdSpecINFO[4]; - - /* 13th byte - ADDITIONAL SENSE CODE field */ - uint8_t AddSenseCode; - - /* 14th byte - ADDITIONAL SENSE CODE QUALIFIER field */ - uint8_t AddSnsCodeQlfr; - - /* 15th byte - FIELD REPLACEABLE UNIT CODE field */ - uint8_t FldReplUnitCode; - - /* 16th byte */ - uint8_t SenseKeySpec[3]; -#define SCSI_SENSE_SKSV 0x80 //!< Indicates the SENSE-KEY SPECIFIC field contains valid information + /* 1st byte: REQUEST SENSE response flags*/ + uint8_t valid_reponse_code; + #define SCSI_SENSE_VALID 0x80 //!< Indicates the INFORMATION field contains valid information + #define SCSI_SENSE_RESPONSE_CODE_MASK 0x7F + #define SCSI_SENSE_CURRENT 0x70 //!< Response code 70h (current errors) + #define SCSI_SENSE_DEFERRED 0x71 + + /* 2nd byte */ + uint8_t obsolete; + + /* 3rd byte */ + uint8_t sense_flag_key; + #define SCSI_SENSE_FILEMARK 0x80 //!< Indicates that the current command has read a filemark or setmark. + #define SCSI_SENSE_EOM 0x40 //!< Indicates that an end-of-medium condition exists. + #define SCSI_SENSE_ILI 0x20 //!< Indicates that the requested logical block length did not match the logical block length of the data on the medium. + #define SCSI_SENSE_RESERVED 0x10 //!< Reserved + #define SCSI_SENSE_KEY(x) (x&0x0F) //!< Sense Key + + /* 4th to 7th bytes - INFORMATION field */ + uint8_t information[4]; + + /* 8th byte - ADDITIONAL SENSE LENGTH field */ + uint8_t AddSenseLen; + #define SCSI_SENSE_ADDL_LEN(total_len) ((total_len) - 8) + + /* 9th to 12th byte - COMMAND-SPECIFIC INFORMATION field */ + uint8_t CmdSpecINFO[4]; + + /* 13th byte - ADDITIONAL SENSE CODE field */ + uint8_t AddSenseCode; + + /* 14th byte - ADDITIONAL SENSE CODE QUALIFIER field */ + uint8_t AddSnsCodeQlfr; + + /* 15th byte - FIELD REPLACEABLE UNIT CODE field */ + uint8_t FldReplUnitCode; + + /* 16th byte */ + uint8_t SenseKeySpec[3]; + #define SCSI_SENSE_SKSV 0x80 //!< Indicates the SENSE-KEY SPECIFIC field contains valid information }; COMPILER_PACK_RESET() /* Vital Product Data page codes */ enum scsi_vpd_page_code { - SCSI_VPD_SUPPORTED_PAGES = 0x00, - SCSI_VPD_UNIT_SERIAL_NUMBER = 0x80, - SCSI_VPD_DEVICE_IDENTIFICATION = 0x83, + SCSI_VPD_SUPPORTED_PAGES = 0x00, + SCSI_VPD_UNIT_SERIAL_NUMBER = 0x80, + SCSI_VPD_DEVICE_IDENTIFICATION = 0x83, }; #define SCSI_VPD_HEADER_SIZE 4 @@ -200,37 +200,36 @@ enum scsi_vpd_page_code { #define SCSI_VPD_ID_TYPE_T10 1 - /* Sense keys */ enum scsi_sense_key { - SCSI_SK_NO_SENSE = 0x0, - SCSI_SK_RECOVERED_ERROR = 0x1, - SCSI_SK_NOT_READY = 0x2, - SCSI_SK_MEDIUM_ERROR = 0x3, - SCSI_SK_HARDWARE_ERROR = 0x4, - SCSI_SK_ILLEGAL_REQUEST = 0x5, - SCSI_SK_UNIT_ATTENTION = 0x6, - SCSI_SK_DATA_PROTECT = 0x7, - SCSI_SK_BLANK_CHECK = 0x8, - SCSI_SK_VENDOR_SPECIFIC = 0x9, - SCSI_SK_COPY_ABORTED = 0xA, - SCSI_SK_ABORTED_COMMAND = 0xB, - SCSI_SK_VOLUME_OVERFLOW = 0xD, - SCSI_SK_MISCOMPARE = 0xE, + SCSI_SK_NO_SENSE = 0x0, + SCSI_SK_RECOVERED_ERROR = 0x1, + SCSI_SK_NOT_READY = 0x2, + SCSI_SK_MEDIUM_ERROR = 0x3, + SCSI_SK_HARDWARE_ERROR = 0x4, + SCSI_SK_ILLEGAL_REQUEST = 0x5, + SCSI_SK_UNIT_ATTENTION = 0x6, + SCSI_SK_DATA_PROTECT = 0x7, + SCSI_SK_BLANK_CHECK = 0x8, + SCSI_SK_VENDOR_SPECIFIC = 0x9, + SCSI_SK_COPY_ABORTED = 0xA, + SCSI_SK_ABORTED_COMMAND = 0xB, + SCSI_SK_VOLUME_OVERFLOW = 0xD, + SCSI_SK_MISCOMPARE = 0xE, }; /* Additional Sense Code / Additional Sense Code Qualifier pairs */ enum scsi_asc_ascq { - SCSI_ASC_NO_ADDITIONAL_SENSE_INFO = 0x0000, - SCSI_ASC_LU_NOT_READY_REBUILD_IN_PROGRESS = 0x0405, - SCSI_ASC_WRITE_ERROR = 0x0C00, - SCSI_ASC_UNRECOVERED_READ_ERROR = 0x1100, - SCSI_ASC_INVALID_COMMAND_OPERATION_CODE = 0x2000, - SCSI_ASC_INVALID_FIELD_IN_CDB = 0x2400, - SCSI_ASC_WRITE_PROTECTED = 0x2700, - SCSI_ASC_NOT_READY_TO_READY_CHANGE = 0x2800, - SCSI_ASC_MEDIUM_NOT_PRESENT = 0x3A00, - SCSI_ASC_INTERNAL_TARGET_FAILURE = 0x4400, + SCSI_ASC_NO_ADDITIONAL_SENSE_INFO = 0x0000, + SCSI_ASC_LU_NOT_READY_REBUILD_IN_PROGRESS = 0x0405, + SCSI_ASC_WRITE_ERROR = 0x0C00, + SCSI_ASC_UNRECOVERED_READ_ERROR = 0x1100, + SCSI_ASC_INVALID_COMMAND_OPERATION_CODE = 0x2000, + SCSI_ASC_INVALID_FIELD_IN_CDB = 0x2400, + SCSI_ASC_WRITE_PROTECTED = 0x2700, + SCSI_ASC_NOT_READY_TO_READY_CHANGE = 0x2800, + SCSI_ASC_MEDIUM_NOT_PRESENT = 0x3A00, + SCSI_ASC_INTERNAL_TARGET_FAILURE = 0x4400, }; /** @@ -240,9 +239,9 @@ enum scsi_asc_ascq { * that are applicable to all SCSI devices. */ enum scsi_spc_mode { - SCSI_MS_MODE_VENDOR_SPEC = 0x00, - SCSI_MS_MODE_INFEXP = 0x1C, // Informational exceptions control page - SCSI_MS_MODE_ALL = 0x3F, + SCSI_MS_MODE_VENDOR_SPEC = 0x00, + SCSI_MS_MODE_INFEXP = 0x1C, // Informational exceptions control page + SCSI_MS_MODE_ALL = 0x3F, }; /** @@ -250,51 +249,45 @@ enum scsi_spc_mode { * See chapter 8.3.8 */ struct spc_control_page_info_execpt { - uint8_t page_code; - uint8_t page_length; -#define SPC_MP_INFEXP_PAGE_LENGTH 0x0A - uint8_t flags1; -#define SPC_MP_INFEXP_PERF (1<<7) //!< Initiator Control -#define SPC_MP_INFEXP_EBF (1<<5) //!< Caching Analysis Permitted -#define SPC_MP_INFEXP_EWASC (1<<4) //!< Discontinuity -#define SPC_MP_INFEXP_DEXCPT (1<<3) //!< Size enable -#define SPC_MP_INFEXP_TEST (1<<2) //!< Writeback Cache Enable -#define SPC_MP_INFEXP_LOGERR (1<<0) //!< Log errors bit - uint8_t mrie; -#define SPC_MP_INFEXP_MRIE_NO_REPORT 0x00 -#define SPC_MP_INFEXP_MRIE_ASYNC_EVENT 0x01 -#define SPC_MP_INFEXP_MRIE_GEN_UNIT 0x02 -#define SPC_MP_INFEXP_MRIE_COND_RECOV_ERROR 0x03 -#define SPC_MP_INFEXP_MRIE_UNCOND_RECOV_ERROR 0x04 -#define SPC_MP_INFEXP_MRIE_NO_SENSE 0x05 -#define SPC_MP_INFEXP_MRIE_ONLY_REPORT 0x06 - be32_t interval_timer; - be32_t report_count; + uint8_t page_code; + uint8_t page_length; + #define SPC_MP_INFEXP_PAGE_LENGTH 0x0A + uint8_t flags1; + #define SPC_MP_INFEXP_PERF (1<<7) //!< Initiator Control + #define SPC_MP_INFEXP_EBF (1<<5) //!< Caching Analysis Permitted + #define SPC_MP_INFEXP_EWASC (1<<4) //!< Discontinuity + #define SPC_MP_INFEXP_DEXCPT (1<<3) //!< Size enable + #define SPC_MP_INFEXP_TEST (1<<2) //!< Writeback Cache Enable + #define SPC_MP_INFEXP_LOGERR (1<<0) //!< Log errors bit + uint8_t mrie; + #define SPC_MP_INFEXP_MRIE_NO_REPORT 0x00 + #define SPC_MP_INFEXP_MRIE_ASYNC_EVENT 0x01 + #define SPC_MP_INFEXP_MRIE_GEN_UNIT 0x02 + #define SPC_MP_INFEXP_MRIE_COND_RECOV_ERROR 0x03 + #define SPC_MP_INFEXP_MRIE_UNCOND_RECOV_ERROR 0x04 + #define SPC_MP_INFEXP_MRIE_NO_SENSE 0x05 + #define SPC_MP_INFEXP_MRIE_ONLY_REPORT 0x06 + be32_t interval_timer; + be32_t report_count; }; - enum scsi_spc_mode_sense_pc { - SCSI_MS_SENSE_PC_CURRENT = 0, - SCSI_MS_SENSE_PC_CHANGEABLE = 1, - SCSI_MS_SENSE_PC_DEFAULT = 2, - SCSI_MS_SENSE_PC_SAVED = 3, + SCSI_MS_SENSE_PC_CURRENT = 0, + SCSI_MS_SENSE_PC_CHANGEABLE = 1, + SCSI_MS_SENSE_PC_DEFAULT = 2, + SCSI_MS_SENSE_PC_SAVED = 3, }; - - -static inline bool scsi_mode_sense_dbd_is_set(const uint8_t * cdb) -{ - return (cdb[1] >> 3) & 1; +static inline bool scsi_mode_sense_dbd_is_set(const uint8_t * cdb) { + return (cdb[1] >> 3) & 1; } -static inline uint8_t scsi_mode_sense_get_page_code(const uint8_t * cdb) -{ - return cdb[2] & 0x3F; +static inline uint8_t scsi_mode_sense_get_page_code(const uint8_t * cdb) { + return cdb[2] & 0x3F; } -static inline uint8_t scsi_mode_sense_get_pc(const uint8_t * cdb) -{ - return cdb[2] >> 6; +static inline uint8_t scsi_mode_sense_get_pc(const uint8_t * cdb) { + return cdb[2] >> 6; } /** @@ -302,10 +295,10 @@ static inline uint8_t scsi_mode_sense_get_pc(const uint8_t * cdb) * SENSE(6) */ struct scsi_mode_param_header6 { - uint8_t mode_data_length; //!< Number of bytes after this - uint8_t medium_type; //!< Medium Type - uint8_t device_specific_parameter; //!< Defined by command set - uint8_t block_descriptor_length; //!< Length of block descriptors + uint8_t mode_data_length; //!< Number of bytes after this + uint8_t medium_type; //!< Medium Type + uint8_t device_specific_parameter; //!< Defined by command set + uint8_t block_descriptor_length; //!< Length of block descriptors }; /** @@ -313,23 +306,23 @@ struct scsi_mode_param_header6 { * SENSE(10) */ struct scsi_mode_param_header10 { - be16_t mode_data_length; //!< Number of bytes after this - uint8_t medium_type; //!< Medium Type - uint8_t device_specific_parameter; //!< Defined by command set - uint8_t flags4; //!< LONGLBA in bit 0 - uint8_t reserved; - be16_t block_descriptor_length; //!< Length of block descriptors + be16_t mode_data_length; //!< Number of bytes after this + uint8_t medium_type; //!< Medium Type + uint8_t device_specific_parameter; //!< Defined by command set + uint8_t flags4; //!< LONGLBA in bit 0 + uint8_t reserved; + be16_t block_descriptor_length; //!< Length of block descriptors }; /** * \brief SCSI Page_0 Mode Page header (SPF not set) */ struct scsi_mode_page_0_header { - uint8_t page_code; -#define SCSI_PAGE_CODE_PS (1 << 7) //!< Parameters Saveable -#define SCSI_PAGE_CODE_SPF (1 << 6) //!< SubPage Format - uint8_t page_length; //!< Number of bytes after this -#define SCSI_MS_PAGE_LEN(total) ((total) - 2) + uint8_t page_code; +#define SCSI_PAGE_CODE_PS (1 << 7) //!< Parameters Saveable +#define SCSI_PAGE_CODE_SPF (1 << 6) //!< SubPage Format + uint8_t page_length; //!< Number of bytes after this +#define SCSI_MS_PAGE_LEN(total) ((total) - 2) }; //@} diff --git a/Marlin/src/HAL/DUE/usb/sysclk.h b/Marlin/src/HAL/DUE/usb/sysclk.h index 16db8c86d373..062337861502 100644 --- a/Marlin/src/HAL/DUE/usb/sysclk.h +++ b/Marlin/src/HAL/DUE/usb/sysclk.h @@ -71,7 +71,7 @@ * \subsection sysclk_quickstart_use_case_1_setup_steps Initialization code * Add to the application initialization code: * \code - sysclk_init(); + sysclk_init(); \endcode * * \subsection sysclk_quickstart_use_case_1_setup_steps_workflow Workflow @@ -82,15 +82,15 @@ * Add or uncomment the following in your conf_clock.h header file, commenting out all other * definitions of the same symbol(s): * \code - #define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_PLLACK + #define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_PLLACK - // Fpll0 = (Fclk * PLL_mul) / PLL_div - #define CONFIG_PLL0_SOURCE PLL_SRC_MAINCK_XTAL - #define CONFIG_PLL0_MUL (84000000UL / BOARD_FREQ_MAINCK_XTAL) - #define CONFIG_PLL0_DIV 1 + // Fpll0 = (Fclk * PLL_mul) / PLL_div + #define CONFIG_PLL0_SOURCE PLL_SRC_MAINCK_XTAL + #define CONFIG_PLL0_MUL (84000000UL / BOARD_FREQ_MAINCK_XTAL) + #define CONFIG_PLL0_DIV 1 - // Fbus = Fsys / BUS_div - #define CONFIG_SYSCLK_PRES SYSCLK_PRES_1 + // Fbus = Fsys / BUS_div + #define CONFIG_SYSCLK_PRES SYSCLK_PRES_1 \endcode * * \subsection sysclk_quickstart_use_case_1_example_workflow Workflow @@ -100,14 +100,14 @@ * \code #define CONFIG_PLL0_SOURCE PLL_SRC_MAINCK_XTAL \endcode * -# Configure the PLL module to multiply the external fast crystal oscillator frequency up to 84MHz: * \code - #define CONFIG_PLL0_MUL (84000000UL / BOARD_FREQ_MAINCK_XTAL) - #define CONFIG_PLL0_DIV 1 + #define CONFIG_PLL0_MUL (84000000UL / BOARD_FREQ_MAINCK_XTAL) + #define CONFIG_PLL0_DIV 1 \endcode * \note For user boards, \c BOARD_FREQ_MAINCK_XTAL should be defined in the board \c conf_board.h configuration * file as the frequency of the fast crystal attached to the microcontroller. * -# Configure the main clock to run at the full 84MHz, disable scaling of the main system clock speed: * \code - #define CONFIG_SYSCLK_PRES SYSCLK_PRES_1 + #define CONFIG_SYSCLK_PRES SYSCLK_PRES_1 \endcode * \note Some dividers are powers of two, while others are integer division factors. Refer to the * formulas in the conf_clock.h template commented above each division define. @@ -136,7 +136,7 @@ extern "C" { * initialization. */ #ifndef CONFIG_SYSCLK_SOURCE -# define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_4M_RC + #define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_4M_RC #endif /** * \def CONFIG_SYSCLK_PRES @@ -149,7 +149,7 @@ extern "C" { * after initialization. */ #ifndef CONFIG_SYSCLK_PRES -# define CONFIG_SYSCLK_PRES 0 + #define CONFIG_SYSCLK_PRES 0 #endif //@} @@ -197,7 +197,7 @@ extern "C" { * USB is not required. */ #ifdef __DOXYGEN__ -# define CONFIG_USBCLK_SOURCE + #define CONFIG_USBCLK_SOURCE #endif /** @@ -209,7 +209,7 @@ extern "C" { * defined. */ #ifdef __DOXYGEN__ -# define CONFIG_USBCLK_DIV + #define CONFIG_USBCLK_DIV #endif diff --git a/Marlin/src/HAL/DUE/usb/udc.h b/Marlin/src/HAL/DUE/usb/udc.h index 8d92eb5c038a..6230a81b359c 100644 --- a/Marlin/src/HAL/DUE/usb/udc.h +++ b/Marlin/src/HAL/DUE/usb/udc.h @@ -144,15 +144,15 @@ extern "C" { * \code #define USB_DEVICE_ATTACH_AUTO_DISABLE \endcode * User C file contains: * \code - // Authorize VBUS monitoring - if (!udc_include_vbus_monitoring()) { - // Implement custom VBUS monitoring via GPIO or other - } - Event_VBUS_present() // VBUS interrupt or GPIO interrupt or other - { - // Attach USB Device - udc_attach(); - } + // Authorize VBUS monitoring + if (!udc_include_vbus_monitoring()) { + // Implement custom VBUS monitoring via GPIO or other + } + Event_VBUS_present() // VBUS interrupt or GPIO interrupt or other + { + // Attach USB Device + udc_attach(); + } \endcode * * - Case of battery charging. conf_usb.h file contains define @@ -160,21 +160,20 @@ extern "C" { * \code #define USB_DEVICE_ATTACH_AUTO_DISABLE \endcode * User C file contains: * \code - Event VBUS present() // VBUS interrupt or GPIO interrupt or .. - { - // Authorize battery charging, but wait key press to start USB. - } - Event Key press() - { - // Stop batteries charging - // Start USB - udc_attach(); - } + Event VBUS present() // VBUS interrupt or GPIO interrupt or .. + { + // Authorize battery charging, but wait key press to start USB. + } + Event Key press() + { + // Stop batteries charging + // Start USB + udc_attach(); + } \endcode */ -static inline bool udc_include_vbus_monitoring(void) -{ - return udd_include_vbus_monitoring(); +static inline bool udc_include_vbus_monitoring(void) { + return udd_include_vbus_monitoring(); } /*! \brief Start the USB Device stack @@ -192,32 +191,26 @@ void udc_stop(void); * then it will attach device when an acceptable Vbus * level from the host is detected. */ -static inline void udc_attach(void) -{ - udd_attach(); +static inline void udc_attach(void) { + udd_attach(); } - /** * \brief Detaches the device from the bus * * The driver must remove pull-up on USB line D- or D+. */ -static inline void udc_detach(void) -{ - udd_detach(); +static inline void udc_detach(void) { + udd_detach(); } - /*! \brief The USB driver sends a resume signal called \e "Upstream Resume" * This is authorized only when the remote wakeup feature is enabled by host. */ -static inline void udc_remotewakeup(void) -{ - udd_send_remotewakeup(); +static inline void udc_remotewakeup(void) { + udd_send_remotewakeup(); } - /** * \brief Returns a pointer on the current interface descriptor * @@ -296,23 +289,23 @@ usb_iface_desc_t UDC_DESC_STORAGE *udc_get_interface_desc(void); * * for AVR and SAM3/4 devices, add to the initialization code: * \code - sysclk_init(); - irq_initialize_vectors(); - cpu_irq_enable(); - board_init(); - sleepmgr_init(); // Optional + sysclk_init(); + irq_initialize_vectors(); + cpu_irq_enable(); + board_init(); + sleepmgr_init(); // Optional \endcode * * For SAMD devices, add to the initialization code: * \code - system_init(); - irq_initialize_vectors(); - cpu_irq_enable(); - sleepmgr_init(); // Optional + system_init(); + irq_initialize_vectors(); + cpu_irq_enable(); + sleepmgr_init(); // Optional \endcode * Add to the main IDLE loop: * \code - sleepmgr_enter_sleep(); // Optional + sleepmgr_enter_sleep(); // Optional \endcode * */ @@ -324,20 +317,20 @@ usb_iface_desc_t UDC_DESC_STORAGE *udc_get_interface_desc(void); * * Content of conf_usb.h: * \code - #define USB_DEVICE_VENDOR_ID 0x03EB - #define USB_DEVICE_PRODUCT_ID 0xXXXX - #define USB_DEVICE_MAJOR_VERSION 1 - #define USB_DEVICE_MINOR_VERSION 0 - #define USB_DEVICE_POWER 100 - #define USB_DEVICE_ATTR USB_CONFIG_ATTR_BUS_POWERED + #define USB_DEVICE_VENDOR_ID 0x03EB + #define USB_DEVICE_PRODUCT_ID 0xXXXX + #define USB_DEVICE_MAJOR_VERSION 1 + #define USB_DEVICE_MINOR_VERSION 0 + #define USB_DEVICE_POWER 100 + #define USB_DEVICE_ATTR USB_CONFIG_ATTR_BUS_POWERED \endcode * * Add to application C-file: * \code - void usb_init(void) - { - udc_start(); - } + void usb_init(void) + { + udc_start(); + } \endcode */ @@ -349,17 +342,17 @@ usb_iface_desc_t UDC_DESC_STORAGE *udc_get_interface_desc(void); * -# Ensure that conf_usb.h is available and contains the following configuration * which is the main USB device configuration: * - \code // Vendor ID provided by USB org (ATMEL 0x03EB) - #define USB_DEVICE_VENDOR_ID 0x03EB // Type Word - // Product ID (Atmel PID referenced in usb_atmel.h) - #define USB_DEVICE_PRODUCT_ID 0xXXXX // Type Word - // Major version of the device - #define USB_DEVICE_MAJOR_VERSION 1 // Type Byte - // Minor version of the device - #define USB_DEVICE_MINOR_VERSION 0 // Type Byte - // Maximum device power (mA) - #define USB_DEVICE_POWER 100 // Type 9-bits - // USB attributes to enable features - #define USB_DEVICE_ATTR USB_CONFIG_ATTR_BUS_POWERED // Flags \endcode + #define USB_DEVICE_VENDOR_ID 0x03EB // Type Word + // Product ID (Atmel PID referenced in usb_atmel.h) + #define USB_DEVICE_PRODUCT_ID 0xXXXX // Type Word + // Major version of the device + #define USB_DEVICE_MAJOR_VERSION 1 // Type Byte + // Minor version of the device + #define USB_DEVICE_MINOR_VERSION 0 // Type Byte + // Maximum device power (mA) + #define USB_DEVICE_POWER 100 // Type 9-bits + // USB attributes to enable features + #define USB_DEVICE_ATTR USB_CONFIG_ATTR_BUS_POWERED // Flags \endcode * -# Call the USB device stack start function to enable stack and start USB: * - \code udc_start(); \endcode * \note In case of USB dual roles (Device and Host) managed through USB OTG connector @@ -372,90 +365,90 @@ usb_iface_desc_t UDC_DESC_STORAGE *udc_get_interface_desc(void); * * Content of XMEGA conf_clock.h: * \code - // Configuration based on internal RC: - // USB clock need of 48Mhz - #define CONFIG_USBCLK_SOURCE USBCLK_SRC_RCOSC - #define CONFIG_OSC_RC32_CAL 48000000UL - #define CONFIG_OSC_AUTOCAL_RC32MHZ_REF_OSC OSC_ID_USBSOF - // CPU clock need of clock > 12MHz to run with USB (Here 24MHz) - #define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_RC32MHZ - #define CONFIG_SYSCLK_PSADIV SYSCLK_PSADIV_2 - #define CONFIG_SYSCLK_PSBCDIV SYSCLK_PSBCDIV_1_1 + // Configuration based on internal RC: + // USB clock need of 48Mhz + #define CONFIG_USBCLK_SOURCE USBCLK_SRC_RCOSC + #define CONFIG_OSC_RC32_CAL 48000000UL + #define CONFIG_OSC_AUTOCAL_RC32MHZ_REF_OSC OSC_ID_USBSOF + // CPU clock need of clock > 12MHz to run with USB (Here 24MHz) + #define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_RC32MHZ + #define CONFIG_SYSCLK_PSADIV SYSCLK_PSADIV_2 + #define CONFIG_SYSCLK_PSBCDIV SYSCLK_PSBCDIV_1_1 \endcode * * Content of conf_clock.h for AT32UC3A0, AT32UC3A1, AT32UC3B devices (USBB): * \code - // Configuration based on 12MHz external OSC: - #define CONFIG_PLL1_SOURCE PLL_SRC_OSC0 - #define CONFIG_PLL1_MUL 8 - #define CONFIG_PLL1_DIV 2 - #define CONFIG_USBCLK_SOURCE USBCLK_SRC_PLL1 - #define CONFIG_USBCLK_DIV 1 // Fusb = Fsys/(2 ^ USB_div) + // Configuration based on 12MHz external OSC: + #define CONFIG_PLL1_SOURCE PLL_SRC_OSC0 + #define CONFIG_PLL1_MUL 8 + #define CONFIG_PLL1_DIV 2 + #define CONFIG_USBCLK_SOURCE USBCLK_SRC_PLL1 + #define CONFIG_USBCLK_DIV 1 // Fusb = Fsys/(2 ^ USB_div) \endcode * * Content of conf_clock.h for AT32UC3A3, AT32UC3A4 devices (USBB with high speed support): * \code - // Configuration based on 12MHz external OSC: - #define CONFIG_USBCLK_SOURCE USBCLK_SRC_OSC0 - #define CONFIG_USBCLK_DIV 1 // Fusb = Fsys/(2 ^ USB_div) + // Configuration based on 12MHz external OSC: + #define CONFIG_USBCLK_SOURCE USBCLK_SRC_OSC0 + #define CONFIG_USBCLK_DIV 1 // Fusb = Fsys/(2 ^ USB_div) \endcode * * Content of conf_clock.h for AT32UC3C, ATUCXXD, ATUCXXL3U, ATUCXXL4U devices (USBC): * \code - // Configuration based on 12MHz external OSC: - #define CONFIG_PLL1_SOURCE PLL_SRC_OSC0 - #define CONFIG_PLL1_MUL 8 - #define CONFIG_PLL1_DIV 2 - #define CONFIG_USBCLK_SOURCE USBCLK_SRC_PLL1 - #define CONFIG_USBCLK_DIV 1 // Fusb = Fsys/(2 ^ USB_div) - // CPU clock need of clock > 25MHz to run with USBC - #define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_PLL1 + // Configuration based on 12MHz external OSC: + #define CONFIG_PLL1_SOURCE PLL_SRC_OSC0 + #define CONFIG_PLL1_MUL 8 + #define CONFIG_PLL1_DIV 2 + #define CONFIG_USBCLK_SOURCE USBCLK_SRC_PLL1 + #define CONFIG_USBCLK_DIV 1 // Fusb = Fsys/(2 ^ USB_div) + // CPU clock need of clock > 25MHz to run with USBC + #define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_PLL1 \endcode * * Content of conf_clock.h for SAM3S, SAM3SD, SAM4S devices (UPD: USB Peripheral Device): * \code - // PLL1 (B) Options (Fpll = (Fclk * PLL_mul) / PLL_div) - #define CONFIG_PLL1_SOURCE PLL_SRC_MAINCK_XTAL - #define CONFIG_PLL1_MUL 16 - #define CONFIG_PLL1_DIV 2 - // USB Clock Source Options (Fusb = FpllX / USB_div) - #define CONFIG_USBCLK_SOURCE USBCLK_SRC_PLL1 - #define CONFIG_USBCLK_DIV 2 + // PLL1 (B) Options (Fpll = (Fclk * PLL_mul) / PLL_div) + #define CONFIG_PLL1_SOURCE PLL_SRC_MAINCK_XTAL + #define CONFIG_PLL1_MUL 16 + #define CONFIG_PLL1_DIV 2 + // USB Clock Source Options (Fusb = FpllX / USB_div) + #define CONFIG_USBCLK_SOURCE USBCLK_SRC_PLL1 + #define CONFIG_USBCLK_DIV 2 \endcode * * Content of conf_clock.h for SAM3U device (UPDHS: USB Peripheral Device High Speed): * \code - // USB Clock Source fixed at UPLL. + // USB Clock Source fixed at UPLL. \endcode * * Content of conf_clock.h for SAM3X, SAM3A devices (UOTGHS: USB OTG High Speed): * \code - // USB Clock Source fixed at UPLL. - #define CONFIG_USBCLK_SOURCE USBCLK_SRC_UPLL - #define CONFIG_USBCLK_DIV 1 + // USB Clock Source fixed at UPLL. + #define CONFIG_USBCLK_SOURCE USBCLK_SRC_UPLL + #define CONFIG_USBCLK_DIV 1 \endcode * * Content of conf_clocks.h for SAMD devices (USB): * \code - // System clock bus configuration - # define CONF_CLOCK_FLASH_WAIT_STATES 2 - - // USB Clock Source fixed at DFLL. - // SYSTEM_CLOCK_SOURCE_DFLL configuration - Digital Frequency Locked Loop - # define CONF_CLOCK_DFLL_ENABLE true - # define CONF_CLOCK_DFLL_LOOP_MODE SYSTEM_CLOCK_DFLL_LOOP_MODE_USB_RECOVERY - # define CONF_CLOCK_DFLL_ON_DEMAND true - - // Set this to true to configure the GCLK when running clocks_init. - // If set to false, none of the GCLK generators will be configured in clocks_init(). - # define CONF_CLOCK_CONFIGURE_GCLK true - - // Configure GCLK generator 0 (Main Clock) - # define CONF_CLOCK_GCLK_0_ENABLE true - # define CONF_CLOCK_GCLK_0_RUN_IN_STANDBY true - # define CONF_CLOCK_GCLK_0_CLOCK_SOURCE SYSTEM_CLOCK_SOURCE_DFLL - # define CONF_CLOCK_GCLK_0_PRESCALER 1 - # define CONF_CLOCK_GCLK_0_OUTPUT_ENABLE false + // System clock bus configuration + # define CONF_CLOCK_FLASH_WAIT_STATES 2 + + // USB Clock Source fixed at DFLL. + // SYSTEM_CLOCK_SOURCE_DFLL configuration - Digital Frequency Locked Loop + # define CONF_CLOCK_DFLL_ENABLE true + # define CONF_CLOCK_DFLL_LOOP_MODE SYSTEM_CLOCK_DFLL_LOOP_MODE_USB_RECOVERY + # define CONF_CLOCK_DFLL_ON_DEMAND true + + // Set this to true to configure the GCLK when running clocks_init. + // If set to false, none of the GCLK generators will be configured in clocks_init(). + # define CONF_CLOCK_CONFIGURE_GCLK true + + // Configure GCLK generator 0 (Main Clock) + # define CONF_CLOCK_GCLK_0_ENABLE true + # define CONF_CLOCK_GCLK_0_RUN_IN_STANDBY true + # define CONF_CLOCK_GCLK_0_CLOCK_SOURCE SYSTEM_CLOCK_SOURCE_DFLL + # define CONF_CLOCK_GCLK_0_PRESCALER 1 + # define CONF_CLOCK_GCLK_0_OUTPUT_ENABLE false \endcode */ @@ -474,34 +467,34 @@ usb_iface_desc_t UDC_DESC_STORAGE *udc_get_interface_desc(void); * \subsection udc_use_case_1_usage_code Example code * Content of conf_usb.h: * \code - #if // Low speed - #define USB_DEVICE_LOW_SPEED - // #define USB_DEVICE_HS_SUPPORT + #if // Low speed + #define USB_DEVICE_LOW_SPEED + // #define USB_DEVICE_HS_SUPPORT - #elif // Full speed - // #define USB_DEVICE_LOW_SPEED - // #define USB_DEVICE_HS_SUPPORT + #elif // Full speed + // #define USB_DEVICE_LOW_SPEED + // #define USB_DEVICE_HS_SUPPORT - #elif // High speed - // #define USB_DEVICE_LOW_SPEED - #define USB_DEVICE_HS_SUPPORT + #elif // High speed + // #define USB_DEVICE_LOW_SPEED + #define USB_DEVICE_HS_SUPPORT - #endif + #endif \endcode * * \subsection udc_use_case_1_usage_flow Workflow * -# Ensure that conf_usb.h is available and contains the following parameters * required for a USB device low speed (1.5Mbit/s): * - \code #define USB_DEVICE_LOW_SPEED - //#define USB_DEVICE_HS_SUPPORT \endcode + //#define USB_DEVICE_HS_SUPPORT \endcode * -# Ensure that conf_usb.h contains the following parameters * required for a USB device full speed (12Mbit/s): * - \code //#define USB_DEVICE_LOW_SPEED - //#define USB_DEVICE_HS_SUPPORT \endcode + //#define USB_DEVICE_HS_SUPPORT \endcode * -# Ensure that conf_usb.h contains the following parameters * required for a USB device high speed (480Mbit/s): * - \code //#define USB_DEVICE_LOW_SPEED - #define USB_DEVICE_HS_SUPPORT \endcode + #define USB_DEVICE_HS_SUPPORT \endcode */ /** @@ -518,20 +511,20 @@ usb_iface_desc_t UDC_DESC_STORAGE *udc_get_interface_desc(void); * \subsection udc_use_case_2_usage_code Example code * Content of conf_usb.h: * \code - #define USB_DEVICE_MANUFACTURE_NAME "Manufacture name" - #define USB_DEVICE_PRODUCT_NAME "Product name" - #define USB_DEVICE_SERIAL_NAME "12...EF" + #define USB_DEVICE_MANUFACTURE_NAME "Manufacture name" + #define USB_DEVICE_PRODUCT_NAME "Product name" + #define USB_DEVICE_SERIAL_NAME "12...EF" \endcode * * \subsection udc_use_case_2_usage_flow Workflow * -# Ensure that conf_usb.h is available and contains the following parameters * required to enable different USB strings: * - \code // Static ASCII name for the manufacture - #define USB_DEVICE_MANUFACTURE_NAME "Manufacture name" \endcode + #define USB_DEVICE_MANUFACTURE_NAME "Manufacture name" \endcode * - \code // Static ASCII name for the product - #define USB_DEVICE_PRODUCT_NAME "Product name" \endcode + #define USB_DEVICE_PRODUCT_NAME "Product name" \endcode * - \code // Static ASCII name to enable and set a serial number - #define USB_DEVICE_SERIAL_NAME "12...EF" \endcode + #define USB_DEVICE_SERIAL_NAME "12...EF" \endcode */ /** @@ -548,42 +541,42 @@ usb_iface_desc_t UDC_DESC_STORAGE *udc_get_interface_desc(void); * \subsection udc_use_case_3_usage_code Example code * Content of conf_usb.h: * \code - #define USB_DEVICE_ATTR \ - (USB_CONFIG_ATTR_REMOTE_WAKEUP | USB_CONFIG_ATTR_..._POWERED) - #define UDC_REMOTEWAKEUP_ENABLE() my_callback_remotewakeup_enable() - extern void my_callback_remotewakeup_enable(void); - #define UDC_REMOTEWAKEUP_DISABLE() my_callback_remotewakeup_disable() - extern void my_callback_remotewakeup_disable(void); + #define USB_DEVICE_ATTR \ + (USB_CONFIG_ATTR_REMOTE_WAKEUP | USB_CONFIG_ATTR_..._POWERED) + #define UDC_REMOTEWAKEUP_ENABLE() my_callback_remotewakeup_enable() + extern void my_callback_remotewakeup_enable(void); + #define UDC_REMOTEWAKEUP_DISABLE() my_callback_remotewakeup_disable() + extern void my_callback_remotewakeup_disable(void); \endcode * * Add to application C-file: * \code - void my_callback_remotewakeup_enable(void) - { - // Enable application wakeup events (e.g. enable GPIO interrupt) - } - void my_callback_remotewakeup_disable(void) - { - // Disable application wakeup events (e.g. disable GPIO interrupt) - } - - void my_interrupt_event(void) - { - udc_remotewakeup(); - } + void my_callback_remotewakeup_enable(void) + { + // Enable application wakeup events (e.g. enable GPIO interrupt) + } + void my_callback_remotewakeup_disable(void) + { + // Disable application wakeup events (e.g. disable GPIO interrupt) + } + + void my_interrupt_event(void) + { + udc_remotewakeup(); + } \endcode * * \subsection udc_use_case_3_usage_flow Workflow * -# Ensure that conf_usb.h is available and contains the following parameters * required to enable remote wakeup feature: * - \code // Authorizes the remote wakeup feature - #define USB_DEVICE_ATTR (USB_CONFIG_ATTR_REMOTE_WAKEUP | USB_CONFIG_ATTR_..._POWERED) \endcode + #define USB_DEVICE_ATTR (USB_CONFIG_ATTR_REMOTE_WAKEUP | USB_CONFIG_ATTR_..._POWERED) \endcode * - \code // Define callback called when the host enables the remotewakeup feature - #define UDC_REMOTEWAKEUP_ENABLE() my_callback_remotewakeup_enable() - extern void my_callback_remotewakeup_enable(void); \endcode + #define UDC_REMOTEWAKEUP_ENABLE() my_callback_remotewakeup_enable() + extern void my_callback_remotewakeup_enable(void); \endcode * - \code // Define callback called when the host disables the remotewakeup feature - #define UDC_REMOTEWAKEUP_DISABLE() my_callback_remotewakeup_disable() - extern void my_callback_remotewakeup_disable(void); \endcode + #define UDC_REMOTEWAKEUP_DISABLE() my_callback_remotewakeup_disable() + extern void my_callback_remotewakeup_disable(void); \endcode * -# Send a remote wakeup (USB upstream): * - \code udc_remotewakeup(); \endcode */ @@ -603,40 +596,40 @@ usb_iface_desc_t UDC_DESC_STORAGE *udc_get_interface_desc(void); * \subsection udc_use_case_5_usage_code Example code * Content of conf_usb.h: * \code - #define USB_DEVICE_ATTR (USB_CONFIG_ATTR_BUS_POWERED) - #define UDC_SUSPEND_EVENT() user_callback_suspend_action() - extern void user_callback_suspend_action(void) - #define UDC_RESUME_EVENT() user_callback_resume_action() - extern void user_callback_resume_action(void) + #define USB_DEVICE_ATTR (USB_CONFIG_ATTR_BUS_POWERED) + #define UDC_SUSPEND_EVENT() user_callback_suspend_action() + extern void user_callback_suspend_action(void) + #define UDC_RESUME_EVENT() user_callback_resume_action() + extern void user_callback_resume_action(void) \endcode * * Add to application C-file: * \code - void user_callback_suspend_action(void) - { - // Disable hardware component to reduce power consumption - } - void user_callback_resume_action(void) - { - // Re-enable hardware component - } + void user_callback_suspend_action(void) + { + // Disable hardware component to reduce power consumption + } + void user_callback_resume_action(void) + { + // Re-enable hardware component + } \endcode * * \subsection udc_use_case_5_usage_flow Workflow * -# Ensure that conf_usb.h is available and contains the following parameters: * - \code // Authorizes the BUS power feature - #define USB_DEVICE_ATTR (USB_CONFIG_ATTR_BUS_POWERED) \endcode + #define USB_DEVICE_ATTR (USB_CONFIG_ATTR_BUS_POWERED) \endcode * - \code // Define callback called when the host suspend the USB line - #define UDC_SUSPEND_EVENT() user_callback_suspend_action() - extern void user_callback_suspend_action(void); \endcode + #define UDC_SUSPEND_EVENT() user_callback_suspend_action() + extern void user_callback_suspend_action(void); \endcode * - \code // Define callback called when the host or device resume the USB line - #define UDC_RESUME_EVENT() user_callback_resume_action() - extern void user_callback_resume_action(void); \endcode + #define UDC_RESUME_EVENT() user_callback_resume_action() + extern void user_callback_resume_action(void); \endcode * -# Reduce power consumption in suspend mode (max. 2.5mA on Vbus): * - \code void user_callback_suspend_action(void) - { - turn_off_components(); - } \endcode + { + turn_off_components(); + } \endcode */ /** @@ -654,42 +647,42 @@ usb_iface_desc_t UDC_DESC_STORAGE *udc_get_interface_desc(void); * \subsection udc_use_case_6_usage_code Example code * Content of conf_usb.h: * \code - #define USB_DEVICE_SERIAL_NAME - #define USB_DEVICE_GET_SERIAL_NAME_POINTER serial_number - #define USB_DEVICE_GET_SERIAL_NAME_LENGTH 12 - extern uint8_t serial_number[]; + #define USB_DEVICE_SERIAL_NAME + #define USB_DEVICE_GET_SERIAL_NAME_POINTER serial_number + #define USB_DEVICE_GET_SERIAL_NAME_LENGTH 12 + extern uint8_t serial_number[]; \endcode * * Add to application C-file: * \code - uint8_t serial_number[USB_DEVICE_GET_SERIAL_NAME_LENGTH]; + uint8_t serial_number[USB_DEVICE_GET_SERIAL_NAME_LENGTH]; - void init_build_usb_serial_number(void) - { - serial_number[0] = 'A'; - serial_number[1] = 'B'; - ... - serial_number[USB_DEVICE_GET_SERIAL_NAME_LENGTH-1] = 'C'; - } \endcode + void init_build_usb_serial_number(void) + { + serial_number[0] = 'A'; + serial_number[1] = 'B'; + ... + serial_number[USB_DEVICE_GET_SERIAL_NAME_LENGTH-1] = 'C'; + } \endcode * * \subsection udc_use_case_6_usage_flow Workflow * -# Ensure that conf_usb.h is available and contains the following parameters * required to enable a USB serial number strings dynamically: * - \code #define USB_DEVICE_SERIAL_NAME // Define this empty - #define USB_DEVICE_GET_SERIAL_NAME_POINTER serial_number // Give serial array pointer - #define USB_DEVICE_GET_SERIAL_NAME_LENGTH 12 // Give size of serial array - extern uint8_t serial_number[]; // Declare external serial array \endcode + #define USB_DEVICE_GET_SERIAL_NAME_POINTER serial_number // Give serial array pointer + #define USB_DEVICE_GET_SERIAL_NAME_LENGTH 12 // Give size of serial array + extern uint8_t serial_number[]; // Declare external serial array \endcode * -# Before start USB stack, initialize the serial array * - \code - uint8_t serial_number[USB_DEVICE_GET_SERIAL_NAME_LENGTH]; - - void init_build_usb_serial_number(void) - { - serial_number[0] = 'A'; - serial_number[1] = 'B'; - ... - serial_number[USB_DEVICE_GET_SERIAL_NAME_LENGTH-1] = 'C'; - } \endcode + uint8_t serial_number[USB_DEVICE_GET_SERIAL_NAME_LENGTH]; + + void init_build_usb_serial_number(void) + { + serial_number[0] = 'A'; + serial_number[1] = 'B'; + ... + serial_number[USB_DEVICE_GET_SERIAL_NAME_LENGTH-1] = 'C'; + } \endcode */ diff --git a/Marlin/src/HAL/DUE/usb/udc_desc.h b/Marlin/src/HAL/DUE/usb/udc_desc.h index 052ca08eca78..f1f328d035c3 100644 --- a/Marlin/src/HAL/DUE/usb/udc_desc.h +++ b/Marlin/src/HAL/DUE/usb/udc_desc.h @@ -78,50 +78,47 @@ extern "C" { * For Mega application used "code". */ #define UDC_DESC_STORAGE - // Descriptor storage in internal RAM + // Descriptor storage in internal RAM #if (defined UDC_DATA_USE_HRAM_SUPPORT) -# if defined(__GNUC__) -# define UDC_DATA(x) COMPILER_WORD_ALIGNED __attribute__((__section__(".data_hram0"))) -# define UDC_BSS(x) COMPILER_ALIGNED(x) __attribute__((__section__(".bss_hram0"))) -# elif defined(__ICCAVR32__) -# define UDC_DATA(x) COMPILER_ALIGNED(x) __data32 -# define UDC_BSS(x) COMPILER_ALIGNED(x) __data32 -# endif + #if defined(__GNUC__) + #define UDC_DATA(x) COMPILER_WORD_ALIGNED __attribute__((__section__(".data_hram0"))) + #define UDC_BSS(x) COMPILER_ALIGNED(x) __attribute__((__section__(".bss_hram0"))) +#elif defined(__ICCAVR32__) + #define UDC_DATA(x) COMPILER_ALIGNED(x) __data32 + #define UDC_BSS(x) COMPILER_ALIGNED(x) __data32 +#endif #else -# define UDC_DATA(x) COMPILER_ALIGNED(x) -# define UDC_BSS(x) COMPILER_ALIGNED(x) + #define UDC_DATA(x) COMPILER_ALIGNED(x) + #define UDC_BSS(x) COMPILER_ALIGNED(x) #endif - - /** * \brief Configuration descriptor and UDI link for one USB speed */ typedef struct { - //! USB configuration descriptor - usb_conf_desc_t UDC_DESC_STORAGE *desc; - //! Array of UDI API pointer - udi_api_t UDC_DESC_STORAGE *UDC_DESC_STORAGE * udi_apis; + //! USB configuration descriptor + usb_conf_desc_t UDC_DESC_STORAGE *desc; + //! Array of UDI API pointer + udi_api_t UDC_DESC_STORAGE *UDC_DESC_STORAGE * udi_apis; } udc_config_speed_t; - /** * \brief All information about the USB Device */ typedef struct { - //! USB device descriptor for low or full speed - usb_dev_desc_t UDC_DESC_STORAGE *confdev_lsfs; - //! USB configuration descriptor and UDI API pointers for low or full speed - udc_config_speed_t UDC_DESC_STORAGE *conf_lsfs; -#ifdef USB_DEVICE_HS_SUPPORT - //! USB device descriptor for high speed - usb_dev_desc_t UDC_DESC_STORAGE *confdev_hs; - //! USB device qualifier, only use in high speed mode - usb_dev_qual_desc_t UDC_DESC_STORAGE *qualifier; - //! USB configuration descriptor and UDI API pointers for high speed - udc_config_speed_t UDC_DESC_STORAGE *conf_hs; -#endif - usb_dev_bos_desc_t UDC_DESC_STORAGE *conf_bos; + //! USB device descriptor for low or full speed + usb_dev_desc_t UDC_DESC_STORAGE *confdev_lsfs; + //! USB configuration descriptor and UDI API pointers for low or full speed + udc_config_speed_t UDC_DESC_STORAGE *conf_lsfs; + #ifdef USB_DEVICE_HS_SUPPORT + //! USB device descriptor for high speed + usb_dev_desc_t UDC_DESC_STORAGE *confdev_hs; + //! USB device qualifier, only use in high speed mode + usb_dev_qual_desc_t UDC_DESC_STORAGE *qualifier; + //! USB configuration descriptor and UDI API pointers for high speed + udc_config_speed_t UDC_DESC_STORAGE *conf_hs; + #endif + usb_dev_bos_desc_t UDC_DESC_STORAGE *conf_bos; } udc_config_t; //! Global variables of USB Device Descriptor and UDI links diff --git a/Marlin/src/HAL/DUE/usb/udd.h b/Marlin/src/HAL/DUE/usb/udd.h index 319d8842f744..6eda465e54a4 100644 --- a/Marlin/src/HAL/DUE/usb/udd.h +++ b/Marlin/src/HAL/DUE/usb/udd.h @@ -71,8 +71,8 @@ typedef uint8_t udd_ep_id_t; //! \brief Endpoint transfer status //! Returned in parameters of callback register via udd_ep_run routine. typedef enum { - UDD_EP_TRANSFER_OK = 0, - UDD_EP_TRANSFER_ABORT = 1, + UDD_EP_TRANSFER_OK = 0, + UDD_EP_TRANSFER_ABORT = 1, } udd_ep_status_t; /** @@ -82,41 +82,37 @@ typedef enum { * It can be updated by udc_process_setup() from UDC or *setup() from UDIs. */ typedef struct { - //! Data received in USB SETUP packet - //! Note: The swap of "req.wValues" from uin16_t to le16_t is done by UDD. - usb_setup_req_t req; + //! Data received in USB SETUP packet + //! Note: The swap of "req.wValues" from uin16_t to le16_t is done by UDD. + usb_setup_req_t req; - //! Point to buffer to send or fill with data following SETUP packet - //! This buffer must be word align for DATA IN phase (use prefix COMPILER_WORD_ALIGNED for buffer) - uint8_t *payload; + //! Point to buffer to send or fill with data following SETUP packet + //! This buffer must be word align for DATA IN phase (use prefix COMPILER_WORD_ALIGNED for buffer) + uint8_t *payload; - //! Size of buffer to send or fill, and content the number of byte transferred - uint16_t payload_size; + //! Size of buffer to send or fill, and content the number of byte transferred + uint16_t payload_size; - //! Callback called after reception of ZLP from setup request - void (*callback)(void); + //! Callback called after reception of ZLP from setup request + void (*callback)(void); - //! Callback called when the buffer given (.payload) is full or empty. - //! This one return false to abort data transfer, or true with a new buffer in .payload. - bool (*over_under_run)(void); + //! Callback called when the buffer given (.payload) is full or empty. + //! This one return false to abort data transfer, or true with a new buffer in .payload. + bool (*over_under_run)(void); } udd_ctrl_request_t; extern udd_ctrl_request_t udd_g_ctrlreq; //! Return true if the setup request \a udd_g_ctrlreq indicates IN data transfer -#define Udd_setup_is_in() \ - (USB_REQ_DIR_IN == (udd_g_ctrlreq.req.bmRequestType & USB_REQ_DIR_MASK)) +#define Udd_setup_is_in() (USB_REQ_DIR_IN == (udd_g_ctrlreq.req.bmRequestType & USB_REQ_DIR_MASK)) //! Return true if the setup request \a udd_g_ctrlreq indicates OUT data transfer -#define Udd_setup_is_out() \ - (USB_REQ_DIR_OUT == (udd_g_ctrlreq.req.bmRequestType & USB_REQ_DIR_MASK)) +#define Udd_setup_is_out() (USB_REQ_DIR_OUT == (udd_g_ctrlreq.req.bmRequestType & USB_REQ_DIR_MASK)) //! Return the type of the SETUP request \a udd_g_ctrlreq. \see usb_reqtype. -#define Udd_setup_type() \ - (udd_g_ctrlreq.req.bmRequestType & USB_REQ_TYPE_MASK) +#define Udd_setup_type() (udd_g_ctrlreq.req.bmRequestType & USB_REQ_TYPE_MASK) //! Return the recipient of the SETUP request \a udd_g_ctrlreq. \see usb_recipient -#define Udd_setup_recipient() \ - (udd_g_ctrlreq.req.bmRequestType & USB_REQ_RECIP_MASK) +#define Udd_setup_recipient() (udd_g_ctrlreq.req.bmRequestType & USB_REQ_RECIP_MASK) /** * \brief End of halt callback function type. @@ -134,8 +130,7 @@ typedef void (*udd_callback_halt_cleared_t)(void); * \param status UDD_EP_TRANSFER_ABORT, if transfer is aborted * \param n number of data transferred */ -typedef void (*udd_callback_trans_t) (udd_ep_status_t status, - iram_size_t nb_transferred, udd_ep_id_t ep); +typedef void (*udd_callback_trans_t) (udd_ep_status_t status, iram_size_t nb_transferred, udd_ep_id_t ep); /** * \brief Authorizes the VBUS event @@ -239,8 +234,7 @@ void udd_set_setup_payload( uint8_t *payload, uint16_t payload_size ); * * \return \c 1 if the endpoint is enabled, otherwise \c 0. */ -bool udd_ep_alloc(udd_ep_id_t ep, uint8_t bmAttributes, - uint16_t MaxEndpointSize); +bool udd_ep_alloc(udd_ep_id_t ep, uint8_t bmAttributes, uint16_t MaxEndpointSize); /** * \brief Disables an endpoint @@ -294,8 +288,7 @@ bool udd_ep_clear_halt(udd_ep_id_t ep); * * \return \c 1 if the register is accepted, otherwise \c 0. */ -bool udd_ep_wait_stall_clear(udd_ep_id_t ep, - udd_callback_halt_cleared_t callback); +bool udd_ep_wait_stall_clear(udd_ep_id_t ep, udd_callback_halt_cleared_t callback); /** * \brief Allows to receive or send data on an endpoint @@ -321,9 +314,8 @@ bool udd_ep_wait_stall_clear(udd_ep_id_t ep, * * \return \c 1 if function was successfully done, otherwise \c 0. */ -bool udd_ep_run(udd_ep_id_t ep, bool b_shortpacket, - uint8_t * buf, iram_size_t buf_size, - udd_callback_trans_t callback); +bool udd_ep_run(udd_ep_id_t ep, bool b_shortpacket, uint8_t * buf, iram_size_t buf_size, udd_callback_trans_t callback); + /** * \brief Aborts transfer on going on endpoint * @@ -339,7 +331,6 @@ void udd_ep_abort(udd_ep_id_t ep); //@} - /** * \name High speed test mode management * @@ -352,7 +343,6 @@ void udd_test_mode_se0_nak(void); void udd_test_mode_packet(void); //@} - /** * \name UDC callbacks to provide for UDD * diff --git a/Marlin/src/HAL/DUE/usb/udi.h b/Marlin/src/HAL/DUE/usb/udi.h index febf03b7181e..bc5de086f3ce 100644 --- a/Marlin/src/HAL/DUE/usb/udi.h +++ b/Marlin/src/HAL/DUE/usb/udi.h @@ -72,57 +72,57 @@ extern "C" { * selected by UDC. */ typedef struct { - /** - * \brief Enable the interface. - * - * This function is called when the host selects a configuration - * to which this interface belongs through a Set Configuration - * request, and when the host selects an alternate setting of - * this interface through a Set Interface request. - * - * \return \c 1 if function was successfully done, otherwise \c 0. - */ - bool (*enable)(void); + /** + * \brief Enable the interface. + * + * This function is called when the host selects a configuration + * to which this interface belongs through a Set Configuration + * request, and when the host selects an alternate setting of + * this interface through a Set Interface request. + * + * \return \c 1 if function was successfully done, otherwise \c 0. + */ + bool (*enable)(void); - /** - * \brief Disable the interface. - * - * This function is called when this interface is currently - * active, and - * - the host selects any configuration through a Set - * Configuration request, or - * - the host issues a USB reset, or - * - the device is detached from the host (i.e. Vbus is no - * longer present) - */ - void (*disable)(void); + /** + * \brief Disable the interface. + * + * This function is called when this interface is currently + * active, and + * - the host selects any configuration through a Set + * Configuration request, or + * - the host issues a USB reset, or + * - the device is detached from the host (i.e. Vbus is no + * longer present) + */ + void (*disable)(void); - /** - * \brief Handle a control request directed at an interface. - * - * This function is called when this interface is currently - * active and the host sends a SETUP request - * with this interface as the recipient. - * - * Use udd_g_ctrlreq to decode and response to SETUP request. - * - * \return \c 1 if this interface supports the SETUP request, otherwise \c 0. - */ - bool (*setup)(void); + /** + * \brief Handle a control request directed at an interface. + * + * This function is called when this interface is currently + * active and the host sends a SETUP request + * with this interface as the recipient. + * + * Use udd_g_ctrlreq to decode and response to SETUP request. + * + * \return \c 1 if this interface supports the SETUP request, otherwise \c 0. + */ + bool (*setup)(void); - /** - * \brief Returns the current setting of the selected interface. - * - * This function is called when UDC when know alternate setting of selected interface. - * - * \return alternate setting of selected interface - */ - uint8_t (*getsetting)(void); + /** + * \brief Returns the current setting of the selected interface. + * + * This function is called when UDC when know alternate setting of selected interface. + * + * \return alternate setting of selected interface + */ + uint8_t (*getsetting)(void); - /** - * \brief To signal that a SOF is occurred - */ - void (*sof_notify)(void); + /** + * \brief To signal that a SOF is occurred + */ + void (*sof_notify)(void); } udi_api_t; //@} diff --git a/Marlin/src/HAL/DUE/usb/udi_cdc.h b/Marlin/src/HAL/DUE/usb/udi_cdc.h index b61845011aa2..2bc5fff18716 100644 --- a/Marlin/src/HAL/DUE/usb/udi_cdc.h +++ b/Marlin/src/HAL/DUE/usb/udi_cdc.h @@ -92,18 +92,18 @@ extern UDC_DESC_STORAGE udi_api_t udi_api_cdc_data; * descriptors for the CDC Communication Class interface. */ typedef struct { - //! Standard interface descriptor - usb_iface_desc_t iface; - //! CDC Header functional descriptor - usb_cdc_hdr_desc_t header; - //! CDC Abstract Control Model functional descriptor - usb_cdc_acm_desc_t acm; - //! CDC Union functional descriptor - usb_cdc_union_desc_t union_desc; - //! CDC Call Management functional descriptor - usb_cdc_call_mgmt_desc_t call_mgmt; - //! Notification endpoint descriptor - usb_ep_desc_t ep_notify; + //! Standard interface descriptor + usb_iface_desc_t iface; + //! CDC Header functional descriptor + usb_cdc_hdr_desc_t header; + //! CDC Abstract Control Model functional descriptor + usb_cdc_acm_desc_t acm; + //! CDC Union functional descriptor + usb_cdc_union_desc_t union_desc; + //! CDC Call Management functional descriptor + usb_cdc_call_mgmt_desc_t call_mgmt; + //! Notification endpoint descriptor + usb_ep_desc_t ep_notify; } udi_cdc_comm_desc_t; @@ -114,11 +114,11 @@ typedef struct { * CDC Data Class interface. */ typedef struct { - //! Standard interface descriptor - usb_iface_desc_t iface; - //! Data IN/OUT endpoint descriptors - usb_ep_desc_t ep_in; - usb_ep_desc_t ep_out; + //! Standard interface descriptor + usb_iface_desc_t iface; + //! Data IN/OUT endpoint descriptors + usb_ep_desc_t ep_in; + usb_ep_desc_t ep_out; } udi_cdc_data_desc_t; @@ -136,13 +136,13 @@ typedef struct { //@{ //! By default no string associated to these interfaces #ifndef UDI_CDC_IAD_STRING_ID_0 -#define UDI_CDC_IAD_STRING_ID_0 0 + #define UDI_CDC_IAD_STRING_ID_0 0 #endif #ifndef UDI_CDC_COMM_STRING_ID_0 -#define UDI_CDC_COMM_STRING_ID_0 0 + #define UDI_CDC_COMM_STRING_ID_0 0 #endif #ifndef UDI_CDC_DATA_STRING_ID_0 -#define UDI_CDC_DATA_STRING_ID_0 0 + #define UDI_CDC_DATA_STRING_ID_0 0 #endif #define UDI_CDC_IAD_DESC_0 UDI_CDC_IAD_DESC(0) #define UDI_CDC_COMM_DESC_0 UDI_CDC_COMM_DESC(0) @@ -151,13 +151,13 @@ typedef struct { //! By default no string associated to these interfaces #ifndef UDI_CDC_IAD_STRING_ID_1 -#define UDI_CDC_IAD_STRING_ID_1 0 + #define UDI_CDC_IAD_STRING_ID_1 0 #endif #ifndef UDI_CDC_COMM_STRING_ID_1 -#define UDI_CDC_COMM_STRING_ID_1 0 + #define UDI_CDC_COMM_STRING_ID_1 0 #endif #ifndef UDI_CDC_DATA_STRING_ID_1 -#define UDI_CDC_DATA_STRING_ID_1 0 + #define UDI_CDC_DATA_STRING_ID_1 0 #endif #define UDI_CDC_IAD_DESC_1 UDI_CDC_IAD_DESC(1) #define UDI_CDC_COMM_DESC_1 UDI_CDC_COMM_DESC(1) @@ -166,13 +166,13 @@ typedef struct { //! By default no string associated to these interfaces #ifndef UDI_CDC_IAD_STRING_ID_2 -#define UDI_CDC_IAD_STRING_ID_2 0 + #define UDI_CDC_IAD_STRING_ID_2 0 #endif #ifndef UDI_CDC_COMM_STRING_ID_2 -#define UDI_CDC_COMM_STRING_ID_2 0 + #define UDI_CDC_COMM_STRING_ID_2 0 #endif #ifndef UDI_CDC_DATA_STRING_ID_2 -#define UDI_CDC_DATA_STRING_ID_2 0 + #define UDI_CDC_DATA_STRING_ID_2 0 #endif #define UDI_CDC_IAD_DESC_2 UDI_CDC_IAD_DESC(2) #define UDI_CDC_COMM_DESC_2 UDI_CDC_COMM_DESC(2) @@ -181,13 +181,13 @@ typedef struct { //! By default no string associated to these interfaces #ifndef UDI_CDC_IAD_STRING_ID_3 -#define UDI_CDC_IAD_STRING_ID_3 0 + #define UDI_CDC_IAD_STRING_ID_3 0 #endif #ifndef UDI_CDC_COMM_STRING_ID_3 -#define UDI_CDC_COMM_STRING_ID_3 0 + #define UDI_CDC_COMM_STRING_ID_3 0 #endif #ifndef UDI_CDC_DATA_STRING_ID_3 -#define UDI_CDC_DATA_STRING_ID_3 0 + #define UDI_CDC_DATA_STRING_ID_3 0 #endif #define UDI_CDC_IAD_DESC_3 UDI_CDC_IAD_DESC(3) #define UDI_CDC_COMM_DESC_3 UDI_CDC_COMM_DESC(3) @@ -196,13 +196,13 @@ typedef struct { //! By default no string associated to these interfaces #ifndef UDI_CDC_IAD_STRING_ID_4 -#define UDI_CDC_IAD_STRING_ID_4 0 + #define UDI_CDC_IAD_STRING_ID_4 0 #endif #ifndef UDI_CDC_COMM_STRING_ID_4 -#define UDI_CDC_COMM_STRING_ID_4 0 + #define UDI_CDC_COMM_STRING_ID_4 0 #endif #ifndef UDI_CDC_DATA_STRING_ID_4 -#define UDI_CDC_DATA_STRING_ID_4 0 + #define UDI_CDC_DATA_STRING_ID_4 0 #endif #define UDI_CDC_IAD_DESC_4 UDI_CDC_IAD_DESC(4) #define UDI_CDC_COMM_DESC_4 UDI_CDC_COMM_DESC(4) @@ -211,13 +211,13 @@ typedef struct { //! By default no string associated to these interfaces #ifndef UDI_CDC_IAD_STRING_ID_5 -#define UDI_CDC_IAD_STRING_ID_5 0 + #define UDI_CDC_IAD_STRING_ID_5 0 #endif #ifndef UDI_CDC_COMM_STRING_ID_5 -#define UDI_CDC_COMM_STRING_ID_5 0 + #define UDI_CDC_COMM_STRING_ID_5 0 #endif #ifndef UDI_CDC_DATA_STRING_ID_5 -#define UDI_CDC_DATA_STRING_ID_5 0 + #define UDI_CDC_DATA_STRING_ID_5 0 #endif #define UDI_CDC_IAD_DESC_5 UDI_CDC_IAD_DESC(5) #define UDI_CDC_COMM_DESC_5 UDI_CDC_COMM_DESC(5) @@ -226,13 +226,13 @@ typedef struct { //! By default no string associated to these interfaces #ifndef UDI_CDC_IAD_STRING_ID_6 -#define UDI_CDC_IAD_STRING_ID_6 0 + #define UDI_CDC_IAD_STRING_ID_6 0 #endif #ifndef UDI_CDC_COMM_STRING_ID_6 -#define UDI_CDC_COMM_STRING_ID_6 0 + #define UDI_CDC_COMM_STRING_ID_6 0 #endif #ifndef UDI_CDC_DATA_STRING_ID_6 -#define UDI_CDC_DATA_STRING_ID_6 0 + #define UDI_CDC_DATA_STRING_ID_6 0 #endif #define UDI_CDC_IAD_DESC_6 UDI_CDC_IAD_DESC(6) #define UDI_CDC_COMM_DESC_6 UDI_CDC_COMM_DESC(6) @@ -240,7 +240,6 @@ typedef struct { #define UDI_CDC_DATA_DESC_6_HS UDI_CDC_DATA_DESC_HS(6) //@} - //! Content of CDC IAD interface descriptor for all speeds #define UDI_CDC_IAD_DESC(port) { \ .bLength = sizeof(usb_iad_desc_t),\ @@ -270,7 +269,7 @@ typedef struct { .call_mgmt.bDescriptorType = CDC_CS_INTERFACE,\ .call_mgmt.bDescriptorSubtype = CDC_SCS_CALL_MGMT,\ .call_mgmt.bmCapabilities = \ - CDC_CALL_MGMT_SUPPORTED | CDC_CALL_MGMT_OVER_DCI,\ + CDC_CALL_MGMT_SUPPORTED | CDC_CALL_MGMT_OVER_DCI,\ .acm.bFunctionLength = sizeof(usb_cdc_acm_desc_t),\ .acm.bDescriptorType = CDC_CS_INTERFACE,\ .acm.bDescriptorSubtype = CDC_SCS_ACM,\ @@ -610,40 +609,37 @@ iram_size_t udi_cdc_multi_write_buf(uint8_t port, const void* buf, iram_size_t s * \subsection udi_cdc_basic_use_case_usage_code Example code * Content of conf_usb.h: * \code - #define UDI_CDC_ENABLE_EXT(port) my_callback_cdc_enable() - extern bool my_callback_cdc_enable(void); - #define UDI_CDC_DISABLE_EXT(port) my_callback_cdc_disable() - extern void my_callback_cdc_disable(void); - #define UDI_CDC_LOW_RATE - - #define UDI_CDC_DEFAULT_RATE 115200 - #define UDI_CDC_DEFAULT_STOPBITS CDC_STOP_BITS_1 - #define UDI_CDC_DEFAULT_PARITY CDC_PAR_NONE - #define UDI_CDC_DEFAULT_DATABITS 8 - - #include "udi_cdc_conf.h" // At the end of conf_usb.h file + #define UDI_CDC_ENABLE_EXT(port) my_callback_cdc_enable() + extern bool my_callback_cdc_enable(void); + #define UDI_CDC_DISABLE_EXT(port) my_callback_cdc_disable() + extern void my_callback_cdc_disable(void); + #define UDI_CDC_LOW_RATE + + #define UDI_CDC_DEFAULT_RATE 115200 + #define UDI_CDC_DEFAULT_STOPBITS CDC_STOP_BITS_1 + #define UDI_CDC_DEFAULT_PARITY CDC_PAR_NONE + #define UDI_CDC_DEFAULT_DATABITS 8 + + #include "udi_cdc_conf.h" // At the end of conf_usb.h file \endcode * * Add to application C-file: * \code - static bool my_flag_autorize_cdc_transfert = false; - bool my_callback_cdc_enable(void) - { - my_flag_autorize_cdc_transfert = true; - return true; - } - void my_callback_cdc_disable(void) - { - my_flag_autorize_cdc_transfert = false; - } - - void task(void) - { - if (my_flag_autorize_cdc_transfert) { - udi_cdc_putc('A'); - udi_cdc_getc(); - } - } + static bool my_flag_autorize_cdc_transfert = false; + bool my_callback_cdc_enable(void) { + my_flag_autorize_cdc_transfert = true; + return true; + } + void my_callback_cdc_disable(void) { + my_flag_autorize_cdc_transfert = false; + } + + void task(void) { + if (my_flag_autorize_cdc_transfert) { + udi_cdc_putc('A'); + udi_cdc_getc(); + } + } \endcode * * \subsection udi_cdc_basic_use_case_setup_flow Workflow @@ -652,14 +648,14 @@ iram_size_t udi_cdc_multi_write_buf(uint8_t port, const void* buf, iram_size_t s * - \code #define USB_DEVICE_SERIAL_NAME "12...EF" // Disk SN for CDC \endcode * \note The USB serial number is mandatory when a CDC interface is used. * - \code #define UDI_CDC_ENABLE_EXT(port) my_callback_cdc_enable() - extern bool my_callback_cdc_enable(void); \endcode + extern bool my_callback_cdc_enable(void); \endcode * \note After the device enumeration (detecting and identifying USB devices), * the USB host starts the device configuration. When the USB CDC interface * from the device is accepted by the host, the USB host enables this interface and the * UDI_CDC_ENABLE_EXT() callback function is called and return true. * Thus, when this event is received, the data transfer on CDC interface are authorized. * - \code #define UDI_CDC_DISABLE_EXT(port) my_callback_cdc_disable() - extern void my_callback_cdc_disable(void); \endcode + extern void my_callback_cdc_disable(void); \endcode * \note When the USB device is unplugged or is reset by the USB host, the USB * interface is disabled and the UDI_CDC_DISABLE_EXT() callback function * is called. Thus, the data transfer must be stopped on CDC interface. @@ -667,19 +663,19 @@ iram_size_t udi_cdc_multi_write_buf(uint8_t port, const void* buf, iram_size_t s * \note Define it when the transfer CDC Device to Host is a low rate * (<512000 bauds) to reduce CDC buffers size. * - \code #define UDI_CDC_DEFAULT_RATE 115200 - #define UDI_CDC_DEFAULT_STOPBITS CDC_STOP_BITS_1 - #define UDI_CDC_DEFAULT_PARITY CDC_PAR_NONE - #define UDI_CDC_DEFAULT_DATABITS 8 \endcode + #define UDI_CDC_DEFAULT_STOPBITS CDC_STOP_BITS_1 + #define UDI_CDC_DEFAULT_PARITY CDC_PAR_NONE + #define UDI_CDC_DEFAULT_DATABITS 8 \endcode * \note Default configuration of communication port at startup. * -# Send or wait data on CDC line: * - \code // Waits and gets a value on CDC line - int udi_cdc_getc(void); - // Reads a RAM buffer on CDC line - iram_size_t udi_cdc_read_buf(int *buf, iram_size_t size); - // Puts a byte on CDC line - int udi_cdc_putc(int value); - // Writes a RAM buffer on CDC line - iram_size_t udi_cdc_write_buf(const int *buf, iram_size_t size); \endcode + int udi_cdc_getc(void); + // Reads a RAM buffer on CDC line + iram_size_t udi_cdc_read_buf(int *buf, iram_size_t size); + // Puts a byte on CDC line + int udi_cdc_putc(int value); + // Writes a RAM buffer on CDC line + iram_size_t udi_cdc_write_buf(const int *buf, iram_size_t size); \endcode * * \section udi_cdc_use_cases Advanced use cases * For more advanced use of the UDI CDC module, see the following use cases: @@ -713,90 +709,90 @@ iram_size_t udi_cdc_multi_write_buf(uint8_t port, const void* buf, iram_size_t s * \subsection udi_cdc_use_case_composite_usage_code Example code * Content of conf_usb.h: * \code - #define USB_DEVICE_EP_CTRL_SIZE 64 - #define USB_DEVICE_NB_INTERFACE (X+2) - #define USB_DEVICE_MAX_EP (X+3) - - #define UDI_CDC_DATA_EP_IN_0 (1 | USB_EP_DIR_IN) // TX - #define UDI_CDC_DATA_EP_OUT_0 (2 | USB_EP_DIR_OUT) // RX - #define UDI_CDC_COMM_EP_0 (3 | USB_EP_DIR_IN) // Notify endpoint - #define UDI_CDC_COMM_IFACE_NUMBER_0 X+0 - #define UDI_CDC_DATA_IFACE_NUMBER_0 X+1 - - #define UDI_COMPOSITE_DESC_T \ - usb_iad_desc_t udi_cdc_iad; \ - udi_cdc_comm_desc_t udi_cdc_comm; \ - udi_cdc_data_desc_t udi_cdc_data; \ - ... - #define UDI_COMPOSITE_DESC_FS \ - .udi_cdc_iad = UDI_CDC_IAD_DESC_0, \ - .udi_cdc_comm = UDI_CDC_COMM_DESC_0, \ - .udi_cdc_data = UDI_CDC_DATA_DESC_0_FS, \ - ... - #define UDI_COMPOSITE_DESC_HS \ - .udi_cdc_iad = UDI_CDC_IAD_DESC_0, \ - .udi_cdc_comm = UDI_CDC_COMM_DESC_0, \ - .udi_cdc_data = UDI_CDC_DATA_DESC_0_HS, \ - ... - #define UDI_COMPOSITE_API \ - &udi_api_cdc_comm, \ - &udi_api_cdc_data, \ - ... + #define USB_DEVICE_EP_CTRL_SIZE 64 + #define USB_DEVICE_NB_INTERFACE (X+2) + #define USB_DEVICE_MAX_EP (X+3) + + #define UDI_CDC_DATA_EP_IN_0 (1 | USB_EP_DIR_IN) // TX + #define UDI_CDC_DATA_EP_OUT_0 (2 | USB_EP_DIR_OUT) // RX + #define UDI_CDC_COMM_EP_0 (3 | USB_EP_DIR_IN) // Notify endpoint + #define UDI_CDC_COMM_IFACE_NUMBER_0 X+0 + #define UDI_CDC_DATA_IFACE_NUMBER_0 X+1 + + #define UDI_COMPOSITE_DESC_T \ + usb_iad_desc_t udi_cdc_iad; \ + udi_cdc_comm_desc_t udi_cdc_comm; \ + udi_cdc_data_desc_t udi_cdc_data; \ + ... + #define UDI_COMPOSITE_DESC_FS \ + .udi_cdc_iad = UDI_CDC_IAD_DESC_0, \ + .udi_cdc_comm = UDI_CDC_COMM_DESC_0, \ + .udi_cdc_data = UDI_CDC_DATA_DESC_0_FS, \ + ... + #define UDI_COMPOSITE_DESC_HS \ + .udi_cdc_iad = UDI_CDC_IAD_DESC_0, \ + .udi_cdc_comm = UDI_CDC_COMM_DESC_0, \ + .udi_cdc_data = UDI_CDC_DATA_DESC_0_HS, \ + ... + #define UDI_COMPOSITE_API \ + &udi_api_cdc_comm, \ + &udi_api_cdc_data, \ + ... \endcode * * \subsection udi_cdc_use_case_composite_usage_flow Workflow * -# Ensure that conf_usb.h is available and contains the following parameters * required for a USB composite device configuration: * - \code // Endpoint control size, This must be: - // - 8, 16, 32 or 64 for full speed device (8 is recommended to save RAM) - // - 64 for a high speed device - #define USB_DEVICE_EP_CTRL_SIZE 64 - // Total Number of interfaces on this USB device. - // Add 2 for CDC. - #define USB_DEVICE_NB_INTERFACE (X+2) - // Total number of endpoints on this USB device. - // This must include each endpoint for each interface. - // Add 3 for CDC. - #define USB_DEVICE_MAX_EP (X+3) \endcode + // - 8, 16, 32 or 64 for full speed device (8 is recommended to save RAM) + // - 64 for a high speed device + #define USB_DEVICE_EP_CTRL_SIZE 64 + // Total Number of interfaces on this USB device. + // Add 2 for CDC. + #define USB_DEVICE_NB_INTERFACE (X+2) + // Total number of endpoints on this USB device. + // This must include each endpoint for each interface. + // Add 3 for CDC. + #define USB_DEVICE_MAX_EP (X+3) \endcode * -# Ensure that conf_usb.h contains the description of * composite device: * - \code // The endpoint numbers chosen by you for the CDC. - // The endpoint numbers starting from 1. - #define UDI_CDC_DATA_EP_IN_0 (1 | USB_EP_DIR_IN) // TX - #define UDI_CDC_DATA_EP_OUT_0 (2 | USB_EP_DIR_OUT) // RX - #define UDI_CDC_COMM_EP_0 (3 | USB_EP_DIR_IN) // Notify endpoint - // The interface index of an interface starting from 0 - #define UDI_CDC_COMM_IFACE_NUMBER_0 X+0 - #define UDI_CDC_DATA_IFACE_NUMBER_0 X+1 \endcode + // The endpoint numbers starting from 1. + #define UDI_CDC_DATA_EP_IN_0 (1 | USB_EP_DIR_IN) // TX + #define UDI_CDC_DATA_EP_OUT_0 (2 | USB_EP_DIR_OUT) // RX + #define UDI_CDC_COMM_EP_0 (3 | USB_EP_DIR_IN) // Notify endpoint + // The interface index of an interface starting from 0 + #define UDI_CDC_COMM_IFACE_NUMBER_0 X+0 + #define UDI_CDC_DATA_IFACE_NUMBER_0 X+1 \endcode * -# Ensure that conf_usb.h contains the following parameters * required for a USB composite device configuration: * - \code // USB Interfaces descriptor structure - #define UDI_COMPOSITE_DESC_T \ - ... - usb_iad_desc_t udi_cdc_iad; \ - udi_cdc_comm_desc_t udi_cdc_comm; \ - udi_cdc_data_desc_t udi_cdc_data; \ - ... - // USB Interfaces descriptor value for Full Speed - #define UDI_COMPOSITE_DESC_FS \ - ... - .udi_cdc_iad = UDI_CDC_IAD_DESC_0, \ - .udi_cdc_comm = UDI_CDC_COMM_DESC_0, \ - .udi_cdc_data = UDI_CDC_DATA_DESC_0_FS, \ - ... - // USB Interfaces descriptor value for High Speed - #define UDI_COMPOSITE_DESC_HS \ - ... - .udi_cdc_iad = UDI_CDC_IAD_DESC_0, \ - .udi_cdc_comm = UDI_CDC_COMM_DESC_0, \ - .udi_cdc_data = UDI_CDC_DATA_DESC_0_HS, \ - ... - // USB Interface APIs - #define UDI_COMPOSITE_API \ - ... - &udi_api_cdc_comm, \ - &udi_api_cdc_data, \ - ... \endcode + #define UDI_COMPOSITE_DESC_T \ + ... + usb_iad_desc_t udi_cdc_iad; \ + udi_cdc_comm_desc_t udi_cdc_comm; \ + udi_cdc_data_desc_t udi_cdc_data; \ + ... + // USB Interfaces descriptor value for Full Speed + #define UDI_COMPOSITE_DESC_FS \ + ... + .udi_cdc_iad = UDI_CDC_IAD_DESC_0, \ + .udi_cdc_comm = UDI_CDC_COMM_DESC_0, \ + .udi_cdc_data = UDI_CDC_DATA_DESC_0_FS, \ + ... + // USB Interfaces descriptor value for High Speed + #define UDI_COMPOSITE_DESC_HS \ + ... + .udi_cdc_iad = UDI_CDC_IAD_DESC_0, \ + .udi_cdc_comm = UDI_CDC_COMM_DESC_0, \ + .udi_cdc_data = UDI_CDC_DATA_DESC_0_HS, \ + ... + // USB Interface APIs + #define UDI_COMPOSITE_API \ + ... + &udi_api_cdc_comm, \ + &udi_api_cdc_data, \ + ... \endcode * - \note The descriptors order given in the four lists above must be the * same as the order defined by all interface indexes. The interface index * orders are defined through UDI_X_IFACE_NUMBER defines.\n diff --git a/Marlin/src/HAL/DUE/usb/udi_msc.c b/Marlin/src/HAL/DUE/usb/udi_msc.c index a75b5936b338..3f70a8fb18bc 100644 --- a/Marlin/src/HAL/DUE/usb/udi_msc.c +++ b/Marlin/src/HAL/DUE/usb/udi_msc.c @@ -372,9 +372,7 @@ static void udi_msc_sbc_trans(bool b_read); //@} - -bool udi_msc_enable(void) -{ +bool udi_msc_enable(void) { uint8_t lun; udi_msc_b_trans_req = false; udi_msc_b_cbw_invalid = false; @@ -397,18 +395,14 @@ bool udi_msc_enable(void) return true; } - -void udi_msc_disable(void) -{ +void udi_msc_disable(void) { udi_msc_b_trans_req = false; udi_msc_b_ack_trans = true; udi_msc_b_reset_trans = true; UDI_MSC_DISABLE_EXT(); } - -bool udi_msc_setup(void) -{ +bool udi_msc_setup(void) { if (Udd_setup_is_in()) { // Requests Interface GET if (Udd_setup_type() == USB_REQ_TYPE_CLASS) { @@ -451,17 +445,14 @@ bool udi_msc_setup(void) return false; // Not supported request } -uint8_t udi_msc_getsetting(void) -{ +uint8_t udi_msc_getsetting(void) { return 0; // MSC don't have multiple alternate setting } - // ------------------------ //------- Routines to process CBW packet -static void udi_msc_cbw_invalid(void) -{ +static void udi_msc_cbw_invalid(void) { if (!udi_msc_b_cbw_invalid) return; // Don't re-stall endpoint if error reset by setup udd_ep_set_halt(UDI_MSC_EP_OUT); @@ -469,8 +460,7 @@ static void udi_msc_cbw_invalid(void) udd_ep_wait_stall_clear(UDI_MSC_EP_OUT, udi_msc_cbw_invalid); } -static void udi_msc_csw_invalid(void) -{ +static void udi_msc_csw_invalid(void) { if (!udi_msc_b_cbw_invalid) return; // Don't re-stall endpoint if error reset by setup udd_ep_set_halt(UDI_MSC_EP_IN); @@ -478,8 +468,7 @@ static void udi_msc_csw_invalid(void) udd_ep_wait_stall_clear(UDI_MSC_EP_IN, udi_msc_csw_invalid); } -static void udi_msc_cbw_wait(void) -{ +static void udi_msc_cbw_wait(void) { // Register buffer and callback on OUT endpoint if (!udd_ep_run(UDI_MSC_EP_OUT, true, (uint8_t *) & udi_msc_cbw, @@ -490,10 +479,8 @@ static void udi_msc_cbw_wait(void) } } - static void udi_msc_cbw_received(udd_ep_status_t status, - iram_size_t nb_received, udd_ep_id_t ep) -{ + iram_size_t nb_received, udd_ep_id_t ep) { UNUSED(ep); // Check status of transfer if (UDD_EP_TRANSFER_OK != status) { @@ -582,9 +569,7 @@ static void udi_msc_cbw_received(udd_ep_status_t status, } } - -static bool udi_msc_cbw_validate(uint32_t alloc_len, uint8_t dir_flag) -{ +static bool udi_msc_cbw_validate(uint32_t alloc_len, uint8_t dir_flag) { /* * The following cases should result in a phase error: * - Case 2: Hn < Di @@ -612,12 +597,10 @@ static bool udi_msc_cbw_validate(uint32_t alloc_len, uint8_t dir_flag) return true; } - // ------------------------ //------- Routines to process small data packet -static void udi_msc_data_send(uint8_t * buffer, uint8_t buf_size) -{ +static void udi_msc_data_send(uint8_t * buffer, uint8_t buf_size) { // Sends data on IN endpoint if (!udd_ep_run(UDI_MSC_EP_IN, true, buffer, buf_size, udi_msc_data_sent)) { @@ -627,10 +610,8 @@ static void udi_msc_data_send(uint8_t * buffer, uint8_t buf_size) } } - static void udi_msc_data_sent(udd_ep_status_t status, iram_size_t nb_sent, - udd_ep_id_t ep) -{ + udd_ep_id_t ep) { UNUSED(ep); if (UDD_EP_TRANSFER_OK != status) { // Error protocol @@ -644,12 +625,10 @@ static void udi_msc_data_sent(udd_ep_status_t status, iram_size_t nb_sent, udi_msc_csw_process(); } - // ------------------------ //------- Routines to process CSW packet -static void udi_msc_csw_process(void) -{ +static void udi_msc_csw_process(void) { if (0 != udi_msc_csw.dCSWDataResidue) { // Residue not NULL // then STALL next request from USB host on corresponding endpoint @@ -664,9 +643,7 @@ static void udi_msc_csw_process(void) udi_msc_csw_send(); } - -void udi_msc_csw_send(void) -{ +void udi_msc_csw_send(void) { // Sends CSW on IN endpoint if (!udd_ep_run(UDI_MSC_EP_IN, false, (uint8_t *) & udi_msc_csw, @@ -678,10 +655,8 @@ void udi_msc_csw_send(void) } } - static void udi_msc_csw_sent(udd_ep_status_t status, iram_size_t nb_sent, - udd_ep_id_t ep) -{ + udd_ep_id_t ep) { UNUSED(ep); UNUSED(status); UNUSED(nb_sent); @@ -690,20 +665,17 @@ static void udi_msc_csw_sent(udd_ep_status_t status, iram_size_t nb_sent, udi_msc_cbw_wait(); } - // ------------------------ //------- Routines manage sense data -static void udi_msc_clear_sense(void) -{ +static void udi_msc_clear_sense(void) { memset((uint8_t*)&udi_msc_sense, 0, sizeof(struct scsi_request_sense_data)); udi_msc_sense.valid_reponse_code = SCSI_SENSE_VALID | SCSI_SENSE_CURRENT; udi_msc_sense.AddSenseLen = SCSI_SENSE_ADDL_LEN(sizeof(udi_msc_sense)); } static void udi_msc_sense_fail(uint8_t sense_key, uint16_t add_sense, - uint32_t lba) -{ + uint32_t lba) { udi_msc_clear_sense(); udi_msc_csw.bCSWStatus = USB_CSW_STATUS_FAIL; udi_msc_sense.sense_flag_key = sense_key; @@ -715,53 +687,39 @@ static void udi_msc_sense_fail(uint8_t sense_key, uint16_t add_sense, udi_msc_sense.AddSnsCodeQlfr = add_sense; } -static void udi_msc_sense_pass(void) -{ +static void udi_msc_sense_pass(void) { udi_msc_clear_sense(); udi_msc_csw.bCSWStatus = USB_CSW_STATUS_PASS; } - -static void udi_msc_sense_fail_not_present(void) -{ +static void udi_msc_sense_fail_not_present(void) { udi_msc_sense_fail(SCSI_SK_NOT_READY, SCSI_ASC_MEDIUM_NOT_PRESENT, 0); } -static void udi_msc_sense_fail_busy_or_change(void) -{ - udi_msc_sense_fail(SCSI_SK_UNIT_ATTENTION, - SCSI_ASC_NOT_READY_TO_READY_CHANGE, 0); +static void udi_msc_sense_fail_busy_or_change(void) { + udi_msc_sense_fail(SCSI_SK_UNIT_ATTENTION, SCSI_ASC_NOT_READY_TO_READY_CHANGE, 0); } -static void udi_msc_sense_fail_hardware(void) -{ - udi_msc_sense_fail(SCSI_SK_HARDWARE_ERROR, - SCSI_ASC_NO_ADDITIONAL_SENSE_INFO, 0); +static void udi_msc_sense_fail_hardware(void) { + udi_msc_sense_fail(SCSI_SK_HARDWARE_ERROR, SCSI_ASC_NO_ADDITIONAL_SENSE_INFO, 0); } -static void udi_msc_sense_fail_protected(void) -{ +static void udi_msc_sense_fail_protected(void) { udi_msc_sense_fail(SCSI_SK_DATA_PROTECT, SCSI_ASC_WRITE_PROTECTED, 0); } -static void udi_msc_sense_fail_cdb_invalid(void) -{ - udi_msc_sense_fail(SCSI_SK_ILLEGAL_REQUEST, - SCSI_ASC_INVALID_FIELD_IN_CDB, 0); +static void udi_msc_sense_fail_cdb_invalid(void) { + udi_msc_sense_fail(SCSI_SK_ILLEGAL_REQUEST, SCSI_ASC_INVALID_FIELD_IN_CDB, 0); } -static void udi_msc_sense_command_invalid(void) -{ - udi_msc_sense_fail(SCSI_SK_ILLEGAL_REQUEST, - SCSI_ASC_INVALID_COMMAND_OPERATION_CODE, 0); +static void udi_msc_sense_command_invalid(void) { + udi_msc_sense_fail(SCSI_SK_ILLEGAL_REQUEST, SCSI_ASC_INVALID_COMMAND_OPERATION_CODE, 0); } - // ------------------------ //------- Routines manage SCSI Commands -static void udi_msc_spc_requestsense(void) -{ +static void udi_msc_spc_requestsense(void) { uint8_t length = udi_msc_cbw.CDB[4]; // Can't send more than sense data length @@ -774,9 +732,7 @@ static void udi_msc_spc_requestsense(void) udi_msc_data_send((uint8_t*)&udi_msc_sense, length); } - -static void udi_msc_spc_inquiry(void) -{ +static void udi_msc_spc_inquiry(void) { uint8_t length, i; UDC_DATA(4) // Constant inquiry data for all LUNs @@ -835,9 +791,7 @@ static void udi_msc_spc_inquiry(void) udi_msc_data_send((uint8_t *) & udi_msc_inquiry_data, length); } - -static bool udi_msc_spc_testunitready_global(void) -{ +static bool udi_msc_spc_testunitready_global(void) { switch (mem_test_unit_ready(udi_msc_cbw.bCBWLUN)) { case CTRL_GOOD: return true; // Don't change sense data @@ -855,9 +809,7 @@ static bool udi_msc_spc_testunitready_global(void) return false; } - -static void udi_msc_spc_testunitready(void) -{ +static void udi_msc_spc_testunitready(void) { if (udi_msc_spc_testunitready_global()) { // LUN ready, then update sense data with status pass udi_msc_sense_pass(); @@ -866,9 +818,7 @@ static void udi_msc_spc_testunitready(void) udi_msc_csw_process(); } - -static void udi_msc_spc_mode_sense(bool b_sense10) -{ +static void udi_msc_spc_mode_sense(bool b_sense10) { // Union of all mode sense structures union sense_6_10 { struct { @@ -943,9 +893,7 @@ static void udi_msc_spc_mode_sense(bool b_sense10) udi_msc_data_send((uint8_t *) & sense, request_lgt); } - -static void udi_msc_spc_prevent_allow_medium_removal(void) -{ +static void udi_msc_spc_prevent_allow_medium_removal(void) { uint8_t prevent = udi_msc_cbw.CDB[4]; if (0 == prevent) { udi_msc_sense_pass(); @@ -955,9 +903,7 @@ static void udi_msc_spc_prevent_allow_medium_removal(void) udi_msc_csw_process(); } - -static void udi_msc_sbc_start_stop(void) -{ +static void udi_msc_sbc_start_stop(void) { bool start = 0x1 & udi_msc_cbw.CDB[4]; bool loej = 0x2 & udi_msc_cbw.CDB[4]; if (loej) { @@ -967,9 +913,7 @@ static void udi_msc_sbc_start_stop(void) udi_msc_csw_process(); } - -static void udi_msc_sbc_read_capacity(void) -{ +static void udi_msc_sbc_read_capacity(void) { UDC_BSS(4) static struct sbc_read_capacity10_data udi_msc_capacity; if (!udi_msc_cbw_validate(sizeof(udi_msc_capacity), @@ -1003,9 +947,7 @@ static void udi_msc_sbc_read_capacity(void) sizeof(udi_msc_capacity)); } - -static void udi_msc_sbc_trans(bool b_read) -{ +static void udi_msc_sbc_trans(bool b_read) { uint32_t trans_size; if (!b_read) { @@ -1038,9 +980,7 @@ static void udi_msc_sbc_trans(bool b_read) UDI_MSC_NOTIFY_TRANS_EXT(); } - -bool udi_msc_process_trans(void) -{ +bool udi_msc_process_trans(void) { Ctrl_status status; if (!udi_msc_b_trans_req) @@ -1084,10 +1024,8 @@ bool udi_msc_process_trans(void) return true; } - static void udi_msc_trans_ack(udd_ep_status_t status, iram_size_t n, - udd_ep_id_t ep) -{ + udd_ep_id_t ep) { UNUSED(ep); UNUSED(n); // Update variable to signal the end of transfer @@ -1095,10 +1033,8 @@ static void udi_msc_trans_ack(udd_ep_status_t status, iram_size_t n, udi_msc_b_ack_trans = true; } - bool udi_msc_trans_block(bool b_read, uint8_t * block, iram_size_t block_size, - void (*callback) (udd_ep_status_t status, iram_size_t n, udd_ep_id_t ep)) -{ + void (*callback) (udd_ep_status_t status, iram_size_t n, udd_ep_id_t ep)) { if (!udi_msc_b_ack_trans) return false; // No possible, transfer on going diff --git a/Marlin/src/HAL/DUE/usb/udi_msc.h b/Marlin/src/HAL/DUE/usb/udi_msc.h index 730dbc8eec56..0ede4d6a8346 100644 --- a/Marlin/src/HAL/DUE/usb/udi_msc.h +++ b/Marlin/src/HAL/DUE/usb/udi_msc.h @@ -77,9 +77,9 @@ extern UDC_DESC_STORAGE udi_api_t udi_api_msc; //! Interface descriptor structure for MSC typedef struct { - usb_iface_desc_t iface; - usb_ep_desc_t ep_in; - usb_ep_desc_t ep_out; + usb_iface_desc_t iface; + usb_ep_desc_t ep_in; + usb_ep_desc_t ep_out; } udi_msc_desc_t; //! By default no string associated to this interface @@ -94,32 +94,32 @@ typedef struct { //! Content of MSC interface descriptor for all speeds #define UDI_MSC_DESC \ - .iface.bLength = sizeof(usb_iface_desc_t),\ - .iface.bDescriptorType = USB_DT_INTERFACE,\ - .iface.bInterfaceNumber = UDI_MSC_IFACE_NUMBER,\ - .iface.bAlternateSetting = 0,\ - .iface.bNumEndpoints = 2,\ - .iface.bInterfaceClass = MSC_CLASS,\ - .iface.bInterfaceSubClass = MSC_SUBCLASS_TRANSPARENT,\ - .iface.bInterfaceProtocol = MSC_PROTOCOL_BULK,\ - .iface.iInterface = UDI_MSC_STRING_ID,\ - .ep_in.bLength = sizeof(usb_ep_desc_t),\ - .ep_in.bDescriptorType = USB_DT_ENDPOINT,\ - .ep_in.bEndpointAddress = UDI_MSC_EP_IN,\ - .ep_in.bmAttributes = USB_EP_TYPE_BULK,\ - .ep_in.bInterval = 0,\ - .ep_out.bLength = sizeof(usb_ep_desc_t),\ - .ep_out.bDescriptorType = USB_DT_ENDPOINT,\ - .ep_out.bEndpointAddress = UDI_MSC_EP_OUT,\ - .ep_out.bmAttributes = USB_EP_TYPE_BULK,\ - .ep_out.bInterval = 0, + .iface.bLength = sizeof(usb_iface_desc_t),\ + .iface.bDescriptorType = USB_DT_INTERFACE,\ + .iface.bInterfaceNumber = UDI_MSC_IFACE_NUMBER,\ + .iface.bAlternateSetting = 0,\ + .iface.bNumEndpoints = 2,\ + .iface.bInterfaceClass = MSC_CLASS,\ + .iface.bInterfaceSubClass = MSC_SUBCLASS_TRANSPARENT,\ + .iface.bInterfaceProtocol = MSC_PROTOCOL_BULK,\ + .iface.iInterface = UDI_MSC_STRING_ID,\ + .ep_in.bLength = sizeof(usb_ep_desc_t),\ + .ep_in.bDescriptorType = USB_DT_ENDPOINT,\ + .ep_in.bEndpointAddress = UDI_MSC_EP_IN,\ + .ep_in.bmAttributes = USB_EP_TYPE_BULK,\ + .ep_in.bInterval = 0,\ + .ep_out.bLength = sizeof(usb_ep_desc_t),\ + .ep_out.bDescriptorType = USB_DT_ENDPOINT,\ + .ep_out.bEndpointAddress = UDI_MSC_EP_OUT,\ + .ep_out.bmAttributes = USB_EP_TYPE_BULK,\ + .ep_out.bInterval = 0, //! Content of MSC interface descriptor for full speed only #define UDI_MSC_DESC_FS {\ - UDI_MSC_DESC \ - .ep_in.wMaxPacketSize = LE16(UDI_MSC_EPS_SIZE_FS),\ - .ep_out.wMaxPacketSize = LE16(UDI_MSC_EPS_SIZE_FS),\ - } + UDI_MSC_DESC \ + .ep_in.wMaxPacketSize = LE16(UDI_MSC_EPS_SIZE_FS),\ + .ep_out.wMaxPacketSize = LE16(UDI_MSC_EPS_SIZE_FS),\ + } //! Content of MSC interface descriptor for high speed only #define UDI_MSC_DESC_HS {\ @@ -129,7 +129,6 @@ typedef struct { } //@} - /** * \ingroup udi_group * \defgroup udi_msc_group USB Device Interface (UDI) for Mass Storage Class (MSC) @@ -163,14 +162,13 @@ bool udi_msc_process_trans(void); * \return \c 1 if function was successfully done, otherwise \c 0. */ bool udi_msc_trans_block(bool b_read, uint8_t * block, iram_size_t block_size, - void (*callback) (udd_ep_status_t status, iram_size_t n, udd_ep_id_t ep)); + void (*callback) (udd_ep_status_t status, iram_size_t n, udd_ep_id_t ep)); //@} #ifdef __cplusplus } #endif - /** * \page udi_msc_quickstart Quick start guide for USB device Mass Storage module (UDI MSC) * @@ -200,35 +198,32 @@ bool udi_msc_trans_block(bool b_read, uint8_t * block, iram_size_t block_size, * \subsection udi_msc_basic_use_case_usage_code Example code * Content of conf_usb.h: * \code - #define USB_DEVICE_SERIAL_NAME "12...EF" // Disk SN for MSC - #define UDI_MSC_GLOBAL_VENDOR_ID \ - 'A', 'T', 'M', 'E', 'L', ' ', ' ', ' ' - #define UDI_MSC_GLOBAL_PRODUCT_VERSION \ - '1', '.', '0', '0' - #define UDI_MSC_ENABLE_EXT() my_callback_msc_enable() - extern bool my_callback_msc_enable(void); - #define UDI_MSC_DISABLE_EXT() my_callback_msc_disable() - extern void my_callback_msc_disable(void); - #include "udi_msc_conf.h" // At the end of conf_usb.h file + #define USB_DEVICE_SERIAL_NAME "12...EF" // Disk SN for MSC + #define UDI_MSC_GLOBAL_VENDOR_ID \ + 'A', 'T', 'M', 'E', 'L', ' ', ' ', ' ' + #define UDI_MSC_GLOBAL_PRODUCT_VERSION \ + '1', '.', '0', '0' + #define UDI_MSC_ENABLE_EXT() my_callback_msc_enable() + extern bool my_callback_msc_enable(void); + #define UDI_MSC_DISABLE_EXT() my_callback_msc_disable() + extern void my_callback_msc_disable(void); + #include "udi_msc_conf.h" // At the end of conf_usb.h file \endcode * * Add to application C-file: * \code - static bool my_flag_autorize_msc_transfert = false; - bool my_callback_msc_enable(void) - { - my_flag_autorize_msc_transfert = true; - return true; - } - void my_callback_msc_disable(void) - { - my_flag_autorize_msc_transfert = false; - } + static bool my_flag_autorize_msc_transfert = false; + bool my_callback_msc_enable(void) { + my_flag_autorize_msc_transfert = true; + return true; + } + void my_callback_msc_disable(void) { + my_flag_autorize_msc_transfert = false; + } - void task(void) - { - udi_msc_process_trans(); - } + void task(void) { + udi_msc_process_trans(); + } \endcode * * \subsection udi_msc_basic_use_case_setup_flow Workflow @@ -237,14 +232,14 @@ bool udi_msc_trans_block(bool b_read, uint8_t * block, iram_size_t block_size, * - \code #define USB_DEVICE_SERIAL_NAME "12...EF" // Disk SN for MSC \endcode * \note The USB serial number is mandatory when a MSC interface is used. * - \code //! Vendor name and Product version of MSC interface - #define UDI_MSC_GLOBAL_VENDOR_ID \ - 'A', 'T', 'M', 'E', 'L', ' ', ' ', ' ' - #define UDI_MSC_GLOBAL_PRODUCT_VERSION \ - '1', '.', '0', '0' \endcode + #define UDI_MSC_GLOBAL_VENDOR_ID \ + 'A', 'T', 'M', 'E', 'L', ' ', ' ', ' ' + #define UDI_MSC_GLOBAL_PRODUCT_VERSION \ + '1', '.', '0', '0' \endcode * \note The USB MSC interface requires a vendor ID (8 ASCII characters) * and a product version (4 ASCII characters). * - \code #define UDI_MSC_ENABLE_EXT() my_callback_msc_enable() - extern bool my_callback_msc_enable(void); \endcode + extern bool my_callback_msc_enable(void); \endcode * \note After the device enumeration (detecting and identifying USB devices), * the USB host starts the device configuration. When the USB MSC interface * from the device is accepted by the host, the USB host enables this interface and the @@ -252,7 +247,7 @@ bool udi_msc_trans_block(bool b_read, uint8_t * block, iram_size_t block_size, * Thus, when this event is received, the tasks which call * udi_msc_process_trans() must be enabled. * - \code #define UDI_MSC_DISABLE_EXT() my_callback_msc_disable() - extern void my_callback_msc_disable(void); \endcode + extern void my_callback_msc_disable(void); \endcode * \note When the USB device is unplugged or is reset by the USB host, the USB * interface is disabled and the UDI_MSC_DISABLE_EXT() callback function * is called. Thus, it is recommended to disable the task which is called udi_msc_process_trans(). @@ -261,15 +256,15 @@ bool udi_msc_trans_block(bool b_read, uint8_t * block, iram_size_t block_size, * must be done outside USB interrupt routine. This is done in the MSC process * ("udi_msc_process_trans()") called by main loop: * - \code * void task(void) { - udi_msc_process_trans(); - } \endcode + udi_msc_process_trans(); + } \endcode * -# The MSC speed depends on task periodicity. To get the best speed * the notification callback "UDI_MSC_NOTIFY_TRANS_EXT" can be used to wakeup * this task (Example, through a mutex): * - \code #define UDI_MSC_NOTIFY_TRANS_EXT() msc_notify_trans() - void msc_notify_trans(void) { - wakeup_my_task(); - } \endcode + void msc_notify_trans(void) { + wakeup_my_task(); + } \endcode * * \section udi_msc_use_cases Advanced use cases * For more advanced use of the UDI MSC module, see the following use cases: @@ -302,72 +297,72 @@ bool udi_msc_trans_block(bool b_read, uint8_t * block, iram_size_t block_size, * \subsection udi_msc_use_case_composite_usage_code Example code * Content of conf_usb.h: * \code - #define USB_DEVICE_EP_CTRL_SIZE 64 - #define USB_DEVICE_NB_INTERFACE (X+1) - #define USB_DEVICE_MAX_EP (X+2) + #define USB_DEVICE_EP_CTRL_SIZE 64 + #define USB_DEVICE_NB_INTERFACE (X+1) + #define USB_DEVICE_MAX_EP (X+2) - #define UDI_MSC_EP_IN (X | USB_EP_DIR_IN) - #define UDI_MSC_EP_OUT (Y | USB_EP_DIR_OUT) - #define UDI_MSC_IFACE_NUMBER X + #define UDI_MSC_EP_IN (X | USB_EP_DIR_IN) + #define UDI_MSC_EP_OUT (Y | USB_EP_DIR_OUT) + #define UDI_MSC_IFACE_NUMBER X - #define UDI_COMPOSITE_DESC_T \ - udi_msc_desc_t udi_msc; \ - ... - #define UDI_COMPOSITE_DESC_FS \ - .udi_msc = UDI_MSC_DESC, \ - ... - #define UDI_COMPOSITE_DESC_HS \ - .udi_msc = UDI_MSC_DESC, \ - ... - #define UDI_COMPOSITE_API \ - &udi_api_msc, \ - ... + #define UDI_COMPOSITE_DESC_T \ + udi_msc_desc_t udi_msc; \ + ... + #define UDI_COMPOSITE_DESC_FS \ + .udi_msc = UDI_MSC_DESC, \ + ... + #define UDI_COMPOSITE_DESC_HS \ + .udi_msc = UDI_MSC_DESC, \ + ... + #define UDI_COMPOSITE_API \ + &udi_api_msc, \ + ... \endcode * * \subsection udi_msc_use_case_composite_usage_flow Workflow * -# Ensure that conf_usb.h is available and contains the following parameters * required for a USB composite device configuration: * - \code // Endpoint control size, This must be: - // - 8, 16, 32 or 64 for full speed device (8 is recommended to save RAM) - // - 64 for a high speed device - #define USB_DEVICE_EP_CTRL_SIZE 64 - // Total Number of interfaces on this USB device. - // Add 1 for MSC. - #define USB_DEVICE_NB_INTERFACE (X+1) - // Total number of endpoints on this USB device. - // This must include each endpoint for each interface. - // Add 2 for MSC. - #define USB_DEVICE_MAX_EP (X+2) \endcode + // - 8, 16, 32 or 64 for full speed device (8 is recommended to save RAM) + // - 64 for a high speed device + #define USB_DEVICE_EP_CTRL_SIZE 64 + // Total Number of interfaces on this USB device. + // Add 1 for MSC. + #define USB_DEVICE_NB_INTERFACE (X+1) + // Total number of endpoints on this USB device. + // This must include each endpoint for each interface. + // Add 2 for MSC. + #define USB_DEVICE_MAX_EP (X+2) \endcode * -# Ensure that conf_usb.h contains the description of * composite device: * - \code // The endpoint numbers chosen by you for the MSC. - // The endpoint numbers starting from 1. - #define UDI_MSC_EP_IN (X | USB_EP_DIR_IN) - #define UDI_MSC_EP_OUT (Y | USB_EP_DIR_OUT) - // The interface index of an interface starting from 0 - #define UDI_MSC_IFACE_NUMBER X \endcode + // The endpoint numbers starting from 1. + #define UDI_MSC_EP_IN (X | USB_EP_DIR_IN) + #define UDI_MSC_EP_OUT (Y | USB_EP_DIR_OUT) + // The interface index of an interface starting from 0 + #define UDI_MSC_IFACE_NUMBER X \endcode * -# Ensure that conf_usb.h contains the following parameters * required for a USB composite device configuration: * - \code // USB Interfaces descriptor structure - #define UDI_COMPOSITE_DESC_T \ - ... - udi_msc_desc_t udi_msc; \ - ... - // USB Interfaces descriptor value for Full Speed - #define UDI_COMPOSITE_DESC_FS \ - ... - .udi_msc = UDI_MSC_DESC_FS, \ - ... - // USB Interfaces descriptor value for High Speed - #define UDI_COMPOSITE_DESC_HS \ - ... - .udi_msc = UDI_MSC_DESC_HS, \ - ... - // USB Interface APIs - #define UDI_COMPOSITE_API \ - ... - &udi_api_msc, \ - ... \endcode + #define UDI_COMPOSITE_DESC_T \ + ... + udi_msc_desc_t udi_msc; \ + ... + // USB Interfaces descriptor value for Full Speed + #define UDI_COMPOSITE_DESC_FS \ + ... + .udi_msc = UDI_MSC_DESC_FS, \ + ... + // USB Interfaces descriptor value for High Speed + #define UDI_COMPOSITE_DESC_HS \ + ... + .udi_msc = UDI_MSC_DESC_HS, \ + ... + // USB Interface APIs + #define UDI_COMPOSITE_API \ + ... + &udi_api_msc, \ + ... \endcode * - \note The descriptors order given in the four lists above must be the * same as the order defined by all interface indexes. The interface index * orders are defined through UDI_X_IFACE_NUMBER defines. diff --git a/Marlin/src/HAL/DUE/usb/uotghs_otg.h b/Marlin/src/HAL/DUE/usb/uotghs_otg.h index eca5e938bbe1..f0e55c896fac 100644 --- a/Marlin/src/HAL/DUE/usb/uotghs_otg.h +++ b/Marlin/src/HAL/DUE/usb/uotghs_otg.h @@ -127,13 +127,13 @@ void otg_dual_disable(void); //! These macros allows to enable/disable pad and UOTGHS hardware //! @{ //! Reset USB macro -#define otg_reset() \ - do { \ - UOTGHS->UOTGHS_CTRL = 0; \ - while( UOTGHS->UOTGHS_SR & 0x3FFF) {\ - UOTGHS->UOTGHS_SCR = 0xFFFFFFFF;\ - } \ - } while (0) +#define otg_reset() \ + do { \ + UOTGHS->UOTGHS_CTRL = 0; \ + while( UOTGHS->UOTGHS_SR & 0x3FFF) { \ + UOTGHS->UOTGHS_SCR = 0xFFFFFFFF; \ + } \ + } while (0) //! Enable USB macro #define otg_enable() (Set_bits(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_USBE)) //! Disable USB macro @@ -157,15 +157,14 @@ void otg_dual_disable(void); //! Configure time-out of specified OTG timer #define otg_configure_timeout(timer, timeout) (Set_bits(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_UNLOCK),\ - Wr_bitfield(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_TIMPAGE_Msk, timer),\ - Wr_bitfield(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_TIMVALUE_Msk, timeout),\ - Clr_bits(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_UNLOCK)) + Wr_bitfield(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_TIMPAGE_Msk, timer),\ + Wr_bitfield(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_TIMVALUE_Msk, timeout),\ + Clr_bits(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_UNLOCK)) //! Get configured time-out of specified OTG timer #define otg_get_timeout(timer) (Set_bits(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_UNLOCK),\ - Wr_bitfield(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_TIMPAGE_Msk, timer),\ - Clr_bits(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_UNLOCK),\ - Rd_bitfield(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_TIMVALUE_Msk)) - + Wr_bitfield(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_TIMPAGE_Msk, timer),\ + Clr_bits(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_UNLOCK),\ + Rd_bitfield(UOTGHS->UOTGHS_CTRL, UOTGHS_CTRL_TIMVALUE_Msk)) //! Get the dual-role device state of the internal USB finite state machine of the UOTGHS controller #define otg_get_fsm_drd_state() (Rd_bitfield(UOTGHS->UOTGHS_FSM, UOTGHS_FSM_DRDSTATE_Msk)) diff --git a/Marlin/src/HAL/DUE/usb/usb_protocol.h b/Marlin/src/HAL/DUE/usb/usb_protocol.h index ea51a8689649..4540247df826 100644 --- a/Marlin/src/HAL/DUE/usb/usb_protocol.h +++ b/Marlin/src/HAL/DUE/usb/usb_protocol.h @@ -108,17 +108,17 @@ * \brief Standard USB requests (bRequest) */ enum usb_reqid { - USB_REQ_GET_STATUS = 0, - USB_REQ_CLEAR_FEATURE = 1, - USB_REQ_SET_FEATURE = 3, - USB_REQ_SET_ADDRESS = 5, - USB_REQ_GET_DESCRIPTOR = 6, - USB_REQ_SET_DESCRIPTOR = 7, - USB_REQ_GET_CONFIGURATION = 8, - USB_REQ_SET_CONFIGURATION = 9, - USB_REQ_GET_INTERFACE = 10, - USB_REQ_SET_INTERFACE = 11, - USB_REQ_SYNCH_FRAME = 12, + USB_REQ_GET_STATUS = 0, + USB_REQ_CLEAR_FEATURE = 1, + USB_REQ_SET_FEATURE = 3, + USB_REQ_SET_ADDRESS = 5, + USB_REQ_GET_DESCRIPTOR = 6, + USB_REQ_SET_DESCRIPTOR = 7, + USB_REQ_GET_CONFIGURATION = 8, + USB_REQ_SET_CONFIGURATION = 9, + USB_REQ_GET_INTERFACE = 10, + USB_REQ_SET_INTERFACE = 11, + USB_REQ_SYNCH_FRAME = 12, }; /** @@ -126,9 +126,9 @@ enum usb_reqid { * */ enum usb_device_status { - USB_DEV_STATUS_BUS_POWERED = 0, - USB_DEV_STATUS_SELF_POWERED = 1, - USB_DEV_STATUS_REMOTEWAKEUP = 2 + USB_DEV_STATUS_BUS_POWERED = 0, + USB_DEV_STATUS_SELF_POWERED = 1, + USB_DEV_STATUS_REMOTEWAKEUP = 2 }; /** @@ -136,7 +136,7 @@ enum usb_device_status { * */ enum usb_interface_status { - USB_IFACE_STATUS_RESERVED = 0 + USB_IFACE_STATUS_RESERVED = 0 }; /** @@ -144,7 +144,7 @@ enum usb_interface_status { * */ enum usb_endpoint_status { - USB_EP_STATUS_HALTED = 1, + USB_EP_STATUS_HALTED = 1, }; /** @@ -153,11 +153,11 @@ enum usb_endpoint_status { * \note valid for SetFeature request. */ enum usb_device_feature { - USB_DEV_FEATURE_REMOTE_WAKEUP = 1, //!< Remote wakeup enabled - USB_DEV_FEATURE_TEST_MODE = 2, //!< USB test mode - USB_DEV_FEATURE_OTG_B_HNP_ENABLE = 3, - USB_DEV_FEATURE_OTG_A_HNP_SUPPORT = 4, - USB_DEV_FEATURE_OTG_A_ALT_HNP_SUPPORT = 5 + USB_DEV_FEATURE_REMOTE_WAKEUP = 1, //!< Remote wakeup enabled + USB_DEV_FEATURE_TEST_MODE = 2, //!< USB test mode + USB_DEV_FEATURE_OTG_B_HNP_ENABLE = 3, + USB_DEV_FEATURE_OTG_A_HNP_SUPPORT = 4, + USB_DEV_FEATURE_OTG_A_ALT_HNP_SUPPORT = 5 }; /** @@ -166,54 +166,54 @@ enum usb_device_feature { * \note valid for USB_DEV_FEATURE_TEST_MODE request. */ enum usb_device_hs_test_mode { - USB_DEV_TEST_MODE_J = 1, - USB_DEV_TEST_MODE_K = 2, - USB_DEV_TEST_MODE_SE0_NAK = 3, - USB_DEV_TEST_MODE_PACKET = 4, - USB_DEV_TEST_MODE_FORCE_ENABLE = 5, + USB_DEV_TEST_MODE_J = 1, + USB_DEV_TEST_MODE_K = 2, + USB_DEV_TEST_MODE_SE0_NAK = 3, + USB_DEV_TEST_MODE_PACKET = 4, + USB_DEV_TEST_MODE_FORCE_ENABLE = 5, }; /** * \brief Standard USB endpoint feature/status flags */ enum usb_endpoint_feature { - USB_EP_FEATURE_HALT = 0, + USB_EP_FEATURE_HALT = 0, }; /** * \brief Standard USB Test Mode Selectors */ enum usb_test_mode_selector { - USB_TEST_J = 0x01, - USB_TEST_K = 0x02, - USB_TEST_SE0_NAK = 0x03, - USB_TEST_PACKET = 0x04, - USB_TEST_FORCE_ENABLE = 0x05, + USB_TEST_J = 0x01, + USB_TEST_K = 0x02, + USB_TEST_SE0_NAK = 0x03, + USB_TEST_PACKET = 0x04, + USB_TEST_FORCE_ENABLE = 0x05, }; /** * \brief Standard USB descriptor types */ enum usb_descriptor_type { - USB_DT_DEVICE = 1, - USB_DT_CONFIGURATION = 2, - USB_DT_STRING = 3, - USB_DT_INTERFACE = 4, - USB_DT_ENDPOINT = 5, - USB_DT_DEVICE_QUALIFIER = 6, - USB_DT_OTHER_SPEED_CONFIGURATION = 7, - USB_DT_INTERFACE_POWER = 8, - USB_DT_OTG = 9, - USB_DT_IAD = 0x0B, - USB_DT_BOS = 0x0F, - USB_DT_DEVICE_CAPABILITY = 0x10, + USB_DT_DEVICE = 1, + USB_DT_CONFIGURATION = 2, + USB_DT_STRING = 3, + USB_DT_INTERFACE = 4, + USB_DT_ENDPOINT = 5, + USB_DT_DEVICE_QUALIFIER = 6, + USB_DT_OTHER_SPEED_CONFIGURATION = 7, + USB_DT_INTERFACE_POWER = 8, + USB_DT_OTG = 9, + USB_DT_IAD = 0x0B, + USB_DT_BOS = 0x0F, + USB_DT_DEVICE_CAPABILITY = 0x10, }; /** * \brief USB Device Capability types */ enum usb_capability_type { - USB_DC_USB20_EXTENSION = 0x02, + USB_DC_USB20_EXTENSION = 0x02, }; /** @@ -221,7 +221,7 @@ enum usb_capability_type { * To fill bmAttributes field of usb_capa_ext_desc_t structure. */ enum usb_capability_extension_attr { - USB_DC_EXT_LPM = 0x00000002, + USB_DC_EXT_LPM = 0x00000002, }; #define HIRD_50_US 0 @@ -254,18 +254,18 @@ enum usb_capability_extension_attr { * \brief Standard USB endpoint transfer types */ enum usb_ep_type { - USB_EP_TYPE_CONTROL = 0x00, - USB_EP_TYPE_ISOCHRONOUS = 0x01, - USB_EP_TYPE_BULK = 0x02, - USB_EP_TYPE_INTERRUPT = 0x03, - USB_EP_TYPE_MASK = 0x03, + USB_EP_TYPE_CONTROL = 0x00, + USB_EP_TYPE_ISOCHRONOUS = 0x01, + USB_EP_TYPE_BULK = 0x02, + USB_EP_TYPE_INTERRUPT = 0x03, + USB_EP_TYPE_MASK = 0x03, }; /** * \brief Standard USB language IDs for string descriptors */ enum usb_langid { - USB_LANGID_EN_US = 0x0409, //!< English (United States) + USB_LANGID_EN_US = 0x0409, //!< English (United States) }; /** @@ -308,31 +308,31 @@ COMPILER_PACK_SET(1) * The data payload of SETUP packets always follows this structure. */ typedef struct { - uint8_t bmRequestType; - uint8_t bRequest; - le16_t wValue; - le16_t wIndex; - le16_t wLength; + uint8_t bmRequestType; + uint8_t bRequest; + le16_t wValue; + le16_t wIndex; + le16_t wLength; } usb_setup_req_t; /** * \brief Standard USB device descriptor structure */ typedef struct { - uint8_t bLength; - uint8_t bDescriptorType; - le16_t bcdUSB; - uint8_t bDeviceClass; - uint8_t bDeviceSubClass; - uint8_t bDeviceProtocol; - uint8_t bMaxPacketSize0; - le16_t idVendor; - le16_t idProduct; - le16_t bcdDevice; - uint8_t iManufacturer; - uint8_t iProduct; - uint8_t iSerialNumber; - uint8_t bNumConfigurations; + uint8_t bLength; + uint8_t bDescriptorType; + le16_t bcdUSB; + uint8_t bDeviceClass; + uint8_t bDeviceSubClass; + uint8_t bDeviceProtocol; + uint8_t bMaxPacketSize0; + le16_t idVendor; + le16_t idProduct; + le16_t bcdDevice; + uint8_t iManufacturer; + uint8_t iProduct; + uint8_t iSerialNumber; + uint8_t bNumConfigurations; } usb_dev_desc_t; /** @@ -344,15 +344,15 @@ typedef struct { * the device was operating at full speed.) */ typedef struct { - uint8_t bLength; - uint8_t bDescriptorType; - le16_t bcdUSB; - uint8_t bDeviceClass; - uint8_t bDeviceSubClass; - uint8_t bDeviceProtocol; - uint8_t bMaxPacketSize0; - uint8_t bNumConfigurations; - uint8_t bReserved; + uint8_t bLength; + uint8_t bDescriptorType; + le16_t bcdUSB; + uint8_t bDeviceClass; + uint8_t bDeviceSubClass; + uint8_t bDeviceProtocol; + uint8_t bMaxPacketSize0; + uint8_t bNumConfigurations; + uint8_t bReserved; } usb_dev_qual_desc_t; /** @@ -368,10 +368,10 @@ typedef struct { * The descriptor type in the GetDescriptor() request is set to BOS. */ typedef struct { - uint8_t bLength; - uint8_t bDescriptorType; - le16_t wTotalLength; - uint8_t bNumDeviceCaps; + uint8_t bLength; + uint8_t bDescriptorType; + le16_t wTotalLength; + uint8_t bNumDeviceCaps; } usb_dev_bos_desc_t; @@ -381,10 +381,10 @@ typedef struct { * Defines the set of USB 1.1-specific device level capabilities. */ typedef struct { - uint8_t bLength; - uint8_t bDescriptorType; - uint8_t bDevCapabilityType; - le32_t bmAttributes; + uint8_t bLength; + uint8_t bDescriptorType; + uint8_t bDevCapabilityType; + le32_t bmAttributes; } usb_dev_capa_ext_desc_t; /** @@ -393,22 +393,22 @@ typedef struct { * The BOS descriptor and capabilities descriptors for LPM. */ typedef struct { - usb_dev_bos_desc_t bos; - usb_dev_capa_ext_desc_t capa_ext; + usb_dev_bos_desc_t bos; + usb_dev_capa_ext_desc_t capa_ext; } usb_dev_lpm_desc_t; /** * \brief Standard USB Interface Association Descriptor structure */ typedef struct { - uint8_t bLength; //!< size of this descriptor in bytes - uint8_t bDescriptorType; //!< INTERFACE descriptor type - uint8_t bFirstInterface; //!< Number of interface - uint8_t bInterfaceCount; //!< value to select alternate setting - uint8_t bFunctionClass; //!< Class code assigned by the USB - uint8_t bFunctionSubClass;//!< Sub-class code assigned by the USB - uint8_t bFunctionProtocol;//!< Protocol code assigned by the USB - uint8_t iFunction; //!< Index of string descriptor + uint8_t bLength; //!< size of this descriptor in bytes + uint8_t bDescriptorType; //!< INTERFACE descriptor type + uint8_t bFirstInterface; //!< Number of interface + uint8_t bInterfaceCount; //!< value to select alternate setting + uint8_t bFunctionClass; //!< Class code assigned by the USB + uint8_t bFunctionSubClass;//!< Sub-class code assigned by the USB + uint8_t bFunctionProtocol;//!< Protocol code assigned by the USB + uint8_t iFunction; //!< Index of string descriptor } usb_association_desc_t; @@ -416,14 +416,14 @@ typedef struct { * \brief Standard USB configuration descriptor structure */ typedef struct { - uint8_t bLength; - uint8_t bDescriptorType; - le16_t wTotalLength; - uint8_t bNumInterfaces; - uint8_t bConfigurationValue; - uint8_t iConfiguration; - uint8_t bmAttributes; - uint8_t bMaxPower; + uint8_t bLength; + uint8_t bDescriptorType; + le16_t wTotalLength; + uint8_t bNumInterfaces; + uint8_t bConfigurationValue; + uint8_t iConfiguration; + uint8_t bmAttributes; + uint8_t bMaxPower; } usb_conf_desc_t; @@ -438,41 +438,41 @@ typedef struct { * \brief Standard USB association descriptor structure */ typedef struct { - uint8_t bLength; //!< Size of this descriptor in bytes - uint8_t bDescriptorType; //!< Interface descriptor type - uint8_t bFirstInterface; //!< Number of interface - uint8_t bInterfaceCount; //!< value to select alternate setting - uint8_t bFunctionClass; //!< Class code assigned by the USB - uint8_t bFunctionSubClass; //!< Sub-class code assigned by the USB - uint8_t bFunctionProtocol; //!< Protocol code assigned by the USB - uint8_t iFunction; //!< Index of string descriptor + uint8_t bLength; //!< Size of this descriptor in bytes + uint8_t bDescriptorType; //!< Interface descriptor type + uint8_t bFirstInterface; //!< Number of interface + uint8_t bInterfaceCount; //!< value to select alternate setting + uint8_t bFunctionClass; //!< Class code assigned by the USB + uint8_t bFunctionSubClass; //!< Sub-class code assigned by the USB + uint8_t bFunctionProtocol; //!< Protocol code assigned by the USB + uint8_t iFunction; //!< Index of string descriptor } usb_iad_desc_t; /** * \brief Standard USB interface descriptor structure */ typedef struct { - uint8_t bLength; - uint8_t bDescriptorType; - uint8_t bInterfaceNumber; - uint8_t bAlternateSetting; - uint8_t bNumEndpoints; - uint8_t bInterfaceClass; - uint8_t bInterfaceSubClass; - uint8_t bInterfaceProtocol; - uint8_t iInterface; + uint8_t bLength; + uint8_t bDescriptorType; + uint8_t bInterfaceNumber; + uint8_t bAlternateSetting; + uint8_t bNumEndpoints; + uint8_t bInterfaceClass; + uint8_t bInterfaceSubClass; + uint8_t bInterfaceProtocol; + uint8_t iInterface; } usb_iface_desc_t; /** * \brief Standard USB endpoint descriptor structure */ typedef struct { - uint8_t bLength; - uint8_t bDescriptorType; - uint8_t bEndpointAddress; - uint8_t bmAttributes; - le16_t wMaxPacketSize; - uint8_t bInterval; + uint8_t bLength; + uint8_t bDescriptorType; + uint8_t bEndpointAddress; + uint8_t bmAttributes; + le16_t wMaxPacketSize; + uint8_t bInterval; } usb_ep_desc_t; @@ -480,13 +480,13 @@ typedef struct { * \brief A standard USB string descriptor structure */ typedef struct { - uint8_t bLength; - uint8_t bDescriptorType; + uint8_t bLength; + uint8_t bDescriptorType; } usb_str_desc_t; typedef struct { - usb_str_desc_t desc; - le16_t string[1]; + usb_str_desc_t desc; + le16_t string[1]; } usb_str_lgid_desc_t; COMPILER_PACK_RESET() diff --git a/Marlin/src/HAL/DUE/usb/usb_protocol_cdc.h b/Marlin/src/HAL/DUE/usb/usb_protocol_cdc.h index d594db52e33b..9b82afc6242b 100644 --- a/Marlin/src/HAL/DUE/usb/usb_protocol_cdc.h +++ b/Marlin/src/HAL/DUE/usb/usb_protocol_cdc.h @@ -58,42 +58,42 @@ * \name Possible values of class */ //@{ -#define CDC_CLASS_DEVICE 0x02 //!< USB Communication Device Class -#define CDC_CLASS_COMM 0x02 //!< CDC Communication Class Interface -#define CDC_CLASS_DATA 0x0A //!< CDC Data Class Interface +#define CDC_CLASS_DEVICE 0x02 //!< USB Communication Device Class +#define CDC_CLASS_COMM 0x02 //!< CDC Communication Class Interface +#define CDC_CLASS_DATA 0x0A //!< CDC Data Class Interface #define CDC_CLASS_MULTI 0xEF //!< CDC Multi-interface Function //@} //! \name USB CDC Subclass IDs //@{ -#define CDC_SUBCLASS_DLCM 0x01 //!< Direct Line Control Model -#define CDC_SUBCLASS_ACM 0x02 //!< Abstract Control Model -#define CDC_SUBCLASS_TCM 0x03 //!< Telephone Control Model -#define CDC_SUBCLASS_MCCM 0x04 //!< Multi-Channel Control Model -#define CDC_SUBCLASS_CCM 0x05 //!< CAPI Control Model -#define CDC_SUBCLASS_ETH 0x06 //!< Ethernet Networking Control Model -#define CDC_SUBCLASS_ATM 0x07 //!< ATM Networking Control Model +#define CDC_SUBCLASS_DLCM 0x01 //!< Direct Line Control Model +#define CDC_SUBCLASS_ACM 0x02 //!< Abstract Control Model +#define CDC_SUBCLASS_TCM 0x03 //!< Telephone Control Model +#define CDC_SUBCLASS_MCCM 0x04 //!< Multi-Channel Control Model +#define CDC_SUBCLASS_CCM 0x05 //!< CAPI Control Model +#define CDC_SUBCLASS_ETH 0x06 //!< Ethernet Networking Control Model +#define CDC_SUBCLASS_ATM 0x07 //!< ATM Networking Control Model //@} //! \name USB CDC Communication Interface Protocol IDs //@{ -#define CDC_PROTOCOL_V25TER 0x01 //!< Common AT commands +#define CDC_PROTOCOL_V25TER 0x01 //!< Common AT commands //@} //! \name USB CDC Data Interface Protocol IDs //@{ -#define CDC_PROTOCOL_I430 0x30 //!< ISDN BRI -#define CDC_PROTOCOL_HDLC 0x31 //!< HDLC -#define CDC_PROTOCOL_TRANS 0x32 //!< Transparent -#define CDC_PROTOCOL_Q921M 0x50 //!< Q.921 management protocol -#define CDC_PROTOCOL_Q921 0x51 //!< Q.931 [sic] Data link protocol -#define CDC_PROTOCOL_Q921TM 0x52 //!< Q.921 TEI-multiplexor -#define CDC_PROTOCOL_V42BIS 0x90 //!< Data compression procedures -#define CDC_PROTOCOL_Q931 0x91 //!< Euro-ISDN protocol control -#define CDC_PROTOCOL_V120 0x92 //!< V.24 rate adaption to ISDN -#define CDC_PROTOCOL_CAPI20 0x93 //!< CAPI Commands -#define CDC_PROTOCOL_HOST 0xFD //!< Host based driver +#define CDC_PROTOCOL_I430 0x30 //!< ISDN BRI +#define CDC_PROTOCOL_HDLC 0x31 //!< HDLC +#define CDC_PROTOCOL_TRANS 0x32 //!< Transparent +#define CDC_PROTOCOL_Q921M 0x50 //!< Q.921 management protocol +#define CDC_PROTOCOL_Q921 0x51 //!< Q.931 [sic] Data link protocol +#define CDC_PROTOCOL_Q921TM 0x52 //!< Q.921 TEI-multiplexor +#define CDC_PROTOCOL_V42BIS 0x90 //!< Data compression procedures +#define CDC_PROTOCOL_Q931 0x91 //!< Euro-ISDN protocol control +#define CDC_PROTOCOL_V120 0x92 //!< V.24 rate adaption to ISDN +#define CDC_PROTOCOL_CAPI20 0x93 //!< CAPI Commands +#define CDC_PROTOCOL_HOST 0xFD //!< Host based driver /** * \brief Describes the Protocol Unit Functional Descriptors [sic] * on Communication Class Interface @@ -103,16 +103,16 @@ //! \name USB CDC Functional Descriptor Types //@{ -#define CDC_CS_INTERFACE 0x24 //!< Interface Functional Descriptor -#define CDC_CS_ENDPOINT 0x25 //!< Endpoint Functional Descriptor +#define CDC_CS_INTERFACE 0x24 //!< Interface Functional Descriptor +#define CDC_CS_ENDPOINT 0x25 //!< Endpoint Functional Descriptor //@} //! \name USB CDC Functional Descriptor Subtypes //@{ -#define CDC_SCS_HEADER 0x00 //!< Header Functional Descriptor -#define CDC_SCS_CALL_MGMT 0x01 //!< Call Management -#define CDC_SCS_ACM 0x02 //!< Abstract Control Management -#define CDC_SCS_UNION 0x06 //!< Union Functional Descriptor +#define CDC_SCS_HEADER 0x00 //!< Header Functional Descriptor +#define CDC_SCS_CALL_MGMT 0x01 //!< Call Management +#define CDC_SCS_ACM 0x02 //!< Abstract Control Management +#define CDC_SCS_UNION 0x06 //!< Union Functional Descriptor //@} //! \name USB CDC Request IDs @@ -171,36 +171,36 @@ COMPILER_PACK_SET(1) //! CDC Header Functional Descriptor typedef struct { - uint8_t bFunctionLength; - uint8_t bDescriptorType; - uint8_t bDescriptorSubtype; - le16_t bcdCDC; + uint8_t bFunctionLength; + uint8_t bDescriptorType; + uint8_t bDescriptorSubtype; + le16_t bcdCDC; } usb_cdc_hdr_desc_t; //! CDC Call Management Functional Descriptor typedef struct { - uint8_t bFunctionLength; - uint8_t bDescriptorType; - uint8_t bDescriptorSubtype; - uint8_t bmCapabilities; - uint8_t bDataInterface; + uint8_t bFunctionLength; + uint8_t bDescriptorType; + uint8_t bDescriptorSubtype; + uint8_t bmCapabilities; + uint8_t bDataInterface; } usb_cdc_call_mgmt_desc_t; //! CDC ACM Functional Descriptor typedef struct { - uint8_t bFunctionLength; - uint8_t bDescriptorType; - uint8_t bDescriptorSubtype; - uint8_t bmCapabilities; + uint8_t bFunctionLength; + uint8_t bDescriptorType; + uint8_t bDescriptorSubtype; + uint8_t bmCapabilities; } usb_cdc_acm_desc_t; //! CDC Union Functional Descriptor typedef struct { - uint8_t bFunctionLength; - uint8_t bDescriptorType; - uint8_t bDescriptorSubtype; - uint8_t bMasterInterface; - uint8_t bSlaveInterface0; + uint8_t bFunctionLength; + uint8_t bDescriptorType; + uint8_t bDescriptorSubtype; + uint8_t bMasterInterface; + uint8_t bSlaveInterface0; } usb_cdc_union_desc_t; @@ -235,24 +235,24 @@ typedef struct { //@{ //! Line Coding structure typedef struct { - le32_t dwDTERate; - uint8_t bCharFormat; - uint8_t bParityType; - uint8_t bDataBits; + le32_t dwDTERate; + uint8_t bCharFormat; + uint8_t bParityType; + uint8_t bDataBits; } usb_cdc_line_coding_t; //! Possible values of bCharFormat enum cdc_char_format { - CDC_STOP_BITS_1 = 0, //!< 1 stop bit - CDC_STOP_BITS_1_5 = 1, //!< 1.5 stop bits - CDC_STOP_BITS_2 = 2, //!< 2 stop bits + CDC_STOP_BITS_1 = 0, //!< 1 stop bit + CDC_STOP_BITS_1_5 = 1, //!< 1.5 stop bits + CDC_STOP_BITS_2 = 2, //!< 2 stop bits }; //! Possible values of bParityType enum cdc_parity { - CDC_PAR_NONE = 0, //!< No parity - CDC_PAR_ODD = 1, //!< Odd parity - CDC_PAR_EVEN = 2, //!< Even parity - CDC_PAR_MARK = 3, //!< Parity forced to 0 (space) - CDC_PAR_SPACE = 4, //!< Parity forced to 1 (mark) + CDC_PAR_NONE = 0, //!< No parity + CDC_PAR_ODD = 1, //!< Odd parity + CDC_PAR_EVEN = 2, //!< Even parity + CDC_PAR_MARK = 3, //!< Parity forced to 0 (space) + CDC_PAR_SPACE = 4, //!< Parity forced to 1 (mark) }; //@} @@ -262,7 +262,7 @@ enum cdc_parity { //! Control signal structure typedef struct { - uint16_t value; + uint16_t value; } usb_cdc_control_signal_t; //! \name Possible values in usb_cdc_control_signal_t @@ -283,11 +283,11 @@ typedef struct { //@{ typedef struct { - uint8_t bmRequestType; - uint8_t bNotification; - le16_t wValue; - le16_t wIndex; - le16_t wLength; + uint8_t bmRequestType; + uint8_t bNotification; + le16_t wValue; + le16_t wIndex; + le16_t wLength; } usb_cdc_notify_msg_t; //! \name USB CDC serial state @@ -295,8 +295,8 @@ typedef struct { //! Hardware handshake support (cdc spec 1.1 chapter 6.3.5) typedef struct { - usb_cdc_notify_msg_t header; - le16_t value; + usb_cdc_notify_msg_t header; + le16_t value; } usb_cdc_notify_serial_state_t; //! \name Possible values in usb_cdc_notify_serial_state_t diff --git a/Marlin/src/HAL/DUE/usb/usb_protocol_msc.h b/Marlin/src/HAL/DUE/usb/usb_protocol_msc.h index e1e59237d823..cc30a94e4fc8 100644 --- a/Marlin/src/HAL/DUE/usb/usb_protocol_msc.h +++ b/Marlin/src/HAL/DUE/usb/usb_protocol_msc.h @@ -59,7 +59,7 @@ * \name Possible Class value */ //@{ -#define MSC_CLASS 0x08 +#define MSC_CLASS 0x08 //@} /** @@ -71,12 +71,12 @@ * operating systems like Windows XP. */ //@{ -#define MSC_SUBCLASS_RBC 0x01 //!< Reduced Block Commands -#define MSC_SUBCLASS_ATAPI 0x02 //!< CD/DVD devices -#define MSC_SUBCLASS_QIC_157 0x03 //!< Tape devices -#define MSC_SUBCLASS_UFI 0x04 //!< Floppy disk drives -#define MSC_SUBCLASS_SFF_8070I 0x05 //!< Floppy disk drives -#define MSC_SUBCLASS_TRANSPARENT 0x06 //!< Determined by INQUIRY +#define MSC_SUBCLASS_RBC 0x01 //!< Reduced Block Commands +#define MSC_SUBCLASS_ATAPI 0x02 //!< CD/DVD devices +#define MSC_SUBCLASS_QIC_157 0x03 //!< Tape devices +#define MSC_SUBCLASS_UFI 0x04 //!< Floppy disk drives +#define MSC_SUBCLASS_SFF_8070I 0x05 //!< Floppy disk drives +#define MSC_SUBCLASS_TRANSPARENT 0x06 //!< Determined by INQUIRY //@} /** @@ -84,9 +84,9 @@ * \note Only the BULK protocol should be used in new designs. */ //@{ -#define MSC_PROTOCOL_CBI 0x00 //!< Command/Bulk/Interrupt -#define MSC_PROTOCOL_CBI_ALT 0x01 //!< W/o command completion -#define MSC_PROTOCOL_BULK 0x50 //!< Bulk-only +#define MSC_PROTOCOL_CBI 0x00 //!< Command/Bulk/Interrupt +#define MSC_PROTOCOL_CBI_ALT 0x01 //!< W/o command completion +#define MSC_PROTOCOL_BULK 0x50 //!< Bulk-only //@} @@ -94,8 +94,8 @@ * \brief MSC USB requests (bRequest) */ enum usb_reqid_msc { - USB_REQ_MSC_BULK_RESET = 0xFF, //!< Mass Storage Reset - USB_REQ_MSC_GET_MAX_LUN = 0xFE //!< Get Max LUN + USB_REQ_MSC_BULK_RESET = 0xFF, //!< Mass Storage Reset + USB_REQ_MSC_GET_MAX_LUN = 0xFE //!< Get Max LUN }; @@ -106,20 +106,20 @@ COMPILER_PACK_SET(1) */ //@{ struct usb_msc_cbw { - le32_t dCBWSignature; //!< Must contain 'USBC' - le32_t dCBWTag; //!< Unique command ID - le32_t dCBWDataTransferLength; //!< Number of bytes to transfer - uint8_t bmCBWFlags; //!< Direction in bit 7 - uint8_t bCBWLUN; //!< Logical Unit Number - uint8_t bCBWCBLength; //!< Number of valid CDB bytes - uint8_t CDB[16]; //!< SCSI Command Descriptor Block + le32_t dCBWSignature; //!< Must contain 'USBC' + le32_t dCBWTag; //!< Unique command ID + le32_t dCBWDataTransferLength; //!< Number of bytes to transfer + uint8_t bmCBWFlags; //!< Direction in bit 7 + uint8_t bCBWLUN; //!< Logical Unit Number + uint8_t bCBWCBLength; //!< Number of valid CDB bytes + uint8_t CDB[16]; //!< SCSI Command Descriptor Block }; -#define USB_CBW_SIGNATURE 0x55534243 //!< dCBWSignature value -#define USB_CBW_DIRECTION_IN (1<<7) //!< Data from device to host -#define USB_CBW_DIRECTION_OUT (0<<7) //!< Data from host to device -#define USB_CBW_LUN_MASK 0x0F //!< Valid bits in bCBWLUN -#define USB_CBW_LEN_MASK 0x1F //!< Valid bits in bCBWCBLength +#define USB_CBW_SIGNATURE 0x55534243 //!< dCBWSignature value +#define USB_CBW_DIRECTION_IN (1<<7) //!< Data from device to host +#define USB_CBW_DIRECTION_OUT (0<<7) //!< Data from host to device +#define USB_CBW_LUN_MASK 0x0F //!< Valid bits in bCBWLUN +#define USB_CBW_LEN_MASK 0x1F //!< Valid bits in bCBWCBLength //@} @@ -128,16 +128,16 @@ struct usb_msc_cbw { */ //@{ struct usb_msc_csw { - le32_t dCSWSignature; //!< Must contain 'USBS' - le32_t dCSWTag; //!< Same as dCBWTag - le32_t dCSWDataResidue; //!< Number of bytes not transferred - uint8_t bCSWStatus; //!< Status code + le32_t dCSWSignature; //!< Must contain 'USBS' + le32_t dCSWTag; //!< Same as dCBWTag + le32_t dCSWDataResidue; //!< Number of bytes not transferred + uint8_t bCSWStatus; //!< Status code }; -#define USB_CSW_SIGNATURE 0x55534253 //!< dCSWSignature value -#define USB_CSW_STATUS_PASS 0x00 //!< Command Passed -#define USB_CSW_STATUS_FAIL 0x01 //!< Command Failed -#define USB_CSW_STATUS_PE 0x02 //!< Phase Error +#define USB_CSW_SIGNATURE 0x55534253 //!< dCSWSignature value +#define USB_CSW_STATUS_PASS 0x00 //!< Command Passed +#define USB_CSW_STATUS_FAIL 0x01 //!< Command Failed +#define USB_CSW_STATUS_PE 0x02 //!< Phase Error //@} COMPILER_PACK_RESET() diff --git a/buildroot/share/PlatformIO/variants/marlin_maple_CHITU_F103/board/board.h b/buildroot/share/PlatformIO/variants/marlin_maple_CHITU_F103/board/board.h index 80261d30274d..5664a1ad2c68 100644 --- a/buildroot/share/PlatformIO/variants/marlin_maple_CHITU_F103/board/board.h +++ b/buildroot/share/PlatformIO/variants/marlin_maple_CHITU_F103/board/board.h @@ -100,12 +100,12 @@ /* * SDIO Pins */ -#define BOARD_SDIO_D0 PC8 -#define BOARD_SDIO_D1 PC9 -#define BOARD_SDIO_D2 PC10 -#define BOARD_SDIO_D3 PC11 -#define BOARD_SDIO_CLK PC12 -#define BOARD_SDIO_CMD PD2 +#define BOARD_SDIO_D0 PC8 +#define BOARD_SDIO_D1 PC9 +#define BOARD_SDIO_D2 PC10 +#define BOARD_SDIO_D3 PC11 +#define BOARD_SDIO_CLK PC12 +#define BOARD_SDIO_CMD PD2 /* Pin aliases: these give the GPIO port/bit for each pin as an * enum. These are optional, but recommended. They make it easier to diff --git a/buildroot/share/PlatformIO/variants/marlin_maple_MEEB_3DP/board/board.h b/buildroot/share/PlatformIO/variants/marlin_maple_MEEB_3DP/board/board.h index 6ffa2447460d..24458fe79ab2 100644 --- a/buildroot/share/PlatformIO/variants/marlin_maple_MEEB_3DP/board/board.h +++ b/buildroot/share/PlatformIO/variants/marlin_maple_MEEB_3DP/board/board.h @@ -100,12 +100,12 @@ /* * SDIO Pins */ -#define BOARD_SDIO_D0 PC8 -#define BOARD_SDIO_D1 PC9 -#define BOARD_SDIO_D2 PC10 -#define BOARD_SDIO_D3 PC11 -#define BOARD_SDIO_CLK PC12 -#define BOARD_SDIO_CMD PD2 +#define BOARD_SDIO_D0 PC8 +#define BOARD_SDIO_D1 PC9 +#define BOARD_SDIO_D2 PC10 +#define BOARD_SDIO_D3 PC11 +#define BOARD_SDIO_CLK PC12 +#define BOARD_SDIO_CMD PD2 /* Pin aliases: these give the GPIO port/bit for each pin as an * enum. These are optional, but recommended. They make it easier to From 7680fe2b59c9861c0e6acb13cf085ca55d7deddc Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 5 Jun 2023 16:01:32 -0500 Subject: [PATCH 254/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Dir?= =?UTF-8?q?=20change=20is=20AxisBits?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25761 --- Marlin/src/module/planner.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/module/planner.cpp b/Marlin/src/module/planner.cpp index 10b8ca86706a..6b645fa1337e 100644 --- a/Marlin/src/module/planner.cpp +++ b/Marlin/src/module/planner.cpp @@ -2419,8 +2419,8 @@ bool Planner::_populate_block( xs2 = xs1; xs1 = xs0; ys2 = ys1; ys1 = ys0; } - xs0 = TEST(direction_change, X_AXIS) ? segment_time_us : xy_freq_min_interval_us; - ys0 = TEST(direction_change, Y_AXIS) ? segment_time_us : xy_freq_min_interval_us; + xs0 = direction_change.x ? segment_time_us : xy_freq_min_interval_us; + ys0 = direction_change.y ? segment_time_us : xy_freq_min_interval_us; if (segment_time_us < xy_freq_min_interval_us) { const int32_t least_xy_segment_time = _MIN(_MAX(xs0, xs1, xs2), _MAX(ys0, ys1, ys2)); From fbc5bd0d0424d365eaaddad47c58b733557ef42d Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 5 Jun 2023 16:24:20 -0500 Subject: [PATCH 255/427] =?UTF-8?q?=F0=9F=A9=B9=20Wrap=20HAS=5FDISPLAY=20f?= =?UTF-8?q?or=20if()?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #24877 --- Marlin/src/gcode/feature/pause/M125.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/gcode/feature/pause/M125.cpp b/Marlin/src/gcode/feature/pause/M125.cpp index 0e0d6ed143d2..b8d9d4811bc7 100644 --- a/Marlin/src/gcode/feature/pause/M125.cpp +++ b/Marlin/src/gcode/feature/pause/M125.cpp @@ -96,7 +96,7 @@ void GcodeSuite::M125() { const bool show_lcd = TERN0(HAS_MARLINUI_MENU, parser.boolval('P')); if (pause_print(retract, park_point, show_lcd, 0)) { - if (HAS_DISPLAY || ALL(EMERGENCY_PARSER, HOST_PROMPT_SUPPORT) || !sd_printing || show_lcd) { + if (ENABLED(HAS_DISPLAY) || ALL(EMERGENCY_PARSER, HOST_PROMPT_SUPPORT) || !sd_printing || show_lcd) { wait_for_confirmation(false, 0); resume_print(0, 0, -retract, 0); } From 6a29d5d5af1b6ef0bee4125a9fc00aaf2c1b6695 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 5 Jun 2023 17:25:42 -0500 Subject: [PATCH 256/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Fix?= =?UTF-8?q?=20mfconfig=20trailing=20space?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buildroot/share/git/mfconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildroot/share/git/mfconfig b/buildroot/share/git/mfconfig index 852885944621..0c4a0de5c8b6 100755 --- a/buildroot/share/git/mfconfig +++ b/buildroot/share/git/mfconfig @@ -144,7 +144,7 @@ if [[ $ACTION == "init" ]]; then find config -name "Conf*.h" -print0 | while read -d $'\0' fn ; do fldr=$(dirname "$fn") blank_line=$(awk '/^\s*$/ {print NR; exit}' "$fn") - $SED -i~ "${blank_line}i\\\n#define CONFIG_EXAMPLES_DIR \"$fldr\"\\ " "$fn" + $SED -i~ "${blank_line}i\\\n#define CONFIG_EXAMPLES_DIR \"$fldr\"" "$fn" rm -f "$fn~" done } From bfd6be3799627f87da29f7281b14f9e9be515a69 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Tue, 6 Jun 2023 00:24:34 +0000 Subject: [PATCH 257/427] [cron] Bump distribution date (2023-06-06) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 4b3e3b2c8c83..b5808dcf44f0 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-05" +//#define STRING_DISTRIBUTION_DATE "2023-06-06" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 66ee44531cc3..af412a701a91 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-05" + #define STRING_DISTRIBUTION_DATE "2023-06-06" #endif /** From e116a99eda1bbfd97e4af1136618d80dcceb169e Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 5 Jun 2023 20:13:15 -0500 Subject: [PATCH 258/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20JyersUI=20corner?= =?UTF-8?q?=20pos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25631 --- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index b453bc20317d..1ef9ee8517f8 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -1392,7 +1392,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item break; } break; - case ManualLevel: + case ManualLevel: { #define MLEVEL_BACK 0 #define MLEVEL_PROBE (MLEVEL_BACK + ENABLED(HAS_BED_PROBE)) @@ -1408,10 +1408,10 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item static bool use_probe = false; #if HAS_BED_PROBE - constexpr float probe_x_min = _MAX(0 + corner_pos, X_MIN_POS + probe.offset.x, X_MIN_POS + PROBING_MARGIN) - probe.offset.x, - probe_x_max = _MIN((X_BED_SIZE + X_MIN_POS) - corner_pos, X_MAX_POS + probe.offset.x, X_MAX_POS - PROBING_MARGIN) - probe.offset.x, - probe_y_min = _MAX(0 + corner_pos, Y_MIN_POS + probe.offset.y, Y_MIN_POS + PROBING_MARGIN) - probe.offset.y, - probe_y_max = _MIN((Y_BED_SIZE + Y_MIN_POS) - corner_pos, Y_MAX_POS + probe.offset.y, Y_MAX_POS - PROBING_MARGIN) - probe.offset.y; + const float probe_x_min = _MAX(0 + corner_pos, X_MIN_POS + probe.offset.x, X_MIN_POS + PROBING_MARGIN) - probe.offset.x, + probe_x_max = _MIN((X_BED_SIZE + X_MIN_POS) - corner_pos, X_MAX_POS + probe.offset.x, X_MAX_POS - PROBING_MARGIN) - probe.offset.x, + probe_y_min = _MAX(0 + corner_pos, Y_MIN_POS + probe.offset.y, Y_MIN_POS + PROBING_MARGIN) - probe.offset.y, + probe_y_max = _MIN((Y_BED_SIZE + Y_MIN_POS) - corner_pos, Y_MAX_POS + probe.offset.y, Y_MAX_POS - PROBING_MARGIN) - probe.offset.y; #endif switch (item) { @@ -1423,6 +1423,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item Draw_Menu(Prepare, PREPARE_MANUALLEVEL); } break; + #if HAS_BED_PROBE case MLEVEL_PROBE: if (draw) { @@ -1434,7 +1435,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item Draw_Checkbox(row, use_probe); if (use_probe) { Popup_Handler(Level); - constexpr struct { xy_pos_t p, ProbePtRaise r } points[] = { + const struct { xy_pos_t p; ProbePtRaise r; } points[] = { { { probe_x_min, probe_y_min }, PROBE_PT_RAISE }, { { probe_x_min, probe_y_max }, PROBE_PT_RAISE }, { { probe_x_max, probe_y_max }, PROBE_PT_RAISE }, @@ -1452,6 +1453,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item } break; #endif + case MLEVEL_BL: if (draw) Draw_Menu_Item(row, ICON_AxisBL, F("Bottom Left")); @@ -1566,7 +1568,9 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item Modify_Value(mlev_z_pos, 0, MAX_Z_OFFSET, 100); break; } - break; + + } break; + #if HAS_ZOFFSET_ITEM case ZOffset: From a6b32a5a915e17eaa73dede2f9a98fc042b4904d Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 5 Jun 2023 20:39:14 -0500 Subject: [PATCH 259/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Byp?= =?UTF-8?q?ass=20error=20in=20build=5Fexample?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buildroot/bin/build_example | 3 +++ 1 file changed, 3 insertions(+) diff --git a/buildroot/bin/build_example b/buildroot/bin/build_example index 34549769bbb1..a8878e8d9f3f 100755 --- a/buildroot/bin/build_example +++ b/buildroot/bin/build_example @@ -32,6 +32,9 @@ $SED -i~ -e "20,30{/#error/d}" Marlin/Configuration.h rm Marlin/Configuration.h~ unset IFS; set +f +# Suppress fatal warnings +echo -e "\n#define NO_CONTROLLER_CUSTOM_WIRING_WARNING" >> Marlin/Configuration.h + echo "Building the firmware now..." $HERE/mftest -s -a -n1 || { echo "Failed"; exit 1; } From 17cc5fa8723eed59106e925472baf37383a5ac5b Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 5 Jun 2023 21:08:43 -0500 Subject: [PATCH 260/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Sup?= =?UTF-8?q?press=20narrowing=20warnings?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25924 --- Marlin/src/core/types.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index 57d1c5d5f788..8fcaa0000c61 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -452,9 +452,9 @@ struct XYval { FI constexpr XYval operator- (const XYZEval &rs) const { return { XY_OP(-) }; } FI constexpr XYval operator* (const XYZEval &rs) const { return { XY_OP(*) }; } FI constexpr XYval operator/ (const XYZEval &rs) const { return { XY_OP(/) }; } - FI constexpr XYval operator* (const float &p) const { return { x * p, y * p }; } + FI constexpr XYval operator* (const float &p) const { return { (T)(x * p), (T)(y * p) }; } FI constexpr XYval operator* (const int &p) const { return { x * p, y * p }; } - FI constexpr XYval operator/ (const float &p) const { return { x / p, y / p }; } + FI constexpr XYval operator/ (const float &p) const { return { (T)(x / p), (T)(y / p) }; } FI constexpr XYval operator/ (const int &p) const { return { x / p, y / p }; } FI constexpr XYval operator>>(const int &p) const { return { _RS(x), _RS(y) }; } FI constexpr XYval operator<<(const int &p) const { return { _LS(x), _LS(y) }; } @@ -604,9 +604,9 @@ struct XYZval { FI constexpr XYZval operator- (const XYZEval &rs) const { return NUM_AXIS_ARRAY(x - rs.x, y - rs.y, z - rs.z, i - rs.i, j - rs.j, k - rs.k, u - rs.u, v - rs.v, w - rs.w ); } FI constexpr XYZval operator* (const XYZEval &rs) const { return NUM_AXIS_ARRAY(x * rs.x, y * rs.y, z * rs.z, i * rs.i, j * rs.j, k * rs.k, u * rs.u, v * rs.v, w * rs.w ); } FI constexpr XYZval operator/ (const XYZEval &rs) const { return NUM_AXIS_ARRAY(x / rs.x, y / rs.y, z / rs.z, i / rs.i, j / rs.j, k / rs.k, u / rs.u, v / rs.v, w / rs.w ); } - FI constexpr XYZval operator* (const float &p) const { return NUM_AXIS_ARRAY(x * p, y * p, z * p, i * p, j * p, k * p, u * p, v * p, w * p); } + FI constexpr XYZval operator* (const float &p) const { return NUM_AXIS_ARRAY((T)(x * p), (T)(y * p), (T)(z * p), (T)(i * p), (T)(j * p), (T)(k * p), (T)(u * p), (T)(v * p), (T)(w * p)); } FI constexpr XYZval operator* (const int &p) const { return NUM_AXIS_ARRAY(x * p, y * p, z * p, i * p, j * p, k * p, u * p, v * p, w * p); } - FI constexpr XYZval operator/ (const float &p) const { return NUM_AXIS_ARRAY(x / p, y / p, z / p, i / p, j / p, k / p, u / p, v / p, w / p); } + FI constexpr XYZval operator/ (const float &p) const { return NUM_AXIS_ARRAY((T)(x / p), (T)(y / p), (T)(z / p), (T)(i / p), (T)(j / p), (T)(k / p), (T)(u / p), (T)(v / p), (T)(w / p)); } FI constexpr XYZval operator/ (const int &p) const { return NUM_AXIS_ARRAY(x / p, y / p, z / p, i / p, j / p, k / p, u / p, v / p, w / p); } FI constexpr XYZval operator>>(const int &p) const { return NUM_AXIS_ARRAY(_RS(x), _RS(y), _RS(z), _RS(i), _RS(j), _RS(k), _RS(u), _RS(v), _RS(w)); } FI constexpr XYZval operator<<(const int &p) const { return NUM_AXIS_ARRAY(_LS(x), _LS(y), _LS(z), _LS(i), _LS(j), _LS(k), _LS(u), _LS(v), _LS(w)); } @@ -751,9 +751,9 @@ struct XYZEval { FI constexpr XYZEval operator- (const XYZEval &rs) const { return LOGICAL_AXIS_ARRAY(e - rs.e, x - rs.x, y - rs.y, z - rs.z, i - rs.i, j - rs.j, k - rs.k, u - rs.u, v - rs.v, w - rs.w); } FI constexpr XYZEval operator* (const XYZEval &rs) const { return LOGICAL_AXIS_ARRAY(e * rs.e, x * rs.x, y * rs.y, z * rs.z, i * rs.i, j * rs.j, k * rs.k, u * rs.u, v * rs.v, w * rs.w); } FI constexpr XYZEval operator/ (const XYZEval &rs) const { return LOGICAL_AXIS_ARRAY(e / rs.e, x / rs.x, y / rs.y, z / rs.z, i / rs.i, j / rs.j, k / rs.k, u / rs.u, v / rs.v, w / rs.w); } - FI constexpr XYZEval operator* (const float &p) const { return LOGICAL_AXIS_ARRAY(e * p, x * p, y * p, z * p, i * p, j * p, k * p, u * p, v * p, w * p); } + FI constexpr XYZEval operator* (const float &p) const { return LOGICAL_AXIS_ARRAY((T)(e * p), (T)(x * p), (T)(y * p), (T)(z * p), (T)(i * p), (T)(j * p), (T)(k * p), (T)(u * p), (T)(v * p), (T)(w * p)); } FI constexpr XYZEval operator* (const int &p) const { return LOGICAL_AXIS_ARRAY(e * p, x * p, y * p, z * p, i * p, j * p, k * p, u * p, v * p, w * p); } - FI constexpr XYZEval operator/ (const float &p) const { return LOGICAL_AXIS_ARRAY(e / p, x / p, y / p, z / p, i / p, j / p, k / p, u / p, v / p, w / p); } + FI constexpr XYZEval operator/ (const float &p) const { return LOGICAL_AXIS_ARRAY((T)(e / p), (T)(x / p), (T)(y / p), (T)(z / p), (T)(i / p), (T)(j / p), (T)(k / p), (T)(u / p), (T)(v / p), (T)(w / p)); } FI constexpr XYZEval operator/ (const int &p) const { return LOGICAL_AXIS_ARRAY(e / p, x / p, y / p, z / p, i / p, j / p, k / p, u / p, v / p, w / p); } FI constexpr XYZEval operator>>(const int &p) const { return LOGICAL_AXIS_ARRAY(_RS(e), _RS(x), _RS(y), _RS(z), _RS(i), _RS(j), _RS(k), _RS(u), _RS(v), _RS(w)); } FI constexpr XYZEval operator<<(const int &p) const { return LOGICAL_AXIS_ARRAY(_LS(e), _LS(x), _LS(y), _LS(z), _LS(i), _LS(j), _LS(k), _LS(u), _LS(v), _LS(w)); } From 4b8e4ef38e1f395d394314f54bacff8def9527c8 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 5 Jun 2023 23:49:09 -0500 Subject: [PATCH 261/427] =?UTF-8?q?=E2=9A=A1=EF=B8=8F=20Mixer=20label=20in?= =?UTF-8?q?=20PROGMEM?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/HD44780/marlinui_HD44780.cpp | 10 +++++----- Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp | 12 ++++++------ 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp index 51b3fbd3c434..ba467d1a61c1 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp @@ -973,20 +973,20 @@ void MarlinUI::draw_status_screen() { // Two-component mix / gradient instead of XY - char mixer_messages[12]; - const char *mix_label; + char mixer_messages[15]; + PGM_P mix_label; #if ENABLED(GRADIENT_MIX) if (mixer.gradient.enabled) { mixer.update_mix_from_gradient(); - mix_label = "Gr"; + mix_label = PSTR("Gr"); } else #endif { mixer.update_mix_from_vtool(); - mix_label = "Mx"; + mix_label = PSTR("Mx"); } - sprintf_P(mixer_messages, PSTR("%s %d;%d%% "), mix_label, int(mixer.mix[0]), int(mixer.mix[1])); + sprintf_P(mixer_messages, PSTR(S_FMT " %d;%d%% "), mix_label, int(mixer.mix[0]), int(mixer.mix[1])); lcd_put_u8str(mixer_messages); #else // !HAS_DUAL_MIXING diff --git a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp index dfb685f096ec..ee7154ae417c 100644 --- a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp +++ b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp @@ -866,23 +866,23 @@ void MarlinUI::draw_status_screen() { // #if HOTENDS <= 1 || (HOTENDS <= 2 && !HAS_HEATED_BED) - #if DUAL_MIXING_EXTRUDER + #if HAS_DUAL_MIXING lcd_moveto(0, 4); // Two-component mix / gradient instead of XY - char mixer_messages[12]; - const char *mix_label; + char mixer_messages[15]; + PGM_P mix_label; #if ENABLED(GRADIENT_MIX) if (mixer.gradient.enabled) { mixer.update_mix_from_gradient(); - mix_label = "Gr"; + mix_label = PSTR("Gr"); } else #endif { mixer.update_mix_from_vtool(); - mix_label = "Mx"; + mix_label = PSTR("Mx"); } - sprintf_P(mixer_messages, PSTR("%s %d;%d%% "), mix_label, int(mixer.mix[0]), int(mixer.mix[1])); + sprintf_P(mixer_messages, PSTR(S_FMT " %d;%d%% "), mix_label, int(mixer.mix[0]), int(mixer.mix[1])); lcd_put_u8str(mixer_messages); #endif #endif From 35016633d843ba393eb17cf5fd1dba03764821dd Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 6 Jun 2023 02:58:28 -0500 Subject: [PATCH 262/427] =?UTF-8?q?=F0=9F=A9=B9=20Conditional=20include=20?= =?UTF-8?q?probe.h?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/settings.cpp | 4 +++- Marlin/src/module/tool_change.cpp | 5 ++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index 62b03a1b9cff..1defac29771d 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -60,7 +60,9 @@ #include "../HAL/shared/eeprom_api.h" #endif -#include "probe.h" +#if HAS_BED_PROBE + #include "probe.h" +#endif #if HAS_LEVELING #include "../feature/bedlevel/bedlevel.h" diff --git a/Marlin/src/module/tool_change.cpp b/Marlin/src/module/tool_change.cpp index 21f5ce80b532..d65b3fb32ab5 100644 --- a/Marlin/src/module/tool_change.cpp +++ b/Marlin/src/module/tool_change.cpp @@ -24,7 +24,6 @@ #include "tool_change.h" -#include "probe.h" #include "motion.h" #include "planner.h" #include "temperature.h" @@ -92,6 +91,10 @@ #include "../feature/pause.h" #endif +#if HAS_BED_PROBE + #include "probe.h" +#endif + #if ENABLED(TOOLCHANGE_FILAMENT_SWAP) #if TOOLCHANGE_FS_WIPE_RETRACT <= 0 #undef TOOLCHANGE_FS_WIPE_RETRACT From 8f1d80b0ba425b6d927d99aad8340e22a71da7ff Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 6 Jun 2023 15:30:28 -0500 Subject: [PATCH 263/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Use?= =?UTF-8?q?=20Flags<>=20for=20runout=20(#25938)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/runout.h | 46 +++++++++++++++---------------------- 1 file changed, 19 insertions(+), 27 deletions(-) diff --git a/Marlin/src/feature/runout.h b/Marlin/src/feature/runout.h index ea17cbc4422b..2b3516a8b49e 100644 --- a/Marlin/src/feature/runout.h +++ b/Marlin/src/feature/runout.h @@ -50,6 +50,8 @@ #define HAS_FILAMENT_SWITCH 1 #endif +typedef Flags<8> runout_flags_t; + void event_filament_runout(const uint8_t extruder); template @@ -130,39 +132,29 @@ class TFilamentMonitor : public FilamentMonitorBase { TERN_(HAS_FILAMENT_RUNOUT_DISTANCE, cli()); // Prevent RunoutResponseDelayed::block_completed from accumulating here response.run(); sensor.run(); - const uint8_t runout_flags = response.has_run_out(); + const runout_flags_t runout_flags = response.has_run_out(); TERN_(HAS_FILAMENT_RUNOUT_DISTANCE, sei()); #if MULTI_FILAMENT_SENSOR #if ENABLED(WATCH_ALL_RUNOUT_SENSORS) - const bool ran_out = !!runout_flags; // any sensor triggers + const bool ran_out = bool(runout_flags); // any sensor triggers uint8_t extruder = 0; - if (ran_out) { - uint8_t bitmask = runout_flags; - while (!(bitmask & 1)) { - bitmask >>= 1; - extruder++; - } - } + if (ran_out) while (!runout_flags.test(extruder)) extruder++; #else - const bool ran_out = TEST(runout_flags, active_extruder); // suppress non active extruders + const bool ran_out = runout_flags[active_extruder]; // suppress non active extruders uint8_t extruder = active_extruder; #endif #else - const bool ran_out = !!runout_flags; + const bool ran_out = bool(runout_flags); uint8_t extruder = active_extruder; #endif - #if ENABLED(FILAMENT_RUNOUT_SENSOR_DEBUG) - if (runout_flags) { + if (ran_out) { + #if ENABLED(FILAMENT_RUNOUT_SENSOR_DEBUG) SERIAL_ECHOPGM("Runout Sensors: "); - for (uint8_t i = 0; i < 8; ++i) SERIAL_ECHO('0' + TEST(runout_flags, i)); - SERIAL_ECHOPGM(" -> ", extruder); - if (ran_out) SERIAL_ECHOPGM(" RUN OUT"); - SERIAL_EOL(); - } - #endif + for (uint8_t i = 0; i < 8; ++i) SERIAL_ECHO('0' + char(runout_flags[i])); + SERIAL_ECHOLNPGM(" -> ", extruder, " RUN OUT"); + #endif - if (ran_out) { filament_ran_out = true; event_filament_runout(extruder); planner.synchronize(); @@ -387,11 +379,11 @@ class FilamentSensorBase { #endif } - static uint8_t has_run_out() { - uint8_t runout_flags = 0; - for (uint8_t i = 0; i < NUM_RUNOUT_SENSORS; ++i) if (mm_countdown.runout[i] < 0) SBI(runout_flags, i); + static runout_flags_t has_run_out() { + runout_flags_t runout_flags{0}; + for (uint8_t i = 0; i < NUM_RUNOUT_SENSORS; ++i) if (mm_countdown.runout[i] < 0) runout_flags.set(i); #if ENABLED(FILAMENT_SWITCH_AND_MOTION) - for (uint8_t i = 0; i < NUM_MOTION_SENSORS; ++i) if (mm_countdown.motion[i] < 0) SBI(runout_flags, i); + for (uint8_t i = 0; i < NUM_MOTION_SENSORS; ++i) if (mm_countdown.motion[i] < 0) runout_flags.set(i); #endif return runout_flags; } @@ -439,9 +431,9 @@ class FilamentSensorBase { for (uint8_t i = 0; i < NUM_RUNOUT_SENSORS; ++i) if (runout_count[i] >= 0) runout_count[i]--; } - static uint8_t has_run_out() { - uint8_t runout_flags = 0; - for (uint8_t i = 0; i < NUM_RUNOUT_SENSORS; ++i) if (runout_count[i] < 0) SBI(runout_flags, i); + static runout_flags_t has_run_out() { + runout_flags_t runout_flags{0}; + for (uint8_t i = 0; i < NUM_RUNOUT_SENSORS; ++i) if (runout_count[i] < 0) runout_flags.set(i); return runout_flags; } From 322d5dc29c136b5e2f1a8e4712fc10a781b9d4c3 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Wed, 7 Jun 2023 00:25:18 +0000 Subject: [PATCH 264/427] [cron] Bump distribution date (2023-06-07) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index b5808dcf44f0..ee5d6241a52a 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-06" +//#define STRING_DISTRIBUTION_DATE "2023-06-07" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index af412a701a91..4a84c53b8879 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-06" + #define STRING_DISTRIBUTION_DATE "2023-06-07" #endif /** From 984f9fe7d6a0c86f045010d294c316fe05835587 Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Wed, 7 Jun 2023 10:01:07 +0200 Subject: [PATCH 265/427] =?UTF-8?q?=F0=9F=8C=90=20Update=20Italian=20langu?= =?UTF-8?q?age=20(#25940)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/language/language_it.h | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/Marlin/src/lcd/language/language_it.h b/Marlin/src/lcd/language/language_it.h index d9a9340762df..55f1ac3b48c6 100644 --- a/Marlin/src/lcd/language/language_it.h +++ b/Marlin/src/lcd/language/language_it.h @@ -69,6 +69,8 @@ namespace Language_it { LSTR MSG_DISABLE_STEPPERS = _UxGT("Disabilita Motori"); LSTR MSG_DEBUG_MENU = _UxGT("Menu di debug"); LSTR MSG_PROGRESS_BAR_TEST = _UxGT("Test barra avanzam."); + LSTR MSG_ENDSTOP_TEST = _UxGT("Test Finecorsa"); + LSTR MSG_Z_PROBE = _UxGT("Sonda Z"); LSTR MSG_HOMING = _UxGT("Azzeramento"); LSTR MSG_AUTO_HOME = _UxGT("Auto Home"); LSTR MSG_AUTO_HOME_A = _UxGT("Home @"); @@ -425,6 +427,7 @@ namespace Language_it { LSTR MSG_TEMPERATURE = _UxGT("Temperatura"); LSTR MSG_MOTION = _UxGT("Movimento"); LSTR MSG_FILAMENT = _UxGT("Filamento"); + LSTR MSG_FILAMENT_EN = _UxGT("Filamento *"); LSTR MSG_VOLUMETRIC_ENABLED = _UxGT("E in mm") SUPERSCRIPT_THREE; LSTR MSG_VOLUMETRIC_LIMIT = _UxGT("Limite E in mm") SUPERSCRIPT_THREE; LSTR MSG_VOLUMETRIC_LIMIT_E = _UxGT("Limite E *"); @@ -438,6 +441,7 @@ namespace Language_it { LSTR MSG_DRAW_MIN_Y = _UxGT("Min Y area disegno"); LSTR MSG_DRAW_MAX_Y = _UxGT("Max Y area disegno"); LSTR MSG_MAX_BELT_LEN = _UxGT("Lungh.max cinghia"); + LSTR MSG_LINEAR_ADVANCE = _UxGT("Avanzam.Lineare"); LSTR MSG_ADVANCE_K = _UxGT("K Avanzamento"); LSTR MSG_ADVANCE_K_E = _UxGT("K Avanzamento *"); LSTR MSG_CONTRAST = _UxGT("Contrasto LCD"); @@ -449,8 +453,9 @@ namespace Language_it { LSTR MSG_RESTORE_DEFAULTS = _UxGT("Ripristina imp."); LSTR MSG_INIT_EEPROM = _UxGT("Inizializza EEPROM"); LSTR MSG_ERR_EEPROM_CRC = _UxGT("Err: CRC EEPROM"); - LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Err: Taglia EEPROM"); + LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Err: Dimens.EEPROM"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Err: Versione EEPROM"); + LSTR MSG_ERR_EEPROM_CORRUPT = _UxGT("Err: EEPROM corrotta"); LSTR MSG_SETTINGS_STORED = _UxGT("Impostazioni mem."); LSTR MSG_MEDIA_UPDATE = _UxGT("Aggiorna media"); LSTR MSG_RESET_PRINTER = _UxGT("Resetta stampante"); @@ -619,6 +624,7 @@ namespace Language_it { LSTR MSG_CHAMBER_COOLING = _UxGT("Raffr. camera..."); LSTR MSG_LASER_COOLING = _UxGT("Raffr. laser..."); LSTR MSG_DELTA_CALIBRATE = _UxGT("Calibraz. Delta"); + LSTR MSG_DELTA_CALIBRATION_IN_PROGRESS = _UxGT("Calibrazione Delta in corso"); LSTR MSG_DELTA_CALIBRATE_X = _UxGT("Calibra X"); LSTR MSG_DELTA_CALIBRATE_Y = _UxGT("Calibra Y"); LSTR MSG_DELTA_CALIBRATE_Z = _UxGT("Calibra Z"); @@ -729,7 +735,8 @@ namespace Language_it { LSTR MSG_MMU2_FILAMENT_N = _UxGT("Filamento ~"); LSTR MSG_MMU2_RESET = _UxGT("Azzera MMU"); LSTR MSG_MMU2_RESETTING = _UxGT("Azzeramento MMU..."); - LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Rimuovi, click"); + LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Espelli, click"); + LSTR MSG_MMU2_REMOVE_AND_CLICK = _UxGT("Rimuovi e click..."); LSTR MSG_MIX = _UxGT("Miscela"); LSTR MSG_MIX_COMPONENT_N = _UxGT("Componente {"); @@ -813,6 +820,22 @@ namespace Language_it { LSTR MSG_BACKLASH_CORRECTION = _UxGT("Correzione"); LSTR MSG_BACKLASH_SMOOTHING = _UxGT("Appianamento"); + LSTR MSG_FIXED_TIME_MOTION = _UxGT("Movimento a Tempo-Fisso"); + LSTR MSG_FTM_MODE = _UxGT("Modo Movimento:"); + LSTR MSG_FTM_ZV = _UxGT("ZV"); + LSTR MSG_FTM_ZVD = _UxGT("ZVD"); + LSTR MSG_FTM_EI = _UxGT("EI"); + LSTR MSG_FTM_2HEI = _UxGT("2HEI"); + LSTR MSG_FTM_3HEI = _UxGT("3HEI"); + LSTR MSG_FTM_MZV = _UxGT("MZV"); + //LSTR MSG_FTM_ULENDO_FBS = _UxGT("Ulendo FBS"); + //LSTR MSG_FTM_DISCTF = _UxGT("DISCTF"); + LSTR MSG_FTM_DYN_MODE = _UxGT("Modo DF:"); + LSTR MSG_FTM_Z_BASED = _UxGT("Base-Z"); + LSTR MSG_FTM_MASS_BASED = _UxGT("Base-Massa"); + LSTR MSG_FTM_BASE_FREQ_N = _UxGT("@ Freq. Base"); + LSTR MSG_FTM_DFREQ_K_N = _UxGT("@ Freq. Dinam."); + LSTR MSG_LEVEL_X_AXIS = _UxGT("Livello asse X"); LSTR MSG_AUTO_CALIBRATE = _UxGT("Auto Calibra"); #if ENABLED(TOUCH_UI_FTDI_EVE) From e8f5f9d7321bb681ecbb1f787a381bf3885ec302 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Wed, 7 Jun 2023 01:03:35 -0700 Subject: [PATCH 266/427] =?UTF-8?q?=F0=9F=94=A8=20Teensy=204.1=20pins=20en?= =?UTF-8?q?v=20check=20(#25937)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/pins/teensy4/env_validate.h | 26 +++++++++++++++++++++++++ Marlin/src/pins/teensy4/pins_T41U5XBB.h | 4 +--- Marlin/src/pins/teensy4/pins_TEENSY41.h | 4 +--- 3 files changed, 28 insertions(+), 6 deletions(-) create mode 100644 Marlin/src/pins/teensy4/env_validate.h diff --git a/Marlin/src/pins/teensy4/env_validate.h b/Marlin/src/pins/teensy4/env_validate.h new file mode 100644 index 000000000000..5a89e8a409a8 --- /dev/null +++ b/Marlin/src/pins/teensy4/env_validate.h @@ -0,0 +1,26 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#if NOT_TARGET(IS_TEENSY41) + #error "Oops! Select 'Teensy 4.1' in 'Tools > Board.'" +#endif diff --git a/Marlin/src/pins/teensy4/pins_T41U5XBB.h b/Marlin/src/pins/teensy4/pins_T41U5XBB.h index 5f62bb05a64b..2ee4f2970e8a 100644 --- a/Marlin/src/pins/teensy4/pins_T41U5XBB.h +++ b/Marlin/src/pins/teensy4/pins_T41U5XBB.h @@ -27,9 +27,7 @@ * https://www.pjrc.com/teensy/teensyduino.html ****************************************************************************************/ -#if NOT_TARGET(IS_TEENSY41) - #error "Oops! Select 'Teensy 4.1' in 'Tools > Board.'" -#endif +#include "env_validate.h" #define BOARD_INFO_NAME "Teensy4.1" diff --git a/Marlin/src/pins/teensy4/pins_TEENSY41.h b/Marlin/src/pins/teensy4/pins_TEENSY41.h index 263d9e8f8b08..2a8a76f17c56 100644 --- a/Marlin/src/pins/teensy4/pins_TEENSY41.h +++ b/Marlin/src/pins/teensy4/pins_TEENSY41.h @@ -27,9 +27,7 @@ * https://www.pjrc.com/teensy/teensyduino.html ****************************************************************************************/ -#if NOT_TARGET(IS_TEENSY41) - #error "Oops! Select 'Teensy 4.1' in 'Tools > Board.'" -#endif +#include "env_validate.h" #define BOARD_INFO_NAME "Teensy4.1" From 10947a463ba50ec31434e775e006d192906f7a83 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 8 Jun 2023 00:23:27 +0000 Subject: [PATCH 267/427] [cron] Bump distribution date (2023-06-08) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index ee5d6241a52a..c4fb72821e58 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-07" +//#define STRING_DISTRIBUTION_DATE "2023-06-08" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 4a84c53b8879..c39dc089a850 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-07" + #define STRING_DISTRIBUTION_DATE "2023-06-08" #endif /** From d1e995670d2ce345b42ac8d8f9b0cebda7d87632 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 7 Jun 2023 20:28:15 -0500 Subject: [PATCH 268/427] =?UTF-8?q?=F0=9F=94=A7=20Z-MIN=20as=20CREALITY=20?= =?UTF-8?q?V25=20S1=20probe?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h b/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h index 5657a7995027..61207f90b03e 100644 --- a/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h +++ b/Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h @@ -51,9 +51,9 @@ #if ENABLED(IIC_BL24CXX_EEPROM) #define IIC_EEPROM_SDA PA11 #define IIC_EEPROM_SCL PA12 - #define MARLIN_EEPROM_SIZE 0x800 // 2K (24C16) + #define MARLIN_EEPROM_SIZE 0x800 // 2K (24C16) #elif ANY(SDCARD_EEPROM_EMULATION, FLASH_EEPROM_EMULATION) - #define MARLIN_EEPROM_SIZE 0x800 // 2K + #define MARLIN_EEPROM_SIZE 0x800 // 2K #endif // @@ -61,19 +61,13 @@ // #define X_STOP_PIN PC4 #define Y_STOP_PIN PC5 +#define Z_STOP_PIN PC15 #if ENABLED(BLTOUCH) - #define Z_STOP_PIN -1 #define SERVO0_PIN PC14 // BLTouch OUT PIN - #ifndef Z_MIN_PROBE_PIN - #define Z_MIN_PROBE_PIN PC15 // BLTouch IN PIN - #endif -#else - #define Z_STOP_PIN PC15 - #if ENABLED(PROBE_ACTIVATION_SWITCH) - #define PROBE_TARE_PIN PC14 - #define PROBE_ACTIVATION_SWITCH_PIN PB2 - #endif +#elif ENABLED(PROBE_ACTIVATION_SWITCH) + #define PROBE_TARE_PIN PC14 + #define PROBE_ACTIVATION_SWITCH_PIN PB2 #endif // From 54a82b4337a5e65e53ef8b28749546c18d05ba79 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 7 Jun 2023 20:58:55 -0500 Subject: [PATCH 269/427] =?UTF-8?q?=F0=9F=9A=B8=20Fix=20TFT=20menu=20posit?= =?UTF-8?q?ioning=20(#25942)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Ed <751406+helakejr@users.noreply.github.com> --- Marlin/src/lcd/tft/ui_480x320.cpp | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/Marlin/src/lcd/tft/ui_480x320.cpp b/Marlin/src/lcd/tft/ui_480x320.cpp index 75ec50adc284..2a6f50c93bc9 100644 --- a/Marlin/src/lcd/tft/ui_480x320.cpp +++ b/Marlin/src/lcd/tft/ui_480x320.cpp @@ -623,6 +623,7 @@ struct { #define BTN_HEIGHT 52 #define X_MARGIN 20 #define Y_MARGIN 15 +#define Y_OFFSET TERN(HAS_UI_480x272, 28, 34) static void quick_feedback() { #if HAS_CHIRP @@ -652,7 +653,7 @@ static void drawCurStepValue() { tft.add_text(0, 0, Z_BTN_COLOR, tft_string); tft.queue.sync(); tft_string.set(F("Offset")); - tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + 34, tft_string.width(), 34); + tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + Y_OFFSET, tft_string.width(), Y_OFFSET TERN_(HAS_UI_480x272, - 10)); tft.set_background(COLOR_BACKGROUND); if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) tft.add_text(0, 0, Z_BTN_COLOR, tft_string); @@ -670,7 +671,7 @@ static void drawCurStepValue() { #endif static void drawMessage(PGM_P const msg) { - tft.canvas(X_MARGIN, TFT_HEIGHT - Y_MARGIN - 34, TFT_HEIGHT / 2, 34); + tft.canvas(X_MARGIN, TFT_HEIGHT - Y_MARGIN - Y_OFFSET, TFT_HEIGHT / 2, Y_OFFSET); tft.set_background(COLOR_BACKGROUND); tft.add_text(0, 0, COLOR_YELLOW, msg); } @@ -699,7 +700,7 @@ static void drawAxisValue(const AxisEnum axis) { #endif default: return; } - tft.canvas(pos.x, pos.y, BTN_WIDTH + X_MARGIN, BTN_HEIGHT); + tft.canvas(pos.x, pos.y, BTN_WIDTH + X_MARGIN, BTN_HEIGHT TERN_(HAS_UI_480x272, / 2)); tft.set_background(COLOR_BACKGROUND); tft_string.set(ftostr52sp(value)); tft.add_text(0, 0, color, tft_string); @@ -891,7 +892,7 @@ void MarlinUI::move_axis_screen() { TERN_(HAS_Z_AXIS, motionAxisState.z_selection = Z_SELECTION_Z_PROBE); - // ROW 1 -> E- Y- CurY Z+ + // ROW 1 -> E+ Y+ CurY Z+ int x = X_MARGIN, y = Y_MARGIN, spacing = 0; TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy)); @@ -941,7 +942,7 @@ void MarlinUI::move_axis_screen() { motionAxisState.zTypePos.y = y; TERN_(HAS_Z_AXIS, drawCurZSelection()); #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) - if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); + if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, Y_OFFSET * 2, (intptr_t)z_select); #endif // ROW 3 -> E- CurX Y- Z- @@ -975,7 +976,7 @@ void MarlinUI::move_axis_screen() { TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); // ROW 4 -> step_size disable steppers back - y = TFT_HEIGHT - Y_MARGIN - 32; + y = TFT_HEIGHT - Y_MARGIN - TERN(HAS_UI_480x272, BTN_WIDTH / 2, 32); x = TFT_WIDTH / 2 - CUR_STEP_VALUE_WIDTH / 2; motionAxisState.stepValuePos.x = x; motionAxisState.stepValuePos.y = y; @@ -990,4 +991,4 @@ void MarlinUI::move_axis_screen() { TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); } -#endif // HAS_UI_480x320 +#endif // HAS_UI_480x320 || HAS_UI_480x272 From 9d830d72077fd42927e0a1396fa752b8a6c449cd Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Wed, 7 Jun 2023 20:16:30 -0700 Subject: [PATCH 270/427] =?UTF-8?q?=F0=9F=94=A8=20Clean=20up=20some=20BTT?= =?UTF-8?q?=20envs,=20etc.=20(#25934)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25921 Co-authored-by: Scott Lahteine --- Marlin/src/core/boards.h | 2 +- Marlin/src/pins/pins.h | 40 +- .../boards/marlin_CREALITY_STM32F401RC.json | 65 -- .../PlatformIO/boards/marlin_STM32H723VE.json | 61 -- ...M32H723Zx.json => marlin_STM32H723ZE.json} | 0 ...M32H743Vx.json => marlin_STM32H743VI.json} | 0 .../variants/MARLIN_H723VE/PeripheralPins.c | 590 ------------------ .../variants/MARLIN_H723VE/PinNamesVar.h | 108 ---- .../variants/MARLIN_H723VE/ldscript.ld | 174 ------ .../variant_MARLIN_STM32H723VE.cpp | 273 -------- .../variant_MARLIN_STM32H723VE.h | 269 -------- ini/renamed.ini | 8 +- ini/stm32h7.ini | 33 +- 13 files changed, 47 insertions(+), 1576 deletions(-) delete mode 100644 buildroot/share/PlatformIO/boards/marlin_CREALITY_STM32F401RC.json delete mode 100644 buildroot/share/PlatformIO/boards/marlin_STM32H723VE.json rename buildroot/share/PlatformIO/boards/{marlin_STM32H723Zx.json => marlin_STM32H723ZE.json} (100%) rename buildroot/share/PlatformIO/boards/{marlin_STM32H743Vx.json => marlin_STM32H743VI.json} (100%) delete mode 100644 buildroot/share/PlatformIO/variants/MARLIN_H723VE/PeripheralPins.c delete mode 100644 buildroot/share/PlatformIO/variants/MARLIN_H723VE/PinNamesVar.h delete mode 100644 buildroot/share/PlatformIO/variants/MARLIN_H723VE/ldscript.ld delete mode 100644 buildroot/share/PlatformIO/variants/MARLIN_H723VE/variant_MARLIN_STM32H723VE.cpp delete mode 100644 buildroot/share/PlatformIO/variants/MARLIN_H723VE/variant_MARLIN_STM32H723VE.h diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index 742cf8f236fc..fbdb807d33c4 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -466,7 +466,7 @@ #define BOARD_BTT_SKR_SE_BX_V3 6005 // BigTreeTech SKR SE BX V3.0 (STM32H743II) #define BOARD_BTT_SKR_V3_0 6006 // BigTreeTech SKR V3.0 (STM32H743VG) #define BOARD_BTT_SKR_V3_0_EZ 6007 // BigTreeTech SKR V3.0 EZ (STM32H743VG) -#define BOARD_BTT_OCTOPUS_MAX_EZ_V1_0 6008 // BigTreeTech Octopus Max EZ V1.0 (STM32H723VE / STM32H723ZE) +#define BOARD_BTT_OCTOPUS_MAX_EZ_V1_0 6008 // BigTreeTech Octopus Max EZ V1.0 (STM32H723ZE) // // Espressif ESP32 WiFi diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index 0ae0312daef3..d4ec9f22c0c1 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -540,32 +540,32 @@ #elif MB(MALYAN_M200_V2) #include "stm32f0/pins_MALYAN_M200_V2.h" // STM32F0 env:STM32F070RB_malyan env:STM32F070CB_malyan #elif MB(MALYAN_M300) - #include "stm32f0/pins_MALYAN_M300.h" // STM32F070 env:malyan_M300 + #include "stm32f0/pins_MALYAN_M300.h" // STM32F0 env:malyan_M300 // // STM32 ARM Cortex-M3 // #elif MB(STM32F103RE) - #include "stm32f1/pins_STM32F1R.h" // STM32F103RE env:STM32F103RE env:STM32F103RE_maple + #include "stm32f1/pins_STM32F1R.h" // STM32F1 env:STM32F103RE env:STM32F103RE_maple #elif MB(MALYAN_M200) - #include "stm32f1/pins_MALYAN_M200.h" // STM32F103CB env:STM32F103CB_malyan env:STM32F103CB_malyan_maple + #include "stm32f1/pins_MALYAN_M200.h" // STM32F1 env:STM32F103CB_malyan env:STM32F103CB_malyan_maple #elif MB(STM3R_MINI) - #include "stm32f1/pins_STM3R_MINI.h" // STM32F103VE? env:STM32F103VE env:STM32F103RE_maple + #include "stm32f1/pins_STM3R_MINI.h" // STM32F1 env:STM32F103VE env:STM32F103RE_maple #elif MB(GTM32_PRO_VB) - #include "stm32f1/pins_GTM32_PRO_VB.h" // STM32F103VE env:STM32F103VE env:STM32F103VE_GTM32_maple + #include "stm32f1/pins_GTM32_PRO_VB.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple #elif MB(GTM32_PRO_VD) - #include "stm32f1/pins_GTM32_PRO_VD.h" // STM32F103VE env:STM32F103VE env:STM32F103VE_GTM32_maple + #include "stm32f1/pins_GTM32_PRO_VD.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple #elif MB(GTM32_MINI) - #include "stm32f1/pins_GTM32_MINI.h" // STM32F103VE env:STM32F103VE env:STM32F103VE_GTM32_maple + #include "stm32f1/pins_GTM32_MINI.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple #elif MB(GTM32_MINI_A30) - #include "stm32f1/pins_GTM32_MINI_A30.h" // STM32F103VE env:STM32F103VE env:STM32F103VE_GTM32_maple + #include "stm32f1/pins_GTM32_MINI_A30.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple #elif MB(GTM32_REV_B) - #include "stm32f1/pins_GTM32_REV_B.h" // STM32F103VE env:STM32F103VE env:STM32F103VE_GTM32_maple + #include "stm32f1/pins_GTM32_REV_B.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple #elif MB(MORPHEUS) - #include "stm32f1/pins_MORPHEUS.h" // STM32F103RE env:STM32F103RE env:STM32F103RE_maple + #include "stm32f1/pins_MORPHEUS.h" // STM32F1 env:STM32F103RE env:STM32F103RE_maple #elif MB(CHITU3D) - #include "stm32f1/pins_CHITU3D.h" // STM32F103ZE env:STM32F103ZE env:STM32F103RE_maple + #include "stm32f1/pins_CHITU3D.h" // STM32F1 env:STM32F103ZE env:STM32F103RE_maple #elif MB(MKS_ROBIN) #include "stm32f1/pins_MKS_ROBIN.h" // STM32F1 env:mks_robin env:mks_robin_maple #elif MB(MKS_ROBIN_MINI) @@ -663,7 +663,7 @@ #elif MB(CREALITY_V25S1) #include "stm32f1/pins_CREALITY_V25S1.h" // STM32F1 env:STM32F103RE_creality_smartPro env:STM32F103RE_creality_smartPro_maple #elif MB(CREALITY_V521) - #include "stm32f1/pins_CREALITY_V521.h" // STM32F103VE env:STM32F103VE_creality + #include "stm32f1/pins_CREALITY_V521.h" // STM32F1 env:STM32F103VE_creality #elif MB(TRIGORILLA_PRO) #include "stm32f1/pins_TRIGORILLA_PRO.h" // STM32F1 env:trigorilla_pro env:trigorilla_pro_maple env:trigorilla_pro_disk #elif MB(FLY_MINI) @@ -671,7 +671,7 @@ #elif MB(FLSUN_HISPEED) #include "stm32f1/pins_FLSUN_HISPEED.h" // STM32F1 env:flsun_hispeedv1 #elif MB(BEAST) - #include "stm32f1/pins_BEAST.h" // STM32F103VE? env:STM32F103VE env:STM32F103RE_maple + #include "stm32f1/pins_BEAST.h" // STM32F1 env:STM32F103VE env:STM32F103RE_maple #elif MB(MINGDA_MPX_ARM_MINI) #include "stm32f1/pins_MINGDA_MPX_ARM_MINI.h" // STM32F1 env:mingda_mpx_arm_mini #elif MB(ZONESTAR_ZM3E2) @@ -681,13 +681,13 @@ #elif MB(ZONESTAR_ZM3E4V2) #include "stm32f1/pins_ZM3E4_V2_0.h" // STM32F1 env:STM32F103VE_ZM3E4V2_USB env:STM32F103VE_ZM3E4V2_USB_maple #elif MB(ERYONE_ERY32_MINI) - #include "stm32f1/pins_ERYONE_ERY32_MINI.h" // STM32F103VET6 env:ERYONE_ERY32_MINI_maple + #include "stm32f1/pins_ERYONE_ERY32_MINI.h" // STM32F1 env:ERYONE_ERY32_MINI_maple #elif MB(PANDA_PI_V29) - #include "stm32f1/pins_PANDA_PI_V29.h" // STM32F103RCT6 env:PANDA_PI_V29 + #include "stm32f1/pins_PANDA_PI_V29.h" // STM32F1 env:PANDA_PI_V29 #elif MB(SOVOL_V131) #include "gd32f1/pins_SOVOL_V131.h" // GD32F1 env:GD32F103RET6_sovol_maple #elif MB(TRIGORILLA_V006) - #include "gd32f1/pins_TRIGORILLA_V006.h" // GD32F103 env:trigorilla_v006 + #include "gd32f1/pins_TRIGORILLA_V006.h" // GD32F1 env:trigorilla_v006 #elif MB(KEDI_CONTROLLER_V1_2) #include "stm32f1/pins_KEDI_CONTROLLER_V1_2.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple @@ -733,7 +733,7 @@ #elif MB(BTT_OCTOPUS_V1_1) #include "stm32f4/pins_BTT_OCTOPUS_V1_1.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_USB env:STM32F429ZG_btt env:STM32F429ZG_btt_USB env:STM32F407ZE_btt env:STM32F407ZE_btt_USB #elif MB(BTT_OCTOPUS_PRO_V1_0) - #include "stm32f4/pins_BTT_OCTOPUS_PRO_V1_0.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_USB env:STM32F429ZG_btt env:STM32F429ZG_btt_USB env:STM32H723Zx_btt + #include "stm32f4/pins_BTT_OCTOPUS_PRO_V1_0.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_USB env:STM32F429ZG_btt env:STM32F429ZG_btt_USB env:STM32H723ZE_btt #elif MB(LERDGE_K) #include "stm32f4/pins_LERDGE_K.h" // STM32F4 env:LERDGEK env:LERDGEK_usb_flash_drive #elif MB(LERDGE_S) @@ -810,11 +810,11 @@ #elif MB(BTT_SKR_SE_BX_V3) #include "stm32h7/pins_BTT_SKR_SE_BX_V3.h" // STM32H7 env:BTT_SKR_SE_BX #elif MB(BTT_SKR_V3_0) - #include "stm32h7/pins_BTT_SKR_V3_0.h" // STM32H743Vx/STM32H723VG env:STM32H743Vx_btt env:STM32H723VG_btt + #include "stm32h7/pins_BTT_SKR_V3_0.h" // STM32H7 env:STM32H743VI_btt env:STM32H723VG_btt #elif MB(BTT_SKR_V3_0_EZ) - #include "stm32h7/pins_BTT_SKR_V3_0_EZ.h" // STM32H743Vx/STM32H723VG env:STM32H743Vx_btt env:STM32H723VG_btt + #include "stm32h7/pins_BTT_SKR_V3_0_EZ.h" // STM32H7 env:STM32H743VI_btt env:STM32H723VG_btt #elif MB(BTT_OCTOPUS_MAX_EZ_V1_0) - #include "stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h" // STM32H723Zx/STM32H723VE env:STM32H723Zx_btt env:STM32H723VE_btt + #include "stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h" // STM32H7 env:STM32H723ZE_btt #elif MB(TEENSY41) #include "teensy4/pins_TEENSY41.h" // Teensy-4.x env:teensy41 #elif MB(T41U5XBB) diff --git a/buildroot/share/PlatformIO/boards/marlin_CREALITY_STM32F401RC.json b/buildroot/share/PlatformIO/boards/marlin_CREALITY_STM32F401RC.json deleted file mode 100644 index 82f49fa815d6..000000000000 --- a/buildroot/share/PlatformIO/boards/marlin_CREALITY_STM32F401RC.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "build": { - "core": "stm32", - "cpu": "cortex-m4", - "extra_flags": "-DSTM32F401xx", - "f_cpu": "84000000L", - "hwids": [ - [ - "0x1EAF", - "0x0003" - ], - [ - "0x0483", - "0x3748" - ] - ], - "ldscript": "ldscript.ld", - "mcu": "stm32f401rct6", - "variant": "MARLIN_CREALITY_STM32F401RC" - }, - "debug": { - "jlink_device": "STM32F401RC", - "openocd_target": "stm32f4x", - "svd_path": "STM32F40x.svd", - "tools": { - "stlink": { - "server": { - "arguments": [ - "-f", - "scripts/interface/stlink.cfg", - "-c", - "transport select hla_swd", - "-f", - "scripts/target/stm32f4x.cfg", - "-c", - "reset_config none" - ], - "executable": "bin/openocd", - "package": "tool-openocd" - } - } - } - }, - "frameworks": [ - "arduino", - "stm32cube" - ], - "name": "STM32F401RC (64k RAM. 256k Flash)", - "upload": { - "disable_flushing": false, - "maximum_ram_size": 65536, - "maximum_size": 262144, - "protocol": "stlink", - "protocols": [ - "stlink", - "dfu", - "jlink" - ], - "require_upload_port": true, - "use_1200bps_touch": false, - "wait_for_upload_port": false - }, - "url": "https://www.st.com/en/microcontrollers-microprocessors/stm32f401rc.html", - "vendor": "Generic" -} diff --git a/buildroot/share/PlatformIO/boards/marlin_STM32H723VE.json b/buildroot/share/PlatformIO/boards/marlin_STM32H723VE.json deleted file mode 100644 index 3941b3d00a76..000000000000 --- a/buildroot/share/PlatformIO/boards/marlin_STM32H723VE.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "build": { - "core": "stm32", - "cpu": "cortex-m7", - "extra_flags": "-DSTM32H7xx -DSTM32H723xx", - "f_cpu": "550000000L", - "mcu": "stm32h723vet6", - "product_line": "STM32H723xx", - "variant": "MARLIN_H723VE" - }, - "connectivity": [ - "can", - "ethernet" - ], - "debug": { - "jlink_device": "STM32H723VE", - "openocd_target": "stm32h7x", - "svd_path": "STM32H7x3.svd", - "tools": { - "stlink": { - "server": { - "arguments": [ - "-f", - "scripts/interface/stlink.cfg", - "-c", - "transport select hla_swd", - "-f", - "scripts/target/stm32h7x.cfg", - "-c", - "reset_config none" - ], - "executable": "bin/openocd", - "package": "tool-openocd" - } - } - } - }, - "frameworks": [ - "arduino", - "stm32cube" - ], - "name": "STM32H723VE (564k RAM. 512k Flash)", - "upload": { - "disable_flushing": false, - "maximum_ram_size": 577536, - "maximum_size": 524288, - "protocol": "stlink", - "protocols": [ - "stlink", - "dfu", - "jlink", - "cmsis-dap" - ], - "offset_address": "0x8020000", - "require_upload_port": true, - "use_1200bps_touch": false, - "wait_for_upload_port": false - }, - "url": "https://www.st.com/en/microcontrollers-microprocessors/stm32h723ve.html", - "vendor": "ST" -} diff --git a/buildroot/share/PlatformIO/boards/marlin_STM32H723Zx.json b/buildroot/share/PlatformIO/boards/marlin_STM32H723ZE.json similarity index 100% rename from buildroot/share/PlatformIO/boards/marlin_STM32H723Zx.json rename to buildroot/share/PlatformIO/boards/marlin_STM32H723ZE.json diff --git a/buildroot/share/PlatformIO/boards/marlin_STM32H743Vx.json b/buildroot/share/PlatformIO/boards/marlin_STM32H743VI.json similarity index 100% rename from buildroot/share/PlatformIO/boards/marlin_STM32H743Vx.json rename to buildroot/share/PlatformIO/boards/marlin_STM32H743VI.json diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723VE/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_H723VE/PeripheralPins.c deleted file mode 100644 index e484edd1ad44..000000000000 --- a/buildroot/share/PlatformIO/variants/MARLIN_H723VE/PeripheralPins.c +++ /dev/null @@ -1,590 +0,0 @@ -/* - ******************************************************************************* - * Copyright (c) 2020, STMicroelectronics - * All rights reserved. - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ******************************************************************************* - */ -/* - * Automatically generated from STM32H723VEHx.xml, STM32H723VETx.xml - * STM32H723VGHx.xml, STM32H723VGTx.xml - * STM32H730VBHx.xml, STM32H730VBTx.xml - * STM32H733VGHx.xml, STM32H733VGTx.xml - * CubeMX DB release 6.0.60 - */ -#if !defined(CUSTOM_PERIPHERAL_PINS) -#include "Arduino.h" -#include "PeripheralPins.h" - -/* ===== - * Notes: - * - The pins mentioned Px_y_ALTz are alternative possibilities which use other - * HW peripheral instances. You can use them the same way as any other "normal" - * pin (i.e. analogWrite(PA7_ALT1, 128);). - * - * - Commented lines are alternative possibilities which are not used per default. - * If you change them, you will have to know what you do - * ===== - */ - -//*** ADC *** - -#ifdef HAL_ADC_MODULE_ENABLED -WEAK const PinMap PinMap_ADC[] = { - {PA_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 16, 0)}, // ADC1_INP16 - {PA_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 17, 0)}, // ADC1_INP17 - {PA_2, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 14, 0)}, // ADC1_INP14 - {PA_2_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 14, 0)}, // ADC2_INP14 - {PA_3, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 15, 0)}, // ADC1_INP15 - {PA_3_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 15, 0)}, // ADC2_INP15 - {PA_4, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 18, 0)}, // ADC1_INP18 - {PA_4_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 18, 0)}, // ADC2_INP18 - {PA_5, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 19, 0)}, // ADC1_INP19 - {PA_5_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 19, 0)}, // ADC2_INP19 - {PA_6, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 3, 0)}, // ADC1_INP3 - {PA_6_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 3, 0)}, // ADC2_INP3 - {PA_7, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)}, // ADC1_INP7 - {PA_7_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)}, // ADC2_INP7 - {PB_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 9, 0)}, // ADC1_INP9 - {PB_0_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 9, 0)}, // ADC2_INP9 - {PB_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)}, // ADC1_INP5 - {PB_1_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)}, // ADC2_INP5 - {PC_0, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 10, 0)}, // ADC1_INP10 - {PC_0_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 10, 0)}, // ADC2_INP10 - {PC_0_ALT2, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 10, 0)}, // ADC3_INP10 - {PC_1, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 11, 0)}, // ADC1_INP11 - {PC_1_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 11, 0)}, // ADC2_INP11 - {PC_1_ALT2, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 11, 0)}, // ADC3_INP11 - {PC_2_C, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 0, 0)}, // ADC3_INP0 - {PC_3_C, ADC3, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // ADC3_INP1 - {PC_4, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 4, 0)}, // ADC1_INP4 - {PC_4_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 4, 0)}, // ADC2_INP4 - {PC_5, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 8, 0)}, // ADC1_INP8 - {PC_5_ALT1, ADC2, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 8, 0)}, // ADC2_INP8 - {NC, NP, 0} -}; -#endif - -//*** DAC *** - -#ifdef HAL_DAC_MODULE_ENABLED -WEAK const PinMap PinMap_DAC[] = { - {PA_4, DAC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // DAC1_OUT1 - {PA_5, DAC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // DAC1_OUT2 - {NC, NP, 0} -}; -#endif - -//*** I2C *** - -#ifdef HAL_I2C_MODULE_ENABLED -WEAK const PinMap PinMap_I2C_SDA[] = { - {PB_7, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, - {PB_7_ALT1, I2C4, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C4)}, - {PB_9, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, - {PB_9_ALT1, I2C4, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C4)}, - {PB_11, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, - {PC_9, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)}, - {PC_9_ALT1, I2C5, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C5)}, - {PC_10, I2C5, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C5)}, - {PD_13, I2C4, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C4)}, - {NC, NP, 0} -}; -#endif - -#ifdef HAL_I2C_MODULE_ENABLED -WEAK const PinMap PinMap_I2C_SCL[] = { - {PA_8, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)}, - {PA_8_ALT1, I2C5, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C5)}, - {PB_6, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, - {PB_6_ALT1, I2C4, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C4)}, - {PB_8, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, - {PB_8_ALT1, I2C4, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C4)}, - {PB_10, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C2)}, - {PC_11, I2C5, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C5)}, - {PD_12, I2C4, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C4)}, - {NC, NP, 0} -}; -#endif - -//*** TIM *** - -#ifdef HAL_TIM_MODULE_ENABLED -WEAK const PinMap PinMap_TIM[] = { - {PA_0, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 - {PA_0_ALT1, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 1, 0)}, // TIM5_CH1 - {PA_1, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2 - {PA_1_ALT1, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 2, 0)}, // TIM5_CH2 - {PA_1_ALT2, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM15, 1, 1)}, // TIM15_CH1N - {PA_2, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // TIM2_CH3 - {PA_2_ALT1, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 3, 0)}, // TIM5_CH3 - {PA_2_ALT2, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM15, 1, 0)}, // TIM15_CH1 - {PA_3, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 4, 0)}, // TIM2_CH4 - {PA_3_ALT1, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 4, 0)}, // TIM5_CH4 - {PA_3_ALT2, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM15, 2, 0)}, // TIM15_CH2 - {PA_5, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 - {PA_5_ALT1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 1)}, // TIM8_CH1N - {PA_6, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 - {PA_6_ALT1, TIM13, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM13, 1, 0)}, // TIM13_CH1 - {PA_7, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N - {PA_7_ALT1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 - {PA_7_ALT2, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 1)}, // TIM8_CH1N - {PA_7_ALT3, TIM14, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_TIM14, 1, 0)}, // TIM14_CH1 - {PA_8, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 0)}, // TIM1_CH1 - {PA_9, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 0)}, // TIM1_CH2 - {PA_10, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 0)}, // TIM1_CH3 - {PA_11, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 4, 0)}, // TIM1_CH4 - {PA_15, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 - {PB_0, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N - {PB_0_ALT1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 3, 0)}, // TIM3_CH3 - {PB_0_ALT2, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 1)}, // TIM8_CH2N - {PB_1, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N - {PB_1_ALT1, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 4, 0)}, // TIM3_CH4 - {PB_1_ALT2, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 1)}, // TIM8_CH3N - {PB_3, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2 - {PB_4, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 - {PB_5, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 - {PB_6, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 1, 0)}, // TIM4_CH1 - {PB_6_ALT1, TIM16, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM16, 1, 1)}, // TIM16_CH1N - {PB_7, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 2, 0)}, // TIM4_CH2 - {PB_7_ALT1, TIM17, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM17, 1, 1)}, // TIM17_CH1N - {PB_8, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 3, 0)}, // TIM4_CH3 - {PB_8_ALT1, TIM16, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM16, 1, 0)}, // TIM16_CH1 - {PB_9, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 4, 0)}, // TIM4_CH4 - {PB_9_ALT1, TIM17, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM17, 1, 0)}, // TIM17_CH1 - {PB_10, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // TIM2_CH3 - {PB_11, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 4, 0)}, // TIM2_CH4 - {PB_13, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N - {PB_14, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N - {PB_14_ALT1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 1)}, // TIM8_CH2N - {PB_14_ALT2, TIM12, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM12, 1, 0)}, // TIM12_CH1 - {PB_15, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N - {PB_15_ALT1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 1)}, // TIM8_CH3N - {PB_15_ALT2, TIM12, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM12, 2, 0)}, // TIM12_CH2 - {PC_6, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 - {PC_6_ALT1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 1, 0)}, // TIM8_CH1 - {PC_7, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 - {PC_7_ALT1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 2, 0)}, // TIM8_CH2 - {PC_8, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 3, 0)}, // TIM3_CH3 - {PC_8_ALT1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 3, 0)}, // TIM8_CH3 - {PC_9, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 4, 0)}, // TIM3_CH4 - {PC_9_ALT1, TIM8, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM8, 4, 0)}, // TIM8_CH4 - {PC_12, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM15, 1, 0)}, // TIM15_CH1 - {PD_12, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 1, 0)}, // TIM4_CH1 - {PD_13, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 2, 0)}, // TIM4_CH2 - {PD_14, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 3, 0)}, // TIM4_CH3 - {PD_15, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 4, 0)}, // TIM4_CH4 - {PE_4, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM15, 1, 1)}, // TIM15_CH1N - {PE_5, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM15, 1, 0)}, // TIM15_CH1 - {PE_6, TIM15, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM15, 2, 0)}, // TIM15_CH2 - {PE_8, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N - {PE_9, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 0)}, // TIM1_CH1 - {PE_10, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N - {PE_11, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 0)}, // TIM1_CH2 - {PE_12, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N - {PE_13, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 0)}, // TIM1_CH3 - {PE_14, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 4, 0)}, // TIM1_CH4 - {NC, NP, 0} -}; -#endif - -//*** UART *** - -#ifdef HAL_UART_MODULE_ENABLED -WEAK const PinMap PinMap_UART_TX[] = { - {PA_0, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, - {PA_2, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, - {PA_9, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART)}, - {PA_9_ALT1, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, - {PA_12, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_UART4)}, - {PA_15, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART7)}, - {PB_4, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART7)}, - {PB_6, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_LPUART)}, - {PB_6_ALT1, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_UART5)}, - {PB_6_ALT2, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, - {PB_9, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, - {PB_10, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, - {PB_13, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_UART5)}, - {PB_14, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART1)}, - {PC_6, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART6)}, - {PC_10, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, - {PC_10_ALT1, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, - {PC_12, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)}, - {PD_1, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, - {PD_5, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, - {PD_8, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, - {PD_15, UART9, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART9)}, - {PE_1, UART8, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART8)}, - {PE_3, USART10, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_USART10)}, - {PE_8, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_UART7)}, - {NC, NP, 0} -}; -#endif - -#ifdef HAL_UART_MODULE_ENABLED -WEAK const PinMap PinMap_UART_RX[] = { - {PA_1, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, - {PA_3, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, - {PA_8, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART7)}, - {PA_10, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART)}, - {PA_10_ALT1, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, - {PA_11, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_UART4)}, - {PB_3, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART7)}, - {PB_5, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_UART5)}, - {PB_7, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_LPUART)}, - {PB_7_ALT1, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, - {PB_8, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, - {PB_11, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, - {PB_12, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_UART5)}, - {PB_15, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART1)}, - {PC_7, USART6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART6)}, - {PC_11, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, - {PC_11_ALT1, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, - {PD_0, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, - {PD_2, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)}, - {PD_6, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, - {PD_9, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, - {PD_14, UART9, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART9)}, - {PE_0, UART8, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART8)}, - {PE_2, USART10, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART10)}, - {PE_7, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_UART7)}, - {NC, NP, 0} -}; -#endif - -#ifdef HAL_UART_MODULE_ENABLED -WEAK const PinMap PinMap_UART_RTS[] = { - {PA_1, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, - {PA_12, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART)}, - {PA_12_ALT1, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, - {PA_15, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, - {PB_14, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, - {PB_14_ALT1, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, - {PC_8, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)}, - {PD_4, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, - {PD_12, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, - {PD_13, UART9, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART9)}, - {PD_15, UART8, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART8)}, - {PE_9, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_UART7)}, - {NC, NP, 0} -}; -#endif - -#ifdef HAL_UART_MODULE_ENABLED -WEAK const PinMap PinMap_UART_CTS[] = { - {PA_0, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, - {PA_11, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_LPUART)}, - {PA_11_ALT1, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, - {PB_0, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, - {PB_13, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, - {PB_15, UART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART4)}, - {PC_9, UART5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART5)}, - {PD_0, UART9, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_UART9)}, - {PD_3, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART2)}, - {PD_11, USART3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART3)}, - {PD_14, UART8, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_UART8)}, - {PE_10, UART7, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_UART7)}, - {NC, NP, 0} -}; -#endif - -//*** SPI *** - -#ifdef HAL_SPI_MODULE_ENABLED -WEAK const PinMap PinMap_SPI_MOSI[] = { - {PA_7, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, - {PA_7_ALT1, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_SPI6)}, - {PB_2, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_SPI3)}, - {PB_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, - {PB_5_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_SPI3)}, - {PB_5_ALT2, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_SPI6)}, - {PB_15, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, - {PC_1, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, - {PC_3_C, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, - {PC_12, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, - {PD_6, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI3)}, - {PD_7, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, - {PE_6, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, - {PE_14, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, - {NC, NP, 0} -}; -#endif - -#ifdef HAL_SPI_MODULE_ENABLED -WEAK const PinMap PinMap_SPI_MISO[] = { - {PA_6, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, - {PA_6_ALT1, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_SPI6)}, - {PB_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, - {PB_4_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, - {PB_4_ALT2, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_SPI6)}, - {PB_14, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, - {PC_2_C, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, - {PC_11, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, - {PE_5, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, - {PE_13, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, - {NC, NP, 0} -}; -#endif - -#ifdef HAL_SPI_MODULE_ENABLED -WEAK const PinMap PinMap_SPI_SCLK[] = { - {PA_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, - {PA_5_ALT1, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_SPI6)}, - {PA_9, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, - {PA_12, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, - {PB_3, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, - {PB_3_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, - {PB_3_ALT2, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_SPI6)}, - {PB_10, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, - {PB_13, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, - {PC_10, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, - {PC_12, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI6)}, - {PD_3, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, - {PE_2, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, - {PE_12, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, - {NC, NP, 0} -}; -#endif - -#ifdef HAL_SPI_MODULE_ENABLED -WEAK const PinMap PinMap_SPI_SSEL[] = { - {PA_0, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI6)}, - {PA_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, - {PA_4_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, - {PA_4_ALT2, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF8_SPI6)}, - {PA_11, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, - {PA_15, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, - {PA_15_ALT1, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, - {PA_15_ALT2, SPI6, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_SPI6)}, - {PB_4, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_SPI2)}, - {PB_9, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, - {PB_12, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)}, - {PE_4, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, - {PE_11, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)}, - {NC, NP, 0} -}; -#endif - -//*** FDCAN *** - -#ifdef HAL_FDCAN_MODULE_ENABLED -WEAK const PinMap PinMap_CAN_RD[] = { - {PA_11, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN1)}, - {PB_5, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN2)}, - {PB_8, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN1)}, - {PB_12, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN2)}, - {PD_0, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN1)}, - {PD_12, FDCAN3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF5_FDCAN3)}, - {NC, NP, 0} -}; -#endif - -#ifdef HAL_FDCAN_MODULE_ENABLED -WEAK const PinMap PinMap_CAN_TD[] = { - {PA_12, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN1)}, - {PB_6, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN2)}, - {PB_9, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN1)}, - {PB_13, FDCAN2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN2)}, - {PD_1, FDCAN1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_FDCAN1)}, - {PD_13, FDCAN3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF5_FDCAN3)}, - {NC, NP, 0} -}; -#endif - -//*** ETHERNET *** - -#if defined(HAL_ETH_MODULE_ENABLED) || defined(HAL_ETH_LEGACY_MODULE_ENABLED) -WEAK const PinMap PinMap_Ethernet[] = { - {PA_0, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_CRS - {PA_1, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_REF_CLK - {PA_1_ALT1, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RX_CLK - {PA_2, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_MDIO - {PA_3, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_COL - {PA_7, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_CRS_DV - {PA_7_ALT1, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RX_DV - {PA_9, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TX_ER - {PB_0, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RXD2 - {PB_1, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RXD3 - {PB_2, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TX_ER - {PB_5, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_PPS_OUT - {PB_8, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD3 - {PB_10, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RX_ER - {PB_11, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TX_EN - {PB_12, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD0 - {PB_13, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD1 - {PC_1, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_MDC - {PC_2_C, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD2 - {PC_3_C, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TX_CLK - {PC_4, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RXD0 - {PC_5, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_RXD1 - {PE_2, ETH, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_ETH)}, // ETH_TXD3 - {NC, NP, 0} -}; -#endif - -//*** OCTOSPI *** - -#ifdef HAL_OSPI_MODULE_ENABLED -WEAK const PinMap PinMap_OCTOSPI_DATA0[] = { - {PA_2, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO0 - {PB_1, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO0 - {PB_12, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO0 - {PC_3_C, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO0 - {PC_9, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO0 - {PD_11, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO0 - {NC, NP, 0} -}; -#endif - -#ifdef HAL_OSPI_MODULE_ENABLED -WEAK const PinMap PinMap_OCTOSPI_DATA1[] = { - {PB_0, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO1 - {PC_10, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO1 - {PD_12, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO1 - {NC, NP, 0} -}; -#endif - -#ifdef HAL_OSPI_MODULE_ENABLED -WEAK const PinMap PinMap_OCTOSPI_DATA2[] = { - {PA_3, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO2 - {PA_7, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO2 - {PB_13, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO2 - {PC_2_C, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO2 - {PE_2, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO2 - {NC, NP, 0} -}; -#endif - -#ifdef HAL_OSPI_MODULE_ENABLED -WEAK const PinMap PinMap_OCTOSPI_DATA3[] = { - {PA_1, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO3 - {PA_6, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO3 - {PD_13, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO3 - {NC, NP, 0} -}; -#endif - -#ifdef HAL_OSPI_MODULE_ENABLED -WEAK const PinMap PinMap_OCTOSPI_DATA4[] = { - {PC_1, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO4 - {PD_4, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO4 - {PE_7, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO4 - {NC, NP, 0} -}; -#endif - -#ifdef HAL_OSPI_MODULE_ENABLED -WEAK const PinMap PinMap_OCTOSPI_DATA5[] = { - {PC_2_C, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO5 - {PD_5, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO5 - {PE_8, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO5 - {NC, NP, 0} -}; -#endif - -#ifdef HAL_OSPI_MODULE_ENABLED -WEAK const PinMap PinMap_OCTOSPI_DATA6[] = { - {PC_3_C, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO6 - {PD_6, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO6 - {PE_9, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO6 - {NC, NP, 0} -}; -#endif - -#ifdef HAL_OSPI_MODULE_ENABLED -WEAK const PinMap PinMap_OCTOSPI_DATA7[] = { - {PD_7, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO7 - {PE_10, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_IO7 - {NC, NP, 0} -}; -#endif - -#ifdef HAL_OSPI_MODULE_ENABLED -WEAK const PinMap PinMap_OCTOSPI_SCLK[] = { - {PA_3, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_OCTOSPIM_P1)}, // OCTOSPIM_P1_CLK - {PB_2, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_CLK - {NC, NP, 0} -}; -#endif - -#ifdef HAL_OSPI_MODULE_ENABLED -WEAK const PinMap PinMap_OCTOSPI_SSEL[] = { - {PB_6, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OCTOSPIM_P1)}, // OCTOSPIM_P1_NCS - {PB_10, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_NCS - {PC_11, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_OCTOSPIM_P1)}, // OCTOSPIM_P1_NCS - {PE_11, OCTOSPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF11_OCTOSPIM_P1)}, // OCTOSPIM_P1_NCS - {NC, NP, 0} -}; -#endif - -//*** USB *** - -#if defined(HAL_PCD_MODULE_ENABLED) || defined(HAL_HCD_MODULE_ENABLED) -WEAK const PinMap PinMap_USB_OTG_HS[] = { -#ifdef USE_USB_HS_IN_FS - {PA_8, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_SOF - {PA_9, USB_OTG_HS, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, GPIO_AF_NONE)}, // USB_OTG_HS_VBUS - {PA_10, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ID - {PA_11, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF_NONE)}, // USB_OTG_HS_DM - {PA_12, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF_NONE)}, // USB_OTG_HS_DP -#else - {PA_3, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D0 - {PA_5, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_CK - {PB_0, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D1 - {PB_1, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D2 - {PB_5, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D7 - {PB_10, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D3 - {PB_11, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D4 - {PB_12, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D5 - {PB_13, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_D6 - {PC_0, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_STP - {PC_2_C, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_DIR - {PC_3_C, USB_OTG_HS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG1_HS)}, // USB_OTG_HS_ULPI_NXT -#endif /* USE_USB_HS_IN_FS */ - {NC, NP, 0} -}; -#endif - -//*** SD *** - -#ifdef HAL_SD_MODULE_ENABLED -WEAK const PinMap PinMap_SD[] = { - {PA_0, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_SDMMC2)}, // SDMMC2_CMD - {PB_3, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_SDMMC2)}, // SDMMC2_D2 - {PB_4, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_SDMMC2)}, // SDMMC2_D3 - {PB_8, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF7_SDMMC1)}, // SDMMC1_CKIN - {PB_8_ALT1, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D4 - {PB_8_ALT2, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_SDMMC2)}, // SDMMC2_D4 - {PB_9, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF7_SDMMC1)}, // SDMMC1_CDIR - {PB_9_ALT1, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D5 - {PB_9_ALT2, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_SDMMC2)}, // SDMMC2_D5 - {PB_13, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D0 - {PB_14, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_SDMMC2)}, // SDMMC2_D0 - {PB_15, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF9_SDMMC2)}, // SDMMC2_D1 - {PC_1, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF9_SDMMC2)}, // SDMMC2_CK - {PC_4, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF10_SDMMC2)}, // SDMMC2_CKIN - {PC_6, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF8_SDMMC1)}, // SDMMC1_D0DIR - {PC_6_ALT1, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D6 - {PC_6_ALT2, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_SDMMC2)}, // SDMMC2_D6 - {PC_7, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF8_SDMMC1)}, // SDMMC1_D123DIR - {PC_7_ALT1, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D7 - {PC_7_ALT2, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_SDMMC2)}, // SDMMC2_D7 - {PC_8, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D0 - {PC_9, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D1 - {PC_10, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D2 - {PC_11, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDMMC1)}, // SDMMC1_D3 - {PC_12, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF12_SDMMC1)}, // SDMMC1_CK - {PD_2, SDMMC1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF12_SDMMC1)}, // SDMMC1_CMD - {PD_6, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF11_SDMMC2)}, // SDMMC2_CK - {PD_7, SDMMC2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF11_SDMMC2)}, // SDMMC2_CMD - {NC, NP, 0} -}; -#endif - -#endif /* !CUSTOM_PERIPHERAL_PINS */ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723VE/PinNamesVar.h b/buildroot/share/PlatformIO/variants/MARLIN_H723VE/PinNamesVar.h deleted file mode 100644 index 3bd0ed8fcd64..000000000000 --- a/buildroot/share/PlatformIO/variants/MARLIN_H723VE/PinNamesVar.h +++ /dev/null @@ -1,108 +0,0 @@ -/* Dual pad pin name */ -PC_2_C = PC_2 | PDUAL, -PC_3_C = PC_3 | PDUAL, - -/* Alternate pin name */ -PA_0_ALT1 = PA_0 | ALT1, -PA_1_ALT1 = PA_1 | ALT1, -PA_1_ALT2 = PA_1 | ALT2, -PA_2_ALT1 = PA_2 | ALT1, -PA_2_ALT2 = PA_2 | ALT2, -PA_3_ALT1 = PA_3 | ALT1, -PA_3_ALT2 = PA_3 | ALT2, -PA_4_ALT1 = PA_4 | ALT1, -PA_4_ALT2 = PA_4 | ALT2, -PA_5_ALT1 = PA_5 | ALT1, -PA_6_ALT1 = PA_6 | ALT1, -PA_7_ALT1 = PA_7 | ALT1, -PA_7_ALT2 = PA_7 | ALT2, -PA_7_ALT3 = PA_7 | ALT3, -PA_8_ALT1 = PA_8 | ALT1, -PA_9_ALT1 = PA_9 | ALT1, -PA_10_ALT1 = PA_10 | ALT1, -PA_11_ALT1 = PA_11 | ALT1, -PA_12_ALT1 = PA_12 | ALT1, -PA_15_ALT1 = PA_15 | ALT1, -PA_15_ALT2 = PA_15 | ALT2, -PB_0_ALT1 = PB_0 | ALT1, -PB_0_ALT2 = PB_0 | ALT2, -PB_1_ALT1 = PB_1 | ALT1, -PB_1_ALT2 = PB_1 | ALT2, -PB_3_ALT1 = PB_3 | ALT1, -PB_3_ALT2 = PB_3 | ALT2, -PB_4_ALT1 = PB_4 | ALT1, -PB_4_ALT2 = PB_4 | ALT2, -PB_5_ALT1 = PB_5 | ALT1, -PB_5_ALT2 = PB_5 | ALT2, -PB_6_ALT1 = PB_6 | ALT1, -PB_6_ALT2 = PB_6 | ALT2, -PB_7_ALT1 = PB_7 | ALT1, -PB_8_ALT1 = PB_8 | ALT1, -PB_8_ALT2 = PB_8 | ALT2, -PB_9_ALT1 = PB_9 | ALT1, -PB_9_ALT2 = PB_9 | ALT2, -PB_14_ALT1 = PB_14 | ALT1, -PB_14_ALT2 = PB_14 | ALT2, -PB_15_ALT1 = PB_15 | ALT1, -PB_15_ALT2 = PB_15 | ALT2, -PC_0_ALT1 = PC_0 | ALT1, -PC_0_ALT2 = PC_0 | ALT2, -PC_1_ALT1 = PC_1 | ALT1, -PC_1_ALT2 = PC_1 | ALT2, -PC_4_ALT1 = PC_4 | ALT1, -PC_5_ALT1 = PC_5 | ALT1, -PC_6_ALT1 = PC_6 | ALT1, -PC_6_ALT2 = PC_6 | ALT2, -PC_7_ALT1 = PC_7 | ALT1, -PC_7_ALT2 = PC_7 | ALT2, -PC_8_ALT1 = PC_8 | ALT1, -PC_9_ALT1 = PC_9 | ALT1, -PC_10_ALT1 = PC_10 | ALT1, -PC_11_ALT1 = PC_11 | ALT1, - -/* SYS_WKUP */ -#ifdef PWR_WAKEUP_PIN1 - SYS_WKUP1 = PA_0, -#endif -#ifdef PWR_WAKEUP_PIN2 - SYS_WKUP2 = PA_2, -#endif -#ifdef PWR_WAKEUP_PIN3 - SYS_WKUP3 = NC, -#endif -#ifdef PWR_WAKEUP_PIN4 - SYS_WKUP4 = PC_13, -#endif -#ifdef PWR_WAKEUP_PIN5 - SYS_WKUP5 = NC, -#endif -#ifdef PWR_WAKEUP_PIN6 - SYS_WKUP6 = PC_1, -#endif -#ifdef PWR_WAKEUP_PIN7 - SYS_WKUP7 = NC, -#endif -#ifdef PWR_WAKEUP_PIN8 - SYS_WKUP8 = NC, -#endif - -/* USB */ -#ifdef USBCON - USB_OTG_HS_DM = PA_11, - USB_OTG_HS_DP = PA_12, - USB_OTG_HS_ID = PA_10, - USB_OTG_HS_SOF = PA_8, - USB_OTG_HS_ULPI_CK = PA_5, - USB_OTG_HS_ULPI_D0 = PA_3, - USB_OTG_HS_ULPI_D1 = PB_0, - USB_OTG_HS_ULPI_D2 = PB_1, - USB_OTG_HS_ULPI_D3 = PB_10, - USB_OTG_HS_ULPI_D4 = PB_11, - USB_OTG_HS_ULPI_D5 = PB_12, - USB_OTG_HS_ULPI_D6 = PB_13, - USB_OTG_HS_ULPI_D7 = PB_5, - USB_OTG_HS_ULPI_DIR = PC_2_C, - USB_OTG_HS_ULPI_NXT = PC_3_C, - USB_OTG_HS_ULPI_STP = PC_0, - USB_OTG_HS_VBUS = PA_9, -#endif diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723VE/ldscript.ld b/buildroot/share/PlatformIO/variants/MARLIN_H723VE/ldscript.ld deleted file mode 100644 index 63228610336b..000000000000 --- a/buildroot/share/PlatformIO/variants/MARLIN_H723VE/ldscript.ld +++ /dev/null @@ -1,174 +0,0 @@ -/* -****************************************************************************** -** -** File : LinkerScript.ld -** -** Author : STM32CubeIDE -** -** Abstract : Linker script for STM32H7 series -** 512Kbytes FLASH and 560Kbytes RAM -** -** Set heap size, stack size and stack location according -** to application requirements. -** -** Set memory bank area and size if external memory is used. -** -** Target : STMicroelectronics STM32 -** -** Distribution: The file is distributed as is, without any warranty -** of any kind. -** -***************************************************************************** -** @attention -** -** Copyright (c) 2022 STMicroelectronics. -** All rights reserved. -** -** This software is licensed under terms that can be found in the LICENSE file -** in the root directory of this software component. -** If no LICENSE file comes with this software, it is provided AS-IS. -** -**************************************************************************** -*/ - -/* Entry Point */ -ENTRY(Reset_Handler) - -/* Highest address of the user mode stack */ -_estack = ORIGIN(RAM_D1) + LENGTH(RAM_D1); /* end of RAM */ -/* Generate a link error if heap and stack don't fit into RAM */ -_Min_Heap_Size = 0x200 ; /* required amount of heap */ -_Min_Stack_Size = 0x400 ; /* required amount of stack */ - -/* Specify the memory areas */ -MEMORY -{ - ITCMRAM (xrw) : ORIGIN = 0x00000000, LENGTH = 64K - DTCMRAM (xrw) : ORIGIN = 0x20000000, LENGTH = 128K - FLASH (rx) : ORIGIN = 0x8000000 + LD_FLASH_OFFSET, LENGTH = LD_MAX_SIZE - LD_FLASH_OFFSET - RAM_D1 (xrw) : ORIGIN = 0x24000000, LENGTH = 320K - RAM_D2 (xrw) : ORIGIN = 0x30000000, LENGTH = 32K - RAM_D3 (xrw) : ORIGIN = 0x38000000, LENGTH = 16K -} - -/* Define output sections */ -SECTIONS -{ - /* The startup code goes first into FLASH */ - .isr_vector : - { - . = ALIGN(4); - KEEP(*(.isr_vector)) /* Startup code */ - . = ALIGN(4); - } >FLASH - - /* The program code and other data goes into FLASH */ - .text : - { - . = ALIGN(4); - *(.text) /* .text sections (code) */ - *(.text*) /* .text* sections (code) */ - *(.glue_7) /* glue arm to thumb code */ - *(.glue_7t) /* glue thumb to arm code */ - *(.eh_frame) - - KEEP (*(.init)) - KEEP (*(.fini)) - - . = ALIGN(4); - _etext = .; /* define a global symbols at end of code */ - } >FLASH - - /* Constant data goes into FLASH */ - .rodata : - { - . = ALIGN(4); - *(.rodata) /* .rodata sections (constants, strings, etc.) */ - *(.rodata*) /* .rodata* sections (constants, strings, etc.) */ - . = ALIGN(4); - } >FLASH - - .ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH - .ARM : { - __exidx_start = .; - *(.ARM.exidx*) - __exidx_end = .; - } >FLASH - - .preinit_array : - { - PROVIDE_HIDDEN (__preinit_array_start = .); - KEEP (*(.preinit_array*)) - PROVIDE_HIDDEN (__preinit_array_end = .); - } >FLASH - - .init_array : - { - PROVIDE_HIDDEN (__init_array_start = .); - KEEP (*(SORT(.init_array.*))) - KEEP (*(.init_array*)) - PROVIDE_HIDDEN (__init_array_end = .); - } >FLASH - - .fini_array : - { - PROVIDE_HIDDEN (__fini_array_start = .); - KEEP (*(SORT(.fini_array.*))) - KEEP (*(.fini_array*)) - PROVIDE_HIDDEN (__fini_array_end = .); - } >FLASH - - /* used by the startup to initialize data */ - _sidata = LOADADDR(.data); - - /* Initialized data sections goes into RAM, load LMA copy after code */ - .data : - { - . = ALIGN(4); - _sdata = .; /* create a global symbol at data start */ - *(.data) /* .data sections */ - *(.data*) /* .data* sections */ - *(.RamFunc) /* .RamFunc sections */ - *(.RamFunc*) /* .RamFunc* sections */ - - . = ALIGN(4); - _edata = .; /* define a global symbol at data end */ - } >RAM_D1 AT> FLASH - - /* Uninitialized data section */ - . = ALIGN(4); - .bss : - { - /* This is used by the startup in order to initialize the .bss section */ - _sbss = .; /* define a global symbol at bss start */ - __bss_start__ = _sbss; - *(.bss) - *(.bss*) - *(COMMON) - - . = ALIGN(4); - _ebss = .; /* define a global symbol at bss end */ - __bss_end__ = _ebss; - } >RAM_D1 - - /* User_heap_stack section, used to check that there is enough RAM left */ - ._user_heap_stack : - { - . = ALIGN(8); - PROVIDE ( end = . ); - PROVIDE ( _end = . ); - . = . + _Min_Heap_Size; - . = . + _Min_Stack_Size; - . = ALIGN(8); - } >RAM_D1 - - /* Remove information from the standard libraries */ - /DISCARD/ : - { - libc.a ( * ) - libm.a ( * ) - libgcc.a ( * ) - } - - .ARM.attributes 0 : { *(.ARM.attributes) } -} diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723VE/variant_MARLIN_STM32H723VE.cpp b/buildroot/share/PlatformIO/variants/MARLIN_H723VE/variant_MARLIN_STM32H723VE.cpp deleted file mode 100644 index bfeb0f9abc62..000000000000 --- a/buildroot/share/PlatformIO/variants/MARLIN_H723VE/variant_MARLIN_STM32H723VE.cpp +++ /dev/null @@ -1,273 +0,0 @@ -/* - ******************************************************************************* - * Copyright (c) 2020-2021, STMicroelectronics - * All rights reserved. - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ******************************************************************************* - */ -#ifdef STM32H723xx -#include "pins_arduino.h" - -// Digital PinName array -const PinName digitalPin[] = { - PA_0, // D0/A0 - PA_1, // D1/A1 - PA_2, // D2/A2 - PA_3, // D3/A3 - PA_4, // D4/A4 - PA_5, // D5/A5 - PA_6, // D6/A6 - PA_7, // D7/A7 - PA_8, // D8 - PA_9, // D9 - PA_10, // D10 - PA_11, // D11 - PA_12, // D12 - PA_13, // D13 - PA_14, // D14 - PA_15, // D15 - PB_0, // D16/A8 - PB_1, // D17/A9 - PB_2, // D18 - PB_3, // D19 - PB_4, // D20 - PB_5, // D21 - PB_6, // D22 - PB_7, // D23 - PB_8, // D24 - PB_9, // D25 - PB_10, // D26 - PB_11, // D27 - PB_12, // D28 - PB_13, // D29 - PB_14, // D30 - PB_15, // D31 - PC_0, // D32/A10 - PC_1, // D33/A11 - PC_4, // D34/A12 - PC_5, // D35/A13 - PC_6, // D36 - PC_7, // D37 - PC_8, // D38 - PC_9, // D39 - PC_10, // D40 - PC_11, // D41 - PC_12, // D42 - PC_13, // D43 - PC_14, // D44 - PC_15, // D45 - PD_0, // D46 - PD_1, // D47 - PD_2, // D48 - PD_3, // D49 - PD_4, // D50 - PD_5, // D51 - PD_6, // D52 - PD_7, // D53 - PD_8, // D54 - PD_9, // D55 - PD_10, // D56 - PD_11, // D57 - PD_12, // D58 - PD_13, // D59 - PD_14, // D60 - PD_15, // D61 - PE_0, // D62 - PE_1, // D63 - PE_2, // D64 - PE_3, // D65 - PE_4, // D66 - PE_5, // D67 - PE_6, // D68 - PE_7, // D69 - PE_8, // D70 - PE_9, // D71 - PE_10, // D72 - PE_11, // D73 - PE_12, // D74 - PE_13, // D75 - PE_14, // D76 - PE_15, // D77 - PH_0, // D78 - PH_1, // D79 - PC_2_C, // D80/A14 - PC_3_C // D81/A15 -}; - -// Analog (Ax) pin number array -const uint32_t analogInputPin[] = { - 0, // A0, PA0 - 1, // A1, PA1 - 2, // A2, PA2 - 3, // A3, PA3 - 4, // A4, PA4 - 5, // A5, PA5 - 6, // A6, PA6 - 7, // A7, PA7 - 16, // A8, PB0 - 17, // A9, PB1 - 32, // A10, PC0 - 33, // A11, PC1 - 34, // A12, PC4 - 35, // A13, PC5 - 80, // A14, PC2_C - 81 // A15, PC3_C -}; - -void MPU_Config(void) -{ - MPU_Region_InitTypeDef MPU_InitStruct = {0}; - - /* Disables the MPU */ - HAL_MPU_Disable(); - - /** Initializes and configures the Region and the memory to be protected - */ - MPU_InitStruct.Enable = MPU_REGION_ENABLE; - MPU_InitStruct.Number = MPU_REGION_NUMBER0; - MPU_InitStruct.BaseAddress = 0x0; - MPU_InitStruct.Size = MPU_REGION_SIZE_4GB; - MPU_InitStruct.SubRegionDisable = 0x87; - MPU_InitStruct.TypeExtField = MPU_TEX_LEVEL0; - MPU_InitStruct.AccessPermission = MPU_REGION_NO_ACCESS; - MPU_InitStruct.DisableExec = MPU_INSTRUCTION_ACCESS_DISABLE; - MPU_InitStruct.IsShareable = MPU_ACCESS_SHAREABLE; - MPU_InitStruct.IsCacheable = MPU_ACCESS_NOT_CACHEABLE; - MPU_InitStruct.IsBufferable = MPU_ACCESS_NOT_BUFFERABLE; - - HAL_MPU_ConfigRegion(&MPU_InitStruct); - /* Enables the MPU */ - HAL_MPU_Enable(MPU_PRIVILEGED_DEFAULT); - -} - -/* - * @brief System Clock Configuration - * @param None - * @retval None - */ -WEAK void SystemClock_Config(void) -{ - RCC_OscInitTypeDef RCC_OscInitStruct = {0}; - RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; - RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {}; - - MPU_Config(); - - /** Supply configuration update enable - */ - HAL_PWREx_ConfigSupply(PWR_LDO_SUPPLY); - /** Configure the main internal regulator output voltage - */ - __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE0); - - while(!__HAL_PWR_GET_FLAG(PWR_FLAG_VOSRDY)) {} - /** Initializes the RCC Oscillators according to the specified parameters - * in the RCC_OscInitTypeDef structure. - */ - RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI48 | RCC_OSCILLATORTYPE_HSE; - RCC_OscInitStruct.HSEState = RCC_HSE_ON; - RCC_OscInitStruct.HSI48State = RCC_HSI48_ON; // 48Mhz for USB - RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; - RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; - RCC_OscInitStruct.PLL.PLLM = 5; // 25Mhz / 5 = 5Mhz - RCC_OscInitStruct.PLL.PLLN = 110; // 25Mhz / 5 * 110 = 550Mhz - RCC_OscInitStruct.PLL.PLLP = 1; // 550Mhz / 1 = 550Mhz - RCC_OscInitStruct.PLL.PLLQ = 10; // 550Mhz / 10 = 55Mhz - RCC_OscInitStruct.PLL.PLLR = 10; // unused - RCC_OscInitStruct.PLL.PLLRGE = RCC_PLL1VCIRANGE_2; - RCC_OscInitStruct.PLL.PLLVCOSEL = RCC_PLL1VCOWIDE; - RCC_OscInitStruct.PLL.PLLFRACN = 0; - if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) - { - Error_Handler(); - } - /** Initializes the CPU, AHB and APB buses clocks - */ - RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK - |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2 - |RCC_CLOCKTYPE_D3PCLK1|RCC_CLOCKTYPE_D1PCLK1; - RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; - RCC_ClkInitStruct.SYSCLKDivider = RCC_SYSCLK_DIV1; - RCC_ClkInitStruct.AHBCLKDivider = RCC_HCLK_DIV2; - RCC_ClkInitStruct.APB3CLKDivider = RCC_APB3_DIV2; - RCC_ClkInitStruct.APB1CLKDivider = RCC_APB1_DIV2; - RCC_ClkInitStruct.APB2CLKDivider = RCC_APB2_DIV2; - RCC_ClkInitStruct.APB4CLKDivider = RCC_APB4_DIV2; - - if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_4) != HAL_OK) - { - Error_Handler(); - } - - PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_USB - | RCC_PERIPHCLK_SDMMC | RCC_PERIPHCLK_ADC - | RCC_PERIPHCLK_LPUART1 | RCC_PERIPHCLK_USART16 - | RCC_PERIPHCLK_USART234578 | RCC_PERIPHCLK_I2C123 - | RCC_PERIPHCLK_I2C4 | RCC_PERIPHCLK_SPI123 - | RCC_PERIPHCLK_SPI45 | RCC_PERIPHCLK_SPI6; - - /* HSI48 used for USB 48 Mhz */ - /* PLL1 qclk also used for FMC, SDMMC, RNG, SAI */ - /* PLL2 pclk is needed for adc max 80 Mhz (p,q,r same) */ - /* PLL2 pclk also used for LP timers 2,3,4,5, SPI 1,2,3 */ - /* PLL2 qclk is needed for uart, can, spi4,5,6 80 Mhz */ - /* PLL3 r clk is needed for i2c 80 Mhz (p,q,r same) */ - PeriphClkInitStruct.PLL2.PLL2M = 15; // M DIV 15 vco 25 / 15 ~ 1.667 Mhz - PeriphClkInitStruct.PLL2.PLL2N = 96; // N MUL 96 - PeriphClkInitStruct.PLL2.PLL2P = 2; // P div 2 - PeriphClkInitStruct.PLL2.PLL2Q = 2; // Q div 2 - PeriphClkInitStruct.PLL2.PLL2R = 2; // R div 2 - // RCC_PLL1VCIRANGE_0 Clock range frequency between 1 and 2 MHz - PeriphClkInitStruct.PLL2.PLL2RGE = RCC_PLL2VCIRANGE_0; - PeriphClkInitStruct.PLL2.PLL2VCOSEL = RCC_PLL2VCOMEDIUM; - PeriphClkInitStruct.PLL2.PLL2FRACN = 0; - PeriphClkInitStruct.PLL3.PLL3M = 15; // M DIV 15 vco 25 / 15 ~ 1.667 Mhz - PeriphClkInitStruct.PLL3.PLL3N = 96; // N MUL 96 - PeriphClkInitStruct.PLL3.PLL3P = 2; // P div 2 - PeriphClkInitStruct.PLL3.PLL3Q = 2; // Q div 2 - PeriphClkInitStruct.PLL3.PLL3R = 2; // R div 2 - // RCC_PLL1VCIRANGE_0 Clock range frequency between 1 and 2 MHz - PeriphClkInitStruct.PLL3.PLL3RGE = RCC_PLL3VCIRANGE_0; - PeriphClkInitStruct.PLL3.PLL3VCOSEL = RCC_PLL3VCOMEDIUM; - PeriphClkInitStruct.PLL3.PLL3FRACN = 0; - // ADC from PLL2 pclk - PeriphClkInitStruct.AdcClockSelection = RCC_ADCCLKSOURCE_PLL2; - // USB from HSI48 - PeriphClkInitStruct.UsbClockSelection = RCC_USBCLKSOURCE_HSI48; - // SDMMC from PLL1 qclk - PeriphClkInitStruct.SdmmcClockSelection = 0; - //PeriphClkInitStruct.SdmmcClockSelection = RCC_SDMMCCLKSOURCE_PLL; - // LPUART from PLL2 qclk - PeriphClkInitStruct.Lpuart1ClockSelection = 0; - //PeriphClkInitStruct.Lpuart1ClockSelection = RCC_LPUART1CLKSOURCE_PLL2; - // USART from PLL2 qclk - PeriphClkInitStruct.Usart16ClockSelection = RCC_USART16CLKSOURCE_PLL2; - // USART from PLL2 qclk - PeriphClkInitStruct.Usart234578ClockSelection = 0; - //PeriphClkInitStruct.Usart234578ClockSelection = RCC_USART234578CLKSOURCE_PLL2; - // I2C123 from PLL3 rclk - PeriphClkInitStruct.I2c123ClockSelection = RCC_I2C123CLKSOURCE_PLL3; - // I2C4 from PLL3 rclk - PeriphClkInitStruct.I2c4ClockSelection = 0; - //PeriphClkInitStruct.I2c4ClockSelection = RCC_I2C4CLKSOURCE_PLL3; - // SPI123 from PLL2 pclk - PeriphClkInitStruct.Spi123ClockSelection = RCC_SPI123CLKSOURCE_PLL2; - // SPI45 from PLL2 qclk - PeriphClkInitStruct.Spi45ClockSelection = 0; - //PeriphClkInitStruct.Spi45ClockSelection = RCC_SPI45CLKSOURCE_PLL2; - // SPI6 from PLL2 qclk - PeriphClkInitStruct.Spi6ClockSelection = 0; - //PeriphClkInitStruct.Spi6ClockSelection = RCC_SPI6CLKSOURCE_PLL2; - - if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK) { - Error_Handler(); - } -} - -#endif /* ARDUINO_GENERIC_* */ diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723VE/variant_MARLIN_STM32H723VE.h b/buildroot/share/PlatformIO/variants/MARLIN_H723VE/variant_MARLIN_STM32H723VE.h deleted file mode 100644 index 8b67905680a9..000000000000 --- a/buildroot/share/PlatformIO/variants/MARLIN_H723VE/variant_MARLIN_STM32H723VE.h +++ /dev/null @@ -1,269 +0,0 @@ -/* - ******************************************************************************* - * Copyright (c) 2020, STMicroelectronics - * All rights reserved. - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ******************************************************************************* - */ -#pragma once - -/*---------------------------------------------------------------------------- - * STM32 pins number - *----------------------------------------------------------------------------*/ -#define PA0 PIN_A0 -#define PA1 PIN_A1 -#define PA2 PIN_A2 -#define PA3 PIN_A3 -#define PA4 PIN_A4 -#define PA5 PIN_A5 -#define PA6 PIN_A6 -#define PA7 PIN_A7 -#define PA8 8 -#define PA9 9 -#define PA10 10 -#define PA11 11 -#define PA12 12 -#define PA13 13 -#define PA14 14 -#define PA15 15 -#define PB0 PIN_A8 -#define PB1 PIN_A9 -#define PB2 18 -#define PB3 19 -#define PB4 20 -#define PB5 21 -#define PB6 22 -#define PB7 23 -#define PB8 24 -#define PB9 25 -#define PB10 26 -#define PB11 27 -#define PB12 28 -#define PB13 29 -#define PB14 30 -#define PB15 31 -#define PC0 PIN_A10 -#define PC1 PIN_A11 -#define PC4 PIN_A12 -#define PC5 PIN_A13 -#define PC6 36 -#define PC7 37 -#define PC8 38 -#define PC9 39 -#define PC10 40 -#define PC11 41 -#define PC12 42 -#define PC13 43 -#define PC14 44 -#define PC15 45 -#define PD0 46 -#define PD1 47 -#define PD2 48 -#define PD3 49 -#define PD4 50 -#define PD5 51 -#define PD6 52 -#define PD7 53 -#define PD8 54 -#define PD9 55 -#define PD10 56 -#define PD11 57 -#define PD12 58 -#define PD13 59 -#define PD14 60 -#define PD15 61 -#define PE0 62 -#define PE1 63 -#define PE2 64 -#define PE3 65 -#define PE4 66 -#define PE5 67 -#define PE6 68 -#define PE7 69 -#define PE8 70 -#define PE9 71 -#define PE10 72 -#define PE11 73 -#define PE12 74 -#define PE13 75 -#define PE14 76 -#define PE15 77 -#define PH0 78 -#define PH1 79 -#define PC2_C PIN_A14 -#define PC3_C PIN_A15 -#define PC2 PC2_C -#define PC3 PC3_C - -// Alternate pins number -#define PA0_ALT1 (PA0 | ALT1) -#define PA1_ALT1 (PA1 | ALT1) -#define PA1_ALT2 (PA1 | ALT2) -#define PA2_ALT1 (PA2 | ALT1) -#define PA2_ALT2 (PA2 | ALT2) -#define PA3_ALT1 (PA3 | ALT1) -#define PA3_ALT2 (PA3 | ALT2) -#define PA4_ALT1 (PA4 | ALT1) -#define PA4_ALT2 (PA4 | ALT2) -#define PA5_ALT1 (PA5 | ALT1) -#define PA6_ALT1 (PA6 | ALT1) -#define PA7_ALT1 (PA7 | ALT1) -#define PA7_ALT2 (PA7 | ALT2) -#define PA7_ALT3 (PA7 | ALT3) -#define PA8_ALT1 (PA8 | ALT1) -#define PA9_ALT1 (PA9 | ALT1) -#define PA10_ALT1 (PA10 | ALT1) -#define PA11_ALT1 (PA11 | ALT1) -#define PA12_ALT1 (PA12 | ALT1) -#define PA15_ALT1 (PA15 | ALT1) -#define PA15_ALT2 (PA15 | ALT2) -#define PB0_ALT1 (PB0 | ALT1) -#define PB0_ALT2 (PB0 | ALT2) -#define PB1_ALT1 (PB1 | ALT1) -#define PB1_ALT2 (PB1 | ALT2) -#define PB3_ALT1 (PB3 | ALT1) -#define PB3_ALT2 (PB3 | ALT2) -#define PB4_ALT1 (PB4 | ALT1) -#define PB4_ALT2 (PB4 | ALT2) -#define PB5_ALT1 (PB5 | ALT1) -#define PB5_ALT2 (PB5 | ALT2) -#define PB6_ALT1 (PB6 | ALT1) -#define PB6_ALT2 (PB6 | ALT2) -#define PB7_ALT1 (PB7 | ALT1) -#define PB8_ALT1 (PB8 | ALT1) -#define PB8_ALT2 (PB8 | ALT2) -#define PB9_ALT1 (PB9 | ALT1) -#define PB9_ALT2 (PB9 | ALT2) -#define PB14_ALT1 (PB14 | ALT1) -#define PB14_ALT2 (PB14 | ALT2) -#define PB15_ALT1 (PB15 | ALT1) -#define PB15_ALT2 (PB15 | ALT2) -#define PC0_ALT1 (PC0 | ALT1) -#define PC0_ALT2 (PC0 | ALT2) -#define PC1_ALT1 (PC1 | ALT1) -#define PC1_ALT2 (PC1 | ALT2) -#define PC4_ALT1 (PC4 | ALT1) -#define PC5_ALT1 (PC5 | ALT1) -#define PC6_ALT1 (PC6 | ALT1) -#define PC6_ALT2 (PC6 | ALT2) -#define PC7_ALT1 (PC7 | ALT1) -#define PC7_ALT2 (PC7 | ALT2) -#define PC8_ALT1 (PC8 | ALT1) -#define PC9_ALT1 (PC9 | ALT1) -#define PC10_ALT1 (PC10 | ALT1) -#define PC11_ALT1 (PC11 | ALT1) - -#define NUM_DIGITAL_PINS 82 -#define NUM_DUALPAD_PINS 2 -#define NUM_ANALOG_INPUTS 16 - -// On-board LED pin number -#ifndef LED_BUILTIN - #define LED_BUILTIN PNUM_NOT_DEFINED -#endif - -// On-board user button -#ifndef USER_BTN - #define USER_BTN PNUM_NOT_DEFINED -#endif - -// SPI definitions -#ifndef PIN_SPI_SS - #define PIN_SPI_SS PA4 -#endif -#ifndef PIN_SPI_SS1 - #define PIN_SPI_SS1 PA15 -#endif -#ifndef PIN_SPI_SS2 - #define PIN_SPI_SS2 PNUM_NOT_DEFINED -#endif -#ifndef PIN_SPI_SS3 - #define PIN_SPI_SS3 PNUM_NOT_DEFINED -#endif -#ifndef PIN_SPI_MOSI - #define PIN_SPI_MOSI PA7 -#endif -#ifndef PIN_SPI_MISO - #define PIN_SPI_MISO PA6 -#endif -#ifndef PIN_SPI_SCK - #define PIN_SPI_SCK PA5 -#endif - -// I2C definitions -#ifndef PIN_WIRE_SDA - #define PIN_WIRE_SDA PB7 -#endif -#ifndef PIN_WIRE_SCL - #define PIN_WIRE_SCL PB6 -#endif - -// Timer Definitions -// Use TIM6/TIM7 when possible as servo and tone don't need GPIO output pin -#ifndef TIMER_TONE - #define TIMER_TONE TIM6 -#endif -#ifndef TIMER_SERVO - #define TIMER_SERVO TIM7 -#endif - -// UART Definitions -#ifndef SERIAL_UART_INSTANCE - #define SERIAL_UART_INSTANCE 4 -#endif - -// Default pin used for generic 'Serial' instance -// Mandatory for Firmata -#ifndef PIN_SERIAL_RX - #define PIN_SERIAL_RX PA1 -#endif -#ifndef PIN_SERIAL_TX - #define PIN_SERIAL_TX PA0 -#endif - -// Extra HAL modules -#if !defined(HAL_DAC_MODULE_DISABLED) - #define HAL_DAC_MODULE_ENABLED -#endif -#if !defined(HAL_ETH_MODULE_DISABLED) - #define HAL_ETH_MODULE_ENABLED -#endif -#if !defined(HAL_OSPI_MODULE_DISABLED) - #define HAL_OSPI_MODULE_ENABLED -#endif -#if !defined(HAL_SD_MODULE_DISABLED) - #define HAL_SD_MODULE_ENABLED -#endif - -/*---------------------------------------------------------------------------- - * Arduino objects - C++ only - *----------------------------------------------------------------------------*/ - -#ifdef __cplusplus - // These serial port names are intended to allow libraries and architecture-neutral - // sketches to automatically default to the correct port name for a particular type - // of use. For example, a GPS module would normally connect to SERIAL_PORT_HARDWARE_OPEN, - // the first hardware serial port whose RX/TX pins are not dedicated to another use. - // - // SERIAL_PORT_MONITOR Port which normally prints to the Arduino Serial Monitor - // - // SERIAL_PORT_USBVIRTUAL Port which is USB virtual serial - // - // SERIAL_PORT_LINUXBRIDGE Port which connects to a Linux system via Bridge library - // - // SERIAL_PORT_HARDWARE Hardware serial port, physical RX & TX pins. - // - // SERIAL_PORT_HARDWARE_OPEN Hardware serial ports which are open for use. Their RX & TX - // pins are NOT connected to anything by default. - #ifndef SERIAL_PORT_MONITOR - #define SERIAL_PORT_MONITOR Serial - #endif - #ifndef SERIAL_PORT_HARDWARE - #define SERIAL_PORT_HARDWARE Serial - #endif -#endif diff --git a/ini/renamed.ini b/ini/renamed.ini index 99fbde95d01a..9d2706e3b358 100644 --- a/ini/renamed.ini +++ b/ini/renamed.ini @@ -72,5 +72,11 @@ extends = renamed [env:BIGTREE_OCTOPUS_V1_F407_USB] ;=> STM32F407ZE_btt_USB extends = renamed -[env:STM32H723Vx_btt] ;=> STM32H723VE_btt or STM32H723VG_btt +[env:STM32H723Vx_btt] ;=> STM32H723VG_btt +extends = renamed + +[env:STM32H723Zx_btt] ;=> STM32H723ZE_btt +extends = renamed + +[env:STM32H743Vx_btt] ;=> STM32H743VI_btt extends = renamed diff --git a/ini/stm32h7.ini b/ini/stm32h7.ini index 5485e57e91d8..73d3b8779b7b 100644 --- a/ini/stm32h7.ini +++ b/ini/stm32h7.ini @@ -13,7 +13,7 @@ # 7 : Cortex M7 core (0:M0, 1-2:M3, 3-4:M4, 7:M7) # 43 : Line/Features # I : 176 pins (T:36, C:48 or 49, M:81, V:100, Z:144, I:176) -# I : 2048KB Flash-memory (C:256KB, D:384KB, E:512KB, G:1024KB) +# I : 2048KB Flash-memory (C:256KB, D:384KB, E:512KB, G:1024KB, I:2048KB) # T : LQFP package # 6 : -40...85°C (7: ...105°C) # @@ -40,13 +40,12 @@ upload_protocol = cmsis-dap debug_tool = cmsis-dap # -# BigTreeTech SKR V3.0 / V3.0 EZ (STM32H743VIT6 ARM Cortex-M7) +# BigTreeTech STM32H743Vx ARM Cortex-M7 Common # -[env:STM32H743Vx_btt] +[STM32H743Vx_btt] extends = stm32_variant platform = ststm32@15.4.1 platform_packages = framework-arduinoststm32@~4.20200.220530 -board = marlin_STM32H743Vx board_build.offset = 0x20000 board_upload.offset_address = 0x08020000 build_flags = ${stm32_variant.build_flags} @@ -60,6 +59,13 @@ build_flags = ${stm32_variant.build_flags} upload_protocol = cmsis-dap debug_tool = cmsis-dap +# +# BigTreeTech SKR V3.0 / V3.0 EZ (STM32H743VIT6 ARM Cortex-M7) +# +[env:STM32H743VI_btt] +extends = STM32H743Vx_btt +board = marlin_STM32H743VI + # # BigTreeTech STM32H723Vx ARM Cortex-M7 Common # @@ -85,13 +91,6 @@ build_flags = ${stm32_variant.build_flags} upload_protocol = cmsis-dap debug_tool = cmsis-dap -# -# BigTreeTech Octopus Max EZ V1.0 (STM32H723VET6 ARM Cortex-M7) -# -[env:STM32H723VE_btt] -extends = STM32H723Vx_btt -board = marlin_STM32H723VE - # # BigTreeTech SKR V3.0 / SKR V3.0 EZ (STM32H723VGT6 ARM Cortex-M7) # @@ -100,13 +99,12 @@ extends = STM32H723Vx_btt board = marlin_STM32H723VG # -# BigTreeTech Octopus Pro V1.0 / Octopus Max EZ V1.0 (STM32H723ZET6 ARM Cortex-M7) +# BigTreeTech STM32H723Zx ARM Cortex-M7 Common # -[env:STM32H723Zx_btt] +[STM32H723Zx_btt] extends = stm32_variant platform = ststm32@15.4.1 platform_packages = framework-arduinoststm32@~4.20200.220530 -board = marlin_STM32H723Zx board_build.offset = 0x20000 board_upload.offset_address = 0x08020000 build_flags = ${stm32_variant.build_flags} @@ -124,3 +122,10 @@ build_flags = ${stm32_variant.build_flags} -UI2C5_BASE upload_protocol = cmsis-dap debug_tool = cmsis-dap + +# +# BigTreeTech Octopus Pro V1.0 / Octopus Max EZ V1.0 (STM32H723ZET6 ARM Cortex-M7) +# +[env:STM32H723ZE_btt] +extends = STM32H723Zx_btt +board = marlin_STM32H723ZE From 9360e13cdd1e21799eb3aedcd23015469da6798d Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 7 Jun 2023 22:37:16 -0500 Subject: [PATCH 271/427] =?UTF-8?q?=F0=9F=9A=B8=20General=20TFT=20cleanup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/tft/ui_1024x600.cpp | 113 ++++++----- Marlin/src/lcd/tft/ui_320x240.cpp | 190 ++++++++++--------- Marlin/src/lcd/tft/ui_480x320.cpp | 107 ++++++----- Marlin/src/lcd/tft/ui_480x320.h | 2 +- Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h | 2 +- 5 files changed, 225 insertions(+), 189 deletions(-) diff --git a/Marlin/src/lcd/tft/ui_1024x600.cpp b/Marlin/src/lcd/tft/ui_1024x600.cpp index e43ccf74500a..8780cd013e03 100644 --- a/Marlin/src/lcd/tft/ui_1024x600.cpp +++ b/Marlin/src/lcd/tft/ui_1024x600.cpp @@ -265,7 +265,7 @@ void MarlinUI::draw_status_screen() { if (TERN0(LCD_SHOW_E_TOTAL, printingIsActive())) { #if ENABLED(LCD_SHOW_E_TOTAL) - tft.add_text(200, 3, COLOR_AXIS_HOMED , "E"); + tft.add_text(200, 3, COLOR_AXIS_HOMED, "E"); const uint8_t escale = e_move_accumulator >= 100000.0f ? 10 : 1; // After 100m switch to cm tft_string.set(ftostr4sign(e_move_accumulator / escale)); tft_string.add(escale == 10 ? 'c' : 'm'); @@ -275,7 +275,7 @@ void MarlinUI::draw_status_screen() { } else { #if HAS_X_AXIS - tft.add_text(200, 3, COLOR_AXIS_HOMED , "X"); + tft.add_text(200, 3, COLOR_AXIS_HOMED, "X"); const bool nhx = axis_should_home(X_AXIS); if (blink && nhx) tft_string.set('?'); @@ -285,7 +285,7 @@ void MarlinUI::draw_status_screen() { #endif #if HAS_Y_AXIS - tft.add_text(500, 3, COLOR_AXIS_HOMED , "Y"); + tft.add_text(500, 3, COLOR_AXIS_HOMED, "Y"); const bool nhy = axis_should_home(Y_AXIS); if (blink && nhy) tft_string.set('?'); @@ -296,7 +296,7 @@ void MarlinUI::draw_status_screen() { } #if HAS_Z_AXIS - tft.add_text(800, 3, COLOR_AXIS_HOMED , "Z"); + tft.add_text(800, 3, COLOR_AXIS_HOMED, "Z"); uint16_t offset = 32; const bool nhz = axis_should_home(Z_AXIS); if (blink && nhz) @@ -323,7 +323,7 @@ void MarlinUI::draw_status_screen() { tft.add_image(0, 0, imgFeedRate, color); tft_string.set(i16tostr3rj(feedrate_percentage)); tft_string.add('%'); - tft.add_text(36, 1, color , tft_string); + tft.add_text(36, 1, color, tft_string); TERN_(TOUCH_SCREEN, touch.add_control(FEEDRATE, 274, y, 128, 32)); // Flow rate @@ -334,7 +334,7 @@ void MarlinUI::draw_status_screen() { tft.add_image(0, 0, imgFlowRate, color); tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); tft_string.add('%'); - tft.add_text(36, 1, color , tft_string); + tft.add_text(36, 1, color, tft_string); TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, 650, y, 128, 32, active_extruder)); #endif @@ -495,7 +495,7 @@ void MenuItem_confirm::draw_select_screen(FSTR_P const yes, FSTR_P const no, con #if ENABLED(TOUCH_SCREEN) touch.clear(); draw_menu_navigation = false; - touch.add_control(RESUME_CONTINUE , 0, 0, TFT_WIDTH, TFT_HEIGHT); + touch.add_control(RESUME_CONTINUE, 0, 0, TFT_WIDTH, TFT_HEIGHT); #endif menu_line(row); @@ -654,8 +654,10 @@ static void drawCurStepValue() { tft_string.set(F("Offset")); tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + 34, tft_string.width(), 34); tft.set_background(COLOR_BACKGROUND); - if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) - tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + #if HAS_BED_PROBE + if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) + tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + #endif } #endif @@ -664,7 +666,7 @@ static void drawCurStepValue() { tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); tft.set_background(COLOR_BACKGROUND); tft_string.set('E'); - tft.add_text(0, 0, E_BTN_COLOR , tft_string); + tft.add_text(0, 0, E_BTN_COLOR, tft_string); tft.add_text(tft_string.width(), 0, E_BTN_COLOR, ui8tostr3rj(motionAxisState.e_selection)); } #endif @@ -717,7 +719,8 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { const float diff = motionAxisState.currentStepSize * direction; - #if HAS_Z_AXIS + #if HAS_BED_PROBE + if (axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { #if ENABLED(BABYSTEP_ZPROBE_OFFSET) const int16_t babystep_increment = direction * BABYSTEP_SIZE_Z; @@ -740,7 +743,7 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { else drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - #elif HAS_BED_PROBE + #else // only change probe.offset.z probe.offset.z += diff; if (direction < 0 && current_position[axis] < Z_PROBE_OFFSET_RANGE_MIN) { @@ -758,7 +761,8 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { #endif return; } - #endif // HAS_Z_AXIS + + #endif // HAS_BED_PROBE if (!ui.manual_move.processing) { // Get motion limit from software endstops, if any @@ -852,8 +856,8 @@ static void disable_steppers() { } static void drawBtn(int x, int y, const char *label, intptr_t data, MarlinImage img, uint16_t bgColor, bool enabled = true) { - uint16_t width = Images[imgBtn52Rounded].width, - height = Images[imgBtn52Rounded].height; + const uint16_t width = Images[imgBtn52Rounded].width, + height = Images[imgBtn52Rounded].height; if (!enabled) bgColor = COLOR_CONTROL_DISABLED; @@ -887,8 +891,9 @@ void MarlinUI::move_axis_screen() { const bool busy = printingIsActive(); // Babysteps during printing? Select babystep for Z probe offset - if (busy && ENABLED(BABYSTEP_ZPROBE_OFFSET)) - motionAxisState.z_selection = Z_SELECTION_Z_PROBE; + #if ENABLED(BABYSTEP_ZPROBE_OFFSET) + if (busy) motionAxisState.z_selection = Z_SELECTION_Z_PROBE; + #endif // ROW 1 -> E- Y- CurY Z+ int x = X_MARGIN, y = Y_MARGIN, spacing = 0; @@ -897,13 +902,16 @@ void MarlinUI::move_axis_screen() { spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; x += BTN_WIDTH + spacing; - drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy); - // Cur Y + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy)); + x += BTN_WIDTH; - motionAxisState.yValuePos.x = x + 2; - motionAxisState.yValuePos.y = y; - drawAxisValue(Y_AXIS); + + // Cur Y + #if HAS_Y_AXIS + motionAxisState.yValuePos.set(x + 2, y); + drawAxisValue(Y_AXIS); + #endif x += spacing; #if HAS_Z_AXIS @@ -915,27 +923,34 @@ void MarlinUI::move_axis_screen() { x = X_MARGIN; spacing = (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; - motionAxisState.eNamePos.x = x; - motionAxisState.eNamePos.y = y; #if HAS_EXTRUDERS + motionAxisState.eNamePos.set(x, y); drawCurESelection(); TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); #endif x += BTN_WIDTH + spacing; - drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy); + + TERN_(HAS_X_AXIS, drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy)); x += BTN_WIDTH + spacing; //imgHome is 64x64 - TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); + + #if ALL(HAS_X_AXIS, TOUCH_SCREEN) + add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy); + #endif x += BTN_WIDTH + spacing; uint16_t xplus_x = x; - drawBtn(x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy); + + TERN_(HAS_X_AXIS, drawBtn(x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy)); x += BTN_WIDTH + spacing; - motionAxisState.zTypePos.x = x; - motionAxisState.zTypePos.y = y; - TERN_(HAS_Z_AXIS, drawCurZSelection()); + + #if HAS_Z_AXIS + motionAxisState.zTypePos.set(x, y); + drawCurZSelection(); + #endif + #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); #endif @@ -945,39 +960,35 @@ void MarlinUI::move_axis_screen() { x = X_MARGIN; spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; - TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy)); - - // Cur E - motionAxisState.eValuePos.x = x; - motionAxisState.eValuePos.y = y + BTN_HEIGHT + 2; - TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); + #if HAS_EXTRUDERS + drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); + motionAxisState.eValuePos.set(x, y + BTN_HEIGHT + 2); + TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); + #endif - // Cur X - motionAxisState.xValuePos.x = BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; //X- pos - motionAxisState.xValuePos.y = y - 10; - drawAxisValue(X_AXIS); + #if HAS_X_AXIS + motionAxisState.xValuePos.set(BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4, y - 10); + drawAxisValue(X_AXIS); + #endif x += BTN_WIDTH + spacing; - drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy); + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); x += BTN_WIDTH + spacing; + #if HAS_Z_AXIS - drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have babystep + motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(Z_AXIS); #endif - // Cur Z - motionAxisState.zValuePos.x = x; - motionAxisState.zValuePos.y = y + BTN_HEIGHT + 2; - TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); - // ROW 4 -> step_size disable steppers back - y = TFT_HEIGHT - Y_MARGIN - 32; // + y = TFT_HEIGHT - Y_MARGIN - 32; x = TFT_WIDTH / 2 - CUR_STEP_VALUE_WIDTH / 2; - motionAxisState.stepValuePos.x = x; - motionAxisState.stepValuePos.y = y; + motionAxisState.stepValuePos.set(x, y); if (!busy) { drawCurStepValue(); - TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); + TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, x, y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); } // aligned with x+ diff --git a/Marlin/src/lcd/tft/ui_320x240.cpp b/Marlin/src/lcd/tft/ui_320x240.cpp index 0d145f10eb9d..772d7d959093 100644 --- a/Marlin/src/lcd/tft/ui_320x240.cpp +++ b/Marlin/src/lcd/tft/ui_320x240.cpp @@ -278,7 +278,7 @@ void MarlinUI::draw_status_screen() { if (TERN0(LCD_SHOW_E_TOTAL, printingIsActive())) { #if ENABLED(LCD_SHOW_E_TOTAL) - tft.add_text( 10, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED , "E"); + tft.add_text( 10, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "E"); const uint8_t escale = e_move_accumulator >= 100000.0f ? 10 : 1; // After 100m switch to cm tft_string.set(ftostr4sign(e_move_accumulator / escale)); tft_string.add(escale == 10 ? 'c' : 'm'); @@ -288,7 +288,7 @@ void MarlinUI::draw_status_screen() { } else { #if HAS_X_AXIS - tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 32, 10), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED , "X"); + tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 32, 10), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "X"); const bool nhx = axis_should_home(X_AXIS); tft_string.set(blink && nhx ? "?" : ftostr4sign(LOGICAL_X_POSITION(current_position.x))); tft.add_text( @@ -302,7 +302,7 @@ void MarlinUI::draw_status_screen() { #endif #if HAS_Y_AXIS - tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 110, 127), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED , "Y"); + tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 110, 127), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "Y"); const bool nhy = axis_should_home(Y_AXIS); tft_string.set(blink && nhy ? "?" : ftostr4sign(LOGICAL_Y_POSITION(current_position.y))); tft.add_text( @@ -317,7 +317,7 @@ void MarlinUI::draw_status_screen() { } #if HAS_Z_AXIS - tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 192, 219), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED , "Z"); + tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 192, 219), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "Z"); const bool nhz = axis_should_home(Z_AXIS); uint16_t offset = 25; if (blink && nhz) @@ -362,7 +362,7 @@ void MarlinUI::draw_status_screen() { tft.add_image(0, 0, imgFeedRate, color); tft_string.set(i16tostr3rj(feedrate_percentage)); tft_string.add('%'); - tft.add_text(32, tft_string.vcenter(30), color , tft_string); + tft.add_text(32, tft_string.vcenter(30), color, tft_string); TERN_(TOUCH_SCREEN, touch.add_control(FEEDRATE, #if ENABLED(TFT_COLOR_UI_PORTRAIT) 30, 172, 80 @@ -387,7 +387,7 @@ void MarlinUI::draw_status_screen() { tft.add_image(0, 0, imgFlowRate, color); tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); tft_string.add('%'); - tft.add_text(32, tft_string.vcenter(30), color , tft_string); + tft.add_text(32, tft_string.vcenter(30), color, tft_string); TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, #if ENABLED(TFT_COLOR_UI_PORTRAIT) 140, 172, 80 @@ -576,7 +576,7 @@ void MenuItem_confirm::draw_select_screen(FSTR_P const yes, FSTR_P const no, con #if ENABLED(TOUCH_SCREEN) touch.clear(); draw_menu_navigation = false; - touch.add_control(RESUME_CONTINUE , 0, 0, TFT_WIDTH, TFT_HEIGHT); + touch.add_control(RESUME_CONTINUE, 0, 0, TFT_WIDTH, TFT_HEIGHT); #endif menu_line(row); @@ -739,8 +739,10 @@ static void drawCurStepValue() { tft_string.set(F("Offset")); tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + 34, tft_string.width(), 20); tft.set_background(COLOR_BACKGROUND); - if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) - tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + #if HAS_BED_PROBE + if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) + tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + #endif } #endif @@ -749,7 +751,7 @@ static void drawCurStepValue() { tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); tft.set_background(COLOR_BACKGROUND); tft_string.set('E'); - tft.add_text(0, 0, E_BTN_COLOR , tft_string); + tft.add_text(0, 0, E_BTN_COLOR, tft_string); tft.add_text(tft_string.width(), 0, E_BTN_COLOR, ui8tostr3rj(motionAxisState.e_selection)); } #endif @@ -809,7 +811,8 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { const float diff = motionAxisState.currentStepSize * direction; - #if HAS_Z_AXIS + #if HAS_BED_PROBE + if (axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { #if ENABLED(BABYSTEP_ZPROBE_OFFSET) const int16_t babystep_increment = direction * BABYSTEP_SIZE_Z; @@ -829,10 +832,10 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { drawMessage(NUL_STR); // clear the error drawAxisValue(axis); } - else { + else drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - #elif HAS_BED_PROBE + + #else // only change probe.offset.z probe.offset.z += diff; if (direction < 0 && current_position[axis] < Z_PROBE_OFFSET_RANGE_MIN) { @@ -843,14 +846,15 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { current_position[axis] = Z_PROBE_OFFSET_RANGE_MAX; drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); } - else { + else drawMessage(NUL_STR); // clear the error - } + drawAxisValue(axis); #endif return; } - #endif // HAS_Z_AXIS + + #endif // HAS_BED_PROBE if (!ui.manual_move.processing) { // Get motion limit from software endstops, if any @@ -945,8 +949,8 @@ static void disable_steppers() { } static void drawBtn(int x, int y, const char *label, intptr_t data, MarlinImage img, uint16_t bgColor, bool enabled = true) { - uint16_t width = Images[imgBtn39Rounded].width; - uint16_t height = Images[imgBtn39Rounded].height; + const uint16_t width = Images[imgBtn39Rounded].width, + height = Images[imgBtn39Rounded].height; if (!enabled) bgColor = COLOR_CONTROL_DISABLED; @@ -979,23 +983,26 @@ void MarlinUI::move_axis_screen() { const bool busy = printingIsActive(); // Babysteps during printing? Select babystep for Z probe offset - if (busy && ENABLED(BABYSTEP_ZPROBE_OFFSET)) - motionAxisState.z_selection = Z_SELECTION_Z_PROBE; + #if ENABLED(BABYSTEP_ZPROBE_OFFSET) + if (busy) motionAxisState.z_selection = Z_SELECTION_Z_PROBE; + #endif #if ENABLED(TFT_COLOR_UI_PORTRAIT) // ROW 1 -> E+ Y+ Z+ int x = X_MARGIN, y = Y_MARGIN, spacing = 0; - drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy); + TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy)); spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; x += BTN_WIDTH + spacing; uint16_t yplus_x = x; - drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy); + + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy)); x += BTN_WIDTH + spacing; uint16_t zplus_x = x; + #if HAS_Z_AXIS drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step #endif @@ -1004,30 +1011,31 @@ void MarlinUI::move_axis_screen() { x = X_MARGIN; y += BTN_HEIGHT + 2; - motionAxisState.eNamePos.x = x; - motionAxisState.eNamePos.y = y; #if HAS_EXTRUDERS + motionAxisState.eNamePos.set(x, y); drawCurESelection(); TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); #endif - motionAxisState.yValuePos.x = yplus_x; - motionAxisState.yValuePos.y = y; - drawAxisValue(Y_AXIS); + #if HAS_Y_AXIS + motionAxisState.yValuePos.set(yplus_x, y); + drawAxisValue(Y_AXIS); + #endif - motionAxisState.zTypePos.x = zplus_x; - motionAxisState.zTypePos.y = y; - TERN_(HAS_Z_AXIS, drawCurZSelection()); + #if HAS_Z_AXIS + motionAxisState.zTypePos.set(zplus_x, y); + drawCurZSelection(); + #endif // ROW 3 -> X- HOME X+ y += (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3 - 2; x = X_MARGIN; - drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy); - - TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); - - drawBtn(zplus_x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy); + #if HAS_X_AXIS + drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy); + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); + drawBtn(zplus_x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy); + #endif #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); @@ -1036,9 +1044,10 @@ void MarlinUI::move_axis_screen() { // ROW 4 -> Cur X y += BTN_HEIGHT + 2; - motionAxisState.xValuePos.x = x; - motionAxisState.xValuePos.y = y; - drawAxisValue(X_AXIS); + #if HAS_X_AXIS + motionAxisState.xValuePos.set(x, y); + drawAxisValue(X_AXIS); + #endif // ROW 5 -> E- CurX Y- Z- y += (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3 - 2; @@ -1046,35 +1055,30 @@ void MarlinUI::move_axis_screen() { #if HAS_EXTRUDERS drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); + motionAxisState.eValuePos.set(x, y + BTN_HEIGHT + 2); + TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); #endif - // Cur E - motionAxisState.eValuePos.x = x; - motionAxisState.eValuePos.y = y + BTN_HEIGHT + 2; - TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); - x += BTN_WIDTH + spacing; - drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy); + + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); x += BTN_WIDTH + spacing; + #if HAS_Z_AXIS drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(Z_AXIS); #endif - // Cur Z - motionAxisState.zValuePos.x = x; - motionAxisState.zValuePos.y = y + BTN_HEIGHT + 2; - TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); - // ROW 6 -> step_size disable steppers back - y = TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT; // + y = TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT; x = zplus_x - CUR_STEP_VALUE_WIDTH - 10; - motionAxisState.stepValuePos.x = X_MARGIN + BTN_WIDTH - CUR_STEP_VALUE_WIDTH; - motionAxisState.stepValuePos.y = TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT; + motionAxisState.stepValuePos.set(X_MARGIN + BTN_WIDTH - CUR_STEP_VALUE_WIDTH, y); if (!busy) { - drawCurStepValue(); - TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); + drawCurStepValue(); + TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); } // aligned with x+ @@ -1090,15 +1094,18 @@ void MarlinUI::move_axis_screen() { spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; x += BTN_WIDTH + spacing; uint16_t yplus_x = x; - drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy); - // Cur Y + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy)); + x += BTN_WIDTH; - motionAxisState.yValuePos.x = x + 2; - motionAxisState.yValuePos.y = y; - drawAxisValue(Y_AXIS); + + #if HAS_Y_AXIS + motionAxisState.yValuePos.set(x + 2, y); + drawAxisValue(Y_AXIS); + #endif x += spacing; + #if HAS_Z_AXIS drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step #endif @@ -1108,27 +1115,34 @@ void MarlinUI::move_axis_screen() { x = X_MARGIN; spacing = (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; - motionAxisState.eNamePos.x = x; - motionAxisState.eNamePos.y = y; #if HAS_EXTRUDERS + motionAxisState.eNamePos.set(x, y); drawCurESelection(); TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); #endif x += BTN_WIDTH + spacing; - drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy); + + TERN_(HAS_X_AXIS, drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy)); x += BTN_WIDTH + spacing; //imgHome is 64x64 - TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); + + #if ALL(HAS_X_AXIS, TOUCH_SCREEN) + add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy); + #endif x += BTN_WIDTH + spacing; uint16_t xplus_x = x; - drawBtn(x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy); + + TERN_(HAS_X_AXIS, drawBtn(x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy)); x += BTN_WIDTH + spacing; - motionAxisState.zTypePos.x = x; - motionAxisState.zTypePos.y = y; - TERN_(HAS_Z_AXIS, drawCurZSelection()); + + #if HAS_Z_AXIS + motionAxisState.zTypePos.set(x, y); + drawCurZSelection(); + #endif + #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); #endif @@ -1138,39 +1152,39 @@ void MarlinUI::move_axis_screen() { x = X_MARGIN; spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; - TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy)); - - // Cur E - motionAxisState.eValuePos.x = x; - motionAxisState.eValuePos.y = y + BTN_HEIGHT + 2; - TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); + #if HAS_EXTRUDERS + drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); + motionAxisState.eValuePos.set(x, y + BTN_HEIGHT + 2); + TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); + #endif - // Cur X - motionAxisState.xValuePos.x = BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; //X- pos - motionAxisState.xValuePos.y = y - 10; - drawAxisValue(X_AXIS); + #if HAS_X_AXIS + motionAxisState.xValuePos.set(BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4, y - 10); + drawAxisValue(X_AXIS); + #endif x += BTN_WIDTH + spacing; - drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy); + + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); x += BTN_WIDTH + spacing; + #if HAS_Z_AXIS drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step #endif - // Cur Z - motionAxisState.zValuePos.x = x; - motionAxisState.zValuePos.y = y + BTN_HEIGHT + 2; - TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); + #if HAS_Z_AXIS + motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(Z_AXIS); + #endif // ROW 4 -> step_size disable steppers back - y = TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT; // + y = TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT; x = xplus_x - CUR_STEP_VALUE_WIDTH - 10; - motionAxisState.stepValuePos.x = yplus_x + BTN_WIDTH - CUR_STEP_VALUE_WIDTH; - motionAxisState.stepValuePos.y = TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT; + motionAxisState.stepValuePos.set(yplus_x + BTN_WIDTH - CUR_STEP_VALUE_WIDTH, y); if (!busy) { - drawCurStepValue(); - TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); + drawCurStepValue(); + TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); } // aligned with x+ diff --git a/Marlin/src/lcd/tft/ui_480x320.cpp b/Marlin/src/lcd/tft/ui_480x320.cpp index 2a6f50c93bc9..38a706ea1b15 100644 --- a/Marlin/src/lcd/tft/ui_480x320.cpp +++ b/Marlin/src/lcd/tft/ui_480x320.cpp @@ -195,7 +195,7 @@ void draw_heater_status(uint16_t x, uint16_t y, const int8_t Heater) { tft_string.set(i16tostr3rj(targetTemperature)); tft_string.add(LCD_STR_DEGREE); tft_string.trim(); - tft.add_text(tft_string.center(80) + 2, 6 + tft_string.vcenter(FONT_LINE_HEIGHT) , Color, tft_string); + tft.add_text(tft_string.center(80) + 2, 6 + tft_string.vcenter(FONT_LINE_HEIGHT), Color, tft_string); } } @@ -265,7 +265,7 @@ void MarlinUI::draw_status_screen() { if (TERN0(LCD_SHOW_E_TOTAL, printingIsActive())) { #if ENABLED(LCD_SHOW_E_TOTAL) - tft.add_text( 16, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED , "E"); + tft.add_text( 16, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "E"); const uint8_t escale = e_move_accumulator >= 100000.0f ? 10 : 1; // After 100m switch to cm tft_string.set(ftostr4sign(e_move_accumulator / escale)); tft_string.add(escale == 10 ? 'c' : 'm'); @@ -322,7 +322,7 @@ void MarlinUI::draw_status_screen() { tft.canvas(x, y, component_width, 32); tft.set_background(COLOR_BACKGROUND); tft.add_image(0, 0, imgFeedRate, color); - tft.add_text(36, tft_string.vcenter(30), color , tft_string); + tft.add_text(36, tft_string.vcenter(30), color, tft_string); TERN_(TOUCH_SCREEN, touch.add_control(FEEDRATE, x, y, component_width, 32)); #if HAS_EXTRUDERS @@ -337,7 +337,7 @@ void MarlinUI::draw_status_screen() { tft.canvas(x, y, component_width, 32); tft.set_background(COLOR_BACKGROUND); tft.add_image(0, 0, imgFlowRate, color); - tft.add_text(36, tft_string.vcenter(30), color , tft_string); + tft.add_text(36, tft_string.vcenter(30), color, tft_string); TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, x, y, component_width, 32, active_extruder)); #endif @@ -495,7 +495,7 @@ void MenuItem_confirm::draw_select_screen(FSTR_P const yes, FSTR_P const no, con #if ENABLED(TOUCH_SCREEN) touch.clear(); draw_menu_navigation = false; - touch.add_control(RESUME_CONTINUE , 0, 0, TFT_WIDTH, TFT_HEIGHT); + touch.add_control(RESUME_CONTINUE, 0, 0, TFT_WIDTH, TFT_HEIGHT); #endif menu_line(row); @@ -651,12 +651,16 @@ static void drawCurStepValue() { tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), 34); tft.set_background(COLOR_BACKGROUND); tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + tft.queue.sync(); + tft_string.set(F("Offset")); tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + Y_OFFSET, tft_string.width(), Y_OFFSET TERN_(HAS_UI_480x272, - 10)); tft.set_background(COLOR_BACKGROUND); - if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) - tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + #if HAS_BED_PROBE + if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) + tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + #endif } #endif @@ -718,7 +722,8 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { const float diff = motionAxisState.currentStepSize * direction; - #if HAS_Z_AXIS + #if HAS_BED_PROBE + if (axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { #if ENABLED(BABYSTEP_ZPROBE_OFFSET) const int16_t babystep_increment = direction * BABYSTEP_SIZE_Z; @@ -738,10 +743,10 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { drawMessage(NUL_STR); // clear the error drawAxisValue(axis); } - else { + else drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - #elif HAS_BED_PROBE + + #else // only change probe.offset.z probe.offset.z += diff; if (direction < 0 && current_position[axis] < Z_PROBE_OFFSET_RANGE_MIN) { @@ -752,14 +757,15 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { current_position[axis] = Z_PROBE_OFFSET_RANGE_MAX; drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); } - else { + else drawMessage(NUL_STR); // clear the error - } + drawAxisValue(axis); #endif return; } - #endif // HAS_Z_AXIS + + #endif // HAS_BED_PROBE if (!ui.manual_move.processing) { // Get motion limit from software endstops, if any @@ -853,8 +859,8 @@ static void disable_steppers() { } static void drawBtn(int x, int y, const char *label, intptr_t data, MarlinImage img, uint16_t bgColor, bool enabled = true) { - uint16_t width = Images[imgBtn52Rounded].width, - height = Images[imgBtn52Rounded].height; + const uint16_t width = Images[imgBtn52Rounded].width, + height = Images[imgBtn52Rounded].height; if (!enabled) bgColor = COLOR_CONTROL_DISABLED; @@ -888,9 +894,9 @@ void MarlinUI::move_axis_screen() { const bool busy = printingIsActive(); // Babysteps during printing? Select babystep for Z probe offset - if (busy && ENABLED(BABYSTEP_ZPROBE_OFFSET)) - - TERN_(HAS_Z_AXIS, motionAxisState.z_selection = Z_SELECTION_Z_PROBE); + #if ENABLED(BABYSTEP_ZPROBE_OFFSET) + if (busy) motionAxisState.z_selection = Z_SELECTION_Z_PROBE; + #endif // ROW 1 -> E+ Y+ CurY Z+ int x = X_MARGIN, y = Y_MARGIN, spacing = 0; @@ -902,11 +908,11 @@ void MarlinUI::move_axis_screen() { TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy)); - // Cur Y x += BTN_WIDTH; + + // Cur Y #if HAS_Y_AXIS - motionAxisState.yValuePos.x = x + 2; - motionAxisState.yValuePos.y = y; + motionAxisState.yValuePos.set(x + 2, y); drawAxisValue(Y_AXIS); #endif @@ -920,29 +926,35 @@ void MarlinUI::move_axis_screen() { x = X_MARGIN; spacing = (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; - motionAxisState.eNamePos.x = x; - motionAxisState.eNamePos.y = y; #if HAS_EXTRUDERS + motionAxisState.eNamePos.set(x, y); drawCurESelection(); TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); #endif x += BTN_WIDTH + spacing; - drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy); + + TERN_(HAS_X_AXIS, drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy)); x += BTN_WIDTH + spacing; //imgHome is 64x64 - TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); + + #if ALL(HAS_X_AXIS, TOUCH_SCREEN) + add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy); + #endif x += BTN_WIDTH + spacing; uint16_t xplus_x = x; - drawBtn(x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy); + + TERN_(HAS_X_AXIS, drawBtn(x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy)); x += BTN_WIDTH + spacing; - motionAxisState.zTypePos.x = x; - motionAxisState.zTypePos.y = y; - TERN_(HAS_Z_AXIS, drawCurZSelection()); - #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) - if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, Y_OFFSET * 2, (intptr_t)z_select); + + #if HAS_Z_AXIS + motionAxisState.zTypePos.set(x, y); + drawCurZSelection(); + #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) + if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, Y_OFFSET * 2, (intptr_t)z_select); + #endif #endif // ROW 3 -> E- CurX Y- Z- @@ -950,20 +962,19 @@ void MarlinUI::move_axis_screen() { x = X_MARGIN; spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; - TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy)); - - // Cur E - motionAxisState.eValuePos.x = x; - motionAxisState.eValuePos.y = y + BTN_HEIGHT + 2; - TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); + #if HAS_EXTRUDERS + drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); + motionAxisState.eValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(E_AXIS); + #endif - // Cur X - motionAxisState.xValuePos.x = BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; //X- pos - motionAxisState.xValuePos.y = y - 10; - TERN_(HAS_X_AXIS, drawAxisValue(X_AXIS)); + #if HAS_X_AXIS + motionAxisState.xValuePos.set(BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4, y - 10); + TERN_(HAS_X_AXIS, drawAxisValue(X_AXIS)); + #endif x += BTN_WIDTH + spacing; - drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy); + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); x += BTN_WIDTH + spacing; #if HAS_Z_AXIS @@ -971,15 +982,15 @@ void MarlinUI::move_axis_screen() { #endif // Cur Z - motionAxisState.zValuePos.x = x; - motionAxisState.zValuePos.y = y + BTN_HEIGHT + 2; - TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); + #if HAS_Z_AXIS + motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(Z_AXIS); + #endif // ROW 4 -> step_size disable steppers back y = TFT_HEIGHT - Y_MARGIN - TERN(HAS_UI_480x272, BTN_WIDTH / 2, 32); x = TFT_WIDTH / 2 - CUR_STEP_VALUE_WIDTH / 2; - motionAxisState.stepValuePos.x = x; - motionAxisState.stepValuePos.y = y; + motionAxisState.stepValuePos.set(x, y); if (!busy) { drawCurStepValue(); TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); diff --git a/Marlin/src/lcd/tft/ui_480x320.h b/Marlin/src/lcd/tft/ui_480x320.h index 00341650c123..785f4c3cbfe8 100644 --- a/Marlin/src/lcd/tft/ui_480x320.h +++ b/Marlin/src/lcd/tft/ui_480x320.h @@ -103,7 +103,7 @@ * - Rows count: 6 * - Margins count: 7 */ -#ifdef TFT_COLOR_UI_PORTRAIT +#if ENABLED(TFT_COLOR_UI_PORTRAIT) #if ENABLED(TOUCH_SCREEN) #define STATUS_TOTAL_ROWS_HEIGHT (2 * FONT_LINE_HEIGHT + 120 + 32 + 64 + 29 + 7) #define STATUS_MARGINS_REGIONS 8 diff --git a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h index a0c2ed1dc827..d1b64dd805fd 100644 --- a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h +++ b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h @@ -307,7 +307,7 @@ #define TFT_CS_PIN FSMC_CS_PIN #define TFT_RS_PIN FSMC_RS_PIN - #ifdef TFT_CLASSIC_UI + #if ENABLED(TFT_CLASSIC_UI) #define TFT_MARLINBG_COLOR 0x3186 // Grey #define TFT_MARLINUI_COLOR 0xC7B6 // Green #define TFT_BTARROWS_COLOR 0xDEE6 // Yellow From 683916e17a6fe35c9726ad7e57e73c519fc96222 Mon Sep 17 00:00:00 2001 From: Dmitry Plastinin Date: Thu, 8 Jun 2023 07:14:34 +0300 Subject: [PATCH 272/427] =?UTF-8?q?=F0=9F=9A=B8=20Portrait=20TS35=20move?= =?UTF-8?q?=20axis=20screen=20(#25945)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/tft/ui_480x320.cpp | 291 +++++++++++++++++++++--------- Marlin/src/lcd/tft/ui_480x320.h | 4 + 2 files changed, 213 insertions(+), 82 deletions(-) diff --git a/Marlin/src/lcd/tft/ui_480x320.cpp b/Marlin/src/lcd/tft/ui_480x320.cpp index 38a706ea1b15..edf75dabbd6f 100644 --- a/Marlin/src/lcd/tft/ui_480x320.cpp +++ b/Marlin/src/lcd/tft/ui_480x320.cpp @@ -639,16 +639,17 @@ static void quick_feedback() { #define CUR_STEP_VALUE_WIDTH 104 static void drawCurStepValue() { tft_string.set(ftostr52sp(motionAxisState.currentStepSize)); + tft_string.trim(); tft_string.add(F("mm")); tft.canvas(motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT); tft.set_background(COLOR_BACKGROUND); - tft.add_text(tft_string.center(CUR_STEP_VALUE_WIDTH), 0, COLOR_AXIS_HOMED, tft_string); + tft.add_text(0, 0, COLOR_AXIS_HOMED, tft_string); } #if HAS_Z_AXIS static void drawCurZSelection() { tft_string.set('Z'); - tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), 34); + tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), FONT_LINE_HEIGHT); tft.set_background(COLOR_BACKGROUND); tft.add_text(0, 0, Z_BTN_COLOR, tft_string); @@ -669,13 +670,17 @@ static void drawCurStepValue() { tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); tft.set_background(COLOR_BACKGROUND); tft_string.set('E'); - tft.add_text(0, 0, E_BTN_COLOR , tft_string); - tft.add_text(tft_string.width(), 0, E_BTN_COLOR, ui8tostr3rj(motionAxisState.e_selection)); + tft_string.add(utostr3(motionAxisState.e_selection)); + tft.add_text(tft_string.center(BTN_WIDTH), 0, E_BTN_COLOR, tft_string); } #endif static void drawMessage(PGM_P const msg) { - tft.canvas(X_MARGIN, TFT_HEIGHT - Y_MARGIN - Y_OFFSET, TFT_HEIGHT / 2, Y_OFFSET); + #if ENABLED(TFT_COLOR_UI_PORTRAIT) + tft.canvas(X_MARGIN, TFT_HEIGHT - 2 * MOVE_AXIS_MARGIN_SIZE - BTN_HEIGHT - FONT_LINE_HEIGHT, TFT_WIDTH - X_MARGIN * 2, FONT_LINE_HEIGHT); + #else + tft.canvas(X_MARGIN, TFT_HEIGHT - Y_MARGIN - Y_OFFSET, TFT_HEIGHT / 2, Y_OFFSET); + #endif tft.set_background(COLOR_BACKGROUND); tft.add_text(0, 0, COLOR_YELLOW, msg); } @@ -707,7 +712,8 @@ static void drawAxisValue(const AxisEnum axis) { tft.canvas(pos.x, pos.y, BTN_WIDTH + X_MARGIN, BTN_HEIGHT TERN_(HAS_UI_480x272, / 2)); tft.set_background(COLOR_BACKGROUND); tft_string.set(ftostr52sp(value)); - tft.add_text(0, 0, color, tft_string); + tft_string.trim(); + tft.add_text(tft_string.center(BTN_WIDTH + X_MARGIN), 0, color, tft_string); } static void moveAxis(const AxisEnum axis, const int8_t direction) { @@ -898,108 +904,229 @@ void MarlinUI::move_axis_screen() { if (busy) motionAxisState.z_selection = Z_SELECTION_Z_PROBE; #endif - // ROW 1 -> E+ Y+ CurY Z+ - int x = X_MARGIN, y = Y_MARGIN, spacing = 0; + #if ENABLED(TFT_COLOR_UI_PORTRAIT) - TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy)); + int y = MOVE_AXIS_MARGIN_SIZE; - spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; - x += BTN_WIDTH + spacing; + /************************************************************************** + * 1st: | Button "E+" | Button "Y+" | Button "Z+" | + *************************************************************************/ - TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy)); + TERN_(HAS_EXTRUDERS, drawBtn(TFT_WIDTH / 6 - BTN_WIDTH / 2, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy)); + TERN_(HAS_Y_AXIS, drawBtn(TFT_WIDTH / 2 - BTN_WIDTH / 2, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy)); + TERN_(HAS_Z_AXIS, drawBtn(TFT_WIDTH * 5 / 6 - BTN_WIDTH / 2, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET))); - x += BTN_WIDTH; + y += BTN_HEIGHT + 4; - // Cur Y - #if HAS_Y_AXIS - motionAxisState.yValuePos.set(x + 2, y); - drawAxisValue(Y_AXIS); - #endif + /************************************************************************** + * 2nd: | Label "Ex" (E0, E1, etc.) | Y value | Label "Z" | + *************************************************************************/ - x += spacing; - #if HAS_Z_AXIS - drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step - #endif + // Label "Ex" (E0, E1, etc.) + #if HAS_EXTRUDERS + motionAxisState.eNamePos.set(TFT_WIDTH / 6 - BTN_WIDTH / 2, y); + drawCurESelection(); + #if ENABLED(TOUCH_SCREEN) + if (!busy) touch.add_control(BUTTON, motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select); + #endif + #endif - // ROW 2 -> "Ex" X- HOME X+ "Z" - y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; - x = X_MARGIN; - spacing = (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; + // Y value + #if HAS_Y_AXIS + motionAxisState.yValuePos.set(TFT_WIDTH / 2 - (BTN_WIDTH + X_MARGIN) / 2, y); + drawAxisValue(Y_AXIS); + #endif - #if HAS_EXTRUDERS - motionAxisState.eNamePos.set(x, y); - drawCurESelection(); - TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); - #endif + // Label "Z" + #ifdef HAS_Z_AXIS + motionAxisState.zTypePos.set(TFT_WIDTH * 5 / 6 - BTN_WIDTH / 2, y); + drawCurZSelection(); + #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) + if (!busy) touch.add_control(BUTTON, motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, BTN_WIDTH, FONT_LINE_HEIGHT * 2, (intptr_t)z_select); + #endif + #endif - x += BTN_WIDTH + spacing; + y += BTN_HEIGHT + MOVE_AXIS_MARGIN_SIZE; - TERN_(HAS_X_AXIS, drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy)); + /************************************************************************** + * 3rd: | Button "X-" | Button "Homing" | Button "X+" | + *************************************************************************/ - x += BTN_WIDTH + spacing; //imgHome is 64x64 + #if HAS_X_AXIS + drawBtn(TFT_WIDTH / 6 - BTN_WIDTH / 2, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy); + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); + drawBtn(TFT_WIDTH * 5 / 6 - BTN_WIDTH / 2, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy); + #endif - #if ALL(HAS_X_AXIS, TOUCH_SCREEN) - add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy); - #endif + y += BTN_HEIGHT + 4; - x += BTN_WIDTH + spacing; - uint16_t xplus_x = x; + /************************************************************************** + * 4th: | X value | + *************************************************************************/ - TERN_(HAS_X_AXIS, drawBtn(x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy)); + #ifdef HAS_X_AXIS + motionAxisState.xValuePos.set(TFT_WIDTH / 6 - (BTN_WIDTH + X_MARGIN) / 2, y); + drawAxisValue(X_AXIS); + #endif - x += BTN_WIDTH + spacing; + y += BTN_HEIGHT + MOVE_AXIS_MARGIN_SIZE; - #if HAS_Z_AXIS - motionAxisState.zTypePos.set(x, y); - drawCurZSelection(); - #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) - if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, Y_OFFSET * 2, (intptr_t)z_select); + /************************************************************************** + * 5th: | Button "E-" | Button "Y-" | Button "Z-" + *************************************************************************/ + + TERN_(HAS_EXTRUDERS, drawBtn(TFT_WIDTH / 6 - BTN_WIDTH / 2, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy)); + TERN_(HAS_Y_AXIS, drawBtn(TFT_WIDTH / 2 - BTN_WIDTH / 2, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); + TERN_(HAS_Z_AXIS, drawBtn(TFT_WIDTH * 5 / 6 - BTN_WIDTH / 2, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET))); + + y += BTN_HEIGHT + 4; + + /************************************************************************** + * 6th: | Current Ex value | Z value | + *************************************************************************/ + + // Current Ex value + #ifdef HAS_EXTRUDERS + motionAxisState.eValuePos.set(TFT_WIDTH / 6 - (BTN_WIDTH + X_MARGIN) / 2, y); + drawAxisValue(E_AXIS); #endif - #endif - // ROW 3 -> E- CurX Y- Z- - y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; - x = X_MARGIN; - spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; + #ifdef HAS_Z_AXIS + motionAxisState.zValuePos.set(TFT_WIDTH * 5 / 6 - (BTN_WIDTH + X_MARGIN) / 2, y); + drawAxisValue(Z_AXIS); + #endif - #if HAS_EXTRUDERS - drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); - motionAxisState.eValuePos.set(x, y + BTN_HEIGHT + 2); - drawAxisValue(E_AXIS); - #endif + y += BTN_HEIGHT + MOVE_AXIS_MARGIN_SIZE; - #if HAS_X_AXIS - motionAxisState.xValuePos.set(BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4, y - 10); - TERN_(HAS_X_AXIS, drawAxisValue(X_AXIS)); - #endif + /************************************************************************** + * 7th: | Message - drawMessage(...) function | + *************************************************************************/ - x += BTN_WIDTH + spacing; - TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); + y += FONT_LINE_HEIGHT + MOVE_AXIS_MARGIN_SIZE; - x += BTN_WIDTH + spacing; - #if HAS_Z_AXIS - drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step - #endif + /************************************************************************** + * 8th: | Step size | Button "Disable steppers" | Button "Back" | + *************************************************************************/ - // Cur Z - #if HAS_Z_AXIS - motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); - drawAxisValue(Z_AXIS); - #endif + // Step size + motionAxisState.stepValuePos.set(X_MARGIN, y + 12); + if (!busy) { + drawCurStepValue(); + TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y + 12, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); + } - // ROW 4 -> step_size disable steppers back - y = TFT_HEIGHT - Y_MARGIN - TERN(HAS_UI_480x272, BTN_WIDTH / 2, 32); - x = TFT_WIDTH / 2 - CUR_STEP_VALUE_WIDTH / 2; - motionAxisState.stepValuePos.set(x, y); - if (!busy) { - drawCurStepValue(); - TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); - } + // Button "Disable steppers" + drawBtn(TFT_WIDTH / 2, y, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); + + // Button "Back" + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH * 5 / 6 - Images[imgBack].width / 2, y + 12, BACK, imgBack)); + + #else // !TFT_COLOR_UI_PORTRAIT + + // ROW 1 -> E- Y- CurY Z+ + int x = X_MARGIN, y = Y_MARGIN, spacing = 0; + + TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy)); + + spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; + x += BTN_WIDTH + spacing; + + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy)); + + x += BTN_WIDTH; + + // Cur Y + #if HAS_Y_AXIS + motionAxisState.yValuePos.set(x + 2, y); + drawAxisValue(Y_AXIS); + #endif + + x += spacing; + #if HAS_Z_AXIS + drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #endif + + // ROW 2 -> "Ex" X- HOME X+ "Z" + y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; + x = X_MARGIN; + spacing = (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; + + #if HAS_EXTRUDERS + motionAxisState.eNamePos.set(x, y); + drawCurESelection(); + TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); + #endif + + x += BTN_WIDTH + spacing; + + TERN_(HAS_X_AXIS, drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy)); + + x += BTN_WIDTH + spacing; //imgHome is 64x64 + + #if ALL(HAS_X_AXIS, TOUCH_SCREEN) + add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy); + #endif + + x += BTN_WIDTH + spacing; + uint16_t xplus_x = x; + + TERN_(HAS_X_AXIS, drawBtn(x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy)); + + x += BTN_WIDTH + spacing; + + #if HAS_Z_AXIS + motionAxisState.zTypePos.set(x, y); + drawCurZSelection(); + #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) + if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, Y_OFFSET * 2, (intptr_t)z_select); + #endif + #endif + + // ROW 3 -> E- CurX Y- Z- + y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; + x = X_MARGIN; + spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; + + #if HAS_EXTRUDERS + drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); + motionAxisState.eValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(E_AXIS); + #endif + + #if HAS_X_AXIS + motionAxisState.xValuePos.set(BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4, y - 10); + TERN_(HAS_X_AXIS, drawAxisValue(X_AXIS)); + #endif + + x += BTN_WIDTH + spacing; + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); + + x += BTN_WIDTH + spacing; + #if HAS_Z_AXIS + drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + #endif + + // Cur Z + #if HAS_Z_AXIS + motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(Z_AXIS); + #endif + + // ROW 4 -> step_size disable steppers back + y = TFT_HEIGHT - Y_MARGIN - TERN(HAS_UI_480x272, BTN_WIDTH / 2, 32); + x = TFT_WIDTH / 2 - CUR_STEP_VALUE_WIDTH / 2; + motionAxisState.stepValuePos.set(x, y); + if (!busy) { + drawCurStepValue(); + TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); + } + + // aligned with x+ + drawBtn(xplus_x, TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); - // aligned with x+ - drawBtn(xplus_x, TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); - TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); + #endif // !TFT_COLOR_UI_PORTRAIT } #endif // HAS_UI_480x320 || HAS_UI_480x272 diff --git a/Marlin/src/lcd/tft/ui_480x320.h b/Marlin/src/lcd/tft/ui_480x320.h index 785f4c3cbfe8..d3036d098106 100644 --- a/Marlin/src/lcd/tft/ui_480x320.h +++ b/Marlin/src/lcd/tft/ui_480x320.h @@ -107,6 +107,10 @@ #if ENABLED(TOUCH_SCREEN) #define STATUS_TOTAL_ROWS_HEIGHT (2 * FONT_LINE_HEIGHT + 120 + 32 + 64 + 29 + 7) #define STATUS_MARGINS_REGIONS 8 + + #define MOVE_AXIS_TOTAL_ROWS_HEIGHT (7 * BTN_HEIGHT + FONT_LINE_HEIGHT + 12) + #define MOVE_AXIS_MARGIN_REGIONS 6 + #define MOVE_AXIS_MARGIN_SIZE ((TFT_HEIGHT - MOVE_AXIS_TOTAL_ROWS_HEIGHT) / MOVE_AXIS_MARGIN_REGIONS) #else #define STATUS_TOTAL_ROWS_HEIGHT (2 * FONT_LINE_HEIGHT + 120 + 32 + 29 + 7) #define STATUS_MARGINS_REGIONS 7 From bbbd6045cb6e76cca44c973e1922ce5220ab29c4 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 8 Jun 2023 19:18:59 -0500 Subject: [PATCH 273/427] =?UTF-8?q?=F0=9F=94=A8=20Update=20STM32Hxx=20boar?= =?UTF-8?q?ds/variants?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25934 --- buildroot/share/PlatformIO/boards/marlin_STM32H723ZE.json | 2 +- buildroot/share/PlatformIO/boards/marlin_STM32H743VI.json | 2 +- .../variants/{MARLIN_H723Zx => MARLIN_H723ZE}/PeripheralPins.c | 0 .../variants/{MARLIN_H723Zx => MARLIN_H723ZE}/PinNamesVar.h | 0 .../variants/{MARLIN_H723Zx => MARLIN_H723ZE}/ldscript.ld | 0 .../variant_MARLIN_STM32H723ZE.cpp} | 0 .../variant_MARLIN_STM32H723ZE.h} | 0 .../variants/{MARLIN_H743Vx => MARLIN_H743VI}/PeripheralPins.c | 0 .../variants/{MARLIN_H743Vx => MARLIN_H743VI}/PinNamesVar.h | 0 .../variants/{MARLIN_H743Vx => MARLIN_H743VI}/ldscript.ld | 0 .../variant_MARLIN_STM32H743VI.cpp} | 0 .../variant_MARLIN_STM32H743VI.h} | 0 12 files changed, 2 insertions(+), 2 deletions(-) rename buildroot/share/PlatformIO/variants/{MARLIN_H723Zx => MARLIN_H723ZE}/PeripheralPins.c (100%) rename buildroot/share/PlatformIO/variants/{MARLIN_H723Zx => MARLIN_H723ZE}/PinNamesVar.h (100%) rename buildroot/share/PlatformIO/variants/{MARLIN_H723Zx => MARLIN_H723ZE}/ldscript.ld (100%) rename buildroot/share/PlatformIO/variants/{MARLIN_H723Zx/variant_MARLIN_STM32H723ZX.cpp => MARLIN_H723ZE/variant_MARLIN_STM32H723ZE.cpp} (100%) rename buildroot/share/PlatformIO/variants/{MARLIN_H723Zx/variant_MARLIN_STM32H723ZX.h => MARLIN_H723ZE/variant_MARLIN_STM32H723ZE.h} (100%) rename buildroot/share/PlatformIO/variants/{MARLIN_H743Vx => MARLIN_H743VI}/PeripheralPins.c (100%) rename buildroot/share/PlatformIO/variants/{MARLIN_H743Vx => MARLIN_H743VI}/PinNamesVar.h (100%) rename buildroot/share/PlatformIO/variants/{MARLIN_H743Vx => MARLIN_H743VI}/ldscript.ld (100%) rename buildroot/share/PlatformIO/variants/{MARLIN_H743Vx/variant_MARLIN_STM32H743VX.cpp => MARLIN_H743VI/variant_MARLIN_STM32H743VI.cpp} (100%) rename buildroot/share/PlatformIO/variants/{MARLIN_H743Vx/variant_MARLIN_STM32H743VX.h => MARLIN_H743VI/variant_MARLIN_STM32H743VI.h} (100%) diff --git a/buildroot/share/PlatformIO/boards/marlin_STM32H723ZE.json b/buildroot/share/PlatformIO/boards/marlin_STM32H723ZE.json index 8525793c4e01..f4bb75b5dae9 100644 --- a/buildroot/share/PlatformIO/boards/marlin_STM32H723ZE.json +++ b/buildroot/share/PlatformIO/boards/marlin_STM32H723ZE.json @@ -6,7 +6,7 @@ "f_cpu": "550000000L", "mcu": "stm32h723zet6", "product_line": "STM32H723xx", - "variant": "MARLIN_H723Zx" + "variant": "MARLIN_H723ZE" }, "connectivity": [ "can", diff --git a/buildroot/share/PlatformIO/boards/marlin_STM32H743VI.json b/buildroot/share/PlatformIO/boards/marlin_STM32H743VI.json index 4ec34e5b3502..56e853cad43e 100644 --- a/buildroot/share/PlatformIO/boards/marlin_STM32H743VI.json +++ b/buildroot/share/PlatformIO/boards/marlin_STM32H743VI.json @@ -6,7 +6,7 @@ "f_cpu": "480000000L", "mcu": "stm32h743vit6", "product_line": "STM32H743xx", - "variant": "MARLIN_H743Vx" + "variant": "MARLIN_H743VI" }, "connectivity": [ "can", diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723Zx/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/PeripheralPins.c similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H723Zx/PeripheralPins.c rename to buildroot/share/PlatformIO/variants/MARLIN_H723ZE/PeripheralPins.c diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723Zx/PinNamesVar.h b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/PinNamesVar.h similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H723Zx/PinNamesVar.h rename to buildroot/share/PlatformIO/variants/MARLIN_H723ZE/PinNamesVar.h diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723Zx/ldscript.ld b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/ldscript.ld similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H723Zx/ldscript.ld rename to buildroot/share/PlatformIO/variants/MARLIN_H723ZE/ldscript.ld diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723Zx/variant_MARLIN_STM32H723ZX.cpp b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/variant_MARLIN_STM32H723ZE.cpp similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H723Zx/variant_MARLIN_STM32H723ZX.cpp rename to buildroot/share/PlatformIO/variants/MARLIN_H723ZE/variant_MARLIN_STM32H723ZE.cpp diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H723Zx/variant_MARLIN_STM32H723ZX.h b/buildroot/share/PlatformIO/variants/MARLIN_H723ZE/variant_MARLIN_STM32H723ZE.h similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H723Zx/variant_MARLIN_STM32H723ZX.h rename to buildroot/share/PlatformIO/variants/MARLIN_H723ZE/variant_MARLIN_STM32H723ZE.h diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H743Vx/PeripheralPins.c b/buildroot/share/PlatformIO/variants/MARLIN_H743VI/PeripheralPins.c similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H743Vx/PeripheralPins.c rename to buildroot/share/PlatformIO/variants/MARLIN_H743VI/PeripheralPins.c diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H743Vx/PinNamesVar.h b/buildroot/share/PlatformIO/variants/MARLIN_H743VI/PinNamesVar.h similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H743Vx/PinNamesVar.h rename to buildroot/share/PlatformIO/variants/MARLIN_H743VI/PinNamesVar.h diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H743Vx/ldscript.ld b/buildroot/share/PlatformIO/variants/MARLIN_H743VI/ldscript.ld similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H743Vx/ldscript.ld rename to buildroot/share/PlatformIO/variants/MARLIN_H743VI/ldscript.ld diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H743Vx/variant_MARLIN_STM32H743VX.cpp b/buildroot/share/PlatformIO/variants/MARLIN_H743VI/variant_MARLIN_STM32H743VI.cpp similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H743Vx/variant_MARLIN_STM32H743VX.cpp rename to buildroot/share/PlatformIO/variants/MARLIN_H743VI/variant_MARLIN_STM32H743VI.cpp diff --git a/buildroot/share/PlatformIO/variants/MARLIN_H743Vx/variant_MARLIN_STM32H743VX.h b/buildroot/share/PlatformIO/variants/MARLIN_H743VI/variant_MARLIN_STM32H743VI.h similarity index 100% rename from buildroot/share/PlatformIO/variants/MARLIN_H743Vx/variant_MARLIN_STM32H743VX.h rename to buildroot/share/PlatformIO/variants/MARLIN_H743VI/variant_MARLIN_STM32H743VI.h From 2a79aad2dda922e35260750db90e7e243e24fc43 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 8 Jun 2023 19:22:17 -0500 Subject: [PATCH 274/427] =?UTF-8?q?=F0=9F=94=A8=20Fix=20serial=20port=20#e?= =?UTF-8?q?rror=20text?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/STM32/HAL.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Marlin/src/HAL/STM32/HAL.h b/Marlin/src/HAL/STM32/HAL.h index dc36cc1eca33..24589d0fcc36 100644 --- a/Marlin/src/HAL/STM32/HAL.h +++ b/Marlin/src/HAL/STM32/HAL.h @@ -71,7 +71,7 @@ #if WITHIN(SERIAL_PORT_2, 1, 6) #define MYSERIAL2 MSERIAL(SERIAL_PORT_2) #elif !defined(USBCON) - #error "SERIAL_PORT must be from 1 to 6." + #error "SERIAL_PORT_2 must be from 1 to 6." #elif SERIAL_PORT_2 == -1 #define MYSERIAL2 MSerialUSB #else @@ -83,7 +83,7 @@ #if WITHIN(SERIAL_PORT_3, 1, 6) #define MYSERIAL3 MSERIAL(SERIAL_PORT_3) #elif !defined(USBCON) - #error "SERIAL_PORT must be from 1 to 6." + #error "SERIAL_PORT_3 must be from 1 to 6." #elif SERIAL_PORT_3 == -1 #define MYSERIAL3 MSerialUSB #else @@ -95,7 +95,7 @@ #if WITHIN(MMU2_SERIAL_PORT, 1, 6) #define MMU2_SERIAL MSERIAL(MMU2_SERIAL_PORT) #elif !defined(USBCON) - #error "SERIAL_PORT must be from 1 to 6." + #error "MMU2_SERIAL_PORT must be from 1 to 6." #elif MMU2_SERIAL_PORT == -1 #define MMU2_SERIAL MSerialUSB #else @@ -107,7 +107,7 @@ #if WITHIN(LCD_SERIAL_PORT, 1, 6) #define LCD_SERIAL MSERIAL(LCD_SERIAL_PORT) #elif !defined(USBCON) - #error "SERIAL_PORT must be from 1 to 6." + #error "LCD_SERIAL_PORT must be from 1 to 6." #elif LCD_SERIAL_PORT == -1 #define LCD_SERIAL MSerialUSB #else From f3cda01b959274e7930c2050f5e34aa1460791bc Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 9 Jun 2023 00:30:56 +0000 Subject: [PATCH 275/427] [cron] Bump distribution date (2023-06-09) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index c4fb72821e58..50dfbcd3a302 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-08" +//#define STRING_DISTRIBUTION_DATE "2023-06-09" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index c39dc089a850..8c544a11c7ee 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-08" + #define STRING_DISTRIBUTION_DATE "2023-06-09" #endif /** From 34e23bcf950fa89737289c76953af7b24d5c22c4 Mon Sep 17 00:00:00 2001 From: Miguel Risco-Castillo Date: Thu, 8 Jun 2023 20:47:35 -0500 Subject: [PATCH 276/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20=5FMINMAX=5FTEST?= =?UTF-8?q?=20typo=20(#25954)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/temperature.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 7383f6a1c3de..56f5f8b9836e 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -2943,7 +2943,7 @@ void Temperature::init() { temp_range[NR].raw_max -= TEMPDIR(NR) * (OVERSAMPLENR); \ }while(0) - #define _MINMAX_TEST(N,M) (HOTENDS > N && TEMP_SENSOR_##NR##_IS_THERMISTOR && defined(HEATER_##N##_##M##TEMP)) + #define _MINMAX_TEST(N,M) (HOTENDS > N && TEMP_SENSOR_##N##_IS_THERMISTOR && defined(HEATER_##N##_##M##TEMP)) #if _MINMAX_TEST(0, MIN) _TEMP_MIN_E(0); From 82ddd55a1a4800e478b937da49d396cb2fb351f1 Mon Sep 17 00:00:00 2001 From: Bart Meijer Date: Fri, 9 Jun 2023 04:55:26 +0200 Subject: [PATCH 277/427] =?UTF-8?q?=F0=9F=A9=B9=20Conditional=20u8g=20for?= =?UTF-8?q?=20SAMD21=20(#25947)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/HAL/SAMD21/u8g/u8g_com_HAL_samd21_shared_hw_spi.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Marlin/src/HAL/SAMD21/u8g/u8g_com_HAL_samd21_shared_hw_spi.cpp b/Marlin/src/HAL/SAMD21/u8g/u8g_com_HAL_samd21_shared_hw_spi.cpp index 02dc77229676..025e5a3bb60d 100644 --- a/Marlin/src/HAL/SAMD21/u8g/u8g_com_HAL_samd21_shared_hw_spi.cpp +++ b/Marlin/src/HAL/SAMD21/u8g/u8g_com_HAL_samd21_shared_hw_spi.cpp @@ -60,6 +60,10 @@ #ifdef __SAMD21__ +#include "../../../inc/MarlinConfigPre.h" + +#if HAS_MARLINUI_U8GLIB + #include #include "SPI.h" @@ -151,4 +155,6 @@ uint8_t u8g_com_samd21_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val return 1; } +#endif // HAS_MARLINUI_U8GLIB + #endif // __SAMD21__ From 0ed46406d1d4b4280f8458d56b45b7bdab33e113 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 9 Jun 2023 02:56:25 -0500 Subject: [PATCH 278/427] =?UTF-8?q?=F0=9F=94=A8=20Simpler=20distinct=20fir?= =?UTF-8?q?mware=20rename=20(#25957)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buildroot/share/PlatformIO/scripts/offset_and_rename.py | 3 ++- buildroot/share/PlatformIO/scripts/random-bin.py | 9 --------- ini/stm32f1-maple.ini | 8 +++----- ini/stm32f1.ini | 3 +-- ini/stm32f4.ini | 6 ++---- 5 files changed, 8 insertions(+), 21 deletions(-) delete mode 100644 buildroot/share/PlatformIO/scripts/random-bin.py diff --git a/buildroot/share/PlatformIO/scripts/offset_and_rename.py b/buildroot/share/PlatformIO/scripts/offset_and_rename.py index de14ccbbbf5f..e9940a50d014 100644 --- a/buildroot/share/PlatformIO/scripts/offset_and_rename.py +++ b/buildroot/share/PlatformIO/scripts/offset_and_rename.py @@ -60,6 +60,7 @@ def encrypt(source, target, env): def rename_target(source, target, env): from pathlib import Path - Path(target[0].path).replace(Path(target[0].dir.path, new_name)) + from datetime import datetime + Path(target[0].path).replace(Path(target[0].dir.path, datetime.now().strftime(new_name.replace('{date}', '%Y%m%d').replace('{time}', '%H%M%S')))) marlin.add_post_action(rename_target) diff --git a/buildroot/share/PlatformIO/scripts/random-bin.py b/buildroot/share/PlatformIO/scripts/random-bin.py deleted file mode 100644 index dc8634ea7d64..000000000000 --- a/buildroot/share/PlatformIO/scripts/random-bin.py +++ /dev/null @@ -1,9 +0,0 @@ -# -# random-bin.py -# Set a unique firmware name based on current date and time -# -import pioutil -if pioutil.is_pio_build(): - from datetime import datetime - Import("env") - env['PROGNAME'] = datetime.now().strftime("firmware-%Y%m%d-%H%M%S") diff --git a/ini/stm32f1-maple.ini b/ini/stm32f1-maple.ini index 3560c1fd2a87..88a6f8b49225 100644 --- a/ini/stm32f1-maple.ini +++ b/ini/stm32f1-maple.ini @@ -118,8 +118,7 @@ extends = env:STM32F103RE_maple build_flags = ${env:STM32F103RE_maple.build_flags} -DTEMP_TIMER_CHAN=4 board_build.address = 0x08007000 board_build.ldscript = creality.ld -extra_scripts = ${env:STM32F103RE_maple.extra_scripts} - pre:buildroot/share/PlatformIO/scripts/random-bin.py +board_build.rename = firmware-{date}-{time} debug_tool = jlink upload_protocol = jlink @@ -131,8 +130,7 @@ extends = env:STM32F103RC_maple build_flags = ${env:STM32F103RC_maple.build_flags} -DTEMP_TIMER_CHAN=4 board_build.address = 0x08007000 board_build.ldscript = creality.ld -extra_scripts = ${env:STM32F103RC_maple.extra_scripts} - pre:buildroot/share/PlatformIO/scripts/random-bin.py +board_build.rename = firmware-{date}-{time} debug_tool = jlink upload_protocol = jlink @@ -400,8 +398,8 @@ extends = env:STM32F103RE_maple build_flags = ${STM32F1_maple.build_flags} -DTEMP_TIMER_CHAN=4 board_build.address = 0x08007000 board_build.ldscript = sovol.ld +board_build.rename = firmware-{date}-{time} extra_scripts = ${STM32F1_maple.extra_scripts} - pre:buildroot/share/PlatformIO/scripts/random-bin.py buildroot/share/PlatformIO/scripts/custom_board.py debug_tool = jlink upload_protocol = jlink diff --git a/ini/stm32f1.ini b/ini/stm32f1.ini index d19de4d2ddde..feb64a098f66 100644 --- a/ini/stm32f1.ini +++ b/ini/stm32f1.ini @@ -121,6 +121,7 @@ debug_tool = stlink extends = stm32_variant board_build.variant = MARLIN_F103Rx board_build.offset = 0x7000 +board_build.rename = firmware-{date}-{time} board_upload.offset_address = 0x08007000 build_flags = ${stm32_variant.build_flags} -DMCU_STM32F103RE -DHAL_SD_MODULE_ENABLED @@ -128,8 +129,6 @@ build_flags = ${stm32_variant.build_flags} -DENABLE_HWSERIAL3 -DTRANSFER_CLOCK_DIV=8 build_unflags = ${stm32_variant.build_unflags} -DUSBCON -DUSBD_USE_CDC -extra_scripts = ${stm32_variant.extra_scripts} - pre:buildroot/share/PlatformIO/scripts/random-bin.py monitor_speed = 115200 debug_tool = jlink upload_protocol = jlink diff --git a/ini/stm32f4.ini b/ini/stm32f4.ini index 34a5c4d607bd..67c2c6033cb0 100644 --- a/ini/stm32f4.ini +++ b/ini/stm32f4.ini @@ -684,12 +684,11 @@ board = genericSTM32F401RC board_build.variant = MARLIN_CREALITY_STM32F401RC board_build.offset = 0x10000 board_upload.offset_address = 0x08010000 +board_build.rename = firmware-{date}-{time} build_flags = ${stm32_variant.build_flags} -DMCU_STM32F401RC -DSTM32F4 -DSS_TIMER=4 -DTIMER_SERVO=TIM5 -DENABLE_HWSERIAL3 -DTRANSFER_CLOCK_DIV=8 build_unflags = ${stm32_variant.build_unflags} -DUSBCON -DUSBD_USE_CDC -extra_scripts = ${stm32_variant.extra_scripts} - pre:buildroot/share/PlatformIO/scripts/random-bin.py monitor_speed = 115200 [env:STM32F401RC_creality_jlink] @@ -710,10 +709,9 @@ extends = stm32_variant board = marlin_CREALITY_STM32F401RE board_build.offset = 0x10000 board_upload.offset_address = 0x08010000 +board_build.rename = firmware-{date}-{time} build_flags = ${stm32_variant.build_flags} -DSTM32F401xE -DSTM32F4 -DSTM32F4_UPDATE_FOLDER build_unflags = ${stm32_variant.build_unflags} -DUSBCON -DUSBD_USE_CDC -extra_scripts = ${stm32_variant.extra_scripts} - pre:buildroot/share/PlatformIO/scripts/random-bin.py monitor_speed = 115200 [env:STM32F401RE_creality_jlink] From 3706c16729ba095a9845128022408a0c07cde221 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Fri, 9 Jun 2023 19:59:23 +1200 Subject: [PATCH 279/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20dummy=20thermistor?= =?UTF-8?q?s=20998-999=20(#25956)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/Conditionals_adv.h | 58 +++++++++++++++---------------- Marlin/src/module/temperature.cpp | 2 +- 2 files changed, 30 insertions(+), 30 deletions(-) diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index 683eeb3da217..4892ff24b142 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -364,12 +364,12 @@ #define TEMP_SENSOR_0_IS_AD8495 1 #elif TEMP_SENSOR_0 == -1 #define TEMP_SENSOR_0_IS_AD595 1 -#elif TEMP_SENSOR_0 == 998 || TEMP_SENSOR_0 == 999 - #define TEMP_SENSOR_0_IS_DUMMY 1 #elif TEMP_SENSOR_0 > 0 #define TEMP_SENSOR_0_IS_THERMISTOR 1 #if TEMP_SENSOR_0 == 1000 #define TEMP_SENSOR_0_IS_CUSTOM 1 + #elif TEMP_SENSOR_0 == 998 || TEMP_SENSOR_0 == 999 + #define TEMP_SENSOR_0_IS_DUMMY 1 #endif #endif @@ -407,12 +407,12 @@ #define TEMP_SENSOR_1_IS_AD8495 1 #elif TEMP_SENSOR_1 == -1 #define TEMP_SENSOR_1_IS_AD595 1 -#elif TEMP_SENSOR_1 == 998 || TEMP_SENSOR_1 == 999 - #define TEMP_SENSOR_1_IS_DUMMY 1 #elif TEMP_SENSOR_1 > 0 #define TEMP_SENSOR_1_IS_THERMISTOR 1 #if TEMP_SENSOR_1 == 1000 #define TEMP_SENSOR_1_IS_CUSTOM 1 + #elif TEMP_SENSOR_1 == 998 || TEMP_SENSOR_1 == 999 + #define TEMP_SENSOR_1_IS_DUMMY 1 #endif #endif @@ -450,57 +450,57 @@ #define TEMP_SENSOR_2_IS_AD8495 1 #elif TEMP_SENSOR_2 == -1 #define TEMP_SENSOR_2_IS_AD595 1 -#elif TEMP_SENSOR_2 == 998 || TEMP_SENSOR_2 == 999 - #define TEMP_SENSOR_2_IS_DUMMY 1 #elif TEMP_SENSOR_2 > 0 #define TEMP_SENSOR_2_IS_THERMISTOR 1 #if TEMP_SENSOR_2 == 1000 #define TEMP_SENSOR_2_IS_CUSTOM 1 + #elif TEMP_SENSOR_2 == 998 || TEMP_SENSOR_2 == 999 + #define TEMP_SENSOR_2_IS_DUMMY 1 #endif #endif -#if TEMP_SENSOR_3 == 998 || TEMP_SENSOR_3 == 999 - #define TEMP_SENSOR_3_IS_DUMMY 1 -#elif TEMP_SENSOR_3 > 0 +#if TEMP_SENSOR_3 > 0 #define TEMP_SENSOR_3_IS_THERMISTOR 1 #if TEMP_SENSOR_3 == 1000 #define TEMP_SENSOR_3_IS_CUSTOM 1 + #elif TEMP_SENSOR_3 == 998 || TEMP_SENSOR_3 == 999 + #define TEMP_SENSOR_3_IS_DUMMY 1 #endif #endif -#if TEMP_SENSOR_4 == 998 || TEMP_SENSOR_4 == 999 - #define TEMP_SENSOR_4_IS_DUMMY 1 -#elif TEMP_SENSOR_4 > 0 +#if TEMP_SENSOR_4 > 0 #define TEMP_SENSOR_4_IS_THERMISTOR 1 #if TEMP_SENSOR_4 == 1000 #define TEMP_SENSOR_4_IS_CUSTOM 1 + #elif TEMP_SENSOR_4 == 998 || TEMP_SENSOR_4 == 999 + #define TEMP_SENSOR_4_IS_DUMMY 1 #endif #endif -#if TEMP_SENSOR_5 == 998 || TEMP_SENSOR_5 == 999 - #define TEMP_SENSOR_5_IS_DUMMY 1 -#elif TEMP_SENSOR_5 > 0 +#if TEMP_SENSOR_5 > 0 #define TEMP_SENSOR_5_IS_THERMISTOR 1 #if TEMP_SENSOR_5 == 1000 #define TEMP_SENSOR_5_IS_CUSTOM 1 + #elif TEMP_SENSOR_5 == 998 || TEMP_SENSOR_5 == 999 + #define TEMP_SENSOR_5_IS_DUMMY 1 #endif #endif -#if TEMP_SENSOR_6 == 998 || TEMP_SENSOR_6 == 999 - #define TEMP_SENSOR_6_IS_DUMMY 1 -#elif TEMP_SENSOR_6 > 0 +#if TEMP_SENSOR_6 > 0 #define TEMP_SENSOR_6_IS_THERMISTOR 1 #if TEMP_SENSOR_6 == 1000 #define TEMP_SENSOR_6_IS_CUSTOM 1 + #elif TEMP_SENSOR_6 == 998 || TEMP_SENSOR_6 == 999 + #define TEMP_SENSOR_6_IS_DUMMY 1 #endif #endif -#if TEMP_SENSOR_7 == 998 || TEMP_SENSOR_7 == 999 - #define TEMP_SENSOR_7_IS_DUMMY 1 -#elif TEMP_SENSOR_7 > 0 +#if TEMP_SENSOR_7 > 0 #define TEMP_SENSOR_7_IS_THERMISTOR 1 #if TEMP_SENSOR_7 == 1000 #define TEMP_SENSOR_7_IS_CUSTOM 1 + #elif TEMP_SENSOR_7 == 998 || TEMP_SENSOR_7 == 999 + #define TEMP_SENSOR_7_IS_DUMMY 1 #endif #endif @@ -680,12 +680,12 @@ #error "MAX6675 Thermocouples (-2) not supported for TEMP_SENSOR_BED." #elif TEMP_SENSOR_BED == -1 #define TEMP_SENSOR_BED_IS_AD595 1 -#elif TEMP_SENSOR_BED == 998 || TEMP_SENSOR_BED == 999 - #define TEMP_SENSOR_BED_IS_DUMMY 1 #elif TEMP_SENSOR_BED > 0 #define TEMP_SENSOR_BED_IS_THERMISTOR 1 #if TEMP_SENSOR_BED == 1000 #define TEMP_SENSOR_BED_IS_CUSTOM 1 + #elif TEMP_SENSOR_BED == 998 || TEMP_SENSOR_BED == 999 + #define TEMP_SENSOR_BED_IS_DUMMY 1 #endif #else #undef BED_MINTEMP @@ -700,12 +700,12 @@ #error "MAX6675 Thermocouples (-2) not supported for TEMP_SENSOR_CHAMBER." #elif TEMP_SENSOR_CHAMBER == -1 #define TEMP_SENSOR_CHAMBER_IS_AD595 1 -#elif TEMP_SENSOR_CHAMBER == 998 || TEMP_SENSOR_CHAMBER == 999 - #define TEMP_SENSOR_CHAMBER_IS_DUMMY 1 #elif TEMP_SENSOR_CHAMBER > 0 #define TEMP_SENSOR_CHAMBER_IS_THERMISTOR 1 #if TEMP_SENSOR_CHAMBER == 1000 #define TEMP_SENSOR_CHAMBER_IS_CUSTOM 1 + #elif TEMP_SENSOR_CHAMBER == 998 || TEMP_SENSOR_CHAMBER == 999 + #define TEMP_SENSOR_CHAMBER_IS_DUMMY 1 #endif #else #undef THERMAL_PROTECTION_CHAMBER @@ -742,12 +742,12 @@ #error "MAX6675 Thermocouples (-2) not supported for TEMP_SENSOR_PROBE." #elif TEMP_SENSOR_PROBE == -1 #define TEMP_SENSOR_PROBE_IS_AD595 1 -#elif TEMP_SENSOR_PROBE == 998 || TEMP_SENSOR_PROBE == 999 - #define TEMP_SENSOR_PROBE_IS_DUMMY 1 #elif TEMP_SENSOR_PROBE > 0 #define TEMP_SENSOR_PROBE_IS_THERMISTOR 1 #if TEMP_SENSOR_PROBE == 1000 #define TEMP_SENSOR_PROBE_IS_CUSTOM 1 + #elif TEMP_SENSOR_PROBE == 998 || TEMP_SENSOR_PROBE == 999 + #define TEMP_SENSOR_PROBE_IS_DUMMY 1 #endif #endif @@ -759,12 +759,12 @@ #error "MAX6675 Thermocouples (-2) not supported for TEMP_SENSOR_BOARD." #elif TEMP_SENSOR_BOARD == -1 #define TEMP_SENSOR_BOARD_IS_AD595 1 -#elif TEMP_SENSOR_BOARD == 998 || TEMP_SENSOR_BOARD == 999 - #define TEMP_SENSOR_BOARD_IS_DUMMY 1 #elif TEMP_SENSOR_BOARD > 0 #define TEMP_SENSOR_BOARD_IS_THERMISTOR 1 #if TEMP_SENSOR_BOARD == 1000 #define TEMP_SENSOR_BOARD_IS_CUSTOM 1 + #elif TEMP_SENSOR_BOARD == 998 || TEMP_SENSOR_BOARD == 999 + #define TEMP_SENSOR_BOARD_IS_DUMMY 1 #endif #endif diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 56f5f8b9836e..4d366198c17f 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -2943,7 +2943,7 @@ void Temperature::init() { temp_range[NR].raw_max -= TEMPDIR(NR) * (OVERSAMPLENR); \ }while(0) - #define _MINMAX_TEST(N,M) (HOTENDS > N && TEMP_SENSOR_##N##_IS_THERMISTOR && defined(HEATER_##N##_##M##TEMP)) + #define _MINMAX_TEST(N,M) (!TEMP_SENSOR_##N##_IS_DUMMY && HOTENDS > N && TEMP_SENSOR_##N##_IS_THERMISTOR && defined(HEATER_##N##_##M##TEMP)) #if _MINMAX_TEST(0, MIN) _TEMP_MIN_E(0); From b5d3d0141f5169ba79a99876af7b0c274cb382be Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 10 Jun 2023 00:22:22 +0000 Subject: [PATCH 280/427] [cron] Bump distribution date (2023-06-10) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 50dfbcd3a302..3631000cbead 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-09" +//#define STRING_DISTRIBUTION_DATE "2023-06-10" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 8c544a11c7ee..6fce9695750c 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-09" + #define STRING_DISTRIBUTION_DATE "2023-06-10" #endif /** From 00ab015de7b728082196c203626dd215dc8427d3 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Sat, 10 Jun 2023 17:20:50 -0700 Subject: [PATCH 281/427] =?UTF-8?q?=F0=9F=94=A8=20Firmware=20rename=20foll?= =?UTF-8?q?owup=20(#25966)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25957 --- ini/stm32f1-maple.ini | 6 +++--- ini/stm32f1.ini | 2 +- ini/stm32f4.ini | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ini/stm32f1-maple.ini b/ini/stm32f1-maple.ini index 88a6f8b49225..6f9ac32e0e6e 100644 --- a/ini/stm32f1-maple.ini +++ b/ini/stm32f1-maple.ini @@ -118,7 +118,7 @@ extends = env:STM32F103RE_maple build_flags = ${env:STM32F103RE_maple.build_flags} -DTEMP_TIMER_CHAN=4 board_build.address = 0x08007000 board_build.ldscript = creality.ld -board_build.rename = firmware-{date}-{time} +board_build.rename = firmware-{date}-{time}.bin debug_tool = jlink upload_protocol = jlink @@ -130,7 +130,7 @@ extends = env:STM32F103RC_maple build_flags = ${env:STM32F103RC_maple.build_flags} -DTEMP_TIMER_CHAN=4 board_build.address = 0x08007000 board_build.ldscript = creality.ld -board_build.rename = firmware-{date}-{time} +board_build.rename = firmware-{date}-{time}.bin debug_tool = jlink upload_protocol = jlink @@ -398,7 +398,7 @@ extends = env:STM32F103RE_maple build_flags = ${STM32F1_maple.build_flags} -DTEMP_TIMER_CHAN=4 board_build.address = 0x08007000 board_build.ldscript = sovol.ld -board_build.rename = firmware-{date}-{time} +board_build.rename = firmware-{date}-{time}.bin extra_scripts = ${STM32F1_maple.extra_scripts} buildroot/share/PlatformIO/scripts/custom_board.py debug_tool = jlink diff --git a/ini/stm32f1.ini b/ini/stm32f1.ini index feb64a098f66..08686a1fb475 100644 --- a/ini/stm32f1.ini +++ b/ini/stm32f1.ini @@ -121,7 +121,7 @@ debug_tool = stlink extends = stm32_variant board_build.variant = MARLIN_F103Rx board_build.offset = 0x7000 -board_build.rename = firmware-{date}-{time} +board_build.rename = firmware-{date}-{time}.bin board_upload.offset_address = 0x08007000 build_flags = ${stm32_variant.build_flags} -DMCU_STM32F103RE -DHAL_SD_MODULE_ENABLED diff --git a/ini/stm32f4.ini b/ini/stm32f4.ini index 67c2c6033cb0..7efb31107b86 100644 --- a/ini/stm32f4.ini +++ b/ini/stm32f4.ini @@ -684,7 +684,7 @@ board = genericSTM32F401RC board_build.variant = MARLIN_CREALITY_STM32F401RC board_build.offset = 0x10000 board_upload.offset_address = 0x08010000 -board_build.rename = firmware-{date}-{time} +board_build.rename = firmware-{date}-{time}.bin build_flags = ${stm32_variant.build_flags} -DMCU_STM32F401RC -DSTM32F4 -DSS_TIMER=4 -DTIMER_SERVO=TIM5 -DENABLE_HWSERIAL3 -DTRANSFER_CLOCK_DIV=8 @@ -709,7 +709,7 @@ extends = stm32_variant board = marlin_CREALITY_STM32F401RE board_build.offset = 0x10000 board_upload.offset_address = 0x08010000 -board_build.rename = firmware-{date}-{time} +board_build.rename = firmware-{date}-{time}.bin build_flags = ${stm32_variant.build_flags} -DSTM32F401xE -DSTM32F4 -DSTM32F4_UPDATE_FOLDER build_unflags = ${stm32_variant.build_unflags} -DUSBCON -DUSBD_USE_CDC monitor_speed = 115200 From 85067e14b5cd9a1d4d8ac8f38a763e9745d4fe61 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sun, 11 Jun 2023 00:29:06 +0000 Subject: [PATCH 282/427] [cron] Bump distribution date (2023-06-11) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 3631000cbead..28c9903fdfb8 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-10" +//#define STRING_DISTRIBUTION_DATE "2023-06-11" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 6fce9695750c..86700d9c8b9e 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-10" + #define STRING_DISTRIBUTION_DATE "2023-06-11" #endif /** From bea1a914bee6caf6ff63a4c0ab65a2b7ddea9de8 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Sun, 11 Jun 2023 14:49:37 -0700 Subject: [PATCH 283/427] =?UTF-8?q?=F0=9F=94=A8=20SKR=20Mini=20E3=20v3.0.1?= =?UTF-8?q?=20XFER=20(#25955)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/SanityCheck.h | 4 ++-- Marlin/src/pins/pins.h | 2 +- ini/stm32f4.ini | 14 ++++++++++++++ 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 00b532120518..f4d1ff836596 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -3988,8 +3988,8 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." #endif // Check requirements for upload.py -#if ENABLED(XFER_BUILD) && !ALL(BINARY_FILE_TRANSFER, CUSTOM_FIRMWARE_UPLOAD) - #error "BINARY_FILE_TRANSFER and CUSTOM_FIRMWARE_UPLOAD are required for custom upload." +#if ENABLED(XFER_BUILD) && !ALL(SDSUPPORT, BINARY_FILE_TRANSFER, CUSTOM_FIRMWARE_UPLOAD) + #error "SDSUPPORT, BINARY_FILE_TRANSFER, and CUSTOM_FIRMWARE_UPLOAD are required for custom upload." #endif /** diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index d4ec9f22c0c1..e15aeb5c4b9c 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -613,7 +613,7 @@ #elif MB(BTT_MANTA_M8P_V1_1) #include "stm32g0/pins_BTT_MANTA_M8P_V1_1.h" // STM32G0 env:STM32G0B1VE_btt env:STM32G0B1VE_btt_xfer #elif MB(BTT_SKR_MINI_E3_V3_0_1) - #include "stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h"// STM32F4 env:STM32F401RC_btt + #include "stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h"// STM32F4 env:STM32F401RC_btt env:STM32F401RC_btt_xfer #elif MB(BTT_SKR_MINI_MZ_V1_0) #include "stm32f1/pins_BTT_SKR_MINI_MZ_V1_0.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple #elif MB(BTT_SKR_E3_DIP) diff --git a/ini/stm32f4.ini b/ini/stm32f4.ini index 7efb31107b86..8708a6dbcacd 100644 --- a/ini/stm32f4.ini +++ b/ini/stm32f4.ini @@ -743,6 +743,20 @@ build_flags = ${stm32_variant.build_flags} upload_protocol = stlink debug_tool = stlink +# +# BigTreeTech SKR Mini E3 V3.0.1 (STM32F401RCT6 ARM Cortex-M0+) +# Custom upload to SD via Marlin with Binary Protocol +# Requires Marlin with BINARY_FILE_TRANSFER already installed on the target board. +# If CUSTOM_FIRMWARE_UPLOAD is also installed, Marlin will reboot the board to install the firmware. +# Currently CUSTOM_FIRMWARE_UPLOAD must also be enabled to use 'xfer' build envs. +# +[env:STM32F401RC_btt_xfer] +extends = env:STM32F401RC_btt +build_flags = ${env:STM32F401RC_btt.build_flags} -DXFER_BUILD +extra_scripts = ${env:STM32F401RC_btt.extra_scripts} + pre:buildroot/share/scripts/upload.py +upload_protocol = custom + # # MKS SKIPR v1.0 all-in-one board (STM32F407VE) # From d9d2dae88391b0bbfa131f56fa49d3f472683023 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 12 Jun 2023 00:25:11 +0000 Subject: [PATCH 284/427] [cron] Bump distribution date (2023-06-12) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 28c9903fdfb8..e61748682a90 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-11" +//#define STRING_DISTRIBUTION_DATE "2023-06-12" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 86700d9c8b9e..dc724713c4ff 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-11" + #define STRING_DISTRIBUTION_DATE "2023-06-12" #endif /** From 2ef71c6ebaa1f1b496eb369879fe22c69cf9adb4 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 12 Jun 2023 16:38:14 -0500 Subject: [PATCH 285/427] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20Simplify=20SERIAL?= =?UTF-8?q?=5FECHO=20(#25928)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Since this increases AVR code size, try to optimize further. --- Marlin/src/HAL/LPC1768/eeprom_sdcard.cpp | 12 +- Marlin/src/HAL/shared/Delay.cpp | 8 +- Marlin/src/MarlinCore.cpp | 2 +- Marlin/src/core/debug_out.h | 24 --- Marlin/src/core/debug_section.h | 7 +- Marlin/src/core/serial.cpp | 45 +++- Marlin/src/core/serial.h | 192 +++++------------- Marlin/src/core/serial_base.h | 5 +- Marlin/src/core/types.h | 30 +++ Marlin/src/core/utility.cpp | 10 +- Marlin/src/core/utility.h | 19 ++ Marlin/src/feature/bedlevel/bedlevel.cpp | 4 +- .../bedlevel/mbl/mesh_bed_leveling.cpp | 3 +- Marlin/src/feature/bedlevel/ubl/ubl.cpp | 7 +- Marlin/src/feature/bedlevel/ubl/ubl.h | 6 +- Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp | 139 +++++-------- Marlin/src/feature/encoder_i2c.cpp | 5 +- Marlin/src/feature/host_actions.cpp | 5 +- Marlin/src/feature/max7219.cpp | 4 +- Marlin/src/feature/meatpack.cpp | 2 +- Marlin/src/feature/mixing.cpp | 13 +- Marlin/src/feature/mixing.h | 28 ++- Marlin/src/feature/mmu/mmu2.cpp | 2 +- Marlin/src/feature/pause.cpp | 2 +- Marlin/src/feature/powerloss.cpp | 9 +- Marlin/src/feature/probe_temp_comp.cpp | 11 +- Marlin/src/feature/runout.h | 6 +- Marlin/src/feature/stepper_driver_safety.cpp | 3 +- Marlin/src/feature/tmc_util.cpp | 10 +- Marlin/src/feature/twibus.cpp | 3 +- Marlin/src/gcode/bedlevel/G35.cpp | 17 +- Marlin/src/gcode/bedlevel/M420.cpp | 2 +- Marlin/src/gcode/bedlevel/abl/G29.cpp | 12 +- Marlin/src/gcode/calibrate/G28.cpp | 2 +- Marlin/src/gcode/calibrate/G33.cpp | 11 +- Marlin/src/gcode/calibrate/G34_M422.cpp | 5 +- Marlin/src/gcode/calibrate/G76_M871.cpp | 2 +- Marlin/src/gcode/calibrate/M100.cpp | 4 +- Marlin/src/gcode/calibrate/M48.cpp | 19 +- Marlin/src/gcode/calibrate/M852.cpp | 6 +- Marlin/src/gcode/config/M218.cpp | 6 +- Marlin/src/gcode/config/M302.cpp | 4 +- Marlin/src/gcode/config/M43.cpp | 4 +- Marlin/src/gcode/config/M92.cpp | 2 +- Marlin/src/gcode/control/M80_M81.cpp | 2 +- Marlin/src/gcode/feature/advance/M900.cpp | 8 +- Marlin/src/gcode/feature/ft_motion/M493.cpp | 22 +- .../src/gcode/feature/network/M552-M554.cpp | 3 +- Marlin/src/gcode/feature/pause/G61.cpp | 3 +- Marlin/src/gcode/feature/powerloss/M1000.cpp | 3 +- Marlin/src/gcode/feature/powerloss/M413.cpp | 4 +- Marlin/src/gcode/feature/trinamic/M569.cpp | 8 +- Marlin/src/gcode/gcode.cpp | 5 +- Marlin/src/gcode/geometry/G17-G19.cpp | 2 +- Marlin/src/gcode/probe/G30.cpp | 2 +- Marlin/src/gcode/queue.cpp | 2 +- Marlin/src/gcode/stats/M31.cpp | 2 +- Marlin/src/gcode/temp/M306.cpp | 16 +- Marlin/src/gcode/units/M149.cpp | 3 +- Marlin/src/inc/Conditionals_post.h | 3 + Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 18 +- Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp | 18 +- .../lcd/extui/anycubic_chiron/chiron_tft.cpp | 25 +-- .../src/lcd/extui/anycubic_vyper/dgus_tft.cpp | 6 +- .../lcd/extui/dgus/DGUSScreenHandlerBase.h | 2 +- Marlin/src/lcd/extui/nextion/nextion_tft.cpp | 26 +-- Marlin/src/lcd/menu/menu_configuration.cpp | 9 +- Marlin/src/lcd/utf8.cpp | 9 +- Marlin/src/libs/vector_3.cpp | 11 +- Marlin/src/module/endstops.cpp | 5 +- Marlin/src/module/probe.cpp | 2 +- Marlin/src/module/settings.cpp | 10 +- Marlin/src/module/temperature.cpp | 41 ++-- Marlin/src/pins/pinsDebug.h | 8 +- Marlin/src/sd/cardreader.cpp | 7 +- docs/Serial.md | 3 - 76 files changed, 398 insertions(+), 602 deletions(-) diff --git a/Marlin/src/HAL/LPC1768/eeprom_sdcard.cpp b/Marlin/src/HAL/LPC1768/eeprom_sdcard.cpp index 1991d7971959..5ebd437c1e15 100644 --- a/Marlin/src/HAL/LPC1768/eeprom_sdcard.cpp +++ b/Marlin/src/HAL/LPC1768/eeprom_sdcard.cpp @@ -91,15 +91,9 @@ bool PersistentStore::access_finish() { static void debug_rw(const bool write, int &pos, const uint8_t *value, const size_t size, const FRESULT s, const size_t total=0) { #if ENABLED(DEBUG_SD_EEPROM_EMULATION) FSTR_P const rw_str = write ? F("write") : F("read"); - SERIAL_CHAR(' '); - SERIAL_ECHOF(rw_str); - SERIAL_ECHOLNPGM("_data(", pos, ",", *value, ",", size, ", ...)"); - if (total) { - SERIAL_ECHOPGM(" f_"); - SERIAL_ECHOF(rw_str); - SERIAL_ECHOPGM("()=", s, "\n size=", size, "\n bytes_"); - SERIAL_ECHOLNF(write ? F("written=") : F("read="), total); - } + SERIAL_ECHOLN(AS_CHAR(' '), rw_str, F("_data("), pos, AS_CHAR(','), *value, AS_CHAR(','), size, F(", ...)")); + if (total) + SERIAL_ECHOLN(F(" f_"), rw_str, F("()="), s, F("\n size="), size, F("\n bytes_"), write ? F("written=") : F("read="), total); else SERIAL_ECHOLNPGM(" f_lseek()=", s); #endif diff --git a/Marlin/src/HAL/shared/Delay.cpp b/Marlin/src/HAL/shared/Delay.cpp index c64376d25d9a..31c3f4576539 100644 --- a/Marlin/src/HAL/shared/Delay.cpp +++ b/Marlin/src/HAL/shared/Delay.cpp @@ -109,13 +109,7 @@ #if ENABLED(MARLIN_DEV_MODE) void dump_delay_accuracy_check() { auto report_call_time = [](FSTR_P const name, FSTR_P const unit, const uint32_t cycles, const uint32_t total, const bool do_flush=true) { - SERIAL_ECHOPGM("Calling "); - SERIAL_ECHOF(name); - SERIAL_ECHOLNPGM(" for ", cycles); - SERIAL_ECHOF(unit); - SERIAL_ECHOLNPGM(" took: ", total); - SERIAL_CHAR(' '); - SERIAL_ECHOF(unit); + SERIAL_ECHOLN(F("Calling "), name, F(" for "), cycles, AS_CHAR(' '), unit, F(" took: "), total, AS_CHAR(' '), unit); if (do_flush) SERIAL_FLUSHTX(); }; diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index ac5a6b7ff9b0..09d398eb8769 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -882,7 +882,7 @@ void kill(FSTR_P const lcd_error/*=nullptr*/, FSTR_P const lcd_component/*=nullp TERN_(HAS_CUTTER, cutter.kill()); // Full cutter shutdown including ISR control // Echo the LCD message to serial for extra context - if (lcd_error) { SERIAL_ECHO_START(); SERIAL_ECHOLNF(lcd_error); } + if (lcd_error) { SERIAL_ECHO_START(); SERIAL_ECHOLN(lcd_error); } #if HAS_DISPLAY ui.kill_screen(lcd_error ?: GET_TEXT_F(MSG_KILLED), lcd_component ?: FPSTR(NUL_STR)); diff --git a/Marlin/src/core/debug_out.h b/Marlin/src/core/debug_out.h index eb1c91e50786..92ee233e0358 100644 --- a/Marlin/src/core/debug_out.h +++ b/Marlin/src/core/debug_out.h @@ -31,19 +31,11 @@ #undef DEBUG_ERROR_START #undef DEBUG_CHAR #undef DEBUG_ECHO -#undef DEBUG_DECIMAL -#undef DEBUG_ECHO_F #undef DEBUG_ECHOLN #undef DEBUG_ECHOPGM #undef DEBUG_ECHOLNPGM -#undef DEBUG_ECHOF -#undef DEBUG_ECHOLNF #undef DEBUG_ECHOPGM_P #undef DEBUG_ECHOLNPGM_P -#undef DEBUG_ECHOPAIR_F -#undef DEBUG_ECHOPAIR_F_P -#undef DEBUG_ECHOLNPAIR_F -#undef DEBUG_ECHOLNPAIR_F_P #undef DEBUG_ECHO_MSG #undef DEBUG_ERROR_MSG #undef DEBUG_EOL @@ -62,21 +54,13 @@ #define DEBUG_ERROR_START SERIAL_ERROR_START #define DEBUG_CHAR SERIAL_CHAR #define DEBUG_ECHO SERIAL_ECHO - #define DEBUG_DECIMAL SERIAL_DECIMAL - #define DEBUG_ECHO_F SERIAL_ECHO_F #define DEBUG_ECHOLN SERIAL_ECHOLN #define DEBUG_ECHOPGM SERIAL_ECHOPGM #define DEBUG_ECHOLNPGM SERIAL_ECHOLNPGM - #define DEBUG_ECHOF SERIAL_ECHOF - #define DEBUG_ECHOLNF SERIAL_ECHOLNF #define DEBUG_ECHOPGM SERIAL_ECHOPGM #define DEBUG_ECHOPGM_P SERIAL_ECHOPGM_P - #define DEBUG_ECHOPAIR_F SERIAL_ECHOPAIR_F - #define DEBUG_ECHOPAIR_F_P SERIAL_ECHOPAIR_F_P #define DEBUG_ECHOLNPGM SERIAL_ECHOLNPGM #define DEBUG_ECHOLNPGM_P SERIAL_ECHOLNPGM_P - #define DEBUG_ECHOLNPAIR_F SERIAL_ECHOLNPAIR_F - #define DEBUG_ECHOLNPAIR_F_P SERIAL_ECHOLNPAIR_F_P #define DEBUG_ECHO_MSG SERIAL_ECHO_MSG #define DEBUG_ERROR_MSG SERIAL_ERROR_MSG #define DEBUG_EOL SERIAL_EOL @@ -93,19 +77,11 @@ #define DEBUG_ERROR_START() NOOP #define DEBUG_CHAR(...) NOOP #define DEBUG_ECHO(...) NOOP - #define DEBUG_DECIMAL(...) NOOP - #define DEBUG_ECHO_F(...) NOOP #define DEBUG_ECHOLN(...) NOOP #define DEBUG_ECHOPGM(...) NOOP #define DEBUG_ECHOLNPGM(...) NOOP - #define DEBUG_ECHOF(...) NOOP - #define DEBUG_ECHOLNF(...) NOOP #define DEBUG_ECHOPGM_P(...) NOOP #define DEBUG_ECHOLNPGM_P(...) NOOP - #define DEBUG_ECHOPAIR_F(...) NOOP - #define DEBUG_ECHOPAIR_F_P(...) NOOP - #define DEBUG_ECHOLNPAIR_F(...) NOOP - #define DEBUG_ECHOLNPAIR_F_P(...) NOOP #define DEBUG_ECHO_MSG(...) NOOP #define DEBUG_ERROR_MSG(...) NOOP #define DEBUG_EOL() NOOP diff --git a/Marlin/src/core/debug_section.h b/Marlin/src/core/debug_section.h index 6e23d9e4edb6..dc4cc0143c3e 100644 --- a/Marlin/src/core/debug_section.h +++ b/Marlin/src/core/debug_section.h @@ -38,11 +38,8 @@ class SectionLog { bool debug; void echo_msg(FSTR_P const fpre) { - SERIAL_ECHOF(fpre); - if (the_msg) { - SERIAL_CHAR(' '); - SERIAL_ECHOF(the_msg); - } + SERIAL_ECHO(fpre); + if (the_msg) SERIAL_ECHO(AS_CHAR(' '), the_msg); SERIAL_CHAR(' '); print_pos(current_position); } diff --git a/Marlin/src/core/serial.cpp b/Marlin/src/core/serial.cpp index 8f3a59c81408..bda1527545dd 100644 --- a/Marlin/src/core/serial.cpp +++ b/Marlin/src/core/serial.cpp @@ -68,26 +68,51 @@ MAP(_N_LBL, LOGICAL_AXIS_NAMES); MAP(_SP_N_LBL, LOGICAL_AXIS_NAMES); #endif -void serial_print_P(PGM_P str) { - while (const char c = pgm_read_byte(str++)) SERIAL_CHAR(c); +// Specializations for float, p_float_t, w_float_t +template <> void SERIAL_ECHO(const float f) { SERIAL_IMPL.print(f); } +template <> void SERIAL_ECHO(const p_float_t pf) { SERIAL_IMPL.print(pf.value, pf.prec); } +template <> void SERIAL_ECHO(const w_float_t wf) { char f1[20]; SERIAL_IMPL.print(dtostrf(wf.value, wf.width, wf.prec, f1)); } + +// Specializations for F-string +template <> void SERIAL_ECHO(const FSTR_P fstr) { SERIAL_ECHO_P(FTOP(fstr)); } +template <> void SERIAL_ECHOLN(const FSTR_P fstr) { SERIAL_ECHOLN_P(FTOP(fstr)); } + +void SERIAL_CHAR(char a) { SERIAL_IMPL.write(a); } +void SERIAL_EOL() { SERIAL_CHAR('\n'); } + +void SERIAL_ECHO(serial_char_t x) { SERIAL_IMPL.write(x.c); } + +void SERIAL_FLUSH() { SERIAL_IMPL.flush(); } +void SERIAL_FLUSHTX() { SERIAL_IMPL.flushTX(); } + +void SERIAL_ECHO_P(PGM_P pstr) { + while (const char c = pgm_read_byte(pstr++)) SERIAL_CHAR(c); } +void SERIAL_ECHOLN_P(PGM_P pstr) { SERIAL_ECHO_P(pstr); SERIAL_EOL(); } -void serial_echo_start() { serial_print(F("echo:")); } -void serial_error_start() { serial_print(F("Error:")); } +void SERIAL_ECHO_START() { SERIAL_ECHO(F("echo:")); } +void SERIAL_ERROR_START() { SERIAL_ECHO(F("Error:")); } -void serial_spaces(uint8_t count) { count *= (PROPORTIONAL_FONT_RATIO); while (count--) SERIAL_CHAR(' '); } +void SERIAL_ECHO_SP(uint8_t count) { count *= (PROPORTIONAL_FONT_RATIO); while (count--) SERIAL_CHAR(' '); } void serial_offset(const_float_t v, const uint8_t sp/*=0*/) { if (v == 0 && sp == 1) SERIAL_CHAR(' '); else if (v > 0 || (v == 0 && sp == 2)) SERIAL_CHAR('+'); - SERIAL_DECIMAL(v); + SERIAL_ECHO(v); +} + +void serial_ternary(FSTR_P const pre, const bool onoff, FSTR_P const on, FSTR_P const off, FSTR_P const post/*=nullptr*/) { + if (pre) SERIAL_ECHO(pre); + if (onoff && on) SERIAL_ECHO(on); + if (!onoff && off) SERIAL_ECHO(off); + if (post) SERIAL_ECHO(post); } -void serialprint_onoff(const bool onoff) { serial_print(onoff ? F(STR_ON) : F(STR_OFF)); } +void serialprint_onoff(const bool onoff) { SERIAL_ECHO(onoff ? F(STR_ON) : F(STR_OFF)); } void serialprintln_onoff(const bool onoff) { serialprint_onoff(onoff); SERIAL_EOL(); } -void serialprint_truefalse(const bool tf) { serial_print(tf ? F("true") : F("false")); } +void serialprint_truefalse(const bool tf) { SERIAL_ECHO(tf ? F("true") : F("false")); } void print_bin(uint16_t val) { for (uint8_t i = 16; i--;) { @@ -97,11 +122,11 @@ void print_bin(uint16_t val) { } void print_pos(NUM_AXIS_ARGS_(const_float_t) FSTR_P const prefix/*=nullptr*/, FSTR_P const suffix/*=nullptr*/) { - if (prefix) serial_print(prefix); + if (prefix) SERIAL_ECHO(prefix); #if NUM_AXES SERIAL_ECHOPGM_P( LIST_N(DOUBLE(NUM_AXES), SP_X_STR, x, SP_Y_STR, y, SP_Z_STR, z, SP_I_STR, i, SP_J_STR, j, SP_K_STR, k, SP_U_STR, u, SP_V_STR, v, SP_W_STR, w) ); #endif - if (suffix) serial_print(suffix); else SERIAL_EOL(); + if (suffix) SERIAL_ECHO(suffix); else SERIAL_EOL(); } diff --git a/Marlin/src/core/serial.h b/Marlin/src/core/serial.h index 62e1294e0468..09f453d3b5a8 100644 --- a/Marlin/src/core/serial.h +++ b/Marlin/src/core/serial.h @@ -125,8 +125,6 @@ extern uint8_t marlin_debug_flags; #define SERIAL_IMPL SERIAL_LEAF_1 #endif -#define SERIAL_OUT(WHAT, V...) (void)SERIAL_IMPL.WHAT(V) - #define PORT_REDIRECT(p) _PORT_REDIRECT(1,p) #define PORT_RESTORE() _PORT_RESTORE(1) #define SERIAL_PORTMASK(P) SerialMask::from(P) @@ -134,65 +132,69 @@ extern uint8_t marlin_debug_flags; // // SERIAL_CHAR - Print one or more individual chars // -inline void SERIAL_CHAR(char a) { SERIAL_IMPL.write(a); } +void SERIAL_CHAR(char a); template void SERIAL_CHAR(char a, Args ... args) { SERIAL_IMPL.write(a); SERIAL_CHAR(args ...); } /** - * SERIAL_ECHO - Print a single string or value. + * SERIAL_ECHO / SERIAL_ECHOLN - Print a single string or value. * Any numeric parameter (including char) is printed as a base-10 number. * A string pointer or literal will be output as a string. * * NOTE: Use SERIAL_CHAR to print char as a single character. */ -template -void SERIAL_ECHO(T x) { SERIAL_IMPL.print(x); } +template void SERIAL_ECHO(T x) { SERIAL_IMPL.print(x); } +template void SERIAL_ECHOLN(T x) { SERIAL_IMPL.println(x); } // Wrapper for ECHO commands to interpret a char -typedef struct SerialChar { char c; SerialChar(char n) : c(n) { } } serial_char_t; -inline void SERIAL_ECHO(serial_char_t x) { SERIAL_IMPL.write(x.c); } -#define AS_CHAR(C) serial_char_t(C) +void SERIAL_ECHO(serial_char_t x); #define AS_DIGIT(C) AS_CHAR('0' + (C)) -template -void SERIAL_ECHOLN(T x) { SERIAL_IMPL.println(x); } - -// SERIAL_PRINT works like SERIAL_ECHO but also takes the numeric base -template -void SERIAL_PRINT(T x, U y) { SERIAL_IMPL.print(x, y); } - -template -void SERIAL_PRINTLN(T x, PrintBase y) { SERIAL_IMPL.println(x, y); } +// Print an integer with a numeric base such as PrintBase::Hex +template void SERIAL_PRINT(T x, PrintBase y) { SERIAL_IMPL.print(x, y); } +template void SERIAL_PRINTLN(T x, PrintBase y) { SERIAL_IMPL.println(x, y); } // Flush the serial port -inline void SERIAL_FLUSH() { SERIAL_IMPL.flush(); } -inline void SERIAL_FLUSHTX() { SERIAL_IMPL.flushTX(); } +void SERIAL_FLUSH(); +void SERIAL_FLUSHTX(); -// Serial echo and error prefixes -#define SERIAL_ECHO_START() serial_echo_start() -#define SERIAL_ERROR_START() serial_error_start() +// Start an echo: or error: output +void SERIAL_ECHO_START(); +void SERIAL_ERROR_START(); // Serial end-of-line -#define SERIAL_EOL() SERIAL_CHAR('\n') +void SERIAL_EOL(); // Print a single PROGMEM, PGM_P, or PSTR() string. -void serial_print_P(PGM_P str); -inline void serial_println_P(PGM_P str) { serial_print_P(str); SERIAL_EOL(); } +void SERIAL_ECHO_P(PGM_P pstr); +void SERIAL_ECHOLN_P(PGM_P pstr); + +// Specializations for float, p_float_t, and w_float_t +template<> void SERIAL_ECHO(const float f); +template<> void SERIAL_ECHO(const p_float_t pf); +template<> void SERIAL_ECHO(const w_float_t wf); + +// Specializations for F-string +template<> void SERIAL_ECHO(const FSTR_P fstr); +template<> void SERIAL_ECHOLN(const FSTR_P fstr); -// Print a single FSTR_P, F(), or FPSTR() string. -inline void serial_print(FSTR_P const fstr) { serial_print_P(FTOP(fstr)); } -inline void serial_println(FSTR_P const fstr) { serial_println_P(FTOP(fstr)); } +// Print any number of items with arbitrary types (except loose PROGMEM strings) +template +void SERIAL_ECHO(T arg1, Args ... args) { SERIAL_ECHO(arg1); SERIAL_ECHO(args ...); } +template +void SERIAL_ECHOLN(T arg1, Args ... args) { SERIAL_ECHO(arg1); SERIAL_ECHO(args ...); SERIAL_EOL(); } // -// SERIAL_ECHOPGM... macros are used to output string-value pairs. +// SERIAL_ECHOPGM... macros are used to output string-value pairs, wrapping +// all the odd loose string elements as PROGMEM strings. // // Print up to 20 pairs of values. Odd elements must be literal strings. #define __SEP_N(N,V...) _SEP_##N(V) #define _SEP_N(N,V...) __SEP_N(N,V) #define _SEP_N_REF() _SEP_N -#define _SEP_1(s) serial_print(F(s)); -#define _SEP_2(s,v) serial_echopair(F(s),v); +#define _SEP_1(s) SERIAL_ECHO(F(s)); +#define _SEP_2(s,v) SERIAL_ECHO(F(s),v); #define _SEP_3(s,v,V...) _SEP_2(s,v); DEFER2(_SEP_N_REF)()(TWO_ARGS(V),V); #define SERIAL_ECHOPGM(V...) do{ EVAL(_SEP_N(TWO_ARGS(V),V)); }while(0) @@ -200,8 +202,8 @@ inline void serial_println(FSTR_P const fstr) { serial_println_P(FTOP(fstr)); } #define __SELP_N(N,V...) _SELP_##N(V) #define _SELP_N(N,V...) __SELP_N(N,V) #define _SELP_N_REF() _SELP_N -#define _SELP_1(s) serial_print(F(s "\n")); -#define _SELP_2(s,v) serial_echolnpair(F(s),v); +#define _SELP_1(s) SERIAL_ECHO(F(s "\n")); +#define _SELP_2(s,v) SERIAL_ECHOLN(F(s),v); #define _SELP_3(s,v,V...) _SEP_2(s,v); DEFER2(_SELP_N_REF)()(TWO_ARGS(V),V); #define SERIAL_ECHOLNPGM(V...) do{ EVAL(_SELP_N(TWO_ARGS(V),V)); }while(0) @@ -209,8 +211,8 @@ inline void serial_println(FSTR_P const fstr) { serial_println_P(FTOP(fstr)); } #define __SEP_N_P(N,V...) _SEP_##N##_P(V) #define _SEP_N_P(N,V...) __SEP_N_P(N,V) #define _SEP_N_P_REF() _SEP_N_P -#define _SEP_1_P(p) serial_print_P(p); -#define _SEP_2_P(p,v) serial_echopair_P(p,v); +#define _SEP_1_P(p) SERIAL_ECHO(FPSTR(p)); +#define _SEP_2_P(p,v) SERIAL_ECHO(FPSTR(p),v); #define _SEP_3_P(p,v,V...) _SEP_2_P(p,v); DEFER2(_SEP_N_P_REF)()(TWO_ARGS(V),V); #define SERIAL_ECHOPGM_P(V...) do{ EVAL(_SEP_N_P(TWO_ARGS(V),V)); }while(0) @@ -218,125 +220,25 @@ inline void serial_println(FSTR_P const fstr) { serial_println_P(FTOP(fstr)); } #define __SELP_N_P(N,V...) _SELP_##N##_P(V) #define _SELP_N_P(N,V...) __SELP_N_P(N,V) #define _SELP_N_P_REF() _SELP_N_P -#define _SELP_1_P(p) serial_println_P(p) -#define _SELP_2_P(p,v) serial_echolnpair_P(p,v) +#define _SELP_1_P(p) SERIAL_ECHOLN(FPSTR(p)); +#define _SELP_2_P(p,v) SERIAL_ECHOLN(FPSTR(p),v); #define _SELP_3_P(p,v,V...) { _SEP_2_P(p,v); DEFER2(_SELP_N_P_REF)()(TWO_ARGS(V),V); } #define SERIAL_ECHOLNPGM_P(V...) do{ EVAL(_SELP_N_P(TWO_ARGS(V),V)); }while(0) -// Print up to 20 pairs of values. Odd elements must be FSTR_P, F(), or FPSTR(). -#define __SEP_N_F(N,V...) _SEP_##N##_F(V) -#define _SEP_N_F(N,V...) __SEP_N_F(N,V) -#define _SEP_N_F_REF() _SEP_N_F -#define _SEP_1_F(p) serial_print(p); -#define _SEP_2_F(p,v) serial_echopair(p,v); -#define _SEP_3_F(p,v,V...) _SEP_2_F(p,v); DEFER2(_SEP_N_F_REF)()(TWO_ARGS(V),V); -#define SERIAL_ECHOF(V...) do{ EVAL(_SEP_N_F(TWO_ARGS(V),V)); }while(0) - -// Print up to 20 pairs of values followed by newline. Odd elements must be FSTR_P, F(), or FPSTR(). -#define __SELP_N_F(N,V...) _SELP_##N##_F(V) -#define _SELP_N_F(N,V...) __SELP_N_F(N,V) -#define _SELP_N_F_REF() _SELP_N_F -#define _SELP_1_F(p) serial_println(p) -#define _SELP_2_F(p,v) serial_echolnpair(p,v) -#define _SELP_3_F(p,v,V...) { _SEP_2_F(p,v); DEFER2(_SELP_N_F_REF)()(TWO_ARGS(V),V); } -#define SERIAL_ECHOLNF(V...) do{ EVAL(_SELP_N_F(TWO_ARGS(V),V)); }while(0) - -#ifdef AllowDifferentTypeInList - - inline void SERIAL_ECHOLIST_IMPL() {} - template - void SERIAL_ECHOLIST_IMPL(T && t) { SERIAL_IMPL.print(t); } - - template - void SERIAL_ECHOLIST_IMPL(T && t, Args && ... args) { - SERIAL_IMPL.print(t); - serial_print(F(", ")); - SERIAL_ECHOLIST_IMPL(args...); - } - - template - void SERIAL_ECHOLIST(FSTR_P const str, Args && ... args) { - SERIAL_IMPL.print(FTOP(str)); - SERIAL_ECHOLIST_IMPL(args...); - } - -#else // Optimization if the listed type are all the same (seems to be the case in the codebase so use that instead) - - template - void SERIAL_ECHOLIST(FSTR_P const fstr, Args && ... args) { - serial_print(fstr); - typename Private::first_type_of::type values[] = { args... }; - constexpr size_t argsSize = sizeof...(args); - for (size_t i = 0; i < argsSize; i++) { - if (i) serial_print(F(", ")); - SERIAL_IMPL.print(values[i]); - } - } - -#endif - -// SERIAL_ECHO_F prints a floating point value with optional precision -inline void SERIAL_ECHO_F(EnsureDouble x, int digit=2) { SERIAL_IMPL.print(x, digit); } - -#define SERIAL_ECHOPAIR_F_P(P,V...) do{ serial_print_P(P); SERIAL_ECHO_F(V); }while(0) -#define SERIAL_ECHOLNPAIR_F_P(P,V...) do{ SERIAL_ECHOPAIR_F_P(P,V); SERIAL_EOL(); }while(0) - -#define SERIAL_ECHOPAIR_F_F(S,V...) do{ serial_print(S); SERIAL_ECHO_F(V); }while(0) -#define SERIAL_ECHOLNPAIR_F_F(S,V...) do{ SERIAL_ECHOPAIR_F_F(S,V); SERIAL_EOL(); }while(0) - -#define SERIAL_ECHOPAIR_F(S,V...) SERIAL_ECHOPAIR_F_F(F(S),V) -#define SERIAL_ECHOLNPAIR_F(V...) do{ SERIAL_ECHOPAIR_F(V); SERIAL_EOL(); }while(0) - -#define SERIAL_ECHO_MSG(V...) do{ SERIAL_ECHO_START(); SERIAL_ECHOLNPGM(V); }while(0) -#define SERIAL_ERROR_MSG(V...) do{ SERIAL_ERROR_START(); SERIAL_ECHOLNPGM(V); }while(0) - -#define SERIAL_ECHO_SP(C) serial_spaces(C) +#define SERIAL_ECHO_MSG(V...) do{ SERIAL_ECHO_START(); SERIAL_ECHOLNPGM(V); }while(0) +#define SERIAL_ERROR_MSG(V...) do{ SERIAL_ERROR_START(); SERIAL_ECHOLNPGM(V); }while(0) +// Print a prefix, conditional string, and suffix +void serial_ternary(FSTR_P const pre, const bool onoff, FSTR_P const on, FSTR_P const off, FSTR_P const post=nullptr); +// Shorthand to put loose strings in PROGMEM #define SERIAL_ECHO_TERNARY(TF, PRE, ON, OFF, POST) serial_ternary(F(PRE), TF, F(ON), F(OFF), F(POST)) -#if SERIAL_FLOAT_PRECISION - #define SERIAL_DECIMAL(V) SERIAL_PRINT(V, SERIAL_FLOAT_PRECISION) -#else - #define SERIAL_DECIMAL(V) SERIAL_ECHO(V) -#endif +// Print up to 255 spaces +void SERIAL_ECHO_SP(uint8_t count); -// -// Functions for serial printing from PROGMEM. (Saves loads of SRAM.) -// -inline void serial_echopair_P(PGM_P const pstr, serial_char_t v) { serial_print_P(pstr); SERIAL_CHAR(v.c); } -inline void serial_echopair_P(PGM_P const pstr, float v) { serial_print_P(pstr); SERIAL_DECIMAL(v); } -inline void serial_echopair_P(PGM_P const pstr, double v) { serial_print_P(pstr); SERIAL_DECIMAL(v); } -//inline void serial_echopair_P(PGM_P const pstr, const char *v) { serial_print_P(pstr); SERIAL_ECHO(v); } -inline void serial_echopair_P(PGM_P const pstr, FSTR_P v) { serial_print_P(pstr); SERIAL_ECHOF(v); } - -// Default implementation for types without a specialization. Handles integers. -template -inline void serial_echopair_P(PGM_P const pstr, T v) { serial_print_P(pstr); SERIAL_ECHO(v); } - -// Add a newline. -template -inline void serial_echolnpair_P(PGM_P const pstr, T v) { serial_echopair_P(pstr, v); SERIAL_EOL(); } - -// Catch-all for __FlashStringHelper * -template -inline void serial_echopair(FSTR_P const fstr, T v) { serial_echopair_P(FTOP(fstr), v); } - -// Add a newline to the serial output -template -inline void serial_echolnpair(FSTR_P const fstr, T v) { serial_echolnpair_P(FTOP(fstr), v); } - -void serial_echo_start(); -void serial_error_start(); -inline void serial_ternary(FSTR_P const pre, const bool onoff, FSTR_P const on, FSTR_P const off, FSTR_P const post=nullptr) { - if (pre) serial_print(pre); - if (onoff && on) serial_print(on); - if (!onoff && off) serial_print(off); - if (post) serial_print(post); -} void serialprint_onoff(const bool onoff); void serialprintln_onoff(const bool onoff); void serialprint_truefalse(const bool tf); -void serial_spaces(uint8_t count); void serial_offset(const_float_t v, const uint8_t sp=0); // For v==0 draw space (sp==1) or plus (sp==2) void print_bin(const uint16_t val); diff --git a/Marlin/src/core/serial_base.h b/Marlin/src/core/serial_base.h index fa0a2298f7c0..a2f49417b7dc 100644 --- a/Marlin/src/core/serial_base.h +++ b/Marlin/src/core/serial_base.h @@ -79,7 +79,7 @@ struct EnsureDouble { operator double() { return a; } // If the compiler breaks on ambiguity here, it's likely because print(X, base) is called with X not a double/float, and // a base that's not a PrintBase value. This code is made to detect the error. You MUST set a base explicitly like this: - // SERIAL_PRINT(v, PrintBase::Hex) + //SERIAL_PRINT(v, PrintBase::Hex) EnsureDouble(double a) : a(a) {} EnsureDouble(float a) : a(a) {} }; @@ -169,7 +169,6 @@ struct SerialBase { FORCE_INLINE void print(unsigned int c, PrintBase base) { printNumber_unsigned(c, base); } FORCE_INLINE void print(unsigned long c, PrintBase base) { printNumber_unsigned(c, base); } - void print(EnsureDouble c, int digits) { printFloat(c, digits); } // Forward the call to the former's method @@ -180,7 +179,7 @@ struct SerialBase { void print(T c) { print(c, PrintBase::Dec); } void print(float c) { print(c, 2); } - void print(double c) { print(c, 2); } + void print(double c) { print(c, 2); } void println(char *s) { print(s); println(); } void println(const char *s) { print(s); println(); } diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index 8fcaa0000c61..3168322860ae 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -283,6 +283,36 @@ typedef IF 255)), uint16_t, uint8_t>::ty #define MMM_TO_MMS(MM_M) feedRate_t(static_cast(MM_M) / 60.0f) #define MMS_TO_MMM(MM_S) (static_cast(MM_S) * 60.0f) +// Packaged character for AS_CHAR macro and other usage +typedef struct SerialChar { char c; SerialChar(char n) : c(n) { } } serial_char_t; +#define AS_CHAR(C) serial_char_t(C) + +// Packaged types: float with precision and/or width; a repeated space/character +typedef struct WFloat { float value; char width; char prec; + WFloat(float v, char w, char p) : value(v), width(w), prec(p) {} + } w_float_t; +typedef struct PFloat { float value; char prec; + PFloat(float v, char p) : value(v), prec(p) {} + } p_float_t; +typedef struct RepChr { char asc; uint8_t count; + RepChr(char a, uint8_t c) : asc(a), count(c) {} + } repchr_t; +typedef struct Spaces { uint8_t count; + Spaces(uint8_t c) : count(c) {} + } spaces_t; + +#ifdef __AVR__ + typedef w_float_t w_double_t; + typedef p_float_t p_double_t; +#else + typedef struct WDouble { double value; char width; char prec; + WDouble(double v, char w, char p) : value(v), width(w), prec(p) {} + } w_double_t; + typedef struct PDouble { double value; char prec; + PDouble(double v, char p) : value(v), prec(p) {} + } p_double_t; +#endif + // // Coordinates structures for XY, XYZ, XYZE... // diff --git a/Marlin/src/core/utility.cpp b/Marlin/src/core/utility.cpp index 64f083e19718..8476591d4b0e 100644 --- a/Marlin/src/core/utility.cpp +++ b/Marlin/src/core/utility.cpp @@ -25,6 +25,10 @@ #include "../MarlinCore.h" #include "../module/temperature.h" +#if ENABLED(MARLIN_DEV_MODE) + MarlinError marlin_error_number; // Error Number - Marlin can beep X times periodically, display, and emit... +#endif + void safe_delay(millis_t ms) { while (ms > 50) { ms -= 50; @@ -95,9 +99,9 @@ void safe_delay(millis_t ms) { SERIAL_ECHOPGM(" (Aligned With"); if (probe.offset_xy.y > 0) - SERIAL_ECHOF(F(TERN(IS_SCARA, "-Distal", "-Back"))); + SERIAL_ECHO(F(TERN(IS_SCARA, "-Distal", "-Back"))); else if (probe.offset_xy.y < 0) - SERIAL_ECHOF(F(TERN(IS_SCARA, "-Proximal", "-Front"))); + SERIAL_ECHO(F(TERN(IS_SCARA, "-Proximal", "-Front"))); else if (probe.offset_xy.x != 0) SERIAL_ECHOPGM("-Center"); @@ -105,7 +109,7 @@ void safe_delay(millis_t ms) { #endif - SERIAL_ECHOF(probe.offset.z < 0 ? F("Below") : probe.offset.z > 0 ? F("Above") : F("Same Z as")); + SERIAL_ECHO(probe.offset.z < 0 ? F("Below") : probe.offset.z > 0 ? F("Above") : F("Same Z as")); SERIAL_ECHOLNPGM(" Nozzle)"); #endif diff --git a/Marlin/src/core/utility.h b/Marlin/src/core/utility.h index c4bb3c2a8a3d..891a4e43836b 100644 --- a/Marlin/src/core/utility.h +++ b/Marlin/src/core/utility.h @@ -92,3 +92,22 @@ const xyze_char_t axis_codes LOGICAL_AXIS_ARRAY('E', 'X', 'Y', 'Z', AXIS4_NAME, #define AXIS_CHAR(A) axis_codes[A] #define IAXIS_CHAR(A) iaxis_codes[A] #endif + +#if ENABLED(MARLIN_DEV_MODE) + enum MarlinError : uint8_t { + ERR_NONE, + ERR_STRING_RANGE, // A string buffer was too small to set the whole blob + ERR_ASSERTION, // An assertion was triggered + ERR_MALFUNCTION, + ERR_MEMORY_LEAK, + ERR_COMMS_SERIAL, + ERR_COMMS_SPI, + ERR_PLANNER_STARVED, + ERR_TMC_SHUTDOWN, + ERR_PROCEDURE_FAILED, + ERR_TOO_WACK, + ERR_PLAID_IN_SUMMER + }; + extern MarlinError marlin_error_number; // Error Number - Marlin can beep, display, and emit... + inline void error(const MarlinError err) { marlin_error_number = err; } +#endif diff --git a/Marlin/src/feature/bedlevel/bedlevel.cpp b/Marlin/src/feature/bedlevel/bedlevel.cpp index 17407eafb958..a76c6cdd269e 100644 --- a/Marlin/src/feature/bedlevel/bedlevel.cpp +++ b/Marlin/src/feature/bedlevel/bedlevel.cpp @@ -138,7 +138,7 @@ void reset_bed_level() { void print_2d_array(const uint8_t sx, const uint8_t sy, const uint8_t precision, const float *values) { #ifndef SCAD_MESH_OUTPUT for (uint8_t x = 0; x < sx; ++x) { - serial_spaces(precision + (x < 10 ? 3 : 2)); + SERIAL_ECHO_SP(precision + (x < 10 ? 3 : 2)); SERIAL_ECHO(x); } SERIAL_EOL(); @@ -158,7 +158,7 @@ void reset_bed_level() { const float offset = values[x * sy + y]; if (!isnan(offset)) { if (offset >= 0) SERIAL_CHAR('+'); - SERIAL_ECHO_F(offset, int(precision)); + SERIAL_ECHO(p_float_t(offset, precision)); } else { #ifdef SCAD_MESH_OUTPUT diff --git a/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.cpp b/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.cpp index 787827bb9bfc..f40cbccadd79 100644 --- a/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.cpp +++ b/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.cpp @@ -123,8 +123,7 @@ #endif // IS_CARTESIAN && !SEGMENT_LEVELED_MOVES void mesh_bed_leveling::report_mesh() { - SERIAL_ECHOPAIR_F(STRINGIFY(GRID_MAX_POINTS_X) "x" STRINGIFY(GRID_MAX_POINTS_Y) " mesh. Z offset: ", z_offset, 5); - SERIAL_ECHOLNPGM("\nMeasured points:"); + SERIAL_ECHOLN(F(STRINGIFY(GRID_MAX_POINTS_X) "x" STRINGIFY(GRID_MAX_POINTS_Y) " mesh. Z offset: "), p_float_t(z_offset, 5), F("\nMeasured points:")); print_2d_array(GRID_MAX_POINTS_X, GRID_MAX_POINTS_Y, 5, z_values[0]); } diff --git a/Marlin/src/feature/bedlevel/ubl/ubl.cpp b/Marlin/src/feature/bedlevel/ubl/ubl.cpp index b99334795d13..0228bd247ebd 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl.cpp +++ b/Marlin/src/feature/bedlevel/ubl/ubl.cpp @@ -51,8 +51,7 @@ void unified_bed_leveling::report_current_mesh() { GRID_LOOP(x, y) if (!isnan(z_values[x][y])) { SERIAL_ECHO_START(); - SERIAL_ECHOPGM(" M421 I", x, " J", y); - SERIAL_ECHOLNPAIR_F_P(SP_Z_STR, z_values[x][y], 4); + SERIAL_ECHOLN(F(" M421 I"), x, F(" J"), y, FPSTR(SP_Z_STR), p_float_t(z_values[x][y], 4)); serial_delay(75); // Prevent Printrun from exploding } } @@ -211,10 +210,10 @@ void unified_bed_leveling::display_map(const uint8_t map_type) { // TODO: Display on Graphical LCD } else if (isnan(f)) - SERIAL_ECHOF(human ? F(" . ") : F("NAN")); + SERIAL_ECHO(human ? F(" . ") : F("NAN")); else if (human || csv) { if (human && f >= 0) SERIAL_CHAR(f > 0 ? '+' : ' '); // Display sign also for positive numbers (' ' for 0) - SERIAL_DECIMAL(f); // Positive: 5 digits, Negative: 6 digits + SERIAL_ECHO(p_float_t(f, 3)); // Positive: 5 digits, Negative: 6 digits } if (csv && i < (GRID_MAX_POINTS_X) - 1) SERIAL_CHAR('\t'); diff --git a/Marlin/src/feature/bedlevel/ubl/ubl.h b/Marlin/src/feature/bedlevel/ubl/ubl.h index c9bc7974296c..f751ce40d0d2 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl.h +++ b/Marlin/src/feature/bedlevel/ubl/ubl.h @@ -279,10 +279,8 @@ class unified_bed_leveling { if (DEBUGGING(MESH_ADJUST)) DEBUG_ECHOLNPGM("??? Yikes! NAN in "); } - if (DEBUGGING(MESH_ADJUST)) { - DEBUG_ECHOPGM("get_z_correction(", rx0, ", ", ry0); - DEBUG_ECHOLNPAIR_F(") => ", z0, 6); - } + if (DEBUGGING(MESH_ADJUST)) + DEBUG_ECHOLN(F("get_z_correction("), rx0, F(", "), ry0, F(") => "), p_float_t(z0, 6)); return z0; } diff --git a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp index 551277c35d1c..1c43af1884a7 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp +++ b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp @@ -458,12 +458,8 @@ void unified_bed_leveling::G29() { invalidate(); SERIAL_ECHOLNPGM("Mesh invalidated. Probing mesh."); } - if (param.V_verbosity > 1) { - SERIAL_ECHOPGM("Probing around (", param.XY_pos.x); - SERIAL_CHAR(','); - SERIAL_DECIMAL(param.XY_pos.y); - SERIAL_ECHOLNPGM(").\n"); - } + if (param.V_verbosity > 1) + SERIAL_ECHOLN(F("Probing around ("), param.XY_pos.x, AS_CHAR(','), param.XY_pos.y, F(").\n")); probe_entire_mesh(param.XY_pos, parser.seen_test('T'), parser.seen_test('E'), parser.seen_test('U')); report_current_position(); @@ -722,10 +718,10 @@ void unified_bed_leveling::adjust_mesh_to_mean(const bool cflag, const_float_t o sum_of_diff_squared += sq(z_values[x][y] - mean); SERIAL_ECHOLNPGM("# of samples: ", n); - SERIAL_ECHOLNPAIR_F("Mean Mesh Height: ", mean, 6); + SERIAL_ECHOLNPGM("Mean Mesh Height: ", p_float_t(mean, 6)); const float sigma = SQRT(sum_of_diff_squared / (n + 1)); - SERIAL_ECHOLNPAIR_F("Standard Deviation: ", sigma, 6); + SERIAL_ECHOLNPGM("Standard Deviation: ", p_float_t(sigma, 6)); if (cflag) GRID_LOOP(x, y) @@ -924,10 +920,8 @@ void set_message_with_feedback(FSTR_P const fstr) { const float thickness = ABS(z1 - z2); - if (param.V_verbosity > 1) { - SERIAL_ECHOPAIR_F("Business Card is ", thickness, 4); - SERIAL_ECHOLNPGM("mm thick."); - } + if (param.V_verbosity > 1) + SERIAL_ECHOLNPGM("Business Card is ", p_float_t(thickness, 4), "mm thick."); restore_ubl_active_state_and_leave(); @@ -993,7 +987,7 @@ void set_message_with_feedback(FSTR_P const fstr) { TERN_(EXTENSIBLE_UI, ExtUI::onMeshUpdate(location, z_values[lpos.x][lpos.y])); if (param.V_verbosity > 2) - SERIAL_ECHOLNPAIR_F("Mesh Point Measured at: ", z_values[lpos.x][lpos.y], 6); + SERIAL_ECHOLNPGM("Mesh Point Measured at: ", p_float_t(z_values[lpos.x][lpos.y], 6)); SERIAL_FLUSH(); // Prevent host M105 buffer overrun. } while (location.valid()); @@ -1504,7 +1498,7 @@ void unified_bed_leveling::smart_fill_mesh() { measured_z -= TERN(UBL_TILT_ON_MESH_POINTS_3POINT, z_values[cpos[i].pos.x][cpos[i].pos.y], get_z_correction(points[i])); TERN_(VALIDATE_MESH_TILT, gotz[i] = measured_z); - if (param.V_verbosity > 3) { serial_spaces(16); SERIAL_ECHOLNPGM("Corrected_Z=", measured_z); } + if (param.V_verbosity > 3) { SERIAL_ECHO_SP(16); SERIAL_ECHOLNPGM("Corrected_Z=", measured_z); } incremental_LSF(&lsf_results, points[i], measured_z); } @@ -1562,26 +1556,28 @@ void unified_bed_leveling::smart_fill_mesh() { #if ENABLED(DEBUG_LEVELING_FEATURE) if (DEBUGGING(LEVELING)) { - const xy_pos_t lpos = rpos.asLogical(); #if ENABLED(UBL_TILT_ON_MESH_POINTS) const xy_pos_t oldLpos = oldRpos.asLogical(); - DEBUG_ECHOPGM("Calculated point: ("); DEBUG_ECHO_F(oldRpos.x, 7); DEBUG_CHAR(','); DEBUG_ECHO_F(oldRpos.y, 7); - DEBUG_ECHOPAIR_F(") logical: (", oldLpos.x, 7); DEBUG_CHAR(','); DEBUG_ECHO_F(oldLpos.y, 7); - DEBUG_ECHOPGM(")\nSelected mesh point: "); + DEBUG_ECHO(F("Calculated point: ("), p_float_t(oldRpos.x, 7), AS_CHAR(','), p_float_t(oldRpos.y, 7), + F(") logical: ("), p_float_t(oldLpos.x, 7), AS_CHAR(','), p_float_t(oldLpos.y, 7), + F(")\nSelected mesh point: ") + ); #endif - DEBUG_CHAR('('); DEBUG_ECHO_F(rpos.x, 7); DEBUG_CHAR(','); DEBUG_ECHO_F(rpos.y, 7); - DEBUG_ECHOPAIR_F(") logical: (", lpos.x, 7); DEBUG_CHAR(','); DEBUG_ECHO_F(lpos.y, 7); - DEBUG_ECHOPAIR_F(") measured: ", measured_z, 7); - DEBUG_ECHOPAIR_F(" correction: ", zcorr, 7); + const xy_pos_t lpos = rpos.asLogical(); + DEBUG_ECHO( AS_CHAR('('), p_float_t(rpos.x, 7), AS_CHAR(','), p_float_t(rpos.y, 7), + F(") logical: ("), p_float_t(lpos.x, 7), AS_CHAR(','), p_float_t(lpos.y, 7), + F(") measured: "), p_float_t(measured_z, 7), + F(" correction: "), p_float_t(zcorr, 7) + ); } #endif measured_z -= zcorr; - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPAIR_F(" final >>>---> ", measured_z, 7); + if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM(" final >>>---> ", p_float_t(measured_z, 7)); if (param.V_verbosity > 3) { - serial_spaces(16); + SERIAL_ECHO_SP(16); SERIAL_ECHOLNPGM("Corrected_Z=", measured_z); } incremental_LSF(&lsf_results, rpos, measured_z); @@ -1597,20 +1593,14 @@ void unified_bed_leveling::smart_fill_mesh() { probe.move_z_after_probing(); if (abort_flag || finish_incremental_LSF(&lsf_results)) { - SERIAL_ECHOPGM("Could not complete LSF!"); + SERIAL_ECHOLNPGM("Could not complete LSF!"); return; } vector_3 normal = vector_3(lsf_results.A, lsf_results.B, 1).get_normal(); - if (param.V_verbosity > 2) { - SERIAL_ECHOPAIR_F("bed plane normal = [", normal.x, 7); - SERIAL_CHAR(','); - SERIAL_ECHO_F(normal.y, 7); - SERIAL_CHAR(','); - SERIAL_ECHO_F(normal.z, 7); - SERIAL_ECHOLNPGM("]"); - } + if (param.V_verbosity > 2) + SERIAL_ECHOLN(F("bed plane normal = ["), p_float_t(normal.x, 7), AS_CHAR(','), p_float_t(normal.y, 7), AS_CHAR(','), p_float_t(normal.z, 7), AS_CHAR(']')); matrix_3x3 rotation = matrix_3x3::create_look_at(vector_3(lsf_results.A, lsf_results.B, 1)); @@ -1618,24 +1608,14 @@ void unified_bed_leveling::smart_fill_mesh() { float mx = get_mesh_x(i), my = get_mesh_y(j), mz = z_values[i][j]; if (DEBUGGING(LEVELING)) { - DEBUG_ECHOPAIR_F("before rotation = [", mx, 7); - DEBUG_CHAR(','); - DEBUG_ECHO_F(my, 7); - DEBUG_CHAR(','); - DEBUG_ECHO_F(mz, 7); - DEBUG_ECHOPGM("] ---> "); + DEBUG_ECHOLN(F("before rotation = ["), p_float_t(mx, 7), AS_CHAR(','), p_float_t(my, 7), AS_CHAR(','), p_float_t(mz, 7), F("] ---> ")); DEBUG_DELAY(20); } rotation.apply_rotation_xyz(mx, my, mz); if (DEBUGGING(LEVELING)) { - DEBUG_ECHOPAIR_F("after rotation = [", mx, 7); - DEBUG_CHAR(','); - DEBUG_ECHO_F(my, 7); - DEBUG_CHAR(','); - DEBUG_ECHO_F(mz, 7); - DEBUG_ECHOLNPGM("]"); + DEBUG_ECHOLN(F("after rotation = ["), p_float_t(mx, 7), AS_CHAR(','), p_float_t(my, 7), AS_CHAR(','), p_float_t(mz, 7), F("] ---> ")); DEBUG_DELAY(20); } @@ -1645,17 +1625,9 @@ void unified_bed_leveling::smart_fill_mesh() { if (DEBUGGING(LEVELING)) { rotation.debug(F("rotation matrix:\n")); - DEBUG_ECHOPAIR_F("LSF Results A=", lsf_results.A, 7); - DEBUG_ECHOPAIR_F(" B=", lsf_results.B, 7); - DEBUG_ECHOLNPAIR_F(" D=", lsf_results.D, 7); + DEBUG_ECHOLN(F("LSF Results A="), p_float_t(lsf_results.A, 7), F(" B="), p_float_t(lsf_results.B, 7), F(" D="), p_float_t(lsf_results.D, 7)); DEBUG_DELAY(55); - - DEBUG_ECHOPAIR_F("bed plane normal = [", normal.x, 7); - DEBUG_CHAR(','); - DEBUG_ECHO_F(normal.y, 7); - DEBUG_CHAR(','); - DEBUG_ECHO_F(normal.z, 7); - DEBUG_ECHOLNPGM("]"); + DEBUG_ECHOLN(F("bed plane normal = ["), p_float_t(normal.x, 7), AS_CHAR(','), p_float_t(normal.y, 7), AS_CHAR(','), p_float_t(normal.z, 7), AS_CHAR(']')); DEBUG_EOL(); /** @@ -1672,21 +1644,17 @@ void unified_bed_leveling::smart_fill_mesh() { return normal.x * pos.x + normal.y * pos.y + zadd; }; auto debug_pt = [](const int num, const xy_pos_t &pos, const_float_t zadd) { - d_from(); DEBUG_ECHOPGM("Point ", num, ":"); - DEBUG_ECHO_F(normed(pos, zadd), 6); - DEBUG_ECHOLNPAIR_F(" Z error = ", zadd - get_z_correction(pos), 6); + d_from(); + DEBUG_ECHOLN(F("Point "), num, AS_CHAR(':'), p_float_t(normed(pos, zadd), 6), F(" Z error = "), p_float_t(zadd - get_z_correction(pos), 6)); }; debug_pt(1, probe_pt[0], normal.z * gotz[0]); debug_pt(2, probe_pt[1], normal.z * gotz[1]); debug_pt(3, probe_pt[2], normal.z * gotz[2]); #if ENABLED(Z_SAFE_HOMING) constexpr xy_float_t safe_xy = { Z_SAFE_HOMING_X_POINT, Z_SAFE_HOMING_Y_POINT }; - d_from(); DEBUG_ECHOPGM("safe home with Z="); - DEBUG_ECHOLNPAIR_F("0 : ", normed(safe_xy, 0), 6); - d_from(); DEBUG_ECHOPGM("safe home with Z="); - DEBUG_ECHOLNPAIR_F("mesh value ", normed(safe_xy, get_z_correction(safe_xy)), 6); - DEBUG_ECHOPGM(" Z error = (", Z_SAFE_HOMING_X_POINT, ",", Z_SAFE_HOMING_Y_POINT); - DEBUG_ECHOLNPAIR_F(") = ", get_z_correction(safe_xy), 6); + d_from(); DEBUG_ECHOLN(F("safe home with Z="), F("0 : "), p_float_t(normed(safe_xy, 0), 6)); + d_from(); DEBUG_ECHOLN(F("safe home with Z="), F("mesh value "), p_float_t(normed(safe_xy, get_z_correction(safe_xy)), 6)); + DEBUG_ECHO(F(" Z error = ("), Z_SAFE_HOMING_X_POINT, AS_CHAR(','), Z_SAFE_HOMING_Y_POINT, F(") = "), p_float_t(get_z_correction(safe_xy), 6)); #endif #endif } // DEBUGGING(LEVELING) @@ -1734,7 +1702,7 @@ void unified_bed_leveling::smart_fill_mesh() { } } if (finish_incremental_LSF(&lsf_results)) { - SERIAL_ECHOLNPGM("Insufficient data"); + SERIAL_ECHOLNPGM(" Insufficient data"); return; } const float ez = -lsf_results.D - lsf_results.A * ppos.x - lsf_results.B * ppos.y; @@ -1745,7 +1713,7 @@ void unified_bed_leveling::smart_fill_mesh() { } } - SERIAL_ECHOLNPGM("done"); + SERIAL_ECHOLNPGM(" done."); } #endif // UBL_G29_P31 @@ -1758,20 +1726,19 @@ void unified_bed_leveling::smart_fill_mesh() { report_state(); if (storage_slot == -1) - SERIAL_ECHOPGM("No Mesh Loaded."); + SERIAL_ECHOLNPGM("No Mesh Loaded."); else - SERIAL_ECHOPGM("Mesh ", storage_slot, " Loaded."); - SERIAL_EOL(); + SERIAL_ECHOLNPGM("Mesh ", storage_slot, " Loaded."); serial_delay(50); #if ENABLED(ENABLE_LEVELING_FADE_HEIGHT) - SERIAL_ECHOLNPAIR_F("Fade Height M420 Z", planner.z_fade_height, 4); + SERIAL_ECHOLN(F("Fade Height M420 Z"), p_float_t(planner.z_fade_height, 4)); #endif adjust_mesh_to_mean(param.C_seen, param.C_constant); #if HAS_BED_PROBE - SERIAL_ECHOLNPAIR_F("Probe Offset M851 Z", probe.offset.z, 7); + SERIAL_ECHOLNPGM("Probe Offset M851 Z", p_float_t(probe.offset.z, 7)); #endif SERIAL_ECHOLNPGM("MESH_MIN_X " STRINGIFY(MESH_MIN_X) "=", MESH_MIN_X); serial_delay(50); @@ -1785,16 +1752,14 @@ void unified_bed_leveling::smart_fill_mesh() { SERIAL_ECHOPGM("X-Axis Mesh Points at: "); for (uint8_t i = 0; i < GRID_MAX_POINTS_X; ++i) { - SERIAL_ECHO_F(LOGICAL_X_POSITION(get_mesh_x(i)), 3); - SERIAL_ECHOPGM(" "); + SERIAL_ECHO(p_float_t(LOGICAL_X_POSITION(get_mesh_x(i)), 3), F(" ")); serial_delay(25); } SERIAL_EOL(); SERIAL_ECHOPGM("Y-Axis Mesh Points at: "); for (uint8_t i = 0; i < GRID_MAX_POINTS_Y; ++i) { - SERIAL_ECHO_F(LOGICAL_Y_POSITION(get_mesh_y(i)), 3); - SERIAL_ECHOPGM(" "); + SERIAL_ECHO(p_float_t(LOGICAL_Y_POSITION(get_mesh_y(i)), 3), F(" ")); serial_delay(25); } SERIAL_EOL(); @@ -1806,23 +1771,21 @@ void unified_bed_leveling::smart_fill_mesh() { SERIAL_EOL(); serial_delay(50); - #if ENABLED(UBL_DEVEL_DEBUGGING) - SERIAL_ECHOLNPGM("ubl_state_at_invocation :", ubl_state_at_invocation, "\nubl_state_recursion_chk :", ubl_state_recursion_chk); - serial_delay(50); + SERIAL_ECHOLNPGM("ubl_state_at_invocation :", ubl_state_at_invocation, "\nubl_state_recursion_chk :", ubl_state_recursion_chk); + serial_delay(50); - SERIAL_ECHOLNPGM("Meshes go from ", hex_address((void*)settings.meshes_start_index()), " to ", hex_address((void*)settings.meshes_end_index())); - serial_delay(50); + SERIAL_ECHOLNPGM("Meshes go from ", hex_address((void*)settings.meshes_start_index()), " to ", hex_address((void*)settings.meshes_end_index())); + serial_delay(50); - SERIAL_ECHOLNPGM("sizeof(ubl) : ", sizeof(ubl)); SERIAL_EOL(); - SERIAL_ECHOLNPGM("z_value[][] size: ", sizeof(z_values)); SERIAL_EOL(); - serial_delay(25); + SERIAL_ECHOLNPGM("sizeof(ubl) : ", sizeof(ubl)); SERIAL_EOL(); + SERIAL_ECHOLNPGM("z_value[][] size: ", sizeof(z_values)); SERIAL_EOL(); + serial_delay(25); - SERIAL_ECHOLNPGM("EEPROM free for UBL: ", hex_address((void*)(settings.meshes_end_index() - settings.meshes_start_index()))); - serial_delay(50); + SERIAL_ECHOLNPGM("EEPROM free for UBL: ", hex_address((void*)(settings.meshes_end_index() - settings.meshes_start_index()))); + serial_delay(50); - SERIAL_ECHOLNPGM("EEPROM can hold ", settings.calc_num_meshes(), " meshes.\n"); - serial_delay(25); - #endif // UBL_DEVEL_DEBUGGING + SERIAL_ECHOLNPGM("EEPROM can hold ", settings.calc_num_meshes(), " meshes.\n"); + serial_delay(25); if (!sanity_check()) { echo_name(); diff --git a/Marlin/src/feature/encoder_i2c.cpp b/Marlin/src/feature/encoder_i2c.cpp index 1c01e1c23b5e..a367cea48dc6 100644 --- a/Marlin/src/feature/encoder_i2c.cpp +++ b/Marlin/src/feature/encoder_i2c.cpp @@ -106,10 +106,7 @@ void I2CPositionEncoder::update() { SERIAL_ECHOLNPGM("Current position is ", pos); SERIAL_ECHOLNPGM("Position in encoder ticks is ", positionInTicks); SERIAL_ECHOLNPGM("New zero-offset of ", zeroOffset); - SERIAL_ECHOPGM("New position reads as ", get_position()); - SERIAL_CHAR('('); - SERIAL_DECIMAL(mm_from_count(get_position())); - SERIAL_ECHOLNPGM(")"); + SERIAL_ECHOLN(F("New position reads as "), get_position(), AS_CHAR('('), mm_from_count(get_position()), AS_CHAR(')')); #endif } #endif diff --git a/Marlin/src/feature/host_actions.cpp b/Marlin/src/feature/host_actions.cpp index 235253b5a345..cc5face2594d 100644 --- a/Marlin/src/feature/host_actions.cpp +++ b/Marlin/src/feature/host_actions.cpp @@ -41,8 +41,7 @@ HostUI hostui; void HostUI::action(FSTR_P const fstr, const bool eol) { PORT_REDIRECT(SerialMask::All); - SERIAL_ECHOPGM("//action:"); - SERIAL_ECHOF(fstr); + SERIAL_ECHOPGM("//action:", fstr); if (eol) SERIAL_EOL(); } @@ -107,7 +106,7 @@ void HostUI::action(FSTR_P const fstr, const bool eol) { void HostUI::prompt(FSTR_P const ptype, const bool eol/*=true*/) { PORT_REDIRECT(SerialMask::All); action(F("prompt_"), false); - SERIAL_ECHOF(ptype); + SERIAL_ECHO(ptype); if (eol) SERIAL_EOL(); } diff --git a/Marlin/src/feature/max7219.cpp b/Marlin/src/feature/max7219.cpp index d3328855f444..991f3e79db95 100644 --- a/Marlin/src/feature/max7219.cpp +++ b/Marlin/src/feature/max7219.cpp @@ -136,9 +136,7 @@ uint8_t Max7219::suspended; // = 0; void Max7219::error(FSTR_P const func, const int32_t v1, const int32_t v2/*=-1*/) { #if ENABLED(MAX7219_ERRORS) - SERIAL_ECHOPGM("??? Max7219::"); - SERIAL_ECHOF(func, AS_CHAR('(')); - SERIAL_ECHO(v1); + SERIAL_ECHO(F("??? Max7219::"), func, AS_CHAR('('), v1); if (v2 > 0) SERIAL_ECHOPGM(", ", v2); SERIAL_CHAR(')'); SERIAL_EOL(); diff --git a/Marlin/src/feature/meatpack.cpp b/Marlin/src/feature/meatpack.cpp index 07ff41e5be22..5d2d112967df 100644 --- a/Marlin/src/feature/meatpack.cpp +++ b/Marlin/src/feature/meatpack.cpp @@ -171,7 +171,7 @@ void MeatPack::report_state() { // should not contain the "PV' substring, as this is used to indicate protocol version SERIAL_ECHOPGM("[MP] " MeatPack_ProtocolVersion " "); serialprint_onoff(TEST(state, MPConfig_Bit_Active)); - SERIAL_ECHOF(TEST(state, MPConfig_Bit_NoSpaces) ? F(" NSP\n") : F(" ESP\n")); + SERIAL_ECHO(TEST(state, MPConfig_Bit_NoSpaces) ? F(" NSP\n") : F(" ESP\n")); } /** diff --git a/Marlin/src/feature/mixing.cpp b/Marlin/src/feature/mixing.cpp index 1ce489224813..6cf59fdb56ff 100644 --- a/Marlin/src/feature/mixing.cpp +++ b/Marlin/src/feature/mixing.cpp @@ -60,10 +60,7 @@ void Mixer::normalize(const uint8_t tool_index) { } #ifdef MIXER_NORMALIZER_DEBUG SERIAL_ECHOPGM("Mixer: Old relation : [ "); - MIXER_STEPPER_LOOP(i) { - SERIAL_DECIMAL(collector[i] / csum); - SERIAL_CHAR(' '); - } + MIXER_STEPPER_LOOP(i) SERIAL_ECHO(collector[i] / csum, AS_CHAR(' ')); SERIAL_ECHOLNPGM("]"); #endif @@ -75,16 +72,12 @@ void Mixer::normalize(const uint8_t tool_index) { csum = 0; SERIAL_ECHOPGM("Mixer: Normalize to : [ "); MIXER_STEPPER_LOOP(i) { - SERIAL_ECHO(uint16_t(color[tool_index][i])); - SERIAL_CHAR(' '); + SERIAL_ECHO(uint16_t(color[tool_index][i]), AS_CHAR(' ')); csum += color[tool_index][i]; } SERIAL_ECHOLNPGM("]"); SERIAL_ECHOPGM("Mixer: New relation : [ "); - MIXER_STEPPER_LOOP(i) { - SERIAL_ECHO_F(uint16_t(color[tool_index][i]) / csum, 3); - SERIAL_CHAR(' '); - } + MIXER_STEPPER_LOOP(i) SERIAL_ECHO(p_float_t(uint16_t(color[tool_index][i]) / csum, 3), AS_CHAR(' ')); SERIAL_ECHOLNPGM("]"); #endif diff --git a/Marlin/src/feature/mixing.h b/Marlin/src/feature/mixing.h index a43b0599447a..c5c60a5e9f68 100644 --- a/Marlin/src/feature/mixing.h +++ b/Marlin/src/feature/mixing.h @@ -137,11 +137,11 @@ class Mixer { MIXER_STEPPER_LOOP(i) tcolor[i] = mix[i] * scale; #ifdef MIXER_NORMALIZER_DEBUG - SERIAL_ECHOPGM("Mix [ "); - SERIAL_ECHOLIST_N(MIXING_STEPPERS, mix[0], mix[1], mix[2], mix[3], mix[4], mix[5]); - SERIAL_ECHOPGM(" ] to Color [ "); - SERIAL_ECHOLIST_N(MIXING_STEPPERS, tcolor[0], tcolor[1], tcolor[2], tcolor[3], tcolor[4], tcolor[5]); - SERIAL_ECHOLNPGM(" ]"); + SERIAL_ECHOLN( + F("Mix [ "), LIST_N(MIXING_STEPPERS, mix[0], mix[1], mix[2], mix[3], mix[4], mix[5]), + F(" ] to Color [ "), LIST_N(MIXING_STEPPERS, tcolor[0], tcolor[1], tcolor[2], tcolor[3], tcolor[4], tcolor[5]), + F(" ]") + ); #endif } @@ -151,11 +151,10 @@ class Mixer { MIXER_STEPPER_LOOP(i) mix[i] = mixer_perc_t(100.0f * color[j][i] / ctot + 0.5f); #ifdef MIXER_NORMALIZER_DEBUG - SERIAL_ECHOPGM("V-tool ", j, " [ "); - SERIAL_ECHOLIST_N(MIXING_STEPPERS, color[j][0], color[j][1], color[j][2], color[j][3], color[j][4], color[j][5]); - SERIAL_ECHOPGM(" ] to Mix [ "); - SERIAL_ECHOLIST_N(MIXING_STEPPERS, mix[0], mix[1], mix[2], mix[3], mix[4], mix[5]); - SERIAL_ECHOLNPGM(" ]"); + SERIAL_ECHOLN(F("V-tool "), j, + F(" [ "), LIST_N(MIXING_STEPPERS, color[j][0], color[j][1], color[j][2], color[j][3], color[j][4], color[j][5]), + F(" ] to Mix [ "), LIST_N(MIXING_STEPPERS, mix[0], mix[1], mix[2], mix[3], mix[4], mix[5]), F(" ]") + ); #endif } @@ -196,11 +195,10 @@ class Mixer { MIXER_STEPPER_LOOP(i) mix[i] = (mixer_perc_t)CEIL(100.0f * gradient.color[i] / ctot); #ifdef MIXER_NORMALIZER_DEBUG - SERIAL_ECHOPGM("Gradient [ "); - SERIAL_ECHOLIST_N(MIXING_STEPPERS, gradient.color[0], gradient.color[1], gradient.color[2], gradient.color[3], gradient.color[4], gradient.color[5]); - SERIAL_ECHOPGM(" ] to Mix [ "); - SERIAL_ECHOLIST_N(MIXING_STEPPERS, mix[0], mix[1], mix[2], mix[3], mix[4], mix[5]); - SERIAL_ECHOLNPGM(" ]"); + SERIAL_ECHOLN( + F("Gradient [ "), LIST_N(MIXING_STEPPERS, gradient.color[0], gradient.color[1], gradient.color[2], gradient.color[3], gradient.color[4], gradient.color[5]), + F(" ] to Mix [ "), LIST_N(MIXING_STEPPERS, mix[0], mix[1], mix[2], mix[3], mix[4], mix[5]), F(" ]") + ); #endif } diff --git a/Marlin/src/feature/mmu/mmu2.cpp b/Marlin/src/feature/mmu/mmu2.cpp index ea1a33ddaad4..19aae7b7d747 100644 --- a/Marlin/src/feature/mmu/mmu2.cpp +++ b/Marlin/src/feature/mmu/mmu2.cpp @@ -286,7 +286,7 @@ void MMU2::mmu_loop() { sscanf(rx_buffer, "%hhuok\n", &finda); // This is super annoying. Only activate if necessary - // if (finda_runout_valid) DEBUG_ECHOLNPAIR_F("MMU <= 'P0'\nMMU => ", finda, 6); + //if (finda_runout_valid) DEBUG_ECHOLNPGM("MMU <= 'P0'\nMMU => ", p_float_t(finda, 6)); if (!finda && finda_runout_valid) filament_runout(); if (cmd == MMU_CMD_NONE) ready = true; diff --git a/Marlin/src/feature/pause.cpp b/Marlin/src/feature/pause.cpp index 66f7ad15edfd..02287a51b8f1 100644 --- a/Marlin/src/feature/pause.cpp +++ b/Marlin/src/feature/pause.cpp @@ -502,7 +502,7 @@ void show_continue_prompt(const bool is_reload) { ui.pause_show_message(is_reload ? PAUSE_MESSAGE_INSERT : PAUSE_MESSAGE_WAITING); SERIAL_ECHO_START(); - SERIAL_ECHOF(is_reload ? F(_PMSG(STR_FILAMENT_CHANGE_INSERT) "\n") : F(_PMSG(STR_FILAMENT_CHANGE_WAIT) "\n")); + SERIAL_ECHO(is_reload ? F(_PMSG(STR_FILAMENT_CHANGE_INSERT) "\n") : F(_PMSG(STR_FILAMENT_CHANGE_WAIT) "\n")); } void wait_for_confirmation(const bool is_reload/*=false*/, const int8_t max_beep_count/*=0*/ DXC_ARGS) { diff --git a/Marlin/src/feature/powerloss.cpp b/Marlin/src/feature/powerloss.cpp index af85a1644862..a8dfadc1f6c8 100644 --- a/Marlin/src/feature/powerloss.cpp +++ b/Marlin/src/feature/powerloss.cpp @@ -613,14 +613,13 @@ void PrintJobRecovery::resume() { #if ENABLED(DEBUG_POWER_LOSS_RECOVERY) void PrintJobRecovery::debug(FSTR_P const prefix) { - DEBUG_ECHOF(prefix); - DEBUG_ECHOLNPGM(" Job Recovery Info...\nvalid_head:", info.valid_head, " valid_foot:", info.valid_foot); + DEBUG_ECHOLN(prefix, F(" Job Recovery Info...\nvalid_head:"), info.valid_head, F(" valid_foot:"), info.valid_foot); if (info.valid_head) { if (info.valid_head == info.valid_foot) { DEBUG_ECHOPGM("current_position: "); LOOP_LOGICAL_AXES(i) { if (i) DEBUG_CHAR(','); - DEBUG_DECIMAL(info.current_position[i]); + DEBUG_ECHO(info.current_position[i]); } DEBUG_EOL(); @@ -638,7 +637,7 @@ void PrintJobRecovery::resume() { DEBUG_ECHOPGM("home_offset: "); LOOP_NUM_AXES(i) { if (i) DEBUG_CHAR(','); - DEBUG_DECIMAL(info.home_offset[i]); + DEBUG_ECHO(info.home_offset[i]); } DEBUG_EOL(); #endif @@ -647,7 +646,7 @@ void PrintJobRecovery::resume() { DEBUG_ECHOPGM("position_shift: "); LOOP_NUM_AXES(i) { if (i) DEBUG_CHAR(','); - DEBUG_DECIMAL(info.position_shift[i]); + DEBUG_ECHO(info.position_shift[i]); } DEBUG_EOL(); #endif diff --git a/Marlin/src/feature/probe_temp_comp.cpp b/Marlin/src/feature/probe_temp_comp.cpp index 2b362a2186b6..f640a9fd2f71 100644 --- a/Marlin/src/feature/probe_temp_comp.cpp +++ b/Marlin/src/feature/probe_temp_comp.cpp @@ -87,14 +87,9 @@ void ProbeTempComp::print_offsets() { for (uint8_t s = 0; s < TSI_COUNT; ++s) { celsius_t temp = cali_info[s].start_temp; for (int16_t i = -1; i < cali_info[s].measurements; ++i) { - SERIAL_ECHOF( - TERN_(PTC_BED, s == TSI_BED ? F("Bed") :) - TERN_(PTC_HOTEND, s == TSI_EXT ? F("Extruder") :) - F("Probe") - ); - SERIAL_ECHOLNPGM( - " temp: ", temp, - "C; Offset: ", i < 0 ? 0.0f : sensor_z_offsets[s][i], " um" + SERIAL_ECHOLN( + TERN_(PTC_BED, s == TSI_BED ? F("Bed") :) TERN_(PTC_HOTEND, s == TSI_EXT ? F("Extruder") :) F("Probe"), + F(" temp: "), temp, F("C; Offset: "), i < 0 ? 0.0f : sensor_z_offsets[s][i], F(" um") ); temp += cali_info[s].temp_resolution; } diff --git a/Marlin/src/feature/runout.h b/Marlin/src/feature/runout.h index 2b3516a8b49e..a001459e9d99 100644 --- a/Marlin/src/feature/runout.h +++ b/Marlin/src/feature/runout.h @@ -303,7 +303,7 @@ class FilamentSensorBase { static uint8_t was_out; // = 0 if (out != TEST(was_out, s)) { TBI(was_out, s); - SERIAL_ECHOLNF(F("Filament Sensor "), AS_DIGIT(s), out ? F(" OUT") : F(" IN")); + SERIAL_ECHOLN(F("Filament Sensor "), AS_DIGIT(s), out ? F(" OUT") : F(" IN")); } #endif } @@ -369,10 +369,10 @@ class FilamentSensorBase { if (ELAPSED(ms, t)) { t = millis() + 1000UL; for (uint8_t i = 0; i < NUM_RUNOUT_SENSORS; ++i) - SERIAL_ECHOF(i ? F(", ") : F("Runout remaining mm: "), mm_countdown.runout[i]); + SERIAL_ECHO(i ? F(", ") : F("Runout remaining mm: "), mm_countdown.runout[i]); #if ENABLED(FILAMENT_SWITCH_AND_MOTION) for (uint8_t i = 0; i < NUM_MOTION_SENSORS; ++i) - SERIAL_ECHOF(i ? F(", ") : F("Motion remaining mm: "), mm_countdown.motion[i]); + SERIAL_ECHO(i ? F(", ") : F("Motion remaining mm: "), mm_countdown.motion[i]); #endif SERIAL_EOL(); } diff --git a/Marlin/src/feature/stepper_driver_safety.cpp b/Marlin/src/feature/stepper_driver_safety.cpp index d3fc1614861e..acdd695909db 100644 --- a/Marlin/src/feature/stepper_driver_safety.cpp +++ b/Marlin/src/feature/stepper_driver_safety.cpp @@ -30,8 +30,7 @@ static uint32_t axis_plug_backward = 0; void stepper_driver_backward_error(FSTR_P const fstr) { SERIAL_ERROR_START(); - SERIAL_ECHOF(fstr); - SERIAL_ECHOLNPGM(" driver is backward!"); + SERIAL_ECHOLN(fstr, F(" driver is backward!")); ui.status_printf(2, F(S_FMT S_FMT), FTOP(fstr), GET_TEXT(MSG_DRIVER_BACKWARD)); } diff --git a/Marlin/src/feature/tmc_util.cpp b/Marlin/src/feature/tmc_util.cpp index 095e14fe1558..556a60891457 100644 --- a/Marlin/src/feature/tmc_util.cpp +++ b/Marlin/src/feature/tmc_util.cpp @@ -562,7 +562,7 @@ }; template - static void print_vsense(TMC &st) { SERIAL_ECHOF(st.vsense() ? F("1=.18") : F("0=.325")); } + static void print_vsense(TMC &st) { SERIAL_ECHO(st.vsense() ? F("1=.18") : F("0=.325")); } #if HAS_DRIVER(TMC2130) || HAS_DRIVER(TMC5130) static void _tmc_status(TMC2130Stepper &st, const TMC_debug_enum i) { @@ -680,7 +680,7 @@ case TMC_ENABLED: serialprint_truefalse(st.isEnabled()); break; case TMC_CURRENT: SERIAL_ECHO(st.getMilliamps()); break; case TMC_RMS_CURRENT: SERIAL_ECHO(st.rms_current()); break; - case TMC_MAX_CURRENT: SERIAL_PRINT((float)st.rms_current() * 1.41, 0); break; + case TMC_MAX_CURRENT: SERIAL_ECHO(p_float_t(st.rms_current() * 1.41, 0)); break; case TMC_IRUN: SERIAL_ECHO(st.irun()); SERIAL_ECHOPGM("/31"); @@ -728,12 +728,12 @@ case TMC_ENABLED: serialprint_truefalse(st.isEnabled()); break; case TMC_CURRENT: SERIAL_ECHO(st.getMilliamps()); break; case TMC_RMS_CURRENT: SERIAL_ECHO(st.rms_current()); break; - case TMC_MAX_CURRENT: SERIAL_PRINT((float)st.rms_current() * 1.41, 0); break; + case TMC_MAX_CURRENT: SERIAL_ECHO(p_float_t(st.rms_current() * 1.41, 0)); break; case TMC_IRUN: SERIAL_ECHO(st.cs()); SERIAL_ECHOPGM("/31"); break; - case TMC_VSENSE: SERIAL_ECHOF(st.vsense() ? F("1=.165") : F("0=.310")); break; + case TMC_VSENSE: SERIAL_ECHO(st.vsense() ? F("1=.165") : F("0=.310")); break; case TMC_MICROSTEPS: SERIAL_ECHO(st.microsteps()); break; //case TMC_OTPW: serialprint_truefalse(st.otpw()); break; //case TMC_OTPW_TRIGGERED: serialprint_truefalse(st.getOTPW()); break; @@ -1228,7 +1228,7 @@ static bool test_connection(TMC &st) { case 1: stat = F("HIGH"); break; case 2: stat = F("LOW"); break; } - SERIAL_ECHOLNF(stat); + SERIAL_ECHOLN(stat); return test_result; } diff --git a/Marlin/src/feature/twibus.cpp b/Marlin/src/feature/twibus.cpp index 4aedb4b5f3c5..5cfe9f9421bc 100644 --- a/Marlin/src/feature/twibus.cpp +++ b/Marlin/src/feature/twibus.cpp @@ -93,8 +93,7 @@ void TWIBus::send() { // static void TWIBus::echoprefix(uint8_t bytes, FSTR_P const pref, uint8_t adr) { SERIAL_ECHO_START(); - SERIAL_ECHOF(pref); - SERIAL_ECHOPGM(": from:", adr, " bytes:", bytes, " data:"); + SERIAL_ECHO(pref, F(": from:"), adr, F(" bytes:"), bytes, F(" data:")); } // static diff --git a/Marlin/src/gcode/bedlevel/G35.cpp b/Marlin/src/gcode/bedlevel/G35.cpp index 9c1ee472ec5a..a37e5623e746 100644 --- a/Marlin/src/gcode/bedlevel/G35.cpp +++ b/Marlin/src/gcode/bedlevel/G35.cpp @@ -100,19 +100,20 @@ void GcodeSuite::G35() { for (uint8_t i = 0; i < G35_PROBE_COUNT; ++i) { const float z_probed_height = probe.probe_at_point(tramming_points[i], PROBE_PT_RAISE); if (isnan(z_probed_height)) { - SERIAL_ECHOPGM("G35 failed at point ", i + 1, " ("); - SERIAL_ECHOPGM_P((char *)pgm_read_ptr(&tramming_point_name[i])); - SERIAL_CHAR(')'); - SERIAL_ECHOLNPGM_P(SP_X_STR, tramming_points[i].x, SP_Y_STR, tramming_points[i].y); + SERIAL_ECHO( + F("G35 failed at point "), i + 1, F(" ("), FPSTR(pgm_read_ptr(&tramming_point_name[i])), AS_CHAR(')'), + FPSTR(SP_X_STR), tramming_points[i].x, FPSTR(SP_Y_STR), tramming_points[i].y + ); err_break = true; break; } if (DEBUGGING(LEVELING)) { - DEBUG_ECHOPGM("Probing point ", i + 1, " ("); - DEBUG_ECHOF(FPSTR(pgm_read_ptr(&tramming_point_name[i]))); - DEBUG_CHAR(')'); - DEBUG_ECHOLNPGM_P(SP_X_STR, tramming_points[i].x, SP_Y_STR, tramming_points[i].y, SP_Z_STR, z_probed_height); + DEBUG_ECHOLN( + F("Probing point "), i + 1, F(" ("), FPSTR(pgm_read_ptr(&tramming_point_name[i])), AS_CHAR(')'), + FPSTR(SP_X_STR), tramming_points[i].x, FPSTR(SP_Y_STR), tramming_points[i].y, + FPSTR(SP_Z_STR), z_probed_height + ); } z_measured[i] = z_probed_height; diff --git a/Marlin/src/gcode/bedlevel/M420.cpp b/Marlin/src/gcode/bedlevel/M420.cpp index 277f95b9ffe1..d870a4f4308a 100644 --- a/Marlin/src/gcode/bedlevel/M420.cpp +++ b/Marlin/src/gcode/bedlevel/M420.cpp @@ -248,7 +248,7 @@ void GcodeSuite::M420_report(const bool forReplay/*=true*/) { report_heading_etc(forReplay, F( TERN(MESH_BED_LEVELING, "Mesh Bed Leveling", TERN(AUTO_BED_LEVELING_UBL, "Unified Bed Leveling", "Auto Bed Leveling")) )); - SERIAL_ECHOF( + SERIAL_ECHO( F(" M420 S"), planner.leveling_active #if ENABLED(ENABLE_LEVELING_FADE_HEIGHT) , FPSTR(SP_Z_STR), LINEAR_UNIT(planner.z_fade_height) diff --git a/Marlin/src/gcode/bedlevel/abl/G29.cpp b/Marlin/src/gcode/bedlevel/abl/G29.cpp index ca02fc976536..3b669fbba2a0 100644 --- a/Marlin/src/gcode/bedlevel/abl/G29.cpp +++ b/Marlin/src/gcode/bedlevel/abl/G29.cpp @@ -817,11 +817,11 @@ G29_TYPE GcodeSuite::G29() { abl.mean /= abl.abl_points; if (abl.verbose_level) { - SERIAL_ECHOPAIR_F("Eqn coefficients: a: ", plane_equation_coefficients.a, 8); - SERIAL_ECHOPAIR_F(" b: ", plane_equation_coefficients.b, 8); - SERIAL_ECHOPAIR_F(" d: ", plane_equation_coefficients.d, 8); + SERIAL_ECHOPGM("Eqn coefficients: a: ", p_float_t(plane_equation_coefficients.a, 8), + " b: ", p_float_t(plane_equation_coefficients.b, 8), + " d: ", p_float_t(plane_equation_coefficients.d, 8)); if (abl.verbose_level > 2) - SERIAL_ECHOPAIR_F("\nMean of sampled points: ", abl.mean, 8); + SERIAL_ECHOPGM("\nMean of sampled points: ", p_float_t(abl.mean, 8)); SERIAL_EOL(); } @@ -837,7 +837,7 @@ G29_TYPE GcodeSuite::G29() { float min_diff = 999; auto print_topo_map = [&](FSTR_P const title, const bool get_min) { - SERIAL_ECHOF(title); + SERIAL_ECHO(title); for (int8_t yy = abl.grid_points.y - 1; yy >= 0; yy--) { for (uint8_t xx = 0; xx < abl.grid_points.x; ++xx) { const int ind = abl.indexIntoAB[xx][yy]; @@ -848,7 +848,7 @@ G29_TYPE GcodeSuite::G29() { const float subval = get_min ? abl.mean : tmp.z + min_diff, diff = abl.eqnBVector[ind] - subval; SERIAL_CHAR(' '); if (diff >= 0.0) SERIAL_CHAR('+'); // Include + for column alignment - SERIAL_ECHO_F(diff, 5); + SERIAL_ECHO(p_float_t(diff, 5)); } // xx SERIAL_EOL(); } // yy diff --git a/Marlin/src/gcode/calibrate/G28.cpp b/Marlin/src/gcode/calibrate/G28.cpp index fde640fe9895..ab7b03961c33 100644 --- a/Marlin/src/gcode/calibrate/G28.cpp +++ b/Marlin/src/gcode/calibrate/G28.cpp @@ -274,7 +274,7 @@ void GcodeSuite::G28() { #if HAS_HOMING_CURRENT auto debug_current = [](FSTR_P const s, const int16_t a, const int16_t b) { - DEBUG_ECHOF(s); DEBUG_ECHOLNPGM(" current: ", a, " -> ", b); + DEBUG_ECHOLN(s, F(" current: "), a, F(" -> "), b); }; #if HAS_CURRENT_HOME(X) const int16_t tmc_save_current_X = stepperX.getMilliamps(); diff --git a/Marlin/src/gcode/calibrate/G33.cpp b/Marlin/src/gcode/calibrate/G33.cpp index 226570acce36..ba6cccffab78 100644 --- a/Marlin/src/gcode/calibrate/G33.cpp +++ b/Marlin/src/gcode/calibrate/G33.cpp @@ -92,8 +92,7 @@ void ac_cleanup(TERN_(HAS_MULTI_HOTEND, const uint8_t old_tool_index)) { } void print_signed_float(FSTR_P const prefix, const_float_t f) { - SERIAL_ECHOPGM(" "); - SERIAL_ECHOF(prefix, AS_CHAR(':')); + SERIAL_ECHO(F(" "), prefix, AS_CHAR(':')); serial_offset(f); } @@ -636,7 +635,7 @@ void GcodeSuite::G33() { else #endif { - SERIAL_ECHOPAIR_F("std dev:", zero_std_dev_min, 3); + SERIAL_ECHOPGM("std dev:", p_float_t(zero_std_dev_min, 3)); } SERIAL_EOL(); char mess[21]; @@ -657,7 +656,7 @@ void GcodeSuite::G33() { strcpy_P(mess, PSTR("No convergence")); SERIAL_ECHO(mess); SERIAL_ECHO_SP(32); - SERIAL_ECHOLNPAIR_F("std dev:", zero_std_dev, 3); + SERIAL_ECHOLNPGM("std dev:", p_float_t(zero_std_dev, 3)); ui.set_status(mess); if (verbose_level > 1) print_calibration_settings(_endstop_results, _angle_results); @@ -665,9 +664,9 @@ void GcodeSuite::G33() { } else { // dry run FSTR_P const enddryrun = F("End DRY-RUN"); - SERIAL_ECHOF(enddryrun); + SERIAL_ECHO(enddryrun); SERIAL_ECHO_SP(35); - SERIAL_ECHOLNPAIR_F("std dev:", zero_std_dev, 3); + SERIAL_ECHOLNPGM("std dev:", p_float_t(zero_std_dev, 3)); char mess[21]; strcpy_P(mess, FTOP(enddryrun)); diff --git a/Marlin/src/gcode/calibrate/G34_M422.cpp b/Marlin/src/gcode/calibrate/G34_M422.cpp index 7650443de862..39f3d2d5dfdc 100644 --- a/Marlin/src/gcode/calibrate/G34_M422.cpp +++ b/Marlin/src/gcode/calibrate/G34_M422.cpp @@ -411,7 +411,7 @@ void GcodeSuite::G34() { SERIAL_ECHOLNPGM("G34 aborted."); else { SERIAL_ECHOLNPGM("Did ", iteration + (iteration != z_auto_align_iterations), " of ", z_auto_align_iterations); - SERIAL_ECHOLNPAIR_F("Accuracy: ", z_maxdiff); + SERIAL_ECHOLNPGM("Accuracy: ", p_float_t(z_maxdiff, 2)); } // Stow the probe because the last call to probe.probe_at_point(...) @@ -501,8 +501,7 @@ void GcodeSuite::M422() { } if (!WITHIN(position_index, 1, NUM_Z_STEPPERS)) { - SERIAL_ECHOF(err_string); - SERIAL_ECHOLNPGM(" index invalid (1.." STRINGIFY(NUM_Z_STEPPERS) ")."); + SERIAL_ECHOLN(err_string, F(" index invalid (1.." STRINGIFY(NUM_Z_STEPPERS) ").")); return; } diff --git a/Marlin/src/gcode/calibrate/G76_M871.cpp b/Marlin/src/gcode/calibrate/G76_M871.cpp index 34b72ecdf317..6fe3dd89cf17 100644 --- a/Marlin/src/gcode/calibrate/G76_M871.cpp +++ b/Marlin/src/gcode/calibrate/G76_M871.cpp @@ -113,7 +113,7 @@ if (isnan(measured_z)) SERIAL_ECHOLNPGM("!Received NAN. Aborting."); else { - SERIAL_ECHOLNPAIR_F("Measured: ", measured_z); + SERIAL_ECHOLNPGM("Measured: ", p_float_t(measured_z, 2)); if (targ == ProbeTempComp::cali_info[sid].start_temp) ptc.prepare_new_calibration(measured_z); else diff --git a/Marlin/src/gcode/calibrate/M100.cpp b/Marlin/src/gcode/calibrate/M100.cpp index 3791c69f88bd..c05fe12fc389 100644 --- a/Marlin/src/gcode/calibrate/M100.cpp +++ b/Marlin/src/gcode/calibrate/M100.cpp @@ -183,7 +183,7 @@ inline int32_t count_test_bytes(const char * const start_free_memory) { } void M100_dump_routine(FSTR_P const title, const char * const start, const uintptr_t size) { - SERIAL_ECHOLNF(title); + SERIAL_ECHOLN(title); // // Round the start and end locations to produce full lines of output // @@ -197,7 +197,7 @@ inline int32_t count_test_bytes(const char * const start_free_memory) { #endif // M100_FREE_MEMORY_DUMPER inline int check_for_free_memory_corruption(FSTR_P const title) { - SERIAL_ECHOF(title); + SERIAL_ECHO(title); char *start_free_memory = free_memory_start, *end_free_memory = free_memory_end; int n = end_free_memory - start_free_memory; diff --git a/Marlin/src/gcode/calibrate/M48.cpp b/Marlin/src/gcode/calibrate/M48.cpp index 2748d4e7bada..9f285b8b8ae3 100644 --- a/Marlin/src/gcode/calibrate/M48.cpp +++ b/Marlin/src/gcode/calibrate/M48.cpp @@ -126,15 +126,13 @@ void GcodeSuite::M48() { auto dev_report = [](const bool verbose, const_float_t mean, const_float_t sigma, const_float_t min, const_float_t max, const bool final=false) { if (verbose) { - SERIAL_ECHOPAIR_F("Mean: ", mean, 6); - if (!final) SERIAL_ECHOPAIR_F(" Sigma: ", sigma, 6); - SERIAL_ECHOPAIR_F(" Min: ", min, 3); - SERIAL_ECHOPAIR_F(" Max: ", max, 3); - SERIAL_ECHOPAIR_F(" Range: ", max-min, 3); + SERIAL_ECHOPGM("Mean: ", p_float_t(mean, 6)); + if (!final) SERIAL_ECHOPGM(" Sigma: ", p_float_t(sigma, 6)); + SERIAL_ECHOPGM(" Min: ", p_float_t(min, 3), " Max: ", p_float_t(max, 3), " Range: ", p_float_t(max-min, 3)); if (final) SERIAL_EOL(); } if (final) { - SERIAL_ECHOLNPAIR_F("Standard Deviation: ", sigma, 6); + SERIAL_ECHOLNPGM("Standard Deviation: ", p_float_t(sigma, 6)); SERIAL_EOL(); } }; @@ -207,7 +205,7 @@ void GcodeSuite::M48() { while (!probe.can_reach(next_pos)) { next_pos *= 0.8f; if (verbose_level > 3) - SERIAL_ECHOLNPGM_P(PSTR("Moving inward: X"), next_pos.x, SP_Y_STR, next_pos.y); + SERIAL_ECHOLN(F("Moving inward: X"), next_pos.x, FPSTR(SP_Y_STR), next_pos.y); } #elif HAS_ENDSTOPS // For a rectangular bed just keep the probe in bounds @@ -216,7 +214,7 @@ void GcodeSuite::M48() { #endif if (verbose_level > 3) - SERIAL_ECHOLNPGM_P(PSTR("Going to: X"), next_pos.x, SP_Y_STR, next_pos.y); + SERIAL_ECHOLN(F("Going to: X"), next_pos.x, FPSTR(SP_Y_STR), next_pos.y); do_blocking_move_to_xy(next_pos); } // n_legs loop @@ -247,10 +245,7 @@ void GcodeSuite::M48() { sigma = SQRT(dev_sum / (n + 1)); if (verbose_level > 1) { - SERIAL_ECHO(n + 1); - SERIAL_ECHOPGM(" of ", n_samples); - SERIAL_ECHOPAIR_F(": z: ", pz, 3); - SERIAL_CHAR(' '); + SERIAL_ECHO(n + 1, F(" of "), n_samples, F(": z: "), p_float_t(pz, 3), AS_CHAR(' ')); dev_report(verbose_level > 2, mean, sigma, min, max); SERIAL_EOL(); } diff --git a/Marlin/src/gcode/calibrate/M852.cpp b/Marlin/src/gcode/calibrate/M852.cpp index 6c661dcd61d9..6d3c004548c6 100644 --- a/Marlin/src/gcode/calibrate/M852.cpp +++ b/Marlin/src/gcode/calibrate/M852.cpp @@ -93,11 +93,9 @@ void GcodeSuite::M852() { void GcodeSuite::M852_report(const bool forReplay/*=true*/) { report_heading_etc(forReplay, F(STR_SKEW_FACTOR)); - SERIAL_ECHOPAIR_F(" M852 I", planner.skew_factor.xy, 6); + SERIAL_ECHOPGM(" M852 I", p_float_t(planner.skew_factor.xy, 6)); #if ENABLED(SKEW_CORRECTION_FOR_Z) - SERIAL_ECHOPAIR_F(" J", planner.skew_factor.xz, 6); - SERIAL_ECHOPAIR_F(" K", planner.skew_factor.yz, 6); - SERIAL_ECHOLNPGM(" ; XY, XZ, YZ"); + SERIAL_ECHOLNPGM(" J", p_float_t(planner.skew_factor.xz, 6), " K", p_float_t(planner.skew_factor.yz, 6), " ; XY, XZ, YZ"); #else SERIAL_ECHOLNPGM(" ; XY"); #endif diff --git a/Marlin/src/gcode/config/M218.cpp b/Marlin/src/gcode/config/M218.cpp index d645685701ec..ff63dcaf34e7 100644 --- a/Marlin/src/gcode/config/M218.cpp +++ b/Marlin/src/gcode/config/M218.cpp @@ -66,12 +66,12 @@ void GcodeSuite::M218_report(const bool forReplay/*=true*/) { report_heading_etc(forReplay, F(STR_HOTEND_OFFSETS)); for (uint8_t e = 1; e < HOTENDS; ++e) { report_echo_start(forReplay); - SERIAL_ECHOPGM_P( + SERIAL_ECHOLNPGM_P( PSTR(" M218 T"), e, SP_X_STR, LINEAR_UNIT(hotend_offset[e].x), - SP_Y_STR, LINEAR_UNIT(hotend_offset[e].y) + SP_Y_STR, LINEAR_UNIT(hotend_offset[e].y), + SP_Z_STR, p_float_t(LINEAR_UNIT(hotend_offset[e].z), 3) ); - SERIAL_ECHOLNPAIR_F_P(SP_Z_STR, LINEAR_UNIT(hotend_offset[e].z), 3); } } diff --git a/Marlin/src/gcode/config/M302.cpp b/Marlin/src/gcode/config/M302.cpp index 12408c898755..26e5a468cabc 100644 --- a/Marlin/src/gcode/config/M302.cpp +++ b/Marlin/src/gcode/config/M302.cpp @@ -59,9 +59,7 @@ void GcodeSuite::M302() { else if (!seen_S) { // Report current state SERIAL_ECHO_START(); - SERIAL_ECHOPGM("Cold extrudes are "); - SERIAL_ECHOF(thermalManager.allow_cold_extrude ? F("en") : F("dis")); - SERIAL_ECHOLNPGM("abled (min temp ", thermalManager.extrude_min_temp, "C)"); + SERIAL_ECHOLN(F("Cold extrudes are "), thermalManager.allow_cold_extrude ? F("en") : F("dis"), F("abled (min temp "), thermalManager.extrude_min_temp, F("C)")); } } diff --git a/Marlin/src/gcode/config/M43.cpp b/Marlin/src/gcode/config/M43.cpp index 7daf8afab8b6..7657aadc6d85 100644 --- a/Marlin/src/gcode/config/M43.cpp +++ b/Marlin/src/gcode/config/M43.cpp @@ -294,9 +294,7 @@ void GcodeSuite::M43() { // 'E' Enable or disable endstop monitoring and return if (parser.seen('E')) { endstops.monitor_flag = parser.value_bool(); - SERIAL_ECHOPGM("endstop monitor "); - SERIAL_ECHOF(endstops.monitor_flag ? F("en") : F("dis")); - SERIAL_ECHOLNPGM("abled"); + SERIAL_ECHOLN(F("endstop monitor "), endstops.monitor_flag ? F("en") : F("dis"), F("abled")); return; } diff --git a/Marlin/src/gcode/config/M92.cpp b/Marlin/src/gcode/config/M92.cpp index e848665e6b6d..67f55e2232b0 100644 --- a/Marlin/src/gcode/config/M92.cpp +++ b/Marlin/src/gcode/config/M92.cpp @@ -82,7 +82,7 @@ void GcodeSuite::M92() { if (wanted) { const float best = uint16_t(wanted / z_full_step_mm) * z_full_step_mm; SERIAL_ECHOPGM(", best:[", best); - if (best != wanted) { SERIAL_CHAR(','); SERIAL_DECIMAL(best + z_full_step_mm); } + if (best != wanted) { SERIAL_ECHO(AS_CHAR(','), best + z_full_step_mm); } SERIAL_CHAR(']'); } SERIAL_ECHOLNPGM(" }"); diff --git a/Marlin/src/gcode/control/M80_M81.cpp b/Marlin/src/gcode/control/M80_M81.cpp index 94dd5e3dd93f..2d3e407446a0 100644 --- a/Marlin/src/gcode/control/M80_M81.cpp +++ b/Marlin/src/gcode/control/M80_M81.cpp @@ -48,7 +48,7 @@ // S: Report the current power supply state and exit if (parser.seen('S')) { - SERIAL_ECHOF(powerManager.psu_on ? F("PS:1\n") : F("PS:0\n")); + SERIAL_ECHO(powerManager.psu_on ? F("PS:1\n") : F("PS:0\n")); return; } diff --git a/Marlin/src/gcode/feature/advance/M900.cpp b/Marlin/src/gcode/feature/advance/M900.cpp index 8c0da41801cc..28cc4f80472a 100644 --- a/Marlin/src/gcode/feature/advance/M900.cpp +++ b/Marlin/src/gcode/feature/advance/M900.cpp @@ -120,8 +120,7 @@ void GcodeSuite::M900() { EXTRUDER_LOOP() { const bool slot = TEST(lin_adv_slot, e); SERIAL_ECHOLNPGM("Advance T", e, " S", slot, " K", planner.extruder_advance_K[e], - "(S", !slot, " K", other_extruder_advance_K[e], ")"); - SERIAL_EOL(); + "(S", !slot, " K", other_extruder_advance_K[e], ")"); } #endif @@ -132,10 +131,7 @@ void GcodeSuite::M900() { SERIAL_ECHOLNPGM("Advance K=", planner.extruder_advance_K[0]); #else SERIAL_ECHOPGM("Advance K"); - EXTRUDER_LOOP() { - SERIAL_CHAR(' ', '0' + e, ':'); - SERIAL_DECIMAL(planner.extruder_advance_K[e]); - } + EXTRUDER_LOOP() SERIAL_ECHO(AS_CHAR(' '), AS_CHAR('0' + e), AS_CHAR(':'), planner.extruder_advance_K[e]); SERIAL_EOL(); #endif diff --git a/Marlin/src/gcode/feature/ft_motion/M493.cpp b/Marlin/src/gcode/feature/ft_motion/M493.cpp index 9469f1575b61..f34c6c1bd7f3 100644 --- a/Marlin/src/gcode/feature/ft_motion/M493.cpp +++ b/Marlin/src/gcode/feature/ft_motion/M493.cpp @@ -74,28 +74,18 @@ void say_shaping() { #if HAS_X_AXIS SERIAL_ECHO_TERNARY(dynamic, "X/A ", "base dynamic", "static", " compensator frequency: "); - SERIAL_ECHO_F(fxdTiCtrl.cfg.baseFreq[X_AXIS], 2); - SERIAL_ECHOPGM("Hz"); + SERIAL_ECHO(p_float_t(fxdTiCtrl.cfg.baseFreq[X_AXIS], 2), F("Hz")); #if HAS_DYNAMIC_FREQ - if (dynamic) { - SERIAL_ECHOPGM(" scaling: "); - SERIAL_ECHO_F(fxdTiCtrl.cfg.dynFreqK[X_AXIS], 8); - serial_ternary(F("Hz/"), z_based, F("mm"), F("g")); - } + if (dynamic) SERIAL_ECHO(" scaling: ", p_float_t(fxdTiCtrl.cfg.dynFreqK[X_AXIS], 8), F("Hz/"), z_based ? F("mm") : F("g")); #endif SERIAL_EOL(); #endif #if HAS_Y_AXIS SERIAL_ECHO_TERNARY(dynamic, "Y/B ", "base dynamic", "static", " compensator frequency: "); - SERIAL_ECHO_F(fxdTiCtrl.cfg.baseFreq[Y_AXIS], 2); - SERIAL_ECHOLNPGM(" Hz"); + SERIAL_ECHO(p_float_t(fxdTiCtrl.cfg.baseFreq[Y_AXIS], 2), F(" Hz")); #if HAS_DYNAMIC_FREQ - if (dynamic) { - SERIAL_ECHOPGM(" scaling: "); - SERIAL_ECHO_F(fxdTiCtrl.cfg.dynFreqK[Y_AXIS], 8); - serial_ternary(F("Hz/"), z_based, F("mm"), F("g")); - } + if (dynamic) SERIAL_ECHO(F(" scaling: "), p_float_t(fxdTiCtrl.cfg.dynFreqK[Y_AXIS], 8), F("Hz/"), z_based ? F("mm") : F("g")); #endif SERIAL_EOL(); #endif @@ -103,10 +93,8 @@ void say_shaping() { #if HAS_EXTRUDERS SERIAL_ECHO_TERNARY(fxdTiCtrl.cfg.linearAdvEna, "Linear Advance ", "en", "dis", "abled"); - SERIAL_ECHOPGM(". Gain: "); SERIAL_ECHO_F(fxdTiCtrl.cfg.linearAdvK, 5); - SERIAL_EOL(); + SERIAL_ECHOLN(F(". Gain: "), p_float_t(fxdTiCtrl.cfg.linearAdvK, 5)); #endif - } void GcodeSuite::M493_report(const bool forReplay/*=true*/) { diff --git a/Marlin/src/gcode/feature/network/M552-M554.cpp b/Marlin/src/gcode/feature/network/M552-M554.cpp index ca7ddd0d360f..7633ec1fd532 100644 --- a/Marlin/src/gcode/feature/network/M552-M554.cpp +++ b/Marlin/src/gcode/feature/network/M552-M554.cpp @@ -63,8 +63,7 @@ void ip_report(const uint16_t cmd, FSTR_P const post, const IPAddress &ipo) { SERIAL_ECHO(ipo[i]); if (i < 3) SERIAL_CHAR('.'); } - SERIAL_ECHOPGM(" ; "); - SERIAL_ECHOLNF(post); + SERIAL_ECHOLN(F(" ; "), post); } /** diff --git a/Marlin/src/gcode/feature/pause/G61.cpp b/Marlin/src/gcode/feature/pause/G61.cpp index 0efcfbf208de..423632e72e0a 100644 --- a/Marlin/src/gcode/feature/pause/G61.cpp +++ b/Marlin/src/gcode/feature/pause/G61.cpp @@ -87,8 +87,7 @@ void GcodeSuite::G61() { destination[i] = parser.seen(AXIS_CHAR(i)) ? stored_position[slot][i] + parser.value_axis_units((AxisEnum)i) : current_position[i]; - DEBUG_CHAR(' ', AXIS_CHAR(i)); - DEBUG_ECHO_F(destination[i]); + DEBUG_ECHO(AS_CHAR(' '), AS_CHAR(AXIS_CHAR(i)), p_float_t(destination[i], 2)); } DEBUG_EOL(); // Move to the saved position diff --git a/Marlin/src/gcode/feature/powerloss/M1000.cpp b/Marlin/src/gcode/feature/powerloss/M1000.cpp index 1629a154bce3..e874c19d5e9e 100644 --- a/Marlin/src/gcode/feature/powerloss/M1000.cpp +++ b/Marlin/src/gcode/feature/powerloss/M1000.cpp @@ -47,8 +47,7 @@ void menu_job_recovery(); inline void plr_error(FSTR_P const prefix) { #if ENABLED(DEBUG_POWER_LOSS_RECOVERY) DEBUG_ECHO_START(); - DEBUG_ECHOF(prefix); - DEBUG_ECHOLNPGM(" Job Recovery Data"); + DEBUG_ECHOLN(prefix, F(" Job Recovery Data")); #else UNUSED(prefix); #endif diff --git a/Marlin/src/gcode/feature/powerloss/M413.cpp b/Marlin/src/gcode/feature/powerloss/M413.cpp index f6d82b0ad944..5e508d4f28ae 100644 --- a/Marlin/src/gcode/feature/powerloss/M413.cpp +++ b/Marlin/src/gcode/feature/powerloss/M413.cpp @@ -50,8 +50,8 @@ void GcodeSuite::M413() { if (parser.seen_test('D')) recovery.debug(F("M413")); if (parser.seen_test('O')) recovery._outage(true); if (parser.seen_test('C')) (void)recovery.check(); - if (parser.seen_test('E')) SERIAL_ECHOF(recovery.exists() ? F("PLR Exists\n") : F("No PLR\n")); - if (parser.seen_test('V')) SERIAL_ECHOF(recovery.valid() ? F("Valid\n") : F("Invalid\n")); + if (parser.seen_test('E')) SERIAL_ECHO(recovery.exists() ? F("PLR Exists\n") : F("No PLR\n")); + if (parser.seen_test('V')) SERIAL_ECHO(recovery.valid() ? F("Valid\n") : F("Invalid\n")); #endif } diff --git a/Marlin/src/gcode/feature/trinamic/M569.cpp b/Marlin/src/gcode/feature/trinamic/M569.cpp index 50ac5c746871..6f1af7b68155 100644 --- a/Marlin/src/gcode/feature/trinamic/M569.cpp +++ b/Marlin/src/gcode/feature/trinamic/M569.cpp @@ -35,8 +35,7 @@ template void tmc_say_stealth_status(TMC &st) { st.printLabel(); - SERIAL_ECHOPGM(" driver mode:\t"); - SERIAL_ECHOLNF(st.get_stealthChop() ? F("stealthChop") : F("spreadCycle")); + SERIAL_ECHOLN(F(" driver mode:\t"), st.get_stealthChop() ? F("stealthChop") : F("spreadCycle")); } template void tmc_set_stealthChop(TMC &st, const bool enable) { @@ -161,10 +160,7 @@ void GcodeSuite::M569_report(const bool forReplay/*=true*/) { auto say_M569 = [](const bool forReplay, FSTR_P const etc=nullptr, const bool eol=false) { if (!forReplay) SERIAL_ECHO_START(); SERIAL_ECHOPGM(" M569 S1"); - if (etc) { - SERIAL_CHAR(' '); - SERIAL_ECHOF(etc); - } + if (etc) SERIAL_ECHO(AS_CHAR(' '), etc); if (eol) SERIAL_EOL(); }; diff --git a/Marlin/src/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index 01b48a4af92b..cedcf97c514d 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -105,8 +105,7 @@ void GcodeSuite::report_heading(const bool forReplay, FSTR_P const fstr, const b if (forReplay) return; if (fstr) { SERIAL_ECHO_START(); - SERIAL_ECHOPGM("; "); - SERIAL_ECHOF(fstr); + SERIAL_ECHO(F("; "), fstr); } if (eol) { SERIAL_CHAR(':'); SERIAL_EOL(); } } @@ -1120,7 +1119,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { if (!no_ok) queue.ok_to_send(); - SERIAL_OUT(msgDone); // Call the msgDone serial hook to signal command processing done + SERIAL_IMPL.msgDone(); // Call the msgDone serial hook to signal command processing done } #if ENABLED(M100_FREE_MEMORY_DUMPER) diff --git a/Marlin/src/gcode/geometry/G17-G19.cpp b/Marlin/src/gcode/geometry/G17-G19.cpp index fbac7470ca2b..312b89286c27 100644 --- a/Marlin/src/gcode/geometry/G17-G19.cpp +++ b/Marlin/src/gcode/geometry/G17-G19.cpp @@ -29,7 +29,7 @@ inline void report_workspace_plane() { SERIAL_ECHO_START(); SERIAL_ECHOPGM("Workspace Plane "); - SERIAL_ECHOF( + SERIAL_ECHO( gcode.workspace_plane == GcodeSuite::PLANE_YZ ? F("YZ\n") : gcode.workspace_plane == GcodeSuite::PLANE_ZX ? F("ZX\n") : F("XY\n") diff --git a/Marlin/src/gcode/probe/G30.cpp b/Marlin/src/gcode/probe/G30.cpp index 4c044af9d6e7..43fc27bfc189 100644 --- a/Marlin/src/gcode/probe/G30.cpp +++ b/Marlin/src/gcode/probe/G30.cpp @@ -100,7 +100,7 @@ void GcodeSuite::G30() { report_current_position(); } else { - SERIAL_ECHOLNF(GET_EN_TEXT_F(MSG_ZPROBE_OUT)); + SERIAL_ECHOLN(GET_EN_TEXT_F(MSG_ZPROBE_OUT)); LCD_MESSAGE(MSG_ZPROBE_OUT); } diff --git a/Marlin/src/gcode/queue.cpp b/Marlin/src/gcode/queue.cpp index 967ab76897f7..9ce28f781cd8 100644 --- a/Marlin/src/gcode/queue.cpp +++ b/Marlin/src/gcode/queue.cpp @@ -324,7 +324,7 @@ inline int read_serial(const serial_index_t index) { return SERIAL_IMPL.read(ind void GCodeQueue::gcode_line_error(FSTR_P const ferr, const serial_index_t serial_ind) { PORT_REDIRECT(SERIAL_PORTMASK(serial_ind)); // Reply to the serial port that sent the command SERIAL_ERROR_START(); - SERIAL_ECHOLNF(ferr, serial_state[serial_ind.index].last_N); + SERIAL_ECHOLN(ferr, serial_state[serial_ind.index].last_N); while (read_serial(serial_ind) != -1) { /* nada */ } // Clear out the RX buffer. Why don't use flush here ? flush_and_request_resend(serial_ind); serial_state[serial_ind.index].count = 0; diff --git a/Marlin/src/gcode/stats/M31.cpp b/Marlin/src/gcode/stats/M31.cpp index 1a1c13ba2f1a..a76ec7ee4def 100644 --- a/Marlin/src/gcode/stats/M31.cpp +++ b/Marlin/src/gcode/stats/M31.cpp @@ -33,7 +33,7 @@ void GcodeSuite::M31() { char buffer[22]; duration_t(print_job_timer.duration()).toString(buffer); - ui.set_status(buffer, ENABLED(DWIN_LCD_PROUI)); + ui.set_status(buffer, ENABLED(DWIN_LCD_PROUI)); // No expire on ProUI SERIAL_ECHO_MSG("Print time: ", buffer); } diff --git a/Marlin/src/gcode/temp/M306.cpp b/Marlin/src/gcode/temp/M306.cpp index 7d2d94952ff0..2830a77ab4fd 100644 --- a/Marlin/src/gcode/temp/M306.cpp +++ b/Marlin/src/gcode/temp/M306.cpp @@ -92,16 +92,16 @@ void GcodeSuite::M306_report(const bool forReplay/*=true*/) { HOTEND_LOOP() { report_echo_start(forReplay); MPC_t &mpc = thermalManager.temp_hotend[e].mpc; - SERIAL_ECHOPGM(" M306 E", e); - SERIAL_ECHOPAIR_F(" P", mpc.heater_power, 2); - SERIAL_ECHOPAIR_F(" C", mpc.block_heat_capacity, 2); - SERIAL_ECHOPAIR_F(" R", mpc.sensor_responsiveness, 4); - SERIAL_ECHOPAIR_F(" A", mpc.ambient_xfer_coeff_fan0, 4); + SERIAL_ECHOPGM(" M306 E", e, + " P", p_float_t(mpc.heater_power, 2), + " C", p_float_t(mpc.block_heat_capacity, 2), + " R", p_float_t(mpc.sensor_responsiveness, 4), + " A", p_float_t(mpc.ambient_xfer_coeff_fan0, 4) + ); #if ENABLED(MPC_INCLUDE_FAN) - SERIAL_ECHOPAIR_F(" F", mpc.fanCoefficient(), 4); + SERIAL_ECHOPGM(" F", p_float_t(mpc.fanCoefficient(), 4)); #endif - SERIAL_ECHOPAIR_F(" H", mpc.filament_heat_capacity_permm, 4); - SERIAL_EOL(); + SERIAL_ECHOLNPGM(" H", p_float_t(mpc.filament_heat_capacity_permm, 4)); } } diff --git a/Marlin/src/gcode/units/M149.cpp b/Marlin/src/gcode/units/M149.cpp index a04247cbcb17..43091b6710e7 100644 --- a/Marlin/src/gcode/units/M149.cpp +++ b/Marlin/src/gcode/units/M149.cpp @@ -38,8 +38,7 @@ void GcodeSuite::M149() { void GcodeSuite::M149_report(const bool forReplay/*=true*/) { report_heading_etc(forReplay, F(STR_TEMPERATURE_UNITS)); - SERIAL_ECHOPGM(" M149 ", AS_CHAR(parser.temp_units_code()), " ; Units in "); - SERIAL_ECHOLNF(parser.temp_units_name()); + SERIAL_ECHOLN(F(" M149 "), AS_CHAR(parser.temp_units_code()), F(" ; Units in "), parser.temp_units_name()); } #endif // TEMPERATURE_UNITS_SUPPORT diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 6d2bbd6edf22..bc33c20f41b9 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -1815,6 +1815,9 @@ #if ANY_AXIS_HAS(SW_SERIAL) #define HAS_TMC_SW_SERIAL 1 #endif +#ifndef SERIAL_FLOAT_PRECISION + #define SERIAL_FLOAT_PRECISION 2 +#endif #if DISABLED(SENSORLESS_HOMING) #undef SENSORLESS_BACKOFF_MM diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index 1ef9ee8517f8..7b83e0171fb3 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -295,29 +295,17 @@ class TextScroller { matrix_3x3 rotation = matrix_3x3::create_look_at(vector_3(lsf_results.A, lsf_results.B, 1)); GRID_LOOP(i, j) { - float mx = bedlevel.get_mesh_x(i), - my = bedlevel.get_mesh_y(j), - mz = bedlevel.z_values[i][j]; + float mx = bedlevel.get_mesh_x(i), my = bedlevel.get_mesh_y(j), mz = bedlevel.z_values[i][j]; if (DEBUGGING(LEVELING)) { - DEBUG_ECHOPAIR_F("before rotation = [", mx, 7); - DEBUG_CHAR(','); - DEBUG_ECHO_F(my, 7); - DEBUG_CHAR(','); - DEBUG_ECHO_F(mz, 7); - DEBUG_ECHOPGM("] ---> "); + DEBUG_ECHOLN(F("before rotation = ["), p_float_t(mx, 7), AS_CHAR(','), p_float_t(my, 7), AS_CHAR(','), p_float_t(mz, 7), F("] ---> ")); DEBUG_DELAY(20); } rotation.apply_rotation_xyz(mx, my, mz); if (DEBUGGING(LEVELING)) { - DEBUG_ECHOPAIR_F("after rotation = [", mx, 7); - DEBUG_CHAR(','); - DEBUG_ECHO_F(my, 7); - DEBUG_CHAR(','); - DEBUG_ECHO_F(mz, 7); - DEBUG_ECHOLNPGM("]"); + DEBUG_ECHOLN(F("after rotation = ["), p_float_t(mx, 7), AS_CHAR(','), p_float_t(my, 7), AS_CHAR(','), p_float_t(mz, 7), AS_CHAR(']')); DEBUG_DELAY(20); } diff --git a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp index 48e07cc20793..69721e4e7751 100644 --- a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp +++ b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp @@ -104,29 +104,17 @@ char cmd[MAX_CMD_SIZE+16], str_1[16], str_2[16], str_3[16]; matrix_3x3 rotation = matrix_3x3::create_look_at(vector_3(lsf_results.A, lsf_results.B, 1)); GRID_LOOP(i, j) { - float mx = bedlevel.get_mesh_x(i), - my = bedlevel.get_mesh_y(j), - mz = bedlevel.z_values[i][j]; + float mx = bedlevel.get_mesh_x(i), my = bedlevel.get_mesh_y(j), mz = bedlevel.z_values[i][j]; if (DEBUGGING(LEVELING)) { - DEBUG_ECHOPAIR_F("before rotation = [", mx, 7); - DEBUG_CHAR(','); - DEBUG_ECHO_F(my, 7); - DEBUG_CHAR(','); - DEBUG_ECHO_F(mz, 7); - DEBUG_ECHOPGM("] ---> "); + DEBUG_ECHOLN(F("before rotation = ["), p_float_t(mx, 7), AS_CHAR(','), p_float_t(my, 7), AS_CHAR(','), p_float_t(mz, 7), F("] ---> ")); DEBUG_DELAY(20); } rotation.apply_rotation_xyz(mx, my, mz); if (DEBUGGING(LEVELING)) { - DEBUG_ECHOPAIR_F("after rotation = [", mx, 7); - DEBUG_CHAR(','); - DEBUG_ECHO_F(my, 7); - DEBUG_CHAR(','); - DEBUG_ECHO_F(mz, 7); - DEBUG_ECHOLNPGM("]"); + DEBUG_ECHOLN(F("after rotation = ["), p_float_t(mx, 7), AS_CHAR(','), p_float_t(my, 7), AS_CHAR(','), p_float_t(mz, 7), F("] ---> ")); DEBUG_DELAY(20); } diff --git a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp index bcf78746a240..7d44e63537b4 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp +++ b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp @@ -88,14 +88,9 @@ void ChironTFT::startup() { // So we need to know what we are working with. // Panel type can be defined otherwise detect it automatically switch (panel_type) { - case AC_panel_new: - SERIAL_ECHOLNF(AC_msg_new_panel_set); - break; - case AC_panel_standard: - SERIAL_ECHOLNF(AC_msg_old_panel_set); - break; - default: - SERIAL_ECHOLNF(AC_msg_auto_panel_detection); + case AC_panel_new: SERIAL_ECHOLN(AC_msg_new_panel_set); break; + case AC_panel_standard: SERIAL_ECHOLN(AC_msg_old_panel_set); break; + default: SERIAL_ECHOLN(AC_msg_auto_panel_detection); detectPanelType(); break; } @@ -312,7 +307,7 @@ void ChironTFT::powerLossRecovery() { printer_state = AC_printer_resuming_from_power_outage; // Play tune to notify user we can recover. last_error = AC_error_powerloss; PlayTune(SOS); - SERIAL_ECHOLNF(AC_msg_powerloss_recovery); + SERIAL_ECHOLN(AC_msg_powerloss_recovery); } void ChironTFT::printComplete() { @@ -323,7 +318,7 @@ void ChironTFT::printComplete() { void ChironTFT::tftSend(FSTR_P const fstr/*=nullptr*/) { // A helper to print PROGMEM string to the panel #if ACDEBUG(AC_SOME) - DEBUG_ECHOF(fstr); + DEBUG_ECHO(fstr); #endif PGM_P str = FTOP(fstr); while (const char c = pgm_read_byte(str++)) TFTSer.write(c); @@ -447,7 +442,7 @@ void ChironTFT::selectFile() { selectedfile[command_len - 5] = '\0'; } #if ACDEBUG(AC_FILE) - DEBUG_ECHOLNPGM(" Selected File: ",selectedfile); + DEBUG_ECHOLNPGM(" Selected File: ", selectedfile); #endif switch (selectedfile[0]) { case '/': // Valid file selected @@ -494,7 +489,7 @@ void ChironTFT::processPanelRequest() { if (tpos >= 0) { if (panel_command[tpos + 1] == 'X' && panel_command[tpos + 2] =='Y') { panel_type = AC_panel_standard; - SERIAL_ECHOLNF(AC_msg_old_panel_detected); + SERIAL_ECHOLN(AC_msg_old_panel_detected); } } else { @@ -504,7 +499,7 @@ void ChironTFT::processPanelRequest() { if (tpos >= 0) { if (panel_command[tpos + 1] == '0' && panel_command[tpos + 2] ==']') { panel_type = AC_panel_new; - SERIAL_ECHOLNF(AC_msg_new_panel_detected); + SERIAL_ECHOLN(AC_msg_new_panel_detected); } } } @@ -828,7 +823,7 @@ void ChironTFT::panelProcess(uint8_t req) { if (!isPrinting()) { injectCommands(F("M501\nM420 S1")); selectedmeshpoint.x = selectedmeshpoint.y = 99; - SERIAL_ECHOLNF(AC_msg_mesh_changes_abandoned); + SERIAL_ECHOLN(AC_msg_mesh_changes_abandoned); } } @@ -836,7 +831,7 @@ void ChironTFT::panelProcess(uint8_t req) { if (!isPrinting()) { setAxisPosition_mm(1.0,Z); // Lift nozzle before any further movements are made injectCommands(F("M500")); - SERIAL_ECHOLNF(AC_msg_mesh_changes_saved); + SERIAL_ECHOLN(AC_msg_mesh_changes_saved); selectedmeshpoint.x = selectedmeshpoint.y = 99; } } diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp index 518bda73f3f6..1177d2977b03 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp @@ -701,7 +701,7 @@ namespace Anycubic { void DgusTFT::tftSend(FSTR_P const fstr/*=nullptr*/) { // A helper to print PROGMEM string to the panel #if ACDEBUG(AC_SOME) - DEBUG_ECHOF(fstr); + DEBUG_ECHO(fstr); #endif PGM_P str = FTOP(fstr); while (const char c = pgm_read_byte(str++)) TFTSer.write(c); @@ -3214,7 +3214,7 @@ namespace Anycubic { } void DEBUG_PRINT_PAUSED_STATE(const paused_state_t state, FSTR_P const msg/*=nullptr*/) { - if (msg) DEBUG_ECHOF(msg); + if (msg) DEBUG_ECHO(msg); DEBUG_ECHOPGM("Paused state: ", state, " "); switch (state) { case AC_paused_heater_timed_out: DEBUG_ECHOPGM("AC_paused_heater_timed_out"); break; @@ -3228,7 +3228,7 @@ namespace Anycubic { // Human-readable debugging void DEBUG_PRINT_PRINTER_STATE(const printer_state_t state, FSTR_P const msg/*=nullptr*/) { - if (msg) DEBUG_ECHOF(msg); + if (msg) DEBUG_ECHO(msg); DEBUG_ECHOPGM("Printer State: ", state, " "); switch (state) { case AC_printer_idle: DEBUG_ECHOPGM("AC_printer_idle"); break; diff --git a/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h b/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h index c6dd270edf90..163a095d0819 100644 --- a/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h +++ b/Marlin/src/lcd/extui/dgus/DGUSScreenHandlerBase.h @@ -207,7 +207,7 @@ class DGUSScreenHandler { static void sendFloatAsIntValueToDisplay(DGUS_VP_Variable &var) { if (var.memadr) { float f = *(float *)var.memadr; - DEBUG_ECHOLNPAIR_F(" >> ", f, 6); + DEBUG_ECHOLNPGM(" >> ", p_float_t(f, 6)); f *= cpow(10, decimals); dgus.writeVariable(var.VP, (int16_t)f); } diff --git a/Marlin/src/lcd/extui/nextion/nextion_tft.cpp b/Marlin/src/lcd/extui/nextion/nextion_tft.cpp index e5e3a74be2c5..0327a2f137c8 100644 --- a/Marlin/src/lcd/extui/nextion/nextion_tft.cpp +++ b/Marlin/src/lcd/extui/nextion/nextion_tft.cpp @@ -112,7 +112,7 @@ void NextionTFT::statusChange(const char * const msg) { void NextionTFT::tftSend(FSTR_P const fstr/*=nullptr*/) { // A helper to print PROGMEM string to the panel #if NEXDEBUG(N_SOME) - DEBUG_ECHOF(fstr); + DEBUG_ECHO(fstr); #endif PGM_P str = FTOP(fstr); while (const char c = pgm_read_byte(str++)) LCD_SERIAL.write(c); @@ -161,20 +161,20 @@ void NextionTFT::selectFile() { strncpy(selectedfile, nextion_command + 4, command_len - 4); selectedfile[command_len - 5] = '\0'; #if NEXDEBUG(N_FILE) - DEBUG_ECHOLNPAIR_F(" Selected File: ", selectedfile); + DEBUG_ECHOLNPGM(" Selected File: ", selectedfile); #endif switch (selectedfile[0]) { - case '/': // Valid file selected - //SEND_TXT("tmppage.M117", msg_sd_file_open_success); - break; - case '<': // .. (go up folder level) - filenavigator.upDIR(); - sendFileList(0); - break; - default: // enter sub folder - filenavigator.changeDIR(selectedfile); - sendFileList(0); - break; + case '/': // Valid file selected + //SEND_TXT("tmppage.M117", msg_sd_file_open_success); + break; + case '<': // .. (go up folder level) + filenavigator.upDIR(); + sendFileList(0); + break; + default: // enter sub folder + filenavigator.changeDIR(selectedfile); + sendFileList(0); + break; } } diff --git a/Marlin/src/lcd/menu/menu_configuration.cpp b/Marlin/src/lcd/menu/menu_configuration.cpp index 6440cae03302..32b6f15995a4 100644 --- a/Marlin/src/lcd/menu/menu_configuration.cpp +++ b/Marlin/src/lcd/menu/menu_configuration.cpp @@ -307,14 +307,11 @@ void menu_advanced_settings(); #if ENABLED(BLTOUCH_LCD_VOLTAGE_MENU) void bltouch_report() { - PGMSTR(mode0, "OD"); - PGMSTR(mode1, "5V"); - DEBUG_ECHOPGM("BLTouch Mode: "); - DEBUG_ECHOPGM_P(bltouch.od_5v_mode ? mode1 : mode0); - DEBUG_ECHOLNPGM(" (Default " TERN(BLTOUCH_SET_5V_MODE, "5V", "OD") ")"); + FSTR_P const mode0 = F("OD"), mode1 = F("5V"); + DEBUG_ECHOLNPGM("BLTouch Mode: ", bltouch.od_5v_mode ? mode1 : mode0, " (Default ", TERN(BLTOUCH_SET_5V_MODE, mode1, mode0), ")"); char mess[21]; strcpy_P(mess, PSTR("BLTouch Mode: ")); - strcpy_P(&mess[15], bltouch.od_5v_mode ? mode1 : mode0); + strcpy_P(&mess[15], bltouch.od_5v_mode ? FTOP(mode1) : FTOP(mode0)); ui.set_status(mess); ui.return_to_status(); } diff --git a/Marlin/src/lcd/utf8.cpp b/Marlin/src/lcd/utf8.cpp index 075f8b0c7c93..6957fffc6457 100644 --- a/Marlin/src/lcd/utf8.cpp +++ b/Marlin/src/lcd/utf8.cpp @@ -177,13 +177,8 @@ static inline uint8_t utf8_strlen_cb(const char *pstart, read_byte_cb_t cb_read_ return cnt; } -uint8_t utf8_strlen(const char *pstart) { - return utf8_strlen_cb(pstart, read_byte_ram); -} - -uint8_t utf8_strlen_P(PGM_P pstart) { - return utf8_strlen_cb(pstart, read_byte_rom); -} +uint8_t utf8_strlen(const char *pstart) { return utf8_strlen_cb(pstart, read_byte_ram); } +uint8_t utf8_strlen_P(PGM_P pstart) { return utf8_strlen_cb(pstart, read_byte_rom); } static inline uint8_t utf8_byte_pos_by_char_num_cb(const char *pstart, read_byte_cb_t cb_read_byte, const uint8_t charnum) { uint8_t *p = (uint8_t *)pstart; diff --git a/Marlin/src/libs/vector_3.cpp b/Marlin/src/libs/vector_3.cpp index a222b5cc2e7e..5668d2f392ea 100644 --- a/Marlin/src/libs/vector_3.cpp +++ b/Marlin/src/libs/vector_3.cpp @@ -76,10 +76,11 @@ void vector_3::apply_rotation(const matrix_3x3 &matrix) { } void vector_3::debug(FSTR_P const title) { - SERIAL_ECHOF(title); - SERIAL_ECHOPAIR_F_P(SP_X_STR, x, 6); - SERIAL_ECHOPAIR_F_P(SP_Y_STR, y, 6); - SERIAL_ECHOLNPAIR_F_P(SP_Z_STR, z, 6); + SERIAL_ECHOLN(title, + FPSTR(SP_X_STR), p_float_t(x, 6), + FPSTR(SP_Y_STR), p_float_t(y, 6), + FPSTR(SP_Z_STR), p_float_t(z, 6) + ); } /** @@ -138,7 +139,7 @@ matrix_3x3 matrix_3x3::transpose(const matrix_3x3 &original) { } void matrix_3x3::debug(FSTR_P const title) { - if (title) SERIAL_ECHOLNF(title); + if (title) SERIAL_ECHOLN(title); for (uint8_t i = 0; i < 3; ++i) { for (uint8_t j = 0; j < 3; ++j) { serial_offset(vectors[i][j], 2); diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index 3031e7d69489..63689bf7ca03 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -375,9 +375,8 @@ void Endstops::event_handler() { #endif static void print_es_state(const bool is_hit, FSTR_P const flabel=nullptr) { - if (flabel) SERIAL_ECHOF(flabel); - SERIAL_ECHOPGM(": "); - SERIAL_ECHOLNF(is_hit ? F(STR_ENDSTOP_HIT) : F(STR_ENDSTOP_OPEN)); + if (flabel) SERIAL_ECHO(flabel); + SERIAL_ECHOLN(F(": "), is_hit ? F(STR_ENDSTOP_HIT) : F(STR_ENDSTOP_OPEN)); } #pragma GCC diagnostic pop diff --git a/Marlin/src/module/probe.cpp b/Marlin/src/module/probe.cpp index 0bece02c15a8..204617ba8394 100644 --- a/Marlin/src/module/probe.cpp +++ b/Marlin/src/module/probe.cpp @@ -359,7 +359,7 @@ FORCE_INLINE void probe_specific_action(const bool deploy) { FSTR_P const ds_str = deploy ? GET_TEXT_F(MSG_MANUAL_DEPLOY) : GET_TEXT_F(MSG_MANUAL_STOW); ui.return_to_status(); // To display the new status message ui.set_status(ds_str, 99); - SERIAL_ECHOLNF(deploy ? GET_EN_TEXT_F(MSG_MANUAL_DEPLOY) : GET_EN_TEXT_F(MSG_MANUAL_STOW)); + SERIAL_ECHOLN(deploy ? GET_EN_TEXT_F(MSG_MANUAL_DEPLOY) : GET_EN_TEXT_F(MSG_MANUAL_STOW)); OKAY_BUZZ(); diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index 1defac29771d..321691ba8710 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -3595,7 +3595,7 @@ void MarlinSettings::reset() { #if ANY(EEPROM_CHITCHAT, DEBUG_LEVELING_FEATURE) FSTR_P const hdsl = F("Hardcoded Default Settings Loaded"); TERN_(HOST_EEPROM_CHITCHAT, hostui.notify(hdsl)); - DEBUG_ECHO_START(); DEBUG_ECHOLNF(hdsl); + DEBUG_ECHO_START(); DEBUG_ECHOLN(hdsl); #endif TERN_(EXTENSIBLE_UI, ExtUI::onFactoryReset()); @@ -3691,12 +3691,11 @@ void MarlinSettings::reset() { for (uint8_t py = 0; py < GRID_MAX_POINTS_Y; ++py) { for (uint8_t px = 0; px < GRID_MAX_POINTS_X; ++px) { CONFIG_ECHO_START(); - SERIAL_ECHOPGM(" G29 S3 I", px, " J", py); - SERIAL_ECHOLNPAIR_F_P(SP_Z_STR, LINEAR_UNIT(bedlevel.z_values[px][py]), 5); + SERIAL_ECHOLN(F(" G29 S3 I"), px, F(" J"), py, FPSTR(SP_Z_STR), p_float_t(LINEAR_UNIT(bedlevel.z_values[px][py]), 5)); } } CONFIG_ECHO_START(); - SERIAL_ECHOLNPAIR_F(" G29 S4 Z", LINEAR_UNIT(bedlevel.z_offset), 5); + SERIAL_ECHOLNPGM(" G29 S4 Z", p_float_t(LINEAR_UNIT(bedlevel.z_offset), 5)); } #elif ENABLED(AUTO_BED_LEVELING_UBL) @@ -3717,8 +3716,7 @@ void MarlinSettings::reset() { for (uint8_t py = 0; py < GRID_MAX_POINTS_Y; ++py) { for (uint8_t px = 0; px < GRID_MAX_POINTS_X; ++px) { CONFIG_ECHO_START(); - SERIAL_ECHOPGM(" G29 W I", px, " J", py); - SERIAL_ECHOLNPAIR_F_P(SP_Z_STR, LINEAR_UNIT(bedlevel.z_values[px][py]), 5); + SERIAL_ECHOLN(F(" G29 W I"), px, F(" J"), py, FPSTR(SP_Z_STR), p_float_t(LINEAR_UNIT(bedlevel.z_values[px][py]), 5)); } } } diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 4d366198c17f..d671e7ce89f5 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -870,9 +870,9 @@ volatile bool Temperature::raw_temps_ready = false; #if ANY(PIDTEMPBED, PIDTEMPCHAMBER) FSTR_P const estring = GHV(F("chamber"), F("bed"), FPSTR(NUL_STR)); - say_default_(); SERIAL_ECHOF(estring); SERIAL_ECHOLNPGM("Kp ", tune_pid.p); - say_default_(); SERIAL_ECHOF(estring); SERIAL_ECHOLNPGM("Ki ", tune_pid.i); - say_default_(); SERIAL_ECHOF(estring); SERIAL_ECHOLNPGM("Kd ", tune_pid.d); + say_default_(); SERIAL_ECHO(estring, F("Kp "), tune_pid.p); + say_default_(); SERIAL_ECHO(estring, F("Ki "), tune_pid.i); + say_default_(); SERIAL_ECHO(estring, F("Kd "), tune_pid.d); #else say_default_(); SERIAL_ECHOLNPGM("Kp ", tune_pid.p); say_default_(); SERIAL_ECHOLNPGM("Ki ", tune_pid.i); @@ -1244,7 +1244,7 @@ volatile bool Temperature::raw_temps_ready = false; #if ENABLED(DEBUG_MPC_AUTOTUNE) SERIAL_ECHOLNPGM("asymp_temp ", asymp_temp); - SERIAL_ECHOLNPAIR_F("block_responsiveness ", block_responsiveness, 4); + SERIAL_ECHOLNPGM("block_responsiveness ", p_float_t(block_responsiveness, 4)); #endif // Make initial guess at transfer coefficients @@ -1293,9 +1293,9 @@ volatile bool Temperature::raw_temps_ready = false; block_responsiveness = -log((t2 - asymp_temp) / (t1 - asymp_temp)) / tuner.get_sample_interval(); #if ENABLED(DEBUG_MPC_AUTOTUNE) - SERIAL_ECHOLN("Refining estimates for:"); + SERIAL_ECHOLNPGM("Refining estimates for:"); SERIAL_ECHOLNPGM("asymp_temp ", asymp_temp); - SERIAL_ECHOLNPAIR_F("block_responsiveness ", block_responsiveness, 4); + SERIAL_ECHOLNPGM("block_responsiveness ", p_float_t(block_responsiveness, 4)); #endif // Update analytic tuning values based on the above @@ -1308,9 +1308,9 @@ volatile bool Temperature::raw_temps_ready = false; TERN_(DWIN_LCD_PROUI, DWIN_MPCTuning(MPC_DONE)); SERIAL_ECHOLNPGM("MPC_BLOCK_HEAT_CAPACITY ", mpc.block_heat_capacity); - SERIAL_ECHOLNPAIR_F("MPC_SENSOR_RESPONSIVENESS ", mpc.sensor_responsiveness, 4); - SERIAL_ECHOLNPAIR_F("MPC_AMBIENT_XFER_COEFF ", mpc.ambient_xfer_coeff_fan0, 4); - TERN_(HAS_FAN, SERIAL_ECHOLNPAIR_F("MPC_AMBIENT_XFER_COEFF_FAN255 ", ambient_xfer_coeff_fan255, 4)); + SERIAL_ECHOLNPGM("MPC_SENSOR_RESPONSIVENESS ", p_float_t(mpc.sensor_responsiveness, 4)); + SERIAL_ECHOLNPGM("MPC_AMBIENT_XFER_COEFF ", p_float_t(mpc.ambient_xfer_coeff_fan0, 4)); + TERN_(HAS_FAN, SERIAL_ECHOLNPGM("MPC_AMBIENT_XFER_COEFF_FAN255 ", p_float_t(ambient_xfer_coeff_fan255, 4))); } #endif // MPC_AUTOTUNE @@ -1477,7 +1477,7 @@ void Temperature::_temp_error(const heater_id_t heater_id, FSTR_P const serial_m if (IsRunning() && TERN1(BOGUS_TEMPERATURE_GRACE_PERIOD, killed == 2)) { SERIAL_ERROR_START(); - SERIAL_ECHOF(serial_msg); + SERIAL_ECHO(serial_msg); SERIAL_ECHOPGM(STR_STOPPED_HEATER); heater_id_t real_heater_id = heater_id; @@ -1583,7 +1583,7 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { FORCE_INLINE void debug(const_celsius_float_t c, const_float_t pid_out, FSTR_P const name=nullptr, const int8_t index=-1) { if (TERN0(HAS_PID_DEBUG, thermalManager.pid_debug_flag)) { SERIAL_ECHO_START(); - if (name) SERIAL_ECHOF(name); + if (name) SERIAL_ECHO(name); if (index >= 0) SERIAL_ECHO(index); SERIAL_ECHOLNPGM( STR_PID_DEBUG_INPUT, c, @@ -2225,12 +2225,12 @@ void Temperature::task() { const user_thermistor_t &t = user_thermistor[t_index]; - SERIAL_ECHOPAIR_F(" R", t.series_res, 1); - SERIAL_ECHOPAIR_F_P(SP_T_STR, t.res_25, 1); - SERIAL_ECHOPAIR_F_P(SP_B_STR, t.beta, 1); - SERIAL_ECHOPAIR_F_P(SP_C_STR, t.sh_c_coeff, 9); - SERIAL_ECHOPGM(" ; "); - SERIAL_ECHOF( + SERIAL_ECHO( + F(" R"), p_float_t(t.series_res, 1), FPSTR(SP_T_STR), p_float_t(t.res_25, 1), + FPSTR(SP_B_STR), p_float_t(t.beta, 1), FPSTR(SP_C_STR), p_float_t(t.sh_c_coeff, 9), + F(" ; ") + ); + SERIAL_ECHOLN( TERN_(TEMP_SENSOR_0_IS_CUSTOM, t_index == CTI_HOTEND_0 ? F("HOTEND 0") :) TERN_(TEMP_SENSOR_1_IS_CUSTOM, t_index == CTI_HOTEND_1 ? F("HOTEND 1") :) TERN_(TEMP_SENSOR_2_IS_CUSTOM, t_index == CTI_HOTEND_2 ? F("HOTEND 2") :) @@ -2245,9 +2245,8 @@ void Temperature::task() { TERN_(TEMP_SENSOR_PROBE_IS_CUSTOM, t_index == CTI_PROBE ? F("PROBE") :) TERN_(TEMP_SENSOR_BOARD_IS_CUSTOM, t_index == CTI_BOARD ? F("BOARD") :) TERN_(TEMP_SENSOR_REDUNDANT_IS_CUSTOM, t_index == CTI_REDUNDANT ? F("REDUNDANT") :) - nullptr + FSTR_P(nullptr) ); - SERIAL_EOL(); } celsius_float_t Temperature::user_thermistor_to_deg_c(const uint8_t t_index, const raw_adc_t raw) { @@ -4189,8 +4188,8 @@ void Temperature::isr() { #else #define SFP 2 #endif - SERIAL_CHAR(':'); SERIAL_PRINT(c, SFP); - if (show_t) { SERIAL_ECHOPGM(" /"); SERIAL_PRINT(t, SFP); } + SERIAL_ECHO(AS_CHAR(':'), p_float_t(c, SFP)); + if (show_t) { SERIAL_ECHOPGM(" /", p_float_t(t, SFP)); } #if ENABLED(SHOW_TEMP_ADC_VALUES) // Temperature MAX SPI boards do not have an OVERSAMPLENR defined SERIAL_ECHOPGM(" (", TERN(HAS_MAXTC_LIBRARIES, k == 'T', false) ? r : r * RECIPROCAL(OVERSAMPLENR)); diff --git a/Marlin/src/pins/pinsDebug.h b/Marlin/src/pins/pinsDebug.h index 4d51de52c88e..9181a5b9da29 100644 --- a/Marlin/src/pins/pinsDebug.h +++ b/Marlin/src/pins/pinsDebug.h @@ -177,11 +177,11 @@ const PinInfo pin_array[] PROGMEM = { bool pin_is_protected(const pin_t pin); static void print_input_or_output(const bool isout) { - SERIAL_ECHOF(isout ? F("Output ") : F("Input ")); + SERIAL_ECHO(isout ? F("Output ") : F("Input ")); } static void print_pin_state(const bool state) { - SERIAL_ECHOF(state ? F("HIGH") : F("LOW")); + SERIAL_ECHO(state ? F("HIGH") : F("LOW")); } // pretty report with PWM info @@ -209,7 +209,7 @@ inline void report_pin_state_extended(const pin_t pin, const bool ignore, const for (uint8_t x = 0; x < COUNT(pin_array); ++x) { // scan entire array and report all instances of this pin if (GET_ARRAY_PIN(x) == pin) { if (!found) { // report digital and analog pin number only on the first time through - if (start_string) SERIAL_ECHOF(start_string); + if (start_string) SERIAL_ECHO(start_string); SERIAL_ECHOPGM("PIN: "); PRINT_PIN(pin); print_port(pin); @@ -257,7 +257,7 @@ inline void report_pin_state_extended(const pin_t pin, const bool ignore, const } // end of for loop if (!found) { - if (start_string) SERIAL_ECHOF(start_string); + if (start_string) SERIAL_ECHO(start_string); SERIAL_ECHOPGM("PIN: "); PRINT_PIN(pin); print_port(pin); diff --git a/Marlin/src/sd/cardreader.cpp b/Marlin/src/sd/cardreader.cpp index 40c1f09f1182..4bc22e84cada 100644 --- a/Marlin/src/sd/cardreader.cpp +++ b/Marlin/src/sd/cardreader.cpp @@ -668,9 +668,7 @@ void announceOpen(const uint8_t doing, const char * const path) { if (doing) { PORT_REDIRECT(SerialMask::All); SERIAL_ECHO_START(); - SERIAL_ECHOPGM("Now "); - SERIAL_ECHOF(doing == 1 ? F("doing") : F("fresh")); - SERIAL_ECHOLNPGM(" file: ", path); + SERIAL_ECHOLN(F("Now "), doing == 1 ? F("doing") : F("fresh"), F(" file: "), path); } } @@ -1447,8 +1445,7 @@ void CardReader::fileHasFinished() { recovery.init(); removeFile(recovery.filename); #if ENABLED(DEBUG_POWER_LOSS_RECOVERY) - SERIAL_ECHOPGM("Power-loss file delete"); - SERIAL_ECHOF(jobRecoverFileExists() ? F(" failed.\n") : F("d.\n")); + SERIAL_ECHOLN(F("Power-loss file delete"), jobRecoverFileExists() ? F(" failed.") : F("d.")); #endif } } diff --git a/docs/Serial.md b/docs/Serial.md index 88846e1bb45a..5e0d7e63eb07 100644 --- a/docs/Serial.md +++ b/docs/Serial.md @@ -57,18 +57,15 @@ The following macros are defined (in `serial.h`) to output data to the serial po |-------|------------|-------|---------|-----------------| | `SERIAL_ECHO` | Any basic type is supported (`char`, `uint8_t`, `int16_t`, `int32_t`, `float`, `long`, `const char*`, ...). | For a numeric type it prints the number in decimal. A string is output as a string. | `uint8_t a = 123; SERIAL_ECHO(a); SERIAL_CHAR(' '); SERIAL_ECHO(' '); ` | `123 32` | | `SERIAL_ECHOLN` | Same as `SERIAL_ECHO` | Do `SERIAL_ECHO`, adding a newline | `int a = 456; SERIAL_ECHOLN(a);` | `456\n` | -| `SERIAL_ECHO_F` | `float` or `double` | Print a decimal value with a given precision (default 2) | `float a = 3.1415; SERIAL_ECHO_F(a); SERIAL_CHAR(' '); SERIAL_ECHO_F(a, 4);` | `3.14 3.1415`| | `SERIAL_ECHOPGM` | String / Value pairs | Print a series of string literals and values alternately | `SERIAL_ECHOPGM("Bob", 34);` | `Bob34` | | `SERIAL_ECHOLNPGM` | Same as `SERIAL_ECHOPGM` | Do `SERIAL_ECHOPGM`, adding a newline | `SERIAL_ECHOPGM("Alice", 56);` | `alice56` | | `SERIAL_ECHOPGM_P` | Like `SERIAL_ECHOPGM` but takes PGM strings | Print a series of PGM strings and values alternately | `SERIAL_ECHOPGM_P(GET_TEXT(MSG_HELLO), 123);` | `Hello123` | | `SERIAL_ECHOLNPGM_P` | Same as `SERIAL_ECHOPGM_P` | Do `SERIAL_ECHOPGM_P`, adding a newline | `SERIAL_ECHOLNPGM_P(PSTR("Alice"), 78);` | `alice78\n` | -| `SERIAL_ECHOLIST` | String literal, values | Print a string literal and a list of values | `SERIAL_ECHOLIST(F("Key "), 1, 2, 3);` | `Key 1, 2, 3` | | `SERIAL_ECHO_START` | None | Prefix an echo line | `SERIAL_ECHO_START();` | `echo:` | | `SERIAL_ECHO_MSG` | Same as `SERIAL_ECHOLNPGM` | Print a full echo line | `SERIAL_ECHO_MSG("Count is ", count);` | `echo:Count is 3` | | `SERIAL_ERROR_START`| None | Prefix an error line | `SERIAL_ERROR_START();` | `Error:` | | `SERIAL_ERROR_MSG` | Same as `SERIAL_ECHOLNPGM` | Print a full error line | `SERIAL_ERROR_MSG("Not found");` | `Error:Not found` | | `SERIAL_ECHO_SP` | Number of spaces | Print one or more spaces | `SERIAL_ECHO_SP(3)` | ` ` | | `SERIAL_EOL` | None | Print an end of line | `SERIAL_EOL();` | `\n` | -| `SERIAL_OUT` | `SERIAL_OUT(myMethod)` | Call a custom serial method | `SERIAL_OUT(msgDone);` | ... | *This document was written by [X-Ryl669](https://blog.cyril.by) and is under [CC-SA license](https://creativecommons.org/licenses/by-sa)* From aa2f4051bb335a24d062b56ec65162633af9dc6d Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Mon, 12 Jun 2023 14:39:49 -0700 Subject: [PATCH 286/427] =?UTF-8?q?=F0=9F=94=A5=20Remove=20VAkE=20403D=20(?= =?UTF-8?q?#25969)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/boards.h | 55 +++--- Marlin/src/pins/pins.h | 2 - Marlin/src/pins/stm32f4/pins_VAKE403D.h | 226 ------------------------ 3 files changed, 27 insertions(+), 256 deletions(-) delete mode 100644 Marlin/src/pins/stm32f4/pins_VAKE403D.h diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index fbdb807d33c4..5cde344b4dd5 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -425,34 +425,33 @@ #define BOARD_LERDGE_K 5218 // Lerdge K (STM32F407ZG) #define BOARD_LERDGE_S 5219 // Lerdge S (STM32F407VE) #define BOARD_LERDGE_X 5220 // Lerdge X (STM32F407VE) -#define BOARD_VAKE403D 5221 // VAkE 403D (STM32F446VE) -#define BOARD_FYSETC_S6 5222 // FYSETC S6 (STM32F446VE) -#define BOARD_FYSETC_S6_V2_0 5223 // FYSETC S6 v2.0 (STM32F446VE) -#define BOARD_FYSETC_SPIDER 5224 // FYSETC Spider (STM32F446VE) -#define BOARD_FLYF407ZG 5225 // FLYmaker FLYF407ZG (STM32F407ZG) -#define BOARD_MKS_ROBIN2 5226 // MKS Robin2 V1.0 (STM32F407ZE) -#define BOARD_MKS_ROBIN_PRO_V2 5227 // MKS Robin Pro V2 (STM32F407VE) -#define BOARD_MKS_ROBIN_NANO_V3 5228 // MKS Robin Nano V3 (STM32F407VG) -#define BOARD_MKS_ROBIN_NANO_V3_1 5229 // MKS Robin Nano V3.1 (STM32F407VE) -#define BOARD_MKS_MONSTER8_V1 5230 // MKS Monster8 V1 (STM32F407VE) -#define BOARD_MKS_MONSTER8_V2 5231 // MKS Monster8 V2 (STM32F407VE) -#define BOARD_ANET_ET4 5232 // ANET ET4 V1.x (STM32F407VG) -#define BOARD_ANET_ET4P 5233 // ANET ET4P V1.x (STM32F407VG) -#define BOARD_FYSETC_CHEETAH_V20 5234 // FYSETC Cheetah V2.0 (STM32F401RC) -#define BOARD_TH3D_EZBOARD_V2 5235 // TH3D EZBoard v2.0 (STM32F405RG) -#define BOARD_OPULO_LUMEN_REV3 5236 // Opulo Lumen PnP Controller REV3 (STM32F407VE / STM32F407VG) -#define BOARD_MKS_ROBIN_NANO_V1_3_F4 5237 // MKS Robin Nano V1.3 and MKS Robin Nano-S V1.3 (STM32F407VE) -#define BOARD_MKS_EAGLE 5238 // MKS Eagle (STM32F407VE) -#define BOARD_ARTILLERY_RUBY 5239 // Artillery Ruby (STM32F401RC) -#define BOARD_FYSETC_SPIDER_V2_2 5240 // FYSETC Spider V2.2 (STM32F446VE) -#define BOARD_CREALITY_V24S1_301F4 5241 // Creality v2.4.S1_301F4 (STM32F401RC) as found in the Ender-3 S1 F4 -#define BOARD_OPULO_LUMEN_REV4 5242 // Opulo Lumen PnP Controller REV4 (STM32F407VE / STM32F407VG) -#define BOARD_FYSETC_SPIDER_KING407 5243 // FYSETC Spider King407 (STM32F407ZG) -#define BOARD_MKS_SKIPR_V1 5244 // MKS SKIPR v1.0 all-in-one board (STM32F407VE) -#define BOARD_TRONXY_V10 5245 // TRONXY V10 (STM32F446ZE) -#define BOARD_CREALITY_F401RE 5246 // Creality CR4NS200141C13 (STM32F401RE) as found in the Ender-5 S1 -#define BOARD_BLACKPILL_CUSTOM 5247 // Custom board based on STM32F401CDU6. -#define BOARD_I3DBEEZ9_V1 5248 // I3DBEEZ9 V1 (STM32F407ZG) +#define BOARD_FYSETC_S6 5221 // FYSETC S6 (STM32F446VE) +#define BOARD_FYSETC_S6_V2_0 5222 // FYSETC S6 v2.0 (STM32F446VE) +#define BOARD_FYSETC_SPIDER 5223 // FYSETC Spider (STM32F446VE) +#define BOARD_FLYF407ZG 5224 // FLYmaker FLYF407ZG (STM32F407ZG) +#define BOARD_MKS_ROBIN2 5225 // MKS Robin2 V1.0 (STM32F407ZE) +#define BOARD_MKS_ROBIN_PRO_V2 5226 // MKS Robin Pro V2 (STM32F407VE) +#define BOARD_MKS_ROBIN_NANO_V3 5227 // MKS Robin Nano V3 (STM32F407VG) +#define BOARD_MKS_ROBIN_NANO_V3_1 5228 // MKS Robin Nano V3.1 (STM32F407VE) +#define BOARD_MKS_MONSTER8_V1 5229 // MKS Monster8 V1 (STM32F407VE) +#define BOARD_MKS_MONSTER8_V2 5230 // MKS Monster8 V2 (STM32F407VE) +#define BOARD_ANET_ET4 5231 // ANET ET4 V1.x (STM32F407VG) +#define BOARD_ANET_ET4P 5232 // ANET ET4P V1.x (STM32F407VG) +#define BOARD_FYSETC_CHEETAH_V20 5233 // FYSETC Cheetah V2.0 (STM32F401RC) +#define BOARD_TH3D_EZBOARD_V2 5234 // TH3D EZBoard v2.0 (STM32F405RG) +#define BOARD_OPULO_LUMEN_REV3 5235 // Opulo Lumen PnP Controller REV3 (STM32F407VE / STM32F407VG) +#define BOARD_MKS_ROBIN_NANO_V1_3_F4 5236 // MKS Robin Nano V1.3 and MKS Robin Nano-S V1.3 (STM32F407VE) +#define BOARD_MKS_EAGLE 5237 // MKS Eagle (STM32F407VE) +#define BOARD_ARTILLERY_RUBY 5238 // Artillery Ruby (STM32F401RC) +#define BOARD_FYSETC_SPIDER_V2_2 5239 // FYSETC Spider V2.2 (STM32F446VE) +#define BOARD_CREALITY_V24S1_301F4 5240 // Creality v2.4.S1_301F4 (STM32F401RC) as found in the Ender-3 S1 F4 +#define BOARD_OPULO_LUMEN_REV4 5241 // Opulo Lumen PnP Controller REV4 (STM32F407VE / STM32F407VG) +#define BOARD_FYSETC_SPIDER_KING407 5242 // FYSETC Spider King407 (STM32F407ZG) +#define BOARD_MKS_SKIPR_V1 5243 // MKS SKIPR v1.0 all-in-one board (STM32F407VE) +#define BOARD_TRONXY_V10 5244 // TRONXY V10 (STM32F446ZE) +#define BOARD_CREALITY_F401RE 5245 // Creality CR4NS200141C13 (STM32F401RE) as found in the Ender-5 S1 +#define BOARD_BLACKPILL_CUSTOM 5246 // Custom board based on STM32F401CDU6. +#define BOARD_I3DBEEZ9_V1 5247 // I3DBEEZ9 V1 (STM32F407ZG) // // ARM Cortex-M7 diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index e15aeb5c4b9c..f4ea959cb759 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -740,8 +740,6 @@ #include "stm32f4/pins_LERDGE_S.h" // STM32F4 env:LERDGES env:LERDGES_usb_flash_drive #elif MB(LERDGE_X) #include "stm32f4/pins_LERDGE_X.h" // STM32F4 env:LERDGEX env:LERDGEX_usb_flash_drive -#elif MB(VAKE403D) - #include "stm32f4/pins_VAKE403D.h" // STM32F4 #elif MB(FYSETC_S6) #include "stm32f4/pins_FYSETC_S6.h" // STM32F4 env:FYSETC_S6 env:FYSETC_S6_8000 #elif MB(FYSETC_S6_V2_0) diff --git a/Marlin/src/pins/stm32f4/pins_VAKE403D.h b/Marlin/src/pins/stm32f4/pins_VAKE403D.h deleted file mode 100644 index e4150f3bd27c..000000000000 --- a/Marlin/src/pins/stm32f4/pins_VAKE403D.h +++ /dev/null @@ -1,226 +0,0 @@ -/** - * Marlin 3D Printer Firmware - * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] - * - * Based on Sprinter and grbl. - * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ -#pragma once - -#define ALLOW_STM32DUINO -#include "env_validate.h" - -#if HOTENDS > 2 || E_STEPPERS > 2 - #error "STM32F4 VAkE supports up to 2 hotends / E steppers." -#endif - -#define DEFAULT_MACHINE_NAME "STM32F446VET6" -#define BOARD_INFO_NAME "STM32F4 VAkE" - -//#define I2C_EEPROM -#define MARLIN_EEPROM_SIZE 0x1000 // 4K - -// -// Servos -// -//#define SERVO0_PIN PE13 -//#define SERVO1_PIN PE14 - -// -// Limit Switches -// -#define X_STOP_PIN PE10 -#define Y_STOP_PIN PE9 -#define Z_STOP_PIN PE8 - -// -// Z Probe (when not Z_MIN_PIN) -// -#ifndef Z_MIN_PROBE_PIN - #define Z_MIN_PROBE_PIN PA4 -#endif - -// -// Filament runout -// -#define FIL_RUNOUT_PIN PA3 - -// -// Steppers -// - -#define STEPPER_ENABLE_PIN PB2 - -#define X_STEP_PIN PC6 // X_STEP -#define X_DIR_PIN PC7 // X_DIR -#define X_ENABLE_PIN PB2 // -#ifndef X_CS_PIN - #define X_CS_PIN PC8 // X_CS -#endif - -#define Y_STEP_PIN PD9 // Y_STEP -#define Y_DIR_PIN PD10 // Y_DIR -#define Y_ENABLE_PIN PB2 // -#ifndef Y_CS_PIN - #define Y_CS_PIN PD11 // Y_CS -#endif - -#define Z_STEP_PIN PE15 // Z_STEP -#define Z_DIR_PIN PB10 // Z_DIR -#define Z_ENABLE_PIN PB2 -#ifndef Z_CS_PIN - #define Z_CS_PIN PD8 -#endif - -#define E0_STEP_PIN PB1 -#define E0_DIR_PIN PB13 -#define E0_ENABLE_PIN PB2 -#ifndef E0_CS_PIN - #define E0_CS_PIN PE11 -#endif - -#define E1_STEP_PIN PC4 -#define E1_DIR_PIN PC5 -#define E1_ENABLE_PIN PB2 -#ifndef E1_CS_PIN - #define E1_CS_PIN PB0 -#endif - -#define SD_SCK_PIN PE12 // PA5 // SPI1 for SD card -#define SD_MISO_PIN PE13 // PA6 -#define SD_MOSI_PIN PE14 // PA7 - -// added for SD card : optional or not ??? -//#define SD_CHIP_SELECT_PIN SDSS // The default chip select pin for the SD card is SS. -// The following three pins must not be redefined for hardware SPI. -//#define SPI_MOSI_PIN SD_MOSI_PIN // SPI Master Out Slave In pin -//#define SPI_MISO_PIN SD_MISO_PIN // SPI Master In Slave Out pin -//#define SPI_SCK_PIN SD_SCK_PIN // SPI Clock pin - -// -// Temperature Sensors (Analog inputs) -// - -#define TEMP_0_PIN PC0 // Analog Input -#define TEMP_1_PIN PC1 // Analog Input -#define TEMP_2_PIN PC2 // Analog Input -#define TEMP_3_PIN PC3 // Analog Input -#define TEMP_BED_PIN PC3 // Analog Input - -// -// Heaters / Fans -// - -#define HEATER_0_PIN PD15 -#define HEATER_1_PIN PD14 -#define HEATER_BED_PIN PD12 - -#ifndef FAN0_PIN - #define FAN0_PIN PD13 -#endif -#define FAN1_PIN PB5 // PA0 -#define FAN2_PIN PB4 // PA1 - -#ifndef E0_AUTO_FAN_PIN - #define E0_AUTO_FAN_PIN PD13 -#endif - -// -// Misc. Functions -// - -//#define CASE_LIGHT_PIN_CI PF13 -//#define CASE_LIGHT_PIN_DO PF14 -//#define NEOPIXEL_PIN PF13 - -// -// Průša i3 MK2 Multi Material Multiplexer Support -// -#if HAS_PRUSA_MMU1 - //#define E_MUX0_PIN PG3 - //#define E_MUX1_PIN PG4 -#endif - -#define LED_PIN PB14 // Alive -#define PS_ON_PIN PE0 -#define KILL_PIN PD5 -#define POWER_LOSS_PIN PA4 // ?? Power loss / nAC_FAULT - -#if HAS_MEDIA - #define SD_DETECT_PIN EXP2_07_PIN - #define SD_SS_PIN PB15 // USD_CS -> CS for onboard SD -#endif - -/** - * ------ ------ - * PC9 | 1 2 | PB12 ? | 1 2 | ? - * PD7 | 3 4 | PC12 PD6 | 3 4 | ? - * PD1 | 5 6 PD2 PD0 | 5 6 ? - * PD3 | 7 8 | PD4 PB7 | 7 8 | RESET - * GND | 9 10 | 5V GND | 9 10 | 3.3V - * ------ ------ - * EXP1 EXP2 - */ -#define EXP1_01_PIN PC9 -#define EXP1_02_PIN PB12 -#define EXP1_03_PIN PD7 -#define EXP1_04_PIN PC12 -#define EXP1_05_PIN PD1 -#define EXP1_06_PIN PD2 -#define EXP1_07_PIN PD3 -#define EXP1_08_PIN PD4 - -//#define EXP2_01_PIN ? -//#define EXP2_02_PIN ? -#define EXP2_03_PIN PD6 -//#define EXP2_04_PIN ? -#define EXP2_05_PIN PD0 -//#define EXP2_06_PIN ? -#define EXP2_07_PIN PB7 -#define EXP2_08_PIN -1 - -// -// LCD / Controller -// -#if HAS_WIRED_LCD - - #if HAS_MEDIA - #define SDSS PB6 // CS for SD card in LCD - #endif - - #define BEEPER_PIN EXP1_01_PIN - - #define BTN_EN1 EXP2_03_PIN - #define BTN_EN2 EXP2_05_PIN - #define BTN_ENC EXP1_02_PIN - - #define LCD_PINS_EN EXP1_03_PIN - #define LCD_PINS_RS EXP1_04_PIN - - #define LCD_PINS_D4 EXP1_05_PIN - #define LCD_PINS_D5 EXP1_06_PIN - #define LCD_PINS_D6 EXP1_07_PIN - #define LCD_PINS_D7 EXP1_08_PIN - -#endif - -// Alter timing for graphical display -#if IS_U8GLIB_ST7920 - #define BOARD_ST7920_DELAY_1 96 - #define BOARD_ST7920_DELAY_2 48 - #define BOARD_ST7920_DELAY_3 715 -#endif From 1726ba5bda1deb9b71e2d9644c789e806b7d1127 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Tue, 13 Jun 2023 00:23:25 +0000 Subject: [PATCH 287/427] [cron] Bump distribution date (2023-06-13) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index e61748682a90..157ebe20f9d2 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-12" +//#define STRING_DISTRIBUTION_DATE "2023-06-13" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index dc724713c4ff..feaba9dbe763 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-12" + #define STRING_DISTRIBUTION_DATE "2023-06-13" #endif /** From c3694f1c038fa20ad749118b0a1c7aa88e3dd5f2 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 14 Jun 2023 17:24:50 -0500 Subject: [PATCH 288/427] =?UTF-8?q?=F0=9F=8E=A8=20Lowercase=20methods,=20f?= =?UTF-8?q?unctions,=20data=20members=20(#25939)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit For: TFT, DGUS, MarlinUI, Anycubic, JyersUI, CrealityUI --- Marlin/src/HAL/LPC1768/tft/tft_spi.cpp | 40 +- Marlin/src/HAL/LPC1768/tft/tft_spi.h | 38 +- Marlin/src/HAL/LPC1768/tft/xpt2046.cpp | 12 +- Marlin/src/HAL/LPC1768/tft/xpt2046.h | 10 +- Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h | 30 +- Marlin/src/HAL/NATIVE_SIM/tft/xpt2046.h | 10 +- Marlin/src/HAL/STM32/tft/gt911.cpp | 2 +- Marlin/src/HAL/STM32/tft/gt911.h | 2 +- Marlin/src/HAL/STM32/tft/tft_fsmc.cpp | 84 +- Marlin/src/HAL/STM32/tft/tft_fsmc.h | 42 +- Marlin/src/HAL/STM32/tft/tft_ltdc.cpp | 60 +- Marlin/src/HAL/STM32/tft/tft_ltdc.h | 48 +- Marlin/src/HAL/STM32/tft/tft_spi.cpp | 62 +- Marlin/src/HAL/STM32/tft/tft_spi.h | 42 +- Marlin/src/HAL/STM32/tft/xpt2046.cpp | 10 +- Marlin/src/HAL/STM32/tft/xpt2046.h | 12 +- Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp | 44 +- Marlin/src/HAL/STM32F1/tft/tft_fsmc.h | 36 +- Marlin/src/HAL/STM32F1/tft/tft_spi.cpp | 42 +- Marlin/src/HAL/STM32F1/tft/tft_spi.h | 38 +- Marlin/src/HAL/STM32F1/tft/xpt2046.cpp | 12 +- Marlin/src/HAL/STM32F1/tft/xpt2046.h | 10 +- .../src/HAL/shared/backtrace/unwmemaccess.cpp | 2 +- Marlin/src/MarlinCore.cpp | 2 +- Marlin/src/inc/SanityCheck.h | 2 +- Marlin/src/lcd/HD44780/marlinui_HD44780.cpp | 14 +- .../dogm/u8g_dev_tft_upscale_from_128x64.cpp | 30 +- Marlin/src/lcd/e3v2/creality/dwin.cpp | 2872 ++++++++--------- Marlin/src/lcd/e3v2/creality/dwin.h | 114 +- Marlin/src/lcd/e3v2/creality/dwin_lcd.cpp | 36 +- Marlin/src/lcd/e3v2/creality/dwin_lcd.h | 2 +- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 2124 ++++++------ Marlin/src/lcd/e3v2/jyersui/dwin.h | 132 +- Marlin/src/lcd/e3v2/jyersui/dwin_lcd.cpp | 26 +- Marlin/src/lcd/e3v2/jyersui/dwin_lcd.h | 4 +- Marlin/src/lcd/e3v2/marlinui/dwin_lcd.cpp | 16 +- Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp | 6 +- Marlin/src/lcd/e3v2/marlinui/dwin_string.h | 2 +- .../src/lcd/e3v2/marlinui/lcdprint_dwin.cpp | 8 +- Marlin/src/lcd/e3v2/marlinui/ui_common.cpp | 92 +- .../lcd/e3v2/marlinui/ui_status_480x272.cpp | 58 +- Marlin/src/lcd/extui/anycubic/Tunes.cpp | 2 +- Marlin/src/lcd/extui/anycubic/Tunes.h | 2 +- .../lcd/extui/anycubic_chiron/chiron_tft.cpp | 10 +- .../anycubic_i3mega/anycubic_i3mega_lcd.cpp | 75 +- .../anycubic_i3mega/anycubic_i3mega_lcd.h | 6 +- .../extui/anycubic_vyper/FileNavigator.cpp | 6 +- .../src/lcd/extui/anycubic_vyper/dgus_tft.cpp | 478 +-- .../src/lcd/extui/anycubic_vyper/dgus_tft.h | 4 +- .../lcd/extui/anycubic_vyper/vyper_extui.cpp | 50 +- .../extui/dgus_reloaded/DGUSSetupHandler.cpp | 26 +- .../extui/dgus_reloaded/DGUSSetupHandler.h | 26 +- .../definition/DGUS_ScreenSetup.cpp | 26 +- .../dgus_reloaded/dgus_reloaded_extui.cpp | 2 +- Marlin/src/lcd/extui/mks_ui/SPI_TFT.cpp | 26 +- Marlin/src/lcd/extui/mks_ui/SPI_TFT.h | 10 +- .../lcd/extui/mks_ui/draw_error_message.cpp | 2 +- .../extui/mks_ui/draw_touch_calibration.cpp | 4 +- Marlin/src/lcd/extui/mks_ui/draw_ui.cpp | 4 +- Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp | 4 +- Marlin/src/lcd/extui/mks_ui/pic_manager.cpp | 40 +- Marlin/src/lcd/extui/mks_ui/pic_manager.h | 4 +- .../extui/mks_ui/tft_lvgl_configuration.cpp | 14 +- .../lcd/extui/mks_ui/tft_lvgl_configuration.h | 2 +- Marlin/src/lcd/extui/mks_ui/wifi_module.cpp | 8 +- Marlin/src/lcd/marlinui.cpp | 6 +- Marlin/src/lcd/tft/canvas.cpp | 8 +- Marlin/src/lcd/tft/tft.cpp | 4 +- Marlin/src/lcd/tft/tft.h | 6 +- Marlin/src/lcd/tft/tft_string.cpp | 32 +- Marlin/src/lcd/tft/tft_string.h | 36 +- Marlin/src/lcd/tft/touch.cpp | 2 +- Marlin/src/lcd/tft/ui_1024x600.cpp | 43 +- Marlin/src/lcd/tft/ui_320x240.cpp | 43 +- Marlin/src/lcd/tft/ui_480x320.cpp | 43 +- Marlin/src/lcd/tft_io/tft_io.cpp | 106 +- Marlin/src/lcd/tft_io/tft_io.h | 30 +- Marlin/src/lcd/touch/touch_buttons.cpp | 2 +- Marlin/src/module/settings.cpp | 10 +- Marlin/src/module/temperature.cpp | 6 +- Marlin/src/sd/Sd2Card.h | 2 +- Marlin/src/sd/cardreader.cpp | 2 +- 82 files changed, 3716 insertions(+), 3724 deletions(-) diff --git a/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp b/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp index c148617785cc..440e9f8598d5 100644 --- a/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp +++ b/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp @@ -30,7 +30,7 @@ SPIClass TFT_SPI::SPIx(TFT_SPI_DEVICE); -void TFT_SPI::Init() { +void TFT_SPI::init() { #if PIN_EXISTS(TFT_RESET) OUT_WRITE(TFT_RESET_PIN, HIGH); delay(100); @@ -49,21 +49,21 @@ void TFT_SPI::Init() { SPIx.setDataMode(SPI_MODE0); } -void TFT_SPI::DataTransferBegin(uint16_t DataSize) { - SPIx.setDataSize(DataSize); +void TFT_SPI::dataTransferBegin(uint16_t dataSize) { + SPIx.setDataSize(dataSize); SPIx.begin(); WRITE(TFT_CS_PIN, LOW); } -uint32_t TFT_SPI::GetID() { +uint32_t TFT_SPI::getID() { uint32_t id; - id = ReadID(LCD_READ_ID); + id = readID(LCD_READ_ID); if ((id & 0xFFFF) == 0 || (id & 0xFFFF) == 0xFFFF) - id = ReadID(LCD_READ_ID4); + id = readID(LCD_READ_ID4); return id; } -uint32_t TFT_SPI::ReadID(uint16_t Reg) { +uint32_t TFT_SPI::readID(uint16_t reg) { uint32_t data = 0; #if PIN_EXISTS(TFT_MISO) @@ -72,14 +72,14 @@ uint32_t TFT_SPI::ReadID(uint16_t Reg) { SPIx.setClock(SPI_CLOCK_DIV64); SPIx.begin(); WRITE(TFT_CS_PIN, LOW); - WriteReg(Reg); + writeReg(reg); for (uint8_t i = 0; i < 4; ++i) { SPIx.read((uint8_t*)&d, 1); data = (data << 8) | d; } - DataTransferEnd(); + dataTransferEnd(); SPIx.setClock(SPI_CLOCK_MAX_TFT); #endif @@ -103,11 +103,11 @@ bool TFT_SPI::isBusy() { if ((SSP_GetStatus(LPC_SSPx, SSP_STAT_TXFIFO_EMPTY) == RESET) || (SSP_GetStatus(LPC_SSPx, SSP_STAT_BUSY) == SET)) return true; } - Abort(); + abort(); return false; } -void TFT_SPI::Abort() { +void TFT_SPI::abort() { // DMA Channel 0 is hardcoded in dmaSendAsync() and dmaSend() // Disable DMA @@ -126,20 +126,20 @@ void TFT_SPI::Abort() { LPC_GPDMACH0->DMACCSrcAddr = 0U; LPC_GPDMACH0->DMACCDestAddr = 0U; - DataTransferEnd(); + dataTransferEnd(); } -void TFT_SPI::Transmit(uint16_t Data) { SPIx.transfer(Data); } +void TFT_SPI::transmit(uint16_t data) { SPIx.transfer(data); } -void TFT_SPI::Transmit(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count) { - DataTransferBegin(DATASIZE_16BIT); - SPIx.dmaSend(Data, Count, MemoryIncrease); - Abort(); +void TFT_SPI::transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { + dataTransferBegin(DATASIZE_16BIT); + SPIx.dmaSend(data, count, memoryIncrease); + abort(); } -void TFT_SPI::TransmitDMA(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count) { - DataTransferBegin(DATASIZE_16BIT); - SPIx.dmaSendAsync(Data, Count, MemoryIncrease); +void TFT_SPI::transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { + dataTransferBegin(DATASIZE_16BIT); + SPIx.dmaSendAsync(data, count, memoryIncrease); TERN_(TFT_SHARED_IO, while (isBusy())); } diff --git a/Marlin/src/HAL/LPC1768/tft/tft_spi.h b/Marlin/src/HAL/LPC1768/tft/tft_spi.h index 4817a5aae30a..884bcaed0412 100644 --- a/Marlin/src/HAL/LPC1768/tft/tft_spi.h +++ b/Marlin/src/HAL/LPC1768/tft/tft_spi.h @@ -56,34 +56,34 @@ class TFT_SPI { private: - static uint32_t ReadID(uint16_t Reg); - static void Transmit(uint16_t Data); - static void Transmit(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count); - static void TransmitDMA(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count); + static uint32_t readID(uint16_t reg); + static void transmit(uint16_t data); + static void transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count); + static void transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count); public: static SPIClass SPIx; - static void Init(); - static uint32_t GetID(); + static void init(); + static uint32_t getID(); static bool isBusy(); - static void Abort(); + static void abort(); - static void DataTransferBegin(uint16_t DataWidth=DATASIZE_16BIT); - static void DataTransferEnd() { WRITE(TFT_CS_PIN, HIGH); SSP_Cmd(LPC_SSPx, DISABLE); }; - static void DataTransferAbort(); + static void dataTransferBegin(uint16_t dataWidth=DATASIZE_16BIT); + static void dataTransferEnd() { WRITE(TFT_CS_PIN, HIGH); SSP_Cmd(LPC_SSPx, DISABLE); }; + static void dataTransferAbort(); - static void WriteData(uint16_t Data) { Transmit(Data); } - static void WriteReg(uint16_t Reg) { WRITE(TFT_DC_PIN, LOW); Transmit(Reg); WRITE(TFT_DC_PIN, HIGH); } + static void writeData(uint16_t data) { transmit(data); } + static void writeReg(uint16_t reg) { WRITE(TFT_DC_PIN, LOW); transmit(reg); WRITE(TFT_DC_PIN, HIGH); } - static void WriteSequence_DMA(uint16_t *Data, uint16_t Count) { TransmitDMA(DMA_MINC_ENABLE, Data, Count); } - static void WriteMultiple_DMA(uint16_t Color, uint16_t Count) { static uint16_t Data; Data = Color; TransmitDMA(DMA_MINC_DISABLE, &Data, Count); } + static void writeSequence_DMA(uint16_t *data, uint16_t count) { transmitDMA(DMA_MINC_ENABLE, data, count); } + static void writeMultiple_DMA(uint16_t color, uint16_t count) { static uint16_t data; data = color; transmitDMA(DMA_MINC_DISABLE, &data, count); } - static void WriteSequence(uint16_t *Data, uint16_t Count) { Transmit(DMA_MINC_ENABLE, Data, Count); } - static void WriteMultiple(uint16_t Color, uint32_t Count) { - while (Count > 0) { - Transmit(DMA_MINC_DISABLE, &Color, Count > DMA_MAX_SIZE ? DMA_MAX_SIZE : Count); - Count = Count > DMA_MAX_SIZE ? Count - DMA_MAX_SIZE : 0; + static void writeSequence(uint16_t *data, uint16_t count) { transmit(DMA_MINC_ENABLE, data, count); } + static void writeMultiple(uint16_t color, uint32_t count) { + while (count > 0) { + transmit(DMA_MINC_DISABLE, &color, count > DMA_MAX_SIZE ? DMA_MAX_SIZE : count); + count = count > DMA_MAX_SIZE ? count - DMA_MAX_SIZE : 0; } } }; diff --git a/Marlin/src/HAL/LPC1768/tft/xpt2046.cpp b/Marlin/src/HAL/LPC1768/tft/xpt2046.cpp index 910511612b9b..74596935e967 100644 --- a/Marlin/src/HAL/LPC1768/tft/xpt2046.cpp +++ b/Marlin/src/HAL/LPC1768/tft/xpt2046.cpp @@ -45,7 +45,7 @@ uint16_t delta(uint16_t a, uint16_t b) { return a > b ? a - b : b - a; } } #endif -void XPT2046::Init() { +void XPT2046::init() { #if DISABLED(TOUCH_BUTTONS_HW_SPI) SET_INPUT(TOUCH_MISO_PIN); SET_OUTPUT(TOUCH_MOSI_PIN); @@ -85,7 +85,7 @@ bool XPT2046::getRawPoint(int16_t *x, int16_t *y) { uint16_t XPT2046::getRawData(const XPTCoordinate coordinate) { uint16_t data[3]; - DataTransferBegin(); + dataTransferBegin(); TERN_(TOUCH_BUTTONS_HW_SPI, SPIx.begin()); for (uint16_t i = 0; i < 3 ; i++) { @@ -94,7 +94,7 @@ uint16_t XPT2046::getRawData(const XPTCoordinate coordinate) { } TERN_(TOUCH_BUTTONS_HW_SPI, SPIx.end()); - DataTransferEnd(); + dataTransferEnd(); uint16_t delta01 = delta(data[0], data[1]), delta02 = delta(data[0], data[2]), @@ -107,18 +107,18 @@ uint16_t XPT2046::getRawData(const XPTCoordinate coordinate) { } uint16_t XPT2046::IO(uint16_t data) { - return TERN(TOUCH_BUTTONS_HW_SPI, HardwareIO, SoftwareIO)(data); + return TERN(TOUCH_BUTTONS_HW_SPI, hardwareIO, softwareIO)(data); } extern uint8_t spiTransfer(uint8_t b); #if ENABLED(TOUCH_BUTTONS_HW_SPI) - uint16_t XPT2046::HardwareIO(uint16_t data) { + uint16_t XPT2046::hardwareIO(uint16_t data) { return SPIx.transfer(data & 0xFF); } #endif -uint16_t XPT2046::SoftwareIO(uint16_t data) { +uint16_t XPT2046::softwareIO(uint16_t data) { uint16_t result = 0; for (uint8_t j = 0x80; j; j >>= 1) { diff --git a/Marlin/src/HAL/LPC1768/tft/xpt2046.h b/Marlin/src/HAL/LPC1768/tft/xpt2046.h index 7c456cf00e1b..8fdcacf92641 100644 --- a/Marlin/src/HAL/LPC1768/tft/xpt2046.h +++ b/Marlin/src/HAL/LPC1768/tft/xpt2046.h @@ -65,12 +65,12 @@ class XPT2046 { static uint16_t getRawData(const XPTCoordinate coordinate); static bool isTouched(); - static void DataTransferBegin() { WRITE(TOUCH_CS_PIN, LOW); }; - static void DataTransferEnd() { WRITE(TOUCH_CS_PIN, HIGH); }; + static void dataTransferBegin() { WRITE(TOUCH_CS_PIN, LOW); }; + static void dataTransferEnd() { WRITE(TOUCH_CS_PIN, HIGH); }; #if ENABLED(TOUCH_BUTTONS_HW_SPI) - static uint16_t HardwareIO(uint16_t data); + static uint16_t hardwareIO(uint16_t data); #endif - static uint16_t SoftwareIO(uint16_t data); + static uint16_t softwareIO(uint16_t data); static uint16_t IO(uint16_t data = 0); public: @@ -78,6 +78,6 @@ class XPT2046 { static SPIClass SPIx; #endif - static void Init(); + static void init(); static bool getRawPoint(int16_t *x, int16_t *y); }; diff --git a/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h b/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h index f3b64c4ccad4..df7b9420994b 100644 --- a/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h +++ b/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h @@ -40,28 +40,28 @@ class TFT_SPI { private: - static uint32_t ReadID(uint16_t Reg); - static void Transmit(uint16_t Data); - static void TransmitDMA(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count); + static uint32_t readID(uint16_t reg); + static void transmit(uint16_t data); + static void transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count); public: // static SPIClass SPIx; - static void Init(); - static uint32_t GetID(); + static void init(); + static uint32_t getID(); static bool isBusy(); - static void Abort(); + static void abort(); - static void DataTransferBegin(uint16_t DataWidth=DATASIZE_16BIT); - static void DataTransferEnd(); - static void DataTransferAbort(); + static void dataTransferBegin(uint16_t dataWidth=DATASIZE_16BIT); + static void dataTransferEnd(); + static void dataTransferAbort(); - static void WriteData(uint16_t Data); - static void WriteReg(uint16_t Reg); + static void writeData(uint16_t data); + static void writeReg(uint16_t reg); - static void WriteSequence_DMA(uint16_t *Data, uint16_t Count) { WriteSequence(Data, Count); } - static void WriteMultiple_DMA(uint16_t Color, uint16_t Count) { WriteMultiple(Color, Count); } + static void writeSequence_DMA(uint16_t *data, uint16_t count) { writeSequence(data, count); } + static void writeMultiple_DMA(uint16_t color, uint16_t count) { writeMultiple(color, count); } - static void WriteSequence(uint16_t *Data, uint16_t Count); - static void WriteMultiple(uint16_t Color, uint32_t Count); + static void writeSequence(uint16_t *data, uint16_t count); + static void writeMultiple(uint16_t color, uint32_t count); }; diff --git a/Marlin/src/HAL/NATIVE_SIM/tft/xpt2046.h b/Marlin/src/HAL/NATIVE_SIM/tft/xpt2046.h index 4e999f88ff98..c546646d16fe 100644 --- a/Marlin/src/HAL/NATIVE_SIM/tft/xpt2046.h +++ b/Marlin/src/HAL/NATIVE_SIM/tft/xpt2046.h @@ -62,12 +62,12 @@ class XPT2046 { static uint16_t getRawData(const XPTCoordinate coordinate); static bool isTouched(); - static void DataTransferBegin(); - static void DataTransferEnd(); + static void dataTransferBegin(); + static void dataTransferEnd(); #if ENABLED(TOUCH_BUTTONS_HW_SPI) - static uint16_t HardwareIO(uint16_t data); + static uint16_t hardwareIO(uint16_t data); #endif - static uint16_t SoftwareIO(uint16_t data); + static uint16_t softwareIO(uint16_t data); static uint16_t IO(uint16_t data = 0); public: @@ -75,6 +75,6 @@ class XPT2046 { static SPIClass SPIx; #endif - static void Init(); + static void init(); static bool getRawPoint(int16_t *x, int16_t *y); }; diff --git a/Marlin/src/HAL/STM32/tft/gt911.cpp b/Marlin/src/HAL/STM32/tft/gt911.cpp index 6809f6620093..52119c19b794 100644 --- a/Marlin/src/HAL/STM32/tft/gt911.cpp +++ b/Marlin/src/HAL/STM32/tft/gt911.cpp @@ -156,7 +156,7 @@ void GT911::read_reg(uint16_t reg, uint8_t reg_len, uint8_t* r_data, uint8_t r_l sw_iic.stop(); } -void GT911::Init() { +void GT911::init() { OUT_WRITE(GT911_RST_PIN, LOW); OUT_WRITE(GT911_INT_PIN, LOW); delay(11); diff --git a/Marlin/src/HAL/STM32/tft/gt911.h b/Marlin/src/HAL/STM32/tft/gt911.h index 260c195eca63..75e025245d62 100644 --- a/Marlin/src/HAL/STM32/tft/gt911.h +++ b/Marlin/src/HAL/STM32/tft/gt911.h @@ -90,7 +90,7 @@ class GT911 { static void read_reg(uint16_t reg, uint8_t reg_len, uint8_t* r_data, uint8_t r_len); public: - static void Init(); + static void init(); static bool getFirstTouchPoint(int16_t *x, int16_t *y); static bool getPoint(int16_t *x, int16_t *y); }; diff --git a/Marlin/src/HAL/STM32/tft/tft_fsmc.cpp b/Marlin/src/HAL/STM32/tft/tft_fsmc.cpp index 6ac3549b41b2..35606460ac62 100644 --- a/Marlin/src/HAL/STM32/tft/tft_fsmc.cpp +++ b/Marlin/src/HAL/STM32/tft/tft_fsmc.cpp @@ -35,17 +35,17 @@ SRAM_HandleTypeDef TFT_FSMC::SRAMx; DMA_HandleTypeDef TFT_FSMC::DMAtx; LCD_CONTROLLER_TypeDef *TFT_FSMC::LCD; -void TFT_FSMC::Init() { +void TFT_FSMC::init() { uint32_t controllerAddress; - FSMC_NORSRAM_TimingTypeDef Timing, ExtTiming; + FSMC_NORSRAM_TimingTypeDef timing, extTiming; - uint32_t NSBank = (uint32_t)pinmap_peripheral(digitalPinToPinName(TFT_CS_PIN), PinMap_FSMC_CS); + uint32_t nsBank = (uint32_t)pinmap_peripheral(digitalPinToPinName(TFT_CS_PIN), pinMap_FSMC_CS); // Perform the SRAM1 memory initialization sequence SRAMx.Instance = FSMC_NORSRAM_DEVICE; SRAMx.Extended = FSMC_NORSRAM_EXTENDED_DEVICE; // SRAMx.Init - SRAMx.Init.NSBank = NSBank; + SRAMx.Init.NSBank = nsBank; SRAMx.Init.DataAddressMux = FSMC_DATA_ADDRESS_MUX_DISABLE; SRAMx.Init.MemoryType = FSMC_MEMORY_TYPE_SRAM; SRAMx.Init.MemoryDataWidth = TERN(TFT_INTERFACE_FSMC_8BIT, FSMC_NORSRAM_MEM_BUS_WIDTH_8, FSMC_NORSRAM_MEM_BUS_WIDTH_16); @@ -63,42 +63,42 @@ void TFT_FSMC::Init() { #endif // Read Timing - relatively slow to ensure ID information is correctly read from TFT controller // Can be decreases from 15-15-24 to 4-4-8 with risk of stability loss - Timing.AddressSetupTime = 15; - Timing.AddressHoldTime = 15; - Timing.DataSetupTime = 24; - Timing.BusTurnAroundDuration = 0; - Timing.CLKDivision = 16; - Timing.DataLatency = 17; - Timing.AccessMode = FSMC_ACCESS_MODE_A; + timing.AddressSetupTime = 15; + timing.AddressHoldTime = 15; + timing.DataSetupTime = 24; + timing.BusTurnAroundDuration = 0; + timing.CLKDivision = 16; + timing.DataLatency = 17; + timing.AccessMode = FSMC_ACCESS_MODE_A; // Write Timing // Can be decreased from 8-15-8 to 0-0-1 with risk of stability loss - ExtTiming.AddressSetupTime = 8; - ExtTiming.AddressHoldTime = 15; - ExtTiming.DataSetupTime = 8; - ExtTiming.BusTurnAroundDuration = 0; - ExtTiming.CLKDivision = 16; - ExtTiming.DataLatency = 17; - ExtTiming.AccessMode = FSMC_ACCESS_MODE_A; + extTiming.AddressSetupTime = 8; + extTiming.AddressHoldTime = 15; + extTiming.DataSetupTime = 8; + extTiming.BusTurnAroundDuration = 0; + extTiming.CLKDivision = 16; + extTiming.DataLatency = 17; + extTiming.AccessMode = FSMC_ACCESS_MODE_A; __HAL_RCC_FSMC_CLK_ENABLE(); - for (uint16_t i = 0; PinMap_FSMC[i].pin != NC; i++) - pinmap_pinout(PinMap_FSMC[i].pin, PinMap_FSMC); - pinmap_pinout(digitalPinToPinName(TFT_CS_PIN), PinMap_FSMC_CS); - pinmap_pinout(digitalPinToPinName(TFT_RS_PIN), PinMap_FSMC_RS); + for (uint16_t i = 0; pinMap_FSMC[i].pin != NC; i++) + pinmap_pinout(pinMap_FSMC[i].pin, pinMap_FSMC); + pinmap_pinout(digitalPinToPinName(TFT_CS_PIN), pinMap_FSMC_CS); + pinmap_pinout(digitalPinToPinName(TFT_RS_PIN), pinMap_FSMC_RS); controllerAddress = FSMC_BANK1_1; #ifdef PF0 - switch (NSBank) { + switch (nsBank) { case FSMC_NORSRAM_BANK2: controllerAddress = FSMC_BANK1_2 ; break; case FSMC_NORSRAM_BANK3: controllerAddress = FSMC_BANK1_3 ; break; case FSMC_NORSRAM_BANK4: controllerAddress = FSMC_BANK1_4 ; break; } #endif - controllerAddress |= (uint32_t)pinmap_peripheral(digitalPinToPinName(TFT_RS_PIN), PinMap_FSMC_RS); + controllerAddress |= (uint32_t)pinmap_peripheral(digitalPinToPinName(TFT_RS_PIN), pinMap_FSMC_RS); - HAL_SRAM_Init(&SRAMx, &Timing, &ExtTiming); + HAL_SRAM_Init(&SRAMx, &timing, &extTiming); #ifdef STM32F1xx __HAL_RCC_DMA1_CLK_ENABLE(); @@ -123,23 +123,23 @@ void TFT_FSMC::Init() { LCD = (LCD_CONTROLLER_TypeDef *)controllerAddress; } -uint32_t TFT_FSMC::GetID() { +uint32_t TFT_FSMC::getID() { uint32_t id; - WriteReg(0); + writeReg(0); id = LCD->RAM; if (id == 0) - id = ReadID(LCD_READ_ID); + id = readID(LCD_READ_ID); if ((id & 0xFFFF) == 0 || (id & 0xFFFF) == 0xFFFF) - id = ReadID(LCD_READ_ID4); + id = readID(LCD_READ_ID4); return id; } -uint32_t TFT_FSMC::ReadID(tft_data_t Reg) { +uint32_t TFT_FSMC::readID(tft_data_t reg) { uint32_t id; - WriteReg(Reg); + writeReg(reg); id = LCD->RAM; // dummy read - id = Reg << 24; + id = reg << 24; id |= (LCD->RAM & 0x00FF) << 16; id |= (LCD->RAM & 0x00FF) << 8; id |= LCD->RAM & 0x00FF; @@ -161,30 +161,30 @@ bool TFT_FSMC::isBusy() { if ((__HAL_DMA_GET_FLAG(&DMAtx, __HAL_DMA_GET_TE_FLAG_INDEX(&DMAtx)) == 0) && (__HAL_DMA_GET_FLAG(&DMAtx, __HAL_DMA_GET_TC_FLAG_INDEX(&DMAtx)) == 0)) return true; __DSB(); - Abort(); + abort(); return false; } -void TFT_FSMC::Abort() { +void TFT_FSMC::abort() { HAL_DMA_Abort(&DMAtx); // Abort DMA transfer if any HAL_DMA_DeInit(&DMAtx); // Deconfigure DMA } -void TFT_FSMC::TransmitDMA(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count) { - DMAtx.Init.PeriphInc = MemoryIncrease; +void TFT_FSMC::transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { + DMAtx.Init.PeriphInc = memoryIncrease; HAL_DMA_Init(&DMAtx); - HAL_DMA_Start(&DMAtx, (uint32_t)Data, (uint32_t)&(LCD->RAM), Count); + HAL_DMA_Start(&DMAtx, (uint32_t)data, (uint32_t)&(LCD->RAM), count); TERN_(TFT_SHARED_IO, while (isBusy())); } -void TFT_FSMC::Transmit(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count) { - DMAtx.Init.PeriphInc = MemoryIncrease; +void TFT_FSMC::transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { + DMAtx.Init.PeriphInc = memoryIncrease; HAL_DMA_Init(&DMAtx); - DataTransferBegin(); - HAL_DMA_Start(&DMAtx, (uint32_t)Data, (uint32_t)&(LCD->RAM), Count); + dataTransferBegin(); + HAL_DMA_Start(&DMAtx, (uint32_t)data, (uint32_t)&(LCD->RAM), count); HAL_DMA_PollForTransfer(&DMAtx, HAL_DMA_FULL_TRANSFER, HAL_MAX_DELAY); - Abort(); + abort(); } #endif // HAS_FSMC_TFT diff --git a/Marlin/src/HAL/STM32/tft/tft_fsmc.h b/Marlin/src/HAL/STM32/tft/tft_fsmc.h index 8eb41d717d6d..1b0a45ff79ac 100644 --- a/Marlin/src/HAL/STM32/tft/tft_fsmc.h +++ b/Marlin/src/HAL/STM32/tft/tft_fsmc.h @@ -62,31 +62,31 @@ class TFT_FSMC { static LCD_CONTROLLER_TypeDef *LCD; - static uint32_t ReadID(tft_data_t Reg); - static void Transmit(tft_data_t Data) { LCD->RAM = Data; __DSB(); } - static void Transmit(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count); - static void TransmitDMA(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count); + static uint32_t readID(tft_data_t reg); + static void transmit(tft_data_t data) { LCD->RAM = data; __DSB(); } + static void transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count); + static void transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count); public: - static void Init(); - static uint32_t GetID(); + static void init(); + static uint32_t getID(); static bool isBusy(); - static void Abort(); + static void abort(); - static void DataTransferBegin(uint16_t DataWidth=TFT_DATASIZE) {} - static void DataTransferEnd() {} + static void dataTransferBegin(uint16_t dataWidth=TFT_DATASIZE) {} + static void dataTransferEnd() {} - static void WriteData(uint16_t Data) { Transmit(tft_data_t(Data)); } - static void WriteReg(uint16_t Reg) { LCD->REG = tft_data_t(Reg); __DSB(); } + static void writeData(uint16_t data) { transmit(tft_data_t(data)); } + static void writeReg(uint16_t reg) { LCD->REG = tft_data_t(reg); __DSB(); } - static void WriteSequence_DMA(uint16_t *Data, uint16_t Count) { TransmitDMA(DMA_PINC_ENABLE, Data, Count); } - static void WriteMultiple_DMA(uint16_t Color, uint16_t Count) { static uint16_t Data; Data = Color; TransmitDMA(DMA_PINC_DISABLE, &Data, Count); } + static void writeSequence_DMA(uint16_t *data, uint16_t count) { transmitDMA(DMA_PINC_ENABLE, data, count); } + static void writeMultiple_DMA(uint16_t color, uint16_t count) { static uint16_t data; data = color; transmitDMA(DMA_PINC_DISABLE, &data, count); } - static void WriteSequence(uint16_t *Data, uint16_t Count) { Transmit(DMA_PINC_ENABLE, Data, Count); } - static void WriteMultiple(uint16_t Color, uint32_t Count) { - while (Count > 0) { - Transmit(DMA_MINC_DISABLE, &Color, Count > DMA_MAX_SIZE ? DMA_MAX_SIZE : Count); - Count = Count > DMA_MAX_SIZE ? Count - DMA_MAX_SIZE : 0; + static void writeSequence(uint16_t *data, uint16_t count) { transmit(DMA_PINC_ENABLE, data, count); } + static void writeMultiple(uint16_t color, uint32_t count) { + while (count > 0) { + transmit(DMA_MINC_DISABLE, &color, count > DMA_MAX_SIZE ? DMA_MAX_SIZE : count); + count = count > DMA_MAX_SIZE ? count - DMA_MAX_SIZE : 0; } } }; @@ -103,7 +103,7 @@ class TFT_FSMC { #error No configuration for this MCU #endif -const PinMap PinMap_FSMC[] = { +const PinMap pinMap_FSMC[] = { {PD_14, FSMC_NORSRAM_DEVICE, FSMC_PIN_DATA}, // FSMC_D00 {PD_15, FSMC_NORSRAM_DEVICE, FSMC_PIN_DATA}, // FSMC_D01 {PD_0, FSMC_NORSRAM_DEVICE, FSMC_PIN_DATA}, // FSMC_D02 @@ -127,7 +127,7 @@ const PinMap PinMap_FSMC[] = { {NC, NP, 0} }; -const PinMap PinMap_FSMC_CS[] = { +const PinMap pinMap_FSMC_CS[] = { {PD_7, (void *)FSMC_NORSRAM_BANK1, FSMC_PIN_DATA}, // FSMC_NE1 #ifdef PF0 {PG_9, (void *)FSMC_NORSRAM_BANK2, FSMC_PIN_DATA}, // FSMC_NE2 @@ -143,7 +143,7 @@ const PinMap PinMap_FSMC_CS[] = { #define FSMC_RS(A) (void *)((2 << A) - 2) #endif -const PinMap PinMap_FSMC_RS[] = { +const PinMap pinMap_FSMC_RS[] = { #ifdef PF0 {PF_0, FSMC_RS( 0), FSMC_PIN_DATA}, // FSMC_A0 {PF_1, FSMC_RS( 1), FSMC_PIN_DATA}, // FSMC_A1 diff --git a/Marlin/src/HAL/STM32/tft/tft_ltdc.cpp b/Marlin/src/HAL/STM32/tft/tft_ltdc.cpp index 2be900618f20..ce47d2e1ecdf 100644 --- a/Marlin/src/HAL/STM32/tft/tft_ltdc.cpp +++ b/Marlin/src/HAL/STM32/tft/tft_ltdc.cpp @@ -246,28 +246,28 @@ uint16_t TFT_LTDC::y_cur = 0; uint8_t TFT_LTDC::reg = 0; volatile uint16_t* TFT_LTDC::framebuffer = (volatile uint16_t* )FRAME_BUFFER_ADDRESS; -void TFT_LTDC::Init() { +void TFT_LTDC::init() { // SDRAM pins init - for (uint16_t i = 0; PinMap_SDRAM[i].pin != NC; i++) - pinmap_pinout(PinMap_SDRAM[i].pin, PinMap_SDRAM); + for (uint16_t i = 0; pinMap_SDRAM[i].pin != NC; i++) + pinmap_pinout(pinMap_SDRAM[i].pin, pinMap_SDRAM); // SDRAM peripheral config SDRAM_Config(); // LTDC pins init - for (uint16_t i = 0; PinMap_LTDC[i].pin != NC; i++) - pinmap_pinout(PinMap_LTDC[i].pin, PinMap_LTDC); + for (uint16_t i = 0; pinMap_LTDC[i].pin != NC; i++) + pinmap_pinout(pinMap_LTDC[i].pin, pinMap_LTDC); // LTDC peripheral config LTDC_Config(); } -uint32_t TFT_LTDC::GetID() { +uint32_t TFT_LTDC::getID() { return 0xABAB; } -uint32_t TFT_LTDC::ReadID(tft_data_t Reg) { +uint32_t TFT_LTDC::readID(tft_data_t reg) { return 0xABAB; } @@ -275,15 +275,15 @@ bool TFT_LTDC::isBusy() { return false; } -uint16_t TFT_LTDC::ReadPoint(uint16_t x, uint16_t y) { +uint16_t TFT_LTDC::readPoint(uint16_t x, uint16_t y) { return framebuffer[(TFT_WIDTH * y) + x]; } -void TFT_LTDC::DrawPoint(uint16_t x, uint16_t y, uint16_t color) { +void TFT_LTDC::drawPoint(uint16_t x, uint16_t y, uint16_t color) { framebuffer[(TFT_WIDTH * y) + x] = color; } -void TFT_LTDC::DrawRect(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint16_t color) { +void TFT_LTDC::drawRect(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint16_t color) { if (sx == ex || sy == ey) return; @@ -307,7 +307,7 @@ void TFT_LTDC::DrawRect(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint SBI(DMA2D->IFCR, 1); } -void TFT_LTDC::DrawImage(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint16_t *colors) { +void TFT_LTDC::drawImage(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint16_t *colors) { if (sx == ex || sy == ey) return; @@ -332,18 +332,18 @@ void TFT_LTDC::DrawImage(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uin SBI(DMA2D->IFCR, 1); } -void TFT_LTDC::WriteData(uint16_t data) { +void TFT_LTDC::writeData(uint16_t data) { switch (reg) { case 0x01: x_cur = x_min = data; return; case 0x02: x_max = data; return; case 0x03: y_cur = y_min = data; return; case 0x04: y_max = data; return; } - Transmit(data); + transmit(data); } -void TFT_LTDC::Transmit(tft_data_t Data) { - DrawPoint(x_cur, y_cur, Data); +void TFT_LTDC::transmit(tft_data_t data) { + drawPoint(x_cur, y_cur, data); x_cur++; if (x_cur > x_max) { x_cur = x_min; @@ -352,35 +352,35 @@ void TFT_LTDC::Transmit(tft_data_t Data) { } } -void TFT_LTDC::WriteReg(uint16_t Reg) { - reg = Reg; +void TFT_LTDC::writeReg(uint16_t reg) { + reg = reg; } -void TFT_LTDC::Transmit(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count) { +void TFT_LTDC::transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { - while (x_cur != x_min && Count) { - Transmit(*Data); - if (MemoryIncrease == DMA_PINC_ENABLE) Data++; - Count--; + while (x_cur != x_min && count) { + transmit(*data); + if (memoryIncrease == DMA_PINC_ENABLE) data++; + count--; } uint16_t width = x_max - x_min + 1; - uint16_t height = Count / width; - uint16_t x_end_cnt = Count - (width * height); + uint16_t height = count / width; + uint16_t x_end_cnt = count - (width * height); if (height) { - if (MemoryIncrease == DMA_PINC_ENABLE) { - DrawImage(x_min, y_cur, x_min + width, y_cur + height, Data); - Data += width * height; + if (memoryIncrease == DMA_PINC_ENABLE) { + drawImage(x_min, y_cur, x_min + width, y_cur + height, data); + data += width * height; } else - DrawRect(x_min, y_cur, x_min + width, y_cur + height, *Data); + drawRect(x_min, y_cur, x_min + width, y_cur + height, *data); y_cur += height; } while (x_end_cnt) { - Transmit(*Data); - if (MemoryIncrease == DMA_PINC_ENABLE) Data++; + transmit(*data); + if (memoryIncrease == DMA_PINC_ENABLE) data++; x_end_cnt--; } } diff --git a/Marlin/src/HAL/STM32/tft/tft_ltdc.h b/Marlin/src/HAL/STM32/tft/tft_ltdc.h index ee655610116e..d4a254ba7063 100644 --- a/Marlin/src/HAL/STM32/tft/tft_ltdc.h +++ b/Marlin/src/HAL/STM32/tft/tft_ltdc.h @@ -43,41 +43,41 @@ class TFT_LTDC { static uint16_t x_min, x_max, y_min, y_max, x_cur, y_cur; static uint8_t reg; - static uint32_t ReadID(tft_data_t Reg); + static uint32_t readID(tft_data_t reg); - static uint16_t ReadPoint(uint16_t x, uint16_t y); - static void DrawPoint(uint16_t x, uint16_t y, uint16_t color); - static void DrawRect(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint16_t color); - static void DrawImage(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint16_t *colors); - static void Transmit(tft_data_t Data); - static void Transmit(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count); + static uint16_t readPoint(uint16_t x, uint16_t y); + static void drawPoint(uint16_t x, uint16_t y, uint16_t color); + static void drawRect(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint16_t color); + static void drawImage(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint16_t *colors); + static void transmit(tft_data_t data); + static void transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count); public: - static void Init(); - static uint32_t GetID(); + static void init(); + static uint32_t getID(); static bool isBusy(); - static void Abort() { /*__HAL_DMA_DISABLE(&DMAtx);*/ } + static void abort() { /*__HAL_DMA_DISABLE(&DMAtx);*/ } - static void DataTransferBegin(uint16_t DataWidth=TFT_DATASIZE) {} - static void DataTransferEnd() {}; + static void dataTransferBegin(uint16_t dataWidth=TFT_DATASIZE) {} + static void dataTransferEnd() {}; - static void WriteData(uint16_t Data); - static void WriteReg(uint16_t Reg); + static void writeData(uint16_t data); + static void writeReg(uint16_t reg); // Non-blocking DMA data transfer is not implemented for LTDC interface - inline static void WriteSequence_DMA(uint16_t *Data, uint16_t Count) { WriteSequence(Data, Count); } - inline static void WriteMultiple_DMA(uint16_t Color, uint16_t Count) { WriteMultiple(Color, Count); } - - static void WriteSequence(uint16_t *Data, uint16_t Count) { Transmit(DMA_PINC_ENABLE, Data, Count); } - static void WriteMultiple(uint16_t Color, uint32_t Count) { - while (Count > 0) { - Transmit(DMA_PINC_DISABLE, &Color, Count > DMA_MAX_SIZE ? DMA_MAX_SIZE : Count); - Count = Count > DMA_MAX_SIZE ? Count - DMA_MAX_SIZE : 0; + inline static void writeSequence_DMA(uint16_t *data, uint16_t count) { writeSequence(data, count); } + inline static void writeMultiple_DMA(uint16_t color, uint16_t count) { writeMultiple(color, count); } + + static void writeSequence(uint16_t *data, uint16_t count) { transmit(DMA_PINC_ENABLE, data, count); } + static void writeMultiple(uint16_t color, uint32_t count) { + while (count > 0) { + transmit(DMA_PINC_DISABLE, &color, count > DMA_MAX_SIZE ? DMA_MAX_SIZE : count); + count = count > DMA_MAX_SIZE ? count - DMA_MAX_SIZE : 0; } } }; -const PinMap PinMap_LTDC[] = { +const PinMap pinMap_LTDC[] = { {PF_10, LTDC, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_LTDC)}, // LCD_DE {PG_7, LTDC, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_LTDC)}, // LCD_CLK {PI_9, LTDC, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF14_LTDC)}, // LCD_VSYNC @@ -104,7 +104,7 @@ const PinMap PinMap_LTDC[] = { {NC, NP, 0} }; -const PinMap PinMap_SDRAM[] = { +const PinMap pinMap_SDRAM[] = { {PC_0, FMC_Bank1_R, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_FMC)}, // FMC_SDNWE {PC_2, FMC_Bank1_R, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_FMC)}, // FMC_SDNE0 {PC_3, FMC_Bank1_R, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_FMC)}, // FMC_SDCKE0 diff --git a/Marlin/src/HAL/STM32/tft/tft_spi.cpp b/Marlin/src/HAL/STM32/tft/tft_spi.cpp index dbb93c786b4e..eebf366b8c38 100644 --- a/Marlin/src/HAL/STM32/tft/tft_spi.cpp +++ b/Marlin/src/HAL/STM32/tft/tft_spi.cpp @@ -34,7 +34,7 @@ SPI_HandleTypeDef TFT_SPI::SPIx; DMA_HandleTypeDef TFT_SPI::DMAtx; -void TFT_SPI::Init() { +void TFT_SPI::init() { SPI_TypeDef *spiInstance; OUT_WRITE(TFT_A0_PIN, HIGH); @@ -122,8 +122,8 @@ void TFT_SPI::Init() { #endif } -void TFT_SPI::DataTransferBegin(uint16_t DataSize) { - SPIx.Init.DataSize = DataSize == DATASIZE_8BIT ? SPI_DATASIZE_8BIT : SPI_DATASIZE_16BIT; +void TFT_SPI::dataTransferBegin(uint16_t dataSize) { + SPIx.Init.DataSize = dataSize == DATASIZE_8BIT ? SPI_DATASIZE_8BIT : SPI_DATASIZE_16BIT; HAL_SPI_Init(&SPIx); WRITE(TFT_CS_PIN, LOW); } @@ -132,11 +132,11 @@ void TFT_SPI::DataTransferBegin(uint16_t DataSize) { #include "../../../lcd/tft_io/tft_ids.h" #endif -uint32_t TFT_SPI::GetID() { +uint32_t TFT_SPI::getID() { uint32_t id; - id = ReadID(LCD_READ_ID); + id = readID(LCD_READ_ID); if ((id & 0xFFFF) == 0 || (id & 0xFFFF) == 0xFFFF) { - id = ReadID(LCD_READ_ID4); + id = readID(LCD_READ_ID4); #ifdef TFT_DEFAULT_DRIVER if ((id & 0xFFFF) == 0 || (id & 0xFFFF) == 0xFFFF) id = TFT_DEFAULT_DRIVER; @@ -145,15 +145,15 @@ uint32_t TFT_SPI::GetID() { return id; } -uint32_t TFT_SPI::ReadID(uint16_t Reg) { - uint32_t Data = 0; +uint32_t TFT_SPI::readID(uint16_t reg) { + uint32_t data = 0; #if PIN_EXISTS(TFT_MISO) uint32_t BaudRatePrescaler = SPIx.Init.BaudRatePrescaler; uint32_t i; SPIx.Init.BaudRatePrescaler = SPIx.Instance == SPI1 ? SPI_BAUDRATEPRESCALER_8 : SPI_BAUDRATEPRESCALER_4; - DataTransferBegin(DATASIZE_8BIT); - WriteReg(Reg); + dataTransferBegin(DATASIZE_8BIT); + writeReg(reg); if (SPIx.Init.Direction == SPI_DIRECTION_1LINE) SPI_1LINE_RX(&SPIx); __HAL_SPI_ENABLE(&SPIx); @@ -164,15 +164,15 @@ uint32_t TFT_SPI::ReadID(uint16_t Reg) { SPIx.Instance->DR = 0; #endif while (!__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_RXNE)) {} - Data = (Data << 8) | SPIx.Instance->DR; + data = (data << 8) | SPIx.Instance->DR; } - DataTransferEnd(); + dataTransferEnd(); SPIx.Init.BaudRatePrescaler = BaudRatePrescaler; #endif - return Data >> 7; + return data >> 7; } bool TFT_SPI::isBusy() { @@ -197,27 +197,27 @@ bool TFT_SPI::isBusy() { if ((!__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_TXE)) || (__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_BSY))) return true; } - Abort(); + abort(); return false; } -void TFT_SPI::Abort() { +void TFT_SPI::abort() { HAL_DMA_Abort(&DMAtx); // Abort DMA transfer if any HAL_DMA_DeInit(&DMAtx); CLEAR_BIT(SPIx.Instance->CR2, SPI_CR2_TXDMAEN); - DataTransferEnd(); // Stop SPI and deselect CS + dataTransferEnd(); // Stop SPI and deselect CS } -void TFT_SPI::Transmit(uint16_t Data) { +void TFT_SPI::transmit(uint16_t data) { #if TFT_MISO_PIN == TFT_MOSI_PIN SPI_1LINE_TX(&SPIx); #endif __HAL_SPI_ENABLE(&SPIx); - SPIx.Instance->DR = Data; + SPIx.Instance->DR = data; while (!__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_TXE)) {} while ( __HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_BSY)) {} @@ -227,17 +227,17 @@ void TFT_SPI::Transmit(uint16_t Data) { #endif } -void TFT_SPI::TransmitDMA(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count) { - DMAtx.Init.MemInc = MemoryIncrease; +void TFT_SPI::transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { + DMAtx.Init.MemInc = memoryIncrease; HAL_DMA_Init(&DMAtx); #if TFT_MISO_PIN == TFT_MOSI_PIN SPI_1LINE_TX(&SPIx); #endif - DataTransferBegin(); + dataTransferBegin(); - HAL_DMA_Start(&DMAtx, (uint32_t)Data, (uint32_t)&(SPIx.Instance->DR), Count); + HAL_DMA_Start(&DMAtx, (uint32_t)data, (uint32_t)&(SPIx.Instance->DR), count); __HAL_SPI_ENABLE(&SPIx); SET_BIT(SPIx.Instance->CR2, SPI_CR2_TXDMAEN); // Enable Tx DMA Request @@ -245,39 +245,39 @@ void TFT_SPI::TransmitDMA(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Coun TERN_(TFT_SHARED_IO, while (isBusy())); } -void TFT_SPI::Transmit(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count) { - DMAtx.Init.MemInc = MemoryIncrease; +void TFT_SPI::transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { + DMAtx.Init.MemInc = memoryIncrease; HAL_DMA_Init(&DMAtx); if (TFT_MISO_PIN == TFT_MOSI_PIN) SPI_1LINE_TX(&SPIx); - DataTransferBegin(); + dataTransferBegin(); - HAL_DMA_Start(&DMAtx, (uint32_t)Data, (uint32_t)&(SPIx.Instance->DR), Count); + HAL_DMA_Start(&DMAtx, (uint32_t)data, (uint32_t)&(SPIx.Instance->DR), count); __HAL_SPI_ENABLE(&SPIx); SET_BIT(SPIx.Instance->CR2, SPI_CR2_TXDMAEN); // Enable Tx DMA Request HAL_DMA_PollForTransfer(&DMAtx, HAL_DMA_FULL_TRANSFER, HAL_MAX_DELAY); while ( __HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_BSY)) {} - Abort(); + abort(); } #if ENABLED(USE_SPI_DMA_TC) - void TFT_SPI::TransmitDMA_IT(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count) { + void TFT_SPI::TransmitDMA_IT(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { - DMAtx.Init.MemInc = MemoryIncrease; + DMAtx.Init.MemInc = memoryIncrease; HAL_DMA_Init(&DMAtx); if (TFT_MISO_PIN == TFT_MOSI_PIN) SPI_1LINE_TX(&SPIx); - DataTransferBegin(); + dataTransferBegin(); HAL_NVIC_SetPriority(DMA2_Stream3_IRQn, 5, 0); HAL_NVIC_EnableIRQ(DMA2_Stream3_IRQn); - HAL_DMA_Start_IT(&DMAtx, (uint32_t)Data, (uint32_t)&(SPIx.Instance->DR), Count); + HAL_DMA_Start_IT(&DMAtx, (uint32_t)data, (uint32_t)&(SPIx.Instance->DR), count); __HAL_SPI_ENABLE(&SPIx); SET_BIT(SPIx.Instance->CR2, SPI_CR2_TXDMAEN); // Enable Tx DMA Request diff --git a/Marlin/src/HAL/STM32/tft/tft_spi.h b/Marlin/src/HAL/STM32/tft/tft_spi.h index 4825b65c68c3..09f0e0810731 100644 --- a/Marlin/src/HAL/STM32/tft/tft_spi.h +++ b/Marlin/src/HAL/STM32/tft/tft_spi.h @@ -46,40 +46,40 @@ class TFT_SPI { static SPI_HandleTypeDef SPIx; static DMA_HandleTypeDef DMAtx; - static uint32_t ReadID(uint16_t Reg); - static void Transmit(uint16_t Data); - static void Transmit(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count); - static void TransmitDMA(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count); + static uint32_t readID(uint16_t reg); + static void transmit(uint16_t data); + static void transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count); + static void transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count); #if ENABLED(USE_SPI_DMA_TC) - static void TransmitDMA_IT(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count); + static void TransmitDMA_IT(uint32_t memoryIncrease, uint16_t *data, uint16_t count); #endif public: - static void Init(); - static uint32_t GetID(); + static void init(); + static uint32_t getID(); static bool isBusy(); - static void Abort(); + static void abort(); - static void DataTransferBegin(uint16_t DataWidth=DATASIZE_16BIT); - static void DataTransferEnd() { WRITE(TFT_CS_PIN, HIGH); __HAL_SPI_DISABLE(&SPIx); }; - static void DataTransferAbort(); + static void dataTransferBegin(uint16_t dataWidth=DATASIZE_16BIT); + static void dataTransferEnd() { WRITE(TFT_CS_PIN, HIGH); __HAL_SPI_DISABLE(&SPIx); }; + static void dataTransferAbort(); - static void WriteData(uint16_t Data) { Transmit(Data); } - static void WriteReg(uint16_t Reg) { WRITE(TFT_A0_PIN, LOW); Transmit(Reg); WRITE(TFT_A0_PIN, HIGH); } + static void writeData(uint16_t data) { transmit(data); } + static void writeReg(uint16_t reg) { WRITE(TFT_A0_PIN, LOW); transmit(reg); WRITE(TFT_A0_PIN, HIGH); } - static void WriteSequence_DMA(uint16_t *Data, uint16_t Count) { TransmitDMA(DMA_MINC_ENABLE, Data, Count); } - static void WriteMultiple_DMA(uint16_t Color, uint16_t Count) { static uint16_t Data; Data = Color; TransmitDMA(DMA_MINC_DISABLE, &Data, Count); } + static void writeSequence_DMA(uint16_t *data, uint16_t count) { transmitDMA(DMA_MINC_ENABLE, data, count); } + static void writeMultiple_DMA(uint16_t color, uint16_t count) { static uint16_t data; data = color; transmitDMA(DMA_MINC_DISABLE, &data, count); } #if ENABLED(USE_SPI_DMA_TC) - static void WriteSequenceIT(uint16_t *Data, uint16_t Count) { TransmitDMA_IT(DMA_MINC_ENABLE, Data, Count); } + static void writeSequenceIT(uint16_t *data, uint16_t count) { TransmitDMA_IT(DMA_MINC_ENABLE, data, count); } inline static void DMA_IRQHandler() { HAL_DMA_IRQHandler(&TFT_SPI::DMAtx); } #endif - static void WriteSequence(uint16_t *Data, uint16_t Count) { Transmit(DMA_MINC_ENABLE, Data, Count); } - static void WriteMultiple(uint16_t Color, uint32_t Count) { - while (Count > 0) { - Transmit(DMA_MINC_DISABLE, &Color, Count > DMA_MAX_SIZE ? DMA_MAX_SIZE : Count); - Count = Count > DMA_MAX_SIZE ? Count - DMA_MAX_SIZE : 0; + static void writeSequence(uint16_t *data, uint16_t count) { transmit(DMA_MINC_ENABLE, data, count); } + static void writeMultiple(uint16_t color, uint32_t count) { + while (count > 0) { + transmit(DMA_MINC_DISABLE, &color, count > DMA_MAX_SIZE ? DMA_MAX_SIZE : count); + count = count > DMA_MAX_SIZE ? count - DMA_MAX_SIZE : 0; } } }; diff --git a/Marlin/src/HAL/STM32/tft/xpt2046.cpp b/Marlin/src/HAL/STM32/tft/xpt2046.cpp index cf4a8f18e9ac..8efbfb84f8b0 100644 --- a/Marlin/src/HAL/STM32/tft/xpt2046.cpp +++ b/Marlin/src/HAL/STM32/tft/xpt2046.cpp @@ -35,7 +35,7 @@ uint16_t delta(uint16_t a, uint16_t b) { return a > b ? a - b : b - a; } SPI_HandleTypeDef XPT2046::SPIx; -void XPT2046::Init() { +void XPT2046::init() { SPI_TypeDef *spiInstance; OUT_WRITE(TOUCH_CS_PIN, HIGH); @@ -117,14 +117,14 @@ bool XPT2046::getRawPoint(int16_t *x, int16_t *y) { uint16_t XPT2046::getRawData(const XPTCoordinate coordinate) { uint16_t data[3]; - DataTransferBegin(); + dataTransferBegin(); for (uint16_t i = 0; i < 3 ; i++) { IO(coordinate); data[i] = (IO() << 4) | (IO() >> 4); } - DataTransferEnd(); + dataTransferEnd(); uint16_t delta01 = delta(data[0], data[1]); uint16_t delta02 = delta(data[0], data[2]); @@ -140,7 +140,7 @@ uint16_t XPT2046::getRawData(const XPTCoordinate coordinate) { return (data[0] + data[1]) >> 1; } -uint16_t XPT2046::HardwareIO(uint16_t data) { +uint16_t XPT2046::hardwareIO(uint16_t data) { __HAL_SPI_ENABLE(&SPIx); while ((SPIx.Instance->SR & SPI_FLAG_TXE) != SPI_FLAG_TXE) {} SPIx.Instance->DR = data; @@ -150,7 +150,7 @@ uint16_t XPT2046::HardwareIO(uint16_t data) { return SPIx.Instance->DR; } -uint16_t XPT2046::SoftwareIO(uint16_t data) { +uint16_t XPT2046::softwareIO(uint16_t data) { uint16_t result = 0; for (uint8_t j = 0x80; j > 0; j >>= 1) { diff --git a/Marlin/src/HAL/STM32/tft/xpt2046.h b/Marlin/src/HAL/STM32/tft/xpt2046.h index 71de6b00251b..6b2492c33938 100644 --- a/Marlin/src/HAL/STM32/tft/xpt2046.h +++ b/Marlin/src/HAL/STM32/tft/xpt2046.h @@ -69,13 +69,13 @@ class XPT2046 { static uint16_t getRawData(const XPTCoordinate coordinate); static bool isTouched(); - static void DataTransferBegin() { if (SPIx.Instance) { HAL_SPI_Init(&SPIx); } WRITE(TOUCH_CS_PIN, LOW); }; - static void DataTransferEnd() { WRITE(TOUCH_CS_PIN, HIGH); }; - static uint16_t HardwareIO(uint16_t data); - static uint16_t SoftwareIO(uint16_t data); - static uint16_t IO(uint16_t data = 0) { return SPIx.Instance ? HardwareIO(data) : SoftwareIO(data); } + static void dataTransferBegin() { if (SPIx.Instance) { HAL_SPI_Init(&SPIx); } WRITE(TOUCH_CS_PIN, LOW); }; + static void dataTransferEnd() { WRITE(TOUCH_CS_PIN, HIGH); }; + static uint16_t hardwareIO(uint16_t data); + static uint16_t softwareIO(uint16_t data); + static uint16_t IO(uint16_t data = 0) { return SPIx.Instance ? hardwareIO(data) : softwareIO(data); } public: - static void Init(); + static void init(); static bool getRawPoint(int16_t *x, int16_t *y); }; diff --git a/Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp b/Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp index 1e4dfec8a690..a910cd5af080 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp +++ b/Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp @@ -87,7 +87,7 @@ __attribute__((always_inline)) __STATIC_INLINE void __DSB() { #define FSMC_DATA_SETUP_TIME 15 // DataSetupTime static uint8_t fsmcInit = 0; -void TFT_FSMC::Init() { +void TFT_FSMC::init() { uint8_t cs = FSMC_CS_PIN, rs = FSMC_RS_PIN; uint32_t controllerAddress; @@ -181,35 +181,35 @@ void TFT_FSMC::Init() { LCD = (LCD_CONTROLLER_TypeDef*)controllerAddress; } -void TFT_FSMC::Transmit(uint16_t Data) { - LCD->RAM = Data; +void TFT_FSMC::transmit(uint16_t data) { + LCD->RAM = data; __DSB(); } -void TFT_FSMC::WriteReg(uint16_t Reg) { - LCD->REG = Reg; +void TFT_FSMC::writeReg(uint16_t reg) { + LCD->REG = reg; __DSB(); } -uint32_t TFT_FSMC::GetID() { +uint32_t TFT_FSMC::getID() { uint32_t id; - WriteReg(0x0000); + writeReg(0x0000); id = LCD->RAM; if (id == 0) - id = ReadID(LCD_READ_ID); + id = readID(LCD_READ_ID); if ((id & 0xFFFF) == 0 || (id & 0xFFFF) == 0xFFFF) - id = ReadID(LCD_READ_ID4); + id = readID(LCD_READ_ID4); if ((id & 0xFF00) == 0 && (id & 0xFF) != 0) - id = ReadID(LCD_READ_ID4); + id = readID(LCD_READ_ID4); return id; } - uint32_t TFT_FSMC::ReadID(uint16_t Reg) { + uint32_t TFT_FSMC::readID(uint16_t reg) { uint32_t id; - WriteReg(Reg); + writeReg(reg); id = LCD->RAM; // dummy read - id = Reg << 24; + id = reg << 24; id |= (LCD->RAM & 0x00FF) << 16; id |= (LCD->RAM & 0x00FF) << 8; id |= LCD->RAM & 0x00FF; @@ -225,11 +225,11 @@ bool TFT_FSMC::isBusy() { if ((dma_get_isr_bits(FSMC_DMA_DEV, FSMC_DMA_CHANNEL) & (DMA_ISR_TCIF | DMA_ISR_TEIF)) == 0) return true; __DSB(); - Abort(); + abort(); return false; } -void TFT_FSMC::Abort() { +void TFT_FSMC::abort() { dma_channel_reg_map *channel_regs = dma_channel_regs(FSMC_DMA_DEV, FSMC_DMA_CHANNEL); dma_disable(FSMC_DMA_DEV, FSMC_DMA_CHANNEL); // Abort DMA transfer if any @@ -241,25 +241,25 @@ void TFT_FSMC::Abort() { channel_regs->CPAR = 0U; } -void TFT_FSMC::TransmitDMA(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count) { +void TFT_FSMC::transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { // TODO: HAL STM32 uses DMA2_Channel1 for FSMC on STM32F1 - dma_setup_transfer(FSMC_DMA_DEV, FSMC_DMA_CHANNEL, Data, DMA_SIZE_16BITS, &LCD->RAM, DMA_SIZE_16BITS, DMA_MEM_2_MEM | MemoryIncrease); - dma_set_num_transfers(FSMC_DMA_DEV, FSMC_DMA_CHANNEL, Count); + dma_setup_transfer(FSMC_DMA_DEV, FSMC_DMA_CHANNEL, data, DMA_SIZE_16BITS, &LCD->RAM, DMA_SIZE_16BITS, DMA_MEM_2_MEM | memoryIncrease); + dma_set_num_transfers(FSMC_DMA_DEV, FSMC_DMA_CHANNEL, count); dma_clear_isr_bits(FSMC_DMA_DEV, FSMC_DMA_CHANNEL); dma_enable(FSMC_DMA_DEV, FSMC_DMA_CHANNEL); TERN_(TFT_SHARED_IO, while (isBusy())); } -void TFT_FSMC::Transmit(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count) { +void TFT_FSMC::transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { #if defined(FSMC_DMA_DEV) && defined(FSMC_DMA_CHANNEL) - dma_setup_transfer(FSMC_DMA_DEV, FSMC_DMA_CHANNEL, Data, DMA_SIZE_16BITS, &LCD->RAM, DMA_SIZE_16BITS, DMA_MEM_2_MEM | MemoryIncrease); - dma_set_num_transfers(FSMC_DMA_DEV, FSMC_DMA_CHANNEL, Count); + dma_setup_transfer(FSMC_DMA_DEV, FSMC_DMA_CHANNEL, data, DMA_SIZE_16BITS, &LCD->RAM, DMA_SIZE_16BITS, DMA_MEM_2_MEM | memoryIncrease); + dma_set_num_transfers(FSMC_DMA_DEV, FSMC_DMA_CHANNEL, count); dma_clear_isr_bits(FSMC_DMA_DEV, FSMC_DMA_CHANNEL); dma_enable(FSMC_DMA_DEV, FSMC_DMA_CHANNEL); while ((dma_get_isr_bits(FSMC_DMA_DEV, FSMC_DMA_CHANNEL) & (DMA_CCR_TEIE | DMA_CCR_TCIE)) == 0) {} - Abort(); + abort(); #endif } diff --git a/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h b/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h index 0db7f559b67a..0e74ce2c2bd6 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h +++ b/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h @@ -54,31 +54,31 @@ class TFT_FSMC { private: static LCD_CONTROLLER_TypeDef *LCD; - static uint32_t ReadID(uint16_t Reg); - static void Transmit(uint16_t Data); - static void Transmit(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count); - static void TransmitDMA(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count); + static uint32_t readID(uint16_t reg); + static void transmit(uint16_t data); + static void transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count); + static void transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count); public: - static void Init(); - static uint32_t GetID(); + static void init(); + static uint32_t getID(); static bool isBusy(); - static void Abort(); + static void abort(); - static void DataTransferBegin(uint16_t DataWidth=DATASIZE_16BIT) {}; - static void DataTransferEnd() {}; + static void dataTransferBegin(uint16_t dataWidth=DATASIZE_16BIT) {}; + static void dataTransferEnd() {}; - static void WriteData(uint16_t Data) { Transmit(Data); } - static void WriteReg(uint16_t Reg); + static void writeData(uint16_t data) { transmit(data); } + static void writeReg(uint16_t reg); - static void WriteSequence_DMA(uint16_t *Data, uint16_t Count) { TransmitDMA(DMA_PINC_ENABLE, Data, Count); } - static void WriteMultiple_DMA(uint16_t Color, uint16_t Count) { static uint16_t Data; Data = Color; TransmitDMA(DMA_PINC_DISABLE, &Data, Count); } + static void writeSequence_DMA(uint16_t *data, uint16_t count) { transmitDMA(DMA_PINC_ENABLE, data, count); } + static void writeMultiple_DMA(uint16_t color, uint16_t count) { static uint16_t data; data = color; transmitDMA(DMA_PINC_DISABLE, &data, count); } - static void WriteSequence(uint16_t *Data, uint16_t Count) { Transmit(DMA_PINC_ENABLE, Data, Count); } - static void WriteMultiple(uint16_t Color, uint32_t Count) { - while (Count > 0) { - Transmit(DMA_PINC_DISABLE, &Color, Count > DMA_MAX_SIZE ? DMA_MAX_SIZE : Count); - Count = Count > DMA_MAX_SIZE ? Count - DMA_MAX_SIZE : 0; + static void writeSequence(uint16_t *data, uint16_t count) { transmit(DMA_PINC_ENABLE, data, count); } + static void writeMultiple(uint16_t color, uint32_t count) { + while (count > 0) { + transmit(DMA_PINC_DISABLE, &color, count > DMA_MAX_SIZE ? DMA_MAX_SIZE : count); + count = count > DMA_MAX_SIZE ? count - DMA_MAX_SIZE : 0; } } }; diff --git a/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp b/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp index a68b2b98f8a3..18d564443761 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp +++ b/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp @@ -30,7 +30,7 @@ SPIClass TFT_SPI::SPIx(TFT_SPI_DEVICE); -void TFT_SPI::Init() { +void TFT_SPI::init() { #if PIN_EXISTS(TFT_RESET) OUT_WRITE(TFT_RESET_PIN, HIGH); delay(100); @@ -70,8 +70,8 @@ void TFT_SPI::Init() { SPIx.setDataMode(SPI_MODE0); } -void TFT_SPI::DataTransferBegin(uint16_t DataSize) { - SPIx.setDataSize(DataSize); +void TFT_SPI::dataTransferBegin(uint16_t dataSize) { + SPIx.setDataSize(dataSize); SPIx.begin(); WRITE(TFT_CS_PIN, LOW); } @@ -80,11 +80,11 @@ void TFT_SPI::DataTransferBegin(uint16_t DataSize) { #include "../../../lcd/tft_io/tft_ids.h" #endif -uint32_t TFT_SPI::GetID() { +uint32_t TFT_SPI::getID() { uint32_t id; - id = ReadID(LCD_READ_ID); + id = readID(LCD_READ_ID); if ((id & 0xFFFF) == 0 || (id & 0xFFFF) == 0xFFFF) { - id = ReadID(LCD_READ_ID4); + id = readID(LCD_READ_ID4); #ifdef TFT_DEFAULT_DRIVER if ((id & 0xFFFF) == 0 || (id & 0xFFFF) == 0xFFFF) id = TFT_DEFAULT_DRIVER; @@ -93,13 +93,13 @@ uint32_t TFT_SPI::GetID() { return id; } -uint32_t TFT_SPI::ReadID(uint16_t Reg) { +uint32_t TFT_SPI::readID(uint16_t reg) { uint32_t data = 0; #if PIN_EXISTS(TFT_MISO) SPIx.setClockDivider(SPI_CLOCK_DIV16); - DataTransferBegin(DATASIZE_8BIT); - WriteReg(Reg); + dataTransferBegin(DATASIZE_8BIT); + writeReg(reg); for (uint8_t i = 0; i < 4; ++i) { uint8_t d; @@ -107,7 +107,7 @@ uint32_t TFT_SPI::ReadID(uint16_t Reg) { data = (data << 8) | d; } - DataTransferEnd(); + dataTransferEnd(); SPIx.setClockDivider(SPI_CLOCK_MAX); #endif @@ -130,11 +130,11 @@ bool TFT_SPI::isBusy() { if (!(SPIdev->regs->SR & SPI_SR_TXE) || (SPIdev->regs->SR & SPI_SR_BSY)) return true; } - Abort(); + abort(); return false; } -void TFT_SPI::Abort() { +void TFT_SPI::abort() { dma_channel_reg_map *channel_regs = dma_channel_regs(DMAx, DMA_CHx); dma_disable(DMAx, DMA_CHx); // Abort DMA transfer if any @@ -146,23 +146,23 @@ void TFT_SPI::Abort() { channel_regs->CMAR = 0U; channel_regs->CPAR = 0U; - DataTransferEnd(); + dataTransferEnd(); } -void TFT_SPI::Transmit(uint16_t Data) { SPIx.send(Data); } +void TFT_SPI::transmit(uint16_t data) { SPIx.send(data); } -void TFT_SPI::TransmitDMA(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count) { - DataTransferBegin(); - SPIx.dmaSendAsync(Data, Count, MemoryIncrease == DMA_MINC_ENABLE); +void TFT_SPI::transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { + dataTransferBegin(); + SPIx.dmaSendAsync(data, count, memoryIncrease == DMA_MINC_ENABLE); TERN_(TFT_SHARED_IO, while (isBusy())); } -void TFT_SPI::Transmit(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count) { +void TFT_SPI::transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { WRITE(TFT_DC_PIN, HIGH); - DataTransferBegin(); - SPIx.dmaSend(Data, Count, MemoryIncrease == DMA_MINC_ENABLE); - DataTransferEnd(); + dataTransferBegin(); + SPIx.dmaSend(data, count, memoryIncrease == DMA_MINC_ENABLE); + dataTransferEnd(); } #endif // HAS_SPI_TFT diff --git a/Marlin/src/HAL/STM32F1/tft/tft_spi.h b/Marlin/src/HAL/STM32F1/tft/tft_spi.h index 573077d21d90..d0c2e50486f0 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_spi.h +++ b/Marlin/src/HAL/STM32F1/tft/tft_spi.h @@ -63,34 +63,34 @@ class TFT_SPI { private: - static uint32_t ReadID(uint16_t Reg); - static void Transmit(uint16_t Data); - static void Transmit(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count); - static void TransmitDMA(uint32_t MemoryIncrease, uint16_t *Data, uint16_t Count); + static uint32_t readID(uint16_t reg); + static void transmit(uint16_t data); + static void transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count); + static void transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count); public: static SPIClass SPIx; - static void Init(); - static uint32_t GetID(); + static void init(); + static uint32_t getID(); static bool isBusy(); - static void Abort(); + static void abort(); - static void DataTransferBegin(uint16_t DataWidth=DATA_SIZE_16BIT); - static void DataTransferEnd() { WRITE(TFT_CS_PIN, HIGH); SPIx.end(); }; - static void DataTransferAbort(); + static void dataTransferBegin(uint16_t dataWidth=DATA_SIZE_16BIT); + static void dataTransferEnd() { WRITE(TFT_CS_PIN, HIGH); SPIx.end(); }; + static void dataTransferAbort(); - static void WriteData(uint16_t Data) { Transmit(Data); } - static void WriteReg(uint16_t Reg) { WRITE(TFT_DC_PIN, LOW); Transmit(Reg); WRITE(TFT_DC_PIN, HIGH); } + static void writeData(uint16_t data) { transmit(data); } + static void writeReg(uint16_t reg) { WRITE(TFT_DC_PIN, LOW); transmit(reg); WRITE(TFT_DC_PIN, HIGH); } - static void WriteSequence_DMA(uint16_t *Data, uint16_t Count) { TransmitDMA(DMA_MINC_ENABLE, Data, Count); } - static void WriteMultiple_DMA(uint16_t Color, uint16_t Count) { static uint16_t Data; Data = Color; TransmitDMA(DMA_MINC_DISABLE, &Data, Count); } + static void writeSequence_DMA(uint16_t *data, uint16_t count) { transmitDMA(DMA_MINC_ENABLE, data, count); } + static void writeMultiple_DMA(uint16_t color, uint16_t count) { static uint16_t data; data = color; transmitDMA(DMA_MINC_DISABLE, &data, count); } - static void WriteSequence(uint16_t *Data, uint16_t Count) { Transmit(DMA_MINC_ENABLE, Data, Count); } - static void WriteMultiple(uint16_t Color, uint32_t Count) { - while (Count > 0) { - Transmit(DMA_MINC_DISABLE, &Color, Count > DMA_MAX_SIZE ? DMA_MAX_SIZE : Count); - Count = Count > DMA_MAX_SIZE ? Count - DMA_MAX_SIZE : 0; + static void writeSequence(uint16_t *data, uint16_t count) { transmit(DMA_MINC_ENABLE, data, count); } + static void writeMultiple(uint16_t color, uint32_t count) { + while (count > 0) { + transmit(DMA_MINC_DISABLE, &color, count > DMA_MAX_SIZE ? DMA_MAX_SIZE : count); + count = count > DMA_MAX_SIZE ? count - DMA_MAX_SIZE : 0; } } }; diff --git a/Marlin/src/HAL/STM32F1/tft/xpt2046.cpp b/Marlin/src/HAL/STM32F1/tft/xpt2046.cpp index bf57ba0034b1..845a57a8147b 100644 --- a/Marlin/src/HAL/STM32F1/tft/xpt2046.cpp +++ b/Marlin/src/HAL/STM32F1/tft/xpt2046.cpp @@ -59,7 +59,7 @@ uint16_t delta(uint16_t a, uint16_t b) { return a > b ? a - b : b - a; } } #endif // TOUCH_BUTTONS_HW_SPI -void XPT2046::Init() { +void XPT2046::init() { SET_INPUT(TOUCH_MISO_PIN); SET_OUTPUT(TOUCH_MOSI_PIN); SET_OUTPUT(TOUCH_SCK_PIN); @@ -97,7 +97,7 @@ bool XPT2046::getRawPoint(int16_t *x, int16_t *y) { uint16_t XPT2046::getRawData(const XPTCoordinate coordinate) { uint16_t data[3]; - DataTransferBegin(); + dataTransferBegin(); TERN_(TOUCH_BUTTONS_HW_SPI, SPIx.begin()); for (uint16_t i = 0; i < 3 ; i++) { @@ -106,7 +106,7 @@ uint16_t XPT2046::getRawData(const XPTCoordinate coordinate) { } TERN_(TOUCH_BUTTONS_HW_SPI, SPIx.end()); - DataTransferEnd(); + dataTransferEnd(); uint16_t delta01 = delta(data[0], data[1]), delta02 = delta(data[0], data[2]), @@ -119,17 +119,17 @@ uint16_t XPT2046::getRawData(const XPTCoordinate coordinate) { } uint16_t XPT2046::IO(uint16_t data) { - return TERN(TOUCH_BUTTONS_HW_SPI, HardwareIO, SoftwareIO)(data); + return TERN(TOUCH_BUTTONS_HW_SPI, hardwareIO, softwareIO)(data); } #if ENABLED(TOUCH_BUTTONS_HW_SPI) - uint16_t XPT2046::HardwareIO(uint16_t data) { + uint16_t XPT2046::hardwareIO(uint16_t data) { uint16_t result = SPIx.transfer(data); return result; } #endif -uint16_t XPT2046::SoftwareIO(uint16_t data) { +uint16_t XPT2046::softwareIO(uint16_t data) { uint16_t result = 0; for (uint8_t j = 0x80; j; j >>= 1) { diff --git a/Marlin/src/HAL/STM32F1/tft/xpt2046.h b/Marlin/src/HAL/STM32F1/tft/xpt2046.h index 7c456cf00e1b..8fdcacf92641 100644 --- a/Marlin/src/HAL/STM32F1/tft/xpt2046.h +++ b/Marlin/src/HAL/STM32F1/tft/xpt2046.h @@ -65,12 +65,12 @@ class XPT2046 { static uint16_t getRawData(const XPTCoordinate coordinate); static bool isTouched(); - static void DataTransferBegin() { WRITE(TOUCH_CS_PIN, LOW); }; - static void DataTransferEnd() { WRITE(TOUCH_CS_PIN, HIGH); }; + static void dataTransferBegin() { WRITE(TOUCH_CS_PIN, LOW); }; + static void dataTransferEnd() { WRITE(TOUCH_CS_PIN, HIGH); }; #if ENABLED(TOUCH_BUTTONS_HW_SPI) - static uint16_t HardwareIO(uint16_t data); + static uint16_t hardwareIO(uint16_t data); #endif - static uint16_t SoftwareIO(uint16_t data); + static uint16_t softwareIO(uint16_t data); static uint16_t IO(uint16_t data = 0); public: @@ -78,6 +78,6 @@ class XPT2046 { static SPIClass SPIx; #endif - static void Init(); + static void init(); static bool getRawPoint(int16_t *x, int16_t *y); }; diff --git a/Marlin/src/HAL/shared/backtrace/unwmemaccess.cpp b/Marlin/src/HAL/shared/backtrace/unwmemaccess.cpp index a4151b38c20e..da1cff4fcc88 100644 --- a/Marlin/src/HAL/shared/backtrace/unwmemaccess.cpp +++ b/Marlin/src/HAL/shared/backtrace/unwmemaccess.cpp @@ -135,7 +135,7 @@ // Generic ARM code, that's testing if an access to the given address would cause a fault or not // It can't guarantee an address is in RAM or Flash only, but we usually don't care - #define NVIC_FAULT_STAT 0xE000ED28 // Configurable Fault Status Reg. + #define NVIC_FAULT_STAT 0xE000ED28 // Configurable Fault Status reg. #define NVIC_CFG_CTRL 0xE000ED14 // Configuration Control Register #define NVIC_FAULT_STAT_BFARV 0x00008000 // BFAR is valid #define NVIC_CFG_CTRL_BFHFNMIGN 0x00000100 // Ignore bus fault in NMI/fault diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index 09d398eb8769..8b89a00c207c 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -819,7 +819,7 @@ void idle(const bool no_stepper_sleep/*=false*/) { TERN_(HAS_BEEPER, buzzer.tick()); // Handle UI input / draw events - TERN(DWIN_CREALITY_LCD, DWIN_Update(), ui.update()); + TERN(DWIN_CREALITY_LCD, dwinUpdate(), ui.update()); // Run i2c Position Encoders #if ENABLED(I2C_POSITION_ENCODERS) diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index f4d1ff836596..361c63af4d5f 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -375,7 +375,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #endif #if HAS_LCDPRINT && HAS_EXTRA_PROGRESS && LCD_HEIGHT < 4 - #error "Displays with fewer than 4 rows of text can't show progress values." + #error "Displays with fewer than 4 rows can't show progress values (e.g., SHOW_PROGRESS_PERCENT, SHOW_ELAPSED_TIME, SHOW_REMAINING_TIME, SHOW_INTERACTION_TIME)." #endif #if !HAS_MARLINUI_MENU && ENABLED(SD_REPRINT_LAST_SELECTED_FILE) diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp index ba467d1a61c1..1aa53241ad99 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp @@ -787,9 +787,10 @@ void MarlinUI::draw_status_message(const bool blink) { #define TPOFFSET (LCD_WIDTH - 1) static uint8_t timepos = TPOFFSET - 6; static char buffer[8]; - static lcd_uint_t pc, pr; #if ENABLED(SHOW_PROGRESS_PERCENT) + static lcd_uint_t pc = 0, pr = 2; + inline void setPercentPos(const lcd_uint_t c, const lcd_uint_t r) { pc = c; pr = r; } void MarlinUI::drawPercent() { const uint8_t progress = ui.get_progress_percent(); if (progress) { @@ -800,6 +801,7 @@ void MarlinUI::draw_status_message(const bool blink) { } } #endif + #if ENABLED(SHOW_REMAINING_TIME) void MarlinUI::drawRemain() { if (printJobOngoing()) { @@ -811,6 +813,7 @@ void MarlinUI::draw_status_message(const bool blink) { } } #endif + #if ENABLED(SHOW_INTERACTION_TIME) void MarlinUI::drawInter() { const duration_t interactt = ui.interaction_time; @@ -822,6 +825,7 @@ void MarlinUI::draw_status_message(const bool blink) { } } #endif + #if ENABLED(SHOW_ELAPSED_TIME) void MarlinUI::drawElapsed() { if (printJobOngoing()) { @@ -947,7 +951,7 @@ void MarlinUI::draw_status_screen() { #if LCD_WIDTH < 20 #if HAS_PRINT_PROGRESS - pc = 0; pr = 2; + TERN_(SHOW_PROGRESS_PERCENT, setPercentPos(0, 2)); rotate_progress(); #endif @@ -1039,7 +1043,7 @@ void MarlinUI::draw_status_screen() { #if LCD_WIDTH >= 20 #if HAS_PRINT_PROGRESS - pc = 6; pr = 2; + TERN_(SHOW_PROGRESS_PERCENT, setPercentPos(6, 2)); rotate_progress(); #else char c; @@ -1122,7 +1126,7 @@ void MarlinUI::draw_status_screen() { _draw_bed_status(blink); #elif HAS_PRINT_PROGRESS #define DREW_PRINT_PROGRESS 1 - pc = 0; pr = 2; + TERN_(SHOW_PROGRESS_PERCENT, setPercentPos(0, 2)); rotate_progress(); #endif @@ -1130,7 +1134,7 @@ void MarlinUI::draw_status_screen() { // All progress strings // #if HAS_PRINT_PROGRESS && !DREW_PRINT_PROGRESS - pc = LCD_WIDTH - 9; pr = 2; + TERN_(SHOW_PROGRESS_PERCENT, setPercentPos(LCD_WIDTH - 9, 2)); rotate_progress(); #endif #endif // LCD_INFO_SCREEN_STYLE 1 diff --git a/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp b/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp index 3e173aab6cec..d16693cee4ee 100644 --- a/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp +++ b/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp @@ -305,7 +305,7 @@ static void setWindow(u8g_t *u8g, u8g_dev_t *dev, uint16_t Xmin, uint16_t Ymin, for (uint16_t l = 0; l < UPSCALE0(length); l++) buffer[l + n * UPSCALE0(length)] = buffer[l]; - tftio.WriteSequence(buffer, length * sq(GRAPHICAL_TFT_UPSCALE)); + tftio.writeSequence(buffer, length * sq(GRAPHICAL_TFT_UPSCALE)); #else for (uint8_t i = GRAPHICAL_TFT_UPSCALE; i--;) u8g_WriteSequence(u8g, dev, k << 1, (uint8_t*)buffer); @@ -351,7 +351,7 @@ static void u8g_upscale_clear_lcd(u8g_t *u8g, u8g_dev_t *dev, uint16_t *buffer) setWindow(u8g, dev, 0, 0, (TFT_WIDTH) - 1, (TFT_HEIGHT) - 1); #if HAS_LCD_IO UNUSED(buffer); - tftio.WriteMultiple(TFT_MARLINBG_COLOR, (TFT_WIDTH) * (TFT_HEIGHT)); + tftio.writeMultiple(TFT_MARLINBG_COLOR, (TFT_WIDTH) * (TFT_HEIGHT)); #else memset2(buffer, TFT_MARLINBG_COLOR, (TFT_WIDTH) / 2); for (uint16_t i = 0; i < (TFT_HEIGHT) * sq(GRAPHICAL_TFT_UPSCALE); i++) @@ -381,8 +381,8 @@ uint8_t u8g_dev_tft_320x240_upscale_from_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, u } if (msgInitCount) return -1; - tftio.Init(); - tftio.InitTFT(); + tftio.init(); + tftio.initTFT(); TERN_(TOUCH_SCREEN_CALIBRATION, touch_calibration.calibration_reset()); u8g_upscale_clear_lcd(u8g, dev, buffer); return 0; @@ -425,7 +425,7 @@ uint8_t u8g_dev_tft_320x240_upscale_from_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, u for (uint16_t l = 0; l < UPSCALE0(WIDTH); l++) buffer[l + n * UPSCALE0(WIDTH)] = buffer[l]; - tftio.WriteSequence(buffer, COUNT(bufferA)); + tftio.writeSequence(buffer, COUNT(bufferA)); #else uint8_t *bufptr = (uint8_t*) buffer; for (uint8_t i = GRAPHICAL_TFT_UPSCALE; i--;) { @@ -469,19 +469,19 @@ uint8_t u8g_com_hal_tft_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_p break; case U8G_COM_MSG_WRITE_BYTE: - tftio.DataTransferBegin(DATASIZE_8BIT); + tftio.dataTransferBegin(DATASIZE_8BIT); if (isCommand) - tftio.WriteReg(arg_val); + tftio.writeReg(arg_val); else - tftio.WriteData((uint16_t)arg_val); - tftio.DataTransferEnd(); + tftio.writeData((uint16_t)arg_val); + tftio.dataTransferEnd(); break; case U8G_COM_MSG_WRITE_SEQ: - tftio.DataTransferBegin(DATASIZE_16BIT); + tftio.dataTransferBegin(DATASIZE_16BIT); for (uint8_t i = 0; i < arg_val; i += 2) - tftio.WriteData(*(uint16_t *)(((uintptr_t)arg_ptr) + i)); - tftio.DataTransferEnd(); + tftio.writeData(*(uint16_t *)(((uintptr_t)arg_ptr) + i)); + tftio.dataTransferEnd(); break; } @@ -494,9 +494,9 @@ U8G_PB_DEV(u8g_dev_tft_320x240_upscale_from_128x64, WIDTH, HEIGHT, PAGE_HEIGHT, static void drawCross(uint16_t x, uint16_t y, uint16_t color) { tftio.set_window(x - 15, y, x + 15, y); - tftio.WriteMultiple(color, 31); + tftio.writeMultiple(color, 31); tftio.set_window(x, y - 15, x, y + 15); - tftio.WriteMultiple(color, 31); + tftio.writeMultiple(color, 31); } void MarlinUI::touch_calibration_screen() { @@ -508,7 +508,7 @@ U8G_PB_DEV(u8g_dev_tft_320x240_upscale_from_128x64, WIDTH, HEIGHT, PAGE_HEIGHT, defer_status_screen(true); stage = touch_calibration.calibration_start(); tftio.set_window(0, 0, (TFT_WIDTH) - 1, (TFT_HEIGHT) - 1); - tftio.WriteMultiple(TFT_MARLINBG_COLOR, uint32_t(TFT_WIDTH) * (TFT_HEIGHT)); + tftio.writeMultiple(TFT_MARLINBG_COLOR, uint32_t(TFT_WIDTH) * (TFT_HEIGHT)); } else { // clear last cross diff --git a/Marlin/src/lcd/e3v2/creality/dwin.cpp b/Marlin/src/lcd/e3v2/creality/dwin.cpp index af3d1eaeb8fa..303807aa21d6 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin.cpp +++ b/Marlin/src/lcd/e3v2/creality/dwin.cpp @@ -128,8 +128,8 @@ constexpr uint16_t MROWS = TROWS - 1, // Last Row Index #define DWIN_RIGHT (DWIN_WIDTH-1) // Value Init -HMI_value_t HMI_ValueStruct; -HMI_flag_t HMI_flag{0}; +hmi_value_t hmiValues; +hmi_flag_t hmiFlag{0}; millis_t dwin_heat_time = 0; @@ -194,206 +194,206 @@ static uint16_t _remain_time = 0; #define DWIN_LANGUAGE_EEPROM_ADDRESS 0x01 // Between 0x01 and 0x63 (EEPROM_OFFSET-1) // BL24CXX::check() uses 0x00 -inline bool HMI_IsChinese() { return HMI_flag.language == DWIN_CHINESE; } +inline bool hmiIsChinese() { return hmiFlag.language == DWIN_CHINESE; } -void HMI_SetLanguageCache() { - DWIN_JPG_CacheTo1(HMI_IsChinese() ? Language_Chinese : Language_English); +void hmiSetLanguageCache() { + dwinJPGCacheTo1(hmiIsChinese() ? Language_Chinese : Language_English); } -void HMI_SetLanguage() { +void hmiSetLanguage() { #if ALL(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) - BL24CXX::read(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language)); + BL24CXX::read(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&hmiFlag.language, sizeof(hmiFlag.language)); #endif - HMI_SetLanguageCache(); + hmiSetLanguageCache(); } -void HMI_ToggleLanguage() { - HMI_flag.language = HMI_IsChinese() ? DWIN_ENGLISH : DWIN_CHINESE; - HMI_SetLanguageCache(); +void hmiToggleLanguage() { + hmiFlag.language = hmiIsChinese() ? DWIN_ENGLISH : DWIN_CHINESE; + hmiSetLanguageCache(); #if ALL(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) - BL24CXX::write(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language)); + BL24CXX::write(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&hmiFlag.language, sizeof(hmiFlag.language)); #endif } typedef struct { uint16_t x, y, w, h; } icon_info_t; typedef struct { uint16_t x, y[2], w, h; } text_info_t; -void ICON_Button(const bool here, const int iconid, const icon_info_t &ico, const text_info_t (&txt)[2]) { - const bool cn = HMI_IsChinese(); - DWIN_ICON_Show(ICON, iconid + here, ico.x, ico.y); - if (here) DWIN_Draw_Rectangle(0, Color_White, ico.x, ico.y, ico.x + ico.w - 1, ico.y + ico.h - 1); - DWIN_Frame_AreaCopy(1, txt[cn].x, txt[cn].y[here], txt[cn].x + txt[cn].w - 1, txt[cn].y[here] + txt[cn].h - 1, ico.x + (ico.w - txt[cn].w) / 2, (ico.y + ico.h - 28) - txt[cn].h/2); +void iconButton(const bool here, const int iconid, const icon_info_t &ico, const text_info_t (&txt)[2]) { + const bool cn = hmiIsChinese(); + dwinIconShow(ICON, iconid + here, ico.x, ico.y); + if (here) dwinDrawRectangle(0, Color_White, ico.x, ico.y, ico.x + ico.w - 1, ico.y + ico.h - 1); + dwinFrameAreaCopy(1, txt[cn].x, txt[cn].y[here], txt[cn].x + txt[cn].w - 1, txt[cn].y[here] + txt[cn].h - 1, ico.x + (ico.w - txt[cn].w) / 2, (ico.y + ico.h - 28) - txt[cn].h/2); } // // Main Menu: "Print" // -void ICON_Print() { +void iconPrint() { constexpr icon_info_t ico = { 17, 110, 110, 100 }; constexpr text_info_t txt[2] = { { 1, { 417, 449 }, 30, 14 }, { 1, { 405, 447 }, 27, 15 } }; - ICON_Button(select_page.now == PAGE_PRINT, ICON_Print_0, ico, txt); + iconButton(select_page.now == PAGE_PRINT, ICON_Print_0, ico, txt); } // // Main Menu: "Prepare" // -void ICON_Prepare() { +void iconPrepare() { constexpr icon_info_t ico = { 145, 110, 110, 100 }; constexpr text_info_t txt[2] = { { 33, { 417, 449 }, 51, 14 }, { 31, { 405, 447 }, 27, 15 } }; - ICON_Button(select_page.now == PAGE_PREPARE, ICON_Prepare_0, ico, txt); + iconButton(select_page.now == PAGE_PREPARE, ICON_Prepare_0, ico, txt); } // // Main Menu: "Control" // -void ICON_Control() { +void iconControl() { constexpr icon_info_t ico = { 17, 226, 110, 100 }; constexpr text_info_t txt[2] = { { 85, { 417, 449 }, 46, 14 }, { 61, { 405, 447 }, 27, 15 } }; - ICON_Button(select_page.now == PAGE_CONTROL, ICON_Control_0, ico, txt); + iconButton(select_page.now == PAGE_CONTROL, ICON_Control_0, ico, txt); } // // Main Menu: "Info" // -void ICON_StartInfo() { +void iconStartInfo() { constexpr icon_info_t ico = { 145, 226, 110, 100 }; constexpr text_info_t txt[2] = { { 133, { 417, 449 }, 23, 14 }, { 91, { 405, 447 }, 27, 15 } }; - ICON_Button(select_page.now == PAGE_INFO_LEVELING, ICON_Info_0, ico, txt); + iconButton(select_page.now == PAGE_INFO_LEVELING, ICON_Info_0, ico, txt); } // // Main Menu: "Level" // -void ICON_Leveling() { +void iconLeveling() { constexpr icon_info_t ico = { 145, 226, 110, 100 }; constexpr text_info_t txt[2] = { { 88, { 433, 464 }, 36, 14 }, { 211, { 405, 447 }, 27, 15 } }; - ICON_Button(select_page.now == PAGE_INFO_LEVELING, ICON_Leveling_0, ico, txt); + iconButton(select_page.now == PAGE_INFO_LEVELING, ICON_Leveling_0, ico, txt); } // // Printing: "Tune" // -void ICON_Tune() { +void iconTune() { constexpr icon_info_t ico = { 8, 232, 80, 100 }; constexpr text_info_t txt[2] = { { 0, { 433, 464 }, 32, 14 }, { 121, { 405, 447 }, 27, 15 } }; - ICON_Button(select_print.now == PRINT_SETUP, ICON_Setup_0, ico, txt); + iconButton(select_print.now == PRINT_SETUP, ICON_Setup_0, ico, txt); } // // Printing: "Pause" // -void ICON_Pause() { +void iconPause() { constexpr icon_info_t ico = { 96, 232, 80, 100 }; constexpr text_info_t txt[2] = { { 157, { 417, 449 }, 39, 14 }, { 181, { 405, 447 }, 27, 15 } }; - ICON_Button(select_print.now == PRINT_PAUSE_RESUME, ICON_Pause_0, ico, txt); + iconButton(select_print.now == PRINT_PAUSE_RESUME, ICON_Pause_0, ico, txt); } // // Printing: "Resume" // -void ICON_Resume() { +void iconResume() { constexpr icon_info_t ico = { 96, 232, 80, 100 }; constexpr text_info_t txt[2] = { { 33, { 433, 464 }, 53, 14 }, { 1, { 405, 447 }, 27, 15 } }; - ICON_Button(select_print.now == PRINT_PAUSE_RESUME, ICON_Continue_0, ico, txt); + iconButton(select_print.now == PRINT_PAUSE_RESUME, ICON_Continue_0, ico, txt); } -void ICON_ResumeOrPause() { - if (printingIsPaused() || HMI_flag.pause_flag || HMI_flag.pause_action) - ICON_Resume(); +void iconResumeOrPause() { + if (printingIsPaused() || hmiFlag.pause_flag || hmiFlag.pause_action) + iconResume(); else - ICON_Pause(); + iconPause(); } // // Printing: "Stop" // -void ICON_Stop() { +void iconStop() { constexpr icon_info_t ico = { 184, 232, 80, 100 }; constexpr text_info_t txt[2] = { { 196, { 417, 449 }, 29, 14 }, { 151, { 405, 447 }, 27, 12 } }; - ICON_Button(select_print.now == PRINT_STOP, ICON_Stop_0, ico, txt); + iconButton(select_print.now == PRINT_STOP, ICON_Stop_0, ico, txt); } -inline void Clear_Title_Bar() { - DWIN_Draw_Box(1, Color_Bg_Blue, 0, 0, DWIN_WIDTH, TITLE_HEIGHT); +inline void clearTitleBar() { + dwinDrawBox(1, Color_Bg_Blue, 0, 0, DWIN_WIDTH, TITLE_HEIGHT); } -void Draw_Title(FSTR_P ftitle) { - DWIN_Draw_String(false, DWIN_FONT_HEAD, Color_White, Color_Bg_Blue, 14, 4, ftitle); +void drawTitle(FSTR_P ftitle) { + dwinDrawString(false, DWIN_FONT_HEAD, Color_White, Color_Bg_Blue, 14, 4, ftitle); } -inline void Clear_Menu_Area() { - DWIN_Draw_Box(1, Color_Bg_Black, 0, TITLE_HEIGHT, DWIN_WIDTH, STATUS_Y - TITLE_HEIGHT); +inline void clearMenuArea() { + dwinDrawBox(1, Color_Bg_Black, 0, TITLE_HEIGHT, DWIN_WIDTH, STATUS_Y - TITLE_HEIGHT); } -void Clear_Main_Window() { - Clear_Title_Bar(); - Clear_Menu_Area(); +void clearMainWindow() { + clearTitleBar(); + clearMenuArea(); } -void Clear_Popup_Area() { - Clear_Title_Bar(); - DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, 31, DWIN_WIDTH, DWIN_HEIGHT); +void clearPopupArea() { + clearTitleBar(); + dwinDrawRectangle(1, Color_Bg_Black, 0, 31, DWIN_WIDTH, DWIN_HEIGHT); } -void Draw_Popup_Bkgd_105() { - DWIN_Draw_Rectangle(1, Color_Bg_Window, 14, 105, 258, 374); +void drawPopupBkgd105() { + dwinDrawRectangle(1, Color_Bg_Window, 14, 105, 258, 374); } -void Draw_More_Icon(const uint8_t line) { - DWIN_ICON_Show(ICON, ICON_More, 226, MBASE(line) - 3); +void drawMoreIcon(const uint8_t line) { + dwinIconShow(ICON, ICON_More, 226, MBASE(line) - 3); } -void Draw_Menu_Cursor(const uint8_t line) { - //DWIN_ICON_Show(ICON, ICON_Rectangle, 0, MBASE(line) - 18); - DWIN_Draw_Rectangle(1, Rectangle_Color, 0, MBASE(line) - 18, 14, MBASE(line + 1) - 20); +void drawMenuCursor(const uint8_t line) { + //dwinIconShow(ICON, ICON_Rectangle, 0, MBASE(line) - 18); + dwinDrawRectangle(1, Rectangle_Color, 0, MBASE(line) - 18, 14, MBASE(line + 1) - 20); } -void Erase_Menu_Cursor(const uint8_t line) { - DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, MBASE(line) - 18, 14, MBASE(line + 1) - 20); +void eraseMenuCursor(const uint8_t line) { + dwinDrawRectangle(1, Color_Bg_Black, 0, MBASE(line) - 18, 14, MBASE(line + 1) - 20); } -void Move_Highlight(const int16_t from, const uint16_t newline) { - Erase_Menu_Cursor(newline - from); - Draw_Menu_Cursor(newline); +void moveHighlight(const int16_t from, const uint16_t newline) { + eraseMenuCursor(newline - from); + drawMenuCursor(newline); } -void Add_Menu_Line() { - Move_Highlight(1, MROWS); - DWIN_Draw_Line(Line_Color, 16, MBASE(MROWS + 1) - 20, 256, MBASE(MROWS + 1) - 19); +void addMenuLine() { + moveHighlight(1, MROWS); + dwinDrawLine(Line_Color, 16, MBASE(MROWS + 1) - 20, 256, MBASE(MROWS + 1) - 19); } -void Scroll_Menu(const uint8_t dir) { - DWIN_Frame_AreaMove(1, dir, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); +void scrollMenu(const uint8_t dir) { + dwinFrameAreaMove(1, dir, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); switch (dir) { - case DWIN_SCROLL_DOWN: Move_Highlight(-1, 0); break; - case DWIN_SCROLL_UP: Add_Menu_Line(); break; + case DWIN_SCROLL_DOWN: moveHighlight(-1, 0); break; + case DWIN_SCROLL_UP: addMenuLine(); break; } } @@ -401,61 +401,61 @@ inline uint16_t nr_sd_menu_items() { return card.get_num_items() + !card.flag.workDirIsRoot; } -void Erase_Menu_Text(const uint8_t line) { - DWIN_Draw_Rectangle(1, Color_Bg_Black, LBLX, MBASE(line) - 14, 271, MBASE(line) + 28); +void eraseMenuText(const uint8_t line) { + dwinDrawRectangle(1, Color_Bg_Black, LBLX, MBASE(line) - 14, 271, MBASE(line) + 28); } -void Draw_Menu_Icon(const uint8_t line, const uint8_t icon) { - DWIN_ICON_Show(ICON, icon, 26, MBASE(line) - 3); +void drawMenuIcon(const uint8_t line, const uint8_t icon) { + dwinIconShow(ICON, icon, 26, MBASE(line) - 3); } -void _Decorate_Menu_Item(const uint8_t line, const uint8_t icon, bool more) { - if (icon) Draw_Menu_Icon(line, icon); - if (more) Draw_More_Icon(line); +void _decorateMenuItem(const uint8_t line, const uint8_t icon, bool more) { + if (icon) drawMenuIcon(line, icon); + if (more) drawMoreIcon(line); } -void Draw_Menu_Item(const uint8_t line, const uint8_t icon=0, const char * const label=nullptr, bool more=false) { - if (label) DWIN_Draw_String(false, font8x16, Color_White, Color_Bg_Black, LBLX, MBASE(line) - 1, (char*)label); - _Decorate_Menu_Item(line, icon, more); +void drawMenuItem(const uint8_t line, const uint8_t icon=0, const char * const label=nullptr, bool more=false) { + if (label) dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, LBLX, MBASE(line) - 1, (char*)label); + _decorateMenuItem(line, icon, more); } -void Draw_Menu_Item(const uint8_t line, const uint8_t icon=0, FSTR_P const flabel=nullptr, bool more=false) { - if (flabel) DWIN_Draw_String(false, font8x16, Color_White, Color_Bg_Black, LBLX, MBASE(line) - 1, flabel); - _Decorate_Menu_Item(line, icon, more); +void drawMenuItem(const uint8_t line, const uint8_t icon=0, FSTR_P const flabel=nullptr, bool more=false) { + if (flabel) dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, LBLX, MBASE(line) - 1, flabel); + _decorateMenuItem(line, icon, more); } -void Draw_Menu_Line(const uint8_t line, const uint8_t icon=0, const char * const label=nullptr, bool more=false) { - Draw_Menu_Item(line, icon, label, more); - DWIN_Draw_Line(Line_Color, 16, MBASE(line) + 33, 256, MBASE(line) + 34); +void drawMenuLine(const uint8_t line, const uint8_t icon=0, const char * const label=nullptr, bool more=false) { + drawMenuItem(line, icon, label, more); + dwinDrawLine(Line_Color, 16, MBASE(line) + 33, 256, MBASE(line) + 34); } -void Draw_Menu_Line(const uint8_t line, const uint8_t icon, FSTR_P const flabel, bool more=false) { - Draw_Menu_Item(line, icon, flabel, more); - DWIN_Draw_Line(Line_Color, 16, MBASE(line) + 33, 256, MBASE(line) + 34); +void drawMenuLine(const uint8_t line, const uint8_t icon, FSTR_P const flabel, bool more=false) { + drawMenuItem(line, icon, flabel, more); + dwinDrawLine(Line_Color, 16, MBASE(line) + 33, 256, MBASE(line) + 34); } -void Draw_Checkbox_Line(const uint8_t line, const bool ison) { +void drawCheckboxLine(const uint8_t line, const bool ison) { const uint16_t x = 225, y = EBASE(line) - 2; - DWIN_Draw_String(true, font8x16, Color_White, Color_Bg_Black, x + 5, y, ison ? F("X") : F(" ")); - DWIN_Draw_Rectangle(0, Color_White, x + 2, y + 2, x + 16, y + 16); + dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, x + 5, y, ison ? F("X") : F(" ")); + dwinDrawRectangle(0, Color_White, x + 2, y + 2, x + 16, y + 16); } // AreaCopy for a Menu Item -void Item_AreaCopy(const uint16_t x1, const uint16_t y1, const uint16_t x2, const uint16_t y2, const uint8_t row=0, const uint16_t inset=0, const uint16_t yadd=0) { - DWIN_Frame_AreaCopy(1, x1, y1, x2, y2, LBLX + inset, MBASE(row) + yadd); +void itemAreaCopy(const uint16_t x1, const uint16_t y1, const uint16_t x2, const uint16_t y2, const uint8_t row=0, const uint16_t inset=0, const uint16_t yadd=0) { + dwinFrameAreaCopy(1, x1, y1, x2, y2, LBLX + inset, MBASE(row) + yadd); } // AreaCopy for a Screen Title -void DWIN_Frame_TitleCopy(const uint16_t x1, const uint16_t y1, const uint16_t w, const uint16_t h) { - DWIN_Frame_AreaCopy(1, x1, y1, x1 + w - 1, y1 + h - 1, (DWIN_WIDTH - w) / 2, (TITLE_HEIGHT - h) / 2); +void dwinFrameTitleCopy(const uint16_t x1, const uint16_t y1, const uint16_t w, const uint16_t h) { + dwinFrameAreaCopy(1, x1, y1, x1 + w - 1, y1 + h - 1, (DWIN_WIDTH - w) / 2, (TITLE_HEIGHT - h) / 2); } // Draw "Back" line at the top -void Draw_Back_First(const bool is_sel=true) { - Draw_Menu_Line(0, ICON_Back); - if (HMI_IsChinese()) - Item_AreaCopy(129, 72, 156, 84); +void drawBackFirst(const bool is_sel=true) { + drawMenuLine(0, ICON_Back); + if (hmiIsChinese()) + itemAreaCopy(129, 72, 156, 84); else - Item_AreaCopy(223, 179, 254, 189); - if (is_sel) Draw_Menu_Cursor(0); + itemAreaCopy(223, 179, 254, 189); + if (is_sel) drawMenuCursor(0); } // @@ -520,323 +520,323 @@ void Draw_Back_First(const bool is_sel=true) { // void say_move_en(const uint8_t row) { - Item_AreaCopy( 69, 61, 102, 71, row); // "Move" + itemAreaCopy( 69, 61, 102, 71, row); // "Move" } void say_max_en(const uint8_t row) { - Item_AreaCopy( 75, 119, 100, 129, row); // "Max" + itemAreaCopy( 75, 119, 100, 129, row); // "Max" } void say_jerk_en(const uint8_t row) { - Item_AreaCopy(104, 119, 128, 129, row, 30); // "Jerk" + itemAreaCopy(104, 119, 128, 129, row, 30); // "Jerk" } void say_speed_en(const uint16_t inset, const uint8_t row) { - Item_AreaCopy(133, 119, 172, 132, row, inset); // "Speed" + itemAreaCopy(133, 119, 172, 132, row, inset); // "Speed" } void say_max_accel_en(const uint8_t row) { say_max_en(row); // "Max" - Item_AreaCopy( 0, 135, 79, 145, row, 30); // "Acceleration" + itemAreaCopy( 0, 135, 79, 145, row, 30); // "Acceleration" } void say_max_jerk_speed_en(const uint8_t row) { - Item_AreaCopy( 75, 119, 172, 132, row); // "Max Jerk Speed" + itemAreaCopy( 75, 119, 172, 132, row); // "Max Jerk Speed" } void say_x_en(const uint16_t inset, const uint8_t row) { - Item_AreaCopy(175, 119, 184, 129, row, inset); // "X" + itemAreaCopy(175, 119, 184, 129, row, inset); // "X" } void say_y_en(const uint16_t inset, const uint8_t row) { - Item_AreaCopy(184, 119, 192, 129, row, inset); // "Y" + itemAreaCopy(184, 119, 192, 129, row, inset); // "Y" } void say_z_en(const uint16_t inset, const uint8_t row) { - Item_AreaCopy(193, 119, 201, 129, row, inset); // "Z" + itemAreaCopy(193, 119, 201, 129, row, inset); // "Z" } void say_e_en(const uint16_t inset, const uint8_t row) { - Item_AreaCopy(201, 119, 209, 129, row, inset); // "E" + itemAreaCopy(201, 119, 209, 129, row, inset); // "E" } void say_pla_en(const uint16_t inset, const uint8_t row) { - Item_AreaCopy(131, 164, 153, 174, row, inset); // "PLA" + itemAreaCopy(131, 164, 153, 174, row, inset); // "PLA" } void say_abs_en(const uint16_t inset, const uint8_t row) { - Item_AreaCopy(157, 76, 181, 86, row, inset); // "ABS" + itemAreaCopy(157, 76, 181, 86, row, inset); // "ABS" } void say_home_offs_en(const uint8_t row) { - Item_AreaCopy(153, 193, 225, 203, row); // "Home Offset" + itemAreaCopy(153, 193, 225, 203, row); // "Home Offset" } void say_probe_offs_en(const uint8_t row) { - Item_AreaCopy(153, 205, 225, 215, row); // "Probe Offset" + itemAreaCopy(153, 205, 225, 215, row); // "Probe Offset" } void say_steps_per_mm_en(const uint8_t row) { - Item_AreaCopy( 1, 151, 91, 161, row); // "Steps-per-mm" + itemAreaCopy( 1, 151, 91, 161, row); // "Steps-per-mm" } -void DWIN_Draw_Label(const uint8_t row, char *string) { - DWIN_Draw_String(true, font8x16, Color_White, Color_Bg_Black, LBLX, MBASE(row), string); +void dwinDrawLabel(const uint8_t row, char *string) { + dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, LBLX, MBASE(row), string); } -void DWIN_Draw_Label(const uint8_t row, FSTR_P title) { - DWIN_Draw_Label(row, (char*)title); +void dwinDrawLabel(const uint8_t row, FSTR_P title) { + dwinDrawLabel(row, (char*)title); } -void DWIN_Draw_Signed_Float(uint8_t size, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, int32_t value) { - DWIN_Draw_String(true, size, Color_White, bColor, x - 8, y, value < 0 ? F("-") : F(" ")); - DWIN_Draw_FloatValue(true, true, 0, size, Color_White, bColor, iNum, fNum, x, y, value < 0 ? -value : value); +void dwinDrawSigned_Float(uint8_t size, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, int32_t value) { + dwinDrawString(true, size, Color_White, bColor, x - 8, y, value < 0 ? F("-") : F(" ")); + dwinDrawFloatValue(true, true, 0, size, Color_White, bColor, iNum, fNum, x, y, value < 0 ? -value : value); } -void Draw_Edit_Integer3(const uint8_t row, const uint16_t value, const bool active=false) { - DWIN_Draw_IntValue(true, true, 0, font8x16, Color_White, active ? Select_Color : Color_Bg_Black, 3, 220, EBASE(row), value); +void drawEditInteger3(const uint8_t row, const uint16_t value, const bool active=false) { + dwinDrawIntValue(true, true, 0, font8x16, Color_White, active ? Select_Color : Color_Bg_Black, 3, 220, EBASE(row), value); } -void Draw_Edit_Integer4(const uint8_t row, const uint16_t value, const bool active=false) { - DWIN_Draw_IntValue(true, true, 0, font8x16, Color_White, active ? Select_Color : Color_Bg_Black, 4, 220 - 1 * 8, EBASE(row), value); +void drawEditInteger4(const uint8_t row, const uint16_t value, const bool active=false) { + dwinDrawIntValue(true, true, 0, font8x16, Color_White, active ? Select_Color : Color_Bg_Black, 4, 220 - 1 * 8, EBASE(row), value); } -void Draw_Edit_Float3(const uint8_t row, const uint16_t value, const bool active=false) { - DWIN_Draw_FloatValue(true, true, 0, font8x16, Color_White, active ? Select_Color : Color_Bg_Black, 3, UNITFDIGITS, 220 - UNITFDIGITS * 8, EBASE(row), (int32_t)value); +void drawEditFloat3(const uint8_t row, const uint16_t value, const bool active=false) { + dwinDrawFloatValue(true, true, 0, font8x16, Color_White, active ? Select_Color : Color_Bg_Black, 3, UNITFDIGITS, 220 - UNITFDIGITS * 8, EBASE(row), (int32_t)value); } -void Draw_Edit_Signed_Float2(const uint8_t row, const float value, const bool active=false) { - DWIN_Draw_Signed_Float(font8x16, active ? Select_Color : Color_Bg_Black, 2, UNITFDIGITS + 1, 220 + 8 - UNITFDIGITS * 8, EBASE(row), value); +void drawEditSignedFloat2(const uint8_t row, const float value, const bool active=false) { + dwinDrawSigned_Float(font8x16, active ? Select_Color : Color_Bg_Black, 2, UNITFDIGITS + 1, 220 + 8 - UNITFDIGITS * 8, EBASE(row), value); } -void Draw_Edit_Signed_Float3(const uint8_t row, const float value, const bool active=false) { - DWIN_Draw_Signed_Float(font8x16, active ? Select_Color : Color_Bg_Black, 3, UNITFDIGITS, 220 - UNITFDIGITS * 8, EBASE(row), value); +void drawEditSignedFloat3(const uint8_t row, const float value, const bool active=false) { + dwinDrawSigned_Float(font8x16, active ? Select_Color : Color_Bg_Black, 3, UNITFDIGITS, 220 - UNITFDIGITS * 8, EBASE(row), value); } -void Draw_Stat_Int(const uint16_t xpos, const uint16_t ypos, const uint16_t value) { - DWIN_Draw_IntValue(true, true, 0, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 3, xpos, ypos, value); +void drawStatInt(const uint16_t xpos, const uint16_t ypos, const uint16_t value) { + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 3, xpos, ypos, value); } -void Draw_Stat_Float(const uint16_t xpos, const uint16_t ypos, const float value) { - DWIN_Draw_FloatValue(true, true, 0, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 2, 2, xpos, ypos, value); +void drawStatFloat(const uint16_t xpos, const uint16_t ypos, const float value) { + dwinDrawFloatValue(true, true, 0, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 2, 2, xpos, ypos, value); } // // Prepare Menu // -void Item_Prepare_Move(const uint8_t row) { - if (HMI_IsChinese()) - Item_AreaCopy(159, 70, 200, 84, row); +void itemPrepareMove(const uint8_t row) { + if (hmiIsChinese()) + itemAreaCopy(159, 70, 200, 84, row); else say_move_en(row); // "Move" - Draw_Menu_Line(row, ICON_Axis); - Draw_More_Icon(row); + drawMenuLine(row, ICON_Axis); + drawMoreIcon(row); } -void Item_Prepare_Disable(const uint8_t row) { - if (HMI_IsChinese()) - Item_AreaCopy(204, 70, 259, 82, row); +void itemPrepareDisable(const uint8_t row) { + if (hmiIsChinese()) + itemAreaCopy(204, 70, 259, 82, row); else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, GET_TEXT_F(MSG_DISABLE_STEPPERS)); + dwinDrawLabel(row, GET_TEXT_F(MSG_DISABLE_STEPPERS)); #else - Item_AreaCopy(104, 61, 191, 74, row); // "Disable Stepper" + itemAreaCopy(104, 61, 191, 74, row); // "Disable Stepper" #endif } - Draw_Menu_Line(row, ICON_CloseMotor); + drawMenuLine(row, ICON_CloseMotor); } -void Item_Prepare_Home(const uint8_t row) { - if (HMI_IsChinese()) - Item_AreaCopy(0, 89, 41, 101, row); +void itemPrepareHome(const uint8_t row) { + if (hmiIsChinese()) + itemAreaCopy(0, 89, 41, 101, row); else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, GET_TEXT_F(MSG_AUTO_HOME)); + dwinDrawLabel(row, GET_TEXT_F(MSG_AUTO_HOME)); #else - Item_AreaCopy(202, 61, 271, 71, row); // "Auto Home" + itemAreaCopy(202, 61, 271, 71, row); // "Auto Home" #endif } - Draw_Menu_Line(row, ICON_Homing); + drawMenuLine(row, ICON_Homing); } #if HAS_ZOFFSET_ITEM - void Item_Prepare_Offset(const uint8_t row) { - if (HMI_IsChinese()) { + void itemPrepareOffset(const uint8_t row) { + if (hmiIsChinese()) { #if HAS_BED_PROBE - Item_AreaCopy(174, 164, 223, 177, row); + itemAreaCopy(174, 164, 223, 177, row); #else - Item_AreaCopy(43, 89, 98, 101, row); + itemAreaCopy(43, 89, 98, 101, row); #endif } else { #if HAS_BED_PROBE #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, GET_TEXT_F(MSG_ZPROBE_ZOFFSET)); + dwinDrawLabel(row, GET_TEXT_F(MSG_ZPROBE_ZOFFSET)); #else - Item_AreaCopy( 94, 179, 143, 190, row); // "Z-Offset" + itemAreaCopy( 94, 179, 143, 190, row); // "Z-Offset" #endif #else #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, GET_TEXT_F(MSG_SET_HOME_OFFSETS)); + dwinDrawLabel(row, GET_TEXT_F(MSG_SET_HOME_OFFSETS)); #else - Item_AreaCopy( 1, 76, 103, 87, row); // "Set home offsets" + itemAreaCopy( 1, 76, 103, 87, row); // "Set home offsets" #endif #endif } - Draw_Edit_Signed_Float2(row, BABY_Z_VAR * 100); - Draw_Menu_Line(row, ICON_SetHome); + drawEditSignedFloat2(row, BABY_Z_VAR * 100); + drawMenuLine(row, ICON_SetHome); } #endif #if HAS_PREHEAT - void Item_Prepare_PLA(const uint8_t row) { - if (HMI_IsChinese()) - Item_AreaCopy(100, 89, 151, 101, row); + void itemPrepare_PLA(const uint8_t row) { + if (hmiIsChinese()) + itemAreaCopy(100, 89, 151, 101, row); else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, GET_TEXT_F(MSG_PREHEAT_1)); + dwinDrawLabel(row, GET_TEXT_F(MSG_PREHEAT_1)); #else - Item_AreaCopy(108, 76, 155, 87, row); // "Preheat" + itemAreaCopy(108, 76, 155, 87, row); // "Preheat" say_pla_en(52, row); // "PLA" #endif } - Draw_Menu_Line(row, ICON_PLAPreheat); + drawMenuLine(row, ICON_PLAPreheat); } #if PREHEAT_COUNT > 1 - void Item_Prepare_ABS(const uint8_t row) { - if (HMI_IsChinese()) - Item_AreaCopy(180, 89, 233, 100, row); + void itemPrepare_ABS(const uint8_t row) { + if (hmiIsChinese()) + itemAreaCopy(180, 89, 233, 100, row); else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, F("Preheat " PREHEAT_2_LABEL)); + dwinDrawLabel(row, F("Preheat " PREHEAT_2_LABEL)); #else - Item_AreaCopy(108, 76, 155, 87, row); // "Preheat" + itemAreaCopy(108, 76, 155, 87, row); // "Preheat" say_abs_en(52, row); // "ABS" #endif } - Draw_Menu_Line(row, ICON_ABSPreheat); + drawMenuLine(row, ICON_ABSPreheat); } #endif - void Item_Prepare_Cool(const uint8_t row) { - if (HMI_IsChinese()) - Item_AreaCopy(1, 104, 56, 117, row); + void itemPrepareCool(const uint8_t row) { + if (hmiIsChinese()) + itemAreaCopy(1, 104, 56, 117, row); else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, GET_TEXT_F(MSG_COOLDOWN)); + dwinDrawLabel(row, GET_TEXT_F(MSG_COOLDOWN)); #else - Item_AreaCopy(200, 76, 264, 86, row); // "Cooldown" + itemAreaCopy(200, 76, 264, 86, row); // "Cooldown" #endif } - Draw_Menu_Line(row, ICON_Cool); + drawMenuLine(row, ICON_Cool); } #endif -void Item_Prepare_Lang(const uint8_t row) { - if (HMI_IsChinese()) - Item_AreaCopy(239, 134, 266, 146, row); +void itemPrepareLang(const uint8_t row) { + if (hmiIsChinese()) + itemAreaCopy(239, 134, 266, 146, row); else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, F("UI Language")); + dwinDrawLabel(row, F("UI Language")); #else - Item_AreaCopy(1, 194, 96, 206, row); // "LCD Language" + itemAreaCopy(1, 194, 96, 206, row); // "LCD Language" #endif } - DWIN_Draw_String(false, font8x16, Color_White, Color_Bg_Black, 226, EBASE(row), HMI_IsChinese() ? F("CN") : F("EN")); - Draw_Menu_Icon(row, ICON_Language); + dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, 226, EBASE(row), hmiIsChinese() ? F("CN") : F("EN")); + drawMenuIcon(row, ICON_Language); } #define VISI(T,L,S) (WITHIN(L, T - MROWS, MROWS) || WITHIN(S, 0, MROWS)) -void Draw_Prepare_Menu() { - Clear_Main_Window(); +void drawPrepareMenu() { + clearMainWindow(); const int16_t scroll = MROWS - index_prepare; // Scrolled-up lines #define PSCROL(L) (scroll + (L)) #define PVISI(L) VISI(PREPARE_CASE_TOTAL, L, PSCROL(L)) - if (HMI_IsChinese()) - DWIN_Frame_TitleCopy(133, 1, 28, 13); // "Prepare" + if (hmiIsChinese()) + dwinFrameTitleCopy(133, 1, 28, 13); // "Prepare" else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_PREPARE)); + drawTitle(GET_TEXT_F(MSG_PREPARE)); #else - DWIN_Frame_TitleCopy(179, 0, 48, 14); // "Prepare" + dwinFrameTitleCopy(179, 0, 48, 14); // "Prepare" #endif } - if (PVISI(0)) Draw_Back_First(select_prepare.now == CASE_BACK); // < Back - if (PVISI(PREPARE_CASE_MOVE)) Item_Prepare_Move(PSCROL(PREPARE_CASE_MOVE)); // Move > - if (PVISI(PREPARE_CASE_DISA)) Item_Prepare_Disable(PSCROL(PREPARE_CASE_DISA)); // Disable Stepper - if (PVISI(PREPARE_CASE_HOME)) Item_Prepare_Home(PSCROL(PREPARE_CASE_HOME)); // Auto Home + if (PVISI(0)) drawBackFirst(select_prepare.now == CASE_BACK); // < Back + if (PVISI(PREPARE_CASE_MOVE)) itemPrepareMove(PSCROL(PREPARE_CASE_MOVE)); // Move > + if (PVISI(PREPARE_CASE_DISA)) itemPrepareDisable(PSCROL(PREPARE_CASE_DISA)); // Disable Stepper + if (PVISI(PREPARE_CASE_HOME)) itemPrepareHome(PSCROL(PREPARE_CASE_HOME)); // Auto Home #if HAS_ZOFFSET_ITEM - if (PVISI(PREPARE_CASE_ZOFF)) Item_Prepare_Offset(PSCROL(PREPARE_CASE_ZOFF)); // Edit Z-Offset / Babystep / Set Home Offset + if (PVISI(PREPARE_CASE_ZOFF)) itemPrepareOffset(PSCROL(PREPARE_CASE_ZOFF)); // Edit Z-Offset / Babystep / Set Home Offset #endif #if HAS_PREHEAT - if (PVISI(PREPARE_CASE_PLA)) Item_Prepare_PLA(PSCROL(PREPARE_CASE_PLA)); // Preheat PLA + if (PVISI(PREPARE_CASE_PLA)) itemPrepare_PLA(PSCROL(PREPARE_CASE_PLA)); // Preheat PLA #if PREHEAT_COUNT > 1 - if (PVISI(PREPARE_CASE_ABS)) Item_Prepare_ABS(PSCROL(PREPARE_CASE_ABS)); // Preheat ABS + if (PVISI(PREPARE_CASE_ABS)) itemPrepare_ABS(PSCROL(PREPARE_CASE_ABS)); // Preheat ABS #endif #endif #if HAS_HOTEND || HAS_HEATED_BED - if (PVISI(PREPARE_CASE_COOL)) Item_Prepare_Cool(PSCROL(PREPARE_CASE_COOL)); // Cooldown + if (PVISI(PREPARE_CASE_COOL)) itemPrepareCool(PSCROL(PREPARE_CASE_COOL)); // Cooldown #endif - if (PVISI(PREPARE_CASE_LANG)) Item_Prepare_Lang(PSCROL(PREPARE_CASE_LANG)); // Language CN/EN + if (PVISI(PREPARE_CASE_LANG)) itemPrepareLang(PSCROL(PREPARE_CASE_LANG)); // Language CN/EN - if (select_prepare.now != CASE_BACK) Draw_Menu_Cursor(PSCROL(select_prepare.now)); + if (select_prepare.now != CASE_BACK) drawMenuCursor(PSCROL(select_prepare.now)); } // // Control Menu // -void Item_Control_Temp(const uint16_t row) { - if (HMI_IsChinese()) - Item_AreaCopy(57, 104, 84, 116, row); +void itemControlTemp(const uint16_t row) { + if (hmiIsChinese()) + itemAreaCopy(57, 104, 84, 116, row); else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, GET_TEXT_F(MSG_TEMPERATURE)); + dwinDrawLabel(row, GET_TEXT_F(MSG_TEMPERATURE)); #else - Item_AreaCopy(1, 89, 83, 101, row); + itemAreaCopy(1, 89, 83, 101, row); #endif } - Draw_Menu_Line(row, ICON_Temperature); - Draw_More_Icon(row); + drawMenuLine(row, ICON_Temperature); + drawMoreIcon(row); } -void Item_Control_Motion(const uint16_t row) { - if (HMI_IsChinese()) - Item_AreaCopy(87, 104, 114, 116, row); +void itemControlMotion(const uint16_t row) { + if (hmiIsChinese()) + itemAreaCopy(87, 104, 114, 116, row); else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, GET_TEXT_F(MSG_MOTION)); + dwinDrawLabel(row, GET_TEXT_F(MSG_MOTION)); #else - Item_AreaCopy(84, 89, 128, 99, row); + itemAreaCopy(84, 89, 128, 99, row); #endif } - Draw_Menu_Line(row, ICON_Motion); - Draw_More_Icon(row); + drawMenuLine(row, ICON_Motion); + drawMoreIcon(row); } -void Item_Control_Advanced(const uint16_t row) { - if (HMI_IsChinese()) - Item_AreaCopy(62, 180, 120, 192, row); +void itemControlAdvanced(const uint16_t row) { + if (hmiIsChinese()) + itemAreaCopy(62, 180, 120, 192, row); else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, GET_TEXT_F(MSG_ADVANCED_SETTINGS)); + dwinDrawLabel(row, GET_TEXT_F(MSG_ADVANCED_SETTINGS)); #else - Item_AreaCopy(82, 135, 200, 149, row); + itemAreaCopy(82, 135, 200, 149, row); #endif } - Draw_Menu_Line(row, ICON_AdvSet); - Draw_More_Icon(row); + drawMenuLine(row, ICON_AdvSet); + drawMoreIcon(row); } -void Item_Control_Info(const uint16_t row) { - if (HMI_IsChinese()) - Item_AreaCopy(231, 104, 258, 116, row); +void itemControlInfo(const uint16_t row) { + if (hmiIsChinese()) + itemAreaCopy(231, 104, 258, 116, row); else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, GET_TEXT_F(MSG_INFO_SCREEN)); + dwinDrawLabel(row, GET_TEXT_F(MSG_INFO_SCREEN)); #else - Item_AreaCopy(0, 104, 24, 114, row); + itemAreaCopy(0, 104, 24, 114, row); #endif } - Draw_Menu_Line(row, ICON_Info); - Draw_More_Icon(row); + drawMenuLine(row, ICON_Info); + drawMoreIcon(row); } -void Draw_Control_Menu() { - Clear_Main_Window(); +void drawControlMenu() { + clearMainWindow(); #if CONTROL_CASE_TOTAL >= TROWS const int16_t scroll = MROWS - index_control; // Scrolled-up lines @@ -847,62 +847,62 @@ void Draw_Control_Menu() { #define CLINE(L) MBASE(CSCROL(L)) #define CVISI(L) VISI(CONTROL_CASE_TOTAL, L, CSCROL(L)) - if (HMI_IsChinese()) - DWIN_Frame_TitleCopy(103, 1, 28, 14); // "Control" + if (hmiIsChinese()) + dwinFrameTitleCopy(103, 1, 28, 14); // "Control" else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_CONTROL)); + drawTitle(GET_TEXT_F(MSG_CONTROL)); #else - DWIN_Frame_TitleCopy(128, 2, 49, 11); // "Control" + dwinFrameTitleCopy(128, 2, 49, 11); // "Control" #endif } - if (CVISI(0)) Draw_Back_First(select_control.now == CASE_BACK); // < Back - if (CVISI(CONTROL_CASE_TEMP)) Item_Control_Temp(CSCROL(CONTROL_CASE_TEMP)); // Temperature > - if (CVISI(CONTROL_CASE_MOVE)) Item_Control_Motion(CSCROL(CONTROL_CASE_MOVE)); // Motion > + if (CVISI(0)) drawBackFirst(select_control.now == CASE_BACK); // < Back + if (CVISI(CONTROL_CASE_TEMP)) itemControlTemp(CSCROL(CONTROL_CASE_TEMP)); // Temperature > + if (CVISI(CONTROL_CASE_MOVE)) itemControlMotion(CSCROL(CONTROL_CASE_MOVE)); // Motion > - if (HMI_IsChinese()) { + if (hmiIsChinese()) { #if ENABLED(EEPROM_SETTINGS) - Item_AreaCopy(117, 104, 172, 116, CSCROL(CONTROL_CASE_SAVE)); // "Store Configuration" - Item_AreaCopy(174, 103, 229, 116, CSCROL(CONTROL_CASE_LOAD)); // "Read Configuration" - Item_AreaCopy( 1, 118, 56, 131, CSCROL(CONTROL_CASE_RESET)); // "Reset Configuration" + itemAreaCopy(117, 104, 172, 116, CSCROL(CONTROL_CASE_SAVE)); // "Store Configuration" + itemAreaCopy(174, 103, 229, 116, CSCROL(CONTROL_CASE_LOAD)); // "Read Configuration" + itemAreaCopy( 1, 118, 56, 131, CSCROL(CONTROL_CASE_RESET)); // "Reset Configuration" #endif } else { #ifdef USE_STRING_TITLES #if ENABLED(EEPROM_SETTINGS) - if (CVISI(CONTROL_CASE_SAVE)) DWIN_Draw_Label(CSCROL(CONTROL_CASE_SAVE), GET_TEXT_F(MSG_STORE_EEPROM)); // "Store Configuration" - if (CVISI(CONTROL_CASE_LOAD)) DWIN_Draw_Label(CSCROL(CONTROL_CASE_LOAD), GET_TEXT_F(MSG_LOAD_EEPROM)); // "Read Configuration" - if (CVISI(CONTROL_CASE_RESET)) DWIN_Draw_Label(CSCROL(CONTROL_CASE_RESET), GET_TEXT_F(MSG_RESTORE_DEFAULTS)); // "Reset Configuration" + if (CVISI(CONTROL_CASE_SAVE)) dwinDrawLabel(CSCROL(CONTROL_CASE_SAVE), GET_TEXT_F(MSG_STORE_EEPROM)); // "Store Configuration" + if (CVISI(CONTROL_CASE_LOAD)) dwinDrawLabel(CSCROL(CONTROL_CASE_LOAD), GET_TEXT_F(MSG_LOAD_EEPROM)); // "Read Configuration" + if (CVISI(CONTROL_CASE_RESET)) dwinDrawLabel(CSCROL(CONTROL_CASE_RESET), GET_TEXT_F(MSG_RESTORE_DEFAULTS)); // "Reset Configuration" #endif #else #if ENABLED(EEPROM_SETTINGS) if (CVISI(CONTROL_CASE_SAVE)) - Item_AreaCopy(150, 89, 263, 102, CSCROL(CONTROL_CASE_SAVE)); // "Store Configuration" + itemAreaCopy(150, 89, 263, 102, CSCROL(CONTROL_CASE_SAVE)); // "Store Configuration" if (CVISI(CONTROL_CASE_LOAD)) { - Item_AreaCopy( 26, 104, 57, 114, CSCROL(CONTROL_CASE_LOAD)); // "Read" - Item_AreaCopy(182, 89, 263, 102, CSCROL(CONTROL_CASE_LOAD), 34); // "Configuration" + itemAreaCopy( 26, 104, 57, 114, CSCROL(CONTROL_CASE_LOAD)); // "Read" + itemAreaCopy(182, 89, 263, 102, CSCROL(CONTROL_CASE_LOAD), 34); // "Configuration" } if (CVISI(CONTROL_CASE_RESET)) { - Item_AreaCopy( 59, 104, 93, 114, CSCROL(CONTROL_CASE_RESET)); // "Reset" - Item_AreaCopy(182, 89, 263, 102, CSCROL(CONTROL_CASE_RESET), 37); // "Configuration" + itemAreaCopy( 59, 104, 93, 114, CSCROL(CONTROL_CASE_RESET)); // "Reset" + itemAreaCopy(182, 89, 263, 102, CSCROL(CONTROL_CASE_RESET), 37); // "Configuration" } #endif #endif } - if (CVISI(CONTROL_CASE_ADVSET)) Item_Control_Advanced(CSCROL(CONTROL_CASE_ADVSET)); - if (CVISI(CONTROL_CASE_INFO)) Item_Control_Info(CSCROL(CONTROL_CASE_INFO)); + if (CVISI(CONTROL_CASE_ADVSET)) itemControlAdvanced(CSCROL(CONTROL_CASE_ADVSET)); + if (CVISI(CONTROL_CASE_INFO)) itemControlInfo(CSCROL(CONTROL_CASE_INFO)); if (select_control.now != CASE_BACK && CVISI(select_control.now)) - Draw_Menu_Cursor(CSCROL(select_control.now)); + drawMenuCursor(CSCROL(select_control.now)); // Draw icons and lines #define _TEMP_ICON(N, I, M) do { \ if (CVISI(N)) { \ - Draw_Menu_Line(CSCROL(N), I); \ + drawMenuLine(CSCROL(N), I); \ if (M) { \ - Draw_More_Icon(CSCROL(N)); \ + drawMoreIcon(CSCROL(N)); \ } \ } \ } while(0) @@ -918,117 +918,117 @@ void Draw_Control_Menu() { // Tune Menu // -void Draw_Tune_Menu() { - Clear_Main_Window(); +void drawTuneMenu() { + clearMainWindow(); - if (HMI_IsChinese()) { - DWIN_Frame_TitleCopy(73, 2, 28, 12); // "Tune" - Item_AreaCopy(116, 164, 171, 176, TUNE_CASE_SPEED); + if (hmiIsChinese()) { + dwinFrameTitleCopy(73, 2, 28, 12); // "Tune" + itemAreaCopy(116, 164, 171, 176, TUNE_CASE_SPEED); #if HAS_HOTEND - Item_AreaCopy(1, 134, 56, 146, TUNE_CASE_TEMP); + itemAreaCopy(1, 134, 56, 146, TUNE_CASE_TEMP); #endif #if HAS_HEATED_BED - Item_AreaCopy(58, 134, 113, 146, TUNE_CASE_BED); + itemAreaCopy(58, 134, 113, 146, TUNE_CASE_BED); #endif #if HAS_FAN - Item_AreaCopy(115, 134, 170, 146, TUNE_CASE_FAN); + itemAreaCopy(115, 134, 170, 146, TUNE_CASE_FAN); #endif #if HAS_ZOFFSET_ITEM - Item_AreaCopy(174, 164, 223, 177, TUNE_CASE_ZOFF); + itemAreaCopy(174, 164, 223, 177, TUNE_CASE_ZOFF); #endif } else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_TUNE)); + drawTitle(GET_TEXT_F(MSG_TUNE)); #else - DWIN_Frame_TitleCopy(94, 2, 33, 11); // "Tune" + dwinFrameTitleCopy(94, 2, 33, 11); // "Tune" #endif #ifdef USE_STRING_TITLES - DWIN_Draw_Label(TUNE_CASE_SPEED, GET_TEXT_F(MSG_SPEED)); + dwinDrawLabel(TUNE_CASE_SPEED, GET_TEXT_F(MSG_SPEED)); #if HAS_HOTEND - DWIN_Draw_Label(TUNE_CASE_TEMP, GET_TEXT_F(MSG_UBL_SET_TEMP_HOTEND)); + dwinDrawLabel(TUNE_CASE_TEMP, GET_TEXT_F(MSG_UBL_SET_TEMP_HOTEND)); #endif #if HAS_HEATED_BED - DWIN_Draw_Label(TUNE_CASE_BED, GET_TEXT_F(MSG_UBL_SET_TEMP_BED)); + dwinDrawLabel(TUNE_CASE_BED, GET_TEXT_F(MSG_UBL_SET_TEMP_BED)); #endif #if HAS_FAN - DWIN_Draw_Label(TUNE_CASE_FAN, GET_TEXT_F(MSG_FAN_SPEED)); + dwinDrawLabel(TUNE_CASE_FAN, GET_TEXT_F(MSG_FAN_SPEED)); #endif - DWIN_Draw_Label(TUNE_CASE_ZOFF, GET_TEXT_F(MSG_ZPROBE_ZOFFSET)); + dwinDrawLabel(TUNE_CASE_ZOFF, GET_TEXT_F(MSG_ZPROBE_ZOFFSET)); #else - Item_AreaCopy(1, 179, 92, 190, TUNE_CASE_SPEED); // "Print speed" + itemAreaCopy(1, 179, 92, 190, TUNE_CASE_SPEED); // "Print speed" #if HAS_HOTEND - Item_AreaCopy(197, 104, 238, 114, TUNE_CASE_TEMP); // "Hotend" - Item_AreaCopy( 1, 89, 83, 101, TUNE_CASE_TEMP, 44); // "Temperature" + itemAreaCopy(197, 104, 238, 114, TUNE_CASE_TEMP); // "Hotend" + itemAreaCopy( 1, 89, 83, 101, TUNE_CASE_TEMP, 44); // "Temperature" #endif #if HAS_HEATED_BED - Item_AreaCopy(240, 104, 264, 114, TUNE_CASE_BED); // "Bed" - Item_AreaCopy( 1, 89, 83, 101, TUNE_CASE_BED, 27); // "Temperature" + itemAreaCopy(240, 104, 264, 114, TUNE_CASE_BED); // "Bed" + itemAreaCopy( 1, 89, 83, 101, TUNE_CASE_BED, 27); // "Temperature" #endif #if HAS_FAN - Item_AreaCopy(0, 119, 64, 132, TUNE_CASE_FAN); // "Fan speed" + itemAreaCopy(0, 119, 64, 132, TUNE_CASE_FAN); // "Fan speed" #endif #if HAS_ZOFFSET_ITEM - Item_AreaCopy(93, 179, 141, 189, TUNE_CASE_ZOFF); // "Z-offset" + itemAreaCopy(93, 179, 141, 189, TUNE_CASE_ZOFF); // "Z-offset" #endif #endif } - Draw_Back_First(select_tune.now == CASE_BACK); - if (select_tune.now != CASE_BACK) Draw_Menu_Cursor(select_tune.now); + drawBackFirst(select_tune.now == CASE_BACK); + if (select_tune.now != CASE_BACK) drawMenuCursor(select_tune.now); - Draw_Menu_Line(TUNE_CASE_SPEED, ICON_Speed); - Draw_Edit_Integer3(TUNE_CASE_SPEED, feedrate_percentage); + drawMenuLine(TUNE_CASE_SPEED, ICON_Speed); + drawEditInteger3(TUNE_CASE_SPEED, feedrate_percentage); #if HAS_HOTEND - Draw_Menu_Line(TUNE_CASE_TEMP, ICON_HotendTemp); - Draw_Edit_Integer3(TUNE_CASE_TEMP, thermalManager.degTargetHotend(0)); + drawMenuLine(TUNE_CASE_TEMP, ICON_HotendTemp); + drawEditInteger3(TUNE_CASE_TEMP, thermalManager.degTargetHotend(0)); #endif #if HAS_HEATED_BED - Draw_Menu_Line(TUNE_CASE_BED, ICON_BedTemp); - Draw_Edit_Integer3(TUNE_CASE_BED, thermalManager.degTargetBed()); + drawMenuLine(TUNE_CASE_BED, ICON_BedTemp); + drawEditInteger3(TUNE_CASE_BED, thermalManager.degTargetBed()); #endif #if HAS_FAN - Draw_Menu_Line(TUNE_CASE_FAN, ICON_FanSpeed); - Draw_Edit_Integer3(TUNE_CASE_FAN, thermalManager.fan_speed[0]); + drawMenuLine(TUNE_CASE_FAN, ICON_FanSpeed); + drawEditInteger3(TUNE_CASE_FAN, thermalManager.fan_speed[0]); #endif #if HAS_ZOFFSET_ITEM - Draw_Menu_Line(TUNE_CASE_ZOFF, ICON_Zoffset); - Draw_Edit_Signed_Float2(TUNE_CASE_ZOFF, BABY_Z_VAR * 100); + drawMenuLine(TUNE_CASE_ZOFF, ICON_Zoffset); + drawEditSignedFloat2(TUNE_CASE_ZOFF, BABY_Z_VAR * 100); #endif } // // Motion Menu // -void Draw_Motion_Menu() { - Clear_Main_Window(); - - if (HMI_IsChinese()) { - DWIN_Frame_TitleCopy(1, 16, 28, 13); // "Motion" - Item_AreaCopy(173, 133, 228, 147, MOTION_CASE_RATE); // Max speed - Item_AreaCopy(173, 133, 200, 147, MOTION_CASE_ACCEL); // Max... - Item_AreaCopy(28, 149, 69, 161, MOTION_CASE_ACCEL, 30, 1); // ...Acceleration +void drawMotionMenu() { + clearMainWindow(); + + if (hmiIsChinese()) { + dwinFrameTitleCopy(1, 16, 28, 13); // "Motion" + itemAreaCopy(173, 133, 228, 147, MOTION_CASE_RATE); // Max speed + itemAreaCopy(173, 133, 200, 147, MOTION_CASE_ACCEL); // Max... + itemAreaCopy(28, 149, 69, 161, MOTION_CASE_ACCEL, 30, 1); // ...Acceleration #if HAS_CLASSIC_JERK - Item_AreaCopy(173, 133, 200, 147, MOTION_CASE_JERK); // Max... - Item_AreaCopy(1, 180, 28, 192, MOTION_CASE_JERK, 30, 1); // ... - Item_AreaCopy(202, 133, 228, 147, MOTION_CASE_JERK, 57); // ...Jerk + itemAreaCopy(173, 133, 200, 147, MOTION_CASE_JERK); // Max... + itemAreaCopy(1, 180, 28, 192, MOTION_CASE_JERK, 30, 1); // ... + itemAreaCopy(202, 133, 228, 147, MOTION_CASE_JERK, 57); // ...Jerk #endif - Item_AreaCopy(153, 148, 194, 161, MOTION_CASE_STEPS); // Flow ratio + itemAreaCopy(153, 148, 194, 161, MOTION_CASE_STEPS); // Flow ratio } else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_MOTION)); + drawTitle(GET_TEXT_F(MSG_MOTION)); #else - DWIN_Frame_TitleCopy(144, 16, 46, 11); // "Motion" + dwinFrameTitleCopy(144, 16, 46, 11); // "Motion" #endif #ifdef USE_STRING_TITLES - DWIN_Draw_Label(MOTION_CASE_RATE, F("Feedrate")); // "Feedrate" - DWIN_Draw_Label(MOTION_CASE_ACCEL, GET_TEXT_F(MSG_ACCELERATION)); // "Acceleration" + dwinDrawLabel(MOTION_CASE_RATE, F("Feedrate")); // "Feedrate" + dwinDrawLabel(MOTION_CASE_ACCEL, GET_TEXT_F(MSG_ACCELERATION)); // "Acceleration" #if HAS_CLASSIC_JERK - DWIN_Draw_Label(MOTION_CASE_JERK, GET_TEXT_F(MSG_JERK)); // "Jerk" + dwinDrawLabel(MOTION_CASE_JERK, GET_TEXT_F(MSG_JERK)); // "Jerk" #endif - DWIN_Draw_Label(MOTION_CASE_STEPS, GET_TEXT_F(MSG_STEPS_PER_MM)); // "Steps/mm" + dwinDrawLabel(MOTION_CASE_STEPS, GET_TEXT_F(MSG_STEPS_PER_MM)); // "Steps/mm" #else say_max_en(MOTION_CASE_RATE); say_speed_en(30, MOTION_CASE_RATE); // "Max Speed" say_max_accel_en(MOTION_CASE_ACCEL); // "Max Acceleration" @@ -1039,17 +1039,17 @@ void Draw_Motion_Menu() { #endif } - Draw_Back_First(select_motion.now == CASE_BACK); - if (select_motion.now != CASE_BACK) Draw_Menu_Cursor(select_motion.now); + drawBackFirst(select_motion.now == CASE_BACK); + if (select_motion.now != CASE_BACK) drawMenuCursor(select_motion.now); uint8_t i = 0; - #define _MOTION_ICON(N) Draw_Menu_Line(++i, ICON_MaxSpeed + (N) - 1) - _MOTION_ICON(MOTION_CASE_RATE); Draw_More_Icon(i); - _MOTION_ICON(MOTION_CASE_ACCEL); Draw_More_Icon(i); + #define _MOTION_ICON(N) drawMenuLine(++i, ICON_MaxSpeed + (N) - 1) + _MOTION_ICON(MOTION_CASE_RATE); drawMoreIcon(i); + _MOTION_ICON(MOTION_CASE_ACCEL); drawMoreIcon(i); #if HAS_CLASSIC_JERK - _MOTION_ICON(MOTION_CASE_JERK); Draw_More_Icon(i); + _MOTION_ICON(MOTION_CASE_JERK); drawMoreIcon(i); #endif - _MOTION_ICON(MOTION_CASE_STEPS); Draw_More_Icon(i); + _MOTION_ICON(MOTION_CASE_STEPS); drawMoreIcon(i); } // @@ -1058,339 +1058,339 @@ void Draw_Motion_Menu() { #if HAS_HOTEND || HAS_HEATED_BED - void DWIN_Popup_Temperature(const bool toohigh) { - Clear_Popup_Area(); - Draw_Popup_Bkgd_105(); + void dwinPopupTemperature(const bool toohigh) { + clearPopupArea(); + drawPopupBkgd105(); if (toohigh) { - DWIN_ICON_Show(ICON, ICON_TempTooHigh, 102, 165); - if (HMI_IsChinese()) { - DWIN_Frame_AreaCopy(1, 103, 371, 237, 386, 52, 285); // Temp Too High - DWIN_Frame_AreaCopy(1, 151, 389, 185, 402, 187, 285); - DWIN_Frame_AreaCopy(1, 189, 389, 271, 402, 95, 310); + dwinIconShow(ICON, ICON_TempTooHigh, 102, 165); + if (hmiIsChinese()) { + dwinFrameAreaCopy(1, 103, 371, 237, 386, 52, 285); // Temp Too High + dwinFrameAreaCopy(1, 151, 389, 185, 402, 187, 285); + dwinFrameAreaCopy(1, 189, 389, 271, 402, 95, 310); } else { - DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, 36, 300, F("Nozzle or Bed temperature")); - DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, 92, 300, F("is too high")); + dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, 36, 300, F("Nozzle or Bed temperature")); + dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, 92, 300, F("is too high")); } } else { - DWIN_ICON_Show(ICON, ICON_TempTooLow, 102, 165); - if (HMI_IsChinese()) { - DWIN_Frame_AreaCopy(1, 103, 371, 270, 386, 52, 285); // Tenp Too Low - DWIN_Frame_AreaCopy(1, 189, 389, 271, 402, 95, 310); + dwinIconShow(ICON, ICON_TempTooLow, 102, 165); + if (hmiIsChinese()) { + dwinFrameAreaCopy(1, 103, 371, 270, 386, 52, 285); // Tenp Too Low + dwinFrameAreaCopy(1, 189, 389, 271, 402, 95, 310); } else { - DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, 36, 300, F("Nozzle or Bed temperature")); - DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, 92, 300, F("is too low")); + dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, 36, 300, F("Nozzle or Bed temperature")); + dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, 92, 300, F("is too low")); } } } #endif -void Draw_Popup_Bkgd_60() { - DWIN_Draw_Rectangle(1, Color_Bg_Window, 14, 60, 258, 330); +void drawPopupBkgd60() { + dwinDrawRectangle(1, Color_Bg_Window, 14, 60, 258, 330); } #if HAS_HOTEND - void Popup_Window_ETempTooLow() { - Clear_Main_Window(); - Draw_Popup_Bkgd_60(); - DWIN_ICON_Show(ICON, ICON_TempTooLow, 102, 105); - if (HMI_IsChinese()) { - DWIN_Frame_AreaCopy(1, 103, 371, 136, 386, 69, 240); // Nozzle Too Cold - DWIN_Frame_AreaCopy(1, 170, 371, 270, 386, 69 + 33, 240); - DWIN_ICON_Show(ICON, ICON_Confirm_C, 86, 280); + void popupWindowETempTooLow() { + clearMainWindow(); + drawPopupBkgd60(); + dwinIconShow(ICON, ICON_TempTooLow, 102, 105); + if (hmiIsChinese()) { + dwinFrameAreaCopy(1, 103, 371, 136, 386, 69, 240); // Nozzle Too Cold + dwinFrameAreaCopy(1, 170, 371, 270, 386, 69 + 33, 240); + dwinIconShow(ICON, ICON_Confirm_C, 86, 280); } else { - DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, 20, 235, F("Nozzle is too cold")); - DWIN_ICON_Show(ICON, ICON_Confirm_E, 86, 280); + dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, 20, 235, F("Nozzle is too cold")); + dwinIconShow(ICON, ICON_Confirm_E, 86, 280); } } #endif -void Popup_Window_Resume() { - Clear_Popup_Area(); - Draw_Popup_Bkgd_105(); - if (HMI_IsChinese()) { - DWIN_Frame_AreaCopy(1, 160, 338, 235, 354, 98, 135); // Resume Interrupted Print - DWIN_Frame_AreaCopy(1, 103, 321, 271, 335, 52, 192); - DWIN_ICON_Show(ICON, ICON_Cancel_C, 26, 307); - DWIN_ICON_Show(ICON, ICON_Continue_C, 146, 307); +void popupWindowResume() { + clearPopupArea(); + drawPopupBkgd105(); + if (hmiIsChinese()) { + dwinFrameAreaCopy(1, 160, 338, 235, 354, 98, 135); // Resume Interrupted Print + dwinFrameAreaCopy(1, 103, 321, 271, 335, 52, 192); + dwinIconShow(ICON, ICON_Cancel_C, 26, 307); + dwinIconShow(ICON, ICON_Continue_C, 146, 307); } else { - DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 14) / 2, 115, F("Continue Print")); - DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 22) / 2, 192, F("It looks like the last")); - DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 22) / 2, 212, F("file was interrupted.")); - DWIN_ICON_Show(ICON, ICON_Cancel_E, 26, 307); - DWIN_ICON_Show(ICON, ICON_Continue_E, 146, 307); + dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 14) / 2, 115, F("Continue Print")); + dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 22) / 2, 192, F("It looks like the last")); + dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 22) / 2, 212, F("file was interrupted.")); + dwinIconShow(ICON, ICON_Cancel_E, 26, 307); + dwinIconShow(ICON, ICON_Continue_E, 146, 307); } } -void Popup_Window_Home(const bool parking/*=false*/) { - Clear_Main_Window(); - Draw_Popup_Bkgd_60(); - DWIN_ICON_Show(ICON, ICON_BLTouch, 101, 105); - if (HMI_IsChinese()) { - DWIN_Frame_AreaCopy(1, 0, 371, 33, 386, 85, 240); // Wait for Move to Complete - DWIN_Frame_AreaCopy(1, 203, 286, 271, 302, 118, 240); - DWIN_Frame_AreaCopy(1, 0, 389, 150, 402, 61, 280); +void popupWindowHome(const bool parking/*=false*/) { + clearMainWindow(); + drawPopupBkgd60(); + dwinIconShow(ICON, ICON_BLTouch, 101, 105); + if (hmiIsChinese()) { + dwinFrameAreaCopy(1, 0, 371, 33, 386, 85, 240); // Wait for Move to Complete + dwinFrameAreaCopy(1, 203, 286, 271, 302, 118, 240); + dwinFrameAreaCopy(1, 0, 389, 150, 402, 61, 280); } else { - DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * (parking ? 7 : 10)) / 2, 230, parking ? F("Parking") : F("Homing XYZ")); - DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 23) / 2, 260, F("Please wait until done.")); + dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * (parking ? 7 : 10)) / 2, 230, parking ? F("Parking") : F("Homing XYZ")); + dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 23) / 2, 260, F("Please wait until done.")); } } #if HAS_ONESTEP_LEVELING - void Popup_Window_Leveling() { - Clear_Main_Window(); - Draw_Popup_Bkgd_60(); - DWIN_ICON_Show(ICON, ICON_AutoLeveling, 101, 105); - if (HMI_IsChinese()) { - DWIN_Frame_AreaCopy(1, 0, 371, 100, 386, 84, 240); // Wait for Leveling - DWIN_Frame_AreaCopy(1, 0, 389, 150, 402, 61, 280); + void popupWindowLeveling() { + clearMainWindow(); + drawPopupBkgd60(); + dwinIconShow(ICON, ICON_AutoLeveling, 101, 105); + if (hmiIsChinese()) { + dwinFrameAreaCopy(1, 0, 371, 100, 386, 84, 240); // Wait for Leveling + dwinFrameAreaCopy(1, 0, 389, 150, 402, 61, 280); } else { - DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 13) / 2, 230, GET_TEXT_F(MSG_BED_LEVELING)); - DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 23) / 2, 260, F("Please wait until done.")); + dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 13) / 2, 230, GET_TEXT_F(MSG_BED_LEVELING)); + dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 23) / 2, 260, F("Please wait until done.")); } } #endif -void Draw_Select_Highlight(const bool sel) { - HMI_flag.select_flag = sel; +void drawSelectHighlight(const bool sel) { + hmiFlag.select_flag = sel; const uint16_t c1 = sel ? Select_Color : Color_Bg_Window, c2 = sel ? Color_Bg_Window : Select_Color; - DWIN_Draw_Rectangle(0, c1, 25, 279, 126, 318); - DWIN_Draw_Rectangle(0, c1, 24, 278, 127, 319); - DWIN_Draw_Rectangle(0, c2, 145, 279, 246, 318); - DWIN_Draw_Rectangle(0, c2, 144, 278, 247, 319); -} - -void Popup_window_PauseOrStop() { - Clear_Main_Window(); - Draw_Popup_Bkgd_60(); - if (HMI_IsChinese()) { - if (select_print.now == PRINT_PAUSE_RESUME) DWIN_Frame_AreaCopy(1, 237, 338, 269, 356, 98, 150); // Pause - else if (select_print.now == PRINT_STOP) DWIN_Frame_AreaCopy(1, 221, 320, 253, 336, 98, 150); // Stop - DWIN_Frame_AreaCopy(1, 220, 304, 264, 319, 130, 150); // Print - DWIN_ICON_Show(ICON, ICON_Confirm_C, 26, 280); - DWIN_ICON_Show(ICON, ICON_Cancel_C, 146, 280); + dwinDrawRectangle(0, c1, 25, 279, 126, 318); + dwinDrawRectangle(0, c1, 24, 278, 127, 319); + dwinDrawRectangle(0, c2, 145, 279, 246, 318); + dwinDrawRectangle(0, c2, 144, 278, 247, 319); +} + +void popupwindowPauseOrStop() { + clearMainWindow(); + drawPopupBkgd60(); + if (hmiIsChinese()) { + if (select_print.now == PRINT_PAUSE_RESUME) dwinFrameAreaCopy(1, 237, 338, 269, 356, 98, 150); // Pause + else if (select_print.now == PRINT_STOP) dwinFrameAreaCopy(1, 221, 320, 253, 336, 98, 150); // Stop + dwinFrameAreaCopy(1, 220, 304, 264, 319, 130, 150); // Print + dwinIconShow(ICON, ICON_Confirm_C, 26, 280); + dwinIconShow(ICON, ICON_Cancel_C, 146, 280); } else { - if (select_print.now == PRINT_PAUSE_RESUME) DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 11) / 2, 150, GET_TEXT_F(MSG_PAUSE_PRINT)); - else if (select_print.now == PRINT_STOP) DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 10) / 2, 150, GET_TEXT_F(MSG_STOP_PRINT)); - DWIN_ICON_Show(ICON, ICON_Confirm_E, 26, 280); - DWIN_ICON_Show(ICON, ICON_Cancel_E, 146, 280); + if (select_print.now == PRINT_PAUSE_RESUME) dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 11) / 2, 150, GET_TEXT_F(MSG_PAUSE_PRINT)); + else if (select_print.now == PRINT_STOP) dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 10) / 2, 150, GET_TEXT_F(MSG_STOP_PRINT)); + dwinIconShow(ICON, ICON_Confirm_E, 26, 280); + dwinIconShow(ICON, ICON_Cancel_E, 146, 280); } - Draw_Select_Highlight(true); + drawSelectHighlight(true); } -void Draw_Printing_Screen() { +void drawPrintingScreen() { const uint16_t y = 168; - if (HMI_IsChinese()) { - DWIN_Frame_TitleCopy(30, 1, 42, 14); // "Printing" - DWIN_Frame_AreaCopy(1, 0, 72, 63, 86, 43, y); // "Printing Time" - DWIN_Frame_AreaCopy(1, 65, 72, 128, 86, 178, y); // "Remain" + if (hmiIsChinese()) { + dwinFrameTitleCopy(30, 1, 42, 14); // "Printing" + dwinFrameAreaCopy(1, 0, 72, 63, 86, 43, y); // "Printing Time" + dwinFrameAreaCopy(1, 65, 72, 128, 86, 178, y); // "Remain" } else { - DWIN_Frame_TitleCopy(42, 0, 47, 14); // "Printing" - DWIN_Frame_AreaCopy(1, 1, 43, 97, 59, 43, y); // "Printing Time" - DWIN_Frame_AreaCopy(1, 100, 43, 152, 56, 178, y); // "Remain" + dwinFrameTitleCopy(42, 0, 47, 14); // "Printing" + dwinFrameAreaCopy(1, 1, 43, 97, 59, 43, y); // "Printing Time" + dwinFrameAreaCopy(1, 100, 43, 152, 56, 178, y); // "Remain" } } -void Draw_Print_ProgressBar() { +void drawPrintProgressBar() { constexpr uint16_t y = 93, h = 21; - DWIN_ICON_Show(ICON, ICON_Bar, 15, 93); - DWIN_Draw_Rectangle(1, BarFill_Color, 16 + _card_percent * 240 / 100, y, 256, y + h - 1); - DWIN_Draw_IntValue(true, true, 0, font8x16, Percent_Color, Color_Bg_Black, 2, 117, y + 40, _card_percent); - DWIN_Draw_String(false, font8x16, Percent_Color, Color_Bg_Black, 133, y + 40, F("%")); + dwinIconShow(ICON, ICON_Bar, 15, 93); + dwinDrawRectangle(1, BarFill_Color, 16 + _card_percent * 240 / 100, y, 256, y + h - 1); + dwinDrawIntValue(true, true, 0, font8x16, Percent_Color, Color_Bg_Black, 2, 117, y + 40, _card_percent); + dwinDrawString(false, font8x16, Percent_Color, Color_Bg_Black, 133, y + 40, F("%")); } -void Draw_Print_ProgressElapsed() { +void drawPrintProgressElapsed() { constexpr uint16_t x = 45, y = 192; duration_t elapsed = print_job_timer.duration(); // print timer - DWIN_Draw_IntValue(true, true, 1, font8x16, Color_White, Color_Bg_Black, 2, x, y, elapsed.value / 3600); - DWIN_Draw_String(false, font8x16, Color_White, Color_Bg_Black, x + 8 * 2, y, F(":")); - DWIN_Draw_IntValue(true, true, 1, font8x16, Color_White, Color_Bg_Black, 2, x + 8 * 3, y, (elapsed.value % 3600) / 60); + dwinDrawIntValue(true, true, 1, font8x16, Color_White, Color_Bg_Black, 2, x, y, elapsed.value / 3600); + dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, x + 8 * 2, y, F(":")); + dwinDrawIntValue(true, true, 1, font8x16, Color_White, Color_Bg_Black, 2, x + 8 * 3, y, (elapsed.value % 3600) / 60); } -void Draw_Print_ProgressRemain() { +void drawPrintProgressRemain() { constexpr uint16_t x = 179, y = 192; - DWIN_Draw_IntValue(true, true, 1, font8x16, Color_White, Color_Bg_Black, 2, x, y, _remain_time / 3600); - DWIN_Draw_String(false, font8x16, Color_White, Color_Bg_Black, x + 8 * 2, y, F(":")); - DWIN_Draw_IntValue(true, true, 1, font8x16, Color_White, Color_Bg_Black, 2, x + 8 * 3, y, (_remain_time % 3600) / 60); + dwinDrawIntValue(true, true, 1, font8x16, Color_White, Color_Bg_Black, 2, x, y, _remain_time / 3600); + dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, x + 8 * 2, y, F(":")); + dwinDrawIntValue(true, true, 1, font8x16, Color_White, Color_Bg_Black, 2, x + 8 * 3, y, (_remain_time % 3600) / 60); } -void Goto_PrintProcess() { +void gotoPrintProcess() { checkkey = PrintProcess; - Clear_Main_Window(); - Draw_Printing_Screen(); + clearMainWindow(); + drawPrintingScreen(); - ICON_Tune(); - ICON_ResumeOrPause(); - ICON_Stop(); + iconTune(); + iconResumeOrPause(); + iconStop(); // Copy into filebuf string before entry char * const name = card.longest_filename(); const int8_t npos = _MAX(0U, DWIN_WIDTH - strlen(name) * MENU_CHR_W) / 2; - DWIN_Draw_String(false, font8x16, Color_White, Color_Bg_Black, npos, 60, name); + dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, npos, 60, name); - DWIN_ICON_Show(ICON, ICON_PrintTime, 17, 163); - DWIN_ICON_Show(ICON, ICON_RemainTime, 150, 161); + dwinIconShow(ICON, ICON_PrintTime, 17, 163); + dwinIconShow(ICON, ICON_RemainTime, 150, 161); - Draw_Print_ProgressBar(); - Draw_Print_ProgressElapsed(); - Draw_Print_ProgressRemain(); + drawPrintProgressBar(); + drawPrintProgressElapsed(); + drawPrintProgressRemain(); } -void Goto_MainMenu() { +void gotoMainMenu() { checkkey = MainMenu; - Clear_Main_Window(); + clearMainWindow(); - if (HMI_IsChinese()) - DWIN_Frame_TitleCopy(2, 2, 26, 13); // "Home" etc + if (hmiIsChinese()) + dwinFrameTitleCopy(2, 2, 26, 13); // "Home" etc else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_MAIN_MENU)); + drawTitle(GET_TEXT_F(MSG_MAIN_MENU)); #else - DWIN_Frame_TitleCopy(0, 2, 40, 11); // "Home" + dwinFrameTitleCopy(0, 2, 40, 11); // "Home" #endif } - DWIN_ICON_Show(ICON, ICON_LOGO, 71, 52); + dwinIconShow(ICON, ICON_LOGO, 71, 52); - ICON_Print(); - ICON_Prepare(); - ICON_Control(); - TERN(HAS_ONESTEP_LEVELING, ICON_Leveling, ICON_StartInfo)(); + iconPrint(); + iconPrepare(); + iconControl(); + TERN(HAS_ONESTEP_LEVELING, iconLeveling, iconStartInfo)(); } -void HMI_Plan_Move(const feedRate_t fr_mm_s) { +void hmiPlanMove(const feedRate_t fr_mm_s) { if (!planner.is_full()) { planner.synchronize(); planner.buffer_line(current_position, fr_mm_s); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } } -void HMI_Move_Done(const AxisEnum axis) { - EncoderRate.enabled = false; +void hmiMoveDone(const AxisEnum axis) { + encoderRate.enabled = false; planner.synchronize(); checkkey = AxisMove; - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void HMI_Move_X() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void hmiMoveX() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (Apply_Encoder(encoder_diffState, HMI_ValueStruct.Move_X_scaled)) { - Draw_Edit_Float3(1, HMI_ValueStruct.Move_X_scaled); - return HMI_Move_Done(X_AXIS); + if (applyEncoder(encoder_diffState, hmiValues.Move_X_scaled)) { + drawEditFloat3(1, hmiValues.Move_X_scaled); + return hmiMoveDone(X_AXIS); } - LIMIT(HMI_ValueStruct.Move_X_scaled, (X_MIN_POS) * MINUNITMULT, (X_MAX_POS) * MINUNITMULT); - current_position.x = HMI_ValueStruct.Move_X_scaled / MINUNITMULT; - Draw_Edit_Float3(1, HMI_ValueStruct.Move_X_scaled, true); - DWIN_UpdateLCD(); - HMI_Plan_Move(homing_feedrate(X_AXIS)); + LIMIT(hmiValues.Move_X_scaled, (X_MIN_POS) * MINUNITMULT, (X_MAX_POS) * MINUNITMULT); + current_position.x = hmiValues.Move_X_scaled / MINUNITMULT; + drawEditFloat3(1, hmiValues.Move_X_scaled, true); + dwinUpdateLCD(); + hmiPlanMove(homing_feedrate(X_AXIS)); } -void HMI_Move_Y() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void hmiMoveY() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (Apply_Encoder(encoder_diffState, HMI_ValueStruct.Move_Y_scaled)) { - Draw_Edit_Float3(2, HMI_ValueStruct.Move_Y_scaled); - return HMI_Move_Done(Y_AXIS); + if (applyEncoder(encoder_diffState, hmiValues.Move_Y_scaled)) { + drawEditFloat3(2, hmiValues.Move_Y_scaled); + return hmiMoveDone(Y_AXIS); } - LIMIT(HMI_ValueStruct.Move_Y_scaled, (Y_MIN_POS) * MINUNITMULT, (Y_MAX_POS) * MINUNITMULT); - current_position.y = HMI_ValueStruct.Move_Y_scaled / MINUNITMULT; - Draw_Edit_Float3(2, HMI_ValueStruct.Move_Y_scaled, true); - DWIN_UpdateLCD(); - HMI_Plan_Move(homing_feedrate(Y_AXIS)); + LIMIT(hmiValues.Move_Y_scaled, (Y_MIN_POS) * MINUNITMULT, (Y_MAX_POS) * MINUNITMULT); + current_position.y = hmiValues.Move_Y_scaled / MINUNITMULT; + drawEditFloat3(2, hmiValues.Move_Y_scaled, true); + dwinUpdateLCD(); + hmiPlanMove(homing_feedrate(Y_AXIS)); } -void HMI_Move_Z() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void hmiMoveZ() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (Apply_Encoder(encoder_diffState, HMI_ValueStruct.Move_Z_scaled)) { - Draw_Edit_Float3(3, HMI_ValueStruct.Move_Z_scaled); - return HMI_Move_Done(Z_AXIS); + if (applyEncoder(encoder_diffState, hmiValues.Move_Z_scaled)) { + drawEditFloat3(3, hmiValues.Move_Z_scaled); + return hmiMoveDone(Z_AXIS); } - LIMIT(HMI_ValueStruct.Move_Z_scaled, (Z_MIN_POS) * MINUNITMULT, (Z_MAX_POS) * MINUNITMULT); - current_position.z = HMI_ValueStruct.Move_Z_scaled / MINUNITMULT; - Draw_Edit_Float3(3, HMI_ValueStruct.Move_Z_scaled, true); - DWIN_UpdateLCD(); - HMI_Plan_Move(homing_feedrate(Z_AXIS)); + LIMIT(hmiValues.Move_Z_scaled, (Z_MIN_POS) * MINUNITMULT, (Z_MAX_POS) * MINUNITMULT); + current_position.z = hmiValues.Move_Z_scaled / MINUNITMULT; + drawEditFloat3(3, hmiValues.Move_Z_scaled, true); + dwinUpdateLCD(); + hmiPlanMove(homing_feedrate(Z_AXIS)); } #if HAS_HOTEND - void HMI_Move_E() { + void hmiMoveE() { static float last_E_scaled = 0; - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (Apply_Encoder(encoder_diffState, HMI_ValueStruct.Move_E_scaled)) { - last_E_scaled = HMI_ValueStruct.Move_E_scaled; - Draw_Edit_Signed_Float3(4, last_E_scaled); - return HMI_Move_Done(E_AXIS); + if (applyEncoder(encoder_diffState, hmiValues.Move_E_scaled)) { + last_E_scaled = hmiValues.Move_E_scaled; + drawEditSignedFloat3(4, last_E_scaled); + return hmiMoveDone(E_AXIS); } - LIMIT(HMI_ValueStruct.Move_E_scaled, last_E_scaled - (EXTRUDE_MAXLENGTH) * MINUNITMULT, last_E_scaled + (EXTRUDE_MAXLENGTH) * MINUNITMULT); - current_position.e = HMI_ValueStruct.Move_E_scaled / MINUNITMULT; - Draw_Edit_Signed_Float3(4, HMI_ValueStruct.Move_E_scaled, true); - DWIN_UpdateLCD(); - HMI_Plan_Move(MMM_TO_MMS(FEEDRATE_E)); + LIMIT(hmiValues.Move_E_scaled, last_E_scaled - (EXTRUDE_MAXLENGTH) * MINUNITMULT, last_E_scaled + (EXTRUDE_MAXLENGTH) * MINUNITMULT); + current_position.e = hmiValues.Move_E_scaled / MINUNITMULT; + drawEditSignedFloat3(4, hmiValues.Move_E_scaled, true); + dwinUpdateLCD(); + hmiPlanMove(MMM_TO_MMS(FEEDRATE_E)); } #endif #if HAS_ZOFFSET_ITEM - void HMI_Zoffset() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); + void hmiZoffset() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; uint8_t zoff_line; - switch (HMI_ValueStruct.show_mode) { + switch (hmiValues.show_mode) { case -4: zoff_line = PREPARE_CASE_ZOFF + MROWS - index_prepare; break; default: zoff_line = TUNE_CASE_ZOFF + MROWS - index_tune; } - if (Apply_Encoder(encoder_diffState, HMI_ValueStruct.offset_value)) { - EncoderRate.enabled = false; + if (applyEncoder(encoder_diffState, hmiValues.offset_value)) { + encoderRate.enabled = false; #if HAS_BED_PROBE probe.offset.z = dwin_zoffset; TERN_(EEPROM_SETTINGS, settings.save()); #endif - checkkey = HMI_ValueStruct.show_mode == -4 ? Prepare : Tune; - Draw_Edit_Signed_Float2(zoff_line, TERN(HAS_BED_PROBE, BABY_Z_VAR * 100, HMI_ValueStruct.offset_value)); - DWIN_UpdateLCD(); + checkkey = hmiValues.show_mode == -4 ? Prepare : Tune; + drawEditSignedFloat2(zoff_line, TERN(HAS_BED_PROBE, BABY_Z_VAR * 100, hmiValues.offset_value)); + dwinUpdateLCD(); return; } - LIMIT(HMI_ValueStruct.offset_value, (Z_PROBE_OFFSET_RANGE_MIN) * 100, (Z_PROBE_OFFSET_RANGE_MAX) * 100); + LIMIT(hmiValues.offset_value, (Z_PROBE_OFFSET_RANGE_MIN) * 100, (Z_PROBE_OFFSET_RANGE_MAX) * 100); last_zoffset = dwin_zoffset; - dwin_zoffset = HMI_ValueStruct.offset_value / 100.0f; + dwin_zoffset = hmiValues.offset_value / 100.0f; #if ANY(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) if (BABYSTEP_ALLOWED()) babystep.add_mm(Z_AXIS, dwin_zoffset - last_zoffset); #endif - Draw_Edit_Signed_Float2(zoff_line, HMI_ValueStruct.offset_value, true); - DWIN_UpdateLCD(); + drawEditSignedFloat2(zoff_line, hmiValues.offset_value, true); + dwinUpdateLCD(); } #endif // HAS_ZOFFSET_ITEM #if HAS_HOTEND - void HMI_ETemp() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); + void hmiETemp() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; uint8_t temp_line; - switch (HMI_ValueStruct.show_mode) { + switch (hmiValues.show_mode) { case -1: temp_line = TEMP_CASE_TEMP; break; #if HAS_PREHEAT case -2: temp_line = PREHEAT_CASE_TEMP; break; @@ -1400,48 +1400,48 @@ void HMI_Move_Z() { #endif default: temp_line = TUNE_CASE_TEMP + MROWS - index_tune; } - if (Apply_Encoder(encoder_diffState, HMI_ValueStruct.E_Temp)) { - EncoderRate.enabled = false; + if (applyEncoder(encoder_diffState, hmiValues.E_Temp)) { + encoderRate.enabled = false; #if HAS_PREHEAT - if (HMI_ValueStruct.show_mode == -2) { + if (hmiValues.show_mode == -2) { checkkey = PLAPreheat; - ui.material_preset[0].hotend_temp = HMI_ValueStruct.E_Temp; - Draw_Edit_Integer3(temp_line, ui.material_preset[0].hotend_temp); + ui.material_preset[0].hotend_temp = hmiValues.E_Temp; + drawEditInteger3(temp_line, ui.material_preset[0].hotend_temp); return; } #if PREHEAT_COUNT > 1 - if (HMI_ValueStruct.show_mode == -3) { + if (hmiValues.show_mode == -3) { checkkey = ABSPreheat; - ui.material_preset[1].hotend_temp = HMI_ValueStruct.E_Temp; - Draw_Edit_Integer3(temp_line, ui.material_preset[1].hotend_temp); + ui.material_preset[1].hotend_temp = hmiValues.E_Temp; + drawEditInteger3(temp_line, ui.material_preset[1].hotend_temp); return; } #endif #endif - if (HMI_ValueStruct.show_mode == -1) // Temperature + if (hmiValues.show_mode == -1) // Temperature checkkey = TemperatureID; else checkkey = Tune; - Draw_Edit_Integer3(temp_line, HMI_ValueStruct.E_Temp); - thermalManager.setTargetHotend(HMI_ValueStruct.E_Temp, 0); + drawEditInteger3(temp_line, hmiValues.E_Temp); + thermalManager.setTargetHotend(hmiValues.E_Temp, 0); return; } // E_Temp limit - LIMIT(HMI_ValueStruct.E_Temp, HEATER_0_MINTEMP, thermalManager.hotend_max_target(0)); + LIMIT(hmiValues.E_Temp, HEATER_0_MINTEMP, thermalManager.hotend_max_target(0)); // E_Temp value - Draw_Edit_Integer3(temp_line, HMI_ValueStruct.E_Temp, true); + drawEditInteger3(temp_line, hmiValues.E_Temp, true); } #endif // HAS_HOTEND #if HAS_HEATED_BED - void HMI_BedTemp() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); + void hmiBedTemp() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; uint8_t bed_line; - switch (HMI_ValueStruct.show_mode) { + switch (hmiValues.show_mode) { case -1: bed_line = TEMP_CASE_BED; break; #if HAS_PREHEAT case -2: bed_line = PREHEAT_CASE_BED; break; @@ -1451,171 +1451,171 @@ void HMI_Move_Z() { #endif default: bed_line = TUNE_CASE_BED + MROWS - index_tune; } - if (Apply_Encoder(encoder_diffState, HMI_ValueStruct.Bed_Temp)) { - EncoderRate.enabled = false; + if (applyEncoder(encoder_diffState, hmiValues.Bed_Temp)) { + encoderRate.enabled = false; #if HAS_PREHEAT - if (HMI_ValueStruct.show_mode == -2) { + if (hmiValues.show_mode == -2) { checkkey = PLAPreheat; - ui.material_preset[0].bed_temp = HMI_ValueStruct.Bed_Temp; - Draw_Edit_Integer3(bed_line, ui.material_preset[0].bed_temp); + ui.material_preset[0].bed_temp = hmiValues.Bed_Temp; + drawEditInteger3(bed_line, ui.material_preset[0].bed_temp); return; } #if PREHEAT_COUNT > 1 - if (HMI_ValueStruct.show_mode == -3) { + if (hmiValues.show_mode == -3) { checkkey = ABSPreheat; - ui.material_preset[1].bed_temp = HMI_ValueStruct.Bed_Temp; - Draw_Edit_Integer3(bed_line, ui.material_preset[1].bed_temp); + ui.material_preset[1].bed_temp = hmiValues.Bed_Temp; + drawEditInteger3(bed_line, ui.material_preset[1].bed_temp); return; } #endif #endif - checkkey = HMI_ValueStruct.show_mode == -1 ? TemperatureID : Tune; - Draw_Edit_Integer3(bed_line, HMI_ValueStruct.Bed_Temp); - thermalManager.setTargetBed(HMI_ValueStruct.Bed_Temp); + checkkey = hmiValues.show_mode == -1 ? TemperatureID : Tune; + drawEditInteger3(bed_line, hmiValues.Bed_Temp); + thermalManager.setTargetBed(hmiValues.Bed_Temp); return; } // Bed_Temp limit - LIMIT(HMI_ValueStruct.Bed_Temp, BED_MINTEMP, BED_MAX_TARGET); + LIMIT(hmiValues.Bed_Temp, BED_MINTEMP, BED_MAX_TARGET); // Bed_Temp value - Draw_Edit_Integer3(bed_line, HMI_ValueStruct.Bed_Temp, true); + drawEditInteger3(bed_line, hmiValues.Bed_Temp, true); } #endif // HAS_HEATED_BED #if HAS_PREHEAT && HAS_FAN - void HMI_FanSpeed() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); + void hmiFanSpeed() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; uint8_t fan_line; - switch (HMI_ValueStruct.show_mode) { + switch (hmiValues.show_mode) { case -1: fan_line = TEMP_CASE_FAN; break; case -2: fan_line = PREHEAT_CASE_FAN; break; case -3: fan_line = PREHEAT_CASE_FAN; break; default: fan_line = TUNE_CASE_FAN + MROWS - index_tune; } - if (Apply_Encoder(encoder_diffState, HMI_ValueStruct.Fan_speed)) { - EncoderRate.enabled = false; - if (HMI_ValueStruct.show_mode == -2) { + if (applyEncoder(encoder_diffState, hmiValues.Fan_speed)) { + encoderRate.enabled = false; + if (hmiValues.show_mode == -2) { checkkey = PLAPreheat; - ui.material_preset[0].fan_speed = HMI_ValueStruct.Fan_speed; - Draw_Edit_Integer3(fan_line, ui.material_preset[0].fan_speed); + ui.material_preset[0].fan_speed = hmiValues.Fan_speed; + drawEditInteger3(fan_line, ui.material_preset[0].fan_speed); return; } #if PREHEAT_COUNT > 1 - if (HMI_ValueStruct.show_mode == -3) { + if (hmiValues.show_mode == -3) { checkkey = ABSPreheat; - ui.material_preset[1].fan_speed = HMI_ValueStruct.Fan_speed; - Draw_Edit_Integer3(fan_line, ui.material_preset[1].fan_speed); + ui.material_preset[1].fan_speed = hmiValues.Fan_speed; + drawEditInteger3(fan_line, ui.material_preset[1].fan_speed); return; } #endif - checkkey = HMI_ValueStruct.show_mode == -1 ? TemperatureID : Tune; - Draw_Edit_Integer3(fan_line, HMI_ValueStruct.Fan_speed); - thermalManager.set_fan_speed(0, HMI_ValueStruct.Fan_speed); + checkkey = hmiValues.show_mode == -1 ? TemperatureID : Tune; + drawEditInteger3(fan_line, hmiValues.Fan_speed); + thermalManager.set_fan_speed(0, hmiValues.Fan_speed); return; } // Fan_speed limit - LIMIT(HMI_ValueStruct.Fan_speed, 0, 255); + LIMIT(hmiValues.Fan_speed, 0, 255); // Fan_speed value - Draw_Edit_Integer3(fan_line, HMI_ValueStruct.Fan_speed, true); + drawEditInteger3(fan_line, hmiValues.Fan_speed, true); } #endif // HAS_PREHEAT && HAS_FAN -void HMI_PrintSpeed() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void hmiPrintSpeed() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (Apply_Encoder(encoder_diffState, HMI_ValueStruct.print_speed)) { + if (applyEncoder(encoder_diffState, hmiValues.print_speed)) { checkkey = Tune; - EncoderRate.enabled = false; - feedrate_percentage = HMI_ValueStruct.print_speed; - Draw_Edit_Integer3(select_tune.now + MROWS - index_tune, HMI_ValueStruct.print_speed); + encoderRate.enabled = false; + feedrate_percentage = hmiValues.print_speed; + drawEditInteger3(select_tune.now + MROWS - index_tune, hmiValues.print_speed); return; } // print_speed limit - LIMIT(HMI_ValueStruct.print_speed, MIN_PRINT_SPEED, MAX_PRINT_SPEED); + LIMIT(hmiValues.print_speed, MIN_PRINT_SPEED, MAX_PRINT_SPEED); // print_speed value - Draw_Edit_Integer3(select_tune.now + MROWS - index_tune, HMI_ValueStruct.print_speed, true); + drawEditInteger3(select_tune.now + MROWS - index_tune, hmiValues.print_speed, true); } #define LAST_AXIS TERN(HAS_HOTEND, E_AXIS, Z_AXIS) -void HMI_MaxFeedspeedXYZE() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void hmiMaxFeedspeedXYZE() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (Apply_Encoder(encoder_diffState, HMI_ValueStruct.Max_Feedspeed)) { + if (applyEncoder(encoder_diffState, hmiValues.Max_Feedspeed)) { checkkey = MaxSpeed; - EncoderRate.enabled = false; - if (WITHIN(HMI_flag.feedspeed_axis, X_AXIS, LAST_AXIS)) - planner.set_max_feedrate(HMI_flag.feedspeed_axis, HMI_ValueStruct.Max_Feedspeed); - Draw_Edit_Integer4(select_speed.now, HMI_ValueStruct.Max_Feedspeed); + encoderRate.enabled = false; + if (WITHIN(hmiFlag.feedspeed_axis, X_AXIS, LAST_AXIS)) + planner.set_max_feedrate(hmiFlag.feedspeed_axis, hmiValues.Max_Feedspeed); + drawEditInteger4(select_speed.now, hmiValues.Max_Feedspeed); return; } // MaxFeedspeed limit - if (WITHIN(HMI_flag.feedspeed_axis, X_AXIS, LAST_AXIS)) - LIMIT(HMI_ValueStruct.Max_Feedspeed, min_feedrate_edit_values[HMI_flag.feedspeed_axis], max_feedrate_edit_values[HMI_flag.feedspeed_axis]); + if (WITHIN(hmiFlag.feedspeed_axis, X_AXIS, LAST_AXIS)) + LIMIT(hmiValues.Max_Feedspeed, min_feedrate_edit_values[hmiFlag.feedspeed_axis], max_feedrate_edit_values[hmiFlag.feedspeed_axis]); // MaxFeedspeed value - Draw_Edit_Integer4(select_speed.now, HMI_ValueStruct.Max_Feedspeed, true); + drawEditInteger4(select_speed.now, hmiValues.Max_Feedspeed, true); } -void HMI_MaxAccelerationXYZE() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void hmiMaxAccelerationXYZE() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (Apply_Encoder(encoder_diffState, HMI_ValueStruct.Max_Acceleration)) { + if (applyEncoder(encoder_diffState, hmiValues.Max_Acceleration)) { checkkey = MaxAcceleration; - EncoderRate.enabled = false; - if (WITHIN(HMI_flag.acc_axis, X_AXIS, LAST_AXIS)) - planner.set_max_acceleration(HMI_flag.acc_axis, HMI_ValueStruct.Max_Acceleration); - Draw_Edit_Integer4(select_acc.now, HMI_ValueStruct.Max_Acceleration); + encoderRate.enabled = false; + if (WITHIN(hmiFlag.acc_axis, X_AXIS, LAST_AXIS)) + planner.set_max_acceleration(hmiFlag.acc_axis, hmiValues.Max_Acceleration); + drawEditInteger4(select_acc.now, hmiValues.Max_Acceleration); return; } // MaxAcceleration limit - if (WITHIN(HMI_flag.acc_axis, X_AXIS, LAST_AXIS)) - LIMIT(HMI_ValueStruct.Max_Acceleration, min_acceleration_edit_values[HMI_flag.acc_axis], max_acceleration_edit_values[HMI_flag.acc_axis]); + if (WITHIN(hmiFlag.acc_axis, X_AXIS, LAST_AXIS)) + LIMIT(hmiValues.Max_Acceleration, min_acceleration_edit_values[hmiFlag.acc_axis], max_acceleration_edit_values[hmiFlag.acc_axis]); // MaxAcceleration value - Draw_Edit_Integer4(select_acc.now, HMI_ValueStruct.Max_Acceleration, true); + drawEditInteger4(select_acc.now, hmiValues.Max_Acceleration, true); } #if HAS_CLASSIC_JERK - void HMI_MaxJerkXYZE() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); + void hmiMaxJerkXYZE() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (Apply_Encoder(encoder_diffState, HMI_ValueStruct.Max_Jerk_scaled)) { + if (applyEncoder(encoder_diffState, hmiValues.Max_Jerk_scaled)) { checkkey = MaxJerk; - EncoderRate.enabled = false; - if (WITHIN(HMI_flag.jerk_axis, X_AXIS, LAST_AXIS)) - planner.set_max_jerk(HMI_flag.jerk_axis, HMI_ValueStruct.Max_Jerk_scaled / MINUNITMULT); - Draw_Edit_Float3(select_jerk.now, HMI_ValueStruct.Max_Jerk_scaled); + encoderRate.enabled = false; + if (WITHIN(hmiFlag.jerk_axis, X_AXIS, LAST_AXIS)) + planner.set_max_jerk(hmiFlag.jerk_axis, hmiValues.Max_Jerk_scaled / MINUNITMULT); + drawEditFloat3(select_jerk.now, hmiValues.Max_Jerk_scaled); return; } // MaxJerk limit - if (WITHIN(HMI_flag.jerk_axis, X_AXIS, LAST_AXIS)) - LIMIT(HMI_ValueStruct.Max_Jerk_scaled, min_jerk_edit_values[HMI_flag.jerk_axis] * MINUNITMULT, max_jerk_edit_values[HMI_flag.jerk_axis] * MINUNITMULT); + if (WITHIN(hmiFlag.jerk_axis, X_AXIS, LAST_AXIS)) + LIMIT(hmiValues.Max_Jerk_scaled, min_jerk_edit_values[hmiFlag.jerk_axis] * MINUNITMULT, max_jerk_edit_values[hmiFlag.jerk_axis] * MINUNITMULT); // MaxJerk value - Draw_Edit_Float3(select_jerk.now, HMI_ValueStruct.Max_Jerk_scaled, true); + drawEditFloat3(select_jerk.now, hmiValues.Max_Jerk_scaled, true); } #endif // HAS_CLASSIC_JERK -void HMI_StepXYZE() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void hmiStepXYZE() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (Apply_Encoder(encoder_diffState, HMI_ValueStruct.Max_Step_scaled)) { + if (applyEncoder(encoder_diffState, hmiValues.Max_Step_scaled)) { checkkey = Step; - EncoderRate.enabled = false; - if (WITHIN(HMI_flag.step_axis, X_AXIS, LAST_AXIS)) - planner.settings.axis_steps_per_mm[HMI_flag.step_axis] = HMI_ValueStruct.Max_Step_scaled / MINUNITMULT; - Draw_Edit_Float3(select_step.now, HMI_ValueStruct.Max_Step_scaled); + encoderRate.enabled = false; + if (WITHIN(hmiFlag.step_axis, X_AXIS, LAST_AXIS)) + planner.settings.axis_steps_per_mm[hmiFlag.step_axis] = hmiValues.Max_Step_scaled / MINUNITMULT; + drawEditFloat3(select_step.now, hmiValues.Max_Step_scaled); return; } // Step limit - if (WITHIN(HMI_flag.step_axis, X_AXIS, LAST_AXIS)) - LIMIT(HMI_ValueStruct.Max_Step_scaled, min_steps_edit_values[HMI_flag.step_axis] * MINUNITMULT, max_steps_edit_values[HMI_flag.step_axis] * MINUNITMULT); + if (WITHIN(hmiFlag.step_axis, X_AXIS, LAST_AXIS)) + LIMIT(hmiValues.Max_Step_scaled, min_steps_edit_values[hmiFlag.step_axis] * MINUNITMULT, max_steps_edit_values[hmiFlag.step_axis] * MINUNITMULT); // Step value - Draw_Edit_Float3(select_step.now, HMI_ValueStruct.Max_Step_scaled, true); + drawEditFloat3(select_step.now, hmiValues.Max_Step_scaled, true); } // Draw X, Y, Z and blink if in an un-homed or un-trusted state @@ -1631,11 +1631,11 @@ void _update_axis_value(const AxisEnum axis, const uint16_t x, const uint16_t y, if (force || changed || draw_qmark || draw_empty) { if (blink && draw_qmark) - DWIN_Draw_String(true, font8x16, Color_White, Color_Bg_Black, x, y, F("???.?")); + dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, x, y, F("???.?")); else if (blink && draw_empty) - DWIN_Draw_String(true, font8x16, Color_White, Color_Bg_Black, x, y, F(" ")); + dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, x, y, F(" ")); else - DWIN_Draw_FloatValue(true, true, 0, font8x16, Color_White, Color_Bg_Black, 3, 1, x, y, p); + dwinDrawFloatValue(true, true, 0, font8x16, Color_White, Color_Bg_Black, 3, 1, x, y, p); } } @@ -1682,27 +1682,27 @@ void update_variable() { // Tune page temperature update #if HAS_HOTEND if (_new_hotend_target) - Draw_Edit_Integer3(TUNE_CASE_TEMP + MROWS - index_tune, _hotendtarget); + drawEditInteger3(TUNE_CASE_TEMP + MROWS - index_tune, _hotendtarget); #endif #if HAS_HEATED_BED if (_new_bed_target) - Draw_Edit_Integer3(TUNE_CASE_BED + MROWS - index_tune, _bedtarget); + drawEditInteger3(TUNE_CASE_BED + MROWS - index_tune, _bedtarget); #endif #if HAS_FAN if (_new_fanspeed) - Draw_Edit_Integer3(TUNE_CASE_FAN + MROWS - index_tune, _fanspeed); + drawEditInteger3(TUNE_CASE_FAN + MROWS - index_tune, _fanspeed); #endif } else if (checkkey == TemperatureID) { // Temperature page temperature update #if HAS_HOTEND - if (_new_hotend_target) Draw_Edit_Integer3(TEMP_CASE_TEMP, _hotendtarget); + if (_new_hotend_target) drawEditInteger3(TEMP_CASE_TEMP, _hotendtarget); #endif #if HAS_HEATED_BED - if (_new_bed_target) Draw_Edit_Integer3(TEMP_CASE_BED, _bedtarget); + if (_new_bed_target) drawEditInteger3(TEMP_CASE_BED, _bedtarget); #endif #if HAS_FAN - if (_new_fanspeed) Draw_Edit_Integer3(TEMP_CASE_FAN, _fanspeed); + if (_new_fanspeed) drawEditInteger3(TEMP_CASE_FAN, _fanspeed); #endif } @@ -1710,34 +1710,34 @@ void update_variable() { #if HAS_HOTEND if (_new_hotend_temp) - Draw_Stat_Int(28, 384, _hotendtemp); + drawStatInt(28, 384, _hotendtemp); if (_new_hotend_target) - Draw_Stat_Int(25 + 4 * STAT_CHR_W + 6, 384, _hotendtarget); + drawStatInt(25 + 4 * STAT_CHR_W + 6, 384, _hotendtarget); static int16_t _flow = 0; if (_flow != planner.flow_percentage[0]) { _flow = planner.flow_percentage[0]; - Draw_Stat_Int(116 + 2 * STAT_CHR_W, 417, _flow); + drawStatInt(116 + 2 * STAT_CHR_W, 417, _flow); } #endif #if HAS_HEATED_BED if (_new_bed_temp) - Draw_Stat_Int(28, 417, _bedtemp); + drawStatInt(28, 417, _bedtemp); if (_new_bed_target) - Draw_Stat_Int(25 + 4 * STAT_CHR_W + 6, 417, _bedtarget); + drawStatInt(25 + 4 * STAT_CHR_W + 6, 417, _bedtarget); #endif static int16_t _feedrate = 0; if (_feedrate != feedrate_percentage) { _feedrate = feedrate_percentage; - Draw_Stat_Int(116 + 2 * STAT_CHR_W, 384, _feedrate); + drawStatInt(116 + 2 * STAT_CHR_W, 384, _feedrate); } #if HAS_FAN if (_new_fanspeed) { _fanspeed = thermalManager.fan_speed[0]; - Draw_Stat_Int(195 + 2 * STAT_CHR_W, 384, _fanspeed); + drawStatInt(195 + 2 * STAT_CHR_W, 384, _fanspeed); } #endif @@ -1745,12 +1745,12 @@ void update_variable() { if (BABY_Z_VAR != _offset) { _offset = BABY_Z_VAR; if (BABY_Z_VAR < 0) { - Draw_Stat_Float(207, 417, -_offset); - DWIN_Draw_String(true, font8x16, Color_White, Color_Bg_Black, 205, 419, F("-")); + drawStatFloat(207, 417, -_offset); + dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, 205, 419, F("-")); } else { - Draw_Stat_Float(207, 417, _offset); - DWIN_Draw_String(true, font8x16, Color_White, Color_Bg_Black, 205, 419, F(" ")); + drawStatFloat(207, 417, _offset); + dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, 205, 419, F(" ")); } } @@ -1765,10 +1765,6 @@ void update_variable() { * cache files here. */ -#ifndef strcasecmp_P - #define strcasecmp_P(a, b) strcasecmp((a), (b)) -#endif - void make_name_without_ext(char *dst, char *src, size_t maxlen=MENU_CHAR_LIMIT) { char * const name = card.longest_filename(); size_t pos = strlen(name); // index of ending nul @@ -1792,15 +1788,15 @@ void make_name_without_ext(char *dst, char *src, size_t maxlen=MENU_CHAR_LIMIT) while (pos--) dst[pos] = src[pos]; } -void HMI_SDCardInit() { card.cdroot(); } +void hmiSDCardInit() { card.cdroot(); } // Initialize or re-initialize the LCD -void MarlinUI::init_lcd() { DWIN_Startup(); } +void MarlinUI::init_lcd() { dwinStartup(); } void MarlinUI::refresh() { /* Nothing to see here */ } #if HAS_LCD_BRIGHTNESS - void MarlinUI::_set_brightness() { DWIN_LCD_Brightness(backlight ? brightness : 0); } + void MarlinUI::_set_brightness() { dwinLCDBrightness(backlight ? brightness : 0); } #endif #if ENABLED(SCROLL_LONG_FILENAMES) @@ -1810,7 +1806,7 @@ void MarlinUI::refresh() { /* Nothing to see here */ } millis_t shift_ms; // = 0 // Init the shift name based on the highlighted item - void Init_Shift_Name() { + void initShiftName() { const bool is_subdir = !card.flag.workDirIsRoot; const int8_t filenum = select_file.now - 1 - is_subdir; // Skip "Back" and ".." const int16_t fileCnt = card.get_num_items(); @@ -1821,7 +1817,7 @@ void MarlinUI::refresh() { /* Nothing to see here */ } } } - void Init_SDItem_Shift() { + void initSDItemShift() { shift_amt = 0; shift_ms = select_file.now != CASE_BACK && strlen(shift_name) > MENU_CHAR_LIMIT ? millis() + 750UL : 0; @@ -1832,11 +1828,11 @@ void MarlinUI::refresh() { /* Nothing to see here */ } /** * Display an SD item, adding a CDUP for subfolders. */ -void Draw_SDItem(const uint16_t item, int16_t row=-1) { +void drawSDItem(const uint16_t item, int16_t row=-1) { if (row < 0) row = item + 1 + MROWS - index_file; const bool is_subdir = !card.flag.workDirIsRoot; if (is_subdir && item == 0) { - Draw_Menu_Line(row, ICON_Folder, F("..")); + drawMenuLine(row, ICON_Folder, F("..")); return; } @@ -1848,19 +1844,19 @@ void Draw_SDItem(const uint16_t item, int16_t row=-1) { // This is used during scroll drawing if (item == select_file.now - 1) { make_name_without_ext(shift_name, name, 100); - Init_SDItem_Shift(); + initSDItemShift(); } #endif // Draw the file/folder with name aligned left char str[strlen(name) + 1]; make_name_without_ext(str, name); - Draw_Menu_Line(row, card.flag.filenameIsDir ? ICON_Folder : ICON_File, str); + drawMenuLine(row, card.flag.filenameIsDir ? ICON_Folder : ICON_File, str); } #if ENABLED(SCROLL_LONG_FILENAMES) - void Draw_SDItem_Shifted(uint8_t &shift) { + void drawSDItemShifted(uint8_t &shift) { // Limit to the number of chars past the cutoff const size_t len = strlen(shift_name); NOMORE(shift, _MAX(len - MENU_CHAR_LIMIT, 0U)); @@ -1872,8 +1868,8 @@ void Draw_SDItem(const uint16_t item, int16_t row=-1) { shift_name[lastchar] = '\0'; const uint8_t row = select_file.now + MROWS - index_file; // skip "Back" and scroll - Erase_Menu_Text(row); - Draw_Menu_Line(row, 0, &shift_name[shift]); + eraseMenuText(row); + drawMenuLine(row, 0, &shift_name[shift]); shift_name[lastchar] = c; } @@ -1881,57 +1877,57 @@ void Draw_SDItem(const uint16_t item, int16_t row=-1) { #endif // Redraw the first set of SD Files -void Redraw_SD_List() { +void redrawSDList() { select_file.reset(); index_file = MROWS; - Clear_Menu_Area(); // Leave title bar unchanged + clearMenuArea(); // Leave title bar unchanged - Draw_Back_First(); + drawBackFirst(); if (card.isMounted()) { // As many files as will fit for (uint8_t i = 0; i < _MIN(nr_sd_menu_items(), MROWS); ++i) - Draw_SDItem(i, i + 1); + drawSDItem(i, i + 1); - TERN_(SCROLL_LONG_FILENAMES, Init_SDItem_Shift()); + TERN_(SCROLL_LONG_FILENAMES, initSDItemShift()); } else { - DWIN_Draw_Rectangle(1, Color_Bg_Red, 10, MBASE(3) - 10, DWIN_WIDTH - 10, MBASE(4)); - DWIN_Draw_String(false, font16x32, Color_Yellow, Color_Bg_Red, ((DWIN_WIDTH) - 8 * 16) / 2, MBASE(3), F("No Media")); + dwinDrawRectangle(1, Color_Bg_Red, 10, MBASE(3) - 10, DWIN_WIDTH - 10, MBASE(4)); + dwinDrawString(false, font16x32, Color_Yellow, Color_Bg_Red, ((DWIN_WIDTH) - 8 * 16) / 2, MBASE(3), F("No Media")); } } bool DWIN_lcd_sd_status = false; -void SDCard_Up() { +void sdCardUp() { card.cdup(); - Redraw_SD_List(); + redrawSDList(); DWIN_lcd_sd_status = false; // On next DWIN_Update } -void SDCard_Folder(char * const dirname) { +void sdCardFolder(char * const dirname) { card.cd(dirname); - Redraw_SD_List(); + redrawSDList(); DWIN_lcd_sd_status = false; // On next DWIN_Update } // // Watch for media mount / unmount // -void HMI_SDCardUpdate() { - if (HMI_flag.home_flag) return; +void hmiSDCardUpdate() { + if (hmiFlag.home_flag) return; if (DWIN_lcd_sd_status != card.isMounted()) { DWIN_lcd_sd_status = card.isMounted(); //SERIAL_ECHOLNPGM("HMI_SDCardUpdate: ", DWIN_lcd_sd_status); if (DWIN_lcd_sd_status) { if (checkkey == SelectFile) - Redraw_SD_List(); + redrawSDList(); } else { // clean file icon if (checkkey == SelectFile) { - Redraw_SD_List(); + redrawSDList(); } else if (checkkey == PrintProcess || checkkey == Tune || printingIsActive()) { // TODO: Move card removed abort handling @@ -1941,7 +1937,7 @@ void HMI_SDCardUpdate() { dwin_abort_flag = true; // Reset feedrate, return to Home } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } } @@ -1949,139 +1945,139 @@ void HMI_SDCardUpdate() { // The status area is always on-screen, except during // full-screen modal dialogs. (TODO: Keep alive during dialogs) // -void Draw_Status_Area(const bool with_update) { +void drawStatusArea(const bool with_update) { - DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, STATUS_Y, DWIN_WIDTH, DWIN_HEIGHT - 1); + dwinDrawRectangle(1, Color_Bg_Black, 0, STATUS_Y, DWIN_WIDTH, DWIN_HEIGHT - 1); #if HAS_HOTEND - DWIN_ICON_Show(ICON, ICON_HotendTemp, 10, 383); - Draw_Stat_Int(28, 384, thermalManager.wholeDegHotend(0)); - DWIN_Draw_String(false, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 25 + 3 * STAT_CHR_W + 5, 384, F("/")); - Draw_Stat_Int(25 + 4 * STAT_CHR_W + 6, 384, thermalManager.degTargetHotend(0)); - - DWIN_ICON_Show(ICON, ICON_StepE, 112, 417); - Draw_Stat_Int(116 + 2 * STAT_CHR_W, 417, planner.flow_percentage[0]); - DWIN_Draw_String(false, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 116 + 5 * STAT_CHR_W + 2, 417, F("%")); + dwinIconShow(ICON, ICON_HotendTemp, 10, 383); + drawStatInt(28, 384, thermalManager.wholeDegHotend(0)); + dwinDrawString(false, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 25 + 3 * STAT_CHR_W + 5, 384, F("/")); + drawStatInt(25 + 4 * STAT_CHR_W + 6, 384, thermalManager.degTargetHotend(0)); + + dwinIconShow(ICON, ICON_StepE, 112, 417); + drawStatInt(116 + 2 * STAT_CHR_W, 417, planner.flow_percentage[0]); + dwinDrawString(false, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 116 + 5 * STAT_CHR_W + 2, 417, F("%")); #endif #if HAS_HEATED_BED - DWIN_ICON_Show(ICON, ICON_BedTemp, 10, 416); - Draw_Stat_Int(28, 417, thermalManager.wholeDegBed()); - DWIN_Draw_String(false, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 25 + 3 * STAT_CHR_W + 5, 417, F("/")); - Draw_Stat_Int(25 + 4 * STAT_CHR_W + 6, 417, thermalManager.degTargetBed()); + dwinIconShow(ICON, ICON_BedTemp, 10, 416); + drawStatInt(28, 417, thermalManager.wholeDegBed()); + dwinDrawString(false, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 25 + 3 * STAT_CHR_W + 5, 417, F("/")); + drawStatInt(25 + 4 * STAT_CHR_W + 6, 417, thermalManager.degTargetBed()); #endif - DWIN_ICON_Show(ICON, ICON_Speed, 113, 383); - Draw_Stat_Int(116 + 2 * STAT_CHR_W, 384, feedrate_percentage); - DWIN_Draw_String(false, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 116 + 5 * STAT_CHR_W + 2, 384, F("%")); + dwinIconShow(ICON, ICON_Speed, 113, 383); + drawStatInt(116 + 2 * STAT_CHR_W, 384, feedrate_percentage); + dwinDrawString(false, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 116 + 5 * STAT_CHR_W + 2, 384, F("%")); #if HAS_FAN - DWIN_ICON_Show(ICON, ICON_FanSpeed, 187, 383); - Draw_Stat_Int(195 + 2 * STAT_CHR_W, 384, thermalManager.fan_speed[0]); + dwinIconShow(ICON, ICON_FanSpeed, 187, 383); + drawStatInt(195 + 2 * STAT_CHR_W, 384, thermalManager.fan_speed[0]); #endif #if HAS_ZOFFSET_ITEM - DWIN_ICON_Show(ICON, ICON_Zoffset, 187, 416); + dwinIconShow(ICON, ICON_Zoffset, 187, 416); #endif if (BABY_Z_VAR < 0) { - Draw_Stat_Float(207, 417, -BABY_Z_VAR * 100); - DWIN_Draw_String(true, font8x16, Color_White, Color_Bg_Black, 205, 419, F("-")); + drawStatFloat(207, 417, -BABY_Z_VAR * 100); + dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, 205, 419, F("-")); } else { - Draw_Stat_Float(207, 417, BABY_Z_VAR * 100); - DWIN_Draw_String(true, font8x16, Color_White, Color_Bg_Black, 205, 419, F(" ")); + drawStatFloat(207, 417, BABY_Z_VAR * 100); + dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, 205, 419, F(" ")); } - DWIN_Draw_Rectangle(1, Line_Color, 0, 449, DWIN_WIDTH, 451); + dwinDrawRectangle(1, Line_Color, 0, 449, DWIN_WIDTH, 451); - DWIN_ICON_Show(ICON, ICON_MaxSpeedX, 10, 456); - DWIN_ICON_Show(ICON, ICON_MaxSpeedY, 95, 456); - DWIN_ICON_Show(ICON, ICON_MaxSpeedZ, 180, 456); + dwinIconShow(ICON, ICON_MaxSpeedX, 10, 456); + dwinIconShow(ICON, ICON_MaxSpeedY, 95, 456); + dwinIconShow(ICON, ICON_MaxSpeedZ, 180, 456); _draw_xyz_position(true); if (with_update) { - DWIN_UpdateLCD(); + dwinUpdateLCD(); delay(5); } } -void HMI_StartFrame(const bool with_update) { - Goto_MainMenu(); - Draw_Status_Area(with_update); +void hmiStartFrame(const bool with_update) { + gotoMainMenu(); + drawStatusArea(with_update); } -void Draw_Info_Menu() { - Clear_Main_Window(); +void drawInfoMenu() { + clearMainWindow(); - DWIN_Draw_String(false, font8x16, Color_White, Color_Bg_Black, (DWIN_WIDTH - strlen(MACHINE_SIZE) * MENU_CHR_W) / 2, 122, F(MACHINE_SIZE)); - DWIN_Draw_String(false, font8x16, Color_White, Color_Bg_Black, (DWIN_WIDTH - strlen(SHORT_BUILD_VERSION) * MENU_CHR_W) / 2, 195, F(SHORT_BUILD_VERSION)); + dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, (DWIN_WIDTH - strlen(MACHINE_SIZE) * MENU_CHR_W) / 2, 122, F(MACHINE_SIZE)); + dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, (DWIN_WIDTH - strlen(SHORT_BUILD_VERSION) * MENU_CHR_W) / 2, 195, F(SHORT_BUILD_VERSION)); - if (HMI_IsChinese()) { - DWIN_Frame_TitleCopy(30, 17, 28, 13); // "Info" + if (hmiIsChinese()) { + dwinFrameTitleCopy(30, 17, 28, 13); // "Info" - DWIN_Frame_AreaCopy(1, 197, 149, 252, 161, 108, 102); // "Size" - DWIN_Frame_AreaCopy(1, 1, 164, 56, 176, 108, 175); // "Firmware Version" - DWIN_Frame_AreaCopy(1, 58, 164, 113, 176, 105, 248); // "Contact Details" + dwinFrameAreaCopy(1, 197, 149, 252, 161, 108, 102); // "Size" + dwinFrameAreaCopy(1, 1, 164, 56, 176, 108, 175); // "Firmware Version" + dwinFrameAreaCopy(1, 58, 164, 113, 176, 105, 248); // "Contact Details" } else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_INFO_SCREEN)); + drawTitle(GET_TEXT_F(MSG_INFO_SCREEN)); #else - DWIN_Frame_TitleCopy(192, 15, 23, 12); // "Info" + dwinFrameTitleCopy(192, 15, 23, 12); // "Info" #endif - DWIN_Frame_AreaCopy(1, 120, 150, 146, 161, 124, 102); // "Size" - DWIN_Frame_AreaCopy(1, 146, 151, 254, 161, 82, 175); // "Firmware Version" - DWIN_Frame_AreaCopy(1, 1, 164, 96, 175, 89, 248); // "Contact details" + dwinFrameAreaCopy(1, 120, 150, 146, 161, 124, 102); // "Size" + dwinFrameAreaCopy(1, 146, 151, 254, 161, 82, 175); // "Firmware Version" + dwinFrameAreaCopy(1, 1, 164, 96, 175, 89, 248); // "Contact details" } - DWIN_Draw_String(false, font8x16, Color_White, Color_Bg_Black, (DWIN_WIDTH - strlen(CORP_WEBSITE) * MENU_CHR_W) / 2, 268, F(CORP_WEBSITE)); + dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, (DWIN_WIDTH - strlen(CORP_WEBSITE) * MENU_CHR_W) / 2, 268, F(CORP_WEBSITE)); - Draw_Back_First(); + drawBackFirst(); for (uint8_t i = 0; i < 3; ++i) { - DWIN_ICON_Show(ICON, ICON_PrintSize + i, 26, 99 + i * 73); - DWIN_Draw_Line(Line_Color, 16, MBASE(2) + i * 73, 256, 156 + i * 73); + dwinIconShow(ICON, ICON_PrintSize + i, 26, 99 + i * 73); + dwinDrawLine(Line_Color, 16, MBASE(2) + i * 73, 256, 156 + i * 73); } } -void Draw_Print_File_Menu() { - Clear_Title_Bar(); +void drawPrintFileMenu() { + clearTitleBar(); - if (HMI_IsChinese()) - DWIN_Frame_TitleCopy(0, 31, 56, 14); // "Print file" + if (hmiIsChinese()) + dwinFrameTitleCopy(0, 31, 56, 14); // "Print file" else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_MEDIA_MENU)); + drawTitle(GET_TEXT_F(MSG_MEDIA_MENU)); #else - DWIN_Frame_TitleCopy(52, 31, 86, 11); // "Print file" + dwinFrameTitleCopy(52, 31, 86, 11); // "Print file" #endif } - Redraw_SD_List(); + redrawSDList(); } // Main Process -void HMI_MainMenu() { +void hmiMainMenu() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_CW) { if (select_page.inc(4)) { switch (select_page.now) { - case PAGE_PRINT: ICON_Print(); break; - case PAGE_PREPARE: ICON_Print(); ICON_Prepare(); break; - case PAGE_CONTROL: ICON_Prepare(); ICON_Control(); break; - case PAGE_INFO_LEVELING: ICON_Control(); TERN(HAS_ONESTEP_LEVELING, ICON_Leveling, ICON_StartInfo)(); break; + case PAGE_PRINT: iconPrint(); break; + case PAGE_PREPARE: iconPrint(); iconPrepare(); break; + case PAGE_CONTROL: iconPrepare(); iconControl(); break; + case PAGE_INFO_LEVELING: iconControl(); TERN(HAS_ONESTEP_LEVELING, iconLeveling, iconStartInfo)(); break; } } } else if (encoder_diffState == ENCODER_DIFF_CCW) { if (select_page.dec()) { switch (select_page.now) { - case PAGE_PRINT: ICON_Print(); ICON_Prepare(); break; - case PAGE_PREPARE: ICON_Prepare(); ICON_Control(); break; - case PAGE_CONTROL: ICON_Control(); TERN(HAS_ONESTEP_LEVELING, ICON_Leveling, ICON_StartInfo)(); break; - case PAGE_INFO_LEVELING: TERN(HAS_ONESTEP_LEVELING, ICON_Leveling, ICON_StartInfo)(); break; + case PAGE_PRINT: iconPrint(); iconPrepare(); break; + case PAGE_PREPARE: iconPrepare(); iconControl(); break; + case PAGE_CONTROL: iconControl(); TERN(HAS_ONESTEP_LEVELING, iconLeveling, iconStartInfo)(); break; + case PAGE_INFO_LEVELING: TERN(HAS_ONESTEP_LEVELING, iconLeveling, iconStartInfo)(); break; } } } @@ -2089,39 +2085,39 @@ void HMI_MainMenu() { switch (select_page.now) { case PAGE_PRINT: checkkey = SelectFile; - Draw_Print_File_Menu(); + drawPrintFileMenu(); break; case PAGE_PREPARE: checkkey = Prepare; select_prepare.reset(); index_prepare = MROWS; - Draw_Prepare_Menu(); + drawPrepareMenu(); break; case PAGE_CONTROL: checkkey = Control; select_control.reset(); index_control = MROWS; - Draw_Control_Menu(); + drawControlMenu(); break; case PAGE_INFO_LEVELING: #if HAS_ONESTEP_LEVELING checkkey = Leveling; - HMI_Leveling(); + hmiLeveling(); #else checkkey = Info; - Draw_Info_Menu(); + drawInfoMenu(); #endif break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } // Select (and Print) File -void HMI_SelectFile() { +void hmiSelectFile() { EncoderState encoder_diffState = get_encoder_state(); const uint16_t hasUpDir = !card.flag.workDirIsRoot; @@ -2134,8 +2130,8 @@ void HMI_SelectFile() { if (ELAPSED(ms, shift_ms)) { const bool was_reset = shift_amt < 0; shift_ms = ms + 375UL + was_reset * 250UL; // ms per character - uint8_t shift_new = shift_amt + 1; // Try to shift by... - Draw_SDItem_Shifted(shift_new); // Draw the item + uint8_t shift_new = shift_amt + 1; // Try to shift by... + drawSDItemShifted(shift_new); // Draw the item if (!was_reset && shift_new == 0) // Was it limited to 0? shift_ms = 0; // No scrolling needed else if (shift_new == shift_amt) // Scroll reached the end @@ -2156,52 +2152,52 @@ void HMI_SelectFile() { if (select_file.inc(1 + fullCnt)) { const uint8_t itemnum = select_file.now - 1; // -1 for "Back" if (TERN0(SCROLL_LONG_FILENAMES, shift_ms)) { // If line was shifted - Erase_Menu_Text(itemnum + MROWS - index_file); // Erase and - Draw_SDItem(itemnum - 1); // redraw + eraseMenuText(itemnum + MROWS - index_file); // Erase and + drawSDItem(itemnum - 1); // redraw } if (select_file.now > MROWS && select_file.now > index_file) { // Cursor past the bottom index_file = select_file.now; // New bottom line - Scroll_Menu(DWIN_SCROLL_UP); - Draw_SDItem(itemnum, MROWS); // Draw and init the shift name + scrollMenu(DWIN_SCROLL_UP); + drawSDItem(itemnum, MROWS); // Draw and init the shift name } else { - Move_Highlight(1, select_file.now + MROWS - index_file); // Just move highlight - TERN_(SCROLL_LONG_FILENAMES, Init_Shift_Name()); // ...and init the shift name + moveHighlight(1, select_file.now + MROWS - index_file); // Just move highlight + TERN_(SCROLL_LONG_FILENAMES, initShiftName()); // ...and init the shift name } - TERN_(SCROLL_LONG_FILENAMES, Init_SDItem_Shift()); + TERN_(SCROLL_LONG_FILENAMES, initSDItemShift()); } } else if (encoder_diffState == ENCODER_DIFF_CCW && fullCnt) { if (select_file.dec()) { const uint8_t itemnum = select_file.now - 1; // -1 for "Back" if (TERN0(SCROLL_LONG_FILENAMES, shift_ms)) { // If line was shifted - Erase_Menu_Text(select_file.now + 1 + MROWS - index_file); // Erase and - Draw_SDItem(itemnum + 1); // redraw + eraseMenuText(select_file.now + 1 + MROWS - index_file); // Erase and + drawSDItem(itemnum + 1); // redraw } if (select_file.now < index_file - MROWS) { // Cursor past the top index_file--; // New bottom line - Scroll_Menu(DWIN_SCROLL_DOWN); + scrollMenu(DWIN_SCROLL_DOWN); if (index_file == MROWS) { - Draw_Back_First(); + drawBackFirst(); TERN_(SCROLL_LONG_FILENAMES, shift_ms = 0); } else - Draw_SDItem(itemnum, 0); // Draw the item (and init shift name) + drawSDItem(itemnum, 0); // Draw the item (and init shift name) } else { - Move_Highlight(-1, select_file.now + MROWS - index_file); // Just move highlight - TERN_(SCROLL_LONG_FILENAMES, Init_Shift_Name()); // ...and init the shift name + moveHighlight(-1, select_file.now + MROWS - index_file); // Just move highlight + TERN_(SCROLL_LONG_FILENAMES, initShiftName()); // ...and init the shift name } - TERN_(SCROLL_LONG_FILENAMES, Init_SDItem_Shift()); // Reset left. Init timer. + TERN_(SCROLL_LONG_FILENAMES, initSDItemShift()); // Reset left. Init timer. } } else if (encoder_diffState == ENCODER_DIFF_ENTER) { if (select_file.now == CASE_BACK) { // Back select_page.set(0); - Goto_MainMenu(); + gotoMainMenu(); } else if (hasUpDir && select_file.now == 1) { // CD-Up - SDCard_Up(); + sdCardUp(); goto HMI_SelectFileExit; } else { @@ -2210,7 +2206,7 @@ void HMI_SelectFile() { // Enter that folder! if (card.flag.filenameIsDir) { - SDCard_Folder(card.filename); + sdCardFolder(card.filename); goto HMI_SelectFileExit; } @@ -2219,9 +2215,9 @@ void HMI_SelectFile() { select_file.reset(); // Start choice and print SD file - HMI_flag.heat_flag = true; - HMI_flag.print_finish = false; - HMI_ValueStruct.show_mode = 0; + hmiFlag.heat_flag = true; + hmiFlag.print_finish = false; + hmiValues.show_mode = 0; card.openAndPrintFile(card.filename); @@ -2234,22 +2230,22 @@ void HMI_SelectFile() { _card_percent = 0; _remain_time = 0; - Goto_PrintProcess(); + gotoPrintProcess(); } } HMI_SelectFileExit: - DWIN_UpdateLCD(); + dwinUpdateLCD(); } // Printing -void HMI_Printing() { +void hmiPrinting() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (HMI_flag.done_confirm_flag) { + if (hmiFlag.done_confirm_flag) { if (encoder_diffState == ENCODER_DIFF_ENTER) { - HMI_flag.done_confirm_flag = false; + hmiFlag.done_confirm_flag = false; dwin_abort_flag = true; // Reset feedrate, return to Home } return; @@ -2259,18 +2255,18 @@ void HMI_Printing() { if (encoder_diffState == ENCODER_DIFF_CW) { if (select_print.inc(3)) { switch (select_print.now) { - case PRINT_SETUP: ICON_Tune(); break; - case PRINT_PAUSE_RESUME: ICON_Tune(); ICON_ResumeOrPause(); break; - case PRINT_STOP: ICON_ResumeOrPause(); ICON_Stop(); break; + case PRINT_SETUP: iconTune(); break; + case PRINT_PAUSE_RESUME: iconTune(); iconResumeOrPause(); break; + case PRINT_STOP: iconResumeOrPause(); iconStop(); break; } } } else if (encoder_diffState == ENCODER_DIFF_CCW) { if (select_print.dec()) { switch (select_print.now) { - case PRINT_SETUP: ICON_Tune(); ICON_ResumeOrPause(); break; - case PRINT_PAUSE_RESUME: ICON_ResumeOrPause(); ICON_Stop(); break; - case PRINT_STOP: ICON_Stop(); break; + case PRINT_SETUP: iconTune(); iconResumeOrPause(); break; + case PRINT_PAUSE_RESUME: iconResumeOrPause(); iconStop(); break; + case PRINT_STOP: iconStop(); break; } } } @@ -2278,15 +2274,15 @@ void HMI_Printing() { switch (select_print.now) { case PRINT_SETUP: checkkey = Tune; - HMI_ValueStruct.show_mode = 0; + hmiValues.show_mode = 0; select_tune.reset(); index_tune = MROWS; - Draw_Tune_Menu(); + drawTuneMenu(); break; case PRINT_PAUSE_RESUME: - if (HMI_flag.pause_flag) { - ICON_Pause(); + if (hmiFlag.pause_flag) { + iconPause(); char cmd[40]; cmd[0] = '\0'; @@ -2302,181 +2298,181 @@ void HMI_Printing() { queue.inject(cmd); } else { - HMI_flag.select_flag = true; + hmiFlag.select_flag = true; checkkey = Print_window; - Popup_window_PauseOrStop(); + popupwindowPauseOrStop(); } break; case PRINT_STOP: - HMI_flag.select_flag = true; + hmiFlag.select_flag = true; checkkey = Print_window; - Popup_window_PauseOrStop(); + popupwindowPauseOrStop(); break; default: break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } // Pause and Stop window -void HMI_PauseOrStop() { +void hmiPauseOrStop() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_CW) - Draw_Select_Highlight(false); + drawSelectHighlight(false); else if (encoder_diffState == ENCODER_DIFF_CCW) - Draw_Select_Highlight(true); + drawSelectHighlight(true); else if (encoder_diffState == ENCODER_DIFF_ENTER) { if (select_print.now == PRINT_PAUSE_RESUME) { - if (HMI_flag.select_flag) { - HMI_flag.pause_action = true; + if (hmiFlag.select_flag) { + hmiFlag.pause_action = true; queue.inject(F("M25")); } - Goto_PrintProcess(); + gotoPrintProcess(); } else if (select_print.now == PRINT_STOP) { - if (HMI_flag.select_flag) { + if (hmiFlag.select_flag) { checkkey = Back_Main; - wait_for_heatup = wait_for_user = false; // Stop waiting for heating/user - card.abortFilePrintSoon(); // Let the main loop handle SD abort - dwin_abort_flag = true; // Reset feedrate, return to Home + wait_for_heatup = wait_for_user = false; // Stop waiting for heating/user + card.abortFilePrintSoon(); // Let the main loop handle SD abort + dwin_abort_flag = true; // Reset feedrate, return to Home #ifdef ACTION_ON_CANCEL hostui.cancel(); #endif - Popup_Window_Home(true); - if (HMI_flag.home_flag) planner.synchronize(); // Wait for planner moves to finish! + popupWindowHome(true); + if (hmiFlag.home_flag) planner.synchronize(); // Wait for planner moves to finish! } else - Goto_PrintProcess(); // cancel stop + gotoPrintProcess(); // cancel stop } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void Draw_Move_Menu() { - Clear_Main_Window(); +void drawMoveMenu() { + clearMainWindow(); - if (HMI_IsChinese()) { - DWIN_Frame_TitleCopy(192, 1, 42, 14); // "Move" - Item_AreaCopy(58, 118, 106, 132, 1); - Item_AreaCopy(109, 118, 157, 132, 2); - Item_AreaCopy(160, 118, 209, 132, 3); - TERN_(HAS_HOTEND, Item_AreaCopy(212, 118, 253, 131, 4)); + if (hmiIsChinese()) { + dwinFrameTitleCopy(192, 1, 42, 14); // "Move" + itemAreaCopy(58, 118, 106, 132, 1); + itemAreaCopy(109, 118, 157, 132, 2); + itemAreaCopy(160, 118, 209, 132, 3); + TERN_(HAS_HOTEND, itemAreaCopy(212, 118, 253, 131, 4)); } else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_MOVE_AXIS)); + drawTitle(GET_TEXT_F(MSG_MOVE_AXIS)); #else - DWIN_Frame_TitleCopy(231, 2, 35, 11); // "Move" + dwinFrameTitleCopy(231, 2, 35, 11); // "Move" #endif #ifdef USE_STRING_TITLES - DWIN_Draw_Label(1, GET_TEXT_F(MSG_MOVE_X)); - DWIN_Draw_Label(2, GET_TEXT_F(MSG_MOVE_Y)); - DWIN_Draw_Label(3, GET_TEXT_F(MSG_MOVE_Z)); - TERN_(HAS_HOTEND, DWIN_Draw_Label(4, GET_TEXT_F(MSG_MOVE_E))); + dwinDrawLabel(1, GET_TEXT_F(MSG_MOVE_X)); + dwinDrawLabel(2, GET_TEXT_F(MSG_MOVE_Y)); + dwinDrawLabel(3, GET_TEXT_F(MSG_MOVE_Z)); + TERN_(HAS_HOTEND, dwinDrawLabel(4, GET_TEXT_F(MSG_MOVE_E))); #else say_move_en(1); say_x_en(38, 1); // "Move X" say_move_en(2); say_y_en(38, 2); // "Move Y" say_move_en(3); say_z_en(38, 3); // "Move Z" - TERN_(HAS_HOTEND, (say_move_en(4), Item_AreaCopy(99, 194, 151, 204, 4, 38))); // "Move Extruder" + TERN_(HAS_HOTEND, (say_move_en(4), itemAreaCopy(99, 194, 151, 204, 4, 38))); // "Move Extruder" #endif } - Draw_Back_First(select_axis.now == CASE_BACK); - if (select_axis.now != CASE_BACK) Draw_Menu_Cursor(select_axis.now); + drawBackFirst(select_axis.now == CASE_BACK); + if (select_axis.now != CASE_BACK) drawMenuCursor(select_axis.now); // Draw separators and icons - for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) Draw_Menu_Line(i + 1, ICON_MoveX + i); + for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) drawMenuLine(i + 1, ICON_MoveX + i); } -void Item_Adv_HomeOffsets(const uint8_t row) { - if (false && HMI_IsChinese()) { +void itemAdvHomeOffsets(const uint8_t row) { + if (false && hmiIsChinese()) { // TODO: Chinese "Set Home Offsets" } else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, GET_TEXT_F(MSG_SET_HOME_OFFSETS)); + dwinDrawLabel(row, GET_TEXT_F(MSG_SET_HOME_OFFSETS)); #else - Item_AreaCopy(1, 76, 102, 87, row); // "Set Home Offsets" + itemAreaCopy(1, 76, 102, 87, row); // "Set Home Offsets" #endif } - Draw_Menu_Line(row, ICON_HomeOffset); - Draw_More_Icon(row); + drawMenuLine(row, ICON_HomeOffset); + drawMoreIcon(row); } #if HAS_ONESTEP_LEVELING - void Item_Adv_ProbeOffsets(const uint8_t row) { - if (false && HMI_IsChinese()) { + void itemAdvProbeOffsets(const uint8_t row) { + if (false && hmiIsChinese()) { // TODO: Chinese "Probe Offsets" } else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, GET_TEXT_F(MSG_ZPROBE_OFFSETS)); + dwinDrawLabel(row, GET_TEXT_F(MSG_ZPROBE_OFFSETS)); #else say_probe_offs_en(row); #endif } - Draw_Menu_Line(row, ICON_ProbeOffset); - Draw_More_Icon(row); + drawMenuLine(row, ICON_ProbeOffset); + drawMoreIcon(row); } #endif -void Item_Adv_HotendPID(const uint8_t row) { - if (false && HMI_IsChinese()) { +void itemAdvHotendPID(const uint8_t row) { + if (false && hmiIsChinese()) { // TODO: Chinese "Hotend PID" } else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, F("Hotend PID")); + dwinDrawLabel(row, F("Hotend PID")); #else - Item_AreaCopy(96, 104, 167, 114, row); // "Hotend PID" + itemAreaCopy(96, 104, 167, 114, row); // "Hotend PID" #endif } - Draw_Menu_Line(row, ICON_PIDNozzle); + drawMenuLine(row, ICON_PIDNozzle); } -void Item_Adv_BedPID(const uint8_t row) { - if (false && HMI_IsChinese()) { +void itemAdvBedPID(const uint8_t row) { + if (false && hmiIsChinese()) { // TODO: Chinese "Bed PID" } else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, F("Bed PID")); + dwinDrawLabel(row, F("Bed PID")); #else - Item_AreaCopy(241, 104, 263, 115, row); // "Bed" - Item_AreaCopy(145, 104, 167, 114, row, 27); // "PID" + itemAreaCopy(241, 104, 263, 115, row); // "Bed" + itemAreaCopy(145, 104, 167, 114, row, 27); // "PID" #endif } - Draw_Menu_Line(row, ICON_PIDbed); + drawMenuLine(row, ICON_PIDbed); } #if ENABLED(POWER_LOSS_RECOVERY) - void Item_Adv_PLR(const uint8_t row) { - if (false && HMI_IsChinese()) { + void itemAdv_PLR(const uint8_t row) { + if (false && hmiIsChinese()) { // TODO: Chinese "Power-loss Recovery" } else { #ifdef USE_STRING_TITLES - DWIN_Draw_Label(row, GET_TEXT_F(MSG_ZPROBE_OFFSETS)); + dwinDrawLabel(row, GET_TEXT_F(MSG_ZPROBE_OFFSETS)); #else - Item_AreaCopy(1, 208, 137, 221, row); // "Power-loss Recovery" + itemAreaCopy(1, 208, 137, 221, row); // "Power-loss Recovery" #endif } - Draw_Menu_Line(row, ICON_Motion); - Draw_Checkbox_Line(row, recovery.enabled); + drawMenuLine(row, ICON_Motion); + drawCheckboxLine(row, recovery.enabled); } #endif -void Draw_AdvancedSettings_Menu() { - Clear_Main_Window(); +void drawAdvancedSettingsMenu() { + clearMainWindow(); #if ADVSET_CASE_TOTAL >= TROWS const int16_t scroll = MROWS - index_advset; // Scrolled-up lines @@ -2486,128 +2482,128 @@ void Draw_AdvancedSettings_Menu() { #define ASCROL(L) (scroll + (L)) #define AVISI(L) VISI(ADVSET_CASE_TOTAL, L, ASCROL(L)) - if (false && HMI_IsChinese()) { + if (false && hmiIsChinese()) { // TODO: Chinese "Advanced Settings" } else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_ADVANCED_SETTINGS)); + drawTitle(GET_TEXT_F(MSG_ADVANCED_SETTINGS)); #else - DWIN_Frame_TitleCopy(93, 401, 126, 15); // "Advanced Settings" + dwinFrameTitleCopy(93, 401, 126, 15); // "Advanced Settings" #endif } - if (AVISI(0)) Draw_Back_First(select_advset.now == CASE_BACK); - if (AVISI(ADVSET_CASE_HOMEOFF)) Item_Adv_HomeOffsets(ASCROL(ADVSET_CASE_HOMEOFF)); // Set Home Offsets > + if (AVISI(0)) drawBackFirst(select_advset.now == CASE_BACK); + if (AVISI(ADVSET_CASE_HOMEOFF)) itemAdvHomeOffsets(ASCROL(ADVSET_CASE_HOMEOFF)); // Set Home Offsets > #if HAS_ONESTEP_LEVELING - if (AVISI(ADVSET_CASE_PROBEOFF)) Item_Adv_ProbeOffsets(ASCROL(ADVSET_CASE_PROBEOFF)); // Probe Offsets > + if (AVISI(ADVSET_CASE_PROBEOFF)) itemAdvProbeOffsets(ASCROL(ADVSET_CASE_PROBEOFF)); // Probe Offsets > #endif - if (AVISI(ADVSET_CASE_HEPID)) Item_Adv_HotendPID(ASCROL(ADVSET_CASE_HEPID)); // Nozzle PID - if (AVISI(ADVSET_CASE_BEDPID)) Item_Adv_BedPID(ASCROL(ADVSET_CASE_BEDPID)); // Bed PID + if (AVISI(ADVSET_CASE_HEPID)) itemAdvHotendPID(ASCROL(ADVSET_CASE_HEPID)); // Nozzle PID + if (AVISI(ADVSET_CASE_BEDPID)) itemAdvBedPID(ASCROL(ADVSET_CASE_BEDPID)); // Bed PID #if ENABLED(POWER_LOSS_RECOVERY) - if (AVISI(ADVSET_CASE_PWRLOSSR)) Item_Adv_PLR(ASCROL(ADVSET_CASE_PWRLOSSR)); // Power-loss recovery + if (AVISI(ADVSET_CASE_PWRLOSSR)) itemAdv_PLR(ASCROL(ADVSET_CASE_PWRLOSSR)); // Power-loss recovery #endif - if (select_advset.now != CASE_BACK) Draw_Menu_Cursor(ASCROL(select_advset.now)); + if (select_advset.now != CASE_BACK) drawMenuCursor(ASCROL(select_advset.now)); } -void Item_HomeOffs_X(const uint8_t row) { - if (false && HMI_IsChinese()) { +void itemHomeOffs_X(const uint8_t row) { + if (false && hmiIsChinese()) { // TODO: Chinese "Home Offset X" } else { #ifdef USE_STRING_TITLES - Draw_Menu_Line(row, ICON_HomeOffsetX, GET_TEXT_F(MSG_HOME_OFFSET_X)); + drawMenuLine(row, ICON_HomeOffsetX, GET_TEXT_F(MSG_HOME_OFFSET_X)); #else say_home_offs_en(row); say_x_en(75, row); // "Home Offset X" #endif } - Draw_Menu_Line(row, ICON_HomeOffset); - Draw_Edit_Signed_Float3(row, HMI_ValueStruct.Home_OffX_scaled); + drawMenuLine(row, ICON_HomeOffset); + drawEditSignedFloat3(row, hmiValues.Home_OffX_scaled); } -void Item_HomeOffs_Y(const uint8_t row) { - if (false && HMI_IsChinese()) { +void itemHomeOffs_Y(const uint8_t row) { + if (false && hmiIsChinese()) { // TODO: Chinese "Home Offset Y" } else { #ifdef USE_STRING_TITLES - Draw_Menu_Line(row, ICON_HomeOffsetY, GET_TEXT_F(MSG_HOME_OFFSET_Y)); + drawMenuLine(row, ICON_HomeOffsetY, GET_TEXT_F(MSG_HOME_OFFSET_Y)); #else say_home_offs_en(row); say_y_en(75, row); // "Home Offset X" #endif } - Draw_Menu_Line(row, ICON_HomeOffset); - Draw_Edit_Signed_Float3(row, HMI_ValueStruct.Home_OffY_scaled); + drawMenuLine(row, ICON_HomeOffset); + drawEditSignedFloat3(row, hmiValues.Home_OffY_scaled); } -void Item_HomeOffs_Z(const uint8_t row) { - if (false && HMI_IsChinese()) { +void itemHomeOffs_Z(const uint8_t row) { + if (false && hmiIsChinese()) { // TODO: Chinese "Home Offset Z" } else { #ifdef USE_STRING_TITLES - Draw_Menu_Line(row, ICON_HomeOffsetZ, GET_TEXT_F(MSG_HOME_OFFSET_Z)); + drawMenuLine(row, ICON_HomeOffsetZ, GET_TEXT_F(MSG_HOME_OFFSET_Z)); #else say_home_offs_en(row); say_z_en(75, row); // "Home Offset Z" #endif } - Draw_Menu_Line(row, ICON_HomeOffset); - Draw_Edit_Signed_Float3(row, HMI_ValueStruct.Home_OffZ_scaled); + drawMenuLine(row, ICON_HomeOffset); + drawEditSignedFloat3(row, hmiValues.Home_OffZ_scaled); } -void Draw_HomeOff_Menu() { - Clear_Main_Window(); - if (false && HMI_IsChinese()) { +void drawHomeOffMenu() { + clearMainWindow(); + if (false && hmiIsChinese()) { // TODO: Chinese "Home Offsets" } else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_SET_HOME_OFFSETS)); + drawTitle(GET_TEXT_F(MSG_SET_HOME_OFFSETS)); #else - DWIN_Frame_TitleCopy(1, 401, 91, 12); // "Home Offsets" + dwinFrameTitleCopy(1, 401, 91, 12); // "Home Offsets" #endif } - Draw_Back_First(select_item.now == CASE_BACK); - Item_HomeOffs_X(1); // "Home Offset X" - Item_HomeOffs_Y(2); // "Home Offset Y" - Item_HomeOffs_Z(3); // "Home Offset Z" - if (select_item.now != CASE_BACK) Draw_Menu_Cursor(select_item.now); + drawBackFirst(select_item.now == CASE_BACK); + itemHomeOffs_X(1); // "Home Offset X" + itemHomeOffs_Y(2); // "Home Offset Y" + itemHomeOffs_Z(3); // "Home Offset Z" + if (select_item.now != CASE_BACK) drawMenuCursor(select_item.now); } #if HAS_ONESTEP_LEVELING - void Draw_ProbeOff_Menu() { - Clear_Main_Window(); - Draw_Back_First(select_item.now == CASE_BACK); - if (false && HMI_IsChinese()) { + void drawProbeOffMenu() { + clearMainWindow(); + drawBackFirst(select_item.now == CASE_BACK); + if (false && hmiIsChinese()) { // TODO: Chinese "Probe Offsets" } else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_ZPROBE_OFFSETS)); + drawTitle(GET_TEXT_F(MSG_ZPROBE_OFFSETS)); #else - DWIN_Frame_TitleCopy(124, 431, 91, 12); // "Probe Offsets" + dwinFrameTitleCopy(124, 431, 91, 12); // "Probe Offsets" #endif #ifdef USE_STRING_TITLES - Draw_Menu_Line(1, ICON_ProbeOffsetX, GET_TEXT_F(MSG_ZPROBE_XOFFSET)); // Probe X Offset - Draw_Menu_Line(2, ICON_ProbeOffsetY, GET_TEXT_F(MSG_ZPROBE_YOFFSET)); // Probe Y Offset + drawMenuLine(1, ICON_ProbeOffsetX, GET_TEXT_F(MSG_ZPROBE_XOFFSET)); // Probe X Offset + drawMenuLine(2, ICON_ProbeOffsetY, GET_TEXT_F(MSG_ZPROBE_YOFFSET)); // Probe Y Offset #else say_probe_offs_en(1); say_x_en(75, 1); // "Probe Offset X" say_probe_offs_en(2); say_y_en(75, 2); // "Probe Offset Y" #endif } - Draw_Edit_Signed_Float3(1, HMI_ValueStruct.Probe_OffX_scaled); - Draw_Edit_Signed_Float3(2, HMI_ValueStruct.Probe_OffY_scaled); + drawEditSignedFloat3(1, hmiValues.Probe_OffX_scaled); + drawEditSignedFloat3(2, hmiValues.Probe_OffY_scaled); - if (select_item.now != CASE_BACK) Draw_Menu_Cursor(select_item.now); + if (select_item.now != CASE_BACK) drawMenuCursor(select_item.now); } #endif #include "../../../libs/buzzer.h" -void HMI_AudioFeedback(const bool success=true) { +void hmiAudioFeedback(const bool success=true) { if (success) { BUZZ(100, 659); BUZZ(10, 0); @@ -2618,7 +2614,7 @@ void HMI_AudioFeedback(const bool success=true) { } // Prepare -void HMI_Prepare() { +void hmiPrepare() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; @@ -2629,22 +2625,22 @@ void HMI_Prepare() { index_prepare = select_prepare.now; // Scroll up and draw a blank bottom line - Scroll_Menu(DWIN_SCROLL_UP); - Draw_Menu_Icon(MROWS, ICON_Axis + select_prepare.now - 1); + scrollMenu(DWIN_SCROLL_UP); + drawMenuIcon(MROWS, ICON_Axis + select_prepare.now - 1); // Draw "More" icon for sub-menus - if (index_prepare < 7) Draw_More_Icon(MROWS - index_prepare + 1); + if (index_prepare < 7) drawMoreIcon(MROWS - index_prepare + 1); #if PREHEAT_COUNT > 1 - if (index_prepare == PREPARE_CASE_ABS) Item_Prepare_ABS(MROWS); + if (index_prepare == PREPARE_CASE_ABS) itemPrepare_ABS(MROWS); #endif #if HAS_HOTEND || HAS_HEATED_BED - if (index_prepare == PREPARE_CASE_COOL) Item_Prepare_Cool(MROWS); + if (index_prepare == PREPARE_CASE_COOL) itemPrepareCool(MROWS); #endif - if (index_prepare == PREPARE_CASE_LANG) Item_Prepare_Lang(MROWS); + if (index_prepare == PREPARE_CASE_LANG) itemPrepareLang(MROWS); } else { - Move_Highlight(1, select_prepare.now + MROWS - index_prepare); + moveHighlight(1, select_prepare.now + MROWS - index_prepare); } } } @@ -2652,21 +2648,21 @@ void HMI_Prepare() { if (select_prepare.dec()) { if (select_prepare.now < index_prepare - MROWS) { index_prepare--; - Scroll_Menu(DWIN_SCROLL_DOWN); + scrollMenu(DWIN_SCROLL_DOWN); if (index_prepare == MROWS) - Draw_Back_First(); + drawBackFirst(); else - Draw_Menu_Line(0, ICON_Axis + select_prepare.now - 1); + drawMenuLine(0, ICON_Axis + select_prepare.now - 1); - if (index_prepare < 7) Draw_More_Icon(MROWS - index_prepare + 1); + if (index_prepare < 7) drawMoreIcon(MROWS - index_prepare + 1); - if (index_prepare == 6) Item_Prepare_Move(0); - else if (index_prepare == 7) Item_Prepare_Disable(0); - else if (index_prepare == 8) Item_Prepare_Home(0); + if (index_prepare == 6) itemPrepareMove(0); + else if (index_prepare == 7) itemPrepareDisable(0); + else if (index_prepare == 8) itemPrepareHome(0); } else { - Move_Highlight(-1, select_prepare.now + MROWS - index_prepare); + moveHighlight(-1, select_prepare.now + MROWS - index_prepare); } } } @@ -2674,19 +2670,19 @@ void HMI_Prepare() { switch (select_prepare.now) { case CASE_BACK: select_page.set(1); - Goto_MainMenu(); + gotoMainMenu(); break; case PREPARE_CASE_MOVE: checkkey = AxisMove; select_axis.reset(); - Draw_Move_Menu(); + drawMoveMenu(); - Draw_Edit_Float3(1, current_position.x * MINUNITMULT); - Draw_Edit_Float3(2, current_position.y * MINUNITMULT); - Draw_Edit_Float3(3, current_position.z * MINUNITMULT); + drawEditFloat3(1, current_position.x * MINUNITMULT); + drawEditFloat3(2, current_position.y * MINUNITMULT); + drawEditFloat3(3, current_position.z * MINUNITMULT); #if HAS_HOTEND - HMI_ValueStruct.Move_E_scaled = current_position.e * MINUNITMULT; - Draw_Edit_Signed_Float3(4, HMI_ValueStruct.Move_E_scaled); + hmiValues.Move_E_scaled = current_position.e * MINUNITMULT; + drawEditSignedFloat3(4, hmiValues.Move_E_scaled); #endif break; @@ -2696,21 +2692,21 @@ void HMI_Prepare() { checkkey = Last_Prepare; index_prepare = MROWS; queue.inject_P(G28_STR); // G28 will set home_flag - Popup_Window_Home(); + popupWindowHome(); break; #if HAS_ZOFFSET_ITEM case PREPARE_CASE_ZOFF: #if ANY(HAS_BED_PROBE, BABYSTEPPING) checkkey = Homeoffset; - HMI_ValueStruct.show_mode = -4; - HMI_ValueStruct.offset_value = BABY_Z_VAR * 100; - Draw_Edit_Signed_Float2(PREPARE_CASE_ZOFF + MROWS - index_prepare, HMI_ValueStruct.offset_value, true); - EncoderRate.enabled = true; + hmiValues.show_mode = -4; + hmiValues.offset_value = BABY_Z_VAR * 100; + drawEditSignedFloat2(PREPARE_CASE_ZOFF + MROWS - index_prepare, hmiValues.offset_value, true); + encoderRate.enabled = true; #else // Apply workspace offset, making the current position 0,0,0 queue.inject(F("G92X0Y0Z0")); - HMI_AudioFeedback(); + hmiAudioFeedback(); #endif break; #endif @@ -2730,113 +2726,113 @@ void HMI_Prepare() { #endif case PREPARE_CASE_LANG: - HMI_ToggleLanguage(); - Draw_Prepare_Menu(); + hmiToggleLanguage(); + drawPrepareMenu(); break; default: break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void Draw_Temperature_Menu() { - Clear_Main_Window(); +void drawTemperatureMenu() { + clearMainWindow(); - if (HMI_IsChinese()) { - DWIN_Frame_TitleCopy(236, 2, 28, 12); // "Temperature" + if (hmiIsChinese()) { + dwinFrameTitleCopy(236, 2, 28, 12); // "Temperature" #if HAS_HOTEND - Item_AreaCopy(1, 134, 56, 146, TEMP_CASE_TEMP); + itemAreaCopy(1, 134, 56, 146, TEMP_CASE_TEMP); #endif #if HAS_HEATED_BED - Item_AreaCopy(58, 134, 113, 146, TEMP_CASE_BED); + itemAreaCopy(58, 134, 113, 146, TEMP_CASE_BED); #endif #if HAS_FAN - Item_AreaCopy(115, 134, 170, 146, TEMP_CASE_FAN); + itemAreaCopy(115, 134, 170, 146, TEMP_CASE_FAN); #endif #if HAS_PREHEAT - Item_AreaCopy(100, 89, 178, 101, TEMP_CASE_PLA); + itemAreaCopy(100, 89, 178, 101, TEMP_CASE_PLA); #if PREHEAT_COUNT > 1 - Item_AreaCopy(180, 89, 260, 100, TEMP_CASE_ABS); + itemAreaCopy(180, 89, 260, 100, TEMP_CASE_ABS); #endif #endif } else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_TEMPERATURE)); + drawTitle(GET_TEXT_F(MSG_TEMPERATURE)); #else - DWIN_Frame_TitleCopy(56, 15, 85, 14); // "Temperature" + dwinFrameTitleCopy(56, 15, 85, 14); // "Temperature" #endif #ifdef USE_STRING_TITLES #if HAS_HOTEND - DWIN_Draw_Label(TEMP_CASE_TEMP, GET_TEXT_F(MSG_UBL_SET_TEMP_HOTEND)); + dwinDrawLabel(TEMP_CASE_TEMP, GET_TEXT_F(MSG_UBL_SET_TEMP_HOTEND)); #endif #if HAS_HEATED_BED - DWIN_Draw_Label(TEMP_CASE_BED, GET_TEXT_F(MSG_UBL_SET_TEMP_BED)); + dwinDrawLabel(TEMP_CASE_BED, GET_TEXT_F(MSG_UBL_SET_TEMP_BED)); #endif #if HAS_FAN - DWIN_Draw_Label(TEMP_CASE_FAN, GET_TEXT_F(MSG_FAN_SPEED)); + dwinDrawLabel(TEMP_CASE_FAN, GET_TEXT_F(MSG_FAN_SPEED)); #endif #if HAS_PREHEAT - DWIN_Draw_Label(TEMP_CASE_PLA, F(PREHEAT_1_LABEL " Preheat Settings")); + dwinDrawLabel(TEMP_CASE_PLA, F(PREHEAT_1_LABEL " Preheat Settings")); #if PREHEAT_COUNT > 1 - DWIN_Draw_Label(TEMP_CASE_ABS, F(PREHEAT_2_LABEL " Preheat Settings")); + dwinDrawLabel(TEMP_CASE_ABS, F(PREHEAT_2_LABEL " Preheat Settings")); #endif #endif #else #if HAS_HOTEND - Item_AreaCopy(197, 104, 238, 114, TEMP_CASE_TEMP); // "Nozzle" - Item_AreaCopy(1, 89, 83, 101, TEMP_CASE_TEMP, 44); // "Temperature" + itemAreaCopy(197, 104, 238, 114, TEMP_CASE_TEMP); // "Nozzle" + itemAreaCopy(1, 89, 83, 101, TEMP_CASE_TEMP, 44); // "Temperature" #endif #if HAS_HEATED_BED - Item_AreaCopy(240, 104, 264, 114, TEMP_CASE_BED); // "Bed" - Item_AreaCopy(1, 89, 83, 101, TEMP_CASE_BED, 27); // "Temperature" + itemAreaCopy(240, 104, 264, 114, TEMP_CASE_BED); // "Bed" + itemAreaCopy(1, 89, 83, 101, TEMP_CASE_BED, 27); // "Temperature" #endif #if HAS_FAN - Item_AreaCopy( 1, 119, 61, 132, TEMP_CASE_FAN); // "Fan speed" + itemAreaCopy( 1, 119, 61, 132, TEMP_CASE_FAN); // "Fan speed" #endif #if HAS_PREHEAT - Item_AreaCopy(107, 76, 156, 86, TEMP_CASE_PLA); // "Preheat" + itemAreaCopy(107, 76, 156, 86, TEMP_CASE_PLA); // "Preheat" say_pla_en(52, TEMP_CASE_PLA); // "PLA" - Item_AreaCopy(150, 135, 202, 148, TEMP_CASE_PLA, 79); // "Settings" + itemAreaCopy(150, 135, 202, 148, TEMP_CASE_PLA, 79); // "Settings" #if PREHEAT_COUNT > 1 - Item_AreaCopy(107, 76, 156, 86, TEMP_CASE_ABS); // "Preheat" + itemAreaCopy(107, 76, 156, 86, TEMP_CASE_ABS); // "Preheat" say_abs_en(52, TEMP_CASE_ABS); // "ABS" - Item_AreaCopy(150, 135, 202, 148, TEMP_CASE_ABS, 81); // "Settings" + itemAreaCopy(150, 135, 202, 148, TEMP_CASE_ABS, 81); // "Settings" #endif #endif #endif } - Draw_Back_First(select_temp.now == CASE_BACK); - if (select_temp.now != CASE_BACK) Draw_Menu_Cursor(select_temp.now); + drawBackFirst(select_temp.now == CASE_BACK); + if (select_temp.now != CASE_BACK) drawMenuCursor(select_temp.now); // Draw icons and lines uint8_t i = 0; - #define _TMENU_ICON(N) Draw_Menu_Line(++i, ICON_SetEndTemp + (N) - 1) + #define _TMENU_ICON(N) drawMenuLine(++i, ICON_SetEndTemp + (N) - 1) #if HAS_HOTEND _TMENU_ICON(TEMP_CASE_TEMP); - Draw_Edit_Integer3(i, thermalManager.degTargetHotend(0)); + drawEditInteger3(i, thermalManager.degTargetHotend(0)); #endif #if HAS_HEATED_BED _TMENU_ICON(TEMP_CASE_BED); - Draw_Edit_Integer3(i, thermalManager.degTargetBed()); + drawEditInteger3(i, thermalManager.degTargetBed()); #endif #if HAS_FAN _TMENU_ICON(TEMP_CASE_FAN); - Draw_Edit_Integer3(i, thermalManager.fan_speed[0]); + drawEditInteger3(i, thermalManager.fan_speed[0]); #endif #if HAS_PREHEAT // PLA/ABS items have submenus - _TMENU_ICON(TEMP_CASE_PLA); Draw_More_Icon(i); + _TMENU_ICON(TEMP_CASE_PLA); drawMoreIcon(i); #if PREHEAT_COUNT > 1 - _TMENU_ICON(TEMP_CASE_ABS); Draw_More_Icon(i); + _TMENU_ICON(TEMP_CASE_ABS); drawMoreIcon(i); #endif #endif } // Control -void HMI_Control() { +void hmiControl() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; @@ -2847,107 +2843,107 @@ void HMI_Control() { index_control = select_control.now; // Scroll up and draw a blank bottom line - Scroll_Menu(DWIN_SCROLL_UP); + scrollMenu(DWIN_SCROLL_UP); switch (index_control) { // Last menu items - case CONTROL_CASE_ADVSET: Item_Control_Advanced(MROWS); break; - case CONTROL_CASE_INFO: Item_Control_Info(MROWS); break; + case CONTROL_CASE_ADVSET: itemControlAdvanced(MROWS); break; + case CONTROL_CASE_INFO: itemControlInfo(MROWS); break; default: break; } } else - Move_Highlight(1, select_control.now + MROWS - index_control); + moveHighlight(1, select_control.now + MROWS - index_control); } } else if (encoder_diffState == ENCODER_DIFF_CCW) { if (select_control.dec()) { if (select_control.now < index_control - MROWS) { index_control--; - Scroll_Menu(DWIN_SCROLL_DOWN); + scrollMenu(DWIN_SCROLL_DOWN); switch (index_control) { // First menu items - case MROWS: Draw_Back_First(); break; - case MROWS + 1: Item_Control_Temp(0); break; - case MROWS + 2: Item_Control_Motion(0); break; + case MROWS: drawBackFirst(); break; + case MROWS + 1: itemControlTemp(0); break; + case MROWS + 2: itemControlMotion(0); break; default: break; } } else - Move_Highlight(-1, select_control.now + MROWS - index_control); + moveHighlight(-1, select_control.now + MROWS - index_control); } } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_control.now) { case CASE_BACK: select_page.set(2); - Goto_MainMenu(); + gotoMainMenu(); break; case CONTROL_CASE_TEMP: checkkey = TemperatureID; - HMI_ValueStruct.show_mode = -1; + hmiValues.show_mode = -1; select_temp.reset(); - Draw_Temperature_Menu(); + drawTemperatureMenu(); break; case CONTROL_CASE_MOVE: checkkey = Motion; select_motion.reset(); - Draw_Motion_Menu(); + drawMotionMenu(); break; #if ENABLED(EEPROM_SETTINGS) case CONTROL_CASE_SAVE: { const bool success = settings.save(); - HMI_AudioFeedback(success); + hmiAudioFeedback(success); } break; case CONTROL_CASE_LOAD: { const bool success = settings.load(); - HMI_AudioFeedback(success); + hmiAudioFeedback(success); } break; case CONTROL_CASE_RESET: settings.reset(); - HMI_AudioFeedback(); + hmiAudioFeedback(); break; #endif case CONTROL_CASE_ADVSET: checkkey = AdvSet; select_advset.reset(); - Draw_AdvancedSettings_Menu(); + drawAdvancedSettingsMenu(); break; case CONTROL_CASE_INFO: checkkey = Info; - Draw_Info_Menu(); + drawInfoMenu(); break; default: break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } #if HAS_ONESTEP_LEVELING // Leveling - void HMI_Leveling() { - Popup_Window_Leveling(); - DWIN_UpdateLCD(); + void hmiLeveling() { + popupWindowLeveling(); + dwinUpdateLCD(); queue.inject(F("G28O\nG29")); } #endif // Axis Move -void HMI_AxisMove() { +void hmiAxisMove() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; #if ENABLED(PREVENT_COLD_EXTRUSION) // popup window resume - if (HMI_flag.cold_flag) { + if (hmiFlag.cold_flag) { if (encoder_diffState == ENCODER_DIFF_ENTER) { - HMI_flag.cold_flag = false; - HMI_ValueStruct.Move_E_scaled = current_position.e * MINUNITMULT; - Draw_Move_Menu(); - Draw_Edit_Float3(1, HMI_ValueStruct.Move_X_scaled); - Draw_Edit_Float3(2, HMI_ValueStruct.Move_Y_scaled); - Draw_Edit_Float3(3, HMI_ValueStruct.Move_Z_scaled); - Draw_Edit_Signed_Float3(4, 0); - DWIN_UpdateLCD(); + hmiFlag.cold_flag = false; + hmiValues.Move_E_scaled = current_position.e * MINUNITMULT; + drawMoveMenu(); + drawEditFloat3(1, hmiValues.Move_X_scaled); + drawEditFloat3(2, hmiValues.Move_Y_scaled); + drawEditFloat3(3, hmiValues.Move_Z_scaled); + drawEditSignedFloat3(4, 0); + dwinUpdateLCD(); } return; } @@ -2955,10 +2951,10 @@ void HMI_AxisMove() { // Avoid flicker by updating only the previous menu if (encoder_diffState == ENCODER_DIFF_CW) { - if (select_axis.inc(1 + 3 + ENABLED(HAS_HOTEND))) Move_Highlight(1, select_axis.now); + if (select_axis.inc(1 + 3 + ENABLED(HAS_HOTEND))) moveHighlight(1, select_axis.now); } else if (encoder_diffState == ENCODER_DIFF_CCW) { - if (select_axis.dec()) Move_Highlight(-1, select_axis.now); + if (select_axis.dec()) moveHighlight(-1, select_axis.now); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_axis.now) { @@ -2966,58 +2962,58 @@ void HMI_AxisMove() { checkkey = Prepare; select_prepare.set(1); index_prepare = MROWS; - Draw_Prepare_Menu(); + drawPrepareMenu(); break; case 1: // X axis move checkkey = Move_X; - HMI_ValueStruct.Move_X_scaled = current_position.x * MINUNITMULT; - Draw_Edit_Float3(1, HMI_ValueStruct.Move_X_scaled, true); - EncoderRate.enabled = true; + hmiValues.Move_X_scaled = current_position.x * MINUNITMULT; + drawEditFloat3(1, hmiValues.Move_X_scaled, true); + encoderRate.enabled = true; break; case 2: // Y axis move checkkey = Move_Y; - HMI_ValueStruct.Move_Y_scaled = current_position.y * MINUNITMULT; - Draw_Edit_Float3(2, HMI_ValueStruct.Move_Y_scaled, true); - EncoderRate.enabled = true; + hmiValues.Move_Y_scaled = current_position.y * MINUNITMULT; + drawEditFloat3(2, hmiValues.Move_Y_scaled, true); + encoderRate.enabled = true; break; case 3: // Z axis move checkkey = Move_Z; - HMI_ValueStruct.Move_Z_scaled = current_position.z * MINUNITMULT; - Draw_Edit_Float3(3, HMI_ValueStruct.Move_Z_scaled, true); - EncoderRate.enabled = true; + hmiValues.Move_Z_scaled = current_position.z * MINUNITMULT; + drawEditFloat3(3, hmiValues.Move_Z_scaled, true); + encoderRate.enabled = true; break; #if HAS_HOTEND case 4: // Extruder #if ENABLED(PREVENT_COLD_EXTRUSION) if (thermalManager.tooColdToExtrude(0)) { - HMI_flag.cold_flag = true; - Popup_Window_ETempTooLow(); - DWIN_UpdateLCD(); + hmiFlag.cold_flag = true; + popupWindowETempTooLow(); + dwinUpdateLCD(); return; } #endif checkkey = Extruder; - HMI_ValueStruct.Move_E_scaled = current_position.e * MINUNITMULT; - Draw_Edit_Signed_Float3(4, HMI_ValueStruct.Move_E_scaled, true); - EncoderRate.enabled = true; + hmiValues.Move_E_scaled = current_position.e * MINUNITMULT; + drawEditSignedFloat3(4, hmiValues.Move_E_scaled, true); + encoderRate.enabled = true; break; #endif } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } // TemperatureID -void HMI_Temperature() { +void hmiTemperature() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; // Avoid flicker by updating only the previous menu if (encoder_diffState == ENCODER_DIFF_CW) { - if (select_temp.inc(1 + TEMP_CASE_TOTAL)) Move_Highlight(1, select_temp.now); + if (select_temp.inc(1 + TEMP_CASE_TOTAL)) moveHighlight(1, select_temp.now); } else if (encoder_diffState == ENCODER_DIFF_CCW) { - if (select_temp.dec()) Move_Highlight(-1, select_temp.now); + if (select_temp.dec()) moveHighlight(-1, select_temp.now); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_temp.now) { @@ -3025,30 +3021,30 @@ void HMI_Temperature() { checkkey = Control; select_control.set(1); index_control = MROWS; - Draw_Control_Menu(); + drawControlMenu(); break; #if HAS_HOTEND case TEMP_CASE_TEMP: checkkey = ETemp; - HMI_ValueStruct.E_Temp = thermalManager.degTargetHotend(0); - Draw_Edit_Integer3(1, HMI_ValueStruct.E_Temp, true); - EncoderRate.enabled = true; + hmiValues.E_Temp = thermalManager.degTargetHotend(0); + drawEditInteger3(1, hmiValues.E_Temp, true); + encoderRate.enabled = true; break; #endif #if HAS_HEATED_BED case TEMP_CASE_BED: checkkey = BedTemp; - HMI_ValueStruct.Bed_Temp = thermalManager.degTargetBed(); - Draw_Edit_Integer3(2, HMI_ValueStruct.Bed_Temp, true); - EncoderRate.enabled = true; + hmiValues.Bed_Temp = thermalManager.degTargetBed(); + drawEditInteger3(2, hmiValues.Bed_Temp, true); + encoderRate.enabled = true; break; #endif #if HAS_FAN case TEMP_CASE_FAN: checkkey = FanSpeed; - HMI_ValueStruct.Fan_speed = thermalManager.fan_speed[0]; - Draw_Edit_Integer3(3, HMI_ValueStruct.Fan_speed, true); - EncoderRate.enabled = true; + hmiValues.Fan_speed = thermalManager.fan_speed[0]; + drawEditInteger3(3, hmiValues.Fan_speed, true); + encoderRate.enabled = true; break; #endif @@ -3056,77 +3052,77 @@ void HMI_Temperature() { case TEMP_CASE_PLA: { checkkey = PLAPreheat; select_PLA.reset(); - HMI_ValueStruct.show_mode = -2; + hmiValues.show_mode = -2; - Clear_Main_Window(); + clearMainWindow(); - if (HMI_IsChinese()) { - DWIN_Frame_TitleCopy(59, 16, 81, 14); // "PLA Settings" - Item_AreaCopy(100, 89, 124, 101, PREHEAT_CASE_TEMP); - Item_AreaCopy(1, 134, 56, 146, PREHEAT_CASE_TEMP, 24); // PLA nozzle temp + if (hmiIsChinese()) { + dwinFrameTitleCopy(59, 16, 81, 14); // "PLA Settings" + itemAreaCopy(100, 89, 124, 101, PREHEAT_CASE_TEMP); + itemAreaCopy(1, 134, 56, 146, PREHEAT_CASE_TEMP, 24); // PLA nozzle temp #if HAS_HEATED_BED - Item_AreaCopy(100, 89, 124, 101, PREHEAT_CASE_BED); - Item_AreaCopy(58, 134, 113, 146, PREHEAT_CASE_BED, 24); // PLA bed temp + itemAreaCopy(100, 89, 124, 101, PREHEAT_CASE_BED); + itemAreaCopy(58, 134, 113, 146, PREHEAT_CASE_BED, 24); // PLA bed temp #endif #if HAS_FAN - Item_AreaCopy(100, 89, 124, 101, PREHEAT_CASE_FAN); - Item_AreaCopy(115, 134, 170, 146, PREHEAT_CASE_FAN, 24); // PLA fan speed + itemAreaCopy(100, 89, 124, 101, PREHEAT_CASE_FAN); + itemAreaCopy(115, 134, 170, 146, PREHEAT_CASE_FAN, 24); // PLA fan speed #endif #if ENABLED(EEPROM_SETTINGS) - Item_AreaCopy(72, 148, 151, 162, PREHEAT_CASE_SAVE); // Save PLA configuration + itemAreaCopy(72, 148, 151, 162, PREHEAT_CASE_SAVE); // Save PLA configuration #endif } else { #ifdef USE_STRING_HEADINGS - Draw_Title(F(PREHEAT_1_LABEL " Settings")); // TODO: GET_TEXT_F + drawTitle(F(PREHEAT_1_LABEL " Settings")); // TODO: GET_TEXT_F #else - DWIN_Frame_TitleCopy(56, 15, 85, 14); // "Temperature" TODO: "PLA Settings" + dwinFrameTitleCopy(56, 15, 85, 14); // "Temperature" TODO: "PLA Settings" #endif #ifdef USE_STRING_TITLES - DWIN_Draw_Label(PREHEAT_CASE_TEMP, F("Nozzle Temp")); + dwinDrawLabel(PREHEAT_CASE_TEMP, F("Nozzle Temp")); #if HAS_HEATED_BED - DWIN_Draw_Label(PREHEAT_CASE_BED, F("Bed Temp")); + dwinDrawLabel(PREHEAT_CASE_BED, F("Bed Temp")); #endif #if HAS_FAN - DWIN_Draw_Label(PREHEAT_CASE_FAN, GET_TEXT_F(MSG_FAN_SPEED)); + dwinDrawLabel(PREHEAT_CASE_FAN, GET_TEXT_F(MSG_FAN_SPEED)); #endif #if ENABLED(EEPROM_SETTINGS) - DWIN_Draw_Label(PREHEAT_CASE_SAVE, GET_TEXT_F(MSG_STORE_EEPROM)); + dwinDrawLabel(PREHEAT_CASE_SAVE, GET_TEXT_F(MSG_STORE_EEPROM)); #endif #else say_pla_en(0, PREHEAT_CASE_TEMP); // "PLA" - Item_AreaCopy(198, 104, 237, 114, PREHEAT_CASE_TEMP, 27); // "Nozzle" - Item_AreaCopy(1, 89, 81, 102, PREHEAT_CASE_TEMP, 71); // "Temperature" + itemAreaCopy(198, 104, 237, 114, PREHEAT_CASE_TEMP, 27); // "Nozzle" + itemAreaCopy(1, 89, 81, 102, PREHEAT_CASE_TEMP, 71); // "Temperature" #if HAS_HEATED_BED say_pla_en(0, PREHEAT_CASE_BED); // "PLA" - Item_AreaCopy(240, 104, 264, 114, PREHEAT_CASE_BED, 27); // "Bed" - Item_AreaCopy(1, 89, 83, 101, PREHEAT_CASE_BED, 54); // "Temperature" + itemAreaCopy(240, 104, 264, 114, PREHEAT_CASE_BED, 27); // "Bed" + itemAreaCopy(1, 89, 83, 101, PREHEAT_CASE_BED, 54); // "Temperature" #endif #if HAS_FAN say_pla_en(0, PREHEAT_CASE_FAN); // "PLA" - Item_AreaCopy(0, 119, 64, 132, PREHEAT_CASE_FAN, 27); // "Fan speed" + itemAreaCopy(0, 119, 64, 132, PREHEAT_CASE_FAN, 27); // "Fan speed" #endif #if ENABLED(EEPROM_SETTINGS) - Item_AreaCopy(98, 164, 233, 177, PREHEAT_CASE_SAVE); // "Save PLA parameters" + itemAreaCopy(98, 164, 233, 177, PREHEAT_CASE_SAVE); // "Save PLA parameters" #endif #endif } - Draw_Back_First(); + drawBackFirst(); uint8_t i = 0; - Draw_Menu_Line(++i, ICON_SetEndTemp); - Draw_Edit_Integer3(i, ui.material_preset[0].hotend_temp); + drawMenuLine(++i, ICON_SetEndTemp); + drawEditInteger3(i, ui.material_preset[0].hotend_temp); #if HAS_HEATED_BED - Draw_Menu_Line(++i, ICON_SetBedTemp); - Draw_Edit_Integer3(i, ui.material_preset[0].bed_temp); + drawMenuLine(++i, ICON_SetBedTemp); + drawEditInteger3(i, ui.material_preset[0].bed_temp); #endif #if HAS_FAN - Draw_Menu_Line(++i, ICON_FanSpeed); - Draw_Edit_Integer3(i, ui.material_preset[0].fan_speed); + drawMenuLine(++i, ICON_FanSpeed); + drawEditInteger3(i, ui.material_preset[0].fan_speed); #endif #if ENABLED(EEPROM_SETTINGS) - Draw_Menu_Line(++i, ICON_WriteEEPROM); + drawMenuLine(++i, ICON_WriteEEPROM); #endif } break; #endif // HAS_PREHEAT @@ -3135,80 +3131,80 @@ void HMI_Temperature() { case TEMP_CASE_ABS: { // ABS preheat setting checkkey = ABSPreheat; select_ABS.reset(); - HMI_ValueStruct.show_mode = -3; + hmiValues.show_mode = -3; - Clear_Main_Window(); + clearMainWindow(); - if (HMI_IsChinese()) { - DWIN_Frame_TitleCopy(142, 16, 82, 14); // "ABS Settings" + if (hmiIsChinese()) { + dwinFrameTitleCopy(142, 16, 82, 14); // "ABS Settings" - Item_AreaCopy(180, 89, 204, 100, PREHEAT_CASE_TEMP); - Item_AreaCopy(1, 134, 56, 146, PREHEAT_CASE_TEMP, 24); // ABS nozzle temp + itemAreaCopy(180, 89, 204, 100, PREHEAT_CASE_TEMP); + itemAreaCopy(1, 134, 56, 146, PREHEAT_CASE_TEMP, 24); // ABS nozzle temp #if HAS_HEATED_BED - Item_AreaCopy(180, 89, 204, 100, PREHEAT_CASE_BED); - Item_AreaCopy(58, 134, 113, 146, PREHEAT_CASE_BED, 24); // ABS bed temp + itemAreaCopy(180, 89, 204, 100, PREHEAT_CASE_BED); + itemAreaCopy(58, 134, 113, 146, PREHEAT_CASE_BED, 24); // ABS bed temp #endif #if HAS_FAN - Item_AreaCopy(180, 89, 204, 100, PREHEAT_CASE_FAN); - Item_AreaCopy(115, 134, 170, 146, PREHEAT_CASE_FAN, 24); // ABS fan speed + itemAreaCopy(180, 89, 204, 100, PREHEAT_CASE_FAN); + itemAreaCopy(115, 134, 170, 146, PREHEAT_CASE_FAN, 24); // ABS fan speed #endif #if ENABLED(EEPROM_SETTINGS) - Item_AreaCopy(72, 148, 151, 162, PREHEAT_CASE_SAVE); - Item_AreaCopy(180, 89, 204, 100, PREHEAT_CASE_SAVE, 28, 2); // Save ABS configuration + itemAreaCopy(72, 148, 151, 162, PREHEAT_CASE_SAVE); + itemAreaCopy(180, 89, 204, 100, PREHEAT_CASE_SAVE, 28, 2); // Save ABS configuration #endif } else { #ifdef USE_STRING_HEADINGS - Draw_Title(F("ABS Settings")); // TODO: GET_TEXT_F + drawTitle(F("ABS Settings")); // TODO: GET_TEXT_F #else - DWIN_Frame_TitleCopy(56, 15, 85, 14); // "Temperature" TODO: "ABS Settings" + dwinFrameTitleCopy(56, 15, 85, 14); // "Temperature" TODO: "ABS Settings" #endif #ifdef USE_STRING_TITLES - DWIN_Draw_Label(PREHEAT_CASE_TEMP, F("Nozzle Temp")); + dwinDrawLabel(PREHEAT_CASE_TEMP, F("Nozzle Temp")); #if HAS_HEATED_BED - DWIN_Draw_Label(PREHEAT_CASE_BED, F("Bed Temp")); + dwinDrawLabel(PREHEAT_CASE_BED, F("Bed Temp")); #endif #if HAS_FAN - DWIN_Draw_Label(PREHEAT_CASE_FAN, GET_TEXT_F(MSG_FAN_SPEED)); + dwinDrawLabel(PREHEAT_CASE_FAN, GET_TEXT_F(MSG_FAN_SPEED)); #endif #if ENABLED(EEPROM_SETTINGS) - DWIN_Draw_Label(PREHEAT_CASE_SAVE, GET_TEXT_F(MSG_STORE_EEPROM)); + dwinDrawLabel(PREHEAT_CASE_SAVE, GET_TEXT_F(MSG_STORE_EEPROM)); #endif #else say_abs_en(0, PREHEAT_CASE_TEMP); // "ABS" - Item_AreaCopy(197, 104, 238, 114, PREHEAT_CASE_TEMP, 29); // "Nozzle" - Item_AreaCopy(1, 89, 34, 102, PREHEAT_CASE_TEMP, 73); // "Temp" + itemAreaCopy(197, 104, 238, 114, PREHEAT_CASE_TEMP, 29); // "Nozzle" + itemAreaCopy(1, 89, 34, 102, PREHEAT_CASE_TEMP, 73); // "Temp" #if HAS_HEATED_BED say_abs_en(0, PREHEAT_CASE_BED); // "ABS" - Item_AreaCopy(240, 104, 264, 114, PREHEAT_CASE_BED, 29); // "Bed" - Item_AreaCopy(1, 89, 83, 102, PREHEAT_CASE_BED, 56); // "Temperature" + itemAreaCopy(240, 104, 264, 114, PREHEAT_CASE_BED, 29); // "Bed" + itemAreaCopy(1, 89, 83, 102, PREHEAT_CASE_BED, 56); // "Temperature" #endif #if HAS_FAN say_abs_en(0, PREHEAT_CASE_FAN); // "ABS" - Item_AreaCopy(0, 119, 64, 132, PREHEAT_CASE_FAN, 29); // "Fan speed" + itemAreaCopy(0, 119, 64, 132, PREHEAT_CASE_FAN, 29); // "Fan speed" #endif #if ENABLED(EEPROM_SETTINGS) - Item_AreaCopy(98, 165, 233, 177, PREHEAT_CASE_SAVE); // "Save PLA parameters" + itemAreaCopy(98, 165, 233, 177, PREHEAT_CASE_SAVE); // "Save PLA parameters" say_abs_en(33, PREHEAT_CASE_SAVE); // "ABS" #endif #endif } - Draw_Back_First(); + drawBackFirst(); uint8_t i = 0; - Draw_Menu_Line(++i, ICON_SetEndTemp); - Draw_Edit_Integer3(i, ui.material_preset[1].hotend_temp); + drawMenuLine(++i, ICON_SetEndTemp); + drawEditInteger3(i, ui.material_preset[1].hotend_temp); #if HAS_HEATED_BED - Draw_Menu_Line(++i, ICON_SetBedTemp); - Draw_Edit_Integer3(i, ui.material_preset[1].bed_temp); + drawMenuLine(++i, ICON_SetBedTemp); + drawEditInteger3(i, ui.material_preset[1].bed_temp); #endif #if HAS_FAN - Draw_Menu_Line(++i, ICON_FanSpeed); - Draw_Edit_Integer3(i, ui.material_preset[1].fan_speed); + drawMenuLine(++i, ICON_FanSpeed); + drawEditInteger3(i, ui.material_preset[1].fan_speed); #endif #if ENABLED(EEPROM_SETTINGS) - Draw_Menu_Line(++i, ICON_WriteEEPROM); + drawMenuLine(++i, ICON_WriteEEPROM); #endif } break; @@ -3216,42 +3212,42 @@ void HMI_Temperature() { #endif // PREHEAT_COUNT > 1 } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void Draw_Max_Speed_Menu() { - Clear_Main_Window(); +void drawMaxSpeedMenu() { + clearMainWindow(); - if (HMI_IsChinese()) { - DWIN_Frame_TitleCopy(1, 16, 28, 13); // "Max Speed (mm/s)" + if (hmiIsChinese()) { + dwinFrameTitleCopy(1, 16, 28, 13); // "Max Speed (mm/s)" auto say_max_speed_cn = [](const uint8_t line) { - Item_AreaCopy(173, 133, 228, 147, line); // "Max speed" + itemAreaCopy(173, 133, 228, 147, line); // "Max speed" }; say_max_speed_cn(1); // "Max speed" - Item_AreaCopy(229, 133, 236, 147, 1, 58); // "X" + itemAreaCopy(229, 133, 236, 147, 1, 58); // "X" say_max_speed_cn(2); // "Max speed" - Item_AreaCopy(1, 150, 7, 160, 2, 58, 3); // "Y" + itemAreaCopy(1, 150, 7, 160, 2, 58, 3); // "Y" say_max_speed_cn(3); // "Max speed" - Item_AreaCopy(9, 150, 16, 160, 3, 58, 3); // "Z" + itemAreaCopy(9, 150, 16, 160, 3, 58, 3); // "Z" #if HAS_HOTEND say_max_speed_cn(4); // "Max speed" - Item_AreaCopy(18, 150, 25, 160, 4, 58, 3); // "E" + itemAreaCopy(18, 150, 25, 160, 4, 58, 3); // "E" #endif } else { #ifdef USE_STRING_HEADINGS - Draw_Title(F("Max Speed (mm/s)")); // TODO: GET_TEXT_F + drawTitle(F("Max Speed (mm/s)")); // TODO: GET_TEXT_F #else - DWIN_Frame_TitleCopy(144, 16, 46, 11); // "Max Speed (mm/s)" + dwinFrameTitleCopy(144, 16, 46, 11); // "Max Speed (mm/s)" #endif #ifdef USE_STRING_TITLES - DWIN_Draw_Label(1, F("Max Feedrate X")); - DWIN_Draw_Label(2, F("Max Feedrate Y")); - DWIN_Draw_Label(3, F("Max Feedrate Z")); + dwinDrawLabel(1, F("Max Feedrate X")); + dwinDrawLabel(2, F("Max Feedrate Y")); + dwinDrawLabel(3, F("Max Feedrate Z")); #if HAS_HOTEND - DWIN_Draw_Label(4, F("Max Feedrate E")); + dwinDrawLabel(4, F("Max Feedrate E")); #endif #else say_max_en(1); say_speed_en(30, 1); say_x_en(73, 1); // "Max Speed X" @@ -3263,49 +3259,49 @@ void Draw_Max_Speed_Menu() { #endif } - Draw_Back_First(); - for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) Draw_Menu_Line(i + 1, ICON_MaxSpeedX + i); - Draw_Edit_Integer4(1, planner.settings.max_feedrate_mm_s[X_AXIS]); - Draw_Edit_Integer4(2, planner.settings.max_feedrate_mm_s[Y_AXIS]); - Draw_Edit_Integer4(3, planner.settings.max_feedrate_mm_s[Z_AXIS]); + drawBackFirst(); + for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) drawMenuLine(i + 1, ICON_MaxSpeedX + i); + drawEditInteger4(1, planner.settings.max_feedrate_mm_s[X_AXIS]); + drawEditInteger4(2, planner.settings.max_feedrate_mm_s[Y_AXIS]); + drawEditInteger4(3, planner.settings.max_feedrate_mm_s[Z_AXIS]); #if HAS_HOTEND - Draw_Edit_Integer4(4, planner.settings.max_feedrate_mm_s[E_AXIS]); + drawEditInteger4(4, planner.settings.max_feedrate_mm_s[E_AXIS]); #endif } -void Draw_Max_Accel_Menu() { - Clear_Main_Window(); +void drawMaxAccelMenu() { + clearMainWindow(); - if (HMI_IsChinese()) { - DWIN_Frame_TitleCopy(1, 16, 28, 13); // "Acceleration" + if (hmiIsChinese()) { + dwinFrameTitleCopy(1, 16, 28, 13); // "Acceleration" - Item_AreaCopy(173, 133, 200, 147, 1); - Item_AreaCopy( 28, 149, 69, 161, 1, 30, 1); - Item_AreaCopy(229, 133, 236, 147, 1, 74); // Max acceleration X - Item_AreaCopy(173, 133, 200, 147, 2); - Item_AreaCopy( 28, 149, 69, 161, 2, 30, 1); - Item_AreaCopy( 1, 150, 7, 160, 2, 74, 2); // Max acceleration Y - Item_AreaCopy(173, 133, 200, 147, 3); - Item_AreaCopy( 28, 149, 69, 161, 3, 30, 1); - Item_AreaCopy( 9, 150, 16, 160, 3, 74, 2); // Max acceleration Z + itemAreaCopy(173, 133, 200, 147, 1); + itemAreaCopy( 28, 149, 69, 161, 1, 30, 1); + itemAreaCopy(229, 133, 236, 147, 1, 74); // Max acceleration X + itemAreaCopy(173, 133, 200, 147, 2); + itemAreaCopy( 28, 149, 69, 161, 2, 30, 1); + itemAreaCopy( 1, 150, 7, 160, 2, 74, 2); // Max acceleration Y + itemAreaCopy(173, 133, 200, 147, 3); + itemAreaCopy( 28, 149, 69, 161, 3, 30, 1); + itemAreaCopy( 9, 150, 16, 160, 3, 74, 2); // Max acceleration Z #if HAS_HOTEND - Item_AreaCopy(173, 133, 200, 147, 4); - Item_AreaCopy( 28, 149, 69, 161, 4, 30, 1); - Item_AreaCopy( 18, 150, 25, 160, 4, 74, 2); // Max acceleration E + itemAreaCopy(173, 133, 200, 147, 4); + itemAreaCopy( 28, 149, 69, 161, 4, 30, 1); + itemAreaCopy( 18, 150, 25, 160, 4, 74, 2); // Max acceleration E #endif } else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_ACCELERATION)); + drawTitle(GET_TEXT_F(MSG_ACCELERATION)); #else - DWIN_Frame_TitleCopy(144, 16, 46, 11); // "Acceleration" + dwinFrameTitleCopy(144, 16, 46, 11); // "Acceleration" #endif #ifdef USE_STRING_TITLES - DWIN_Draw_Label(1, F("Max Accel X")); - DWIN_Draw_Label(2, F("Max Accel Y")); - DWIN_Draw_Label(3, F("Max Accel Z")); + dwinDrawLabel(1, F("Max Accel X")); + dwinDrawLabel(2, F("Max Accel Y")); + dwinDrawLabel(3, F("Max Accel Z")); #if HAS_HOTEND - DWIN_Draw_Label(4, F("Max Accel E")); + dwinDrawLabel(4, F("Max Accel E")); #endif #else say_max_accel_en(1); say_x_en(112, 1); // "Max Acceleration X" @@ -3317,54 +3313,54 @@ void Draw_Max_Accel_Menu() { #endif } - Draw_Back_First(); - for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) Draw_Menu_Line(i + 1, ICON_MaxAccX + i); - Draw_Edit_Integer4(1, planner.settings.max_acceleration_mm_per_s2[X_AXIS]); - Draw_Edit_Integer4(2, planner.settings.max_acceleration_mm_per_s2[Y_AXIS]); - Draw_Edit_Integer4(3, planner.settings.max_acceleration_mm_per_s2[Z_AXIS]); + drawBackFirst(); + for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) drawMenuLine(i + 1, ICON_MaxAccX + i); + drawEditInteger4(1, planner.settings.max_acceleration_mm_per_s2[X_AXIS]); + drawEditInteger4(2, planner.settings.max_acceleration_mm_per_s2[Y_AXIS]); + drawEditInteger4(3, planner.settings.max_acceleration_mm_per_s2[Z_AXIS]); #if HAS_HOTEND - Draw_Edit_Integer4(4, planner.settings.max_acceleration_mm_per_s2[E_AXIS]); + drawEditInteger4(4, planner.settings.max_acceleration_mm_per_s2[E_AXIS]); #endif } #if HAS_CLASSIC_JERK - void Draw_Max_Jerk_Menu() { - Clear_Main_Window(); - - if (HMI_IsChinese()) { - DWIN_Frame_TitleCopy(1, 16, 28, 13); // "Jerk" - - Item_AreaCopy(173, 133, 200, 147, 1); - Item_AreaCopy( 1, 180, 28, 192, 1, 30, 1); - Item_AreaCopy(202, 133, 228, 147, 1, 56); - Item_AreaCopy(229, 133, 236, 147, 1, 86); // Max Jerk speed X - Item_AreaCopy(173, 133, 200, 147, 2); - Item_AreaCopy( 1, 180, 28, 192, 2, 30, 1); - Item_AreaCopy(202, 133, 228, 147, 2, 56); - Item_AreaCopy( 1, 150, 7, 160, 2, 86, 3); // Max Jerk speed Y - Item_AreaCopy(173, 133, 200, 147, 3); - Item_AreaCopy( 1, 180, 28, 192, 3, 30, 1); - Item_AreaCopy(202, 133, 228, 147, 3, 56); - Item_AreaCopy( 9, 150, 16, 160, 3, 86, 3); // Max Jerk speed Z + void drawMaxJerkMenu() { + clearMainWindow(); + + if (hmiIsChinese()) { + dwinFrameTitleCopy(1, 16, 28, 13); // "Jerk" + + itemAreaCopy(173, 133, 200, 147, 1); + itemAreaCopy( 1, 180, 28, 192, 1, 30, 1); + itemAreaCopy(202, 133, 228, 147, 1, 56); + itemAreaCopy(229, 133, 236, 147, 1, 86); // Max Jerk speed X + itemAreaCopy(173, 133, 200, 147, 2); + itemAreaCopy( 1, 180, 28, 192, 2, 30, 1); + itemAreaCopy(202, 133, 228, 147, 2, 56); + itemAreaCopy( 1, 150, 7, 160, 2, 86, 3); // Max Jerk speed Y + itemAreaCopy(173, 133, 200, 147, 3); + itemAreaCopy( 1, 180, 28, 192, 3, 30, 1); + itemAreaCopy(202, 133, 228, 147, 3, 56); + itemAreaCopy( 9, 150, 16, 160, 3, 86, 3); // Max Jerk speed Z #if HAS_HOTEND - Item_AreaCopy(173, 133, 200, 147, 4); - Item_AreaCopy( 1, 180, 28, 192, 4, 30, 1); - Item_AreaCopy(202, 133, 228, 147, 4, 56); - Item_AreaCopy( 18, 150, 25, 160, 4, 86, 3); // Max Jerk speed E + itemAreaCopy(173, 133, 200, 147, 4); + itemAreaCopy( 1, 180, 28, 192, 4, 30, 1); + itemAreaCopy(202, 133, 228, 147, 4, 56); + itemAreaCopy( 18, 150, 25, 160, 4, 86, 3); // Max Jerk speed E #endif } else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_JERK)); + drawTitle(GET_TEXT_F(MSG_JERK)); #else - DWIN_Frame_TitleCopy(144, 16, 46, 11); // "Jerk" + dwinFrameTitleCopy(144, 16, 46, 11); // "Jerk" #endif #ifdef USE_STRING_TITLES - DWIN_Draw_Label(1, GET_TEXT_F(MSG_VA_JERK)); - DWIN_Draw_Label(2, GET_TEXT_F(MSG_VB_JERK)); - DWIN_Draw_Label(3, GET_TEXT_F(MSG_VC_JERK)); + dwinDrawLabel(1, GET_TEXT_F(MSG_VA_JERK)); + dwinDrawLabel(2, GET_TEXT_F(MSG_VB_JERK)); + dwinDrawLabel(3, GET_TEXT_F(MSG_VC_JERK)); #if HAS_HOTEND - DWIN_Draw_Label(4, GET_TEXT_F(MSG_VE_JERK)); + dwinDrawLabel(4, GET_TEXT_F(MSG_VE_JERK)); #endif #else say_max_jerk_speed_en(1); say_x_en(102, 1); // Max Jerk speed X @@ -3376,46 +3372,46 @@ void Draw_Max_Accel_Menu() { #endif } - Draw_Back_First(); - for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) Draw_Menu_Line(i + 1, ICON_MaxSpeedJerkX + i); - Draw_Edit_Float3(1, planner.max_jerk.x * MINUNITMULT); - Draw_Edit_Float3(2, planner.max_jerk.y * MINUNITMULT); - Draw_Edit_Float3(3, planner.max_jerk.z * MINUNITMULT); + drawBackFirst(); + for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) drawMenuLine(i + 1, ICON_MaxSpeedJerkX + i); + drawEditFloat3(1, planner.max_jerk.x * MINUNITMULT); + drawEditFloat3(2, planner.max_jerk.y * MINUNITMULT); + drawEditFloat3(3, planner.max_jerk.z * MINUNITMULT); #if HAS_HOTEND - Draw_Edit_Float3(4, planner.max_jerk.e * MINUNITMULT); + drawEditFloat3(4, planner.max_jerk.e * MINUNITMULT); #endif } #endif -void Draw_Steps_Menu() { - Clear_Main_Window(); +void drawStepsMenu() { + clearMainWindow(); - if (HMI_IsChinese()) { - DWIN_Frame_TitleCopy(1, 16, 28, 13); // "Steps per mm" + if (hmiIsChinese()) { + dwinFrameTitleCopy(1, 16, 28, 13); // "Steps per mm" - Item_AreaCopy(153, 148, 194, 161, 1); - Item_AreaCopy(229, 133, 236, 147, 1, 44); // Transmission Ratio X - Item_AreaCopy(153, 148, 194, 161, 2); - Item_AreaCopy( 1, 150, 7, 160, 2, 44, 3); // Transmission Ratio Y - Item_AreaCopy(153, 148, 194, 161, 3); - Item_AreaCopy( 9, 150, 16, 160, 3, 44, 3); // Transmission Ratio Z + itemAreaCopy(153, 148, 194, 161, 1); + itemAreaCopy(229, 133, 236, 147, 1, 44); // Transmission Ratio X + itemAreaCopy(153, 148, 194, 161, 2); + itemAreaCopy( 1, 150, 7, 160, 2, 44, 3); // Transmission Ratio Y + itemAreaCopy(153, 148, 194, 161, 3); + itemAreaCopy( 9, 150, 16, 160, 3, 44, 3); // Transmission Ratio Z #if HAS_HOTEND - Item_AreaCopy(153, 148, 194, 161, 4); - Item_AreaCopy( 18, 150, 25, 160, 4, 44, 3); // Transmission Ratio E + itemAreaCopy(153, 148, 194, 161, 4); + itemAreaCopy( 18, 150, 25, 160, 4, 44, 3); // Transmission Ratio E #endif } else { #ifdef USE_STRING_HEADINGS - Draw_Title(GET_TEXT_F(MSG_STEPS_PER_MM)); + drawTitle(GET_TEXT_F(MSG_STEPS_PER_MM)); #else - DWIN_Frame_TitleCopy(144, 16, 46, 11); // "Steps per mm" + dwinFrameTitleCopy(144, 16, 46, 11); // "Steps per mm" #endif #ifdef USE_STRING_TITLES - DWIN_Draw_Label(1, GET_TEXT_F(MSG_A_STEPS)); - DWIN_Draw_Label(2, GET_TEXT_F(MSG_B_STEPS)); - DWIN_Draw_Label(3, GET_TEXT_F(MSG_C_STEPS)); + dwinDrawLabel(1, GET_TEXT_F(MSG_A_STEPS)); + dwinDrawLabel(2, GET_TEXT_F(MSG_B_STEPS)); + dwinDrawLabel(3, GET_TEXT_F(MSG_C_STEPS)); #if HAS_HOTEND - DWIN_Draw_Label(4, GET_TEXT_F(MSG_E_STEPS)); + dwinDrawLabel(4, GET_TEXT_F(MSG_E_STEPS)); #endif #else say_steps_per_mm_en(1); say_x_en(101, 1); // "Steps-per-mm X" @@ -3427,27 +3423,27 @@ void Draw_Steps_Menu() { #endif } - Draw_Back_First(); - for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) Draw_Menu_Line(i + 1, ICON_StepX + i); - Draw_Edit_Float3(1, planner.settings.axis_steps_per_mm[X_AXIS] * MINUNITMULT); - Draw_Edit_Float3(2, planner.settings.axis_steps_per_mm[Y_AXIS] * MINUNITMULT); - Draw_Edit_Float3(3, planner.settings.axis_steps_per_mm[Z_AXIS] * MINUNITMULT); + drawBackFirst(); + for (uint8_t i = 0; i < 3 + ENABLED(HAS_HOTEND); ++i) drawMenuLine(i + 1, ICON_StepX + i); + drawEditFloat3(1, planner.settings.axis_steps_per_mm[X_AXIS] * MINUNITMULT); + drawEditFloat3(2, planner.settings.axis_steps_per_mm[Y_AXIS] * MINUNITMULT); + drawEditFloat3(3, planner.settings.axis_steps_per_mm[Z_AXIS] * MINUNITMULT); #if HAS_HOTEND - Draw_Edit_Float3(4, planner.settings.axis_steps_per_mm[E_AXIS] * MINUNITMULT); + drawEditFloat3(4, planner.settings.axis_steps_per_mm[E_AXIS] * MINUNITMULT); #endif } // Motion -void HMI_Motion() { +void hmiMotion() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; // Avoid flicker by updating only the previous menu if (encoder_diffState == ENCODER_DIFF_CW) { - if (select_motion.inc(1 + MOTION_CASE_TOTAL)) Move_Highlight(1, select_motion.now); + if (select_motion.inc(1 + MOTION_CASE_TOTAL)) moveHighlight(1, select_motion.now); } else if (encoder_diffState == ENCODER_DIFF_CCW) { - if (select_motion.dec()) Move_Highlight(-1, select_motion.now); + if (select_motion.dec()) moveHighlight(-1, select_motion.now); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_motion.now) { @@ -3455,38 +3451,38 @@ void HMI_Motion() { checkkey = Control; select_control.set(CONTROL_CASE_MOVE); index_control = MROWS; - Draw_Control_Menu(); + drawControlMenu(); break; case MOTION_CASE_RATE: checkkey = MaxSpeed; select_speed.reset(); - Draw_Max_Speed_Menu(); + drawMaxSpeedMenu(); break; case MOTION_CASE_ACCEL: checkkey = MaxAcceleration; select_acc.reset(); - Draw_Max_Accel_Menu(); + drawMaxAccelMenu(); break; #if HAS_CLASSIC_JERK case MOTION_CASE_JERK: checkkey = MaxJerk; select_jerk.reset(); - Draw_Max_Jerk_Menu(); + drawMaxJerkMenu(); break; #endif case MOTION_CASE_STEPS: checkkey = Step; select_step.reset(); - Draw_Steps_Menu(); + drawStepsMenu(); break; default: break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } // Advanced Settings -void HMI_AdvSet() { +void hmiAdvSet() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; @@ -3497,7 +3493,7 @@ void HMI_AdvSet() { index_advset = select_advset.now; // Scroll up and draw a blank bottom line - Scroll_Menu(DWIN_SCROLL_UP); + scrollMenu(DWIN_SCROLL_UP); //switch (index_advset) { // Redraw last menu items // default: break; @@ -3505,7 +3501,7 @@ void HMI_AdvSet() { } else { - Move_Highlight(1, select_advset.now + MROWS - index_advset); + moveHighlight(1, select_advset.now + MROWS - index_advset); } } } @@ -3513,14 +3509,14 @@ void HMI_AdvSet() { if (select_advset.dec()) { if (select_advset.now < index_advset - MROWS) { index_advset--; - Scroll_Menu(DWIN_SCROLL_DOWN); + scrollMenu(DWIN_SCROLL_DOWN); //switch (index_advset) { // Redraw first menu items // default: break; //} } else { - Move_Highlight(-1, select_advset.now + MROWS - index_advset); + moveHighlight(-1, select_advset.now + MROWS - index_advset); } } } @@ -3530,17 +3526,17 @@ void HMI_AdvSet() { checkkey = Control; select_control.set(CONTROL_CASE_ADVSET); index_control = CONTROL_CASE_ADVSET; - Draw_Control_Menu(); + drawControlMenu(); break; #if HAS_HOME_OFFSET case ADVSET_CASE_HOMEOFF: checkkey = HomeOff; select_item.reset(); - HMI_ValueStruct.Home_OffX_scaled = home_offset.x * 10; - HMI_ValueStruct.Home_OffY_scaled = home_offset.y * 10; - HMI_ValueStruct.Home_OffZ_scaled = home_offset.z * 10; - Draw_HomeOff_Menu(); + hmiValues.Home_OffX_scaled = home_offset.x * 10; + hmiValues.Home_OffY_scaled = home_offset.y * 10; + hmiValues.Home_OffZ_scaled = home_offset.z * 10; + drawHomeOffMenu(); break; #endif @@ -3548,9 +3544,9 @@ void HMI_AdvSet() { case ADVSET_CASE_PROBEOFF: checkkey = ProbeOff; select_item.reset(); - HMI_ValueStruct.Probe_OffX_scaled = probe.offset.x * 10; - HMI_ValueStruct.Probe_OffY_scaled = probe.offset.y * 10; - Draw_ProbeOff_Menu(); + hmiValues.Probe_OffX_scaled = probe.offset.x * 10; + hmiValues.Probe_OffY_scaled = probe.offset.y * 10; + drawProbeOffMenu(); break; #endif @@ -3569,153 +3565,153 @@ void HMI_AdvSet() { #if ENABLED(POWER_LOSS_RECOVERY) case ADVSET_CASE_PWRLOSSR: recovery.enable(!recovery.enabled); - Draw_Checkbox_Line(ADVSET_CASE_PWRLOSSR + MROWS - index_advset, recovery.enabled); + drawCheckboxLine(ADVSET_CASE_PWRLOSSR + MROWS - index_advset, recovery.enabled); break; #endif default: break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } #if HAS_HOME_OFFSET // Home Offset - void HMI_HomeOff() { + void hmiHomeOff() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; // Avoid flicker by updating only the previous menu if (encoder_diffState == ENCODER_DIFF_CW) { - if (select_item.inc(1 + 3)) Move_Highlight(1, select_item.now); + if (select_item.inc(1 + 3)) moveHighlight(1, select_item.now); } else if (encoder_diffState == ENCODER_DIFF_CCW) { - if (select_item.dec()) Move_Highlight(-1, select_item.now); + if (select_item.dec()) moveHighlight(-1, select_item.now); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_item.now) { case CASE_BACK: checkkey = AdvSet; select_advset.set(ADVSET_CASE_HOMEOFF); - Draw_AdvancedSettings_Menu(); + drawAdvancedSettingsMenu(); break; case 1: // Home Offset X checkkey = HomeOffX; - Draw_Edit_Signed_Float3(1, HMI_ValueStruct.Home_OffX_scaled, true); - EncoderRate.enabled = true; + drawEditSignedFloat3(1, hmiValues.Home_OffX_scaled, true); + encoderRate.enabled = true; break; case 2: // Home Offset Y checkkey = HomeOffY; - Draw_Edit_Signed_Float3(2, HMI_ValueStruct.Home_OffY_scaled, true); - EncoderRate.enabled = true; + drawEditSignedFloat3(2, hmiValues.Home_OffY_scaled, true); + encoderRate.enabled = true; break; case 3: // Home Offset Z checkkey = HomeOffZ; - Draw_Edit_Signed_Float3(3, HMI_ValueStruct.Home_OffZ_scaled, true); - EncoderRate.enabled = true; + drawEditSignedFloat3(3, hmiValues.Home_OffZ_scaled, true); + encoderRate.enabled = true; break; default: break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } - void HMI_HomeOffN(const AxisEnum axis, float &posScaled, const_float_t lo, const_float_t hi) { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); + void hmiHomeOffN(const AxisEnum axis, float &posScaled, const_float_t lo, const_float_t hi) { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (Apply_Encoder(encoder_diffState, posScaled)) { + if (applyEncoder(encoder_diffState, posScaled)) { checkkey = HomeOff; - EncoderRate.enabled = false; + encoderRate.enabled = false; set_home_offset(axis, posScaled / 10); - Draw_Edit_Signed_Float3(select_item.now, posScaled); + drawEditSignedFloat3(select_item.now, posScaled); return; } LIMIT(posScaled, lo, hi); - Draw_Edit_Signed_Float3(select_item.now, posScaled, true); + drawEditSignedFloat3(select_item.now, posScaled, true); } - void HMI_HomeOffX() { HMI_HomeOffN(X_AXIS, HMI_ValueStruct.Home_OffX_scaled, -500, 500); } - void HMI_HomeOffY() { HMI_HomeOffN(Y_AXIS, HMI_ValueStruct.Home_OffY_scaled, -500, 500); } - void HMI_HomeOffZ() { HMI_HomeOffN(Z_AXIS, HMI_ValueStruct.Home_OffZ_scaled, -20, 20); } + void hmiHomeOffX() { hmiHomeOffN(X_AXIS, hmiValues.Home_OffX_scaled, -500, 500); } + void hmiHomeOffY() { hmiHomeOffN(Y_AXIS, hmiValues.Home_OffY_scaled, -500, 500); } + void hmiHomeOffZ() { hmiHomeOffN(Z_AXIS, hmiValues.Home_OffZ_scaled, -20, 20); } #endif // HAS_HOME_OFFSET #if HAS_ONESTEP_LEVELING // Probe Offset - void HMI_ProbeOff() { + void hmiProbeOff() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; // Avoid flicker by updating only the previous menu if (encoder_diffState == ENCODER_DIFF_CW) { - if (select_item.inc(1 + 2)) Move_Highlight(1, select_item.now); + if (select_item.inc(1 + 2)) moveHighlight(1, select_item.now); } else if (encoder_diffState == ENCODER_DIFF_CCW) { - if (select_item.dec()) Move_Highlight(-1, select_item.now); + if (select_item.dec()) moveHighlight(-1, select_item.now); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_item.now) { case CASE_BACK: checkkey = AdvSet; select_advset.set(ADVSET_CASE_PROBEOFF); - Draw_AdvancedSettings_Menu(); + drawAdvancedSettingsMenu(); break; case 1: // Probe Offset X checkkey = ProbeOffX; - Draw_Edit_Signed_Float3(1, HMI_ValueStruct.Probe_OffX_scaled, true); - EncoderRate.enabled = true; + drawEditSignedFloat3(1, hmiValues.Probe_OffX_scaled, true); + encoderRate.enabled = true; break; case 2: // Probe Offset Y checkkey = ProbeOffY; - Draw_Edit_Signed_Float3(2, HMI_ValueStruct.Probe_OffY_scaled, true); - EncoderRate.enabled = true; + drawEditSignedFloat3(2, hmiValues.Probe_OffY_scaled, true); + encoderRate.enabled = true; break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } - void HMI_ProbeOffN(float &posScaled, float &offset_ref) { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); + void hmiProbeOffN(float &posScaled, float &offset_ref) { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (Apply_Encoder(encoder_diffState, posScaled)) { + if (applyEncoder(encoder_diffState, posScaled)) { checkkey = ProbeOff; - EncoderRate.enabled = false; + encoderRate.enabled = false; offset_ref = posScaled / 10; - Draw_Edit_Signed_Float3(select_item.now, posScaled); + drawEditSignedFloat3(select_item.now, posScaled); return; } LIMIT(posScaled, -500, 500); - Draw_Edit_Signed_Float3(select_item.now, posScaled, true); + drawEditSignedFloat3(select_item.now, posScaled, true); } - void HMI_ProbeOffX() { HMI_ProbeOffN(HMI_ValueStruct.Probe_OffX_scaled, probe.offset.x); } - void HMI_ProbeOffY() { HMI_ProbeOffN(HMI_ValueStruct.Probe_OffY_scaled, probe.offset.y); } + void hmiProbeOffX() { hmiProbeOffN(hmiValues.Probe_OffX_scaled, probe.offset.x); } + void hmiProbeOffY() { hmiProbeOffN(hmiValues.Probe_OffY_scaled, probe.offset.y); } #endif // HAS_ONESTEP_LEVELING // Info -void HMI_Info() { +void hmiInfo() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_ENTER) { #if HAS_ONESTEP_LEVELING checkkey = Control; select_control.set(CONTROL_CASE_INFO); - Draw_Control_Menu(); + drawControlMenu(); #else select_page.set(3); - Goto_MainMenu(); + gotoMainMenu(); #endif } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } // Tune -void HMI_Tune() { +void hmiTune() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; @@ -3724,343 +3720,343 @@ void HMI_Tune() { if (select_tune.inc(1 + TUNE_CASE_TOTAL)) { if (select_tune.now > MROWS && select_tune.now > index_tune) { index_tune = select_tune.now; - Scroll_Menu(DWIN_SCROLL_UP); + scrollMenu(DWIN_SCROLL_UP); } else - Move_Highlight(1, select_tune.now + MROWS - index_tune); + moveHighlight(1, select_tune.now + MROWS - index_tune); } } else if (encoder_diffState == ENCODER_DIFF_CCW) { if (select_tune.dec()) { if (select_tune.now < index_tune - MROWS) { index_tune--; - Scroll_Menu(DWIN_SCROLL_DOWN); - if (index_tune == MROWS) Draw_Back_First(); + scrollMenu(DWIN_SCROLL_DOWN); + if (index_tune == MROWS) drawBackFirst(); } else - Move_Highlight(-1, select_tune.now + MROWS - index_tune); + moveHighlight(-1, select_tune.now + MROWS - index_tune); } } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_tune.now) { case 0: { // Back select_print.set(0); - Goto_PrintProcess(); + gotoPrintProcess(); } break; case TUNE_CASE_SPEED: // Print speed checkkey = PrintSpeed; - HMI_ValueStruct.print_speed = feedrate_percentage; - Draw_Edit_Integer3(TUNE_CASE_SPEED + MROWS - index_tune, HMI_ValueStruct.print_speed, true); - EncoderRate.enabled = true; + hmiValues.print_speed = feedrate_percentage; + drawEditInteger3(TUNE_CASE_SPEED + MROWS - index_tune, hmiValues.print_speed, true); + encoderRate.enabled = true; break; #if HAS_HOTEND case TUNE_CASE_TEMP: // Nozzle temp checkkey = ETemp; - HMI_ValueStruct.E_Temp = thermalManager.degTargetHotend(0); - Draw_Edit_Integer3(TUNE_CASE_TEMP + MROWS - index_tune, HMI_ValueStruct.E_Temp, true); - EncoderRate.enabled = true; + hmiValues.E_Temp = thermalManager.degTargetHotend(0); + drawEditInteger3(TUNE_CASE_TEMP + MROWS - index_tune, hmiValues.E_Temp, true); + encoderRate.enabled = true; break; #endif #if HAS_HEATED_BED case TUNE_CASE_BED: // Bed temp checkkey = BedTemp; - HMI_ValueStruct.Bed_Temp = thermalManager.degTargetBed(); - Draw_Edit_Integer3(TUNE_CASE_BED + MROWS - index_tune, HMI_ValueStruct.Bed_Temp, true); - EncoderRate.enabled = true; + hmiValues.Bed_Temp = thermalManager.degTargetBed(); + drawEditInteger3(TUNE_CASE_BED + MROWS - index_tune, hmiValues.Bed_Temp, true); + encoderRate.enabled = true; break; #endif #if HAS_FAN case TUNE_CASE_FAN: // Fan speed checkkey = FanSpeed; - HMI_ValueStruct.Fan_speed = thermalManager.fan_speed[0]; - Draw_Edit_Integer3(TUNE_CASE_FAN + MROWS - index_tune, HMI_ValueStruct.Fan_speed, true); - EncoderRate.enabled = true; + hmiValues.Fan_speed = thermalManager.fan_speed[0]; + drawEditInteger3(TUNE_CASE_FAN + MROWS - index_tune, hmiValues.Fan_speed, true); + encoderRate.enabled = true; break; #endif #if HAS_ZOFFSET_ITEM case TUNE_CASE_ZOFF: // Z-offset #if ANY(HAS_BED_PROBE, BABYSTEPPING) checkkey = Homeoffset; - HMI_ValueStruct.offset_value = BABY_Z_VAR * 100; - Draw_Edit_Signed_Float2(TUNE_CASE_ZOFF + MROWS - index_tune, HMI_ValueStruct.offset_value, true); - EncoderRate.enabled = true; + hmiValues.offset_value = BABY_Z_VAR * 100; + drawEditSignedFloat2(TUNE_CASE_ZOFF + MROWS - index_tune, hmiValues.offset_value, true); + encoderRate.enabled = true; #else // Apply workspace offset, making the current position 0,0,0 queue.inject(F("G92X0Y0Z0")); - HMI_AudioFeedback(); + hmiAudioFeedback(); #endif break; #endif default: break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } #if HAS_PREHEAT // PLA Preheat - void HMI_PLAPreheatSetting() { + void hmiPLAPreheatSetting() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; // Avoid flicker by updating only the previous menu if (encoder_diffState == ENCODER_DIFF_CW) { - if (select_PLA.inc(1 + PREHEAT_CASE_TOTAL)) Move_Highlight(1, select_PLA.now); + if (select_PLA.inc(1 + PREHEAT_CASE_TOTAL)) moveHighlight(1, select_PLA.now); } else if (encoder_diffState == ENCODER_DIFF_CCW) { - if (select_PLA.dec()) Move_Highlight(-1, select_PLA.now); + if (select_PLA.dec()) moveHighlight(-1, select_PLA.now); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_PLA.now) { case CASE_BACK: checkkey = TemperatureID; select_temp.now = TEMP_CASE_PLA; - HMI_ValueStruct.show_mode = -1; - Draw_Temperature_Menu(); + hmiValues.show_mode = -1; + drawTemperatureMenu(); break; #if HAS_HOTEND case PREHEAT_CASE_TEMP: checkkey = ETemp; - HMI_ValueStruct.E_Temp = ui.material_preset[0].hotend_temp; - Draw_Edit_Integer3(PREHEAT_CASE_TEMP, ui.material_preset[0].hotend_temp, true); - EncoderRate.enabled = true; + hmiValues.E_Temp = ui.material_preset[0].hotend_temp; + drawEditInteger3(PREHEAT_CASE_TEMP, ui.material_preset[0].hotend_temp, true); + encoderRate.enabled = true; break; #endif #if HAS_HEATED_BED case PREHEAT_CASE_BED: checkkey = BedTemp; - HMI_ValueStruct.Bed_Temp = ui.material_preset[0].bed_temp; - Draw_Edit_Integer3(PREHEAT_CASE_BED, ui.material_preset[0].bed_temp, true); - EncoderRate.enabled = true; + hmiValues.Bed_Temp = ui.material_preset[0].bed_temp; + drawEditInteger3(PREHEAT_CASE_BED, ui.material_preset[0].bed_temp, true); + encoderRate.enabled = true; break; #endif #if HAS_FAN case PREHEAT_CASE_FAN: checkkey = FanSpeed; - HMI_ValueStruct.Fan_speed = ui.material_preset[0].fan_speed; - Draw_Edit_Integer3(PREHEAT_CASE_FAN, ui.material_preset[0].fan_speed, true); - EncoderRate.enabled = true; + hmiValues.Fan_speed = ui.material_preset[0].fan_speed; + drawEditInteger3(PREHEAT_CASE_FAN, ui.material_preset[0].fan_speed, true); + encoderRate.enabled = true; break; #endif #if ENABLED(EEPROM_SETTINGS) case PREHEAT_CASE_SAVE: { const bool success = settings.save(); - HMI_AudioFeedback(success); + hmiAudioFeedback(success); } break; #endif default: break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } #if PREHEAT_COUNT > 1 // ABS Preheat - void HMI_ABSPreheatSetting() { + void hmiABSPreheatSetting() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; // Avoid flicker by updating only the previous menu if (encoder_diffState == ENCODER_DIFF_CW) { - if (select_ABS.inc(1 + PREHEAT_CASE_TOTAL)) Move_Highlight(1, select_ABS.now); + if (select_ABS.inc(1 + PREHEAT_CASE_TOTAL)) moveHighlight(1, select_ABS.now); } else if (encoder_diffState == ENCODER_DIFF_CCW) { - if (select_ABS.dec()) Move_Highlight(-1, select_ABS.now); + if (select_ABS.dec()) moveHighlight(-1, select_ABS.now); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_ABS.now) { case CASE_BACK: checkkey = TemperatureID; select_temp.now = TEMP_CASE_ABS; - HMI_ValueStruct.show_mode = -1; - Draw_Temperature_Menu(); + hmiValues.show_mode = -1; + drawTemperatureMenu(); break; #if HAS_HOTEND case PREHEAT_CASE_TEMP: checkkey = ETemp; - HMI_ValueStruct.E_Temp = ui.material_preset[1].hotend_temp; - Draw_Edit_Integer3(PREHEAT_CASE_TEMP, ui.material_preset[1].hotend_temp, true); - EncoderRate.enabled = true; + hmiValues.E_Temp = ui.material_preset[1].hotend_temp; + drawEditInteger3(PREHEAT_CASE_TEMP, ui.material_preset[1].hotend_temp, true); + encoderRate.enabled = true; break; #endif #if HAS_HEATED_BED case PREHEAT_CASE_BED: checkkey = BedTemp; - HMI_ValueStruct.Bed_Temp = ui.material_preset[1].bed_temp; - Draw_Edit_Integer3(PREHEAT_CASE_BED, ui.material_preset[1].bed_temp, true); - EncoderRate.enabled = true; + hmiValues.Bed_Temp = ui.material_preset[1].bed_temp; + drawEditInteger3(PREHEAT_CASE_BED, ui.material_preset[1].bed_temp, true); + encoderRate.enabled = true; break; #endif #if HAS_FAN case PREHEAT_CASE_FAN: checkkey = FanSpeed; - HMI_ValueStruct.Fan_speed = ui.material_preset[1].fan_speed; - Draw_Edit_Integer3(PREHEAT_CASE_FAN, ui.material_preset[1].fan_speed, true); - EncoderRate.enabled = true; + hmiValues.Fan_speed = ui.material_preset[1].fan_speed; + drawEditInteger3(PREHEAT_CASE_FAN, ui.material_preset[1].fan_speed, true); + encoderRate.enabled = true; break; #endif #if ENABLED(EEPROM_SETTINGS) case PREHEAT_CASE_SAVE: { const bool success = settings.save(); - HMI_AudioFeedback(success); + hmiAudioFeedback(success); } break; #endif default: break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } #endif // PREHEAT_COUNT > 1 #endif // HAS_PREHEAT // Max Speed -void HMI_MaxSpeed() { +void hmiMaxSpeed() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; // Avoid flicker by updating only the previous menu if (encoder_diffState == ENCODER_DIFF_CW) { - if (select_speed.inc(1 + 3 + ENABLED(HAS_HOTEND))) Move_Highlight(1, select_speed.now); + if (select_speed.inc(1 + 3 + ENABLED(HAS_HOTEND))) moveHighlight(1, select_speed.now); } else if (encoder_diffState == ENCODER_DIFF_CCW) { - if (select_speed.dec()) Move_Highlight(-1, select_speed.now); + if (select_speed.dec()) moveHighlight(-1, select_speed.now); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { if (WITHIN(select_speed.now, 1, 4)) { checkkey = MaxSpeed_value; - HMI_flag.feedspeed_axis = AxisEnum(select_speed.now - 1); - HMI_ValueStruct.Max_Feedspeed = planner.settings.max_feedrate_mm_s[HMI_flag.feedspeed_axis]; - Draw_Edit_Integer4(select_speed.now, HMI_ValueStruct.Max_Feedspeed, true); - EncoderRate.enabled = true; + hmiFlag.feedspeed_axis = AxisEnum(select_speed.now - 1); + hmiValues.Max_Feedspeed = planner.settings.max_feedrate_mm_s[hmiFlag.feedspeed_axis]; + drawEditInteger4(select_speed.now, hmiValues.Max_Feedspeed, true); + encoderRate.enabled = true; } else { // Back checkkey = Motion; select_motion.now = MOTION_CASE_RATE; - Draw_Motion_Menu(); + drawMotionMenu(); } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } // Max Acceleration -void HMI_MaxAcceleration() { +void hmiMaxAcceleration() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; // Avoid flicker by updating only the previous menu if (encoder_diffState == ENCODER_DIFF_CW) { - if (select_acc.inc(1 + 3 + ENABLED(HAS_HOTEND))) Move_Highlight(1, select_acc.now); + if (select_acc.inc(1 + 3 + ENABLED(HAS_HOTEND))) moveHighlight(1, select_acc.now); } else if (encoder_diffState == ENCODER_DIFF_CCW) { - if (select_acc.dec()) Move_Highlight(-1, select_acc.now); + if (select_acc.dec()) moveHighlight(-1, select_acc.now); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { if (WITHIN(select_acc.now, 1, 4)) { checkkey = MaxAcceleration_value; - HMI_flag.acc_axis = AxisEnum(select_acc.now - 1); - HMI_ValueStruct.Max_Acceleration = planner.settings.max_acceleration_mm_per_s2[HMI_flag.acc_axis]; - Draw_Edit_Integer4(select_acc.now, HMI_ValueStruct.Max_Acceleration, true); - EncoderRate.enabled = true; + hmiFlag.acc_axis = AxisEnum(select_acc.now - 1); + hmiValues.Max_Acceleration = planner.settings.max_acceleration_mm_per_s2[hmiFlag.acc_axis]; + drawEditInteger4(select_acc.now, hmiValues.Max_Acceleration, true); + encoderRate.enabled = true; } else { // Back checkkey = Motion; select_motion.now = MOTION_CASE_ACCEL; - Draw_Motion_Menu(); + drawMotionMenu(); } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } #if HAS_CLASSIC_JERK // Max Jerk - void HMI_MaxJerk() { + void hmiMaxJerk() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; // Avoid flicker by updating only the previous menu if (encoder_diffState == ENCODER_DIFF_CW) { - if (select_jerk.inc(1 + 3 + ENABLED(HAS_HOTEND))) Move_Highlight(1, select_jerk.now); + if (select_jerk.inc(1 + 3 + ENABLED(HAS_HOTEND))) moveHighlight(1, select_jerk.now); } else if (encoder_diffState == ENCODER_DIFF_CCW) { - if (select_jerk.dec()) Move_Highlight(-1, select_jerk.now); + if (select_jerk.dec()) moveHighlight(-1, select_jerk.now); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { if (WITHIN(select_jerk.now, 1, 4)) { checkkey = MaxJerk_value; - HMI_flag.jerk_axis = AxisEnum(select_jerk.now - 1); - HMI_ValueStruct.Max_Jerk_scaled = planner.max_jerk[HMI_flag.jerk_axis] * MINUNITMULT; - Draw_Edit_Float3(select_jerk.now, HMI_ValueStruct.Max_Jerk_scaled, true); - EncoderRate.enabled = true; + hmiFlag.jerk_axis = AxisEnum(select_jerk.now - 1); + hmiValues.Max_Jerk_scaled = planner.max_jerk[hmiFlag.jerk_axis] * MINUNITMULT; + drawEditFloat3(select_jerk.now, hmiValues.Max_Jerk_scaled, true); + encoderRate.enabled = true; } else { // Back checkkey = Motion; select_motion.now = MOTION_CASE_JERK; - Draw_Motion_Menu(); + drawMotionMenu(); } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } #endif // HAS_CLASSIC_JERK // Step -void HMI_Step() { +void hmiStep() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; // Avoid flicker by updating only the previous menu if (encoder_diffState == ENCODER_DIFF_CW) { - if (select_step.inc(1 + 3 + ENABLED(HAS_HOTEND))) Move_Highlight(1, select_step.now); + if (select_step.inc(1 + 3 + ENABLED(HAS_HOTEND))) moveHighlight(1, select_step.now); } else if (encoder_diffState == ENCODER_DIFF_CCW) { - if (select_step.dec()) Move_Highlight(-1, select_step.now); + if (select_step.dec()) moveHighlight(-1, select_step.now); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { if (WITHIN(select_step.now, 1, 4)) { checkkey = Step_value; - HMI_flag.step_axis = AxisEnum(select_step.now - 1); - HMI_ValueStruct.Max_Step_scaled = planner.settings.axis_steps_per_mm[HMI_flag.step_axis] * MINUNITMULT; - Draw_Edit_Float3(select_step.now, HMI_ValueStruct.Max_Step_scaled, true); - EncoderRate.enabled = true; + hmiFlag.step_axis = AxisEnum(select_step.now - 1); + hmiValues.Max_Step_scaled = planner.settings.axis_steps_per_mm[hmiFlag.step_axis] * MINUNITMULT; + drawEditFloat3(select_step.now, hmiValues.Max_Step_scaled, true); + encoderRate.enabled = true; } else { // Back checkkey = Motion; select_motion.now = MOTION_CASE_STEPS; - Draw_Motion_Menu(); + drawMotionMenu(); } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void HMI_Init() { - HMI_SDCardInit(); +void hmiInit() { + hmiSDCardInit(); for (uint16_t t = 0; t <= 100; t += 2) { - DWIN_ICON_Show(ICON, ICON_Bar, 15, 260); - DWIN_Draw_Rectangle(1, Color_Bg_Black, 15 + t * 242 / 100, 260, 257, 280); - DWIN_UpdateLCD(); + dwinIconShow(ICON, ICON_Bar, 15, 260); + dwinDrawRectangle(1, Color_Bg_Black, 15 + t * 242 / 100, 260, 257, 280); + dwinUpdateLCD(); delay(20); } - HMI_SetLanguage(); + hmiSetLanguage(); } -void DWIN_InitScreen() { - Encoder_Configuration(); - HMI_Init(); - HMI_SetLanguageCache(); - HMI_StartFrame(true); +void dwinInitScreen() { + encoderConfiguration(); + hmiInit(); + hmiSetLanguageCache(); + hmiStartFrame(true); } -void DWIN_Update() { - EachMomentUpdate(); // Status update - HMI_SDCardUpdate(); // SD card update - DWIN_HandleScreen(); // Rotary encoder update +void dwinUpdate() { + eachMomentUpdate(); // Status update + hmiSDCardUpdate(); // SD card update + dwinHandleScreen(); // Rotary encoder update } -void EachMomentUpdate() { +void eachMomentUpdate() { static millis_t next_var_update_ms = 0, next_rts_update_ms = 0; const millis_t ms = millis(); @@ -4074,9 +4070,9 @@ void EachMomentUpdate() { if (checkkey == PrintProcess) { // if print done - if (HMI_flag.print_finish && !HMI_flag.done_confirm_flag) { - HMI_flag.print_finish = false; - HMI_flag.done_confirm_flag = true; + if (hmiFlag.print_finish && !hmiFlag.done_confirm_flag) { + hmiFlag.print_finish = false; + hmiFlag.done_confirm_flag = true; TERN_(POWER_LOSS_RECOVERY, recovery.cancel()); @@ -4084,22 +4080,22 @@ void EachMomentUpdate() { // show percent bar and value _card_percent = 0; - Draw_Print_ProgressBar(); + drawPrintProgressBar(); // show print done confirm - DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, 250, DWIN_WIDTH - 1, STATUS_Y); - DWIN_ICON_Show(ICON, HMI_IsChinese() ? ICON_Confirm_C : ICON_Confirm_E, 86, 283); + dwinDrawRectangle(1, Color_Bg_Black, 0, 250, DWIN_WIDTH - 1, STATUS_Y); + dwinIconShow(ICON, hmiIsChinese() ? ICON_Confirm_C : ICON_Confirm_E, 86, 283); } - else if (HMI_flag.pause_flag != printingIsPaused()) { + else if (hmiFlag.pause_flag != printingIsPaused()) { // print status update - HMI_flag.pause_flag = printingIsPaused(); - ICON_ResumeOrPause(); + hmiFlag.pause_flag = printingIsPaused(); + iconResumeOrPause(); } } // pause after homing - if (HMI_flag.pause_action && printingIsPaused() && !planner.has_blocks_queued()) { - HMI_flag.pause_action = false; + if (hmiFlag.pause_action && printingIsPaused() && !planner.has_blocks_queued()) { + hmiFlag.pause_action = false; #if ENABLED(PAUSE_HEAT) TERN_(HAS_HOTEND, resume_hotend_temp = thermalManager.degTargetHotend(0)); TERN_(HAS_HEATED_BED, resume_bed_temp = thermalManager.degTargetBed()); @@ -4115,7 +4111,7 @@ void EachMomentUpdate() { last_cardpercentValue = card_pct; if (card_pct) { _card_percent = card_pct; - Draw_Print_ProgressBar(); + drawPrintProgressBar(); } } @@ -4126,174 +4122,174 @@ void EachMomentUpdate() { const uint16_t min = (elapsed.value % 3600) / 60; if (last_Printtime != min) { // 1 minute update last_Printtime = min; - Draw_Print_ProgressElapsed(); + drawPrintProgressElapsed(); } // Estimate remaining time every 20 seconds static millis_t next_remain_time_update = 0; - if (_card_percent > 1 && ELAPSED(ms, next_remain_time_update) && !HMI_flag.heat_flag) { + if (_card_percent > 1 && ELAPSED(ms, next_remain_time_update) && !hmiFlag.heat_flag) { _remain_time = (elapsed.value - dwin_heat_time) / (_card_percent * 0.01f) - (elapsed.value - dwin_heat_time); next_remain_time_update += DWIN_REMAIN_TIME_UPDATE_INTERVAL; - Draw_Print_ProgressRemain(); + drawPrintProgressRemain(); } } - else if (dwin_abort_flag && !HMI_flag.home_flag) { // Print Stop + else if (dwin_abort_flag && !hmiFlag.home_flag) { // Print Stop dwin_abort_flag = false; - HMI_ValueStruct.print_speed = feedrate_percentage = 100; + hmiValues.print_speed = feedrate_percentage = 100; dwin_zoffset = BABY_Z_VAR; select_page.set(0); - Goto_MainMenu(); + gotoMainMenu(); } #if ENABLED(POWER_LOSS_RECOVERY) else if (DWIN_lcd_sd_status && recovery.dwin_flag) { // resume print before power off recovery.dwin_flag = false; auto update_selection = [&](const bool sel) { - HMI_flag.select_flag = sel; + hmiFlag.select_flag = sel; const uint16_t c1 = sel ? Color_Bg_Window : Select_Color; - DWIN_Draw_Rectangle(0, c1, 25, 306, 126, 345); - DWIN_Draw_Rectangle(0, c1, 24, 305, 127, 346); + dwinDrawRectangle(0, c1, 25, 306, 126, 345); + dwinDrawRectangle(0, c1, 24, 305, 127, 346); const uint16_t c2 = sel ? Select_Color : Color_Bg_Window; - DWIN_Draw_Rectangle(0, c2, 145, 306, 246, 345); - DWIN_Draw_Rectangle(0, c2, 144, 305, 247, 346); + dwinDrawRectangle(0, c2, 145, 306, 246, 345); + dwinDrawRectangle(0, c2, 144, 305, 247, 346); }; - Popup_Window_Resume(); + popupWindowResume(); update_selection(true); char * const name = card.longest_filename(); const int8_t npos = _MAX(0U, DWIN_WIDTH - strlen(name) * (MENU_CHR_W)) / 2; - DWIN_Draw_String(true, font8x16, Popup_Text_Color, Color_Bg_Window, npos, 252, name); - DWIN_UpdateLCD(); + dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, npos, 252, name); + dwinUpdateLCD(); bool recovery_flag = true; while (recovery_flag) { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState != ENCODER_DIFF_NO) { if (encoder_diffState == ENCODER_DIFF_ENTER) { recovery_flag = false; - if (HMI_flag.select_flag) break; + if (hmiFlag.select_flag) break; TERN_(POWER_LOSS_RECOVERY, queue.inject(F("M1000C"))); - HMI_StartFrame(true); + hmiStartFrame(true); return; } else update_selection(encoder_diffState == ENCODER_DIFF_CW); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } } select_print.set(0); - HMI_ValueStruct.show_mode = 0; + hmiValues.show_mode = 0; queue.inject(F("M1000")); - Goto_PrintProcess(); - Draw_Status_Area(true); + gotoPrintProcess(); + drawStatusArea(true); } #endif // POWER_LOSS_RECOVERY - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void DWIN_HandleScreen() { +void dwinHandleScreen() { switch (checkkey) { - case MainMenu: HMI_MainMenu(); break; - case SelectFile: HMI_SelectFile(); break; - case Prepare: HMI_Prepare(); break; - case Control: HMI_Control(); break; + case MainMenu: hmiMainMenu(); break; + case SelectFile: hmiSelectFile(); break; + case Prepare: hmiPrepare(); break; + case Control: hmiControl(); break; case Leveling: break; - case PrintProcess: HMI_Printing(); break; - case Print_window: HMI_PauseOrStop(); break; - case AxisMove: HMI_AxisMove(); break; - case TemperatureID: HMI_Temperature(); break; - case Motion: HMI_Motion(); break; - case AdvSet: HMI_AdvSet(); break; + case PrintProcess: hmiPrinting(); break; + case Print_window: hmiPauseOrStop(); break; + case AxisMove: hmiAxisMove(); break; + case TemperatureID: hmiTemperature(); break; + case Motion: hmiMotion(); break; + case AdvSet: hmiAdvSet(); break; #if HAS_HOME_OFFSET - case HomeOff: HMI_HomeOff(); break; - case HomeOffX: HMI_HomeOffX(); break; - case HomeOffY: HMI_HomeOffY(); break; - case HomeOffZ: HMI_HomeOffZ(); break; + case HomeOff: hmiHomeOff(); break; + case HomeOffX: hmiHomeOffX(); break; + case HomeOffY: hmiHomeOffY(); break; + case HomeOffZ: hmiHomeOffZ(); break; #endif #if HAS_ONESTEP_LEVELING - case ProbeOff: HMI_ProbeOff(); break; - case ProbeOffX: HMI_ProbeOffX(); break; - case ProbeOffY: HMI_ProbeOffY(); break; + case ProbeOff: hmiProbeOff(); break; + case ProbeOffX: hmiProbeOffX(); break; + case ProbeOffY: hmiProbeOffY(); break; #endif - case Info: HMI_Info(); break; - case Tune: HMI_Tune(); break; + case Info: hmiInfo(); break; + case Tune: hmiTune(); break; #if HAS_PREHEAT - case PLAPreheat: HMI_PLAPreheatSetting(); break; + case PLAPreheat: hmiPLAPreheatSetting(); break; #if PREHEAT_COUNT > 1 - case ABSPreheat: HMI_ABSPreheatSetting(); break; + case ABSPreheat: hmiABSPreheatSetting(); break; #endif #endif - case MaxSpeed: HMI_MaxSpeed(); break; - case MaxAcceleration: HMI_MaxAcceleration(); break; + case MaxSpeed: hmiMaxSpeed(); break; + case MaxAcceleration: hmiMaxAcceleration(); break; #if HAS_CLASSIC_JERK - case MaxJerk: HMI_MaxJerk(); break; + case MaxJerk: hmiMaxJerk(); break; #endif - case Step: HMI_Step(); break; - case Move_X: HMI_Move_X(); break; - case Move_Y: HMI_Move_Y(); break; - case Move_Z: HMI_Move_Z(); break; + case Step: hmiStep(); break; + case Move_X: hmiMoveX(); break; + case Move_Y: hmiMoveY(); break; + case Move_Z: hmiMoveZ(); break; #if HAS_HOTEND - case Extruder: HMI_Move_E(); break; - case ETemp: HMI_ETemp(); break; + case Extruder: hmiMoveE(); break; + case ETemp: hmiETemp(); break; #endif #if ANY(HAS_BED_PROBE, BABYSTEPPING) - case Homeoffset: HMI_Zoffset(); break; + case Homeoffset: hmiZoffset(); break; #endif #if HAS_HEATED_BED - case BedTemp: HMI_BedTemp(); break; + case BedTemp: hmiBedTemp(); break; #endif #if HAS_PREHEAT && HAS_FAN - case FanSpeed: HMI_FanSpeed(); break; + case FanSpeed: hmiFanSpeed(); break; #endif - case PrintSpeed: HMI_PrintSpeed(); break; - case MaxSpeed_value: HMI_MaxFeedspeedXYZE(); break; - case MaxAcceleration_value: HMI_MaxAccelerationXYZE(); break; + case PrintSpeed: hmiPrintSpeed(); break; + case MaxSpeed_value: hmiMaxFeedspeedXYZE(); break; + case MaxAcceleration_value: hmiMaxAccelerationXYZE(); break; #if HAS_CLASSIC_JERK - case MaxJerk_value: HMI_MaxJerkXYZE(); break; + case MaxJerk_value: hmiMaxJerkXYZE(); break; #endif - case Step_value: HMI_StepXYZE(); break; + case Step_value: hmiStepXYZE(); break; default: break; } } -void DWIN_HomingDone() { - HMI_flag.home_flag = false; +void dwinHomingDone() { + hmiFlag.home_flag = false; dwin_zoffset = TERN0(HAS_BED_PROBE, probe.offset.z); if (checkkey == Last_Prepare) { checkkey = Prepare; select_prepare.now = PREPARE_CASE_HOME; index_prepare = MROWS; - Draw_Prepare_Menu(); + drawPrepareMenu(); } else if (checkkey == Back_Main) { - HMI_ValueStruct.print_speed = feedrate_percentage = 100; + hmiValues.print_speed = feedrate_percentage = 100; planner.finish_and_disable(); - Goto_MainMenu(); + gotoMainMenu(); } } -void DWIN_LevelingDone() { - if (checkkey == Leveling) Goto_MainMenu(); +void dwinLevelingDone() { + if (checkkey == Leveling) gotoMainMenu(); } -void DWIN_StatusChanged(const char * const cstr/*=nullptr*/) { - DWIN_Draw_Rectangle(1, Color_Bg_Blue, 0, STATUS_Y, DWIN_WIDTH, STATUS_Y + 24); +void dwinStatusChanged(const char * const cstr/*=nullptr*/) { + dwinDrawRectangle(1, Color_Bg_Blue, 0, STATUS_Y, DWIN_WIDTH, STATUS_Y + 24); const int8_t x = _MAX(0U, DWIN_WIDTH - strlen(cstr) * MENU_CHR_W) / 2; - DWIN_Draw_String(false, font8x16, Color_White, Color_Bg_Blue, x, STATUS_Y + 3, cstr); - DWIN_UpdateLCD(); + dwinDrawString(false, font8x16, Color_White, Color_Bg_Blue, x, STATUS_Y + 3, cstr); + dwinUpdateLCD(); } -void DWIN_StatusChanged(FSTR_P const fstr) { +void dwinStatusChanged(FSTR_P const fstr) { #ifdef __AVR__ char str[strlen_P(FTOP(fstr)) + 1]; strcpy_P(str, FTOP(fstr)); - DWIN_StatusChanged(str); + dwinStatusChanged(str); #else - DWIN_StatusChanged(FTOP(fstr)); + dwinStatusChanged(FTOP(fstr)); #endif } diff --git a/Marlin/src/lcd/e3v2/creality/dwin.h b/Marlin/src/lcd/e3v2/creality/dwin.h index 854a011c5e3f..0e2d42eee91c 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin.h +++ b/Marlin/src/lcd/e3v2/creality/dwin.h @@ -133,7 +133,7 @@ typedef struct { float Home_OffZ_scaled = 0; float Probe_OffX_scaled = 0; float Probe_OffY_scaled = 0; -} HMI_value_t; +} hmi_value_t; #define DWIN_CHINESE 123 #define DWIN_ENGLISH 0 @@ -151,59 +151,59 @@ typedef struct { bool cold_flag:1; #endif AxisEnum feedspeed_axis, acc_axis, jerk_axis, step_axis; -} HMI_flag_t; +} hmi_flag_t; -extern HMI_value_t HMI_ValueStruct; -extern HMI_flag_t HMI_flag; +extern hmi_value_t hmiValues; +extern hmi_flag_t hmiFlag; #if HAS_HOTEND || HAS_HEATED_BED // Popup message window - void DWIN_Popup_Temperature(const bool toohigh); + void dwinPopupTemperature(const bool toohigh); #endif #if HAS_HOTEND - void Popup_Window_ETempTooLow(); + void popupWindowETempTooLow(); #endif -void Popup_Window_Resume(); -void Popup_Window_Home(const bool parking=false); -void Popup_Window_Leveling(); +void popupWindowResume(); +void popupWindowHome(const bool parking=false); +void popupWindowLeveling(); -void Goto_PrintProcess(); -void Goto_MainMenu(); +void gotoPrintProcess(); +void gotoMainMenu(); // Variable control -void HMI_Move_X(); -void HMI_Move_Y(); -void HMI_Move_Z(); -void HMI_Move_E(); +void hmiMoveX(); +void hmiMoveY(); +void hmiMoveZ(); +void hmiMoveE(); -void HMI_Zoffset(); +void hmiZoffset(); #if HAS_HOTEND - void HMI_ETemp(); + void hmiETemp(); #endif #if HAS_HEATED_BED - void HMI_BedTemp(); + void hmiBedTemp(); #endif #if HAS_FAN - void HMI_FanSpeed(); + void hmiFanSpeed(); #endif -void HMI_PrintSpeed(); +void hmiPrintSpeed(); -void HMI_MaxFeedspeedXYZE(); -void HMI_MaxAccelerationXYZE(); -void HMI_MaxJerkXYZE(); -void HMI_StepXYZE(); -void HMI_SetLanguageCache(); +void hmiMaxFeedspeedXYZE(); +void hmiMaxAccelerationXYZE(); +void hmiMaxJerkXYZE(); +void hmiStepXYZE(); +void hmiSetLanguageCache(); void update_variable(); -void DWIN_Draw_Signed_Float(uint8_t size, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, long value); +void dwinDrawSigned_Float(uint8_t size, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, long value); // SD Card -void HMI_SDCardInit(); -void HMI_SDCardUpdate(); +void hmiSDCardInit(); +void hmiSDCardUpdate(); // Main Process void Icon_print(bool value); @@ -212,39 +212,39 @@ void Icon_temperature(bool value); void Icon_leveling(bool value); // Other -void Draw_Status_Area(const bool with_update); // Status Area -void HMI_StartFrame(const bool with_update); // Prepare the menu view -void HMI_MainMenu(); // Main process screen -void HMI_SelectFile(); // File page -void HMI_Printing(); // Print page -void HMI_Prepare(); // Prepare page -void HMI_Control(); // Control page -void HMI_Leveling(); // Level the page -void HMI_AxisMove(); // Axis movement menu -void HMI_Temperature(); // Temperature menu -void HMI_Motion(); // Sports menu -void HMI_Info(); // Information menu -void HMI_Tune(); // Adjust the menu +void drawStatusArea(const bool with_update); // Status Area +void hmiStartFrame(const bool with_update); // Prepare the menu view +void hmiMainMenu(); // Main process screen +void hmiSelectFile(); // File page +void hmiPrinting(); // Print page +void hmiPrepare(); // Prepare page +void hmiControl(); // Control page +void hmiLeveling(); // Level the page +void hmiAxisMove(); // Axis movement menu +void hmiTemperature(); // Temperature menu +void hmiMotion(); // Sports menu +void hmiInfo(); // Information menu +void hmiTune(); // Adjust the menu #if HAS_PREHEAT - void HMI_PLAPreheatSetting(); // PLA warm-up setting - void HMI_ABSPreheatSetting(); // ABS warm-up setting + void hmiPLAPreheatSetting(); // PLA warm-up setting + void hmiABSPreheatSetting(); // ABS warm-up setting #endif -void HMI_MaxSpeed(); // Maximum speed submenu -void HMI_MaxAcceleration(); // Maximum acceleration submenu -void HMI_MaxJerk(); // Maximum jerk speed submenu -void HMI_Step(); // Transmission ratio +void hmiMaxSpeed(); // Maximum speed submenu +void hmiMaxAcceleration(); // Maximum acceleration submenu +void hmiMaxJerk(); // Maximum jerk speed submenu +void hmiStep(); // Transmission ratio -void HMI_Init(); -void DWIN_InitScreen(); -void DWIN_Update(); -void EachMomentUpdate(); -void DWIN_HandleScreen(); -void DWIN_StatusChanged(const char * const cstr=nullptr); -void DWIN_StatusChanged(FSTR_P const fstr); +void hmiInit(); +void dwinInitScreen(); +void dwinUpdate(); +void eachMomentUpdate(); +void dwinHandleScreen(); +void dwinStatusChanged(const char * const cstr=nullptr); +void dwinStatusChanged(FSTR_P const fstr); -inline void DWIN_HomingStart() { HMI_flag.home_flag = true; } +inline void dwinHomingStart() { hmiFlag.home_flag = true; } -void DWIN_HomingDone(); -void DWIN_LevelingDone(); +void dwinHomingDone(); +void dwinLevelingDone(); diff --git a/Marlin/src/lcd/e3v2/creality/dwin_lcd.cpp b/Marlin/src/lcd/e3v2/creality/dwin_lcd.cpp index 3d60e32a7908..7a0587df4310 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin_lcd.cpp +++ b/Marlin/src/lcd/e3v2/creality/dwin_lcd.cpp @@ -41,16 +41,16 @@ /*-------------------------------------- System variable function --------------------------------------*/ -void DWIN_Startup() { +void dwinStartup() { DEBUG_ECHOPGM("\r\nDWIN handshake "); delay(750); // Delay here or init later in the boot process - if (DWIN_Handshake()) DEBUG_ECHOLNPGM("ok."); else DEBUG_ECHOLNPGM("error."); - DWIN_Frame_SetDir(1); + if (dwinHandshake()) DEBUG_ECHOLNPGM("ok."); else DEBUG_ECHOLNPGM("error."); + dwinFrameSetDir(1); #if DISABLED(SHOW_BOOTSCREEN) - DWIN_Frame_Clear(Color_Bg_Black); // MarlinUI handles the bootscreen so just clear here + dwinFrameClear(Color_Bg_Black); // MarlinUI handles the bootscreen so just clear here #endif - DWIN_JPG_ShowAndCache(3); - DWIN_UpdateLCD(); + dwinJPGShowAndCache(3); + dwinUpdateLCD(); } /*---------------------------------------- Picture related functions ----------------------------------------*/ @@ -59,8 +59,8 @@ void DWIN_Startup() { // libID: Icon library ID // picID: Icon ID // x/y: Upper-left point -void DWIN_ICON_Show(uint8_t libID, uint8_t picID, uint16_t x, uint16_t y) { - DWIN_ICON_Show(true, false, false, libID, picID, x, y); +void dwinIconShow(uint8_t libID, uint8_t picID, uint16_t x, uint16_t y) { + dwinIconShow(true, false, false, libID, picID, x, y); } // Copy area from virtual display area to current screen @@ -68,17 +68,17 @@ void DWIN_ICON_Show(uint8_t libID, uint8_t picID, uint16_t x, uint16_t y) { // xStart/yStart: Upper-left of virtual area // xEnd/yEnd: Lower-right of virtual area // x/y: Screen paste point -void DWIN_Frame_AreaCopy(uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y) { +void dwinFrameAreaCopy(uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y) { size_t i = 0; - DWIN_Byte(i, 0x27); - DWIN_Byte(i, 0x80 | cacheID); - DWIN_Word(i, xStart); - DWIN_Word(i, yStart); - DWIN_Word(i, xEnd); - DWIN_Word(i, yEnd); - DWIN_Word(i, x); - DWIN_Word(i, y); - DWIN_Send(i); + dwinByte(i, 0x27); + dwinByte(i, 0x80 | cacheID); + dwinWord(i, xStart); + dwinWord(i, yStart); + dwinWord(i, xEnd); + dwinWord(i, yEnd); + dwinWord(i, x); + dwinWord(i, y); + dwinSend(i); } #endif // DWIN_CREALITY_LCD diff --git a/Marlin/src/lcd/e3v2/creality/dwin_lcd.h b/Marlin/src/lcd/e3v2/creality/dwin_lcd.h index b37a65977c5c..b60fe2970d66 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin_lcd.h +++ b/Marlin/src/lcd/e3v2/creality/dwin_lcd.h @@ -44,4 +44,4 @@ // xStart/yStart: Upper-left of virtual area // xEnd/yEnd: Lower-right of virtual area // x/y: Screen paste point -void DWIN_Frame_AreaCopy(uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y); +void dwinFrameAreaCopy(uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y); diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index 7b83e0171fb3..b7b2629f9969 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -58,10 +58,6 @@ #define HAS_ZOFFSET_ITEM 1 #endif -#ifndef strcasecmp_P - #define strcasecmp_P(a, b) strcasecmp((a), (b)) -#endif - #if HAS_LEVELING #include "../../../feature/bedlevel/bedlevel.h" #endif @@ -206,7 +202,7 @@ float corner_pos; bool probe_deployed = false; -CrealityDWINClass CrealityDWIN; +CrealityDWIN crealityDWIN; template class TextScroller { @@ -332,7 +328,7 @@ class TextScroller { planner.synchronize(); } else { - CrealityDWIN.Popup_Handler(MoveWait); + crealityDWIN.popupHandler(MoveWait); sprintf_P(cmd, PSTR("G0 F300 Z%s"), dtostrf(Z_CLEARANCE_BETWEEN_PROBES, 1, 3, str_1)); gcode.process_subcommands_now(cmd); sprintf_P(cmd, PSTR("G42 F4000 I%i J%i"), mesh_x, mesh_y); @@ -341,7 +337,7 @@ class TextScroller { current_position.z = goto_mesh_value ? bedlevel.z_values[mesh_x][mesh_y] : Z_CLEARANCE_BETWEEN_PROBES; planner.buffer_line(current_position, homing_feedrate(Z_AXIS), active_extruder); planner.synchronize(); - CrealityDWIN.Redraw_Menu(); + crealityDWIN.redrawMenu(); } } @@ -363,7 +359,7 @@ class TextScroller { return min; } - void Draw_Bed_Mesh(const int16_t selected=-1, const uint8_t gridline_width=1, const uint16_t padding_x=8, const uint16_t padding_y_top=40 + 53 - 7) { + void drawBedMesh(const int16_t selected=-1, const uint8_t gridline_width=1, const uint16_t padding_x=8, const uint16_t padding_y_top=40 + 53 - 7) { drawing_mesh = true; const uint16_t total_width_px = DWIN_WIDTH - padding_x - padding_x, cell_width_px = total_width_px / (GRID_MAX_POINTS_X), @@ -371,13 +367,13 @@ class TextScroller { const float v_max = abs(get_max_value()), v_min = abs(get_min_value()), range = _MAX(v_min, v_max); // Clear background from previous selection and select new square - DWIN_Draw_Rectangle(1, Color_Bg_Black, _MAX(0, padding_x - gridline_width), _MAX(0, padding_y_top - gridline_width), padding_x + total_width_px, padding_y_top + total_width_px); + dwinDrawRectangle(1, Color_Bg_Black, _MAX(0, padding_x - gridline_width), _MAX(0, padding_y_top - gridline_width), padding_x + total_width_px, padding_y_top + total_width_px); if (selected >= 0) { const auto selected_y = selected / (GRID_MAX_POINTS_X); const auto selected_x = selected - (GRID_MAX_POINTS_X) * selected_y; const auto start_y_px = padding_y_top + selected_y * cell_height_px; const auto start_x_px = padding_x + selected_x * cell_width_px; - DWIN_Draw_Rectangle(1, Color_White, _MAX(0, start_x_px - gridline_width), _MAX(0, start_y_px - gridline_width), start_x_px + cell_width_px, start_y_px + cell_height_px); + dwinDrawRectangle(1, Color_White, _MAX(0, start_x_px - gridline_width), _MAX(0, start_y_px - gridline_width), start_x_px + cell_width_px, start_y_px + cell_height_px); } // Draw value square grid @@ -387,7 +383,7 @@ class TextScroller { const auto end_x_px = start_x_px + cell_width_px - 1 - gridline_width; const auto start_y_px = padding_y_top + (GRID_MAX_POINTS_Y - y - 1) * cell_height_px; const auto end_y_px = start_y_px + cell_height_px - 1 - gridline_width; - DWIN_Draw_Rectangle(1, // RGB565 colors: http://www.barth-dev.de/online/rgb565-color-picker/ + dwinDrawRectangle(1, // RGB565 colors: http://www.barth-dev.de/online/rgb565-color-picker/ isnan(bedlevel.z_values[x][y]) ? Color_Grey : ( // gray if undefined (bedlevel.z_values[x][y] < 0 ? (uint16_t)round(0x1F * -bedlevel.z_values[x][y] / (!viewer_asymmetric_range ? range : v_min)) << 11 : // red if mesh point value is negative @@ -403,7 +399,7 @@ class TextScroller { if (viewer_print_value) { int8_t offset_x, offset_y = cell_height_px / 2 - 6; if (isnan(bedlevel.z_values[x][y])) { // undefined - DWIN_Draw_String(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + cell_width_px / 2 - 5, start_y_px + offset_y, F("X")); + dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + cell_width_px / 2 - 5, start_y_px + offset_y, F("X")); } else { // has value if (GRID_MAX_POINTS_X < 10) @@ -412,8 +408,8 @@ class TextScroller { sprintf_P(buf, PSTR("%02i"), (uint16_t)(abs(bedlevel.z_values[x][y] - (int16_t)bedlevel.z_values[x][y]) * 100)); offset_x = cell_width_px / 2 - 3 * (strlen(buf)) - 2; if (!(GRID_MAX_POINTS_X < 10)) - DWIN_Draw_String(false, font6x12, Color_White, Color_Bg_Blue, start_x_px - 2 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, F(".")); - DWIN_Draw_String(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + 1 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, buf); + dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px - 2 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, F(".")); + dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + 1 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, buf); } safe_delay(10); LCD_SERIAL.flushTX(); @@ -421,7 +417,7 @@ class TextScroller { } } - void Set_Mesh_Viewer_Status() { // TODO: draw gradient with values as a legend instead + void setMeshViewerStatus() { // TODO: draw gradient with values as a legend instead float v_max = abs(get_max_value()), v_min = abs(get_min_value()), range = _MAX(v_min, v_max); if (v_min > 3e+10F) v_min = 0.0000001; if (v_max > 3e+10F) v_max = 0.0000001; @@ -436,7 +432,7 @@ class TextScroller { dtostrf( range, 1, 3, str_2); } sprintf_P(msg, PSTR("Red %s..0..%s Green"), str_1, str_2); - CrealityDWIN.Update_Status(msg); + crealityDWIN.updateStatus(msg); drawing_mesh = false; } @@ -447,42 +443,42 @@ class TextScroller { /* General Display Functions */ -struct CrealityDWINClass::EEPROM_Settings CrealityDWINClass::eeprom_settings{0}; -constexpr const char * const CrealityDWINClass::color_names[11]; -constexpr const char * const CrealityDWINClass::preheat_modes[3]; +struct CrealityDWIN::EEPROM_Settings CrealityDWIN::eeprom_settings{0}; +constexpr const char * const CrealityDWIN::color_names[11]; +constexpr const char * const CrealityDWIN::preheat_modes[3]; // Clear a part of the screen // 4=Entire screen // 3=Title bar and Menu area (default) // 2=Menu area // 1=Title bar -void CrealityDWINClass::Clear_Screen(const uint8_t e/*=3*/) { - if (e == 1 || e == 3 || e == 4) DWIN_Draw_Rectangle(1, GetColor(eeprom_settings.menu_top_bg, Color_Bg_Blue, false), 0, 0, DWIN_WIDTH, TITLE_HEIGHT); // Clear Title Bar - if (e == 2 || e == 3) DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, 31, DWIN_WIDTH, STATUS_Y); // Clear Menu Area - if (e == 4) DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, 31, DWIN_WIDTH, DWIN_HEIGHT); // Clear Popup Area +void CrealityDWIN::clearScreen(const uint8_t e/*=3*/) { + if (e == 1 || e == 3 || e == 4) dwinDrawRectangle(1, getColor(eeprom_settings.menu_top_bg, Color_Bg_Blue, false), 0, 0, DWIN_WIDTH, TITLE_HEIGHT); // Clear Title Bar + if (e == 2 || e == 3) dwinDrawRectangle(1, Color_Bg_Black, 0, 31, DWIN_WIDTH, STATUS_Y); // Clear Menu Area + if (e == 4) dwinDrawRectangle(1, Color_Bg_Black, 0, 31, DWIN_WIDTH, DWIN_HEIGHT); // Clear Popup Area } -void CrealityDWINClass::Draw_Float(const_float_t value, const uint8_t row, const bool selected/*=false*/, const uint8_t minunit/*=10*/) { +void CrealityDWIN::drawFloat(const_float_t value, const uint8_t row, const bool selected/*=false*/, const uint8_t minunit/*=10*/) { const uint8_t digits = (uint8_t)floor(log10(abs(value))) + log10(minunit) + (minunit > 1); const uint16_t bColor = selected ? Select_Color : Color_Bg_Black; const uint16_t xpos = 240 - (digits * 8); - DWIN_Draw_Rectangle(1, Color_Bg_Black, 194, MBASE(row), 234 - (digits * 8), MBASE(row) + 16); + dwinDrawRectangle(1, Color_Bg_Black, 194, MBASE(row), 234 - (digits * 8), MBASE(row) + 16); if (isnan(value)) - DWIN_Draw_String(true, DWIN_FONT_MENU, Color_White, bColor, xpos - 8, MBASE(row), F(" NaN")); + dwinDrawString(true, DWIN_FONT_MENU, Color_White, bColor, xpos - 8, MBASE(row), F(" NaN")); else { - DWIN_Draw_FloatValue(true, true, 0, DWIN_FONT_MENU, Color_White, bColor, digits - log10(minunit) + 1, log10(minunit), xpos, MBASE(row), (value < 0 ? -value : value)); - DWIN_Draw_String(true, DWIN_FONT_MENU, Color_White, bColor, xpos - 8, MBASE(row), value < 0 ? F("-") : F(" ")); + dwinDrawFloatValue(true, true, 0, DWIN_FONT_MENU, Color_White, bColor, digits - log10(minunit) + 1, log10(minunit), xpos, MBASE(row), (value < 0 ? -value : value)); + dwinDrawString(true, DWIN_FONT_MENU, Color_White, bColor, xpos - 8, MBASE(row), value < 0 ? F("-") : F(" ")); } } -void CrealityDWINClass::Draw_Option(const uint8_t value, const char * const * options, const uint8_t row, const bool selected/*=false*/, const bool color/*=false*/) { +void CrealityDWIN::drawOption(const uint8_t value, const char * const * options, const uint8_t row, const bool selected/*=false*/, const bool color/*=false*/) { const uint16_t bColor = selected ? Select_Color : Color_Bg_Black, - tColor = color ? GetColor(value, Color_White, false) : Color_White; - DWIN_Draw_Rectangle(1, bColor, 202, MBASE(row) + 14, 258, MBASE(row) - 2); - DWIN_Draw_String(false, DWIN_FONT_MENU, tColor, bColor, 202, MBASE(row) - 1, options[value]); + tColor = color ? getColor(value, Color_White, false) : Color_White; + dwinDrawRectangle(1, bColor, 202, MBASE(row) + 14, 258, MBASE(row) - 2); + dwinDrawString(false, DWIN_FONT_MENU, tColor, bColor, 202, MBASE(row) - 1, options[value]); } -uint16_t CrealityDWINClass::GetColor(const uint8_t color, const uint16_t original, const bool light/*=false*/) { +uint16_t CrealityDWIN::getColor(const uint8_t color, const uint16_t original, const bool light/*=false*/) { switch (color) { case Default: return original; @@ -521,215 +517,215 @@ uint16_t CrealityDWINClass::GetColor(const uint8_t color, const uint16_t origina return Color_White; } -void CrealityDWINClass::Draw_Title(const char * const ctitle) { - DWIN_Draw_String(false, DWIN_FONT_HEAD, GetColor(eeprom_settings.menu_top_txt, Color_White, false), Color_Bg_Blue, (DWIN_WIDTH - strlen(ctitle) * STAT_CHR_W) / 2, 5, ctitle); +void CrealityDWIN::drawTitle(const char * const ctitle) { + dwinDrawString(false, DWIN_FONT_HEAD, getColor(eeprom_settings.menu_top_txt, Color_White, false), Color_Bg_Blue, (DWIN_WIDTH - strlen(ctitle) * STAT_CHR_W) / 2, 5, ctitle); } -void CrealityDWINClass::Draw_Title(FSTR_P const ftitle) { - DWIN_Draw_String(false, DWIN_FONT_HEAD, GetColor(eeprom_settings.menu_top_txt, Color_White, false), Color_Bg_Blue, (DWIN_WIDTH - strlen_P(FTOP(ftitle)) * STAT_CHR_W) / 2, 5, ftitle); +void CrealityDWIN::drawTitle(FSTR_P const ftitle) { + dwinDrawString(false, DWIN_FONT_HEAD, getColor(eeprom_settings.menu_top_txt, Color_White, false), Color_Bg_Blue, (DWIN_WIDTH - strlen_P(FTOP(ftitle)) * STAT_CHR_W) / 2, 5, ftitle); } -void _Decorate_Menu_Item(uint8_t row, uint8_t icon, bool more) { - if (icon) DWIN_ICON_Show(ICON, icon, 26, MBASE(row) - 3); //Draw Menu Icon - if (more) DWIN_ICON_Show(ICON, ICON_More, 226, MBASE(row) - 3); // Draw More Arrow - DWIN_Draw_Line(CrealityDWIN.GetColor(CrealityDWIN.eeprom_settings.menu_split_line, Line_Color, true), 16, MBASE(row) + 33, 256, MBASE(row) + 33); // Draw Menu Line +void _decorateMenuItem(uint8_t row, uint8_t icon, bool more) { + if (icon) dwinIconShow(ICON, icon, 26, MBASE(row) - 3); //Draw Menu Icon + if (more) dwinIconShow(ICON, ICON_More, 226, MBASE(row) - 3); // Draw More Arrow + dwinDrawLine(crealityDWIN.getColor(crealityDWIN.eeprom_settings.menu_split_line, Line_Color, true), 16, MBASE(row) + 33, 256, MBASE(row) + 33); // Draw Menu Line } -void CrealityDWINClass::Draw_Menu_Item(const uint8_t row, const uint8_t icon/*=0*/, const char * const label1, const char * const label2, const bool more/*=false*/, const bool centered/*=false*/) { +void CrealityDWIN::drawMenuItem(const uint8_t row, const uint8_t icon/*=0*/, const char * const label1, const char * const label2, const bool more/*=false*/, const bool centered/*=false*/) { const uint8_t label_offset_y = (label1 || label2) ? MENU_CHR_H * 3 / 5 : 0, label1_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (label1 ? strlen(label1) : 0) * MENU_CHR_W) / 2), label2_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (label2 ? strlen(label2) : 0) * MENU_CHR_W) / 2); - if (label1) DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, label1_offset_x, MBASE(row) - 1 - label_offset_y, label1); // Draw Label - if (label2) DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, label2_offset_x, MBASE(row) - 1 + label_offset_y, label2); // Draw Label - _Decorate_Menu_Item(row, icon, more); + if (label1) dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, label1_offset_x, MBASE(row) - 1 - label_offset_y, label1); // Draw Label + if (label2) dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, label2_offset_x, MBASE(row) - 1 + label_offset_y, label2); // Draw Label + _decorateMenuItem(row, icon, more); } -void CrealityDWINClass::Draw_Menu_Item(const uint8_t row, const uint8_t icon/*=0*/, FSTR_P const flabel1, FSTR_P const flabel2, const bool more/*=false*/, const bool centered/*=false*/) { +void CrealityDWIN::drawMenuItem(const uint8_t row, const uint8_t icon/*=0*/, FSTR_P const flabel1, FSTR_P const flabel2, const bool more/*=false*/, const bool centered/*=false*/) { const uint8_t label_offset_y = (flabel1 || flabel2) ? MENU_CHR_H * 3 / 5 : 0, label1_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (flabel1 ? strlen_P(FTOP(flabel1)) : 0) * MENU_CHR_W) / 2), label2_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (flabel2 ? strlen_P(FTOP(flabel2)) : 0) * MENU_CHR_W) / 2); - if (flabel1) DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, label1_offset_x, MBASE(row) - 1 - label_offset_y, flabel1); // Draw Label - if (flabel2) DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, label2_offset_x, MBASE(row) - 1 + label_offset_y, flabel2); // Draw Label - _Decorate_Menu_Item(row, icon, more); + if (flabel1) dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, label1_offset_x, MBASE(row) - 1 - label_offset_y, flabel1); // Draw Label + if (flabel2) dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, label2_offset_x, MBASE(row) - 1 + label_offset_y, flabel2); // Draw Label + _decorateMenuItem(row, icon, more); } -void CrealityDWINClass::Draw_Checkbox(const uint8_t row, const bool value) { +void CrealityDWIN::drawCheckbox(const uint8_t row, const bool value) { #if ENABLED(DWIN_CREALITY_LCD_CUSTOM_ICONS) // Draw appropriate checkbox icon - DWIN_ICON_Show(ICON, (value ? ICON_Checkbox_T : ICON_Checkbox_F), 226, MBASE(row) - 3); + dwinIconShow(ICON, (value ? ICON_Checkbox_T : ICON_Checkbox_F), 226, MBASE(row) - 3); #else // Draw a basic checkbox using rectangles and lines - DWIN_Draw_Rectangle(1, Color_Bg_Black, 226, MBASE(row) - 3, 226 + 20, MBASE(row) - 3 + 20); - DWIN_Draw_Rectangle(0, Color_White, 226, MBASE(row) - 3, 226 + 20, MBASE(row) - 3 + 20); + dwinDrawRectangle(1, Color_Bg_Black, 226, MBASE(row) - 3, 226 + 20, MBASE(row) - 3 + 20); + dwinDrawRectangle(0, Color_White, 226, MBASE(row) - 3, 226 + 20, MBASE(row) - 3 + 20); if (value) { - DWIN_Draw_Line(Check_Color, 227, MBASE(row) - 3 + 11, 226 + 8, MBASE(row) - 3 + 17); - DWIN_Draw_Line(Check_Color, 227 + 8, MBASE(row) - 3 + 17, 226 + 19, MBASE(row) - 3 + 1); - DWIN_Draw_Line(Check_Color, 227, MBASE(row) - 3 + 12, 226 + 8, MBASE(row) - 3 + 18); - DWIN_Draw_Line(Check_Color, 227 + 8, MBASE(row) - 3 + 18, 226 + 19, MBASE(row) - 3 + 2); - DWIN_Draw_Line(Check_Color, 227, MBASE(row) - 3 + 13, 226 + 8, MBASE(row) - 3 + 19); - DWIN_Draw_Line(Check_Color, 227 + 8, MBASE(row) - 3 + 19, 226 + 19, MBASE(row) - 3 + 3); + dwinDrawLine(Check_Color, 227, MBASE(row) - 3 + 11, 226 + 8, MBASE(row) - 3 + 17); + dwinDrawLine(Check_Color, 227 + 8, MBASE(row) - 3 + 17, 226 + 19, MBASE(row) - 3 + 1); + dwinDrawLine(Check_Color, 227, MBASE(row) - 3 + 12, 226 + 8, MBASE(row) - 3 + 18); + dwinDrawLine(Check_Color, 227 + 8, MBASE(row) - 3 + 18, 226 + 19, MBASE(row) - 3 + 2); + dwinDrawLine(Check_Color, 227, MBASE(row) - 3 + 13, 226 + 8, MBASE(row) - 3 + 19); + dwinDrawLine(Check_Color, 227 + 8, MBASE(row) - 3 + 19, 226 + 19, MBASE(row) - 3 + 3); } #endif } -void CrealityDWINClass::Draw_Menu(const uint8_t menu, const uint8_t select/*=0*/, const uint8_t scroll/*=0*/) { +void CrealityDWIN::drawMenu(const uint8_t menu, const uint8_t select/*=0*/, const uint8_t scroll/*=0*/) { if (active_menu != menu) { last_menu = active_menu; if (process == Menu) last_selection = selection; } - selection = _MIN(select, Get_Menu_Size(menu)); + selection = _MIN(select, getMenuSize(menu)); scrollpos = scroll; if (selection - scrollpos > MROWS) scrollpos = selection - MROWS; process = Menu; active_menu = menu; - Clear_Screen(); - Draw_Title(Get_Menu_Title(menu)); - for (uint8_t i = 0; i < TROWS; ++i) Menu_Item_Handler(menu, i + scrollpos); - DWIN_Draw_Rectangle(1, GetColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + clearScreen(); + drawTitle(getMenuTitle(menu)); + for (uint8_t i = 0; i < TROWS; ++i) menuItemHandler(menu, i + scrollpos); + dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); } -void CrealityDWINClass::Redraw_Menu(const bool lastproc/*=true*/, const bool lastsel/*=false*/, const bool lastmenu/*=false*/) { +void CrealityDWIN::redrawMenu(const bool lastproc/*=true*/, const bool lastsel/*=false*/, const bool lastmenu/*=false*/) { switch (lastproc ? last_process : process) { case Menu: - Draw_Menu(lastmenu ? last_menu : active_menu, lastsel ? last_selection : selection, lastmenu ? 0 : scrollpos); + drawMenu(lastmenu ? last_menu : active_menu, lastsel ? last_selection : selection, lastmenu ? 0 : scrollpos); break; - case Main: Draw_Main_Menu(lastsel ? last_selection : selection); break; - case Print: Draw_Print_Screen(); break; - case File: Draw_SD_List(); break; + case Main: drawMainMenu(lastsel ? last_selection : selection); break; + case Print: drawPrintScreen(); break; + case File: drawSDList(); break; default: break; } } -void CrealityDWINClass::Redraw_Screen() { - Redraw_Menu(false); - Draw_Status_Area(true); - Update_Status_Bar(true); +void CrealityDWIN::redrawScreen() { + redrawMenu(false); + drawStatusArea(true); + updateStatusBar(true); } /* Primary Menus and Screen Elements */ -void CrealityDWINClass::Main_Menu_Icons() { +void CrealityDWIN::mainMenuIcons() { if (selection == 0) { - DWIN_ICON_Show(ICON, ICON_Print_1, 17, 130); - DWIN_Draw_Rectangle(0, GetColor(eeprom_settings.highlight_box, Color_White), 17, 130, 126, 229); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 52, 200, F("Print")); + dwinIconShow(ICON, ICON_Print_1, 17, 130); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 17, 130, 126, 229); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 52, 200, F("Print")); } else { - DWIN_ICON_Show(ICON, ICON_Print_0, 17, 130); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 52, 200, F("Print")); + dwinIconShow(ICON, ICON_Print_0, 17, 130); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 52, 200, F("Print")); } if (selection == 1) { - DWIN_ICON_Show(ICON, ICON_Prepare_1, 145, 130); - DWIN_Draw_Rectangle(0, GetColor(eeprom_settings.highlight_box, Color_White), 145, 130, 254, 229); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 170, 200, F("Prepare")); + dwinIconShow(ICON, ICON_Prepare_1, 145, 130); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 145, 130, 254, 229); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 170, 200, F("Prepare")); } else { - DWIN_ICON_Show(ICON, ICON_Prepare_0, 145, 130); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 170, 200, F("Prepare")); + dwinIconShow(ICON, ICON_Prepare_0, 145, 130); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 170, 200, F("Prepare")); } if (selection == 2) { - DWIN_ICON_Show(ICON, ICON_Control_1, 17, 246); - DWIN_Draw_Rectangle(0, GetColor(eeprom_settings.highlight_box, Color_White), 17, 246, 126, 345); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 43, 317, F("Control")); + dwinIconShow(ICON, ICON_Control_1, 17, 246); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 17, 246, 126, 345); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 43, 317, F("Control")); } else { - DWIN_ICON_Show(ICON, ICON_Control_0, 17, 246); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 43, 317, F("Control")); + dwinIconShow(ICON, ICON_Control_0, 17, 246); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 43, 317, F("Control")); } #if HAS_ABL_OR_UBL if (selection == 3) { - DWIN_ICON_Show(ICON, ICON_Leveling_1, 145, 246); - DWIN_Draw_Rectangle(0, GetColor(eeprom_settings.highlight_box, Color_White), 145, 246, 254, 345); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 179, 317, F("Level")); + dwinIconShow(ICON, ICON_Leveling_1, 145, 246); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 145, 246, 254, 345); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 179, 317, F("Level")); } else { - DWIN_ICON_Show(ICON, ICON_Leveling_0, 145, 246); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 179, 317, F("Level")); + dwinIconShow(ICON, ICON_Leveling_0, 145, 246); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 179, 317, F("Level")); } #else if (selection == 3) { - DWIN_ICON_Show(ICON, ICON_Info_1, 145, 246); - DWIN_Draw_Rectangle(0, GetColor(eeprom_settings.highlight_box, Color_White), 145, 246, 254, 345); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 181, 317, F("Info")); + dwinIconShow(ICON, ICON_Info_1, 145, 246); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 145, 246, 254, 345); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 181, 317, F("Info")); } else { - DWIN_ICON_Show(ICON, ICON_Info_0, 145, 246); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 181, 317, F("Info")); + dwinIconShow(ICON, ICON_Info_0, 145, 246); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 181, 317, F("Info")); } #endif } -void CrealityDWINClass::Draw_Main_Menu(const uint8_t select/*=0*/) { +void CrealityDWIN::drawMainMenu(const uint8_t select/*=0*/) { process = Main; active_menu = MainMenu; selection = select; - Clear_Screen(); - Draw_Title(Get_Menu_Title(MainMenu)); + clearScreen(); + drawTitle(getMenuTitle(MainMenu)); SERIAL_ECHOPGM("\nDWIN handshake "); - DWIN_ICON_Show(ICON, ICON_LOGO, 71, 72); - Main_Menu_Icons(); + dwinIconShow(ICON, ICON_LOGO, 71, 72); + mainMenuIcons(); } -void CrealityDWINClass::Print_Screen_Icons() { +void CrealityDWIN::printScreenIcons() { if (selection == 0) { - DWIN_ICON_Show(ICON, ICON_Setup_1, 8, 252); - DWIN_Draw_Rectangle(0, GetColor(eeprom_settings.highlight_box, Color_White), 8, 252, 87, 351); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 30, 322, F("Tune")); + dwinIconShow(ICON, ICON_Setup_1, 8, 252); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 8, 252, 87, 351); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 30, 322, F("Tune")); } else { - DWIN_ICON_Show(ICON, ICON_Setup_0, 8, 252); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 30, 322, F("Tune")); + dwinIconShow(ICON, ICON_Setup_0, 8, 252); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 30, 322, F("Tune")); } if (selection == 2) { - DWIN_ICON_Show(ICON, ICON_Stop_1, 184, 252); - DWIN_Draw_Rectangle(0, GetColor(eeprom_settings.highlight_box, Color_White), 184, 252, 263, 351); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 205, 322, F("Stop")); + dwinIconShow(ICON, ICON_Stop_1, 184, 252); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 184, 252, 263, 351); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 205, 322, F("Stop")); } else { - DWIN_ICON_Show(ICON, ICON_Stop_0, 184, 252); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 205, 322, F("Stop")); + dwinIconShow(ICON, ICON_Stop_0, 184, 252); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 205, 322, F("Stop")); } if (paused) { if (selection == 1) { - DWIN_ICON_Show(ICON, ICON_Continue_1, 96, 252); - DWIN_Draw_Rectangle(0, GetColor(eeprom_settings.highlight_box, Color_White), 96, 252, 175, 351); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 114, 322, F("Print")); + dwinIconShow(ICON, ICON_Continue_1, 96, 252); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 96, 252, 175, 351); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 114, 322, F("Print")); } else { - DWIN_ICON_Show(ICON, ICON_Continue_0, 96, 252); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 114, 322, F("Print")); + dwinIconShow(ICON, ICON_Continue_0, 96, 252); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 114, 322, F("Print")); } } else { if (selection == 1) { - DWIN_ICON_Show(ICON, ICON_Pause_1, 96, 252); - DWIN_Draw_Rectangle(0, GetColor(eeprom_settings.highlight_box, Color_White), 96, 252, 175, 351); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 114, 322, F("Pause")); + dwinIconShow(ICON, ICON_Pause_1, 96, 252); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 96, 252, 175, 351); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 114, 322, F("Pause")); } else { - DWIN_ICON_Show(ICON, ICON_Pause_0, 96, 252); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 114, 322, F("Pause")); + dwinIconShow(ICON, ICON_Pause_0, 96, 252); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 114, 322, F("Pause")); } } } -void CrealityDWINClass::Draw_Print_Screen() { +void CrealityDWIN::drawPrintScreen() { process = Print; selection = 0; - Clear_Screen(); - DWIN_Draw_Rectangle(1, Color_Bg_Black, 8, 352, DWIN_WIDTH - 8, 376); - Draw_Title("Printing..."); - Print_Screen_Icons(); - DWIN_ICON_Show(ICON, ICON_PrintTime, 14, 171); - DWIN_ICON_Show(ICON, ICON_RemainTime, 147, 169); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, 41, 163, F("Elapsed")); - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, 176, 163, F("Remaining")); - Update_Status_Bar(true); - Draw_Print_ProgressBar(); - Draw_Print_ProgressElapsed(); - TERN_(SET_REMAINING_TIME, Draw_Print_ProgressRemain()); - Draw_Print_Filename(true); + clearScreen(); + dwinDrawRectangle(1, Color_Bg_Black, 8, 352, DWIN_WIDTH - 8, 376); + drawTitle("Printing..."); + printScreenIcons(); + dwinIconShow(ICON, ICON_PrintTime, 14, 171); + dwinIconShow(ICON, ICON_RemainTime, 147, 169); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, 41, 163, F("Elapsed")); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, 176, 163, F("Remaining")); + updateStatusBar(true); + drawPrintProgressBar(); + drawPrintProgressElapsed(); + TERN_(SET_REMAINING_TIME, drawPrintProgressRemain()); + drawPrintFilename(true); } -void CrealityDWINClass::Draw_Print_Filename(const bool reset/*=false*/) { +void CrealityDWIN::drawPrintFilename(const bool reset/*=false*/) { typedef TextScroller<30> Scroller; static Scroller scroller; if (reset) scroller.reset(); @@ -737,61 +733,61 @@ void CrealityDWINClass::Draw_Print_Filename(const bool reset/*=false*/) { Scroller::Buffer buf; size_t outlen = 0; const char* outstr = scroller.scroll(outlen, buf, filename); - DWIN_Draw_Rectangle(1, Color_Bg_Black, 8, 50, DWIN_WIDTH - 8, 80); + dwinDrawRectangle(1, Color_Bg_Black, 8, 50, DWIN_WIDTH - 8, 80); const int8_t npos = (DWIN_WIDTH - outlen * MENU_CHR_W) / 2; - DWIN_Draw_String(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, npos, 60, outstr); + dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, npos, 60, outstr); } } -void CrealityDWINClass::Draw_Print_ProgressBar() { +void CrealityDWIN::drawPrintProgressBar() { uint8_t printpercent = sdprint ? card.percentDone() : (ui._get_progress() / 100); - DWIN_ICON_Show(ICON, ICON_Bar, 15, 93); - DWIN_Draw_Rectangle(1, BarFill_Color, 16 + printpercent * 240 / 100, 93, 256, 113); - DWIN_Draw_IntValue(true, true, 0, DWIN_FONT_MENU, GetColor(eeprom_settings.progress_percent, Percent_Color), Color_Bg_Black, 3, 109, 133, printpercent); - DWIN_Draw_String(false, DWIN_FONT_MENU, GetColor(eeprom_settings.progress_percent, Percent_Color), Color_Bg_Black, 133, 133, F("%")); + dwinIconShow(ICON, ICON_Bar, 15, 93); + dwinDrawRectangle(1, BarFill_Color, 16 + printpercent * 240 / 100, 93, 256, 113); + dwinDrawIntValue(true, true, 0, DWIN_FONT_MENU, getColor(eeprom_settings.progress_percent, Percent_Color), Color_Bg_Black, 3, 109, 133, printpercent); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_percent, Percent_Color), Color_Bg_Black, 133, 133, F("%")); } #if ENABLED(SET_REMAINING_TIME) - void CrealityDWINClass::Draw_Print_ProgressRemain() { + void CrealityDWIN::drawPrintProgressRemain() { uint16_t remainingtime = ui.get_remaining_time(); - DWIN_Draw_IntValue(true, true, 1, DWIN_FONT_MENU, GetColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 176, 187, remainingtime / 3600); - DWIN_Draw_IntValue(true, true, 1, DWIN_FONT_MENU, GetColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 200, 187, (remainingtime % 3600) / 60); + dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 176, 187, remainingtime / 3600); + dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 200, 187, (remainingtime % 3600) / 60); if (eeprom_settings.time_format_textual) { - DWIN_Draw_String(false, DWIN_FONT_MENU, GetColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 192, 187, F("h")); - DWIN_Draw_String(false, DWIN_FONT_MENU, GetColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 216, 187, F("m")); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 192, 187, F("h")); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 216, 187, F("m")); } else - DWIN_Draw_String(false, DWIN_FONT_MENU, GetColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 192, 187, F(":")); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 192, 187, F(":")); } #endif -void CrealityDWINClass::Draw_Print_ProgressElapsed() { +void CrealityDWIN::drawPrintProgressElapsed() { duration_t elapsed = print_job_timer.duration(); - DWIN_Draw_IntValue(true, true, 1, DWIN_FONT_MENU, GetColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 42, 187, elapsed.value / 3600); - DWIN_Draw_IntValue(true, true, 1, DWIN_FONT_MENU, GetColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 66, 187, (elapsed.value % 3600) / 60); + dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 42, 187, elapsed.value / 3600); + dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 66, 187, (elapsed.value % 3600) / 60); if (eeprom_settings.time_format_textual) { - DWIN_Draw_String(false, DWIN_FONT_MENU, GetColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 58, 187, F("h")); - DWIN_Draw_String(false, DWIN_FONT_MENU, GetColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 82, 187, F("m")); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 58, 187, F("h")); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 82, 187, F("m")); } else - DWIN_Draw_String(false, DWIN_FONT_MENU, GetColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 58, 187, F(":")); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 58, 187, F(":")); } -void CrealityDWINClass::Draw_Print_confirm() { - Draw_Print_Screen(); +void CrealityDWIN::drawPrintConfirm() { + drawPrintScreen(); process = Confirm; popup = Complete; - DWIN_Draw_Rectangle(1, Color_Bg_Black, 8, 252, 263, 351); - DWIN_ICON_Show(ICON, ICON_Confirm_E, 87, 283); - DWIN_Draw_Rectangle(0, GetColor(eeprom_settings.highlight_box, Color_White), 86, 282, 187, 321); - DWIN_Draw_Rectangle(0, GetColor(eeprom_settings.highlight_box, Color_White), 85, 281, 188, 322); + dwinDrawRectangle(1, Color_Bg_Black, 8, 252, 263, 351); + dwinIconShow(ICON, ICON_Confirm_E, 87, 283); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 86, 282, 187, 321); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 85, 281, 188, 322); } -void CrealityDWINClass::Draw_SD_Item(const uint8_t item, const uint8_t row) { +void CrealityDWIN::drawSDItem(const uint8_t item, const uint8_t row) { if (item == 0) - Draw_Menu_Item(0, ICON_Back, card.flag.workDirIsRoot ? F("Back") : F("..")); + drawMenuItem(0, ICON_Back, card.flag.workDirIsRoot ? F("Back") : F("..")); else { card.selectFileByIndexSorted(item - 1); char * const filename = card.longest_filename(); @@ -806,31 +802,31 @@ void CrealityDWINClass::Draw_SD_Item(const uint8_t item, const uint8_t row) { if (pos > max) for (uint8_t i = len - 3; i < len; ++i) name[i] = '.'; name[len] = '\0'; - Draw_Menu_Item(row, card.flag.filenameIsDir ? ICON_More : ICON_File, name); + drawMenuItem(row, card.flag.filenameIsDir ? ICON_More : ICON_File, name); } } -void CrealityDWINClass::Draw_SD_List(const bool removed/*=false*/) { - Clear_Screen(); - Draw_Title("Select File"); +void CrealityDWIN::drawSDList(const bool removed/*=false*/) { + clearScreen(); + drawTitle("Select File"); selection = 0; scrollpos = 0; process = File; if (card.isMounted() && !removed) { for (uint8_t i = 0; i < _MIN(card.get_num_items() + 1, TROWS); ++i) - Draw_SD_Item(i, i); + drawSDItem(i, i); } else { - Draw_Menu_Item(0, ICON_Back, F("Back")); - DWIN_Draw_Rectangle(1, Color_Bg_Red, 10, MBASE(3) - 10, DWIN_WIDTH - 10, MBASE(4)); - DWIN_Draw_String(false, font16x32, Color_Yellow, Color_Bg_Red, ((DWIN_WIDTH) - 8 * 16) / 2, MBASE(3), F("No Media")); + drawMenuItem(0, ICON_Back, F("Back")); + dwinDrawRectangle(1, Color_Bg_Red, 10, MBASE(3) - 10, DWIN_WIDTH - 10, MBASE(4)); + dwinDrawString(false, font16x32, Color_Yellow, Color_Bg_Red, ((DWIN_WIDTH) - 8 * 16) / 2, MBASE(3), F("No Media")); } - DWIN_Draw_Rectangle(1, GetColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(0) - 18, 14, MBASE(0) + 33); + dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(0) - 18, 14, MBASE(0) + 33); } -void CrealityDWINClass::Draw_Status_Area(const bool icons/*=false*/) { +void CrealityDWIN::drawStatusArea(const bool icons/*=false*/) { - if (icons) DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, STATUS_Y, DWIN_WIDTH, DWIN_HEIGHT - 1); + if (icons) dwinDrawRectangle(1, Color_Bg_Black, 0, STATUS_Y, DWIN_WIDTH, DWIN_HEIGHT - 1); #if HAS_HOTEND static float hotend = -1; @@ -838,27 +834,27 @@ void CrealityDWINClass::Draw_Status_Area(const bool icons/*=false*/) { if (icons) { hotend = -1; hotendtarget = -1; - DWIN_ICON_Show(ICON, ICON_HotendTemp, 10, 383); - DWIN_Draw_String(false, DWIN_FONT_STAT, GetColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 25 + 3 * STAT_CHR_W + 5, 384, F("/")); + dwinIconShow(ICON, ICON_HotendTemp, 10, 383); + dwinDrawString(false, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 25 + 3 * STAT_CHR_W + 5, 384, F("/")); } if (thermalManager.temp_hotend[0].celsius != hotend) { hotend = thermalManager.temp_hotend[0].celsius; - DWIN_Draw_IntValue(true, true, 0, DWIN_FONT_STAT, GetColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 28, 384, thermalManager.temp_hotend[0].celsius); - DWIN_Draw_DegreeSymbol(GetColor(eeprom_settings.status_area_text, Color_White), 25 + 3 * STAT_CHR_W + 5, 386); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 28, 384, thermalManager.temp_hotend[0].celsius); + dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, Color_White), 25 + 3 * STAT_CHR_W + 5, 386); } if (thermalManager.temp_hotend[0].target != hotendtarget) { hotendtarget = thermalManager.temp_hotend[0].target; - DWIN_Draw_IntValue(true, true, 0, DWIN_FONT_STAT, GetColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 25 + 4 * STAT_CHR_W + 6, 384, thermalManager.temp_hotend[0].target); - DWIN_Draw_DegreeSymbol(GetColor(eeprom_settings.status_area_text, Color_White), 25 + 4 * STAT_CHR_W + 39, 386); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 25 + 4 * STAT_CHR_W + 6, 384, thermalManager.temp_hotend[0].target); + dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, Color_White), 25 + 4 * STAT_CHR_W + 39, 386); } if (icons) { flow = -1; - DWIN_ICON_Show(ICON, ICON_StepE, 112, 417); - DWIN_Draw_String(false, DWIN_FONT_STAT, GetColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 116 + 5 * STAT_CHR_W + 2, 417, F("%")); + dwinIconShow(ICON, ICON_StepE, 112, 417); + dwinDrawString(false, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 116 + 5 * STAT_CHR_W + 2, 417, F("%")); } if (planner.flow_percentage[0] != flow) { flow = planner.flow_percentage[0]; - DWIN_Draw_IntValue(true, true, 0, DWIN_FONT_STAT, GetColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 116 + 2 * STAT_CHR_W, 417, planner.flow_percentage[0]); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 116 + 2 * STAT_CHR_W, 417, planner.flow_percentage[0]); } #endif @@ -868,18 +864,18 @@ void CrealityDWINClass::Draw_Status_Area(const bool icons/*=false*/) { if (icons) { bed = -1; bedtarget = -1; - DWIN_ICON_Show(ICON, ICON_BedTemp, 10, 416); - DWIN_Draw_String(false, DWIN_FONT_STAT, GetColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 25 + 3 * STAT_CHR_W + 5, 417, F("/")); + dwinIconShow(ICON, ICON_BedTemp, 10, 416); + dwinDrawString(false, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 25 + 3 * STAT_CHR_W + 5, 417, F("/")); } if (thermalManager.temp_bed.celsius != bed) { bed = thermalManager.temp_bed.celsius; - DWIN_Draw_IntValue(true, true, 0, DWIN_FONT_STAT, GetColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 28, 417, thermalManager.temp_bed.celsius); - DWIN_Draw_DegreeSymbol(GetColor(eeprom_settings.status_area_text, Color_White), 25 + 3 * STAT_CHR_W + 5, 419); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 28, 417, thermalManager.temp_bed.celsius); + dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, Color_White), 25 + 3 * STAT_CHR_W + 5, 419); } if (thermalManager.temp_bed.target != bedtarget) { bedtarget = thermalManager.temp_bed.target; - DWIN_Draw_IntValue(true, true, 0, DWIN_FONT_STAT, GetColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 25 + 4 * STAT_CHR_W + 6, 417, thermalManager.temp_bed.target); - DWIN_Draw_DegreeSymbol(GetColor(eeprom_settings.status_area_text, Color_White), 25 + 4 * STAT_CHR_W + 39, 419); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 25 + 4 * STAT_CHR_W + 6, 417, thermalManager.temp_bed.target); + dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, Color_White), 25 + 4 * STAT_CHR_W + 39, 419); } #endif @@ -887,11 +883,11 @@ void CrealityDWINClass::Draw_Status_Area(const bool icons/*=false*/) { static uint8_t fan = -1; if (icons) { fan = -1; - DWIN_ICON_Show(ICON, ICON_FanSpeed, 187, 383); + dwinIconShow(ICON, ICON_FanSpeed, 187, 383); } if (thermalManager.fan_speed[0] != fan) { fan = thermalManager.fan_speed[0]; - DWIN_Draw_IntValue(true, true, 0, DWIN_FONT_STAT, GetColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 195 + 2 * STAT_CHR_W, 384, thermalManager.fan_speed[0]); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 195 + 2 * STAT_CHR_W, 384, thermalManager.fan_speed[0]); } #endif @@ -900,24 +896,24 @@ void CrealityDWINClass::Draw_Status_Area(const bool icons/*=false*/) { if (icons) { offset = -1; - DWIN_ICON_Show(ICON, ICON_Zoffset, 187, 416); + dwinIconShow(ICON, ICON_Zoffset, 187, 416); } if (zoffsetvalue != offset) { offset = zoffsetvalue; - DWIN_Draw_FloatValue(true, true, 0, DWIN_FONT_STAT, GetColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 2, 2, 207, 417, (zoffsetvalue < 0 ? -zoffsetvalue : zoffsetvalue)); - DWIN_Draw_String(true, DWIN_FONT_MENU, GetColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 205, 419, zoffsetvalue < 0 ? F("-") : F(" ")); + dwinDrawFloatValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 2, 2, 207, 417, (zoffsetvalue < 0 ? -zoffsetvalue : zoffsetvalue)); + dwinDrawString(true, DWIN_FONT_MENU, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 205, 419, zoffsetvalue < 0 ? F("-") : F(" ")); } #endif static int16_t feedrate = -1; if (icons) { feedrate = -1; - DWIN_ICON_Show(ICON, ICON_Speed, 113, 383); - DWIN_Draw_String(false, DWIN_FONT_STAT, GetColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 116 + 5 * STAT_CHR_W + 2, 384, F("%")); + dwinIconShow(ICON, ICON_Speed, 113, 383); + dwinDrawString(false, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 116 + 5 * STAT_CHR_W + 2, 384, F("%")); } if (feedrate_percentage != feedrate) { feedrate = feedrate_percentage; - DWIN_Draw_IntValue(true, true, 0, DWIN_FONT_STAT, GetColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 116 + 2 * STAT_CHR_W, 384, feedrate_percentage); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 116 + 2 * STAT_CHR_W, 384, feedrate_percentage); } static float x = -1, y = -1, z = -1; @@ -927,75 +923,75 @@ void CrealityDWINClass::Draw_Status_Area(const bool icons/*=false*/) { update_z = (current_position.z != z || axis_should_home(Z_AXIS) || update_z); if (icons) { x = y = z = -1; - DWIN_Draw_Line(GetColor(eeprom_settings.coordinates_split_line, Line_Color, true), 16, 450, 256, 450); - DWIN_ICON_Show(ICON, ICON_MaxSpeedX, 10, 456); - DWIN_ICON_Show(ICON, ICON_MaxSpeedY, 95, 456); - DWIN_ICON_Show(ICON, ICON_MaxSpeedZ, 180, 456); + dwinDrawLine(getColor(eeprom_settings.coordinates_split_line, Line_Color, true), 16, 450, 256, 450); + dwinIconShow(ICON, ICON_MaxSpeedX, 10, 456); + dwinIconShow(ICON, ICON_MaxSpeedY, 95, 456); + dwinIconShow(ICON, ICON_MaxSpeedZ, 180, 456); } if (update_x) { x = current_position.x; if ((update_x = axis_should_home(X_AXIS) && ui.get_blink())) - DWIN_Draw_String(true, DWIN_FONT_MENU, GetColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 35, 459, F(" -?- ")); + dwinDrawString(true, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 35, 459, F(" -?- ")); else - DWIN_Draw_FloatValue(true, true, 0, DWIN_FONT_MENU, GetColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 3, 1, 35, 459, current_position.x); + dwinDrawFloatValue(true, true, 0, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 3, 1, 35, 459, current_position.x); } if (update_y) { y = current_position.y; if ((update_y = axis_should_home(Y_AXIS) && ui.get_blink())) - DWIN_Draw_String(true, DWIN_FONT_MENU, GetColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 120, 459, F(" -?- ")); + dwinDrawString(true, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 120, 459, F(" -?- ")); else - DWIN_Draw_FloatValue(true, true, 0, DWIN_FONT_MENU, GetColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 3, 1, 120, 459, current_position.y); + dwinDrawFloatValue(true, true, 0, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 3, 1, 120, 459, current_position.y); } if (update_z) { z = current_position.z; if ((update_z = axis_should_home(Z_AXIS) && ui.get_blink())) - DWIN_Draw_String(true, DWIN_FONT_MENU, GetColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 205, 459, F(" -?- ")); + dwinDrawString(true, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 205, 459, F(" -?- ")); else - DWIN_Draw_FloatValue(true, true, 0, DWIN_FONT_MENU, GetColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 3, 2, 205, 459, current_position.z >= 0 ? current_position.z : 0); + dwinDrawFloatValue(true, true, 0, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 3, 2, 205, 459, current_position.z >= 0 ? current_position.z : 0); } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void CrealityDWINClass::Draw_Popup(FSTR_P const line1, FSTR_P const line2, FSTR_P const line3, uint8_t mode, uint8_t icon/*=0*/) { +void CrealityDWIN::drawPopup(FSTR_P const line1, FSTR_P const line2, FSTR_P const line3, uint8_t mode, uint8_t icon/*=0*/) { if (process != Confirm && process != Popup && process != Wait) last_process = process; if ((process == Menu || process == Wait) && mode == Popup) last_selection = selection; process = mode; - Clear_Screen(); - DWIN_Draw_Rectangle(0, Color_White, 13, 59, 259, 351); - DWIN_Draw_Rectangle(1, Color_Bg_Window, 14, 60, 258, 350); + clearScreen(); + dwinDrawRectangle(0, Color_White, 13, 59, 259, 351); + dwinDrawRectangle(1, Color_Bg_Window, 14, 60, 258, 350); const uint8_t ypos = (mode == Popup || mode == Confirm) ? 150 : 230; - if (icon > 0) DWIN_ICON_Show(ICON, icon, 101, 105); - DWIN_Draw_String(true, DWIN_FONT_MENU, Popup_Text_Color, Color_Bg_Window, (272 - 8 * strlen_P(FTOP(line1))) / 2, ypos, line1); - DWIN_Draw_String(true, DWIN_FONT_MENU, Popup_Text_Color, Color_Bg_Window, (272 - 8 * strlen_P(FTOP(line2))) / 2, ypos + 30, line2); - DWIN_Draw_String(true, DWIN_FONT_MENU, Popup_Text_Color, Color_Bg_Window, (272 - 8 * strlen_P(FTOP(line3))) / 2, ypos + 60, line3); + if (icon > 0) dwinIconShow(ICON, icon, 101, 105); + dwinDrawString(true, DWIN_FONT_MENU, Popup_Text_Color, Color_Bg_Window, (272 - 8 * strlen_P(FTOP(line1))) / 2, ypos, line1); + dwinDrawString(true, DWIN_FONT_MENU, Popup_Text_Color, Color_Bg_Window, (272 - 8 * strlen_P(FTOP(line2))) / 2, ypos + 30, line2); + dwinDrawString(true, DWIN_FONT_MENU, Popup_Text_Color, Color_Bg_Window, (272 - 8 * strlen_P(FTOP(line3))) / 2, ypos + 60, line3); if (mode == Popup) { selection = 0; - DWIN_Draw_Rectangle(1, Confirm_Color, 26, 280, 125, 317); - DWIN_Draw_Rectangle(1, Cancel_Color, 146, 280, 245, 317); - DWIN_Draw_String(false, DWIN_FONT_STAT, Color_White, Color_Bg_Window, 39, 290, F("Confirm")); - DWIN_Draw_String(false, DWIN_FONT_STAT, Color_White, Color_Bg_Window, 165, 290, F("Cancel")); - Popup_Select(); + dwinDrawRectangle(1, Confirm_Color, 26, 280, 125, 317); + dwinDrawRectangle(1, Cancel_Color, 146, 280, 245, 317); + dwinDrawString(false, DWIN_FONT_STAT, Color_White, Color_Bg_Window, 39, 290, F("Confirm")); + dwinDrawString(false, DWIN_FONT_STAT, Color_White, Color_Bg_Window, 165, 290, F("Cancel")); + popupSelect(); } else if (mode == Confirm) { - DWIN_Draw_Rectangle(1, Confirm_Color, 87, 280, 186, 317); - DWIN_Draw_String(false, DWIN_FONT_STAT, Color_White, Color_Bg_Window, 96, 290, F("Continue")); + dwinDrawRectangle(1, Confirm_Color, 87, 280, 186, 317); + dwinDrawString(false, DWIN_FONT_STAT, Color_White, Color_Bg_Window, 96, 290, F("Continue")); } } void MarlinUI::kill_screen(FSTR_P const error, FSTR_P const) { - CrealityDWIN.Draw_Popup(F("Printer Kill Reason:"), error, F("Restart Required"), Wait, ICON_BLTouch); + crealityDWIN.drawPopup(F("Printer Kill Reason:"), error, F("Restart Required"), Wait, ICON_BLTouch); } -void CrealityDWINClass::Popup_Select() { - const uint16_t c1 = selection ? Color_Bg_Window : GetColor(eeprom_settings.highlight_box, Color_White), - c2 = selection ? GetColor(eeprom_settings.highlight_box, Color_White) : Color_Bg_Window; - DWIN_Draw_Rectangle(0, c1, 25, 279, 126, 318); - DWIN_Draw_Rectangle(0, c1, 24, 278, 127, 319); - DWIN_Draw_Rectangle(0, c2, 145, 279, 246, 318); - DWIN_Draw_Rectangle(0, c2, 144, 278, 247, 319); +void CrealityDWIN::popupSelect() { + const uint16_t c1 = selection ? Color_Bg_Window : getColor(eeprom_settings.highlight_box, Color_White), + c2 = selection ? getColor(eeprom_settings.highlight_box, Color_White) : Color_Bg_Window; + dwinDrawRectangle(0, c1, 25, 279, 126, 318); + dwinDrawRectangle(0, c1, 24, 278, 127, 319); + dwinDrawRectangle(0, c2, 145, 279, 246, 318); + dwinDrawRectangle(0, c2, 144, 278, 247, 319); } -void CrealityDWINClass::Update_Status_Bar(const bool refresh/*=false*/) { +void CrealityDWIN::updateStatusBar(const bool refresh/*=false*/) { typedef TextScroller<30> Scroller; static bool new_msg; static Scroller scroller; @@ -1011,21 +1007,21 @@ void CrealityDWINClass::Update_Status_Bar(const bool refresh/*=false*/) { if (new_msg) { new_msg = false; if (process == Print) { - DWIN_Draw_Rectangle(1, Color_Grey, 8, 214, DWIN_WIDTH - 8, 238); + dwinDrawRectangle(1, Color_Grey, 8, 214, DWIN_WIDTH - 8, 238); const int8_t npos = (DWIN_WIDTH - len * MENU_CHR_W) / 2; - DWIN_Draw_String(false, DWIN_FONT_MENU, GetColor(eeprom_settings.status_bar_text, Color_White), Color_Bg_Black, npos, 219, dispmsg); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.status_bar_text, Color_White), Color_Bg_Black, npos, 219, dispmsg); } else { - DWIN_Draw_Rectangle(1, Color_Bg_Black, 8, 352, DWIN_WIDTH - 8, 376); + dwinDrawRectangle(1, Color_Bg_Black, 8, 352, DWIN_WIDTH - 8, 376); const int8_t npos = (DWIN_WIDTH - len * MENU_CHR_W) / 2; - DWIN_Draw_String(false, DWIN_FONT_MENU, GetColor(eeprom_settings.status_bar_text, Color_White), Color_Bg_Black, npos, 357, dispmsg); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.status_bar_text, Color_White), Color_Bg_Black, npos, 357, dispmsg); } } } /* Menu Item Config */ -void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item, bool draw/*=true*/) { +void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool draw/*=true*/) { const uint8_t row = item - scrollpos; #if HAS_LEVELING static bool level_state; @@ -1043,38 +1039,38 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case PREHEAT_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(TempMenu, sel); + drawMenu(TempMenu, sel); break; #if HAS_HOTEND case PREHEAT_SUBMENU_HOTEND: if (draw) { - Draw_Menu_Item(row, ICON_SetEndTemp, F("Hotend")); - Draw_Float(ui.material_preset[index].hotend_temp, row, false, 1); + drawMenuItem(row, ICON_SetEndTemp, F("Hotend")); + drawFloat(ui.material_preset[index].hotend_temp, row, false, 1); } else - Modify_Value(ui.material_preset[index].hotend_temp, MIN_E_TEMP, MAX_E_TEMP, 1); + modifyValue(ui.material_preset[index].hotend_temp, MIN_E_TEMP, MAX_E_TEMP, 1); break; #endif #if HAS_HEATED_BED case PREHEAT_SUBMENU_BED: if (draw) { - Draw_Menu_Item(row, ICON_SetBedTemp, F("Bed")); - Draw_Float(ui.material_preset[index].bed_temp, row, false, 1); + drawMenuItem(row, ICON_SetBedTemp, F("Bed")); + drawFloat(ui.material_preset[index].bed_temp, row, false, 1); } else - Modify_Value(ui.material_preset[index].bed_temp, MIN_BED_TEMP, MAX_BED_TEMP, 1); + modifyValue(ui.material_preset[index].bed_temp, MIN_BED_TEMP, MAX_BED_TEMP, 1); break; #endif #if HAS_FAN case PREHEAT_SUBMENU_FAN: if (draw) { - Draw_Menu_Item(row, ICON_FanSpeed, F("Fan")); - Draw_Float(ui.material_preset[index].fan_speed, row, false, 1); + drawMenuItem(row, ICON_FanSpeed, F("Fan")); + drawFloat(ui.material_preset[index].fan_speed, row, false, 1); } else - Modify_Value(ui.material_preset[index].fan_speed, MIN_FAN_SPEED, MAX_FAN_SPEED, 1); + modifyValue(ui.material_preset[index].fan_speed, MIN_FAN_SPEED, MAX_FAN_SPEED, 1); break; #endif } @@ -1100,54 +1096,54 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case PREPARE_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Main_Menu(1); + drawMainMenu(1); break; case PREPARE_MOVE: if (draw) - Draw_Menu_Item(row, ICON_Axis, F("Move"), nullptr, true); + drawMenuItem(row, ICON_Axis, F("Move"), nullptr, true); else - Draw_Menu(Move); + drawMenu(Move); break; case PREPARE_DISABLE: if (draw) - Draw_Menu_Item(row, ICON_CloseMotor, F("Disable Stepper")); + drawMenuItem(row, ICON_CloseMotor, F("Disable Stepper")); else queue.inject(F("M84")); break; case PREPARE_HOME: if (draw) - Draw_Menu_Item(row, ICON_SetHome, F("Homing"), nullptr, true); + drawMenuItem(row, ICON_SetHome, F("Homing"), nullptr, true); else - Draw_Menu(HomeMenu); + drawMenu(HomeMenu); break; case PREPARE_MANUALLEVEL: if (draw) - Draw_Menu_Item(row, ICON_PrintSize, F("Manual Leveling"), nullptr, true); + drawMenuItem(row, ICON_PrintSize, F("Manual Leveling"), nullptr, true); else { if (axes_should_home()) { - Popup_Handler(Home); + popupHandler(Home); gcode.home_all_axes(true); } #if HAS_LEVELING level_state = planner.leveling_active; set_bed_leveling_enabled(false); #endif - Draw_Menu(ManualLevel); + drawMenu(ManualLevel); } break; #if HAS_ZOFFSET_ITEM case PREPARE_ZOFFSET: if (draw) - Draw_Menu_Item(row, ICON_Zoffset, F("Z-Offset"), nullptr, true); + drawMenuItem(row, ICON_Zoffset, F("Z-Offset"), nullptr, true); else { #if HAS_LEVELING level_state = planner.leveling_active; set_bed_leveling_enabled(false); #endif - Draw_Menu(ZOffset); + drawMenu(ZOffset); } break; #endif @@ -1155,16 +1151,16 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #if HAS_PREHEAT case PREPARE_PREHEAT: if (draw) - Draw_Menu_Item(row, ICON_Temperature, F("Preheat"), nullptr, true); + drawMenuItem(row, ICON_Temperature, F("Preheat"), nullptr, true); else - Draw_Menu(Preheat); + drawMenu(Preheat); break; #endif #if HAS_HOTEND || HAS_HEATED_BED case PREPARE_COOLDOWN: if (draw) - Draw_Menu_Item(row, ICON_Cool, F("Cooldown")); + drawMenuItem(row, ICON_Cool, F("Cooldown")); else thermalManager.cooldown(); break; @@ -1176,16 +1172,16 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #define CUSTOM_MENU_CONFIG_TITLE "Custom Commands" #endif if (draw) - Draw_Menu_Item(row, ICON_Version, F(CUSTOM_MENU_CONFIG_TITLE)); + drawMenuItem(row, ICON_Version, F(CUSTOM_MENU_CONFIG_TITLE)); else - Draw_Menu(MenuCustom); + drawMenu(MenuCustom); break; #endif #if ENABLED(ADVANCED_PAUSE_FEATURE) case PREPARE_CHANGEFIL: if (draw) { - Draw_Menu_Item(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE) + drawMenuItem(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE) #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) , nullptr, true #endif @@ -1193,16 +1189,16 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item } else { #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) - Draw_Menu(ChangeFilament); + drawMenu(ChangeFilament); #else if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) - Popup_Handler(ETemp); + popupHandler(ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - Popup_Handler(Heating); + popupHandler(Heating); thermalManager.wait_for_hotend(0); } - Popup_Handler(FilChange); + popupHandler(FilChange); sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); gcode.process_subcommands_now(cmd); } @@ -1226,55 +1222,55 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case HOME_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Prepare, PREPARE_HOME); + drawMenu(Prepare, PREPARE_HOME); break; case HOME_ALL: if (draw) - Draw_Menu_Item(row, ICON_Homing, F("Home All")); + drawMenuItem(row, ICON_Homing, F("Home All")); else { - Popup_Handler(Home); + popupHandler(Home); gcode.home_all_axes(true); - Redraw_Menu(); + redrawMenu(); } break; case HOME_X: if (draw) - Draw_Menu_Item(row, ICON_MoveX, F("Home X")); + drawMenuItem(row, ICON_MoveX, F("Home X")); else { - Popup_Handler(Home); + popupHandler(Home); gcode.process_subcommands_now(F("G28 X")); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } break; case HOME_Y: if (draw) - Draw_Menu_Item(row, ICON_MoveY, F("Home Y")); + drawMenuItem(row, ICON_MoveY, F("Home Y")); else { - Popup_Handler(Home); + popupHandler(Home); gcode.process_subcommands_now(F("G28 Y")); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } break; case HOME_Z: if (draw) - Draw_Menu_Item(row, ICON_MoveZ, F("Home Z")); + drawMenuItem(row, ICON_MoveZ, F("Home Z")); else { - Popup_Handler(Home); + popupHandler(Home); gcode.process_subcommands_now(F("G28 Z")); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } break; case HOME_SET: if (draw) - Draw_Menu_Item(row, ICON_SetHome, F("Set Home Position")); + drawMenuItem(row, ICON_SetHome, F("Set Home Position")); else { gcode.process_subcommands_now(F("G92X0Y0Z0")); - AudioFeedback(); + audioFeedback(); } break; } @@ -1294,61 +1290,61 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case MOVE_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else { #if HAS_BED_PROBE probe_deployed = false; probe.set_deployed(probe_deployed); #endif - Draw_Menu(Prepare, PREPARE_MOVE); + drawMenu(Prepare, PREPARE_MOVE); } break; case MOVE_X: if (draw) { - Draw_Menu_Item(row, ICON_MoveX, F("Move X")); - Draw_Float(current_position.x, row, false); + drawMenuItem(row, ICON_MoveX, F("Move X")); + drawFloat(current_position.x, row, false); } else - Modify_Value(current_position.x, X_MIN_POS, X_MAX_POS, 10); + modifyValue(current_position.x, X_MIN_POS, X_MAX_POS, 10); break; case MOVE_Y: if (draw) { - Draw_Menu_Item(row, ICON_MoveY, F("Move Y")); - Draw_Float(current_position.y, row); + drawMenuItem(row, ICON_MoveY, F("Move Y")); + drawFloat(current_position.y, row); } else - Modify_Value(current_position.y, Y_MIN_POS, Y_MAX_POS, 10); + modifyValue(current_position.y, Y_MIN_POS, Y_MAX_POS, 10); break; case MOVE_Z: if (draw) { - Draw_Menu_Item(row, ICON_MoveZ, F("Move Z")); - Draw_Float(current_position.z, row); + drawMenuItem(row, ICON_MoveZ, F("Move Z")); + drawFloat(current_position.z, row); } else - Modify_Value(current_position.z, Z_MIN_POS, Z_MAX_POS, 10); + modifyValue(current_position.z, Z_MIN_POS, Z_MAX_POS, 10); break; #if HAS_HOTEND case MOVE_E: if (draw) { - Draw_Menu_Item(row, ICON_Extruder, F("Extruder")); + drawMenuItem(row, ICON_Extruder, F("Extruder")); current_position.e = 0; sync_plan_position(); - Draw_Float(current_position.e, row); + drawFloat(current_position.e, row); } else { if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) { - Popup_Handler(ETemp); + popupHandler(ETemp); } else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - Popup_Handler(Heating); + popupHandler(Heating); thermalManager.wait_for_hotend(0); - Redraw_Menu(); + redrawMenu(); } current_position.e = 0; sync_plan_position(); - Modify_Value(current_position.e, -500, 500, 10); + modifyValue(current_position.e, -500, 500, 10); } } break; @@ -1357,25 +1353,25 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #if HAS_BED_PROBE case MOVE_P: if (draw) { - Draw_Menu_Item(row, ICON_StockConfiguration, F("Probe")); - Draw_Checkbox(row, probe_deployed); + drawMenuItem(row, ICON_StockConfiguration, F("Probe")); + drawCheckbox(row, probe_deployed); } else { probe_deployed = !probe_deployed; probe.set_deployed(probe_deployed); - Draw_Checkbox(row, probe_deployed); + drawCheckbox(row, probe_deployed); } break; #endif case MOVE_LIVE: if (draw) { - Draw_Menu_Item(row, ICON_Axis, F("Live Movement")); - Draw_Checkbox(row, livemove); + drawMenuItem(row, ICON_Axis, F("Live Movement")); + drawCheckbox(row, livemove); } else { livemove = !livemove; - Draw_Checkbox(row, livemove); + drawCheckbox(row, livemove); } break; } @@ -1405,24 +1401,24 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case MLEVEL_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else { TERN_(HAS_LEVELING, set_bed_leveling_enabled(level_state)); - Draw_Menu(Prepare, PREPARE_MANUALLEVEL); + drawMenu(Prepare, PREPARE_MANUALLEVEL); } break; #if HAS_BED_PROBE case MLEVEL_PROBE: if (draw) { - Draw_Menu_Item(row, ICON_Zoffset, F("Use Probe")); - Draw_Checkbox(row, use_probe); + drawMenuItem(row, ICON_Zoffset, F("Use Probe")); + drawCheckbox(row, use_probe); } else { use_probe ^= true; - Draw_Checkbox(row, use_probe); + drawCheckbox(row, use_probe); if (use_probe) { - Popup_Handler(Level); + popupHandler(Level); const struct { xy_pos_t p; ProbePtRaise r; } points[] = { { { probe_x_min, probe_y_min }, PROBE_PT_RAISE }, { { probe_x_min, probe_y_max }, PROBE_PT_RAISE }, @@ -1436,7 +1432,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item corner_avg += mz; } corner_avg /= 4; - Redraw_Menu(); + redrawMenu(); } } break; @@ -1444,116 +1440,116 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item case MLEVEL_BL: if (draw) - Draw_Menu_Item(row, ICON_AxisBL, F("Bottom Left")); + drawMenuItem(row, ICON_AxisBL, F("Bottom Left")); else { - Popup_Handler(MoveWait); + popupHandler(MoveWait); if (use_probe) { #if HAS_BED_PROBE sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(probe_x_min, 1, 3, str_1), dtostrf(probe_y_min, 1, 3, str_2)); gcode.process_subcommands_now(cmd); planner.synchronize(); - Popup_Handler(ManualProbing); + popupHandler(ManualProbing); #endif } else { sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf(corner_pos, 1, 3, str_1), dtostrf(corner_pos, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3)); gcode.process_subcommands_now(cmd); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } } break; case MLEVEL_TL: if (draw) - Draw_Menu_Item(row, ICON_AxisTL, F("Top Left")); + drawMenuItem(row, ICON_AxisTL, F("Top Left")); else { - Popup_Handler(MoveWait); + popupHandler(MoveWait); if (use_probe) { #if HAS_BED_PROBE sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(probe_x_min, 1, 3, str_1), dtostrf(probe_y_max, 1, 3, str_2)); gcode.process_subcommands_now(cmd); planner.synchronize(); - Popup_Handler(ManualProbing); + popupHandler(ManualProbing); #endif } else { sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf(corner_pos, 1, 3, str_1), dtostrf((Y_BED_SIZE + Y_MIN_POS) - corner_pos, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3)); gcode.process_subcommands_now(cmd); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } } break; case MLEVEL_TR: if (draw) - Draw_Menu_Item(row, ICON_AxisTR, F("Top Right")); + drawMenuItem(row, ICON_AxisTR, F("Top Right")); else { - Popup_Handler(MoveWait); + popupHandler(MoveWait); if (use_probe) { #if HAS_BED_PROBE sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(probe_x_max, 1, 3, str_1), dtostrf(probe_y_max, 1, 3, str_2)); gcode.process_subcommands_now(cmd); planner.synchronize(); - Popup_Handler(ManualProbing); + popupHandler(ManualProbing); #endif } else { sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf((X_BED_SIZE + X_MIN_POS) - corner_pos, 1, 3, str_1), dtostrf((Y_BED_SIZE + Y_MIN_POS) - corner_pos, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3)); gcode.process_subcommands_now(cmd); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } } break; case MLEVEL_BR: if (draw) - Draw_Menu_Item(row, ICON_AxisBR, F("Bottom Right")); + drawMenuItem(row, ICON_AxisBR, F("Bottom Right")); else { - Popup_Handler(MoveWait); + popupHandler(MoveWait); if (use_probe) { #if HAS_BED_PROBE sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(probe_x_max, 1, 3, str_1), dtostrf(probe_y_min, 1, 3, str_2)); gcode.process_subcommands_now(cmd); planner.synchronize(); - Popup_Handler(ManualProbing); + popupHandler(ManualProbing); #endif } else { sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf((X_BED_SIZE + X_MIN_POS) - corner_pos, 1, 3, str_1), dtostrf(corner_pos, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3)); gcode.process_subcommands_now(cmd); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } } break; case MLEVEL_C: if (draw) - Draw_Menu_Item(row, ICON_AxisC, F("Center")); + drawMenuItem(row, ICON_AxisC, F("Center")); else { - Popup_Handler(MoveWait); + popupHandler(MoveWait); if (use_probe) { #if HAS_BED_PROBE sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(X_MAX_POS / 2.0f - probe.offset.x, 1, 3, str_1), dtostrf(Y_MAX_POS / 2.0f - probe.offset.y, 1, 3, str_2)); gcode.process_subcommands_now(cmd); planner.synchronize(); - Popup_Handler(ManualProbing); + popupHandler(ManualProbing); #endif } else { sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf((X_BED_SIZE + X_MIN_POS) / 2.0f, 1, 3, str_1), dtostrf((Y_BED_SIZE + Y_MIN_POS) / 2.0f, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3)); gcode.process_subcommands_now(cmd); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } } break; case MLEVEL_ZPOS: if (draw) { - Draw_Menu_Item(row, ICON_SetZOffset, F("Z Position")); - Draw_Float(mlev_z_pos, row, false, 100); + drawMenuItem(row, ICON_SetZOffset, F("Z Position")); + drawFloat(mlev_z_pos, row, false, 100); } else - Modify_Value(mlev_z_pos, 0, MAX_Z_OFFSET, 100); + modifyValue(mlev_z_pos, 0, MAX_Z_OFFSET, 100); break; } @@ -1574,20 +1570,20 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case ZOFFSET_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else { liveadjust = false; TERN_(HAS_LEVELING, set_bed_leveling_enabled(level_state)); - Draw_Menu(Prepare, PREPARE_ZOFFSET); + drawMenu(Prepare, PREPARE_ZOFFSET); } break; case ZOFFSET_HOME: if (draw) - Draw_Menu_Item(row, ICON_Homing, F("Home Z Axis")); + drawMenuItem(row, ICON_Homing, F("Home Z Axis")); else { - Popup_Handler(Home); + popupHandler(Home); gcode.process_subcommands_now(F("G28 Z")); - Popup_Handler(MoveWait); + popupHandler(MoveWait); #if ENABLED(Z_SAFE_HOMING) planner.synchronize(); sprintf_P(cmd, PSTR("G0 F4000 X%s Y%s"), dtostrf(Z_SAFE_HOMING_X_POINT, 1, 3, str_1), dtostrf(Z_SAFE_HOMING_Y_POINT, 1, 3, str_2)); @@ -1597,21 +1593,21 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #endif gcode.process_subcommands_now(F("G0 F300 Z0")); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } break; case ZOFFSET_MODE: if (draw) { - Draw_Menu_Item(row, ICON_Zoffset, F("Live Adjustment")); - Draw_Checkbox(row, liveadjust); + drawMenuItem(row, ICON_Zoffset, F("Live Adjustment")); + drawCheckbox(row, liveadjust); } else { if (!liveadjust) { if (axes_should_home()) { - Popup_Handler(Home); + popupHandler(Home); gcode.home_all_axes(true); } - Popup_Handler(MoveWait); + popupHandler(MoveWait); #if ENABLED(Z_SAFE_HOMING) planner.synchronize(); sprintf_P(cmd, PSTR("G0 F4000 X%s Y%s"), dtostrf(Z_SAFE_HOMING_X_POINT, 1, 3, str_1), dtostrf(Z_SAFE_HOMING_Y_POINT, 1, 3, str_2)); @@ -1621,23 +1617,23 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #endif gcode.process_subcommands_now(F("G0 F300 Z0")); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } liveadjust = !liveadjust; - Draw_Checkbox(row, liveadjust); + drawCheckbox(row, liveadjust); } break; case ZOFFSET_OFFSET: if (draw) { - Draw_Menu_Item(row, ICON_SetZOffset, F("Z Offset")); - Draw_Float(zoffsetvalue, row, false, 100); + drawMenuItem(row, ICON_SetZOffset, F("Z Offset")); + drawFloat(zoffsetvalue, row, false, 100); } else - Modify_Value(zoffsetvalue, MIN_Z_OFFSET, MAX_Z_OFFSET, 100); + modifyValue(zoffsetvalue, MIN_Z_OFFSET, MAX_Z_OFFSET, 100); break; case ZOFFSET_UP: if (draw) - Draw_Menu_Item(row, ICON_Axis, F("Microstep Up")); + drawMenuItem(row, ICON_Axis, F("Microstep Up")); else { if (zoffsetvalue < MAX_Z_OFFSET) { if (liveadjust) { @@ -1645,13 +1641,13 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item planner.synchronize(); } zoffsetvalue += 0.01; - Draw_Float(zoffsetvalue, row - 1, false, 100); + drawFloat(zoffsetvalue, row - 1, false, 100); } } break; case ZOFFSET_DOWN: if (draw) - Draw_Menu_Item(row, ICON_AxisD, F("Microstep Down")); + drawMenuItem(row, ICON_AxisD, F("Microstep Down")); else { if (zoffsetvalue > MIN_Z_OFFSET) { if (liveadjust) { @@ -1659,16 +1655,16 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item planner.synchronize(); } zoffsetvalue -= 0.01; - Draw_Float(zoffsetvalue, row - 2, false, 100); + drawFloat(zoffsetvalue, row - 2, false, 100); } } break; #if ENABLED(EEPROM_SETTINGS) case ZOFFSET_SAVE: if (draw) - Draw_Menu_Item(row, ICON_WriteEEPROM, F("Save")); + drawMenuItem(row, ICON_WriteEEPROM, F("Save")); else - AudioFeedback(settings.save()); + audioFeedback(settings.save()); break; #endif } @@ -1694,23 +1690,23 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case PREHEAT_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Prepare, PREPARE_PREHEAT); + drawMenu(Prepare, PREPARE_PREHEAT); break; case PREHEAT_MODE: if (draw) { - Draw_Menu_Item(row, ICON_Homing, F("Preheat Mode")); - Draw_Option(preheatmode, preheat_modes, row); + drawMenuItem(row, ICON_Homing, F("Preheat Mode")); + drawOption(preheatmode, preheat_modes, row); } else - Modify_Option(preheatmode, preheat_modes, 2); + modifyOption(preheatmode, preheat_modes, 2); break; #define _PREHEAT_CASE(N) \ case PREHEAT_##N: { \ - if (draw) Draw_Menu_Item(row, ICON_Temperature, F(PREHEAT_## N ##_LABEL)); \ + if (draw) drawMenuItem(row, ICON_Temperature, F(PREHEAT_## N ##_LABEL)); \ else do_preheat(N - 1); \ } break; @@ -1731,59 +1727,59 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case CHANGEFIL_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Prepare, PREPARE_CHANGEFIL); + drawMenu(Prepare, PREPARE_CHANGEFIL); break; case CHANGEFIL_LOAD: if (draw) - Draw_Menu_Item(row, ICON_WriteEEPROM, GET_TEXT_F(MSG_FILAMENTLOAD)); + drawMenuItem(row, ICON_WriteEEPROM, GET_TEXT_F(MSG_FILAMENTLOAD)); else { if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) - Popup_Handler(ETemp); + popupHandler(ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - Popup_Handler(Heating); + popupHandler(Heating); thermalManager.wait_for_hotend(0); } - Popup_Handler(FilLoad); + popupHandler(FilLoad); gcode.process_subcommands_now(F("M701")); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } } break; case CHANGEFIL_UNLOAD: if (draw) - Draw_Menu_Item(row, ICON_ReadEEPROM, GET_TEXT_F(MSG_FILAMENTUNLOAD)); + drawMenuItem(row, ICON_ReadEEPROM, GET_TEXT_F(MSG_FILAMENTUNLOAD)); else { if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) { - Popup_Handler(ETemp); + popupHandler(ETemp); } else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - Popup_Handler(Heating); + popupHandler(Heating); thermalManager.wait_for_hotend(0); } - Popup_Handler(FilLoad, true); + popupHandler(FilLoad, true); gcode.process_subcommands_now(F("M702")); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } } break; case CHANGEFIL_CHANGE: if (draw) - Draw_Menu_Item(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE)); + drawMenuItem(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE)); else { if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) - Popup_Handler(ETemp); + popupHandler(ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - Popup_Handler(Heating); + popupHandler(Heating); thermalManager.wait_for_hotend(0); } - Popup_Handler(FilChange); + popupHandler(FilChange); sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); gcode.process_subcommands_now(cmd); } @@ -1808,23 +1804,23 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case CUSTOM_MENU_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Prepare, PREPARE_CUSTOM_MENU); + drawMenu(Prepare, PREPARE_CUSTOM_MENU); break; #if CUSTOM_MENU_COUNT >= 1 case CUSTOM_MENU_1: if (draw) - Draw_Menu_Item(row, ICON_Info, F(CONFIG_MENU_ITEM_1_DESC)); + drawMenuItem(row, ICON_Info, F(CONFIG_MENU_ITEM_1_DESC)); else { - Popup_Handler(Custom); + popupHandler(Custom); //queue.inject(F(CONFIG_MENU_ITEM_1_GCODE)); // Old code gcode.process_subcommands_now(F(CONFIG_MENU_ITEM_1_GCODE)); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); #if ENABLED(CUSTOM_MENU_CONFIG_SCRIPT_AUDIBLE_FEEDBACK) - AudioFeedback(); + audioFeedback(); #endif #ifdef CUSTOM_MENU_CONFIG_SCRIPT_RETURN queue.inject(F(CUSTOM_MENU_CONFIG_SCRIPT_DONE)); @@ -1836,14 +1832,14 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #if CUSTOM_MENU_COUNT >= 2 case CUSTOM_MENU_2: if (draw) - Draw_Menu_Item(row, ICON_Info, F(CONFIG_MENU_ITEM_2_DESC)); + drawMenuItem(row, ICON_Info, F(CONFIG_MENU_ITEM_2_DESC)); else { - Popup_Handler(Custom); + popupHandler(Custom); gcode.process_subcommands_now(F(CONFIG_MENU_ITEM_2_GCODE)); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); #if ENABLED(CUSTOM_MENU_CONFIG_SCRIPT_AUDIBLE_FEEDBACK) - AudioFeedback(); + audioFeedback(); #endif #ifdef CUSTOM_MENU_CONFIG_SCRIPT_RETURN queue.inject(F(CUSTOM_MENU_CONFIG_SCRIPT_DONE)); @@ -1855,14 +1851,14 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #if CUSTOM_MENU_COUNT >= 3 case CUSTOM_MENU_3: if (draw) - Draw_Menu_Item(row, ICON_Info, F(CONFIG_MENU_ITEM_3_DESC)); + drawMenuItem(row, ICON_Info, F(CONFIG_MENU_ITEM_3_DESC)); else { - Popup_Handler(Custom); + popupHandler(Custom); gcode.process_subcommands_now(F(CONFIG_MENU_ITEM_3_GCODE)); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); #if ENABLED(CUSTOM_MENU_CONFIG_SCRIPT_AUDIBLE_FEEDBACK) - AudioFeedback(); + audioFeedback(); #endif #ifdef CUSTOM_MENU_CONFIG_SCRIPT_RETURN queue.inject(F(CUSTOM_MENU_CONFIG_SCRIPT_DONE)); @@ -1874,14 +1870,14 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #if CUSTOM_MENU_COUNT >= 4 case CUSTOM_MENU_4: if (draw) - Draw_Menu_Item(row, ICON_Info, F(CONFIG_MENU_ITEM_4_DESC)); + drawMenuItem(row, ICON_Info, F(CONFIG_MENU_ITEM_4_DESC)); else { - Popup_Handler(Custom); + popupHandler(Custom); gcode.process_subcommands_now(F(CONFIG_MENU_ITEM_4_GCODE)); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); #if ENABLED(CUSTOM_MENU_CONFIG_SCRIPT_AUDIBLE_FEEDBACK) - AudioFeedback(); + audioFeedback(); #endif #ifdef CUSTOM_MENU_CONFIG_SCRIPT_RETURN queue.inject(F(CUSTOM_MENU_CONFIG_SCRIPT_DONE)); @@ -1893,14 +1889,14 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #if CUSTOM_MENU_COUNT >= 5 case CUSTOM_MENU_5: if (draw) - Draw_Menu_Item(row, ICON_Info, F(CONFIG_MENU_ITEM_5_DESC)); + drawMenuItem(row, ICON_Info, F(CONFIG_MENU_ITEM_5_DESC)); else { - Popup_Handler(Custom); + popupHandler(Custom); gcode.process_subcommands_now(F(CONFIG_MENU_ITEM_5_GCODE)); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); #if ENABLED(CUSTOM_MENU_CONFIG_SCRIPT_AUDIBLE_FEEDBACK) - AudioFeedback(); + audioFeedback(); #endif #ifdef CUSTOM_MENU_CONFIG_SCRIPT_RETURN queue.inject(F(CUSTOM_MENU_CONFIG_SCRIPT_DONE)); @@ -1929,61 +1925,61 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case CONTROL_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Main_Menu(2); + drawMainMenu(2); break; case CONTROL_TEMP: if (draw) - Draw_Menu_Item(row, ICON_Temperature, F("Temperature"), nullptr, true); + drawMenuItem(row, ICON_Temperature, F("Temperature"), nullptr, true); else - Draw_Menu(TempMenu); + drawMenu(TempMenu); break; case CONTROL_MOTION: if (draw) - Draw_Menu_Item(row, ICON_Motion, F("Motion"), nullptr, true); + drawMenuItem(row, ICON_Motion, F("Motion"), nullptr, true); else - Draw_Menu(Motion); + drawMenu(Motion); break; case CONTROL_VISUAL: if (draw) - Draw_Menu_Item(row, ICON_PrintSize, F("Visual"), nullptr, true); + drawMenuItem(row, ICON_PrintSize, F("Visual"), nullptr, true); else - Draw_Menu(Visual); + drawMenu(Visual); break; case CONTROL_ADVANCED: if (draw) - Draw_Menu_Item(row, ICON_Version, F("Advanced"), nullptr, true); + drawMenuItem(row, ICON_Version, F("Advanced"), nullptr, true); else - Draw_Menu(Advanced); + drawMenu(Advanced); break; #if ENABLED(EEPROM_SETTINGS) case CONTROL_SAVE: if (draw) - Draw_Menu_Item(row, ICON_WriteEEPROM, F("Store Settings")); + drawMenuItem(row, ICON_WriteEEPROM, F("Store Settings")); else - AudioFeedback(settings.save()); + audioFeedback(settings.save()); break; case CONTROL_RESTORE: if (draw) - Draw_Menu_Item(row, ICON_ReadEEPROM, F("Restore Settings")); + drawMenuItem(row, ICON_ReadEEPROM, F("Restore Settings")); else - AudioFeedback(settings.load()); + audioFeedback(settings.load()); break; case CONTROL_RESET: if (draw) - Draw_Menu_Item(row, ICON_Temperature, F("Reset to Defaults")); + drawMenuItem(row, ICON_Temperature, F("Reset to Defaults")); else { settings.reset(); - AudioFeedback(); + audioFeedback(); } break; #endif case CONTROL_INFO: if (draw) - Draw_Menu_Item(row, ICON_Info, F("Info")); + drawMenuItem(row, ICON_Info, F("Info")); else - Draw_Menu(Info); + drawMenu(Info); break; } break; @@ -2005,53 +2001,53 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case TEMP_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Control, CONTROL_TEMP); + drawMenu(Control, CONTROL_TEMP); break; #if HAS_HOTEND case TEMP_HOTEND: if (draw) { - Draw_Menu_Item(row, ICON_SetEndTemp, F("Hotend")); - Draw_Float(thermalManager.temp_hotend[0].target, row, false, 1); + drawMenuItem(row, ICON_SetEndTemp, F("Hotend")); + drawFloat(thermalManager.temp_hotend[0].target, row, false, 1); } else - Modify_Value(thermalManager.temp_hotend[0].target, MIN_E_TEMP, MAX_E_TEMP, 1); + modifyValue(thermalManager.temp_hotend[0].target, MIN_E_TEMP, MAX_E_TEMP, 1); break; #endif #if HAS_HEATED_BED case TEMP_BED: if (draw) { - Draw_Menu_Item(row, ICON_SetBedTemp, F("Bed")); - Draw_Float(thermalManager.temp_bed.target, row, false, 1); + drawMenuItem(row, ICON_SetBedTemp, F("Bed")); + drawFloat(thermalManager.temp_bed.target, row, false, 1); } else - Modify_Value(thermalManager.temp_bed.target, MIN_BED_TEMP, MAX_BED_TEMP, 1); + modifyValue(thermalManager.temp_bed.target, MIN_BED_TEMP, MAX_BED_TEMP, 1); break; #endif #if HAS_FAN case TEMP_FAN: if (draw) { - Draw_Menu_Item(row, ICON_FanSpeed, F("Fan")); - Draw_Float(thermalManager.fan_speed[0], row, false, 1); + drawMenuItem(row, ICON_FanSpeed, F("Fan")); + drawFloat(thermalManager.fan_speed[0], row, false, 1); } else - Modify_Value(thermalManager.fan_speed[0], MIN_FAN_SPEED, MAX_FAN_SPEED, 1); + modifyValue(thermalManager.fan_speed[0], MIN_FAN_SPEED, MAX_FAN_SPEED, 1); break; #endif #if HAS_HOTEND || HAS_HEATED_BED case TEMP_PID: if (draw) - Draw_Menu_Item(row, ICON_Step, F("PID"), nullptr, true); + drawMenuItem(row, ICON_Step, F("PID"), nullptr, true); else - Draw_Menu(PID); + drawMenu(PID); break; #endif #define _TEMP_PREHEAT_CASE(N) \ case TEMP_PREHEAT##N: { \ - if (draw) Draw_Menu_Item(row, ICON_Step, F(PREHEAT_## N ##_LABEL), nullptr, true); \ - else Draw_Menu(Preheat##N); \ + if (draw) drawMenuItem(row, ICON_Step, F(PREHEAT_## N ##_LABEL), nullptr, true); \ + else drawMenu(Preheat##N); \ } break; REPEAT_1(PREHEAT_COUNT, _TEMP_PREHEAT_CASE) @@ -2072,33 +2068,33 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case PID_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(TempMenu, TEMP_PID); + drawMenu(TempMenu, TEMP_PID); break; #if HAS_HOTEND case PID_HOTEND: if (draw) - Draw_Menu_Item(row, ICON_HotendTemp, F("Hotend"), nullptr, true); + drawMenuItem(row, ICON_HotendTemp, F("Hotend"), nullptr, true); else - Draw_Menu(HotendPID); + drawMenu(HotendPID); break; #endif #if HAS_HEATED_BED case PID_BED: if (draw) - Draw_Menu_Item(row, ICON_BedTemp, F("Bed"), nullptr, true); + drawMenuItem(row, ICON_BedTemp, F("Bed"), nullptr, true); else - Draw_Menu(BedPID); + drawMenu(BedPID); break; #endif case PID_CYCLES: if (draw) { - Draw_Menu_Item(row, ICON_FanSpeed, F("Cycles")); - Draw_Float(PID_cycles, row, false, 1); + drawMenuItem(row, ICON_FanSpeed, F("Cycles")); + drawFloat(PID_cycles, row, false, 1); } else - Modify_Value(PID_cycles, 3, 50, 1); + modifyValue(PID_cycles, 3, 50, 1); break; } break; @@ -2120,52 +2116,52 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case HOTENDPID_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(PID, PID_HOTEND); + drawMenu(PID, PID_HOTEND); break; case HOTENDPID_TUNE: if (draw) - Draw_Menu_Item(row, ICON_HotendTemp, F("Autotune")); + drawMenuItem(row, ICON_HotendTemp, F("Autotune")); else { - Popup_Handler(PIDWait); + popupHandler(PIDWait); sprintf_P(cmd, PSTR("M303 E0 C%i S%i U1"), PID_cycles, PID_e_temp); gcode.process_subcommands_now(cmd); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } break; case HOTENDPID_TEMP: if (draw) { - Draw_Menu_Item(row, ICON_Temperature, F("Temperature")); - Draw_Float(PID_e_temp, row, false, 1); + drawMenuItem(row, ICON_Temperature, F("Temperature")); + drawFloat(PID_e_temp, row, false, 1); } else - Modify_Value(PID_e_temp, MIN_E_TEMP, MAX_E_TEMP, 1); + modifyValue(PID_e_temp, MIN_E_TEMP, MAX_E_TEMP, 1); break; case HOTENDPID_KP: if (draw) { - Draw_Menu_Item(row, ICON_Version, F("Kp Value")); - Draw_Float(thermalManager.temp_hotend[0].pid.p(), row, false, 100); + drawMenuItem(row, ICON_Version, F("Kp Value")); + drawFloat(thermalManager.temp_hotend[0].pid.p(), row, false, 100); } else - Modify_Value(thermalManager.temp_hotend[0].pid.Kp, 0, 5000, 100, thermalManager.updatePID); + modifyValue(thermalManager.temp_hotend[0].pid.Kp, 0, 5000, 100, thermalManager.updatePID); break; case HOTENDPID_KI: if (draw) { - Draw_Menu_Item(row, ICON_Version, F("Ki Value")); - Draw_Float(thermalManager.temp_hotend[0].pid.i(), row, false, 100); + drawMenuItem(row, ICON_Version, F("Ki Value")); + drawFloat(thermalManager.temp_hotend[0].pid.i(), row, false, 100); } else - Modify_Value(thermalManager.temp_hotend[0].pid.Ki, 0, 5000, 100, thermalManager.updatePID); + modifyValue(thermalManager.temp_hotend[0].pid.Ki, 0, 5000, 100, thermalManager.updatePID); break; case HOTENDPID_KD: if (draw) { - Draw_Menu_Item(row, ICON_Version, F("Kd Value")); - Draw_Float(thermalManager.temp_hotend[0].pid.d(), row, false, 100); + drawMenuItem(row, ICON_Version, F("Kd Value")); + drawFloat(thermalManager.temp_hotend[0].pid.d(), row, false, 100); } else - Modify_Value(thermalManager.temp_hotend[0].pid.Kd, 0, 5000, 100, thermalManager.updatePID); + modifyValue(thermalManager.temp_hotend[0].pid.Kd, 0, 5000, 100, thermalManager.updatePID); break; } break; @@ -2187,53 +2183,53 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case BEDPID_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(PID, PID_BED); + drawMenu(PID, PID_BED); break; case BEDPID_TUNE: if (draw) - Draw_Menu_Item(row, ICON_HotendTemp, F("Autotune")); + drawMenuItem(row, ICON_HotendTemp, F("Autotune")); else { - Popup_Handler(PIDWait); + popupHandler(PIDWait); sprintf_P(cmd, PSTR("M303 E-1 C%i S%i U1"), PID_cycles, PID_bed_temp); gcode.process_subcommands_now(cmd); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } break; case BEDPID_TEMP: if (draw) { - Draw_Menu_Item(row, ICON_Temperature, F("Temperature")); - Draw_Float(PID_bed_temp, row, false, 1); + drawMenuItem(row, ICON_Temperature, F("Temperature")); + drawFloat(PID_bed_temp, row, false, 1); } else - Modify_Value(PID_bed_temp, MIN_BED_TEMP, MAX_BED_TEMP, 1); + modifyValue(PID_bed_temp, MIN_BED_TEMP, MAX_BED_TEMP, 1); break; case BEDPID_KP: if (draw) { - Draw_Menu_Item(row, ICON_Version, F("Kp Value")); - Draw_Float(thermalManager.temp_bed.pid.p(), row, false, 100); + drawMenuItem(row, ICON_Version, F("Kp Value")); + drawFloat(thermalManager.temp_bed.pid.p(), row, false, 100); } else { - Modify_Value(thermalManager.temp_bed.pid.Kp, 0, 5000, 100, thermalManager.updatePID); + modifyValue(thermalManager.temp_bed.pid.Kp, 0, 5000, 100, thermalManager.updatePID); } break; case BEDPID_KI: if (draw) { - Draw_Menu_Item(row, ICON_Version, F("Ki Value")); - Draw_Float(thermalManager.temp_bed.pid.i(), row, false, 100); + drawMenuItem(row, ICON_Version, F("Ki Value")); + drawFloat(thermalManager.temp_bed.pid.i(), row, false, 100); } else - Modify_Value(thermalManager.temp_bed.pid.Ki, 0, 5000, 100, thermalManager.updatePID); + modifyValue(thermalManager.temp_bed.pid.Ki, 0, 5000, 100, thermalManager.updatePID); break; case BEDPID_KD: if (draw) { - Draw_Menu_Item(row, ICON_Version, F("Kd Value")); - Draw_Float(thermalManager.temp_bed.pid.d(), row, false, 100); + drawMenuItem(row, ICON_Version, F("Kd Value")); + drawFloat(thermalManager.temp_bed.pid.d(), row, false, 100); } else - Modify_Value(thermalManager.temp_bed.pid.Kd, 0, 5000, 100, thermalManager.updatePID); + modifyValue(thermalManager.temp_bed.pid.Kd, 0, 5000, 100, thermalManager.updatePID); break; } break; @@ -2258,50 +2254,50 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case MOTION_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Control, CONTROL_MOTION); + drawMenu(Control, CONTROL_MOTION); break; case MOTION_HOMEOFFSETS: if (draw) - Draw_Menu_Item(row, ICON_SetHome, F("Home Offsets"), nullptr, true); + drawMenuItem(row, ICON_SetHome, F("Home Offsets"), nullptr, true); else - Draw_Menu(HomeOffsets); + drawMenu(HomeOffsets); break; case MOTION_SPEED: if (draw) - Draw_Menu_Item(row, ICON_MaxSpeed, F("Max Speed"), nullptr, true); + drawMenuItem(row, ICON_MaxSpeed, F("Max Speed"), nullptr, true); else - Draw_Menu(MaxSpeed); + drawMenu(MaxSpeed); break; case MOTION_ACCEL: if (draw) - Draw_Menu_Item(row, ICON_MaxAccelerated, F("Max Acceleration"), nullptr, true); + drawMenuItem(row, ICON_MaxAccelerated, F("Max Acceleration"), nullptr, true); else - Draw_Menu(MaxAcceleration); + drawMenu(MaxAcceleration); break; #if HAS_CLASSIC_JERK case MOTION_JERK: if (draw) - Draw_Menu_Item(row, ICON_MaxJerk, F("Max Jerk"), nullptr, true); + drawMenuItem(row, ICON_MaxJerk, F("Max Jerk"), nullptr, true); else - Draw_Menu(MaxJerk); + drawMenu(MaxJerk); break; #endif case MOTION_STEPS: if (draw) - Draw_Menu_Item(row, ICON_Step, F("Steps/mm"), nullptr, true); + drawMenuItem(row, ICON_Step, F("Steps/mm"), nullptr, true); else - Draw_Menu(Steps); + drawMenu(Steps); break; #if HAS_HOTEND case MOTION_FLOW: if (draw) { - Draw_Menu_Item(row, ICON_Speed, F("Flow Rate")); - Draw_Float(planner.flow_percentage[0], row, false, 1); + drawMenuItem(row, ICON_Speed, F("Flow Rate")); + drawFloat(planner.flow_percentage[0], row, false, 1); } else - Modify_Value(planner.flow_percentage[0], MIN_FLOW_RATE, MAX_FLOW_RATE, 1, []{ planner.refresh_e_factor(0); }); + modifyValue(planner.flow_percentage[0], MIN_FLOW_RATE, MAX_FLOW_RATE, 1, []{ planner.refresh_e_factor(0); }); break; #endif } @@ -2317,25 +2313,25 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case HOMEOFFSETS_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Motion, MOTION_HOMEOFFSETS); + drawMenu(Motion, MOTION_HOMEOFFSETS); break; case HOMEOFFSETS_XOFFSET: if (draw) { - Draw_Menu_Item(row, ICON_StepX, F("X Offset")); - Draw_Float(home_offset.x, row, false, 100); + drawMenuItem(row, ICON_StepX, F("X Offset")); + drawFloat(home_offset.x, row, false, 100); } else - Modify_Value(home_offset.x, -MAX_XY_OFFSET, MAX_XY_OFFSET, 100); + modifyValue(home_offset.x, -MAX_XY_OFFSET, MAX_XY_OFFSET, 100); break; case HOMEOFFSETS_YOFFSET: if (draw) { - Draw_Menu_Item(row, ICON_StepY, F("Y Offset")); - Draw_Float(home_offset.y, row, false, 100); + drawMenuItem(row, ICON_StepY, F("Y Offset")); + drawFloat(home_offset.y, row, false, 100); } else - Modify_Value(home_offset.y, -MAX_XY_OFFSET, MAX_XY_OFFSET, 100); + modifyValue(home_offset.y, -MAX_XY_OFFSET, MAX_XY_OFFSET, 100); break; } break; @@ -2351,51 +2347,51 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case SPEED_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Motion, MOTION_SPEED); + drawMenu(Motion, MOTION_SPEED); break; #if HAS_X_AXIS case SPEED_X: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeedX, F("X Axis")); - Draw_Float(planner.settings.max_feedrate_mm_s[X_AXIS], row, false, FEEDRATE_UNIT); + drawMenuItem(row, ICON_MaxSpeedX, F("X Axis")); + drawFloat(planner.settings.max_feedrate_mm_s[X_AXIS], row, false, FEEDRATE_UNIT); } else - Modify_Value(planner.settings.max_feedrate_mm_s[X_AXIS], min_feedrate_edit_values.x, max_feedrate_edit_values.x, FEEDRATE_UNIT); + modifyValue(planner.settings.max_feedrate_mm_s[X_AXIS], min_feedrate_edit_values.x, max_feedrate_edit_values.x, FEEDRATE_UNIT); break; #endif #if HAS_Y_AXIS case SPEED_Y: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeedY, F("Y Axis")); - Draw_Float(planner.settings.max_feedrate_mm_s[Y_AXIS], row, false, FEEDRATE_UNIT); + drawMenuItem(row, ICON_MaxSpeedY, F("Y Axis")); + drawFloat(planner.settings.max_feedrate_mm_s[Y_AXIS], row, false, FEEDRATE_UNIT); } else - Modify_Value(planner.settings.max_feedrate_mm_s[Y_AXIS], min_feedrate_edit_values.y, max_feedrate_edit_values.y, FEEDRATE_UNIT); + modifyValue(planner.settings.max_feedrate_mm_s[Y_AXIS], min_feedrate_edit_values.y, max_feedrate_edit_values.y, FEEDRATE_UNIT); break; #endif #if HAS_Z_AXIS case SPEED_Z: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeedZ, F("Z Axis")); - Draw_Float(planner.settings.max_feedrate_mm_s[Z_AXIS], row, false, FEEDRATE_UNIT); + drawMenuItem(row, ICON_MaxSpeedZ, F("Z Axis")); + drawFloat(planner.settings.max_feedrate_mm_s[Z_AXIS], row, false, FEEDRATE_UNIT); } else - Modify_Value(planner.settings.max_feedrate_mm_s[Z_AXIS], min_feedrate_edit_values.z, max_feedrate_edit_values.z, FEEDRATE_UNIT); + modifyValue(planner.settings.max_feedrate_mm_s[Z_AXIS], min_feedrate_edit_values.z, max_feedrate_edit_values.z, FEEDRATE_UNIT); break; #endif #if HAS_HOTEND case SPEED_E: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeedE, F("Extruder")); - Draw_Float(planner.settings.max_feedrate_mm_s[E_AXIS], row, false, FEEDRATE_UNIT); + drawMenuItem(row, ICON_MaxSpeedE, F("Extruder")); + drawFloat(planner.settings.max_feedrate_mm_s[E_AXIS], row, false, FEEDRATE_UNIT); } else - Modify_Value(planner.settings.max_feedrate_mm_s[E_AXIS], min_feedrate_edit_values.e, max_feedrate_edit_values.e, FEEDRATE_UNIT); + modifyValue(planner.settings.max_feedrate_mm_s[E_AXIS], min_feedrate_edit_values.e, max_feedrate_edit_values.e, FEEDRATE_UNIT); break; #endif } @@ -2413,42 +2409,42 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case ACCEL_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Motion, MOTION_ACCEL); + drawMenu(Motion, MOTION_ACCEL); break; case ACCEL_X: if (draw) { - Draw_Menu_Item(row, ICON_MaxAccX, F("X Axis")); - Draw_Float(planner.settings.max_acceleration_mm_per_s2[X_AXIS], row, false, ACCELERATION_UNIT); + drawMenuItem(row, ICON_MaxAccX, F("X Axis")); + drawFloat(planner.settings.max_acceleration_mm_per_s2[X_AXIS], row, false, ACCELERATION_UNIT); } else - Modify_Value(planner.settings.max_acceleration_mm_per_s2[X_AXIS], min_acceleration_edit_values.x, max_acceleration_edit_values.x, ACCELERATION_UNIT); + modifyValue(planner.settings.max_acceleration_mm_per_s2[X_AXIS], min_acceleration_edit_values.x, max_acceleration_edit_values.x, ACCELERATION_UNIT); break; case ACCEL_Y: if (draw) { - Draw_Menu_Item(row, ICON_MaxAccY, F("Y Axis")); - Draw_Float(planner.settings.max_acceleration_mm_per_s2[Y_AXIS], row, false, ACCELERATION_UNIT); + drawMenuItem(row, ICON_MaxAccY, F("Y Axis")); + drawFloat(planner.settings.max_acceleration_mm_per_s2[Y_AXIS], row, false, ACCELERATION_UNIT); } else - Modify_Value(planner.settings.max_acceleration_mm_per_s2[Y_AXIS], min_acceleration_edit_values.y, max_acceleration_edit_values.y, ACCELERATION_UNIT); + modifyValue(planner.settings.max_acceleration_mm_per_s2[Y_AXIS], min_acceleration_edit_values.y, max_acceleration_edit_values.y, ACCELERATION_UNIT); break; case ACCEL_Z: if (draw) { - Draw_Menu_Item(row, ICON_MaxAccZ, F("Z Axis")); - Draw_Float(planner.settings.max_acceleration_mm_per_s2[Z_AXIS], row, false, ACCELERATION_UNIT); + drawMenuItem(row, ICON_MaxAccZ, F("Z Axis")); + drawFloat(planner.settings.max_acceleration_mm_per_s2[Z_AXIS], row, false, ACCELERATION_UNIT); } else - Modify_Value(planner.settings.max_acceleration_mm_per_s2[Z_AXIS], min_acceleration_edit_values.z, max_acceleration_edit_values.z, ACCELERATION_UNIT); + modifyValue(planner.settings.max_acceleration_mm_per_s2[Z_AXIS], min_acceleration_edit_values.z, max_acceleration_edit_values.z, ACCELERATION_UNIT); break; #if HAS_HOTEND case ACCEL_E: if (draw) { - Draw_Menu_Item(row, ICON_MaxAccE, F("Extruder")); - Draw_Float(planner.settings.max_acceleration_mm_per_s2[E_AXIS], row, false, ACCELERATION_UNIT); + drawMenuItem(row, ICON_MaxAccE, F("Extruder")); + drawFloat(planner.settings.max_acceleration_mm_per_s2[E_AXIS], row, false, ACCELERATION_UNIT); } else - Modify_Value(planner.settings.max_acceleration_mm_per_s2[E_AXIS], min_acceleration_edit_values.e, max_acceleration_edit_values.e, ACCELERATION_UNIT); + modifyValue(planner.settings.max_acceleration_mm_per_s2[E_AXIS], min_acceleration_edit_values.e, max_acceleration_edit_values.e, ACCELERATION_UNIT); break; #endif } @@ -2466,48 +2462,48 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case JERK_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Motion, MOTION_JERK); + drawMenu(Motion, MOTION_JERK); break; #if HAS_X_AXIS case JERK_X: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeedJerkX, F("X Axis")); - Draw_Float(planner.max_jerk.x, row, false, JERK_UNIT); + drawMenuItem(row, ICON_MaxSpeedJerkX, F("X Axis")); + drawFloat(planner.max_jerk.x, row, false, JERK_UNIT); } else - Modify_Value(planner.max_jerk.x, min_jerk_edit_values.x, max_jerk_edit_values.x, JERK_UNIT); + modifyValue(planner.max_jerk.x, min_jerk_edit_values.x, max_jerk_edit_values.x, JERK_UNIT); break; #endif #if HAS_Y_AXIS case JERK_Y: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeedJerkY, F("Y Axis")); - Draw_Float(planner.max_jerk.y, row, false, JERK_UNIT); + drawMenuItem(row, ICON_MaxSpeedJerkY, F("Y Axis")); + drawFloat(planner.max_jerk.y, row, false, JERK_UNIT); } else - Modify_Value(planner.max_jerk.y, min_jerk_edit_values.y, max_jerk_edit_values.y, JERK_UNIT); + modifyValue(planner.max_jerk.y, min_jerk_edit_values.y, max_jerk_edit_values.y, JERK_UNIT); break; #endif #if HAS_Z_AXIS case JERK_Z: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeedJerkZ, F("Z Axis")); - Draw_Float(planner.max_jerk.z, row, false, JERK_UNIT); + drawMenuItem(row, ICON_MaxSpeedJerkZ, F("Z Axis")); + drawFloat(planner.max_jerk.z, row, false, JERK_UNIT); } else - Modify_Value(planner.max_jerk.z, min_jerk_edit_values.z, max_jerk_edit_values.z, JERK_UNIT); + modifyValue(planner.max_jerk.z, min_jerk_edit_values.z, max_jerk_edit_values.z, JERK_UNIT); break; #endif #if HAS_HOTEND case JERK_E: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeedJerkE, F("Extruder")); - Draw_Float(planner.max_jerk.e, row, false, JERK_UNIT); + drawMenuItem(row, ICON_MaxSpeedJerkE, F("Extruder")); + drawFloat(planner.max_jerk.e, row, false, JERK_UNIT); } else - Modify_Value(planner.max_jerk.e, min_jerk_edit_values.e, max_jerk_edit_values.e, JERK_UNIT); + modifyValue(planner.max_jerk.e, min_jerk_edit_values.e, max_jerk_edit_values.e, JERK_UNIT); break; #endif } @@ -2525,48 +2521,48 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case STEPS_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Motion, MOTION_STEPS); + drawMenu(Motion, MOTION_STEPS); break; #if HAS_X_AXIS case STEPS_X: if (draw) { - Draw_Menu_Item(row, ICON_StepX, F("X Axis")); - Draw_Float(planner.settings.axis_steps_per_mm[X_AXIS], row, false, STEPS_UNIT); + drawMenuItem(row, ICON_StepX, F("X Axis")); + drawFloat(planner.settings.axis_steps_per_mm[X_AXIS], row, false, STEPS_UNIT); } else - Modify_Value(planner.settings.axis_steps_per_mm[X_AXIS], min_steps_edit_values.x, max_steps_edit_values.x, STEPS_UNIT); + modifyValue(planner.settings.axis_steps_per_mm[X_AXIS], min_steps_edit_values.x, max_steps_edit_values.x, STEPS_UNIT); break; #endif #if HAS_Y_AXIS case STEPS_Y: if (draw) { - Draw_Menu_Item(row, ICON_StepY, F("Y Axis")); - Draw_Float(planner.settings.axis_steps_per_mm[Y_AXIS], row, false, STEPS_UNIT); + drawMenuItem(row, ICON_StepY, F("Y Axis")); + drawFloat(planner.settings.axis_steps_per_mm[Y_AXIS], row, false, STEPS_UNIT); } else - Modify_Value(planner.settings.axis_steps_per_mm[Y_AXIS], min_steps_edit_values.y, max_steps_edit_values.y, STEPS_UNIT); + modifyValue(planner.settings.axis_steps_per_mm[Y_AXIS], min_steps_edit_values.y, max_steps_edit_values.y, STEPS_UNIT); break; #endif #if HAS_Z_AXIS case STEPS_Z: if (draw) { - Draw_Menu_Item(row, ICON_StepZ, F("Z Axis")); - Draw_Float(planner.settings.axis_steps_per_mm[Z_AXIS], row, false, STEPS_UNIT); + drawMenuItem(row, ICON_StepZ, F("Z Axis")); + drawFloat(planner.settings.axis_steps_per_mm[Z_AXIS], row, false, STEPS_UNIT); } else - Modify_Value(planner.settings.axis_steps_per_mm[Z_AXIS], min_steps_edit_values.z, max_steps_edit_values.z, STEPS_UNIT); + modifyValue(planner.settings.axis_steps_per_mm[Z_AXIS], min_steps_edit_values.z, max_steps_edit_values.z, STEPS_UNIT); break; #endif #if HAS_HOTEND case STEPS_E: if (draw) { - Draw_Menu_Item(row, ICON_StepE, F("Extruder")); - Draw_Float(planner.settings.axis_steps_per_mm[E_AXIS], row, false, STEPS_UNIT); + drawMenuItem(row, ICON_StepE, F("Extruder")); + drawFloat(planner.settings.axis_steps_per_mm[E_AXIS], row, false, STEPS_UNIT); } else - Modify_Value(planner.settings.axis_steps_per_mm[E_AXIS], min_steps_edit_values.e, max_steps_edit_values.e, STEPS_UNIT); + modifyValue(planner.settings.axis_steps_per_mm[E_AXIS], min_steps_edit_values.e, max_steps_edit_values.e, STEPS_UNIT); break; #endif } @@ -2584,39 +2580,39 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case VISUAL_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Control, CONTROL_VISUAL); + drawMenu(Control, CONTROL_VISUAL); break; case VISUAL_BACKLIGHT: if (draw) - Draw_Menu_Item(row, ICON_Brightness, F("Display Off")); + drawMenuItem(row, ICON_Brightness, F("Display Off")); else ui.set_brightness(0); break; case VISUAL_BRIGHTNESS: if (draw) { - Draw_Menu_Item(row, ICON_Brightness, F("LCD Brightness")); - Draw_Float(ui.brightness, row, false, 1); + drawMenuItem(row, ICON_Brightness, F("LCD Brightness")); + drawFloat(ui.brightness, row, false, 1); } else - Modify_Value(ui.brightness, LCD_BRIGHTNESS_MIN, LCD_BRIGHTNESS_MAX, 1, ui.refresh_brightness); + modifyValue(ui.brightness, LCD_BRIGHTNESS_MIN, LCD_BRIGHTNESS_MAX, 1, ui.refresh_brightness); break; case VISUAL_TIME_FORMAT: if (draw) { - Draw_Menu_Item(row, ICON_PrintTime, F("Progress as __h__m")); - Draw_Checkbox(row, eeprom_settings.time_format_textual); + drawMenuItem(row, ICON_PrintTime, F("Progress as __h__m")); + drawCheckbox(row, eeprom_settings.time_format_textual); } else { eeprom_settings.time_format_textual = !eeprom_settings.time_format_textual; - Draw_Checkbox(row, eeprom_settings.time_format_textual); + drawCheckbox(row, eeprom_settings.time_format_textual); } break; case VISUAL_COLOR_THEMES: if (draw) - Draw_Menu_Item(row, ICON_MaxSpeed, F("UI Color Settings"), nullptr, true); + drawMenuItem(row, ICON_MaxSpeed, F("UI Color Settings"), nullptr, true); else - Draw_Menu(ColorSettings); + drawMenu(ColorSettings); break; } break; @@ -2640,97 +2636,97 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case COLORSETTINGS_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Visual, VISUAL_COLOR_THEMES); + drawMenu(Visual, VISUAL_COLOR_THEMES); break; case COLORSETTINGS_CURSOR: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeed, F("Cursor")); - Draw_Option(eeprom_settings.cursor_color, color_names, row, false, true); + drawMenuItem(row, ICON_MaxSpeed, F("Cursor")); + drawOption(eeprom_settings.cursor_color, color_names, row, false, true); } else - Modify_Option(eeprom_settings.cursor_color, color_names, Custom_Colors); + modifyOption(eeprom_settings.cursor_color, color_names, Custom_Colors); break; case COLORSETTINGS_SPLIT_LINE: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeed, F("Menu Split Line")); - Draw_Option(eeprom_settings.menu_split_line, color_names, row, false, true); + drawMenuItem(row, ICON_MaxSpeed, F("Menu Split Line")); + drawOption(eeprom_settings.menu_split_line, color_names, row, false, true); } else - Modify_Option(eeprom_settings.menu_split_line, color_names, Custom_Colors); + modifyOption(eeprom_settings.menu_split_line, color_names, Custom_Colors); break; case COLORSETTINGS_MENU_TOP_TXT: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeed, F("Menu Header Text")); - Draw_Option(eeprom_settings.menu_top_txt, color_names, row, false, true); + drawMenuItem(row, ICON_MaxSpeed, F("Menu Header Text")); + drawOption(eeprom_settings.menu_top_txt, color_names, row, false, true); } else - Modify_Option(eeprom_settings.menu_top_txt, color_names, Custom_Colors); + modifyOption(eeprom_settings.menu_top_txt, color_names, Custom_Colors); break; case COLORSETTINGS_MENU_TOP_BG: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeed, F("Menu Header Bg")); - Draw_Option(eeprom_settings.menu_top_bg, color_names, row, false, true); + drawMenuItem(row, ICON_MaxSpeed, F("Menu Header Bg")); + drawOption(eeprom_settings.menu_top_bg, color_names, row, false, true); } else - Modify_Option(eeprom_settings.menu_top_bg, color_names, Custom_Colors); + modifyOption(eeprom_settings.menu_top_bg, color_names, Custom_Colors); break; case COLORSETTINGS_HIGHLIGHT_BORDER: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeed, F("Highlight Box")); - Draw_Option(eeprom_settings.highlight_box, color_names, row, false, true); + drawMenuItem(row, ICON_MaxSpeed, F("Highlight Box")); + drawOption(eeprom_settings.highlight_box, color_names, row, false, true); } else - Modify_Option(eeprom_settings.highlight_box, color_names, Custom_Colors); + modifyOption(eeprom_settings.highlight_box, color_names, Custom_Colors); break; case COLORSETTINGS_PROGRESS_PERCENT: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeed, F("Progress Percent")); - Draw_Option(eeprom_settings.progress_percent, color_names, row, false, true); + drawMenuItem(row, ICON_MaxSpeed, F("Progress Percent")); + drawOption(eeprom_settings.progress_percent, color_names, row, false, true); } else - Modify_Option(eeprom_settings.progress_percent, color_names, Custom_Colors); + modifyOption(eeprom_settings.progress_percent, color_names, Custom_Colors); break; case COLORSETTINGS_PROGRESS_TIME: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeed, F("Progress Time")); - Draw_Option(eeprom_settings.progress_time, color_names, row, false, true); + drawMenuItem(row, ICON_MaxSpeed, F("Progress Time")); + drawOption(eeprom_settings.progress_time, color_names, row, false, true); } else - Modify_Option(eeprom_settings.progress_time, color_names, Custom_Colors); + modifyOption(eeprom_settings.progress_time, color_names, Custom_Colors); break; case COLORSETTINGS_PROGRESS_STATUS_BAR: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeed, F("Status Bar Text")); - Draw_Option(eeprom_settings.status_bar_text, color_names, row, false, true); + drawMenuItem(row, ICON_MaxSpeed, F("Status Bar Text")); + drawOption(eeprom_settings.status_bar_text, color_names, row, false, true); } else - Modify_Option(eeprom_settings.status_bar_text, color_names, Custom_Colors); + modifyOption(eeprom_settings.status_bar_text, color_names, Custom_Colors); break; case COLORSETTINGS_PROGRESS_STATUS_AREA: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeed, F("Status Area Text")); - Draw_Option(eeprom_settings.status_area_text, color_names, row, false, true); + drawMenuItem(row, ICON_MaxSpeed, F("Status Area Text")); + drawOption(eeprom_settings.status_area_text, color_names, row, false, true); } else - Modify_Option(eeprom_settings.status_area_text, color_names, Custom_Colors); + modifyOption(eeprom_settings.status_area_text, color_names, Custom_Colors); break; case COLORSETTINGS_PROGRESS_COORDINATES: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeed, F("Coordinates Text")); - Draw_Option(eeprom_settings.coordinates_text, color_names, row, false, true); + drawMenuItem(row, ICON_MaxSpeed, F("Coordinates Text")); + drawOption(eeprom_settings.coordinates_text, color_names, row, false, true); } else - Modify_Option(eeprom_settings.coordinates_text, color_names, Custom_Colors); + modifyOption(eeprom_settings.coordinates_text, color_names, Custom_Colors); break; case COLORSETTINGS_PROGRESS_COORDINATES_LINE: if (draw) { - Draw_Menu_Item(row, ICON_MaxSpeed, F("Coordinates Line")); - Draw_Option(eeprom_settings.coordinates_split_line, color_names, row, false, true); + drawMenuItem(row, ICON_MaxSpeed, F("Coordinates Line")); + drawOption(eeprom_settings.coordinates_split_line, color_names, row, false, true); } else - Modify_Option(eeprom_settings.coordinates_split_line, color_names, Custom_Colors); + modifyOption(eeprom_settings.coordinates_split_line, color_names, Custom_Colors); break; } // switch (item) break; @@ -2754,20 +2750,20 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case ADVANCED_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Control, CONTROL_ADVANCED); + drawMenu(Control, CONTROL_ADVANCED); break; #if ENABLED(SOUND_MENU_ITEM) case ADVANCED_BEEPER: if (draw) { - Draw_Menu_Item(row, ICON_Version, F("LCD Beeper")); - Draw_Checkbox(row, ui.sound_on); + drawMenuItem(row, ICON_Version, F("LCD Beeper")); + drawCheckbox(row, ui.sound_on); } else { ui.sound_on = !ui.sound_on; - Draw_Checkbox(row, ui.sound_on); + drawCheckbox(row, ui.sound_on); } break; #endif @@ -2775,68 +2771,68 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #if HAS_BED_PROBE case ADVANCED_PROBE: if (draw) - Draw_Menu_Item(row, ICON_StepX, F("Probe"), nullptr, true); + drawMenuItem(row, ICON_StepX, F("Probe"), nullptr, true); else - Draw_Menu(ProbeMenu); + drawMenu(ProbeMenu); break; #endif #if HAS_TRINAMIC_CONFIG case ADVANCED_TMC: if (draw) - Draw_Menu_Item(row, ICON_Motion, F("TMC Drivers"), nullptr, true); + drawMenuItem(row, ICON_Motion, F("TMC Drivers"), nullptr, true); else - Draw_Menu(TMCMenu); + drawMenu(TMCMenu); break; #endif case ADVANCED_CORNER: if (draw) { - Draw_Menu_Item(row, ICON_MaxAccelerated, F("Bed Screw Inset")); - Draw_Float(corner_pos, row, false, 10); + drawMenuItem(row, ICON_MaxAccelerated, F("Bed Screw Inset")); + drawFloat(corner_pos, row, false, 10); } else - Modify_Value(corner_pos, 1, 100, 10); + modifyValue(corner_pos, 1, 100, 10); break; #if ENABLED(LIN_ADVANCE) case ADVANCED_LA: if (draw) { - Draw_Menu_Item(row, ICON_MaxAccelerated, F("Lin Advance K")); - Draw_Float(planner.extruder_advance_K[0], row, false, 100); + drawMenuItem(row, ICON_MaxAccelerated, F("Lin Advance K")); + drawFloat(planner.extruder_advance_K[0], row, false, 100); } else - Modify_Value(planner.extruder_advance_K[0], 0, 10, 100); + modifyValue(planner.extruder_advance_K[0], 0, 10, 100); break; #endif #if ENABLED(ADVANCED_PAUSE_FEATURE) case ADVANCED_LOAD: if (draw) { - Draw_Menu_Item(row, ICON_WriteEEPROM, F("Load Length")); - Draw_Float(fc_settings[0].load_length, row, false, 1); + drawMenuItem(row, ICON_WriteEEPROM, F("Load Length")); + drawFloat(fc_settings[0].load_length, row, false, 1); } else - Modify_Value(fc_settings[0].load_length, 0, EXTRUDE_MAXLENGTH, 1); + modifyValue(fc_settings[0].load_length, 0, EXTRUDE_MAXLENGTH, 1); break; case ADVANCED_UNLOAD: if (draw) { - Draw_Menu_Item(row, ICON_ReadEEPROM, F("Unload Length")); - Draw_Float(fc_settings[0].unload_length, row, false, 1); + drawMenuItem(row, ICON_ReadEEPROM, F("Unload Length")); + drawFloat(fc_settings[0].unload_length, row, false, 1); } else - Modify_Value(fc_settings[0].unload_length, 0, EXTRUDE_MAXLENGTH, 1); + modifyValue(fc_settings[0].unload_length, 0, EXTRUDE_MAXLENGTH, 1); break; #endif // ADVANCED_PAUSE_FEATURE #if ENABLED(PREVENT_COLD_EXTRUSION) case ADVANCED_COLD_EXTRUDE: if (draw) { - Draw_Menu_Item(row, ICON_Cool, F("Min Extrusion T")); - Draw_Float(thermalManager.extrude_min_temp, row, false, 1); + drawMenuItem(row, ICON_Cool, F("Min Extrusion T")); + drawFloat(thermalManager.extrude_min_temp, row, false, 1); } else { - Modify_Value(thermalManager.extrude_min_temp, 0, MAX_E_TEMP, 1); + modifyValue(thermalManager.extrude_min_temp, 0, MAX_E_TEMP, 1); thermalManager.allow_cold_extrude = (thermalManager.extrude_min_temp == 0); } break; @@ -2845,23 +2841,23 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #if ENABLED(FILAMENT_RUNOUT_SENSOR) case ADVANCED_FILSENSORENABLED: if (draw) { - Draw_Menu_Item(row, ICON_Extruder, F("Filament Sensor")); - Draw_Checkbox(row, runout.enabled); + drawMenuItem(row, ICON_Extruder, F("Filament Sensor")); + drawCheckbox(row, runout.enabled); } else { runout.enabled = !runout.enabled; - Draw_Checkbox(row, runout.enabled); + drawCheckbox(row, runout.enabled); } break; #if ENABLED(HAS_FILAMENT_RUNOUT_DISTANCE) case ADVANCED_FILSENSORDISTANCE: if (draw) { - Draw_Menu_Item(row, ICON_MaxAccE, F("Runout Distance")); - Draw_Float(runout.runout_distance(), row, false, 10); + drawMenuItem(row, ICON_MaxAccE, F("Runout Distance")); + drawFloat(runout.runout_distance(), row, false, 10); } else - Modify_Value(runout.runout_distance(), 0, 999, 10); + modifyValue(runout.runout_distance(), 0, 999, 10); break; #endif #endif // FILAMENT_RUNOUT_SENSOR @@ -2869,12 +2865,12 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #if ENABLED(POWER_LOSS_RECOVERY) case ADVANCED_POWER_LOSS: if (draw) { - Draw_Menu_Item(row, ICON_Motion, F("Power-loss recovery")); - Draw_Checkbox(row, recovery.enabled); + drawMenuItem(row, ICON_Motion, F("Power-loss recovery")); + drawCheckbox(row, recovery.enabled); } else { recovery.enable(!recovery.enabled); - Draw_Checkbox(row, recovery.enabled); + drawCheckbox(row, recovery.enabled); } break; #endif @@ -2896,30 +2892,30 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case PROBE_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Advanced, ADVANCED_PROBE); + drawMenu(Advanced, ADVANCED_PROBE); break; case PROBE_XOFFSET: if (draw) { - Draw_Menu_Item(row, ICON_StepX, F("Probe X Offset")); - Draw_Float(probe.offset.x, row, false, 10); + drawMenuItem(row, ICON_StepX, F("Probe X Offset")); + drawFloat(probe.offset.x, row, false, 10); } else - Modify_Value(probe.offset.x, -MAX_XY_OFFSET, MAX_XY_OFFSET, 10); + modifyValue(probe.offset.x, -MAX_XY_OFFSET, MAX_XY_OFFSET, 10); break; case PROBE_YOFFSET: if (draw) { - Draw_Menu_Item(row, ICON_StepY, F("Probe Y Offset")); - Draw_Float(probe.offset.y, row, false, 10); + drawMenuItem(row, ICON_StepY, F("Probe Y Offset")); + drawFloat(probe.offset.y, row, false, 10); } else - Modify_Value(probe.offset.y, -MAX_XY_OFFSET, MAX_XY_OFFSET, 10); + modifyValue(probe.offset.y, -MAX_XY_OFFSET, MAX_XY_OFFSET, 10); break; case PROBE_TEST: if (draw) - Draw_Menu_Item(row, ICON_StepY, F("M48 Probe Test")); + drawMenuItem(row, ICON_StepY, F("M48 Probe Test")); else { sprintf_P(cmd, PSTR("G28O\nM48 X%s Y%s P%i"), dtostrf((X_BED_SIZE + X_MIN_POS) / 2.0f, 1, 3, str_1), dtostrf((Y_BED_SIZE + Y_MIN_POS) / 2.0f, 1, 3, str_2), testcount); gcode.process_subcommands_now(cmd); @@ -2927,11 +2923,11 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item break; case PROBE_TEST_COUNT: if (draw) { - Draw_Menu_Item(row, ICON_StepY, F("Probe Test Count")); - Draw_Float(testcount, row, false, 1); + drawMenuItem(row, ICON_StepY, F("Probe Test Count")); + drawFloat(testcount, row, false, 1); } else - Modify_Value(testcount, 4, 50, 1); + modifyValue(testcount, 4, 50, 1); break; } break; @@ -2951,9 +2947,9 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item case TMC_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Advanced, ADVANCED_TMC); + drawMenu(Advanced, ADVANCED_TMC); break; #if AXIS_IS_TMC(X) @@ -2962,12 +2958,12 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item static float stepper_current_x; if (draw) { - Draw_Menu_Item(row, ICON_StepX, F("Stepper X current")); + drawMenuItem(row, ICON_StepX, F("Stepper X current")); stepper_current_x = stepperX.getMilliamps(); - Draw_Float(stepper_current_x, row, false, 1); + drawFloat(stepper_current_x, row, false, 1); } else { - Modify_Value(stepper_current_x, TMC_MIN_CURRENT, TMC_MAX_CURRENT, 1, []{ stepperX.rms_current(stepper_current_x); }); + modifyValue(stepper_current_x, TMC_MIN_CURRENT, TMC_MAX_CURRENT, 1, []{ stepperX.rms_current(stepper_current_x); }); } break; #endif @@ -2978,12 +2974,12 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item static float stepper_current_y; if (draw) { - Draw_Menu_Item(row, ICON_StepY, F("Stepper Y current")); + drawMenuItem(row, ICON_StepY, F("Stepper Y current")); stepper_current_y = stepperY.getMilliamps(); - Draw_Float(stepper_current_y, row, false, 1); + drawFloat(stepper_current_y, row, false, 1); } else { - Modify_Value(stepper_current_y, TMC_MIN_CURRENT, TMC_MAX_CURRENT, 1, []{ stepperY.rms_current(stepper_current_y); }); + modifyValue(stepper_current_y, TMC_MIN_CURRENT, TMC_MAX_CURRENT, 1, []{ stepperY.rms_current(stepper_current_y); }); } break; #endif @@ -2994,12 +2990,12 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item static float stepper_current_z; if (draw) { - Draw_Menu_Item(row, ICON_StepZ, F("Stepper Z current")); + drawMenuItem(row, ICON_StepZ, F("Stepper Z current")); stepper_current_z = stepperZ.getMilliamps(); - Draw_Float(stepper_current_z, row, false, 1); + drawFloat(stepper_current_z, row, false, 1); } else { - Modify_Value(stepper_current_z, TMC_MIN_CURRENT, TMC_MAX_CURRENT, 1, []{ stepperZ.rms_current(stepper_current_z); }); + modifyValue(stepper_current_z, TMC_MIN_CURRENT, TMC_MAX_CURRENT, 1, []{ stepperZ.rms_current(stepper_current_z); }); } break; #endif @@ -3010,12 +3006,12 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item static float stepper_current_e; if (draw) { - Draw_Menu_Item(row, ICON_StepE, F("Stepper E current")); + drawMenuItem(row, ICON_StepE, F("Stepper E current")); stepper_current_e = stepperE0.getMilliamps(); - Draw_Float(stepper_current_e, row, false, 1); + drawFloat(stepper_current_e, row, false, 1); } else { - Modify_Value(stepper_current_e, TMC_MIN_CURRENT, TMC_MAX_CURRENT, 1, []{ stepperE0.rms_current(stepper_current_e); }); + modifyValue(stepper_current_e, TMC_MIN_CURRENT, TMC_MAX_CURRENT, 1, []{ stepperE0.rms_current(stepper_current_e); }); } break; #endif @@ -3037,7 +3033,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case INFO_BACK: if (draw) { - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); #if ENABLED(PRINTCOUNTER) char row1[50], row2[50], buf[32]; @@ -3045,24 +3041,24 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item sprintf_P(row1, PSTR("%i prints, %i finished"), ps.totalPrints, ps.finishedPrints); sprintf_P(row2, PSTR("%s m filament used"), dtostrf(ps.filamentUsed / 1000, 1, 2, str_1)); - Draw_Menu_Item(INFO_PRINTCOUNT, ICON_HotendTemp, row1, row2, false, true); + drawMenuItem(INFO_PRINTCOUNT, ICON_HotendTemp, row1, row2, false, true); duration_t(print_job_timer.getStats().printTime).toString(buf); sprintf_P(row1, PSTR("Printed: %s"), buf); duration_t(print_job_timer.getStats().longestPrint).toString(buf); sprintf_P(row2, PSTR("Longest: %s"), buf); - Draw_Menu_Item(INFO_PRINTTIME, ICON_PrintTime, row1, row2, false, true); + drawMenuItem(INFO_PRINTTIME, ICON_PrintTime, row1, row2, false, true); #endif - Draw_Menu_Item(INFO_SIZE, ICON_PrintSize, F(MACHINE_SIZE), nullptr, false, true); - Draw_Menu_Item(INFO_VERSION, ICON_Version, F(SHORT_BUILD_VERSION), nullptr, false, true); - Draw_Menu_Item(INFO_CONTACT, ICON_Contact, F(CORP_WEBSITE), nullptr, false, true); + drawMenuItem(INFO_SIZE, ICON_PrintSize, F(MACHINE_SIZE), nullptr, false, true); + drawMenuItem(INFO_VERSION, ICON_Version, F(SHORT_BUILD_VERSION), nullptr, false, true); + drawMenuItem(INFO_CONTACT, ICON_Contact, F(CORP_WEBSITE), nullptr, false, true); } else { if (menu == Info) - Draw_Menu(Control, CONTROL_INFO); + drawMenu(Control, CONTROL_INFO); else - Draw_Main_Menu(3); + drawMainMenu(3); } break; } @@ -3086,40 +3082,40 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case LEVELING_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Main_Menu(3); + drawMainMenu(3); break; case LEVELING_ACTIVE: if (draw) { - Draw_Menu_Item(row, ICON_StockConfiguration, F("Leveling Active")); - Draw_Checkbox(row, planner.leveling_active); + drawMenuItem(row, ICON_StockConfiguration, F("Leveling Active")); + drawCheckbox(row, planner.leveling_active); } else { if (!planner.leveling_active) { set_bed_leveling_enabled(!planner.leveling_active); if (!planner.leveling_active) { - Confirm_Handler(LevelError); + confirmHandler(LevelError); break; } } else set_bed_leveling_enabled(!planner.leveling_active); - Draw_Checkbox(row, planner.leveling_active); + drawCheckbox(row, planner.leveling_active); } break; #if ALL(HAS_BED_PROBE, AUTO_BED_LEVELING_UBL) case LEVELING_GET_TILT: if (draw) - Draw_Menu_Item(row, ICON_Tilt, F("Autotilt Current Mesh")); + drawMenuItem(row, ICON_Tilt, F("Autotilt Current Mesh")); else { if (bedlevel.storage_slot < 0) { - Popup_Handler(MeshSlot); + popupHandler(MeshSlot); break; } - Popup_Handler(Home); + popupHandler(Home); gcode.home_all_axes(true); - Popup_Handler(Level); + popupHandler(Level); if (mesh_conf.tilt_grid > 1) { sprintf_P(cmd, PSTR("G29 J%i"), mesh_conf.tilt_grid); gcode.process_subcommands_now(cmd); @@ -3127,78 +3123,78 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item else gcode.process_subcommands_now(F("G29 J")); planner.synchronize(); - Redraw_Menu(); + redrawMenu(); } break; #endif case LEVELING_GET_MESH: if (draw) - Draw_Menu_Item(row, ICON_Mesh, F("Create New Mesh")); + drawMenuItem(row, ICON_Mesh, F("Create New Mesh")); else { - Popup_Handler(Home); + popupHandler(Home); gcode.home_all_axes(true); #if ENABLED(AUTO_BED_LEVELING_UBL) #if ENABLED(PREHEAT_BEFORE_LEVELING) - Popup_Handler(Heating); + popupHandler(Heating); probe.preheat_for_probing(LEVELING_NOZZLE_TEMP, LEVELING_BED_TEMP); #endif #if HAS_BED_PROBE - Popup_Handler(Level); + popupHandler(Level); gcode.process_subcommands_now(F("G29 P0\nG29 P1")); gcode.process_subcommands_now(F("G29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nM420 S1")); planner.synchronize(); - Update_Status("Probed all reachable points"); - Popup_Handler(SaveLevel); + updateStatus("Probed all reachable points"); + popupHandler(SaveLevel); #else level_state = planner.leveling_active; set_bed_leveling_enabled(false); mesh_conf.goto_mesh_value = true; mesh_conf.mesh_x = mesh_conf.mesh_y = 0; - Popup_Handler(MoveWait); + popupHandler(MoveWait); mesh_conf.manual_mesh_move(); - Draw_Menu(UBLMesh); + drawMenu(UBLMesh); #endif #elif HAS_BED_PROBE - Popup_Handler(Level); + popupHandler(Level); gcode.process_subcommands_now(F("G29")); planner.synchronize(); - Popup_Handler(SaveLevel); + popupHandler(SaveLevel); #else level_state = planner.leveling_active; set_bed_leveling_enabled(false); gridpoint = 1; - Popup_Handler(MoveWait); + popupHandler(MoveWait); gcode.process_subcommands_now(F("G29")); planner.synchronize(); - Draw_Menu(ManualMesh); + drawMenu(ManualMesh); #endif } break; case LEVELING_MANUAL: if (draw) - Draw_Menu_Item(row, ICON_Mesh, F("Manual Tuning"), nullptr, true); + drawMenuItem(row, ICON_Mesh, F("Manual Tuning"), nullptr, true); else { #if ENABLED(AUTO_BED_LEVELING_BILINEAR) if (!leveling_is_valid()) { - Confirm_Handler(InvalidMesh); + confirmHandler(InvalidMesh); break; } #endif #if ENABLED(AUTO_BED_LEVELING_UBL) if (bedlevel.storage_slot < 0) { - Popup_Handler(MeshSlot); + popupHandler(MeshSlot); break; } #endif if (axes_should_home()) { - Popup_Handler(Home); + popupHandler(Home); gcode.home_all_axes(true); } level_state = planner.leveling_active; set_bed_leveling_enabled(false); mesh_conf.goto_mesh_value = false; #if ENABLED(PREHEAT_BEFORE_LEVELING) - Popup_Handler(Heating); + popupHandler(Heating); #if HAS_HOTEND if (thermalManager.degTargetHotend(0) < LEVELING_NOZZLE_TEMP) thermalManager.setTargetHotend(LEVELING_NOZZLE_TEMP, 0); @@ -3210,63 +3206,63 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item TERN_(HAS_HOTEND, thermalManager.wait_for_hotend(0)); TERN_(HAS_HEATED_BED, thermalManager.wait_for_bed_heating()); #endif - Popup_Handler(MoveWait); + popupHandler(MoveWait); mesh_conf.manual_mesh_move(); - Draw_Menu(LevelManual); + drawMenu(LevelManual); } break; case LEVELING_VIEW: if (draw) - Draw_Menu_Item(row, ICON_Mesh, GET_TEXT_F(MSG_MESH_VIEW), nullptr, true); + drawMenuItem(row, ICON_Mesh, GET_TEXT_F(MSG_MESH_VIEW), nullptr, true); else { #if ENABLED(AUTO_BED_LEVELING_UBL) if (bedlevel.storage_slot < 0) { - Popup_Handler(MeshSlot); + popupHandler(MeshSlot); break; } #endif - Draw_Menu(LevelView); + drawMenu(LevelView); } break; case LEVELING_SETTINGS: if (draw) - Draw_Menu_Item(row, ICON_Step, F("Leveling Settings"), nullptr, true); + drawMenuItem(row, ICON_Step, F("Leveling Settings"), nullptr, true); else - Draw_Menu(LevelSettings); + drawMenu(LevelSettings); break; #if ENABLED(AUTO_BED_LEVELING_UBL) case LEVELING_SLOT: if (draw) { - Draw_Menu_Item(row, ICON_PrintSize, F("Mesh Slot")); - Draw_Float(bedlevel.storage_slot, row, false, 1); + drawMenuItem(row, ICON_PrintSize, F("Mesh Slot")); + drawFloat(bedlevel.storage_slot, row, false, 1); } else - Modify_Value(bedlevel.storage_slot, 0, settings.calc_num_meshes() - 1, 1); + modifyValue(bedlevel.storage_slot, 0, settings.calc_num_meshes() - 1, 1); break; case LEVELING_LOAD: if (draw) - Draw_Menu_Item(row, ICON_ReadEEPROM, F("Load Mesh")); + drawMenuItem(row, ICON_ReadEEPROM, F("Load Mesh")); else { if (bedlevel.storage_slot < 0) { - Popup_Handler(MeshSlot); + popupHandler(MeshSlot); break; } gcode.process_subcommands_now(F("G29 L")); planner.synchronize(); - AudioFeedback(true); + audioFeedback(true); } break; case LEVELING_SAVE: if (draw) - Draw_Menu_Item(row, ICON_WriteEEPROM, F("Save Mesh")); + drawMenuItem(row, ICON_WriteEEPROM, F("Save Mesh")); else { if (bedlevel.storage_slot < 0) { - Popup_Handler(MeshSlot); + popupHandler(MeshSlot); break; } gcode.process_subcommands_now(F("G29 S")); planner.synchronize(); - AudioFeedback(true); + audioFeedback(true); } break; #endif @@ -3284,34 +3280,34 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case LEVELING_VIEW_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Leveling, LEVELING_VIEW); + drawMenu(Leveling, LEVELING_VIEW); break; case LEVELING_VIEW_MESH: if (draw) - Draw_Menu_Item(row, ICON_PrintSize, GET_TEXT_F(MSG_MESH_VIEW), nullptr, true); + drawMenuItem(row, ICON_PrintSize, GET_TEXT_F(MSG_MESH_VIEW), nullptr, true); else - Draw_Menu(MeshViewer); + drawMenu(MeshViewer); break; case LEVELING_VIEW_TEXT: if (draw) { - Draw_Menu_Item(row, ICON_Contact, F("Viewer Show Values")); - Draw_Checkbox(row, mesh_conf.viewer_print_value); + drawMenuItem(row, ICON_Contact, F("Viewer Show Values")); + drawCheckbox(row, mesh_conf.viewer_print_value); } else { mesh_conf.viewer_print_value = !mesh_conf.viewer_print_value; - Draw_Checkbox(row, mesh_conf.viewer_print_value); + drawCheckbox(row, mesh_conf.viewer_print_value); } break; case LEVELING_VIEW_ASYMMETRIC: if (draw) { - Draw_Menu_Item(row, ICON_Axis, F("Viewer Asymmetric")); - Draw_Checkbox(row, mesh_conf.viewer_asymmetric_range); + drawMenuItem(row, ICON_Axis, F("Viewer Asymmetric")); + drawCheckbox(row, mesh_conf.viewer_asymmetric_range); } else { mesh_conf.viewer_asymmetric_range = !mesh_conf.viewer_asymmetric_range; - Draw_Checkbox(row, mesh_conf.viewer_asymmetric_range); + drawCheckbox(row, mesh_conf.viewer_asymmetric_range); } break; } @@ -3330,17 +3326,17 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case LEVELING_SETTINGS_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Menu(Leveling, LEVELING_SETTINGS); + drawMenu(Leveling, LEVELING_SETTINGS); break; case LEVELING_SETTINGS_FADE: if (draw) { - Draw_Menu_Item(row, ICON_Fade, F("Fade Mesh within")); - Draw_Float(planner.z_fade_height, row, false, 1); + drawMenuItem(row, ICON_Fade, F("Fade Mesh within")); + drawFloat(planner.z_fade_height, row, false, 1); } else { - Modify_Value(planner.z_fade_height, 0, Z_MAX_POS, 1); + modifyValue(planner.z_fade_height, 0, Z_MAX_POS, 1); planner.z_fade_height = -1; set_z_fade_height(planner.z_fade_height); } @@ -3349,31 +3345,31 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #if ENABLED(AUTO_BED_LEVELING_UBL) case LEVELING_SETTINGS_TILT: if (draw) { - Draw_Menu_Item(row, ICON_Tilt, F("Tilting Grid Size")); - Draw_Float(mesh_conf.tilt_grid, row, false, 1); + drawMenuItem(row, ICON_Tilt, F("Tilting Grid Size")); + drawFloat(mesh_conf.tilt_grid, row, false, 1); } else - Modify_Value(mesh_conf.tilt_grid, 1, 8, 1); + modifyValue(mesh_conf.tilt_grid, 1, 8, 1); break; case LEVELING_SETTINGS_PLANE: if (draw) - Draw_Menu_Item(row, ICON_ResumeEEPROM, F("Convert Mesh to Plane")); + drawMenuItem(row, ICON_ResumeEEPROM, F("Convert Mesh to Plane")); else { if (mesh_conf.create_plane_from_mesh()) break; gcode.process_subcommands_now(F("M420 S1")); planner.synchronize(); - AudioFeedback(true); + audioFeedback(true); } break; case LEVELING_SETTINGS_ZERO: if (draw) - Draw_Menu_Item(row, ICON_Mesh, F("Zero Current Mesh")); + drawMenuItem(row, ICON_Mesh, F("Zero Current Mesh")); else ZERO(bedlevel.z_values); break; case LEVELING_SETTINGS_UNDEF: if (draw) - Draw_Menu_Item(row, ICON_Mesh, F("Clear Current Mesh")); + drawMenuItem(row, ICON_Mesh, F("Clear Current Mesh")); else bedlevel.invalidate(); break; @@ -3387,13 +3383,13 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item if (item == MESHVIEW_BACK) { if (draw) { - Draw_Menu_Item(0, ICON_Back, F("Back")); - mesh_conf.Draw_Bed_Mesh(); - mesh_conf.Set_Mesh_Viewer_Status(); + drawMenuItem(0, ICON_Back, F("Back")); + mesh_conf.drawBedMesh(); + mesh_conf.setMeshViewerStatus(); } else if (!mesh_conf.drawing_mesh) { - Draw_Menu(LevelView, LEVELING_VIEW_MESH); - Update_Status(""); + drawMenu(LevelView, LEVELING_VIEW_MESH); + updateStatus(""); } } break; @@ -3414,32 +3410,32 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case LEVELING_M_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else { set_bed_leveling_enabled(level_state); TERN_(AUTO_BED_LEVELING_BILINEAR, bedlevel.refresh_bed_level()); - Draw_Menu(Leveling, LEVELING_MANUAL); + drawMenu(Leveling, LEVELING_MANUAL); } break; case LEVELING_M_X: if (draw) { - Draw_Menu_Item(row, ICON_MoveX, F("Mesh Point X")); - Draw_Float(mesh_conf.mesh_x, row, 0, 1); + drawMenuItem(row, ICON_MoveX, F("Mesh Point X")); + drawFloat(mesh_conf.mesh_x, row, 0, 1); } else - Modify_Value(mesh_conf.mesh_x, 0, GRID_MAX_POINTS_X - 1, 1); + modifyValue(mesh_conf.mesh_x, 0, GRID_MAX_POINTS_X - 1, 1); break; case LEVELING_M_Y: if (draw) { - Draw_Menu_Item(row, ICON_MoveY, F("Mesh Point Y")); - Draw_Float(mesh_conf.mesh_y, row, 0, 1); + drawMenuItem(row, ICON_MoveY, F("Mesh Point Y")); + drawFloat(mesh_conf.mesh_y, row, 0, 1); } else - Modify_Value(mesh_conf.mesh_y, 0, GRID_MAX_POINTS_Y - 1, 1); + modifyValue(mesh_conf.mesh_y, 0, GRID_MAX_POINTS_Y - 1, 1); break; case LEVELING_M_NEXT: if (draw) - Draw_Menu_Item(row, ICON_More, F("Next Point")); + drawMenuItem(row, ICON_More, F("Next Point")); else { if (mesh_conf.mesh_x != (GRID_MAX_POINTS_X - 1) || mesh_conf.mesh_y != (GRID_MAX_POINTS_Y - 1)) { if ((mesh_conf.mesh_x == (GRID_MAX_POINTS_X - 1) && mesh_conf.mesh_y % 2 == 0) || (mesh_conf.mesh_x == 0 && mesh_conf.mesh_y % 2 == 1)) @@ -3454,58 +3450,58 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item break; case LEVELING_M_OFFSET: if (draw) { - Draw_Menu_Item(row, ICON_SetZOffset, F("Point Z Offset")); - Draw_Float(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], row, false, 100); + drawMenuItem(row, ICON_SetZOffset, F("Point Z Offset")); + drawFloat(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], row, false, 100); } else { if (isnan(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y])) bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y] = 0; - Modify_Value(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], MIN_Z_OFFSET, MAX_Z_OFFSET, 100); + modifyValue(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], MIN_Z_OFFSET, MAX_Z_OFFSET, 100); } break; case LEVELING_M_UP: if (draw) - Draw_Menu_Item(row, ICON_Axis, F("Microstep Up")); + drawMenuItem(row, ICON_Axis, F("Microstep Up")); else if (bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y] < MAX_Z_OFFSET) { bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y] += 0.01; gcode.process_subcommands_now(F("M290 Z0.01")); planner.synchronize(); current_position.z += 0.01f; sync_plan_position(); - Draw_Float(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], row - 1, false, 100); + drawFloat(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], row - 1, false, 100); } break; case LEVELING_M_DOWN: if (draw) - Draw_Menu_Item(row, ICON_AxisD, F("Microstep Down")); + drawMenuItem(row, ICON_AxisD, F("Microstep Down")); else if (bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y] > MIN_Z_OFFSET) { bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y] -= 0.01; gcode.process_subcommands_now(F("M290 Z-0.01")); planner.synchronize(); current_position.z -= 0.01f; sync_plan_position(); - Draw_Float(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], row - 2, false, 100); + drawFloat(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], row - 2, false, 100); } break; case LEVELING_M_GOTO_VALUE: if (draw) { - Draw_Menu_Item(row, ICON_StockConfiguration, F("Go to Mesh Z Value")); - Draw_Checkbox(row, mesh_conf.goto_mesh_value); + drawMenuItem(row, ICON_StockConfiguration, F("Go to Mesh Z Value")); + drawCheckbox(row, mesh_conf.goto_mesh_value); } else { mesh_conf.goto_mesh_value = !mesh_conf.goto_mesh_value; current_position.z = 0; mesh_conf.manual_mesh_move(true); - Draw_Checkbox(row, mesh_conf.goto_mesh_value); + drawCheckbox(row, mesh_conf.goto_mesh_value); } break; #if ENABLED(AUTO_BED_LEVELING_UBL) case LEVELING_M_UNDEF: if (draw) - Draw_Menu_Item(row, ICON_ResumeEEPROM, F("Clear Point Value")); + drawMenuItem(row, ICON_ResumeEEPROM, F("Clear Point Value")); else { mesh_conf.manual_value_update(true); - Redraw_Menu(false); + redrawMenu(false); } break; #endif @@ -3527,18 +3523,18 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case UBL_M_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else { set_bed_leveling_enabled(level_state); - Draw_Menu(Leveling, LEVELING_GET_MESH); + drawMenu(Leveling, LEVELING_GET_MESH); } break; case UBL_M_NEXT: if (draw) { if (mesh_conf.mesh_x != (GRID_MAX_POINTS_X - 1) || mesh_conf.mesh_y != (GRID_MAX_POINTS_Y - 1)) - Draw_Menu_Item(row, ICON_More, F("Next Point")); + drawMenuItem(row, ICON_More, F("Next Point")); else - Draw_Menu_Item(row, ICON_More, F("Save Mesh")); + drawMenuItem(row, ICON_More, F("Save Mesh")); } else { if (mesh_conf.mesh_x != (GRID_MAX_POINTS_X - 1) || mesh_conf.mesh_y != (GRID_MAX_POINTS_Y - 1)) { @@ -3553,14 +3549,14 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item else { gcode.process_subcommands_now(F("G29 S")); planner.synchronize(); - AudioFeedback(true); - Draw_Menu(Leveling, LEVELING_GET_MESH); + audioFeedback(true); + drawMenu(Leveling, LEVELING_GET_MESH); } } break; case UBL_M_PREV: if (draw) - Draw_Menu_Item(row, ICON_More, F("Previous Point")); + drawMenuItem(row, ICON_More, F("Previous Point")); else { if (mesh_conf.mesh_x != 0 || mesh_conf.mesh_y != 0) { if ((mesh_conf.mesh_x == (GRID_MAX_POINTS_X - 1) && mesh_conf.mesh_y % 2 == 1) || (mesh_conf.mesh_x == 0 && mesh_conf.mesh_y % 2 == 0)) @@ -3575,37 +3571,37 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item break; case UBL_M_OFFSET: if (draw) { - Draw_Menu_Item(row, ICON_SetZOffset, F("Point Z Offset")); - Draw_Float(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], row, false, 100); + drawMenuItem(row, ICON_SetZOffset, F("Point Z Offset")); + drawFloat(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], row, false, 100); } else { if (isnan(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y])) bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y] = 0; - Modify_Value(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], MIN_Z_OFFSET, MAX_Z_OFFSET, 100); + modifyValue(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], MIN_Z_OFFSET, MAX_Z_OFFSET, 100); } break; case UBL_M_UP: if (draw) - Draw_Menu_Item(row, ICON_Axis, F("Microstep Up")); + drawMenuItem(row, ICON_Axis, F("Microstep Up")); else if (bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y] < MAX_Z_OFFSET) { bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y] += 0.01; gcode.process_subcommands_now(F("M290 Z0.01")); planner.synchronize(); current_position.z += 0.01f; sync_plan_position(); - Draw_Float(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], row - 1, false, 100); + drawFloat(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], row - 1, false, 100); } break; case UBL_M_DOWN: if (draw) - Draw_Menu_Item(row, ICON_Axis, F("Microstep Down")); + drawMenuItem(row, ICON_Axis, F("Microstep Down")); else if (bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y] > MIN_Z_OFFSET) { bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y] -= 0.01; gcode.process_subcommands_now(F("M290 Z-0.01")); planner.synchronize(); current_position.z -= 0.01f; sync_plan_position(); - Draw_Float(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], row - 2, false, 100); + drawFloat(bedlevel.z_values[mesh_conf.mesh_x][mesh_conf.mesh_y], row - 2, false, 100); } break; } @@ -3626,64 +3622,64 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case MMESH_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Cancel")); + drawMenuItem(row, ICON_Back, F("Cancel")); else { gcode.process_subcommands_now(F("G29 A")); planner.synchronize(); set_bed_leveling_enabled(level_state); - Draw_Menu(Leveling, LEVELING_GET_MESH); + drawMenu(Leveling, LEVELING_GET_MESH); } break; case MMESH_NEXT: if (draw) { if (gridpoint < GRID_MAX_POINTS) - Draw_Menu_Item(row, ICON_More, F("Next Point")); + drawMenuItem(row, ICON_More, F("Next Point")); else - Draw_Menu_Item(row, ICON_More, F("Save Mesh")); + drawMenuItem(row, ICON_More, F("Save Mesh")); } else if (gridpoint < GRID_MAX_POINTS) { - Popup_Handler(MoveWait); + popupHandler(MoveWait); gcode.process_subcommands_now(F("G29")); planner.synchronize(); gridpoint++; - Redraw_Menu(); + redrawMenu(); } else { gcode.process_subcommands_now(F("G29")); planner.synchronize(); - AudioFeedback(settings.save()); - Draw_Menu(Leveling, LEVELING_GET_MESH); + audioFeedback(settings.save()); + drawMenu(Leveling, LEVELING_GET_MESH); } break; case MMESH_OFFSET: if (draw) { - Draw_Menu_Item(row, ICON_SetZOffset, F("Z Position")); + drawMenuItem(row, ICON_SetZOffset, F("Z Position")); current_position.z = MANUAL_PROBE_START_Z; - Draw_Float(current_position.z, row, false, 100); + drawFloat(current_position.z, row, false, 100); } else - Modify_Value(current_position.z, MIN_Z_OFFSET, MAX_Z_OFFSET, 100); + modifyValue(current_position.z, MIN_Z_OFFSET, MAX_Z_OFFSET, 100); break; case MMESH_UP: if (draw) - Draw_Menu_Item(row, ICON_Axis, F("Microstep Up")); + drawMenuItem(row, ICON_Axis, F("Microstep Up")); else if (current_position.z < MAX_Z_OFFSET) { gcode.process_subcommands_now(F("M290 Z0.01")); planner.synchronize(); current_position.z += 0.01f; sync_plan_position(); - Draw_Float(current_position.z, row - 1, false, 100); + drawFloat(current_position.z, row - 1, false, 100); } break; case MMESH_DOWN: if (draw) - Draw_Menu_Item(row, ICON_AxisD, F("Microstep Down")); + drawMenuItem(row, ICON_AxisD, F("Microstep Down")); else if (current_position.z > MIN_Z_OFFSET) { gcode.process_subcommands_now(F("M290 Z-0.01")); planner.synchronize(); current_position.z -= 0.01f; sync_plan_position(); - Draw_Float(current_position.z, row - 2, false, 100); + drawFloat(current_position.z, row - 2, false, 100); } break; case MMESH_OLD: @@ -3698,15 +3694,15 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item const float currval = bedlevel.z_values[mesh_x][mesh_y]; if (draw) { - Draw_Menu_Item(row, ICON_Zoffset, F("Goto Mesh Value")); - Draw_Float(currval, row, false, 100); + drawMenuItem(row, ICON_Zoffset, F("Goto Mesh Value")); + drawFloat(currval, row, false, 100); } else if (!isnan(currval)) { current_position.z = currval; planner.synchronize(); planner.buffer_line(current_position, homing_feedrate(Z_AXIS), active_extruder); planner.synchronize(); - Draw_Float(current_position.z, row - 3, false, 100); + drawFloat(current_position.z, row - 3, false, 100); } break; } @@ -3733,85 +3729,85 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case TUNE_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Back")); + drawMenuItem(row, ICON_Back, F("Back")); else - Draw_Print_Screen(); + drawPrintScreen(); break; case TUNE_SPEED: if (draw) { - Draw_Menu_Item(row, ICON_Speed, F("Print Speed")); - Draw_Float(feedrate_percentage, row, false, 1); + drawMenuItem(row, ICON_Speed, F("Print Speed")); + drawFloat(feedrate_percentage, row, false, 1); } else - Modify_Value(feedrate_percentage, MIN_PRINT_SPEED, MAX_PRINT_SPEED, 1); + modifyValue(feedrate_percentage, MIN_PRINT_SPEED, MAX_PRINT_SPEED, 1); break; #if HAS_HOTEND case TUNE_FLOW: if (draw) { - Draw_Menu_Item(row, ICON_Speed, F("Flow Rate")); - Draw_Float(planner.flow_percentage[0], row, false, 1); + drawMenuItem(row, ICON_Speed, F("Flow Rate")); + drawFloat(planner.flow_percentage[0], row, false, 1); } else - Modify_Value(planner.flow_percentage[0], MIN_FLOW_RATE, MAX_FLOW_RATE, 1, []{ planner.refresh_e_factor(0); }); + modifyValue(planner.flow_percentage[0], MIN_FLOW_RATE, MAX_FLOW_RATE, 1, []{ planner.refresh_e_factor(0); }); break; case TUNE_HOTEND: if (draw) { - Draw_Menu_Item(row, ICON_SetEndTemp, F("Hotend")); - Draw_Float(thermalManager.temp_hotend[0].target, row, false, 1); + drawMenuItem(row, ICON_SetEndTemp, F("Hotend")); + drawFloat(thermalManager.temp_hotend[0].target, row, false, 1); } else - Modify_Value(thermalManager.temp_hotend[0].target, MIN_E_TEMP, MAX_E_TEMP, 1); + modifyValue(thermalManager.temp_hotend[0].target, MIN_E_TEMP, MAX_E_TEMP, 1); break; #endif #if HAS_HEATED_BED case TUNE_BED: if (draw) { - Draw_Menu_Item(row, ICON_SetBedTemp, F("Bed")); - Draw_Float(thermalManager.temp_bed.target, row, false, 1); + drawMenuItem(row, ICON_SetBedTemp, F("Bed")); + drawFloat(thermalManager.temp_bed.target, row, false, 1); } else - Modify_Value(thermalManager.temp_bed.target, MIN_BED_TEMP, MAX_BED_TEMP, 1); + modifyValue(thermalManager.temp_bed.target, MIN_BED_TEMP, MAX_BED_TEMP, 1); break; #endif #if HAS_FAN case TUNE_FAN: if (draw) { - Draw_Menu_Item(row, ICON_FanSpeed, F("Fan")); - Draw_Float(thermalManager.fan_speed[0], row, false, 1); + drawMenuItem(row, ICON_FanSpeed, F("Fan")); + drawFloat(thermalManager.fan_speed[0], row, false, 1); } else - Modify_Value(thermalManager.fan_speed[0], MIN_FAN_SPEED, MAX_FAN_SPEED, 1); + modifyValue(thermalManager.fan_speed[0], MIN_FAN_SPEED, MAX_FAN_SPEED, 1); break; #endif #if HAS_ZOFFSET_ITEM case TUNE_ZOFFSET: if (draw) { - Draw_Menu_Item(row, ICON_FanSpeed, F("Z-Offset")); - Draw_Float(zoffsetvalue, row, false, 100); + drawMenuItem(row, ICON_FanSpeed, F("Z-Offset")); + drawFloat(zoffsetvalue, row, false, 100); } else - Modify_Value(zoffsetvalue, MIN_Z_OFFSET, MAX_Z_OFFSET, 100); + modifyValue(zoffsetvalue, MIN_Z_OFFSET, MAX_Z_OFFSET, 100); break; case TUNE_ZUP: if (draw) - Draw_Menu_Item(row, ICON_Axis, F("Z-Offset Up")); + drawMenuItem(row, ICON_Axis, F("Z-Offset Up")); else if (zoffsetvalue < MAX_Z_OFFSET) { gcode.process_subcommands_now(F("M290 Z0.01")); zoffsetvalue += 0.01; - Draw_Float(zoffsetvalue, row - 1, false, 100); + drawFloat(zoffsetvalue, row - 1, false, 100); } break; case TUNE_ZDOWN: if (draw) - Draw_Menu_Item(row, ICON_AxisD, F("Z-Offset Down")); + drawMenuItem(row, ICON_AxisD, F("Z-Offset Down")); else if (zoffsetvalue > MIN_Z_OFFSET) { gcode.process_subcommands_now(F("M290 Z-0.01")); zoffsetvalue -= 0.01; - Draw_Float(zoffsetvalue, row - 2, false, 100); + drawFloat(zoffsetvalue, row - 2, false, 100); } break; #endif @@ -3819,38 +3815,38 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) case TUNE_CHANGEFIL: if (draw) - Draw_Menu_Item(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE)); + drawMenuItem(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE)); else - Popup_Handler(ConfFilChange); + popupHandler(ConfFilChange); break; #endif #if ENABLED(FILAMENT_RUNOUT_SENSOR) case TUNE_FILSENSORENABLED: if (draw) { - Draw_Menu_Item(row, ICON_Extruder, F("Filament Sensor")); - Draw_Checkbox(row, runout.enabled); + drawMenuItem(row, ICON_Extruder, F("Filament Sensor")); + drawCheckbox(row, runout.enabled); } else { runout.enabled = !runout.enabled; - Draw_Checkbox(row, runout.enabled); + drawCheckbox(row, runout.enabled); } break; #endif case TUNE_BACKLIGHT_OFF: if (draw) - Draw_Menu_Item(row, ICON_Brightness, F("Display Off")); + drawMenuItem(row, ICON_Brightness, F("Display Off")); else ui.set_brightness(0); break; case TUNE_BACKLIGHT: if (draw) { - Draw_Menu_Item(row, ICON_Brightness, F("LCD Brightness")); - Draw_Float(ui.brightness, row, false, 1); + drawMenuItem(row, ICON_Brightness, F("LCD Brightness")); + drawFloat(ui.brightness, row, false, 1); } else - Modify_Value(ui.brightness, LCD_BRIGHTNESS_MIN, LCD_BRIGHTNESS_MAX, 1, ui.refresh_brightness); + modifyValue(ui.brightness, LCD_BRIGHTNESS_MIN, LCD_BRIGHTNESS_MAX, 1, ui.refresh_brightness); break; } break; @@ -3872,22 +3868,22 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item switch (item) { case PREHEATHOTEND_BACK: if (draw) - Draw_Menu_Item(row, ICON_Back, F("Cancel")); + drawMenuItem(row, ICON_Back, F("Cancel")); else { thermalManager.setTargetHotend(0, 0); TERN_(HAS_FAN, thermalManager.set_fan_speed(0, 0)); - Redraw_Menu(false, true, true); + redrawMenu(false, true, true); } break; case PREHEATHOTEND_CONTINUE: if (draw) - Draw_Menu_Item(row, ICON_SetEndTemp, F("Continue")); + drawMenuItem(row, ICON_SetEndTemp, F("Continue")); else { - Popup_Handler(Heating); + popupHandler(Heating); thermalManager.wait_for_hotend(0); switch (last_menu) { case Prepare: - Popup_Handler(FilChange); + popupHandler(FilChange); sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); gcode.process_subcommands_now(cmd); break; @@ -3895,19 +3891,19 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item case ChangeFilament: switch (last_selection) { case CHANGEFIL_LOAD: - Popup_Handler(FilLoad); + popupHandler(FilLoad); gcode.process_subcommands_now(F("M701")); planner.synchronize(); - Redraw_Menu(true, true, true); + redrawMenu(true, true, true); break; case CHANGEFIL_UNLOAD: - Popup_Handler(FilLoad, true); + popupHandler(FilLoad, true); gcode.process_subcommands_now(F("M702")); planner.synchronize(); - Redraw_Menu(true, true, true); + redrawMenu(true, true, true); break; case CHANGEFIL_CHANGE: - Popup_Handler(FilChange); + popupHandler(FilChange); sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); gcode.process_subcommands_now(cmd); break; @@ -3915,7 +3911,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item break; #endif default: - Redraw_Menu(true, true, true); + redrawMenu(true, true, true); break; } } @@ -3924,7 +3920,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item #define _PREHEAT_HOTEND_CASE(N) \ case PREHEATHOTEND_##N: \ - if (draw) Draw_Menu_Item(row, ICON_Temperature, F(PREHEAT_## N ##_LABEL)); \ + if (draw) drawMenuItem(row, ICON_Temperature, F(PREHEAT_## N ##_LABEL)); \ else ui.preheat_hotend_and_fan((N) - 1); \ break; @@ -3932,11 +3928,11 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item case PREHEATHOTEND_CUSTOM: if (draw) { - Draw_Menu_Item(row, ICON_Temperature, F("Custom")); - Draw_Float(thermalManager.temp_hotend[0].target, row, false, 1); + drawMenuItem(row, ICON_Temperature, F("Custom")); + drawFloat(thermalManager.temp_hotend[0].target, row, false, 1); } else - Modify_Value(thermalManager.temp_hotend[0].target, EXTRUDE_MINTEMP, MAX_E_TEMP, 1); + modifyValue(thermalManager.temp_hotend[0].target, EXTRUDE_MINTEMP, MAX_E_TEMP, 1); break; } break; @@ -3945,7 +3941,7 @@ void CrealityDWINClass::Menu_Item_Handler(const uint8_t menu, const uint8_t item } } -FSTR_P CrealityDWINClass::Get_Menu_Title(const uint8_t menu) { +FSTR_P CrealityDWIN::getMenuTitle(const uint8_t menu) { switch (menu) { case MainMenu: return GET_TEXT_F(MSG_MAIN_MENU); case Prepare: return GET_TEXT_F(MSG_PREPARE); @@ -4022,7 +4018,7 @@ FSTR_P CrealityDWINClass::Get_Menu_Title(const uint8_t menu) { return F(""); } -uint8_t CrealityDWINClass::Get_Menu_Size(const uint8_t menu) { +uint8_t CrealityDWIN::getMenuSize(const uint8_t menu) { switch (menu) { case Prepare: return PREPARE_TOTAL; case HomeMenu: return HOME_TOTAL; @@ -4099,108 +4095,108 @@ uint8_t CrealityDWINClass::Get_Menu_Size(const uint8_t menu) { /* Popup Config */ -void CrealityDWINClass::Popup_Handler(const PopupID popupid, const bool option/*=false*/) { +void CrealityDWIN::popupHandler(const PopupID popupid, const bool option/*=false*/) { popup = last_popup = popupid; switch (popupid) { - case Pause: Draw_Popup(F("Pause Print"), F(""), F(""), Popup); break; - case Stop: Draw_Popup(F("Stop Print"), F(""), F(""), Popup); break; - case Resume: Draw_Popup(F("Resume Print?"), F("Looks Like the last"), F("print was interrupted."), Popup); break; - case ConfFilChange: Draw_Popup(F("Confirm Filament Change"), F(""), F(""), Popup); break; - case PurgeMore: Draw_Popup(F("Purge more filament?"), F("(Cancel to finish process)"), F(""), Popup); break; - case SaveLevel: Draw_Popup(F("Leveling Complete"), F("Save to EEPROM?"), F(""), Popup); break; - case MeshSlot: Draw_Popup(F("Mesh slot not selected"), F("(Confirm to select slot 0)"), F(""), Popup); break; - case ETemp: Draw_Popup(F("Nozzle is too cold"), F("Open Preheat Menu?"), F(""), Popup); break; - case ManualProbing: Draw_Popup(F("Manual Probing"), F("(Confirm to probe)"), F("(cancel to exit)"), Popup); break; - case Level: Draw_Popup(F("Auto Bed Leveling"), F("Please wait until done."), F(""), Wait, ICON_AutoLeveling); break; - case Home: Draw_Popup(option ? F("Parking") : F("Homing"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; - case MoveWait: Draw_Popup(F("Moving to Point"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; - case Heating: Draw_Popup(F("Heating"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; - case FilLoad: Draw_Popup(option ? F("Unloading Filament") : F("Loading Filament"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; - case FilChange: Draw_Popup(F("Filament Change"), F("Please wait for prompt."), F(""), Wait, ICON_BLTouch); break; - case TempWarn: Draw_Popup(option ? F("Nozzle temp too low!") : F("Nozzle temp too high!"), F(""), F(""), Wait, option ? ICON_TempTooLow : ICON_TempTooHigh); break; - case Runout: Draw_Popup(F("Filament Runout"), F(""), F(""), Wait, ICON_BLTouch); break; - case PIDWait: Draw_Popup(F("PID Autotune"), F("in process"), F("Please wait until done."), Wait, ICON_BLTouch); break; - case Resuming: Draw_Popup(F("Resuming Print"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; - case Custom: Draw_Popup(F("Running Custom GCode"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; + case Pause: drawPopup(F("Pause Print"), F(""), F(""), Popup); break; + case Stop: drawPopup(F("Stop Print"), F(""), F(""), Popup); break; + case Resume: drawPopup(F("Resume Print?"), F("Looks Like the last"), F("print was interrupted."), Popup); break; + case ConfFilChange: drawPopup(F("Confirm Filament Change"), F(""), F(""), Popup); break; + case PurgeMore: drawPopup(F("Purge more filament?"), F("(Cancel to finish process)"), F(""), Popup); break; + case SaveLevel: drawPopup(F("Leveling Complete"), F("Save to EEPROM?"), F(""), Popup); break; + case MeshSlot: drawPopup(F("Mesh slot not selected"), F("(Confirm to select slot 0)"), F(""), Popup); break; + case ETemp: drawPopup(F("Nozzle is too cold"), F("Open Preheat Menu?"), F(""), Popup); break; + case ManualProbing: drawPopup(F("Manual Probing"), F("(Confirm to probe)"), F("(cancel to exit)"), Popup); break; + case Level: drawPopup(F("Auto Bed Leveling"), F("Please wait until done."), F(""), Wait, ICON_AutoLeveling); break; + case Home: drawPopup(option ? F("Parking") : F("Homing"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; + case MoveWait: drawPopup(F("Moving to Point"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; + case Heating: drawPopup(F("Heating"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; + case FilLoad: drawPopup(option ? F("Unloading Filament") : F("Loading Filament"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; + case FilChange: drawPopup(F("Filament Change"), F("Please wait for prompt."), F(""), Wait, ICON_BLTouch); break; + case TempWarn: drawPopup(option ? F("Nozzle temp too low!") : F("Nozzle temp too high!"), F(""), F(""), Wait, option ? ICON_TempTooLow : ICON_TempTooHigh); break; + case Runout: drawPopup(F("Filament Runout"), F(""), F(""), Wait, ICON_BLTouch); break; + case PIDWait: drawPopup(F("PID Autotune"), F("in process"), F("Please wait until done."), Wait, ICON_BLTouch); break; + case Resuming: drawPopup(F("Resuming Print"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; + case Custom: drawPopup(F("Running Custom GCode"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; default: break; } } -void CrealityDWINClass::Confirm_Handler(PopupID popupid) { +void CrealityDWIN::confirmHandler(PopupID popupid) { popup = popupid; switch (popupid) { - case FilInsert: Draw_Popup(F("Insert Filament"), F("Press to Continue"), F(""), Confirm); break; - case HeaterTime: Draw_Popup(F("Heater Timed Out"), F("Press to Reheat"), F(""), Confirm); break; - case UserInput: Draw_Popup(F("Waiting for Input"), F("Press to Continue"), F(""), Confirm); break; - case LevelError: Draw_Popup(F("Couldn't enable Leveling"), F("(Valid mesh must exist)"), F(""), Confirm); break; - case InvalidMesh: Draw_Popup(F("Valid mesh must exist"), F("before tuning can be"), F("performed"), Confirm); break; + case FilInsert: drawPopup(F("Insert Filament"), F("Press to Continue"), F(""), Confirm); break; + case HeaterTime: drawPopup(F("Heater Timed Out"), F("Press to Reheat"), F(""), Confirm); break; + case UserInput: drawPopup(F("Waiting for Input"), F("Press to Continue"), F(""), Confirm); break; + case LevelError: drawPopup(F("Couldn't enable Leveling"), F("(Valid mesh must exist)"), F(""), Confirm); break; + case InvalidMesh: drawPopup(F("Valid mesh must exist"), F("before tuning can be"), F("performed"), Confirm); break; default: break; } } /* Navigation and Control */ -void CrealityDWINClass::Main_Menu_Control() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void CrealityDWIN::mainMenuControl() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_CW && selection < PAGE_COUNT - 1) { selection++; // Select Down - Main_Menu_Icons(); + mainMenuIcons(); } else if (encoder_diffState == ENCODER_DIFF_CCW && selection > 0) { selection--; // Select Up - Main_Menu_Icons(); + mainMenuIcons(); } else if (encoder_diffState == ENCODER_DIFF_ENTER) switch (selection) { - case PAGE_PRINT: card.mount(); Draw_SD_List(); break; - case PAGE_PREPARE: Draw_Menu(Prepare); break; - case PAGE_CONTROL: Draw_Menu(Control); break; - case PAGE_INFO_LEVELING: Draw_Menu(TERN(HAS_MESH, Leveling, InfoMain)); break; + case PAGE_PRINT: card.mount(); drawSDList(); break; + case PAGE_PREPARE: drawMenu(Prepare); break; + case PAGE_CONTROL: drawMenu(Control); break; + case PAGE_INFO_LEVELING: drawMenu(TERN(HAS_MESH, Leveling, InfoMain)); break; } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void CrealityDWINClass::Menu_Control() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void CrealityDWIN::menuControl() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (encoder_diffState == ENCODER_DIFF_CW && selection < Get_Menu_Size(active_menu)) { - DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + if (encoder_diffState == ENCODER_DIFF_CW && selection < getMenuSize(active_menu)) { + dwinDrawRectangle(1, Color_Bg_Black, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); selection++; // Select Down if (selection > scrollpos+MROWS) { scrollpos++; - DWIN_Frame_AreaMove(1, 2, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); - Menu_Item_Handler(active_menu, selection); + dwinFrameAreaMove(1, 2, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); + menuItemHandler(active_menu, selection); } - DWIN_Draw_Rectangle(1, GetColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); } else if (encoder_diffState == ENCODER_DIFF_CCW && selection > 0) { - DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, Color_Bg_Black, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); selection--; // Select Up if (selection < scrollpos) { scrollpos--; - DWIN_Frame_AreaMove(1, 3, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); - Menu_Item_Handler(active_menu, selection); + dwinFrameAreaMove(1, 3, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); + menuItemHandler(active_menu, selection); } - DWIN_Draw_Rectangle(1, GetColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); } else if (encoder_diffState == ENCODER_DIFF_ENTER) - Menu_Item_Handler(active_menu, selection, false); - DWIN_UpdateLCD(); + menuItemHandler(active_menu, selection, false); + dwinUpdateLCD(); } -void CrealityDWINClass::Value_Control() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void CrealityDWIN::valueControl() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_CW) - tempvalue += EncoderRate.encoderMoveValue; + tempvalue += encoderRate.encoderMoveValue; else if (encoder_diffState == ENCODER_DIFF_CCW) - tempvalue -= EncoderRate.encoderMoveValue; + tempvalue -= encoderRate.encoderMoveValue; else if (encoder_diffState == ENCODER_DIFF_ENTER) { process = Menu; - EncoderRate.enabled = false; - Draw_Float(tempvalue / valueunit, selection - scrollpos, false, valueunit); - DWIN_UpdateLCD(); + encoderRate.enabled = false; + drawFloat(tempvalue / valueunit, selection - scrollpos, false, valueunit); + dwinUpdateLCD(); if (active_menu == ZOffset && liveadjust) { planner.synchronize(); current_position.z += (tempvalue / valueunit - zoffsetvalue); @@ -4243,24 +4239,24 @@ void CrealityDWINClass::Value_Control() { return; } LIMIT(tempvalue, valuemin * valueunit, valuemax * valueunit); - Draw_Float(tempvalue / valueunit, selection - scrollpos, true, valueunit); - DWIN_UpdateLCD(); + drawFloat(tempvalue / valueunit, selection - scrollpos, true, valueunit); + dwinUpdateLCD(); if (active_menu == Move && livemove) { *(float*)valuepointer = tempvalue / valueunit; planner.buffer_line(current_position, manual_feedrate_mm_s[selection - 1], active_extruder); } } -void CrealityDWINClass::Option_Control() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void CrealityDWIN::optionControl() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_CW) - tempvalue += EncoderRate.encoderMoveValue; + tempvalue += encoderRate.encoderMoveValue; else if (encoder_diffState == ENCODER_DIFF_CCW) - tempvalue -= EncoderRate.encoderMoveValue; + tempvalue -= encoderRate.encoderMoveValue; else if (encoder_diffState == ENCODER_DIFF_ENTER) { process = Menu; - EncoderRate.enabled = false; + encoderRate.enabled = false; if (valuepointer == &color_names) { switch (selection) { case COLORSETTINGS_CURSOR: eeprom_settings.cursor_color = tempvalue; break; @@ -4275,24 +4271,24 @@ void CrealityDWINClass::Option_Control() { case COLORSETTINGS_PROGRESS_COORDINATES: eeprom_settings.coordinates_text = tempvalue; break; case COLORSETTINGS_PROGRESS_COORDINATES_LINE: eeprom_settings.coordinates_split_line = tempvalue; break; } - Redraw_Screen(); + redrawScreen(); } else if (valuepointer == &preheat_modes) preheatmode = tempvalue; - Draw_Option(tempvalue, static_cast(valuepointer), selection - scrollpos, false, (valuepointer == &color_names)); - DWIN_UpdateLCD(); + drawOption(tempvalue, static_cast(valuepointer), selection - scrollpos, false, (valuepointer == &color_names)); + dwinUpdateLCD(); return; } LIMIT(tempvalue, valuemin, valuemax); - Draw_Option(tempvalue, static_cast(valuepointer), selection - scrollpos, true); - DWIN_UpdateLCD(); + drawOption(tempvalue, static_cast(valuepointer), selection - scrollpos, true); + dwinUpdateLCD(); } -void CrealityDWINClass::File_Control() { +void CrealityDWIN::fileControl() { typedef TextScroller Scroller; static Scroller scroller; - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) { if (selection > 0) { card.selectFileByIndexSorted(selection - 1); @@ -4307,82 +4303,82 @@ void CrealityDWINClass::File_Control() { time = millis() + 200; Scroller::Buffer buf; const char* const name = scroller.scroll(pos, buf, filename); - DWIN_Draw_Rectangle(1, Color_Bg_Black, LBLX, MBASE(selection - scrollpos) - 14, 271, MBASE(selection - scrollpos) + 28); - Draw_Menu_Item(selection - scrollpos, card.flag.filenameIsDir ? ICON_More : ICON_File, name); - DWIN_UpdateLCD(); + dwinDrawRectangle(1, Color_Bg_Black, LBLX, MBASE(selection - scrollpos) - 14, 271, MBASE(selection - scrollpos) + 28); + drawMenuItem(selection - scrollpos, card.flag.filenameIsDir ? ICON_More : ICON_File, name); + dwinUpdateLCD(); } } return; } if (encoder_diffState == ENCODER_DIFF_CW && selection < card.get_num_items()) { - DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, Color_Bg_Black, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); if (selection > 0) { - DWIN_Draw_Rectangle(1, Color_Bg_Black, LBLX, MBASE(selection - scrollpos) - 14, 271, MBASE(selection - scrollpos) + 28); - Draw_SD_Item(selection, selection - scrollpos); + dwinDrawRectangle(1, Color_Bg_Black, LBLX, MBASE(selection - scrollpos) - 14, 271, MBASE(selection - scrollpos) + 28); + drawSDItem(selection, selection - scrollpos); } scroller.reset(); selection++; // Select Down if (selection > scrollpos + MROWS) { scrollpos++; - DWIN_Frame_AreaMove(1, 2, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); - Draw_SD_Item(selection, selection - scrollpos); + dwinFrameAreaMove(1, 2, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); + drawSDItem(selection, selection - scrollpos); } - DWIN_Draw_Rectangle(1, GetColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); } else if (encoder_diffState == ENCODER_DIFF_CCW && selection > 0) { - DWIN_Draw_Rectangle(1, Color_Bg_Black, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); - DWIN_Draw_Rectangle(1, Color_Bg_Black, LBLX, MBASE(selection - scrollpos) - 14, 271, MBASE(selection - scrollpos) + 28); - Draw_SD_Item(selection, selection - scrollpos); + dwinDrawRectangle(1, Color_Bg_Black, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, Color_Bg_Black, LBLX, MBASE(selection - scrollpos) - 14, 271, MBASE(selection - scrollpos) + 28); + drawSDItem(selection, selection - scrollpos); scroller.reset(); selection--; // Select Up if (selection < scrollpos) { scrollpos--; - DWIN_Frame_AreaMove(1, 3, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); - Draw_SD_Item(selection, selection - scrollpos); + dwinFrameAreaMove(1, 3, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); + drawSDItem(selection, selection - scrollpos); } - DWIN_Draw_Rectangle(1, GetColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { if (selection == 0) { if (card.flag.workDirIsRoot) { process = Main; - Draw_Main_Menu(); + drawMainMenu(); } else { card.cdup(); - Draw_SD_List(); + drawSDList(); } } else { card.selectFileByIndexSorted(selection - 1); if (card.flag.filenameIsDir) { card.cd(card.filename); - Draw_SD_List(); + drawSDList(); } else { card.openAndPrintFile(card.filename); } } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void CrealityDWINClass::Print_Screen_Control() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void CrealityDWIN::printScreenControl() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_CW && selection < PRINT_COUNT - 1) { selection++; // Select Down - Print_Screen_Icons(); + printScreenIcons(); } else if (encoder_diffState == ENCODER_DIFF_CCW && selection > 0) { selection--; // Select Up - Print_Screen_Icons(); + printScreenIcons(); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (selection) { case PRINT_SETUP: - Draw_Menu(Tune); - Update_Status_Bar(true); + drawMenu(Tune); + updateStatusBar(true); break; case PRINT_PAUSE_RESUME: if (paused) { @@ -4409,27 +4405,27 @@ void CrealityDWINClass::Print_Screen_Control() { else { TERN_(HOST_ACTION_COMMANDS, hostui.resume()); } - Draw_Print_Screen(); + drawPrintScreen(); } else - Popup_Handler(Pause); + popupHandler(Pause); break; - case PRINT_STOP: Popup_Handler(Stop); break; + case PRINT_STOP: popupHandler(Stop); break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void CrealityDWINClass::Popup_Control() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void CrealityDWIN::popupControl() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_CW && selection < 1) { selection++; - Popup_Select(); + popupSelect(); } else if (encoder_diffState == ENCODER_DIFF_CCW && selection > 0) { selection--; - Popup_Select(); + popupSelect(); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (popup) { @@ -4440,7 +4436,7 @@ void CrealityDWINClass::Popup_Control() { if (recovery.enabled) recovery.save(true); #endif #if ENABLED(PARK_HEAD_ON_PAUSE) - Popup_Handler(Home, true); + popupHandler(Home, true); #if HAS_MEDIA if (IS_SD_PRINTING()) card.pauseSDPrint(); #endif @@ -4459,7 +4455,7 @@ void CrealityDWINClass::Popup_Control() { TERN_(HOST_ACTION_COMMANDS, hostui.pause()); } } - Draw_Print_Screen(); + drawPrintScreen(); break; case Stop: if (selection == 0) { @@ -4472,14 +4468,14 @@ void CrealityDWINClass::Popup_Control() { } } else - Draw_Print_Screen(); + drawPrintScreen(); break; case Resume: if (selection == 0) queue.inject(F("M1000")); else { queue.inject(F("M1000 C")); - Draw_Main_Menu(); + drawMainMenu(); } break; @@ -4488,10 +4484,10 @@ void CrealityDWINClass::Popup_Control() { if (selection == 0) { thermalManager.setTargetHotend(EXTRUDE_MINTEMP, 0); TERN_(HAS_FAN, thermalManager.set_fan_speed(0, MAX_FAN_SPEED)); - Draw_Menu(PreheatHotend); + drawMenu(PreheatHotend); } else - Redraw_Menu(true, true, false); + redrawMenu(true, true, false); break; #endif @@ -4501,11 +4497,11 @@ void CrealityDWINClass::Popup_Control() { char buf[80]; const float dif = probe.probe_at_point(current_position.x, current_position.y, PROBE_PT_STOW, 0, false) - corner_avg; sprintf_P(buf, dif > 0 ? PSTR("Corner is %smm high") : PSTR("Corner is %smm low"), dtostrf(abs(dif), 1, 3, str_1)); - Update_Status(buf); + updateStatus(buf); } else { - Redraw_Menu(true, true, false); - Update_Status(""); + redrawMenu(true, true, false); + updateStatus(""); } break; #endif @@ -4514,29 +4510,29 @@ void CrealityDWINClass::Popup_Control() { case ConfFilChange: if (selection == 0) { if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) - Popup_Handler(ETemp); + popupHandler(ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - Popup_Handler(Heating); + popupHandler(Heating); thermalManager.wait_for_hotend(0); } - Popup_Handler(FilChange); + popupHandler(FilChange); sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); gcode.process_subcommands_now(cmd); } } else - Redraw_Menu(true, true, false); + redrawMenu(true, true, false); break; case PurgeMore: if (selection == 0) { pause_menu_response = PAUSE_RESPONSE_EXTRUDE_MORE; - Popup_Handler(FilChange); + popupHandler(FilChange); } else { pause_menu_response = PAUSE_RESPONSE_RESUME_PRINT; - if (printing) Popup_Handler(Resuming); - else Redraw_Menu(true, true, active_menu == PreheatHotend); + if (printing) popupHandler(Resuming); + else redrawMenu(true, true, active_menu == PreheatHotend); } break; #endif // ADVANCED_PAUSE_FEATURE @@ -4547,55 +4543,55 @@ void CrealityDWINClass::Popup_Control() { #if ENABLED(AUTO_BED_LEVELING_UBL) gcode.process_subcommands_now(F("G29 S")); planner.synchronize(); - AudioFeedback(true); + audioFeedback(true); #else - AudioFeedback(settings.save()); + audioFeedback(settings.save()); #endif } - Draw_Menu(Leveling, LEVELING_GET_MESH); + drawMenu(Leveling, LEVELING_GET_MESH); break; #endif #if ENABLED(AUTO_BED_LEVELING_UBL) case MeshSlot: if (selection == 0) bedlevel.storage_slot = 0; - Redraw_Menu(true, true); + redrawMenu(true, true); break; #endif default: break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } -void CrealityDWINClass::Confirm_Control() { - EncoderState encoder_diffState = Encoder_ReceiveAnalyze(); +void CrealityDWIN::confirmControl() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (popup) { case Complete: - Draw_Main_Menu(); + drawMainMenu(); break; case FilInsert: - Popup_Handler(FilChange); + popupHandler(FilChange); wait_for_user = false; break; case HeaterTime: - Popup_Handler(Heating); + popupHandler(Heating); wait_for_user = false; break; default: - Redraw_Menu(true, true, false); + redrawMenu(true, true, false); wait_for_user = false; break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } /* In-Menu Value Modification */ -void CrealityDWINClass::Setup_Value(const_float_t value, const_float_t min, const_float_t max, const_float_t unit, const uint8_t type) { +void CrealityDWIN::setupValue(const_float_t value, const_float_t min, const_float_t max, const_float_t unit, const uint8_t type) { if (TERN0(HAS_HOTEND, valuepointer == &thermalManager.temp_hotend[0].pid.Ki) || TERN0(HAS_HEATED_BED, valuepointer == &thermalManager.temp_bed.pid.Ki)) tempvalue = unscalePID_i(value) * unit; else if (TERN0(HAS_HOTEND, valuepointer == &thermalManager.temp_hotend[0].pid.Kd) || TERN0(HAS_HEATED_BED, valuepointer == &thermalManager.temp_bed.pid.Kd)) @@ -4607,58 +4603,58 @@ void CrealityDWINClass::Setup_Value(const_float_t value, const_float_t min, cons valueunit = unit; valuetype = type; process = Value; - EncoderRate.enabled = true; - Draw_Float(tempvalue / unit, selection - scrollpos, true, valueunit); + encoderRate.enabled = true; + drawFloat(tempvalue / unit, selection - scrollpos, true, valueunit); } -void CrealityDWINClass::Modify_Value(float &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { +void CrealityDWIN::modifyValue(float &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; - Setup_Value((float)value, min, max, unit, 0); + setupValue((float)value, min, max, unit, 0); } -void CrealityDWINClass::Modify_Value(uint8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { +void CrealityDWIN::modifyValue(uint8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; - Setup_Value((float)value, min, max, unit, 1); + setupValue((float)value, min, max, unit, 1); } -void CrealityDWINClass::Modify_Value(uint16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { +void CrealityDWIN::modifyValue(uint16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; - Setup_Value((float)value, min, max, unit, 2); + setupValue((float)value, min, max, unit, 2); } -void CrealityDWINClass::Modify_Value(int16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { +void CrealityDWIN::modifyValue(int16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; - Setup_Value((float)value, min, max, unit, 3); + setupValue((float)value, min, max, unit, 3); } -void CrealityDWINClass::Modify_Value(uint32_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { +void CrealityDWIN::modifyValue(uint32_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; - Setup_Value((float)value, min, max, unit, 4); + setupValue((float)value, min, max, unit, 4); } -void CrealityDWINClass::Modify_Value(int8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { +void CrealityDWIN::modifyValue(int8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; - Setup_Value((float)value, min, max, unit, 5); + setupValue((float)value, min, max, unit, 5); } -void CrealityDWINClass::Modify_Option(const uint8_t value, const char * const * options, const uint8_t max) { +void CrealityDWIN::modifyOption(const uint8_t value, const char * const * options, const uint8_t max) { tempvalue = value; valuepointer = const_cast(options); valuemin = 0; valuemax = max; process = Option; - EncoderRate.enabled = true; - Draw_Option(value, options, selection - scrollpos, true); + encoderRate.enabled = true; + drawOption(value, options, selection - scrollpos, true); } /* Main Functions */ -void CrealityDWINClass::Update_Status(const char * const text) { +void CrealityDWIN::updateStatus(const char * const text) { if (strncmp_P(text, PSTR(""), 3) == 0) { for (uint8_t i = 0; i < _MIN((size_t)LONG_FILENAME_LENGTH, strlen(text)); ++i) filename[i] = text[i + 3]; filename[_MIN((size_t)LONG_FILENAME_LENGTH - 1, strlen(text))] = '\0'; - Draw_Print_Filename(true); + drawPrintFilename(true); } else { for (uint8_t i = 0; i < _MIN((size_t)64, strlen(text)); ++i) statusmsg[i] = text[i]; @@ -4666,7 +4662,7 @@ void CrealityDWINClass::Update_Status(const char * const text) { } } -void CrealityDWINClass::Start_Print(const bool sd) { +void CrealityDWIN::startPrint(const bool sd) { sdprint = sd; if (!printing) { printing = true; @@ -4685,59 +4681,59 @@ void CrealityDWINClass::Start_Print(const bool sd) { strcpy_P(filename, PSTR("Host Print")); TERN_(SET_PROGRESS_PERCENT, ui.set_progress(0)); TERN_(SET_REMAINING_TIME, ui.set_remaining_time(0)); - Draw_Print_Screen(); + drawPrintScreen(); } } -void CrealityDWINClass::Stop_Print() { +void CrealityDWIN::stopPrint() { printing = false; sdprint = false; thermalManager.cooldown(); TERN_(SET_PROGRESS_PERCENT, ui.set_progress(100 * (PROGRESS_SCALE))); TERN_(SET_REMAINING_TIME, ui.set_remaining_time(0)); - Draw_Print_confirm(); + drawPrintConfirm(); } -void CrealityDWINClass::Update() { - State_Update(); - Screen_Update(); +void CrealityDWIN::update() { + stateUpdate(); + screenUpdate(); switch (process) { - case Main: Main_Menu_Control(); break; - case Menu: Menu_Control(); break; - case Value: Value_Control(); break; - case Option: Option_Control(); break; - case File: File_Control(); break; - case Print: Print_Screen_Control(); break; - case Popup: Popup_Control(); break; - case Confirm: Confirm_Control(); break; + case Main: mainMenuControl(); break; + case Menu: menuControl(); break; + case Value: valueControl(); break; + case Option: optionControl(); break; + case File: fileControl(); break; + case Print: printScreenControl(); break; + case Popup: popupControl(); break; + case Confirm: confirmControl(); break; } } -void MarlinUI::update() { CrealityDWIN.Update(); } +void MarlinUI::update() { crealityDWIN.update(); } #if HAS_LCD_BRIGHTNESS - void MarlinUI::_set_brightness() { DWIN_LCD_Brightness(backlight ? brightness : 0); } + void MarlinUI::_set_brightness() { dwinLCDBrightness(backlight ? brightness : 0); } #endif -void CrealityDWINClass::State_Update() { +void CrealityDWIN::stateUpdate() { if ((print_job_timer.isRunning() || print_job_timer.isPaused()) != printing) { - if (!printing) Start_Print(card.isFileOpen() || TERN0(POWER_LOSS_RECOVERY, recovery.valid())); - else Stop_Print(); + if (!printing) startPrint(card.isFileOpen() || TERN0(POWER_LOSS_RECOVERY, recovery.valid())); + else stopPrint(); } if (print_job_timer.isPaused() != paused) { paused = print_job_timer.isPaused(); - if (process == Print) Print_Screen_Icons(); - if (process == Wait && !paused) Redraw_Menu(true, true); + if (process == Print) printScreenIcons(); + if (process == Wait && !paused) redrawMenu(true, true); } if (wait_for_user && !(process == Confirm) && !print_job_timer.isPaused()) - Confirm_Handler(UserInput); + confirmHandler(UserInput); #if ENABLED(ADVANCED_PAUSE_FEATURE) if (process == Popup && popup == PurgeMore) { if (pause_menu_response == PAUSE_RESPONSE_EXTRUDE_MORE) - Popup_Handler(FilChange); + popupHandler(FilChange); else if (pause_menu_response == PAUSE_RESPONSE_RESUME_PRINT) { - if (printing) Popup_Handler(Resuming); - else Redraw_Menu(true, true, active_menu == PreheatHotend); + if (printing) popupHandler(Resuming); + else redrawMenu(true, true, active_menu == PreheatHotend); } } #endif @@ -4745,33 +4741,33 @@ void CrealityDWINClass::State_Update() { static bool ranout = false; if (runout.filament_ran_out != ranout) { ranout = runout.filament_ran_out; - if (ranout) Popup_Handler(Runout); + if (ranout) popupHandler(Runout); } #endif } -void CrealityDWINClass::Screen_Update() { +void CrealityDWIN::screenUpdate() { const millis_t ms = millis(); static millis_t scrltime = 0; if (ELAPSED(ms, scrltime)) { scrltime = ms + 200; - Update_Status_Bar(); - if (process == Print) Draw_Print_Filename(); + updateStatusBar(); + if (process == Print) drawPrintFilename(); } static millis_t statustime = 0; if (ELAPSED(ms, statustime)) { statustime = ms + 500; - Draw_Status_Area(); + drawStatusArea(); } static millis_t printtime = 0; if (ELAPSED(ms, printtime)) { printtime = ms + 1000; if (process == Print) { - Draw_Print_ProgressBar(); - Draw_Print_ProgressElapsed(); - TERN_(SET_REMAINING_TIME, Draw_Print_ProgressRemain()); + drawPrintProgressBar(); + drawPrintProgressElapsed(); + TERN_(SET_REMAINING_TIME, drawPrintProgressRemain()); } } @@ -4779,7 +4775,7 @@ void CrealityDWINClass::Screen_Update() { if (mounted != card.isMounted()) { mounted = card.isMounted(); if (process == File) - Draw_SD_List(); + drawSDList(); } #if HAS_HOTEND @@ -4820,7 +4816,7 @@ void CrealityDWINClass::Screen_Update() { hotendtarget = thermalManager.temp_hotend[0].target; if (scrollpos <= TEMP_HOTEND && TEMP_HOTEND <= scrollpos + MROWS) { if (process != Value || selection != TEMP_HOTEND - scrollpos) - Draw_Float(thermalManager.temp_hotend[0].target, TEMP_HOTEND - scrollpos, false, 1); + drawFloat(thermalManager.temp_hotend[0].target, TEMP_HOTEND - scrollpos, false, 1); } } #endif @@ -4829,7 +4825,7 @@ void CrealityDWINClass::Screen_Update() { bedtarget = thermalManager.temp_bed.target; if (scrollpos <= TEMP_BED && TEMP_BED <= scrollpos + MROWS) { if (process != Value || selection != TEMP_HOTEND - scrollpos) - Draw_Float(thermalManager.temp_bed.target, TEMP_BED - scrollpos, false, 1); + drawFloat(thermalManager.temp_bed.target, TEMP_BED - scrollpos, false, 1); } } #endif @@ -4838,7 +4834,7 @@ void CrealityDWINClass::Screen_Update() { fanspeed = thermalManager.fan_speed[0]; if (scrollpos <= TEMP_FAN && TEMP_FAN <= scrollpos + MROWS) { if (process != Value || selection != TEMP_HOTEND - scrollpos) - Draw_Float(thermalManager.fan_speed[0], TEMP_FAN - scrollpos, false, 1); + drawFloat(thermalManager.fan_speed[0], TEMP_FAN - scrollpos, false, 1); } } #endif @@ -4849,7 +4845,7 @@ void CrealityDWINClass::Screen_Update() { hotendtarget = thermalManager.temp_hotend[0].target; if (scrollpos <= TUNE_HOTEND && TUNE_HOTEND <= scrollpos + MROWS) { if (process != Value || selection != TEMP_HOTEND - scrollpos) - Draw_Float(thermalManager.temp_hotend[0].target, TUNE_HOTEND - scrollpos, false, 1); + drawFloat(thermalManager.temp_hotend[0].target, TUNE_HOTEND - scrollpos, false, 1); } } #endif @@ -4858,7 +4854,7 @@ void CrealityDWINClass::Screen_Update() { bedtarget = thermalManager.temp_bed.target; if (scrollpos <= TUNE_BED && TUNE_BED <= scrollpos + MROWS) { if (process != Value || selection != TEMP_HOTEND - scrollpos) - Draw_Float(thermalManager.temp_bed.target, TUNE_BED - scrollpos, false, 1); + drawFloat(thermalManager.temp_bed.target, TUNE_BED - scrollpos, false, 1); } } #endif @@ -4867,7 +4863,7 @@ void CrealityDWINClass::Screen_Update() { fanspeed = thermalManager.fan_speed[0]; if (scrollpos <= TUNE_FAN && TUNE_FAN <= scrollpos + MROWS) { if (process != Value || selection != TEMP_HOTEND - scrollpos) - Draw_Float(thermalManager.fan_speed[0], TUNE_FAN - scrollpos, false, 1); + drawFloat(thermalManager.fan_speed[0], TUNE_FAN - scrollpos, false, 1); } } #endif @@ -4876,25 +4872,25 @@ void CrealityDWINClass::Screen_Update() { } } -void CrealityDWINClass::AudioFeedback(const bool success/*=true*/) { +void CrealityDWIN::audioFeedback(const bool success/*=true*/) { if (ui.sound_on) DONE_BUZZ(success); else - Update_Status(success ? "Success" : "Failed"); + updateStatus(success ? "Success" : "Failed"); } -void CrealityDWINClass::Save_Settings(char * const buff) { +void CrealityDWIN::saveSettings(char * const buff) { TERN_(AUTO_BED_LEVELING_UBL, eeprom_settings.tilt_grid_size = mesh_conf.tilt_grid - 1); eeprom_settings.corner_pos = corner_pos * 10; memcpy(buff, &eeprom_settings, _MIN(sizeof(eeprom_settings), eeprom_data_size)); } -void CrealityDWINClass::Load_Settings(const char * const buff) { +void CrealityDWIN::loadSettings(const char * const buff) { memcpy(&eeprom_settings, buff, _MIN(sizeof(eeprom_settings), eeprom_data_size)); TERN_(AUTO_BED_LEVELING_UBL, mesh_conf.tilt_grid = eeprom_settings.tilt_grid_size + 1); if (eeprom_settings.corner_pos == 0) eeprom_settings.corner_pos = 325; corner_pos = eeprom_settings.corner_pos / 10.0f; - Redraw_Screen(); + redrawScreen(); #if ENABLED(POWER_LOSS_RECOVERY) static bool init = true; if (init) { @@ -4904,7 +4900,7 @@ void CrealityDWINClass::Load_Settings(const char * const buff) { #endif } -void CrealityDWINClass::Reset_Settings() { +void CrealityDWIN::resetSettings() { eeprom_settings.time_format_textual = false; TERN_(AUTO_BED_LEVELING_UBL, eeprom_settings.tilt_grid_size = 0); eeprom_settings.corner_pos = 325; @@ -4922,36 +4918,36 @@ void CrealityDWINClass::Reset_Settings() { TERN_(AUTO_BED_LEVELING_UBL, mesh_conf.tilt_grid = eeprom_settings.tilt_grid_size + 1); corner_pos = eeprom_settings.corner_pos / 10.0f; TERN_(SOUND_MENU_ITEM, ui.sound_on = ENABLED(SOUND_ON_DEFAULT)); - Redraw_Screen(); + redrawScreen(); } void MarlinUI::init_lcd() { delay(800); SERIAL_ECHOPGM("\nDWIN handshake "); - if (DWIN_Handshake()) SERIAL_ECHOLNPGM("ok."); else SERIAL_ECHOLNPGM("error."); - DWIN_Frame_SetDir(1); // Orientation 90° - DWIN_UpdateLCD(); // Show bootscreen (first image) - Encoder_Configuration(); + if (dwinHandshake()) SERIAL_ECHOLNPGM("ok."); else SERIAL_ECHOLNPGM("error."); + dwinFrameSetDir(1); // Orientation 90° + dwinUpdateLCD(); // Show bootscreen (first image) + encoderConfiguration(); for (uint16_t t = 0; t <= 100; t += 2) { - DWIN_ICON_Show(ICON, ICON_Bar, 15, 260); - DWIN_Draw_Rectangle(1, Color_Bg_Black, 15 + t * 242 / 100, 260, 257, 280); - DWIN_UpdateLCD(); + dwinIconShow(ICON, ICON_Bar, 15, 260); + dwinDrawRectangle(1, Color_Bg_Black, 15 + t * 242 / 100, 260, 257, 280); + dwinUpdateLCD(); delay(20); } - DWIN_JPG_ShowAndCache(3); - DWIN_JPG_CacheTo1(Language_English); - CrealityDWIN.Redraw_Screen(); + dwinJPGShowAndCache(3); + dwinJPGCacheTo1(Language_English); + crealityDWIN.redrawScreen(); } #if ENABLED(ADVANCED_PAUSE_FEATURE) void MarlinUI::pause_show_message(const PauseMessage message, const PauseMode mode/*=PAUSE_MODE_SAME*/, const uint8_t extruder/*=active_extruder*/) { switch (message) { - case PAUSE_MESSAGE_INSERT: CrealityDWIN.Confirm_Handler(FilInsert); break; + case PAUSE_MESSAGE_INSERT: crealityDWIN.confirmHandler(FilInsert); break; case PAUSE_MESSAGE_PURGE: - case PAUSE_MESSAGE_OPTION: CrealityDWIN.Popup_Handler(PurgeMore); break; - case PAUSE_MESSAGE_HEAT: CrealityDWIN.Confirm_Handler(HeaterTime); break; - case PAUSE_MESSAGE_WAITING: CrealityDWIN.Draw_Print_Screen(); break; + case PAUSE_MESSAGE_OPTION: crealityDWIN.popupHandler(PurgeMore); break; + case PAUSE_MESSAGE_HEAT: crealityDWIN.confirmHandler(HeaterTime); break; + case PAUSE_MESSAGE_WAITING: crealityDWIN.drawPrintScreen(); break; default: break; } } diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.h b/Marlin/src/lcd/e3v2/jyersui/dwin.h index 2f5369d4a648..450345d1a2f3 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.h +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.h @@ -148,7 +148,7 @@ enum colorID : uint8_t { #define Confirm_Color 0x34B9 #define Cancel_Color 0x3186 -class CrealityDWINClass { +class CrealityDWIN { public: static constexpr size_t eeprom_data_size = 48; static struct EEPROM_Settings { // use bit fields to save space, max 48 bytes @@ -173,76 +173,76 @@ class CrealityDWINClass { static constexpr const char * const color_names[11] = { "Default", "White", "Green", "Cyan", "Blue", "Magenta", "Red", "Orange", "Yellow", "Brown", "Black" }; static constexpr const char * const preheat_modes[3] = { "Both", "Hotend", "Bed" }; - static void Clear_Screen(const uint8_t e=3); - static void Draw_Float(const_float_t value, const uint8_t row, const bool selected=false, const uint8_t minunit=10); - static void Draw_Option(const uint8_t value, const char * const * options, const uint8_t row, const bool selected=false, const bool color=false); - static uint16_t GetColor(const uint8_t color, const uint16_t original, const bool light=false); - static void Draw_Checkbox(const uint8_t row, const bool value); - static void Draw_Title(const char * const title); - static void Draw_Title(FSTR_P const title); - static void Draw_Menu_Item(const uint8_t row, uint8_t icon=0, const char * const label1=nullptr, const char * const label2=nullptr, const bool more=false, const bool centered=false); - static void Draw_Menu_Item(const uint8_t row, uint8_t icon=0, FSTR_P const flabel1=nullptr, FSTR_P const flabel2=nullptr, const bool more=false, const bool centered=false); - static void Draw_Menu(const uint8_t menu, const uint8_t select=0, const uint8_t scroll=0); - static void Redraw_Menu(const bool lastproc=true, const bool lastsel=false, const bool lastmenu=false); - static void Redraw_Screen(); - - static void Main_Menu_Icons(); - static void Draw_Main_Menu(uint8_t select=0); - static void Print_Screen_Icons(); - static void Draw_Print_Screen(); - static void Draw_Print_Filename(const bool reset=false); - static void Draw_Print_ProgressBar(); + static void clearScreen(const uint8_t e=3); + static void drawFloat(const_float_t value, const uint8_t row, const bool selected=false, const uint8_t minunit=10); + static void drawOption(const uint8_t value, const char * const * options, const uint8_t row, const bool selected=false, const bool color=false); + static uint16_t getColor(const uint8_t color, const uint16_t original, const bool light=false); + static void drawCheckbox(const uint8_t row, const bool value); + static void drawTitle(const char * const title); + static void drawTitle(FSTR_P const title); + static void drawMenuItem(const uint8_t row, uint8_t icon=0, const char * const label1=nullptr, const char * const label2=nullptr, const bool more=false, const bool centered=false); + static void drawMenuItem(const uint8_t row, uint8_t icon=0, FSTR_P const flabel1=nullptr, FSTR_P const flabel2=nullptr, const bool more=false, const bool centered=false); + static void drawMenu(const uint8_t menu, const uint8_t select=0, const uint8_t scroll=0); + static void redrawMenu(const bool lastproc=true, const bool lastsel=false, const bool lastmenu=false); + static void redrawScreen(); + + static void mainMenuIcons(); + static void drawMainMenu(uint8_t select=0); + static void printScreenIcons(); + static void drawPrintScreen(); + static void drawPrintFilename(const bool reset=false); + static void drawPrintProgressBar(); #if ENABLED(SET_REMAINING_TIME) - static void Draw_Print_ProgressRemain(); + static void drawPrintProgressRemain(); #endif - static void Draw_Print_ProgressElapsed(); - static void Draw_Print_confirm(); - static void Draw_SD_Item(const uint8_t item, const uint8_t row); - static void Draw_SD_List(const bool removed=false); - static void Draw_Status_Area(const bool icons=false); - static void Draw_Popup(FSTR_P const line1, FSTR_P const line2, FSTR_P const line3, uint8_t mode, uint8_t icon=0); - static void Popup_Select(); - static void Update_Status_Bar(const bool refresh=false); + static void drawPrintProgressElapsed(); + static void drawPrintConfirm(); + static void drawSDItem(const uint8_t item, const uint8_t row); + static void drawSDList(const bool removed=false); + static void drawStatusArea(const bool icons=false); + static void drawPopup(FSTR_P const line1, FSTR_P const line2, FSTR_P const line3, uint8_t mode, uint8_t icon=0); + static void popupSelect(); + static void updateStatusBar(const bool refresh=false); #if HAS_MESH - static void Set_Mesh_Viewer_Status(); + static void setMeshViewerStatus(); #endif - static FSTR_P Get_Menu_Title(const uint8_t menu); - static uint8_t Get_Menu_Size(const uint8_t menu); - static void Menu_Item_Handler(const uint8_t menu, const uint8_t item, bool draw=true); - - static void Popup_Handler(const PopupID popupid, bool option=false); - static void Confirm_Handler(const PopupID popupid); - - static void Main_Menu_Control(); - static void Menu_Control(); - static void Value_Control(); - static void Option_Control(); - static void File_Control(); - static void Print_Screen_Control(); - static void Popup_Control(); - static void Confirm_Control(); - - static void Setup_Value(const_float_t value, const_float_t min, const_float_t max, const_float_t unit, const uint8_t type); - static void Modify_Value(float &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); - static void Modify_Value(uint8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); - static void Modify_Value(uint16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); - static void Modify_Value(int16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); - static void Modify_Value(uint32_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); - static void Modify_Value(int8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); - static void Modify_Option(const uint8_t value, const char * const * options, const uint8_t max); - - static void Update_Status(const char * const text); - static void Start_Print(const bool sd); - static void Stop_Print(); - static void Update(); - static void State_Update(); - static void Screen_Update(); - static void AudioFeedback(const bool success=true); - static void Save_Settings(char * const buff); - static void Load_Settings(const char * const buff); - static void Reset_Settings(); + static FSTR_P getMenuTitle(const uint8_t menu); + static uint8_t getMenuSize(const uint8_t menu); + static void menuItemHandler(const uint8_t menu, const uint8_t item, bool draw=true); + + static void popupHandler(const PopupID popupid, bool option=false); + static void confirmHandler(const PopupID popupid); + + static void mainMenuControl(); + static void menuControl(); + static void valueControl(); + static void optionControl(); + static void fileControl(); + static void printScreenControl(); + static void popupControl(); + static void confirmControl(); + + static void setupValue(const_float_t value, const_float_t min, const_float_t max, const_float_t unit, const uint8_t type); + static void modifyValue(float &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); + static void modifyValue(uint8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); + static void modifyValue(uint16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); + static void modifyValue(int16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); + static void modifyValue(uint32_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); + static void modifyValue(int8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()=nullptr); + static void modifyOption(const uint8_t value, const char * const * options, const uint8_t max); + + static void updateStatus(const char * const text); + static void startPrint(const bool sd); + static void stopPrint(); + static void update(); + static void stateUpdate(); + static void screenUpdate(); + static void audioFeedback(const bool success=true); + static void saveSettings(char * const buff); + static void loadSettings(const char * const buff); + static void resetSettings(); }; -extern CrealityDWINClass CrealityDWIN; +extern CrealityDWIN crealityDWIN; diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin_lcd.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin_lcd.cpp index 04889e92b038..96518b8c2100 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin_lcd.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin_lcd.cpp @@ -33,22 +33,22 @@ /*-------------------------------------- System variable function --------------------------------------*/ -void DWIN_Startup() {} +void dwinStartup() {} /*---------------------------------------- Drawing functions ----------------------------------------*/ // Draw the degree (°) symbol -// Color: color +// color: color // x/y: Upper-left coordinate of the first pixel -void DWIN_Draw_DegreeSymbol(uint16_t Color, uint16_t x, uint16_t y) { - DWIN_Draw_Point(Color, 1, 1, x + 1, y); - DWIN_Draw_Point(Color, 1, 1, x + 2, y); - DWIN_Draw_Point(Color, 1, 1, x, y + 1); - DWIN_Draw_Point(Color, 1, 1, x + 3, y + 1); - DWIN_Draw_Point(Color, 1, 1, x, y + 2); - DWIN_Draw_Point(Color, 1, 1, x + 3, y + 2); - DWIN_Draw_Point(Color, 1, 1, x + 1, y + 3); - DWIN_Draw_Point(Color, 1, 1, x + 2, y + 3); +void dwinDrawDegreeSymbol(uint16_t color, uint16_t x, uint16_t y) { + dwinDrawPoint(color, 1, 1, x + 1, y); + dwinDrawPoint(color, 1, 1, x + 2, y); + dwinDrawPoint(color, 1, 1, x, y + 1); + dwinDrawPoint(color, 1, 1, x + 3, y + 1); + dwinDrawPoint(color, 1, 1, x, y + 2); + dwinDrawPoint(color, 1, 1, x + 3, y + 2); + dwinDrawPoint(color, 1, 1, x + 1, y + 3); + dwinDrawPoint(color, 1, 1, x + 2, y + 3); } /*---------------------------------------- Picture related functions ----------------------------------------*/ @@ -57,8 +57,8 @@ void DWIN_Draw_DegreeSymbol(uint16_t Color, uint16_t x, uint16_t y) { // libID: Icon library ID // picID: Icon ID // x/y: Upper-left point -void DWIN_ICON_Show(uint8_t libID, uint8_t picID, uint16_t x, uint16_t y) { - DWIN_ICON_Show(true, false, false, libID, picID, x, y); +void dwinIconShow(uint8_t libID, uint8_t picID, uint16_t x, uint16_t y) { + dwinIconShow(true, false, false, libID, picID, x, y); } #endif // DWIN_CREALITY_LCD_JYERSUI diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin_lcd.h b/Marlin/src/lcd/e3v2/jyersui/dwin_lcd.h index f76cfb5d3e5f..a9335a4f23f1 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin_lcd.h +++ b/Marlin/src/lcd/e3v2/jyersui/dwin_lcd.h @@ -29,6 +29,6 @@ #include "../common/dwin_api.h" // Draw the degree (°) symbol -// Color: color +// color: color // x/y: Upper-left coordinate of the first pixel -void DWIN_Draw_DegreeSymbol(uint16_t Color, uint16_t x, uint16_t y); +void dwinDrawDegreeSymbol(uint16_t color, uint16_t x, uint16_t y); diff --git a/Marlin/src/lcd/e3v2/marlinui/dwin_lcd.cpp b/Marlin/src/lcd/e3v2/marlinui/dwin_lcd.cpp index 7154270bffc6..b6c26d4fe1ae 100644 --- a/Marlin/src/lcd/e3v2/marlinui/dwin_lcd.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/dwin_lcd.cpp @@ -39,15 +39,15 @@ /*-------------------------------------- System variable function --------------------------------------*/ -void DWIN_Startup() { +void dwinStartup() { DEBUG_ECHOPGM("\r\nDWIN handshake "); delay(750); // Delay here or init later in the boot process - const bool success = DWIN_Handshake(); + const bool success = dwinHandshake(); if (success) DEBUG_ECHOLNPGM("ok."); else DEBUG_ECHOLNPGM("error."); - DWIN_Frame_SetDir(TERN(DWIN_MARLINUI_LANDSCAPE, 0, 1)); - DWIN_Frame_Clear(Color_Bg_Black); // MarlinUI handles the bootscreen so just clear here - DWIN_JPG_ShowAndCache(3); - DWIN_UpdateLCD(); + dwinFrameSetDir(TERN(DWIN_MARLINUI_LANDSCAPE, 0, 1)); + dwinFrameClear(Color_Bg_Black); // MarlinUI handles the bootscreen so just clear here + dwinJPGShowAndCache(3); + dwinUpdateLCD(); } /*---------------------------------------- Picture related functions ----------------------------------------*/ @@ -56,8 +56,8 @@ void DWIN_Startup() { // libID: Icon library ID // picID: Icon ID // x/y: Upper-left point -void DWIN_ICON_Show(uint8_t libID, uint8_t picID, uint16_t x, uint16_t y) { - DWIN_ICON_Show(true, false, false, libID, picID, x, y); +void dwinIconShow(uint8_t libID, uint8_t picID, uint16_t x, uint16_t y) { + dwinIconShow(true, false, false, libID, picID, x, y); } #endif // IS_DWIN_MARLINUI diff --git a/Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp b/Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp index 10a478f75650..7830d5a37cd2 100644 --- a/Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/dwin_string.cpp @@ -133,7 +133,7 @@ void DWIN_String::add_character(const char character) { if (length < MAX_STRING_LENGTH) { data[length] = character; length++; - //span += glyph(character)->DWidth; + //span += glyph(character)->dWidth; } } @@ -141,7 +141,7 @@ void DWIN_String::rtrim(const char character) { while (length) { if (data[length - 1] == 0x20 || data[length - 1] == character) { length--; - //span -= glyph(data[length])->DWidth; + //span -= glyph(data[length])->dWidth; eol(); } else @@ -152,7 +152,7 @@ void DWIN_String::rtrim(const char character) { void DWIN_String::ltrim(const char character) { uint16_t i, j; for (i = 0; (i < length) && (data[i] == 0x20 || data[i] == character); i++) { - //span -= glyph(data[i])->DWidth; + //span -= glyph(data[i])->dWidth; } if (i == 0) return; for (j = 0; i < length; data[j++] = data[i++]); diff --git a/Marlin/src/lcd/e3v2/marlinui/dwin_string.h b/Marlin/src/lcd/e3v2/marlinui/dwin_string.h index 4224b264589b..5d3813101455 100644 --- a/Marlin/src/lcd/e3v2/marlinui/dwin_string.h +++ b/Marlin/src/lcd/e3v2/marlinui/dwin_string.h @@ -55,7 +55,7 @@ class DWIN_String { //static void add_glyphs(const uint8_t *font); //static font_t *font() { return font_header; }; - //static uint16_t font_height() { return font_header->FontAscent - font_header->FontDescent; } + //static uint16_t font_height() { return font_header->fontAscent - font_header->fontDescent; } //static glyph_t *glyph(uint8_t character) { return glyphs[character] ?: glyphs[0x3F]; } /* Use '?' for unknown glyphs */ //static glyph_t *glyph(uint8_t *character) { return glyph(*character); } diff --git a/Marlin/src/lcd/e3v2/marlinui/lcdprint_dwin.cpp b/Marlin/src/lcd/e3v2/marlinui/lcdprint_dwin.cpp index e603882e0cfd..f689a6ff698d 100644 --- a/Marlin/src/lcd/e3v2/marlinui/lcdprint_dwin.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/lcdprint_dwin.cpp @@ -56,7 +56,7 @@ void lcd_put_int(const int i) { } int lcd_put_dwin_string() { - DWIN_Draw_String(dwin_font.solid, dwin_font.index, dwin_font.fg, dwin_font.bg, cursor.x, cursor.y, dwin_string.string()); + dwinDrawString(dwin_font.solid, dwin_font.index, dwin_font.fg, dwin_font.bg, cursor.x, cursor.y, dwin_string.string()); lcd_advance_cursor(dwin_string.length); return dwin_string.length; } @@ -67,7 +67,7 @@ int lcd_put_lchar_max(const lchar_t &c, const pixel_len_t max_length) { dwin_string.set(c); dwin_string.truncate(max_length); // Draw the char(s) at the cursor and advance the cursor - DWIN_Draw_String(dwin_font.solid, dwin_font.index, dwin_font.fg, dwin_font.bg, cursor.x, cursor.y, dwin_string.string()); + dwinDrawString(dwin_font.solid, dwin_font.index, dwin_font.fg, dwin_font.bg, cursor.x, cursor.y, dwin_string.string()); lcd_advance_cursor(dwin_string.length); return dwin_string.length; } @@ -92,7 +92,7 @@ static int lcd_put_u8str_max_cb(const char * utf8_str, read_byte_cb_t cb_read_by if (!wc) break; dwin_string.add(wc); } - DWIN_Draw_String(dwin_font.solid, dwin_font.index, dwin_font.fg, dwin_font.bg, cursor.x, cursor.y, dwin_string.string()); + dwinDrawString(dwin_font.solid, dwin_font.index, dwin_font.fg, dwin_font.bg, cursor.x, cursor.y, dwin_string.string()); lcd_advance_cursor(dwin_string.length); return dwin_string.length; } @@ -108,7 +108,7 @@ int lcd_put_u8str_max_P(PGM_P utf8_pstr, const pixel_len_t max_length) { lcd_uint_t lcd_put_u8str_P(PGM_P const ptpl, const int8_t ind, const char * const cstr/*=nullptr*/, FSTR_P const fstr/*=nullptr*/, const lcd_uint_t maxlen/*=LCD_WIDTH*/) { dwin_string.set(ptpl, ind, cstr, fstr); dwin_string.truncate(maxlen); - DWIN_Draw_String(dwin_font.solid, dwin_font.index, dwin_font.fg, dwin_font.bg, cursor.x, cursor.y, dwin_string.string()); + dwinDrawString(dwin_font.solid, dwin_font.index, dwin_font.fg, dwin_font.bg, cursor.x, cursor.y, dwin_string.string()); lcd_advance_cursor(dwin_string.length); return dwin_string.length; } diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp index 5d6e238fe1d2..817699fd8a97 100644 --- a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp @@ -78,14 +78,14 @@ void MarlinUI::set_font(const uint8_t font_nr) { bool MarlinUI::detected() { return true; } // Initialize or re-initialize the LCD -void MarlinUI::init_lcd() { DWIN_Startup(); } +void MarlinUI::init_lcd() { dwinStartup(); } // This LCD should clear where it will draw anew void MarlinUI::clear_lcd() { - DWIN_ICON_AnimationControl(0x0000); // disable all icon animations - DWIN_JPG_ShowAndCache(3); - DWIN_Frame_Clear(Color_Bg_Black); - DWIN_UpdateLCD(); + dwinIconAnimationControl(0x0000); // disable all icon animations + dwinJPGShowAndCache(3); + dwinFrameClear(Color_Bg_Black); + dwinUpdateLCD(); did_first_redraw = false; } @@ -109,25 +109,25 @@ void MarlinUI::clear_lcd() { #define VERSION_Y 84 #endif - DWIN_Draw_String(false, font10x20, Color_Yellow, Color_Bg_Black, INFO_CENTER - (dwin_string.length * 10) / 2, VERSION_Y, S(dwin_string.string())); + dwinDrawString(false, font10x20, Color_Yellow, Color_Bg_Black, INFO_CENTER - (dwin_string.length * 10) / 2, VERSION_Y, S(dwin_string.string())); TERN_(SHOW_CUSTOM_BOOTSCREEN, safe_delay(CUSTOM_BOOTSCREEN_TIMEOUT)); clear_lcd(); - DWIN_ICON_Show(BOOT_ICON, ICON_MarlinBoot, LOGO_CENTER - 266 / 2, 15); + dwinIconShow(BOOT_ICON, ICON_MarlinBoot, LOGO_CENTER - 266 / 2, 15); #if ENABLED(DWIN_MARLINUI_PORTRAIT) - DWIN_ICON_Show(BOOT_ICON, ICON_OpenSource, LOGO_CENTER - 174 / 2, 280); - DWIN_ICON_Show(BOOT_ICON, ICON_GitHubURL, LOGO_CENTER - 180 / 2, 420); - DWIN_ICON_Show(BOOT_ICON, ICON_MarlinURL, LOGO_CENTER - 100 / 2, 440); - DWIN_ICON_Show(BOOT_ICON, ICON_Copyright, LOGO_CENTER - 126 / 2, 460); + dwinIconShow(BOOT_ICON, ICON_OpenSource, LOGO_CENTER - 174 / 2, 280); + dwinIconShow(BOOT_ICON, ICON_GitHubURL, LOGO_CENTER - 180 / 2, 420); + dwinIconShow(BOOT_ICON, ICON_MarlinURL, LOGO_CENTER - 100 / 2, 440); + dwinIconShow(BOOT_ICON, ICON_Copyright, LOGO_CENTER - 126 / 2, 460); #else - DWIN_ICON_Show(BOOT_ICON, ICON_MarlinBoot, LOGO_CENTER - 266 / 2, 15); - DWIN_ICON_Show(BOOT_ICON, ICON_OpenSource, INFO_CENTER - 174 / 2, 60); - DWIN_ICON_Show(BOOT_ICON, ICON_GitHubURL, INFO_CENTER - 180 / 2, 130); - DWIN_ICON_Show(BOOT_ICON, ICON_MarlinURL, INFO_CENTER - 100 / 2, 152); - DWIN_ICON_Show(BOOT_ICON, ICON_Copyright, INFO_CENTER - 126 / 2, 200); + dwinIconShow(BOOT_ICON, ICON_MarlinBoot, LOGO_CENTER - 266 / 2, 15); + dwinIconShow(BOOT_ICON, ICON_OpenSource, INFO_CENTER - 174 / 2, 60); + dwinIconShow(BOOT_ICON, ICON_GitHubURL, INFO_CENTER - 180 / 2, 130); + dwinIconShow(BOOT_ICON, ICON_MarlinURL, INFO_CENTER - 100 / 2, 152); + dwinIconShow(BOOT_ICON, ICON_Copyright, INFO_CENTER - 126 / 2, 200); #endif - DWIN_Draw_String(false, font10x20, Color_Yellow, Color_Bg_Black, INFO_CENTER - (dwin_string.length * 10) / 2, VERSION_Y, S(dwin_string.string())); - DWIN_UpdateLCD(); + dwinDrawString(false, font10x20, Color_Yellow, Color_Bg_Black, INFO_CENTER - (dwin_string.length * 10) / 2, VERSION_Y, S(dwin_string.string())); + dwinUpdateLCD(); } void MarlinUI::bootscreen_completion(const millis_t sofar) { @@ -140,23 +140,23 @@ void MarlinUI::clear_lcd() { // The kill screen is displayed for unrecoverable conditions void MarlinUI::draw_kill_screen() { set_font(DWIN_FONT_ALERT); - DWIN_Frame_Clear(Color_Bg_Black); + dwinFrameClear(Color_Bg_Black); dwin_font.fg = Color_Error_Red; dwin_font.solid = false; - DWIN_Draw_Rectangle(1, Color_Bg_Window, 20, 20, LCD_PIXEL_WIDTH - 20, LCD_PIXEL_HEIGHT - 20); + dwinDrawRectangle(1, Color_Bg_Window, 20, 20, LCD_PIXEL_WIDTH - 20, LCD_PIXEL_HEIGHT - 20); // make the frame a few pixels thick - DWIN_Draw_Rectangle(0, Color_Yellow, 20, 20, LCD_PIXEL_WIDTH - 20, LCD_PIXEL_HEIGHT - 20); - DWIN_Draw_Rectangle(0, Color_Yellow, 21, 21, LCD_PIXEL_WIDTH - 21, LCD_PIXEL_HEIGHT - 21); - DWIN_Draw_Rectangle(0, Color_Yellow, 22, 22, LCD_PIXEL_WIDTH - 22, LCD_PIXEL_HEIGHT - 22); + dwinDrawRectangle(0, Color_Yellow, 20, 20, LCD_PIXEL_WIDTH - 20, LCD_PIXEL_HEIGHT - 20); + dwinDrawRectangle(0, Color_Yellow, 21, 21, LCD_PIXEL_WIDTH - 21, LCD_PIXEL_HEIGHT - 21); + dwinDrawRectangle(0, Color_Yellow, 22, 22, LCD_PIXEL_WIDTH - 22, LCD_PIXEL_HEIGHT - 22); uint8_t cx = (LCD_PIXEL_WIDTH / dwin_font.width / 2), cy = (LCD_PIXEL_HEIGHT / dwin_font.height / 2); #if ENABLED(DWIN_MARLINUI_LANDSCAPE) cx += (96 / 2 / dwin_font.width); - DWIN_ICON_Show(ICON, ICON_Halted, 40, (LCD_PIXEL_HEIGHT - 96) / 2); + dwinIconShow(ICON, ICON_Halted, 40, (LCD_PIXEL_HEIGHT - 96) / 2); #else - DWIN_ICON_Show(ICON, ICON_Halted, (LCD_PIXEL_WIDTH - 96) / 2, 40); + dwinIconShow(ICON, ICON_Halted, (LCD_PIXEL_WIDTH - 96) / 2, 40); #endif uint8_t slen = utf8_strlen(status_message); @@ -260,7 +260,7 @@ void MarlinUI::draw_status_message(const bool blink) { } #if HAS_LCD_BRIGHTNESS - void MarlinUI::_set_brightness() { DWIN_LCD_Brightness(backlight ? brightness : 0); } + void MarlinUI::_set_brightness() { dwinLCDBrightness(backlight ? brightness : 0); } #endif #if HAS_MARLINUI_MENU @@ -295,13 +295,13 @@ void MarlinUI::draw_status_message(const bool blink) { if (y >= LCD_PIXEL_HEIGHT) return false; if (is_static && sel) - DWIN_Draw_Box(1, Color_Bg_Heading, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); + dwinDrawBox(1, Color_Bg_Heading, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); else { #if ENABLED(MENU_HOLLOW_FRAME) - DWIN_Draw_Box(1, Color_Bg_Black, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); - if (sel) DWIN_Draw_Box(0, Select_Color, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); + dwinDrawBox(1, Color_Bg_Black, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); + if (sel) dwinDrawBox(0, Select_Color, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); #else - DWIN_Draw_Box(1, sel ? Select_Color : Color_Bg_Black, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); + dwinDrawBox(1, sel ? Select_Color : Color_Bg_Black, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); #endif } @@ -425,7 +425,7 @@ void MarlinUI::draw_status_message(const bool blink) { dwin_string.set(value); const dwin_coord_t by = (row * MENU_LINE_HEIGHT) + MENU_FONT_HEIGHT + EXTRA_ROW_HEIGHT / 2; - DWIN_Draw_String(true, font16x32, Color_Yellow, Color_Bg_Black, (LCD_PIXEL_WIDTH - vallen * 16) / 2, by, S(dwin_string.string())); + dwinDrawString(true, font16x32, Color_Yellow, Color_Bg_Black, (LCD_PIXEL_WIDTH - vallen * 16) / 2, by, S(dwin_string.string())); if (ui.can_show_slider()) { @@ -435,11 +435,11 @@ void MarlinUI::draw_status_message(const bool blink) { slider_y = by + 32 + 4, amount = ui.encoderPosition * slider_length / maxEditValue; - DWIN_Draw_Rectangle(1, Color_Bg_Window, slider_x - 1, slider_y - 1, slider_x - 1 + slider_length + 2 - 1, slider_y - 1 + slider_height + 2 - 1); + dwinDrawRectangle(1, Color_Bg_Window, slider_x - 1, slider_y - 1, slider_x - 1 + slider_length + 2 - 1, slider_y - 1 + slider_height + 2 - 1); if (amount > 0) - DWIN_Draw_Box(1, BarFill_Color, slider_x, slider_y, amount, slider_height); + dwinDrawBox(1, BarFill_Color, slider_x, slider_y, amount, slider_height); if (amount < slider_length) - DWIN_Draw_Box(1, Color_Bg_Black, slider_x + amount, slider_y, slider_length - amount, slider_height); + dwinDrawBox(1, Color_Bg_Black, slider_x + amount, slider_y, slider_length - amount, slider_height); } } } @@ -450,7 +450,7 @@ void MarlinUI::draw_status_message(const bool blink) { col = yesopt ? LCD_WIDTH - mar - len : mar, row = (LCD_HEIGHT >= 8 ? LCD_HEIGHT / 2 + 3 : LCD_HEIGHT - 1); lcd_moveto(col, row); - DWIN_Draw_Box(1, inv ? Select_Color : Color_Bg_Black, cursor.x - dwin_font.width, cursor.y + 1, dwin_font.width * (len + 2), dwin_font.height + 2); + dwinDrawBox(1, inv ? Select_Color : Color_Bg_Black, cursor.x - dwin_font.width, cursor.y + 1, dwin_font.width * (len + 2), dwin_font.height + 2); lcd_put_u8str(col, row, fstr); } @@ -512,9 +512,9 @@ void MarlinUI::draw_status_message(const bool blink) { // Clear the Mesh Map // First draw the bigger box in White so we have a border around the mesh map box - DWIN_Draw_Rectangle(1, Color_White, x_offset - 2, y_offset - 2, x_offset + 2 + x_map_pixels, y_offset + 2 + y_map_pixels); + dwinDrawRectangle(1, Color_White, x_offset - 2, y_offset - 2, x_offset + 2 + x_map_pixels, y_offset + 2 + y_map_pixels); // Now actually clear the mesh map box - DWIN_Draw_Rectangle(1, Color_Bg_Black, x_offset, y_offset, x_offset + x_map_pixels, y_offset + y_map_pixels); + dwinDrawRectangle(1, Color_Bg_Black, x_offset, y_offset, x_offset + x_map_pixels, y_offset + y_map_pixels); // Fill in the Specified Mesh Point @@ -522,7 +522,7 @@ void MarlinUI::draw_status_message(const bool blink) { // invert the Y to get it to plot in the right location. const dwin_coord_t by = y_offset + y_plot_inv * pixels_per_y_mesh_pnt; - DWIN_Draw_Rectangle(1, Select_Color, + dwinDrawRectangle(1, Select_Color, x_offset + (x_plot * pixels_per_x_mesh_pnt), by, x_offset + (x_plot * pixels_per_x_mesh_pnt) + pixels_per_x_mesh_pnt, by + pixels_per_y_mesh_pnt ); @@ -532,7 +532,7 @@ void MarlinUI::draw_status_message(const bool blink) { dwin_coord_t y = y_offset + pixels_per_y_mesh_pnt / 2; for (uint8_t j = 0; j < (GRID_MAX_POINTS_Y); j++, y += pixels_per_y_mesh_pnt) for (uint8_t i = 0, x = sx; i < (GRID_MAX_POINTS_X); i++, x += pixels_per_x_mesh_pnt) - DWIN_Draw_Point(Color_White, 1, 1, x, y); + dwinDrawPoint(Color_White, 1, 1, x, y); // Put Relevant Text on Display @@ -591,17 +591,17 @@ void MarlinUI::draw_status_message(const bool blink) { const int nozzle = (LCD_PIXEL_WIDTH / 2) - 20; // Draw a representation of the nozzle - DWIN_Draw_Box(1, Color_Bg_Black, nozzle + 3, 8, 48, 52); // 'clear' the area where the nozzle is drawn in case it was moved up/down - DWIN_ICON_Show(ICON, ICON_HotendOff, nozzle + 3, 10 - dir); - DWIN_ICON_Show(ICON, ICON_BedLine, nozzle, 10 + 36); + dwinDrawBox(1, Color_Bg_Black, nozzle + 3, 8, 48, 52); // 'clear' the area where the nozzle is drawn in case it was moved up/down + dwinIconShow(ICON, ICON_HotendOff, nozzle + 3, 10 - dir); + dwinIconShow(ICON, ICON_BedLine, nozzle, 10 + 36); // Draw cw/ccw indicator and up/down arrows const int arrow_y = LCD_PIXEL_HEIGHT / 2 - 24; - DWIN_ICON_Show(ICON, ICON_DownArrow, 0, arrow_y - dir); - DWIN_ICON_Show(ICON, rot_down, 48, arrow_y); + dwinIconShow(ICON, ICON_DownArrow, 0, arrow_y - dir); + dwinIconShow(ICON, rot_down, 48, arrow_y); - DWIN_ICON_Show(ICON, ICON_UpArrow, LCD_PIXEL_WIDTH - 10 - (48*2), arrow_y - dir); - DWIN_ICON_Show(ICON, rot_up, LCD_PIXEL_WIDTH - 10 - 48, arrow_y); + dwinIconShow(ICON, ICON_UpArrow, LCD_PIXEL_WIDTH - 10 - (48*2), arrow_y - dir); + dwinIconShow(ICON, rot_up, LCD_PIXEL_WIDTH - 10 - 48, arrow_y); } #endif // BABYSTEP_GFX_OVERLAY || MESH_EDIT_GFX_OVERLAY diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp index b66750bd8812..381aea6b17da 100644 --- a/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp @@ -72,7 +72,7 @@ void _draw_axis_value(const AxisEnum axis, const char *value, const bool blink, const bool x_redraw = !ui.did_first_redraw || old_is_printing != print_job_timer.isRunning(); if (x_redraw) { dwin_string.set('X' + axis); - DWIN_Draw_String(true, font16x32, Color_IconBlue, Color_Bg_Black, + dwinDrawString(true, font16x32, Color_IconBlue, Color_Bg_Black, #if ENABLED(DWIN_MARLINUI_PORTRAIT) x + (utf8_strlen(value) * 14 - 14) / 2, y + 2 #else @@ -96,7 +96,7 @@ void _draw_axis_value(const AxisEnum axis, const char *value, const bool blink, if (TERN0(LCD_SHOW_E_TOTAL, x_redraw && axis == X_AXIS)) dwin_string.add(F(" ")); - DWIN_Draw_String(true, font14x28, Color_White, Color_Bg_Black, + dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, #if ENABLED(DWIN_MARLINUI_PORTRAIT) x, y + 32 #else @@ -117,26 +117,26 @@ void _draw_axis_value(const AxisEnum axis, const char *value, const bool blink, if (e_redraw) { // Extra spaces to erase previous value dwin_string.set(F("E ")); - DWIN_Draw_String(true, font16x32, Color_IconBlue, Color_Bg_Black, x + (4 * 14 / 2) - 7, y + 2, S(dwin_string.string())); + dwinDrawString(true, font16x32, Color_IconBlue, Color_Bg_Black, x + (4 * 14 / 2) - 7, y + 2, S(dwin_string.string())); } dwin_string.set(ui16tostr5rj(value / scale)); - DWIN_Draw_String(true, font14x28, Color_White, Color_Bg_Black, x, y + 32, S(dwin_string.string())); + dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, x, y + 32, S(dwin_string.string())); // Extra spaces to erase previous value - DWIN_Draw_String(true, font14x28, Color_IconBlue, Color_Bg_Black, x + (5 * 14), y + 32, S(scale == 1 ? "mm " : "cm ")); + dwinDrawString(true, font14x28, Color_IconBlue, Color_Bg_Black, x + (5 * 14), y + 32, S(scale == 1 ? "mm " : "cm ")); #else // !DWIN_MARLINUI_PORTRAIT if (e_redraw) { dwin_string.set(F("E ")); - DWIN_Draw_String(true, font16x32, Color_IconBlue, Color_Bg_Black, x, y, S(dwin_string.string())); + dwinDrawString(true, font16x32, Color_IconBlue, Color_Bg_Black, x, y, S(dwin_string.string())); } dwin_string.set(ui16tostr5rj(value / scale)); - DWIN_Draw_String(true, font14x28, Color_White, Color_Bg_Black, x + 32, y + 4, S(dwin_string.string())); + dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, x + 32, y + 4, S(dwin_string.string())); - DWIN_Draw_String(true, font14x28, Color_IconBlue, Color_Bg_Black, x + (32 + 70), y + 4, S(scale == 1 ? "mm " : "cm ")); + dwinDrawString(true, font14x28, Color_IconBlue, Color_Bg_Black, x + (32 + 70), y + 4, S(scale == 1 ? "mm " : "cm ")); #endif // !DWIN_MARLINUI_PORTRAIT } @@ -151,16 +151,16 @@ void _draw_axis_value(const AxisEnum axis, const char *value, const bool blink, const uint16_t fanx = (4 * STATUS_CHR_WIDTH - STATUS_FAN_WIDTH) / 2; const bool fan_on = !!thermalManager.scaledFanSpeed(0); if (fan_on) { - DWIN_ICON_Animation(0, fan_on, ICON, ICON_Fan0, ICON_Fan3, x + fanx, y, 25); + dwinIconAnimation(0, fan_on, ICON, ICON_Fan0, ICON_Fan3, x + fanx, y, 25); dwin_string.set(i8tostr3rj(thermalManager.scaledFanSpeedPercent(0))); dwin_string.add('%'); - DWIN_Draw_String(true, font14x28, Color_White, Color_Bg_Black, x, y + STATUS_FAN_HEIGHT, S(dwin_string.string())); + dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, x, y + STATUS_FAN_HEIGHT, S(dwin_string.string())); } else { - DWIN_ICON_AnimationControl(0x0000); // disable all icon animations (this is the only one) - DWIN_ICON_Show(ICON, ICON_Fan0, x + fanx, y); + dwinIconAnimationControl(0x0000); // disable all icon animations (this is the only one) + dwinIconShow(ICON, ICON_Fan0, x + fanx, y); dwin_string.set(F(" ")); - DWIN_Draw_String(true, font14x28, Color_White, Color_Bg_Black, x, y + STATUS_FAN_HEIGHT, S(dwin_string.string())); + dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, x, y + STATUS_FAN_HEIGHT, S(dwin_string.string())); } } #endif @@ -230,20 +230,20 @@ FORCE_INLINE void _draw_heater_status(const heater_id_t heater, const uint16_t x if (t_draw) { dwin_string.set(i16tostr3rj(tt + 0.5)); dwin_string.add(LCD_STR_DEGREE); - DWIN_Draw_String(true, font14x28, Color_White, Color_Bg_Black, x, y, S(dwin_string.string())); + dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, x, y, S(dwin_string.string())); } // Draw heater icon with on / off / leveled states if (i_draw) { const uint8_t ico = isBed ? (TERN0(HAS_LEVELING, planner.leveling_active) ? ICON_BedLevelOff : ICON_BedOff) : ICON_HotendOff; - DWIN_ICON_Show(ICON, ico + ta, x, y + STATUS_CHR_HEIGHT + 2); + dwinIconShow(ICON, ico + ta, x, y + STATUS_CHR_HEIGHT + 2); } // Draw current temperature, if needed if (c_draw) { dwin_string.set(i16tostr3rj(tc + 0.5)); dwin_string.add(LCD_STR_DEGREE); - DWIN_Draw_String(true, font14x28, Color_White, Color_Bg_Black, x, y + 70, S(dwin_string.string())); + dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, x, y + 70, S(dwin_string.string())); } } @@ -253,12 +253,12 @@ FORCE_INLINE void _draw_heater_status(const heater_id_t heater, const uint16_t x FORCE_INLINE void _draw_feedrate_status(const char *value, uint16_t x, uint16_t y) { if (!ui.did_first_redraw) { dwin_string.set(LCD_STR_FEEDRATE); - DWIN_Draw_String(true, font14x28, Color_IconBlue, Color_Bg_Black, x, y, S(dwin_string.string())); + dwinDrawString(true, font14x28, Color_IconBlue, Color_Bg_Black, x, y, S(dwin_string.string())); } dwin_string.set(value); dwin_string.add('%'); - DWIN_Draw_String(true, font14x28, Color_White, Color_Bg_Black, x + 14, y, S(dwin_string.string())); + dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, x + 14, y, S(dwin_string.string())); } /** @@ -272,7 +272,7 @@ void MarlinUI::draw_status_screen() { // Logo/Status Icon #define STATUS_LOGO_WIDTH 128 #define STATUS_LOGO_HEIGHT 40 - DWIN_ICON_Show(ICON, ICON_LOGO_Marlin, + dwinIconShow(ICON, ICON_LOGO_Marlin, #if ENABLED(DWIN_MARLINUI_PORTRAIT) (LCD_PIXEL_WIDTH - (STATUS_LOGO_WIDTH)) / 2, ((STATUS_HEATERS_Y - 4) - (STATUS_LOGO_HEIGHT)) / 2 #else @@ -281,7 +281,7 @@ void MarlinUI::draw_status_screen() { ); // Draw a frame around the x/y/z values - DWIN_Draw_Rectangle(0, Select_Color, + dwinDrawRectangle(0, Select_Color, #if ENABLED(DWIN_MARLINUI_PORTRAIT) 0, 193, LCD_PIXEL_WIDTH - 1, 260 #else @@ -358,7 +358,7 @@ void MarlinUI::draw_status_screen() { time.toDigital(buffer); dwin_string.add(prefix); dwin_string.add(buffer); - DWIN_Draw_String(true, font14x28, Color_White, Color_Bg_Black, (LCD_PIXEL_WIDTH - ((dwin_string.length + 1) * 14)), 290, S(dwin_string.string())); + dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, (LCD_PIXEL_WIDTH - ((dwin_string.length + 1) * 14)), 290, S(dwin_string.string())); #else @@ -367,23 +367,23 @@ void MarlinUI::draw_status_screen() { time.toDigital(buffer); dwin_string.set(' '); dwin_string.add(buffer); - DWIN_Draw_String(true, font14x28, Color_White, Color_Bg_Black, 230, 170, S(dwin_string.string())); + dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, 230, 170, S(dwin_string.string())); #if ENABLED(SHOW_REMAINING_TIME) if (print_job_timer.isRunning()) { time = get_remaining_time(); - DWIN_Draw_String(true, font14x28, Color_IconBlue, Color_Bg_Black, 336, 170, S(" R ")); + dwinDrawString(true, font14x28, Color_IconBlue, Color_Bg_Black, 336, 170, S(" R ")); if (print_job_timer.isPaused() && blink) dwin_string.set(F(" ")); else { time.toDigital(buffer); dwin_string.set(buffer); } - DWIN_Draw_String(true, font14x28, Color_White, Color_Bg_Black, 378, 170, S(dwin_string.string())); + dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, 378, 170, S(dwin_string.string())); } else if (!ui.did_first_redraw || old_is_printing != print_job_timer.isRunning()) { dwin_string.set(F(" ")); - DWIN_Draw_String(true, font14x28, Color_IconBlue, Color_Bg_Black, 336, 170, S(dwin_string.string())); + dwinDrawString(true, font14x28, Color_IconBlue, Color_Bg_Black, 336, 170, S(dwin_string.string())); } #endif #endif @@ -403,7 +403,7 @@ void MarlinUI::draw_status_screen() { const progress_t progress = TERN(HAS_PRINT_PROGRESS_PERMYRIAD, get_progress_permyriad, get_progress_percent)(); if (!ui.did_first_redraw) - DWIN_Draw_Rectangle(0, Select_Color, pb_left, pb_top, pb_right, pb_bottom); // Outline + dwinDrawRectangle(0, Select_Color, pb_left, pb_top, pb_right, pb_bottom); // Outline static uint16_t old_solid = 50; const uint16_t pb_solid = (pb_width - 2) * (progress / (PROGRESS_SCALE)) * 0.01f; @@ -411,15 +411,15 @@ void MarlinUI::draw_status_screen() { if (p_draw) { //if (pb_solid) - DWIN_Draw_Rectangle(1, Select_Color, pb_left + 1, pb_top + 1, pb_left + pb_solid, pb_bottom - 1); // Fill the solid part + dwinDrawRectangle(1, Select_Color, pb_left + 1, pb_top + 1, pb_left + pb_solid, pb_bottom - 1); // Fill the solid part //if (pb_solid < old_solid) - DWIN_Draw_Rectangle(1, Color_Bg_Black, pb_left + 1 + pb_solid, pb_top + 1, pb_right - 1, pb_bottom - 1); // Erase the rest + dwinDrawRectangle(1, Color_Bg_Black, pb_left + 1 + pb_solid, pb_top + 1, pb_right - 1, pb_bottom - 1); // Erase the rest #if ENABLED(SHOW_PROGRESS_PERCENT) dwin_string.set(TERN(PRINT_PROGRESS_SHOW_DECIMALS, permyriadtostr4(progress), ui8tostr3rj(progress / (PROGRESS_SCALE)))); dwin_string.add('%'); - DWIN_Draw_String( + dwinDrawString( false, font16x32, Percent_Color, Color_Bg_Black, pb_left + (pb_width - dwin_string.length * 16) / 2, pb_top + (pb_height - 32) / 2 - 1, diff --git a/Marlin/src/lcd/extui/anycubic/Tunes.cpp b/Marlin/src/lcd/extui/anycubic/Tunes.cpp index 8a9e84f0001d..6e7aecefa9cb 100644 --- a/Marlin/src/lcd/extui/anycubic/Tunes.cpp +++ b/Marlin/src/lcd/extui/anycubic/Tunes.cpp @@ -39,7 +39,7 @@ namespace Anycubic { - void PlayTune(const uint16_t *tune, const uint8_t speed/*=1*/) { + void playTune(const uint16_t *tune, const uint8_t speed/*=1*/) { const uint16_t wholenotelen = tune[0] / speed; for (uint8_t pos = 1; pos < MAX_TUNE_LENGTH; pos += 2) { const uint16_t freq = tune[pos]; diff --git a/Marlin/src/lcd/extui/anycubic/Tunes.h b/Marlin/src/lcd/extui/anycubic/Tunes.h index 8b99f1f863e9..73483a9bdd9c 100644 --- a/Marlin/src/lcd/extui/anycubic/Tunes.h +++ b/Marlin/src/lcd/extui/anycubic/Tunes.h @@ -61,7 +61,7 @@ n_END=10000 // end of tune marker namespace Anycubic { - void PlayTune(const uint16_t *tune, const uint8_t speed=1); + void playTune(const uint16_t *tune, const uint8_t speed=1); // Only uncomment the tunes you are using to save memory // This will help you write tunes! diff --git a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp index 7d44e63537b4..6c8c3aa3a5aa 100644 --- a/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp +++ b/Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp @@ -103,7 +103,7 @@ void ChironTFT::startup() { injectCommands(AC_cmnd_enable_leveling); // startup tunes are defined in Tunes.h - PlayTune(TERN(AC_DEFAULT_STARTUP_TUNE, Anycubic_PowerOn, GB_PowerOn)); + playTune(TERN(AC_DEFAULT_STARTUP_TUNE, Anycubic_PowerOn, GB_PowerOn)); #if ACDEBUGLEVEL DEBUG_ECHOLNPGM("AC Debug Level ", ACDEBUGLEVEL); @@ -191,7 +191,7 @@ void ChironTFT::filamentRunout() { // 1 Signal filament out last_error = AC_error_filament_runout; tftSendLn(isPrintingFromMedia() ? AC_msg_filament_out_alert : AC_msg_filament_out_block); - PlayTune(FilamentOut); + playTune(FilamentOut); } void ChironTFT::confirmationRequest(const char * const msg) { @@ -214,7 +214,7 @@ void ChironTFT::confirmationRequest(const char * const msg) { if (strcmp_P(msg, MARLIN_msg_heater_timeout) == 0) { pause_state = AC_paused_heater_timed_out; tftSendLn(AC_msg_paused); // enable continue button - PlayTune(HeaterTimeout); + playTune(HeaterTimeout); } // Reheat finished, send acknowledgement else if (strcmp_P(msg, MARLIN_msg_reheat_done) == 0) { @@ -252,7 +252,7 @@ void ChironTFT::statusChange(const char * const msg) { } // If probing fails don't save the mesh raise the probe above the bad point if (strcmp_P(msg, MARLIN_msg_probing_failed) == 0) { - PlayTune(BeepBeepBeeep); + playTune(BeepBeepBeeep); injectCommands(F("G1 Z50 F500")); tftSendLn(AC_msg_probing_complete); printer_state = AC_printer_idle; @@ -306,7 +306,7 @@ void ChironTFT::statusChange(const char * const msg) { void ChironTFT::powerLossRecovery() { printer_state = AC_printer_resuming_from_power_outage; // Play tune to notify user we can recover. last_error = AC_error_powerloss; - PlayTune(SOS); + playTune(SOS); SERIAL_ECHOLN(AC_msg_powerloss_recovery); } diff --git a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp index a560e5e9a078..8b073652b044 100644 --- a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp +++ b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp @@ -24,7 +24,7 @@ #if ENABLED(ANYCUBIC_LCD_I3MEGA) //#define ANYCUBIC_LCD_DEBUG -#define DEBUG_OUT ANYCUBIC_LCD_DEBUG +#define DEBUG_OUT ENABLED(ANYCUBIC_LCD_DEBUG) #include "../../../core/debug_out.h" #include "anycubic_i3mega_lcd.h" @@ -51,20 +51,19 @@ #define SPECIAL_MENU_FILENAME(A) A TERN_(ANYCUBIC_LCD_GCODE_EXT, ".gcode") #define SPECIAL_MENU_ALTNAME(A, B) TERN(ANYCUBIC_LCD_GCODE_EXT, A ".gcode", B) -AnycubicTFTClass anycubicTFT; +AnycubicTFT anycubicTFT; -char AnycubicTFTClass::tftCommands[TFTBUFSIZE][TFT_MAX_CMD_SIZE]; -int AnycubicTFTClass::tftBufLen = 0, - AnycubicTFTClass::tftBufIndR = 0, - AnycubicTFTClass::tftBufIndW = 0; -char AnycubicTFTClass::serial3_char; -char* AnycubicTFTClass::tftStrchrPtr; -uint8_t AnycubicTFTClass::specialMenu = false; -AnycubicMediaPrintState AnycubicTFTClass::mediaPrintingState = AMPRINTSTATE_NOT_PRINTING; -AnycubicMediaPauseState AnycubicTFTClass::mediaPauseState = AMPAUSESTATE_NOT_PAUSED; +char AnycubicTFT::tftCommands[TFTBUFSIZE][TFT_MAX_CMD_SIZE]; +int AnycubicTFT::tftBufLen = 0, + AnycubicTFT::tftBufIndR = 0, + AnycubicTFT::tftBufIndW = 0; +char* AnycubicTFT::tftStrchrPtr; +uint8_t AnycubicTFT::specialMenu = false; +AnycubicMediaPrintState AnycubicTFT::mediaPrintingState = AMPRINTSTATE_NOT_PRINTING; +AnycubicMediaPauseState AnycubicTFT::mediaPauseState = AMPAUSESTATE_NOT_PAUSED; -char AnycubicTFTClass::selectedDirectory[30]; -char AnycubicTFTClass::selectedFile[FILENAME_LENGTH]; +char AnycubicTFT::selectedDirectory[30]; +char AnycubicTFT::selectedFile[FILENAME_LENGTH]; // Serial helpers static void sendNewLine() { LCD_SERIAL.write('\r'); LCD_SERIAL.write('\n'); } @@ -78,9 +77,9 @@ static void sendLine_P(PGM_P str) { send_P(str); sendNewLine(); } using namespace ExtUI; -AnycubicTFTClass::AnycubicTFTClass() {} +AnycubicTFT::AnycubicTFT() {} -void AnycubicTFTClass::onSetup() { +void AnycubicTFT::onSetup() { #ifndef LCD_BAUDRATE #define LCD_BAUDRATE 115200 #endif @@ -110,7 +109,7 @@ void AnycubicTFTClass::onSetup() { DEBUG_ECHOLNPGM("TFT Serial Debug: Finished startup"); } -void AnycubicTFTClass::onCommandScan() { +void AnycubicTFT::onCommandScan() { static millis_t nextStopCheck = 0; // used to slow the stopped print check down to reasonable times const millis_t ms = millis(); if (ELAPSED(ms, nextStopCheck)) { @@ -135,26 +134,26 @@ void AnycubicTFTClass::onCommandScan() { } } -void AnycubicTFTClass::onKillTFT() { +void AnycubicTFT::onKillTFT() { SENDLINE_DBG_PGM("J11", "TFT Serial Debug: Kill command... J11"); } -void AnycubicTFTClass::onSDCardStateChange(bool isInserted) { +void AnycubicTFT::onSDCardStateChange(bool isInserted) { DEBUG_ECHOLNPGM("TFT Serial Debug: onSDCardStateChange event triggered...", isInserted); doSDCardStateCheck(); } -void AnycubicTFTClass::onSDCardError() { +void AnycubicTFT::onSDCardError() { DEBUG_ECHOLNPGM("TFT Serial Debug: onSDCardError event triggered..."); SENDLINE_DBG_PGM("J21", "TFT Serial Debug: On SD Card Error ... J21"); } -void AnycubicTFTClass::onFilamentRunout() { +void AnycubicTFT::onFilamentRunout() { DEBUG_ECHOLNPGM("TFT Serial Debug: onFilamentRunout triggered..."); doFilamentRunoutCheck(); } -void AnycubicTFTClass::onUserConfirmRequired(const char * const msg) { +void AnycubicTFT::onUserConfirmRequired(const char * const msg) { DEBUG_ECHOLNPGM("TFT Serial Debug: onUserConfirmRequired triggered... ", msg); #if HAS_MEDIA @@ -206,23 +205,23 @@ void AnycubicTFTClass::onUserConfirmRequired(const char * const msg) { #endif } -float AnycubicTFTClass::codeValue() { +float AnycubicTFT::codeValue() { return (strtod(&tftCommands[tftBufIndR][tftStrchrPtr - tftCommands[tftBufIndR] + 1], nullptr)); } -bool AnycubicTFTClass::codeSeen(char code) { +bool AnycubicTFT::codeSeen(char code) { tftStrchrPtr = strchr(tftCommands[tftBufIndR], code); return !!tftStrchrPtr; // Return True if a character was found } -bool AnycubicTFTClass::isNozzleHomed() { +bool AnycubicTFT::isNozzleHomed() { const float xPosition = getAxisPosition_mm((axis_t) X); const float yPosition = getAxisPosition_mm((axis_t) Y); return WITHIN(xPosition, X_MIN_POS - 0.1, X_MIN_POS + 0.1) && WITHIN(yPosition, Y_MIN_POS - 0.1, Y_MIN_POS + 0.1); } -void AnycubicTFTClass::handleSpecialMenu() { +void AnycubicTFT::handleSpecialMenu() { /** * NOTE: that the file selection command actual lowercases the entire selected file/foldername, so charracter comparisons need to be lowercase. */ @@ -355,7 +354,7 @@ void AnycubicTFTClass::handleSpecialMenu() { } -void AnycubicTFTClass::renderCurrentFileList() { +void AnycubicTFT::renderCurrentFileList() { #if HAS_MEDIA uint16_t selectedNumber = 0; selectedDirectory[0] = 0; @@ -383,7 +382,7 @@ void AnycubicTFTClass::renderCurrentFileList() { #endif // HAS_MEDIA } -void AnycubicTFTClass::renderSpecialMenu(uint16_t selectedNumber) { +void AnycubicTFT::renderSpecialMenu(uint16_t selectedNumber) { switch (selectedNumber) { default: break; @@ -450,7 +449,7 @@ void AnycubicTFTClass::renderSpecialMenu(uint16_t selectedNumber) { } } -void AnycubicTFTClass::renderCurrentFolder(uint16_t selectedNumber) { +void AnycubicTFT::renderCurrentFolder(uint16_t selectedNumber) { FileList currentFileList; const uint16_t dir_files = currentFileList.count(), max_files = (dir_files - selectedNumber) < 4 ? dir_files : selectedNumber + 3; @@ -485,14 +484,14 @@ void AnycubicTFTClass::renderCurrentFolder(uint16_t selectedNumber) { } } -void AnycubicTFTClass::onPrintTimerStarted() { +void AnycubicTFT::onPrintTimerStarted() { #if HAS_MEDIA if (mediaPrintingState == AMPRINTSTATE_PRINTING) SENDLINE_DBG_PGM("J04", "TFT Serial Debug: Starting SD Print... J04"); // J04 Starting Print #endif } -void AnycubicTFTClass::onPrintTimerPaused() { +void AnycubicTFT::onPrintTimerPaused() { #if HAS_MEDIA if (isPrintingFromMedia()) { mediaPrintingState = AMPRINTSTATE_PAUSED; @@ -501,7 +500,7 @@ void AnycubicTFTClass::onPrintTimerPaused() { #endif } -void AnycubicTFTClass::onPrintTimerStopped() { +void AnycubicTFT::onPrintTimerStopped() { #if HAS_MEDIA if (mediaPrintingState == AMPRINTSTATE_PRINTING) { mediaPrintingState = AMPRINTSTATE_NOT_PRINTING; @@ -514,7 +513,7 @@ void AnycubicTFTClass::onPrintTimerStopped() { #define ROUND(val) int((val)+0.5f) -void AnycubicTFTClass::getCommandFromTFT() { +void AnycubicTFT::getCommandFromTFT() { static int serial_count = 0; char *starpos = nullptr; @@ -884,7 +883,7 @@ void AnycubicTFTClass::getCommandFromTFT() { } // while } -void AnycubicTFTClass::doSDCardStateCheck() { +void AnycubicTFT::doSDCardStateCheck() { #if ALL(HAS_MEDIA, HAS_SD_DETECT) bool isInserted = isMediaInserted(); if (isInserted) @@ -895,7 +894,7 @@ void AnycubicTFTClass::doSDCardStateCheck() { #endif } -void AnycubicTFTClass::doFilamentRunoutCheck() { +void AnycubicTFT::doFilamentRunoutCheck() { #if ENABLED(FILAMENT_RUNOUT_SENSOR) // NOTE: getFilamentRunoutState() only returns the runout state if the job is printing // we want to actually check the status of the pin here, regardless of printstate @@ -914,7 +913,7 @@ void AnycubicTFTClass::doFilamentRunoutCheck() { #endif // FILAMENT_RUNOUT_SENSOR } -void AnycubicTFTClass::startPrint() { +void AnycubicTFT::startPrint() { #if HAS_MEDIA if (!isPrinting() && strlen(selectedFile) > 0) { DEBUG_ECHOLNPGM("TFT Serial Debug: About to print file ... ", isPrinting(), " ", selectedFile); @@ -925,7 +924,7 @@ void AnycubicTFTClass::startPrint() { #endif // SDUPPORT } -void AnycubicTFTClass::pausePrint() { +void AnycubicTFT::pausePrint() { #if HAS_MEDIA if (isPrintingFromMedia() && mediaPrintingState != AMPRINTSTATE_STOP_REQUESTED && mediaPauseState == AMPAUSESTATE_NOT_PAUSED) { mediaPrintingState = AMPRINTSTATE_PAUSE_REQUESTED; @@ -939,7 +938,7 @@ void AnycubicTFTClass::pausePrint() { #endif } -void AnycubicTFTClass::resumePrint() { +void AnycubicTFT::resumePrint() { #if HAS_MEDIA #if ENABLED(FILAMENT_RUNOUT_SENSOR) if (READ(FIL_RUNOUT1_PIN)) { @@ -973,7 +972,7 @@ void AnycubicTFTClass::resumePrint() { #endif } -void AnycubicTFTClass::stopPrint() { +void AnycubicTFT::stopPrint() { #if HAS_MEDIA mediaPrintingState = AMPRINTSTATE_STOP_REQUESTED; mediaPauseState = AMPAUSESTATE_NOT_PAUSED; diff --git a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.h b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.h index 7316c5fc04fc..78eae6232654 100644 --- a/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.h +++ b/Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.h @@ -45,9 +45,9 @@ enum AnycubicMediaPauseState { AMPAUSESTATE_REHEAT_FINISHED }; -class AnycubicTFTClass { +class AnycubicTFT { public: - AnycubicTFTClass(); + AnycubicTFT(); static void onSetup(); static void onCommandScan(); static void onKillTFT(); @@ -88,5 +88,5 @@ class AnycubicTFTClass { static char selectedFile[FILENAME_LENGTH]; }; -extern AnycubicTFTClass anycubicTFT; +extern AnycubicTFT anycubicTFT; extern const char G28_STR[]; diff --git a/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.cpp b/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.cpp index da88acc725c1..e3cd68fd9d48 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/FileNavigator.cpp @@ -91,7 +91,7 @@ namespace Anycubic { if (filelist.seek(_seek)) { //sendFile(); - DgusTFT::SendTxtToTFT(filelist.longFilename(), TXT_FILE_0 + file_num*0x30); + DgusTFT::sendTxtToTFT(filelist.longFilename(), TXT_FILE_0 + file_num*0x30); #if ACDEBUG(AC_FILE) SERIAL_ECHOLNPGM("seek: ", _seek, " '", filelist.longFilename(), "' '", currentDirPath, "", filelist.shortFilename(), "'\n"); @@ -102,7 +102,7 @@ namespace Anycubic { SERIAL_ECHOLNPGM("over seek: ", _seek); #endif - DgusTFT::SendTxtToTFT("\0", TXT_FILE_0 + file_num*0x30); + DgusTFT::sendTxtToTFT("\0", TXT_FILE_0 + file_num*0x30); } file_num++; @@ -115,7 +115,7 @@ namespace Anycubic { // Permitted special characters in file name: -_*#~ // Panel can display 22 characters per line. if (!filelist.isDir()) - DgusTFT::SendTxtToTFT(filelist.longFilename(), TXT_FILE_0); + DgusTFT::sendTxtToTFT(filelist.longFilename(), TXT_FILE_0); } void FileNavigator::changeDIR(char *folder) { diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp index 1177d2977b03..f27e638b3280 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp @@ -116,7 +116,7 @@ namespace Anycubic { void DEBUG_PRINT_TIMER_EVENT(const timer_event_t event, FSTR_P const msg=nullptr); void DEBUG_PRINT_MEDIA_EVENT(const media_event_t event, FSTR_P const msg=nullptr); - DgusTFT Dgus; + DgusTFT dgus; DgusTFT::DgusTFT() { data_buf[0] = '\0'; @@ -163,7 +163,7 @@ namespace Anycubic { void DgusTFT::paramInit() { #if ACDEBUG(AC_MARLIN) - DEBUG_ECHOLNPGM("DgusTFT::ParamInit()"); + DEBUG_ECHOLNPGM("DgusTFT::paramInit()"); #endif if (lcd_info.language == CHS) @@ -171,21 +171,21 @@ namespace Anycubic { else if (lcd_info.language == ENG) page_index_now = 121; - LcdAudioSet(lcd_info.audio_on); + lcdAudioSet(lcd_info.audio_on); #if ACDEBUG(AC_MARLIN) if (lcd_info.language == CHS) - DEBUG_ECHOLNPGM("ParamInit lcd language: CHS"); + DEBUG_ECHOLNPGM("paramInit lcd language: CHS"); else if (lcd_info.language == ENG) - DEBUG_ECHOLNPGM("ParamInit lcd language: ENG"); + DEBUG_ECHOLNPGM("paramInit lcd language: ENG"); if (lcd_info.audio_on) - DEBUG_ECHOLNPGM("ParamInit lcd audio: ON"); + DEBUG_ECHOLNPGM("paramInit lcd audio: ON"); else - DEBUG_ECHOLNPGM("ParamInit lcd audio: OFF"); + DEBUG_ECHOLNPGM("paramInit lcd audio: OFF"); #endif - RequestValueFromTFT(0x14); // get page ID + requestValueFromTFT(0x14); // get page ID } void DgusTFT::idleLoop() { @@ -296,11 +296,11 @@ namespace Anycubic { if (strcmp_P(error, PSTR("Heating Failed")) == 0) { if (strcmp_P(component, PSTR("Bed")) == 0) { - ChangePageOfTFT(PAGE_CHS_ABNORMAL_BED_HEATER); + changePageOfTFT(PAGE_CHS_ABNORMAL_BED_HEATER); SERIAL_ECHOLNPGM("Check Bed heater"); } else if (strcmp_P(component, PSTR("E1")) == 0) { - ChangePageOfTFT(PAGE_CHS_ABNORMAL_HOTEND_HEATER); + changePageOfTFT(PAGE_CHS_ABNORMAL_HOTEND_HEATER); SERIAL_ECHOLNPGM("Check E1 heater"); } @@ -308,11 +308,11 @@ namespace Anycubic { else if (strcmp_P(error, PSTR("Err: MINTEMP")) == 0) { if (strcmp_P(component, PSTR("Bed")) == 0) { - ChangePageOfTFT(PAGE_CHS_ABNORMAL_BED_NTC); + changePageOfTFT(PAGE_CHS_ABNORMAL_BED_NTC); SERIAL_ECHOLNPGM("Check Bed thermistor"); } else if (strcmp_P(component, PSTR("E1")) == 0) { - ChangePageOfTFT(PAGE_CHS_ABNORMAL_HOTEND_NTC); + changePageOfTFT(PAGE_CHS_ABNORMAL_HOTEND_NTC); SERIAL_ECHOLNPGM("Check E1 thermistor"); } @@ -320,11 +320,11 @@ namespace Anycubic { else if (strcmp_P(error, PSTR("Err: MAXTEMP")) == 0) { if (strcmp_P(component, PSTR("Bed")) == 0) { - ChangePageOfTFT(PAGE_CHS_ABNORMAL_BED_NTC); + changePageOfTFT(PAGE_CHS_ABNORMAL_BED_NTC); SERIAL_ECHOLNPGM("Check Bed thermistor"); } else if (strcmp_P(component, PSTR("E1")) == 0) { - ChangePageOfTFT(PAGE_CHS_ABNORMAL_HOTEND_NTC); + changePageOfTFT(PAGE_CHS_ABNORMAL_HOTEND_NTC); SERIAL_ECHOLNPGM("Check E1 thermistor"); } @@ -332,11 +332,11 @@ namespace Anycubic { else if (strcmp_P(error, PSTR("THERMAL RUNAWAY")) == 0) { if (strcmp_P(component, PSTR("Bed")) == 0) { - ChangePageOfTFT(PAGE_CHS_ABNORMAL_BED_HEATER); + changePageOfTFT(PAGE_CHS_ABNORMAL_BED_HEATER); SERIAL_ECHOLNPGM("Check Bed thermal runaway"); } else if (strcmp_P(component, PSTR("E1")) == 0) { - ChangePageOfTFT(PAGE_CHS_ABNORMAL_HOTEND_HEATER); + changePageOfTFT(PAGE_CHS_ABNORMAL_HOTEND_HEATER); SERIAL_ECHOLNPGM("Check E1 thermal runaway"); } @@ -344,15 +344,15 @@ namespace Anycubic { else if (strcmp_P(error, PSTR("Homing Failed")) == 0) { if (strcmp_P(component, PSTR("X")) == 0) { - ChangePageOfTFT(PAGE_CHS_ABNORMAL_X_ENDSTOP); + changePageOfTFT(PAGE_CHS_ABNORMAL_X_ENDSTOP); SERIAL_ECHOLNPGM("Check X endstop"); } else if (strcmp_P(component, PSTR("Y")) == 0) { - ChangePageOfTFT(PAGE_CHS_ABNORMAL_Y_ENDSTOP); + changePageOfTFT(PAGE_CHS_ABNORMAL_Y_ENDSTOP); SERIAL_ECHOLNPGM("Check Y endstop"); } else if (strcmp_P(component, PSTR("Z")) == 0) { - ChangePageOfTFT(PAGE_CHS_ABNORMAL_Z_ENDSTOP); + changePageOfTFT(PAGE_CHS_ABNORMAL_Z_ENDSTOP); SERIAL_ECHOLNPGM("Check Z endstop"); } @@ -361,7 +361,7 @@ namespace Anycubic { } void DgusTFT::set_descript_color(const uint16_t color, const uint8_t index/*=lcd_txtbox_index*/) { - SendColorToTFT(color, TXT_DESCRIPT_0 + 0x30 * (index - 1)); + sendColorToTFT(color, TXT_DESCRIPT_0 + 0x30 * (index - 1)); } void DgusTFT::mediaEvent(media_event_t event) { @@ -426,7 +426,7 @@ namespace Anycubic { case AC_timer_stopped: if (printer_state != AC_printer_idle) { if (printer_state == AC_printer_stopping_from_media_remove) { - ChangePageOfTFT(PAGE_NO_SD); + changePageOfTFT(PAGE_NO_SD); } else { printer_state = AC_printer_stopping; @@ -436,8 +436,8 @@ namespace Anycubic { char str_buf[20]; sprintf(str_buf, "%s H ", utostr3(time / 60)); sprintf(str_buf + strlen(str_buf), "%s M", utostr3(time % 60)); - SendTxtToTFT(str_buf, TXT_FINISH_TIME); - ChangePageOfTFT(PAGE_PRINT_FINISH); + sendTxtToTFT(str_buf, TXT_FINISH_TIME); + changePageOfTFT(PAGE_PRINT_FINISH); tftSendLn(AC_msg_print_complete); pop_up_index = 100; } @@ -463,7 +463,7 @@ namespace Anycubic { pop_up_index = 15; // show filament lack. if (READ(FIL_RUNOUT_PIN) == FIL_RUNOUT_STATE) { - PlayTune(FilamentOut); + playTune(FilamentOut); feedrate_back = getFeedrate_percent(); @@ -490,7 +490,7 @@ namespace Anycubic { case AC_printer_pausing: { if (strcmp_P(msg, MARLIN_msg_print_paused) == 0 || strcmp_P(msg, MARLIN_msg_nozzle_parked) == 0) { if (pause_state != AC_paused_filament_lack) - ChangePageOfTFT(PAGE_STATUS1); // enable continue button + changePageOfTFT(PAGE_STATUS1); // enable continue button printer_state = AC_printer_paused; } } @@ -505,7 +505,7 @@ namespace Anycubic { if (strcmp_P(msg, MARLIN_msg_heater_timeout) == 0) { pause_state = AC_paused_heater_timed_out; tftSendLn(AC_msg_paused); // enable continue button - PlayTune(HeaterTimeout); + playTune(HeaterTimeout); } // Reheat finished, send acknowledgement else if (strcmp_P(msg, MARLIN_msg_reheat_done) == 0) { @@ -567,8 +567,8 @@ namespace Anycubic { if (probe_cnt == GRID_MAX_POINTS) { probe_cnt = 0; injectCommands(F("M500")); // G27 park nozzle - //ChangePageOfTFT(PAGE_PreLEVEL); - FakeChangePageOfTFT(PAGE_PreLEVEL); // Prevent UI refreshing too quickly when probing is done + //changePageOfTFT(PAGE_PreLEVEL); + fakeChangePageOfTFT(PAGE_PreLEVEL); // Prevent UI refreshing too quickly when probing is done printer_state = AC_printer_idle; msg_matched = true; } @@ -576,19 +576,19 @@ namespace Anycubic { // If probing fails don't save the mesh raise the probe above the bad point if (strcmp_P(msg, MARLIN_msg_probing_failed) == 0) { - PlayTune(BeepBeepBeeep); + playTune(BeepBeepBeeep); injectCommands(F("G1 Z50 F500")); - ChangePageOfTFT(PAGE_CHS_ABNORMAL_LEVELING_SENSOR); + changePageOfTFT(PAGE_CHS_ABNORMAL_LEVELING_SENSOR); tftSendLn(AC_msg_probing_complete); printer_state = AC_printer_idle; msg_matched = true; } if (strcmp_P(msg, MARLIN_msg_probe_preheat_start) == 0) - ChangePageOfTFT(PAGE_CHS_PROBE_PREHEATING); + changePageOfTFT(PAGE_CHS_PROBE_PREHEATING); if (strcmp_P(msg, MARLIN_msg_probe_preheat_stop) == 0) - ChangePageOfTFT(PAGE_LEVELING); + changePageOfTFT(PAGE_LEVELING); break; #endif @@ -596,7 +596,7 @@ namespace Anycubic { case AC_printer_printing: if (strcmp_P(msg, MARLIN_msg_reheating) == 0) { tftSendLn(AC_msg_paused); // enable continue button - ChangePageOfTFT(PAGE_STATUS2); + changePageOfTFT(PAGE_STATUS2); msg_matched = true; } else if (strcmp_P(msg, MARLIN_msg_media_removed) == 0) { @@ -616,7 +616,7 @@ namespace Anycubic { case AC_printer_pausing: if (strcmp_P(msg, MARLIN_msg_print_paused) == 0) { if (pause_state != AC_paused_filament_lack) { - ChangePageOfTFT(PAGE_STATUS1); // show resume + changePageOfTFT(PAGE_STATUS1); // show resume pause_state = AC_paused_idle; } @@ -628,7 +628,7 @@ namespace Anycubic { case AC_printer_paused: if (strcmp_P(msg, MARLIN_msg_print_paused) == 0) { if (pause_state != AC_paused_filament_lack) { - ChangePageOfTFT(PAGE_STATUS1); // show resume + changePageOfTFT(PAGE_STATUS1); // show resume pause_state = AC_paused_idle; } @@ -639,7 +639,7 @@ namespace Anycubic { case AC_printer_stopping: if (strcmp_P(msg, MARLIN_msg_print_aborted) == 0) { - ChangePageOfTFT(PAGE_MAIN); + changePageOfTFT(PAGE_MAIN); printer_state = AC_printer_idle; msg_matched = true; } @@ -683,7 +683,7 @@ namespace Anycubic { void DgusTFT::homingStart() { if (!isPrintingFromMedia()) - ChangePageOfTFT(PAGE_CHS_HOMING); + changePageOfTFT(PAGE_CHS_HOMING); } void DgusTFT::homingComplete() { @@ -696,7 +696,7 @@ namespace Anycubic { #endif if (!isPrintingFromMedia()) - ChangePageOfTFT(page_index_last); + changePageOfTFT(page_index_last); } void DgusTFT::tftSend(FSTR_P const fstr/*=nullptr*/) { // A helper to print PROGMEM string to the panel @@ -750,7 +750,7 @@ namespace Anycubic { void DgusTFT::changePageOfTFT(const uint16_t page_index, const bool no_send/*=false*/) { #if ACDEBUG(AC_MARLIN) - DEBUG_ECHOLNPGM("ChangePageOfTFT: ", page_index); + DEBUG_ECHOLNPGM("changePageOfTFT: ", page_index); #endif uint32_t data_temp = 0; @@ -792,9 +792,9 @@ namespace Anycubic { void DgusTFT::fakeChangePageOfTFT(const uint16_t page_index) { #if ACDEBUG(AC_MARLIN) if (page_index_saved != page_index_now) - DEBUG_ECHOLNPGM("FakeChangePageOfTFT: ", page_index); + DEBUG_ECHOLNPGM("fakeChangePageOfTFT: ", page_index); #endif - ChangePageOfTFT(page_index, true); + changePageOfTFT(page_index, true); } void DgusTFT::lcdAudioSet(const bool audio_on) { @@ -896,7 +896,7 @@ namespace Anycubic { } #endif - int8_t DgusTFT::Findcmndpos(const char * buff, const char q) { + int8_t DgusTFT::findCmdPos(const char * buff, const char q) { for (int8_t pos = 0; pos < MAX_CMND_LEN; ++pos) if (buff[pos] == q) return pos; return -1; @@ -1012,7 +1012,7 @@ namespace Anycubic { temp = constrain(uint16_t(control_value), 0, HEATER_0_MAXTEMP); setTargetTemp_celsius(temp, E0); //sprintf(str_buf,"%u/%u", (uint16_t)thermalManager.degHotend(0), uint16_t(control_value)); - //SendTxtToTFT(str_buf, TXT_PRINT_HOTEND); + //sendTxtToTFT(str_buf, TXT_PRINT_HOTEND); } #endif @@ -1022,7 +1022,7 @@ namespace Anycubic { temp = constrain(uint16_t(control_value), 0, BED_MAXTEMP); setTargetTemp_celsius(temp, BED); //sprintf(str_buf,"%u/%u", uint16_t(thermalManager.degBed()), uint16_t(control_value)); - //SendTxtToTFT(str_buf, TXT_PRINT_BED); + //sendTxtToTFT(str_buf, TXT_PRINT_BED); } #endif @@ -1030,8 +1030,8 @@ namespace Anycubic { else if (control_index == TXT_FAN_SPEED_TARGET) { // fan speed control_value = (uint16_t(data_buf[4]) << 8) | uint16_t(data_buf[5]); temp = constrain(uint16_t(control_value), 0, 100); - SendValueToTFT(temp, TXT_FAN_SPEED_NOW); - SendValueToTFT(temp, TXT_FAN_SPEED_TARGET); + sendValueToTFT(temp, TXT_FAN_SPEED_NOW); + sendValueToTFT(temp, TXT_FAN_SPEED_TARGET); setTargetFan_percent(temp, FAN0); } #endif @@ -1041,47 +1041,47 @@ namespace Anycubic { const uint16_t feedrate = constrain(uint16_t(control_value), 40, 999); //feedrate_percentage=constrain(control_value,40,999); sprintf(str_buf, "%u", feedrate); - SendTxtToTFT(str_buf, TXT_PRINT_SPEED); - SendValueToTFT(feedrate, TXT_PRINT_SPEED_NOW); - SendValueToTFT(feedrate, TXT_PRINT_SPEED_TARGET); + sendTxtToTFT(str_buf, TXT_PRINT_SPEED); + sendValueToTFT(feedrate, TXT_PRINT_SPEED_NOW); + sendValueToTFT(feedrate, TXT_PRINT_SPEED_TARGET); setFeedrate_percent(feedrate); } else if (control_index == REG_LCD_READY) { control_value = (uint32_t(data_buf[3]) << 16) | (uint32_t(data_buf[4]) << 8) | uint32_t(data_buf[5]); if (control_value == 0x010072) { // startup last gif - LcdAudioSet(lcd_info.audio_on); + lcdAudioSet(lcd_info.audio_on); - SendValueToTFT(2, ADDRESS_MOVE_DISTANCE); + sendValueToTFT(2, ADDRESS_MOVE_DISTANCE); #if ENABLED(CASE_LIGHT_ENABLE) - SendValueToTFT(getCaseLightState(), ADDRESS_SYSTEM_LED_STATUS); - SendValueToTFT(getCaseLightState(), ADDRESS_PRINT_SETTING_LED_STATUS); + sendValueToTFT(getCaseLightState(), ADDRESS_SYSTEM_LED_STATUS); + sendValueToTFT(getCaseLightState(), ADDRESS_PRINT_SETTING_LED_STATUS); #endif #if ENABLED(POWER_LOSS_RECOVERY) const bool is_outage = AC_printer_resuming_from_power_outage == printer_state; if (is_outage) { - ChangePageOfTFT(PAGE_OUTAGE_RECOVERY); + changePageOfTFT(PAGE_OUTAGE_RECOVERY); #if ENABLED(LONG_FILENAME_HOST_SUPPORT) char filename[64] = { '\0' }; card.getLongPath(filename, recovery.info.sd_filename); - SendTxtToTFT(filename, TXT_OUTAGE_RECOVERY_FILE); + sendTxtToTFT(filename, TXT_OUTAGE_RECOVERY_FILE); #else - SendTxtToTFT(recovery.info.sd_filename, TXT_OUTAGE_RECOVERY_FILE); + sendTxtToTFT(recovery.info.sd_filename, TXT_OUTAGE_RECOVERY_FILE); #endif - PlayTune(SOS); + playTune(SOS); } #else constexpr bool is_outage = false; #endif - if (!is_outage) ChangePageOfTFT(PAGE_MAIN); + if (!is_outage) changePageOfTFT(PAGE_MAIN); } else if (control_value == 0x010000) { // startup first gif // startup tunes are defined in Tunes.h - PlayTune(Anycubic_PowerOn); // takes 3500 ms + playTune(Anycubic_PowerOn); // takes 3500 ms } } @@ -1133,7 +1133,7 @@ namespace Anycubic { } void DgusTFT::goto_system_page() { - ChangePageOfTFT(lcd_info.language == CHS + changePageOfTFT(lcd_info.language == CHS ? (lcd_info.audio_on ? PAGE_SYSTEM_CHS_AUDIO_ON : PAGE_SYSTEM_CHS_AUDIO_OFF) : (lcd_info.audio_on ? 11 : 50) // PAGE_SYSTEM_ENG_AUDIO_ON/OFF - 120 ); @@ -1142,7 +1142,7 @@ namespace Anycubic { void DgusTFT::toggle_audio() { lcd_info.audio_on = !lcd_info.audio_on; goto_system_page(); - LcdAudioSet(lcd_info.audio_on); + lcdAudioSet(lcd_info.audio_on); } void DgusTFT::store_changes() { @@ -1156,7 +1156,7 @@ namespace Anycubic { void DgusTFT::send_temperature_hotend(uint32_t addr) { char str_buf[16]; sprintf(str_buf, "%u/%u", uint16_t(getActualTemp_celsius(E0)), uint16_t(getTargetTemp_celsius(E0))); - SendTxtToTFT(str_buf, addr); + sendTxtToTFT(str_buf, addr); } #endif @@ -1164,7 +1164,7 @@ namespace Anycubic { void DgusTFT::send_temperature_bed(uint32_t addr) { char str_buf[16]; sprintf(str_buf, "%u/%u", uint16_t(getActualTemp_celsius(BED)), uint16_t(getTargetTemp_celsius(BED))); - SendTxtToTFT(str_buf, addr); + sendTxtToTFT(str_buf, addr); } #endif @@ -1186,19 +1186,19 @@ namespace Anycubic { set_descript_color(COLOR_BLUE); lcd_txtbox_index = 0; } - ChangePageOfTFT(PAGE_FILE); + changePageOfTFT(PAGE_FILE); sendFileList(0); } break; case 2: { // tool - ChangePageOfTFT(PAGE_TOOL); + changePageOfTFT(PAGE_TOOL); #if ENABLED(CASE_LIGHT_ENABLE) - SendValueToTFT(getCaseLightState(), ADDRESS_SYSTEM_LED_STATUS); + sendValueToTFT(getCaseLightState(), ADDRESS_SYSTEM_LED_STATUS); #endif } break; case 3: // prepare - ChangePageOfTFT(PAGE_PREPARE); + changePageOfTFT(PAGE_PREPARE); break; case 4: // system @@ -1208,7 +1208,7 @@ namespace Anycubic { #if 0 if (message_index < 30) { - SendTxtToTFT(p_mesage[message_index], TXT_MAIN_MESSAGE); + sendTxtToTFT(p_mesage[message_index], TXT_MAIN_MESSAGE); message_index = 30; } #endif @@ -1238,7 +1238,7 @@ namespace Anycubic { case 0: break; case 1: // return - ChangePageOfTFT(PAGE_MAIN); + changePageOfTFT(PAGE_MAIN); set_descript_color(COLOR_BLUE); break; @@ -1292,14 +1292,14 @@ namespace Anycubic { char str_buf[20]; strncpy_P(str_buf, filenavigator.filelist.longFilename(), 17); str_buf[17] = '\0'; - SendTxtToTFT(str_buf, TXT_PRINT_NAME); + sendTxtToTFT(str_buf, TXT_PRINT_NAME); #if ENABLED(POWER_LOSS_RECOVERY) if (printer_state == AC_printer_resuming_from_power_outage) { // Need to home here to restore the Z position //injectCommands(AC_cmnd_power_loss_recovery); //SERIAL_ECHOLNPGM("start resuming from power outage: ", AC_cmnd_power_loss_recovery); - ChangePageOfTFT(PAGE_STATUS2); // show pause + changePageOfTFT(PAGE_STATUS2); // show pause injectCommands(F("M1000")); // home and start recovery } #endif @@ -1331,20 +1331,20 @@ namespace Anycubic { char str_buf[20]; strncpy_P(str_buf, filenavigator.filelist.longFilename(), 17); str_buf[17] = '\0'; - SendTxtToTFT(str_buf, TXT_PRINT_NAME); + sendTxtToTFT(str_buf, TXT_PRINT_NAME); sprintf(str_buf, "%5.2f", getFeedrate_percent()); - SendTxtToTFT(str_buf, TXT_PRINT_SPEED); + sendTxtToTFT(str_buf, TXT_PRINT_SPEED); sprintf(str_buf, "%u", uint16_t(getProgress_percent())); - SendTxtToTFT(str_buf, TXT_PRINT_PROGRESS); + sendTxtToTFT(str_buf, TXT_PRINT_PROGRESS); uint32_t time = 0; sprintf(str_buf, "%s H ", utostr3(time / 60)); sprintf(str_buf + strlen(str_buf), "%s M", utostr3(time % 60)); - SendTxtToTFT(str_buf, TXT_PRINT_TIME); + sendTxtToTFT(str_buf, TXT_PRINT_TIME); - ChangePageOfTFT(PAGE_STATUS2); + changePageOfTFT(PAGE_STATUS2); } } break; @@ -1393,7 +1393,7 @@ namespace Anycubic { case 1: // return if (!isPrintingFromMedia()) // only idle status can return - ChangePageOfTFT(PAGE_FILE); + changePageOfTFT(PAGE_FILE); break; case 2: // resume print @@ -1408,7 +1408,7 @@ namespace Anycubic { printer_state = AC_printer_idle; pause_state = AC_paused_idle; resumePrint(); - ChangePageOfTFT(PAGE_STATUS2); // show pause print + changePageOfTFT(PAGE_STATUS2); // show pause print flash_time = ms + 1500; } else @@ -1417,16 +1417,16 @@ namespace Anycubic { case 3: // print stop if (isPrintingFromMedia()) - ChangePageOfTFT(PAGE_STOP_CONF); + changePageOfTFT(PAGE_STOP_CONF); break; case 4: // print change param - ChangePageOfTFT(PAGE_ADJUST); - TERN_(CASE_LIGHT_ENABLE, SendValueToTFT(getCaseLightState(), ADDRESS_PRINT_SETTING_LED_STATUS)); - TERN_(HAS_HOTEND, SendValueToTFT(uint16_t(getTargetTemp_celsius(E0)), TXT_ADJUST_HOTEND)); - TERN_(HAS_HEATED_BED, SendValueToTFT(uint16_t(getTargetTemp_celsius(BED)), TXT_ADJUST_BED)); + changePageOfTFT(PAGE_ADJUST); + TERN_(CASE_LIGHT_ENABLE, sendValueToTFT(getCaseLightState(), ADDRESS_PRINT_SETTING_LED_STATUS)); + TERN_(HAS_HOTEND, sendValueToTFT(uint16_t(getTargetTemp_celsius(E0)), TXT_ADJUST_HOTEND)); + TERN_(HAS_HEATED_BED, sendValueToTFT(uint16_t(getTargetTemp_celsius(BED)), TXT_ADJUST_BED)); feedrate_back = getFeedrate_percent(); - SendValueToTFT(uint16_t(feedrate_back), TXT_ADJUST_SPEED); + sendValueToTFT(uint16_t(feedrate_back), TXT_ADJUST_SPEED); flash_time = ms + 1500; break; } @@ -1444,13 +1444,13 @@ namespace Anycubic { DEBUG_ECHOLNPGM("print speed: ", str_buf); DEBUG_ECHOLNPGM("feedrate_back: ", feedrate_back); #endif - SendTxtToTFT(str_buf, TXT_PRINT_SPEED); + sendTxtToTFT(str_buf, TXT_PRINT_SPEED); feedrate_back = getFeedrate_percent(); } if (progress_last != getProgress_percent()) { sprintf(str_buf, "%u", getProgress_percent()); - SendTxtToTFT(str_buf, TXT_PRINT_PROGRESS); + sendTxtToTFT(str_buf, TXT_PRINT_PROGRESS); progress_last = getProgress_percent(); } @@ -1458,7 +1458,7 @@ namespace Anycubic { uint32_t time = getProgress_seconds_elapsed() / 60; sprintf(str_buf, "%s H ", utostr3(time / 60)); sprintf(str_buf + strlen(str_buf), "%s M", utostr3(time % 60)); - SendTxtToTFT(str_buf, TXT_PRINT_TIME); + sendTxtToTFT(str_buf, TXT_PRINT_TIME); TERN_(HAS_HOTEND, send_temperature_hotend(TXT_PRINT_HOTEND)); TERN_(HAS_HEATED_BED, send_temperature_bed(TXT_PRINT_BED)); @@ -1481,7 +1481,7 @@ namespace Anycubic { case 1: // return if (!isPrintingFromMedia()) // only is idle status can return - ChangePageOfTFT(PAGE_FILE); + changePageOfTFT(PAGE_FILE); break; case 2: // print pause @@ -1489,29 +1489,29 @@ namespace Anycubic { pausePrint(); printer_state = AC_printer_pausing; pause_state = AC_paused_idle; - ChangePageOfTFT(PAGE_WAIT_PAUSE); + changePageOfTFT(PAGE_WAIT_PAUSE); //injectCommands(F("M108")); // stop waiting temperature M109 } break; case 3: // print stop if (isPrintingFromMedia()) - ChangePageOfTFT(PAGE_STOP_CONF); + changePageOfTFT(PAGE_STOP_CONF); break; case 4: // print settings - ChangePageOfTFT(PAGE_ADJUST); - TERN_(CASE_LIGHT_ENABLE, SendValueToTFT(getCaseLightState(), ADDRESS_PRINT_SETTING_LED_STATUS)); - TERN_(HAS_HOTEND, SendValueToTFT(uint16_t(getTargetTemp_celsius(E0)), TXT_ADJUST_HOTEND)); - TERN_(HAS_HEATED_BED, SendValueToTFT(uint16_t(getTargetTemp_celsius(BED)), TXT_ADJUST_BED)); + changePageOfTFT(PAGE_ADJUST); + TERN_(CASE_LIGHT_ENABLE, sendValueToTFT(getCaseLightState(), ADDRESS_PRINT_SETTING_LED_STATUS)); + TERN_(HAS_HOTEND, sendValueToTFT(uint16_t(getTargetTemp_celsius(E0)), TXT_ADJUST_HOTEND)); + TERN_(HAS_HEATED_BED, sendValueToTFT(uint16_t(getTargetTemp_celsius(BED)), TXT_ADJUST_BED)); feedrate_back = getFeedrate_percent(); - SendValueToTFT((uint16_t)feedrate_back, TXT_ADJUST_SPEED); - TERN_(HAS_FAN, SendValueToTFT(uint16_t(getActualFan_percent(FAN0)), TXT_FAN_SPEED_TARGET)); + sendValueToTFT((uint16_t)feedrate_back, TXT_ADJUST_SPEED); + TERN_(HAS_FAN, sendValueToTFT(uint16_t(getActualFan_percent(FAN0)), TXT_FAN_SPEED_TARGET)); str_buf[0] = 0; strcat(str_buf, ftostr52sprj(getZOffset_mm()) + 3); - SendTxtToTFT(str_buf, TXT_LEVEL_OFFSET); - //SendTxtToTFT(ftostr52sprj(getZOffset_mm()), TXT_LEVEL_OFFSET); - RequestValueFromTFT(TXT_ADJUST_SPEED); // attempt to make feedrate visible on visit to this page + sendTxtToTFT(str_buf, TXT_LEVEL_OFFSET); + //sendTxtToTFT(ftostr52sprj(getZOffset_mm()), TXT_LEVEL_OFFSET); + requestValueFromTFT(TXT_ADJUST_SPEED); // attempt to make feedrate visible on visit to this page break; } @@ -1526,20 +1526,20 @@ namespace Anycubic { else sprintf(str_buf, "%d", feedrate_back); - SendTxtToTFT(str_buf, TXT_PRINT_SPEED); + sendTxtToTFT(str_buf, TXT_PRINT_SPEED); feedrate_back = getFeedrate_percent(); } if (progress_last != getProgress_percent()) { sprintf(str_buf, "%u", getProgress_percent()); - SendTxtToTFT(str_buf, TXT_PRINT_PROGRESS); + sendTxtToTFT(str_buf, TXT_PRINT_PROGRESS); progress_last = getProgress_percent(); } uint32_t time = getProgress_seconds_elapsed() / 60; sprintf(str_buf, "%s H ", utostr3(time / 60)); sprintf(str_buf + strlen(str_buf), "%s M", utostr3(time % 60)); - SendTxtToTFT(str_buf, TXT_PRINT_TIME); + sendTxtToTFT(str_buf, TXT_PRINT_TIME); TERN_(HAS_HOTEND, send_temperature_hotend(TXT_PRINT_HOTEND)); TERN_(HAS_HEATED_BED, send_temperature_bed(TXT_PRINT_BED)); @@ -1560,9 +1560,9 @@ namespace Anycubic { case 1: // return if (AC_printer_printing == printer_state) - ChangePageOfTFT(PAGE_STATUS2); // show pause + changePageOfTFT(PAGE_STATUS2); // show pause else if (AC_printer_paused == printer_state) - ChangePageOfTFT(PAGE_STATUS1); // show print + changePageOfTFT(PAGE_STATUS1); // show print break; #if ENABLED(MESH_EDIT_MENU) @@ -1578,8 +1578,8 @@ namespace Anycubic { char str_buf[10]; str_buf[0] = 0; strcat(str_buf, ftostr52sprj(getZOffset_mm()) + 2); - SendTxtToTFT(str_buf, TXT_LEVEL_OFFSET); - //SendTxtToTFT(ftostr52sprj(getZOffset_mm()), TXT_LEVEL_OFFSET); + sendTxtToTFT(str_buf, TXT_LEVEL_OFFSET); + //sendTxtToTFT(ftostr52sprj(getZOffset_mm()), TXT_LEVEL_OFFSET); //if (isAxisPositionKnown(Z)) { // Move Z axis // SERIAL_ECHOLNPGM("Z now:", getAxisPosition_mm(Z)); @@ -1619,8 +1619,8 @@ namespace Anycubic { char str_buf[10]; str_buf[0] = '\0'; strcat(str_buf, ftostr52sprj(getZOffset_mm()) + 2); - SendTxtToTFT(str_buf, TXT_LEVEL_OFFSET); - //SendTxtToTFT(ftostr52sprj(getZOffset_mm()), TXT_LEVEL_OFFSET); + sendTxtToTFT(str_buf, TXT_LEVEL_OFFSET); + //sendTxtToTFT(ftostr52sprj(getZOffset_mm()), TXT_LEVEL_OFFSET); //int16_t steps = mmToWholeSteps(constrain(Zshift,-0.05,0.05), Z); @@ -1655,22 +1655,22 @@ namespace Anycubic { #if ENABLED(CASE_LIGHT_ENABLE) case 4: { // light control const bool cls = !getCaseLightState(); - SendValueToTFT(cls, ADDRESS_PRINT_SETTING_LED_STATUS); + sendValueToTFT(cls, ADDRESS_PRINT_SETTING_LED_STATUS); setCaseLightState(cls); } break; #endif case 5: - ChangePageOfTFT(PAGE_DONE); + changePageOfTFT(PAGE_DONE); break; case 6: break; case 7: - TERN_(HAS_HEATED_BED, RequestValueFromTFT(TXT_ADJUST_BED)); - RequestValueFromTFT(TXT_ADJUST_SPEED); - TERN_(HAS_HOTEND, RequestValueFromTFT(TXT_ADJUST_HOTEND)); - TERN_(HAS_FAN, RequestValueFromTFT(TXT_FAN_SPEED_TARGET)); + TERN_(HAS_HEATED_BED, requestValueFromTFT(TXT_ADJUST_BED)); + requestValueFromTFT(TXT_ADJUST_SPEED); + TERN_(HAS_HOTEND, requestValueFromTFT(TXT_ADJUST_HOTEND)); + TERN_(HAS_FAN, requestValueFromTFT(TXT_FAN_SPEED_TARGET)); if (z_change == true) { injectCommands(F("M500")); @@ -1678,9 +1678,9 @@ namespace Anycubic { } if (AC_printer_printing == printer_state) - ChangePageOfTFT(PAGE_STATUS2); // show pause + changePageOfTFT(PAGE_STATUS2); // show pause else if (AC_printer_paused == printer_state) - ChangePageOfTFT(PAGE_STATUS1); // show print + changePageOfTFT(PAGE_STATUS1); // show print break; } @@ -1712,33 +1712,33 @@ namespace Anycubic { case 0: break; case 1: // return - ChangePageOfTFT(PAGE_MAIN); + changePageOfTFT(PAGE_MAIN); break; case 2: - ChangePageOfTFT(PAGE_MOVE); + changePageOfTFT(PAGE_MOVE); break; case 3: // set temperature - ChangePageOfTFT(PAGE_TEMP); + changePageOfTFT(PAGE_TEMP); #if HAS_HOTEND - SendValueToTFT(uint16_t(getActualTemp_celsius(E0)), TXT_HOTEND_NOW); - SendValueToTFT(uint16_t(getTargetTemp_celsius(E0)), TXT_HOTEND_TARGET); + sendValueToTFT(uint16_t(getActualTemp_celsius(E0)), TXT_HOTEND_NOW); + sendValueToTFT(uint16_t(getTargetTemp_celsius(E0)), TXT_HOTEND_TARGET); #endif #if HAS_HEATED_BED - SendValueToTFT(uint16_t(getActualTemp_celsius(BED)), TXT_BED_NOW); - SendValueToTFT(uint16_t(getTargetTemp_celsius(BED)), TXT_BED_TARGET); + sendValueToTFT(uint16_t(getActualTemp_celsius(BED)), TXT_BED_NOW); + sendValueToTFT(uint16_t(getTargetTemp_celsius(BED)), TXT_BED_TARGET); #endif break; case 4: - ChangePageOfTFT(PAGE_SPEED); + changePageOfTFT(PAGE_SPEED); #if HAS_FAN - SendValueToTFT(uint16_t(getActualFan_percent(FAN0)), TXT_FAN_SPEED_NOW); - SendValueToTFT(uint16_t(getTargetFan_percent(FAN0)), TXT_FAN_SPEED_TARGET); + sendValueToTFT(uint16_t(getActualFan_percent(FAN0)), TXT_FAN_SPEED_NOW); + sendValueToTFT(uint16_t(getTargetFan_percent(FAN0)), TXT_FAN_SPEED_TARGET); #endif - SendValueToTFT(uint16_t(getFeedrate_percent()), TXT_PRINT_SPEED_NOW); - SendValueToTFT(uint16_t(getFeedrate_percent()), TXT_PRINT_SPEED_TARGET); + sendValueToTFT(uint16_t(getFeedrate_percent()), TXT_PRINT_SPEED_NOW); + sendValueToTFT(uint16_t(getFeedrate_percent()), TXT_PRINT_SPEED_TARGET); break; case 5: // turn off the xyz motor @@ -1749,7 +1749,7 @@ namespace Anycubic { #if ENABLED(CASE_LIGHT_ENABLE) case 6: { // light control const bool cls = !getCaseLightState(); - SendValueToTFT(cls, ADDRESS_SYSTEM_LED_STATUS); + sendValueToTFT(cls, ADDRESS_SYSTEM_LED_STATUS); setCaseLightState(cls); } break; #endif @@ -1780,7 +1780,7 @@ namespace Anycubic { break; case 1: // return - ChangePageOfTFT(PAGE_TOOL); + changePageOfTFT(PAGE_TOOL); break; case 5: @@ -1835,17 +1835,17 @@ namespace Anycubic { case 3: move_dis = 0.1f; - SendValueToTFT(1, ADDRESS_MOVE_DISTANCE); + sendValueToTFT(1, ADDRESS_MOVE_DISTANCE); break; case 7: move_dis = 1.0f; - SendValueToTFT(2, ADDRESS_MOVE_DISTANCE); + sendValueToTFT(2, ADDRESS_MOVE_DISTANCE); break; case 11: move_dis = 10.0f; - SendValueToTFT(3, ADDRESS_MOVE_DISTANCE); + sendValueToTFT(3, ADDRESS_MOVE_DISTANCE); break; //case 14: @@ -1875,7 +1875,7 @@ namespace Anycubic { case 0: break; case 1: // return - ChangePageOfTFT(PAGE_TOOL); + changePageOfTFT(PAGE_TOOL); break; case 2: break; @@ -1886,13 +1886,13 @@ namespace Anycubic { case 6: // cooling setTargetTemp_celsius(0, E0); setTargetTemp_celsius(0, BED); - ChangePageOfTFT(PAGE_TOOL); + changePageOfTFT(PAGE_TOOL); break; case 7: // send target temp - RequestValueFromTFT(TXT_HOTEND_TARGET); - RequestValueFromTFT(TXT_BED_TARGET); - ChangePageOfTFT(PAGE_TOOL); + requestValueFromTFT(TXT_HOTEND_TARGET); + requestValueFromTFT(TXT_BED_TARGET); + changePageOfTFT(PAGE_TOOL); break; } @@ -1901,8 +1901,8 @@ namespace Anycubic { if (PENDING(ms, flash_time)) return; flash_time = ms + 1500; - SendValueToTFT(uint16_t(getActualTemp_celsius(E0)), TXT_HOTEND_NOW); - SendValueToTFT(uint16_t(getActualTemp_celsius(BED)), TXT_BED_NOW); + sendValueToTFT(uint16_t(getActualTemp_celsius(E0)), TXT_HOTEND_NOW); + sendValueToTFT(uint16_t(getActualTemp_celsius(BED)), TXT_BED_NOW); } void DgusTFT::page10() { @@ -1917,7 +1917,7 @@ namespace Anycubic { switch (key_value) { case 0: break; case 1: // return - ChangePageOfTFT(PAGE_TOOL); + changePageOfTFT(PAGE_TOOL); break; case 2: break; @@ -1926,9 +1926,9 @@ namespace Anycubic { case 5: break; case 6: // ok - RequestValueFromTFT(TXT_FAN_SPEED_TARGET); - RequestValueFromTFT(TXT_PRINT_SPEED_TARGET); - ChangePageOfTFT(PAGE_TOOL); + requestValueFromTFT(TXT_FAN_SPEED_TARGET); + requestValueFromTFT(TXT_PRINT_SPEED_TARGET); + changePageOfTFT(PAGE_TOOL); break; } @@ -1937,8 +1937,8 @@ namespace Anycubic { if (PENDING(ms, flash_time)) return; flash_time = ms + 1500; - SendValueToTFT(uint16_t(getActualFan_percent(FAN0)), TXT_FAN_SPEED_NOW); - SendValueToTFT(uint16_t(getFeedrate_percent()), TXT_PRINT_SPEED_NOW); + sendValueToTFT(uint16_t(getActualFan_percent(FAN0)), TXT_FAN_SPEED_NOW); + sendValueToTFT(uint16_t(getFeedrate_percent()), TXT_PRINT_SPEED_NOW); } void DgusTFT::page11() { @@ -1953,7 +1953,7 @@ namespace Anycubic { case 0: break; case 1: // return - ChangePageOfTFT(PAGE_MAIN); + changePageOfTFT(PAGE_MAIN); store_changes(); break; @@ -1972,12 +1972,12 @@ namespace Anycubic { char str_ver[32]; //sprintf(str_ver, "%04d-%02d-%02d %02d:%02d:%02d\n", BUILD_YEAR, BUILD_MONTH, BUILD_DAY, BUILD_HOUR, BUILD_MIN, BUILD_SEC); sprintf(str_ver, MAIN_BOARD_FIRMWARE_VER); - SendTxtToTFT(str_ver, TXT_VERSION); - ChangePageOfTFT(PAGE_ABOUT); + sendTxtToTFT(str_ver, TXT_VERSION); + changePageOfTFT(PAGE_ABOUT); } break; case 6: - ChangePageOfTFT(PAGE_RECORD); + changePageOfTFT(PAGE_RECORD); break; } } @@ -1993,7 +1993,7 @@ namespace Anycubic { switch (key_value) { case 0: break; case 1: // return - ChangePageOfTFT(PAGE_SYSTEM_CHS_AUDIO_ON); + changePageOfTFT(PAGE_SYSTEM_CHS_AUDIO_ON); break; } } @@ -2047,16 +2047,16 @@ namespace Anycubic { case 0: break; case 1: // return - ChangePageOfTFT(PAGE_MAIN); + changePageOfTFT(PAGE_MAIN); break; case 2: - ChangePageOfTFT(PAGE_PreLEVEL); + changePageOfTFT(PAGE_PreLEVEL); break; #if HAS_HOTEND || HAS_HEATED_BED case 3: { - ChangePageOfTFT(PAGE_PREHEAT); + changePageOfTFT(PAGE_PREHEAT); TERN_(HAS_HOTEND, send_temperature_hotend(TXT_PREHEAT_HOTEND)); TERN_(HAS_HEATED_BED, send_temperature_bed(TXT_PREHEAT_BED)); } break; @@ -2065,7 +2065,7 @@ namespace Anycubic { #if HAS_EXTRUDERS case 4: { send_temperature_hotend(TXT_FILAMENT_TEMP); - ChangePageOfTFT(PAGE_FILAMENT); + changePageOfTFT(PAGE_FILAMENT); } break; #endif } @@ -2082,13 +2082,13 @@ namespace Anycubic { switch (key_value) { case 0: break; case 1: // return - ChangePageOfTFT(PAGE_PREPARE); + changePageOfTFT(PAGE_PREPARE); break; case 2: if (!isPrinting()) { - //ChangePageOfTFT(PAGE_LEVEL_ENSURE); - ChangePageOfTFT(PAGE_CHS_PROBE_PRECHECK); + //changePageOfTFT(PAGE_LEVEL_ENSURE); + changePageOfTFT(PAGE_CHS_PROBE_PRECHECK); } break; @@ -2096,13 +2096,13 @@ namespace Anycubic { char str_buf[10]; str_buf[0] = '\0'; strcat(str_buf, ftostr52sprj(getZOffset_mm()) + 2); - SendTxtToTFT(str_buf, TXT_LEVEL_OFFSET); - //SendTxtToTFT(ftostr52sprj(getZOffset_mm()), TXT_LEVEL_OFFSET); - ChangePageOfTFT(PAGE_LEVEL_ADVANCE); + sendTxtToTFT(str_buf, TXT_LEVEL_OFFSET); + //sendTxtToTFT(ftostr52sprj(getZOffset_mm()), TXT_LEVEL_OFFSET); + changePageOfTFT(PAGE_LEVEL_ADVANCE); } break; case 4: - ChangePageOfTFT(PAGE_AUTO_OFFSET); + changePageOfTFT(PAGE_AUTO_OFFSET); break; } } @@ -2120,7 +2120,7 @@ namespace Anycubic { case 0: break; case 1: // return - ChangePageOfTFT(PAGE_PreLEVEL); + changePageOfTFT(PAGE_PreLEVEL); break; case 2: { @@ -2131,8 +2131,8 @@ namespace Anycubic { char str_buf[10]; strcat(str_buf, ftostr52sprj(getZOffset_mm()) + 2); - SendTxtToTFT(str_buf, TXT_LEVEL_OFFSET); - //SendTxtToTFT(ftostr52sprj(getZOffset_mm()), TXT_LEVEL_OFFSET); + sendTxtToTFT(str_buf, TXT_LEVEL_OFFSET); + //sendTxtToTFT(ftostr52sprj(getZOffset_mm()), TXT_LEVEL_OFFSET); if (isAxisPositionKnown(Z)) { const float currZpos = getAxisPosition_mm(Z); @@ -2150,8 +2150,8 @@ namespace Anycubic { char str_buf[10]; strcat(str_buf, ftostr52sprj(getZOffset_mm()) + 2); - SendTxtToTFT(str_buf, TXT_LEVEL_OFFSET); - //SendTxtToTFT(ftostr52sprj(getZOffset_mm()), TXT_LEVEL_OFFSET); + sendTxtToTFT(str_buf, TXT_LEVEL_OFFSET); + //sendTxtToTFT(ftostr52sprj(getZOffset_mm()), TXT_LEVEL_OFFSET); if (isAxisPositionKnown(Z)) { // Move Z axis const float currZpos = getAxisPosition_mm(Z); @@ -2173,7 +2173,7 @@ namespace Anycubic { } injectCommands(F("M500")); #endif - ChangePageOfTFT(PAGE_PREPARE); + changePageOfTFT(PAGE_PREPARE); break; } } @@ -2193,19 +2193,19 @@ namespace Anycubic { case 0: break; case 1: // return - ChangePageOfTFT(PAGE_PREPARE); + changePageOfTFT(PAGE_PREPARE); break; case 2: // PLA TERN_(HAS_HOTEND, setTargetTemp_celsius(190, E0)); TERN_(HAS_HEATED_BED, setTargetTemp_celsius(60, BED)); - ChangePageOfTFT(PAGE_PREHEAT); + changePageOfTFT(PAGE_PREHEAT); break; case 3: // ABS TERN_(HAS_HOTEND, setTargetTemp_celsius(240, E0)); TERN_(HAS_HEATED_BED, setTargetTemp_celsius(100, BED)); - ChangePageOfTFT(PAGE_PREHEAT); + changePageOfTFT(PAGE_PREHEAT); break; } @@ -2238,13 +2238,13 @@ namespace Anycubic { case 1: // return filament_status = 0; injectCommands(F("G90")); - ChangePageOfTFT(PAGE_PREPARE); + changePageOfTFT(PAGE_PREPARE); break; case 2: // Filament in if (getActualTemp_celsius(E0) < 220) { filament_status = 0; - ChangePageOfTFT(PAGE_FILAMENT_HEAT); + changePageOfTFT(PAGE_FILAMENT_HEAT); } else { filament_status = 1; @@ -2255,7 +2255,7 @@ namespace Anycubic { case 3: // filament out if (getActualTemp_celsius(E0) < 220) { filament_status = 0; - ChangePageOfTFT(PAGE_FILAMENT_HEAT); + changePageOfTFT(PAGE_FILAMENT_HEAT); } else { filament_status = 2; @@ -2301,7 +2301,7 @@ namespace Anycubic { switch (key_value) { case 0: break; case 1: // return - ChangePageOfTFT(page_index_last); + changePageOfTFT(page_index_last); break; } @@ -2324,7 +2324,7 @@ namespace Anycubic { case 0: break; case 1: // return - ChangePageOfTFT(page_index_last); + changePageOfTFT(page_index_last); break; case 2: break; @@ -2350,7 +2350,7 @@ namespace Anycubic { case 1: // OK to finish TERN_(CASE_LIGHT_ENABLE, setCaseLightState(false)); - ChangePageOfTFT(PAGE_MAIN); + changePageOfTFT(PAGE_MAIN); break; case 2: break; @@ -2373,8 +2373,8 @@ namespace Anycubic { switch (key_value) { case 0: break; - case 1: ChangePageOfTFT(page_index_last); break; // return - case 2: ChangePageOfTFT(page_index_last); break; + case 1: changePageOfTFT(page_index_last); break; // return + case 2: changePageOfTFT(page_index_last); break; } static millis_t flash_time = 0; @@ -2394,8 +2394,8 @@ namespace Anycubic { switch (key_value) { case 0: break; - case 1: ChangePageOfTFT(page_index_last); break; // return - case 2: ChangePageOfTFT(page_index_last); break; + case 1: changePageOfTFT(page_index_last); break; // return + case 2: changePageOfTFT(page_index_last); break; } static millis_t flash_time = 0; @@ -2422,10 +2422,10 @@ namespace Anycubic { DEBUG_PRINT_PAUSED_STATE(pause_state); #endif if (AC_printer_printing == printer_state) - ChangePageOfTFT(PAGE_STATUS2); // show pause + changePageOfTFT(PAGE_STATUS2); // show pause else if (AC_printer_paused == printer_state) { //injectCommands(F("M108")); - ChangePageOfTFT(PAGE_STATUS1); // show resume + changePageOfTFT(PAGE_STATUS1); // show resume } break; } @@ -2447,7 +2447,7 @@ namespace Anycubic { switch (key_value) { case 0: break; - case 1: ChangePageOfTFT(page_index_last); break; // return + case 1: changePageOfTFT(page_index_last); break; // return case 2: break; } @@ -2474,7 +2474,7 @@ namespace Anycubic { printer_state = AC_printer_stopping; stopPrint(); message_index = 6; - ChangePageOfTFT(PAGE_MAIN); + changePageOfTFT(PAGE_MAIN); } else { if (printer_state == AC_printer_resuming_from_power_outage) @@ -2485,9 +2485,9 @@ namespace Anycubic { case 2: // return if (AC_printer_printing == printer_state) - ChangePageOfTFT(PAGE_STATUS2); // show pause + changePageOfTFT(PAGE_STATUS2); // show pause else if (AC_printer_paused == printer_state) - ChangePageOfTFT(PAGE_STATUS1); // show print + changePageOfTFT(PAGE_STATUS1); // show print break; } @@ -2508,7 +2508,7 @@ namespace Anycubic { switch (key_value) { case 0: break; - case 1: ChangePageOfTFT(page_index_last); break; // return + case 1: changePageOfTFT(page_index_last); break; // return case 2: break; } @@ -2532,7 +2532,7 @@ namespace Anycubic { case 1: // return TERN_(CASE_LIGHT_ENABLE, setCaseLightState(false)); - ChangePageOfTFT(PAGE_MAIN); + changePageOfTFT(PAGE_MAIN); break; case 2: break; @@ -2558,7 +2558,7 @@ namespace Anycubic { case 1: // return setTargetTemp_celsius(230, E0); - ChangePageOfTFT(PAGE_FILAMENT); + changePageOfTFT(PAGE_FILAMENT); break; } @@ -2629,21 +2629,21 @@ namespace Anycubic { ) { setTargetTemp_celsius(LEVELING_NOZZLE_TEMP, E0); setTargetTemp_celsius(LEVELING_BED_TEMP, BED); - ChangePageOfTFT(PAGE_CHS_PROBE_PREHEATING); + changePageOfTFT(PAGE_CHS_PROBE_PREHEATING); } else - ChangePageOfTFT(PAGE_LEVELING); + changePageOfTFT(PAGE_LEVELING); #else - ChangePageOfTFT(PAGE_LEVELING); + changePageOfTFT(PAGE_LEVELING); #endif #endif - ChangePageOfTFT(PAGE_LEVELING); + changePageOfTFT(PAGE_LEVELING); break; case 2: - ChangePageOfTFT(PAGE_PreLEVEL); + changePageOfTFT(PAGE_PreLEVEL); break; } @@ -2674,7 +2674,7 @@ namespace Anycubic { if (pop_up_index == 25) { pop_up_index = 100; - ChangePageOfTFT(PAGE_PreLEVEL); + changePageOfTFT(PAGE_PreLEVEL); } } @@ -2692,7 +2692,7 @@ namespace Anycubic { switch (key_value) { case 0: break; - case 1: ChangePageOfTFT(PAGE_PreLEVEL); break; + case 1: changePageOfTFT(PAGE_PreLEVEL); break; case 2: { injectCommands(F("M1024 S3")); // -1 @@ -2725,7 +2725,7 @@ namespace Anycubic { case 0: break; case 1: - ChangePageOfTFT(PAGE_MAIN); + changePageOfTFT(PAGE_MAIN); store_changes(); break; @@ -2744,12 +2744,12 @@ namespace Anycubic { char str_ver[32]; //sprintf(str_ver, "%04d-%02d-%02d %02d:%02d:%02d\n", BUILD_YEAR, BUILD_MONTH, BUILD_DAY, BUILD_HOUR, BUILD_MIN, BUILD_SEC); sprintf(str_ver, MAIN_BOARD_FIRMWARE_VER); - SendTxtToTFT(str_ver, TXT_VERSION); - ChangePageOfTFT(PAGE_ABOUT); + sendTxtToTFT(str_ver, TXT_VERSION); + changePageOfTFT(PAGE_ABOUT); break; case 6: - ChangePageOfTFT(PAGE_RECORD); + changePageOfTFT(PAGE_RECORD); break; } } @@ -2763,7 +2763,7 @@ namespace Anycubic { //DEBUG_ECHOLNPGM("update feedrate percent"); } #endif - SendValueToTFT(uint16_t(getFeedrate_percent()), TXT_PRINT_SPEED_NOW); + sendValueToTFT(uint16_t(getFeedrate_percent()), TXT_PRINT_SPEED_NOW); } void DgusTFT::page125() { // first time into page 125 the feedrate percent is not set @@ -2775,7 +2775,7 @@ namespace Anycubic { //DEBUG_ECHOLNPGM("update feedrate percent"); } #endif - SendValueToTFT(uint16_t(getFeedrate_percent()), TXT_PRINT_SPEED_NOW); + sendValueToTFT(uint16_t(getFeedrate_percent()), TXT_PRINT_SPEED_NOW); } void DgusTFT::page170() { // ENG Mute handler @@ -2790,7 +2790,7 @@ namespace Anycubic { case 0: break; case 1: - ChangePageOfTFT(PAGE_MAIN); + changePageOfTFT(PAGE_MAIN); store_changes(); break; @@ -2809,12 +2809,12 @@ namespace Anycubic { char str_ver[32]; //sprintf(str_ver, "%04d-%02d-%02d %02d:%02d:%02d\n", BUILD_YEAR, BUILD_MONTH, BUILD_DAY, BUILD_HOUR, BUILD_MIN, BUILD_SEC); sprintf(str_ver, MAIN_BOARD_FIRMWARE_VER); - SendTxtToTFT(str_ver, TXT_VERSION); - ChangePageOfTFT(PAGE_ABOUT); + sendTxtToTFT(str_ver, TXT_VERSION); + changePageOfTFT(PAGE_ABOUT); break; case 6: - ChangePageOfTFT(PAGE_RECORD); + changePageOfTFT(PAGE_RECORD); break; } } @@ -2836,29 +2836,29 @@ namespace Anycubic { case 0: break; case 1: { // resume - ChangePageOfTFT(PAGE_OUTAGE_RECOVERY); + changePageOfTFT(PAGE_OUTAGE_RECOVERY); #if ENABLED(LONG_FILENAME_HOST_SUPPORT) card.getLongPath(filename, recovery.info.sd_filename); filename[17] = '\0'; - SendTxtToTFT(filename, TXT_OUTAGE_RECOVERY_FILE); + sendTxtToTFT(filename, TXT_OUTAGE_RECOVERY_FILE); #else - SendTxtToTFT(recovery.info.sd_filename, TXT_OUTAGE_RECOVERY_FILE); + sendTxtToTFT(recovery.info.sd_filename, TXT_OUTAGE_RECOVERY_FILE); #endif char str_buf[20] = { '\0' }; sprintf(str_buf, "%u", uint16_t(getFeedrate_percent())); - SendTxtToTFT(str_buf, TXT_PRINT_SPEED); + sendTxtToTFT(str_buf, TXT_PRINT_SPEED); sprintf(str_buf, "%u", uint16_t(getProgress_percent())); - SendTxtToTFT(str_buf, TXT_PRINT_PROGRESS); + sendTxtToTFT(str_buf, TXT_PRINT_PROGRESS); - ChangePageOfTFT(PAGE_STATUS2); // show pause + changePageOfTFT(PAGE_STATUS2); // show pause injectCommands(F("M355 S1\nM1000")); // case light on, home and start recovery } break; case 2: // cancel printer_state = AC_printer_idle; - ChangePageOfTFT(PAGE_MAIN); + changePageOfTFT(PAGE_MAIN); injectCommands(F("M355 S0\nM1000 C")); // cancel recovery break; } @@ -2879,29 +2879,29 @@ namespace Anycubic { case 0: break; case 1: { // resume - ChangePageOfTFT(PAGE_OUTAGE_RECOVERY); + changePageOfTFT(PAGE_OUTAGE_RECOVERY); #if ENABLED(LONG_FILENAME_HOST_SUPPORT) card.getLongPath(filename, recovery.info.sd_filename); filename[17] = '\0'; - SendTxtToTFT(filename, TXT_OUTAGE_RECOVERY_FILE); + sendTxtToTFT(filename, TXT_OUTAGE_RECOVERY_FILE); #else - SendTxtToTFT(recovery.info.sd_filename, TXT_OUTAGE_RECOVERY_FILE); + sendTxtToTFT(recovery.info.sd_filename, TXT_OUTAGE_RECOVERY_FILE); #endif char str_buf[20] = { '\0' }; sprintf(str_buf, "%u", uint16_t(getFeedrate_percent())); - SendTxtToTFT(str_buf, TXT_PRINT_SPEED); + sendTxtToTFT(str_buf, TXT_PRINT_SPEED); sprintf(str_buf, "%u", uint16_t(getProgress_percent())); - SendTxtToTFT(str_buf, TXT_PRINT_PROGRESS); + sendTxtToTFT(str_buf, TXT_PRINT_PROGRESS); - ChangePageOfTFT(PAGE_STATUS2); // show pause + changePageOfTFT(PAGE_STATUS2); // show pause injectCommands(F("M355 S1\nM1000")); // case light on, home and start recovery } break; case 2: // cancel printer_state = AC_printer_idle; - ChangePageOfTFT(PAGE_MAIN); + changePageOfTFT(PAGE_MAIN); injectCommands(F("M355 S0\nM1000 C")); // cancel recovery break; } @@ -2976,14 +2976,14 @@ namespace Anycubic { } if (PAGE_STATUS1 == page_index_last_2 || PAGE_STATUS2 == page_index_last_2 || PAGE_PRINT_FINISH == page_index_last) - ChangePageOfTFT(PAGE_MAIN); + changePageOfTFT(PAGE_MAIN); else - ChangePageOfTFT(page_index_last_2); + changePageOfTFT(page_index_last_2); } else { if (lcd_info.language == ENG && page_index_last > 120) page_index_last -= 120; - ChangePageOfTFT(page_index_last); + changePageOfTFT(page_index_last); } onSurviveInKilled(); @@ -3012,10 +3012,10 @@ namespace Anycubic { if (isPrinting() || isPrintingPaused() || isPrintingFromMedia()) { printer_state = AC_printer_stopping; stopPrint(); - ChangePageOfTFT(PAGE_MAIN); + changePageOfTFT(PAGE_MAIN); } else - ChangePageOfTFT(page_index_last); + changePageOfTFT(page_index_last); onSurviveInKilled(); break; @@ -3041,7 +3041,7 @@ namespace Anycubic { //DEBUG_ECHOLNPGM("page_index_last_2: ", page_index_last_2); #endif onSurviveInKilled(); - ChangePageOfTFT(PAGE_PreLEVEL); + changePageOfTFT(PAGE_PreLEVEL); break; default: break; @@ -3081,7 +3081,7 @@ namespace Anycubic { if (getProbeState()) { // triggered too early probe_check_counter = 0; probe_tare_flag = 0; - ChangePageOfTFT(PAGE_CHS_PROBE_PRECHECK_FAILED); + changePageOfTFT(PAGE_CHS_PROBE_PRECHECK_FAILED); } probe_tare_flag = 1; } @@ -3090,7 +3090,7 @@ namespace Anycubic { case 1: // cancel probe_check_counter = 0; probe_tare_flag = 0; - ChangePageOfTFT(PAGE_PreLEVEL); + changePageOfTFT(PAGE_PreLEVEL); break; default: break; @@ -3102,7 +3102,7 @@ namespace Anycubic { if (!probe_state_last && getProbeState()) { probe_check_counter = 0; probe_tare_flag = 0; - ChangePageOfTFT(PAGE_CHS_PROBE_PRECHECK_OK); + changePageOfTFT(PAGE_CHS_PROBE_PRECHECK_OK); } probe_state_last = getProbeState(); @@ -3110,7 +3110,7 @@ namespace Anycubic { if (probe_check_counter++ >= 200) { // waiting for 1 min probe_check_counter = 0; probe_tare_flag = 0; - ChangePageOfTFT(PAGE_CHS_PROBE_PRECHECK_FAILED); + changePageOfTFT(PAGE_CHS_PROBE_PRECHECK_FAILED); } } @@ -3138,7 +3138,7 @@ namespace Anycubic { injectCommands(F("G28\nG29")); printer_state = AC_printer_probing; - ChangePageOfTFT(PAGE_LEVELING); + changePageOfTFT(PAGE_LEVELING); } void DgusTFT::page203() { // probe precheck failed @@ -3174,24 +3174,24 @@ namespace Anycubic { switch (pop_up_index) { case 10: // T0 error if (page_index_now != PAGE_ABNORMAL) - ChangePageOfTFT(PAGE_ABNORMAL); + changePageOfTFT(PAGE_ABNORMAL); pop_up_index = 100; break; case 15: // filament lack case 23: if (page_index_now != PAGE_FILAMENT_LACK) - ChangePageOfTFT(PAGE_FILAMENT_LACK); + changePageOfTFT(PAGE_FILAMENT_LACK); pop_up_index = 100; break; case 16: // stop wait - ChangePageOfTFT(PAGE_WAIT_STOP); + changePageOfTFT(PAGE_WAIT_STOP); pop_up_index = 100; break; case 18: - ChangePageOfTFT(PAGE_STATUS1); + changePageOfTFT(PAGE_STATUS1); pop_up_index = 100; break; @@ -3200,14 +3200,14 @@ namespace Anycubic { char str_buf[20]; sprintf(str_buf, "%s H ", utostr3(time / 60)); sprintf(str_buf + strlen(str_buf), "%s M", utostr3(time % 60)); - SendTxtToTFT(str_buf, TXT_FINISH_TIME); - ChangePageOfTFT(PAGE_PRINT_FINISH); + sendTxtToTFT(str_buf, TXT_FINISH_TIME); + changePageOfTFT(PAGE_PRINT_FINISH); //tftSendLn(AC_msg_print_complete); // no idea why this causes a compile error pop_up_index = 100; } break; case 25: // LEVEL DONE - ChangePageOfTFT(PAGE_PreLEVEL); + changePageOfTFT(PAGE_PreLEVEL); pop_up_index = 100; break; } diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h index 63803d209fba..371066a56900 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.h @@ -453,7 +453,7 @@ namespace Anycubic { static void tftSend(FSTR_P const=nullptr); static void tftSendLn(FSTR_P const=nullptr); static bool readTFTCommand(); - static int8_t Findcmndpos(const char *, const char); + static int8_t findCmdPos(const char *, const char); static void checkHeaters(); static void sendFileList(int8_t); static void selectFile(); @@ -475,5 +475,5 @@ namespace Anycubic { }; - extern DgusTFT Dgus; + extern DgusTFT dgus; } diff --git a/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp b/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp index 6990a23f7b72..cf87bacf3be7 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp @@ -37,17 +37,17 @@ using namespace Anycubic; namespace ExtUI { - void onStartup() { Dgus.startup(); } + void onStartup() { dgus.startup(); } - void onIdle() { Dgus.idleLoop(); } + void onIdle() { dgus.idleLoop(); } void onPrinterKilled(FSTR_P const error, FSTR_P const component) { - Dgus.printerKilled(error, component); + dgus.printerKilled(error, component); } - void onMediaInserted() { Dgus.mediaEvent(AC_media_inserted); } - void onMediaError() { Dgus.mediaEvent(AC_media_error); } - void onMediaRemoved() { Dgus.mediaEvent(AC_media_removed); } + void onMediaInserted() { dgus.mediaEvent(AC_media_inserted); } + void onMediaError() { dgus.mediaEvent(AC_media_error); } + void onMediaRemoved() { dgus.mediaEvent(AC_media_removed); } void onPlayTone(const uint16_t frequency, const uint16_t duration) { #if ENABLED(SPEAKER) @@ -55,22 +55,22 @@ namespace ExtUI { #endif } - void onPrintTimerStarted() { Dgus.timerEvent(AC_timer_started); } - void onPrintTimerPaused() { Dgus.timerEvent(AC_timer_paused); } - void onPrintTimerStopped() { Dgus.timerEvent(AC_timer_stopped); } + void onPrintTimerStarted() { dgus.timerEvent(AC_timer_started); } + void onPrintTimerPaused() { dgus.timerEvent(AC_timer_paused); } + void onPrintTimerStopped() { dgus.timerEvent(AC_timer_stopped); } void onPrintDone() {} - void onFilamentRunout(const extruder_t) { Dgus.filamentRunout(); } + void onFilamentRunout(const extruder_t) { dgus.filamentRunout(); } - void onUserConfirmRequired(const char * const msg) { Dgus.confirmationRequest(msg); } - void onStatusChanged(const char * const msg) { Dgus.statusChange(msg); } + void onUserConfirmRequired(const char * const msg) { dgus.confirmationRequest(msg); } + void onStatusChanged(const char * const msg) { dgus.statusChange(msg); } - void onHomingStart() { Dgus.HomingStart(); } - void onHomingDone() { Dgus.HomingComplete(); } + void onHomingStart() { dgus.homingStart(); } + void onHomingDone() { dgus.homingComplete(); } void onFactoryReset() { - Dgus.page_index_now = 121; - Dgus.lcd_info.audio_on = DISABLED(SPEAKER); + dgus.page_index_now = 121; + dgus.lcd_info.audio_on = DISABLED(SPEAKER); } void onStoreSettings(char *buff) { @@ -78,8 +78,8 @@ namespace ExtUI { // permanent data to be stored, it can write up to eeprom_data_size bytes // into buff. - static_assert(sizeof(Dgus.lcd_info) <= ExtUI::eeprom_data_size); - memcpy(buff, &Dgus.lcd_info, sizeof(Dgus.lcd_info)); + static_assert(sizeof(dgus.lcd_info) <= ExtUI::eeprom_data_size); + memcpy(buff, &dgus.lcd_info, sizeof(dgus.lcd_info)); } void onLoadSettings(const char *buff) { @@ -87,15 +87,15 @@ namespace ExtUI { // needs to retrieve data, it should copy up to eeprom_data_size bytes // from buff - static_assert(sizeof(Dgus.lcd_info) <= ExtUI::eeprom_data_size); - memcpy(&Dgus.lcd_info, buff, sizeof(Dgus.lcd_info)); - memcpy(&Dgus.lcd_info_back, buff, sizeof(Dgus.lcd_info_back)); + static_assert(sizeof(dgus.lcd_info) <= ExtUI::eeprom_data_size); + memcpy(&dgus.lcd_info, buff, sizeof(dgus.lcd_info)); + memcpy(&dgus.lcd_info_back, buff, sizeof(dgus.lcd_info_back)); } void onPostprocessSettings() { // Called after loading or resetting stored settings - Dgus.ParamInit(); - Dgus.PowerLoss(); + dgus.paramInit(); + dgus.powerLoss(); } void onSettingsStored(const bool success) { @@ -127,11 +127,11 @@ namespace ExtUI { #if ENABLED(POWER_LOSS_RECOVERY) // Called when power-loss is enabled/disabled - void onSetPowerLoss(const bool) { Dgus.PowerLoss(); } + void onSetPowerLoss(const bool) { dgus.powerLoss(); } // Called when power-loss state is detected void onPowerLoss() { /* handled internally */ } // Called on resume from power-loss - void onPowerLossResume() { Dgus.powerLossRecovery(); } + void onPowerLossResume() { dgus.powerLossRecovery(); } #endif #if HAS_PID_HEATING diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp index b0aeacbfdffe..8f970e094f28 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.cpp @@ -32,7 +32,7 @@ #include "../../../gcode/queue.h" #if HAS_MEDIA - bool DGUSSetupHandler::Print() { + bool DGUSSetupHandler::print() { screen.filelist.refresh(); while (!screen.filelist.isAtRootDir()) { @@ -46,7 +46,7 @@ } #endif -bool DGUSSetupHandler::PrintStatus() { +bool DGUSSetupHandler::printStatus() { if (ExtUI::isPrinting() || ExtUI::isPrintingPaused()) { return true; } @@ -55,7 +55,7 @@ bool DGUSSetupHandler::PrintStatus() { return false; } -bool DGUSSetupHandler::PrintAdjust() { +bool DGUSSetupHandler::printAdjust() { if (ExtUI::isPrinting() || ExtUI::isPrintingPaused()) { return true; } @@ -64,7 +64,7 @@ bool DGUSSetupHandler::PrintAdjust() { return false; } -bool DGUSSetupHandler::LevelingMenu() { +bool DGUSSetupHandler::levelingMenu() { ExtUI::setLevelingActive(screen.leveling_active); if (!screen.isPrinterIdle()) { @@ -87,7 +87,7 @@ bool DGUSSetupHandler::LevelingMenu() { return false; } -bool DGUSSetupHandler::LevelingManual() { +bool DGUSSetupHandler::levelingManual() { ExtUI::setLevelingActive(false); if (ExtUI::isPositionKnown()) { @@ -106,7 +106,7 @@ bool DGUSSetupHandler::LevelingManual() { return false; } -bool DGUSSetupHandler::LevelingOffset() { +bool DGUSSetupHandler::levelingOffset() { screen.offset_steps = DGUS_Data::StepSize::MMP1; if (!screen.isPrinterIdle()) { @@ -135,7 +135,7 @@ bool DGUSSetupHandler::LevelingOffset() { return false; } -bool DGUSSetupHandler::LevelingAutomatic() { +bool DGUSSetupHandler::levelingAutomatic() { if (ExtUI::getLevelingIsValid()) { screen.leveling_active = true; @@ -145,21 +145,21 @@ bool DGUSSetupHandler::LevelingAutomatic() { return true; } -bool DGUSSetupHandler::LevelingProbing() { +bool DGUSSetupHandler::levelingProbing() { screen.probing_icons[0] = 0; screen.probing_icons[1] = 0; return true; } -bool DGUSSetupHandler::Filament() { +bool DGUSSetupHandler::filament() { screen.filament_extruder = DGUS_Data::Extruder::CURRENT; screen.filament_length = DGUS_DEFAULT_FILAMENT_LEN; return true; } -bool DGUSSetupHandler::Move() { +bool DGUSSetupHandler::move() { screen.move_steps = DGUS_Data::StepSize::MM10; if (!screen.isPrinterIdle()) { @@ -170,7 +170,7 @@ bool DGUSSetupHandler::Move() { return true; } -bool DGUSSetupHandler::Gcode() { +bool DGUSSetupHandler::gcode() { ZERO(screen.gcode); if (dgus.gui_version < 0x30 || dgus.os_version < 0x21) { @@ -181,14 +181,14 @@ bool DGUSSetupHandler::Gcode() { return true; } -bool DGUSSetupHandler::PID() { +bool DGUSSetupHandler::pid() { screen.pid_heater = DGUS_Data::Heater::H0; screen.pid_temp = DGUS_PLA_TEMP_HOTEND; return true; } -bool DGUSSetupHandler::Infos() { +bool DGUSSetupHandler::infos() { screen.debug_count = 0; return true; diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.h b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.h index 10063446b770..67edfee48487 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSSetupHandler.h @@ -24,19 +24,19 @@ namespace DGUSSetupHandler { #if HAS_MEDIA - bool Print(); + bool print(); #endif - bool PrintStatus(); - bool PrintAdjust(); - bool LevelingMenu(); - bool LevelingOffset(); - bool LevelingManual(); - bool LevelingAutomatic(); - bool LevelingProbing(); - bool Filament(); - bool Move(); - bool Gcode(); - bool PID(); - bool Infos(); + bool printStatus(); + bool printAdjust(); + bool levelingMenu(); + bool levelingOffset(); + bool levelingManual(); + bool levelingAutomatic(); + bool levelingProbing(); + bool filament(); + bool move(); + bool gcode(); + bool pid(); + bool infos(); } diff --git a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.cpp b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.cpp index e01f6ab3a6bb..502ac2a6af90 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenSetup.cpp @@ -34,20 +34,20 @@ const struct DGUS_ScreenSetup screen_setup_list[] PROGMEM = { #if HAS_MEDIA - SETUP_HELPER(DGUS_ScreenID::PRINT, &DGUSSetupHandler::Print), + SETUP_HELPER(DGUS_ScreenID::PRINT, &DGUSSetupHandler::print), #endif - SETUP_HELPER(DGUS_ScreenID::PRINT_STATUS, &DGUSSetupHandler::PrintStatus), - SETUP_HELPER(DGUS_ScreenID::PRINT_ADJUST, &DGUSSetupHandler::PrintAdjust), - SETUP_HELPER(DGUS_ScreenID::LEVELING_MENU, &DGUSSetupHandler::LevelingMenu), - SETUP_HELPER(DGUS_ScreenID::LEVELING_OFFSET, &DGUSSetupHandler::LevelingOffset), - SETUP_HELPER(DGUS_ScreenID::LEVELING_MANUAL, &DGUSSetupHandler::LevelingManual), - SETUP_HELPER(DGUS_ScreenID::LEVELING_AUTOMATIC, &DGUSSetupHandler::LevelingAutomatic), - SETUP_HELPER(DGUS_ScreenID::LEVELING_PROBING, &DGUSSetupHandler::LevelingProbing), - SETUP_HELPER(DGUS_ScreenID::FILAMENT, &DGUSSetupHandler::Filament), - SETUP_HELPER(DGUS_ScreenID::MOVE, &DGUSSetupHandler::Move), - SETUP_HELPER(DGUS_ScreenID::GCODE, &DGUSSetupHandler::Gcode), - SETUP_HELPER(DGUS_ScreenID::PID, &DGUSSetupHandler::PID), - SETUP_HELPER(DGUS_ScreenID::INFOS, &DGUSSetupHandler::Infos), + SETUP_HELPER(DGUS_ScreenID::PRINT_STATUS, &DGUSSetupHandler::printStatus), + SETUP_HELPER(DGUS_ScreenID::PRINT_ADJUST, &DGUSSetupHandler::printAdjust), + SETUP_HELPER(DGUS_ScreenID::LEVELING_MENU, &DGUSSetupHandler::levelingMenu), + SETUP_HELPER(DGUS_ScreenID::LEVELING_OFFSET, &DGUSSetupHandler::levelingOffset), + SETUP_HELPER(DGUS_ScreenID::LEVELING_MANUAL, &DGUSSetupHandler::levelingManual), + SETUP_HELPER(DGUS_ScreenID::LEVELING_AUTOMATIC, &DGUSSetupHandler::levelingAutomatic), + SETUP_HELPER(DGUS_ScreenID::LEVELING_PROBING, &DGUSSetupHandler::levelingProbing), + SETUP_HELPER(DGUS_ScreenID::FILAMENT, &DGUSSetupHandler::filament), + SETUP_HELPER(DGUS_ScreenID::MOVE, &DGUSSetupHandler::move), + SETUP_HELPER(DGUS_ScreenID::GCODE, &DGUSSetupHandler::gcode), + SETUP_HELPER(DGUS_ScreenID::PID, &DGUSSetupHandler::pid), + SETUP_HELPER(DGUS_ScreenID::INFOS, &DGUSSetupHandler::infos), SETUP_HELPER((DGUS_ScreenID)0, nullptr) }; diff --git a/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp b/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp index e9e3940a0805..68e405776e9d 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp @@ -50,7 +50,7 @@ namespace ExtUI { screen.printerKilled(error, component); } - void onMediaInserted() { TERN_(HAS_MEDIA, screen.sDCardInserted()); } + void onMediaInserted() { TERN_(HAS_MEDIA, screen.sdCardInserted()); } void onMediaError() { TERN_(HAS_MEDIA, screen.sdCardError()); } void onMediaRemoved() { TERN_(HAS_MEDIA, screen.sdCardRemoved()); } diff --git a/Marlin/src/lcd/extui/mks_ui/SPI_TFT.cpp b/Marlin/src/lcd/extui/mks_ui/SPI_TFT.cpp index 42abd4bf6453..6cbe13e9fddb 100644 --- a/Marlin/src/lcd/extui/mks_ui/SPI_TFT.cpp +++ b/Marlin/src/lcd/extui/mks_ui/SPI_TFT.cpp @@ -37,29 +37,29 @@ TFT SPI_TFT; // use SPI1 for the spi tft. -void TFT::spi_init(uint8_t spiRate) { - tftio.Init(); +void TFT::spiInit(uint8_t spiRate) { + tftio.init(); } -void TFT::SetPoint(uint16_t x, uint16_t y, uint16_t point) { +void TFT::setPoint(uint16_t x, uint16_t y, uint16_t point) { if ((x > 480) || (y > 320)) return; setWindow(x, y, 1, 1); - tftio.WriteMultiple(point, (uint16_t)1); + tftio.writeMultiple(point, (uint16_t)1); } void TFT::setWindow(uint16_t x, uint16_t y, uint16_t with, uint16_t height) { tftio.set_window(x, y, (x + with - 1), (y + height - 1)); } -void TFT::LCD_init() { - tftio.InitTFT(); +void TFT::lcdInit() { + tftio.initTFT(); #if PIN_EXISTS(TFT_BACKLIGHT) OUT_WRITE(TFT_BACKLIGHT_PIN, LOW); #endif delay(100); - LCD_clear(0x0000); - LCD_Draw_Logo(); + lcdClear(0x0000); + lcdDrawLogo(); #if PIN_EXISTS(TFT_BACKLIGHT) OUT_WRITE(TFT_BACKLIGHT_PIN, HIGH); #endif @@ -68,17 +68,17 @@ void TFT::LCD_init() { #endif } -void TFT::LCD_clear(uint16_t color) { +void TFT::lcdClear(uint16_t color) { setWindow(0, 0, TFT_WIDTH, TFT_HEIGHT); - tftio.WriteMultiple(color, uint32_t(TFT_WIDTH) * uint32_t(TFT_HEIGHT)); + tftio.writeMultiple(color, uint32_t(TFT_WIDTH) * uint32_t(TFT_HEIGHT)); } -void TFT::LCD_Draw_Logo() { +void TFT::lcdDrawLogo() { #if HAS_LOGO_IN_FLASH setWindow(0, 0, TFT_WIDTH, TFT_HEIGHT); for (uint16_t i = 0; i < (TFT_HEIGHT); i++) { - Pic_Logo_Read((uint8_t *)"", (uint8_t *)bmp_public_buf, (TFT_WIDTH) * 2); - tftio.WriteSequence((uint16_t *)bmp_public_buf, TFT_WIDTH); + picLogoRead((uint8_t *)"", (uint8_t *)bmp_public_buf, (TFT_WIDTH) * 2); + tftio.writeSequence((uint16_t *)bmp_public_buf, TFT_WIDTH); } #endif } diff --git a/Marlin/src/lcd/extui/mks_ui/SPI_TFT.h b/Marlin/src/lcd/extui/mks_ui/SPI_TFT.h index 62a084fb1196..56576c8c16a5 100644 --- a/Marlin/src/lcd/extui/mks_ui/SPI_TFT.h +++ b/Marlin/src/lcd/extui/mks_ui/SPI_TFT.h @@ -27,12 +27,12 @@ class TFT { public: TFT_IO tftio; - void spi_init(uint8_t spiRate); - void SetPoint(uint16_t x, uint16_t y, uint16_t point); + void spiInit(uint8_t spiRate); + void setPoint(uint16_t x, uint16_t y, uint16_t point); void setWindow(uint16_t x, uint16_t y, uint16_t with, uint16_t height); - void LCD_init(); - void LCD_clear(uint16_t color); - void LCD_Draw_Logo(); + void lcdInit(); + void lcdClear(uint16_t color); + void lcdDrawLogo(); }; extern TFT SPI_TFT; diff --git a/Marlin/src/lcd/extui/mks_ui/draw_error_message.cpp b/Marlin/src/lcd/extui/mks_ui/draw_error_message.cpp index bc151001531f..2c9928f3879f 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_error_message.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_error_message.cpp @@ -35,7 +35,7 @@ static lv_obj_t *scr; void lv_draw_error_message(FSTR_P const fmsg) { FSTR_P fhalted = F("PRINTER HALTED"), fplease = F("Please Reset"); - SPI_TFT.LCD_clear(0x0000); + SPI_TFT.lcdClear(0x0000); if (fmsg) disp_string((TFT_WIDTH - strlen_P(FTOP(fmsg)) * 16) / 2, 100, fmsg, 0xFFFF, 0x0000); disp_string((TFT_WIDTH - strlen_P(FTOP(fhalted)) * 16) / 2, 140, fhalted, 0xFFFF, 0x0000); disp_string((TFT_WIDTH - strlen_P(FTOP(fplease)) * 16) / 2, 180, fplease, 0xFFFF, 0x0000); diff --git a/Marlin/src/lcd/extui/mks_ui/draw_touch_calibration.cpp b/Marlin/src/lcd/extui/mks_ui/draw_touch_calibration.cpp index 74902a30ddc8..dda9ee1c29a2 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_touch_calibration.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_touch_calibration.cpp @@ -47,9 +47,9 @@ enum { static void drawCross(uint16_t x, uint16_t y, uint16_t color) { SPI_TFT.tftio.set_window(x - 15, y, x + 15, y); - SPI_TFT.tftio.WriteMultiple(color, 31); + SPI_TFT.tftio.writeMultiple(color, 31); SPI_TFT.tftio.set_window(x, y - 15, x, y + 15); - SPI_TFT.tftio.WriteMultiple(color, 31); + SPI_TFT.tftio.writeMultiple(color, 31); } void lv_update_touch_calibration_screen() { diff --git a/Marlin/src/lcd/extui/mks_ui/draw_ui.cpp b/Marlin/src/lcd/extui/mks_ui/draw_ui.cpp index 708ad77fca8c..5d44090a775c 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_ui.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_ui.cpp @@ -631,7 +631,7 @@ char *creat_title_text() { p_index = (uint16_t *)(&bmp_public_buf[i]); if (*p_index == 0x0000) *p_index = LV_COLOR_BACKGROUND.full; } - SPI_TFT.tftio.WriteSequence((uint16_t*)bmp_public_buf, 200); + SPI_TFT.tftio.writeSequence((uint16_t*)bmp_public_buf, 200); #if HAS_BAK_VIEW_IN_FLASH W25QXX.init(SPI_QUARTER_SPEED); if (row < 20) W25QXX.SPI_FLASH_SectorErase(BAK_VIEW_ADDR_TFT35 + row * 4096); @@ -692,7 +692,7 @@ char *creat_title_text() { #endif SPI_TFT.setWindow(xpos_pixel, y_off * 20 + ypos_pixel, 200, 20); // 200*200 - SPI_TFT.tftio.WriteSequence((uint16_t*)(bmp_public_buf), DEFAULT_VIEW_MAX_SIZE / 20); + SPI_TFT.tftio.writeSequence((uint16_t*)(bmp_public_buf), DEFAULT_VIEW_MAX_SIZE / 20); y_off++; } diff --git a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp index 53f31b1c4042..c46a532d9a93 100644 --- a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp +++ b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp @@ -648,7 +648,7 @@ void disp_char_1624(uint16_t x, uint16_t y, uint8_t c, uint16_t charColor, uint1 for (uint16_t i = 0; i < 24; i++) { const uint16_t tmp_char = pgm_read_word(&ASCII_Table_16x24[((c - 0x20) * 24) + i]); for (uint16_t j = 0; j < 16; j++) - SPI_TFT.SetPoint(x + j, y + i, ((tmp_char >> j) & 0x01) ? charColor : bkColor); + SPI_TFT.setPoint(x + j, y + i, ((tmp_char >> j) & 0x01) ? charColor : bkColor); } } @@ -664,7 +664,7 @@ void disp_string(uint16_t x, uint16_t y, FSTR_P const fstr, uint16_t charColor, } void disp_assets_update() { - SPI_TFT.LCD_clear(0x0000); + SPI_TFT.lcdClear(0x0000); disp_string(100, 140, F("Assets Updating..."), 0xFFFF, 0x0000); } diff --git a/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp b/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp index 7c0ec802c306..06d47d949bf2 100644 --- a/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp +++ b/Marlin/src/lcd/extui/mks_ui/pic_manager.cpp @@ -291,7 +291,7 @@ void spiFlashErase_PIC() { uint32_t LogoWrite_Addroffset = 0; -uint8_t Pic_Logo_Write(uint8_t *LogoName, uint8_t *Logo_Wbuff, uint32_t LogoWriteSize) { +uint8_t picLogoWrite(uint8_t *LogoName, uint8_t *Logo_Wbuff, uint32_t LogoWriteSize) { if (LogoWriteSize <= 0) return 0; W25QXX.SPI_FLASH_BufferWrite(Logo_Wbuff, PIC_LOGO_ADDR + LogoWrite_Addroffset, LogoWriteSize); @@ -308,7 +308,7 @@ uint8_t Pic_Logo_Write(uint8_t *LogoName, uint8_t *Logo_Wbuff, uint32_t LogoWrit } uint32_t TitleLogoWrite_Addroffset = 0; -uint8_t Pic_TitleLogo_Write(uint8_t *TitleLogoName, uint8_t *TitleLogo_Wbuff, uint32_t TitleLogoWriteSize) { +uint8_t picTitleLogoWrite(uint8_t *TitleLogoName, uint8_t *TitleLogo_Wbuff, uint32_t TitleLogoWriteSize) { if (TitleLogoWriteSize <= 0) return 0; if ((DeviceCode == 0x9488) || (DeviceCode == 0x5761)) @@ -329,15 +329,15 @@ void default_view_Write(uint8_t *default_view__Rbuff, uint32_t default_view_Writ default_view_addroffset_r = 0; } -uint32_t Pic_Info_Write(uint8_t *P_name, uint32_t P_size) { +uint32_t picInfoWrite(uint8_t *P_name, uint32_t P_size) { uint8_t pic_counter = 0; - uint32_t Pic_SaveAddr; + uint32_t picSaveAddr; uint32_t Pic_SizeSaveAddr; - uint32_t Pic_NameSaveAddr; - uint8_t Pname_temp; + uint32_t picNameSaveAddr; + uint8_t pNameTemp; uint32_t i, j; uint32_t name_len = 0; - uint32_t SaveName_len = 0; + uint32_t saveNameLen = 0; union union32 size_tmp; W25QXX.SPI_FLASH_BufferRead(&pic_counter, PIC_COUNTER_ADDR, 1); @@ -346,15 +346,15 @@ uint32_t Pic_Info_Write(uint8_t *P_name, uint32_t P_size) { pic_counter = 0; if ((DeviceCode == 0x9488) || (DeviceCode == 0x5761)) - Pic_SaveAddr = PIC_DATA_ADDR_TFT35 + pic_counter * PER_PIC_MAX_SPACE_TFT35; + picSaveAddr = PIC_DATA_ADDR_TFT35 + pic_counter * PER_PIC_MAX_SPACE_TFT35; else - Pic_SaveAddr = PIC_DATA_ADDR_TFT32 + pic_counter * PER_PIC_MAX_SPACE_TFT32; + picSaveAddr = PIC_DATA_ADDR_TFT32 + pic_counter * PER_PIC_MAX_SPACE_TFT32; for (j = 0; j < pic_counter; j++) { do { - W25QXX.SPI_FLASH_BufferRead(&Pname_temp, PIC_NAME_ADDR + SaveName_len, 1); - SaveName_len++; - } while (Pname_temp != '\0'); + W25QXX.SPI_FLASH_BufferRead(&pNameTemp, PIC_NAME_ADDR + saveNameLen, 1); + saveNameLen++; + } while (pNameTemp != '\0'); } i = 0; while ((*(P_name + i) != '\0')) { @@ -362,8 +362,8 @@ uint32_t Pic_Info_Write(uint8_t *P_name, uint32_t P_size) { name_len++; } - Pic_NameSaveAddr = PIC_NAME_ADDR + SaveName_len; - W25QXX.SPI_FLASH_BufferWrite(P_name, Pic_NameSaveAddr, name_len + 1); + picNameSaveAddr = PIC_NAME_ADDR + saveNameLen; + W25QXX.SPI_FLASH_BufferWrite(P_name, picNameSaveAddr, name_len + 1); Pic_SizeSaveAddr = PIC_SIZE_ADDR + 4 * pic_counter; size_tmp.dwords = P_size; W25QXX.SPI_FLASH_BufferWrite(size_tmp.bytes, Pic_SizeSaveAddr, 4); @@ -372,7 +372,7 @@ uint32_t Pic_Info_Write(uint8_t *P_name, uint32_t P_size) { W25QXX.SPI_FLASH_SectorErase(PIC_COUNTER_ADDR); W25QXX.SPI_FLASH_BufferWrite(&pic_counter, PIC_COUNTER_ADDR, 1); - return Pic_SaveAddr; + return picSaveAddr; } #if HAS_MEDIA @@ -430,14 +430,14 @@ uint32_t Pic_Info_Write(uint8_t *P_name, uint32_t P_size) { do { hal.watchdog_refresh(); pbr = file.read(public_buf, BMP_WRITE_BUF_LEN); - Pic_Logo_Write((uint8_t*)fn, public_buf, pbr); + picLogoWrite((uint8_t*)fn, public_buf, pbr); } while (pbr >= BMP_WRITE_BUF_LEN); } else if (assetType == ASSET_TYPE_TITLE_LOGO) { do { hal.watchdog_refresh(); pbr = file.read(public_buf, BMP_WRITE_BUF_LEN); - Pic_TitleLogo_Write((uint8_t*)fn, public_buf, pbr); + picTitleLogoWrite((uint8_t*)fn, public_buf, pbr); } while (pbr >= BMP_WRITE_BUF_LEN); } else if (assetType == ASSET_TYPE_G_PREVIEW) { @@ -448,7 +448,7 @@ uint32_t Pic_Info_Write(uint8_t *P_name, uint32_t P_size) { } while (pbr >= BMP_WRITE_BUF_LEN); } else if (assetType == ASSET_TYPE_ICON) { - Pic_Write_Addr = Pic_Info_Write((uint8_t*)fn, pfileSize); + Pic_Write_Addr = picInfoWrite((uint8_t*)fn, pfileSize); SPIFlash.beginWrite(Pic_Write_Addr); #if HAS_SPI_FLASH_COMPRESSION do { @@ -550,7 +550,7 @@ uint32_t Pic_Info_Write(uint8_t *P_name, uint32_t P_size) { #endif // HAS_MEDIA -void Pic_Read(uint8_t *Pname, uint8_t *P_Rbuff) { +void picRead(uint8_t *Pname, uint8_t *P_Rbuff) { uint8_t i, j; uint8_t Pic_cnt; uint32_t tmp_cnt = 0; @@ -596,7 +596,7 @@ void lv_pic_test(uint8_t *P_Rbuff, uint32_t addr, uint32_t size) { #endif uint32_t logo_addroffset = 0; -void Pic_Logo_Read(uint8_t *LogoName, uint8_t *Logo_Rbuff, uint32_t LogoReadsize) { +void picLogoRead(uint8_t *LogoName, uint8_t *Logo_Rbuff, uint32_t LogoReadsize) { W25QXX.init(SPI_QUARTER_SPEED); W25QXX.SPI_FLASH_BufferRead(Logo_Rbuff, PIC_LOGO_ADDR + logo_addroffset, LogoReadsize); logo_addroffset += LogoReadsize; diff --git a/Marlin/src/lcd/extui/mks_ui/pic_manager.h b/Marlin/src/lcd/extui/mks_ui/pic_manager.h index cdcc5b76b8a9..1483b96461e4 100644 --- a/Marlin/src/lcd/extui/mks_ui/pic_manager.h +++ b/Marlin/src/lcd/extui/mks_ui/pic_manager.h @@ -154,8 +154,8 @@ typedef struct pic_msg PIC_MSG; #define PIC_SIZE_xM 6 #define FONT_SIZE_xM 2 -void Pic_Read(uint8_t *Pname, uint8_t *P_Rbuff); -void Pic_Logo_Read(uint8_t *LogoName, uint8_t *Logo_Rbuff, uint32_t LogoReadsize); +void picRead(uint8_t *Pname, uint8_t *P_Rbuff); +void picLogoRead(uint8_t *LogoName, uint8_t *Logo_Rbuff, uint32_t LogoReadsize); void lv_pic_test(uint8_t *P_Rbuff, uint32_t addr, uint32_t size); uint32_t lv_get_pic_addr(uint8_t *Pname); void get_spi_flash_data(const char *rec_buf, int offset, int size); diff --git a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp index 5dfb02bfaca4..09b9c7a53e19 100644 --- a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp +++ b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp @@ -129,8 +129,8 @@ void tft_lvgl_init() { hal.watchdog_refresh(); // LVGL init takes time // Init TFT first! - SPI_TFT.spi_init(SPI_FULL_SPEED); - SPI_TFT.LCD_init(); + SPI_TFT.spiInit(SPI_FULL_SPEED); + SPI_TFT.lcdInit(); hal.watchdog_refresh(); // LVGL init takes time @@ -162,7 +162,7 @@ void tft_lvgl_init() { TERN_(MKS_TEST, mks_test_get()); #endif - touch.Init(); + touch.init(); lv_init(); @@ -264,7 +264,7 @@ void dmc_tc_handler(struct __DMA_HandleTypeDef * hdma) { #if ENABLED(USE_SPI_DMA_TC) lv_disp_flush_ready(disp_drv_p); lcd_dma_trans_lock = false; - TFT_SPI::Abort(); + TFT_SPI::abort(); #endif } @@ -278,10 +278,10 @@ void my_disp_flush(lv_disp_drv_t * disp, const lv_area_t * area, lv_color_t * co #if ENABLED(USE_SPI_DMA_TC) lcd_dma_trans_lock = true; - SPI_TFT.tftio.WriteSequenceIT((uint16_t*)color_p, width * height); + SPI_TFT.tftio.writeSequenceIT((uint16_t*)color_p, width * height); TFT_SPI::DMAtx.XferCpltCallback = dmc_tc_handler; #else - SPI_TFT.tftio.WriteSequence((uint16_t*)color_p, width * height); + SPI_TFT.tftio.writeSequence((uint16_t*)color_p, width * height); lv_disp_flush_ready(disp_drv_p); // Indicate you are ready with the flushing #endif @@ -297,7 +297,7 @@ void lv_fill_rect(lv_coord_t x1, lv_coord_t y1, lv_coord_t x2, lv_coord_t y2, lv width = x2 - x1 + 1; height = y2 - y1 + 1; SPI_TFT.setWindow((uint16_t)x1, (uint16_t)y1, width, height); - SPI_TFT.tftio.WriteMultiple(bk_color.full, width * height); + SPI_TFT.tftio.writeMultiple(bk_color.full, width * height); W25QXX.init(SPI_QUARTER_SPEED); } diff --git a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.h b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.h index a71bdc9db766..80335b7370f7 100644 --- a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.h +++ b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.h @@ -40,7 +40,7 @@ void my_disp_flush(lv_disp_drv_t * disp, const lv_area_t * area, lv_color_t * co bool my_touchpad_read(lv_indev_drv_t * indev_driver, lv_indev_data_t * data); bool my_mousewheel_read(lv_indev_drv_t * indev_drv, lv_indev_data_t * data); -void LCD_Clear(uint16_t Color); +void LCD_Clear(uint16_t color); void tft_set_point(uint16_t x, uint16_t y, uint16_t point); void LCD_setWindowArea(uint16_t StartX, uint16_t StartY, uint16_t width, uint16_t height); void LCD_WriteRAM_Prepare(); diff --git a/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp b/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp index f3967a3ec38a..122712e9e114 100644 --- a/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp +++ b/Marlin/src/lcd/extui/mks_ui/wifi_module.cpp @@ -55,7 +55,7 @@ #define WIFI_IO1_SET() WRITE(WIFI_IO1_PIN, HIGH); #define WIFI_IO1_RESET() WRITE(WIFI_IO1_PIN, LOW); -uint8_t Explore_Disk(const char * const path, const uint8_t recu_level, const bool with_longnames); +uint8_t exploreDisk(const char * const path, const uint8_t recu_level, const bool with_longnames); extern uint8_t commands_in_queue; extern uint8_t sel_id; @@ -723,7 +723,7 @@ void get_file_list(const char * const path, const bool with_longnames) { else if (gCfgItems.fileSysType == FILE_SYS_USB) { // udisk } - Explore_Disk(path, 0, with_longnames); + exploreDisk(path, 0, with_longnames); } char wait_ip_back_flag = 0; @@ -818,7 +818,7 @@ static int cut_msg_head(uint8_t * const msg, const uint16_t msgLen, uint16_t cut return msgLen - cutLen; } -uint8_t Explore_Disk(const char * const path, const uint8_t recu_level, const bool with_longnames) { +uint8_t exploreDisk(const char * const path, const uint8_t recu_level, const bool with_longnames) { char Fstream[200]; if (!path) return 0; @@ -1805,7 +1805,7 @@ void stopEspTransfer() { W25QXX.init(SPI_QUARTER_SPEED); // ?? Workaround for SPI / Servo issues ?? - TERN_(HAS_TFT_LVGL_UI_SPI, SPI_TFT.spi_init(SPI_FULL_SPEED)); + TERN_(HAS_TFT_LVGL_UI_SPI, SPI_TFT.spiInit(SPI_FULL_SPEED)); TERN_(HAS_SERVOS, servo_init()); TERN_(HAS_Z_SERVO_PROBE, probe.servo_probe_init()); diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index 8d27ee8f7e26..b56d21ae406a 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -1179,7 +1179,7 @@ void MarlinUI::init() { run_current_screen(); // Apply all DWIN drawing after processing - TERN_(IS_DWIN_MARLINUI, DWIN_UpdateLCD()); + TERN_(IS_DWIN_MARLINUI, dwinUpdateLCD()); #endif @@ -1609,9 +1609,9 @@ void MarlinUI::init() { #endif TERN_(EXTENSIBLE_UI, ExtUI::onStatusChanged(status_message)); - TERN_(DWIN_CREALITY_LCD, DWIN_StatusChanged(status_message)); + TERN_(DWIN_CREALITY_LCD, dwinStatusChanged(status_message)); TERN_(DWIN_LCD_PROUI, DWIN_CheckStatusMessage()); - TERN_(DWIN_CREALITY_LCD_JYERSUI, CrealityDWIN.Update_Status(status_message)); + TERN_(DWIN_CREALITY_LCD_JYERSUI, crealityDWIN.updateStatus(status_message)); } #if ENABLED(STATUS_MESSAGE_SCROLLING) diff --git a/Marlin/src/lcd/tft/canvas.cpp b/Marlin/src/lcd/tft/canvas.cpp index ac3a2d76c389..04817570e110 100644 --- a/Marlin/src/lcd/tft/canvas.cpp +++ b/Marlin/src/lcd/tft/canvas.cpp @@ -82,16 +82,16 @@ void Canvas::addText(uint16_t x, uint16_t y, uint16_t color, uint16_t *string, u } for (uint16_t i = 0 ; *(string + i) ; i++) { glyph_t *pGlyph = glyph(string + i); - if (stringWidth + pGlyph->BBXWidth > maxWidth) break; + if (stringWidth + pGlyph->bbxWidth > maxWidth) break; switch (getFontType()) { case FONT_MARLIN_GLYPHS_1BPP: - addImage(x + stringWidth + pGlyph->BBXOffsetX, y + getFontAscent() - pGlyph->BBXHeight - pGlyph->BBXOffsetY, pGlyph->BBXWidth, pGlyph->BBXHeight, GREYSCALE1, ((uint8_t *)pGlyph) + sizeof(glyph_t), &color); + addImage(x + stringWidth + pGlyph->bbxOffsetX, y + getFontAscent() - pGlyph->bbxHeight - pGlyph->bbxOffsetY, pGlyph->bbxWidth, pGlyph->bbxHeight, GREYSCALE1, ((uint8_t *)pGlyph) + sizeof(glyph_t), &color); break; case FONT_MARLIN_GLYPHS_2BPP: - addImage(x + stringWidth + pGlyph->BBXOffsetX, y + getFontAscent() - pGlyph->BBXHeight - pGlyph->BBXOffsetY, pGlyph->BBXWidth, pGlyph->BBXHeight, GREYSCALE2, ((uint8_t *)pGlyph) + sizeof(glyph_t), colors); + addImage(x + stringWidth + pGlyph->bbxOffsetX, y + getFontAscent() - pGlyph->bbxHeight - pGlyph->bbxOffsetY, pGlyph->bbxWidth, pGlyph->bbxHeight, GREYSCALE2, ((uint8_t *)pGlyph) + sizeof(glyph_t), colors); break; } - stringWidth += pGlyph->DWidth; + stringWidth += pGlyph->dWidth; } } diff --git a/Marlin/src/lcd/tft/tft.cpp b/Marlin/src/lcd/tft/tft.cpp index fa3c2c241f79..868a89d2dca4 100644 --- a/Marlin/src/lcd/tft/tft.cpp +++ b/Marlin/src/lcd/tft/tft.cpp @@ -33,8 +33,8 @@ uint16_t TFT::buffer[]; void TFT::init() { - io.Init(); - io.InitTFT(); + io.init(); + io.initTFT(); } TFT tft; diff --git a/Marlin/src/lcd/tft/tft.h b/Marlin/src/lcd/tft/tft.h index 7dc3996148ab..4a1d1d83044e 100644 --- a/Marlin/src/lcd/tft/tft.h +++ b/Marlin/src/lcd/tft/tft.h @@ -69,9 +69,9 @@ class TFT { static void add_glyphs(const uint8_t *Font) { string.add_glyphs(Font); } static bool is_busy() { return io.isBusy(); } - static void abort() { io.Abort(); } - static void write_multiple(uint16_t Data, uint16_t Count) { io.WriteMultipleDMA(Data, Count); } - static void write_sequence(uint16_t *Data, uint16_t Count) { io.WriteSequenceDMA(Data, Count); } + static void abort() { io.abort(); } + static void write_multiple(uint16_t data, uint16_t count) { io.WriteMultipleDMA(data, count); } + static void write_sequence(uint16_t *data, uint16_t count) { io.writeSequenceDMA(data, count); } static void set_window(uint16_t Xmin, uint16_t Ymin, uint16_t Xmax, uint16_t Ymax) { io.set_window(Xmin, Ymin, Xmax, Ymax); } static void fill(uint16_t x, uint16_t y, uint16_t width, uint16_t height, uint16_t color) { queue.fill(x, y, width, height, color); } diff --git a/Marlin/src/lcd/tft/tft_string.cpp b/Marlin/src/lcd/tft/tft_string.cpp index 19ea5b2079e9..6ee1bab6d3f7 100644 --- a/Marlin/src/lcd/tft/tft_string.cpp +++ b/Marlin/src/lcd/tft/tft_string.cpp @@ -59,11 +59,11 @@ void TFT_String::set_font(const uint8_t *font) { #endif DEBUG_ECHOLNPGM("Format: ", ((unifont_t *)font_header)->Format); - DEBUG_ECHOLNPGM("CapitalAHeight: ", ((unifont_t *)font_header)->CapitalAHeight); - DEBUG_ECHOLNPGM("FontStartEncoding: ", ((unifont_t *)font_header)->FontStartEncoding); - DEBUG_ECHOLNPGM("FontEndEncoding: ", ((unifont_t *)font_header)->FontEndEncoding); - DEBUG_ECHOLNPGM("FontAscent: ", ((unifont_t *)font_header)->FontAscent); - DEBUG_ECHOLNPGM("FontDescent: ", ((unifont_t *)font_header)->FontDescent); + DEBUG_ECHOLNPGM("capitalAHeight: ", ((unifont_t *)font_header)->capitalAHeight); + DEBUG_ECHOLNPGM("fontStartEncoding: ", ((unifont_t *)font_header)->fontStartEncoding); + DEBUG_ECHOLNPGM("fontEndEncoding: ", ((unifont_t *)font_header)->fontEndEncoding); + DEBUG_ECHOLNPGM("fontAscent: ", ((unifont_t *)font_header)->fontAscent); + DEBUG_ECHOLNPGM("fontDescent: ", ((unifont_t *)font_header)->fontDescent); add_glyphs(font); } @@ -72,15 +72,15 @@ void TFT_String::add_glyphs(const uint8_t *font) { uint16_t unicode, fontStartEncoding, fontEndEncoding; uint8_t *pointer; - fontStartEncoding = ((unifont_t *)font)->FontStartEncoding; - fontEndEncoding = ((unifont_t *)font)->FontEndEncoding; + fontStartEncoding = ((unifont_t *)font)->fontStartEncoding; + fontEndEncoding = ((unifont_t *)font)->fontEndEncoding; pointer = (uint8_t *)font + sizeof(unifont_t); if (fontEndEncoding < 0x0100) { // base and symbol fonts for (unicode = fontStartEncoding; unicode <= fontEndEncoding; unicode++) { if (*pointer != NO_GLYPH) { glyphs[unicode] = (glyph_t *)pointer; - pointer += sizeof(glyph_t) + ((glyph_t *)pointer)->DataSize; + pointer += sizeof(glyph_t) + ((glyph_t *)pointer)->dataSize; } else pointer++; @@ -98,7 +98,7 @@ void TFT_String::add_glyphs(const uint8_t *font) { } if (*pointer != NO_GLYPH) { glyphs_extra[unicode - fontStartEncoding] = pointer; - pointer += sizeof(glyph_t) + ((glyph_t *)pointer)->DataSize; + pointer += sizeof(glyph_t) + ((glyph_t *)pointer)->dataSize; } else pointer++; @@ -112,7 +112,7 @@ void TFT_String::add_glyphs(const uint8_t *font) { } glyphs_extra[i] = pointer; unicode = *(uint16_t *) pointer; - pointer += sizeof(uniglyph_t) + ((uniglyph_t *)pointer)->glyph.DataSize; + pointer += sizeof(uniglyph_t) + ((uniglyph_t *)pointer)->glyph.dataSize; extra_count = i + 1; if (unicode == fontEndEncoding) break; @@ -127,11 +127,11 @@ glyph_t *TFT_String::glyph(uint16_t character) { if (character < 0x00ff) return glyphs[character] ?: glyphs['?']; /* Use '?' for unknown glyphs */ #if EXTRA_GLYPHS - if (font_header_extra == nullptr || character < font_header_extra->FontStartEncoding || character > font_header_extra->FontEndEncoding) return glyphs['?']; + if (font_header_extra == nullptr || character < font_header_extra->fontStartEncoding || character > font_header_extra->fontEndEncoding) return glyphs['?']; if ((font_header_extra->Format & 0xF0) == FONT_MARLIN_GLYPHS) { - if (glyphs_extra[character - font_header_extra->FontStartEncoding]) - return (glyph_t *)glyphs_extra[character - font_header_extra->FontStartEncoding]; + if (glyphs_extra[character - font_header_extra->fontStartEncoding]) + return (glyph_t *)glyphs_extra[character - font_header_extra->fontStartEncoding]; } else { #if 0 @@ -232,7 +232,7 @@ void TFT_String::add_character(const uint16_t character) { if (length < MAX_STRING_LENGTH) { data[length] = character; length++; - span += glyph(character)->DWidth; + span += glyph(character)->dWidth; } } @@ -240,7 +240,7 @@ void TFT_String::rtrim(const uint16_t character) { while (length) { if (data[length - 1] == 0x20 || data[length - 1] == character) { length--; - span -= glyph(data[length])->DWidth; + span -= glyph(data[length])->dWidth; eol(); } else @@ -251,7 +251,7 @@ void TFT_String::rtrim(const uint16_t character) { void TFT_String::ltrim(const uint16_t character) { uint16_t i, j; for (i = 0; (i < length) && (data[i] == 0x20 || data[i] == character); i++) { - span -= glyph(data[i])->DWidth; + span -= glyph(data[i])->dWidth; } if (i == 0) return; for (j = 0; i < length; data[j++] = data[i++]); diff --git a/Marlin/src/lcd/tft/tft_string.h b/Marlin/src/lcd/tft/tft_string.h index 3df6afe49bc0..1284d282f134 100644 --- a/Marlin/src/lcd/tft/tft_string.h +++ b/Marlin/src/lcd/tft/tft_string.h @@ -29,7 +29,7 @@ /* * Marlin fonts with optional antialiasing. Fonts use unifont_t font header and glyph_t glyphs headers. - * Number of glyphs (FontEndEncoding - FontStartEncoding) can not exceed 256 (TBD). + * Number of glyphs (fontEndEncoding - fontStartEncoding) can not exceed 256 (TBD). * Some glyphs may be left undefined with NO_GLYPH */ #define FONT_MARLIN_GLYPHS 0x80 @@ -44,7 +44,7 @@ * * IMPORTANT NOTES: * - glyphs fast search method REQUIRES glyphs to be ordered by unicode - * - last glyph's code MUST be FontEndEncoding + * - last glyph's code MUST be fontEndEncoding */ #define FONT_MARLIN_HIEROGLYPHS 0xA0 #define FONT_MARLIN_HIEROGLYPHS_1BPP 0xA1 @@ -146,22 +146,22 @@ // TFT font with unicode support typedef struct __attribute__((__packed__)) { - uint8_t Format; - uint8_t CapitalAHeight; // Not really needed, but helps with data alingment for uint16_t variables - uint16_t FontStartEncoding; - uint16_t FontEndEncoding; - int8_t FontAscent; - int8_t FontDescent; + uint8_t format; + uint8_t capitalAHeight; // Not really needed, but helps with data alignment for uint16_t variables + uint16_t fontStartEncoding; + uint16_t fontEndEncoding; + int8_t fontAscent; + int8_t fontDescent; } unifont_t; // TFT glyphs typedef struct __attribute__((__packed__)) { - uint8_t BBXWidth; - uint8_t BBXHeight; - uint8_t DataSize; - int8_t DWidth; - int8_t BBXOffsetX; - int8_t BBXOffsetY; + uint8_t bbxWidth; + uint8_t bbxHeight; + uint8_t dataSize; + int8_t dWidth; + int8_t bbxOffsetX; + int8_t bbxOffsetY; } glyph_t; // unicode-prepended TFT glyphs @@ -194,9 +194,9 @@ class TFT_String { static void set_font(const uint8_t *font); static void add_glyphs(const uint8_t *font); - static uint8_t font_type() { return font_header->Format; }; - static uint16_t font_ascent() { return font_header->FontAscent; } - static uint16_t font_height() { return font_header->FontAscent - font_header->FontDescent; } + static uint8_t font_type() { return font_header->format; }; + static uint16_t font_ascent() { return font_header->fontAscent; } + static uint16_t font_height() { return font_header->fontAscent - font_header->fontDescent; } static glyph_t *glyph(uint16_t character); static glyph_t *glyph(uint16_t *character) { return glyph(*character); } @@ -264,7 +264,7 @@ class TFT_String { static uint16_t *string() { return data; } static uint16_t width() { return span; } static uint16_t center(const uint16_t width) { return span > width ? 0 : (width - span) / 2; } - static uint16_t vcenter(const uint16_t height) { return (height + font_header->CapitalAHeight + 1) / 2 > font_header->FontAscent ? (height + font_header->CapitalAHeight + 1) / 2 - font_header->FontAscent : 0 ; } + static uint16_t vcenter(const uint16_t height) { return (height + font_header->capitalAHeight + 1) / 2 > font_header->fontAscent ? (height + font_header->capitalAHeight + 1) / 2 - font_header->fontAscent : 0 ; } }; extern TFT_String tft_string; diff --git a/Marlin/src/lcd/tft/touch.cpp b/Marlin/src/lcd/tft/touch.cpp index 1765ae0a8e09..443a74480d41 100644 --- a/Marlin/src/lcd/tft/touch.cpp +++ b/Marlin/src/lcd/tft/touch.cpp @@ -58,7 +58,7 @@ TouchControlType Touch::touch_control_type = NONE; void Touch::init() { TERN_(TOUCH_SCREEN_CALIBRATION, touch_calibration.calibration_reset()); reset(); - io.Init(); + io.init(); TERN_(HAS_TOUCH_SLEEP, wakeUp()); enable(); } diff --git a/Marlin/src/lcd/tft/ui_1024x600.cpp b/Marlin/src/lcd/tft/ui_1024x600.cpp index 8780cd013e03..84495fbaba98 100644 --- a/Marlin/src/lcd/tft/ui_1024x600.cpp +++ b/Marlin/src/lcd/tft/ui_1024x600.cpp @@ -118,27 +118,26 @@ void MarlinUI::draw_kill_screen() { tft.queue.sync(); } -void draw_heater_status(uint16_t x, uint16_t y, const int8_t Heater) { +void draw_heater_status(uint16_t x, uint16_t y, const int8_t heater) { MarlinImage image = imgHotEnd; - uint16_t Color; celsius_t currentTemperature, targetTemperature; - if (Heater >= 0) { // HotEnd + if (heater >= 0) { // HotEnd #if HAS_EXTRUDERS - currentTemperature = thermalManager.wholeDegHotend(Heater); - targetTemperature = thermalManager.degTargetHotend(Heater); + currentTemperature = thermalManager.wholeDegHotend(heater); + targetTemperature = thermalManager.degTargetHotend(heater); #else return; #endif } #if HAS_HEATED_BED - else if (Heater == H_BED) { + else if (heater == H_BED) { currentTemperature = thermalManager.wholeDegBed(); targetTemperature = thermalManager.degTargetBed(); } #endif #if HAS_TEMP_CHAMBER - else if (Heater == H_CHAMBER) { + else if (heater == H_CHAMBER) { currentTemperature = thermalManager.wholeDegChamber(); #if HAS_HEATED_CHAMBER targetTemperature = thermalManager.degTargetChamber(); @@ -148,54 +147,54 @@ void draw_heater_status(uint16_t x, uint16_t y, const int8_t Heater) { } #endif #if HAS_TEMP_COOLER - else if (Heater == H_COOLER) { + else if (heater == H_COOLER) { currentTemperature = thermalManager.wholeDegCooler(); targetTemperature = TERN(HAS_COOLER, thermalManager.degTargetCooler(), ABSOLUTE_ZERO); } #endif else return; - TERN_(TOUCH_SCREEN, if (targetTemperature >= 0) touch.add_control(HEATER, x, y, 80, 120, Heater)); + TERN_(TOUCH_SCREEN, if (targetTemperature >= 0) touch.add_control(HEATER, x, y, 80, 120, heater)); tft.canvas(x, y, 80, 120); tft.set_background(COLOR_BACKGROUND); - Color = currentTemperature < 0 ? COLOR_INACTIVE : COLOR_COLD; + uint16_t color = currentTemperature < 0 ? COLOR_INACTIVE : COLOR_COLD; - if (Heater >= 0) { // HotEnd - if (currentTemperature >= 50) Color = COLOR_HOTEND; + if (heater >= 0) { // HotEnd + if (currentTemperature >= 50) color = COLOR_HOTEND; } #if HAS_HEATED_BED - else if (Heater == H_BED) { - if (currentTemperature >= 50) Color = COLOR_HEATED_BED; + else if (heater == H_BED) { + if (currentTemperature >= 50) color = COLOR_HEATED_BED; image = targetTemperature > 0 ? imgBedHeated : imgBed; } #endif #if HAS_TEMP_CHAMBER - else if (Heater == H_CHAMBER) { - if (currentTemperature >= 50) Color = COLOR_CHAMBER; + else if (heater == H_CHAMBER) { + if (currentTemperature >= 50) color = COLOR_CHAMBER; image = targetTemperature > 0 ? imgChamberHeated : imgChamber; } #endif #if HAS_TEMP_COOLER - else if (Heater == H_COOLER) { - if (currentTemperature <= 26) Color = COLOR_COLD; - if (currentTemperature > 26) Color = COLOR_RED; + else if (heater == H_COOLER) { + if (currentTemperature <= 26) color = COLOR_COLD; + if (currentTemperature > 26) color = COLOR_RED; image = targetTemperature > 26 ? imgCoolerHot : imgCooler; } #endif - tft.add_image(8, 28, image, Color); + tft.add_image(8, 28, image, color); tft_string.set(i16tostr3rj(currentTemperature)); tft_string.add(LCD_STR_DEGREE); tft_string.trim(); - tft.add_text(tft_string.center(80) + 2, 82, Color, tft_string); + tft.add_text(tft_string.center(80) + 2, 82, color, tft_string); if (targetTemperature >= 0) { tft_string.set(i16tostr3rj(targetTemperature)); tft_string.add(LCD_STR_DEGREE); tft_string.trim(); - tft.add_text(tft_string.center(80) + 2, 8, Color, tft_string); + tft.add_text(tft_string.center(80) + 2, 8, color, tft_string); } } diff --git a/Marlin/src/lcd/tft/ui_320x240.cpp b/Marlin/src/lcd/tft/ui_320x240.cpp index 772d7d959093..8409b550a145 100644 --- a/Marlin/src/lcd/tft/ui_320x240.cpp +++ b/Marlin/src/lcd/tft/ui_320x240.cpp @@ -120,27 +120,26 @@ void MarlinUI::draw_kill_screen() { tft.queue.sync(); } -void draw_heater_status(uint16_t x, uint16_t y, const int8_t Heater) { +void draw_heater_status(uint16_t x, uint16_t y, const int8_t heater) { MarlinImage image = imgHotEnd; - uint16_t Color; celsius_t currentTemperature, targetTemperature; - if (Heater >= 0) { // HotEnd + if (heater >= 0) { // HotEnd #if HAS_EXTRUDERS - currentTemperature = thermalManager.wholeDegHotend(Heater); - targetTemperature = thermalManager.degTargetHotend(Heater); + currentTemperature = thermalManager.wholeDegHotend(heater); + targetTemperature = thermalManager.degTargetHotend(heater); #else return; #endif } #if HAS_HEATED_BED - else if (Heater == H_BED) { + else if (heater == H_BED) { currentTemperature = thermalManager.wholeDegBed(); targetTemperature = thermalManager.degTargetBed(); } #endif #if HAS_TEMP_CHAMBER - else if (Heater == H_CHAMBER) { + else if (heater == H_CHAMBER) { currentTemperature = thermalManager.wholeDegChamber(); #if HAS_HEATED_CHAMBER targetTemperature = thermalManager.degTargetChamber(); @@ -150,54 +149,54 @@ void draw_heater_status(uint16_t x, uint16_t y, const int8_t Heater) { } #endif #if HAS_TEMP_COOLER - else if (Heater == H_COOLER) { + else if (heater == H_COOLER) { currentTemperature = thermalManager.wholeDegCooler(); targetTemperature = TERN(HAS_COOLER, thermalManager.degTargetCooler(), ABSOLUTE_ZERO); } #endif else return; - TERN_(TOUCH_SCREEN, if (targetTemperature >= 0) touch.add_control(HEATER, x, y, 64, 100, Heater)); + TERN_(TOUCH_SCREEN, if (targetTemperature >= 0) touch.add_control(HEATER, x, y, 64, 100, heater)); tft.canvas(x, y, 64, 100); tft.set_background(COLOR_BACKGROUND); - Color = currentTemperature < 0 ? COLOR_INACTIVE : COLOR_COLD; + uint16_t color = currentTemperature < 0 ? COLOR_INACTIVE : COLOR_COLD; - if (Heater >= 0) { // HotEnd - if (currentTemperature >= 50) Color = COLOR_HOTEND; + if (heater >= 0) { // HotEnd + if (currentTemperature >= 50) color = COLOR_HOTEND; } #if HAS_HEATED_BED - else if (Heater == H_BED) { - if (currentTemperature >= 50) Color = COLOR_HEATED_BED; + else if (heater == H_BED) { + if (currentTemperature >= 50) color = COLOR_HEATED_BED; image = targetTemperature > 0 ? imgBedHeated : imgBed; } #endif #if HAS_TEMP_CHAMBER - else if (Heater == H_CHAMBER) { - if (currentTemperature >= 50) Color = COLOR_CHAMBER; + else if (heater == H_CHAMBER) { + if (currentTemperature >= 50) color = COLOR_CHAMBER; image = targetTemperature > 0 ? imgChamberHeated : imgChamber; } #endif #if HAS_TEMP_COOLER - else if (Heater == H_COOLER) { - if (currentTemperature <= 26) Color = COLOR_COLD; - if (currentTemperature > 26) Color = COLOR_RED; + else if (heater == H_COOLER) { + if (currentTemperature <= 26) color = COLOR_COLD; + if (currentTemperature > 26) color = COLOR_RED; image = targetTemperature > 26 ? imgCoolerHot : imgCooler; } #endif - tft.add_image(0, 18, image, Color); + tft.add_image(0, 18, image, color); tft_string.set(i16tostr3rj(currentTemperature)); tft_string.add(LCD_STR_DEGREE); tft_string.trim(); - tft.add_text(tft_string.center(64) + 2, 69 + tft_string.vcenter(FONT_LINE_HEIGHT), Color, tft_string); + tft.add_text(tft_string.center(64) + 2, 69 + tft_string.vcenter(FONT_LINE_HEIGHT), color, tft_string); if (targetTemperature >= 0) { tft_string.set(i16tostr3rj(targetTemperature)); tft_string.add(LCD_STR_DEGREE); tft_string.trim(); - tft.add_text(tft_string.center(64) + 2, 5 + tft_string.vcenter(FONT_LINE_HEIGHT), Color, tft_string); + tft.add_text(tft_string.center(64) + 2, 5 + tft_string.vcenter(FONT_LINE_HEIGHT), color, tft_string); } } diff --git a/Marlin/src/lcd/tft/ui_480x320.cpp b/Marlin/src/lcd/tft/ui_480x320.cpp index edf75dabbd6f..9b23577c46b6 100644 --- a/Marlin/src/lcd/tft/ui_480x320.cpp +++ b/Marlin/src/lcd/tft/ui_480x320.cpp @@ -118,27 +118,26 @@ void MarlinUI::draw_kill_screen() { tft.queue.sync(); } -void draw_heater_status(uint16_t x, uint16_t y, const int8_t Heater) { +void draw_heater_status(uint16_t x, uint16_t y, const int8_t heater) { MarlinImage image = imgHotEnd; - uint16_t Color; celsius_t currentTemperature, targetTemperature; - if (Heater >= 0) { // HotEnd + if (heater >= 0) { // HotEnd #if HAS_EXTRUDERS - currentTemperature = thermalManager.wholeDegHotend(Heater); - targetTemperature = thermalManager.degTargetHotend(Heater); + currentTemperature = thermalManager.wholeDegHotend(heater); + targetTemperature = thermalManager.degTargetHotend(heater); #else return; #endif } #if HAS_HEATED_BED - else if (Heater == H_BED) { + else if (heater == H_BED) { currentTemperature = thermalManager.wholeDegBed(); targetTemperature = thermalManager.degTargetBed(); } #endif #if HAS_TEMP_CHAMBER - else if (Heater == H_CHAMBER) { + else if (heater == H_CHAMBER) { currentTemperature = thermalManager.wholeDegChamber(); #if HAS_HEATED_CHAMBER targetTemperature = thermalManager.degTargetChamber(); @@ -148,54 +147,54 @@ void draw_heater_status(uint16_t x, uint16_t y, const int8_t Heater) { } #endif #if HAS_TEMP_COOLER - else if (Heater == H_COOLER) { + else if (heater == H_COOLER) { currentTemperature = thermalManager.wholeDegCooler(); targetTemperature = TERN(HAS_COOLER, thermalManager.degTargetCooler(), ABSOLUTE_ZERO); } #endif else return; - TERN_(TOUCH_SCREEN, if (targetTemperature >= 0) touch.add_control(HEATER, x, y, 80, 120, Heater)); + TERN_(TOUCH_SCREEN, if (targetTemperature >= 0) touch.add_control(HEATER, x, y, 80, 120, heater)); tft.canvas(x, y, 80, 120); tft.set_background(COLOR_BACKGROUND); - Color = currentTemperature < 0 ? COLOR_INACTIVE : COLOR_COLD; + uint16_t color = currentTemperature < 0 ? COLOR_INACTIVE : COLOR_COLD; - if (Heater >= 0) { // HotEnd - if (currentTemperature >= 50) Color = COLOR_HOTEND; + if (heater >= 0) { // HotEnd + if (currentTemperature >= 50) color = COLOR_HOTEND; } #if HAS_HEATED_BED - else if (Heater == H_BED) { - if (currentTemperature >= 50) Color = COLOR_HEATED_BED; + else if (heater == H_BED) { + if (currentTemperature >= 50) color = COLOR_HEATED_BED; image = targetTemperature > 0 ? imgBedHeated : imgBed; } #endif #if HAS_TEMP_CHAMBER - else if (Heater == H_CHAMBER) { - if (currentTemperature >= 50) Color = COLOR_CHAMBER; + else if (heater == H_CHAMBER) { + if (currentTemperature >= 50) color = COLOR_CHAMBER; image = targetTemperature > 0 ? imgChamberHeated : imgChamber; } #endif #if HAS_TEMP_COOLER - else if (Heater == H_COOLER) { - if (currentTemperature <= 26) Color = COLOR_COLD; - if (currentTemperature > 26) Color = COLOR_RED; + else if (heater == H_COOLER) { + if (currentTemperature <= 26) color = COLOR_COLD; + if (currentTemperature > 26) color = COLOR_RED; image = targetTemperature > 26 ? imgCoolerHot : imgCooler; } #endif - tft.add_image(8, 28, image, Color); + tft.add_image(8, 28, image, color); tft_string.set(i16tostr3rj(currentTemperature)); tft_string.add(LCD_STR_DEGREE); tft_string.trim(); - tft.add_text(tft_string.center(80) + 2, 80 + tft_string.vcenter(FONT_LINE_HEIGHT), Color, tft_string); + tft.add_text(tft_string.center(80) + 2, 80 + tft_string.vcenter(FONT_LINE_HEIGHT), color, tft_string); if (targetTemperature >= 0) { tft_string.set(i16tostr3rj(targetTemperature)); tft_string.add(LCD_STR_DEGREE); tft_string.trim(); - tft.add_text(tft_string.center(80) + 2, 6 + tft_string.vcenter(FONT_LINE_HEIGHT), Color, tft_string); + tft.add_text(tft_string.center(80) + 2, 6 + tft_string.vcenter(FONT_LINE_HEIGHT), color, tft_string); } } diff --git a/Marlin/src/lcd/tft_io/tft_io.cpp b/Marlin/src/lcd/tft_io/tft_io.cpp index 294c146d5cb9..d46c2de418fb 100644 --- a/Marlin/src/lcd/tft_io/tft_io.cpp +++ b/Marlin/src/lcd/tft_io/tft_io.cpp @@ -59,7 +59,7 @@ TFT_IO_DRIVER TFT_IO::io; uint32_t TFT_IO::lcd_id = 0xFFFFFFFF; -void TFT_IO::InitTFT() { +void TFT_IO::initTFT() { if (lcd_id != 0xFFFFFFFF) return; #if PIN_EXISTS(TFT_BACKLIGHT) @@ -81,7 +81,7 @@ void TFT_IO::InitTFT() { #endif #endif - // io.Init(); + //io.init(); delay(100); #if TFT_DRIVER != AUTO @@ -106,7 +106,7 @@ void TFT_IO::InitTFT() { write_esc_sequence(ili9488_init); #elif TFT_DRIVER == AUTO // autodetect - lcd_id = io.GetID() & 0xFFFF; + lcd_id = io.getID() & 0xFFFF; switch (lcd_id) { case LTDC_RGB: @@ -156,25 +156,25 @@ void TFT_IO::InitTFT() { #endif } -void TFT_IO::set_window(uint16_t Xmin, uint16_t Ymin, uint16_t Xmax, uint16_t Ymax) { +void TFT_IO::set_window(uint16_t xMin, uint16_t yMin, uint16_t xMax, uint16_t yMax) { #ifdef OFFSET_X - Xmin += OFFSET_X; Xmax += OFFSET_X; + xMin += OFFSET_X; xMax += OFFSET_X; #endif #ifdef OFFSET_Y - Ymin += OFFSET_Y; Ymax += OFFSET_Y; + yMin += OFFSET_Y; yMax += OFFSET_Y; #endif switch (lcd_id) { case LTDC_RGB: - io.WriteReg(0x01); - io.WriteData(Xmin); - io.WriteReg(0x02); - io.WriteData(Xmax); - io.WriteReg(0x03); - io.WriteData(Ymin); - io.WriteReg(0x04); - io.WriteData(Ymax); - io.WriteReg(0x00); + io.writeReg(0x01); + io.writeData(xMin); + io.writeReg(0x02); + io.writeData(xMax); + io.writeReg(0x03); + io.writeData(yMin); + io.writeReg(0x04); + io.writeData(yMax); + io.writeReg(0x00); break; case ST7735: // ST7735 160x128 case ST7789: // ST7789V 320x240 @@ -183,76 +183,76 @@ void TFT_IO::set_window(uint16_t Xmin, uint16_t Ymin, uint16_t Xmax, uint16_t Ym case ILI9488: // ILI9488 480x320 case SSD1963: // SSD1963 case ILI9488_ID1: // 0x8066 ILI9488 480x320 - io.DataTransferBegin(DATASIZE_8BIT); + io.dataTransferBegin(DATASIZE_8BIT); // CASET: Column Address Set - io.WriteReg(ILI9341_CASET); - io.WriteData((Xmin >> 8) & 0xFF); - io.WriteData(Xmin & 0xFF); - io.WriteData((Xmax >> 8) & 0xFF); - io.WriteData(Xmax & 0xFF); + io.writeReg(ILI9341_CASET); + io.writeData((xMin >> 8) & 0xFF); + io.writeData(xMin & 0xFF); + io.writeData((xMax >> 8) & 0xFF); + io.writeData(xMax & 0xFF); // RASET: Row Address Set - io.WriteReg(ILI9341_PASET); - io.WriteData((Ymin >> 8) & 0xFF); - io.WriteData(Ymin & 0xFF); - io.WriteData((Ymax >> 8) & 0xFF); - io.WriteData(Ymax & 0xFF); + io.writeReg(ILI9341_PASET); + io.writeData((yMin >> 8) & 0xFF); + io.writeData(yMin & 0xFF); + io.writeData((yMax >> 8) & 0xFF); + io.writeData(yMax & 0xFF); // RAMWR: Memory Write - io.WriteReg(ILI9341_RAMWR); + io.writeReg(ILI9341_RAMWR); break; case R61505: // R61505U 320x240 case ILI9328: // ILI9328 320x240 - io.DataTransferBegin(DATASIZE_16BIT); + io.dataTransferBegin(DATASIZE_16BIT); // Mind the mess: with landscape screen orientation 'Horizontal' is Y and 'Vertical' is X - io.WriteReg(ILI9328_HASTART); - io.WriteData(Ymin); - io.WriteReg(ILI9328_HAEND); - io.WriteData(Ymax); - io.WriteReg(ILI9328_VASTART); - io.WriteData(Xmin); - io.WriteReg(ILI9328_VAEND); - io.WriteData(Xmax); - - io.WriteReg(ILI9328_HASET); - io.WriteData(Ymin); - io.WriteReg(ILI9328_VASET); - io.WriteData(Xmin); - - io.WriteReg(ILI9328_RAMWR); + io.writeReg(ILI9328_HASTART); + io.writeData(yMin); + io.writeReg(ILI9328_HAEND); + io.writeData(yMax); + io.writeReg(ILI9328_VASTART); + io.writeData(xMin); + io.writeReg(ILI9328_VAEND); + io.writeData(xMax); + + io.writeReg(ILI9328_HASET); + io.writeData(yMin); + io.writeReg(ILI9328_VASET); + io.writeData(xMin); + + io.writeReg(ILI9328_RAMWR); break; default: break; } - io.DataTransferEnd(); + io.dataTransferEnd(); } -void TFT_IO::write_esc_sequence(const uint16_t *Sequence) { +void TFT_IO::write_esc_sequence(const uint16_t *sequence) { uint16_t dataWidth, data; - dataWidth = *Sequence++; - io.DataTransferBegin(dataWidth); + dataWidth = *sequence++; + io.dataTransferBegin(dataWidth); for (;;) { - data = *Sequence++; + data = *sequence++; if (data != 0xFFFF) { - io.WriteData(data); + io.writeData(data); continue; } - data = *Sequence++; + data = *sequence++; if (data == 0x7FFF) break; if (data == 0xFFFF) - io.WriteData(0xFFFF); + io.writeData(0xFFFF); else if (data & 0x8000) delay(data & 0x7FFF); else if ((data & 0xFF00) == 0) - io.WriteReg(data); + io.writeReg(data); } - io.DataTransferEnd(); + io.dataTransferEnd(); } #endif // HAS_SPI_TFT || HAS_FSMC_TFT || HAS_LTDC_TFT diff --git a/Marlin/src/lcd/tft_io/tft_io.h b/Marlin/src/lcd/tft_io/tft_io.h index 673bb07d5f9a..cbe554436e96 100644 --- a/Marlin/src/lcd/tft_io/tft_io.h +++ b/Marlin/src/lcd/tft_io/tft_io.h @@ -50,36 +50,36 @@ class TFT_IO { public: static TFT_IO_DRIVER io; - static void InitTFT(); - static void set_window(uint16_t Xmin, uint16_t Ymin, uint16_t Xmax, uint16_t Ymax); - static void write_esc_sequence(const uint16_t *Sequence); + static void initTFT(); + static void set_window(uint16_t xMin, uint16_t yMin, uint16_t xMax, uint16_t yMax); + static void write_esc_sequence(const uint16_t *sequence); // Deletaged methods - inline static void Init() { io.Init(); } + inline static void init() { io.init(); } inline static bool isBusy() { return io.isBusy(); } - inline static void Abort() { io.Abort(); } - inline static uint32_t GetID() { return io.GetID(); } + inline static void abort() { io.abort(); } + inline static uint32_t getID() { return io.getID(); } - inline static void DataTransferBegin(uint16_t DataWidth=DATASIZE_16BIT) { io.DataTransferBegin(DataWidth); } - inline static void DataTransferEnd() { io.DataTransferEnd(); } + inline static void dataTransferBegin(uint16_t dataWidth=DATASIZE_16BIT) { io.dataTransferBegin(dataWidth); } + inline static void dataTransferEnd() { io.dataTransferEnd(); } - inline static void WriteData(uint16_t Data) { io.WriteData(Data); } - inline static void WriteReg(uint16_t Reg) { io.WriteReg(Reg); } + inline static void writeData(uint16_t data) { io.writeData(data); } + inline static void writeReg(uint16_t reg) { io.writeReg(reg); } // Blocking IO used by TFT_CLASSIC_UI and TFT_LVGL_UI // These functions start data transfer and WAIT for data transfer completion - inline static void WriteSequence(uint16_t *Data, uint16_t Count) { io.WriteSequence(Data, Count); } - inline static void WriteMultiple(uint16_t Color, uint32_t Count) { io.WriteMultiple(Color, Count); } + inline static void writeSequence(uint16_t *data, uint16_t count) { io.writeSequence(data, count); } + inline static void writeMultiple(uint16_t color, uint32_t count) { io.writeMultiple(color, count); } // Non-blocking DMA-based IO used by TFT_COLOR_UI only // These functions start data transfer using DMA and do NOT wait for data transfer completion - inline static void WriteSequenceDMA(uint16_t *Data, uint16_t Count) { io.WriteSequence_DMA(Data, Count); } - inline static void WriteMultipleDMA(uint16_t Color, uint16_t Count) { io.WriteMultiple_DMA(Color, Count); } + inline static void writeSequenceDMA(uint16_t *data, uint16_t count) { io.writeSequence_DMA(data, count); } + inline static void WriteMultipleDMA(uint16_t color, uint16_t count) { io.writeMultiple_DMA(color, count); } // Non-blocking DMA-based IO with IRQ callback used by TFT_LVGL_UI only // This function starts data transfer using DMA and does NOT wait for data transfer completion #if ENABLED(USE_SPI_DMA_TC) - inline static void WriteSequenceIT(uint16_t *Data, uint16_t Count) { io.WriteSequenceIT(Data, Count); } + inline static void writeSequenceIT(uint16_t *data, uint16_t count) { io.writeSequenceIT(data, count); } #endif protected: diff --git a/Marlin/src/lcd/touch/touch_buttons.cpp b/Marlin/src/lcd/touch/touch_buttons.cpp index 2e996f30ce5f..856594c31a28 100644 --- a/Marlin/src/lcd/touch/touch_buttons.cpp +++ b/Marlin/src/lcd/touch/touch_buttons.cpp @@ -60,7 +60,7 @@ TouchButtons touchBt; void TouchButtons::init() { - touchIO.Init(); + touchIO.init(); TERN_(HAS_TOUCH_SLEEP, next_sleep_ms = millis() + SEC_TO_MS(ui.sleep_timeout_minutes * 60)); } diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index 321691ba8710..1ee3932c2db7 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -1607,8 +1607,8 @@ void MarlinSettings::postprocess() { #if ENABLED(DWIN_CREALITY_LCD_JYERSUI) { _FIELD_TEST(dwin_settings); - char dwin_settings[CrealityDWIN.eeprom_data_size] = { 0 }; - CrealityDWIN.Save_Settings(dwin_settings); + char dwin_settings[crealityDWIN.eeprom_data_size] = { 0 }; + crealityDWIN.saveSettings(dwin_settings); EEPROM_WRITE(dwin_settings); } #endif @@ -2661,10 +2661,10 @@ void MarlinSettings::postprocess() { } #elif ENABLED(DWIN_CREALITY_LCD_JYERSUI) { - const char dwin_settings[CrealityDWIN.eeprom_data_size] = { 0 }; + const char dwin_settings[crealityDWIN.eeprom_data_size] = { 0 }; _FIELD_TEST(dwin_settings); EEPROM_READ(dwin_settings); - if (!validating) CrealityDWIN.Load_Settings(dwin_settings); + if (!validating) crealityDWIN.loadSettings(dwin_settings); } #endif @@ -3147,7 +3147,7 @@ void MarlinSettings::reset() { #endif #endif - TERN_(DWIN_CREALITY_LCD_JYERSUI, CrealityDWIN.Reset_Settings()); + TERN_(DWIN_CREALITY_LCD_JYERSUI, crealityDWIN.resetSettings()); // // Case Light Brightness diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index d671e7ce89f5..1f0e1a975582 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -856,7 +856,7 @@ volatile bool Temperature::raw_temps_ready = false; #define MAX_CYCLE_TIME_PID_AUTOTUNE 20L #endif if ((ms - _MIN(t1, t2)) > (MAX_CYCLE_TIME_PID_AUTOTUNE * 60L * 1000L)) { - TERN_(DWIN_CREALITY_LCD, DWIN_Popup_Temperature(0)); + TERN_(DWIN_CREALITY_LCD, dwinPopupTemperature(0)); TERN_(DWIN_PID_TUNE, DWIN_PidTuning(PID_TUNING_TIMEOUT)); TERN_(EXTENSIBLE_UI, ExtUI::onPidTuning(ExtUI::result_t::PID_TUNING_TIMEOUT)); TERN_(HOST_PROMPT_SUPPORT, hostui.notify(GET_TEXT_F(MSG_PID_TIMEOUT))); @@ -919,7 +919,7 @@ volatile bool Temperature::raw_temps_ready = false; hal.idletask(); // Run UI update - TERN(DWIN_CREALITY_LCD, DWIN_Update(), ui.update()); + TERN(DWIN_CREALITY_LCD, dwinUpdate(), ui.update()); } wait_for_heatup = false; @@ -1183,7 +1183,7 @@ volatile bool Temperature::raw_temps_ready = false; } hal.idletask(); - TERN(DWIN_CREALITY_LCD, DWIN_Update(), ui.update()); + TERN(DWIN_CREALITY_LCD, dwinUpdate(), ui.update()); if (!wait_for_heatup) { SERIAL_ECHOLNPGM(STR_MPC_AUTOTUNE_INTERRUPTED); diff --git a/Marlin/src/sd/Sd2Card.h b/Marlin/src/sd/Sd2Card.h index 71e31ac614c2..49569af5121f 100644 --- a/Marlin/src/sd/Sd2Card.h +++ b/Marlin/src/sd/Sd2Card.h @@ -70,7 +70,7 @@ typedef enum : uint8_t { SD_CARD_ERROR_WRITE_PROGRAMMING = 0x16, // Card returned an error to a CMD13 status check after a write SD_CARD_ERROR_WRITE_TIMEOUT = 0x17, // Timeout occurred during write programming SD_CARD_ERROR_SCK_RATE = 0x18, // Incorrect rate selected - SD_CARD_ERROR_INIT_NOT_CALLED = 0x19, // Init() not called + SD_CARD_ERROR_INIT_NOT_CALLED = 0x19, // init() not called // 0x1A is unused now, it was: card returned an error for CMD59 (CRC_ON_OFF) SD_CARD_ERROR_READ_CRC = 0x1B // Invalid read CRC } sd_error_code_t; diff --git a/Marlin/src/sd/cardreader.cpp b/Marlin/src/sd/cardreader.cpp index 4bc22e84cada..e09bc5265a38 100644 --- a/Marlin/src/sd/cardreader.cpp +++ b/Marlin/src/sd/cardreader.cpp @@ -621,7 +621,7 @@ void CardReader::startOrResumeFilePrinting() { // void CardReader::endFilePrintNow(TERN_(SD_RESORT, const bool re_sort/*=false*/)) { TERN_(ADVANCED_PAUSE_FEATURE, did_pause_print = 0); - TERN_(DWIN_CREALITY_LCD, HMI_flag.print_finish = flag.sdprinting); + TERN_(DWIN_CREALITY_LCD, hmiFlag.print_finish = flag.sdprinting); flag.abort_sd_printing = false; if (isFileOpen()) file.close(); TERN_(SD_RESORT, if (re_sort) presort()); From d26955bde6d64430ed46422f3ec575317c648837 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 14 Jun 2023 19:06:17 -0500 Subject: [PATCH 289/427] =?UTF-8?q?=F0=9F=94=A7=20Sanity=20check=20IA=5FCR?= =?UTF-8?q?EALITY=20mesh=20size?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/SanityCheck.h | 3 +++ Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp | 2 +- Marlin/src/lcd/extui/ia_creality/ia_creality_rts.h | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 361c63af4d5f..ab4b0e4e1262 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -1552,6 +1552,9 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #if HAS_MESH && HAS_CLASSIC_JERK static_assert(DEFAULT_ZJERK > 0.1, "Low DEFAULT_ZJERK values are incompatible with mesh-based leveling."); #endif +#if HAS_MESH && DGUS_LCD_UI_IA_CREALITY && GRID_MAX_POINTS > 25 + #error "DGUS_LCD_UI IA_CREALITY requires a mesh with no more than 25 points as defined by GRID_MAX_POINTS_X/Y." +#endif #if ENABLED(G26_MESH_VALIDATION) #if !HAS_EXTRUDERS diff --git a/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp index 3eac438bb1b7..a64fa2ef20b9 100644 --- a/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp +++ b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp @@ -674,7 +674,7 @@ void RTS::handleData() { case DisplayStandbyBrightness: Checkkey = DisplayStandbyBrightness; break; case DisplayStandbySeconds: Checkkey = DisplayStandbySeconds; break; default: - if (WITHIN(recdat.addr, AutolevelVal, 4400)) // (int16_t(AutolevelVal) + GRID_MAX_POINTS * 2) = 4400 with 5x5 mesh + if (WITHIN(recdat.addr, AutolevelVal, AutolevelVal + 2 * (5 * 5 - 1))) // Assuming 5x5 mesh or smaller Checkkey = AutolevelVal; else if (WITHIN(recdat.addr, SDFILE_ADDR, SDFILE_ADDR + 10 * (FileNum + 1))) Checkkey = Filename; diff --git a/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.h b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.h index 9ec7d7872f96..3b467f4d252a 100644 --- a/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.h +++ b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.h @@ -279,7 +279,7 @@ enum PROC_COM { }; const uint16_t Addrbuf[] = { - 0x1002, 0x1004, 0x1006, 0x1008, 0x100A, 0x100C, 0x1026, 0x1030, 0x1032, 0x1034, 0x103A, + 0x1002, 0x1004, 0x1006, 0x1008, 0x100A, 0x100C, 0x1026, 0x1030, 0x1032, 0x1034, 0x103A, 0x103E, 0x1040, 0x1044, 0x1046, 0x1048, 0x104A, 0x104C, 0x1054, 0x1056, 0x1058, 0x105C, 0x105E, 0x105F, 0x1088, 0 }; From 5cfe3af0ef1b64d8cbb87335a7e996bf3e1f41a4 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 15 Jun 2023 00:26:48 +0000 Subject: [PATCH 290/427] [cron] Bump distribution date (2023-06-15) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 157ebe20f9d2..29bd03701d5f 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-13" +//#define STRING_DISTRIBUTION_DATE "2023-06-15" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index feaba9dbe763..67d5d5806f3e 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-13" + #define STRING_DISTRIBUTION_DATE "2023-06-15" #endif /** From 166ed289953fe25ff4dabd2541934e7364684168 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 14 Jun 2023 19:37:35 -0500 Subject: [PATCH 291/427] =?UTF-8?q?=F0=9F=8E=A8=20Lowercase=20followup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25939 --- Marlin/src/MarlinCore.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index 8b89a00c207c..e183a0435989 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -1583,7 +1583,7 @@ void setup() { #endif #if HAS_DWIN_E3V2_BASIC - SETUP_RUN(DWIN_InitScreen()); + SETUP_RUN(dwinInitScreen()); #endif #if HAS_SERVICE_INTERVALS && !HAS_DWIN_E3V2_BASIC From 067091458a684a5f5529ef31860a89892750f5bc Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Wed, 14 Jun 2023 17:41:43 -0700 Subject: [PATCH 292/427] =?UTF-8?q?=F0=9F=8E=A8=20Group=20STM32G0=20pins?= =?UTF-8?q?=20includes=20(#25977)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/pins/pins.h | 678 +++++++++++++++++++++-------------------- 1 file changed, 342 insertions(+), 336 deletions(-) diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index f4ea959cb759..9a3b3c3c2245 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -128,754 +128,760 @@ // #if MB(RAMPS_OLD) - #include "ramps/pins_RAMPS_OLD.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_RAMPS_OLD.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(RAMPS_13_EFB, RAMPS_13_EEB, RAMPS_13_EFF, RAMPS_13_EEF, RAMPS_13_SF) - #include "ramps/pins_RAMPS_13.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_RAMPS_13.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(RAMPS_14_EFB, RAMPS_14_EEB, RAMPS_14_EFF, RAMPS_14_EEF, RAMPS_14_SF) - #include "ramps/pins_RAMPS.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_RAMPS.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(RAMPS_PLUS_EFB, RAMPS_PLUS_EEB, RAMPS_PLUS_EFF, RAMPS_PLUS_EEF, RAMPS_PLUS_SF) - #include "ramps/pins_RAMPS_PLUS.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_RAMPS_PLUS.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 // // RAMPS Derivatives - ATmega1280, ATmega2560 // #elif MB(3DRAG) - #include "ramps/pins_3DRAG.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_3DRAG.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(K8200) - #include "ramps/pins_K8200.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_K8200.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(K8400) - #include "ramps/pins_K8400.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_K8400.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(K8600) - #include "ramps/pins_K8600.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_K8600.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(K8800) - #include "ramps/pins_K8800.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_K8800.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(BAM_DICE) - #include "ramps/pins_RAMPS.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_RAMPS.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(BAM_DICE_DUE) - #include "ramps/pins_BAM_DICE_DUE.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_BAM_DICE_DUE.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(MKS_BASE) - #include "ramps/pins_MKS_BASE_10.h" // ATmega2560 env:mega2560 + #include "ramps/pins_MKS_BASE_10.h" // ATmega2560 env:mega2560 #elif MB(MKS_BASE_14) - #include "ramps/pins_MKS_BASE_14.h" // ATmega2560 env:mega2560 + #include "ramps/pins_MKS_BASE_14.h" // ATmega2560 env:mega2560 #elif MB(MKS_BASE_15) - #include "ramps/pins_MKS_BASE_15.h" // ATmega2560 env:mega2560 + #include "ramps/pins_MKS_BASE_15.h" // ATmega2560 env:mega2560 #elif MB(MKS_BASE_16) - #include "ramps/pins_MKS_BASE_16.h" // ATmega2560 env:mega2560 + #include "ramps/pins_MKS_BASE_16.h" // ATmega2560 env:mega2560 #elif MB(MKS_BASE_HEROIC) - #include "ramps/pins_MKS_BASE_HEROIC.h" // ATmega2560 env:mega2560 + #include "ramps/pins_MKS_BASE_HEROIC.h" // ATmega2560 env:mega2560 #elif MB(MKS_GEN_13) - #include "ramps/pins_MKS_GEN_13.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_MKS_GEN_13.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(MKS_GEN_L) - #include "ramps/pins_MKS_GEN_L.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_MKS_GEN_L.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(KFB_2) - #include "ramps/pins_BIQU_KFB_2.h" // ATmega2560 env:mega2560 + #include "ramps/pins_BIQU_KFB_2.h" // ATmega2560 env:mega2560 #elif MB(ZRIB_V20) - #include "ramps/pins_ZRIB_V20.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_ZRIB_V20.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(ZRIB_V52) - #include "ramps/pins_ZRIB_V52.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_ZRIB_V52.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(ZRIB_V53) - #include "ramps/pins_ZRIB_V53.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_ZRIB_V53.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(FELIX2) - #include "ramps/pins_FELIX2.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_FELIX2.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(RIGIDBOARD) - #include "ramps/pins_RIGIDBOARD.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_RIGIDBOARD.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(RIGIDBOARD_V2) - #include "ramps/pins_RIGIDBOARD_V2.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_RIGIDBOARD_V2.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(SAINSMART_2IN1) - #include "ramps/pins_SAINSMART_2IN1.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_SAINSMART_2IN1.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(ULTIMAKER) - #include "ramps/pins_ULTIMAKER.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_ULTIMAKER.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(ULTIMAKER_OLD) - #include "ramps/pins_ULTIMAKER_OLD.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "ramps/pins_ULTIMAKER_OLD.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(AZTEEG_X3) - #include "ramps/pins_AZTEEG_X3.h" // ATmega2560 env:mega2560 + #include "ramps/pins_AZTEEG_X3.h" // ATmega2560 env:mega2560 #elif MB(AZTEEG_X3_PRO) - #include "ramps/pins_AZTEEG_X3_PRO.h" // ATmega2560 env:mega2560 + #include "ramps/pins_AZTEEG_X3_PRO.h" // ATmega2560 env:mega2560 #elif MB(ULTIMAIN_2) - #include "ramps/pins_ULTIMAIN_2.h" // ATmega2560 env:mega2560ext + #include "ramps/pins_ULTIMAIN_2.h" // ATmega2560 env:mega2560ext #elif MB(FORMBOT_RAPTOR) - #include "ramps/pins_FORMBOT_RAPTOR.h" // ATmega2560 env:mega2560 + #include "ramps/pins_FORMBOT_RAPTOR.h" // ATmega2560 env:mega2560 #elif MB(FORMBOT_RAPTOR2) - #include "ramps/pins_FORMBOT_RAPTOR2.h" // ATmega2560 env:mega2560 + #include "ramps/pins_FORMBOT_RAPTOR2.h" // ATmega2560 env:mega2560 #elif MB(FORMBOT_TREX2PLUS) - #include "ramps/pins_FORMBOT_TREX2PLUS.h" // ATmega2560 env:mega2560 + #include "ramps/pins_FORMBOT_TREX2PLUS.h" // ATmega2560 env:mega2560 #elif MB(FORMBOT_TREX3) - #include "ramps/pins_FORMBOT_TREX3.h" // ATmega2560 env:mega2560 + #include "ramps/pins_FORMBOT_TREX3.h" // ATmega2560 env:mega2560 #elif MB(RUMBA) - #include "ramps/pins_RUMBA.h" // ATmega2560 env:mega2560 + #include "ramps/pins_RUMBA.h" // ATmega2560 env:mega2560 #elif MB(RUMBA_RAISE3D) - #include "ramps/pins_RUMBA_RAISE3D.h" // ATmega2560 env:mega2560 + #include "ramps/pins_RUMBA_RAISE3D.h" // ATmega2560 env:mega2560 #elif MB(RL200) - #include "ramps/pins_RL200.h" // ATmega2560 env:mega2560 + #include "ramps/pins_RL200.h" // ATmega2560 env:mega2560 #elif MB(BQ_ZUM_MEGA_3D) - #include "ramps/pins_BQ_ZUM_MEGA_3D.h" // ATmega2560 env:mega2560ext + #include "ramps/pins_BQ_ZUM_MEGA_3D.h" // ATmega2560 env:mega2560ext #elif MB(MAKEBOARD_MINI) - #include "ramps/pins_MAKEBOARD_MINI.h" // ATmega2560 env:mega2560 + #include "ramps/pins_MAKEBOARD_MINI.h" // ATmega2560 env:mega2560 #elif MB(TRIGORILLA_13) - #include "ramps/pins_TRIGORILLA_13.h" // ATmega2560 env:mega2560 + #include "ramps/pins_TRIGORILLA_13.h" // ATmega2560 env:mega2560 #elif MB(TRIGORILLA_14, TRIGORILLA_14_11) - #include "ramps/pins_TRIGORILLA_14.h" // ATmega2560 env:mega2560 + #include "ramps/pins_TRIGORILLA_14.h" // ATmega2560 env:mega2560 #elif MB(RAMPS_ENDER_4) - #include "ramps/pins_RAMPS_ENDER_4.h" // ATmega2560 env:mega2560 + #include "ramps/pins_RAMPS_ENDER_4.h" // ATmega2560 env:mega2560 #elif MB(RAMPS_CREALITY) - #include "ramps/pins_RAMPS_CREALITY.h" // ATmega2560 env:mega2560 + #include "ramps/pins_RAMPS_CREALITY.h" // ATmega2560 env:mega2560 #elif MB(DAGOMA_F5) - #include "ramps/pins_DAGOMA_F5.h" // ATmega2560 env:mega2560 + #include "ramps/pins_DAGOMA_F5.h" // ATmega2560 env:mega2560 #elif MB(FYSETC_F6_13) - #include "ramps/pins_FYSETC_F6_13.h" // ATmega2560 env:FYSETC_F6 + #include "ramps/pins_FYSETC_F6_13.h" // ATmega2560 env:FYSETC_F6 #elif MB(FYSETC_F6_14) - #include "ramps/pins_FYSETC_F6_14.h" // ATmega2560 env:FYSETC_F6 + #include "ramps/pins_FYSETC_F6_14.h" // ATmega2560 env:FYSETC_F6 #elif MB(DUPLICATOR_I3_PLUS) - #include "ramps/pins_DUPLICATOR_I3_PLUS.h" // ATmega2560 env:mega2560 + #include "ramps/pins_DUPLICATOR_I3_PLUS.h" // ATmega2560 env:mega2560 #elif MB(VORON) - #include "ramps/pins_VORON.h" // ATmega2560 env:mega2560 + #include "ramps/pins_VORON.h" // ATmega2560 env:mega2560 #elif MB(TRONXY_V3_1_0) - #include "ramps/pins_TRONXY_V3_1_0.h" // ATmega2560 env:mega2560 + #include "ramps/pins_TRONXY_V3_1_0.h" // ATmega2560 env:mega2560 #elif MB(Z_BOLT_X_SERIES) - #include "ramps/pins_Z_BOLT_X_SERIES.h" // ATmega2560 env:mega2560 + #include "ramps/pins_Z_BOLT_X_SERIES.h" // ATmega2560 env:mega2560 #elif MB(TT_OSCAR) - #include "ramps/pins_TT_OSCAR.h" // ATmega2560 env:mega2560 + #include "ramps/pins_TT_OSCAR.h" // ATmega2560 env:mega2560 #elif MB(TANGO) - #include "ramps/pins_TANGO.h" // ATmega2560 env:mega2560 + #include "ramps/pins_TANGO.h" // ATmega2560 env:mega2560 #elif MB(MKS_GEN_L_V2) - #include "ramps/pins_MKS_GEN_L_V2.h" // ATmega2560 env:mega2560 + #include "ramps/pins_MKS_GEN_L_V2.h" // ATmega2560 env:mega2560 #elif MB(COPYMASTER_3D) - #include "ramps/pins_COPYMASTER_3D.h" // ATmega2560 env:mega2560 + #include "ramps/pins_COPYMASTER_3D.h" // ATmega2560 env:mega2560 #elif MB(ORTUR_4) - #include "ramps/pins_ORTUR_4.h" // ATmega2560 env:mega2560 + #include "ramps/pins_ORTUR_4.h" // ATmega2560 env:mega2560 #elif MB(TENLOG_D3_HERO) - #include "ramps/pins_TENLOG_D3_HERO.h" // ATmega2560 env:mega2560 + #include "ramps/pins_TENLOG_D3_HERO.h" // ATmega2560 env:mega2560 #elif MB(TENLOG_MB1_V23) - #include "ramps/pins_TENLOG_MB1_V23.h" // ATmega2560 env:mega2560 + #include "ramps/pins_TENLOG_MB1_V23.h" // ATmega2560 env:mega2560 #elif MB(MKS_GEN_L_V21) - #include "ramps/pins_MKS_GEN_L_V21.h" // ATmega2560 env:mega2560 + #include "ramps/pins_MKS_GEN_L_V21.h" // ATmega2560 env:mega2560 #elif MB(RAMPS_S_12_EEFB, RAMPS_S_12_EEEB, RAMPS_S_12_EFFB) - #include "ramps/pins_RAMPS_S_12.h" // ATmega2560 env:mega2560 + #include "ramps/pins_RAMPS_S_12.h" // ATmega2560 env:mega2560 #elif MB(LONGER3D_LK1_PRO, LONGER3D_LKx_PRO) - #include "ramps/pins_LONGER3D_LKx_PRO.h" // ATmega2560 env:mega2560 + #include "ramps/pins_LONGER3D_LKx_PRO.h" // ATmega2560 env:mega2560 #elif MB(PXMALION_CORE_I3) - #include "ramps/pins_PXMALION_CORE_I3.h" // ATmega2560 env:mega2560 + #include "ramps/pins_PXMALION_CORE_I3.h" // ATmega2560 env:mega2560 #elif MB(PANOWIN_CUTLASS) - #include "ramps/pins_PANOWIN_CUTLASS.h" // ATmega2560 env:mega2560ext + #include "ramps/pins_PANOWIN_CUTLASS.h" // ATmega2560 env:mega2560ext #elif MB(KODAMA_BARDO) - #include "ramps/pins_KODAMA_BARDO.h" // ATmega2560 env:mega2560ext + #include "ramps/pins_KODAMA_BARDO.h" // ATmega2560 env:mega2560ext // // RAMBo and derivatives // #elif MB(RAMBO) - #include "rambo/pins_RAMBO.h" // ATmega2560 env:rambo + #include "rambo/pins_RAMBO.h" // ATmega2560 env:rambo #elif MB(MINIRAMBO, MINIRAMBO_10A) - #include "rambo/pins_MINIRAMBO.h" // ATmega2560 env:rambo + #include "rambo/pins_MINIRAMBO.h" // ATmega2560 env:rambo #elif MB(EINSY_RAMBO) - #include "rambo/pins_EINSY_RAMBO.h" // ATmega2560 env:rambo + #include "rambo/pins_EINSY_RAMBO.h" // ATmega2560 env:rambo #elif MB(EINSY_RETRO) - #include "rambo/pins_EINSY_RETRO.h" // ATmega2560 env:rambo + #include "rambo/pins_EINSY_RETRO.h" // ATmega2560 env:rambo #elif MB(SCOOVO_X9H) - #include "rambo/pins_SCOOVO_X9H.h" // ATmega2560 env:rambo + #include "rambo/pins_SCOOVO_X9H.h" // ATmega2560 env:rambo #elif MB(RAMBO_THINKERV2) - #include "rambo/pins_RAMBO_THINKERV2.h" // ATmega2560 env:rambo + #include "rambo/pins_RAMBO_THINKERV2.h" // ATmega2560 env:rambo // // Other ATmega1280, ATmega2560 // #elif MB(CNCONTROLS_11) - #include "mega/pins_CNCONTROLS_11.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "mega/pins_CNCONTROLS_11.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(CNCONTROLS_12) - #include "mega/pins_CNCONTROLS_12.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "mega/pins_CNCONTROLS_12.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(CNCONTROLS_15) - #include "mega/pins_CNCONTROLS_15.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "mega/pins_CNCONTROLS_15.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(MIGHTYBOARD_REVE) - #include "mega/pins_MIGHTYBOARD_REVE.h" // ATmega2560, ATmega1280 env:mega2560ext env:MightyBoard1280 env:MightyBoard2560 + #include "mega/pins_MIGHTYBOARD_REVE.h" // ATmega2560, ATmega1280 env:mega2560ext env:MightyBoard1280 env:MightyBoard2560 #elif MB(CHEAPTRONIC) - #include "mega/pins_CHEAPTRONIC.h" // ATmega2560 env:mega2560 + #include "mega/pins_CHEAPTRONIC.h" // ATmega2560 env:mega2560 #elif MB(CHEAPTRONIC_V2) - #include "mega/pins_CHEAPTRONICv2.h" // ATmega2560 env:mega2560 + #include "mega/pins_CHEAPTRONICv2.h" // ATmega2560 env:mega2560 #elif MB(MEGATRONICS) - #include "mega/pins_MEGATRONICS.h" // ATmega2560 env:mega2560 + #include "mega/pins_MEGATRONICS.h" // ATmega2560 env:mega2560 #elif MB(MEGATRONICS_2) - #include "mega/pins_MEGATRONICS_2.h" // ATmega2560 env:mega2560 + #include "mega/pins_MEGATRONICS_2.h" // ATmega2560 env:mega2560 #elif MB(MEGATRONICS_3, MEGATRONICS_31, MEGATRONICS_32) - #include "mega/pins_MEGATRONICS_3.h" // ATmega2560 env:mega2560 + #include "mega/pins_MEGATRONICS_3.h" // ATmega2560 env:mega2560 #elif MB(ELEFU_3) - #include "mega/pins_ELEFU_3.h" // ATmega2560 env:mega2560 + #include "mega/pins_ELEFU_3.h" // ATmega2560 env:mega2560 #elif MB(LEAPFROG) - #include "mega/pins_LEAPFROG.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "mega/pins_LEAPFROG.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(MEGACONTROLLER) - #include "mega/pins_MEGACONTROLLER.h" // ATmega2560 env:mega2560 + #include "mega/pins_MEGACONTROLLER.h" // ATmega2560 env:mega2560 #elif MB(GT2560_REV_A) - #include "mega/pins_GT2560_REV_A.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "mega/pins_GT2560_REV_A.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(GT2560_REV_A_PLUS) - #include "mega/pins_GT2560_REV_A_PLUS.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 + #include "mega/pins_GT2560_REV_A_PLUS.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(GT2560_V3) - #include "mega/pins_GT2560_V3.h" // ATmega2560 env:mega2560 + #include "mega/pins_GT2560_V3.h" // ATmega2560 env:mega2560 #elif MB(GT2560_REV_B) - #include "mega/pins_GT2560_REV_B.h" // ATmega2560 env:mega2560 + #include "mega/pins_GT2560_REV_B.h" // ATmega2560 env:mega2560 #elif MB(GT2560_V4) - #include "mega/pins_GT2560_V4.h" // ATmega2560 env:mega2560 + #include "mega/pins_GT2560_V4.h" // ATmega2560 env:mega2560 #elif MB(GT2560_V4_A20) - #include "mega/pins_GT2560_V4_A20.h" // ATmega2560 env:mega2560 + #include "mega/pins_GT2560_V4_A20.h" // ATmega2560 env:mega2560 #elif MB(GT2560_V3_MC2) - #include "mega/pins_GT2560_V3_MC2.h" // ATmega2560 env:mega2560 + #include "mega/pins_GT2560_V3_MC2.h" // ATmega2560 env:mega2560 #elif MB(GT2560_V3_A20) - #include "mega/pins_GT2560_V3_A20.h" // ATmega2560 env:mega2560 + #include "mega/pins_GT2560_V3_A20.h" // ATmega2560 env:mega2560 #elif MB(EINSTART_S) - #include "mega/pins_EINSTART-S.h" // ATmega2560, ATmega1280 env:mega2560ext env:mega1280 + #include "mega/pins_EINSTART-S.h" // ATmega2560, ATmega1280 env:mega2560ext env:mega1280 #elif MB(WANHAO_ONEPLUS) - #include "mega/pins_WANHAO_ONEPLUS.h" // ATmega2560 env:mega2560 + #include "mega/pins_WANHAO_ONEPLUS.h" // ATmega2560 env:mega2560 #elif MB(OVERLORD) - #include "mega/pins_OVERLORD.h" // ATmega2560 env:mega2560 + #include "mega/pins_OVERLORD.h" // ATmega2560 env:mega2560 #elif MB(HJC2560C_REV1) - #include "mega/pins_HJC2560C_REV2.h" // ATmega2560 env:mega2560 + #include "mega/pins_HJC2560C_REV2.h" // ATmega2560 env:mega2560 #elif MB(HJC2560C_REV2) - #include "mega/pins_HJC2560C_REV2.h" // ATmega2560 env:mega2560 + #include "mega/pins_HJC2560C_REV2.h" // ATmega2560 env:mega2560 #elif MB(LEAPFROG_XEED2015) - #include "mega/pins_LEAPFROG_XEED2015.h" // ATmega2560 env:mega2560 + #include "mega/pins_LEAPFROG_XEED2015.h" // ATmega2560 env:mega2560 #elif MB(PICA) - #include "mega/pins_PICA.h" // ATmega2560 env:mega2560 + #include "mega/pins_PICA.h" // ATmega2560 env:mega2560 #elif MB(PICA_REVB) - #include "mega/pins_PICAOLD.h" // ATmega2560 env:mega2560 + #include "mega/pins_PICAOLD.h" // ATmega2560 env:mega2560 #elif MB(INTAMSYS40) - #include "mega/pins_INTAMSYS40.h" // ATmega2560 env:mega2560 + #include "mega/pins_INTAMSYS40.h" // ATmega2560 env:mega2560 #elif MB(MALYAN_M180) - #include "mega/pins_MALYAN_M180.h" // ATmega2560 env:mega2560 + #include "mega/pins_MALYAN_M180.h" // ATmega2560 env:mega2560 #elif MB(PROTONEER_CNC_SHIELD_V3) - #include "mega/pins_PROTONEER_CNC_SHIELD_V3.h"// ATmega2560 env:mega2560 + #include "mega/pins_PROTONEER_CNC_SHIELD_V3.h" // ATmega2560 env:mega2560 #elif MB(WEEDO_62A) - #include "mega/pins_WEEDO_62A.h" // ATmega2560 env:mega2560 + #include "mega/pins_WEEDO_62A.h" // ATmega2560 env:mega2560 // // ATmega1281, ATmega2561 // #elif MB(MINITRONICS) - #include "mega/pins_MINITRONICS.h" // ATmega1281 env:mega1280 + #include "mega/pins_MINITRONICS.h" // ATmega1281 env:mega1280 #elif MB(SILVER_GATE) - #include "mega/pins_SILVER_GATE.h" // ATmega2561 env:mega2560 + #include "mega/pins_SILVER_GATE.h" // ATmega2561 env:mega2560 // // Sanguinololu and Derivatives - ATmega644P, ATmega1284P // #elif MB(SANGUINOLOLU_11) - #include "sanguino/pins_SANGUINOLOLU_11.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_SANGUINOLOLU_11.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(SANGUINOLOLU_12) - #include "sanguino/pins_SANGUINOLOLU_12.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_SANGUINOLOLU_12.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(MELZI) - #include "sanguino/pins_MELZI.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_MELZI.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(MELZI_V2) - #include "sanguino/pins_MELZI_V2.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_MELZI_V2.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(MELZI_MAKR3D) - #include "sanguino/pins_MELZI_MAKR3D.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_MELZI_MAKR3D.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(MELZI_CREALITY) - #include "sanguino/pins_MELZI_CREALITY.h" // ATmega1284P env:melzi_optiboot_optimized env:melzi_optiboot env:melzi_optimized env:melzi + #include "sanguino/pins_MELZI_CREALITY.h" // ATmega1284P env:melzi_optiboot_optimized env:melzi_optiboot env:melzi_optimized env:melzi #elif MB(MELZI_CREALITY_ENDER2) - #include "sanguino/pins_MELZI_CREALITY_E2.h" // ATmega1284P env:melzi_optiboot_optimized env:melzi_optiboot env:melzi_optimized env:melzi + #include "sanguino/pins_MELZI_CREALITY_E2.h" // ATmega1284P env:melzi_optiboot_optimized env:melzi_optiboot env:melzi_optimized env:melzi #elif MB(MELZI_MALYAN) - #include "sanguino/pins_MELZI_MALYAN.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_MELZI_MALYAN.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(MELZI_TRONXY) - #include "sanguino/pins_MELZI_TRONXY.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_MELZI_TRONXY.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(STB_11) - #include "sanguino/pins_STB_11.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_STB_11.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(AZTEEG_X1) - #include "sanguino/pins_AZTEEG_X1.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_AZTEEG_X1.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(ZMIB_V2) - #include "sanguino/pins_ZMIB_V2.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_ZMIB_V2.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p // // Other ATmega644P, ATmega644, ATmega1284P // #elif MB(GEN3_MONOLITHIC) - #include "sanguino/pins_GEN3_MONOLITHIC.h" // ATmega644P env:sanguino644p + #include "sanguino/pins_GEN3_MONOLITHIC.h" // ATmega644P env:sanguino644p #elif MB(GEN3_PLUS) - #include "sanguino/pins_GEN3_PLUS.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_GEN3_PLUS.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(GEN6) - #include "sanguino/pins_GEN6.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_GEN6.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(GEN6_DELUXE) - #include "sanguino/pins_GEN6_DELUXE.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_GEN6_DELUXE.h" // ATmega644P, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(GEN7_CUSTOM) - #include "sanguino/pins_GEN7_CUSTOM.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_GEN7_CUSTOM.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(GEN7_12) - #include "sanguino/pins_GEN7_12.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_GEN7_12.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(GEN7_13) - #include "sanguino/pins_GEN7_13.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_GEN7_13.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(GEN7_14) - #include "sanguino/pins_GEN7_14.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_GEN7_14.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p #elif MB(OMCA_A) - #include "sanguino/pins_OMCA_A.h" // ATmega644 env:sanguino644p + #include "sanguino/pins_OMCA_A.h" // ATmega644 env:sanguino644p #elif MB(OMCA) - #include "sanguino/pins_OMCA.h" // ATmega644P, ATmega644 env:sanguino644p + #include "sanguino/pins_OMCA.h" // ATmega644P, ATmega644 env:sanguino644p #elif MB(ANET_10) - #include "sanguino/pins_ANET_10.h" // ATmega1284P env:sanguino1284p env:sanguino1284p_optimized env:melzi_optiboot + #include "sanguino/pins_ANET_10.h" // ATmega1284P env:sanguino1284p env:sanguino1284p_optimized env:melzi_optiboot #elif MB(SETHI) - #include "sanguino/pins_SETHI.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p + #include "sanguino/pins_SETHI.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino1284p_optimized env:sanguino1284p env:sanguino644p // // Teensyduino - AT90USB1286, AT90USB1286P // #elif MB(TEENSYLU) - #include "teensy2/pins_TEENSYLU.h" // AT90USB1286, AT90USB1286P env:at90usb1286_cdc + #include "teensy2/pins_TEENSYLU.h" // AT90USB1286, AT90USB1286P env:at90usb1286_cdc #elif MB(PRINTRBOARD) - #include "teensy2/pins_PRINTRBOARD.h" // AT90USB1286 env:at90usb1286_dfu + #include "teensy2/pins_PRINTRBOARD.h" // AT90USB1286 env:at90usb1286_dfu #elif MB(PRINTRBOARD_REVF) - #include "teensy2/pins_PRINTRBOARD_REVF.h" // AT90USB1286 env:at90usb1286_dfu + #include "teensy2/pins_PRINTRBOARD_REVF.h" // AT90USB1286 env:at90usb1286_dfu #elif MB(BRAINWAVE) - #include "teensy2/pins_BRAINWAVE.h" // AT90USB646 env:at90usb1286_cdc + #include "teensy2/pins_BRAINWAVE.h" // AT90USB646 env:at90usb1286_cdc #elif MB(BRAINWAVE_PRO) - #include "teensy2/pins_BRAINWAVE_PRO.h" // AT90USB1286 env:at90usb1286_cdc + #include "teensy2/pins_BRAINWAVE_PRO.h" // AT90USB1286 env:at90usb1286_cdc #elif MB(SAV_MKI) - #include "teensy2/pins_SAV_MKI.h" // AT90USB1286 env:at90usb1286_cdc + #include "teensy2/pins_SAV_MKI.h" // AT90USB1286 env:at90usb1286_cdc #elif MB(TEENSY2) - #include "teensy2/pins_TEENSY2.h" // AT90USB1286 env:teensy20 + #include "teensy2/pins_TEENSY2.h" // AT90USB1286 env:teensy20 #elif MB(5DPRINT) - #include "teensy2/pins_5DPRINT.h" // AT90USB1286 env:at90usb1286_dfu + #include "teensy2/pins_5DPRINT.h" // AT90USB1286 env:at90usb1286_dfu // -// LPC1768 ARM Cortex M3 +// LPC1768 ARM Cortex-M3 // #elif MB(RAMPS_14_RE_ARM_EFB, RAMPS_14_RE_ARM_EEB, RAMPS_14_RE_ARM_EFF, RAMPS_14_RE_ARM_EEF, RAMPS_14_RE_ARM_SF) - #include "lpc1768/pins_RAMPS_RE_ARM.h" // LPC1768 env:LPC1768 + #include "lpc1768/pins_RAMPS_RE_ARM.h" // LPC1768 env:LPC1768 #elif MB(MKS_SBASE) - #include "lpc1768/pins_MKS_SBASE.h" // LPC1768 env:LPC1768 + #include "lpc1768/pins_MKS_SBASE.h" // LPC1768 env:LPC1768 #elif MB(MKS_SGEN_L) - #include "lpc1768/pins_MKS_SGEN_L.h" // LPC1768 env:LPC1768 + #include "lpc1768/pins_MKS_SGEN_L.h" // LPC1768 env:LPC1768 #elif MB(AZSMZ_MINI) - #include "lpc1768/pins_AZSMZ_MINI.h" // LPC1768 env:LPC1768 + #include "lpc1768/pins_AZSMZ_MINI.h" // LPC1768 env:LPC1768 #elif MB(BIQU_BQ111_A4) - #include "lpc1768/pins_BIQU_BQ111_A4.h" // LPC1768 env:LPC1768 + #include "lpc1768/pins_BIQU_BQ111_A4.h" // LPC1768 env:LPC1768 #elif MB(SELENA_COMPACT) - #include "lpc1768/pins_SELENA_COMPACT.h" // LPC1768 env:LPC1768 + #include "lpc1768/pins_SELENA_COMPACT.h" // LPC1768 env:LPC1768 #elif MB(BIQU_B300_V1_0) - #include "lpc1768/pins_BIQU_B300_V1.0.h" // LPC1768 env:LPC1768 + #include "lpc1768/pins_BIQU_B300_V1.0.h" // LPC1768 env:LPC1768 #elif MB(GMARSH_X6_REV1) - #include "lpc1768/pins_GMARSH_X6_REV1.h" // LPC1768 env:LPC1768 + #include "lpc1768/pins_GMARSH_X6_REV1.h" // LPC1768 env:LPC1768 #elif MB(BTT_SKR_V1_1) - #include "lpc1768/pins_BTT_SKR_V1_1.h" // LPC1768 env:LPC1768 + #include "lpc1768/pins_BTT_SKR_V1_1.h" // LPC1768 env:LPC1768 #elif MB(BTT_SKR_V1_3) - #include "lpc1768/pins_BTT_SKR_V1_3.h" // LPC1768 env:LPC1768 + #include "lpc1768/pins_BTT_SKR_V1_3.h" // LPC1768 env:LPC1768 #elif MB(BTT_SKR_V1_4) - #include "lpc1768/pins_BTT_SKR_V1_4.h" // LPC1768 env:LPC1768 + #include "lpc1768/pins_BTT_SKR_V1_4.h" // LPC1768 env:LPC1768 #elif MB(EMOTRONIC) - #include "lpc1768/pins_EMOTRONIC.h" // LPC1768 env:LPC1768 + #include "lpc1768/pins_EMOTRONIC.h" // LPC1768 env:LPC1768 // -// LPC1769 ARM Cortex M3 +// LPC1769 ARM Cortex-M3 // #elif MB(MKS_SGEN) - #include "lpc1769/pins_MKS_SGEN.h" // LPC1769 env:LPC1769 + #include "lpc1769/pins_MKS_SGEN.h" // LPC1769 env:LPC1769 #elif MB(AZTEEG_X5_GT) - #include "lpc1769/pins_AZTEEG_X5_GT.h" // LPC1769 env:LPC1769 + #include "lpc1769/pins_AZTEEG_X5_GT.h" // LPC1769 env:LPC1769 #elif MB(AZTEEG_X5_MINI) - #include "lpc1769/pins_AZTEEG_X5_MINI.h" // LPC1769 env:LPC1769 + #include "lpc1769/pins_AZTEEG_X5_MINI.h" // LPC1769 env:LPC1769 #elif MB(AZTEEG_X5_MINI_WIFI) - #include "lpc1769/pins_AZTEEG_X5_MINI_WIFI.h" // LPC1769 env:LPC1769 + #include "lpc1769/pins_AZTEEG_X5_MINI_WIFI.h" // LPC1769 env:LPC1769 #elif MB(COHESION3D_REMIX) - #include "lpc1769/pins_COHESION3D_REMIX.h" // LPC1769 env:LPC1769 + #include "lpc1769/pins_COHESION3D_REMIX.h" // LPC1769 env:LPC1769 #elif MB(COHESION3D_MINI) - #include "lpc1769/pins_COHESION3D_MINI.h" // LPC1769 env:LPC1769 + #include "lpc1769/pins_COHESION3D_MINI.h" // LPC1769 env:LPC1769 #elif MB(SMOOTHIEBOARD) - #include "lpc1769/pins_SMOOTHIEBOARD.h" // LPC1769 env:LPC1769 + #include "lpc1769/pins_SMOOTHIEBOARD.h" // LPC1769 env:LPC1769 #elif MB(TH3D_EZBOARD) - #include "lpc1769/pins_TH3D_EZBOARD.h" // LPC1769 env:LPC1769 + #include "lpc1769/pins_TH3D_EZBOARD.h" // LPC1769 env:LPC1769 #elif MB(BTT_SKR_V1_4_TURBO) - #include "lpc1769/pins_BTT_SKR_V1_4_TURBO.h" // LPC1769 env:LPC1769 + #include "lpc1769/pins_BTT_SKR_V1_4_TURBO.h" // LPC1769 env:LPC1769 #elif MB(MKS_SGEN_L_V2) - #include "lpc1769/pins_MKS_SGEN_L_V2.h" // LPC1769 env:LPC1769 + #include "lpc1769/pins_MKS_SGEN_L_V2.h" // LPC1769 env:LPC1769 #elif MB(BTT_SKR_E3_TURBO) - #include "lpc1769/pins_BTT_SKR_E3_TURBO.h" // LPC1769 env:LPC1769 + #include "lpc1769/pins_BTT_SKR_E3_TURBO.h" // LPC1769 env:LPC1769 #elif MB(FLY_CDY) - #include "lpc1769/pins_FLY_CDY.h" // LPC1769 env:LPC1769 + #include "lpc1769/pins_FLY_CDY.h" // LPC1769 env:LPC1769 // // Due (ATSAM) boards // #elif MB(DUE3DOM) - #include "sam/pins_DUE3DOM.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug + #include "sam/pins_DUE3DOM.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug #elif MB(DUE3DOM_MINI) - #include "sam/pins_DUE3DOM_MINI.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug + #include "sam/pins_DUE3DOM_MINI.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug #elif MB(RADDS) - #include "sam/pins_RADDS.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug + #include "sam/pins_RADDS.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug #elif MB(RURAMPS4D_11) - #include "sam/pins_RURAMPS4D_11.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug + #include "sam/pins_RURAMPS4D_11.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug #elif MB(RURAMPS4D_13) - #include "sam/pins_RURAMPS4D_13.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug + #include "sam/pins_RURAMPS4D_13.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug #elif MB(RAMPS_FD_V1) - #include "sam/pins_RAMPS_FD_V1.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug + #include "sam/pins_RAMPS_FD_V1.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug #elif MB(RAMPS_FD_V2) - #include "sam/pins_RAMPS_FD_V2.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug + #include "sam/pins_RAMPS_FD_V2.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug #elif MB(RAMPS_SMART_EFB, RAMPS_SMART_EEB, RAMPS_SMART_EFF, RAMPS_SMART_EEF, RAMPS_SMART_SF) - #include "sam/pins_RAMPS_SMART.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug + #include "sam/pins_RAMPS_SMART.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug #elif MB(RAMPS_DUO_EFB, RAMPS_DUO_EEB, RAMPS_DUO_EFF, RAMPS_DUO_EEF, RAMPS_DUO_SF) - #include "sam/pins_RAMPS_DUO.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug + #include "sam/pins_RAMPS_DUO.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug #elif MB(RAMPS4DUE_EFB, RAMPS4DUE_EEB, RAMPS4DUE_EFF, RAMPS4DUE_EEF, RAMPS4DUE_SF) - #include "sam/pins_RAMPS4DUE.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug + #include "sam/pins_RAMPS4DUE.h" // SAM3X8E env:DUE env:DUE_USB env:DUE_debug #elif MB(ULTRATRONICS_PRO) - #include "sam/pins_ULTRATRONICS_PRO.h" // SAM3X8E env:DUE env:DUE_debug + #include "sam/pins_ULTRATRONICS_PRO.h" // SAM3X8E env:DUE env:DUE_debug #elif MB(ARCHIM1) - #include "sam/pins_ARCHIM1.h" // SAM3X8E env:DUE_archim env:DUE_archim_debug + #include "sam/pins_ARCHIM1.h" // SAM3X8E env:DUE_archim env:DUE_archim_debug #elif MB(ARCHIM2) - #include "sam/pins_ARCHIM2.h" // SAM3X8E env:DUE_archim env:DUE_archim_debug + #include "sam/pins_ARCHIM2.h" // SAM3X8E env:DUE_archim env:DUE_archim_debug #elif MB(ALLIGATOR) - #include "sam/pins_ALLIGATOR_R2.h" // SAM3X8E env:DUE env:DUE_debug + #include "sam/pins_ALLIGATOR_R2.h" // SAM3X8E env:DUE env:DUE_debug #elif MB(CNCONTROLS_15D) - #include "sam/pins_CNCONTROLS_15D.h" // SAM3X8E env:DUE env:DUE_USB + #include "sam/pins_CNCONTROLS_15D.h" // SAM3X8E env:DUE env:DUE_USB #elif MB(KRATOS32) - #include "sam/pins_KRATOS32.h" // SAM3X8E env:DUE env:DUE_USB + #include "sam/pins_KRATOS32.h" // SAM3X8E env:DUE env:DUE_USB #elif MB(PRINTRBOARD_G2) - #include "sam/pins_PRINTRBOARD_G2.h" // SAM3X8C env:DUE_USB + #include "sam/pins_PRINTRBOARD_G2.h" // SAM3X8C env:DUE_USB #elif MB(ADSK) - #include "sam/pins_ADSK.h" // SAM3X8C env:DUE env:DUE_debug + #include "sam/pins_ADSK.h" // SAM3X8C env:DUE env:DUE_debug // // STM32 ARM Cortex-M0 // + #elif MB(MALYAN_M200_V2) - #include "stm32f0/pins_MALYAN_M200_V2.h" // STM32F0 env:STM32F070RB_malyan env:STM32F070CB_malyan + #include "stm32f0/pins_MALYAN_M200_V2.h" // STM32F0 env:STM32F070RB_malyan env:STM32F070CB_malyan #elif MB(MALYAN_M300) - #include "stm32f0/pins_MALYAN_M300.h" // STM32F0 env:malyan_M300 + #include "stm32f0/pins_MALYAN_M300.h" // STM32F0 env:malyan_M300 + +// +// STM32 ARM Cortex-M0+ +// + +#elif MB(BTT_EBB42_V1_1) + #include "stm32g0/pins_BTT_EBB42_V1_1.h" // STM32G0 env:BTT_EBB42_V1_1_filament_extruder +#elif MB(BTT_SKR_MINI_E3_V3_0) + #include "stm32g0/pins_BTT_SKR_MINI_E3_V3_0.h" // STM32G0 env:STM32G0B1RE_btt env:STM32G0B1RE_btt_xfer +#elif MB(BTT_MANTA_M4P_V1_0) + #include "stm32g0/pins_BTT_MANTA_M4P_V1_0.h" // STM32G0 env:STM32G0B1RE_manta_btt env:STM32G0B1RE_manta_btt_xfer +#elif MB(BTT_MANTA_M5P_V1_0) + #include "stm32g0/pins_BTT_MANTA_M5P_V1_0.h" // STM32G0 env:STM32G0B1RE_manta_btt env:STM32G0B1RE_manta_btt_xfer +#elif MB(BTT_MANTA_E3_EZ_V1_0) + #include "stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h" // STM32G0 env:STM32G0B1RE_manta_btt env:STM32G0B1RE_manta_btt_xfer +#elif MB(BTT_MANTA_M8P_V1_0) + #include "stm32g0/pins_BTT_MANTA_M8P_V1_0.h" // STM32G0 env:STM32G0B1VE_btt env:STM32G0B1VE_btt_xfer +#elif MB(BTT_MANTA_M8P_V1_1) + #include "stm32g0/pins_BTT_MANTA_M8P_V1_1.h" // STM32G0 env:STM32G0B1VE_btt env:STM32G0B1VE_btt_xfer // // STM32 ARM Cortex-M3 // #elif MB(STM32F103RE) - #include "stm32f1/pins_STM32F1R.h" // STM32F1 env:STM32F103RE env:STM32F103RE_maple + #include "stm32f1/pins_STM32F1R.h" // STM32F1 env:STM32F103RE env:STM32F103RE_maple #elif MB(MALYAN_M200) - #include "stm32f1/pins_MALYAN_M200.h" // STM32F1 env:STM32F103CB_malyan env:STM32F103CB_malyan_maple + #include "stm32f1/pins_MALYAN_M200.h" // STM32F1 env:STM32F103CB_malyan env:STM32F103CB_malyan_maple #elif MB(STM3R_MINI) - #include "stm32f1/pins_STM3R_MINI.h" // STM32F1 env:STM32F103VE env:STM32F103RE_maple + #include "stm32f1/pins_STM3R_MINI.h" // STM32F1 env:STM32F103VE env:STM32F103RE_maple #elif MB(GTM32_PRO_VB) - #include "stm32f1/pins_GTM32_PRO_VB.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple + #include "stm32f1/pins_GTM32_PRO_VB.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple #elif MB(GTM32_PRO_VD) - #include "stm32f1/pins_GTM32_PRO_VD.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple + #include "stm32f1/pins_GTM32_PRO_VD.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple #elif MB(GTM32_MINI) - #include "stm32f1/pins_GTM32_MINI.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple + #include "stm32f1/pins_GTM32_MINI.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple #elif MB(GTM32_MINI_A30) - #include "stm32f1/pins_GTM32_MINI_A30.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple + #include "stm32f1/pins_GTM32_MINI_A30.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple #elif MB(GTM32_REV_B) - #include "stm32f1/pins_GTM32_REV_B.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple + #include "stm32f1/pins_GTM32_REV_B.h" // STM32F1 env:STM32F103VE env:STM32F103VE_GTM32_maple #elif MB(MORPHEUS) - #include "stm32f1/pins_MORPHEUS.h" // STM32F1 env:STM32F103RE env:STM32F103RE_maple + #include "stm32f1/pins_MORPHEUS.h" // STM32F1 env:STM32F103RE env:STM32F103RE_maple #elif MB(CHITU3D) - #include "stm32f1/pins_CHITU3D.h" // STM32F1 env:STM32F103ZE env:STM32F103RE_maple + #include "stm32f1/pins_CHITU3D.h" // STM32F1 env:STM32F103ZE env:STM32F103RE_maple #elif MB(MKS_ROBIN) - #include "stm32f1/pins_MKS_ROBIN.h" // STM32F1 env:mks_robin env:mks_robin_maple + #include "stm32f1/pins_MKS_ROBIN.h" // STM32F1 env:mks_robin env:mks_robin_maple #elif MB(MKS_ROBIN_MINI) - #include "stm32f1/pins_MKS_ROBIN_MINI.h" // STM32F1 env:mks_robin_mini env:mks_robin_mini_maple + #include "stm32f1/pins_MKS_ROBIN_MINI.h" // STM32F1 env:mks_robin_mini env:mks_robin_mini_maple #elif MB(MKS_ROBIN_NANO) - #include "stm32f1/pins_MKS_ROBIN_NANO.h" // STM32F1 env:mks_robin_nano_v1v2 env:mks_robin_nano_v1v2_maple env:mks_robin_nano_v1v2_usbmod + #include "stm32f1/pins_MKS_ROBIN_NANO.h" // STM32F1 env:mks_robin_nano_v1v2 env:mks_robin_nano_v1v2_maple env:mks_robin_nano_v1v2_usbmod #elif MB(MKS_ROBIN_NANO_V2) - #include "stm32f1/pins_MKS_ROBIN_NANO_V2.h" // STM32F1 env:mks_robin_nano_v1v2 env:mks_robin_nano_v1v2_maple + #include "stm32f1/pins_MKS_ROBIN_NANO_V2.h" // STM32F1 env:mks_robin_nano_v1v2 env:mks_robin_nano_v1v2_maple #elif MB(MKS_ROBIN_LITE) - #include "stm32f1/pins_MKS_ROBIN_LITE.h" // STM32F1 env:mks_robin_lite env:mks_robin_lite_maple + #include "stm32f1/pins_MKS_ROBIN_LITE.h" // STM32F1 env:mks_robin_lite env:mks_robin_lite_maple #elif MB(MKS_ROBIN_LITE3) - #include "stm32f1/pins_MKS_ROBIN_LITE3.h" // STM32F1 env:mks_robin_lite3 env:mks_robin_lite3_maple + #include "stm32f1/pins_MKS_ROBIN_LITE3.h" // STM32F1 env:mks_robin_lite3 env:mks_robin_lite3_maple #elif MB(MKS_ROBIN_PRO) - #include "stm32f1/pins_MKS_ROBIN_PRO.h" // STM32F1 env:mks_robin_pro env:mks_robin_pro_maple + #include "stm32f1/pins_MKS_ROBIN_PRO.h" // STM32F1 env:mks_robin_pro env:mks_robin_pro_maple #elif MB(MKS_ROBIN_E3) - #include "stm32f1/pins_MKS_ROBIN_E3.h" // STM32F1 env:mks_robin_e3 env:mks_robin_e3_maple + #include "stm32f1/pins_MKS_ROBIN_E3.h" // STM32F1 env:mks_robin_e3 env:mks_robin_e3_maple #elif MB(MKS_ROBIN_E3_V1_1) - #include "stm32f1/pins_MKS_ROBIN_E3_V1_1.h" // STM32F1 env:mks_robin_e3 + #include "stm32f1/pins_MKS_ROBIN_E3_V1_1.h" // STM32F1 env:mks_robin_e3 #elif MB(MKS_ROBIN_E3D) - #include "stm32f1/pins_MKS_ROBIN_E3D.h" // STM32F1 env:mks_robin_e3 + #include "stm32f1/pins_MKS_ROBIN_E3D.h" // STM32F1 env:mks_robin_e3 #elif MB(MKS_ROBIN_E3D_V1_1) - #include "stm32f1/pins_MKS_ROBIN_E3D_V1_1.h" // STM32F1 env:mks_robin_e3 env:mks_robin_e3_maple + #include "stm32f1/pins_MKS_ROBIN_E3D_V1_1.h" // STM32F1 env:mks_robin_e3 env:mks_robin_e3_maple #elif MB(MKS_ROBIN_E3P) - #include "stm32f1/pins_MKS_ROBIN_E3P.h" // STM32F1 env:mks_robin_e3p env:mks_robin_e3p_maple -#elif MB(BTT_EBB42_V1_1) - #include "stm32g0/pins_BTT_EBB42_V1_1.h" // STM32G0 env:BTT_EBB42_V1_1_filament_extruder + #include "stm32f1/pins_MKS_ROBIN_E3P.h" // STM32F1 env:mks_robin_e3p env:mks_robin_e3p_maple #elif MB(BTT_SKR_MINI_V1_1) - #include "stm32f1/pins_BTT_SKR_MINI_V1_1.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple + #include "stm32f1/pins_BTT_SKR_MINI_V1_1.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple #elif MB(BTT_SKR_MINI_E3_V1_0) - #include "stm32f1/pins_BTT_SKR_MINI_E3_V1_0.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple + #include "stm32f1/pins_BTT_SKR_MINI_E3_V1_0.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple #elif MB(BTT_SKR_MINI_E3_V1_2) - #include "stm32f1/pins_BTT_SKR_MINI_E3_V1_2.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple + #include "stm32f1/pins_BTT_SKR_MINI_E3_V1_2.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple #elif MB(BTT_SKR_MINI_E3_V2_0) - #include "stm32f1/pins_BTT_SKR_MINI_E3_V2_0.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RE_btt env:STM32F103RE_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple env:STM32F103RE_btt_maple env:STM32F103RE_btt_USB_maple -#elif MB(BTT_SKR_MINI_E3_V3_0) - #include "stm32g0/pins_BTT_SKR_MINI_E3_V3_0.h" // STM32G0 env:STM32G0B1RE_btt env:STM32G0B1RE_btt_xfer -#elif MB(BTT_MANTA_M4P_V1_0) - #include "stm32g0/pins_BTT_MANTA_M4P_V1_0.h" // STM32G0 env:STM32G0B1RE_manta_btt env:STM32G0B1RE_manta_btt_xfer -#elif MB(BTT_MANTA_M5P_V1_0) - #include "stm32g0/pins_BTT_MANTA_M5P_V1_0.h" // STM32G0 env:STM32G0B1RE_manta_btt env:STM32G0B1RE_manta_btt_xfer -#elif MB(BTT_MANTA_E3_EZ_V1_0) - #include "stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h" // STM32G0 env:STM32G0B1RE_manta_btt env:STM32G0B1RE_manta_btt_xfer -#elif MB(BTT_MANTA_M8P_V1_0) - #include "stm32g0/pins_BTT_MANTA_M8P_V1_0.h" // STM32G0 env:STM32G0B1VE_btt env:STM32G0B1VE_btt_xfer -#elif MB(BTT_MANTA_M8P_V1_1) - #include "stm32g0/pins_BTT_MANTA_M8P_V1_1.h" // STM32G0 env:STM32G0B1VE_btt env:STM32G0B1VE_btt_xfer -#elif MB(BTT_SKR_MINI_E3_V3_0_1) - #include "stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h"// STM32F4 env:STM32F401RC_btt env:STM32F401RC_btt_xfer + #include "stm32f1/pins_BTT_SKR_MINI_E3_V2_0.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RE_btt env:STM32F103RE_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple env:STM32F103RE_btt_maple env:STM32F103RE_btt_USB_maple #elif MB(BTT_SKR_MINI_MZ_V1_0) - #include "stm32f1/pins_BTT_SKR_MINI_MZ_V1_0.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple + #include "stm32f1/pins_BTT_SKR_MINI_MZ_V1_0.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple #elif MB(BTT_SKR_E3_DIP) - #include "stm32f1/pins_BTT_SKR_E3_DIP.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RE_btt env:STM32F103RE_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple env:STM32F103RE_btt_maple env:STM32F103RE_btt_USB_maple + #include "stm32f1/pins_BTT_SKR_E3_DIP.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RE_btt env:STM32F103RE_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple env:STM32F103RE_btt_maple env:STM32F103RE_btt_USB_maple #elif MB(BTT_SKR_CR6) - #include "stm32f1/pins_BTT_SKR_CR6.h" // STM32F1 env:STM32F103RE_btt env:STM32F103RE_btt_USB env:STM32F103RE_btt_maple env:STM32F103RE_btt_USB_maple + #include "stm32f1/pins_BTT_SKR_CR6.h" // STM32F1 env:STM32F103RE_btt env:STM32F103RE_btt_USB env:STM32F103RE_btt_maple env:STM32F103RE_btt_USB_maple #elif MB(JGAURORA_A5S_A1) - #include "stm32f1/pins_JGAURORA_A5S_A1.h" // STM32F1 env:jgaurora_a5s_a1 env:jgaurora_a5s_a1_maple + #include "stm32f1/pins_JGAURORA_A5S_A1.h" // STM32F1 env:jgaurora_a5s_a1 env:jgaurora_a5s_a1_maple #elif MB(FYSETC_AIO_II) - #include "stm32f1/pins_FYSETC_AIO_II.h" // STM32F1 env:STM32F103RC_fysetc env:STM32F103RC_fysetc_maple + #include "stm32f1/pins_FYSETC_AIO_II.h" // STM32F1 env:STM32F103RC_fysetc env:STM32F103RC_fysetc_maple #elif MB(FYSETC_CHEETAH) - #include "stm32f1/pins_FYSETC_CHEETAH.h" // STM32F1 env:STM32F103RC_fysetc env:STM32F103RC_fysetc_maple + #include "stm32f1/pins_FYSETC_CHEETAH.h" // STM32F1 env:STM32F103RC_fysetc env:STM32F103RC_fysetc_maple #elif MB(FYSETC_CHEETAH_V12) - #include "stm32f1/pins_FYSETC_CHEETAH_V12.h" // STM32F1 env:STM32F103RC_fysetc env:STM32F103RC_fysetc_maple + #include "stm32f1/pins_FYSETC_CHEETAH_V12.h" // STM32F1 env:STM32F103RC_fysetc env:STM32F103RC_fysetc_maple #elif MB(LONGER3D_LK) - #include "stm32f1/pins_LONGER3D_LK.h" // STM32F1 env:STM32F103VE_longer env:STM32F103VE_longer_maple + #include "stm32f1/pins_LONGER3D_LK.h" // STM32F1 env:STM32F103VE_longer env:STM32F103VE_longer_maple #elif MB(CCROBOT_MEEB_3DP) - #include "stm32f1/pins_CCROBOT_MEEB_3DP.h" // STM32F1 env:STM32F103RC_meeb_maple + #include "stm32f1/pins_CCROBOT_MEEB_3DP.h" // STM32F1 env:STM32F103RC_meeb_maple #elif MB(CHITU3D_V5) - #include "stm32f1/pins_CHITU3D_V5.h" // STM32F1 env:chitu_f103 env:chitu_f103_maple env:chitu_v5_gpio_init env:chitu_v5_gpio_init_maple + #include "stm32f1/pins_CHITU3D_V5.h" // STM32F1 env:chitu_f103 env:chitu_f103_maple env:chitu_v5_gpio_init env:chitu_v5_gpio_init_maple #elif MB(CHITU3D_V6) - #include "stm32f1/pins_CHITU3D_V6.h" // STM32F1 env:chitu_f103 env:chitu_f103_maple + #include "stm32f1/pins_CHITU3D_V6.h" // STM32F1 env:chitu_f103 env:chitu_f103_maple #elif MB(CHITU3D_V9) - #include "stm32f1/pins_CHITU3D_V9.h" // STM32F1 env:chitu_f103 env:chitu_f103_maple + #include "stm32f1/pins_CHITU3D_V9.h" // STM32F1 env:chitu_f103 env:chitu_f103_maple #elif MB(CREALITY_V4) - #include "stm32f1/pins_CREALITY_V4.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple + #include "stm32f1/pins_CREALITY_V4.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple #elif MB(CREALITY_V4210) - #include "stm32f1/pins_CREALITY_V4210.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple + #include "stm32f1/pins_CREALITY_V4210.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple #elif MB(CREALITY_V425) - #include "stm32f1/pins_CREALITY_V425.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple + #include "stm32f1/pins_CREALITY_V425.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple #elif MB(CREALITY_V422) - #include "stm32f1/pins_CREALITY_V422.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple + #include "stm32f1/pins_CREALITY_V422.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple #elif MB(CREALITY_V423) - #include "stm32f1/pins_CREALITY_V423.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer + #include "stm32f1/pins_CREALITY_V423.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer #elif MB(CREALITY_V427) - #include "stm32f1/pins_CREALITY_V427.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple + #include "stm32f1/pins_CREALITY_V427.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple #elif MB(CREALITY_V431, CREALITY_V431_A, CREALITY_V431_B, CREALITY_V431_C, CREALITY_V431_D) - #include "stm32f1/pins_CREALITY_V431.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple + #include "stm32f1/pins_CREALITY_V431.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple #elif MB(CREALITY_V452) - #include "stm32f1/pins_CREALITY_V452.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple + #include "stm32f1/pins_CREALITY_V452.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple #elif MB(CREALITY_V453) - #include "stm32f1/pins_CREALITY_V453.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple + #include "stm32f1/pins_CREALITY_V453.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple #elif MB(CREALITY_V24S1) - #include "stm32f1/pins_CREALITY_V24S1.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple + #include "stm32f1/pins_CREALITY_V24S1.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple #elif MB(CREALITY_V24S1_301) - #include "stm32f1/pins_CREALITY_V24S1_301.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple + #include "stm32f1/pins_CREALITY_V24S1_301.h" // STM32F1 env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple #elif MB(CREALITY_V25S1) - #include "stm32f1/pins_CREALITY_V25S1.h" // STM32F1 env:STM32F103RE_creality_smartPro env:STM32F103RE_creality_smartPro_maple + #include "stm32f1/pins_CREALITY_V25S1.h" // STM32F1 env:STM32F103RE_creality_smartPro env:STM32F103RE_creality_smartPro_maple #elif MB(CREALITY_V521) - #include "stm32f1/pins_CREALITY_V521.h" // STM32F1 env:STM32F103VE_creality + #include "stm32f1/pins_CREALITY_V521.h" // STM32F1 env:STM32F103VE_creality #elif MB(TRIGORILLA_PRO) - #include "stm32f1/pins_TRIGORILLA_PRO.h" // STM32F1 env:trigorilla_pro env:trigorilla_pro_maple env:trigorilla_pro_disk + #include "stm32f1/pins_TRIGORILLA_PRO.h" // STM32F1 env:trigorilla_pro env:trigorilla_pro_maple env:trigorilla_pro_disk #elif MB(FLY_MINI) - #include "stm32f1/pins_FLY_MINI.h" // STM32F1 env:FLY_MINI env:FLY_MINI_maple + #include "stm32f1/pins_FLY_MINI.h" // STM32F1 env:FLY_MINI env:FLY_MINI_maple #elif MB(FLSUN_HISPEED) - #include "stm32f1/pins_FLSUN_HISPEED.h" // STM32F1 env:flsun_hispeedv1 + #include "stm32f1/pins_FLSUN_HISPEED.h" // STM32F1 env:flsun_hispeedv1 #elif MB(BEAST) - #include "stm32f1/pins_BEAST.h" // STM32F1 env:STM32F103VE env:STM32F103RE_maple + #include "stm32f1/pins_BEAST.h" // STM32F1 env:STM32F103VE env:STM32F103RE_maple #elif MB(MINGDA_MPX_ARM_MINI) - #include "stm32f1/pins_MINGDA_MPX_ARM_MINI.h" // STM32F1 env:mingda_mpx_arm_mini + #include "stm32f1/pins_MINGDA_MPX_ARM_MINI.h" // STM32F1 env:mingda_mpx_arm_mini #elif MB(ZONESTAR_ZM3E2) - #include "stm32f1/pins_ZM3E2_V1_0.h" // STM32F1 env:STM32F103RC_ZM3E2_USB env:STM32F103RC_ZM3E2_USB_maple + #include "stm32f1/pins_ZM3E2_V1_0.h" // STM32F1 env:STM32F103RC_ZM3E2_USB env:STM32F103RC_ZM3E2_USB_maple #elif MB(ZONESTAR_ZM3E4) - #include "stm32f1/pins_ZM3E4_V1_0.h" // STM32F1 env:STM32F103VC_ZM3E4_USB env:STM32F103VC_ZM3E4_USB_maple + #include "stm32f1/pins_ZM3E4_V1_0.h" // STM32F1 env:STM32F103VC_ZM3E4_USB env:STM32F103VC_ZM3E4_USB_maple #elif MB(ZONESTAR_ZM3E4V2) - #include "stm32f1/pins_ZM3E4_V2_0.h" // STM32F1 env:STM32F103VE_ZM3E4V2_USB env:STM32F103VE_ZM3E4V2_USB_maple + #include "stm32f1/pins_ZM3E4_V2_0.h" // STM32F1 env:STM32F103VE_ZM3E4V2_USB env:STM32F103VE_ZM3E4V2_USB_maple #elif MB(ERYONE_ERY32_MINI) - #include "stm32f1/pins_ERYONE_ERY32_MINI.h" // STM32F1 env:ERYONE_ERY32_MINI_maple + #include "stm32f1/pins_ERYONE_ERY32_MINI.h" // STM32F1 env:ERYONE_ERY32_MINI_maple #elif MB(PANDA_PI_V29) - #include "stm32f1/pins_PANDA_PI_V29.h" // STM32F1 env:PANDA_PI_V29 + #include "stm32f1/pins_PANDA_PI_V29.h" // STM32F1 env:PANDA_PI_V29 #elif MB(SOVOL_V131) - #include "gd32f1/pins_SOVOL_V131.h" // GD32F1 env:GD32F103RET6_sovol_maple + #include "gd32f1/pins_SOVOL_V131.h" // GD32F1 env:GD32F103RET6_sovol_maple #elif MB(TRIGORILLA_V006) - #include "gd32f1/pins_TRIGORILLA_V006.h" // GD32F1 env:trigorilla_v006 + #include "gd32f1/pins_TRIGORILLA_V006.h" // GD32F1 env:trigorilla_v006 #elif MB(KEDI_CONTROLLER_V1_2) - #include "stm32f1/pins_KEDI_CONTROLLER_V1_2.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple + #include "stm32f1/pins_KEDI_CONTROLLER_V1_2.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple // // ARM Cortex-M4F // #elif MB(TEENSY31_32) - #include "teensy3/pins_TEENSY31_32.h" // TEENSY31_32 env:teensy31 + #include "teensy3/pins_TEENSY31_32.h" // TEENSY31_32 env:teensy31 #elif MB(TEENSY35_36) - #include "teensy3/pins_TEENSY35_36.h" // TEENSY35_36 env:teensy35 env:teensy36 + #include "teensy3/pins_TEENSY35_36.h" // TEENSY35_36 env:teensy35 env:teensy36 // // STM32 ARM Cortex-M4F // #elif MB(ARMED) - #include "stm32f4/pins_ARMED.h" // STM32F4 env:ARMED + #include "stm32f4/pins_ARMED.h" // STM32F4 env:ARMED #elif MB(RUMBA32_V1_0, RUMBA32_V1_1) - #include "stm32f4/pins_RUMBA32_AUS3D.h" // STM32F4 env:rumba32 + #include "stm32f4/pins_RUMBA32_AUS3D.h" // STM32F4 env:rumba32 #elif MB(RUMBA32_MKS) - #include "stm32f4/pins_RUMBA32_MKS.h" // STM32F4 env:rumba32 + #include "stm32f4/pins_RUMBA32_MKS.h" // STM32F4 env:rumba32 #elif MB(RUMBA32_BTT) - #include "stm32f4/pins_RUMBA32_BTT.h" // STM32F4 env:rumba32 + #include "stm32f4/pins_RUMBA32_BTT.h" // STM32F4 env:rumba32 #elif MB(BLACK_STM32F407VE) - #include "stm32f4/pins_BLACK_STM32F407VE.h" // STM32F4 env:STM32F407VE_black + #include "stm32f4/pins_BLACK_STM32F407VE.h" // STM32F4 env:STM32F407VE_black #elif MB(BTT_SKR_PRO_V1_1) - #include "stm32f4/pins_BTT_SKR_PRO_V1_1.h" // STM32F4 env:BIGTREE_SKR_PRO env:BIGTREE_SKR_PRO_usb_flash_drive + #include "stm32f4/pins_BTT_SKR_PRO_V1_1.h" // STM32F4 env:BIGTREE_SKR_PRO env:BIGTREE_SKR_PRO_usb_flash_drive #elif MB(BTT_SKR_PRO_V1_2) - #include "stm32f4/pins_BTT_SKR_PRO_V1_2.h" // STM32F4 env:BIGTREE_SKR_PRO env:BIGTREE_SKR_PRO_usb_flash_drive + #include "stm32f4/pins_BTT_SKR_PRO_V1_2.h" // STM32F4 env:BIGTREE_SKR_PRO env:BIGTREE_SKR_PRO_usb_flash_drive #elif MB(BTT_GTR_V1_0) - #include "stm32f4/pins_BTT_GTR_V1_0.h" // STM32F4 env:BIGTREE_GTR_V1_0 env:BIGTREE_GTR_V1_0_usb_flash_drive + #include "stm32f4/pins_BTT_GTR_V1_0.h" // STM32F4 env:BIGTREE_GTR_V1_0 env:BIGTREE_GTR_V1_0_usb_flash_drive #elif MB(BTT_BTT002_V1_0) - #include "stm32f4/pins_BTT_BTT002_V1_0.h" // STM32F4 env:BIGTREE_BTT002 env:BIGTREE_BTT002_VET6 + #include "stm32f4/pins_BTT_BTT002_V1_0.h" // STM32F4 env:BIGTREE_BTT002 env:BIGTREE_BTT002_VET6 #elif MB(BTT_E3_RRF) - #include "stm32f4/pins_BTT_E3_RRF.h" // STM32F4 env:BIGTREE_E3_RRF + #include "stm32f4/pins_BTT_E3_RRF.h" // STM32F4 env:BIGTREE_E3_RRF +#elif MB(BTT_SKR_MINI_E3_V3_0_1) + #include "stm32f4/pins_BTT_SKR_MINI_E3_V3_0_1.h" // STM32F4 env:STM32F401RC_btt env:STM32F401RC_btt_xfer #elif MB(BTT_SKR_V2_0_REV_A) - #include "stm32f4/pins_BTT_SKR_V2_0_REV_A.h" // STM32F4 env:BIGTREE_SKR_2 env:BIGTREE_SKR_2_USB env:BIGTREE_SKR_2_USB_debug + #include "stm32f4/pins_BTT_SKR_V2_0_REV_A.h" // STM32F4 env:BIGTREE_SKR_2 env:BIGTREE_SKR_2_USB env:BIGTREE_SKR_2_USB_debug #elif MB(BTT_SKR_V2_0_REV_B) - #include "stm32f4/pins_BTT_SKR_V2_0_REV_B.h" // STM32F4 env:BIGTREE_SKR_2 env:BIGTREE_SKR_2_USB env:BIGTREE_SKR_2_USB_debug env:BIGTREE_SKR_2_F429 env:BIGTREE_SKR_2_F429_USB env:BIGTREE_SKR_2_F429_USB_debug + #include "stm32f4/pins_BTT_SKR_V2_0_REV_B.h" // STM32F4 env:BIGTREE_SKR_2 env:BIGTREE_SKR_2_USB env:BIGTREE_SKR_2_USB_debug env:BIGTREE_SKR_2_F429 env:BIGTREE_SKR_2_F429_USB env:BIGTREE_SKR_2_F429_USB_debug #elif MB(BTT_OCTOPUS_V1_0) - #include "stm32f4/pins_BTT_OCTOPUS_V1_0.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_USB + #include "stm32f4/pins_BTT_OCTOPUS_V1_0.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_USB #elif MB(BTT_OCTOPUS_V1_1) - #include "stm32f4/pins_BTT_OCTOPUS_V1_1.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_USB env:STM32F429ZG_btt env:STM32F429ZG_btt_USB env:STM32F407ZE_btt env:STM32F407ZE_btt_USB + #include "stm32f4/pins_BTT_OCTOPUS_V1_1.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_USB env:STM32F429ZG_btt env:STM32F429ZG_btt_USB env:STM32F407ZE_btt env:STM32F407ZE_btt_USB #elif MB(BTT_OCTOPUS_PRO_V1_0) - #include "stm32f4/pins_BTT_OCTOPUS_PRO_V1_0.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_USB env:STM32F429ZG_btt env:STM32F429ZG_btt_USB env:STM32H723ZE_btt + #include "stm32f4/pins_BTT_OCTOPUS_PRO_V1_0.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_USB env:STM32F429ZG_btt env:STM32F429ZG_btt_USB env:STM32H723ZE_btt #elif MB(LERDGE_K) - #include "stm32f4/pins_LERDGE_K.h" // STM32F4 env:LERDGEK env:LERDGEK_usb_flash_drive + #include "stm32f4/pins_LERDGE_K.h" // STM32F4 env:LERDGEK env:LERDGEK_usb_flash_drive #elif MB(LERDGE_S) - #include "stm32f4/pins_LERDGE_S.h" // STM32F4 env:LERDGES env:LERDGES_usb_flash_drive + #include "stm32f4/pins_LERDGE_S.h" // STM32F4 env:LERDGES env:LERDGES_usb_flash_drive #elif MB(LERDGE_X) - #include "stm32f4/pins_LERDGE_X.h" // STM32F4 env:LERDGEX env:LERDGEX_usb_flash_drive + #include "stm32f4/pins_LERDGE_X.h" // STM32F4 env:LERDGEX env:LERDGEX_usb_flash_drive #elif MB(FYSETC_S6) - #include "stm32f4/pins_FYSETC_S6.h" // STM32F4 env:FYSETC_S6 env:FYSETC_S6_8000 + #include "stm32f4/pins_FYSETC_S6.h" // STM32F4 env:FYSETC_S6 env:FYSETC_S6_8000 #elif MB(FYSETC_S6_V2_0) - #include "stm32f4/pins_FYSETC_S6_V2_0.h" // STM32F4 env:FYSETC_S6 env:FYSETC_S6_8000 + #include "stm32f4/pins_FYSETC_S6_V2_0.h" // STM32F4 env:FYSETC_S6 env:FYSETC_S6_8000 #elif MB(FYSETC_SPIDER) - #include "stm32f4/pins_FYSETC_SPIDER.h" // STM32F4 env:FYSETC_S6 env:FYSETC_S6_8000 + #include "stm32f4/pins_FYSETC_SPIDER.h" // STM32F4 env:FYSETC_S6 env:FYSETC_S6_8000 #elif MB(FYSETC_SPIDER_V2_2) - #include "stm32f4/pins_FYSETC_SPIDER_V2_2.h" // STM32F4 env:FYSETC_S6 env:FYSETC_S6_8000 + #include "stm32f4/pins_FYSETC_SPIDER_V2_2.h" // STM32F4 env:FYSETC_S6 env:FYSETC_S6_8000 #elif MB(FLYF407ZG) - #include "stm32f4/pins_FLYF407ZG.h" // STM32F4 env:FLYF407ZG + #include "stm32f4/pins_FLYF407ZG.h" // STM32F4 env:FLYF407ZG #elif MB(MKS_ROBIN2) - #include "stm32f4/pins_MKS_ROBIN2.h" // STM32F4 env:mks_robin2 + #include "stm32f4/pins_MKS_ROBIN2.h" // STM32F4 env:mks_robin2 #elif MB(MKS_ROBIN_PRO_V2) - #include "stm32f4/pins_MKS_ROBIN_PRO_V2.h" // STM32F4 env:mks_robin_pro2 + #include "stm32f4/pins_MKS_ROBIN_PRO_V2.h" // STM32F4 env:mks_robin_pro2 #elif MB(MKS_ROBIN_NANO_V3) - #include "stm32f4/pins_MKS_ROBIN_NANO_V3.h" // STM32F4 env:mks_robin_nano_v3 env:mks_robin_nano_v3_usb_flash_drive env:mks_robin_nano_v3_usb_flash_drive_msc + #include "stm32f4/pins_MKS_ROBIN_NANO_V3.h" // STM32F4 env:mks_robin_nano_v3 env:mks_robin_nano_v3_usb_flash_drive env:mks_robin_nano_v3_usb_flash_drive_msc #elif MB(MKS_ROBIN_NANO_V3_1) - #include "stm32f4/pins_MKS_ROBIN_NANO_V3.h" // STM32F4 env:mks_robin_nano_v3_1 env:mks_robin_nano_v3_1_usb_flash_drive env:mks_robin_nano_v3_1_usb_flash_drive_msc + #include "stm32f4/pins_MKS_ROBIN_NANO_V3.h" // STM32F4 env:mks_robin_nano_v3_1 env:mks_robin_nano_v3_1_usb_flash_drive env:mks_robin_nano_v3_1_usb_flash_drive_msc #elif MB(ANET_ET4) - #include "stm32f4/pins_ANET_ET4.h" // STM32F4 env:Anet_ET4_no_bootloader env:Anet_ET4_OpenBLT + #include "stm32f4/pins_ANET_ET4.h" // STM32F4 env:Anet_ET4_no_bootloader env:Anet_ET4_OpenBLT #elif MB(ANET_ET4P) - #include "stm32f4/pins_ANET_ET4P.h" // STM32F4 env:Anet_ET4_no_bootloader env:Anet_ET4_OpenBLT + #include "stm32f4/pins_ANET_ET4P.h" // STM32F4 env:Anet_ET4_no_bootloader env:Anet_ET4_OpenBLT #elif MB(FYSETC_CHEETAH_V20) - #include "stm32f4/pins_FYSETC_CHEETAH_V20.h" // STM32F4 env:FYSETC_CHEETAH_V20 + #include "stm32f4/pins_FYSETC_CHEETAH_V20.h" // STM32F4 env:FYSETC_CHEETAH_V20 #elif MB(MKS_MONSTER8_V1) - #include "stm32f4/pins_MKS_MONSTER8_V1.h" // STM32F4 env:mks_monster8 env:mks_monster8_usb_flash_drive env:mks_monster8_usb_flash_drive_msc + #include "stm32f4/pins_MKS_MONSTER8_V1.h" // STM32F4 env:mks_monster8 env:mks_monster8_usb_flash_drive env:mks_monster8_usb_flash_drive_msc #elif MB(MKS_MONSTER8_V2) - #include "stm32f4/pins_MKS_MONSTER8_V2.h" // STM32F4 env:mks_monster8 env:mks_monster8_usb_flash_drive env:mks_monster8_usb_flash_drive_msc + #include "stm32f4/pins_MKS_MONSTER8_V2.h" // STM32F4 env:mks_monster8 env:mks_monster8_usb_flash_drive env:mks_monster8_usb_flash_drive_msc #elif MB(TH3D_EZBOARD_V2) - #include "stm32f4/pins_TH3D_EZBOARD_V2.h" // STM32F4 env:TH3D_EZBoard_V2_no_bootloader env:TH3D_EZBoard_V2_OpenBLT + #include "stm32f4/pins_TH3D_EZBOARD_V2.h" // STM32F4 env:TH3D_EZBoard_V2_no_bootloader env:TH3D_EZBoard_V2_OpenBLT #elif MB(OPULO_LUMEN_REV3) - #include "stm32f4/pins_OPULO_LUMEN_REV3.h" // STM32F4 env:Opulo_Lumen_REV3 + #include "stm32f4/pins_OPULO_LUMEN_REV3.h" // STM32F4 env:Opulo_Lumen_REV3 #elif MB(MKS_ROBIN_NANO_V1_3_F4) - #include "stm32f4/pins_MKS_ROBIN_NANO_V1_3_F4.h" // STM32F4 env:mks_robin_nano_v1_3_f4 env:mks_robin_nano_v1_3_f4_usbmod + #include "stm32f4/pins_MKS_ROBIN_NANO_V1_3_F4.h" // STM32F4 env:mks_robin_nano_v1_3_f4 env:mks_robin_nano_v1_3_f4_usbmod #elif MB(MKS_EAGLE) - #include "stm32f4/pins_MKS_EAGLE.h" // STM32F4 env:mks_eagle + #include "stm32f4/pins_MKS_EAGLE.h" // STM32F4 env:mks_eagle #elif MB(ARTILLERY_RUBY) - #include "stm32f4/pins_ARTILLERY_RUBY.h" // STM32F4 env:Artillery_Ruby + #include "stm32f4/pins_ARTILLERY_RUBY.h" // STM32F4 env:Artillery_Ruby #elif MB(CREALITY_V24S1_301F4) - #include "stm32f4/pins_CREALITY_V24S1_301F4.h" // STM32F4 env:STM32F401RC_creality env:STM32F401RC_creality_jlink env:STM32F401RC_creality_stlink + #include "stm32f4/pins_CREALITY_V24S1_301F4.h" // STM32F4 env:STM32F401RC_creality env:STM32F401RC_creality_jlink env:STM32F401RC_creality_stlink #elif MB(OPULO_LUMEN_REV4) - #include "stm32f4/pins_OPULO_LUMEN_REV4.h" // STM32F4 env:Opulo_Lumen_REV4 + #include "stm32f4/pins_OPULO_LUMEN_REV4.h" // STM32F4 env:Opulo_Lumen_REV4 #elif MB(FYSETC_SPIDER_KING407) - #include "stm32f4/pins_FYSETC_SPIDER_KING407.h" // STM32F4 env:FYSETC_SPIDER_KING407 + #include "stm32f4/pins_FYSETC_SPIDER_KING407.h" // STM32F4 env:FYSETC_SPIDER_KING407 #elif MB(MKS_SKIPR_V1) - #include "stm32f4/pins_MKS_SKIPR_V1_0.h" // STM32F4 env:mks_skipr_v1 env:mks_skipr_v1_nobootloader + #include "stm32f4/pins_MKS_SKIPR_V1_0.h" // STM32F4 env:mks_skipr_v1 env:mks_skipr_v1_nobootloader #elif MB(TRONXY_V10) - #include "stm32f4/pins_TRONXY_V10.h" // STM32F4 env:STM32F446_tronxy + #include "stm32f4/pins_TRONXY_V10.h" // STM32F4 env:STM32F446_tronxy #elif MB(CREALITY_F401RE) - #include "stm32f4/pins_CREALITY_F401.h" // STM32F4 env:STM32F401RE_creality + #include "stm32f4/pins_CREALITY_F401.h" // STM32F4 env:STM32F401RE_creality #elif MB(BLACKPILL_CUSTOM) - #include "stm32f4/pins_BLACKPILL_CUSTOM.h" // STM32F4 env:STM32F401CD_blackpill_stlink + #include "stm32f4/pins_BLACKPILL_CUSTOM.h" // STM32F4 env:STM32F401CD_blackpill_stlink #elif MB(I3DBEEZ9_V1) - #include "stm32f4/pins_I3DBEEZ9.h" // STM32F4 env:I3DBEEZ9_V1 + #include "stm32f4/pins_I3DBEEZ9.h" // STM32F4 env:I3DBEEZ9_V1 // -// ARM Cortex M7 +// ARM Cortex-M7 // #elif MB(REMRAM_V1) - #include "stm32f7/pins_REMRAM_V1.h" // STM32F7 env:REMRAM_V1 + #include "stm32f7/pins_REMRAM_V1.h" // STM32F7 env:REMRAM_V1 #elif MB(NUCLEO_F767ZI) - #include "stm32f7/pins_NUCLEO_F767ZI.h" // STM32F7 env:NUCLEO_F767ZI + #include "stm32f7/pins_NUCLEO_F767ZI.h" // STM32F7 env:NUCLEO_F767ZI #elif MB(BTT_SKR_SE_BX_V2) - #include "stm32h7/pins_BTT_SKR_SE_BX_V2.h" // STM32H7 env:BTT_SKR_SE_BX + #include "stm32h7/pins_BTT_SKR_SE_BX_V2.h" // STM32H7 env:BTT_SKR_SE_BX #elif MB(BTT_SKR_SE_BX_V3) - #include "stm32h7/pins_BTT_SKR_SE_BX_V3.h" // STM32H7 env:BTT_SKR_SE_BX + #include "stm32h7/pins_BTT_SKR_SE_BX_V3.h" // STM32H7 env:BTT_SKR_SE_BX #elif MB(BTT_SKR_V3_0) - #include "stm32h7/pins_BTT_SKR_V3_0.h" // STM32H7 env:STM32H743VI_btt env:STM32H723VG_btt + #include "stm32h7/pins_BTT_SKR_V3_0.h" // STM32H7 env:STM32H743VI_btt env:STM32H723VG_btt #elif MB(BTT_SKR_V3_0_EZ) - #include "stm32h7/pins_BTT_SKR_V3_0_EZ.h" // STM32H7 env:STM32H743VI_btt env:STM32H723VG_btt + #include "stm32h7/pins_BTT_SKR_V3_0_EZ.h" // STM32H7 env:STM32H743VI_btt env:STM32H723VG_btt #elif MB(BTT_OCTOPUS_MAX_EZ_V1_0) - #include "stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h" // STM32H7 env:STM32H723ZE_btt + #include "stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h" // STM32H7 env:STM32H723ZE_btt #elif MB(TEENSY41) - #include "teensy4/pins_TEENSY41.h" // Teensy-4.x env:teensy41 + #include "teensy4/pins_TEENSY41.h" // Teensy-4.x env:teensy41 #elif MB(T41U5XBB) - #include "teensy4/pins_T41U5XBB.h" // Teensy-4.x env:teensy41 + #include "teensy4/pins_T41U5XBB.h" // Teensy-4.x env:teensy41 // // Espressif ESP32 // #elif MB(ESPRESSIF_ESP32) - #include "esp32/pins_ESP32.h" // ESP32 env:esp32 + #include "esp32/pins_ESP32.h" // ESP32 env:esp32 #elif MB(MRR_ESPA) - #include "esp32/pins_MRR_ESPA.h" // ESP32 env:esp32 + #include "esp32/pins_MRR_ESPA.h" // ESP32 env:esp32 #elif MB(MRR_ESPE) - #include "esp32/pins_MRR_ESPE.h" // ESP32 env:esp32 + #include "esp32/pins_MRR_ESPE.h" // ESP32 env:esp32 #elif MB(E4D_BOX) - #include "esp32/pins_E4D.h" // ESP32 env:esp32 + #include "esp32/pins_E4D.h" // ESP32 env:esp32 #elif MB(RESP32_CUSTOM) - #include "esp32/pins_RESP32_CUSTOM.h" // ESP32 env:esp32 + #include "esp32/pins_RESP32_CUSTOM.h" // ESP32 env:esp32 #elif MB(FYSETC_E4) - #include "esp32/pins_FYSETC_E4.h" // ESP32 env:FYSETC_E4 + #include "esp32/pins_FYSETC_E4.h" // ESP32 env:FYSETC_E4 #elif MB(PANDA_ZHU) - #include "esp32/pins_PANDA_ZHU.h" // ESP32 env:PANDA + #include "esp32/pins_PANDA_ZHU.h" // ESP32 env:PANDA #elif MB(PANDA_M4) - #include "esp32/pins_PANDA_M4.h" // ESP32 env:PANDA + #include "esp32/pins_PANDA_M4.h" // ESP32 env:PANDA #elif MB(MKS_TINYBEE) - #include "esp32/pins_MKS_TINYBEE.h" // ESP32 env:mks_tinybee + #include "esp32/pins_MKS_TINYBEE.h" // ESP32 env:mks_tinybee #elif MB(ENWI_ESPNP) - #include "esp32/pins_ENWI_ESPNP.h" // ESP32 env:esp32 + #include "esp32/pins_ENWI_ESPNP.h" // ESP32 env:esp32 #elif MB(GODI_CONTROLLER_V1_0) - #include "esp32/pins_GODI_CONTROLLER_V1_0.h" // ESP32 env:godi_esp32 + #include "esp32/pins_GODI_CONTROLLER_V1_0.h" // ESP32 env:godi_esp32 // // Adafruit Grand Central M4 (SAMD51 ARM Cortex-M4) // #elif MB(AGCM4_RAMPS_144) - #include "samd/pins_RAMPS_144.h" // SAMD51 env:SAMD51_grandcentral_m4 + #include "samd/pins_RAMPS_144.h" // SAMD51 env:SAMD51_grandcentral_m4 #elif MB(BRICOLEMON_V1_0) - #include "samd/pins_BRICOLEMON_V1_0.h" // SAMD51 env:SAMD51_grandcentral_m4 + #include "samd/pins_BRICOLEMON_V1_0.h" // SAMD51 env:SAMD51_grandcentral_m4 #elif MB(BRICOLEMON_LITE_V1_0) - #include "samd/pins_BRICOLEMON_LITE_V1_0.h" // SAMD51 env:SAMD51_grandcentral_m4 + #include "samd/pins_BRICOLEMON_LITE_V1_0.h" // SAMD51 env:SAMD51_grandcentral_m4 // // ReprapWorld Minitronics (SAMD21) // #elif MB(MINITRONICS20) - #include "samd/pins_MINITRONICS20.h" // SAMD21 env:SAMD21_minitronics20 + #include "samd/pins_MINITRONICS20.h" // SAMD21 env:SAMD21_minitronics20 // // Custom board (with custom PIO env) // #elif MB(CUSTOM) - #include "pins_custom.h" // env:custom + #include "pins_custom.h" // env:custom // // Linux Native Debug board // #elif MB(SIMULATED) - #include "linux/pins_RAMPS_LINUX.h" // Native or Simulation lin:linux_native mac:simulator_macos_debug mac:simulator_macos_release win:simulator_windows lin:simulator_linux_debug lin:simulator_linux_release + #include "linux/pins_RAMPS_LINUX.h" // Native or Simulation lin:linux_native mac:simulator_macos_debug mac:simulator_macos_release win:simulator_windows lin:simulator_linux_debug lin:simulator_linux_release #else From 9728d79ade1c3d72bba368f5c072a8fe402c2048 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Wed, 14 Jun 2023 17:43:24 -0700 Subject: [PATCH 293/427] =?UTF-8?q?=F0=9F=93=9D=20Document=20Manta=20E3=20?= =?UTF-8?q?EZ=20/=20E3V2=20LCD=20custom=20wiring=20(#25976)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h | 38 +++++++++++++------ 1 file changed, 26 insertions(+), 12 deletions(-) diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h index 156698f4247e..fdcdd36ae86f 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h @@ -238,21 +238,36 @@ #define EXP1_10_PIN -1 #if HAS_DWIN_E3V2 || IS_DWIN_MARLINUI + /** + * ------ ------ --- + * (PC1) BEEP | 1 2 | | 1 2 | | 1 | (5V) + * | 3 4 | RX | 3 4 | TX | 2 | (GND) + * (PC0) ENT 5 6 | ENT 5 6 | BEEP | 3 | RX (PD8) + * (PA2) B | 7 8 | A (PA1) B | 7 8 | A | 4 | TX (PD9) + * GND | 9 10 | 5V GND | 9 10 | VCC | 5 | (RST) + * ------ ------ --- + * EXP1 DWIN TFT + * + * DWIN pins are labeled as printed on DWIN PCB. GND, VCC, A, B, ENT & BEEP can be connected in the same orientation as the + * existing plug/DWIN to EXP1. DWIN TX/RX need to be connected to the Manta E3 EZ's TFT port, with DWIN TX->PD9, DWIN RX->PD8. + * + * Needs custom cable: + * + * Board Adapter Display + * ------------------------------------------ + * (EXP1-1) PC1 <-----------> BEEP (DWIN-6) + * (EXP1-5) PC0 <-----------> ENT (DWIN-5) + * (TFT-4) PD9 <-----------> RX (DWIN-3) + * (TFT-3) PD8 <-----------> TX (DWIN-4) + * (EXP1-7) PA2 <-----------> B (DWIN-7) + * (EXP1-9) GND <-----------> GND (DWIN-9) + * (EXP1-8) PA1 <-----------> A (DWIN-8) + * (EXP1-10) 5V <-----------> VCC (DWIN-10) + */ #ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING #error "CAUTION! Ender-3 V2 display requires a custom cable with TX = PA0, RX = PC2. See 'pins_BTT_MANTA_E3_EZ_V1_0.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)" #endif - /** - * Ender-3 V2 display Manta E3 EZ V1.0 Ender-3 V2 display --> Manta E3 EZ V1.0 - * ------ ------ RX 3 --> 5 P0_15 - * -- | 1 2 | -- (BEEPER) PC1 | 1 2 | PC2 (BTN_ENC) TX 4 --> 9 P0_16 - * (MANTA TX1) RX | 3 4 | TX (MANTA RX1) (BTN_EN1) PC3 | 3 4 | RESET BEEPER 6 --> 10 P2_08 - * (BTN_ENC) ENT 5 6 | BEEPER (BTN_EN2) PC0 5 6 | PA0 (LCD_D4) - * (BTN_E2) B | 7 8 | A (BTN_E1) (LCD_RS) PA2 | 7 8 | PA1 (LCD_EN) - * GND | 9 10 | 5V GND | 9 10 | 5V - * ------ ------ - */ - #define BEEPER_PIN EXP1_01_PIN #define BTN_EN1 EXP1_08_PIN #define BTN_EN2 EXP1_07_PIN @@ -310,7 +325,6 @@ // // SD Support // - #ifndef SDCARD_CONNECTION #define SDCARD_CONNECTION ONBOARD #endif From 8261af3010efce783dc2063d7fa75e17be89e88a Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Thu, 15 Jun 2023 12:57:15 +1200 Subject: [PATCH 294/427] =?UTF-8?q?=E2=9C=A8=20BTT=20RAMPS=201.6+=20(#2597?= =?UTF-8?q?0)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/boards.h | 6 +++ Marlin/src/pins/pins.h | 14 +++--- .../src/pins/ramps/pins_RAMPS_BTT_16_PLUS.h | 49 +++++++++++++++++++ 3 files changed, 63 insertions(+), 6 deletions(-) create mode 100644 Marlin/src/pins/ramps/pins_RAMPS_BTT_16_PLUS.h diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index 5cde344b4dd5..12e72517a3d0 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -54,6 +54,12 @@ #define BOARD_RAMPS_PLUS_EEF 1033 // RAMPS Plus 3DYMY (Power outputs: Hotend0, Hotend1, Fan) #define BOARD_RAMPS_PLUS_SF 1034 // RAMPS Plus 3DYMY (Power outputs: Spindle, Controller Fan) +#define BOARD_RAMPS_BTT_16_PLUS_EFB 1035 // RAMPS 1.6+ (Power outputs: Hotend, Fan, Bed) +#define BOARD_RAMPS_BTT_16_PLUS_EEB 1036 // RAMPS 1.6+ (Power outputs: Hotend0, Hotend1, Bed) +#define BOARD_RAMPS_BTT_16_PLUS_EFF 1037 // RAMPS 1.6+ (Power outputs: Hotend, Fan0, Fan1) +#define BOARD_RAMPS_BTT_16_PLUS_EEF 1038 // RAMPS 1.6+ (Power outputs: Hotend0, Hotend1, Fan) +#define BOARD_RAMPS_BTT_16_PLUS_SF 1039 // RAMPS 1.6+ (Power outputs: Spindle, Controller Fan) + // // RAMPS Derivatives - ATmega1280, ATmega2560 // diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index 9a3b3c3c2245..7e235ca80a31 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -38,15 +38,15 @@ #define MAX_E_STEPPERS 8 #if NONE(FET_ORDER_EEF, FET_ORDER_EEB, FET_ORDER_EFF, FET_ORDER_EFB, FET_ORDER_SF) - #if MB(RAMPS_13_EFB, RAMPS_14_EFB, RAMPS_PLUS_EFB, RAMPS_14_RE_ARM_EFB, RAMPS_SMART_EFB, RAMPS_DUO_EFB, RAMPS4DUE_EFB) + #if MB(RAMPS_13_EFB, RAMPS_14_EFB, RAMPS_PLUS_EFB, RAMPS_14_RE_ARM_EFB, RAMPS_SMART_EFB, RAMPS_DUO_EFB, RAMPS4DUE_EFB, RAMPS_BTT_16_PLUS_EFB) #define FET_ORDER_EFB 1 - #elif MB(RAMPS_13_EEB, RAMPS_14_EEB, RAMPS_PLUS_EEB, RAMPS_14_RE_ARM_EEB, RAMPS_SMART_EEB, RAMPS_DUO_EEB, RAMPS4DUE_EEB) + #elif MB(RAMPS_13_EEB, RAMPS_14_EEB, RAMPS_PLUS_EEB, RAMPS_14_RE_ARM_EEB, RAMPS_SMART_EEB, RAMPS_DUO_EEB, RAMPS4DUE_EEB, RAMPS_BTT_16_PLUS_EEB) #define FET_ORDER_EEB 1 - #elif MB(RAMPS_13_EFF, RAMPS_14_EFF, RAMPS_PLUS_EFF, RAMPS_14_RE_ARM_EFF, RAMPS_SMART_EFF, RAMPS_DUO_EFF, RAMPS4DUE_EFF) + #elif MB(RAMPS_13_EFF, RAMPS_14_EFF, RAMPS_PLUS_EFF, RAMPS_14_RE_ARM_EFF, RAMPS_SMART_EFF, RAMPS_DUO_EFF, RAMPS4DUE_EFF, RAMPS_BTT_16_PLUS_EFF) #define FET_ORDER_EFF 1 - #elif MB(RAMPS_13_EEF, RAMPS_14_EEF, RAMPS_PLUS_EEF, RAMPS_14_RE_ARM_EEF, RAMPS_SMART_EEF, RAMPS_DUO_EEF, RAMPS4DUE_EEF) + #elif MB(RAMPS_13_EEF, RAMPS_14_EEF, RAMPS_PLUS_EEF, RAMPS_14_RE_ARM_EEF, RAMPS_SMART_EEF, RAMPS_DUO_EEF, RAMPS4DUE_EEF, RAMPS_BTT_16_PLUS_EEF) #define FET_ORDER_EEF 1 - #elif MB(RAMPS_13_SF, RAMPS_14_SF, RAMPS_PLUS_SF, RAMPS_14_RE_ARM_SF, RAMPS_SMART_SF, RAMPS_DUO_SF, RAMPS4DUE_SF) + #elif MB(RAMPS_13_SF, RAMPS_14_SF, RAMPS_PLUS_SF, RAMPS_14_RE_ARM_SF, RAMPS_SMART_SF, RAMPS_DUO_SF, RAMPS4DUE_SF, RAMPS_BTT_16_PLUS_SF) #define FET_ORDER_SF 1 #elif HAS_MULTI_HOTEND || (HAS_EXTRUDERS && HAS_CUTTER) #if TEMP_SENSOR_BED @@ -124,7 +124,7 @@ #endif // -// RAMPS 1.3 / 1.4 - ATmega1280, ATmega2560 +// RAMPS 1.3 / 1.4 / 1.6+ - ATmega1280, ATmega2560 // #if MB(RAMPS_OLD) @@ -135,6 +135,8 @@ #include "ramps/pins_RAMPS.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 #elif MB(RAMPS_PLUS_EFB, RAMPS_PLUS_EEB, RAMPS_PLUS_EFF, RAMPS_PLUS_EEF, RAMPS_PLUS_SF) #include "ramps/pins_RAMPS_PLUS.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 +#elif MB(RAMPS_BTT_16_PLUS_EFB, RAMPS_BTT_16_PLUS_EEB, RAMPS_BTT_16_PLUS_EFF, RAMPS_BTT_16_PLUS_EEF, RAMPS_BTT_16_PLUS_SF) + #include "ramps/pins_RAMPS_BTT_16_PLUS.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280 // // RAMPS Derivatives - ATmega1280, ATmega2560 diff --git a/Marlin/src/pins/ramps/pins_RAMPS_BTT_16_PLUS.h b/Marlin/src/pins/ramps/pins_RAMPS_BTT_16_PLUS.h new file mode 100644 index 000000000000..803a1de30bc8 --- /dev/null +++ b/Marlin/src/pins/ramps/pins_RAMPS_BTT_16_PLUS.h @@ -0,0 +1,49 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +/** + * Arduino Mega with RAMPS BTT v1.6+ + * Schematic: https://github.com/bigtreetech/ramps-1.6/blob/master/Ramps1.6/hardware/R6%2B-SCH.pdf + * + * Differences from RAMPS v1.4: + * - SPI Stepper drivers use AVR hardware SPI pins + * - SPI Stepper CS pins are different + */ + +#include "env_validate.h" + +#define BOARD_INFO_NAME "RAMPS BTT 1.6+" + +#if HAS_TMC_SPI && DISABLED(TMC_USE_SW_SPI) + #define TMC_SPI_MOSI MOSI // 51 + #define TMC_SPI_MISO MISO // 50 + #define TMC_SPI_SCK SCK // 52 +#endif + +#define X_CS_PIN 63 // A0 +#define Y_CS_PIN 40 +#define Z_CS_PIN 42 +#define E0_CS_PIN 65 // A11 +#define E1_CS_PIN 66 // A12 + +#include "pins_RAMPS.h" From eca80db9b6846a05313df81c583828809684478f Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 16 Jun 2023 00:24:24 +0000 Subject: [PATCH 295/427] [cron] Bump distribution date (2023-06-16) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 29bd03701d5f..962a745208ac 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-15" +//#define STRING_DISTRIBUTION_DATE "2023-06-16" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 67d5d5806f3e..3300716c8350 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-15" + #define STRING_DISTRIBUTION_DATE "2023-06-16" #endif /** From 41a5fbb16ad985220f1cee1b823950c3bb771186 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 16 Jun 2023 18:12:01 -0500 Subject: [PATCH 296/427] =?UTF-8?q?=F0=9F=8E=A8=20More=20lowercase?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25939 --- Marlin/src/gcode/bedlevel/abl/G29.cpp | 2 +- Marlin/src/gcode/calibrate/G28.cpp | 4 +- Marlin/src/gcode/feature/powerloss/M1000.cpp | 2 +- Marlin/src/lcd/e3v2/common/dwin_api.cpp | 276 +++++++++---------- Marlin/src/lcd/e3v2/common/dwin_api.h | 102 +++---- Marlin/src/lcd/e3v2/common/encoder.cpp | 20 +- Marlin/src/lcd/e3v2/common/encoder.h | 16 +- Marlin/src/module/settings.cpp | 2 +- Marlin/src/module/temperature.cpp | 16 +- 9 files changed, 220 insertions(+), 220 deletions(-) diff --git a/Marlin/src/gcode/bedlevel/abl/G29.cpp b/Marlin/src/gcode/bedlevel/abl/G29.cpp index 3b669fbba2a0..4b2d21bc81b4 100644 --- a/Marlin/src/gcode/bedlevel/abl/G29.cpp +++ b/Marlin/src/gcode/bedlevel/abl/G29.cpp @@ -78,7 +78,7 @@ static void pre_g29_return(const bool retry, const bool did) { TERN_(FULL_REPORT_TO_HOST_FEATURE, set_and_report_grblstate(M_IDLE, false)); } if (did) { - TERN_(HAS_DWIN_E3V2_BASIC, DWIN_LevelingDone()); + TERN_(HAS_DWIN_E3V2_BASIC, dwinLevelingDone()); TERN_(EXTENSIBLE_UI, ExtUI::onLevelingDone()); } } diff --git a/Marlin/src/gcode/calibrate/G28.cpp b/Marlin/src/gcode/calibrate/G28.cpp index ab7b03961c33..cb4f80618de5 100644 --- a/Marlin/src/gcode/calibrate/G28.cpp +++ b/Marlin/src/gcode/calibrate/G28.cpp @@ -236,7 +236,7 @@ void GcodeSuite::G28() { set_and_report_grblstate(M_HOMING); #endif - TERN_(HAS_DWIN_E3V2_BASIC, DWIN_HomingStart()); + TERN_(HAS_DWIN_E3V2_BASIC, dwinHomingStart()); TERN_(EXTENSIBLE_UI, ExtUI::onHomingStart()); planner.synchronize(); // Wait for planner moves to finish! @@ -649,7 +649,7 @@ void GcodeSuite::G28() { ui.refresh(); - TERN_(HAS_DWIN_E3V2_BASIC, DWIN_HomingDone()); + TERN_(HAS_DWIN_E3V2_BASIC, dwinHomingDone()); TERN_(EXTENSIBLE_UI, ExtUI::onHomingDone()); report_current_position(); diff --git a/Marlin/src/gcode/feature/powerloss/M1000.cpp b/Marlin/src/gcode/feature/powerloss/M1000.cpp index e874c19d5e9e..d56f09f71cbf 100644 --- a/Marlin/src/gcode/feature/powerloss/M1000.cpp +++ b/Marlin/src/gcode/feature/powerloss/M1000.cpp @@ -71,7 +71,7 @@ void GcodeSuite::M1000() { #elif HAS_DWIN_E3V2_BASIC recovery.dwin_flag = true; #elif ENABLED(DWIN_CREALITY_LCD_JYERSUI) // Temporary fix until it can be better implemented - CrealityDWIN.Popup_Handler(Resume); + crealityDWIN.popupHandler(Resume); #elif ENABLED(EXTENSIBLE_UI) ExtUI::onPowerLossResume(); #else diff --git a/Marlin/src/lcd/e3v2/common/dwin_api.cpp b/Marlin/src/lcd/e3v2/common/dwin_api.cpp index 319c861ea4ff..af28cfe62bfc 100644 --- a/Marlin/src/lcd/e3v2/common/dwin_api.cpp +++ b/Marlin/src/lcd/e3v2/common/dwin_api.cpp @@ -31,21 +31,21 @@ #include // for memset -uint8_t DWIN_SendBuf[11 + DWIN_WIDTH / 6 * 2] = { 0xAA }; -uint8_t DWIN_BufTail[4] = { 0xCC, 0x33, 0xC3, 0x3C }; +uint8_t dwinSendBuf[11 + DWIN_WIDTH / 6 * 2] = { 0xAA }; +uint8_t dwinBufTail[4] = { 0xCC, 0x33, 0xC3, 0x3C }; uint8_t databuf[26] = { 0 }; // Send the data in the buffer plus the packet tail -void DWIN_Send(size_t &i) { +void dwinSend(size_t &i) { ++i; - for (uint8_t n = 0; n < i; ++n) { LCD_SERIAL.write(DWIN_SendBuf[n]); delayMicroseconds(1); } - for (uint8_t n = 0; n < 4; ++n) { LCD_SERIAL.write(DWIN_BufTail[n]); delayMicroseconds(1); } + for (uint8_t n = 0; n < i; ++n) { LCD_SERIAL.write(dwinSendBuf[n]); delayMicroseconds(1); } + for (uint8_t n = 0; n < 4; ++n) { LCD_SERIAL.write(dwinBufTail[n]); delayMicroseconds(1); } } /*-------------------------------------- System variable function --------------------------------------*/ // Handshake (1: Success, 0: Fail) -bool DWIN_Handshake() { +bool dwinHandshake() { static int recnum = 0; #ifndef LCD_BAUDRATE #define LCD_BAUDRATE 115200 @@ -55,8 +55,8 @@ bool DWIN_Handshake() { while (!LCD_SERIAL.connected() && PENDING(millis(), serial_connect_timeout)) { /*nada*/ } size_t i = 0; - DWIN_Byte(i, 0x00); - DWIN_Send(i); + dwinByte(i, 0x00); + dwinSend(i); while (LCD_SERIAL.available() > 0 && recnum < (signed)sizeof(databuf)) { databuf[recnum] = LCD_SERIAL.read(); @@ -82,11 +82,11 @@ bool DWIN_Handshake() { #if HAS_LCD_BRIGHTNESS // Set LCD backlight (from DWIN Enhanced) // brightness: 0x00-0xFF - void DWIN_LCD_Brightness(const uint8_t brightness) { + void dwinLCDBrightness(const uint8_t brightness) { size_t i = 0; - DWIN_Byte(i, 0x30); - DWIN_Byte(i, brightness); - DWIN_Send(i); + dwinByte(i, 0x30); + dwinByte(i, brightness); + dwinSend(i); } #endif @@ -126,31 +126,31 @@ uint8_t fontHeight(uint8_t cfont) { // Set screen display direction // dir: 0=0°, 1=90°, 2=180°, 3=270° -void DWIN_Frame_SetDir(uint8_t dir) { +void dwinFrameSetDir(uint8_t dir) { size_t i = 0; - DWIN_Byte(i, 0x34); - DWIN_Byte(i, 0x5A); - DWIN_Byte(i, 0xA5); - DWIN_Byte(i, dir); - DWIN_Send(i); + dwinByte(i, 0x34); + dwinByte(i, 0x5A); + dwinByte(i, 0xA5); + dwinByte(i, dir); + dwinSend(i); } // Update display -void DWIN_UpdateLCD() { +void dwinUpdateLCD() { size_t i = 0; - DWIN_Byte(i, 0x3D); - DWIN_Send(i); + dwinByte(i, 0x3D); + dwinSend(i); } /*---------------------------------------- Drawing functions ----------------------------------------*/ // Clear screen // color: Clear screen color -void DWIN_Frame_Clear(const uint16_t color) { +void dwinFrameClear(const uint16_t color) { size_t i = 0; - DWIN_Byte(i, 0x01); - DWIN_Word(i, color); - DWIN_Send(i); + dwinByte(i, 0x01); + dwinWord(i, color); + dwinSend(i); } // Draw a point @@ -158,30 +158,30 @@ void DWIN_Frame_Clear(const uint16_t color) { // width: point width 0x01-0x0F // height: point height 0x01-0x0F // x,y: upper left point -void DWIN_Draw_Point(uint16_t color, uint8_t width, uint8_t height, uint16_t x, uint16_t y) { +void dwinDrawPoint(uint16_t color, uint8_t width, uint8_t height, uint16_t x, uint16_t y) { size_t i = 0; - DWIN_Byte(i, 0x02); - DWIN_Word(i, color); - DWIN_Byte(i, width); - DWIN_Byte(i, height); - DWIN_Word(i, x); - DWIN_Word(i, y); - DWIN_Send(i); + dwinByte(i, 0x02); + dwinWord(i, color); + dwinByte(i, width); + dwinByte(i, height); + dwinWord(i, x); + dwinWord(i, y); + dwinSend(i); } // Draw a line // color: Line segment color // xStart/yStart: Start point // xEnd/yEnd: End point -void DWIN_Draw_Line(uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd) { +void dwinDrawLine(uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd) { size_t i = 0; - DWIN_Byte(i, 0x03); - DWIN_Word(i, color); - DWIN_Word(i, xStart); - DWIN_Word(i, yStart); - DWIN_Word(i, xEnd); - DWIN_Word(i, yEnd); - DWIN_Send(i); + dwinByte(i, 0x03); + dwinWord(i, color); + dwinWord(i, xStart); + dwinWord(i, yStart); + dwinWord(i, xEnd); + dwinWord(i, yEnd); + dwinSend(i); } // Draw a rectangle @@ -189,16 +189,16 @@ void DWIN_Draw_Line(uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t x // color: Rectangle color // xStart/yStart: upper left point // xEnd/yEnd: lower right point -void DWIN_Draw_Rectangle(uint8_t mode, uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd) { +void dwinDrawRectangle(uint8_t mode, uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd) { size_t i = 0; - DWIN_Byte(i, 0x05); - DWIN_Byte(i, mode); - DWIN_Word(i, color); - DWIN_Word(i, xStart); - DWIN_Word(i, yStart); - DWIN_Word(i, xEnd); - DWIN_Word(i, yEnd); - DWIN_Send(i); + dwinByte(i, 0x05); + dwinByte(i, mode); + dwinWord(i, color); + dwinWord(i, xStart); + dwinWord(i, yStart); + dwinWord(i, xEnd); + dwinWord(i, yEnd); + dwinSend(i); } // Move a screen area @@ -208,18 +208,18 @@ void DWIN_Draw_Rectangle(uint8_t mode, uint16_t color, uint16_t xStart, uint16_t // color: Fill color // xStart/yStart: upper left point // xEnd/yEnd: bottom right point -void DWIN_Frame_AreaMove(uint8_t mode, uint8_t dir, uint16_t dis, +void dwinFrameAreaMove(uint8_t mode, uint8_t dir, uint16_t dis, uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd) { size_t i = 0; - DWIN_Byte(i, 0x09); - DWIN_Byte(i, (mode << 7) | dir); - DWIN_Word(i, dis); - DWIN_Word(i, color); - DWIN_Word(i, xStart); - DWIN_Word(i, yStart); - DWIN_Word(i, xEnd); - DWIN_Word(i, yEnd); - DWIN_Send(i); + dwinByte(i, 0x09); + dwinByte(i, (mode << 7) | dir); + dwinWord(i, dis); + dwinWord(i, color); + dwinWord(i, xStart); + dwinWord(i, yStart); + dwinWord(i, xEnd); + dwinWord(i, yEnd); + dwinSend(i); } /*---------------------------------------- Text related functions ----------------------------------------*/ @@ -233,24 +233,24 @@ void DWIN_Frame_AreaMove(uint8_t mode, uint8_t dir, uint16_t dis, // x/y: Upper-left coordinate of the string // *string: The string // rlimit: To limit the drawn string length -void DWIN_Draw_String(bool bShow, uint8_t size, uint16_t color, uint16_t bColor, uint16_t x, uint16_t y, const char * const string, uint16_t rlimit/*=0xFFFF*/) { +void dwinDrawString(bool bShow, uint8_t size, uint16_t color, uint16_t bColor, uint16_t x, uint16_t y, const char * const string, uint16_t rlimit/*=0xFFFF*/) { #if NONE(DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI, IS_DWIN_MARLINUI) - DWIN_Draw_Rectangle(1, bColor, x, y, x + (fontWidth(size) * strlen_P(string)), y + fontHeight(size)); + dwinDrawRectangle(1, bColor, x, y, x + (fontWidth(size) * strlen_P(string)), y + fontHeight(size)); #endif constexpr uint8_t widthAdjust = 0; size_t i = 0; - DWIN_Byte(i, 0x11); + dwinByte(i, 0x11); // Bit 7: widthAdjust // Bit 6: bShow // Bit 5-4: Unused (0) // Bit 3-0: size - DWIN_Byte(i, (widthAdjust * 0x80) | (bShow * 0x40) | size); - DWIN_Word(i, color); - DWIN_Word(i, bColor); - DWIN_Word(i, x); - DWIN_Word(i, y); - DWIN_Text(i, string, rlimit); - DWIN_Send(i); + dwinByte(i, (widthAdjust * 0x80) | (bShow * 0x40) | size); + dwinWord(i, color); + dwinWord(i, bColor); + dwinWord(i, x); + dwinWord(i, y); + dwinText(i, string, rlimit); + dwinSend(i); } // Draw a positive integer @@ -263,28 +263,28 @@ void DWIN_Draw_String(bool bShow, uint8_t size, uint16_t color, uint16_t bColor, // iNum: Number of digits // x/y: Upper-left coordinate // value: Integer value -void DWIN_Draw_IntValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t size, uint16_t color, +void dwinDrawIntValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t size, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, uint32_t value) { size_t i = 0; #if DISABLED(DWIN_CREALITY_LCD_JYERSUI) - DWIN_Draw_Rectangle(1, bColor, x, y, x + fontWidth(size) * iNum + 1, y + fontHeight(size)); + dwinDrawRectangle(1, bColor, x, y, x + fontWidth(size) * iNum + 1, y + fontHeight(size)); #endif - DWIN_Byte(i, 0x14); + dwinByte(i, 0x14); // Bit 7: bshow // Bit 6: 1 = signed; 0 = unsigned number; // Bit 5: zeroFill // Bit 4: zeroMode // Bit 3-0: size - DWIN_Byte(i, (bShow * 0x80) | (zeroFill * 0x20) | (zeroMode * 0x10) | size); - DWIN_Word(i, color); - DWIN_Word(i, bColor); - DWIN_Byte(i, iNum); - DWIN_Byte(i, 0); // fNum - DWIN_Word(i, x); - DWIN_Word(i, y); + dwinByte(i, (bShow * 0x80) | (zeroFill * 0x20) | (zeroMode * 0x10) | size); + dwinWord(i, color); + dwinWord(i, bColor); + dwinByte(i, iNum); + dwinByte(i, 0); // fNum + dwinWord(i, x); + dwinWord(i, y); #if 0 for (char count = 0; count < 8; count++) { - DWIN_Byte(i, value); + dwinByte(i, value); value >>= 8; if (!(value & 0xFF)) break; } @@ -293,12 +293,12 @@ void DWIN_Draw_IntValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t const size_t p = i + 1; for (char count = 8; count--;) { // 7..0 ++i; - DWIN_SendBuf[p + count] = value; + dwinSendBuf[p + count] = value; value >>= 8; } #endif - DWIN_Send(i); + dwinSend(i); } // Draw a floating point number @@ -312,48 +312,48 @@ void DWIN_Draw_IntValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t // fNum: Number of decimal digits // x/y: Upper-left point // value: Float value -void DWIN_Draw_FloatValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t size, uint16_t color, +void dwinDrawFloatValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t size, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, int32_t value) { //uint8_t *fvalue = (uint8_t*)&value; size_t i = 0; #if DISABLED(DWIN_CREALITY_LCD_JYERSUI) - DWIN_Draw_Rectangle(1, bColor, x, y, x + fontWidth(size) * (iNum+fNum+1), y + fontHeight(size)); + dwinDrawRectangle(1, bColor, x, y, x + fontWidth(size) * (iNum+fNum+1), y + fontHeight(size)); #endif - DWIN_Byte(i, 0x14); - DWIN_Byte(i, (bShow * 0x80) | (zeroFill * 0x20) | (zeroMode * 0x10) | size); - DWIN_Word(i, color); - DWIN_Word(i, bColor); - DWIN_Byte(i, iNum); - DWIN_Byte(i, fNum); - DWIN_Word(i, x); - DWIN_Word(i, y); - DWIN_Long(i, value); + dwinByte(i, 0x14); + dwinByte(i, (bShow * 0x80) | (zeroFill * 0x20) | (zeroMode * 0x10) | size); + dwinWord(i, color); + dwinWord(i, bColor); + dwinByte(i, iNum); + dwinByte(i, fNum); + dwinWord(i, x); + dwinWord(i, y); + dwinLong(i, value); /* - DWIN_Byte(i, fvalue[3]); - DWIN_Byte(i, fvalue[2]); - DWIN_Byte(i, fvalue[1]); - DWIN_Byte(i, fvalue[0]); + dwinByte(i, fvalue[3]); + dwinByte(i, fvalue[2]); + dwinByte(i, fvalue[1]); + dwinByte(i, fvalue[0]); */ - DWIN_Send(i); + dwinSend(i); } // Draw a floating point number // value: positive unscaled float value -void DWIN_Draw_FloatValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t size, uint16_t color, +void dwinDrawFloatValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t size, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { const int32_t val = round(value * POW(10, fNum)); - DWIN_Draw_FloatValue(bShow, zeroFill, zeroMode, size, color, bColor, iNum, fNum, x, y, val); + dwinDrawFloatValue(bShow, zeroFill, zeroMode, size, color, bColor, iNum, fNum, x, y, val); } /*---------------------------------------- Picture related functions ----------------------------------------*/ // Draw JPG and cached in #0 virtual display area // id: Picture ID -void DWIN_JPG_ShowAndCache(const uint8_t id) { +void dwinJPGShowAndCache(const uint8_t id) { size_t i = 0; - DWIN_Word(i, 0x2200); - DWIN_Byte(i, id); - DWIN_Send(i); // AA 23 00 00 00 00 08 00 01 02 03 CC 33 C3 3C + dwinWord(i, 0x2200); + dwinByte(i, id); + dwinSend(i); // AA 23 00 00 00 00 08 00 01 02 03 CC 33 C3 3C } // Draw an Icon @@ -363,16 +363,16 @@ void DWIN_JPG_ShowAndCache(const uint8_t id) { // libID: Icon library ID // picID: Icon ID // x/y: Upper-left point -void DWIN_ICON_Show(bool IBD, bool BIR, bool BFI, uint8_t libID, uint8_t picID, uint16_t x, uint16_t y) { +void dwinIconShow(bool IBD, bool BIR, bool BFI, uint8_t libID, uint8_t picID, uint16_t x, uint16_t y) { NOMORE(x, DWIN_WIDTH - 1); NOMORE(y, DWIN_HEIGHT - 1); // -- ozy -- srl size_t i = 0; - DWIN_Byte(i, 0x23); - DWIN_Word(i, x); - DWIN_Word(i, y); - DWIN_Byte(i, (IBD << 7) | (BIR << 6) | (BFI << 5) | libID); - DWIN_Byte(i, picID); - DWIN_Send(i); + dwinByte(i, 0x23); + dwinWord(i, x); + dwinWord(i, y); + dwinByte(i, (IBD << 7) | (BIR << 6) | (BFI << 5) | libID); + dwinByte(i, picID); + dwinSend(i); } // Draw an Icon from SRAM @@ -381,27 +381,27 @@ void DWIN_ICON_Show(bool IBD, bool BIR, bool BFI, uint8_t libID, uint8_t picID, // BFI: Background filtering strength: 0=normal, 1=enhanced, (only valid when the icon background display=0) // x/y: Upper-left point // addr: SRAM address -void DWIN_ICON_Show(bool IBD, bool BIR, bool BFI, uint16_t x, uint16_t y, uint16_t addr) { +void dwinIconShow(bool IBD, bool BIR, bool BFI, uint16_t x, uint16_t y, uint16_t addr) { NOMORE(x, DWIN_WIDTH - 1); NOMORE(y, DWIN_HEIGHT - 1); // -- ozy -- srl size_t i = 0; - DWIN_Byte(i, 0x24); - DWIN_Word(i, x); - DWIN_Word(i, y); - DWIN_Byte(i, (IBD << 7) | (BIR << 6) | (BFI << 5) | 0x00); - DWIN_Word(i, addr); - DWIN_Send(i); + dwinByte(i, 0x24); + dwinWord(i, x); + dwinWord(i, y); + dwinByte(i, (IBD << 7) | (BIR << 6) | (BFI << 5) | 0x00); + dwinWord(i, addr); + dwinSend(i); } // Unzip the JPG picture to a virtual display area // n: Cache index // id: Picture ID -void DWIN_JPG_CacheToN(uint8_t n, uint8_t id) { +void dwinJPGCacheToN(uint8_t n, uint8_t id) { size_t i = 0; - DWIN_Byte(i, 0x25); - DWIN_Byte(i, n); - DWIN_Byte(i, id); - DWIN_Send(i); + dwinByte(i, 0x25); + dwinByte(i, n); + dwinByte(i, id); + dwinSend(i); } // Animate a series of icons @@ -412,32 +412,32 @@ void DWIN_JPG_CacheToN(uint8_t n, uint8_t id) { // picIDe: Icon ending ID // x/y: Upper-left point // interval: Display time interval, unit 10mS -void DWIN_ICON_Animation(uint8_t animID, bool animate, uint8_t libID, uint8_t picIDs, uint8_t picIDe, uint16_t x, uint16_t y, uint16_t interval) { +void dwinIconAnimation(uint8_t animID, bool animate, uint8_t libID, uint8_t picIDs, uint8_t picIDe, uint16_t x, uint16_t y, uint16_t interval) { NOMORE(x, DWIN_WIDTH - 1); NOMORE(y, DWIN_HEIGHT - 1); // -- ozy -- srl size_t i = 0; - DWIN_Byte(i, 0x28); - DWIN_Word(i, x); - DWIN_Word(i, y); + dwinByte(i, 0x28); + dwinWord(i, x); + dwinWord(i, y); // Bit 7: animation on or off // Bit 6: start from begin or end // Bit 5-4: unused (0) // Bit 3-0: animID - DWIN_Byte(i, (animate * 0x80) | 0x40 | animID); - DWIN_Byte(i, libID); - DWIN_Byte(i, picIDs); - DWIN_Byte(i, picIDe); - DWIN_Byte(i, interval); - DWIN_Send(i); + dwinByte(i, (animate * 0x80) | 0x40 | animID); + dwinByte(i, libID); + dwinByte(i, picIDs); + dwinByte(i, picIDe); + dwinByte(i, interval); + dwinSend(i); } // Animation Control // state: 16 bits, each bit is the state of an animation id -void DWIN_ICON_AnimationControl(uint16_t state) { +void dwinIconAnimationControl(uint16_t state) { size_t i = 0; - DWIN_Byte(i, 0x29); - DWIN_Word(i, state); - DWIN_Send(i); + dwinByte(i, 0x29); + dwinWord(i, state); + dwinSend(i); } /*---------------------------------------- Memory functions ----------------------------------------*/ diff --git a/Marlin/src/lcd/e3v2/common/dwin_api.h b/Marlin/src/lcd/e3v2/common/dwin_api.h index dc97ef2723fa..f2392af55cdb 100644 --- a/Marlin/src/lcd/e3v2/common/dwin_api.h +++ b/Marlin/src/lcd/e3v2/common/dwin_api.h @@ -39,101 +39,101 @@ #define DWIN_SCROLL_UP 2 #define DWIN_SCROLL_DOWN 3 -// Make sure DWIN_SendBuf is large enough to hold the largest string plus draw command and tail. +// Make sure dwinSendBuf is large enough to hold the largest string plus draw command and tail. // Assume the narrowest (6 pixel) font and 2-byte gb2312-encoded characters. -extern uint8_t DWIN_SendBuf[11 + DWIN_WIDTH / 6 * 2]; -extern uint8_t DWIN_BufTail[4]; +extern uint8_t dwinSendBuf[11 + DWIN_WIDTH / 6 * 2]; +extern uint8_t dwinBufTail[4]; extern uint8_t databuf[26]; -inline void DWIN_Byte(size_t &i, const uint16_t bval) { - DWIN_SendBuf[++i] = bval; +inline void dwinByte(size_t &i, const uint16_t bval) { + dwinSendBuf[++i] = bval; } -inline void DWIN_Word(size_t &i, const uint16_t wval) { - DWIN_SendBuf[++i] = wval >> 8; - DWIN_SendBuf[++i] = wval & 0xFF; +inline void dwinWord(size_t &i, const uint16_t wval) { + dwinSendBuf[++i] = wval >> 8; + dwinSendBuf[++i] = wval & 0xFF; } -inline void DWIN_Long(size_t &i, const uint32_t lval) { - DWIN_SendBuf[++i] = (lval >> 24) & 0xFF; - DWIN_SendBuf[++i] = (lval >> 16) & 0xFF; - DWIN_SendBuf[++i] = (lval >> 8) & 0xFF; - DWIN_SendBuf[++i] = lval & 0xFF; +inline void dwinLong(size_t &i, const uint32_t lval) { + dwinSendBuf[++i] = (lval >> 24) & 0xFF; + dwinSendBuf[++i] = (lval >> 16) & 0xFF; + dwinSendBuf[++i] = (lval >> 8) & 0xFF; + dwinSendBuf[++i] = lval & 0xFF; } // Send the data in the buffer plus the packet tail -void DWIN_Send(size_t &i); +void dwinSend(size_t &i); -inline void DWIN_Text(size_t &i, const char * const string, uint16_t rlimit=0xFFFF) { +inline void dwinText(size_t &i, const char * const string, uint16_t rlimit=0xFFFF) { if (!string) return; - const size_t len = _MIN(sizeof(DWIN_SendBuf) - i, _MIN(strlen(string), rlimit)); + const size_t len = _MIN(sizeof(dwinSendBuf) - i, _MIN(strlen(string), rlimit)); if (len == 0) return; - memcpy(&DWIN_SendBuf[i+1], string, len); + memcpy(&dwinSendBuf[i+1], string, len); i += len; } -inline void DWIN_Text(size_t &i, FSTR_P string, uint16_t rlimit=0xFFFF) { +inline void dwinText(size_t &i, FSTR_P string, uint16_t rlimit=0xFFFF) { if (!string) return; - const size_t len = _MIN(sizeof(DWIN_SendBuf) - i, _MIN(rlimit, strlen_P(FTOP(string)))); + const size_t len = _MIN(sizeof(dwinSendBuf) - i, _MIN(rlimit, strlen_P(FTOP(string)))); if (len == 0) return; - memcpy_P(&DWIN_SendBuf[i+1], string, len); + memcpy_P(&dwinSendBuf[i+1], string, len); i += len; } /*-------------------------------------- System variable function --------------------------------------*/ // Handshake (1: Success, 0: Fail) -bool DWIN_Handshake(); +bool dwinHandshake(); // DWIN startup -void DWIN_Startup(); +void dwinStartup(); #if HAS_LCD_BRIGHTNESS // Set the backlight brightness // brightness: (0x00-0xFF) - void DWIN_LCD_Brightness(const uint8_t brightness); + void dwinLCDBrightness(const uint8_t brightness); #endif // Set screen display direction // dir: 0=0°, 1=90°, 2=180°, 3=270° -void DWIN_Frame_SetDir(uint8_t dir); +void dwinFrameSetDir(uint8_t dir); // Update display -void DWIN_UpdateLCD(); +void dwinUpdateLCD(); /*---------------------------------------- Drawing functions ----------------------------------------*/ // Clear screen // color: Clear screen color -void DWIN_Frame_Clear(const uint16_t color); +void dwinFrameClear(const uint16_t color); // Draw a point // color: point color // width: point width 0x01-0x0F // height: point height 0x01-0x0F // x,y: upper left point -void DWIN_Draw_Point(uint16_t color, uint8_t width, uint8_t height, uint16_t x, uint16_t y); +void dwinDrawPoint(uint16_t color, uint8_t width, uint8_t height, uint16_t x, uint16_t y); // Draw a line // color: Line segment color // xStart/yStart: Start point // xEnd/yEnd: End point -void DWIN_Draw_Line(uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd); +void dwinDrawLine(uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd); // Draw a Horizontal line // color: Line segment color // xStart/yStart: Start point // xLength: Line Length -inline void DWIN_Draw_HLine(uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t xLength) { - DWIN_Draw_Line(color, xStart, yStart, xStart + xLength - 1, yStart); +inline void dwinDrawHLine(uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t xLength) { + dwinDrawLine(color, xStart, yStart, xStart + xLength - 1, yStart); } // Draw a Vertical line // color: Line segment color // xStart/yStart: Start point // yLength: Line Length -inline void DWIN_Draw_VLine(uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t yLength) { - DWIN_Draw_Line(color, xStart, yStart, xStart, yStart + yLength - 1); +inline void dwinDrawVLine(uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t yLength) { + dwinDrawLine(color, xStart, yStart, xStart, yStart + yLength - 1); } // Draw a rectangle @@ -141,15 +141,15 @@ inline void DWIN_Draw_VLine(uint16_t color, uint16_t xStart, uint16_t yStart, ui // color: Rectangle color // xStart/yStart: upper left point // xEnd/yEnd: lower right point -void DWIN_Draw_Rectangle(uint8_t mode, uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd); +void dwinDrawRectangle(uint8_t mode, uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd); // Draw a box // mode: 0=frame, 1=fill, 2=XOR fill // color: Rectangle color // xStart/yStart: upper left point // xSize/ySize: box size -inline void DWIN_Draw_Box(uint8_t mode, uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t xSize, uint16_t ySize) { - DWIN_Draw_Rectangle(mode, color, xStart, yStart, xStart + xSize - 1, yStart + ySize - 1); +inline void dwinDrawBox(uint8_t mode, uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t xSize, uint16_t ySize) { + dwinDrawRectangle(mode, color, xStart, yStart, xStart + xSize - 1, yStart + ySize - 1); } // Move a screen area @@ -159,7 +159,7 @@ inline void DWIN_Draw_Box(uint8_t mode, uint16_t color, uint16_t xStart, uint16_ // color: Fill color // xStart/yStart: upper left point // xEnd/yEnd: bottom right point -void DWIN_Frame_AreaMove(uint8_t mode, uint8_t dir, uint16_t dis, +void dwinFrameAreaMove(uint8_t mode, uint8_t dir, uint16_t dis, uint16_t color, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd); @@ -173,15 +173,15 @@ void DWIN_Frame_AreaMove(uint8_t mode, uint8_t dir, uint16_t dis, // x/y: Upper-left coordinate of the string // *string: The string // rlimit: For draw less chars than string length use rlimit -void DWIN_Draw_String(bool bShow, uint8_t size, uint16_t color, uint16_t bColor, uint16_t x, uint16_t y, const char * const string, uint16_t rlimit=0xFFFF); +void dwinDrawString(bool bShow, uint8_t size, uint16_t color, uint16_t bColor, uint16_t x, uint16_t y, const char * const string, uint16_t rlimit=0xFFFF); -inline void DWIN_Draw_String(bool bShow, uint8_t size, uint16_t color, uint16_t bColor, uint16_t x, uint16_t y, FSTR_P const ftitle) { +inline void dwinDrawString(bool bShow, uint8_t size, uint16_t color, uint16_t bColor, uint16_t x, uint16_t y, FSTR_P const ftitle) { #ifdef __AVR__ char ctitle[strlen_P(FTOP(ftitle)) + 1]; strcpy_P(ctitle, FTOP(ftitle)); - DWIN_Draw_String(bShow, size, color, bColor, x, y, ctitle); + dwinDrawString(bShow, size, color, bColor, x, y, ctitle); #else - DWIN_Draw_String(bShow, size, color, bColor, x, y, FTOP(ftitle)); + dwinDrawString(bShow, size, color, bColor, x, y, FTOP(ftitle)); #endif } @@ -195,7 +195,7 @@ inline void DWIN_Draw_String(bool bShow, uint8_t size, uint16_t color, uint16_t // iNum: Number of digits // x/y: Upper-left coordinate // value: Integer value -void DWIN_Draw_IntValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t size, uint16_t color, +void dwinDrawIntValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t size, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, uint32_t value); // Draw a floating point number @@ -209,25 +209,25 @@ void DWIN_Draw_IntValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t // fNum: Number of decimal digits // x/y: Upper-left point // value: Float value -void DWIN_Draw_FloatValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t size, uint16_t color, +void dwinDrawFloatValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t size, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, int32_t value); // Draw a floating point number // value: positive unscaled float value -void DWIN_Draw_FloatValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t size, uint16_t color, +void dwinDrawFloatValue(uint8_t bShow, bool zeroFill, uint8_t zeroMode, uint8_t size, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value); /*---------------------------------------- Picture related functions ----------------------------------------*/ // Draw JPG and cached in #0 virtual display area // id: Picture ID -void DWIN_JPG_ShowAndCache(const uint8_t id); +void dwinJPGShowAndCache(const uint8_t id); // Draw an Icon // libID: Icon library ID // picID: Icon ID // x/y: Upper-left point -void DWIN_ICON_Show(uint8_t libID, uint8_t picID, uint16_t x, uint16_t y); +void dwinIconShow(uint8_t libID, uint8_t picID, uint16_t x, uint16_t y); // Draw an Icon // IBD: The icon background display: 0=Background filtering is not displayed, 1=Background display \\When setting the background filtering not to display, the background must be pure black @@ -236,7 +236,7 @@ void DWIN_ICON_Show(uint8_t libID, uint8_t picID, uint16_t x, uint16_t y); // libID: Icon library ID // picID: Icon ID // x/y: Upper-left point -void DWIN_ICON_Show(bool IBD, bool BIR, bool BFI, uint8_t libID, uint8_t picID, uint16_t x, uint16_t y); +void dwinIconShow(bool IBD, bool BIR, bool BFI, uint8_t libID, uint8_t picID, uint16_t x, uint16_t y); // Draw an Icon from SRAM // IBD: The icon background display: 0=Background filtering is not displayed, 1=Background display \\When setting the background filtering not to display, the background must be pure black @@ -244,16 +244,16 @@ void DWIN_ICON_Show(bool IBD, bool BIR, bool BFI, uint8_t libID, uint8_t picID, // BFI: Background filtering strength: 0=normal, 1=enhanced, (only valid when the icon background display=0) // x/y: Upper-left point // addr: SRAM address -void DWIN_ICON_Show(bool IBD, bool BIR, bool BFI, uint16_t x, uint16_t y, uint16_t addr); +void dwinIconShow(bool IBD, bool BIR, bool BFI, uint16_t x, uint16_t y, uint16_t addr); // Unzip the JPG picture to a virtual display area // n: Cache index // id: Picture ID -void DWIN_JPG_CacheToN(uint8_t n, uint8_t id); +void dwinJPGCacheToN(uint8_t n, uint8_t id); // Unzip the JPG picture to virtual display area #1 // id: Picture ID -inline void DWIN_JPG_CacheTo1(uint8_t id) { DWIN_JPG_CacheToN(1, id); } +inline void dwinJPGCacheTo1(uint8_t id) { dwinJPGCacheToN(1, id); } // Animate a series of icons // animID: Animation ID up to 16 @@ -263,8 +263,8 @@ inline void DWIN_JPG_CacheTo1(uint8_t id) { DWIN_JPG_CacheToN(1, id); } // picIDe: Icon ending ID // x/y: Upper-left point // interval: Display time interval, unit 10mS -void DWIN_ICON_Animation(uint8_t animID, bool animate, uint8_t libID, uint8_t picIDs, uint8_t picIDe, uint16_t x, uint16_t y, uint16_t interval); +void dwinIconAnimation(uint8_t animID, bool animate, uint8_t libID, uint8_t picIDs, uint8_t picIDe, uint16_t x, uint16_t y, uint16_t interval); // Animation Control // state: 16 bits, each bit is the state of an animation id -void DWIN_ICON_AnimationControl(uint16_t state); +void dwinIconAnimationControl(uint16_t state); diff --git a/Marlin/src/lcd/e3v2/common/encoder.cpp b/Marlin/src/lcd/e3v2/common/encoder.cpp index 5081e27690f2..2ff67059e98d 100644 --- a/Marlin/src/lcd/e3v2/common/encoder.cpp +++ b/Marlin/src/lcd/e3v2/common/encoder.cpp @@ -46,7 +46,7 @@ #define ENCODER_PULSES_PER_STEP 4 #endif -ENCODER_Rate EncoderRate; +EncoderRate encoderRate; // TODO: Replace with ui.quick_feedback void Encoder_tick() { @@ -54,7 +54,7 @@ void Encoder_tick() { } // Encoder initialization -void Encoder_Configuration() { +void encoderConfiguration() { #if BUTTON_EXISTS(EN1) SET_INPUT_PULLUP(BTN_EN1); #endif @@ -70,7 +70,7 @@ void Encoder_Configuration() { } // Analyze encoder value and return state -EncoderState Encoder_ReceiveAnalyze() { +EncoderState encoderReceiveAnalyze() { const millis_t now = millis(); static uint8_t lastEncoderBits; uint8_t newbutton = 0; @@ -126,20 +126,20 @@ EncoderState Encoder_ReceiveAnalyze() { int32_t encoderMultiplier = 1; // if must encoder rati multiplier - if (EncoderRate.enabled) { + if (encoderRate.enabled) { const float abs_diff = ABS(temp_diff), encoderMovementSteps = abs_diff / (ENCODER_PULSES_PER_STEP); - if (EncoderRate.lastEncoderTime) { + if (encoderRate.lastEncoderTime) { // Note that the rate is always calculated between two passes through the // loop and that the abs of the temp_diff value is tracked. - const float encoderStepRate = encoderMovementSteps / float(ms - EncoderRate.lastEncoderTime) * 1000; + const float encoderStepRate = encoderMovementSteps / float(ms - encoderRate.lastEncoderTime) * 1000; if (encoderStepRate >= ENCODER_100X_STEPS_PER_SEC) encoderMultiplier = 100; else if (encoderStepRate >= ENCODER_10X_STEPS_PER_SEC) encoderMultiplier = 10; #if ENCODER_5X_STEPS_PER_SEC else if (encoderStepRate >= ENCODER_5X_STEPS_PER_SEC) encoderMultiplier = 5; #endif } - EncoderRate.lastEncoderTime = ms; + encoderRate.lastEncoderTime = ms; } #else @@ -148,9 +148,9 @@ EncoderState Encoder_ReceiveAnalyze() { #endif - // EncoderRate.encoderMoveValue += (temp_diff * encoderMultiplier) / (ENCODER_PULSES_PER_STEP); - EncoderRate.encoderMoveValue = (temp_diff * encoderMultiplier) / (ENCODER_PULSES_PER_STEP); - if (EncoderRate.encoderMoveValue < 0) EncoderRate.encoderMoveValue = -EncoderRate.encoderMoveValue; + // encoderRate.encoderMoveValue += (temp_diff * encoderMultiplier) / (ENCODER_PULSES_PER_STEP); + encoderRate.encoderMoveValue = (temp_diff * encoderMultiplier) / (ENCODER_PULSES_PER_STEP); + if (encoderRate.encoderMoveValue < 0) encoderRate.encoderMoveValue = -encoderRate.encoderMoveValue; temp_diff = 0; } diff --git a/Marlin/src/lcd/e3v2/common/encoder.h b/Marlin/src/lcd/e3v2/common/encoder.h index 3ab8c3bf422b..72d37108dcf2 100644 --- a/Marlin/src/lcd/e3v2/common/encoder.h +++ b/Marlin/src/lcd/e3v2/common/encoder.h @@ -34,9 +34,9 @@ typedef struct { bool enabled = false; int encoderMoveValue = 0; millis_t lastEncoderTime = 0; -} ENCODER_Rate; +} EncoderRate; -extern ENCODER_Rate EncoderRate; +extern EncoderRate encoderRate; typedef enum { ENCODER_DIFF_NO = 0, // no state @@ -48,26 +48,26 @@ typedef enum { #define ENCODER_WAIT_MS 20 // Encoder initialization -void Encoder_Configuration(); +void encoderConfiguration(); // Analyze encoder value and return state -EncoderState Encoder_ReceiveAnalyze(); +EncoderState encoderReceiveAnalyze(); inline EncoderState get_encoder_state() { static millis_t Encoder_ms = 0; const millis_t ms = millis(); if (PENDING(ms, Encoder_ms)) return ENCODER_DIFF_NO; - const EncoderState state = Encoder_ReceiveAnalyze(); + const EncoderState state = encoderReceiveAnalyze(); if (state != ENCODER_DIFF_NO) Encoder_ms = ms + ENCODER_WAIT_MS; return state; } template -inline bool Apply_Encoder(const EncoderState &encoder_diffState, T &valref) { +inline bool applyEncoder(const EncoderState &encoder_diffState, T &valref) { if (encoder_diffState == ENCODER_DIFF_CW) - valref += EncoderRate.encoderMoveValue; + valref += encoderRate.encoderMoveValue; else if (encoder_diffState == ENCODER_DIFF_CCW) - valref -= EncoderRate.encoderMoveValue; + valref -= encoderRate.encoderMoveValue; return encoder_diffState == ENCODER_DIFF_ENTER; } diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index 1ee3932c2db7..16e0d10a09dd 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -535,7 +535,7 @@ typedef struct SettingsDataStruct { #if ENABLED(DWIN_LCD_PROUI) uint8_t dwin_data[eeprom_data_size]; #elif ENABLED(DWIN_CREALITY_LCD_JYERSUI) - uint8_t dwin_settings[CrealityDWIN.eeprom_data_size]; + uint8_t dwin_settings[crealityDWIN.eeprom_data_size]; #endif // diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 1f0e1a975582..a1bebca4a08b 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -1231,7 +1231,7 @@ volatile bool Temperature::raw_temps_ready = false; // Heat to 200 degrees SERIAL_ECHOLNPGM(STR_MPC_HEATING_PAST_200); - TERN(DWIN_LCD_PROUI, LCD_ALERTMESSAGE(MSG_MPC_HEATING_PAST_200), LCD_MESSAGE(MSG_HEATING)); + LCD_ALERTMESSAGE(MSG_MPC_HEATING_PAST_200); if (tuner.measure_heatup() != MPC_autotuner::MeasurementState::SUCCESS) return; @@ -1531,14 +1531,14 @@ void Temperature::_temp_error(const heater_id_t heater_id, FSTR_P const serial_m void Temperature::maxtemp_error(const heater_id_t heater_id) { #if HAS_DWIN_E3V2_BASIC && (HAS_HOTEND || HAS_HEATED_BED) - DWIN_Popup_Temperature(1); + dwinPopupTemperature(1); #endif _temp_error(heater_id, F(STR_T_MAXTEMP), GET_TEXT_F(MSG_ERR_MAXTEMP)); } void Temperature::mintemp_error(const heater_id_t heater_id) { #if HAS_DWIN_E3V2_BASIC && (HAS_HOTEND || HAS_HEATED_BED) - DWIN_Popup_Temperature(0); + dwinPopupTemperature(0); #endif _temp_error(heater_id, F(STR_T_MINTEMP), GET_TEXT_F(MSG_ERR_MINTEMP)); } @@ -1758,7 +1758,7 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { if (watch_hotend[e].check(degHotend(e))) // Increased enough? start_watching_hotend(e); // If temp reached, turn off elapsed check else { - TERN_(HAS_DWIN_E3V2_BASIC, DWIN_Popup_Temperature(0)); + TERN_(HAS_DWIN_E3V2_BASIC, dwinPopupTemperature(0)); _temp_error((heater_id_t)e, FPSTR(str_t_heating_failed), GET_TEXT_F(MSG_HEATING_FAILED_LCD)); } } @@ -1783,7 +1783,7 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { if (watch_bed.check(degBed())) // Increased enough? start_watching_bed(); // If temp reached, turn off elapsed check else { - TERN_(HAS_DWIN_E3V2_BASIC, DWIN_Popup_Temperature(0)); + TERN_(HAS_DWIN_E3V2_BASIC, dwinPopupTemperature(0)); _temp_error(H_BED, FPSTR(str_t_heating_failed), GET_TEXT_F(MSG_HEATING_FAILED_LCD)); } } @@ -3179,12 +3179,12 @@ void Temperature::init() { } // fall through case TRRunaway: - TERN_(HAS_DWIN_E3V2_BASIC, DWIN_Popup_Temperature(0)); + TERN_(HAS_DWIN_E3V2_BASIC, dwinPopupTemperature(0)); _temp_error(heater_id, FPSTR(str_t_thermal_runaway), GET_TEXT_F(MSG_THERMAL_RUNAWAY)); #if ENABLED(THERMAL_PROTECTION_VARIANCE_MONITOR) case TRMalfunction: - TERN_(HAS_DWIN_E3V2_BASIC, DWIN_Popup_Temperature(0)); + TERN_(HAS_DWIN_E3V2_BASIC, dwinPopupTemperature(0)); _temp_error(heater_id, FPSTR(str_t_temp_malfunction), GET_TEXT_F(MSG_TEMP_MALFUNCTION)); #endif } @@ -4392,7 +4392,7 @@ void Temperature::isr() { if (wait_for_heatup) { wait_for_heatup = false; #if HAS_DWIN_E3V2_BASIC - HMI_flag.heat_flag = 0; + hmiFlag.heat_flag = 0; duration_t elapsed = print_job_timer.duration(); // Print timer dwin_heat_time = elapsed.value; #else From 78b342661a07fae8d7152f369c3c9fe16ed9b9cb Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 17 Jun 2023 00:22:04 +0000 Subject: [PATCH 297/427] [cron] Bump distribution date (2023-06-17) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 962a745208ac..b51a4a671d92 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-16" +//#define STRING_DISTRIBUTION_DATE "2023-06-17" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 3300716c8350..66942676da01 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-16" + #define STRING_DISTRIBUTION_DATE "2023-06-17" #endif /** From 238951a966204ce9bc109e06fdb4027125b28feb Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 16 Jun 2023 18:08:59 -0500 Subject: [PATCH 298/427] =?UTF-8?q?=F0=9F=8E=A8=20More=20more=20lowercase?= =?UTF-8?q?=20(partial=20ProUI)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25939 --- Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp | 12 +- Marlin/src/lcd/e3v2/proui/dwin.cpp | 166 +++++++++---------- Marlin/src/lcd/e3v2/proui/dwin.h | 10 +- Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp | 80 ++++----- Marlin/src/lcd/e3v2/proui/dwin_popup.cpp | 20 +-- Marlin/src/lcd/e3v2/proui/dwin_popup.h | 8 +- Marlin/src/lcd/e3v2/proui/dwinui.cpp | 46 ++--- Marlin/src/lcd/e3v2/proui/dwinui.h | 22 +-- Marlin/src/lcd/e3v2/proui/endstop_diag.cpp | 4 +- Marlin/src/lcd/e3v2/proui/gcode_preview.cpp | 8 +- Marlin/src/lcd/e3v2/proui/lockscreen.cpp | 12 +- Marlin/src/lcd/e3v2/proui/menus.cpp | 28 ++-- Marlin/src/lcd/e3v2/proui/meshviewer.cpp | 14 +- Marlin/src/lcd/e3v2/proui/plot.cpp | 14 +- Marlin/src/lcd/e3v2/proui/printstats.cpp | 2 +- Marlin/src/lcd/marlinui.cpp | 2 +- 16 files changed, 224 insertions(+), 224 deletions(-) diff --git a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp index 69721e4e7751..7892de2d6917 100644 --- a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp +++ b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp @@ -217,13 +217,13 @@ bool BedLevelToolsClass::meshvalidate() { const float v_max = abs(get_max_value()), v_min = abs(get_min_value()), range = _MAX(v_min, v_max); // Clear background from previous selection and select new square - DWIN_Draw_Rectangle(1, Color_Bg_Black, _MAX(0, padding_x - gridline_width), _MAX(0, padding_y_top - gridline_width), padding_x + total_width_px, padding_y_top + total_width_px); + dwinDrawRectangle(1, Color_Bg_Black, _MAX(0, padding_x - gridline_width), _MAX(0, padding_y_top - gridline_width), padding_x + total_width_px, padding_y_top + total_width_px); if (selected >= 0) { const auto selected_y = selected / (GRID_MAX_POINTS_X); const auto selected_x = selected - (GRID_MAX_POINTS_X) * selected_y; const auto start_y_px = padding_y_top + selected_y * cell_height_px; const auto start_x_px = padding_x + selected_x * cell_width_px; - DWIN_Draw_Rectangle(1, Color_White, _MAX(0, start_x_px - gridline_width), _MAX(0, start_y_px - gridline_width), start_x_px + cell_width_px, start_y_px + cell_height_px); + dwinDrawRectangle(1, Color_White, _MAX(0, start_x_px - gridline_width), _MAX(0, start_y_px - gridline_width), start_x_px + cell_width_px, start_y_px + cell_height_px); } // Draw value square grid @@ -233,7 +233,7 @@ bool BedLevelToolsClass::meshvalidate() { const auto end_x_px = start_x_px + cell_width_px - 1 - gridline_width; const auto start_y_px = padding_y_top + ((GRID_MAX_POINTS_Y) - y - 1) * cell_height_px; const auto end_y_px = start_y_px + cell_height_px - 1 - gridline_width; - DWIN_Draw_Rectangle(1, // RGB565 colors: http://www.barth-dev.de/online/rgb565-color-picker/ + dwinDrawRectangle(1, // RGB565 colors: http://www.barth-dev.de/online/rgb565-color-picker/ isnan(bedlevel.z_values[x][y]) ? Color_Grey : ( // gray if undefined (bedlevel.z_values[x][y] < 0 ? (uint16_t)round(0x1F * -bedlevel.z_values[x][y] / (!viewer_asymmetric_range ? range : v_min)) << 11 : // red if mesh point value is negative @@ -249,7 +249,7 @@ bool BedLevelToolsClass::meshvalidate() { if (viewer_print_value) { int8_t offset_x, offset_y = cell_height_px / 2 - 6; if (isnan(bedlevel.z_values[x][y])) { // undefined - DWIN_Draw_String(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + cell_width_px / 2 - 5, start_y_px + offset_y, F("X")); + dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + cell_width_px / 2 - 5, start_y_px + offset_y, F("X")); } else { // has value if (GRID_MAX_POINTS_X < 10) @@ -258,8 +258,8 @@ bool BedLevelToolsClass::meshvalidate() { sprintf_P(buf, PSTR("%02i"), (uint16_t)(abs(bedlevel.z_values[x][y] - (int16_t)bedlevel.z_values[x][y]) * 100)); offset_x = cell_width_px / 2 - 3 * (strlen(buf)) - 2; if (!(GRID_MAX_POINTS_X < 10)) - DWIN_Draw_String(false, font6x12, Color_White, Color_Bg_Blue, start_x_px - 2 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, F(".")); - DWIN_Draw_String(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + 1 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, buf); + dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px - 2 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, F(".")); + dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + 1 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, buf); } safe_delay(10); LCD_SERIAL.flushTX(); diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index 293e6c2d5cf1..83105f2109c2 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -162,7 +162,7 @@ // Structs HMI_value_t HMI_value; -HMI_flag_t HMI_flag{0}; +HMI_flag_t hmiFlag{0}; HMI_data_t HMI_data; enum SelectItem : uint8_t { @@ -278,24 +278,24 @@ bool Host_Printing() { return Printing() && !IS_SD_FILE_OPEN(); } #define DWIN_LANGUAGE_EEPROM_ADDRESS 0x01 // Between 0x01 and 0x63 (EEPROM_OFFSET-1) // BL24CXX::check() uses 0x00 -inline bool HMI_IsChinese() { return HMI_flag.language == DWIN_CHINESE; } +inline bool HMI_IsChinese() { return hmiFlag.language == DWIN_CHINESE; } void HMI_SetLanguageCache() { - DWIN_JPG_CacheTo1(HMI_IsChinese() ? Language_Chinese : Language_English); + dwinJPGCacheTo1(HMI_IsChinese() ? Language_Chinese : Language_English); } void HMI_SetLanguage() { #if ALL(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) - BL24CXX::read(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language)); + BL24CXX::read(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&hmiFlag.language, sizeof(hmiFlag.language)); #endif HMI_SetLanguageCache(); } void HMI_ToggleLanguage() { - HMI_flag.language = HMI_IsChinese() ? DWIN_ENGLISH : DWIN_CHINESE; + hmiFlag.language = HMI_IsChinese() ? DWIN_ENGLISH : DWIN_CHINESE; HMI_SetLanguageCache(); #if ALL(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) - BL24CXX::write(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language)); + BL24CXX::write(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&hmiFlag.language, sizeof(hmiFlag.language)); #endif } @@ -403,7 +403,7 @@ void Popup_window_PauseOrStop() { DWINUI::Draw_IconWB(ICON_Confirm_C, 26, 280); DWINUI::Draw_IconWB(ICON_Cancel_C, 146, 280); Draw_Select_Highlight(true); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } else DWIN_Popup_ConfirmCancel(ICON_BLTouch, select_print.now == PRINT_PAUSE_RESUME ? GET_TEXT_F(MSG_PAUSE_PRINT) : GET_TEXT_F(MSG_STOP_PRINT)); @@ -420,7 +420,7 @@ void Popup_window_PauseOrStop() { DWIN_Frame_AreaCopy(1, 103, 371, 136, 386, 69, 240); DWIN_Frame_AreaCopy(1, 170, 371, 270, 386, 102, 240); DWINUI::Draw_IconWB(ICON_Confirm_C, 86, 280); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } else DWIN_Popup_Confirm(ICON_TempTooLow, GET_TEXT_F(MSG_HOTEND_TOO_COLD), GET_TEXT_F(MSG_PLEASE_PREHEAT)); @@ -429,7 +429,7 @@ void Popup_window_PauseOrStop() { #endif #if HAS_HOTEND || HAS_HEATED_BED - void DWIN_Popup_Temperature(const bool toohigh) { + void dwinPopupTemperature(const bool toohigh) { HMI_SaveProcessID(WaitResponse); if (HMI_IsChinese()) { DWINUI::ClearMainArea(); @@ -455,7 +455,7 @@ void Popup_window_PauseOrStop() { // Draw status line // void DWIN_DrawStatusLine(const char *text) { - DWIN_Draw_Rectangle(1, HMI_data.StatusBg_Color, 0, STATUS_Y, DWIN_WIDTH, STATUS_Y + 20); + dwinDrawRectangle(1, HMI_data.StatusBg_Color, 0, STATUS_Y, DWIN_WIDTH, STATUS_Y + 20); if (text) DWINUI::Draw_CenteredString(HMI_data.StatusTxt_Color, STATUS_Y + 2, text); } void DWIN_DrawStatusLine(FSTR_P fstr) { DWIN_DrawStatusLine(FTOP(fstr)); } @@ -501,7 +501,7 @@ void DWIN_DrawStatusMessage() { // and the string remaining length uint8_t rlen; const char *stat = MarlinUI::status_and_len(rlen); - DWIN_Draw_Rectangle(1, HMI_data.StatusBg_Color, 0, STATUS_Y, DWIN_WIDTH, STATUS_Y + 20); + dwinDrawRectangle(1, HMI_data.StatusBg_Color, 0, STATUS_Y, DWIN_WIDTH, STATUS_Y + 20); DWINUI::MoveTo(0, STATUS_Y + 2); DWINUI::Draw_String(HMI_data.StatusTxt_Color, stat, LCD_WIDTH); @@ -542,7 +542,7 @@ void Draw_Print_Labels() { void Draw_Print_ProgressBar() { DWINUI::Draw_IconWB(ICON_Bar, 15, 93); - DWIN_Draw_Rectangle(1, HMI_data.Barfill_Color, 16 + _percent_done * 240 / 100, 93, 256, 113); + dwinDrawRectangle(1, HMI_data.Barfill_Color, 16 + _percent_done * 240 / 100, 93, 256, 113); DWINUI::Draw_Int(HMI_data.PercentTxt_Color, HMI_data.Background_Color, 3, 117, 133, _percent_done); DWINUI::Draw_String(HMI_data.PercentTxt_Color, 142, 133, F("%")); } @@ -573,7 +573,7 @@ void DWIN_Print_Header(const char *text = nullptr) { headertxt[size] = '\0'; } if (checkkey == PrintProcess || checkkey == PrintDone) { - DWIN_Draw_Rectangle(1, HMI_data.Background_Color, 0, 60, DWIN_WIDTH, 60+16); + dwinDrawRectangle(1, HMI_data.Background_Color, 0, 60, DWIN_WIDTH, 60+16); DWINUI::Draw_CenteredString(60, headertxt); } } @@ -604,7 +604,7 @@ void Goto_PrintProcess() { Draw_PrintProcess(); TERN_(DASH_REDRAW, DWIN_RedrawDash()); } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } void Draw_PrintDone() { @@ -619,7 +619,7 @@ void Draw_PrintDone() { #if HAS_GCODE_PREVIEW const bool isvalid = Preview_Valid(); if (isvalid) { - DWIN_ICON_Show(0, 0, 1, 21, 100, 0x00); + dwinIconShow(0, 0, 1, 21, 100, 0x00); DWINUI::Draw_Button(BTN_Continue, 86, 300); } #else @@ -642,7 +642,7 @@ void Goto_PrintDone() { if (checkkey != PrintDone) { checkkey = PrintDone; Draw_PrintDone(); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } } @@ -663,7 +663,7 @@ void Goto_Main_Menu() { if (checkkey == MainMenu) return; checkkey = MainMenu; Draw_Main_Menu(); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } // Draw X, Y, Z and blink if in an un-homed or un-trusted state @@ -695,19 +695,19 @@ void _draw_ZOffsetIcon() { static bool _leveling_active = false; if (_leveling_active != planner.leveling_active) { _leveling_active = planner.leveling_active; - DWIN_Draw_Rectangle(1, HMI_data.Background_Color, 186, 415, 205, 436); + dwinDrawRectangle(1, HMI_data.Background_Color, 186, 415, 205, 436); DWINUI::Draw_Icon(_leveling_active ? ICON_SetZOffset : ICON_Zoffset, 187, 416); } #else if (planner.leveling_active) { - DWIN_Draw_Rectangle(1, blink ? HMI_data.SplitLine_Color : HMI_data.Background_Color, 186, 415, 205, 436); + dwinDrawRectangle(1, blink ? HMI_data.SplitLine_Color : HMI_data.Background_Color, 186, 415, 205, 436); DWINUI::Draw_Icon(ICON_SetZOffset, 186, 416); } static bool _leveling_active = false; if (_leveling_active != planner.leveling_active) { _leveling_active = planner.leveling_active; if (!_leveling_active) { - DWIN_Draw_Rectangle(1, HMI_data.Background_Color, 186, 415, 205, 436); + dwinDrawRectangle(1, HMI_data.Background_Color, 186, 415, 205, 436); DWINUI::Draw_Icon(ICON_Zoffset, 187, 416); } } @@ -948,7 +948,7 @@ void Draw_Print_File_Menu() { else { if (SET_MENU(FileMenu, MSG_MEDIA_MENU, 1)) BACK_ITEM(Goto_Main_Menu); UpdateMenu(FileMenu); - DWIN_Draw_Rectangle(1, HMI_data.AlertBg_Color, 10, MBASE(3) - 10, DWIN_WIDTH - 10, MBASE(4)); + dwinDrawRectangle(1, HMI_data.AlertBg_Color, 10, MBASE(3) - 10, DWIN_WIDTH - 10, MBASE(4)); DWINUI::Draw_CenteredString(font12x24, HMI_data.AlertTxt_Color, MBASE(3), GET_TEXT_F(MSG_MEDIA_NOT_INSERTED)); } TERN_(SCROLL_LONG_FILENAMES, FileMenuIdle(true)); @@ -958,12 +958,12 @@ void Draw_Print_File_Menu() { // Watch for media mount / unmount // void HMI_SDCardUpdate() { - if (HMI_flag.home_flag) return; + if (hmiFlag.home_flag) return; if (DWIN_lcd_sd_status != card.isMounted()) { DWIN_lcd_sd_status = card.isMounted(); if (IsMenu(FileMenu)) Redraw_SD_List(); if (!DWIN_lcd_sd_status && SD_Printing()) ui.abort_print(); // Media removed while printing - DWIN_UpdateLCD(); + dwinUpdateLCD(); } } @@ -973,7 +973,7 @@ void HMI_SDCardUpdate() { void DWIN_Draw_Dashboard() { - DWIN_Draw_Rectangle(1, HMI_data.Background_Color, 0, STATUS_Y + 21, DWIN_WIDTH, DWIN_HEIGHT - 1); + dwinDrawRectangle(1, HMI_data.Background_Color, 0, STATUS_Y + 21, DWIN_WIDTH, DWIN_HEIGHT - 1); #if HAS_HOTEND DWINUI::Draw_Icon(ICON_HotendTemp, 10, 383); @@ -1008,7 +1008,7 @@ void DWIN_Draw_Dashboard() { DWINUI::Draw_Signed_Float(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 2, 2, 204, 417, BABY_Z_VAR); - DWIN_Draw_Rectangle(1, HMI_data.SplitLine_Color, 0, 449, DWIN_WIDTH, 451); + dwinDrawRectangle(1, HMI_data.SplitLine_Color, 0, 449, DWIN_WIDTH, 451); DWINUI::Draw_Icon(ICON_MaxSpeedX, 10, 456); DWINUI::Draw_Icon(ICON_MaxSpeedY, 95, 456); @@ -1042,7 +1042,7 @@ void Draw_Info_Menu() { for (uint8_t i = 0; i < 3; ++i) { DWINUI::Draw_Icon(ICON_PrintSize + i, ICOX, 99 + i * 73); - DWIN_Draw_HLine(HMI_data.SplitLine_Color, 16, MBASE(2) + i * 73, 240); + dwinDrawHLine(HMI_data.SplitLine_Color, 16, MBASE(2) + i * 73, 240); } } @@ -1085,14 +1085,14 @@ void HMI_MainMenu() { case PAGE_ADVANCE: Draw_AdvancedSettings_Menu(); break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } // Pause or Stop popup void onClick_PauseOrStop() { switch (select_print.now) { - case PRINT_PAUSE_RESUME: if (HMI_flag.select_flag) ui.pause_print(); break; // confirm pause - case PRINT_STOP: if (HMI_flag.select_flag) ui.abort_print(); break; // stop confirmed then abort print + case PRINT_PAUSE_RESUME: if (hmiFlag.select_flag) ui.pause_print(); break; // confirm pause + case PRINT_STOP: if (hmiFlag.select_flag) ui.abort_print(); break; // stop confirmed then abort print default: break; } return Goto_PrintProcess(); @@ -1136,7 +1136,7 @@ void HMI_Printing() { default: break; } } - DWIN_UpdateLCD(); + dwinUpdateLCD(); } #include "../../../libs/buzzer.h" @@ -1200,8 +1200,8 @@ void HMI_Init() { DWINUI::Draw_CenteredString(Color_White, 220, F("Professional Firmware ")); for (uint16_t t = 15; t < 257; t += 11) { DWINUI::Draw_Icon(ICON_Bar, 15, 260); - DWIN_Draw_Rectangle(1, HMI_data.Background_Color, t, 260, 257, 280); - DWIN_UpdateLCD(); + dwinDrawRectangle(1, HMI_data.Background_Color, t, 260, 257, 280); + dwinUpdateLCD(); safe_delay((BOOTSCREEN_TIMEOUT) / 22); } #endif @@ -1241,21 +1241,21 @@ void EachMomentUpdate() { if (!PENDING(ms, next_rts_update_ms)) { next_rts_update_ms = ms + DWIN_UPDATE_INTERVAL; - if ((Printing() != HMI_flag.printing_flag) && !HMI_flag.home_flag) { - HMI_flag.printing_flag = Printing(); - if (HMI_flag.printing_flag) + if ((Printing() != hmiFlag.printing_flag) && !hmiFlag.home_flag) { + hmiFlag.printing_flag = Printing(); + if (hmiFlag.printing_flag) DWIN_Print_Started(); - else if (HMI_flag.abort_flag) + else if (hmiFlag.abort_flag) DWIN_Print_Aborted(); else DWIN_Print_Finished(); } - if ((printingIsPaused() != HMI_flag.pause_flag) && !HMI_flag.home_flag) { - HMI_flag.pause_flag = printingIsPaused(); - if (HMI_flag.pause_flag) + if ((printingIsPaused() != hmiFlag.pause_flag) && !hmiFlag.home_flag) { + hmiFlag.pause_flag = printingIsPaused(); + if (hmiFlag.pause_flag) DWIN_Print_Pause(); - else if (HMI_flag.abort_flag) + else if (hmiFlag.abort_flag) DWIN_Print_Aborted(); else DWIN_Print_Resume(); @@ -1265,7 +1265,7 @@ void EachMomentUpdate() { duration_t elapsed = print_job_timer.duration(); // print timer - if (card.isPrinting() && !HMI_flag.percent_flag) { + if (card.isPrinting() && !hmiFlag.percent_flag) { uint8_t percentDone = card.percentDone(); if (_percent_done != percentDone) { // print percent _percent_done = percentDone; @@ -1274,7 +1274,7 @@ void EachMomentUpdate() { // Estimate remaining time every 20 seconds static millis_t next_remain_time_update = 0; - if (_percent_done > 1 && ELAPSED(ms, next_remain_time_update) && !HMI_flag.heat_flag && !HMI_flag.remain_flag) { + if (_percent_done > 1 && ELAPSED(ms, next_remain_time_update) && !hmiFlag.heat_flag && !hmiFlag.remain_flag) { _remain_time = (elapsed.value - dwin_heat_time) / (_percent_done * 0.01f) - (elapsed.value - dwin_heat_time); next_remain_time_update += DWIN_REMAIN_TIME_UPDATE_INTERVAL; Draw_Print_ProgressRemain(); @@ -1296,7 +1296,7 @@ void EachMomentUpdate() { } #endif // POWER_LOSS_RECOVERY - DWIN_UpdateLCD(); + dwinUpdateLCD(); } } @@ -1321,12 +1321,12 @@ void EachMomentUpdate() { const char * const filename = card.diveToFile(true, dir, recovery.info.sd_filename); card.selectFileByName(filename); DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 207, card.longest_filename()); - Draw_Select_Highlight(HMI_flag.select_flag); - DWIN_UpdateLCD(); + Draw_Select_Highlight(hmiFlag.select_flag); + dwinUpdateLCD(); } void onClick_PowerLossRecovery() { - if (HMI_flag.select_flag) { + if (hmiFlag.select_flag) { queue.inject(F("M1000C")); select_page.reset(); return Goto_Main_Menu(); @@ -1393,15 +1393,15 @@ void HMI_SaveProcessID(const uint8_t id) { } } -void DWIN_HomingStart() { - HMI_flag.home_flag = true; +void dwinHomingStart() { + hmiFlag.home_flag = true; HMI_SaveProcessID(Homing); Title.ShowCaption(GET_TEXT_F(MSG_HOMING)); DWIN_Show_Popup(ICON_BLTouch, GET_TEXT_F(MSG_HOMING), GET_TEXT_F(MSG_PLEASE_WAIT)); } -void DWIN_HomingDone() { - HMI_flag.home_flag = false; +void dwinHomingDone() { + hmiFlag.home_flag = false; HMI_ReturnScreen(); } @@ -1614,10 +1614,10 @@ void DWIN_Print_Started() { TERN_(HAS_GCODE_PREVIEW, if (Host_Printing()) Preview_Invalidate()); _percent_done = 0; _remain_time = 0; - HMI_flag.percent_flag = false; - HMI_flag.remain_flag = false; - HMI_flag.pause_flag = false; - HMI_flag.abort_flag = false; + hmiFlag.percent_flag = false; + hmiFlag.remain_flag = false; + hmiFlag.pause_flag = false; + hmiFlag.abort_flag = false; select_print.reset(); Goto_PrintProcess(); } @@ -1636,7 +1636,7 @@ void DWIN_Print_Resume() { // Ended print job void DWIN_Print_Finished() { TERN_(POWER_LOSS_RECOVERY, if (card.isPrinting()) recovery.cancel()); - HMI_flag.pause_flag = false; + hmiFlag.pause_flag = false; wait_for_heatup = false; planner.finish_and_disable(); thermalManager.cooldown(); @@ -1652,11 +1652,11 @@ void DWIN_Print_Aborted() { void DWIN_M73() { if (parser.seenval('P')) { _percent_done = parser.value_byte(); - HMI_flag.percent_flag = true; + hmiFlag.percent_flag = true; } if (parser.seenval('R')) { _remain_time = parser.value_ulong() * 60; - HMI_flag.remain_flag = true; + hmiFlag.remain_flag = true; } if (checkkey == PrintProcess) { Draw_Print_ProgressBar(); @@ -1739,13 +1739,13 @@ void DWIN_CopySettingsFrom(const char * const buff) { // Initialize or re-initialize the LCD void MarlinUI::init_lcd() { delay(750); // wait to wakeup screen - const bool hs = DWIN_Handshake(); UNUSED(hs); - DWIN_Frame_SetDir(1); - DWIN_JPG_CacheTo1(Language_English); - Encoder_Configuration(); + const bool hs = dwinHandshake(); UNUSED(hs); + dwinFrameSetDir(1); + dwinJPGCacheTo1(Language_English); + encoderConfiguration(); } -void DWIN_InitScreen() { +void dwinInitScreen() { DWIN_SetColorDefaults(); HMI_Init(); // draws boot screen DWINUI::init(); @@ -1769,20 +1769,20 @@ void MarlinUI::update() { void MarlinUI::refresh() { /* Nothing to see here */ } #if HAS_LCD_BRIGHTNESS - void MarlinUI::_set_brightness() { DWIN_LCD_Brightness(backlight ? brightness : 0); } + void MarlinUI::_set_brightness() { dwinLCDBrightness(backlight ? brightness : 0); } #endif void MarlinUI::kill_screen(FSTR_P const lcd_error, FSTR_P const lcd_component) { DWIN_Draw_Popup(ICON_BLTouch, GET_TEXT_F(MSG_PRINTER_KILLED), lcd_error); DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 270, GET_TEXT_F(MSG_TURN_OFF)); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } void DWIN_RebootScreen() { - DWIN_Frame_Clear(Color_Bg_Black); - DWIN_JPG_ShowAndCache(0); + dwinFrameClear(Color_Bg_Black); + dwinJPGShowAndCache(0); DWINUI::Draw_CenteredString(Color_White, 220, GET_TEXT_F(MSG_PLEASE_WAIT_REBOOT)); - DWIN_UpdateLCD(); + dwinUpdateLCD(); safe_delay(500); } @@ -1837,7 +1837,7 @@ void DWIN_RedrawScreen() { } void onClick_FilamentPurge() { - if (HMI_flag.select_flag) + if (hmiFlag.select_flag) pause_menu_response = PAUSE_RESPONSE_EXTRUDE_MORE; // "Purge More" button else { HMI_SaveProcessID(NothingToDo); @@ -1896,8 +1896,8 @@ void DWIN_RedrawScreen() { void onClick_ConfirmToPrint() { Preview_Reset(); DWIN_ResetStatusLine(); - if (HMI_flag.select_flag) { // Confirm - HMI_flag.heat_flag = true; + if (hmiFlag.select_flag) { // Confirm + hmiFlag.heat_flag = true; Goto_Main_Menu(); return card.openAndPrintFile(card.filename); } @@ -1912,7 +1912,7 @@ void Goto_ConfirmToPrint() { Goto_Popup(Preview_DrawFromSD, onClick_ConfirmToPrint); #else // Print SD file - HMI_flag.heat_flag = true; + hmiFlag.heat_flag = true; card.openAndPrintFile(card.filename); #endif } @@ -1934,7 +1934,7 @@ void Goto_ConfirmToPrint() { void WriteEeprom() { DWIN_DrawStatusLine(GET_TEXT_F(MSG_STORE_EEPROM)); - DWIN_UpdateLCD(); + dwinUpdateLCD(); DONE_BUZZ(settings.save()); } @@ -1967,7 +1967,7 @@ void RebootPrinter() { void Goto_Info_Menu() { Draw_Info_Menu(); - DWIN_UpdateLCD(); + dwinUpdateLCD(); HMI_SaveProcessID(WaitResponse); } @@ -2110,7 +2110,7 @@ void SetMoveZ() { HMI_value.axis = Z_AXIS; SetPFloatOnClick(Z_MIN_POS, Z_MAX_POS HMI_data.Baud115K ^= true; HMI_SetBaudRate(); Draw_Chkb_Line(CurrentMenu->line(), HMI_data.Baud115K); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } void SetBaud115K() { queue.inject(F("M575 P0 B115200")); HMI_data.Baud115K = true; } void SetBaud250K() { queue.inject(F("M575 P0 B250000")); HMI_data.Baud115K = false; } @@ -2118,7 +2118,7 @@ void SetMoveZ() { HMI_value.axis = Z_AXIS; SetPFloatOnClick(Z_MIN_POS, Z_MAX_POS #if HAS_LCD_BRIGHTNESS void ApplyBrightness() { ui.set_brightness(MenuData.Value); } - void LiveBrightness() { DWIN_LCD_Brightness(MenuData.Value); } + void LiveBrightness() { dwinLCDBrightness(MenuData.Value); } void SetBrightness() { SetIntOnClick(LCD_BRIGHTNESS_MIN, LCD_BRIGHTNESS_MAX, ui.brightness, ApplyBrightness, LiveBrightness); } void TurnOffBacklight() { HMI_SaveProcessID(WaitResponse); ui.set_brightness(0); DWIN_RedrawScreen(); } #endif @@ -2227,7 +2227,7 @@ void SelColor() { void LiveRGBColor() { HMI_value.Color[CurrentMenu->line() - 2] = MenuData.Value; uint16_t color = RGB(HMI_value.Color[0], HMI_value.Color[1], HMI_value.Color[2]); - DWIN_Draw_Rectangle(1, color, 20, 315, DWIN_WIDTH - 20, 335); + dwinDrawRectangle(1, color, 20, 315, DWIN_WIDTH - 20, 335); } void SetRGBColor() { const uint8_t color = static_cast(CurrentMenu->SelectedItem())->icon; @@ -2716,8 +2716,8 @@ void onDrawLanguage(MenuItemClass* menuitem, int8_t line) { void onDrawSelColorItem(MenuItemClass* menuitem, int8_t line) { const uint16_t color = *(uint16_t*)static_cast(menuitem)->value; - DWIN_Draw_Rectangle(0, HMI_data.Highlight_Color, ICOX + 1, MBASE(line) - 1 + 1, ICOX + 18, MBASE(line) - 1 + 18); - DWIN_Draw_Rectangle(1, color, ICOX + 2, MBASE(line) - 1 + 2, ICOX + 17, MBASE(line) - 1 + 17); + dwinDrawRectangle(0, HMI_data.Highlight_Color, ICOX + 1, MBASE(line) - 1 + 1, ICOX + 18, MBASE(line) - 1 + 18); + dwinDrawRectangle(1, color, ICOX + 2, MBASE(line) - 1 + 2, ICOX + 17, MBASE(line) - 1 + 17); onDrawMenuItem(menuitem, line); } @@ -2730,11 +2730,11 @@ void onDrawGetColorItem(MenuItemClass* menuitem, int8_t line) { case 2: color = RGB(0, 0, 31); break; // Blue default: color = 0; break; } - DWIN_Draw_Rectangle(0, HMI_data.Highlight_Color, ICOX + 1, MBASE(line) - 1 + 1, ICOX + 18, MBASE(line) - 1 + 18); - DWIN_Draw_Rectangle(1, color, ICOX + 2, MBASE(line) - 1 + 2, ICOX + 17, MBASE(line) - 1 + 17); + dwinDrawRectangle(0, HMI_data.Highlight_Color, ICOX + 1, MBASE(line) - 1 + 1, ICOX + 18, MBASE(line) - 1 + 18); + dwinDrawRectangle(1, color, ICOX + 2, MBASE(line) - 1 + 2, ICOX + 17, MBASE(line) - 1 + 17); DWINUI::Draw_String(LBLX, MBASE(line) - 1, menuitem->caption); Draw_Menu_IntValue(HMI_data.Background_Color, line, 4, HMI_value.Color[i]); - DWIN_Draw_HLine(HMI_data.SplitLine_Color, 16, MYPOS(line + 1), 240); + dwinDrawHLine(HMI_data.SplitLine_Color, 16, MYPOS(line + 1), 240); } #if DWIN_PID_TUNE @@ -3289,7 +3289,7 @@ void Draw_GetColor_Menu() { MENU_ITEM(2, MSG_COLORS_BLUE, onDrawGetColorItem, SetRGBColor); } UpdateMenu(GetColorMenu); - DWIN_Draw_Rectangle(1, *MenuData.P_Int, 20, 315, DWIN_WIDTH - 20, 335); + dwinDrawRectangle(1, *MenuData.P_Int, 20, 315, DWIN_WIDTH - 20, 335); } #if ALL(CASE_LIGHT_MENU, CASELIGHT_USES_BRIGHTNESS) @@ -3725,7 +3725,7 @@ void Draw_Steps_Menu() { void SetMeshActive() { set_bed_leveling_enabled(!planner.leveling_active); Draw_Chkb_Line(CurrentMenu->line(), planner.leveling_active); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } #if ENABLED(PREHEAT_BEFORE_LEVELING) diff --git a/Marlin/src/lcd/e3v2/proui/dwin.h b/Marlin/src/lcd/e3v2/proui/dwin.h index 2e967bc15f6f..126f8232acd7 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.h +++ b/Marlin/src/lcd/e3v2/proui/dwin.h @@ -175,13 +175,13 @@ typedef struct { } HMI_flag_t; extern HMI_value_t HMI_value; -extern HMI_flag_t HMI_flag; +extern HMI_flag_t hmiFlag; extern uint8_t checkkey; extern millis_t dwin_heat_time; // Popups #if HAS_HOTEND || HAS_HEATED_BED - void DWIN_Popup_Temperature(const bool toohigh); + void dwinPopupTemperature(const bool toohigh); #endif #if ENABLED(POWER_LOSS_RECOVERY) void Popup_PowerLossRecovery(); @@ -260,11 +260,11 @@ void HMI_SaveProcessID(const uint8_t id); void HMI_SDCardUpdate(); void EachMomentUpdate(); void update_variable(); -void DWIN_InitScreen(); +void dwinInitScreen(); void DWIN_HandleScreen(); void DWIN_CheckStatusMessage(); -void DWIN_HomingStart(); -void DWIN_HomingDone(); +void dwinHomingStart(); +void dwinHomingDone(); #if HAS_MESH void DWIN_MeshUpdate(const int8_t cpos, const int8_t tpos, const_float_t zval); #endif diff --git a/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp b/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp index ad2cd2709348..a82acdb3e9f6 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp @@ -44,20 +44,20 @@ // str: multi-bit data void DWIN_Draw_QR(uint8_t QR_Pixel, uint16_t x, uint16_t y, char *string) { size_t i = 0; - DWIN_Byte(i, 0x21); - DWIN_Word(i, x); - DWIN_Word(i, y); - DWIN_Byte(i, QR_Pixel); - DWIN_Text(i, string); - DWIN_Send(i); + dwinByte(i, 0x21); + dwinWord(i, x); + dwinWord(i, y); + dwinByte(i, QR_Pixel); + dwinText(i, string); + dwinSend(i); } // Draw an Icon with transparent background // libID: Icon library ID // picID: Icon ID // x/y: Upper-left point -void DWIN_ICON_Show(uint8_t libID, uint8_t picID, uint16_t x, uint16_t y) { - DWIN_ICON_Show(false, false, true, libID, picID, x, y); +void dwinIconShow(uint8_t libID, uint8_t picID, uint16_t x, uint16_t y) { + dwinIconShow(false, false, true, libID, picID, x, y); } // Copy area from current virtual display area to current screen @@ -66,14 +66,14 @@ void DWIN_ICON_Show(uint8_t libID, uint8_t picID, uint16_t x, uint16_t y) { // x/y: Screen paste point void DWIN_Frame_AreaCopy(uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y) { size_t i = 0; - DWIN_Byte(i, 0x26); - DWIN_Word(i, xStart); - DWIN_Word(i, yStart); - DWIN_Word(i, xEnd); - DWIN_Word(i, yEnd); - DWIN_Word(i, x); - DWIN_Word(i, y); - DWIN_Send(i); + dwinByte(i, 0x26); + dwinWord(i, xStart); + dwinWord(i, yStart); + dwinWord(i, xEnd); + dwinWord(i, yEnd); + dwinWord(i, x); + dwinWord(i, y); + dwinSend(i); } // Copy area from virtual display area to current screen @@ -86,15 +86,15 @@ void DWIN_Frame_AreaCopy(uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16 // x/y: Screen paste point void DWIN_Frame_AreaCopy(bool IBD, bool BIR, bool BFI, uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y) { size_t i = 0; - DWIN_Byte(i, 0x27); - DWIN_Byte(i, (IBD & 1) << 7 | (BIR & 1) << 6 | (BFI & 1) << 5 | cacheID); - DWIN_Word(i, xStart); - DWIN_Word(i, yStart); - DWIN_Word(i, xEnd); - DWIN_Word(i, yEnd); - DWIN_Word(i, x); - DWIN_Word(i, y); - DWIN_Send(i); + dwinByte(i, 0x27); + dwinByte(i, (IBD & 1) << 7 | (BIR & 1) << 6 | (BFI & 1) << 5 | cacheID); + dwinWord(i, xStart); + dwinWord(i, yStart); + dwinWord(i, xEnd); + dwinWord(i, yEnd); + dwinWord(i, x); + dwinWord(i, y); + dwinSend(i); } // Copy area from virtual display area to current screen with transparent background @@ -122,13 +122,13 @@ void DWIN_WriteToMem(uint8_t mem, uint16_t addr, uint16_t length, uint8_t *data) indx = block * max_size; to_send = _MIN(pending, max_size); size_t i = 0; - DWIN_Byte(i, 0x31); - DWIN_Byte(i, mem); - DWIN_Word(i, addr + indx); // start address of the data block + dwinByte(i, 0x31); + dwinByte(i, mem); + dwinWord(i, addr + indx); // start address of the data block ++i; - for (uint8_t j = 0; j < i; ++j) { LCD_SERIAL.write(DWIN_SendBuf[j]); delayMicroseconds(1); } // Buf header + for (uint8_t j = 0; j < i; ++j) { LCD_SERIAL.write(dwinSendBuf[j]); delayMicroseconds(1); } // Buf header for (uint16_t j = indx; j <= indx + to_send - 1; j++) LCD_SERIAL.write(*(data + j)); delayMicroseconds(1); // write block of data - for (uint8_t j = 0; j < 4; ++j) { LCD_SERIAL.write(DWIN_BufTail[j]); delayMicroseconds(1); } + for (uint8_t j = 0; j < 4; ++j) { LCD_SERIAL.write(dwinBufTail[j]); delayMicroseconds(1); } block++; pending -= to_send; } @@ -138,23 +138,23 @@ void DWIN_WriteToMem(uint8_t mem, uint16_t addr, uint16_t length, uint8_t *data) // picID: Picture memory space location, 0x00-0x0F, each space is 32Kbytes void DWIN_SRAMToPic(uint8_t picID) { size_t i = 0; - DWIN_Byte(i, 0x33); - DWIN_Byte(i, 0x5A); - DWIN_Byte(i, 0xA5); - DWIN_Byte(i, picID); - DWIN_Send(i); + dwinByte(i, 0x33); + dwinByte(i, 0x5A); + dwinByte(i, 0xA5); + dwinByte(i, picID); + dwinSend(i); } //--------------------------Test area ------------------------- //void DWIN_ReadSRAM(uint16_t addr, const uint8_t length, const char * const data) { // size_t i = 0; -// DWIN_Byte(i, 0x32); -// DWIN_Byte(i, 0x5A); // 0x5A Read from SRAM - 0xA5 Read from Flash -// DWIN_Word(i, addr); // 0x0000 to 0x7FFF +// dwinByte(i, 0x32); +// dwinByte(i, 0x5A); // 0x5A Read from SRAM - 0xA5 Read from Flash +// dwinWord(i, addr); // 0x0000 to 0x7FFF // const size_t len = _MIN(0xF0, length); -// DWIN_Byte(i, len); -// DWIN_Send(i); +// dwinByte(i, len); +// dwinSend(i); //} #endif // DWIN_LCD_PROUI diff --git a/Marlin/src/lcd/e3v2/proui/dwin_popup.cpp b/Marlin/src/lcd/e3v2/proui/dwin_popup.cpp index 552075f9dcb9..7b22069c69e1 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_popup.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin_popup.cpp @@ -45,27 +45,27 @@ uint16_t HighlightYPos = 280; void Draw_Select_Highlight(const bool sel, const uint16_t ypos) { HighlightYPos = ypos; - HMI_flag.select_flag = sel; + hmiFlag.select_flag = sel; const uint16_t c1 = sel ? HMI_data.Highlight_Color : HMI_data.PopupBg_Color, c2 = sel ? HMI_data.PopupBg_Color : HMI_data.Highlight_Color; - DWIN_Draw_Rectangle(0, c1, 25, ypos - 1, 126, ypos + 38); - DWIN_Draw_Rectangle(0, c1, 24, ypos - 2, 127, ypos + 39); - DWIN_Draw_Rectangle(0, c2, 145, ypos - 1, 246, ypos + 38); - DWIN_Draw_Rectangle(0, c2, 144, ypos - 2, 247, ypos + 39); + dwinDrawRectangle(0, c1, 25, ypos - 1, 126, ypos + 38); + dwinDrawRectangle(0, c1, 24, ypos - 2, 127, ypos + 39); + dwinDrawRectangle(0, c2, 145, ypos - 1, 246, ypos + 38); + dwinDrawRectangle(0, c2, 144, ypos - 2, 247, ypos + 39); } void DWIN_Popup_Continue(const uint8_t icon, FSTR_P const fmsg1, FSTR_P const fmsg2) { HMI_SaveProcessID(WaitResponse); DWIN_Draw_Popup(icon, fmsg1, fmsg2, BTN_Continue); // Button Continue - DWIN_UpdateLCD(); + dwinUpdateLCD(); } void DWIN_Popup_ConfirmCancel(const uint8_t icon, FSTR_P const fmsg2) { DWIN_Draw_Popup(ICON_BLTouch, F("Please confirm"), fmsg2); DWINUI::Draw_Button(BTN_Confirm, 26, 280); DWINUI::Draw_Button(BTN_Cancel, 146, 280); - Draw_Select_Highlight(HMI_flag.select_flag); - DWIN_UpdateLCD(); + Draw_Select_Highlight(hmiFlag.select_flag); + dwinUpdateLCD(); } void Goto_Popup(const popupDrawFunc_t fnDraw, const popupClickFunc_t fnClick/*=nullptr*/, const popupChangeFunc_t fnChange/*=nullptr*/) { @@ -73,7 +73,7 @@ void Goto_Popup(const popupDrawFunc_t fnDraw, const popupClickFunc_t fnClick/*=n popupClick = fnClick; popupChange = fnChange; HMI_SaveProcessID(Popup); - HMI_flag.select_flag = false; + hmiFlag.select_flag = false; popupDraw(); } @@ -87,7 +87,7 @@ void HMI_Popup() { if (encoder_diffState == ENCODER_DIFF_CW || encoder_diffState == ENCODER_DIFF_CCW) { const bool change = encoder_diffState != ENCODER_DIFF_CW; if (popupChange) popupChange(change); else Draw_Select_Highlight(change, HighlightYPos); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } } } diff --git a/Marlin/src/lcd/e3v2/proui/dwin_popup.h b/Marlin/src/lcd/e3v2/proui/dwin_popup.h index f24aac582e6c..5009f36b3b15 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_popup.h +++ b/Marlin/src/lcd/e3v2/proui/dwin_popup.h @@ -44,8 +44,8 @@ void Goto_Popup(const popupDrawFunc_t fnDraw, const popupClickFunc_t fnClick=nul void HMI_Popup(); inline void Draw_Popup_Bkgd() { - DWIN_Draw_Rectangle(1, HMI_data.PopupBg_Color, 14, 60, 258, 330); - DWIN_Draw_Rectangle(0, HMI_data.Highlight_Color, 14, 60, 258, 330); + dwinDrawRectangle(1, HMI_data.PopupBg_Color, 14, 60, 258, 330); + dwinDrawRectangle(0, HMI_data.Highlight_Color, 14, 60, 258, 330); } template @@ -61,13 +61,13 @@ void DWIN_Draw_Popup(const uint8_t icon, T amsg1=nullptr, U amsg2=nullptr, uint8 template void DWIN_Show_Popup(const uint8_t icon, T amsg1=nullptr, U amsg2=nullptr, uint8_t button=0) { DWIN_Draw_Popup(icon, amsg1, amsg2, button); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } template void DWIN_Popup_Confirm(const uint8_t icon, T amsg1, U amsg2) { HMI_SaveProcessID(WaitResponse); DWIN_Draw_Popup(icon, amsg1, amsg2, BTN_Confirm); // Button Confirm - DWIN_UpdateLCD(); + dwinUpdateLCD(); } diff --git a/Marlin/src/lcd/e3v2/proui/dwinui.cpp b/Marlin/src/lcd/e3v2/proui/dwinui.cpp index f950d7451c45..4ed6ce6783ce 100644 --- a/Marlin/src/lcd/e3v2/proui/dwinui.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwinui.cpp @@ -137,7 +137,7 @@ void DWINUI::MoveBy(xy_int_t point) { // Draw a Centered string using arbitrary x1 and x2 margins void DWINUI::Draw_CenteredString(bool bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint16_t x1, uint16_t x2, uint16_t y, const char * const string) { const uint16_t x = _MAX(0U, x2 + x1 - strlen_P(string) * fontWidth(fid)) / 2 - 1; - DWIN_Draw_String(bShow, fid, color, bColor, x, y, string); + dwinDrawString(bShow, fid, color, bColor, x, y, string); } // Draw a char @@ -147,7 +147,7 @@ void DWINUI::Draw_CenteredString(bool bShow, fontid_t fid, uint16_t color, uint1 // c: ASCII code of char void DWINUI::Draw_Char(uint16_t color, uint16_t x, uint16_t y, const char c) { const char string[2] = { c, 0}; - DWIN_Draw_String(false, fontid, color, backcolor, x, y, string, 1); + dwinDrawString(false, fontid, color, backcolor, x, y, string, 1); } // Draw a char at cursor position and increment cursor @@ -161,11 +161,11 @@ void DWINUI::Draw_Char(uint16_t color, const char c) { // *string: The string // rlimit: For draw less chars than string length use rlimit void DWINUI::Draw_String(const char * const string, uint16_t rlimit) { - DWIN_Draw_String(false, fontid, textcolor, backcolor, cursor.x, cursor.y, string, rlimit); + dwinDrawString(false, fontid, textcolor, backcolor, cursor.x, cursor.y, string, rlimit); MoveBy(strlen(string) * fontWidth(fontid), 0); } void DWINUI::Draw_String(uint16_t color, const char * const string, uint16_t rlimit) { - DWIN_Draw_String(false, fontid, color, backcolor, cursor.x, cursor.y, string, rlimit); + dwinDrawString(false, fontid, color, backcolor, cursor.x, cursor.y, string, rlimit); MoveBy(strlen(string) * fontWidth(fontid), 0); } @@ -181,7 +181,7 @@ void DWINUI::Draw_String(uint16_t color, const char * const string, uint16_t rli void DWINUI::Draw_Int(uint8_t bShow, bool signedMode, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, int32_t value) { char nstr[10]; sprintf_P(nstr, PSTR("%*li"), (signedMode ? iNum + 1 : iNum), value); - DWIN_Draw_String(bShow, fid, color, bColor, x, y, nstr); + dwinDrawString(bShow, fid, color, bColor, x, y, nstr); } // Draw a numeric float value @@ -196,7 +196,7 @@ void DWINUI::Draw_Int(uint8_t bShow, bool signedMode, fontid_t fid, uint16_t col // value: float value void DWINUI::Draw_Float(uint8_t bShow, bool signedMode, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { char nstr[10]; - DWIN_Draw_String(bShow, fid, color, bColor, x, y, dtostrf(value, iNum + (signedMode ? 2:1) + fNum, fNum, nstr)); + dwinDrawString(bShow, fid, color, bColor, x, y, dtostrf(value, iNum + (signedMode ? 2:1) + fNum, fNum, nstr)); } // ------------------------- Icons -------------------------------// @@ -209,13 +209,13 @@ void DWINUI::Draw_Float(uint8_t bShow, bool signedMode, fontid_t fid, uint16_t c void DWINUI::ICON_Show(bool BG, uint8_t icon, uint16_t x, uint16_t y) { const uint8_t libID = ICON TERN_(HAS_CUSTOMICONS, + (icon / 100)); const uint8_t picID = icon TERN_(HAS_CUSTOMICONS, % 100); - DWIN_ICON_Show(BG, false, !BG, libID, picID, x, y); + dwinIconShow(BG, false, !BG, libID, picID, x, y); } // ------------------------- Buttons ------------------------------// void DWINUI::Draw_Button(uint16_t color, uint16_t bcolor, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, const char * const caption) { - DWIN_Draw_Rectangle(1, bcolor, x1, y1, x2, y2); + dwinDrawRectangle(1, bcolor, x1, y1, x2, y2); Draw_CenteredString(0, fontid, color, bcolor, x1, x2, (y2 + y1 - fontHeight())/2, caption); } @@ -243,14 +243,14 @@ void DWINUI::Draw_Circle(uint16_t color, uint16_t x, uint16_t y, uint8_t r) { while (a <= b) { b = SQRT(sq(r) - sq(a)); if (a == 0) b--; - DWIN_Draw_Point(color, 1, 1, x + a, y + b); // Draw some sector 1 - DWIN_Draw_Point(color, 1, 1, x + b, y + a); // Draw some sector 2 - DWIN_Draw_Point(color, 1, 1, x + b, y - a); // Draw some sector 3 - DWIN_Draw_Point(color, 1, 1, x + a, y - b); // Draw some sector 4 - DWIN_Draw_Point(color, 1, 1, x - a, y - b); // Draw some sector 5 - DWIN_Draw_Point(color, 1, 1, x - b, y - a); // Draw some sector 6 - DWIN_Draw_Point(color, 1, 1, x - b, y + a); // Draw some sector 7 - DWIN_Draw_Point(color, 1, 1, x - a, y + b); // Draw some sector 8 + dwinDrawPoint(color, 1, 1, x + a, y + b); // Draw some sector 1 + dwinDrawPoint(color, 1, 1, x + b, y + a); // Draw some sector 2 + dwinDrawPoint(color, 1, 1, x + b, y - a); // Draw some sector 3 + dwinDrawPoint(color, 1, 1, x + a, y - b); // Draw some sector 4 + dwinDrawPoint(color, 1, 1, x - a, y - b); // Draw some sector 5 + dwinDrawPoint(color, 1, 1, x - b, y - a); // Draw some sector 6 + dwinDrawPoint(color, 1, 1, x - b, y + a); // Draw some sector 7 + dwinDrawPoint(color, 1, 1, x - a, y + b); // Draw some sector 8 a++; } } @@ -265,10 +265,10 @@ void DWINUI::Draw_FillCircle(uint16_t bcolor, uint16_t x,uint16_t y,uint8_t r) { while (a <= b) { b = SQRT(sq(r) - sq(a)); // b=sqrt(r*r-a*a); if (a == 0) b--; - DWIN_Draw_Line(bcolor, x-b,y-a,x+b,y-a); - DWIN_Draw_Line(bcolor, x-a,y-b,x+a,y-b); - DWIN_Draw_Line(bcolor, x-b,y+a,x+b,y+a); - DWIN_Draw_Line(bcolor, x-a,y+b,x+a,y+b); + dwinDrawLine(bcolor, x-b,y-a,x+b,y-a); + dwinDrawLine(bcolor, x-a,y-b,x+a,y-b); + dwinDrawLine(bcolor, x-b,y+a,x+b,y+a); + dwinDrawLine(bcolor, x-a,y+b,x+a,y+b); a++; } } @@ -322,13 +322,13 @@ uint16_t DWINUI::RainbowInt(int16_t val, int16_t minv, int16_t maxv) { // x/y: Upper-left point // mode : 0 : unchecked, 1 : checked void DWINUI::Draw_Checkbox(uint16_t color, uint16_t bcolor, uint16_t x, uint16_t y, bool checked=false) { - DWIN_Draw_Rectangle(0, color, x + 2, y + 2, x + 17, y + 17); - DWIN_Draw_Rectangle(1, checked ? color : bcolor, x + 6, y + 6, x + 13, y + 13); + dwinDrawRectangle(0, color, x + 2, y + 2, x + 17, y + 17); + dwinDrawRectangle(1, checked ? color : bcolor, x + 6, y + 6, x + 13, y + 13); } // Clear Menu by filling the menu area with background color void DWINUI::ClearMainArea() { - DWIN_Draw_Rectangle(1, backcolor, 0, TITLE_HEIGHT, DWIN_WIDTH - 1, STATUS_Y - 1); + dwinDrawRectangle(1, backcolor, 0, TITLE_HEIGHT, DWIN_WIDTH - 1, STATUS_Y - 1); } /* Title Class ==============================================================*/ diff --git a/Marlin/src/lcd/e3v2/proui/dwinui.h b/Marlin/src/lcd/e3v2/proui/dwinui.h index 85d969043f02..fd59757d643b 100644 --- a/Marlin/src/lcd/e3v2/proui/dwinui.h +++ b/Marlin/src/lcd/e3v2/proui/dwinui.h @@ -286,10 +286,10 @@ namespace DWINUI { // color: Line segment color // x/y: End point inline void LineTo(uint16_t color, uint16_t x, uint16_t y) { - DWIN_Draw_Line(color, cursor.x, cursor.y, x, y); + dwinDrawLine(color, cursor.x, cursor.y, x, y); } inline void LineTo(uint16_t x, uint16_t y) { - DWIN_Draw_Line(pencolor, cursor.x, cursor.y, x, y); + dwinDrawLine(pencolor, cursor.x, cursor.y, x, y); } // Extend a frame box @@ -462,28 +462,28 @@ namespace DWINUI { // x/y: Upper-left coordinate of the string // *string: The string inline void Draw_String(uint16_t x, uint16_t y, const char * const string) { - DWIN_Draw_String(false, fontid, textcolor, backcolor, x, y, string); + dwinDrawString(false, fontid, textcolor, backcolor, x, y, string); } inline void Draw_String(uint16_t x, uint16_t y, FSTR_P title) { - DWIN_Draw_String(false, fontid, textcolor, backcolor, x, y, FTOP(title)); + dwinDrawString(false, fontid, textcolor, backcolor, x, y, FTOP(title)); } inline void Draw_String(uint16_t color, uint16_t x, uint16_t y, const char * const string) { - DWIN_Draw_String(false, fontid, color, backcolor, x, y, string); + dwinDrawString(false, fontid, color, backcolor, x, y, string); } inline void Draw_String(uint16_t color, uint16_t x, uint16_t y, FSTR_P title) { - DWIN_Draw_String(false, fontid, color, backcolor, x, y, title); + dwinDrawString(false, fontid, color, backcolor, x, y, title); } inline void Draw_String(uint16_t color, uint16_t bgcolor, uint16_t x, uint16_t y, const char * const string) { - DWIN_Draw_String(true, fontid, color, bgcolor, x, y, string); + dwinDrawString(true, fontid, color, bgcolor, x, y, string); } inline void Draw_String(uint16_t color, uint16_t bgcolor, uint16_t x, uint16_t y, FSTR_P title) { - DWIN_Draw_String(true, fontid, color, bgcolor, x, y, title); + dwinDrawString(true, fontid, color, bgcolor, x, y, title); } inline void Draw_String(fontid_t fid, uint16_t color, uint16_t bgcolor, uint16_t x, uint16_t y, const char * const string) { - DWIN_Draw_String(true, fid, color, bgcolor, x, y, string); + dwinDrawString(true, fid, color, bgcolor, x, y, string); } inline void Draw_String(fontid_t fid, uint16_t color, uint16_t bgcolor, uint16_t x, uint16_t y, FSTR_P title) { - DWIN_Draw_String(true, fid, color, bgcolor, x, y, title); + dwinDrawString(true, fid, color, bgcolor, x, y, title); } // Draw a centered string using DWIN_WIDTH @@ -527,7 +527,7 @@ namespace DWINUI { // color: Rectangle color // frame: Box coordinates and size inline void Draw_Box(uint8_t mode, uint16_t color, frame_rect_t frame) { - DWIN_Draw_Box(mode, color, frame.x, frame.y, frame.w, frame.h); + dwinDrawBox(mode, color, frame.x, frame.y, frame.w, frame.h); } // Draw a circle diff --git a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp index 860bad74f3f4..81baa0a2def8 100644 --- a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp +++ b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp @@ -60,7 +60,7 @@ void draw_es_label(FSTR_P const flabel=nullptr) { void draw_es_state(const bool is_hit) { const uint8_t LM = 130; DWINUI::cursor.x = LM; - DWIN_Draw_Rectangle(1, HMI_data.PopupBg_Color, LM, DWINUI::cursor.y, LM + 100, DWINUI::cursor.y + 20); + dwinDrawRectangle(1, HMI_data.PopupBg_Color, LM, DWINUI::cursor.y, LM + 100, DWINUI::cursor.y + 20); is_hit ? DWINUI::Draw_String(RGB(31,31,16), F(STR_ENDSTOP_HIT)) : DWINUI::Draw_String(RGB(16,63,16), F(STR_ENDSTOP_OPEN)); DWINUI::MoveBy(0, 25); } @@ -86,7 +86,7 @@ void ESDiagClass::Update() { TERN_(USE_Y_MIN, ES_REPORT(Y_MIN)); TERN_(USE_Y_MAX, ES_REPORT(Y_MAX)); TERN_(HAS_Z_MIN_PIN, ES_REPORT(Z_MIN)); TERN_(USE_Z_MAX, ES_REPORT(Z_MAX)); TERN_(HAS_FILAMENT_SENSOR, draw_es_state(READ(FIL_RUNOUT1_PIN) != FIL_RUNOUT1_STATE)); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } #endif // DWIN_LCD_PROUI && HAS_ESDIAG diff --git a/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp b/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp index 6cf3e9e135f5..b87ed2101f67 100644 --- a/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp +++ b/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp @@ -199,7 +199,7 @@ void Preview_DrawFromSD() { char str_1[6] = ""; char str_2[6] = ""; char str_3[6] = ""; - DWIN_Draw_Rectangle(1, HMI_data.Background_Color, 0, 0, DWIN_WIDTH, STATUS_Y - 1); + dwinDrawRectangle(1, HMI_data.Background_Color, 0, 0, DWIN_WIDTH, STATUS_Y - 1); if (fileprop.time) { sprintf_P(buf, PSTR("Estimated time: %i:%02i"), (uint16_t)fileprop.time / 3600, ((uint16_t)fileprop.time % 3600) / 60); DWINUI::Draw_String(20, 10, buf); @@ -218,12 +218,12 @@ void Preview_DrawFromSD() { } DWINUI::Draw_Button(BTN_Print, 26, 290); DWINUI::Draw_Button(BTN_Cancel, 146, 290); - DWIN_ICON_Show(0, 0, 1, 21, 90, 0x00); + dwinIconShow(0, 0, 1, 21, 90, 0x00); Draw_Select_Highlight(true, 290); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } else { - HMI_flag.select_flag = 1; + hmiFlag.select_flag = 1; wait_for_user = false; } } diff --git a/Marlin/src/lcd/e3v2/proui/lockscreen.cpp b/Marlin/src/lcd/e3v2/proui/lockscreen.cpp index abf67ad9aff4..50874e0fc2bb 100644 --- a/Marlin/src/lcd/e3v2/proui/lockscreen.cpp +++ b/Marlin/src/lcd/e3v2/proui/lockscreen.cpp @@ -55,9 +55,9 @@ void LockScreenClass::draw() { DWINUI::Draw_CenteredString(Color_White, 180, GET_TEXT_F(MSG_LOCKSCREEN_LOCKED)); DWINUI::Draw_CenteredString(Color_White, 200, GET_TEXT_F(MSG_LOCKSCREEN_UNLOCK)); DWINUI::Draw_CenteredString(Color_White, 240, F("-> | <-")); - DWIN_Draw_Box(1, HMI_data.Barfill_Color, 0, 260, DWIN_WIDTH, 20); - DWIN_Draw_VLine(Color_Yellow, lock_pos * DWIN_WIDTH / 255, 260, 20); - DWIN_UpdateLCD(); + dwinDrawBox(1, HMI_data.Barfill_Color, 0, 260, DWIN_WIDTH, 20); + dwinDrawVLine(Color_Yellow, lock_pos * DWIN_WIDTH / 255, 260, 20); + dwinUpdateLCD(); } void LockScreenClass::onEncoder(EncoderState encoder_diffState) { @@ -67,9 +67,9 @@ void LockScreenClass::onEncoder(EncoderState encoder_diffState) { case ENCODER_DIFF_ENTER: unlocked = (lock_pos == 128); break; default: break; } - DWIN_Draw_Box(1, HMI_data.Barfill_Color, 0, 260, DWIN_WIDTH, 20); - DWIN_Draw_VLine(Color_Yellow, lock_pos * DWIN_WIDTH / 255, 260, 20); - DWIN_UpdateLCD(); + dwinDrawBox(1, HMI_data.Barfill_Color, 0, 260, DWIN_WIDTH, 20); + dwinDrawVLine(Color_Yellow, lock_pos * DWIN_WIDTH / 255, 260, 20); + dwinUpdateLCD(); } #endif // DWIN_LCD_PROUI && HAS_LOCKSCREEN diff --git a/Marlin/src/lcd/e3v2/proui/menus.cpp b/Marlin/src/lcd/e3v2/proui/menus.cpp index dfcfaa7bbc19..870a4248ced5 100644 --- a/Marlin/src/lcd/e3v2/proui/menus.cpp +++ b/Marlin/src/lcd/e3v2/proui/menus.cpp @@ -47,20 +47,20 @@ MenuData_t MenuData; // Menuitem Drawing functions ================================================= void Draw_Title(TitleClass* title) { - DWIN_Draw_Rectangle(1, HMI_data.TitleBg_Color, 0, 0, DWIN_WIDTH - 1, TITLE_HEIGHT - 1); + dwinDrawRectangle(1, HMI_data.TitleBg_Color, 0, 0, DWIN_WIDTH - 1, TITLE_HEIGHT - 1); if (title->frameid) DWIN_Frame_AreaCopy(title->frameid, title->frame.left, title->frame.top, title->frame.right, title->frame.bottom, 14, (TITLE_HEIGHT - (title->frame.bottom - title->frame.top)) / 2 - 1); else #if ENABLED(TITLE_CENTERED) DWINUI::Draw_CenteredString(false, DWIN_FONT_HEAD, HMI_data.TitleTxt_Color, HMI_data.TitleBg_Color, (TITLE_HEIGHT - DWINUI::fontHeight(DWIN_FONT_HEAD)) / 2 - 1, title->caption); #else - DWIN_Draw_String(false, DWIN_FONT_HEAD, HMI_data.TitleTxt_Color, HMI_data.TitleBg_Color, 14, (TITLE_HEIGHT - DWINUI::fontHeight(DWIN_FONT_HEAD)) / 2 - 1, title->caption); + dwinDrawString(false, DWIN_FONT_HEAD, HMI_data.TitleTxt_Color, HMI_data.TitleBg_Color, 14, (TITLE_HEIGHT - DWINUI::fontHeight(DWIN_FONT_HEAD)) / 2 - 1, title->caption); #endif } void Draw_Menu(MenuClass* menu) { DWINUI::SetColors(HMI_data.Text_Color, HMI_data.Background_Color, HMI_data.StatusBg_Color); - DWIN_Draw_Rectangle(1, DWINUI::backcolor, 0, TITLE_HEIGHT, DWIN_WIDTH - 1, STATUS_Y - 1); + dwinDrawRectangle(1, DWINUI::backcolor, 0, TITLE_HEIGHT, DWIN_WIDTH - 1, STATUS_Y - 1); } void Draw_Menu_Cursor(const int8_t line) { @@ -84,7 +84,7 @@ void Draw_Menu_Line(const uint8_t line, const uint8_t icon /*=0*/, const char * if (label) DWINUI::Draw_String(LBLX, MBASE(line) - 1, (char*)label); if (more) DWINUI::Draw_Icon(ICON_More, VALX + 16, MBASE(line) - 3); if (selected) Draw_Menu_Cursor(line); - DWIN_Draw_HLine(HMI_data.SplitLine_Color, 16, MYPOS(line + 1), 240); + dwinDrawHLine(HMI_data.SplitLine_Color, 16, MYPOS(line + 1), 240); } void Draw_Menu_Line(const uint8_t line, const uint8_t icon /*=0*/, FSTR_P label /*=nullptr*/, bool more /*=false*/, bool selected /*=false*/) { @@ -98,7 +98,7 @@ void Draw_Chkb_Line(const uint8_t line, const bool checked) { void Show_Chkb_Line(const bool checked) { const uint8_t line = CurrentMenu->line(); DWINUI::Draw_Checkbox(HMI_data.Text_Color, HMI_data.Background_Color, VALX + 3 * DWINUI::fontWidth(), MBASE(line) - 1, checked); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } void Toggle_Chkb_Line(bool &checked) { @@ -116,7 +116,7 @@ void onDrawMenuItem(MenuItemClass* menuitem, int8_t line) { DWIN_Frame_AreaCopy(menuitem->frameid, menuitem->frame.left, menuitem->frame.top, menuitem->frame.right, menuitem->frame.bottom, LBLX, MBASE(line)); else if (menuitem->caption) DWINUI::Draw_String(LBLX, MBASE(line) - 1, menuitem->caption); - DWIN_Draw_HLine(HMI_data.SplitLine_Color, 16, MYPOS(line + 1), 240); + dwinDrawHLine(HMI_data.SplitLine_Color, 16, MYPOS(line + 1), 240); } void onDrawSubMenu(MenuItemClass* menuitem, int8_t line) { @@ -197,7 +197,7 @@ void SetOnClick(uint8_t process, const int32_t lo, const int32_t hi, uint8_t dp, MenuData.Apply = Apply; MenuData.LiveUpdate = LiveUpdate; MenuData.Value = constrain(val, lo, hi); - EncoderRate.enabled = true; + encoderRate.enabled = true; } // Generic onclick event for integer values @@ -292,8 +292,8 @@ int8_t HMI_Get(bool draw) { const int32_t cval = MenuData.Value; EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState != ENCODER_DIFF_NO) { - if (Apply_Encoder(encoder_diffState, MenuData.Value)) { - EncoderRate.enabled = false; + if (applyEncoder(encoder_diffState, MenuData.Value)) { + encoderRate.enabled = false; if (draw) DrawItemEdit(false); checkkey = Menu; return 2; @@ -358,7 +358,7 @@ void MenuClass::draw() { for (int8_t i = 0; i < MenuItemCount; i++) MenuItems[i]->draw(i - topline); Draw_Menu_Cursor(line()); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } void MenuClass::onScroll(bool dir) { @@ -367,20 +367,20 @@ void MenuClass::onScroll(bool dir) { LIMIT(sel, 0, MenuItemCount - 1); if (sel != selected) { Erase_Menu_Cursor(line()); - DWIN_UpdateLCD(); + dwinUpdateLCD(); if ((sel - topline) == TROWS) { - DWIN_Frame_AreaMove(1, DWIN_SCROLL_UP, MLINE, DWINUI::backcolor, 0, TITLE_HEIGHT + 1, DWIN_WIDTH, STATUS_Y - 1); + dwinFrameAreaMove(1, DWIN_SCROLL_UP, MLINE, DWINUI::backcolor, 0, TITLE_HEIGHT + 1, DWIN_WIDTH, STATUS_Y - 1); topline++; MenuItems[sel]->draw(TROWS - 1); } if ((sel < topline)) { - DWIN_Frame_AreaMove(1, DWIN_SCROLL_DOWN, MLINE, DWINUI::backcolor, 0, TITLE_HEIGHT + 1, DWIN_WIDTH, STATUS_Y - 1); + dwinFrameAreaMove(1, DWIN_SCROLL_DOWN, MLINE, DWINUI::backcolor, 0, TITLE_HEIGHT + 1, DWIN_WIDTH, STATUS_Y - 1); topline--; MenuItems[sel]->draw(0); } selected = sel; Draw_Menu_Cursor(line()); - DWIN_UpdateLCD(); + dwinUpdateLCD(); } } diff --git a/Marlin/src/lcd/e3v2/proui/meshviewer.cpp b/Marlin/src/lcd/e3v2/proui/meshviewer.cpp index 80f1d35f4034..1f42004d3f36 100644 --- a/Marlin/src/lcd/e3v2/proui/meshviewer.cpp +++ b/Marlin/src/lcd/e3v2/proui/meshviewer.cpp @@ -57,8 +57,8 @@ void MeshViewerClass::DrawMesh(bed_mesh_t zval, const uint8_t sizex, const uint8 #define py(yp) (30 + DWIN_WIDTH - my - (yp) * sty) #define rm(z) ((z - minz) * (rmax - rmin) / _MAX(1, (maxz - minz)) + rmin) #define DrawMeshValue(xp, yp, zv) DWINUI::Draw_Signed_Float(font6x12, 1, 2, px(xp) - 18, py(yp) - 6, zv) - #define DrawMeshHLine(yp) DWIN_Draw_HLine(HMI_data.SplitLine_Color, px(0), py(yp), DWIN_WIDTH - 2 * mx) - #define DrawMeshVLine(xp) DWIN_Draw_VLine(HMI_data.SplitLine_Color, px(xp), py(sizey - 1), DWIN_WIDTH - 2 * my) + #define DrawMeshHLine(yp) dwinDrawHLine(HMI_data.SplitLine_Color, px(0), py(yp), DWIN_WIDTH - 2 * mx) + #define DrawMeshVLine(xp) dwinDrawVLine(HMI_data.SplitLine_Color, px(xp), py(sizey - 1), DWIN_WIDTH - 2 * my) int16_t maxz =-32000; int16_t minz = 32000; for (uint8_t y = 0; y < sizey; ++y) for (uint8_t x = 0; x < sizex; ++x) { const float v = isnan(zval[x][y]) ? 0 : round(zval[x][y] * 100); @@ -69,7 +69,7 @@ void MeshViewerClass::DrawMesh(bed_mesh_t zval, const uint8_t sizex, const uint8 max = (float)maxz / 100; min = (float)minz / 100; DWINUI::ClearMainArea(); - DWIN_Draw_Rectangle(0, HMI_data.SplitLine_Color, px(0), py(0), px(sizex - 1), py(sizey - 1)); + dwinDrawRectangle(0, HMI_data.SplitLine_Color, px(0), py(0), px(sizex - 1), py(sizey - 1)); for (uint8_t x = 1; x < sizex - 1; ++x) DrawMeshVLine(x); for (uint8_t y = 1; y < sizey - 1; ++y) DrawMeshHLine(y); for (uint8_t y = 0; y < sizey; ++y) { @@ -93,7 +93,7 @@ void MeshViewerClass::DrawMesh(bed_mesh_t zval, const uint8_t sizex, const uint8 sprintf_P(str_1, PSTR("-.%02i"), -zmesh[x][y]); break; case 0: - DWIN_Draw_String(false, font6x12, DWINUI::textcolor, DWINUI::backcolor, px(x) - 4, py(y) - 6, "0"); + dwinDrawString(false, font6x12, DWINUI::textcolor, DWINUI::backcolor, px(x) - 4, py(y) - 6, "0"); break; case 1 ... 99: sprintf_P(str_1, PSTR(".%02i"), zmesh[x][y]); @@ -103,7 +103,7 @@ void MeshViewerClass::DrawMesh(bed_mesh_t zval, const uint8_t sizex, const uint8 break; } if (str_1[0]) - DWIN_Draw_String(false, font6x12, DWINUI::textcolor, DWINUI::backcolor, px(x) - 12, py(y) - 6, str_1); + dwinDrawString(false, font6x12, DWINUI::textcolor, DWINUI::backcolor, px(x) - 12, py(y) - 6, str_1); } } } @@ -121,7 +121,7 @@ void MeshViewerClass::Draw(bool withsave /*= false*/) { if (withsave) { DWINUI::Draw_Button(BTN_Save, 26, 305); DWINUI::Draw_Button(BTN_Continue, 146, 305); - Draw_Select_Highlight(HMI_flag.select_flag, 305); + Draw_Select_Highlight(hmiFlag.select_flag, 305); } else DWINUI::Draw_Button(BTN_Continue, 86, 305); @@ -138,7 +138,7 @@ void MeshViewerClass::Draw(bool withsave /*= false*/) { } void Draw_MeshViewer() { MeshViewer.Draw(true); } -void onClick_MeshViewer() { if (HMI_flag.select_flag) SaveMesh(); HMI_ReturnScreen(); } +void onClick_MeshViewer() { if (hmiFlag.select_flag) SaveMesh(); HMI_ReturnScreen(); } void Goto_MeshViewer() { if (leveling_is_valid()) Goto_Popup(Draw_MeshViewer, onClick_MeshViewer); else HMI_ReturnScreen(); } #endif // DWIN_LCD_PROUI && HAS_MESH diff --git a/Marlin/src/lcd/e3v2/proui/plot.cpp b/Marlin/src/lcd/e3v2/proui/plot.cpp index 627dc39223cf..94f0dc055e7c 100644 --- a/Marlin/src/lcd/e3v2/proui/plot.cpp +++ b/Marlin/src/lcd/e3v2/proui/plot.cpp @@ -54,22 +54,22 @@ void PlotClass::Draw(const frame_rect_t &frame, const celsius_t max, const_float y2 = frame.y + frame.h - 1; r = round((y2) - ref * scale); DWINUI::Draw_Box(1, Plot_Bg_Color, frame); - for (uint8_t i = 1; i < 4; i++) if (i * 50 < frame.w) DWIN_Draw_VLine(Line_Color, i * 50 + frame.x, frame.y, frame.h); + for (uint8_t i = 1; i < 4; i++) if (i * 50 < frame.w) dwinDrawVLine(Line_Color, i * 50 + frame.x, frame.y, frame.h); DWINUI::Draw_Box(0, Color_White, DWINUI::ExtendFrame(frame, 1)); - DWIN_Draw_HLine(Color_Red, frame.x, r, frame.w); + dwinDrawHLine(Color_Red, frame.x, r, frame.w); } void PlotClass::Update(const_float_t value) { if (!scale) return; const uint16_t y = round((y2) - value * scale); if (grphpoints < grphframe.w) { - DWIN_Draw_Point(Color_Yellow, 1, 1, grphpoints + grphframe.x, y); + dwinDrawPoint(Color_Yellow, 1, 1, grphpoints + grphframe.x, y); } else { - DWIN_Frame_AreaMove(1, 0, 1, Plot_Bg_Color, grphframe.x, grphframe.y, x2, y2); - if ((grphpoints % 50) == 0) DWIN_Draw_VLine(Line_Color, x2 - 1, grphframe.y + 1, grphframe.h - 2); - DWIN_Draw_Point(Color_Red, 1, 1, x2 - 1, r); - DWIN_Draw_Point(Color_Yellow, 1, 1, x2 - 1, y); + dwinFrameAreaMove(1, 0, 1, Plot_Bg_Color, grphframe.x, grphframe.y, x2, y2); + if ((grphpoints % 50) == 0) dwinDrawVLine(Line_Color, x2 - 1, grphframe.y + 1, grphframe.h - 2); + dwinDrawPoint(Color_Red, 1, 1, x2 - 1, r); + dwinDrawPoint(Color_Yellow, 1, 1, x2 - 1, y); } grphpoints++; } diff --git a/Marlin/src/lcd/e3v2/proui/printstats.cpp b/Marlin/src/lcd/e3v2/proui/printstats.cpp index 7f45fa71ef1b..b99916dce178 100644 --- a/Marlin/src/lcd/e3v2/proui/printstats.cpp +++ b/Marlin/src/lcd/e3v2/proui/printstats.cpp @@ -82,7 +82,7 @@ void Goto_PrintStats() { // Print Stats Reset popup void Popup_ResetStats() { DWIN_Popup_ConfirmCancel(ICON_Info_0, GET_TEXT_F(MSG_RESET_STATS)); } void OnClick_ResetStats() { - if (HMI_flag.select_flag) PrintStatsClass::Reset(); + if (hmiFlag.select_flag) PrintStatsClass::Reset(); HMI_ReturnScreen(); } void PrintStatsReset() { Goto_Popup(Popup_ResetStats, OnClick_ResetStats); } diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index b56d21ae406a..db5d0a635f83 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -1667,7 +1667,7 @@ void MarlinUI::init() { TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_open(PROMPT_INFO, F("UI Aborted"), FPSTR(DISMISS_STR))); LCD_MESSAGE(MSG_PRINT_ABORTED); TERN_(HAS_MARLINUI_MENU, return_to_status()); - TERN_(DWIN_LCD_PROUI, HMI_flag.abort_flag = true); + TERN_(DWIN_LCD_PROUI, hmiFlag.abort_flag = true); } #if ALL(HAS_MARLINUI_MENU, PSU_CONTROL) From 5b8b8e005b87fad983314bb78bb62604bd8aa8af Mon Sep 17 00:00:00 2001 From: EvilGremlin <22657714+EvilGremlin@users.noreply.github.com> Date: Sat, 17 Jun 2023 23:49:22 +0300 Subject: [PATCH 299/427] =?UTF-8?q?=F0=9F=94=A7=20BLTOUCH=5FHS=5FMODE=20he?= =?UTF-8?q?x=20value=20check=20(#25992)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/SanityCheck.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index ab4b0e4e1262..1ed6f97f985e 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -1285,8 +1285,8 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #if HAS_BLTOUCH_HS_MODE constexpr char hs[] = STRINGIFY(BLTOUCH_HS_MODE); - static_assert(!(strcmp(hs, "1") && strcmp(hs, "true") && strcmp(hs, "0") && strcmp(hs, "false")), \ - "BLTOUCH_HS_MODE must now be defined as true or false, indicating the default state."); + static_assert(!(strcmp(hs, "1") && strcmp(hs, "0x1") && strcmp(hs, "true") && strcmp(hs, "0") && strcmp(hs, "0x0") && strcmp(hs, "false")), \ + "BLTOUCH_HS_MODE must now be defined as true or false, indicating the default state."); #ifdef BLTOUCH_HS_EXTRA_CLEARANCE static_assert(BLTOUCH_HS_EXTRA_CLEARANCE >= 0, "BLTOUCH_HS_MODE requires BLTOUCH_HS_EXTRA_CLEARANCE >= 0."); #endif From 1e5c279da37270ec8d084cd9c46e6abec2f70a42 Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Sat, 17 Jun 2023 22:53:03 +0200 Subject: [PATCH 300/427] =?UTF-8?q?=F0=9F=94=A8=20Fix=20marlin=5FSTM32H723?= =?UTF-8?q?VG=20mcu=20value=20(#25991)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25921 --- buildroot/share/PlatformIO/boards/marlin_STM32H723VG.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildroot/share/PlatformIO/boards/marlin_STM32H723VG.json b/buildroot/share/PlatformIO/boards/marlin_STM32H723VG.json index bf1fc961af0f..44a37e94ec21 100644 --- a/buildroot/share/PlatformIO/boards/marlin_STM32H723VG.json +++ b/buildroot/share/PlatformIO/boards/marlin_STM32H723VG.json @@ -4,7 +4,7 @@ "cpu": "cortex-m7", "extra_flags": "-DSTM32H7xx -DSTM32H723xx", "f_cpu": "550000000L", - "mcu": "stm32h723vzt6", + "mcu": "stm32h723vgt6", "product_line": "STM32H723xx", "variant": "MARLIN_H723VG" }, From a3df3d40eec8e3d4b82feed5b92d50ba15b47acf Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Sat, 17 Jun 2023 22:55:02 +0200 Subject: [PATCH 301/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20G2/G3=20limiting?= =?UTF-8?q?=5Fspeed=20(#25988)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/motion/G2_G3.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/gcode/motion/G2_G3.cpp b/Marlin/src/gcode/motion/G2_G3.cpp index 1cae82f71cf4..b3a281bcc805 100644 --- a/Marlin/src/gcode/motion/G2_G3.cpp +++ b/Marlin/src/gcode/motion/G2_G3.cpp @@ -303,7 +303,7 @@ void plan_arc( // d) allows the print head to stop in the remining length of the curve within all configured maximum accelerations. // The last has to be calculated every time through the loop. const float limiting_accel = _MIN(planner.settings.max_acceleration_mm_per_s2[axis_p], planner.settings.max_acceleration_mm_per_s2[axis_q]), - limiting_speed = _MIN(planner.settings.max_feedrate_mm_s[axis_p], planner.settings.max_acceleration_mm_per_s2[axis_q]), + limiting_speed = _MIN(planner.settings.max_feedrate_mm_s[axis_p], planner.settings.max_feedrate_mm_s[axis_q]), limiting_speed_sqr = _MIN(sq(limiting_speed), limiting_accel * radius, sq(scaled_fr_mm_s)); float arc_mm_remaining = flat_mm; From c180a99c793493e10102b04b58239e32e793ea93 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Sun, 18 Jun 2023 09:44:49 +1200 Subject: [PATCH 302/427] =?UTF-8?q?=F0=9F=93=9D=20Update=20BTT=20SKR=20V3?= =?UTF-8?q?=20board=20comments=20(#25973)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/boards.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index 12e72517a3d0..e9940fc34496 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -469,8 +469,8 @@ #define BOARD_NUCLEO_F767ZI 6003 // ST NUCLEO-F767ZI Dev Board #define BOARD_BTT_SKR_SE_BX_V2 6004 // BigTreeTech SKR SE BX V2.0 (STM32H743II) #define BOARD_BTT_SKR_SE_BX_V3 6005 // BigTreeTech SKR SE BX V3.0 (STM32H743II) -#define BOARD_BTT_SKR_V3_0 6006 // BigTreeTech SKR V3.0 (STM32H743VG) -#define BOARD_BTT_SKR_V3_0_EZ 6007 // BigTreeTech SKR V3.0 EZ (STM32H743VG) +#define BOARD_BTT_SKR_V3_0 6006 // BigTreeTech SKR V3.0 (STM32H743VI / STM32H723VG) +#define BOARD_BTT_SKR_V3_0_EZ 6007 // BigTreeTech SKR V3.0 EZ (STM32H743VI / STM32H723VG) #define BOARD_BTT_OCTOPUS_MAX_EZ_V1_0 6008 // BigTreeTech Octopus Max EZ V1.0 (STM32H723ZE) // From 927b3cc41a0a53f95e1fca78430b116e0fc8806a Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sun, 18 Jun 2023 00:25:52 +0000 Subject: [PATCH 303/427] [cron] Bump distribution date (2023-06-18) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index b51a4a671d92..2b351430468a 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-17" +//#define STRING_DISTRIBUTION_DATE "2023-06-18" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 66942676da01..b9c8351e23eb 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-17" + #define STRING_DISTRIBUTION_DATE "2023-06-18" #endif /** From dd1792bdfce1ff5ff679f20dbf9bf66789e743b0 Mon Sep 17 00:00:00 2001 From: Andrew <18502096+classicrocker883@users.noreply.github.com> Date: Sun, 18 Jun 2023 00:19:28 -0400 Subject: [PATCH 304/427] =?UTF-8?q?=F0=9F=94=A8=20Update=20CMakeLists.txt?= =?UTF-8?q?=20(#25983)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 + buildroot/share/cmake/CMakeLists.txt | 69 +++++++++++++++++++++++----- 2 files changed, 59 insertions(+), 12 deletions(-) diff --git a/.gitignore b/.gitignore index cff637d36e79..fcdeb5e521dd 100755 --- a/.gitignore +++ b/.gitignore @@ -132,7 +132,9 @@ spi_flash.bin fs.img # CMake +buildroot/share/cmake/* CMakeLists.txt +!buildroot/share/cmake/CMakeLists.txt src/CMakeLists.txt CMakeListsPrivate.txt build/ diff --git a/buildroot/share/cmake/CMakeLists.txt b/buildroot/share/cmake/CMakeLists.txt index 1ed9091e01d6..b861f79b952b 100644 --- a/buildroot/share/cmake/CMakeLists.txt +++ b/buildroot/share/cmake/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 2.8) +cmake_minimum_required(VERSION 2.8.12) #====================================================================# # Usage under Linux: # # # @@ -24,21 +24,67 @@ set(SCRIPT_BRANCH 1.0.2) #Set to wanted marlin-cmake release tag or branch if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake) - file(DOWNLOAD https://github.com/tohara/marlin-cmake/archive/${SCRIPT_BRANCH}.tar.gz - ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake-src.tar.gz SHOW_PROGRESS) + file(DOWNLOAD https://github.com/tohara/marlin-cmake/archive/${SCRIPT_BRANCH}.tar.gz + ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake-src.tar.gz SHOW_PROGRESS) - execute_process(COMMAND ${CMAKE_COMMAND} -E tar -xvf ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake-src.tar.gz WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}) + execute_process(COMMAND ${CMAKE_COMMAND} -E tar -xvf ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake-src.tar.gz WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}) - file(RENAME ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake-${SCRIPT_BRANCH} ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake) - file(REMOVE ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake-src.tar.gz) + file(RENAME ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake-${SCRIPT_BRANCH} ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake) + file(REMOVE ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake-src.tar.gz) +endif() + +if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/modules/Arduino_SDK.cmake) + file(DOWNLOAD https://raw.githubusercontent.com/tohara/marlin-cmake/master/modules/Arduino_SDK.cmake + ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/modules/Arduino_SDK.cmake SHOW_PROGRESS) +endif() + +if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/modules/marlin_cmake_functions.cmake) + file(DOWNLOAD https://raw.githubusercontent.com/tohara/marlin-cmake/master/modules/marlin_cmake_functions.cmake + ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/modules/marlin_cmake_functions.cmake SHOW_PROGRESS) +endif() +if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/Platform/Arduino.cmake) + file(DOWNLOAD https://raw.githubusercontent.com/tohara/marlin-cmake/master/Platform/Arduino.cmake + ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/Platform/Arduino.cmake SHOW_PROGRESS) endif() -if(WIN32 AND NOT EXISTS ${CMAKE_BINARY_DIR}/make.exe) - file(COPY ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/resources/make.exe DESTINATION ${CMAKE_BINARY_DIR}/) +if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/settings/marlin_boards.txt) + file(DOWNLOAD https://raw.githubusercontent.com/tohara/marlin-cmake/master/settings/marlin_boards.txt + ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/settings/marlin_boards.txt SHOW_PROGRESS) endif() +if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/toolchain/ArduinoToolchain.cmake) + file(DOWNLOAD https://raw.githubusercontent.com/tohara/marlin-cmake/master/toolchain/ArduinoToolchain.cmake + ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/toolchain/ArduinoToolchain.cmake SHOW_PROGRESS) +endif() + +if(WIN32) + if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/resources/make.exe) + file(DOWNLOAD https://raw.githubusercontent.com/tohara/marlin-cmake/master/resources/make.exe + ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/resources/make.exe SHOW_PROGRESS) + endif() +endif(WIN32) + +if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/arduino-1.8.19) + + file(DOWNLOAD https://downloads.arduino.cc/arduino-1.8.19-windows.zip + ${CMAKE_CURRENT_LIST_DIR}/arduino-1.8.19-windows.zip SHOW_PROGRESS) + + execute_process(COMMAND ${CMAKE_COMMAND} -E tar -xvzf ${CMAKE_CURRENT_LIST_DIR}/arduino-1.8.19-windows.zip WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}) + + file(REMOVE ${CMAKE_CURRENT_LIST_DIR}/arduino-1.8.19-windows.zip) + +endif() + +# Print CMake version +message("-- Running CMake version: " ${CMAKE_VERSION}) + +# Replace the CMake Ver. in the Arduino.cmake +file(READ "${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/Platform/Arduino.cmake" ORIGINAL_FILE_CONTENTS) +string(REPLACE "cmake_minimum_required(VERSION 2.8.5)" "cmake_minimum_required(VERSION 2.8.12)" NEW_FILE_CONTENTS "${ORIGINAL_FILE_CONTENTS}") +file(WRITE "${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/Platform/Arduino.cmake" "${NEW_FILE_CONTENTS}") + set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_LIST_DIR}/marlin-cmake/modules) #====================================================================# @@ -46,7 +92,7 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_LIST_DIR}/marlin-cma # It can also be set from command line. eg.: # # cmake .. -DARDUINO_SDK_PATH="/path/to/arduino-1.x.x" # #====================================================================# -#set(ARDUINO_SDK_PATH ${CMAKE_CURRENT_LIST_DIR}/arduino-1.6.8) +set(ARDUINO_SDK_PATH ${CMAKE_CURRENT_LIST_DIR}/arduino-1.8.19) #set(ARDUINO_SDK_PATH /Applications/Arduino.app/Contents/Java) #set(ARDUINO_SDK_PATH $HOME/ArduinoAddons/Arduino_1.6.x) #====================================================================# @@ -79,7 +125,6 @@ project(Marlin C CXX) print_board_list() print_programmer_list() - #====================================================================# # Get motherboard settings from Configuration.h # # setup_motherboard(TARGET Marlin_src_folder) # @@ -105,9 +150,9 @@ set(${PROJECT_NAME}_SRCS "${SOURCES};../../../Marlin/Marlin.ino") # cmake .. -DUPLOAD_PORT=/dev/ttyACM0 # #====================================================================# if(UPLOAD_PORT) - set(${PROJECT_NAME}_PORT ${UPLOAD_PORT}) + set(${PROJECT_NAME}_PORT ${UPLOAD_PORT}) else() - set(${PROJECT_NAME}_PORT /dev/ttyACM0) + set(${PROJECT_NAME}_PORT /dev/ttyACM0) endif() #====================================================================# From 441416728cd7f0e9b6ebf94f895d1d27fe59d25a Mon Sep 17 00:00:00 2001 From: Mark Date: Sun, 18 Jun 2023 17:18:08 +0800 Subject: [PATCH 305/427] =?UTF-8?q?=F0=9F=9A=B8=20Bed=20distance=20sensor?= =?UTF-8?q?=20improvements=20(#25847)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/bedlevel/bdl/bdl.cpp | 237 ++++++++++++------- Marlin/src/feature/bedlevel/bdl/bdl.h | 16 +- Marlin/src/gcode/bedlevel/abl/G29.cpp | 64 ++++- Marlin/src/gcode/calibrate/G28.cpp | 6 - Marlin/src/gcode/config/M43.cpp | 12 +- Marlin/src/gcode/gcode.h | 1 - Marlin/src/gcode/probe/M102.cpp | 26 +- Marlin/src/lcd/extui/nextion/nextion_tft.cpp | 2 +- Marlin/src/module/endstops.cpp | 6 +- Marlin/src/module/motion.cpp | 10 + Marlin/src/module/probe.h | 12 +- Marlin/src/module/stepper/indirection.h | 2 +- 12 files changed, 271 insertions(+), 123 deletions(-) diff --git a/Marlin/src/feature/bedlevel/bdl/bdl.cpp b/Marlin/src/feature/bedlevel/bdl/bdl.cpp index 064a8ffbd211..14989a07d344 100644 --- a/Marlin/src/feature/bedlevel/bdl/bdl.cpp +++ b/Marlin/src/feature/bedlevel/bdl/bdl.cpp @@ -34,6 +34,7 @@ #include "../../../module/temperature.h" #include "../../../module/endstops.h" #include "../../babystep.h" +#include "../../../lcd/marlinui.h" // I2C software Master library for segment bed heating and bed distance sensor #include @@ -42,6 +43,8 @@ BDS_Leveling bdl; //#define DEBUG_OUT_BD +#define DEBUG_OUT ENABLED(DEBUG_OUT_BD) +#include "../../../core/debug_out.h" // M102 S-5 Read raw Calibrate data // M102 S-6 Start Calibrate @@ -49,144 +52,196 @@ BDS_Leveling bdl; // M102 S-1 Read sensor information #define MAX_BD_HEIGHT 4.0f +#define CMD_READ_VERSION 1016 #define CMD_START_READ_CALIBRATE_DATA 1017 #define CMD_END_READ_CALIBRATE_DATA 1018 #define CMD_START_CALIBRATE 1019 #define CMD_END_CALIBRATE 1021 -#define CMD_READ_VERSION 1016 - -I2C_SegmentBED BD_I2C_SENSOR; - #define BD_SENSOR_I2C_ADDR 0x3C +I2C_SegmentBED BD_I2C_SENSOR; +float BDS_Leveling::pos_zero_offset; int8_t BDS_Leveling::config_state; -uint8_t BDS_Leveling::homing; - -void BDS_Leveling::echo_name() { SERIAL_ECHOPGM("Bed Distance Leveling"); } void BDS_Leveling::init(uint8_t _sda, uint8_t _scl, uint16_t delay_s) { - int ret = BD_I2C_SENSOR.i2c_init(_sda, _scl, BD_SENSOR_I2C_ADDR, delay_s); - if (ret != 1) SERIAL_ECHOLNPGM("BD_I2C_SENSOR Init Fail return code:", ret); - config_state = 0; + config_state = BDS_IDLE; + const int ret = BD_I2C_SENSOR.i2c_init(_sda, _scl, BD_SENSOR_I2C_ADDR, delay_s); + if (ret != 1) SERIAL_ECHOLNPGM("BD Sensor Init Fail (", ret, ")"); + sync_plan_position(); + pos_zero_offset = planner.get_axis_position_mm(Z_AXIS) - current_position.z; + SERIAL_ECHOLNPGM("BD Sensor Zero Offset:", pos_zero_offset); +} + +bool BDS_Leveling::check(const uint16_t data, const bool raw_data/*=false*/, const bool hicheck/*=false*/) { + if (BD_I2C_SENSOR.BD_Check_OddEven(data) == 0) { + SERIAL_ECHOLNPGM("Read Error."); + return true; // error + } + if (raw_data == true) { + if (hicheck && (data & 0x3FF) > 550) + SERIAL_ECHOLNPGM("BD Sensor mounted too high!"); + else if (!good_data(data)) + SERIAL_ECHOLNPGM("Invalid data, please calibrate."); + else + return false; + } + else { + if ((data & 0x3FF) >= (MAX_BD_HEIGHT) * 100 - 10) + SERIAL_ECHOLNPGM("Out of Range."); + else + return false; + } + return true; // error +} + +float BDS_Leveling::interpret(const uint16_t data) { + return (data & 0x3FF) / 100.0f; } float BDS_Leveling::read() { - const uint16_t tmp = BD_I2C_SENSOR.BD_i2c_read(); - float BD_z = NAN; - if (BD_I2C_SENSOR.BD_Check_OddEven(tmp) && (tmp & 0x3FF) < 1020) - BD_z = (tmp & 0x3FF) / 100.0f; - return BD_z; + const uint16_t data = BD_I2C_SENSOR.BD_i2c_read(); + return check(data) ? NAN : interpret(data); } void BDS_Leveling::process() { - //if (config_state == 0) return; - static millis_t next_check_ms = 0; // starting at T=0 - static float z_pose = 0.0f; - const millis_t ms = millis(); - if (ELAPSED(ms, next_check_ms)) { // timed out (or first run) - next_check_ms = ms + (config_state < 0 ? 1000 : 100); // check at 1Hz or 10Hz - - unsigned short tmp = 0; - const float cur_z = planner.get_axis_position_mm(Z_AXIS); //current_position.z - static float old_cur_z = cur_z, - old_buf_z = current_position.z; - + if (config_state == BDS_IDLE && printingIsActive()) return; + static millis_t next_check_ms = 0; // starting at T=0 + static float zpos = 0.0f; + const millis_t ms = millis(); + if (ELAPSED(ms, next_check_ms)) { // timed out (or first run) + next_check_ms = ms + (config_state < BDS_IDLE ? 200 : 50); // check at 5Hz or 20Hz + + uint16_t tmp = 0; + const float cur_z = planner.get_axis_position_mm(Z_AXIS) - pos_zero_offset; + static float old_cur_z = cur_z, old_buf_z = current_position.z; tmp = BD_I2C_SENSOR.BD_i2c_read(); - if (BD_I2C_SENSOR.BD_Check_OddEven(tmp) && (tmp & 0x3FF) < 1020) { - const float z_sensor = (tmp & 0x3FF) / 100.0f; - if (cur_z < 0) config_state = 0; - //float abs_z = current_position.z > cur_z ? (current_position.z - cur_z) : (cur_z - current_position.z); + if (BD_I2C_SENSOR.BD_Check_OddEven(tmp) && good_data(tmp)) { + const float z_sensor = interpret(tmp); #if ENABLED(BABYSTEPPING) - if (cur_z < config_state * 0.1f - && config_state > 0 - && old_cur_z == cur_z - && old_buf_z == current_position.z - && z_sensor < (MAX_BD_HEIGHT) - ) { - babystep.set_mm(Z_AXIS, cur_z - z_sensor); - #if ENABLED(DEBUG_OUT_BD) - SERIAL_ECHOLNPGM("BD:", z_sensor, ", Z:", cur_z, "|", current_position.z); - #endif - } - else { - babystep.set_mm(Z_AXIS, 0); //if (old_cur_z <= cur_z) Z_DIR_WRITE(HIGH); - stepper.apply_directions(); + if (config_state > 0) { + if (cur_z < config_state * 0.1f + && old_cur_z == cur_z + && old_buf_z == current_position.z + && z_sensor < (MAX_BD_HEIGHT) - 0.1f + ) { + babystep.set_mm(Z_AXIS, cur_z - z_sensor); + DEBUG_ECHOLNPGM("BD:", z_sensor, ", Z:", cur_z, "|", current_position.z); + } + else { + babystep.set_mm(Z_AXIS, 0); //if (old_cur_z <= cur_z) Z_DIR_WRITE(HIGH); + //stepper.apply_directions(); // TODO: Remove this line as probably not needed + } } #endif + old_cur_z = cur_z; old_buf_z = current_position.z; endstops.bdp_state_update(z_sensor <= 0.01f); - //endstops.update(); + + #if HAS_STATUS_MESSAGE + static float old_z_sensor = 0; + if (old_z_sensor != z_sensor) { + old_z_sensor = z_sensor; + char tmp_1[32]; + sprintf_P(tmp_1, PSTR("BD:%d.%02dmm"), int(z_sensor), int(z_sensor * 100) % 100); + //SERIAL_ECHOLNPGM("Bed Dis:", z_sensor, "mm"); + ui.set_status(tmp_1, true); + } + #endif } else stepper.apply_directions(); - #if ENABLED(DEBUG_OUT_BD) - SERIAL_ECHOLNPGM("BD:", tmp & 0x3FF, ", Z:", cur_z, "|", current_position.z); - if (BD_I2C_SENSOR.BD_Check_OddEven(tmp) == 0) SERIAL_ECHOLNPGM("errorCRC"); - #endif + DEBUG_ECHOLNPGM("BD:", tmp & 0x3FF, " Z:", cur_z, "|", current_position.z); + if (TERN0(DEBUG_OUT_BD, BD_I2C_SENSOR.BD_Check_OddEven(tmp) == 0)) DEBUG_ECHOLNPGM("CRC error"); - if ((tmp & 0x3FF) > 1020) { + if (!good_data(tmp)) { BD_I2C_SENSOR.BD_i2c_stop(); safe_delay(10); } + // Read version. Usually used as a connection check + if (config_state == BDS_VERSION) { + config_state = BDS_IDLE; + BD_I2C_SENSOR.BD_i2c_write(CMD_READ_VERSION); + safe_delay(100); + char tmp_1[21]; + for (int i = 0; i < 19; i++) { + tmp_1[i] = BD_I2C_SENSOR.BD_i2c_read() & 0xFF; + safe_delay(50); + } + BD_I2C_SENSOR.BD_i2c_write(CMD_END_READ_CALIBRATE_DATA); + SERIAL_ECHOLNPGM("BD Sensor version:", tmp_1); + if (tmp_1[0] != 'V') SERIAL_ECHOLNPGM("Read Error. Check connection and delay."); + safe_delay(50); + } // read raw calibrate data - if (config_state == -5) { + else if (config_state == BDS_READ_RAW) { BD_I2C_SENSOR.BD_i2c_write(CMD_START_READ_CALIBRATE_DATA); - safe_delay(1000); + safe_delay(100); for (int i = 0; i < MAX_BD_HEIGHT * 10; i++) { tmp = BD_I2C_SENSOR.BD_i2c_read(); - SERIAL_ECHOLNPGM("Calibrate data:", i, ",", tmp & 0x3FF, ", check:", BD_I2C_SENSOR.BD_Check_OddEven(tmp)); - safe_delay(500); + SERIAL_ECHOLNPGM("Calibrate data:", i, ",", tmp & 0x3FF); + (void)check(tmp, true, i == 0); + safe_delay(50); } - config_state = 0; BD_I2C_SENSOR.BD_i2c_write(CMD_END_READ_CALIBRATE_DATA); - safe_delay(500); + safe_delay(50); + config_state = BDS_IDLE; } - else if (config_state <= -6) { // Start Calibrate - safe_delay(100); - if (config_state == -6) { - //BD_I2C_SENSOR.BD_i2c_write(1019); // begin calibrate - //delay(1000); - gcode.stepper_inactive_time = SEC_TO_MS(60 * 5); - gcode.process_subcommands_now(F("M17 Z")); - gcode.process_subcommands_now(F("G1 Z0.0")); - z_pose = 0; - safe_delay(1000); + else if (config_state <= BDS_CALIBRATE_START) { // Start Calibrate + safe_delay(10); + if (config_state == BDS_CALIBRATE_START) { + config_state = BDS_CALIBRATING; + REMEMBER(gsit, gcode.stepper_inactive_time, SEC_TO_MS(60 * 5)); + SERIAL_ECHOLNPGM("c_z0:", planner.get_axis_position_mm(Z_AXIS), "-", pos_zero_offset); + + // Move the z axis instead of enabling the Z axis with M17 + // TODO: Use do_blocking_move_to_z for synchronized move. + current_position.z = 0; + sync_plan_position(); + gcode.process_subcommands_now(F("G1Z0.05")); + safe_delay(300); + gcode.process_subcommands_now(F("G1Z0.00")); + safe_delay(300); + current_position.z = 0; + sync_plan_position(); + //safe_delay(1000); + + while ((planner.get_axis_position_mm(Z_AXIS) - pos_zero_offset) > 0.00001f) { + safe_delay(200); + SERIAL_ECHOLNPGM("waiting cur_z:", planner.get_axis_position_mm(Z_AXIS)); + } + zpos = 0.00001f; + safe_delay(100); BD_I2C_SENSOR.BD_i2c_write(CMD_START_CALIBRATE); // Begin calibrate - SERIAL_ECHOLNPGM("Begin calibrate"); - safe_delay(2000); - config_state = -7; + SERIAL_ECHOLNPGM("BD Sensor Calibrating..."); + safe_delay(200); } - else if (planner.get_axis_position_mm(Z_AXIS) < 10.0f) { - if (z_pose >= MAX_BD_HEIGHT) { + else if ((planner.get_axis_position_mm(Z_AXIS) - pos_zero_offset) < 10.0f) { + if (zpos >= MAX_BD_HEIGHT) { + config_state = BDS_IDLE; BD_I2C_SENSOR.BD_i2c_write(CMD_END_CALIBRATE); // End calibrate - SERIAL_ECHOLNPGM("End calibrate data"); - z_pose = 7; - config_state = 0; - safe_delay(1000); + SERIAL_ECHOLNPGM("BD Sensor calibrated."); + zpos = 7.0f; + safe_delay(500); } else { - float tmp_k = 0; - char tmp_1[30]; - sprintf_P(tmp_1, PSTR("G1 Z%d.%d"), int(z_pose), int(int(z_pose * 10) % 10)); + char tmp_1[32]; + // TODO: Use prepare_internal_move_to_destination to guarantee machine space + sprintf_P(tmp_1, PSTR("G1Z%d.%d"), int(zpos), int(zpos * 10) % 10); gcode.process_subcommands_now(tmp_1); - - SERIAL_ECHO(tmp_1); - SERIAL_ECHOLNPGM(" ,Z:", current_position.z); - - while (tmp_k < (z_pose - 0.1f)) { - tmp_k = planner.get_axis_position_mm(Z_AXIS); - safe_delay(1); + SERIAL_ECHO(tmp_1); SERIAL_ECHOLNPGM(", Z:", current_position.z); + for (float tmp_k = 0; abs(zpos - tmp_k) > 0.004f;) { + tmp_k = planner.get_axis_position_mm(Z_AXIS) - pos_zero_offset; + safe_delay(10); } - safe_delay(800); - tmp = (z_pose + 0.0001f) * 10; + safe_delay(zpos <= 0.4f ? 600 : 100); + tmp = uint16_t((zpos + 0.00001f) * 10); BD_I2C_SENSOR.BD_i2c_write(tmp); - SERIAL_ECHOLNPGM("w:", tmp, ",Zpose:", z_pose); - z_pose += 0.1001f; - //queue.enqueue_now_P(PSTR("G90")); + SERIAL_ECHOLNPGM("w:", tmp, ", Z:", zpos); + zpos += 0.1001f; } } } diff --git a/Marlin/src/feature/bedlevel/bdl/bdl.h b/Marlin/src/feature/bedlevel/bdl/bdl.h index 6307b1ab28f8..b3037bc1c277 100644 --- a/Marlin/src/feature/bedlevel/bdl/bdl.h +++ b/Marlin/src/feature/bedlevel/bdl/bdl.h @@ -23,14 +23,26 @@ #include +enum BDS_State : int8_t { + BDS_IDLE, + BDS_VERSION = -1, + BDS_READ_MM = -2, + BDS_HOMING_Z = -3, + BDS_READ_RAW = -5, + BDS_CALIBRATE_START = -6, + BDS_CALIBRATING = -7 +}; + class BDS_Leveling { public: static int8_t config_state; - static uint8_t homing; - static void echo_name(); + static float pos_zero_offset; static void init(uint8_t _sda, uint8_t _scl, uint16_t delay_s); static void process(); static float read(); + static float interpret(const uint16_t data); + static float good_data(const uint16_t data) { return (data & 0x3FF) < 1016; } + static bool check(const uint16_t data, const bool raw_data=false, const bool hicheck=false); }; extern BDS_Leveling bdl; diff --git a/Marlin/src/gcode/bedlevel/abl/G29.cpp b/Marlin/src/gcode/bedlevel/abl/G29.cpp index 4b2d21bc81b4..5632c6e46721 100644 --- a/Marlin/src/gcode/bedlevel/abl/G29.cpp +++ b/Marlin/src/gcode/bedlevel/abl/G29.cpp @@ -42,6 +42,9 @@ #if ABL_PLANAR #include "../../../libs/vector_3.h" #endif +#if ENABLED(BD_SENSOR_PROBE_NO_STOP) + #include "../../../feature/bedlevel/bdl/bdl.h" +#endif #include "../../../lcd/marlinui.h" #if ENABLED(EXTENSIBLE_UI) @@ -693,7 +696,66 @@ G29_TYPE GcodeSuite::G29() { if (abl.verbose_level) SERIAL_ECHOLNPGM("Probing mesh point ", pt_index, "/", abl.abl_points, "."); TERN_(HAS_STATUS_MESSAGE, ui.status_printf(0, F(S_FMT " %i/%i"), GET_TEXT(MSG_PROBING_POINT), int(pt_index), int(abl.abl_points))); - abl.measured_z = faux ? 0.001f * random(-100, 101) : probe.probe_at_point(abl.probePos, raise_after, abl.verbose_level); + #if ENABLED(BD_SENSOR_PROBE_NO_STOP) + if (PR_INNER_VAR == inStart) { + char tmp_1[32]; + + // move to the start point of new line + abl.measured_z = faux ? 0.001f * random(-100, 101) : probe.probe_at_point(abl.probePos, raise_after, abl.verbose_level); + // Go to the end of the row/column ... and back up by one + // TODO: Why not just use... PR_INNER_VAR = inStop - inInc + for (PR_INNER_VAR = inStart; PR_INNER_VAR != inStop; PR_INNER_VAR += inInc); + PR_INNER_VAR -= inInc; + + // Get the coordinate of the resulting grid point + abl.probePos = abl.probe_position_lf + abl.gridSpacing * abl.meshCount.asFloat(); + + // Coordinate that puts the probe at the grid point + abl.probePos -= probe.offset_xy; + + // Put a G1 move into the buffer + // TODO: Instead of G1, we can just add the move directly to the planner... + // { + // destination = current_position; destination = abl.probePos; + // REMEMBER(fr, feedrate_mm_s, XY_PROBE_FEEDRATE_MM_S); + // prepare_line_to_destination(); + // } + sprintf_P(tmp_1, PSTR("G1X%d.%d Y%d.%d F%d"), + int(abl.probePos.x), int(abl.probePos.x * 10) % 10, + int(abl.probePos.y), int(abl.probePos.y * 10) % 10, + XY_PROBE_FEEDRATE + ); + gcode.process_subcommands_now(tmp_1); + + if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("destX: ", abl.probePos.x, " Y:", abl.probePos.y); + + // Reset the inner counter back to the start + PR_INNER_VAR = inStart; + + // Get the coordinate of the start of the row/column + abl.probePos = abl.probe_position_lf + abl.gridSpacing * abl.meshCount.asFloat(); + } + + // Wait around until the real axis position reaches the comparison point + // TODO: Use NEAR() because float is imprecise + constexpr AxisEnum axis = TERN(PROBE_Y_FIRST, Y_AXIS, X_AXIS); + const float cmp = abl.probePos[axis] - probe.offset_xy[axis]; + float pos; + for (;;) { + pos = planner.get_axis_position_mm(axis); + if (inInc > 0 ? (pos >= cmp) : (pos <= cmp)) break; + idle_no_sleep(); + } + //if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM_P(axis == Y_AXIS ? PSTR("Y=") : PSTR("X=", pos); + + abl.measured_z = current_position.z - bdl.read(); + if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("x_cur ", planner.get_axis_position_mm(X_AXIS), " z ", abl.measured_z); + + #else // !BD_SENSOR_PROBE_NO_STOP + + abl.measured_z = faux ? 0.001f * random(-100, 101) : probe.probe_at_point(abl.probePos, raise_after, abl.verbose_level); + + #endif if (isnan(abl.measured_z)) { set_bed_leveling_enabled(abl.reenable); diff --git a/Marlin/src/gcode/calibrate/G28.cpp b/Marlin/src/gcode/calibrate/G28.cpp index cb4f80618de5..6fb062c17003 100644 --- a/Marlin/src/gcode/calibrate/G28.cpp +++ b/Marlin/src/gcode/calibrate/G28.cpp @@ -36,10 +36,6 @@ #include "../../feature/bedlevel/bedlevel.h" #endif -#if ENABLED(BD_SENSOR) - #include "../../feature/bedlevel/bdl/bdl.h" -#endif - #if ENABLED(SENSORLESS_HOMING) #include "../../feature/tmc_util.h" #endif @@ -229,8 +225,6 @@ void GcodeSuite::G28() { return; } - TERN_(BD_SENSOR, bdl.config_state = 0); - #if ENABLED(FULL_REPORT_TO_HOST_FEATURE) const M_StateEnum old_grblstate = M_State_grbl; set_and_report_grblstate(M_HOMING); diff --git a/Marlin/src/gcode/config/M43.cpp b/Marlin/src/gcode/config/M43.cpp index 7657aadc6d85..5ea89b713638 100644 --- a/Marlin/src/gcode/config/M43.cpp +++ b/Marlin/src/gcode/config/M43.cpp @@ -139,17 +139,15 @@ inline void servo_probe_test() { bool deploy_state = false, stow_state; #if ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) - constexpr bool probe_hit_state = Z_MIN_ENDSTOP_HIT_STATE; #define PROBE_TEST_PIN Z_MIN_PIN #define _PROBE_PREF "Z_MIN" #else - constexpr bool probe_hit_state = Z_MIN_PROBE_ENDSTOP_HIT_STATE; #define PROBE_TEST_PIN Z_MIN_PROBE_PIN #define _PROBE_PREF "Z_MIN_PROBE" #endif SERIAL_ECHOLNPGM(". Probe " _PROBE_PREF "_PIN: ", PROBE_TEST_PIN); - serial_ternary(F(". " _PROBE_PREF "_ENDSTOP_HIT_STATE: "), probe_hit_state, F("HIGH"), F("LOW")); + serial_ternary(F(". " _PROBE_PREF "_ENDSTOP_HIT_STATE: "), PROBE_HIT_STATE, F("HIGH"), F("LOW")); SERIAL_EOL(); SET_INPUT_PULLUP(PROBE_TEST_PIN); @@ -166,11 +164,11 @@ inline void servo_probe_test() { SERIAL_ECHOLNPGM(". Check for BLTOUCH"); bltouch._reset(); bltouch._stow(); - if (READ(PROBE_TEST_PIN) != probe_hit_state) { + if (!PROBE_TRIGGERED()) { bltouch._set_SW_mode(); - if (READ(PROBE_TEST_PIN) == probe_hit_state) { + if (PROBE_TRIGGERED()) { bltouch._deploy(); - if (READ(PROBE_TEST_PIN) != probe_hit_state) { + if (!PROBE_TRIGGERED()) { bltouch._stow(); SERIAL_ECHOLNPGM("= BLTouch Classic 1.2, 1.3, Smart 1.0, 2.0, 2.2, 3.0, 3.1 detected."); // Check for a 3.1 by letting the user trigger it, later @@ -198,7 +196,7 @@ inline void servo_probe_test() { stow_state = READ(PROBE_TEST_PIN); } - if (probe_hit_state == deploy_state) SERIAL_ECHOLNPGM("WARNING: " _PROBE_PREF "_ENDSTOP_HIT_STATE is probably wrong."); + if (PROBE_HIT_STATE == deploy_state) SERIAL_ECHOLNPGM("WARNING: " _PROBE_PREF "_ENDSTOP_HIT_STATE is probably wrong."); if (deploy_state != stow_state) { SERIAL_ECHOLNPGM("= Mechanical Switch detected"); diff --git a/Marlin/src/gcode/gcode.h b/Marlin/src/gcode/gcode.h index 73729491adab..4bd0ec2fec83 100644 --- a/Marlin/src/gcode/gcode.h +++ b/Marlin/src/gcode/gcode.h @@ -720,7 +720,6 @@ class GcodeSuite { #if ENABLED(BD_SENSOR) static void M102(); - static void M102_report(const bool forReplay=true); #endif #if HAS_HOTEND diff --git a/Marlin/src/gcode/probe/M102.cpp b/Marlin/src/gcode/probe/M102.cpp index b70c9aed1836..f24a723ed791 100644 --- a/Marlin/src/gcode/probe/M102.cpp +++ b/Marlin/src/gcode/probe/M102.cpp @@ -30,6 +30,7 @@ #include "../gcode.h" #include "../../feature/bedlevel/bdl/bdl.h" +#include "../../MarlinCore.h" // for printingIsActive /** * M102: Configure the Bed Distance Sensor @@ -38,20 +39,25 @@ * M102 S0 : Disable adjustable Z height. * * Negative S values are commands: - * M102 S-1 : Read sensor information + * M102 S-1 : Read BDsensor version + * M102 S-2 : Read BDsensor distance value * M102 S-5 : Read raw Calibration data * M102 S-6 : Start Calibration */ void GcodeSuite::M102() { - if (parser.seenval('S')) - bdl.config_state = parser.value_int(); - else - M102_report(); -} - -void GcodeSuite::M102_report(const bool forReplay/*=true*/) { - report_heading(forReplay, F("Bed Distance Sensor")); - SERIAL_ECHOLNPGM(" M102 S", bdl.config_state); + if (bdl.config_state < BDS_IDLE) { + SERIAL_ECHOLNPGM("BDsensor is busy:", bdl.config_state); + return; + } + if (parser.seenval('S')) { + const int8_t command = parser.value_int(); + if (command == BDS_READ_MM) + SERIAL_ECHOLNPGM("Bed Distance:", bdl.read(), "mm"); + else if ((command < BDS_IDLE) && printingIsActive()) + return; + else + bdl.config_state = command; + } } #endif // BD_SENSOR diff --git a/Marlin/src/lcd/extui/nextion/nextion_tft.cpp b/Marlin/src/lcd/extui/nextion/nextion_tft.cpp index 0327a2f137c8..87a6544e5ef5 100644 --- a/Marlin/src/lcd/extui/nextion/nextion_tft.cpp +++ b/Marlin/src/lcd/extui/nextion/nextion_tft.cpp @@ -451,7 +451,7 @@ void NextionTFT::panelInfo(uint8_t req) { SEND_VALasTXT("z2", READ(Z2_MAX_PIN) == Z2_MAX_ENDSTOP_HIT_STATE ? "triggered" : "open"); #endif #if HAS_BED_PROBE - //SEND_VALasTXT("bltouch", READ(Z_MIN_PROBE_PIN) == Z_MIN_PROBE_ENDSTOP_HIT_STATE ? "triggered" : "open"); + //SEND_VALasTXT("bltouch", PROBE_TRIGGERED() ? "triggered" : "open"); #else SEND_NA("bltouch"); #endif diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index 63689bf7ca03..3c1fcc72a9a7 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -65,7 +65,11 @@ Endstops::endstop_mask_t Endstops::live_state = 0; #if ENABLED(BD_SENSOR) bool Endstops::bdp_state; // = false - #define READ_ENDSTOP(P) ((P == Z_MIN_PIN) ? bdp_state : READ(P)) + #if HOMING_Z_WITH_PROBE + #define READ_ENDSTOP(P) ((P == TERN(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, Z_MIN_PIN, Z_MIN_PROBE_PIN)) ? bdp_state : READ(P)) + #else + #define READ_ENDSTOP(P) READ(P) + #endif #else #define READ_ENDSTOP(P) READ(P) #endif diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index d7b6d76fae8d..dd761a56bbb0 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -73,6 +73,11 @@ #define DEBUG_OUT ENABLED(DEBUG_LEVELING_FEATURE) #include "../core/debug_out.h" + +#if ENABLED(BD_SENSOR) + #include "../feature/bedlevel/bdl/bdl.h" +#endif + // Relative Mode. Enable with G91, disable with G90. bool relative_mode; // = false; @@ -2131,6 +2136,7 @@ void prepare_line_to_destination() { if (axis == Z_AXIS) { if (TERN0(BLTOUCH, bltouch.deploy())) return; // BLTouch was deployed above, but get the alarm state. if (TERN0(PROBE_TARE, probe.tare())) return; + TERN_(BD_SENSOR, bdl.config_state = BDS_HOMING_Z); } #endif @@ -2381,6 +2387,10 @@ void prepare_line_to_destination() { #endif + #if ALL(BD_SENSOR, HOMING_Z_WITH_PROBE) + if (axis == Z_AXIS) bdl.config_state = BDS_IDLE; + #endif + // Put away the Z probe if (TERN0(HOMING_Z_WITH_PROBE, axis == Z_AXIS && probe.stow())) return; diff --git a/Marlin/src/module/probe.h b/Marlin/src/module/probe.h index 05a97d947024..028a7589cc12 100644 --- a/Marlin/src/module/probe.h +++ b/Marlin/src/module/probe.h @@ -45,11 +45,19 @@ }; #endif +#if ENABLED(BD_SENSOR) + #define PROBE_READ() bdp_state +#elif USE_Z_MIN_PROBE + #define PROBE_READ() READ(Z_MIN_PROBE_PIN) +#else + #define PROBE_READ() READ(Z_MIN_PIN) +#endif #if USE_Z_MIN_PROBE - #define PROBE_TRIGGERED() (READ(Z_MIN_PROBE_PIN) == Z_MIN_PROBE_ENDSTOP_HIT_STATE) + #define PROBE_HIT_STATE Z_MIN_PROBE_ENDSTOP_HIT_STATE #else - #define PROBE_TRIGGERED() (READ(Z_MIN_PIN) == Z_MIN_ENDSTOP_HIT_STATE) + #define PROBE_HIT_STATE Z_MIN_ENDSTOP_HIT_STATE #endif +#define PROBE_TRIGGERED() (PROBE_READ() == PROBE_HIT_STATE) // In BLTOUCH HS mode, the probe travels in a deployed state. #define Z_TWEEN_SAFE_CLEARANCE SUM_TERN(BLTOUCH, Z_CLEARANCE_BETWEEN_PROBES, bltouch.z_extra_clearance()) diff --git a/Marlin/src/module/stepper/indirection.h b/Marlin/src/module/stepper/indirection.h index 99a677c81fe1..d48ff8ae93b1 100644 --- a/Marlin/src/module/stepper/indirection.h +++ b/Marlin/src/module/stepper/indirection.h @@ -997,7 +997,7 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #if HAS_Z_AXIS #define ENABLE_AXIS_Z() if (SHOULD_ENABLE(z)) { ENABLE_STEPPER_Z(); ENABLE_STEPPER_Z2(); ENABLE_STEPPER_Z3(); ENABLE_STEPPER_Z4(); AFTER_CHANGE(z, true); } - #define DISABLE_AXIS_Z() if (SHOULD_DISABLE(z)) { DISABLE_STEPPER_Z(); DISABLE_STEPPER_Z2(); DISABLE_STEPPER_Z3(); DISABLE_STEPPER_Z4(); AFTER_CHANGE(z, false); set_axis_untrusted(Z_AXIS); Z_RESET(); TERN_(BD_SENSOR, bdl.config_state = 0); } + #define DISABLE_AXIS_Z() if (SHOULD_DISABLE(z)) { DISABLE_STEPPER_Z(); DISABLE_STEPPER_Z2(); DISABLE_STEPPER_Z3(); DISABLE_STEPPER_Z4(); AFTER_CHANGE(z, false); set_axis_untrusted(Z_AXIS); Z_RESET(); TERN_(BD_SENSOR, bdl.config_state = BDS_IDLE); } #else #define ENABLE_AXIS_Z() NOOP #define DISABLE_AXIS_Z() NOOP From d79b42c710cadcc7dede4e806e94f16c6451d3d7 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 19 Jun 2023 00:24:00 +0000 Subject: [PATCH 306/427] [cron] Bump distribution date (2023-06-19) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 2b351430468a..55922c87dc24 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-18" +//#define STRING_DISTRIBUTION_DATE "2023-06-19" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index b9c8351e23eb..b915603ba1a9 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-18" + #define STRING_DISTRIBUTION_DATE "2023-06-19" #endif /** From 733209f9a2cfa347e072738c76860c08a4e74500 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Sun, 18 Jun 2023 22:12:50 -0700 Subject: [PATCH 307/427] =?UTF-8?q?=F0=9F=94=A7=20MPC=20adjustments=20(#25?= =?UTF-8?q?986)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration.h | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index b905b246886e..b573d2d9ec79 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -686,13 +686,13 @@ /** * Model Predictive Control for hotend * - * Use a physical model of the hotend to control temperature. When configured correctly - * this gives better responsiveness and stability than PID and it also removes the need - * for PID_EXTRUSION_SCALING and PID_FAN_SCALING. Use M306 T to autotune the model. + * Use a physical model of the hotend to control temperature. When configured correctly this gives + * better responsiveness and stability than PID and removes the need for PID_EXTRUSION_SCALING + * and PID_FAN_SCALING. Enable MPC_AUTOTUNE and use M306 T to autotune the model. * @section mpctemp */ #if ENABLED(MPCTEMP) - //#define MPC_AUTOTUNE // Include a method to do MPC auto-tuning (~6.3K bytes of flash) + #define MPC_AUTOTUNE // Include a method to do MPC auto-tuning (~6.3K bytes of flash) //#define MPC_EDIT_MENU // Add MPC editing to the "Advanced Settings" menu. (~1.3K bytes of flash) //#define MPC_AUTOTUNE_MENU // Add MPC auto-tuning to the "Advanced Settings" menu. (~350 bytes of flash) @@ -715,8 +715,12 @@ //#define MPC_FAN_0_ACTIVE_HOTEND #endif + // Filament Heat Capacity (joules/kelvin/mm) + // Set at runtime with M306 H #define FILAMENT_HEAT_CAPACITY_PERMM { 5.6e-3f } // 0.0056 J/K/mm for 1.75mm PLA (0.0149 J/K/mm for 2.85mm PLA). - //#define FILAMENT_HEAT_CAPACITY_PERMM { 3.6e-3f } // 0.0036 J/K/mm for 1.75mm PETG (0.0094 J/K/mm for 2.85mm PETG). + // 0.0036 J/K/mm for 1.75mm PETG (0.0094 J/K/mm for 2.85mm PETG). + // 0.00515 J/K/mm for 1.75mm ABS (0.0137 J/K/mm for 2.85mm ABS). + // 0.00522 J/K/mm for 1.75mm Nylon (0.0138 J/K/mm for 2.85mm Nylon). // Advanced options #define MPC_SMOOTHING_FACTOR 0.5f // (0.0...1.0) Noisy temperature sensors may need a lower value for stabilization. From 91401d7e5f36f1b2d27bfbeef96ae54953c3d3ae Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 19 Jun 2023 15:05:51 -0500 Subject: [PATCH 308/427] =?UTF-8?q?=F0=9F=94=A7=20Move=20non-DUE=20conditi?= =?UTF-8?q?ons?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/inc/SanityCheck.h | 7 +++++++ Marlin/src/pins/sam/pins_ALLIGATOR_R2.h | 1 - 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 1ed6f97f985e..049a38a6a4bd 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -127,6 +127,13 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #undef _ISMAX_1 #undef _ISSNS_1 +/** + * RADDS is forbidden for non-DUE boards, for now. + */ +#if ENABLED(RADDS_DISPLAY) && !defined(__SAM3X8E__) + #error "RADDS_DISPLAY is currently only incompatible with DUE boards." +#endif + /** * Heated Bed requirements */ diff --git a/Marlin/src/pins/sam/pins_ALLIGATOR_R2.h b/Marlin/src/pins/sam/pins_ALLIGATOR_R2.h index 87a1260c4092..312745f11d10 100644 --- a/Marlin/src/pins/sam/pins_ALLIGATOR_R2.h +++ b/Marlin/src/pins/sam/pins_ALLIGATOR_R2.h @@ -153,7 +153,6 @@ #define LCD_PINS_EN 15 #define LCD_PINS_D4 19 #define BEEPER_PIN 64 - #undef UI_VOLTAGE_LEVEL #define UI_VOLTAGE_LEVEL 1 #endif From 2dc76689ea186a6c6334a728253ede95c6c6203e Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Tue, 20 Jun 2023 00:21:56 +0000 Subject: [PATCH 309/427] [cron] Bump distribution date (2023-06-20) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 55922c87dc24..c56209a2dc59 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-19" +//#define STRING_DISTRIBUTION_DATE "2023-06-20" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index b915603ba1a9..76f1400e82eb 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-19" + #define STRING_DISTRIBUTION_DATE "2023-06-20" #endif /** From 8c9172cf5d21fd57aed16edbe825a872ae064ad0 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 22 Jun 2023 02:54:21 -0500 Subject: [PATCH 310/427] =?UTF-8?q?=F0=9F=8D=BB=20Fixed-Time=20Motion=20in?= =?UTF-8?q?tegration=20(#25719)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/types.h | 105 ++- Marlin/src/feature/mixing.h | 12 +- Marlin/src/gcode/feature/ft_motion/M493.cpp | 61 +- Marlin/src/inc/SanityCheck.h | 8 +- Marlin/src/module/ft_motion.cpp | 715 ++++++++------------ Marlin/src/module/ft_motion.h | 84 +-- Marlin/src/module/ft_types.h | 23 +- Marlin/src/module/motion.cpp | 19 + Marlin/src/module/stepper.cpp | 165 +++-- Marlin/src/module/stepper/indirection.h | 6 + buildroot/tests/STM32F103RC_btt | 2 +- 11 files changed, 602 insertions(+), 598 deletions(-) diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index 3168322860ae..6c0983694ce6 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -44,17 +44,19 @@ template struct IF { typedef L type; }; #define NUM_AXIS_ARRAY_1(V) { NUM_AXIS_LIST_1(V) } #define NUM_AXIS_ARGS(T) NUM_AXIS_LIST(T x, T y, T z, T i, T j, T k, T u, T v, T w) #define NUM_AXIS_ELEM(O) NUM_AXIS_LIST(O.x, O.y, O.z, O.i, O.j, O.k, O.u, O.v, O.w) -#define NUM_AXIS_DEFS(T,V) NUM_AXIS_LIST(T x=V, T y=V, T z=V, T i=V, T j=V, T k=V, T u=V, T v=V, T w=V) +#define NUM_AXIS_DECL(T,V) NUM_AXIS_LIST(T x=V, T y=V, T z=V, T i=V, T j=V, T k=V, T u=V, T v=V, T w=V) #define MAIN_AXIS_NAMES NUM_AXIS_LIST(X, Y, Z, I, J, K, U, V, W) #define STR_AXES_MAIN NUM_AXIS_GANG("X", "Y", "Z", STR_I, STR_J, STR_K, STR_U, STR_V, STR_W) #if NUM_AXES #define NUM_AXES_SEP , #define MAIN_AXIS_MAP(F) MAP(F, MAIN_AXIS_NAMES) + #define OPTARGS_NUM(T) , NUM_AXIS_ARGS(T) #define OPTARGS_LOGICAL(T) , LOGICAL_AXIS_ARGS(T) #else #define NUM_AXES_SEP #define MAIN_AXIS_MAP(F) + #define OPTARGS_NUM(T) #define OPTARGS_LOGICAL(T) #endif @@ -531,8 +533,8 @@ template struct XYZval { union { #if NUM_AXES - struct { T NUM_AXIS_ARGS(); }; - struct { T NUM_AXIS_LIST(a, b, c, _i, _j, _k, _u, _v, _w); }; + struct { NUM_AXIS_CODE(T x, T y, T z, T i, T j, T k, T u, T v, T w); }; + struct { NUM_AXIS_CODE(T a, T b, T c, T _i, T _j, T _k, T _u, T _v, T _w); }; #endif T pos[NUM_AXES]; }; @@ -820,6 +822,101 @@ struct XYZEval { #include // for memset +template +struct XYZarray { + typedef T el[SIZE]; + union { + el data[LOGICAL_AXES]; + struct { NUM_AXIS_CODE(T x, T y, T z, T i, T j, T k, T u, T v, T w); }; + struct { NUM_AXIS_CODE(T a, T b, T c, T _i, T _j, T _k, T _u, T _v, T _w); }; + }; + FI void reset() { ZERO(data); } + + FI void set(const int n, const XYval p) { NUM_AXIS_CODE(x[n]=p.x, y[n]=p.y,,,,,,,); } + FI void set(const int n, const XYZval p) { NUM_AXIS_CODE(x[n]=p.x, y[n]=p.y, z[n]=p.z, i[n]=p.i, j[n]=p.j, k[n]=p.k, u[n]=p.u, v[n]=p.v, w[n]=p.w ); } + FI void set(const int n, const XYZEval p) { NUM_AXIS_CODE(x[n]=p.x, y[n]=p.y, z[n]=p.z, i[n]=p.i, j[n]=p.j, k[n]=p.k, u[n]=p.u, v[n]=p.v, w[n]=p.w ); } + + // Setter for all individual args + FI void set(const int n OPTARGS_NUM(const T)) { NUM_AXIS_CODE(a[n] = x, b[n] = y, c[n] = z, _i[n] = i, _j[n] = j, _k[n] = k, _u[n] = u, _v[n] = v, _w[n] = w); } + + // Setters with fewer elements leave the rest untouched + #if HAS_Y_AXIS + FI void set(const int n, const T px) { x[n] = px; } + #endif + #if HAS_Z_AXIS + FI void set(const int n, const T px, const T py) { x[n] = px; y[n] = py; } + #endif + #if HAS_I_AXIS + FI void set(const int n, const T px, const T py, const T pz) { x[n] = px; y[n] = py; z[n] = pz; } + #endif + #if HAS_J_AXIS + FI void set(const int n, const T px, const T py, const T pz, const T pi) { x[n] = px; y[n] = py; z[n] = pz; i[n] = pi; } + #endif + #if HAS_K_AXIS + FI void set(const int n, const T px, const T py, const T pz, const T pi, const T pj) { x[n] = px; y[n] = py; z[n] = pz; i[n] = pi; j[n] = pj; } + #endif + #if HAS_U_AXIS + FI void set(const int n, const T px, const T py, const T pz, const T pi, const T pj, const T pk) { x[n] = px; y[n] = py; z[n] = pz; i[n] = pi; j[n] = pj; k[n] = pk; } + #endif + #if HAS_V_AXIS + FI void set(const int n, const T px, const T py, const T pz, const T pi, const T pj, const T pk, const T pu) { x[n] = px; y[n] = py; z[n] = pz; i[n] = pi; j[n] = pj; k[n] = pk; u[n] = pu; } + #endif + #if HAS_W_AXIS + FI void set(const int n, const T px, const T py, const T pz, const T pi, const T pj, const T pk, const T pu, const T pv) { x[n] = px; y[n] = py; z[n] = pz; i[n] = pi; j[n] = pj; k[n] = pk; u[n] = pu; v[n] = pv; } + #endif + + FI XYZval operator[](const int n) const { return XYZval(NUM_AXIS_ARRAY(x[n], y[n], z[n], i[n], j[n], k[n], u[n], v[n], w[n])); } +}; + +template +struct XYZEarray { + typedef T el[SIZE]; + union { + el data[LOGICAL_AXES]; + struct { el LOGICAL_AXIS_ARGS(); }; + struct { el LOGICAL_AXIS_LIST(_e, a, b, c, _i, _j, _k, _u, _v, _w); }; + }; + FI void reset() { ZERO(data); } + + FI void set(const int n, const XYval p) { NUM_AXIS_CODE(x[n]=p.x, y[n]=p.y,,,,,,,); } + FI void set(const int n, const XYZval p) { NUM_AXIS_CODE(x[n]=p.x, y[n]=p.y, z[n]=p.z, i[n]=p.i, j[n]=p.j, k[n]=p.k, u[n]=p.u, v[n]=p.v, w[n]=p.w ); } + FI void set(const int n, const XYZEval p) { LOGICAL_AXIS_CODE(e[n]=p.e, x[n]=p.x, y[n]=p.y, z[n]=p.z, i[n]=p.i, j[n]=p.j, k[n]=p.k, u[n]=p.u, v[n]=p.v, w[n]=p.w ); } + + // Setter for all individual args + FI void set(const int n OPTARGS_NUM(const T)) { NUM_AXIS_CODE(a[n] = x, b[n] = y, c[n] = z, _i[n] = i, _j[n] = j, _k[n] = k, _u[n] = u, _v[n] = v, _w[n] = w); } + #if LOGICAL_AXES > NUM_AXES + FI void set(const int n, LOGICAL_AXIS_ARGS(const T)) { LOGICAL_AXIS_CODE(_e[n] = e, a[n] = x, b[n] = y, c[n] = z, _i[n] = i, _j[n] = j, _k[n] = k, _u[n] = u, _v[n] = v, _w[n] = w); } + #endif + + // Setters with fewer elements leave the rest untouched + #if HAS_Y_AXIS + FI void set(const int n, const T px) { x[n] = px; } + #endif + #if HAS_Z_AXIS + FI void set(const int n, const T px, const T py) { x[n] = px; y[n] = py; } + #endif + #if HAS_I_AXIS + FI void set(const int n, const T px, const T py, const T pz) { x[n] = px; y[n] = py; z[n] = pz; } + #endif + #if HAS_J_AXIS + FI void set(const int n, const T px, const T py, const T pz, const T pi) { x[n] = px; y[n] = py; z[n] = pz; i[n] = pi; } + #endif + #if HAS_K_AXIS + FI void set(const int n, const T px, const T py, const T pz, const T pi, const T pj) { x[n] = px; y[n] = py; z[n] = pz; i[n] = pi; j[n] = pj; } + #endif + #if HAS_U_AXIS + FI void set(const int n, const T px, const T py, const T pz, const T pi, const T pj, const T pk) { x[n] = px; y[n] = py; z[n] = pz; i[n] = pi; j[n] = pj; k[n] = pk; } + #endif + #if HAS_V_AXIS + FI void set(const int n, const T px, const T py, const T pz, const T pi, const T pj, const T pk, const T pu) { x[n] = px; y[n] = py; z[n] = pz; i[n] = pi; j[n] = pj; k[n] = pk; u[n] = pu; } + #endif + #if HAS_W_AXIS + FI void set(const int n, const T px, const T py, const T pz, const T pi, const T pj, const T pk, const T pu, const T pv) { x[n] = px; y[n] = py; z[n] = pz; i[n] = pi; j[n] = pj; k[n] = pk; u[n] = pu; v[n] = pv; } + #endif + + FI XYZEval operator[](const int n) const { return XYZval(LOGICAL_AXIS_ARRAY(e[n], x[n], y[n], z[n], i[n], j[n], k[n], u[n], v[n], w[n])); } +}; + class AxisBits; class AxisBits { @@ -972,6 +1069,8 @@ class AxisBits { #undef MSET FI bool toggle(const AxisEnum n) { TBI(bits, n); return TEST(bits, n); } + FI void bset(const AxisEnum n) { SBI(bits, n); } + FI void bclr(const AxisEnum n) { CBI(bits, n); } // Accessor via an AxisEnum (or any integer) [index] FI bool operator[](const int n) const { return TEST(bits, n); } diff --git a/Marlin/src/feature/mixing.h b/Marlin/src/feature/mixing.h index c5c60a5e9f68..4340a510a51a 100644 --- a/Marlin/src/feature/mixing.h +++ b/Marlin/src/feature/mixing.h @@ -108,7 +108,7 @@ class Mixer { } // Used when dealing with blocks - FORCE_INLINE static void populate_block(mixer_comp_t b_color[MIXING_STEPPERS]) { + FORCE_INLINE static void populate_block(mixer_comp_t (&b_color)[MIXING_STEPPERS]) { #if ENABLED(GRADIENT_MIX) if (gradient.enabled) { MIXER_STEPPER_LOOP(i) b_color[i] = gradient.color[i]; @@ -118,7 +118,7 @@ class Mixer { MIXER_STEPPER_LOOP(i) b_color[i] = color[selected_vtool][i]; } - FORCE_INLINE static void stepper_setup(mixer_comp_t b_color[MIXING_STEPPERS]) { + FORCE_INLINE static void stepper_setup(mixer_comp_t (&b_color)[MIXING_STEPPERS]) { MIXER_STEPPER_LOOP(i) s_color[i] = b_color[i]; } @@ -231,13 +231,7 @@ class Mixer { for (;;) { if (--runner < 0) runner = MIXING_STEPPERS - 1; accu[runner] += s_color[runner]; - if ( - #ifdef MIXER_ACCU_SIGNED - accu[runner] < 0 - #else - accu[runner] & COLOR_A_MASK - #endif - ) { + if (TERN(MIXER_ACCU_SIGNED, accu[runner] < 0, accu[runner] & COLOR_A_MASK)) { accu[runner] &= COLOR_MASK; return runner; } diff --git a/Marlin/src/gcode/feature/ft_motion/M493.cpp b/Marlin/src/gcode/feature/ft_motion/M493.cpp index f34c6c1bd7f3..413c63dfca08 100644 --- a/Marlin/src/gcode/feature/ft_motion/M493.cpp +++ b/Marlin/src/gcode/feature/ft_motion/M493.cpp @@ -153,49 +153,36 @@ void GcodeSuite::M493_report(const bool forReplay/*=true*/) { void GcodeSuite::M493() { struct { bool update_n:1, update_a:1, reset_ft:1, report_h:1; } flag = { false }; - if (!parser.seen_any()) flag.report_h = true; + if (!parser.seen_any()) + flag.report_h = true; + else + planner.synchronize(); // Parse 'S' mode parameter. if (parser.seenval('S')) { const ftMotionMode_t oldmm = fxdTiCtrl.cfg.mode, newmm = (ftMotionMode_t)parser.value_byte(); - switch (newmm) { - #if HAS_X_AXIS - case ftMotionMode_ZV: - case ftMotionMode_ZVD: - case ftMotionMode_2HEI: - case ftMotionMode_3HEI: - case ftMotionMode_MZV: - //case ftMotionMode_ULENDO_FBS: - //case ftMotionMode_DISCTF: - #endif - case ftMotionMode_DISABLED: - case ftMotionMode_ENABLED: - fxdTiCtrl.cfg.mode = newmm; - flag.report_h = true; - break; - default: - SERIAL_ECHOLNPGM("?Invalid control mode [M] value."); - return; - } - if (fxdTiCtrl.cfg.mode != oldmm) switch (newmm) { - default: break; - #if HAS_X_AXIS - //case ftMotionMode_ULENDO_FBS: - //case ftMotionMode_DISCTF: - // break; - case ftMotionMode_ZV: - case ftMotionMode_ZVD: - case ftMotionMode_EI: - case ftMotionMode_2HEI: - case ftMotionMode_3HEI: - case ftMotionMode_MZV: - flag.update_n = flag.update_a = true; - #endif - case ftMotionMode_ENABLED: - flag.reset_ft = true; - break; + if (newmm != oldmm) { + switch (newmm) { + default: SERIAL_ECHOLNPGM("?Invalid control mode [S] value."); return; + #if HAS_X_AXIS + case ftMotionMode_ZV: + case ftMotionMode_ZVD: + case ftMotionMode_2HEI: + case ftMotionMode_3HEI: + case ftMotionMode_MZV: + //case ftMotionMode_ULENDO_FBS: + //case ftMotionMode_DISCTF: + flag.update_n = flag.update_a = true; + #endif + case ftMotionMode_DISABLED: + case ftMotionMode_ENABLED: + fxdTiCtrl.cfg.mode = newmm; + flag.report_h = true; + if (oldmm == ftMotionMode_DISABLED) flag.reset_ft = true; + break; + } } } diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 049a38a6a4bd..bda273b734cc 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -4058,12 +4058,8 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." /** * Fixed-Time Motion limitations */ -#if ENABLED(FT_MOTION) - #if NUM_AXES > 3 - #error "FT_MOTION is currently limited to machines with 3 linear axes." - #elif ENABLED(MIXING_EXTRUDER) - #error "FT_MOTION is incompatible with MIXING_EXTRUDER." - #endif +#if ALL(FT_MOTION, MIXING_EXTRUDER) + #error "FT_MOTION does not currently support MIXING_EXTRUDER." #endif // Multi-Stepping Limit diff --git a/Marlin/src/module/ft_motion.cpp b/Marlin/src/module/ft_motion.cpp index d6c834cbc481..d3c4de896254 100644 --- a/Marlin/src/module/ft_motion.cpp +++ b/Marlin/src/module/ft_motion.cpp @@ -61,53 +61,25 @@ bool FxdTiCtrl::sts_stepperBusy = false; // The stepper buffer has item // Private variables. // NOTE: These are sized for Ulendo FBS use. -#if HAS_X_AXIS - float FxdTiCtrl::xd[2 * (FTM_BATCH_SIZE)], // = {0.0f} Storage for fixed-time-based trajectory. - FxdTiCtrl::xm[FTM_BATCH_SIZE]; // = {0.0f} Storage for modified fixed-time-based trajectory. -#endif -#if HAS_Y_AXIS - float FxdTiCtrl::yd[2 * (FTM_BATCH_SIZE)], FxdTiCtrl::ym[FTM_BATCH_SIZE]; -#endif -#if HAS_Z_AXIS - float FxdTiCtrl::zd[2 * (FTM_BATCH_SIZE)], FxdTiCtrl::zm[FTM_BATCH_SIZE]; -#endif -#if HAS_EXTRUDERS - float FxdTiCtrl::ed[2 * (FTM_BATCH_SIZE)], FxdTiCtrl::em[FTM_BATCH_SIZE]; -#endif - -block_t* FxdTiCtrl::current_block_cpy = nullptr; // Pointer to current block being processed. -bool FxdTiCtrl::blockProcRdy = false, // Indicates a block is ready to be processed. - FxdTiCtrl::blockProcRdy_z1 = false, // Storage for the previous indicator. - FxdTiCtrl::blockProcDn = false; // Indicates current block is done being processed. -bool FxdTiCtrl::batchRdy = false; // Indicates a batch of the fixed time trajectory - // has been generated, is now available in the upper - - // half of xd, yd, zd, ed vectors, and is ready to be - // post processed, if applicable, then interpolated. -bool FxdTiCtrl::batchRdyForInterp = false; // Indicates the batch is done being post processed, - // if applicable, and is ready to be converted to step commands. -bool FxdTiCtrl::runoutEna = false; // True if runout of the block hasn't been done and is allowed. +xyze_trajectory_t FxdTiCtrl::traj; // = {0.0f} Storage for fixed-time-based trajectory. +xyze_trajectoryMod_t FxdTiCtrl::trajMod; // = {0.0f} Storage for modified fixed-time-based trajectory. + +block_t* FxdTiCtrl::current_block_cpy = nullptr; // Pointer to current block being processed. +bool FxdTiCtrl::blockProcRdy = false, // Indicates a block is ready to be processed. + FxdTiCtrl::blockProcRdy_z1 = false, // Storage for the previous indicator. + FxdTiCtrl::blockProcDn = false; // Indicates current block is done being processed. +bool FxdTiCtrl::batchRdy = false; // Indicates a batch of the fixed time trajectory + // has been generated, is now available in the upper - + // half of traj.x[], y, z ... e vectors, and is ready to be + // post processed, if applicable, then interpolated. +bool FxdTiCtrl::batchRdyForInterp = false; // Indicates the batch is done being post processed, + // if applicable, and is ready to be converted to step commands. +bool FxdTiCtrl::runoutEna = false; // True if runout of the block hasn't been done and is allowed. // Trapezoid data variables. -#if HAS_X_AXIS - float FxdTiCtrl::x_startPosn, // (mm) Start position of block - FxdTiCtrl::x_endPosn_prevBlock = 0.0f, // (mm) Start position of block - FxdTiCtrl::x_Ratio; // (ratio) Axis move ratio of block -#endif -#if HAS_Y_AXIS - float FxdTiCtrl::y_startPosn, - FxdTiCtrl::y_endPosn_prevBlock = 0.0f, - FxdTiCtrl::y_Ratio; -#endif -#if HAS_Z_AXIS - float FxdTiCtrl::z_startPosn, - FxdTiCtrl::z_endPosn_prevBlock = 0.0f, - FxdTiCtrl::z_Ratio; -#endif -#if HAS_EXTRUDERS - float FxdTiCtrl::e_startPosn, - FxdTiCtrl::e_endPosn_prevBlock = 0.0f, - FxdTiCtrl::e_Ratio; -#endif +xyze_pos_t FxdTiCtrl::startPosn, // (mm) Start position of block + FxdTiCtrl::endPosn_prevBlock = { 0.0f }; // (mm) End position of previous block +xyze_float_t FxdTiCtrl::ratio; // (ratio) Axis move ratio of block float FxdTiCtrl::accel_P, // Acceleration prime of block. [mm/sec/sec] FxdTiCtrl::decel_P, // Deceleration prime of block. [mm/sec/sec] FxdTiCtrl::F_P, // Feedrate prime of block. [mm/sec] @@ -127,22 +99,8 @@ uint32_t FxdTiCtrl::makeVector_idx = 0, // Index of fixed ti FxdTiCtrl::makeVector_batchIdx = FTM_BATCH_SIZE; // Index of fixed time trajectory generation within the batch. // Interpolation variables. -#if HAS_X_AXIS - int32_t FxdTiCtrl::x_steps = 0; // Step count accumulator. - stepDirState_t FxdTiCtrl::x_dirState = stepDirState_NOT_SET; // Memory of the currently set step direction of the axis. -#endif -#if HAS_Y_AXIS - int32_t FxdTiCtrl::y_steps = 0; - stepDirState_t FxdTiCtrl::y_dirState = stepDirState_NOT_SET; -#endif -#if HAS_Z_AXIS - int32_t FxdTiCtrl::z_steps = 0; - stepDirState_t FxdTiCtrl::z_dirState = stepDirState_NOT_SET; -#endif -#if HAS_EXTRUDERS - int32_t FxdTiCtrl::e_steps = 0; - stepDirState_t FxdTiCtrl::e_dirState = stepDirState_NOT_SET; -#endif +xyze_long_t FxdTiCtrl::steps = { 0 }; // Step count accumulator. +xyze_stepDir_t FxdTiCtrl::dirState = LOGICAL_AXIS_ARRAY_1(stepDirState_NOT_SET); // Memory of the currently set step direction of the axis. uint32_t FxdTiCtrl::interpIdx = 0, // Index of current data point being interpolated. FxdTiCtrl::interpIdx_z1 = 0; // Storage for the previously calculated index above. @@ -150,16 +108,13 @@ hal_timer_t FxdTiCtrl::nextStepTicks = FTM_MIN_TICKS; // Accumulator for the nex // Shaping variables. #if HAS_X_AXIS - uint32_t FxdTiCtrl::xy_zi_idx = 0, // Index of storage in the data point delay vectors. - FxdTiCtrl::xy_max_i = 0; // Vector length for the selected shaper. - float FxdTiCtrl::xd_zi[FTM_ZMAX] = { 0.0f }; // Data point delay vector. - float FxdTiCtrl::x_Ai[5]; // Shaping gain vector. - uint32_t FxdTiCtrl::x_Ni[5]; // Shaping time index vector. -#endif -#if HAS_Y_AXIS - float FxdTiCtrl::yd_zi[FTM_ZMAX] = { 0.0f }; - float FxdTiCtrl::y_Ai[5]; - uint32_t FxdTiCtrl::y_Ni[5]; + FxdTiCtrl::shaping_t FxdTiCtrl::shaping = { + 0, 0, + x:{ { 0.0f }, { 0.0f }, { 0 } }, // d_zi, Ai, Ni + #if HAS_Y_AXIS + y:{ { 0.0f }, { 0.0f }, { 0 } } // d_zi, Ai, Ni + #endif + }; #endif #if HAS_EXTRUDERS @@ -188,14 +143,22 @@ void FxdTiCtrl::runoutBlock() { if (runoutEna && !batchRdy) { // If the window is full already (block intervals was a multiple of // the batch size), or runout is not enabled, no runout is needed. // Fill out the trajectory window with the last position calculated. - if (makeVector_batchIdx > FTM_BATCH_SIZE) { + if (makeVector_batchIdx > FTM_BATCH_SIZE) for (uint32_t i = makeVector_batchIdx; i < 2 * (FTM_BATCH_SIZE); i++) { - xd[i] = xd[makeVector_batchIdx - 1]; - TERN_(HAS_Y_AXIS, yd[i] = yd[makeVector_batchIdx - 1]); - TERN_(HAS_Y_AXIS, zd[i] = zd[makeVector_batchIdx - 1]); - TERN_(HAS_EXTRUDERS, ed[i] = ed[makeVector_batchIdx - 1]); + LOGICAL_AXIS_CODE( + traj.e[i] = traj.e[makeVector_batchIdx - 1], + traj.x[i] = traj.x[makeVector_batchIdx - 1], + traj.y[i] = traj.y[makeVector_batchIdx - 1], + traj.z[i] = traj.z[makeVector_batchIdx - 1], + traj.i[i] = traj.i[makeVector_batchIdx - 1], + traj.j[i] = traj.j[makeVector_batchIdx - 1], + traj.k[i] = traj.k[makeVector_batchIdx - 1], + traj.u[i] = traj.u[makeVector_batchIdx - 1], + traj.v[i] = traj.v[makeVector_batchIdx - 1], + traj.w[i] = traj.w[makeVector_batchIdx - 1] + ); } - } + makeVector_batchIdx = FTM_BATCH_SIZE; batchRdy = true; } @@ -234,23 +197,28 @@ void FxdTiCtrl::loop() { // Call Ulendo FBS here. - memcpy(xm, &xd[FTM_BATCH_SIZE], sizeof(xm)); - TERN_(HAS_Y_AXIS, memcpy(ym, &yd[FTM_BATCH_SIZE], sizeof(ym))); - - // Done compensating ... - - // Copy the uncompensated vectors. - TERN_(HAS_Z_AXIS, memcpy(zm, &zd[FTM_BATCH_SIZE], sizeof(zm))); - TERN_(HAS_EXTRUDERS, memcpy(em, &ed[FTM_BATCH_SIZE], sizeof(em))); - - // Shift the time series back in the window. - memcpy(xd, &xd[FTM_BATCH_SIZE], sizeof(xd) / 2); - TERN_(HAS_Y_AXIS, memcpy(yd, &yd[FTM_BATCH_SIZE], sizeof(yd) / 2)); - // Disabled by comment as these are uncompensated, the lower half is not used. - //TERN_(HAS_Z_AXIS, memcpy(zd, &zd[FTM_BATCH_SIZE], (sizeof(zd) / 2))); - //TERN_(HAS_EXTRUDERS, memcpy(ed, &ed[FTM_BATCH_SIZE], (sizeof(ed) / 2))); - - // ... data is ready in xm, ym, zm, em. + // Copy the uncompensated vectors. (XY done, other axes uncompensated) + LOGICAL_AXIS_CODE( + memcpy(trajMod.e, &traj.e[FTM_BATCH_SIZE], sizeof(trajMod.e)), + memcpy(trajMod.x, &traj.x[FTM_BATCH_SIZE], sizeof(trajMod.x)), + memcpy(trajMod.y, &traj.y[FTM_BATCH_SIZE], sizeof(trajMod.y)), + memcpy(trajMod.z, &traj.z[FTM_BATCH_SIZE], sizeof(trajMod.z)), + memcpy(trajMod.i, &traj.i[FTM_BATCH_SIZE], sizeof(trajMod.i)), + memcpy(trajMod.j, &traj.j[FTM_BATCH_SIZE], sizeof(trajMod.j)), + memcpy(trajMod.k, &traj.k[FTM_BATCH_SIZE], sizeof(trajMod.k)), + memcpy(trajMod.u, &traj.u[FTM_BATCH_SIZE], sizeof(trajMod.u)), + memcpy(trajMod.v, &traj.v[FTM_BATCH_SIZE], sizeof(trajMod.v)), + memcpy(trajMod.w, &traj.w[FTM_BATCH_SIZE], sizeof(trajMod.w)) + ); + + // Shift the time series back in the window for (shaped) X and Y + TERN_(HAS_X_AXIS, memcpy(traj.x, &traj.x[FTM_BATCH_SIZE], sizeof(traj.x) / 2)); + TERN_(HAS_Y_AXIS, memcpy(traj.y, &traj.y[FTM_BATCH_SIZE], sizeof(traj.y) / 2)); + + // Z...W and E Disabled! Uncompensated so the lower half is not used. + //TERN_(HAS_Z_AXIS, memcpy(&traj.z[0], &traj.z[FTM_BATCH_SIZE], sizeof(traj.z) / 2)); + + // ... data is ready in trajMod. batchRdyForInterp = true; batchRdy = false; // Clear so that makeVector() may resume generating points. @@ -282,134 +250,119 @@ void FxdTiCtrl::loop() { // Refresh the gains used by shaping functions. // To be called on init or mode or zeta change. - void FxdTiCtrl::updateShapingA(const_float_t zeta/*=FTM_SHAPING_ZETA*/, const_float_t vtol/*=FTM_SHAPING_V_TOL*/) { - const float K = exp( -zeta * M_PI / sqrt(1.0f - sq(zeta)) ), + void FxdTiCtrl::Shaping::updateShapingA(const_float_t zeta/*=FTM_SHAPING_ZETA*/, const_float_t vtol/*=FTM_SHAPING_V_TOL*/) { + + const float K = exp(-zeta * M_PI / sqrt(1.0f - sq(zeta))), K2 = sq(K); switch (cfg.mode) { case ftMotionMode_ZV: - xy_max_i = 1U; - x_Ai[0] = 1.0f / (1.0f + K); - x_Ai[1] = x_Ai[0] * K; + max_i = 1U; + x.Ai[0] = 1.0f / (1.0f + K); + x.Ai[1] = x.Ai[0] * K; break; case ftMotionMode_ZVD: - xy_max_i = 2U; - x_Ai[0] = 1.0f / ( 1.0f + 2.0f * K + K2 ); - x_Ai[1] = x_Ai[0] * 2.0f * K; - x_Ai[2] = x_Ai[0] * K2; + max_i = 2U; + x.Ai[0] = 1.0f / ( 1.0f + 2.0f * K + K2 ); + x.Ai[1] = x.Ai[0] * 2.0f * K; + x.Ai[2] = x.Ai[0] * K2; break; case ftMotionMode_EI: { - xy_max_i = 2U; - x_Ai[0] = 0.25f * (1.0f + vtol); - x_Ai[1] = 0.50f * (1.0f - vtol) * K; - x_Ai[2] = x_Ai[0] * K2; - const float A_adj = 1.0f / (x_Ai[0] + x_Ai[1] + x_Ai[2]); - for (uint32_t i = 0U; i < 3U; i++) { x_Ai[i] *= A_adj; } + max_i = 2U; + x.Ai[0] = 0.25f * (1.0f + vtol); + x.Ai[1] = 0.50f * (1.0f - vtol) * K; + x.Ai[2] = x.Ai[0] * K2; + const float A_adj = 1.0f / (x.Ai[0] + x.Ai[1] + x.Ai[2]); + for (uint32_t i = 0U; i < 3U; i++) { x.Ai[i] *= A_adj; } } break; case ftMotionMode_2HEI: { - xy_max_i = 3U; + max_i = 3U; const float vtol2 = sq(vtol); const float X = pow(vtol2 * (sqrt(1.0f - vtol2) + 1.0f), 1.0f / 3.0f); - x_Ai[0] = ( 3.0f * sq(X) + 2.0f * X + 3.0f * vtol2 ) / (16.0f * X); - x_Ai[1] = ( 0.5f - x_Ai[0] ) * K; - x_Ai[2] = x_Ai[1] * K; - x_Ai[3] = x_Ai[0] * cu(K); - const float A_adj = 1.0f / (x_Ai[0] + x_Ai[1] + x_Ai[2] + x_Ai[3]); - for (uint32_t i = 0U; i < 4U; i++) { x_Ai[i] *= A_adj; } + x.Ai[0] = ( 3.0f * sq(X) + 2.0f * X + 3.0f * vtol2 ) / (16.0f * X); + x.Ai[1] = ( 0.5f - x.Ai[0] ) * K; + x.Ai[2] = x.Ai[1] * K; + x.Ai[3] = x.Ai[0] * cu(K); + const float A_adj = 1.0f / (x.Ai[0] + x.Ai[1] + x.Ai[2] + x.Ai[3]); + for (uint32_t i = 0U; i < 4U; i++) { x.Ai[i] *= A_adj; } } break; case ftMotionMode_3HEI: { - xy_max_i = 4U; - x_Ai[0] = 0.0625f * ( 1.0f + 3.0f * vtol + 2.0f * sqrt( 2.0f * ( vtol + 1.0f ) * vtol ) ); - x_Ai[1] = 0.25f * ( 1.0f - vtol ) * K; - x_Ai[2] = ( 0.5f * ( 1.0f + vtol ) - 2.0f * x_Ai[0] ) * K2; - x_Ai[3] = x_Ai[1] * K2; - x_Ai[4] = x_Ai[0] * sq(K2); - const float A_adj = 1.0f / (x_Ai[0] + x_Ai[1] + x_Ai[2] + x_Ai[3] + x_Ai[4]); - for (uint32_t i = 0U; i < 5U; i++) { x_Ai[i] *= A_adj; } + max_i = 4U; + x.Ai[0] = 0.0625f * ( 1.0f + 3.0f * vtol + 2.0f * sqrt( 2.0f * ( vtol + 1.0f ) * vtol ) ); + x.Ai[1] = 0.25f * ( 1.0f - vtol ) * K; + x.Ai[2] = ( 0.5f * ( 1.0f + vtol ) - 2.0f * x.Ai[0] ) * K2; + x.Ai[3] = x.Ai[1] * K2; + x.Ai[4] = x.Ai[0] * sq(K2); + const float A_adj = 1.0f / (x.Ai[0] + x.Ai[1] + x.Ai[2] + x.Ai[3] + x.Ai[4]); + for (uint32_t i = 0U; i < 5U; i++) { x.Ai[i] *= A_adj; } } break; case ftMotionMode_MZV: { - xy_max_i = 2U; + max_i = 2U; const float B = 1.4142135623730950488016887242097f * K; - x_Ai[0] = 1.0f / (1.0f + B + K2); - x_Ai[1] = x_Ai[0] * B; - x_Ai[2] = x_Ai[0] * K2; + x.Ai[0] = 1.0f / (1.0f + B + K2); + x.Ai[1] = x.Ai[0] * B; + x.Ai[2] = x.Ai[0] * K2; } break; default: - for (uint32_t i = 0U; i < 5U; i++) x_Ai[i] = 0.0f; - xy_max_i = 0; + for (uint32_t i = 0U; i < 5U; i++) x.Ai[i] = 0.0f; + max_i = 0; } #if HAS_Y_AXIS - memcpy(y_Ai, x_Ai, sizeof(x_Ai)); // For now, zeta and vtol are shared across x and y. + memcpy(y.Ai, x.Ai, sizeof(x.Ai)); // For now, zeta and vtol are shared across x and y. #endif } + void FxdTiCtrl::updateShapingA(const_float_t zeta/*=FTM_SHAPING_ZETA*/, const_float_t vtol/*=FTM_SHAPING_V_TOL*/) { + shaping.updateShapingA(zeta, vtol); + } + // Refresh the indices used by shaping functions. // To be called when frequencies change. - void FxdTiCtrl::updateShapingN(const_float_t xf OPTARG(HAS_Y_AXIS, const_float_t yf), const_float_t zeta/*=FTM_SHAPING_ZETA*/) { + void FxdTiCtrl::AxisShaping::updateShapingN(const_float_t f, const_float_t df) { // Protections omitted for DBZ and for index exceeding array length. - - const float df = sqrt(1.0f - sq(zeta)); - switch (cfg.mode) { case ftMotionMode_ZV: - x_Ni[1] = round((0.5f / xf / df) * (FTM_FS)); - #if HAS_Y_AXIS - y_Ni[1] = round((0.5f / yf / df) * (FTM_FS)); - #endif + Ni[1] = round((0.5f / f / df) * (FTM_FS)); break; case ftMotionMode_ZVD: case ftMotionMode_EI: - x_Ni[1] = round((0.5f / xf / df) * (FTM_FS)); - x_Ni[2] = 2 * x_Ni[1]; - #if HAS_Y_AXIS - y_Ni[1] = round((0.5f / yf / df) * (FTM_FS)); - y_Ni[2] = 2 * y_Ni[1]; - #endif + Ni[1] = round((0.5f / f / df) * (FTM_FS)); + Ni[2] = Ni[1] + Ni[1]; break; case ftMotionMode_2HEI: - x_Ni[1] = round((0.5f / xf / df) * (FTM_FS)); - x_Ni[2] = 2 * x_Ni[1]; - x_Ni[3] = 3 * x_Ni[1]; - #if HAS_Y_AXIS - y_Ni[1] = round((0.5f / yf / df) * (FTM_FS)); - y_Ni[2] = 2 * y_Ni[1]; - y_Ni[3] = 3 * y_Ni[1]; - #endif + Ni[1] = round((0.5f / f / df) * (FTM_FS)); + Ni[2] = Ni[1] + Ni[1]; + Ni[3] = Ni[2] + Ni[1]; break; case ftMotionMode_3HEI: - x_Ni[1] = round((0.5f / xf / df) * (FTM_FS)); - x_Ni[2] = 2 * x_Ni[1]; - x_Ni[3] = 3 * x_Ni[1]; - x_Ni[4] = 4 * x_Ni[1]; - #if HAS_Y_AXIS - y_Ni[1] = round((0.5f / yf / df) * (FTM_FS)); - y_Ni[2] = 2 * y_Ni[1]; - y_Ni[3] = 3 * y_Ni[1]; - y_Ni[4] = 4 * y_Ni[1]; - #endif + Ni[1] = round((0.5f / f / df) * (FTM_FS)); + Ni[2] = Ni[1] + Ni[1]; + Ni[3] = Ni[2] + Ni[1]; + Ni[4] = Ni[3] + Ni[1]; break; case ftMotionMode_MZV: - x_Ni[1] = round((0.375f / xf / df) * (FTM_FS)); - x_Ni[2] = 2 * x_Ni[1]; - #if HAS_Y_AXIS - y_Ni[1] = round((0.375f / yf / df) * (FTM_FS)); - y_Ni[2] = 2 * y_Ni[1]; - #endif + Ni[1] = round((0.375f / f / df) * (FTM_FS)); + Ni[2] = Ni[1] + Ni[1]; break; - default: - for (uint32_t i = 0U; i < 5U; i++) { x_Ni[i] = 0; TERN_(HAS_Y_AXIS, y_Ni[i] = 0); } + default: ZERO(Ni); } } + void FxdTiCtrl::updateShapingN(const_float_t xf OPTARG(HAS_Y_AXIS, const_float_t yf), const_float_t zeta/*=FTM_SHAPING_ZETA*/) { + const float df = sqrt(1.0f - sq(zeta)); + shaping.x.updateShapingN(xf, df); + TERN_(HAS_Y_AXIS, shaping.y.updateShapingN(yf, df)); + } + #endif // HAS_X_AXIS // Reset all trajectory processing variables. @@ -417,42 +370,26 @@ void FxdTiCtrl::reset() { stepperCmdBuff_produceIdx = stepperCmdBuff_consumeIdx = 0; - for (uint32_t i = 0U; i < (FTM_BATCH_SIZE); i++) { // Reset trajectory history - TERN_(HAS_X_AXIS, xd[i] = 0.0f); - TERN_(HAS_Y_AXIS, yd[i] = 0.0f); - TERN_(HAS_Z_AXIS, zd[i] = 0.0f); - TERN_(HAS_EXTRUDERS, ed[i] = 0.0f); - } + traj.reset(); // Reset trajectory history blockProcRdy = blockProcRdy_z1 = blockProcDn = false; batchRdy = batchRdyForInterp = false; runoutEna = false; - TERN_(HAS_X_AXIS, x_endPosn_prevBlock = 0.0f); - TERN_(HAS_Y_AXIS, y_endPosn_prevBlock = 0.0f); - TERN_(HAS_Z_AXIS, z_endPosn_prevBlock = 0.0f); - TERN_(HAS_EXTRUDERS, e_endPosn_prevBlock = 0.0f); + endPosn_prevBlock.reset(); makeVector_idx = makeVector_idx_z1 = 0; makeVector_batchIdx = FTM_BATCH_SIZE; - TERN_(HAS_X_AXIS, x_steps = 0); - TERN_(HAS_Y_AXIS, y_steps = 0); - TERN_(HAS_Z_AXIS, z_steps = 0); - TERN_(HAS_EXTRUDERS, e_steps = 0); - + steps.reset(); interpIdx = interpIdx_z1 = 0; - - TERN_(HAS_X_AXIS, x_dirState = stepDirState_NOT_SET); - TERN_(HAS_Y_AXIS, y_dirState = stepDirState_NOT_SET); - TERN_(HAS_Z_AXIS, z_dirState = stepDirState_NOT_SET); - TERN_(HAS_EXTRUDERS, e_dirState = stepDirState_NOT_SET); - + dirState = LOGICAL_AXIS_ARRAY_1(stepDirState_NOT_SET); nextStepTicks = FTM_MIN_TICKS; #if HAS_X_AXIS - for (uint32_t i = 0U; i < (FTM_ZMAX); i++) { xd_zi[i] = 0.0f; TERN_(HAS_Y_AXIS, yd_zi[i] = 0.0f); } - xy_zi_idx = 0; + for (uint32_t i = 0U; i < (FTM_ZMAX); i++) + shaping.x.d_zi[i] = TERN_(HAS_Y_AXIS, shaping.y.d_zi[i] =) 0.0f; + shaping.zi_idx = 0; #endif TERN_(HAS_EXTRUDERS, e_raw_z1 = e_advanced_z1 = 0.0f); @@ -482,33 +419,34 @@ void FxdTiCtrl::loadBlockData(block_t * const current_block) { const AxisBits direction = current_block->direction_bits; - #if HAS_X_AXIS - x_startPosn = x_endPosn_prevBlock; - float x_moveDist = current_block->steps.a / planner.settings.axis_steps_per_mm[X_AXIS]; - if (!direction.x) x_moveDist *= -1.0f; - x_Ratio = x_moveDist * oneOverLength; - #endif - - #if HAS_Y_AXIS - y_startPosn = y_endPosn_prevBlock; - float y_moveDist = current_block->steps.b / planner.settings.axis_steps_per_mm[Y_AXIS]; - if (!direction.y) y_moveDist *= -1.0f; - y_Ratio = y_moveDist * oneOverLength; - #endif + startPosn = endPosn_prevBlock; + xyze_pos_t moveDist = LOGICAL_AXIS_ARRAY( + current_block->steps.e / planner.settings.axis_steps_per_mm[E_AXIS_N(current_block->extruder)], + current_block->steps.x / planner.settings.axis_steps_per_mm[X_AXIS], + current_block->steps.y / planner.settings.axis_steps_per_mm[Y_AXIS], + current_block->steps.z / planner.settings.axis_steps_per_mm[Z_AXIS], + current_block->steps.i / planner.settings.axis_steps_per_mm[I_AXIS], + current_block->steps.j / planner.settings.axis_steps_per_mm[J_AXIS], + current_block->steps.k / planner.settings.axis_steps_per_mm[K_AXIS], + current_block->steps.u / planner.settings.axis_steps_per_mm[U_AXIS], + current_block->steps.v / planner.settings.axis_steps_per_mm[V_AXIS], + current_block->steps.w / planner.settings.axis_steps_per_mm[W_AXIS] + ); - #if HAS_Z_AXIS - z_startPosn = z_endPosn_prevBlock; - float z_moveDist = current_block->steps.c / planner.settings.axis_steps_per_mm[Z_AXIS]; - if (!direction.z) z_moveDist *= -1.0f; - z_Ratio = z_moveDist * oneOverLength; - #endif + LOGICAL_AXIS_CODE( + if (!direction.e) moveDist.e *= -1.0f, + if (!direction.x) moveDist.x *= -1.0f, + if (!direction.y) moveDist.y *= -1.0f, + if (!direction.z) moveDist.z *= -1.0f, + if (!direction.i) moveDist.i *= -1.0f, + if (!direction.j) moveDist.j *= -1.0f, + if (!direction.k) moveDist.k *= -1.0f, + if (!direction.u) moveDist.u *= -1.0f, + if (!direction.v) moveDist.v *= -1.0f, + if (!direction.w) moveDist.w *= -1.0f + ); - #if HAS_EXTRUDERS - e_startPosn = e_endPosn_prevBlock; - float extrusion = current_block->steps.e / planner.settings.axis_steps_per_mm[E_AXIS_N(current_block->extruder)]; - if (!direction.e) extrusion *= -1.0f; - e_Ratio = extrusion * oneOverLength; - #endif + ratio = moveDist * oneOverLength; const float spm = totalLength / current_block->step_event_count; // (steps/mm) Distance for each step f_s = spm * current_block->initial_rate; // (steps/s) Start feedrate @@ -525,7 +463,7 @@ void FxdTiCtrl::loadBlockData(block_t * const current_block) { odiff = oneby2a - oneby2d, // (i.e., oneby2a * 2) (mm/s) Change in speed for one second of acceleration ldiff = totalLength - fdiff; // (mm) Distance to travel if nominal speed is reached float T2 = (1.0f / F_n) * (ldiff - odiff * sq(F_n)); // (s) Coasting duration after nominal speed reached - if (T2 < 0.0f) { + if (T2 < 0.0f) { T2 = 0.0f; F_n = SQRT(ldiff / odiff); // Clip by intersection if nominal speed can't be reached. } @@ -567,10 +505,7 @@ void FxdTiCtrl::loadBlockData(block_t * const current_block) { // One less than (Accel + Coasting + Decel) datapoints max_intervals = N1 + N2 + N3 - 1U; - TERN_(HAS_X_AXIS, x_endPosn_prevBlock += x_moveDist); - TERN_(HAS_Y_AXIS, y_endPosn_prevBlock += y_moveDist); - TERN_(HAS_Z_AXIS, z_endPosn_prevBlock += z_moveDist); - TERN_(HAS_EXTRUDERS, e_endPosn_prevBlock += extrusion); + endPosn_prevBlock += moveDist; } // Generate data points of the trajectory. @@ -596,24 +531,32 @@ void FxdTiCtrl::makeVector() { accel_k = decel_P; // (mm/s^2) Acceleration K factor from Decel phase } - TERN_(HAS_X_AXIS, xd[makeVector_batchIdx] = x_startPosn + x_Ratio * dist); // (mm) X position for this datapoint - TERN_(HAS_Y_AXIS, yd[makeVector_batchIdx] = y_startPosn + y_Ratio * dist); // (mm) Y - TERN_(HAS_Z_AXIS, zd[makeVector_batchIdx] = z_startPosn + z_Ratio * dist); // (mm) Z + NUM_AXIS_CODE( + traj.x[makeVector_batchIdx] = startPosn.x + ratio.x * dist, + traj.y[makeVector_batchIdx] = startPosn.y + ratio.y * dist, + traj.z[makeVector_batchIdx] = startPosn.z + ratio.z * dist, + traj.i[makeVector_batchIdx] = startPosn.i + ratio.i * dist, + traj.j[makeVector_batchIdx] = startPosn.j + ratio.j * dist, + traj.k[makeVector_batchIdx] = startPosn.k + ratio.k * dist, + traj.u[makeVector_batchIdx] = startPosn.u + ratio.u * dist, + traj.v[makeVector_batchIdx] = startPosn.v + ratio.v * dist, + traj.w[makeVector_batchIdx] = startPosn.w + ratio.w * dist + ); #if HAS_EXTRUDERS - const float new_raw_z1 = e_startPosn + e_Ratio * dist; + const float new_raw_z1 = startPosn.e + ratio.e * dist; if (cfg.linearAdvEna) { float dedt_adj = (new_raw_z1 - e_raw_z1) * (FTM_FS); - if (e_Ratio > 0.0f) dedt_adj += accel_k * cfg.linearAdvK; + if (ratio.e > 0.0f) dedt_adj += accel_k * cfg.linearAdvK; e_advanced_z1 += dedt_adj * (FTM_TS); - ed[makeVector_batchIdx] = e_advanced_z1; + traj.e[makeVector_batchIdx] = e_advanced_z1; e_raw_z1 = new_raw_z1; } else { - ed[makeVector_batchIdx] = new_raw_z1; - // Alternatively: ed[makeVector_batchIdx] = e_startPosn + (e_Ratio * dist) / (N1 + N2 + N3); + traj.e[makeVector_batchIdx] = new_raw_z1; + // Alternatively: ed[makeVector_batchIdx] = startPosn.e + (ratio.e * dist) / (N1 + N2 + N3); } #endif @@ -625,11 +568,11 @@ void FxdTiCtrl::makeVector() { #if HAS_DYNAMIC_FREQ_MM case dynFreqMode_Z_BASED: - if (zd[makeVector_batchIdx] != zd_z1) { // Only update if Z changed. - const float xf = cfg.baseFreq[X_AXIS] + cfg.dynFreqK[X_AXIS] * zd[makeVector_batchIdx], - yf = cfg.baseFreq[Y_AXIS] + cfg.dynFreqK[Y_AXIS] * zd[makeVector_batchIdx]; + if (traj.z[makeVector_batchIdx] != zd_z1) { // Only update if Z changed. + const float xf = cfg.baseFreq[X_AXIS] + cfg.dynFreqK[X_AXIS] * traj.z[makeVector_batchIdx], + yf = cfg.baseFreq[Y_AXIS] + cfg.dynFreqK[Y_AXIS] * traj.z[makeVector_batchIdx]; updateShapingN(_MAX(xf, FTM_MIN_SHAPE_FREQ), _MAX(yf, FTM_MIN_SHAPE_FREQ)); - zd_z1 = zd[makeVector_batchIdx]; + zd_z1 = traj.z[makeVector_batchIdx]; } break; #endif @@ -638,8 +581,8 @@ void FxdTiCtrl::makeVector() { case dynFreqMode_MASS_BASED: // Update constantly. The optimization done for Z value makes // less sense for E, as E is expected to constantly change. - updateShapingN( cfg.baseFreq[X_AXIS] + cfg.dynFreqK[X_AXIS] * ed[makeVector_batchIdx] - OPTARG(HAS_Y_AXIS, cfg.baseFreq[Y_AXIS] + cfg.dynFreqK[Y_AXIS] * ed[makeVector_batchIdx]) ); + updateShapingN( cfg.baseFreq[X_AXIS] + cfg.dynFreqK[X_AXIS] * traj.e[makeVector_batchIdx] + OPTARG(HAS_Y_AXIS, cfg.baseFreq[Y_AXIS] + cfg.dynFreqK[Y_AXIS] * traj.e[makeVector_batchIdx]) ); break; #endif @@ -648,22 +591,22 @@ void FxdTiCtrl::makeVector() { // Apply shaping if in mode. #if HAS_X_AXIS - if (WITHIN(cfg.mode, 10U, 19U)) { - xd_zi[xy_zi_idx] = xd[makeVector_batchIdx]; - xd[makeVector_batchIdx] *= x_Ai[0]; + if (cfg.modeHasShaper()) { + shaping.x.d_zi[shaping.zi_idx] = traj.x[makeVector_batchIdx]; + traj.x[makeVector_batchIdx] *= shaping.x.Ai[0]; #if HAS_Y_AXIS - yd_zi[xy_zi_idx] = yd[makeVector_batchIdx]; - yd[makeVector_batchIdx] *= y_Ai[0]; + shaping.y.d_zi[shaping.zi_idx] = traj.y[makeVector_batchIdx]; + traj.y[makeVector_batchIdx] *= shaping.y.Ai[0]; #endif - for (uint32_t i = 1U; i <= xy_max_i; i++) { - const uint32_t udiffx = xy_zi_idx - x_Ni[i]; - xd[makeVector_batchIdx] += x_Ai[i] * xd_zi[x_Ni[i] > xy_zi_idx ? (FTM_ZMAX) + udiffx : udiffx]; + for (uint32_t i = 1U; i <= shaping.max_i; i++) { + const uint32_t udiffx = shaping.zi_idx - shaping.x.Ni[i]; + traj.x[makeVector_batchIdx] += shaping.x.Ai[i] * shaping.x.d_zi[shaping.x.Ni[i] > shaping.zi_idx ? (FTM_ZMAX) + udiffx : udiffx]; #if HAS_Y_AXIS - const uint32_t udiffy = xy_zi_idx - y_Ni[i]; - yd[makeVector_batchIdx] += y_Ai[i] * yd_zi[y_Ni[i] > xy_zi_idx ? (FTM_ZMAX) + udiffy : udiffy]; + const uint32_t udiffy = shaping.zi_idx - shaping.y.Ni[i]; + traj.y[makeVector_batchIdx] += shaping.y.Ai[i] * shaping.y.d_zi[shaping.y.Ni[i] > shaping.zi_idx ? (FTM_ZMAX) + udiffy : udiffy]; #endif } - if (++xy_zi_idx == (FTM_ZMAX)) xy_zi_idx = 0; + if (++shaping.zi_idx == (FTM_ZMAX)) shaping.zi_idx = 0; } #endif @@ -684,57 +627,63 @@ void FxdTiCtrl::makeVector() { // Interpolates single data point to stepper commands. void FxdTiCtrl::convertToSteps(const uint32_t idx) { - #if HAS_X_AXIS - int32_t x_err_P = 0; - #endif - #if HAS_Y_AXIS - int32_t y_err_P = 0; - #endif - #if HAS_Z_AXIS - int32_t z_err_P = 0; - #endif - #if HAS_EXTRUDERS - int32_t e_err_P = 0; - #endif + xyze_long_t err_P = { 0 }; //#define STEPS_ROUNDING #if ENABLED(STEPS_ROUNDING) - #if HAS_X_AXIS - const float x_steps_tar = xm[idx] * planner.settings.axis_steps_per_mm[X_AXIS] + (xm[idx] < 0.0f ? -0.5f : 0.5f); // May be eliminated if guaranteed positive. - const int32_t x_delta = int32_t(x_steps_tar) - x_steps; - #endif - #if HAS_Y_AXIS - const float y_steps_tar = ym[idx] * planner.settings.axis_steps_per_mm[Y_AXIS] + (ym[idx] < 0.0f ? -0.5f : 0.5f); - const int32_t y_delta = int32_t(y_steps_tar) - y_steps; - #endif - #if HAS_Z_AXIS - const float z_steps_tar = zm[idx] * planner.settings.axis_steps_per_mm[Z_AXIS] + (zm[idx] < 0.0f ? -0.5f : 0.5f); - const int32_t z_delta = int32_t(z_steps_tar) - z_steps; - #endif - #if HAS_EXTRUDERS - const float e_steps_tar = em[idx] * planner.settings.axis_steps_per_mm[E_AXIS] + (em[idx] < 0.0f ? -0.5f : 0.5f); - const int32_t e_delta = int32_t(e_steps_tar) - e_steps; - #endif + const xyze_float_t steps_tar = LOGICAL_AXIS_ARRAY( + trajMod.e[idx] * planner.settings.axis_steps_per_mm[E_AXIS_N(current_block->extruder)] + (trajMod.e[idx] < 0.0f ? -0.5f : 0.5f), // May be eliminated if guaranteed positive. + trajMod.x[idx] * planner.settings.axis_steps_per_mm[X_AXIS] + (trajMod.x[idx] < 0.0f ? -0.5f : 0.5f), + trajMod.y[idx] * planner.settings.axis_steps_per_mm[Y_AXIS] + (trajMod.y[idx] < 0.0f ? -0.5f : 0.5f), + trajMod.z[idx] * planner.settings.axis_steps_per_mm[Z_AXIS] + (trajMod.z[idx] < 0.0f ? -0.5f : 0.5f), + trajMod.i[idx] * planner.settings.axis_steps_per_mm[I_AXIS] + (trajMod.i[idx] < 0.0f ? -0.5f : 0.5f), + trajMod.j[idx] * planner.settings.axis_steps_per_mm[J_AXIS] + (trajMod.j[idx] < 0.0f ? -0.5f : 0.5f), + trajMod.k[idx] * planner.settings.axis_steps_per_mm[K_AXIS] + (trajMod.k[idx] < 0.0f ? -0.5f : 0.5f), + trajMod.u[idx] * planner.settings.axis_steps_per_mm[U_AXIS] + (trajMod.u[idx] < 0.0f ? -0.5f : 0.5f), + trajMod.v[idx] * planner.settings.axis_steps_per_mm[V_AXIS] + (trajMod.v[idx] < 0.0f ? -0.5f : 0.5f), + trajMod.w[idx] * planner.settings.axis_steps_per_mm[W_AXIS] + (trajMod.w[idx] < 0.0f ? -0.5f : 0.5f), + ); + xyze_long_t delta = xyze_long_t(steps_tar) - steps; + //const xyze_long_t delta = LOGICAL_AXIS_ARRAY( + // int32_t(steps_tar.e) - steps.e, + // int32_t(steps_tar.x) - steps.x, + // int32_t(steps_tar.y) - steps.y, + // int32_t(steps_tar.z) - steps.z, + // int32_t(steps_tar.i) - steps.i, + // int32_t(steps_tar.j) - steps.j, + // int32_t(steps_tar.k) - steps.k, + // int32_t(steps_tar.u) - steps.u, + // int32_t(steps_tar.v) - steps.v, + // int32_t(steps_tar.w) - steps.w + //); #else - #if HAS_X_AXIS - const int32_t x_delta = int32_t(xm[idx] * planner.settings.axis_steps_per_mm[X_AXIS]) - x_steps; - #endif - #if HAS_Y_AXIS - const int32_t y_delta = int32_t(ym[idx] * planner.settings.axis_steps_per_mm[Y_AXIS]) - y_steps; - #endif - #if HAS_Z_AXIS - const int32_t z_delta = int32_t(zm[idx] * planner.settings.axis_steps_per_mm[Z_AXIS]) - z_steps; - #endif - #if HAS_EXTRUDERS - const int32_t e_delta = int32_t(em[idx] * planner.settings.axis_steps_per_mm[E_AXIS]) - e_steps; - #endif + xyze_long_t delta = LOGICAL_AXIS_ARRAY( + int32_t(trajMod.e[idx] * planner.settings.axis_steps_per_mm[E_AXIS_N(current_block->extruder)]) - steps.e, + int32_t(trajMod.x[idx] * planner.settings.axis_steps_per_mm[X_AXIS]) - steps.x, + int32_t(trajMod.y[idx] * planner.settings.axis_steps_per_mm[Y_AXIS]) - steps.y, + int32_t(trajMod.z[idx] * planner.settings.axis_steps_per_mm[Z_AXIS]) - steps.z, + int32_t(trajMod.i[idx] * planner.settings.axis_steps_per_mm[I_AXIS]) - steps.i, + int32_t(trajMod.j[idx] * planner.settings.axis_steps_per_mm[J_AXIS]) - steps.j, + int32_t(trajMod.k[idx] * planner.settings.axis_steps_per_mm[K_AXIS]) - steps.k, + int32_t(trajMod.u[idx] * planner.settings.axis_steps_per_mm[U_AXIS]) - steps.u, + int32_t(trajMod.v[idx] * planner.settings.axis_steps_per_mm[V_AXIS]) - steps.v, + int32_t(trajMod.w[idx] * planner.settings.axis_steps_per_mm[W_AXIS]) - steps.w + ); #endif bool any_dirChange = (false - || TERN0(HAS_X_AXIS, (x_delta > 0 && x_dirState != stepDirState_POS) || (x_delta < 0 && x_dirState != stepDirState_NEG)) - || TERN0(HAS_Y_AXIS, (y_delta > 0 && y_dirState != stepDirState_POS) || (y_delta < 0 && y_dirState != stepDirState_NEG)) - || TERN0(HAS_Z_AXIS, (z_delta > 0 && z_dirState != stepDirState_POS) || (z_delta < 0 && z_dirState != stepDirState_NEG)) - || TERN0(HAS_EXTRUDERS, (e_delta > 0 && e_dirState != stepDirState_POS) || (e_delta < 0 && e_dirState != stepDirState_NEG)) + LOGICAL_AXIS_GANG( + || (delta.e > 0 && dirState.e != stepDirState_POS) || (delta.e < 0 && dirState.e != stepDirState_NEG), + || (delta.x > 0 && dirState.x != stepDirState_POS) || (delta.x < 0 && dirState.x != stepDirState_NEG), + || (delta.y > 0 && dirState.y != stepDirState_POS) || (delta.y < 0 && dirState.y != stepDirState_NEG), + || (delta.z > 0 && dirState.z != stepDirState_POS) || (delta.z < 0 && dirState.z != stepDirState_NEG), + || (delta.i > 0 && dirState.i != stepDirState_POS) || (delta.i < 0 && dirState.i != stepDirState_NEG), + || (delta.j > 0 && dirState.j != stepDirState_POS) || (delta.j < 0 && dirState.j != stepDirState_NEG), + || (delta.k > 0 && dirState.k != stepDirState_POS) || (delta.k < 0 && dirState.k != stepDirState_NEG), + || (delta.u > 0 && dirState.u != stepDirState_POS) || (delta.u < 0 && dirState.u != stepDirState_NEG), + || (delta.v > 0 && dirState.v != stepDirState_POS) || (delta.v < 0 && dirState.v != stepDirState_NEG), + || (delta.w > 0 && dirState.w != stepDirState_POS) || (delta.w < 0 && dirState.w != stepDirState_NEG) + ) ); for (uint32_t i = 0U; i < (FTM_STEPS_PER_UNIT_TIME); i++) { @@ -745,109 +694,48 @@ void FxdTiCtrl::convertToSteps(const uint32_t idx) { bool anyStep = false; - stepperCmdBuff[stepperCmdBuff_produceIdx] = 0; - - // Commands are written in the format: - // |X_step|X_direction|Y_step|Y_direction|Z_step|Z_direction|E_step|E_direction| - #if HAS_X_AXIS - if (x_delta >= 0) { - if ((x_err_P + x_delta) < (FTM_CTS_COMPARE_VAL)) { - x_err_P += x_delta; - } - else { - x_steps++; - stepperCmdBuff[stepperCmdBuff_produceIdx] |= _BV(FT_BIT_DIR_X) | _BV(FT_BIT_STEP_X); - x_err_P += x_delta - (FTM_STEPS_PER_UNIT_TIME); - anyStep = true; - } - } - else { - if ((x_err_P + x_delta) > -(FTM_CTS_COMPARE_VAL)) { - x_err_P += x_delta; - } - else { - x_steps--; - stepperCmdBuff[stepperCmdBuff_produceIdx] |= _BV(FT_BIT_STEP_X); - x_err_P += x_delta + (FTM_STEPS_PER_UNIT_TIME); - anyStep = true; - } - } - #endif // HAS_X_AXIS - - #if HAS_Y_AXIS - if (y_delta >= 0) { - if ((y_err_P + y_delta) < (FTM_CTS_COMPARE_VAL)) { - y_err_P += y_delta; + // Commands are written in a bitmask with step and dir as single bits + auto COMMAND_SET = [&](auto &d, auto &e, auto &s, auto &b, auto bd, auto bs) { + if (d >= 0) { + if (e + d < (FTM_CTS_COMPARE_VAL)) { + e += d; } else { - y_steps++; - stepperCmdBuff[stepperCmdBuff_produceIdx] |= _BV(FT_BIT_DIR_Y) | _BV(FT_BIT_STEP_Y); - y_err_P += y_delta - (FTM_STEPS_PER_UNIT_TIME); + s++; + b |= bd | bs; + e += d - (FTM_STEPS_PER_UNIT_TIME); anyStep = true; } } else { - if ((y_err_P + y_delta) > -(FTM_CTS_COMPARE_VAL)) { - y_err_P += y_delta; + if ((e + d) > -(FTM_CTS_COMPARE_VAL)) { + e += d; } else { - y_steps--; - stepperCmdBuff[stepperCmdBuff_produceIdx] |= _BV(FT_BIT_STEP_Y); - y_err_P += y_delta + (FTM_STEPS_PER_UNIT_TIME); + s--; + b |= bs; + e += d + (FTM_STEPS_PER_UNIT_TIME); anyStep = true; } } - #endif // HAS_Y_AXIS + }; - #if HAS_Z_AXIS - if (z_delta >= 0) { - if ((z_err_P + z_delta) < (FTM_CTS_COMPARE_VAL)) { - z_err_P += z_delta; - } - else { - z_steps++; - stepperCmdBuff[stepperCmdBuff_produceIdx] |= _BV(FT_BIT_DIR_Z) | _BV(FT_BIT_STEP_Z); - z_err_P += z_delta - (FTM_STEPS_PER_UNIT_TIME); - anyStep = true; - } - } - else { - if ((z_err_P + z_delta) > -(FTM_CTS_COMPARE_VAL)) { - z_err_P += z_delta; - } - else { - z_steps--; - stepperCmdBuff[stepperCmdBuff_produceIdx] |= _BV(FT_BIT_STEP_Z); - z_err_P += z_delta + (FTM_STEPS_PER_UNIT_TIME); - anyStep = true; - } - } - #endif // HAS_Z_AXIS + // Init all step/dir bits to 0 (defaulting to reverse/negative motion) + stepperCmdBuff[stepperCmdBuff_produceIdx] = 0; - #if HAS_EXTRUDERS - if (e_delta >= 0) { - if ((e_err_P + e_delta) < (FTM_CTS_COMPARE_VAL)) { - e_err_P += e_delta; - } - else { - e_steps++; - stepperCmdBuff[stepperCmdBuff_produceIdx] |= _BV(FT_BIT_DIR_E) | _BV(FT_BIT_STEP_E); - e_err_P += e_delta - (FTM_STEPS_PER_UNIT_TIME); - anyStep = true; - } - } - else { - if ((e_err_P + e_delta) > -(FTM_CTS_COMPARE_VAL)) { - e_err_P += e_delta; - } - else { - e_steps--; - stepperCmdBuff[stepperCmdBuff_produceIdx] |= _BV(FT_BIT_STEP_E); - e_err_P += e_delta + (FTM_STEPS_PER_UNIT_TIME); - anyStep = true; - } - } - #endif // HAS_EXTRUDERS + // Set up step/dir bits for all axes + LOGICAL_AXIS_CODE( + COMMAND_SET(delta.e, err_P.e, steps.e, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_E), _BV(FT_BIT_STEP_E)), + COMMAND_SET(delta.x, err_P.x, steps.x, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_X), _BV(FT_BIT_STEP_X)), + COMMAND_SET(delta.y, err_P.y, steps.y, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_Y), _BV(FT_BIT_STEP_Y)), + COMMAND_SET(delta.z, err_P.z, steps.z, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_Z), _BV(FT_BIT_STEP_Z)), + COMMAND_SET(delta.i, err_P.i, steps.i, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_I), _BV(FT_BIT_STEP_I)), + COMMAND_SET(delta.j, err_P.j, steps.j, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_J), _BV(FT_BIT_STEP_J)), + COMMAND_SET(delta.k, err_P.k, steps.k, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_K), _BV(FT_BIT_STEP_K)), + COMMAND_SET(delta.u, err_P.u, steps.u, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_U), _BV(FT_BIT_STEP_U)), + COMMAND_SET(delta.v, err_P.v, steps.v, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_V), _BV(FT_BIT_STEP_V)), + COMMAND_SET(delta.w, err_P.w, steps.w, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_W), _BV(FT_BIT_STEP_W)), + ); if (!anyStep) { nextStepTicks += (FTM_MIN_TICKS); @@ -858,46 +746,25 @@ void FxdTiCtrl::convertToSteps(const uint32_t idx) { const uint8_t dir_index = stepperCmdBuff_produceIdx >> 3, dir_bit = stepperCmdBuff_produceIdx & 0x7; if (any_dirChange) { - SBI(stepperCmdBuff_ApplyDir[dir_index], dir_bit); - #if HAS_X_AXIS - if (x_delta > 0) { - stepperCmdBuff[stepperCmdBuff_produceIdx] |= _BV(FT_BIT_DIR_X); - x_dirState = stepDirState_POS; - } - else { - x_dirState = stepDirState_NEG; - } - #endif - - #if HAS_Y_AXIS - if (y_delta > 0) { - stepperCmdBuff[stepperCmdBuff_produceIdx] |= _BV(FT_BIT_DIR_Y); - y_dirState = stepDirState_POS; - } - else { - y_dirState = stepDirState_NEG; - } - #endif - #if HAS_Z_AXIS - if (z_delta > 0) { - stepperCmdBuff[stepperCmdBuff_produceIdx] |= _BV(FT_BIT_DIR_Z); - z_dirState = stepDirState_POS; - } - else { - z_dirState = stepDirState_NEG; - } - #endif + SBI(stepperCmdBuff_ApplyDir[dir_index], dir_bit); - #if HAS_EXTRUDERS - if (e_delta > 0) { - stepperCmdBuff[stepperCmdBuff_produceIdx] |= _BV(FT_BIT_DIR_E); - e_dirState = stepDirState_POS; - } - else { - e_dirState = stepDirState_NEG; - } - #endif + auto DIR_SET = [&](auto &d, auto &c, auto &b, auto bd) { + if (d > 0) { b |= bd; c = stepDirState_POS; } else { c = stepDirState_NEG; } + }; + + LOGICAL_AXIS_CODE( + DIR_SET(delta.e, dirState.e, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_E)), + DIR_SET(delta.x, dirState.x, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_X)), + DIR_SET(delta.y, dirState.y, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_Y)), + DIR_SET(delta.z, dirState.z, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_Z)), + DIR_SET(delta.i, dirState.i, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_I)), + DIR_SET(delta.j, dirState.j, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_J)), + DIR_SET(delta.k, dirState.k, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_K)), + DIR_SET(delta.u, dirState.u, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_U)), + DIR_SET(delta.v, dirState.v, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_V)), + DIR_SET(delta.w, dirState.w, stepperCmdBuff[stepperCmdBuff_produceIdx], _BV(FT_BIT_DIR_W)), + ); any_dirChange = false; } @@ -905,12 +772,10 @@ void FxdTiCtrl::convertToSteps(const uint32_t idx) { CBI(stepperCmdBuff_ApplyDir[dir_index], dir_bit); } - if (stepperCmdBuff_produceIdx == (FTM_STEPPERCMD_BUFF_SIZE) - 1) { + if (stepperCmdBuff_produceIdx == (FTM_STEPPERCMD_BUFF_SIZE) - 1) stepperCmdBuff_produceIdx = 0; - } - else { + else stepperCmdBuff_produceIdx++; - } nextStepTicks = FTM_MIN_TICKS; } diff --git a/Marlin/src/module/ft_motion.h b/Marlin/src/module/ft_motion.h index 232d191cda69..f4be977786fe 100644 --- a/Marlin/src/module/ft_motion.h +++ b/Marlin/src/module/ft_motion.h @@ -126,18 +126,8 @@ class FxdTiCtrl { private: - #if HAS_X_AXIS - static float xd[2 * (FTM_BATCH_SIZE)], xm[FTM_BATCH_SIZE]; - #endif - #if HAS_Y_AXIS - static float yd[2 * (FTM_BATCH_SIZE)], ym[FTM_BATCH_SIZE]; - #endif - #if HAS_Z_AXIS - static float zd[2 * (FTM_BATCH_SIZE)], zm[FTM_BATCH_SIZE]; - #endif - #if HAS_EXTRUDERS - static float ed[2 * (FTM_BATCH_SIZE)], em[FTM_BATCH_SIZE]; - #endif + static xyze_trajectory_t traj; + static xyze_trajectoryMod_t trajMod; static block_t *current_block_cpy; static bool blockProcRdy, blockProcRdy_z1, blockProcDn; @@ -145,18 +135,9 @@ class FxdTiCtrl { static bool runoutEna; // Trapezoid data variables. - #if HAS_X_AXIS - static float x_startPosn, x_endPosn_prevBlock, x_Ratio; - #endif - #if HAS_Y_AXIS - static float y_startPosn, y_endPosn_prevBlock, y_Ratio; - #endif - #if HAS_Z_AXIS - static float z_startPosn, z_endPosn_prevBlock, z_Ratio; - #endif - #if HAS_EXTRUDERS - static float e_startPosn, e_endPosn_prevBlock, e_Ratio; - #endif + static xyze_pos_t startPosn, // (mm) Start position of block + endPosn_prevBlock; // (mm) End position of previous block + static xyze_float_t ratio; // (ratio) Axis move ratio of block static float accel_P, decel_P, F_P, f_s, @@ -174,37 +155,38 @@ class FxdTiCtrl { // Interpolation variables. static uint32_t interpIdx, interpIdx_z1; - #if HAS_X_AXIS - static int32_t x_steps; - static stepDirState_t x_dirState; - #endif - #if HAS_Y_AXIS - static int32_t y_steps; - static stepDirState_t y_dirState; - #endif - #if HAS_Z_AXIS - static int32_t z_steps; - static stepDirState_t z_dirState; - #endif - #if HAS_EXTRUDERS - static int32_t e_steps; - static stepDirState_t e_dirState; - #endif + + static xyze_long_t steps; + static xyze_stepDir_t dirState; static hal_timer_t nextStepTicks; - // Shaping variables. #if HAS_X_AXIS - static uint32_t xy_zi_idx, xy_max_i; - static float xd_zi[FTM_ZMAX]; - static float x_Ai[5]; - static uint32_t x_Ni[5]; - #endif - #if HAS_Y_AXIS - static float yd_zi[FTM_ZMAX]; - static float y_Ai[5]; - static uint32_t y_Ni[5]; - #endif + + typedef struct AxisShaping { + float d_zi[FTM_ZMAX] = { 0.0f }; // Data point delay vector. + float Ai[5]; // Shaping gain vector. + uint32_t Ni[5]; // Shaping time index vector. + + void updateShapingN(const_float_t f, const_float_t df); + + } axis_shaping_t; + + typedef struct Shaping { + uint32_t zi_idx, // Index of storage in the data point delay vectors. + max_i; // Vector length for the selected shaper. + axis_shaping_t x; + #if HAS_Y_AXIS + axis_shaping_t y; + #endif + + void updateShapingA(const_float_t zeta=FTM_SHAPING_ZETA, const_float_t vtol=FTM_SHAPING_V_TOL); + + } shaping_t; + + static shaping_t shaping; // Shaping data + + #endif // HAS_X_AXIS // Linear advance variables. #if HAS_EXTRUDERS diff --git a/Marlin/src/module/ft_types.h b/Marlin/src/module/ft_types.h index a3239a924643..c4465bd37bb8 100644 --- a/Marlin/src/module/ft_types.h +++ b/Marlin/src/module/ft_types.h @@ -42,17 +42,30 @@ enum dynFreqMode_t : uint8_t { dynFreqMode_MASS_BASED = 2U }; -enum stepDirState_t { +enum stepDirState_t : uint8_t { stepDirState_NOT_SET = 0U, stepDirState_POS = 1U, stepDirState_NEG = 2U }; +typedef struct XYZEarray xyze_trajectory_t; +typedef struct XYZEarray xyze_trajectoryMod_t; + +typedef struct XYZEval xyze_stepDir_t; + enum { - FT_BIT_DIR_E, FT_BIT_STEP_E, - FT_BIT_DIR_Z, FT_BIT_STEP_Z, - FT_BIT_DIR_Y, FT_BIT_STEP_Y, - FT_BIT_DIR_X, FT_BIT_STEP_X, + LIST_N(DOUBLE(LOGICAL_AXES), + FT_BIT_DIR_E, FT_BIT_STEP_E, + FT_BIT_DIR_X, FT_BIT_STEP_X, + FT_BIT_DIR_Y, FT_BIT_STEP_Y, + FT_BIT_DIR_Z, FT_BIT_STEP_Z, + FT_BIT_DIR_I, FT_BIT_STEP_I, + FT_BIT_DIR_J, FT_BIT_STEP_J, + FT_BIT_DIR_K, FT_BIT_STEP_K, + FT_BIT_DIR_U, FT_BIT_STEP_U, + FT_BIT_DIR_V, FT_BIT_STEP_V, + FT_BIT_DIR_W, FT_BIT_STEP_W + ), FT_BIT_COUNT }; diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index dd761a56bbb0..d11842e758f1 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -33,6 +33,10 @@ #include "../lcd/marlinui.h" #include "../inc/MarlinConfig.h" +#if ENABLED(FT_MOTION) + #include "ft_motion.h" +#endif + #if IS_SCARA #include "../libs/buzzer.h" #include "../lcd/marlinui.h" @@ -2098,6 +2102,21 @@ void prepare_line_to_destination() { void homeaxis(const AxisEnum axis) { + #if ENABLED(FT_MOTION) + // Disable ft-motion for homing + struct OnExit { + ftMotionMode_t oldmm; + OnExit() { + oldmm = fxdTiCtrl.cfg.mode; + fxdTiCtrl.cfg.mode = ftMotionMode_DISABLED; + } + ~OnExit() { + fxdTiCtrl.cfg.mode = oldmm; + fxdTiCtrl.init(); + } + } on_exit; + #endif + #if ANY(MORGAN_SCARA, MP_SCARA) // Only Z homing (with probe) is permitted if (axis != Z_AXIS) { BUZZ(100, 880); return; } diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 66dd114616df..c2915eb41818 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -2608,23 +2608,23 @@ hal_timer_t Stepper::block_phase_isr() { #define Z_MOVE_TEST !!current_block->steps.c #endif - AxisBits axis_bits; + AxisBits didmove; NUM_AXIS_CODE( - if (X_MOVE_TEST) axis_bits.a = true, - if (Y_MOVE_TEST) axis_bits.b = true, - if (Z_MOVE_TEST) axis_bits.c = true, - if (current_block->steps.i) axis_bits.i = true, - if (current_block->steps.j) axis_bits.j = true, - if (current_block->steps.k) axis_bits.k = true, - if (current_block->steps.u) axis_bits.u = true, - if (current_block->steps.v) axis_bits.v = true, - if (current_block->steps.w) axis_bits.w = true + if (X_MOVE_TEST) didmove.a = true, + if (Y_MOVE_TEST) didmove.b = true, + if (Z_MOVE_TEST) didmove.c = true, + if (current_block->steps.i) didmove.i = true, + if (current_block->steps.j) didmove.j = true, + if (current_block->steps.k) didmove.k = true, + if (current_block->steps.u) didmove.u = true, + if (current_block->steps.v) didmove.v = true, + if (current_block->steps.w) didmove.w = true ); - //if (current_block->steps.e) axis_bits.e = true; - //if (current_block->steps.a) axis_bits.x = true; - //if (current_block->steps.b) axis_bits.y = true; - //if (current_block->steps.c) axis_bits.z = true; - axis_did_move = axis_bits; + //if (current_block->steps.e) didmove.e = true; + //if (current_block->steps.a) didmove.x = true; + //if (current_block->steps.b) didmove.y = true; + //if (current_block->steps.c) didmove.z = true; + axis_did_move = didmove; // No acceleration / deceleration time elapsed so far acceleration_time = deceleration_time = 0; @@ -2758,7 +2758,7 @@ hal_timer_t Stepper::block_phase_isr() { } #endif } - } + } // !current_block // Return the interval to wait return interval; @@ -3136,9 +3136,9 @@ void Stepper::init() { * when shaping an axis. */ void Stepper::set_shaping_damping_ratio(const AxisEnum axis, const_float_t zeta) { - // from the damping ratio, get a factor that can be applied to advance_dividend for fixed point maths - // for ZV, we use amplitudes 1/(1+K) and K/(1+K) where K = exp(-zeta * M_PI / sqrt(1.0f - zeta * zeta)) - // which can be converted to 1:7 fixed point with an excellent fit with a 3rd order polynomial + // From the damping ratio, get a factor that can be applied to advance_dividend for fixed-point maths. + // For ZV, we use amplitudes 1/(1+K) and K/(1+K) where K = exp(-zeta * π / sqrt(1.0f - zeta * zeta)) + // which can be converted to 1:7 fixed point with an excellent fit with a 3rd-order polynomial. float factor2; if (zeta <= 0.0f) factor2 = 64.0f; else if (zeta >= 1.0f) factor2 = 0.0f; @@ -3411,39 +3411,93 @@ void Stepper::report_positions() { USING_TIMED_PULSE(); - #if HAS_Z_AXIS - // Z is handled differently to update the stepper - // counts (needed by Marlin for bed level probing). - const bool z_fwd = TEST(command, FT_BIT_DIR_Z), - z_step = TEST(command, FT_BIT_STEP_Z); - #endif + const xyze_bool_t axis_step = LOGICAL_AXIS_ARRAY( + TEST(command, FT_BIT_STEP_E), + TEST(command, FT_BIT_STEP_X), TEST(command, FT_BIT_STEP_Y), TEST(command, FT_BIT_STEP_Z), + TEST(command, FT_BIT_STEP_I), TEST(command, FT_BIT_STEP_J), TEST(command, FT_BIT_STEP_K), + TEST(command, FT_BIT_STEP_U), TEST(command, FT_BIT_STEP_V), TEST(command, FT_BIT_STEP_W) + ); + // Apply directions (which will apply to the entire linear move) + AxisBits axis_dir = last_direction_bits; if (applyDir) { - TERN_(HAS_X_AXIS, X_APPLY_DIR(TEST(command, FT_BIT_DIR_X), false)); - TERN_(HAS_Y_AXIS, Y_APPLY_DIR(TEST(command, FT_BIT_DIR_Y), false)); - TERN_(HAS_Z_AXIS, Z_APPLY_DIR(z_fwd, false)); - TERN_(HAS_EXTRUDERS, E_APPLY_DIR(TEST(command, FT_BIT_DIR_E), false)); + axis_dir = LOGICAL_AXIS_ARRAY( + TEST(command, FT_BIT_DIR_E), + TEST(command, FT_BIT_DIR_X), TEST(command, FT_BIT_DIR_Y), TEST(command, FT_BIT_DIR_Z), + TEST(command, FT_BIT_DIR_I), TEST(command, FT_BIT_DIR_J), TEST(command, FT_BIT_DIR_K), + TEST(command, FT_BIT_DIR_U), TEST(command, FT_BIT_DIR_V), TEST(command, FT_BIT_DIR_W) + ); + LOGICAL_AXIS_CODE( + E_APPLY_DIR(axis_dir.e, false), + X_APPLY_DIR(axis_dir.x, false), Y_APPLY_DIR(axis_dir.y, false), Z_APPLY_DIR(axis_dir.z, false), + I_APPLY_DIR(axis_dir.i, false), J_APPLY_DIR(axis_dir.j, false), K_APPLY_DIR(axis_dir.k, false), + U_APPLY_DIR(axis_dir.u, false), V_APPLY_DIR(axis_dir.v, false), W_APPLY_DIR(axis_dir.w, false) + ); + last_direction_bits = axis_dir; DIR_WAIT_AFTER(); } - TERN_(HAS_X_AXIS, X_APPLY_STEP(TEST(command, FT_BIT_STEP_X), false)); - TERN_(HAS_Y_AXIS, Y_APPLY_STEP(TEST(command, FT_BIT_STEP_Y), false)); - TERN_(HAS_Z_AXIS, Z_APPLY_STEP(z_step, false)); - TERN_(HAS_EXTRUDERS, E_APPLY_STEP(TEST(command, FT_BIT_STEP_E), false)); + // Start a step pulse + LOGICAL_AXIS_CODE( + if (axis_step.e) E_APPLY_STEP(STEP_STATE_E, false), + if (axis_step.x) X_APPLY_STEP(STEP_STATE_X, false), if (axis_step.y) Y_APPLY_STEP(STEP_STATE_Y, false), + if (axis_step.z) Z_APPLY_STEP(STEP_STATE_Z, false), if (axis_step.i) I_APPLY_STEP(STEP_STATE_I, false), + if (axis_step.j) J_APPLY_STEP(STEP_STATE_J, false), if (axis_step.k) K_APPLY_STEP(STEP_STATE_K, false), + if (axis_step.u) U_APPLY_STEP(STEP_STATE_U, false), if (axis_step.v) V_APPLY_STEP(STEP_STATE_V, false), + if (axis_step.w) W_APPLY_STEP(STEP_STATE_W, false) + ); + // Begin waiting for the minimum pulse duration START_TIMED_PULSE(); - #if HAS_Z_AXIS - // Update step counts - if (z_step) count_position.z += z_fwd ? 1 : -1; + // Update axis direction adders + count_direction = LOGICAL_AXIS_ARRAY( + int8_t(axis_dir.e ? 1 : -1), + int8_t(axis_dir.x ? 1 : -1), int8_t(axis_dir.y ? 1 : -1), int8_t(axis_dir.z ? 1 : -1), + int8_t(axis_dir.i ? 1 : -1), int8_t(axis_dir.j ? 1 : -1), int8_t(axis_dir.k ? 1 : -1), + int8_t(axis_dir.u ? 1 : -1), int8_t(axis_dir.v ? 1 : -1), int8_t(axis_dir.w ? 1 : -1) + ); + + // Update stepper counts - required for various operations + LOGICAL_AXIS_CODE( + if (axis_step.e) count_position.e += count_direction.e, + if (axis_step.x) count_position.x += count_direction.x, if (axis_step.y) count_position.y += count_direction.y, + if (axis_step.z) count_position.z += count_direction.z, if (axis_step.i) count_position.i += count_direction.i, + if (axis_step.j) count_position.j += count_direction.j, if (axis_step.k) count_position.k += count_direction.k, + if (axis_step.u) count_position.u += count_direction.u, if (axis_step.v) count_position.v += count_direction.v, + if (axis_step.w) count_position.w += count_direction.w + ); + + #if HAS_EXTRUDERS + #if ENABLED(E_DUAL_STEPPER_DRIVERS) + constexpr bool e_axis_has_dedge = AXIS_HAS_DEDGE(E0) && AXIS_HAS_DEDGE(E1); + #else + #define _EDGE_BIT(N) | (AXIS_HAS_DEDGE(E##N) << TOOL_ESTEPPER(N)) + constexpr Flags e_stepper_dedge { 0 REPEAT(EXTRUDERS, _EDGE_BIT) }; + const bool e_axis_has_dedge = e_stepper_dedge[stepper_extruder]; + #endif #endif - AWAIT_HIGH_PULSE(); + // Only wait for axes without edge stepping + const bool any_wait = false LOGICAL_AXIS_GANG( + || (!e_axis_has_dedge && axis_step.e), + || (!AXIS_HAS_DEDGE(X) && axis_step.x), || (!AXIS_HAS_DEDGE(Y) && axis_step.y), || (!AXIS_HAS_DEDGE(Z) && axis_step.z), + || (!AXIS_HAS_DEDGE(I) && axis_step.i), || (!AXIS_HAS_DEDGE(J) && axis_step.j), || (!AXIS_HAS_DEDGE(K) && axis_step.k), + || (!AXIS_HAS_DEDGE(U) && axis_step.u), || (!AXIS_HAS_DEDGE(V) && axis_step.v), || (!AXIS_HAS_DEDGE(W) && axis_step.w) + ); - TERN_(HAS_X_AXIS, X_APPLY_STEP(0, false)); - TERN_(HAS_Y_AXIS, Y_APPLY_STEP(0, false)); - TERN_(HAS_Z_AXIS, Z_APPLY_STEP(0, false)); - TERN_(HAS_EXTRUDERS, E_APPLY_STEP(0, false)); + // Allow pulses to be registered by stepper drivers + if (any_wait) AWAIT_HIGH_PULSE(); + + // Stop pulses. Axes with DEDGE will do nothing, assuming STEP_STATE_* is HIGH + LOGICAL_AXIS_CODE( + if (axis_step.e) E_APPLY_STEP(!STEP_STATE_E, false), + if (axis_step.x) X_APPLY_STEP(!STEP_STATE_X, false), if (axis_step.y) Y_APPLY_STEP(!STEP_STATE_Y, false), + if (axis_step.z) Z_APPLY_STEP(!STEP_STATE_Z, false), if (axis_step.i) I_APPLY_STEP(!STEP_STATE_I, false), + if (axis_step.j) J_APPLY_STEP(!STEP_STATE_J, false), if (axis_step.k) K_APPLY_STEP(!STEP_STATE_K, false), + if (axis_step.u) U_APPLY_STEP(!STEP_STATE_U, false), if (axis_step.v) V_APPLY_STEP(!STEP_STATE_V, false), + if (axis_step.w) W_APPLY_STEP(!STEP_STATE_W, false) + ); } // Stepper::fxdTiCtrl_stepper @@ -3499,28 +3553,17 @@ void Stepper::report_positions() { // or the set conditions should be changed from the block to // the motion trajectory or motor commands. - AxisBits axis_bits; + AxisBits didmove; + static abce_ulong_t debounce{0}; + auto debounce_axis = [&](const AxisEnum axis) { + if (current_block->steps[axis]) debounce[axis] = (AXIS_DID_MOVE_DEB) * 400; // divide by 0.0025f */ + if (debounce[axis]) { didmove.bset(axis); debounce[axis]--; } + }; + #define _DEBOUNCE(N) debounce_axis(AxisEnum(N)); - static uint32_t a_debounce = 0U; - if (!!current_block->steps.a) a_debounce = (AXIS_DID_MOVE_DEB) * 400; // divide by 0.0025f - if (a_debounce) { axis_bits.a = true; a_debounce--; } - #if HAS_Y_AXIS - static uint32_t b_debounce = 0U; - if (!!current_block->steps.b) b_debounce = (AXIS_DID_MOVE_DEB) * 400; - if (b_debounce) { axis_bits.b = true; b_debounce--; } - #endif - #if HAS_Z_AXIS - static uint32_t c_debounce = 0U; - if (!!current_block->steps.c) c_debounce = (AXIS_DID_MOVE_DEB) * 400; - if (c_debounce) { axis_bits.c = true; c_debounce--; } - #endif - #if HAS_EXTRUDERS - static uint32_t e_debounce = 0U; - if (!!current_block->steps.e) e_debounce = (AXIS_DID_MOVE_DEB) * 400; - if (e_debounce) { axis_bits.e = true; e_debounce--; } - #endif + if (current_block) { REPEAT(LOGICAL_AXES, _DEBOUNCE); } - axis_did_move = axis_bits; + axis_did_move = didmove; } #endif // FT_MOTION diff --git a/Marlin/src/module/stepper/indirection.h b/Marlin/src/module/stepper/indirection.h index d48ff8ae93b1..e82ab66e00d0 100644 --- a/Marlin/src/module/stepper/indirection.h +++ b/Marlin/src/module/stepper/indirection.h @@ -573,6 +573,8 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #define REV_E_DIR(E) do{ E0_DIR_WRITE((E) ? HIGH : LOW ); }while(0) #endif + #define TOOL_ESTEPPER(T) ((T) >> 1) + #elif HAS_PRUSA_MMU2 // One multiplexed stepper driver #define E_STEP_WRITE(E,V) E0_STEP_WRITE(V) @@ -726,6 +728,10 @@ void reset_stepper_drivers(); // Called by settings.load / settings.reset #endif +#ifndef TOOL_ESTEPPER + #define TOOL_ESTEPPER(T) (T) +#endif + // // Individual stepper enable / disable macros // diff --git a/buildroot/tests/STM32F103RC_btt b/buildroot/tests/STM32F103RC_btt index d0da6305e537..8df20740c49c 100755 --- a/buildroot/tests/STM32F103RC_btt +++ b/buildroot/tests/STM32F103RC_btt @@ -1,6 +1,6 @@ #!/usr/bin/env bash # -# Build tests for STM32F103RC BigTreeTech (SKR Mini E3) +# Build tests for STM32F103RC_btt (BigTreeTech SKR Mini E3) # # exit on first failure From 18ccc404432f4b9a71cd8bd855ccc243414abcab Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 22 Jun 2023 12:06:59 +0000 Subject: [PATCH 311/427] [cron] Bump distribution date (2023-06-22) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index c56209a2dc59..01854ff0d0dc 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-20" +//#define STRING_DISTRIBUTION_DATE "2023-06-22" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 76f1400e82eb..2a14e2753632 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-20" + #define STRING_DISTRIBUTION_DATE "2023-06-22" #endif /** From 1fbeac7b5255634bb5aca209a3d3dcb6b5e43193 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 23 Jun 2023 00:15:54 -0500 Subject: [PATCH 312/427] =?UTF-8?q?=F0=9F=8E=A8=20Adjust=20TFT=20code/comm?= =?UTF-8?q?ents?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/tft/canvas.cpp | 8 +-- Marlin/src/lcd/tft/tft_image.cpp | 2 +- Marlin/src/lcd/tft/tft_image.h | 2 +- Marlin/src/lcd/tft/tft_queue.cpp | 4 +- Marlin/src/lcd/tft/touch.cpp | 6 +-- Marlin/src/lcd/tft/ui_1024x600.cpp | 57 ++++++++++----------- Marlin/src/lcd/tft/ui_320x240.cpp | 79 +++++++++++++----------------- Marlin/src/lcd/tft/ui_480x320.cpp | 42 ++++++++-------- 8 files changed, 93 insertions(+), 107 deletions(-) diff --git a/Marlin/src/lcd/tft/canvas.cpp b/Marlin/src/lcd/tft/canvas.cpp index 04817570e110..4a056524a2e5 100644 --- a/Marlin/src/lcd/tft/canvas.cpp +++ b/Marlin/src/lcd/tft/canvas.cpp @@ -96,12 +96,12 @@ void Canvas::addText(uint16_t x, uint16_t y, uint16_t color, uint16_t *string, u } void Canvas::addImage(int16_t x, int16_t y, MarlinImage image, uint16_t *colors) { - uint16_t *data = (uint16_t *)Images[image].data; + uint16_t *data = (uint16_t *)images[image].data; if (!data) return; - uint16_t image_width = Images[image].width, - image_height = Images[image].height; - colorMode_t color_mode = Images[image].colorMode; + uint16_t image_width = images[image].width, + image_height = images[image].height; + colorMode_t color_mode = images[image].colorMode; if (color_mode != HIGHCOLOR) return addImage(x, y, image_width, image_height, color_mode, (uint8_t *)data, colors); diff --git a/Marlin/src/lcd/tft/tft_image.cpp b/Marlin/src/lcd/tft/tft_image.cpp index 3651899dd717..507b5f582c7a 100644 --- a/Marlin/src/lcd/tft/tft_image.cpp +++ b/Marlin/src/lcd/tft/tft_image.cpp @@ -75,7 +75,7 @@ const tImage Leveling_32x32x4 = { (void *)leveling_32x32x4, 32, 32, GREYSC const tImage Slider8x16x4 = { (void *)slider_8x16x4, 8, 16, GREYSCALE4 }; -const tImage Images[imgCount] = { +const tImage images[imgCount] = { TERN(SHOW_BOOTSCREEN, TERN(BOOT_MARLIN_LOGO_SMALL, MarlinLogo195x59x16, MARLIN_LOGO_FULL_SIZE), NoLogo), HotEnd_64x64x4, Bed_64x64x4, diff --git a/Marlin/src/lcd/tft/tft_image.h b/Marlin/src/lcd/tft/tft_image.h index aeb1ca2bf559..d202e3d0f61a 100644 --- a/Marlin/src/lcd/tft/tft_image.h +++ b/Marlin/src/lcd/tft/tft_image.h @@ -175,4 +175,4 @@ extern const tImage Leveling_32x32x4; extern const tImage Slider8x16x4; -extern const tImage Images[imgCount]; +extern const tImage images[imgCount]; diff --git a/Marlin/src/lcd/tft/tft_queue.cpp b/Marlin/src/lcd/tft/tft_queue.cpp index fb96a440eaa8..f66418a25b4c 100644 --- a/Marlin/src/lcd/tft/tft_queue.cpp +++ b/Marlin/src/lcd/tft/tft_queue.cpp @@ -289,7 +289,7 @@ void TFT_Queue::add_image(int16_t x, int16_t y, MarlinImage image, uint16_t *col task_parameters->count++; parameters->nextParameter = end_of_queue; - colorMode_t color_mode = Images[image].colorMode; + colorMode_t color_mode = images[image].colorMode; if (color_mode == HIGHCOLOR) return; @@ -325,7 +325,7 @@ uint16_t gradient(uint16_t colorA, uint16_t colorB, uint16_t factor) { void TFT_Queue::add_image(int16_t x, int16_t y, MarlinImage image, uint16_t color_main, uint16_t color_background, uint16_t color_shadow) { uint16_t colors[16]; - colorMode_t color_mode = Images[image].colorMode; + colorMode_t color_mode = images[image].colorMode; uint16_t i; switch (color_mode) { diff --git a/Marlin/src/lcd/tft/touch.cpp b/Marlin/src/lcd/tft/touch.cpp index 443a74480d41..0c742071ff1c 100644 --- a/Marlin/src/lcd/tft/touch.cpp +++ b/Marlin/src/lcd/tft/touch.cpp @@ -324,12 +324,10 @@ bool MarlinUI::touch_pressed() { } void add_control(uint16_t x, uint16_t y, TouchControlType control_type, intptr_t data, MarlinImage image, bool is_enabled, uint16_t color_enabled, uint16_t color_disabled) { - uint16_t width = Images[image].width; - uint16_t height = Images[image].height; + const uint16_t width = images[image].width, height = images[image].height; tft.canvas(x, y, width, height); tft.add_image(0, 0, image, is_enabled ? color_enabled : color_disabled); - if (is_enabled) - touch.add_control(control_type, x, y, width, height, data); + if (is_enabled) touch.add_control(control_type, x, y, width, height, data); } #endif // TOUCH_SCREEN diff --git a/Marlin/src/lcd/tft/ui_1024x600.cpp b/Marlin/src/lcd/tft/ui_1024x600.cpp index 84495fbaba98..b5d12cdab359 100644 --- a/Marlin/src/lcd/tft/ui_1024x600.cpp +++ b/Marlin/src/lcd/tft/ui_1024x600.cpp @@ -225,11 +225,10 @@ void MarlinUI::draw_status_screen() { TERN_(TOUCH_SCREEN, touch.clear()); - // heaters and fan - uint16_t i, x, y = TFT_STATUS_TOP_Y; - - for (i = 0 ; i < ITEMS_COUNT; i++) { - x = (TFT_WIDTH / ITEMS_COUNT - 80) / 2 + (TFT_WIDTH * i / ITEMS_COUNT); + // Statuses of heaters and fans + uint16_t y = TFT_STATUS_TOP_Y; + for (uint16_t i = 0 ; i < ITEMS_COUNT; i++) { + const uint16_t x = (TFT_WIDTH / ITEMS_COUNT - 80) / 2 + (TFT_WIDTH * i / ITEMS_COUNT); switch (i) { #if HAS_EXTRUDERS case ITEM_E0: draw_heater_status(x, y, H_E0); break; @@ -257,7 +256,7 @@ void MarlinUI::draw_status_screen() { y += 200; - // coordinates + // Coordinates tft.canvas(4, y, TFT_WIDTH - 8, FONT_LINE_HEIGHT); tft.set_background(COLOR_BACKGROUND); tft.add_rectangle(0, 0, TFT_WIDTH - 8, FONT_LINE_HEIGHT, COLOR_AXIS_HOMED); @@ -315,7 +314,7 @@ void MarlinUI::draw_status_screen() { TERN_(TOUCH_SCREEN, touch.add_control(MOVE_AXIS, 4, y, TFT_WIDTH - 8, FONT_LINE_HEIGHT)); y += 100; - // feed rate + // Feed rate tft.canvas(274, y, 128, 32); tft.set_background(COLOR_BACKGROUND); uint16_t color = feedrate_percentage == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; @@ -349,7 +348,7 @@ void MarlinUI::draw_status_screen() { #endif y += 100; - // print duration + // Print duration char buffer[14]; duration_t elapsed = print_job_timer.duration(); elapsed.toDigital(buffer); @@ -360,7 +359,7 @@ void MarlinUI::draw_status_screen() { tft.add_text(tft_string.center(128), 0, COLOR_PRINT_TIME, tft_string); y += 50; - // progress bar + // Progress bar const uint8_t progress = ui.get_progress_percent(); tft.canvas(4, y, TFT_WIDTH - 8, 9); tft.set_background(COLOR_PROGRESS_BG); @@ -369,7 +368,7 @@ void MarlinUI::draw_status_screen() { tft.add_bar(1, 1, ((TFT_WIDTH - 10) * progress) / 100, 7, COLOR_PROGRESS_BAR); y += 50; - // status message + // Status message tft.canvas(0, y, TFT_WIDTH, FONT_LINE_HEIGHT); tft.set_background(COLOR_BACKGROUND); tft_string.set(status_message); @@ -736,29 +735,28 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { probe.offset.z = new_offs; else TERN(BABYSTEP_HOTEND_Z_OFFSET, hotend_offset[active_extruder].z = new_offs, NOOP); - drawMessage(F("")); // clear the error + drawMessage(F("")); // Clear the error drawAxisValue(axis); } else drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); #else - // only change probe.offset.z + // Only change probe.offset.z probe.offset.z += diff; - if (direction < 0 && current_position[axis] < Z_PROBE_OFFSET_RANGE_MIN) { - current_position[axis] = Z_PROBE_OFFSET_RANGE_MIN; + if (direction < 0 && current_position.z < Z_PROBE_OFFSET_RANGE_MIN) { + current_position.z = Z_PROBE_OFFSET_RANGE_MIN; drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); } - else if (direction > 0 && current_position[axis] > Z_PROBE_OFFSET_RANGE_MAX) { - current_position[axis] = Z_PROBE_OFFSET_RANGE_MAX; + else if (direction > 0 && current_position.z > Z_PROBE_OFFSET_RANGE_MAX) { + current_position.z = Z_PROBE_OFFSET_RANGE_MAX; drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); } else - drawMessage(F("")); // clear the error + drawMessage(F("")); // Clear the error drawAxisValue(axis); #endif - return; } #endif // HAS_BED_PROBE @@ -854,9 +852,9 @@ static void disable_steppers() { queue.inject(F("M84")); } -static void drawBtn(int x, int y, const char *label, intptr_t data, MarlinImage img, uint16_t bgColor, bool enabled = true) { - const uint16_t width = Images[imgBtn52Rounded].width, - height = Images[imgBtn52Rounded].height; +static void drawBtn(const int x, const int y, const char *label, intptr_t data, const MarlinImage img, uint16_t bgColor, const bool enabled=true) { + const uint16_t width = images[imgBtn52Rounded].width, + height = images[imgBtn52Rounded].height; if (!enabled) bgColor = COLOR_CONTROL_DISABLED; @@ -870,9 +868,8 @@ static void drawBtn(int x, int y, const char *label, intptr_t data, MarlinImage tft_string.trim(); tft.add_text(tft_string.center(width), height / 2 - tft_string.font_height() / 2, bgColor, tft_string); } - else { + else tft.add_image(0, 0, img, bgColor, COLOR_BACKGROUND, COLOR_DARKGREY); - } TERN_(TOUCH_SCREEN, if (enabled) touch.add_control(BUTTON, x, y, width, height, data)); } @@ -914,7 +911,7 @@ void MarlinUI::move_axis_screen() { x += spacing; #if HAS_Z_AXIS - drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have baby step #endif // ROW 2 -> "Ex" X- HOME X+ "Z" @@ -935,11 +932,11 @@ void MarlinUI::move_axis_screen() { x += BTN_WIDTH + spacing; //imgHome is 64x64 #if ALL(HAS_X_AXIS, TOUCH_SCREEN) - add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy); + add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy); #endif x += BTN_WIDTH + spacing; - uint16_t xplus_x = x; + const uint16_t xplus_x = x; TERN_(HAS_X_AXIS, drawBtn(x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy)); @@ -965,16 +962,20 @@ void MarlinUI::move_axis_screen() { TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); #endif + // Cur X #if HAS_X_AXIS motionAxisState.xValuePos.set(BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4, y - 10); drawAxisValue(X_AXIS); #endif x += BTN_WIDTH + spacing; + + // Cur Y TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); x += BTN_WIDTH + spacing; + // Cur Z #if HAS_Z_AXIS drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have babystep motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); @@ -990,10 +991,10 @@ void MarlinUI::move_axis_screen() { TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, x, y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); } - // aligned with x+ + // Aligned with x+ drawBtn(xplus_x, TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); } -#endif // HAS_UI_480x320 +#endif // HAS_UI_1024x600 diff --git a/Marlin/src/lcd/tft/ui_320x240.cpp b/Marlin/src/lcd/tft/ui_320x240.cpp index 8409b550a145..c39d22651711 100644 --- a/Marlin/src/lcd/tft/ui_320x240.cpp +++ b/Marlin/src/lcd/tft/ui_320x240.cpp @@ -227,11 +227,10 @@ void MarlinUI::draw_status_screen() { TERN_(TOUCH_SCREEN, touch.clear()); - // heaters and fan - uint16_t i, x, y = TFT_STATUS_TOP_Y; - - for (i = 0 ; i < ITEMS_COUNT; i++) { - x = (TFT_WIDTH / ITEMS_COUNT - 64) / 2 + (TFT_WIDTH * i / ITEMS_COUNT); + // Statuses of heaters and fans + const uint16_t y = TFT_STATUS_TOP_Y; + for (uint16_t i = 0 ; i < ITEMS_COUNT; i++) { + const uint16_t x = (TFT_WIDTH / ITEMS_COUNT - 64) / 2 + (TFT_WIDTH * i / ITEMS_COUNT); switch (i) { #if HAS_EXTRUDERS case ITEM_E0: draw_heater_status(x, y, H_E0); break; @@ -257,27 +256,16 @@ void MarlinUI::draw_status_screen() { } } - // coordinates - tft.canvas(4, 103, - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 232, FONT_LINE_HEIGHT * 2 - #else - 312, FONT_LINE_HEIGHT - #endif - ); + // 2nd horizontal group - current coordinates (height = 24, top margin = 3) + uint16_t width = TERN(TFT_COLOR_UI_PORTRAIT, 232, 312), + height = FONT_LINE_HEIGHT * TERN(TFT_COLOR_UI_PORTRAIT, 2, 1); + tft.canvas(4, 103, width, height); tft.set_background(COLOR_BACKGROUND); - tft.add_rectangle(0, 0, - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 232, FONT_LINE_HEIGHT * 2 - #else - 312, FONT_LINE_HEIGHT - #endif - , COLOR_AXIS_HOMED - ); + tft.add_rectangle(0, 0, width, height, COLOR_AXIS_HOMED); if (TERN0(LCD_SHOW_E_TOTAL, printingIsActive())) { #if ENABLED(LCD_SHOW_E_TOTAL) - tft.add_text( 10, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "E"); + tft.add_text(10, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "E"); const uint8_t escale = e_move_accumulator >= 100000.0f ? 10 : 1; // After 100m switch to cm tft_string.set(ftostr4sign(e_move_accumulator / escale)); tft_string.add(escale == 10 ? 'c' : 'm'); @@ -347,7 +335,7 @@ void MarlinUI::draw_status_screen() { #endif )); - // feed rate + // Feed rate tft.canvas( #if ENABLED(TFT_COLOR_UI_PORTRAIT) 30, 172, 80 @@ -397,7 +385,7 @@ void MarlinUI::draw_status_screen() { )); #endif // HAS_EXTRUDERS - // print duration + // Print duration char buffer[14]; duration_t elapsed = print_job_timer.duration(); elapsed.toDigital(buffer); @@ -414,7 +402,7 @@ void MarlinUI::draw_status_screen() { tft_string.set(buffer); tft.add_text(tft_string.center(128), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_PRINT_TIME, tft_string); - // progress bar + // Progress bar const uint8_t progress = ui.get_progress_percent(); tft.canvas( #if ENABLED(TFT_COLOR_UI_PORTRAIT) @@ -436,7 +424,7 @@ void MarlinUI::draw_status_screen() { if (progress) tft.add_bar(1, 1, ((TFT_WIDTH - 10) * progress) / 100, 7, COLOR_PROGRESS_BAR); - // status message + // Status message tft.canvas( #if ENABLED(TFT_COLOR_UI_PORTRAIT) 0, 296, 240 @@ -828,29 +816,28 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { probe.offset.z = new_offs; else TERN(BABYSTEP_HOTEND_Z_OFFSET, hotend_offset[active_extruder].z = new_offs, NOOP); - drawMessage(NUL_STR); // clear the error + drawMessage(NUL_STR); // Clear the error drawAxisValue(axis); } else drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); #else - // only change probe.offset.z + // Only change probe.offset.z probe.offset.z += diff; - if (direction < 0 && current_position[axis] < Z_PROBE_OFFSET_RANGE_MIN) { - current_position[axis] = Z_PROBE_OFFSET_RANGE_MIN; + if (direction < 0 && current_position.z < Z_PROBE_OFFSET_RANGE_MIN) { + current_position.z = Z_PROBE_OFFSET_RANGE_MIN; drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); } - else if (direction > 0 && current_position[axis] > Z_PROBE_OFFSET_RANGE_MAX) { - current_position[axis] = Z_PROBE_OFFSET_RANGE_MAX; + else if (direction > 0 && current_position.z > Z_PROBE_OFFSET_RANGE_MAX) { + current_position.z = Z_PROBE_OFFSET_RANGE_MAX; drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); } else - drawMessage(NUL_STR); // clear the error + drawMessage(NUL_STR); // Clear the error drawAxisValue(axis); #endif - return; } #endif // HAS_BED_PROBE @@ -947,9 +934,9 @@ static void disable_steppers() { queue.inject(F("M84")); } -static void drawBtn(int x, int y, const char *label, intptr_t data, MarlinImage img, uint16_t bgColor, bool enabled = true) { - const uint16_t width = Images[imgBtn39Rounded].width, - height = Images[imgBtn39Rounded].height; +static void drawBtn(const int x, const int y, const char *label, intptr_t data, const MarlinImage img, uint16_t bgColor, const bool enabled=true) { + const uint16_t width = images[imgBtn39Rounded].width, + height = images[imgBtn39Rounded].height; if (!enabled) bgColor = COLOR_CONTROL_DISABLED; @@ -1003,7 +990,7 @@ void MarlinUI::move_axis_screen() { uint16_t zplus_x = x; #if HAS_Z_AXIS - drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have baby step #endif // ROW 2 -> "Ex" CurY "Z" @@ -1032,7 +1019,7 @@ void MarlinUI::move_axis_screen() { #if HAS_X_AXIS drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy); - TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); drawBtn(zplus_x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy); #endif @@ -1080,7 +1067,7 @@ void MarlinUI::move_axis_screen() { TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); } - // aligned with x+ + // Aligned with x+ drawBtn(yplus_x, y, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); #else // !TFT_COLOR_UI_PORTRAIT @@ -1127,11 +1114,11 @@ void MarlinUI::move_axis_screen() { x += BTN_WIDTH + spacing; //imgHome is 64x64 #if ALL(HAS_X_AXIS, TOUCH_SCREEN) - add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy); + add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy); #endif x += BTN_WIDTH + spacing; - uint16_t xplus_x = x; + const uint16_t xplus_x = x; TERN_(HAS_X_AXIS, drawBtn(x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy)); @@ -1157,6 +1144,7 @@ void MarlinUI::move_axis_screen() { TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); #endif + // Cur X #if HAS_X_AXIS motionAxisState.xValuePos.set(BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4, y - 10); drawAxisValue(X_AXIS); @@ -1164,15 +1152,14 @@ void MarlinUI::move_axis_screen() { x += BTN_WIDTH + spacing; + // Cur Y TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); x += BTN_WIDTH + spacing; + // Cur Z #if HAS_Z_AXIS drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step - #endif - - #if HAS_Z_AXIS motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); drawAxisValue(Z_AXIS); #endif @@ -1186,7 +1173,7 @@ void MarlinUI::move_axis_screen() { TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); } - // aligned with x+ + // Aligned with x+ drawBtn(xplus_x, y, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); #endif // !TFT_COLOR_UI_PORTRAIT diff --git a/Marlin/src/lcd/tft/ui_480x320.cpp b/Marlin/src/lcd/tft/ui_480x320.cpp index 9b23577c46b6..14d7da7ee43d 100644 --- a/Marlin/src/lcd/tft/ui_480x320.cpp +++ b/Marlin/src/lcd/tft/ui_480x320.cpp @@ -264,7 +264,7 @@ void MarlinUI::draw_status_screen() { if (TERN0(LCD_SHOW_E_TOTAL, printingIsActive())) { #if ENABLED(LCD_SHOW_E_TOTAL) - tft.add_text( 16, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "E"); + tft.add_text(16, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "E"); const uint8_t escale = e_move_accumulator >= 100000.0f ? 10 : 1; // After 100m switch to cm tft_string.set(ftostr4sign(e_move_accumulator / escale)); tft_string.add(escale == 10 ? 'c' : 'm'); @@ -745,29 +745,28 @@ static void moveAxis(const AxisEnum axis, const int8_t direction) { probe.offset.z = new_offs; else TERN(BABYSTEP_HOTEND_Z_OFFSET, hotend_offset[active_extruder].z = new_offs, NOOP); - drawMessage(NUL_STR); // clear the error + drawMessage(NUL_STR); // Clear the error drawAxisValue(axis); } else drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); #else - // only change probe.offset.z + // Only change probe.offset.z probe.offset.z += diff; - if (direction < 0 && current_position[axis] < Z_PROBE_OFFSET_RANGE_MIN) { - current_position[axis] = Z_PROBE_OFFSET_RANGE_MIN; + if (direction < 0 && current_position.z < Z_PROBE_OFFSET_RANGE_MIN) { + current_position.z = Z_PROBE_OFFSET_RANGE_MIN; drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); } - else if (direction > 0 && current_position[axis] > Z_PROBE_OFFSET_RANGE_MAX) { - current_position[axis] = Z_PROBE_OFFSET_RANGE_MAX; + else if (direction > 0 && current_position.z > Z_PROBE_OFFSET_RANGE_MAX) { + current_position.z = Z_PROBE_OFFSET_RANGE_MAX; drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); } else - drawMessage(NUL_STR); // clear the error + drawMessage(NUL_STR); // Clear the error drawAxisValue(axis); #endif - return; } #endif // HAS_BED_PROBE @@ -863,9 +862,9 @@ static void disable_steppers() { queue.inject(F("M84")); } -static void drawBtn(int x, int y, const char *label, intptr_t data, MarlinImage img, uint16_t bgColor, bool enabled = true) { - const uint16_t width = Images[imgBtn52Rounded].width, - height = Images[imgBtn52Rounded].height; +static void drawBtn(const int x, const int y, const char *label, intptr_t data, const MarlinImage img, uint16_t bgColor, const bool enabled=true) { + const uint16_t width = images[imgBtn52Rounded].width, + height = images[imgBtn52Rounded].height; if (!enabled) bgColor = COLOR_CONTROL_DISABLED; @@ -953,7 +952,7 @@ void MarlinUI::move_axis_screen() { #if HAS_X_AXIS drawBtn(TFT_WIDTH / 6 - BTN_WIDTH / 2, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy); - TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); drawBtn(TFT_WIDTH * 5 / 6 - BTN_WIDTH / 2, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy); #endif @@ -1018,7 +1017,7 @@ void MarlinUI::move_axis_screen() { drawBtn(TFT_WIDTH / 2, y, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); // Button "Back" - TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH * 5 / 6 - Images[imgBack].width / 2, y + 12, BACK, imgBack)); + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH * 5 / 6 - images[imgBack].width / 2, y + 12, BACK, imgBack)); #else // !TFT_COLOR_UI_PORTRAIT @@ -1042,7 +1041,7 @@ void MarlinUI::move_axis_screen() { x += spacing; #if HAS_Z_AXIS - drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step + drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have baby step #endif // ROW 2 -> "Ex" X- HOME X+ "Z" @@ -1063,11 +1062,11 @@ void MarlinUI::move_axis_screen() { x += BTN_WIDTH + spacing; //imgHome is 64x64 #if ALL(HAS_X_AXIS, TOUCH_SCREEN) - add_control(TFT_WIDTH / 2 - Images[imgHome].width / 2, y - (Images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy); + add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy); #endif x += BTN_WIDTH + spacing; - uint16_t xplus_x = x; + const uint16_t xplus_x = x; TERN_(HAS_X_AXIS, drawBtn(x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy)); @@ -1092,21 +1091,22 @@ void MarlinUI::move_axis_screen() { drawAxisValue(E_AXIS); #endif + // Cur X #if HAS_X_AXIS motionAxisState.xValuePos.set(BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4, y - 10); TERN_(HAS_X_AXIS, drawAxisValue(X_AXIS)); #endif x += BTN_WIDTH + spacing; + + // Cur Y TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); x += BTN_WIDTH + spacing; - #if HAS_Z_AXIS - drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step - #endif // Cur Z #if HAS_Z_AXIS + drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); drawAxisValue(Z_AXIS); #endif @@ -1120,7 +1120,7 @@ void MarlinUI::move_axis_screen() { TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); } - // aligned with x+ + // Aligned with x+ drawBtn(xplus_x, TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); From a58e530f921e6197089a678d4a667cf3a10de3bc Mon Sep 17 00:00:00 2001 From: narno2202 <130909513+narno2202@users.noreply.github.com> Date: Fri, 23 Jun 2023 11:52:10 +0200 Subject: [PATCH 313/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20'M493=20S12'=20(#2?= =?UTF-8?q?6007)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/feature/ft_motion/M493.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/Marlin/src/gcode/feature/ft_motion/M493.cpp b/Marlin/src/gcode/feature/ft_motion/M493.cpp index 413c63dfca08..e3231480f330 100644 --- a/Marlin/src/gcode/feature/ft_motion/M493.cpp +++ b/Marlin/src/gcode/feature/ft_motion/M493.cpp @@ -169,6 +169,7 @@ void GcodeSuite::M493() { #if HAS_X_AXIS case ftMotionMode_ZV: case ftMotionMode_ZVD: + case ftMotionMode_EI: case ftMotionMode_2HEI: case ftMotionMode_3HEI: case ftMotionMode_MZV: From 2218bab542c839f4d1d09640f7c7a1444e38a23b Mon Sep 17 00:00:00 2001 From: mjbogusz Date: Fri, 23 Jun 2023 11:56:34 +0200 Subject: [PATCH 314/427] =?UTF-8?q?=F0=9F=9A=B8=20Color=20UI=20remaining?= =?UTF-8?q?=20time=20(#24843)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/marlinui.h | 19 +- Marlin/src/lcd/tft/bitmaps/time_elapsed.bmp | Bin 0 -> 3126 bytes Marlin/src/lcd/tft/bitmaps/time_elapsed.svg | 190 ++++++++++++++ Marlin/src/lcd/tft/bitmaps/time_remaining.bmp | Bin 0 -> 3126 bytes Marlin/src/lcd/tft/bitmaps/time_remaining.svg | 189 ++++++++++++++ .../lcd/tft/images/time_elapsed_32x32x4.cpp | 57 ++++ .../lcd/tft/images/time_remaining_32x32x4.cpp | 57 ++++ Marlin/src/lcd/tft/tft_image.cpp | 4 + Marlin/src/lcd/tft/tft_image.h | 7 + Marlin/src/lcd/tft/ui_1024x600.cpp | 113 ++++++-- Marlin/src/lcd/tft/ui_320x240.cpp | 247 ++++++++++-------- Marlin/src/lcd/tft/ui_320x240.h | 1 + Marlin/src/lcd/tft/ui_480x320.cpp | 131 +++++++--- Marlin/src/libs/duration_t.h | 33 +++ 14 files changed, 886 insertions(+), 162 deletions(-) create mode 100644 Marlin/src/lcd/tft/bitmaps/time_elapsed.bmp create mode 100644 Marlin/src/lcd/tft/bitmaps/time_elapsed.svg create mode 100644 Marlin/src/lcd/tft/bitmaps/time_remaining.bmp create mode 100644 Marlin/src/lcd/tft/bitmaps/time_remaining.svg create mode 100644 Marlin/src/lcd/tft/images/time_elapsed_32x32x4.cpp create mode 100644 Marlin/src/lcd/tft/images/time_remaining_32x32x4.cpp diff --git a/Marlin/src/lcd/marlinui.h b/Marlin/src/lcd/marlinui.h index f811545ef66b..6e0205bdfb32 100644 --- a/Marlin/src/lcd/marlinui.h +++ b/Marlin/src/lcd/marlinui.h @@ -297,16 +297,17 @@ class MarlinUI { } #endif + #if HAS_PRINT_PROGRESS_PERMYRIAD + typedef uint16_t progress_t; + #define PROGRESS_SCALE 100U + #define PROGRESS_MASK 0x7FFF + #else + typedef uint8_t progress_t; + #define PROGRESS_SCALE 1U + #define PROGRESS_MASK 0x7F + #endif + #if HAS_PRINT_PROGRESS - #if HAS_PRINT_PROGRESS_PERMYRIAD - typedef uint16_t progress_t; - #define PROGRESS_SCALE 100U - #define PROGRESS_MASK 0x7FFF - #else - typedef uint8_t progress_t; - #define PROGRESS_SCALE 1U - #define PROGRESS_MASK 0x7F - #endif #if ENABLED(SET_PROGRESS_PERCENT) static progress_t progress_override; static void set_progress(const progress_t p) { progress_override = _MIN(p, 100U * (PROGRESS_SCALE)); } diff --git a/Marlin/src/lcd/tft/bitmaps/time_elapsed.bmp b/Marlin/src/lcd/tft/bitmaps/time_elapsed.bmp new file mode 100644 index 0000000000000000000000000000000000000000..6bb4b1a43949a1fa5f7d53bf943f3b3289dad7d3 GIT binary patch literal 3126 zcmd6pS4*`=5Xa4Za-Yjw<`cXhAouwI$KHGI-PjPjV!mVI_-{xdt}zvri)zkKWR`}o5ABflU1_^;w6uTk7a$1<3F+zS0+o}K)6vn9l$2z%*#ZIrWD}YA z`1pTdE-o(4)zuX!W)Pa1nqFUDKR!O5pPv&G6W!h2!HFGTF>ga-!)B^@d+3z8cc80g{QLE|eS*vVvMWKdni zmO%vIBI=enTjgO7l8XQ{YehhY^5$L~(VMz&T@(})?C$Qaudny^_7V^&v)_!_Y&3Xq za4@!NYin0mS8Hl&*u;dW^ZE4jMDUq0if>j}SyxwAKRi50f?i%;?(grRql=3Rx{Ra9 z$VdPI7XfB5A-Y&3;zzP>)%3YE>xO~r>Et&9iB%+Jp=o5;F@8?fcx-X1K3B%bJzEOvHw z6rXaUVC)3o1dLKeLTGlUpMU1%<>>{nLa8vUDwH3UPZja}k*vSfzu@%r^r-Xa=jR{* zXvL?wL;ya7@SzCn>E~<8o1`c{PlH(`CnqN=fb*2x=a_m*M_Vh9B0<;MTp~$+1^@E$ zlE(rDpkJVLY?*8zDm-NLJ9$^fSWp0FW|4Hmy(haKBJN+U^?NfUYDI5#k KIjQwui~S0-sSqLn literal 0 HcmV?d00001 diff --git a/Marlin/src/lcd/tft/bitmaps/time_elapsed.svg b/Marlin/src/lcd/tft/bitmaps/time_elapsed.svg new file mode 100644 index 000000000000..da2d37b56b6f --- /dev/null +++ b/Marlin/src/lcd/tft/bitmaps/time_elapsed.svg @@ -0,0 +1,190 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Marlin/src/lcd/tft/bitmaps/time_remaining.bmp b/Marlin/src/lcd/tft/bitmaps/time_remaining.bmp new file mode 100644 index 0000000000000000000000000000000000000000..36e40c9c5735586049037c64d3d3a75a0a7ba300 GIT binary patch literal 3126 zcmd6p$4XsM6ozl+$vndh^8`LX=6L{nSM0sFr~|QAuqz@ec2TflK~zL^V8bAG6hssR zQL*2AWF?EkIhX4tfsh0Du+QHA{@2?7D*Jx<>h|9D^Ks+-nct^hzjwBejCff8{y}~+ zVY7YvZ=Uq@^nic>PfyRlz`%@*jKB8_lBA@h%*;%o%FD}ZZ*NaYNpW{~4-O8NNid0t ziGN@&AtAxT!viYbFf=taJwHF&?e@pV$K>Q>FE20n1oB(*VjizM!w09&i?-X zctX4`E-u)9dU{IQ_&& zva%A9tw^0AOr@ozyqUp`mX?-^iVEU|6>CPRCfnQF@P~zkDbJe&OmI?>i`cQPd2RBQ!<^j)^lQ26@G*JTwPv znHb~~JUt41cpD`m?#s)|loAXWf-@u}#M|4OPr6w_LBYVlz}D8*=H@0#Ok&X?KSFhM zbdXD6Fd>+po*s=(RaF(%X+E{Jwe$1yRKe5J)9vl86z}Wn>-F_D(Z{rvpDL3c#Tyey zA()+=9p&HH*f2H+o!7zr{e442gG2wRZiRJrc5-mxUszbs`IVIw{4Xgf85$Z|Uthnv zy26>eyF2y&=H`aeIn>|iKT%fwv8DWQBAqlGv5xq({kgfh{r&yDy*&!ns*KK{Dp`af zoncT@Q=|MGpZXJ==^Ks4EFDq&hBxu+)R?O-Sb7flc&-HRcI{YM+1AVnn+ zDl03?>afhj#KfQ^f@_jK-Vu+-rE{vroR`B0phB%>ezC;6|NAVYqBt&-S;D5aO1E+@z9smFU literal 0 HcmV?d00001 diff --git a/Marlin/src/lcd/tft/bitmaps/time_remaining.svg b/Marlin/src/lcd/tft/bitmaps/time_remaining.svg new file mode 100644 index 000000000000..ff4cdb8e24d4 --- /dev/null +++ b/Marlin/src/lcd/tft/bitmaps/time_remaining.svg @@ -0,0 +1,189 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Marlin/src/lcd/tft/images/time_elapsed_32x32x4.cpp b/Marlin/src/lcd/tft/images/time_elapsed_32x32x4.cpp new file mode 100644 index 000000000000..e6626f4c876b --- /dev/null +++ b/Marlin/src/lcd/tft/images/time_elapsed_32x32x4.cpp @@ -0,0 +1,57 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2022 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + **/ + +#include "../../../inc/MarlinConfigPre.h" + +#if HAS_GRAPHICAL_TFT + +extern const uint8_t time_elapsed_32x32x4[512] = { + 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0xad, 0xca, 0x98, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x8a, 0xff, 0xff, 0xfe, 0xb8, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0xce, 0xc8, 0x8d, 0xff, 0xff, 0xff, 0xff, 0xd8, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x8a, 0xff, 0xfa, 0x6a, 0xff, 0xff, 0xff, 0xff, 0xff, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x8a, 0xff, 0xfa, 0x58, 0x9d, 0xcd, 0xff, 0xff, 0xff, 0xf9, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0xdf, 0xe6, 0x58, 0x85, 0x55, 0x69, 0xff, 0xff, 0xff, 0x88, 0x88, 0x88, + 0x88, 0x88, 0xbb, 0x88, 0x66, 0x55, 0x68, 0x88, 0x88, 0x76, 0x6b, 0xff, 0xff, 0xf6, 0x88, 0x88, + 0x88, 0x8c, 0xff, 0xe6, 0x87, 0x67, 0x88, 0x88, 0x88, 0x88, 0x86, 0x9f, 0xff, 0xfd, 0x68, 0x88, + 0x88, 0x8e, 0xff, 0xf7, 0x68, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x8b, 0xff, 0xff, 0x67, 0x88, + 0x88, 0x8b, 0xff, 0xd5, 0x68, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0xff, 0xff, 0xb6, 0x88, + 0x88, 0x88, 0x89, 0x65, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0xaf, 0xff, 0xe5, 0x88, + 0x88, 0x88, 0x76, 0x56, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x8f, 0xff, 0xf7, 0x78, + 0x88, 0x9c, 0x98, 0x88, 0x88, 0x88, 0x88, 0x9e, 0xdb, 0x98, 0x88, 0x88, 0x8d, 0xff, 0xf8, 0x68, + 0x89, 0xff, 0xf8, 0x88, 0x88, 0x88, 0x89, 0xff, 0xff, 0xff, 0xec, 0xa9, 0x8d, 0xff, 0xfa, 0x68, + 0x8b, 0xff, 0xfa, 0x68, 0x88, 0x88, 0x8c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xad, 0xff, 0xfd, 0x58, + 0x89, 0xff, 0xf7, 0x58, 0x88, 0x88, 0x89, 0xff, 0xff, 0xff, 0xeb, 0x96, 0x59, 0xff, 0xf9, 0x58, + 0x88, 0x89, 0x75, 0x68, 0x88, 0x88, 0x88, 0x8d, 0xda, 0x86, 0x55, 0x55, 0x67, 0x9c, 0x95, 0x58, + 0x88, 0x86, 0x56, 0x88, 0x88, 0x88, 0x88, 0x86, 0x55, 0x56, 0x67, 0x88, 0x88, 0x75, 0x55, 0x78, + 0x88, 0x88, 0xbb, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x8b, 0xa8, 0x88, 0x88, + 0x88, 0x8c, 0xff, 0xe6, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0xef, 0xfb, 0x78, 0x88, + 0x88, 0x8e, 0xff, 0xf6, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0xff, 0xfd, 0x58, 0x88, + 0x88, 0x8b, 0xff, 0xd5, 0x68, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0xef, 0xfa, 0x57, 0x88, + 0x88, 0x88, 0x89, 0x65, 0x79, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x89, 0x95, 0x58, 0x88, + 0x88, 0x88, 0x76, 0x58, 0xef, 0xe8, 0x88, 0x88, 0x88, 0x88, 0xef, 0xd8, 0x86, 0x55, 0x78, 0x88, + 0x88, 0x88, 0x88, 0x8b, 0xff, 0xf9, 0x68, 0x9b, 0x98, 0x8b, 0xff, 0xf9, 0x68, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x8a, 0xff, 0xf8, 0x59, 0xff, 0xf8, 0x8b, 0xff, 0xf8, 0x58, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0xad, 0xa5, 0x5b, 0xff, 0xf9, 0x68, 0xbe, 0xa5, 0x68, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0x75, 0x55, 0x79, 0xff, 0xf7, 0x58, 0x75, 0x55, 0x78, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0x88, 0x78, 0x88, 0x8a, 0x75, 0x68, 0x88, 0x78, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x86, 0x56, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, +}; +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/time_remaining_32x32x4.cpp b/Marlin/src/lcd/tft/images/time_remaining_32x32x4.cpp new file mode 100644 index 000000000000..8c64403a2bb3 --- /dev/null +++ b/Marlin/src/lcd/tft/images/time_remaining_32x32x4.cpp @@ -0,0 +1,57 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2022 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + **/ + +#include "../../../inc/MarlinConfigPre.h" + +#if HAS_GRAPHICAL_TFT + +extern const uint8_t time_remaining_32x32x4[512] = { + 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x9a, 0xbd, 0xb8, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0x89, 0xce, 0xff, 0xff, 0xf9, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0xef, 0xff, 0xff, 0xff, 0xfd, 0x58, 0xbe, 0xb8, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xf9, 0x5a, 0xff, 0xf9, 0x78, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x8a, 0xff, 0xff, 0xff, 0xfd, 0xcd, 0x95, 0x5b, 0xff, 0xfa, 0x58, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x9f, 0xff, 0xff, 0xf9, 0x65, 0x55, 0x55, 0x78, 0xef, 0xe6, 0x58, 0x88, 0x88, 0x88, + 0x88, 0x88, 0xff, 0xff, 0xfb, 0x55, 0x56, 0x78, 0x88, 0x88, 0x67, 0x55, 0x6a, 0x98, 0x88, 0x88, + 0x88, 0x8e, 0xff, 0xff, 0x95, 0x56, 0x88, 0x88, 0x88, 0x88, 0x86, 0x66, 0xdf, 0xfa, 0x78, 0x88, + 0x88, 0x9f, 0xff, 0xfb, 0x55, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0xff, 0xfe, 0x58, 0x88, + 0x88, 0xcf, 0xff, 0xf5, 0x57, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0xef, 0xfc, 0x57, 0x88, + 0x88, 0xef, 0xff, 0x95, 0x68, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x8b, 0xa6, 0x57, 0x88, + 0x89, 0xff, 0xff, 0x65, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x86, 0x55, 0x68, 0x88, + 0x8a, 0xff, 0xfd, 0x56, 0x88, 0x88, 0xac, 0xdd, 0x88, 0x88, 0x88, 0x88, 0x88, 0x9b, 0x98, 0x88, + 0x8c, 0xff, 0xfc, 0x58, 0xbd, 0xef, 0xff, 0xff, 0xf7, 0x88, 0x88, 0x88, 0x89, 0xff, 0xf8, 0x88, + 0x8d, 0xff, 0xfd, 0xaf, 0xff, 0xff, 0xff, 0xff, 0xf9, 0x68, 0x88, 0x88, 0x8b, 0xff, 0xfa, 0x68, + 0x8a, 0xff, 0xf9, 0x57, 0x9c, 0xef, 0xff, 0xff, 0xf6, 0x58, 0x88, 0x88, 0x89, 0xff, 0xf8, 0x58, + 0x88, 0x9c, 0x85, 0x57, 0x65, 0x56, 0x8a, 0xdd, 0x75, 0x68, 0x88, 0x88, 0x88, 0x8a, 0x85, 0x68, + 0x88, 0x75, 0x55, 0x88, 0x88, 0x87, 0x66, 0x55, 0x56, 0x88, 0x88, 0x88, 0x88, 0x86, 0x56, 0x88, + 0x88, 0x88, 0xbb, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x8b, 0xa8, 0x88, 0x88, + 0x88, 0x8c, 0xff, 0xe6, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0xef, 0xfb, 0x78, 0x88, + 0x88, 0x8e, 0xff, 0xf6, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0xff, 0xfd, 0x58, 0x88, + 0x88, 0x8b, 0xff, 0xd5, 0x68, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0xef, 0xfa, 0x57, 0x88, + 0x88, 0x88, 0x89, 0x65, 0x79, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x89, 0x95, 0x58, 0x88, + 0x88, 0x88, 0x76, 0x58, 0xef, 0xe8, 0x88, 0x88, 0x88, 0x88, 0xef, 0xd8, 0x86, 0x55, 0x78, 0x88, + 0x88, 0x88, 0x88, 0x8b, 0xff, 0xf9, 0x68, 0x9b, 0x98, 0x8b, 0xff, 0xf9, 0x68, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x8a, 0xff, 0xf8, 0x59, 0xff, 0xf8, 0x8b, 0xff, 0xf8, 0x58, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0xad, 0xa5, 0x5b, 0xff, 0xf9, 0x68, 0xbe, 0xa5, 0x68, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0x75, 0x55, 0x79, 0xff, 0xf7, 0x58, 0x75, 0x55, 0x78, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0x88, 0x78, 0x88, 0x8a, 0x75, 0x68, 0x88, 0x78, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x86, 0x56, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, +}; +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/tft_image.cpp b/Marlin/src/lcd/tft/tft_image.cpp index 507b5f582c7a..6309de032ebb 100644 --- a/Marlin/src/lcd/tft/tft_image.cpp +++ b/Marlin/src/lcd/tft/tft_image.cpp @@ -72,6 +72,8 @@ const tImage Left_32x32x4 = { (void *)left_32x32x4, 32, 32, GREYSCALE4 const tImage Right_32x32x4 = { (void *)right_32x32x4, 32, 32, GREYSCALE4 }; const tImage Refresh_32x32x4 = { (void *)refresh_32x32x4, 32, 32, GREYSCALE4 }; const tImage Leveling_32x32x4 = { (void *)leveling_32x32x4, 32, 32, GREYSCALE4 }; +const tImage Time_Elapsed_32x32x4 = { (void *)time_elapsed_32x32x4, 32, 32, GREYSCALE4 }; +const tImage Time_Remaining_32x32x4 = { (void *)time_remaining_32x32x4, 32, 32, GREYSCALE4 }; const tImage Slider8x16x4 = { (void *)slider_8x16x4, 8, 16, GREYSCALE4 }; @@ -108,6 +110,8 @@ const tImage images[imgCount] = { Home_64x64x4, BtnRounded_64x52x4, BtnRounded_42x39x4, + Time_Elapsed_32x32x4, + Time_Remaining_32x32x4, }; #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/tft_image.h b/Marlin/src/lcd/tft/tft_image.h index d202e3d0f61a..7761a72dc34e 100644 --- a/Marlin/src/lcd/tft/tft_image.h +++ b/Marlin/src/lcd/tft/tft_image.h @@ -61,6 +61,8 @@ extern const uint8_t left_32x32x4[]; extern const uint8_t right_32x32x4[]; extern const uint8_t refresh_32x32x4[]; extern const uint8_t leveling_32x32x4[]; +extern const uint8_t time_elapsed_32x32x4[]; +extern const uint8_t time_remaining_32x32x4[]; extern const uint8_t slider_8x16x4[]; @@ -97,6 +99,9 @@ enum MarlinImage : uint8_t { imgHome, imgBtn52Rounded, imgBtn39Rounded, + imgTimeElapsed, + imgTimeRemaining, + // Special values - must be at the end! imgCount, noImage = imgCount, imgPageUp = imgLeft, @@ -172,6 +177,8 @@ extern const tImage Left_32x32x4; extern const tImage Right_32x32x4; extern const tImage Refresh_32x32x4; extern const tImage Leveling_32x32x4; +extern const tImage Time_Elapsed_32x32x4; +extern const tImage Time_Remaining_32x32x4; extern const tImage Slider8x16x4; diff --git a/Marlin/src/lcd/tft/ui_1024x600.cpp b/Marlin/src/lcd/tft/ui_1024x600.cpp index b5d12cdab359..ddb606674ccf 100644 --- a/Marlin/src/lcd/tft/ui_1024x600.cpp +++ b/Marlin/src/lcd/tft/ui_1024x600.cpp @@ -315,14 +315,14 @@ void MarlinUI::draw_status_screen() { y += 100; // Feed rate - tft.canvas(274, y, 128, 32); + tft.canvas(274, y, 200, 32); tft.set_background(COLOR_BACKGROUND); uint16_t color = feedrate_percentage == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; tft.add_image(0, 0, imgFeedRate, color); tft_string.set(i16tostr3rj(feedrate_percentage)); tft_string.add('%'); tft.add_text(36, 1, color, tft_string); - TERN_(TOUCH_SCREEN, touch.add_control(FEEDRATE, 274, y, 128, 32)); + TERN_(TOUCH_SCREEN, touch.add_control(FEEDRATE, 274, y, 200, 32)); // Flow rate #if HAS_EXTRUDERS @@ -333,7 +333,7 @@ void MarlinUI::draw_status_screen() { tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); tft_string.add('%'); tft.add_text(36, 1, color, tft_string); - TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, 650, y, 128, 32, active_extruder)); + TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, 650, y, 200, 32, active_extruder)); #endif #if ENABLED(TOUCH_SCREEN) @@ -348,32 +348,115 @@ void MarlinUI::draw_status_screen() { #endif y += 100; - // Print duration - char buffer[14]; - duration_t elapsed = print_job_timer.duration(); - elapsed.toDigital(buffer); + const progress_t progress = TERN(HAS_PRINT_PROGRESS_PERMYRIAD, get_progress_permyriad, get_progress_percent)(); + #if ENABLED(SHOW_ELAPSED_TIME) && DISABLED(SHOW_REMAINING_TIME) + // Print duration so far (time elapsed) - centered + char elapsed_str[22]; + duration_t elapsed = print_job_timer.duration(); + elapsed.toString(elapsed_str); - tft.canvas((TFT_WIDTH - 128) / 2, y, 128, 29); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(buffer); - tft.add_text(tft_string.center(128), 0, COLOR_PRINT_TIME, tft_string); + // Same width constraints as feedrate/flowrate controls + constexpr uint16_t time_str_width = 476, image_width = 36; + + tft.canvas((TFT_WIDTH - time_str_width) / 2, y, time_str_width, 32); + tft.set_background(COLOR_BACKGROUND); + tft_string.set(elapsed_str); + uint16_t text_pos_x = tft_string.center(time_str_width - image_width); + tft.add_image(text_pos_x, 0, imgTimeElapsed, COLOR_PRINT_TIME); + tft.add_text(text_pos_x + image_width, 1, COLOR_PRINT_TIME, tft_string); + + #elif DISABLED(SHOW_ELAPSED_TIME) && ENABLED(SHOW_REMAINING_TIME) + // Print time remaining estimation - centered + char estimate_str[22]; + duration_t elapsed = print_job_timer.duration(); + + // Get the estimate, first from M73 + uint32_t estimate_remaining = (0 + #if ALL(SET_PROGRESS_MANUALLY, SET_REMAINING_TIME) + + get_remaining_time() + #endif + ); + // If no M73 estimate is available but we have progress data, calculate time remaining assuming time elapsed is linear with progress + if (!estimate_remaining && progress > 0) + estimate_remaining = elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress; + + // Generate estimate string + if (!estimate_remaining) + tft_string.set("-"); + else { + duration_t estimation = estimate_remaining; + estimation.toString(estimate_str); + tft_string.set(estimate_str); + } + + // Same width constraints as feedrate/flowrate controls + constexpr uint16_t time_str_width = 476, image_width = 36; + + tft.canvas((TFT_WIDTH - time_str_width) / 2, y, time_str_width, 32); + tft.set_background(COLOR_BACKGROUND); + color = printingIsActive() ? COLOR_PRINT_TIME : COLOR_INACTIVE; + uint16_t text_pos_x = tft_string.center(time_str_width - image_width); + tft.add_image(text_pos_x, 0, imgTimeRemaining, color); + tft.add_text(text_pos_x + image_width, 1, color, tft_string); + + #elif ALL(SHOW_REMAINING_TIME, SHOW_ELAPSED_TIME) + // Print duration so far (time elapsed) - aligned under feed rate + char elapsed_str[22]; + duration_t elapsed = print_job_timer.duration(); + elapsed.toString(elapsed_str); + + tft.canvas(274, y, 200, 32); + tft.set_background(COLOR_BACKGROUND); + tft.add_image(0, 0, imgTimeElapsed, COLOR_PRINT_TIME); + tft_string.set(elapsed_str); + tft.add_text(36, 1, COLOR_PRINT_TIME, tft_string); + + // Print time remaining estimation - aligned under flow rate + char estimate_str[22]; + + // Get the estimate, first from M73 + uint32_t estimate_remaining = (0 + #if ALL(SET_PROGRESS_MANUALLY, SET_REMAINING_TIME) + + get_remaining_time() + #endif + ); + // If no M73 estimate is available but we have progress data, calculate time remaining assuming time elapsed is linear with progress + if (!estimate_remaining && progress > 0) + estimate_remaining = elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress; + + // Generate estimate string + if (!estimate_remaining) + tft_string.set("-"); + else { + duration_t estimation = estimate_remaining; + estimation.toString(estimate_str); + tft_string.set(estimate_str); + } + + // Push out the estimate to the screen + tft.canvas(650, y, 200, 32); + tft.set_background(COLOR_BACKGROUND); + color = printingIsActive() ? COLOR_PRINT_TIME : COLOR_INACTIVE; + tft.add_image(0, 0, imgTimeRemaining, color); + tft.add_text(36, 1, color, tft_string); + #endif y += 50; // Progress bar - const uint8_t progress = ui.get_progress_percent(); tft.canvas(4, y, TFT_WIDTH - 8, 9); tft.set_background(COLOR_PROGRESS_BG); tft.add_rectangle(0, 0, TFT_WIDTH - 8, 9, COLOR_PROGRESS_FRAME); if (progress) - tft.add_bar(1, 1, ((TFT_WIDTH - 10) * progress) / 100, 7, COLOR_PROGRESS_BAR); + tft.add_bar(1, 1, ((TFT_WIDTH - 10) * progress / (PROGRESS_SCALE)) / 100, 7, COLOR_PROGRESS_BAR); y += 50; // Status message - tft.canvas(0, y, TFT_WIDTH, FONT_LINE_HEIGHT); + const uint16_t status_height = TFT_HEIGHT - y; + tft.canvas(0, y, TFT_WIDTH, status_height); tft.set_background(COLOR_BACKGROUND); tft_string.set(status_message); tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_STATUS_MESSAGE, tft_string); + tft.add_text(tft_string.center(TFT_WIDTH), (status_height - FONT_LINE_HEIGHT) / 2, COLOR_STATUS_MESSAGE, tft_string); } // Low-level draw_edit_screen can be used to draw an edit screen from anyplace diff --git a/Marlin/src/lcd/tft/ui_320x240.cpp b/Marlin/src/lcd/tft/ui_320x240.cpp index c39d22651711..dcbfa935b476 100644 --- a/Marlin/src/lcd/tft/ui_320x240.cpp +++ b/Marlin/src/lcd/tft/ui_320x240.cpp @@ -228,7 +228,7 @@ void MarlinUI::draw_status_screen() { TERN_(TOUCH_SCREEN, touch.clear()); // Statuses of heaters and fans - const uint16_t y = TFT_STATUS_TOP_Y; + constexpr uint16_t y = TFT_STATUS_TOP_Y; for (uint16_t i = 0 ; i < ITEMS_COUNT; i++) { const uint16_t x = (TFT_WIDTH / ITEMS_COUNT - 64) / 2 + (TFT_WIDTH * i / ITEMS_COUNT); switch (i) { @@ -278,14 +278,9 @@ void MarlinUI::draw_status_screen() { tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 32, 10), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "X"); const bool nhx = axis_should_home(X_AXIS); tft_string.set(blink && nhx ? "?" : ftostr4sign(LOGICAL_X_POSITION(current_position.x))); - tft.add_text( - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 32 - tft_string.width() / 2, FONT_LINE_HEIGHT + tft_string.vcenter(FONT_LINE_HEIGHT), - #else - 68 - tft_string.width(), tft_string.vcenter(FONT_LINE_HEIGHT), - #endif - nhx ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string - ); + uint16_t pos_x = TERN(TFT_COLOR_UI_PORTRAIT, 32 - tft_string.width() / 2, 68 - tft_string.width()), + pos_y = SUM_TERN(TFT_COLOR_UI_PORTRAIT, tft_string.vcenter(FONT_LINE_HEIGHT), FONT_LINE_HEIGHT); + tft.add_text(pos_x, pos_y, nhx ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); #endif #if HAS_Y_AXIS @@ -318,31 +313,30 @@ void MarlinUI::draw_status_screen() { tft_string.set(ftostr52sp(z)); offset -= tft_string.width(); } - tft.add_text( - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 192 - tft_string.width() / 2, FONT_LINE_HEIGHT + tft_string.vcenter(FONT_LINE_HEIGHT), - #else - 301 - tft_string.width() - offset, tft_string.vcenter(FONT_LINE_HEIGHT), - #endif - nhz ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); #endif - TERN_(TOUCH_SCREEN, touch.add_control(MOVE_AXIS, 0, 103, - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 232, FONT_LINE_HEIGHT * 2 - #else - 312, FONT_LINE_HEIGHT - #endif - )); + uint16_t pos_x = TERN(TFT_COLOR_UI_PORTRAIT, 192 - tft_string.width() / 2, 301 - tft_string.width() - offset), + pos_y = SUM_TERN(TFT_COLOR_UI_PORTRAIT, tft_string.vcenter(FONT_LINE_HEIGHT), FONT_LINE_HEIGHT); + tft.add_text(pos_x, pos_y, nhz ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + + // 3rd horizontal group - controls and times (height = 64, top margin = 3) + // 3rd group, subgroup A - controls (on the sides) + #if ENABLED(TOUCH_SCREEN) + width = TERN(TFT_COLOR_UI_PORTRAIT, 232, 312); + height = TERN(TFT_COLOR_UI_PORTRAIT, FONT_LINE_HEIGHT * 2, FONT_LINE_HEIGHT); + touch.add_control(MOVE_AXIS, 0, 103, width, height); + add_control(256, 130, menu_main, imgSettings); + TERN_(SDSUPPORT, add_control(0, 130, menu_media, imgSD, !printingIsActive(), COLOR_CONTROL_ENABLED, card.isMounted() && printingIsActive() ? COLOR_BUSY : COLOR_CONTROL_DISABLED)); + #endif + + // 3rd group, subgroup B - speeds (center, top half) // Feed rate tft.canvas( - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 30, 172, 80 - #else - 70, 136, 84 - #endif - , 32 + TERN(TFT_COLOR_UI_PORTRAIT, 30, 70), + TERN(TFT_COLOR_UI_PORTRAIT, 172, 132), + TERN(TFT_COLOR_UI_PORTRAIT, 80, 88), + MENU_ITEM_HEIGHT ); tft.set_background(COLOR_BACKGROUND); uint16_t color = feedrate_percentage == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; @@ -351,88 +345,134 @@ void MarlinUI::draw_status_screen() { tft_string.add('%'); tft.add_text(32, tft_string.vcenter(30), color, tft_string); TERN_(TOUCH_SCREEN, touch.add_control(FEEDRATE, - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 30, 172, 80 - #else - 70, 136, 84 - #endif - , 32 + TERN(TFT_COLOR_UI_PORTRAIT, 30, 70), + TERN(TFT_COLOR_UI_PORTRAIT, 172, 132), + 80, MENU_ITEM_HEIGHT )); // Flow rate - #if HAS_EXTRUDERS - tft.canvas( - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 140, 172, 80 - #else - 170, 136, 84 + tft.canvas( + TERN(TFT_COLOR_UI_PORTRAIT, 140, 162), + TERN(TFT_COLOR_UI_PORTRAIT, 172, 132), + TERN(TFT_COLOR_UI_PORTRAIT, 80, 88), + MENU_ITEM_HEIGHT + ); + tft.set_background(COLOR_BACKGROUND); + color = planner.flow_percentage[0] == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; + tft.add_image(0, 0, imgFlowRate, color); + tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); + tft_string.add('%'); + tft.add_text(32, tft_string.vcenter(30), color, tft_string); + #if ENABLED(TOUCH_SCREEN) + touch.add_control(FLOWRATE, + TERN(TFT_COLOR_UI_PORTRAIT, 140, 170), + TERN(TFT_COLOR_UI_PORTRAIT, 172, 132), + 80, MENU_ITEM_HEIGHT, active_extruder + ); + #endif + + // 3rd group, subgroup C - times (center, bottom half) + const progress_t progress = TERN(HAS_PRINT_PROGRESS_PERMYRIAD, get_progress_permyriad, get_progress_percent)(); + const uint16_t time_str_width = 180, image_width = 34; + pos_x = (TFT_WIDTH - time_str_width) / 2; + pos_y = TERN(TFT_COLOR_UI_PORTRAIT, 256, 164); + #if ENABLED(SHOW_ELAPSED_TIME) && DISABLED(SHOW_REMAINING_TIME) + // Print duration so far (time elapsed) - centered + char elapsed_str[18]; + duration_t elapsed = print_job_timer.duration(); + elapsed.toCompactString(elapsed_str); + + tft.canvas(pos_x, pos_y, time_str_width, MENU_ITEM_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft_string.set(elapsed_str); + uint16_t text_pos_x = tft_string.center(time_str_width - image_width); + tft.add_image(text_pos_x, 0, imgTimeElapsed, COLOR_PRINT_TIME); + tft.add_text(text_pos_x + image_width, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_PRINT_TIME, tft_string); + + #elif DISABLED(SHOW_ELAPSED_TIME) && ENABLED(SHOW_REMAINING_TIME) + // Print time remaining estimation - centered + char estimate_str[18]; + duration_t elapsed = print_job_timer.duration(); + + // Get the estimate, first from M73 + uint32_t estimate_remaining = (0 + #if ALL(SET_PROGRESS_MANUALLY, SET_REMAINING_TIME) + + get_remaining_time() #endif - , 32 ); + // If no M73 estimate is available but we have progress data, calculate time remaining assuming time elapsed is linear with progress + if (!estimate_remaining && progress > 0) + estimate_remaining = elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress; + + // Generate estimate string + if (!estimate_remaining) + tft_string.set("-"); + else { + duration_t estimation = estimate_remaining; + estimation.toCompactString(estimate_str); + tft_string.set(estimate_str); + } + + tft.canvas(pos_x, pos_y, time_str_width, MENU_ITEM_HEIGHT); tft.set_background(COLOR_BACKGROUND); - color = planner.flow_percentage[0] == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; - tft.add_image(0, 0, imgFlowRate, color); - tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); - tft_string.add('%'); - tft.add_text(32, tft_string.vcenter(30), color, tft_string); - TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 140, 172, 80 - #else - 170, 136, 84 + color = printingIsActive() ? COLOR_PRINT_TIME : COLOR_INACTIVE; + uint16_t text_pos_x = tft_string.center(time_str_width - image_width); + tft.add_image(text_pos_x, 0, imgTimeRemaining, color); + tft.add_text(text_pos_x + image_width, tft_string.vcenter(FONT_LINE_HEIGHT), color, tft_string); + + #elif ALL(SHOW_REMAINING_TIME, SHOW_ELAPSED_TIME) + // Print duration so far (time elapsed) - aligned under feed rate + char elapsed_str[18]; + duration_t elapsed = print_job_timer.duration(); + elapsed.toCompactString(elapsed_str); + + tft.canvas(pos_x, pos_y, time_str_width / 2 - 2, MENU_ITEM_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft.add_image(0, 0, imgTimeElapsed, COLOR_PRINT_TIME); + tft_string.set(elapsed_str); + tft.add_text(32, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_PRINT_TIME, tft_string); + + // Print time remaining estimation - aligned under flow rate + char estimate_str[18]; + + // Get the estimate, first from M73 + uint32_t estimate_remaining = (0 + #if ALL(SET_PROGRESS_MANUALLY, SET_REMAINING_TIME) + + get_remaining_time() #endif - , 32, active_extruder - )); - #endif // HAS_EXTRUDERS + ); + // If no M73 estimate is available but we have progress data, calculate time remaining assuming time elapsed is linear with progress + if (!estimate_remaining && progress > 0) + estimate_remaining = elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress; - // Print duration - char buffer[14]; - duration_t elapsed = print_job_timer.duration(); - elapsed.toDigital(buffer); + // Generate estimate string + if (!estimate_remaining) + tft_string.set("-"); + else { + duration_t estimation = estimate_remaining; + estimation.toCompactString(estimate_str); + tft_string.set(estimate_str); + } - tft.canvas( - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 56, 256, 128 - #else - 96, 173, 128 - #endif - , FONT_LINE_HEIGHT - ); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(buffer); - tft.add_text(tft_string.center(128), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_PRINT_TIME, tft_string); + // Push out the estimate to the screen + tft.canvas(pos_x + time_str_width / 2 + 2, pos_y, time_str_width / 2 - 2, MENU_ITEM_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + color = printingIsActive() ? COLOR_PRINT_TIME : COLOR_INACTIVE; + tft.add_image(0, 0, imgTimeRemaining, color); + tft.add_text(32, tft_string.vcenter(FONT_LINE_HEIGHT), color, tft_string); + #endif - // Progress bar - const uint8_t progress = ui.get_progress_percent(); - tft.canvas( - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 4, 278, 232 - #else - 4, 198, 312 - #endif - , 9 - ); + // Fourth horizontal group - progress bar (height = 9, top margin = 4) + pos_y = TERN(TFT_COLOR_UI_PORTRAIT, 278, 198); + tft.canvas(4, pos_y, TFT_WIDTH - 8, 9); tft.set_background(COLOR_PROGRESS_BG); - tft.add_rectangle(0, 0, - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 232, 9 - #else - 312, 9 - #endif - , COLOR_PROGRESS_FRAME - ); + tft.add_rectangle(0, 0, TFT_WIDTH - 8, 9, COLOR_PROGRESS_FRAME); if (progress) - tft.add_bar(1, 1, ((TFT_WIDTH - 10) * progress) / 100, 7, COLOR_PROGRESS_BAR); + tft.add_bar(1, 1, ((TFT_WIDTH - 10) * progress / (PROGRESS_SCALE)) / 100, 7, COLOR_PROGRESS_BAR); // Status message - tft.canvas( - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 0, 296, 240 - #else - 0, 212, 320 - #endif - , FONT_LINE_HEIGHT - ); + pos_y += 9 + 7; + tft.canvas(0, pos_y, TFT_WIDTH, TFT_HEIGHT - pos_y); tft.set_background(COLOR_BACKGROUND); tft_string.set(status_message); tft_string.trim(); @@ -441,12 +481,9 @@ void MarlinUI::draw_status_screen() { #if ENABLED(TOUCH_SCREEN) { add_control( - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 176, 210 - #else - 256, 130 - #endif - , menu_main, imgSettings + TERN(TFT_COLOR_UI_PORTRAIT, 176, 256), + TERN(TFT_COLOR_UI_PORTRAIT, 210, 130), + menu_main, imgSettings ); #if HAS_MEDIA const bool cm = card.isMounted(), pa = printingIsActive(); @@ -552,8 +589,8 @@ void MenuItem_confirm::draw_select_screen(FSTR_P const yes, FSTR_P const no, con tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); } #if ENABLED(TOUCH_SCREEN) - if (no) add_control(TERN(TFT_COLOR_UI_PORTRAIT, 16, 48), TFT_HEIGHT - 64, CANCEL, imgCancel, true, yesno ? HALF(COLOR_CONTROL_CANCEL) : COLOR_CONTROL_CANCEL); - if (yes) add_control(TERN(TFT_COLOR_UI_PORTRAIT, 160, 208), TFT_HEIGHT - 64, CONFIRM, imgConfirm, true, yesno ? COLOR_CONTROL_CONFIRM : HALF(COLOR_CONTROL_CONFIRM)); + if (no) add_control(TERN(TFT_COLOR_UI_PORTRAIT, 32,48), TFT_HEIGHT - 64, CANCEL, imgCancel, true, yesno ? HALF(COLOR_CONTROL_CANCEL) : COLOR_CONTROL_CANCEL); + if (yes) add_control(TERN(TFT_COLOR_UI_PORTRAIT, 172, 208), TFT_HEIGHT - 64, CONFIRM, imgConfirm, true, yesno ? COLOR_CONTROL_CONFIRM : HALF(COLOR_CONTROL_CONFIRM)); #endif } diff --git a/Marlin/src/lcd/tft/ui_320x240.h b/Marlin/src/lcd/tft/ui_320x240.h index 555ca3616a09..1d3aa86f8124 100644 --- a/Marlin/src/lcd/tft/ui_320x240.h +++ b/Marlin/src/lcd/tft/ui_320x240.h @@ -37,6 +37,7 @@ #define MENU_ITEM_HEIGHT 32 #define MENU_LINE_HEIGHT (MENU_ITEM_HEIGHT + 2) +#define FONT_LINE_HEIGHT 24 #if (TFT_FONT == NOTOSANS) || (TFT_FONT == HELVETICA) #define FONT_SIZE 14 diff --git a/Marlin/src/lcd/tft/ui_480x320.cpp b/Marlin/src/lcd/tft/ui_480x320.cpp index 14d7da7ee43d..8e554cf413a5 100644 --- a/Marlin/src/lcd/tft/ui_480x320.cpp +++ b/Marlin/src/lcd/tft/ui_480x320.cpp @@ -340,50 +340,116 @@ void MarlinUI::draw_status_screen() { TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, x, y, component_width, 32, active_extruder)); #endif - #if TFT_COLOR_UI_PORTRAIT || DISABLED(TOUCH_SCREEN) - y += STATUS_MARGIN_SIZE + 32; - #endif + y += TERN(HAS_UI_480x272, 36, 44); - #if ENABLED(TOUCH_SCREEN) - // Settings button - add_control(SETTINGS_X, y, menu_main, imgSettings); - - // SD-card button / Cancel button - #if HAS_MEDIA - const bool cm = card.isMounted(), pa = printingIsActive(); - if (cm && pa) - add_control(SDCARD_X, y, STOP, imgCancel, true, COLOR_CONTROL_CANCEL); - else - add_control(SDCARD_X, y, menu_media, imgSD, cm && !pa, COLOR_CONTROL_ENABLED, COLOR_CONTROL_DISABLED); // 64px icon size - #endif + const progress_t progress = TERN(HAS_PRINT_PROGRESS_PERMYRIAD, get_progress_permyriad, get_progress_percent)(); + #if ENABLED(SHOW_ELAPSED_TIME) && DISABLED(SHOW_REMAINING_TIME) + // Print duration so far (time elapsed) - centered + char elapsed_str[22]; + duration_t elapsed = print_job_timer.duration(); + elapsed.toString(elapsed_str); - y += STATUS_MARGIN_SIZE + TERN(TFT_COLOR_UI_PORTRAIT, 64, 44); - #endif + // Same width constraints as feedrate/flowrate controls + constexpr uint16_t time_str_width = 288, image_width = 36; - // Print duration - char buffer[14]; - duration_t elapsed = print_job_timer.duration(); - elapsed.toDigital(buffer); + tft.canvas((TFT_WIDTH - time_str_width) / 2, y, time_str_width, 32); + tft.set_background(COLOR_BACKGROUND); + tft_string.set(elapsed_str); + uint16_t text_pos_x = tft_string.center(time_str_width - image_width); + tft.add_image(text_pos_x, 0, imgTimeElapsed, COLOR_PRINT_TIME); + tft.add_text(text_pos_x + image_width, tft_string.vcenter(29), COLOR_PRINT_TIME, tft_string); + + #elif DISABLED(SHOW_ELAPSED_TIME) && ENABLED(SHOW_REMAINING_TIME) + // Print time remaining estimation - centered + char estimate_str[22]; + duration_t elapsed = print_job_timer.duration(); + + // Get the estimate, first from M73 + uint32_t estimate_remaining = (0 + #if ALL(SET_PROGRESS_MANUALLY, SET_REMAINING_TIME) + + get_remaining_time() + #endif + ); + // If no M73 estimate is available but we have progress data, calculate time remaining assuming time elapsed is linear with progress + if (!estimate_remaining && progress > 0) + estimate_remaining = elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress; + + // Generate estimate string + if (!estimate_remaining) + tft_string.set("-"); + else { + duration_t estimation = estimate_remaining; + estimation.toString(estimate_str); + tft_string.set(estimate_str); + } - tft.canvas((TFT_WIDTH - 128) / 2, y, 128, 29); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(buffer); - tft.add_text(tft_string.center(128), tft_string.vcenter(29), COLOR_PRINT_TIME, tft_string); + // Same width constraints as feedrate/flowrate controls + constexpr uint16_t time_str_width = 288, image_width = 36; + + tft.canvas((TFT_WIDTH - time_str_width) / 2, y, time_str_width, 32); + tft.set_background(COLOR_BACKGROUND); + color = printingIsActive() ? COLOR_PRINT_TIME : COLOR_INACTIVE; + uint16_t text_pos_x = tft_string.center(time_str_width - image_width); + tft.add_image(text_pos_x, 0, imgTimeRemaining, color); + tft.add_text(text_pos_x + image_width, tft_string.vcenter(29), color, tft_string); + + #elif ALL(SHOW_REMAINING_TIME, SHOW_ELAPSED_TIME) + // Print duration so far (time elapsed) - aligned under feed rate + char elapsed_str[18]; + duration_t elapsed = print_job_timer.duration(); + elapsed.toCompactString(elapsed_str); + + tft.canvas(96, y, 144, 32); + tft.set_background(COLOR_BACKGROUND); + tft.add_image(0, 0, imgTimeElapsed, COLOR_PRINT_TIME); + tft_string.set(elapsed_str); + tft.add_text(36, tft_string.vcenter(29), COLOR_PRINT_TIME, tft_string); - y += STATUS_MARGIN_SIZE + 29; + // Print time remaining estimation - aligned under flow rate + char estimate_str[18]; + + // Get the estimate, first from M73 + uint32_t estimate_remaining = (0 + #if ALL(SET_PROGRESS_MANUALLY, SET_REMAINING_TIME) + + get_remaining_time() + #endif + ); + // If no M73 estimate is available but we have progress data, calculate time remaining assuming time elapsed is linear with progress + if (!estimate_remaining && progress > 0) + estimate_remaining = elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress; + + // Generate estimate string + if (!estimate_remaining) + tft_string.set("-"); + else { + duration_t estimation = estimate_remaining; + estimation.toCompactString(estimate_str); + tft_string.set(estimate_str); + } + + // Push out the estimate to the screen + tft.canvas(256, y, 144, 32); + tft.set_background(COLOR_BACKGROUND); + color = printingIsActive() ? COLOR_PRINT_TIME : COLOR_INACTIVE; + tft.add_image(0, 0, imgTimeRemaining, color); + tft.add_text(36, tft_string.vcenter(29), color, tft_string); + #endif + + y += TERN(HAS_UI_480x272, 36, 44); // Progress bar - const uint8_t progress = ui.get_progress_percent(); + // TODO: print percentage text for SHOW_PROGRESS_PERCENT tft.canvas(4, y, TFT_WIDTH - 8, 9); tft.set_background(COLOR_PROGRESS_BG); tft.add_rectangle(0, 0, TFT_WIDTH - 8, 9, COLOR_PROGRESS_FRAME); if (progress) - tft.add_bar(1, 1, ((TFT_WIDTH - 10) * progress) / 100, 7, COLOR_PROGRESS_BAR); - - y += STATUS_MARGIN_SIZE + 7; + tft.add_bar(1, 1, ((TFT_WIDTH - 10) * progress / (PROGRESS_SCALE)) / 100, 7, COLOR_PROGRESS_BAR); + y += 12; // Status message - tft.canvas(0, y, TFT_WIDTH, FONT_LINE_HEIGHT); + // Canvas height should be 40px on 480x320 and 28 on 480x272 + const uint16_t status_height = TFT_HEIGHT - y; + tft.canvas(0, y, TFT_WIDTH, status_height); tft.set_background(COLOR_BACKGROUND); tft_string.set(status_message); tft_string.trim(); @@ -878,9 +944,8 @@ static void drawBtn(const int x, const int y, const char *label, intptr_t data, tft_string.trim(); tft.add_text(tft_string.center(width), height / 2 - tft_string.font_height() / 2, bgColor, tft_string); } - else { + else tft.add_image(0, 0, img, bgColor, COLOR_BACKGROUND, COLOR_DARKGREY); - } TERN_(TOUCH_SCREEN, if (enabled) touch.add_control(BUTTON, x, y, width, height, data)); } diff --git a/Marlin/src/libs/duration_t.h b/Marlin/src/libs/duration_t.h index e45ce01496c7..d648924dc95c 100644 --- a/Marlin/src/libs/duration_t.h +++ b/Marlin/src/libs/duration_t.h @@ -117,6 +117,7 @@ struct duration_t { * * @param buffer The array pointed to must be able to accommodate 22 bytes * (21 for the string, 1 more for the terminating nul) + * @param dense Whether to skip spaces in the resulting string * * Output examples: * 123456789012345678901 (strlen) @@ -141,11 +142,43 @@ struct duration_t { return buffer; } + /** + * @brief Format the duration as a compact string + * @details String will be formatted using a "full" representation of duration + * + * @param buffer The array pointed to must be able to accommodate 18 bytes + * (17 for the string, 1 more for the terminating nul) + * @param dense Whether to skip spaces in the resulting string + * + * Output examples: + * 12345678901234567 (strlen) + * 135y364d23h59m59s + * 364d23h59m59s + * 23h59m59s + * 59m59s + * 59s + */ + char* toCompactString(char * const buffer) const { + const uint16_t y = this->year(), + d = this->day() % 365, + h = this->hour() % 24, + m = this->minute() % 60, + s = this->second() % 60; + + if (y) sprintf_P(buffer, PSTR("%iy%id%ih%im%is"), y, d, h, m, s); + else if (d) sprintf_P(buffer, PSTR("%id%ih%im%is"), d, h, m, s); + else if (h) sprintf_P(buffer, PSTR("%ih%im%is"), h, m, s); + else if (m) sprintf_P(buffer, PSTR("%im%is"), m, s); + else sprintf_P(buffer, PSTR("%is"), s); + return buffer; + } + /** * @brief Format the duration as a string * @details String will be formatted using a "digital" representation of duration * * @param buffer The array pointed to must be able to accommodate 10 bytes + * @return length of the formatted string (without terminating nul) * * Output examples: * 123456789 (strlen) From 858916d628526b5d56c34c5c9663e3535bfc7788 Mon Sep 17 00:00:00 2001 From: Miguel Risco-Castillo Date: Fri, 23 Jun 2023 04:57:22 -0500 Subject: [PATCH 315/427] =?UTF-8?q?=F0=9F=9A=B8=20Update=20DWIN=20ProUI=20?= =?UTF-8?q?(#26003)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp | 10 +- Marlin/src/feature/tmc_util.h | 8 +- Marlin/src/gcode/lcd/M73.cpp | 32 +- Marlin/src/gcode/probe/G30.cpp | 4 +- Marlin/src/inc/SanityCheck.h | 16 +- Marlin/src/lcd/e3v2/common/dwin_font.h | 12 +- Marlin/src/lcd/e3v2/common/limits.h | 8 +- Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp | 42 +- Marlin/src/lcd/e3v2/proui/bedlevel_tools.h | 13 +- Marlin/src/lcd/e3v2/proui/dwin.cpp | 1389 ++++++++++-------- Marlin/src/lcd/e3v2/proui/dwin.h | 58 +- Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp | 24 +- Marlin/src/lcd/e3v2/proui/dwin_lcd.h | 9 +- Marlin/src/lcd/e3v2/proui/dwinui.cpp | 43 +- Marlin/src/lcd/e3v2/proui/dwinui.h | 16 +- Marlin/src/lcd/e3v2/proui/endstop_diag.cpp | 8 +- Marlin/src/lcd/e3v2/proui/endstop_diag.h | 8 +- Marlin/src/lcd/e3v2/proui/gcode_preview.cpp | 25 +- Marlin/src/lcd/e3v2/proui/gcode_preview.h | 2 +- Marlin/src/lcd/e3v2/proui/menus.cpp | 62 +- Marlin/src/lcd/e3v2/proui/menus.h | 34 +- Marlin/src/lcd/e3v2/proui/meshviewer.cpp | 156 +- Marlin/src/lcd/e3v2/proui/meshviewer.h | 14 +- Marlin/src/lcd/e3v2/proui/plot.cpp | 12 +- Marlin/src/lcd/e3v2/proui/plot.h | 6 +- Marlin/src/lcd/e3v2/proui/printstats.cpp | 6 +- Marlin/src/lcd/e3v2/proui/printstats.h | 2 +- Marlin/src/lcd/language/language_de.h | 12 +- Marlin/src/lcd/language/language_en.h | 30 +- Marlin/src/lcd/language/language_it.h | 10 +- Marlin/src/lcd/language/language_ru.h | 10 +- Marlin/src/lcd/language/language_sk.h | 10 +- Marlin/src/lcd/language/language_tr.h | 10 +- Marlin/src/module/stepper.cpp | 10 +- Marlin/src/module/temperature.cpp | 8 +- 35 files changed, 1213 insertions(+), 906 deletions(-) diff --git a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp index 1c43af1884a7..3b8ee33730f3 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp +++ b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp @@ -310,8 +310,14 @@ void unified_bed_leveling::G29() { // Check for commands that require the printer to be homed if (may_move) { planner.synchronize(); - // Send 'N' to force homing before G29 (internal only) - if (axes_should_home() || parser.seen_test('N')) gcode.home_all_axes(); + #if ALL(DWIN_LCD_PROUI, ZHOME_BEFORE_LEVELING) + save_ubl_active_state_and_disable(); + gcode.process_subcommands_now(F("G28Z")); + restore_ubl_active_state_and_leave(); + #else + // Send 'N' to force homing before G29 (internal only) + if (axes_should_home() || parser.seen_test('N')) gcode.home_all_axes(); + #endif probe.use_probing_tool(); // Position bed horizontally and Z probe vertically. diff --git a/Marlin/src/feature/tmc_util.h b/Marlin/src/feature/tmc_util.h index 4ba38359069a..a0a72058aa2d 100644 --- a/Marlin/src/feature/tmc_util.h +++ b/Marlin/src/feature/tmc_util.h @@ -144,7 +144,7 @@ class TMCMarlin : public TMC, public TMCStorage { #endif #endif - #if HAS_MARLINUI_MENU + #if ANY(HAS_MARLINUI_MENU, DWIN_LCD_PROUI) void refresh_stepper_current() { rms_current(this->val_mA); } #if ENABLED(HYBRID_THRESHOLD) @@ -207,7 +207,7 @@ class TMCMarlin : public TMC220 } #endif - #if HAS_MARLINUI_MENU + #if ANY(HAS_MARLINUI_MENU, DWIN_LCD_PROUI) void refresh_stepper_current() { rms_current(this->val_mA); } #if ENABLED(HYBRID_THRESHOLD) @@ -269,7 +269,7 @@ class TMCMarlin : public TMC220 } #endif - #if HAS_MARLINUI_MENU + #if ANY(HAS_MARLINUI_MENU, DWIN_LCD_PROUI) void refresh_stepper_current() { rms_current(this->val_mA); } #if ENABLED(HYBRID_THRESHOLD) @@ -315,7 +315,7 @@ class TMCMarlin : public TMC266 } #endif - #if HAS_MARLINUI_MENU + #if ANY(HAS_MARLINUI_MENU, DWIN_LCD_PROUI) void refresh_stepper_current() { rms_current(this->val_mA); } #if USE_SENSORLESS diff --git a/Marlin/src/gcode/lcd/M73.cpp b/Marlin/src/gcode/lcd/M73.cpp index 02d44ca00be8..5ac2839beb4e 100644 --- a/Marlin/src/gcode/lcd/M73.cpp +++ b/Marlin/src/gcode/lcd/M73.cpp @@ -49,28 +49,20 @@ */ void GcodeSuite::M73() { - #if ENABLED(DWIN_LCD_PROUI) - - DWIN_M73(); - - #else - - #if ENABLED(SET_PROGRESS_PERCENT) - if (parser.seenval('P')) - ui.set_progress((PROGRESS_SCALE) > 1 - ? parser.value_float() * (PROGRESS_SCALE) - : parser.value_byte() - ); - #endif - - #if ENABLED(SET_REMAINING_TIME) - if (parser.seenval('R')) ui.set_remaining_time(60 * parser.value_ulong()); - #endif + #if ENABLED(SET_PROGRESS_PERCENT) + if (parser.seenval('P')) + ui.set_progress((PROGRESS_SCALE) > 1 + ? parser.value_float() * (PROGRESS_SCALE) + : parser.value_byte() + ); + #endif - #if ENABLED(SET_INTERACTION_TIME) - if (parser.seenval('C')) ui.set_interaction_time(60 * parser.value_ulong()); - #endif + #if ENABLED(SET_REMAINING_TIME) + if (parser.seenval('R')) ui.set_remaining_time(60 * parser.value_ulong()); + #endif + #if ENABLED(SET_INTERACTION_TIME) + if (parser.seenval('C')) ui.set_interaction_time(60 * parser.value_ulong()); #endif #if ENABLED(M73_REPORT) diff --git a/Marlin/src/gcode/probe/G30.cpp b/Marlin/src/gcode/probe/G30.cpp index 43fc27bfc189..c638e76c1a63 100644 --- a/Marlin/src/gcode/probe/G30.cpp +++ b/Marlin/src/gcode/probe/G30.cpp @@ -70,7 +70,9 @@ void GcodeSuite::G30() { remember_feedrate_scaling_off(); - TERN_(DWIN_CREALITY_LCD_JYERSUI, process_subcommands_now(F("G28O"))); + #if ANY(DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI) + process_subcommands_now(F("G28O")); + #endif const ProbePtRaise raise_after = parser.boolval('E', true) ? PROBE_PT_STOW : PROBE_PT_NONE; diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index bda273b734cc..9fdd0d603eef 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -2718,14 +2718,18 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #elif ENABLED(DWIN_LCD_PROUI) #if !HAS_MEDIA #error "DWIN_LCD_PROUI requires SDSUPPORT to be enabled." - #elif ANY(PID_EDIT_MENU, PID_AUTOTUNE_MENU) - #error "DWIN_LCD_PROUI does not support PID_EDIT_MENU or PID_AUTOTUNE_MENU." - #elif ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) - #error "DWIN_LCD_PROUI does not support MPC_EDIT_MENU or MPC_AUTOTUNE_MENU." - #elif ENABLED(LCD_BED_TRAMMING) - #error "DWIN_LCD_PROUI does not support LCD_BED_TRAMMING." #elif ALL(LCD_BED_LEVELING, PROBE_MANUALLY) #error "DWIN_LCD_PROUI does not support LCD_BED_LEVELING with PROBE_MANUALLY." + #elif ENABLED(MEDIASORT_MENU_ITEM) && DISABLED(SDCARD_SORT_ALPHA) + #error "MEDIASORT_MENU_ITEM requires SDCARD_SORT_ALPHA." + #elif ENABLED(RUNOUT_TUNE_ITEM) && DISABLED(HAS_FILAMENT_SENSOR) + #error "RUNOUT_TUNE_ITEM requires HAS_FILAMENT_SENSOR." + #elif ENABLED(PLR_TUNE_ITEM) && DISABLED(POWER_LOSS_RECOVERY) + #error "PLR_TUNE_ITEM requires POWER_LOSS_RECOVERY." + #elif ENABLED(JD_TUNE_ITEM) && DISABLED(HAS_JUNCTION_DEVIATION) + #error "JD_TUNE_ITEM requires HAS_JUNCTION_DEVIATION." + #elif ENABLED(ADVK_TUNE_ITEM) && DISABLED(LIN_ADVANCE) + #error "ADVK_TUNE_ITEM requires LIN_ADVANCE." #endif #endif diff --git a/Marlin/src/lcd/e3v2/common/dwin_font.h b/Marlin/src/lcd/e3v2/common/dwin_font.h index 10bb104d27bc..b92bfcf99c9f 100644 --- a/Marlin/src/lcd/e3v2/common/dwin_font.h +++ b/Marlin/src/lcd/e3v2/common/dwin_font.h @@ -28,13 +28,15 @@ typedef uint8_t fontid_t; * 0x00=6*12 0x01=8*16 0x02=10*20 0x03=12*24 0x04=14*28 * 0x05=16*32 0x06=20*40 0x07=24*48 0x08=28*56 0x09=32*64 */ -#define font6x12 0x00 +#if DISABLED(TJC_DISPLAY) + #define font6x12 0x00 + #define font20x40 0x06 + #define font24x48 0x07 + #define font28x56 0x08 + #define font32x64 0x09 +#endif #define font8x16 0x01 #define font10x20 0x02 #define font12x24 0x03 #define font14x28 0x04 #define font16x32 0x05 -#define font20x40 0x06 -#define font24x48 0x07 -#define font28x56 0x08 -#define font32x64 0x09 diff --git a/Marlin/src/lcd/e3v2/common/limits.h b/Marlin/src/lcd/e3v2/common/limits.h index 4ac97b82bbef..da75d9c982c2 100644 --- a/Marlin/src/lcd/e3v2/common/limits.h +++ b/Marlin/src/lcd/e3v2/common/limits.h @@ -91,4 +91,10 @@ constexpr xyze_float_t min_acceleration_edit_values = LOGICAL_AXIS_ARRAY_1(MIN_A constexpr xyze_float_t min_steps_edit_values = LOGICAL_AXIS_ARRAY_1(MIN_STEPS_EDIT_VALUE), default_steps = DEFAULT_AXIS_STEPS_PER_UNIT, - max_steps_edit_values = default_steps * float(DEFAULT_MAX_MULTIPLIER); + max_steps_edit_values = + #ifdef MAX_STEPS_EDIT_VALUES + MAX_STEPS_EDIT_VALUES + #else + default_steps * float(DEFAULT_MAX_MULTIPLIER) + #endif + ; diff --git a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp index 7892de2d6917..435da10a2aee 100644 --- a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp +++ b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp @@ -23,8 +23,8 @@ /** * Bed Level Tools for Pro UI * Extended by: Miguel A. Risco-Castillo (MRISCOC) - * Version: 2.1.0 - * Date: 2022/08/27 + * Version: 3.2.0 + * Date: 2023/05/03 * * Based on the original work of: Henri-J-Norden * https://github.com/Jyers/Marlin/pull/126 @@ -65,7 +65,7 @@ BedLevelToolsClass bedLevelTools; -#if ENABLED(USE_UBL_VIEWER) +#if ENABLED(USE_GRID_MESHVIEWER) bool BedLevelToolsClass::viewer_asymmetric_range = false; bool BedLevelToolsClass::viewer_print_value = false; #endif @@ -170,15 +170,20 @@ void BedLevelToolsClass::MoveToZ() { bedLevelTools.manual_move(bedLevelTools.mesh_x, bedLevelTools.mesh_y, true); } void BedLevelToolsClass::ProbeXY() { - const uint16_t Clear = Z_CLEARANCE_DEPLOY_PROBE; - sprintf_P(cmd, PSTR("G28O\nG0Z%i\nG30X%sY%s"), - Clear, + const uint16_t zclear = Z_CLEARANCE_DEPLOY_PROBE; + sprintf_P(cmd, PSTR("G0Z%i\nG30X%sY%s"), + zclear, dtostrf(bedlevel.get_mesh_x(bedLevelTools.mesh_x), 1, 2, str_1), dtostrf(bedlevel.get_mesh_y(bedLevelTools.mesh_y), 1, 2, str_2) ); gcode.process_subcommands_now(cmd); } +void BedLevelToolsClass::mesh_reset() { + ZERO(bedlevel.z_values); + TERN_(AUTO_BED_LEVELING_BILINEAR, bedlevel.refresh_bed_level()); +} + // Accessors float BedLevelToolsClass::get_max_value() { float max = __FLT_MAX__ * -1; @@ -207,9 +212,11 @@ bool BedLevelToolsClass::meshvalidate() { return true; } -#if ENABLED(USE_UBL_VIEWER) +#if ENABLED(USE_GRID_MESHVIEWER) + + constexpr uint8_t meshfont = TERN(TJC_DISPLAY, font8x16, font6x12); - void BedLevelToolsClass::Draw_Bed_Mesh(int16_t selected /*= -1*/, uint8_t gridline_width /*= 1*/, uint16_t padding_x /*= 8*/, uint16_t padding_y_top /*= 40 + 53 - 7*/) { + void BedLevelToolsClass::Draw_Bed_Mesh(int16_t selected/*=-1*/, uint8_t gridline_width/*=1*/, uint16_t padding_x/*=8*/, uint16_t padding_y_top/*=(40 + 53 - 7)*/) { drawing_mesh = true; const uint16_t total_width_px = DWIN_WIDTH - padding_x - padding_x; const uint16_t cell_width_px = total_width_px / (GRID_MAX_POINTS_X); @@ -227,7 +234,6 @@ bool BedLevelToolsClass::meshvalidate() { } // Draw value square grid - char buf[8]; GRID_LOOP(x, y) { const auto start_x_px = padding_x + x * cell_width_px; const auto end_x_px = start_x_px + cell_width_px - 1 - gridline_width; @@ -246,20 +252,22 @@ bool BedLevelToolsClass::meshvalidate() { LCD_SERIAL.flushTX(); // Draw value text on + char buf[8]; + const uint8_t fs = DWINUI::fontWidth(meshfont); if (viewer_print_value) { - int8_t offset_x, offset_y = cell_height_px / 2 - 6; + int8_t offset_x, offset_y = cell_height_px / 2 - fs; if (isnan(bedlevel.z_values[x][y])) { // undefined - dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + cell_width_px / 2 - 5, start_y_px + offset_y, F("X")); + dwinDrawString(false, meshfont, Color_White, Color_Bg_Blue, start_x_px + cell_width_px / 2 - 5, start_y_px + offset_y, F("X")); } else { // has value - if (GRID_MAX_POINTS_X < 10) + if (GRID_MAX_POINTS_X < (ENABLED(TJC_DISPLAY) ? 8 : 10)) sprintf_P(buf, PSTR("%s"), dtostrf(abs(bedlevel.z_values[x][y]), 1, 2, str_1)); else sprintf_P(buf, PSTR("%02i"), (uint16_t)(abs(bedlevel.z_values[x][y] - (int16_t)bedlevel.z_values[x][y]) * 100)); - offset_x = cell_width_px / 2 - 3 * (strlen(buf)) - 2; - if (!(GRID_MAX_POINTS_X < 10)) - dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px - 2 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, F(".")); - dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + 1 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, buf); + offset_x = cell_width_px / 2 - (fs/2) * (strlen(buf)) - 2; + if (!(GRID_MAX_POINTS_X < (ENABLED(TJC_DISPLAY) ? 8 : 10))) + dwinDrawString(false, meshfont, Color_White, Color_Bg_Blue, start_x_px - 2 + offset_x, start_y_px + offset_y, F(".")); + dwinDrawString(false, meshfont, Color_White, Color_Bg_Blue, start_x_px + 1 + offset_x, start_y_px + offset_y, buf); } safe_delay(10); LCD_SERIAL.flushTX(); @@ -286,6 +294,6 @@ bool BedLevelToolsClass::meshvalidate() { drawing_mesh = false; } -#endif // USE_UBL_VIEWER +#endif // USE_GRID_MESHVIEWER #endif // DWIN_LCD_PROUI && HAS_LEVELING diff --git a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.h b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.h index 6e642f030c18..67beddec613e 100644 --- a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.h +++ b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.h @@ -23,8 +23,8 @@ /** * Bed Level Tools for Pro UI * Extended by: Miguel A. Risco-Castillo (MRISCOC) - * Version: 2.1.0 - * Date: 2022/08/27 + * Version: 3.2.0 + * Date: 2023/05/03 * * Based on the original work of: Henri-J-Norden * https://github.com/Jyers/Marlin/pull/126 @@ -47,14 +47,12 @@ #include "../../../inc/MarlinConfigPre.h" -//#define USE_UBL_VIEWER 1 - #define UBL_Z_OFFSET_MIN -3.0 #define UBL_Z_OFFSET_MAX 3.0 class BedLevelToolsClass { public: - #if ENABLED(USE_UBL_VIEWER) + #if ENABLED(USE_GRID_MESHVIEWER) static bool viewer_asymmetric_range; static bool viewer_print_value; #endif @@ -74,11 +72,12 @@ class BedLevelToolsClass { static void MoveToXY(); static void MoveToZ(); static void ProbeXY(); + static void mesh_reset(); static float get_max_value(); static float get_min_value(); static bool meshvalidate(); - #if ENABLED(USE_UBL_VIEWER) - static void Draw_Bed_Mesh(int16_t selected = -1, uint8_t gridline_width = 1, uint16_t padding_x = 8, uint16_t padding_y_top = 40 + 53 - 7); + #if ENABLED(USE_GRID_MESHVIEWER) + static void Draw_Bed_Mesh(int16_t selected=-1, uint8_t gridline_width=1, uint16_t padding_x=8, uint16_t padding_y_top=(40 + 53 - 7)); static void Set_Mesh_Viewer_Status(); #endif }; diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index 83105f2109c2..624ea2338543 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -23,8 +23,8 @@ /** * DWIN Enhanced implementation for PRO UI * Author: Miguel A. Risco-Castillo (MRISCOC) - * Version: 3.21.2 - * Date: 2022/12/02 + * Version: 3.25.3 + * Date: 2023/05/18 */ #include "../../../inc/MarlinConfig.h" @@ -33,22 +33,25 @@ #include "../../utf8.h" #include "../../marlinui.h" - -#include "../../../sd/cardreader.h" - #include "../../../MarlinCore.h" #include "../../../core/serial.h" #include "../../../core/macros.h" - #include "../../../module/temperature.h" #include "../../../module/printcounter.h" #include "../../../module/motion.h" -#include "../../../module/stepper.h" #include "../../../module/planner.h" - +#include "../../../module/stepper.h" #include "../../../gcode/gcode.h" #include "../../../gcode/queue.h" +#if HAS_MEDIA + #include "../../../sd/cardreader.h" +#endif + +#if NEED_HEX_PRINT + #include "../../../libs/hex_print.h" +#endif + #if HAS_FILAMENT_SENSOR #include "../../../feature/runout.h" #endif @@ -98,8 +101,11 @@ #include "../../../feature/leds/leds.h" #endif +#if HAS_TRINAMIC_CONFIG + #include "../../../feature/tmc_util.h" +#endif + #include "dwin.h" -#include "dwinui.h" #include "menus.h" #include "dwin_popup.h" @@ -143,6 +149,15 @@ // Load and Unload limits #define MAX_LOAD_UNLOAD 500 +// Juntion deviation limits +#define MIN_JD_MM 0.001 +#define MAX_JD_MM TERN(LIN_ADVANCE, 0.3f, 0.5f) + +#if HAS_TRINAMIC_CONFIG + #define MIN_TMC_CURRENT 100 + #define MAX_TMC_CURRENT 3000 +#endif + // Editable temperature limits #define MIN_ETEMP 0 #define MAX_ETEMP (thermalManager.hotend_maxtemp[0] - (HOTEND_OVERSHOOT)) @@ -151,7 +166,6 @@ #define DWIN_VAR_UPDATE_INTERVAL 1024 #define DWIN_UPDATE_INTERVAL 1024 -#define DWIN_REMAIN_TIME_UPDATE_INTERVAL SEC_TO_MS(20) #if HAS_MESH && HAS_BED_PROBE #define BABY_Z_VAR probe.offset.z @@ -188,23 +202,20 @@ typedef struct { } select_t; select_t select_page{0}, select_print{0}; -#if HAS_HOTEND - float last_E = 0; - #define E_MIN_POS (last_E - (EXTRUDE_MAXLENGTH)) - #define E_MAX_POS (last_E + (EXTRUDE_MAXLENGTH)) +#if ENABLED(LCD_BED_TRAMMING) + constexpr float bed_tramming_inset_lfbr[] = BED_TRAMMING_INSET_LFRB; #endif bool hash_changed = true; // Flag to know if message status was changed -uint8_t _percent_done = 0; -uint32_t _remain_time = 0; bool blink = false; -millis_t dwin_heat_time = 0; uint8_t checkkey = 255, last_checkkey = MainMenu; // New menu system pointers MenuClass *FileMenu = nullptr; MenuClass *PrepareMenu = nullptr; -MenuClass *TrammingMenu = nullptr; +#if ENABLED(LCD_BED_TRAMMING) + MenuClass *TrammingMenu = nullptr; +#endif MenuClass *MoveMenu = nullptr; MenuClass *ControlMenu = nullptr; MenuClass *AdvancedSettings = nullptr; @@ -223,8 +234,9 @@ MenuClass *FilamentMenu = nullptr; #if ENABLED(MESH_BED_LEVELING) MenuClass *ManualMesh = nullptr; #endif -#if HAS_HOTEND +#if HAS_PREHEAT MenuClass *PreheatMenu = nullptr; + MenuClass *PreheatHotendMenu = nullptr; #endif MenuClass *TemperatureMenu = nullptr; MenuClass *MaxSpeedMenu = nullptr; @@ -236,10 +248,10 @@ MenuClass *StepsMenu = nullptr; #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) MenuClass *HotendMPCMenu = nullptr; #endif -#if ENABLED(PIDTEMP) +#if ENABLED(PIDTEMP) && ANY(PID_EDIT_MENU, PID_AUTOTUNE_MENU) MenuClass *HotendPIDMenu = nullptr; #endif -#if ENABLED(PIDTEMPBED) +#if ENABLED(PIDTEMPBED) && ANY(PID_EDIT_MENU, PID_AUTOTUNE_MENU) MenuClass *BedPIDMenu = nullptr; #endif #if ENABLED(CASELIGHT_USES_BRIGHTNESS) @@ -263,6 +275,12 @@ MenuClass *StepsMenu = nullptr; MenuClass *EditMeshMenu = nullptr; #endif #endif +#if ENABLED(SHAPING_MENU) + MenuClass *InputShapingMenu = nullptr; +#endif +#if HAS_TRINAMIC_CONFIG + MenuClass *TrinamicConfigMenu = nullptr; +#endif // Updatable menuitems pointers MenuItemClass *HotendTargetItem = nullptr; @@ -541,6 +559,7 @@ void Draw_Print_Labels() { } void Draw_Print_ProgressBar() { + const uint8_t _percent_done = ui.get_progress_percent(); DWINUI::Draw_IconWB(ICON_Bar, 15, 93); dwinDrawRectangle(1, HMI_data.Barfill_Color, 16 + _percent_done * 240 / 100, 93, 256, 113); DWINUI::Draw_Int(HMI_data.PercentTxt_Color, HMI_data.Background_Color, 3, 117, 133, _percent_done); @@ -549,19 +568,22 @@ void Draw_Print_ProgressBar() { void Draw_Print_ProgressElapsed() { char buf[10]; - duration_t elapsed = print_job_timer.duration(); // print timer + duration_t elapsed = print_job_timer.duration(); // Print timer sprintf_P(buf, PSTR("%02i:%02i "), (uint16_t)(elapsed.value / 3600), ((uint16_t)elapsed.value % 3600) / 60); DWINUI::Draw_String(HMI_data.Text_Color, HMI_data.Background_Color, 47, 192, buf); } -void Draw_Print_ProgressRemain() { - char buf[10]; - sprintf_P(buf, PSTR("%02i:%02i "), (uint16_t)(_remain_time / 3600), ((uint16_t)_remain_time % 3600) / 60); - DWINUI::Draw_String(HMI_data.Text_Color, HMI_data.Background_Color, 181, 192, buf); -} +#if ENABLED(SHOW_REMAINING_TIME) + void Draw_Print_ProgressRemain() { + const uint32_t _remain_time = ui.get_remaining_time(); + char buf[10]; + sprintf_P(buf, PSTR("%02i:%02i "), (uint16_t)(_remain_time / 3600), ((uint16_t)_remain_time % 3600) / 60); + DWINUI::Draw_String(HMI_data.Text_Color, HMI_data.Background_Color, 181, 192, buf); + } +#endif void ICON_ResumeOrPause() { - if (checkkey == PrintProcess) printingIsPaused() ? ICON_Resume() : ICON_Pause(); + if (checkkey == PrintProcess) (print_job_timer.isPaused() || hmiFlag.pause_flag) ? ICON_Resume() : ICON_Pause(); } // Update filename on print @@ -584,13 +606,13 @@ void Draw_PrintProcess() { else Title.ShowCaption(GET_TEXT_F(MSG_PRINTING)); DWINUI::ClearMainArea(); - DWIN_Print_Header(SD_Printing() ? card.longest_filename() : nullptr); + DWIN_Print_Header(nullptr); Draw_Print_Labels(); DWINUI::Draw_Icon(ICON_PrintTime, 15, 173); DWINUI::Draw_Icon(ICON_RemainTime, 150, 171); Draw_Print_ProgressBar(); Draw_Print_ProgressElapsed(); - Draw_Print_ProgressRemain(); + TERN_(SHOW_REMAINING_TIME, Draw_Print_ProgressRemain()); ICON_Tune(); ICON_ResumeOrPause(); ICON_Stop(); @@ -608,31 +630,28 @@ void Goto_PrintProcess() { } void Draw_PrintDone() { - // show percent bar and value - _percent_done = 100; - _remain_time = 0; - + TERN_(SET_PROGRESS_PERCENT, ui.set_progress_done()); + TERN_(SET_REMAINING_TIME, ui.reset_remaining_time()); Title.ShowCaption(GET_TEXT_F(MSG_PRINT_DONE)); DWINUI::ClearMainArea(); DWIN_Print_Header(nullptr); - #if HAS_GCODE_PREVIEW - const bool isvalid = Preview_Valid(); - if (isvalid) { - dwinIconShow(0, 0, 1, 21, 100, 0x00); - DWINUI::Draw_Button(BTN_Continue, 86, 300); + const bool haspreview = Preview_Valid(); + if (haspreview) { + Preview_Show(); + DWINUI::Draw_Button(BTN_Continue, 86, 295); } #else - constexpr bool isvalid = false; + constexpr bool haspreview = false; #endif - if (!isvalid) { + if (!haspreview) { Draw_Print_ProgressBar(); Draw_Print_Labels(); DWINUI::Draw_Icon(ICON_PrintTime, 15, 173); DWINUI::Draw_Icon(ICON_RemainTime, 150, 171); Draw_Print_ProgressElapsed(); - Draw_Print_ProgressRemain(); + TERN_(SHOW_REMAINING_TIME, Draw_Print_ProgressRemain()); DWINUI::Draw_Button(BTN_Continue, 86, 273); } } @@ -674,7 +693,13 @@ void _update_axis_value(const AxisEnum axis, const uint16_t x, const uint16_t y, // Check for a position change static xyz_pos_t oldpos = { -1, -1, -1 }; - const float p = TERN(SHOW_REAL_POS, stepper.position(axis) / planner.settings.axis_steps_per_mm[axis], current_position[axis]); + const float p = ( + #if ALL(IS_FULL_CARTESIAN, SHOW_REAL_POS) + planner.get_axis_position_mm(axis) + #else + current_position[axis] + #endif + ); const bool changed = oldpos[axis] != p; if (changed) oldpos[axis] = p; @@ -689,34 +714,58 @@ void _update_axis_value(const AxisEnum axis, const uint16_t x, const uint16_t y, } } +void _draw_iconblink(bool &flag, const bool sensor, const uint8_t icon1, const uint8_t icon2, const uint16_t x, const uint16_t y) { + #if DISABLED(NO_BLINK_IND) + if (flag != sensor) { + flag = sensor; + if (!flag) { + dwinDrawBox(1, HMI_data.Background_Color, x, y, 20, 20); + DWINUI::Draw_Icon(icon1, x, y); + } + } + if (flag) { + dwinDrawBox(1, blink ? HMI_data.SplitLine_Color : HMI_data.Background_Color, x, y, 20, 20); + DWINUI::Draw_Icon(icon2, x, y); + } + #else + if (flag != sensor) { + flag = sensor; + dwinDrawBox(1, HMI_data.Background_Color, x, y, 20, 20); + DWINUI::Draw_Icon(flag ? icon2 : icon1, x, y); + } + #endif +} + void _draw_ZOffsetIcon() { #if HAS_LEVELING - #if NO_BLINK_LEV_IND - static bool _leveling_active = false; - if (_leveling_active != planner.leveling_active) { - _leveling_active = planner.leveling_active; - dwinDrawRectangle(1, HMI_data.Background_Color, 186, 415, 205, 436); - DWINUI::Draw_Icon(_leveling_active ? ICON_SetZOffset : ICON_Zoffset, 187, 416); - } - #else - if (planner.leveling_active) { - dwinDrawRectangle(1, blink ? HMI_data.SplitLine_Color : HMI_data.Background_Color, 186, 415, 205, 436); - DWINUI::Draw_Icon(ICON_SetZOffset, 186, 416); - } - static bool _leveling_active = false; - if (_leveling_active != planner.leveling_active) { - _leveling_active = planner.leveling_active; - if (!_leveling_active) { - dwinDrawRectangle(1, HMI_data.Background_Color, 186, 415, 205, 436); - DWINUI::Draw_Icon(ICON_Zoffset, 187, 416); - } - } - #endif + static bool _leveling_active = false; + _draw_iconblink(_leveling_active, planner.leveling_active, ICON_Zoffset, ICON_SetZOffset, 186, 416); #else DWINUI::Draw_Icon(ICON_Zoffset, 187, 416); #endif } +void _draw_feedrate() { + #if ENABLED(SHOW_SPEED_IND) + int16_t _value; + if (blink) { + _value = feedrate_percentage; + DWINUI::Draw_String(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 116 + 4 * STAT_CHR_W + 2, 384, F(" %")); + } + else { + _value = CEIL(feedrate_mm_s * feedrate_percentage / 100); + dwinDrawBox(1, HMI_data.Background_Color, 116 + 5 * STAT_CHR_W + 2, 384, 20, 20); + } + DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 116 + 2 * STAT_CHR_W, 384, _value); + #else + static int16_t _feedrate = 100; + if (_feedrate != feedrate_percentage) { + _feedrate = feedrate_percentage; + DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 116 + 2 * STAT_CHR_W, 384, _feedrate); + } + #endif +} + void _draw_xyz_position(const bool force) { _update_axis_value(X_AXIS, 27, 459, force); _update_axis_value(Y_AXIS, 112, 459, force); @@ -724,6 +773,7 @@ void _draw_xyz_position(const bool force) { } void update_variable() { + _draw_xyz_position(false); #if HAS_HOTEND static celsius_t _hotendtemp = 0, _hotendtarget = 0; const celsius_t hc = thermalManager.wholeDegHotend(0), @@ -777,17 +827,11 @@ void update_variable() { DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 25 + 4 * STAT_CHR_W + 6, 417, _bedtarget); #endif - static int16_t _feedrate = 100; - if (_feedrate != feedrate_percentage) { - _feedrate = feedrate_percentage; - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 116 + 2 * STAT_CHR_W, 384, _feedrate); - } + _draw_feedrate(); #if HAS_FAN - if (_new_fanspeed) { - _fanspeed = thermalManager.fan_speed[0]; + if (_new_fanspeed) DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 195 + 2 * STAT_CHR_W, 384, _fanspeed); - } #endif static float _offset = 0; @@ -797,7 +841,6 @@ void update_variable() { } _draw_ZOffsetIcon(); - _draw_xyz_position(false); } /** @@ -806,43 +849,43 @@ void update_variable() { bool DWIN_lcd_sd_status = false; -void SetMediaAutoMount() { - Toggle_Chkb_Line(HMI_data.MediaAutoMount); -} +#if ENABLED(MEDIASORT_MENU_ITEM) + void SetMediaSort() { + Toggle_Chkb_Line(HMI_data.MediaSort); + card.setSortOn(HMI_data.MediaSort); + } +#endif + +void SetMediaAutoMount() { Toggle_Chkb_Line(HMI_data.MediaAutoMount); } inline uint16_t nr_sd_menu_items() { return _MIN(card.get_num_items() + !card.flag.workDirIsRoot, MENU_MAX_ITEMS); } void make_name_without_ext(char *dst, char *src, size_t maxlen=MENU_CHAR_LIMIT) { - size_t pos = strlen(src); // index of ending nul + size_t pos = strlen(src); // Index of ending nul // For files, remove the extension // which may be .gcode, .gco, or .g if (!card.flag.filenameIsDir) - while (pos && src[pos] != '.') pos--; // find last '.' (stop at 0) + while (pos && src[pos] != '.') pos--; // Find last '.' (stop at 0) if (!pos) pos = strlen(src); // pos = 0 ('.' not found) restore pos size_t len = pos; // nul or '.' if (len > maxlen) { // Keep the name short - pos = len = maxlen; // move nul down - dst[--pos] = '.'; // insert dots + pos = len = maxlen; // Move nul down + dst[--pos] = '.'; // Insert dots dst[--pos] = '.'; dst[--pos] = '.'; } - dst[len] = '\0'; // end it + dst[len] = '\0'; // End it // Copy down to 0 while (pos--) dst[pos] = src[pos]; } -void Redraw_SD_List() { - InvalidateMenu(); - Draw_Print_File_Menu(); -} - void SDCard_Up() { card.cdup(); DWIN_lcd_sd_status = false; // On next DWIN_Update @@ -865,8 +908,10 @@ void onClickSDItem() { if (card.fileIsBinary()) return DWIN_Popup_Confirm(ICON_Error, F("Please check filenames"), F("Only G-code can be printed")); - else + else { + DWIN_Print_Header(card.longest_filename()); // Save filename return Goto_ConfirmToPrint(); + } } } @@ -892,7 +937,7 @@ void onClickSDItem() { static int8_t shift_amt = 0, shift_len = 0; if (reset) { last_itemselected = 0; - hasUpDir = !card.flag.workDirIsRoot; // is a SubDir + hasUpDir = !card.flag.workDirIsRoot; // Is a SubDir return; } const uint8_t selected = FileMenu->selected; @@ -961,9 +1006,12 @@ void HMI_SDCardUpdate() { if (hmiFlag.home_flag) return; if (DWIN_lcd_sd_status != card.isMounted()) { DWIN_lcd_sd_status = card.isMounted(); - if (IsMenu(FileMenu)) Redraw_SD_List(); + ResetMenu(FileMenu); + if (IsMenu(FileMenu)) { + CurrentMenu = nullptr; + Draw_Print_File_Menu(); + } if (!DWIN_lcd_sd_status && SD_Printing()) ui.abort_print(); // Media removed while printing - dwinUpdateLCD(); } } @@ -974,6 +1022,12 @@ void HMI_SDCardUpdate() { void DWIN_Draw_Dashboard() { dwinDrawRectangle(1, HMI_data.Background_Color, 0, STATUS_Y + 21, DWIN_WIDTH, DWIN_HEIGHT - 1); + dwinDrawRectangle(1, HMI_data.SplitLine_Color, 0, 449, DWIN_WIDTH, 451); + + DWINUI::Draw_Icon(ICON_MaxSpeedX, 10, 456); + DWINUI::Draw_Icon(ICON_MaxSpeedY, 95, 456); + DWINUI::Draw_Icon(ICON_MaxSpeedZ, 180, 456); + _draw_xyz_position(true); #if HAS_HOTEND DWINUI::Draw_Icon(ICON_HotendTemp, 10, 383); @@ -995,7 +1049,7 @@ void DWIN_Draw_Dashboard() { DWINUI::Draw_Icon(ICON_Speed, 113, 383); DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 116 + 2 * STAT_CHR_W, 384, feedrate_percentage); - DWINUI::Draw_String(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 116 + 5 * STAT_CHR_W + 2, 384, F("%")); + IF_DISABLED(SHOW_SPEED_IND, DWINUI::Draw_String(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 116 + 5 * STAT_CHR_W + 2, 384, F("%"))); #if HAS_FAN DWINUI::Draw_Icon(ICON_FanSpeed, 187, 383); @@ -1004,17 +1058,8 @@ void DWIN_Draw_Dashboard() { #if HAS_ZOFFSET_ITEM DWINUI::Draw_Icon(planner.leveling_active ? ICON_SetZOffset : ICON_Zoffset, 187, 416); + DWINUI::Draw_Signed_Float(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 2, 2, 204, 417, BABY_Z_VAR); #endif - - DWINUI::Draw_Signed_Float(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 2, 2, 204, 417, BABY_Z_VAR); - - dwinDrawRectangle(1, HMI_data.SplitLine_Color, 0, 449, DWIN_WIDTH, 451); - - DWINUI::Draw_Icon(ICON_MaxSpeedX, 10, 456); - DWINUI::Draw_Icon(ICON_MaxSpeedY, 95, 456); - DWINUI::Draw_Icon(ICON_MaxSpeedZ, 180, 456); - _draw_xyz_position(true); - } void Draw_Info_Menu() { @@ -1091,8 +1136,8 @@ void HMI_MainMenu() { // Pause or Stop popup void onClick_PauseOrStop() { switch (select_print.now) { - case PRINT_PAUSE_RESUME: if (hmiFlag.select_flag) ui.pause_print(); break; // confirm pause - case PRINT_STOP: if (hmiFlag.select_flag) ui.abort_print(); break; // stop confirmed then abort print + case PRINT_PAUSE_RESUME: if (hmiFlag.select_flag) ui.pause_print(); break; // Confirm pause + case PRINT_STOP: if (hmiFlag.select_flag) ui.abort_print(); break; // Stop confirmed then abort print default: break; } return Goto_PrintProcess(); @@ -1125,7 +1170,7 @@ void HMI_Printing() { switch (select_print.now) { case PRINT_SETUP: Draw_Tune_Menu(); break; case PRINT_PAUSE_RESUME: - if (printingIsPaused()) { // if printer is already in pause + if (printingIsPaused()) { // If printer is already in pause ui.resume_print(); break; } @@ -1163,12 +1208,6 @@ void Draw_Main_Area() { } } -void HMI_ReturnScreen() { - checkkey = last_checkkey; - wait_for_user = false; - Draw_Main_Area(); -} - void HMI_WaitForUser() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState != ENCODER_DIFF_NO && !ui.backlight) { @@ -1197,7 +1236,7 @@ void HMI_Init() { #define BOOTSCREEN_TIMEOUT 1100 #endif DWINUI::Draw_Box(1, Color_Black, { 5, 220, DWIN_WIDTH - 5, DWINUI::fontHeight() }); - DWINUI::Draw_CenteredString(Color_White, 220, F("Professional Firmware ")); + DWINUI::Draw_CenteredString(Color_White, 220, F("ProUI starting up ")); for (uint16_t t = 15; t < 257; t += 11) { DWINUI::Draw_Icon(ICON_Bar, 15, 260); dwinDrawRectangle(1, HMI_data.Background_Color, t, 260, 257, 280); @@ -1220,7 +1259,11 @@ void EachMomentUpdate() { if (checkkey == ESDiagProcess) ESDiag.Update(); #endif #if SHOW_TUNING_GRAPH - if (checkkey == PidProcess) plot.Update((HMI_value.pidresult == PIDTEMP_START) ? thermalManager.wholeDegHotend(0) : thermalManager.wholeDegBed()); + if (checkkey == PidProcess) { + TERN_(PIDTEMP, if (HMI_value.tempcontrol == PIDTEMP_START) plot.Update(thermalManager.wholeDegHotend(0))); + TERN_(PIDTEMPBED, if (HMI_value.tempcontrol == PIDTEMPBED_START) plot.Update(thermalManager.wholeDegBed())); + } + TERN_(MPCTEMP, if (checkkey == MPCProcess) plot.Update(thermalManager.wholeDegHotend(0))); #endif } @@ -1261,40 +1304,37 @@ void EachMomentUpdate() { DWIN_Print_Resume(); } - if (checkkey == PrintProcess) { // print process + if (checkkey == PrintProcess) { // Print process - duration_t elapsed = print_job_timer.duration(); // print timer - - if (card.isPrinting() && !hmiFlag.percent_flag) { - uint8_t percentDone = card.percentDone(); - if (_percent_done != percentDone) { // print percent - _percent_done = percentDone; - Draw_Print_ProgressBar(); - } + // Progress percent + static uint8_t _percent_done = 255; + if (_percent_done != ui.get_progress_percent()) { + _percent_done = ui.get_progress_percent(); + Draw_Print_ProgressBar(); + } - // Estimate remaining time every 20 seconds - static millis_t next_remain_time_update = 0; - if (_percent_done > 1 && ELAPSED(ms, next_remain_time_update) && !hmiFlag.heat_flag && !hmiFlag.remain_flag) { - _remain_time = (elapsed.value - dwin_heat_time) / (_percent_done * 0.01f) - (elapsed.value - dwin_heat_time); - next_remain_time_update += DWIN_REMAIN_TIME_UPDATE_INTERVAL; + // Remaining time + #if ENABLED(SHOW_REMAINING_TIME) + static uint32_t _remain_time = 0; + if (_remain_time != ui.get_remaining_time()) { + _remain_time = ui.get_remaining_time(); Draw_Print_ProgressRemain(); } - } + #endif - // Print time so far - static uint16_t last_Printtime = 0; - const uint16_t min = (elapsed.value % 3600) / 60; - if (last_Printtime != min) { // 1 minute update - last_Printtime = min; + // Elapsed print time + static uint16_t _printtime = 0; + const uint16_t min = (print_job_timer.duration() % 3600) / 60; + if (_printtime != min) { // 1 minute update + _printtime = min; Draw_Print_ProgressElapsed(); } - } #if ENABLED(POWER_LOSS_RECOVERY) - else if (DWIN_lcd_sd_status && recovery.dwin_flag) { // resume print before power off + else if (DWIN_lcd_sd_status && recovery.dwin_flag) { // Resume print before power off return Goto_PowerLossRecovery(); } - #endif // POWER_LOSS_RECOVERY + #endif dwinUpdateLCD(); } @@ -1321,6 +1361,7 @@ void EachMomentUpdate() { const char * const filename = card.diveToFile(true, dir, recovery.info.sd_filename); card.selectFileByName(filename); DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 207, card.longest_filename()); + DWIN_Print_Header(card.longest_filename()); // Save filename Draw_Select_Highlight(hmiFlag.select_flag); dwinUpdateLCD(); } @@ -1332,6 +1373,7 @@ void EachMomentUpdate() { return Goto_Main_Menu(); } else { + HMI_SaveProcessID(NothingToDo); select_print.set(PRINT_SETUP); queue.inject(F("M1000")); } @@ -1345,7 +1387,6 @@ void EachMomentUpdate() { #endif // POWER_LOSS_RECOVERY - void DWIN_HandleScreen() { switch (checkkey) { case MainMenu: HMI_MainMenu(); break; @@ -1372,27 +1413,41 @@ void DWIN_HandleScreen() { } bool IDisPopUp() { // If ID is popup... - return (checkkey == NothingToDo) - || (checkkey == WaitResponse) - || (checkkey == Homing) - || (checkkey == Leveling) - || (checkkey == PidProcess) - || TERN0(HAS_ESDIAG, (checkkey == ESDiagProcess)) - || (checkkey == Popup); + switch (checkkey) { + case NothingToDo: + case WaitResponse: + case Popup: + case Homing: + case Leveling: + case PidProcess: + TERN_(HAS_ESDIAG, case ESDiagProcess:) + return true; + default: break; + } + return false; } void HMI_SaveProcessID(const uint8_t id) { - if (checkkey != id) { - if (!IDisPopUp()) last_checkkey = checkkey; // if previous is not a popup - if ((id == Popup) - || TERN0(HAS_ESDIAG, (id == ESDiagProcess)) - || (id == PrintDone) - || (id == Leveling) - || (id == WaitResponse)) wait_for_user = true; - checkkey = id; + if (checkkey == id) return; + if (!IDisPopUp()) last_checkkey = checkkey; // If previous is not a popup + checkkey = id; + switch (id) { + case Popup: + case WaitResponse: + case PrintDone: + case Leveling: + TERN_(HAS_ESDIAG, case ESDiagProcess:) + wait_for_user = true; + default: break; } } +void HMI_ReturnScreen() { + checkkey = last_checkkey; + wait_for_user = false; + Draw_Main_Area(); +} + void dwinHomingStart() { hmiFlag.home_flag = true; HMI_SaveProcessID(Homing); @@ -1402,7 +1457,10 @@ void dwinHomingStart() { void dwinHomingDone() { hmiFlag.home_flag = false; - HMI_ReturnScreen(); + if (last_checkkey == PrintDone) + Goto_PrintDone(); + else + HMI_ReturnScreen(); } void DWIN_LevelingStart() { @@ -1411,16 +1469,22 @@ void DWIN_LevelingStart() { Title.ShowCaption(GET_TEXT_F(MSG_BED_LEVELING)); DWIN_Show_Popup(ICON_AutoLeveling, GET_TEXT_F(MSG_BED_LEVELING), GET_TEXT_F(MSG_PLEASE_WAIT)); #if ALL(AUTO_BED_LEVELING_UBL, PREHEAT_BEFORE_LEVELING) - #if HAS_HOTEND - if (thermalManager.degTargetHotend(0) < LEVELING_NOZZLE_TEMP) - thermalManager.setTargetHotend(LEVELING_NOZZLE_TEMP, 0); - #endif - #if HAS_HEATED_BED - if (thermalManager.degTargetBed() < HMI_data.BedLevT) - thermalManager.setTargetBed(HMI_data.BedLevT); + #if HAS_BED_PROBE + if (!DEBUGGING(DRYRUN)) probe.preheat_for_probing(LEVELING_NOZZLE_TEMP, HMI_data.BedLevT); + #else + #if HAS_HOTEND + if (!DEBUGGING(DRYRUN) && thermalManager.degTargetHotend(0) < LEVELING_NOZZLE_TEMP) { + thermalManager.setTargetHotend(LEVELING_NOZZLE_TEMP, 0); + thermalManager.wait_for_hotend(0); + } + #endif + #if HAS_HEATED_BED + if (!DEBUGGING(DRYRUN) && thermalManager.degTargetBed() < HMI_data.BedLevT) { + thermalManager.setTargetBed(HMI_data.BedLevT); + thermalManager.wait_for_bed_heating(); + } + #endif #endif - TERN_(HAS_HOTEND, thermalManager.wait_for_hotend(0)); - TERN_(HAS_HEATED_BED, thermalManager.wait_for_bed_heating()); #endif #elif ENABLED(MESH_BED_LEVELING) Draw_ManualMesh_Menu(); @@ -1428,15 +1492,13 @@ void DWIN_LevelingStart() { } void DWIN_LevelingDone() { - TERN_(HAS_MESH, Goto_MeshViewer()); + TERN_(HAS_MESH, Goto_MeshViewer(true)); } #if HAS_MESH void DWIN_MeshUpdate(const int8_t cpos, const int8_t tpos, const_float_t zval) { - char msg[33] = ""; char str_1[6] = ""; - sprintf_P(msg, PSTR(S_FMT " %i/%i Z=%s"), GET_TEXT(MSG_PROBING_POINT), cpos, tpos, dtostrf(zval, 1, 2, str_1)); - ui.set_status(msg); + ui.status_printf(0, F(S_FMT " %i/%i Z=%s"), GET_TEXT_F(MSG_PROBING_POINT), cpos, tpos, dtostrf(zval, 1, 2, str_1)); } #endif @@ -1452,7 +1514,7 @@ void DWIN_LevelingDone() { DWINUI::ClearMainArea(); Draw_Popup_Bkgd(); - switch (HMI_value.pidresult) { + switch (HMI_value.tempcontrol) { default: return; #if ENABLED(MPC_AUTOTUNE) case MPCTEMP_START: @@ -1469,7 +1531,7 @@ void DWIN_LevelingDone() { #endif } - switch (HMI_value.pidresult) { + switch (HMI_value.tempcontrol) { default: break; #if ANY(PIDTEMP, MPC_AUTOTUNE) TERN_(PIDTEMP, case PIDTEMP_START:) @@ -1484,7 +1546,7 @@ void DWIN_LevelingDone() { #endif } - switch (HMI_value.pidresult) { + switch (HMI_value.tempcontrol) { default: break; #if ENABLED(MPC_AUTOTUNE) case MPCTEMP_START: @@ -1526,7 +1588,7 @@ void DWIN_LevelingDone() { } void DWIN_PidTuning(tempcontrol_t result) { - HMI_value.pidresult = result; + HMI_value.tempcontrol = result; switch (result) { #if ENABLED(PIDTEMP) case PIDTEMP_START: @@ -1560,7 +1622,7 @@ void DWIN_LevelingDone() { checkkey = last_checkkey; DWIN_Popup_Confirm(ICON_TempTooHigh, GET_TEXT_F(MSG_ERROR), GET_TEXT_F(MSG_PID_TIMEOUT)); break; - case PID_DONE: + case AUTOTUNE_DONE: checkkey = last_checkkey; DWIN_Popup_Confirm(ICON_TempTooLow, GET_TEXT_F(MSG_PID_AUTOTUNE), GET_TEXT_F(MSG_BUTTON_DONE)); break; @@ -1575,7 +1637,7 @@ void DWIN_LevelingDone() { #if ENABLED(MPC_AUTOTUNE) void DWIN_MPCTuning(tempcontrol_t result) { - HMI_value.pidresult = result; + HMI_value.tempcontrol = result; switch (result) { case MPCTEMP_START: HMI_SaveProcessID(MPCProcess); @@ -1595,7 +1657,7 @@ void DWIN_LevelingDone() { DWIN_Popup_Confirm(ICON_TempTooHigh, GET_TEXT_F(MSG_ERROR), F(STR_MPC_AUTOTUNE_INTERRUPTED)); ui.reset_alert_level(); break; - case MPC_DONE: + case AUTOTUNE_DONE: checkkey = last_checkkey; DWIN_Popup_Confirm(ICON_TempTooLow, GET_TEXT_F(MSG_MPC_AUTOTUNE), GET_TEXT_F(MSG_BUTTON_DONE)); ui.reset_alert_level(); @@ -1612,10 +1674,8 @@ void DWIN_LevelingDone() { // Started a Print Job void DWIN_Print_Started() { TERN_(HAS_GCODE_PREVIEW, if (Host_Printing()) Preview_Invalidate()); - _percent_done = 0; - _remain_time = 0; - hmiFlag.percent_flag = false; - hmiFlag.remain_flag = false; + TERN_(SET_PROGRESS_PERCENT, ui.progress_reset()); + TERN_(SET_REMAINING_TIME, ui.reset_remaining_time()); hmiFlag.pause_flag = false; hmiFlag.abort_flag = false; select_print.reset(); @@ -1636,6 +1696,7 @@ void DWIN_Print_Resume() { // Ended print job void DWIN_Print_Finished() { TERN_(POWER_LOSS_RECOVERY, if (card.isPrinting()) recovery.cancel()); + hmiFlag.abort_flag = false; hmiFlag.pause_flag = false; wait_for_heatup = false; planner.finish_and_disable(); @@ -1648,23 +1709,6 @@ void DWIN_Print_Aborted() { DWIN_Print_Finished(); } -// Progress and remaining time update -void DWIN_M73() { - if (parser.seenval('P')) { - _percent_done = parser.value_byte(); - hmiFlag.percent_flag = true; - } - if (parser.seenval('R')) { - _remain_time = parser.value_ulong() * 60; - hmiFlag.remain_flag = true; - } - if (checkkey == PrintProcess) { - Draw_Print_ProgressBar(); - Draw_Print_ProgressRemain(); - Draw_Print_ProgressElapsed(); - } -} - #if HAS_FILAMENT_SENSOR // Filament Runout process void DWIN_FilamentRunout(const uint8_t extruder) { LCD_MESSAGE(MSG_RUNOUT_SENSOR); } @@ -1703,7 +1747,13 @@ void DWIN_SetDataDefaults() { #endif TERN_(PREHEAT_BEFORE_LEVELING, HMI_data.BedLevT = LEVELING_BED_TEMP); TERN_(BAUD_RATE_GCODE, SetBaud250K()); - HMI_data.FullManualTramming = false; + #if ALL(LCD_BED_TRAMMING, HAS_BED_PROBE) + HMI_data.FullManualTramming = DISABLED(BED_TRAMMING_USE_PROBE); + #endif + #if ENABLED(MEDIASORT_MENU_ITEM) + HMI_data.MediaSort = true; + card.setSortOn(true); + #endif HMI_data.MediaAutoMount = ENABLED(HAS_SD_EXTENDER); #if ALL(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) HMI_data.z_after_homing = DEF_Z_AFTER_HOMING; @@ -1712,6 +1762,8 @@ void DWIN_SetDataDefaults() { TERN_(LED_COLOR_PRESETS, leds.set_default()); ApplyLEDColor(); #endif + TERN_(ADAPTIVE_STEP_SMOOTHING, HMI_data.AdaptiveStepSmoothing = true); + TERN_(HAS_GCODE_PREVIEW, HMI_data.EnablePreview = true); } void DWIN_CopySettingsTo(char * const buff) { @@ -1738,7 +1790,7 @@ void DWIN_CopySettingsFrom(const char * const buff) { // Initialize or re-initialize the LCD void MarlinUI::init_lcd() { - delay(750); // wait to wakeup screen + delay(750); // Wait to wakeup screen const bool hs = dwinHandshake(); UNUSED(hs); dwinFrameSetDir(1); dwinJPGCacheTo1(Language_English); @@ -1747,22 +1799,21 @@ void MarlinUI::init_lcd() { void dwinInitScreen() { DWIN_SetColorDefaults(); - HMI_Init(); // draws boot screen + HMI_Init(); // Draws boot screen DWINUI::init(); DWINUI::SetColors(HMI_data.Text_Color, HMI_data.Background_Color, HMI_data.StatusBg_Color); DWINUI::onTitleDraw = Draw_Title; InitMenu(); checkkey = 255; hash_changed = true; - last_E = 0; DWIN_DrawStatusLine(); DWIN_Draw_Dashboard(); Goto_Main_Menu(); } void MarlinUI::update() { - EachMomentUpdate(); // Status update HMI_SDCardUpdate(); // SD card update + EachMomentUpdate(); // Status update DWIN_HandleScreen(); // Rotary encoder update } @@ -1798,7 +1849,7 @@ void DWIN_RedrawScreen() { } #if ENABLED(ADVANCED_PAUSE_FEATURE) - void DWIN_Popup_Pause(FSTR_P const fmsg, uint8_t button /*= 0*/) { + void DWIN_Popup_Pause(FSTR_P const fmsg, uint8_t button/*=0*/) { HMI_SaveProcessID(button ? WaitResponse : NothingToDo); DWIN_Show_Popup(ICON_BLTouch, GET_TEXT_F(MSG_ADVANCED_PAUSE), fmsg, button); } @@ -1853,7 +1904,6 @@ void DWIN_RedrawScreen() { #endif // ADVANCED_PAUSE_FEATURE #if HAS_MESH - void DWIN_MeshViewer() { if (!leveling_is_valid()) DWIN_Popup_Continue(ICON_BLTouch, GET_TEXT_F(MSG_MESH_VIEWER), GET_TEXT_F(MSG_NO_VALID_MESH)); @@ -1862,8 +1912,7 @@ void DWIN_RedrawScreen() { MeshViewer.Draw(); } } - -#endif // HAS_MESH +#endif #if HAS_LOCKSCREEN @@ -1893,11 +1942,11 @@ void DWIN_RedrawScreen() { #if HAS_GCODE_PREVIEW + void SetPreview() { Toggle_Chkb_Line(HMI_data.EnablePreview); } + void onClick_ConfirmToPrint() { - Preview_Reset(); DWIN_ResetStatusLine(); if (hmiFlag.select_flag) { // Confirm - hmiFlag.heat_flag = true; Goto_Main_Menu(); return card.openAndPrintFile(card.filename); } @@ -1905,16 +1954,13 @@ void DWIN_RedrawScreen() { HMI_ReturnScreen(); } -#endif +#endif // HAS_GCODE_PREVIEW void Goto_ConfirmToPrint() { #if HAS_GCODE_PREVIEW - Goto_Popup(Preview_DrawFromSD, onClick_ConfirmToPrint); - #else - // Print SD file - hmiFlag.heat_flag = true; - card.openAndPrintFile(card.filename); + if (HMI_data.EnablePreview) return Goto_Popup(Preview_DrawFromSD, onClick_ConfirmToPrint); #endif + card.openAndPrintFile(card.filename); // Direct print SD file } #if HAS_ESDIAG @@ -1925,7 +1971,7 @@ void Goto_ConfirmToPrint() { #endif //============================================================================= -// NEW MENU SUBSYSTEM +// MENU SUBSYSTEM //============================================================================= // Tool functions @@ -1954,7 +2000,7 @@ void Goto_ConfirmToPrint() { void SaveMesh() { TERN(AUTO_BED_LEVELING_UBL, UBLMeshSave(), WriteEeprom()); } #endif -#endif +#endif // EEPROM_SETTINGS // Reset Printer void RebootPrinter() { @@ -1974,7 +2020,7 @@ void Goto_Info_Menu() { void DisableMotors() { queue.inject(F("M84")); } void AutoLev() { // Always reacquire the Z "home" position - queue.inject(F(TERN(AUTO_BED_LEVELING_UBL, "G28Z\nG29P1", "G28XYO\nG28Z\nG29"))); + queue.inject(F(TERN(AUTO_BED_LEVELING_UBL, "G29P1", "G29"))); } void AutoHome() { queue.inject_P(G28_STR); } @@ -1989,14 +2035,6 @@ void AutoHome() { queue.inject_P(G28_STR); } #endif #endif -#if HAS_HOME_OFFSET - // Apply workspace offset, making the current position 0,0,0 - void SetHome() { - queue.inject(F("G92X0Y0Z0")); - DONE_BUZZ(true); - } -#endif - #if HAS_ZOFFSET_ITEM void ApplyZOffset() { TERN_(EEPROM_SETTINGS, settings.save()); } @@ -2013,30 +2051,30 @@ void AutoHome() { queue.inject_P(G28_STR); } SetPFloatOnClick(Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX, 2, ApplyZOffset, LiveZOffset); } - void SetMoveZto0() { - #if ENABLED(Z_SAFE_HOMING) - char cmd[54], str_1[5], str_2[5]; - sprintf_P(cmd, PSTR("G28XYO\nG28Z\nG0X%sY%sF5000\nG0Z0F300\nM400"), - dtostrf(Z_SAFE_HOMING_X_POINT, 1, 1, str_1), - dtostrf(Z_SAFE_HOMING_Y_POINT, 1, 1, str_2) - ); - gcode.process_subcommands_now(cmd); - #else - TERN_(HAS_LEVELING, set_bed_leveling_enabled(false)); - gcode.process_subcommands_now(F("G28Z\nG0Z0F300\nM400")); - #endif - ui.reset_status(); - DONE_BUZZ(true); - } +#endif // HAS_ZOFFSET_ITEM - #if !HAS_BED_PROBE - void HomeZandDisable() { - SetMoveZto0(); - DisableMotors(); - } +void SetMoveZto0() { + #if ENABLED(Z_SAFE_HOMING) + char cmd[54], str_1[5], str_2[5]; + sprintf_P(cmd, PSTR("G28XYO\nG28Z\nG0X%sY%sF5000\nG0Z0F300\nM400"), + dtostrf(Z_SAFE_HOMING_X_POINT, 1, 1, str_1), + dtostrf(Z_SAFE_HOMING_Y_POINT, 1, 1, str_2) + ); + gcode.process_subcommands_now(cmd); + #else + TERN_(HAS_LEVELING, set_bed_leveling_enabled(false)); + gcode.process_subcommands_now(F("G28Z\nG0Z0F300\nM400")); #endif + ui.reset_status(); + DONE_BUZZ(true); +} -#endif // HAS_ZOFFSET_ITEM +#if DISABLED(HAS_BED_PROBE) + void HomeZandDisable() { + SetMoveZto0(); + DisableMotors(); + } +#endif #if HAS_PREHEAT #define _DoPreheat(N) void DoPreheat##N() { ui.preheat_all(N-1); }\ @@ -2054,17 +2092,24 @@ void SetLanguage() { bool EnableLiveMove = false; void SetLiveMove() { Toggle_Chkb_Line(EnableLiveMove); } -void LiveMove() { +void AxisMove(AxisEnum axis) { + #if HAS_HOTEND + if (axis == E_AXIS && thermalManager.tooColdToExtrude(0)) { + gcode.process_subcommands_now(F("G92E0")); // Reset extruder position + return DWIN_Popup_Confirm(ICON_TempTooLow, GET_TEXT_F(MSG_HOTEND_TOO_COLD), GET_TEXT_F(MSG_PLEASE_PREHEAT)); + } + #endif planner.synchronize(); + if (!planner.is_full()) planner.buffer_line(current_position, manual_feedrate_mm_s[axis]); +} +void LiveMove() { if (!EnableLiveMove) return; *MenuData.P_Float = MenuData.Value / MINUNITMULT; - if (!planner.is_full()) planner.buffer_line(current_position, manual_feedrate_mm_s[HMI_value.axis]); + AxisMove(HMI_value.axis); } void ApplyMove() { - planner.synchronize(); if (EnableLiveMove) return; - if (HMI_value.axis == E_AXIS) last_E = MenuData.Value / MINUNITMULT; - if (!planner.is_full()) planner.buffer_line(current_position, manual_feedrate_mm_s[HMI_value.axis]); + AxisMove(HMI_value.axis); } void SetMoveX() { HMI_value.axis = X_AXIS; SetPFloatOnClick(X_MIN_POS, X_MAX_POS, UNITFDIGITS, ApplyMove, LiveMove); } @@ -2073,28 +2118,10 @@ void SetMoveZ() { HMI_value.axis = Z_AXIS; SetPFloatOnClick(Z_MIN_POS, Z_MAX_POS #if HAS_HOTEND void SetMoveE() { - if (thermalManager.tooColdToExtrude(0)) return DWIN_Popup_Confirm(ICON_TempTooLow, GET_TEXT_F(MSG_HOTEND_TOO_COLD), GET_TEXT_F(MSG_PLEASE_PREHEAT)); - HMI_value.axis = E_AXIS; SetPFloatOnClick(E_MIN_POS, E_MAX_POS, UNITFDIGITS, ApplyMove, LiveMove); - } -#endif - -#if DWIN_PID_TUNE - void SetPID(celsius_t t, heater_id_t h) { - char cmd[53] = ""; - char str_1[5] = "", str_2[5] = ""; - sprintf_P(cmd, PSTR("G28OXY\nG0Z5F300\nG0X%sY%sF5000\nM84\nM400"), - dtostrf(X_CENTER, 1, 1, str_1), - dtostrf(Y_CENTER, 1, 1, str_2) - ); - gcode.process_subcommands_now(cmd); - thermalManager.PID_autotune(t, h, HMI_data.PidCycles, true); + const float e_min = current_position.e - (EXTRUDE_MAXLENGTH), + e_max = current_position.e + (EXTRUDE_MAXLENGTH); + HMI_value.axis = E_AXIS; SetPFloatOnClick(e_min, e_max, UNITFDIGITS, ApplyMove, LiveMove); } - #if ENABLED(PIDTEMP) - void HotendPID() { SetPID(HMI_data.HotendPidT, H_E0); } - #endif - #if ENABLED(PIDTEMPBED) - void BedPID() { SetPID(HMI_data.BedPidT, H_BED); } - #endif #endif #if ENABLED(POWER_LOSS_RECOVERY) @@ -2210,39 +2237,6 @@ void SetMoveZ() { HMI_value.axis = Z_AXIS; SetPFloatOnClick(Z_MIN_POS, Z_MAX_POS void SetExtMinT() { SetPIntOnClick(MIN_ETEMP, MAX_ETEMP, ApplyExtMinT); } #endif -void RestoreDefaultColors() { - DWIN_SetColorDefaults(); - DWINUI::SetColors(HMI_data.Text_Color, HMI_data.Background_Color, HMI_data.StatusBg_Color); - DWIN_RedrawScreen(); -} - -void SelColor() { - MenuData.P_Int = (int16_t*)static_cast(CurrentMenu->SelectedItem())->value; - HMI_value.Color[0] = GetRColor(*MenuData.P_Int); // Red - HMI_value.Color[1] = GetGColor(*MenuData.P_Int); // Green - HMI_value.Color[2] = GetBColor(*MenuData.P_Int); // Blue - Draw_GetColor_Menu(); -} - -void LiveRGBColor() { - HMI_value.Color[CurrentMenu->line() - 2] = MenuData.Value; - uint16_t color = RGB(HMI_value.Color[0], HMI_value.Color[1], HMI_value.Color[2]); - dwinDrawRectangle(1, color, 20, 315, DWIN_WIDTH - 20, 335); -} -void SetRGBColor() { - const uint8_t color = static_cast(CurrentMenu->SelectedItem())->icon; - SetIntOnClick(0, (color == 1) ? 63 : 31, HMI_value.Color[color], nullptr, LiveRGBColor); -} - -void DWIN_ApplyColor() { - *MenuData.P_Int = RGB(HMI_value.Color[0], HMI_value.Color[1], HMI_value.Color[2]); - DWINUI::SetColors(HMI_data.Text_Color, HMI_data.Background_Color, HMI_data.StatusBg_Color); - Draw_SelectColors_Menu(); - hash_changed = true; - LCD_MESSAGE(MSG_COLORS_APPLIED); - DWIN_Draw_Dashboard(); -} - void SetSpeed() { SetPIntOnClick(MIN_PRINT_SPEED, MAX_PRINT_SPEED); } #if HAS_HOTEND @@ -2292,172 +2286,187 @@ void SetFlow() { SetPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refr // Bed Tramming -void TramXY(const uint8_t point, const float &margin, float &x, float &y) { - switch (point) { - case 0: - LCD_MESSAGE(MSG_LEVBED_FL); - x = y = margin; - break; - case 1: - LCD_MESSAGE(MSG_LEVBED_FR); - x = X_BED_SIZE - margin; y = margin; - break; - case 2: - LCD_MESSAGE(MSG_LEVBED_BR); - x = X_BED_SIZE - margin; y = Y_BED_SIZE - margin; - break; - case 3: - LCD_MESSAGE(MSG_LEVBED_BL); - x = margin; y = Y_BED_SIZE - margin; - break; - case 4: - LCD_MESSAGE(MSG_LEVBED_C); - x = X_CENTER; y = Y_CENTER; - break; +#if ENABLED(LCD_BED_TRAMMING) + + void TramXY(const uint8_t point, float &x, float &y) { + switch (point) { + case 0: + LCD_MESSAGE(MSG_TRAM_FL); + x = bed_tramming_inset_lfbr[0]; + y = bed_tramming_inset_lfbr[1]; + break; + case 1: + LCD_MESSAGE(MSG_TRAM_FR); + x = X_BED_SIZE - bed_tramming_inset_lfbr[2]; + y = bed_tramming_inset_lfbr[1]; + break; + case 2: + LCD_MESSAGE(MSG_TRAM_BR); + x = X_BED_SIZE - bed_tramming_inset_lfbr[2]; + y = Y_BED_SIZE - bed_tramming_inset_lfbr[3]; + break; + case 3: + LCD_MESSAGE(MSG_TRAM_BL); + x = bed_tramming_inset_lfbr[0]; + y = Y_BED_SIZE - bed_tramming_inset_lfbr[3]; + break; + #if ENABLED(BED_TRAMMING_INCLUDE_CENTER) + case 4: + LCD_MESSAGE(MSG_TRAM_C); + x = X_CENTER; y = Y_CENTER; + break; + #endif + } } -} -#if HAS_BED_PROBE + #if HAS_BED_PROBE - float Tram(const uint8_t point) { - char cmd[100] = ""; - static bool inLev = false; - float xpos = 0, ypos = 0, zval = 0, margin = 0; - char str_1[6] = "", str_2[6] = "", str_3[6] = ""; - if (inLev) return NAN; - margin = HMI_data.FullManualTramming ? 30 : PROBING_MARGIN; - - TramXY(point, margin, xpos, ypos); - - if (HMI_data.FullManualTramming) { - sprintf_P(cmd, PSTR("M420S0\nG28O\nG90\nG0Z5F300\nG0X%sY%sF5000\nG0Z0F300"), - dtostrf(xpos, 1, 1, str_1), - dtostrf(ypos, 1, 1, str_2) - ); - queue.inject(cmd); - } - else { - // AUTO_BED_LEVELING_BILINEAR does not define MESH_INSET - #ifndef MESH_MIN_X - #define MESH_MIN_X (_MAX(X_MIN_BED + PROBING_MARGIN, X_MIN_POS)) - #endif - #ifndef MESH_MIN_Y - #define MESH_MIN_Y (_MAX(Y_MIN_BED + PROBING_MARGIN, Y_MIN_POS)) - #endif - #ifndef MESH_MAX_X - #define MESH_MAX_X (_MIN(X_MAX_BED - (PROBING_MARGIN), X_MAX_POS)) - #endif - #ifndef MESH_MAX_Y - #define MESH_MAX_Y (_MIN(Y_MAX_BED - (PROBING_MARGIN), Y_MAX_POS)) - #endif + float Tram(const uint8_t point) { + char cmd[100] = ""; + static bool inLev = false; + float xpos = 0, ypos = 0, zval = 0; + char str_1[6] = "", str_2[6] = "", str_3[6] = ""; + if (inLev) return NAN; - LIMIT(xpos, MESH_MIN_X, MESH_MAX_X); - LIMIT(ypos, MESH_MIN_Y, MESH_MAX_Y); - probe.stow(); - gcode.process_subcommands_now(F("M420S0\nG28O")); - inLev = true; - zval = probe.probe_at_point(xpos, ypos, PROBE_PT_STOW); - if (isnan(zval)) - LCD_MESSAGE(MSG_ZPROBE_OUT); - else { - sprintf_P(cmd, PSTR("X:%s, Y:%s, Z:%s"), + TramXY(point, xpos, ypos); + + if (HMI_data.FullManualTramming) { + sprintf_P(cmd, PSTR("M420S0\nG28O\nG90\nG0Z5F300\nG0X%sY%sF5000\nG0Z0F300"), dtostrf(xpos, 1, 1, str_1), - dtostrf(ypos, 1, 1, str_2), - dtostrf(zval, 1, 2, str_3) + dtostrf(ypos, 1, 1, str_2) ); - ui.set_status(cmd); + queue.inject(cmd); + } + else { + // AUTO_BED_LEVELING_BILINEAR does not define MESH_INSET + #ifndef MESH_MIN_X + #define MESH_MIN_X (_MAX(X_MIN_BED + PROBING_MARGIN, X_MIN_POS)) + #endif + #ifndef MESH_MIN_Y + #define MESH_MIN_Y (_MAX(Y_MIN_BED + PROBING_MARGIN, Y_MIN_POS)) + #endif + #ifndef MESH_MAX_X + #define MESH_MAX_X (_MIN(X_MAX_BED - (PROBING_MARGIN), X_MAX_POS)) + #endif + #ifndef MESH_MAX_Y + #define MESH_MAX_Y (_MIN(Y_MAX_BED - (PROBING_MARGIN), Y_MAX_POS)) + #endif + + LIMIT(xpos, MESH_MIN_X, MESH_MAX_X); + LIMIT(ypos, MESH_MIN_Y, MESH_MAX_Y); + probe.stow(); + gcode.process_subcommands_now(F("M420S0\nG28O")); + inLev = true; + zval = probe.probe_at_point(xpos, ypos, PROBE_PT_STOW); + if (isnan(zval)) + LCD_MESSAGE(MSG_ZPROBE_OUT); + else { + sprintf_P(cmd, PSTR("X:%s, Y:%s, Z:%s"), + dtostrf(xpos, 1, 1, str_1), + dtostrf(ypos, 1, 1, str_2), + dtostrf(zval, 1, 2, str_3) + ); + ui.set_status(cmd); + } + inLev = false; } - inLev = false; + return zval; } - return zval; - } -#else + #else - void Tram(const uint8_t point) { - float xpos = 0, ypos = 0, margin = 30; - TramXY(point, margin, xpos, ypos); + void Tram(const uint8_t point) { + float xpos = 0, ypos = 0; + TramXY(point, xpos, ypos); - char cmd[100] = "", str_1[6] = "", str_2[6] = ""; - sprintf_P(cmd, PSTR("M420S0\nG28O\nG90\nG0Z5F300\nG0X%sY%sF5000\nG0Z0F300"), dtostrf(xpos, 1, 1, str_1), dtostrf(ypos, 1, 1, str_2)); - queue.inject(cmd); - } + char cmd[100] = "", str_1[6] = "", str_2[6] = ""; + sprintf_P(cmd, PSTR("M420S0\nG28O\nG90\nG0Z5F300\nG0X%sY%sF5000\nG0Z0F300"), dtostrf(xpos, 1, 1, str_1), dtostrf(ypos, 1, 1, str_2)); + queue.inject(cmd); + } -#endif + #endif -void TramFL() { Tram(0); } -void TramFR() { Tram(1); } -void TramBR() { Tram(2); } -void TramBL() { Tram(3); } -void TramC () { Tram(4); } + inline void TramFL() { Tram(0); } + inline void TramFR() { Tram(1); } + inline void TramBR() { Tram(2); } + inline void TramBL() { Tram(3); } + #if ENABLED(BED_TRAMMING_INCLUDE_CENTER) + inline void TramC() { Tram(4); } + #endif -#if HAS_BED_PROBE && HAS_MESH + #if HAS_BED_PROBE && HAS_MESH - void Trammingwizard() { - if (HMI_data.FullManualTramming) { - LCD_MESSAGE_F("Disable manual tramming"); - return; - } - bed_mesh_t zval = {0}; - zval[0][0] = Tram(0); - checkkey = NothingToDo; - MeshViewer.DrawMesh(zval, 2, 2); - zval[1][0] = Tram(1); - MeshViewer.DrawMesh(zval, 2, 2); - zval[1][1] = Tram(2); - MeshViewer.DrawMesh(zval, 2, 2); - zval[0][1] = Tram(3); - MeshViewer.DrawMesh(zval, 2, 2); - - DWINUI::Draw_CenteredString(140, F("Calculating average")); - DWINUI::Draw_CenteredString(160, F("and relative heights")); - safe_delay(1000); - float avg = 0.0f; - for (uint8_t x = 0; x < 2; ++x) for (uint8_t y = 0; y < 2; ++y) avg += zval[x][y]; - avg /= 4.0f; - for (uint8_t x = 0; x < 2; ++x) for (uint8_t y = 0; y < 2; ++y) zval[x][y] -= avg; - MeshViewer.DrawMesh(zval, 2, 2); - ui.reset_status(); - - if (ABS(MeshViewer.max - MeshViewer.min) < 0.05f) { - DWINUI::Draw_CenteredString(140, F("Corners leveled")); - DWINUI::Draw_CenteredString(160, F("Tolerance achieved!")); - } - else { - uint8_t p = 0; - float max = 0; - FSTR_P plabel; - bool s = true; - for (uint8_t x = 0; x < 2; ++x) for (uint8_t y = 0; y < 2; ++y) { - const float d = ABS(zval[x][y]); - if (max < d) { - s = (zval[x][y] >= 0); - max = d; - p = x + 2 * y; - } + void Trammingwizard() { + if (HMI_data.FullManualTramming) { + LCD_MESSAGE_F("Disable manual tramming"); + return; } - switch (p) { - case 0b00 : plabel = GET_TEXT_F(MSG_LEVBED_FL); break; - case 0b01 : plabel = GET_TEXT_F(MSG_LEVBED_FR); break; - case 0b10 : plabel = GET_TEXT_F(MSG_LEVBED_BL); break; - case 0b11 : plabel = GET_TEXT_F(MSG_LEVBED_BR); break; - default : plabel = F(""); break; + bed_mesh_t zval = {0}; + zval[0][0] = TramFL(); + checkkey = NothingToDo; + MeshViewer.DrawMesh(zval, 2, 2); + zval[1][0] = TramFR(); + MeshViewer.DrawMesh(zval, 2, 2); + zval[1][1] = TramBR(); + MeshViewer.DrawMesh(zval, 2, 2); + zval[0][1] = TramBL(); + MeshViewer.DrawMesh(zval, 2, 2); + + DWINUI::Draw_CenteredString(140, F("Calculating average")); + DWINUI::Draw_CenteredString(160, F("and relative heights")); + safe_delay(1000); + float avg = 0.0f; + for (uint8_t x = 0; x < 2; ++x) for (uint8_t y = 0; y < 2; ++y) avg += zval[x][y]; + avg /= 4.0f; + for (uint8_t x = 0; x < 2; ++x) for (uint8_t y = 0; y < 2; ++y) zval[x][y] -= avg; + MeshViewer.DrawMesh(zval, 2, 2); + ui.reset_status(); + + #ifndef BED_TRAMMING_PROBE_TOLERANCE + #define BED_TRAMMING_PROBE_TOLERANCE 0.05 + #endif + + if (ABS(MeshViewer.max - MeshViewer.min) < BED_TRAMMING_PROBE_TOLERANCE) { + DWINUI::Draw_CenteredString(140, F("Corners leveled")); + DWINUI::Draw_CenteredString(160, F("Tolerance achieved!")); } - DWINUI::Draw_CenteredString(120, F("Corners not leveled")); - DWINUI::Draw_CenteredString(140, F("Knob adjustment required")); - DWINUI::Draw_CenteredString(Color_Green, 160, s ? F("Lower") : F("Raise")); - DWINUI::Draw_CenteredString(Color_Green, 180, plabel); + else { + uint8_t p = 0; + float max = 0; + FSTR_P plabel; + bool s = true; + for (uint8_t x = 0; x < 2; ++x) for (uint8_t y = 0; y < 2; ++y) { + const float d = ABS(zval[x][y]); + if (max < d) { + s = (zval[x][y] >= 0); + max = d; + p = x + 2 * y; + } + } + switch (p) { + case 0b00 : plabel = GET_TEXT_F(MSG_TRAM_FL); break; + case 0b01 : plabel = GET_TEXT_F(MSG_TRAM_FR); break; + case 0b10 : plabel = GET_TEXT_F(MSG_TRAM_BL); break; + case 0b11 : plabel = GET_TEXT_F(MSG_TRAM_BR); break; + default : plabel = F(""); break; + } + DWINUI::Draw_CenteredString(120, F("Corners not leveled")); + DWINUI::Draw_CenteredString(140, F("Knob adjustment required")); + DWINUI::Draw_CenteredString(Color_Green, 160, s ? F("Lower") : F("Raise")); + DWINUI::Draw_CenteredString(Color_Green, 180, plabel); + } + DWINUI::Draw_Button(BTN_Continue, 86, 305); + checkkey = Menu; + HMI_SaveProcessID(WaitResponse); } - DWINUI::Draw_Button(BTN_Continue, 86, 305); - checkkey = Menu; - HMI_SaveProcessID(WaitResponse); - } - void SetManualTramming() { - Toggle_Chkb_Line(HMI_data.FullManualTramming); - } + void SetManualTramming() { + Toggle_Chkb_Line(HMI_data.FullManualTramming); + } -#endif // HAS_BED_PROBE && HAS_MESH + #endif // HAS_BED_PROBE && HAS_MESH + +#endif // LCD_BED_TRAMMING #if ENABLED(MESH_BED_LEVELING) @@ -2545,6 +2554,13 @@ void ApplyMaxAccel() { planner.set_max_acceleration(HMI_value.axis, MenuData.Val #if HAS_HOTEND void SetMaxJerkE() { HMI_value.axis = E_AXIS; SetFloatOnClick(min_jerk_edit_values.e, max_jerk_edit_values.e, UNITFDIGITS, planner.max_jerk.e, ApplyMaxJerk); } #endif +#elif HAS_JUNCTION_DEVIATION + void ApplyJDmm() { TERN_(LIN_ADVANCE, planner.recalculate_max_e_jerk()); } + void SetJDmm() { SetPFloatOnClick(MIN_JD_MM, MAX_JD_MM, 3, ApplyJDmm); } +#endif + +#if ENABLED(LIN_ADVANCE) + void SetLA_K() { SetPFloatOnClick(0, 10, 3); } #endif #if HAS_X_AXIS @@ -2558,37 +2574,7 @@ void ApplyMaxAccel() { planner.set_max_acceleration(HMI_value.axis, MenuData.Val #endif #if HAS_HOTEND void SetStepsE() { HMI_value.axis = E_AXIS; SetPFloatOnClick( min_steps_edit_values.e, max_steps_edit_values.e, UNITFDIGITS); } - #if ENABLED(PIDTEMP) - void SetHotendPidT() { SetPIntOnClick(MIN_ETEMP, MAX_ETEMP); } - #endif -#endif -#if ENABLED(PIDTEMPBED) - void SetBedPidT() { SetPIntOnClick(MIN_BEDTEMP, MAX_BEDTEMP); } -#endif - -#if DWIN_PID_TUNE - void SetPidCycles() { SetPIntOnClick(3, 50); } - void SetKp() { SetPFloatOnClick(0, 1000, 2); } - void ApplyPIDi() { - *MenuData.P_Float = scalePID_i(MenuData.Value / POW(10, 2)); - TERN_(PIDTEMP, thermalManager.updatePID()); - } - void ApplyPIDd() { - *MenuData.P_Float = scalePID_d(MenuData.Value / POW(10, 2)); - TERN_(PIDTEMP, thermalManager.updatePID()); - } - void SetKi() { - MenuData.P_Float = (float*)static_cast(CurrentMenu->SelectedItem())->value; - const float value = unscalePID_i(*MenuData.P_Float); - SetFloatOnClick(0, 1000, 2, value, ApplyPIDi); - } - void SetKd() { - MenuData.P_Float = (float*)static_cast(CurrentMenu->SelectedItem())->value; - const float value = unscalePID_d(*MenuData.P_Float); - SetFloatOnClick(0, 1000, 2, value, ApplyPIDd); - } #endif - #if ENABLED(FWRETRACT) void Return_FWRetract_Menu() { (PreviousMenu == FilSetMenu) ? Draw_FilSet_Menu() : Draw_Tune_Menu(); } void SetRetractLength() { SetPFloatOnClick( 0, 10, UNITFDIGITS); } @@ -2680,11 +2666,6 @@ void onDrawAutoHome(MenuItemClass* menuitem, int8_t line) { if (HMI_IsChinese()) menuitem->SetFrame(1, 174, 164, 223, 177); onDrawPFloat2Menu(menuitem, line); } - #else - void onDrawHomeOffset(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 43, 89, 98, 101); - onDrawMenuItem(menuitem, line); - } #endif #endif @@ -2737,11 +2718,6 @@ void onDrawGetColorItem(MenuItemClass* menuitem, int8_t line) { dwinDrawHLine(HMI_data.SplitLine_Color, 16, MYPOS(line + 1), 240); } -#if DWIN_PID_TUNE - void onDrawPIDi(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, unscalePID_i(*(float*)static_cast(menuitem)->value)); } - void onDrawPIDd(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, unscalePID_d(*(float*)static_cast(menuitem)->value)); } -#endif - void onDrawSpeedItem(MenuItemClass* menuitem, int8_t line) { if (HMI_IsChinese()) menuitem->SetFrame(1, 116, 164, 171, 176); onDrawPIntMenu(menuitem, line); @@ -3022,7 +2998,9 @@ void Draw_Prepare_Menu() { MENU_ITEM(ICON_FilMan, MSG_FILAMENT_MAN, onDrawSubMenu, Draw_FilamentMan_Menu); #endif MENU_ITEM(ICON_Axis, MSG_MOVE_AXIS, onDrawMoveSubMenu, Draw_Move_Menu); - MENU_ITEM(ICON_Tram, MSG_BED_TRAMMING, onDrawSubMenu, Draw_Tramming_Menu); + #if ENABLED(LCD_BED_TRAMMING) + MENU_ITEM(ICON_Tram, MSG_BED_TRAMMING, onDrawSubMenu, Draw_Tramming_Menu); + #endif MENU_ITEM(ICON_CloseMotor, MSG_DISABLE_STEPPERS, onDrawDisableMotors, DisableMotors); #if ENABLED(INDIVIDUAL_AXIS_HOMING_SUBMENU) MENU_ITEM(ICON_Homing, MSG_HOMING, onDrawSubMenu, Draw_Homing_Menu); @@ -3039,8 +3017,6 @@ void Draw_Prepare_Menu() { MENU_ITEM(ICON_SetZOffset, MSG_PROBE_WIZARD, onDrawSubMenu, Draw_ZOffsetWiz_Menu); #elif ENABLED(BABYSTEPPING) EDIT_ITEM(ICON_Zoffset, MSG_HOME_OFFSET_Z, onDrawPFloat2Menu, SetZOffset, &BABY_Z_VAR); - #elif HAS_HOME_OFFSET - MENU_ITEM(ICON_SetHome, MSG_SET_HOME_OFFSETS, onDrawHomeOffset, SetHome); #endif #endif #if HAS_PREHEAT @@ -3054,24 +3030,30 @@ void Draw_Prepare_Menu() { UpdateMenu(PrepareMenu); } -void Draw_Tramming_Menu() { - checkkey = Menu; - if (SET_MENU(TrammingMenu, MSG_BED_TRAMMING, 8)) { - BACK_ITEM(Draw_Prepare_Menu); - #if HAS_BED_PROBE && HAS_MESH - MENU_ITEM(ICON_ProbeSet, MSG_TRAMMING_WIZARD, onDrawMenuItem, Trammingwizard); - EDIT_ITEM(ICON_ProbeSet, MSG_BED_TRAMMING_MANUAL, onDrawChkbMenu, SetManualTramming, &HMI_data.FullManualTramming); - #elif !HAS_BED_PROBE && HAS_ZOFFSET_ITEM - MENU_ITEM_F(ICON_MoveZ0, "Home Z and disable", onDrawMenuItem, HomeZandDisable); - #endif - MENU_ITEM(ICON_Axis, MSG_LEVBED_FL, onDrawMenuItem, TramFL); - MENU_ITEM(ICON_Axis, MSG_LEVBED_FR, onDrawMenuItem, TramFR); - MENU_ITEM(ICON_Axis, MSG_LEVBED_BR, onDrawMenuItem, TramBR); - MENU_ITEM(ICON_Axis, MSG_LEVBED_BL, onDrawMenuItem, TramBL); - MENU_ITEM(ICON_Axis, MSG_LEVBED_C, onDrawMenuItem, TramC ); +#if ENABLED(LCD_BED_TRAMMING) + + void Draw_Tramming_Menu() { + checkkey = Menu; + if (SET_MENU(TrammingMenu, MSG_BED_TRAMMING, 8)) { + BACK_ITEM(Draw_Prepare_Menu); + #if HAS_BED_PROBE && HAS_MESH + MENU_ITEM(ICON_ProbeSet, MSG_TRAMMING_WIZARD, onDrawMenuItem, Trammingwizard); + EDIT_ITEM(ICON_ProbeSet, MSG_BED_TRAMMING_MANUAL, onDrawChkbMenu, SetManualTramming, &HMI_data.FullManualTramming); + #elif !HAS_BED_PROBE && HAS_ZOFFSET_ITEM + MENU_ITEM_F(ICON_MoveZ0, "Home Z and disable", onDrawMenuItem, HomeZandDisable); + #endif + MENU_ITEM(ICON_Axis, MSG_TRAM_FL, onDrawMenuItem, TramFL); + MENU_ITEM(ICON_Axis, MSG_TRAM_FR, onDrawMenuItem, TramFR); + MENU_ITEM(ICON_Axis, MSG_TRAM_BR, onDrawMenuItem, TramBR); + MENU_ITEM(ICON_Axis, MSG_TRAM_BL, onDrawMenuItem, TramBL); + #if ENABLED(BED_TRAMMING_INCLUDE_CENTER) + MENU_ITEM(ICON_Axis, MSG_TRAM_C, onDrawMenuItem, TramC); + #endif + } + UpdateMenu(TrammingMenu); } - UpdateMenu(TrammingMenu); -} + +#endif // LCD_BED_TRAMMING void Draw_Control_Menu() { checkkey = Menu; @@ -3103,7 +3085,7 @@ void Draw_Control_Menu() { void Draw_AdvancedSettings_Menu() { checkkey = Menu; - if (SET_MENU(AdvancedSettings, MSG_ADVANCED_SETTINGS, 19)) { + if (SET_MENU(AdvancedSettings, MSG_ADVANCED_SETTINGS, 22)) { BACK_ITEM(Goto_Main_Menu); #if ENABLED(EEPROM_SETTINGS) MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, WriteEeprom); @@ -3115,15 +3097,18 @@ void Draw_AdvancedSettings_Menu() { MENU_ITEM(ICON_ProbeSet, MSG_ZPROBE_SETTINGS, onDrawSubMenu, Draw_ProbeSet_Menu); #endif MENU_ITEM(ICON_FilSet, MSG_FILAMENT_SET, onDrawSubMenu, Draw_FilSet_Menu); - #if ENABLED(PIDTEMP) + #if ENABLED(PIDTEMP) && ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) MENU_ITEM_F(ICON_PIDNozzle, STR_HOTEND_PID " Settings", onDrawSubMenu, Draw_HotendPID_Menu); #endif #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) MENU_ITEM_F(ICON_MPCNozzle, "MPC Settings", onDrawSubMenu, Draw_HotendMPC_Menu); #endif - #if ENABLED(PIDTEMPBED) + #if ENABLED(PIDTEMPBED) && ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) MENU_ITEM_F(ICON_PIDBed, STR_BED_PID " Settings", onDrawSubMenu, Draw_BedPID_Menu); #endif + #if HAS_TRINAMIC_CONFIG + MENU_ITEM(ICON_TMCSet, MSG_TMC_DRIVERS, onDrawSubMenu, Draw_TrinamicConfig_menu); + #endif #if HAS_ESDIAG MENU_ITEM_F(ICON_ESDiag, "End-stops diag.", onDrawSubMenu, Draw_EndStopDiag); #endif @@ -3140,6 +3125,12 @@ void Draw_AdvancedSettings_Menu() { #if ENABLED(POWER_LOSS_RECOVERY) EDIT_ITEM(ICON_Pwrlossr, MSG_OUTAGE_RECOVERY, onDrawChkbMenu, SetPwrLossr, &recovery.enabled); #endif + #if HAS_GCODE_PREVIEW + EDIT_ITEM(ICON_File, MSG_HAS_PREVIEW, onDrawChkbMenu, SetPreview, &HMI_data.EnablePreview); + #endif + #if ENABLED(MEDIASORT_MENU_ITEM) + EDIT_ITEM(ICON_File, MSG_MEDIA_SORT, onDrawChkbMenu, SetMediaSort, &HMI_data.MediaSort); + #endif EDIT_ITEM(ICON_File, MSG_MEDIA_UPDATE, onDrawChkbMenu, SetMediaAutoMount, &HMI_data.MediaAutoMount); #if ENABLED(BAUD_RATE_GCODE) EDIT_ITEM_F(ICON_SetBaudRate, "115K baud", onDrawChkbMenu, SetBaudRate, &HMI_data.Baud115K); @@ -3148,7 +3139,9 @@ void Draw_AdvancedSettings_Menu() { EDIT_ITEM(ICON_Brightness, MSG_BRIGHTNESS, onDrawPInt8Menu, SetBrightness, &ui.brightness); MENU_ITEM(ICON_Brightness, MSG_BRIGHTNESS_OFF, onDrawMenuItem, TurnOffBacklight); #endif - MENU_ITEM(ICON_Scolor, MSG_COLORS_SELECT, onDrawSubMenu, Draw_SelectColors_Menu); + #if HAS_CUSTOM_COLORS + MENU_ITEM(ICON_Scolor, MSG_COLORS_SELECT, onDrawSubMenu, Draw_SelectColors_Menu); + #endif } ui.reset_status(true); UpdateMenu(AdvancedSettings); @@ -3169,7 +3162,7 @@ void Draw_Move_Menu() { EDIT_ITEM(ICON_MoveZ, MSG_MOVE_Z, onDrawMoveZ, SetMoveZ, ¤t_position.z); #endif #if HAS_HOTEND - gcode.process_subcommands_now(F("G92E0")); // reset extruder position + gcode.process_subcommands_now(F("G92E0")); // Reset extruder position EDIT_ITEM(ICON_Extruder, MSG_MOVE_E, onDrawMoveE, SetMoveE, ¤t_position.e); #endif } @@ -3196,7 +3189,7 @@ void Draw_Move_Menu() { UpdateMenu(HomeOffMenu); } -#endif +#endif // HAS_HOME_OFFSET #if HAS_BED_PROBE @@ -3226,7 +3219,7 @@ void Draw_Move_Menu() { UpdateMenu(ProbeSetMenu); } -#endif +#endif // HAS_BED_PROBE void Draw_FilSet_Menu() { checkkey = Menu; @@ -3252,46 +3245,6 @@ void Draw_FilSet_Menu() { UpdateMenu(FilSetMenu); } -void Draw_SelectColors_Menu() { - checkkey = Menu; - if (SET_MENU(SelectColorMenu, MSG_COLORS_SELECT, 20)) { - BACK_ITEM(Draw_AdvancedSettings_Menu); - MENU_ITEM(ICON_StockConfiguration, MSG_RESTORE_DEFAULTS, onDrawMenuItem, RestoreDefaultColors); - EDIT_ITEM_F(0, "Screen Background", onDrawSelColorItem, SelColor, &HMI_data.Background_Color); - EDIT_ITEM_F(0, "Cursor", onDrawSelColorItem, SelColor, &HMI_data.Cursor_Color); - EDIT_ITEM_F(0, "Title Background", onDrawSelColorItem, SelColor, &HMI_data.TitleBg_Color); - EDIT_ITEM_F(0, "Title Text", onDrawSelColorItem, SelColor, &HMI_data.TitleTxt_Color); - EDIT_ITEM_F(0, "Text", onDrawSelColorItem, SelColor, &HMI_data.Text_Color); - EDIT_ITEM_F(0, "Selected", onDrawSelColorItem, SelColor, &HMI_data.Selected_Color); - EDIT_ITEM_F(0, "Split Line", onDrawSelColorItem, SelColor, &HMI_data.SplitLine_Color); - EDIT_ITEM_F(0, "Highlight", onDrawSelColorItem, SelColor, &HMI_data.Highlight_Color); - EDIT_ITEM_F(0, "Status Background", onDrawSelColorItem, SelColor, &HMI_data.StatusBg_Color); - EDIT_ITEM_F(0, "Status Text", onDrawSelColorItem, SelColor, &HMI_data.StatusTxt_Color); - EDIT_ITEM_F(0, "Popup Background", onDrawSelColorItem, SelColor, &HMI_data.PopupBg_Color); - EDIT_ITEM_F(0, "Popup Text", onDrawSelColorItem, SelColor, &HMI_data.PopupTxt_Color); - EDIT_ITEM_F(0, "Alert Background", onDrawSelColorItem, SelColor, &HMI_data.AlertBg_Color); - EDIT_ITEM_F(0, "Alert Text", onDrawSelColorItem, SelColor, &HMI_data.AlertTxt_Color); - EDIT_ITEM_F(0, "Percent Text", onDrawSelColorItem, SelColor, &HMI_data.PercentTxt_Color); - EDIT_ITEM_F(0, "Bar Fill", onDrawSelColorItem, SelColor, &HMI_data.Barfill_Color); - EDIT_ITEM_F(0, "Indicator value", onDrawSelColorItem, SelColor, &HMI_data.Indicator_Color); - EDIT_ITEM_F(0, "Coordinate value", onDrawSelColorItem, SelColor, &HMI_data.Coordinate_Color); - } - UpdateMenu(SelectColorMenu); -} - -void Draw_GetColor_Menu() { - checkkey = Menu; - if (SET_MENU(GetColorMenu, MSG_COLORS_GET, 5)) { - BACK_ITEM(DWIN_ApplyColor); - MENU_ITEM(ICON_Cancel, MSG_BUTTON_CANCEL, onDrawMenuItem, Draw_SelectColors_Menu); - MENU_ITEM(0, MSG_COLORS_RED, onDrawGetColorItem, SetRGBColor); - MENU_ITEM(1, MSG_COLORS_GREEN, onDrawGetColorItem, SetRGBColor); - MENU_ITEM(2, MSG_COLORS_BLUE, onDrawGetColorItem, SetRGBColor); - } - UpdateMenu(GetColorMenu); - dwinDrawRectangle(1, *MenuData.P_Int, 20, 315, DWIN_WIDTH - 20, 335); -} - #if ALL(CASE_LIGHT_MENU, CASELIGHT_USES_BRIGHTNESS) void Draw_CaseLight_Menu() { @@ -3342,7 +3295,7 @@ void Draw_GetColor_Menu() { void Draw_Tune_Menu() { checkkey = Menu; - if (SET_MENU_R(TuneMenu, selrect({73, 2, 28, 12}), MSG_TUNE, 14)) { + if (SET_MENU_R(TuneMenu, selrect({73, 2, 28, 12}), MSG_TUNE, 17)) { BACK_ITEM(Goto_PrintProcess); EDIT_ITEM(ICON_Speed, MSG_SPEED, onDrawSpeedItem, SetSpeed, &feedrate_percentage); #if HAS_HOTEND @@ -3354,7 +3307,7 @@ void Draw_Tune_Menu() { #if HAS_FAN FanSpeedItem = EDIT_ITEM(ICON_FanSpeed, MSG_FAN_SPEED, onDrawFanSpeed, SetFanSpeed, &thermalManager.fan_speed[0]); #endif - #if ALL(HAS_ZOFFSET_ITEM, HAS_BED_PROBE, BABYSTEPPING) + #if ALL(HAS_ZOFFSET_ITEM, HAS_BED_PROBE, BABYSTEP_ZPROBE_OFFSET, BABYSTEPPING) EDIT_ITEM(ICON_Zoffset, MSG_ZPROBE_ZOFFSET, onDrawZOffset, SetZOffset, &BABY_Z_VAR); #elif ALL(HAS_ZOFFSET_ITEM, MESH_BED_LEVELING, BABYSTEPPING) EDIT_ITEM(ICON_Zoffset, MSG_HOME_OFFSET_Z, onDrawPFloat2Menu, SetZOffset, &BABY_Z_VAR); @@ -3366,9 +3319,18 @@ void Draw_Tune_Menu() { #if HAS_FILAMENT_SENSOR EDIT_ITEM(ICON_Runout, MSG_RUNOUT_ENABLE, onDrawChkbMenu, SetRunoutEnable, &runout.enabled); #endif + #if ENABLED(PLR_TUNE_ITEM) + EDIT_ITEM(ICON_Pwrlossr, MSG_OUTAGE_RECOVERY, onDrawChkbMenu, SetPwrLossr, &recovery.enabled); + #endif #if ENABLED(FWRETRACT) MENU_ITEM(ICON_FWRetract, MSG_FWRETRACT, onDrawSubMenu, Draw_FWRetract_Menu); #endif + #if ENABLED(JD_TUNE_ITEM) + EDIT_ITEM(ICON_JDmm, MSG_JUNCTION_DEVIATION, onDrawPFloat3Menu, SetJDmm, &planner.junction_deviation_mm); + #endif + #if ENABLED(ADVK_TUNE_ITEM) + EDIT_ITEM(ICON_MaxAccelerated, MSG_ADVANCE_K, onDrawPFloat3Menu, SetLA_K, &planner.extruder_advance_K[0]); + #endif #if HAS_LOCKSCREEN MENU_ITEM(ICON_Lock, MSG_LOCKSCREEN, onDrawMenuItem, DWIN_LockScreen); #endif @@ -3385,30 +3347,133 @@ void Draw_Tune_Menu() { UpdateMenu(TuneMenu); } +#if ENABLED(ADAPTIVE_STEP_SMOOTHING) + void SetAdaptiveStepSmoothing() { + Toggle_Chkb_Line(HMI_data.AdaptiveStepSmoothing); + } +#endif + +#if ENABLED(SHAPING_MENU) + void ApplyShapingFreq() { stepper.set_shaping_frequency(HMI_value.axis, MenuData.Value / 100); } + void ApplyShapingZeta() { stepper.set_shaping_damping_ratio(HMI_value.axis, MenuData.Value / 100); } + + #if ENABLED(INPUT_SHAPING_X) + void onDrawShapingXFreq(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, stepper.get_shaping_frequency(X_AXIS)); } + void onDrawShapingXZeta(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, stepper.get_shaping_damping_ratio(X_AXIS)); } + void SetShapingXFreq() { HMI_value.axis = X_AXIS; SetFloatOnClick(0, 200, 2, stepper.get_shaping_frequency(X_AXIS), ApplyShapingFreq); } + void SetShapingXZeta() { HMI_value.axis = X_AXIS; SetFloatOnClick(0, 1, 2, stepper.get_shaping_damping_ratio(X_AXIS), ApplyShapingZeta); } + #endif + + #if ENABLED(INPUT_SHAPING_Y) + void onDrawShapingYFreq(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, stepper.get_shaping_frequency(Y_AXIS)); } + void onDrawShapingYZeta(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, stepper.get_shaping_damping_ratio(Y_AXIS)); } + void SetShapingYFreq() { HMI_value.axis = Y_AXIS; SetFloatOnClick(0, 200, 2, stepper.get_shaping_frequency(Y_AXIS), ApplyShapingFreq); } + void SetShapingYZeta() { HMI_value.axis = Y_AXIS; SetFloatOnClick(0, 1, 2, stepper.get_shaping_damping_ratio(Y_AXIS), ApplyShapingZeta); } + #endif + + void Draw_InputShaping_menu() { + checkkey = Menu; + if (SET_MENU(InputShapingMenu, MSG_INPUT_SHAPING, 5)) { + BACK_ITEM(Draw_Motion_Menu); + #if ENABLED(INPUT_SHAPING_X) + MENU_ITEM(ICON_ShapingX, MSG_SHAPING_A_FREQ, onDrawShapingXFreq, SetShapingXFreq); + MENU_ITEM(ICON_ShapingX, MSG_SHAPING_A_ZETA, onDrawShapingXZeta, SetShapingXZeta); + #endif + #if ENABLED(INPUT_SHAPING_Y) + MENU_ITEM(ICON_ShapingY, MSG_SHAPING_B_FREQ, onDrawShapingYFreq, SetShapingYFreq); + MENU_ITEM(ICON_ShapingY, MSG_SHAPING_B_ZETA, onDrawShapingYZeta, SetShapingYZeta); + #endif + } + UpdateMenu(InputShapingMenu); + } +#endif + +#if HAS_TRINAMIC_CONFIG + #if AXIS_IS_TMC(X) + void SetXTMCCurrent() { SetPIntOnClick(MIN_TMC_CURRENT, MAX_TMC_CURRENT, []{ stepperX.refresh_stepper_current(); }); } + #endif + #if AXIS_IS_TMC(Y) + void SetYTMCCurrent() { SetPIntOnClick(MIN_TMC_CURRENT, MAX_TMC_CURRENT, []{ stepperY.refresh_stepper_current(); }); } + #endif + #if AXIS_IS_TMC(Z) + void SetZTMCCurrent() { SetPIntOnClick(MIN_TMC_CURRENT, MAX_TMC_CURRENT, []{ stepperZ.refresh_stepper_current(); }); } + #endif + #if AXIS_IS_TMC(E0) + void SetETMCCurrent() { SetPIntOnClick(MIN_TMC_CURRENT, MAX_TMC_CURRENT, []{ stepperE0.refresh_stepper_current(); }); } + #endif + + void Draw_TrinamicConfig_menu() { + checkkey = Menu; + if (SET_MENU(TrinamicConfigMenu, MSG_TMC_DRIVERS, 5)) { + BACK_ITEM(Draw_AdvancedSettings_Menu); + #if AXIS_IS_TMC(X) + EDIT_ITEM(ICON_TMCXSet, MSG_TMC_ACURRENT, onDrawPIntMenu, SetXTMCCurrent, &stepperX.val_mA); + #endif + #if AXIS_IS_TMC(Y) + EDIT_ITEM(ICON_TMCYSet, MSG_TMC_BCURRENT, onDrawPIntMenu, SetYTMCCurrent, &stepperY.val_mA); + #endif + #if AXIS_IS_TMC(Z) + EDIT_ITEM(ICON_TMCZSet, MSG_TMC_CCURRENT, onDrawPIntMenu, SetZTMCCurrent, &stepperZ.val_mA); + #endif + #if AXIS_IS_TMC(E0) + EDIT_ITEM(ICON_TMCESet, MSG_TMC_ECURRENT, onDrawPIntMenu, SetETMCCurrent, &stepperE0.val_mA); + #endif + } + UpdateMenu(TrinamicConfigMenu); + } +#endif + void Draw_Motion_Menu() { checkkey = Menu; - if (SET_MENU_R(MotionMenu, selrect({1, 16, 28, 13}), MSG_MOTION, 6)) { + if (SET_MENU_R(MotionMenu, selrect({1, 16, 28, 13}), MSG_MOTION, 10)) { BACK_ITEM(Draw_Control_Menu); MENU_ITEM(ICON_MaxSpeed, MSG_SPEED, onDrawSpeed, Draw_MaxSpeed_Menu); MENU_ITEM(ICON_MaxAccelerated, MSG_ACCELERATION, onDrawAcc, Draw_MaxAccel_Menu); #if HAS_CLASSIC_JERK MENU_ITEM(ICON_MaxJerk, MSG_JERK, onDrawJerk, Draw_MaxJerk_Menu); + #elif HAS_JUNCTION_DEVIATION + EDIT_ITEM(ICON_JDmm, MSG_JUNCTION_DEVIATION, onDrawPFloat3Menu, SetJDmm, &planner.junction_deviation_mm); + #endif + #if ENABLED(LIN_ADVANCE) + EDIT_ITEM(ICON_MaxAccelerated, MSG_ADVANCE_K, onDrawPFloat3Menu, SetLA_K, &planner.extruder_advance_K[0]); + #endif + #if ENABLED(SHAPING_MENU) + MENU_ITEM(ICON_InputShaping, MSG_INPUT_SHAPING, onDrawSubMenu, Draw_InputShaping_menu); + #endif + #if ENABLED(ADAPTIVE_STEP_SMOOTHING) + EDIT_ITEM(ICON_UBLActive, MSG_STEP_SMOOTHING, onDrawChkbMenu, SetAdaptiveStepSmoothing, &HMI_data.AdaptiveStepSmoothing); #endif MENU_ITEM(ICON_Step, MSG_STEPS_PER_MM, onDrawSteps, Draw_Steps_Menu); EDIT_ITEM(ICON_Flow, MSG_FLOW, onDrawPIntMenu, SetFlow, &planner.flow_percentage[0]); + EDIT_ITEM(ICON_Speed, MSG_SPEED, onDrawPIntMenu, SetSpeed, &feedrate_percentage); } UpdateMenu(MotionMenu); } +#if HAS_PREHEAT + void Draw_PreheatHotend_Menu() { + checkkey = Menu; + if (SET_MENU(PreheatHotendMenu, MSG_PREHEAT_HOTEND, 1 + PREHEAT_COUNT)) { + BACK_ITEM(Draw_FilamentMan_Menu); + #define _ITEM_PREHEAT_HE(N) MENU_ITEM(ICON_Preheat##N, MSG_PREHEAT_##N, onDrawMenuItem, DoPreheatHotend##N); + REPEAT_1(PREHEAT_COUNT, _ITEM_PREHEAT_HE) + } + UpdateMenu(PreheatHotendMenu); + } +#endif + #if ENABLED(ADVANCED_PAUSE_FEATURE) void Draw_FilamentMan_Menu() { checkkey = Menu; - if (SET_MENU(FilamentMenu, MSG_FILAMENT_MAN, 5)) { + if (SET_MENU(FilamentMenu, MSG_FILAMENT_MAN, 6)) { BACK_ITEM(Draw_Prepare_Menu); #if ENABLED(NOZZLE_PARK_FEATURE) MENU_ITEM(ICON_Park, MSG_FILAMENT_PARK_ENABLED, onDrawMenuItem, ParkHead); #endif + #if HAS_PREHEAT + MENU_ITEM(ICON_SetEndTemp, MSG_PREHEAT_HOTEND, onDrawSubMenu, Draw_PreheatHotend_Menu); + #endif MENU_ITEM(ICON_FilMan, MSG_FILAMENTCHANGE, onDrawMenuItem, ChangeFilament); #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) MENU_ITEM(ICON_FilUnload, MSG_FILAMENTUNLOAD, onDrawMenuItem, UnloadFilament); @@ -3573,32 +3638,93 @@ void Draw_Steps_Menu() { UpdateMenu(StepsMenu); } -#if ENABLED(PIDTEMP) +//============================================================================= +// UI editable custom colors +//============================================================================= - void Draw_HotendPID_Menu() { +#if HAS_CUSTOM_COLORS + + void RestoreDefaultColors() { + DWIN_SetColorDefaults(); + DWINUI::SetColors(HMI_data.Text_Color, HMI_data.Background_Color, HMI_data.StatusBg_Color); + DWIN_RedrawScreen(); + } + + void SelColor() { + MenuData.P_Int = (int16_t*)static_cast(CurrentMenu->SelectedItem())->value; + HMI_value.Color[0] = GetRColor(*MenuData.P_Int); // Red + HMI_value.Color[1] = GetGColor(*MenuData.P_Int); // Green + HMI_value.Color[2] = GetBColor(*MenuData.P_Int); // Blue + Draw_GetColor_Menu(); + } + + void LiveRGBColor() { + HMI_value.Color[CurrentMenu->line() - 2] = MenuData.Value; + uint16_t color = RGB(HMI_value.Color[0], HMI_value.Color[1], HMI_value.Color[2]); + dwinDrawRectangle(1, color, 20, 315, DWIN_WIDTH - 20, 335); + } + void SetRGBColor() { + const uint8_t color = static_cast(CurrentMenu->SelectedItem())->icon; + SetIntOnClick(0, (color == 1) ? 63 : 31, HMI_value.Color[color], nullptr, LiveRGBColor); + } + + void DWIN_ApplyColor() { + *MenuData.P_Int = RGB(HMI_value.Color[0], HMI_value.Color[1], HMI_value.Color[2]); + DWINUI::SetColors(HMI_data.Text_Color, HMI_data.Background_Color, HMI_data.StatusBg_Color); + Draw_SelectColors_Menu(); + hash_changed = true; + LCD_MESSAGE(MSG_COLORS_APPLIED); + DWIN_Draw_Dashboard(); + } + + void Draw_SelectColors_Menu() { checkkey = Menu; - if (SET_MENU_F(HotendPIDMenu, STR_HOTEND_PID " Settings", 8)) { + if (SET_MENU(SelectColorMenu, MSG_COLORS_SELECT, 20)) { BACK_ITEM(Draw_AdvancedSettings_Menu); - MENU_ITEM_F(ICON_PIDNozzle, STR_HOTEND_PID, onDrawMenuItem, HotendPID); - EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KP, onDrawPFloat2Menu, SetKp, &thermalManager.temp_hotend[0].pid.Kp); - EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KI, onDrawPIDi, SetKi, &thermalManager.temp_hotend[0].pid.Ki); - EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KD, onDrawPIDd, SetKd, &thermalManager.temp_hotend[0].pid.Kd); - EDIT_ITEM(ICON_Temperature, MSG_TEMPERATURE, onDrawPIntMenu, SetHotendPidT, &HMI_data.HotendPidT); - EDIT_ITEM(ICON_PIDCycles, MSG_PID_CYCLE, onDrawPIntMenu, SetPidCycles, &HMI_data.PidCycles); - #if ENABLED(EEPROM_SETTINGS) - MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, WriteEeprom); - #endif + MENU_ITEM(ICON_StockConfiguration, MSG_RESTORE_DEFAULTS, onDrawMenuItem, RestoreDefaultColors); + EDIT_ITEM_F(0, "Screen Background", onDrawSelColorItem, SelColor, &HMI_data.Background_Color); + EDIT_ITEM_F(0, "Cursor", onDrawSelColorItem, SelColor, &HMI_data.Cursor_Color); + EDIT_ITEM_F(0, "Title Background", onDrawSelColorItem, SelColor, &HMI_data.TitleBg_Color); + EDIT_ITEM_F(0, "Title Text", onDrawSelColorItem, SelColor, &HMI_data.TitleTxt_Color); + EDIT_ITEM_F(0, "Text", onDrawSelColorItem, SelColor, &HMI_data.Text_Color); + EDIT_ITEM_F(0, "Selected", onDrawSelColorItem, SelColor, &HMI_data.Selected_Color); + EDIT_ITEM_F(0, "Split Line", onDrawSelColorItem, SelColor, &HMI_data.SplitLine_Color); + EDIT_ITEM_F(0, "Highlight", onDrawSelColorItem, SelColor, &HMI_data.Highlight_Color); + EDIT_ITEM_F(0, "Status Background", onDrawSelColorItem, SelColor, &HMI_data.StatusBg_Color); + EDIT_ITEM_F(0, "Status Text", onDrawSelColorItem, SelColor, &HMI_data.StatusTxt_Color); + EDIT_ITEM_F(0, "Popup Background", onDrawSelColorItem, SelColor, &HMI_data.PopupBg_Color); + EDIT_ITEM_F(0, "Popup Text", onDrawSelColorItem, SelColor, &HMI_data.PopupTxt_Color); + EDIT_ITEM_F(0, "Alert Background", onDrawSelColorItem, SelColor, &HMI_data.AlertBg_Color); + EDIT_ITEM_F(0, "Alert Text", onDrawSelColorItem, SelColor, &HMI_data.AlertTxt_Color); + EDIT_ITEM_F(0, "Percent Text", onDrawSelColorItem, SelColor, &HMI_data.PercentTxt_Color); + EDIT_ITEM_F(0, "Bar Fill", onDrawSelColorItem, SelColor, &HMI_data.Barfill_Color); + EDIT_ITEM_F(0, "Indicator value", onDrawSelColorItem, SelColor, &HMI_data.Indicator_Color); + EDIT_ITEM_F(0, "Coordinate value", onDrawSelColorItem, SelColor, &HMI_data.Coordinate_Color); + } + UpdateMenu(SelectColorMenu); + } + + void Draw_GetColor_Menu() { + checkkey = Menu; + if (SET_MENU(GetColorMenu, MSG_COLORS_GET, 5)) { + BACK_ITEM(DWIN_ApplyColor); + MENU_ITEM(ICON_Cancel, MSG_BUTTON_CANCEL, onDrawMenuItem, Draw_SelectColors_Menu); + MENU_ITEM(0, MSG_COLORS_RED, onDrawGetColorItem, SetRGBColor); + MENU_ITEM(1, MSG_COLORS_GREEN, onDrawGetColorItem, SetRGBColor); + MENU_ITEM(2, MSG_COLORS_BLUE, onDrawGetColorItem, SetRGBColor); } - UpdateMenu(HotendPIDMenu); + UpdateMenu(GetColorMenu); + dwinDrawRectangle(1, *MenuData.P_Int, 20, 315, DWIN_WIDTH - 20, 335); } -#endif +#endif // HAS_CUSTOM_COLORS + +//============================================================================= +// Nozzle and Bed PID/MPC +//============================================================================= #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) - #if ENABLED(MPC_AUTOTUNE_MENU) - void HotendMPC() { thermalManager.MPC_autotune(active_extruder); } - #endif #if ENABLED(MPC_EDIT_MENU) void SetHeaterPower() { SetPFloatOnClick(1, 200, 1); } void SetBlkHeatCapacity() { SetPFloatOnClick(0, 40, 2); } @@ -3617,7 +3743,7 @@ void Draw_Steps_Menu() { MPC_t &mpc = thermalManager.temp_hotend[0].mpc; BACK_ITEM(Draw_AdvancedSettings_Menu); #if ENABLED(MPC_AUTOTUNE_MENU) - MENU_ITEM(ICON_MPCNozzle, MSG_MPC_AUTOTUNE, onDrawMenuItem, HotendMPC); + MENU_ITEM(ICON_MPCNozzle, MSG_MPC_AUTOTUNE, onDrawMenuItem, []{ thermalManager.MPC_autotune(active_extruder, Temperature::MPCTuningType::AUTO); }); #endif #if ENABLED(MPC_EDIT_MENU) EDIT_ITEM(ICON_MPCHeater, MSG_MPC_POWER, onDrawPFloatMenu, SetHeaterPower, &mpc.heater_power); @@ -3634,18 +3760,97 @@ void Draw_Steps_Menu() { #endif // MPC_EDIT_MENU || MPC_AUTOTUNE_MENU -#if ENABLED(PIDTEMPBED) +#if DWIN_PID_TUNE + void SetPID(celsius_t t, heater_id_t h) { + char cmd[53] = ""; + char str_1[5] = "", str_2[5] = ""; + sprintf_P(cmd, PSTR("G28OXY\nG0Z5F300\nG0X%sY%sF5000\nM84\nM400"), + dtostrf(X_CENTER, 1, 1, str_1), + dtostrf(Y_CENTER, 1, 1, str_2) + ); + gcode.process_subcommands_now(cmd); + thermalManager.PID_autotune(t, h, HMI_data.PidCycles, true); + } + void SetPidCycles() { SetPIntOnClick(3, 50); } +#endif + +#if ALL(HAS_PID_HEATING, PID_EDIT_MENU) + + void SetKp() { SetPFloatOnClick(0, 1000, 2); } + void ApplyPIDi() { + *MenuData.P_Float = scalePID_i(MenuData.Value / POW(10, 2)); + TERN_(PIDTEMP, thermalManager.updatePID()); + } + void ApplyPIDd() { + *MenuData.P_Float = scalePID_d(MenuData.Value / POW(10, 2)); + TERN_(PIDTEMP, thermalManager.updatePID()); + } + void SetKi() { + MenuData.P_Float = (float*)static_cast(CurrentMenu->SelectedItem())->value; + const float value = unscalePID_i(*MenuData.P_Float); + SetFloatOnClick(0, 1000, 2, value, ApplyPIDi); + } + void SetKd() { + MenuData.P_Float = (float*)static_cast(CurrentMenu->SelectedItem())->value; + const float value = unscalePID_d(*MenuData.P_Float); + SetFloatOnClick(0, 1000, 2, value, ApplyPIDd); + } + void onDrawPIDi(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, unscalePID_i(*(float*)static_cast(menuitem)->value)); } + void onDrawPIDd(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, unscalePID_d(*(float*)static_cast(menuitem)->value)); } + +#endif // HAS_PID_HEATING && PID_EDIT_MENU + +#if ENABLED(PIDTEMP) && ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) + + #if ENABLED(PID_AUTOTUNE_MENU) + void HotendPID() { SetPID(HMI_data.HotendPidT, H_E0); } + void SetHotendPidT() { SetPIntOnClick(MIN_ETEMP, MAX_ETEMP); } + #endif + + void Draw_HotendPID_Menu() { + checkkey = Menu; + if (SET_MENU_F(HotendPIDMenu, STR_HOTEND_PID " Settings", 8)) { + BACK_ITEM(Draw_AdvancedSettings_Menu); + #if ENABLED(PID_AUTOTUNE_MENU) + MENU_ITEM_F(ICON_PIDNozzle, STR_HOTEND_PID, onDrawMenuItem, HotendPID); + EDIT_ITEM(ICON_Temperature, MSG_TEMPERATURE, onDrawPIntMenu, SetHotendPidT, &HMI_data.HotendPidT); + EDIT_ITEM(ICON_PIDCycles, MSG_PID_CYCLE, onDrawPIntMenu, SetPidCycles, &HMI_data.PidCycles); + #endif + #if ENABLED(PID_EDIT_MENU) + EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KP, onDrawPFloat2Menu, SetKp, &thermalManager.temp_hotend[0].pid.Kp); + EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KI, onDrawPIDi, SetKi, &thermalManager.temp_hotend[0].pid.Ki); + EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KD, onDrawPIDd, SetKd, &thermalManager.temp_hotend[0].pid.Kd); + #endif + #if ENABLED(EEPROM_SETTINGS) + MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, WriteEeprom); + #endif + } + UpdateMenu(HotendPIDMenu); + } + +#endif // PIDTEMP && (PID_AUTOTUNE_MENU || PID_EDIT_MENU) + +#if ENABLED(PIDTEMPBED) && ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) + + #if ENABLED(PID_AUTOTUNE_MENU) + void BedPID() { SetPID(HMI_data.BedPidT, H_BED); } + void SetBedPidT() { SetPIntOnClick(MIN_BEDTEMP, MAX_BEDTEMP); } + #endif void Draw_BedPID_Menu() { checkkey = Menu; if (SET_MENU_F(BedPIDMenu, STR_BED_PID " Settings", 8)) { BACK_ITEM(Draw_AdvancedSettings_Menu); - MENU_ITEM_F(ICON_PIDBed, STR_BED_PID, onDrawMenuItem,BedPID); - EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KP, onDrawPFloat2Menu, SetKp, &thermalManager.temp_bed.pid.Kp); - EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KI, onDrawPIDi, SetKi, &thermalManager.temp_bed.pid.Ki); - EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KD, onDrawPIDd, SetKd, &thermalManager.temp_bed.pid.Kd); - EDIT_ITEM(ICON_Temperature, MSG_TEMPERATURE, onDrawPIntMenu, SetBedPidT, &HMI_data.BedPidT); - EDIT_ITEM(ICON_PIDCycles, MSG_PID_CYCLE, onDrawPIntMenu, SetPidCycles, &HMI_data.PidCycles); + #if ENABLED(PID_AUTOTUNE_MENU) + MENU_ITEM_F(ICON_PIDBed, STR_BED_PID, onDrawMenuItem,BedPID); + EDIT_ITEM(ICON_Temperature, MSG_TEMPERATURE, onDrawPIntMenu, SetBedPidT, &HMI_data.BedPidT); + EDIT_ITEM(ICON_PIDCycles, MSG_PID_CYCLE, onDrawPIntMenu, SetPidCycles, &HMI_data.PidCycles); + #endif + #if ENABLED(PID_EDIT_MENU) + EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KP, onDrawPFloat2Menu, SetKp, &thermalManager.temp_bed.pid.Kp); + EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KI, onDrawPIDi, SetKi, &thermalManager.temp_bed.pid.Ki); + EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KD, onDrawPIDd, SetKd, &thermalManager.temp_bed.pid.Kd); + #endif #if ENABLED(EEPROM_SETTINGS) MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, WriteEeprom); #endif @@ -3653,7 +3858,9 @@ void Draw_Steps_Menu() { UpdateMenu(BedPIDMenu); } -#endif // PIDTEMPBED +#endif // PIDTEMPBED && (PID_AUTOTUNE_MENU || PID_EDIT_MENU) + +//============================================================================= #if HAS_BED_PROBE @@ -3694,7 +3901,7 @@ void Draw_Steps_Menu() { UpdateMenu(HomingMenu); } -#endif +#endif // INDIVIDUAL_AXIS_HOMING_SUBMENU #if ENABLED(FWRETRACT) @@ -3738,8 +3945,9 @@ void Draw_Steps_Menu() { void LiveEditMesh() { ((MenuItemPtrClass*)EditZValueItem)->value = &bedlevel.z_values[HMI_value.Select ? bedLevelTools.mesh_x : MenuData.Value][HMI_value.Select ? MenuData.Value : bedLevelTools.mesh_y]; EditZValueItem->redraw(); } void ApplyEditMeshX() { bedLevelTools.mesh_x = MenuData.Value; } - void SetEditMeshX() { HMI_value.Select = 0; SetIntOnClick(0, GRID_MAX_POINTS_X - 1, bedLevelTools.mesh_x, ApplyEditMeshX, LiveEditMesh); } void ApplyEditMeshY() { bedLevelTools.mesh_y = MenuData.Value; } + void ResetMesh() { bedLevelTools.mesh_reset(); LCD_MESSAGE(MSG_MESH_RESET); } + void SetEditMeshX() { HMI_value.Select = 0; SetIntOnClick(0, GRID_MAX_POINTS_X - 1, bedLevelTools.mesh_x, ApplyEditMeshX, LiveEditMesh); } void SetEditMeshY() { HMI_value.Select = 1; SetIntOnClick(0, GRID_MAX_POINTS_Y - 1, bedLevelTools.mesh_y, ApplyEditMeshY, LiveEditMesh); } void SetEditZValue() { SetPFloatOnClick(Z_OFFSET_MIN, Z_OFFSET_MAX, 3); } #endif @@ -3760,13 +3968,13 @@ void Draw_Steps_Menu() { void UBLMeshTilt() { NOLESS(bedlevel.storage_slot, 0); - char buf[15]; + char buf[9]; if (bedLevelTools.tilt_grid > 1) { - sprintf_P(buf, PSTR("G28O\nG29 J%i"), bedLevelTools.tilt_grid); + sprintf_P(buf, PSTR("G29J%i"), bedLevelTools.tilt_grid); gcode.process_subcommands_now(buf); } else - gcode.process_subcommands_now(F("G28O\nG29J")); + gcode.process_subcommands_now(F("G29J")); LCD_MESSAGE(MSG_UBL_MESH_TILTED); } @@ -3793,7 +4001,7 @@ void Draw_Steps_Menu() { void Draw_MeshSet_Menu() { checkkey = Menu; - if (SET_MENU(MeshMenu, MSG_MESH_LEVELING, 13)) { + if (SET_MENU(MeshMenu, MSG_MESH_LEVELING, 14)) { BACK_ITEM(Draw_AdvancedSettings_Menu); #if ENABLED(PREHEAT_BEFORE_LEVELING) EDIT_ITEM(ICON_Temperature, MSG_UBL_SET_TEMP_BED, onDrawPIntMenu, SetBedLevT, &HMI_data.BedLevT); @@ -3812,6 +4020,7 @@ void Draw_Steps_Menu() { MENU_ITEM(ICON_UBLSmartFill, MSG_UBL_SMART_FILLIN, onDrawMenuItem, UBLSmartFillMesh); #endif #if ENABLED(MESH_EDIT_MENU) + MENU_ITEM(ICON_MeshReset, MSG_MESH_RESET, onDrawMenuItem, ResetMesh); MENU_ITEM(ICON_MeshEdit, MSG_EDIT_MESH, onDrawSubMenu, Draw_EditMesh_Menu); #endif MENU_ITEM(ICON_MeshViewer, MSG_MESH_VIEW, onDrawSubMenu, DWIN_MeshViewer); diff --git a/Marlin/src/lcd/e3v2/proui/dwin.h b/Marlin/src/lcd/e3v2/proui/dwin.h index 126f8232acd7..bd1e80245837 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.h +++ b/Marlin/src/lcd/e3v2/proui/dwin.h @@ -24,8 +24,8 @@ /** * DWIN Enhanced implementation for PRO UI * Author: Miguel A. Risco-Castillo (MRISCOC) - * Version: 3.21.2 - * Date: 2022/12/02 + * Version: 3.25.3 + * Date: 2023/05/18 */ #include "../../../inc/MarlinConfig.h" @@ -79,7 +79,6 @@ enum processID : uint8_t { enum tempcontrol_t : uint8_t { #if DWIN_PID_TUNE - PID_DONE, PIDTEMP_START, PIDTEMPBED_START, PID_BAD_HEATER_ID, @@ -87,11 +86,11 @@ enum processID : uint8_t { PID_TUNING_TIMEOUT, #endif #if ENABLED(MPC_AUTOTUNE) - MPC_DONE, MPCTEMP_START, MPC_TEMP_ERROR, - MPC_INTERRUPTED + MPC_INTERRUPTED, #endif + AUTOTUNE_DONE }; #endif @@ -141,6 +140,7 @@ typedef struct { #endif bool FullManualTramming = false; + bool MediaSort = true; bool MediaAutoMount = ENABLED(HAS_SD_EXTENDER); #if ALL(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) uint8_t z_after_homing = DEF_Z_AFTER_HOMING; @@ -148,6 +148,8 @@ typedef struct { #if ALL(LED_CONTROL_MENU, HAS_COLOR_LEDS) LEDColor Led_Color = Def_Leds_Color; #endif + bool AdaptiveStepSmoothing = true; + bool EnablePreview = true; } HMI_data_t; extern HMI_data_t HMI_data; @@ -155,8 +157,8 @@ static constexpr size_t eeprom_data_size = sizeof(HMI_data_t); typedef struct { int8_t Color[3]; // Color components - #if DWIN_PID_TUNE - tempcontrol_t pidresult = PID_DONE; + #if ANY(DWIN_PID_TUNE, MPCTEMP) + tempcontrol_t tempcontrol = AUTOTUNE_DONE; #endif uint8_t Select = 0; // Auxiliary selector variable AxisEnum axis = X_AXIS; // Axis Select @@ -167,17 +169,13 @@ typedef struct { bool printing_flag:1; // sd or host printing bool abort_flag:1; // sd or host was aborted bool pause_flag:1; // printing is paused - bool percent_flag:1; // percent was override by M73 - bool remain_flag:1; // remain was override by M73 bool select_flag:1; // Popup button selected bool home_flag:1; // homing in course - bool heat_flag:1; // 0: heating done 1: during heating } HMI_flag_t; extern HMI_value_t HMI_value; extern HMI_flag_t hmiFlag; extern uint8_t checkkey; -extern millis_t dwin_heat_time; // Popups #if HAS_HOTEND || HAS_HEATED_BED @@ -206,12 +204,6 @@ void AutoHome(); REPEAT_1(PREHEAT_COUNT, _DOPREHEAT) #endif void DoCoolDown(); -#if ENABLED(PIDTEMP) - void HotendPID(); -#endif -#if ENABLED(PIDTEMPBED) - void BedPID(); -#endif #if ENABLED(BAUD_RATE_GCODE) void HMI_SetBaudRate(); void SetBaud115K(); @@ -236,7 +228,7 @@ void ParkHead(); #if ENABLED(HOST_SHUTDOWN_MENU_ITEM) && defined(SHUTDOWN_ACTION) void HostShutDown(); #endif -#if !HAS_BED_PROBE +#if DISABLED(HAS_BED_PROBE) void HomeZandDisable(); #endif @@ -252,7 +244,6 @@ void DWIN_DrawStatusLine(const char *text = ""); // Draw simple status text void DWIN_RedrawDash(); // Redraw Dash and Status line void DWIN_RedrawScreen(); // Redraw all screen elements void HMI_MainMenu(); // Main process screen -void HMI_SelectFile(); // File page void HMI_Printing(); // Print page void HMI_ReturnScreen(); // Return to previous screen before popups void HMI_WaitForUser(); @@ -278,10 +269,8 @@ void DWIN_Print_Aborted(); #if HAS_FILAMENT_SENSOR void DWIN_FilamentRunout(const uint8_t extruder); #endif -void DWIN_M73(); void DWIN_Print_Header(const char *text); void DWIN_SetColorDefaults(); -void DWIN_ApplyColor(); void DWIN_CopySettingsTo(char * const buff); void DWIN_CopySettingsFrom(const char * const buff); void DWIN_SetDataDefaults(); @@ -291,7 +280,6 @@ void DWIN_RebootScreen(); void DWIN_Popup_Pause(FSTR_P const fmsg, uint8_t button=0); void Draw_Popup_FilamentPurge(); void Goto_FilamentPurge(); - void HMI_FilamentPurge(); #endif // Utility and extensions @@ -331,8 +319,6 @@ void Draw_FilSet_Menu(); void Draw_ParkPos_Menu(); #endif void Draw_PhySet_Menu(); -void Draw_SelectColors_Menu(); -void Draw_GetColor_Menu(); #if ALL(CASE_LIGHT_MENU, CASELIGHT_USES_BRIGHTNESS) void Draw_CaseLight_Menu(); #endif @@ -369,16 +355,36 @@ void Draw_Steps_Menu(); void Draw_EditMesh_Menu(); #endif #endif +#if HAS_TRINAMIC_CONFIG + void Draw_TrinamicConfig_menu(); +#endif + +// Custom colors editing +#if HAS_CUSTOM_COLORS + void DWIN_ApplyColor(); + void Draw_SelectColors_Menu(); + void Draw_GetColor_Menu(); +#endif // PID #if DWIN_PID_TUNE #include "../../../module/temperature.h" void DWIN_StartM303(const bool seenC, const int c, const bool seenS, const heater_id_t hid, const celsius_t temp); void DWIN_PidTuning(tempcontrol_t result); - #if ENABLED(PIDTEMP) +#endif +#if ENABLED(PIDTEMP) + #if ENABLED(PID_AUTOTUNE_MENU) + void HotendPID(); + #endif + #if ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) void Draw_HotendPID_Menu(); #endif - #if ENABLED(PIDTEMPBED) +#endif +#if ENABLED(PIDTEMPBED) + #if ENABLED(PID_AUTOTUNE_MENU) + void BedPID(); + #endif + #if ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) void Draw_BedPID_Menu(); #endif #endif diff --git a/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp b/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp index a82acdb3e9f6..180b35e2ecb1 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp @@ -23,8 +23,8 @@ /** * DWIN Enhanced implementation for PRO UI * Author: Miguel A. Risco-Castillo (MRISCOC) - * Version: 3.10.1 - * Date: 2022/03/06 + * Version: 3.12.1 + * Date: 2023/01/22 */ #include "../../../inc/MarlinConfigPre.h" @@ -134,6 +134,26 @@ void DWIN_WriteToMem(uint8_t mem, uint16_t addr, uint16_t length, uint8_t *data) } } +// Draw an Icon from SRAM without background transparency for DACAI Screens support +void DACAI_ICON_Show(uint16_t x, uint16_t y, uint16_t addr) { + NOMORE(x, DWIN_WIDTH - 1); + NOMORE(y, DWIN_HEIGHT - 1); + size_t i = 0; + dwinByte(i, 0x70); + dwinWord(i, x); + dwinWord(i, y); + dwinWord(i, addr); + dwinSend(i); +} + +void dwinIconShow(uint16_t x, uint16_t y, uint16_t addr) { + #if ENABLED(DACAI_DISPLAY) + DACAI_ICON_Show(x, y, addr); + #else + dwinIconShow(0, 0, 1, x, y, addr); + #endif +} + // Write the contents of the 32KB SRAM data memory into the designated image memory space. // picID: Picture memory space location, 0x00-0x0F, each space is 32Kbytes void DWIN_SRAMToPic(uint8_t picID) { diff --git a/Marlin/src/lcd/e3v2/proui/dwin_lcd.h b/Marlin/src/lcd/e3v2/proui/dwin_lcd.h index 6e0a254db4ee..8c9c063367dc 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_lcd.h +++ b/Marlin/src/lcd/e3v2/proui/dwin_lcd.h @@ -24,8 +24,8 @@ /** * DWIN Enhanced implementation for PRO UI * Author: Miguel A. Risco-Castillo (MRISCOC) - * Version: 3.10.1 - * Date: 2022/03/06 + * Version: 3.12.1 + * Date: 2023/01/22 */ #include "../common/dwin_api.h" @@ -71,6 +71,11 @@ void DWIN_Frame_AreaCopy(bool IBD, bool BIR, bool BFI, uint8_t cacheID, uint16_t // data: address of the buffer with data void DWIN_WriteToMem(uint8_t mem, uint16_t addr, uint16_t length, uint8_t *data); +// Draw an Icon from SRAM +// x/y: Upper-left point +// addr: SRAM address +void dwinIconShow(uint16_t x, uint16_t y, uint16_t addr); + // Write the contents of the 32KB SRAM data memory into the designated image memory space. // picID: Picture memory space location, 0x00-0x0F, each space is 32Kbytes void DWIN_SRAMToPic(uint8_t picID); diff --git a/Marlin/src/lcd/e3v2/proui/dwinui.cpp b/Marlin/src/lcd/e3v2/proui/dwinui.cpp index 4ed6ce6783ce..235b30f9faa2 100644 --- a/Marlin/src/lcd/e3v2/proui/dwinui.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwinui.cpp @@ -23,8 +23,8 @@ /** * DWIN Enhanced implementation for PRO UI * Author: Miguel A. Risco-Castillo (MRISCOC) - * Version: 3.20.1 - * Date: 2022/10/25 + * Version: 3.21.1 + * Date: 2023/03/21 */ #include "../../../inc/MarlinConfig.h" @@ -32,7 +32,6 @@ #if ENABLED(DWIN_LCD_PROUI) #include "dwin_defines.h" -#include "dwin_lcd.h" #include "dwinui.h" xy_int_t DWINUI::cursor = { 0 }; @@ -60,16 +59,18 @@ void DWINUI::setFont(fontid_t fid) { fontid = fid; } // Get font character width uint8_t DWINUI::fontWidth(fontid_t fid) { switch (fid) { - case font6x12 : return 6; + #if DISABLED(TJC_DISPLAY) + case font6x12 : return 6; + case font20x40: return 20; + case font24x48: return 24; + case font28x56: return 28; + case font32x64: return 32; + #endif case font8x16 : return 8; case font10x20: return 10; case font12x24: return 12; case font14x28: return 14; case font16x32: return 16; - case font20x40: return 20; - case font24x48: return 24; - case font28x56: return 28; - case font32x64: return 32; default: return 0; } } @@ -77,16 +78,18 @@ uint8_t DWINUI::fontWidth(fontid_t fid) { // Get font character height uint8_t DWINUI::fontHeight(fontid_t fid) { switch (fid) { + #if DISABLED(TJC_DISPLAY) case font6x12 : return 12; + case font20x40: return 40; + case font24x48: return 48; + case font28x56: return 56; + case font32x64: return 64; + #endif case font8x16 : return 16; case font10x20: return 20; case font12x24: return 24; case font14x28: return 28; case font16x32: return 32; - case font20x40: return 40; - case font24x48: return 48; - case font28x56: return 56; - case font32x64: return 64; default: return 0; } } @@ -261,15 +264,13 @@ void DWINUI::Draw_Circle(uint16_t color, uint16_t x, uint16_t y, uint8_t r) { // y: ordinate of the center of the circle // r: circle radius void DWINUI::Draw_FillCircle(uint16_t bcolor, uint16_t x,uint16_t y,uint8_t r) { - int a = 0, b = 0; - while (a <= b) { - b = SQRT(sq(r) - sq(a)); // b=sqrt(r*r-a*a); - if (a == 0) b--; - dwinDrawLine(bcolor, x-b,y-a,x+b,y-a); - dwinDrawLine(bcolor, x-a,y-b,x+a,y-b); - dwinDrawLine(bcolor, x-b,y+a,x+b,y+a); - dwinDrawLine(bcolor, x-a,y+b,x+a,y+b); - a++; + dwinDrawLine(bcolor, x - r, y, x + r, y); + uint16_t b = 1; + while (b <= r) { + uint16_t a = SQRT(sq(r) - sq(b)); + dwinDrawLine(bcolor, x - a, y + b, x + a, y + b); + dwinDrawLine(bcolor, x - a, y - b, x + a, y - b); + b += TERN(TJC_DISPLAY, 2, 1); } } diff --git a/Marlin/src/lcd/e3v2/proui/dwinui.h b/Marlin/src/lcd/e3v2/proui/dwinui.h index fd59757d643b..06daece9d099 100644 --- a/Marlin/src/lcd/e3v2/proui/dwinui.h +++ b/Marlin/src/lcd/e3v2/proui/dwinui.h @@ -24,8 +24,8 @@ /** * DWIN Enhanced implementation for PRO UI * Author: Miguel A. Risco-Castillo (MRISCOC) - * Version: 3.18.1 - * Date: 2022/07/05 + * Version: 3.21.1 + * Date: 2023/03/21 */ #include "../../../inc/MarlinConfigPre.h" @@ -68,7 +68,8 @@ #define ICON_HomeOffsetY ICON_StepY #define ICON_HomeOffsetZ ICON_StepZ #define ICON_HSMode ICON_StockConfiguration -#define ICON_InvertE0 ICON_StepE +#define ICON_InputShaping ICON_MaxAccelerated +#define ICON_JDmm ICON_MaxJerk #define ICON_Tram ICON_SetEndTemp #define ICON_Level ICON_HotendTemp #define ICON_Lock ICON_Cool @@ -82,6 +83,7 @@ #define ICON_MeshEditZ ICON_MoveZ #define ICON_MeshNext ICON_Axis #define ICON_MeshPoints ICON_SetEndTemp +#define ICON_MeshReset ICON_StockConfiguration #define ICON_MeshSave ICON_WriteEEPROM #define ICON_MeshViewer ICON_HotendTemp #define ICON_MoveZ0 ICON_HotendTemp @@ -132,8 +134,14 @@ #define ICON_SetPreheat8 ICON_SetCustomPreheat #define ICON_SetPreheat9 ICON_SetCustomPreheat #define ICON_SetPreheat10 ICON_SetCustomPreheat +#define ICON_ShapingX ICON_MoveX +#define ICON_ShapingY ICON_MoveY #define ICON_Sound ICON_Cool -#define ICON_TBSetup ICON_Contact +#define ICON_TMCSet ICON_PrintSize +#define ICON_TMCXSet ICON_MoveX +#define ICON_TMCYSet ICON_MoveY +#define ICON_TMCZSet ICON_MoveZ +#define ICON_TMCESet ICON_Extruder #define ICON_UBLActive ICON_HotendTemp #define ICON_UBLActive ICON_HotendTemp #define ICON_UBLSlot ICON_ResumeEEPROM diff --git a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp index 81baa0a2def8..c6d014e53c80 100644 --- a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp +++ b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp @@ -23,8 +23,8 @@ /** * DWIN Endstops diagnostic page for PRO UI * Author: Miguel A. Risco-Castillo (MRISCOC) - * Version: 1.3.3 - * Date: 2022/10/07 + * Version: 1.4.3 + * Date: 2023/05/10 */ #include "../../../inc/MarlinConfigPre.h" @@ -35,10 +35,8 @@ #include "../../../core/types.h" #include "../../marlinui.h" -#include "dwin_lcd.h" -#include "dwinui.h" -#include "dwin_popup.h" #include "dwin.h" +#include "dwin_popup.h" #if HAS_FILAMENT_SENSOR #include "../../../feature/runout.h" diff --git a/Marlin/src/lcd/e3v2/proui/endstop_diag.h b/Marlin/src/lcd/e3v2/proui/endstop_diag.h index 33f1d10d2da5..236262282e11 100644 --- a/Marlin/src/lcd/e3v2/proui/endstop_diag.h +++ b/Marlin/src/lcd/e3v2/proui/endstop_diag.h @@ -24,14 +24,14 @@ /** * DWIN End Stops diagnostic page for PRO UI * Author: Miguel A. Risco-Castillo (MRISCOC) - * Version: 1.3.2 - * Date: 2022/10/07 + * Version: 1.4.3 + * Date: 2023/05/10 */ class ESDiagClass { public: - void Draw(); - void Update(); + static void Draw(); + static void Update(); }; extern ESDiagClass ESDiag; diff --git a/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp b/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp index b87ed2101f67..3dddbe6f610a 100644 --- a/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp +++ b/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp @@ -23,8 +23,8 @@ /** * DWIN G-code thumbnail preview * Author: Miguel A. Risco-Castillo - * version: 3.1.2 - * Date: 2022/09/03 + * version: 3.3.2 + * Date: 2023/06/18 */ #include "../../../inc/MarlinConfigPre.h" @@ -35,13 +35,14 @@ #include "../../marlinui.h" #include "../../../sd/cardreader.h" #include "../../../MarlinCore.h" // for wait_for_user -#include "dwin_lcd.h" -#include "dwinui.h" #include "dwin.h" #include "dwin_popup.h" #include "base64.hpp" #include "gcode_preview.h" +#define THUMBWIDTH 230 +#define THUMBHEIGHT 180 + typedef struct { char name[13] = ""; //8.3 + null uint32_t thumbstart = 0; @@ -104,7 +105,7 @@ void Get_Value(char *buf, const char * const key, float &value) { } bool Has_Preview() { - const char * tbstart = "; thumbnail begin 230x180"; + const char * tbstart = "; thumbnail begin " STRINGIFY(THUMBWIDTH) "x" STRINGIFY(THUMBHEIGHT); char * posptr = 0; uint8_t nbyte = 1; uint32_t indx = 0; @@ -187,6 +188,8 @@ bool Has_Preview() { card.closefile(); buf64[readed] = 0; + fileprop.thumbwidth = THUMBWIDTH; + fileprop.thumbheight = THUMBHEIGHT; fileprop.thumbsize = decode_base64(buf64, fileprop.thumbdata); card.closefile(); DWINUI::WriteToSRAM(0x00, fileprop.thumbsize, fileprop.thumbdata); delete[] fileprop.thumbdata; @@ -218,7 +221,7 @@ void Preview_DrawFromSD() { } DWINUI::Draw_Button(BTN_Print, 26, 290); DWINUI::Draw_Button(BTN_Cancel, 146, 290); - dwinIconShow(0, 0, 1, 21, 90, 0x00); + Preview_Show(); Draw_Select_Highlight(true, 290); dwinUpdateLCD(); } @@ -229,15 +232,17 @@ void Preview_DrawFromSD() { } void Preview_Invalidate() { - fileprop.thumbstart = 0; + fileprop.thumbsize = 0; } bool Preview_Valid() { - return !!fileprop.thumbstart; + return !!fileprop.thumbsize; } -void Preview_Reset() { - fileprop.thumbsize = 0; +void Preview_Show() { + const uint8_t xpos = (DWIN_WIDTH - fileprop.thumbwidth) / 2; + const uint8_t ypos = (205 - fileprop.thumbheight) / 2 + 87; + dwinIconShow(xpos, ypos, 0x00); } #endif // HAS_GCODE_PREVIEW && DWIN_LCD_PROUI diff --git a/Marlin/src/lcd/e3v2/proui/gcode_preview.h b/Marlin/src/lcd/e3v2/proui/gcode_preview.h index 2452797d0c62..b90180db2912 100644 --- a/Marlin/src/lcd/e3v2/proui/gcode_preview.h +++ b/Marlin/src/lcd/e3v2/proui/gcode_preview.h @@ -31,4 +31,4 @@ void Preview_DrawFromSD(); void Preview_Invalidate(); bool Preview_Valid(); -void Preview_Reset(); +void Preview_Show(); diff --git a/Marlin/src/lcd/e3v2/proui/menus.cpp b/Marlin/src/lcd/e3v2/proui/menus.cpp index 870a4248ced5..54892b6acbb0 100644 --- a/Marlin/src/lcd/e3v2/proui/menus.cpp +++ b/Marlin/src/lcd/e3v2/proui/menus.cpp @@ -23,8 +23,8 @@ /** * Menu functions for ProUI * Author: Miguel A. Risco-Castillo - * Version: 1.9.1 - * Date: 2022/12/02 + * Version: 1.10.1 + * Date: 2022/05/01 */ #include "../../../inc/MarlinConfigPre.h" @@ -32,8 +32,6 @@ #if ENABLED(DWIN_LCD_PROUI) #include "../common/encoder.h" -#include "dwin_lcd.h" -#include "dwinui.h" #include "dwin.h" #include "menus.h" @@ -58,11 +56,6 @@ void Draw_Title(TitleClass* title) { #endif } -void Draw_Menu(MenuClass* menu) { - DWINUI::SetColors(HMI_data.Text_Color, HMI_data.Background_Color, HMI_data.StatusBg_Color); - dwinDrawRectangle(1, DWINUI::backcolor, 0, TITLE_HEIGHT, DWIN_WIDTH - 1, STATUS_Y - 1); -} - void Draw_Menu_Cursor(const int8_t line) { const uint16_t ypos = MYPOS(line); DWINUI::Draw_Box(1, HMI_data.Cursor_Color, {0, ypos, 15, MLINE - 1}); @@ -79,7 +72,7 @@ void Erase_Menu_Text(const int8_t line) { DWINUI::Draw_Box(1, HMI_data.Background_Color, {LBLX, ypos, DWIN_WIDTH - LBLX, MLINE - 2}); } -void Draw_Menu_Line(const uint8_t line, const uint8_t icon /*=0*/, const char * const label /*=nullptr*/, bool more /*=false*/, bool selected /*=false*/) { +void Draw_Menu_Line(const uint8_t line, const uint8_t icon/*=0*/, const char * const label/*=nullptr*/, bool more/*=false*/, bool selected/*=false*/) { if (icon) DWINUI::Draw_Icon(icon, ICOX, MBASE(line) - 3); if (label) DWINUI::Draw_String(LBLX, MBASE(line) - 1, (char*)label); if (more) DWINUI::Draw_Icon(ICON_More, VALX + 16, MBASE(line) - 3); @@ -87,7 +80,7 @@ void Draw_Menu_Line(const uint8_t line, const uint8_t icon /*=0*/, const char * dwinDrawHLine(HMI_data.SplitLine_Color, 16, MYPOS(line + 1), 240); } -void Draw_Menu_Line(const uint8_t line, const uint8_t icon /*=0*/, FSTR_P label /*=nullptr*/, bool more /*=false*/, bool selected /*=false*/) { +void Draw_Menu_Line(const uint8_t line, const uint8_t icon/*=0*/, FSTR_P label/*=nullptr*/, bool more/*=false*/, bool selected/*=false*/) { Draw_Menu_Line(line, icon, FTOP(label), more, selected); } @@ -106,7 +99,7 @@ void Toggle_Chkb_Line(bool &checked) { Show_Chkb_Line(checked); } -void Draw_Menu_IntValue(uint16_t bcolor, const uint8_t line, uint8_t iNum, const int32_t value /*=0*/) { +void Draw_Menu_IntValue(uint16_t bcolor, const uint8_t line, uint8_t iNum, const int32_t value/*=0*/) { DWINUI::Draw_Signed_Int(HMI_data.Text_Color, bcolor, iNum , VALX, MBASE(line) - 1, value); } @@ -189,7 +182,7 @@ void DrawItemEdit(const bool selected) { // val: value / scaled value // LiveUpdate: live update function when the encoder changes // Apply: update function when the encoder is pressed -void SetOnClick(uint8_t process, const int32_t lo, const int32_t hi, uint8_t dp, const int32_t val, void (*Apply)() /*= nullptr*/, void (*LiveUpdate)() /*= nullptr*/) { +void SetOnClick(uint8_t process, const int32_t lo, const int32_t hi, uint8_t dp, const int32_t val, void (*Apply)()/*=nullptr*/, void (*LiveUpdate)()/*=nullptr*/) { checkkey = process; MenuData.MinValue = lo; MenuData.MaxValue = hi; @@ -207,7 +200,7 @@ void SetOnClick(uint8_t process, const int32_t lo, const int32_t hi, uint8_t dp, // val: value // LiveUpdate: live update function when the encoder changes // Apply: update function when the encoder is pressed -void SetValueOnClick(uint8_t process, const int32_t lo, const int32_t hi, const int32_t val, void (*Apply)() /*= nullptr*/, void (*LiveUpdate)() /*= nullptr*/) { +void SetValueOnClick(uint8_t process, const int32_t lo, const int32_t hi, const int32_t val, void (*Apply)()/*=nullptr*/, void (*LiveUpdate)()/*=nullptr*/) { SetOnClick(process, lo, hi, 0, val, Apply, LiveUpdate); DrawItemEdit(true); } @@ -219,7 +212,7 @@ void SetValueOnClick(uint8_t process, const int32_t lo, const int32_t hi, const // val: value // LiveUpdate: live update function when the encoder changes // Apply: update function when the encoder is pressed -void SetValueOnClick(uint8_t process, const float lo, const float hi, uint8_t dp, const float val, void (*Apply)() /*= nullptr*/, void (*LiveUpdate)() /*= nullptr*/) { +void SetValueOnClick(uint8_t process, const float lo, const float hi, uint8_t dp, const float val, void (*Apply)()/*=nullptr*/, void (*LiveUpdate)()/*=nullptr*/) { const int32_t value = round(val * POW(10, dp)); SetOnClick(process, lo * POW(10, dp), hi * POW(10, dp), dp, value, Apply, LiveUpdate); DrawItemEdit(true); @@ -231,7 +224,7 @@ void SetValueOnClick(uint8_t process, const float lo, const float hi, uint8_t dp // val: value // LiveUpdate: live update function when the encoder changes // Apply: update function when the encoder is pressed -void SetIntOnClick(const int32_t lo, const int32_t hi, const int32_t val, void (*Apply)() /*= nullptr*/, void (*LiveUpdate)() /*= nullptr*/) { +void SetIntOnClick(const int32_t lo, const int32_t hi, const int32_t val, void (*Apply)()/*=nullptr*/, void (*LiveUpdate)()/*=nullptr*/) { SetValueOnClick(SetInt, lo, hi, val, Apply, LiveUpdate); } @@ -240,7 +233,7 @@ void SetIntOnClick(const int32_t lo, const int32_t hi, const int32_t val, void ( // hi: high limit // LiveUpdate: live update function when the encoder changes // Apply: update function when the encoder is pressed -void SetPIntOnClick(const int32_t lo, const int32_t hi, void (*Apply)() /*= nullptr*/, void (*LiveUpdate)() /*= nullptr*/) { +void SetPIntOnClick(const int32_t lo, const int32_t hi, void (*Apply)()/*=nullptr*/, void (*LiveUpdate)()/*=nullptr*/) { MenuData.P_Int = (int16_t*)static_cast(CurrentMenu->SelectedItem())->value; const int32_t value = *MenuData.P_Int; SetValueOnClick(SetPInt, lo, hi, value, Apply, LiveUpdate); @@ -252,7 +245,7 @@ void SetPIntOnClick(const int32_t lo, const int32_t hi, void (*Apply)() /*= null // hi: high limit // dp: decimal places // val: value -void SetFloatOnClick(const float lo, const float hi, uint8_t dp, const float val, void (*Apply)() /*= nullptr*/, void (*LiveUpdate)() /*= nullptr*/) { +void SetFloatOnClick(const float lo, const float hi, uint8_t dp, const float val, void (*Apply)()/*=nullptr*/, void (*LiveUpdate)()/*=nullptr*/) { SetValueOnClick(SetFloat, lo, hi, dp, val, Apply, LiveUpdate); } @@ -261,7 +254,7 @@ void SetFloatOnClick(const float lo, const float hi, uint8_t dp, const float val // hi: high limit // LiveUpdate: live update function when the encoder changes // Apply: update function when the encoder is pressed -void SetPFloatOnClick(const float lo, const float hi, uint8_t dp, void (*Apply)() /*= nullptr*/, void (*LiveUpdate)() /*= nullptr*/) { +void SetPFloatOnClick(const float lo, const float hi, uint8_t dp, void (*Apply)()/*=nullptr*/, void (*LiveUpdate)()/*=nullptr*/) { MenuData.P_Float = (float*)static_cast(CurrentMenu->SelectedItem())->value; SetValueOnClick(SetPFloat, lo, hi, dp, *MenuData.P_Float, Apply, LiveUpdate); } @@ -290,7 +283,7 @@ int8_t HMI_Get(bool draw) { const int32_t lo = MenuData.MinValue; const int32_t hi = MenuData.MaxValue; const int32_t cval = MenuData.Value; - EncoderState encoder_diffState = get_encoder_state(); + EncoderState encoder_diffState = TERN(SMOOTH_ENCODER_MENUITEMS, get_encoder_state(), encoderReceiveAnalyze()); if (encoder_diffState != ENCODER_DIFF_NO) { if (applyEncoder(encoder_diffState, MenuData.Value)) { encoderRate.enabled = false; @@ -354,7 +347,8 @@ MenuClass::MenuClass() { void MenuClass::draw() { MenuTitle.draw(); - Draw_Menu(this); + DWINUI::SetColors(HMI_data.Text_Color, HMI_data.Background_Color, HMI_data.StatusBg_Color); + dwinDrawRectangle(1, DWINUI::backcolor, 0, TITLE_HEIGHT, DWIN_WIDTH - 1, STATUS_Y - 1); for (int8_t i = 0; i < MenuItemCount; i++) MenuItems[i]->draw(i - topline); Draw_Menu_Cursor(line()); @@ -407,7 +401,7 @@ void CustomMenuItemClass::draw(int8_t line) { if (onDraw != nullptr) (*onDraw)(static_cast(this), line); }; -void CustomMenuItemClass::redraw(bool erase /*=false*/) { +void CustomMenuItemClass::redraw(bool erase/*=false*/) { const int8_t line = CurrentMenu->line(this->pos); if (erase) Erase_Menu_Text(line); draw(line); @@ -507,8 +501,8 @@ MenuItemClass* EditItemAdd(uint8_t cicon, const char * const text, OnDrawItem on } void InitMenu() { + CurrentMenu = nullptr; PreviousMenu = nullptr; - InvalidateMenu(); } bool SetMenu(MenuClass* &menu, FSTR_P title, int8_t totalitems) { @@ -534,14 +528,18 @@ bool SetMenu(MenuClass* &menu, frame_rect_t cn, FSTR_P title, int8_t totalitems) return NotCurrent; } -void InvalidateMenu() { - if (CurrentMenu) { - CurrentMenu->topline = 0; - CurrentMenu->selected = 0; - CurrentMenu = nullptr; +void ResetMenu(MenuClass* &menu) { + if (menu) { + menu->topline = 0; + menu->selected = 0; } } +void InvalidateMenu() { + ResetMenu(CurrentMenu); + CurrentMenu = nullptr; +} + void UpdateMenu(MenuClass* &menu) { if (!menu) return; if (CurrentMenu != menu) { @@ -551,9 +549,13 @@ void UpdateMenu(MenuClass* &menu) { menu->draw(); } -void ReDrawMenu(bool force /*= false*/) { - if (CurrentMenu && (force || checkkey==Menu)) CurrentMenu->draw(); +void ReDrawMenu(bool force/*=false*/) { + if (CurrentMenu && (force || checkkey == Menu)) CurrentMenu->draw(); if (force) DrawItemEdit(true); } +void ReDrawItem() { + static_cast(CurrentMenu->SelectedItem())->redraw(false); +} + #endif // DWIN_LCD_PROUI diff --git a/Marlin/src/lcd/e3v2/proui/menus.h b/Marlin/src/lcd/e3v2/proui/menus.h index 072bf7584d90..f0855e707343 100644 --- a/Marlin/src/lcd/e3v2/proui/menus.h +++ b/Marlin/src/lcd/e3v2/proui/menus.h @@ -24,14 +24,17 @@ /** * Menu functions for ProUI * Author: Miguel A. Risco-Castillo - * Version: 1.9.1 - * Date: 2022/12/02 + * Version: 1.10.1 + * Date: 2022/05/01 */ #include "dwinui.h" #define MENU_CHAR_LIMIT 24 -#define MENU_MAX_ITEMS TERN(SDSORT_LIMIT, SDSORT_LIMIT, 64) + +#ifndef MENU_MAX_ITEMS + #define MENU_MAX_ITEMS 100 +#endif typedef struct { int32_t MaxValue = 0; // Auxiliar max integer/scaled float value @@ -123,7 +126,6 @@ extern MenuClass *PreviousMenu; // Menuitem Drawing functions ================================================= void Draw_Title(TitleClass* title); -void Draw_Menu(MenuClass* menu); void Draw_Menu_Cursor(const int8_t line); void Erase_Menu_Cursor(const int8_t line); void Erase_Menu_Text(const int8_t line); @@ -150,13 +152,13 @@ void onDrawChkbMenu(MenuItemClass* menuitem, int8_t line); // On click functions ========================================================= -void SetOnClick(uint8_t process, const int32_t lo, const int32_t hi, uint8_t dp, const int32_t val, void (*Apply)() = nullptr, void (*LiveUpdate)() = nullptr); -void SetValueOnClick(uint8_t process, const int32_t lo, const int32_t hi, const int32_t val, void (*Apply)() = nullptr, void (*LiveUpdate)() = nullptr); -void SetValueOnClick(uint8_t process, const float lo, const float hi, uint8_t dp, const float val, void (*Apply)() = nullptr, void (*LiveUpdate)() = nullptr); -void SetIntOnClick(const int32_t lo, const int32_t hi, const int32_t val, void (*Apply)() = nullptr, void (*LiveUpdate)() = nullptr); -void SetPIntOnClick(const int32_t lo, const int32_t hi, void (*Apply)() = nullptr, void (*LiveUpdate)() = nullptr); -void SetFloatOnClick(const float lo, const float hi, uint8_t dp, const float val, void (*Apply)() = nullptr, void (*LiveUpdate)() = nullptr); -void SetPFloatOnClick(const float lo, const float hi, uint8_t dp, void (*Apply)() = nullptr, void (*LiveUpdate)() = nullptr); +void SetOnClick(uint8_t process, const int32_t lo, const int32_t hi, uint8_t dp, const int32_t val, void (*Apply)()=nullptr, void (*LiveUpdate)()=nullptr); +void SetValueOnClick(uint8_t process, const int32_t lo, const int32_t hi, const int32_t val, void (*Apply)()=nullptr, void (*LiveUpdate)()=nullptr); +void SetValueOnClick(uint8_t process, const float lo, const float hi, uint8_t dp, const float val, void (*Apply)()=nullptr, void (*LiveUpdate)()=nullptr); +void SetIntOnClick(const int32_t lo, const int32_t hi, const int32_t val, void (*Apply)()=nullptr, void (*LiveUpdate)()=nullptr); +void SetPIntOnClick(const int32_t lo, const int32_t hi, void (*Apply)()=nullptr, void (*LiveUpdate)()=nullptr); +void SetFloatOnClick(const float lo, const float hi, uint8_t dp, const float val, void (*Apply)()=nullptr, void (*LiveUpdate)()=nullptr); +void SetPFloatOnClick(const float lo, const float hi, uint8_t dp, void (*Apply)()=nullptr, void (*LiveUpdate)()=nullptr); // HMI user control functions ================================================= @@ -175,6 +177,9 @@ void InitMenu(); bool SetMenu(MenuClass* &menu, FSTR_P title, int8_t totalitems); bool SetMenu(MenuClass* &menu, frame_rect_t cn, FSTR_P title, int8_t totalitems); +// Reset top line and selected item +void ResetMenu(MenuClass* &menu); + // Invalidate CurrentMenu to prepare for full menu drawing void InvalidateMenu(); @@ -182,7 +187,10 @@ void InvalidateMenu(); void UpdateMenu(MenuClass* &menu); //Redraw the current Menu if it is valid -void ReDrawMenu(bool force = false); +void ReDrawMenu(bool force=false); + +//Redraw selected menu item +void ReDrawItem(); // Clear MenuItems array and free MenuItems elements void MenuItemsClear(); @@ -196,7 +204,7 @@ bool IsMenu(MenuClass* menu); // Add elements to the MenuItems array CustomMenuItemClass* MenuItemAdd(OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); MenuItemClass* MenuItemAdd(uint8_t cicon, const char * const text=nullptr, OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); -inline MenuItemClass* MenuItemAdd(uint8_t cicon, FSTR_P text = nullptr, OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr) { +inline MenuItemClass* MenuItemAdd(uint8_t cicon, FSTR_P text=nullptr, OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr) { return MenuItemAdd(cicon, FTOP(text), ondraw, onclick); } MenuItemClass* MenuItemAdd(uint8_t cicon, uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); diff --git a/Marlin/src/lcd/e3v2/proui/meshviewer.cpp b/Marlin/src/lcd/e3v2/proui/meshviewer.cpp index 1f42004d3f36..086795d943c5 100644 --- a/Marlin/src/lcd/e3v2/proui/meshviewer.cpp +++ b/Marlin/src/lcd/e3v2/proui/meshviewer.cpp @@ -23,8 +23,8 @@ /** * Mesh Viewer for PRO UI * Author: Miguel A. Risco-Castillo (MRISCOC) - * version: 3.14.1 - * Date: 2022/04/11 + * version: 4.2.1 + * Date: 2023/05/05 */ #include "../../../inc/MarlinConfigPre.h" @@ -33,90 +33,99 @@ #include "../../../core/types.h" #include "../../marlinui.h" -#include "dwin_lcd.h" -#include "dwinui.h" #include "dwin.h" #include "dwin_popup.h" #include "../../../feature/bedlevel/bedlevel.h" #include "meshviewer.h" -#if ENABLED(USE_UBL_VIEWER) +#if ENABLED(USE_GRID_MESHVIEWER) #include "bedlevel_tools.h" #endif +bool meshredraw; // Redraw mesh points +uint8_t sizex, sizey; // Mesh XY size +uint8_t rmax; // Maximum radius +#define margin 25 // XY Margins +#define rmin 5 // Minimum radius +#define zmin -20 // rmin at z=-0.20 +#define zmax 20 // rmax at z= 0.20 +#define width DWIN_WIDTH - 2 * margin +#define r(z) ((z - zmin) * (rmax - rmin) / (zmax - zmin) + rmin) +#define px(xp) (margin + (xp) * (width) / (sizex - 1)) +#define py(yp) (30 + DWIN_WIDTH - margin - (yp) * (width) / (sizey - 1)) + +constexpr uint8_t meshfont = TERN(TJC_DISPLAY, font8x16, font6x12); + MeshViewerClass MeshViewer; -void MeshViewerClass::DrawMesh(bed_mesh_t zval, const uint8_t sizex, const uint8_t sizey) { - const int8_t mx = 25, my = 25; // Margins - const int16_t stx = (DWIN_WIDTH - 2 * mx) / (sizex - 1), // Steps - sty = (DWIN_WIDTH - 2 * my) / (sizey - 1); - const int8_t rmax = _MIN(mx - 2, stx / 2); - const int8_t rmin = 7; - int16_t zmesh[sizex][sizey]; - #define px(xp) (mx + (xp) * stx) - #define py(yp) (30 + DWIN_WIDTH - my - (yp) * sty) - #define rm(z) ((z - minz) * (rmax - rmin) / _MAX(1, (maxz - minz)) + rmin) - #define DrawMeshValue(xp, yp, zv) DWINUI::Draw_Signed_Float(font6x12, 1, 2, px(xp) - 18, py(yp) - 6, zv) - #define DrawMeshHLine(yp) dwinDrawHLine(HMI_data.SplitLine_Color, px(0), py(yp), DWIN_WIDTH - 2 * mx) - #define DrawMeshVLine(xp) dwinDrawVLine(HMI_data.SplitLine_Color, px(xp), py(sizey - 1), DWIN_WIDTH - 2 * my) - int16_t maxz =-32000; int16_t minz = 32000; - for (uint8_t y = 0; y < sizey; ++y) for (uint8_t x = 0; x < sizex; ++x) { - const float v = isnan(zval[x][y]) ? 0 : round(zval[x][y] * 100); - zmesh[x][y] = v; - NOLESS(maxz, v); - NOMORE(minz, v); - } - max = (float)maxz / 100; - min = (float)minz / 100; +float MeshViewerClass::max, MeshViewerClass::min; + +void MeshViewerClass::DrawMeshGrid(const uint8_t csizex, const uint8_t csizey) { + sizex = csizex; + sizey = csizey; + rmax = _MIN(margin - 2, 0.5 * (width) / (sizex - 1)); + min = 100; + max = -100; DWINUI::ClearMainArea(); dwinDrawRectangle(0, HMI_data.SplitLine_Color, px(0), py(0), px(sizex - 1), py(sizey - 1)); - for (uint8_t x = 1; x < sizex - 1; ++x) DrawMeshVLine(x); - for (uint8_t y = 1; y < sizey - 1; ++y) DrawMeshHLine(y); - for (uint8_t y = 0; y < sizey; ++y) { - hal.watchdog_refresh(); - for (uint8_t x = 0; x < sizex; ++x) { - uint16_t color = DWINUI::RainbowInt(zmesh[x][y], _MIN(-5, minz), _MAX(5, maxz)); - uint8_t radius = rm(zmesh[x][y]); - DWINUI::Draw_FillCircle(color, px(x), py(y), radius); - if (sizex < 9) { - if (zmesh[x][y] == 0) DWINUI::Draw_Float(font6x12, 1, 2, px(x) - 12, py(y) - 6, 0); - else DWINUI::Draw_Signed_Float(font6x12, 1, 2, px(x) - 18, py(y) - 6, zval[x][y]); - } - else { - char str_1[9]; - str_1[0] = 0; - switch (zmesh[x][y]) { - case -999 ... -100: - DWINUI::Draw_Signed_Float(font6x12, 1, 1, px(x) - 18, py(y) - 6, zval[x][y]); - break; - case -99 ... -1: - sprintf_P(str_1, PSTR("-.%02i"), -zmesh[x][y]); - break; - case 0: - dwinDrawString(false, font6x12, DWINUI::textcolor, DWINUI::backcolor, px(x) - 4, py(y) - 6, "0"); - break; - case 1 ... 99: - sprintf_P(str_1, PSTR(".%02i"), zmesh[x][y]); - break; - case 100 ... 999: - DWINUI::Draw_Signed_Float(font6x12, 1, 1, px(x) - 18, py(y) - 6, zval[x][y]); - break; - } - if (str_1[0]) - dwinDrawString(false, font6x12, DWINUI::textcolor, DWINUI::backcolor, px(x) - 12, py(y) - 6, str_1); - } + for (uint8_t x = 1; x < sizex - 1; ++x) dwinDrawVLine(HMI_data.SplitLine_Color, px(x), py(sizey - 1), width); + for (uint8_t y = 1; y < sizey - 1; ++y) dwinDrawHLine(HMI_data.SplitLine_Color, px(0), py(y), width); +} + +void MeshViewerClass::DrawMeshPoint(const uint8_t x, const uint8_t y, const float z) { + const uint8_t fs = DWINUI::fontWidth(meshfont); + const int16_t v = isnan(z) ? 0 : round(z * 100); + NOLESS(max, z); + NOMORE(min, z); + const uint16_t color = DWINUI::RainbowInt(v, zmin, zmax); + DWINUI::Draw_FillCircle(color, px(x), py(y), r(_MAX(_MIN(v,zmax),zmin))); + TERN_(TJC_DISPLAY, delay(100)); + if (sizex < (ENABLED(TJC_DISPLAY) ? 8 : 9)) { + if (v == 0) DWINUI::Draw_Float(meshfont, 1, 2, px(x) - 2*fs, py(y) - fs, 0); + else DWINUI::Draw_Signed_Float(meshfont, 1, 2, px(x) - 3*fs, py(y) - fs, z); + } + else { + char str_1[9]; + str_1[0] = '\0'; + switch (v) { + case -999 ... -100: + DWINUI::Draw_Signed_Float(meshfont, 1, 1, px(x) - 3*fs, py(y) - fs, z); + break; + case -99 ... -1: + sprintf_P(str_1, PSTR("-.%02i"), -v); + break; + case 0: + dwinDrawString(false, meshfont, DWINUI::textcolor, DWINUI::backcolor, px(x) - 4, py(y) - fs, "0"); + break; + case 1 ... 99: + sprintf_P(str_1, PSTR(".%02i"), v); + break; + case 100 ... 999: + DWINUI::Draw_Signed_Float(meshfont, 1, 1, px(x) - 3 * fs, py(y) - fs, z); + break; } + if (str_1[0]) + dwinDrawString(false, meshfont, DWINUI::textcolor, DWINUI::backcolor, px(x) - 2 * fs, py(y) - fs, str_1); } } -void MeshViewerClass::Draw(bool withsave /*= false*/) { +void MeshViewerClass::DrawMesh(const bed_mesh_t zval, const uint8_t csizex, const uint8_t csizey) { + DrawMeshGrid(csizex, csizey); + for (uint8_t y = 0; y < csizey; ++y) { + hal.watchdog_refresh(); + for (uint8_t x = 0; x < csizex; ++x) DrawMeshPoint(x, y, zval[x][y]); + } +} + +void MeshViewerClass::Draw(const bool withsave/*=false*/, const bool redraw/*=true*/) { Title.ShowCaption(GET_TEXT_F(MSG_MESH_VIEWER)); - #if USE_UBL_VIEWER + #if ENABLED(USE_GRID_MESHVIEWER) DWINUI::ClearMainArea(); bedLevelTools.viewer_print_value = true; bedLevelTools.Draw_Bed_Mesh(-1, 1, 8, 10 + TITLE_HEIGHT); #else - DrawMesh(bedlevel.z_values, GRID_MAX_POINTS_X, GRID_MAX_POINTS_Y); + if (redraw) DrawMesh(bedlevel.z_values, GRID_MAX_POINTS_X, GRID_MAX_POINTS_Y); + else DWINUI::Draw_Box(1, HMI_data.Background_Color, { 89, 305, 99, 38 }); #endif if (withsave) { DWINUI::Draw_Button(BTN_Save, 26, 305); @@ -126,19 +135,22 @@ void MeshViewerClass::Draw(bool withsave /*= false*/) { else DWINUI::Draw_Button(BTN_Continue, 86, 305); - #if USE_UBL_VIEWER + #if ENABLED(USE_GRID_MESHVIEWER) bedLevelTools.Set_Mesh_Viewer_Status(); #else char str_1[6], str_2[6] = ""; - ui.status_printf(0, F("Mesh minZ: %s, maxZ: %s"), - dtostrf(min, 1, 2, str_1), - dtostrf(max, 1, 2, str_2) - ); + ui.status_printf(0, F("Mesh minZ: %s, maxZ: %s"), dtostrf(min, 1, 2, str_1), dtostrf(max, 1, 2, str_2)); #endif } -void Draw_MeshViewer() { MeshViewer.Draw(true); } +void Draw_MeshViewer() { MeshViewer.Draw(true, meshredraw); } + void onClick_MeshViewer() { if (hmiFlag.select_flag) SaveMesh(); HMI_ReturnScreen(); } -void Goto_MeshViewer() { if (leveling_is_valid()) Goto_Popup(Draw_MeshViewer, onClick_MeshViewer); else HMI_ReturnScreen(); } + +void Goto_MeshViewer(const bool redraw) { + meshredraw = redraw; + if (leveling_is_valid()) Goto_Popup(Draw_MeshViewer, onClick_MeshViewer); + else HMI_ReturnScreen(); +} #endif // DWIN_LCD_PROUI && HAS_MESH diff --git a/Marlin/src/lcd/e3v2/proui/meshviewer.h b/Marlin/src/lcd/e3v2/proui/meshviewer.h index 3aafe16984aa..1f45a834809b 100644 --- a/Marlin/src/lcd/e3v2/proui/meshviewer.h +++ b/Marlin/src/lcd/e3v2/proui/meshviewer.h @@ -24,17 +24,19 @@ /** * Mesh Viewer for PRO UI * Author: Miguel A. Risco-Castillo (MRISCOC) - * version: 3.14.1 - * Date: 2022/04/11 + * version: 4.2.1 + * Date: 2023/05/05 */ class MeshViewerClass { public: - float max, min; - void Draw(bool withsave = false); - void DrawMesh(bed_mesh_t zval, const uint8_t sizex, const uint8_t sizey); + static float max, min; + static void DrawMeshGrid(const uint8_t csizex, const uint8_t csizey); + static void DrawMeshPoint(const uint8_t x, const uint8_t y, const float z); + static void Draw(const bool withsave=false, const bool redraw=true); + static void DrawMesh(const bed_mesh_t zval, const uint8_t csizex, const uint8_t csizey); }; extern MeshViewerClass MeshViewer; -void Goto_MeshViewer(); +void Goto_MeshViewer(const bool redraw); diff --git a/Marlin/src/lcd/e3v2/proui/plot.cpp b/Marlin/src/lcd/e3v2/proui/plot.cpp index 94f0dc055e7c..45341ae62463 100644 --- a/Marlin/src/lcd/e3v2/proui/plot.cpp +++ b/Marlin/src/lcd/e3v2/proui/plot.cpp @@ -23,20 +23,18 @@ /** * DWIN Single var plot * Author: Miguel A. Risco-Castillo - * Version: 2.1.2 - * Date: 2022/11/20 + * Version: 2.2.3 + * Date: 2023/01/29 */ #include "../../../inc/MarlinConfig.h" #if ALL(DWIN_LCD_PROUI, SHOW_TUNING_GRAPH) -#include "plot.h" +#include "dwin.h" #include "../../../core/types.h" #include "../../marlinui.h" -#include "dwin_lcd.h" -#include "dwinui.h" -#include "dwin.h" +#include "plot.h" #define Plot_Bg_Color RGB( 1, 12, 8) @@ -46,7 +44,7 @@ uint16_t grphpoints, r, x2, y2 = 0; frame_rect_t grphframe = {0}; float scale = 0; -void PlotClass::Draw(const frame_rect_t &frame, const celsius_t max, const_float_t ref/*=0*/) { +void PlotClass::Draw(const frame_rect_t &frame, const_float_t max, const_float_t ref/*=0*/) { grphframe = frame; grphpoints = 0; scale = frame.h / max; diff --git a/Marlin/src/lcd/e3v2/proui/plot.h b/Marlin/src/lcd/e3v2/proui/plot.h index 14e7058b0171..144ba0073b4d 100644 --- a/Marlin/src/lcd/e3v2/proui/plot.h +++ b/Marlin/src/lcd/e3v2/proui/plot.h @@ -24,15 +24,15 @@ /** * DWIN Single var plot * Author: Miguel A. Risco-Castillo - * Version: 2.1.2 - * Date: 2022/11/20 + * Version: 2.2.3 + * Date: 2023/01/29 */ #include "dwinui.h" class PlotClass { public: - static void Draw(const frame_rect_t &frame, const celsius_t max, const_float_t ref=0); + static void Draw(const frame_rect_t &frame, const_float_t max, const_float_t ref=0); static void Update(const_float_t value); }; diff --git a/Marlin/src/lcd/e3v2/proui/printstats.cpp b/Marlin/src/lcd/e3v2/proui/printstats.cpp index b99916dce178..093040ebf463 100644 --- a/Marlin/src/lcd/e3v2/proui/printstats.cpp +++ b/Marlin/src/lcd/e3v2/proui/printstats.cpp @@ -23,7 +23,7 @@ /** * Print Stats page for PRO UI * Author: Miguel A. Risco-Castillo (MRISCOC) - * Version: 1.4.2 + * Version: 1.4.0 * Date: 2022/12/03 */ @@ -37,10 +37,8 @@ #include "../../../MarlinCore.h" #include "../../marlinui.h" #include "../../../module/printcounter.h" -#include "dwin_lcd.h" -#include "dwinui.h" -#include "dwin_popup.h" #include "dwin.h" +#include "dwin_popup.h" PrintStatsClass PrintStats; diff --git a/Marlin/src/lcd/e3v2/proui/printstats.h b/Marlin/src/lcd/e3v2/proui/printstats.h index 4a383068864b..aadb3e8dceed 100644 --- a/Marlin/src/lcd/e3v2/proui/printstats.h +++ b/Marlin/src/lcd/e3v2/proui/printstats.h @@ -24,7 +24,7 @@ /** * Print Stats page for PRO UI * Author: Miguel A. Risco-Castillo (MRISCOC) - * Version: 1.4.2 + * Version: 1.4.0 * Date: 2022/12/03 */ diff --git a/Marlin/src/lcd/language/language_de.h b/Marlin/src/lcd/language/language_de.h index 3f17ca1453bb..c78942bff68e 100644 --- a/Marlin/src/lcd/language/language_de.h +++ b/Marlin/src/lcd/language/language_de.h @@ -68,12 +68,12 @@ namespace Language_de { LSTR MSG_FILAMENT_SET = _UxGT("Fila. Einstellungen"); LSTR MSG_FILAMENT_MAN = _UxGT("Filament Management"); LSTR MSG_MANUAL_LEVELING = _UxGT("Manuell Nivellierung"); - LSTR MSG_LEVBED_FL = _UxGT("Vorne Links"); - LSTR MSG_LEVBED_FR = _UxGT("Vorne Rechts"); - LSTR MSG_LEVBED_C = _UxGT("Mitte"); - LSTR MSG_LEVBED_BL = _UxGT("Hinten Links"); - LSTR MSG_LEVBED_BR = _UxGT("Hinten Rechts"); - LSTR MSG_MANUAL_MESH = _UxGT("manuelles Netz"); + LSTR MSG_TRAM_FL = _UxGT("Vorne Links"); + LSTR MSG_TRAM_FR = _UxGT("Vorne Rechts"); + LSTR MSG_TRAM_C = _UxGT("Mitte"); + LSTR MSG_TRAM_BL = _UxGT("Hinten Links"); + LSTR MSG_TRAM_BR = _UxGT("Hinten Rechts"); + LSTR MSG_MANUAL_MESH = _UxGT("Manuelles Netz"); LSTR MSG_AUTO_MESH = _UxGT("Netz auto. erstellen"); LSTR MSG_AUTO_Z_ALIGN = _UxGT("Z-Achsen ausgleichen"); LSTR MSG_ITERATION = _UxGT("G34 Iteration: %i"); diff --git a/Marlin/src/lcd/language/language_en.h b/Marlin/src/lcd/language/language_en.h index 1876b26038d8..c171338f19bb 100644 --- a/Marlin/src/lcd/language/language_en.h +++ b/Marlin/src/lcd/language/language_en.h @@ -64,6 +64,8 @@ namespace Language_en { LSTR MSG_MEDIA_READ_ERROR = MEDIA_TYPE_EN _UxGT(" read error"); LSTR MSG_MEDIA_USB_REMOVED = _UxGT("USB device removed"); LSTR MSG_MEDIA_USB_FAILED = _UxGT("USB start failed"); + LSTR MSG_MEDIA_SORT = _UxGT("Sort ") MEDIA_TYPE_EN; + LSTR MSG_MEDIA_UPDATE = MEDIA_TYPE_EN _UxGT(" Update"); LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Subcall Overflow"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Endstops"); // Max length 8 characters LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Soft Endstops"); @@ -86,11 +88,11 @@ namespace Language_en { LSTR MSG_FILAMENT_SET = _UxGT("Filament Settings"); LSTR MSG_FILAMENT_MAN = _UxGT("Filament Management"); LSTR MSG_MANUAL_LEVELING = _UxGT("Manual Leveling"); - LSTR MSG_LEVBED_FL = _UxGT("Front Left"); - LSTR MSG_LEVBED_FR = _UxGT("Front Right"); - LSTR MSG_LEVBED_C = _UxGT("Center"); - LSTR MSG_LEVBED_BL = _UxGT("Back Left"); - LSTR MSG_LEVBED_BR = _UxGT("Back Right"); + LSTR MSG_TRAM_FL = _UxGT("Front Left"); + LSTR MSG_TRAM_FR = _UxGT("Front Right"); + LSTR MSG_TRAM_C = _UxGT("Center"); + LSTR MSG_TRAM_BL = _UxGT("Back Left"); + LSTR MSG_TRAM_BR = _UxGT("Back Right"); LSTR MSG_MANUAL_MESH = _UxGT("Manual Mesh"); LSTR MSG_AUTO_MESH = _UxGT("Auto Build Mesh"); LSTR MSG_AUTO_Z_ALIGN = _UxGT("Auto Z-Align"); @@ -187,6 +189,7 @@ namespace Language_en { LSTR MSG_MESH_CENTER = _UxGT("Center Area"); LSTR MSG_MESH_EDIT_Z = _UxGT("Z Value"); LSTR MSG_MESH_CANCEL = _UxGT("Mesh cancelled"); + LSTR MSG_MESH_RESET = _UxGT("Mesh reset"); LSTR MSG_CUSTOM_COMMANDS = _UxGT("Custom Commands"); LSTR MSG_M48_TEST = _UxGT("M48 Probe Test"); LSTR MSG_M48_POINT = _UxGT("M48 Point"); @@ -364,7 +367,7 @@ namespace Language_en { LSTR MSG_PID_AUTOTUNE_E = _UxGT("PID Autotune *"); LSTR MSG_PID_CYCLE = _UxGT("PID Cycles"); LSTR MSG_PID_AUTOTUNE_DONE = _UxGT("PID tuning done"); - LSTR MSG_PID_AUTOTUNE_FAILED = _UxGT("PID Autotune failed!"); + LSTR MSG_PID_AUTOTUNE_FAILED = _UxGT("Autotune failed!"); LSTR MSG_BAD_HEATER_ID = _UxGT("Bad extruder."); LSTR MSG_TEMP_TOO_HIGH = _UxGT("Temperature too high."); LSTR MSG_TIMEOUT = _UxGT("Timeout."); @@ -395,6 +398,7 @@ namespace Language_en { LSTR MSG_VN_JERK = _UxGT("Max @ Jerk"); LSTR MSG_VE_JERK = _UxGT("Max E Jerk"); LSTR MSG_JUNCTION_DEVIATION = _UxGT("Junction Dev"); + LSTR MSG_STEP_SMOOTHING = _UxGT("Step Smoothing"); LSTR MSG_MAX_SPEED = _UxGT("Max Speed (mm/s)"); LSTR MSG_VMAX_A = _UxGT("Max ") STR_A _UxGT(" Speed"); LSTR MSG_VMAX_B = _UxGT("Max ") STR_B _UxGT(" Speed"); @@ -418,6 +422,12 @@ namespace Language_en { LSTR MSG_SHAPING_DISABLE = _UxGT("Disable @ shaping"); LSTR MSG_SHAPING_FREQ = _UxGT("@ frequency"); LSTR MSG_SHAPING_ZETA = _UxGT("@ damping"); + LSTR MSG_SHAPING_A_FREQ = STR_A _UxGT(" frequency"); + LSTR MSG_SHAPING_B_FREQ = STR_B _UxGT(" frequency"); + LSTR MSG_SHAPING_A_ZETA = STR_A _UxGT(" damping "); + LSTR MSG_SHAPING_B_ZETA = STR_B _UxGT(" damping "); + LSTR MSG_SHAPING_X_ENABLE = _UxGT("Enable X shaping"); + LSTR MSG_SHAPING_Y_ENABLE = _UxGT("Enable Y shaping"); LSTR MSG_XY_FREQUENCY_LIMIT = _UxGT("XY Freq Limit"); LSTR MSG_XY_FREQUENCY_FEEDRATE = _UxGT("Min FR Factor"); LSTR MSG_STEPS_PER_MM = _UxGT("Steps/mm"); @@ -460,7 +470,7 @@ namespace Language_en { LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Err: EEPROM Version"); LSTR MSG_ERR_EEPROM_CORRUPT = _UxGT("Err: EEPROM Corrupt"); LSTR MSG_SETTINGS_STORED = _UxGT("Settings Stored"); - LSTR MSG_MEDIA_UPDATE = MEDIA_TYPE_EN _UxGT(" Update"); + LSTR MSG_HAS_PREVIEW = _UxGT("Has preview"); LSTR MSG_RESET_PRINTER = _UxGT("Reset Printer"); LSTR MSG_REFRESH = LCD_STR_REFRESH _UxGT("Refresh"); LSTR MSG_INFO_SCREEN = _UxGT("Info Screen"); @@ -507,7 +517,7 @@ namespace Language_en { LSTR MSG_CANCEL_OBJECT = _UxGT("Cancel Object"); LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancel Object {"); LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Continue Print Job"); - LSTR MSG_MEDIA_MENU = _UxGT("Print from ") MEDIA_TYPE_EN; + LSTR MSG_MEDIA_MENU = _UxGT("Select from ") MEDIA_TYPE_EN; LSTR MSG_TURN_OFF = _UxGT("Turn off the printer"); LSTR MSG_END_LOOPS = _UxGT("End Repeat Loops"); #else @@ -826,6 +836,10 @@ namespace Language_en { #endif LSTR MSG_TMC_DRIVERS = _UxGT("TMC Drivers"); LSTR MSG_TMC_CURRENT = _UxGT("Driver Current"); + LSTR MSG_TMC_ACURRENT = STR_A _UxGT("Driver Current"); + LSTR MSG_TMC_BCURRENT = STR_B _UxGT("Driver Current"); + LSTR MSG_TMC_CCURRENT = STR_C _UxGT("Driver Current"); + LSTR MSG_TMC_ECURRENT = _UxGT("E Driver Current"); LSTR MSG_TMC_HYBRID_THRS = _UxGT("Hybrid Threshold"); LSTR MSG_TMC_HOMING_THRS = _UxGT("Sensorless Homing"); LSTR MSG_TMC_STEPPING_MODE = _UxGT("Stepping Mode"); diff --git a/Marlin/src/lcd/language/language_it.h b/Marlin/src/lcd/language/language_it.h index 55f1ac3b48c6..054a71d6c069 100644 --- a/Marlin/src/lcd/language/language_it.h +++ b/Marlin/src/lcd/language/language_it.h @@ -81,11 +81,11 @@ namespace Language_it { LSTR MSG_FILAMENT_SET = _UxGT("Impostaz.filamento"); LSTR MSG_FILAMENT_MAN = _UxGT("Gestione filamento"); LSTR MSG_MANUAL_LEVELING = _UxGT("Livel.manuale"); - LSTR MSG_LEVBED_FL = _UxGT("Davanti Sinistra"); - LSTR MSG_LEVBED_FR = _UxGT("Davanti Destra"); - LSTR MSG_LEVBED_C = _UxGT("Centro"); - LSTR MSG_LEVBED_BL = _UxGT("Dietro Sinistra"); - LSTR MSG_LEVBED_BR = _UxGT("Dietro Destra"); + LSTR MSG_TRAM_FL = _UxGT("Davanti Sinistra"); + LSTR MSG_TRAM_FR = _UxGT("Davanti Destra"); + LSTR MSG_TRAM_C = _UxGT("Centro"); + LSTR MSG_TRAM_BL = _UxGT("Dietro Sinistra"); + LSTR MSG_TRAM_BR = _UxGT("Dietro Destra"); LSTR MSG_MANUAL_MESH = _UxGT("Mesh Manuale"); LSTR MSG_AUTO_MESH = _UxGT("Generaz.Autom.Mesh"); LSTR MSG_AUTO_Z_ALIGN = _UxGT("Allineam.automat. Z"); diff --git a/Marlin/src/lcd/language/language_ru.h b/Marlin/src/lcd/language/language_ru.h index a8db7852ccf3..7e00467fa1bc 100644 --- a/Marlin/src/lcd/language/language_ru.h +++ b/Marlin/src/lcd/language/language_ru.h @@ -894,11 +894,11 @@ namespace Language_ru { LSTR MSG_FILAMENT_MAN = _UxGT("Управл.филаментом"); #endif LSTR MSG_MANUAL_LEVELING = _UxGT("Ручное выравнивание"); - LSTR MSG_LEVBED_FL = _UxGT("Передний левый"); - LSTR MSG_LEVBED_FR = _UxGT("Передний правый"); - LSTR MSG_LEVBED_C = _UxGT("Центр"); - LSTR MSG_LEVBED_BL = _UxGT("Задний левый"); - LSTR MSG_LEVBED_BR = _UxGT("Задний правый"); + LSTR MSG_TRAM_FL = _UxGT("Передний левый"); + LSTR MSG_TRAM_FR = _UxGT("Передний правый"); + LSTR MSG_TRAM_C = _UxGT("Центр"); + LSTR MSG_TRAM_BL = _UxGT("Задний левый"); + LSTR MSG_TRAM_BR = _UxGT("Задний правый"); LSTR MSG_MANUAL_MESH = _UxGT("Сетка вручную"); LSTR MSG_AUTO_MESH = _UxGT("Сетка автоматически"); LSTR MSG_ERR_M428_TOO_FAR = _UxGT("Ошибка: слишком далеко!"); diff --git a/Marlin/src/lcd/language/language_sk.h b/Marlin/src/lcd/language/language_sk.h index cea40d2406aa..5499a2494203 100644 --- a/Marlin/src/lcd/language/language_sk.h +++ b/Marlin/src/lcd/language/language_sk.h @@ -82,11 +82,11 @@ namespace Language_sk { LSTR MSG_FILAMENT_SET = _UxGT("Nastav. filamentu"); LSTR MSG_FILAMENT_MAN = _UxGT("Správa filamentu"); LSTR MSG_MANUAL_LEVELING = _UxGT("Ručné rovnanie"); - LSTR MSG_LEVBED_FL = _UxGT("Ľavý predný"); - LSTR MSG_LEVBED_FR = _UxGT("Pravý predný"); - LSTR MSG_LEVBED_C = _UxGT("Stred"); - LSTR MSG_LEVBED_BL = _UxGT("Ľavý zadný"); - LSTR MSG_LEVBED_BR = _UxGT("Pravý zadný"); + LSTR MSG_TRAM_FL = _UxGT("Ľavý predný"); + LSTR MSG_TRAM_FR = _UxGT("Pravý predný"); + LSTR MSG_TRAM_C = _UxGT("Stred"); + LSTR MSG_TRAM_BL = _UxGT("Ľavý zadný"); + LSTR MSG_TRAM_BR = _UxGT("Pravý zadný"); LSTR MSG_MANUAL_MESH = _UxGT("Ručná mriežka"); LSTR MSG_AUTO_MESH = _UxGT("Automat. mriežka"); LSTR MSG_AUTO_Z_ALIGN = _UxGT("Auto-zarovn. Z"); diff --git a/Marlin/src/lcd/language/language_tr.h b/Marlin/src/lcd/language/language_tr.h index 63c41854477b..667db7b77a42 100644 --- a/Marlin/src/lcd/language/language_tr.h +++ b/Marlin/src/lcd/language/language_tr.h @@ -71,11 +71,11 @@ namespace Language_tr { LSTR MSG_FILAMENT_SET = _UxGT("Filament Ayarları"); LSTR MSG_FILAMENT_MAN = _UxGT("Filament Yönetimi"); LSTR MSG_MANUAL_LEVELING = _UxGT("Manuel Seviyeleme"); - LSTR MSG_LEVBED_FL = _UxGT("Sol Ön"); - LSTR MSG_LEVBED_FR = _UxGT("Ön Sağ"); - LSTR MSG_LEVBED_C = _UxGT("Orta"); - LSTR MSG_LEVBED_BL = _UxGT("Arka Sol"); - LSTR MSG_LEVBED_BR = _UxGT("Arka Sağ"); + LSTR MSG_TRAM_FL = _UxGT("Sol Ön"); + LSTR MSG_TRAM_FR = _UxGT("Ön Sağ"); + LSTR MSG_TRAM_C = _UxGT("Orta"); + LSTR MSG_TRAM_BL = _UxGT("Arka Sol"); + LSTR MSG_TRAM_BR = _UxGT("Arka Sağ"); LSTR MSG_MANUAL_MESH = _UxGT("Manuel Mesh"); LSTR MSG_AUTO_MESH = _UxGT("Oto Mesh Oluştur"); LSTR MSG_AUTO_Z_ALIGN = _UxGT("Oto. Z-Hizalama"); diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index c2915eb41818..50b8323838d5 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -2633,10 +2633,12 @@ hal_timer_t Stepper::block_phase_isr() { oversampling_factor = 0; // Assume no axis smoothing (via oversampling) // Decide if axis smoothing is possible uint32_t max_rate = current_block->nominal_rate; // Get the step event rate - while (max_rate < MIN_STEP_ISR_FREQUENCY) { // As long as more ISRs are possible... - max_rate <<= 1; // Try to double the rate - if (max_rate < MIN_STEP_ISR_FREQUENCY) // Don't exceed the estimated ISR limit - ++oversampling_factor; // Increase the oversampling (used for left-shift) + if (TERN1(DWIN_LCD_PROUI, HMI_data.AdaptiveStepSmoothing)) { + while (max_rate < MIN_STEP_ISR_FREQUENCY) { // As long as more ISRs are possible... + max_rate <<= 1; // Try to double the rate + if (max_rate < MIN_STEP_ISR_FREQUENCY) // Don't exceed the estimated ISR limit + ++oversampling_factor; // Increase the oversampling (used for left-shift) + } } #endif diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index a1bebca4a08b..11788c3cb1cb 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -910,7 +910,7 @@ volatile bool Temperature::raw_temps_ready = false; TERN_(PRINTER_EVENT_LEDS, printerEventLEDs.onPidTuningDone(color)); TERN_(EXTENSIBLE_UI, ExtUI::onPidTuning(ExtUI::result_t::PID_DONE)); - TERN_(DWIN_PID_TUNE, DWIN_PidTuning(PID_DONE)); + TERN_(DWIN_PID_TUNE, DWIN_PidTuning(AUTOTUNE_DONE)); goto EXIT_M303; } @@ -928,7 +928,7 @@ volatile bool Temperature::raw_temps_ready = false; TERN_(PRINTER_EVENT_LEDS, printerEventLEDs.onPidTuningDone(color)); TERN_(EXTENSIBLE_UI, ExtUI::onPidTuning(ExtUI::result_t::PID_DONE)); - TERN_(DWIN_PID_TUNE, DWIN_PidTuning(PID_DONE)); + TERN_(DWIN_PID_TUNE, DWIN_PidTuning(AUTOTUNE_DONE)); EXIT_M303: TERN_(TEMP_TUNING_MAINTAIN_FAN, adaptive_fan_slowing = true); @@ -1305,7 +1305,7 @@ volatile bool Temperature::raw_temps_ready = false; } SERIAL_ECHOLNPGM(STR_MPC_AUTOTUNE_FINISHED); - TERN_(DWIN_LCD_PROUI, DWIN_MPCTuning(MPC_DONE)); + TERN_(DWIN_LCD_PROUI, DWIN_MPCTuning(AUTOTUNE_DONE)); SERIAL_ECHOLNPGM("MPC_BLOCK_HEAT_CAPACITY ", mpc.block_heat_capacity); SERIAL_ECHOLNPGM("MPC_SENSOR_RESPONSIVENESS ", p_float_t(mpc.sensor_responsiveness, 4)); @@ -4391,7 +4391,7 @@ void Temperature::isr() { // If wait_for_heatup is set, temperature was reached, no cancel if (wait_for_heatup) { wait_for_heatup = false; - #if HAS_DWIN_E3V2_BASIC + #if ENABLED(DWIN_CREALITY_LCD) hmiFlag.heat_flag = 0; duration_t elapsed = print_job_timer.duration(); // Print timer dwin_heat_time = elapsed.value; From 60f591f3b6e06fdef903e10f81ac96f65e30d78e Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 23 Jun 2023 12:11:03 +0000 Subject: [PATCH 316/427] [cron] Bump distribution date (2023-06-23) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 01854ff0d0dc..c48243e8b968 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-22" +//#define STRING_DISTRIBUTION_DATE "2023-06-23" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 2a14e2753632..f86372c1037e 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-22" + #define STRING_DISTRIBUTION_DATE "2023-06-23" #endif /** From 9bf95418a7fbc0da0a6dc8bfb5024b624b94a51a Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 24 Jun 2023 02:57:58 -0500 Subject: [PATCH 317/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20TFT=5FLTDC::writeR?= =?UTF-8?q?eg?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25939 --- Marlin/src/HAL/LPC1768/tft/tft_spi.cpp | 4 ++-- Marlin/src/HAL/LPC1768/tft/tft_spi.h | 4 ++-- Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h | 4 ++-- Marlin/src/HAL/STM32/tft/tft_fsmc.cpp | 6 +++--- Marlin/src/HAL/STM32/tft/tft_fsmc.h | 4 ++-- Marlin/src/HAL/STM32/tft/tft_ltdc.cpp | 6 +----- Marlin/src/HAL/STM32/tft/tft_ltdc.h | 4 ++-- Marlin/src/HAL/STM32/tft/tft_spi.cpp | 4 ++-- Marlin/src/HAL/STM32/tft/tft_spi.h | 4 ++-- Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp | 10 +++++----- Marlin/src/HAL/STM32F1/tft/tft_fsmc.h | 4 ++-- Marlin/src/HAL/STM32F1/tft/tft_spi.cpp | 4 ++-- Marlin/src/HAL/STM32F1/tft/tft_spi.h | 4 ++-- .../src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp | 4 ++-- Marlin/src/lcd/tft/tft.h | 2 +- Marlin/src/lcd/tft_io/tft_io.h | 2 +- 16 files changed, 33 insertions(+), 37 deletions(-) diff --git a/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp b/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp index 440e9f8598d5..2342de002db7 100644 --- a/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp +++ b/Marlin/src/HAL/LPC1768/tft/tft_spi.cpp @@ -63,7 +63,7 @@ uint32_t TFT_SPI::getID() { return id; } -uint32_t TFT_SPI::readID(uint16_t reg) { +uint32_t TFT_SPI::readID(const uint16_t inReg) { uint32_t data = 0; #if PIN_EXISTS(TFT_MISO) @@ -72,7 +72,7 @@ uint32_t TFT_SPI::readID(uint16_t reg) { SPIx.setClock(SPI_CLOCK_DIV64); SPIx.begin(); WRITE(TFT_CS_PIN, LOW); - writeReg(reg); + writeReg(inReg); for (uint8_t i = 0; i < 4; ++i) { SPIx.read((uint8_t*)&d, 1); diff --git a/Marlin/src/HAL/LPC1768/tft/tft_spi.h b/Marlin/src/HAL/LPC1768/tft/tft_spi.h index 884bcaed0412..0ebb29dd60f2 100644 --- a/Marlin/src/HAL/LPC1768/tft/tft_spi.h +++ b/Marlin/src/HAL/LPC1768/tft/tft_spi.h @@ -56,7 +56,7 @@ class TFT_SPI { private: - static uint32_t readID(uint16_t reg); + static uint32_t readID(const uint16_t inReg); static void transmit(uint16_t data); static void transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count); static void transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count); @@ -74,7 +74,7 @@ class TFT_SPI { static void dataTransferAbort(); static void writeData(uint16_t data) { transmit(data); } - static void writeReg(uint16_t reg) { WRITE(TFT_DC_PIN, LOW); transmit(reg); WRITE(TFT_DC_PIN, HIGH); } + static void writeReg(const uint16_t inReg) { WRITE(TFT_DC_PIN, LOW); transmit(inReg); WRITE(TFT_DC_PIN, HIGH); } static void writeSequence_DMA(uint16_t *data, uint16_t count) { transmitDMA(DMA_MINC_ENABLE, data, count); } static void writeMultiple_DMA(uint16_t color, uint16_t count) { static uint16_t data; data = color; transmitDMA(DMA_MINC_DISABLE, &data, count); } diff --git a/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h b/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h index df7b9420994b..c388f3288bbc 100644 --- a/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h +++ b/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h @@ -40,7 +40,7 @@ class TFT_SPI { private: - static uint32_t readID(uint16_t reg); + static uint32_t readID(const uint16_t inReg); static void transmit(uint16_t data); static void transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count); @@ -57,7 +57,7 @@ class TFT_SPI { static void dataTransferAbort(); static void writeData(uint16_t data); - static void writeReg(uint16_t reg); + static void writeReg(const uint16_t inReg); static void writeSequence_DMA(uint16_t *data, uint16_t count) { writeSequence(data, count); } static void writeMultiple_DMA(uint16_t color, uint16_t count) { writeMultiple(color, count); } diff --git a/Marlin/src/HAL/STM32/tft/tft_fsmc.cpp b/Marlin/src/HAL/STM32/tft/tft_fsmc.cpp index 35606460ac62..8e4f97d0a32e 100644 --- a/Marlin/src/HAL/STM32/tft/tft_fsmc.cpp +++ b/Marlin/src/HAL/STM32/tft/tft_fsmc.cpp @@ -135,11 +135,11 @@ uint32_t TFT_FSMC::getID() { return id; } -uint32_t TFT_FSMC::readID(tft_data_t reg) { +uint32_t TFT_FSMC::readID(const tft_data_t inReg) { uint32_t id; - writeReg(reg); + writeReg(inReg); id = LCD->RAM; // dummy read - id = reg << 24; + id = inReg << 24; id |= (LCD->RAM & 0x00FF) << 16; id |= (LCD->RAM & 0x00FF) << 8; id |= LCD->RAM & 0x00FF; diff --git a/Marlin/src/HAL/STM32/tft/tft_fsmc.h b/Marlin/src/HAL/STM32/tft/tft_fsmc.h index 1b0a45ff79ac..e710e5511cf4 100644 --- a/Marlin/src/HAL/STM32/tft/tft_fsmc.h +++ b/Marlin/src/HAL/STM32/tft/tft_fsmc.h @@ -62,7 +62,7 @@ class TFT_FSMC { static LCD_CONTROLLER_TypeDef *LCD; - static uint32_t readID(tft_data_t reg); + static uint32_t readID(const tft_data_t reg); static void transmit(tft_data_t data) { LCD->RAM = data; __DSB(); } static void transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count); static void transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count); @@ -77,7 +77,7 @@ class TFT_FSMC { static void dataTransferEnd() {} static void writeData(uint16_t data) { transmit(tft_data_t(data)); } - static void writeReg(uint16_t reg) { LCD->REG = tft_data_t(reg); __DSB(); } + static void writeReg(const uint16_t inReg) { LCD->REG = tft_data_t(inReg); __DSB(); } static void writeSequence_DMA(uint16_t *data, uint16_t count) { transmitDMA(DMA_PINC_ENABLE, data, count); } static void writeMultiple_DMA(uint16_t color, uint16_t count) { static uint16_t data; data = color; transmitDMA(DMA_PINC_DISABLE, &data, count); } diff --git a/Marlin/src/HAL/STM32/tft/tft_ltdc.cpp b/Marlin/src/HAL/STM32/tft/tft_ltdc.cpp index ce47d2e1ecdf..3bbc39f20a8f 100644 --- a/Marlin/src/HAL/STM32/tft/tft_ltdc.cpp +++ b/Marlin/src/HAL/STM32/tft/tft_ltdc.cpp @@ -267,7 +267,7 @@ uint32_t TFT_LTDC::getID() { return 0xABAB; } -uint32_t TFT_LTDC::readID(tft_data_t reg) { +uint32_t TFT_LTDC::readID(const tft_data_t inReg) { return 0xABAB; } @@ -352,10 +352,6 @@ void TFT_LTDC::transmit(tft_data_t data) { } } -void TFT_LTDC::writeReg(uint16_t reg) { - reg = reg; -} - void TFT_LTDC::transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { while (x_cur != x_min && count) { diff --git a/Marlin/src/HAL/STM32/tft/tft_ltdc.h b/Marlin/src/HAL/STM32/tft/tft_ltdc.h index d4a254ba7063..22c3a13778fc 100644 --- a/Marlin/src/HAL/STM32/tft/tft_ltdc.h +++ b/Marlin/src/HAL/STM32/tft/tft_ltdc.h @@ -43,7 +43,7 @@ class TFT_LTDC { static uint16_t x_min, x_max, y_min, y_max, x_cur, y_cur; static uint8_t reg; - static uint32_t readID(tft_data_t reg); + static uint32_t readID(const tft_data_t inReg); static uint16_t readPoint(uint16_t x, uint16_t y); static void drawPoint(uint16_t x, uint16_t y, uint16_t color); @@ -62,7 +62,7 @@ class TFT_LTDC { static void dataTransferEnd() {}; static void writeData(uint16_t data); - static void writeReg(uint16_t reg); + static void writeReg(const uint16_t inReg) { reg = inReg; } // Non-blocking DMA data transfer is not implemented for LTDC interface inline static void writeSequence_DMA(uint16_t *data, uint16_t count) { writeSequence(data, count); } diff --git a/Marlin/src/HAL/STM32/tft/tft_spi.cpp b/Marlin/src/HAL/STM32/tft/tft_spi.cpp index eebf366b8c38..eb81a27bf102 100644 --- a/Marlin/src/HAL/STM32/tft/tft_spi.cpp +++ b/Marlin/src/HAL/STM32/tft/tft_spi.cpp @@ -145,7 +145,7 @@ uint32_t TFT_SPI::getID() { return id; } -uint32_t TFT_SPI::readID(uint16_t reg) { +uint32_t TFT_SPI::readID(const uint16_t inReg) { uint32_t data = 0; #if PIN_EXISTS(TFT_MISO) uint32_t BaudRatePrescaler = SPIx.Init.BaudRatePrescaler; @@ -153,7 +153,7 @@ uint32_t TFT_SPI::readID(uint16_t reg) { SPIx.Init.BaudRatePrescaler = SPIx.Instance == SPI1 ? SPI_BAUDRATEPRESCALER_8 : SPI_BAUDRATEPRESCALER_4; dataTransferBegin(DATASIZE_8BIT); - writeReg(reg); + writeReg(inReg); if (SPIx.Init.Direction == SPI_DIRECTION_1LINE) SPI_1LINE_RX(&SPIx); __HAL_SPI_ENABLE(&SPIx); diff --git a/Marlin/src/HAL/STM32/tft/tft_spi.h b/Marlin/src/HAL/STM32/tft/tft_spi.h index 09f0e0810731..0535113b1685 100644 --- a/Marlin/src/HAL/STM32/tft/tft_spi.h +++ b/Marlin/src/HAL/STM32/tft/tft_spi.h @@ -46,7 +46,7 @@ class TFT_SPI { static SPI_HandleTypeDef SPIx; static DMA_HandleTypeDef DMAtx; - static uint32_t readID(uint16_t reg); + static uint32_t readID(const uint16_t inReg); static void transmit(uint16_t data); static void transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count); static void transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count); @@ -65,7 +65,7 @@ class TFT_SPI { static void dataTransferAbort(); static void writeData(uint16_t data) { transmit(data); } - static void writeReg(uint16_t reg) { WRITE(TFT_A0_PIN, LOW); transmit(reg); WRITE(TFT_A0_PIN, HIGH); } + static void writeReg(const uint16_t inReg) { WRITE(TFT_A0_PIN, LOW); transmit(inReg); WRITE(TFT_A0_PIN, HIGH); } static void writeSequence_DMA(uint16_t *data, uint16_t count) { transmitDMA(DMA_MINC_ENABLE, data, count); } static void writeMultiple_DMA(uint16_t color, uint16_t count) { static uint16_t data; data = color; transmitDMA(DMA_MINC_DISABLE, &data, count); } diff --git a/Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp b/Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp index a910cd5af080..51f70b936527 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp +++ b/Marlin/src/HAL/STM32F1/tft/tft_fsmc.cpp @@ -186,8 +186,8 @@ void TFT_FSMC::transmit(uint16_t data) { __DSB(); } -void TFT_FSMC::writeReg(uint16_t reg) { - LCD->REG = reg; +void TFT_FSMC::writeReg(const uint16_t inReg) { + LCD->REG = inReg; __DSB(); } @@ -205,11 +205,11 @@ uint32_t TFT_FSMC::getID() { return id; } - uint32_t TFT_FSMC::readID(uint16_t reg) { + uint32_t TFT_FSMC::readID(const uint16_t inReg) { uint32_t id; - writeReg(reg); + writeReg(inReg); id = LCD->RAM; // dummy read - id = reg << 24; + id = inReg << 24; id |= (LCD->RAM & 0x00FF) << 16; id |= (LCD->RAM & 0x00FF) << 8; id |= LCD->RAM & 0x00FF; diff --git a/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h b/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h index 0e74ce2c2bd6..67a2b9cd53c1 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h +++ b/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h @@ -54,7 +54,7 @@ class TFT_FSMC { private: static LCD_CONTROLLER_TypeDef *LCD; - static uint32_t readID(uint16_t reg); + static uint32_t readID(const uint16_t inReg); static void transmit(uint16_t data); static void transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count); static void transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count); @@ -69,7 +69,7 @@ class TFT_FSMC { static void dataTransferEnd() {}; static void writeData(uint16_t data) { transmit(data); } - static void writeReg(uint16_t reg); + static void writeReg(const uint16_t inReg); static void writeSequence_DMA(uint16_t *data, uint16_t count) { transmitDMA(DMA_PINC_ENABLE, data, count); } static void writeMultiple_DMA(uint16_t color, uint16_t count) { static uint16_t data; data = color; transmitDMA(DMA_PINC_DISABLE, &data, count); } diff --git a/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp b/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp index 18d564443761..f26103b25d8d 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp +++ b/Marlin/src/HAL/STM32F1/tft/tft_spi.cpp @@ -93,13 +93,13 @@ uint32_t TFT_SPI::getID() { return id; } -uint32_t TFT_SPI::readID(uint16_t reg) { +uint32_t TFT_SPI::readID(const uint16_t inReg) { uint32_t data = 0; #if PIN_EXISTS(TFT_MISO) SPIx.setClockDivider(SPI_CLOCK_DIV16); dataTransferBegin(DATASIZE_8BIT); - writeReg(reg); + writeReg(inReg); for (uint8_t i = 0; i < 4; ++i) { uint8_t d; diff --git a/Marlin/src/HAL/STM32F1/tft/tft_spi.h b/Marlin/src/HAL/STM32F1/tft/tft_spi.h index d0c2e50486f0..5a57081c2abd 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_spi.h +++ b/Marlin/src/HAL/STM32F1/tft/tft_spi.h @@ -63,7 +63,7 @@ class TFT_SPI { private: - static uint32_t readID(uint16_t reg); + static uint32_t readID(const uint16_t inReg); static void transmit(uint16_t data); static void transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count); static void transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count); @@ -81,7 +81,7 @@ class TFT_SPI { static void dataTransferAbort(); static void writeData(uint16_t data) { transmit(data); } - static void writeReg(uint16_t reg) { WRITE(TFT_DC_PIN, LOW); transmit(reg); WRITE(TFT_DC_PIN, HIGH); } + static void writeReg(const uint16_t inReg) { WRITE(TFT_DC_PIN, LOW); transmit(inReg); WRITE(TFT_DC_PIN, HIGH); } static void writeSequence_DMA(uint16_t *data, uint16_t count) { transmitDMA(DMA_MINC_ENABLE, data, count); } static void writeMultiple_DMA(uint16_t color, uint16_t count) { static uint16_t data; data = color; transmitDMA(DMA_MINC_DISABLE, &data, count); } diff --git a/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp b/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp index d16693cee4ee..160ee4412208 100644 --- a/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp +++ b/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp @@ -136,8 +136,8 @@ TFT_IO tftio; #define TFT_BTOKMENU_COLOR COLOR_RED #endif -static void setWindow(u8g_t *u8g, u8g_dev_t *dev, uint16_t Xmin, uint16_t Ymin, uint16_t Xmax, uint16_t Ymax) { - tftio.set_window(Xmin, Ymin, Xmax, Ymax); +static void setWindow(u8g_t *u8g, u8g_dev_t *dev, uint16_t xMin, uint16_t yMin, uint16_t xMax, uint16_t yMax) { + tftio.set_window(xMin, yMin, xMax, yMax); } #if HAS_TOUCH_BUTTONS diff --git a/Marlin/src/lcd/tft/tft.h b/Marlin/src/lcd/tft/tft.h index 4a1d1d83044e..15464cb0459d 100644 --- a/Marlin/src/lcd/tft/tft.h +++ b/Marlin/src/lcd/tft/tft.h @@ -72,7 +72,7 @@ class TFT { static void abort() { io.abort(); } static void write_multiple(uint16_t data, uint16_t count) { io.WriteMultipleDMA(data, count); } static void write_sequence(uint16_t *data, uint16_t count) { io.writeSequenceDMA(data, count); } - static void set_window(uint16_t Xmin, uint16_t Ymin, uint16_t Xmax, uint16_t Ymax) { io.set_window(Xmin, Ymin, Xmax, Ymax); } + static void set_window(uint16_t xMin, uint16_t yMin, uint16_t xMax, uint16_t yMax) { io.set_window(xMin, yMin, xMax, yMax); } static void fill(uint16_t x, uint16_t y, uint16_t width, uint16_t height, uint16_t color) { queue.fill(x, y, width, height, color); } static void canvas(uint16_t x, uint16_t y, uint16_t width, uint16_t height) { queue.canvas(x, y, width, height); } diff --git a/Marlin/src/lcd/tft_io/tft_io.h b/Marlin/src/lcd/tft_io/tft_io.h index cbe554436e96..b0d942120239 100644 --- a/Marlin/src/lcd/tft_io/tft_io.h +++ b/Marlin/src/lcd/tft_io/tft_io.h @@ -64,7 +64,7 @@ class TFT_IO { inline static void dataTransferEnd() { io.dataTransferEnd(); } inline static void writeData(uint16_t data) { io.writeData(data); } - inline static void writeReg(uint16_t reg) { io.writeReg(reg); } + inline static void writeReg(const uint16_t inReg) { io.writeReg(inReg); } // Blocking IO used by TFT_CLASSIC_UI and TFT_LVGL_UI // These functions start data transfer and WAIT for data transfer completion From a256e47b9c282bd69cd9d1d69970d41e9676e3dc Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 24 Jun 2023 12:07:28 +0000 Subject: [PATCH 318/427] [cron] Bump distribution date (2023-06-24) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index c48243e8b968..8509895ca89f 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-23" +//#define STRING_DISTRIBUTION_DATE "2023-06-24" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index f86372c1037e..fc6cab153b6b 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-23" + #define STRING_DISTRIBUTION_DATE "2023-06-24" #endif /** From f281fb473d499d8805fb29d7dd13ec9ef6b10c41 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 25 Jun 2023 01:31:07 -0500 Subject: [PATCH 319/427] =?UTF-8?q?=F0=9F=8E=A8=20Minor=20code=20cleanup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cocoa_press/files_screen.cpp | 2 +- .../cocoa_press/load_chocolate.cpp | 37 ++++++------------- .../cocoa_press/status_screen.cpp | 16 ++++---- .../lcd/extui/ia_creality/ia_creality_rts.cpp | 6 +-- Marlin/src/module/stepper/trinamic.h | 6 +-- 5 files changed, 27 insertions(+), 40 deletions(-) diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/files_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/files_screen.cpp index 581c3374288b..f058b40e035d 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/files_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/files_screen.cpp @@ -77,7 +77,7 @@ const char *FilesScreen::getSelectedFilename(bool shortName) { } void FilesScreen::drawSelectedFile() { - if(mydata.selected_tag == 0xFF) return; + if (mydata.selected_tag == 0xFF) return; FileList files; files.seek(getSelectedFileIndex(), true); mydata.flags.is_dir = files.isDir(); diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/load_chocolate.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/load_chocolate.cpp index 95ddf7d387f7..c7870eeaf8c4 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/load_chocolate.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/load_chocolate.cpp @@ -54,11 +54,10 @@ void LoadChocolateScreen::draw_buttons(draw_mode_t what) { cmd.tag(3).colors(mydata.repeat_tag == 6 ? action_btn : normal_btn).button(x, y, h, v, GET_TEXT_F(MSG_LOAD)); ui.bounds(POLY(load_screen_start_stop_btn), x, y, h, v); - if(mydata.repeat_tag == 0) { - cmd.colors(normal_btn).enabled(false); - } else { - cmd.colors(mydata.repeating ? action_btn : normal_btn).enabled(true); - } + if (mydata.repeat_tag == 0) + cmd.colors(normal_btn).enabled(false); + else + cmd.colors(mydata.repeating ? action_btn : normal_btn).enabled(true); cmd.tag(4).button(x, y, h, v, GET_TEXT_F(MSG_START_STOP)); ui.bounds(POLY(load_screen_back_btn), x, y, h, v); @@ -115,24 +114,16 @@ void LoadChocolateScreen::onRedraw(draw_mode_t what) { } bool LoadChocolateScreen::onTouchStart(uint8_t tag) { - if(tag != 4) { - mydata.repeating = false; - } + if (tag != 4) mydata.repeating = false; return true; } bool LoadChocolateScreen::onTouchEnd(uint8_t tag) { using namespace ExtUI; switch (tag) { - case 2: - mydata.repeat_tag = 5; - break; - case 3: - mydata.repeat_tag = 6; - break; - case 4: - mydata.repeating = !mydata.repeating; - break; + case 2: mydata.repeat_tag = 5; break; + case 3: mydata.repeat_tag = 6; break; + case 4: mydata.repeating = !mydata.repeating; break; case 1: GOTO_PREVIOUS(); break; } return true; @@ -153,12 +144,8 @@ bool LoadChocolateScreen::onTouchHeld(uint8_t tag) { #define UI_INCREMENT_AXIS(axis) UI_INCREMENT(AxisPosition_mm, axis); #define UI_DECREMENT_AXIS(axis) UI_DECREMENT(AxisPosition_mm, axis); switch (tag) { - case 5: - UI_INCREMENT_AXIS(E0); - break; - case 6: - UI_DECREMENT_AXIS(E0); - break; + case 5: UI_INCREMENT_AXIS(E0); break; + case 6: UI_DECREMENT_AXIS(E0); break; default: return false; } #undef UI_DECREMENT_AXIS @@ -170,10 +157,10 @@ void LoadChocolateScreen::onIdle() { reset_menu_timeout(); if (mydata.repeating) onTouchHeld(mydata.repeat_tag); if (refresh_timer.elapsed(STATUS_UPDATE_INTERVAL)) { - if (!EventLoop::is_touch_held()) - onRefresh(); + if (!EventLoop::is_touch_held()) onRefresh(); refresh_timer.start(); } BaseScreen::onIdle(); } + #endif // COCOA_LOAD_CHOCOLATE_SCREEN diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/status_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/status_screen.cpp index eddf36723977..1312d022c350 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/status_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/status_screen.cpp @@ -271,22 +271,23 @@ void StatusScreen::draw_file(draw_mode_t what) { if (what & FOREGROUND) { cmd.cmd(COLOR_RGB(bg_text_enabled)); - if(!isMediaInserted()) + if (!isMediaInserted()) draw_text_with_ellipsis(cmd, TEXT_POS(x, y, w, h), F("No media present"), OPT_CENTERY, font_small); - else if(isFileSelected()) { + else if (isFileSelected()) { FileList list; draw_text_with_ellipsis(cmd, TEXT_POS(x, y, w, h), list.filename(), OPT_CENTERY, font_small); - } else + } + else draw_text_with_ellipsis(cmd, TEXT_POS(x, y, w, h), F("No file selected"), OPT_CENTERY, font_small); } } bool StatusScreen::isFileSelected() { - if(!isMediaInserted()) return false; + if (!isMediaInserted()) return false; FileList list; - if(list.isDir()) return false; + if (list.isDir()) return false; const char *filename = list.filename(); - if(filename[0] == '\0') return false; + if (filename[0] == '\0') return false; return true; } @@ -368,8 +369,7 @@ void StatusScreen::setStatusMessage(const char * const) { void StatusScreen::onIdle() { reset_menu_timeout(); if (refresh_timer.elapsed(STATUS_UPDATE_INTERVAL)) { - if (!EventLoop::is_touch_held()) - onRefresh(); + if (!EventLoop::is_touch_held()) onRefresh(); refresh_timer.start(); } } diff --git a/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp index a64fa2ef20b9..6246b9f00291 100644 --- a/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp +++ b/Marlin/src/lcd/extui/ia_creality/ia_creality_rts.cpp @@ -220,7 +220,7 @@ void RTS::onIdle() { break; case 3: - //if(isPositionKnown() && (getActualTemp_celsius(BED) >= (getTargetTemp_celsius(BED)-1))) { + //if (isPositionKnown() && (getActualTemp_celsius(BED) >= (getTargetTemp_celsius(BED)-1))) { rts.sendData(ExchangePageBase + 64, ExchangepageAddr); waitway = 7; //return; @@ -1559,7 +1559,7 @@ void RTS::handleData() { else if (recdat.data[0] == 2) { // Page Down if ((fileIndex + DISPLAY_FILES) < (filenavigator.maxFiles() + (filenavigator.folderdepth != 0))) { fileIndex = fileIndex + DISPLAY_FILES; - // if(filenavigator.folderdepth!=0 && fileIndex!=0) //Shift to acknowledge Return DIR button on first page + // if (filenavigator.folderdepth!=0 && fileIndex!=0) //Shift to acknowledge Return DIR button on first page // filenavigator.getFiles(fileIndex-1); // else filenavigator.getFiles(fileIndex); @@ -1569,7 +1569,7 @@ void RTS::handleData() { else if (recdat.data[0] == 3) { // Page Up if (fileIndex >= DISPLAY_FILES) { fileIndex = fileIndex - DISPLAY_FILES; - // if(filenavigator.folderdepth!=0 && fileIndex!=0) //Shift to acknowledge Return DIR button on first page + // if (filenavigator.folderdepth!=0 && fileIndex!=0) //Shift to acknowledge Return DIR button on first page // filenavigator.getFiles(filenavigator.currentindex-DISPLAY_FILES); // else filenavigator.getFiles(fileIndex); diff --git a/Marlin/src/module/stepper/trinamic.h b/Marlin/src/module/stepper/trinamic.h index d6de5cd00268..a9832945a5ab 100644 --- a/Marlin/src/module/stepper/trinamic.h +++ b/Marlin/src/module/stepper/trinamic.h @@ -294,7 +294,7 @@ void reset_trinamic_drivers(); #define U_ENABLE_READ() stepperU.isEnabled() #endif #if AXIS_HAS_DEDGE(U) - #define U_STEP_WRITE(STATE) do{ if(STATE) TOGGLE(U_STEP_PIN); }while(0) + #define U_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(U_STEP_PIN); }while(0) #endif #endif @@ -308,7 +308,7 @@ void reset_trinamic_drivers(); #define V_ENABLE_READ() stepperV.isEnabled() #endif #if AXIS_HAS_DEDGE(V) - #define V_STEP_WRITE(STATE) do{ if(STATE) TOGGLE(V_STEP_PIN); }while(0) + #define V_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(V_STEP_PIN); }while(0) #endif #endif @@ -322,7 +322,7 @@ void reset_trinamic_drivers(); #define W_ENABLE_READ() stepperW.isEnabled() #endif #if AXIS_HAS_DEDGE(W) - #define W_STEP_WRITE(STATE) do{ if(STATE) TOGGLE(W_STEP_PIN); }while(0) + #define W_STEP_WRITE(STATE) do{ if (STATE) TOGGLE(W_STEP_PIN); }while(0) #endif #endif From 0138aff890c458f78b68aa21753bcf5d6e5bf488 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sun, 25 Jun 2023 12:07:25 +0000 Subject: [PATCH 320/427] [cron] Bump distribution date (2023-06-25) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 8509895ca89f..31fee4e78873 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-24" +//#define STRING_DISTRIBUTION_DATE "2023-06-25" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index fc6cab153b6b..db14798c3ede 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-24" + #define STRING_DISTRIBUTION_DATE "2023-06-25" #endif /** From 402c4ef5d3de2b22efd73111222ee7d1f1f6b25f Mon Sep 17 00:00:00 2001 From: Katelyn Schiesser Date: Sun, 25 Jun 2023 15:32:56 -0700 Subject: [PATCH 321/427] =?UTF-8?q?=F0=9F=9A=B8=20M86-M87=20Hotend=20Idle?= =?UTF-8?q?=20Timeout=20(#25015)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/feature/hotend_idle.cpp | 29 ++++---- Marlin/src/feature/hotend_idle.h | 17 ++++- Marlin/src/gcode/gcode.cpp | 7 ++ Marlin/src/gcode/gcode.h | 7 ++ Marlin/src/gcode/temp/M86-M87.cpp | 79 ++++++++++++++++++++++ Marlin/src/lcd/language/language_de.h | 2 +- Marlin/src/lcd/language/language_en.h | 5 +- Marlin/src/lcd/language/language_it.h | 2 +- Marlin/src/lcd/language/language_sk.h | 2 +- Marlin/src/lcd/menu/menu_configuration.cpp | 26 +++++++ Marlin/src/lcd/menu/menu_main.cpp | 4 ++ Marlin/src/module/settings.cpp | 37 +++++++++- ini/features.ini | 2 +- 13 files changed, 199 insertions(+), 20 deletions(-) create mode 100644 Marlin/src/gcode/temp/M86-M87.cpp diff --git a/Marlin/src/feature/hotend_idle.cpp b/Marlin/src/feature/hotend_idle.cpp index 4b137f42da7b..f64fe7e3cf67 100644 --- a/Marlin/src/feature/hotend_idle.cpp +++ b/Marlin/src/feature/hotend_idle.cpp @@ -37,20 +37,25 @@ #include "../module/planner.h" #include "../lcd/marlinui.h" -extern HotendIdleProtection hotend_idle; +HotendIdleProtection hotend_idle; millis_t HotendIdleProtection::next_protect_ms = 0; +hotend_idle_settings_t HotendIdleProtection::cfg; // Initialized by settings.load() void HotendIdleProtection::check_hotends(const millis_t &ms) { + const bool busy = (TERN0(HAS_RESUME_CONTINUE, wait_for_user) || planner.has_blocks_queued()); bool do_prot = false; - HOTEND_LOOP() { - const bool busy = (TERN0(HAS_RESUME_CONTINUE, wait_for_user) || planner.has_blocks_queued()); - if (thermalManager.degHotend(e) >= (HOTEND_IDLE_MIN_TRIGGER) && !busy) { - do_prot = true; break; + if (!busy && cfg.timeout != 0) { + HOTEND_LOOP() { + if (thermalManager.degHotend(e) >= cfg.trigger) { + do_prot = true; break; + } } } - if (bool(next_protect_ms) != do_prot) - next_protect_ms = do_prot ? ms + hp_interval : 0; + if (!do_prot) + next_protect_ms = 0; // No hotends are hot so cancel timeout + else if (!next_protect_ms) // Timeout is possible? + next_protect_ms = ms + cfg.timeout * 1000; // Start timeout if not already set } void HotendIdleProtection::check_e_motion(const millis_t &ms) { @@ -58,7 +63,7 @@ void HotendIdleProtection::check_e_motion(const millis_t &ms) { if (old_e_position != current_position.e) { old_e_position = current_position.e; // Track filament motion if (next_protect_ms) // If some heater is on then... - next_protect_ms = ms + hp_interval; // ...delay the timeout till later + next_protect_ms = ms + cfg.timeout * 1000; // ...delay the timeout till later } } @@ -79,12 +84,12 @@ void HotendIdleProtection::timed_out() { SERIAL_ECHOLNPGM("Hotend Idle Timeout"); LCD_MESSAGE(MSG_HOTEND_IDLE_TIMEOUT); HOTEND_LOOP() { - if ((HOTEND_IDLE_NOZZLE_TARGET) < thermalManager.degTargetHotend(e)) - thermalManager.setTargetHotend(HOTEND_IDLE_NOZZLE_TARGET, e); + if (cfg.nozzle_target < thermalManager.degTargetHotend(e)) + thermalManager.setTargetHotend(cfg.nozzle_target, e); } #if HAS_HEATED_BED - if ((HOTEND_IDLE_BED_TARGET) < thermalManager.degTargetBed()) - thermalManager.setTargetBed(HOTEND_IDLE_BED_TARGET); + if (cfg.bed_target < thermalManager.degTargetBed()) + thermalManager.setTargetBed(cfg.bed_target); #endif } diff --git a/Marlin/src/feature/hotend_idle.h b/Marlin/src/feature/hotend_idle.h index 40f557d5ed4c..a4229153c966 100644 --- a/Marlin/src/feature/hotend_idle.h +++ b/Marlin/src/feature/hotend_idle.h @@ -21,13 +21,26 @@ */ #pragma once -#include "../core/millis_t.h" +#include "../inc/MarlinConfig.h" + +typedef struct { + int16_t timeout, trigger, nozzle_target; + #if HAS_HEATED_BED + int16_t bed_target; + #endif + void set_defaults() { + timeout = HOTEND_IDLE_TIMEOUT_SEC; + trigger = HOTEND_IDLE_MIN_TRIGGER; + nozzle_target = HOTEND_IDLE_NOZZLE_TARGET; + bed_target = HOTEND_IDLE_BED_TARGET; + } +} hotend_idle_settings_t; class HotendIdleProtection { public: static void check(); + static hotend_idle_settings_t cfg; private: - static constexpr millis_t hp_interval = SEC_TO_MS(HOTEND_IDLE_TIMEOUT_SEC); static millis_t next_protect_ms; static void check_hotends(const millis_t &ms); static void check_e_motion(const millis_t &ms); diff --git a/Marlin/src/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index cedcf97c514d..468a9ef65f73 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -658,8 +658,15 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 82: M82(); break; // M82: Set E axis normal mode (same as other axes) case 83: M83(); break; // M83: Set E axis relative mode #endif + case 18: case 84: M18_M84(); break; // M18/M84: Disable Steppers / Set Timeout case 85: M85(); break; // M85: Set inactivity stepper shutdown timeout + + #if ENABLED(HOTEND_IDLE_TIMEOUT) + case 86: M86(); break; // M86: Set Hotend Idle Timeout + case 87: M87(); break; // M87: Cancel Hotend Idle Timeout + #endif + case 92: M92(); break; // M92: Set the steps-per-unit for one or more axes case 114: M114(); break; // M114: Report current position case 115: M115(); break; // M115: Report capabilities diff --git a/Marlin/src/gcode/gcode.h b/Marlin/src/gcode/gcode.h index 4bd0ec2fec83..23f245faa17f 100644 --- a/Marlin/src/gcode/gcode.h +++ b/Marlin/src/gcode/gcode.h @@ -711,6 +711,13 @@ class GcodeSuite { #endif static void M85(); + + #if ENABLED(HOTEND_IDLE_TIMEOUT) + static void M86(); + static void M86_report(const bool forReplay=true); + static void M87(); + #endif + static void M92(); static void M92_report(const bool forReplay=true, const int8_t e=-1); diff --git a/Marlin/src/gcode/temp/M86-M87.cpp b/Marlin/src/gcode/temp/M86-M87.cpp new file mode 100644 index 000000000000..7fb446196123 --- /dev/null +++ b/Marlin/src/gcode/temp/M86-M87.cpp @@ -0,0 +1,79 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +/** + * gcode/temp/M86-M87.cpp + * + * Hotend Idle Timeout + */ + +#include "../../inc/MarlinConfigPre.h" + +#if ENABLED(HOTEND_IDLE_TIMEOUT) + +#include "../gcode.h" +#include "../../feature/hotend_idle.h" + +void GcodeSuite::M86_report(const bool forReplay/*=true*/) { + hotend_idle_settings_t &c = hotend_idle.cfg; + report_heading(forReplay, F("Hotend Idle Timeout")); + SERIAL_ECHOLNPGM(" M86" + #if HAS_HEATED_BED + " B", c.bed_target, + #endif + " E", c.nozzle_target, + " S", c.timeout, + " T", c.trigger + ); +} + +/** + * M86: Set / Report Hotend Idle Timeout + * + * Parameters + * S : Idle timeout. Set to 0 to disable. + * E : Extruder idle temperature to set on timeout + * B : Bed idle temperature to set on timeout + * T : Minimum extruder temperature to consider for timeout (> idle temperature) + */ +void GcodeSuite::M86() { + if (!parser.seen_any()) return M86_report(); + hotend_idle_settings_t &c = hotend_idle.cfg; + if (parser.seenval('S')) c.timeout = parser.value_ushort(); + if (parser.seenval('T')) c.trigger = parser.value_celsius(); + if (parser.seenval('E')) c.nozzle_target = parser.value_celsius(); + #if HAS_HEATED_BED + if (parser.seenval('B')) c.bed_target = parser.value_celsius(); + #endif + const celsius_t min_trigger = c.nozzle_target + TEMP_HYSTERESIS; + if (c.trigger <= min_trigger) + SERIAL_ECHOLNPGM("?Idle Timeout (T) trigger temperature should be over ", min_trigger, "C."); +} + +/** + * M86: Cancel Hotend Idle Timeout (by setting the timeout period to 0) + */ +void GcodeSuite::M87() { + hotend_idle.cfg.timeout = 0; +} + +#endif // HOTEND_IDLE_TIMEOUT diff --git a/Marlin/src/lcd/language/language_de.h b/Marlin/src/lcd/language/language_de.h index c78942bff68e..33abdbee2351 100644 --- a/Marlin/src/lcd/language/language_de.h +++ b/Marlin/src/lcd/language/language_de.h @@ -343,7 +343,7 @@ namespace Language_de { LSTR MSG_PID_AUTOTUNE_FAILED = _UxGT("PID Autotune fehlge.!"); LSTR MSG_BAD_HEATER_ID = _UxGT("ungültiger Extruder."); LSTR MSG_TEMP_TOO_HIGH = _UxGT("Temperatur zu hoch."); - LSTR MSG_TIMEOUT = _UxGT("Timeout."); + LSTR MSG_TIMEOUT = _UxGT("Timeout"); LSTR MSG_PID_BAD_HEATER_ID = _UxGT("Autotune fehlge.! Ungültiger Extruder"); LSTR MSG_PID_TEMP_TOO_HIGH = _UxGT("Autotune fehlge.! Temperatur zu hoch."); LSTR MSG_PID_TIMEOUT = _UxGT("Autotune fehlge.! Timeout."); diff --git a/Marlin/src/lcd/language/language_en.h b/Marlin/src/lcd/language/language_en.h index c171338f19bb..c5288ec9c0bc 100644 --- a/Marlin/src/lcd/language/language_en.h +++ b/Marlin/src/lcd/language/language_en.h @@ -370,7 +370,7 @@ namespace Language_en { LSTR MSG_PID_AUTOTUNE_FAILED = _UxGT("Autotune failed!"); LSTR MSG_BAD_HEATER_ID = _UxGT("Bad extruder."); LSTR MSG_TEMP_TOO_HIGH = _UxGT("Temperature too high."); - LSTR MSG_TIMEOUT = _UxGT("Timeout."); + LSTR MSG_TIMEOUT = _UxGT("Timeout"); LSTR MSG_PID_BAD_HEATER_ID = _UxGT("Autotune failed! Bad extruder."); LSTR MSG_PID_TEMP_TOO_HIGH = _UxGT("Autotune failed! Temperature too high."); LSTR MSG_PID_TIMEOUT = _UxGT("Autotune failed! Timeout."); @@ -680,6 +680,9 @@ namespace Language_en { LSTR MSG_INFO_RUNAWAY_OFF = _UxGT("Runaway Watch: OFF"); LSTR MSG_INFO_RUNAWAY_ON = _UxGT("Runaway Watch: ON"); LSTR MSG_HOTEND_IDLE_TIMEOUT = _UxGT("Hotend Idle Timeout"); + LSTR MSG_HOTEND_IDLE_DISABLE = _UxGT("Disable Timeout"); + LSTR MSG_HOTEND_IDLE_NOZZLE_TARGET = _UxGT("Nozzle Idle Temp"); + LSTR MSG_HOTEND_IDLE_BED_TARGET = _UxGT("Bed Idle Temp"); LSTR MSG_FAN_SPEED_FAULT = _UxGT("Fan speed fault"); LSTR MSG_CASE_LIGHT = _UxGT("Case Light"); diff --git a/Marlin/src/lcd/language/language_it.h b/Marlin/src/lcd/language/language_it.h index 054a71d6c069..cbdd308f9b6e 100644 --- a/Marlin/src/lcd/language/language_it.h +++ b/Marlin/src/lcd/language/language_it.h @@ -364,7 +364,7 @@ namespace Language_it { LSTR MSG_PID_AUTOTUNE_FAILED = _UxGT("Calibr.PID fallito!"); LSTR MSG_BAD_HEATER_ID = _UxGT("Estrusore invalido."); LSTR MSG_TEMP_TOO_HIGH = _UxGT("Temp.troppo alta."); - LSTR MSG_TIMEOUT = _UxGT("Tempo scaduto."); + LSTR MSG_TIMEOUT = _UxGT("Tempo scaduto"); LSTR MSG_PID_BAD_HEATER_ID = _UxGT("Calibrazione fallita! Estrusore errato."); LSTR MSG_PID_TEMP_TOO_HIGH = _UxGT("Calibrazione fallita! Temperatura troppo alta."); LSTR MSG_PID_TIMEOUT = _UxGT("Calibrazione fallita! Tempo scaduto."); diff --git a/Marlin/src/lcd/language/language_sk.h b/Marlin/src/lcd/language/language_sk.h index 5499a2494203..7dc1c5357e39 100644 --- a/Marlin/src/lcd/language/language_sk.h +++ b/Marlin/src/lcd/language/language_sk.h @@ -363,7 +363,7 @@ namespace Language_sk { LSTR MSG_PID_AUTOTUNE_FAILED = _UxGT("Kal. PID zlyhala!"); LSTR MSG_BAD_HEATER_ID = _UxGT("Zlý extrudér"); LSTR MSG_TEMP_TOO_HIGH = _UxGT("Príliš vysoká tepl."); - LSTR MSG_TIMEOUT = _UxGT("Čas vypršal."); + LSTR MSG_TIMEOUT = _UxGT("Čas vypršal"); LSTR MSG_PID_BAD_HEATER_ID = _UxGT("Auto-kal. zlyhala! Zlý extrúder."); LSTR MSG_PID_TEMP_TOO_HIGH = _UxGT("Auto-kal. zlyhala! Príliš vysoká tepl."); LSTR MSG_PID_TIMEOUT = _UxGT("Auto-kal. zlyhala! Čas vypršal."); diff --git a/Marlin/src/lcd/menu/menu_configuration.cpp b/Marlin/src/lcd/menu/menu_configuration.cpp index 32b6f15995a4..6318780abb98 100644 --- a/Marlin/src/lcd/menu/menu_configuration.cpp +++ b/Marlin/src/lcd/menu/menu_configuration.cpp @@ -59,6 +59,10 @@ #include "../../libs/buzzer.h" #endif +#if ENABLED(HOTEND_IDLE_TIMEOUT) + #include "../../feature/hotend_idle.h" +#endif + #if ANY(LCD_PROGRESS_BAR_TEST, LCD_ENDSTOP_TEST) #include "../lcdprint.h" #define HAS_DEBUG_MENU 1 @@ -277,6 +281,24 @@ void menu_advanced_settings(); } #endif +#if ENABLED(HOTEND_IDLE_TIMEOUT) + + void menu_hotend_idle() { + hotend_idle_settings_t &c = hotend_idle.cfg; + START_MENU(); + BACK_ITEM(MSG_BACK); + + if (c.timeout) GCODES_ITEM(MSG_HOTEND_IDLE_DISABLE, F("M87")); + EDIT_ITEM(int3, MSG_TIMEOUT, &c.timeout, 0, 999); + EDIT_ITEM(int3, MSG_TEMPERATURE, &c.trigger, 0, HEATER_0_MAXTEMP); + EDIT_ITEM(int3, MSG_HOTEND_IDLE_NOZZLE_TARGET, &c.nozzle_target, 0, HEATER_0_MAXTEMP); + EDIT_ITEM(int3, MSG_HOTEND_IDLE_BED_TARGET, &c.bed_target, 0, BED_MAXTEMP); + + END_MENU(); + } + +#endif + #if ENABLED(DUAL_X_CARRIAGE) void menu_idex() { @@ -610,6 +632,10 @@ void menu_configuration() { #endif } + #if ENABLED(HOTEND_IDLE_TIMEOUT) + SUBMENU(MSG_HOTEND_IDLE_TIMEOUT, menu_hotend_idle); + #endif + // // Set single nozzle filament retract and prime length // diff --git a/Marlin/src/lcd/menu/menu_main.cpp b/Marlin/src/lcd/menu/menu_main.cpp index 4ccdb60bf14c..5ad5d18c0e63 100644 --- a/Marlin/src/lcd/menu/menu_main.cpp +++ b/Marlin/src/lcd/menu/menu_main.cpp @@ -100,6 +100,10 @@ void menu_configuration(); void menu_preheat_only(); #endif +#if ENABLED(HOTEND_IDLE_TIMEOUT) + void menu_hotend_idle(); +#endif + #if HAS_MULTI_LANGUAGE void menu_language(); #endif diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index 16e0d10a09dd..fa434c1499cd 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -178,6 +178,10 @@ #include "../lcd/extui/dgus/DGUSDisplayDef.h" #endif +#if ENABLED(HOTEND_IDLE_TIMEOUT) + #include "../feature/hotend_idle.h" +#endif + #pragma pack(push, 1) // No padding between variables #if HAS_ETHERNET @@ -623,6 +627,13 @@ typedef struct SettingsDataStruct { shaping_y_zeta; // M593 Y D #endif + // + // HOTEND_IDLE_TIMEOUT + // + #if ENABLED(HOTEND_IDLE_TIMEOUT) + hotend_idle_settings_t hotend_idle_config; // M86 S T E B + #endif + } SettingsData; //static_assert(sizeof(SettingsData) <= MARLIN_EEPROM_SIZE, "EEPROM too small to contain SettingsData!"); @@ -1702,7 +1713,7 @@ void MarlinSettings::postprocess() { // // Input Shaping - /// + // #if HAS_ZV_SHAPING #if ENABLED(INPUT_SHAPING_X) EEPROM_WRITE(stepper.get_shaping_frequency(X_AXIS)); @@ -1714,6 +1725,13 @@ void MarlinSettings::postprocess() { #endif #endif + // + // HOTEND_IDLE_TIMEOUT + // + #if ENABLED(HOTEND_IDLE_TIMEOUT) + EEPROM_WRITE(hotend_idle.cfg); + #endif + // // Report final CRC and Data Size // @@ -2781,6 +2799,13 @@ void MarlinSettings::postprocess() { } #endif + // + // HOTEND_IDLE_TIMEOUT + // + #if ENABLED(HOTEND_IDLE_TIMEOUT) + EEPROM_READ(hotend_idle.cfg); + #endif + // // Validate Final Size and CRC // @@ -3590,6 +3615,11 @@ void MarlinSettings::reset() { #endif #endif + // + // Hotend Idle Timeout + // + TERN_(HOTEND_IDLE_TIMEOUT, hotend_idle.cfg.set_defaults()); + postprocess(); #if ANY(EEPROM_CHITCHAT, DEBUG_LEVELING_FEATURE) @@ -3845,6 +3875,11 @@ void MarlinSettings::reset() { // TERN_(HAS_ZV_SHAPING, gcode.M593_report(forReplay)); + // + // Hotend Idle Timeout + // + TERN_(HOTEND_IDLE_TIMEOUT, gcode.M86_report(forReplay)); + // // Linear Advance // diff --git a/ini/features.ini b/ini/features.ini index 86e7d2e396bd..63da77cf76c5 100644 --- a/ini/features.ini +++ b/ini/features.ini @@ -140,7 +140,7 @@ HAS_FANMUX = build_src_filter=+ + FWRETRACT = build_src_filter=+ + HOST_ACTION_COMMANDS = build_src_filter=+ -HOTEND_IDLE_TIMEOUT = build_src_filter=+ +HOTEND_IDLE_TIMEOUT = build_src_filter=+ + JOYSTICK = build_src_filter=+ BLINKM = build_src_filter=+ HAS_COLOR_LEDS = build_src_filter=+ + From 4a734e4de436d9f497ef432744902c12bab9a257 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 26 Jun 2023 00:26:36 +0000 Subject: [PATCH 322/427] [cron] Bump distribution date (2023-06-26) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 31fee4e78873..20f8f19e86a9 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-25" +//#define STRING_DISTRIBUTION_DATE "2023-06-26" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index db14798c3ede..245589c3ec02 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-25" + #define STRING_DISTRIBUTION_DATE "2023-06-26" #endif /** From 574dd34c49fde76e1e736b8a7e1ea579d724ff22 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 27 Jun 2023 13:19:36 -0500 Subject: [PATCH 323/427] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20String=20helper=20?= =?UTF-8?q?class=20(#24390)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/MarlinCore.cpp | 2 +- Marlin/src/core/mstring.h | 305 ++++++++++++++++++ Marlin/src/core/serial.h | 49 +++ Marlin/src/feature/cancel_object.cpp | 2 +- Marlin/src/feature/powerloss.cpp | 122 +++---- Marlin/src/feature/runout.cpp | 8 +- Marlin/src/feature/tmc_util.cpp | 45 ++- Marlin/src/gcode/calibrate/G33.cpp | 31 +- Marlin/src/gcode/calibrate/G34_M422.cpp | 47 +-- Marlin/src/gcode/gcode.cpp | 5 +- Marlin/src/gcode/lcd/M0_M1.cpp | 2 +- Marlin/src/gcode/lcd/M117.cpp | 2 +- Marlin/src/gcode/probe/G30.cpp | 16 +- Marlin/src/inc/Conditionals_LCD.h | 2 +- Marlin/src/inc/MarlinConfig.h | 1 + Marlin/src/lcd/HD44780/marlinui_HD44780.cpp | 4 +- Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp | 4 +- Marlin/src/lcd/dogm/status_screen_DOGM.cpp | 2 +- .../lcd/dogm/status_screen_lite_ST7920.cpp | 23 +- Marlin/src/lcd/e3v2/creality/dwin.cpp | 6 +- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 195 ++++++----- Marlin/src/lcd/e3v2/marlinui/ui_common.cpp | 15 +- Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp | 52 ++- Marlin/src/lcd/e3v2/proui/dwin.cpp | 108 +++---- Marlin/src/lcd/e3v2/proui/gcode_preview.cpp | 22 +- Marlin/src/lcd/e3v2/proui/printstats.cpp | 16 +- Marlin/src/lcd/marlinui.cpp | 176 +++++----- Marlin/src/lcd/marlinui.h | 120 ++++++- Marlin/src/lcd/menu/menu_bed_leveling.cpp | 6 +- Marlin/src/lcd/menu/menu_configuration.cpp | 5 +- Marlin/src/lcd/menu/menu_x_twist.cpp | 6 +- Marlin/src/module/motion.cpp | 31 +- Marlin/src/module/probe.cpp | 2 +- Marlin/src/module/settings.cpp | 4 +- Marlin/src/module/temperature.cpp | 71 ++-- Marlin/src/tests/marlin_tests.cpp | 34 ++ 36 files changed, 949 insertions(+), 592 deletions(-) create mode 100644 Marlin/src/core/mstring.h diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index e183a0435989..260464185f40 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -1139,7 +1139,7 @@ void setup() { #if ENABLED(MARLIN_DEV_MODE) auto log_current_ms = [&](PGM_P const msg) { SERIAL_ECHO_START(); - SERIAL_CHAR('['); SERIAL_ECHO(millis()); SERIAL_ECHOPGM("] "); + TSS('[', millis(), F("] ")).echo(); SERIAL_ECHOLNPGM_P(msg); }; #define SETUP_LOG(M) log_current_ms(PSTR(M)) diff --git a/Marlin/src/core/mstring.h b/Marlin/src/core/mstring.h new file mode 100644 index 000000000000..67591ba3aead --- /dev/null +++ b/Marlin/src/core/mstring.h @@ -0,0 +1,305 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2022 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +/** + * Lightweight string class template providing operators for all common tasks + * and conversion from F() and PSTR() strings into SRAM strings that reside + * on the stack or persistently, with overflow prevention. + * + * Examples: + * + * MString<50> mystr(F("Hello "), intvar, " World"); // "Hello 3 World" + * + * mystr.append(" (", p_float_t(123.4, 2), ')'); // "Hello 3 World (123.40)" + * + * mystr.clear(); + * + * mystr.append(spaces_t(10), repchr_t('-', 5)); // Repeats are sometimes cheaper than strings + * + * mystr.appendf(F(" ... %i/%i"), count, total); // Works like printf, requires F string + * + */ + +#include "types.h" +#include "utility.h" // AXIS_CHAR +#include "../lcd/utf8.h" + +#ifndef DEFAULT_MSTRING_SIZE + #define DEFAULT_MSTRING_SIZE 20 +#endif + +//#define UNSAFE_MSTRING // Don't initialize the string and don't terminate strncpy +//#define USE_SPRINTF // Use sprintf instead of snprintf +//#define DJB2_HASH // 32-bit hash with Djb2 algorithm +//#define MSTRING_DEBUG // Debug string operations to diagnose memory leaks +//#define FASTER_APPEND // Append without using an intermediate buffer + +// Declare externs for serial debug output +template extern void SERIAL_ECHO(T x); +template extern void SERIAL_ECHOLN(T x); +extern void SERIAL_ECHO(serial_char_t x); +extern void SERIAL_CHAR(char c); + +#define START_OF_UTF8_CHAR(C) (((C) & 0xC0u) != 0x80U) + +#if ENABLED(USE_SPRINTF) + #define SNPRINTF(A, S, V...) sprintf(A, V) + #define SNPRINTF_P(A, S, V...) sprintf_P(A, V) +#else + #define SNPRINTF(V...) snprintf(V) + #define SNPRINTF_P(V...) snprintf_P(V) +#endif + +/** + * @brief MString class template + * @details A class template providing convenient string operators, + * very similar to the Arduino String class, as it turns out. + * + * @tparam SIZE The pre-allocated storage for the string buffer + */ +template +class MString { +protected: + char str[SIZE+1]; +public: + MString() { safety(0); safety(SIZE); } + + template + MString(const T v) { set(v); safety(SIZE); } + + static_assert(SIZE > 0, "Bad SIZE for MString!"); + + void debug(FSTR_P const f) { + #if ENABLED(MSTRING_DEBUG) + SERIAL_ECHO(FTOP(f)); + SERIAL_CHAR(':'); + SERIAL_ECHO(uintptr_t(str)); + SERIAL_CHAR(' '); + SERIAL_ECHO(length()); + SERIAL_CHAR(' '); + SERIAL_ECHOLN(str); + #endif + } + + void safety(const int n) { if (SAFE && n <= SIZE) str[n] = '\0'; } + + // Chainable String Setters + MString& set() { str[0] = '\0'; debug(F("clear")); return *this; } + MString& set(char *s) { strncpy(str, s, SIZE); debug(F("string")); return *this; } + MString& set(const char *s) { return set(const_cast(s)); } + MString& set_P(PGM_P const s) { strncpy_P(str, s, SIZE); debug(F("pstring")); return *this; } + MString& set(FSTR_P const f) { return set_P(FTOP(f)); } + MString& set(const MString &s) { strncpy(str, s.str, SIZE); debug(F("MString")); return *this; } + MString& set(const bool &b) { return set(b ? F("true") : F("false")); } + MString& set(const char c) { str[0] = c; if (1 < SIZE) str[1] = '\0'; debug(F("char")); return *this; } + MString& set(const short &i) { SNPRINTF_P(str, SIZE, PSTR("%d"), i); debug(F("short")); return *this; } + MString& set(const int &i) { SNPRINTF_P(str, SIZE, PSTR("%d"), i); debug(F("int")); return *this; } + MString& set(const long &l) { SNPRINTF_P(str, SIZE, PSTR("%ld"), l); debug(F("long")); return *this; } + MString& set(const unsigned char &i) { SNPRINTF_P(str, SIZE, PSTR("%u"), i); debug(F("uchar")); return *this; } + MString& set(const unsigned short &i) { SNPRINTF_P(str, SIZE, PSTR("%u"), i); debug(F("ushort")); return *this; } + MString& set(const unsigned int &i) { SNPRINTF_P(str, SIZE, PSTR("%u"), i); debug(F("uint")); return *this; } + MString& set(const unsigned long &l) { SNPRINTF_P(str, SIZE, PSTR("%lu"), l); debug(F("ulong")); return *this; } + MString& set(const float &f) { return set(p_float_t(f, SERIAL_FLOAT_PRECISION)); } + MString& set(const p_float_t &pf) { return set(w_float_t(pf.value, 1, pf.prec)); } + MString& set(const w_float_t &wf) { char f1[20]; return set(dtostrf(wf.value, wf.width, wf.prec, f1)); } + MString& set(const serial_char_t &v) { return set(char(v.c)); } + MString& set(const xyz_pos_t &v) { set(); return append(v); } + MString& set(const xyze_pos_t &v) { set(); return append(v); } + + MString& setn(char *s, int len) { int c = _MIN(len, SIZE); strncpy(str, s, c); str[c] = '\0'; debug(F("string")); return *this; } + MString& setn(const char *s, int len) { return setn(const_cast(s), len); } + MString& setn_P(PGM_P const s, int len) { int c = _MIN(len, SIZE); strncpy_P(str, s, c); str[c] = '\0'; debug(F("pstring")); return *this; } + MString& setn(FSTR_P const f, int len) { return setn_P(FTOP(f), len); } + + // set(repchr_t('-', 10)) + MString& set(const repchr_t &s) { int c = _MIN(s.count, SIZE); memset(str, s.asc, c); str[c] = '\0'; debug(F("")); return *this; } + + // set(spaces_t(10)) + MString& set(const spaces_t &s) { repchr_t r(' ', s.count); return set(r); } + + // Set with format string and arguments, like printf + template + MString& setf_P(PGM_P const fmt, Args... more) { SNPRINTF_P(str, SIZE, fmt, more...); debug(F("setf_P")); return *this; } + + template + MString& setf(const char *fmt, Args... more) { SNPRINTF(str, SIZE, fmt, more...); debug(F("setf")); return *this; } + + template + MString& setf(FSTR_P const fmt, Args... more) { return setf_P(FTOP(fmt), more...); } + + // Chainable String appenders + MString& append() { debug(F("nil")); return *this; } // for macros that might emit no output + MString& append(char *s) { int sz = length(); if (sz < SIZE) strncpy(str + sz, s, SIZE - sz); debug(F("string")); return *this; } + MString& append(const char *s) { return append(const_cast(s)); } + MString& append_P(PGM_P const s) { int sz = length(); if (sz < SIZE) strncpy_P(str + sz, s, SIZE - sz); debug(F("pstring")); return *this; } + MString& append(FSTR_P const f) { return append_P(FTOP(f)); } + MString& append(const MString &s) { return append(s.str); } + MString& append(const bool &b) { return append(b ? F("true") : F("false")); } + MString& append(const char c) { int sz = length(); if (sz < SIZE) { str[sz] = c; if (sz < SIZE - 1) str[sz + 1] = '\0'; } return *this; } + #if ENABLED(FASTER_APPEND) + MString& append(const short &i) { int sz = length(); SNPRINTF(&str[sz], SIZE - sz, "%d", i); return *this; } + MString& append(const int &i) { int sz = length(); SNPRINTF(&str[sz], SIZE - sz, "%d", i); return *this; } + MString& append(const long &l) { int sz = length(); SNPRINTF(&str[sz], SIZE - sz, "%ld", l); return *this; } + MString& append(const unsigned char &i) { int sz = length(); SNPRINTF(&str[sz], SIZE - sz, "%u", i); return *this; } + MString& append(const unsigned short &i) { int sz = length(); SNPRINTF(&str[sz], SIZE - sz, "%u", i); return *this; } + MString& append(const unsigned int &i) { int sz = length(); SNPRINTF(&str[sz], SIZE - sz, "%u", i); return *this; } + MString& append(const unsigned long &l) { int sz = length(); SNPRINTF(&str[sz], SIZE - sz, "%lu", l); return *this; } + #else + MString& append(const short &i) { char buf[20]; sprintf(buf, "%d", i); return append(buf); } + MString& append(const int &i) { char buf[20]; sprintf(buf, "%d", i); return append(buf); } + MString& append(const long &l) { char buf[20]; sprintf(buf, "%ld", l); return append(buf); } + MString& append(const unsigned char &i) { char buf[20]; sprintf(buf, "%u", i); return append(buf); } + MString& append(const unsigned short &i) { char buf[20]; sprintf(buf, "%u", i); return append(buf); } + MString& append(const unsigned int &i) { char buf[20]; sprintf(buf, "%u", i); return append(buf); } + MString& append(const unsigned long &l) { char buf[20]; sprintf(buf, "%lu", l); return append(buf); } + #endif + MString& append(const float &f) { return append(p_float_t(f, SERIAL_FLOAT_PRECISION)); } + MString& append(const p_float_t &pf) { return append(w_float_t(pf.value, 1, pf.prec)); } + MString& append(const w_float_t &wf) { char f1[20]; return append(dtostrf(wf.value, wf.width, wf.prec, f1)); } + MString& append(const serial_char_t &v) { return append(char(v.c)); } + MString& append(const xyz_pos_t &v) { LOOP_NUM_AXES(i) { if (i) append(' '); append(AXIS_CHAR(i), v[i]); } debug(F("xyz")); return *this; } + MString& append(const xyze_pos_t &v) { LOOP_LOGICAL_AXES(i) { if (i) append(' '); append(AXIS_CHAR(i), v[i]); } debug(F("xyze")); return *this; } + + // Append only if the given space is available + MString& appendn(char *s, int len) { int sz = length(), c = _MIN(len, SIZE - sz); if (c > 0) { strncpy(str + sz, s, c); str[sz + c] = '\0'; } debug(F("string")); return *this; } + MString& appendn(const char *s, int len) { return appendn(const_cast(s), len); } + MString& appendn_P(PGM_P const s, int len) { int sz = length(), c = _MIN(len, SIZE - sz); if (c > 0) { strncpy_P(str + sz, s, c); str[sz + c] = '\0'; } debug(F("pstring")); return *this; } + MString& appendn(FSTR_P const f, int len) { return appendn_P(FTOP(f), len); } + + // append(repchr_t('-', 10)) + MString& append(const repchr_t &s) { + const int sz = length(), c = _MIN(s.count, SIZE - sz); + if (c > 0) { memset(str + sz, s.asc, c); safety(sz + c); } + debug(F("repchr")); + return *this; + } + + // append(spaces_t(10)) + MString& append(const spaces_t &s) { return append(repchr_t(' ', s.count)); } + + template + MString& appendf_P(PGM_P const fmt, Args... more) { + int sz = length(); + if (sz < SIZE) SNPRINTF_P(str + sz, SIZE - sz, fmt, more...); + debug(F("appendf_P")); + return *this; + } + + template + MString& appendf(const char *fmt, Args... more) { + const int sz = length(); + if (sz < SIZE) SNPRINTF(str + sz, SIZE - sz, fmt, more...); + debug(F("appendf")); + return *this; + } + + template + MString& appendf(FSTR_P const fmt, Args... more) { return appendf_P(FTOP(fmt), more...); } + + // Instantiate with a list of things + template + MString(T arg1, Args... more) { set(arg1); append(more...); } + + // Take a list of any number of arguments and append them to the string + template + MString& append(T arg1, Args... more) { return append(arg1).append(more...); } + + // Take a list of any number of arguments and set them in the string + template + MString& set(T arg1, Args... more) { return set(arg1).append(more...); } + + // Operator = as shorthand for set() + template + MString& operator=(const T &v) { return set(v); } + + // Operator += as shorthand for append() + template + MString& operator+=(const T &v) { return append(v); } + + // Operator + as shorthand for append-to-copy + template + MString operator+(const T &v) { return MString(str, v); } + + #ifndef __AVR__ + MString(const double d) { set(d); } + MString& set(const double &f) { return set(p_double_t(f, SERIAL_FLOAT_PRECISION)); } + MString& set(const p_double_t &pf) { return set(w_double_t(pf.value, 1, pf.prec)); } + MString& set(const w_double_t &wf) { char d1[20]; return set(dtostrf(wf.value, wf.width, wf.prec, d1)); } + MString& append(const double &f) { return append(p_double_t(f, SERIAL_FLOAT_PRECISION)); } + MString& append(const p_double_t &pf) { return append(w_double_t(pf.value, 1, pf.prec)); } + MString& append(const w_double_t &wf) { char d1[20]; return append(dtostrf(wf.value, wf.width, wf.prec, d1)); } + #endif + + // Get the character at a given index + char operator[](const int i) const { return str[i]; } + + // Cast to char* (explicit?) + operator char* () { return str; } + + // Use &mystring as shorthand for mystring.str + char* operator&() { return str; } + + // Return the buffer address (same as &) + char* buffer() { return str; } + + int length() const { return strlen(str); } + int glyphs() { return utf8_strlen(str); } + bool empty() { return !str[0]; } + + // Quick hash to detect change (e.g., to avoid expensive drawing) + typedef IF::type hash_t; + hash_t hash() const { + #if ENABLED(DJB2_HASH) + hash_t hval = 5381; + char c; + while ((c = *str++)) hval += (hval << 5) + c; // = hval * 33 + c + #else + const int sz = length(); + hash_t hval = hash_t(sz); + for (int i = 0; i < sz; i++) hval = ((hval << 1) | (hval >> 15)) ^ str[i]; // ROL, XOR + #endif + return hval; + } + + void copyto(char * const dst) const { strcpy(dst, str); } + void copyto(char * const dst, int len) const { strncpy(dst, str, len); } + + MString& clear() { return set(); } + MString& eol() { return append('\n'); } + MString& trunc(const int &i) { if (i <= SIZE) str[i] = '\0'; debug(F("trunc")); return *this; } + + // Truncate on a Unicode boundary + MString& utrunc(const int &n=SIZE) { + const int sz = length(); + if (sz && n <= sz) + for (int i = n; i >= 0; i--) if (START_OF_UTF8_CHAR(str[i])) { str[i] = '\0'; break; } + debug(F("utrunc")); + return *this; + } + +}; + +#ifndef TS_SIZE + #define TS_SIZE 63 +#endif +#define TS(V...) MString(V) diff --git a/Marlin/src/core/serial.h b/Marlin/src/core/serial.h index 09f453d3b5a8..1c2369698597 100644 --- a/Marlin/src/core/serial.h +++ b/Marlin/src/core/serial.h @@ -251,6 +251,55 @@ inline void print_pos(const xyze_pos_t &xyze, FSTR_P const prefix=nullptr, FSTR_ #define SERIAL_POS(SUFFIX,VAR) do { print_pos(VAR, F(" " STRINGIFY(VAR) "="), F(" : " SUFFIX "\n")); }while(0) #define SERIAL_XYZ(PREFIX,V...) do { print_pos(V, F(PREFIX)); }while(0) +/** + * Extended string that can echo itself to serial + */ +template +class SString : public MString { +public: + typedef MString super; + using super::str; + using super::debug; + + SString() : super() {} + + template + SString(T arg1, Args... more) : super(arg1, more...) {} + + SString& set() { super::set(); return *this; } + + template + SString& setf_P(PGM_P const fmt, Args... more) { snprintf_P(str, SIZE, fmt, more...); debug(F("setf_P")); return *this; } + + template + SString& setf(const char *fmt, Args... more) { snprintf(str, SIZE, fmt, more...); debug(F("setf")); return *this; } + + template + SString& setf(FSTR_P const fmt, Args... more) { return setf_P(FTOP(fmt), more...); } + + template + SString& set(const T &v) { super::set(v); return *this; } + + template + SString& append(const T &v) { super::append(v); return *this; } + + template + SString& set(T arg1, Args... more) { set(arg1).append(more...); return *this; } + + template + SString& append(T arg1, Args... more) { append(arg1).append(more...); return *this; } + + SString& clear() { set(); return *this; } + SString& eol() { append('\n'); return *this; } + SString& trunc(const int &i) { super::trunc(i); return *this; } + + // Extended with methods to print to serial + SString& echo() { SERIAL_ECHO(str); return *this; } + SString& echoln() { SERIAL_ECHOLN(str); return *this; } +}; + +#define TSS(V...) SString<>(V) + // // Commonly-used strings in serial output // diff --git a/Marlin/src/feature/cancel_object.cpp b/Marlin/src/feature/cancel_object.cpp index 9b658315ed8b..0040f6ed9df8 100644 --- a/Marlin/src/feature/cancel_object.cpp +++ b/Marlin/src/feature/cancel_object.cpp @@ -46,7 +46,7 @@ void CancelObject::set_active_object(const int8_t obj) { #if ALL(HAS_STATUS_MESSAGE, CANCEL_OBJECTS_REPORTING) if (active_object >= 0) - ui.status_printf(0, F(S_FMT " %i"), GET_TEXT(MSG_PRINTING_OBJECT), int(active_object)); + ui.set_status(MString<30>(GET_TEXT_F(MSG_PRINTING_OBJECT), ' ', active_object)); else ui.reset_status(); #endif diff --git a/Marlin/src/feature/powerloss.cpp b/Marlin/src/feature/powerloss.cpp index a8dfadc1f6c8..7c49aee2477e 100644 --- a/Marlin/src/feature/powerloss.cpp +++ b/Marlin/src/feature/powerloss.cpp @@ -84,11 +84,10 @@ PrintJobRecovery recovery; // Allow power-loss recovery to be aborted #define PLR_CAN_ABORT -#if ENABLED(PLR_CAN_ABORT) - #define PROCESS_SUBCOMMANDS_NOW(cmd) do { if (card.flag.abort_sd_printing) return; gcode.process_subcommands_now(cmd); }while(0) -#else - #define PROCESS_SUBCOMMANDS_NOW(cmd) gcode.process_subcommands_now(cmd) -#endif +#define PROCESS_SUBCOMMANDS_NOW(cmd) do{ \ + if (TERN0(PLR_CAN_ABORT, card.flag.abort_sd_printing)) return; \ + gcode.process_subcommands_now(cmd); \ + }while(0) /** * Clear the recovery info @@ -272,11 +271,8 @@ void PrintJobRecovery::save(const bool force/*=false*/, const float zraise/*=POW #if POWER_LOSS_ZRAISE // Raise the Z axis now - if (zraise) { - char cmd[20], str_1[16]; - sprintf_P(cmd, PSTR("G0Z%s"), dtostrf(zraise, 1, 3, str_1)); - gcode.process_subcommands_now(cmd); - } + if (zraise) + gcode.process_subcommands_now(TS(F("G0Z"), p_float_t(zraise, 3))); #else UNUSED(zraise); #endif @@ -360,9 +356,6 @@ void PrintJobRecovery::write() { * Resume the saved print job */ void PrintJobRecovery::resume() { - - char cmd[MAX_CMD_SIZE+16], str_1[16], str_2[16]; - const uint32_t resume_sdpos = info.sdpos; // Get here before the stepper ISR overwrites it // Apply the dry-run flag if enabled @@ -388,12 +381,9 @@ void PrintJobRecovery::resume() { #endif #if HAS_HEATED_BED + // Restore the bed temperature const celsius_t bt = info.target_temperature_bed; - if (bt) { - // Restore the bed temperature - sprintf_P(cmd, PSTR("M190S%i"), bt); - PROCESS_SUBCOMMANDS_NOW(cmd); - } + if (bt) PROCESS_SUBCOMMANDS_NOW(TS(F("M190S"), bt)); #endif // Heat hotend enough to soften material @@ -401,12 +391,8 @@ void PrintJobRecovery::resume() { HOTEND_LOOP() { const celsius_t et = _MAX(info.target_temperature[e], 180); if (et) { - #if HAS_MULTI_HOTEND - sprintf_P(cmd, PSTR("T%iS"), e); - PROCESS_SUBCOMMANDS_NOW(cmd); - #endif - sprintf_P(cmd, PSTR("M109S%i"), et); - PROCESS_SUBCOMMANDS_NOW(cmd); + TERN_(HAS_MULTI_HOTEND, PROCESS_SUBCOMMANDS_NOW(TS('T', e, 'S'))); + PROCESS_SUBCOMMANDS_NOW(TS(F("M109S"), et)); } } #endif @@ -427,11 +413,11 @@ void PrintJobRecovery::resume() { float z_now = z_raised; // If Z homing goes to max then just move back to the "raised" position - sprintf_P(cmd, PSTR( - "G28R0\n" // Home all axes (no raise) - "G1Z%sF1200" // Move Z down to (raised) height - ), dtostrf(z_now, 1, 3, str_1)); - PROCESS_SUBCOMMANDS_NOW(cmd); + PROCESS_SUBCOMMANDS_NOW(TS( + F( "G28R0\n" // Home all axes (no raise) + "G1F1200Z") // Move Z down to (raised) height + , p_float_t(z_now, 3) + )); #elif DISABLED(BELTPRINTER) @@ -443,15 +429,13 @@ void PrintJobRecovery::resume() { #if !HOMING_Z_DOWN // Set Z to the real position - sprintf_P(cmd, PSTR("G92.9Z%s"), dtostrf(z_now, 1, 3, str_1)); - PROCESS_SUBCOMMANDS_NOW(cmd); + PROCESS_SUBCOMMANDS_NOW(TS(F("G92.9Z"), p_float_t(z_now, 3))); #endif // Does Z need to be raised now? It should be raised before homing XY. if (z_raised > z_now) { z_now = z_raised; - sprintf_P(cmd, PSTR("G1Z%sF600"), dtostrf(z_now, 1, 3, str_1)); - PROCESS_SUBCOMMANDS_NOW(cmd); + PROCESS_SUBCOMMANDS_NOW(TS(F("G1F600Z"), p_float_t(z_now, 3))); } // Home XY with no Z raise @@ -462,8 +446,7 @@ void PrintJobRecovery::resume() { #if HOMING_Z_DOWN // Move to a safe XY position and home Z while avoiding the print. const xy_pos_t p = xy_pos_t(POWER_LOSS_ZHOME_POS) TERN_(HOMING_Z_WITH_PROBE, - probe.offset_xy); - sprintf_P(cmd, PSTR("G1X%sY%sF1000\nG28HZ"), dtostrf(p.x, 1, 3, str_1), dtostrf(p.y, 1, 3, str_2)); - PROCESS_SUBCOMMANDS_NOW(cmd); + PROCESS_SUBCOMMANDS_NOW(TS(F("G1F1000X"), p_float_t(p.x, 3), 'Y', p_float_t(p.y, 3), F("\nG28HZ"))); #endif // Mark all axes as having been homed (no effect on current_position) @@ -473,39 +456,30 @@ void PrintJobRecovery::resume() { // Restore Z fade and possibly re-enable bed leveling compensation. // Leveling may already be enabled due to the ENABLE_LEVELING_AFTER_G28 option. // TODO: Add a G28 parameter to leave leveling disabled. - sprintf_P(cmd, PSTR("M420S%cZ%s"), '0' + (char)info.flag.leveling, dtostrf(info.fade, 1, 1, str_1)); - PROCESS_SUBCOMMANDS_NOW(cmd); + PROCESS_SUBCOMMANDS_NOW(TS(F("M420S"), '0' + (char)info.flag.leveling, 'Z', p_float_t(info.fade, 1))); #if !HOMING_Z_DOWN // The physical Z was adjusted at power-off so undo the M420S1 correction to Z with G92.9. - sprintf_P(cmd, PSTR("G92.9Z%s"), dtostrf(z_now, 1, 1, str_1)); - PROCESS_SUBCOMMANDS_NOW(cmd); + PROCESS_SUBCOMMANDS_NOW(TS(F("G92.9Z"), p_float_t(z_now, 1))); #endif #endif #if ENABLED(POWER_LOSS_RECOVER_ZHOME) // Z was homed down to the bed, so move up to the raised height. z_now = z_raised; - sprintf_P(cmd, PSTR("G1Z%sF600"), dtostrf(z_now, 1, 3, str_1)); - PROCESS_SUBCOMMANDS_NOW(cmd); + PROCESS_SUBCOMMANDS_NOW(TS(F("G1F600Z"), p_float_t(z_now, 3))); #endif // Recover volumetric extrusion state #if DISABLED(NO_VOLUMETRICS) #if HAS_MULTI_EXTRUDER - EXTRUDER_LOOP() { - sprintf_P(cmd, PSTR("M200T%iD%s"), e, dtostrf(info.filament_size[e], 1, 3, str_1)); - PROCESS_SUBCOMMANDS_NOW(cmd); - } - if (!info.flag.volumetric_enabled) { - sprintf_P(cmd, PSTR("M200T%iD0"), info.active_extruder); - PROCESS_SUBCOMMANDS_NOW(cmd); - } + EXTRUDER_LOOP() + PROCESS_SUBCOMMANDS_NOW(TS(F("M200T"), e, F("D"), p_float_t(info.filament_size[e], 3))); + if (!info.flag.volumetric_enabled) + PROCESS_SUBCOMMANDS_NOW(TS(F("M200D0T"), info.active_extruder)); #else - if (info.flag.volumetric_enabled) { - sprintf_P(cmd, PSTR("M200D%s"), dtostrf(info.filament_size[0], 1, 3, str_1)); - PROCESS_SUBCOMMANDS_NOW(cmd); - } + if (info.flag.volumetric_enabled) + PROCESS_SUBCOMMANDS_NOW(TS(F("M200D"), p_float_t(info.filament_size[0], 3))); #endif #endif @@ -514,30 +488,22 @@ void PrintJobRecovery::resume() { HOTEND_LOOP() { const celsius_t et = info.target_temperature[e]; if (et) { - #if HAS_MULTI_HOTEND - sprintf_P(cmd, PSTR("T%iS"), e); - PROCESS_SUBCOMMANDS_NOW(cmd); - #endif - sprintf_P(cmd, PSTR("M109S%i"), et); - PROCESS_SUBCOMMANDS_NOW(cmd); + TERN_(HAS_MULTI_HOTEND, PROCESS_SUBCOMMANDS_NOW(TS('T', e, 'S'))); + PROCESS_SUBCOMMANDS_NOW(TS(F("M109S"), et)); } } #endif // Restore the previously active tool (with no_move) #if HAS_MULTI_EXTRUDER || HAS_MULTI_HOTEND - sprintf_P(cmd, PSTR("T%i S"), info.active_extruder); - PROCESS_SUBCOMMANDS_NOW(cmd); + PROCESS_SUBCOMMANDS_NOW(TS('T', info.active_extruder, 'S')); #endif // Restore print cooling fan speeds #if HAS_FAN FANS_LOOP(i) { const int f = info.fan_speed[i]; - if (f) { - sprintf_P(cmd, PSTR("M106P%iS%i"), i, f); - PROCESS_SUBCOMMANDS_NOW(cmd); - } + if (f) PROCESS_SUBCOMMANDS_NOW(TS(F("M106P"), i, 'S', f)); } #endif @@ -563,8 +529,7 @@ void PrintJobRecovery::resume() { // Additional purge on resume if configured #if POWER_LOSS_PURGE_LEN - sprintf_P(cmd, PSTR("G1F3000E%d"), (POWER_LOSS_PURGE_LEN) + (POWER_LOSS_RETRACT_LEN)); - PROCESS_SUBCOMMANDS_NOW(cmd); + PROCESS_SUBCOMMANDS_NOW(TS(F("G1F3000E"), (POWER_LOSS_PURGE_LEN) + (POWER_LOSS_RETRACT_LEN))); #endif #if ENABLED(NOZZLE_CLEAN_FEATURE) @@ -572,23 +537,18 @@ void PrintJobRecovery::resume() { #endif // Move back over to the saved XY - sprintf_P(cmd, PSTR("G1X%sY%sF3000"), - dtostrf(info.current_position.x, 1, 3, str_1), - dtostrf(info.current_position.y, 1, 3, str_2) - ); - PROCESS_SUBCOMMANDS_NOW(cmd); + PROCESS_SUBCOMMANDS_NOW(TS( + F("G1F3000X"), p_float_t(info.current_position.x, 3), 'Y', p_float_t(info.current_position.y, 3) + )); // Move back down to the saved Z for printing - sprintf_P(cmd, PSTR("G1Z%sF600"), dtostrf(z_print, 1, 3, str_1)); - PROCESS_SUBCOMMANDS_NOW(cmd); + PROCESS_SUBCOMMANDS_NOW(TS(F("G1F600Z"), p_float_t(z_print, 3))); // Restore the feedrate - sprintf_P(cmd, PSTR("G1F%d"), info.feedrate); - PROCESS_SUBCOMMANDS_NOW(cmd); + PROCESS_SUBCOMMANDS_NOW(TS(F("G1F"), info.feedrate)); // Restore E position with G92.9 - sprintf_P(cmd, PSTR("G92.9E%s"), dtostrf(info.current_position.e, 1, 3, str_1)); - PROCESS_SUBCOMMANDS_NOW(cmd); + PROCESS_SUBCOMMANDS_NOW(TS(F("G92.9E"), p_float_t(info.current_position.e, 3))); TERN_(GCODE_REPEAT_MARKERS, repeat = info.stored_repeat); TERN_(HAS_HOME_OFFSET, home_offset = info.home_offset); @@ -604,10 +564,8 @@ void PrintJobRecovery::resume() { enable(true); // Resume the SD file from the last position - sprintf_P(cmd, M23_STR, &info.sd_filename[0]); - PROCESS_SUBCOMMANDS_NOW(cmd); - sprintf_P(cmd, PSTR("M24S%ldT%ld"), resume_sdpos, info.print_job_elapsed); - PROCESS_SUBCOMMANDS_NOW(cmd); + PROCESS_SUBCOMMANDS_NOW(MString(F("M23 "), info.sd_filename)); + PROCESS_SUBCOMMANDS_NOW(TS(F("M24S"), resume_sdpos, 'T', info.print_job_elapsed)); } #if ENABLED(DEBUG_POWER_LOSS_RECOVERY) diff --git a/Marlin/src/feature/runout.cpp b/Marlin/src/feature/runout.cpp index 44ebd85b327f..a1d4d259b768 100644 --- a/Marlin/src/feature/runout.cpp +++ b/Marlin/src/feature/runout.cpp @@ -128,12 +128,12 @@ void event_filament_runout(const uint8_t extruder) { if (run_runout_script) { #if MULTI_FILAMENT_SENSOR - char script[strlen(FILAMENT_RUNOUT_SCRIPT) + 1]; - sprintf_P(script, PSTR(FILAMENT_RUNOUT_SCRIPT), tool); + MString script; + script.setf(F(FILAMENT_RUNOUT_SCRIPT), AS_CHAR(tool)); #if ENABLED(FILAMENT_RUNOUT_SENSOR_DEBUG) - SERIAL_ECHOLNPGM("Runout Command: ", script); + SERIAL_ECHOLNPGM("Runout Command: ", &script); #endif - queue.inject(script); + queue.inject(&script); #else #if ENABLED(FILAMENT_RUNOUT_SENSOR_DEBUG) SERIAL_ECHOPGM("Runout Command: "); diff --git a/Marlin/src/feature/tmc_util.cpp b/Marlin/src/feature/tmc_util.cpp index 556a60891457..bff6872e4da8 100644 --- a/Marlin/src/feature/tmc_util.cpp +++ b/Marlin/src/feature/tmc_util.cpp @@ -213,47 +213,46 @@ template void report_driver_otpw(TMC &st) { - char timestamp[14]; + MString<13> timestamp; duration_t elapsed = print_job_timer.duration(); const bool has_days = (elapsed.value > 60*60*24L); - (void)elapsed.toDigital(timestamp, has_days); - SERIAL_EOL(); - SERIAL_ECHO(timestamp); - SERIAL_ECHOPGM(": "); + (void)elapsed.toDigital(×tamp, has_days); + TSS('\n', timestamp, F(": ")).echo(); st.printLabel(); - SERIAL_ECHOLNPGM(" driver overtemperature warning! (", st.getMilliamps(), "mA)"); + SString<50>(F(" driver overtemperature warning! ("), st.getMilliamps(), F("mA)")).echoln(); } template void report_polled_driver_data(TMC &st, const TMC_driver_data &data) { const uint32_t pwm_scale = get_pwm_scale(st); st.printLabel(); - SERIAL_CHAR(':'); SERIAL_ECHO(pwm_scale); + SString<60> report(':', pwm_scale); #if ENABLED(TMC_DEBUG) #if HAS_TMCX1X0 || HAS_TMC220x - SERIAL_CHAR('/'); SERIAL_ECHO(data.cs_actual); + report.append('/', data.cs_actual); #endif #if HAS_STALLGUARD - SERIAL_CHAR('/'); + report += '/'; if (data.sg_result_reasonable) - SERIAL_ECHO(data.sg_result); + report += data.sg_result; else - SERIAL_CHAR('-'); + report += '-'; #endif #endif - SERIAL_CHAR('|'); - if (st.error_count) SERIAL_CHAR('E'); // Error - if (data.is_ot) SERIAL_CHAR('O'); // Over-temperature - if (data.is_otpw) SERIAL_CHAR('W'); // over-temperature pre-Warning + report += '|'; + if (st.error_count) report += 'E'; // Error + if (data.is_ot) report += 'O'; // Over-temperature + if (data.is_otpw) report += 'W'; // over-temperature pre-Warning #if ENABLED(TMC_DEBUG) - if (data.is_stall) SERIAL_CHAR('G'); // stallGuard - if (data.is_stealth) SERIAL_CHAR('T'); // stealthChop - if (data.is_standstill) SERIAL_CHAR('I'); // standstIll - #endif - if (st.flag_otpw) SERIAL_CHAR('F'); // otpw Flag - SERIAL_CHAR('|'); - if (st.otpw_count > 0) SERIAL_ECHO(st.otpw_count); - SERIAL_CHAR('\t'); + if (data.is_stall) report += 'G'; // stallGuard + if (data.is_stealth) report += 'T'; // stealthChop + if (data.is_standstill) report += 'I'; // standstIll + #endif + if (st.flag_otpw) report += 'F'; // otpw Flag + report += '|'; + if (st.otpw_count > 0) report += st.otpw_count; + report += '\t'; + report.echo(); } #if CURRENT_STEP_DOWN > 0 diff --git a/Marlin/src/gcode/calibrate/G33.cpp b/Marlin/src/gcode/calibrate/G33.cpp index ba6cccffab78..a3cb7f0b9d22 100644 --- a/Marlin/src/gcode/calibrate/G33.cpp +++ b/Marlin/src/gcode/calibrate/G33.cpp @@ -638,26 +638,26 @@ void GcodeSuite::G33() { SERIAL_ECHOPGM("std dev:", p_float_t(zero_std_dev_min, 3)); } SERIAL_EOL(); - char mess[21]; - strcpy_P(mess, PSTR("Calibration sd:")); + + MString<20> msg(F("Calibration sd:")); if (zero_std_dev_min < 1) - sprintf_P(&mess[15], PSTR("0.%03i"), (int)LROUND(zero_std_dev_min * 1000.0f)); + msg.appendf(F("0.%03i"), (int)LROUND(zero_std_dev_min * 1000.0f)); else - sprintf_P(&mess[15], PSTR("%03i.x"), (int)LROUND(zero_std_dev_min)); - ui.set_status(mess); + msg.appendf(F("%03i.x"), (int)LROUND(zero_std_dev_min)); + ui.set_status(msg); print_calibration_settings(_endstop_results, _angle_results); SERIAL_ECHOLNPGM("Save with M500 and/or copy to Configuration.h"); } else { // !end iterations - char mess[15]; + SString<14> msg; if (iterations < 31) - sprintf_P(mess, PSTR("Iteration : %02i"), (unsigned int)iterations); + msg.setf(F("Iteration : %02i"), (unsigned int)iterations); else - strcpy_P(mess, PSTR("No convergence")); - SERIAL_ECHO(mess); + msg.set(F("No convergence")); + msg.echo(); SERIAL_ECHO_SP(32); SERIAL_ECHOLNPGM("std dev:", p_float_t(zero_std_dev, 3)); - ui.set_status(mess); + ui.set_status(msg); if (verbose_level > 1) print_calibration_settings(_endstop_results, _angle_results); } @@ -667,15 +667,12 @@ void GcodeSuite::G33() { SERIAL_ECHO(enddryrun); SERIAL_ECHO_SP(35); SERIAL_ECHOLNPGM("std dev:", p_float_t(zero_std_dev, 3)); - - char mess[21]; - strcpy_P(mess, FTOP(enddryrun)); - strcpy_P(&mess[11], PSTR(" sd:")); + MString<30> msg(enddryrun, F(" sd:")); if (zero_std_dev < 1) - sprintf_P(&mess[15], PSTR("0.%03i"), (int)LROUND(zero_std_dev * 1000.0f)); + msg.appendf(F("0.%03i"), (int)LROUND(zero_std_dev * 1000.0f)); else - sprintf_P(&mess[15], PSTR("%03i.x"), (int)LROUND(zero_std_dev)); - ui.set_status(mess); + msg.appendf(F("%03i.x"), (int)LROUND(zero_std_dev)); + ui.set_status(msg); } ac_home(); } diff --git a/Marlin/src/gcode/calibrate/G34_M422.cpp b/Marlin/src/gcode/calibrate/G34_M422.cpp index 39f3d2d5dfdc..f76df4316cd6 100644 --- a/Marlin/src/gcode/calibrate/G34_M422.cpp +++ b/Marlin/src/gcode/calibrate/G34_M422.cpp @@ -277,42 +277,21 @@ void GcodeSuite::G34() { ); #endif - SERIAL_ECHOLNPGM("\n" - "Z2-Z1=", ABS(z_measured[1] - z_measured[0]) - #if TRIPLE_Z - , " Z3-Z2=", ABS(z_measured[2] - z_measured[1]) - , " Z3-Z1=", ABS(z_measured[2] - z_measured[0]) - #if QUAD_Z - , " Z4-Z3=", ABS(z_measured[3] - z_measured[2]) - , " Z4-Z2=", ABS(z_measured[3] - z_measured[1]) - , " Z4-Z1=", ABS(z_measured[3] - z_measured[0]) - #endif - #endif - ); + SERIAL_EOL(); - #if HAS_STATUS_MESSAGE - char fstr1[10]; - char msg[6 + (6 + 5) * NUM_Z_STEPPERS + 1] - #if TRIPLE_Z - , fstr2[10], fstr3[10] - #if QUAD_Z - , fstr4[10], fstr5[10], fstr6[10] - #endif - #endif - ; - sprintf_P(msg, - PSTR("1:2=%s" TERN_(TRIPLE_Z, " 3-2=%s 3-1=%s") TERN_(QUAD_Z, " 4-3=%s 4-2=%s 4-1=%s")), - dtostrf(ABS(z_measured[1] - z_measured[0]), 1, 3, fstr1) - OPTARG(TRIPLE_Z, - dtostrf(ABS(z_measured[2] - z_measured[1]), 1, 3, fstr2), - dtostrf(ABS(z_measured[2] - z_measured[0]), 1, 3, fstr3)) - OPTARG(QUAD_Z, - dtostrf(ABS(z_measured[3] - z_measured[2]), 1, 3, fstr4), - dtostrf(ABS(z_measured[3] - z_measured[1]), 1, 3, fstr5), - dtostrf(ABS(z_measured[3] - z_measured[0]), 1, 3, fstr6)) - ); - ui.set_status(msg); + SString<15 + TERN0(TRIPLE_Z, 30) + TERN0(QUAD_Z, 45)> msg(F("1:2="), p_float_t(ABS(z_measured[1] - z_measured[0]), 3)); + #if TRIPLE_Z + msg.append(F(" 3-2="), p_float_t(ABS(z_measured[2] - z_measured[1]), 3)) + .append(F(" 3-1="), p_float_t(ABS(z_measured[2] - z_measured[0]), 3)); #endif + #if QUAD_Z + msg.append(F(" 4-3="), p_float_t(ABS(z_measured[3] - z_measured[2]), 3)) + .append(F(" 4-2="), p_float_t(ABS(z_measured[3] - z_measured[1]), 3)) + .append(F(" 4-1="), p_float_t(ABS(z_measured[3] - z_measured[0]), 3)); + #endif + + msg.echoln(); + ui.set_status(msg); auto decreasing_accuracy = [](const_float_t v1, const_float_t v2) { if (v1 < v2 * 0.7f) { diff --git a/Marlin/src/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index 468a9ef65f73..16847eb1f1f7 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -1173,10 +1173,7 @@ void GcodeSuite::process_subcommands_now(FSTR_P fgcode) { for (;;) { PGM_P const delim = strchr_P(pgcode, '\n'); // Get address of next newline const size_t len = delim ? delim - pgcode : strlen_P(pgcode); // Get the command length - char cmd[len + 1]; // Allocate a stack buffer - strncpy_P(cmd, pgcode, len); // Copy the command to the stack - cmd[len] = '\0'; // End with a nul - parser.parse(cmd); // Parse the command + parser.parse(MString().setn_P(pgcode, len)); // Parse the command process_parsed_command(true); // Process it (no "ok") if (!delim) break; // Last command? pgcode = delim + 1; // Get the next command diff --git a/Marlin/src/gcode/lcd/M0_M1.cpp b/Marlin/src/gcode/lcd/M0_M1.cpp index 120a36a57828..4e4625e9483d 100644 --- a/Marlin/src/gcode/lcd/M0_M1.cpp +++ b/Marlin/src/gcode/lcd/M0_M1.cpp @@ -58,7 +58,7 @@ void GcodeSuite::M0_M1() { #if HAS_MARLINUI_MENU if (parser.string_arg) - ui.set_status(parser.string_arg, true); + ui.set_status_no_expire(parser.string_arg); else { LCD_MESSAGE(MSG_USERWAIT); #if ENABLED(LCD_PROGRESS_BAR) && PROGRESS_MSG_EXPIRE > 0 diff --git a/Marlin/src/gcode/lcd/M117.cpp b/Marlin/src/gcode/lcd/M117.cpp index 86023e12e3b4..57a26851fd07 100644 --- a/Marlin/src/gcode/lcd/M117.cpp +++ b/Marlin/src/gcode/lcd/M117.cpp @@ -33,7 +33,7 @@ void GcodeSuite::M117() { if (parser.string_arg && parser.string_arg[0]) - ui.set_status(parser.string_arg, true); + ui.set_status_no_expire(parser.string_arg); else ui.reset_status(); diff --git a/Marlin/src/gcode/probe/G30.cpp b/Marlin/src/gcode/probe/G30.cpp index c638e76c1a63..f8fe88d3397a 100644 --- a/Marlin/src/gcode/probe/G30.cpp +++ b/Marlin/src/gcode/probe/G30.cpp @@ -76,18 +76,18 @@ void GcodeSuite::G30() { const ProbePtRaise raise_after = parser.boolval('E', true) ? PROBE_PT_STOW : PROBE_PT_NONE; - TERN_(HAS_PTC, ptc.set_enabled(!parser.seen('C') || parser.value_bool())); + TERN_(HAS_PTC, ptc.set_enabled(parser.boolval('C', true))); const float measured_z = probe.probe_at_point(probepos, raise_after); TERN_(HAS_PTC, ptc.set_enabled(true)); if (!isnan(measured_z)) { - SERIAL_ECHOLNPGM("Bed X: ", probepos.asLogical().x, " Y: ", probepos.asLogical().y, " Z: ", measured_z); + const xy_pos_t lpos = probepos.asLogical(); + SString<30> msg( + F("Bed X:"), p_float_t(lpos.x, 1), + F( " Y:"), p_float_t(lpos.y, 1), + F( " Z:"), p_float_t(measured_z, 2) + ); + msg.echoln(); #if ANY(DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI) - char msg[31], str_1[6], str_2[6], str_3[6]; - sprintf_P(msg, PSTR("X:%s, Y:%s, Z:%s"), - dtostrf(probepos.x, 1, 1, str_1), - dtostrf(probepos.y, 1, 1, str_2), - dtostrf(measured_z, 1, 2, str_3) - ); ui.set_status(msg); #endif } diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index b33720b2a5f3..0ab42cb22f6c 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -542,7 +542,7 @@ #define HAS_UTF8_UTILS 1 #endif -#if HAS_DISPLAY || HAS_DWIN_E3V2 +#if ANY(HAS_DISPLAY, HAS_DWIN_E3V2) #define HAS_STATUS_MESSAGE 1 #endif diff --git a/Marlin/src/inc/MarlinConfig.h b/Marlin/src/inc/MarlinConfig.h index dda1480e02a9..d61a6b55e788 100644 --- a/Marlin/src/inc/MarlinConfig.h +++ b/Marlin/src/inc/MarlinConfig.h @@ -55,6 +55,7 @@ // Include all core headers #include "../core/language.h" #include "../core/utility.h" + #include "../core/mstring.h" #include "../core/serial.h" #endif diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp index 1aa53241ad99..c5b4df46f28c 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp @@ -731,7 +731,7 @@ void MarlinUI::draw_status_message(const bool blink) { static bool last_blink = false; // Get the UTF8 character count of the string - uint8_t slen = utf8_strlen(status_message); + uint8_t slen = status_message.glyphs(); // If the string fits into the LCD, just print it and do not scroll it if (slen <= LCD_WIDTH) { @@ -773,7 +773,7 @@ void MarlinUI::draw_status_message(const bool blink) { UNUSED(blink); // Get the UTF8 character count of the string - uint8_t slen = utf8_strlen(status_message); + uint8_t slen = status_message.glyphs(); // Just print the string to the LCD lcd_put_u8str_max(status_message, LCD_WIDTH); diff --git a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp index ee7154ae417c..02e5f05d92a1 100644 --- a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp +++ b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp @@ -419,7 +419,7 @@ void MarlinUI::draw_kill_screen() { if (!PanelDetected) return; lcd.clear_buffer(); lcd_moveto(0, 3); lcd.write(COLOR_ERROR); - lcd_moveto((LCD_WIDTH - utf8_strlen(status_message)) / 2 + 1, 3); + lcd_moveto((LCD_WIDTH - status_message.glyphs()) / 2 + 1, 3); lcd_put_u8str(status_message); center_text(GET_TEXT_F(MSG_HALTED), 5); center_text(GET_TEXT_F(MSG_PLEASE_RESET), 6); @@ -692,7 +692,7 @@ void MarlinUI::draw_status_message(const bool blink) { #endif // FILAMENT_LCD_DISPLAY && HAS_MEDIA // Get the UTF8 character count of the string - uint8_t slen = utf8_strlen(status_message); + uint8_t slen = status_message.glyphs(); #if ENABLED(STATUS_MESSAGE_SCROLLING) diff --git a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp index 12cee1fc80d4..5bce83849f83 100644 --- a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp +++ b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp @@ -915,7 +915,7 @@ void MarlinUI::draw_status_message(const bool blink) { // Get the UTF8 character count of the string uint8_t lcd_width = LCD_WIDTH, pixel_width = LCD_PIXEL_WIDTH, - slen = utf8_strlen(status_message); + slen = status_message.glyphs(); #if HAS_POWER_MONITOR if (power_monitor.display_enabled()) { diff --git a/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp b/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp index 8e709416288f..a6e942b7066e 100644 --- a/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp +++ b/Marlin/src/lcd/dogm/status_screen_lite_ST7920.cpp @@ -568,16 +568,14 @@ void ST7920_Lite_Status_Screen::draw_feedrate_percentage(const uint16_t percenta } void ST7920_Lite_Status_Screen::draw_status_message() { - const char *str = ui.status_message; - set_ddram_address(DDRAM_LINE_4); begin_data(); #if ENABLED(STATUS_MESSAGE_SCROLLING) - uint8_t slen = utf8_strlen(str); + uint8_t slen = ui.status_message.glyphs(); if (slen <= TEXT_MODE_LCD_WIDTH) { // String fits the LCD, so just print it - write_str(str); + write_str(ui.status_message); while (slen < TEXT_MODE_LCD_WIDTH) { write_byte(' '); ++slen; } } else { // String is larger than the available space in ST7920_Lite_Status_Screen:: @@ -595,7 +593,7 @@ void ST7920_Lite_Status_Screen::draw_status_message() { write_byte(' '); if (--chars) { // Draw a third space if there's room write_byte(' '); - if (--chars) write_str(str, chars); // Print a second copy of the message + if (--chars) write_str(ui.status_message, chars); // Print a second copy of the message } } } @@ -604,8 +602,8 @@ void ST7920_Lite_Status_Screen::draw_status_message() { #else - uint8_t slen = utf8_strlen(str); - write_str(str, TEXT_MODE_LCD_WIDTH); + uint8_t slen = ui.status_message.glyphs(); + write_str(ui.status_message, TEXT_MODE_LCD_WIDTH); for (; slen < TEXT_MODE_LCD_WIDTH; ++slen) write_byte(' '); #endif @@ -853,11 +851,10 @@ bool ST7920_Lite_Status_Screen::position_changed() { } bool ST7920_Lite_Status_Screen::status_changed() { - uint8_t checksum = 0; - for (const char *p = ui.status_message; *p; p++) checksum ^= *p; - static uint8_t last_checksum = 0; - bool changed = last_checksum != checksum; - if (changed) last_checksum = checksum; + static MString<>::hash_t last_hash = 0; + const MString<>::hash_t hash = ui.status_message.hash(); + const bool changed = last_hash != hash; + if (changed) last_hash = hash; return changed; } @@ -892,7 +889,7 @@ void ST7920_Lite_Status_Screen::update_status_or_position(bool forceUpdate) { if (forceUpdate || status_changed()) { TERN_(STATUS_MESSAGE_SCROLLING, ui.status_scroll_offset = 0); #if STATUS_EXPIRE_SECONDS - countdown = ui.status_message[0] ? STATUS_EXPIRE_SECONDS : 0; + countdown = !ui.status_message.empty() ? STATUS_EXPIRE_SECONDS : 0; #endif draw_status_message(); blink_changed(); // Clear changed flag diff --git a/Marlin/src/lcd/e3v2/creality/dwin.cpp b/Marlin/src/lcd/e3v2/creality/dwin.cpp index 303807aa21d6..7a28f1b77ef3 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin.cpp +++ b/Marlin/src/lcd/e3v2/creality/dwin.cpp @@ -1215,7 +1215,7 @@ void drawPrintProgressBar() { void drawPrintProgressElapsed() { constexpr uint16_t x = 45, y = 192; - duration_t elapsed = print_job_timer.duration(); // print timer + duration_t elapsed = print_job_timer.duration(); // Print timer dwinDrawIntValue(true, true, 1, font8x16, Color_White, Color_Bg_Black, 2, x, y, elapsed.value / 3600); dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, x + 8 * 2, y, F(":")); dwinDrawIntValue(true, true, 1, font8x16, Color_White, Color_Bg_Black, 2, x + 8 * 3, y, (elapsed.value % 3600) / 60); @@ -4104,7 +4104,7 @@ void eachMomentUpdate() { queue.inject(F("G1 F1200 X0 Y0")); } - if (card.isPrinting() && checkkey == PrintProcess) { // print process + if (card.isPrinting() && checkkey == PrintProcess) { // Print process const uint8_t card_pct = card.percentDone(); static uint8_t last_cardpercentValue = 101; if (last_cardpercentValue != card_pct) { // print percent @@ -4115,7 +4115,7 @@ void eachMomentUpdate() { } } - duration_t elapsed = print_job_timer.duration(); // print timer + duration_t elapsed = print_job_timer.duration(); // Print timer // Print time so far static uint16_t last_Printtime = 0; diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index b7b2629f9969..95a387c6cbfd 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -183,7 +183,6 @@ float valuemax; uint8_t valueunit; uint8_t valuetype; -char cmd[MAX_CMD_SIZE+16], str_1[16], str_2[16], str_3[16]; char statusmsg[64]; char filename[LONG_FILENAME_LENGTH]; bool printing = false; @@ -267,8 +266,9 @@ class TextScroller { uint8_t tilt_grid = 1; void manual_value_update(bool undefined=false) { - sprintf_P(cmd, PSTR("M421 I%i J%i Z%s %s"), mesh_x, mesh_y, dtostrf(current_position.z, 1, 3, str_1), undefined ? "N" : ""); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("M421I"), mesh_x, 'J', mesh_y, 'Z', p_float_t(current_position.z, 3), undefined ? "N" : "") + ); planner.synchronize(); } @@ -313,8 +313,9 @@ class TextScroller { #else void manual_value_update() { - sprintf_P(cmd, PSTR("G29 I%i J%i Z%s"), mesh_x, mesh_y, dtostrf(current_position.z, 1, 3, str_1)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G29I"), mesh_x, 'J', mesh_y, 'Z', p_float_t(current_position.z, 3)) + ); planner.synchronize(); } @@ -329,10 +330,8 @@ class TextScroller { } else { crealityDWIN.popupHandler(MoveWait); - sprintf_P(cmd, PSTR("G0 F300 Z%s"), dtostrf(Z_CLEARANCE_BETWEEN_PROBES, 1, 3, str_1)); - gcode.process_subcommands_now(cmd); - sprintf_P(cmd, PSTR("G42 F4000 I%i J%i"), mesh_x, mesh_y); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now(TS(F("G0F300Z"), p_float_t(current_position.z, 3))); + gcode.process_subcommands_now(TS(F("G42 F4000 I"), mesh_x, 'J', mesh_y)); planner.synchronize(); current_position.z = goto_mesh_value ? bedlevel.z_values[mesh_x][mesh_y] : Z_CLEARANCE_BETWEEN_PROBES; planner.buffer_line(current_position, homing_feedrate(Z_AXIS), active_extruder); @@ -377,7 +376,6 @@ class TextScroller { } // Draw value square grid - char buf[8]; GRID_LOOP(x, y) { const auto start_x_px = padding_x + x * cell_width_px; const auto end_x_px = start_x_px + cell_width_px - 1 - gridline_width; @@ -402,14 +400,15 @@ class TextScroller { dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + cell_width_px / 2 - 5, start_y_px + offset_y, F("X")); } else { // has value + MString<12> msg; if (GRID_MAX_POINTS_X < 10) - sprintf_P(buf, PSTR("%s"), dtostrf(abs(bedlevel.z_values[x][y]), 1, 2, str_1)); + msg.set(p_float_t(abs(bedlevel.z_values[x][y]), 2)); else - sprintf_P(buf, PSTR("%02i"), (uint16_t)(abs(bedlevel.z_values[x][y] - (int16_t)bedlevel.z_values[x][y]) * 100)); - offset_x = cell_width_px / 2 - 3 * (strlen(buf)) - 2; + msg.setf(F("%02i"), uint16_t(abs(bedlevel.z_values[x][y] - int16_t(bedlevel.z_values[x][y])) * 100)); + offset_x = cell_width_px / 2 - 3 * msg.length() - 2; if (!(GRID_MAX_POINTS_X < 10)) dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px - 2 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, F(".")); - dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + 1 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, buf); + dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + 1 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, msg); } safe_delay(10); LCD_SERIAL.flushTX(); @@ -418,21 +417,22 @@ class TextScroller { } void setMeshViewerStatus() { // TODO: draw gradient with values as a legend instead - float v_max = abs(get_max_value()), v_min = abs(get_min_value()), range = _MAX(v_min, v_max); - if (v_min > 3e+10F) v_min = 0.0000001; - if (v_max > 3e+10F) v_max = 0.0000001; - if (range > 3e+10F) range = 0.0000001; - char msg[46]; + float v1, v2, + v_min = abs(get_min_value()), + v_max = abs(get_max_value()); if (viewer_asymmetric_range) { - dtostrf(-v_min, 1, 3, str_1); - dtostrf( v_max, 1, 3, str_2); + if (v_min > 3e+10F) v_min = 0.0000001; + if (v_max > 3e+10F) v_max = 0.0000001; + v1 = -v_min; + v2 = v_max; } else { - dtostrf(-range, 1, 3, str_1); - dtostrf( range, 1, 3, str_2); + float range = _MAX(v_min, v_max); + if (range > 3e+10F) range = 0.0000001; + v1 = -range; + v2 = range; } - sprintf_P(msg, PSTR("Red %s..0..%s Green"), str_1, str_2); - crealityDWIN.updateStatus(msg); + crealityDWIN.updateStatus(TS(F("Red "), p_float_t(v1, 3) , F("..0.."), p_float_t(v2, 3), F(" Green"))); drawing_mesh = false; } @@ -1199,8 +1199,7 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool thermalManager.wait_for_hotend(0); } popupHandler(FilChange); - sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.temp_hotend[0].target)); } #endif } @@ -1445,15 +1444,17 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool popupHandler(MoveWait); if (use_probe) { #if HAS_BED_PROBE - sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(probe_x_min, 1, 3, str_1), dtostrf(probe_y_min, 1, 3, str_2)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G0F4000\nG0Z10\nG0X"), p_float_t(probe_x_min, 3), 'Y', p_float_t(probe_y_min, 3)) + ); planner.synchronize(); popupHandler(ManualProbing); #endif } else { - sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf(corner_pos, 1, 3, str_1), dtostrf(corner_pos, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G0F4000\nG0Z10\nG0X"), p_float_t(corner_pos, 3), 'Y', p_float_t(corner_pos, 3), F("\nG0F300Z"), p_float_t(mlev_z_pos, 3)) + ); planner.synchronize(); redrawMenu(); } @@ -1466,15 +1467,17 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool popupHandler(MoveWait); if (use_probe) { #if HAS_BED_PROBE - sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(probe_x_min, 1, 3, str_1), dtostrf(probe_y_max, 1, 3, str_2)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G0F4000\nG0Z10\nG0X"), p_float_t(probe_x_min, 3), 'Y', p_float_t(probe_y_max, 3)) + ); planner.synchronize(); popupHandler(ManualProbing); #endif } else { - sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf(corner_pos, 1, 3, str_1), dtostrf((Y_BED_SIZE + Y_MIN_POS) - corner_pos, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G0F4000\nG0Z10\nG0X"), p_float_t(corner_pos, 3), 'Y', p_float_t((Y_BED_SIZE + Y_MIN_POS) - corner_pos, 3), F("\nG0F300Z"), p_float_t(mlev_z_pos, 3)) + ); planner.synchronize(); redrawMenu(); } @@ -1487,15 +1490,17 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool popupHandler(MoveWait); if (use_probe) { #if HAS_BED_PROBE - sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(probe_x_max, 1, 3, str_1), dtostrf(probe_y_max, 1, 3, str_2)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G0F4000\nG0Z10\nG0X"), p_float_t(probe_x_max, 3), 'Y', p_float_t(probe_y_max, 3), F("\nG0F300Z"), p_float_t(mlev_z_pos, 3)) + ); planner.synchronize(); popupHandler(ManualProbing); #endif } else { - sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf((X_BED_SIZE + X_MIN_POS) - corner_pos, 1, 3, str_1), dtostrf((Y_BED_SIZE + Y_MIN_POS) - corner_pos, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G0F4000\nG0Z10\nG0X"), p_float_t((X_BED_SIZE + X_MIN_POS) - corner_pos, 3), 'Y', p_float_t((Y_BED_SIZE + Y_MIN_POS) - corner_pos, 3), F("\nG0F300Z"), p_float_t(mlev_z_pos, 3)) + ); planner.synchronize(); redrawMenu(); } @@ -1508,15 +1513,17 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool popupHandler(MoveWait); if (use_probe) { #if HAS_BED_PROBE - sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(probe_x_max, 1, 3, str_1), dtostrf(probe_y_min, 1, 3, str_2)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G0F4000\nG0Z10\nG0X"), p_float_t(probe_x_max, 3), 'Y', p_float_t(probe_y_min, 3)) + ); planner.synchronize(); popupHandler(ManualProbing); #endif } else { - sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf((X_BED_SIZE + X_MIN_POS) - corner_pos, 1, 3, str_1), dtostrf(corner_pos, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G0F4000\nG0Z10\nG0X"), p_float_t((X_BED_SIZE + X_MIN_POS) - corner_pos, 3), 'Y', p_float_t(corner_pos, 3), F("\nG0F300Z"), p_float_t(mlev_z_pos, 3)) + ); planner.synchronize(); redrawMenu(); } @@ -1529,15 +1536,17 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool popupHandler(MoveWait); if (use_probe) { #if HAS_BED_PROBE - sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(X_MAX_POS / 2.0f - probe.offset.x, 1, 3, str_1), dtostrf(Y_MAX_POS / 2.0f - probe.offset.y, 1, 3, str_2)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G0F4000\nG0Z10\nG0X"), p_float_t((X_MAX_POS) / 2.0f - probe.offset.x, 3), 'Y', p_float_t((Y_MAX_POS) / 2.0f - probe.offset.y, 3)) + ); planner.synchronize(); popupHandler(ManualProbing); #endif } else { - sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf((X_BED_SIZE + X_MIN_POS) / 2.0f, 1, 3, str_1), dtostrf((Y_BED_SIZE + Y_MIN_POS) / 2.0f, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G0F4000\nG0Z10\nG0X"), p_float_t((X_BED_SIZE + X_MIN_POS) - corner_pos, 3), 'Y', p_float_t((Y_BED_SIZE + Y_MIN_POS) / 2.0f, 3), F("\nG0F300Z"), p_float_t(mlev_z_pos, 3)) + ); planner.synchronize(); redrawMenu(); } @@ -1582,16 +1591,17 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool drawMenuItem(row, ICON_Homing, F("Home Z Axis")); else { popupHandler(Home); - gcode.process_subcommands_now(F("G28 Z")); + gcode.process_subcommands_now(F("G28Z")); popupHandler(MoveWait); #if ENABLED(Z_SAFE_HOMING) planner.synchronize(); - sprintf_P(cmd, PSTR("G0 F4000 X%s Y%s"), dtostrf(Z_SAFE_HOMING_X_POINT, 1, 3, str_1), dtostrf(Z_SAFE_HOMING_Y_POINT, 1, 3, str_2)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G0F4000X"), p_float_t(Z_SAFE_HOMING_X_POINT, 3), 'Y', p_float_t(Z_SAFE_HOMING_Y_POINT, 3)); + ); #else gcode.process_subcommands_now(F("G0 F4000 X117.5 Y117.5")); #endif - gcode.process_subcommands_now(F("G0 F300 Z0")); + gcode.process_subcommands_now(F("G0F300Z0")); planner.synchronize(); redrawMenu(); } @@ -1610,12 +1620,13 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool popupHandler(MoveWait); #if ENABLED(Z_SAFE_HOMING) planner.synchronize(); - sprintf_P(cmd, PSTR("G0 F4000 X%s Y%s"), dtostrf(Z_SAFE_HOMING_X_POINT, 1, 3, str_1), dtostrf(Z_SAFE_HOMING_Y_POINT, 1, 3, str_2)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G0F4000X"), p_float_t(Z_SAFE_HOMING_X_POINT, 3), 'Y', p_float_t(Z_SAFE_HOMING_Y_POINT, 3)); + ); #else gcode.process_subcommands_now(F("G0 F4000 X117.5 Y117.5")); #endif - gcode.process_subcommands_now(F("G0 F300 Z0")); + gcode.process_subcommands_now(F("G0F300Z0")); planner.synchronize(); redrawMenu(); } @@ -1780,8 +1791,7 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool thermalManager.wait_for_hotend(0); } popupHandler(FilChange); - sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now(TS(F("M600B1R"), thermalManager.temp_hotend[0].target)); } } break; @@ -2125,8 +2135,7 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool drawMenuItem(row, ICON_HotendTemp, F("Autotune")); else { popupHandler(PIDWait); - sprintf_P(cmd, PSTR("M303 E0 C%i S%i U1"), PID_cycles, PID_e_temp); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now(TS(F("M303E0C"), PID_cycles, 'S', PID_e_temp, 'U')); planner.synchronize(); redrawMenu(); } @@ -2192,8 +2201,7 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool drawMenuItem(row, ICON_HotendTemp, F("Autotune")); else { popupHandler(PIDWait); - sprintf_P(cmd, PSTR("M303 E-1 C%i S%i U1"), PID_cycles, PID_bed_temp); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now(TS(F("M303E-1C"), PID_cycles, 'S', PID_bed_temp, 'U')); planner.synchronize(); redrawMenu(); } @@ -2917,8 +2925,9 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool if (draw) drawMenuItem(row, ICON_StepY, F("M48 Probe Test")); else { - sprintf_P(cmd, PSTR("G28O\nM48 X%s Y%s P%i"), dtostrf((X_BED_SIZE + X_MIN_POS) / 2.0f, 1, 3, str_1), dtostrf((Y_BED_SIZE + Y_MIN_POS) / 2.0f, 1, 3, str_2), testcount); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G28O\nM48X" , p_float_t((X_BED_SIZE + X_MIN_POS) / 2.0f, 3), 'Y', p_float_t((Y_BED_SIZE + Y_MIN_POS) / 2.0f, 3), 'P', testcount)) + ); } break; case PROBE_TEST_COUNT: @@ -2970,9 +2979,7 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool #if AXIS_IS_TMC(Y) case TMC_STEPPER_CURRENT_Y: - static float stepper_current_y; - if (draw) { drawMenuItem(row, ICON_StepY, F("Stepper Y current")); stepper_current_y = stepperY.getMilliamps(); @@ -2986,9 +2993,7 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool #if AXIS_IS_TMC(Z) case TMC_STEPPER_CURRENT_Z: - static float stepper_current_z; - if (draw) { drawMenuItem(row, ICON_StepZ, F("Stepper Z current")); stepper_current_z = stepperZ.getMilliamps(); @@ -3002,17 +3007,14 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool #if AXIS_IS_TMC(E0) case TMC_STEPPER_CURRENT_E: - static float stepper_current_e; - if (draw) { drawMenuItem(row, ICON_StepE, F("Stepper E current")); stepper_current_e = stepperE0.getMilliamps(); drawFloat(stepper_current_e, row, false, 1); } - else { + else modifyValue(stepper_current_e, TMC_MIN_CURRENT, TMC_MAX_CURRENT, 1, []{ stepperE0.rms_current(stepper_current_e); }); - } break; #endif }; @@ -3036,18 +3038,21 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool drawMenuItem(row, ICON_Back, F("Back")); #if ENABLED(PRINTCOUNTER) - char row1[50], row2[50], buf[32]; + printStatistics ps = print_job_timer.getStats(); + drawMenuItem(INFO_PRINTCOUNT, ICON_HotendTemp, + TS(ps.totalPrints, F(" prints, "), ps.finishedPrints, F(" finished")), + TS(p_float_t(ps.filamentUsed / 1000, 2), F(" m filament used")), + false, true + ); - sprintf_P(row1, PSTR("%i prints, %i finished"), ps.totalPrints, ps.finishedPrints); - sprintf_P(row2, PSTR("%s m filament used"), dtostrf(ps.filamentUsed / 1000, 1, 2, str_1)); - drawMenuItem(INFO_PRINTCOUNT, ICON_HotendTemp, row1, row2, false, true); + char buf[32]; + drawMenuItem(INFO_PRINTTIME, ICON_PrintTime, + MString<50>(F("Printed: "), duration_t(print_job_timer.getStats().printTime).toString(buf)), + MString<50>(F("Longest: "), duration_t(print_job_timer.getStats().longestPrint).toString(buf)), + false, true + ); - duration_t(print_job_timer.getStats().printTime).toString(buf); - sprintf_P(row1, PSTR("Printed: %s"), buf); - duration_t(print_job_timer.getStats().longestPrint).toString(buf); - sprintf_P(row2, PSTR("Longest: %s"), buf); - drawMenuItem(INFO_PRINTTIME, ICON_PrintTime, row1, row2, false, true); #endif drawMenuItem(INFO_SIZE, ICON_PrintSize, F(MACHINE_SIZE), nullptr, false, true); @@ -3117,11 +3122,10 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool gcode.home_all_axes(true); popupHandler(Level); if (mesh_conf.tilt_grid > 1) { - sprintf_P(cmd, PSTR("G29 J%i"), mesh_conf.tilt_grid); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now(TS(F("G29J"), mesh_conf.tilt_grid)); } else - gcode.process_subcommands_now(F("G29 J")); + gcode.process_subcommands_now(F("G29J")); planner.synchronize(); redrawMenu(); } @@ -3140,8 +3144,8 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool #endif #if HAS_BED_PROBE popupHandler(Level); - gcode.process_subcommands_now(F("G29 P0\nG29 P1")); - gcode.process_subcommands_now(F("G29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nM420 S1")); + gcode.process_subcommands_now(F("G29P0\nG29P1")); + gcode.process_subcommands_now(F("G29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nM420S1")); planner.synchronize(); updateStatus("Probed all reachable points"); popupHandler(SaveLevel); @@ -3884,8 +3888,7 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool switch (last_menu) { case Prepare: popupHandler(FilChange); - sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.temp_hotend[0].target)); break; #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) case ChangeFilament: @@ -3904,8 +3907,7 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool break; case CHANGEFIL_CHANGE: popupHandler(FilChange); - sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.temp_hotend[0].target)); break; } break; @@ -4205,8 +4207,7 @@ void CrealityDWIN::valueControl() { sync_plan_position(); } else if (active_menu == Tune && selection == TUNE_ZOFFSET) { - sprintf_P(cmd, PSTR("M290 Z%s"), dtostrf((tempvalue / valueunit - zoffsetvalue), 1, 3, str_1)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now(TS(F("M290Z"), p_float_t((tempvalue / valueunit - zoffsetvalue), 3))); } if (TERN0(HAS_HOTEND, valuepointer == &thermalManager.temp_hotend[0].pid.Ki) || TERN0(HAS_HEATED_BED, valuepointer == &thermalManager.temp_bed.pid.Ki)) tempvalue = scalePID_i(tempvalue); @@ -4388,14 +4389,11 @@ void CrealityDWIN::printScreenControl() { card.startOrResumeFilePrinting(); TERN_(POWER_LOSS_RECOVERY, recovery.prepare()); #else - char cmd[20]; #if HAS_HEATED_BED - sprintf_P(cmd, PSTR("M140 S%i"), pausebed); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now(TS(F("M140 S"), pausebed)); #endif #if HAS_EXTRUDERS - sprintf_P(cmd, PSTR("M109 S%i"), pausetemp); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now(TS(F("M109 S"), pausetemp)); #endif TERN_(HAS_FAN, thermalManager.fan_speed[0] = pausefan); planner.synchronize(); @@ -4494,10 +4492,8 @@ void CrealityDWIN::popupControl() { #if HAS_BED_PROBE case ManualProbing: if (selection == 0) { - char buf[80]; const float dif = probe.probe_at_point(current_position.x, current_position.y, PROBE_PT_STOW, 0, false) - corner_avg; - sprintf_P(buf, dif > 0 ? PSTR("Corner is %smm high") : PSTR("Corner is %smm low"), dtostrf(abs(dif), 1, 3, str_1)); - updateStatus(buf); + updateStatus(TS(F("Corner is "), p_float_t(abs(dif), 3), "mm ", dif > 0 ? F("high") : F("low"))); } else { redrawMenu(true, true, false); @@ -4517,8 +4513,7 @@ void CrealityDWIN::popupControl() { thermalManager.wait_for_hotend(0); } popupHandler(FilChange); - sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now(TS(F("M600B1R"), thermalManager.temp_hotend[0].target)); } } else diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp index 817699fd8a97..3cf89e7b3e0f 100644 --- a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp @@ -159,7 +159,7 @@ void MarlinUI::draw_kill_screen() { dwinIconShow(ICON, ICON_Halted, (LCD_PIXEL_WIDTH - 96) / 2, 40); #endif - uint8_t slen = utf8_strlen(status_message); + uint8_t slen = status_message.glyphs(); lcd_moveto(cx - (slen / 2), cy - 1); lcd_put_u8str(status_message); @@ -185,13 +185,8 @@ void MarlinUI::draw_status_message(const bool blink) { constexpr uint8_t max_status_chars = (LCD_PIXEL_WIDTH) / (STAT_FONT_WIDTH); auto status_changed = []{ - static uint16_t old_hash = 0x0000; - uint16_t hash = 0x0000; - for (uint8_t i = 0; i < MAX_MESSAGE_LENGTH; i++) { - const char c = ui.status_message[i]; - if (!c) break; - hash = ((hash << 1) | (hash >> 15)) ^ c; - } + static MString<>::hash_t old_hash = 0x0000; + const MString<>::hash_t hash = ui.status_message.hash(); const bool hash_changed = hash != old_hash; old_hash = hash; return hash_changed || !did_first_redraw; @@ -201,7 +196,7 @@ void MarlinUI::draw_status_message(const bool blink) { static bool last_blink = false; // Get the UTF8 character count of the string - uint8_t slen = utf8_strlen(status_message); + uint8_t slen = status_message.glyphs(); // If the string fits into the LCD, just print it and do not scroll it if (slen <= max_status_chars) { @@ -247,7 +242,7 @@ void MarlinUI::draw_status_message(const bool blink) { if (status_changed()) { // Get the UTF8 character count of the string - uint8_t slen = utf8_strlen(status_message); + uint8_t slen = status_message.glyphs(); // Just print the string to the LCD lcd_put_u8str_max(status_message, max_status_chars); diff --git a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp index 435da10a2aee..d4e2262be17f 100644 --- a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp +++ b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp @@ -75,12 +75,13 @@ uint8_t BedLevelToolsClass::mesh_y = 0; uint8_t BedLevelToolsClass::tilt_grid = 1; bool drawing_mesh = false; -char cmd[MAX_CMD_SIZE+16], str_1[16], str_2[16], str_3[16]; #if ENABLED(AUTO_BED_LEVELING_UBL) void BedLevelToolsClass::manual_value_update(const uint8_t mesh_x, const uint8_t mesh_y, bool undefined/*=false*/) { - sprintf_P(cmd, PSTR("M421 I%i J%i Z%s %s"), mesh_x, mesh_y, dtostrf(current_position.z, 1, 3, str_1), undefined ? "N" : ""); + MString cmd; + cmd.set(F("M421 I"), mesh_x, 'J', mesh_y, 'Z', p_float_t(current_position.z, 3)); + if (undefined) cmd += F(" N"); gcode.process_subcommands_now(cmd); planner.synchronize(); } @@ -126,8 +127,9 @@ char cmd[MAX_CMD_SIZE+16], str_1[16], str_2[16], str_3[16]; #else void BedLevelToolsClass::manual_value_update(const uint8_t mesh_x, const uint8_t mesh_y) { - sprintf_P(cmd, PSTR("G29 I%i J%i Z%s"), mesh_x, mesh_y, dtostrf(current_position.z, 1, 3, str_1)); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now( + TS(F("G29 I"), mesh_x, 'J', mesh_y, 'Z', p_float_t(current_position.z, 3)) + ); planner.synchronize(); } @@ -144,10 +146,8 @@ void BedLevelToolsClass::manual_move(const uint8_t mesh_x, const uint8_t mesh_y, else { DWIN_Show_Popup(ICON_BLTouch, F("Moving to Point"), F("Please wait until done.")); HMI_SaveProcessID(NothingToDo); - sprintf_P(cmd, PSTR("G0 F300 Z%s"), dtostrf(Z_CLEARANCE_BETWEEN_PROBES, 1, 3, str_1)); - gcode.process_subcommands_now(cmd); - sprintf_P(cmd, PSTR("G42 F4000 I%i J%i"), mesh_x, mesh_y); - gcode.process_subcommands_now(cmd); + gcode.process_subcommands_now(TS(F("G0 F300 Z"), p_float_t(Z_CLEARANCE_BETWEEN_PROBES, 3))); + gcode.process_subcommands_now(TS(F("G42 F4000 I"), mesh_x, F(" J"), mesh_y)); planner.synchronize(); current_position.z = goto_mesh_value ? bedlevel.z_values[mesh_x][mesh_y] : Z_CLEARANCE_BETWEEN_PROBES; planner.buffer_line(current_position, homing_feedrate(Z_AXIS), active_extruder); @@ -170,13 +170,13 @@ void BedLevelToolsClass::MoveToZ() { bedLevelTools.manual_move(bedLevelTools.mesh_x, bedLevelTools.mesh_y, true); } void BedLevelToolsClass::ProbeXY() { - const uint16_t zclear = Z_CLEARANCE_DEPLOY_PROBE; - sprintf_P(cmd, PSTR("G0Z%i\nG30X%sY%s"), - zclear, - dtostrf(bedlevel.get_mesh_x(bedLevelTools.mesh_x), 1, 2, str_1), - dtostrf(bedlevel.get_mesh_y(bedLevelTools.mesh_y), 1, 2, str_2) + gcode.process_subcommands_now( + MString( + F("G28O\nG0Z"), uint16_t(Z_CLEARANCE_DEPLOY_PROBE), + F("\nG30X"), p_float_t(bedlevel.get_mesh_x(bedLevelTools.mesh_x), 2), + F("Y"), p_float_t(bedlevel.get_mesh_y(bedLevelTools.mesh_y), 2) + ) ); - gcode.process_subcommands_now(cmd); } void BedLevelToolsClass::mesh_reset() { @@ -277,20 +277,16 @@ bool BedLevelToolsClass::meshvalidate() { void BedLevelToolsClass::Set_Mesh_Viewer_Status() { // TODO: draw gradient with values as a legend instead float v_max = abs(get_max_value()), v_min = abs(get_min_value()), range = _MAX(v_min, v_max); - if (v_min > 3e+10F) v_min = 0.0000001; - if (v_max > 3e+10F) v_max = 0.0000001; - if (range > 3e+10F) range = 0.0000001; - char msg[46]; - if (viewer_asymmetric_range) { - dtostrf(-v_min, 1, 3, str_1); - dtostrf( v_max, 1, 3, str_2); - } - else { - dtostrf(-range, 1, 3, str_1); - dtostrf( range, 1, 3, str_2); - } - sprintf_P(msg, PSTR("Red %s..0..%s Green"), str_1, str_2); - ui.set_status(msg); + if (v_min > 3e+10f) v_min = 0.0000001; + if (v_max > 3e+10f) v_max = 0.0000001; + if (range > 3e+10f) range = 0.0000001; + ui.set_status( + &MString<45>( + F("Red "), p_float_t(viewer_asymmetric_range ? -v_min : -range, 3), + F("..0.."), p_float_t(viewer_asymmetric_range ? v_max : range, 3), + F(" Green") + ) + ); drawing_mesh = false; } diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index 624ea2338543..51a53741ef3c 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -480,7 +480,7 @@ void DWIN_DrawStatusLine(FSTR_P fstr) { DWIN_DrawStatusLine(FTOP(fstr)); } // Clear & reset status line void DWIN_ResetStatusLine() { - ui.status_message[0] = 0; + ui.status_message.clear(); DWIN_CheckStatusMessage(); } @@ -492,18 +492,19 @@ uint32_t GetHash(char * str) { return hash; } +// Check for a change in the status message void DWIN_CheckStatusMessage() { - static uint32_t old_hash = 0; - uint32_t hash = GetHash(&ui.status_message[0]); + static MString<>::hash_t old_hash = 0x0000; + const MString<>::hash_t hash = ui.status_message.hash(); hash_changed = hash != old_hash; old_hash = hash; -}; +} void DWIN_DrawStatusMessage() { #if ENABLED(STATUS_MESSAGE_SCROLLING) // Get the UTF8 character count of the string - uint8_t slen = utf8_strlen(ui.status_message); + uint8_t slen = ui.status_message.glyphs(); // If the string fits the status line do not scroll it if (slen <= LCD_WIDTH) { @@ -539,7 +540,7 @@ void DWIN_DrawStatusMessage() { #else if (hash_changed) { - ui.status_message[LCD_WIDTH] = 0; + ui.status_message.trunc(LCD_WIDTH); DWIN_DrawStatusLine(ui.status_message); hash_changed = false; } @@ -567,17 +568,16 @@ void Draw_Print_ProgressBar() { } void Draw_Print_ProgressElapsed() { - char buf[10]; + MString<12> buf; duration_t elapsed = print_job_timer.duration(); // Print timer - sprintf_P(buf, PSTR("%02i:%02i "), (uint16_t)(elapsed.value / 3600), ((uint16_t)elapsed.value % 3600) / 60); + buf.setf(F("%02i:%02i "), uint16_t(elapsed.value / 3600), (uint16_t(elapsed.value) % 3600) / 60); DWINUI::Draw_String(HMI_data.Text_Color, HMI_data.Background_Color, 47, 192, buf); } #if ENABLED(SHOW_REMAINING_TIME) void Draw_Print_ProgressRemain() { - const uint32_t _remain_time = ui.get_remaining_time(); - char buf[10]; - sprintf_P(buf, PSTR("%02i:%02i "), (uint16_t)(_remain_time / 3600), ((uint16_t)_remain_time % 3600) / 60); + MString<12> buf; + buf.setf(F("%02i:%02i "), _remain_time / 3600, (_remain_time % 3600) / 60); DWINUI::Draw_String(HMI_data.Text_Color, HMI_data.Background_Color, 181, 192, buf); } #endif @@ -1497,8 +1497,9 @@ void DWIN_LevelingDone() { #if HAS_MESH void DWIN_MeshUpdate(const int8_t cpos, const int8_t tpos, const_float_t zval) { - char str_1[6] = ""; - ui.status_printf(0, F(S_FMT " %i/%i Z=%s"), GET_TEXT_F(MSG_PROBING_POINT), cpos, tpos, dtostrf(zval, 1, 2, str_1)); + ui.set_status( + &MString<32>(GET_TEXT_F(MSG_PROBING_POINT), ' ', cpos, '/', tpos, F(" Z="), p_float_t(zval, 2)) + ); } #endif @@ -2051,30 +2052,25 @@ void AutoHome() { queue.inject_P(G28_STR); } SetPFloatOnClick(Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX, 2, ApplyZOffset, LiveZOffset); } -#endif // HAS_ZOFFSET_ITEM + void SetMoveZto0() { + #if ENABLED(Z_SAFE_HOMING) + gcode.process_subcommands_now(MString<54>(F("G28XYO\nG28Z\nG0F5000X"), Z_SAFE_HOMING_X_POINT, F("Y"), Z_SAFE_HOMING_Y_POINT, F("\nG0Z0F300\nM400"))); + #else + TERN_(HAS_LEVELING, set_bed_leveling_enabled(false)); + gcode.process_subcommands_now(F("G28Z\nG0Z0F300\nM400")); + #endif + ui.reset_status(); + DONE_BUZZ(true); + } -void SetMoveZto0() { - #if ENABLED(Z_SAFE_HOMING) - char cmd[54], str_1[5], str_2[5]; - sprintf_P(cmd, PSTR("G28XYO\nG28Z\nG0X%sY%sF5000\nG0Z0F300\nM400"), - dtostrf(Z_SAFE_HOMING_X_POINT, 1, 1, str_1), - dtostrf(Z_SAFE_HOMING_Y_POINT, 1, 1, str_2) - ); - gcode.process_subcommands_now(cmd); - #else - TERN_(HAS_LEVELING, set_bed_leveling_enabled(false)); - gcode.process_subcommands_now(F("G28Z\nG0Z0F300\nM400")); + #if !HAS_BED_PROBE + void HomeZandDisable() { + SetMoveZto0(); + DisableMotors(); + } #endif - ui.reset_status(); - DONE_BUZZ(true); -} -#if DISABLED(HAS_BED_PROBE) - void HomeZandDisable() { - SetMoveZto0(); - DisableMotors(); - } -#endif +#endif // HAS_ZOFFSET_ITEM #if HAS_PREHEAT #define _DoPreheat(N) void DoPreheat##N() { ui.preheat_all(N-1); }\ @@ -2322,20 +2318,16 @@ void SetFlow() { SetPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refr #if HAS_BED_PROBE float Tram(const uint8_t point) { - char cmd[100] = ""; static bool inLev = false; - float xpos = 0, ypos = 0, zval = 0; - char str_1[6] = "", str_2[6] = "", str_3[6] = ""; if (inLev) return NAN; + float xpos = 0, ypos = 0, zval = 0; TramXY(point, xpos, ypos); if (HMI_data.FullManualTramming) { - sprintf_P(cmd, PSTR("M420S0\nG28O\nG90\nG0Z5F300\nG0X%sY%sF5000\nG0Z0F300"), - dtostrf(xpos, 1, 1, str_1), - dtostrf(ypos, 1, 1, str_2) - ); - queue.inject(cmd); + queue.inject(MString<100>( + F("M420S0\nG28O\nG90\nG0F300Z5\nG0F5000X"), p_float_t(xpos, 1), 'Y', p_float_t(ypos, 1), F("\nG0F300Z0") + )); } else { // AUTO_BED_LEVELING_BILINEAR does not define MESH_INSET @@ -2360,14 +2352,8 @@ void SetFlow() { SetPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refr zval = probe.probe_at_point(xpos, ypos, PROBE_PT_STOW); if (isnan(zval)) LCD_MESSAGE(MSG_ZPROBE_OUT); - else { - sprintf_P(cmd, PSTR("X:%s, Y:%s, Z:%s"), - dtostrf(xpos, 1, 1, str_1), - dtostrf(ypos, 1, 1, str_2), - dtostrf(zval, 1, 2, str_3) - ); - ui.set_status(cmd); - } + else + ui.set_status(TS(F("X:"), p_float_t(xpos, 1), F(" Y:"), p_float_t(ypos, 1), F(" Z:"))); inLev = false; } return zval; @@ -2378,10 +2364,9 @@ void SetFlow() { SetPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refr void Tram(const uint8_t point) { float xpos = 0, ypos = 0; TramXY(point, xpos, ypos); - - char cmd[100] = "", str_1[6] = "", str_2[6] = ""; - sprintf_P(cmd, PSTR("M420S0\nG28O\nG90\nG0Z5F300\nG0X%sY%sF5000\nG0Z0F300"), dtostrf(xpos, 1, 1, str_1), dtostrf(ypos, 1, 1, str_2)); - queue.inject(cmd); + queue.inject(MString<100>( + F("M420S0\nG28O\nG90\nG0F300Z5\nG0F5000X"), p_float_t(xpos, 1), 'Y', p_float_t(ypos, 1), F("\nG0F300Z0") + )); } #endif @@ -3762,13 +3747,9 @@ void Draw_Steps_Menu() { #if DWIN_PID_TUNE void SetPID(celsius_t t, heater_id_t h) { - char cmd[53] = ""; - char str_1[5] = "", str_2[5] = ""; - sprintf_P(cmd, PSTR("G28OXY\nG0Z5F300\nG0X%sY%sF5000\nM84\nM400"), - dtostrf(X_CENTER, 1, 1, str_1), - dtostrf(Y_CENTER, 1, 1, str_2) + gcode.process_subcommands_now( + MString<60>(F("G28OXY\nG0Z5F300\nG0X"), X_CENTER, F("Y"), Y_CENTER, F("F5000\nM84\nM400")) ); - gcode.process_subcommands_now(cmd); thermalManager.PID_autotune(t, h, HMI_data.PidCycles, true); } void SetPidCycles() { SetPIntOnClick(3, 50); } @@ -3968,11 +3949,8 @@ void Draw_Steps_Menu() { void UBLMeshTilt() { NOLESS(bedlevel.storage_slot, 0); - char buf[9]; - if (bedLevelTools.tilt_grid > 1) { - sprintf_P(buf, PSTR("G29J%i"), bedLevelTools.tilt_grid); - gcode.process_subcommands_now(buf); - } + if (bedLevelTools.tilt_grid > 1) + gcode.process_subcommands_now(TS(F("G29J"), bedLevelTools.tilt_grid)); else gcode.process_subcommands_now(F("G29J")); LCD_MESSAGE(MSG_UBL_MESH_TILTED); diff --git a/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp b/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp index 3dddbe6f610a..c0b12c5946fd 100644 --- a/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp +++ b/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp @@ -198,26 +198,24 @@ bool Has_Preview() { void Preview_DrawFromSD() { if (Has_Preview()) { - char buf[46]; - char str_1[6] = ""; - char str_2[6] = ""; - char str_3[6] = ""; + MString<45> buf; + char str_1[6] = "", str_2[6] = "", str_3[6] = ""; dwinDrawRectangle(1, HMI_data.Background_Color, 0, 0, DWIN_WIDTH, STATUS_Y - 1); if (fileprop.time) { - sprintf_P(buf, PSTR("Estimated time: %i:%02i"), (uint16_t)fileprop.time / 3600, ((uint16_t)fileprop.time % 3600) / 60); - DWINUI::Draw_String(20, 10, buf); + buf.setf(F("Estimated time: %i:%02i"), (uint16_t)fileprop.time / 3600, ((uint16_t)fileprop.time % 3600) / 60); + DWINUI::Draw_String(20, 10, &buf); } if (fileprop.filament) { - sprintf_P(buf, PSTR("Filament used: %s m"), dtostrf(fileprop.filament, 1, 2, str_1)); - DWINUI::Draw_String(20, 30, buf); + buf.setf(F("Filament used: %s m"), dtostrf(fileprop.filament, 1, 2, str_1)); + DWINUI::Draw_String(20, 30, &buf); } if (fileprop.layer) { - sprintf_P(buf, PSTR("Layer height: %s mm"), dtostrf(fileprop.layer, 1, 2, str_1)); - DWINUI::Draw_String(20, 50, buf); + buf.setf(F("Layer height: %s mm"), dtostrf(fileprop.layer, 1, 2, str_1)); + DWINUI::Draw_String(20, 50, &buf); } if (fileprop.width) { - sprintf_P(buf, PSTR("Volume: %sx%sx%s mm"), dtostrf(fileprop.width, 1, 1, str_1), dtostrf(fileprop.length, 1, 1, str_2), dtostrf(fileprop.height, 1, 1, str_3)); - DWINUI::Draw_String(20, 70, buf); + buf.setf(F("Volume: %sx%sx%s mm"), dtostrf(fileprop.width, 1, 1, str_1), dtostrf(fileprop.length, 1, 1, str_2), dtostrf(fileprop.height, 1, 1, str_3)); + DWINUI::Draw_String(20, 70, &buf); } DWINUI::Draw_Button(BTN_Print, 26, 290); DWINUI::Draw_Button(BTN_Cancel, 146, 290); diff --git a/Marlin/src/lcd/e3v2/proui/printstats.cpp b/Marlin/src/lcd/e3v2/proui/printstats.cpp index 093040ebf463..993b5b7b70f1 100644 --- a/Marlin/src/lcd/e3v2/proui/printstats.cpp +++ b/Marlin/src/lcd/e3v2/proui/printstats.cpp @@ -43,7 +43,6 @@ PrintStatsClass PrintStats; void PrintStatsClass::Draw() { - char buf[50] = ""; char str[30] = ""; constexpr int8_t MRG = 30; @@ -53,18 +52,13 @@ void PrintStatsClass::Draw() { DWINUI::Draw_Button(BTN_Continue, 86, 250); printStatistics ps = print_job_timer.getStats(); - sprintf_P(buf, PSTR(S_FMT ": %i"), GET_TEXT(MSG_INFO_PRINT_COUNT), ps.totalPrints); - DWINUI::Draw_String(MRG, 80, buf); - sprintf_P(buf, PSTR(S_FMT ": %i"), GET_TEXT(MSG_INFO_COMPLETED_PRINTS), ps.finishedPrints); - DWINUI::Draw_String(MRG, 100, buf); + DWINUI::Draw_String(MRG, 80, TS(GET_TEXT_F(MSG_INFO_PRINT_COUNT), F(": "), ps.totalPrints)); + DWINUI::Draw_String(MRG, 100, TS(GET_TEXT_F(MSG_INFO_COMPLETED_PRINTS), F(": "), ps.finishedPrints)); duration_t(print_job_timer.getStats().printTime).toDigital(str, true); - sprintf_P(buf, PSTR(S_FMT ": %s"), GET_TEXT(MSG_INFO_PRINT_TIME), str); - DWINUI::Draw_String(MRG, 120, buf); + DWINUI::Draw_String(MRG, 120, MString<50>(GET_TEXT_F(MSG_INFO_PRINT_TIME), F(": "), str)); duration_t(print_job_timer.getStats().longestPrint).toDigital(str, true); - sprintf_P(buf, PSTR(S_FMT ": %s"), GET_TEXT(MSG_INFO_PRINT_LONGEST), str); - DWINUI::Draw_String(MRG, 140, buf); - sprintf_P(buf, PSTR(S_FMT ": %s m"), GET_TEXT(MSG_INFO_PRINT_FILAMENT), dtostrf(ps.filamentUsed / 1000, 1, 2, str)); - DWINUI::Draw_String(MRG, 160, buf); + DWINUI::Draw_String(MRG, 140, MString<50>(GET_TEXT(MSG_INFO_PRINT_LONGEST), F(": "), str)); + DWINUI::Draw_String(MRG, 160, TS(GET_TEXT_F(MSG_INFO_PRINT_FILAMENT), F(": "), p_float_t(ps.filamentUsed / 1000, 2), F(" m"))); } void PrintStatsClass::Reset() { diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index db5d0a635f83..2d40baa9d13a 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -71,7 +71,7 @@ constexpr uint8_t epps = ENCODER_PULSES_PER_STEP; #if ENABLED(STATUS_MESSAGE_SCROLLING) && ANY(HAS_WIRED_LCD, DWIN_LCD_PROUI) uint8_t MarlinUI::status_scroll_offset; // = 0 #endif - char MarlinUI::status_message[MAX_MESSAGE_LENGTH + 1]; + MString MarlinUI::status_message; uint8_t MarlinUI::alert_level; // = 0 #if HAS_STATUS_MESSAGE_TIMEOUT millis_t MarlinUI::status_message_expire_ms; // = 0 @@ -492,10 +492,6 @@ void MarlinUI::init() { #endif // HAS_MARLINUI_MENU - //////////////////////////////////////////// - ///////////// Keypad Handling ////////////// - //////////////////////////////////////////// - #if IS_RRW_KEYPAD && HAS_ENCODER_ACTION volatile uint8_t MarlinUI::keypad_buttons; @@ -641,7 +637,7 @@ void MarlinUI::init() { // Expire the message if a job is active and the bar has ticks if (get_progress_percent() > 2 && !print_job_timer.isPaused()) { if (ELAPSED(ms, expire_status_ms)) { - status_message[0] = '\0'; + status_message.clear(); expire_status_ms = 0; } } @@ -776,10 +772,6 @@ void MarlinUI::init() { #endif } - //////////////////////////////////////////// - /////////////// Manual Move //////////////// - //////////////////////////////////////////// - #if HAS_MARLINUI_MENU ManualMove MarlinUI::manual_move{}; @@ -1433,49 +1425,27 @@ void MarlinUI::init() { #endif // HAS_WIRED_LCD -#if HAS_STATUS_MESSAGE +void MarlinUI::host_notify_P(PGM_P const pstr) { + TERN_(HOST_STATUS_NOTIFICATIONS, hostui.notify_P(pstr)); +} +void MarlinUI::host_notify(const char * const cstr) { + TERN_(HOST_STATUS_NOTIFICATIONS, hostui.notify(cstr)); +} +void MarlinUI::host_status() { + TERN_(HOST_STATUS_NOTIFICATIONS, hostui.notify(status_message)); +} - //////////////////////////////////////////// - ////////////// Status Message ////////////// - //////////////////////////////////////////// +#include + +#if HAS_STATUS_MESSAGE #if ENABLED(EXTENSIBLE_UI) #include "extui/ui_api.h" #endif - bool MarlinUI::has_status() { return (status_message[0] != '\0'); } - - void MarlinUI::set_status(const char * const cstr, const bool persist) { - if (alert_level) return; - - TERN_(HOST_STATUS_NOTIFICATIONS, hostui.notify(cstr)); - - // Here we have a problem. The message is encoded in UTF8, so - // arbitrarily cutting it will be a problem. We MUST be sure - // that there is no cutting in the middle of a multibyte character! - - // Get a pointer to the null terminator - const char* pend = cstr + strlen(cstr); - - // If length of supplied UTF8 string is greater than - // our buffer size, start cutting whole UTF8 chars - while ((pend - cstr) > MAX_MESSAGE_LENGTH) { - --pend; - while (!START_OF_UTF8_CHAR(*pend)) --pend; - }; - - // At this point, we have the proper cut point. Use it - uint8_t maxLen = pend - cstr; - strncpy(status_message, cstr, maxLen); - status_message[maxLen] = '\0'; - - finish_status(persist); - } - /** * Reset the status message */ - void MarlinUI::reset_status(const bool no_welcome) { #if SERVICE_INTERVAL_1 > 0 static PGMSTR(service1, "> " SERVICE_NAME_1 "!"); @@ -1492,7 +1462,7 @@ void MarlinUI::init() { msg = GET_TEXT_F(MSG_PRINT_PAUSED); #if HAS_MEDIA else if (IS_SD_PRINTING()) - return set_status(card.longest_filename(), true); + return set_status_no_expire(card.longest_filename()); #endif else if (print_job_timer.isRunning()) msg = GET_TEXT_F(MSG_PRINTING); @@ -1514,65 +1484,85 @@ void MarlinUI::init() { else return; - set_status(msg, -1); + set_min_status(msg); } /** - * Set Status with a fixed string and alert level. - * @param fstr A constant F-string to set as the status. + * Try to set the alert level. * @param level Alert level. Negative to ignore and reset the level. Non-zero never expires. + * @return TRUE if the level could NOT be set. */ - void MarlinUI::set_status(FSTR_P const fstr, int8_t level) { - // Alerts block lower priority messages + bool MarlinUI::set_alert_level(int8_t &level) { if (level < 0) level = alert_level = 0; - if (level < alert_level) return; + if (level < alert_level) return true; alert_level = level; + return false; + } + + /** + * @brief Set Status with a C- or P-string and alert level. + * + * @param ustr A C- or P-string, according to pgm. + * @param level Alert level. Negative to ignore and reset the level. Non-zero never expires. + * @param pgm Program string flag. Only relevant on AVR. + */ + void MarlinUI::_set_status_and_level(const char * const ustr, int8_t level, const bool pgm) { + if (set_alert_level(level)) return; - PGM_P const pstr = FTOP(fstr); + pgm ? host_notify_P(ustr) : host_notify(ustr); - // Since the message is encoded in UTF8 it must - // only be cut on a character boundary. + MString<30> msg; + pgm ? msg.set_P(ustr) : msg.set(ustr); + status_message.set(&msg).utrunc(MAX_MESSAGE_LENGTH); - // Get a pointer to the null terminator - PGM_P pend = pstr + strlen_P(pstr); + finish_status(level > 0); // Persist if the status has a level + } - // If length of supplied UTF8 string is greater than - // the buffer size, start cutting whole UTF8 chars - while ((pend - pstr) > MAX_MESSAGE_LENGTH) { - --pend; - while (!START_OF_UTF8_CHAR(pgm_read_byte(pend))) --pend; - }; + /** + * @brief Set Status with a C- or P-string and persistence flag. + * + * @param ustr A C- or P-string, according to pgm. + * @param persist Don't expire (Requires STATUS_EXPIRE_SECONDS) - and set alert level to 1. + * @param pgm Program string flag. Only relevant on AVR. + */ + void MarlinUI::_set_status(const char * const ustr, const bool persist, const bool pgm) { + if (alert_level) return; - // At this point, we have the proper cut point. Use it - uint8_t maxLen = pend - pstr; - strncpy_P(status_message, pstr, maxLen); - status_message[maxLen] = '\0'; + pgm ? host_notify_P(ustr) : host_notify(ustr); - TERN_(HOST_STATUS_NOTIFICATIONS, hostui.notify(fstr)); + // Remove the last partial Unicode glyph, if any + (pgm ? status_message.set_P(ustr) : status_message.set(ustr)).utrunc(MAX_MESSAGE_LENGTH); - finish_status(level > 0); + finish_status(persist); } - void MarlinUI::set_alert_status(FSTR_P const fstr) { - set_status(fstr, 1); + /** + * @brief Set Alert with a C- or P-string and alert level. + * + * @param ustr A C- or P-string, according to pgm. + * @param level Alert level. Negative to ignore and reset the level. Non-zero never expires. + * @param pgm Program string flag. Only relevant on AVR. + */ + void MarlinUI::_set_alert(const char * const ustr, const int8_t level, const bool pgm) { + pgm ? set_status_and_level_P(ustr, level) : set_status_and_level(ustr, level); TERN_(HAS_TOUCH_SLEEP, wakeup_screen()); TERN_(HAS_MARLINUI_MENU, return_to_status()); } - #include - - void MarlinUI::status_printf(int8_t level, FSTR_P const fmt, ...) { - // Alerts block lower priority messages - if (level < 0) level = alert_level = 0; - if (level < alert_level) return; - alert_level = level; + /** + * @brief Set a status with a format string and parameters. + * + * @param pfmt A constant format P-string + */ + void MarlinUI::status_printf_P(int8_t level, PGM_P const fmt, ...) { + if (set_alert_level(level)) return; va_list args; - va_start(args, FTOP(fmt)); - vsnprintf_P(status_message, MAX_MESSAGE_LENGTH, FTOP(fmt), args); + va_start(args, fmt); + vsnprintf_P(status_message, MAX_MESSAGE_LENGTH, fmt, args); va_end(args); - TERN_(HOST_STATUS_NOTIFICATIONS, hostui.notify(status_message)); + host_status(); finish_status(level > 0); } @@ -1618,14 +1608,14 @@ void MarlinUI::init() { void MarlinUI::advance_status_scroll() { // Advance by one UTF8 code-word - if (status_scroll_offset < utf8_strlen(status_message)) + if (status_scroll_offset < status_message.glyphs()) while (!START_OF_UTF8_CHAR(status_message[++status_scroll_offset])); else status_scroll_offset = 0; } char* MarlinUI::status_and_len(uint8_t &len) { - char *out = status_message + status_scroll_offset; + char *out = &status_message + status_scroll_offset; len = utf8_strlen(out); return out; } @@ -1637,14 +1627,24 @@ void MarlinUI::init() { // // Send the status line as a host notification // - void MarlinUI::set_status(const char * const cstr, const bool) { - TERN(HOST_PROMPT_SUPPORT, hostui.notify(cstr), UNUSED(cstr)); + void MarlinUI::_set_status(const char * const cstr, const bool, const bool pgm) { + host_notify(cstr); + } + void MarlinUI::_set_alert(const char * const cstr, const int8_t, const bool pgm) { + host_notify(cstr); } - void MarlinUI::set_status(FSTR_P const fstr, const int8_t) { - TERN(HOST_PROMPT_SUPPORT, hostui.notify(fstr), UNUSED(fstr)); + void MarlinUI::_set_status_and_level(const char * const ustr, const int8_t=0, const bool pgm) { + pgm ? host_notify_P(ustr) : host_notify(ustr); } - void MarlinUI::status_printf(int8_t, FSTR_P const fstr, ...) { - TERN(HOST_PROMPT_SUPPORT, hostui.notify(fstr), UNUSED(fstr)); + void MarlinUI::status_printf_P(int8_t level, PGM_P const fmt, ...) { + MString<30> msg; + + va_list args; + va_start(args, fmt); + vsnprintf_P(&msg, 30, fmt, args); + va_end(args); + + host_status(); } #endif // !HAS_STATUS_MESSAGE diff --git a/Marlin/src/lcd/marlinui.h b/Marlin/src/lcd/marlinui.h index 6e0205bdfb32..8810dcac7242 100644 --- a/Marlin/src/lcd/marlinui.h +++ b/Marlin/src/lcd/marlinui.h @@ -53,8 +53,6 @@ #include "e3v2/proui/dwin.h" #endif -#define START_OF_UTF8_CHAR(C) (((C) & 0xC0u) != 0x80U) - typedef bool (*statusResetFunc_t)(); #if HAS_WIRED_LCD @@ -360,6 +358,11 @@ class MarlinUI { static constexpr uint8_t get_progress_percent() { return 0; } #endif + static void host_notify_P(PGM_P const fstr); + static void host_notify(FSTR_P const fstr) { host_notify_P(FTOP(fstr)); } + static void host_notify(const char * const cstr); + static void host_status(); + #if HAS_STATUS_MESSAGE #if ANY(HAS_WIRED_LCD, DWIN_LCD_PROUI) @@ -372,7 +375,7 @@ class MarlinUI { #define MAX_MESSAGE_LENGTH 63 #endif - static char status_message[]; + static MString status_message; static uint8_t alert_level; // Higher levels block lower levels #if HAS_STATUS_MESSAGE_TIMEOUT @@ -385,24 +388,115 @@ class MarlinUI { static char* status_and_len(uint8_t &len); #endif - static bool has_status(); + static bool has_status() { return !status_message.empty(); } + + /** + * Try to set the alert level. + * @param level Alert level. Negative to ignore and reset the level. Non-zero never expires. + * @return TRUE if the level could NOT be set. + */ + static bool set_alert_level(int8_t &level); + static void reset_status(const bool no_welcome=false); - static void set_alert_status(FSTR_P const fstr); static void reset_alert_level() { alert_level = 0; } static statusResetFunc_t status_reset_callback; static void set_status_reset_fn(const statusResetFunc_t fn=nullptr) { status_reset_callback = fn; } + #else + + #define MAX_MESSAGE_LENGTH 1 static constexpr bool has_status() { return false; } + + static bool set_alert_level(int8_t) { return false; } + static void reset_status(const bool=false) {} - static void set_alert_status(FSTR_P const) {} static void reset_alert_level() {} + static void set_status_reset_fn(const statusResetFunc_t=nullptr) {} + #endif - static void set_status(const char * const cstr, const bool persist=false); - static void set_status(FSTR_P const fstr, const int8_t level=0); - static void status_printf(int8_t level, FSTR_P const fmt, ...); + /** + * @brief Set Status with a C- or P-string and alert level. + * + * @param ustr A C- or P-string, according to pgm. + * @param level Alert level. Negative to ignore and reset the level. Non-zero never expires. + * @param pgm Program string flag. Only relevant on AVR. + */ + static void _set_status_and_level(const char * const ustr, int8_t level, const bool pgm=false); + + /** + * @brief Set Status with a C- or P-string and persistence flag. + * + * @param ustr A C- or P-string, according to pgm. + * @param persist Don't expire (Requires STATUS_EXPIRE_SECONDS) - and set alert level to 1. + * @param pgm Program string flag. Only relevant on AVR. + */ + static void _set_status(const char * const ustr, const bool persist, const bool pgm=false); + + /** + * @brief Set Alert with a C- or P-string and alert level. + * + * @param ustr A C- or P-string, according to pgm. + * @param level Alert level. Negative to ignore and reset the level. Non-zero never expires. + * @param pgm Program string flag. Only relevant on AVR. + */ + static void _set_alert(const char * const ustr, int8_t level, const bool pgm=false); + + static void set_status(const char * const cstr, const bool persist=false) { _set_status(cstr, persist, false); } + static void set_status_P(PGM_P const pstr, const bool persist=false) { _set_status(pstr, persist, true); } + static void set_status(FSTR_P const fstr, const bool persist=false) { set_status_P(FTOP(fstr), persist); } + + static void set_alert(const char * const cstr, const int8_t level=1) { _set_alert(cstr, level, false); } + static void set_alert_P(PGM_P const pstr, const int8_t level=1) { _set_alert(pstr, level, true); } + static void set_alert(FSTR_P const fstr, const int8_t level=1) { set_alert_P(FTOP(fstr), level); } + + /** + * @brief Set Status with a C-string and alert level. + * + * @param fstr A constant F-string to set as the status. + * @param level Alert level. Negative to ignore and reset the level. Non-zero never expires. + */ + static void set_status_and_level(const char * const cstr, const int8_t level) { _set_status_and_level(cstr, level, false); } + + /** + * @brief Set Status with a P-string and alert level. + * + * @param ustr A C- or P-string, according to pgm. + * @param level Alert level. Negative to ignore and reset the level. Non-zero never expires. + */ + static void set_status_and_level_P(PGM_P const pstr, const int8_t level) { _set_status_and_level(pstr, level, true); } + + /** + * @brief Set Status with a fixed string and alert level. + * + * @param fstr A constant F-string to set as the status. + * @param level Alert level. Negative to ignore and reset the level. Non-zero never expires. + */ + static void set_status_and_level(FSTR_P const fstr, const int8_t level) { set_status_and_level_P(FTOP(fstr), level); } + + static void set_max_status(FSTR_P const fstr) { set_status_and_level(fstr, 127); } + static void set_min_status(FSTR_P const fstr) { set_status_and_level(fstr, -1); } + + /** + * @brief Set a persistent status with a C-string. + * + * @param cstr A C-string to set as the status. + */ + static void set_status_no_expire_P(PGM_P const pstr) { set_status_P(pstr, true); } + static void set_status_no_expire(const char * const cstr) { set_status(cstr, true); } + static void set_status_no_expire(FSTR_P const fstr) { set_status(fstr, true); } + + /** + * @brief Set a status with a format string and parameters. + * + * @param pfmt A constant format P-string + */ + static void status_printf_P(int8_t level, PGM_P const pfmt, ...); + + template + static void status_printf(int8_t level, FSTR_P const ffmt, Args... more) { status_printf_P(level, FTOP(ffmt), more...); } #if HAS_DISPLAY @@ -809,7 +903,7 @@ class MarlinUI { #define LCD_MESSAGE_F(S) ui.set_status(F(S)) #define LCD_MESSAGE(M) ui.set_status(GET_TEXT_F(M)) -#define LCD_MESSAGE_MIN(M) ui.set_status(GET_TEXT_F(M), -1) -#define LCD_MESSAGE_MAX(M) ui.set_status(GET_TEXT_F(M), 99) -#define LCD_ALERTMESSAGE_F(S) ui.set_alert_status(F(S)) -#define LCD_ALERTMESSAGE(M) ui.set_alert_status(GET_TEXT_F(M)) +#define LCD_MESSAGE_MIN(M) ui.set_min_status(GET_TEXT_F(M)) +#define LCD_MESSAGE_MAX(M) ui.set_max_status(GET_TEXT_F(M)) +#define LCD_ALERTMESSAGE_F(S) ui.set_alert(F(S)) +#define LCD_ALERTMESSAGE(M) ui.set_alert(GET_TEXT_F(M)) diff --git a/Marlin/src/lcd/menu/menu_bed_leveling.cpp b/Marlin/src/lcd/menu/menu_bed_leveling.cpp index efc05aabde48..beb9342fb9b8 100644 --- a/Marlin/src/lcd/menu/menu_bed_leveling.cpp +++ b/Marlin/src/lcd/menu/menu_bed_leveling.cpp @@ -138,9 +138,9 @@ // void _lcd_level_bed_moving() { if (ui.should_draw()) { - char msg[10]; - sprintf_P(msg, PSTR("%i / %u"), int(manual_probe_index + 1), total_probe_points); - MenuEditItemBase::draw_edit_screen(GET_TEXT_F(MSG_LEVEL_BED_NEXT_POINT), msg); + MString<9> msg; + msg.setf(F("%i / %u"), int(manual_probe_index + 1), total_probe_points); + MenuEditItemBase::draw_edit_screen(GET_TEXT_F(MSG_LEVEL_BED_NEXT_POINT), &msg); } ui.refresh(LCDVIEW_CALL_NO_REDRAW); if (!ui.wait_for_move) ui.goto_screen(_lcd_level_bed_get_z); diff --git a/Marlin/src/lcd/menu/menu_configuration.cpp b/Marlin/src/lcd/menu/menu_configuration.cpp index 6318780abb98..4e9b3022638b 100644 --- a/Marlin/src/lcd/menu/menu_configuration.cpp +++ b/Marlin/src/lcd/menu/menu_configuration.cpp @@ -331,10 +331,7 @@ void menu_advanced_settings(); void bltouch_report() { FSTR_P const mode0 = F("OD"), mode1 = F("5V"); DEBUG_ECHOLNPGM("BLTouch Mode: ", bltouch.od_5v_mode ? mode1 : mode0, " (Default ", TERN(BLTOUCH_SET_5V_MODE, mode1, mode0), ")"); - char mess[21]; - strcpy_P(mess, PSTR("BLTouch Mode: ")); - strcpy_P(&mess[15], bltouch.od_5v_mode ? FTOP(mode1) : FTOP(mode0)); - ui.set_status(mess); + ui.set_status(MString<18>(F("BLTouch Mode: "), bltouch.od_5v_mode ? mode1 : mode0)); ui.return_to_status(); } #endif diff --git a/Marlin/src/lcd/menu/menu_x_twist.cpp b/Marlin/src/lcd/menu/menu_x_twist.cpp index 56872b73ee25..6162a5e30d3b 100644 --- a/Marlin/src/lcd/menu/menu_x_twist.cpp +++ b/Marlin/src/lcd/menu/menu_x_twist.cpp @@ -112,9 +112,9 @@ void xatc_wizard_menu() { // void xatc_wizard_moving() { if (ui.should_draw()) { - char msg[10]; - sprintf_P(msg, PSTR("%i / %u"), manual_probe_index + 1, XATC_MAX_POINTS); - MenuEditItemBase::draw_edit_screen(GET_TEXT_F(MSG_LEVEL_BED_NEXT_POINT), msg); + MString<9> msg; + msg.setf(F("%i / %u"), manual_probe_index + 1, XATC_MAX_POINTS); + MenuEditItemBase::draw_edit_screen(GET_TEXT_F(MSG_LEVEL_BED_NEXT_POINT), &msg); } ui.refresh(LCDVIEW_CALL_NO_REDRAW); if (!ui.wait_for_move) ui.goto_screen(xatc_wizard_menu); diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index d11842e758f1..3970273af0f1 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -1623,22 +1623,21 @@ void prepare_line_to_destination() { } bool homing_needed_error(main_axes_bits_t axis_bits/*=main_axes_mask*/) { - if ((axis_bits &= axes_should_home(axis_bits))) { - char all_axes[] = STR_AXES_MAIN, need[NUM_AXES + 1]; - uint8_t n = 0; - LOOP_NUM_AXES(i) if (TEST(axis_bits, i)) need[n++] = all_axes[i]; - need[n] = '\0'; - - char msg[30]; - sprintf_P(msg, GET_EN_TEXT(MSG_HOME_FIRST), need); - SERIAL_ECHO_START(); - SERIAL_ECHOLN(msg); - - sprintf_P(msg, GET_TEXT(MSG_HOME_FIRST), need); - ui.set_status(msg); - return true; - } - return false; + if (!(axis_bits &= axes_should_home(axis_bits))) return false; + + char all_axes[] = STR_AXES_MAIN, need[NUM_AXES + 1]; + uint8_t n = 0; + LOOP_NUM_AXES(i) if (TEST(axis_bits, i)) need[n++] = all_axes[i]; + need[n] = '\0'; + + SString<30> msg; + msg.setf(GET_EN_TEXT_F(MSG_HOME_FIRST), need); + SERIAL_ECHO_START(); + msg.echoln(); + + msg.setf(GET_TEXT_F(MSG_HOME_FIRST), need); + ui.set_status(msg); + return true; } /** diff --git a/Marlin/src/module/probe.cpp b/Marlin/src/module/probe.cpp index 204617ba8394..e426e3bb4bdd 100644 --- a/Marlin/src/module/probe.cpp +++ b/Marlin/src/module/probe.cpp @@ -358,7 +358,7 @@ FORCE_INLINE void probe_specific_action(const bool deploy) { FSTR_P const ds_str = deploy ? GET_TEXT_F(MSG_MANUAL_DEPLOY) : GET_TEXT_F(MSG_MANUAL_STOW); ui.return_to_status(); // To display the new status message - ui.set_status(ds_str, 99); + ui.set_max_status(ds_str); SERIAL_ECHOLN(deploy ? GET_EN_TEXT_F(MSG_MANUAL_DEPLOY) : GET_EN_TEXT_F(MSG_MANUAL_STOW)); OKAY_BUZZ(); diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index fa434c1499cd..3e2b2386bd9c 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -814,14 +814,14 @@ void MarlinSettings::postprocess() { */ bool MarlinSettings::save() { float dummyf = 0; - char ver[4] = "ERR"; + MString<4> ver(F("ERR")); if (!EEPROM_START(EEPROM_OFFSET)) return false; EEPROM_Error eeprom_error = ERR_EEPROM_NOERR; // Write or Skip version. (Flash doesn't allow rewrite without erase.) - TERN(FLASH_EEPROM_EMULATION, EEPROM_SKIP, EEPROM_WRITE)(ver); + TERN(FLASH_EEPROM_EMULATION, EEPROM_SKIP, EEPROM_WRITE)(&ver); #if ENABLED(EEPROM_INIT_NOW) EEPROM_SKIP(build_hash); // Skip the hash slot which will be written later diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 11788c3cb1cb..7688d83c06c3 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -4179,22 +4179,17 @@ void Temperature::isr() { case H_REDUNDANT: k = 'R'; break; #endif } - SERIAL_CHAR(' ', k); - #if HAS_MULTI_HOTEND - if (e >= 0) SERIAL_CHAR('0' + e); - #endif - #ifdef SERIAL_FLOAT_PRECISION - #define SFP _MIN(SERIAL_FLOAT_PRECISION, 2) - #else - #define SFP 2 - #endif - SERIAL_ECHO(AS_CHAR(':'), p_float_t(c, SFP)); - if (show_t) { SERIAL_ECHOPGM(" /", p_float_t(t, SFP)); } + #define SFP _MIN(SERIAL_FLOAT_PRECISION, 2) + + SString<50> s(' ', k); + if (TERN0(HAS_MULTI_HOTEND, e >= 0)) s += char('0' + e); + s += TS(':', p_float_t(c, SFP)); + if (show_t) { s += F(" /"); s += p_float_t(t, SFP); } #if ENABLED(SHOW_TEMP_ADC_VALUES) // Temperature MAX SPI boards do not have an OVERSAMPLENR defined - SERIAL_ECHOPGM(" (", TERN(HAS_MAXTC_LIBRARIES, k == 'T', false) ? r : r * RECIPROCAL(OVERSAMPLENR)); - SERIAL_CHAR(')'); + s.append(F(" ("), TERN(HAS_MAXTC_LIBRARIES, k == 'T', false) ? r : r * RECIPROCAL(OVERSAMPLENR), ')'); #endif + s.echo(); delay(2); } @@ -4228,23 +4223,20 @@ void Temperature::isr() { #if HAS_MULTI_HOTEND HOTEND_LOOP() print_heater_state((heater_id_t)e, degHotend(e), degTargetHotend(e) OPTARG(SHOW_TEMP_ADC_VALUES, rawHotendTemp(e))); #endif - SERIAL_ECHOPGM(" @:", getHeaterPower((heater_id_t)target_extruder)); + SString<100> s(F(" @:"), getHeaterPower((heater_id_t)target_extruder)); #if HAS_HEATED_BED - SERIAL_ECHOPGM(" B@:", getHeaterPower(H_BED)); + s.append(" B@:", getHeaterPower(H_BED)); #endif #if HAS_HEATED_CHAMBER - SERIAL_ECHOPGM(" C@:", getHeaterPower(H_CHAMBER)); + s.append(" C@:", getHeaterPower(H_CHAMBER)); #endif #if HAS_COOLER - SERIAL_ECHOPGM(" C@:", getHeaterPower(H_COOLER)); + s.append(" C@:", getHeaterPower(H_COOLER)); #endif #if HAS_MULTI_HOTEND - HOTEND_LOOP() { - SERIAL_ECHOPGM(" @", e); - SERIAL_CHAR(':'); - SERIAL_ECHO(getHeaterPower((heater_id_t)e)); - } + HOTEND_LOOP() s.append(F(" @"), e, ':', getHeaterPower((heater_id_t)e)); #endif + s.echo(); } #if ENABLED(AUTO_REPORT_TEMPERATURES) @@ -4331,11 +4323,12 @@ void Temperature::isr() { next_temp_ms = now + 1000UL; print_heater_states(target_extruder); #if TEMP_RESIDENCY_TIME > 0 - SERIAL_ECHOPGM(" W:"); + SString<20> s(F(" W:")); if (residency_start_ms) - SERIAL_ECHO(long((SEC_TO_MS(TEMP_RESIDENCY_TIME) - (now - residency_start_ms)) / 1000UL)); + s += long((SEC_TO_MS(TEMP_RESIDENCY_TIME) - (now - residency_start_ms)) / 1000UL); else - SERIAL_CHAR('?'); + s += '?'; + s.echo(); #endif SERIAL_EOL(); } @@ -4468,11 +4461,12 @@ void Temperature::isr() { next_temp_ms = now + 1000UL; print_heater_states(active_extruder); #if TEMP_BED_RESIDENCY_TIME > 0 - SERIAL_ECHOPGM(" W:"); + SString<20> s(F(" W:")); if (residency_start_ms) - SERIAL_ECHO(long((SEC_TO_MS(TEMP_BED_RESIDENCY_TIME) - (now - residency_start_ms)) / 1000UL)); + s += long((SEC_TO_MS(TEMP_BED_RESIDENCY_TIME) - (now - residency_start_ms)) / 1000UL); else - SERIAL_CHAR('?'); + s += '?'; + s.echo(); #endif SERIAL_EOL(); } @@ -4562,7 +4556,7 @@ void Temperature::isr() { const bool wants_to_cool = isProbeAboveTemp(target_temp), will_wait = !(wants_to_cool && no_wait_for_cooling); if (will_wait) - SERIAL_ECHOLNPGM("Waiting for probe to ", wants_to_cool ? F("cool down") : F("heat up"), " to ", target_temp, " degrees."); + SString<60>(F("Waiting for probe to "), wants_to_cool ? F("cool down") : F("heat up"), F(" to "), target_temp, F(" degrees.")).echoln(); #if DISABLED(BUSY_WHILE_HEATING) && ENABLED(HOST_KEEPALIVE_FEATURE) KEEPALIVE_STATE(NOT_BUSY); @@ -4600,9 +4594,8 @@ void Temperature::isr() { // Loop until the temperature is very close target if (!(wants_to_cool ? isProbeAboveTemp(target_temp) : isProbeBelowTemp(target_temp))) { - SERIAL_ECHOLN(wants_to_cool ? PSTR("Cooldown") : PSTR("Heatup")); - SERIAL_ECHOLNPGM(" complete, target probe temperature reached."); - break; + SString<60>(wants_to_cool ? F("Cooldown") : F("Heatup"), F(" complete, target probe temperature reached.")).echoln(); + break; } } @@ -4663,11 +4656,12 @@ void Temperature::isr() { next_temp_ms = now + 1000UL; print_heater_states(active_extruder); #if TEMP_CHAMBER_RESIDENCY_TIME > 0 - SERIAL_ECHOPGM(" W:"); + SString<20> s(F(" W:")); if (residency_start_ms) - SERIAL_ECHO(long((SEC_TO_MS(TEMP_CHAMBER_RESIDENCY_TIME) - (now - residency_start_ms)) / 1000UL)); + s += long((SEC_TO_MS(TEMP_CHAMBER_RESIDENCY_TIME) - (now - residency_start_ms)) / 1000UL); else - SERIAL_CHAR('?'); + s += '?'; + s.echo(); #endif SERIAL_EOL(); } @@ -4762,11 +4756,12 @@ void Temperature::isr() { next_temp_ms = now + 1000UL; print_heater_states(active_extruder); #if TEMP_COOLER_RESIDENCY_TIME > 0 - SERIAL_ECHOPGM(" W:"); + SString<20> s(F(" W:")); if (residency_start_ms) - SERIAL_ECHO(long((SEC_TO_MS(TEMP_COOLER_RESIDENCY_TIME) - (now - residency_start_ms)) / 1000UL)); + s += long((SEC_TO_MS(TEMP_COOLER_RESIDENCY_TIME) - (now - residency_start_ms)) / 1000UL); else - SERIAL_CHAR('?'); + s += '?'; + s.echo(); #endif SERIAL_EOL(); } diff --git a/Marlin/src/tests/marlin_tests.cpp b/Marlin/src/tests/marlin_tests.cpp index 89e5664345d8..3d14f094a2bf 100644 --- a/Marlin/src/tests/marlin_tests.cpp +++ b/Marlin/src/tests/marlin_tests.cpp @@ -37,6 +37,40 @@ // Startup tests are run at the end of setup() void runStartupTests() { // Call post-setup tests here to validate behaviors. + + // String with cutoff at 20 chars: + // "F-string, 1234.50, 2" + SString<20> str20; + str20 = F("F-string, "); + str20.append(1234.5f).append(',').append(' ') + .append(2345.67).append(',').append(' ') + .echoln(); + + // Truncate to "F-string" + str20.trunc(8).echoln(); + + // 100 dashes, but chopped down to DEFAULT_MSTRING_SIZE (20) + TSS(repchr_t('-', 100)).echoln(); + + // Hello World!-123456------ str(F("Hello")); + str.append(F(" World!")); + str += '-'; + str += "123"; + str += F("456"); + str += repchr_t('-', 6); + str += Spaces(3); + str += "< spaces!"; + str.eol(); + str += "^ eol!"; + + str.append("...", 1234.5f, '*', p_float_t(2345.602, 3), F(" = "), 1234.5 * 2345.602).echoln(); + + // Print it again with SERIAL_ECHOLN + auto print_char_ptr = [](char * const str) { SERIAL_ECHOLN(str); }; + print_char_ptr(str); + } // Periodic tests are run from within loop() From a5ac50fcbf541dcd33fe35979b767bbcf0568884 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Wed, 28 Jun 2023 00:25:35 +0000 Subject: [PATCH 324/427] [cron] Bump distribution date (2023-06-28) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 20f8f19e86a9..a1acaf447fc0 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-26" +//#define STRING_DISTRIBUTION_DATE "2023-06-28" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 245589c3ec02..413ff93ac186 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-26" + #define STRING_DISTRIBUTION_DATE "2023-06-28" #endif /** From 46b5753f5653401bc2d1d3120041a897384db48d Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 27 Jun 2023 20:33:57 -0500 Subject: [PATCH 325/427] =?UTF-8?q?=F0=9F=8E=A8=20Indent=20temp=20structs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/temperature.h | 320 ++++++++++++++++---------------- 1 file changed, 160 insertions(+), 160 deletions(-) diff --git a/Marlin/src/module/temperature.h b/Marlin/src/module/temperature.h index b0cb3d778ebe..51fa6f1efff2 100644 --- a/Marlin/src/module/temperature.h +++ b/Marlin/src/module/temperature.h @@ -177,68 +177,68 @@ typedef struct { float p, i, d, c, f; } raw_pidcf_t; /// PID classes that implement these features are expected to override these methods /// Since the finally used PID class is typedef-d, there is no need to use virtual functions template - struct PID_t{ - protected: - bool pid_reset = true; - float temp_iState = 0.0f, temp_dState = 0.0f; - float work_p = 0, work_i = 0, work_d = 0; - - public: - float Kp = 0, Ki = 0, Kd = 0; - float p() const { return Kp; } - float i() const { return unscalePID_i(Ki); } - float d() const { return unscalePID_d(Kd); } - float c() const { return 1; } - float f() const { return 0; } - float pTerm() const { return work_p; } - float iTerm() const { return work_i; } - float dTerm() const { return work_d; } - float cTerm() const { return 0; } - float fTerm() const { return 0; } - void set_Kp(float p) { Kp = p; } - void set_Ki(float i) { Ki = scalePID_i(i); } - void set_Kd(float d) { Kd = scalePID_d(d); } - void set_Kc(float) {} - void set_Kf(float) {} - int low() const { return MIN_POW; } - int high() const { return MAX_POW; } - void reset() { pid_reset = true; } - void set(float p, float i, float d, float c=1, float f=0) { set_Kp(p); set_Ki(i); set_Kd(d); set_Kc(c); set_Kf(f); } - void set(const raw_pid_t &raw) { set(raw.p, raw.i, raw.d); } - void set(const raw_pidcf_t &raw) { set(raw.p, raw.i, raw.d, raw.c, raw.f); } - - float get_fan_scale_output(const uint8_t) { return 0; } - - float get_extrusion_scale_output(const bool, const int32_t, const float, const int16_t) { return 0; } - - float get_pid_output(const float target, const float current) { - const float pid_error = target - current; - if (!target || pid_error < -(PID_FUNCTIONAL_RANGE)) { - pid_reset = true; - return 0; - } - else if (pid_error > PID_FUNCTIONAL_RANGE) { - pid_reset = true; - return MAX_POW; - } + struct PID_t { + protected: + bool pid_reset = true; + float temp_iState = 0.0f, temp_dState = 0.0f; + float work_p = 0, work_i = 0, work_d = 0; + + public: + float Kp = 0, Ki = 0, Kd = 0; + float p() const { return Kp; } + float i() const { return unscalePID_i(Ki); } + float d() const { return unscalePID_d(Kd); } + float c() const { return 1; } + float f() const { return 0; } + float pTerm() const { return work_p; } + float iTerm() const { return work_i; } + float dTerm() const { return work_d; } + float cTerm() const { return 0; } + float fTerm() const { return 0; } + void set_Kp(float p) { Kp = p; } + void set_Ki(float i) { Ki = scalePID_i(i); } + void set_Kd(float d) { Kd = scalePID_d(d); } + void set_Kc(float) {} + void set_Kf(float) {} + int low() const { return MIN_POW; } + int high() const { return MAX_POW; } + void reset() { pid_reset = true; } + void set(float p, float i, float d, float c=1, float f=0) { set_Kp(p); set_Ki(i); set_Kd(d); set_Kc(c); set_Kf(f); } + void set(const raw_pid_t &raw) { set(raw.p, raw.i, raw.d); } + void set(const raw_pidcf_t &raw) { set(raw.p, raw.i, raw.d, raw.c, raw.f); } + + float get_fan_scale_output(const uint8_t) { return 0; } + + float get_extrusion_scale_output(const bool, const int32_t, const float, const int16_t) { return 0; } + + float get_pid_output(const float target, const float current) { + const float pid_error = target - current; + if (!target || pid_error < -(PID_FUNCTIONAL_RANGE)) { + pid_reset = true; + return 0; + } + else if (pid_error > PID_FUNCTIONAL_RANGE) { + pid_reset = true; + return MAX_POW; + } - if (pid_reset) { - pid_reset = false; - temp_iState = 0.0; - work_d = 0.0; - } + if (pid_reset) { + pid_reset = false; + temp_iState = 0.0; + work_d = 0.0; + } - const float max_power_over_i_gain = float(MAX_POW) / Ki - float(MIN_POW); - temp_iState = constrain(temp_iState + pid_error, 0, max_power_over_i_gain); + const float max_power_over_i_gain = float(MAX_POW) / Ki - float(MIN_POW); + temp_iState = constrain(temp_iState + pid_error, 0, max_power_over_i_gain); - work_p = Kp * pid_error; - work_i = Ki * temp_iState; - work_d = work_d + PID_K2 * (Kd * (temp_dState - current) - work_d); + work_p = Kp * pid_error; + work_i = Ki * temp_iState; + work_d = work_d + PID_K2 * (Kd * (temp_dState - current) - work_d); - temp_dState = current; + temp_dState = current; - return constrain(work_p + work_i + work_d + float(MIN_POW), 0, MAX_POW); - } + return constrain(work_p + work_i + work_d + float(MIN_POW), 0, MAX_POW); + } }; @@ -249,53 +249,53 @@ typedef struct { float p, i, d, c, f; } raw_pidcf_t; /// @brief Extrusion scaled PID class template struct PIDC_t : public PID_t { - private: - using base = PID_t; - float work_c = 0; - float prev_e_pos = 0; - int32_t lpq[LPQ_ARR_SZ] = {}; - int16_t lpq_ptr = 0; - public: - float Kc = 0; - float c() const { return Kc; } - void set_Kc(float c) { Kc = c; } - float cTerm() const { return work_c; } - void set(float p, float i, float d, float c=1, float f=0) { - base::set_Kp(p); - base::set_Ki(i); - base::set_Kd(d); - set_Kc(c); - base::set_Kf(f); - } - void set(const raw_pid_t &raw) { set(raw.p, raw.i, raw.d); } - void set(const raw_pidcf_t &raw) { set(raw.p, raw.i, raw.d, raw.c, raw.f); } - void reset() { - base::reset(); - prev_e_pos = 0; - lpq_ptr = 0; - for (uint8_t i = 0; i < LPQ_ARR_SZ; ++i) lpq[i] = 0; - } + private: + using base = PID_t; + float work_c = 0; + float prev_e_pos = 0; + int32_t lpq[LPQ_ARR_SZ] = {}; + int16_t lpq_ptr = 0; + public: + float Kc = 0; + float c() const { return Kc; } + void set_Kc(float c) { Kc = c; } + float cTerm() const { return work_c; } + void set(float p, float i, float d, float c=1, float f=0) { + base::set_Kp(p); + base::set_Ki(i); + base::set_Kd(d); + set_Kc(c); + base::set_Kf(f); + } + void set(const raw_pid_t &raw) { set(raw.p, raw.i, raw.d); } + void set(const raw_pidcf_t &raw) { set(raw.p, raw.i, raw.d, raw.c, raw.f); } + void reset() { + base::reset(); + prev_e_pos = 0; + lpq_ptr = 0; + for (uint8_t i = 0; i < LPQ_ARR_SZ; ++i) lpq[i] = 0; + } - float get_extrusion_scale_output(const bool is_active, const int32_t e_position, const float e_mm_per_step, const int16_t lpq_len) { - work_c = 0; - if (!is_active) return work_c; + float get_extrusion_scale_output(const bool is_active, const int32_t e_position, const float e_mm_per_step, const int16_t lpq_len) { + work_c = 0; + if (!is_active) return work_c; - if (e_position > prev_e_pos) { - lpq[lpq_ptr] = e_position - prev_e_pos; - prev_e_pos = e_position; - } - else - lpq[lpq_ptr] = 0; + if (e_position > prev_e_pos) { + lpq[lpq_ptr] = e_position - prev_e_pos; + prev_e_pos = e_position; + } + else + lpq[lpq_ptr] = 0; - ++lpq_ptr; + ++lpq_ptr; - if (lpq_ptr >= LPQ_ARR_SZ || lpq_ptr >= lpq_len) - lpq_ptr = 0; + if (lpq_ptr >= LPQ_ARR_SZ || lpq_ptr >= lpq_len) + lpq_ptr = 0; - work_c = (lpq[lpq_ptr] * e_mm_per_step) * Kc; + work_c = (lpq[lpq_ptr] * e_mm_per_step) * Kc; - return work_c; - } + return work_c; + } }; /// @brief Fan scaled PID, this class implements the get_fan_scale_output() method @@ -305,67 +305,67 @@ typedef struct { float p, i, d, c, f; } raw_pidcf_t; /// @tparam SCALE_LIN_FACTOR parameter from Configuration_adv.h template struct PIDF_t : public PID_t { - private: - using base = PID_t; - float work_f = 0; - public: - float Kf = 0; - float f() const { return Kf; } - void set_Kf(float f) { Kf = f; } - float fTerm() const { return work_f; } - void set(float p, float i, float d, float c=1, float f=0) { - base::set_Kp(p); - base::set_Ki(i); - base::set_Kd(d); - base::set_Kc(c); - set_Kf(f); - } - void set(const raw_pid_t &raw) { set(raw.p, raw.i, raw.d); } - void set(const raw_pidcf_t &raw) { set(raw.p, raw.i, raw.d, raw.c, raw.f); } + private: + using base = PID_t; + float work_f = 0; + public: + float Kf = 0; + float f() const { return Kf; } + void set_Kf(float f) { Kf = f; } + float fTerm() const { return work_f; } + void set(float p, float i, float d, float c=1, float f=0) { + base::set_Kp(p); + base::set_Ki(i); + base::set_Kd(d); + base::set_Kc(c); + set_Kf(f); + } + void set(const raw_pid_t &raw) { set(raw.p, raw.i, raw.d); } + void set(const raw_pidcf_t &raw) { set(raw.p, raw.i, raw.d, raw.c, raw.f); } - float get_fan_scale_output(const uint8_t fan_speed) { - work_f = 0; - if (fan_speed > SCALE_MIN_SPEED) - work_f = Kf + (SCALE_LIN_FACTOR) * fan_speed; + float get_fan_scale_output(const uint8_t fan_speed) { + work_f = 0; + if (fan_speed > SCALE_MIN_SPEED) + work_f = Kf + (SCALE_LIN_FACTOR) * fan_speed; - return work_f; - } + return work_f; + } }; /// @brief Inherits PID and PIDC - can't use proper diamond inheritance w/o virtual template struct PIDCF_t : public PIDC_t { - private: - using base = PID_t; - using cPID = PIDC_t; - float work_f = 0; - public: - float Kf = 0; - float c() const { return cPID::c(); } - float f() const { return Kf; } - void set_Kc(float c) { cPID::set_Kc(c); } - void set_Kf(float f) { Kf = f; } - float cTerm() const { return cPID::cTerm(); } - float fTerm() const { return work_f; } - void set(float p, float i, float d, float c=1, float f=0) { - base::set_Kp(p); - base::set_Ki(i); - base::set_Kd(d); - cPID::set_Kc(c); - set_Kf(f); - } - void set(const raw_pid_t &raw) { set(raw.p, raw.i, raw.d); } - void set(const raw_pidcf_t &raw) { set(raw.p, raw.i, raw.d, raw.c, raw.f); } + private: + using base = PID_t; + using cPID = PIDC_t; + float work_f = 0; + public: + float Kf = 0; + float c() const { return cPID::c(); } + float f() const { return Kf; } + void set_Kc(float c) { cPID::set_Kc(c); } + void set_Kf(float f) { Kf = f; } + float cTerm() const { return cPID::cTerm(); } + float fTerm() const { return work_f; } + void set(float p, float i, float d, float c=1, float f=0) { + base::set_Kp(p); + base::set_Ki(i); + base::set_Kd(d); + cPID::set_Kc(c); + set_Kf(f); + } + void set(const raw_pid_t &raw) { set(raw.p, raw.i, raw.d); } + void set(const raw_pidcf_t &raw) { set(raw.p, raw.i, raw.d, raw.c, raw.f); } - void reset() { cPID::reset(); } + void reset() { cPID::reset(); } - float get_fan_scale_output(const uint8_t fan_speed) { - work_f = fan_speed > (SCALE_MIN_SPEED) ? Kf + (SCALE_LIN_FACTOR) * fan_speed : 0; - return work_f; - } - float get_extrusion_scale_output(const bool is_active, const int32_t e_position, const float e_mm_per_step, const int16_t lpq_len) { - return cPID::get_extrusion_scale_output(is_active, e_position, e_mm_per_step, lpq_len); - } + float get_fan_scale_output(const uint8_t fan_speed) { + work_f = fan_speed > (SCALE_MIN_SPEED) ? Kf + (SCALE_LIN_FACTOR) * fan_speed : 0; + return work_f; + } + float get_extrusion_scale_output(const bool is_active, const int32_t e_position, const float e_mm_per_step, const int16_t lpq_len) { + return cPID::get_extrusion_scale_output(is_active, e_position, e_mm_per_step, lpq_len); + } }; typedef @@ -415,16 +415,16 @@ typedef struct { float p, i, d, c, f; } raw_pidcf_t; // A temperature sensor typedef struct TempInfo { -private: - raw_adc_t acc; - raw_adc_t raw; -public: - celsius_float_t celsius; - inline void reset() { acc = 0; } - inline void sample(const raw_adc_t s) { acc += s; } - inline void update() { raw = acc; } - void setraw(const raw_adc_t r) { raw = r; } - raw_adc_t getraw() const { return raw; } + private: + raw_adc_t acc; + raw_adc_t raw; + public: + celsius_float_t celsius; + inline void reset() { acc = 0; } + inline void sample(const raw_adc_t s) { acc += s; } + inline void update() { raw = acc; } + void setraw(const raw_adc_t r) { raw = r; } + raw_adc_t getraw() const { return raw; } } temp_info_t; #if HAS_TEMP_REDUNDANT From bbfaf7474c50f81d606c2dde91035bc40835e830 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 27 Jun 2023 21:44:42 -0500 Subject: [PATCH 326/427] =?UTF-8?q?=F0=9F=8E=A8=20CrealityDWIN=20=3D>=20Jy?= =?UTF-8?q?ersDWIN=20(#26026)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/feature/powerloss/M1000.cpp | 2 +- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 258 +++++++++---------- Marlin/src/lcd/e3v2/jyersui/dwin.h | 10 +- Marlin/src/lcd/marlinui.cpp | 2 +- Marlin/src/module/settings.cpp | 12 +- 5 files changed, 136 insertions(+), 148 deletions(-) diff --git a/Marlin/src/gcode/feature/powerloss/M1000.cpp b/Marlin/src/gcode/feature/powerloss/M1000.cpp index d56f09f71cbf..56ef737145c2 100644 --- a/Marlin/src/gcode/feature/powerloss/M1000.cpp +++ b/Marlin/src/gcode/feature/powerloss/M1000.cpp @@ -71,7 +71,7 @@ void GcodeSuite::M1000() { #elif HAS_DWIN_E3V2_BASIC recovery.dwin_flag = true; #elif ENABLED(DWIN_CREALITY_LCD_JYERSUI) // Temporary fix until it can be better implemented - crealityDWIN.popupHandler(Resume); + jyersDWIN.popupHandler(Resume); #elif ENABLED(EXTENSIBLE_UI) ExtUI::onPowerLossResume(); #else diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index 95a387c6cbfd..c43afab100d4 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -128,9 +128,9 @@ #define JERK_UNIT 10 #define STEPS_UNIT 10 -/** - * Custom menu items with jyersLCD - */ +// +// Custom menu items with JyersLCD +// #if ENABLED(CUSTOM_MENU_CONFIG) #ifdef CONFIG_MENU_ITEM_5_DESC #define CUSTOM_MENU_COUNT 5 @@ -201,7 +201,7 @@ float corner_pos; bool probe_deployed = false; -CrealityDWIN crealityDWIN; +JyersDWIN jyersDWIN; template class TextScroller { @@ -329,14 +329,14 @@ class TextScroller { planner.synchronize(); } else { - crealityDWIN.popupHandler(MoveWait); + jyersDWIN.popupHandler(MoveWait); gcode.process_subcommands_now(TS(F("G0F300Z"), p_float_t(current_position.z, 3))); gcode.process_subcommands_now(TS(F("G42 F4000 I"), mesh_x, 'J', mesh_y)); planner.synchronize(); current_position.z = goto_mesh_value ? bedlevel.z_values[mesh_x][mesh_y] : Z_CLEARANCE_BETWEEN_PROBES; planner.buffer_line(current_position, homing_feedrate(Z_AXIS), active_extruder); planner.synchronize(); - crealityDWIN.redrawMenu(); + jyersDWIN.redrawMenu(); } } @@ -432,7 +432,7 @@ class TextScroller { v1 = -range; v2 = range; } - crealityDWIN.updateStatus(TS(F("Red "), p_float_t(v1, 3) , F("..0.."), p_float_t(v2, 3), F(" Green"))); + jyersDWIN.updateStatus(TS(F("Red "), p_float_t(v1, 3) , F("..0.."), p_float_t(v2, 3), F(" Green"))); drawing_mesh = false; } @@ -441,24 +441,26 @@ class TextScroller { #endif // HAS_MESH -/* General Display Functions */ +// +// General Display Functions +// -struct CrealityDWIN::EEPROM_Settings CrealityDWIN::eeprom_settings{0}; -constexpr const char * const CrealityDWIN::color_names[11]; -constexpr const char * const CrealityDWIN::preheat_modes[3]; +struct JyersDWIN::EEPROM_Settings JyersDWIN::eeprom_settings{0}; +constexpr const char * const JyersDWIN::color_names[11]; +constexpr const char * const JyersDWIN::preheat_modes[3]; // Clear a part of the screen // 4=Entire screen // 3=Title bar and Menu area (default) // 2=Menu area // 1=Title bar -void CrealityDWIN::clearScreen(const uint8_t e/*=3*/) { +void JyersDWIN::clearScreen(const uint8_t e/*=3*/) { if (e == 1 || e == 3 || e == 4) dwinDrawRectangle(1, getColor(eeprom_settings.menu_top_bg, Color_Bg_Blue, false), 0, 0, DWIN_WIDTH, TITLE_HEIGHT); // Clear Title Bar if (e == 2 || e == 3) dwinDrawRectangle(1, Color_Bg_Black, 0, 31, DWIN_WIDTH, STATUS_Y); // Clear Menu Area if (e == 4) dwinDrawRectangle(1, Color_Bg_Black, 0, 31, DWIN_WIDTH, DWIN_HEIGHT); // Clear Popup Area } -void CrealityDWIN::drawFloat(const_float_t value, const uint8_t row, const bool selected/*=false*/, const uint8_t minunit/*=10*/) { +void JyersDWIN::drawFloat(const_float_t value, const uint8_t row, const bool selected/*=false*/, const uint8_t minunit/*=10*/) { const uint8_t digits = (uint8_t)floor(log10(abs(value))) + log10(minunit) + (minunit > 1); const uint16_t bColor = selected ? Select_Color : Color_Bg_Black; const uint16_t xpos = 240 - (digits * 8); @@ -471,67 +473,45 @@ void CrealityDWIN::drawFloat(const_float_t value, const uint8_t row, const bool } } -void CrealityDWIN::drawOption(const uint8_t value, const char * const * options, const uint8_t row, const bool selected/*=false*/, const bool color/*=false*/) { +void JyersDWIN::drawOption(const uint8_t value, const char * const * options, const uint8_t row, const bool selected/*=false*/, const bool color/*=false*/) { const uint16_t bColor = selected ? Select_Color : Color_Bg_Black, tColor = color ? getColor(value, Color_White, false) : Color_White; dwinDrawRectangle(1, bColor, 202, MBASE(row) + 14, 258, MBASE(row) - 2); dwinDrawString(false, DWIN_FONT_MENU, tColor, bColor, 202, MBASE(row) - 1, options[value]); } -uint16_t CrealityDWIN::getColor(const uint8_t color, const uint16_t original, const bool light/*=false*/) { +uint16_t JyersDWIN::getColor(const uint8_t color, const uint16_t original, const bool light/*=false*/) { switch (color) { - case Default: - return original; - break; - case White: - return light ? Color_Light_White : Color_White; - break; - case Green: - return light ? Color_Light_Green : Color_Green; - break; - case Cyan: - return light ? Color_Light_Cyan : Color_Cyan; - break; - case Blue: - return light ? Color_Light_Blue : Color_Blue; - break; - case Magenta: - return light ? Color_Light_Magenta : Color_Magenta; - break; - case Red: - return light ? Color_Light_Red : Color_Red; - break; - case Orange: - return light ? Color_Light_Orange : Color_Orange; - break; - case Yellow: - return light ? Color_Light_Yellow : Color_Yellow; - break; - case Brown: - return light ? Color_Light_Brown : Color_Brown; - break; - case Black: - return Color_Black; - break; + case White: return light ? Color_Light_White : Color_White; + case Green: return light ? Color_Light_Green : Color_Green; + case Cyan: return light ? Color_Light_Cyan : Color_Cyan; + case Blue: return light ? Color_Light_Blue : Color_Blue; + case Magenta: return light ? Color_Light_Magenta : Color_Magenta; + case Red: return light ? Color_Light_Red : Color_Red; + case Orange: return light ? Color_Light_Orange : Color_Orange; + case Yellow: return light ? Color_Light_Yellow : Color_Yellow; + case Brown: return light ? Color_Light_Brown : Color_Brown; + case Black: return Color_Black; + case Default: return original; } return Color_White; } -void CrealityDWIN::drawTitle(const char * const ctitle) { +void JyersDWIN::drawTitle(const char * const ctitle) { dwinDrawString(false, DWIN_FONT_HEAD, getColor(eeprom_settings.menu_top_txt, Color_White, false), Color_Bg_Blue, (DWIN_WIDTH - strlen(ctitle) * STAT_CHR_W) / 2, 5, ctitle); } -void CrealityDWIN::drawTitle(FSTR_P const ftitle) { +void JyersDWIN::drawTitle(FSTR_P const ftitle) { dwinDrawString(false, DWIN_FONT_HEAD, getColor(eeprom_settings.menu_top_txt, Color_White, false), Color_Bg_Blue, (DWIN_WIDTH - strlen_P(FTOP(ftitle)) * STAT_CHR_W) / 2, 5, ftitle); } void _decorateMenuItem(uint8_t row, uint8_t icon, bool more) { - if (icon) dwinIconShow(ICON, icon, 26, MBASE(row) - 3); //Draw Menu Icon + if (icon) dwinIconShow(ICON, icon, 26, MBASE(row) - 3); // Draw Menu Icon if (more) dwinIconShow(ICON, ICON_More, 226, MBASE(row) - 3); // Draw More Arrow - dwinDrawLine(crealityDWIN.getColor(crealityDWIN.eeprom_settings.menu_split_line, Line_Color, true), 16, MBASE(row) + 33, 256, MBASE(row) + 33); // Draw Menu Line + dwinDrawLine(jyersDWIN.getColor(jyersDWIN.eeprom_settings.menu_split_line, Line_Color, true), 16, MBASE(row) + 33, 256, MBASE(row) + 33); // Draw Menu Line } -void CrealityDWIN::drawMenuItem(const uint8_t row, const uint8_t icon/*=0*/, const char * const label1, const char * const label2, const bool more/*=false*/, const bool centered/*=false*/) { - const uint8_t label_offset_y = (label1 || label2) ? MENU_CHR_H * 3 / 5 : 0, +void JyersDWIN::drawMenuItem(const uint8_t row, const uint8_t icon/*=0*/, const char * const label1, const char * const label2, const bool more/*=false*/, const bool centered/*=false*/) { + const uint8_t label_offset_y = label2 ? MENU_CHR_H * 3 / 5 : 0, label1_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (label1 ? strlen(label1) : 0) * MENU_CHR_W) / 2), label2_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (label2 ? strlen(label2) : 0) * MENU_CHR_W) / 2); if (label1) dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, label1_offset_x, MBASE(row) - 1 - label_offset_y, label1); // Draw Label @@ -539,8 +519,8 @@ void CrealityDWIN::drawMenuItem(const uint8_t row, const uint8_t icon/*=0*/, con _decorateMenuItem(row, icon, more); } -void CrealityDWIN::drawMenuItem(const uint8_t row, const uint8_t icon/*=0*/, FSTR_P const flabel1, FSTR_P const flabel2, const bool more/*=false*/, const bool centered/*=false*/) { - const uint8_t label_offset_y = (flabel1 || flabel2) ? MENU_CHR_H * 3 / 5 : 0, +void JyersDWIN::drawMenuItem(const uint8_t row, const uint8_t icon/*=0*/, FSTR_P const flabel1, FSTR_P const flabel2, const bool more/*=false*/, const bool centered/*=false*/) { + const uint8_t label_offset_y = flabel2 ? MENU_CHR_H * 3 / 5 : 0, label1_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (flabel1 ? strlen_P(FTOP(flabel1)) : 0) * MENU_CHR_W) / 2), label2_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (flabel2 ? strlen_P(FTOP(flabel2)) : 0) * MENU_CHR_W) / 2); if (flabel1) dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, label1_offset_x, MBASE(row) - 1 - label_offset_y, flabel1); // Draw Label @@ -548,8 +528,8 @@ void CrealityDWIN::drawMenuItem(const uint8_t row, const uint8_t icon/*=0*/, FST _decorateMenuItem(row, icon, more); } -void CrealityDWIN::drawCheckbox(const uint8_t row, const bool value) { - #if ENABLED(DWIN_CREALITY_LCD_CUSTOM_ICONS) // Draw appropriate checkbox icon +void JyersDWIN::drawCheckbox(const uint8_t row, const bool value) { + #if ENABLED(DWIN_CREALITY_LCD_CUSTOM_ICONS) // Draw appropriate checkbox icon dwinIconShow(ICON, (value ? ICON_Checkbox_T : ICON_Checkbox_F), 226, MBASE(row) - 3); #else // Draw a basic checkbox using rectangles and lines dwinDrawRectangle(1, Color_Bg_Black, 226, MBASE(row) - 3, 226 + 20, MBASE(row) - 3 + 20); @@ -565,15 +545,14 @@ void CrealityDWIN::drawCheckbox(const uint8_t row, const bool value) { #endif } -void CrealityDWIN::drawMenu(const uint8_t menu, const uint8_t select/*=0*/, const uint8_t scroll/*=0*/) { +void JyersDWIN::drawMenu(const uint8_t menu, const uint8_t select/*=0*/, const uint8_t scroll/*=0*/) { if (active_menu != menu) { last_menu = active_menu; if (process == Menu) last_selection = selection; } selection = _MIN(select, getMenuSize(menu)); scrollpos = scroll; - if (selection - scrollpos > MROWS) - scrollpos = selection - MROWS; + if (selection - scrollpos > MROWS) scrollpos = selection - MROWS; // i.e., NOLESS(scrollpos, selection - MROWS); process = Menu; active_menu = menu; clearScreen(); @@ -582,7 +561,7 @@ void CrealityDWIN::drawMenu(const uint8_t menu, const uint8_t select/*=0*/, cons dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); } -void CrealityDWIN::redrawMenu(const bool lastproc/*=true*/, const bool lastsel/*=false*/, const bool lastmenu/*=false*/) { +void JyersDWIN::redrawMenu(const bool lastproc/*=true*/, const bool lastsel/*=false*/, const bool lastmenu/*=false*/) { switch (lastproc ? last_process : process) { case Menu: drawMenu(lastmenu ? last_menu : active_menu, lastsel ? last_selection : selection, lastmenu ? 0 : scrollpos); @@ -594,15 +573,16 @@ void CrealityDWIN::redrawMenu(const bool lastproc/*=true*/, const bool lastsel/* } } -void CrealityDWIN::redrawScreen() { +void JyersDWIN::redrawScreen() { redrawMenu(false); drawStatusArea(true); updateStatusBar(true); } -/* Primary Menus and Screen Elements */ - -void CrealityDWIN::mainMenuIcons() { +// +// Primary Menus and Screen Elements +// +void JyersDWIN::mainMenuIcons() { if (selection == 0) { dwinIconShow(ICON, ICON_Print_1, 17, 130); dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 17, 130, 126, 229); @@ -653,7 +633,7 @@ void CrealityDWIN::mainMenuIcons() { #endif } -void CrealityDWIN::drawMainMenu(const uint8_t select/*=0*/) { +void JyersDWIN::drawMainMenu(const uint8_t select/*=0*/) { process = Main; active_menu = MainMenu; selection = select; @@ -664,7 +644,7 @@ void CrealityDWIN::drawMainMenu(const uint8_t select/*=0*/) { mainMenuIcons(); } -void CrealityDWIN::printScreenIcons() { +void JyersDWIN::printScreenIcons() { if (selection == 0) { dwinIconShow(ICON, ICON_Setup_1, 8, 252); dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 8, 252, 87, 351); @@ -707,7 +687,7 @@ void CrealityDWIN::printScreenIcons() { } } -void CrealityDWIN::drawPrintScreen() { +void JyersDWIN::drawPrintScreen() { process = Print; selection = 0; clearScreen(); @@ -725,7 +705,7 @@ void CrealityDWIN::drawPrintScreen() { drawPrintFilename(true); } -void CrealityDWIN::drawPrintFilename(const bool reset/*=false*/) { +void JyersDWIN::drawPrintFilename(const bool reset/*=false*/) { typedef TextScroller<30> Scroller; static Scroller scroller; if (reset) scroller.reset(); @@ -739,7 +719,7 @@ void CrealityDWIN::drawPrintFilename(const bool reset/*=false*/) { } } -void CrealityDWIN::drawPrintProgressBar() { +void JyersDWIN::drawPrintProgressBar() { uint8_t printpercent = sdprint ? card.percentDone() : (ui._get_progress() / 100); dwinIconShow(ICON, ICON_Bar, 15, 93); dwinDrawRectangle(1, BarFill_Color, 16 + printpercent * 240 / 100, 93, 256, 113); @@ -749,7 +729,7 @@ void CrealityDWIN::drawPrintProgressBar() { #if ENABLED(SET_REMAINING_TIME) - void CrealityDWIN::drawPrintProgressRemain() { + void JyersDWIN::drawPrintProgressRemain() { uint16_t remainingtime = ui.get_remaining_time(); dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 176, 187, remainingtime / 3600); dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 200, 187, (remainingtime % 3600) / 60); @@ -763,7 +743,7 @@ void CrealityDWIN::drawPrintProgressBar() { #endif -void CrealityDWIN::drawPrintProgressElapsed() { +void JyersDWIN::drawPrintProgressElapsed() { duration_t elapsed = print_job_timer.duration(); dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 42, 187, elapsed.value / 3600); dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 66, 187, (elapsed.value % 3600) / 60); @@ -775,7 +755,7 @@ void CrealityDWIN::drawPrintProgressElapsed() { dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 58, 187, F(":")); } -void CrealityDWIN::drawPrintConfirm() { +void JyersDWIN::drawPrintConfirm() { drawPrintScreen(); process = Confirm; popup = Complete; @@ -785,7 +765,7 @@ void CrealityDWIN::drawPrintConfirm() { dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 85, 281, 188, 322); } -void CrealityDWIN::drawSDItem(const uint8_t item, const uint8_t row) { +void JyersDWIN::drawSDItem(const uint8_t item, const uint8_t row) { if (item == 0) drawMenuItem(0, ICON_Back, card.flag.workDirIsRoot ? F("Back") : F("..")); else { @@ -806,7 +786,7 @@ void CrealityDWIN::drawSDItem(const uint8_t item, const uint8_t row) { } } -void CrealityDWIN::drawSDList(const bool removed/*=false*/) { +void JyersDWIN::drawSDList(const bool removed/*=false*/) { clearScreen(); drawTitle("Select File"); selection = 0; @@ -824,7 +804,7 @@ void CrealityDWIN::drawSDList(const bool removed/*=false*/) { dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(0) - 18, 14, MBASE(0) + 33); } -void CrealityDWIN::drawStatusArea(const bool icons/*=false*/) { +void JyersDWIN::drawStatusArea(const bool icons/*=false*/) { if (icons) dwinDrawRectangle(1, Color_Bg_Black, 0, STATUS_Y, DWIN_WIDTH, DWIN_HEIGHT - 1); @@ -952,7 +932,7 @@ void CrealityDWIN::drawStatusArea(const bool icons/*=false*/) { dwinUpdateLCD(); } -void CrealityDWIN::drawPopup(FSTR_P const line1, FSTR_P const line2, FSTR_P const line3, uint8_t mode, uint8_t icon/*=0*/) { +void JyersDWIN::drawPopup(FSTR_P const line1, FSTR_P const line2, FSTR_P const line3, uint8_t mode, uint8_t icon/*=0*/) { if (process != Confirm && process != Popup && process != Wait) last_process = process; if ((process == Menu || process == Wait) && mode == Popup) last_selection = selection; process = mode; @@ -979,10 +959,10 @@ void CrealityDWIN::drawPopup(FSTR_P const line1, FSTR_P const line2, FSTR_P cons } void MarlinUI::kill_screen(FSTR_P const error, FSTR_P const) { - crealityDWIN.drawPopup(F("Printer Kill Reason:"), error, F("Restart Required"), Wait, ICON_BLTouch); + jyersDWIN.drawPopup(F("Printer Kill Reason:"), error, F("Restart Required"), Wait, ICON_BLTouch); } -void CrealityDWIN::popupSelect() { +void JyersDWIN::popupSelect() { const uint16_t c1 = selection ? Color_Bg_Window : getColor(eeprom_settings.highlight_box, Color_White), c2 = selection ? getColor(eeprom_settings.highlight_box, Color_White) : Color_Bg_Window; dwinDrawRectangle(0, c1, 25, 279, 126, 318); @@ -991,7 +971,7 @@ void CrealityDWIN::popupSelect() { dwinDrawRectangle(0, c2, 144, 278, 247, 319); } -void CrealityDWIN::updateStatusBar(const bool refresh/*=false*/) { +void JyersDWIN::updateStatusBar(const bool refresh/*=false*/) { typedef TextScroller<30> Scroller; static bool new_msg; static Scroller scroller; @@ -1019,9 +999,11 @@ void CrealityDWIN::updateStatusBar(const bool refresh/*=false*/) { } } -/* Menu Item Config */ +// +// Menu Item Config +// -void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool draw/*=true*/) { +void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool draw/*=true*/) { const uint8_t row = item - scrollpos; #if HAS_LEVELING static bool level_state; @@ -2064,7 +2046,7 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool } break; - #if HAS_HOTEND || HAS_HEATED_BED + #if ANY(PIDTEMP, PIDTEMPBED) case PID: #define PID_BACK 0 @@ -2219,9 +2201,8 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool drawMenuItem(row, ICON_Version, F("Kp Value")); drawFloat(thermalManager.temp_bed.pid.p(), row, false, 100); } - else { - modifyValue(thermalManager.temp_bed.pid.Kp, 0, 5000, 100, thermalManager.updatePID); - } + else + modifyValue(thermalManager.temp_bed.pid.Kp, 0, 5000, 100, []{ thermalManager.temp_bed.pid.reset(); }); break; case BEDPID_KI: if (draw) { @@ -2229,7 +2210,7 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool drawFloat(thermalManager.temp_bed.pid.i(), row, false, 100); } else - modifyValue(thermalManager.temp_bed.pid.Ki, 0, 5000, 100, thermalManager.updatePID); + modifyValue(thermalManager.temp_bed.pid.Ki, 0, 5000, 100, []{ thermalManager.temp_bed.pid.reset(); }); break; case BEDPID_KD: if (draw) { @@ -2237,11 +2218,11 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool drawFloat(thermalManager.temp_bed.pid.d(), row, false, 100); } else - modifyValue(thermalManager.temp_bed.pid.Kd, 0, 5000, 100, thermalManager.updatePID); + modifyValue(thermalManager.temp_bed.pid.Kd, 0, 5000, 100, []{ thermalManager.temp_bed.pid.reset(); }); break; } break; - #endif // HAS_HEATED_BED + #endif // PIDTEMPBED #if HAS_PREHEAT #define _PREHEAT_SUBMENU_CASE(N) case Preheat##N: preheat_submenu((N) - 1, item, TEMP_PREHEAT##N); break; @@ -3943,7 +3924,7 @@ void CrealityDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool } } -FSTR_P CrealityDWIN::getMenuTitle(const uint8_t menu) { +FSTR_P JyersDWIN::getMenuTitle(const uint8_t menu) { switch (menu) { case MainMenu: return GET_TEXT_F(MSG_MAIN_MENU); case Prepare: return GET_TEXT_F(MSG_PREPARE); @@ -4020,7 +4001,7 @@ FSTR_P CrealityDWIN::getMenuTitle(const uint8_t menu) { return F(""); } -uint8_t CrealityDWIN::getMenuSize(const uint8_t menu) { +uint8_t JyersDWIN::getMenuSize(const uint8_t menu) { switch (menu) { case Prepare: return PREPARE_TOTAL; case HomeMenu: return HOME_TOTAL; @@ -4095,9 +4076,11 @@ uint8_t CrealityDWIN::getMenuSize(const uint8_t menu) { return 0; } -/* Popup Config */ +// +// Popup Config +// -void CrealityDWIN::popupHandler(const PopupID popupid, const bool option/*=false*/) { +void JyersDWIN::popupHandler(const PopupID popupid, const bool option/*=false*/) { popup = last_popup = popupid; switch (popupid) { case Pause: drawPopup(F("Pause Print"), F(""), F(""), Popup); break; @@ -4124,7 +4107,7 @@ void CrealityDWIN::popupHandler(const PopupID popupid, const bool option/*=false } } -void CrealityDWIN::confirmHandler(PopupID popupid) { +void JyersDWIN::confirmHandler(PopupID popupid) { popup = popupid; switch (popupid) { case FilInsert: drawPopup(F("Insert Filament"), F("Press to Continue"), F(""), Confirm); break; @@ -4136,9 +4119,11 @@ void CrealityDWIN::confirmHandler(PopupID popupid) { } } -/* Navigation and Control */ +// +// Navigation and Control +// -void CrealityDWIN::mainMenuControl() { +void JyersDWIN::mainMenuControl() { EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_CW && selection < PAGE_COUNT - 1) { @@ -4159,13 +4144,13 @@ void CrealityDWIN::mainMenuControl() { dwinUpdateLCD(); } -void CrealityDWIN::menuControl() { +void JyersDWIN::menuControl() { EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_CW && selection < getMenuSize(active_menu)) { dwinDrawRectangle(1, Color_Bg_Black, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); selection++; // Select Down - if (selection > scrollpos+MROWS) { + if (selection > scrollpos + MROWS) { scrollpos++; dwinFrameAreaMove(1, 2, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); menuItemHandler(active_menu, selection); @@ -4187,7 +4172,7 @@ void CrealityDWIN::menuControl() { dwinUpdateLCD(); } -void CrealityDWIN::valueControl() { +void JyersDWIN::valueControl() { EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_CW) @@ -4248,7 +4233,7 @@ void CrealityDWIN::valueControl() { } } -void CrealityDWIN::optionControl() { +void JyersDWIN::optionControl() { EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_CW) @@ -4286,7 +4271,7 @@ void CrealityDWIN::optionControl() { dwinUpdateLCD(); } -void CrealityDWIN::fileControl() { +void JyersDWIN::fileControl() { typedef TextScroller Scroller; static Scroller scroller; EncoderState encoder_diffState = encoderReceiveAnalyze(); @@ -4294,8 +4279,7 @@ void CrealityDWIN::fileControl() { if (selection > 0) { card.selectFileByIndexSorted(selection - 1); char * const filename = card.longest_filename(); - size_t len = strlen(filename); - size_t pos = len; + size_t len = strlen(filename), pos = len; if (!card.flag.filenameIsDir) while (pos && filename[pos] != '.') pos--; if (pos > MENU_CHAR_LIMIT) { @@ -4364,7 +4348,7 @@ void CrealityDWIN::fileControl() { dwinUpdateLCD(); } -void CrealityDWIN::printScreenControl() { +void JyersDWIN::printScreenControl() { EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_CW && selection < PRINT_COUNT - 1) { @@ -4414,7 +4398,7 @@ void CrealityDWIN::printScreenControl() { dwinUpdateLCD(); } -void CrealityDWIN::popupControl() { +void JyersDWIN::popupControl() { EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_CW && selection < 1) { @@ -4559,7 +4543,7 @@ void CrealityDWIN::popupControl() { dwinUpdateLCD(); } -void CrealityDWIN::confirmControl() { +void JyersDWIN::confirmControl() { EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_ENTER) { @@ -4584,12 +4568,14 @@ void CrealityDWIN::confirmControl() { dwinUpdateLCD(); } -/* In-Menu Value Modification */ +// +// In-Menu Value Modification +// -void CrealityDWIN::setupValue(const_float_t value, const_float_t min, const_float_t max, const_float_t unit, const uint8_t type) { - if (TERN0(HAS_HOTEND, valuepointer == &thermalManager.temp_hotend[0].pid.Ki) || TERN0(HAS_HEATED_BED, valuepointer == &thermalManager.temp_bed.pid.Ki)) +void JyersDWIN::setupValue(const_float_t value, const_float_t min, const_float_t max, const_float_t unit, const uint8_t type) { + if (TERN0(PIDTEMP, valuepointer == &thermalManager.temp_hotend[0].pid.Ki) || TERN0(PIDTEMPBED, valuepointer == &thermalManager.temp_bed.pid.Ki)) tempvalue = unscalePID_i(value) * unit; - else if (TERN0(HAS_HOTEND, valuepointer == &thermalManager.temp_hotend[0].pid.Kd) || TERN0(HAS_HEATED_BED, valuepointer == &thermalManager.temp_bed.pid.Kd)) + else if (TERN0(PIDTEMP, valuepointer == &thermalManager.temp_hotend[0].pid.Kd) || TERN0(PIDTEMPBED, valuepointer == &thermalManager.temp_bed.pid.Kd)) tempvalue = unscalePID_d(value) * unit; else tempvalue = value * unit; @@ -4602,38 +4588,38 @@ void CrealityDWIN::setupValue(const_float_t value, const_float_t min, const_floa drawFloat(tempvalue / unit, selection - scrollpos, true, valueunit); } -void CrealityDWIN::modifyValue(float &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { +void JyersDWIN::modifyValue(float &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; setupValue((float)value, min, max, unit, 0); } -void CrealityDWIN::modifyValue(uint8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { +void JyersDWIN::modifyValue(uint8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; setupValue((float)value, min, max, unit, 1); } -void CrealityDWIN::modifyValue(uint16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { +void JyersDWIN::modifyValue(uint16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; setupValue((float)value, min, max, unit, 2); } -void CrealityDWIN::modifyValue(int16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { +void JyersDWIN::modifyValue(int16_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; setupValue((float)value, min, max, unit, 3); } -void CrealityDWIN::modifyValue(uint32_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { +void JyersDWIN::modifyValue(uint32_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; setupValue((float)value, min, max, unit, 4); } -void CrealityDWIN::modifyValue(int8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { +void JyersDWIN::modifyValue(int8_t &value, const_float_t min, const_float_t max, const_float_t unit, void (*f)()/*=nullptr*/) { valuepointer = &value; funcpointer = f; setupValue((float)value, min, max, unit, 5); } -void CrealityDWIN::modifyOption(const uint8_t value, const char * const * options, const uint8_t max) { +void JyersDWIN::modifyOption(const uint8_t value, const char * const * options, const uint8_t max) { tempvalue = value; valuepointer = const_cast(options); valuemin = 0; @@ -4643,9 +4629,11 @@ void CrealityDWIN::modifyOption(const uint8_t value, const char * const * option drawOption(value, options, selection - scrollpos, true); } -/* Main Functions */ +// +// Main Functions +// -void CrealityDWIN::updateStatus(const char * const text) { +void JyersDWIN::updateStatus(const char * const text) { if (strncmp_P(text, PSTR(""), 3) == 0) { for (uint8_t i = 0; i < _MIN((size_t)LONG_FILENAME_LENGTH, strlen(text)); ++i) filename[i] = text[i + 3]; filename[_MIN((size_t)LONG_FILENAME_LENGTH - 1, strlen(text))] = '\0'; @@ -4657,7 +4645,7 @@ void CrealityDWIN::updateStatus(const char * const text) { } } -void CrealityDWIN::startPrint(const bool sd) { +void JyersDWIN::startPrint(const bool sd) { sdprint = sd; if (!printing) { printing = true; @@ -4680,7 +4668,7 @@ void CrealityDWIN::startPrint(const bool sd) { } } -void CrealityDWIN::stopPrint() { +void JyersDWIN::stopPrint() { printing = false; sdprint = false; thermalManager.cooldown(); @@ -4689,7 +4677,7 @@ void CrealityDWIN::stopPrint() { drawPrintConfirm(); } -void CrealityDWIN::update() { +void JyersDWIN::update() { stateUpdate(); screenUpdate(); switch (process) { @@ -4704,13 +4692,13 @@ void CrealityDWIN::update() { } } -void MarlinUI::update() { crealityDWIN.update(); } +void MarlinUI::update() { jyersDWIN.update(); } #if HAS_LCD_BRIGHTNESS void MarlinUI::_set_brightness() { dwinLCDBrightness(backlight ? brightness : 0); } #endif -void CrealityDWIN::stateUpdate() { +void JyersDWIN::stateUpdate() { if ((print_job_timer.isRunning() || print_job_timer.isPaused()) != printing) { if (!printing) startPrint(card.isFileOpen() || TERN0(POWER_LOSS_RECOVERY, recovery.valid())); else stopPrint(); @@ -4741,7 +4729,7 @@ void CrealityDWIN::stateUpdate() { #endif } -void CrealityDWIN::screenUpdate() { +void JyersDWIN::screenUpdate() { const millis_t ms = millis(); static millis_t scrltime = 0; if (ELAPSED(ms, scrltime)) { @@ -4867,20 +4855,20 @@ void CrealityDWIN::screenUpdate() { } } -void CrealityDWIN::audioFeedback(const bool success/*=true*/) { +void JyersDWIN::audioFeedback(const bool success/*=true*/) { if (ui.sound_on) DONE_BUZZ(success); else updateStatus(success ? "Success" : "Failed"); } -void CrealityDWIN::saveSettings(char * const buff) { +void JyersDWIN::saveSettings(char * const buff) { TERN_(AUTO_BED_LEVELING_UBL, eeprom_settings.tilt_grid_size = mesh_conf.tilt_grid - 1); eeprom_settings.corner_pos = corner_pos * 10; memcpy(buff, &eeprom_settings, _MIN(sizeof(eeprom_settings), eeprom_data_size)); } -void CrealityDWIN::loadSettings(const char * const buff) { +void JyersDWIN::loadSettings(const char * const buff) { memcpy(&eeprom_settings, buff, _MIN(sizeof(eeprom_settings), eeprom_data_size)); TERN_(AUTO_BED_LEVELING_UBL, mesh_conf.tilt_grid = eeprom_settings.tilt_grid_size + 1); if (eeprom_settings.corner_pos == 0) eeprom_settings.corner_pos = 325; @@ -4895,7 +4883,7 @@ void CrealityDWIN::loadSettings(const char * const buff) { #endif } -void CrealityDWIN::resetSettings() { +void JyersDWIN::resetSettings() { eeprom_settings.time_format_textual = false; TERN_(AUTO_BED_LEVELING_UBL, eeprom_settings.tilt_grid_size = 0); eeprom_settings.corner_pos = 325; @@ -4932,17 +4920,17 @@ void MarlinUI::init_lcd() { dwinJPGShowAndCache(3); dwinJPGCacheTo1(Language_English); - crealityDWIN.redrawScreen(); + jyersDWIN.redrawScreen(); } #if ENABLED(ADVANCED_PAUSE_FEATURE) void MarlinUI::pause_show_message(const PauseMessage message, const PauseMode mode/*=PAUSE_MODE_SAME*/, const uint8_t extruder/*=active_extruder*/) { switch (message) { - case PAUSE_MESSAGE_INSERT: crealityDWIN.confirmHandler(FilInsert); break; + case PAUSE_MESSAGE_INSERT: jyersDWIN.confirmHandler(FilInsert); break; case PAUSE_MESSAGE_PURGE: - case PAUSE_MESSAGE_OPTION: crealityDWIN.popupHandler(PurgeMore); break; - case PAUSE_MESSAGE_HEAT: crealityDWIN.confirmHandler(HeaterTime); break; - case PAUSE_MESSAGE_WAITING: crealityDWIN.drawPrintScreen(); break; + case PAUSE_MESSAGE_OPTION: jyersDWIN.popupHandler(PurgeMore); break; + case PAUSE_MESSAGE_HEAT: jyersDWIN.confirmHandler(HeaterTime); break; + case PAUSE_MESSAGE_WAITING: jyersDWIN.drawPrintScreen(); break; default: break; } } diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.h b/Marlin/src/lcd/e3v2/jyersui/dwin.h index 450345d1a2f3..6282adbd01ba 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.h +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.h @@ -76,9 +76,9 @@ enum menuID : uint8_t { ColorSettings, Advanced, ProbeMenu, - #if HAS_TRINAMIC_CONFIG - TMCMenu, - #endif + #if HAS_TRINAMIC_CONFIG + TMCMenu, + #endif Info, Leveling, LevelManual, @@ -148,7 +148,7 @@ enum colorID : uint8_t { #define Confirm_Color 0x34B9 #define Cancel_Color 0x3186 -class CrealityDWIN { +class JyersDWIN { public: static constexpr size_t eeprom_data_size = 48; static struct EEPROM_Settings { // use bit fields to save space, max 48 bytes @@ -245,4 +245,4 @@ class CrealityDWIN { static void resetSettings(); }; -extern CrealityDWIN crealityDWIN; +extern JyersDWIN jyersDWIN; diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index 2d40baa9d13a..8517e2ec2324 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -1601,7 +1601,7 @@ void MarlinUI::host_status() { TERN_(EXTENSIBLE_UI, ExtUI::onStatusChanged(status_message)); TERN_(DWIN_CREALITY_LCD, dwinStatusChanged(status_message)); TERN_(DWIN_LCD_PROUI, DWIN_CheckStatusMessage()); - TERN_(DWIN_CREALITY_LCD_JYERSUI, crealityDWIN.updateStatus(status_message)); + TERN_(DWIN_CREALITY_LCD_JYERSUI, jyersDWIN.updateStatus(status_message)); } #if ENABLED(STATUS_MESSAGE_SCROLLING) diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index 3e2b2386bd9c..7ef697014199 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -539,7 +539,7 @@ typedef struct SettingsDataStruct { #if ENABLED(DWIN_LCD_PROUI) uint8_t dwin_data[eeprom_data_size]; #elif ENABLED(DWIN_CREALITY_LCD_JYERSUI) - uint8_t dwin_settings[crealityDWIN.eeprom_data_size]; + uint8_t dwin_settings[jyersDWIN.eeprom_data_size]; #endif // @@ -1618,8 +1618,8 @@ void MarlinSettings::postprocess() { #if ENABLED(DWIN_CREALITY_LCD_JYERSUI) { _FIELD_TEST(dwin_settings); - char dwin_settings[crealityDWIN.eeprom_data_size] = { 0 }; - crealityDWIN.saveSettings(dwin_settings); + char dwin_settings[jyersDWIN.eeprom_data_size] = { 0 }; + jyersDWIN.saveSettings(dwin_settings); EEPROM_WRITE(dwin_settings); } #endif @@ -2679,10 +2679,10 @@ void MarlinSettings::postprocess() { } #elif ENABLED(DWIN_CREALITY_LCD_JYERSUI) { - const char dwin_settings[crealityDWIN.eeprom_data_size] = { 0 }; + const char dwin_settings[jyersDWIN.eeprom_data_size] = { 0 }; _FIELD_TEST(dwin_settings); EEPROM_READ(dwin_settings); - if (!validating) crealityDWIN.loadSettings(dwin_settings); + if (!validating) jyersDWIN.loadSettings(dwin_settings); } #endif @@ -3172,7 +3172,7 @@ void MarlinSettings::reset() { #endif #endif - TERN_(DWIN_CREALITY_LCD_JYERSUI, crealityDWIN.resetSettings()); + TERN_(DWIN_CREALITY_LCD_JYERSUI, jyersDWIN.resetSettings()); // // Case Light Brightness From be18edd604d10aba6fb7a3210e90bf711cc436dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Krzysztof=20B=C5=82a=C5=BCewicz?= Date: Wed, 28 Jun 2023 05:51:47 +0200 Subject: [PATCH 327/427] =?UTF-8?q?=F0=9F=9A=B8=20JyersUI=20MPC=20menu=20(?= =?UTF-8?q?#26017)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 142 +++++++++++++++++++++++---- Marlin/src/lcd/e3v2/jyersui/dwin.h | 5 +- 2 files changed, 127 insertions(+), 20 deletions(-) diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index c43afab100d4..33495d82ba6d 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -1982,8 +1982,9 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #define TEMP_HOTEND (TEMP_BACK + ENABLED(HAS_HOTEND)) #define TEMP_BED (TEMP_HOTEND + ENABLED(HAS_HEATED_BED)) #define TEMP_FAN (TEMP_BED + ENABLED(HAS_FAN)) - #define TEMP_PID (TEMP_FAN + ANY(HAS_HOTEND, HAS_HEATED_BED)) - #define TEMP_PREHEAT1 (TEMP_PID + (PREHEAT_COUNT >= 1)) + #define TEMP_PID (TEMP_FAN + ANY(PIDTEMP, PIDTEMPBED)) + #define TEMP_MPC (TEMP_PID + ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU)) + #define TEMP_PREHEAT1 (TEMP_MPC + (PREHEAT_COUNT >= 1)) #define TEMP_PREHEAT2 (TEMP_PREHEAT1 + (PREHEAT_COUNT >= 2)) #define TEMP_PREHEAT3 (TEMP_PREHEAT2 + (PREHEAT_COUNT >= 3)) #define TEMP_PREHEAT4 (TEMP_PREHEAT3 + (PREHEAT_COUNT >= 4)) @@ -2027,7 +2028,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra modifyValue(thermalManager.fan_speed[0], MIN_FAN_SPEED, MAX_FAN_SPEED, 1); break; #endif - #if HAS_HOTEND || HAS_HEATED_BED + #if ANY(PIDTEMP, PIDTEMPBED) case TEMP_PID: if (draw) drawMenuItem(row, ICON_Step, F("PID"), nullptr, true); @@ -2035,6 +2036,14 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawMenu(PID); break; #endif + #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) + case TEMP_MPC: + if (draw) + drawMenuItem(row, ICON_Step, F("MPC"), nullptr, true); + else + drawMenu(MPC); + break; + #endif #define _TEMP_PREHEAT_CASE(N) \ case TEMP_PREHEAT##N: { \ @@ -2050,8 +2059,8 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra case PID: #define PID_BACK 0 - #define PID_HOTEND (PID_BACK + ENABLED(HAS_HOTEND)) - #define PID_BED (PID_HOTEND + ENABLED(HAS_HEATED_BED)) + #define PID_HOTEND (PID_BACK + ENABLED(PIDTEMP)) + #define PID_BED (PID_HOTEND + ENABLED(PIDTEMPBED)) #define PID_CYCLES (PID_BED + 1) #define PID_TOTAL PID_CYCLES @@ -2064,7 +2073,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra else drawMenu(TempMenu, TEMP_PID); break; - #if HAS_HOTEND + #if ENABLED(PIDTEMP) case PID_HOTEND: if (draw) drawMenuItem(row, ICON_HotendTemp, F("Hotend"), nullptr, true); @@ -2072,7 +2081,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawMenu(HotendPID); break; #endif - #if HAS_HEATED_BED + #if ENABLED(PIDTEMPBED) case PID_BED: if (draw) drawMenuItem(row, ICON_BedTemp, F("Bed"), nullptr, true); @@ -2090,9 +2099,9 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra break; } break; - #endif // HAS_HOTEND || HAS_HEATED_BED + #endif // PIDTEMP || PIDTEMPBED - #if HAS_HOTEND + #if ENABLED(PIDTEMP) case HotendPID: #define HOTENDPID_BACK 0 @@ -2156,9 +2165,9 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra break; } break; - #endif // HAS_HOTEND + #endif // PIDTEMP - #if HAS_HEATED_BED + #if ENABLED(PIDTEMPBED) case BedPID: #define BEDPID_BACK 0 @@ -2224,6 +2233,94 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra break; #endif // PIDTEMPBED + #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) + case MPC: + + #define MPCMENU_BACK 0 + #define MPCMENU_AUTOTUNE (MPCMENU_BACK + ENABLED(MPC_AUTOTUNE_MENU)) + #define MPCMENU_HEATER_POWER (MPCMENU_AUTOTUNE + ENABLED(MPC_EDIT_MENU)) + #define MPCMENU_BLOCK_HEAT_CAPACITY (MPCMENU_HEATER_POWER + ENABLED(MPC_EDIT_MENU)) + #define MPCMENU_SENSOR_RESPONSIVENESS (MPCMENU_BLOCK_HEAT_CAPACITY + ENABLED(MPC_EDIT_MENU)) + #define MPCMENU_AMBIENT_XFER_COEFF (MPCMENU_SENSOR_RESPONSIVENESS + ENABLED(MPC_EDIT_MENU)) + #define MPCMENU_AMBIENT_XFER_COEFF_FAN (MPCMENU_AMBIENT_XFER_COEFF + ALL(MPC_EDIT_MENU, MPC_INCLUDE_FAN)) + #define MPCMENU_TOTAL MPCMENU_AMBIENT_XFER_COEFF_FAN + + switch (item) { + case MPCMENU_BACK: + if (draw) + drawMenuItem(row, ICON_Back, F("Back")); + else + drawMenu(TempMenu, TEMP_MPC); + break; + + #if ENABLED(MPC_AUTOTUNE_MENU) + case MPCMENU_AUTOTUNE: + if (draw) + drawMenuItem(row, ICON_HotendTemp, F("Autotune")); + else { + popupHandler(MPCWait); + thermalManager.MPC_autotune(active_extruder, Temperature::MPCTuningType::AUTO); + redrawMenu(); + } + break; + #endif + + #if ENABLED(MPC_EDIT_MENU) + case MPCMENU_HEATER_POWER: + if (draw) { + drawMenuItem(row, ICON_Version, F("Heater Power")); + drawFloat(thermalManager.temp_hotend[0].mpc.heater_power, row, false, 1); + } + else + modifyValue(thermalManager.temp_hotend[0].mpc.heater_power, 1, 200, 1); + break; + + case MPCMENU_BLOCK_HEAT_CAPACITY: + if (draw) { + drawMenuItem(row, ICON_Version, F("Block Heat Cap.")); + drawFloat(thermalManager.temp_hotend[0].mpc.block_heat_capacity, row, false, 100); + } + else + modifyValue(thermalManager.temp_hotend[0].mpc.block_heat_capacity, 0, 40, 100); + break; + + case MPCMENU_SENSOR_RESPONSIVENESS: + if (draw) { + drawMenuItem(row, ICON_Version, F("Sensor Resp.")); + drawFloat(thermalManager.temp_hotend[0].mpc.sensor_responsiveness, row, false, 10000); + } + else + modifyValue(thermalManager.temp_hotend[0].mpc.sensor_responsiveness, 0, 1, 10000); + break; + + case MPCMENU_AMBIENT_XFER_COEFF: + if (draw) { + drawMenuItem(row, ICON_Version, F("Amb. xfer coeff")); + drawFloat(thermalManager.temp_hotend[0].mpc.ambient_xfer_coeff_fan0, row, false, 10000); + } + else + modifyValue(thermalManager.temp_hotend[0].mpc.ambient_xfer_coeff_fan0, 0, 1, 10000); + break; + + #if ENABLED(MPC_INCLUDE_FAN) + case MPCMENU_AMBIENT_XFER_COEFF_FAN: { + static float fan255_adjustment; + if (draw) { + drawMenuItem(row, ICON_Version, F("Amb. xfer adj.")); + fan255_adjustment = thermalManager.temp_hotend[0].fanCoefficient(); + drawFloat(fan255_adjustment, row, false, 10000); + } + else + modifyValue(fan255_adjustment, 0, 1, 10000, []{ thermalManager.temp_hotend[0].applyFanAdjustment(fan255_adjustment); }); + } break; + #endif + + #endif // MPC_EDIT_MENU + } + break; + + #endif // MPC_EDIT_MENU || MPC_AUTOTUNE_MENU + #if HAS_PREHEAT #define _PREHEAT_SUBMENU_CASE(N) case Preheat##N: preheat_submenu((N) - 1, item, TEMP_PREHEAT##N); break; REPEAT_1(PREHEAT_COUNT, _PREHEAT_SUBMENU_CASE) @@ -3950,15 +4047,18 @@ FSTR_P JyersDWIN::getMenuTitle(const uint8_t menu) { #endif case Control: return GET_TEXT_F(MSG_CONTROL); case TempMenu: return GET_TEXT_F(MSG_TEMPERATURE); - #if HAS_HOTEND || HAS_HEATED_BED + #if ANY(PIDTEMP, PIDTEMPBED) case PID: return F("PID Menu"); #endif - #if HAS_HOTEND + #if ENABLED(PIDTEMP) case HotendPID: return F("Hotend PID Settings"); #endif - #if HAS_HEATED_BED + #if ENABLED(PIDTEMPBED) case BedPID: return F("Bed PID Settings"); #endif + #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) + case MPC: return F("MPC Menu"); + #endif #if HAS_PREHEAT #define _PREHEAT_TITLE_CASE(N) case Preheat##N: return F(PREHEAT_## N ##_LABEL " Settings"); REPEAT_1(PREHEAT_COUNT, _PREHEAT_TITLE_CASE) @@ -4021,15 +4121,18 @@ uint8_t JyersDWIN::getMenuSize(const uint8_t menu) { #endif case Control: return CONTROL_TOTAL; case TempMenu: return TEMP_TOTAL; - #if HAS_HOTEND || HAS_HEATED_BED + #if ANY(PIDTEMP, PIDTEMPBED) case PID: return PID_TOTAL; #endif - #if HAS_HOTEND + #if ENABLED(PIDTEMP) case HotendPID: return HOTENDPID_TOTAL; #endif - #if HAS_HEATED_BED + #if ENABLED(PIDTEMPBED) case BedPID: return BEDPID_TOTAL; #endif + #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) + case MPC: return MPCMENU_TOTAL; + #endif #if HAS_PREHEAT case Preheat1 ... CAT(Preheat, PREHEAT_COUNT): return PREHEAT_SUBMENU_TOTAL; @@ -4101,6 +4204,7 @@ void JyersDWIN::popupHandler(const PopupID popupid, const bool option/*=false*/) case TempWarn: drawPopup(option ? F("Nozzle temp too low!") : F("Nozzle temp too high!"), F(""), F(""), Wait, option ? ICON_TempTooLow : ICON_TempTooHigh); break; case Runout: drawPopup(F("Filament Runout"), F(""), F(""), Wait, ICON_BLTouch); break; case PIDWait: drawPopup(F("PID Autotune"), F("in process"), F("Please wait until done."), Wait, ICON_BLTouch); break; + case MPCWait: drawPopup(F("MPC Autotune"), F("in process"), F("Please wait until done."), Wait, ICON_BLTouch); break; case Resuming: drawPopup(F("Resuming Print"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; case Custom: drawPopup(F("Running Custom GCode"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; default: break; @@ -4194,9 +4298,9 @@ void JyersDWIN::valueControl() { else if (active_menu == Tune && selection == TUNE_ZOFFSET) { gcode.process_subcommands_now(TS(F("M290Z"), p_float_t((tempvalue / valueunit - zoffsetvalue), 3))); } - if (TERN0(HAS_HOTEND, valuepointer == &thermalManager.temp_hotend[0].pid.Ki) || TERN0(HAS_HEATED_BED, valuepointer == &thermalManager.temp_bed.pid.Ki)) + if (TERN0(PIDTEMP, valuepointer == &thermalManager.temp_hotend[0].pid.Ki) || TERN0(PIDTEMPBED, valuepointer == &thermalManager.temp_bed.pid.Ki)) tempvalue = scalePID_i(tempvalue); - if (TERN0(HAS_HOTEND, valuepointer == &thermalManager.temp_hotend[0].pid.Kd) || TERN0(HAS_HEATED_BED, valuepointer == &thermalManager.temp_bed.pid.Kd)) + if (TERN0(PIDTEMP, valuepointer == &thermalManager.temp_hotend[0].pid.Kd) || TERN0(PIDTEMPBED, valuepointer == &thermalManager.temp_bed.pid.Kd)) tempvalue = scalePID_d(tempvalue); switch (valuetype) { case 0: *(float*)valuepointer = tempvalue / valueunit; break; diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.h b/Marlin/src/lcd/e3v2/jyersui/dwin.h index 6282adbd01ba..98af1c4cbd0b 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.h +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.h @@ -43,7 +43,7 @@ enum processID : uint8_t { enum PopupID : uint8_t { Pause, Stop, Resume, SaveLevel, ETemp, ConfFilChange, PurgeMore, MeshSlot, - Level, Home, MoveWait, Heating, FilLoad, FilChange, TempWarn, Runout, PIDWait, Resuming, ManualProbing, + Level, Home, MoveWait, Heating, FilLoad, FilChange, TempWarn, Runout, PIDWait, MPCWait, Resuming, ManualProbing, FilInsert, HeaterTime, UserInput, LevelError, InvalidMesh, UI, Complete, Custom }; @@ -66,6 +66,9 @@ enum menuID : uint8_t { #define _PREHEAT_ID(N) Preheat##N, REPEAT_1(PREHEAT_COUNT, _PREHEAT_ID) #endif + #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) + MPC, + #endif Motion, HomeOffsets, MaxSpeed, From 6474773555274527ac4a24162dfdd9ea4b2b59da Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Thu, 29 Jun 2023 00:06:50 +0200 Subject: [PATCH 328/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20AD4985=20with=205V?= =?UTF-8?q?=20input,=20add=20AD595=203.3V=20warning=20(#26021)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/HAL/AVR/HAL.h | 4 ++-- Marlin/src/HAL/DUE/HAL.h | 2 +- Marlin/src/HAL/ESP32/HAL.h | 2 +- Marlin/src/HAL/LINUX/HAL.h | 4 ++-- Marlin/src/HAL/LPC1768/HAL.h | 2 +- Marlin/src/HAL/NATIVE_SIM/HAL.h | 4 ++-- Marlin/src/HAL/SAMD21/HAL.h | 4 ++-- Marlin/src/HAL/SAMD51/HAL.h | 2 +- Marlin/src/HAL/STM32/HAL.h | 2 +- Marlin/src/HAL/STM32/temp_soc.h | 2 +- Marlin/src/HAL/STM32F1/HAL.h | 2 +- Marlin/src/HAL/TEENSY31_32/HAL.h | 2 +- Marlin/src/HAL/TEENSY35_36/HAL.h | 2 +- Marlin/src/HAL/TEENSY40_41/HAL.h | 2 +- Marlin/src/feature/filwidth.h | 2 +- Marlin/src/feature/power_monitor.h | 4 ++-- Marlin/src/inc/Conditionals_post.h | 6 +++--- Marlin/src/inc/Warnings.cpp | 16 ++++++++++++++++ Marlin/src/module/temperature.cpp | 6 ++++-- buildroot/tests/LPC1768 | 2 +- buildroot/tests/LPC1769 | 3 ++- 21 files changed, 47 insertions(+), 28 deletions(-) diff --git a/Marlin/src/HAL/AVR/HAL.h b/Marlin/src/HAL/AVR/HAL.h index 6d98dff08020..16878a8ab8d9 100644 --- a/Marlin/src/HAL/AVR/HAL.h +++ b/Marlin/src/HAL/AVR/HAL.h @@ -147,8 +147,8 @@ typedef Servo hal_servo_t; // // ADC // -#define HAL_ADC_VREF 5.0 -#define HAL_ADC_RESOLUTION 10 +#define HAL_ADC_VREF_MV 5000 +#define HAL_ADC_RESOLUTION 10 // // Pin Mapping for M42, M43, M226 diff --git a/Marlin/src/HAL/DUE/HAL.h b/Marlin/src/HAL/DUE/HAL.h index 585b8938417f..7b9285488fd9 100644 --- a/Marlin/src/HAL/DUE/HAL.h +++ b/Marlin/src/HAL/DUE/HAL.h @@ -123,7 +123,7 @@ typedef Servo hal_servo_t; // // ADC // -#define HAL_ADC_VREF 3.3 +#define HAL_ADC_VREF_MV 3300 #define HAL_ADC_RESOLUTION 10 #ifndef analogInputToDigitalPin diff --git a/Marlin/src/HAL/ESP32/HAL.h b/Marlin/src/HAL/ESP32/HAL.h index 5dc9b2cfe2e8..97ed4d1e4f0b 100644 --- a/Marlin/src/HAL/ESP32/HAL.h +++ b/Marlin/src/HAL/ESP32/HAL.h @@ -169,7 +169,7 @@ void _delay_ms(const int ms); // MarlinHAL Class // ------------------------ -#define HAL_ADC_VREF 3.3 +#define HAL_ADC_VREF_MV 3300 #define HAL_ADC_RESOLUTION 10 class MarlinHAL { diff --git a/Marlin/src/HAL/LINUX/HAL.h b/Marlin/src/HAL/LINUX/HAL.h index 22c3e521f086..d1c0cbe7ae36 100644 --- a/Marlin/src/HAL/LINUX/HAL.h +++ b/Marlin/src/HAL/LINUX/HAL.h @@ -80,8 +80,8 @@ extern MSerialT usb_serial; #define CRITICAL_SECTION_END() // ADC -#define HAL_ADC_VREF 5.0 -#define HAL_ADC_RESOLUTION 10 +#define HAL_ADC_VREF_MV 5000 +#define HAL_ADC_RESOLUTION 10 // ------------------------ // Class Utilities diff --git a/Marlin/src/HAL/LPC1768/HAL.h b/Marlin/src/HAL/LPC1768/HAL.h index be4d59ada737..c9b7a0739479 100644 --- a/Marlin/src/HAL/LPC1768/HAL.h +++ b/Marlin/src/HAL/LPC1768/HAL.h @@ -127,7 +127,7 @@ extern DefaultSerial1 USBSerial; // K = 6, 565 samples, 500Hz sample rate, 1.13s convergence on full range step // Memory usage per ADC channel (bytes): 4 (32 Bytes for 8 channels) -#define HAL_ADC_VREF 3.3 // ADC voltage reference +#define HAL_ADC_VREF_MV 3300 // ADC voltage reference #define HAL_ADC_RESOLUTION 12 // 15 bit maximum, raw temperature is stored as int16_t #define HAL_ADC_FILTERED // Disable oversampling done in Marlin as ADC values already filtered in HAL diff --git a/Marlin/src/HAL/NATIVE_SIM/HAL.h b/Marlin/src/HAL/NATIVE_SIM/HAL.h index 52e5eb4f3997..58f084af8529 100644 --- a/Marlin/src/HAL/NATIVE_SIM/HAL.h +++ b/Marlin/src/HAL/NATIVE_SIM/HAL.h @@ -114,8 +114,8 @@ extern MSerialT serial_stream_3; // ADC // ------------------------ -#define HAL_ADC_VREF 5.0 -#define HAL_ADC_RESOLUTION 10 +#define HAL_ADC_VREF_MV 5000 +#define HAL_ADC_RESOLUTION 10 /* ---------------- Delay in cycles */ diff --git a/Marlin/src/HAL/SAMD21/HAL.h b/Marlin/src/HAL/SAMD21/HAL.h index 1854e523ed62..fe7285954938 100644 --- a/Marlin/src/HAL/SAMD21/HAL.h +++ b/Marlin/src/HAL/SAMD21/HAL.h @@ -111,8 +111,8 @@ typedef Servo hal_servo_t; // #define HAL_ADC_FILTERED 1 // Disable Marlin's oversampling. The HAL filters ADC values. -#define HAL_ADC_VREF 3.3 -#define HAL_ADC_RESOLUTION 12 +#define HAL_ADC_VREF_MV 3300 +#define HAL_ADC_RESOLUTION 12 #define HAL_ADC_AIN_START ADC_INPUTCTRL_MUXPOS_PIN3 #define HAL_ADC_AIN_NUM_SENSORS 3 #define HAL_ADC_AIN_LEN HAL_ADC_AIN_NUM_SENSORS-1 diff --git a/Marlin/src/HAL/SAMD51/HAL.h b/Marlin/src/HAL/SAMD51/HAL.h index fe29d6c7f42d..c96401fd9750 100644 --- a/Marlin/src/HAL/SAMD51/HAL.h +++ b/Marlin/src/HAL/SAMD51/HAL.h @@ -112,7 +112,7 @@ typedef Servo hal_servo_t; // //#define HAL_ADC_FILTERED // Disable Marlin's oversampling. The HAL filters ADC values. -#define HAL_ADC_VREF 3.3 +#define HAL_ADC_VREF_MV 3300 #define HAL_ADC_RESOLUTION 10 // ... 12 // diff --git a/Marlin/src/HAL/STM32/HAL.h b/Marlin/src/HAL/STM32/HAL.h index 24589d0fcc36..013390fcaf3d 100644 --- a/Marlin/src/HAL/STM32/HAL.h +++ b/Marlin/src/HAL/STM32/HAL.h @@ -160,7 +160,7 @@ typedef libServo hal_servo_t; #define HAL_ADC_RESOLUTION 12 #endif -#define HAL_ADC_VREF 3.3 +#define HAL_ADC_VREF_MV 3300 // // Pin Mapping for M42, M43, M226 diff --git a/Marlin/src/HAL/STM32/temp_soc.h b/Marlin/src/HAL/STM32/temp_soc.h index 05262eab8bdf..05fad695c3c0 100644 --- a/Marlin/src/HAL/STM32/temp_soc.h +++ b/Marlin/src/HAL/STM32/temp_soc.h @@ -341,6 +341,6 @@ #elif defined(TS_TYPICAL_V) && defined(TS_TYPICAL_SLOPE) && defined(TS_TYPICAL_TEMP) - #define TEMP_SOC_SENSOR(RAW) ((TS_TYPICAL_V - (RAW) / float(OVERSAMPLENR) / float(HAL_ADC_RANGE) * float(ADC_VREF)) / (TS_TYPICAL_SLOPE/1000) + TS_TYPICAL_TEMP) + #define TEMP_SOC_SENSOR(RAW) ((TS_TYPICAL_V - (RAW) / float(OVERSAMPLENR) / float(HAL_ADC_RANGE) * (float(ADC_VREF_MV) / 1000.0f)) / ((TS_TYPICAL_SLOPE) / 1000) + TS_TYPICAL_TEMP) #endif diff --git a/Marlin/src/HAL/STM32F1/HAL.h b/Marlin/src/HAL/STM32F1/HAL.h index b5f4d6fe8bab..a6f8036906f6 100644 --- a/Marlin/src/HAL/STM32F1/HAL.h +++ b/Marlin/src/HAL/STM32F1/HAL.h @@ -190,7 +190,7 @@ typedef int8_t pin_t; #define HAL_ADC_RESOLUTION 12 #endif -#define HAL_ADC_VREF 3.3 +#define HAL_ADC_VREF_MV 3300 uint16_t analogRead(const pin_t pin); // need hal.adc_enable() first void analogWrite(const pin_t pin, int pwm_val8); // PWM only! mul by 257 in maple!? diff --git a/Marlin/src/HAL/TEENSY31_32/HAL.h b/Marlin/src/HAL/TEENSY31_32/HAL.h index a7aa9f0da211..fe913ed583f5 100644 --- a/Marlin/src/HAL/TEENSY31_32/HAL.h +++ b/Marlin/src/HAL/TEENSY31_32/HAL.h @@ -101,7 +101,7 @@ uint32_t __get_PRIMASK(void); // CMSIS #define analogInputToDigitalPin(p) ((p < 12U) ? (p) + 54U : -1) #endif -#define HAL_ADC_VREF 3.3 +#define HAL_ADC_VREF_MV 3300 #define HAL_ADC_RESOLUTION 10 // diff --git a/Marlin/src/HAL/TEENSY35_36/HAL.h b/Marlin/src/HAL/TEENSY35_36/HAL.h index 2a192e47189d..24dcf2ebabbe 100644 --- a/Marlin/src/HAL/TEENSY35_36/HAL.h +++ b/Marlin/src/HAL/TEENSY35_36/HAL.h @@ -106,7 +106,7 @@ typedef int8_t pin_t; #define analogInputToDigitalPin(p) ((p < 12U) ? (p) + 54U : -1) #endif -#define HAL_ADC_VREF 3.3 +#define HAL_ADC_VREF_MV 3300 #define HAL_ADC_RESOLUTION 10 // diff --git a/Marlin/src/HAL/TEENSY40_41/HAL.h b/Marlin/src/HAL/TEENSY40_41/HAL.h index c54a2e8a0b64..84c584767705 100644 --- a/Marlin/src/HAL/TEENSY40_41/HAL.h +++ b/Marlin/src/HAL/TEENSY40_41/HAL.h @@ -124,7 +124,7 @@ typedef int8_t pin_t; #define analogInputToDigitalPin(p) ((p < 12U) ? (p) + 54U : -1) #endif -#define HAL_ADC_VREF 3.3 +#define HAL_ADC_VREF_MV 3300 #define HAL_ADC_RESOLUTION 10 #define HAL_ADC_FILTERED // turn off ADC oversampling diff --git a/Marlin/src/feature/filwidth.h b/Marlin/src/feature/filwidth.h index 9eb1e77762ff..ab50fe0af3f9 100644 --- a/Marlin/src/feature/filwidth.h +++ b/Marlin/src/feature/filwidth.h @@ -67,7 +67,7 @@ class FilamentWidthSensor { } // Convert raw measurement to mm - static float raw_to_mm(const uint16_t v) { return v * float(ADC_VREF) * RECIPROCAL(float(MAX_RAW_THERMISTOR_VALUE)); } + static float raw_to_mm(const uint16_t v) { return v * (float(ADC_VREF_MV) / 1000.0f) * RECIPROCAL(float(MAX_RAW_THERMISTOR_VALUE)); } static float raw_to_mm() { return raw_to_mm(raw); } // A scaled reading is ready diff --git a/Marlin/src/feature/power_monitor.h b/Marlin/src/feature/power_monitor.h index 89e92fb773fe..d57ef6fa67e1 100644 --- a/Marlin/src/feature/power_monitor.h +++ b/Marlin/src/feature/power_monitor.h @@ -46,11 +46,11 @@ struct pm_lpf_t { class PowerMonitor { private: #if ENABLED(POWER_MONITOR_CURRENT) - static constexpr float amps_adc_scale = float(ADC_VREF) / (POWER_MONITOR_VOLTS_PER_AMP * PM_SAMPLE_RANGE); + static constexpr float amps_adc_scale = (float(ADC_VREF_MV) / 1000.0f) / (POWER_MONITOR_VOLTS_PER_AMP * PM_SAMPLE_RANGE); static pm_lpf_t amps; #endif #if ENABLED(POWER_MONITOR_VOLTAGE) - static constexpr float volts_adc_scale = float(ADC_VREF) / (POWER_MONITOR_VOLTS_PER_VOLT * PM_SAMPLE_RANGE); + static constexpr float volts_adc_scale = (float(ADC_VREF_MV) / 1000.0f) / (POWER_MONITOR_VOLTS_PER_VOLT * PM_SAMPLE_RANGE); static pm_lpf_t volts; #endif diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index bc33c20f41b9..664d4cd54413 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -31,10 +31,10 @@ #endif // ADC -#ifdef BOARD_ADC_VREF - #define ADC_VREF BOARD_ADC_VREF +#ifdef BOARD_ADC_VREF_MV + #define ADC_VREF_MV BOARD_ADC_VREF_MV #else - #define ADC_VREF HAL_ADC_VREF + #define ADC_VREF_MV HAL_ADC_VREF_MV #endif // Linear advance uses Jerk since E is an isolated axis diff --git a/Marlin/src/inc/Warnings.cpp b/Marlin/src/inc/Warnings.cpp index 34c63239e5c6..a8820af179a7 100644 --- a/Marlin/src/inc/Warnings.cpp +++ b/Marlin/src/inc/Warnings.cpp @@ -750,10 +750,16 @@ #warning "Input Shaping for CORE / MARKFORGED kinematic axes is still experimental." #endif +/** + * Automatic Multistepping Limit + */ #if MULTISTEPPING_LIMIT_WARNING #warning "MULTISTEPPING_LIMIT has been automatically set to 128. Use a lower value if the machine is slow to respond." #endif +/** + * SD Card extras + */ #if SDSORT_CACHE_VFATS_WARNING #warning "SDSORT_CACHE_VFATS has been reduced to VFAT_ENTRIES_LIMIT." #endif @@ -768,6 +774,16 @@ #warning "Place the firmware bin file in a folder named 'STM32F4_UPDATE' on the SD card. Install with 'M936 V2'." #endif +/** + * ProUI Boot Screen Duration + */ #if ENABLED(DWIN_LCD_PROUI) && BOOTSCREEN_TIMEOUT > 2000 #warning "For ProUI the original BOOTSCREEN_TIMEOUT of 1100 is recommended." #endif + +/** + * AD595 Minimum Voltage + */ +#if HAL_ADC_VREF_MV < 5000 && ANY_THERMISTOR_IS(-1) && DISABLED(ALLOW_AD595_3V3_VREF) + #warning "The (-1) AD595 Thermocouple Amplifier requires 5V input supply! Use AD8495 for 3.3V ADC." +#endif diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 7688d83c06c3..a5fdc4f1fb08 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -2142,8 +2142,10 @@ void Temperature::task() { UNUSED(ms); } -#define TEMP_AD595(RAW) ((RAW) * 5.0 * 100.0 / float(HAL_ADC_RANGE) / (OVERSAMPLENR) * (TEMP_SENSOR_AD595_GAIN) + TEMP_SENSOR_AD595_OFFSET) -#define TEMP_AD8495(RAW) ((RAW) * 6.6 * 100.0 / float(HAL_ADC_RANGE) / (OVERSAMPLENR) * (TEMP_SENSOR_AD8495_GAIN) + TEMP_SENSOR_AD8495_OFFSET) +// For a 5V input the AD595 returns a value scaled with 10mV per °C. (Minimum input voltage is 5V.) +#define TEMP_AD595(RAW) ((RAW) * (ADC_VREF_MV / 10) / float(HAL_ADC_RANGE) / (OVERSAMPLENR) * (TEMP_SENSOR_AD595_GAIN) + TEMP_SENSOR_AD595_OFFSET) +// For a 5V input the AD8495 returns a value scaled with 5mV per °C. (Minimum input voltage is 2.7V.) +#define TEMP_AD8495(RAW) ((RAW) * (ADC_VREF_MV / 5) / float(HAL_ADC_RANGE) / (OVERSAMPLENR) * (TEMP_SENSOR_AD8495_GAIN) + TEMP_SENSOR_AD8495_OFFSET) /** * Bisect search for the range of the 'raw' value, then interpolate diff --git a/buildroot/tests/LPC1768 b/buildroot/tests/LPC1768 index d616f7f48f82..52769d2967e1 100755 --- a/buildroot/tests/LPC1768 +++ b/buildroot/tests/LPC1768 @@ -34,7 +34,7 @@ exec_test $1 $2 "MKS SBASE with SWITCHING_NOZZLE, Grbl Realtime Report" "$3" restore_configs opt_set MOTHERBOARD BOARD_RAMPS_14_RE_ARM_EEB \ - EXTRUDERS 2 TEMP_SENSOR_1 -1 TEMP_SENSOR_BED 5 \ + EXTRUDERS 2 TEMP_SENSOR_1 -4 TEMP_SENSOR_BED 5 \ GRID_MAX_POINTS_X 16 \ NOZZLE_TO_PROBE_OFFSET '{ 0, 0, 0 }' \ NOZZLE_CLEAN_MIN_TEMP 170 \ diff --git a/buildroot/tests/LPC1769 b/buildroot/tests/LPC1769 index 733201e0090d..a7348bffe99c 100755 --- a/buildroot/tests/LPC1769 +++ b/buildroot/tests/LPC1769 @@ -14,7 +14,7 @@ exec_test $1 $2 "Azteeg X5GT Example Configuration" "$3" restore_configs opt_set MOTHERBOARD BOARD_SMOOTHIEBOARD \ - EXTRUDERS 2 TEMP_SENSOR_0 -5 TEMP_SENSOR_1 -1 TEMP_SENSOR_BED 5 TEMP_0_CS_PIN P1_29 \ + EXTRUDERS 2 TEMP_SENSOR_0 -5 TEMP_SENSOR_1 -4 TEMP_SENSOR_BED 5 TEMP_0_CS_PIN P1_29 \ GRID_MAX_POINTS_X 16 \ NOZZLE_CLEAN_START_POINT "{ { 10, 10, 3 }, { 10, 10, 3 } }" \ NOZZLE_CLEAN_END_POINT "{ { 10, 20, 3 }, { 10, 20, 3 } }" @@ -43,6 +43,7 @@ exec_test $1 $2 "Smoothieboard with TFTGLCD_PANEL_SPI and many features" "$3" restore_configs use_example_configs delta/generic opt_set MOTHERBOARD BOARD_COHESION3D_REMIX \ + TEMP_SENSOR_0 1 \ X_DRIVER_TYPE TMC2130 Y_DRIVER_TYPE TMC2130 Z_DRIVER_TYPE TMC2130 I_DRIVER_TYPE TB6560 \ DEFAULT_AXIS_STEPS_PER_UNIT '{ 80, 80, 400, 500, 80 }' \ DEFAULT_MAX_FEEDRATE '{ 300, 300, 5, 25, 300 }' \ From aee8e15fd2b1b701a5f16e92a0c557c6dccb13de Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 29 Jun 2023 00:25:22 +0000 Subject: [PATCH 329/427] [cron] Bump distribution date (2023-06-29) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index a1acaf447fc0..34e5fc972c36 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-28" +//#define STRING_DISTRIBUTION_DATE "2023-06-29" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 413ff93ac186..ffa61571c77d 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-28" + #define STRING_DISTRIBUTION_DATE "2023-06-29" #endif /** From cb12114a7eeaefc227aa7aa94a8e382bfd3aa95a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Krzysztof=20B=C5=82a=C5=BCewicz?= Date: Thu, 29 Jun 2023 09:18:32 +0200 Subject: [PATCH 330/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20JyersUI=20typos=20?= =?UTF-8?q?(#26029)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #24390 --- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index 33495d82ba6d..22ff4b8a0037 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -1578,7 +1578,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #if ENABLED(Z_SAFE_HOMING) planner.synchronize(); gcode.process_subcommands_now( - TS(F("G0F4000X"), p_float_t(Z_SAFE_HOMING_X_POINT, 3), 'Y', p_float_t(Z_SAFE_HOMING_Y_POINT, 3)); + TS(F("G0F4000X"), p_float_t(Z_SAFE_HOMING_X_POINT, 3), 'Y', p_float_t(Z_SAFE_HOMING_Y_POINT, 3)) ); #else gcode.process_subcommands_now(F("G0 F4000 X117.5 Y117.5")); @@ -1603,7 +1603,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #if ENABLED(Z_SAFE_HOMING) planner.synchronize(); gcode.process_subcommands_now( - TS(F("G0F4000X"), p_float_t(Z_SAFE_HOMING_X_POINT, 3), 'Y', p_float_t(Z_SAFE_HOMING_Y_POINT, 3)); + TS(F("G0F4000X"), p_float_t(Z_SAFE_HOMING_X_POINT, 3), 'Y', p_float_t(Z_SAFE_HOMING_Y_POINT, 3)) ); #else gcode.process_subcommands_now(F("G0 F4000 X117.5 Y117.5")); @@ -3004,7 +3004,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawMenuItem(row, ICON_StepY, F("M48 Probe Test")); else { gcode.process_subcommands_now( - TS(F("G28O\nM48X" , p_float_t((X_BED_SIZE + X_MIN_POS) / 2.0f, 3), 'Y', p_float_t((Y_BED_SIZE + Y_MIN_POS) / 2.0f, 3), 'P', testcount)) + TS(F("G28O\nM48X") , p_float_t((X_BED_SIZE + X_MIN_POS) / 2.0f, 3), 'Y', p_float_t((Y_BED_SIZE + Y_MIN_POS) / 2.0f, 3), 'P', testcount) ); } break; From 97e15812fa15cf3ee9f260089282eb5e69915c4e Mon Sep 17 00:00:00 2001 From: Andrew <18502096+classicrocker883@users.noreply.github.com> Date: Thu, 29 Jun 2023 13:21:14 -0400 Subject: [PATCH 331/427] =?UTF-8?q?=F0=9F=94=A8=20Makefile=20+=20256K=20Cr?= =?UTF-8?q?eality=20Maple=20+=20Heater=20IDs=20(#26018)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Makefile | 40 +++++++++---------- Marlin/src/feature/bedlevel/ubl/ubl.h | 1 - Marlin/src/inc/Conditionals_adv.h | 33 +++++++-------- Marlin/src/module/temperature.cpp | 2 +- Marlin/src/module/temperature.h | 13 +----- .../PlatformIO/ldscripts/creality256k.ld | 14 +++++++ ini/stm32f1-maple.ini | 6 +-- 7 files changed, 56 insertions(+), 53 deletions(-) create mode 100644 buildroot/share/PlatformIO/ldscripts/creality256k.ld diff --git a/Marlin/Makefile b/Marlin/Makefile index ca7cacaa6acb..e5ba9cb341e4 100644 --- a/Marlin/Makefile +++ b/Marlin/Makefile @@ -63,8 +63,8 @@ HARDWARE_MOTHERBOARD ?= 1020 ifeq ($(OS),Windows_NT) # Windows - ARDUINO_INSTALL_DIR ?= ${HOME}/Arduino - ARDUINO_USER_DIR ?= ${HOME}/Arduino + ARDUINO_INSTALL_DIR ?= ${HOME}/AppData/Local/Arduino + ARDUINO_USER_DIR ?= ${HOME}/Documents/Arduino else UNAME_S := $(shell uname -s) ifeq ($(UNAME_S),Linux) @@ -82,11 +82,11 @@ endif # Arduino source install directory, and version number # On most linuxes this will be /usr/share/arduino -ARDUINO_INSTALL_DIR ?= ${HOME}/Arduino -ARDUINO_VERSION ?= 106 +ARDUINO_INSTALL_DIR ?= ${HOME}/AppData/Local/Arduino # C:/Users/${USERNAME}/AppData/Local/Arduino +ARDUINO_VERSION ?= 10819 # The installed Libraries are in the User folder -ARDUINO_USER_DIR ?= ${HOME}/Arduino +ARDUINO_USER_DIR ?= ${HOME}/Documents/Arduino # You can optionally set a path to the avr-gcc tools. # Requires a trailing slash. For example, /usr/local/avr-gcc/bin/ @@ -656,18 +656,18 @@ ifeq ($(HARDWARE_VARIANT), $(filter $(HARDWARE_VARIANT),arduino Teensy Sanguino) # Old libraries (avr-core 1.6.21 < / Arduino < 1.6.8) VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/SPI # New libraries (avr-core >= 1.6.21 / Arduino >= 1.6.8) - VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/SPI/src + VPATH += $(ARDUINO_INSTALL_DIR)/packages/arduino/hardware/arduino/avr/1.8.6/libraries/SPI/src endif ifeq ($(IS_MCU),1) - VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/cores/arduino + VPATH += $(ARDUINO_INSTALL_DIR)/packages/arduino/hardware/arduino/avr/1.8.6/cores/arduino # Old libraries (avr-core 1.6.21 < / Arduino < 1.6.8) VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/SPI VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/SoftwareSerial # New libraries (avr-core >= 1.6.21 / Arduino >= 1.6.8) - VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/SPI/src - VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/SoftwareSerial/src + VPATH += $(ARDUINO_INSTALL_DIR)/packages/arduino/hardware/arduino/avr/1.8.6/libraries/SPI/src + VPATH += $(ARDUINO_INSTALL_DIR)/packages/arduino/hardware/arduino/avr/1.8.6/libraries/SoftwareSerial/src endif VPATH += $(ARDUINO_INSTALL_DIR)/libraries/LiquidCrystal/src @@ -681,17 +681,17 @@ ifeq ($(WIRE), 1) VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/Wire VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/Wire/utility # New libraries (avr-core >= 1.6.21 / Arduino >= 1.6.8) - VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/Wire/src - VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/libraries/Wire/src/utility + VPATH += $(ARDUINO_INSTALL_DIR)/packages/arduino/hardware/avr/1.8.6/libraries/Wire/src + VPATH += $(ARDUINO_INSTALL_DIR)/packages/arduino/hardware/avr/1.8.6/libraries/Wire/src/utility endif ifeq ($(NEOPIXEL), 1) VPATH += $(ARDUINO_INSTALL_DIR)/libraries/Adafruit_NeoPixel endif ifeq ($(U8GLIB), 1) -VPATH += $(ARDUINO_INSTALL_DIR)/libraries/U8glib -VPATH += $(ARDUINO_INSTALL_DIR)/libraries/U8glib/csrc -VPATH += $(ARDUINO_INSTALL_DIR)/libraries/U8glib/cppsrc -VPATH += $(ARDUINO_INSTALL_DIR)/libraries/U8glib/fntsrc +VPATH += $(ARDUINO_INSTALL_DIR)/libraries/U8glib-HAL +VPATH += $(ARDUINO_INSTALL_DIR)/libraries/U8glib-HAL/src +# VPATH += $(ARDUINO_INSTALL_DIR)/libraries/U8glib +# VPATH += $(ARDUINO_INSTALL_DIR)/libraries/U8glib/src endif ifeq ($(TMC), 1) VPATH += $(ARDUINO_INSTALL_DIR)/libraries/TMCStepper/src @@ -700,9 +700,9 @@ endif ifeq ($(HARDWARE_VARIANT), arduino) HARDWARE_SUB_VARIANT ?= mega - VPATH += $(ARDUINO_INSTALL_DIR)/hardware/arduino/avr/variants/$(HARDWARE_SUB_VARIANT) + VPATH += $(ARDUINO_INSTALL_DIR)/packages/arduino/hardware/avr/1.8.6/variants/$(HARDWARE_SUB_VARIANT) else ifeq ($(HARDWARE_VARIANT), Sanguino) - VPATH += $(ARDUINO_INSTALL_DIR)/hardware/marlin/avr/variants/sanguino + VPATH += $(ARDUINO_INSTALL_DIR)/packages/arduino/hardware/avr/1.8.6/variants/sanguino else ifeq ($(HARDWARE_VARIANT), archim) VPATH += $(ARDUINO_INSTALL_DIR)/packages/ultimachine/hardware/sam/1.6.9-b/system/libsam VPATH += $(ARDUINO_INSTALL_DIR)/packages/ultimachine/hardware/sam/1.6.9-b/system/CMSIS/CMSIS/Include/ @@ -718,7 +718,7 @@ else ifeq ($(HARDWARE_VARIANT), archim) LDLIBS = $(ARDUINO_INSTALL_DIR)/packages/ultimachine/hardware/sam/1.6.9-b/variants/archim/libsam_sam3x8e_gcc_rel.a else HARDWARE_SUB_VARIANT ?= standard - VPATH += $(ARDUINO_INSTALL_DIR)/hardware/$(HARDWARE_VARIANT)/variants/$(HARDWARE_SUB_VARIANT) + VPATH += $(ARDUINO_INSTALL_DIR)/packages/arduino/hardware/avr/1.8.6/variants/$(HARDWARE_SUB_VARIANT) endif LIB_SRC = wiring.c \ @@ -733,7 +733,7 @@ endif ifeq ($(HARDWARE_VARIANT), Teensy) LIB_SRC = wiring.c - VPATH += $(ARDUINO_INSTALL_DIR)/hardware/teensy/cores/teensy + VPATH += $(ARDUINO_INSTALL_DIR)/packages/arduino/hardware/teensy/cores/teensy endif LIB_CXXSRC = WMath.cpp WString.cpp Print.cpp SPI.cpp @@ -880,7 +880,7 @@ AVRDUDE_WRITE_FLASH = -Uflash:w:$(BUILD_DIR)/$(TARGET).hex:i ifeq ($(shell uname -s), Linux) AVRDUDE_CONF = /etc/avrdude/avrdude.conf else - AVRDUDE_CONF = $(ARDUINO_INSTALL_DIR)/hardware/tools/avr/etc/avrdude.conf + AVRDUDE_CONF = $(ARDUINO_INSTALL_DIR)/packages/arduino/tools/avrdude/6.3.0-arduino17/etc/avrdude.conf endif AVRDUDE_FLAGS = -D -C$(AVRDUDE_CONF) \ -p$(PROG_MCU) -P$(AVRDUDE_PORT) -c$(AVRDUDE_PROGRAMMER) \ diff --git a/Marlin/src/feature/bedlevel/ubl/ubl.h b/Marlin/src/feature/bedlevel/ubl/ubl.h index f751ce40d0d2..7377f7dfc03a 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl.h +++ b/Marlin/src/feature/bedlevel/ubl/ubl.h @@ -77,7 +77,6 @@ class unified_bed_leveling { static bool G29_parse_parameters() __O0; static void shift_mesh_height(); static void probe_entire_mesh(const xy_pos_t &near, const bool do_ubl_mesh_map, const bool stow_probe, const bool do_furthest) __O0; - static void tilt_mesh_based_on_3pts(const_float_t z1, const_float_t z2, const_float_t z3); static void tilt_mesh_based_on_probed_grid(const bool do_ubl_mesh_map); static bool smart_fill_one(const uint8_t x, const uint8_t y, const int8_t xdir, const int8_t ydir); static bool smart_fill_one(const xy_uint8_t &pos, const xy_uint8_t &dir) { diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index 4892ff24b142..d5f4be18b9c2 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -306,21 +306,22 @@ */ // Temperature sensor IDs -#define HID_REDUNDANT -7 -#define HID_SOC -6 -#define HID_BOARD -5 -#define HID_COOLER -4 -#define HID_PROBE -3 -#define HID_CHAMBER -2 -#define HID_BED -1 -#define HID_E0 0 -#define HID_E1 1 -#define HID_E2 2 -#define HID_E3 3 -#define HID_E4 4 -#define HID_E5 5 -#define HID_E6 6 -#define HID_E7 7 +#define H_NONE -128 +#define H_REDUNDANT -7 +#define H_SOC -6 +#define H_BOARD -5 +#define H_COOLER -4 +#define H_PROBE -3 +#define H_CHAMBER -2 +#define H_BED -1 +#define H_E0 0 +#define H_E1 1 +#define H_E2 2 +#define H_E3 3 +#define H_E4 4 +#define H_E5 5 +#define H_E6 6 +#define H_E7 7 #define _SENSOR_IS(I,N) || (TEMP_SENSOR(N) == I) #define _E_SENSOR_IS(I,N) _SENSOR_IS(N,I) @@ -333,7 +334,7 @@ #endif #if TEMP_SENSOR_REDUNDANT - #define _HEATER_ID(M) HID_##M + #define _HEATER_ID(M) H_##M #define HEATER_ID(M) _HEATER_ID(M) #define REDUNDANT_TEMP_MATCH(M,N) (HEATER_ID(TEMP_SENSOR_REDUNDANT_##M) == _HEATER_ID(N)) #else diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index a5fdc4f1fb08..c38d4968c9ca 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -2944,7 +2944,7 @@ void Temperature::init() { temp_range[NR].raw_max -= TEMPDIR(NR) * (OVERSAMPLENR); \ }while(0) - #define _MINMAX_TEST(N,M) (!TEMP_SENSOR_##N##_IS_DUMMY && HOTENDS > N && TEMP_SENSOR_##N##_IS_THERMISTOR && defined(HEATER_##N##_##M##TEMP)) + #define _MINMAX_TEST(N,M) (!TEMP_SENSOR_##N##_IS_DUMMY && HOTENDS > (N) && TEMP_SENSOR_##N##_IS_THERMISTOR && defined(HEATER_##N##_##M##TEMP)) #if _MINMAX_TEST(0, MIN) _TEMP_MIN_E(0); diff --git a/Marlin/src/module/temperature.h b/Marlin/src/module/temperature.h index 51fa6f1efff2..a8873bf2af65 100644 --- a/Marlin/src/module/temperature.h +++ b/Marlin/src/module/temperature.h @@ -55,18 +55,7 @@ #define FAN_IS_M106ABLE(Q) false #endif -// Element identifiers. Positive values are hotends. Negative values are other heaters or coolers. -typedef enum : int_fast8_t { - H_REDUNDANT = HID_REDUNDANT, - H_COOLER = HID_COOLER, - H_PROBE = HID_PROBE, - H_BOARD = HID_BOARD, - H_SOC = HID_SOC, - H_CHAMBER = HID_CHAMBER, - H_BED = HID_BED, - H_E0 = HID_E0, H_E1, H_E2, H_E3, H_E4, H_E5, H_E6, H_E7, - H_NONE = -128 -} heater_id_t; +typedef int_fast8_t heater_id_t; /** * States for ADC reading in the ISR diff --git a/buildroot/share/PlatformIO/ldscripts/creality256k.ld b/buildroot/share/PlatformIO/ldscripts/creality256k.ld new file mode 100644 index 000000000000..1ed03caa0a56 --- /dev/null +++ b/buildroot/share/PlatformIO/ldscripts/creality256k.ld @@ -0,0 +1,14 @@ +MEMORY +{ + ram (rwx) : ORIGIN = 0x20000000, LENGTH = 48K - 40 + rom (rx) : ORIGIN = 0x08007000, LENGTH = 256K - 28K +} + +/* Provide memory region aliases for common.inc */ +REGION_ALIAS("REGION_TEXT", rom); +REGION_ALIAS("REGION_DATA", ram); +REGION_ALIAS("REGION_BSS", ram); +REGION_ALIAS("REGION_RODATA", rom); + +/* Let common.inc handle the real work. */ +INCLUDE common.inc diff --git a/ini/stm32f1-maple.ini b/ini/stm32f1-maple.ini index 6f9ac32e0e6e..0a8453f3076f 100644 --- a/ini/stm32f1-maple.ini +++ b/ini/stm32f1-maple.ini @@ -111,7 +111,7 @@ lib_deps = ${env:STM32F103RC_btt_maple.lib_deps} USBComposite for STM32F1@0.91 # -# Creality (STM32F103RET6) +# Creality 512K (STM32F103RET6) # [env:STM32F103RE_creality_maple] extends = env:STM32F103RE_maple @@ -123,13 +123,13 @@ debug_tool = jlink upload_protocol = jlink # -# Creality (STM32F103RCT6) +# Creality 256K (STM32F103RCT6) # [env:STM32F103RC_creality_maple] extends = env:STM32F103RC_maple build_flags = ${env:STM32F103RC_maple.build_flags} -DTEMP_TIMER_CHAN=4 board_build.address = 0x08007000 -board_build.ldscript = creality.ld +board_build.ldscript = creality256k.ld board_build.rename = firmware-{date}-{time}.bin debug_tool = jlink upload_protocol = jlink From d9349caeee7307d660ec729052210dfba7036432 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Thu, 29 Jun 2023 13:27:25 -0700 Subject: [PATCH 332/427] =?UTF-8?q?=E2=9A=A1=EF=B8=8F=20Ethernet=20Buffer?= =?UTF-8?q?=20for=20Input=20Shaping=20on=20LPC=20(#26027)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/stepper.cpp | 8 +++++++- Marlin/src/pins/pins.h | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 50b8323838d5..5d48b20ee8e8 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -247,7 +247,13 @@ uint32_t Stepper::advance_divisor = 0, #if HAS_ZV_SHAPING shaping_time_t ShapingQueue::now = 0; - shaping_time_t ShapingQueue::times[shaping_echoes]; + #if ANY(MCU_LPC1768, MCU_LPC1769) && DISABLED(NO_LPC_ETHERNET_BUFFER) + // Use the 16K LPC Ethernet buffer: https://github.com/MarlinFirmware/Marlin/issues/25432#issuecomment-1450420638 + #define _ATTR_BUFFER __attribute__((section("AHBSRAM1"),aligned)) + #else + #define _ATTR_BUFFER + #endif + shaping_time_t ShapingQueue::times[shaping_echoes] _ATTR_BUFFER; shaping_echo_axis_t ShapingQueue::echo_axes[shaping_echoes]; uint16_t ShapingQueue::tail = 0; diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index 7e235ca80a31..4d41d76d8878 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -120,7 +120,7 @@ #ifdef __MARLIN_DEPS__ #define NOT_TARGET(V...) 0 #else - #define NOT_TARGET(V...) NONE(V) + #define NOT_TARGET NONE #endif // From 7b23fd3548f5aabc269ba24ec947d6fdfd225072 Mon Sep 17 00:00:00 2001 From: narno2202 <130909513+narno2202@users.noreply.github.com> Date: Fri, 30 Jun 2023 00:06:05 +0200 Subject: [PATCH 333/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20FT=20Motion=20runo?= =?UTF-8?q?ut=20in=20progress=20(#26020)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 2 +- Marlin/src/module/ft_motion.cpp | 39 ++++++++++++++++++++++++++++----- Marlin/src/module/ft_motion.h | 1 + Marlin/src/module/ft_types.h | 2 +- 4 files changed, 36 insertions(+), 8 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index eee111a5412a..be54354d5c0c 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -1125,7 +1125,7 @@ * Advanced configuration */ #define FTM_BATCH_SIZE 100 // Batch size for trajectory generation; - // half the window size for Ulendo FBS. + #define FTM_WINDOW_SIZE 200 // Window size for trajectory generation. #define FTM_FS 1000 // (Hz) Frequency for trajectory generation. (1 / FTM_TS) #define FTM_TS 0.001f // (s) Time step for trajectory generation. (1 / FTM_FS) #define FTM_STEPPER_FS 20000 // (Hz) Frequency for stepper I/O update. diff --git a/Marlin/src/module/ft_motion.cpp b/Marlin/src/module/ft_motion.cpp index d3c4de896254..6fe8e936e0e5 100644 --- a/Marlin/src/module/ft_motion.cpp +++ b/Marlin/src/module/ft_motion.cpp @@ -75,6 +75,7 @@ bool FxdTiCtrl::batchRdy = false; // Indicates a batch of the fi bool FxdTiCtrl::batchRdyForInterp = false; // Indicates the batch is done being post processed, // if applicable, and is ready to be converted to step commands. bool FxdTiCtrl::runoutEna = false; // True if runout of the block hasn't been done and is allowed. +bool FxdTiCtrl::runout = false; // Indicates if runout is in progress. // Trapezoid data variables. xyze_pos_t FxdTiCtrl::startPosn, // (mm) Start position of block @@ -123,6 +124,8 @@ hal_timer_t FxdTiCtrl::nextStepTicks = FTM_MIN_TICKS; // Accumulator for the nex float FxdTiCtrl::e_advanced_z1 = 0.0f; // (ms) Unit delay of advanced extruder position. #endif +constexpr uint32_t last_batchIdx = (FTM_WINDOW_SIZE) - (FTM_BATCH_SIZE); + //-----------------------------------------------------------------// // Function definitions. //-----------------------------------------------------------------// @@ -143,8 +146,8 @@ void FxdTiCtrl::runoutBlock() { if (runoutEna && !batchRdy) { // If the window is full already (block intervals was a multiple of // the batch size), or runout is not enabled, no runout is needed. // Fill out the trajectory window with the last position calculated. - if (makeVector_batchIdx > FTM_BATCH_SIZE) - for (uint32_t i = makeVector_batchIdx; i < 2 * (FTM_BATCH_SIZE); i++) { + if (makeVector_batchIdx > last_batchIdx) + for (uint32_t i = makeVector_batchIdx; i < (FTM_WINDOW_SIZE); i++) { LOGICAL_AXIS_CODE( traj.e[i] = traj.e[makeVector_batchIdx - 1], traj.x[i] = traj.x[makeVector_batchIdx - 1], @@ -159,8 +162,9 @@ void FxdTiCtrl::runoutBlock() { ); } - makeVector_batchIdx = FTM_BATCH_SIZE; + makeVector_batchIdx = last_batchIdx; batchRdy = true; + runout = true; } runoutEna = false; } @@ -184,7 +188,7 @@ void FxdTiCtrl::loop() { } // Planner processing and block conversion. - if (!blockProcRdy) stepper.fxdTiCtrl_BlockQueueUpdate(); + if (!blockProcRdy && !runout) stepper.fxdTiCtrl_BlockQueueUpdate(); if (blockProcRdy) { if (!blockProcRdy_z1) loadBlockData(current_block_cpy); // One-shot. @@ -192,6 +196,27 @@ void FxdTiCtrl::loop() { makeVector(); } + if (runout && !batchRdy) { // The lower half of the window has been runout. + // Runout the upper half of the window: the upper half has been shifted into the lower + // half. Fill out the upper half so another batch can be processed. + for (uint32_t i = last_batchIdx; i < (FTM_WINDOW_SIZE) - 1; i++) { + LOGICAL_AXIS_CODE( + traj.e[i] = traj.e[(FTM_WINDOW_SIZE) - 1], + traj.x[i] = traj.x[(FTM_WINDOW_SIZE) - 1], + traj.y[i] = traj.y[(FTM_WINDOW_SIZE) - 1], + traj.z[i] = traj.z[(FTM_WINDOW_SIZE) - 1], + traj.i[i] = traj.i[(FTM_WINDOW_SIZE) - 1], + traj.j[i] = traj.j[(FTM_WINDOW_SIZE) - 1], + traj.k[i] = traj.k[(FTM_WINDOW_SIZE) - 1], + traj.u[i] = traj.u[(FTM_WINDOW_SIZE) - 1], + traj.v[i] = traj.v[(FTM_WINDOW_SIZE) - 1], + traj.w[i] = traj.w[(FTM_WINDOW_SIZE) - 1] + ); + } + batchRdy = true; + runout = false; + } + // FBS / post processing. if (batchRdy && !batchRdyForInterp) { @@ -371,10 +396,12 @@ void FxdTiCtrl::reset() { stepperCmdBuff_produceIdx = stepperCmdBuff_consumeIdx = 0; traj.reset(); // Reset trajectory history + trajMod.reset(); // Reset modified trajectory history blockProcRdy = blockProcRdy_z1 = blockProcDn = false; batchRdy = batchRdyForInterp = false; runoutEna = false; + runout = false; endPosn_prevBlock.reset(); @@ -611,8 +638,8 @@ void FxdTiCtrl::makeVector() { #endif // Filled up the queue with regular and shaped steps - if (++makeVector_batchIdx == 2 * (FTM_BATCH_SIZE)) { - makeVector_batchIdx = FTM_BATCH_SIZE; + if (++makeVector_batchIdx == (FTM_WINDOW_SIZE)) { + makeVector_batchIdx = last_batchIdx; batchRdy = true; } diff --git a/Marlin/src/module/ft_motion.h b/Marlin/src/module/ft_motion.h index f4be977786fe..2186ecb710a8 100644 --- a/Marlin/src/module/ft_motion.h +++ b/Marlin/src/module/ft_motion.h @@ -133,6 +133,7 @@ class FxdTiCtrl { static bool blockProcRdy, blockProcRdy_z1, blockProcDn; static bool batchRdy, batchRdyForInterp; static bool runoutEna; + static bool runout; // Trapezoid data variables. static xyze_pos_t startPosn, // (mm) Start position of block diff --git a/Marlin/src/module/ft_types.h b/Marlin/src/module/ft_types.h index c4465bd37bb8..a7228d32d6f2 100644 --- a/Marlin/src/module/ft_types.h +++ b/Marlin/src/module/ft_types.h @@ -48,7 +48,7 @@ enum stepDirState_t : uint8_t { stepDirState_NEG = 2U }; -typedef struct XYZEarray xyze_trajectory_t; +typedef struct XYZEarray xyze_trajectory_t; typedef struct XYZEarray xyze_trajectoryMod_t; typedef struct XYZEval xyze_stepDir_t; From 7247acdece4bb20bfd49960c44a7bebe1ea0f74c Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 30 Jun 2023 00:24:45 +0000 Subject: [PATCH 334/427] [cron] Bump distribution date (2023-06-30) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 34e5fc972c36..7bcfb4284a5b 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-29" +//#define STRING_DISTRIBUTION_DATE "2023-06-30" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index ffa61571c77d..bea99e823a78 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-29" + #define STRING_DISTRIBUTION_DATE "2023-06-30" #endif /** From f14f1be168ebf252dd458c935271aed1a57cfa0b Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 30 Jun 2023 19:16:00 -0500 Subject: [PATCH 335/427] =?UTF-8?q?=F0=9F=8E=A8=20Standardize=20naming=20(?= =?UTF-8?q?ProUI)=20(#25982)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp | 4 +- Marlin/src/feature/runout.cpp | 2 +- Marlin/src/gcode/bedlevel/abl/G29.cpp | 4 +- Marlin/src/gcode/bedlevel/mbl/G29.cpp | 6 +- Marlin/src/gcode/bedlevel/ubl/M421.cpp | 4 +- Marlin/src/gcode/config/M302.cpp | 2 +- Marlin/src/gcode/control/M997.cpp | 2 +- Marlin/src/gcode/feature/powerloss/M1000.cpp | 2 +- Marlin/src/gcode/lcd/M0_M1.cpp | 4 +- Marlin/src/gcode/sd/M1001.cpp | 2 - Marlin/src/gcode/stats/M75-M78.cpp | 2 +- Marlin/src/gcode/temp/M303.cpp | 6 +- Marlin/src/inc/Conditionals_post.h | 6 +- Marlin/src/lcd/e3v2/common/dwin_color.h | 30 +- Marlin/src/lcd/e3v2/creality/dwin.cpp | 819 ++--- Marlin/src/lcd/e3v2/creality/dwin.h | 147 +- Marlin/src/lcd/e3v2/creality/dwin_lcd.cpp | 2 +- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 1067 +++--- Marlin/src/lcd/e3v2/jyersui/dwin.h | 152 +- Marlin/src/lcd/e3v2/marlinui/dwin_lcd.cpp | 2 +- Marlin/src/lcd/e3v2/marlinui/ui_common.cpp | 66 +- .../lcd/e3v2/marlinui/ui_status_480x272.cpp | 48 +- Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp | 80 +- Marlin/src/lcd/e3v2/proui/bedlevel_tools.h | 35 +- Marlin/src/lcd/e3v2/proui/dwin.cpp | 2874 +++++++++-------- Marlin/src/lcd/e3v2/proui/dwin.h | 349 +- Marlin/src/lcd/e3v2/proui/dwin_defines.h | 42 +- Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp | 16 +- Marlin/src/lcd/e3v2/proui/dwin_lcd.h | 16 +- Marlin/src/lcd/e3v2/proui/dwin_popup.cpp | 30 +- Marlin/src/lcd/e3v2/proui/dwin_popup.h | 42 +- Marlin/src/lcd/e3v2/proui/dwinui.cpp | 140 +- Marlin/src/lcd/e3v2/proui/dwinui.h | 342 +- Marlin/src/lcd/e3v2/proui/endstop_diag.cpp | 28 +- Marlin/src/lcd/e3v2/proui/endstop_diag.h | 8 +- Marlin/src/lcd/e3v2/proui/gcode_preview.cpp | 16 +- Marlin/src/lcd/e3v2/proui/lockscreen.cpp | 34 +- Marlin/src/lcd/e3v2/proui/lockscreen.h | 4 +- Marlin/src/lcd/e3v2/proui/menus.cpp | 412 +-- Marlin/src/lcd/e3v2/proui/menus.h | 198 +- Marlin/src/lcd/e3v2/proui/meshviewer.cpp | 68 +- Marlin/src/lcd/e3v2/proui/meshviewer.h | 14 +- Marlin/src/lcd/e3v2/proui/plot.cpp | 24 +- Marlin/src/lcd/e3v2/proui/plot.h | 4 +- Marlin/src/lcd/e3v2/proui/printstats.cpp | 40 +- Marlin/src/lcd/e3v2/proui/printstats.h | 12 +- Marlin/src/lcd/marlinui.cpp | 2 +- Marlin/src/module/motion.h | 2 +- Marlin/src/module/probe.cpp | 2 +- Marlin/src/module/settings.cpp | 8 +- Marlin/src/module/stepper.cpp | 2 +- Marlin/src/module/temperature.cpp | 20 +- 52 files changed, 3645 insertions(+), 3598 deletions(-) diff --git a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp index 3b8ee33730f3..6f5187cc9f39 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp +++ b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp @@ -759,7 +759,7 @@ void unified_bed_leveling::shift_mesh_height() { TERN_(HAS_MARLINUI_MENU, ui.capture()); TERN_(EXTENSIBLE_UI, ExtUI::onLevelingStart()); - TERN_(DWIN_LCD_PROUI, DWIN_LevelingStart()); + TERN_(DWIN_LCD_PROUI, dwinLevelingStart()); save_ubl_active_state_and_disable(); // No bed level correction so only raw data is obtained grid_count_t count = GRID_MAX_POINTS; @@ -820,7 +820,7 @@ void unified_bed_leveling::shift_mesh_height() { ); TERN_(EXTENSIBLE_UI, ExtUI::onLevelingDone()); - TERN_(DWIN_LCD_PROUI, DWIN_LevelingDone()); + TERN_(DWIN_LCD_PROUI, dwinLevelingDone()); } #endif // HAS_BED_PROBE diff --git a/Marlin/src/feature/runout.cpp b/Marlin/src/feature/runout.cpp index a1d4d259b768..db325dee7a08 100644 --- a/Marlin/src/feature/runout.cpp +++ b/Marlin/src/feature/runout.cpp @@ -88,7 +88,7 @@ void event_filament_runout(const uint8_t extruder) { #endif TERN_(EXTENSIBLE_UI, ExtUI::onFilamentRunout(ExtUI::getTool(extruder))); - TERN_(DWIN_LCD_PROUI, DWIN_FilamentRunout(extruder)); + TERN_(DWIN_LCD_PROUI, dwinFilamentRunout(extruder)); #if ANY(HOST_PROMPT_SUPPORT, HOST_ACTION_COMMANDS, MULTI_FILAMENT_SENSOR) const char tool = '0' + TERN0(MULTI_FILAMENT_SENSOR, extruder); diff --git a/Marlin/src/gcode/bedlevel/abl/G29.cpp b/Marlin/src/gcode/bedlevel/abl/G29.cpp index 5632c6e46721..5ecb6af66c58 100644 --- a/Marlin/src/gcode/bedlevel/abl/G29.cpp +++ b/Marlin/src/gcode/bedlevel/abl/G29.cpp @@ -429,7 +429,7 @@ G29_TYPE GcodeSuite::G29() { if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("> 3-point Leveling"); points[0].z = points[1].z = points[2].z = 0; // Probe at 3 arbitrary points #elif ENABLED(AUTO_BED_LEVELING_BILINEAR) - TERN_(DWIN_LCD_PROUI, DWIN_LevelingStart()); + TERN_(DWIN_LCD_PROUI, dwinLevelingStart()); #endif TERN_(EXTENSIBLE_UI, ExtUI::onLevelingStart()); @@ -440,7 +440,7 @@ G29_TYPE GcodeSuite::G29() { #if ENABLED(PREHEAT_BEFORE_LEVELING) if (!abl.dryrun) probe.preheat_for_probing(LEVELING_NOZZLE_TEMP, #if ALL(DWIN_LCD_PROUI, HAS_HEATED_BED) - HMI_data.BedLevT + hmiData.bedLevT #else LEVELING_BED_TEMP #endif diff --git a/Marlin/src/gcode/bedlevel/mbl/G29.cpp b/Marlin/src/gcode/bedlevel/mbl/G29.cpp index 4bc9ba777a09..c5e02b91f9bd 100644 --- a/Marlin/src/gcode/bedlevel/mbl/G29.cpp +++ b/Marlin/src/gcode/bedlevel/mbl/G29.cpp @@ -143,7 +143,7 @@ void GcodeSuite::G29() { queue.inject(F("G29S2")); TERN_(EXTENSIBLE_UI, ExtUI::onLevelingStart()); - TERN_(DWIN_LCD_PROUI, DWIN_LevelingStart()); + TERN_(DWIN_LCD_PROUI, dwinLevelingStart()); return; } @@ -169,7 +169,7 @@ void GcodeSuite::G29() { // Save Z for the previous mesh position bedlevel.set_zigzag_z(mbl_probe_index - 1, current_position.z); TERN_(EXTENSIBLE_UI, ExtUI::onMeshUpdate(ix, iy, current_position.z)); - TERN_(DWIN_LCD_PROUI, DWIN_MeshUpdate(_MIN(mbl_probe_index, GRID_MAX_POINTS), int(GRID_MAX_POINTS), current_position.z)); + TERN_(DWIN_LCD_PROUI, dwinMeshUpdate(_MIN(mbl_probe_index, GRID_MAX_POINTS), int(GRID_MAX_POINTS), current_position.z)); SET_SOFT_ENDSTOP_LOOSE(false); } // If there's another point to sample, move there with optional lift. @@ -236,7 +236,7 @@ void GcodeSuite::G29() { if (parser.seenval('Z')) { bedlevel.z_values[ix][iy] = parser.value_linear_units(); TERN_(EXTENSIBLE_UI, ExtUI::onMeshUpdate(ix, iy, bedlevel.z_values[ix][iy])); - TERN_(DWIN_LCD_PROUI, DWIN_MeshUpdate(ix, iy, bedlevel.z_values[ix][iy])); + TERN_(DWIN_LCD_PROUI, dwinMeshUpdate(ix, iy, bedlevel.z_values[ix][iy])); } else return echo_not_entered('Z'); diff --git a/Marlin/src/gcode/bedlevel/ubl/M421.cpp b/Marlin/src/gcode/bedlevel/ubl/M421.cpp index ff74f4c6f744..3a5aa8cb038c 100644 --- a/Marlin/src/gcode/bedlevel/ubl/M421.cpp +++ b/Marlin/src/gcode/bedlevel/ubl/M421.cpp @@ -66,10 +66,10 @@ void GcodeSuite::M421() { else if (!WITHIN(ij.x, 0, GRID_MAX_POINTS_X - 1) || !WITHIN(ij.y, 0, GRID_MAX_POINTS_Y - 1)) SERIAL_ERROR_MSG(STR_ERR_MESH_XY); else { - float &zval = bedlevel.z_values[ij.x][ij.y]; // Altering this Mesh Point + float &zval = bedlevel.z_values[ij.x][ij.y]; // Altering this Mesh Point zval = hasN ? NAN : parser.value_linear_units() + (hasQ ? zval : 0); // N=NAN, Z=NEWVAL, or Q=ADDVAL TERN_(EXTENSIBLE_UI, ExtUI::onMeshUpdate(ij.x, ij.y, zval)); // Ping ExtUI in case it's showing the mesh - TERN_(DWIN_LCD_PROUI, DWIN_MeshUpdate(ij.x, ij.y, zval)); + TERN_(DWIN_LCD_PROUI, dwinMeshUpdate(ij.x, ij.y, zval)); } } diff --git a/Marlin/src/gcode/config/M302.cpp b/Marlin/src/gcode/config/M302.cpp index 26e5a468cabc..3373e143251c 100644 --- a/Marlin/src/gcode/config/M302.cpp +++ b/Marlin/src/gcode/config/M302.cpp @@ -51,7 +51,7 @@ void GcodeSuite::M302() { if (seen_S) { thermalManager.extrude_min_temp = parser.value_celsius(); thermalManager.allow_cold_extrude = (thermalManager.extrude_min_temp == 0); - TERN_(DWIN_LCD_PROUI, HMI_data.ExtMinT = thermalManager.extrude_min_temp); + TERN_(DWIN_LCD_PROUI, hmiData.extMinT = thermalManager.extrude_min_temp); } if (parser.seen('P')) diff --git a/Marlin/src/gcode/control/M997.cpp b/Marlin/src/gcode/control/M997.cpp index 74ed8b0d073e..5ac0ba23bbca 100644 --- a/Marlin/src/gcode/control/M997.cpp +++ b/Marlin/src/gcode/control/M997.cpp @@ -33,7 +33,7 @@ */ void GcodeSuite::M997() { - TERN_(DWIN_LCD_PROUI, DWIN_RebootScreen()); + TERN_(DWIN_LCD_PROUI, dwinRebootScreen()); flashFirmware(parser.intval('S')); diff --git a/Marlin/src/gcode/feature/powerloss/M1000.cpp b/Marlin/src/gcode/feature/powerloss/M1000.cpp index 56ef737145c2..1a1ebd517b3b 100644 --- a/Marlin/src/gcode/feature/powerloss/M1000.cpp +++ b/Marlin/src/gcode/feature/powerloss/M1000.cpp @@ -71,7 +71,7 @@ void GcodeSuite::M1000() { #elif HAS_DWIN_E3V2_BASIC recovery.dwin_flag = true; #elif ENABLED(DWIN_CREALITY_LCD_JYERSUI) // Temporary fix until it can be better implemented - jyersDWIN.popupHandler(Resume); + jyersDWIN.popupHandler(Popup_Resume); #elif ENABLED(EXTENSIBLE_UI) ExtUI::onPowerLossResume(); #else diff --git a/Marlin/src/gcode/lcd/M0_M1.cpp b/Marlin/src/gcode/lcd/M0_M1.cpp index 4e4625e9483d..fcab61b59d92 100644 --- a/Marlin/src/gcode/lcd/M0_M1.cpp +++ b/Marlin/src/gcode/lcd/M0_M1.cpp @@ -73,9 +73,9 @@ void GcodeSuite::M0_M1() { ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_USERWAIT)); #elif ENABLED(DWIN_LCD_PROUI) if (parser.string_arg) - DWIN_Popup_Confirm(ICON_BLTouch, parser.string_arg, GET_TEXT_F(MSG_USERWAIT)); + dwinPopupConfirm(ICON_BLTouch, parser.string_arg, GET_TEXT_F(MSG_USERWAIT)); else - DWIN_Popup_Confirm(ICON_BLTouch, GET_TEXT_F(MSG_STOPPED), GET_TEXT_F(MSG_USERWAIT)); + dwinPopupConfirm(ICON_BLTouch, GET_TEXT_F(MSG_STOPPED), GET_TEXT_F(MSG_USERWAIT)); #else if (parser.string_arg) { diff --git a/Marlin/src/gcode/sd/M1001.cpp b/Marlin/src/gcode/sd/M1001.cpp index c49909646eaa..a00ca6122845 100644 --- a/Marlin/src/gcode/sd/M1001.cpp +++ b/Marlin/src/gcode/sd/M1001.cpp @@ -49,8 +49,6 @@ #if ENABLED(EXTENSIBLE_UI) #include "../../lcd/extui/ui_api.h" -#elif ENABLED(DWIN_LCD_PROUI) - #include "../../lcd/e3v2/proui/dwin.h" #endif #if ENABLED(HOST_ACTION_COMMANDS) diff --git a/Marlin/src/gcode/stats/M75-M78.cpp b/Marlin/src/gcode/stats/M75-M78.cpp index 2ff04797eb28..bced97351dac 100644 --- a/Marlin/src/gcode/stats/M75-M78.cpp +++ b/Marlin/src/gcode/stats/M75-M78.cpp @@ -39,7 +39,7 @@ void GcodeSuite::M75() { startOrResumeJob(); #if ENABLED(DWIN_LCD_PROUI) - if (!IS_SD_PRINTING()) DWIN_Print_Header(parser.string_arg && parser.string_arg[0] ? parser.string_arg : GET_TEXT(MSG_HOST_START_PRINT)); + if (!IS_SD_PRINTING()) dwinPrintHeader(parser.string_arg && parser.string_arg[0] ? parser.string_arg : GET_TEXT(MSG_HOST_START_PRINT)); #endif } diff --git a/Marlin/src/gcode/temp/M303.cpp b/Marlin/src/gcode/temp/M303.cpp index 48eebaa0e4d8..f9f3abc5bd4e 100644 --- a/Marlin/src/gcode/temp/M303.cpp +++ b/Marlin/src/gcode/temp/M303.cpp @@ -31,7 +31,7 @@ #if ENABLED(EXTENSIBLE_UI) #include "../../lcd/extui/ui_api.h" -#elif ENABLED(DWIN_LCD_PROUI) +#elif ENABLED(PROUI_PID_TUNE) #include "../../lcd/e3v2/proui/dwin.h" #endif @@ -69,7 +69,7 @@ void GcodeSuite::M303() { SERIAL_ECHOPGM(STR_PID_AUTOTUNE); SERIAL_ECHOLNPGM(STR_PID_BAD_HEATER_ID); TERN_(EXTENSIBLE_UI, ExtUI::onPidTuning(ExtUI::result_t::PID_BAD_HEATER_ID)); - TERN_(DWIN_PID_TUNE, DWIN_PidTuning(PID_BAD_HEATER_ID)); + TERN_(PROUI_PID_TUNE, dwinPidTuning(PID_BAD_HEATER_ID)); return; } @@ -79,7 +79,7 @@ void GcodeSuite::M303() { const celsius_t temp = seenS ? parser.value_celsius() : default_temp; const bool u = parser.boolval('U'); - TERN_(DWIN_PID_TUNE, DWIN_StartM303(seenC, c, seenS, hid, temp)); + TERN_(PROUI_PID_TUNE, dwinStartM303(seenC, c, seenS, hid, temp)); IF_DISABLED(BUSY_WHILE_HEATING, KEEPALIVE_STATE(NOT_BUSY)); diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 664d4cd54413..8cc3f6bc2db8 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -2386,10 +2386,10 @@ #if ENABLED(DWIN_LCD_PROUI) #if ANY(PIDTEMP, PIDTEMPBED) - #define DWIN_PID_TUNE 1 + #define PROUI_PID_TUNE 1 #endif - #if ANY(DWIN_PID_TUNE, MPC_AUTOTUNE) && DISABLED(DISABLE_TUNING_GRAPH) - #define SHOW_TUNING_GRAPH 1 + #if ANY(PROUI_PID_TUNE, MPC_AUTOTUNE) && DISABLED(DISABLE_TUNING_GRAPH) + #define PROUI_TUNING_GRAPH 1 #endif #endif diff --git a/Marlin/src/lcd/e3v2/common/dwin_color.h b/Marlin/src/lcd/e3v2/common/dwin_color.h index d327f21a9384..8df4f95151ac 100644 --- a/Marlin/src/lcd/e3v2/common/dwin_color.h +++ b/Marlin/src/lcd/e3v2/common/dwin_color.h @@ -27,18 +27,18 @@ #define GetGColor(color) ((color >> 5) & 0x3F) #define GetBColor(color) ((color >> 0) & 0x1F) -#define Color_White 0xFFFF -#define Color_Yellow RGB(0x1F,0x3F,0x00) -#define Color_Red RGB(0x1F,0x00,0x00) -#define Color_Error_Red 0xB000 // Error! -#define Color_Bg_Red 0xF00F // Red background color -#define Color_Bg_Window 0x31E8 // Popup background color -#define Color_Bg_Blue 0x1125 // Dark blue background color -#define Color_Bg_Black 0x0841 // Black background color -#define Color_IconBlue 0x45FA // Lighter blue that matches icons/accents -#define Popup_Text_Color 0xD6BA // Popup font background color -#define Line_Color 0x3A6A // Split line color -#define Rectangle_Color 0xEE2F // Blue square cursor color -#define Percent_Color 0xFE29 // Percentage color -#define BarFill_Color 0x10E4 // Fill color of progress bar -#define Select_Color 0x33BB // Selected color +#define COLOR_WHITE 0xFFFF +#define COLOR_YELLOW RGB(0x1F,0x3F,0x00) +#define COLOR_RED RGB(0x1F,0x00,0x00) +#define COLOR_ERROR_RED 0xB000 // Error! +#define COLOR_BG_RED 0xF00F // Red background color +#define COLOR_BG_WINDOW 0x31E8 // Popup background color +#define COLOR_BG_BLUE 0x1125 // Dark blue background color +#define COLOR_BG_BLACK 0x0841 // Black background color +#define COLOR_ICONBLUE 0x45FA // Lighter blue that matches icons/accents +#define COLOR_POPUP_TEXT 0xD6BA // Popup font background color +#define COLOR_LINE 0x3A6A // Split line color +#define COLOR_RECTANGLE 0xEE2F // Blue square cursor color +#define COLOR_PERCENT 0xFE29 // Percentage color +#define COLOR_BARFILL 0x10E4 // Fill color of progress bar +#define COLOR_SELECT 0x33BB // Selected color diff --git a/Marlin/src/lcd/e3v2/creality/dwin.cpp b/Marlin/src/lcd/e3v2/creality/dwin.cpp index 7a28f1b77ef3..b21cc3085032 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin.cpp +++ b/Marlin/src/lcd/e3v2/creality/dwin.cpp @@ -221,7 +221,7 @@ typedef struct { uint16_t x, y[2], w, h; } text_info_t; void iconButton(const bool here, const int iconid, const icon_info_t &ico, const text_info_t (&txt)[2]) { const bool cn = hmiIsChinese(); dwinIconShow(ICON, iconid + here, ico.x, ico.y); - if (here) dwinDrawRectangle(0, Color_White, ico.x, ico.y, ico.x + ico.w - 1, ico.y + ico.h - 1); + if (here) dwinDrawRectangle(0, COLOR_WHITE, ico.x, ico.y, ico.x + ico.w - 1, ico.y + ico.h - 1); dwinFrameAreaCopy(1, txt[cn].x, txt[cn].y[here], txt[cn].x + txt[cn].w - 1, txt[cn].y[here] + txt[cn].h - 1, ico.x + (ico.w - txt[cn].w) / 2, (ico.y + ico.h - 28) - txt[cn].h/2); } @@ -341,15 +341,15 @@ void iconStop() { } inline void clearTitleBar() { - dwinDrawBox(1, Color_Bg_Blue, 0, 0, DWIN_WIDTH, TITLE_HEIGHT); + dwinDrawBox(1, COLOR_BG_BLUE, 0, 0, DWIN_WIDTH, TITLE_HEIGHT); } void drawTitle(FSTR_P ftitle) { - dwinDrawString(false, DWIN_FONT_HEAD, Color_White, Color_Bg_Blue, 14, 4, ftitle); + dwinDrawString(false, DWIN_FONT_HEAD, COLOR_WHITE, COLOR_BG_BLUE, 14, 4, ftitle); } inline void clearMenuArea() { - dwinDrawBox(1, Color_Bg_Black, 0, TITLE_HEIGHT, DWIN_WIDTH, STATUS_Y - TITLE_HEIGHT); + dwinDrawBox(1, COLOR_BG_BLACK, 0, TITLE_HEIGHT, DWIN_WIDTH, STATUS_Y - TITLE_HEIGHT); } void clearMainWindow() { @@ -359,11 +359,11 @@ void clearMainWindow() { void clearPopupArea() { clearTitleBar(); - dwinDrawRectangle(1, Color_Bg_Black, 0, 31, DWIN_WIDTH, DWIN_HEIGHT); + dwinDrawRectangle(1, COLOR_BG_BLACK, 0, 31, DWIN_WIDTH, DWIN_HEIGHT); } void drawPopupBkgd105() { - dwinDrawRectangle(1, Color_Bg_Window, 14, 105, 258, 374); + dwinDrawRectangle(1, COLOR_BG_WINDOW, 14, 105, 258, 374); } void drawMoreIcon(const uint8_t line) { @@ -372,11 +372,11 @@ void drawMoreIcon(const uint8_t line) { void drawMenuCursor(const uint8_t line) { //dwinIconShow(ICON, ICON_Rectangle, 0, MBASE(line) - 18); - dwinDrawRectangle(1, Rectangle_Color, 0, MBASE(line) - 18, 14, MBASE(line + 1) - 20); + dwinDrawRectangle(1, COLOR_RECTANGLE, 0, MBASE(line) - 18, 14, MBASE(line + 1) - 20); } void eraseMenuCursor(const uint8_t line) { - dwinDrawRectangle(1, Color_Bg_Black, 0, MBASE(line) - 18, 14, MBASE(line + 1) - 20); + dwinDrawRectangle(1, COLOR_BG_BLACK, 0, MBASE(line) - 18, 14, MBASE(line + 1) - 20); } void moveHighlight(const int16_t from, const uint16_t newline) { @@ -386,11 +386,11 @@ void moveHighlight(const int16_t from, const uint16_t newline) { void addMenuLine() { moveHighlight(1, MROWS); - dwinDrawLine(Line_Color, 16, MBASE(MROWS + 1) - 20, 256, MBASE(MROWS + 1) - 19); + dwinDrawLine(COLOR_LINE, 16, MBASE(MROWS + 1) - 20, 256, MBASE(MROWS + 1) - 19); } void scrollMenu(const uint8_t dir) { - dwinFrameAreaMove(1, dir, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); + dwinFrameAreaMove(1, dir, MLINE, COLOR_BG_BLACK, 0, 31, DWIN_WIDTH, 349); switch (dir) { case DWIN_SCROLL_DOWN: moveHighlight(-1, 0); break; case DWIN_SCROLL_UP: addMenuLine(); break; @@ -402,7 +402,7 @@ inline uint16_t nr_sd_menu_items() { } void eraseMenuText(const uint8_t line) { - dwinDrawRectangle(1, Color_Bg_Black, LBLX, MBASE(line) - 14, 271, MBASE(line) + 28); + dwinDrawRectangle(1, COLOR_BG_BLACK, LBLX, MBASE(line) - 14, 271, MBASE(line) + 28); } void drawMenuIcon(const uint8_t line, const uint8_t icon) { @@ -414,28 +414,28 @@ void _decorateMenuItem(const uint8_t line, const uint8_t icon, bool more) { if (more) drawMoreIcon(line); } void drawMenuItem(const uint8_t line, const uint8_t icon=0, const char * const label=nullptr, bool more=false) { - if (label) dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, LBLX, MBASE(line) - 1, (char*)label); + if (label) dwinDrawString(false, font8x16, COLOR_WHITE, COLOR_BG_BLACK, LBLX, MBASE(line) - 1, (char*)label); _decorateMenuItem(line, icon, more); } void drawMenuItem(const uint8_t line, const uint8_t icon=0, FSTR_P const flabel=nullptr, bool more=false) { - if (flabel) dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, LBLX, MBASE(line) - 1, flabel); + if (flabel) dwinDrawString(false, font8x16, COLOR_WHITE, COLOR_BG_BLACK, LBLX, MBASE(line) - 1, flabel); _decorateMenuItem(line, icon, more); } void drawMenuLine(const uint8_t line, const uint8_t icon=0, const char * const label=nullptr, bool more=false) { drawMenuItem(line, icon, label, more); - dwinDrawLine(Line_Color, 16, MBASE(line) + 33, 256, MBASE(line) + 34); + dwinDrawLine(COLOR_LINE, 16, MBASE(line) + 33, 256, MBASE(line) + 34); } void drawMenuLine(const uint8_t line, const uint8_t icon, FSTR_P const flabel, bool more=false) { drawMenuItem(line, icon, flabel, more); - dwinDrawLine(Line_Color, 16, MBASE(line) + 33, 256, MBASE(line) + 34); + dwinDrawLine(COLOR_LINE, 16, MBASE(line) + 33, 256, MBASE(line) + 34); } void drawCheckboxLine(const uint8_t line, const bool ison) { const uint16_t x = 225, y = EBASE(line) - 2; - dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, x + 5, y, ison ? F("X") : F(" ")); - dwinDrawRectangle(0, Color_White, x + 2, y + 2, x + 16, y + 16); + dwinDrawString(true, font8x16, COLOR_WHITE, COLOR_BG_BLACK, x + 5, y, ison ? F("X") : F(" ")); + dwinDrawRectangle(0, COLOR_WHITE, x + 2, y + 2, x + 16, y + 16); } // AreaCopy for a Menu Item @@ -567,43 +567,43 @@ void say_steps_per_mm_en(const uint8_t row) { } void dwinDrawLabel(const uint8_t row, char *string) { - dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, LBLX, MBASE(row), string); + dwinDrawString(true, font8x16, COLOR_WHITE, COLOR_BG_BLACK, LBLX, MBASE(row), string); } void dwinDrawLabel(const uint8_t row, FSTR_P title) { dwinDrawLabel(row, (char*)title); } -void dwinDrawSigned_Float(uint8_t size, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, int32_t value) { - dwinDrawString(true, size, Color_White, bColor, x - 8, y, value < 0 ? F("-") : F(" ")); - dwinDrawFloatValue(true, true, 0, size, Color_White, bColor, iNum, fNum, x, y, value < 0 ? -value : value); +void dwinDrawSignedFloat(uint8_t size, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, int32_t value) { + dwinDrawString(true, size, COLOR_WHITE, bColor, x - 8, y, value < 0 ? F("-") : F(" ")); + dwinDrawFloatValue(true, true, 0, size, COLOR_WHITE, bColor, iNum, fNum, x, y, value < 0 ? -value : value); } void drawEditInteger3(const uint8_t row, const uint16_t value, const bool active=false) { - dwinDrawIntValue(true, true, 0, font8x16, Color_White, active ? Select_Color : Color_Bg_Black, 3, 220, EBASE(row), value); + dwinDrawIntValue(true, true, 0, font8x16, COLOR_WHITE, active ? COLOR_SELECT : COLOR_BG_BLACK, 3, 220, EBASE(row), value); } void drawEditInteger4(const uint8_t row, const uint16_t value, const bool active=false) { - dwinDrawIntValue(true, true, 0, font8x16, Color_White, active ? Select_Color : Color_Bg_Black, 4, 220 - 1 * 8, EBASE(row), value); + dwinDrawIntValue(true, true, 0, font8x16, COLOR_WHITE, active ? COLOR_SELECT : COLOR_BG_BLACK, 4, 220 - 1 * 8, EBASE(row), value); } void drawEditFloat3(const uint8_t row, const uint16_t value, const bool active=false) { - dwinDrawFloatValue(true, true, 0, font8x16, Color_White, active ? Select_Color : Color_Bg_Black, 3, UNITFDIGITS, 220 - UNITFDIGITS * 8, EBASE(row), (int32_t)value); + dwinDrawFloatValue(true, true, 0, font8x16, COLOR_WHITE, active ? COLOR_SELECT : COLOR_BG_BLACK, 3, UNITFDIGITS, 220 - UNITFDIGITS * 8, EBASE(row), (int32_t)value); } void drawEditSignedFloat2(const uint8_t row, const float value, const bool active=false) { - dwinDrawSigned_Float(font8x16, active ? Select_Color : Color_Bg_Black, 2, UNITFDIGITS + 1, 220 + 8 - UNITFDIGITS * 8, EBASE(row), value); + dwinDrawSignedFloat(font8x16, active ? COLOR_SELECT : COLOR_BG_BLACK, 2, UNITFDIGITS + 1, 220 + 8 - UNITFDIGITS * 8, EBASE(row), value); } void drawEditSignedFloat3(const uint8_t row, const float value, const bool active=false) { - dwinDrawSigned_Float(font8x16, active ? Select_Color : Color_Bg_Black, 3, UNITFDIGITS, 220 - UNITFDIGITS * 8, EBASE(row), value); + dwinDrawSignedFloat(font8x16, active ? COLOR_SELECT : COLOR_BG_BLACK, 3, UNITFDIGITS, 220 - UNITFDIGITS * 8, EBASE(row), value); } void drawStatInt(const uint16_t xpos, const uint16_t ypos, const uint16_t value) { - dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 3, xpos, ypos, value); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, COLOR_WHITE, COLOR_BG_BLACK, 3, xpos, ypos, value); } void drawStatFloat(const uint16_t xpos, const uint16_t ypos, const float value) { - dwinDrawFloatValue(true, true, 0, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 2, 2, xpos, ypos, value); + dwinDrawFloatValue(true, true, 0, DWIN_FONT_STAT, COLOR_WHITE, COLOR_BG_BLACK, 2, 2, xpos, ypos, value); } // @@ -731,7 +731,7 @@ void itemPrepareLang(const uint8_t row) { itemAreaCopy(1, 194, 96, 206, row); // "LCD Language" #endif } - dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, 226, EBASE(row), hmiIsChinese() ? F("CN") : F("EN")); + dwinDrawString(false, font8x16, COLOR_WHITE, COLOR_BG_BLACK, 226, EBASE(row), hmiIsChinese() ? F("CN") : F("EN")); drawMenuIcon(row, ICON_Language); } @@ -1069,8 +1069,8 @@ void drawMotionMenu() { dwinFrameAreaCopy(1, 189, 389, 271, 402, 95, 310); } else { - dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, 36, 300, F("Nozzle or Bed temperature")); - dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, 92, 300, F("is too high")); + dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, 36, 300, F("Nozzle or Bed temperature")); + dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, 92, 300, F("is too high")); } } else { @@ -1080,8 +1080,8 @@ void drawMotionMenu() { dwinFrameAreaCopy(1, 189, 389, 271, 402, 95, 310); } else { - dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, 36, 300, F("Nozzle or Bed temperature")); - dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, 92, 300, F("is too low")); + dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, 36, 300, F("Nozzle or Bed temperature")); + dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, 92, 300, F("is too low")); } } } @@ -1089,7 +1089,7 @@ void drawMotionMenu() { #endif void drawPopupBkgd60() { - dwinDrawRectangle(1, Color_Bg_Window, 14, 60, 258, 330); + dwinDrawRectangle(1, COLOR_BG_WINDOW, 14, 60, 258, 330); } #if HAS_HOTEND @@ -1104,7 +1104,7 @@ void drawPopupBkgd60() { dwinIconShow(ICON, ICON_Confirm_C, 86, 280); } else { - dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, 20, 235, F("Nozzle is too cold")); + dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, 20, 235, F("Nozzle is too cold")); dwinIconShow(ICON, ICON_Confirm_E, 86, 280); } } @@ -1121,9 +1121,9 @@ void popupWindowResume() { dwinIconShow(ICON, ICON_Continue_C, 146, 307); } else { - dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 14) / 2, 115, F("Continue Print")); - dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 22) / 2, 192, F("It looks like the last")); - dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 22) / 2, 212, F("file was interrupted.")); + dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, (272 - 8 * 14) / 2, 115, F("Continue Print")); + dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, (272 - 8 * 22) / 2, 192, F("It looks like the last")); + dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, (272 - 8 * 22) / 2, 212, F("file was interrupted.")); dwinIconShow(ICON, ICON_Cancel_E, 26, 307); dwinIconShow(ICON, ICON_Continue_E, 146, 307); } @@ -1139,8 +1139,8 @@ void popupWindowHome(const bool parking/*=false*/) { dwinFrameAreaCopy(1, 0, 389, 150, 402, 61, 280); } else { - dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * (parking ? 7 : 10)) / 2, 230, parking ? F("Parking") : F("Homing XYZ")); - dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 23) / 2, 260, F("Please wait until done.")); + dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, (272 - 8 * (parking ? 7 : 10)) / 2, 230, parking ? F("Parking") : F("Homing XYZ")); + dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, (272 - 8 * 23) / 2, 260, F("Please wait until done.")); } } @@ -1155,8 +1155,8 @@ void popupWindowHome(const bool parking/*=false*/) { dwinFrameAreaCopy(1, 0, 389, 150, 402, 61, 280); } else { - dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 13) / 2, 230, GET_TEXT_F(MSG_BED_LEVELING)); - dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 23) / 2, 260, F("Please wait until done.")); + dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, (272 - 8 * 13) / 2, 230, GET_TEXT_F(MSG_BED_LEVELING)); + dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, (272 - 8 * 23) / 2, 260, F("Please wait until done.")); } } @@ -1164,8 +1164,8 @@ void popupWindowHome(const bool parking/*=false*/) { void drawSelectHighlight(const bool sel) { hmiFlag.select_flag = sel; - const uint16_t c1 = sel ? Select_Color : Color_Bg_Window, - c2 = sel ? Color_Bg_Window : Select_Color; + const uint16_t c1 = sel ? COLOR_SELECT : COLOR_BG_WINDOW, + c2 = sel ? COLOR_BG_WINDOW : COLOR_SELECT; dwinDrawRectangle(0, c1, 25, 279, 126, 318); dwinDrawRectangle(0, c1, 24, 278, 127, 319); dwinDrawRectangle(0, c2, 145, 279, 246, 318); @@ -1183,8 +1183,8 @@ void popupwindowPauseOrStop() { dwinIconShow(ICON, ICON_Cancel_C, 146, 280); } else { - if (select_print.now == PRINT_PAUSE_RESUME) dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 11) / 2, 150, GET_TEXT_F(MSG_PAUSE_PRINT)); - else if (select_print.now == PRINT_STOP) dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * 10) / 2, 150, GET_TEXT_F(MSG_STOP_PRINT)); + if (select_print.now == PRINT_PAUSE_RESUME) dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, (272 - 8 * 11) / 2, 150, GET_TEXT_F(MSG_PAUSE_PRINT)); + else if (select_print.now == PRINT_STOP) dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, (272 - 8 * 10) / 2, 150, GET_TEXT_F(MSG_STOP_PRINT)); dwinIconShow(ICON, ICON_Confirm_E, 26, 280); dwinIconShow(ICON, ICON_Cancel_E, 146, 280); } @@ -1208,28 +1208,28 @@ void drawPrintingScreen() { void drawPrintProgressBar() { constexpr uint16_t y = 93, h = 21; dwinIconShow(ICON, ICON_Bar, 15, 93); - dwinDrawRectangle(1, BarFill_Color, 16 + _card_percent * 240 / 100, y, 256, y + h - 1); - dwinDrawIntValue(true, true, 0, font8x16, Percent_Color, Color_Bg_Black, 2, 117, y + 40, _card_percent); - dwinDrawString(false, font8x16, Percent_Color, Color_Bg_Black, 133, y + 40, F("%")); + dwinDrawRectangle(1, COLOR_BARFILL, 16 + _card_percent * 240 / 100, y, 256, y + h - 1); + dwinDrawIntValue(true, true, 0, font8x16, COLOR_PERCENT, COLOR_BG_BLACK, 2, 117, y + 40, _card_percent); + dwinDrawString(false, font8x16, COLOR_PERCENT, COLOR_BG_BLACK, 133, y + 40, F("%")); } void drawPrintProgressElapsed() { constexpr uint16_t x = 45, y = 192; duration_t elapsed = print_job_timer.duration(); // Print timer - dwinDrawIntValue(true, true, 1, font8x16, Color_White, Color_Bg_Black, 2, x, y, elapsed.value / 3600); - dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, x + 8 * 2, y, F(":")); - dwinDrawIntValue(true, true, 1, font8x16, Color_White, Color_Bg_Black, 2, x + 8 * 3, y, (elapsed.value % 3600) / 60); + dwinDrawIntValue(true, true, 1, font8x16, COLOR_WHITE, COLOR_BG_BLACK, 2, x, y, elapsed.value / 3600); + dwinDrawString(false, font8x16, COLOR_WHITE, COLOR_BG_BLACK, x + 8 * 2, y, F(":")); + dwinDrawIntValue(true, true, 1, font8x16, COLOR_WHITE, COLOR_BG_BLACK, 2, x + 8 * 3, y, (elapsed.value % 3600) / 60); } void drawPrintProgressRemain() { constexpr uint16_t x = 179, y = 192; - dwinDrawIntValue(true, true, 1, font8x16, Color_White, Color_Bg_Black, 2, x, y, _remain_time / 3600); - dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, x + 8 * 2, y, F(":")); - dwinDrawIntValue(true, true, 1, font8x16, Color_White, Color_Bg_Black, 2, x + 8 * 3, y, (_remain_time % 3600) / 60); + dwinDrawIntValue(true, true, 1, font8x16, COLOR_WHITE, COLOR_BG_BLACK, 2, x, y, _remain_time / 3600); + dwinDrawString(false, font8x16, COLOR_WHITE, COLOR_BG_BLACK, x + 8 * 2, y, F(":")); + dwinDrawIntValue(true, true, 1, font8x16, COLOR_WHITE, COLOR_BG_BLACK, 2, x + 8 * 3, y, (_remain_time % 3600) / 60); } void gotoPrintProcess() { - checkkey = PrintProcess; + checkkey = ID_PrintProcess; clearMainWindow(); drawPrintingScreen(); @@ -1241,7 +1241,7 @@ void gotoPrintProcess() { // Copy into filebuf string before entry char * const name = card.longest_filename(); const int8_t npos = _MAX(0U, DWIN_WIDTH - strlen(name) * MENU_CHR_W) / 2; - dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, npos, 60, name); + dwinDrawString(false, font8x16, COLOR_WHITE, COLOR_BG_BLACK, npos, 60, name); dwinIconShow(ICON, ICON_PrintTime, 17, 163); dwinIconShow(ICON, ICON_RemainTime, 150, 161); @@ -1252,7 +1252,7 @@ void gotoPrintProcess() { } void gotoMainMenu() { - checkkey = MainMenu; + checkkey = ID_MainMenu; clearMainWindow(); @@ -1285,51 +1285,63 @@ void hmiPlanMove(const feedRate_t fr_mm_s) { void hmiMoveDone(const AxisEnum axis) { encoderRate.enabled = false; planner.synchronize(); - checkkey = AxisMove; + checkkey = ID_AxisMove; dwinUpdateLCD(); } -void hmiMoveX() { - EncoderState encoder_diffState = encoderReceiveAnalyze(); - if (encoder_diffState == ENCODER_DIFF_NO) return; - if (applyEncoder(encoder_diffState, hmiValues.Move_X_scaled)) { - drawEditFloat3(1, hmiValues.Move_X_scaled); - return hmiMoveDone(X_AXIS); +#if HAS_X_AXIS + + void hmiMoveX() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); + if (encoder_diffState == ENCODER_DIFF_NO) return; + if (applyEncoder(encoder_diffState, hmiValues.moveScaled.x)) { + drawEditFloat3(1, hmiValues.moveScaled.x); + return hmiMoveDone(X_AXIS); + } + LIMIT(hmiValues.moveScaled.x, (X_MIN_POS) * MINUNITMULT, (X_MAX_POS) * MINUNITMULT); + current_position.x = hmiValues.moveScaled.x / MINUNITMULT; + drawEditFloat3(1, hmiValues.moveScaled.x, true); + dwinUpdateLCD(); + hmiPlanMove(homing_feedrate(X_AXIS)); } - LIMIT(hmiValues.Move_X_scaled, (X_MIN_POS) * MINUNITMULT, (X_MAX_POS) * MINUNITMULT); - current_position.x = hmiValues.Move_X_scaled / MINUNITMULT; - drawEditFloat3(1, hmiValues.Move_X_scaled, true); - dwinUpdateLCD(); - hmiPlanMove(homing_feedrate(X_AXIS)); -} -void hmiMoveY() { - EncoderState encoder_diffState = encoderReceiveAnalyze(); - if (encoder_diffState == ENCODER_DIFF_NO) return; - if (applyEncoder(encoder_diffState, hmiValues.Move_Y_scaled)) { - drawEditFloat3(2, hmiValues.Move_Y_scaled); - return hmiMoveDone(Y_AXIS); +#endif + +#if HAS_Y_AXIS + + void hmiMoveY() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); + if (encoder_diffState == ENCODER_DIFF_NO) return; + if (applyEncoder(encoder_diffState, hmiValues.moveScaled.y)) { + drawEditFloat3(2, hmiValues.moveScaled.y); + return hmiMoveDone(Y_AXIS); + } + LIMIT(hmiValues.moveScaled.y, (Y_MIN_POS) * MINUNITMULT, (Y_MAX_POS) * MINUNITMULT); + current_position.y = hmiValues.moveScaled.y / MINUNITMULT; + drawEditFloat3(2, hmiValues.moveScaled.y, true); + dwinUpdateLCD(); + hmiPlanMove(homing_feedrate(Y_AXIS)); } - LIMIT(hmiValues.Move_Y_scaled, (Y_MIN_POS) * MINUNITMULT, (Y_MAX_POS) * MINUNITMULT); - current_position.y = hmiValues.Move_Y_scaled / MINUNITMULT; - drawEditFloat3(2, hmiValues.Move_Y_scaled, true); - dwinUpdateLCD(); - hmiPlanMove(homing_feedrate(Y_AXIS)); -} -void hmiMoveZ() { - EncoderState encoder_diffState = encoderReceiveAnalyze(); - if (encoder_diffState == ENCODER_DIFF_NO) return; - if (applyEncoder(encoder_diffState, hmiValues.Move_Z_scaled)) { - drawEditFloat3(3, hmiValues.Move_Z_scaled); - return hmiMoveDone(Z_AXIS); +#endif + +#if HAS_Z_AXIS + + void hmiMoveZ() { + EncoderState encoder_diffState = encoderReceiveAnalyze(); + if (encoder_diffState == ENCODER_DIFF_NO) return; + if (applyEncoder(encoder_diffState, hmiValues.moveScaled.z)) { + drawEditFloat3(3, hmiValues.moveScaled.z); + return hmiMoveDone(Z_AXIS); + } + LIMIT(hmiValues.moveScaled.z, (Z_MIN_POS) * MINUNITMULT, (Z_MAX_POS) * MINUNITMULT); + current_position.z = hmiValues.moveScaled.z / MINUNITMULT; + drawEditFloat3(3, hmiValues.moveScaled.z, true); + dwinUpdateLCD(); + hmiPlanMove(homing_feedrate(Z_AXIS)); } - LIMIT(hmiValues.Move_Z_scaled, (Z_MIN_POS) * MINUNITMULT, (Z_MAX_POS) * MINUNITMULT); - current_position.z = hmiValues.Move_Z_scaled / MINUNITMULT; - drawEditFloat3(3, hmiValues.Move_Z_scaled, true); - dwinUpdateLCD(); - hmiPlanMove(homing_feedrate(Z_AXIS)); -} + +#endif #if HAS_HOTEND @@ -1337,14 +1349,14 @@ void hmiMoveZ() { static float last_E_scaled = 0; EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (applyEncoder(encoder_diffState, hmiValues.Move_E_scaled)) { - last_E_scaled = hmiValues.Move_E_scaled; + if (applyEncoder(encoder_diffState, hmiValues.moveScaled.e)) { + last_E_scaled = hmiValues.moveScaled.e; drawEditSignedFloat3(4, last_E_scaled); return hmiMoveDone(E_AXIS); } - LIMIT(hmiValues.Move_E_scaled, last_E_scaled - (EXTRUDE_MAXLENGTH) * MINUNITMULT, last_E_scaled + (EXTRUDE_MAXLENGTH) * MINUNITMULT); - current_position.e = hmiValues.Move_E_scaled / MINUNITMULT; - drawEditSignedFloat3(4, hmiValues.Move_E_scaled, true); + LIMIT(hmiValues.moveScaled.e, last_E_scaled - (EXTRUDE_MAXLENGTH) * MINUNITMULT, last_E_scaled + (EXTRUDE_MAXLENGTH) * MINUNITMULT); + current_position.e = hmiValues.moveScaled.e / MINUNITMULT; + drawEditSignedFloat3(4, hmiValues.moveScaled.e, true); dwinUpdateLCD(); hmiPlanMove(MMM_TO_MMS(FEEDRATE_E)); } @@ -1367,7 +1379,7 @@ void hmiMoveZ() { probe.offset.z = dwin_zoffset; TERN_(EEPROM_SETTINGS, settings.save()); #endif - checkkey = hmiValues.show_mode == -4 ? Prepare : Tune; + checkkey = hmiValues.show_mode == -4 ? ID_Prepare : ID_Tune; drawEditSignedFloat2(zoff_line, TERN(HAS_BED_PROBE, BABY_Z_VAR * 100, hmiValues.offset_value)); dwinUpdateLCD(); return; @@ -1400,19 +1412,19 @@ void hmiMoveZ() { #endif default: temp_line = TUNE_CASE_TEMP + MROWS - index_tune; } - if (applyEncoder(encoder_diffState, hmiValues.E_Temp)) { + if (applyEncoder(encoder_diffState, hmiValues.tempE)) { encoderRate.enabled = false; #if HAS_PREHEAT if (hmiValues.show_mode == -2) { - checkkey = PLAPreheat; - ui.material_preset[0].hotend_temp = hmiValues.E_Temp; + checkkey = ID_PLAPreheat; + ui.material_preset[0].hotend_temp = hmiValues.tempE; drawEditInteger3(temp_line, ui.material_preset[0].hotend_temp); return; } #if PREHEAT_COUNT > 1 if (hmiValues.show_mode == -3) { - checkkey = ABSPreheat; - ui.material_preset[1].hotend_temp = hmiValues.E_Temp; + checkkey = ID_ABSPreheat; + ui.material_preset[1].hotend_temp = hmiValues.tempE; drawEditInteger3(temp_line, ui.material_preset[1].hotend_temp); return; } @@ -1420,17 +1432,17 @@ void hmiMoveZ() { #endif if (hmiValues.show_mode == -1) // Temperature - checkkey = TemperatureID; + checkkey = ID_TemperatureID; else - checkkey = Tune; - drawEditInteger3(temp_line, hmiValues.E_Temp); - thermalManager.setTargetHotend(hmiValues.E_Temp, 0); + checkkey = ID_Tune; + drawEditInteger3(temp_line, hmiValues.tempE); + thermalManager.setTargetHotend(hmiValues.tempE, 0); return; } - // E_Temp limit - LIMIT(hmiValues.E_Temp, HEATER_0_MINTEMP, thermalManager.hotend_max_target(0)); - // E_Temp value - drawEditInteger3(temp_line, hmiValues.E_Temp, true); + // tempE limit + LIMIT(hmiValues.tempE, HEATER_0_MINTEMP, thermalManager.hotend_max_target(0)); + // tempE value + drawEditInteger3(temp_line, hmiValues.tempE, true); } #endif // HAS_HOTEND @@ -1451,33 +1463,33 @@ void hmiMoveZ() { #endif default: bed_line = TUNE_CASE_BED + MROWS - index_tune; } - if (applyEncoder(encoder_diffState, hmiValues.Bed_Temp)) { + if (applyEncoder(encoder_diffState, hmiValues.tempBed)) { encoderRate.enabled = false; #if HAS_PREHEAT if (hmiValues.show_mode == -2) { - checkkey = PLAPreheat; - ui.material_preset[0].bed_temp = hmiValues.Bed_Temp; + checkkey = ID_PLAPreheat; + ui.material_preset[0].bed_temp = hmiValues.tempBed; drawEditInteger3(bed_line, ui.material_preset[0].bed_temp); return; } #if PREHEAT_COUNT > 1 if (hmiValues.show_mode == -3) { - checkkey = ABSPreheat; - ui.material_preset[1].bed_temp = hmiValues.Bed_Temp; + checkkey = ID_ABSPreheat; + ui.material_preset[1].bed_temp = hmiValues.tempBed; drawEditInteger3(bed_line, ui.material_preset[1].bed_temp); return; } #endif #endif - checkkey = hmiValues.show_mode == -1 ? TemperatureID : Tune; - drawEditInteger3(bed_line, hmiValues.Bed_Temp); - thermalManager.setTargetBed(hmiValues.Bed_Temp); + checkkey = hmiValues.show_mode == -1 ? ID_TemperatureID : ID_Tune; + drawEditInteger3(bed_line, hmiValues.tempBed); + thermalManager.setTargetBed(hmiValues.tempBed); return; } - // Bed_Temp limit - LIMIT(hmiValues.Bed_Temp, BED_MINTEMP, BED_MAX_TARGET); - // Bed_Temp value - drawEditInteger3(bed_line, hmiValues.Bed_Temp, true); + // tempBed limit + LIMIT(hmiValues.tempBed, BED_MINTEMP, BED_MAX_TARGET); + // tempBed value + drawEditInteger3(bed_line, hmiValues.tempBed, true); } #endif // HAS_HEATED_BED @@ -1495,31 +1507,31 @@ void hmiMoveZ() { default: fan_line = TUNE_CASE_FAN + MROWS - index_tune; } - if (applyEncoder(encoder_diffState, hmiValues.Fan_speed)) { + if (applyEncoder(encoder_diffState, hmiValues.fanSpeed)) { encoderRate.enabled = false; if (hmiValues.show_mode == -2) { - checkkey = PLAPreheat; - ui.material_preset[0].fan_speed = hmiValues.Fan_speed; + checkkey = ID_PLAPreheat; + ui.material_preset[0].fan_speed = hmiValues.fanSpeed; drawEditInteger3(fan_line, ui.material_preset[0].fan_speed); return; } #if PREHEAT_COUNT > 1 if (hmiValues.show_mode == -3) { - checkkey = ABSPreheat; - ui.material_preset[1].fan_speed = hmiValues.Fan_speed; + checkkey = ID_ABSPreheat; + ui.material_preset[1].fan_speed = hmiValues.fanSpeed; drawEditInteger3(fan_line, ui.material_preset[1].fan_speed); return; } #endif - checkkey = hmiValues.show_mode == -1 ? TemperatureID : Tune; - drawEditInteger3(fan_line, hmiValues.Fan_speed); - thermalManager.set_fan_speed(0, hmiValues.Fan_speed); + checkkey = hmiValues.show_mode == -1 ? ID_TemperatureID : ID_Tune; + drawEditInteger3(fan_line, hmiValues.fanSpeed); + thermalManager.set_fan_speed(0, hmiValues.fanSpeed); return; } - // Fan_speed limit - LIMIT(hmiValues.Fan_speed, 0, 255); - // Fan_speed value - drawEditInteger3(fan_line, hmiValues.Fan_speed, true); + // fanSpeed limit + LIMIT(hmiValues.fanSpeed, 0, 255); + // fanSpeed value + drawEditInteger3(fan_line, hmiValues.fanSpeed, true); } #endif // HAS_PREHEAT && HAS_FAN @@ -1527,17 +1539,17 @@ void hmiMoveZ() { void hmiPrintSpeed() { EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (applyEncoder(encoder_diffState, hmiValues.print_speed)) { - checkkey = Tune; + if (applyEncoder(encoder_diffState, hmiValues.printSpeed)) { + checkkey = ID_Tune; encoderRate.enabled = false; - feedrate_percentage = hmiValues.print_speed; - drawEditInteger3(select_tune.now + MROWS - index_tune, hmiValues.print_speed); + feedrate_percentage = hmiValues.printSpeed; + drawEditInteger3(select_tune.now + MROWS - index_tune, hmiValues.printSpeed); return; } - // print_speed limit - LIMIT(hmiValues.print_speed, MIN_PRINT_SPEED, MAX_PRINT_SPEED); - // print_speed value - drawEditInteger3(select_tune.now + MROWS - index_tune, hmiValues.print_speed, true); + // printSpeed limit + LIMIT(hmiValues.printSpeed, MIN_PRINT_SPEED, MAX_PRINT_SPEED); + // printSpeed value + drawEditInteger3(select_tune.now + MROWS - index_tune, hmiValues.printSpeed, true); } #define LAST_AXIS TERN(HAS_HOTEND, E_AXIS, Z_AXIS) @@ -1545,37 +1557,37 @@ void hmiPrintSpeed() { void hmiMaxFeedspeedXYZE() { EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (applyEncoder(encoder_diffState, hmiValues.Max_Feedspeed)) { - checkkey = MaxSpeed; + if (applyEncoder(encoder_diffState, hmiValues.maxFeedSpeed)) { + checkkey = ID_MaxSpeed; encoderRate.enabled = false; if (WITHIN(hmiFlag.feedspeed_axis, X_AXIS, LAST_AXIS)) - planner.set_max_feedrate(hmiFlag.feedspeed_axis, hmiValues.Max_Feedspeed); - drawEditInteger4(select_speed.now, hmiValues.Max_Feedspeed); + planner.set_max_feedrate(hmiFlag.feedspeed_axis, hmiValues.maxFeedSpeed); + drawEditInteger4(select_speed.now, hmiValues.maxFeedSpeed); return; } // MaxFeedspeed limit if (WITHIN(hmiFlag.feedspeed_axis, X_AXIS, LAST_AXIS)) - LIMIT(hmiValues.Max_Feedspeed, min_feedrate_edit_values[hmiFlag.feedspeed_axis], max_feedrate_edit_values[hmiFlag.feedspeed_axis]); + LIMIT(hmiValues.maxFeedSpeed, min_feedrate_edit_values[hmiFlag.feedspeed_axis], max_feedrate_edit_values[hmiFlag.feedspeed_axis]); // MaxFeedspeed value - drawEditInteger4(select_speed.now, hmiValues.Max_Feedspeed, true); + drawEditInteger4(select_speed.now, hmiValues.maxFeedSpeed, true); } void hmiMaxAccelerationXYZE() { EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (applyEncoder(encoder_diffState, hmiValues.Max_Acceleration)) { - checkkey = MaxAcceleration; + if (applyEncoder(encoder_diffState, hmiValues.maxAcceleration)) { + checkkey = ID_MaxAcceleration; encoderRate.enabled = false; if (WITHIN(hmiFlag.acc_axis, X_AXIS, LAST_AXIS)) - planner.set_max_acceleration(hmiFlag.acc_axis, hmiValues.Max_Acceleration); - drawEditInteger4(select_acc.now, hmiValues.Max_Acceleration); + planner.set_max_acceleration(hmiFlag.acc_axis, hmiValues.maxAcceleration); + drawEditInteger4(select_acc.now, hmiValues.maxAcceleration); return; } // MaxAcceleration limit if (WITHIN(hmiFlag.acc_axis, X_AXIS, LAST_AXIS)) - LIMIT(hmiValues.Max_Acceleration, min_acceleration_edit_values[hmiFlag.acc_axis], max_acceleration_edit_values[hmiFlag.acc_axis]); + LIMIT(hmiValues.maxAcceleration, min_acceleration_edit_values[hmiFlag.acc_axis], max_acceleration_edit_values[hmiFlag.acc_axis]); // MaxAcceleration value - drawEditInteger4(select_acc.now, hmiValues.Max_Acceleration, true); + drawEditInteger4(select_acc.now, hmiValues.maxAcceleration, true); } #if HAS_CLASSIC_JERK @@ -1583,19 +1595,19 @@ void hmiMaxAccelerationXYZE() { void hmiMaxJerkXYZE() { EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (applyEncoder(encoder_diffState, hmiValues.Max_Jerk_scaled)) { - checkkey = MaxJerk; + if (applyEncoder(encoder_diffState, hmiValues.maxJerkScaled)) { + checkkey = ID_MaxJerk; encoderRate.enabled = false; if (WITHIN(hmiFlag.jerk_axis, X_AXIS, LAST_AXIS)) - planner.set_max_jerk(hmiFlag.jerk_axis, hmiValues.Max_Jerk_scaled / MINUNITMULT); - drawEditFloat3(select_jerk.now, hmiValues.Max_Jerk_scaled); + planner.set_max_jerk(hmiFlag.jerk_axis, hmiValues.maxJerkScaled / MINUNITMULT); + drawEditFloat3(select_jerk.now, hmiValues.maxJerkScaled); return; } // MaxJerk limit if (WITHIN(hmiFlag.jerk_axis, X_AXIS, LAST_AXIS)) - LIMIT(hmiValues.Max_Jerk_scaled, min_jerk_edit_values[hmiFlag.jerk_axis] * MINUNITMULT, max_jerk_edit_values[hmiFlag.jerk_axis] * MINUNITMULT); + LIMIT(hmiValues.maxJerkScaled, min_jerk_edit_values[hmiFlag.jerk_axis] * MINUNITMULT, max_jerk_edit_values[hmiFlag.jerk_axis] * MINUNITMULT); // MaxJerk value - drawEditFloat3(select_jerk.now, hmiValues.Max_Jerk_scaled, true); + drawEditFloat3(select_jerk.now, hmiValues.maxJerkScaled, true); } #endif // HAS_CLASSIC_JERK @@ -1603,19 +1615,19 @@ void hmiMaxAccelerationXYZE() { void hmiStepXYZE() { EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; - if (applyEncoder(encoder_diffState, hmiValues.Max_Step_scaled)) { - checkkey = Step; + if (applyEncoder(encoder_diffState, hmiValues.maxStepScaled)) { + checkkey = ID_Step; encoderRate.enabled = false; if (WITHIN(hmiFlag.step_axis, X_AXIS, LAST_AXIS)) - planner.settings.axis_steps_per_mm[hmiFlag.step_axis] = hmiValues.Max_Step_scaled / MINUNITMULT; - drawEditFloat3(select_step.now, hmiValues.Max_Step_scaled); + planner.settings.axis_steps_per_mm[hmiFlag.step_axis] = hmiValues.maxStepScaled / MINUNITMULT; + drawEditFloat3(select_step.now, hmiValues.maxStepScaled); return; } // Step limit if (WITHIN(hmiFlag.step_axis, X_AXIS, LAST_AXIS)) - LIMIT(hmiValues.Max_Step_scaled, min_steps_edit_values[hmiFlag.step_axis] * MINUNITMULT, max_steps_edit_values[hmiFlag.step_axis] * MINUNITMULT); + LIMIT(hmiValues.maxStepScaled, min_steps_edit_values[hmiFlag.step_axis] * MINUNITMULT, max_steps_edit_values[hmiFlag.step_axis] * MINUNITMULT); // Step value - drawEditFloat3(select_step.now, hmiValues.Max_Step_scaled, true); + drawEditFloat3(select_step.now, hmiValues.maxStepScaled, true); } // Draw X, Y, Z and blink if in an un-homed or un-trusted state @@ -1631,11 +1643,11 @@ void _update_axis_value(const AxisEnum axis, const uint16_t x, const uint16_t y, if (force || changed || draw_qmark || draw_empty) { if (blink && draw_qmark) - dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, x, y, F("???.?")); + dwinDrawString(true, font8x16, COLOR_WHITE, COLOR_BG_BLACK, x, y, F("???.?")); else if (blink && draw_empty) - dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, x, y, F(" ")); + dwinDrawString(true, font8x16, COLOR_WHITE, COLOR_BG_BLACK, x, y, F(" ")); else - dwinDrawFloatValue(true, true, 0, font8x16, Color_White, Color_Bg_Black, 3, 1, x, y, p); + dwinDrawFloatValue(true, true, 0, font8x16, COLOR_WHITE, COLOR_BG_BLACK, 3, 1, x, y, p); } } @@ -1653,7 +1665,7 @@ void _draw_xyz_position(const bool force) { //SERIAL_EOL(); } -void update_variable() { +void updateVariable() { #if HAS_HOTEND static celsius_t _hotendtemp = 0, _hotendtarget = 0; const celsius_t hc = thermalManager.wholeDegHotend(0), @@ -1678,7 +1690,7 @@ void update_variable() { if (_new_fanspeed) _fanspeed = thermalManager.fan_speed[0]; #endif - if (checkkey == Tune) { + if (checkkey == ID_Tune) { // Tune page temperature update #if HAS_HOTEND if (_new_hotend_target) @@ -1693,7 +1705,7 @@ void update_variable() { drawEditInteger3(TUNE_CASE_FAN + MROWS - index_tune, _fanspeed); #endif } - else if (checkkey == TemperatureID) { + else if (checkkey == ID_TemperatureID) { // Temperature page temperature update #if HAS_HOTEND if (_new_hotend_target) drawEditInteger3(TEMP_CASE_TEMP, _hotendtarget); @@ -1746,11 +1758,11 @@ void update_variable() { _offset = BABY_Z_VAR; if (BABY_Z_VAR < 0) { drawStatFloat(207, 417, -_offset); - dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, 205, 419, F("-")); + dwinDrawString(true, font8x16, COLOR_WHITE, COLOR_BG_BLACK, 205, 419, F("-")); } else { drawStatFloat(207, 417, _offset); - dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, 205, 419, F(" ")); + dwinDrawString(true, font8x16, COLOR_WHITE, COLOR_BG_BLACK, 205, 419, F(" ")); } } @@ -1893,8 +1905,8 @@ void redrawSDList() { TERN_(SCROLL_LONG_FILENAMES, initSDItemShift()); } else { - dwinDrawRectangle(1, Color_Bg_Red, 10, MBASE(3) - 10, DWIN_WIDTH - 10, MBASE(4)); - dwinDrawString(false, font16x32, Color_Yellow, Color_Bg_Red, ((DWIN_WIDTH) - 8 * 16) / 2, MBASE(3), F("No Media")); + dwinDrawRectangle(1, COLOR_BG_RED, 10, MBASE(3) - 10, DWIN_WIDTH - 10, MBASE(4)); + dwinDrawString(false, font16x32, COLOR_YELLOW, COLOR_BG_RED, ((DWIN_WIDTH) - 8 * 16) / 2, MBASE(3), F("No Media")); } } @@ -1921,15 +1933,15 @@ void hmiSDCardUpdate() { DWIN_lcd_sd_status = card.isMounted(); //SERIAL_ECHOLNPGM("HMI_SDCardUpdate: ", DWIN_lcd_sd_status); if (DWIN_lcd_sd_status) { - if (checkkey == SelectFile) + if (checkkey == ID_SelectFile) redrawSDList(); } else { // clean file icon - if (checkkey == SelectFile) { + if (checkkey == ID_SelectFile) { redrawSDList(); } - else if (checkkey == PrintProcess || checkkey == Tune || printingIsActive()) { + else if (checkkey == ID_PrintProcess || checkkey == ID_Tune || printingIsActive()) { // TODO: Move card removed abort handling // to CardReader::manage_media. card.abortFilePrintSoon(); @@ -1947,29 +1959,29 @@ void hmiSDCardUpdate() { // void drawStatusArea(const bool with_update) { - dwinDrawRectangle(1, Color_Bg_Black, 0, STATUS_Y, DWIN_WIDTH, DWIN_HEIGHT - 1); + dwinDrawRectangle(1, COLOR_BG_BLACK, 0, STATUS_Y, DWIN_WIDTH, DWIN_HEIGHT - 1); #if HAS_HOTEND dwinIconShow(ICON, ICON_HotendTemp, 10, 383); drawStatInt(28, 384, thermalManager.wholeDegHotend(0)); - dwinDrawString(false, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 25 + 3 * STAT_CHR_W + 5, 384, F("/")); + dwinDrawString(false, DWIN_FONT_STAT, COLOR_WHITE, COLOR_BG_BLACK, 25 + 3 * STAT_CHR_W + 5, 384, F("/")); drawStatInt(25 + 4 * STAT_CHR_W + 6, 384, thermalManager.degTargetHotend(0)); dwinIconShow(ICON, ICON_StepE, 112, 417); drawStatInt(116 + 2 * STAT_CHR_W, 417, planner.flow_percentage[0]); - dwinDrawString(false, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 116 + 5 * STAT_CHR_W + 2, 417, F("%")); + dwinDrawString(false, DWIN_FONT_STAT, COLOR_WHITE, COLOR_BG_BLACK, 116 + 5 * STAT_CHR_W + 2, 417, F("%")); #endif #if HAS_HEATED_BED dwinIconShow(ICON, ICON_BedTemp, 10, 416); drawStatInt(28, 417, thermalManager.wholeDegBed()); - dwinDrawString(false, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 25 + 3 * STAT_CHR_W + 5, 417, F("/")); + dwinDrawString(false, DWIN_FONT_STAT, COLOR_WHITE, COLOR_BG_BLACK, 25 + 3 * STAT_CHR_W + 5, 417, F("/")); drawStatInt(25 + 4 * STAT_CHR_W + 6, 417, thermalManager.degTargetBed()); #endif dwinIconShow(ICON, ICON_Speed, 113, 383); drawStatInt(116 + 2 * STAT_CHR_W, 384, feedrate_percentage); - dwinDrawString(false, DWIN_FONT_STAT, Color_White, Color_Bg_Black, 116 + 5 * STAT_CHR_W + 2, 384, F("%")); + dwinDrawString(false, DWIN_FONT_STAT, COLOR_WHITE, COLOR_BG_BLACK, 116 + 5 * STAT_CHR_W + 2, 384, F("%")); #if HAS_FAN dwinIconShow(ICON, ICON_FanSpeed, 187, 383); @@ -1982,14 +1994,14 @@ void drawStatusArea(const bool with_update) { if (BABY_Z_VAR < 0) { drawStatFloat(207, 417, -BABY_Z_VAR * 100); - dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, 205, 419, F("-")); + dwinDrawString(true, font8x16, COLOR_WHITE, COLOR_BG_BLACK, 205, 419, F("-")); } else { drawStatFloat(207, 417, BABY_Z_VAR * 100); - dwinDrawString(true, font8x16, Color_White, Color_Bg_Black, 205, 419, F(" ")); + dwinDrawString(true, font8x16, COLOR_WHITE, COLOR_BG_BLACK, 205, 419, F(" ")); } - dwinDrawRectangle(1, Line_Color, 0, 449, DWIN_WIDTH, 451); + dwinDrawRectangle(1, COLOR_LINE, 0, 449, DWIN_WIDTH, 451); dwinIconShow(ICON, ICON_MaxSpeedX, 10, 456); dwinIconShow(ICON, ICON_MaxSpeedY, 95, 456); @@ -2010,8 +2022,8 @@ void hmiStartFrame(const bool with_update) { void drawInfoMenu() { clearMainWindow(); - dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, (DWIN_WIDTH - strlen(MACHINE_SIZE) * MENU_CHR_W) / 2, 122, F(MACHINE_SIZE)); - dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, (DWIN_WIDTH - strlen(SHORT_BUILD_VERSION) * MENU_CHR_W) / 2, 195, F(SHORT_BUILD_VERSION)); + dwinDrawString(false, font8x16, COLOR_WHITE, COLOR_BG_BLACK, (DWIN_WIDTH - strlen(MACHINE_SIZE) * MENU_CHR_W) / 2, 122, F(MACHINE_SIZE)); + dwinDrawString(false, font8x16, COLOR_WHITE, COLOR_BG_BLACK, (DWIN_WIDTH - strlen(SHORT_BUILD_VERSION) * MENU_CHR_W) / 2, 195, F(SHORT_BUILD_VERSION)); if (hmiIsChinese()) { dwinFrameTitleCopy(30, 17, 28, 13); // "Info" @@ -2031,12 +2043,12 @@ void drawInfoMenu() { dwinFrameAreaCopy(1, 146, 151, 254, 161, 82, 175); // "Firmware Version" dwinFrameAreaCopy(1, 1, 164, 96, 175, 89, 248); // "Contact details" } - dwinDrawString(false, font8x16, Color_White, Color_Bg_Black, (DWIN_WIDTH - strlen(CORP_WEBSITE) * MENU_CHR_W) / 2, 268, F(CORP_WEBSITE)); + dwinDrawString(false, font8x16, COLOR_WHITE, COLOR_BG_BLACK, (DWIN_WIDTH - strlen(CORP_WEBSITE) * MENU_CHR_W) / 2, 268, F(CORP_WEBSITE)); drawBackFirst(); for (uint8_t i = 0; i < 3; ++i) { dwinIconShow(ICON, ICON_PrintSize + i, 26, 99 + i * 73); - dwinDrawLine(Line_Color, 16, MBASE(2) + i * 73, 256, 156 + i * 73); + dwinDrawLine(COLOR_LINE, 16, MBASE(2) + i * 73, 256, 156 + i * 73); } } @@ -2084,19 +2096,19 @@ void hmiMainMenu() { else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_page.now) { case PAGE_PRINT: - checkkey = SelectFile; + checkkey = ID_SelectFile; drawPrintFileMenu(); break; case PAGE_PREPARE: - checkkey = Prepare; + checkkey = ID_Prepare; select_prepare.reset(); index_prepare = MROWS; drawPrepareMenu(); break; case PAGE_CONTROL: - checkkey = Control; + checkkey = ID_Control; select_control.reset(); index_control = MROWS; drawControlMenu(); @@ -2104,10 +2116,10 @@ void hmiMainMenu() { case PAGE_INFO_LEVELING: #if HAS_ONESTEP_LEVELING - checkkey = Leveling; + checkkey = ID_Leveling; hmiLeveling(); #else - checkkey = Info; + checkkey = ID_Info; drawInfoMenu(); #endif break; @@ -2273,7 +2285,7 @@ void hmiPrinting() { else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_print.now) { case PRINT_SETUP: - checkkey = Tune; + checkkey = ID_Tune; hmiValues.show_mode = 0; select_tune.reset(); index_tune = MROWS; @@ -2299,14 +2311,14 @@ void hmiPrinting() { } else { hmiFlag.select_flag = true; - checkkey = Print_window; + checkkey = ID_PrintWindow; popupwindowPauseOrStop(); } break; case PRINT_STOP: hmiFlag.select_flag = true; - checkkey = Print_window; + checkkey = ID_PrintWindow; popupwindowPauseOrStop(); break; @@ -2335,7 +2347,7 @@ void hmiPauseOrStop() { } else if (select_print.now == PRINT_STOP) { if (hmiFlag.select_flag) { - checkkey = Back_Main; + checkkey = ID_BackMain; wait_for_heatup = wait_for_user = false; // Stop waiting for heating/user card.abortFilePrintSoon(); // Let the main loop handle SD abort dwin_abort_flag = true; // Reset feedrate, return to Home @@ -2518,7 +2530,7 @@ void itemHomeOffs_X(const uint8_t row) { #endif } drawMenuLine(row, ICON_HomeOffset); - drawEditSignedFloat3(row, hmiValues.Home_OffX_scaled); + drawEditSignedFloat3(row, hmiValues.homeOffsScaled.x); } void itemHomeOffs_Y(const uint8_t row) { @@ -2533,7 +2545,7 @@ void itemHomeOffs_Y(const uint8_t row) { #endif } drawMenuLine(row, ICON_HomeOffset); - drawEditSignedFloat3(row, hmiValues.Home_OffY_scaled); + drawEditSignedFloat3(row, hmiValues.homeOffsScaled.y); } void itemHomeOffs_Z(const uint8_t row) { @@ -2548,7 +2560,7 @@ void itemHomeOffs_Z(const uint8_t row) { #endif } drawMenuLine(row, ICON_HomeOffset); - drawEditSignedFloat3(row, hmiValues.Home_OffZ_scaled); + drawEditSignedFloat3(row, hmiValues.homeOffsScaled.z); } void drawHomeOffMenu() { @@ -2593,8 +2605,8 @@ void drawHomeOffMenu() { #endif } - drawEditSignedFloat3(1, hmiValues.Probe_OffX_scaled); - drawEditSignedFloat3(2, hmiValues.Probe_OffY_scaled); + drawEditSignedFloat3(1, hmiValues.probeOffsScaled.x); + drawEditSignedFloat3(2, hmiValues.probeOffsScaled.y); if (select_item.now != CASE_BACK) drawMenuCursor(select_item.now); } @@ -2673,7 +2685,7 @@ void hmiPrepare() { gotoMainMenu(); break; case PREPARE_CASE_MOVE: - checkkey = AxisMove; + checkkey = ID_AxisMove; select_axis.reset(); drawMoveMenu(); @@ -2681,15 +2693,15 @@ void hmiPrepare() { drawEditFloat3(2, current_position.y * MINUNITMULT); drawEditFloat3(3, current_position.z * MINUNITMULT); #if HAS_HOTEND - hmiValues.Move_E_scaled = current_position.e * MINUNITMULT; - drawEditSignedFloat3(4, hmiValues.Move_E_scaled); + hmiValues.moveScaled.e = current_position.e * MINUNITMULT; + drawEditSignedFloat3(4, hmiValues.moveScaled.e); #endif break; case PREPARE_CASE_DISA: queue.inject(F("M84")); break; case PREPARE_CASE_HOME: // Homing - checkkey = Last_Prepare; + checkkey = ID_LastPrepare; index_prepare = MROWS; queue.inject_P(G28_STR); // G28 will set home_flag popupWindowHome(); @@ -2698,7 +2710,7 @@ void hmiPrepare() { #if HAS_ZOFFSET_ITEM case PREPARE_CASE_ZOFF: #if ANY(HAS_BED_PROBE, BABYSTEPPING) - checkkey = Homeoffset; + checkkey = ID_HomeOffset; hmiValues.show_mode = -4; hmiValues.offset_value = BABY_Z_VAR * 100; drawEditSignedFloat2(PREPARE_CASE_ZOFF + MROWS - index_prepare, hmiValues.offset_value, true); @@ -2879,13 +2891,13 @@ void hmiControl() { gotoMainMenu(); break; case CONTROL_CASE_TEMP: - checkkey = TemperatureID; + checkkey = ID_TemperatureID; hmiValues.show_mode = -1; select_temp.reset(); drawTemperatureMenu(); break; case CONTROL_CASE_MOVE: - checkkey = Motion; + checkkey = ID_Motion; select_motion.reset(); drawMotionMenu(); break; @@ -2904,12 +2916,12 @@ void hmiControl() { break; #endif case CONTROL_CASE_ADVSET: - checkkey = AdvSet; + checkkey = ID_AdvSet; select_advset.reset(); drawAdvancedSettingsMenu(); break; case CONTROL_CASE_INFO: - checkkey = Info; + checkkey = ID_Info; drawInfoMenu(); break; default: break; @@ -2937,11 +2949,11 @@ void hmiAxisMove() { if (hmiFlag.cold_flag) { if (encoder_diffState == ENCODER_DIFF_ENTER) { hmiFlag.cold_flag = false; - hmiValues.Move_E_scaled = current_position.e * MINUNITMULT; + hmiValues.moveScaled.e = current_position.e * MINUNITMULT; drawMoveMenu(); - drawEditFloat3(1, hmiValues.Move_X_scaled); - drawEditFloat3(2, hmiValues.Move_Y_scaled); - drawEditFloat3(3, hmiValues.Move_Z_scaled); + TERN_(HAS_X_AXIS, drawEditFloat3(1, hmiValues.moveScaled.x)); + TERN_(HAS_Y_AXIS, drawEditFloat3(2, hmiValues.moveScaled.y)); + TERN_(HAS_Z_AXIS, drawEditFloat3(3, hmiValues.moveScaled.z)); drawEditSignedFloat3(4, 0); dwinUpdateLCD(); } @@ -2959,45 +2971,52 @@ void hmiAxisMove() { else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_axis.now) { case CASE_BACK: - checkkey = Prepare; + checkkey = ID_Prepare; select_prepare.set(1); index_prepare = MROWS; drawPrepareMenu(); break; - case 1: // X axis move - checkkey = Move_X; - hmiValues.Move_X_scaled = current_position.x * MINUNITMULT; - drawEditFloat3(1, hmiValues.Move_X_scaled, true); - encoderRate.enabled = true; - break; - case 2: // Y axis move - checkkey = Move_Y; - hmiValues.Move_Y_scaled = current_position.y * MINUNITMULT; - drawEditFloat3(2, hmiValues.Move_Y_scaled, true); - encoderRate.enabled = true; - break; - case 3: // Z axis move - checkkey = Move_Z; - hmiValues.Move_Z_scaled = current_position.z * MINUNITMULT; - drawEditFloat3(3, hmiValues.Move_Z_scaled, true); - encoderRate.enabled = true; - break; - #if HAS_HOTEND - case 4: // Extruder - #if ENABLED(PREVENT_COLD_EXTRUSION) - if (thermalManager.tooColdToExtrude(0)) { - hmiFlag.cold_flag = true; - popupWindowETempTooLow(); - dwinUpdateLCD(); - return; - } - #endif - checkkey = Extruder; - hmiValues.Move_E_scaled = current_position.e * MINUNITMULT; - drawEditSignedFloat3(4, hmiValues.Move_E_scaled, true); - encoderRate.enabled = true; - break; - #endif + + #if HAS_X_AXIS + case 1: // X axis move + checkkey = ID_MoveX; + hmiValues.moveScaled.x = current_position.x * MINUNITMULT; + drawEditFloat3(1, hmiValues.moveScaled.x, true); + encoderRate.enabled = true; + break; + #endif + #if HAS_Y_AXIS + case 2: // Y axis move + checkkey = ID_MoveY; + hmiValues.moveScaled.y = current_position.y * MINUNITMULT; + drawEditFloat3(2, hmiValues.moveScaled.y, true); + encoderRate.enabled = true; + break; + #endif + #if HAS_Z_AXIS + case 3: // Z axis move + checkkey = ID_MoveZ; + hmiValues.moveScaled.z = current_position.z * MINUNITMULT; + drawEditFloat3(3, hmiValues.moveScaled.z, true); + encoderRate.enabled = true; + break; + #endif + #if HAS_HOTEND + case 4: // Extruder + #if ENABLED(PREVENT_COLD_EXTRUSION) + if (thermalManager.tooColdToExtrude(0)) { + hmiFlag.cold_flag = true; + popupWindowETempTooLow(); + dwinUpdateLCD(); + return; + } + #endif + checkkey = ID_Extruder; + hmiValues.moveScaled.e = current_position.e * MINUNITMULT; + drawEditSignedFloat3(4, hmiValues.moveScaled.e, true); + encoderRate.enabled = true; + break; + #endif } } dwinUpdateLCD(); @@ -3018,39 +3037,39 @@ void hmiTemperature() { else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_temp.now) { case CASE_BACK: - checkkey = Control; + checkkey = ID_Control; select_control.set(1); index_control = MROWS; drawControlMenu(); break; #if HAS_HOTEND case TEMP_CASE_TEMP: - checkkey = ETemp; - hmiValues.E_Temp = thermalManager.degTargetHotend(0); - drawEditInteger3(1, hmiValues.E_Temp, true); + checkkey = ID_ETemp; + hmiValues.tempE = thermalManager.degTargetHotend(0); + drawEditInteger3(1, hmiValues.tempE, true); encoderRate.enabled = true; break; #endif #if HAS_HEATED_BED case TEMP_CASE_BED: - checkkey = BedTemp; - hmiValues.Bed_Temp = thermalManager.degTargetBed(); - drawEditInteger3(2, hmiValues.Bed_Temp, true); + checkkey = ID_BedTemp; + hmiValues.tempBed = thermalManager.degTargetBed(); + drawEditInteger3(2, hmiValues.tempBed, true); encoderRate.enabled = true; break; #endif #if HAS_FAN case TEMP_CASE_FAN: - checkkey = FanSpeed; - hmiValues.Fan_speed = thermalManager.fan_speed[0]; - drawEditInteger3(3, hmiValues.Fan_speed, true); + checkkey = ID_FanSpeed; + hmiValues.fanSpeed = thermalManager.fan_speed[0]; + drawEditInteger3(3, hmiValues.fanSpeed, true); encoderRate.enabled = true; break; #endif #if HAS_PREHEAT case TEMP_CASE_PLA: { - checkkey = PLAPreheat; + checkkey = ID_PLAPreheat; select_PLA.reset(); hmiValues.show_mode = -2; @@ -3129,7 +3148,7 @@ void hmiTemperature() { #if PREHEAT_COUNT > 1 case TEMP_CASE_ABS: { // ABS preheat setting - checkkey = ABSPreheat; + checkkey = ID_ABSPreheat; select_ABS.reset(); hmiValues.show_mode = -3; @@ -3448,30 +3467,30 @@ void hmiMotion() { else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_motion.now) { case CASE_BACK: - checkkey = Control; + checkkey = ID_Control; select_control.set(CONTROL_CASE_MOVE); index_control = MROWS; drawControlMenu(); break; case MOTION_CASE_RATE: - checkkey = MaxSpeed; + checkkey = ID_MaxSpeed; select_speed.reset(); drawMaxSpeedMenu(); break; case MOTION_CASE_ACCEL: - checkkey = MaxAcceleration; + checkkey = ID_MaxAcceleration; select_acc.reset(); drawMaxAccelMenu(); break; #if HAS_CLASSIC_JERK case MOTION_CASE_JERK: - checkkey = MaxJerk; + checkkey = ID_MaxJerk; select_jerk.reset(); drawMaxJerkMenu(); break; #endif case MOTION_CASE_STEPS: - checkkey = Step; + checkkey = ID_Step; select_step.reset(); drawStepsMenu(); break; @@ -3523,7 +3542,7 @@ void hmiAdvSet() { else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_advset.now) { case CASE_BACK: - checkkey = Control; + checkkey = ID_Control; select_control.set(CONTROL_CASE_ADVSET); index_control = CONTROL_CASE_ADVSET; drawControlMenu(); @@ -3531,21 +3550,21 @@ void hmiAdvSet() { #if HAS_HOME_OFFSET case ADVSET_CASE_HOMEOFF: - checkkey = HomeOff; + checkkey = ID_HomeOff; select_item.reset(); - hmiValues.Home_OffX_scaled = home_offset.x * 10; - hmiValues.Home_OffY_scaled = home_offset.y * 10; - hmiValues.Home_OffZ_scaled = home_offset.z * 10; + hmiValues.homeOffsScaled.x = home_offset.x * 10; + hmiValues.homeOffsScaled.y = home_offset.y * 10; + hmiValues.homeOffsScaled.z = home_offset.z * 10; drawHomeOffMenu(); break; #endif #if HAS_ONESTEP_LEVELING case ADVSET_CASE_PROBEOFF: - checkkey = ProbeOff; + checkkey = ID_ProbeOff; select_item.reset(); - hmiValues.Probe_OffX_scaled = probe.offset.x * 10; - hmiValues.Probe_OffY_scaled = probe.offset.y * 10; + hmiValues.probeOffsScaled.x = probe.offset.x * 10; + hmiValues.probeOffsScaled.y = probe.offset.y * 10; drawProbeOffMenu(); break; #endif @@ -3591,23 +3610,23 @@ void hmiAdvSet() { else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_item.now) { case CASE_BACK: - checkkey = AdvSet; + checkkey = ID_AdvSet; select_advset.set(ADVSET_CASE_HOMEOFF); drawAdvancedSettingsMenu(); break; case 1: // Home Offset X - checkkey = HomeOffX; - drawEditSignedFloat3(1, hmiValues.Home_OffX_scaled, true); + checkkey = ID_HomeOffX; + drawEditSignedFloat3(1, hmiValues.homeOffsScaled.x, true); encoderRate.enabled = true; break; case 2: // Home Offset Y - checkkey = HomeOffY; - drawEditSignedFloat3(2, hmiValues.Home_OffY_scaled, true); + checkkey = ID_HomeOffY; + drawEditSignedFloat3(2, hmiValues.homeOffsScaled.y, true); encoderRate.enabled = true; break; case 3: // Home Offset Z - checkkey = HomeOffZ; - drawEditSignedFloat3(3, hmiValues.Home_OffZ_scaled, true); + checkkey = ID_HomeOffZ; + drawEditSignedFloat3(3, hmiValues.homeOffsScaled.z, true); encoderRate.enabled = true; break; default: break; @@ -3621,7 +3640,7 @@ void hmiAdvSet() { if (encoder_diffState == ENCODER_DIFF_NO) return; if (applyEncoder(encoder_diffState, posScaled)) { - checkkey = HomeOff; + checkkey = ID_HomeOff; encoderRate.enabled = false; set_home_offset(axis, posScaled / 10); drawEditSignedFloat3(select_item.now, posScaled); @@ -3631,9 +3650,9 @@ void hmiAdvSet() { drawEditSignedFloat3(select_item.now, posScaled, true); } - void hmiHomeOffX() { hmiHomeOffN(X_AXIS, hmiValues.Home_OffX_scaled, -500, 500); } - void hmiHomeOffY() { hmiHomeOffN(Y_AXIS, hmiValues.Home_OffY_scaled, -500, 500); } - void hmiHomeOffZ() { hmiHomeOffN(Z_AXIS, hmiValues.Home_OffZ_scaled, -20, 20); } + void hmiHomeOffX() { hmiHomeOffN(X_AXIS, hmiValues.homeOffsScaled.x, -500, 500); } + void hmiHomeOffY() { hmiHomeOffN(Y_AXIS, hmiValues.homeOffsScaled.y, -500, 500); } + void hmiHomeOffZ() { hmiHomeOffN(Z_AXIS, hmiValues.homeOffsScaled.z, -20, 20); } #endif // HAS_HOME_OFFSET @@ -3654,18 +3673,18 @@ void hmiAdvSet() { else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_item.now) { case CASE_BACK: - checkkey = AdvSet; + checkkey = ID_AdvSet; select_advset.set(ADVSET_CASE_PROBEOFF); drawAdvancedSettingsMenu(); break; case 1: // Probe Offset X - checkkey = ProbeOffX; - drawEditSignedFloat3(1, hmiValues.Probe_OffX_scaled, true); + checkkey = ID_ProbeOffX; + drawEditSignedFloat3(1, hmiValues.probeOffsScaled.x, true); encoderRate.enabled = true; break; case 2: // Probe Offset Y - checkkey = ProbeOffY; - drawEditSignedFloat3(2, hmiValues.Probe_OffY_scaled, true); + checkkey = ID_ProbeOffY; + drawEditSignedFloat3(2, hmiValues.probeOffsScaled.y, true); encoderRate.enabled = true; break; } @@ -3678,7 +3697,7 @@ void hmiAdvSet() { if (encoder_diffState == ENCODER_DIFF_NO) return; if (applyEncoder(encoder_diffState, posScaled)) { - checkkey = ProbeOff; + checkkey = ID_ProbeOff; encoderRate.enabled = false; offset_ref = posScaled / 10; drawEditSignedFloat3(select_item.now, posScaled); @@ -3688,8 +3707,8 @@ void hmiAdvSet() { drawEditSignedFloat3(select_item.now, posScaled, true); } - void hmiProbeOffX() { hmiProbeOffN(hmiValues.Probe_OffX_scaled, probe.offset.x); } - void hmiProbeOffY() { hmiProbeOffN(hmiValues.Probe_OffY_scaled, probe.offset.y); } + void hmiProbeOffX() { hmiProbeOffN(hmiValues.probeOffsScaled.x, probe.offset.x); } + void hmiProbeOffY() { hmiProbeOffN(hmiValues.probeOffsScaled.y, probe.offset.y); } #endif // HAS_ONESTEP_LEVELING @@ -3699,7 +3718,7 @@ void hmiInfo() { if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_ENTER) { #if HAS_ONESTEP_LEVELING - checkkey = Control; + checkkey = ID_Control; select_control.set(CONTROL_CASE_INFO); drawControlMenu(); #else @@ -3745,39 +3764,39 @@ void hmiTune() { } break; case TUNE_CASE_SPEED: // Print speed - checkkey = PrintSpeed; - hmiValues.print_speed = feedrate_percentage; - drawEditInteger3(TUNE_CASE_SPEED + MROWS - index_tune, hmiValues.print_speed, true); + checkkey = ID_PrintSpeed; + hmiValues.printSpeed = feedrate_percentage; + drawEditInteger3(TUNE_CASE_SPEED + MROWS - index_tune, hmiValues.printSpeed, true); encoderRate.enabled = true; break; #if HAS_HOTEND case TUNE_CASE_TEMP: // Nozzle temp - checkkey = ETemp; - hmiValues.E_Temp = thermalManager.degTargetHotend(0); - drawEditInteger3(TUNE_CASE_TEMP + MROWS - index_tune, hmiValues.E_Temp, true); + checkkey = ID_ETemp; + hmiValues.tempE = thermalManager.degTargetHotend(0); + drawEditInteger3(TUNE_CASE_TEMP + MROWS - index_tune, hmiValues.tempE, true); encoderRate.enabled = true; break; #endif #if HAS_HEATED_BED case TUNE_CASE_BED: // Bed temp - checkkey = BedTemp; - hmiValues.Bed_Temp = thermalManager.degTargetBed(); - drawEditInteger3(TUNE_CASE_BED + MROWS - index_tune, hmiValues.Bed_Temp, true); + checkkey = ID_BedTemp; + hmiValues.tempBed = thermalManager.degTargetBed(); + drawEditInteger3(TUNE_CASE_BED + MROWS - index_tune, hmiValues.tempBed, true); encoderRate.enabled = true; break; #endif #if HAS_FAN case TUNE_CASE_FAN: // Fan speed - checkkey = FanSpeed; - hmiValues.Fan_speed = thermalManager.fan_speed[0]; - drawEditInteger3(TUNE_CASE_FAN + MROWS - index_tune, hmiValues.Fan_speed, true); + checkkey = ID_FanSpeed; + hmiValues.fanSpeed = thermalManager.fan_speed[0]; + drawEditInteger3(TUNE_CASE_FAN + MROWS - index_tune, hmiValues.fanSpeed, true); encoderRate.enabled = true; break; #endif #if HAS_ZOFFSET_ITEM case TUNE_CASE_ZOFF: // Z-offset #if ANY(HAS_BED_PROBE, BABYSTEPPING) - checkkey = Homeoffset; + checkkey = ID_HomeOffset; hmiValues.offset_value = BABY_Z_VAR * 100; drawEditSignedFloat2(TUNE_CASE_ZOFF + MROWS - index_tune, hmiValues.offset_value, true); encoderRate.enabled = true; @@ -3811,31 +3830,31 @@ void hmiTune() { else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_PLA.now) { case CASE_BACK: - checkkey = TemperatureID; + checkkey = ID_TemperatureID; select_temp.now = TEMP_CASE_PLA; hmiValues.show_mode = -1; drawTemperatureMenu(); break; #if HAS_HOTEND case PREHEAT_CASE_TEMP: - checkkey = ETemp; - hmiValues.E_Temp = ui.material_preset[0].hotend_temp; + checkkey = ID_ETemp; + hmiValues.tempE = ui.material_preset[0].hotend_temp; drawEditInteger3(PREHEAT_CASE_TEMP, ui.material_preset[0].hotend_temp, true); encoderRate.enabled = true; break; #endif #if HAS_HEATED_BED case PREHEAT_CASE_BED: - checkkey = BedTemp; - hmiValues.Bed_Temp = ui.material_preset[0].bed_temp; + checkkey = ID_BedTemp; + hmiValues.tempBed = ui.material_preset[0].bed_temp; drawEditInteger3(PREHEAT_CASE_BED, ui.material_preset[0].bed_temp, true); encoderRate.enabled = true; break; #endif #if HAS_FAN case PREHEAT_CASE_FAN: - checkkey = FanSpeed; - hmiValues.Fan_speed = ui.material_preset[0].fan_speed; + checkkey = ID_FanSpeed; + hmiValues.fanSpeed = ui.material_preset[0].fan_speed; drawEditInteger3(PREHEAT_CASE_FAN, ui.material_preset[0].fan_speed, true); encoderRate.enabled = true; break; @@ -3868,31 +3887,31 @@ void hmiTune() { else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_ABS.now) { case CASE_BACK: - checkkey = TemperatureID; + checkkey = ID_TemperatureID; select_temp.now = TEMP_CASE_ABS; hmiValues.show_mode = -1; drawTemperatureMenu(); break; #if HAS_HOTEND case PREHEAT_CASE_TEMP: - checkkey = ETemp; - hmiValues.E_Temp = ui.material_preset[1].hotend_temp; + checkkey = ID_ETemp; + hmiValues.tempE = ui.material_preset[1].hotend_temp; drawEditInteger3(PREHEAT_CASE_TEMP, ui.material_preset[1].hotend_temp, true); encoderRate.enabled = true; break; #endif #if HAS_HEATED_BED case PREHEAT_CASE_BED: - checkkey = BedTemp; - hmiValues.Bed_Temp = ui.material_preset[1].bed_temp; + checkkey = ID_BedTemp; + hmiValues.tempBed = ui.material_preset[1].bed_temp; drawEditInteger3(PREHEAT_CASE_BED, ui.material_preset[1].bed_temp, true); encoderRate.enabled = true; break; #endif #if HAS_FAN case PREHEAT_CASE_FAN: - checkkey = FanSpeed; - hmiValues.Fan_speed = ui.material_preset[1].fan_speed; + checkkey = ID_FanSpeed; + hmiValues.fanSpeed = ui.material_preset[1].fan_speed; drawEditInteger3(PREHEAT_CASE_FAN, ui.material_preset[1].fan_speed, true); encoderRate.enabled = true; break; @@ -3926,14 +3945,14 @@ void hmiMaxSpeed() { } else if (encoder_diffState == ENCODER_DIFF_ENTER) { if (WITHIN(select_speed.now, 1, 4)) { - checkkey = MaxSpeed_value; + checkkey = ID_MaxSpeedValue; hmiFlag.feedspeed_axis = AxisEnum(select_speed.now - 1); - hmiValues.Max_Feedspeed = planner.settings.max_feedrate_mm_s[hmiFlag.feedspeed_axis]; - drawEditInteger4(select_speed.now, hmiValues.Max_Feedspeed, true); + hmiValues.maxFeedSpeed = planner.settings.max_feedrate_mm_s[hmiFlag.feedspeed_axis]; + drawEditInteger4(select_speed.now, hmiValues.maxFeedSpeed, true); encoderRate.enabled = true; } else { // Back - checkkey = Motion; + checkkey = ID_Motion; select_motion.now = MOTION_CASE_RATE; drawMotionMenu(); } @@ -3955,14 +3974,14 @@ void hmiMaxAcceleration() { } else if (encoder_diffState == ENCODER_DIFF_ENTER) { if (WITHIN(select_acc.now, 1, 4)) { - checkkey = MaxAcceleration_value; + checkkey = ID_MaxAccelerationValue; hmiFlag.acc_axis = AxisEnum(select_acc.now - 1); - hmiValues.Max_Acceleration = planner.settings.max_acceleration_mm_per_s2[hmiFlag.acc_axis]; - drawEditInteger4(select_acc.now, hmiValues.Max_Acceleration, true); + hmiValues.maxAcceleration = planner.settings.max_acceleration_mm_per_s2[hmiFlag.acc_axis]; + drawEditInteger4(select_acc.now, hmiValues.maxAcceleration, true); encoderRate.enabled = true; } else { // Back - checkkey = Motion; + checkkey = ID_Motion; select_motion.now = MOTION_CASE_ACCEL; drawMotionMenu(); } @@ -3985,14 +4004,14 @@ void hmiMaxAcceleration() { } else if (encoder_diffState == ENCODER_DIFF_ENTER) { if (WITHIN(select_jerk.now, 1, 4)) { - checkkey = MaxJerk_value; + checkkey = ID_MaxJerkValue; hmiFlag.jerk_axis = AxisEnum(select_jerk.now - 1); - hmiValues.Max_Jerk_scaled = planner.max_jerk[hmiFlag.jerk_axis] * MINUNITMULT; - drawEditFloat3(select_jerk.now, hmiValues.Max_Jerk_scaled, true); + hmiValues.maxJerkScaled = planner.max_jerk[hmiFlag.jerk_axis] * MINUNITMULT; + drawEditFloat3(select_jerk.now, hmiValues.maxJerkScaled, true); encoderRate.enabled = true; } else { // Back - checkkey = Motion; + checkkey = ID_Motion; select_motion.now = MOTION_CASE_JERK; drawMotionMenu(); } @@ -4015,14 +4034,14 @@ void hmiStep() { } else if (encoder_diffState == ENCODER_DIFF_ENTER) { if (WITHIN(select_step.now, 1, 4)) { - checkkey = Step_value; + checkkey = ID_StepValue; hmiFlag.step_axis = AxisEnum(select_step.now - 1); - hmiValues.Max_Step_scaled = planner.settings.axis_steps_per_mm[hmiFlag.step_axis] * MINUNITMULT; - drawEditFloat3(select_step.now, hmiValues.Max_Step_scaled, true); + hmiValues.maxStepScaled = planner.settings.axis_steps_per_mm[hmiFlag.step_axis] * MINUNITMULT; + drawEditFloat3(select_step.now, hmiValues.maxStepScaled, true); encoderRate.enabled = true; } else { // Back - checkkey = Motion; + checkkey = ID_Motion; select_motion.now = MOTION_CASE_STEPS; drawMotionMenu(); } @@ -4035,7 +4054,7 @@ void hmiInit() { for (uint16_t t = 0; t <= 100; t += 2) { dwinIconShow(ICON, ICON_Bar, 15, 260); - dwinDrawRectangle(1, Color_Bg_Black, 15 + t * 242 / 100, 260, 257, 280); + dwinDrawRectangle(1, COLOR_BG_BLACK, 15 + t * 242 / 100, 260, 257, 280); dwinUpdateLCD(); delay(20); } @@ -4062,13 +4081,13 @@ void eachMomentUpdate() { const millis_t ms = millis(); if (ELAPSED(ms, next_var_update_ms)) { next_var_update_ms = ms + DWIN_VAR_UPDATE_INTERVAL; - update_variable(); + updateVariable(); } if (PENDING(ms, next_rts_update_ms)) return; next_rts_update_ms = ms + DWIN_SCROLL_UPDATE_INTERVAL; - if (checkkey == PrintProcess) { + if (checkkey == ID_PrintProcess) { // if print done if (hmiFlag.print_finish && !hmiFlag.done_confirm_flag) { hmiFlag.print_finish = false; @@ -4083,7 +4102,7 @@ void eachMomentUpdate() { drawPrintProgressBar(); // show print done confirm - dwinDrawRectangle(1, Color_Bg_Black, 0, 250, DWIN_WIDTH - 1, STATUS_Y); + dwinDrawRectangle(1, COLOR_BG_BLACK, 0, 250, DWIN_WIDTH - 1, STATUS_Y); dwinIconShow(ICON, hmiIsChinese() ? ICON_Confirm_C : ICON_Confirm_E, 86, 283); } else if (hmiFlag.pause_flag != printingIsPaused()) { @@ -4104,7 +4123,7 @@ void eachMomentUpdate() { queue.inject(F("G1 F1200 X0 Y0")); } - if (card.isPrinting() && checkkey == PrintProcess) { // Print process + if (card.isPrinting() && checkkey == ID_PrintProcess) { // Print process const uint8_t card_pct = card.percentDone(); static uint8_t last_cardpercentValue = 101; if (last_cardpercentValue != card_pct) { // print percent @@ -4135,7 +4154,7 @@ void eachMomentUpdate() { } else if (dwin_abort_flag && !hmiFlag.home_flag) { // Print Stop dwin_abort_flag = false; - hmiValues.print_speed = feedrate_percentage = 100; + hmiValues.printSpeed = feedrate_percentage = 100; dwin_zoffset = BABY_Z_VAR; select_page.set(0); gotoMainMenu(); @@ -4146,10 +4165,10 @@ void eachMomentUpdate() { auto update_selection = [&](const bool sel) { hmiFlag.select_flag = sel; - const uint16_t c1 = sel ? Color_Bg_Window : Select_Color; + const uint16_t c1 = sel ? COLOR_BG_WINDOW : COLOR_SELECT; dwinDrawRectangle(0, c1, 25, 306, 126, 345); dwinDrawRectangle(0, c1, 24, 305, 127, 346); - const uint16_t c2 = sel ? Select_Color : Color_Bg_Window; + const uint16_t c2 = sel ? COLOR_SELECT : COLOR_BG_WINDOW; dwinDrawRectangle(0, c2, 145, 306, 246, 345); dwinDrawRectangle(0, c2, 144, 305, 247, 346); }; @@ -4159,7 +4178,7 @@ void eachMomentUpdate() { char * const name = card.longest_filename(); const int8_t npos = _MAX(0U, DWIN_WIDTH - strlen(name) * (MENU_CHR_W)) / 2; - dwinDrawString(true, font8x16, Popup_Text_Color, Color_Bg_Window, npos, 252, name); + dwinDrawString(true, font8x16, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, npos, 252, name); dwinUpdateLCD(); bool recovery_flag = true; @@ -4193,65 +4212,65 @@ void eachMomentUpdate() { void dwinHandleScreen() { switch (checkkey) { - case MainMenu: hmiMainMenu(); break; - case SelectFile: hmiSelectFile(); break; - case Prepare: hmiPrepare(); break; - case Control: hmiControl(); break; - case Leveling: break; - case PrintProcess: hmiPrinting(); break; - case Print_window: hmiPauseOrStop(); break; - case AxisMove: hmiAxisMove(); break; - case TemperatureID: hmiTemperature(); break; - case Motion: hmiMotion(); break; - case AdvSet: hmiAdvSet(); break; + case ID_MainMenu: hmiMainMenu(); break; + case ID_SelectFile: hmiSelectFile(); break; + case ID_Prepare: hmiPrepare(); break; + case ID_Control: hmiControl(); break; + case ID_Leveling: break; + case ID_PrintProcess: hmiPrinting(); break; + case ID_PrintWindow: hmiPauseOrStop(); break; + case ID_AxisMove: hmiAxisMove(); break; + case ID_TemperatureID: hmiTemperature(); break; + case ID_Motion: hmiMotion(); break; + case ID_AdvSet: hmiAdvSet(); break; #if HAS_HOME_OFFSET - case HomeOff: hmiHomeOff(); break; - case HomeOffX: hmiHomeOffX(); break; - case HomeOffY: hmiHomeOffY(); break; - case HomeOffZ: hmiHomeOffZ(); break; + case ID_HomeOff: hmiHomeOff(); break; + case ID_HomeOffX: hmiHomeOffX(); break; + case ID_HomeOffY: hmiHomeOffY(); break; + case ID_HomeOffZ: hmiHomeOffZ(); break; #endif #if HAS_ONESTEP_LEVELING - case ProbeOff: hmiProbeOff(); break; - case ProbeOffX: hmiProbeOffX(); break; - case ProbeOffY: hmiProbeOffY(); break; + case ID_ProbeOff: hmiProbeOff(); break; + case ID_ProbeOffX: hmiProbeOffX(); break; + case ID_ProbeOffY: hmiProbeOffY(); break; #endif - case Info: hmiInfo(); break; - case Tune: hmiTune(); break; + case ID_Info: hmiInfo(); break; + case ID_Tune: hmiTune(); break; #if HAS_PREHEAT - case PLAPreheat: hmiPLAPreheatSetting(); break; + case ID_PLAPreheat: hmiPLAPreheatSetting(); break; #if PREHEAT_COUNT > 1 - case ABSPreheat: hmiABSPreheatSetting(); break; + case ID_ABSPreheat: hmiABSPreheatSetting(); break; #endif #endif - case MaxSpeed: hmiMaxSpeed(); break; - case MaxAcceleration: hmiMaxAcceleration(); break; + case ID_MaxSpeed: hmiMaxSpeed(); break; + case ID_MaxAcceleration: hmiMaxAcceleration(); break; #if HAS_CLASSIC_JERK - case MaxJerk: hmiMaxJerk(); break; + case ID_MaxJerk: hmiMaxJerk(); break; #endif - case Step: hmiStep(); break; - case Move_X: hmiMoveX(); break; - case Move_Y: hmiMoveY(); break; - case Move_Z: hmiMoveZ(); break; + case ID_Step: hmiStep(); break; + case ID_MoveX: hmiMoveX(); break; + case ID_MoveY: hmiMoveY(); break; + case ID_MoveZ: hmiMoveZ(); break; #if HAS_HOTEND - case Extruder: hmiMoveE(); break; - case ETemp: hmiETemp(); break; + case ID_Extruder: hmiMoveE(); break; + case ID_ETemp: hmiETemp(); break; #endif #if ANY(HAS_BED_PROBE, BABYSTEPPING) - case Homeoffset: hmiZoffset(); break; + case ID_HomeOffset: hmiZoffset(); break; #endif #if HAS_HEATED_BED - case BedTemp: hmiBedTemp(); break; + case ID_BedTemp: hmiBedTemp(); break; #endif #if HAS_PREHEAT && HAS_FAN - case FanSpeed: hmiFanSpeed(); break; + case ID_FanSpeed: hmiFanSpeed(); break; #endif - case PrintSpeed: hmiPrintSpeed(); break; - case MaxSpeed_value: hmiMaxFeedspeedXYZE(); break; - case MaxAcceleration_value: hmiMaxAccelerationXYZE(); break; + case ID_PrintSpeed: hmiPrintSpeed(); break; + case ID_MaxSpeedValue: hmiMaxFeedspeedXYZE(); break; + case ID_MaxAccelerationValue: hmiMaxAccelerationXYZE(); break; #if HAS_CLASSIC_JERK - case MaxJerk_value: hmiMaxJerkXYZE(); break; + case ID_MaxJerkValue: hmiMaxJerkXYZE(); break; #endif - case Step_value: hmiStepXYZE(); break; + case ID_StepValue: hmiStepXYZE(); break; default: break; } } @@ -4259,27 +4278,27 @@ void dwinHandleScreen() { void dwinHomingDone() { hmiFlag.home_flag = false; dwin_zoffset = TERN0(HAS_BED_PROBE, probe.offset.z); - if (checkkey == Last_Prepare) { - checkkey = Prepare; + if (checkkey == ID_LastPrepare) { + checkkey = ID_Prepare; select_prepare.now = PREPARE_CASE_HOME; index_prepare = MROWS; drawPrepareMenu(); } - else if (checkkey == Back_Main) { - hmiValues.print_speed = feedrate_percentage = 100; + else if (checkkey == ID_BackMain) { + hmiValues.printSpeed = feedrate_percentage = 100; planner.finish_and_disable(); gotoMainMenu(); } } void dwinLevelingDone() { - if (checkkey == Leveling) gotoMainMenu(); + if (checkkey == ID_Leveling) gotoMainMenu(); } void dwinStatusChanged(const char * const cstr/*=nullptr*/) { - dwinDrawRectangle(1, Color_Bg_Blue, 0, STATUS_Y, DWIN_WIDTH, STATUS_Y + 24); + dwinDrawRectangle(1, COLOR_BG_BLUE, 0, STATUS_Y, DWIN_WIDTH, STATUS_Y + 24); const int8_t x = _MAX(0U, DWIN_WIDTH - strlen(cstr) * MENU_CHR_W) / 2; - dwinDrawString(false, font8x16, Color_White, Color_Bg_Blue, x, STATUS_Y + 3, cstr); + dwinDrawString(false, font8x16, COLOR_WHITE, COLOR_BG_BLUE, x, STATUS_Y + 3, cstr); dwinUpdateLCD(); } diff --git a/Marlin/src/lcd/e3v2/creality/dwin.h b/Marlin/src/lcd/e3v2/creality/dwin.h index 0e2d42eee91c..17a7a965ee39 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin.h +++ b/Marlin/src/lcd/e3v2/creality/dwin.h @@ -34,69 +34,56 @@ enum processID : uint8_t { // Process ID - MainMenu, - SelectFile, - Prepare, - Control, - Leveling, - PrintProcess, - AxisMove, - TemperatureID, - Motion, - Info, - Tune, + ID_MainMenu, + ID_SelectFile, + ID_Prepare, + ID_Control, + ID_Leveling, + ID_PrintProcess, + ID_AxisMove, + ID_TemperatureID, + ID_Motion, + ID_Info, + ID_Tune, #if HAS_PREHEAT - PLAPreheat, + ID_PLAPreheat, #if PREHEAT_COUNT > 1 - ABSPreheat, + ID_ABSPreheat, #endif #endif - MaxSpeed, - MaxSpeed_value, - MaxAcceleration, - MaxAcceleration_value, - MaxJerk, - MaxJerk_value, - Step, - Step_value, - HomeOff, - HomeOffX, - HomeOffY, - HomeOffZ, + ID_MaxSpeed, ID_MaxSpeedValue, + ID_MaxAcceleration, ID_MaxAccelerationValue, + ID_MaxJerk, ID_MaxJerkValue, + ID_Step, ID_StepValue, + ID_HomeOff, ID_HomeOffX, ID_HomeOffY, ID_HomeOffZ, // Last Process ID - Last_Prepare, + ID_LastPrepare, // Advance Settings - AdvSet, - ProbeOff, - ProbeOffX, - ProbeOffY, + ID_AdvSet, + ID_ProbeOff, ID_ProbeOffX, ID_ProbeOffY, // Back Process ID - Back_Main, - Back_Print, + ID_BackMain, ID_BackPrint, // Date variable ID - Move_X, - Move_Y, - Move_Z, + ID_MoveX, ID_MoveY, ID_MoveZ, #if HAS_HOTEND - Extruder, - ETemp, + ID_Extruder, + ID_ETemp, #endif - Homeoffset, + ID_HomeOffset, #if HAS_HEATED_BED - BedTemp, + ID_BedTemp, #endif #if HAS_FAN - FanSpeed, + ID_FanSpeed, #endif - PrintSpeed, + ID_PrintSpeed, // Window ID - Print_window, - Popup_Window + ID_PrintWindow, ID_PopupWindow }; extern uint8_t checkkey; @@ -107,32 +94,54 @@ extern millis_t dwin_heat_time; typedef struct { #if HAS_HOTEND - celsius_t E_Temp = 0; + celsius_t tempE = 0; #endif #if HAS_HEATED_BED - celsius_t Bed_Temp = 0; + celsius_t tempBed = 0; #endif #if HAS_FAN - int16_t Fan_speed = 0; + int16_t fanSpeed = 0; #endif - int16_t print_speed = 100; - float Max_Feedspeed = 0; - float Max_Acceleration = 0; - float Max_Jerk_scaled = 0; - float Max_Step_scaled = 0; - float Move_X_scaled = 0; - float Move_Y_scaled = 0; - float Move_Z_scaled = 0; - #if HAS_HOTEND - float Move_E_scaled = 0; - #endif - float offset_value = 0; - int8_t show_mode = 0; // -1: Temperature control 0: Printing temperature - float Home_OffX_scaled = 0; - float Home_OffY_scaled = 0; - float Home_OffZ_scaled = 0; - float Probe_OffX_scaled = 0; - float Probe_OffY_scaled = 0; + int16_t printSpeed = 100; + float maxFeedSpeed = 0; + float maxAcceleration = 0; + float maxJerkScaled = 0; + float maxStepScaled = 0; + float offset_value = 0; + int8_t show_mode = 0; // -1: Temperature control 0: Printing temperature + struct { + #if HAS_X_AXIS + float x = 0; + #endif + #if HAS_Y_AXIS + float y = 0; + #endif + #if HAS_Z_AXIS + float z = 0; + #endif + #if HAS_HOTEND + float e = 0; + #endif + } moveScaled; + struct { + #if HAS_X_AXIS + float x = 0; + #endif + #if HAS_Y_AXIS + float y = 0; + #endif + #if HAS_Z_AXIS + float z = 0; + #endif + } homeOffsScaled; + struct { + #if HAS_X_AXIS + float x = 0; + #endif + #if HAS_Y_AXIS + float y = 0; + #endif + } probeOffsScaled; } hmi_value_t; #define DWIN_CHINESE 123 @@ -198,19 +207,13 @@ void hmiMaxJerkXYZE(); void hmiStepXYZE(); void hmiSetLanguageCache(); -void update_variable(); -void dwinDrawSigned_Float(uint8_t size, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, long value); +void updateVariable(); +void dwinDrawSignedFloat(uint8_t size, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, long value); // SD Card void hmiSDCardInit(); void hmiSDCardUpdate(); -// Main Process -void Icon_print(bool value); -void Icon_control(bool value); -void Icon_temperature(bool value); -void Icon_leveling(bool value); - // Other void drawStatusArea(const bool with_update); // Status Area void hmiStartFrame(const bool with_update); // Prepare the menu view diff --git a/Marlin/src/lcd/e3v2/creality/dwin_lcd.cpp b/Marlin/src/lcd/e3v2/creality/dwin_lcd.cpp index 7a0587df4310..649e1b4771c7 100644 --- a/Marlin/src/lcd/e3v2/creality/dwin_lcd.cpp +++ b/Marlin/src/lcd/e3v2/creality/dwin_lcd.cpp @@ -47,7 +47,7 @@ void dwinStartup() { if (dwinHandshake()) DEBUG_ECHOLNPGM("ok."); else DEBUG_ECHOLNPGM("error."); dwinFrameSetDir(1); #if DISABLED(SHOW_BOOTSCREEN) - dwinFrameClear(Color_Bg_Black); // MarlinUI handles the bootscreen so just clear here + dwinFrameClear(COLOR_BG_BLACK); // MarlinUI handles the bootscreen so just clear here #endif dwinJPGShowAndCache(3); dwinUpdateLCD(); diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index 22ff4b8a0037..7139f3cdf9a4 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -169,10 +169,10 @@ enum SelectItem : uint8_t { PRINT_COUNT }; -uint8_t active_menu = MainMenu, last_menu = MainMenu; +uint8_t active_menu = ID_MainMenu, last_menu = ID_MainMenu; uint8_t selection = 0, last_selection = 0; uint8_t scrollpos = 0; -uint8_t process = Main, last_process = Main; +uint8_t process = Proc_Main, last_process = Proc_Main; PopupID popup, last_popup; void (*funcpointer)() = nullptr; @@ -265,14 +265,14 @@ class TextScroller { #if ENABLED(AUTO_BED_LEVELING_UBL) uint8_t tilt_grid = 1; - void manual_value_update(bool undefined=false) { + void manualValueUpdate(bool undefined=false) { gcode.process_subcommands_now( TS(F("M421I"), mesh_x, 'J', mesh_y, 'Z', p_float_t(current_position.z, 3), undefined ? "N" : "") ); planner.synchronize(); } - bool create_plane_from_mesh() { + bool createPlaneFromMesh() { struct linear_fit_data lsf_results; incremental_LSF_reset(&lsf_results); GRID_LOOP(x, y) { @@ -312,7 +312,7 @@ class TextScroller { #else - void manual_value_update() { + void manualValueUpdate() { gcode.process_subcommands_now( TS(F("G29I"), mesh_x, 'J', mesh_y, 'Z', p_float_t(current_position.z, 3)) ); @@ -329,7 +329,7 @@ class TextScroller { planner.synchronize(); } else { - jyersDWIN.popupHandler(MoveWait); + jyersDWIN.popupHandler(Popup_MoveWait); gcode.process_subcommands_now(TS(F("G0F300Z"), p_float_t(current_position.z, 3))); gcode.process_subcommands_now(TS(F("G42 F4000 I"), mesh_x, 'J', mesh_y)); planner.synchronize(); @@ -340,7 +340,7 @@ class TextScroller { } } - float get_max_value() { + float getMaxValue() { float max = __FLT_MIN__; GRID_LOOP(x, y) { if (!isnan(bedlevel.z_values[x][y]) && bedlevel.z_values[x][y] > max) @@ -349,7 +349,7 @@ class TextScroller { return max; } - float get_min_value() { + float getMinValue() { float min = __FLT_MAX__; GRID_LOOP(x, y) { if (!isnan(bedlevel.z_values[x][y]) && bedlevel.z_values[x][y] < min) @@ -363,16 +363,16 @@ class TextScroller { const uint16_t total_width_px = DWIN_WIDTH - padding_x - padding_x, cell_width_px = total_width_px / (GRID_MAX_POINTS_X), cell_height_px = total_width_px / (GRID_MAX_POINTS_Y); - const float v_max = abs(get_max_value()), v_min = abs(get_min_value()), range = _MAX(v_min, v_max); + const float v_max = abs(getMaxValue()), v_min = abs(getMinValue()), range = _MAX(v_min, v_max); // Clear background from previous selection and select new square - dwinDrawRectangle(1, Color_Bg_Black, _MAX(0, padding_x - gridline_width), _MAX(0, padding_y_top - gridline_width), padding_x + total_width_px, padding_y_top + total_width_px); + dwinDrawRectangle(1, COLOR_BG_BLACK, _MAX(0, padding_x - gridline_width), _MAX(0, padding_y_top - gridline_width), padding_x + total_width_px, padding_y_top + total_width_px); if (selected >= 0) { const auto selected_y = selected / (GRID_MAX_POINTS_X); const auto selected_x = selected - (GRID_MAX_POINTS_X) * selected_y; const auto start_y_px = padding_y_top + selected_y * cell_height_px; const auto start_x_px = padding_x + selected_x * cell_width_px; - dwinDrawRectangle(1, Color_White, _MAX(0, start_x_px - gridline_width), _MAX(0, start_y_px - gridline_width), start_x_px + cell_width_px, start_y_px + cell_height_px); + dwinDrawRectangle(1, COLOR_WHITE, _MAX(0, start_x_px - gridline_width), _MAX(0, start_y_px - gridline_width), start_x_px + cell_width_px, start_y_px + cell_height_px); } // Draw value square grid @@ -382,7 +382,7 @@ class TextScroller { const auto start_y_px = padding_y_top + (GRID_MAX_POINTS_Y - y - 1) * cell_height_px; const auto end_y_px = start_y_px + cell_height_px - 1 - gridline_width; dwinDrawRectangle(1, // RGB565 colors: http://www.barth-dev.de/online/rgb565-color-picker/ - isnan(bedlevel.z_values[x][y]) ? Color_Grey : ( // gray if undefined + isnan(bedlevel.z_values[x][y]) ? COLOR_GREY : ( // gray if undefined (bedlevel.z_values[x][y] < 0 ? (uint16_t)round(0x1F * -bedlevel.z_values[x][y] / (!viewer_asymmetric_range ? range : v_min)) << 11 : // red if mesh point value is negative (uint16_t)round(0x3F * bedlevel.z_values[x][y] / (!viewer_asymmetric_range ? range : v_max)) << 5) | // green if mesh point value is positive @@ -397,7 +397,7 @@ class TextScroller { if (viewer_print_value) { int8_t offset_x, offset_y = cell_height_px / 2 - 6; if (isnan(bedlevel.z_values[x][y])) { // undefined - dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + cell_width_px / 2 - 5, start_y_px + offset_y, F("X")); + dwinDrawString(false, font6x12, COLOR_WHITE, COLOR_BG_BLUE, start_x_px + cell_width_px / 2 - 5, start_y_px + offset_y, F("X")); } else { // has value MString<12> msg; @@ -407,8 +407,8 @@ class TextScroller { msg.setf(F("%02i"), uint16_t(abs(bedlevel.z_values[x][y] - int16_t(bedlevel.z_values[x][y])) * 100)); offset_x = cell_width_px / 2 - 3 * msg.length() - 2; if (!(GRID_MAX_POINTS_X < 10)) - dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px - 2 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, F(".")); - dwinDrawString(false, font6x12, Color_White, Color_Bg_Blue, start_x_px + 1 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, msg); + dwinDrawString(false, font6x12, COLOR_WHITE, COLOR_BG_BLUE, start_x_px - 2 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, F(".")); + dwinDrawString(false, font6x12, COLOR_WHITE, COLOR_BG_BLUE, start_x_px + 1 + offset_x, start_y_px + offset_y /*+ square / 2 - 6*/, msg); } safe_delay(10); LCD_SERIAL.flushTX(); @@ -418,8 +418,8 @@ class TextScroller { void setMeshViewerStatus() { // TODO: draw gradient with values as a legend instead float v1, v2, - v_min = abs(get_min_value()), - v_max = abs(get_max_value()); + v_min = abs(getMinValue()), + v_max = abs(getMaxValue()); if (viewer_asymmetric_range) { if (v_min > 3e+10F) v_min = 0.0000001; if (v_max > 3e+10F) v_max = 0.0000001; @@ -455,67 +455,67 @@ constexpr const char * const JyersDWIN::preheat_modes[3]; // 2=Menu area // 1=Title bar void JyersDWIN::clearScreen(const uint8_t e/*=3*/) { - if (e == 1 || e == 3 || e == 4) dwinDrawRectangle(1, getColor(eeprom_settings.menu_top_bg, Color_Bg_Blue, false), 0, 0, DWIN_WIDTH, TITLE_HEIGHT); // Clear Title Bar - if (e == 2 || e == 3) dwinDrawRectangle(1, Color_Bg_Black, 0, 31, DWIN_WIDTH, STATUS_Y); // Clear Menu Area - if (e == 4) dwinDrawRectangle(1, Color_Bg_Black, 0, 31, DWIN_WIDTH, DWIN_HEIGHT); // Clear Popup Area + if (e == 1 || e == 3 || e == 4) dwinDrawRectangle(1, getColor(eeprom_settings.menu_top_bg, COLOR_BG_BLUE, false), 0, 0, DWIN_WIDTH, TITLE_HEIGHT); // Clear Title Bar + if (e == 2 || e == 3) dwinDrawRectangle(1, COLOR_BG_BLACK, 0, 31, DWIN_WIDTH, STATUS_Y); // Clear Menu Area + if (e == 4) dwinDrawRectangle(1, COLOR_BG_BLACK, 0, 31, DWIN_WIDTH, DWIN_HEIGHT); // Clear Popup Area } void JyersDWIN::drawFloat(const_float_t value, const uint8_t row, const bool selected/*=false*/, const uint8_t minunit/*=10*/) { const uint8_t digits = (uint8_t)floor(log10(abs(value))) + log10(minunit) + (minunit > 1); - const uint16_t bColor = selected ? Select_Color : Color_Bg_Black; + const uint16_t bColor = selected ? COLOR_SELECT : COLOR_BG_BLACK; const uint16_t xpos = 240 - (digits * 8); - dwinDrawRectangle(1, Color_Bg_Black, 194, MBASE(row), 234 - (digits * 8), MBASE(row) + 16); + dwinDrawRectangle(1, COLOR_BG_BLACK, 194, MBASE(row), 234 - (digits * 8), MBASE(row) + 16); if (isnan(value)) - dwinDrawString(true, DWIN_FONT_MENU, Color_White, bColor, xpos - 8, MBASE(row), F(" NaN")); + dwinDrawString(true, DWIN_FONT_MENU, COLOR_WHITE, bColor, xpos - 8, MBASE(row), F(" NaN")); else { - dwinDrawFloatValue(true, true, 0, DWIN_FONT_MENU, Color_White, bColor, digits - log10(minunit) + 1, log10(minunit), xpos, MBASE(row), (value < 0 ? -value : value)); - dwinDrawString(true, DWIN_FONT_MENU, Color_White, bColor, xpos - 8, MBASE(row), value < 0 ? F("-") : F(" ")); + dwinDrawFloatValue(true, true, 0, DWIN_FONT_MENU, COLOR_WHITE, bColor, digits - log10(minunit) + 1, log10(minunit), xpos, MBASE(row), (value < 0 ? -value : value)); + dwinDrawString(true, DWIN_FONT_MENU, COLOR_WHITE, bColor, xpos - 8, MBASE(row), value < 0 ? F("-") : F(" ")); } } void JyersDWIN::drawOption(const uint8_t value, const char * const * options, const uint8_t row, const bool selected/*=false*/, const bool color/*=false*/) { - const uint16_t bColor = selected ? Select_Color : Color_Bg_Black, - tColor = color ? getColor(value, Color_White, false) : Color_White; + const uint16_t bColor = selected ? COLOR_SELECT : COLOR_BG_BLACK, + tColor = color ? getColor(value, COLOR_WHITE, false) : COLOR_WHITE; dwinDrawRectangle(1, bColor, 202, MBASE(row) + 14, 258, MBASE(row) - 2); dwinDrawString(false, DWIN_FONT_MENU, tColor, bColor, 202, MBASE(row) - 1, options[value]); } uint16_t JyersDWIN::getColor(const uint8_t color, const uint16_t original, const bool light/*=false*/) { switch (color) { - case White: return light ? Color_Light_White : Color_White; - case Green: return light ? Color_Light_Green : Color_Green; - case Cyan: return light ? Color_Light_Cyan : Color_Cyan; - case Blue: return light ? Color_Light_Blue : Color_Blue; - case Magenta: return light ? Color_Light_Magenta : Color_Magenta; - case Red: return light ? Color_Light_Red : Color_Red; - case Orange: return light ? Color_Light_Orange : Color_Orange; - case Yellow: return light ? Color_Light_Yellow : Color_Yellow; - case Brown: return light ? Color_Light_Brown : Color_Brown; - case Black: return Color_Black; + case White: return light ? COLOR_LIGHT_WHITE : COLOR_WHITE; + case Green: return light ? COLOR_LIGHT_GREEN : COLOR_GREEN; + case Cyan: return light ? COLOR_LIGHT_CYAN : COLOR_CYAN; + case Blue: return light ? COLOR_LIGHT_BLUE : COLOR_BLUE; + case Magenta: return light ? COLOR_LIGHT_MAGENTA : COLOR_MAGENTA; + case Red: return light ? COLOR_LIGHT_RED : COLOR_RED; + case Orange: return light ? COLOR_LIGHT_ORANGE : COLOR_ORANGE; + case Yellow: return light ? COLOR_LIGHT_YELLOW : COLOR_YELLOW; + case Brown: return light ? COLOR_LIGHT_BROWN : COLOR_BROWN; + case Black: return COLOR_BLACK; case Default: return original; } - return Color_White; + return COLOR_WHITE; } void JyersDWIN::drawTitle(const char * const ctitle) { - dwinDrawString(false, DWIN_FONT_HEAD, getColor(eeprom_settings.menu_top_txt, Color_White, false), Color_Bg_Blue, (DWIN_WIDTH - strlen(ctitle) * STAT_CHR_W) / 2, 5, ctitle); + dwinDrawString(false, DWIN_FONT_HEAD, getColor(eeprom_settings.menu_top_txt, COLOR_WHITE, false), COLOR_BG_BLUE, (DWIN_WIDTH - strlen(ctitle) * STAT_CHR_W) / 2, 5, ctitle); } void JyersDWIN::drawTitle(FSTR_P const ftitle) { - dwinDrawString(false, DWIN_FONT_HEAD, getColor(eeprom_settings.menu_top_txt, Color_White, false), Color_Bg_Blue, (DWIN_WIDTH - strlen_P(FTOP(ftitle)) * STAT_CHR_W) / 2, 5, ftitle); + dwinDrawString(false, DWIN_FONT_HEAD, getColor(eeprom_settings.menu_top_txt, COLOR_WHITE, false), COLOR_BG_BLUE, (DWIN_WIDTH - strlen_P(FTOP(ftitle)) * STAT_CHR_W) / 2, 5, ftitle); } void _decorateMenuItem(uint8_t row, uint8_t icon, bool more) { if (icon) dwinIconShow(ICON, icon, 26, MBASE(row) - 3); // Draw Menu Icon if (more) dwinIconShow(ICON, ICON_More, 226, MBASE(row) - 3); // Draw More Arrow - dwinDrawLine(jyersDWIN.getColor(jyersDWIN.eeprom_settings.menu_split_line, Line_Color, true), 16, MBASE(row) + 33, 256, MBASE(row) + 33); // Draw Menu Line + dwinDrawLine(jyersDWIN.getColor(jyersDWIN.eeprom_settings.menu_split_line, COLOR_LINE, true), 16, MBASE(row) + 33, 256, MBASE(row) + 33); // Draw Menu Line } void JyersDWIN::drawMenuItem(const uint8_t row, const uint8_t icon/*=0*/, const char * const label1, const char * const label2, const bool more/*=false*/, const bool centered/*=false*/) { const uint8_t label_offset_y = label2 ? MENU_CHR_H * 3 / 5 : 0, label1_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (label1 ? strlen(label1) : 0) * MENU_CHR_W) / 2), label2_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (label2 ? strlen(label2) : 0) * MENU_CHR_W) / 2); - if (label1) dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, label1_offset_x, MBASE(row) - 1 - label_offset_y, label1); // Draw Label - if (label2) dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, label2_offset_x, MBASE(row) - 1 + label_offset_y, label2); // Draw Label + if (label1) dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLACK, label1_offset_x, MBASE(row) - 1 - label_offset_y, label1); // Draw Label + if (label2) dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLACK, label2_offset_x, MBASE(row) - 1 + label_offset_y, label2); // Draw Label _decorateMenuItem(row, icon, more); } @@ -523,8 +523,8 @@ void JyersDWIN::drawMenuItem(const uint8_t row, const uint8_t icon/*=0*/, FSTR_P const uint8_t label_offset_y = flabel2 ? MENU_CHR_H * 3 / 5 : 0, label1_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (flabel1 ? strlen_P(FTOP(flabel1)) : 0) * MENU_CHR_W) / 2), label2_offset_x = !centered ? LBLX : LBLX * 4/5 + _MAX(LBLX * 1U/5, (DWIN_WIDTH - LBLX - (flabel2 ? strlen_P(FTOP(flabel2)) : 0) * MENU_CHR_W) / 2); - if (flabel1) dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, label1_offset_x, MBASE(row) - 1 - label_offset_y, flabel1); // Draw Label - if (flabel2) dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, label2_offset_x, MBASE(row) - 1 + label_offset_y, flabel2); // Draw Label + if (flabel1) dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLACK, label1_offset_x, MBASE(row) - 1 - label_offset_y, flabel1); // Draw Label + if (flabel2) dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLACK, label2_offset_x, MBASE(row) - 1 + label_offset_y, flabel2); // Draw Label _decorateMenuItem(row, icon, more); } @@ -532,15 +532,15 @@ void JyersDWIN::drawCheckbox(const uint8_t row, const bool value) { #if ENABLED(DWIN_CREALITY_LCD_CUSTOM_ICONS) // Draw appropriate checkbox icon dwinIconShow(ICON, (value ? ICON_Checkbox_T : ICON_Checkbox_F), 226, MBASE(row) - 3); #else // Draw a basic checkbox using rectangles and lines - dwinDrawRectangle(1, Color_Bg_Black, 226, MBASE(row) - 3, 226 + 20, MBASE(row) - 3 + 20); - dwinDrawRectangle(0, Color_White, 226, MBASE(row) - 3, 226 + 20, MBASE(row) - 3 + 20); + dwinDrawRectangle(1, COLOR_BG_BLACK, 226, MBASE(row) - 3, 226 + 20, MBASE(row) - 3 + 20); + dwinDrawRectangle(0, COLOR_WHITE, 226, MBASE(row) - 3, 226 + 20, MBASE(row) - 3 + 20); if (value) { - dwinDrawLine(Check_Color, 227, MBASE(row) - 3 + 11, 226 + 8, MBASE(row) - 3 + 17); - dwinDrawLine(Check_Color, 227 + 8, MBASE(row) - 3 + 17, 226 + 19, MBASE(row) - 3 + 1); - dwinDrawLine(Check_Color, 227, MBASE(row) - 3 + 12, 226 + 8, MBASE(row) - 3 + 18); - dwinDrawLine(Check_Color, 227 + 8, MBASE(row) - 3 + 18, 226 + 19, MBASE(row) - 3 + 2); - dwinDrawLine(Check_Color, 227, MBASE(row) - 3 + 13, 226 + 8, MBASE(row) - 3 + 19); - dwinDrawLine(Check_Color, 227 + 8, MBASE(row) - 3 + 19, 226 + 19, MBASE(row) - 3 + 3); + dwinDrawLine(COLOR_CHECKBOX, 227, MBASE(row) - 3 + 11, 226 + 8, MBASE(row) - 3 + 17); + dwinDrawLine(COLOR_CHECKBOX, 227 + 8, MBASE(row) - 3 + 17, 226 + 19, MBASE(row) - 3 + 1); + dwinDrawLine(COLOR_CHECKBOX, 227, MBASE(row) - 3 + 12, 226 + 8, MBASE(row) - 3 + 18); + dwinDrawLine(COLOR_CHECKBOX, 227 + 8, MBASE(row) - 3 + 18, 226 + 19, MBASE(row) - 3 + 2); + dwinDrawLine(COLOR_CHECKBOX, 227, MBASE(row) - 3 + 13, 226 + 8, MBASE(row) - 3 + 19); + dwinDrawLine(COLOR_CHECKBOX, 227 + 8, MBASE(row) - 3 + 19, 226 + 19, MBASE(row) - 3 + 3); } #endif } @@ -548,27 +548,27 @@ void JyersDWIN::drawCheckbox(const uint8_t row, const bool value) { void JyersDWIN::drawMenu(const uint8_t menu, const uint8_t select/*=0*/, const uint8_t scroll/*=0*/) { if (active_menu != menu) { last_menu = active_menu; - if (process == Menu) last_selection = selection; + if (process == Proc_Menu) last_selection = selection; } selection = _MIN(select, getMenuSize(menu)); scrollpos = scroll; if (selection - scrollpos > MROWS) scrollpos = selection - MROWS; // i.e., NOLESS(scrollpos, selection - MROWS); - process = Menu; + process = Proc_Menu; active_menu = menu; clearScreen(); drawTitle(getMenuTitle(menu)); for (uint8_t i = 0; i < TROWS; ++i) menuItemHandler(menu, i + scrollpos); - dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, COLOR_RECTANGLE), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); } void JyersDWIN::redrawMenu(const bool lastproc/*=true*/, const bool lastsel/*=false*/, const bool lastmenu/*=false*/) { switch (lastproc ? last_process : process) { - case Menu: + case Proc_Menu: drawMenu(lastmenu ? last_menu : active_menu, lastsel ? last_selection : selection, lastmenu ? 0 : scrollpos); break; - case Main: drawMainMenu(lastsel ? last_selection : selection); break; - case Print: drawPrintScreen(); break; - case File: drawSDList(); break; + case Proc_Main: drawMainMenu(lastsel ? last_selection : selection); break; + case Proc_Print: drawPrintScreen(); break; + case Proc_File: drawSDList(); break; default: break; } } @@ -585,60 +585,60 @@ void JyersDWIN::redrawScreen() { void JyersDWIN::mainMenuIcons() { if (selection == 0) { dwinIconShow(ICON, ICON_Print_1, 17, 130); - dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 17, 130, 126, 229); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 52, 200, F("Print")); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, COLOR_WHITE), 17, 130, 126, 229); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 52, 200, F("Print")); } else { dwinIconShow(ICON, ICON_Print_0, 17, 130); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 52, 200, F("Print")); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 52, 200, F("Print")); } if (selection == 1) { dwinIconShow(ICON, ICON_Prepare_1, 145, 130); - dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 145, 130, 254, 229); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 170, 200, F("Prepare")); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, COLOR_WHITE), 145, 130, 254, 229); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 170, 200, F("Prepare")); } else { dwinIconShow(ICON, ICON_Prepare_0, 145, 130); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 170, 200, F("Prepare")); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 170, 200, F("Prepare")); } if (selection == 2) { dwinIconShow(ICON, ICON_Control_1, 17, 246); - dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 17, 246, 126, 345); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 43, 317, F("Control")); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, COLOR_WHITE), 17, 246, 126, 345); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 43, 317, F("Control")); } else { dwinIconShow(ICON, ICON_Control_0, 17, 246); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 43, 317, F("Control")); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 43, 317, F("Control")); } #if HAS_ABL_OR_UBL if (selection == 3) { dwinIconShow(ICON, ICON_Leveling_1, 145, 246); - dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 145, 246, 254, 345); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 179, 317, F("Level")); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, COLOR_WHITE), 145, 246, 254, 345); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 179, 317, F("Level")); } else { dwinIconShow(ICON, ICON_Leveling_0, 145, 246); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 179, 317, F("Level")); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 179, 317, F("Level")); } #else if (selection == 3) { dwinIconShow(ICON, ICON_Info_1, 145, 246); - dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 145, 246, 254, 345); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 181, 317, F("Info")); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, COLOR_WHITE), 145, 246, 254, 345); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 181, 317, F("Info")); } else { dwinIconShow(ICON, ICON_Info_0, 145, 246); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 181, 317, F("Info")); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 181, 317, F("Info")); } #endif } void JyersDWIN::drawMainMenu(const uint8_t select/*=0*/) { - process = Main; - active_menu = MainMenu; + process = Proc_Main; + active_menu = ID_MainMenu; selection = select; clearScreen(); - drawTitle(getMenuTitle(MainMenu)); + drawTitle(getMenuTitle(ID_MainMenu)); SERIAL_ECHOPGM("\nDWIN handshake "); dwinIconShow(ICON, ICON_LOGO, 71, 72); mainMenuIcons(); @@ -647,57 +647,57 @@ void JyersDWIN::drawMainMenu(const uint8_t select/*=0*/) { void JyersDWIN::printScreenIcons() { if (selection == 0) { dwinIconShow(ICON, ICON_Setup_1, 8, 252); - dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 8, 252, 87, 351); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 30, 322, F("Tune")); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, COLOR_WHITE), 8, 252, 87, 351); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 30, 322, F("Tune")); } else { dwinIconShow(ICON, ICON_Setup_0, 8, 252); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 30, 322, F("Tune")); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 30, 322, F("Tune")); } if (selection == 2) { dwinIconShow(ICON, ICON_Stop_1, 184, 252); - dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 184, 252, 263, 351); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 205, 322, F("Stop")); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, COLOR_WHITE), 184, 252, 263, 351); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 205, 322, F("Stop")); } else { dwinIconShow(ICON, ICON_Stop_0, 184, 252); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 205, 322, F("Stop")); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 205, 322, F("Stop")); } if (paused) { if (selection == 1) { dwinIconShow(ICON, ICON_Continue_1, 96, 252); - dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 96, 252, 175, 351); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 114, 322, F("Print")); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, COLOR_WHITE), 96, 252, 175, 351); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 114, 322, F("Print")); } else { dwinIconShow(ICON, ICON_Continue_0, 96, 252); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 114, 322, F("Print")); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 114, 322, F("Print")); } } else { if (selection == 1) { dwinIconShow(ICON, ICON_Pause_1, 96, 252); - dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 96, 252, 175, 351); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 114, 322, F("Pause")); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, COLOR_WHITE), 96, 252, 175, 351); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 114, 322, F("Pause")); } else { dwinIconShow(ICON, ICON_Pause_0, 96, 252); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Blue, 114, 322, F("Pause")); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLUE, 114, 322, F("Pause")); } } } void JyersDWIN::drawPrintScreen() { - process = Print; + process = Proc_Print; selection = 0; clearScreen(); - dwinDrawRectangle(1, Color_Bg_Black, 8, 352, DWIN_WIDTH - 8, 376); + dwinDrawRectangle(1, COLOR_BG_BLACK, 8, 352, DWIN_WIDTH - 8, 376); drawTitle("Printing..."); printScreenIcons(); dwinIconShow(ICON, ICON_PrintTime, 14, 171); dwinIconShow(ICON, ICON_RemainTime, 147, 169); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, 41, 163, F("Elapsed")); - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, 176, 163, F("Remaining")); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLACK, 41, 163, F("Elapsed")); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLACK, 176, 163, F("Remaining")); updateStatusBar(true); drawPrintProgressBar(); drawPrintProgressElapsed(); @@ -709,60 +709,60 @@ void JyersDWIN::drawPrintFilename(const bool reset/*=false*/) { typedef TextScroller<30> Scroller; static Scroller scroller; if (reset) scroller.reset(); - if (process == Print) { + if (process == Proc_Print) { Scroller::Buffer buf; size_t outlen = 0; const char* outstr = scroller.scroll(outlen, buf, filename); - dwinDrawRectangle(1, Color_Bg_Black, 8, 50, DWIN_WIDTH - 8, 80); + dwinDrawRectangle(1, COLOR_BG_BLACK, 8, 50, DWIN_WIDTH - 8, 80); const int8_t npos = (DWIN_WIDTH - outlen * MENU_CHR_W) / 2; - dwinDrawString(false, DWIN_FONT_MENU, Color_White, Color_Bg_Black, npos, 60, outstr); + dwinDrawString(false, DWIN_FONT_MENU, COLOR_WHITE, COLOR_BG_BLACK, npos, 60, outstr); } } void JyersDWIN::drawPrintProgressBar() { uint8_t printpercent = sdprint ? card.percentDone() : (ui._get_progress() / 100); dwinIconShow(ICON, ICON_Bar, 15, 93); - dwinDrawRectangle(1, BarFill_Color, 16 + printpercent * 240 / 100, 93, 256, 113); - dwinDrawIntValue(true, true, 0, DWIN_FONT_MENU, getColor(eeprom_settings.progress_percent, Percent_Color), Color_Bg_Black, 3, 109, 133, printpercent); - dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_percent, Percent_Color), Color_Bg_Black, 133, 133, F("%")); + dwinDrawRectangle(1, COLOR_BARFILL, 16 + printpercent * 240 / 100, 93, 256, 113); + dwinDrawIntValue(true, true, 0, DWIN_FONT_MENU, getColor(eeprom_settings.progress_percent, COLOR_PERCENT), COLOR_BG_BLACK, 3, 109, 133, printpercent); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_percent, COLOR_PERCENT), COLOR_BG_BLACK, 133, 133, F("%")); } #if ENABLED(SET_REMAINING_TIME) void JyersDWIN::drawPrintProgressRemain() { uint16_t remainingtime = ui.get_remaining_time(); - dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 176, 187, remainingtime / 3600); - dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 200, 187, (remainingtime % 3600) / 60); + dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, COLOR_WHITE), COLOR_BG_BLACK, 2, 176, 187, remainingtime / 3600); + dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, COLOR_WHITE), COLOR_BG_BLACK, 2, 200, 187, (remainingtime % 3600) / 60); if (eeprom_settings.time_format_textual) { - dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 192, 187, F("h")); - dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 216, 187, F("m")); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, COLOR_WHITE), COLOR_BG_BLACK, 192, 187, F("h")); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, COLOR_WHITE), COLOR_BG_BLACK, 216, 187, F("m")); } else - dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 192, 187, F(":")); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, COLOR_WHITE), COLOR_BG_BLACK, 192, 187, F(":")); } #endif void JyersDWIN::drawPrintProgressElapsed() { duration_t elapsed = print_job_timer.duration(); - dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 42, 187, elapsed.value / 3600); - dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 2, 66, 187, (elapsed.value % 3600) / 60); + dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, COLOR_WHITE), COLOR_BG_BLACK, 2, 42, 187, elapsed.value / 3600); + dwinDrawIntValue(true, true, 1, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, COLOR_WHITE), COLOR_BG_BLACK, 2, 66, 187, (elapsed.value % 3600) / 60); if (eeprom_settings.time_format_textual) { - dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 58, 187, F("h")); - dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 82, 187, F("m")); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, COLOR_WHITE), COLOR_BG_BLACK, 58, 187, F("h")); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, COLOR_WHITE), COLOR_BG_BLACK, 82, 187, F("m")); } else - dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, Color_White), Color_Bg_Black, 58, 187, F(":")); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.progress_time, COLOR_WHITE), COLOR_BG_BLACK, 58, 187, F(":")); } void JyersDWIN::drawPrintConfirm() { drawPrintScreen(); - process = Confirm; - popup = Complete; - dwinDrawRectangle(1, Color_Bg_Black, 8, 252, 263, 351); + process = Proc_Confirm; + popup = Popup_Complete; + dwinDrawRectangle(1, COLOR_BG_BLACK, 8, 252, 263, 351); dwinIconShow(ICON, ICON_Confirm_E, 87, 283); - dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 86, 282, 187, 321); - dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, Color_White), 85, 281, 188, 322); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, COLOR_WHITE), 86, 282, 187, 321); + dwinDrawRectangle(0, getColor(eeprom_settings.highlight_box, COLOR_WHITE), 85, 281, 188, 322); } void JyersDWIN::drawSDItem(const uint8_t item, const uint8_t row) { @@ -791,22 +791,22 @@ void JyersDWIN::drawSDList(const bool removed/*=false*/) { drawTitle("Select File"); selection = 0; scrollpos = 0; - process = File; + process = Proc_File; if (card.isMounted() && !removed) { for (uint8_t i = 0; i < _MIN(card.get_num_items() + 1, TROWS); ++i) drawSDItem(i, i); } else { drawMenuItem(0, ICON_Back, F("Back")); - dwinDrawRectangle(1, Color_Bg_Red, 10, MBASE(3) - 10, DWIN_WIDTH - 10, MBASE(4)); - dwinDrawString(false, font16x32, Color_Yellow, Color_Bg_Red, ((DWIN_WIDTH) - 8 * 16) / 2, MBASE(3), F("No Media")); + dwinDrawRectangle(1, COLOR_BG_RED, 10, MBASE(3) - 10, DWIN_WIDTH - 10, MBASE(4)); + dwinDrawString(false, font16x32, COLOR_YELLOW, COLOR_BG_RED, ((DWIN_WIDTH) - 8 * 16) / 2, MBASE(3), F("No Media")); } - dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(0) - 18, 14, MBASE(0) + 33); + dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, COLOR_RECTANGLE), 0, MBASE(0) - 18, 14, MBASE(0) + 33); } void JyersDWIN::drawStatusArea(const bool icons/*=false*/) { - if (icons) dwinDrawRectangle(1, Color_Bg_Black, 0, STATUS_Y, DWIN_WIDTH, DWIN_HEIGHT - 1); + if (icons) dwinDrawRectangle(1, COLOR_BG_BLACK, 0, STATUS_Y, DWIN_WIDTH, DWIN_HEIGHT - 1); #if HAS_HOTEND static float hotend = -1; @@ -815,26 +815,26 @@ void JyersDWIN::drawStatusArea(const bool icons/*=false*/) { hotend = -1; hotendtarget = -1; dwinIconShow(ICON, ICON_HotendTemp, 10, 383); - dwinDrawString(false, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 25 + 3 * STAT_CHR_W + 5, 384, F("/")); + dwinDrawString(false, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 25 + 3 * STAT_CHR_W + 5, 384, F("/")); } if (thermalManager.temp_hotend[0].celsius != hotend) { hotend = thermalManager.temp_hotend[0].celsius; - dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 28, 384, thermalManager.temp_hotend[0].celsius); - dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, Color_White), 25 + 3 * STAT_CHR_W + 5, 386); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 28, 384, thermalManager.temp_hotend[0].celsius); + dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, COLOR_WHITE), 25 + 3 * STAT_CHR_W + 5, 386); } if (thermalManager.temp_hotend[0].target != hotendtarget) { hotendtarget = thermalManager.temp_hotend[0].target; - dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 25 + 4 * STAT_CHR_W + 6, 384, thermalManager.temp_hotend[0].target); - dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, Color_White), 25 + 4 * STAT_CHR_W + 39, 386); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 25 + 4 * STAT_CHR_W + 6, 384, thermalManager.temp_hotend[0].target); + dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, COLOR_WHITE), 25 + 4 * STAT_CHR_W + 39, 386); } if (icons) { flow = -1; dwinIconShow(ICON, ICON_StepE, 112, 417); - dwinDrawString(false, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 116 + 5 * STAT_CHR_W + 2, 417, F("%")); + dwinDrawString(false, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 116 + 5 * STAT_CHR_W + 2, 417, F("%")); } if (planner.flow_percentage[0] != flow) { flow = planner.flow_percentage[0]; - dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 116 + 2 * STAT_CHR_W, 417, planner.flow_percentage[0]); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 116 + 2 * STAT_CHR_W, 417, planner.flow_percentage[0]); } #endif @@ -845,17 +845,17 @@ void JyersDWIN::drawStatusArea(const bool icons/*=false*/) { bed = -1; bedtarget = -1; dwinIconShow(ICON, ICON_BedTemp, 10, 416); - dwinDrawString(false, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 25 + 3 * STAT_CHR_W + 5, 417, F("/")); + dwinDrawString(false, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 25 + 3 * STAT_CHR_W + 5, 417, F("/")); } if (thermalManager.temp_bed.celsius != bed) { bed = thermalManager.temp_bed.celsius; - dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 28, 417, thermalManager.temp_bed.celsius); - dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, Color_White), 25 + 3 * STAT_CHR_W + 5, 419); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 28, 417, thermalManager.temp_bed.celsius); + dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, COLOR_WHITE), 25 + 3 * STAT_CHR_W + 5, 419); } if (thermalManager.temp_bed.target != bedtarget) { bedtarget = thermalManager.temp_bed.target; - dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 25 + 4 * STAT_CHR_W + 6, 417, thermalManager.temp_bed.target); - dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, Color_White), 25 + 4 * STAT_CHR_W + 39, 419); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 25 + 4 * STAT_CHR_W + 6, 417, thermalManager.temp_bed.target); + dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, COLOR_WHITE), 25 + 4 * STAT_CHR_W + 39, 419); } #endif @@ -867,7 +867,7 @@ void JyersDWIN::drawStatusArea(const bool icons/*=false*/) { } if (thermalManager.fan_speed[0] != fan) { fan = thermalManager.fan_speed[0]; - dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 195 + 2 * STAT_CHR_W, 384, thermalManager.fan_speed[0]); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 195 + 2 * STAT_CHR_W, 384, thermalManager.fan_speed[0]); } #endif @@ -880,8 +880,8 @@ void JyersDWIN::drawStatusArea(const bool icons/*=false*/) { } if (zoffsetvalue != offset) { offset = zoffsetvalue; - dwinDrawFloatValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 2, 2, 207, 417, (zoffsetvalue < 0 ? -zoffsetvalue : zoffsetvalue)); - dwinDrawString(true, DWIN_FONT_MENU, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 205, 419, zoffsetvalue < 0 ? F("-") : F(" ")); + dwinDrawFloatValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 2, 2, 207, 417, (zoffsetvalue < 0 ? -zoffsetvalue : zoffsetvalue)); + dwinDrawString(true, DWIN_FONT_MENU, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 205, 419, zoffsetvalue < 0 ? F("-") : F(" ")); } #endif @@ -889,11 +889,11 @@ void JyersDWIN::drawStatusArea(const bool icons/*=false*/) { if (icons) { feedrate = -1; dwinIconShow(ICON, ICON_Speed, 113, 383); - dwinDrawString(false, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 116 + 5 * STAT_CHR_W + 2, 384, F("%")); + dwinDrawString(false, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 116 + 5 * STAT_CHR_W + 2, 384, F("%")); } if (feedrate_percentage != feedrate) { feedrate = feedrate_percentage; - dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, Color_White), Color_Bg_Black, 3, 116 + 2 * STAT_CHR_W, 384, feedrate_percentage); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 116 + 2 * STAT_CHR_W, 384, feedrate_percentage); } static float x = -1, y = -1, z = -1; @@ -903,7 +903,7 @@ void JyersDWIN::drawStatusArea(const bool icons/*=false*/) { update_z = (current_position.z != z || axis_should_home(Z_AXIS) || update_z); if (icons) { x = y = z = -1; - dwinDrawLine(getColor(eeprom_settings.coordinates_split_line, Line_Color, true), 16, 450, 256, 450); + dwinDrawLine(getColor(eeprom_settings.coordinates_split_line, COLOR_LINE, true), 16, 450, 256, 450); dwinIconShow(ICON, ICON_MaxSpeedX, 10, 456); dwinIconShow(ICON, ICON_MaxSpeedY, 95, 456); dwinIconShow(ICON, ICON_MaxSpeedZ, 180, 456); @@ -911,60 +911,60 @@ void JyersDWIN::drawStatusArea(const bool icons/*=false*/) { if (update_x) { x = current_position.x; if ((update_x = axis_should_home(X_AXIS) && ui.get_blink())) - dwinDrawString(true, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 35, 459, F(" -?- ")); + dwinDrawString(true, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, COLOR_WHITE), COLOR_BG_BLACK, 35, 459, F(" -?- ")); else - dwinDrawFloatValue(true, true, 0, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 3, 1, 35, 459, current_position.x); + dwinDrawFloatValue(true, true, 0, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 1, 35, 459, current_position.x); } if (update_y) { y = current_position.y; if ((update_y = axis_should_home(Y_AXIS) && ui.get_blink())) - dwinDrawString(true, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 120, 459, F(" -?- ")); + dwinDrawString(true, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, COLOR_WHITE), COLOR_BG_BLACK, 120, 459, F(" -?- ")); else - dwinDrawFloatValue(true, true, 0, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 3, 1, 120, 459, current_position.y); + dwinDrawFloatValue(true, true, 0, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 1, 120, 459, current_position.y); } if (update_z) { z = current_position.z; if ((update_z = axis_should_home(Z_AXIS) && ui.get_blink())) - dwinDrawString(true, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 205, 459, F(" -?- ")); + dwinDrawString(true, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, COLOR_WHITE), COLOR_BG_BLACK, 205, 459, F(" -?- ")); else - dwinDrawFloatValue(true, true, 0, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, Color_White), Color_Bg_Black, 3, 2, 205, 459, current_position.z >= 0 ? current_position.z : 0); + dwinDrawFloatValue(true, true, 0, DWIN_FONT_MENU, getColor(eeprom_settings.coordinates_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 2, 205, 459, current_position.z >= 0 ? current_position.z : 0); } dwinUpdateLCD(); } void JyersDWIN::drawPopup(FSTR_P const line1, FSTR_P const line2, FSTR_P const line3, uint8_t mode, uint8_t icon/*=0*/) { - if (process != Confirm && process != Popup && process != Wait) last_process = process; - if ((process == Menu || process == Wait) && mode == Popup) last_selection = selection; + if (process != Proc_Confirm && process != Proc_Popup && process != Proc_Wait) last_process = process; + if ((process == Proc_Menu || process == Proc_Wait) && mode == Proc_Popup) last_selection = selection; process = mode; clearScreen(); - dwinDrawRectangle(0, Color_White, 13, 59, 259, 351); - dwinDrawRectangle(1, Color_Bg_Window, 14, 60, 258, 350); - const uint8_t ypos = (mode == Popup || mode == Confirm) ? 150 : 230; + dwinDrawRectangle(0, COLOR_WHITE, 13, 59, 259, 351); + dwinDrawRectangle(1, COLOR_BG_WINDOW, 14, 60, 258, 350); + const uint8_t ypos = (mode == Proc_Popup || mode == Proc_Confirm) ? 150 : 230; if (icon > 0) dwinIconShow(ICON, icon, 101, 105); - dwinDrawString(true, DWIN_FONT_MENU, Popup_Text_Color, Color_Bg_Window, (272 - 8 * strlen_P(FTOP(line1))) / 2, ypos, line1); - dwinDrawString(true, DWIN_FONT_MENU, Popup_Text_Color, Color_Bg_Window, (272 - 8 * strlen_P(FTOP(line2))) / 2, ypos + 30, line2); - dwinDrawString(true, DWIN_FONT_MENU, Popup_Text_Color, Color_Bg_Window, (272 - 8 * strlen_P(FTOP(line3))) / 2, ypos + 60, line3); - if (mode == Popup) { + dwinDrawString(true, DWIN_FONT_MENU, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, (272 - 8 * strlen_P(FTOP(line1))) / 2, ypos, line1); + dwinDrawString(true, DWIN_FONT_MENU, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, (272 - 8 * strlen_P(FTOP(line2))) / 2, ypos + 30, line2); + dwinDrawString(true, DWIN_FONT_MENU, COLOR_POPUP_TEXT, COLOR_BG_WINDOW, (272 - 8 * strlen_P(FTOP(line3))) / 2, ypos + 60, line3); + if (mode == Proc_Popup) { selection = 0; - dwinDrawRectangle(1, Confirm_Color, 26, 280, 125, 317); - dwinDrawRectangle(1, Cancel_Color, 146, 280, 245, 317); - dwinDrawString(false, DWIN_FONT_STAT, Color_White, Color_Bg_Window, 39, 290, F("Confirm")); - dwinDrawString(false, DWIN_FONT_STAT, Color_White, Color_Bg_Window, 165, 290, F("Cancel")); + dwinDrawRectangle(1, COLOR_CONFIRM, 26, 280, 125, 317); + dwinDrawRectangle(1, COLOR_CANCEL, 146, 280, 245, 317); + dwinDrawString(false, DWIN_FONT_STAT, COLOR_WHITE, COLOR_BG_WINDOW, 39, 290, F("Confirm")); + dwinDrawString(false, DWIN_FONT_STAT, COLOR_WHITE, COLOR_BG_WINDOW, 165, 290, F("Cancel")); popupSelect(); } - else if (mode == Confirm) { - dwinDrawRectangle(1, Confirm_Color, 87, 280, 186, 317); - dwinDrawString(false, DWIN_FONT_STAT, Color_White, Color_Bg_Window, 96, 290, F("Continue")); + else if (mode == Proc_Confirm) { + dwinDrawRectangle(1, COLOR_CONFIRM, 87, 280, 186, 317); + dwinDrawString(false, DWIN_FONT_STAT, COLOR_WHITE, COLOR_BG_WINDOW, 96, 290, F("Continue")); } } void MarlinUI::kill_screen(FSTR_P const error, FSTR_P const) { - jyersDWIN.drawPopup(F("Printer Kill Reason:"), error, F("Restart Required"), Wait, ICON_BLTouch); + jyersDWIN.drawPopup(F("Printer Kill Reason:"), error, F("Restart Required"), Proc_Wait, ICON_BLTouch); } void JyersDWIN::popupSelect() { - const uint16_t c1 = selection ? Color_Bg_Window : getColor(eeprom_settings.highlight_box, Color_White), - c2 = selection ? getColor(eeprom_settings.highlight_box, Color_White) : Color_Bg_Window; + const uint16_t c1 = selection ? COLOR_BG_WINDOW : getColor(eeprom_settings.highlight_box, COLOR_WHITE), + c2 = selection ? getColor(eeprom_settings.highlight_box, COLOR_WHITE) : COLOR_BG_WINDOW; dwinDrawRectangle(0, c1, 25, 279, 126, 318); dwinDrawRectangle(0, c1, 24, 278, 127, 319); dwinDrawRectangle(0, c2, 145, 279, 246, 318); @@ -986,15 +986,15 @@ void JyersDWIN::updateStatusBar(const bool refresh/*=false*/) { const char* dispmsg = scroller.scroll(len, buf, statusmsg, &new_msg); if (new_msg) { new_msg = false; - if (process == Print) { - dwinDrawRectangle(1, Color_Grey, 8, 214, DWIN_WIDTH - 8, 238); + if (process == Proc_Print) { + dwinDrawRectangle(1, COLOR_GREY, 8, 214, DWIN_WIDTH - 8, 238); const int8_t npos = (DWIN_WIDTH - len * MENU_CHR_W) / 2; - dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.status_bar_text, Color_White), Color_Bg_Black, npos, 219, dispmsg); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.status_bar_text, COLOR_WHITE), COLOR_BG_BLACK, npos, 219, dispmsg); } else { - dwinDrawRectangle(1, Color_Bg_Black, 8, 352, DWIN_WIDTH - 8, 376); + dwinDrawRectangle(1, COLOR_BG_BLACK, 8, 352, DWIN_WIDTH - 8, 376); const int8_t npos = (DWIN_WIDTH - len * MENU_CHR_W) / 2; - dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.status_bar_text, Color_White), Color_Bg_Black, npos, 357, dispmsg); + dwinDrawString(false, DWIN_FONT_MENU, getColor(eeprom_settings.status_bar_text, COLOR_WHITE), COLOR_BG_BLACK, npos, 357, dispmsg); } } } @@ -1023,7 +1023,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(TempMenu, sel); + drawMenu(ID_TempMenu, sel); break; #if HAS_HOTEND case PREHEAT_SUBMENU_HOTEND: @@ -1061,7 +1061,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #endif switch (menu) { - case Prepare: + case ID_Prepare: #define PREPARE_BACK 0 #define PREPARE_MOVE (PREPARE_BACK + 1) @@ -1086,7 +1086,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Axis, F("Move"), nullptr, true); else - drawMenu(Move); + drawMenu(ID_Move); break; case PREPARE_DISABLE: if (draw) @@ -1098,21 +1098,21 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_SetHome, F("Homing"), nullptr, true); else - drawMenu(HomeMenu); + drawMenu(ID_HomeMenu); break; case PREPARE_MANUALLEVEL: if (draw) drawMenuItem(row, ICON_PrintSize, F("Manual Leveling"), nullptr, true); else { if (axes_should_home()) { - popupHandler(Home); + popupHandler(Popup_Home); gcode.home_all_axes(true); } #if HAS_LEVELING level_state = planner.leveling_active; set_bed_leveling_enabled(false); #endif - drawMenu(ManualLevel); + drawMenu(ID_ManualLevel); } break; @@ -1125,7 +1125,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra level_state = planner.leveling_active; set_bed_leveling_enabled(false); #endif - drawMenu(ZOffset); + drawMenu(ID_ZOffset); } break; #endif @@ -1135,7 +1135,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Temperature, F("Preheat"), nullptr, true); else - drawMenu(Preheat); + drawMenu(ID_Preheat); break; #endif @@ -1156,7 +1156,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Version, F(CUSTOM_MENU_CONFIG_TITLE)); else - drawMenu(MenuCustom); + drawMenu(ID_MenuCustom); break; #endif @@ -1171,16 +1171,16 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra } else { #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) - drawMenu(ChangeFilament); + drawMenu(ID_ChangeFilament); #else if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) - popupHandler(ETemp); + popupHandler(Popup_ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - popupHandler(Heating); + popupHandler(Popup_Heating); thermalManager.wait_for_hotend(0); } - popupHandler(FilChange); + popupHandler(Popup_FilChange); gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.temp_hotend[0].target)); } #endif @@ -1190,7 +1190,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra } break; - case HomeMenu: + case ID_HomeMenu: #define HOME_BACK 0 #define HOME_ALL (HOME_BACK + 1) @@ -1205,13 +1205,13 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Prepare, PREPARE_HOME); + drawMenu(ID_Prepare, PREPARE_HOME); break; case HOME_ALL: if (draw) drawMenuItem(row, ICON_Homing, F("Home All")); else { - popupHandler(Home); + popupHandler(Popup_Home); gcode.home_all_axes(true); redrawMenu(); } @@ -1220,7 +1220,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_MoveX, F("Home X")); else { - popupHandler(Home); + popupHandler(Popup_Home); gcode.process_subcommands_now(F("G28 X")); planner.synchronize(); redrawMenu(); @@ -1230,7 +1230,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_MoveY, F("Home Y")); else { - popupHandler(Home); + popupHandler(Popup_Home); gcode.process_subcommands_now(F("G28 Y")); planner.synchronize(); redrawMenu(); @@ -1240,7 +1240,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_MoveZ, F("Home Z")); else { - popupHandler(Home); + popupHandler(Popup_Home); gcode.process_subcommands_now(F("G28 Z")); planner.synchronize(); redrawMenu(); @@ -1257,7 +1257,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra } break; - case Move: + case ID_Move: #define MOVE_BACK 0 #define MOVE_X (MOVE_BACK + 1) @@ -1277,7 +1277,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra probe_deployed = false; probe.set_deployed(probe_deployed); #endif - drawMenu(Prepare, PREPARE_MOVE); + drawMenu(ID_Prepare, PREPARE_MOVE); } break; case MOVE_X: @@ -1315,11 +1315,11 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra } else { if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) { - popupHandler(ETemp); + popupHandler(Popup_ETemp); } else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - popupHandler(Heating); + popupHandler(Popup_Heating); thermalManager.wait_for_hotend(0); redrawMenu(); } @@ -1357,7 +1357,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra break; } break; - case ManualLevel: { + case ID_ManualLevel: { #define MLEVEL_BACK 0 #define MLEVEL_PROBE (MLEVEL_BACK + ENABLED(HAS_BED_PROBE)) @@ -1385,7 +1385,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawMenuItem(row, ICON_Back, F("Back")); else { TERN_(HAS_LEVELING, set_bed_leveling_enabled(level_state)); - drawMenu(Prepare, PREPARE_MANUALLEVEL); + drawMenu(ID_Prepare, PREPARE_MANUALLEVEL); } break; @@ -1399,7 +1399,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra use_probe ^= true; drawCheckbox(row, use_probe); if (use_probe) { - popupHandler(Level); + popupHandler(Popup_Level); const struct { xy_pos_t p; ProbePtRaise r; } points[] = { { { probe_x_min, probe_y_min }, PROBE_PT_RAISE }, { { probe_x_min, probe_y_max }, PROBE_PT_RAISE }, @@ -1423,14 +1423,14 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_AxisBL, F("Bottom Left")); else { - popupHandler(MoveWait); + popupHandler(Popup_MoveWait); if (use_probe) { #if HAS_BED_PROBE gcode.process_subcommands_now( TS(F("G0F4000\nG0Z10\nG0X"), p_float_t(probe_x_min, 3), 'Y', p_float_t(probe_y_min, 3)) ); planner.synchronize(); - popupHandler(ManualProbing); + popupHandler(Popup_ManualProbing); #endif } else { @@ -1446,14 +1446,14 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_AxisTL, F("Top Left")); else { - popupHandler(MoveWait); + popupHandler(Popup_MoveWait); if (use_probe) { #if HAS_BED_PROBE gcode.process_subcommands_now( TS(F("G0F4000\nG0Z10\nG0X"), p_float_t(probe_x_min, 3), 'Y', p_float_t(probe_y_max, 3)) ); planner.synchronize(); - popupHandler(ManualProbing); + popupHandler(Popup_ManualProbing); #endif } else { @@ -1469,14 +1469,14 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_AxisTR, F("Top Right")); else { - popupHandler(MoveWait); + popupHandler(Popup_MoveWait); if (use_probe) { #if HAS_BED_PROBE gcode.process_subcommands_now( TS(F("G0F4000\nG0Z10\nG0X"), p_float_t(probe_x_max, 3), 'Y', p_float_t(probe_y_max, 3), F("\nG0F300Z"), p_float_t(mlev_z_pos, 3)) ); planner.synchronize(); - popupHandler(ManualProbing); + popupHandler(Popup_ManualProbing); #endif } else { @@ -1492,14 +1492,14 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_AxisBR, F("Bottom Right")); else { - popupHandler(MoveWait); + popupHandler(Popup_MoveWait); if (use_probe) { #if HAS_BED_PROBE gcode.process_subcommands_now( TS(F("G0F4000\nG0Z10\nG0X"), p_float_t(probe_x_max, 3), 'Y', p_float_t(probe_y_min, 3)) ); planner.synchronize(); - popupHandler(ManualProbing); + popupHandler(Popup_ManualProbing); #endif } else { @@ -1515,14 +1515,14 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_AxisC, F("Center")); else { - popupHandler(MoveWait); + popupHandler(Popup_MoveWait); if (use_probe) { #if HAS_BED_PROBE gcode.process_subcommands_now( TS(F("G0F4000\nG0Z10\nG0X"), p_float_t((X_MAX_POS) / 2.0f - probe.offset.x, 3), 'Y', p_float_t((Y_MAX_POS) / 2.0f - probe.offset.y, 3)) ); planner.synchronize(); - popupHandler(ManualProbing); + popupHandler(Popup_ManualProbing); #endif } else { @@ -1547,7 +1547,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra } break; #if HAS_ZOFFSET_ITEM - case ZOffset: + case ID_ZOffset: #define ZOFFSET_BACK 0 #define ZOFFSET_HOME (ZOFFSET_BACK + 1) @@ -1565,16 +1565,16 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra else { liveadjust = false; TERN_(HAS_LEVELING, set_bed_leveling_enabled(level_state)); - drawMenu(Prepare, PREPARE_ZOFFSET); + drawMenu(ID_Prepare, PREPARE_ZOFFSET); } break; case ZOFFSET_HOME: if (draw) drawMenuItem(row, ICON_Homing, F("Home Z Axis")); else { - popupHandler(Home); + popupHandler(Popup_Home); gcode.process_subcommands_now(F("G28Z")); - popupHandler(MoveWait); + popupHandler(Popup_MoveWait); #if ENABLED(Z_SAFE_HOMING) planner.synchronize(); gcode.process_subcommands_now( @@ -1596,10 +1596,10 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra else { if (!liveadjust) { if (axes_should_home()) { - popupHandler(Home); + popupHandler(Popup_Home); gcode.home_all_axes(true); } - popupHandler(MoveWait); + popupHandler(Popup_MoveWait); #if ENABLED(Z_SAFE_HOMING) planner.synchronize(); gcode.process_subcommands_now( @@ -1665,7 +1665,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #endif #if HAS_PREHEAT - case Preheat: { + case ID_Preheat: { #define PREHEAT_MODE (PREHEAT_BACK + 1) #define PREHEAT_1 (PREHEAT_MODE + 1) #define PREHEAT_2 (PREHEAT_1 + (PREHEAT_COUNT >= 2)) @@ -1685,7 +1685,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Prepare, PREPARE_PREHEAT); + drawMenu(ID_Prepare, PREPARE_PREHEAT); break; case PREHEAT_MODE: @@ -1709,7 +1709,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #endif // HAS_PREHEAT #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) - case ChangeFilament: + case ID_ChangeFilament: #define CHANGEFIL_BACK 0 #define CHANGEFIL_LOAD (CHANGEFIL_BACK + 1) @@ -1722,20 +1722,20 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Prepare, PREPARE_CHANGEFIL); + drawMenu(ID_Prepare, PREPARE_CHANGEFIL); break; case CHANGEFIL_LOAD: if (draw) drawMenuItem(row, ICON_WriteEEPROM, GET_TEXT_F(MSG_FILAMENTLOAD)); else { if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) - popupHandler(ETemp); + popupHandler(Popup_ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - popupHandler(Heating); + popupHandler(Popup_Heating); thermalManager.wait_for_hotend(0); } - popupHandler(FilLoad); + popupHandler(Popup_FilLoad); gcode.process_subcommands_now(F("M701")); planner.synchronize(); redrawMenu(); @@ -1747,14 +1747,14 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawMenuItem(row, ICON_ReadEEPROM, GET_TEXT_F(MSG_FILAMENTUNLOAD)); else { if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) { - popupHandler(ETemp); + popupHandler(Popup_ETemp); } else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - popupHandler(Heating); + popupHandler(Popup_Heating); thermalManager.wait_for_hotend(0); } - popupHandler(FilLoad, true); + popupHandler(Popup_FilLoad, true); gcode.process_subcommands_now(F("M702")); planner.synchronize(); redrawMenu(); @@ -1766,13 +1766,13 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawMenuItem(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE)); else { if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) - popupHandler(ETemp); + popupHandler(Popup_ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - popupHandler(Heating); + popupHandler(Popup_Heating); thermalManager.wait_for_hotend(0); } - popupHandler(FilChange); + popupHandler(Popup_FilChange); gcode.process_subcommands_now(TS(F("M600B1R"), thermalManager.temp_hotend[0].target)); } } @@ -1783,7 +1783,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #if HAS_CUSTOM_MENU - case MenuCustom: + case ID_MenuCustom: #define CUSTOM_MENU_BACK 0 #define CUSTOM_MENU_1 1 @@ -1798,7 +1798,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Prepare, PREPARE_CUSTOM_MENU); + drawMenu(ID_Prepare, PREPARE_CUSTOM_MENU); break; #if CUSTOM_MENU_COUNT >= 1 @@ -1806,7 +1806,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Info, F(CONFIG_MENU_ITEM_1_DESC)); else { - popupHandler(Custom); + popupHandler(Popup_Custom); //queue.inject(F(CONFIG_MENU_ITEM_1_GCODE)); // Old code gcode.process_subcommands_now(F(CONFIG_MENU_ITEM_1_GCODE)); planner.synchronize(); @@ -1826,7 +1826,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Info, F(CONFIG_MENU_ITEM_2_DESC)); else { - popupHandler(Custom); + popupHandler(Popup_Custom); gcode.process_subcommands_now(F(CONFIG_MENU_ITEM_2_GCODE)); planner.synchronize(); redrawMenu(); @@ -1845,7 +1845,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Info, F(CONFIG_MENU_ITEM_3_DESC)); else { - popupHandler(Custom); + popupHandler(Popup_Custom); gcode.process_subcommands_now(F(CONFIG_MENU_ITEM_3_GCODE)); planner.synchronize(); redrawMenu(); @@ -1864,7 +1864,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Info, F(CONFIG_MENU_ITEM_4_DESC)); else { - popupHandler(Custom); + popupHandler(Popup_Custom); gcode.process_subcommands_now(F(CONFIG_MENU_ITEM_4_GCODE)); planner.synchronize(); redrawMenu(); @@ -1883,7 +1883,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Info, F(CONFIG_MENU_ITEM_5_DESC)); else { - popupHandler(Custom); + popupHandler(Popup_Custom); gcode.process_subcommands_now(F(CONFIG_MENU_ITEM_5_GCODE)); planner.synchronize(); redrawMenu(); @@ -1901,7 +1901,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #endif // HAS_CUSTOM_MENU - case Control: + case ID_Control: #define CONTROL_BACK 0 #define CONTROL_TEMP (CONTROL_BACK + 1) @@ -1925,25 +1925,25 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Temperature, F("Temperature"), nullptr, true); else - drawMenu(TempMenu); + drawMenu(ID_TempMenu); break; case CONTROL_MOTION: if (draw) drawMenuItem(row, ICON_Motion, F("Motion"), nullptr, true); else - drawMenu(Motion); + drawMenu(ID_Motion); break; case CONTROL_VISUAL: if (draw) drawMenuItem(row, ICON_PrintSize, F("Visual"), nullptr, true); else - drawMenu(Visual); + drawMenu(ID_Visual); break; case CONTROL_ADVANCED: if (draw) drawMenuItem(row, ICON_Version, F("Advanced"), nullptr, true); else - drawMenu(Advanced); + drawMenu(ID_Advanced); break; #if ENABLED(EEPROM_SETTINGS) case CONTROL_SAVE: @@ -1971,12 +1971,12 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Info, F("Info")); else - drawMenu(Info); + drawMenu(ID_Info); break; } break; - case TempMenu: + case ID_TempMenu: #define TEMP_BACK 0 #define TEMP_HOTEND (TEMP_BACK + ENABLED(HAS_HOTEND)) @@ -1996,7 +1996,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Control, CONTROL_TEMP); + drawMenu(ID_Control, CONTROL_TEMP); break; #if HAS_HOTEND case TEMP_HOTEND: @@ -2033,7 +2033,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Step, F("PID"), nullptr, true); else - drawMenu(PID); + drawMenu(ID_PID); break; #endif #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) @@ -2041,14 +2041,14 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Step, F("MPC"), nullptr, true); else - drawMenu(MPC); + drawMenu(ID_MPC); break; #endif #define _TEMP_PREHEAT_CASE(N) \ case TEMP_PREHEAT##N: { \ if (draw) drawMenuItem(row, ICON_Step, F(PREHEAT_## N ##_LABEL), nullptr, true); \ - else drawMenu(Preheat##N); \ + else drawMenu(ID_Preheat##N); \ } break; REPEAT_1(PREHEAT_COUNT, _TEMP_PREHEAT_CASE) @@ -2056,7 +2056,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra break; #if ANY(PIDTEMP, PIDTEMPBED) - case PID: + case ID_PID: #define PID_BACK 0 #define PID_HOTEND (PID_BACK + ENABLED(PIDTEMP)) @@ -2071,14 +2071,14 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(TempMenu, TEMP_PID); + drawMenu(ID_TempMenu, TEMP_PID); break; #if ENABLED(PIDTEMP) case PID_HOTEND: if (draw) drawMenuItem(row, ICON_HotendTemp, F("Hotend"), nullptr, true); else - drawMenu(HotendPID); + drawMenu(ID_HotendPID); break; #endif #if ENABLED(PIDTEMPBED) @@ -2086,7 +2086,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_BedTemp, F("Bed"), nullptr, true); else - drawMenu(BedPID); + drawMenu(ID_BedPID); break; #endif case PID_CYCLES: @@ -2102,7 +2102,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #endif // PIDTEMP || PIDTEMPBED #if ENABLED(PIDTEMP) - case HotendPID: + case ID_HotendPID: #define HOTENDPID_BACK 0 #define HOTENDPID_TUNE (HOTENDPID_BACK + 1) @@ -2119,13 +2119,13 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(PID, PID_HOTEND); + drawMenu(ID_PID, PID_HOTEND); break; case HOTENDPID_TUNE: if (draw) drawMenuItem(row, ICON_HotendTemp, F("Autotune")); else { - popupHandler(PIDWait); + popupHandler(Popup_PIDWait); gcode.process_subcommands_now(TS(F("M303E0C"), PID_cycles, 'S', PID_e_temp, 'U')); planner.synchronize(); redrawMenu(); @@ -2168,7 +2168,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #endif // PIDTEMP #if ENABLED(PIDTEMPBED) - case BedPID: + case ID_BedPID: #define BEDPID_BACK 0 #define BEDPID_TUNE (BEDPID_BACK + 1) @@ -2185,13 +2185,13 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(PID, PID_BED); + drawMenu(ID_PID, PID_BED); break; case BEDPID_TUNE: if (draw) drawMenuItem(row, ICON_HotendTemp, F("Autotune")); else { - popupHandler(PIDWait); + popupHandler(Popup_PIDWait); gcode.process_subcommands_now(TS(F("M303E-1C"), PID_cycles, 'S', PID_bed_temp, 'U')); planner.synchronize(); redrawMenu(); @@ -2234,7 +2234,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #endif // PIDTEMPBED #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) - case MPC: + case ID_MPC: #define MPCMENU_BACK 0 #define MPCMENU_AUTOTUNE (MPCMENU_BACK + ENABLED(MPC_AUTOTUNE_MENU)) @@ -2250,7 +2250,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(TempMenu, TEMP_MPC); + drawMenu(ID_TempMenu, TEMP_MPC); break; #if ENABLED(MPC_AUTOTUNE_MENU) @@ -2258,7 +2258,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_HotendTemp, F("Autotune")); else { - popupHandler(MPCWait); + popupHandler(Popup_MPCWait); thermalManager.MPC_autotune(active_extruder, Temperature::MPCTuningType::AUTO); redrawMenu(); } @@ -2322,11 +2322,11 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #endif // MPC_EDIT_MENU || MPC_AUTOTUNE_MENU #if HAS_PREHEAT - #define _PREHEAT_SUBMENU_CASE(N) case Preheat##N: preheat_submenu((N) - 1, item, TEMP_PREHEAT##N); break; + #define _PREHEAT_SUBMENU_CASE(N) case ID_Preheat##N: preheat_submenu((N) - 1, item, TEMP_PREHEAT##N); break; REPEAT_1(PREHEAT_COUNT, _PREHEAT_SUBMENU_CASE) #endif - case Motion: + case ID_Motion: #define MOTION_BACK 0 #define MOTION_HOMEOFFSETS (MOTION_BACK + 1) @@ -2342,39 +2342,39 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Control, CONTROL_MOTION); + drawMenu(ID_Control, CONTROL_MOTION); break; case MOTION_HOMEOFFSETS: if (draw) drawMenuItem(row, ICON_SetHome, F("Home Offsets"), nullptr, true); else - drawMenu(HomeOffsets); + drawMenu(ID_HomeOffsets); break; case MOTION_SPEED: if (draw) drawMenuItem(row, ICON_MaxSpeed, F("Max Speed"), nullptr, true); else - drawMenu(MaxSpeed); + drawMenu(ID_MaxSpeed); break; case MOTION_ACCEL: if (draw) drawMenuItem(row, ICON_MaxAccelerated, F("Max Acceleration"), nullptr, true); else - drawMenu(MaxAcceleration); + drawMenu(ID_MaxAcceleration); break; #if HAS_CLASSIC_JERK case MOTION_JERK: if (draw) drawMenuItem(row, ICON_MaxJerk, F("Max Jerk"), nullptr, true); else - drawMenu(MaxJerk); + drawMenu(ID_MaxJerk); break; #endif case MOTION_STEPS: if (draw) drawMenuItem(row, ICON_Step, F("Steps/mm"), nullptr, true); else - drawMenu(Steps); + drawMenu(ID_Steps); break; #if HAS_HOTEND case MOTION_FLOW: @@ -2389,7 +2389,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra } break; - case HomeOffsets: + case ID_HomeOffsets: #define HOMEOFFSETS_BACK 0 #define HOMEOFFSETS_XOFFSET (HOMEOFFSETS_BACK + 1) @@ -2401,7 +2401,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Motion, MOTION_HOMEOFFSETS); + drawMenu(ID_Motion, MOTION_HOMEOFFSETS); break; case HOMEOFFSETS_XOFFSET: if (draw) { @@ -2421,7 +2421,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra break; } break; - case MaxSpeed: + case ID_MaxSpeed: #define SPEED_BACK 0 #define SPEED_X (SPEED_BACK + 1) @@ -2435,7 +2435,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Motion, MOTION_SPEED); + drawMenu(ID_Motion, MOTION_SPEED); break; #if HAS_X_AXIS case SPEED_X: @@ -2483,7 +2483,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra } break; - case MaxAcceleration: + case ID_MaxAcceleration: #define ACCEL_BACK 0 #define ACCEL_X (ACCEL_BACK + 1) @@ -2497,7 +2497,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Motion, MOTION_ACCEL); + drawMenu(ID_Motion, MOTION_ACCEL); break; case ACCEL_X: if (draw) { @@ -2536,7 +2536,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra } break; #if HAS_CLASSIC_JERK - case MaxJerk: + case ID_MaxJerk: #define JERK_BACK 0 #define JERK_X (JERK_BACK + 1) @@ -2550,7 +2550,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Motion, MOTION_JERK); + drawMenu(ID_Motion, MOTION_JERK); break; #if HAS_X_AXIS case JERK_X: @@ -2595,7 +2595,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra } break; #endif - case Steps: + case ID_Steps: #define STEPS_BACK 0 #define STEPS_X (STEPS_BACK + 1) @@ -2609,7 +2609,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Motion, MOTION_STEPS); + drawMenu(ID_Motion, MOTION_STEPS); break; #if HAS_X_AXIS case STEPS_X: @@ -2654,7 +2654,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra } break; - case Visual: + case ID_Visual: #define VISUAL_BACK 0 #define VISUAL_BACKLIGHT (VISUAL_BACK + 1) @@ -2668,7 +2668,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Control, CONTROL_VISUAL); + drawMenu(ID_Control, CONTROL_VISUAL); break; case VISUAL_BACKLIGHT: if (draw) @@ -2698,12 +2698,12 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_MaxSpeed, F("UI Color Settings"), nullptr, true); else - drawMenu(ColorSettings); + drawMenu(ID_ColorSettings); break; } break; - case ColorSettings: + case ID_ColorSettings: #define COLORSETTINGS_BACK 0 #define COLORSETTINGS_CURSOR (COLORSETTINGS_BACK + 1) @@ -2724,7 +2724,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Visual, VISUAL_COLOR_THEMES); + drawMenu(ID_Visual, VISUAL_COLOR_THEMES); break; case COLORSETTINGS_CURSOR: if (draw) { @@ -2817,7 +2817,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra } // switch (item) break; - case Advanced: + case ID_Advanced: #define ADVANCED_BACK 0 #define ADVANCED_BEEPER (ADVANCED_BACK + ENABLED(SOUND_MENU_ITEM)) @@ -2838,7 +2838,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Control, CONTROL_ADVANCED); + drawMenu(ID_Control, CONTROL_ADVANCED); break; #if ENABLED(SOUND_MENU_ITEM) @@ -2859,7 +2859,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_StepX, F("Probe"), nullptr, true); else - drawMenu(ProbeMenu); + drawMenu(ID_ProbeMenu); break; #endif @@ -2868,7 +2868,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Motion, F("TMC Drivers"), nullptr, true); else - drawMenu(TMCMenu); + drawMenu(ID_TMCMenu); break; #endif @@ -2964,7 +2964,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra break; #if HAS_BED_PROBE - case ProbeMenu: + case ID_ProbeMenu: #define PROBE_BACK 0 #define PROBE_XOFFSET (PROBE_BACK + 1) @@ -2980,7 +2980,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Advanced, ADVANCED_PROBE); + drawMenu(ID_Advanced, ADVANCED_PROBE); break; case PROBE_XOFFSET: @@ -3021,7 +3021,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #endif // HAS_PROBE_MENU #if HAS_TRINAMIC_CONFIG - case TMCMenu: + case ID_TMCMenu: #define TMC_BACK 0 #define TMC_STEPPER_CURRENT_X (TMC_BACK + AXIS_IS_TMC(X)) @@ -3036,7 +3036,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Advanced, ADVANCED_TMC); + drawMenu(ID_Advanced, ADVANCED_TMC); break; #if AXIS_IS_TMC(X) @@ -3099,8 +3099,8 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra break; #endif // HAS_TRINAMIC_CONFIG - case InfoMain: - case Info: + case ID_InfoMain: + case ID_Info: #define INFO_BACK 0 #define INFO_PRINTCOUNT (INFO_BACK + ENABLED(PRINTCOUNTER)) @@ -3138,8 +3138,8 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawMenuItem(INFO_CONTACT, ICON_Contact, F(CORP_WEBSITE), nullptr, false, true); } else { - if (menu == Info) - drawMenu(Control, CONTROL_INFO); + if (menu == ID_Info) + drawMenu(ID_Control, CONTROL_INFO); else drawMainMenu(3); } @@ -3148,7 +3148,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra break; #if HAS_MESH - case Leveling: + case ID_Leveling: #define LEVELING_BACK 0 #define LEVELING_ACTIVE (LEVELING_BACK + 1) @@ -3178,7 +3178,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (!planner.leveling_active) { set_bed_leveling_enabled(!planner.leveling_active); if (!planner.leveling_active) { - confirmHandler(LevelError); + confirmHandler(Popup_LevelError); break; } } @@ -3193,12 +3193,12 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawMenuItem(row, ICON_Tilt, F("Autotilt Current Mesh")); else { if (bedlevel.storage_slot < 0) { - popupHandler(MeshSlot); + popupHandler(Popup_MeshSlot); break; } - popupHandler(Home); + popupHandler(Popup_Home); gcode.home_all_axes(true); - popupHandler(Level); + popupHandler(Popup_Level); if (mesh_conf.tilt_grid > 1) { gcode.process_subcommands_now(TS(F("G29J"), mesh_conf.tilt_grid)); } @@ -3213,42 +3213,42 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Mesh, F("Create New Mesh")); else { - popupHandler(Home); + popupHandler(Popup_Home); gcode.home_all_axes(true); #if ENABLED(AUTO_BED_LEVELING_UBL) #if ENABLED(PREHEAT_BEFORE_LEVELING) - popupHandler(Heating); + popupHandler(Popup_Heating); probe.preheat_for_probing(LEVELING_NOZZLE_TEMP, LEVELING_BED_TEMP); #endif #if HAS_BED_PROBE - popupHandler(Level); + popupHandler(Popup_Level); gcode.process_subcommands_now(F("G29P0\nG29P1")); gcode.process_subcommands_now(F("G29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nG29P3\nM420S1")); planner.synchronize(); updateStatus("Probed all reachable points"); - popupHandler(SaveLevel); + popupHandler(Popup_SaveLevel); #else level_state = planner.leveling_active; set_bed_leveling_enabled(false); mesh_conf.goto_mesh_value = true; mesh_conf.mesh_x = mesh_conf.mesh_y = 0; - popupHandler(MoveWait); + popupHandler(Popup_MoveWait); mesh_conf.manual_mesh_move(); - drawMenu(UBLMesh); + drawMenu(ID_UBLMesh); #endif #elif HAS_BED_PROBE - popupHandler(Level); + popupHandler(Popup_Level); gcode.process_subcommands_now(F("G29")); planner.synchronize(); - popupHandler(SaveLevel); + popupHandler(Popup_SaveLevel); #else level_state = planner.leveling_active; set_bed_leveling_enabled(false); gridpoint = 1; - popupHandler(MoveWait); + popupHandler(Popup_MoveWait); gcode.process_subcommands_now(F("G29")); planner.synchronize(); - drawMenu(ManualMesh); + drawMenu(ID_ManualMesh); #endif } break; @@ -3258,25 +3258,25 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra else { #if ENABLED(AUTO_BED_LEVELING_BILINEAR) if (!leveling_is_valid()) { - confirmHandler(InvalidMesh); + confirmHandler(Popup_InvalidMesh); break; } #endif #if ENABLED(AUTO_BED_LEVELING_UBL) if (bedlevel.storage_slot < 0) { - popupHandler(MeshSlot); + popupHandler(Popup_MeshSlot); break; } #endif if (axes_should_home()) { - popupHandler(Home); + popupHandler(Popup_Home); gcode.home_all_axes(true); } level_state = planner.leveling_active; set_bed_leveling_enabled(false); mesh_conf.goto_mesh_value = false; #if ENABLED(PREHEAT_BEFORE_LEVELING) - popupHandler(Heating); + popupHandler(Popup_Heating); #if HAS_HOTEND if (thermalManager.degTargetHotend(0) < LEVELING_NOZZLE_TEMP) thermalManager.setTargetHotend(LEVELING_NOZZLE_TEMP, 0); @@ -3288,9 +3288,9 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra TERN_(HAS_HOTEND, thermalManager.wait_for_hotend(0)); TERN_(HAS_HEATED_BED, thermalManager.wait_for_bed_heating()); #endif - popupHandler(MoveWait); + popupHandler(Popup_MoveWait); mesh_conf.manual_mesh_move(); - drawMenu(LevelManual); + drawMenu(ID_LevelManual); } break; case LEVELING_VIEW: @@ -3299,18 +3299,18 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra else { #if ENABLED(AUTO_BED_LEVELING_UBL) if (bedlevel.storage_slot < 0) { - popupHandler(MeshSlot); + popupHandler(Popup_MeshSlot); break; } #endif - drawMenu(LevelView); + drawMenu(ID_LevelView); } break; case LEVELING_SETTINGS: if (draw) drawMenuItem(row, ICON_Step, F("Leveling Settings"), nullptr, true); else - drawMenu(LevelSettings); + drawMenu(ID_LevelSettings); break; #if ENABLED(AUTO_BED_LEVELING_UBL) case LEVELING_SLOT: @@ -3326,7 +3326,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawMenuItem(row, ICON_ReadEEPROM, F("Load Mesh")); else { if (bedlevel.storage_slot < 0) { - popupHandler(MeshSlot); + popupHandler(Popup_MeshSlot); break; } gcode.process_subcommands_now(F("G29 L")); @@ -3339,7 +3339,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawMenuItem(row, ICON_WriteEEPROM, F("Save Mesh")); else { if (bedlevel.storage_slot < 0) { - popupHandler(MeshSlot); + popupHandler(Popup_MeshSlot); break; } gcode.process_subcommands_now(F("G29 S")); @@ -3351,7 +3351,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra } break; - case LevelView: + case ID_LevelView: #define LEVELING_VIEW_BACK 0 #define LEVELING_VIEW_MESH (LEVELING_VIEW_BACK + 1) @@ -3364,13 +3364,13 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Leveling, LEVELING_VIEW); + drawMenu(ID_Leveling, LEVELING_VIEW); break; case LEVELING_VIEW_MESH: if (draw) drawMenuItem(row, ICON_PrintSize, GET_TEXT_F(MSG_MESH_VIEW), nullptr, true); else - drawMenu(MeshViewer); + drawMenu(ID_MeshViewer); break; case LEVELING_VIEW_TEXT: if (draw) { @@ -3395,7 +3395,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra } break; - case LevelSettings: + case ID_LevelSettings: #define LEVELING_SETTINGS_BACK 0 #define LEVELING_SETTINGS_FADE (LEVELING_SETTINGS_BACK + 1) @@ -3410,7 +3410,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_Back, F("Back")); else - drawMenu(Leveling, LEVELING_SETTINGS); + drawMenu(ID_Leveling, LEVELING_SETTINGS); break; case LEVELING_SETTINGS_FADE: if (draw) { @@ -3437,7 +3437,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_ResumeEEPROM, F("Convert Mesh to Plane")); else { - if (mesh_conf.create_plane_from_mesh()) break; + if (mesh_conf.createPlaneFromMesh()) break; gcode.process_subcommands_now(F("M420 S1")); planner.synchronize(); audioFeedback(true); @@ -3459,7 +3459,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra } break; - case MeshViewer: + case ID_MeshViewer: #define MESHVIEW_BACK 0 #define MESHVIEW_TOTAL MESHVIEW_BACK @@ -3470,13 +3470,13 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra mesh_conf.setMeshViewerStatus(); } else if (!mesh_conf.drawing_mesh) { - drawMenu(LevelView, LEVELING_VIEW_MESH); + drawMenu(ID_LevelView, LEVELING_VIEW_MESH); updateStatus(""); } } break; - case LevelManual: + case ID_LevelManual: #define LEVELING_M_BACK 0 #define LEVELING_M_X (LEVELING_M_BACK + 1) @@ -3496,7 +3496,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra else { set_bed_leveling_enabled(level_state); TERN_(AUTO_BED_LEVELING_BILINEAR, bedlevel.refresh_bed_level()); - drawMenu(Leveling, LEVELING_MANUAL); + drawMenu(ID_Leveling, LEVELING_MANUAL); } break; case LEVELING_M_X: @@ -3582,7 +3582,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_ResumeEEPROM, F("Clear Point Value")); else { - mesh_conf.manual_value_update(true); + mesh_conf.manualValueUpdate(true); redrawMenu(false); } break; @@ -3592,7 +3592,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #endif // HAS_MESH #if ENABLED(AUTO_BED_LEVELING_UBL) && !HAS_BED_PROBE - case UBLMesh: + case ID_UBLMesh: #define UBL_M_BACK 0 #define UBL_M_NEXT (UBL_M_BACK + 1) @@ -3608,7 +3608,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawMenuItem(row, ICON_Back, F("Back")); else { set_bed_leveling_enabled(level_state); - drawMenu(Leveling, LEVELING_GET_MESH); + drawMenu(ID_Leveling, LEVELING_GET_MESH); } break; case UBL_M_NEXT: @@ -3632,7 +3632,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra gcode.process_subcommands_now(F("G29 S")); planner.synchronize(); audioFeedback(true); - drawMenu(Leveling, LEVELING_GET_MESH); + drawMenu(ID_Leveling, LEVELING_GET_MESH); } } break; @@ -3691,7 +3691,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #endif // AUTO_BED_LEVELING_UBL && !HAS_BED_PROBE #if ENABLED(PROBE_MANUALLY) - case ManualMesh: + case ID_ManualMesh: #define MMESH_BACK 0 #define MMESH_NEXT (MMESH_BACK + 1) @@ -3709,7 +3709,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra gcode.process_subcommands_now(F("G29 A")); planner.synchronize(); set_bed_leveling_enabled(level_state); - drawMenu(Leveling, LEVELING_GET_MESH); + drawMenu(ID_Leveling, LEVELING_GET_MESH); } break; case MMESH_NEXT: @@ -3720,7 +3720,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawMenuItem(row, ICON_More, F("Save Mesh")); } else if (gridpoint < GRID_MAX_POINTS) { - popupHandler(MoveWait); + popupHandler(Popup_MoveWait); gcode.process_subcommands_now(F("G29")); planner.synchronize(); gridpoint++; @@ -3730,7 +3730,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra gcode.process_subcommands_now(F("G29")); planner.synchronize(); audioFeedback(settings.save()); - drawMenu(Leveling, LEVELING_GET_MESH); + drawMenu(ID_Leveling, LEVELING_GET_MESH); } break; case MMESH_OFFSET: @@ -3791,7 +3791,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra break; #endif // PROBE_MANUALLY - case Tune: + case ID_Tune: #define TUNE_BACK 0 #define TUNE_SPEED (TUNE_BACK + 1) @@ -3899,7 +3899,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE)); else - popupHandler(ConfFilChange); + popupHandler(Popup_ConfFilChange); break; #endif @@ -3935,7 +3935,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #if HAS_PREHEAT && HAS_HOTEND - case PreheatHotend: + case ID_PreheatHotend: #define PREHEATHOTEND_BACK 0 #define PREHEATHOTEND_CONTINUE (PREHEATHOTEND_BACK + 1) @@ -3961,30 +3961,30 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_SetEndTemp, F("Continue")); else { - popupHandler(Heating); + popupHandler(Popup_Heating); thermalManager.wait_for_hotend(0); switch (last_menu) { - case Prepare: - popupHandler(FilChange); + case ID_Prepare: + popupHandler(Popup_FilChange); gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.temp_hotend[0].target)); break; #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) - case ChangeFilament: + case ID_ChangeFilament: switch (last_selection) { case CHANGEFIL_LOAD: - popupHandler(FilLoad); + popupHandler(Popup_FilLoad); gcode.process_subcommands_now(F("M701")); planner.synchronize(); redrawMenu(true, true, true); break; case CHANGEFIL_UNLOAD: - popupHandler(FilLoad, true); + popupHandler(Popup_FilLoad, true); gcode.process_subcommands_now(F("M702")); planner.synchronize(); redrawMenu(true, true, true); break; case CHANGEFIL_CHANGE: - popupHandler(FilChange); + popupHandler(Popup_FilChange); gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.temp_hotend[0].target)); break; } @@ -4023,158 +4023,159 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra FSTR_P JyersDWIN::getMenuTitle(const uint8_t menu) { switch (menu) { - case MainMenu: return GET_TEXT_F(MSG_MAIN_MENU); - case Prepare: return GET_TEXT_F(MSG_PREPARE); - case HomeMenu: return F("Homing Menu"); - case Move: return GET_TEXT_F(MSG_MOVE_AXIS); - case ManualLevel: return GET_TEXT_F(MSG_BED_TRAMMING_MANUAL); + case ID_MainMenu: return GET_TEXT_F(MSG_MAIN_MENU); + case ID_Prepare: return GET_TEXT_F(MSG_PREPARE); + case ID_HomeMenu: return F("Homing Menu"); + case ID_Move: return GET_TEXT_F(MSG_MOVE_AXIS); + case ID_ManualLevel: return GET_TEXT_F(MSG_BED_TRAMMING_MANUAL); #if HAS_ZOFFSET_ITEM - case ZOffset: return GET_TEXT_F(MSG_ZPROBE_ZOFFSET); + case ID_ZOffset: return GET_TEXT_F(MSG_ZPROBE_ZOFFSET); #endif #if HAS_PREHEAT - case Preheat: return F("Preheat"); + case ID_Preheat: return F("Preheat"); #endif #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) - case ChangeFilament: return GET_TEXT_F(MSG_FILAMENTCHANGE); + case ID_ChangeFilament: return GET_TEXT_F(MSG_FILAMENTCHANGE); #endif #if HAS_CUSTOM_MENU - case MenuCustom: + case ID_MenuCustom: #ifdef CUSTOM_MENU_CONFIG_TITLE return F(CUSTOM_MENU_CONFIG_TITLE); #else return GET_TEXT_F(MSG_CUSTOM_COMMANDS); #endif #endif - case Control: return GET_TEXT_F(MSG_CONTROL); - case TempMenu: return GET_TEXT_F(MSG_TEMPERATURE); + case ID_Control: return GET_TEXT_F(MSG_CONTROL); + case ID_TempMenu: return GET_TEXT_F(MSG_TEMPERATURE); #if ANY(PIDTEMP, PIDTEMPBED) - case PID: return F("PID Menu"); + case ID_PID: return F("PID Menu"); #endif #if ENABLED(PIDTEMP) - case HotendPID: return F("Hotend PID Settings"); + case ID_HotendPID: return F("Hotend PID Settings"); #endif #if ENABLED(PIDTEMPBED) - case BedPID: return F("Bed PID Settings"); + case ID_BedPID: return F("Bed PID Settings"); #endif #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) - case MPC: return F("MPC Menu"); + case ID_MPC: return F("MPC Menu"); #endif #if HAS_PREHEAT - #define _PREHEAT_TITLE_CASE(N) case Preheat##N: return F(PREHEAT_## N ##_LABEL " Settings"); + #define _PREHEAT_TITLE_CASE(N) case ID_Preheat##N: return F(PREHEAT_## N ##_LABEL " Settings"); REPEAT_1(PREHEAT_COUNT, _PREHEAT_TITLE_CASE) #endif - case Motion: return F("Motion Settings"); - case HomeOffsets: return F("Home Offsets"); - case MaxSpeed: return F("Max Speed"); - case MaxAcceleration: return F("Max Acceleration"); + case ID_Motion: return F("Motion Settings"); + case ID_HomeOffsets: return F("Home Offsets"); + case ID_MaxSpeed: return F("Max Speed"); + case ID_MaxAcceleration: return F("Max Acceleration"); #if HAS_CLASSIC_JERK - case MaxJerk: return F("Max Jerk"); + case ID_MaxJerk: return F("Max Jerk"); #endif - case Steps: return GET_TEXT_F(MSG_STEPS_PER_MM); - case Visual: return F("Visual Settings"); - case Advanced: return GET_TEXT_F(MSG_ADVANCED_SETTINGS); + case ID_Steps: return GET_TEXT_F(MSG_STEPS_PER_MM); + case ID_Visual: return F("Visual Settings"); + case ID_Advanced: return GET_TEXT_F(MSG_ADVANCED_SETTINGS); #if HAS_BED_PROBE - case ProbeMenu: return F("Bed Probe"); + case ID_ProbeMenu: return F("Bed Probe"); #endif #if HAS_TRINAMIC_CONFIG - case TMCMenu: return GET_TEXT_F(MSG_TMC_DRIVERS); + case ID_TMCMenu: return GET_TEXT_F(MSG_TMC_DRIVERS); #endif - case ColorSettings: return F("UI Color Settings"); - case Info: return F("Info"); - case InfoMain: return F("Info"); + case ID_ColorSettings: return F("UI Color Settings"); + case ID_Info: return F("Info"); + case ID_InfoMain: return F("Info"); #if HAS_MESH - case Leveling: return F("Leveling"); - case LevelView: return GET_TEXT_F(MSG_MESH_VIEW); - case LevelSettings: return F("Leveling Settings"); - case MeshViewer: return GET_TEXT_F(MSG_MESH_VIEW); - case LevelManual: return F("Manual Tuning"); + case ID_Leveling: return F("Leveling"); + case ID_LevelView: return GET_TEXT_F(MSG_MESH_VIEW); + case ID_LevelSettings: return F("Leveling Settings"); + case ID_MeshViewer: return GET_TEXT_F(MSG_MESH_VIEW); + case ID_LevelManual: return F("Manual Tuning"); #endif #if ENABLED(AUTO_BED_LEVELING_UBL) && !HAS_BED_PROBE - case UBLMesh: return F("UBL Bed Leveling"); + case ID_UBLMesh: return F("UBL Bed Leveling"); #endif #if ENABLED(PROBE_MANUALLY) - case ManualMesh: return GET_TEXT_F(MSG_MANUAL_LEVELING); + case ID_ManualMesh: return GET_TEXT_F(MSG_MANUAL_LEVELING); #endif - case Tune: return GET_TEXT_F(MSG_TUNE); - case PreheatHotend: return GET_TEXT_F(MSG_PREHEAT_HOTEND); + case ID_Tune: return GET_TEXT_F(MSG_TUNE); + case ID_PreheatHotend: return GET_TEXT_F(MSG_PREHEAT_HOTEND); } return F(""); } uint8_t JyersDWIN::getMenuSize(const uint8_t menu) { switch (menu) { - case Prepare: return PREPARE_TOTAL; - case HomeMenu: return HOME_TOTAL; - case Move: return MOVE_TOTAL; - case ManualLevel: return MLEVEL_TOTAL; + case ID_Prepare: return PREPARE_TOTAL; + case ID_HomeMenu: return HOME_TOTAL; + case ID_Move: return MOVE_TOTAL; + case ID_ManualLevel: return MLEVEL_TOTAL; #if HAS_ZOFFSET_ITEM - case ZOffset: return ZOFFSET_TOTAL; + case ID_ZOffset: return ZOFFSET_TOTAL; #endif #if HAS_PREHEAT - case Preheat: return PREHEAT_TOTAL; + case ID_Preheat: return PREHEAT_TOTAL; #endif #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) - case ChangeFilament: return CHANGEFIL_TOTAL; + case ID_ChangeFilament: return CHANGEFIL_TOTAL; #endif #if HAS_CUSTOM_MENU - case MenuCustom: return CUSTOM_MENU_TOTAL; + case ID_MenuCustom: return CUSTOM_MENU_TOTAL; #endif - case Control: return CONTROL_TOTAL; - case TempMenu: return TEMP_TOTAL; + case ID_Control: return CONTROL_TOTAL; + case ID_TempMenu: return TEMP_TOTAL; #if ANY(PIDTEMP, PIDTEMPBED) - case PID: return PID_TOTAL; + case ID_PID: return PID_TOTAL; #endif #if ENABLED(PIDTEMP) - case HotendPID: return HOTENDPID_TOTAL; + case ID_HotendPID: return HOTENDPID_TOTAL; #endif #if ENABLED(PIDTEMPBED) - case BedPID: return BEDPID_TOTAL; + case ID_BedPID: return BEDPID_TOTAL; #endif #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) - case MPC: return MPCMENU_TOTAL; + case ID_MPC: return MPCMENU_TOTAL; #endif #if HAS_PREHEAT - case Preheat1 ... CAT(Preheat, PREHEAT_COUNT): + case ID_Preheat1 ... CAT(ID_Preheat, PREHEAT_COUNT): return PREHEAT_SUBMENU_TOTAL; #endif - case Motion: return MOTION_TOTAL; - case HomeOffsets: return HOMEOFFSETS_TOTAL; - case MaxSpeed: return SPEED_TOTAL; - case MaxAcceleration: return ACCEL_TOTAL; + case ID_Motion: return MOTION_TOTAL; + case ID_HomeOffsets: return HOMEOFFSETS_TOTAL; + case ID_MaxSpeed: return SPEED_TOTAL; + case ID_MaxAcceleration: return ACCEL_TOTAL; #if HAS_CLASSIC_JERK - case MaxJerk: return JERK_TOTAL; + case ID_MaxJerk: return JERK_TOTAL; #endif - case Steps: return STEPS_TOTAL; - case Visual: return VISUAL_TOTAL; - case Advanced: return ADVANCED_TOTAL; + case ID_Steps: return STEPS_TOTAL; + case ID_Visual: return VISUAL_TOTAL; + case ID_Advanced: return ADVANCED_TOTAL; #if HAS_BED_PROBE - case ProbeMenu: return PROBE_TOTAL; + case ID_ProbeMenu: return PROBE_TOTAL; #endif #if HAS_TRINAMIC_CONFIG - case TMCMenu: return TMC_TOTAL; + case ID_TMCMenu: return TMC_TOTAL; + case ID_TMCMenu: return TMC_TOTAL; #endif - case Info: return INFO_TOTAL; - case InfoMain: return INFO_TOTAL; + case ID_Info: return INFO_TOTAL; + case ID_InfoMain: return INFO_TOTAL; #if ENABLED(AUTO_BED_LEVELING_UBL) && !HAS_BED_PROBE - case UBLMesh: return UBL_M_TOTAL; + case ID_UBLMesh: return UBL_M_TOTAL; #endif #if ENABLED(PROBE_MANUALLY) - case ManualMesh: return MMESH_TOTAL; + case ID_ManualMesh: return MMESH_TOTAL; #endif #if HAS_MESH - case Leveling: return LEVELING_TOTAL; - case LevelView: return LEVELING_VIEW_TOTAL; - case LevelSettings: return LEVELING_SETTINGS_TOTAL; - case MeshViewer: return MESHVIEW_TOTAL; - case LevelManual: return LEVELING_M_TOTAL; + case ID_Leveling: return LEVELING_TOTAL; + case ID_LevelView: return LEVELING_VIEW_TOTAL; + case ID_LevelSettings: return LEVELING_SETTINGS_TOTAL; + case ID_MeshViewer: return MESHVIEW_TOTAL; + case ID_LevelManual: return LEVELING_M_TOTAL; #endif - case Tune: return TUNE_TOTAL; + case ID_Tune: return TUNE_TOTAL; #if HAS_PREHEAT && HAS_HOTEND - case PreheatHotend: return PREHEATHOTEND_TOTAL; + case ID_PreheatHotend: return PREHEATHOTEND_TOTAL; #endif - case ColorSettings: return COLORSETTINGS_TOTAL; + case ID_ColorSettings: return COLORSETTINGS_TOTAL; } return 0; } @@ -4186,27 +4187,27 @@ uint8_t JyersDWIN::getMenuSize(const uint8_t menu) { void JyersDWIN::popupHandler(const PopupID popupid, const bool option/*=false*/) { popup = last_popup = popupid; switch (popupid) { - case Pause: drawPopup(F("Pause Print"), F(""), F(""), Popup); break; - case Stop: drawPopup(F("Stop Print"), F(""), F(""), Popup); break; - case Resume: drawPopup(F("Resume Print?"), F("Looks Like the last"), F("print was interrupted."), Popup); break; - case ConfFilChange: drawPopup(F("Confirm Filament Change"), F(""), F(""), Popup); break; - case PurgeMore: drawPopup(F("Purge more filament?"), F("(Cancel to finish process)"), F(""), Popup); break; - case SaveLevel: drawPopup(F("Leveling Complete"), F("Save to EEPROM?"), F(""), Popup); break; - case MeshSlot: drawPopup(F("Mesh slot not selected"), F("(Confirm to select slot 0)"), F(""), Popup); break; - case ETemp: drawPopup(F("Nozzle is too cold"), F("Open Preheat Menu?"), F(""), Popup); break; - case ManualProbing: drawPopup(F("Manual Probing"), F("(Confirm to probe)"), F("(cancel to exit)"), Popup); break; - case Level: drawPopup(F("Auto Bed Leveling"), F("Please wait until done."), F(""), Wait, ICON_AutoLeveling); break; - case Home: drawPopup(option ? F("Parking") : F("Homing"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; - case MoveWait: drawPopup(F("Moving to Point"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; - case Heating: drawPopup(F("Heating"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; - case FilLoad: drawPopup(option ? F("Unloading Filament") : F("Loading Filament"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; - case FilChange: drawPopup(F("Filament Change"), F("Please wait for prompt."), F(""), Wait, ICON_BLTouch); break; - case TempWarn: drawPopup(option ? F("Nozzle temp too low!") : F("Nozzle temp too high!"), F(""), F(""), Wait, option ? ICON_TempTooLow : ICON_TempTooHigh); break; - case Runout: drawPopup(F("Filament Runout"), F(""), F(""), Wait, ICON_BLTouch); break; - case PIDWait: drawPopup(F("PID Autotune"), F("in process"), F("Please wait until done."), Wait, ICON_BLTouch); break; - case MPCWait: drawPopup(F("MPC Autotune"), F("in process"), F("Please wait until done."), Wait, ICON_BLTouch); break; - case Resuming: drawPopup(F("Resuming Print"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; - case Custom: drawPopup(F("Running Custom GCode"), F("Please wait until done."), F(""), Wait, ICON_BLTouch); break; + case Popup_Pause: drawPopup(F("Pause Print"), F(""), F(""), Proc_Popup); break; + case Popup_Stop: drawPopup(F("Stop Print"), F(""), F(""), Proc_Popup); break; + case Popup_Resume: drawPopup(F("Resume Print?"), F("Looks Like the last"), F("print was interrupted."), Proc_Popup); break; + case Popup_ConfFilChange: drawPopup(F("Confirm Filament Change"), F(""), F(""), Proc_Popup); break; + case Popup_PurgeMore: drawPopup(F("Purge more filament?"), F("(Cancel to finish process)"), F(""), Proc_Popup); break; + case Popup_SaveLevel: drawPopup(F("Leveling Complete"), F("Save to EEPROM?"), F(""), Proc_Popup); break; + case Popup_MeshSlot: drawPopup(F("Mesh slot not selected"), F("(Confirm to select slot 0)"), F(""), Proc_Popup); break; + case Popup_ETemp: drawPopup(F("Nozzle is too cold"), F("Open Preheat Menu?"), F(""), Proc_Popup); break; + case Popup_ManualProbing: drawPopup(F("Manual Probing"), F("(Confirm to probe)"), F("(cancel to exit)"), Proc_Popup); break; + case Popup_Level: drawPopup(F("Auto Bed Leveling"), F("Please wait until done."), F(""), Proc_Wait, ICON_AutoLeveling); break; + case Popup_Home: drawPopup(option ? F("Parking") : F("Homing"), F("Please wait until done."), F(""), Proc_Wait, ICON_BLTouch); break; + case Popup_MoveWait: drawPopup(F("Moving to Point"), F("Please wait until done."), F(""), Proc_Wait, ICON_BLTouch); break; + case Popup_Heating: drawPopup(F("Heating"), F("Please wait until done."), F(""), Proc_Wait, ICON_BLTouch); break; + case Popup_FilLoad: drawPopup(option ? F("Unloading Filament") : F("Loading Filament"), F("Please wait until done."), F(""), Proc_Wait, ICON_BLTouch); break; + case Popup_FilChange: drawPopup(F("Filament Change"), F("Please wait for prompt."), F(""), Proc_Wait, ICON_BLTouch); break; + case Popup_TempWarn: drawPopup(option ? F("Nozzle temp too low!") : F("Nozzle temp too high!"), F(""), F(""), Proc_Wait, option ? ICON_TempTooLow : ICON_TempTooHigh); break; + case Popup_Runout: drawPopup(F("Filament Runout"), F(""), F(""), Proc_Wait, ICON_BLTouch); break; + case Popup_PIDWait: drawPopup(F("PID Autotune"), F("in process"), F("Please wait until done."), Proc_Wait, ICON_BLTouch); break; + case Popup_MPCWait: drawPopup(F("MPC Autotune"), F("in process"), F("Please wait until done."), Proc_Wait, ICON_BLTouch); break; + case Popup_Resuming: drawPopup(F("Resuming Print"), F("Please wait until done."), F(""), Proc_Wait, ICON_BLTouch); break; + case Popup_Custom: drawPopup(F("Running Custom GCode"), F("Please wait until done."), F(""), Proc_Wait, ICON_BLTouch); break; default: break; } } @@ -4214,11 +4215,11 @@ void JyersDWIN::popupHandler(const PopupID popupid, const bool option/*=false*/) void JyersDWIN::confirmHandler(PopupID popupid) { popup = popupid; switch (popupid) { - case FilInsert: drawPopup(F("Insert Filament"), F("Press to Continue"), F(""), Confirm); break; - case HeaterTime: drawPopup(F("Heater Timed Out"), F("Press to Reheat"), F(""), Confirm); break; - case UserInput: drawPopup(F("Waiting for Input"), F("Press to Continue"), F(""), Confirm); break; - case LevelError: drawPopup(F("Couldn't enable Leveling"), F("(Valid mesh must exist)"), F(""), Confirm); break; - case InvalidMesh: drawPopup(F("Valid mesh must exist"), F("before tuning can be"), F("performed"), Confirm); break; + case Popup_FilInsert: drawPopup(F("Insert Filament"), F("Press to Continue"), F(""), Proc_Confirm); break; + case Popup_HeaterTime: drawPopup(F("Heater Timed Out"), F("Press to Reheat"), F(""), Proc_Confirm); break; + case Popup_UserInput: drawPopup(F("Waiting for Input"), F("Press to Continue"), F(""), Proc_Confirm); break; + case Popup_LevelError: drawPopup(F("Couldn't enable Leveling"), F("(Valid mesh must exist)"), F(""), Proc_Confirm); break; + case Popup_InvalidMesh: drawPopup(F("Valid mesh must exist"), F("before tuning can be"), F("performed"), Proc_Confirm); break; default: break; } } @@ -4241,9 +4242,9 @@ void JyersDWIN::mainMenuControl() { else if (encoder_diffState == ENCODER_DIFF_ENTER) switch (selection) { case PAGE_PRINT: card.mount(); drawSDList(); break; - case PAGE_PREPARE: drawMenu(Prepare); break; - case PAGE_CONTROL: drawMenu(Control); break; - case PAGE_INFO_LEVELING: drawMenu(TERN(HAS_MESH, Leveling, InfoMain)); break; + case PAGE_PREPARE: drawMenu(ID_Prepare); break; + case PAGE_CONTROL: drawMenu(ID_Control); break; + case PAGE_INFO_LEVELING: drawMenu(TERN(HAS_MESH, ID_Leveling, ID_InfoMain)); break; } dwinUpdateLCD(); } @@ -4252,24 +4253,24 @@ void JyersDWIN::menuControl() { EncoderState encoder_diffState = encoderReceiveAnalyze(); if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_CW && selection < getMenuSize(active_menu)) { - dwinDrawRectangle(1, Color_Bg_Black, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, COLOR_BG_BLACK, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); selection++; // Select Down if (selection > scrollpos + MROWS) { scrollpos++; - dwinFrameAreaMove(1, 2, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); + dwinFrameAreaMove(1, 2, MLINE, COLOR_BG_BLACK, 0, 31, DWIN_WIDTH, 349); menuItemHandler(active_menu, selection); } - dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, COLOR_RECTANGLE), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); } else if (encoder_diffState == ENCODER_DIFF_CCW && selection > 0) { - dwinDrawRectangle(1, Color_Bg_Black, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, COLOR_BG_BLACK, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); selection--; // Select Up if (selection < scrollpos) { scrollpos--; - dwinFrameAreaMove(1, 3, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); + dwinFrameAreaMove(1, 3, MLINE, COLOR_BG_BLACK, 0, 31, DWIN_WIDTH, 349); menuItemHandler(active_menu, selection); } - dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, COLOR_RECTANGLE), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); } else if (encoder_diffState == ENCODER_DIFF_ENTER) menuItemHandler(active_menu, selection, false); @@ -4284,18 +4285,18 @@ void JyersDWIN::valueControl() { else if (encoder_diffState == ENCODER_DIFF_CCW) tempvalue -= encoderRate.encoderMoveValue; else if (encoder_diffState == ENCODER_DIFF_ENTER) { - process = Menu; + process = Proc_Menu; encoderRate.enabled = false; drawFloat(tempvalue / valueunit, selection - scrollpos, false, valueunit); dwinUpdateLCD(); - if (active_menu == ZOffset && liveadjust) { + if (active_menu == ID_ZOffset && liveadjust) { planner.synchronize(); current_position.z += (tempvalue / valueunit - zoffsetvalue); planner.buffer_line(current_position, homing_feedrate(Z_AXIS), active_extruder); current_position.z = 0; sync_plan_position(); } - else if (active_menu == Tune && selection == TUNE_ZOFFSET) { + else if (active_menu == ID_Tune && selection == TUNE_ZOFFSET) { gcode.process_subcommands_now(TS(F("M290Z"), p_float_t((tempvalue / valueunit - zoffsetvalue), 3))); } if (TERN0(PIDTEMP, valuepointer == &thermalManager.temp_hotend[0].pid.Ki) || TERN0(PIDTEMPBED, valuepointer == &thermalManager.temp_bed.pid.Ki)) @@ -4311,18 +4312,18 @@ void JyersDWIN::valueControl() { case 5: *(int8_t*)valuepointer = tempvalue / valueunit; break; } switch (active_menu) { - case Move: + case ID_Move: planner.synchronize(); planner.buffer_line(current_position, manual_feedrate_mm_s[selection - 1], active_extruder); break; #if HAS_MESH - case ManualMesh: + case ID_ManualMesh: planner.synchronize(); planner.buffer_line(current_position, homing_feedrate(Z_AXIS), active_extruder); planner.synchronize(); break; - case UBLMesh: mesh_conf.manual_mesh_move(true); break; - case LevelManual: mesh_conf.manual_mesh_move(selection == LEVELING_M_OFFSET); break; + case ID_UBLMesh: mesh_conf.manual_mesh_move(true); break; + case ID_LevelManual: mesh_conf.manual_mesh_move(selection == LEVELING_M_OFFSET); break; #endif } if (funcpointer) funcpointer(); @@ -4331,7 +4332,7 @@ void JyersDWIN::valueControl() { LIMIT(tempvalue, valuemin * valueunit, valuemax * valueunit); drawFloat(tempvalue / valueunit, selection - scrollpos, true, valueunit); dwinUpdateLCD(); - if (active_menu == Move && livemove) { + if (active_menu == ID_Move && livemove) { *(float*)valuepointer = tempvalue / valueunit; planner.buffer_line(current_position, manual_feedrate_mm_s[selection - 1], active_extruder); } @@ -4345,7 +4346,7 @@ void JyersDWIN::optionControl() { else if (encoder_diffState == ENCODER_DIFF_CCW) tempvalue -= encoderRate.encoderMoveValue; else if (encoder_diffState == ENCODER_DIFF_ENTER) { - process = Menu; + process = Proc_Menu; encoderRate.enabled = false; if (valuepointer == &color_names) { switch (selection) { @@ -4392,7 +4393,7 @@ void JyersDWIN::fileControl() { time = millis() + 200; Scroller::Buffer buf; const char* const name = scroller.scroll(pos, buf, filename); - dwinDrawRectangle(1, Color_Bg_Black, LBLX, MBASE(selection - scrollpos) - 14, 271, MBASE(selection - scrollpos) + 28); + dwinDrawRectangle(1, COLOR_BG_BLACK, LBLX, MBASE(selection - scrollpos) - 14, 271, MBASE(selection - scrollpos) + 28); drawMenuItem(selection - scrollpos, card.flag.filenameIsDir ? ICON_More : ICON_File, name); dwinUpdateLCD(); } @@ -4400,37 +4401,37 @@ void JyersDWIN::fileControl() { return; } if (encoder_diffState == ENCODER_DIFF_CW && selection < card.get_num_items()) { - dwinDrawRectangle(1, Color_Bg_Black, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, COLOR_BG_BLACK, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); if (selection > 0) { - dwinDrawRectangle(1, Color_Bg_Black, LBLX, MBASE(selection - scrollpos) - 14, 271, MBASE(selection - scrollpos) + 28); + dwinDrawRectangle(1, COLOR_BG_BLACK, LBLX, MBASE(selection - scrollpos) - 14, 271, MBASE(selection - scrollpos) + 28); drawSDItem(selection, selection - scrollpos); } scroller.reset(); selection++; // Select Down if (selection > scrollpos + MROWS) { scrollpos++; - dwinFrameAreaMove(1, 2, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); + dwinFrameAreaMove(1, 2, MLINE, COLOR_BG_BLACK, 0, 31, DWIN_WIDTH, 349); drawSDItem(selection, selection - scrollpos); } - dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, COLOR_RECTANGLE), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); } else if (encoder_diffState == ENCODER_DIFF_CCW && selection > 0) { - dwinDrawRectangle(1, Color_Bg_Black, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); - dwinDrawRectangle(1, Color_Bg_Black, LBLX, MBASE(selection - scrollpos) - 14, 271, MBASE(selection - scrollpos) + 28); + dwinDrawRectangle(1, COLOR_BG_BLACK, 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, COLOR_BG_BLACK, LBLX, MBASE(selection - scrollpos) - 14, 271, MBASE(selection - scrollpos) + 28); drawSDItem(selection, selection - scrollpos); scroller.reset(); selection--; // Select Up if (selection < scrollpos) { scrollpos--; - dwinFrameAreaMove(1, 3, MLINE, Color_Bg_Black, 0, 31, DWIN_WIDTH, 349); + dwinFrameAreaMove(1, 3, MLINE, COLOR_BG_BLACK, 0, 31, DWIN_WIDTH, 349); drawSDItem(selection, selection - scrollpos); } - dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, Rectangle_Color), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); + dwinDrawRectangle(1, getColor(eeprom_settings.cursor_color, COLOR_RECTANGLE), 0, MBASE(selection - scrollpos) - 18, 14, MBASE(selection - scrollpos) + 33); } else if (encoder_diffState == ENCODER_DIFF_ENTER) { if (selection == 0) { if (card.flag.workDirIsRoot) { - process = Main; + process = Proc_Main; drawMainMenu(); } else { @@ -4466,7 +4467,7 @@ void JyersDWIN::printScreenControl() { else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (selection) { case PRINT_SETUP: - drawMenu(Tune); + drawMenu(ID_Tune); updateStatusBar(true); break; case PRINT_PAUSE_RESUME: @@ -4494,9 +4495,9 @@ void JyersDWIN::printScreenControl() { drawPrintScreen(); } else - popupHandler(Pause); + popupHandler(Popup_Pause); break; - case PRINT_STOP: popupHandler(Stop); break; + case PRINT_STOP: popupHandler(Popup_Stop); break; } } dwinUpdateLCD(); @@ -4515,14 +4516,14 @@ void JyersDWIN::popupControl() { } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (popup) { - case Pause: + case Popup_Pause: if (selection == 0) { if (sdprint) { #if ENABLED(POWER_LOSS_RECOVERY) if (recovery.enabled) recovery.save(true); #endif #if ENABLED(PARK_HEAD_ON_PAUSE) - popupHandler(Home, true); + popupHandler(Popup_Home, true); #if HAS_MEDIA if (IS_SD_PRINTING()) card.pauseSDPrint(); #endif @@ -4543,7 +4544,7 @@ void JyersDWIN::popupControl() { } drawPrintScreen(); break; - case Stop: + case Popup_Stop: if (selection == 0) { if (sdprint) { ui.abort_print(); @@ -4556,7 +4557,7 @@ void JyersDWIN::popupControl() { else drawPrintScreen(); break; - case Resume: + case Popup_Resume: if (selection == 0) queue.inject(F("M1000")); else { @@ -4566,11 +4567,11 @@ void JyersDWIN::popupControl() { break; #if HAS_HOTEND - case ETemp: + case Popup_ETemp: if (selection == 0) { thermalManager.setTargetHotend(EXTRUDE_MINTEMP, 0); TERN_(HAS_FAN, thermalManager.set_fan_speed(0, MAX_FAN_SPEED)); - drawMenu(PreheatHotend); + drawMenu(ID_PreheatHotend); } else redrawMenu(true, true, false); @@ -4578,7 +4579,7 @@ void JyersDWIN::popupControl() { #endif #if HAS_BED_PROBE - case ManualProbing: + case Popup_ManualProbing: if (selection == 0) { const float dif = probe.probe_at_point(current_position.x, current_position.y, PROBE_PT_STOW, 0, false) - corner_avg; updateStatus(TS(F("Corner is "), p_float_t(abs(dif), 3), "mm ", dif > 0 ? F("high") : F("low"))); @@ -4591,37 +4592,37 @@ void JyersDWIN::popupControl() { #endif #if ENABLED(ADVANCED_PAUSE_FEATURE) - case ConfFilChange: + case Popup_ConfFilChange: if (selection == 0) { if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) - popupHandler(ETemp); + popupHandler(Popup_ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { - popupHandler(Heating); + popupHandler(Popup_Heating); thermalManager.wait_for_hotend(0); } - popupHandler(FilChange); + popupHandler(Popup_FilChange); gcode.process_subcommands_now(TS(F("M600B1R"), thermalManager.temp_hotend[0].target)); } } else redrawMenu(true, true, false); break; - case PurgeMore: + case Popup_PurgeMore: if (selection == 0) { pause_menu_response = PAUSE_RESPONSE_EXTRUDE_MORE; - popupHandler(FilChange); + popupHandler(Popup_FilChange); } else { pause_menu_response = PAUSE_RESPONSE_RESUME_PRINT; - if (printing) popupHandler(Resuming); - else redrawMenu(true, true, active_menu == PreheatHotend); + if (printing) popupHandler(Popup_Resuming); + else redrawMenu(true, true, active_menu == ID_PreheatHotend); } break; #endif // ADVANCED_PAUSE_FEATURE #if HAS_MESH - case SaveLevel: + case Popup_SaveLevel: if (selection == 0) { #if ENABLED(AUTO_BED_LEVELING_UBL) gcode.process_subcommands_now(F("G29 S")); @@ -4631,12 +4632,12 @@ void JyersDWIN::popupControl() { audioFeedback(settings.save()); #endif } - drawMenu(Leveling, LEVELING_GET_MESH); + drawMenu(ID_Leveling, LEVELING_GET_MESH); break; #endif #if ENABLED(AUTO_BED_LEVELING_UBL) - case MeshSlot: + case Popup_MeshSlot: if (selection == 0) bedlevel.storage_slot = 0; redrawMenu(true, true); break; @@ -4652,15 +4653,15 @@ void JyersDWIN::confirmControl() { if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (popup) { - case Complete: + case Popup_Complete: drawMainMenu(); break; - case FilInsert: - popupHandler(FilChange); + case Popup_FilInsert: + popupHandler(Popup_FilChange); wait_for_user = false; break; - case HeaterTime: - popupHandler(Heating); + case Popup_HeaterTime: + popupHandler(Popup_Heating); wait_for_user = false; break; default: @@ -4687,7 +4688,7 @@ void JyersDWIN::setupValue(const_float_t value, const_float_t min, const_float_t valuemax = max; valueunit = unit; valuetype = type; - process = Value; + process = Proc_Value; encoderRate.enabled = true; drawFloat(tempvalue / unit, selection - scrollpos, true, valueunit); } @@ -4728,7 +4729,7 @@ void JyersDWIN::modifyOption(const uint8_t value, const char * const * options, valuepointer = const_cast(options); valuemin = 0; valuemax = max; - process = Option; + process = Proc_Option; encoderRate.enabled = true; drawOption(value, options, selection - scrollpos, true); } @@ -4785,14 +4786,14 @@ void JyersDWIN::update() { stateUpdate(); screenUpdate(); switch (process) { - case Main: mainMenuControl(); break; - case Menu: menuControl(); break; - case Value: valueControl(); break; - case Option: optionControl(); break; - case File: fileControl(); break; - case Print: printScreenControl(); break; - case Popup: popupControl(); break; - case Confirm: confirmControl(); break; + case Proc_Main: mainMenuControl(); break; + case Proc_Menu: menuControl(); break; + case Proc_Value: valueControl(); break; + case Proc_Option: optionControl(); break; + case Proc_File: fileControl(); break; + case Proc_Print: printScreenControl(); break; + case Proc_Popup: popupControl(); break; + case Proc_Confirm: confirmControl(); break; } } @@ -4809,18 +4810,18 @@ void JyersDWIN::stateUpdate() { } if (print_job_timer.isPaused() != paused) { paused = print_job_timer.isPaused(); - if (process == Print) printScreenIcons(); - if (process == Wait && !paused) redrawMenu(true, true); + if (process == Proc_Print) printScreenIcons(); + if (process == Proc_Wait && !paused) redrawMenu(true, true); } - if (wait_for_user && !(process == Confirm) && !print_job_timer.isPaused()) - confirmHandler(UserInput); + if (wait_for_user && !(process == Proc_Confirm) && !print_job_timer.isPaused()) + confirmHandler(Popup_UserInput); #if ENABLED(ADVANCED_PAUSE_FEATURE) - if (process == Popup && popup == PurgeMore) { + if (process == Proc_Popup && popup == Popup_PurgeMore) { if (pause_menu_response == PAUSE_RESPONSE_EXTRUDE_MORE) - popupHandler(FilChange); + popupHandler(Popup_FilChange); else if (pause_menu_response == PAUSE_RESPONSE_RESUME_PRINT) { - if (printing) popupHandler(Resuming); - else redrawMenu(true, true, active_menu == PreheatHotend); + if (printing) popupHandler(Popup_Resuming); + else redrawMenu(true, true, active_menu == ID_PreheatHotend); } } #endif @@ -4828,7 +4829,7 @@ void JyersDWIN::stateUpdate() { static bool ranout = false; if (runout.filament_ran_out != ranout) { ranout = runout.filament_ran_out; - if (ranout) popupHandler(Runout); + if (ranout) popupHandler(Popup_Runout); } #endif } @@ -4839,7 +4840,7 @@ void JyersDWIN::screenUpdate() { if (ELAPSED(ms, scrltime)) { scrltime = ms + 200; updateStatusBar(); - if (process == Print) drawPrintFilename(); + if (process == Proc_Print) drawPrintFilename(); } static millis_t statustime = 0; @@ -4851,7 +4852,7 @@ void JyersDWIN::screenUpdate() { static millis_t printtime = 0; if (ELAPSED(ms, printtime)) { printtime = ms + 1000; - if (process == Print) { + if (process == Proc_Print) { drawPrintProgressBar(); drawPrintProgressElapsed(); TERN_(SET_REMAINING_TIME, drawPrintProgressRemain()); @@ -4861,7 +4862,7 @@ void JyersDWIN::screenUpdate() { static bool mounted = card.isMounted(); if (mounted != card.isMounted()) { mounted = card.isMounted(); - if (process == File) + if (process == Proc_File) drawSDList(); } @@ -4895,14 +4896,14 @@ void JyersDWIN::screenUpdate() { #endif #endif // HAS_ZOFFSET_ITEM - if (process == Menu || process == Value) { + if (process == Proc_Menu || process == Proc_Value) { switch (active_menu) { - case TempMenu: + case ID_TempMenu: #if HAS_HOTEND if (thermalManager.temp_hotend[0].target != hotendtarget) { hotendtarget = thermalManager.temp_hotend[0].target; if (scrollpos <= TEMP_HOTEND && TEMP_HOTEND <= scrollpos + MROWS) { - if (process != Value || selection != TEMP_HOTEND - scrollpos) + if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) drawFloat(thermalManager.temp_hotend[0].target, TEMP_HOTEND - scrollpos, false, 1); } } @@ -4911,7 +4912,7 @@ void JyersDWIN::screenUpdate() { if (thermalManager.temp_bed.target != bedtarget) { bedtarget = thermalManager.temp_bed.target; if (scrollpos <= TEMP_BED && TEMP_BED <= scrollpos + MROWS) { - if (process != Value || selection != TEMP_HOTEND - scrollpos) + if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) drawFloat(thermalManager.temp_bed.target, TEMP_BED - scrollpos, false, 1); } } @@ -4920,18 +4921,18 @@ void JyersDWIN::screenUpdate() { if (thermalManager.fan_speed[0] != fanspeed) { fanspeed = thermalManager.fan_speed[0]; if (scrollpos <= TEMP_FAN && TEMP_FAN <= scrollpos + MROWS) { - if (process != Value || selection != TEMP_HOTEND - scrollpos) + if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) drawFloat(thermalManager.fan_speed[0], TEMP_FAN - scrollpos, false, 1); } } #endif break; - case Tune: + case ID_Tune: #if HAS_HOTEND if (thermalManager.temp_hotend[0].target != hotendtarget) { hotendtarget = thermalManager.temp_hotend[0].target; if (scrollpos <= TUNE_HOTEND && TUNE_HOTEND <= scrollpos + MROWS) { - if (process != Value || selection != TEMP_HOTEND - scrollpos) + if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) drawFloat(thermalManager.temp_hotend[0].target, TUNE_HOTEND - scrollpos, false, 1); } } @@ -4940,7 +4941,7 @@ void JyersDWIN::screenUpdate() { if (thermalManager.temp_bed.target != bedtarget) { bedtarget = thermalManager.temp_bed.target; if (scrollpos <= TUNE_BED && TUNE_BED <= scrollpos + MROWS) { - if (process != Value || selection != TEMP_HOTEND - scrollpos) + if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) drawFloat(thermalManager.temp_bed.target, TUNE_BED - scrollpos, false, 1); } } @@ -4949,7 +4950,7 @@ void JyersDWIN::screenUpdate() { if (thermalManager.fan_speed[0] != fanspeed) { fanspeed = thermalManager.fan_speed[0]; if (scrollpos <= TUNE_FAN && TUNE_FAN <= scrollpos + MROWS) { - if (process != Value || selection != TEMP_HOTEND - scrollpos) + if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) drawFloat(thermalManager.fan_speed[0], TUNE_FAN - scrollpos, false, 1); } } @@ -5017,7 +5018,7 @@ void MarlinUI::init_lcd() { encoderConfiguration(); for (uint16_t t = 0; t <= 100; t += 2) { dwinIconShow(ICON, ICON_Bar, 15, 260); - dwinDrawRectangle(1, Color_Bg_Black, 15 + t * 242 / 100, 260, 257, 280); + dwinDrawRectangle(1, COLOR_BG_BLACK, 15 + t * 242 / 100, 260, 257, 280); dwinUpdateLCD(); delay(20); } @@ -5030,10 +5031,10 @@ void MarlinUI::init_lcd() { #if ENABLED(ADVANCED_PAUSE_FEATURE) void MarlinUI::pause_show_message(const PauseMessage message, const PauseMode mode/*=PAUSE_MODE_SAME*/, const uint8_t extruder/*=active_extruder*/) { switch (message) { - case PAUSE_MESSAGE_INSERT: jyersDWIN.confirmHandler(FilInsert); break; + case PAUSE_MESSAGE_INSERT: jyersDWIN.confirmHandler(Popup_FilInsert); break; case PAUSE_MESSAGE_PURGE: - case PAUSE_MESSAGE_OPTION: jyersDWIN.popupHandler(PurgeMore); break; - case PAUSE_MESSAGE_HEAT: jyersDWIN.confirmHandler(HeaterTime); break; + case PAUSE_MESSAGE_OPTION: jyersDWIN.popupHandler(Popup_PurgeMore); break; + case PAUSE_MESSAGE_HEAT: jyersDWIN.confirmHandler(Popup_HeaterTime); break; case PAUSE_MESSAGE_WAITING: jyersDWIN.drawPrintScreen(); break; default: break; } diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.h b/Marlin/src/lcd/e3v2/jyersui/dwin.h index 98af1c4cbd0b..17b6176f3d88 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.h +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.h @@ -38,61 +38,87 @@ //#define DWIN_CREALITY_LCD_CUSTOM_ICONS enum processID : uint8_t { - Main, Print, Menu, Value, Option, File, Popup, Confirm, Wait + Proc_Main, Proc_Print, Proc_Menu, Proc_Value, Proc_Option, + Proc_File, Proc_Popup, Proc_Confirm, Proc_Wait }; enum PopupID : uint8_t { - Pause, Stop, Resume, SaveLevel, ETemp, ConfFilChange, PurgeMore, MeshSlot, - Level, Home, MoveWait, Heating, FilLoad, FilChange, TempWarn, Runout, PIDWait, MPCWait, Resuming, ManualProbing, - FilInsert, HeaterTime, UserInput, LevelError, InvalidMesh, UI, Complete, Custom + Popup_Pause, + Popup_Stop, + Popup_Resume, + Popup_SaveLevel, + Popup_ETemp, + Popup_ConfFilChange, + Popup_PurgeMore, + Popup_MeshSlot, + Popup_Level, + Popup_Home, + Popup_MoveWait, + Popup_Heating, + Popup_FilLoad, + Popup_FilChange, + Popup_TempWarn, + Popup_Runout, + Popup_PIDWait, + Popup_MPCWait, + Popup_Resuming, + Popup_ManualProbing, + Popup_FilInsert, + Popup_HeaterTime, + Popup_UserInput, + Popup_LevelError, + Popup_InvalidMesh, + Popup_UI, + Popup_Complete, + Popup_Custom }; enum menuID : uint8_t { - MainMenu, - Prepare, - Move, - HomeMenu, - ManualLevel, - ZOffset, - Preheat, - ChangeFilament, - MenuCustom, - Control, - TempMenu, - PID, - HotendPID, - BedPID, + ID_MainMenu, + ID_Prepare, + ID_Move, + ID_HomeMenu, + ID_ManualLevel, + ID_ZOffset, + ID_Preheat, + ID_ChangeFilament, + ID_MenuCustom, + ID_Control, + ID_TempMenu, + ID_PID, + ID_HotendPID, + ID_BedPID, #if HAS_PREHEAT - #define _PREHEAT_ID(N) Preheat##N, + #define _PREHEAT_ID(N) ID_Preheat##N, REPEAT_1(PREHEAT_COUNT, _PREHEAT_ID) #endif #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) - MPC, + ID_MPC, #endif - Motion, - HomeOffsets, - MaxSpeed, - MaxAcceleration, - MaxJerk, - Steps, - Visual, - ColorSettings, - Advanced, - ProbeMenu, + ID_Motion, + ID_HomeOffsets, + ID_MaxSpeed, + ID_MaxAcceleration, + ID_MaxJerk, + ID_Steps, + ID_Visual, + ID_ColorSettings, + ID_Advanced, + ID_ProbeMenu, #if HAS_TRINAMIC_CONFIG - TMCMenu, + ID_TMCMenu, #endif - Info, - Leveling, - LevelManual, - LevelView, - MeshViewer, - LevelSettings, - ManualMesh, - UBLMesh, - InfoMain, - Tune, - PreheatHotend + ID_Info, + ID_Leveling, + ID_LevelManual, + ID_LevelView, + ID_MeshViewer, + ID_LevelSettings, + ID_ManualMesh, + ID_UBLMesh, + ID_InfoMain, + ID_Tune, + ID_PreheatHotend }; // Custom icons @@ -129,27 +155,27 @@ enum colorID : uint8_t { }; #define Custom_Colors 10 -#define Color_Aqua RGB(0x00,0x3F,0x1F) -#define Color_Light_White 0xBDD7 -#define Color_Green RGB(0x00,0x3F,0x00) -#define Color_Light_Green 0x3460 -#define Color_Cyan 0x07FF -#define Color_Light_Cyan 0x04F3 -#define Color_Blue 0x015F -#define Color_Light_Blue 0x3A6A -#define Color_Magenta 0xF81F -#define Color_Light_Magenta 0x9813 -#define Color_Light_Red 0x8800 -#define Color_Orange 0xFA20 -#define Color_Light_Orange 0xFBC0 -#define Color_Light_Yellow 0x8BE0 -#define Color_Brown 0xCC27 -#define Color_Light_Brown 0x6204 -#define Color_Black 0x0000 -#define Color_Grey 0x18E3 -#define Check_Color 0x4E5C // Check-box check color -#define Confirm_Color 0x34B9 -#define Cancel_Color 0x3186 +#define COLOR_AQUA RGB(0x00,0x3F,0x1F) +#define COLOR_LIGHT_WHITE 0xBDD7 +#define COLOR_GREEN RGB(0x00,0x3F,0x00) +#define COLOR_LIGHT_GREEN 0x3460 +#define COLOR_CYAN 0x07FF +#define COLOR_LIGHT_CYAN 0x04F3 +#define COLOR_BLUE 0x015F +#define COLOR_LIGHT_BLUE 0x3A6A +#define COLOR_MAGENTA 0xF81F +#define COLOR_LIGHT_MAGENTA 0x9813 +#define COLOR_LIGHT_RED 0x8800 +#define COLOR_ORANGE 0xFA20 +#define COLOR_LIGHT_ORANGE 0xFBC0 +#define COLOR_LIGHT_YELLOW 0x8BE0 +#define COLOR_BROWN 0xCC27 +#define COLOR_LIGHT_BROWN 0x6204 +#define COLOR_BLACK 0x0000 +#define COLOR_GREY 0x18E3 +#define COLOR_CHECKBOX 0x4E5C // Check-box check color +#define COLOR_CONFIRM 0x34B9 +#define COLOR_CANCEL 0x3186 class JyersDWIN { public: diff --git a/Marlin/src/lcd/e3v2/marlinui/dwin_lcd.cpp b/Marlin/src/lcd/e3v2/marlinui/dwin_lcd.cpp index b6c26d4fe1ae..13c6de548029 100644 --- a/Marlin/src/lcd/e3v2/marlinui/dwin_lcd.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/dwin_lcd.cpp @@ -45,7 +45,7 @@ void dwinStartup() { const bool success = dwinHandshake(); if (success) DEBUG_ECHOLNPGM("ok."); else DEBUG_ECHOLNPGM("error."); dwinFrameSetDir(TERN(DWIN_MARLINUI_LANDSCAPE, 0, 1)); - dwinFrameClear(Color_Bg_Black); // MarlinUI handles the bootscreen so just clear here + dwinFrameClear(COLOR_BG_BLACK); // MarlinUI handles the bootscreen so just clear here dwinJPGShowAndCache(3); dwinUpdateLCD(); } diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp index 3cf89e7b3e0f..ebfb10c8c040 100644 --- a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp @@ -48,7 +48,7 @@ // DWIN printing specifies the font on each string operation // but we'll make the font modal for Marlin -dwin_font_t dwin_font = { font8x16, 8, 16, Color_White, Color_Bg_Black, true }; +dwin_font_t dwin_font = { font8x16, 8, 16, COLOR_WHITE, COLOR_BG_BLACK, true }; void MarlinUI::set_font(const uint8_t font_nr) { if (font_nr != dwin_font.index) { dwin_font.index = font_nr; @@ -84,7 +84,7 @@ void MarlinUI::init_lcd() { dwinStartup(); } void MarlinUI::clear_lcd() { dwinIconAnimationControl(0x0000); // disable all icon animations dwinJPGShowAndCache(3); - dwinFrameClear(Color_Bg_Black); + dwinFrameClear(COLOR_BG_BLACK); dwinUpdateLCD(); did_first_redraw = false; @@ -109,7 +109,7 @@ void MarlinUI::clear_lcd() { #define VERSION_Y 84 #endif - dwinDrawString(false, font10x20, Color_Yellow, Color_Bg_Black, INFO_CENTER - (dwin_string.length * 10) / 2, VERSION_Y, S(dwin_string.string())); + dwinDrawString(false, font10x20, COLOR_YELLOW, COLOR_BG_BLACK, INFO_CENTER - (dwin_string.length * 10) / 2, VERSION_Y, S(dwin_string.string())); TERN_(SHOW_CUSTOM_BOOTSCREEN, safe_delay(CUSTOM_BOOTSCREEN_TIMEOUT)); clear_lcd(); @@ -126,7 +126,7 @@ void MarlinUI::clear_lcd() { dwinIconShow(BOOT_ICON, ICON_MarlinURL, INFO_CENTER - 100 / 2, 152); dwinIconShow(BOOT_ICON, ICON_Copyright, INFO_CENTER - 126 / 2, 200); #endif - dwinDrawString(false, font10x20, Color_Yellow, Color_Bg_Black, INFO_CENTER - (dwin_string.length * 10) / 2, VERSION_Y, S(dwin_string.string())); + dwinDrawString(false, font10x20, COLOR_YELLOW, COLOR_BG_BLACK, INFO_CENTER - (dwin_string.length * 10) / 2, VERSION_Y, S(dwin_string.string())); dwinUpdateLCD(); } @@ -140,14 +140,14 @@ void MarlinUI::clear_lcd() { // The kill screen is displayed for unrecoverable conditions void MarlinUI::draw_kill_screen() { set_font(DWIN_FONT_ALERT); - dwinFrameClear(Color_Bg_Black); - dwin_font.fg = Color_Error_Red; + dwinFrameClear(COLOR_BG_BLACK); + dwin_font.fg = COLOR_ERROR_RED; dwin_font.solid = false; - dwinDrawRectangle(1, Color_Bg_Window, 20, 20, LCD_PIXEL_WIDTH - 20, LCD_PIXEL_HEIGHT - 20); + dwinDrawRectangle(1, COLOR_BG_WINDOW, 20, 20, LCD_PIXEL_WIDTH - 20, LCD_PIXEL_HEIGHT - 20); // make the frame a few pixels thick - dwinDrawRectangle(0, Color_Yellow, 20, 20, LCD_PIXEL_WIDTH - 20, LCD_PIXEL_HEIGHT - 20); - dwinDrawRectangle(0, Color_Yellow, 21, 21, LCD_PIXEL_WIDTH - 21, LCD_PIXEL_HEIGHT - 21); - dwinDrawRectangle(0, Color_Yellow, 22, 22, LCD_PIXEL_WIDTH - 22, LCD_PIXEL_HEIGHT - 22); + dwinDrawRectangle(0, COLOR_YELLOW, 20, 20, LCD_PIXEL_WIDTH - 20, LCD_PIXEL_HEIGHT - 20); + dwinDrawRectangle(0, COLOR_YELLOW, 21, 21, LCD_PIXEL_WIDTH - 21, LCD_PIXEL_HEIGHT - 21); + dwinDrawRectangle(0, COLOR_YELLOW, 22, 22, LCD_PIXEL_WIDTH - 22, LCD_PIXEL_HEIGHT - 22); uint8_t cx = (LCD_PIXEL_WIDTH / dwin_font.width / 2), cy = (LCD_PIXEL_HEIGHT / dwin_font.height / 2); @@ -178,8 +178,8 @@ void MarlinUI::draw_kill_screen() { void MarlinUI::draw_status_message(const bool blink) { set_font(DWIN_FONT_STAT); dwin_font.solid = true; - dwin_font.fg = Color_White; - dwin_font.bg = Color_Bg_Black; + dwin_font.fg = COLOR_WHITE; + dwin_font.bg = COLOR_BG_BLACK; lcd_moveto_xy(0, LCD_PIXEL_HEIGHT - (STAT_FONT_HEIGHT) - 1); constexpr uint8_t max_status_chars = (LCD_PIXEL_WIDTH) / (STAT_FONT_WIDTH); @@ -267,7 +267,7 @@ void MarlinUI::draw_status_message(const bool blink) { void MarlinUI::draw_hotend_status(const uint8_t row, const uint8_t extruder) { dwin_font.solid = false; - dwin_font.fg = Color_White; + dwin_font.fg = COLOR_WHITE; dwin_string.set('E'); dwin_string.add('1' + extruder); dwin_string.add(' '); @@ -293,10 +293,10 @@ void MarlinUI::draw_status_message(const bool blink) { dwinDrawBox(1, Color_Bg_Heading, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); else { #if ENABLED(MENU_HOLLOW_FRAME) - dwinDrawBox(1, Color_Bg_Black, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); - if (sel) dwinDrawBox(0, Select_Color, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); + dwinDrawBox(1, COLOR_BG_BLACK, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); + if (sel) dwinDrawBox(0, COLOR_SELECT, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); #else - dwinDrawBox(1, sel ? Select_Color : Color_Bg_Black, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); + dwinDrawBox(1, sel ? COLOR_SELECT : COLOR_BG_BLACK, 0, y, LCD_PIXEL_WIDTH, MENU_LINE_HEIGHT - 1); #endif } @@ -311,7 +311,7 @@ void MarlinUI::draw_status_message(const bool blink) { if (mark_as_selected(row, (bool)(style & SS_INVERT), true)) { ui.set_font(DWIN_FONT_MENU); dwin_font.solid = false; - dwin_font.fg = Color_White; + dwin_font.fg = COLOR_WHITE; dwin_string.set(); @@ -356,7 +356,7 @@ void MarlinUI::draw_status_message(const bool blink) { if (mark_as_selected(row, sel)) { ui.set_font(DWIN_FONT_MENU); dwin_font.solid = false; - dwin_font.fg = Color_White; + dwin_font.fg = COLOR_WHITE; dwin_string.set(ftpl, itemIndex, itemStringC, itemStringF); @@ -377,7 +377,7 @@ void MarlinUI::draw_status_message(const bool blink) { if (mark_as_selected(row, sel)) { ui.set_font(DWIN_FONT_MENU); dwin_font.solid = false; - dwin_font.fg = Color_White; + dwin_font.fg = COLOR_WHITE; const uint8_t vallen = (pgm ? utf8_strlen_P(inStr) : utf8_strlen(S(inStr))); @@ -388,7 +388,7 @@ void MarlinUI::draw_status_message(const bool blink) { lcd_put_dwin_string(); if (vallen) { - dwin_font.fg = Color_Yellow; + dwin_font.fg = COLOR_YELLOW; dwin_string.set(inStr); lcd_moveto(LCD_WIDTH - vallen - 1, row); lcd_put_dwin_string(); @@ -410,7 +410,7 @@ void MarlinUI::draw_status_message(const bool blink) { // Assume the label is alpha-numeric (with a descender) const uint16_t row = (LCD_HEIGHT / 2) - 1; - dwin_font.fg = Color_White; + dwin_font.fg = COLOR_WHITE; dwin_font.solid = true; lcd_moveto((LCD_WIDTH - labellen + !!vallen) / 2, row); lcd_put_dwin_string(); @@ -420,7 +420,7 @@ void MarlinUI::draw_status_message(const bool blink) { dwin_string.set(value); const dwin_coord_t by = (row * MENU_LINE_HEIGHT) + MENU_FONT_HEIGHT + EXTRA_ROW_HEIGHT / 2; - dwinDrawString(true, font16x32, Color_Yellow, Color_Bg_Black, (LCD_PIXEL_WIDTH - vallen * 16) / 2, by, S(dwin_string.string())); + dwinDrawString(true, font16x32, COLOR_YELLOW, COLOR_BG_BLACK, (LCD_PIXEL_WIDTH - vallen * 16) / 2, by, S(dwin_string.string())); if (ui.can_show_slider()) { @@ -430,11 +430,11 @@ void MarlinUI::draw_status_message(const bool blink) { slider_y = by + 32 + 4, amount = ui.encoderPosition * slider_length / maxEditValue; - dwinDrawRectangle(1, Color_Bg_Window, slider_x - 1, slider_y - 1, slider_x - 1 + slider_length + 2 - 1, slider_y - 1 + slider_height + 2 - 1); + dwinDrawRectangle(1, COLOR_BG_WINDOW, slider_x - 1, slider_y - 1, slider_x - 1 + slider_length + 2 - 1, slider_y - 1 + slider_height + 2 - 1); if (amount > 0) - dwinDrawBox(1, BarFill_Color, slider_x, slider_y, amount, slider_height); + dwinDrawBox(1, COLOR_BARFILL, slider_x, slider_y, amount, slider_height); if (amount < slider_length) - dwinDrawBox(1, Color_Bg_Black, slider_x + amount, slider_y, slider_length - amount, slider_height); + dwinDrawBox(1, COLOR_BG_BLACK, slider_x + amount, slider_y, slider_length - amount, slider_height); } } } @@ -445,7 +445,7 @@ void MarlinUI::draw_status_message(const bool blink) { col = yesopt ? LCD_WIDTH - mar - len : mar, row = (LCD_HEIGHT >= 8 ? LCD_HEIGHT / 2 + 3 : LCD_HEIGHT - 1); lcd_moveto(col, row); - dwinDrawBox(1, inv ? Select_Color : Color_Bg_Black, cursor.x - dwin_font.width, cursor.y + 1, dwin_font.width * (len + 2), dwin_font.height + 2); + dwinDrawBox(1, inv ? COLOR_SELECT : COLOR_BG_BLACK, cursor.x - dwin_font.width, cursor.y + 1, dwin_font.width * (len + 2), dwin_font.height + 2); lcd_put_u8str(col, row, fstr); } @@ -455,7 +455,7 @@ void MarlinUI::draw_status_message(const bool blink) { ) { ui.set_font(DWIN_FONT_MENU); dwin_font.solid = false; - dwin_font.fg = Color_White; + dwin_font.fg = COLOR_WHITE; ui.draw_select_screen_prompt(pref, string, suff); if (no) draw_boxed_string(false, no, !yesno); if (yes) draw_boxed_string(true, yes, yesno); @@ -507,9 +507,9 @@ void MarlinUI::draw_status_message(const bool blink) { // Clear the Mesh Map // First draw the bigger box in White so we have a border around the mesh map box - dwinDrawRectangle(1, Color_White, x_offset - 2, y_offset - 2, x_offset + 2 + x_map_pixels, y_offset + 2 + y_map_pixels); + dwinDrawRectangle(1, COLOR_WHITE, x_offset - 2, y_offset - 2, x_offset + 2 + x_map_pixels, y_offset + 2 + y_map_pixels); // Now actually clear the mesh map box - dwinDrawRectangle(1, Color_Bg_Black, x_offset, y_offset, x_offset + x_map_pixels, y_offset + y_map_pixels); + dwinDrawRectangle(1, COLOR_BG_BLACK, x_offset, y_offset, x_offset + x_map_pixels, y_offset + y_map_pixels); // Fill in the Specified Mesh Point @@ -517,7 +517,7 @@ void MarlinUI::draw_status_message(const bool blink) { // invert the Y to get it to plot in the right location. const dwin_coord_t by = y_offset + y_plot_inv * pixels_per_y_mesh_pnt; - dwinDrawRectangle(1, Select_Color, + dwinDrawRectangle(1, COLOR_SELECT, x_offset + (x_plot * pixels_per_x_mesh_pnt), by, x_offset + (x_plot * pixels_per_x_mesh_pnt) + pixels_per_x_mesh_pnt, by + pixels_per_y_mesh_pnt ); @@ -527,12 +527,12 @@ void MarlinUI::draw_status_message(const bool blink) { dwin_coord_t y = y_offset + pixels_per_y_mesh_pnt / 2; for (uint8_t j = 0; j < (GRID_MAX_POINTS_Y); j++, y += pixels_per_y_mesh_pnt) for (uint8_t i = 0, x = sx; i < (GRID_MAX_POINTS_X); i++, x += pixels_per_x_mesh_pnt) - dwinDrawPoint(Color_White, 1, 1, x, y); + dwinDrawPoint(COLOR_WHITE, 1, 1, x, y); // Put Relevant Text on Display // Show X and Y positions at top of screen - dwin_font.fg = Color_White; + dwin_font.fg = COLOR_WHITE; dwin_font.solid = true; const xy_pos_t pos = { bedlevel.get_mesh_x(x_plot), bedlevel.get_mesh_y(y_plot) }, lpos = pos.asLogical(); @@ -586,7 +586,7 @@ void MarlinUI::draw_status_message(const bool blink) { const int nozzle = (LCD_PIXEL_WIDTH / 2) - 20; // Draw a representation of the nozzle - dwinDrawBox(1, Color_Bg_Black, nozzle + 3, 8, 48, 52); // 'clear' the area where the nozzle is drawn in case it was moved up/down + dwinDrawBox(1, COLOR_BG_BLACK, nozzle + 3, 8, 48, 52); // 'clear' the area where the nozzle is drawn in case it was moved up/down dwinIconShow(ICON, ICON_HotendOff, nozzle + 3, 10 - dir); dwinIconShow(ICON, ICON_BedLine, nozzle, 10 + 36); diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp index 381aea6b17da..c0b7ba90eccc 100644 --- a/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/ui_status_480x272.cpp @@ -72,7 +72,7 @@ void _draw_axis_value(const AxisEnum axis, const char *value, const bool blink, const bool x_redraw = !ui.did_first_redraw || old_is_printing != print_job_timer.isRunning(); if (x_redraw) { dwin_string.set('X' + axis); - dwinDrawString(true, font16x32, Color_IconBlue, Color_Bg_Black, + dwinDrawString(true, font16x32, COLOR_ICONBLUE, COLOR_BG_BLACK, #if ENABLED(DWIN_MARLINUI_PORTRAIT) x + (utf8_strlen(value) * 14 - 14) / 2, y + 2 #else @@ -96,7 +96,7 @@ void _draw_axis_value(const AxisEnum axis, const char *value, const bool blink, if (TERN0(LCD_SHOW_E_TOTAL, x_redraw && axis == X_AXIS)) dwin_string.add(F(" ")); - dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, + dwinDrawString(true, font14x28, COLOR_WHITE, COLOR_BG_BLACK, #if ENABLED(DWIN_MARLINUI_PORTRAIT) x, y + 32 #else @@ -117,26 +117,26 @@ void _draw_axis_value(const AxisEnum axis, const char *value, const bool blink, if (e_redraw) { // Extra spaces to erase previous value dwin_string.set(F("E ")); - dwinDrawString(true, font16x32, Color_IconBlue, Color_Bg_Black, x + (4 * 14 / 2) - 7, y + 2, S(dwin_string.string())); + dwinDrawString(true, font16x32, COLOR_ICONBLUE, COLOR_BG_BLACK, x + (4 * 14 / 2) - 7, y + 2, S(dwin_string.string())); } dwin_string.set(ui16tostr5rj(value / scale)); - dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, x, y + 32, S(dwin_string.string())); + dwinDrawString(true, font14x28, COLOR_WHITE, COLOR_BG_BLACK, x, y + 32, S(dwin_string.string())); // Extra spaces to erase previous value - dwinDrawString(true, font14x28, Color_IconBlue, Color_Bg_Black, x + (5 * 14), y + 32, S(scale == 1 ? "mm " : "cm ")); + dwinDrawString(true, font14x28, COLOR_ICONBLUE, COLOR_BG_BLACK, x + (5 * 14), y + 32, S(scale == 1 ? "mm " : "cm ")); #else // !DWIN_MARLINUI_PORTRAIT if (e_redraw) { dwin_string.set(F("E ")); - dwinDrawString(true, font16x32, Color_IconBlue, Color_Bg_Black, x, y, S(dwin_string.string())); + dwinDrawString(true, font16x32, COLOR_ICONBLUE, COLOR_BG_BLACK, x, y, S(dwin_string.string())); } dwin_string.set(ui16tostr5rj(value / scale)); - dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, x + 32, y + 4, S(dwin_string.string())); + dwinDrawString(true, font14x28, COLOR_WHITE, COLOR_BG_BLACK, x + 32, y + 4, S(dwin_string.string())); - dwinDrawString(true, font14x28, Color_IconBlue, Color_Bg_Black, x + (32 + 70), y + 4, S(scale == 1 ? "mm " : "cm ")); + dwinDrawString(true, font14x28, COLOR_ICONBLUE, COLOR_BG_BLACK, x + (32 + 70), y + 4, S(scale == 1 ? "mm " : "cm ")); #endif // !DWIN_MARLINUI_PORTRAIT } @@ -154,13 +154,13 @@ void _draw_axis_value(const AxisEnum axis, const char *value, const bool blink, dwinIconAnimation(0, fan_on, ICON, ICON_Fan0, ICON_Fan3, x + fanx, y, 25); dwin_string.set(i8tostr3rj(thermalManager.scaledFanSpeedPercent(0))); dwin_string.add('%'); - dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, x, y + STATUS_FAN_HEIGHT, S(dwin_string.string())); + dwinDrawString(true, font14x28, COLOR_WHITE, COLOR_BG_BLACK, x, y + STATUS_FAN_HEIGHT, S(dwin_string.string())); } else { dwinIconAnimationControl(0x0000); // disable all icon animations (this is the only one) dwinIconShow(ICON, ICON_Fan0, x + fanx, y); dwin_string.set(F(" ")); - dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, x, y + STATUS_FAN_HEIGHT, S(dwin_string.string())); + dwinDrawString(true, font14x28, COLOR_WHITE, COLOR_BG_BLACK, x, y + STATUS_FAN_HEIGHT, S(dwin_string.string())); } } #endif @@ -230,7 +230,7 @@ FORCE_INLINE void _draw_heater_status(const heater_id_t heater, const uint16_t x if (t_draw) { dwin_string.set(i16tostr3rj(tt + 0.5)); dwin_string.add(LCD_STR_DEGREE); - dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, x, y, S(dwin_string.string())); + dwinDrawString(true, font14x28, COLOR_WHITE, COLOR_BG_BLACK, x, y, S(dwin_string.string())); } // Draw heater icon with on / off / leveled states @@ -243,7 +243,7 @@ FORCE_INLINE void _draw_heater_status(const heater_id_t heater, const uint16_t x if (c_draw) { dwin_string.set(i16tostr3rj(tc + 0.5)); dwin_string.add(LCD_STR_DEGREE); - dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, x, y + 70, S(dwin_string.string())); + dwinDrawString(true, font14x28, COLOR_WHITE, COLOR_BG_BLACK, x, y + 70, S(dwin_string.string())); } } @@ -253,12 +253,12 @@ FORCE_INLINE void _draw_heater_status(const heater_id_t heater, const uint16_t x FORCE_INLINE void _draw_feedrate_status(const char *value, uint16_t x, uint16_t y) { if (!ui.did_first_redraw) { dwin_string.set(LCD_STR_FEEDRATE); - dwinDrawString(true, font14x28, Color_IconBlue, Color_Bg_Black, x, y, S(dwin_string.string())); + dwinDrawString(true, font14x28, COLOR_ICONBLUE, COLOR_BG_BLACK, x, y, S(dwin_string.string())); } dwin_string.set(value); dwin_string.add('%'); - dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, x + 14, y, S(dwin_string.string())); + dwinDrawString(true, font14x28, COLOR_WHITE, COLOR_BG_BLACK, x + 14, y, S(dwin_string.string())); } /** @@ -281,7 +281,7 @@ void MarlinUI::draw_status_screen() { ); // Draw a frame around the x/y/z values - dwinDrawRectangle(0, Select_Color, + dwinDrawRectangle(0, COLOR_SELECT, #if ENABLED(DWIN_MARLINUI_PORTRAIT) 0, 193, LCD_PIXEL_WIDTH - 1, 260 #else @@ -358,7 +358,7 @@ void MarlinUI::draw_status_screen() { time.toDigital(buffer); dwin_string.add(prefix); dwin_string.add(buffer); - dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, (LCD_PIXEL_WIDTH - ((dwin_string.length + 1) * 14)), 290, S(dwin_string.string())); + dwinDrawString(true, font14x28, COLOR_WHITE, COLOR_BG_BLACK, (LCD_PIXEL_WIDTH - ((dwin_string.length + 1) * 14)), 290, S(dwin_string.string())); #else @@ -367,23 +367,23 @@ void MarlinUI::draw_status_screen() { time.toDigital(buffer); dwin_string.set(' '); dwin_string.add(buffer); - dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, 230, 170, S(dwin_string.string())); + dwinDrawString(true, font14x28, COLOR_WHITE, COLOR_BG_BLACK, 230, 170, S(dwin_string.string())); #if ENABLED(SHOW_REMAINING_TIME) if (print_job_timer.isRunning()) { time = get_remaining_time(); - dwinDrawString(true, font14x28, Color_IconBlue, Color_Bg_Black, 336, 170, S(" R ")); + dwinDrawString(true, font14x28, COLOR_ICONBLUE, COLOR_BG_BLACK, 336, 170, S(" R ")); if (print_job_timer.isPaused() && blink) dwin_string.set(F(" ")); else { time.toDigital(buffer); dwin_string.set(buffer); } - dwinDrawString(true, font14x28, Color_White, Color_Bg_Black, 378, 170, S(dwin_string.string())); + dwinDrawString(true, font14x28, COLOR_WHITE, COLOR_BG_BLACK, 378, 170, S(dwin_string.string())); } else if (!ui.did_first_redraw || old_is_printing != print_job_timer.isRunning()) { dwin_string.set(F(" ")); - dwinDrawString(true, font14x28, Color_IconBlue, Color_Bg_Black, 336, 170, S(dwin_string.string())); + dwinDrawString(true, font14x28, COLOR_ICONBLUE, COLOR_BG_BLACK, 336, 170, S(dwin_string.string())); } #endif #endif @@ -403,7 +403,7 @@ void MarlinUI::draw_status_screen() { const progress_t progress = TERN(HAS_PRINT_PROGRESS_PERMYRIAD, get_progress_permyriad, get_progress_percent)(); if (!ui.did_first_redraw) - dwinDrawRectangle(0, Select_Color, pb_left, pb_top, pb_right, pb_bottom); // Outline + dwinDrawRectangle(0, COLOR_SELECT, pb_left, pb_top, pb_right, pb_bottom); // Outline static uint16_t old_solid = 50; const uint16_t pb_solid = (pb_width - 2) * (progress / (PROGRESS_SCALE)) * 0.01f; @@ -411,16 +411,16 @@ void MarlinUI::draw_status_screen() { if (p_draw) { //if (pb_solid) - dwinDrawRectangle(1, Select_Color, pb_left + 1, pb_top + 1, pb_left + pb_solid, pb_bottom - 1); // Fill the solid part + dwinDrawRectangle(1, COLOR_SELECT, pb_left + 1, pb_top + 1, pb_left + pb_solid, pb_bottom - 1); // Fill the solid part //if (pb_solid < old_solid) - dwinDrawRectangle(1, Color_Bg_Black, pb_left + 1 + pb_solid, pb_top + 1, pb_right - 1, pb_bottom - 1); // Erase the rest + dwinDrawRectangle(1, COLOR_BG_BLACK, pb_left + 1 + pb_solid, pb_top + 1, pb_right - 1, pb_bottom - 1); // Erase the rest #if ENABLED(SHOW_PROGRESS_PERCENT) dwin_string.set(TERN(PRINT_PROGRESS_SHOW_DECIMALS, permyriadtostr4(progress), ui8tostr3rj(progress / (PROGRESS_SCALE)))); dwin_string.add('%'); dwinDrawString( - false, font16x32, Percent_Color, Color_Bg_Black, + false, font16x32, COLOR_PERCENT, COLOR_BG_BLACK, pb_left + (pb_width - dwin_string.length * 16) / 2, pb_top + (pb_height - 32) / 2 - 1, S(dwin_string.string()) diff --git a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp index d4e2262be17f..bd2f8a88e6a6 100644 --- a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp +++ b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.cpp @@ -63,22 +63,22 @@ #include "dwin_popup.h" #include "bedlevel_tools.h" -BedLevelToolsClass bedLevelTools; +BedLevelTools bedLevelTools; #if ENABLED(USE_GRID_MESHVIEWER) - bool BedLevelToolsClass::viewer_asymmetric_range = false; - bool BedLevelToolsClass::viewer_print_value = false; + bool BedLevelTools::viewer_asymmetric_range = false; + bool BedLevelTools::viewer_print_value = false; #endif -bool BedLevelToolsClass::goto_mesh_value = false; -uint8_t BedLevelToolsClass::mesh_x = 0; -uint8_t BedLevelToolsClass::mesh_y = 0; -uint8_t BedLevelToolsClass::tilt_grid = 1; +bool BedLevelTools::goto_mesh_value = false; +uint8_t BedLevelTools::mesh_x = 0; +uint8_t BedLevelTools::mesh_y = 0; +uint8_t BedLevelTools::tilt_grid = 1; bool drawing_mesh = false; #if ENABLED(AUTO_BED_LEVELING_UBL) - void BedLevelToolsClass::manual_value_update(const uint8_t mesh_x, const uint8_t mesh_y, bool undefined/*=false*/) { + void BedLevelTools::manualValueUpdate(const uint8_t mesh_x, const uint8_t mesh_y, bool undefined/*=false*/) { MString cmd; cmd.set(F("M421 I"), mesh_x, 'J', mesh_y, 'Z', p_float_t(current_position.z, 3)); if (undefined) cmd += F(" N"); @@ -86,7 +86,7 @@ bool drawing_mesh = false; planner.synchronize(); } - bool BedLevelToolsClass::create_plane_from_mesh() { + bool BedLevelTools::createPlaneFromMesh() { struct linear_fit_data lsf_results; incremental_LSF_reset(&lsf_results); GRID_LOOP(x, y) { @@ -126,7 +126,7 @@ bool drawing_mesh = false; #else - void BedLevelToolsClass::manual_value_update(const uint8_t mesh_x, const uint8_t mesh_y) { + void BedLevelTools::manualValueUpdate(const uint8_t mesh_x, const uint8_t mesh_y) { gcode.process_subcommands_now( TS(F("G29 I"), mesh_x, 'J', mesh_y, 'Z', p_float_t(current_position.z, 3)) ); @@ -135,7 +135,7 @@ bool drawing_mesh = false; #endif -void BedLevelToolsClass::manual_move(const uint8_t mesh_x, const uint8_t mesh_y, bool zmove/*=false*/) { +void BedLevelTools::manualMove(const uint8_t mesh_x, const uint8_t mesh_y, bool zmove/*=false*/) { gcode.process_subcommands_now(F("G28O")); if (zmove) { planner.synchronize(); @@ -144,48 +144,48 @@ void BedLevelToolsClass::manual_move(const uint8_t mesh_x, const uint8_t mesh_y, planner.synchronize(); } else { - DWIN_Show_Popup(ICON_BLTouch, F("Moving to Point"), F("Please wait until done.")); - HMI_SaveProcessID(NothingToDo); + dwinShowPopup(ICON_BLTouch, F("Moving to Point"), F("Please wait until done.")); + hmiSaveProcessID(ID_NothingToDo); gcode.process_subcommands_now(TS(F("G0 F300 Z"), p_float_t(Z_CLEARANCE_BETWEEN_PROBES, 3))); gcode.process_subcommands_now(TS(F("G42 F4000 I"), mesh_x, F(" J"), mesh_y)); planner.synchronize(); current_position.z = goto_mesh_value ? bedlevel.z_values[mesh_x][mesh_y] : Z_CLEARANCE_BETWEEN_PROBES; planner.buffer_line(current_position, homing_feedrate(Z_AXIS), active_extruder); planner.synchronize(); - HMI_ReturnScreen(); + hmiReturnScreen(); } } // Move / Probe methods. As examples, not yet used. -void BedLevelToolsClass::MoveToXYZ() { - bedLevelTools.goto_mesh_value = true; - bedLevelTools.manual_move(bedLevelTools.mesh_x, bedLevelTools.mesh_y, false); +void BedLevelTools::moveToXYZ() { + goto_mesh_value = true; + manualMove(mesh_x, mesh_y, false); } -void BedLevelToolsClass::MoveToXY() { - bedLevelTools.goto_mesh_value = false; - bedLevelTools.manual_move(bedLevelTools.mesh_x, bedLevelTools.mesh_y, false); +void BedLevelTools::moveToXY() { + goto_mesh_value = false; + manualMove(mesh_x, mesh_y, false); } -void BedLevelToolsClass::MoveToZ() { - bedLevelTools.goto_mesh_value = true; - bedLevelTools.manual_move(bedLevelTools.mesh_x, bedLevelTools.mesh_y, true); +void BedLevelTools::moveToZ() { + goto_mesh_value = true; + manualMove(mesh_x, mesh_y, true); } -void BedLevelToolsClass::ProbeXY() { +void BedLevelTools::probeXY() { gcode.process_subcommands_now( MString( F("G28O\nG0Z"), uint16_t(Z_CLEARANCE_DEPLOY_PROBE), - F("\nG30X"), p_float_t(bedlevel.get_mesh_x(bedLevelTools.mesh_x), 2), - F("Y"), p_float_t(bedlevel.get_mesh_y(bedLevelTools.mesh_y), 2) + F("\nG30X"), p_float_t(bedlevel.get_mesh_x(mesh_x), 2), + F("Y"), p_float_t(bedlevel.get_mesh_y(mesh_y), 2) ) ); } -void BedLevelToolsClass::mesh_reset() { +void BedLevelTools::meshReset() { ZERO(bedlevel.z_values); TERN_(AUTO_BED_LEVELING_BILINEAR, bedlevel.refresh_bed_level()); } // Accessors -float BedLevelToolsClass::get_max_value() { +float BedLevelTools::getMaxValue() { float max = __FLT_MAX__ * -1; GRID_LOOP(x, y) { if (!isnan(bedlevel.z_values[x][y]) && bedlevel.z_values[x][y] > max) @@ -194,7 +194,7 @@ float BedLevelToolsClass::get_max_value() { return max; } -float BedLevelToolsClass::get_min_value() { +float BedLevelTools::getMinValue() { float min = __FLT_MAX__; GRID_LOOP(x, y) { if (!isnan(bedlevel.z_values[x][y]) && bedlevel.z_values[x][y] < min) @@ -204,7 +204,7 @@ float BedLevelToolsClass::get_min_value() { } // Return 'true' if mesh is good and within LCD limits -bool BedLevelToolsClass::meshvalidate() { +bool BedLevelTools::meshValidate() { GRID_LOOP(x, y) { const float v = bedlevel.z_values[x][y]; if (isnan(v) || !WITHIN(v, UBL_Z_OFFSET_MIN, UBL_Z_OFFSET_MAX)) return false; @@ -216,21 +216,21 @@ bool BedLevelToolsClass::meshvalidate() { constexpr uint8_t meshfont = TERN(TJC_DISPLAY, font8x16, font6x12); - void BedLevelToolsClass::Draw_Bed_Mesh(int16_t selected/*=-1*/, uint8_t gridline_width/*=1*/, uint16_t padding_x/*=8*/, uint16_t padding_y_top/*=(40 + 53 - 7)*/) { + void BedLevelTools::drawBedMesh(int16_t selected/*=-1*/, uint8_t gridline_width/*=1*/, uint16_t padding_x/*=8*/, uint16_t padding_y_top/*=(40 + 53 - 7)*/) { drawing_mesh = true; const uint16_t total_width_px = DWIN_WIDTH - padding_x - padding_x; const uint16_t cell_width_px = total_width_px / (GRID_MAX_POINTS_X); const uint16_t cell_height_px = total_width_px / (GRID_MAX_POINTS_Y); - const float v_max = abs(get_max_value()), v_min = abs(get_min_value()), range = _MAX(v_min, v_max); + const float v_max = abs(getMaxValue()), v_min = abs(getMinValue()), range = _MAX(v_min, v_max); // Clear background from previous selection and select new square - dwinDrawRectangle(1, Color_Bg_Black, _MAX(0, padding_x - gridline_width), _MAX(0, padding_y_top - gridline_width), padding_x + total_width_px, padding_y_top + total_width_px); + dwinDrawRectangle(1, COLOR_BG_BLACK, _MAX(0, padding_x - gridline_width), _MAX(0, padding_y_top - gridline_width), padding_x + total_width_px, padding_y_top + total_width_px); if (selected >= 0) { const auto selected_y = selected / (GRID_MAX_POINTS_X); const auto selected_x = selected - (GRID_MAX_POINTS_X) * selected_y; const auto start_y_px = padding_y_top + selected_y * cell_height_px; const auto start_x_px = padding_x + selected_x * cell_width_px; - dwinDrawRectangle(1, Color_White, _MAX(0, start_x_px - gridline_width), _MAX(0, start_y_px - gridline_width), start_x_px + cell_width_px, start_y_px + cell_height_px); + dwinDrawRectangle(1, COLOR_WHITE, _MAX(0, start_x_px - gridline_width), _MAX(0, start_y_px - gridline_width), start_x_px + cell_width_px, start_y_px + cell_height_px); } // Draw value square grid @@ -240,7 +240,7 @@ bool BedLevelToolsClass::meshvalidate() { const auto start_y_px = padding_y_top + ((GRID_MAX_POINTS_Y) - y - 1) * cell_height_px; const auto end_y_px = start_y_px + cell_height_px - 1 - gridline_width; dwinDrawRectangle(1, // RGB565 colors: http://www.barth-dev.de/online/rgb565-color-picker/ - isnan(bedlevel.z_values[x][y]) ? Color_Grey : ( // gray if undefined + isnan(bedlevel.z_values[x][y]) ? COLOR_GREY : ( // gray if undefined (bedlevel.z_values[x][y] < 0 ? (uint16_t)round(0x1F * -bedlevel.z_values[x][y] / (!viewer_asymmetric_range ? range : v_min)) << 11 : // red if mesh point value is negative (uint16_t)round(0x3F * bedlevel.z_values[x][y] / (!viewer_asymmetric_range ? range : v_max)) << 5) | // green if mesh point value is positive @@ -257,7 +257,7 @@ bool BedLevelToolsClass::meshvalidate() { if (viewer_print_value) { int8_t offset_x, offset_y = cell_height_px / 2 - fs; if (isnan(bedlevel.z_values[x][y])) { // undefined - dwinDrawString(false, meshfont, Color_White, Color_Bg_Blue, start_x_px + cell_width_px / 2 - 5, start_y_px + offset_y, F("X")); + dwinDrawString(false, meshfont, COLOR_WHITE, COLOR_BG_BLUE, start_x_px + cell_width_px / 2 - 5, start_y_px + offset_y, F("X")); } else { // has value if (GRID_MAX_POINTS_X < (ENABLED(TJC_DISPLAY) ? 8 : 10)) @@ -266,8 +266,8 @@ bool BedLevelToolsClass::meshvalidate() { sprintf_P(buf, PSTR("%02i"), (uint16_t)(abs(bedlevel.z_values[x][y] - (int16_t)bedlevel.z_values[x][y]) * 100)); offset_x = cell_width_px / 2 - (fs/2) * (strlen(buf)) - 2; if (!(GRID_MAX_POINTS_X < (ENABLED(TJC_DISPLAY) ? 8 : 10))) - dwinDrawString(false, meshfont, Color_White, Color_Bg_Blue, start_x_px - 2 + offset_x, start_y_px + offset_y, F(".")); - dwinDrawString(false, meshfont, Color_White, Color_Bg_Blue, start_x_px + 1 + offset_x, start_y_px + offset_y, buf); + dwinDrawString(false, meshfont, COLOR_WHITE, COLOR_BG_BLUE, start_x_px - 2 + offset_x, start_y_px + offset_y, F(".")); + dwinDrawString(false, meshfont, COLOR_WHITE, COLOR_BG_BLUE, start_x_px + 1 + offset_x, start_y_px + offset_y, buf); } safe_delay(10); LCD_SERIAL.flushTX(); @@ -275,8 +275,8 @@ bool BedLevelToolsClass::meshvalidate() { } } - void BedLevelToolsClass::Set_Mesh_Viewer_Status() { // TODO: draw gradient with values as a legend instead - float v_max = abs(get_max_value()), v_min = abs(get_min_value()), range = _MAX(v_min, v_max); + void BedLevelTools::setMeshViewerStatus() { // TODO: draw gradient with values as a legend instead + float v_max = abs(getMaxValue()), v_min = abs(getMinValue()), range = _MAX(v_min, v_max); if (v_min > 3e+10f) v_min = 0.0000001; if (v_max > 3e+10f) v_max = 0.0000001; if (range > 3e+10f) range = 0.0000001; diff --git a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.h b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.h index 67beddec613e..2e9b66aa30d2 100644 --- a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.h +++ b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.h @@ -50,36 +50,35 @@ #define UBL_Z_OFFSET_MIN -3.0 #define UBL_Z_OFFSET_MAX 3.0 -class BedLevelToolsClass { +class BedLevelTools { public: #if ENABLED(USE_GRID_MESHVIEWER) static bool viewer_asymmetric_range; static bool viewer_print_value; #endif static bool goto_mesh_value; - static uint8_t mesh_x; - static uint8_t mesh_y; + static uint8_t mesh_x, mesh_y; static uint8_t tilt_grid; #if ENABLED(AUTO_BED_LEVELING_UBL) - static void manual_value_update(const uint8_t mesh_x, const uint8_t mesh_y, bool undefined=false); - static bool create_plane_from_mesh(); + static void manualValueUpdate(const uint8_t mesh_x, const uint8_t mesh_y, bool undefined=false); + static bool createPlaneFromMesh(); #else - static void manual_value_update(const uint8_t mesh_x, const uint8_t mesh_y); + static void manualValueUpdate(const uint8_t mesh_x, const uint8_t mesh_y); #endif - static void manual_move(const uint8_t mesh_x, const uint8_t mesh_y, bool zmove=false); - static void MoveToXYZ(); - static void MoveToXY(); - static void MoveToZ(); - static void ProbeXY(); - static void mesh_reset(); - static float get_max_value(); - static float get_min_value(); - static bool meshvalidate(); + static void manualMove(const uint8_t mesh_x, const uint8_t mesh_y, bool zmove=false); + static void moveToXYZ(); + static void moveToXY(); + static void moveToZ(); + static void probeXY(); + static void meshReset(); + static float getMaxValue(); + static float getMinValue(); + static bool meshValidate(); #if ENABLED(USE_GRID_MESHVIEWER) - static void Draw_Bed_Mesh(int16_t selected=-1, uint8_t gridline_width=1, uint16_t padding_x=8, uint16_t padding_y_top=(40 + 53 - 7)); - static void Set_Mesh_Viewer_Status(); + static void drawBedMesh(int16_t selected=-1, uint8_t gridline_width=1, uint16_t padding_x=8, uint16_t padding_y_top=(40 + 53 - 7)); + static void setMeshViewerStatus(); #endif }; -extern BedLevelToolsClass bedLevelTools; +extern BedLevelTools bedLevelTools; diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index 51a53741ef3c..2e4047e05f45 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -117,7 +117,7 @@ #include "endstop_diag.h" #endif -#if SHOW_TUNING_GRAPH +#if PROUI_TUNING_GRAPH #include "plot.h" #endif @@ -175,9 +175,9 @@ #endif // Structs -HMI_value_t HMI_value; -HMI_flag_t hmiFlag{0}; -HMI_data_t HMI_data; +hmi_value_t hmiValue; +hmi_flag_t hmiFlag{0}; +hmi_data_t hmiData; enum SelectItem : uint8_t { PAGE_PRINT = 0, @@ -208,110 +208,110 @@ select_t select_page{0}, select_print{0}; bool hash_changed = true; // Flag to know if message status was changed bool blink = false; -uint8_t checkkey = 255, last_checkkey = MainMenu; +uint8_t checkkey = 255, last_checkkey = ID_MainMenu; // New menu system pointers -MenuClass *FileMenu = nullptr; -MenuClass *PrepareMenu = nullptr; +Menu *fileMenu = nullptr; +Menu *prepareMenu = nullptr; #if ENABLED(LCD_BED_TRAMMING) - MenuClass *TrammingMenu = nullptr; + Menu *trammingMenu = nullptr; #endif -MenuClass *MoveMenu = nullptr; -MenuClass *ControlMenu = nullptr; -MenuClass *AdvancedSettings = nullptr; +Menu *moveMenu = nullptr; +Menu *ControlMenu = nullptr; +Menu *AdvancedSettings = nullptr; #if HAS_HOME_OFFSET - MenuClass *HomeOffMenu = nullptr; + Menu *homeOffsetMenu = nullptr; #endif #if HAS_BED_PROBE - MenuClass *ProbeSetMenu = nullptr; -#endif -MenuClass *FilSetMenu = nullptr; -MenuClass *SelectColorMenu = nullptr; -MenuClass *GetColorMenu = nullptr; -MenuClass *TuneMenu = nullptr; -MenuClass *MotionMenu = nullptr; -MenuClass *FilamentMenu = nullptr; + Menu *ProbeSetMenu = nullptr; +#endif +Menu *filSetMenu = nullptr; +Menu *selectColorMenu = nullptr; +Menu *getColorMenu = nullptr; +Menu *tuneMenu = nullptr; +Menu *motionMenu = nullptr; +Menu *filamentMenu = nullptr; #if ENABLED(MESH_BED_LEVELING) - MenuClass *ManualMesh = nullptr; + Menu *manualMesh = nullptr; #endif #if HAS_PREHEAT - MenuClass *PreheatMenu = nullptr; - MenuClass *PreheatHotendMenu = nullptr; + Menu *preheatMenu = nullptr; + Menu *preheatHotendMenu = nullptr; #endif -MenuClass *TemperatureMenu = nullptr; -MenuClass *MaxSpeedMenu = nullptr; -MenuClass *MaxAccelMenu = nullptr; +Menu *temperatureMenu = nullptr; +Menu *maxSpeedMenu = nullptr; +Menu *maxAccelMenu = nullptr; #if HAS_CLASSIC_JERK - MenuClass *MaxJerkMenu = nullptr; + Menu *maxJerkMenu = nullptr; #endif -MenuClass *StepsMenu = nullptr; +Menu *stepsMenu = nullptr; #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) - MenuClass *HotendMPCMenu = nullptr; + Menu *hotendMPCMenu = nullptr; #endif #if ENABLED(PIDTEMP) && ANY(PID_EDIT_MENU, PID_AUTOTUNE_MENU) - MenuClass *HotendPIDMenu = nullptr; + Menu *hotendPIDMenu = nullptr; #endif #if ENABLED(PIDTEMPBED) && ANY(PID_EDIT_MENU, PID_AUTOTUNE_MENU) - MenuClass *BedPIDMenu = nullptr; + Menu *bedPIDMenu = nullptr; #endif #if ENABLED(CASELIGHT_USES_BRIGHTNESS) - MenuClass *CaseLightMenu = nullptr; + Menu *caseLightMenu = nullptr; #endif #if ENABLED(LED_CONTROL_MENU) - MenuClass *LedControlMenu = nullptr; + Menu *ledControlMenu = nullptr; #endif #if HAS_BED_PROBE - MenuClass *ZOffsetWizMenu = nullptr; + Menu *zOffsetWizMenu = nullptr; #endif #if ENABLED(INDIVIDUAL_AXIS_HOMING_SUBMENU) - MenuClass *HomingMenu = nullptr; + Menu *homingMenu = nullptr; #endif #if ENABLED(FWRETRACT) - MenuClass *FWRetractMenu = nullptr; + Menu *fwRetractMenu = nullptr; #endif #if HAS_MESH - MenuClass *MeshMenu = nullptr; + Menu *meshMenu = nullptr; #if ENABLED(MESH_EDIT_MENU) - MenuClass *EditMeshMenu = nullptr; + Menu *editMeshMenu = nullptr; #endif #endif #if ENABLED(SHAPING_MENU) - MenuClass *InputShapingMenu = nullptr; + Menu *inputShapingMenu = nullptr; #endif #if HAS_TRINAMIC_CONFIG - MenuClass *TrinamicConfigMenu = nullptr; + Menu *trinamicConfigMenu = nullptr; #endif // Updatable menuitems pointers -MenuItemClass *HotendTargetItem = nullptr; -MenuItemClass *BedTargetItem = nullptr; -MenuItemClass *FanSpeedItem = nullptr; -MenuItemClass *MMeshMoveZItem = nullptr; -MenuItemClass *EditZValueItem = nullptr; +MenuItem *hotendTargetItem = nullptr; +MenuItem *bedTargetItem = nullptr; +MenuItem *fanSpeedItem = nullptr; +MenuItem *mMeshMoveZItem = nullptr; +MenuItem *editZValueItem = nullptr; -bool Printing() { return printingIsActive() || printingIsPaused(); } -bool SD_Printing() { return Printing() && IS_SD_FILE_OPEN(); } -bool Host_Printing() { return Printing() && !IS_SD_FILE_OPEN(); } +bool isPrinting() { return printingIsActive() || printingIsPaused(); } +bool sdPrinting() { return isPrinting() && IS_SD_FILE_OPEN(); } +bool Host_Printing() { return isPrinting() && !IS_SD_FILE_OPEN(); } #define DWIN_LANGUAGE_EEPROM_ADDRESS 0x01 // Between 0x01 and 0x63 (EEPROM_OFFSET-1) // BL24CXX::check() uses 0x00 -inline bool HMI_IsChinese() { return hmiFlag.language == DWIN_CHINESE; } +inline bool hmiIsChinese() { return hmiFlag.language == DWIN_CHINESE; } -void HMI_SetLanguageCache() { - dwinJPGCacheTo1(HMI_IsChinese() ? Language_Chinese : Language_English); +void hmiSetLanguageCache() { + dwinJPGCacheTo1(hmiIsChinese() ? Language_Chinese : Language_English); } -void HMI_SetLanguage() { +void hmiSetLanguage() { #if ALL(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) BL24CXX::read(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&hmiFlag.language, sizeof(hmiFlag.language)); #endif - HMI_SetLanguageCache(); + hmiSetLanguageCache(); } -void HMI_ToggleLanguage() { - hmiFlag.language = HMI_IsChinese() ? DWIN_ENGLISH : DWIN_CHINESE; - HMI_SetLanguageCache(); +void hmiToggleLanguage() { + hmiFlag.language = hmiIsChinese() ? DWIN_ENGLISH : DWIN_CHINESE; + hmiSetLanguageCache(); #if ALL(EEPROM_SETTINGS, IIC_BL24CXX_EEPROM) BL24CXX::write(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&hmiFlag.language, sizeof(hmiFlag.language)); #endif @@ -324,15 +324,15 @@ void HMI_ToggleLanguage() { typedef struct { uint16_t x, y[2], w, h; } text_info_t; void ICON_Button(const bool selected, const int iconid, const frame_rect_t &ico, const text_info_t (&txt), FSTR_P caption) { - DWINUI::Draw_IconWB(iconid + selected, ico.x, ico.y); - if (selected) DWINUI::Draw_Box(0, HMI_data.Highlight_Color, ico); - if (HMI_IsChinese()) { - DWIN_Frame_AreaCopy(1, txt.x, txt.y[selected], txt.x + txt.w - 1, txt.y[selected] + txt.h - 1, ico.x + (ico.w - txt.w) / 2, (ico.y + ico.h - 25) - txt.h/2); + DWINUI::drawIconWB(iconid + selected, ico.x, ico.y); + if (selected) DWINUI::drawBox(0, hmiData.colorHighlight, ico); + if (hmiIsChinese()) { + dwinFrameAreaCopy(1, txt.x, txt.y[selected], txt.x + txt.w - 1, txt.y[selected] + txt.h - 1, ico.x + (ico.w - txt.w) / 2, (ico.y + ico.h - 25) - txt.h/2); } else { const uint16_t x = ico.x + (ico.w - strlen_P(FTOP(caption)) * DWINUI::fontWidth()) / 2, y = (ico.y + ico.h - 20) - DWINUI::fontHeight() / 2; - DWINUI::Draw_String(x, y, caption); + DWINUI::drawString(x, y, caption); } } @@ -409,83 +409,83 @@ void ICON_Stop() { } // -//PopUps +// PopUps // -void Popup_window_PauseOrStop() { - if (HMI_IsChinese()) { - DWINUI::ClearMainArea(); - Draw_Popup_Bkgd(); - if (select_print.now == PRINT_PAUSE_RESUME) DWIN_Frame_AreaCopy(1, 237, 338, 269, 356, 98, 150); - else if (select_print.now == PRINT_STOP) DWIN_Frame_AreaCopy(1, 221, 320, 253, 336, 98, 150); - DWIN_Frame_AreaCopy(1, 220, 304, 264, 319, 130, 150); - DWINUI::Draw_IconWB(ICON_Confirm_C, 26, 280); - DWINUI::Draw_IconWB(ICON_Cancel_C, 146, 280); - Draw_Select_Highlight(true); +void popupPauseOrStop() { + if (hmiIsChinese()) { + DWINUI::clearMainArea(); + drawPopupBkgd(); + if (select_print.now == PRINT_PAUSE_RESUME) dwinFrameAreaCopy(1, 237, 338, 269, 356, 98, 150); + else if (select_print.now == PRINT_STOP) dwinFrameAreaCopy(1, 221, 320, 253, 336, 98, 150); + dwinFrameAreaCopy(1, 220, 304, 264, 319, 130, 150); + DWINUI::drawIconWB(ICON_Confirm_C, 26, 280); + DWINUI::drawIconWB(ICON_Cancel_C, 146, 280); + drawSelectHighlight(true); dwinUpdateLCD(); } else - DWIN_Popup_ConfirmCancel(ICON_BLTouch, select_print.now == PRINT_PAUSE_RESUME ? GET_TEXT_F(MSG_PAUSE_PRINT) : GET_TEXT_F(MSG_STOP_PRINT)); + dwinPopupConfirmCancel(ICON_BLTouch, select_print.now == PRINT_PAUSE_RESUME ? GET_TEXT_F(MSG_PAUSE_PRINT) : GET_TEXT_F(MSG_STOP_PRINT)); } #if HAS_HOTEND - void Popup_Window_ETempTooLow() { - if (HMI_IsChinese()) { - HMI_SaveProcessID(WaitResponse); - DWINUI::ClearMainArea(); - Draw_Popup_Bkgd(); - DWINUI::Draw_Icon(ICON_TempTooLow, 102, 105); - DWIN_Frame_AreaCopy(1, 103, 371, 136, 386, 69, 240); - DWIN_Frame_AreaCopy(1, 170, 371, 270, 386, 102, 240); - DWINUI::Draw_IconWB(ICON_Confirm_C, 86, 280); + void popupETempTooLow() { + if (hmiIsChinese()) { + hmiSaveProcessID(ID_WaitResponse); + DWINUI::clearMainArea(); + drawPopupBkgd(); + DWINUI::drawIcon(ICON_TempTooLow, 102, 105); + dwinFrameAreaCopy(1, 103, 371, 136, 386, 69, 240); + dwinFrameAreaCopy(1, 170, 371, 270, 386, 102, 240); + DWINUI::drawIconWB(ICON_Confirm_C, 86, 280); dwinUpdateLCD(); } else - DWIN_Popup_Confirm(ICON_TempTooLow, GET_TEXT_F(MSG_HOTEND_TOO_COLD), GET_TEXT_F(MSG_PLEASE_PREHEAT)); + dwinPopupConfirm(ICON_TempTooLow, GET_TEXT_F(MSG_HOTEND_TOO_COLD), GET_TEXT_F(MSG_PLEASE_PREHEAT)); } #endif #if HAS_HOTEND || HAS_HEATED_BED void dwinPopupTemperature(const bool toohigh) { - HMI_SaveProcessID(WaitResponse); - if (HMI_IsChinese()) { - DWINUI::ClearMainArea(); - Draw_Popup_Bkgd(); + hmiSaveProcessID(ID_WaitResponse); + if (hmiIsChinese()) { + DWINUI::clearMainArea(); + drawPopupBkgd(); if (toohigh) { - DWINUI::Draw_Icon(ICON_TempTooHigh, 102, 165); - DWIN_Frame_AreaCopy(1, 103, 371, 237, 386, 52, 285); - DWIN_Frame_AreaCopy(1, 151, 389, 185, 402, 187, 285); - DWIN_Frame_AreaCopy(1, 189, 389, 271, 402, 95, 310); + DWINUI::drawIcon(ICON_TempTooHigh, 102, 165); + dwinFrameAreaCopy(1, 103, 371, 237, 386, 52, 285); + dwinFrameAreaCopy(1, 151, 389, 185, 402, 187, 285); + dwinFrameAreaCopy(1, 189, 389, 271, 402, 95, 310); } else { - DWINUI::Draw_Icon(ICON_TempTooLow, 102, 165); - DWIN_Frame_AreaCopy(1, 103, 371, 270, 386, 52, 285); - DWIN_Frame_AreaCopy(1, 189, 389, 271, 402, 95, 310); + DWINUI::drawIcon(ICON_TempTooLow, 102, 165); + dwinFrameAreaCopy(1, 103, 371, 270, 386, 52, 285); + dwinFrameAreaCopy(1, 189, 389, 271, 402, 95, 310); } } else - DWIN_Show_Popup(toohigh ? ICON_TempTooHigh : ICON_TempTooLow, F("Nozzle or Bed temperature"), toohigh ? F("is too high") : F("is too low"), BTN_Continue); + dwinShowPopup(toohigh ? ICON_TempTooHigh : ICON_TempTooLow, F("Nozzle or Bed temperature"), toohigh ? F("is too high") : F("is too low"), BTN_Continue); } #endif // // Draw status line // -void DWIN_DrawStatusLine(const char *text) { - dwinDrawRectangle(1, HMI_data.StatusBg_Color, 0, STATUS_Y, DWIN_WIDTH, STATUS_Y + 20); - if (text) DWINUI::Draw_CenteredString(HMI_data.StatusTxt_Color, STATUS_Y + 2, text); +void dwinDrawStatusLine(const char *text) { + dwinDrawRectangle(1, hmiData.colorStatusBg, 0, STATUS_Y, DWIN_WIDTH, STATUS_Y + 20); + if (text) DWINUI::drawCenteredString(hmiData.colorStatusTxt, STATUS_Y + 2, text); } -void DWIN_DrawStatusLine(FSTR_P fstr) { DWIN_DrawStatusLine(FTOP(fstr)); } +void dwinDrawStatusLine(FSTR_P fstr) { dwinDrawStatusLine(FTOP(fstr)); } // Clear & reset status line -void DWIN_ResetStatusLine() { +void dwinResetStatusLine() { ui.status_message.clear(); - DWIN_CheckStatusMessage(); + dwinCheckStatusMessage(); } // Djb2 hash algorithm -uint32_t GetHash(char * str) { +uint32_t getHash(char * str) { uint32_t hash = 5381; char c; while ((c = *str++)) hash = ((hash << 5) + hash) + c; /* hash * 33 + c */ @@ -493,14 +493,14 @@ uint32_t GetHash(char * str) { } // Check for a change in the status message -void DWIN_CheckStatusMessage() { +void dwinCheckStatusMessage() { static MString<>::hash_t old_hash = 0x0000; const MString<>::hash_t hash = ui.status_message.hash(); hash_changed = hash != old_hash; old_hash = hash; } -void DWIN_DrawStatusMessage() { +void dwinDrawStatusMessage() { #if ENABLED(STATUS_MESSAGE_SCROLLING) // Get the UTF8 character count of the string @@ -509,7 +509,7 @@ void DWIN_DrawStatusMessage() { // If the string fits the status line do not scroll it if (slen <= LCD_WIDTH) { if (hash_changed) { - DWIN_DrawStatusLine(ui.status_message); + dwinDrawStatusLine(ui.status_message); hash_changed = false; } } @@ -520,18 +520,18 @@ void DWIN_DrawStatusMessage() { // and the string remaining length uint8_t rlen; const char *stat = MarlinUI::status_and_len(rlen); - dwinDrawRectangle(1, HMI_data.StatusBg_Color, 0, STATUS_Y, DWIN_WIDTH, STATUS_Y + 20); - DWINUI::MoveTo(0, STATUS_Y + 2); - DWINUI::Draw_String(HMI_data.StatusTxt_Color, stat, LCD_WIDTH); + dwinDrawRectangle(1, hmiData.colorStatusBg, 0, STATUS_Y, DWIN_WIDTH, STATUS_Y + 20); + DWINUI::moveTo(0, STATUS_Y + 2); + DWINUI::drawString(hmiData.colorStatusTxt, stat, LCD_WIDTH); // If the string doesn't completely fill the line... if (rlen < LCD_WIDTH) { - DWINUI::Draw_Char(HMI_data.StatusTxt_Color, '.'); // Always at 1+ spaces left, draw a dot + DWINUI::drawChar(hmiData.colorStatusTxt, '.'); // Always at 1+ spaces left, draw a dot uint8_t chars = LCD_WIDTH - rlen; // Amount of space left in characters if (--chars) { // Draw a second dot if there's space - DWINUI::Draw_Char(HMI_data.StatusTxt_Color, '.'); + DWINUI::drawChar(hmiData.colorStatusTxt, '.'); if (--chars) - DWINUI::Draw_String(HMI_data.StatusTxt_Color, ui.status_message, chars); // Print a second copy of the message + DWINUI::drawString(hmiData.colorStatusTxt, ui.status_message, chars); // Print a second copy of the message } } MarlinUI::advance_status_scroll(); @@ -541,147 +541,147 @@ void DWIN_DrawStatusMessage() { if (hash_changed) { ui.status_message.trunc(LCD_WIDTH); - DWIN_DrawStatusLine(ui.status_message); + dwinDrawStatusLine(ui.status_message); hash_changed = false; } #endif } -void Draw_Print_Labels() { - if (HMI_IsChinese()) { - DWIN_Frame_AreaCopy(1, 0, 72, 63, 86, 41, 173); // Printing Time - DWIN_Frame_AreaCopy(1, 65, 72, 128, 86, 176, 173); // Remain +void drawPrintLabels() { + if (hmiIsChinese()) { + dwinFrameAreaCopy(1, 0, 72, 63, 86, 41, 173); // Printing Time + dwinFrameAreaCopy(1, 65, 72, 128, 86, 176, 173); // Remain } else { - DWINUI::Draw_String( 46, 173, GET_TEXT_F(MSG_INFO_PRINT_TIME)); - DWINUI::Draw_String(181, 173, GET_TEXT_F(MSG_REMAINING_TIME)); + DWINUI::drawString( 46, 173, GET_TEXT_F(MSG_INFO_PRINT_TIME)); + DWINUI::drawString(181, 173, GET_TEXT_F(MSG_REMAINING_TIME)); } } -void Draw_Print_ProgressBar() { +void drawPrintProgressBar() { const uint8_t _percent_done = ui.get_progress_percent(); - DWINUI::Draw_IconWB(ICON_Bar, 15, 93); - dwinDrawRectangle(1, HMI_data.Barfill_Color, 16 + _percent_done * 240 / 100, 93, 256, 113); - DWINUI::Draw_Int(HMI_data.PercentTxt_Color, HMI_data.Background_Color, 3, 117, 133, _percent_done); - DWINUI::Draw_String(HMI_data.PercentTxt_Color, 142, 133, F("%")); + DWINUI::drawIconWB(ICON_Bar, 15, 93); + dwinDrawRectangle(1, hmiData.colorBarfill, 16 + _percent_done * 240 / 100, 93, 256, 113); + DWINUI::drawInt(hmiData.colorPercentTxt, hmiData.colorBackground, 3, 117, 133, _percent_done); + DWINUI::drawString(hmiData.colorPercentTxt, 142, 133, F("%")); } -void Draw_Print_ProgressElapsed() { +void drawPrintProgressElapsed() { MString<12> buf; duration_t elapsed = print_job_timer.duration(); // Print timer buf.setf(F("%02i:%02i "), uint16_t(elapsed.value / 3600), (uint16_t(elapsed.value) % 3600) / 60); - DWINUI::Draw_String(HMI_data.Text_Color, HMI_data.Background_Color, 47, 192, buf); + DWINUI::drawString(hmiData.colorText, hmiData.colorBackground, 47, 192, buf); } #if ENABLED(SHOW_REMAINING_TIME) - void Draw_Print_ProgressRemain() { + void drawPrintProgressRemain() { MString<12> buf; buf.setf(F("%02i:%02i "), _remain_time / 3600, (_remain_time % 3600) / 60); - DWINUI::Draw_String(HMI_data.Text_Color, HMI_data.Background_Color, 181, 192, buf); + DWINUI::drawString(hmiData.colorText, hmiData.colorBackground, 181, 192, buf); } #endif void ICON_ResumeOrPause() { - if (checkkey == PrintProcess) (print_job_timer.isPaused() || hmiFlag.pause_flag) ? ICON_Resume() : ICON_Pause(); + if (checkkey == ID_PrintProcess) (print_job_timer.isPaused() || hmiFlag.pause_flag) ? ICON_Resume() : ICON_Pause(); } // Update filename on print -void DWIN_Print_Header(const char *text = nullptr) { +void dwinPrintHeader(const char *text = nullptr) { static char headertxt[31] = ""; // Print header text if (text) { const int8_t size = _MIN(30U, strlen_P(text)); for (uint8_t i = 0; i < size; ++i) headertxt[i] = text[i]; headertxt[size] = '\0'; } - if (checkkey == PrintProcess || checkkey == PrintDone) { - dwinDrawRectangle(1, HMI_data.Background_Color, 0, 60, DWIN_WIDTH, 60+16); - DWINUI::Draw_CenteredString(60, headertxt); + if (checkkey == ID_PrintProcess || checkkey == ID_PrintDone) { + dwinDrawRectangle(1, hmiData.colorBackground, 0, 60, DWIN_WIDTH, 60+16); + DWINUI::drawCenteredString(60, headertxt); } } -void Draw_PrintProcess() { - if (HMI_IsChinese()) - Title.FrameCopy(30, 1, 42, 14); // "Printing" +void drawPrintProcess() { + if (hmiIsChinese()) + title.frameCopy(30, 1, 42, 14); // "Printing" else - Title.ShowCaption(GET_TEXT_F(MSG_PRINTING)); - DWINUI::ClearMainArea(); - DWIN_Print_Header(nullptr); - Draw_Print_Labels(); - DWINUI::Draw_Icon(ICON_PrintTime, 15, 173); - DWINUI::Draw_Icon(ICON_RemainTime, 150, 171); - Draw_Print_ProgressBar(); - Draw_Print_ProgressElapsed(); - TERN_(SHOW_REMAINING_TIME, Draw_Print_ProgressRemain()); + title.showCaption(GET_TEXT_F(MSG_PRINTING)); + DWINUI::clearMainArea(); + dwinPrintHeader(nullptr); + drawPrintLabels(); + DWINUI::drawIcon(ICON_PrintTime, 15, 173); + DWINUI::drawIcon(ICON_RemainTime, 150, 171); + drawPrintProgressBar(); + drawPrintProgressElapsed(); + TERN_(SHOW_REMAINING_TIME, drawPrintProgressRemain()); ICON_Tune(); ICON_ResumeOrPause(); ICON_Stop(); } -void Goto_PrintProcess() { - if (checkkey == PrintProcess) +void gotoPrintProcess() { + if (checkkey == ID_PrintProcess) ICON_ResumeOrPause(); else { - checkkey = PrintProcess; - Draw_PrintProcess(); - TERN_(DASH_REDRAW, DWIN_RedrawDash()); + checkkey = ID_PrintProcess; + drawPrintProcess(); + TERN_(DASH_REDRAW, dwinRedrawDash()); } dwinUpdateLCD(); } -void Draw_PrintDone() { +void drawPrintDone() { TERN_(SET_PROGRESS_PERCENT, ui.set_progress_done()); TERN_(SET_REMAINING_TIME, ui.reset_remaining_time()); - Title.ShowCaption(GET_TEXT_F(MSG_PRINT_DONE)); - DWINUI::ClearMainArea(); - DWIN_Print_Header(nullptr); + title.showCaption(GET_TEXT_F(MSG_PRINT_DONE)); + DWINUI::clearMainArea(); + dwinPrintHeader(nullptr); #if HAS_GCODE_PREVIEW const bool haspreview = Preview_Valid(); if (haspreview) { Preview_Show(); - DWINUI::Draw_Button(BTN_Continue, 86, 295); + DWINUI::drawButton(BTN_Continue, 86, 295); } #else constexpr bool haspreview = false; #endif if (!haspreview) { - Draw_Print_ProgressBar(); - Draw_Print_Labels(); - DWINUI::Draw_Icon(ICON_PrintTime, 15, 173); - DWINUI::Draw_Icon(ICON_RemainTime, 150, 171); - Draw_Print_ProgressElapsed(); - TERN_(SHOW_REMAINING_TIME, Draw_Print_ProgressRemain()); - DWINUI::Draw_Button(BTN_Continue, 86, 273); + drawPrintProgressBar(); + drawPrintLabels(); + DWINUI::drawIcon(ICON_PrintTime, 15, 173); + DWINUI::drawIcon(ICON_RemainTime, 150, 171); + drawPrintProgressElapsed(); + TERN_(SHOW_REMAINING_TIME, drawPrintProgressRemain()); + DWINUI::drawButton(BTN_Continue, 86, 273); } } -void Goto_PrintDone() { +void gotoPrintDone() { wait_for_user = true; - if (checkkey != PrintDone) { - checkkey = PrintDone; - Draw_PrintDone(); + if (checkkey != ID_PrintDone) { + checkkey = ID_PrintDone; + drawPrintDone(); dwinUpdateLCD(); } } -void Draw_Main_Menu() { - DWINUI::ClearMainArea(); - if (HMI_IsChinese()) - Title.FrameCopy(2, 2, 26, 13); // "Home" etc +void drawMainMenu() { + DWINUI::clearMainArea(); + if (hmiIsChinese()) + title.frameCopy(2, 2, 26, 13); // "Home" etc else - Title.ShowCaption(MACHINE_NAME); - DWINUI::Draw_Icon(ICON_LOGO, 71, 52); // CREALITY logo + title.showCaption(MACHINE_NAME); + DWINUI::drawIcon(ICON_LOGO, 71, 52); // CREALITY logo ICON_Print(); ICON_Prepare(); ICON_Control(); ICON_AdvSettings(); } -void Goto_Main_Menu() { - if (checkkey == MainMenu) return; - checkkey = MainMenu; - Draw_Main_Menu(); +void gotoMainMenu() { + if (checkkey == ID_MainMenu) return; + checkkey = ID_MainMenu; + drawMainMenu(); dwinUpdateLCD(); } @@ -706,74 +706,74 @@ void _update_axis_value(const AxisEnum axis, const uint16_t x, const uint16_t y, if (force || changed || draw_qmark || draw_empty) { if (blink && draw_qmark) - DWINUI::Draw_String(HMI_data.Coordinate_Color, HMI_data.Background_Color, x, y, F(" - ? -")); + DWINUI::drawString(hmiData.colorCoordinate, hmiData.colorBackground, x, y, F(" - ? -")); else if (blink && draw_empty) - DWINUI::Draw_String(HMI_data.Coordinate_Color, HMI_data.Background_Color, x, y, F(" ")); + DWINUI::drawString(hmiData.colorCoordinate, hmiData.colorBackground, x, y, F(" ")); else - DWINUI::Draw_Signed_Float(HMI_data.Coordinate_Color, HMI_data.Background_Color, 3, 2, x, y, p); + DWINUI::drawSignedFloat(hmiData.colorCoordinate, hmiData.colorBackground, 3, 2, x, y, p); } } -void _draw_iconblink(bool &flag, const bool sensor, const uint8_t icon1, const uint8_t icon2, const uint16_t x, const uint16_t y) { +void _drawIconBlink(bool &flag, const bool sensor, const uint8_t icon1, const uint8_t icon2, const uint16_t x, const uint16_t y) { #if DISABLED(NO_BLINK_IND) if (flag != sensor) { flag = sensor; if (!flag) { - dwinDrawBox(1, HMI_data.Background_Color, x, y, 20, 20); - DWINUI::Draw_Icon(icon1, x, y); + dwinDrawBox(1, hmiData.colorBackground, x, y, 20, 20); + DWINUI::drawIcon(icon1, x, y); } } if (flag) { - dwinDrawBox(1, blink ? HMI_data.SplitLine_Color : HMI_data.Background_Color, x, y, 20, 20); - DWINUI::Draw_Icon(icon2, x, y); + dwinDrawBox(1, blink ? hmiData.colorSplitLine : hmiData.colorBackground, x, y, 20, 20); + DWINUI::drawIcon(icon2, x, y); } #else if (flag != sensor) { flag = sensor; - dwinDrawBox(1, HMI_data.Background_Color, x, y, 20, 20); - DWINUI::Draw_Icon(flag ? icon2 : icon1, x, y); + dwinDrawBox(1, hmiData.colorBackground, x, y, 20, 20); + DWINUI::drawIcon(flag ? icon2 : icon1, x, y); } #endif } -void _draw_ZOffsetIcon() { +void _drawZOffsetIcon() { #if HAS_LEVELING static bool _leveling_active = false; - _draw_iconblink(_leveling_active, planner.leveling_active, ICON_Zoffset, ICON_SetZOffset, 186, 416); + _drawIconBlink(_leveling_active, planner.leveling_active, ICON_Zoffset, ICON_SetZOffset, 186, 416); #else - DWINUI::Draw_Icon(ICON_Zoffset, 187, 416); + DWINUI::drawIcon(ICON_Zoffset, 187, 416); #endif } -void _draw_feedrate() { +void _drawFeedrate() { #if ENABLED(SHOW_SPEED_IND) int16_t _value; if (blink) { _value = feedrate_percentage; - DWINUI::Draw_String(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 116 + 4 * STAT_CHR_W + 2, 384, F(" %")); + DWINUI::drawString(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 116 + 4 * STAT_CHR_W + 2, 384, F(" %")); } else { _value = CEIL(feedrate_mm_s * feedrate_percentage / 100); - dwinDrawBox(1, HMI_data.Background_Color, 116 + 5 * STAT_CHR_W + 2, 384, 20, 20); + dwinDrawBox(1, hmiData.colorBackground, 116 + 5 * STAT_CHR_W + 2, 384, 20, 20); } - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 116 + 2 * STAT_CHR_W, 384, _value); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 116 + 2 * STAT_CHR_W, 384, _value); #else static int16_t _feedrate = 100; if (_feedrate != feedrate_percentage) { _feedrate = feedrate_percentage; - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 116 + 2 * STAT_CHR_W, 384, _feedrate); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 116 + 2 * STAT_CHR_W, 384, _feedrate); } #endif } -void _draw_xyz_position(const bool force) { +void _drawXYZPosition(const bool force) { _update_axis_value(X_AXIS, 27, 459, force); _update_axis_value(Y_AXIS, 112, 459, force); _update_axis_value(Z_AXIS, 197, 459, force); } -void update_variable() { - _draw_xyz_position(false); +void updateVariable() { + _drawXYZPosition(false); #if HAS_HOTEND static celsius_t _hotendtemp = 0, _hotendtarget = 0; const celsius_t hc = thermalManager.wholeDegHotend(0), @@ -798,49 +798,49 @@ void update_variable() { if (_new_fanspeed) _fanspeed = thermalManager.fan_speed[0]; #endif - if (IsMenu(TuneMenu) || IsMenu(TemperatureMenu)) { + if (isMenu(tuneMenu) || isMenu(temperatureMenu)) { // Tune page temperature update - TERN_(HAS_HOTEND, if (_new_hotend_target) HotendTargetItem->redraw()); - TERN_(HAS_HEATED_BED, if (_new_bed_target) BedTargetItem->redraw()); - TERN_(HAS_FAN, if (_new_fanspeed) FanSpeedItem->redraw()); + TERN_(HAS_HOTEND, if (_new_hotend_target) hotendTargetItem->redraw()); + TERN_(HAS_HEATED_BED, if (_new_bed_target) bedTargetItem->redraw()); + TERN_(HAS_FAN, if (_new_fanspeed) fanSpeedItem->redraw()); } // Bottom temperature update #if HAS_HOTEND if (_new_hotend_temp) - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 28, 384, _hotendtemp); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 28, 384, _hotendtemp); if (_new_hotend_target) - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 25 + 4 * STAT_CHR_W + 6, 384, _hotendtarget); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 25 + 4 * STAT_CHR_W + 6, 384, _hotendtarget); static int16_t _flow = planner.flow_percentage[0]; if (_flow != planner.flow_percentage[0]) { _flow = planner.flow_percentage[0]; - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 116 + 2 * STAT_CHR_W, 417, _flow); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 116 + 2 * STAT_CHR_W, 417, _flow); } #endif #if HAS_HEATED_BED if (_new_bed_temp) - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 28, 417, _bedtemp); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 28, 417, _bedtemp); if (_new_bed_target) - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 25 + 4 * STAT_CHR_W + 6, 417, _bedtarget); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 25 + 4 * STAT_CHR_W + 6, 417, _bedtarget); #endif - _draw_feedrate(); + _drawFeedrate(); #if HAS_FAN if (_new_fanspeed) - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 195 + 2 * STAT_CHR_W, 384, _fanspeed); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 195 + 2 * STAT_CHR_W, 384, _fanspeed); #endif static float _offset = 0; if (BABY_Z_VAR != _offset) { _offset = BABY_Z_VAR; - DWINUI::Draw_Signed_Float(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 2, 2, 204, 417, _offset); + DWINUI::drawSignedFloat(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 2, 2, 204, 417, _offset); } - _draw_ZOffsetIcon(); + _drawZOffsetIcon(); } /** @@ -850,19 +850,19 @@ void update_variable() { bool DWIN_lcd_sd_status = false; #if ENABLED(MEDIASORT_MENU_ITEM) - void SetMediaSort() { - Toggle_Chkb_Line(HMI_data.MediaSort); - card.setSortOn(HMI_data.MediaSort); + void setMediaSort() { + toggleCheckboxLine(hmiData.mediaSort); + card.setSortOn(hmiData.mediaSort); } #endif -void SetMediaAutoMount() { Toggle_Chkb_Line(HMI_data.MediaAutoMount); } +void setMediaAutoMount() { toggleCheckboxLine(hmiData.mediaAutoMount); } inline uint16_t nr_sd_menu_items() { return _MIN(card.get_num_items() + !card.flag.workDirIsRoot, MENU_MAX_ITEMS); } -void make_name_without_ext(char *dst, char *src, size_t maxlen=MENU_CHAR_LIMIT) { +void makeNameWithoutExt(char *dst, char *src, size_t maxlen=MENU_CHAR_LIMIT) { size_t pos = strlen(src); // Index of ending nul // For files, remove the extension @@ -886,52 +886,53 @@ void make_name_without_ext(char *dst, char *src, size_t maxlen=MENU_CHAR_LIMIT) while (pos--) dst[pos] = src[pos]; } -void SDCard_Up() { +void sdCardUp() { card.cdup(); DWIN_lcd_sd_status = false; // On next DWIN_Update } -void SDCard_Folder(char * const dirname) { +void sdCardFolder(char * const dirname) { card.cd(dirname); DWIN_lcd_sd_status = false; // On next DWIN_Update } void onClickSDItem() { const uint16_t hasUpDir = !card.flag.workDirIsRoot; - if (hasUpDir && CurrentMenu->selected == 1) return SDCard_Up(); + if (hasUpDir && currentMenu->selected == 1) return sdCardUp(); else { - const uint16_t filenum = CurrentMenu->selected - 1 - hasUpDir; + const uint16_t filenum = currentMenu->selected - 1 - hasUpDir; card.selectFileByIndexSorted(filenum); // Enter that folder! - if (card.flag.filenameIsDir) return SDCard_Folder(card.filename); + if (card.flag.filenameIsDir) return sdCardFolder(card.filename); if (card.fileIsBinary()) - return DWIN_Popup_Confirm(ICON_Error, F("Please check filenames"), F("Only G-code can be printed")); + return dwinPopupConfirm(ICON_Error, F("Please check filenames"), F("Only G-code can be printed")); else { - DWIN_Print_Header(card.longest_filename()); // Save filename - return Goto_ConfirmToPrint(); + dwinPrintHeader(card.longest_filename()); // Save filename + return gotoConfirmToPrint(); } } } #if ENABLED(SCROLL_LONG_FILENAMES) + char shift_name[LONG_FILENAME_LENGTH + 1] = ""; - void Draw_SDItem_Shifted(uint8_t &shift) { + void drawSDItemShifted(uint8_t &shift) { // Shorten to the available space const size_t lastchar = shift + MENU_CHAR_LIMIT; const char c = shift_name[lastchar]; shift_name[lastchar] = '\0'; - const uint8_t row = FileMenu->line(); - Erase_Menu_Text(row); - Draw_Menu_Line(row, 0, &shift_name[shift]); + const uint8_t row = fileMenu->line(); + eraseMenuText(row); + drawMenuLine(row, 0, &shift_name[shift]); shift_name[lastchar] = c; } - void FileMenuIdle(bool reset=false) { + void fileMenuIdle(bool reset=false) { static bool hasUpDir = false; static uint8_t last_itemselected = 0; static int8_t shift_amt = 0, shift_len = 0; @@ -940,78 +941,81 @@ void onClickSDItem() { hasUpDir = !card.flag.workDirIsRoot; // Is a SubDir return; } - const uint8_t selected = FileMenu->selected; + const uint8_t selected = fileMenu->selected; if (last_itemselected != selected) { - if (last_itemselected >= 1 + hasUpDir) FileMenu->Items()[last_itemselected]->redraw(true); + if (last_itemselected >= 1 + hasUpDir) fileMenu->items()[last_itemselected]->redraw(true); last_itemselected = selected; if (selected >= 1 + hasUpDir) { const int8_t filenum = selected - 1 - hasUpDir; // Skip "Back" and ".." card.selectFileByIndexSorted(filenum); - make_name_without_ext(shift_name, card.longest_filename(), LONG_FILENAME_LENGTH); + makeNameWithoutExt(shift_name, card.longest_filename(), LONG_FILENAME_LENGTH); shift_len = strlen(shift_name); shift_amt = 0; } } else if ((selected >= 1 + hasUpDir) && (shift_len > MENU_CHAR_LIMIT)) { uint8_t shift_new = _MIN(shift_amt + 1, shift_len - MENU_CHAR_LIMIT); // Try to shift by... - Draw_SDItem_Shifted(shift_new); // Draw the item + drawSDItemShifted(shift_new); // Draw the item if (shift_new == shift_amt) // Scroll reached the end shift_new = -1; // Reset shift_amt = shift_new; // Set new scroll } } -#else + +#else // !SCROLL_LONG_FILENAMES + char shift_name[FILENAME_LENGTH + 1] = ""; + #endif -void onDrawFileName(MenuItemClass* menuitem, int8_t line) { +void onDrawFileName(MenuItem* menuitem, int8_t line) { const bool is_subdir = !card.flag.workDirIsRoot; if (is_subdir && menuitem->pos == 1) { - Draw_Menu_Line(line, ICON_Folder, ".."); + drawMenuLine(line, ICON_Folder, ".."); } else { uint8_t icon; card.selectFileByIndexSorted(menuitem->pos - is_subdir - 1); - make_name_without_ext(shift_name, card.longest_filename()); + makeNameWithoutExt(shift_name, card.longest_filename()); icon = card.flag.filenameIsDir ? ICON_Folder : card.fileIsBinary() ? ICON_Binary : ICON_File; - Draw_Menu_Line(line, icon, shift_name); + drawMenuLine(line, icon, shift_name); } } -void Draw_Print_File_Menu() { - checkkey = Menu; +void drawPrintFileMenu() { + checkkey = ID_Menu; if (card.isMounted()) { - if (SET_MENU(FileMenu, MSG_MEDIA_MENU, nr_sd_menu_items() + 1)) { - BACK_ITEM(Goto_Main_Menu); + if (SET_MENU(fileMenu, MSG_MEDIA_MENU, nr_sd_menu_items() + 1)) { + BACK_ITEM(gotoMainMenu); for (uint8_t i = 0; i < nr_sd_menu_items(); ++i) { - MenuItemAdd(onDrawFileName, onClickSDItem); + menuItemAdd(onDrawFileName, onClickSDItem); } } - UpdateMenu(FileMenu); - TERN_(DASH_REDRAW, DWIN_RedrawDash()); + updateMenu(fileMenu); + TERN_(DASH_REDRAW, dwinRedrawDash()); } else { - if (SET_MENU(FileMenu, MSG_MEDIA_MENU, 1)) BACK_ITEM(Goto_Main_Menu); - UpdateMenu(FileMenu); - dwinDrawRectangle(1, HMI_data.AlertBg_Color, 10, MBASE(3) - 10, DWIN_WIDTH - 10, MBASE(4)); - DWINUI::Draw_CenteredString(font12x24, HMI_data.AlertTxt_Color, MBASE(3), GET_TEXT_F(MSG_MEDIA_NOT_INSERTED)); + if (SET_MENU(fileMenu, MSG_MEDIA_MENU, 1)) BACK_ITEM(gotoMainMenu); + updateMenu(fileMenu); + dwinDrawRectangle(1, hmiData.colorAlertBg, 10, MBASE(3) - 10, DWIN_WIDTH - 10, MBASE(4)); + DWINUI::drawCenteredString(font12x24, hmiData.colorAlertTxt, MBASE(3), GET_TEXT_F(MSG_MEDIA_NOT_INSERTED)); } - TERN_(SCROLL_LONG_FILENAMES, FileMenuIdle(true)); + TERN_(SCROLL_LONG_FILENAMES, fileMenuIdle(true)); } // // Watch for media mount / unmount // -void HMI_SDCardUpdate() { +void hmiSDCardUpdate() { if (hmiFlag.home_flag) return; if (DWIN_lcd_sd_status != card.isMounted()) { DWIN_lcd_sd_status = card.isMounted(); - ResetMenu(FileMenu); - if (IsMenu(FileMenu)) { - CurrentMenu = nullptr; - Draw_Print_File_Menu(); + resetMenu(fileMenu); + if (isMenu(fileMenu)) { + currentMenu = nullptr; + drawPrintFileMenu(); } - if (!DWIN_lcd_sd_status && SD_Printing()) ui.abort_print(); // Media removed while printing + if (!DWIN_lcd_sd_status && sdPrinting()) ui.abort_print(); // Media removed while printing } } @@ -1019,80 +1023,80 @@ void HMI_SDCardUpdate() { * Dash board and indicators */ -void DWIN_Draw_Dashboard() { +void dwinDrawDashboard() { - dwinDrawRectangle(1, HMI_data.Background_Color, 0, STATUS_Y + 21, DWIN_WIDTH, DWIN_HEIGHT - 1); - dwinDrawRectangle(1, HMI_data.SplitLine_Color, 0, 449, DWIN_WIDTH, 451); + dwinDrawRectangle(1, hmiData.colorBackground, 0, STATUS_Y + 21, DWIN_WIDTH, DWIN_HEIGHT - 1); + dwinDrawRectangle(1, hmiData.colorSplitLine, 0, 449, DWIN_WIDTH, 451); - DWINUI::Draw_Icon(ICON_MaxSpeedX, 10, 456); - DWINUI::Draw_Icon(ICON_MaxSpeedY, 95, 456); - DWINUI::Draw_Icon(ICON_MaxSpeedZ, 180, 456); - _draw_xyz_position(true); + DWINUI::drawIcon(ICON_MaxSpeedX, 10, 456); + DWINUI::drawIcon(ICON_MaxSpeedY, 95, 456); + DWINUI::drawIcon(ICON_MaxSpeedZ, 180, 456); + _drawXYZPosition(true); #if HAS_HOTEND - DWINUI::Draw_Icon(ICON_HotendTemp, 10, 383); - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 28, 384, thermalManager.wholeDegHotend(0)); - DWINUI::Draw_String(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 25 + 3 * STAT_CHR_W + 5, 384, F("/")); - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 25 + 4 * STAT_CHR_W + 6, 384, thermalManager.degTargetHotend(0)); + DWINUI::drawIcon(ICON_HotendTemp, 10, 383); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 28, 384, thermalManager.wholeDegHotend(0)); + DWINUI::drawString(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 25 + 3 * STAT_CHR_W + 5, 384, F("/")); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 25 + 4 * STAT_CHR_W + 6, 384, thermalManager.degTargetHotend(0)); - DWINUI::Draw_Icon(ICON_StepE, 112, 417); - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 116 + 2 * STAT_CHR_W, 417, planner.flow_percentage[0]); - DWINUI::Draw_String(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 116 + 5 * STAT_CHR_W + 2, 417, F("%")); + DWINUI::drawIcon(ICON_StepE, 112, 417); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 116 + 2 * STAT_CHR_W, 417, planner.flow_percentage[0]); + DWINUI::drawString(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 116 + 5 * STAT_CHR_W + 2, 417, F("%")); #endif #if HAS_HEATED_BED - DWINUI::Draw_Icon(ICON_BedTemp, 10, 416); - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 28, 417, thermalManager.wholeDegBed()); - DWINUI::Draw_String(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 25 + 3 * STAT_CHR_W + 5, 417, F("/")); - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 25 + 4 * STAT_CHR_W + 6, 417, thermalManager.degTargetBed()); + DWINUI::drawIcon(ICON_BedTemp, 10, 416); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 28, 417, thermalManager.wholeDegBed()); + DWINUI::drawString(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 25 + 3 * STAT_CHR_W + 5, 417, F("/")); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 25 + 4 * STAT_CHR_W + 6, 417, thermalManager.degTargetBed()); #endif - DWINUI::Draw_Icon(ICON_Speed, 113, 383); - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 116 + 2 * STAT_CHR_W, 384, feedrate_percentage); - IF_DISABLED(SHOW_SPEED_IND, DWINUI::Draw_String(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 116 + 5 * STAT_CHR_W + 2, 384, F("%"))); + DWINUI::drawIcon(ICON_Speed, 113, 383); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 116 + 2 * STAT_CHR_W, 384, feedrate_percentage); + IF_DISABLED(SHOW_SPEED_IND, DWINUI::drawString(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 116 + 5 * STAT_CHR_W + 2, 384, F("%"))); #if HAS_FAN - DWINUI::Draw_Icon(ICON_FanSpeed, 187, 383); - DWINUI::Draw_Int(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 3, 195 + 2 * STAT_CHR_W, 384, thermalManager.fan_speed[0]); + DWINUI::drawIcon(ICON_FanSpeed, 187, 383); + DWINUI::drawInt(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 3, 195 + 2 * STAT_CHR_W, 384, thermalManager.fan_speed[0]); #endif #if HAS_ZOFFSET_ITEM - DWINUI::Draw_Icon(planner.leveling_active ? ICON_SetZOffset : ICON_Zoffset, 187, 416); - DWINUI::Draw_Signed_Float(DWIN_FONT_STAT, HMI_data.Indicator_Color, HMI_data.Background_Color, 2, 2, 204, 417, BABY_Z_VAR); + DWINUI::drawIcon(planner.leveling_active ? ICON_SetZOffset : ICON_Zoffset, 187, 416); + DWINUI::drawSignedFloat(DWIN_FONT_STAT, hmiData.colorIndicator, hmiData.colorBackground, 2, 2, 204, 417, BABY_Z_VAR); #endif } -void Draw_Info_Menu() { - DWINUI::ClearMainArea(); - if (HMI_IsChinese()) - Title.FrameCopy(30, 17, 28, 13); // "Info" +void drawInfoMenu() { + DWINUI::clearMainArea(); + if (hmiIsChinese()) + title.frameCopy(30, 17, 28, 13); // "Info" else - Title.ShowCaption(GET_TEXT_F(MSG_INFO_SCREEN)); - Draw_Menu_Line(0, ICON_Back, GET_TEXT_F(MSG_BACK), false, true); + title.showCaption(GET_TEXT_F(MSG_INFO_SCREEN)); + drawMenuLine(0, ICON_Back, GET_TEXT_F(MSG_BACK), false, true); - if (HMI_IsChinese()) { - DWIN_Frame_AreaCopy(1, 197, 149, 252, 161, 108, 102); // "Size" - DWIN_Frame_AreaCopy(1, 1, 164, 56, 176, 108, 175); // "Firmware Version" - DWIN_Frame_AreaCopy(1, 58, 164, 113, 176, 105, 248); // "Contact Details" - DWINUI::Draw_CenteredString(268, F(CORP_WEBSITE)); + if (hmiIsChinese()) { + dwinFrameAreaCopy(1, 197, 149, 252, 161, 108, 102); // "Size" + dwinFrameAreaCopy(1, 1, 164, 56, 176, 108, 175); // "Firmware Version" + dwinFrameAreaCopy(1, 58, 164, 113, 176, 105, 248); // "Contact Details" + DWINUI::drawCenteredString(268, F(CORP_WEBSITE)); } else { - DWINUI::Draw_CenteredString(102, F("Size")); - DWINUI::Draw_CenteredString(175, F("Firmware version")); - DWINUI::Draw_CenteredString(248, F("Build Datetime")); - DWINUI::Draw_CenteredString(268, F(STRING_DISTRIBUTION_DATE)); + DWINUI::drawCenteredString(102, F("Size")); + DWINUI::drawCenteredString(175, F("Firmware version")); + DWINUI::drawCenteredString(248, F("Build Datetime")); + DWINUI::drawCenteredString(268, F(STRING_DISTRIBUTION_DATE)); } - DWINUI::Draw_CenteredString(122, F(MACHINE_SIZE)); - DWINUI::Draw_CenteredString(195, F(SHORT_BUILD_VERSION)); + DWINUI::drawCenteredString(122, F(MACHINE_SIZE)); + DWINUI::drawCenteredString(195, F(SHORT_BUILD_VERSION)); for (uint8_t i = 0; i < 3; ++i) { - DWINUI::Draw_Icon(ICON_PrintSize + i, ICOX, 99 + i * 73); - dwinDrawHLine(HMI_data.SplitLine_Color, 16, MBASE(2) + i * 73, 240); + DWINUI::drawIcon(ICON_PrintSize + i, ICOX, 99 + i * 73); + dwinDrawHLine(hmiData.colorSplitLine, 16, MBASE(2) + i * 73, 240); } } // Main Process -void HMI_MainMenu() { +void hmiMainMenu() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; @@ -1119,32 +1123,32 @@ void HMI_MainMenu() { else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_page.now) { case PAGE_PRINT: - if (HMI_data.MediaAutoMount) { + if (hmiData.mediaAutoMount) { card.mount(); safe_delay(800); }; - Draw_Print_File_Menu(); + drawPrintFileMenu(); break; - case PAGE_PREPARE: Draw_Prepare_Menu(); break; - case PAGE_CONTROL: Draw_Control_Menu(); break; - case PAGE_ADVANCE: Draw_AdvancedSettings_Menu(); break; + case PAGE_PREPARE: drawPrepareMenu(); break; + case PAGE_CONTROL: drawControlMenu(); break; + case PAGE_ADVANCE: drawAdvancedSettingsMenu(); break; } } dwinUpdateLCD(); } // Pause or Stop popup -void onClick_PauseOrStop() { +void onClickPauseOrStop() { switch (select_print.now) { case PRINT_PAUSE_RESUME: if (hmiFlag.select_flag) ui.pause_print(); break; // Confirm pause case PRINT_STOP: if (hmiFlag.select_flag) ui.abort_print(); break; // Stop confirmed then abort print default: break; } - return Goto_PrintProcess(); + return gotoPrintProcess(); } // Printing -void HMI_Printing() { +void hmiPrinting() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; // Avoid flicker by updating only the previous menu @@ -1168,16 +1172,16 @@ void HMI_Printing() { } else if (encoder_diffState == ENCODER_DIFF_ENTER) { switch (select_print.now) { - case PRINT_SETUP: Draw_Tune_Menu(); break; + case PRINT_SETUP: drawTuneMenu(); break; case PRINT_PAUSE_RESUME: if (printingIsPaused()) { // If printer is already in pause ui.resume_print(); break; } else - return Goto_Popup(Popup_window_PauseOrStop, onClick_PauseOrStop); + return gotoPopup(popupPauseOrStop, onClickPauseOrStop); case PRINT_STOP: - return Goto_Popup(Popup_window_PauseOrStop, onClick_PauseOrStop); + return gotoPopup(popupPauseOrStop, onClickPauseOrStop); default: break; } } @@ -1186,84 +1190,84 @@ void HMI_Printing() { #include "../../../libs/buzzer.h" -void Draw_Main_Area() { +void drawMainArea() { switch (checkkey) { - case MainMenu: Draw_Main_Menu(); break; - case PrintProcess: Draw_PrintProcess(); break; - case PrintDone: Draw_PrintDone(); break; + case ID_MainMenu: drawMainMenu(); break; + case ID_PrintProcess: drawPrintProcess(); break; + case ID_PrintDone: drawPrintDone(); break; #if HAS_ESDIAG - case ESDiagProcess: Draw_EndStopDiag(); break; + case ID_ESDiagProcess: drawEndStopDiag(); break; #endif - case Popup: popupDraw(); break; + case ID_Popup: popupDraw(); break; #if HAS_LOCKSCREEN - case Locked: lockScreen.draw(); break; - #endif - case Menu: - case SetInt: - case SetPInt: - case SetIntNoDraw: - case SetFloat: - case SetPFloat: ReDrawMenu(true); break; + case ID_Locked: lockScreen.draw(); break; + #endif + case ID_Menu: + case ID_SetInt: + case ID_SetPInt: + case ID_SetIntNoDraw: + case ID_SetFloat: + case ID_SetPFloat: ReDrawMenu(true); break; default: break; } } -void HMI_WaitForUser() { +void hmiWaitForUser() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState != ENCODER_DIFF_NO && !ui.backlight) { - if (checkkey == WaitResponse) HMI_ReturnScreen(); + if (checkkey == ID_WaitResponse) hmiReturnScreen(); return ui.refresh_brightness(); } if (!wait_for_user) { switch (checkkey) { - case PrintDone: + case ID_PrintDone: select_page.reset(); - Goto_Main_Menu(); + gotoMainMenu(); break; #if HAS_BED_PROBE - case Leveling: + case ID_Leveling: #endif default: - HMI_ReturnScreen(); + hmiReturnScreen(); break; } } } -void HMI_Init() { +void hmiInit() { #if ENABLED(SHOW_BOOTSCREEN) #ifndef BOOTSCREEN_TIMEOUT #define BOOTSCREEN_TIMEOUT 1100 #endif - DWINUI::Draw_Box(1, Color_Black, { 5, 220, DWIN_WIDTH - 5, DWINUI::fontHeight() }); - DWINUI::Draw_CenteredString(Color_White, 220, F("ProUI starting up ")); + DWINUI::drawBox(1, COLOR_BLACK, { 5, 220, DWIN_WIDTH - 5, DWINUI::fontHeight() }); + DWINUI::drawCenteredString(COLOR_WHITE, 220, F("ProUI starting up ")); for (uint16_t t = 15; t < 257; t += 11) { - DWINUI::Draw_Icon(ICON_Bar, 15, 260); - dwinDrawRectangle(1, HMI_data.Background_Color, t, 260, 257, 280); + DWINUI::drawIcon(ICON_Bar, 15, 260); + dwinDrawRectangle(1, hmiData.colorBackground, t, 260, 257, 280); dwinUpdateLCD(); safe_delay((BOOTSCREEN_TIMEOUT) / 22); } #endif - HMI_SetLanguage(); + hmiSetLanguage(); } -void EachMomentUpdate() { +void eachMomentUpdate() { static millis_t next_var_update_ms = 0, next_rts_update_ms = 0, next_status_update_ms = 0; const millis_t ms = millis(); if (ELAPSED(ms, next_var_update_ms)) { next_var_update_ms = ms + DWIN_VAR_UPDATE_INTERVAL; blink = !blink; - update_variable(); + updateVariable(); #if HAS_ESDIAG - if (checkkey == ESDiagProcess) ESDiag.Update(); + if (checkkey == ID_ESDiagProcess) esDiag.update(); #endif - #if SHOW_TUNING_GRAPH - if (checkkey == PidProcess) { - TERN_(PIDTEMP, if (HMI_value.tempcontrol == PIDTEMP_START) plot.Update(thermalManager.wholeDegHotend(0))); - TERN_(PIDTEMPBED, if (HMI_value.tempcontrol == PIDTEMPBED_START) plot.Update(thermalManager.wholeDegBed())); + #if PROUI_TUNING_GRAPH + if (checkkey == ID_PIDProcess) { + TERN_(PIDTEMP, if (hmiValue.tempControl == PIDTEMP_START) plot.update(thermalManager.wholeDegHotend(0))); + TERN_(PIDTEMPBED, if (hmiValue.tempControl == PIDTEMPBED_START) plot.update(thermalManager.wholeDegBed())); } - TERN_(MPCTEMP, if (checkkey == MPCProcess) plot.Update(thermalManager.wholeDegHotend(0))); + TERN_(MPCTEMP, if (checkkey == ID_MPCProcess) plot.update(thermalManager.wholeDegHotend(0))); #endif } @@ -1275,42 +1279,42 @@ void EachMomentUpdate() { if (ELAPSED(ms, next_status_update_ms)) { next_status_update_ms = ms + 500; - DWIN_DrawStatusMessage(); + dwinDrawStatusMessage(); #if ENABLED(SCROLL_LONG_FILENAMES) - if (IsMenu(FileMenu)) FileMenuIdle(); + if (isMenu(fileMenu)) fileMenuIdle(); #endif } if (!PENDING(ms, next_rts_update_ms)) { next_rts_update_ms = ms + DWIN_UPDATE_INTERVAL; - if ((Printing() != hmiFlag.printing_flag) && !hmiFlag.home_flag) { - hmiFlag.printing_flag = Printing(); + if ((isPrinting() != hmiFlag.printing_flag) && !hmiFlag.home_flag) { + hmiFlag.printing_flag = isPrinting(); if (hmiFlag.printing_flag) - DWIN_Print_Started(); + dwinPrintStarted(); else if (hmiFlag.abort_flag) - DWIN_Print_Aborted(); + dwinPrintAborted(); else - DWIN_Print_Finished(); + dwinPrintFinished(); } if ((printingIsPaused() != hmiFlag.pause_flag) && !hmiFlag.home_flag) { hmiFlag.pause_flag = printingIsPaused(); if (hmiFlag.pause_flag) - DWIN_Print_Pause(); + dwinPrintPause(); else if (hmiFlag.abort_flag) - DWIN_Print_Aborted(); + dwinPrintAborted(); else - DWIN_Print_Resume(); + dwinPrintResume(); } - if (checkkey == PrintProcess) { // Print process + if (checkkey == ID_PrintProcess) { // Print process // Progress percent static uint8_t _percent_done = 255; if (_percent_done != ui.get_progress_percent()) { _percent_done = ui.get_progress_percent(); - Draw_Print_ProgressBar(); + drawPrintProgressBar(); } // Remaining time @@ -1318,7 +1322,7 @@ void EachMomentUpdate() { static uint32_t _remain_time = 0; if (_remain_time != ui.get_remaining_time()) { _remain_time = ui.get_remaining_time(); - Draw_Print_ProgressRemain(); + drawPrintProgressRemain(); } #endif @@ -1327,12 +1331,12 @@ void EachMomentUpdate() { const uint16_t min = (print_job_timer.duration() % 3600) / 60; if (_printtime != min) { // 1 minute update _printtime = min; - Draw_Print_ProgressElapsed(); + drawPrintProgressElapsed(); } } #if ENABLED(POWER_LOSS_RECOVERY) else if (DWIN_lcd_sd_status && recovery.dwin_flag) { // Resume print before power off - return Goto_PowerLossRecovery(); + return gotoPowerLossRecovery(); } #endif @@ -1341,136 +1345,136 @@ void EachMomentUpdate() { } #if ENABLED(POWER_LOSS_RECOVERY) - void Popup_PowerLossRecovery() { - DWINUI::ClearMainArea(); - Draw_Popup_Bkgd(); - if (HMI_IsChinese()) { - DWIN_Frame_AreaCopy(1, 160, 338, 235, 354, 98, 115); - DWIN_Frame_AreaCopy(1, 103, 321, 271, 335, 52, 167); - DWINUI::Draw_IconWB(ICON_Cancel_C, 26, 280); - DWINUI::Draw_IconWB(ICON_Continue_C, 146, 280); + void popupPowerLossRecovery() { + DWINUI::clearMainArea(); + drawPopupBkgd(); + if (hmiIsChinese()) { + dwinFrameAreaCopy(1, 160, 338, 235, 354, 98, 115); + dwinFrameAreaCopy(1, 103, 321, 271, 335, 52, 167); + DWINUI::drawIconWB(ICON_Cancel_C, 26, 280); + DWINUI::drawIconWB(ICON_Continue_C, 146, 280); } else { - DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 70, GET_TEXT_F(MSG_OUTAGE_RECOVERY)); - DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 147, F("It looks like the last")); - DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 167, F("file was interrupted.")); - DWINUI::Draw_Button(BTN_Cancel, 26, 280); - DWINUI::Draw_Button(BTN_Continue, 146, 280); + DWINUI::drawCenteredString(hmiData.colorPopupTxt, 70, GET_TEXT_F(MSG_OUTAGE_RECOVERY)); + DWINUI::drawCenteredString(hmiData.colorPopupTxt, 147, F("It looks like the last")); + DWINUI::drawCenteredString(hmiData.colorPopupTxt, 167, F("file was interrupted.")); + DWINUI::drawButton(BTN_Cancel, 26, 280); + DWINUI::drawButton(BTN_Continue, 146, 280); } MediaFile *dir = nullptr; const char * const filename = card.diveToFile(true, dir, recovery.info.sd_filename); card.selectFileByName(filename); - DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 207, card.longest_filename()); - DWIN_Print_Header(card.longest_filename()); // Save filename - Draw_Select_Highlight(hmiFlag.select_flag); + DWINUI::drawCenteredString(hmiData.colorPopupTxt, 207, card.longest_filename()); + dwinPrintHeader(card.longest_filename()); // Save filename + drawSelectHighlight(hmiFlag.select_flag); dwinUpdateLCD(); } - void onClick_PowerLossRecovery() { + void onClickPowerLossRecovery() { if (hmiFlag.select_flag) { queue.inject(F("M1000C")); select_page.reset(); - return Goto_Main_Menu(); + return gotoMainMenu(); } else { - HMI_SaveProcessID(NothingToDo); + hmiSaveProcessID(ID_NothingToDo); select_print.set(PRINT_SETUP); queue.inject(F("M1000")); } } - void Goto_PowerLossRecovery() { + void gotoPowerLossRecovery() { recovery.dwin_flag = false; LCD_MESSAGE(MSG_CONTINUE_PRINT_JOB); - Goto_Popup(Popup_PowerLossRecovery, onClick_PowerLossRecovery); + gotoPopup(popupPowerLossRecovery, onClickPowerLossRecovery); } #endif // POWER_LOSS_RECOVERY -void DWIN_HandleScreen() { +void dwinHandleScreen() { switch (checkkey) { - case MainMenu: HMI_MainMenu(); break; - case Menu: HMI_Menu(); break; - case SetInt: HMI_SetDraw(); break; - case SetFloat: HMI_SetDraw(); break; - case SetPInt: HMI_SetPInt(); break; - case SetPFloat: HMI_SetPFloat(); break; - case SetIntNoDraw: HMI_SetNoDraw(); break; - case PrintProcess: HMI_Printing(); break; - case Popup: HMI_Popup(); break; - case Leveling: break; + case ID_MainMenu: hmiMainMenu(); break; + case ID_Menu: hmiMenu(); break; + case ID_SetInt: hmiSetDraw(); break; + case ID_SetFloat: hmiSetDraw(); break; + case ID_SetPInt: hmiSetPInt(); break; + case ID_SetPFloat: hmiSetPFloat(); break; + case ID_SetIntNoDraw: hmiSetNoDraw(); break; + case ID_PrintProcess: hmiPrinting(); break; + case ID_Popup: hmiPopup(); break; + case ID_Leveling: break; #if HAS_LOCKSCREEN - case Locked: HMI_LockScreen(); break; - #endif - case PrintDone: - TERN_(HAS_ESDIAG, case ESDiagProcess:) - case WaitResponse: HMI_WaitForUser(); break; - case Homing: - case PidProcess: - case NothingToDo: break; + case ID_Locked: hmiLockScreen(); break; + #endif + case ID_PrintDone: + TERN_(HAS_ESDIAG, case ID_ESDiagProcess:) + case ID_WaitResponse: hmiWaitForUser(); break; + case ID_Homing: + case ID_PIDProcess: + case ID_NothingToDo: break; default: break; } } -bool IDisPopUp() { // If ID is popup... +bool idIsPopUp() { // If ID is popup... switch (checkkey) { - case NothingToDo: - case WaitResponse: - case Popup: - case Homing: - case Leveling: - case PidProcess: - TERN_(HAS_ESDIAG, case ESDiagProcess:) + case ID_NothingToDo: + case ID_WaitResponse: + case ID_Popup: + case ID_Homing: + case ID_Leveling: + case ID_PIDProcess: + TERN_(HAS_ESDIAG, case ID_ESDiagProcess:) return true; default: break; } return false; } -void HMI_SaveProcessID(const uint8_t id) { +void hmiSaveProcessID(const uint8_t id) { if (checkkey == id) return; - if (!IDisPopUp()) last_checkkey = checkkey; // If previous is not a popup + if (!idIsPopUp()) last_checkkey = checkkey; // If previous is not a popup checkkey = id; switch (id) { - case Popup: - case WaitResponse: - case PrintDone: - case Leveling: - TERN_(HAS_ESDIAG, case ESDiagProcess:) + case ID_Popup: + case ID_WaitResponse: + case ID_PrintDone: + case ID_Leveling: + TERN_(HAS_ESDIAG, case ID_ESDiagProcess:) wait_for_user = true; default: break; } } -void HMI_ReturnScreen() { +void hmiReturnScreen() { checkkey = last_checkkey; wait_for_user = false; - Draw_Main_Area(); + drawMainArea(); } void dwinHomingStart() { hmiFlag.home_flag = true; - HMI_SaveProcessID(Homing); - Title.ShowCaption(GET_TEXT_F(MSG_HOMING)); - DWIN_Show_Popup(ICON_BLTouch, GET_TEXT_F(MSG_HOMING), GET_TEXT_F(MSG_PLEASE_WAIT)); + hmiSaveProcessID(ID_Homing); + title.showCaption(GET_TEXT_F(MSG_HOMING)); + dwinShowPopup(ICON_BLTouch, GET_TEXT_F(MSG_HOMING), GET_TEXT_F(MSG_PLEASE_WAIT)); } void dwinHomingDone() { hmiFlag.home_flag = false; - if (last_checkkey == PrintDone) - Goto_PrintDone(); + if (last_checkkey == ID_PrintDone) + gotoPrintDone(); else - HMI_ReturnScreen(); + hmiReturnScreen(); } -void DWIN_LevelingStart() { +void dwinLevelingStart() { #if HAS_BED_PROBE - HMI_SaveProcessID(Leveling); - Title.ShowCaption(GET_TEXT_F(MSG_BED_LEVELING)); - DWIN_Show_Popup(ICON_AutoLeveling, GET_TEXT_F(MSG_BED_LEVELING), GET_TEXT_F(MSG_PLEASE_WAIT)); + hmiSaveProcessID(ID_Leveling); + title.showCaption(GET_TEXT_F(MSG_BED_LEVELING)); + dwinShowPopup(ICON_AutoLeveling, GET_TEXT_F(MSG_BED_LEVELING), GET_TEXT_F(MSG_PLEASE_WAIT)); #if ALL(AUTO_BED_LEVELING_UBL, PREHEAT_BEFORE_LEVELING) #if HAS_BED_PROBE - if (!DEBUGGING(DRYRUN)) probe.preheat_for_probing(LEVELING_NOZZLE_TEMP, HMI_data.BedLevT); + if (!DEBUGGING(DRYRUN)) probe.preheat_for_probing(LEVELING_NOZZLE_TEMP, hmiData.bedLevT); #else #if HAS_HOTEND if (!DEBUGGING(DRYRUN) && thermalManager.degTargetHotend(0) < LEVELING_NOZZLE_TEMP) { @@ -1479,24 +1483,24 @@ void DWIN_LevelingStart() { } #endif #if HAS_HEATED_BED - if (!DEBUGGING(DRYRUN) && thermalManager.degTargetBed() < HMI_data.BedLevT) { - thermalManager.setTargetBed(HMI_data.BedLevT); + if (!DEBUGGING(DRYRUN) && thermalManager.degTargetBed() < hmiData.bedLevT) { + thermalManager.setTargetBed(hmiData.bedLevT); thermalManager.wait_for_bed_heating(); } #endif #endif #endif #elif ENABLED(MESH_BED_LEVELING) - Draw_ManualMesh_Menu(); + drawManualMeshMenu(); #endif } -void DWIN_LevelingDone() { - TERN_(HAS_MESH, Goto_MeshViewer(true)); +void dwinLevelingDone() { + TERN_(HAS_MESH, gotoMeshViewer(true)); } #if HAS_MESH - void DWIN_MeshUpdate(const int8_t cpos, const int8_t tpos, const_float_t zval) { + void dwinMeshUpdate(const int8_t cpos, const int8_t tpos, const_float_t zval) { ui.set_status( &MString<32>(GET_TEXT_F(MSG_PROBING_POINT), ' ', cpos, '/', tpos, F(" Z="), p_float_t(zval, 2)) ); @@ -1505,49 +1509,49 @@ void DWIN_LevelingDone() { // PID/MPC process -#if SHOW_TUNING_GRAPH +#if PROUI_TUNING_GRAPH #include "plot.h" celsius_t _maxtemp, _target; - void DWIN_Draw_PID_MPC_Popup() { + void dwinDrawPIDMPCPopup() { constexpr frame_rect_t gfrm = { 40, 180, DWIN_WIDTH - 80, 120 }; - DWINUI::ClearMainArea(); - Draw_Popup_Bkgd(); + DWINUI::clearMainArea(); + drawPopupBkgd(); - switch (HMI_value.tempcontrol) { + switch (hmiValue.tempControl) { default: return; #if ENABLED(MPC_AUTOTUNE) case MPCTEMP_START: - DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 100, GET_TEXT_F(MSG_MPC_AUTOTUNE)); - DWINUI::Draw_String(HMI_data.PopupTxt_Color, gfrm.x, gfrm.y - DWINUI::fontHeight() - 4, F("MPC target: Celsius")); + DWINUI::drawCenteredString(hmiData.colorPopupTxt, 100, GET_TEXT_F(MSG_MPC_AUTOTUNE)); + DWINUI::drawString(hmiData.colorPopupTxt, gfrm.x, gfrm.y - DWINUI::fontHeight() - 4, F("MPC target: Celsius")); break; #endif #if ANY(PIDTEMP, PIDTEMPBED) TERN_(PIDTEMP, case PIDTEMP_START:) TERN_(PIDTEMPBED, case PIDTEMPBED_START:) - DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 100, GET_TEXT_F(MSG_PID_AUTOTUNE)); - DWINUI::Draw_String(HMI_data.PopupTxt_Color, gfrm.x, gfrm.y - DWINUI::fontHeight() - 4, F("PID target: Celsius")); + DWINUI::drawCenteredString(hmiData.colorPopupTxt, 100, GET_TEXT_F(MSG_PID_AUTOTUNE)); + DWINUI::drawString(hmiData.colorPopupTxt, gfrm.x, gfrm.y - DWINUI::fontHeight() - 4, F("PID target: Celsius")); break; #endif } - switch (HMI_value.tempcontrol) { + switch (hmiValue.tempControl) { default: break; #if ANY(PIDTEMP, MPC_AUTOTUNE) TERN_(PIDTEMP, case PIDTEMP_START:) TERN_(MPC_AUTOTUNE, case MPCTEMP_START:) - DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 120, F("for Nozzle is running.")); + DWINUI::drawCenteredString(hmiData.colorPopupTxt, 120, F("for Nozzle is running.")); break; #endif #if ENABLED(PIDTEMPBED) case PIDTEMPBED_START: - DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 120, F("for BED is running.")); + DWINUI::drawCenteredString(hmiData.colorPopupTxt, 120, F("for BED is running.")); break; #endif } - switch (HMI_value.tempcontrol) { + switch (hmiValue.tempControl) { default: break; #if ENABLED(MPC_AUTOTUNE) case MPCTEMP_START: @@ -1558,74 +1562,74 @@ void DWIN_LevelingDone() { #if ENABLED(PIDTEMP) case PIDTEMP_START: _maxtemp = thermalManager.hotend_maxtemp[0]; - _target = HMI_data.HotendPidT; + _target = hmiData.hotendPidT; break; #endif #if ENABLED(PIDTEMPBED) case PIDTEMPBED_START: _maxtemp = BED_MAXTEMP; - _target = HMI_data.BedPidT; + _target = hmiData.bedPidT; break; #endif } - plot.Draw(gfrm, _maxtemp, _target); - DWINUI::Draw_Int(HMI_data.PopupTxt_Color, 3, gfrm.x + 90, gfrm.y - DWINUI::fontHeight() - 4, _target); + plot.draw(gfrm, _maxtemp, _target); + DWINUI::drawInt(hmiData.colorPopupTxt, 3, gfrm.x + 90, gfrm.y - DWINUI::fontHeight() - 4, _target); } -#endif // SHOW_TUNING_GRAPH +#endif // PROUI_TUNING_GRAPH -#if DWIN_PID_TUNE +#if PROUI_PID_TUNE - void DWIN_StartM303(const bool seenC, const int c, const bool seenS, const heater_id_t hid, const celsius_t temp) { - if (seenC) HMI_data.PidCycles = c; + void dwinStartM303(const bool seenC, const int c, const bool seenS, const heater_id_t hid, const celsius_t temp) { + if (seenC) hmiData.pidCycles = c; if (seenS) { switch (hid) { - OPTCODE(PIDTEMP, case 0 ... HOTENDS - 1: HMI_data.HotendPidT = temp; break) - OPTCODE(PIDTEMPBED, case H_BED: HMI_data.BedPidT = temp; break) + OPTCODE(PIDTEMP, case 0 ... HOTENDS - 1: hmiData.hotendPidT = temp; break) + OPTCODE(PIDTEMPBED, case H_BED: hmiData.bedPidT = temp; break) default: break; } } } - void DWIN_PidTuning(tempcontrol_t result) { - HMI_value.tempcontrol = result; + void dwinPidTuning(tempcontrol_t result) { + hmiValue.tempControl = result; switch (result) { #if ENABLED(PIDTEMP) case PIDTEMP_START: - HMI_SaveProcessID(PidProcess); - #if SHOW_TUNING_GRAPH - DWIN_Draw_PID_MPC_Popup(); + hmiSaveProcessID(ID_PIDProcess); + #if PROUI_TUNING_GRAPH + dwinDrawPIDMPCPopup(); #else - DWIN_Draw_Popup(ICON_TempTooHigh, GET_TEXT_F(MSG_PID_AUTOTUNE), F("for Nozzle is running.")); + dwinDrawPopup(ICON_TempTooHigh, GET_TEXT_F(MSG_PID_AUTOTUNE), F("for Nozzle is running.")); #endif break; case PID_TEMP_TOO_HIGH: checkkey = last_checkkey; - DWIN_Popup_Confirm(ICON_TempTooHigh, GET_TEXT_F(MSG_PID_AUTOTUNE_FAILED), GET_TEXT_F(MSG_TEMP_TOO_HIGH)); + dwinPopupConfirm(ICON_TempTooHigh, GET_TEXT_F(MSG_PID_AUTOTUNE_FAILED), GET_TEXT_F(MSG_TEMP_TOO_HIGH)); break; #endif #if ENABLED(PIDTEMPBED) case PIDTEMPBED_START: - HMI_SaveProcessID(PidProcess); - #if SHOW_TUNING_GRAPH - DWIN_Draw_PID_MPC_Popup(); + hmiSaveProcessID(ID_PIDProcess); + #if PROUI_TUNING_GRAPH + dwinDrawPIDMPCPopup(); #else - DWIN_Draw_Popup(ICON_TempTooHigh, GET_TEXT_F(MSG_PID_AUTOTUNE), F("for BED is running.")); + dwinDrawPopup(ICON_TempTooHigh, GET_TEXT_F(MSG_PID_AUTOTUNE), F("for BED is running.")); #endif break; #endif case PID_BAD_HEATER_ID: checkkey = last_checkkey; - DWIN_Popup_Confirm(ICON_TempTooLow, GET_TEXT_F(MSG_PID_AUTOTUNE_FAILED), GET_TEXT_F(MSG_PID_BAD_HEATER_ID)); + dwinPopupConfirm(ICON_TempTooLow, GET_TEXT_F(MSG_PID_AUTOTUNE_FAILED), GET_TEXT_F(MSG_PID_BAD_HEATER_ID)); break; case PID_TUNING_TIMEOUT: checkkey = last_checkkey; - DWIN_Popup_Confirm(ICON_TempTooHigh, GET_TEXT_F(MSG_ERROR), GET_TEXT_F(MSG_PID_TIMEOUT)); + dwinPopupConfirm(ICON_TempTooHigh, GET_TEXT_F(MSG_ERROR), GET_TEXT_F(MSG_PID_TIMEOUT)); break; case AUTOTUNE_DONE: checkkey = last_checkkey; - DWIN_Popup_Confirm(ICON_TempTooLow, GET_TEXT_F(MSG_PID_AUTOTUNE), GET_TEXT_F(MSG_BUTTON_DONE)); + dwinPopupConfirm(ICON_TempTooLow, GET_TEXT_F(MSG_PID_AUTOTUNE), GET_TEXT_F(MSG_BUTTON_DONE)); break; default: checkkey = last_checkkey; @@ -1633,34 +1637,34 @@ void DWIN_LevelingDone() { } } -#endif // DWIN_PID_TUNE +#endif // PROUI_PID_TUNE #if ENABLED(MPC_AUTOTUNE) - void DWIN_MPCTuning(tempcontrol_t result) { - HMI_value.tempcontrol = result; + void dwinMPCTuning(tempcontrol_t result) { + hmiValue.tempControl = result; switch (result) { case MPCTEMP_START: - HMI_SaveProcessID(MPCProcess); - #if SHOW_TUNING_GRAPH - DWIN_Draw_PID_MPC_Popup(); + hmiSaveProcessID(ID_MPCProcess); + #if PROUI_TUNING_GRAPH + dwinDrawPIDMPCPopup(); #else - DWIN_Draw_Popup(ICON_TempTooHigh, GET_TEXT_F(MSG_MPC_AUTOTUNE), F("for Nozzle is running.")); + dwinDrawPopup(ICON_TempTooHigh, GET_TEXT_F(MSG_MPC_AUTOTUNE), F("for Nozzle is running.")); #endif break; case MPC_TEMP_ERROR: checkkey = last_checkkey; - DWIN_Popup_Confirm(ICON_TempTooHigh, GET_TEXT_F(MSG_PID_AUTOTUNE_FAILED), F(STR_MPC_TEMPERATURE_ERROR)); + dwinPopupConfirm(ICON_TempTooHigh, GET_TEXT_F(MSG_PID_AUTOTUNE_FAILED), F(STR_MPC_TEMPERATURE_ERROR)); ui.reset_alert_level(); break; case MPC_INTERRUPTED: checkkey = last_checkkey; - DWIN_Popup_Confirm(ICON_TempTooHigh, GET_TEXT_F(MSG_ERROR), F(STR_MPC_AUTOTUNE_INTERRUPTED)); + dwinPopupConfirm(ICON_TempTooHigh, GET_TEXT_F(MSG_ERROR), F(STR_MPC_AUTOTUNE_INTERRUPTED)); ui.reset_alert_level(); break; case AUTOTUNE_DONE: checkkey = last_checkkey; - DWIN_Popup_Confirm(ICON_TempTooLow, GET_TEXT_F(MSG_MPC_AUTOTUNE), GET_TEXT_F(MSG_BUTTON_DONE)); + dwinPopupConfirm(ICON_TempTooLow, GET_TEXT_F(MSG_MPC_AUTOTUNE), GET_TEXT_F(MSG_BUTTON_DONE)); ui.reset_alert_level(); break; default: @@ -1673,117 +1677,117 @@ void DWIN_LevelingDone() { #endif // MPC_AUTOTUNE // Started a Print Job -void DWIN_Print_Started() { +void dwinPrintStarted() { TERN_(HAS_GCODE_PREVIEW, if (Host_Printing()) Preview_Invalidate()); TERN_(SET_PROGRESS_PERCENT, ui.progress_reset()); TERN_(SET_REMAINING_TIME, ui.reset_remaining_time()); hmiFlag.pause_flag = false; hmiFlag.abort_flag = false; select_print.reset(); - Goto_PrintProcess(); + gotoPrintProcess(); } // Pause a print job -void DWIN_Print_Pause() { +void dwinPrintPause() { ICON_ResumeOrPause(); } // Resume print job -void DWIN_Print_Resume() { +void dwinPrintResume() { ICON_ResumeOrPause(); LCD_MESSAGE(MSG_RESUME_PRINT); } // Ended print job -void DWIN_Print_Finished() { +void dwinPrintFinished() { TERN_(POWER_LOSS_RECOVERY, if (card.isPrinting()) recovery.cancel()); hmiFlag.abort_flag = false; hmiFlag.pause_flag = false; wait_for_heatup = false; planner.finish_and_disable(); thermalManager.cooldown(); - Goto_PrintDone(); + gotoPrintDone(); } // Print was aborted -void DWIN_Print_Aborted() { - DWIN_Print_Finished(); +void dwinPrintAborted() { + dwinPrintFinished(); } #if HAS_FILAMENT_SENSOR // Filament Runout process - void DWIN_FilamentRunout(const uint8_t extruder) { LCD_MESSAGE(MSG_RUNOUT_SENSOR); } -#endif - -void DWIN_SetColorDefaults() { - HMI_data.Background_Color = Def_Background_Color; - HMI_data.Cursor_Color = Def_Cursor_Color; - HMI_data.TitleBg_Color = Def_TitleBg_Color; - HMI_data.TitleTxt_Color = Def_TitleTxt_Color; - HMI_data.Text_Color = Def_Text_Color; - HMI_data.Selected_Color = Def_Selected_Color; - HMI_data.SplitLine_Color = Def_SplitLine_Color; - HMI_data.Highlight_Color = Def_Highlight_Color; - HMI_data.StatusBg_Color = Def_StatusBg_Color; - HMI_data.StatusTxt_Color = Def_StatusTxt_Color; - HMI_data.PopupBg_Color = Def_PopupBg_Color; - HMI_data.PopupTxt_Color = Def_PopupTxt_Color; - HMI_data.AlertBg_Color = Def_AlertBg_Color; - HMI_data.AlertTxt_Color = Def_AlertTxt_Color; - HMI_data.PercentTxt_Color = Def_PercentTxt_Color; - HMI_data.Barfill_Color = Def_Barfill_Color; - HMI_data.Indicator_Color = Def_Indicator_Color; - HMI_data.Coordinate_Color = Def_Coordinate_Color; -} - -void DWIN_SetDataDefaults() { - DWIN_SetColorDefaults(); - DWINUI::SetColors(HMI_data.Text_Color, HMI_data.Background_Color, HMI_data.StatusBg_Color); - TERN_(PIDTEMP, HMI_data.HotendPidT = DEF_HOTENDPIDT); - TERN_(PIDTEMPBED, HMI_data.BedPidT = DEF_BEDPIDT); - TERN_(DWIN_PID_TUNE, HMI_data.PidCycles = DEF_PIDCYCLES); + void dwinFilamentRunout(const uint8_t extruder) { LCD_MESSAGE(MSG_RUNOUT_SENSOR); } +#endif + +void dwinSetColorDefaults() { + hmiData.colorBackground = defColorBackground; + hmiData.colorCursor = defColorCursor; + hmiData.colorTitleBg = defColorTitleBg; + hmiData.colorTitleTxt = defColorTitleTxt; + hmiData.colorText = defColorText; + hmiData.colorSelected = defColorSelected; + hmiData.colorSplitLine = defColorSplitLine; + hmiData.colorHighlight = defColorHighlight; + hmiData.colorStatusBg = defColorStatusBg; + hmiData.colorStatusTxt = defColorStatusTxt; + hmiData.colorPopupBg = defColorPopupBg; + hmiData.colorPopupTxt = defColorPopupTxt; + hmiData.colorAlertBg = defColorAlertBg; + hmiData.colorAlertTxt = defColorAlertTxt; + hmiData.colorPercentTxt = defColorPercentTxt; + hmiData.colorBarfill = defColorBarfill; + hmiData.colorIndicator = defColorIndicator; + hmiData.colorCoordinate = defColorCoordinate; +} + +void dwinSetDataDefaults() { + dwinSetColorDefaults(); + DWINUI::setColors(hmiData.colorText, hmiData.colorBackground, hmiData.colorStatusBg); + TERN_(PIDTEMP, hmiData.hotendPidT = DEF_HOTENDPIDT); + TERN_(PIDTEMPBED, hmiData.bedPidT = DEF_BEDPIDT); + TERN_(PROUI_PID_TUNE, hmiData.pidCycles = DEF_PIDCYCLES); #if ENABLED(PREVENT_COLD_EXTRUSION) - HMI_data.ExtMinT = EXTRUDE_MINTEMP; - ApplyExtMinT(); + hmiData.extMinT = EXTRUDE_MINTEMP; + applyExtMinT(); #endif - TERN_(PREHEAT_BEFORE_LEVELING, HMI_data.BedLevT = LEVELING_BED_TEMP); - TERN_(BAUD_RATE_GCODE, SetBaud250K()); + TERN_(PREHEAT_BEFORE_LEVELING, hmiData.bedLevT = LEVELING_BED_TEMP); + TERN_(BAUD_RATE_GCODE, setBaud250K()); #if ALL(LCD_BED_TRAMMING, HAS_BED_PROBE) - HMI_data.FullManualTramming = DISABLED(BED_TRAMMING_USE_PROBE); + hmiData.fullManualTramming = DISABLED(BED_TRAMMING_USE_PROBE); #endif #if ENABLED(MEDIASORT_MENU_ITEM) - HMI_data.MediaSort = true; + hmiData.mediaSort = true; card.setSortOn(true); #endif - HMI_data.MediaAutoMount = ENABLED(HAS_SD_EXTENDER); + hmiData.mediaAutoMount = ENABLED(HAS_SD_EXTENDER); #if ALL(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) - HMI_data.z_after_homing = DEF_Z_AFTER_HOMING; + hmiData.zAfterHoming = DEF_Z_AFTER_HOMING; #endif #if ALL(LED_CONTROL_MENU, HAS_COLOR_LEDS) TERN_(LED_COLOR_PRESETS, leds.set_default()); - ApplyLEDColor(); + applyLEDColor(); #endif - TERN_(ADAPTIVE_STEP_SMOOTHING, HMI_data.AdaptiveStepSmoothing = true); - TERN_(HAS_GCODE_PREVIEW, HMI_data.EnablePreview = true); + TERN_(ADAPTIVE_STEP_SMOOTHING, hmiData.adaptiveStepSmoothing = true); + TERN_(HAS_GCODE_PREVIEW, hmiData.enablePreview = true); } -void DWIN_CopySettingsTo(char * const buff) { - memcpy(buff, &HMI_data, eeprom_data_size); +void dwinCopySettingsTo(char * const buff) { + memcpy(buff, &hmiData, eeprom_data_size); } -void DWIN_CopySettingsFrom(const char * const buff) { - memcpy(&HMI_data, buff, sizeof(HMI_data_t)); - if (HMI_data.Text_Color == HMI_data.Background_Color) DWIN_SetColorDefaults(); - DWINUI::SetColors(HMI_data.Text_Color, HMI_data.Background_Color, HMI_data.StatusBg_Color); - TERN_(PREVENT_COLD_EXTRUSION, ApplyExtMinT()); +void dwinCopySettingsFrom(const char * const buff) { + memcpy(&hmiData, buff, sizeof(hmi_data_t)); + if (hmiData.colorText == hmiData.colorBackground) dwinSetColorDefaults(); + DWINUI::setColors(hmiData.colorText, hmiData.colorBackground, hmiData.colorStatusBg); + TERN_(PREVENT_COLD_EXTRUSION, applyExtMinT()); feedrate_percentage = 100; - TERN_(BAUD_RATE_GCODE, HMI_SetBaudRate()); + TERN_(BAUD_RATE_GCODE, hmiSetBaudRate()); #if ALL(LED_CONTROL_MENU, HAS_COLOR_LEDS) leds.set_color( - HMI_data.Led_Color.r, - HMI_data.Led_Color.g, - HMI_data.Led_Color.b - OPTARG(HAS_WHITE_LED, HMI_data.Led_Color.w) + hmiData.ledColor.r, + hmiData.ledColor.g, + hmiData.ledColor.b + OPTARG(HAS_WHITE_LED, hmiData.ledColor.w) ); leds.update(); #endif @@ -1799,23 +1803,23 @@ void MarlinUI::init_lcd() { } void dwinInitScreen() { - DWIN_SetColorDefaults(); - HMI_Init(); // Draws boot screen + dwinSetColorDefaults(); + hmiInit(); // Draws boot screen DWINUI::init(); - DWINUI::SetColors(HMI_data.Text_Color, HMI_data.Background_Color, HMI_data.StatusBg_Color); - DWINUI::onTitleDraw = Draw_Title; - InitMenu(); + DWINUI::setColors(hmiData.colorText, hmiData.colorBackground, hmiData.colorStatusBg); + DWINUI::onTitleDraw = drawTitle; + initMenu(); checkkey = 255; hash_changed = true; - DWIN_DrawStatusLine(); - DWIN_Draw_Dashboard(); - Goto_Main_Menu(); + dwinDrawStatusLine(); + dwinDrawDashboard(); + gotoMainMenu(); } void MarlinUI::update() { - HMI_SDCardUpdate(); // SD card update - EachMomentUpdate(); // Status update - DWIN_HandleScreen(); // Rotary encoder update + hmiSDCardUpdate(); // SD card update + eachMomentUpdate(); // Status update + dwinHandleScreen(); // Rotary encoder update } void MarlinUI::refresh() { /* Nothing to see here */ } @@ -1825,149 +1829,149 @@ void MarlinUI::refresh() { /* Nothing to see here */ } #endif void MarlinUI::kill_screen(FSTR_P const lcd_error, FSTR_P const lcd_component) { - DWIN_Draw_Popup(ICON_BLTouch, GET_TEXT_F(MSG_PRINTER_KILLED), lcd_error); - DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 270, GET_TEXT_F(MSG_TURN_OFF)); + dwinDrawPopup(ICON_BLTouch, GET_TEXT_F(MSG_PRINTER_KILLED), lcd_error); + DWINUI::drawCenteredString(hmiData.colorPopupTxt, 270, GET_TEXT_F(MSG_TURN_OFF)); dwinUpdateLCD(); } -void DWIN_RebootScreen() { - dwinFrameClear(Color_Bg_Black); +void dwinRebootScreen() { + dwinFrameClear(COLOR_BG_BLACK); dwinJPGShowAndCache(0); - DWINUI::Draw_CenteredString(Color_White, 220, GET_TEXT_F(MSG_PLEASE_WAIT_REBOOT)); + DWINUI::drawCenteredString(COLOR_WHITE, 220, GET_TEXT_F(MSG_PLEASE_WAIT_REBOOT)); dwinUpdateLCD(); safe_delay(500); } -void DWIN_RedrawDash() { +void dwinRedrawDash() { hash_changed = true; - DWIN_DrawStatusMessage(); - DWIN_Draw_Dashboard(); + dwinDrawStatusMessage(); + dwinDrawDashboard(); } -void DWIN_RedrawScreen() { - Draw_Main_Area(); - DWIN_RedrawDash(); +void dwinRedrawScreen() { + drawMainArea(); + dwinRedrawDash(); } #if ENABLED(ADVANCED_PAUSE_FEATURE) - void DWIN_Popup_Pause(FSTR_P const fmsg, uint8_t button/*=0*/) { - HMI_SaveProcessID(button ? WaitResponse : NothingToDo); - DWIN_Show_Popup(ICON_BLTouch, GET_TEXT_F(MSG_ADVANCED_PAUSE), fmsg, button); + void dwinPopupPause(FSTR_P const fmsg, uint8_t button/*=0*/) { + hmiSaveProcessID(button ? ID_WaitResponse : ID_NothingToDo); + dwinShowPopup(ICON_BLTouch, GET_TEXT_F(MSG_ADVANCED_PAUSE), fmsg, button); } void MarlinUI::pause_show_message(const PauseMessage message, const PauseMode mode/*=PAUSE_MODE_SAME*/, const uint8_t extruder/*=active_extruder*/) { //if (mode == PAUSE_MODE_SAME) return; pause_mode = mode; switch (message) { - case PAUSE_MESSAGE_PARKING: DWIN_Popup_Pause(GET_TEXT_F(MSG_PAUSE_PRINT_PARKING)); break; // M125 - case PAUSE_MESSAGE_CHANGING: DWIN_Popup_Pause(GET_TEXT_F(MSG_FILAMENT_CHANGE_INIT)); break; // pause_print (M125, M600) - case PAUSE_MESSAGE_WAITING: DWIN_Popup_Pause(GET_TEXT_F(MSG_ADVANCED_PAUSE_WAITING), BTN_Continue); break; - case PAUSE_MESSAGE_INSERT: DWIN_Popup_Pause(GET_TEXT_F(MSG_FILAMENT_CHANGE_INSERT), BTN_Continue); break; - case PAUSE_MESSAGE_LOAD: DWIN_Popup_Pause(GET_TEXT_F(MSG_FILAMENT_CHANGE_LOAD)); break; - case PAUSE_MESSAGE_UNLOAD: DWIN_Popup_Pause(GET_TEXT_F(MSG_FILAMENT_CHANGE_UNLOAD)); break; // Unload of pause and Unload of M702 + case PAUSE_MESSAGE_PARKING: dwinPopupPause(GET_TEXT_F(MSG_PAUSE_PRINT_PARKING)); break; // M125 + case PAUSE_MESSAGE_CHANGING: dwinPopupPause(GET_TEXT_F(MSG_FILAMENT_CHANGE_INIT)); break; // pause_print (M125, M600) + case PAUSE_MESSAGE_WAITING: dwinPopupPause(GET_TEXT_F(MSG_ADVANCED_PAUSE_WAITING), BTN_Continue); break; + case PAUSE_MESSAGE_INSERT: dwinPopupPause(GET_TEXT_F(MSG_FILAMENT_CHANGE_INSERT), BTN_Continue); break; + case PAUSE_MESSAGE_LOAD: dwinPopupPause(GET_TEXT_F(MSG_FILAMENT_CHANGE_LOAD)); break; + case PAUSE_MESSAGE_UNLOAD: dwinPopupPause(GET_TEXT_F(MSG_FILAMENT_CHANGE_UNLOAD)); break; // Unload of pause and Unload of M702 case PAUSE_MESSAGE_PURGE: #if ENABLED(ADVANCED_PAUSE_CONTINUOUS_PURGE) - DWIN_Popup_Pause(GET_TEXT_F(MSG_FILAMENT_CHANGE_CONT_PURGE)); + dwinPopupPause(GET_TEXT_F(MSG_FILAMENT_CHANGE_CONT_PURGE)); #else - DWIN_Popup_Pause(GET_TEXT_F(MSG_FILAMENT_CHANGE_PURGE)); + dwinPopupPause(GET_TEXT_F(MSG_FILAMENT_CHANGE_PURGE)); #endif break; - case PAUSE_MESSAGE_OPTION: Goto_FilamentPurge(); break; - case PAUSE_MESSAGE_RESUME: DWIN_Popup_Pause(GET_TEXT_F(MSG_FILAMENT_CHANGE_RESUME)); break; - case PAUSE_MESSAGE_HEAT: DWIN_Popup_Pause(GET_TEXT_F(MSG_FILAMENT_CHANGE_HEAT), BTN_Continue); break; - case PAUSE_MESSAGE_HEATING: DWIN_Popup_Pause(GET_TEXT_F(MSG_FILAMENT_CHANGE_HEATING)); break; - case PAUSE_MESSAGE_STATUS: HMI_ReturnScreen(); break; // Exit from Pause, Load and Unload + case PAUSE_MESSAGE_OPTION: gotoFilamentPurge(); break; + case PAUSE_MESSAGE_RESUME: dwinPopupPause(GET_TEXT_F(MSG_FILAMENT_CHANGE_RESUME)); break; + case PAUSE_MESSAGE_HEAT: dwinPopupPause(GET_TEXT_F(MSG_FILAMENT_CHANGE_HEAT), BTN_Continue); break; + case PAUSE_MESSAGE_HEATING: dwinPopupPause(GET_TEXT_F(MSG_FILAMENT_CHANGE_HEATING)); break; + case PAUSE_MESSAGE_STATUS: hmiReturnScreen(); break; // Exit from Pause, Load and Unload default: break; } } - void Draw_Popup_FilamentPurge() { - DWIN_Draw_Popup(ICON_BLTouch, GET_TEXT_F(MSG_ADVANCED_PAUSE), GET_TEXT_F(MSG_FILAMENT_CHANGE_PURGE_CONTINUE)); - DWINUI::Draw_Button(BTN_Purge, 26, 280); - DWINUI::Draw_Button(BTN_Continue, 146, 280); - Draw_Select_Highlight(true); + void drawPopupFilamentPurge() { + dwinDrawPopup(ICON_BLTouch, GET_TEXT_F(MSG_ADVANCED_PAUSE), GET_TEXT_F(MSG_FILAMENT_CHANGE_PURGE_CONTINUE)); + DWINUI::drawButton(BTN_Purge, 26, 280); + DWINUI::drawButton(BTN_Continue, 146, 280); + drawSelectHighlight(true); } - void onClick_FilamentPurge() { + void onClickFilamentPurge() { if (hmiFlag.select_flag) pause_menu_response = PAUSE_RESPONSE_EXTRUDE_MORE; // "Purge More" button else { - HMI_SaveProcessID(NothingToDo); + hmiSaveProcessID(ID_NothingToDo); pause_menu_response = PAUSE_RESPONSE_RESUME_PRINT; // "Continue" button } } - void Goto_FilamentPurge() { + void gotoFilamentPurge() { pause_menu_response = PAUSE_RESPONSE_WAIT_FOR; - Goto_Popup(Draw_Popup_FilamentPurge, onClick_FilamentPurge); + gotoPopup(drawPopupFilamentPurge, onClickFilamentPurge); } #endif // ADVANCED_PAUSE_FEATURE #if HAS_MESH - void DWIN_MeshViewer() { + void dwinMeshViewer() { if (!leveling_is_valid()) - DWIN_Popup_Continue(ICON_BLTouch, GET_TEXT_F(MSG_MESH_VIEWER), GET_TEXT_F(MSG_NO_VALID_MESH)); + dwinPopupContinue(ICON_BLTouch, GET_TEXT_F(MSG_MESH_VIEWER), GET_TEXT_F(MSG_NO_VALID_MESH)); else { - HMI_SaveProcessID(WaitResponse); - MeshViewer.Draw(); + hmiSaveProcessID(ID_WaitResponse); + meshViewer.draw(); } } #endif #if HAS_LOCKSCREEN - void DWIN_LockScreen() { - if (checkkey != Locked) { + void dwinLockScreen() { + if (checkkey != ID_Locked) { lockScreen.rprocess = checkkey; - checkkey = Locked; + checkkey = ID_Locked; lockScreen.init(); } } - void DWIN_UnLockScreen() { - if (checkkey == Locked) { + void dwinUnLockScreen() { + if (checkkey == ID_Locked) { checkkey = lockScreen.rprocess; - Draw_Main_Area(); + drawMainArea(); } } - void HMI_LockScreen() { + void hmiLockScreen() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_NO) return; lockScreen.onEncoder(encoder_diffState); - if (lockScreen.isUnlocked()) DWIN_UnLockScreen(); + if (lockScreen.isUnlocked()) dwinUnLockScreen(); } #endif // HAS_LOCKSCREEN #if HAS_GCODE_PREVIEW - void SetPreview() { Toggle_Chkb_Line(HMI_data.EnablePreview); } + void setPreview() { toggleCheckboxLine(hmiData.enablePreview); } - void onClick_ConfirmToPrint() { - DWIN_ResetStatusLine(); + void onClickConfirmToPrint() { + dwinResetStatusLine(); if (hmiFlag.select_flag) { // Confirm - Goto_Main_Menu(); + gotoMainMenu(); return card.openAndPrintFile(card.filename); } else - HMI_ReturnScreen(); + hmiReturnScreen(); } #endif // HAS_GCODE_PREVIEW -void Goto_ConfirmToPrint() { +void gotoConfirmToPrint() { #if HAS_GCODE_PREVIEW - if (HMI_data.EnablePreview) return Goto_Popup(Preview_DrawFromSD, onClick_ConfirmToPrint); + if (hmiData.enablePreview) return gotoPopup(Preview_DrawFromSD, onClickConfirmToPrint); #endif card.openAndPrintFile(card.filename); // Direct print SD file } #if HAS_ESDIAG - void Draw_EndStopDiag() { - HMI_SaveProcessID(ESDiagProcess); - ESDiag.Draw(); + void drawEndStopDiag() { + hmiSaveProcessID(ID_ESDiagProcess); + esDiag.draw(); } #endif @@ -1979,80 +1983,80 @@ void Goto_ConfirmToPrint() { #if ENABLED(EEPROM_SETTINGS) - void WriteEeprom() { - DWIN_DrawStatusLine(GET_TEXT_F(MSG_STORE_EEPROM)); + void writeEEPROM() { + dwinDrawStatusLine(GET_TEXT_F(MSG_STORE_EEPROM)); dwinUpdateLCD(); DONE_BUZZ(settings.save()); } - void ReadEeprom() { + void readEEPROM() { const bool success = settings.load(); - DWIN_RedrawScreen(); + dwinRedrawScreen(); DONE_BUZZ(success); } - void ResetEeprom() { + void resetEEPROM() { settings.reset(); - DWIN_RedrawScreen(); + dwinRedrawScreen(); DONE_BUZZ(true); } #if HAS_MESH - void SaveMesh() { TERN(AUTO_BED_LEVELING_UBL, UBLMeshSave(), WriteEeprom()); } + void saveMesh() { TERN(AUTO_BED_LEVELING_UBL, ublMeshSave(), writeEEPROM()); } #endif #endif // EEPROM_SETTINGS // Reset Printer -void RebootPrinter() { +void rebootPrinter() { wait_for_heatup = wait_for_user = false; // Stop waiting for heating/user thermalManager.disable_all_heaters(); planner.finish_and_disable(); - DWIN_RebootScreen(); + dwinRebootScreen(); hal.reboot(); } -void Goto_Info_Menu() { - Draw_Info_Menu(); +void gotoInfoMenu() { + drawInfoMenu(); dwinUpdateLCD(); - HMI_SaveProcessID(WaitResponse); + hmiSaveProcessID(ID_WaitResponse); } -void DisableMotors() { queue.inject(F("M84")); } +void disableMotors() { queue.inject(F("M84")); } -void AutoLev() { // Always reacquire the Z "home" position +void autoLevel() { // Always reacquire the Z "home" position queue.inject(F(TERN(AUTO_BED_LEVELING_UBL, "G29P1", "G29"))); } -void AutoHome() { queue.inject_P(G28_STR); } +void autoHome() { queue.inject_P(G28_STR); } #if ENABLED(INDIVIDUAL_AXIS_HOMING_SUBMENU) - void HomeX() { queue.inject(F("G28X")); } - void HomeY() { queue.inject(F("G28Y")); } - void HomeZ() { queue.inject(F("G28Z")); } + void homeX() { queue.inject(F("G28X")); } + void homeY() { queue.inject(F("G28Y")); } + void homeZ() { queue.inject(F("G28Z")); } #if ALL(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) - void ApplyZAfterHoming() { HMI_data.z_after_homing = MenuData.Value; }; - void SetZAfterHoming() { SetIntOnClick(0, 20, HMI_data.z_after_homing, ApplyZAfterHoming); } + void applyZAfterHoming() { hmiData.zAfterHoming = menuData.value; }; + void setZAfterHoming() { setIntOnClick(0, 20, hmiData.zAfterHoming, applyZAfterHoming); } #endif #endif #if HAS_ZOFFSET_ITEM - void ApplyZOffset() { TERN_(EEPROM_SETTINGS, settings.save()); } - void LiveZOffset() { + void applyZOffset() { TERN_(EEPROM_SETTINGS, settings.save()); } + void liveZOffset() { #if ANY(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) - const_float_t step_zoffset = round((MenuData.Value / 100.0f) * planner.settings.axis_steps_per_mm[Z_AXIS]) - babystep.accum; + const_float_t step_zoffset = round((menuData.value / 100.0f) * planner.settings.axis_steps_per_mm[Z_AXIS]) - babystep.accum; if (BABYSTEP_ALLOWED()) babystep.add_steps(Z_AXIS, step_zoffset); #endif } - void SetZOffset() { + void setZOffset() { #if ANY(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) babystep.accum = round(planner.settings.axis_steps_per_mm[Z_AXIS] * BABY_Z_VAR); #endif - SetPFloatOnClick(Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX, 2, ApplyZOffset, LiveZOffset); + setPFloatOnClick(Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX, 2, applyZOffset, liveZOffset); } - void SetMoveZto0() { + void setMoveZto0() { #if ENABLED(Z_SAFE_HOMING) gcode.process_subcommands_now(MString<54>(F("G28XYO\nG28Z\nG0F5000X"), Z_SAFE_HOMING_X_POINT, F("Y"), Z_SAFE_HOMING_Y_POINT, F("\nG0Z0F300\nM400"))); #else @@ -2064,213 +2068,213 @@ void AutoHome() { queue.inject_P(G28_STR); } } #if !HAS_BED_PROBE - void HomeZandDisable() { - SetMoveZto0(); - DisableMotors(); + void homeZAndDisable() { + setMoveZto0(); + disableMotors(); } #endif #endif // HAS_ZOFFSET_ITEM #if HAS_PREHEAT - #define _DoPreheat(N) void DoPreheat##N() { ui.preheat_all(N-1); }\ + #define _doPreheat(N) void DoPreheat##N() { ui.preheat_all(N-1); }\ void DoPreheatHotend##N() { ui.preheat_hotend(N-1); } - REPEAT_1(PREHEAT_COUNT, _DoPreheat) + REPEAT_1(PREHEAT_COUNT, _doPreheat) #endif -void DoCoolDown() { thermalManager.cooldown(); } +void doCoolDown() { thermalManager.cooldown(); } -void SetLanguage() { - HMI_ToggleLanguage(); - CurrentMenu = nullptr; // Invalidate menu to full redraw - Draw_Prepare_Menu(); +void setLanguage() { + hmiToggleLanguage(); + currentMenu = nullptr; // Invalidate menu to full redraw + drawPrepareMenu(); } -bool EnableLiveMove = false; -void SetLiveMove() { Toggle_Chkb_Line(EnableLiveMove); } -void AxisMove(AxisEnum axis) { +bool enableLiveMove = false; +void setLiveMove() { toggleCheckboxLine(enableLiveMove); } +void axisMove(AxisEnum axis) { #if HAS_HOTEND if (axis == E_AXIS && thermalManager.tooColdToExtrude(0)) { gcode.process_subcommands_now(F("G92E0")); // Reset extruder position - return DWIN_Popup_Confirm(ICON_TempTooLow, GET_TEXT_F(MSG_HOTEND_TOO_COLD), GET_TEXT_F(MSG_PLEASE_PREHEAT)); + return dwinPopupConfirm(ICON_TempTooLow, GET_TEXT_F(MSG_HOTEND_TOO_COLD), GET_TEXT_F(MSG_PLEASE_PREHEAT)); } #endif planner.synchronize(); if (!planner.is_full()) planner.buffer_line(current_position, manual_feedrate_mm_s[axis]); } -void LiveMove() { - if (!EnableLiveMove) return; - *MenuData.P_Float = MenuData.Value / MINUNITMULT; - AxisMove(HMI_value.axis); +void liveMove() { + if (!enableLiveMove) return; + *menuData.floatPtr = menuData.value / MINUNITMULT; + axisMove(hmiValue.axis); } -void ApplyMove() { - if (EnableLiveMove) return; - AxisMove(HMI_value.axis); +void applyMove() { + if (enableLiveMove) return; + axisMove(hmiValue.axis); } -void SetMoveX() { HMI_value.axis = X_AXIS; SetPFloatOnClick(X_MIN_POS, X_MAX_POS, UNITFDIGITS, ApplyMove, LiveMove); } -void SetMoveY() { HMI_value.axis = Y_AXIS; SetPFloatOnClick(Y_MIN_POS, Y_MAX_POS, UNITFDIGITS, ApplyMove, LiveMove); } -void SetMoveZ() { HMI_value.axis = Z_AXIS; SetPFloatOnClick(Z_MIN_POS, Z_MAX_POS, UNITFDIGITS, ApplyMove, LiveMove); } +void setMoveX() { hmiValue.axis = X_AXIS; setPFloatOnClick(X_MIN_POS, X_MAX_POS, UNITFDIGITS, applyMove, liveMove); } +void setMoveY() { hmiValue.axis = Y_AXIS; setPFloatOnClick(Y_MIN_POS, Y_MAX_POS, UNITFDIGITS, applyMove, liveMove); } +void setMoveZ() { hmiValue.axis = Z_AXIS; setPFloatOnClick(Z_MIN_POS, Z_MAX_POS, UNITFDIGITS, applyMove, liveMove); } #if HAS_HOTEND - void SetMoveE() { + void setMoveE() { const float e_min = current_position.e - (EXTRUDE_MAXLENGTH), e_max = current_position.e + (EXTRUDE_MAXLENGTH); - HMI_value.axis = E_AXIS; SetPFloatOnClick(e_min, e_max, UNITFDIGITS, ApplyMove, LiveMove); + hmiValue.axis = E_AXIS; setPFloatOnClick(e_min, e_max, UNITFDIGITS, applyMove, liveMove); } #endif #if ENABLED(POWER_LOSS_RECOVERY) - void SetPwrLossr() { - Toggle_Chkb_Line(recovery.enabled); + void setPwrLossr() { + toggleCheckboxLine(recovery.enabled); recovery.changed(); } #endif #if ENABLED(BAUD_RATE_GCODE) - void HMI_SetBaudRate() { HMI_data.Baud115K ? SetBaud115K() : SetBaud250K(); } - void SetBaudRate() { - HMI_data.Baud115K ^= true; - HMI_SetBaudRate(); - Draw_Chkb_Line(CurrentMenu->line(), HMI_data.Baud115K); + void hmiSetBaudRate() { hmiData.baud115K ? setBaud115K() : setBaud250K(); } + void setBaudRate() { + hmiData.baud115K ^= true; + hmiSetBaudRate(); + drawCheckboxLine(currentMenu->line(), hmiData.baud115K); dwinUpdateLCD(); } - void SetBaud115K() { queue.inject(F("M575 P0 B115200")); HMI_data.Baud115K = true; } - void SetBaud250K() { queue.inject(F("M575 P0 B250000")); HMI_data.Baud115K = false; } + void setBaud115K() { queue.inject(F("M575 P0 B115200")); hmiData.baud115K = true; } + void setBaud250K() { queue.inject(F("M575 P0 B250000")); hmiData.baud115K = false; } #endif #if HAS_LCD_BRIGHTNESS - void ApplyBrightness() { ui.set_brightness(MenuData.Value); } - void LiveBrightness() { dwinLCDBrightness(MenuData.Value); } - void SetBrightness() { SetIntOnClick(LCD_BRIGHTNESS_MIN, LCD_BRIGHTNESS_MAX, ui.brightness, ApplyBrightness, LiveBrightness); } - void TurnOffBacklight() { HMI_SaveProcessID(WaitResponse); ui.set_brightness(0); DWIN_RedrawScreen(); } + void applyBrightness() { ui.set_brightness(menuData.value); } + void liveBrightness() { dwinLCDBrightness(menuData.value); } + void setBrightness() { setIntOnClick(LCD_BRIGHTNESS_MIN, LCD_BRIGHTNESS_MAX, ui.brightness, applyBrightness, liveBrightness); } + void turnOffBacklight() { hmiSaveProcessID(ID_WaitResponse); ui.set_brightness(0); dwinRedrawScreen(); } #endif #if ENABLED(CASE_LIGHT_MENU) - void SetCaseLight() { - Toggle_Chkb_Line(caselight.on); + void setCaseLight() { + toggleCheckboxLine(caselight.on); caselight.update_enabled(); } #if ENABLED(CASELIGHT_USES_BRIGHTNESS) - void LiveCaseLightBrightness() { caselight.brightness = MenuData.Value; caselight.update_brightness(); } - void SetCaseLightBrightness() { SetIntOnClick(0, 255, caselight.brightness, nullptr, LiveCaseLightBrightness); } + void liveCaseLightBrightness() { caselight.brightness = menuData.value; caselight.update_brightness(); } + void setCaseLightBrightness() { setIntOnClick(0, 255, caselight.brightness, nullptr, liveCaseLightBrightness); } #endif #endif #if ENABLED(LED_CONTROL_MENU) #if !ALL(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL) - void SetLedStatus() { + void setLedStatus() { leds.toggle(); - Show_Chkb_Line(leds.lights_on); + showCheckboxLine(leds.lights_on); } #endif #if HAS_COLOR_LEDS - void ApplyLEDColor() { - HMI_data.Led_Color = LEDColor( {leds.color.r, leds.color.g, leds.color.b OPTARG(HAS_WHITE_LED, HMI_data.Led_Color.w) } ); - } - void LiveLEDColor(uint8_t *color) { *color = MenuData.Value; leds.update(); } - void LiveLEDColorR() { LiveLEDColor(&leds.color.r); } - void LiveLEDColorG() { LiveLEDColor(&leds.color.g); } - void LiveLEDColorB() { LiveLEDColor(&leds.color.b); } - void SetLEDColorR() { SetIntOnClick(0, 255, leds.color.r, ApplyLEDColor, LiveLEDColorR); } - void SetLEDColorG() { SetIntOnClick(0, 255, leds.color.g, ApplyLEDColor, LiveLEDColorG); } - void SetLEDColorB() { SetIntOnClick(0, 255, leds.color.b, ApplyLEDColor, LiveLEDColorB); } + void applyLEDColor() { + hmiData.ledColor = LEDColor( {leds.color.r, leds.color.g, leds.color.b OPTARG(HAS_WHITE_LED, hmiData.ledColor.w) } ); + } + void liveLEDColor(uint8_t *color) { *color = menuData.value; leds.update(); } + void liveLEDColorR() { liveLEDColor(&leds.color.r); } + void liveLEDColorG() { liveLEDColor(&leds.color.g); } + void liveLEDColorB() { liveLEDColor(&leds.color.b); } + void setLEDColorR() { setIntOnClick(0, 255, leds.color.r, applyLEDColor, liveLEDColorR); } + void setLEDColorG() { setIntOnClick(0, 255, leds.color.g, applyLEDColor, liveLEDColorG); } + void setLEDColorB() { setIntOnClick(0, 255, leds.color.b, applyLEDColor, liveLEDColorB); } #if HAS_WHITE_LED - void LiveLEDColorW() { LiveLEDColor(&leds.color.w); } - void SetLEDColorW() { SetIntOnClick(0, 255, leds.color.w, ApplyLEDColor, LiveLEDColorW); } + void liveLEDColorW() { liveLEDColor(&leds.color.w); } + void setLEDColorW() { setIntOnClick(0, 255, leds.color.w, applyLEDColor, liveLEDColorW); } #endif #endif #endif #if ENABLED(SOUND_MENU_ITEM) - void SetEnableSound() { - Toggle_Chkb_Line(ui.sound_on); + void setEnableSound() { + toggleCheckboxLine(ui.sound_on); } #endif #if HAS_HOME_OFFSET - void ApplyHomeOffset() { set_home_offset(HMI_value.axis, MenuData.Value / MINUNITMULT); } - void SetHomeOffsetX() { HMI_value.axis = X_AXIS; SetPFloatOnClick(-50, 50, UNITFDIGITS, ApplyHomeOffset); } - void SetHomeOffsetY() { HMI_value.axis = Y_AXIS; SetPFloatOnClick(-50, 50, UNITFDIGITS, ApplyHomeOffset); } - void SetHomeOffsetZ() { HMI_value.axis = Z_AXIS; SetPFloatOnClick( -2, 2, UNITFDIGITS, ApplyHomeOffset); } + void applyHomeOffset() { set_home_offset(hmiValue.axis, menuData.value / MINUNITMULT); } + void setHomeOffsetX() { hmiValue.axis = X_AXIS; setPFloatOnClick(-50, 50, UNITFDIGITS, applyHomeOffset); } + void setHomeOffsetY() { hmiValue.axis = Y_AXIS; setPFloatOnClick(-50, 50, UNITFDIGITS, applyHomeOffset); } + void setHomeOffsetZ() { hmiValue.axis = Z_AXIS; setPFloatOnClick( -2, 2, UNITFDIGITS, applyHomeOffset); } #endif #if HAS_BED_PROBE - void SetProbeOffsetX() { SetPFloatOnClick(-60, 60, UNITFDIGITS); } - void SetProbeOffsetY() { SetPFloatOnClick(-60, 60, UNITFDIGITS); } - void SetProbeOffsetZ() { SetPFloatOnClick(-10, 10, 2); } - void ProbeTest() { + void setProbeOffsetX() { setPFloatOnClick(-60, 60, UNITFDIGITS); } + void setProbeOffsetY() { setPFloatOnClick(-60, 60, UNITFDIGITS); } + void setProbeOffsetZ() { setPFloatOnClick(-10, 10, 2); } + void probeTest() { LCD_MESSAGE(MSG_M48_TEST); queue.inject(F("G28O\nM48 P10")); } - void ProbeStow() { probe.stow(); } - void ProbeDeploy() { probe.deploy(); } + void probeStow() { probe.stow(); } + void probeDeploy() { probe.deploy(); } #if HAS_BLTOUCH_HS_MODE - void SetHSMode() { Toggle_Chkb_Line(bltouch.high_speed_mode); } + void setHSMode() { toggleCheckboxLine(bltouch.high_speed_mode); } #endif #endif #if HAS_FILAMENT_SENSOR - void SetRunoutEnable() { + void setRunoutEnable() { runout.reset(); - Toggle_Chkb_Line(runout.enabled); + toggleCheckboxLine(runout.enabled); } #if HAS_FILAMENT_RUNOUT_DISTANCE - void ApplyRunoutDistance() { runout.set_runout_distance(MenuData.Value / MINUNITMULT); } - void SetRunoutDistance() { SetFloatOnClick(0, 999, UNITFDIGITS, runout.runout_distance(), ApplyRunoutDistance); } + void applyRunoutDistance() { runout.set_runout_distance(menuData.value / MINUNITMULT); } + void setRunoutDistance() { setFloatOnClick(0, 999, UNITFDIGITS, runout.runout_distance(), applyRunoutDistance); } #endif #endif #if ENABLED(ADVANCED_PAUSE_FEATURE) - void SetFilLoad() { SetPFloatOnClick(0, MAX_LOAD_UNLOAD, UNITFDIGITS); } - void SetFilUnload() { SetPFloatOnClick(0, MAX_LOAD_UNLOAD, UNITFDIGITS); } + void setFilLoad() { setPFloatOnClick(0, MAX_LOAD_UNLOAD, UNITFDIGITS); } + void setFilUnload() { setPFloatOnClick(0, MAX_LOAD_UNLOAD, UNITFDIGITS); } #endif #if ENABLED(PREVENT_COLD_EXTRUSION) - void ApplyExtMinT() { thermalManager.extrude_min_temp = HMI_data.ExtMinT; thermalManager.allow_cold_extrude = (HMI_data.ExtMinT == 0); } - void SetExtMinT() { SetPIntOnClick(MIN_ETEMP, MAX_ETEMP, ApplyExtMinT); } + void applyExtMinT() { thermalManager.extrude_min_temp = hmiData.extMinT; thermalManager.allow_cold_extrude = (hmiData.extMinT == 0); } + void setExtMinT() { setPIntOnClick(MIN_ETEMP, MAX_ETEMP, applyExtMinT); } #endif -void SetSpeed() { SetPIntOnClick(MIN_PRINT_SPEED, MAX_PRINT_SPEED); } +void setSpeed() { setPIntOnClick(MIN_PRINT_SPEED, MAX_PRINT_SPEED); } #if HAS_HOTEND - void ApplyHotendTemp() { thermalManager.setTargetHotend(MenuData.Value, 0); } - void SetHotendTemp() { SetIntOnClick(MIN_ETEMP, MAX_ETEMP, thermalManager.degTargetHotend(0), ApplyHotendTemp); } + void applyHotendTemp() { thermalManager.setTargetHotend(menuData.value, 0); } + void setHotendTemp() { setIntOnClick(MIN_ETEMP, MAX_ETEMP, thermalManager.degTargetHotend(0), applyHotendTemp); } #endif #if HAS_HEATED_BED - void ApplyBedTemp() { thermalManager.setTargetBed(MenuData.Value); } - void SetBedTemp() { SetIntOnClick(MIN_BEDTEMP, MAX_BEDTEMP, thermalManager.degTargetBed(), ApplyBedTemp); } + void applyBedTemp() { thermalManager.setTargetBed(menuData.value); } + void setBedTemp() { setIntOnClick(MIN_BEDTEMP, MAX_BEDTEMP, thermalManager.degTargetBed(), applyBedTemp); } #endif #if HAS_FAN - void ApplyFanSpeed() { thermalManager.set_fan_speed(0, MenuData.Value); } - void SetFanSpeed() { SetIntOnClick(0, 255, thermalManager.fan_speed[0], ApplyFanSpeed); } + void applyFanSpeed() { thermalManager.set_fan_speed(0, menuData.value); } + void setFanSpeed() { setIntOnClick(0, 255, thermalManager.fan_speed[0], applyFanSpeed); } #endif #if ENABLED(ADVANCED_PAUSE_FEATURE) - void ChangeFilament() { - HMI_SaveProcessID(NothingToDo); + void changeFilament() { + hmiSaveProcessID(ID_NothingToDo); queue.inject(F("M600 B2")); } #if ENABLED(NOZZLE_PARK_FEATURE) - void ParkHead() { + void parkHead() { LCD_MESSAGE(MSG_FILAMENT_PARK_ENABLED); queue.inject(F("G28O\nG27")); } #endif #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) - void UnloadFilament() { + void unloadFilament() { LCD_MESSAGE(MSG_FILAMENTUNLOAD); queue.inject(F("M702 Z20")); } - void LoadFilament() { + void loadFilament() { LCD_MESSAGE(MSG_FILAMENTLOAD); queue.inject(F("M701 Z20")); } @@ -2278,13 +2282,13 @@ void SetSpeed() { SetPIntOnClick(MIN_PRINT_SPEED, MAX_PRINT_SPEED); } #endif // ADVANCED_PAUSE_FEATURE -void SetFlow() { SetPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refresh_e_factor(0); }); } +void setFlow() { setPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refresh_e_factor(0); }); } // Bed Tramming #if ENABLED(LCD_BED_TRAMMING) - void TramXY(const uint8_t point, float &x, float &y) { + void tramXY(const uint8_t point, float &x, float &y) { switch (point) { case 0: LCD_MESSAGE(MSG_TRAM_FL); @@ -2317,14 +2321,14 @@ void SetFlow() { SetPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refr #if HAS_BED_PROBE - float Tram(const uint8_t point) { + float tram(const uint8_t point) { static bool inLev = false; if (inLev) return NAN; float xpos = 0, ypos = 0, zval = 0; - TramXY(point, xpos, ypos); + tramXY(point, xpos, ypos); - if (HMI_data.FullManualTramming) { + if (hmiData.fullManualTramming) { queue.inject(MString<100>( F("M420S0\nG28O\nG90\nG0F300Z5\nG0F5000X"), p_float_t(xpos, 1), 'Y', p_float_t(ypos, 1), F("\nG0F300Z0") )); @@ -2361,9 +2365,9 @@ void SetFlow() { SetPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refr #else - void Tram(const uint8_t point) { + void tram(const uint8_t point) { float xpos = 0, ypos = 0; - TramXY(point, xpos, ypos); + tramXY(point, xpos, ypos); queue.inject(MString<100>( F("M420S0\nG28O\nG90\nG0F300Z5\nG0F5000X"), p_float_t(xpos, 1), 'Y', p_float_t(ypos, 1), F("\nG0F300Z0") )); @@ -2371,49 +2375,49 @@ void SetFlow() { SetPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refr #endif - inline void TramFL() { Tram(0); } - inline void TramFR() { Tram(1); } - inline void TramBR() { Tram(2); } - inline void TramBL() { Tram(3); } + inline void tramFL() { tram(0); } + inline void tramFR() { tram(1); } + inline void tramBR() { tram(2); } + inline void tramBL() { tram(3); } #if ENABLED(BED_TRAMMING_INCLUDE_CENTER) - inline void TramC() { Tram(4); } + inline void tramC() { tram(4); } #endif #if HAS_BED_PROBE && HAS_MESH - void Trammingwizard() { - if (HMI_data.FullManualTramming) { + void trammingwizard() { + if (hmiData.fullManualTramming) { LCD_MESSAGE_F("Disable manual tramming"); return; } bed_mesh_t zval = {0}; - zval[0][0] = TramFL(); - checkkey = NothingToDo; - MeshViewer.DrawMesh(zval, 2, 2); - zval[1][0] = TramFR(); - MeshViewer.DrawMesh(zval, 2, 2); - zval[1][1] = TramBR(); - MeshViewer.DrawMesh(zval, 2, 2); - zval[0][1] = TramBL(); - MeshViewer.DrawMesh(zval, 2, 2); - - DWINUI::Draw_CenteredString(140, F("Calculating average")); - DWINUI::Draw_CenteredString(160, F("and relative heights")); + zval[0][0] = tramFL(); + checkkey = ID_NothingToDo; + meshViewer.drawMesh(zval, 2, 2); + zval[1][0] = tramFR(); + meshViewer.drawMesh(zval, 2, 2); + zval[1][1] = tramBR(); + meshViewer.drawMesh(zval, 2, 2); + zval[0][1] = tramBL(); + meshViewer.drawMesh(zval, 2, 2); + + DWINUI::drawCenteredString(140, F("Calculating average")); + DWINUI::drawCenteredString(160, F("and relative heights")); safe_delay(1000); float avg = 0.0f; for (uint8_t x = 0; x < 2; ++x) for (uint8_t y = 0; y < 2; ++y) avg += zval[x][y]; avg /= 4.0f; for (uint8_t x = 0; x < 2; ++x) for (uint8_t y = 0; y < 2; ++y) zval[x][y] -= avg; - MeshViewer.DrawMesh(zval, 2, 2); + meshViewer.drawMesh(zval, 2, 2); ui.reset_status(); #ifndef BED_TRAMMING_PROBE_TOLERANCE #define BED_TRAMMING_PROBE_TOLERANCE 0.05 #endif - if (ABS(MeshViewer.max - MeshViewer.min) < BED_TRAMMING_PROBE_TOLERANCE) { - DWINUI::Draw_CenteredString(140, F("Corners leveled")); - DWINUI::Draw_CenteredString(160, F("Tolerance achieved!")); + if (ABS(meshViewer.max - meshViewer.min) < BED_TRAMMING_PROBE_TOLERANCE) { + DWINUI::drawCenteredString(140, F("Corners leveled")); + DWINUI::drawCenteredString(160, F("Tolerance achieved!")); } else { uint8_t p = 0; @@ -2435,18 +2439,18 @@ void SetFlow() { SetPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refr case 0b11 : plabel = GET_TEXT_F(MSG_TRAM_BR); break; default : plabel = F(""); break; } - DWINUI::Draw_CenteredString(120, F("Corners not leveled")); - DWINUI::Draw_CenteredString(140, F("Knob adjustment required")); - DWINUI::Draw_CenteredString(Color_Green, 160, s ? F("Lower") : F("Raise")); - DWINUI::Draw_CenteredString(Color_Green, 180, plabel); + DWINUI::drawCenteredString(120, F("Corners not leveled")); + DWINUI::drawCenteredString(140, F("Knob adjustment required")); + DWINUI::drawCenteredString(COLOR_GREEN, 160, s ? F("Lower") : F("Raise")); + DWINUI::drawCenteredString(COLOR_GREEN, 180, plabel); } - DWINUI::Draw_Button(BTN_Continue, 86, 305); - checkkey = Menu; - HMI_SaveProcessID(WaitResponse); + DWINUI::drawButton(BTN_Continue, 86, 305); + checkkey = ID_Menu; + hmiSaveProcessID(ID_WaitResponse); } - void SetManualTramming() { - Toggle_Chkb_Line(HMI_data.FullManualTramming); + void setManualTramming() { + toggleCheckboxLine(hmiData.fullManualTramming); } #endif // HAS_BED_PROBE && HAS_MESH @@ -2455,30 +2459,30 @@ void SetFlow() { SetPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refr #if ENABLED(MESH_BED_LEVELING) - void ManualMeshStart() { + void manualMeshStart() { LCD_MESSAGE(MSG_UBL_BUILD_MESH_MENU); gcode.process_subcommands_now(F("G28XYO\nG28Z\nM211S0\nG29S1")); #ifdef MANUAL_PROBE_START_Z - const uint8_t line = CurrentMenu->line(MMeshMoveZItem->pos); - DWINUI::Draw_Signed_Float(HMI_data.Text_Color, HMI_data.Background_Color, 3, 2, VALX - 2 * DWINUI::fontWidth(DWIN_FONT_MENU), MBASE(line), MANUAL_PROBE_START_Z); + const uint8_t line = currentMenu->line(mMeshMoveZItem->pos); + DWINUI::drawSignedFloat(hmiData.colorText, hmiData.colorBackground, 3, 2, VALX - 2 * DWINUI::fontWidth(DWIN_FONT_MENU), MBASE(line), MANUAL_PROBE_START_Z); #endif } - void LiveMeshMoveZ() { - *MenuData.P_Float = MenuData.Value / POW(10, 2); + void liveMeshMoveZ() { + *menuData.floatPtr = menuData.value / POW(10, 2); if (!planner.is_full()) { planner.synchronize(); planner.buffer_line(current_position, manual_feedrate_mm_s[Z_AXIS]); } } - void SetMMeshMoveZ() { SetPFloatOnClick(-1, 1, 2, planner.synchronize, LiveMeshMoveZ); } + void setMMeshMoveZ() { setPFloatOnClick(-1, 1, 2, planner.synchronize, liveMeshMoveZ); } - void ManualMeshContinue() { + void manualMeshContinue() { gcode.process_subcommands_now(F("G29S2")); - MMeshMoveZItem->redraw(); + mMeshMoveZItem->redraw(); } - void ManualMeshSave() { + void manualMeshSave() { LCD_MESSAGE(MSG_UBL_STORAGE_MESH_MENU); queue.inject(F("M211S1\nM500")); } @@ -2487,207 +2491,207 @@ void SetFlow() { SetPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refr #if HAS_PREHEAT #if HAS_HOTEND - void SetPreheatEndTemp() { SetPIntOnClick(MIN_ETEMP, MAX_ETEMP); } + void setPreheatEndTemp() { setPIntOnClick(MIN_ETEMP, MAX_ETEMP); } #endif #if HAS_HEATED_BED - void SetPreheatBedTemp() { SetPIntOnClick(MIN_BEDTEMP, MAX_BEDTEMP); } + void setPreheatBedTemp() { setPIntOnClick(MIN_BEDTEMP, MAX_BEDTEMP); } #endif #if HAS_FAN - void SetPreheatFanSpeed() { SetPIntOnClick(0, 255); } + void setPreheatFanSpeed() { setPIntOnClick(0, 255); } #endif #endif -void ApplyMaxSpeed() { planner.set_max_feedrate(HMI_value.axis, MenuData.Value / MINUNITMULT); } +void applyMaxSpeed() { planner.set_max_feedrate(hmiValue.axis, menuData.value / MINUNITMULT); } #if HAS_X_AXIS - void SetMaxSpeedX() { HMI_value.axis = X_AXIS, SetFloatOnClick(min_feedrate_edit_values.x, max_feedrate_edit_values.x, UNITFDIGITS, planner.settings.max_feedrate_mm_s[X_AXIS], ApplyMaxSpeed); } + void setMaxSpeedX() { hmiValue.axis = X_AXIS, setFloatOnClick(min_feedrate_edit_values.x, max_feedrate_edit_values.x, UNITFDIGITS, planner.settings.max_feedrate_mm_s[X_AXIS], applyMaxSpeed); } #endif #if HAS_Y_AXIS - void SetMaxSpeedY() { HMI_value.axis = Y_AXIS, SetFloatOnClick(min_feedrate_edit_values.y, max_feedrate_edit_values.y, UNITFDIGITS, planner.settings.max_feedrate_mm_s[Y_AXIS], ApplyMaxSpeed); } + void setMaxSpeedY() { hmiValue.axis = Y_AXIS, setFloatOnClick(min_feedrate_edit_values.y, max_feedrate_edit_values.y, UNITFDIGITS, planner.settings.max_feedrate_mm_s[Y_AXIS], applyMaxSpeed); } #endif #if HAS_Z_AXIS - void SetMaxSpeedZ() { HMI_value.axis = Z_AXIS, SetFloatOnClick(min_feedrate_edit_values.z, max_feedrate_edit_values.z, UNITFDIGITS, planner.settings.max_feedrate_mm_s[Z_AXIS], ApplyMaxSpeed); } + void setMaxSpeedZ() { hmiValue.axis = Z_AXIS, setFloatOnClick(min_feedrate_edit_values.z, max_feedrate_edit_values.z, UNITFDIGITS, planner.settings.max_feedrate_mm_s[Z_AXIS], applyMaxSpeed); } #endif #if HAS_HOTEND - void SetMaxSpeedE() { HMI_value.axis = E_AXIS; SetFloatOnClick(min_feedrate_edit_values.e, max_feedrate_edit_values.e, UNITFDIGITS, planner.settings.max_feedrate_mm_s[E_AXIS], ApplyMaxSpeed); } + void setMaxSpeedE() { hmiValue.axis = E_AXIS; setFloatOnClick(min_feedrate_edit_values.e, max_feedrate_edit_values.e, UNITFDIGITS, planner.settings.max_feedrate_mm_s[E_AXIS], applyMaxSpeed); } #endif -void ApplyMaxAccel() { planner.set_max_acceleration(HMI_value.axis, MenuData.Value); } +void applyMaxAccel() { planner.set_max_acceleration(hmiValue.axis, menuData.value); } #if HAS_X_AXIS - void SetMaxAccelX() { HMI_value.axis = X_AXIS, SetIntOnClick(min_acceleration_edit_values.x, max_acceleration_edit_values.x, planner.settings.max_acceleration_mm_per_s2[X_AXIS], ApplyMaxAccel); } + void setMaxAccelX() { hmiValue.axis = X_AXIS, setIntOnClick(min_acceleration_edit_values.x, max_acceleration_edit_values.x, planner.settings.max_acceleration_mm_per_s2[X_AXIS], applyMaxAccel); } #endif #if HAS_Y_AXIS - void SetMaxAccelY() { HMI_value.axis = Y_AXIS, SetIntOnClick(min_acceleration_edit_values.y, max_acceleration_edit_values.y, planner.settings.max_acceleration_mm_per_s2[Y_AXIS], ApplyMaxAccel); } + void setMaxAccelY() { hmiValue.axis = Y_AXIS, setIntOnClick(min_acceleration_edit_values.y, max_acceleration_edit_values.y, planner.settings.max_acceleration_mm_per_s2[Y_AXIS], applyMaxAccel); } #endif #if HAS_Z_AXIS - void SetMaxAccelZ() { HMI_value.axis = Z_AXIS, SetIntOnClick(min_acceleration_edit_values.z, max_acceleration_edit_values.z, planner.settings.max_acceleration_mm_per_s2[Z_AXIS], ApplyMaxAccel); } + void setMaxAccelZ() { hmiValue.axis = Z_AXIS, setIntOnClick(min_acceleration_edit_values.z, max_acceleration_edit_values.z, planner.settings.max_acceleration_mm_per_s2[Z_AXIS], applyMaxAccel); } #endif #if HAS_HOTEND - void SetMaxAccelE() { HMI_value.axis = E_AXIS; SetIntOnClick(min_acceleration_edit_values.e, max_acceleration_edit_values.e, planner.settings.max_acceleration_mm_per_s2[E_AXIS], ApplyMaxAccel); } + void setMaxAccelE() { hmiValue.axis = E_AXIS; setIntOnClick(min_acceleration_edit_values.e, max_acceleration_edit_values.e, planner.settings.max_acceleration_mm_per_s2[E_AXIS], applyMaxAccel); } #endif #if HAS_CLASSIC_JERK - void ApplyMaxJerk() { planner.set_max_jerk(HMI_value.axis, MenuData.Value / MINUNITMULT); } + void applyMaxJerk() { planner.set_max_jerk(hmiValue.axis, menuData.value / MINUNITMULT); } #if HAS_X_AXIS - void SetMaxJerkX() { HMI_value.axis = X_AXIS, SetFloatOnClick(min_jerk_edit_values.x, max_jerk_edit_values.x, UNITFDIGITS, planner.max_jerk.x, ApplyMaxJerk); } + void setMaxJerkX() { hmiValue.axis = X_AXIS, setFloatOnClick(min_jerk_edit_values.x, max_jerk_edit_values.x, UNITFDIGITS, planner.max_jerk.x, applyMaxJerk); } #endif #if HAS_Y_AXIS - void SetMaxJerkY() { HMI_value.axis = Y_AXIS, SetFloatOnClick(min_jerk_edit_values.y, max_jerk_edit_values.y, UNITFDIGITS, planner.max_jerk.y, ApplyMaxJerk); } + void setMaxJerkY() { hmiValue.axis = Y_AXIS, setFloatOnClick(min_jerk_edit_values.y, max_jerk_edit_values.y, UNITFDIGITS, planner.max_jerk.y, applyMaxJerk); } #endif #if HAS_Z_AXIS - void SetMaxJerkZ() { HMI_value.axis = Z_AXIS, SetFloatOnClick(min_jerk_edit_values.z, max_jerk_edit_values.z, UNITFDIGITS, planner.max_jerk.z, ApplyMaxJerk); } + void setMaxJerkZ() { hmiValue.axis = Z_AXIS, setFloatOnClick(min_jerk_edit_values.z, max_jerk_edit_values.z, UNITFDIGITS, planner.max_jerk.z, applyMaxJerk); } #endif #if HAS_HOTEND - void SetMaxJerkE() { HMI_value.axis = E_AXIS; SetFloatOnClick(min_jerk_edit_values.e, max_jerk_edit_values.e, UNITFDIGITS, planner.max_jerk.e, ApplyMaxJerk); } + void setMaxJerkE() { hmiValue.axis = E_AXIS; setFloatOnClick(min_jerk_edit_values.e, max_jerk_edit_values.e, UNITFDIGITS, planner.max_jerk.e, applyMaxJerk); } #endif #elif HAS_JUNCTION_DEVIATION - void ApplyJDmm() { TERN_(LIN_ADVANCE, planner.recalculate_max_e_jerk()); } - void SetJDmm() { SetPFloatOnClick(MIN_JD_MM, MAX_JD_MM, 3, ApplyJDmm); } + void applyJDmm() { TERN_(LIN_ADVANCE, planner.recalculate_max_e_jerk()); } + void setJDmm() { setPFloatOnClick(MIN_JD_MM, MAX_JD_MM, 3, applyJDmm); } #endif #if ENABLED(LIN_ADVANCE) - void SetLA_K() { SetPFloatOnClick(0, 10, 3); } + void setLA_K() { setPFloatOnClick(0, 10, 3); } #endif #if HAS_X_AXIS - void SetStepsX() { HMI_value.axis = X_AXIS, SetPFloatOnClick( min_steps_edit_values.x, max_steps_edit_values.x, UNITFDIGITS); } + void setStepsX() { hmiValue.axis = X_AXIS, setPFloatOnClick( min_steps_edit_values.x, max_steps_edit_values.x, UNITFDIGITS); } #endif #if HAS_Y_AXIS - void SetStepsY() { HMI_value.axis = Y_AXIS, SetPFloatOnClick( min_steps_edit_values.y, max_steps_edit_values.y, UNITFDIGITS); } + void setStepsY() { hmiValue.axis = Y_AXIS, setPFloatOnClick( min_steps_edit_values.y, max_steps_edit_values.y, UNITFDIGITS); } #endif #if HAS_Z_AXIS - void SetStepsZ() { HMI_value.axis = Z_AXIS, SetPFloatOnClick( min_steps_edit_values.z, max_steps_edit_values.z, UNITFDIGITS); } + void setStepsZ() { hmiValue.axis = Z_AXIS, setPFloatOnClick( min_steps_edit_values.z, max_steps_edit_values.z, UNITFDIGITS); } #endif #if HAS_HOTEND - void SetStepsE() { HMI_value.axis = E_AXIS; SetPFloatOnClick( min_steps_edit_values.e, max_steps_edit_values.e, UNITFDIGITS); } + void setStepsE() { hmiValue.axis = E_AXIS; setPFloatOnClick( min_steps_edit_values.e, max_steps_edit_values.e, UNITFDIGITS); } #endif #if ENABLED(FWRETRACT) - void Return_FWRetract_Menu() { (PreviousMenu == FilSetMenu) ? Draw_FilSet_Menu() : Draw_Tune_Menu(); } - void SetRetractLength() { SetPFloatOnClick( 0, 10, UNITFDIGITS); } - void SetRetractSpeed() { SetPFloatOnClick( 1, 90, UNITFDIGITS); } - void SetZRaise() { SetPFloatOnClick( 0, 2, 2); } - void SetRecoverSpeed() { SetPFloatOnClick( 1, 90, UNITFDIGITS); } - void SetAddRecover() { SetPFloatOnClick(-5, 5, UNITFDIGITS); } + void returnFWRetractMenu() { (previousMenu == filSetMenu) ? drawFilSetMenu() : drawTuneMenu(); } + void setRetractLength() { setPFloatOnClick( 0, 10, UNITFDIGITS); } + void setRetractSpeed() { setPFloatOnClick( 1, 90, UNITFDIGITS); } + void setZRaise() { setPFloatOnClick( 0, 2, 2); } + void setRecoverSpeed() { setPFloatOnClick( 1, 90, UNITFDIGITS); } + void setAddRecover() { setPFloatOnClick(-5, 5, UNITFDIGITS); } #endif // Special Menuitem Drawing functions ================================================= -void onDrawBack(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 129, 72, 156, 84); +void onDrawBack(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 129, 72, 156, 84); onDrawMenuItem(menuitem, line); } -void onDrawTempSubMenu(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 57, 104, 84, 116); +void onDrawTempSubMenu(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 57, 104, 84, 116); onDrawSubMenu(menuitem, line); } -void onDrawMotionSubMenu(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 87, 104, 114, 116); +void onDrawMotionSubMenu(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 87, 104, 114, 116); onDrawSubMenu(menuitem, line); } #if ENABLED(EEPROM_SETTINGS) - void onDrawWriteEeprom(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 117, 104, 172, 116); + void onDrawWriteEeprom(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 117, 104, 172, 116); onDrawMenuItem(menuitem, line); } - void onDrawReadEeprom(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 174, 103, 229, 116); + void onDrawReadEeprom(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 174, 103, 229, 116); onDrawMenuItem(menuitem, line); } - void onDrawResetEeprom(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 1, 118, 56, 131); + void onDrawResetEeprom(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 1, 118, 56, 131); onDrawMenuItem(menuitem, line); } #endif -void onDrawInfoSubMenu(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 231, 104, 258, 116); +void onDrawInfoSubMenu(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 231, 104, 258, 116); onDrawSubMenu(menuitem, line); } -void onDrawMoveX(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 58, 118, 106, 132); +void onDrawMoveX(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 58, 118, 106, 132); onDrawPFloatMenu(menuitem, line); } -void onDrawMoveY(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 109, 118, 157, 132); +void onDrawMoveY(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 109, 118, 157, 132); onDrawPFloatMenu(menuitem, line); } -void onDrawMoveZ(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 160, 118, 209, 132); +void onDrawMoveZ(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 160, 118, 209, 132); onDrawPFloatMenu(menuitem, line); } #if HAS_HOTEND - void onDrawMoveE(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 212, 118, 253, 131); + void onDrawMoveE(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 212, 118, 253, 131); onDrawPFloatMenu(menuitem, line); } #endif -void onDrawMoveSubMenu(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 159, 70, 200, 84); +void onDrawMoveSubMenu(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 159, 70, 200, 84); onDrawSubMenu(menuitem, line); } -void onDrawDisableMotors(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 204, 70, 259, 82); +void onDrawDisableMotors(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 204, 70, 259, 82); onDrawMenuItem(menuitem, line); } -void onDrawAutoHome(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 0, 89, 41, 101); +void onDrawAutoHome(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 0, 89, 41, 101); onDrawMenuItem(menuitem, line); } #if HAS_ZOFFSET_ITEM #if ANY(BABYSTEP_ZPROBE_OFFSET, JUST_BABYSTEP) - void onDrawZOffset(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 174, 164, 223, 177); + void onDrawZOffset(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 174, 164, 223, 177); onDrawPFloat2Menu(menuitem, line); } #endif #endif #if HAS_HOTEND - void onDrawPreheat1(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 100, 89, 151, 101); + void onDrawPreheat1(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 100, 89, 151, 101); onDrawMenuItem(menuitem, line); } #if PREHEAT_COUNT > 1 - void onDrawPreheat2(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 180, 89, 233, 100); + void onDrawPreheat2(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 180, 89, 233, 100); onDrawMenuItem(menuitem, line); } #endif #endif #if HAS_PREHEAT - void onDrawCooldown(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 1, 104, 56, 117); + void onDrawCooldown(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 1, 104, 56, 117); onDrawMenuItem(menuitem, line); } #endif -void onDrawLanguage(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 239, 134, 266, 146); +void onDrawLanguage(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 239, 134, 266, 146); onDrawMenuItem(menuitem, line); - DWINUI::Draw_String(VALX, MBASE(line), HMI_IsChinese() ? F("CN") : F("EN")); + DWINUI::drawString(VALX, MBASE(line), hmiIsChinese() ? F("CN") : F("EN")); } -void onDrawSelColorItem(MenuItemClass* menuitem, int8_t line) { - const uint16_t color = *(uint16_t*)static_cast(menuitem)->value; - dwinDrawRectangle(0, HMI_data.Highlight_Color, ICOX + 1, MBASE(line) - 1 + 1, ICOX + 18, MBASE(line) - 1 + 18); +void onDrawSelColorItem(MenuItem* menuitem, int8_t line) { + const uint16_t color = *(uint16_t*)static_cast(menuitem)->value; + dwinDrawRectangle(0, hmiData.colorHighlight, ICOX + 1, MBASE(line) - 1 + 1, ICOX + 18, MBASE(line) - 1 + 18); dwinDrawRectangle(1, color, ICOX + 2, MBASE(line) - 1 + 2, ICOX + 17, MBASE(line) - 1 + 17); onDrawMenuItem(menuitem, line); } -void onDrawGetColorItem(MenuItemClass* menuitem, int8_t line) { +void onDrawGetColorItem(MenuItem* menuitem, int8_t line) { const uint8_t i = menuitem->icon; uint16_t color; switch (i) { @@ -2696,165 +2700,165 @@ void onDrawGetColorItem(MenuItemClass* menuitem, int8_t line) { case 2: color = RGB(0, 0, 31); break; // Blue default: color = 0; break; } - dwinDrawRectangle(0, HMI_data.Highlight_Color, ICOX + 1, MBASE(line) - 1 + 1, ICOX + 18, MBASE(line) - 1 + 18); + dwinDrawRectangle(0, hmiData.colorHighlight, ICOX + 1, MBASE(line) - 1 + 1, ICOX + 18, MBASE(line) - 1 + 18); dwinDrawRectangle(1, color, ICOX + 2, MBASE(line) - 1 + 2, ICOX + 17, MBASE(line) - 1 + 17); - DWINUI::Draw_String(LBLX, MBASE(line) - 1, menuitem->caption); - Draw_Menu_IntValue(HMI_data.Background_Color, line, 4, HMI_value.Color[i]); - dwinDrawHLine(HMI_data.SplitLine_Color, 16, MYPOS(line + 1), 240); + DWINUI::drawString(LBLX, MBASE(line) - 1, menuitem->caption); + drawMenuIntValue(hmiData.colorBackground, line, 4, hmiValue.Color[i]); + dwinDrawHLine(hmiData.colorSplitLine, 16, MYPOS(line + 1), 240); } -void onDrawSpeedItem(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 116, 164, 171, 176); +void onDrawSpeedItem(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 116, 164, 171, 176); onDrawPIntMenu(menuitem, line); } #if HAS_HOTEND - void onDrawHotendTemp(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 1, 134, 56, 146); + void onDrawHotendTemp(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 1, 134, 56, 146); onDrawPIntMenu(menuitem, line); } #endif #if HAS_HEATED_BED - void onDrawBedTemp(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 58, 134, 113, 146); + void onDrawBedTemp(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 58, 134, 113, 146); onDrawPIntMenu(menuitem, line); } #endif #if HAS_FAN - void onDrawFanSpeed(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 115, 134, 170, 146); + void onDrawFanSpeed(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 115, 134, 170, 146); onDrawPInt8Menu(menuitem, line); } #endif -void onDrawSteps(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 153, 148, 194, 161); +void onDrawSteps(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 153, 148, 194, 161); onDrawSubMenu(menuitem, line); } #if ENABLED(MESH_BED_LEVELING) - void onDrawMMeshMoveZ(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 160, 118, 209, 132); + void onDrawMMeshMoveZ(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 160, 118, 209, 132); onDrawPFloat2Menu(menuitem, line); } #endif #if HAS_PREHEAT #if HAS_HOTEND - void onDrawSetPreheatHotend(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 1, 134, 56, 146); + void onDrawSetPreheatHotend(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 1, 134, 56, 146); onDrawPIntMenu(menuitem, line); } #endif #if HAS_HEATED_BED - void onDrawSetPreheatBed(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 58, 134, 113, 146); + void onDrawSetPreheatBed(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 58, 134, 113, 146); onDrawPIntMenu(menuitem, line); } #endif #if HAS_FAN - void onDrawSetPreheatFan(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) menuitem->SetFrame(1, 115, 134, 170, 146); + void onDrawSetPreheatFan(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) menuitem->setFrame(1, 115, 134, 170, 146); onDrawPIntMenu(menuitem, line); } #endif #endif // HAS_PREHEAT -void onDrawSpeed(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) - menuitem->SetFrame(1, 173, 133, 228, 147); +void onDrawSpeed(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) + menuitem->setFrame(1, 173, 133, 228, 147); onDrawSubMenu(menuitem, line); } #if HAS_X_AXIS - void onDrawMaxSpeedX(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 228, 147); - DWIN_Frame_AreaCopy(1, 229, 133, 236, 147, LBLX + 58, MBASE(line)); // X + void onDrawMaxSpeedX(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 173, 133, 228, 147); + dwinFrameAreaCopy(1, 229, 133, 236, 147, LBLX + 58, MBASE(line)); // X } onDrawPFloatMenu(menuitem, line); } #endif #if HAS_Y_AXIS - void onDrawMaxSpeedY(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 228, 147); - DWIN_Frame_AreaCopy(1, 1, 150, 7, 160, LBLX + 58, MBASE(line)); // Y + void onDrawMaxSpeedY(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 173, 133, 228, 147); + dwinFrameAreaCopy(1, 1, 150, 7, 160, LBLX + 58, MBASE(line)); // Y } onDrawPFloatMenu(menuitem, line); } #endif #if HAS_Z_AXIS - void onDrawMaxSpeedZ(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 228, 147); - DWIN_Frame_AreaCopy(1, 9, 150, 16, 160, LBLX + 58, MBASE(line) + 3); // Z + void onDrawMaxSpeedZ(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 173, 133, 228, 147); + dwinFrameAreaCopy(1, 9, 150, 16, 160, LBLX + 58, MBASE(line) + 3); // Z } onDrawPFloatMenu(menuitem, line); } #endif #if HAS_HOTEND - void onDrawMaxSpeedE(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 228, 147); - DWIN_Frame_AreaCopy(1, 18, 150, 25, 160, LBLX + 58, MBASE(line)); // E + void onDrawMaxSpeedE(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 173, 133, 228, 147); + dwinFrameAreaCopy(1, 18, 150, 25, 160, LBLX + 58, MBASE(line)); // E } onDrawPFloatMenu(menuitem, line); } #endif -void onDrawAcc(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line) + 1); // ...Acceleration +void onDrawAcc(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 173, 133, 200, 147); + dwinFrameAreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line) + 1); // ...Acceleration } onDrawSubMenu(menuitem, line); } #if HAS_X_AXIS - void onDrawMaxAccelX(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line)); - DWIN_Frame_AreaCopy(1, 229, 133, 236, 147, LBLX + 71, MBASE(line)); // X + void onDrawMaxAccelX(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 173, 133, 200, 147); + dwinFrameAreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line)); + dwinFrameAreaCopy(1, 229, 133, 236, 147, LBLX + 71, MBASE(line)); // X } onDrawPInt32Menu(menuitem, line); } #endif #if HAS_Y_AXIS - void onDrawMaxAccelY(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line)); - DWIN_Frame_AreaCopy(1, 1, 150, 7, 160, LBLX + 71, MBASE(line)); // Y + void onDrawMaxAccelY(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 173, 133, 200, 147); + dwinFrameAreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line)); + dwinFrameAreaCopy(1, 1, 150, 7, 160, LBLX + 71, MBASE(line)); // Y } onDrawPInt32Menu(menuitem, line); } #endif #if HAS_Z_AXIS - void onDrawMaxAccelZ(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line)); - DWIN_Frame_AreaCopy(1, 9, 150, 16, 160, LBLX + 71, MBASE(line)); // Z + void onDrawMaxAccelZ(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 173, 133, 200, 147); + dwinFrameAreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line)); + dwinFrameAreaCopy(1, 9, 150, 16, 160, LBLX + 71, MBASE(line)); // Z } onDrawPInt32Menu(menuitem, line); } #endif #if HAS_HOTEND - void onDrawMaxAccelE(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line)); - DWIN_Frame_AreaCopy(1, 18, 150, 25, 160, LBLX + 71, MBASE(line)); // E + void onDrawMaxAccelE(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 173, 133, 200, 147); + dwinFrameAreaCopy(1, 28, 149, 69, 161, LBLX + 27, MBASE(line)); + dwinFrameAreaCopy(1, 18, 150, 25, 160, LBLX + 71, MBASE(line)); // E } onDrawPInt32Menu(menuitem, line); } @@ -2862,46 +2866,46 @@ void onDrawAcc(MenuItemClass* menuitem, int8_t line) { #if HAS_CLASSIC_JERK - void onDrawJerk(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line) + 1); // ... - DWIN_Frame_AreaCopy(1, 202, 133, 228, 147, LBLX + 54, MBASE(line)); // ...Jerk + void onDrawJerk(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 173, 133, 200, 147); + dwinFrameAreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line) + 1); // ... + dwinFrameAreaCopy(1, 202, 133, 228, 147, LBLX + 54, MBASE(line)); // ...Jerk } onDrawSubMenu(menuitem, line); } #if HAS_X_AXIS - void onDrawMaxJerkX(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line)); - DWIN_Frame_AreaCopy(1, 202, 133, 228, 147, LBLX + 53, MBASE(line)); - DWIN_Frame_AreaCopy(1, 229, 133, 236, 147, LBLX + 83, MBASE(line)); + void onDrawMaxJerkX(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 173, 133, 200, 147); + dwinFrameAreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line)); + dwinFrameAreaCopy(1, 202, 133, 228, 147, LBLX + 53, MBASE(line)); + dwinFrameAreaCopy(1, 229, 133, 236, 147, LBLX + 83, MBASE(line)); } onDrawPFloatMenu(menuitem, line); } #endif #if HAS_Y_AXIS - void onDrawMaxJerkY(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line)); - DWIN_Frame_AreaCopy(1, 202, 133, 228, 147, LBLX + 53, MBASE(line)); - DWIN_Frame_AreaCopy(1, 1, 150, 7, 160, LBLX + 83, MBASE(line)); + void onDrawMaxJerkY(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 173, 133, 200, 147); + dwinFrameAreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line)); + dwinFrameAreaCopy(1, 202, 133, 228, 147, LBLX + 53, MBASE(line)); + dwinFrameAreaCopy(1, 1, 150, 7, 160, LBLX + 83, MBASE(line)); } onDrawPFloatMenu(menuitem, line); } #endif #if HAS_Z_AXIS - void onDrawMaxJerkZ(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line)); - DWIN_Frame_AreaCopy(1, 202, 133, 228, 147, LBLX + 53, MBASE(line)); - DWIN_Frame_AreaCopy(1, 9, 150, 16, 160, LBLX + 83, MBASE(line)); + void onDrawMaxJerkZ(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 173, 133, 200, 147); + dwinFrameAreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line)); + dwinFrameAreaCopy(1, 202, 133, 228, 147, LBLX + 53, MBASE(line)); + dwinFrameAreaCopy(1, 9, 150, 16, 160, LBLX + 83, MBASE(line)); } onDrawPFloatMenu(menuitem, line); } @@ -2909,12 +2913,12 @@ void onDrawAcc(MenuItemClass* menuitem, int8_t line) { #if HAS_HOTEND - void onDrawMaxJerkE(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 173, 133, 200, 147); - DWIN_Frame_AreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line)); - DWIN_Frame_AreaCopy(1, 202, 133, 228, 147, LBLX + 53, MBASE(line)); - DWIN_Frame_AreaCopy(1, 18, 150, 25, 160, LBLX + 83, MBASE(line)); + void onDrawMaxJerkE(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 173, 133, 200, 147); + dwinFrameAreaCopy(1, 1, 180, 28, 192, LBLX + 27, MBASE(line)); + dwinFrameAreaCopy(1, 202, 133, 228, 147, LBLX + 53, MBASE(line)); + dwinFrameAreaCopy(1, 18, 150, 25, 160, LBLX + 83, MBASE(line)); } onDrawPFloatMenu(menuitem, line); } @@ -2924,30 +2928,30 @@ void onDrawAcc(MenuItemClass* menuitem, int8_t line) { #endif // HAS_CLASSIC_JERK #if HAS_X_AXIS - void onDrawStepsX(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 153, 148, 194, 161); - DWIN_Frame_AreaCopy(1, 229, 133, 236, 147, LBLX + 44, MBASE(line)); // X + void onDrawStepsX(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 153, 148, 194, 161); + dwinFrameAreaCopy(1, 229, 133, 236, 147, LBLX + 44, MBASE(line)); // X } onDrawPFloatMenu(menuitem, line); } #endif #if HAS_Y_AXIS - void onDrawStepsY(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 153, 148, 194, 161); - DWIN_Frame_AreaCopy(1, 1, 150, 7, 160, LBLX + 44, MBASE(line)); // Y + void onDrawStepsY(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 153, 148, 194, 161); + dwinFrameAreaCopy(1, 1, 150, 7, 160, LBLX + 44, MBASE(line)); // Y } onDrawPFloatMenu(menuitem, line); } #endif #if HAS_Z_AXIS - void onDrawStepsZ(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 153, 148, 194, 161); - DWIN_Frame_AreaCopy(1, 9, 150, 16, 160, LBLX + 44, MBASE(line)); // Z + void onDrawStepsZ(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 153, 148, 194, 161); + dwinFrameAreaCopy(1, 9, 150, 16, 160, LBLX + 44, MBASE(line)); // Z } onDrawPFloatMenu(menuitem, line); } @@ -2955,10 +2959,10 @@ void onDrawAcc(MenuItemClass* menuitem, int8_t line) { #if HAS_HOTEND - void onDrawStepsE(MenuItemClass* menuitem, int8_t line) { - if (HMI_IsChinese()) { - menuitem->SetFrame(1, 153, 148, 194, 161); - DWIN_Frame_AreaCopy(1, 18, 150, 25, 160, LBLX + 44, MBASE(line)); // E + void onDrawStepsE(MenuItem* menuitem, int8_t line) { + if (hmiIsChinese()) { + menuitem->setFrame(1, 153, 148, 194, 161); + dwinFrameAreaCopy(1, 18, 150, 25, 160, LBLX + 44, MBASE(line)); // E } onDrawPFloatMenu(menuitem, line); } @@ -2966,292 +2970,292 @@ void onDrawAcc(MenuItemClass* menuitem, int8_t line) { #endif #if HAS_ONESTEP_LEVELING - void onDrawManualTramming(MenuItemClass* menuitem, int8_t line) { onDrawChkbMenu(menuitem, line, HMI_data.FullManualTramming); } + void onDrawManualTramming(MenuItem* menuitem, int8_t line) { onDrawChkbMenu(menuitem, line, hmiData.fullManualTramming); } #endif // Menu Creation and Drawing functions ====================================================== frame_rect_t selrect(frame_rect_t) { - return HMI_IsChinese() ? frame_rect_t({ 133, 1, 28, 13 }) : frame_rect_t({ 0 }); + return hmiIsChinese() ? frame_rect_t({ 133, 1, 28, 13 }) : frame_rect_t({ 0 }); } -void Draw_Prepare_Menu() { - checkkey = Menu; - if (SET_MENU_R(PrepareMenu, selrect({133, 1, 28, 13}), MSG_PREPARE, 10 + PREHEAT_COUNT)) { - BACK_ITEM(Goto_Main_Menu); +void drawPrepareMenu() { + checkkey = ID_Menu; + if (SET_MENU_R(prepareMenu, selrect({133, 1, 28, 13}), MSG_PREPARE, 10 + PREHEAT_COUNT)) { + BACK_ITEM(gotoMainMenu); #if ENABLED(ADVANCED_PAUSE_FEATURE) - MENU_ITEM(ICON_FilMan, MSG_FILAMENT_MAN, onDrawSubMenu, Draw_FilamentMan_Menu); + MENU_ITEM(ICON_FilMan, MSG_FILAMENT_MAN, onDrawSubMenu, drawFilamentManMenu); #endif - MENU_ITEM(ICON_Axis, MSG_MOVE_AXIS, onDrawMoveSubMenu, Draw_Move_Menu); + MENU_ITEM(ICON_Axis, MSG_MOVE_AXIS, onDrawMoveSubMenu, drawMoveMenu); #if ENABLED(LCD_BED_TRAMMING) - MENU_ITEM(ICON_Tram, MSG_BED_TRAMMING, onDrawSubMenu, Draw_Tramming_Menu); + MENU_ITEM(ICON_Tram, MSG_BED_TRAMMING, onDrawSubMenu, drawTrammingMenu); #endif - MENU_ITEM(ICON_CloseMotor, MSG_DISABLE_STEPPERS, onDrawDisableMotors, DisableMotors); + MENU_ITEM(ICON_CloseMotor, MSG_DISABLE_STEPPERS, onDrawDisableMotors, disableMotors); #if ENABLED(INDIVIDUAL_AXIS_HOMING_SUBMENU) - MENU_ITEM(ICON_Homing, MSG_HOMING, onDrawSubMenu, Draw_Homing_Menu); + MENU_ITEM(ICON_Homing, MSG_HOMING, onDrawSubMenu, drawHomingMenu); #else - MENU_ITEM(ICON_Homing, MSG_AUTO_HOME, onDrawAutoHome, AutoHome); + MENU_ITEM(ICON_Homing, MSG_AUTO_HOME, onDrawAutoHome, autoHome); #endif #if ENABLED(MESH_BED_LEVELING) - MENU_ITEM(ICON_ManualMesh, MSG_MANUAL_MESH, onDrawSubMenu, Draw_ManualMesh_Menu); + MENU_ITEM(ICON_ManualMesh, MSG_MANUAL_MESH, onDrawSubMenu, drawManualMeshMenu); #elif HAS_BED_PROBE - MENU_ITEM(ICON_Level, MSG_AUTO_MESH, onDrawMenuItem, AutoLev); + MENU_ITEM(ICON_Level, MSG_AUTO_MESH, onDrawMenuItem, autoLevel); #endif #if HAS_ZOFFSET_ITEM #if HAS_BED_PROBE - MENU_ITEM(ICON_SetZOffset, MSG_PROBE_WIZARD, onDrawSubMenu, Draw_ZOffsetWiz_Menu); + MENU_ITEM(ICON_SetZOffset, MSG_PROBE_WIZARD, onDrawSubMenu, drawZOffsetWizMenu); #elif ENABLED(BABYSTEPPING) - EDIT_ITEM(ICON_Zoffset, MSG_HOME_OFFSET_Z, onDrawPFloat2Menu, SetZOffset, &BABY_Z_VAR); + EDIT_ITEM(ICON_Zoffset, MSG_HOME_OFFSET_Z, onDrawPFloat2Menu, setZOffset, &BABY_Z_VAR); #endif #endif #if HAS_PREHEAT #define _ITEM_PREHEAT(N) MENU_ITEM(ICON_Preheat##N, MSG_PREHEAT_##N, onDrawMenuItem, DoPreheat##N); REPEAT_1(PREHEAT_COUNT, _ITEM_PREHEAT) #endif - MENU_ITEM(ICON_Cool, MSG_COOLDOWN, onDrawCooldown, DoCoolDown); - MENU_ITEM(ICON_Language, MSG_UI_LANGUAGE, onDrawLanguage, SetLanguage); + MENU_ITEM(ICON_Cool, MSG_COOLDOWN, onDrawCooldown, doCoolDown); + MENU_ITEM(ICON_Language, MSG_UI_LANGUAGE, onDrawLanguage, setLanguage); } ui.reset_status(true); - UpdateMenu(PrepareMenu); + updateMenu(prepareMenu); } #if ENABLED(LCD_BED_TRAMMING) - void Draw_Tramming_Menu() { - checkkey = Menu; - if (SET_MENU(TrammingMenu, MSG_BED_TRAMMING, 8)) { - BACK_ITEM(Draw_Prepare_Menu); + void drawTrammingMenu() { + checkkey = ID_Menu; + if (SET_MENU(trammingMenu, MSG_BED_TRAMMING, 8)) { + BACK_ITEM(drawPrepareMenu); #if HAS_BED_PROBE && HAS_MESH - MENU_ITEM(ICON_ProbeSet, MSG_TRAMMING_WIZARD, onDrawMenuItem, Trammingwizard); - EDIT_ITEM(ICON_ProbeSet, MSG_BED_TRAMMING_MANUAL, onDrawChkbMenu, SetManualTramming, &HMI_data.FullManualTramming); + MENU_ITEM(ICON_ProbeSet, MSG_TRAMMING_WIZARD, onDrawMenuItem, trammingwizard); + EDIT_ITEM(ICON_ProbeSet, MSG_BED_TRAMMING_MANUAL, onDrawChkbMenu, setManualTramming, &hmiData.fullManualTramming); #elif !HAS_BED_PROBE && HAS_ZOFFSET_ITEM - MENU_ITEM_F(ICON_MoveZ0, "Home Z and disable", onDrawMenuItem, HomeZandDisable); + MENU_ITEM_F(ICON_MoveZ0, "Home Z and disable", onDrawMenuItem, homeZAndDisable); #endif - MENU_ITEM(ICON_Axis, MSG_TRAM_FL, onDrawMenuItem, TramFL); - MENU_ITEM(ICON_Axis, MSG_TRAM_FR, onDrawMenuItem, TramFR); - MENU_ITEM(ICON_Axis, MSG_TRAM_BR, onDrawMenuItem, TramBR); - MENU_ITEM(ICON_Axis, MSG_TRAM_BL, onDrawMenuItem, TramBL); + MENU_ITEM(ICON_Axis, MSG_TRAM_FL, onDrawMenuItem, tramFL); + MENU_ITEM(ICON_Axis, MSG_TRAM_FR, onDrawMenuItem, tramFR); + MENU_ITEM(ICON_Axis, MSG_TRAM_BR, onDrawMenuItem, tramBR); + MENU_ITEM(ICON_Axis, MSG_TRAM_BL, onDrawMenuItem, tramBL); #if ENABLED(BED_TRAMMING_INCLUDE_CENTER) - MENU_ITEM(ICON_Axis, MSG_TRAM_C, onDrawMenuItem, TramC); + MENU_ITEM(ICON_Axis, MSG_TRAM_C, onDrawMenuItem, tramC); #endif } - UpdateMenu(TrammingMenu); + updateMenu(trammingMenu); } #endif // LCD_BED_TRAMMING -void Draw_Control_Menu() { - checkkey = Menu; +void drawControlMenu() { + checkkey = ID_Menu; if (SET_MENU_R(ControlMenu, selrect({103, 1, 28, 14}), MSG_CONTROL, 10)) { - BACK_ITEM(Goto_Main_Menu); - MENU_ITEM(ICON_Temperature, MSG_TEMPERATURE, onDrawTempSubMenu, Draw_Temperature_Menu); - MENU_ITEM(ICON_Motion, MSG_MOTION, onDrawMotionSubMenu, Draw_Motion_Menu); + BACK_ITEM(gotoMainMenu); + MENU_ITEM(ICON_Temperature, MSG_TEMPERATURE, onDrawTempSubMenu, drawTemperatureMenu); + MENU_ITEM(ICON_Motion, MSG_MOTION, onDrawMotionSubMenu, drawMotionMenu); #if ENABLED(EEPROM_SETTINGS) - MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawWriteEeprom, WriteEeprom); - MENU_ITEM(ICON_ReadEEPROM, MSG_LOAD_EEPROM, onDrawReadEeprom, ReadEeprom); - MENU_ITEM(ICON_ResumeEEPROM, MSG_RESTORE_DEFAULTS, onDrawResetEeprom, ResetEeprom); + MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawWriteEeprom, writeEEPROM); + MENU_ITEM(ICON_ReadEEPROM, MSG_LOAD_EEPROM, onDrawReadEeprom, readEEPROM); + MENU_ITEM(ICON_ResumeEEPROM, MSG_RESTORE_DEFAULTS, onDrawResetEeprom, resetEEPROM); #endif - MENU_ITEM(ICON_Reboot, MSG_RESET_PRINTER, onDrawMenuItem, RebootPrinter); + MENU_ITEM(ICON_Reboot, MSG_RESET_PRINTER, onDrawMenuItem, rebootPrinter); #if ENABLED(CASE_LIGHT_MENU) #if ENABLED(CASELIGHT_USES_BRIGHTNESS) - MENU_ITEM(ICON_CaseLight, MSG_CASE_LIGHT, onDrawSubMenu, Draw_CaseLight_Menu); + MENU_ITEM(ICON_CaseLight, MSG_CASE_LIGHT, onDrawSubMenu, drawCaseLightMenu); #else - MENU_ITEM(ICON_CaseLight, MSG_CASE_LIGHT, onDrawChkbMenu, SetCaseLight, &caselight.on); + MENU_ITEM(ICON_CaseLight, MSG_CASE_LIGHT, onDrawChkbMenu, setCaseLight, &caselight.on); #endif #endif #if ENABLED(LED_CONTROL_MENU) - MENU_ITEM(ICON_LedControl, MSG_LED_CONTROL, onDrawSubMenu, Draw_LedControl_Menu); + MENU_ITEM(ICON_LedControl, MSG_LED_CONTROL, onDrawSubMenu, drawLedControlMenu); #endif - MENU_ITEM(ICON_Info, MSG_INFO_SCREEN, onDrawInfoSubMenu, Goto_Info_Menu); + MENU_ITEM(ICON_Info, MSG_INFO_SCREEN, onDrawInfoSubMenu, gotoInfoMenu); } ui.reset_status(true); - UpdateMenu(ControlMenu); + updateMenu(ControlMenu); } -void Draw_AdvancedSettings_Menu() { - checkkey = Menu; +void drawAdvancedSettingsMenu() { + checkkey = ID_Menu; if (SET_MENU(AdvancedSettings, MSG_ADVANCED_SETTINGS, 22)) { - BACK_ITEM(Goto_Main_Menu); + BACK_ITEM(gotoMainMenu); #if ENABLED(EEPROM_SETTINGS) - MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, WriteEeprom); + MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, writeEEPROM); #endif #if HAS_MESH - MENU_ITEM(ICON_ProbeSet, MSG_MESH_LEVELING, onDrawSubMenu, Draw_MeshSet_Menu); + MENU_ITEM(ICON_ProbeSet, MSG_MESH_LEVELING, onDrawSubMenu, drawMeshSetMenu); #endif #if HAS_BED_PROBE - MENU_ITEM(ICON_ProbeSet, MSG_ZPROBE_SETTINGS, onDrawSubMenu, Draw_ProbeSet_Menu); + MENU_ITEM(ICON_ProbeSet, MSG_ZPROBE_SETTINGS, onDrawSubMenu, drawProbeSetMenu); #endif - MENU_ITEM(ICON_FilSet, MSG_FILAMENT_SET, onDrawSubMenu, Draw_FilSet_Menu); + MENU_ITEM(ICON_FilSet, MSG_FILAMENT_SET, onDrawSubMenu, drawFilSetMenu); #if ENABLED(PIDTEMP) && ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) - MENU_ITEM_F(ICON_PIDNozzle, STR_HOTEND_PID " Settings", onDrawSubMenu, Draw_HotendPID_Menu); + MENU_ITEM_F(ICON_PIDNozzle, STR_HOTEND_PID " Settings", onDrawSubMenu, drawHotendPIDMenu); #endif #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) - MENU_ITEM_F(ICON_MPCNozzle, "MPC Settings", onDrawSubMenu, Draw_HotendMPC_Menu); + MENU_ITEM_F(ICON_MPCNozzle, "MPC Settings", onDrawSubMenu, drawHotendMPCMenu); #endif #if ENABLED(PIDTEMPBED) && ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) - MENU_ITEM_F(ICON_PIDBed, STR_BED_PID " Settings", onDrawSubMenu, Draw_BedPID_Menu); + MENU_ITEM_F(ICON_PIDBed, STR_BED_PID " Settings", onDrawSubMenu, drawBedPIDMenu); #endif #if HAS_TRINAMIC_CONFIG - MENU_ITEM(ICON_TMCSet, MSG_TMC_DRIVERS, onDrawSubMenu, Draw_TrinamicConfig_menu); + MENU_ITEM(ICON_TMCSet, MSG_TMC_DRIVERS, onDrawSubMenu, drawTrinamicConfigMenu); #endif #if HAS_ESDIAG - MENU_ITEM_F(ICON_ESDiag, "End-stops diag.", onDrawSubMenu, Draw_EndStopDiag); + MENU_ITEM_F(ICON_esDiag, "End-stops diag.", onDrawSubMenu, drawEndStopDiag); #endif #if ENABLED(PRINTCOUNTER) - MENU_ITEM(ICON_PrintStats, MSG_INFO_STATS_MENU, onDrawSubMenu, Goto_PrintStats); - MENU_ITEM(ICON_PrintStatsReset, MSG_INFO_PRINT_COUNT_RESET, onDrawSubMenu, PrintStatsReset); + MENU_ITEM(ICON_PrintStats, MSG_INFO_STATS_MENU, onDrawSubMenu, gotoPrintStats); + MENU_ITEM(ICON_PrintStatsReset, MSG_INFO_PRINT_COUNT_RESET, onDrawSubMenu, printStatsReset); #endif #if HAS_LOCKSCREEN - MENU_ITEM(ICON_Lock, MSG_LOCKSCREEN, onDrawMenuItem, DWIN_LockScreen); + MENU_ITEM(ICON_Lock, MSG_LOCKSCREEN, onDrawMenuItem, dwinLockScreen); #endif #if ENABLED(SOUND_MENU_ITEM) - EDIT_ITEM(ICON_Sound, MSG_SOUND_ENABLE, onDrawChkbMenu, SetEnableSound, &ui.sound_on); + EDIT_ITEM(ICON_Sound, MSG_SOUND_ENABLE, onDrawChkbMenu, setEnableSound, &ui.sound_on); #endif #if ENABLED(POWER_LOSS_RECOVERY) - EDIT_ITEM(ICON_Pwrlossr, MSG_OUTAGE_RECOVERY, onDrawChkbMenu, SetPwrLossr, &recovery.enabled); + EDIT_ITEM(ICON_Pwrlossr, MSG_OUTAGE_RECOVERY, onDrawChkbMenu, setPwrLossr, &recovery.enabled); #endif #if HAS_GCODE_PREVIEW - EDIT_ITEM(ICON_File, MSG_HAS_PREVIEW, onDrawChkbMenu, SetPreview, &HMI_data.EnablePreview); + EDIT_ITEM(ICON_File, MSG_HAS_PREVIEW, onDrawChkbMenu, setPreview, &hmiData.enablePreview); #endif #if ENABLED(MEDIASORT_MENU_ITEM) - EDIT_ITEM(ICON_File, MSG_MEDIA_SORT, onDrawChkbMenu, SetMediaSort, &HMI_data.MediaSort); + EDIT_ITEM(ICON_File, MSG_MEDIA_SORT, onDrawChkbMenu, setMediaSort, &hmiData.mediaSort); #endif - EDIT_ITEM(ICON_File, MSG_MEDIA_UPDATE, onDrawChkbMenu, SetMediaAutoMount, &HMI_data.MediaAutoMount); + EDIT_ITEM(ICON_File, MSG_MEDIA_UPDATE, onDrawChkbMenu, setMediaAutoMount, &hmiData.mediaAutoMount); #if ENABLED(BAUD_RATE_GCODE) - EDIT_ITEM_F(ICON_SetBaudRate, "115K baud", onDrawChkbMenu, SetBaudRate, &HMI_data.Baud115K); + EDIT_ITEM_F(ICON_SetBaudRate, "115K baud", onDrawChkbMenu, setBaudRate, &hmiData.baud115K); #endif #if HAS_LCD_BRIGHTNESS - EDIT_ITEM(ICON_Brightness, MSG_BRIGHTNESS, onDrawPInt8Menu, SetBrightness, &ui.brightness); - MENU_ITEM(ICON_Brightness, MSG_BRIGHTNESS_OFF, onDrawMenuItem, TurnOffBacklight); + EDIT_ITEM(ICON_Brightness, MSG_BRIGHTNESS, onDrawPInt8Menu, setBrightness, &ui.brightness); + MENU_ITEM(ICON_Brightness, MSG_BRIGHTNESS_OFF, onDrawMenuItem, turnOffBacklight); #endif #if HAS_CUSTOM_COLORS - MENU_ITEM(ICON_Scolor, MSG_COLORS_SELECT, onDrawSubMenu, Draw_SelectColors_Menu); + MENU_ITEM(ICON_Scolor, MSG_COLORS_SELECT, onDrawSubMenu, drawSelectColorsMenu); #endif } ui.reset_status(true); - UpdateMenu(AdvancedSettings); + updateMenu(AdvancedSettings); } -void Draw_Move_Menu() { - checkkey = Menu; - if (SET_MENU_R(MoveMenu, selrect({192, 1, 42, 14}), MSG_MOVE_AXIS, 6)) { - BACK_ITEM(Draw_Prepare_Menu); - EDIT_ITEM(ICON_Axis, MSG_LIVE_MOVE, onDrawChkbMenu, SetLiveMove, &EnableLiveMove); +void drawMoveMenu() { + checkkey = ID_Menu; + if (SET_MENU_R(moveMenu, selrect({192, 1, 42, 14}), MSG_MOVE_AXIS, 6)) { + BACK_ITEM(drawPrepareMenu); + EDIT_ITEM(ICON_Axis, MSG_LIVE_MOVE, onDrawChkbMenu, setLiveMove, &enableLiveMove); #if HAS_X_AXIS - EDIT_ITEM(ICON_MoveX, MSG_MOVE_X, onDrawMoveX, SetMoveX, ¤t_position.x); + EDIT_ITEM(ICON_MoveX, MSG_MOVE_X, onDrawMoveX, setMoveX, ¤t_position.x); #endif #if HAS_Y_AXIS - EDIT_ITEM(ICON_MoveY, MSG_MOVE_Y, onDrawMoveY, SetMoveY, ¤t_position.y); + EDIT_ITEM(ICON_MoveY, MSG_MOVE_Y, onDrawMoveY, setMoveY, ¤t_position.y); #endif #if HAS_Z_AXIS - EDIT_ITEM(ICON_MoveZ, MSG_MOVE_Z, onDrawMoveZ, SetMoveZ, ¤t_position.z); + EDIT_ITEM(ICON_MoveZ, MSG_MOVE_Z, onDrawMoveZ, setMoveZ, ¤t_position.z); #endif #if HAS_HOTEND gcode.process_subcommands_now(F("G92E0")); // Reset extruder position - EDIT_ITEM(ICON_Extruder, MSG_MOVE_E, onDrawMoveE, SetMoveE, ¤t_position.e); + EDIT_ITEM(ICON_Extruder, MSG_MOVE_E, onDrawMoveE, setMoveE, ¤t_position.e); #endif } - UpdateMenu(MoveMenu); + updateMenu(moveMenu); if (!all_axes_trusted()) LCD_MESSAGE_F("WARNING: Current position unknown. Home axes."); } #if HAS_HOME_OFFSET - void Draw_HomeOffset_Menu() { - checkkey = Menu; - if (SET_MENU(HomeOffMenu, MSG_SET_HOME_OFFSETS, 4)) { - BACK_ITEM(Draw_PhySet_Menu); + void drawHomeOffsetMenu() { + checkkey = ID_Menu; + if (SET_MENU(homeOffsetMenu, MSG_SET_HOME_OFFSETS, 4)) { + BACK_ITEM(drawPhySetMenu); #if HAS_X_AXIS - EDIT_ITEM(ICON_HomeOffsetX, MSG_HOME_OFFSET_X, onDrawPFloatMenu, SetHomeOffsetX, &home_offset.x); + EDIT_ITEM(ICON_HomeOffsetX, MSG_HOME_OFFSET_X, onDrawPFloatMenu, setHomeOffsetX, &home_offset.x); #endif #if HAS_Y_AXIS - EDIT_ITEM(ICON_HomeOffsetY, MSG_HOME_OFFSET_Y, onDrawPFloatMenu, SetHomeOffsetY, &home_offset.y); + EDIT_ITEM(ICON_HomeOffsetY, MSG_HOME_OFFSET_Y, onDrawPFloatMenu, setHomeOffsetY, &home_offset.y); #endif #if HAS_Z_AXIS - EDIT_ITEM(ICON_HomeOffsetZ, MSG_HOME_OFFSET_Z, onDrawPFloatMenu, SetHomeOffsetZ, &home_offset.z); + EDIT_ITEM(ICON_HomeOffsetZ, MSG_HOME_OFFSET_Z, onDrawPFloatMenu, setHomeOffsetZ, &home_offset.z); #endif } - UpdateMenu(HomeOffMenu); + updateMenu(homeOffsetMenu); } #endif // HAS_HOME_OFFSET #if HAS_BED_PROBE - void Draw_ProbeSet_Menu() { - checkkey = Menu; + void drawProbeSetMenu() { + checkkey = ID_Menu; if (SET_MENU(ProbeSetMenu, MSG_ZPROBE_SETTINGS, 9)) { - BACK_ITEM(Draw_AdvancedSettings_Menu); + BACK_ITEM(drawAdvancedSettingsMenu); #if HAS_X_AXIS - EDIT_ITEM(ICON_ProbeOffsetX, MSG_ZPROBE_XOFFSET, onDrawPFloatMenu, SetProbeOffsetX, &probe.offset.x); + EDIT_ITEM(ICON_ProbeOffsetX, MSG_ZPROBE_XOFFSET, onDrawPFloatMenu, setProbeOffsetX, &probe.offset.x); #endif #if HAS_Y_AXIS - EDIT_ITEM(ICON_ProbeOffsetY, MSG_ZPROBE_YOFFSET, onDrawPFloatMenu, SetProbeOffsetY, &probe.offset.y); + EDIT_ITEM(ICON_ProbeOffsetY, MSG_ZPROBE_YOFFSET, onDrawPFloatMenu, setProbeOffsetY, &probe.offset.y); #endif #if HAS_Z_AXIS - EDIT_ITEM(ICON_ProbeOffsetZ, MSG_ZPROBE_ZOFFSET, onDrawPFloat2Menu, SetProbeOffsetZ, &probe.offset.z); + EDIT_ITEM(ICON_ProbeOffsetZ, MSG_ZPROBE_ZOFFSET, onDrawPFloat2Menu, setProbeOffsetZ, &probe.offset.z); #endif #if ENABLED(BLTOUCH) - MENU_ITEM(ICON_ProbeStow, MSG_MANUAL_STOW, onDrawMenuItem, ProbeStow); - MENU_ITEM(ICON_ProbeDeploy, MSG_MANUAL_DEPLOY, onDrawMenuItem, ProbeDeploy); + MENU_ITEM(ICON_ProbeStow, MSG_MANUAL_STOW, onDrawMenuItem, probeStow); + MENU_ITEM(ICON_ProbeDeploy, MSG_MANUAL_DEPLOY, onDrawMenuItem, probeDeploy); MENU_ITEM(ICON_BltouchReset, MSG_BLTOUCH_RESET, onDrawMenuItem, bltouch._reset); #if HAS_BLTOUCH_HS_MODE - EDIT_ITEM(ICON_HSMode, MSG_ENABLE_HS_MODE, onDrawChkbMenu, SetHSMode, &bltouch.high_speed_mode); + EDIT_ITEM(ICON_HSMode, MSG_ENABLE_HS_MODE, onDrawChkbMenu, setHSMode, &bltouch.high_speed_mode); #endif #endif - MENU_ITEM(ICON_ProbeTest, MSG_M48_TEST, onDrawMenuItem, ProbeTest); + MENU_ITEM(ICON_ProbeTest, MSG_M48_TEST, onDrawMenuItem, probeTest); } - UpdateMenu(ProbeSetMenu); + updateMenu(ProbeSetMenu); } #endif // HAS_BED_PROBE -void Draw_FilSet_Menu() { - checkkey = Menu; - if (SET_MENU(FilSetMenu, MSG_FILAMENT_SET, 9)) { - BACK_ITEM(Draw_AdvancedSettings_Menu); +void drawFilSetMenu() { + checkkey = ID_Menu; + if (SET_MENU(filSetMenu, MSG_FILAMENT_SET, 9)) { + BACK_ITEM(drawAdvancedSettingsMenu); #if HAS_FILAMENT_SENSOR - EDIT_ITEM(ICON_Runout, MSG_RUNOUT_ENABLE, onDrawChkbMenu, SetRunoutEnable, &runout.enabled); + EDIT_ITEM(ICON_Runout, MSG_RUNOUT_ENABLE, onDrawChkbMenu, setRunoutEnable, &runout.enabled); #endif #if HAS_FILAMENT_RUNOUT_DISTANCE - EDIT_ITEM(ICON_Runout, MSG_RUNOUT_DISTANCE_MM, onDrawPFloatMenu, SetRunoutDistance, &runout.runout_distance()); + EDIT_ITEM(ICON_Runout, MSG_RUNOUT_DISTANCE_MM, onDrawPFloatMenu, setRunoutDistance, &runout.runout_distance()); #endif #if ENABLED(PREVENT_COLD_EXTRUSION) - EDIT_ITEM(ICON_ExtrudeMinT, MSG_EXTRUDER_MIN_TEMP, onDrawPIntMenu, SetExtMinT, &HMI_data.ExtMinT); + EDIT_ITEM(ICON_ExtrudeMinT, MSG_EXTRUDER_MIN_TEMP, onDrawPIntMenu, setExtMinT, &hmiData.extMinT); #endif #if ENABLED(ADVANCED_PAUSE_FEATURE) - EDIT_ITEM(ICON_FilLoad, MSG_FILAMENT_LOAD, onDrawPFloatMenu, SetFilLoad, &fc_settings[0].load_length); - EDIT_ITEM(ICON_FilUnload, MSG_FILAMENT_UNLOAD, onDrawPFloatMenu, SetFilUnload, &fc_settings[0].unload_length); + EDIT_ITEM(ICON_FilLoad, MSG_FILAMENT_LOAD, onDrawPFloatMenu, setFilLoad, &fc_settings[0].load_length); + EDIT_ITEM(ICON_FilUnload, MSG_FILAMENT_UNLOAD, onDrawPFloatMenu, setFilUnload, &fc_settings[0].unload_length); #endif #if ENABLED(FWRETRACT) - MENU_ITEM(ICON_FWRetract, MSG_FWRETRACT, onDrawSubMenu, Draw_FWRetract_Menu); + MENU_ITEM(ICON_FWRetract, MSG_FWRETRACT, onDrawSubMenu, drawFWRetractMenu); #endif } - UpdateMenu(FilSetMenu); + updateMenu(filSetMenu); } #if ALL(CASE_LIGHT_MENU, CASELIGHT_USES_BRIGHTNESS) - void Draw_CaseLight_Menu() { - checkkey = Menu; - if (SET_MENU(CaseLightMenu, MSG_CASE_LIGHT, 3)) { - BACK_ITEM(Draw_Control_Menu); - EDIT_ITEM(ICON_CaseLight, MSG_CASE_LIGHT, onDrawChkbMenu, SetCaseLight, &caselight.on); - EDIT_ITEM(ICON_Brightness, MSG_CASE_LIGHT_BRIGHTNESS, onDrawPInt8Menu, SetCaseLightBrightness, &caselight.brightness); + void drawCaseLightMenu() { + checkkey = ID_Menu; + if (SET_MENU(caseLightMenu, MSG_CASE_LIGHT, 3)) { + BACK_ITEM(drawControlMenu); + EDIT_ITEM(ICON_CaseLight, MSG_CASE_LIGHT, onDrawChkbMenu, setCaseLight, &caselight.on); + EDIT_ITEM(ICON_Brightness, MSG_CASE_LIGHT_BRIGHTNESS, onDrawPInt8Menu, setCaseLightBrightness, &caselight.brightness); } - UpdateMenu(CaseLightMenu); + updateMenu(caseLightMenu); } #endif #if ENABLED(LED_CONTROL_MENU) - void Draw_LedControl_Menu() { - checkkey = Menu; - if (SET_MENU(LedControlMenu, MSG_LED_CONTROL, 10)) { - BACK_ITEM(Draw_Control_Menu); + void drawLedControlMenu() { + checkkey = ID_Menu; + if (SET_MENU(ledControlMenu, MSG_LED_CONTROL, 10)) { + BACK_ITEM(drawControlMenu); #if !ALL(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL) - EDIT_ITEM(ICON_LedControl, MSG_LEDS, onDrawChkbMenu, SetLedStatus, &leds.lights_on); + EDIT_ITEM(ICON_LedControl, MSG_LEDS, onDrawChkbMenu, setLedStatus, &leds.lights_on); #endif #if HAS_COLOR_LEDS #if ENABLED(LED_COLOR_PRESETS) @@ -3264,363 +3268,363 @@ void Draw_FilSet_Menu() { MENU_ITEM(ICON_LedControl, MSG_SET_LEDS_INDIGO, onDrawMenuItem, leds.set_indigo); MENU_ITEM(ICON_LedControl, MSG_SET_LEDS_VIOLET, onDrawMenuItem, leds.set_violet); #else - EDIT_ITEM(ICON_LedControl, MSG_COLORS_RED, onDrawPInt8Menu, SetLEDColorR, &leds.color.r); - EDIT_ITEM(ICON_LedControl, MSG_COLORS_GREEN, onDrawPInt8Menu, SetLEDColorG, &leds.color.g); - EDIT_ITEM(ICON_LedControl, MSG_COLORS_BLUE, onDrawPInt8Menu, SetLEDColorB, &leds.color.b); + EDIT_ITEM(ICON_LedControl, MSG_COLORS_RED, onDrawPInt8Menu, setLEDColorR, &leds.color.r); + EDIT_ITEM(ICON_LedControl, MSG_COLORS_GREEN, onDrawPInt8Menu, setLEDColorG, &leds.color.g); + EDIT_ITEM(ICON_LedControl, MSG_COLORS_BLUE, onDrawPInt8Menu, setLEDColorB, &leds.color.b); #if ENABLED(HAS_WHITE_LED) - EDIT_ITEM(ICON_LedControl, MSG_COLORS_WHITE, onDrawPInt8Menu, SetLEDColorW, &leds.color.w); + EDIT_ITEM(ICON_LedControl, MSG_COLORS_WHITE, onDrawPInt8Menu, setLEDColorW, &leds.color.w); #endif #endif #endif } - UpdateMenu(LedControlMenu); + updateMenu(ledControlMenu); } #endif // LED_CONTROL_MENU -void Draw_Tune_Menu() { - checkkey = Menu; - if (SET_MENU_R(TuneMenu, selrect({73, 2, 28, 12}), MSG_TUNE, 17)) { - BACK_ITEM(Goto_PrintProcess); - EDIT_ITEM(ICON_Speed, MSG_SPEED, onDrawSpeedItem, SetSpeed, &feedrate_percentage); +void drawTuneMenu() { + checkkey = ID_Menu; + if (SET_MENU_R(tuneMenu, selrect({73, 2, 28, 12}), MSG_TUNE, 17)) { + BACK_ITEM(gotoPrintProcess); + EDIT_ITEM(ICON_Speed, MSG_SPEED, onDrawSpeedItem, setSpeed, &feedrate_percentage); #if HAS_HOTEND - HotendTargetItem = EDIT_ITEM(ICON_HotendTemp, MSG_UBL_SET_TEMP_HOTEND, onDrawHotendTemp, SetHotendTemp, &thermalManager.temp_hotend[0].target); + hotendTargetItem = EDIT_ITEM(ICON_HotendTemp, MSG_UBL_SET_TEMP_HOTEND, onDrawHotendTemp, setHotendTemp, &thermalManager.temp_hotend[0].target); #endif #if HAS_HEATED_BED - BedTargetItem = EDIT_ITEM(ICON_BedTemp, MSG_UBL_SET_TEMP_BED, onDrawBedTemp, SetBedTemp, &thermalManager.temp_bed.target); + bedTargetItem = EDIT_ITEM(ICON_BedTemp, MSG_UBL_SET_TEMP_BED, onDrawBedTemp, setBedTemp, &thermalManager.temp_bed.target); #endif #if HAS_FAN - FanSpeedItem = EDIT_ITEM(ICON_FanSpeed, MSG_FAN_SPEED, onDrawFanSpeed, SetFanSpeed, &thermalManager.fan_speed[0]); + fanSpeedItem = EDIT_ITEM(ICON_FanSpeed, MSG_FAN_SPEED, onDrawFanSpeed, setFanSpeed, &thermalManager.fan_speed[0]); #endif #if ALL(HAS_ZOFFSET_ITEM, HAS_BED_PROBE, BABYSTEP_ZPROBE_OFFSET, BABYSTEPPING) - EDIT_ITEM(ICON_Zoffset, MSG_ZPROBE_ZOFFSET, onDrawZOffset, SetZOffset, &BABY_Z_VAR); + EDIT_ITEM(ICON_Zoffset, MSG_ZPROBE_ZOFFSET, onDrawZOffset, setZOffset, &BABY_Z_VAR); #elif ALL(HAS_ZOFFSET_ITEM, MESH_BED_LEVELING, BABYSTEPPING) - EDIT_ITEM(ICON_Zoffset, MSG_HOME_OFFSET_Z, onDrawPFloat2Menu, SetZOffset, &BABY_Z_VAR); + EDIT_ITEM(ICON_Zoffset, MSG_HOME_OFFSET_Z, onDrawPFloat2Menu, setZOffset, &BABY_Z_VAR); #endif - EDIT_ITEM(ICON_Flow, MSG_FLOW, onDrawPIntMenu, SetFlow, &planner.flow_percentage[0]); + EDIT_ITEM(ICON_Flow, MSG_FLOW, onDrawPIntMenu, setFlow, &planner.flow_percentage[0]); #if ENABLED(ADVANCED_PAUSE_FEATURE) - MENU_ITEM(ICON_FilMan, MSG_FILAMENTCHANGE, onDrawMenuItem, ChangeFilament); + MENU_ITEM(ICON_FilMan, MSG_FILAMENTCHANGE, onDrawMenuItem, changeFilament); #endif #if HAS_FILAMENT_SENSOR - EDIT_ITEM(ICON_Runout, MSG_RUNOUT_ENABLE, onDrawChkbMenu, SetRunoutEnable, &runout.enabled); + EDIT_ITEM(ICON_Runout, MSG_RUNOUT_ENABLE, onDrawChkbMenu, setRunoutEnable, &runout.enabled); #endif #if ENABLED(PLR_TUNE_ITEM) - EDIT_ITEM(ICON_Pwrlossr, MSG_OUTAGE_RECOVERY, onDrawChkbMenu, SetPwrLossr, &recovery.enabled); + EDIT_ITEM(ICON_Pwrlossr, MSG_OUTAGE_RECOVERY, onDrawChkbMenu, setPwrLossr, &recovery.enabled); #endif #if ENABLED(FWRETRACT) - MENU_ITEM(ICON_FWRetract, MSG_FWRETRACT, onDrawSubMenu, Draw_FWRetract_Menu); + MENU_ITEM(ICON_FWRetract, MSG_FWRETRACT, onDrawSubMenu, drawFWRetractMenu); #endif #if ENABLED(JD_TUNE_ITEM) - EDIT_ITEM(ICON_JDmm, MSG_JUNCTION_DEVIATION, onDrawPFloat3Menu, SetJDmm, &planner.junction_deviation_mm); + EDIT_ITEM(ICON_JDmm, MSG_JUNCTION_DEVIATION, onDrawPFloat3Menu, setJDmm, &planner.junction_deviation_mm); #endif #if ENABLED(ADVK_TUNE_ITEM) - EDIT_ITEM(ICON_MaxAccelerated, MSG_ADVANCE_K, onDrawPFloat3Menu, SetLA_K, &planner.extruder_advance_K[0]); + EDIT_ITEM(ICON_MaxAccelerated, MSG_ADVANCE_K, onDrawPFloat3Menu, setLA_K, &planner.extruder_advance_K[0]); #endif #if HAS_LOCKSCREEN - MENU_ITEM(ICON_Lock, MSG_LOCKSCREEN, onDrawMenuItem, DWIN_LockScreen); + MENU_ITEM(ICON_Lock, MSG_LOCKSCREEN, onDrawMenuItem, dwinLockScreen); #endif #if HAS_LCD_BRIGHTNESS - EDIT_ITEM(ICON_Brightness, MSG_BRIGHTNESS, onDrawPInt8Menu, SetBrightness, &ui.brightness); - MENU_ITEM(ICON_Brightness, MSG_BRIGHTNESS_OFF, onDrawMenuItem, TurnOffBacklight); + EDIT_ITEM(ICON_Brightness, MSG_BRIGHTNESS, onDrawPInt8Menu, setBrightness, &ui.brightness); + MENU_ITEM(ICON_Brightness, MSG_BRIGHTNESS_OFF, onDrawMenuItem, turnOffBacklight); #endif #if ENABLED(CASE_LIGHT_MENU) - EDIT_ITEM(ICON_CaseLight, MSG_CASE_LIGHT, onDrawChkbMenu, SetCaseLight, &caselight.on); + EDIT_ITEM(ICON_CaseLight, MSG_CASE_LIGHT, onDrawChkbMenu, setCaseLight, &caselight.on); #elif ENABLED(LED_CONTROL_MENU) && DISABLED(CASE_LIGHT_USE_NEOPIXEL) - EDIT_ITEM(ICON_LedControl, MSG_LEDS, onDrawChkbMenu, SetLedStatus, &leds.lights_on); + EDIT_ITEM(ICON_LedControl, MSG_LEDS, onDrawChkbMenu, setLedStatus, &leds.lights_on); #endif } - UpdateMenu(TuneMenu); + updateMenu(tuneMenu); } #if ENABLED(ADAPTIVE_STEP_SMOOTHING) - void SetAdaptiveStepSmoothing() { - Toggle_Chkb_Line(HMI_data.AdaptiveStepSmoothing); + void setAdaptiveStepSmoothing() { + toggleCheckboxLine(hmiData.adaptiveStepSmoothing); } #endif #if ENABLED(SHAPING_MENU) - void ApplyShapingFreq() { stepper.set_shaping_frequency(HMI_value.axis, MenuData.Value / 100); } - void ApplyShapingZeta() { stepper.set_shaping_damping_ratio(HMI_value.axis, MenuData.Value / 100); } + void applyShapingFreq() { stepper.set_shaping_frequency(hmiValue.axis, menuData.value / 100); } + void applyShapingZeta() { stepper.set_shaping_damping_ratio(hmiValue.axis, menuData.value / 100); } #if ENABLED(INPUT_SHAPING_X) - void onDrawShapingXFreq(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, stepper.get_shaping_frequency(X_AXIS)); } - void onDrawShapingXZeta(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, stepper.get_shaping_damping_ratio(X_AXIS)); } - void SetShapingXFreq() { HMI_value.axis = X_AXIS; SetFloatOnClick(0, 200, 2, stepper.get_shaping_frequency(X_AXIS), ApplyShapingFreq); } - void SetShapingXZeta() { HMI_value.axis = X_AXIS; SetFloatOnClick(0, 1, 2, stepper.get_shaping_damping_ratio(X_AXIS), ApplyShapingZeta); } + void onDrawShapingXFreq(MenuItem* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, stepper.get_shaping_frequency(X_AXIS)); } + void onDrawShapingXZeta(MenuItem* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, stepper.get_shaping_damping_ratio(X_AXIS)); } + void setShapingXFreq() { hmiValue.axis = X_AXIS; setFloatOnClick(0, 200, 2, stepper.get_shaping_frequency(X_AXIS), applyShapingFreq); } + void setShapingXZeta() { hmiValue.axis = X_AXIS; setFloatOnClick(0, 1, 2, stepper.get_shaping_damping_ratio(X_AXIS), applyShapingZeta); } #endif #if ENABLED(INPUT_SHAPING_Y) - void onDrawShapingYFreq(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, stepper.get_shaping_frequency(Y_AXIS)); } - void onDrawShapingYZeta(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, stepper.get_shaping_damping_ratio(Y_AXIS)); } - void SetShapingYFreq() { HMI_value.axis = Y_AXIS; SetFloatOnClick(0, 200, 2, stepper.get_shaping_frequency(Y_AXIS), ApplyShapingFreq); } - void SetShapingYZeta() { HMI_value.axis = Y_AXIS; SetFloatOnClick(0, 1, 2, stepper.get_shaping_damping_ratio(Y_AXIS), ApplyShapingZeta); } + void onDrawShapingYFreq(MenuItem* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, stepper.get_shaping_frequency(Y_AXIS)); } + void onDrawShapingYZeta(MenuItem* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, stepper.get_shaping_damping_ratio(Y_AXIS)); } + void setShapingYFreq() { hmiValue.axis = Y_AXIS; setFloatOnClick(0, 200, 2, stepper.get_shaping_frequency(Y_AXIS), applyShapingFreq); } + void setShapingYZeta() { hmiValue.axis = Y_AXIS; setFloatOnClick(0, 1, 2, stepper.get_shaping_damping_ratio(Y_AXIS), applyShapingZeta); } #endif - void Draw_InputShaping_menu() { - checkkey = Menu; - if (SET_MENU(InputShapingMenu, MSG_INPUT_SHAPING, 5)) { - BACK_ITEM(Draw_Motion_Menu); + void drawInputShaping_menu() { + checkkey = ID_Menu; + if (SET_MENU(inputShapingMenu, MSG_INPUT_SHAPING, 5)) { + BACK_ITEM(drawMotionMenu); #if ENABLED(INPUT_SHAPING_X) - MENU_ITEM(ICON_ShapingX, MSG_SHAPING_A_FREQ, onDrawShapingXFreq, SetShapingXFreq); - MENU_ITEM(ICON_ShapingX, MSG_SHAPING_A_ZETA, onDrawShapingXZeta, SetShapingXZeta); + MENU_ITEM(ICON_ShapingX, MSG_SHAPING_A_FREQ, onDrawShapingXFreq, setShapingXFreq); + MENU_ITEM(ICON_ShapingX, MSG_SHAPING_A_ZETA, onDrawShapingXZeta, setShapingXZeta); #endif #if ENABLED(INPUT_SHAPING_Y) - MENU_ITEM(ICON_ShapingY, MSG_SHAPING_B_FREQ, onDrawShapingYFreq, SetShapingYFreq); - MENU_ITEM(ICON_ShapingY, MSG_SHAPING_B_ZETA, onDrawShapingYZeta, SetShapingYZeta); + MENU_ITEM(ICON_ShapingY, MSG_SHAPING_B_FREQ, onDrawShapingYFreq, setShapingYFreq); + MENU_ITEM(ICON_ShapingY, MSG_SHAPING_B_ZETA, onDrawShapingYZeta, setShapingYZeta); #endif } - UpdateMenu(InputShapingMenu); + updateMenu(inputShapingMenu); } #endif #if HAS_TRINAMIC_CONFIG #if AXIS_IS_TMC(X) - void SetXTMCCurrent() { SetPIntOnClick(MIN_TMC_CURRENT, MAX_TMC_CURRENT, []{ stepperX.refresh_stepper_current(); }); } + void setXTMCCurrent() { setPIntOnClick(MIN_TMC_CURRENT, MAX_TMC_CURRENT, []{ stepperX.refresh_stepper_current(); }); } #endif #if AXIS_IS_TMC(Y) - void SetYTMCCurrent() { SetPIntOnClick(MIN_TMC_CURRENT, MAX_TMC_CURRENT, []{ stepperY.refresh_stepper_current(); }); } + void setYTMCCurrent() { setPIntOnClick(MIN_TMC_CURRENT, MAX_TMC_CURRENT, []{ stepperY.refresh_stepper_current(); }); } #endif #if AXIS_IS_TMC(Z) - void SetZTMCCurrent() { SetPIntOnClick(MIN_TMC_CURRENT, MAX_TMC_CURRENT, []{ stepperZ.refresh_stepper_current(); }); } + void setZTMCCurrent() { setPIntOnClick(MIN_TMC_CURRENT, MAX_TMC_CURRENT, []{ stepperZ.refresh_stepper_current(); }); } #endif #if AXIS_IS_TMC(E0) - void SetETMCCurrent() { SetPIntOnClick(MIN_TMC_CURRENT, MAX_TMC_CURRENT, []{ stepperE0.refresh_stepper_current(); }); } + void setETMCCurrent() { setPIntOnClick(MIN_TMC_CURRENT, MAX_TMC_CURRENT, []{ stepperE0.refresh_stepper_current(); }); } #endif - void Draw_TrinamicConfig_menu() { - checkkey = Menu; - if (SET_MENU(TrinamicConfigMenu, MSG_TMC_DRIVERS, 5)) { - BACK_ITEM(Draw_AdvancedSettings_Menu); + void drawTrinamicConfigMenu() { + checkkey = ID_Menu; + if (SET_MENU(trinamicConfigMenu, MSG_TMC_DRIVERS, 5)) { + BACK_ITEM(drawAdvancedSettingsMenu); #if AXIS_IS_TMC(X) - EDIT_ITEM(ICON_TMCXSet, MSG_TMC_ACURRENT, onDrawPIntMenu, SetXTMCCurrent, &stepperX.val_mA); + EDIT_ITEM(ICON_TMCXSet, MSG_TMC_ACURRENT, onDrawPIntMenu, setXTMCCurrent, &stepperX.val_mA); #endif #if AXIS_IS_TMC(Y) - EDIT_ITEM(ICON_TMCYSet, MSG_TMC_BCURRENT, onDrawPIntMenu, SetYTMCCurrent, &stepperY.val_mA); + EDIT_ITEM(ICON_TMCYSet, MSG_TMC_BCURRENT, onDrawPIntMenu, setYTMCCurrent, &stepperY.val_mA); #endif #if AXIS_IS_TMC(Z) - EDIT_ITEM(ICON_TMCZSet, MSG_TMC_CCURRENT, onDrawPIntMenu, SetZTMCCurrent, &stepperZ.val_mA); + EDIT_ITEM(ICON_TMCZSet, MSG_TMC_CCURRENT, onDrawPIntMenu, setZTMCCurrent, &stepperZ.val_mA); #endif #if AXIS_IS_TMC(E0) - EDIT_ITEM(ICON_TMCESet, MSG_TMC_ECURRENT, onDrawPIntMenu, SetETMCCurrent, &stepperE0.val_mA); + EDIT_ITEM(ICON_TMCESet, MSG_TMC_ECURRENT, onDrawPIntMenu, setETMCCurrent, &stepperE0.val_mA); #endif } - UpdateMenu(TrinamicConfigMenu); + updateMenu(trinamicConfigMenu); } #endif -void Draw_Motion_Menu() { - checkkey = Menu; - if (SET_MENU_R(MotionMenu, selrect({1, 16, 28, 13}), MSG_MOTION, 10)) { - BACK_ITEM(Draw_Control_Menu); - MENU_ITEM(ICON_MaxSpeed, MSG_SPEED, onDrawSpeed, Draw_MaxSpeed_Menu); - MENU_ITEM(ICON_MaxAccelerated, MSG_ACCELERATION, onDrawAcc, Draw_MaxAccel_Menu); +void drawMotionMenu() { + checkkey = ID_Menu; + if (SET_MENU_R(motionMenu, selrect({1, 16, 28, 13}), MSG_MOTION, 10)) { + BACK_ITEM(drawControlMenu); + MENU_ITEM(ICON_MaxSpeed, MSG_SPEED, onDrawSpeed, drawMaxSpeedMenu); + MENU_ITEM(ICON_MaxAccelerated, MSG_ACCELERATION, onDrawAcc, drawMaxAccelMenu); #if HAS_CLASSIC_JERK - MENU_ITEM(ICON_MaxJerk, MSG_JERK, onDrawJerk, Draw_MaxJerk_Menu); + MENU_ITEM(ICON_MaxJerk, MSG_JERK, onDrawJerk, drawMaxJerkMenu); #elif HAS_JUNCTION_DEVIATION - EDIT_ITEM(ICON_JDmm, MSG_JUNCTION_DEVIATION, onDrawPFloat3Menu, SetJDmm, &planner.junction_deviation_mm); + EDIT_ITEM(ICON_JDmm, MSG_JUNCTION_DEVIATION, onDrawPFloat3Menu, setJDmm, &planner.junction_deviation_mm); #endif #if ENABLED(LIN_ADVANCE) - EDIT_ITEM(ICON_MaxAccelerated, MSG_ADVANCE_K, onDrawPFloat3Menu, SetLA_K, &planner.extruder_advance_K[0]); + EDIT_ITEM(ICON_MaxAccelerated, MSG_ADVANCE_K, onDrawPFloat3Menu, setLA_K, &planner.extruder_advance_K[0]); #endif #if ENABLED(SHAPING_MENU) - MENU_ITEM(ICON_InputShaping, MSG_INPUT_SHAPING, onDrawSubMenu, Draw_InputShaping_menu); + MENU_ITEM(ICON_InputShaping, MSG_INPUT_SHAPING, onDrawSubMenu, drawInputShaping_menu); #endif #if ENABLED(ADAPTIVE_STEP_SMOOTHING) - EDIT_ITEM(ICON_UBLActive, MSG_STEP_SMOOTHING, onDrawChkbMenu, SetAdaptiveStepSmoothing, &HMI_data.AdaptiveStepSmoothing); + EDIT_ITEM(ICON_UBLActive, MSG_STEP_SMOOTHING, onDrawChkbMenu, setAdaptiveStepSmoothing, &hmiData.adaptiveStepSmoothing); #endif - MENU_ITEM(ICON_Step, MSG_STEPS_PER_MM, onDrawSteps, Draw_Steps_Menu); - EDIT_ITEM(ICON_Flow, MSG_FLOW, onDrawPIntMenu, SetFlow, &planner.flow_percentage[0]); - EDIT_ITEM(ICON_Speed, MSG_SPEED, onDrawPIntMenu, SetSpeed, &feedrate_percentage); + MENU_ITEM(ICON_Step, MSG_STEPS_PER_MM, onDrawSteps, drawStepsMenu); + EDIT_ITEM(ICON_Flow, MSG_FLOW, onDrawPIntMenu, setFlow, &planner.flow_percentage[0]); + EDIT_ITEM(ICON_Speed, MSG_SPEED, onDrawPIntMenu, setSpeed, &feedrate_percentage); } - UpdateMenu(MotionMenu); + updateMenu(motionMenu); } #if HAS_PREHEAT - void Draw_PreheatHotend_Menu() { - checkkey = Menu; - if (SET_MENU(PreheatHotendMenu, MSG_PREHEAT_HOTEND, 1 + PREHEAT_COUNT)) { - BACK_ITEM(Draw_FilamentMan_Menu); + void drawPreheatHotendMenu() { + checkkey = ID_Menu; + if (SET_MENU(preheatHotendMenu, MSG_PREHEAT_HOTEND, 1 + PREHEAT_COUNT)) { + BACK_ITEM(drawFilamentManMenu); #define _ITEM_PREHEAT_HE(N) MENU_ITEM(ICON_Preheat##N, MSG_PREHEAT_##N, onDrawMenuItem, DoPreheatHotend##N); REPEAT_1(PREHEAT_COUNT, _ITEM_PREHEAT_HE) } - UpdateMenu(PreheatHotendMenu); + updateMenu(preheatHotendMenu); } #endif #if ENABLED(ADVANCED_PAUSE_FEATURE) - void Draw_FilamentMan_Menu() { - checkkey = Menu; - if (SET_MENU(FilamentMenu, MSG_FILAMENT_MAN, 6)) { - BACK_ITEM(Draw_Prepare_Menu); + void drawFilamentManMenu() { + checkkey = ID_Menu; + if (SET_MENU(filamentMenu, MSG_FILAMENT_MAN, 6)) { + BACK_ITEM(drawPrepareMenu); #if ENABLED(NOZZLE_PARK_FEATURE) - MENU_ITEM(ICON_Park, MSG_FILAMENT_PARK_ENABLED, onDrawMenuItem, ParkHead); + MENU_ITEM(ICON_Park, MSG_FILAMENT_PARK_ENABLED, onDrawMenuItem, parkHead); #endif #if HAS_PREHEAT - MENU_ITEM(ICON_SetEndTemp, MSG_PREHEAT_HOTEND, onDrawSubMenu, Draw_PreheatHotend_Menu); + MENU_ITEM(ICON_SetEndTemp, MSG_PREHEAT_HOTEND, onDrawSubMenu, drawPreheatHotendMenu); #endif - MENU_ITEM(ICON_FilMan, MSG_FILAMENTCHANGE, onDrawMenuItem, ChangeFilament); + MENU_ITEM(ICON_FilMan, MSG_FILAMENTCHANGE, onDrawMenuItem, changeFilament); #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) - MENU_ITEM(ICON_FilUnload, MSG_FILAMENTUNLOAD, onDrawMenuItem, UnloadFilament); - MENU_ITEM(ICON_FilLoad, MSG_FILAMENTLOAD, onDrawMenuItem, LoadFilament); + MENU_ITEM(ICON_FilUnload, MSG_FILAMENTUNLOAD, onDrawMenuItem, unloadFilament); + MENU_ITEM(ICON_FilLoad, MSG_FILAMENTLOAD, onDrawMenuItem, loadFilament); #endif } - UpdateMenu(FilamentMenu); + updateMenu(filamentMenu); } #endif #if ENABLED(MESH_BED_LEVELING) - void Draw_ManualMesh_Menu() { - checkkey = Menu; - if (SET_MENU(ManualMesh, MSG_UBL_MANUAL_MESH, 6)) { - BACK_ITEM(Draw_Prepare_Menu); - MENU_ITEM(ICON_ManualMesh, MSG_LEVEL_BED, onDrawMenuItem, ManualMeshStart); - MMeshMoveZItem = EDIT_ITEM(ICON_Zoffset, MSG_MOVE_Z, onDrawMMeshMoveZ, SetMMeshMoveZ, ¤t_position.z); - MENU_ITEM(ICON_Axis, MSG_UBL_CONTINUE_MESH, onDrawMenuItem, ManualMeshContinue); - MENU_ITEM(ICON_MeshViewer, MSG_MESH_VIEW, onDrawSubMenu, DWIN_MeshViewer); - MENU_ITEM(ICON_MeshSave, MSG_UBL_SAVE_MESH, onDrawMenuItem, ManualMeshSave); + void drawManualMeshMenu() { + checkkey = ID_Menu; + if (SET_MENU(manualMesh, MSG_UBL_MANUAL_MESH, 6)) { + BACK_ITEM(drawPrepareMenu); + MENU_ITEM(ICON_ManualMesh, MSG_LEVEL_BED, onDrawMenuItem, manualMeshStart); + mMeshMoveZItem = EDIT_ITEM(ICON_Zoffset, MSG_MOVE_Z, onDrawMMeshMoveZ, setMMeshMoveZ, ¤t_position.z); + MENU_ITEM(ICON_Axis, MSG_UBL_CONTINUE_MESH, onDrawMenuItem, manualMeshContinue); + MENU_ITEM(ICON_MeshViewer, MSG_MESH_VIEW, onDrawSubMenu, dwinMeshViewer); + MENU_ITEM(ICON_MeshSave, MSG_UBL_SAVE_MESH, onDrawMenuItem, manualMeshSave); } - UpdateMenu(ManualMesh); + updateMenu(manualMesh); } #endif // MESH_BED_LEVELING #if HAS_PREHEAT - void Draw_Preheat_Menu(bool NotCurrent) { - checkkey = Menu; - if (NotCurrent) { - BACK_ITEM(Draw_Temperature_Menu); + void drawPreheatMenu(const bool notCurrent) { + checkkey = ID_Menu; + if (notCurrent) { + BACK_ITEM(drawTemperatureMenu); #if HAS_HOTEND - EDIT_ITEM(ICON_SetEndTemp, MSG_UBL_SET_TEMP_HOTEND, onDrawSetPreheatHotend, SetPreheatEndTemp, &ui.material_preset[HMI_value.Select].hotend_temp); + EDIT_ITEM(ICON_SetEndTemp, MSG_UBL_SET_TEMP_HOTEND, onDrawSetPreheatHotend, setPreheatEndTemp, &ui.material_preset[hmiValue.select].hotend_temp); #endif #if HAS_HEATED_BED - EDIT_ITEM(ICON_SetBedTemp, MSG_UBL_SET_TEMP_BED, onDrawSetPreheatBed, SetPreheatBedTemp, &ui.material_preset[HMI_value.Select].bed_temp); + EDIT_ITEM(ICON_SetBedTemp, MSG_UBL_SET_TEMP_BED, onDrawSetPreheatBed, setPreheatBedTemp, &ui.material_preset[hmiValue.select].bed_temp); #endif #if HAS_FAN - EDIT_ITEM(ICON_FanSpeed, MSG_FAN_SPEED, onDrawSetPreheatFan, SetPreheatFanSpeed, &ui.material_preset[HMI_value.Select].fan_speed); + EDIT_ITEM(ICON_FanSpeed, MSG_FAN_SPEED, onDrawSetPreheatFan, setPreheatFanSpeed, &ui.material_preset[hmiValue.select].fan_speed); #endif #if ENABLED(EEPROM_SETTINGS) - MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawWriteEeprom, WriteEeprom); + MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawWriteEeprom, writeEEPROM); #endif } - UpdateMenu(PreheatMenu); + updateMenu(preheatMenu); } - #define _Preheat_Menu(N) \ - void Draw_Preheat## N ##_Menu() { \ - HMI_value.Select = (N) - 1; \ - Draw_Preheat_Menu(SET_MENU(PreheatMenu, MSG_PREHEAT_## N ##_SETTINGS, 5)); \ + #define _preheatMenu(N) \ + void drawPreheat## N ##Menu() { \ + hmiValue.select = (N) - 1; \ + drawPreheatMenu(SET_MENU(preheatMenu, MSG_PREHEAT_## N ##_SETTINGS, 5)); \ } - REPEAT_1(PREHEAT_COUNT, _Preheat_Menu) + REPEAT_1(PREHEAT_COUNT, _preheatMenu) #endif // HAS_PREHEAT -void Draw_Temperature_Menu() { - checkkey = Menu; - if (SET_MENU_R(TemperatureMenu, selrect({236, 2, 28, 12}), MSG_TEMPERATURE, 4 + PREHEAT_COUNT)) { - BACK_ITEM(Draw_Control_Menu); +void drawTemperatureMenu() { + checkkey = ID_Menu; + if (SET_MENU_R(temperatureMenu, selrect({236, 2, 28, 12}), MSG_TEMPERATURE, 4 + PREHEAT_COUNT)) { + BACK_ITEM(drawControlMenu); #if HAS_HOTEND - HotendTargetItem = EDIT_ITEM(ICON_SetEndTemp, MSG_UBL_SET_TEMP_HOTEND, onDrawHotendTemp, SetHotendTemp, &thermalManager.temp_hotend[0].target); + hotendTargetItem = EDIT_ITEM(ICON_SetEndTemp, MSG_UBL_SET_TEMP_HOTEND, onDrawHotendTemp, setHotendTemp, &thermalManager.temp_hotend[0].target); #endif #if HAS_HEATED_BED - BedTargetItem = EDIT_ITEM(ICON_SetBedTemp, MSG_UBL_SET_TEMP_BED, onDrawBedTemp, SetBedTemp, &thermalManager.temp_bed.target); + bedTargetItem = EDIT_ITEM(ICON_SetBedTemp, MSG_UBL_SET_TEMP_BED, onDrawBedTemp, setBedTemp, &thermalManager.temp_bed.target); #endif #if HAS_FAN - FanSpeedItem = EDIT_ITEM(ICON_FanSpeed, MSG_FAN_SPEED, onDrawFanSpeed, SetFanSpeed, &thermalManager.fan_speed[0]); + fanSpeedItem = EDIT_ITEM(ICON_FanSpeed, MSG_FAN_SPEED, onDrawFanSpeed, setFanSpeed, &thermalManager.fan_speed[0]); #endif #if HAS_PREHEAT - #define _ITEM_SETPREHEAT(N) MENU_ITEM(ICON_SetPreheat##N, MSG_PREHEAT_## N ##_SETTINGS, onDrawSubMenu, Draw_Preheat## N ##_Menu); + #define _ITEM_SETPREHEAT(N) MENU_ITEM(ICON_SetPreheat##N, MSG_PREHEAT_## N ##_SETTINGS, onDrawSubMenu, drawPreheat## N ##Menu); REPEAT_1(PREHEAT_COUNT, _ITEM_SETPREHEAT) #endif } - UpdateMenu(TemperatureMenu); + updateMenu(temperatureMenu); } -void Draw_MaxSpeed_Menu() { - checkkey = Menu; - if (SET_MENU_R(MaxSpeedMenu, selrect({1, 16, 28, 13}), MSG_MAX_SPEED, 5)) { - BACK_ITEM(Draw_Motion_Menu); +void drawMaxSpeedMenu() { + checkkey = ID_Menu; + if (SET_MENU_R(maxSpeedMenu, selrect({1, 16, 28, 13}), MSG_MAX_SPEED, 5)) { + BACK_ITEM(drawMotionMenu); #if HAS_X_AXIS - EDIT_ITEM(ICON_MaxSpeedX, MSG_VMAX_A, onDrawMaxSpeedX, SetMaxSpeedX, &planner.settings.max_feedrate_mm_s[X_AXIS]); + EDIT_ITEM(ICON_MaxSpeedX, MSG_VMAX_A, onDrawMaxSpeedX, setMaxSpeedX, &planner.settings.max_feedrate_mm_s[X_AXIS]); #endif #if HAS_Y_AXIS - EDIT_ITEM(ICON_MaxSpeedY, MSG_VMAX_B, onDrawMaxSpeedY, SetMaxSpeedY, &planner.settings.max_feedrate_mm_s[Y_AXIS]); + EDIT_ITEM(ICON_MaxSpeedY, MSG_VMAX_B, onDrawMaxSpeedY, setMaxSpeedY, &planner.settings.max_feedrate_mm_s[Y_AXIS]); #endif #if HAS_Z_AXIS - EDIT_ITEM(ICON_MaxSpeedZ, MSG_VMAX_C, onDrawMaxSpeedZ, SetMaxSpeedZ, &planner.settings.max_feedrate_mm_s[Z_AXIS]); + EDIT_ITEM(ICON_MaxSpeedZ, MSG_VMAX_C, onDrawMaxSpeedZ, setMaxSpeedZ, &planner.settings.max_feedrate_mm_s[Z_AXIS]); #endif #if HAS_HOTEND - EDIT_ITEM(ICON_MaxSpeedE, MSG_VMAX_E, onDrawMaxSpeedE, SetMaxSpeedE, &planner.settings.max_feedrate_mm_s[E_AXIS]); + EDIT_ITEM(ICON_MaxSpeedE, MSG_VMAX_E, onDrawMaxSpeedE, setMaxSpeedE, &planner.settings.max_feedrate_mm_s[E_AXIS]); #endif } - UpdateMenu(MaxSpeedMenu); + updateMenu(maxSpeedMenu); } -void Draw_MaxAccel_Menu() { - checkkey = Menu; - if (SET_MENU_R(MaxAccelMenu, selrect({1, 16, 28, 13}), MSG_AMAX_EN, 5)) { - BACK_ITEM(Draw_Motion_Menu); +void drawMaxAccelMenu() { + checkkey = ID_Menu; + if (SET_MENU_R(maxAccelMenu, selrect({1, 16, 28, 13}), MSG_AMAX_EN, 5)) { + BACK_ITEM(drawMotionMenu); #if HAS_X_AXIS - EDIT_ITEM(ICON_MaxAccX, MSG_AMAX_A, onDrawMaxAccelX, SetMaxAccelX, &planner.settings.max_acceleration_mm_per_s2[X_AXIS]); + EDIT_ITEM(ICON_MaxAccX, MSG_AMAX_A, onDrawMaxAccelX, setMaxAccelX, &planner.settings.max_acceleration_mm_per_s2[X_AXIS]); #endif #if HAS_Y_AXIS - EDIT_ITEM(ICON_MaxAccY, MSG_AMAX_B, onDrawMaxAccelY, SetMaxAccelY, &planner.settings.max_acceleration_mm_per_s2[Y_AXIS]); + EDIT_ITEM(ICON_MaxAccY, MSG_AMAX_B, onDrawMaxAccelY, setMaxAccelY, &planner.settings.max_acceleration_mm_per_s2[Y_AXIS]); #endif #if HAS_Z_AXIS - EDIT_ITEM(ICON_MaxAccZ, MSG_AMAX_C, onDrawMaxAccelZ, SetMaxAccelZ, &planner.settings.max_acceleration_mm_per_s2[Z_AXIS]); + EDIT_ITEM(ICON_MaxAccZ, MSG_AMAX_C, onDrawMaxAccelZ, setMaxAccelZ, &planner.settings.max_acceleration_mm_per_s2[Z_AXIS]); #endif #if HAS_HOTEND - EDIT_ITEM(ICON_MaxAccE, MSG_AMAX_E, onDrawMaxAccelE, SetMaxAccelE, &planner.settings.max_acceleration_mm_per_s2[E_AXIS]); + EDIT_ITEM(ICON_MaxAccE, MSG_AMAX_E, onDrawMaxAccelE, setMaxAccelE, &planner.settings.max_acceleration_mm_per_s2[E_AXIS]); #endif } - UpdateMenu(MaxAccelMenu); + updateMenu(maxAccelMenu); } #if HAS_CLASSIC_JERK - void Draw_MaxJerk_Menu() { - checkkey = Menu; - if (SET_MENU_R(MaxJerkMenu, selrect({1, 16, 28, 13}), MSG_JERK, 5)) { - BACK_ITEM(Draw_Motion_Menu); + void drawMaxJerkMenu() { + checkkey = ID_Menu; + if (SET_MENU_R(maxJerkMenu, selrect({1, 16, 28, 13}), MSG_JERK, 5)) { + BACK_ITEM(drawMotionMenu); #if HAS_X_AXIS - EDIT_ITEM(ICON_MaxSpeedJerkX, MSG_VA_JERK, onDrawMaxJerkX, SetMaxJerkX, &planner.max_jerk.x); + EDIT_ITEM(ICON_MaxSpeedJerkX, MSG_VA_JERK, onDrawMaxJerkX, setMaxJerkX, &planner.max_jerk.x); #endif #if HAS_Y_AXIS - EDIT_ITEM(ICON_MaxSpeedJerkY, MSG_VB_JERK, onDrawMaxJerkY, SetMaxJerkY, &planner.max_jerk.y); + EDIT_ITEM(ICON_MaxSpeedJerkY, MSG_VB_JERK, onDrawMaxJerkY, setMaxJerkY, &planner.max_jerk.y); #endif #if HAS_Z_AXIS - EDIT_ITEM(ICON_MaxSpeedJerkZ, MSG_VC_JERK, onDrawMaxJerkZ, SetMaxJerkZ, &planner.max_jerk.z); + EDIT_ITEM(ICON_MaxSpeedJerkZ, MSG_VC_JERK, onDrawMaxJerkZ, setMaxJerkZ, &planner.max_jerk.z); #endif #if HAS_HOTEND - EDIT_ITEM(ICON_MaxSpeedJerkE, MSG_VE_JERK, onDrawMaxJerkE, SetMaxJerkE, &planner.max_jerk.e); + EDIT_ITEM(ICON_MaxSpeedJerkE, MSG_VE_JERK, onDrawMaxJerkE, setMaxJerkE, &planner.max_jerk.e); #endif } - UpdateMenu(MaxJerkMenu); + updateMenu(maxJerkMenu); } #endif // HAS_CLASSIC_JERK -void Draw_Steps_Menu() { - checkkey = Menu; - if (SET_MENU_R(StepsMenu, selrect({1, 16, 28, 13}), MSG_STEPS_PER_MM, 5)) { - BACK_ITEM(Draw_Motion_Menu); +void drawStepsMenu() { + checkkey = ID_Menu; + if (SET_MENU_R(stepsMenu, selrect({1, 16, 28, 13}), MSG_STEPS_PER_MM, 5)) { + BACK_ITEM(drawMotionMenu); #if HAS_X_AXIS - EDIT_ITEM(ICON_StepX, MSG_A_STEPS, onDrawStepsX, SetStepsX, &planner.settings.axis_steps_per_mm[X_AXIS]); + EDIT_ITEM(ICON_StepX, MSG_A_STEPS, onDrawStepsX, setStepsX, &planner.settings.axis_steps_per_mm[X_AXIS]); #endif #if HAS_Y_AXIS - EDIT_ITEM(ICON_StepY, MSG_B_STEPS, onDrawStepsY, SetStepsY, &planner.settings.axis_steps_per_mm[Y_AXIS]); + EDIT_ITEM(ICON_StepY, MSG_B_STEPS, onDrawStepsY, setStepsY, &planner.settings.axis_steps_per_mm[Y_AXIS]); #endif #if HAS_Z_AXIS - EDIT_ITEM(ICON_StepZ, MSG_C_STEPS, onDrawStepsZ, SetStepsZ, &planner.settings.axis_steps_per_mm[Z_AXIS]); + EDIT_ITEM(ICON_StepZ, MSG_C_STEPS, onDrawStepsZ, setStepsZ, &planner.settings.axis_steps_per_mm[Z_AXIS]); #endif #if HAS_HOTEND - EDIT_ITEM(ICON_StepE, MSG_E_STEPS, onDrawStepsE, SetStepsE, &planner.settings.axis_steps_per_mm[E_AXIS]); + EDIT_ITEM(ICON_StepE, MSG_E_STEPS, onDrawStepsE, setStepsE, &planner.settings.axis_steps_per_mm[E_AXIS]); #endif } - UpdateMenu(StepsMenu); + updateMenu(stepsMenu); } //============================================================================= @@ -3629,77 +3633,77 @@ void Draw_Steps_Menu() { #if HAS_CUSTOM_COLORS - void RestoreDefaultColors() { - DWIN_SetColorDefaults(); - DWINUI::SetColors(HMI_data.Text_Color, HMI_data.Background_Color, HMI_data.StatusBg_Color); - DWIN_RedrawScreen(); + void restoreDefaultColors() { + dwinSetColorDefaults(); + DWINUI::setColors(hmiData.colorText, hmiData.colorBackground, hmiData.colorStatusBg); + dwinRedrawScreen(); } - void SelColor() { - MenuData.P_Int = (int16_t*)static_cast(CurrentMenu->SelectedItem())->value; - HMI_value.Color[0] = GetRColor(*MenuData.P_Int); // Red - HMI_value.Color[1] = GetGColor(*MenuData.P_Int); // Green - HMI_value.Color[2] = GetBColor(*MenuData.P_Int); // Blue - Draw_GetColor_Menu(); + void selColor() { + menuData.intPtr = (int16_t*)static_cast(currentMenu->selectedItem())->value; + hmiValue.Color[0] = GetRColor(*menuData.intPtr); // Red + hmiValue.Color[1] = GetGColor(*menuData.intPtr); // Green + hmiValue.Color[2] = GetBColor(*menuData.intPtr); // Blue + drawGetColorMenu(); } - void LiveRGBColor() { - HMI_value.Color[CurrentMenu->line() - 2] = MenuData.Value; - uint16_t color = RGB(HMI_value.Color[0], HMI_value.Color[1], HMI_value.Color[2]); + void liveRGBColor() { + hmiValue.Color[currentMenu->line() - 2] = menuData.value; + uint16_t color = RGB(hmiValue.Color[0], hmiValue.Color[1], hmiValue.Color[2]); dwinDrawRectangle(1, color, 20, 315, DWIN_WIDTH - 20, 335); } - void SetRGBColor() { - const uint8_t color = static_cast(CurrentMenu->SelectedItem())->icon; - SetIntOnClick(0, (color == 1) ? 63 : 31, HMI_value.Color[color], nullptr, LiveRGBColor); + void setRGBColor() { + const uint8_t color = static_cast(currentMenu->selectedItem())->icon; + setIntOnClick(0, (color == 1) ? 63 : 31, hmiValue.Color[color], nullptr, liveRGBColor); } - void DWIN_ApplyColor() { - *MenuData.P_Int = RGB(HMI_value.Color[0], HMI_value.Color[1], HMI_value.Color[2]); - DWINUI::SetColors(HMI_data.Text_Color, HMI_data.Background_Color, HMI_data.StatusBg_Color); - Draw_SelectColors_Menu(); + void dwinApplyColor() { + *menuData.intPtr = RGB(hmiValue.Color[0], hmiValue.Color[1], hmiValue.Color[2]); + DWINUI::setColors(hmiData.colorText, hmiData.colorBackground, hmiData.colorStatusBg); + drawSelectColorsMenu(); hash_changed = true; LCD_MESSAGE(MSG_COLORS_APPLIED); - DWIN_Draw_Dashboard(); - } - - void Draw_SelectColors_Menu() { - checkkey = Menu; - if (SET_MENU(SelectColorMenu, MSG_COLORS_SELECT, 20)) { - BACK_ITEM(Draw_AdvancedSettings_Menu); - MENU_ITEM(ICON_StockConfiguration, MSG_RESTORE_DEFAULTS, onDrawMenuItem, RestoreDefaultColors); - EDIT_ITEM_F(0, "Screen Background", onDrawSelColorItem, SelColor, &HMI_data.Background_Color); - EDIT_ITEM_F(0, "Cursor", onDrawSelColorItem, SelColor, &HMI_data.Cursor_Color); - EDIT_ITEM_F(0, "Title Background", onDrawSelColorItem, SelColor, &HMI_data.TitleBg_Color); - EDIT_ITEM_F(0, "Title Text", onDrawSelColorItem, SelColor, &HMI_data.TitleTxt_Color); - EDIT_ITEM_F(0, "Text", onDrawSelColorItem, SelColor, &HMI_data.Text_Color); - EDIT_ITEM_F(0, "Selected", onDrawSelColorItem, SelColor, &HMI_data.Selected_Color); - EDIT_ITEM_F(0, "Split Line", onDrawSelColorItem, SelColor, &HMI_data.SplitLine_Color); - EDIT_ITEM_F(0, "Highlight", onDrawSelColorItem, SelColor, &HMI_data.Highlight_Color); - EDIT_ITEM_F(0, "Status Background", onDrawSelColorItem, SelColor, &HMI_data.StatusBg_Color); - EDIT_ITEM_F(0, "Status Text", onDrawSelColorItem, SelColor, &HMI_data.StatusTxt_Color); - EDIT_ITEM_F(0, "Popup Background", onDrawSelColorItem, SelColor, &HMI_data.PopupBg_Color); - EDIT_ITEM_F(0, "Popup Text", onDrawSelColorItem, SelColor, &HMI_data.PopupTxt_Color); - EDIT_ITEM_F(0, "Alert Background", onDrawSelColorItem, SelColor, &HMI_data.AlertBg_Color); - EDIT_ITEM_F(0, "Alert Text", onDrawSelColorItem, SelColor, &HMI_data.AlertTxt_Color); - EDIT_ITEM_F(0, "Percent Text", onDrawSelColorItem, SelColor, &HMI_data.PercentTxt_Color); - EDIT_ITEM_F(0, "Bar Fill", onDrawSelColorItem, SelColor, &HMI_data.Barfill_Color); - EDIT_ITEM_F(0, "Indicator value", onDrawSelColorItem, SelColor, &HMI_data.Indicator_Color); - EDIT_ITEM_F(0, "Coordinate value", onDrawSelColorItem, SelColor, &HMI_data.Coordinate_Color); - } - UpdateMenu(SelectColorMenu); - } - - void Draw_GetColor_Menu() { - checkkey = Menu; - if (SET_MENU(GetColorMenu, MSG_COLORS_GET, 5)) { - BACK_ITEM(DWIN_ApplyColor); - MENU_ITEM(ICON_Cancel, MSG_BUTTON_CANCEL, onDrawMenuItem, Draw_SelectColors_Menu); - MENU_ITEM(0, MSG_COLORS_RED, onDrawGetColorItem, SetRGBColor); - MENU_ITEM(1, MSG_COLORS_GREEN, onDrawGetColorItem, SetRGBColor); - MENU_ITEM(2, MSG_COLORS_BLUE, onDrawGetColorItem, SetRGBColor); - } - UpdateMenu(GetColorMenu); - dwinDrawRectangle(1, *MenuData.P_Int, 20, 315, DWIN_WIDTH - 20, 335); + dwinDrawDashboard(); + } + + void drawSelectColorsMenu() { + checkkey = ID_Menu; + if (SET_MENU(selectColorMenu, MSG_COLORS_SELECT, 20)) { + BACK_ITEM(drawAdvancedSettingsMenu); + MENU_ITEM(ICON_StockConfiguration, MSG_RESTORE_DEFAULTS, onDrawMenuItem, restoreDefaultColors); + EDIT_ITEM_F(0, "Screen Background", onDrawSelColorItem, selColor, &hmiData.colorBackground); + EDIT_ITEM_F(0, "Cursor", onDrawSelColorItem, selColor, &hmiData.colorCursor); + EDIT_ITEM_F(0, "Title Background", onDrawSelColorItem, selColor, &hmiData.colorTitleBg); + EDIT_ITEM_F(0, "Title Text", onDrawSelColorItem, selColor, &hmiData.colorTitleTxt); + EDIT_ITEM_F(0, "Text", onDrawSelColorItem, selColor, &hmiData.colorText); + EDIT_ITEM_F(0, "Selected", onDrawSelColorItem, selColor, &hmiData.colorSelected); + EDIT_ITEM_F(0, "Split Line", onDrawSelColorItem, selColor, &hmiData.colorSplitLine); + EDIT_ITEM_F(0, "Highlight", onDrawSelColorItem, selColor, &hmiData.colorHighlight); + EDIT_ITEM_F(0, "Status Background", onDrawSelColorItem, selColor, &hmiData.colorStatusBg); + EDIT_ITEM_F(0, "Status Text", onDrawSelColorItem, selColor, &hmiData.colorStatusTxt); + EDIT_ITEM_F(0, "Popup Background", onDrawSelColorItem, selColor, &hmiData.colorPopupBg); + EDIT_ITEM_F(0, "Popup Text", onDrawSelColorItem, selColor, &hmiData.colorPopupTxt); + EDIT_ITEM_F(0, "Alert Background", onDrawSelColorItem, selColor, &hmiData.colorAlertBg); + EDIT_ITEM_F(0, "Alert Text", onDrawSelColorItem, selColor, &hmiData.colorAlertTxt); + EDIT_ITEM_F(0, "Percent Text", onDrawSelColorItem, selColor, &hmiData.colorPercentTxt); + EDIT_ITEM_F(0, "Bar Fill", onDrawSelColorItem, selColor, &hmiData.colorBarfill); + EDIT_ITEM_F(0, "Indicator value", onDrawSelColorItem, selColor, &hmiData.colorIndicator); + EDIT_ITEM_F(0, "Coordinate value", onDrawSelColorItem, selColor, &hmiData.colorCoordinate); + } + updateMenu(selectColorMenu); + } + + void drawGetColorMenu() { + checkkey = ID_Menu; + if (SET_MENU(getColorMenu, MSG_COLORS_GET, 5)) { + BACK_ITEM(dwinApplyColor); + MENU_ITEM(ICON_Cancel, MSG_BUTTON_CANCEL, onDrawMenuItem, drawSelectColorsMenu); + MENU_ITEM(0, MSG_COLORS_RED, onDrawGetColorItem, setRGBColor); + MENU_ITEM(1, MSG_COLORS_GREEN, onDrawGetColorItem, setRGBColor); + MENU_ITEM(2, MSG_COLORS_BLUE, onDrawGetColorItem, setRGBColor); + } + updateMenu(getColorMenu); + dwinDrawRectangle(1, *menuData.intPtr, 20, 315, DWIN_WIDTH - 20, 335); } #endif // HAS_CUSTOM_COLORS @@ -3711,91 +3715,91 @@ void Draw_Steps_Menu() { #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) #if ENABLED(MPC_EDIT_MENU) - void SetHeaterPower() { SetPFloatOnClick(1, 200, 1); } - void SetBlkHeatCapacity() { SetPFloatOnClick(0, 40, 2); } - void SetSensorResponse() { SetPFloatOnClick(0, 1, 4); } - void SetAmbientXfer() { SetPFloatOnClick(0, 1, 4); } + void setHeaterPower() { setPFloatOnClick(1, 200, 1); } + void setBlkHeatCapacity() { setPFloatOnClick(0, 40, 2); } + void setSensorResponse() { setPFloatOnClick(0, 1, 4); } + void setAmbientXfer() { setPFloatOnClick(0, 1, 4); } #if ENABLED(MPC_INCLUDE_FAN) - void onDrawFanAdj(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 4, thermalManager.temp_hotend[0].fanCoefficient()); } - void ApplyFanAdj() { thermalManager.temp_hotend[0].applyFanAdjustment(MenuData.Value / POW(10, 4)); } - void SetFanAdj() { SetFloatOnClick(0, 1, 4, thermalManager.temp_hotend[0].fanCoefficient(), ApplyFanAdj); } + void onDrawFanAdj(MenuItem* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 4, thermalManager.temp_hotend[0].fanCoefficient()); } + void applyFanAdj() { thermalManager.temp_hotend[0].applyFanAdjustment(menuData.value / POW(10, 4)); } + void setFanAdj() { setFloatOnClick(0, 1, 4, thermalManager.temp_hotend[0].fanCoefficient(), applyFanAdj); } #endif #endif - void Draw_HotendMPC_Menu() { - checkkey = Menu; - if (SET_MENU_F(HotendMPCMenu, "MPC Settings", 7)) { + void drawHotendMPCMenu() { + checkkey = ID_Menu; + if (SET_MENU_F(hotendMPCMenu, "MPC Settings", 7)) { MPC_t &mpc = thermalManager.temp_hotend[0].mpc; - BACK_ITEM(Draw_AdvancedSettings_Menu); + BACK_ITEM(drawAdvancedSettingsMenu); #if ENABLED(MPC_AUTOTUNE_MENU) MENU_ITEM(ICON_MPCNozzle, MSG_MPC_AUTOTUNE, onDrawMenuItem, []{ thermalManager.MPC_autotune(active_extruder, Temperature::MPCTuningType::AUTO); }); #endif #if ENABLED(MPC_EDIT_MENU) - EDIT_ITEM(ICON_MPCHeater, MSG_MPC_POWER, onDrawPFloatMenu, SetHeaterPower, &mpc.heater_power); - EDIT_ITEM(ICON_MPCHeatCap, MSG_MPC_BLOCK_HEAT_CAPACITY, onDrawPFloat2Menu, SetBlkHeatCapacity, &mpc.block_heat_capacity); - EDIT_ITEM(ICON_MPCValue, MSG_SENSOR_RESPONSIVENESS, onDrawPFloat4Menu, SetSensorResponse, &mpc.sensor_responsiveness); - EDIT_ITEM(ICON_MPCValue, MSG_MPC_AMBIENT_XFER_COEFF, onDrawPFloat4Menu, SetAmbientXfer, &mpc.ambient_xfer_coeff_fan0); + EDIT_ITEM(ICON_MPCHeater, MSG_MPC_POWER, onDrawPFloatMenu, setHeaterPower, &mpc.heater_power); + EDIT_ITEM(ICON_MPCHeatCap, MSG_MPC_BLOCK_HEAT_CAPACITY, onDrawPFloat2Menu, setBlkHeatCapacity, &mpc.block_heat_capacity); + EDIT_ITEM(ICON_MPCValue, MSG_SENSOR_RESPONSIVENESS, onDrawPFloat4Menu, setSensorResponse, &mpc.sensor_responsiveness); + EDIT_ITEM(ICON_MPCValue, MSG_MPC_AMBIENT_XFER_COEFF, onDrawPFloat4Menu, setAmbientXfer, &mpc.ambient_xfer_coeff_fan0); #if ENABLED(MPC_INCLUDE_FAN) - EDIT_ITEM(ICON_MPCFan, MSG_MPC_AMBIENT_XFER_COEFF_FAN, onDrawFanAdj, SetFanAdj, &mpc.fan255_adjustment); + EDIT_ITEM(ICON_MPCFan, MSG_MPC_AMBIENT_XFER_COEFF_FAN, onDrawFanAdj, setFanAdj, &mpc.fan255_adjustment); #endif #endif } - UpdateMenu(HotendMPCMenu); + updateMenu(hotendMPCMenu); } #endif // MPC_EDIT_MENU || MPC_AUTOTUNE_MENU -#if DWIN_PID_TUNE - void SetPID(celsius_t t, heater_id_t h) { +#if PROUI_PID_TUNE + void setPID(celsius_t t, heater_id_t h) { gcode.process_subcommands_now( MString<60>(F("G28OXY\nG0Z5F300\nG0X"), X_CENTER, F("Y"), Y_CENTER, F("F5000\nM84\nM400")) ); - thermalManager.PID_autotune(t, h, HMI_data.PidCycles, true); + thermalManager.PID_autotune(t, h, hmiData.pidCycles, true); } - void SetPidCycles() { SetPIntOnClick(3, 50); } + void setPidCycles() { setPIntOnClick(3, 50); } #endif #if ALL(HAS_PID_HEATING, PID_EDIT_MENU) - void SetKp() { SetPFloatOnClick(0, 1000, 2); } - void ApplyPIDi() { - *MenuData.P_Float = scalePID_i(MenuData.Value / POW(10, 2)); + void setKp() { setPFloatOnClick(0, 1000, 2); } + void applyPIDi() { + *menuData.floatPtr = scalePID_i(menuData.value / POW(10, 2)); TERN_(PIDTEMP, thermalManager.updatePID()); } - void ApplyPIDd() { - *MenuData.P_Float = scalePID_d(MenuData.Value / POW(10, 2)); + void applyPIDd() { + *menuData.floatPtr = scalePID_d(menuData.value / POW(10, 2)); TERN_(PIDTEMP, thermalManager.updatePID()); } - void SetKi() { - MenuData.P_Float = (float*)static_cast(CurrentMenu->SelectedItem())->value; - const float value = unscalePID_i(*MenuData.P_Float); - SetFloatOnClick(0, 1000, 2, value, ApplyPIDi); + void setKi() { + menuData.floatPtr = (float*)static_cast(currentMenu->selectedItem())->value; + const float value = unscalePID_i(*menuData.floatPtr); + setFloatOnClick(0, 1000, 2, value, applyPIDi); } - void SetKd() { - MenuData.P_Float = (float*)static_cast(CurrentMenu->SelectedItem())->value; - const float value = unscalePID_d(*MenuData.P_Float); - SetFloatOnClick(0, 1000, 2, value, ApplyPIDd); + void setKd() { + menuData.floatPtr = (float*)static_cast(currentMenu->selectedItem())->value; + const float value = unscalePID_d(*menuData.floatPtr); + setFloatOnClick(0, 1000, 2, value, applyPIDd); } - void onDrawPIDi(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, unscalePID_i(*(float*)static_cast(menuitem)->value)); } - void onDrawPIDd(MenuItemClass* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, unscalePID_d(*(float*)static_cast(menuitem)->value)); } + void onDrawPIDi(MenuItem* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, unscalePID_i(*(float*)static_cast(menuitem)->value)); } + void onDrawPIDd(MenuItem* menuitem, int8_t line) { onDrawFloatMenu(menuitem, line, 2, unscalePID_d(*(float*)static_cast(menuitem)->value)); } #endif // HAS_PID_HEATING && PID_EDIT_MENU #if ENABLED(PIDTEMP) && ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) #if ENABLED(PID_AUTOTUNE_MENU) - void HotendPID() { SetPID(HMI_data.HotendPidT, H_E0); } - void SetHotendPidT() { SetPIntOnClick(MIN_ETEMP, MAX_ETEMP); } + void hotendPID() { setPID(hmiData.hotendPidT, H_E0); } + void setHotendPidT() { setPIntOnClick(MIN_ETEMP, MAX_ETEMP); } #endif - void Draw_HotendPID_Menu() { - checkkey = Menu; - if (SET_MENU_F(HotendPIDMenu, STR_HOTEND_PID " Settings", 8)) { - BACK_ITEM(Draw_AdvancedSettings_Menu); + void drawHotendPIDMenu() { + checkkey = ID_Menu; + if (SET_MENU_F(hotendPIDMenu, STR_HOTEND_PID " Settings", 8)) { + BACK_ITEM(drawAdvancedSettingsMenu); #if ENABLED(PID_AUTOTUNE_MENU) - MENU_ITEM_F(ICON_PIDNozzle, STR_HOTEND_PID, onDrawMenuItem, HotendPID); - EDIT_ITEM(ICON_Temperature, MSG_TEMPERATURE, onDrawPIntMenu, SetHotendPidT, &HMI_data.HotendPidT); - EDIT_ITEM(ICON_PIDCycles, MSG_PID_CYCLE, onDrawPIntMenu, SetPidCycles, &HMI_data.PidCycles); + MENU_ITEM_F(ICON_PIDNozzle, STR_HOTEND_PID, onDrawMenuItem, hotendPID); + EDIT_ITEM(ICON_Temperature, MSG_TEMPERATURE, onDrawPIntMenu, setHotendPidT, &hmiData.hotendPidT); + EDIT_ITEM(ICON_PIDCycles, MSG_PID_CYCLE, onDrawPIntMenu, setPidCycles, &hmiData.pidCycles); #endif #if ENABLED(PID_EDIT_MENU) EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KP, onDrawPFloat2Menu, SetKp, &thermalManager.temp_hotend[0].pid.Kp); @@ -3803,10 +3807,10 @@ void Draw_Steps_Menu() { EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KD, onDrawPIDd, SetKd, &thermalManager.temp_hotend[0].pid.Kd); #endif #if ENABLED(EEPROM_SETTINGS) - MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, WriteEeprom); + MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, writeEEPROM); #endif } - UpdateMenu(HotendPIDMenu); + updateMenu(hotendPIDMenu); } #endif // PIDTEMP && (PID_AUTOTUNE_MENU || PID_EDIT_MENU) @@ -3814,18 +3818,18 @@ void Draw_Steps_Menu() { #if ENABLED(PIDTEMPBED) && ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) #if ENABLED(PID_AUTOTUNE_MENU) - void BedPID() { SetPID(HMI_data.BedPidT, H_BED); } - void SetBedPidT() { SetPIntOnClick(MIN_BEDTEMP, MAX_BEDTEMP); } + void bedPID() { setPID(hmiData.bedPidT, H_BED); } + void setBedPidT() { setPIntOnClick(MIN_BEDTEMP, MAX_BEDTEMP); } #endif - void Draw_BedPID_Menu() { - checkkey = Menu; - if (SET_MENU_F(BedPIDMenu, STR_BED_PID " Settings", 8)) { - BACK_ITEM(Draw_AdvancedSettings_Menu); + void drawBedPIDMenu() { + checkkey = ID_Menu; + if (SET_MENU_F(bedPIDMenu, STR_BED_PID " Settings", 8)) { + BACK_ITEM(drawAdvancedSettingsMenu); #if ENABLED(PID_AUTOTUNE_MENU) - MENU_ITEM_F(ICON_PIDBed, STR_BED_PID, onDrawMenuItem,BedPID); - EDIT_ITEM(ICON_Temperature, MSG_TEMPERATURE, onDrawPIntMenu, SetBedPidT, &HMI_data.BedPidT); - EDIT_ITEM(ICON_PIDCycles, MSG_PID_CYCLE, onDrawPIntMenu, SetPidCycles, &HMI_data.PidCycles); + MENU_ITEM_F(ICON_PIDBed, STR_BED_PID, onDrawMenuItem,bedPID); + EDIT_ITEM(ICON_Temperature, MSG_TEMPERATURE, onDrawPIntMenu, setBedPidT, &hmiData.bedPidT); + EDIT_ITEM(ICON_PIDCycles, MSG_PID_CYCLE, onDrawPIntMenu, setPidCycles, &hmiData.pidCycles); #endif #if ENABLED(PID_EDIT_MENU) EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KP, onDrawPFloat2Menu, SetKp, &thermalManager.temp_bed.pid.Kp); @@ -3833,10 +3837,10 @@ void Draw_Steps_Menu() { EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KD, onDrawPIDd, SetKd, &thermalManager.temp_bed.pid.Kd); #endif #if ENABLED(EEPROM_SETTINGS) - MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, WriteEeprom); + MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, writeEEPROM); #endif } - UpdateMenu(BedPIDMenu); + updateMenu(bedPIDMenu); } #endif // PIDTEMPBED && (PID_AUTOTUNE_MENU || PID_EDIT_MENU) @@ -3845,15 +3849,15 @@ void Draw_Steps_Menu() { #if HAS_BED_PROBE - void Draw_ZOffsetWiz_Menu() { - checkkey = Menu; - if (SET_MENU(ZOffsetWizMenu, MSG_PROBE_WIZARD, 4)) { - BACK_ITEM(Draw_Prepare_Menu); - MENU_ITEM(ICON_Homing, MSG_AUTO_HOME, onDrawMenuItem, AutoHome); - MENU_ITEM_F(ICON_MoveZ0, "Move Z to Home", onDrawMenuItem, SetMoveZto0); - EDIT_ITEM(ICON_Zoffset, MSG_ZPROBE_ZOFFSET, onDrawPFloat2Menu, SetZOffset, &BABY_Z_VAR); + void drawZOffsetWizMenu() { + checkkey = ID_Menu; + if (SET_MENU(zOffsetWizMenu, MSG_PROBE_WIZARD, 4)) { + BACK_ITEM(drawPrepareMenu); + MENU_ITEM(ICON_Homing, MSG_AUTO_HOME, onDrawMenuItem, autoHome); + MENU_ITEM_F(ICON_MoveZ0, "Move Z to Home", onDrawMenuItem, setMoveZto0); + EDIT_ITEM(ICON_Zoffset, MSG_ZPROBE_ZOFFSET, onDrawPFloat2Menu, setZOffset, &BABY_Z_VAR); } - UpdateMenu(ZOffsetWizMenu); + updateMenu(zOffsetWizMenu); if (!axis_is_trusted(Z_AXIS)) LCD_MESSAGE_F("WARNING: Z position unknown, move Z to home"); } @@ -3861,42 +3865,42 @@ void Draw_Steps_Menu() { #if ENABLED(INDIVIDUAL_AXIS_HOMING_SUBMENU) - void Draw_Homing_Menu() { - checkkey = Menu; - if (SET_MENU(HomingMenu, MSG_HOMING, 6)) { - BACK_ITEM(Draw_Prepare_Menu); - MENU_ITEM(ICON_Homing, MSG_AUTO_HOME, onDrawMenuItem, AutoHome); + void drawHomingMenu() { + checkkey = ID_Menu; + if (SET_MENU(homingMenu, MSG_HOMING, 6)) { + BACK_ITEM(drawPrepareMenu); + MENU_ITEM(ICON_Homing, MSG_AUTO_HOME, onDrawMenuItem, autoHome); #if HAS_X_AXIS - MENU_ITEM(ICON_HomeX, MSG_AUTO_HOME_X, onDrawMenuItem, HomeX); + MENU_ITEM(ICON_HomeX, MSG_AUTO_HOME_X, onDrawMenuItem, homeX); #endif #if HAS_Y_AXIS - MENU_ITEM(ICON_HomeY, MSG_AUTO_HOME_Y, onDrawMenuItem, HomeY); + MENU_ITEM(ICON_HomeY, MSG_AUTO_HOME_Y, onDrawMenuItem, homeY); #endif #if HAS_Z_AXIS - MENU_ITEM(ICON_HomeZ, MSG_AUTO_HOME_Z, onDrawMenuItem, HomeZ); + MENU_ITEM(ICON_HomeZ, MSG_AUTO_HOME_Z, onDrawMenuItem, homeZ); #endif #if ENABLED(MESH_BED_LEVELING) - EDIT_ITEM(ICON_ZAfterHome, MSG_Z_AFTER_HOME, onDrawPInt8Menu, SetZAfterHoming, &HMI_data.z_after_homing); + EDIT_ITEM(ICON_ZAfterHome, MSG_Z_AFTER_HOME, onDrawPInt8Menu, setZAfterHoming, &hmiData.zAfterHoming); #endif } - UpdateMenu(HomingMenu); + updateMenu(homingMenu); } #endif // INDIVIDUAL_AXIS_HOMING_SUBMENU #if ENABLED(FWRETRACT) - void Draw_FWRetract_Menu() { - checkkey = Menu; - if (SET_MENU(FWRetractMenu, MSG_FWRETRACT, 6)) { - BACK_ITEM(Return_FWRetract_Menu); - EDIT_ITEM(ICON_FWRetLength, MSG_CONTROL_RETRACT, onDrawPFloatMenu, SetRetractLength, &fwretract.settings.retract_length); - EDIT_ITEM(ICON_FWRetSpeed, MSG_SINGLENOZZLE_RETRACT_SPEED, onDrawPFloatMenu, SetRetractSpeed, &fwretract.settings.retract_feedrate_mm_s); - EDIT_ITEM(ICON_FWRetZRaise, MSG_CONTROL_RETRACT_ZHOP, onDrawPFloat2Menu, SetZRaise, &fwretract.settings.retract_zraise); - EDIT_ITEM(ICON_FWRecSpeed, MSG_SINGLENOZZLE_UNRETRACT_SPEED, onDrawPFloatMenu, SetRecoverSpeed, &fwretract.settings.retract_recover_feedrate_mm_s); - EDIT_ITEM(ICON_FWRecExtra, MSG_CONTROL_RETRACT_RECOVER, onDrawPFloatMenu, SetAddRecover, &fwretract.settings.retract_recover_extra); + void drawFWRetractMenu() { + checkkey = ID_Menu; + if (SET_MENU(fwRetractMenu, MSG_FWRETRACT, 6)) { + BACK_ITEM(returnFWRetractMenu); + EDIT_ITEM(ICON_FWRetLength, MSG_CONTROL_RETRACT, onDrawPFloatMenu, setRetractLength, &fwretract.settings.retract_length); + EDIT_ITEM(ICON_FWRetSpeed, MSG_SINGLENOZZLE_RETRACT_SPEED, onDrawPFloatMenu, setRetractSpeed, &fwretract.settings.retract_feedrate_mm_s); + EDIT_ITEM(ICON_FWRetZRaise, MSG_CONTROL_RETRACT_ZHOP, onDrawPFloat2Menu, setZRaise, &fwretract.settings.retract_zraise); + EDIT_ITEM(ICON_FWRecSpeed, MSG_SINGLENOZZLE_UNRETRACT_SPEED, onDrawPFloatMenu, setRecoverSpeed, &fwretract.settings.retract_recover_feedrate_mm_s); + EDIT_ITEM(ICON_FWRecExtra, MSG_CONTROL_RETRACT_RECOVER, onDrawPFloatMenu, setAddRecover, &fwretract.settings.retract_recover_extra); } - UpdateMenu(FWRetractMenu); + updateMenu(fwRetractMenu); } #endif @@ -3907,47 +3911,47 @@ void Draw_Steps_Menu() { #if HAS_MESH - void ApplyMeshFadeHeight() { set_z_fade_height(planner.z_fade_height); } - void SetMeshFadeHeight() { SetPFloatOnClick(0, 100, 1, ApplyMeshFadeHeight); } + void applyMeshFadeHeight() { set_z_fade_height(planner.z_fade_height); } + void setMeshFadeHeight() { setPFloatOnClick(0, 100, 1, applyMeshFadeHeight); } - void SetMeshActive() { + void setMeshActive() { set_bed_leveling_enabled(!planner.leveling_active); - Draw_Chkb_Line(CurrentMenu->line(), planner.leveling_active); + drawCheckboxLine(currentMenu->line(), planner.leveling_active); dwinUpdateLCD(); } #if ENABLED(PREHEAT_BEFORE_LEVELING) - void SetBedLevT() { SetPIntOnClick(MIN_BEDTEMP, MAX_BEDTEMP); } + void setBedLevT() { setPIntOnClick(MIN_BEDTEMP, MAX_BEDTEMP); } #endif #if ENABLED(MESH_EDIT_MENU) #define Z_OFFSET_MIN -3 #define Z_OFFSET_MAX 3 - void LiveEditMesh() { ((MenuItemPtrClass*)EditZValueItem)->value = &bedlevel.z_values[HMI_value.Select ? bedLevelTools.mesh_x : MenuData.Value][HMI_value.Select ? MenuData.Value : bedLevelTools.mesh_y]; EditZValueItem->redraw(); } - void ApplyEditMeshX() { bedLevelTools.mesh_x = MenuData.Value; } - void ApplyEditMeshY() { bedLevelTools.mesh_y = MenuData.Value; } - void ResetMesh() { bedLevelTools.mesh_reset(); LCD_MESSAGE(MSG_MESH_RESET); } - void SetEditMeshX() { HMI_value.Select = 0; SetIntOnClick(0, GRID_MAX_POINTS_X - 1, bedLevelTools.mesh_x, ApplyEditMeshX, LiveEditMesh); } - void SetEditMeshY() { HMI_value.Select = 1; SetIntOnClick(0, GRID_MAX_POINTS_Y - 1, bedLevelTools.mesh_y, ApplyEditMeshY, LiveEditMesh); } - void SetEditZValue() { SetPFloatOnClick(Z_OFFSET_MIN, Z_OFFSET_MAX, 3); } + void LiveEditMesh() { ((MenuItemPtr*)editZValueItem)->value = &bedlevel.z_values[hmiValue.select ? bedLevelTools.mesh_x : menuData.value][hmiValue.select ? menuData.value : bedLevelTools.mesh_y]; editZValueItem->redraw(); } + void applyEditMeshX() { bedLevelTools.mesh_x = menuData.value; } + void applyEditMeshY() { bedLevelTools.mesh_y = menuData.value; } + void ResetMesh() { bedLevelTools.meshReset(); LCD_MESSAGE(MSG_MESH_RESET); } + void setEditMeshX() { hmiValue.select = 0; setIntOnClick(0, GRID_MAX_POINTS_X - 1, bedLevelTools.mesh_x, applyEditMeshX, LiveEditMesh); } + void setEditMeshY() { hmiValue.select = 1; setIntOnClick(0, GRID_MAX_POINTS_Y - 1, bedLevelTools.mesh_y, applyEditMeshY, LiveEditMesh); } + void setEditZValue() { setPFloatOnClick(Z_OFFSET_MIN, Z_OFFSET_MAX, 3); } #endif #endif // HAS_MESH #if ENABLED(AUTO_BED_LEVELING_UBL) - void ApplyUBLSlot() { bedlevel.storage_slot = MenuData.Value; } - void SetUBLSlot() { SetIntOnClick(0, settings.calc_num_meshes() - 1, bedlevel.storage_slot, ApplyUBLSlot); } - void onDrawUBLSlot(MenuItemClass* menuitem, int8_t line) { + void applyUBLSlot() { bedlevel.storage_slot = menuData.value; } + void setUBLSlot() { setIntOnClick(0, settings.calc_num_meshes() - 1, bedlevel.storage_slot, applyUBLSlot); } + void onDrawUBLSlot(MenuItem* menuitem, int8_t line) { NOLESS(bedlevel.storage_slot, 0); onDrawIntMenu(menuitem, line, bedlevel.storage_slot); } - void ApplyUBLTiltGrid() { bedLevelTools.tilt_grid = MenuData.Value; } - void SetUBLTiltGrid() { SetIntOnClick(1, 3, bedLevelTools.tilt_grid, ApplyUBLTiltGrid); } + void applyUBLTiltGrid() { bedLevelTools.tilt_grid = menuData.value; } + void setUBLTiltGrid() { setIntOnClick(1, 3, bedLevelTools.tilt_grid, applyUBLTiltGrid); } - void UBLMeshTilt() { + void ublMeshTilt() { NOLESS(bedlevel.storage_slot, 0); if (bedLevelTools.tilt_grid > 1) gcode.process_subcommands_now(TS(F("G29J"), bedLevelTools.tilt_grid)); @@ -3956,19 +3960,19 @@ void Draw_Steps_Menu() { LCD_MESSAGE(MSG_UBL_MESH_TILTED); } - void UBLSmartFillMesh() { + void ublSmartFillMesh() { for (uint8_t x = 0; x < GRID_MAX_POINTS_Y; ++x) bedlevel.smart_fill_mesh(); LCD_MESSAGE(MSG_UBL_MESH_FILLED); } - void UBLMeshSave() { + void ublMeshSave() { NOLESS(bedlevel.storage_slot, 0); settings.store_mesh(bedlevel.storage_slot); ui.status_printf(0, GET_TEXT_F(MSG_MESH_SAVED), bedlevel.storage_slot); DONE_BUZZ(true); } - void UBLMeshLoad() { + void ublMeshLoad() { NOLESS(bedlevel.storage_slot, 0); settings.load_mesh(bedlevel.storage_slot); } @@ -3977,48 +3981,48 @@ void Draw_Steps_Menu() { #if HAS_MESH - void Draw_MeshSet_Menu() { - checkkey = Menu; - if (SET_MENU(MeshMenu, MSG_MESH_LEVELING, 14)) { - BACK_ITEM(Draw_AdvancedSettings_Menu); + void drawMeshSetMenu() { + checkkey = ID_Menu; + if (SET_MENU(meshMenu, MSG_MESH_LEVELING, 14)) { + BACK_ITEM(drawAdvancedSettingsMenu); #if ENABLED(PREHEAT_BEFORE_LEVELING) - EDIT_ITEM(ICON_Temperature, MSG_UBL_SET_TEMP_BED, onDrawPIntMenu, SetBedLevT, &HMI_data.BedLevT); + EDIT_ITEM(ICON_Temperature, MSG_UBL_SET_TEMP_BED, onDrawPIntMenu, setBedLevT, &hmiData.bedLevT); #endif - EDIT_ITEM(ICON_SetZOffset, MSG_Z_FADE_HEIGHT, onDrawPFloatMenu, SetMeshFadeHeight, &planner.z_fade_height); - EDIT_ITEM(ICON_UBLActive, MSG_ACTIVATE_MESH, onDrawChkbMenu, SetMeshActive, &planner.leveling_active); + EDIT_ITEM(ICON_SetZOffset, MSG_Z_FADE_HEIGHT, onDrawPFloatMenu, setMeshFadeHeight, &planner.z_fade_height); + EDIT_ITEM(ICON_UBLActive, MSG_ACTIVATE_MESH, onDrawChkbMenu, setMeshActive, &planner.leveling_active); #if HAS_BED_PROBE - MENU_ITEM(ICON_Level, MSG_AUTO_MESH, onDrawMenuItem, AutoLev); + MENU_ITEM(ICON_Level, MSG_AUTO_MESH, onDrawMenuItem, autoLevel); #endif #if ENABLED(AUTO_BED_LEVELING_UBL) - EDIT_ITEM(ICON_UBLSlot, MSG_UBL_STORAGE_SLOT, onDrawUBLSlot, SetUBLSlot, &bedlevel.storage_slot); - MENU_ITEM(ICON_UBLMeshSave, MSG_UBL_SAVE_MESH, onDrawMenuItem, UBLMeshSave); - MENU_ITEM(ICON_UBLMeshLoad, MSG_UBL_LOAD_MESH, onDrawMenuItem, UBLMeshLoad); - EDIT_ITEM(ICON_UBLTiltGrid, MSG_UBL_TILTING_GRID, onDrawPInt8Menu, SetUBLTiltGrid, &bedLevelTools.tilt_grid); - MENU_ITEM(ICON_UBLTiltGrid, MSG_UBL_TILT_MESH, onDrawMenuItem, UBLMeshTilt); - MENU_ITEM(ICON_UBLSmartFill, MSG_UBL_SMART_FILLIN, onDrawMenuItem, UBLSmartFillMesh); + EDIT_ITEM(ICON_UBLSlot, MSG_UBL_STORAGE_SLOT, onDrawUBLSlot, setUBLSlot, &bedlevel.storage_slot); + MENU_ITEM(ICON_UBLMeshSave, MSG_UBL_SAVE_MESH, onDrawMenuItem, ublMeshSave); + MENU_ITEM(ICON_UBLMeshLoad, MSG_UBL_LOAD_MESH, onDrawMenuItem, ublMeshLoad); + EDIT_ITEM(ICON_UBLTiltGrid, MSG_UBL_TILTING_GRID, onDrawPInt8Menu, setUBLTiltGrid, &bedLevelTools.tilt_grid); + MENU_ITEM(ICON_UBLTiltGrid, MSG_UBL_TILT_MESH, onDrawMenuItem, ublMeshTilt); + MENU_ITEM(ICON_UBLSmartFill, MSG_UBL_SMART_FILLIN, onDrawMenuItem, ublSmartFillMesh); #endif #if ENABLED(MESH_EDIT_MENU) MENU_ITEM(ICON_MeshReset, MSG_MESH_RESET, onDrawMenuItem, ResetMesh); - MENU_ITEM(ICON_MeshEdit, MSG_EDIT_MESH, onDrawSubMenu, Draw_EditMesh_Menu); + MENU_ITEM(ICON_MeshEdit, MSG_EDIT_MESH, onDrawSubMenu, drawEditMeshMenu); #endif - MENU_ITEM(ICON_MeshViewer, MSG_MESH_VIEW, onDrawSubMenu, DWIN_MeshViewer); + MENU_ITEM(ICON_MeshViewer, MSG_MESH_VIEW, onDrawSubMenu, dwinMeshViewer); } - UpdateMenu(MeshMenu); + updateMenu(meshMenu); } #if ENABLED(MESH_EDIT_MENU) - void Draw_EditMesh_Menu() { + void drawEditMeshMenu() { if (!leveling_is_valid()) { LCD_MESSAGE(MSG_UBL_MESH_INVALID); return; } set_bed_leveling_enabled(false); - checkkey = Menu; - if (SET_MENU(EditMeshMenu, MSG_EDIT_MESH, 4)) { + checkkey = ID_Menu; + if (SET_MENU(editMeshMenu, MSG_EDIT_MESH, 4)) { bedLevelTools.mesh_x = bedLevelTools.mesh_y = 0; - BACK_ITEM(Draw_MeshSet_Menu); - EDIT_ITEM(ICON_MeshEditX, MSG_MESH_X, onDrawPInt8Menu, SetEditMeshX, &bedLevelTools.mesh_x); - EDIT_ITEM(ICON_MeshEditY, MSG_MESH_Y, onDrawPInt8Menu, SetEditMeshY, &bedLevelTools.mesh_y); - EditZValueItem = EDIT_ITEM(ICON_MeshEditZ, MSG_MESH_EDIT_Z, onDrawPFloat2Menu, SetEditZValue, &bedlevel.z_values[bedLevelTools.mesh_x][bedLevelTools.mesh_y]); + BACK_ITEM(drawMeshSetMenu); + EDIT_ITEM(ICON_MeshEditX, MSG_MESH_X, onDrawPInt8Menu, setEditMeshX, &bedLevelTools.mesh_x); + EDIT_ITEM(ICON_MeshEditY, MSG_MESH_Y, onDrawPInt8Menu, setEditMeshY, &bedLevelTools.mesh_y); + editZValueItem = EDIT_ITEM(ICON_MeshEditZ, MSG_MESH_EDIT_Z, onDrawPFloat2Menu, setEditZValue, &bedlevel.z_values[bedLevelTools.mesh_x][bedLevelTools.mesh_y]); } - UpdateMenu(EditMeshMenu); + updateMenu(editMeshMenu); } #endif diff --git a/Marlin/src/lcd/e3v2/proui/dwin.h b/Marlin/src/lcd/e3v2/proui/dwin.h index bd1e80245837..62bf2ad99ee3 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.h +++ b/Marlin/src/lcd/e3v2/proui/dwin.h @@ -54,31 +54,31 @@ namespace GET_LANG(LCD_LANGUAGE) { enum processID : uint8_t { // Process ID - MainMenu, - Menu, - SetInt, - SetPInt, - SetIntNoDraw, - SetFloat, - SetPFloat, - PrintProcess, - Popup, - Leveling, - Locked, - Reboot, - PrintDone, - ESDiagProcess, - WaitResponse, - Homing, - PidProcess, - MPCProcess, - NothingToDo + ID_MainMenu, + ID_Menu, + ID_SetInt, + ID_SetPInt, + ID_SetIntNoDraw, + ID_SetFloat, + ID_SetPFloat, + ID_PrintProcess, + ID_Popup, + ID_Leveling, + ID_Locked, + ID_Reboot, + ID_PrintDone, + ID_ESDiagProcess, + ID_WaitResponse, + ID_Homing, + ID_PIDProcess, + ID_MPCProcess, + ID_NothingToDo }; -#if ANY(DWIN_PID_TUNE, MPC_AUTOTUNE) +#if ANY(PROUI_PID_TUNE, MPC_AUTOTUNE) enum tempcontrol_t : uint8_t { - #if DWIN_PID_TUNE + #if PROUI_PID_TUNE PIDTEMP_START, PIDTEMPBED_START, PID_BAD_HEATER_ID, @@ -100,69 +100,69 @@ enum processID : uint8_t { typedef struct { // Color settings - uint16_t Background_Color; - uint16_t Cursor_Color; - uint16_t TitleBg_Color; - uint16_t TitleTxt_Color; - uint16_t Text_Color; - uint16_t Selected_Color; - uint16_t SplitLine_Color; - uint16_t Highlight_Color; - uint16_t StatusBg_Color; - uint16_t StatusTxt_Color; - uint16_t PopupBg_Color; - uint16_t PopupTxt_Color; - uint16_t AlertBg_Color; - uint16_t AlertTxt_Color; - uint16_t PercentTxt_Color; - uint16_t Barfill_Color; - uint16_t Indicator_Color; - uint16_t Coordinate_Color; + uint16_t colorBackground; + uint16_t colorCursor; + uint16_t colorTitleBg; + uint16_t colorTitleTxt; + uint16_t colorText; + uint16_t colorSelected; + uint16_t colorSplitLine; + uint16_t colorHighlight; + uint16_t colorStatusBg; + uint16_t colorStatusTxt; + uint16_t colorPopupBg; + uint16_t colorPopupTxt; + uint16_t colorAlertBg; + uint16_t colorAlertTxt; + uint16_t colorPercentTxt; + uint16_t colorBarfill; + uint16_t colorIndicator; + uint16_t colorCoordinate; // Temperatures - #if DWIN_PID_TUNE - int16_t PidCycles = DEF_PIDCYCLES; + #if PROUI_PID_TUNE + int16_t pidCycles = DEF_PIDCYCLES; #if ENABLED(PIDTEMP) - int16_t HotendPidT = DEF_HOTENDPIDT; + int16_t hotendPidT = DEF_HOTENDPIDT; #endif #if ENABLED(PIDTEMPBED) - int16_t BedPidT = DEF_BEDPIDT; + int16_t bedPidT = DEF_BEDPIDT; #endif #endif #if ENABLED(PREVENT_COLD_EXTRUSION) - int16_t ExtMinT = EXTRUDE_MINTEMP; + int16_t extMinT = EXTRUDE_MINTEMP; #endif #if ENABLED(PREHEAT_BEFORE_LEVELING) - int16_t BedLevT = LEVELING_BED_TEMP; + int16_t bedLevT = LEVELING_BED_TEMP; #endif #if ENABLED(BAUD_RATE_GCODE) - bool Baud115K = false; + bool baud115K = false; #endif - bool FullManualTramming = false; - bool MediaSort = true; - bool MediaAutoMount = ENABLED(HAS_SD_EXTENDER); + bool fullManualTramming = false; + bool mediaSort = true; + bool mediaAutoMount = ENABLED(HAS_SD_EXTENDER); #if ALL(INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) - uint8_t z_after_homing = DEF_Z_AFTER_HOMING; + uint8_t zAfterHoming = DEF_Z_AFTER_HOMING; #endif #if ALL(LED_CONTROL_MENU, HAS_COLOR_LEDS) - LEDColor Led_Color = Def_Leds_Color; + LEDColor ledColor = defColorLeds; #endif - bool AdaptiveStepSmoothing = true; - bool EnablePreview = true; -} HMI_data_t; + bool adaptiveStepSmoothing = true; + bool enablePreview = true; +} hmi_data_t; -extern HMI_data_t HMI_data; -static constexpr size_t eeprom_data_size = sizeof(HMI_data_t); +extern hmi_data_t hmiData; +static constexpr size_t eeprom_data_size = sizeof(hmi_data_t); typedef struct { int8_t Color[3]; // Color components - #if ANY(DWIN_PID_TUNE, MPCTEMP) - tempcontrol_t tempcontrol = AUTOTUNE_DONE; + #if ANY(PROUI_PID_TUNE, MPCTEMP) + tempcontrol_t tempControl = AUTOTUNE_DONE; #endif - uint8_t Select = 0; // Auxiliary selector variable + uint8_t select = 0; // Auxiliary selector variable AxisEnum axis = X_AXIS; // Axis Select -} HMI_value_t; +} hmi_value_t; typedef struct { uint8_t language; @@ -171,10 +171,10 @@ typedef struct { bool pause_flag:1; // printing is paused bool select_flag:1; // Popup button selected bool home_flag:1; // homing in course -} HMI_flag_t; +} hmi_flag_t; -extern HMI_value_t HMI_value; -extern HMI_flag_t hmiFlag; +extern hmi_value_t hmiValue; +extern hmi_flag_t hmiFlag; extern uint8_t checkkey; // Popups @@ -182,217 +182,214 @@ extern uint8_t checkkey; void dwinPopupTemperature(const bool toohigh); #endif #if ENABLED(POWER_LOSS_RECOVERY) - void Popup_PowerLossRecovery(); + void popupPowerLossRecovery(); #endif // Tool Functions -uint32_t GetHash(char * str); +uint32_t getHash(char * str); #if ENABLED(EEPROM_SETTINGS) - void WriteEeprom(); - void ReadEeprom(); - void ResetEeprom(); + void writeEEPROM(); + void readEEPROM(); + void resetEEPROM(); #if HAS_MESH - void SaveMesh(); + void saveMesh(); #endif #endif -void RebootPrinter(); -void DisableMotors(); -void AutoLev(); -void AutoHome(); +void rebootPrinter(); +void disableMotors(); +void autoLevel(); +void autoHome(); #if HAS_PREHEAT #define _DOPREHEAT(N) void DoPreheat##N(); REPEAT_1(PREHEAT_COUNT, _DOPREHEAT) #endif -void DoCoolDown(); +void doCoolDown(); #if ENABLED(BAUD_RATE_GCODE) - void HMI_SetBaudRate(); - void SetBaud115K(); - void SetBaud250K(); + void hmiSetBaudRate(); + void setBaud115K(); + void setBaud250K(); #endif #if HAS_LCD_BRIGHTNESS - void TurnOffBacklight(); + void turnOffBacklight(); #endif -void ApplyExtMinT(); -void ParkHead(); +void applyExtMinT(); +void parkHead(); #if HAS_ONESTEP_LEVELING - void Trammingwizard(); + void trammingwizard(); #endif #if ALL(LED_CONTROL_MENU, HAS_COLOR_LEDS) - void ApplyLEDColor(); + void applyLEDColor(); #endif #if ENABLED(AUTO_BED_LEVELING_UBL) - void UBLMeshTilt(); - void UBLMeshSave(); - void UBLMeshLoad(); + void ublMeshTilt(); + void ublMeshSave(); + void ublMeshLoad(); #endif #if ENABLED(HOST_SHUTDOWN_MENU_ITEM) && defined(SHUTDOWN_ACTION) - void HostShutDown(); + void hostShutDown(); #endif #if DISABLED(HAS_BED_PROBE) - void HomeZandDisable(); + void homeZAndDisable(); #endif // Other -void Goto_PrintProcess(); -void Goto_Main_Menu(); -void Goto_Info_Menu(); -void Goto_PowerLossRecovery(); -void Goto_ConfirmToPrint(); -void DWIN_Draw_Dashboard(const bool with_update); // Status Area -void Draw_Main_Area(); // Redraw main area -void DWIN_DrawStatusLine(const char *text = ""); // Draw simple status text -void DWIN_RedrawDash(); // Redraw Dash and Status line -void DWIN_RedrawScreen(); // Redraw all screen elements -void HMI_MainMenu(); // Main process screen -void HMI_Printing(); // Print page -void HMI_ReturnScreen(); // Return to previous screen before popups -void HMI_WaitForUser(); -void HMI_SaveProcessID(const uint8_t id); -void HMI_SDCardUpdate(); -void EachMomentUpdate(); -void update_variable(); +void gotoPrintProcess(); +void gotoMainMenu(); +void gotoInfoMenu(); +void gotoPowerLossRecovery(); +void gotoConfirmToPrint(); +void dwinDrawDashboard(const bool with_update); // Status Area +void drawMainArea(); // Redraw main area +void dwinDrawStatusLine(const char *text = ""); // Draw simple status text +void dwinRedrawDash(); // Redraw Dash and Status line +void dwinRedrawScreen(); // Redraw all screen elements +void hmiMainMenu(); // Main process screen +void hmiPrinting(); // Print page +void hmiReturnScreen(); // Return to previous screen before popups +void hmiWaitForUser(); +void hmiSaveProcessID(const uint8_t id); +void hmiSDCardUpdate(); +void eachMomentUpdate(); +void updateVariable(); void dwinInitScreen(); -void DWIN_HandleScreen(); -void DWIN_CheckStatusMessage(); +void dwinHandleScreen(); +void dwinCheckStatusMessage(); void dwinHomingStart(); void dwinHomingDone(); #if HAS_MESH - void DWIN_MeshUpdate(const int8_t cpos, const int8_t tpos, const_float_t zval); -#endif -void DWIN_LevelingStart(); -void DWIN_LevelingDone(); -void DWIN_Print_Started(); -void DWIN_Print_Pause(); -void DWIN_Print_Resume(); -void DWIN_Print_Finished(); -void DWIN_Print_Aborted(); + void dwinMeshUpdate(const int8_t cpos, const int8_t tpos, const_float_t zval); +#endif +void dwinLevelingStart(); +void dwinLevelingDone(); +void dwinPrintStarted(); +void dwinPrintPause(); +void dwinPrintResume(); +void dwinPrintFinished(); +void dwinPrintAborted(); #if HAS_FILAMENT_SENSOR - void DWIN_FilamentRunout(const uint8_t extruder); -#endif -void DWIN_Print_Header(const char *text); -void DWIN_SetColorDefaults(); -void DWIN_CopySettingsTo(char * const buff); -void DWIN_CopySettingsFrom(const char * const buff); -void DWIN_SetDataDefaults(); -void DWIN_RebootScreen(); + void dwinFilamentRunout(const uint8_t extruder); +#endif +void dwinPrintHeader(const char *text); +void dwinSetColorDefaults(); +void dwinCopySettingsTo(char * const buff); +void dwinCopySettingsFrom(const char * const buff); +void dwinSetDataDefaults(); +void dwinRebootScreen(); #if ENABLED(ADVANCED_PAUSE_FEATURE) - void DWIN_Popup_Pause(FSTR_P const fmsg, uint8_t button=0); - void Draw_Popup_FilamentPurge(); - void Goto_FilamentPurge(); + void dwinPopupPause(FSTR_P const fmsg, uint8_t button=0); + void drawPopupFilamentPurge(); + void gotoFilamentPurge(); #endif // Utility and extensions #if HAS_LOCKSCREEN - void DWIN_LockScreen(); - void DWIN_UnLockScreen(); - void HMI_LockScreen(); + void dwinLockScreen(); + void dwinUnLockScreen(); + void hmiLockScreen(); #endif #if HAS_MESH - void DWIN_MeshViewer(); + void dwinMeshViewer(); #endif #if HAS_GCODE_PREVIEW - void HMI_ConfirmToPrint(); + void hmiConfirmToPrint(); #endif #if HAS_ESDIAG - void Draw_EndStopDiag(); + void drawEndStopDiag(); #endif #if ENABLED(PRINTCOUNTER) - void Draw_PrintStats(); + void drawPrintStats(); #endif // Menu drawing functions -void Draw_Print_File_Menu(); -void Draw_Control_Menu(); -void Draw_AdvancedSettings_Menu(); -void Draw_Prepare_Menu(); -void Draw_Move_Menu(); -void Draw_Tramming_Menu(); +void drawPrintFileMenu(); +void drawControlMenu(); +void drawAdvancedSettingsMenu(); +void drawPrepareMenu(); +void drawMoveMenu(); +void drawTrammingMenu(); #if HAS_HOME_OFFSET - void Draw_HomeOffset_Menu(); + void drawHomeOffsetMenu(); #endif #if HAS_BED_PROBE - void Draw_ProbeSet_Menu(); + void drawProbeSetMenu(); #endif -void Draw_FilSet_Menu(); +void drawFilSetMenu(); #if ENABLED(NOZZLE_PARK_FEATURE) - void Draw_ParkPos_Menu(); + void drawParkPosMenu(); #endif -void Draw_PhySet_Menu(); +void drawPhySetMenu(); #if ALL(CASE_LIGHT_MENU, CASELIGHT_USES_BRIGHTNESS) - void Draw_CaseLight_Menu(); + void drawCaseLightMenu(); #endif #if ENABLED(LED_CONTROL_MENU) - void Draw_LedControl_Menu(); + void drawLedControlMenu(); #endif -void Draw_Tune_Menu(); -void Draw_Motion_Menu(); +void drawTuneMenu(); +void drawMotionMenu(); #if ENABLED(ADVANCED_PAUSE_FEATURE) - void Draw_FilamentMan_Menu(); + void drawFilamentManMenu(); #endif #if ENABLED(MESH_BED_LEVELING) - void Draw_ManualMesh_Menu(); + void drawManualMeshMenu(); #endif -void Draw_Temperature_Menu(); -void Draw_MaxSpeed_Menu(); -void Draw_MaxAccel_Menu(); +void drawTemperatureMenu(); +void drawMaxSpeedMenu(); +void drawMaxAccelMenu(); #if HAS_CLASSIC_JERK - void Draw_MaxJerk_Menu(); + void drawMaxJerkMenu(); #endif -void Draw_Steps_Menu(); +void drawStepsMenu(); #if ANY(HAS_BED_PROBE, BABYSTEPPING) - void Draw_ZOffsetWiz_Menu(); + void drawZOffsetWizMenu(); #endif #if ENABLED(INDIVIDUAL_AXIS_HOMING_SUBMENU) - void Draw_Homing_Menu(); + void drawHomingMenu(); #endif #if ENABLED(FWRETRACT) - void Draw_FWRetract_Menu(); + void drawFWRetractMenu(); #endif #if HAS_MESH - void Draw_MeshSet_Menu(); + void drawMeshSetMenu(); #if ENABLED(MESH_EDIT_MENU) - void Draw_EditMesh_Menu(); + void drawEditMeshMenu(); #endif #endif -#if HAS_TRINAMIC_CONFIG - void Draw_TrinamicConfig_menu(); -#endif // Custom colors editing #if HAS_CUSTOM_COLORS - void DWIN_ApplyColor(); - void Draw_SelectColors_Menu(); - void Draw_GetColor_Menu(); + void dwinApplyColor(); + void drawSelectColorsMenu(); + void drawGetColorMenu(); #endif // PID -#if DWIN_PID_TUNE +#if PROUI_PID_TUNE #include "../../../module/temperature.h" - void DWIN_StartM303(const bool seenC, const int c, const bool seenS, const heater_id_t hid, const celsius_t temp); - void DWIN_PidTuning(tempcontrol_t result); + void dwinStartM303(const bool seenC, const int c, const bool seenS, const heater_id_t hid, const celsius_t temp); + void dwinPidTuning(tempcontrol_t result); #endif #if ENABLED(PIDTEMP) #if ENABLED(PID_AUTOTUNE_MENU) - void HotendPID(); + void hotendPID(); #endif #if ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) - void Draw_HotendPID_Menu(); + void drawHotendPIDMenu(); #endif #endif #if ENABLED(PIDTEMPBED) #if ENABLED(PID_AUTOTUNE_MENU) - void BedPID(); + void bedPID(); #endif #if ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) - void Draw_BedPID_Menu(); + void drawBedPIDMenu(); #endif #endif // MPC #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) - void Draw_HotendMPC_Menu(); + void drawHotendMPCMenu(); #endif #if ENABLED(MPC_AUTOTUNE) - void DWIN_MPCTuning(tempcontrol_t result); + void dwinMPCTuning(tempcontrol_t result); #endif diff --git a/Marlin/src/lcd/e3v2/proui/dwin_defines.h b/Marlin/src/lcd/e3v2/proui/dwin_defines.h index 6f4520e23bc0..c52d57031c83 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_defines.h +++ b/Marlin/src/lcd/e3v2/proui/dwin_defines.h @@ -46,30 +46,30 @@ #define HAS_ZOFFSET_ITEM 1 #endif -#define Def_Background_Color RGB( 1, 12, 8) -#define Def_Cursor_Color RGB(20, 49, 31) -#define Def_TitleBg_Color RGB( 0, 23, 16) -#define Def_TitleTxt_Color Color_White -#define Def_Text_Color Color_White -#define Def_Selected_Color Select_Color -#define Def_SplitLine_Color RGB( 0, 23, 16) -#define Def_Highlight_Color Color_White -#define Def_StatusBg_Color RGB( 0, 23, 16) -#define Def_StatusTxt_Color Color_Yellow -#define Def_PopupBg_Color Color_Bg_Window -#define Def_PopupTxt_Color Popup_Text_Color -#define Def_AlertBg_Color Color_Bg_Red -#define Def_AlertTxt_Color Color_Yellow -#define Def_PercentTxt_Color Percent_Color -#define Def_Barfill_Color BarFill_Color -#define Def_Indicator_Color Color_White -#define Def_Coordinate_Color Color_White -#define Def_Button_Color RGB( 0, 23, 16) +#define defColorBackground RGB( 1, 12, 8) +#define defColorCursor RGB(20, 49, 31) +#define defColorTitleBg RGB( 0, 23, 16) +#define defColorTitleTxt COLOR_WHITE +#define defColorText COLOR_WHITE +#define defColorSelected COLOR_SELECT +#define defColorSplitLine RGB( 0, 23, 16) +#define defColorHighlight COLOR_WHITE +#define defColorStatusBg RGB( 0, 23, 16) +#define defColorStatusTxt COLOR_YELLOW +#define defColorPopupBg COLOR_BG_WINDOW +#define defColorPopupTxt COLOR_POPUP_TEXT +#define defColorAlertBg COLOR_BG_RED +#define defColorAlertTxt COLOR_YELLOW +#define defColorPercentTxt COLOR_PERCENT +#define defColorBarfill COLOR_BARFILL +#define defColorIndicator COLOR_WHITE +#define defColorCoordinate COLOR_WHITE +#define defColorButton RGB( 0, 23, 16) #if ALL(LED_CONTROL_MENU, HAS_COLOR_LEDS) - #define Def_Leds_Color LEDColorWhite() + #define defColorLeds LEDColorWhite() #endif #if ENABLED(CASELIGHT_USES_BRIGHTNESS) - #define Def_CaseLight_Brightness 255 + #define defCaseLightBrightness 255 #endif #ifdef Z_AFTER_HOMING #define DEF_Z_AFTER_HOMING Z_AFTER_HOMING diff --git a/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp b/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp index 180b35e2ecb1..853da8532e12 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin_lcd.cpp @@ -42,7 +42,7 @@ // QR_Pixel: The pixel size occupied by each point of the QR code: 0x01-0x0F (1-16) // (Nx, Ny): The coordinates of the upper left corner displayed by the QR code // str: multi-bit data -void DWIN_Draw_QR(uint8_t QR_Pixel, uint16_t x, uint16_t y, char *string) { +void dwinDrawQR(uint8_t QR_Pixel, uint16_t x, uint16_t y, char *string) { size_t i = 0; dwinByte(i, 0x21); dwinWord(i, x); @@ -64,7 +64,7 @@ void dwinIconShow(uint8_t libID, uint8_t picID, uint16_t x, uint16_t y) { // xStart/yStart: Upper-left of virtual area // xEnd/yEnd: Lower-right of virtual area // x/y: Screen paste point -void DWIN_Frame_AreaCopy(uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y) { +void dwinFrameAreaCopy(uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y) { size_t i = 0; dwinByte(i, 0x26); dwinWord(i, xStart); @@ -84,7 +84,7 @@ void DWIN_Frame_AreaCopy(uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16 // xStart/yStart: Upper-left of virtual area // xEnd/yEnd: Lower-right of virtual area // x/y: Screen paste point -void DWIN_Frame_AreaCopy(bool IBD, bool BIR, bool BFI, uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y) { +void dwinFrameAreaCopy(bool IBD, bool BIR, bool BFI, uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y) { size_t i = 0; dwinByte(i, 0x27); dwinByte(i, (IBD & 1) << 7 | (BIR & 1) << 6 | (BFI & 1) << 5 | cacheID); @@ -102,8 +102,8 @@ void DWIN_Frame_AreaCopy(bool IBD, bool BIR, bool BFI, uint8_t cacheID, uint16_t // xStart/yStart: Upper-left of virtual area // xEnd/yEnd: Lower-right of virtual area // x/y: Screen paste point -void DWIN_Frame_AreaCopy(uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y) { - DWIN_Frame_AreaCopy(false, false, true, cacheID, xStart, yStart, xEnd, yEnd, x, y); +void dwinFrameAreaCopy(uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y) { + dwinFrameAreaCopy(false, false, true, cacheID, xStart, yStart, xEnd, yEnd, x, y); } // Write buffer data to the SRAM or Flash @@ -111,7 +111,7 @@ void DWIN_Frame_AreaCopy(uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint // addr: start address // length: Bytes to write // data: address of the buffer with data -void DWIN_WriteToMem(uint8_t mem, uint16_t addr, uint16_t length, uint8_t *data) { +void dwinWriteToMem(uint8_t mem, uint16_t addr, uint16_t length, uint8_t *data) { const uint8_t max_size = 128; uint16_t pending = length; uint16_t to_send; @@ -156,7 +156,7 @@ void dwinIconShow(uint16_t x, uint16_t y, uint16_t addr) { // Write the contents of the 32KB SRAM data memory into the designated image memory space. // picID: Picture memory space location, 0x00-0x0F, each space is 32Kbytes -void DWIN_SRAMToPic(uint8_t picID) { +void dwinSRAMToPic(uint8_t picID) { size_t i = 0; dwinByte(i, 0x33); dwinByte(i, 0x5A); @@ -167,7 +167,7 @@ void DWIN_SRAMToPic(uint8_t picID) { //--------------------------Test area ------------------------- -//void DWIN_ReadSRAM(uint16_t addr, const uint8_t length, const char * const data) { +//void dwinReadSRAM(uint16_t addr, const uint8_t length, const char * const data) { // size_t i = 0; // dwinByte(i, 0x32); // dwinByte(i, 0x5A); // 0x5A Read from SRAM - 0xA5 Read from Flash diff --git a/Marlin/src/lcd/e3v2/proui/dwin_lcd.h b/Marlin/src/lcd/e3v2/proui/dwin_lcd.h index 8c9c063367dc..51f459012905 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_lcd.h +++ b/Marlin/src/lcd/e3v2/proui/dwin_lcd.h @@ -35,10 +35,10 @@ // QR_Pixel: The pixel size occupied by each point of the QR code: 0x01-0x0F (1-16) // (Nx, Ny): The coordinates of the upper left corner displayed by the QR code // str: multi-bit data -void DWIN_Draw_QR(uint8_t QR_Pixel, uint16_t x, uint16_t y, char *string); +void dwinDrawQR(uint8_t QR_Pixel, uint16_t x, uint16_t y, char *string); -inline void DWIN_Draw_QR(uint8_t QR_Pixel, uint16_t x, uint16_t y, FSTR_P title) { - DWIN_Draw_QR(QR_Pixel, x, y, (char *)title); +inline void dwinDrawQR(uint8_t QR_Pixel, uint16_t x, uint16_t y, FSTR_P fTitle) { + dwinDrawQR(QR_Pixel, x, y, (char *)fTitle); } // Copy area from virtual display area to current screen @@ -46,13 +46,13 @@ inline void DWIN_Draw_QR(uint8_t QR_Pixel, uint16_t x, uint16_t y, FSTR_P title) // xStart/yStart: Upper-left of virtual area // xEnd/yEnd: Lower-right of virtual area // x/y: Screen paste point -void DWIN_Frame_AreaCopy(uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y); +void dwinFrameAreaCopy(uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y); // Copy area from current virtual display area to current screen // xStart/yStart: Upper-left of virtual area // xEnd/yEnd: Lower-right of virtual area // x/y: Screen paste point -void DWIN_Frame_AreaCopy(uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y); +void dwinFrameAreaCopy(uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y); // Copy area from virtual display area to current screen // IBD: background display: 0=Background filtering is not displayed, 1=Background display \\When setting the background filtering not to display, the background must be pure black @@ -62,14 +62,14 @@ void DWIN_Frame_AreaCopy(uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16 // xStart/yStart: Upper-left of virtual area // xEnd/yEnd: Lower-right of virtual area // x/y: Screen paste point -void DWIN_Frame_AreaCopy(bool IBD, bool BIR, bool BFI, uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y); +void dwinFrameAreaCopy(bool IBD, bool BIR, bool BFI, uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y); // Write buffer data to the SRAM or Flash // mem: 0x5A=32KB SRAM, 0xA5=16KB Flash // addr: start address // length: Bytes to write // data: address of the buffer with data -void DWIN_WriteToMem(uint8_t mem, uint16_t addr, uint16_t length, uint8_t *data); +void dwinWriteToMem(uint8_t mem, uint16_t addr, uint16_t length, uint8_t *data); // Draw an Icon from SRAM // x/y: Upper-left point @@ -78,4 +78,4 @@ void dwinIconShow(uint16_t x, uint16_t y, uint16_t addr); // Write the contents of the 32KB SRAM data memory into the designated image memory space. // picID: Picture memory space location, 0x00-0x0F, each space is 32Kbytes -void DWIN_SRAMToPic(uint8_t picID); +void dwinSRAMToPic(uint8_t picID); diff --git a/Marlin/src/lcd/e3v2/proui/dwin_popup.cpp b/Marlin/src/lcd/e3v2/proui/dwin_popup.cpp index 7b22069c69e1..91c3ee98e390 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_popup.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin_popup.cpp @@ -43,41 +43,41 @@ popupChangeFunc_t popupChange = nullptr; uint16_t HighlightYPos = 280; -void Draw_Select_Highlight(const bool sel, const uint16_t ypos) { +void drawSelectHighlight(const bool sel, const uint16_t ypos) { HighlightYPos = ypos; hmiFlag.select_flag = sel; - const uint16_t c1 = sel ? HMI_data.Highlight_Color : HMI_data.PopupBg_Color, - c2 = sel ? HMI_data.PopupBg_Color : HMI_data.Highlight_Color; + const uint16_t c1 = sel ? hmiData.colorHighlight : hmiData.colorPopupBg, + c2 = sel ? hmiData.colorPopupBg : hmiData.colorHighlight; dwinDrawRectangle(0, c1, 25, ypos - 1, 126, ypos + 38); dwinDrawRectangle(0, c1, 24, ypos - 2, 127, ypos + 39); dwinDrawRectangle(0, c2, 145, ypos - 1, 246, ypos + 38); dwinDrawRectangle(0, c2, 144, ypos - 2, 247, ypos + 39); } -void DWIN_Popup_Continue(const uint8_t icon, FSTR_P const fmsg1, FSTR_P const fmsg2) { - HMI_SaveProcessID(WaitResponse); - DWIN_Draw_Popup(icon, fmsg1, fmsg2, BTN_Continue); // Button Continue +void dwinPopupContinue(const uint8_t icon, FSTR_P const fmsg1, FSTR_P const fmsg2) { + hmiSaveProcessID(ID_WaitResponse); + dwinDrawPopup(icon, fmsg1, fmsg2, BTN_Continue); // Button Continue dwinUpdateLCD(); } -void DWIN_Popup_ConfirmCancel(const uint8_t icon, FSTR_P const fmsg2) { - DWIN_Draw_Popup(ICON_BLTouch, F("Please confirm"), fmsg2); - DWINUI::Draw_Button(BTN_Confirm, 26, 280); - DWINUI::Draw_Button(BTN_Cancel, 146, 280); - Draw_Select_Highlight(hmiFlag.select_flag); +void dwinPopupConfirmCancel(const uint8_t icon, FSTR_P const fmsg2) { + dwinDrawPopup(ICON_BLTouch, F("Please confirm"), fmsg2); + DWINUI::drawButton(BTN_Confirm, 26, 280); + DWINUI::drawButton(BTN_Cancel, 146, 280); + drawSelectHighlight(hmiFlag.select_flag); dwinUpdateLCD(); } -void Goto_Popup(const popupDrawFunc_t fnDraw, const popupClickFunc_t fnClick/*=nullptr*/, const popupChangeFunc_t fnChange/*=nullptr*/) { +void gotoPopup(const popupDrawFunc_t fnDraw, const popupClickFunc_t fnClick/*=nullptr*/, const popupChangeFunc_t fnChange/*=nullptr*/) { popupDraw = fnDraw; popupClick = fnClick; popupChange = fnChange; - HMI_SaveProcessID(Popup); + hmiSaveProcessID(ID_Popup); hmiFlag.select_flag = false; popupDraw(); } -void HMI_Popup() { +void hmiPopup() { if (!wait_for_user) { if (popupClick) popupClick(); return; @@ -86,7 +86,7 @@ void HMI_Popup() { EncoderState encoder_diffState = get_encoder_state(); if (encoder_diffState == ENCODER_DIFF_CW || encoder_diffState == ENCODER_DIFF_CCW) { const bool change = encoder_diffState != ENCODER_DIFF_CW; - if (popupChange) popupChange(change); else Draw_Select_Highlight(change, HighlightYPos); + if (popupChange) popupChange(change); else drawSelectHighlight(change, HighlightYPos); dwinUpdateLCD(); } } diff --git a/Marlin/src/lcd/e3v2/proui/dwin_popup.h b/Marlin/src/lcd/e3v2/proui/dwin_popup.h index 5009f36b3b15..ee8664e874dd 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_popup.h +++ b/Marlin/src/lcd/e3v2/proui/dwin_popup.h @@ -36,38 +36,38 @@ typedef void (*popupClickFunc_t)(); typedef void (*popupChangeFunc_t)(const bool state); extern popupDrawFunc_t popupDraw; -void Draw_Select_Highlight(const bool sel, const uint16_t ypos); -inline void Draw_Select_Highlight(const bool sel) { Draw_Select_Highlight(sel, 280); }; -void DWIN_Popup_Continue(const uint8_t icon, FSTR_P const fmsg1, FSTR_P const fmsg2); -void DWIN_Popup_ConfirmCancel(const uint8_t icon, FSTR_P const fmsg2); -void Goto_Popup(const popupDrawFunc_t fnDraw, const popupClickFunc_t fnClick=nullptr, const popupChangeFunc_t fnChange=nullptr); -void HMI_Popup(); +void drawSelectHighlight(const bool sel, const uint16_t ypos); +inline void drawSelectHighlight(const bool sel) { drawSelectHighlight(sel, 280); }; +void dwinPopupContinue(const uint8_t icon, FSTR_P const fmsg1, FSTR_P const fmsg2); +void dwinPopupConfirmCancel(const uint8_t icon, FSTR_P const fmsg2); +void gotoPopup(const popupDrawFunc_t fnDraw, const popupClickFunc_t fnClick=nullptr, const popupChangeFunc_t fnChange=nullptr); +void hmiPopup(); -inline void Draw_Popup_Bkgd() { - dwinDrawRectangle(1, HMI_data.PopupBg_Color, 14, 60, 258, 330); - dwinDrawRectangle(0, HMI_data.Highlight_Color, 14, 60, 258, 330); +inline void drawPopupBkgd() { + dwinDrawRectangle(1, hmiData.colorPopupBg, 14, 60, 258, 330); + dwinDrawRectangle(0, hmiData.colorHighlight, 14, 60, 258, 330); } template -void DWIN_Draw_Popup(const uint8_t icon, T amsg1=nullptr, U amsg2=nullptr, uint8_t button=0) { - DWINUI::ClearMainArea(); - Draw_Popup_Bkgd(); - if (icon) DWINUI::Draw_Icon(icon, 101, 105); - if (amsg1) DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 210, amsg1); - if (amsg2) DWINUI::Draw_CenteredString(HMI_data.PopupTxt_Color, 240, amsg2); - if (button) DWINUI::Draw_Button(button, 86, 280); +void dwinDrawPopup(const uint8_t icon, T amsg1=nullptr, U amsg2=nullptr, uint8_t button=0) { + DWINUI::clearMainArea(); + drawPopupBkgd(); + if (icon) DWINUI::drawIcon(icon, 101, 105); + if (amsg1) DWINUI::drawCenteredString(hmiData.colorPopupTxt, 210, amsg1); + if (amsg2) DWINUI::drawCenteredString(hmiData.colorPopupTxt, 240, amsg2); + if (button) DWINUI::drawButton(button, 86, 280); } template -void DWIN_Show_Popup(const uint8_t icon, T amsg1=nullptr, U amsg2=nullptr, uint8_t button=0) { - DWIN_Draw_Popup(icon, amsg1, amsg2, button); +void dwinShowPopup(const uint8_t icon, T amsg1=nullptr, U amsg2=nullptr, uint8_t button=0) { + dwinDrawPopup(icon, amsg1, amsg2, button); dwinUpdateLCD(); } template -void DWIN_Popup_Confirm(const uint8_t icon, T amsg1, U amsg2) { - HMI_SaveProcessID(WaitResponse); - DWIN_Draw_Popup(icon, amsg1, amsg2, BTN_Confirm); // Button Confirm +void dwinPopupConfirm(const uint8_t icon, T amsg1, U amsg2) { + hmiSaveProcessID(ID_WaitResponse); + dwinDrawPopup(icon, amsg1, amsg2, BTN_Confirm); // Button Confirm dwinUpdateLCD(); } diff --git a/Marlin/src/lcd/e3v2/proui/dwinui.cpp b/Marlin/src/lcd/e3v2/proui/dwinui.cpp index 235b30f9faa2..72b66fb5b3e4 100644 --- a/Marlin/src/lcd/e3v2/proui/dwinui.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwinui.cpp @@ -35,26 +35,26 @@ #include "dwinui.h" xy_int_t DWINUI::cursor = { 0 }; -uint16_t DWINUI::pencolor = Color_White; -uint16_t DWINUI::textcolor = Def_Text_Color; -uint16_t DWINUI::backcolor = Def_Background_Color; -uint16_t DWINUI::buttoncolor = Def_Button_Color; -uint8_t DWINUI::fontid = font8x16; -FSTR_P const DWINUI::Author = F(STRING_CONFIG_H_AUTHOR); +uint16_t DWINUI::penColor = COLOR_WHITE; +uint16_t DWINUI::textColor = defColorText; +uint16_t DWINUI::backColor = defColorBackground; +uint16_t DWINUI::buttonColor = defColorButton; +uint8_t DWINUI::fontID = font8x16; +FSTR_P const DWINUI::author = F(STRING_CONFIG_H_AUTHOR); -void (*DWINUI::onTitleDraw)(TitleClass* title) = nullptr; +void (*DWINUI::onTitleDraw)(Title* t) = nullptr; void DWINUI::init() { cursor.reset(); - pencolor = Color_White; - textcolor = Def_Text_Color; - backcolor = Def_Background_Color; - buttoncolor = Def_Button_Color; - fontid = font8x16; + penColor = COLOR_WHITE; + textColor = defColorText; + backColor = defColorBackground; + buttonColor = defColorButton; + fontID = font8x16; } // Set text/number font -void DWINUI::setFont(fontid_t fid) { fontid = fid; } +void DWINUI::setFont(fontid_t fid) { fontID = fid; } // Get font character width uint8_t DWINUI::fontWidth(fontid_t fid) { @@ -95,33 +95,33 @@ uint8_t DWINUI::fontHeight(fontid_t fid) { } // Get screen x coordinates from text column -uint16_t DWINUI::ColToX(uint8_t col) { return col * fontWidth(fontid); } +uint16_t DWINUI::colToX(uint8_t col) { return col * fontWidth(fontID); } // Get screen y coordinates from text row -uint16_t DWINUI::RowToY(uint8_t row) { return row * fontHeight(fontid); } +uint16_t DWINUI::rowToY(uint8_t row) { return row * fontHeight(fontID); } // Set text/number color -void DWINUI::SetColors(uint16_t fgcolor, uint16_t bgcolor, uint16_t alcolor) { - textcolor = fgcolor; - backcolor = bgcolor; - buttoncolor = alcolor; +void DWINUI::setColors(uint16_t fgcolor, uint16_t bgcolor, uint16_t alcolor) { + textColor = fgcolor; + backColor = bgcolor; + buttonColor = alcolor; } -void DWINUI::SetTextColor(uint16_t fgcolor) { - textcolor = fgcolor; +void DWINUI::setTextColor(uint16_t fgcolor) { + textColor = fgcolor; } -void DWINUI::SetBackgroundColor(uint16_t bgcolor) { - backcolor = bgcolor; +void DWINUI::setBackgroundColor(uint16_t bgcolor) { + backColor = bgcolor; } // Moves cursor to point // x: abscissa of the display // y: ordinate of the display // point: xy coordinate -void DWINUI::MoveTo(int16_t x, int16_t y) { +void DWINUI::moveTo(int16_t x, int16_t y) { cursor.x = x; cursor.y = y; } -void DWINUI::MoveTo(xy_int_t point) { +void DWINUI::moveTo(xy_int_t point) { cursor = point; } @@ -129,16 +129,16 @@ void DWINUI::MoveTo(xy_int_t point) { // x: abscissa of the display // y: ordinate of the display // point: xy coordinate -void DWINUI::MoveBy(int16_t x, int16_t y) { +void DWINUI::moveBy(int16_t x, int16_t y) { cursor.x += x; cursor.y += y; } -void DWINUI::MoveBy(xy_int_t point) { +void DWINUI::moveBy(xy_int_t point) { cursor += point; } // Draw a Centered string using arbitrary x1 and x2 margins -void DWINUI::Draw_CenteredString(bool bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint16_t x1, uint16_t x2, uint16_t y, const char * const string) { +void DWINUI::drawCenteredString(bool bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint16_t x1, uint16_t x2, uint16_t y, const char * const string) { const uint16_t x = _MAX(0U, x2 + x1 - strlen_P(string) * fontWidth(fid)) / 2 - 1; dwinDrawString(bShow, fid, color, bColor, x, y, string); } @@ -148,28 +148,28 @@ void DWINUI::Draw_CenteredString(bool bShow, fontid_t fid, uint16_t color, uint1 // x: abscissa of the display // y: ordinate of the display // c: ASCII code of char -void DWINUI::Draw_Char(uint16_t color, uint16_t x, uint16_t y, const char c) { +void DWINUI::drawChar(uint16_t color, uint16_t x, uint16_t y, const char c) { const char string[2] = { c, 0}; - dwinDrawString(false, fontid, color, backcolor, x, y, string, 1); + dwinDrawString(false, fontID, color, backColor, x, y, string, 1); } // Draw a char at cursor position and increment cursor -void DWINUI::Draw_Char(uint16_t color, const char c) { - Draw_Char(color, cursor.x, cursor.y, c); - MoveBy(fontWidth(fontid), 0); +void DWINUI::drawChar(uint16_t color, const char c) { + drawChar(color, cursor.x, cursor.y, c); + moveBy(fontWidth(fontID), 0); } // Draw a string at cursor position // color: Character color // *string: The string // rlimit: For draw less chars than string length use rlimit -void DWINUI::Draw_String(const char * const string, uint16_t rlimit) { - dwinDrawString(false, fontid, textcolor, backcolor, cursor.x, cursor.y, string, rlimit); - MoveBy(strlen(string) * fontWidth(fontid), 0); +void DWINUI::drawString(const char * const string, uint16_t rlimit) { + dwinDrawString(false, fontID, textColor, backColor, cursor.x, cursor.y, string, rlimit); + moveBy(strlen(string) * fontWidth(fontID), 0); } -void DWINUI::Draw_String(uint16_t color, const char * const string, uint16_t rlimit) { - dwinDrawString(false, fontid, color, backcolor, cursor.x, cursor.y, string, rlimit); - MoveBy(strlen(string) * fontWidth(fontid), 0); +void DWINUI::drawString(uint16_t color, const char * const string, uint16_t rlimit) { + dwinDrawString(false, fontID, color, backColor, cursor.x, cursor.y, string, rlimit); + moveBy(strlen(string) * fontWidth(fontID), 0); } // Draw a numeric integer value @@ -181,7 +181,7 @@ void DWINUI::Draw_String(uint16_t color, const char * const string, uint16_t rli // iNum: Number of digits // x/y: Upper-left coordinate // value: Integer value -void DWINUI::Draw_Int(uint8_t bShow, bool signedMode, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, int32_t value) { +void DWINUI::drawInt(uint8_t bShow, bool signedMode, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, int32_t value) { char nstr[10]; sprintf_P(nstr, PSTR("%*li"), (signedMode ? iNum + 1 : iNum), value); dwinDrawString(bShow, fid, color, bColor, x, y, nstr); @@ -197,7 +197,7 @@ void DWINUI::Draw_Int(uint8_t bShow, bool signedMode, fontid_t fid, uint16_t col // fNum: Number of decimal digits // x/y: Upper-left coordinate // value: float value -void DWINUI::Draw_Float(uint8_t bShow, bool signedMode, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { +void DWINUI::drawFloat(uint8_t bShow, bool signedMode, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { char nstr[10]; dwinDrawString(bShow, fid, color, bColor, x, y, dtostrf(value, iNum + (signedMode ? 2:1) + fNum, fNum, nstr)); } @@ -217,19 +217,19 @@ void DWINUI::ICON_Show(bool BG, uint8_t icon, uint16_t x, uint16_t y) { // ------------------------- Buttons ------------------------------// -void DWINUI::Draw_Button(uint16_t color, uint16_t bcolor, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, const char * const caption) { +void DWINUI::drawButton(uint16_t color, uint16_t bcolor, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, const char * const caption) { dwinDrawRectangle(1, bcolor, x1, y1, x2, y2); - Draw_CenteredString(0, fontid, color, bcolor, x1, x2, (y2 + y1 - fontHeight())/2, caption); + drawCenteredString(0, fontID, color, bcolor, x1, x2, (y2 + y1 - fontHeight())/2, caption); } -void DWINUI::Draw_Button(uint8_t id, uint16_t x, uint16_t y) { +void DWINUI::drawButton(uint8_t id, uint16_t x, uint16_t y) { switch (id) { - case BTN_Cancel : Draw_Button(GET_TEXT_F(MSG_BUTTON_CANCEL), x, y); break; - case BTN_Confirm : Draw_Button(GET_TEXT_F(MSG_BUTTON_CONFIRM), x, y); break; - case BTN_Continue: Draw_Button(GET_TEXT_F(MSG_BUTTON_CONTINUE), x, y); break; - case BTN_Print : Draw_Button(GET_TEXT_F(MSG_BUTTON_PRINT), x, y); break; - case BTN_Save : Draw_Button(GET_TEXT_F(MSG_BUTTON_SAVE), x, y); break; - case BTN_Purge : Draw_Button(GET_TEXT_F(MSG_BUTTON_PURGE), x, y); break; + case BTN_Cancel : drawButton(GET_TEXT_F(MSG_BUTTON_CANCEL), x, y); break; + case BTN_Confirm : drawButton(GET_TEXT_F(MSG_BUTTON_CONFIRM), x, y); break; + case BTN_Continue: drawButton(GET_TEXT_F(MSG_BUTTON_CONTINUE), x, y); break; + case BTN_Print : drawButton(GET_TEXT_F(MSG_BUTTON_PRINT), x, y); break; + case BTN_Save : drawButton(GET_TEXT_F(MSG_BUTTON_SAVE), x, y); break; + case BTN_Purge : drawButton(GET_TEXT_F(MSG_BUTTON_PURGE), x, y); break; default: break; } } @@ -241,7 +241,7 @@ void DWINUI::Draw_Button(uint8_t id, uint16_t x, uint16_t y) { // x: the abscissa of the center of the circle // y: ordinate of the center of the circle // r: circle radius -void DWINUI::Draw_Circle(uint16_t color, uint16_t x, uint16_t y, uint8_t r) { +void DWINUI::drawCircle(uint16_t color, uint16_t x, uint16_t y, uint8_t r) { int a = 0, b = 0; while (a <= b) { b = SQRT(sq(r) - sq(a)); @@ -263,7 +263,7 @@ void DWINUI::Draw_Circle(uint16_t color, uint16_t x, uint16_t y, uint8_t r) { // x: the abscissa of the center of the circle // y: ordinate of the center of the circle // r: circle radius -void DWINUI::Draw_FillCircle(uint16_t bcolor, uint16_t x,uint16_t y,uint8_t r) { +void DWINUI::drawFillCircle(uint16_t bcolor, uint16_t x,uint16_t y,uint8_t r) { dwinDrawLine(bcolor, x - r, y, x + r, y); uint16_t b = 1; while (b <= r) { @@ -322,54 +322,54 @@ uint16_t DWINUI::RainbowInt(int16_t val, int16_t minv, int16_t maxv) { // bColor: Background color // x/y: Upper-left point // mode : 0 : unchecked, 1 : checked -void DWINUI::Draw_Checkbox(uint16_t color, uint16_t bcolor, uint16_t x, uint16_t y, bool checked=false) { +void DWINUI::drawCheckbox(uint16_t color, uint16_t bcolor, uint16_t x, uint16_t y, bool checked=false) { dwinDrawRectangle(0, color, x + 2, y + 2, x + 17, y + 17); dwinDrawRectangle(1, checked ? color : bcolor, x + 6, y + 6, x + 13, y + 13); } // Clear Menu by filling the menu area with background color -void DWINUI::ClearMainArea() { - dwinDrawRectangle(1, backcolor, 0, TITLE_HEIGHT, DWIN_WIDTH - 1, STATUS_Y - 1); +void DWINUI::clearMainArea() { + dwinDrawRectangle(1, backColor, 0, TITLE_HEIGHT, DWIN_WIDTH - 1, STATUS_Y - 1); } /* Title Class ==============================================================*/ -TitleClass Title; +Title title; -void TitleClass::draw() { +void Title::draw() { if (DWINUI::onTitleDraw != nullptr) (*DWINUI::onTitleDraw)(this); } -void TitleClass::SetCaption(const char * const title) { +void Title::setCaption(const char * const titleStr) { frameid = 0; - if ( caption == title ) return; - const uint8_t len = _MIN(sizeof(caption) - 1, strlen(title)); - memcpy(&caption[0], title, len); + if ( caption == titleStr ) return; + const uint8_t len = _MIN(sizeof(caption) - 1, strlen(titleStr)); + memcpy(&caption[0], titleStr, len); caption[len] = '\0'; } -void TitleClass::ShowCaption(const char * const title) { - SetCaption(title); +void Title::showCaption(const char * const titleStr) { + setCaption(titleStr); draw(); } -void TitleClass::SetFrame(uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2) { +void Title::setFrame(uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2) { caption[0] = '\0'; frameid = id; frame = { x1, y1, x2, y2 }; } -void TitleClass::SetFrame(uint16_t x, uint16_t y, uint16_t w, uint16_t h) { - SetFrame(1, x, y, x + w - 1, y + h - 1); +void Title::setFrame(uint16_t x, uint16_t y, uint16_t w, uint16_t h) { + setFrame(1, x, y, x + w - 1, y + h - 1); } -void TitleClass::FrameCopy(uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2) { - SetFrame(id, x1, y1, x2, y2); +void Title::frameCopy(uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2) { + setFrame(id, x1, y1, x2, y2); draw(); } -void TitleClass::FrameCopy(uint16_t x, uint16_t y, uint16_t w, uint16_t h) { - FrameCopy(1, x, y, x + w - 1, y + h - 1); +void Title::frameCopy(uint16_t x, uint16_t y, uint16_t w, uint16_t h) { + frameCopy(1, x, y, x + w - 1, y + h - 1); } #endif // DWIN_LCD_PROUI diff --git a/Marlin/src/lcd/e3v2/proui/dwinui.h b/Marlin/src/lcd/e3v2/proui/dwinui.h index 06daece9d099..9f8ab70e71b3 100644 --- a/Marlin/src/lcd/e3v2/proui/dwinui.h +++ b/Marlin/src/lcd/e3v2/proui/dwinui.h @@ -46,7 +46,7 @@ #define ICON_Cancel ICON_StockConfiguration #define ICON_CustomPreheat ICON_SetEndTemp #define ICON_Error ICON_TempTooHigh -#define ICON_ESDiag ICON_Info +#define ICON_esDiag ICON_Info #define ICON_ExtrudeMinT ICON_HotendTemp #define ICON_FilLoad ICON_WriteEEPROM #define ICON_FilMan ICON_ResumeEEPROM @@ -170,24 +170,24 @@ #define BTN_Purge 92 // Extended and default UI Colors -#define Color_Black 0 -#define Color_Green RGB(0,63,0) -#define Color_Aqua RGB(0,63,31) -#define Color_Blue RGB(0,0,31) -#define Color_Light_White 0xBDD7 -#define Color_Light_Green 0x3460 -#define Color_Cyan 0x07FF -#define Color_Light_Cyan 0x04F3 -#define Color_Light_Blue 0x3A6A -#define Color_Magenta 0xF81F -#define Color_Light_Magenta 0x9813 -#define Color_Light_Red 0x8800 -#define Color_Orange 0xFA20 -#define Color_Light_Orange 0xFBC0 -#define Color_Light_Yellow 0x8BE0 -#define Color_Brown 0xCC27 -#define Color_Light_Brown 0x6204 -#define Color_Grey 0x18E3 +#define COLOR_BLACK 0 +#define COLOR_GREEN RGB(0,63,0) +#define COLOR_AQUA RGB(0,63,31) +#define COLOR_BLUE RGB(0,0,31) +#define COLOR_LIGHT_WHITE 0xBDD7 +#define COLOR_LIGHT_GREEN 0x3460 +#define COLOR_CYAN 0x07FF +#define COLOR_LIGHT_CYAN 0x04F3 +#define COLOR_LIGHT_BLUE 0x3A6A +#define COLOR_MAGENTA 0xF81F +#define COLOR_LIGHT_MAGENTA 0x9813 +#define COLOR_LIGHT_RED 0x8800 +#define COLOR_ORANGE 0xFA20 +#define COLOR_LIGHT_ORANGE 0xFBC0 +#define COLOR_LIGHT_YELLOW 0x8BE0 +#define COLOR_BROWN 0xCC27 +#define COLOR_LIGHT_BROWN 0x6204 +#define COLOR_GREY 0x18E3 // UI element defines and constants #define DWIN_FONT_MENU font8x16 @@ -195,7 +195,7 @@ #define DWIN_FONT_HEAD font10x20 #define DWIN_FONT_ALERT font10x20 #define STATUS_Y 354 -#define LCD_WIDTH (DWIN_WIDTH / 8) // only if the default fontid is font8x16 +#define LCD_WIDTH (DWIN_WIDTH / 8) // only if the default fontID is font8x16 // Minimum unit (0.1) : multiple (10) #define UNITFDIGITS 1 @@ -223,33 +223,33 @@ constexpr uint8_t TITLE_HEIGHT = 30, // Title bar heig typedef struct { uint16_t left, top, right, bottom; } rect_t; typedef struct { uint16_t x, y, w, h; } frame_rect_t; -class TitleClass { +class Title { public: char caption[32] = ""; uint8_t frameid = 0; rect_t frame = {0}; void draw(); - void SetCaption(const char * const title); - inline void SetCaption(FSTR_P title) { SetCaption((char *)title); } - void ShowCaption(const char * const title); - inline void ShowCaption(FSTR_P title) { ShowCaption((char *)title); } - void SetFrame(uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2); - void SetFrame(uint16_t x, uint16_t y, uint16_t w, uint16_t h); - void FrameCopy(uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2); - void FrameCopy(uint16_t x, uint16_t y, uint16_t h, uint16_t v); + void setCaption(const char * const titleStr); + inline void setCaption(FSTR_P fTitle) { setCaption((char *)fTitle); } + void showCaption(const char * const titleStr); + inline void showCaption(FSTR_P fTitle) { showCaption((char *)fTitle); } + void setFrame(uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2); + void setFrame(uint16_t x, uint16_t y, uint16_t w, uint16_t h); + void frameCopy(uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2); + void frameCopy(uint16_t x, uint16_t y, uint16_t h, uint16_t v); }; -extern TitleClass Title; +extern Title title; namespace DWINUI { extern xy_int_t cursor; - extern uint16_t pencolor; - extern uint16_t textcolor; - extern uint16_t backcolor; - extern uint16_t buttoncolor; - extern fontid_t fontid; - extern FSTR_P const Author; + extern uint16_t penColor; + extern uint16_t textColor; + extern uint16_t backColor; + extern uint16_t buttonColor; + extern fontid_t fontID; + extern FSTR_P const author; - extern void (*onTitleDraw)(TitleClass* title); + extern void (*onTitleDraw)(Title* t); // DWIN LCD Initialization void init(); @@ -259,50 +259,50 @@ namespace DWINUI { // Get font character width uint8_t fontWidth(fontid_t cfont); - inline uint8_t fontWidth() { return fontWidth(fontid); }; + inline uint8_t fontWidth() { return fontWidth(fontID); }; // Get font character height uint8_t fontHeight(fontid_t cfont); - inline uint8_t fontHeight() { return fontHeight(fontid); }; + inline uint8_t fontHeight() { return fontHeight(fontID); }; // Get screen x coordinates from text column - uint16_t ColToX(uint8_t col); + uint16_t colToX(uint8_t col); // Get screen y coordinates from text row - uint16_t RowToY(uint8_t row); + uint16_t rowToY(uint8_t row); // Set text/number color - void SetColors(uint16_t fgcolor, uint16_t bgcolor, uint16_t alcolor); - void SetTextColor(uint16_t fgcolor); - void SetBackgroundColor(uint16_t bgcolor); + void setColors(uint16_t fgcolor, uint16_t bgcolor, uint16_t alcolor); + void setTextColor(uint16_t fgcolor); + void setBackgroundColor(uint16_t bgcolor); // Moves cursor to point // x: abscissa of the display // y: ordinate of the display // point: xy coordinate - void MoveTo(int16_t x, int16_t y); - void MoveTo(xy_int_t point); + void moveTo(int16_t x, int16_t y); + void moveTo(xy_int_t point); // Moves cursor relative to the actual position // x: abscissa of the display // y: ordinate of the display // point: xy coordinate - void MoveBy(int16_t x, int16_t y); - void MoveBy(xy_int_t point); + void moveBy(int16_t x, int16_t y); + void moveBy(xy_int_t point); // Draw a line from the cursor to xy position // color: Line segment color // x/y: End point - inline void LineTo(uint16_t color, uint16_t x, uint16_t y) { + inline void lineTo(uint16_t color, uint16_t x, uint16_t y) { dwinDrawLine(color, cursor.x, cursor.y, x, y); } - inline void LineTo(uint16_t x, uint16_t y) { - dwinDrawLine(pencolor, cursor.x, cursor.y, x, y); + inline void lineTo(uint16_t x, uint16_t y) { + dwinDrawLine(penColor, cursor.x, cursor.y, x, y); } // Extend a frame box // v: value to extend - inline frame_rect_t ExtendFrame(frame_rect_t frame, uint8_t v) { + inline frame_rect_t extendFrame(frame_rect_t frame, uint8_t v) { frame_rect_t t; t.x = frame.x - v; t.y = frame.y - v; @@ -321,14 +321,14 @@ namespace DWINUI { // Draw an Icon with transparent background from the library ICON // icon: Icon ID // x/y: Upper-left point - inline void Draw_Icon(uint8_t icon, uint16_t x, uint16_t y) { + inline void drawIcon(uint8_t icon, uint16_t x, uint16_t y) { ICON_Show(false, icon, x, y); } // Draw an Icon from the library ICON with its background // icon: Icon ID // x/y: Upper-left point - inline void Draw_IconWB(uint8_t icon, uint16_t x, uint16_t y) { + inline void drawIconWB(uint8_t icon, uint16_t x, uint16_t y) { ICON_Show(true, icon, x, y); } @@ -341,48 +341,48 @@ namespace DWINUI { // iNum: Number of digits // x/y: Upper-left coordinate // value: Integer value - void Draw_Int(uint8_t bShow, bool signedMode, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, int32_t value); + void drawInt(uint8_t bShow, bool signedMode, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, int32_t value); // Draw a positive integer - inline void Draw_Int(uint8_t bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, long value) { - Draw_Int(bShow, 0, fid, color, bColor, iNum, x, y, value); + inline void drawInt(uint8_t bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, long value) { + drawInt(bShow, 0, fid, color, bColor, iNum, x, y, value); } - inline void Draw_Int(uint8_t iNum, long value) { - Draw_Int(false, 0, fontid, textcolor, backcolor, iNum, cursor.x, cursor.y, value); - MoveBy(iNum * fontWidth(fontid), 0); + inline void drawInt(uint8_t iNum, long value) { + drawInt(false, 0, fontID, textColor, backColor, iNum, cursor.x, cursor.y, value); + moveBy(iNum * fontWidth(fontID), 0); } - inline void Draw_Int(uint8_t iNum, uint16_t x, uint16_t y, long value) { - Draw_Int(false, 0, fontid, textcolor, backcolor, iNum, x, y, value); + inline void drawInt(uint8_t iNum, uint16_t x, uint16_t y, long value) { + drawInt(false, 0, fontID, textColor, backColor, iNum, x, y, value); } - inline void Draw_Int(uint16_t color, uint8_t iNum, uint16_t x, uint16_t y, long value) { - Draw_Int(false, 0, fontid, color, backcolor, iNum, x, y, value); + inline void drawInt(uint16_t color, uint8_t iNum, uint16_t x, uint16_t y, long value) { + drawInt(false, 0, fontID, color, backColor, iNum, x, y, value); } - inline void Draw_Int(uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, long value) { - Draw_Int(true, 0, fontid, color, bColor, iNum, x, y, value); + inline void drawInt(uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, long value) { + drawInt(true, 0, fontID, color, bColor, iNum, x, y, value); } - inline void Draw_Int(fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, long value) { - Draw_Int(true, 0, fid, color, bColor, iNum, x, y, value); + inline void drawInt(fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, long value) { + drawInt(true, 0, fid, color, bColor, iNum, x, y, value); } // Draw a signed integer - inline void Draw_Signed_Int(uint8_t bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, long value) { - Draw_Int(bShow, 1, fid, color, bColor, iNum, x, y, value); + inline void drawSignedInt(uint8_t bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, long value) { + drawInt(bShow, 1, fid, color, bColor, iNum, x, y, value); } - inline void Draw_Signed_Int(uint8_t iNum, long value) { - Draw_Int(false, 1, fontid, textcolor, backcolor, iNum, cursor.x, cursor.y, value); - MoveBy(iNum * fontWidth(fontid), 0); + inline void drawSignedInt(uint8_t iNum, long value) { + drawInt(false, 1, fontID, textColor, backColor, iNum, cursor.x, cursor.y, value); + moveBy(iNum * fontWidth(fontID), 0); } - inline void Draw_Signed_Int(uint8_t iNum, uint16_t x, uint16_t y, long value) { - Draw_Int(false, 1, fontid, textcolor, backcolor, iNum, x, y, value); + inline void drawSignedInt(uint8_t iNum, uint16_t x, uint16_t y, long value) { + drawInt(false, 1, fontID, textColor, backColor, iNum, x, y, value); } - inline void Draw_Signed_Int(uint16_t color, uint8_t iNum, uint16_t x, uint16_t y, long value) { - Draw_Int(false, 1, fontid, color, backcolor, iNum, x, y, value); + inline void drawSignedInt(uint16_t color, uint8_t iNum, uint16_t x, uint16_t y, long value) { + drawInt(false, 1, fontID, color, backColor, iNum, x, y, value); } - inline void Draw_Signed_Int(uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, long value) { - Draw_Int(true, 1, fontid, color, bColor, iNum, x, y, value); + inline void drawSignedInt(uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, long value) { + drawInt(true, 1, fontID, color, bColor, iNum, x, y, value); } - inline void Draw_Signed_Int(fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, long value) { - Draw_Int(true, 1, fid, color, bColor, iNum, x, y, value); + inline void drawSignedInt(fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint16_t x, uint16_t y, long value) { + drawInt(true, 1, fid, color, bColor, iNum, x, y, value); } // Draw a numeric float value @@ -395,48 +395,48 @@ namespace DWINUI { // fNum: Number of decimal digits // x/y: Upper-left coordinate // value: float value - void Draw_Float(uint8_t bShow, bool signedMode, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value); + void drawFloat(uint8_t bShow, bool signedMode, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value); // Draw a positive floating point number - inline void Draw_Float(uint8_t bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { - Draw_Float(bShow, 0, fid, color, bColor, iNum, fNum, x, y, value); + inline void drawFloat(uint8_t bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { + drawFloat(bShow, 0, fid, color, bColor, iNum, fNum, x, y, value); } - inline void Draw_Float(uint8_t iNum, uint8_t fNum, float value) { - Draw_Float(false, 0, fontid, textcolor, backcolor, iNum, fNum, cursor.x, cursor.y, value); - MoveBy((iNum + fNum + 1) * fontWidth(fontid), 0); + inline void drawFloat(uint8_t iNum, uint8_t fNum, float value) { + drawFloat(false, 0, fontID, textColor, backColor, iNum, fNum, cursor.x, cursor.y, value); + moveBy((iNum + fNum + 1) * fontWidth(fontID), 0); } - inline void Draw_Float(uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { - Draw_Float(false, 0, fontid, textcolor, backcolor, iNum, fNum, x, y, value); + inline void drawFloat(uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { + drawFloat(false, 0, fontID, textColor, backColor, iNum, fNum, x, y, value); } - inline void Draw_Float(fontid_t fid, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { - Draw_Float(false, 0, fid, textcolor, backcolor, iNum, fNum, x, y, value); + inline void drawFloat(fontid_t fid, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { + drawFloat(false, 0, fid, textColor, backColor, iNum, fNum, x, y, value); } - inline void Draw_Float(uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { - Draw_Float(true, 0, fontid, color, bColor, iNum, fNum, x, y, value); + inline void drawFloat(uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { + drawFloat(true, 0, fontID, color, bColor, iNum, fNum, x, y, value); } - inline void Draw_Float(fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { - Draw_Float(true, 0, fid, color, bColor, iNum, fNum, x, y, value); + inline void drawFloat(fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { + drawFloat(true, 0, fid, color, bColor, iNum, fNum, x, y, value); } // Draw a signed floating point number - inline void Draw_Signed_Float(uint8_t bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { - Draw_Float(bShow, 1, fid, color, bColor, iNum, fNum, x, y, value); + inline void drawSignedFloat(uint8_t bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { + drawFloat(bShow, 1, fid, color, bColor, iNum, fNum, x, y, value); } - inline void Draw_Signed_Float(uint8_t iNum, uint8_t fNum, float value) { - Draw_Float(false, 1, fontid, textcolor, backcolor, iNum, fNum, cursor.x, cursor.y, value); - MoveBy((iNum + fNum + 1) * fontWidth(fontid), 0); + inline void drawSignedFloat(uint8_t iNum, uint8_t fNum, float value) { + drawFloat(false, 1, fontID, textColor, backColor, iNum, fNum, cursor.x, cursor.y, value); + moveBy((iNum + fNum + 1) * fontWidth(fontID), 0); } - inline void Draw_Signed_Float(uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { - Draw_Float(false, 1, fontid, textcolor, backcolor, iNum, fNum, x, y, value); + inline void drawSignedFloat(uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { + drawFloat(false, 1, fontID, textColor, backColor, iNum, fNum, x, y, value); } - inline void Draw_Signed_Float(fontid_t fid, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { - Draw_Float(false, 1, fid, textcolor, backcolor, iNum, fNum, x, y, value); + inline void drawSignedFloat(fontid_t fid, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { + drawFloat(false, 1, fid, textColor, backColor, iNum, fNum, x, y, value); } - inline void Draw_Signed_Float(uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { - Draw_Float(true, 1, fontid, color, bColor, iNum, fNum, x, y, value); + inline void drawSignedFloat(uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { + drawFloat(true, 1, fontID, color, bColor, iNum, fNum, x, y, value); } - inline void Draw_Signed_Float(fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { - Draw_Float(true, 1, fid, color, bColor, iNum, fNum, x, y, value); + inline void drawSignedFloat(fontid_t fid, uint16_t color, uint16_t bColor, uint8_t iNum, uint8_t fNum, uint16_t x, uint16_t y, float value) { + drawFloat(true, 1, fid, color, bColor, iNum, fNum, x, y, value); } // Draw a char @@ -444,23 +444,23 @@ namespace DWINUI { // x: abscissa of the display // y: ordinate of the display // c: ASCII code of char - void Draw_Char(uint16_t color, uint16_t x, uint16_t y, const char c); - inline void Draw_Char(uint16_t x, uint16_t y, const char c) { Draw_Char(textcolor, x, y, c); }; + void drawChar(uint16_t color, uint16_t x, uint16_t y, const char c); + inline void drawChar(uint16_t x, uint16_t y, const char c) { drawChar(textColor, x, y, c); }; // Draw a char at cursor position and increment cursor - void Draw_Char(uint16_t color, const char c); - inline void Draw_Char(const char c) { Draw_Char(textcolor, c); } + void drawChar(uint16_t color, const char c); + inline void drawChar(const char c) { drawChar(textColor, c); } // Draw a string at cursor position // color: Character color // *string: The string // rlimit: For draw less chars than string length use rlimit - void Draw_String(const char * const string, uint16_t rlimit = 0xFFFF); - void Draw_String(uint16_t color, const char * const string, uint16_t rlimit = 0xFFFF); - inline void Draw_String(FSTR_P string, uint16_t rlimit = 0xFFFF) { - Draw_String(FTOP(string), rlimit); + void drawString(const char * const string, uint16_t rlimit = 0xFFFF); + void drawString(uint16_t color, const char * const string, uint16_t rlimit = 0xFFFF); + inline void drawString(FSTR_P string, uint16_t rlimit = 0xFFFF) { + drawString(FTOP(string), rlimit); } - inline void Draw_String(uint16_t color, FSTR_P string, uint16_t rlimit = 0xFFFF) { - Draw_String(color, FTOP(string), rlimit); + inline void drawString(uint16_t color, FSTR_P string, uint16_t rlimit = 0xFFFF) { + drawString(color, FTOP(string), rlimit); } // Draw a string @@ -469,29 +469,29 @@ namespace DWINUI { // bColor: Background color // x/y: Upper-left coordinate of the string // *string: The string - inline void Draw_String(uint16_t x, uint16_t y, const char * const string) { - dwinDrawString(false, fontid, textcolor, backcolor, x, y, string); + inline void drawString(uint16_t x, uint16_t y, const char * const string) { + dwinDrawString(false, fontID, textColor, backColor, x, y, string); } - inline void Draw_String(uint16_t x, uint16_t y, FSTR_P title) { - dwinDrawString(false, fontid, textcolor, backcolor, x, y, FTOP(title)); + inline void drawString(uint16_t x, uint16_t y, FSTR_P fTitle) { + dwinDrawString(false, fontID, textColor, backColor, x, y, FTOP(fTitle)); } - inline void Draw_String(uint16_t color, uint16_t x, uint16_t y, const char * const string) { - dwinDrawString(false, fontid, color, backcolor, x, y, string); + inline void drawString(uint16_t color, uint16_t x, uint16_t y, const char * const string) { + dwinDrawString(false, fontID, color, backColor, x, y, string); } - inline void Draw_String(uint16_t color, uint16_t x, uint16_t y, FSTR_P title) { - dwinDrawString(false, fontid, color, backcolor, x, y, title); + inline void drawString(uint16_t color, uint16_t x, uint16_t y, FSTR_P fTitle) { + dwinDrawString(false, fontID, color, backColor, x, y, fTitle); } - inline void Draw_String(uint16_t color, uint16_t bgcolor, uint16_t x, uint16_t y, const char * const string) { - dwinDrawString(true, fontid, color, bgcolor, x, y, string); + inline void drawString(uint16_t color, uint16_t bgcolor, uint16_t x, uint16_t y, const char * const string) { + dwinDrawString(true, fontID, color, bgcolor, x, y, string); } - inline void Draw_String(uint16_t color, uint16_t bgcolor, uint16_t x, uint16_t y, FSTR_P title) { - dwinDrawString(true, fontid, color, bgcolor, x, y, title); + inline void drawString(uint16_t color, uint16_t bgcolor, uint16_t x, uint16_t y, FSTR_P fTitle) { + dwinDrawString(true, fontID, color, bgcolor, x, y, fTitle); } - inline void Draw_String(fontid_t fid, uint16_t color, uint16_t bgcolor, uint16_t x, uint16_t y, const char * const string) { + inline void drawString(fontid_t fid, uint16_t color, uint16_t bgcolor, uint16_t x, uint16_t y, const char * const string) { dwinDrawString(true, fid, color, bgcolor, x, y, string); } - inline void Draw_String(fontid_t fid, uint16_t color, uint16_t bgcolor, uint16_t x, uint16_t y, FSTR_P title) { - dwinDrawString(true, fid, color, bgcolor, x, y, title); + inline void drawString(fontid_t fid, uint16_t color, uint16_t bgcolor, uint16_t x, uint16_t y, FSTR_P fTitle) { + dwinDrawString(true, fid, color, bgcolor, x, y, fTitle); } // Draw a centered string using DWIN_WIDTH @@ -501,40 +501,40 @@ namespace DWINUI { // bColor: Background color // y: Upper coordinate of the string // *string: The string - void Draw_CenteredString(bool bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint16_t x1, uint16_t x2, uint16_t y, const char * const string); - inline void Draw_CenteredString(bool bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint16_t y, const char * const string) { - Draw_CenteredString(bShow, fid, color, bColor, 0, DWIN_WIDTH, y, string); + void drawCenteredString(bool bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint16_t x1, uint16_t x2, uint16_t y, const char * const string); + inline void drawCenteredString(bool bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint16_t y, const char * const string) { + drawCenteredString(bShow, fid, color, bColor, 0, DWIN_WIDTH, y, string); } - inline void Draw_CenteredString(bool bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint16_t y, FSTR_P string) { - Draw_CenteredString(bShow, fid, color, bColor, y, FTOP(string)); + inline void drawCenteredString(bool bShow, fontid_t fid, uint16_t color, uint16_t bColor, uint16_t y, FSTR_P string) { + drawCenteredString(bShow, fid, color, bColor, y, FTOP(string)); } - inline void Draw_CenteredString(uint16_t color, uint16_t bcolor, uint16_t y, const char * const string) { - Draw_CenteredString(true, fontid, color, bcolor, y, string); + inline void drawCenteredString(uint16_t color, uint16_t bcolor, uint16_t y, const char * const string) { + drawCenteredString(true, fontID, color, bcolor, y, string); } - inline void Draw_CenteredString(fontid_t fid, uint16_t color, uint16_t y, const char * const string) { - Draw_CenteredString(false, fid, color, backcolor, y, string); + inline void drawCenteredString(fontid_t fid, uint16_t color, uint16_t y, const char * const string) { + drawCenteredString(false, fid, color, backColor, y, string); } - inline void Draw_CenteredString(fontid_t fid, uint16_t color, uint16_t y, FSTR_P title) { - Draw_CenteredString(false, fid, color, backcolor, y, title); + inline void drawCenteredString(fontid_t fid, uint16_t color, uint16_t y, FSTR_P fTitle) { + drawCenteredString(false, fid, color, backColor, y, fTitle); } - inline void Draw_CenteredString(uint16_t color, uint16_t y, const char * const string) { - Draw_CenteredString(false, fontid, color, backcolor, y, string); + inline void drawCenteredString(uint16_t color, uint16_t y, const char * const string) { + drawCenteredString(false, fontID, color, backColor, y, string); } - inline void Draw_CenteredString(uint16_t color, uint16_t y, FSTR_P title) { - Draw_CenteredString(false, fontid, color, backcolor, y, title); + inline void drawCenteredString(uint16_t color, uint16_t y, FSTR_P fTitle) { + drawCenteredString(false, fontID, color, backColor, y, fTitle); } - inline void Draw_CenteredString(uint16_t y, const char * const string) { - Draw_CenteredString(false, fontid, textcolor, backcolor, y, string); + inline void drawCenteredString(uint16_t y, const char * const string) { + drawCenteredString(false, fontID, textColor, backColor, y, string); } - inline void Draw_CenteredString(uint16_t y, FSTR_P title) { - Draw_CenteredString(false, fontid, textcolor, backcolor, y, title); + inline void drawCenteredString(uint16_t y, FSTR_P fTitle) { + drawCenteredString(false, fontID, textColor, backColor, y, fTitle); } // Draw a box // mode: 0=frame, 1=fill, 2=XOR fill // color: Rectangle color // frame: Box coordinates and size - inline void Draw_Box(uint8_t mode, uint16_t color, frame_rect_t frame) { + inline void drawBox(uint8_t mode, uint16_t color, frame_rect_t frame) { dwinDrawBox(mode, color, frame.x, frame.y, frame.w, frame.h); } @@ -543,9 +543,9 @@ namespace DWINUI { // x: abscissa of the center of the circle // y: ordinate of the center of the circle // r: circle radius - void Draw_Circle(uint16_t color, uint16_t x,uint16_t y,uint8_t r); - inline void Draw_Circle(uint16_t color, uint8_t r) { - Draw_Circle(color, cursor.x, cursor.y, r); + void drawCircle(uint16_t color, uint16_t x,uint16_t y,uint8_t r); + inline void drawCircle(uint16_t color, uint8_t r) { + drawCircle(color, cursor.x, cursor.y, r); } // Draw a checkbox @@ -553,9 +553,9 @@ namespace DWINUI { // bColor: Background color // x/y: Upper-left point // checked : 0 : unchecked, 1 : checked - void Draw_Checkbox(uint16_t color, uint16_t bcolor, uint16_t x, uint16_t y, bool checked); - inline void Draw_Checkbox(uint16_t x, uint16_t y, bool checked=false) { - Draw_Checkbox(textcolor, backcolor, x, y, checked); + void drawCheckbox(uint16_t color, uint16_t bcolor, uint16_t x, uint16_t y, bool checked); + inline void drawCheckbox(uint16_t x, uint16_t y, bool checked=false) { + drawCheckbox(textColor, backColor, x, y, checked); } // Color Interpolator @@ -568,14 +568,14 @@ namespace DWINUI { // ------------------------- Buttons ------------------------------// - void Draw_Button(uint16_t color, uint16_t bcolor, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, const char * const caption); - inline void Draw_Button(uint16_t color, uint16_t bcolor, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, FSTR_P caption) { - Draw_Button(color, bcolor, x1, y1, x2, y2, FTOP(caption)); + void drawButton(uint16_t color, uint16_t bcolor, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, const char * const caption); + inline void drawButton(uint16_t color, uint16_t bcolor, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, FSTR_P caption) { + drawButton(color, bcolor, x1, y1, x2, y2, FTOP(caption)); } - inline void Draw_Button(FSTR_P caption, uint16_t x, uint16_t y) { - Draw_Button(textcolor, buttoncolor, x, y, x + 99, y + 37, caption); + inline void drawButton(FSTR_P caption, uint16_t x, uint16_t y) { + drawButton(textColor, buttonColor, x, y, x + 99, y + 37, caption); } - void Draw_Button(uint8_t id, uint16_t x, uint16_t y); + void drawButton(uint8_t id, uint16_t x, uint16_t y); // -------------------------- Extra -------------------------------// @@ -584,9 +584,9 @@ namespace DWINUI { // x: abscissa of the center of the circle // y: ordinate of the center of the circle // r: circle radius - void Draw_FillCircle(uint16_t bcolor, uint16_t x,uint16_t y,uint8_t r); - inline void Draw_FillCircle(uint16_t bcolor, uint8_t r) { - Draw_FillCircle(bcolor, cursor.x, cursor.y, r); + void drawFillCircle(uint16_t bcolor, uint16_t x,uint16_t y,uint8_t r); + inline void drawFillCircle(uint16_t bcolor, uint8_t r) { + drawFillCircle(bcolor, cursor.x, cursor.y, r); } // Color Interpolator through Red->Yellow->Green->Blue @@ -600,7 +600,7 @@ namespace DWINUI { // length: Bytes to write // data: address of the buffer with data inline void WriteToSRAM(uint16_t addr, uint16_t length, uint8_t *data) { - DWIN_WriteToMem(0x5A, addr, length, data); + dwinWriteToMem(0x5A, addr, length, data); } // Write buffer data to the Flash @@ -608,11 +608,11 @@ namespace DWINUI { // length: Bytes to write // data: address of the buffer with data inline void WriteToFlash(uint16_t addr, uint16_t length, uint8_t *data) { - DWIN_WriteToMem(0xA5, addr, length, data); + dwinWriteToMem(0xA5, addr, length, data); } // Clear by filling the area with background color // Area (0, TITLE_HEIGHT, DWIN_WIDTH, STATUS_Y - 1) - void ClearMainArea(); + void clearMainArea(); }; diff --git a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp index c6d014e53c80..4dd3d7a369ea 100644 --- a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp +++ b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp @@ -46,38 +46,38 @@ #include "../../../module/probe.h" #endif -ESDiagClass ESDiag; +ESDiag esDiag; void draw_es_label(FSTR_P const flabel=nullptr) { DWINUI::cursor.x = 40; - if (flabel) DWINUI::Draw_String(F(flabel)); - DWINUI::Draw_String(F(": ")); - DWINUI::MoveBy(0, 25); + if (flabel) DWINUI::drawString(F(flabel)); + DWINUI::drawString(F(": ")); + DWINUI::moveBy(0, 25); } void draw_es_state(const bool is_hit) { const uint8_t LM = 130; DWINUI::cursor.x = LM; - dwinDrawRectangle(1, HMI_data.PopupBg_Color, LM, DWINUI::cursor.y, LM + 100, DWINUI::cursor.y + 20); - is_hit ? DWINUI::Draw_String(RGB(31,31,16), F(STR_ENDSTOP_HIT)) : DWINUI::Draw_String(RGB(16,63,16), F(STR_ENDSTOP_OPEN)); - DWINUI::MoveBy(0, 25); + dwinDrawRectangle(1, hmiData.colorPopupBg, LM, DWINUI::cursor.y, LM + 100, DWINUI::cursor.y + 20); + is_hit ? DWINUI::drawString(RGB(31,31,16), F(STR_ENDSTOP_HIT)) : DWINUI::drawString(RGB(16,63,16), F(STR_ENDSTOP_OPEN)); + DWINUI::moveBy(0, 25); } -void ESDiagClass::Draw() { - Title.ShowCaption(GET_TEXT_F(MSG_ENDSTOP_TEST)); - DWINUI::ClearMainArea(); - Draw_Popup_Bkgd(); - DWINUI::Draw_Button(BTN_Continue, 86, 250); +void ESDiag::draw() { + title.showCaption(GET_TEXT_F(MSG_ENDSTOP_TEST)); + DWINUI::clearMainArea(); + drawPopupBkgd(); + DWINUI::drawButton(BTN_Continue, 86, 250); DWINUI::cursor.y = 80; #define ES_LABEL(S) draw_es_label(F(STR_##S)) TERN_(USE_X_MIN, ES_LABEL(X_MIN)); TERN_(USE_X_MAX, ES_LABEL(X_MAX)); TERN_(USE_Y_MIN, ES_LABEL(Y_MIN)); TERN_(USE_Y_MAX, ES_LABEL(Y_MAX)); TERN_(HAS_Z_MIN_PIN, ES_LABEL(Z_MIN)); TERN_(USE_Z_MAX, ES_LABEL(Z_MAX)); TERN_(HAS_FILAMENT_SENSOR, draw_es_label(F(STR_FILAMENT))); - Update(); + update(); } -void ESDiagClass::Update() { +void ESDiag::update() { DWINUI::cursor.y = 80; #define ES_REPORT(S) draw_es_state(READ(S##_PIN) == S##_ENDSTOP_HIT_STATE) TERN_(USE_X_MIN, ES_REPORT(X_MIN)); TERN_(USE_X_MAX, ES_REPORT(X_MAX)); diff --git a/Marlin/src/lcd/e3v2/proui/endstop_diag.h b/Marlin/src/lcd/e3v2/proui/endstop_diag.h index 236262282e11..d4a98d5f1a86 100644 --- a/Marlin/src/lcd/e3v2/proui/endstop_diag.h +++ b/Marlin/src/lcd/e3v2/proui/endstop_diag.h @@ -28,10 +28,10 @@ * Date: 2023/05/10 */ -class ESDiagClass { +class ESDiag { public: - static void Draw(); - static void Update(); + static void draw(); + static void update(); }; -extern ESDiagClass ESDiag; +extern ESDiag esDiag; diff --git a/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp b/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp index c0b12c5946fd..8017847538e4 100644 --- a/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp +++ b/Marlin/src/lcd/e3v2/proui/gcode_preview.cpp @@ -200,27 +200,27 @@ void Preview_DrawFromSD() { if (Has_Preview()) { MString<45> buf; char str_1[6] = "", str_2[6] = "", str_3[6] = ""; - dwinDrawRectangle(1, HMI_data.Background_Color, 0, 0, DWIN_WIDTH, STATUS_Y - 1); + dwinDrawRectangle(1, hmiData.colorBackground, 0, 0, DWIN_WIDTH, STATUS_Y - 1); if (fileprop.time) { buf.setf(F("Estimated time: %i:%02i"), (uint16_t)fileprop.time / 3600, ((uint16_t)fileprop.time % 3600) / 60); - DWINUI::Draw_String(20, 10, &buf); + DWINUI::drawString(20, 10, &buf); } if (fileprop.filament) { buf.setf(F("Filament used: %s m"), dtostrf(fileprop.filament, 1, 2, str_1)); - DWINUI::Draw_String(20, 30, &buf); + DWINUI::drawString(20, 30, &buf); } if (fileprop.layer) { buf.setf(F("Layer height: %s mm"), dtostrf(fileprop.layer, 1, 2, str_1)); - DWINUI::Draw_String(20, 50, &buf); + DWINUI::drawString(20, 50, &buf); } if (fileprop.width) { buf.setf(F("Volume: %sx%sx%s mm"), dtostrf(fileprop.width, 1, 1, str_1), dtostrf(fileprop.length, 1, 1, str_2), dtostrf(fileprop.height, 1, 1, str_3)); - DWINUI::Draw_String(20, 70, &buf); + DWINUI::drawString(20, 70, &buf); } - DWINUI::Draw_Button(BTN_Print, 26, 290); - DWINUI::Draw_Button(BTN_Cancel, 146, 290); + DWINUI::drawButton(BTN_Print, 26, 290); + DWINUI::drawButton(BTN_Cancel, 146, 290); Preview_Show(); - Draw_Select_Highlight(true, 290); + drawSelectHighlight(true, 290); dwinUpdateLCD(); } else { diff --git a/Marlin/src/lcd/e3v2/proui/lockscreen.cpp b/Marlin/src/lcd/e3v2/proui/lockscreen.cpp index 50874e0fc2bb..ebe3568c9879 100644 --- a/Marlin/src/lcd/e3v2/proui/lockscreen.cpp +++ b/Marlin/src/lcd/e3v2/proui/lockscreen.cpp @@ -36,39 +36,39 @@ #include "dwin.h" #include "lockscreen.h" -LockScreenClass lockScreen; +LockScreen lockScreen; -uint8_t LockScreenClass::lock_pos = 0; -bool LockScreenClass::unlocked = false; -uint8_t LockScreenClass::rprocess = 0; +uint8_t LockScreen::lock_pos = 0; +bool LockScreen::unlocked = false; +uint8_t LockScreen::rprocess = 0; -void LockScreenClass::init() { +void LockScreen::init() { lock_pos = 0; unlocked = false; draw(); } -void LockScreenClass::draw() { - Title.SetCaption(GET_TEXT_F(MSG_LOCKSCREEN)); - DWINUI::ClearMainArea(); - DWINUI::Draw_Icon(ICON_LOGO, 71, 120); // CREALITY logo - DWINUI::Draw_CenteredString(Color_White, 180, GET_TEXT_F(MSG_LOCKSCREEN_LOCKED)); - DWINUI::Draw_CenteredString(Color_White, 200, GET_TEXT_F(MSG_LOCKSCREEN_UNLOCK)); - DWINUI::Draw_CenteredString(Color_White, 240, F("-> | <-")); - dwinDrawBox(1, HMI_data.Barfill_Color, 0, 260, DWIN_WIDTH, 20); - dwinDrawVLine(Color_Yellow, lock_pos * DWIN_WIDTH / 255, 260, 20); +void LockScreen::draw() { + title.setCaption(GET_TEXT_F(MSG_LOCKSCREEN)); + DWINUI::clearMainArea(); + DWINUI::drawIcon(ICON_LOGO, 71, 120); // CREALITY logo + DWINUI::drawCenteredString(COLOR_WHITE, 180, GET_TEXT_F(MSG_LOCKSCREEN_LOCKED)); + DWINUI::drawCenteredString(COLOR_WHITE, 200, GET_TEXT_F(MSG_LOCKSCREEN_UNLOCK)); + DWINUI::drawCenteredString(COLOR_WHITE, 240, F("-> | <-")); + dwinDrawBox(1, hmiData.colorBarfill, 0, 260, DWIN_WIDTH, 20); + dwinDrawVLine(COLOR_YELLOW, lock_pos * DWIN_WIDTH / 255, 260, 20); dwinUpdateLCD(); } -void LockScreenClass::onEncoder(EncoderState encoder_diffState) { +void LockScreen::onEncoder(EncoderState encoder_diffState) { switch (encoder_diffState) { case ENCODER_DIFF_CW: lock_pos += 8; break; case ENCODER_DIFF_CCW: lock_pos -= 8; break; case ENCODER_DIFF_ENTER: unlocked = (lock_pos == 128); break; default: break; } - dwinDrawBox(1, HMI_data.Barfill_Color, 0, 260, DWIN_WIDTH, 20); - dwinDrawVLine(Color_Yellow, lock_pos * DWIN_WIDTH / 255, 260, 20); + dwinDrawBox(1, hmiData.colorBarfill, 0, 260, DWIN_WIDTH, 20); + dwinDrawVLine(COLOR_YELLOW, lock_pos * DWIN_WIDTH / 255, 260, 20); dwinUpdateLCD(); } diff --git a/Marlin/src/lcd/e3v2/proui/lockscreen.h b/Marlin/src/lcd/e3v2/proui/lockscreen.h index cb75f2c7c0db..9feb91c25b41 100644 --- a/Marlin/src/lcd/e3v2/proui/lockscreen.h +++ b/Marlin/src/lcd/e3v2/proui/lockscreen.h @@ -31,7 +31,7 @@ #include "../common/encoder.h" #include -class LockScreenClass { +class LockScreen { private: static bool unlocked; static uint8_t lock_pos; @@ -43,4 +43,4 @@ class LockScreenClass { static bool isUnlocked() { return unlocked; } }; -extern LockScreenClass lockScreen; +extern LockScreen lockScreen; diff --git a/Marlin/src/lcd/e3v2/proui/menus.cpp b/Marlin/src/lcd/e3v2/proui/menus.cpp index 54892b6acbb0..347130743c63 100644 --- a/Marlin/src/lcd/e3v2/proui/menus.cpp +++ b/Marlin/src/lcd/e3v2/proui/menus.cpp @@ -37,135 +37,135 @@ int8_t MenuItemTotal = 0; int8_t MenuItemCount = 0; -CustomMenuItemClass** MenuItems = nullptr; -MenuClass *CurrentMenu = nullptr; -MenuClass *PreviousMenu = nullptr; -MenuData_t MenuData; +CustomMenuItem** menuItems = nullptr; +Menu *currentMenu = nullptr; +Menu *previousMenu = nullptr; +MenuData_t menuData; // Menuitem Drawing functions ================================================= -void Draw_Title(TitleClass* title) { - dwinDrawRectangle(1, HMI_data.TitleBg_Color, 0, 0, DWIN_WIDTH - 1, TITLE_HEIGHT - 1); - if (title->frameid) - DWIN_Frame_AreaCopy(title->frameid, title->frame.left, title->frame.top, title->frame.right, title->frame.bottom, 14, (TITLE_HEIGHT - (title->frame.bottom - title->frame.top)) / 2 - 1); +void drawTitle(Title* aTitle) { + dwinDrawRectangle(1, hmiData.colorTitleBg, 0, 0, DWIN_WIDTH - 1, TITLE_HEIGHT - 1); + if (aTitle->frameid) + dwinFrameAreaCopy(aTitle->frameid, aTitle->frame.left, aTitle->frame.top, aTitle->frame.right, aTitle->frame.bottom, 14, (TITLE_HEIGHT - (aTitle->frame.bottom - aTitle->frame.top)) / 2 - 1); else #if ENABLED(TITLE_CENTERED) - DWINUI::Draw_CenteredString(false, DWIN_FONT_HEAD, HMI_data.TitleTxt_Color, HMI_data.TitleBg_Color, (TITLE_HEIGHT - DWINUI::fontHeight(DWIN_FONT_HEAD)) / 2 - 1, title->caption); + DWINUI::drawCenteredString(false, DWIN_FONT_HEAD, hmiData.colorTitleTxt, hmiData.colorTitleBg, (TITLE_HEIGHT - DWINUI::fontHeight(DWIN_FONT_HEAD)) / 2 - 1, aTitle->caption); #else - dwinDrawString(false, DWIN_FONT_HEAD, HMI_data.TitleTxt_Color, HMI_data.TitleBg_Color, 14, (TITLE_HEIGHT - DWINUI::fontHeight(DWIN_FONT_HEAD)) / 2 - 1, title->caption); + dwinDrawString(false, DWIN_FONT_HEAD, hmiData.colorTitleTxt, hmiData.colorTitleBg, 14, (TITLE_HEIGHT - DWINUI::fontHeight(DWIN_FONT_HEAD)) / 2 - 1, aTitle->caption); #endif } -void Draw_Menu_Cursor(const int8_t line) { +void drawMenuCursor(const int8_t line) { const uint16_t ypos = MYPOS(line); - DWINUI::Draw_Box(1, HMI_data.Cursor_Color, {0, ypos, 15, MLINE - 1}); + DWINUI::drawBox(1, hmiData.colorCursor, {0, ypos, 15, MLINE - 1}); } -void Erase_Menu_Cursor(const int8_t line) { +void eraseMenuCursor(const int8_t line) { const uint16_t ypos = MYPOS(line); - DWINUI::Draw_Box(1, HMI_data.Background_Color, {0, ypos, 15, MLINE - 1}); + DWINUI::drawBox(1, hmiData.colorBackground, {0, ypos, 15, MLINE - 1}); } -void Erase_Menu_Text(const int8_t line) { +void eraseMenuText(const int8_t line) { if (line < 0 || line >= TROWS) return; const uint16_t ypos = MYPOS(line) + 1; - DWINUI::Draw_Box(1, HMI_data.Background_Color, {LBLX, ypos, DWIN_WIDTH - LBLX, MLINE - 2}); + DWINUI::drawBox(1, hmiData.colorBackground, {LBLX, ypos, DWIN_WIDTH - LBLX, MLINE - 2}); } -void Draw_Menu_Line(const uint8_t line, const uint8_t icon/*=0*/, const char * const label/*=nullptr*/, bool more/*=false*/, bool selected/*=false*/) { - if (icon) DWINUI::Draw_Icon(icon, ICOX, MBASE(line) - 3); - if (label) DWINUI::Draw_String(LBLX, MBASE(line) - 1, (char*)label); - if (more) DWINUI::Draw_Icon(ICON_More, VALX + 16, MBASE(line) - 3); - if (selected) Draw_Menu_Cursor(line); - dwinDrawHLine(HMI_data.SplitLine_Color, 16, MYPOS(line + 1), 240); +void drawMenuLine(const uint8_t line, const uint8_t icon/*=0*/, const char * const label/*=nullptr*/, bool more/*=false*/, bool selected/*=false*/) { + if (icon) DWINUI::drawIcon(icon, ICOX, MBASE(line) - 3); + if (label) DWINUI::drawString(LBLX, MBASE(line) - 1, (char*)label); + if (more) DWINUI::drawIcon(ICON_More, VALX + 16, MBASE(line) - 3); + if (selected) drawMenuCursor(line); + dwinDrawHLine(hmiData.colorSplitLine, 16, MYPOS(line + 1), 240); } -void Draw_Menu_Line(const uint8_t line, const uint8_t icon/*=0*/, FSTR_P label/*=nullptr*/, bool more/*=false*/, bool selected/*=false*/) { - Draw_Menu_Line(line, icon, FTOP(label), more, selected); +void drawMenuLine(const uint8_t line, const uint8_t icon/*=0*/, FSTR_P label/*=nullptr*/, bool more/*=false*/, bool selected/*=false*/) { + drawMenuLine(line, icon, FTOP(label), more, selected); } -void Draw_Chkb_Line(const uint8_t line, const bool checked) { - DWINUI::Draw_Checkbox(HMI_data.Text_Color, HMI_data.Background_Color, VALX + 3 * DWINUI::fontWidth(), MBASE(line) - 1, checked); +void drawCheckboxLine(const uint8_t line, const bool checked) { + DWINUI::drawCheckbox(hmiData.colorText, hmiData.colorBackground, VALX + 3 * DWINUI::fontWidth(), MBASE(line) - 1, checked); } -void Show_Chkb_Line(const bool checked) { - const uint8_t line = CurrentMenu->line(); - DWINUI::Draw_Checkbox(HMI_data.Text_Color, HMI_data.Background_Color, VALX + 3 * DWINUI::fontWidth(), MBASE(line) - 1, checked); +void showCheckboxLine(const bool checked) { + const uint8_t line = currentMenu->line(); + DWINUI::drawCheckbox(hmiData.colorText, hmiData.colorBackground, VALX + 3 * DWINUI::fontWidth(), MBASE(line) - 1, checked); dwinUpdateLCD(); } -void Toggle_Chkb_Line(bool &checked) { +void toggleCheckboxLine(bool &checked) { checked = !checked; - Show_Chkb_Line(checked); + showCheckboxLine(checked); } -void Draw_Menu_IntValue(uint16_t bcolor, const uint8_t line, uint8_t iNum, const int32_t value/*=0*/) { - DWINUI::Draw_Signed_Int(HMI_data.Text_Color, bcolor, iNum , VALX, MBASE(line) - 1, value); +void drawMenuIntValue(uint16_t bcolor, const uint8_t line, uint8_t iNum, const int32_t value/*=0*/) { + DWINUI::drawSignedInt(hmiData.colorText, bcolor, iNum , VALX, MBASE(line) - 1, value); } -void onDrawMenuItem(MenuItemClass* menuitem, int8_t line) { - if (menuitem->icon) DWINUI::Draw_Icon(menuitem->icon, ICOX, MBASE(line) - 3); +void onDrawMenuItem(MenuItem* menuitem, int8_t line) { + if (menuitem->icon) DWINUI::drawIcon(menuitem->icon, ICOX, MBASE(line) - 3); if (menuitem->frameid) - DWIN_Frame_AreaCopy(menuitem->frameid, menuitem->frame.left, menuitem->frame.top, menuitem->frame.right, menuitem->frame.bottom, LBLX, MBASE(line)); + dwinFrameAreaCopy(menuitem->frameid, menuitem->frame.left, menuitem->frame.top, menuitem->frame.right, menuitem->frame.bottom, LBLX, MBASE(line)); else if (menuitem->caption) - DWINUI::Draw_String(LBLX, MBASE(line) - 1, menuitem->caption); - dwinDrawHLine(HMI_data.SplitLine_Color, 16, MYPOS(line + 1), 240); + DWINUI::drawString(LBLX, MBASE(line) - 1, menuitem->caption); + dwinDrawHLine(hmiData.colorSplitLine, 16, MYPOS(line + 1), 240); } -void onDrawSubMenu(MenuItemClass* menuitem, int8_t line) { +void onDrawSubMenu(MenuItem* menuitem, int8_t line) { onDrawMenuItem(menuitem, line); - DWINUI::Draw_Icon(ICON_More, VALX + 16, MBASE(line) - 3); + DWINUI::drawIcon(ICON_More, VALX + 16, MBASE(line) - 3); } -void onDrawIntMenu(MenuItemClass* menuitem, int8_t line, int32_t value) { +void onDrawIntMenu(MenuItem* menuitem, int8_t line, int32_t value) { onDrawMenuItem(menuitem, line); - Draw_Menu_IntValue(HMI_data.Background_Color, line, 4, value); + drawMenuIntValue(hmiData.colorBackground, line, 4, value); } -void onDrawPIntMenu(MenuItemClass* menuitem, int8_t line) { - const int16_t value = *(int16_t*)static_cast(menuitem)->value; +void onDrawPIntMenu(MenuItem* menuitem, int8_t line) { + const int16_t value = *(int16_t*)static_cast(menuitem)->value; onDrawIntMenu(menuitem, line, value); } -void onDrawPInt8Menu(MenuItemClass* menuitem, int8_t line) { - const uint8_t value = *(uint8_t*)static_cast(menuitem)->value; +void onDrawPInt8Menu(MenuItem* menuitem, int8_t line) { + const uint8_t value = *(uint8_t*)static_cast(menuitem)->value; onDrawIntMenu(menuitem, line, value); } -void onDrawPInt32Menu(MenuItemClass* menuitem, int8_t line) { - const uint32_t value = *(uint32_t*)static_cast(menuitem)->value; +void onDrawPInt32Menu(MenuItem* menuitem, int8_t line) { + const uint32_t value = *(uint32_t*)static_cast(menuitem)->value; onDrawIntMenu(menuitem, line, value); } -void onDrawFloatMenu(MenuItemClass* menuitem, int8_t line, uint8_t dp, const float value) { +void onDrawFloatMenu(MenuItem* menuitem, int8_t line, uint8_t dp, const float value) { onDrawMenuItem(menuitem, line); - DWINUI::Draw_Signed_Float(HMI_data.Text_Color, HMI_data.Background_Color, 3, dp, VALX - dp * DWINUI::fontWidth(DWIN_FONT_MENU), MBASE(line), value); + DWINUI::drawSignedFloat(hmiData.colorText, hmiData.colorBackground, 3, dp, VALX - dp * DWINUI::fontWidth(DWIN_FONT_MENU), MBASE(line), value); } -void onDrawPFloatMenu(MenuItemClass* menuitem, int8_t line, uint8_t dp) { - const float value = *(float*)static_cast(menuitem)->value; +void onDrawPFloatMenu(MenuItem* menuitem, int8_t line, uint8_t dp) { + const float value = *(float*)static_cast(menuitem)->value; onDrawFloatMenu(menuitem, line, dp, value); } -void onDrawChkbMenu(MenuItemClass* menuitem, int8_t line, bool checked) { +void onDrawChkbMenu(MenuItem* menuitem, int8_t line, bool checked) { onDrawMenuItem(menuitem, line); - Draw_Chkb_Line(line, checked); + drawCheckboxLine(line, checked); } -void onDrawChkbMenu(MenuItemClass* menuitem, int8_t line) { - const bool val = *(bool*)static_cast(menuitem)->value; +void onDrawChkbMenu(MenuItem* menuitem, int8_t line) { + const bool val = *(bool*)static_cast(menuitem)->value; onDrawChkbMenu(menuitem, line, val); } void DrawItemEdit(const bool selected) { - const uint16_t bcolor = selected ? HMI_data.Selected_Color : HMI_data.Background_Color; - const uint8_t iNum = 4 - ((MenuData.dp > 0) ? (MenuData.dp - 1) : 0); + const uint16_t bcolor = selected ? hmiData.colorSelected : hmiData.colorBackground; + const uint8_t iNum = 4 - ((menuData.dp > 0) ? (menuData.dp - 1) : 0); switch (checkkey) { - case SetIntNoDraw: if (MenuData.LiveUpdate) MenuData.LiveUpdate(); break; - case SetInt: - case SetPInt: DWINUI::Draw_Signed_Int(HMI_data.Text_Color, bcolor, iNum , VALX, MBASE(CurrentMenu->line()) - 1, MenuData.Value); break; - case SetFloat: - case SetPFloat: DWINUI::Draw_Signed_Float(HMI_data.Text_Color, bcolor, iNum, MenuData.dp, VALX - 2 * DWINUI::fontWidth(), MBASE(CurrentMenu->line()), MenuData.Value / POW(10, MenuData.dp)); break; + case ID_SetIntNoDraw: if (menuData.liveUpdate) menuData.liveUpdate(); break; + case ID_SetInt: + case ID_SetPInt: DWINUI::drawSignedInt(hmiData.colorText, bcolor, iNum , VALX, MBASE(currentMenu->line()) - 1, menuData.value); break; + case ID_SetFloat: + case ID_SetPFloat: DWINUI::drawSignedFloat(hmiData.colorText, bcolor, iNum, menuData.dp, VALX - 2 * DWINUI::fontWidth(), MBASE(currentMenu->line()), menuData.value / POW(10, menuData.dp)); break; default: break; } } @@ -180,16 +180,16 @@ void DrawItemEdit(const bool selected) { // hi: high limit // dp: decimal places, 0 for integers // val: value / scaled value -// LiveUpdate: live update function when the encoder changes -// Apply: update function when the encoder is pressed -void SetOnClick(uint8_t process, const int32_t lo, const int32_t hi, uint8_t dp, const int32_t val, void (*Apply)()/*=nullptr*/, void (*LiveUpdate)()/*=nullptr*/) { +// liveUpdate: live update function when the encoder changes +// apply: update function when the encoder is pressed +void setOnClick(uint8_t process, const int32_t lo, const int32_t hi, uint8_t dp, const int32_t val, void (*apply)()/*=nullptr*/, void (*liveUpdate)()/*=nullptr*/) { checkkey = process; - MenuData.MinValue = lo; - MenuData.MaxValue = hi; - MenuData.dp = dp; - MenuData.Apply = Apply; - MenuData.LiveUpdate = LiveUpdate; - MenuData.Value = constrain(val, lo, hi); + menuData.minValue = lo; + menuData.maxValue = hi; + menuData.dp = dp; + menuData.apply = apply; + menuData.liveUpdate = liveUpdate; + menuData.value = constrain(val, lo, hi); encoderRate.enabled = true; } @@ -198,10 +198,10 @@ void SetOnClick(uint8_t process, const int32_t lo, const int32_t hi, uint8_t dp, // lo: scaled low limit // hi: scaled high limit // val: value -// LiveUpdate: live update function when the encoder changes -// Apply: update function when the encoder is pressed -void SetValueOnClick(uint8_t process, const int32_t lo, const int32_t hi, const int32_t val, void (*Apply)()/*=nullptr*/, void (*LiveUpdate)()/*=nullptr*/) { - SetOnClick(process, lo, hi, 0, val, Apply, LiveUpdate); +// liveUpdate: live update function when the encoder changes +// apply: update function when the encoder is pressed +void setValueOnClick(uint8_t process, const int32_t lo, const int32_t hi, const int32_t val, void (*apply)()/*=nullptr*/, void (*liveUpdate)()/*=nullptr*/) { + setOnClick(process, lo, hi, 0, val, apply, liveUpdate); DrawItemEdit(true); } @@ -210,11 +210,11 @@ void SetValueOnClick(uint8_t process, const int32_t lo, const int32_t hi, const // lo: scaled low limit // hi: scaled high limit // val: value -// LiveUpdate: live update function when the encoder changes -// Apply: update function when the encoder is pressed -void SetValueOnClick(uint8_t process, const float lo, const float hi, uint8_t dp, const float val, void (*Apply)()/*=nullptr*/, void (*LiveUpdate)()/*=nullptr*/) { +// liveUpdate: live update function when the encoder changes +// apply: update function when the encoder is pressed +void setValueOnClick(uint8_t process, const float lo, const float hi, uint8_t dp, const float val, void (*apply)()/*=nullptr*/, void (*liveUpdate)()/*=nullptr*/) { const int32_t value = round(val * POW(10, dp)); - SetOnClick(process, lo * POW(10, dp), hi * POW(10, dp), dp, value, Apply, LiveUpdate); + setOnClick(process, lo * POW(10, dp), hi * POW(10, dp), dp, value, apply, liveUpdate); DrawItemEdit(true); } @@ -222,21 +222,21 @@ void SetValueOnClick(uint8_t process, const float lo, const float hi, uint8_t dp // lo: scaled low limit // hi: scaled high limit // val: value -// LiveUpdate: live update function when the encoder changes -// Apply: update function when the encoder is pressed -void SetIntOnClick(const int32_t lo, const int32_t hi, const int32_t val, void (*Apply)()/*=nullptr*/, void (*LiveUpdate)()/*=nullptr*/) { - SetValueOnClick(SetInt, lo, hi, val, Apply, LiveUpdate); +// liveUpdate: live update function when the encoder changes +// apply: update function when the encoder is pressed +void setIntOnClick(const int32_t lo, const int32_t hi, const int32_t val, void (*apply)()/*=nullptr*/, void (*liveUpdate)()/*=nullptr*/) { + setValueOnClick(ID_SetInt, lo, hi, val, apply, liveUpdate); } // Generic onclick event for set pointer to 16 bit uinteger values // lo: low limit // hi: high limit -// LiveUpdate: live update function when the encoder changes -// Apply: update function when the encoder is pressed -void SetPIntOnClick(const int32_t lo, const int32_t hi, void (*Apply)()/*=nullptr*/, void (*LiveUpdate)()/*=nullptr*/) { - MenuData.P_Int = (int16_t*)static_cast(CurrentMenu->SelectedItem())->value; - const int32_t value = *MenuData.P_Int; - SetValueOnClick(SetPInt, lo, hi, value, Apply, LiveUpdate); +// liveUpdate: live update function when the encoder changes +// apply: update function when the encoder is pressed +void setPIntOnClick(const int32_t lo, const int32_t hi, void (*apply)()/*=nullptr*/, void (*liveUpdate)()/*=nullptr*/) { + menuData.intPtr = (int16_t*)static_cast(currentMenu->selectedItem())->value; + const int32_t value = *menuData.intPtr; + setValueOnClick(ID_SetPInt, lo, hi, value, apply, liveUpdate); } // Generic onclick event for float values @@ -245,31 +245,31 @@ void SetPIntOnClick(const int32_t lo, const int32_t hi, void (*Apply)()/*=nullpt // hi: high limit // dp: decimal places // val: value -void SetFloatOnClick(const float lo, const float hi, uint8_t dp, const float val, void (*Apply)()/*=nullptr*/, void (*LiveUpdate)()/*=nullptr*/) { - SetValueOnClick(SetFloat, lo, hi, dp, val, Apply, LiveUpdate); +void setFloatOnClick(const float lo, const float hi, uint8_t dp, const float val, void (*apply)()/*=nullptr*/, void (*liveUpdate)()/*=nullptr*/) { + setValueOnClick(ID_SetFloat, lo, hi, dp, val, apply, liveUpdate); } // Generic onclick event for set pointer to float values // lo: low limit // hi: high limit -// LiveUpdate: live update function when the encoder changes -// Apply: update function when the encoder is pressed -void SetPFloatOnClick(const float lo, const float hi, uint8_t dp, void (*Apply)()/*=nullptr*/, void (*LiveUpdate)()/*=nullptr*/) { - MenuData.P_Float = (float*)static_cast(CurrentMenu->SelectedItem())->value; - SetValueOnClick(SetPFloat, lo, hi, dp, *MenuData.P_Float, Apply, LiveUpdate); +// liveUpdate: live update function when the encoder changes +// apply: update function when the encoder is pressed +void setPFloatOnClick(const float lo, const float hi, uint8_t dp, void (*apply)()/*=nullptr*/, void (*liveUpdate)()/*=nullptr*/) { + menuData.floatPtr = (float*)static_cast(currentMenu->selectedItem())->value; + setValueOnClick(ID_SetPFloat, lo, hi, dp, *menuData.floatPtr, apply, liveUpdate); } // HMI Control functions ====================================================== // Generic menu control using the encoder -void HMI_Menu() { +void hmiMenu() { EncoderState encoder_diffState = get_encoder_state(); - if (CurrentMenu) { + if (currentMenu) { if (encoder_diffState == ENCODER_DIFF_NO) return; if (encoder_diffState == ENCODER_DIFF_ENTER) - CurrentMenu->onClick(); + currentMenu->onClick(); else - CurrentMenu->onScroll(encoder_diffState == ENCODER_DIFF_CW); + currentMenu->onScroll(encoder_diffState == ENCODER_DIFF_CW); } } @@ -279,283 +279,283 @@ void HMI_Menu() { // 0 : no change // 1 : live change // 2 : apply change -int8_t HMI_Get(bool draw) { - const int32_t lo = MenuData.MinValue; - const int32_t hi = MenuData.MaxValue; - const int32_t cval = MenuData.Value; +int8_t hmiGet(bool draw) { + const int32_t lo = menuData.minValue; + const int32_t hi = menuData.maxValue; + const int32_t cval = menuData.value; EncoderState encoder_diffState = TERN(SMOOTH_ENCODER_MENUITEMS, get_encoder_state(), encoderReceiveAnalyze()); if (encoder_diffState != ENCODER_DIFF_NO) { - if (applyEncoder(encoder_diffState, MenuData.Value)) { + if (applyEncoder(encoder_diffState, menuData.value)) { encoderRate.enabled = false; if (draw) DrawItemEdit(false); - checkkey = Menu; + checkkey = ID_Menu; return 2; } - LIMIT(MenuData.Value, lo, hi); + LIMIT(menuData.value, lo, hi); } - const bool change = cval != MenuData.Value; + const bool change = cval != menuData.value; if (change) DrawItemEdit(true); return int8_t(change); } // Set and draw a value using the encoder -void HMI_SetDraw() { - int8_t val = HMI_Get(true); +void hmiSetDraw() { + int8_t val = hmiGet(true); switch (val) { case 0: return; - case 1: if (MenuData.LiveUpdate) MenuData.LiveUpdate(); break; - case 2: if (MenuData.Apply) MenuData.Apply(); break; + case 1: if (menuData.liveUpdate) menuData.liveUpdate(); break; + case 2: if (menuData.apply) menuData.apply(); break; } } // Set an value without drawing -void HMI_SetNoDraw() { - int8_t val = HMI_Get(false); +void hmiSetNoDraw() { + int8_t val = hmiGet(false); switch (val) { case 0: return; - case 1: if (MenuData.LiveUpdate) MenuData.LiveUpdate(); break; - case 2: if (MenuData.Apply) MenuData.Apply(); break; + case 1: if (menuData.liveUpdate) menuData.liveUpdate(); break; + case 2: if (menuData.apply) menuData.apply(); break; } } // Set an integer pointer variable using the encoder -void HMI_SetPInt() { - int8_t val = HMI_Get(true); +void hmiSetPInt() { + int8_t val = hmiGet(true); switch (val) { case 0: return; - case 1: if (MenuData.LiveUpdate) MenuData.LiveUpdate(); break; - case 2: *MenuData.P_Int = MenuData.Value; if (MenuData.Apply) MenuData.Apply(); break; + case 1: if (menuData.liveUpdate) menuData.liveUpdate(); break; + case 2: *menuData.intPtr = menuData.value; if (menuData.apply) menuData.apply(); break; } } // Set a scaled float pointer variable using the encoder -void HMI_SetPFloat() { - const int8_t val = HMI_Get(true); +void hmiSetPFloat() { + const int8_t val = hmiGet(true); switch (val) { case 0: return; - case 1: if (MenuData.LiveUpdate) MenuData.LiveUpdate(); break; - case 2: *MenuData.P_Float = MenuData.Value / POW(10, MenuData.dp); if (MenuData.Apply) MenuData.Apply(); break; + case 1: if (menuData.liveUpdate) menuData.liveUpdate(); break; + case 2: *menuData.floatPtr = menuData.value / POW(10, menuData.dp); if (menuData.apply) menuData.apply(); break; } } // Menu Class =============================================================== -MenuClass::MenuClass() { +Menu::Menu() { selected = 0; topline = 0; } -void MenuClass::draw() { - MenuTitle.draw(); - DWINUI::SetColors(HMI_data.Text_Color, HMI_data.Background_Color, HMI_data.StatusBg_Color); - dwinDrawRectangle(1, DWINUI::backcolor, 0, TITLE_HEIGHT, DWIN_WIDTH - 1, STATUS_Y - 1); +void Menu::draw() { + menuTitle.draw(); + DWINUI::setColors(hmiData.colorText, hmiData.colorBackground, hmiData.colorStatusBg); + dwinDrawRectangle(1, DWINUI::backColor, 0, TITLE_HEIGHT, DWIN_WIDTH - 1, STATUS_Y - 1); for (int8_t i = 0; i < MenuItemCount; i++) - MenuItems[i]->draw(i - topline); - Draw_Menu_Cursor(line()); + menuItems[i]->draw(i - topline); + drawMenuCursor(line()); dwinUpdateLCD(); } -void MenuClass::onScroll(bool dir) { +void Menu::onScroll(bool dir) { int8_t sel = selected; if (dir) sel++; else sel--; LIMIT(sel, 0, MenuItemCount - 1); if (sel != selected) { - Erase_Menu_Cursor(line()); + eraseMenuCursor(line()); dwinUpdateLCD(); if ((sel - topline) == TROWS) { - dwinFrameAreaMove(1, DWIN_SCROLL_UP, MLINE, DWINUI::backcolor, 0, TITLE_HEIGHT + 1, DWIN_WIDTH, STATUS_Y - 1); + dwinFrameAreaMove(1, DWIN_SCROLL_UP, MLINE, DWINUI::backColor, 0, TITLE_HEIGHT + 1, DWIN_WIDTH, STATUS_Y - 1); topline++; - MenuItems[sel]->draw(TROWS - 1); + menuItems[sel]->draw(TROWS - 1); } if ((sel < topline)) { - dwinFrameAreaMove(1, DWIN_SCROLL_DOWN, MLINE, DWINUI::backcolor, 0, TITLE_HEIGHT + 1, DWIN_WIDTH, STATUS_Y - 1); + dwinFrameAreaMove(1, DWIN_SCROLL_DOWN, MLINE, DWINUI::backColor, 0, TITLE_HEIGHT + 1, DWIN_WIDTH, STATUS_Y - 1); topline--; - MenuItems[sel]->draw(0); + menuItems[sel]->draw(0); } selected = sel; - Draw_Menu_Cursor(line()); + drawMenuCursor(line()); dwinUpdateLCD(); } } -void MenuClass::onClick() { - if (MenuItems[selected]->onClick != nullptr) (*MenuItems[selected]->onClick)(); +void Menu::onClick() { + if (menuItems[selected]->onClick != nullptr) (*menuItems[selected]->onClick)(); } -CustomMenuItemClass *MenuClass::SelectedItem() { - return MenuItems[selected]; +CustomMenuItem *Menu::selectedItem() { + return menuItems[selected]; } -CustomMenuItemClass** MenuClass::Items() { - return MenuItems; +CustomMenuItem** Menu::items() { + return menuItems; } -int8_t MenuClass::count() { +int8_t Menu::count() { return MenuItemCount; }; /* MenuItem Class ===========================================================*/ -void CustomMenuItemClass::draw(int8_t line) { +void CustomMenuItem::draw(int8_t line) { if (line < 0 || line >= TROWS) return; - if (onDraw != nullptr) (*onDraw)(static_cast(this), line); + if (onDraw != nullptr) (*onDraw)(static_cast(this), line); }; -void CustomMenuItemClass::redraw(bool erase/*=false*/) { - const int8_t line = CurrentMenu->line(this->pos); - if (erase) Erase_Menu_Text(line); +void CustomMenuItem::redraw(bool erase/*=false*/) { + const int8_t line = currentMenu->line(this->pos); + if (erase) eraseMenuText(line); draw(line); } -CustomMenuItemClass::CustomMenuItemClass(OnDrawItem ondraw, OnClickItem onclick) { +CustomMenuItem::CustomMenuItem(OnDrawItem ondraw, OnClickItem onclick) { onClick = onclick; onDraw = ondraw; } -MenuItemClass::MenuItemClass(uint8_t cicon, const char * const text, OnDrawItem ondraw, OnClickItem onclick) : CustomMenuItemClass(ondraw, onclick) { +MenuItem::MenuItem(uint8_t cicon, const char * const text, OnDrawItem ondraw, OnClickItem onclick) : CustomMenuItem(ondraw, onclick) { icon = cicon; - SetCaption(text); + setCaption(text); } -MenuItemClass::MenuItemClass(uint8_t cicon, uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, OnDrawItem ondraw, OnClickItem onclick) : CustomMenuItemClass(ondraw, onclick) { +MenuItem::MenuItem(uint8_t cicon, uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, OnDrawItem ondraw, OnClickItem onclick) : CustomMenuItem(ondraw, onclick) { icon = cicon; caption[0] = '\0'; frameid = id; frame = { x1, y1, x2, y2 }; } -void MenuItemClass::SetCaption(const char * const text) { +void MenuItem::setCaption(const char * const text) { const uint8_t len = _MIN(sizeof(caption) - 1, strlen(text)); memcpy(&caption[0], text, len); caption[len] = '\0'; } -void MenuItemClass::SetFrame(uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2) { +void MenuItem::setFrame(uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2) { caption[0] = '\0'; frameid = id; frame = { x1, y1, x2, y2 }; } -MenuItemPtrClass::MenuItemPtrClass(uint8_t cicon, const char * const text, OnDrawItem ondraw, OnClickItem onclick, void* val) : MenuItemClass(cicon, text, ondraw, onclick) { +MenuItemPtr::MenuItemPtr(uint8_t cicon, const char * const text, OnDrawItem ondraw, OnClickItem onclick, void* val) : MenuItem(cicon, text, ondraw, onclick) { value = val; }; // Menu auxiliary functions =================================================== -void MenuItemsClear() { - if (MenuItems == nullptr) return; - for (int8_t i = 0; i < MenuItemCount; i++) delete MenuItems[i]; - delete[] MenuItems; - MenuItems = nullptr; +void menuItemsClear() { + if (menuItems == nullptr) return; + for (int8_t i = 0; i < MenuItemCount; i++) delete menuItems[i]; + delete[] menuItems; + menuItems = nullptr; MenuItemCount = 0; MenuItemTotal = 0; } -void MenuItemsPrepare(int8_t totalitems) { - MenuItemsClear(); +void menuItemsPrepare(int8_t totalitems) { + menuItemsClear(); MenuItemTotal = _MIN(totalitems, MENU_MAX_ITEMS); - MenuItems = new CustomMenuItemClass*[totalitems]; + menuItems = new CustomMenuItem*[totalitems]; } -bool IsMenu(MenuClass* _menu) { - return ((checkkey == Menu) && !!CurrentMenu && (CurrentMenu == _menu)); +bool isMenu(Menu* _menu) { + return ((checkkey == ID_Menu) && !!currentMenu && (currentMenu == _menu)); } template -T* MenuItemAdd(T* menuitem) { - MenuItems[MenuItemCount] = menuitem; +T* menuItemAdd(T* menuitem) { + menuItems[MenuItemCount] = menuitem; menuitem->pos = MenuItemCount++; return menuitem; } -CustomMenuItemClass* MenuItemAdd(OnDrawItem ondraw/*=nullptr*/, OnClickItem onclick/*=nullptr*/) { +CustomMenuItem* menuItemAdd(OnDrawItem ondraw/*=nullptr*/, OnClickItem onclick/*=nullptr*/) { if (MenuItemCount < MenuItemTotal) { - CustomMenuItemClass* menuitem = new CustomMenuItemClass(ondraw, onclick); - return MenuItemAdd(menuitem); + CustomMenuItem* menuitem = new CustomMenuItem(ondraw, onclick); + return menuItemAdd(menuitem); } else return nullptr; } -MenuItemClass* MenuItemAdd(uint8_t cicon, const char * const text/*=nullptr*/, OnDrawItem ondraw/*=nullptr*/, OnClickItem onclick/*=nullptr*/) { +MenuItem* menuItemAdd(uint8_t cicon, const char * const text/*=nullptr*/, OnDrawItem ondraw/*=nullptr*/, OnClickItem onclick/*=nullptr*/) { if (MenuItemCount < MenuItemTotal) { - MenuItemClass* menuitem = new MenuItemClass(cicon, text, ondraw, onclick); - return MenuItemAdd(menuitem); + MenuItem* menuitem = new MenuItem(cicon, text, ondraw, onclick); + return menuItemAdd(menuitem); } else return nullptr; } -MenuItemClass* MenuItemAdd(uint8_t cicon, uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, OnDrawItem ondraw/*=nullptr*/, OnClickItem onclick/*=nullptr*/) { +MenuItem* menuItemAdd(uint8_t cicon, uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, OnDrawItem ondraw/*=nullptr*/, OnClickItem onclick/*=nullptr*/) { if (MenuItemCount < MenuItemTotal) { - MenuItemClass* menuitem = new MenuItemClass(cicon, id, x1, y1, x2, y2, ondraw, onclick); - return MenuItemAdd(menuitem); + MenuItem* menuitem = new MenuItem(cicon, id, x1, y1, x2, y2, ondraw, onclick); + return menuItemAdd(menuitem); } else return nullptr; } -MenuItemClass* EditItemAdd(uint8_t cicon, const char * const text, OnDrawItem ondraw, OnClickItem onclick, void* val) { +MenuItem* editItemAdd(uint8_t cicon, const char * const text, OnDrawItem ondraw, OnClickItem onclick, void* val) { if (MenuItemCount < MenuItemTotal) { - MenuItemClass* menuitem = new MenuItemPtrClass(cicon, text, ondraw, onclick, val); - return MenuItemAdd(menuitem); + MenuItem* menuitem = new MenuItemPtr(cicon, text, ondraw, onclick, val); + return menuItemAdd(menuitem); } else return nullptr; } -void InitMenu() { - CurrentMenu = nullptr; - PreviousMenu = nullptr; +void initMenu() { + currentMenu = nullptr; + previousMenu = nullptr; } -bool SetMenu(MenuClass* &menu, FSTR_P title, int8_t totalitems) { - if (!menu) menu = new MenuClass(); - const bool NotCurrent = (CurrentMenu != menu); +bool setMenu(Menu* &menu, FSTR_P fTitle, int8_t totalitems) { + if (!menu) menu = new Menu(); + const bool NotCurrent = (currentMenu != menu); if (NotCurrent) { - menu->MenuTitle.SetCaption(title); - MenuItemsPrepare(totalitems); + menu->menuTitle.setCaption(fTitle); + menuItemsPrepare(totalitems); } return NotCurrent; } -bool SetMenu(MenuClass* &menu, frame_rect_t cn, FSTR_P title, int8_t totalitems) { - if (!menu) menu = new MenuClass(); - const bool NotCurrent = (CurrentMenu != menu); +bool setMenu(Menu* &menu, frame_rect_t cn, FSTR_P fTitle, int8_t totalitems) { + if (!menu) menu = new Menu(); + const bool NotCurrent = (currentMenu != menu); if (NotCurrent) { if (cn.w != 0) - menu->MenuTitle.SetFrame(cn.x, cn.y, cn.w, cn.h); + menu->menuTitle.setFrame(cn.x, cn.y, cn.w, cn.h); else - menu->MenuTitle.SetCaption(title); - MenuItemsPrepare(totalitems); + menu->menuTitle.setCaption(fTitle); + menuItemsPrepare(totalitems); } return NotCurrent; } -void ResetMenu(MenuClass* &menu) { +void resetMenu(Menu* &menu) { if (menu) { menu->topline = 0; menu->selected = 0; } } -void InvalidateMenu() { - ResetMenu(CurrentMenu); - CurrentMenu = nullptr; +void invalidateMenu() { + resetMenu(currentMenu); + currentMenu = nullptr; } -void UpdateMenu(MenuClass* &menu) { +void updateMenu(Menu* &menu) { if (!menu) return; - if (CurrentMenu != menu) { - PreviousMenu = CurrentMenu; - CurrentMenu = menu; + if (currentMenu != menu) { + previousMenu = currentMenu; + currentMenu = menu; } menu->draw(); } void ReDrawMenu(bool force/*=false*/) { - if (CurrentMenu && (force || checkkey == Menu)) CurrentMenu->draw(); + if (currentMenu && (force || checkkey == ID_Menu)) currentMenu->draw(); if (force) DrawItemEdit(true); } void ReDrawItem() { - static_cast(CurrentMenu->SelectedItem())->redraw(false); + static_cast(currentMenu->selectedItem())->redraw(false); } #endif // DWIN_LCD_PROUI diff --git a/Marlin/src/lcd/e3v2/proui/menus.h b/Marlin/src/lcd/e3v2/proui/menus.h index f0855e707343..58dd92f0f6ac 100644 --- a/Marlin/src/lcd/e3v2/proui/menus.h +++ b/Marlin/src/lcd/e3v2/proui/menus.h @@ -37,154 +37,154 @@ #endif typedef struct { - int32_t MaxValue = 0; // Auxiliar max integer/scaled float value - int32_t MinValue = 0; // Auxiliar min integer/scaled float value + int32_t maxValue = 0; // Auxiliar max integer/scaled float value + int32_t minValue = 0; // Auxiliar min integer/scaled float value int8_t dp = 0; // Auxiliar decimal places - int32_t Value = 0; // Auxiliar integer / scaled float value - int16_t *P_Int = nullptr; // Auxiliar pointer to 16 bit integer variable - float *P_Float = nullptr; // Auxiliar pointer to float variable - void (*Apply)() = nullptr; // Auxiliar apply function - void (*LiveUpdate)() = nullptr; // Auxiliar live update function + int32_t value = 0; // Auxiliar integer / scaled float value + int16_t *intPtr = nullptr; // Auxiliar pointer to 16 bit integer variable + float *floatPtr = nullptr; // Auxiliar pointer to float variable + void (*apply)() = nullptr; // Auxiliar apply function + void (*liveUpdate)() = nullptr; // Auxiliar live update function } MenuData_t; -extern MenuData_t MenuData; +extern MenuData_t menuData; // Auxiliary Macros =========================================================== // Create and add a MenuItem object to the menu array -#define SET_MENU(I,L,V) SetMenu(I, GET_TEXT_F(L), V) -#define SET_MENU_F(I,L,V) SetMenu(I, F(L), V) -#define SET_MENU_R(I,R,L,V) SetMenu(I, R, GET_TEXT_F(L), V) +#define SET_MENU(I,L,V) setMenu(I, GET_TEXT_F(L), V) +#define SET_MENU_F(I,L,V) setMenu(I, F(L), V) +#define SET_MENU_R(I,R,L,V) setMenu(I, R, GET_TEXT_F(L), V) -#define BACK_ITEM(H) MenuItemAdd(ICON_Back, GET_TEXT_F(MSG_BUTTON_BACK), onDrawMenuItem, H) -#define MENU_ITEM(I,L,V...) MenuItemAdd(I, GET_TEXT_F(L), V) -#define EDIT_ITEM(I,L,V...) EditItemAdd(I, GET_TEXT_F(L), V) -#define MENU_ITEM_F(I,L,V...) MenuItemAdd(I, F(L), V) -#define EDIT_ITEM_F(I,L,V...) EditItemAdd(I, F(L), V) +#define BACK_ITEM(H) menuItemAdd(ICON_Back, GET_TEXT_F(MSG_BUTTON_BACK), onDrawMenuItem, H) +#define MENU_ITEM(I,L,V...) menuItemAdd(I, GET_TEXT_F(L), V) +#define EDIT_ITEM(I,L,V...) editItemAdd(I, GET_TEXT_F(L), V) +#define MENU_ITEM_F(I,L,V...) menuItemAdd(I, F(L), V) +#define EDIT_ITEM_F(I,L,V...) editItemAdd(I, F(L), V) // Menu Classes =============================================================== -class CustomMenuItemClass; -class MenuItemClass; +class CustomMenuItem; +class MenuItem; -typedef void (*OnDrawCustomItem)(CustomMenuItemClass* menuitem, int8_t line); -typedef void (*OnDrawItem)(MenuItemClass* menuitem, int8_t line); +typedef void (*OnDrawCustomItem)(CustomMenuItem* menuitem, int8_t line); +typedef void (*OnDrawItem)(MenuItem* menuitem, int8_t line); typedef void (*OnClickItem)(); -class CustomMenuItemClass { +class CustomMenuItem { public: int8_t pos = 0; OnDrawItem onDraw = nullptr; void (*onClick)() = nullptr; - CustomMenuItemClass() {}; - CustomMenuItemClass(OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); - virtual ~CustomMenuItemClass(){}; + CustomMenuItem() {}; + CustomMenuItem(OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); + virtual ~CustomMenuItem(){}; virtual void draw(int8_t line); void redraw(bool erase=false); }; -class MenuItemClass: public CustomMenuItemClass { +class MenuItem: public CustomMenuItem { public: uint8_t icon = 0; char caption[MENU_CHAR_LIMIT] = ""; uint8_t frameid = 0; rect_t frame = {0}; - using CustomMenuItemClass::CustomMenuItemClass; - MenuItemClass(uint8_t cicon, const char * const text=nullptr, OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); - MenuItemClass(uint8_t cicon, uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); - void SetFrame(uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2); - void SetCaption(const char * const text = nullptr); + using CustomMenuItem::CustomMenuItem; + MenuItem(uint8_t cicon, const char * const text=nullptr, OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); + MenuItem(uint8_t cicon, uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); + void setFrame(uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2); + void setCaption(const char * const text = nullptr); }; -class MenuItemPtrClass: public MenuItemClass { +class MenuItemPtr: public MenuItem { public: void *value = nullptr; - using MenuItemClass::MenuItemClass; - MenuItemPtrClass(uint8_t cicon, const char * const text, OnDrawItem ondraw, OnClickItem onclick, void* val); - MenuItemPtrClass(uint8_t cicon, FSTR_P text, OnDrawItem ondraw, OnClickItem onclick, void* val) : MenuItemPtrClass(cicon, FTOP(text), ondraw, onclick, val){} + using MenuItem::MenuItem; + MenuItemPtr(uint8_t cicon, const char * const text, OnDrawItem ondraw, OnClickItem onclick, void* val); + MenuItemPtr(uint8_t cicon, FSTR_P text, OnDrawItem ondraw, OnClickItem onclick, void* val) : MenuItemPtr(cicon, FTOP(text), ondraw, onclick, val){} }; -class MenuClass { +class Menu { public: int8_t topline = 0; int8_t selected = 0; - TitleClass MenuTitle; - MenuClass(); - virtual ~MenuClass(){}; + Title menuTitle; + Menu(); + virtual ~Menu(){}; inline int8_t line() { return selected - topline; }; inline int8_t line(uint8_t pos) {return pos - topline; }; int8_t count(); virtual void draw(); virtual void onScroll(bool dir); void onClick(); - CustomMenuItemClass* SelectedItem(); - static CustomMenuItemClass** Items(); + CustomMenuItem* selectedItem(); + static CustomMenuItem** items(); }; -extern MenuClass *CurrentMenu; -extern MenuClass *PreviousMenu; +extern Menu *currentMenu; +extern Menu *previousMenu; // Menuitem Drawing functions ================================================= -void Draw_Title(TitleClass* title); -void Draw_Menu_Cursor(const int8_t line); -void Erase_Menu_Cursor(const int8_t line); -void Erase_Menu_Text(const int8_t line); -void Draw_Menu_Line(const uint8_t line, const uint8_t icon=0, const char * const label=nullptr, bool more=false, bool selected=false); -void Draw_Menu_Line(const uint8_t line, const uint8_t icon=0, FSTR_P label=nullptr, bool more=false, bool selected=false); -void Draw_Chkb_Line(const uint8_t line, const bool checked); -void Show_Chkb_Line(const bool checked); -void Toggle_Chkb_Line(bool &checked); -void Draw_Menu_IntValue(uint16_t bcolor, const uint8_t line, uint8_t iNum, const int32_t value=0); -void onDrawMenuItem(MenuItemClass* menuitem, int8_t line); -void onDrawSubMenu(MenuItemClass* menuitem, int8_t line); -void onDrawIntMenu(MenuItemClass* menuitem, int8_t line, int32_t value); -void onDrawPIntMenu(MenuItemClass* menuitem, int8_t line); -void onDrawPInt8Menu(MenuItemClass* menuitem, int8_t line); -void onDrawPInt32Menu(MenuItemClass* menuitem, int8_t line); -void onDrawFloatMenu(MenuItemClass* menuitem, int8_t line, uint8_t dp, const float value); -void onDrawPFloatMenu(MenuItemClass* menuitem, int8_t line, uint8_t dp); -inline void onDrawPFloatMenu(MenuItemClass* menuitem, int8_t line) { onDrawPFloatMenu(menuitem, line, UNITFDIGITS); }; -inline void onDrawPFloat2Menu(MenuItemClass* menuitem, int8_t line) { onDrawPFloatMenu(menuitem, line, 2); }; -inline void onDrawPFloat3Menu(MenuItemClass* menuitem, int8_t line) { onDrawPFloatMenu(menuitem, line, 3); }; -inline void onDrawPFloat4Menu(MenuItemClass* menuitem, int8_t line) { onDrawPFloatMenu(menuitem, line, 4); }; -void onDrawChkbMenu(MenuItemClass* menuitem, int8_t line, bool checked); -void onDrawChkbMenu(MenuItemClass* menuitem, int8_t line); +void drawTitle(Title* aTitle); +void drawMenuCursor(const int8_t line); +void eraseMenuCursor(const int8_t line); +void eraseMenuText(const int8_t line); +void drawMenuLine(const uint8_t line, const uint8_t icon=0, const char * const label=nullptr, bool more=false, bool selected=false); +void drawMenuLine(const uint8_t line, const uint8_t icon=0, FSTR_P label=nullptr, bool more=false, bool selected=false); +void drawCheckboxLine(const uint8_t line, const bool checked); +void showCheckboxLine(const bool checked); +void toggleCheckboxLine(bool &checked); +void drawMenuIntValue(uint16_t bcolor, const uint8_t line, uint8_t iNum, const int32_t value=0); +void onDrawMenuItem(MenuItem* menuitem, int8_t line); +void onDrawSubMenu(MenuItem* menuitem, int8_t line); +void onDrawIntMenu(MenuItem* menuitem, int8_t line, int32_t value); +void onDrawPIntMenu(MenuItem* menuitem, int8_t line); +void onDrawPInt8Menu(MenuItem* menuitem, int8_t line); +void onDrawPInt32Menu(MenuItem* menuitem, int8_t line); +void onDrawFloatMenu(MenuItem* menuitem, int8_t line, uint8_t dp, const float value); +void onDrawPFloatMenu(MenuItem* menuitem, int8_t line, uint8_t dp); +inline void onDrawPFloatMenu(MenuItem* menuitem, int8_t line) { onDrawPFloatMenu(menuitem, line, UNITFDIGITS); }; +inline void onDrawPFloat2Menu(MenuItem* menuitem, int8_t line) { onDrawPFloatMenu(menuitem, line, 2); }; +inline void onDrawPFloat3Menu(MenuItem* menuitem, int8_t line) { onDrawPFloatMenu(menuitem, line, 3); }; +inline void onDrawPFloat4Menu(MenuItem* menuitem, int8_t line) { onDrawPFloatMenu(menuitem, line, 4); }; +void onDrawChkbMenu(MenuItem* menuitem, int8_t line, bool checked); +void onDrawChkbMenu(MenuItem* menuitem, int8_t line); // On click functions ========================================================= -void SetOnClick(uint8_t process, const int32_t lo, const int32_t hi, uint8_t dp, const int32_t val, void (*Apply)()=nullptr, void (*LiveUpdate)()=nullptr); -void SetValueOnClick(uint8_t process, const int32_t lo, const int32_t hi, const int32_t val, void (*Apply)()=nullptr, void (*LiveUpdate)()=nullptr); -void SetValueOnClick(uint8_t process, const float lo, const float hi, uint8_t dp, const float val, void (*Apply)()=nullptr, void (*LiveUpdate)()=nullptr); -void SetIntOnClick(const int32_t lo, const int32_t hi, const int32_t val, void (*Apply)()=nullptr, void (*LiveUpdate)()=nullptr); -void SetPIntOnClick(const int32_t lo, const int32_t hi, void (*Apply)()=nullptr, void (*LiveUpdate)()=nullptr); -void SetFloatOnClick(const float lo, const float hi, uint8_t dp, const float val, void (*Apply)()=nullptr, void (*LiveUpdate)()=nullptr); -void SetPFloatOnClick(const float lo, const float hi, uint8_t dp, void (*Apply)()=nullptr, void (*LiveUpdate)()=nullptr); +void setOnClick(uint8_t process, const int32_t lo, const int32_t hi, uint8_t dp, const int32_t val, void (*apply)()=nullptr, void (*liveUpdate)()=nullptr); +void setValueOnClick(uint8_t process, const int32_t lo, const int32_t hi, const int32_t val, void (*apply)()=nullptr, void (*liveUpdate)()=nullptr); +void setValueOnClick(uint8_t process, const float lo, const float hi, uint8_t dp, const float val, void (*apply)()=nullptr, void (*liveUpdate)()=nullptr); +void setIntOnClick(const int32_t lo, const int32_t hi, const int32_t val, void (*apply)()=nullptr, void (*liveUpdate)()=nullptr); +void setPIntOnClick(const int32_t lo, const int32_t hi, void (*apply)()=nullptr, void (*liveUpdate)()=nullptr); +void setFloatOnClick(const float lo, const float hi, uint8_t dp, const float val, void (*apply)()=nullptr, void (*liveUpdate)()=nullptr); +void setPFloatOnClick(const float lo, const float hi, uint8_t dp, void (*apply)()=nullptr, void (*liveUpdate)()=nullptr); // HMI user control functions ================================================= -void HMI_Menu(); -void HMI_SetDraw(); -void HMI_SetNoDraw(); -void HMI_SetPInt(); -void HMI_SetPFloat(); +void hmiMenu(); +void hmiSetDraw(); +void hmiSetNoDraw(); +void hmiSetPInt(); +void hmiSetPFloat(); // Menu auxiliary functions =================================================== // Initialize menu -void InitMenu(); +void initMenu(); // Create a new menu -bool SetMenu(MenuClass* &menu, FSTR_P title, int8_t totalitems); -bool SetMenu(MenuClass* &menu, frame_rect_t cn, FSTR_P title, int8_t totalitems); +bool setMenu(Menu* &menu, FSTR_P fTitle, int8_t totalitems); +bool setMenu(Menu* &menu, frame_rect_t cn, FSTR_P fTitle, int8_t totalitems); // Reset top line and selected item -void ResetMenu(MenuClass* &menu); +void resetMenu(Menu* &menu); -// Invalidate CurrentMenu to prepare for full menu drawing -void InvalidateMenu(); +// Invalidate currentMenu to prepare for full menu drawing +void invalidateMenu(); //Update the Menu and Draw if it is valid -void UpdateMenu(MenuClass* &menu); +void updateMenu(Menu* &menu); //Redraw the current Menu if it is valid void ReDrawMenu(bool force=false); @@ -192,23 +192,23 @@ void ReDrawMenu(bool force=false); //Redraw selected menu item void ReDrawItem(); -// Clear MenuItems array and free MenuItems elements -void MenuItemsClear(); +// Clear menuItems array and free menuItems elements +void menuItemsClear(); -// Prepare MenuItems array -void MenuItemsPrepare(int8_t totalitems); +// Prepare menuItems array +void menuItemsPrepare(int8_t totalitems); // Is the current menu = menu? -bool IsMenu(MenuClass* menu); +bool isMenu(Menu* menu); -// Add elements to the MenuItems array -CustomMenuItemClass* MenuItemAdd(OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); -MenuItemClass* MenuItemAdd(uint8_t cicon, const char * const text=nullptr, OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); -inline MenuItemClass* MenuItemAdd(uint8_t cicon, FSTR_P text=nullptr, OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr) { - return MenuItemAdd(cicon, FTOP(text), ondraw, onclick); +// Add elements to the menuItems array +CustomMenuItem* menuItemAdd(OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); +MenuItem* menuItemAdd(uint8_t cicon, const char * const text=nullptr, OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); +inline MenuItem* menuItemAdd(uint8_t cicon, FSTR_P text=nullptr, OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr) { + return menuItemAdd(cicon, FTOP(text), ondraw, onclick); } -MenuItemClass* MenuItemAdd(uint8_t cicon, uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); -MenuItemClass* EditItemAdd(uint8_t cicon, const char * const text, OnDrawItem ondraw, OnClickItem onclick, void* val); -inline MenuItemClass* EditItemAdd(uint8_t cicon, FSTR_P text, OnDrawItem ondraw, OnClickItem onclick, void* val) { - return EditItemAdd(cicon, FTOP(text), ondraw, onclick, val); +MenuItem* menuItemAdd(uint8_t cicon, uint8_t id, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, OnDrawItem ondraw=nullptr, OnClickItem onclick=nullptr); +MenuItem* editItemAdd(uint8_t cicon, const char * const text, OnDrawItem ondraw, OnClickItem onclick, void* val); +inline MenuItem* editItemAdd(uint8_t cicon, FSTR_P text, OnDrawItem ondraw, OnClickItem onclick, void* val) { + return editItemAdd(cicon, FTOP(text), ondraw, onclick, val); } diff --git a/Marlin/src/lcd/e3v2/proui/meshviewer.cpp b/Marlin/src/lcd/e3v2/proui/meshviewer.cpp index 086795d943c5..2781ccaa1df7 100644 --- a/Marlin/src/lcd/e3v2/proui/meshviewer.cpp +++ b/Marlin/src/lcd/e3v2/proui/meshviewer.cpp @@ -56,101 +56,101 @@ uint8_t rmax; // Maximum radius constexpr uint8_t meshfont = TERN(TJC_DISPLAY, font8x16, font6x12); -MeshViewerClass MeshViewer; +MeshViewer meshViewer; -float MeshViewerClass::max, MeshViewerClass::min; +float MeshViewer::max, MeshViewer::min; -void MeshViewerClass::DrawMeshGrid(const uint8_t csizex, const uint8_t csizey) { +void MeshViewer::drawMeshGrid(const uint8_t csizex, const uint8_t csizey) { sizex = csizex; sizey = csizey; rmax = _MIN(margin - 2, 0.5 * (width) / (sizex - 1)); min = 100; max = -100; - DWINUI::ClearMainArea(); - dwinDrawRectangle(0, HMI_data.SplitLine_Color, px(0), py(0), px(sizex - 1), py(sizey - 1)); - for (uint8_t x = 1; x < sizex - 1; ++x) dwinDrawVLine(HMI_data.SplitLine_Color, px(x), py(sizey - 1), width); - for (uint8_t y = 1; y < sizey - 1; ++y) dwinDrawHLine(HMI_data.SplitLine_Color, px(0), py(y), width); + DWINUI::clearMainArea(); + dwinDrawRectangle(0, hmiData.colorSplitLine, px(0), py(0), px(sizex - 1), py(sizey - 1)); + for (uint8_t x = 1; x < sizex - 1; ++x) dwinDrawVLine(hmiData.colorSplitLine, px(x), py(sizey - 1), width); + for (uint8_t y = 1; y < sizey - 1; ++y) dwinDrawHLine(hmiData.colorSplitLine, px(0), py(y), width); } -void MeshViewerClass::DrawMeshPoint(const uint8_t x, const uint8_t y, const float z) { +void MeshViewer::drawMeshPoint(const uint8_t x, const uint8_t y, const float z) { const uint8_t fs = DWINUI::fontWidth(meshfont); const int16_t v = isnan(z) ? 0 : round(z * 100); NOLESS(max, z); NOMORE(min, z); const uint16_t color = DWINUI::RainbowInt(v, zmin, zmax); - DWINUI::Draw_FillCircle(color, px(x), py(y), r(_MAX(_MIN(v,zmax),zmin))); + DWINUI::drawFillCircle(color, px(x), py(y), r(_MAX(_MIN(v,zmax),zmin))); TERN_(TJC_DISPLAY, delay(100)); if (sizex < (ENABLED(TJC_DISPLAY) ? 8 : 9)) { - if (v == 0) DWINUI::Draw_Float(meshfont, 1, 2, px(x) - 2*fs, py(y) - fs, 0); - else DWINUI::Draw_Signed_Float(meshfont, 1, 2, px(x) - 3*fs, py(y) - fs, z); + if (v == 0) DWINUI::drawFloat(meshfont, 1, 2, px(x) - 2*fs, py(y) - fs, 0); + else DWINUI::drawSignedFloat(meshfont, 1, 2, px(x) - 3*fs, py(y) - fs, z); } else { char str_1[9]; str_1[0] = '\0'; switch (v) { case -999 ... -100: - DWINUI::Draw_Signed_Float(meshfont, 1, 1, px(x) - 3*fs, py(y) - fs, z); + DWINUI::drawSignedFloat(meshfont, 1, 1, px(x) - 3*fs, py(y) - fs, z); break; case -99 ... -1: sprintf_P(str_1, PSTR("-.%02i"), -v); break; case 0: - dwinDrawString(false, meshfont, DWINUI::textcolor, DWINUI::backcolor, px(x) - 4, py(y) - fs, "0"); + dwinDrawString(false, meshfont, DWINUI::textColor, DWINUI::backColor, px(x) - 4, py(y) - fs, "0"); break; case 1 ... 99: sprintf_P(str_1, PSTR(".%02i"), v); break; case 100 ... 999: - DWINUI::Draw_Signed_Float(meshfont, 1, 1, px(x) - 3 * fs, py(y) - fs, z); + DWINUI::drawSignedFloat(meshfont, 1, 1, px(x) - 3 * fs, py(y) - fs, z); break; } if (str_1[0]) - dwinDrawString(false, meshfont, DWINUI::textcolor, DWINUI::backcolor, px(x) - 2 * fs, py(y) - fs, str_1); + dwinDrawString(false, meshfont, DWINUI::textColor, DWINUI::backColor, px(x) - 2 * fs, py(y) - fs, str_1); } } -void MeshViewerClass::DrawMesh(const bed_mesh_t zval, const uint8_t csizex, const uint8_t csizey) { - DrawMeshGrid(csizex, csizey); +void MeshViewer::drawMesh(const bed_mesh_t zval, const uint8_t csizex, const uint8_t csizey) { + drawMeshGrid(csizex, csizey); for (uint8_t y = 0; y < csizey; ++y) { hal.watchdog_refresh(); - for (uint8_t x = 0; x < csizex; ++x) DrawMeshPoint(x, y, zval[x][y]); + for (uint8_t x = 0; x < csizex; ++x) drawMeshPoint(x, y, zval[x][y]); } } -void MeshViewerClass::Draw(const bool withsave/*=false*/, const bool redraw/*=true*/) { - Title.ShowCaption(GET_TEXT_F(MSG_MESH_VIEWER)); +void MeshViewer::draw(const bool withsave/*=false*/, const bool redraw/*=true*/) { + title.showCaption(GET_TEXT_F(MSG_MESH_VIEWER)); #if ENABLED(USE_GRID_MESHVIEWER) - DWINUI::ClearMainArea(); + DWINUI::clearMainArea(); bedLevelTools.viewer_print_value = true; - bedLevelTools.Draw_Bed_Mesh(-1, 1, 8, 10 + TITLE_HEIGHT); + bedLevelTools.drawBedMesh(-1, 1, 8, 10 + TITLE_HEIGHT); #else - if (redraw) DrawMesh(bedlevel.z_values, GRID_MAX_POINTS_X, GRID_MAX_POINTS_Y); - else DWINUI::Draw_Box(1, HMI_data.Background_Color, { 89, 305, 99, 38 }); + if (redraw) drawMesh(bedlevel.z_values, GRID_MAX_POINTS_X, GRID_MAX_POINTS_Y); + else DWINUI::drawBox(1, hmiData.colorBackground, { 89, 305, 99, 38 }); #endif if (withsave) { - DWINUI::Draw_Button(BTN_Save, 26, 305); - DWINUI::Draw_Button(BTN_Continue, 146, 305); - Draw_Select_Highlight(hmiFlag.select_flag, 305); + DWINUI::drawButton(BTN_Save, 26, 305); + DWINUI::drawButton(BTN_Continue, 146, 305); + drawSelectHighlight(hmiFlag.select_flag, 305); } else - DWINUI::Draw_Button(BTN_Continue, 86, 305); + DWINUI::drawButton(BTN_Continue, 86, 305); #if ENABLED(USE_GRID_MESHVIEWER) - bedLevelTools.Set_Mesh_Viewer_Status(); + bedLevelTools.setMeshViewerStatus(); #else char str_1[6], str_2[6] = ""; ui.status_printf(0, F("Mesh minZ: %s, maxZ: %s"), dtostrf(min, 1, 2, str_1), dtostrf(max, 1, 2, str_2)); #endif } -void Draw_MeshViewer() { MeshViewer.Draw(true, meshredraw); } +void drawMeshViewer() { meshViewer.draw(true, meshredraw); } -void onClick_MeshViewer() { if (hmiFlag.select_flag) SaveMesh(); HMI_ReturnScreen(); } +void onClick_MeshViewer() { if (hmiFlag.select_flag) saveMesh(); hmiReturnScreen(); } -void Goto_MeshViewer(const bool redraw) { +void gotoMeshViewer(const bool redraw) { meshredraw = redraw; - if (leveling_is_valid()) Goto_Popup(Draw_MeshViewer, onClick_MeshViewer); - else HMI_ReturnScreen(); + if (leveling_is_valid()) gotoPopup(drawMeshViewer, onClick_MeshViewer); + else hmiReturnScreen(); } #endif // DWIN_LCD_PROUI && HAS_MESH diff --git a/Marlin/src/lcd/e3v2/proui/meshviewer.h b/Marlin/src/lcd/e3v2/proui/meshviewer.h index 1f45a834809b..f73f1da86e1c 100644 --- a/Marlin/src/lcd/e3v2/proui/meshviewer.h +++ b/Marlin/src/lcd/e3v2/proui/meshviewer.h @@ -28,15 +28,15 @@ * Date: 2023/05/05 */ -class MeshViewerClass { +class MeshViewer { public: static float max, min; - static void DrawMeshGrid(const uint8_t csizex, const uint8_t csizey); - static void DrawMeshPoint(const uint8_t x, const uint8_t y, const float z); - static void Draw(const bool withsave=false, const bool redraw=true); - static void DrawMesh(const bed_mesh_t zval, const uint8_t csizex, const uint8_t csizey); + static void drawMeshGrid(const uint8_t csizex, const uint8_t csizey); + static void drawMeshPoint(const uint8_t x, const uint8_t y, const float z); + static void draw(const bool withsave=false, const bool redraw=true); + static void drawMesh(const bed_mesh_t zval, const uint8_t csizex, const uint8_t csizey); }; -extern MeshViewerClass MeshViewer; +extern MeshViewer meshViewer; -void Goto_MeshViewer(const bool redraw); +void gotoMeshViewer(const bool redraw); diff --git a/Marlin/src/lcd/e3v2/proui/plot.cpp b/Marlin/src/lcd/e3v2/proui/plot.cpp index 45341ae62463..95d8ec291d1b 100644 --- a/Marlin/src/lcd/e3v2/proui/plot.cpp +++ b/Marlin/src/lcd/e3v2/proui/plot.cpp @@ -29,7 +29,7 @@ #include "../../../inc/MarlinConfig.h" -#if ALL(DWIN_LCD_PROUI, SHOW_TUNING_GRAPH) +#if ALL(DWIN_LCD_PROUI, PROUI_TUNING_GRAPH) #include "dwin.h" #include "../../../core/types.h" @@ -44,32 +44,32 @@ uint16_t grphpoints, r, x2, y2 = 0; frame_rect_t grphframe = {0}; float scale = 0; -void PlotClass::Draw(const frame_rect_t &frame, const_float_t max, const_float_t ref/*=0*/) { +void PlotClass::draw(const frame_rect_t &frame, const_float_t max, const_float_t ref/*=0*/) { grphframe = frame; grphpoints = 0; scale = frame.h / max; x2 = frame.x + frame.w - 1; y2 = frame.y + frame.h - 1; r = round((y2) - ref * scale); - DWINUI::Draw_Box(1, Plot_Bg_Color, frame); - for (uint8_t i = 1; i < 4; i++) if (i * 50 < frame.w) dwinDrawVLine(Line_Color, i * 50 + frame.x, frame.y, frame.h); - DWINUI::Draw_Box(0, Color_White, DWINUI::ExtendFrame(frame, 1)); - dwinDrawHLine(Color_Red, frame.x, r, frame.w); + DWINUI::drawBox(1, Plot_Bg_Color, frame); + for (uint8_t i = 1; i < 4; i++) if (i * 50 < frame.w) dwinDrawVLine(COLOR_LINE, i * 50 + frame.x, frame.y, frame.h); + DWINUI::drawBox(0, COLOR_WHITE, DWINUI::extendFrame(frame, 1)); + dwinDrawHLine(COLOR_RED, frame.x, r, frame.w); } -void PlotClass::Update(const_float_t value) { +void PlotClass::update(const_float_t value) { if (!scale) return; const uint16_t y = round((y2) - value * scale); if (grphpoints < grphframe.w) { - dwinDrawPoint(Color_Yellow, 1, 1, grphpoints + grphframe.x, y); + dwinDrawPoint(COLOR_YELLOW, 1, 1, grphpoints + grphframe.x, y); } else { dwinFrameAreaMove(1, 0, 1, Plot_Bg_Color, grphframe.x, grphframe.y, x2, y2); - if ((grphpoints % 50) == 0) dwinDrawVLine(Line_Color, x2 - 1, grphframe.y + 1, grphframe.h - 2); - dwinDrawPoint(Color_Red, 1, 1, x2 - 1, r); - dwinDrawPoint(Color_Yellow, 1, 1, x2 - 1, y); + if ((grphpoints % 50) == 0) dwinDrawVLine(COLOR_LINE, x2 - 1, grphframe.y + 1, grphframe.h - 2); + dwinDrawPoint(COLOR_RED, 1, 1, x2 - 1, r); + dwinDrawPoint(COLOR_YELLOW, 1, 1, x2 - 1, y); } grphpoints++; } -#endif // DWIN_LCD_PROUI && SHOW_TUNING_GRAPH +#endif // DWIN_LCD_PROUI && PROUI_TUNING_GRAPH diff --git a/Marlin/src/lcd/e3v2/proui/plot.h b/Marlin/src/lcd/e3v2/proui/plot.h index 144ba0073b4d..bc0e3a774ccd 100644 --- a/Marlin/src/lcd/e3v2/proui/plot.h +++ b/Marlin/src/lcd/e3v2/proui/plot.h @@ -32,8 +32,8 @@ class PlotClass { public: - static void Draw(const frame_rect_t &frame, const_float_t max, const_float_t ref=0); - static void Update(const_float_t value); + static void draw(const frame_rect_t &frame, const_float_t max, const_float_t ref=0); + static void update(const_float_t value); }; extern PlotClass plot; diff --git a/Marlin/src/lcd/e3v2/proui/printstats.cpp b/Marlin/src/lcd/e3v2/proui/printstats.cpp index 993b5b7b70f1..732e80542d16 100644 --- a/Marlin/src/lcd/e3v2/proui/printstats.cpp +++ b/Marlin/src/lcd/e3v2/proui/printstats.cpp @@ -40,43 +40,43 @@ #include "dwin.h" #include "dwin_popup.h" -PrintStatsClass PrintStats; +PrintStats printStats; -void PrintStatsClass::Draw() { +void PrintStats::draw() { char str[30] = ""; constexpr int8_t MRG = 30; - Title.ShowCaption(GET_TEXT_F(MSG_INFO_STATS_MENU)); - DWINUI::ClearMainArea(); - Draw_Popup_Bkgd(); - DWINUI::Draw_Button(BTN_Continue, 86, 250); + title.showCaption(GET_TEXT_F(MSG_INFO_STATS_MENU)); + DWINUI::clearMainArea(); + drawPopupBkgd(); + DWINUI::drawButton(BTN_Continue, 86, 250); printStatistics ps = print_job_timer.getStats(); - DWINUI::Draw_String(MRG, 80, TS(GET_TEXT_F(MSG_INFO_PRINT_COUNT), F(": "), ps.totalPrints)); - DWINUI::Draw_String(MRG, 100, TS(GET_TEXT_F(MSG_INFO_COMPLETED_PRINTS), F(": "), ps.finishedPrints)); + DWINUI::drawString(MRG, 80, TS(GET_TEXT_F(MSG_INFO_PRINT_COUNT), F(": "), ps.totalPrints)); + DWINUI::drawString(MRG, 100, TS(GET_TEXT_F(MSG_INFO_COMPLETED_PRINTS), F(": "), ps.finishedPrints)); duration_t(print_job_timer.getStats().printTime).toDigital(str, true); - DWINUI::Draw_String(MRG, 120, MString<50>(GET_TEXT_F(MSG_INFO_PRINT_TIME), F(": "), str)); + DWINUI::drawString(MRG, 120, MString<50>(GET_TEXT_F(MSG_INFO_PRINT_TIME), F(": "), str)); duration_t(print_job_timer.getStats().longestPrint).toDigital(str, true); - DWINUI::Draw_String(MRG, 140, MString<50>(GET_TEXT(MSG_INFO_PRINT_LONGEST), F(": "), str)); - DWINUI::Draw_String(MRG, 160, TS(GET_TEXT_F(MSG_INFO_PRINT_FILAMENT), F(": "), p_float_t(ps.filamentUsed / 1000, 2), F(" m"))); + DWINUI::drawString(MRG, 140, MString<50>(GET_TEXT(MSG_INFO_PRINT_LONGEST), F(": "), str)); + DWINUI::drawString(MRG, 160, TS(GET_TEXT_F(MSG_INFO_PRINT_FILAMENT), F(": "), p_float_t(ps.filamentUsed / 1000, 2), F(" m"))); } -void PrintStatsClass::Reset() { +void PrintStats::reset() { print_job_timer.initStats(); DONE_BUZZ(true); } -void Goto_PrintStats() { - PrintStats.Draw(); - HMI_SaveProcessID(WaitResponse); +void gotoPrintStats() { + printStats.draw(); + hmiSaveProcessID(ID_WaitResponse); } // Print Stats Reset popup -void Popup_ResetStats() { DWIN_Popup_ConfirmCancel(ICON_Info_0, GET_TEXT_F(MSG_RESET_STATS)); } -void OnClick_ResetStats() { - if (hmiFlag.select_flag) PrintStatsClass::Reset(); - HMI_ReturnScreen(); +void popupResetStats() { dwinPopupConfirmCancel(ICON_Info_0, GET_TEXT_F(MSG_RESET_STATS)); } +void onClickResetStats() { + if (hmiFlag.select_flag) printStats.reset(); + hmiReturnScreen(); } -void PrintStatsReset() { Goto_Popup(Popup_ResetStats, OnClick_ResetStats); } +void printStatsReset() { gotoPopup(popupResetStats, onClickResetStats); } #endif // DWIN_LCD_PROUI && PRINTCOUNTER diff --git a/Marlin/src/lcd/e3v2/proui/printstats.h b/Marlin/src/lcd/e3v2/proui/printstats.h index aadb3e8dceed..133e9eb96e17 100644 --- a/Marlin/src/lcd/e3v2/proui/printstats.h +++ b/Marlin/src/lcd/e3v2/proui/printstats.h @@ -28,13 +28,13 @@ * Date: 2022/12/03 */ -class PrintStatsClass { +class PrintStats { public: - static void Draw(); - static void Reset(); + static void draw(); + static void reset(); }; -extern PrintStatsClass PrintStats; +extern PrintStats printStats; -void Goto_PrintStats(); -void PrintStatsReset(); +void gotoPrintStats(); +void printStatsReset(); diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index 8517e2ec2324..f8fde2177738 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -1600,7 +1600,7 @@ void MarlinUI::host_status() { TERN_(EXTENSIBLE_UI, ExtUI::onStatusChanged(status_message)); TERN_(DWIN_CREALITY_LCD, dwinStatusChanged(status_message)); - TERN_(DWIN_LCD_PROUI, DWIN_CheckStatusMessage()); + TERN_(DWIN_LCD_PROUI, dwinCheckStatusMessage()); TERN_(DWIN_CREALITY_LCD_JYERSUI, jyersDWIN.updateStatus(status_message)); } diff --git a/Marlin/src/module/motion.h b/Marlin/src/module/motion.h index 1e6d02d2a7c8..9d5da849e5a9 100644 --- a/Marlin/src/module/motion.h +++ b/Marlin/src/module/motion.h @@ -413,7 +413,7 @@ void restore_feedrate_and_scaling(); #if HAS_Z_AXIS #if ALL(DWIN_LCD_PROUI, INDIVIDUAL_AXIS_HOMING_SUBMENU, MESH_BED_LEVELING) - #define Z_POST_CLEARANCE HMI_data.z_after_homing + #define Z_POST_CLEARANCE hmiData.z_after_homing #elif defined(Z_AFTER_HOMING) #define Z_POST_CLEARANCE Z_AFTER_HOMING #else diff --git a/Marlin/src/module/probe.cpp b/Marlin/src/module/probe.cpp index e426e3bb4bdd..b3872146d136 100644 --- a/Marlin/src/module/probe.cpp +++ b/Marlin/src/module/probe.cpp @@ -377,7 +377,7 @@ FORCE_INLINE void probe_specific_action(const bool deploy) { TERN_(HOST_PROMPT_SUPPORT, hostui.continue_prompt(ds_str)); TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(ds_str)); - TERN_(DWIN_LCD_PROUI, DWIN_Popup_Confirm(ICON_BLTouch, ds_str, FPSTR(CONTINUE_STR))); + TERN_(DWIN_LCD_PROUI, dwinPopupConfirm(ICON_BLTouch, ds_str, FPSTR(CONTINUE_STR))); TERN_(HAS_RESUME_CONTINUE, wait_for_user_response()); ui.reset_status(); diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index 7ef697014199..479b43c4bd7d 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -1610,7 +1610,7 @@ void MarlinSettings::postprocess() { { _FIELD_TEST(dwin_data); char dwin_data[eeprom_data_size] = { 0 }; - DWIN_CopySettingsTo(dwin_data); + dwinCopySettingsTo(dwin_data); EEPROM_WRITE(dwin_data); } #endif @@ -2675,7 +2675,7 @@ void MarlinSettings::postprocess() { const char dwin_data[eeprom_data_size] = { 0 }; _FIELD_TEST(dwin_data); EEPROM_READ(dwin_data); - if (!validating) DWIN_CopySettingsFrom(dwin_data); + if (!validating) dwinCopySettingsFrom(dwin_data); } #elif ENABLED(DWIN_CREALITY_LCD_JYERSUI) { @@ -3022,7 +3022,7 @@ void MarlinSettings::postprocess() { #endif #if ENABLED(DWIN_LCD_PROUI) - status = !bedLevelTools.meshvalidate(); + status = !bedLevelTools.meshValidate(); if (status) { bedlevel.invalidate(); LCD_MESSAGE(MSG_UBL_MESH_INVALID); @@ -3559,7 +3559,7 @@ void MarlinSettings::reset() { // // Ender-3 V2 with ProUI // - TERN_(DWIN_LCD_PROUI, DWIN_SetDataDefaults()); + TERN_(DWIN_LCD_PROUI, dwinSetDataDefaults()); // // Model predictive control diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 5d48b20ee8e8..6133b6e39b08 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -2639,7 +2639,7 @@ hal_timer_t Stepper::block_phase_isr() { oversampling_factor = 0; // Assume no axis smoothing (via oversampling) // Decide if axis smoothing is possible uint32_t max_rate = current_block->nominal_rate; // Get the step event rate - if (TERN1(DWIN_LCD_PROUI, HMI_data.AdaptiveStepSmoothing)) { + if (TERN1(DWIN_LCD_PROUI, hmiData.adaptiveStepSmoothing)) { while (max_rate < MIN_STEP_ISR_FREQUENCY) { // As long as more ISRs are possible... max_rate <<= 1; // Try to double the rate if (max_rate < MIN_STEP_ISR_FREQUENCY) // Don't exceed the estimated ISR limit diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index c38d4968c9ca..e209d6f83519 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -723,12 +723,12 @@ volatile bool Temperature::raw_temps_ready = false; TERN_(HAS_FAN_LOGIC, fan_update_ms = next_temp_ms + fan_update_interval_ms); TERN_(EXTENSIBLE_UI, ExtUI::onPidTuning(ExtUI::result_t::PID_STARTED)); - TERN_(DWIN_PID_TUNE, DWIN_PidTuning(isbed ? PIDTEMPBED_START : PIDTEMP_START)); + TERN_(PROUI_PID_TUNE, dwinPidTuning(isbed ? PIDTEMPBED_START : PIDTEMP_START)); if (target > GHV(CHAMBER_MAX_TARGET, BED_MAX_TARGET, temp_range[heater_id].maxtemp - (HOTEND_OVERSHOOT))) { SERIAL_ECHOPGM(STR_PID_AUTOTUNE); SERIAL_ECHOLNPGM(STR_PID_TEMP_TOO_HIGH); TERN_(EXTENSIBLE_UI, ExtUI::onPidTuning(ExtUI::result_t::PID_TEMP_TOO_HIGH)); - TERN_(DWIN_PID_TUNE, DWIN_PidTuning(PID_TEMP_TOO_HIGH)); + TERN_(PROUI_PID_TUNE, dwinPidTuning(PID_TEMP_TOO_HIGH)); TERN_(HOST_PROMPT_SUPPORT, hostui.notify(GET_TEXT_F(MSG_PID_TEMP_TOO_HIGH))); return; } @@ -820,7 +820,7 @@ volatile bool Temperature::raw_temps_ready = false; if (current_temp > target + MAX_OVERSHOOT_PID_AUTOTUNE) { SERIAL_ECHOPGM(STR_PID_AUTOTUNE); SERIAL_ECHOLNPGM(STR_PID_TEMP_TOO_HIGH); TERN_(EXTENSIBLE_UI, ExtUI::onPidTuning(ExtUI::result_t::PID_TEMP_TOO_HIGH)); - TERN_(DWIN_PID_TUNE, DWIN_PidTuning(PID_TEMP_TOO_HIGH)); + TERN_(PROUI_PID_TUNE, dwinPidTuning(PID_TEMP_TOO_HIGH)); TERN_(HOST_PROMPT_SUPPORT, hostui.notify(GET_TEXT_F(MSG_PID_TEMP_TOO_HIGH))); break; } @@ -857,7 +857,7 @@ volatile bool Temperature::raw_temps_ready = false; #endif if ((ms - _MIN(t1, t2)) > (MAX_CYCLE_TIME_PID_AUTOTUNE * 60L * 1000L)) { TERN_(DWIN_CREALITY_LCD, dwinPopupTemperature(0)); - TERN_(DWIN_PID_TUNE, DWIN_PidTuning(PID_TUNING_TIMEOUT)); + TERN_(PROUI_PID_TUNE, dwinPidTuning(PID_TUNING_TIMEOUT)); TERN_(EXTENSIBLE_UI, ExtUI::onPidTuning(ExtUI::result_t::PID_TUNING_TIMEOUT)); TERN_(HOST_PROMPT_SUPPORT, hostui.notify(GET_TEXT_F(MSG_PID_TIMEOUT))); SERIAL_ECHOPGM(STR_PID_AUTOTUNE); SERIAL_ECHOLNPGM(STR_PID_TIMEOUT); @@ -910,7 +910,7 @@ volatile bool Temperature::raw_temps_ready = false; TERN_(PRINTER_EVENT_LEDS, printerEventLEDs.onPidTuningDone(color)); TERN_(EXTENSIBLE_UI, ExtUI::onPidTuning(ExtUI::result_t::PID_DONE)); - TERN_(DWIN_PID_TUNE, DWIN_PidTuning(AUTOTUNE_DONE)); + TERN_(PROUI_PID_TUNE, dwinPidTuning(AUTOTUNE_DONE)); goto EXIT_M303; } @@ -928,7 +928,7 @@ volatile bool Temperature::raw_temps_ready = false; TERN_(PRINTER_EVENT_LEDS, printerEventLEDs.onPidTuningDone(color)); TERN_(EXTENSIBLE_UI, ExtUI::onPidTuning(ExtUI::result_t::PID_DONE)); - TERN_(DWIN_PID_TUNE, DWIN_PidTuning(AUTOTUNE_DONE)); + TERN_(PROUI_PID_TUNE, dwinPidTuning(AUTOTUNE_DONE)); EXIT_M303: TERN_(TEMP_TUNING_MAINTAIN_FAN, adaptive_fan_slowing = true); @@ -1147,7 +1147,7 @@ volatile bool Temperature::raw_temps_ready = false; // Ensure we don't drift too far from the window between the last sampled temp and the target temperature if (!WITHIN(current_temp, get_sample_3_temp() - 15.0f, hotend.target + 15.0f)) { SERIAL_ECHOLNPGM(STR_MPC_TEMPERATURE_ERROR); - TERN_(DWIN_LCD_PROUI, DWIN_MPCTuning(MPC_TEMP_ERROR)); + TERN_(DWIN_LCD_PROUI, dwinMPCTuning(MPC_TEMP_ERROR)); wait_for_heatup = false; return FAILED; } @@ -1187,7 +1187,7 @@ volatile bool Temperature::raw_temps_ready = false; if (!wait_for_heatup) { SERIAL_ECHOLNPGM(STR_MPC_AUTOTUNE_INTERRUPTED); - TERN_(DWIN_LCD_PROUI, DWIN_MPCTuning(MPC_INTERRUPTED)); + TERN_(DWIN_LCD_PROUI, dwinMPCTuning(MPC_INTERRUPTED)); return MeasurementState::CANCELLED; } @@ -1215,7 +1215,7 @@ volatile bool Temperature::raw_temps_ready = false; // Determine ambient temperature. SERIAL_ECHOLNPGM(STR_MPC_COOLING_TO_AMBIENT); #if ENABLED(DWIN_LCD_PROUI) - DWIN_MPCTuning(MPCTEMP_START); + dwinMPCTuning(MPCTEMP_START); LCD_ALERTMESSAGE(MSG_MPC_COOLING_TO_AMBIENT); #else LCD_MESSAGE(MSG_COOLING); @@ -1305,7 +1305,7 @@ volatile bool Temperature::raw_temps_ready = false; } SERIAL_ECHOLNPGM(STR_MPC_AUTOTUNE_FINISHED); - TERN_(DWIN_LCD_PROUI, DWIN_MPCTuning(AUTOTUNE_DONE)); + TERN_(DWIN_LCD_PROUI, dwinMPCTuning(AUTOTUNE_DONE)); SERIAL_ECHOLNPGM("MPC_BLOCK_HEAT_CAPACITY ", mpc.block_heat_capacity); SERIAL_ECHOLNPGM("MPC_SENSOR_RESPONSIVENESS ", p_float_t(mpc.sensor_responsiveness, 4)); From 1bc155e8101001c75b867017fc5fcd31cc5d2f31 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Fri, 30 Jun 2023 17:21:37 -0700 Subject: [PATCH 336/427] =?UTF-8?q?=F0=9F=8E=A8=20Simplify=20BTT=20Octopus?= =?UTF-8?q?=20Max=20EZ=20LCD=20Pins=20(#26019)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h | 136 +++++------------- 1 file changed, 36 insertions(+), 100 deletions(-) diff --git a/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h b/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h index ee92372b5a0f..bd230da6fc15 100644 --- a/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h +++ b/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h @@ -325,6 +325,7 @@ #endif // HAS_TMC_UART /** + * 18-pin FPC Connector * ---- * (MISO) PE13 | 1 | * (SCK) PE12 | 2 | @@ -398,100 +399,37 @@ // // LCDs and Controllers // -#if IS_TFTGLCD_PANEL - #if ENABLED(TFTGLCD_PANEL_SPI) - #define TFTGLCD_CS EXP2_03_PIN - #endif - -#elif HAS_WIRED_LCD +#if ENABLED(BTT_MINI_12864_V1) // BTT Mini 12864 V2.0 connected via 18-pin FCP cable #define BEEPER_PIN EXP1_01_PIN #define BTN_ENC EXP1_02_PIN + #define LCD_PINS_RS EXP1_04_PIN - #if ENABLED(CR10_STOCKDISPLAY) - - #define LCD_PINS_RS EXP1_07_PIN - - #define BTN_EN1 EXP1_03_PIN - #define BTN_EN2 EXP1_05_PIN - - #define LCD_PINS_EN EXP1_08_PIN - #define LCD_PINS_D4 EXP1_06_PIN - - #else - - #define LCD_PINS_RS EXP1_04_PIN - - #define BTN_EN1 EXP2_03_PIN - #define BTN_EN2 EXP2_05_PIN - - #define LCD_PINS_EN EXP1_03_PIN - #define LCD_PINS_D4 EXP1_05_PIN - - #if ENABLED(FYSETC_MINI_12864) - #define DOGLCD_CS EXP1_03_PIN - #define DOGLCD_A0 EXP1_04_PIN - #define DOGLCD_SCK EXP2_02_PIN - #define DOGLCD_MOSI EXP2_06_PIN - - #define SOFTWARE_SPI - #define FORCE_SOFT_SPI // Use this if default of hardware SPI causes display problems - // results in LCD soft SPI mode 3, SD soft SPI mode 0 - //#define LCD_BACKLIGHT_PIN -1 - #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. - #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) - #ifndef RGB_LED_R_PIN - #define RGB_LED_R_PIN EXP1_06_PIN - #endif - #ifndef RGB_LED_G_PIN - #define RGB_LED_G_PIN EXP1_07_PIN - #endif - #ifndef RGB_LED_B_PIN - #define RGB_LED_B_PIN EXP1_08_PIN - #endif - #elif ENABLED(FYSETC_MINI_12864_2_1) - #define NEOPIXEL_PIN EXP1_06_PIN - #endif - #endif // !FYSETC_MINI_12864 - - #if IS_ULTIPANEL - #define LCD_PINS_D5 EXP1_06_PIN - #define LCD_PINS_D6 EXP1_07_PIN - #define LCD_PINS_D7 EXP1_08_PIN - - #if ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) - #define BTN_ENC_EN LCD_PINS_D7 // Detect the presence of the encoder - #endif - - #endif + #define BTN_EN1 EXP2_03_PIN + #define BTN_EN2 EXP2_05_PIN - #endif -#endif // HAS_WIRED_LCD + #define LCD_PINS_EN EXP1_03_PIN + #define LCD_PINS_D4 EXP1_05_PIN + #define LCD_PINS_D5 EXP1_06_PIN + #define LCD_PINS_D6 EXP1_07_PIN + #define LCD_PINS_D7 EXP1_08_PIN -// Alter timing for graphical display -#if IS_U8GLIB_ST7920 - #define BOARD_ST7920_DELAY_1 120 - #define BOARD_ST7920_DELAY_2 80 - #define BOARD_ST7920_DELAY_3 580 -#endif + #define DOGLCD_CS EXP1_03_PIN + #define DOGLCD_A0 EXP1_04_PIN + #define DOGLCD_SCK EXP2_02_PIN + #define DOGLCD_MOSI EXP2_06_PIN -#if HAS_SPI_TFT - #define TFT_CS_PIN EXP2_04_PIN - #define TFT_A0_PIN EXP2_07_PIN - #define TFT_SCK_PIN EXP2_02_PIN - #define TFT_MISO_PIN EXP2_01_PIN - #define TFT_MOSI_PIN EXP2_06_PIN + #define SOFTWARE_SPI + #define FORCE_SOFT_SPI // Use this if Hardware SPI causes display problems. + // Results in LCD Software SPI mode 3, SD Software SPI mode 0. - #define TOUCH_INT_PIN EXP1_07_PIN - #define TOUCH_MISO_PIN EXP1_06_PIN - #define TOUCH_MOSI_PIN EXP1_03_PIN - #define TOUCH_SCK_PIN EXP1_05_PIN - #define TOUCH_CS_PIN EXP1_04_PIN + //#define LCD_BACKLIGHT_PIN -1 + #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. + #define NEOPIXEL_PIN EXP1_06_PIN - #define BTN_EN1 EXP2_03_PIN - #define BTN_EN2 EXP2_05_PIN - #define BTN_ENC EXP1_02_PIN +#elif HAS_WIRED_LCD + #error "Only BTT_MINI_12864_V1 is currently supported on the BIGTREE_OCTOPUS_MAX_EZ." #endif // @@ -500,28 +438,26 @@ #ifndef NEOPIXEL_PIN #define NEOPIXEL_PIN PE10 #endif - #ifndef NEOPIXEL2_PIN #define NEOPIXEL2_PIN PE9 #endif +// +// WIFI +// #if ENABLED(WIFISUPPORT) - // - // WIFI - // - /** - * ------- - * GND | 9 | | 8 | 3.3V - * (ESP-CS) PG1 | 10 | | 7 | PB15 (ESP-MOSI) - * 3.3V | 11 | | 6 | PB14 (ESP-MISO) - * (ESP-IO0) PG0 | 12 | | 5 | PB13 (ESP-CLK) - * (ESP-IO4) PF15 | 13 | | 4 | -- - * -- | 14 | | 3 | 3.3V (ESP-EN) - * (ESP-RX) PE7 | 15 | | 2 | -- - * (ESP-TX) PE8 | 16 | | 1 | PB2 (ESP-RST) - * ------- - * WIFI + * -------- + * GND | 9 8 | 3.3V + * (ESP-CS) PG1 | 10 7 | PB15 (ESP-MOSI) + * 3.3V | 11 6 | PB14 (ESP-MISO) + * (ESP-IO0) PG0 | 12 5 | PB13 (ESP-CLK) + * (ESP-IO4) PF15 | 13 4 | -- + * -- | 14 3 | 3.3V (ESP-EN) + * (ESP-RX) PE7 | 15 2 | -- + * (ESP-TX) PE8 | 16 1 | PB2 (ESP-RST) + * -------- + * WIFI */ #define ESP_WIFI_MODULE_COM 7 // Must also set either SERIAL_PORT or SERIAL_PORT_2 to this #define ESP_WIFI_MODULE_BAUDRATE BAUDRATE // Must use same BAUDRATE as SERIAL_PORT & SERIAL_PORT_2 From 0878b99b2cb38ffd40faa12d9e3de3bd659af205 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 30 Jun 2023 19:21:56 -0500 Subject: [PATCH 337/427] =?UTF-8?q?=F0=9F=8C=90=20Language=20Import/Export?= =?UTF-8?q?=20(#25889)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 +- Marlin/src/feature/pause.cpp | 6 +- Marlin/src/lcd/e3v2/proui/dwin.h | 4 +- .../ftdi_eve_touch_ui/language/language_en.h | 2 + Marlin/src/lcd/language/language_an.h | 93 +- Marlin/src/lcd/language/language_bg.h | 51 +- Marlin/src/lcd/language/language_ca.h | 92 +- Marlin/src/lcd/language/language_cz.h | 178 ++-- Marlin/src/lcd/language/language_da.h | 87 +- Marlin/src/lcd/language/language_de.h | 154 +-- Marlin/src/lcd/language/language_el.h | 51 +- Marlin/src/lcd/language/language_el_gr.h | 51 +- Marlin/src/lcd/language/language_en.h | 195 ++-- Marlin/src/lcd/language/language_es.h | 128 +-- Marlin/src/lcd/language/language_eu.h | 82 +- Marlin/src/lcd/language/language_fi.h | 51 +- Marlin/src/lcd/language/language_fr.h | 137 +-- Marlin/src/lcd/language/language_fr_na.h | 137 +-- Marlin/src/lcd/language/language_gl.h | 126 +-- Marlin/src/lcd/language/language_hr.h | 80 +- Marlin/src/lcd/language/language_hu.h | 131 +-- Marlin/src/lcd/language/language_it.h | 150 ++- Marlin/src/lcd/language/language_jp_kana.h | 53 +- Marlin/src/lcd/language/language_ko_KR.h | 39 +- Marlin/src/lcd/language/language_nl.h | 94 +- Marlin/src/lcd/language/language_pl.h | 124 +-- Marlin/src/lcd/language/language_pt.h | 51 +- Marlin/src/lcd/language/language_pt_br.h | 114 ++- Marlin/src/lcd/language/language_ro.h | 98 +- Marlin/src/lcd/language/language_ru.h | 953 ++++++++---------- Marlin/src/lcd/language/language_sk.h | 191 ++-- Marlin/src/lcd/language/language_sv.h | 129 +-- Marlin/src/lcd/language/language_tr.h | 183 ++-- Marlin/src/lcd/language/language_uk.h | 539 ++++------ Marlin/src/lcd/language/language_vi.h | 57 +- Marlin/src/lcd/language/language_zh_CN.h | 131 +-- Marlin/src/lcd/language/language_zh_TW.h | 112 +- Marlin/src/lcd/menu/menu_main.cpp | 16 +- buildroot/share/scripts/__init__.py | 0 ...xportTranslations.py => languageExport.py} | 100 +- buildroot/share/scripts/languageImport.py | 219 ++++ buildroot/share/scripts/languageUtil.py | 41 + 42 files changed, 2757 insertions(+), 2476 deletions(-) create mode 100644 buildroot/share/scripts/__init__.py rename buildroot/share/scripts/{exportTranslations.py => languageExport.py} (65%) create mode 100755 buildroot/share/scripts/languageImport.py create mode 100755 buildroot/share/scripts/languageUtil.py diff --git a/.gitignore b/.gitignore index fcdeb5e521dd..c7d47c607fd1 100755 --- a/.gitignore +++ b/.gitignore @@ -26,7 +26,8 @@ genpages.exe marlin_config.json mczip.h language*.csv -csv-out/ +out-csv/ +out-language/ *.gen *.sublime-workspace diff --git a/Marlin/src/feature/pause.cpp b/Marlin/src/feature/pause.cpp index 02287a51b8f1..f098ad9c516e 100644 --- a/Marlin/src/feature/pause.cpp +++ b/Marlin/src/feature/pause.cpp @@ -546,7 +546,11 @@ void wait_for_confirmation(const bool is_reload/*=false*/, const int8_t max_beep TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, GET_TEXT_F(MSG_HEATER_TIMEOUT), GET_TEXT_F(MSG_REHEAT))); - TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_HEATER_TIMEOUT))); + #if ENABLED(TOUCH_UI_FTDI_EVE) + ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FTDI_HEATER_TIMEOUT)); + #elif ENABLED(EXTENSIBLE_UI) + ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_HEATER_TIMEOUT)); + #endif TERN_(HAS_RESUME_CONTINUE, wait_for_user_response(0, true)); // Wait for LCD click or M108 diff --git a/Marlin/src/lcd/e3v2/proui/dwin.h b/Marlin/src/lcd/e3v2/proui/dwin.h index 62bf2ad99ee3..3c5bad1e9abd 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.h +++ b/Marlin/src/lcd/e3v2/proui/dwin.h @@ -47,8 +47,8 @@ namespace GET_LANG(LCD_LANGUAGE) { #define _MSG_PREHEAT(N) \ LSTR MSG_PREHEAT_##N = _UxGT("Preheat ") PREHEAT_## N ##_LABEL; \ LSTR MSG_PREHEAT_## N ##_SETTINGS = _UxGT("Preheat ") PREHEAT_## N ##_LABEL _UxGT(" Conf"); - #if PREHEAT_COUNT > 3 - REPEAT_S(4, PREHEAT_COUNT, _MSG_PREHEAT) + #if PREHEAT_COUNT > 1 + REPEAT_S(2, INCREMENT(PREHEAT_COUNT), _MSG_PREHEAT) #endif } diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language_en.h b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language_en.h index 9c069d9d246e..db37ccfd22e4 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language_en.h +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language_en.h @@ -147,6 +147,8 @@ namespace Language_en { LSTR MSG_MOVE_Z_TO_TOP = u8"Raise Z to Top"; LSTR MSG_MAX_SPEED_NO_UNITS = u8"Max Speed"; + //LSTR MSG_FTDI_HEATER_TIMEOUT = u8"Idle timeout, temperature decreased. Press Okay to reheat and again to resume."; + #if ENABLED(TOUCH_UI_LULZBOT_BIO) LSTR MSG_MOVE_TO_HOME = u8"Move to Home"; LSTR MSG_RAISE_PLUNGER = u8"Raise Plunger"; diff --git a/Marlin/src/lcd/language/language_an.h b/Marlin/src/lcd/language/language_an.h index 7d6b6de33b66..0d2b96d5a459 100644 --- a/Marlin/src/lcd/language/language_an.h +++ b/Marlin/src/lcd/language/language_an.h @@ -31,7 +31,7 @@ #define DISPLAY_CHARSET_ISO10646_1 #define NOT_EXTENDED_ISO10646_1_5X7 -namespace Language_an { +namespace LanguageNarrow_an { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 1; @@ -55,23 +55,23 @@ namespace Language_an { LSTR MSG_LEVEL_BED_DONE = _UxGT("Nivelacion feita!"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Achustar desfases"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Desfase aplicau"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Precalentar ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Precalentar ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Boquilla"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Boquilla ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Precalentar ") PREHEAT_1_LABEL _UxGT(" Tot"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Precalentar ") PREHEAT_1_LABEL _UxGT(" Base"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Precalentar ") PREHEAT_1_LABEL _UxGT(" Conf"); - - LSTR MSG_PREHEAT_M = _UxGT("Precalentar $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Precalentar $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Precal. $ Boquilla"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Precal. $ Boquilla ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Precalentar $ Tot"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Precalentar $ Base"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Precalentar $ Conf"); - #endif + + LSTR MSG_PREHEAT_1 = _UxGT("Precalentar ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Precalentar ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Boquilla"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Boquilla ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Precalentar ") PREHEAT_1_LABEL _UxGT(" Tot"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Precalentar ") PREHEAT_1_LABEL _UxGT(" Base"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Precalentar ") PREHEAT_1_LABEL _UxGT(" Conf"); + + LSTR MSG_PREHEAT_M = _UxGT("Precalentar $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Precalentar $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Precal. $ Boquilla"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Precal. $ Boquilla ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Precalentar $ Tot"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Precalentar $ Base"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Precalentar $ Conf"); + LSTR MSG_COOLDOWN = _UxGT("Enfriar"); LSTR MSG_SWITCH_PS_ON = _UxGT("Enchegar Fuent"); LSTR MSG_SWITCH_PS_OFF = _UxGT("Amortar Fuent"); @@ -192,19 +192,11 @@ namespace Language_an { LSTR MSG_INFO_PROTOCOL = _UxGT("Protocolo"); LSTR MSG_CASE_LIGHT = _UxGT("Luz"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Conteo de impresion"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Tiempo total d'imp."); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Impresion mas larga"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total d'extrusion"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impresions"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Mas larga"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrusion"); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impresions"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Mas larga"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrusion"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Temperatura menima"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Temperatura maxima"); @@ -214,22 +206,35 @@ namespace Language_an { LSTR MSG_DAC_EEPROM_WRITE = _UxGT("Escri. DAC EEPROM"); LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("Resumir imp."); - // - // Filament Change screens show up to 3 lines on a 4-line display - // ...or up to 2 lines on a 3-line display - // + // Up to 2 lines allowed + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("Aguardand iniciar", "d'o fil. cambear")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_2_LINE("Meta o filamento", "y prete lo boton")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Aguardando a", "expulsar filament")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Aguardando a", "cargar filamento")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Aguardando impre.", "pa continar")); +} + +namespace LanguageWide_an { + using namespace LanguageNarrow_an; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Conteo de impresion"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Tiempo total d'imp."); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Impresion mas larga"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total d'extrusion"); + #endif +} + +namespace LanguageTall_an { + using namespace LanguageWide_an; #if LCD_HEIGHT >= 4 - // Up to 3 lines allowed + // Filament Change screens show up to 3 lines on a 4-line display LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Aguardand iniciar", "d'o filamento", "cambear")); LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Meta o filamento", "y prete lo boton", "pa continar...")); - #else // LCD_HEIGHT < 4 - // Up to 2 lines allowed - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("Aguardand iniciar", "d'o fil. cambear")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_2_LINE("Meta o filamento", "y prete lo boton")); - #endif // LCD_HEIGHT < 4 + #endif +} - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Aguardando a", "expulsar filament")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Aguardando a", "cargar filamento")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Aguardando impre.", "pa continar")); +namespace Language_an { + using namespace LanguageTall_an; } diff --git a/Marlin/src/lcd/language/language_bg.h b/Marlin/src/lcd/language/language_bg.h index 17f631090d33..ed76dfa48dc6 100644 --- a/Marlin/src/lcd/language/language_bg.h +++ b/Marlin/src/lcd/language/language_bg.h @@ -30,7 +30,7 @@ #define DISPLAY_CHARSET_ISO10646_5 -namespace Language_bg { +namespace LanguageNarrow_bg { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -44,23 +44,23 @@ namespace Language_bg { LSTR MSG_DISABLE_STEPPERS = _UxGT("Изкл. двигатели"); LSTR MSG_AUTO_HOME = _UxGT("Паркиране"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Задай Начало"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Подгряване ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Подгряване ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Подгряване ") PREHEAT_1_LABEL _UxGT(" Дюза"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Подгряване ") PREHEAT_1_LABEL _UxGT(" Дюза ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Подгр. ") PREHEAT_1_LABEL _UxGT(" Всички"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Подгр. ") PREHEAT_1_LABEL _UxGT(" Легло"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Настройки ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_M = _UxGT("Подгряване $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Подгряване $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Подгряване $ Дюза"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Подгряване $ Дюза ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Подгр. $ Всички"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Подгр. $ Легло"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Настройки $"); - #endif + LSTR MSG_PREHEAT_1 = _UxGT("Подгряване ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Подгряване ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Подгряване ") PREHEAT_1_LABEL _UxGT(" Дюза"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Подгряване ") PREHEAT_1_LABEL _UxGT(" Дюза ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Подгр. ") PREHEAT_1_LABEL _UxGT(" Всички"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Подгр. ") PREHEAT_1_LABEL _UxGT(" Легло"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Настройки ") PREHEAT_1_LABEL; + + LSTR MSG_PREHEAT_M = _UxGT("Подгряване $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Подгряване $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Подгряване $ Дюза"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Подгряване $ Дюза ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Подгр. $ Всички"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Подгр. $ Легло"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Настройки $"); + LSTR MSG_COOLDOWN = _UxGT("Охлаждане"); LSTR MSG_SWITCH_PS_ON = _UxGT("Вкл. захранване"); LSTR MSG_SWITCH_PS_OFF = _UxGT("Изкл. захранване"); @@ -157,3 +157,20 @@ namespace Language_bg { LSTR MSG_DELTA_CALIBRATE_CENTER = _UxGT("Калибровка Център"); LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Неправилен принтер"); } + +namespace LanguageWide_bg { + using namespace LanguageNarrow_bg; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + #endif +} + +namespace LanguageTall_bg { + using namespace LanguageWide_bg; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + #endif +} + +namespace Language_bg { + using namespace LanguageTall_bg; +} diff --git a/Marlin/src/lcd/language/language_ca.h b/Marlin/src/lcd/language/language_ca.h index b750ff155125..7a83da7d4e54 100644 --- a/Marlin/src/lcd/language/language_ca.h +++ b/Marlin/src/lcd/language/language_ca.h @@ -27,7 +27,7 @@ * LCD Menu Messages * See also https://marlinfw.org/docs/development/lcd_language.html */ -namespace Language_ca { +namespace LanguageNarrow_ca { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -53,23 +53,23 @@ namespace Language_ca { LSTR MSG_LEVEL_BED_DONE = _UxGT("Anivellament fet!"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Ajusta decalatge"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Decalatge aplicat"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Preescalfa ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Preescalfa ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" End"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" End ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" Tot"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" Llit"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" Conf."); - - LSTR MSG_PREHEAT_M = _UxGT("Preescalfa $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Preescalfa $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Preescalfa $ End"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Preescalfa $ End ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Preescalfa $ Tot"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Preescalfa $ Llit"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Preescalfa $ Conf."); - #endif + + LSTR MSG_PREHEAT_1 = _UxGT("Preescalfa ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Preescalfa ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" End"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" End ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" Tot"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" Llit"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" Conf."); + + LSTR MSG_PREHEAT_M = _UxGT("Preescalfa $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Preescalfa $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Preescalfa $ End"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Preescalfa $ End ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Preescalfa $ Tot"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Preescalfa $ Llit"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Preescalfa $ Conf."); + LSTR MSG_COOLDOWN = _UxGT("Refreda"); LSTR MSG_EXTRUDE = _UxGT("Extrudeix"); @@ -183,19 +183,11 @@ namespace Language_ca { LSTR MSG_INFO_PROTOCOL = _UxGT("Protocol"); LSTR MSG_CASE_LIGHT = _UxGT("Llum"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Total impressions"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Acabades"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Temps imprimint"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Treball mes llarg"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total extrudit"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impressions"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Acabades"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Mes llarg"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrudit"); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impressions"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Acabades"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Mes llarg"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrudit"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Temp. mínima"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Temp. màxima"); @@ -208,10 +200,31 @@ namespace Language_ca { LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Impressora incorrecta"); // - // Filament Change screens show up to 3 lines on a 4-line display - // ...or up to 2 lines on a 3-line display + // Filament Change screens show up to 2 lines on a 3-line display // + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Espereu...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Expulsant...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Insereix i prem")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Escalfant...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Carregant...")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Reprenent...")); +} + +namespace LanguageWide_ca { + using namespace LanguageNarrow_ca; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Total impressions"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Acabades"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Temps imprimint"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Treball mes llarg"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total extrudit"); + #endif +} + +namespace LanguageTall_ca { + using namespace LanguageWide_ca; #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Esperant per", "iniciar el canvi", "de filament")); LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Esperant per", "treure filament")); LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Poseu filament", "i premeu el boto", "per continuar...")); @@ -219,12 +232,9 @@ namespace Language_ca { LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Escalfant nozzle", "Espereu...")); LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Esperant carrega", "de filament")); LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Esperant per", "reprendre")); - #else // LCD_HEIGHT < 4 - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Espereu...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Expulsant...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Insereix i prem")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Escalfant...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Carregant...")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Reprenent...")); - #endif // LCD_HEIGHT < 4 + #endif +} + +namespace Language_ca { + using namespace LanguageTall_ca; } diff --git a/Marlin/src/lcd/language/language_cz.h b/Marlin/src/lcd/language/language_cz.h index 1f697f8d5a25..ba54eb051e29 100644 --- a/Marlin/src/lcd/language/language_cz.h +++ b/Marlin/src/lcd/language/language_cz.h @@ -35,7 +35,7 @@ #define DISPLAY_CHARSET_ISO10646_CZ -namespace Language_cz { +namespace LanguageNarrow_cz { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -60,11 +60,7 @@ namespace Language_cz { LSTR MSG_RUN_AUTO_FILES = _UxGT("Autostart"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Uvolnit motory"); LSTR MSG_DEBUG_MENU = _UxGT("Nabídka ladění"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_PROGRESS_BAR_TEST = _UxGT("Test ukaz. průběhu"); - #else - LSTR MSG_PROGRESS_BAR_TEST = _UxGT("Test uk. průběhu"); - #endif + LSTR MSG_PROGRESS_BAR_TEST = _UxGT("Test uk. průběhu"); LSTR MSG_AUTO_HOME = _UxGT("Domovská pozice"); LSTR MSG_AUTO_HOME_X = _UxGT("Domů osa X"); LSTR MSG_AUTO_HOME_Y = _UxGT("Domů osa Y"); @@ -77,23 +73,23 @@ namespace Language_cz { LSTR MSG_Z_FADE_HEIGHT = _UxGT("Výška srovnávání"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Nastavit ofsety"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Ofsety nastaveny"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Zahřát ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Zahřát ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Zahřát ") PREHEAT_1_LABEL _UxGT(" end"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Zahřát ") PREHEAT_1_LABEL _UxGT(" end ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Zahřát ") PREHEAT_1_LABEL _UxGT(" vše"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Zahřát ") PREHEAT_1_LABEL _UxGT(" podlož"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Zahřát ") PREHEAT_1_LABEL _UxGT(" nast"); - LSTR MSG_PREHEAT_M = _UxGT("Zahřát $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Zahřát $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Zahřát $ end"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Zahřát $ end ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Zahřát $ vše"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Zahřát $ podlož"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Zahřát $ nast"); - #endif + LSTR MSG_PREHEAT_1 = _UxGT("Zahřát ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Zahřát ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Zahřát ") PREHEAT_1_LABEL _UxGT(" end"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Zahřát ") PREHEAT_1_LABEL _UxGT(" end ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Zahřát ") PREHEAT_1_LABEL _UxGT(" vše"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Zahřát ") PREHEAT_1_LABEL _UxGT(" podlož"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Zahřát ") PREHEAT_1_LABEL _UxGT(" nast"); + + LSTR MSG_PREHEAT_M = _UxGT("Zahřát $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Zahřát $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Zahřát $ end"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Zahřát $ end ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Zahřát $ vše"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Zahřát $ podlož"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Zahřát $ nast"); + LSTR MSG_PREHEAT_CUSTOM = _UxGT("Zahřát vlastní"); LSTR MSG_COOLDOWN = _UxGT("Zchladit"); LSTR MSG_LASER_MENU = _UxGT("Ovládání laseru"); @@ -152,10 +148,8 @@ namespace Language_cz { LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Konec úprav sítě"); LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Vlastní síť"); LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("Vytvořit síť"); - #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Síť bodů $"); - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Kontrola sítě $"); - #endif + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Síť bodů $"); + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Kontrola sítě $"); LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Studená síť bodů"); LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("Upravit výšku sítě"); LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("Výška"); @@ -414,16 +408,8 @@ namespace Language_cz { LSTR MSG_PLEASE_RESET = _UxGT("Proveďte reset"); LSTR MSG_HEATING = _UxGT("Zahřívání..."); LSTR MSG_COOLING = _UxGT("Chlazení..."); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_BED_HEATING = _UxGT("Zahřívání podložky"); - #else - LSTR MSG_BED_HEATING = _UxGT("Zahřívání podl."); - #endif - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_BED_COOLING = _UxGT("Chlazení podložky"); - #else - LSTR MSG_BED_COOLING = _UxGT("Chlazení podl."); - #endif + LSTR MSG_BED_HEATING = _UxGT("Zahřívání podl."); + LSTR MSG_BED_COOLING = _UxGT("Chlazení podl."); LSTR MSG_CHAMBER_HEATING = _UxGT("Zahřívání komory..."); LSTR MSG_CHAMBER_COOLING = _UxGT("Chlazení komory..."); LSTR MSG_DELTA_CALIBRATE = _UxGT("Delta Kalibrace"); @@ -456,19 +442,11 @@ namespace Language_cz { LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Jas světla"); LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("NESPRÁVNÁ TISKÁRNA"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Počet tisků"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Dokončeno"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Celkový čas"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Nejdelší tisk"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Celkem vytlačeno"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Tisky"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Hotovo"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Čas"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Nejdelší"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Vytlačeno"); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Tisky"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Hotovo"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Čas"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Nejdelší"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Vytlačeno"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Teplota min"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Teplota max"); @@ -520,7 +498,59 @@ namespace Language_cz { LSTR MSG_CYCLE_MIX = _UxGT("Střídat mix"); LSTR MSG_GRADIENT_MIX = _UxGT("Přechod mix"); LSTR MSG_REVERSE_GRADIENT = _UxGT("Opačný přechod"); + LSTR MSG_ACTIVE_VTOOL = _UxGT("Aktivní V-nástr."); + LSTR MSG_START_VTOOL = _UxGT("Spustit V-nástr."); + LSTR MSG_END_VTOOL = _UxGT("Ukončit V-nástr."); + LSTR MSG_GRADIENT_ALIAS = _UxGT("Alias V-nástr."); + LSTR MSG_RESET_VTOOLS = _UxGT("Reset. V-nástr."); + LSTR MSG_COMMIT_VTOOL = _UxGT("Uložit V-nás. mix"); + LSTR MSG_VTOOLS_RESET = _UxGT("V-nástr. reset."); + LSTR MSG_START_Z = _UxGT("Počáteční Z:"); + LSTR MSG_END_Z = _UxGT(" Koncové Z:"); + + LSTR MSG_GAMES = _UxGT("Hry"); + LSTR MSG_BRICKOUT = _UxGT("Brickout"); + LSTR MSG_INVADERS = _UxGT("Invaders"); + LSTR MSG_SNAKE = _UxGT("Sn4k3"); + LSTR MSG_MAZE = _UxGT("Bludiště"); + + // Up to 2 lines allowed + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Stikněte tlač.", "pro obnovení")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkování...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Čekejte...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Vložte, klikněte")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Klikněte pro", "nahřátí")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Nahřívání...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Vysouvání...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Zavádění...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Vytlačování...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Klikněte pro", "ukončení")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Pokračování...")); + + LSTR MSG_TMC_DRIVERS = _UxGT("TMC budiče"); + LSTR MSG_TMC_CURRENT = _UxGT("Proud budičů"); + LSTR MSG_TMC_HYBRID_THRS = _UxGT("Hybridní práh"); + LSTR MSG_TMC_HOMING_THRS = _UxGT("Domů bez senzorů"); + LSTR MSG_TMC_STEPPING_MODE = _UxGT("Režim kroků"); + LSTR MSG_TMC_STEALTH_ENABLED = _UxGT("StealthChop povolen"); + LSTR MSG_SERVICE_RESET = _UxGT("Reset"); + LSTR MSG_SERVICE_IN = _UxGT(" za:"); + LSTR MSG_BACKLASH = _UxGT("Vůle"); + LSTR MSG_BACKLASH_CORRECTION = _UxGT("Korekce"); + LSTR MSG_BACKLASH_SMOOTHING = _UxGT("Vyhlazení"); +} + +namespace LanguageWide_cz { + using namespace LanguageNarrow_cz; #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_PROGRESS_BAR_TEST = _UxGT("Test ukaz. průběhu"); + LSTR MSG_BED_HEATING = _UxGT("Zahřívání podložky"); + LSTR MSG_BED_COOLING = _UxGT("Chlazení podložky"); + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Počet tisků"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Dokončeno"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Celkový čas"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Nejdelší tisk"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Celkem vytlačeno"); LSTR MSG_ACTIVE_VTOOL = _UxGT("Aktivní V-nástroj"); LSTR MSG_START_VTOOL = _UxGT("Spustit V-nástroj"); LSTR MSG_END_VTOOL = _UxGT("Ukončit V-nástroj"); @@ -528,26 +558,13 @@ namespace Language_cz { LSTR MSG_RESET_VTOOLS = _UxGT("Resetovat V-nástroj"); LSTR MSG_COMMIT_VTOOL = _UxGT("Uložit V-nástroj mix"); LSTR MSG_VTOOLS_RESET = _UxGT("V-nástroj resetovat"); - #else - LSTR MSG_ACTIVE_VTOOL = _UxGT("Aktivní V-nástr."); - LSTR MSG_START_VTOOL = _UxGT("Spustit V-nástr."); - LSTR MSG_END_VTOOL = _UxGT("Ukončit V-nástr."); - LSTR MSG_GRADIENT_ALIAS = _UxGT("Alias V-nástr."); - LSTR MSG_RESET_VTOOLS = _UxGT("Reset. V-nástr."); - LSTR MSG_COMMIT_VTOOL = _UxGT("Uložit V-nás. mix"); - LSTR MSG_VTOOLS_RESET = _UxGT("V-nástr. reset."); #endif - LSTR MSG_START_Z = _UxGT("Počáteční Z:"); - LSTR MSG_END_Z = _UxGT(" Koncové Z:"); - - LSTR MSG_GAMES = _UxGT("Hry"); - LSTR MSG_BRICKOUT = _UxGT("Brickout"); - LSTR MSG_INVADERS = _UxGT("Invaders"); - LSTR MSG_SNAKE = _UxGT("Sn4k3"); - LSTR MSG_MAZE = _UxGT("Bludiště"); +} +namespace LanguageTall_cz { + using namespace LanguageWide_cz; #if LCD_HEIGHT >= 4 - // Up to 3 lines allowed + // Filament Change screens show up to 3 lines on a 4-line display LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Stikněte tlačítko", "pro obnovení tisku")); LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkování...")); LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Čekejte prosím", "na zahájení", "výměny filamentu")); @@ -559,30 +576,9 @@ namespace Language_cz { LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Vyčkejte na", "vytlačení")); LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_3_LINE("Klikněte pro", "ukončení", "vytlačování")); LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_3_LINE("Čekejte prosím", "na pokračování", "tisku")); - #else // LCD_HEIGHT < 4 - // Up to 2 lines allowed - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Stikněte tlač.", "pro obnovení")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkování...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Čekejte...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Vložte, klikněte")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Klikněte pro", "nahřátí")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Nahřívání...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Vysouvání...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Zavádění...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Vytlačování...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Klikněte pro", "ukončení")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Pokračování...")); - #endif // LCD_HEIGHT < 4 + #endif +} - LSTR MSG_TMC_DRIVERS = _UxGT("TMC budiče"); - LSTR MSG_TMC_CURRENT = _UxGT("Proud budičů"); - LSTR MSG_TMC_HYBRID_THRS = _UxGT("Hybridní práh"); - LSTR MSG_TMC_HOMING_THRS = _UxGT("Domů bez senzorů"); - LSTR MSG_TMC_STEPPING_MODE = _UxGT("Režim kroků"); - LSTR MSG_TMC_STEALTH_ENABLED = _UxGT("StealthChop povolen"); - LSTR MSG_SERVICE_RESET = _UxGT("Reset"); - LSTR MSG_SERVICE_IN = _UxGT(" za:"); - LSTR MSG_BACKLASH = _UxGT("Vůle"); - LSTR MSG_BACKLASH_CORRECTION = _UxGT("Korekce"); - LSTR MSG_BACKLASH_SMOOTHING = _UxGT("Vyhlazení"); +namespace Language_cz { + using namespace LanguageTall_cz; } diff --git a/Marlin/src/lcd/language/language_da.h b/Marlin/src/lcd/language/language_da.h index 91dc3513f7fc..6a7bcad59823 100644 --- a/Marlin/src/lcd/language/language_da.h +++ b/Marlin/src/lcd/language/language_da.h @@ -30,7 +30,7 @@ #define DISPLAY_CHARSET_ISO10646_1 -namespace Language_da { +namespace LanguageNarrow_da { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -47,23 +47,23 @@ namespace Language_da { LSTR MSG_LEVEL_BED_DONE = _UxGT("Bed level er færdig!"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Sæt forsk. af home"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Forsk. er nu aktiv"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Forvarm ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Forvarm ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Forvarm ") PREHEAT_1_LABEL _UxGT(" end"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Forvarm ") PREHEAT_1_LABEL _UxGT(" end ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Forvarm ") PREHEAT_1_LABEL _UxGT(" Alle"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Forvarm ") PREHEAT_1_LABEL _UxGT(" Bed"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Forvarm ") PREHEAT_1_LABEL _UxGT(" conf"); - - LSTR MSG_PREHEAT_M = _UxGT("Forvarm $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Forvarm $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Forvarm $ end"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Forvarm $ end ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Forvarm $ Alle"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Forvarm $ Bed"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Forvarm $ conf"); - #endif + + LSTR MSG_PREHEAT_1 = _UxGT("Forvarm ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Forvarm ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Forvarm ") PREHEAT_1_LABEL _UxGT(" end"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Forvarm ") PREHEAT_1_LABEL _UxGT(" end ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Forvarm ") PREHEAT_1_LABEL _UxGT(" Alle"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Forvarm ") PREHEAT_1_LABEL _UxGT(" Bed"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Forvarm ") PREHEAT_1_LABEL _UxGT(" conf"); + + LSTR MSG_PREHEAT_M = _UxGT("Forvarm $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Forvarm $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Forvarm $ end"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Forvarm $ end ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Forvarm $ Alle"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Forvarm $ Bed"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Forvarm $ conf"); + LSTR MSG_COOLDOWN = _UxGT("Afkøl"); LSTR MSG_SWITCH_PS_ON = _UxGT("Slå strøm til"); LSTR MSG_SWITCH_PS_OFF = _UxGT("Slå strøm fra"); @@ -158,19 +158,11 @@ namespace Language_da { LSTR MSG_INFO_BOARD_MENU = _UxGT("Kort Info"); LSTR MSG_INFO_THERMISTOR_MENU = _UxGT("Thermistors"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Ant. Prints"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Færdige"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Total print tid"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Længste print"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total Extruderet"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Prints"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Færdige"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Længste"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruderet"); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Prints"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Færdige"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Længste"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruderet"); LSTR MSG_INFO_PSU = _UxGT("Strømfors."); @@ -183,17 +175,36 @@ namespace Language_da { LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Forkert printer"); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Vent venligst...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Udskyder...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Indsæt og klik")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Indtager...")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Fortsætter...")); +} + +namespace LanguageWide_da { + using namespace LanguageNarrow_da; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Ant. Prints"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Færdige"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Total print tid"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Længste print"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total Extruderet"); + #endif +} + +namespace LanguageTall_da { + using namespace LanguageWide_da; #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Vent på start", "af filament", "skift")); LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Vent på", "filament udskyd.")); LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Indsæt filament", "og tryk på knap", "for at fortsætte...")); LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Vent på", "filament indtag")); LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Vent på at print", "fortsætter")); - #else // LCD_HEIGHT < 4 - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Vent venligst...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Udskyder...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Indsæt og klik")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Indtager...")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Fortsætter...")); - #endif // LCD_HEIGHT < 4 + #endif +} + +namespace Language_da { + using namespace LanguageTall_da; } diff --git a/Marlin/src/lcd/language/language_de.h b/Marlin/src/lcd/language/language_de.h index 33abdbee2351..30e2521d2302 100644 --- a/Marlin/src/lcd/language/language_de.h +++ b/Marlin/src/lcd/language/language_de.h @@ -28,7 +28,7 @@ * See also https://marlinfw.org/docs/development/lcd_language.html */ -namespace Language_de { +namespace LanguageNarrow_de { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -92,30 +92,23 @@ namespace Language_de { LSTR MSG_TRAMMING_WIZARD = _UxGT("Tramming Assistent"); LSTR MSG_SELECT_ORIGIN = _UxGT("Wählen Sie Ursprung"); LSTR MSG_LAST_VALUE_SP = _UxGT("Letzter Wert "); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = PREHEAT_1_LABEL _UxGT(" Vorwärmen"); - LSTR MSG_PREHEAT_1_H = PREHEAT_1_LABEL _UxGT(" Vorwärmen ~"); - LSTR MSG_PREHEAT_1_END = PREHEAT_1_LABEL _UxGT(" Extr. Vorwärmen"); - LSTR MSG_PREHEAT_1_END_E = PREHEAT_1_LABEL _UxGT(" Extr. Vorwärm. ~"); - LSTR MSG_PREHEAT_1_ALL = PREHEAT_1_LABEL _UxGT(" Alles Vorwärmen"); - LSTR MSG_PREHEAT_1_BEDONLY = PREHEAT_1_LABEL _UxGT(" Bett Vorwärmen"); - LSTR MSG_PREHEAT_1_SETTINGS = PREHEAT_1_LABEL _UxGT(" Einstellungen"); - #ifdef PREHEAT_2_LABEL - LSTR MSG_PREHEAT_2 = PREHEAT_2_LABEL _UxGT(" Vorwärmen"); - LSTR MSG_PREHEAT_2_SETTINGS = PREHEAT_2_LABEL _UxGT(" Vorwärmen Konf"); - #endif - #ifdef PREHEAT_3_LABEL - LSTR MSG_PREHEAT_3 = PREHEAT_3_LABEL _UxGT(" Vorwärmen"); - LSTR MSG_PREHEAT_3_SETTINGS = PREHEAT_3_LABEL _UxGT(" Vorwärmen Konf"); - #endif - LSTR MSG_PREHEAT_M = _UxGT("$ Vorwärmen"); - LSTR MSG_PREHEAT_M_H = _UxGT("$ Vorwärmen") " ~"; - LSTR MSG_PREHEAT_M_END = _UxGT("$ Extr. Vorwärmen"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("$ Extr. Vorwärm. ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("$ Alles Vorwärmen"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("$ Bett Vorwärmen"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("$ Einstellungen"); - #endif + + LSTR MSG_PREHEAT_1 = PREHEAT_1_LABEL _UxGT(" Vorwärmen"); + LSTR MSG_PREHEAT_1_H = PREHEAT_1_LABEL _UxGT(" Vorwärmen ~"); + LSTR MSG_PREHEAT_1_END = PREHEAT_1_LABEL _UxGT(" Extr. Vorwärmen"); + LSTR MSG_PREHEAT_1_END_E = PREHEAT_1_LABEL _UxGT(" Extr. Vorwärm. ~"); + LSTR MSG_PREHEAT_1_ALL = PREHEAT_1_LABEL _UxGT(" Alles Vorwärmen"); + LSTR MSG_PREHEAT_1_BEDONLY = PREHEAT_1_LABEL _UxGT(" Bett Vorwärmen"); + LSTR MSG_PREHEAT_1_SETTINGS = PREHEAT_1_LABEL _UxGT(" Einstellungen"); + + LSTR MSG_PREHEAT_M = _UxGT("$ Vorwärmen"); + LSTR MSG_PREHEAT_M_H = _UxGT("$ Vorwärmen") " ~"; + LSTR MSG_PREHEAT_M_END = _UxGT("$ Extr. Vorwärmen"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("$ Extr. Vorwärm. ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("$ Alles Vorwärmen"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("$ Bett Vorwärmen"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("$ Einstellungen"); + LSTR MSG_PREHEAT_CUSTOM = _UxGT("benutzerdef. Heizen"); LSTR MSG_COOLDOWN = _UxGT("Abkühlen"); @@ -622,25 +615,13 @@ namespace Language_de { LSTR MSG_LOCKSCREEN_LOCKED = _UxGT("Drucker ist gesperrt,"); LSTR MSG_LOCKSCREEN_UNLOCK = _UxGT("Scrollen zum Entsper."); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Kein Medium eingelegt."); - LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Bitte auf Neustart warten."); - LSTR MSG_PLEASE_PREHEAT = _UxGT("Bitte das Hotend vorheizen."); - LSTR MSG_INFO_PRINT_COUNT_RESET = _UxGT("Druckzähler zurücksetzen"); - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Gesamte Drucke"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Komplette Drucke"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Gesamte Druckzeit"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Längste Druckzeit"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Gesamt Extrudiert"); - #else - LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Auf Neustart warten"); - LSTR MSG_PLEASE_PREHEAT = _UxGT("Bitte vorheizen"); - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Drucke"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Komplette"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Gesamte"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Längste"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrud."); - #endif + LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Auf Neustart warten"); + LSTR MSG_PLEASE_PREHEAT = _UxGT("Bitte vorheizen"); + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Drucke"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Komplette"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Gesamte"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Längste"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrud."); LSTR MSG_INFO_MIN_TEMP = _UxGT("Min Temp"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Max Temp"); @@ -729,34 +710,19 @@ namespace Language_de { LSTR MSG_PASSWORD_REMOVED = _UxGT("Passwort gelöscht"); // - // Die Filament-Change-Bildschirme können bis zu 3 Zeilen auf einem 4-Zeilen-Display anzeigen - // ...oder 2 Zeilen auf einem 3-Zeilen-Display. - - #if LCD_HEIGHT >= 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Knopf drücken um", "Druck fortzusetzen")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_2_LINE("Druck ist", "pausiert...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Warte auf den", "Start des", "Filamentwechsels...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Filament einlegen", "und Knopf drücken", "um fortzusetzen")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Knopf drücken um", "Düse aufzuheizen")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Düse heizt auf", "bitte warten...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Warte auf", "Entnahme", "des Filaments...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Warte auf", "Laden des", "Filaments...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_3_LINE("Warte auf", "Spülung", "der Düse...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_3_LINE("Klicke um", "die Düsenspülung", "zu beenden")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_3_LINE("Warte auf", "Fortsetzen des", "Drucks...")); - #else // LCD_HEIGHT < 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Klick zum Fortsetzen")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Pausiert...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Bitte warten...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Laden und Klick")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Klick zum Heizen")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Heizen...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Entnehmen...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Laden...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Spülen...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Klick zum beenden", "der Düsenspülung")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Fortsetzen...")); - #endif // LCD_HEIGHT < 4 + // Die Filament-Change-Bildschirme können bis zu 2 Zeilen auf einem 3-Zeilen-Display. + // + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Klick zum Fortsetzen")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Pausiert...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Bitte warten...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Laden und Klick")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Klick zum Heizen")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Heizen...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Entnehmen...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Laden...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Spülen...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Klick zum beenden", "der Düsenspülung")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Fortsetzen...")); LSTR MSG_TMC_DRIVERS = _UxGT("TMC Treiber"); // Max length 18 characters LSTR MSG_TMC_CURRENT = _UxGT("Treiber Strom"); @@ -772,11 +738,8 @@ namespace Language_de { LSTR MSG_LEVEL_X_AXIS = _UxGT("X Achse leveln"); LSTR MSG_AUTO_CALIBRATE = _UxGT("Auto. Kalibiren"); - #if ENABLED(TOUCH_UI_FTDI_EVE) - LSTR MSG_HEATER_TIMEOUT = _UxGT("Idle Timeout, Temperatur gefallen. Drücke Okay, um erneut aufzuheizen und fortzufahren."); - #else - LSTR MSG_HEATER_TIMEOUT = _UxGT("Heizungs Timeout"); - #endif + LSTR MSG_FTDI_HEATER_TIMEOUT = _UxGT("Idle Timeout, Temperatur gefallen. Drücke Okay, um erneut aufzuheizen und fortzufahren."); + LSTR MSG_HEATER_TIMEOUT = _UxGT("Heizungs Timeout"); LSTR MSG_REHEAT = _UxGT("Erneut aufheizen"); LSTR MSG_REHEATING = _UxGT("Erneut aufhei. ..."); LSTR MSG_REHEATDONE = _UxGT("Aufwärmen fertig"); @@ -809,3 +772,40 @@ namespace Language_de { LSTR MSG_SHORT_HOUR = _UxGT("h"); // One character only LSTR MSG_SHORT_MINUTE = _UxGT("m"); // One character only } + +namespace LanguageWide_de { + using namespace LanguageNarrow_de; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Kein Medium eingelegt."); + LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Bitte auf Neustart warten."); + LSTR MSG_PLEASE_PREHEAT = _UxGT("Bitte das Hotend vorheizen."); + LSTR MSG_INFO_PRINT_COUNT_RESET = _UxGT("Druckzähler zurücksetzen"); + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Gesamte Drucke"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Komplette Drucke"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Gesamte Druckzeit"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Längste Druckzeit"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Gesamt Extrudiert"); + #endif +} + +namespace LanguageTall_de { + using namespace LanguageWide_de; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Knopf drücken um", "Druck fortzusetzen")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_2_LINE("Druck ist", "pausiert...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Warte auf den", "Start des", "Filamentwechsels...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Filament einlegen", "und Knopf drücken", "um fortzusetzen")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Knopf drücken um", "Düse aufzuheizen")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Düse heizt auf", "bitte warten...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Warte auf", "Entnahme", "des Filaments...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Warte auf", "Laden des", "Filaments...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_3_LINE("Warte auf", "Spülung", "der Düse...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_3_LINE("Klicke um", "die Düsenspülung", "zu beenden")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_3_LINE("Warte auf", "Fortsetzen des", "Drucks...")); + #endif +} + +namespace Language_de { + using namespace LanguageTall_de; +} diff --git a/Marlin/src/lcd/language/language_el.h b/Marlin/src/lcd/language/language_el.h index aab74cc494f4..0a8e50109b6e 100644 --- a/Marlin/src/lcd/language/language_el.h +++ b/Marlin/src/lcd/language/language_el.h @@ -30,7 +30,7 @@ #define DISPLAY_CHARSET_ISO10646_GREEK -namespace Language_el { +namespace LanguageNarrow_el { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -64,23 +64,23 @@ namespace Language_el { LSTR MSG_LEVEL_BED_DONE = _UxGT("Τέλος επιπεδοποίησης!"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Ορισμός μετατοπίσεων"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Εφαρμογή μετατοπίσεων"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" End"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" End ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" όλα"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" bed"); // SHORTEN - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" επιβεβαίωση"); // SHORTEN - LSTR MSG_PREHEAT_M = _UxGT("Προθέρμανση $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Προθέρμανση $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Προθέρμανση $ End"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Προθέρμανση $ End ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Προθέρμανση $ όλα"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Προθέρμανση $ bed"); // SHORTEN - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Προθέρμανση $ επιβεβαίωση"); // SHORTEN - #endif + LSTR MSG_PREHEAT_1 = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" End"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" End ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" όλα"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" bed"); // SHORTEN + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" επιβεβαίωση"); // SHORTEN + + LSTR MSG_PREHEAT_M = _UxGT("Προθέρμανση $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Προθέρμανση $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Προθέρμανση $ End"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Προθέρμανση $ End ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Προθέρμανση $ όλα"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Προθέρμανση $ bed"); // SHORTEN + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Προθέρμανση $ επιβεβαίωση"); // SHORTEN + LSTR MSG_COOLDOWN = _UxGT("Αποθέρμανση"); LSTR MSG_SWITCH_PS_ON = _UxGT("Ενεργοποίηση"); LSTR MSG_SWITCH_PS_OFF = _UxGT("Απενεργοποίηση"); @@ -209,3 +209,20 @@ namespace Language_el { LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Εσφαλμένος εκτυπωτής"); } + +namespace LanguageWide_el { + using namespace LanguageNarrow_el; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + #endif +} + +namespace LanguageTall_el { + using namespace LanguageWide_el; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + #endif +} + +namespace Language_el { + using namespace LanguageTall_el; +} diff --git a/Marlin/src/lcd/language/language_el_gr.h b/Marlin/src/lcd/language/language_el_gr.h index 696b1d055df6..e766ecb941d6 100644 --- a/Marlin/src/lcd/language/language_el_gr.h +++ b/Marlin/src/lcd/language/language_el_gr.h @@ -30,7 +30,7 @@ #define DISPLAY_CHARSET_ISO10646_GREEK -namespace Language_el_gr { +namespace LanguageNarrow_el_gr { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -53,23 +53,23 @@ namespace Language_el_gr { LSTR MSG_LEVEL_BED_DONE = _UxGT("Ολοκλήρωση επιπεδοποίησης!"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Ορισμός βασικών μετατοπίσεων"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Εφαρμόστηκαν οι μετατοπίσεις"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" End"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" End ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" όλα"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" κλίνη"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" επιβεβαίωση"); - LSTR MSG_PREHEAT_M = _UxGT("Προθέρμανση $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Προθέρμανση $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Προθέρμανση $ End"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Προθέρμανση $ End ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Προθέρμανση $ όλα"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Προθέρμανση $ κλίνη"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Προθέρμανση $ επιβεβαίωση"); - #endif + LSTR MSG_PREHEAT_1 = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" End"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" End ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" όλα"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" κλίνη"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Προθέρμανση ") PREHEAT_1_LABEL _UxGT(" επιβεβαίωση"); + + LSTR MSG_PREHEAT_M = _UxGT("Προθέρμανση $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Προθέρμανση $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Προθέρμανση $ End"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Προθέρμανση $ End ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Προθέρμανση $ όλα"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Προθέρμανση $ κλίνη"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Προθέρμανση $ επιβεβαίωση"); + LSTR MSG_COOLDOWN = _UxGT("Μειωση θερμοκρασιας"); LSTR MSG_SWITCH_PS_ON = _UxGT("Ενεργοποίηση"); LSTR MSG_SWITCH_PS_OFF = _UxGT("Απενεργοποίηση"); @@ -197,3 +197,20 @@ namespace Language_el_gr { LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Εσφαλμένος εκτυπωτής"); } + +namespace LanguageWide_el_gr { + using namespace LanguageNarrow_el_gr; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + #endif +} + +namespace LanguageTall_el_gr { + using namespace LanguageWide_el_gr; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + #endif +} + +namespace Language_el_gr { + using namespace LanguageTall_el_gr; +} diff --git a/Marlin/src/lcd/language/language_en.h b/Marlin/src/lcd/language/language_en.h index c5288ec9c0bc..ea86812d0eb7 100644 --- a/Marlin/src/lcd/language/language_en.h +++ b/Marlin/src/lcd/language/language_en.h @@ -44,7 +44,11 @@ #define MEDIA_TYPE_EN "Media" -namespace Language_en { +#ifndef PREHEAT_1_LABEL + #define PREHEAT_1_LABEL "" +#endif + +namespace LanguageNarrow_en { constexpr uint8_t CHARSIZE = 2; LSTR LANGUAGE = _UxGT("English"); @@ -113,30 +117,23 @@ namespace Language_en { LSTR MSG_TRAMMING_WIZARD = _UxGT("Tramming Wizard"); LSTR MSG_SELECT_ORIGIN = _UxGT("Select Origin"); LSTR MSG_LAST_VALUE_SP = _UxGT("Last value "); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Preheat ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Preheat ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Preheat ") PREHEAT_1_LABEL _UxGT(" End"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Preheat ") PREHEAT_1_LABEL _UxGT(" End ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Preheat ") PREHEAT_1_LABEL _UxGT(" All"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Preheat ") PREHEAT_1_LABEL _UxGT(" Bed"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Preheat ") PREHEAT_1_LABEL _UxGT(" Conf"); - #ifdef PREHEAT_2_LABEL - LSTR MSG_PREHEAT_2 = _UxGT("Preheat ") PREHEAT_2_LABEL; - LSTR MSG_PREHEAT_2_SETTINGS = _UxGT("Preheat ") PREHEAT_2_LABEL _UxGT(" Conf"); - #endif - #ifdef PREHEAT_3_LABEL - LSTR MSG_PREHEAT_3 = _UxGT("Preheat ") PREHEAT_3_LABEL; - LSTR MSG_PREHEAT_3_SETTINGS = _UxGT("Preheat ") PREHEAT_3_LABEL _UxGT(" Conf"); - #endif - LSTR MSG_PREHEAT_M = _UxGT("Preheat $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Preheat $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Preheat $ End"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Preheat $ End ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Preheat $ All"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Preheat $ Bed"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Preheat $ Conf"); - #endif + + LSTR MSG_PREHEAT_1 = _UxGT("Preheat ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Preheat ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Preheat ") PREHEAT_1_LABEL _UxGT(" End"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Preheat ") PREHEAT_1_LABEL _UxGT(" End ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Preheat ") PREHEAT_1_LABEL _UxGT(" All"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Preheat ") PREHEAT_1_LABEL _UxGT(" Bed"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Preheat ") PREHEAT_1_LABEL _UxGT(" Conf"); + + LSTR MSG_PREHEAT_M = _UxGT("Preheat $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Preheat $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Preheat $ End"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Preheat $ End ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Preheat $ All"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Preheat $ Bed"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Preheat $ Conf"); + LSTR MSG_PREHEAT_HOTEND = _UxGT("Preheat Hotend"); LSTR MSG_PREHEAT_CUSTOM = _UxGT("Preheat Custom"); LSTR MSG_COOLDOWN = _UxGT("Cooldown"); @@ -511,25 +508,14 @@ namespace Language_en { LSTR MSG_RESUME_PRINT = _UxGT("Resume Print"); LSTR MSG_STOP_PRINT = _UxGT("Stop Print"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Power Outage"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_HOST_START_PRINT = _UxGT("Start Host Print"); - LSTR MSG_PRINTING_OBJECT = _UxGT("Printing Object"); - LSTR MSG_CANCEL_OBJECT = _UxGT("Cancel Object"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancel Object {"); - LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Continue Print Job"); - LSTR MSG_MEDIA_MENU = _UxGT("Select from ") MEDIA_TYPE_EN; - LSTR MSG_TURN_OFF = _UxGT("Turn off the printer"); - LSTR MSG_END_LOOPS = _UxGT("End Repeat Loops"); - #else - LSTR MSG_HOST_START_PRINT = _UxGT("Host Start"); - LSTR MSG_PRINTING_OBJECT = _UxGT("Print Obj"); - LSTR MSG_CANCEL_OBJECT = _UxGT("Cancel Obj"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancel Obj {"); - LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Continue Job"); - LSTR MSG_MEDIA_MENU = MEDIA_TYPE_EN _UxGT(" Print"); - LSTR MSG_TURN_OFF = _UxGT("Turn off now"); - LSTR MSG_END_LOOPS = _UxGT("End Loops"); - #endif + LSTR MSG_HOST_START_PRINT = _UxGT("Host Start"); + LSTR MSG_PRINTING_OBJECT = _UxGT("Print Obj"); + LSTR MSG_CANCEL_OBJECT = _UxGT("Cancel Obj"); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancel Obj {"); + LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Continue Job"); + LSTR MSG_MEDIA_MENU = MEDIA_TYPE_EN _UxGT(" Print"); + LSTR MSG_TURN_OFF = _UxGT("Turn off now"); + LSTR MSG_END_LOOPS = _UxGT("End Loops"); LSTR MSG_NO_MEDIA = _UxGT("No ") MEDIA_TYPE_EN; LSTR MSG_DWELL = _UxGT("Sleep..."); LSTR MSG_USERWAIT = _UxGT("Click to Resume..."); @@ -579,12 +565,9 @@ namespace Language_en { LSTR MSG_FILAMENTUNLOAD = _UxGT("Unload Filament"); LSTR MSG_FILAMENTUNLOAD_E = _UxGT("Unload * Filament"); LSTR MSG_FILAMENTUNLOAD_ALL = _UxGT("Unload All"); - #if ENABLED(MULTI_VOLUME) - LSTR MSG_ATTACH_MEDIA = _UxGT("Attach SD Card"); - LSTR MSG_ATTACH_USB_MEDIA = _UxGT("Attach USB Drive"); - #else - LSTR MSG_ATTACH_MEDIA = _UxGT("Attach ") MEDIA_TYPE_EN; - #endif + LSTR MSG_ATTACH_MEDIA = _UxGT("Attach ") MEDIA_TYPE_EN; + LSTR MSG_ATTACH_SD_MEDIA = _UxGT("Attach SD Card"); + LSTR MSG_ATTACH_USB_MEDIA = _UxGT("Attach USB Drive"); LSTR MSG_CHANGE_MEDIA = _UxGT("Change ") MEDIA_TYPE_EN; LSTR MSG_RELEASE_MEDIA = _UxGT("Release ") MEDIA_TYPE_EN; LSTR MSG_ZPROBE_OUT = _UxGT("Z Probe Past Bed"); @@ -703,22 +686,12 @@ namespace Language_en { LSTR MSG_LOCKSCREEN_UNLOCK = _UxGT("Scroll to unlock."); LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Please wait until reboot."); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("No media inserted."); - LSTR MSG_PLEASE_PREHEAT = _UxGT("Please preheat the hot end."); - LSTR MSG_INFO_PRINT_COUNT_RESET = _UxGT("Reset Print Count"); - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Print Count"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Print Time"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Longest Job Time"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruded Total"); - #else - LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("No Media"); - LSTR MSG_PLEASE_PREHEAT = _UxGT("Please Preheat"); - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Prints"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Longest"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruded"); - #endif + LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("No Media"); + LSTR MSG_PLEASE_PREHEAT = _UxGT("Please Preheat"); + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Prints"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Longest"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruded"); LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completed"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Min Temp"); @@ -808,35 +781,18 @@ namespace Language_en { LSTR MSG_REMINDER_SAVE_SETTINGS = _UxGT("Remember to Save!"); LSTR MSG_PASSWORD_REMOVED = _UxGT("Password Removed"); - // - // Filament Change screens show up to 3 lines on a 4-line display - // ...or up to 2 lines on a 3-line display - // - #if LCD_HEIGHT >= 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Press Button", "to resume print")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parking...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Wait for", "filament change", "to start")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Insert filament", "and press button", "to continue")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Press button", "to heat nozzle")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Nozzle heating", "Please wait...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Wait for", "filament unload")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Wait for", "filament load")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Wait for", "filament purge")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Click to finish", "filament purge")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Wait for print", "to resume...")); - #else - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Click to continue")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parking...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Please wait...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Insert and Click")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Click to heat")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Heating...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Ejecting...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Loading...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Purging...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Click to finish")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Resuming...")); - #endif + // Filament Change screens show up to 2 lines on a 3-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Click to continue")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parking...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Please wait...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Insert and Click")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Click to heat")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Heating...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Ejecting...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Loading...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Purging...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Click to finish")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Resuming...")); LSTR MSG_TMC_DRIVERS = _UxGT("TMC Drivers"); LSTR MSG_TMC_CURRENT = _UxGT("Driver Current"); LSTR MSG_TMC_ACURRENT = STR_A _UxGT("Driver Current"); @@ -871,11 +827,8 @@ namespace Language_en { LSTR MSG_LEVEL_X_AXIS = _UxGT("Level X Axis"); LSTR MSG_AUTO_CALIBRATE = _UxGT("Auto Calibrate"); - #if ENABLED(TOUCH_UI_FTDI_EVE) - LSTR MSG_HEATER_TIMEOUT = _UxGT("Idle timeout, temperature decreased. Press Okay to reheat and again to resume."); - #else - LSTR MSG_HEATER_TIMEOUT = _UxGT("Heater Timeout"); - #endif + LSTR MSG_FTDI_HEATER_TIMEOUT = _UxGT("Idle timeout, temperature decreased. Press Okay to reheat and again to resume."); + LSTR MSG_HEATER_TIMEOUT = _UxGT("Heater Timeout"); LSTR MSG_REHEAT = _UxGT("Reheat"); LSTR MSG_REHEATING = _UxGT("Reheating..."); LSTR MSG_REHEATDONE = _UxGT("Reheat Done"); @@ -944,5 +897,47 @@ namespace Language_en { LSTR DGUS_MSG_WRITE_EEPROM_FAILED = _UxGT("EEPROM write failed"); LSTR DGUS_MSG_READ_EEPROM_FAILED = _UxGT("EEPROM read failed"); LSTR DGUS_MSG_FILAMENT_RUNOUT = _UxGT("Filament runout E%d"); +} + +namespace LanguageWide_en { + using namespace LanguageNarrow_en; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_HOST_START_PRINT = _UxGT("Start Host Print"); + LSTR MSG_PRINTING_OBJECT = _UxGT("Printing Object"); + LSTR MSG_CANCEL_OBJECT = _UxGT("Cancel Object"); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Cancel Object {"); + LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Continue Print Job"); + LSTR MSG_MEDIA_MENU = _UxGT("Select from ") MEDIA_TYPE_EN; + LSTR MSG_TURN_OFF = _UxGT("Turn off the printer"); + LSTR MSG_END_LOOPS = _UxGT("End Repeat Loops"); + LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("No media inserted."); + LSTR MSG_PLEASE_PREHEAT = _UxGT("Please preheat the hot end."); + LSTR MSG_INFO_PRINT_COUNT_RESET = _UxGT("Reset Print Count"); + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Print Count"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Print Time"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Longest Job Time"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruded Total"); + #endif +} +namespace LanguageTall_en { + using namespace LanguageWide_en; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Press Button", "to resume print")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parking...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Wait for", "filament change", "to start")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Insert filament", "and press button", "to continue")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Press button", "to heat nozzle")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Nozzle heating", "Please wait...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Wait for", "filament unload")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Wait for", "filament load")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Wait for", "filament purge")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Click to finish", "filament purge")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Wait for print", "to resume...")); + #endif +} + +namespace Language_en { + using namespace LanguageTall_en; } diff --git a/Marlin/src/lcd/language/language_es.h b/Marlin/src/lcd/language/language_es.h index a487c7d28918..3726e25270fb 100644 --- a/Marlin/src/lcd/language/language_es.h +++ b/Marlin/src/lcd/language/language_es.h @@ -28,7 +28,7 @@ * See also https://marlinfw.org/docs/development/lcd_language.html */ -namespace Language_es { +namespace LanguageNarrow_es { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -72,23 +72,23 @@ namespace Language_es { LSTR MSG_Z_FADE_HEIGHT = _UxGT("Compen. Altura"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Ajustar desfases"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Desfase aplicada"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Precal. ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Precal. ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Fusor"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Fusor ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Todo"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Cama"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Ajuste"); - LSTR MSG_PREHEAT_M = _UxGT("Precal. $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Precal. $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Precal. $ Fusor"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Precal. $ Fusor ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Precal. $ Todo"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Precal. $ Cama"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Precal. $ Ajuste"); - #endif + LSTR MSG_PREHEAT_1 = _UxGT("Precal. ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Precal. ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Fusor"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Fusor ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Todo"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Cama"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Ajuste"); + + LSTR MSG_PREHEAT_M = _UxGT("Precal. $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Precal. $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Precal. $ Fusor"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Precal. $ Fusor ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Precal. $ Todo"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Precal. $ Cama"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Precal. $ Ajuste"); + LSTR MSG_PREHEAT_CUSTOM = _UxGT("Precal. manual"); LSTR MSG_COOLDOWN = _UxGT("Enfriar"); LSTR MSG_CUTTER_FREQUENCY = _UxGT("Frecuencia"); @@ -146,10 +146,8 @@ namespace Language_es { LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Term. edici. Mallado"); LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Crear Mallado Pers."); LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("Crear Mallado"); - #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Crear Mallado ($)"); - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Valid. Mall. ($)"); - #endif + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Crear Mallado ($)"); + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Valid. Mall. ($)"); LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Crear Mallado Frío"); LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("Ajustar alt. Mallado"); LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("Cantidad de altura"); @@ -454,19 +452,11 @@ namespace Language_es { LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Brillo cabina"); LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Impresora incorrecta"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Cont. de impresión"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Tiempo total de imp."); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Impresión más larga"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total Extruido"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impresiones"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Más larga"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruido"); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impresiones"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Más larga"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruido"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Temp. Mínima"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Temp. Máxima"); @@ -534,31 +524,18 @@ namespace Language_es { LSTR MSG_SNAKE = _UxGT("Sn4k3"); LSTR MSG_MAZE = _UxGT("Maze"); - #if LCD_HEIGHT >= 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Pulsar el botón para", "reanudar impresión")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Aparcando...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Esperando para", "iniciar el cambio", "de filamento")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Inserte el filamento", "y pulse el botón", "para continuar...")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Pulse el botón para", "calentar la boquilla")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Calentando boquilla", "Espere por favor...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Espere para", "liberar el filamento")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Espere para", "cargar el filamento")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Espere para", "purgar el filamento")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Pulse para finalizar", "la purga de filamen.")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Esperando impresora", "para reanudar...")); - #else - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Pulse para continuar")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Aparcando...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Por Favor espere...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Inserte y Pulse")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Pulse para Calentar")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Calentando...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Liberando...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Cargando...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Purgando...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Pulse para finalizar")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Reanudando...")); - #endif + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Pulse para continuar")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Aparcando...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Por Favor espere...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Inserte y Pulse")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Pulse para Calentar")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Calentando...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Liberando...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Cargando...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Purgando...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Pulse para finalizar")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Reanudando...")); + LSTR MSG_TMC_DRIVERS = _UxGT("Controladores TMC"); LSTR MSG_TMC_CURRENT = _UxGT("Amperaje Controlador"); LSTR MSG_TMC_HYBRID_THRS = _UxGT("Límite Hibrido"); @@ -577,3 +554,36 @@ namespace Language_es { LSTR MSG_REHEAT = _UxGT("Recalentar"); LSTR MSG_REHEATING = _UxGT("Recalentando..."); } + +namespace LanguageWide_es { + using namespace LanguageNarrow_es; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Cont. de impresión"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Tiempo total de imp."); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Impresión más larga"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total Extruido"); + #endif +} + +namespace LanguageTall_es { + using namespace LanguageWide_es; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Pulsar el botón para", "reanudar impresión")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Aparcando...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Esperando para", "iniciar el cambio", "de filamento")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Inserte el filamento", "y pulse el botón", "para continuar...")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Pulse el botón para", "calentar la boquilla")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Calentando boquilla", "Espere por favor...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Espere para", "liberar el filamento")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Espere para", "cargar el filamento")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Espere para", "purgar el filamento")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Pulse para finalizar", "la purga de filamen.")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Esperando impresora", "para reanudar...")); + #endif +} + +namespace Language_es { + using namespace LanguageTall_es; +} diff --git a/Marlin/src/lcd/language/language_eu.h b/Marlin/src/lcd/language/language_eu.h index 6433fde99fba..d96b099f3e4a 100644 --- a/Marlin/src/lcd/language/language_eu.h +++ b/Marlin/src/lcd/language/language_eu.h @@ -31,7 +31,7 @@ #define DISPLAY_CHARSET_ISO10646_1 #define NOT_EXTENDED_ISO10646_1_5X7 -namespace Language_eu { +namespace LanguageNarrow_eu { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 1; @@ -56,23 +56,23 @@ namespace Language_eu { LSTR MSG_LEVEL_BED_DONE = _UxGT("Berdintzea eginda"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Etxe. offset eza."); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Offsetak ezarrita"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Berotu ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Berotu ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Berotu ") PREHEAT_1_LABEL _UxGT(" Amaia"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Berotu ") PREHEAT_1_LABEL _UxGT(" Amaia ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Berotu ") PREHEAT_1_LABEL _UxGT(" Guztia"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Berotu ") PREHEAT_1_LABEL _UxGT(" Ohea"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Berotu ") PREHEAT_1_LABEL _UxGT(" Ezarp."); - LSTR MSG_PREHEAT_M = _UxGT("Berotu $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Berotu $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Berotu $ Amaia"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Berotu $ Amaia ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Berotu $ Guztia"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Berotu $ Ohea"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Berotu $ Ezarp."); - #endif + LSTR MSG_PREHEAT_1 = _UxGT("Berotu ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Berotu ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Berotu ") PREHEAT_1_LABEL _UxGT(" Amaia"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Berotu ") PREHEAT_1_LABEL _UxGT(" Amaia ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Berotu ") PREHEAT_1_LABEL _UxGT(" Guztia"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Berotu ") PREHEAT_1_LABEL _UxGT(" Ohea"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Berotu ") PREHEAT_1_LABEL _UxGT(" Ezarp."); + + LSTR MSG_PREHEAT_M = _UxGT("Berotu $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Berotu $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Berotu $ Amaia"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Berotu $ Amaia ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Berotu $ Guztia"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Berotu $ Ohea"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Berotu $ Ezarp."); + LSTR MSG_COOLDOWN = _UxGT("Hoztu"); LSTR MSG_SWITCH_PS_ON = _UxGT("Energia piztu"); LSTR MSG_SWITCH_PS_OFF = _UxGT("Energia itzali"); @@ -99,10 +99,8 @@ namespace Language_eu { LSTR MSG_UBL_MESH_EDIT = _UxGT("Sarea editatu"); LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Sarea editatzea eginda"); LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("Sarea sortu"); - #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("$ sarea sortu"); - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("$ sarea balioetsi"); - #endif + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("$ sarea sortu"); + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("$ sarea balioetsi"); LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Sare hotza sortu"); LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("Sarearen altuera doitu"); LSTR MSG_UBL_VALIDATE_MESH_MENU = _UxGT("Sarea balioetsi"); @@ -276,19 +274,13 @@ namespace Language_eu { LSTR MSG_INFO_PROTOCOL = _UxGT("Protokoloa"); LSTR MSG_CASE_LIGHT = _UxGT("Kabina Argia"); LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Argiaren Distira"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Inprim. Zenbaketa"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Burututa"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Inprim. denbora"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Imprimatze luzeena"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Estruituta guztira"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Inprimatze"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Burututa"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Guztira"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Luzeena"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Estrusio"); - #endif + + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Inprimatze"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Burututa"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Guztira"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Luzeena"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Estrusio"); + LSTR MSG_INFO_MIN_TEMP = _UxGT("Tenp. Minimoa"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Tenp. Maximoa"); LSTR MSG_INFO_PSU = _UxGT("Elikadura-iturria"); @@ -316,3 +308,25 @@ namespace Language_eu { LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Berotzen...")); LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Kargatzen...")); } + +namespace LanguageWide_eu { + using namespace LanguageNarrow_eu; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Inprim. Zenbaketa"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Burututa"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Inprim. denbora"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Imprimatze luzeena"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Estruituta guztira"); + #endif +} + +namespace LanguageTall_eu { + using namespace LanguageWide_eu; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + #endif +} + +namespace Language_eu { + using namespace LanguageTall_eu; +} diff --git a/Marlin/src/lcd/language/language_fi.h b/Marlin/src/lcd/language/language_fi.h index 8d5e4c714309..9e87bb757831 100644 --- a/Marlin/src/lcd/language/language_fi.h +++ b/Marlin/src/lcd/language/language_fi.h @@ -30,7 +30,7 @@ #define DISPLAY_CHARSET_ISO10646_1 -namespace Language_fi { +namespace LanguageNarrow_fi { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -43,23 +43,23 @@ namespace Language_fi { LSTR MSG_RUN_AUTO_FILES = _UxGT("Automaatti"); LSTR MSG_DISABLE_STEPPERS = _UxGT("Vapauta moottorit"); LSTR MSG_AUTO_HOME = _UxGT("Aja referenssiin"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Esilämmitä ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Esilämmitä ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Esilä. ") PREHEAT_1_LABEL _UxGT("Suutin"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Esilä. ") PREHEAT_1_LABEL _UxGT("Suutin ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Esilä. ") PREHEAT_1_LABEL _UxGT(" Kaikki"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Esilä. ") PREHEAT_1_LABEL _UxGT(" Alusta"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Esilämm. ") PREHEAT_1_LABEL _UxGT(" konf"); - LSTR MSG_PREHEAT_M = _UxGT("Esilämmitä $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Esilämmitä $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Esilä. $Suutin"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Esilä. $Suutin ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Esilä. $ Kaikki"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Esilä. $ Alusta"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Esilämm. $ konf"); - #endif + LSTR MSG_PREHEAT_1 = _UxGT("Esilämmitä ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Esilämmitä ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Esilä. ") PREHEAT_1_LABEL _UxGT("Suutin"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Esilä. ") PREHEAT_1_LABEL _UxGT("Suutin ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Esilä. ") PREHEAT_1_LABEL _UxGT(" Kaikki"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Esilä. ") PREHEAT_1_LABEL _UxGT(" Alusta"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Esilämm. ") PREHEAT_1_LABEL _UxGT(" konf"); + + LSTR MSG_PREHEAT_M = _UxGT("Esilämmitä $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Esilämmitä $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Esilä. $Suutin"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Esilä. $Suutin ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Esilä. $ Kaikki"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Esilä. $ Alusta"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Esilämm. $ konf"); + LSTR MSG_COOLDOWN = _UxGT("Jäähdytä"); LSTR MSG_SWITCH_PS_ON = _UxGT("Virta päälle"); LSTR MSG_SWITCH_PS_OFF = _UxGT("Virta pois"); @@ -130,3 +130,20 @@ namespace Language_fi { LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Väärä tulostin"); } + +namespace LanguageWide_fi { + using namespace LanguageNarrow_fi; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + #endif +} + +namespace LanguageTall_fi { + using namespace LanguageWide_fi; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + #endif +} + +namespace Language_fi { + using namespace LanguageTall_fi; +} diff --git a/Marlin/src/lcd/language/language_fr.h b/Marlin/src/lcd/language/language_fr.h index 4f0434525264..c281497e9629 100644 --- a/Marlin/src/lcd/language/language_fr.h +++ b/Marlin/src/lcd/language/language_fr.h @@ -30,7 +30,7 @@ #define DISPLAY_CHARSET_ISO10646_1 -namespace Language_fr { +namespace LanguageNarrow_fr { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -76,23 +76,23 @@ namespace Language_fr { LSTR MSG_TRAMMING_WIZARD = _UxGT("Assistant Molettes"); LSTR MSG_SELECT_ORIGIN = _UxGT("Molette du lit"); // Not a selection of the origin LSTR MSG_LAST_VALUE_SP = _UxGT("Ecart origine "); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Préchauffage ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Préchauffage ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Préch. ") PREHEAT_1_LABEL _UxGT(" buse"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Préch. ") PREHEAT_1_LABEL _UxGT(" buse ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Préch. ") PREHEAT_1_LABEL _UxGT(" Tout"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Préch. ") PREHEAT_1_LABEL _UxGT(" lit"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Régler préch. ") PREHEAT_1_LABEL; - - LSTR MSG_PREHEAT_M = _UxGT("Préchauffage $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Préchauffage $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Préch. $ buse"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Préch. $ buse ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Préch. $ Tout"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Préch. $ lit"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Régler préch. $"); - #endif + + LSTR MSG_PREHEAT_1 = _UxGT("Préchauffage ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Préchauffage ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Préch. ") PREHEAT_1_LABEL _UxGT(" buse"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Préch. ") PREHEAT_1_LABEL _UxGT(" buse ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Préch. ") PREHEAT_1_LABEL _UxGT(" Tout"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Préch. ") PREHEAT_1_LABEL _UxGT(" lit"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Régler préch. ") PREHEAT_1_LABEL; + + LSTR MSG_PREHEAT_M = _UxGT("Préchauffage $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Préchauffage $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Préch. $ buse"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Préch. $ buse ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Préch. $ Tout"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Préch. $ lit"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Régler préch. $"); + LSTR MSG_PREHEAT_CUSTOM = _UxGT("Préchauf. perso"); LSTR MSG_COOLDOWN = _UxGT("Refroidir"); LSTR MSG_LASER_MENU = _UxGT("Contrôle Laser"); @@ -156,10 +156,8 @@ namespace Language_fr { LSTR MSG_UBL_FINE_TUNE_MESH = _UxGT("Réglage fin"); LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Terminer"); LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("Créer la grille"); - #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Créer grille $"); - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Impr. grille $"); - #endif + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Créer grille $"); + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Impr. grille $"); LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Créer grille ..."); LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Mesure à froid"); LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("Ajuster haut. couche"); @@ -485,19 +483,11 @@ namespace Language_fr { LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Luminosité"); LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Imprimante incorrecte"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Nbre impressions"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Terminées"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Tps impr. total"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Impr. la + longue"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total filament"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impressions"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Terminées"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("+ long"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Filament"); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impressions"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Terminées"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("+ long"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Filament"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Temp Min"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Temp Max"); @@ -566,32 +556,17 @@ namespace Language_fr { LSTR MSG_BAD_PAGE = _UxGT("Erreur index page"); LSTR MSG_BAD_PAGE_SPEED = _UxGT("Erreur vitesse page"); - #if LCD_HEIGHT >= 4 - // Up to 3 lines allowed - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Presser bouton", "pour reprendre")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parking...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("Attente filament", "pour démarrer")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Insérer filament", "et app. bouton", "pour continuer...")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Presser le bouton", "pour chauffer...")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Buse en chauffe", "Patienter SVP...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Attente", "retrait du filament")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Attente", "chargement filament")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Attente", "Purge filament")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Presser pour finir", "la purge du filament")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Attente reprise", "impression")); - #else // LCD_HEIGHT < 4 - // Up to 2 lines allowed - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Clic pour continuer")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Patience...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Insérer fil.")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Chauffer ?")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Chauffage...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Retrait fil...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Chargement...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Purge...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Terminer ?")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Reprise...")); - #endif // LCD_HEIGHT < 4 + // Up to 2 lines allowed + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Clic pour continuer")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Patience...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Insérer fil.")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Chauffer ?")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Chauffage...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Retrait fil...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Chargement...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Purge...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Terminer ?")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Reprise...")); LSTR MSG_TMC_CURRENT = _UxGT("Courant driver"); LSTR MSG_TMC_HYBRID_THRS = _UxGT("Seuil hybride"); @@ -605,11 +580,8 @@ namespace Language_fr { LSTR MSG_LEVEL_X_AXIS = _UxGT("Niveau axe X"); LSTR MSG_AUTO_CALIBRATE = _UxGT("Etalon. auto."); - #if ENABLED(TOUCH_UI_FTDI_EVE) - LSTR MSG_HEATER_TIMEOUT = _UxGT("En protection, temp. réduite. Ok pour rechauffer et continuer."); - #else - LSTR MSG_HEATER_TIMEOUT = _UxGT("En protection"); - #endif + LSTR MSG_FTDI_HEATER_TIMEOUT = _UxGT("En protection, temp. réduite. Ok pour rechauffer et continuer."); + LSTR MSG_HEATER_TIMEOUT = _UxGT("En protection"); LSTR MSG_REHEAT = _UxGT("Chauffer"); LSTR MSG_REHEATING = _UxGT("Réchauffe..."); @@ -656,3 +628,36 @@ namespace Language_fr { LSTR MSG_SHORT_HOUR = _UxGT("h"); // One character only LSTR MSG_SHORT_MINUTE = _UxGT("m"); // One character only } + +namespace LanguageWide_fr { + using namespace LanguageNarrow_fr; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Nbre impressions"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Terminées"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Tps impr. total"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Impr. la + longue"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total filament"); + #endif +} + +namespace LanguageTall_fr { + using namespace LanguageWide_fr; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Presser bouton", "pour reprendre")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parking...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("Attente filament", "pour démarrer")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Insérer filament", "et app. bouton", "pour continuer...")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Presser le bouton", "pour chauffer...")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Buse en chauffe", "Patienter SVP...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Attente", "retrait du filament")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Attente", "chargement filament")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Attente", "Purge filament")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Presser pour finir", "la purge du filament")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Attente reprise", "impression")); + #endif +} + +namespace Language_fr { + using namespace LanguageTall_fr; +} diff --git a/Marlin/src/lcd/language/language_fr_na.h b/Marlin/src/lcd/language/language_fr_na.h index 4441a7970a2e..05e5b061ddef 100644 --- a/Marlin/src/lcd/language/language_fr_na.h +++ b/Marlin/src/lcd/language/language_fr_na.h @@ -31,7 +31,7 @@ #define DISPLAY_CHARSET_ISO10646_1 #define NOT_EXTENDED_ISO10646_1_5X7 -namespace Language_fr_na { +namespace LanguageNarrow_fr_na { using namespace Language_en; // Inherit undefined strings from English LSTR LANGUAGE = _UxGT("Francais"); @@ -76,23 +76,23 @@ namespace Language_fr_na { LSTR MSG_TRAMMING_WIZARD = _UxGT("Assistant Molettes"); LSTR MSG_SELECT_ORIGIN = _UxGT("Molette du lit"); // Not a selection of the origin LSTR MSG_LAST_VALUE_SP = _UxGT("Ecart origine "); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Prechauffage ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Prechauffage ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Prech. ") PREHEAT_1_LABEL _UxGT(" buse"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Prech. ") PREHEAT_1_LABEL _UxGT(" buse ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Prech. ") PREHEAT_1_LABEL _UxGT(" Tout"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Prech. ") PREHEAT_1_LABEL _UxGT(" lit"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Regler prech. ") PREHEAT_1_LABEL; - - LSTR MSG_PREHEAT_M = _UxGT("Prechauffage $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Prechauffage $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Prech. $ buse"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Prech. $ buse ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Prech. $ Tout"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Prech. $ lit"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Regler prech. $"); - #endif + + LSTR MSG_PREHEAT_1 = _UxGT("Prechauffage ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Prechauffage ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Prech. ") PREHEAT_1_LABEL _UxGT(" buse"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Prech. ") PREHEAT_1_LABEL _UxGT(" buse ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Prech. ") PREHEAT_1_LABEL _UxGT(" Tout"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Prech. ") PREHEAT_1_LABEL _UxGT(" lit"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Regler prech. ") PREHEAT_1_LABEL; + + LSTR MSG_PREHEAT_M = _UxGT("Prechauffage $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Prechauffage $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Prech. $ buse"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Prech. $ buse ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Prech. $ Tout"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Prech. $ lit"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Regler prech. $"); + LSTR MSG_PREHEAT_CUSTOM = _UxGT("Prechauf. perso"); LSTR MSG_COOLDOWN = _UxGT("Refroidir"); LSTR MSG_LASER_MENU = _UxGT("Controle Laser"); @@ -156,10 +156,8 @@ namespace Language_fr_na { LSTR MSG_UBL_FINE_TUNE_MESH = _UxGT("Reglage fin"); LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Terminer"); LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("Creer la grille"); - #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Creer grille $"); - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Impr. grille $"); - #endif + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Creer grille $"); + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Impr. grille $"); LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Creer grille ..."); LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Mesure a froid"); LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("Ajuster haut. couche"); @@ -488,19 +486,11 @@ namespace Language_fr_na { LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Luminosite"); LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Imprimante incorrecte"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Nbre impressions"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Terminees"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Tps impr. total"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Impr. la + longue"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total filament"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impressions"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Terminees"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("+ long"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Filament"); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impressions"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Terminees"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("+ long"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Filament"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Temp Min"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Temp Max"); @@ -569,32 +559,17 @@ namespace Language_fr_na { LSTR MSG_BAD_PAGE = _UxGT("Erreur index page"); LSTR MSG_BAD_PAGE_SPEED = _UxGT("Erreur vitesse page"); - #if LCD_HEIGHT >= 4 - // Up to 3 lines allowed - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Presser bouton", "pour reprendre")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parking...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("Attente filament", "pour demarrer")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Inserer filament", "et app. bouton", "pour continuer...")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Presser le bouton", "pour chauffer...")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Buse en chauffe", "Patienter SVP...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Attente", "retrait du filament")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Attente", "chargement filament")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Attente", "Purge filament")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Presser pour finir", "la purge du filament")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Attente reprise", "impression")); - #else // LCD_HEIGHT < 4 - // Up to 2 lines allowed - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Clic pour continuer")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Patience...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Inserer fil.")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Chauffer ?")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Chauffage...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Retrait fil...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Chargement...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Purge...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Terminer ?")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Reprise...")); - #endif // LCD_HEIGHT < 4 + // Up to 2 lines allowed + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Clic pour continuer")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Patience...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Inserer fil.")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Chauffer ?")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Chauffage...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Retrait fil...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Chargement...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Purge...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Terminer ?")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Reprise...")); LSTR MSG_TMC_CURRENT = _UxGT("Courant driver"); LSTR MSG_TMC_HYBRID_THRS = _UxGT("Seuil hybride"); @@ -608,11 +583,8 @@ namespace Language_fr_na { LSTR MSG_LEVEL_X_AXIS = _UxGT("Niveau axe X"); LSTR MSG_AUTO_CALIBRATE = _UxGT("Etalon. auto."); - #if ENABLED(TOUCH_UI_FTDI_EVE) - LSTR MSG_HEATER_TIMEOUT = _UxGT("En protection, temp. reduite. Ok pour rechauffer et continuer."); - #else - LSTR MSG_HEATER_TIMEOUT = _UxGT("En protection"); - #endif + LSTR MSG_FTDI_HEATER_TIMEOUT = _UxGT("En protection, temp. reduite. Ok pour rechauffer et continuer."); + LSTR MSG_HEATER_TIMEOUT = _UxGT("En protection"); LSTR MSG_REHEAT = _UxGT("Chauffer"); LSTR MSG_REHEATING = _UxGT("Rechauffe..."); @@ -656,3 +628,36 @@ namespace Language_fr_na { LSTR DGUS_MSG_FILAMENT_RUNOUT = _UxGT("Sortie de filament E%d"); } + +namespace LanguageWide_fr_na { + using namespace LanguageNarrow_fr_na; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Nbre impressions"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Terminees"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Tps impr. total"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Impr. la + longue"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total filament"); + #endif +} + +namespace LanguageTall_fr_na { + using namespace LanguageWide_fr_na; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Presser bouton", "pour reprendre")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parking...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("Attente filament", "pour demarrer")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Inserer filament", "et app. bouton", "pour continuer...")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Presser le bouton", "pour chauffer...")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Buse en chauffe", "Patienter SVP...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Attente", "retrait du filament")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Attente", "chargement filament")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Attente", "Purge filament")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Presser pour finir", "la purge du filament")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Attente reprise", "impression")); + #endif +} + +namespace Language_fr_na { + using namespace LanguageTall_fr_na; +} diff --git a/Marlin/src/lcd/language/language_gl.h b/Marlin/src/lcd/language/language_gl.h index 25b30f71eb0a..b55a74bb171a 100644 --- a/Marlin/src/lcd/language/language_gl.h +++ b/Marlin/src/lcd/language/language_gl.h @@ -30,7 +30,7 @@ #define DISPLAY_CHARSET_ISO10646_1 -namespace Language_gl { +namespace LanguageNarrow_gl { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 1; @@ -69,23 +69,23 @@ namespace Language_gl { LSTR MSG_Z_FADE_HEIGHT = _UxGT("Compensación Altura"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Axustar Desfases"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Desfases aplicados"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Prequentar ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Prequentar ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Preque. ") PREHEAT_1_LABEL _UxGT(" Bico"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Preque. ") PREHEAT_1_LABEL _UxGT(" Bico ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Preque. ") PREHEAT_1_LABEL _UxGT(" Todo"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Preque. ") PREHEAT_1_LABEL _UxGT(" Cama"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Preque. ") PREHEAT_1_LABEL _UxGT(" conf"); - LSTR MSG_PREHEAT_M = _UxGT("Prequentar $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Prequentar $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Preque. $ Bico"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Preque. $ Bico ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Preque. $ Todo"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Preque. $ Cama"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Preque. $ conf"); - #endif + LSTR MSG_PREHEAT_1 = _UxGT("Prequentar ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Prequentar ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Preque. ") PREHEAT_1_LABEL _UxGT(" Bico"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Preque. ") PREHEAT_1_LABEL _UxGT(" Bico ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Preque. ") PREHEAT_1_LABEL _UxGT(" Todo"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Preque. ") PREHEAT_1_LABEL _UxGT(" Cama"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Preque. ") PREHEAT_1_LABEL _UxGT(" conf"); + + LSTR MSG_PREHEAT_M = _UxGT("Prequentar $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Prequentar $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Preque. $ Bico"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Preque. $ Bico ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Preque. $ Todo"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Preque. $ Cama"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Preque. $ conf"); + LSTR MSG_PREHEAT_CUSTOM = _UxGT("Preque. Personali."); LSTR MSG_COOLDOWN = _UxGT("Arrefriar"); LSTR MSG_CUTTER_FREQUENCY = _UxGT("Frecuencia"); @@ -143,10 +143,8 @@ namespace Language_gl { LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Fin Edición da Malla"); LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Crear Malla Person."); LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("Crear Malla"); - #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Crear Malla ($)"); - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Validar Malla ($)"); - #endif + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Crear Malla ($)"); + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Validar Malla ($)"); LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Crear Malla Fría"); LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("Axustar Altura Malla"); LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("Altura"); @@ -469,19 +467,11 @@ namespace Language_gl { LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Brillo Luces"); LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("IMPRESORA INCORRECTA"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Total Impresións"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Tempo Total Imp."); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Impresión máis longa"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total Extruído"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impresións"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Máis Longa"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruido"); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impresións"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Máis Longa"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruido"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Temp Mín"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Temp Máx"); @@ -549,31 +539,17 @@ namespace Language_gl { LSTR MSG_SNAKE = _UxGT("Sn4k3"); LSTR MSG_MAZE = _UxGT("Labirinto"); - #if LCD_HEIGHT >= 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Preme o botón para", "continuar impresión")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Estacionando...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Agarde para", "comezar cambio", "de filamento")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Introduza o", "filamento e", "faga click")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Prema o botón para", "quentar o bico")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Quentando bico", "Agarde, por favor...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Agarde pola", "descarga do", "filamento")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Agarde pola", "carga do", "filamento")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Agarde para", "purgar o filamento")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Prema para finalizar", "a purga do filamen.")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_3_LINE("Agarde a que", "se retome", "a impresión")); - #else - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Premer para continuar")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Estacionando...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Agarde...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Introduza e click")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Prema para quentar")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Quentando...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Descargando...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Cargando...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Purgando...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Prema para finalizar")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Retomando...")); - #endif + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Premer para continuar")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Estacionando...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Agarde...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Introduza e click")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Prema para quentar")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Quentando...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Descargando...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Cargando...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Purgando...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Prema para finalizar")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Retomando...")); LSTR MSG_TMC_DRIVERS = _UxGT("Controladores TMC"); LSTR MSG_TMC_CURRENT = _UxGT("Controlador Actual"); @@ -593,3 +569,35 @@ namespace Language_gl { LSTR MSG_REHEAT = _UxGT("Requentar"); LSTR MSG_REHEATING = _UxGT("Requentando..."); } + +namespace LanguageWide_gl { + using namespace LanguageNarrow_gl; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Total Impresións"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Tempo Total Imp."); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Impresión máis longa"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total Extruído"); + #endif +} + +namespace LanguageTall_gl { + using namespace LanguageWide_gl; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Preme o botón para", "continuar impresión")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Agarde para", "comezar cambio", "de filamento")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Introduza o", "filamento e", "faga click")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Prema o botón para", "quentar o bico")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Quentando bico", "Agarde, por favor...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Agarde pola", "descarga do", "filamento")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Agarde pola", "carga do", "filamento")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Agarde para", "purgar o filamento")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Prema para finalizar", "a purga do filamen.")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_3_LINE("Agarde a que", "se retome", "a impresión")); + #endif +} + +namespace Language_gl { + using namespace LanguageTall_gl; +} diff --git a/Marlin/src/lcd/language/language_hr.h b/Marlin/src/lcd/language/language_hr.h index a857fb361996..8480708e7895 100644 --- a/Marlin/src/lcd/language/language_hr.h +++ b/Marlin/src/lcd/language/language_hr.h @@ -30,7 +30,7 @@ #define DISPLAY_CHARSET_ISO10646_1 // use the better font on full graphic displays. -namespace Language_hr { +namespace LanguageNarrow_hr { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -53,23 +53,23 @@ namespace Language_hr { LSTR MSG_LEVEL_BED_DONE = _UxGT("Niveliranje gotovo!"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Postavi home offsete"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Offsets postavljeni"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Predgrij ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Predgrij ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Predgrij ") PREHEAT_1_LABEL _UxGT(" Dizna"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Predgrij ") PREHEAT_1_LABEL _UxGT(" Dizna ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Predgrij ") PREHEAT_1_LABEL _UxGT(" Sve"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Predgrij ") PREHEAT_1_LABEL _UxGT(" Bed"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Predgrij ") PREHEAT_1_LABEL _UxGT(" conf"); - - LSTR MSG_PREHEAT_M = _UxGT("Predgrij $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Predgrij $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Predgrij $ Dizna"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Predgrij $ Dizna ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Predgrij $ Sve"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Predgrij $ Bed"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Predgrij $ conf"); - #endif + + LSTR MSG_PREHEAT_1 = _UxGT("Predgrij ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Predgrij ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Predgrij ") PREHEAT_1_LABEL _UxGT(" Dizna"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Predgrij ") PREHEAT_1_LABEL _UxGT(" Dizna ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Predgrij ") PREHEAT_1_LABEL _UxGT(" Sve"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Predgrij ") PREHEAT_1_LABEL _UxGT(" Bed"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Predgrij ") PREHEAT_1_LABEL _UxGT(" conf"); + + LSTR MSG_PREHEAT_M = _UxGT("Predgrij $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Predgrij $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Predgrij $ Dizna"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Predgrij $ Dizna ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Predgrij $ Sve"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Predgrij $ Bed"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Predgrij $ conf"); + LSTR MSG_COOLDOWN = _UxGT("Hlađenje"); LSTR MSG_SWITCH_PS_ON = _UxGT("Uključi napajanje"); LSTR MSG_SWITCH_PS_OFF = _UxGT("Isključi napajanje"); @@ -140,19 +140,11 @@ namespace Language_hr { LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Neispravan pisač"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Broj printova"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Završeni"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Ukupno printanja"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Najduži print"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrudirano ukupno"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Printovi"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Završeni"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Ukupno"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Najduži"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrudirano"); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Printovi"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Završeni"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Ukupno"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Najduži"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrudirano"); LSTR MSG_INFO_PSU = _UxGT("Napajanje"); @@ -162,12 +154,30 @@ namespace Language_hr { LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Pričekaj", "filament load")); LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Nastavljam...")); + // Up to 2 lines allowed + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT("Pričekaj..."); +} + +namespace LanguageWide_hr { + using namespace LanguageNarrow_hr; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Broj printova"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Završeni"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Ukupno printanja"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Najduži print"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrudirano ukupno"); + #endif +} + +namespace LanguageTall_hr { + using namespace LanguageWide_hr; #if LCD_HEIGHT >= 4 - // Up to 3 lines allowed + // Filament Change screens show up to 3 lines on a 4-line display LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Čekaj početak", "filamenta", "promijeni")); LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Umetni filament", "i pritisni tipku", "za nastavak...")); - #else - // Up to 2 lines allowed - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT("Pričekaj..."); #endif } + +namespace Language_hr { + using namespace LanguageTall_hr; +} diff --git a/Marlin/src/lcd/language/language_hu.h b/Marlin/src/lcd/language/language_hu.h index f3880a31a6f8..39ee0fc558a3 100644 --- a/Marlin/src/lcd/language/language_hu.h +++ b/Marlin/src/lcd/language/language_hu.h @@ -33,7 +33,7 @@ * A Fordítás utolsó frissítése: 2021.08.30. - 22:20 */ -namespace Language_hu { +namespace LanguageNarrow_hu { using namespace Language_en; // A fordítás az örökölt Amerikai Angol (English) karakterláncokat használja. constexpr uint8_t CHARSIZE = 2; @@ -83,23 +83,23 @@ namespace Language_hu { LSTR MSG_TRAMMING_WIZARD = _UxGT("Elektromos varázsló"); LSTR MSG_SELECT_ORIGIN = _UxGT("Eredeti választása"); LSTR MSG_LAST_VALUE_SP = _UxGT("Utolsó érték "); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Fütés ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Fütés ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Fütés ") PREHEAT_1_LABEL _UxGT(" Fej"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Fütés ") PREHEAT_1_LABEL _UxGT(" Fej ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Fütés ") PREHEAT_1_LABEL _UxGT(" Mind"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Fütés ") PREHEAT_1_LABEL _UxGT(" Ágy"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Fütés ") PREHEAT_1_LABEL _UxGT(" Beáll"); - LSTR MSG_PREHEAT_M = _UxGT("Fütés $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Fütés $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Fütés $ Fej"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Fütés $ Fej ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Fütés $ Mind"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Fütés $ Ágy"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Fütés $ Beáll"); - #endif + LSTR MSG_PREHEAT_1 = _UxGT("Fütés ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Fütés ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Fütés ") PREHEAT_1_LABEL _UxGT(" Fej"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Fütés ") PREHEAT_1_LABEL _UxGT(" Fej ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Fütés ") PREHEAT_1_LABEL _UxGT(" Mind"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Fütés ") PREHEAT_1_LABEL _UxGT(" Ágy"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Fütés ") PREHEAT_1_LABEL _UxGT(" Beáll"); + + LSTR MSG_PREHEAT_M = _UxGT("Fütés $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Fütés $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Fütés $ Fej"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Fütés $ Fej ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Fütés $ Mind"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Fütés $ Ágy"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Fütés $ Beáll"); + LSTR MSG_PREHEAT_CUSTOM = _UxGT("Egyedi elömelegítés"); LSTR MSG_COOLDOWN = _UxGT("Visszahütés"); @@ -531,19 +531,11 @@ namespace Language_hu { LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Fényerösség"); LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("HELYTELEN NYOMTATÓ"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Nyomtatás számláló"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Befejezett"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Összes nyomtatási idö"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Leghosszabb munkaidö"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Összes anyag"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Nyomtatások"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Befejezett"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Összes"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Leghosszabb"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Kiadott"); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Nyomtatások"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Befejezett"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Összes"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Leghosszabb"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Kiadott"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Min höfok"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Max höfok"); @@ -626,34 +618,20 @@ namespace Language_hu { LSTR MSG_PASSWORD_REMOVED = _UxGT("Jelszó törölve"); // - // Filament Change screens show up to 3 lines on a 4-line display - // ...or up to 2 lines on a 3-line display + // Filament Change screens show up to 2 lines on a 3-line display // - #if LCD_HEIGHT >= 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Nyomj gombot", "nyomtatás folytatáshoz")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkolás...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Várj míg", "szálcsere", "indítás")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Szál behelyezés", "majd nyomj gombot", "a folytatáshoz")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Nyomj gombot", "a fej fütéséhez")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Fej fütése", "Kérlek várj...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Várj a", "szál kiadására")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Várj a", "szál betöltésére")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Várj a", "szál tisztításra")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Kattints a készre", "szál tiszta")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Várj a nyomtatóra", "majd folytat...")); - #else - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Katt a folytatáshoz")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkolás...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Kérlek várj...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Behelyez majd katt")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Katt a fütéshez")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Fütés...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Kiadás...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Betöltés...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Tisztítás...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Katt ha kész")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Folytatás...")); - #endif + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Katt a folytatáshoz")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkolás...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Kérlek várj...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Behelyez majd katt")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Katt a fütéshez")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Fütés...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Kiadás...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Betöltés...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Tisztítás...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Katt ha kész")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Folytatás...")); + LSTR MSG_TMC_DRIVERS = _UxGT("TMC meghajtók"); LSTR MSG_TMC_CURRENT = _UxGT("Meghajtó áram"); LSTR MSG_TMC_HYBRID_THRS = _UxGT("Hibrid küszöbérték"); @@ -668,11 +646,8 @@ namespace Language_hu { LSTR MSG_LEVEL_X_AXIS = _UxGT("X tengely szint"); LSTR MSG_AUTO_CALIBRATE = _UxGT("Önkalibrálás"); - #if ENABLED(TOUCH_UI_FTDI_EVE) - LSTR MSG_HEATER_TIMEOUT = _UxGT("Tétlenségi idökorlát, a hömérséklet csökkent. Nyomd meg az OK gombot az ismételt felfütéshez, és újra a folytatáshoz."); - #else - LSTR MSG_HEATER_TIMEOUT = _UxGT("Fütés idökorlátja"); - #endif + LSTR MSG_FTDI_HEATER_TIMEOUT = _UxGT("Tétlenségi idökorlát, a hömérséklet csökkent. Nyomd meg az OK gombot az ismételt felfütéshez, és újra a folytatáshoz."); + LSTR MSG_HEATER_TIMEOUT = _UxGT("Fütés idökorlátja"); LSTR MSG_REHEAT = _UxGT("Újrafüt"); LSTR MSG_REHEATING = _UxGT("Újrafütés..."); @@ -698,3 +673,35 @@ namespace Language_hu { LSTR MSG_SHORT_HOUR = _UxGT("ó"); // Csak egy karakter LSTR MSG_SHORT_MINUTE = _UxGT("p"); // Csak egy karakter } + +namespace LanguageWide_hu { + using namespace LanguageNarrow_hu; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Nyomtatás számláló"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Befejezett"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Összes nyomtatási idö"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Leghosszabb munkaidö"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Összes anyag"); + #endif +} + +namespace LanguageTall_hu { + using namespace LanguageWide_hu; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Nyomj gombot", "nyomtatás folytatáshoz")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Várj míg", "szálcsere", "indítás")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Szál behelyezés", "majd nyomj gombot", "a folytatáshoz")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Nyomj gombot", "a fej fütéséhez")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Fej fütése", "Kérlek várj...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Várj a", "szál kiadására")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Várj a", "szál betöltésére")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Várj a", "szál tisztításra")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Kattints a készre", "szál tiszta")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Várj a nyomtatóra", "majd folytat...")); + #endif +} + +namespace Language_hu { + using namespace LanguageTall_hu; +} diff --git a/Marlin/src/lcd/language/language_it.h b/Marlin/src/lcd/language/language_it.h index cbdd308f9b6e..9c78918fcf23 100644 --- a/Marlin/src/lcd/language/language_it.h +++ b/Marlin/src/lcd/language/language_it.h @@ -38,7 +38,7 @@ #define DISPLAY_CHARSET_ISO10646_1 -namespace Language_it { +namespace LanguageNarrow_it { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 1; @@ -106,30 +106,23 @@ namespace Language_it { LSTR MSG_TRAMMING_WIZARD = _UxGT("Wizard Tramming"); LSTR MSG_SELECT_ORIGIN = _UxGT("Selez. origine"); LSTR MSG_LAST_VALUE_SP = _UxGT("Ultimo valore "); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Preriscalda ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Preriscalda ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Preris.") PREHEAT_1_LABEL _UxGT(" Ugello"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Preris.") PREHEAT_1_LABEL _UxGT(" Ugello ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Preris.") PREHEAT_1_LABEL _UxGT(" Tutto"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Preris.") PREHEAT_1_LABEL _UxGT(" Piatto"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Preris.") PREHEAT_1_LABEL _UxGT(" conf"); - #ifdef PREHEAT_2_LABEL - LSTR MSG_PREHEAT_2 = _UxGT("Preris.") PREHEAT_2_LABEL; - LSTR MSG_PREHEAT_2_SETTINGS = _UxGT("Preris.") PREHEAT_2_LABEL _UxGT(" conf"); - #endif - #ifdef PREHEAT_3_LABEL - LSTR MSG_PREHEAT_3 = _UxGT("Preris.") PREHEAT_3_LABEL; - LSTR MSG_PREHEAT_3_SETTINGS = _UxGT("Preris.") PREHEAT_3_LABEL _UxGT(" conf"); - #endif - LSTR MSG_PREHEAT_M = _UxGT("Preriscalda $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Preriscalda $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Preris.$ Ugello"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Preris.$ Ugello ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Preris.$ Tutto"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Preris.$ Piatto"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Preris.$ conf"); - #endif + + LSTR MSG_PREHEAT_1 = _UxGT("Preriscalda ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Preriscalda ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Preris.") PREHEAT_1_LABEL _UxGT(" Ugello"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Preris.") PREHEAT_1_LABEL _UxGT(" Ugello ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Preris.") PREHEAT_1_LABEL _UxGT(" Tutto"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Preris.") PREHEAT_1_LABEL _UxGT(" Piatto"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Preris.") PREHEAT_1_LABEL _UxGT(" conf"); + + LSTR MSG_PREHEAT_M = _UxGT("Preriscalda $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Preriscalda $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Preris.$ Ugello"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Preris.$ Ugello ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Preris.$ Tutto"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Preris.$ Piatto"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Preris.$ conf"); + LSTR MSG_PREHEAT_HOTEND = _UxGT("Prerisc.Hotend"); LSTR MSG_PREHEAT_CUSTOM = _UxGT("Prerisc.personal."); LSTR MSG_COOLDOWN = _UxGT("Raffredda"); @@ -221,10 +214,8 @@ namespace Language_it { LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Modif.Mesh fatta"); LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Crea Mesh personal."); LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("Crea Mesh"); - #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Crea Mesh ($)"); - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Valida Mesh ($)"); - #endif + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Crea Mesh ($)"); + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Valida Mesh ($)"); LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Crea Mesh a freddo"); LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("Aggiusta Alt. Mesh"); LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("Altezza"); @@ -672,22 +663,12 @@ namespace Language_it { LSTR MSG_LOCKSCREEN_UNLOCK = _UxGT("Scroll x sbloccare."); LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Attendere fino al riavvio."); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Nessun supporto inserito."); - LSTR MSG_PLEASE_PREHEAT = _UxGT("Si prega di preriscaldare l'hot end."); - LSTR MSG_INFO_PRINT_COUNT_RESET = _UxGT("Azzera contatori stampa"); - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Contatori stampa"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Tempo totale"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Lavoro più lungo"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Totale estruso"); - #else - LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("No Supporto"); - LSTR MSG_PLEASE_PREHEAT = _UxGT("Prerisc. hot end."); - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Stampe"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Durata"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Più lungo"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Estruso"); - #endif + LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("No Supporto"); + LSTR MSG_PLEASE_PREHEAT = _UxGT("Prerisc. hot end."); + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Stampe"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Durata"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Più lungo"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Estruso"); LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completate"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Temp min"); @@ -778,33 +759,18 @@ namespace Language_it { LSTR MSG_PASSWORD_REMOVED = _UxGT("Password eliminata"); // - // Filament Change screens show up to 3 lines on a 4-line display - // ...or up to 2 lines on a 3-line display + // Filament Change screens show up to 2 lines on a 3-line display // - #if LCD_HEIGHT >= 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_3_LINE("Premi per", "riprendere", "la stampa")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Sto parcheggiando...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Attendere avvio", "del cambio", "di filamento")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Inserisci il", "filamento e premi", "per continuare")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Premi per", "riscaldare ugello")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Riscaldam. ugello", "Attendere prego...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Attendere", "l'espulsione", "del filamento")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Attendere", "il caricamento", "del filamento")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_3_LINE("Attendere", "lo spurgo", "del filamento")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_3_LINE("Premi x terminare", "lo spurgo", "del filamento")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_3_LINE("Attendere", "la ripresa", "della stampa...")); - #else // LCD_HEIGHT < 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Premi x continuare")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Attendere...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Inserisci e premi")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Riscalda ugello")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Riscaldamento...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Espulsione...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Caricamento...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Spurgo filamento")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Premi x terminare")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Ripresa...")); - #endif // LCD_HEIGHT < 4 + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Premi x continuare")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Attendere...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Inserisci e premi")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Riscalda ugello")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Riscaldamento...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Espulsione...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Caricamento...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Spurgo filamento")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Premi x terminare")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Ripresa...")); LSTR MSG_TMC_DRIVERS = _UxGT("Driver TMC"); LSTR MSG_TMC_CURRENT = _UxGT("Correnti driver"); @@ -838,11 +804,8 @@ namespace Language_it { LSTR MSG_LEVEL_X_AXIS = _UxGT("Livello asse X"); LSTR MSG_AUTO_CALIBRATE = _UxGT("Auto Calibra"); - #if ENABLED(TOUCH_UI_FTDI_EVE) - LSTR MSG_HEATER_TIMEOUT = _UxGT("Timeout inattività, temperatura diminuita. Premere OK per riscaldare e riprendere di nuovo."); - #else - LSTR MSG_HEATER_TIMEOUT = _UxGT("Timeout riscaldatore"); - #endif + LSTR MSG_FTDI_HEATER_TIMEOUT = _UxGT("Timeout inattività, temperatura diminuita. Premere OK per riscaldare e riprendere di nuovo."); + LSTR MSG_HEATER_TIMEOUT = _UxGT("Timeout riscaldatore"); LSTR MSG_REHEAT = _UxGT("Riscalda"); LSTR MSG_REHEATING = _UxGT("Riscaldando..."); LSTR MSG_REHEATDONE = _UxGT("Riscaldato"); @@ -895,3 +858,38 @@ namespace Language_it { LSTR DGUS_MSG_FILAMENT_RUNOUT = _UxGT("Filament runout E%d"); } + +namespace LanguageWide_it { + using namespace LanguageNarrow_it; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Nessun supporto inserito."); + LSTR MSG_PLEASE_PREHEAT = _UxGT("Si prega di preriscaldare l'hot end."); + LSTR MSG_INFO_PRINT_COUNT_RESET = _UxGT("Azzera contatori stampa"); + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Contatori stampa"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Tempo totale"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Lavoro più lungo"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Totale estruso"); + #endif +} + +namespace LanguageTall_it { + using namespace LanguageWide_it; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_3_LINE("Premi per", "riprendere", "la stampa")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Sto parcheggiando...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Attendere avvio", "del cambio", "di filamento")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Inserisci il", "filamento e premi", "per continuare")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Premi per", "riscaldare ugello")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Riscaldam. ugello", "Attendere prego...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Attendere", "l'espulsione", "del filamento")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Attendere", "il caricamento", "del filamento")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_3_LINE("Attendere", "lo spurgo", "del filamento")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_3_LINE("Premi x terminare", "lo spurgo", "del filamento")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_3_LINE("Attendere", "la ripresa", "della stampa...")); + #endif +} + +namespace Language_it { + using namespace LanguageTall_it; +} diff --git a/Marlin/src/lcd/language/language_jp_kana.h b/Marlin/src/lcd/language/language_jp_kana.h index 950ddcb5e5a2..d40b972427f0 100644 --- a/Marlin/src/lcd/language/language_jp_kana.h +++ b/Marlin/src/lcd/language/language_jp_kana.h @@ -31,7 +31,7 @@ //#define DISPLAY_CHARSET_ISO10646_KANA -namespace Language_jp_kana { +namespace LanguageNarrow_jp_kana { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 3; @@ -61,23 +61,23 @@ namespace Language_jp_kana { LSTR MSG_LEVEL_BED_DONE = _UxGT("レベリングカンリョウ"); // "Leveling Done!" LSTR MSG_SET_HOME_OFFSETS = _UxGT("キジュンオフセットセッテイ"); // "Set home offsets" LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("オフセットガテキヨウサレマシタ"); // "Offsets applied" - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = PREHEAT_1_LABEL _UxGT(" ヨネツ"); // "Preheat " PREHEAT_1_LABEL - LSTR MSG_PREHEAT_1_H = PREHEAT_1_LABEL _UxGT(" ヨネツ ~"); // "Preheat " PREHEAT_1_LABEL - LSTR MSG_PREHEAT_1_END = PREHEAT_1_LABEL _UxGT(" ヨネツノズル"); // " Nozzle" - LSTR MSG_PREHEAT_1_END_E = PREHEAT_1_LABEL _UxGT(" ヨネツノズル ~"); // " Nozzle" - LSTR MSG_PREHEAT_1_ALL = PREHEAT_1_LABEL _UxGT(" スベテヨネツ"); // " All" - LSTR MSG_PREHEAT_1_BEDONLY = PREHEAT_1_LABEL _UxGT(" ベッドヨネツ"); // " Bed" - LSTR MSG_PREHEAT_1_SETTINGS = PREHEAT_1_LABEL _UxGT(" ヨネツセッテイ"); // " conf" - - LSTR MSG_PREHEAT_M = _UxGT("$ ヨネツ"); // "Preheat " PREHEAT_1_LABEL - LSTR MSG_PREHEAT_M_H = _UxGT("$ ヨネツ ~"); // "Preheat " PREHEAT_1_LABEL - LSTR MSG_PREHEAT_M_END = _UxGT("$ ヨネツノズル"); // " Nozzle" - LSTR MSG_PREHEAT_M_END_E = _UxGT("$ ヨネツノズル ~"); // " Nozzle" - LSTR MSG_PREHEAT_M_ALL = _UxGT("$ スベテヨネツ"); // " All" - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("$ ベッドヨネツ"); // " Bed" - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("$ ヨネツセッテイ"); // " conf" - #endif + + LSTR MSG_PREHEAT_1 = PREHEAT_1_LABEL _UxGT(" ヨネツ"); // "Preheat " PREHEAT_1_LABEL + LSTR MSG_PREHEAT_1_H = PREHEAT_1_LABEL _UxGT(" ヨネツ ~"); // "Preheat " PREHEAT_1_LABEL + LSTR MSG_PREHEAT_1_END = PREHEAT_1_LABEL _UxGT(" ヨネツノズル"); // " Nozzle" + LSTR MSG_PREHEAT_1_END_E = PREHEAT_1_LABEL _UxGT(" ヨネツノズル ~"); // " Nozzle" + LSTR MSG_PREHEAT_1_ALL = PREHEAT_1_LABEL _UxGT(" スベテヨネツ"); // " All" + LSTR MSG_PREHEAT_1_BEDONLY = PREHEAT_1_LABEL _UxGT(" ベッドヨネツ"); // " Bed" + LSTR MSG_PREHEAT_1_SETTINGS = PREHEAT_1_LABEL _UxGT(" ヨネツセッテイ"); // " conf" + + LSTR MSG_PREHEAT_M = _UxGT("$ ヨネツ"); // "Preheat " PREHEAT_1_LABEL + LSTR MSG_PREHEAT_M_H = _UxGT("$ ヨネツ ~"); // "Preheat " PREHEAT_1_LABEL + LSTR MSG_PREHEAT_M_END = _UxGT("$ ヨネツノズル"); // " Nozzle" + LSTR MSG_PREHEAT_M_END_E = _UxGT("$ ヨネツノズル ~"); // " Nozzle" + LSTR MSG_PREHEAT_M_ALL = _UxGT("$ スベテヨネツ"); // " All" + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("$ ベッドヨネツ"); // " Bed" + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("$ ヨネツセッテイ"); // " conf" + LSTR MSG_COOLDOWN = _UxGT("カネツテイシ"); // "Cooldown" LSTR MSG_SWITCH_PS_ON = _UxGT("デンゲン オン"); // "Switch power on" LSTR MSG_SWITCH_PS_OFF = _UxGT("デンゲン オフ"); // "Switch power off" @@ -247,3 +247,20 @@ namespace Language_jp_kana { LSTR MSG_PRINT_PAUSED = _UxGT("プリントガイチジテイシサレマシタ"); LSTR MSG_PRINTING = _UxGT("プリントチュウ..."); } + +namespace LanguageWide_jp_kana { + using namespace LanguageNarrow_jp_kana; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + #endif +} + +namespace LanguageTall_jp_kana { + using namespace LanguageWide_jp_kana; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + #endif +} + +namespace Language_jp_kana { + using namespace LanguageTall_jp_kana; +} diff --git a/Marlin/src/lcd/language/language_ko_KR.h b/Marlin/src/lcd/language/language_ko_KR.h index 27be03734492..ee5381974181 100644 --- a/Marlin/src/lcd/language/language_ko_KR.h +++ b/Marlin/src/lcd/language/language_ko_KR.h @@ -27,7 +27,7 @@ * LCD Menu Messages * See also https://marlinfw.org/docs/development/lcd_language.html */ -namespace Language_ko_KR { +namespace LanguageNarrow_ko_KR { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 1; @@ -54,17 +54,17 @@ namespace Language_ko_KR { LSTR MSG_LEVEL_BED_WAITING = _UxGT("누르면 시작합니다"); LSTR MSG_LEVEL_BED_NEXT_POINT = _UxGT("다음 Point"); LSTR MSG_LEVEL_BED_DONE = _UxGT("레벨링 완료!"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("예열하기 - ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("예열하기 - ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("예열하기 - ") PREHEAT_1_LABEL _UxGT(" 노즐"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("예열하기 - ") PREHEAT_1_LABEL _UxGT(" 노즐 ~"); - LSTR MSG_PREHEAT_M = _UxGT("예열하기 - $"); - LSTR MSG_PREHEAT_M_H = _UxGT("예열하기 - $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("예열하기 - $ 노즐"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("예열하기 - $ 노즐 ~"); - #endif + LSTR MSG_PREHEAT_1 = _UxGT("예열하기 - ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("예열하기 - ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("예열하기 - ") PREHEAT_1_LABEL _UxGT(" 노즐"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("예열하기 - ") PREHEAT_1_LABEL _UxGT(" 노즐 ~"); + + LSTR MSG_PREHEAT_M = _UxGT("예열하기 - $"); + LSTR MSG_PREHEAT_M_H = _UxGT("예열하기 - $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("예열하기 - $ 노즐"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("예열하기 - $ 노즐 ~"); + LSTR MSG_PREHEAT_CUSTOM = _UxGT("Custom 예열"); LSTR MSG_COOLDOWN = _UxGT("식히기"); LSTR MSG_SWITCH_PS_ON = _UxGT("스위치 전원 켜기"); @@ -104,3 +104,20 @@ namespace Language_ko_KR { LSTR MSG_STOPPED = _UxGT("멈춤. "); LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("잘못된 프린터"); } + +namespace LanguageWide_ko_KR { + using namespace LanguageNarrow_ko_KR; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + #endif +} + +namespace LanguageTall_ko_KR { + using namespace LanguageWide_ko_KR; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + #endif +} + +namespace Language_ko_KR { + using namespace LanguageTall_ko_KR; +} diff --git a/Marlin/src/lcd/language/language_nl.h b/Marlin/src/lcd/language/language_nl.h index bc60d19946bd..85b484a10050 100644 --- a/Marlin/src/lcd/language/language_nl.h +++ b/Marlin/src/lcd/language/language_nl.h @@ -31,7 +31,7 @@ #define DISPLAY_CHARSET_ISO10646_1 #define NOT_EXTENDED_ISO10646_1_5X7 -namespace Language_nl { +namespace LanguageNarrow_nl { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 1; @@ -53,23 +53,23 @@ namespace Language_nl { LSTR MSG_LEVEL_BED_DONE = _UxGT("Bed level kompl."); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Zet home offsets"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("H offset toegep."); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = PREHEAT_1_LABEL _UxGT(" voorverwarmen"); - LSTR MSG_PREHEAT_1_H = PREHEAT_1_LABEL _UxGT(" voorverw. ~"); - LSTR MSG_PREHEAT_1_END = PREHEAT_1_LABEL _UxGT(" voorverw. Einde"); - LSTR MSG_PREHEAT_1_END_E = PREHEAT_1_LABEL _UxGT(" voorverw. Einde ~"); - LSTR MSG_PREHEAT_1_ALL = PREHEAT_1_LABEL _UxGT(" voorverw. aan"); - LSTR MSG_PREHEAT_1_BEDONLY = PREHEAT_1_LABEL _UxGT(" voorverw. Bed"); - LSTR MSG_PREHEAT_1_SETTINGS = PREHEAT_1_LABEL _UxGT(" verw. conf"); - - LSTR MSG_PREHEAT_M = _UxGT("$ voorverwarmen"); - LSTR MSG_PREHEAT_M_H = _UxGT("$ voorverw. ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("$ voorverw. Einde"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("$ voorverw. Einde ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("$ voorverw. aan"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("$ voorverw. Bed"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("$ verw. conf"); - #endif + + LSTR MSG_PREHEAT_1 = PREHEAT_1_LABEL _UxGT(" voorverwarmen"); + LSTR MSG_PREHEAT_1_H = PREHEAT_1_LABEL _UxGT(" voorverw. ~"); + LSTR MSG_PREHEAT_1_END = PREHEAT_1_LABEL _UxGT(" voorverw. Einde"); + LSTR MSG_PREHEAT_1_END_E = PREHEAT_1_LABEL _UxGT(" voorverw. Einde ~"); + LSTR MSG_PREHEAT_1_ALL = PREHEAT_1_LABEL _UxGT(" voorverw. aan"); + LSTR MSG_PREHEAT_1_BEDONLY = PREHEAT_1_LABEL _UxGT(" voorverw. Bed"); + LSTR MSG_PREHEAT_1_SETTINGS = PREHEAT_1_LABEL _UxGT(" verw. conf"); + + LSTR MSG_PREHEAT_M = _UxGT("$ voorverwarmen"); + LSTR MSG_PREHEAT_M_H = _UxGT("$ voorverw. ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("$ voorverw. Einde"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("$ voorverw. Einde ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("$ voorverw. aan"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("$ voorverw. Bed"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("$ verw. conf"); + LSTR MSG_COOLDOWN = _UxGT("Afkoelen"); LSTR MSG_SWITCH_PS_ON = _UxGT("Stroom aan"); LSTR MSG_SWITCH_PS_OFF = _UxGT("Stroom uit"); @@ -180,19 +180,11 @@ namespace Language_nl { LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Onjuiste printer"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Printed Aantal"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Totaal Voltooid"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Totale Printtijd"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Langste Printtijd"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Totaal Extrudeert"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Aantal"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Voltooid"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Printtijd "); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Langste"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrud."); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Aantal"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Voltooid"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Printtijd "); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Langste"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrud."); LSTR MSG_INFO_MIN_TEMP = _UxGT("Min Temp"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Max Temp"); @@ -204,11 +196,32 @@ namespace Language_nl { LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("Hervat print"); LSTR MSG_FILAMENT_CHANGE_NOZZLE = _UxGT(" Nozzle: "); // accepted English term // - // Filament Change screens show up to 3 lines on a 4-line display - // ...or up to 2 lines on a 3-line display + // Filament Change screens show up to 2 lines on a 3-line display // + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("Wacht voor", "start...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Wacht voor", "uitladen...")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Klik knop om...", "verw. nozzle.")); //nozzle accepted English term + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Verwarmen...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_2_LINE("Laad filament", "en druk knop")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Wacht voor", "inladen...")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Wacht voor", "printing...")); +} + +namespace LanguageWide_nl { + using namespace LanguageNarrow_nl; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Printed Aantal"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Totaal Voltooid"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Totale Printtijd"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Langste Printtijd"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Totaal Extrudeert"); + #endif +} + +namespace LanguageTall_nl { + using namespace LanguageWide_nl; #if LCD_HEIGHT >= 4 - // Up to 3 lines + // Filament Change screens show up to 3 lines on a 4-line display LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Wacht voor start", "filament te", "verwisselen")); LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Wacht voor", "filament uit", "te laden")); LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Klik knop om...", "verw. nozzle.")); //nozzle accepted English term @@ -216,14 +229,9 @@ namespace Language_nl { LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Laad filament", "en druk knop", "om verder...")); LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Wacht voor", "filament te", "laden")); LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_3_LINE("Wacht voor print", "om verder", "te gaan")); - #else - // Up to 2 lines - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("Wacht voor", "start...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Wacht voor", "uitladen...")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Klik knop om...", "verw. nozzle.")); //nozzle accepted English term - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Verwarmen...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_2_LINE("Laad filament", "en druk knop")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Wacht voor", "inladen...")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Wacht voor", "printing...")); #endif } + +namespace Language_nl { + using namespace LanguageTall_nl; +} diff --git a/Marlin/src/lcd/language/language_pl.h b/Marlin/src/lcd/language/language_pl.h index 8aa12d903d21..4efc1720dbc2 100644 --- a/Marlin/src/lcd/language/language_pl.h +++ b/Marlin/src/lcd/language/language_pl.h @@ -38,7 +38,7 @@ #define DISPLAY_CHARSET_ISO10646_PL -namespace Language_pl { +namespace LanguageNarrow_pl { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -81,23 +81,23 @@ namespace Language_pl { LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Poz. zerowa ust."); LSTR MSG_SELECT_ORIGIN = _UxGT("Wybierz punkt zero"); LSTR MSG_LAST_VALUE_SP = _UxGT("Poprzednia wartość "); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Rozgrzej ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Rozgrzej ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Rozgrzej ") PREHEAT_1_LABEL _UxGT(" Dysza"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Rozgrzej ") PREHEAT_1_LABEL _UxGT(" Dysza ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Rozgrzej ") PREHEAT_1_LABEL _UxGT(" wsz."); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Rozgrzej ") PREHEAT_1_LABEL _UxGT(" stół"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Rozgrzej ") PREHEAT_1_LABEL _UxGT(" ustaw."); - LSTR MSG_PREHEAT_M = _UxGT("Rozgrzej $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Rozgrzej $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Rozgrzej $ Dysza"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Rozgrzej $ Dysza ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Rozgrzej $ wsz."); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Rozgrzej $ stół"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Rozgrzej $ ustaw."); - #endif + LSTR MSG_PREHEAT_1 = _UxGT("Rozgrzej ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Rozgrzej ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Rozgrzej ") PREHEAT_1_LABEL _UxGT(" Dysza"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Rozgrzej ") PREHEAT_1_LABEL _UxGT(" Dysza ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Rozgrzej ") PREHEAT_1_LABEL _UxGT(" wsz."); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Rozgrzej ") PREHEAT_1_LABEL _UxGT(" stół"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Rozgrzej ") PREHEAT_1_LABEL _UxGT(" ustaw."); + + LSTR MSG_PREHEAT_M = _UxGT("Rozgrzej $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Rozgrzej $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Rozgrzej $ Dysza"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Rozgrzej $ Dysza ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Rozgrzej $ wsz."); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Rozgrzej $ stół"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Rozgrzej $ ustaw."); + LSTR MSG_PREHEAT_CUSTOM = _UxGT("Rozgrzej własne ust."); LSTR MSG_COOLDOWN = _UxGT("Chłodzenie"); @@ -422,19 +422,11 @@ namespace Language_pl { LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Jasność oświetlenia"); LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Niepoprawna drukarka"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Wydrukowano"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Ukończono"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Czas druku"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Najdł. druk"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Użyty fil."); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Wydrukowano"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Ukończono"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Razem"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Najdł. druk"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Użyty fil."); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Wydrukowano"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Ukończono"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Razem"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Najdł. druk"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Użyty fil."); LSTR MSG_INFO_PSU = _UxGT("Zasilacz"); LSTR MSG_DRIVE_STRENGTH = _UxGT("Siła silnika"); @@ -495,34 +487,20 @@ namespace Language_pl { LSTR MSG_PASSWORD_REMOVED = _UxGT("Hasło usunięte"); // - // Filament Change screens show up to 3 lines on a 4-line display - // ...or up to 2 lines on a 3-line display + // Filament Change screens show up to 2 lines on a 3-line display // - #if LCD_HEIGHT >= 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Nacisnik przycisk", "by wznowić drukowanie")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkowanie...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Czekam na", "zmianę filamentu", "by wystartować")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Włóż filament", "i naciśnij przycisk", "by kontynuować")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Naciśnij przycisk", "by nagrzać dyszę")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Nagrzewanie dyszy", "Proszę czekać...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Czekam na", "wyjęcie filamentu")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Czekam na", "włożenie filamentu")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Czekam na", "oczyszczenie filamentu")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Kliknij by zakończyć", "oczyszczanie filamentu")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Czekam na", "wznowienie wydruku...")); - #else - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Kliknij by kontynuować")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkowanie...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Proszę czekać...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Włóż i kliknij")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Kliknij by nagrzać")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Nagrzewanie...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Wysuwanie...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Wsuwanie...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Oczyszczanie...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Kliknij by zakończyć")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Wznawianie...")); - #endif + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Kliknij by kontynuować")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkowanie...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Proszę czekać...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Włóż i kliknij")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Kliknij by nagrzać")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Nagrzewanie...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Wysuwanie...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Wsuwanie...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Oczyszczanie...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Kliknij by zakończyć")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Wznawianie...")); + LSTR MSG_TMC_DRIVERS = _UxGT("Sterowniki TMC"); LSTR MSG_TMC_CURRENT = _UxGT("Prąd sterownika"); LSTR MSG_TMC_HOMING_THRS = _UxGT("Zerowanie bezczujnikowe"); @@ -538,3 +516,35 @@ namespace Language_pl { LSTR MSG_CALIBRATION_FAILED = _UxGT("Kalibracja nie powiodła się"); } + +namespace LanguageWide_pl { + using namespace LanguageNarrow_pl; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Wydrukowano"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Ukończono"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Czas druku"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Najdł. druk"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Użyty fil."); + #endif +} + +namespace LanguageTall_pl { + using namespace LanguageWide_pl; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Nacisnik przycisk", "by wznowić drukowanie")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Czekam na", "zmianę filamentu", "by wystartować")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Włóż filament", "i naciśnij przycisk", "by kontynuować")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Naciśnij przycisk", "by nagrzać dyszę")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Nagrzewanie dyszy", "Proszę czekać...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Czekam na", "wyjęcie filamentu")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Czekam na", "włożenie filamentu")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Czekam na", "oczyszczenie filamentu")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Kliknij by zakończyć", "oczyszczanie filamentu")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Czekam na", "wznowienie wydruku...")); + #endif +} + +namespace Language_pl { + using namespace LanguageTall_pl; +} diff --git a/Marlin/src/lcd/language/language_pt.h b/Marlin/src/lcd/language/language_pt.h index ac2cbbdc20d4..e339c8afd444 100644 --- a/Marlin/src/lcd/language/language_pt.h +++ b/Marlin/src/lcd/language/language_pt.h @@ -31,7 +31,7 @@ #define DISPLAY_CHARSET_ISO10646_1 -namespace Language_pt { +namespace LanguageNarrow_pt { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -52,23 +52,23 @@ namespace Language_pt { LSTR MSG_LEVEL_BED_DONE = _UxGT("Pronto !"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Definir desvio"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Offsets aplicados"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Pre-aquecer ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Pre-aquecer ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Pre-aquecer ") PREHEAT_1_LABEL _UxGT(" Bico"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Pre-aquecer ") PREHEAT_1_LABEL _UxGT(" Bico ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Pre-aq. ") PREHEAT_1_LABEL _UxGT(" Tudo"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Pre-aq. ") PREHEAT_1_LABEL _UxGT(" ") LCD_STR_THERMOMETER _UxGT("Base"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Definições ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_M = _UxGT("Pre-aquecer $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Pre-aquecer $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Pre-aquecer $ Bico"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Pre-aquecer $ Bico ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Pre-aq. $ Tudo"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Pre-aq. $ ") LCD_STR_THERMOMETER _UxGT("Base"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Definições $"); - #endif + LSTR MSG_PREHEAT_1 = _UxGT("Pre-aquecer ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Pre-aquecer ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Pre-aquecer ") PREHEAT_1_LABEL _UxGT(" Bico"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Pre-aquecer ") PREHEAT_1_LABEL _UxGT(" Bico ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Pre-aq. ") PREHEAT_1_LABEL _UxGT(" Tudo"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Pre-aq. ") PREHEAT_1_LABEL _UxGT(" ") LCD_STR_THERMOMETER _UxGT("Base"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Definições ") PREHEAT_1_LABEL; + + LSTR MSG_PREHEAT_M = _UxGT("Pre-aquecer $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Pre-aquecer $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Pre-aquecer $ Bico"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Pre-aquecer $ Bico ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Pre-aq. $ Tudo"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Pre-aq. $ ") LCD_STR_THERMOMETER _UxGT("Base"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Definições $"); + LSTR MSG_COOLDOWN = _UxGT("Arrefecer"); LSTR MSG_SWITCH_PS_ON = _UxGT("Ligar"); LSTR MSG_SWITCH_PS_OFF = _UxGT("Desligar"); @@ -170,3 +170,20 @@ namespace Language_pt { LSTR MSG_CALIBRATION_COMPLETED = _UxGT("Calibração Completa"); LSTR MSG_CALIBRATION_FAILED = _UxGT("Calibração Falhou"); } + +namespace LanguageWide_pt { + using namespace LanguageNarrow_pt; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + #endif +} + +namespace LanguageTall_pt { + using namespace LanguageWide_pt; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + #endif +} + +namespace Language_pt { + using namespace LanguageTall_pt; +} diff --git a/Marlin/src/lcd/language/language_pt_br.h b/Marlin/src/lcd/language/language_pt_br.h index 81344b60c4a6..14b057d98021 100644 --- a/Marlin/src/lcd/language/language_pt_br.h +++ b/Marlin/src/lcd/language/language_pt_br.h @@ -28,7 +28,7 @@ * LCD Menu Messages * See also https://marlinfw.org/docs/development/lcd_language.html */ -namespace Language_pt_br { +namespace LanguageNarrow_pt_br { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -67,23 +67,23 @@ namespace Language_pt_br { LSTR MSG_Z_FADE_HEIGHT = _UxGT("Suavizar altura"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Compensar origem"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Alteração aplicada"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Pre-aquecer ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Pre-aquecer ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Extrusora ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_END_E = _UxGT("Extrusora ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_ALL = _UxGT("Pre-aq.Todo ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Pre-aq.Mesa ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Ajustar ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_M = _UxGT("Pre-aquecer $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Pre-aquecer $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Extrusora $"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Extrusora $ ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Pre-aq.Todo $"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Pre-aq.Mesa $"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Ajustar $"); - #endif + LSTR MSG_PREHEAT_1 = _UxGT("Pre-aquecer ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Pre-aquecer ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Extrusora ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_END_E = _UxGT("Extrusora ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_ALL = _UxGT("Pre-aq.Todo ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Pre-aq.Mesa ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Ajustar ") PREHEAT_1_LABEL; + + LSTR MSG_PREHEAT_M = _UxGT("Pre-aquecer $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Pre-aquecer $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Extrusora $"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Extrusora $ ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Pre-aq.Todo $"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Pre-aq.Mesa $"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Ajustar $"); + LSTR MSG_PREHEAT_CUSTOM = _UxGT("Customizar Pre-aq."); LSTR MSG_COOLDOWN = _UxGT("Esfriar"); LSTR MSG_SWITCH_PS_ON = _UxGT("Ligar"); @@ -132,10 +132,8 @@ namespace Language_pt_br { LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Fim da Edição"); LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Montar Malha Custom"); LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("Montar "); - #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Montar $"); - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Checar $"); - #endif + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Montar $"); + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Checar $"); LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Montar Malha fria"); LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("Ajustar Altura"); LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("Quant. de Altura"); @@ -394,19 +392,11 @@ namespace Language_pt_br { LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Intensidade Brilho"); LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Impressora Incorreta"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Total de Impressões"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Realizadas"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Tempo de Impressão"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Trabalho Mais longo"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total de Extrusão"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Qtd de Impressões"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Realizadas"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Tempo de Impressão"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Maior trabalho"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("T. Extrusão"); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Qtd de Impressões"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Realizadas"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Tempo de Impressão"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Maior trabalho"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("T. Extrusão"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Temp Mín"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Temp Máx"); @@ -450,9 +440,42 @@ namespace Language_pt_br { LSTR MSG_SNAKE = _UxGT("Sn4k3"); LSTR MSG_MAZE = _UxGT("Labirinto"); + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Clique p. continuar")); + LSTR MSG_PAUSE_PRINT_INIT = _UxGT(MSG_1_LINE("Estacionando...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Aguarde...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Insira e Clique")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Clique para Aquecer")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Aquecendo...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Ejetando...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Carregando...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Purgando...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Clique p. finalizar")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Continuando...")); + + LSTR MSG_TOP_LEFT = _UxGT("Superior Esquerdo"); + LSTR MSG_BOTTOM_LEFT = _UxGT("Inferior Esquerdo"); + LSTR MSG_TOP_RIGHT = _UxGT("Superior Direto"); + LSTR MSG_BOTTOM_RIGHT = _UxGT("Inferior Direto"); + LSTR MSG_CALIBRATION_COMPLETED = _UxGT("Calibração Completa"); + LSTR MSG_CALIBRATION_FAILED = _UxGT("Calibração Falhou"); +} + +namespace LanguageWide_pt_br { + using namespace LanguageNarrow_pt_br; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Total de Impressões"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Realizadas"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Tempo de Impressão"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Trabalho Mais longo"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total de Extrusão"); + #endif +} + +namespace LanguageTall_pt_br { + using namespace LanguageWide_pt_br; #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Aperte o botão para", "continuar impressão")); - LSTR MSG_PAUSE_PRINT_INIT = _UxGT(MSG_1_LINE("Estacionando...")); LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Esperando o", "inicio da", "troca de filamento")); LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Coloque filamento", "pressione o botão", "para continuar...")); LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Pressione o botão", "p/ aquecer o bocal")); @@ -462,24 +485,9 @@ namespace Language_pt_br { LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Espere pela", "purga de filamento")); LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Clique para finaliz.", "purga de filamento")); LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Esperando impressão", "continuar")); - #else // LCD_HEIGHT < 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Clique p. continuar")); - LSTR MSG_PAUSE_PRINT_INIT = _UxGT(MSG_1_LINE("Estacionando...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Aguarde...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Insira e Clique")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Clique para Aquecer")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Aquecendo...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Ejetando...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Carregando...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Purgando...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Clique p. finalizar")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Continuando...")); #endif +} - LSTR MSG_TOP_LEFT = _UxGT("Superior Esquerdo"); - LSTR MSG_BOTTOM_LEFT = _UxGT("Inferior Esquerdo"); - LSTR MSG_TOP_RIGHT = _UxGT("Superior Direto"); - LSTR MSG_BOTTOM_RIGHT = _UxGT("Inferior Direto"); - LSTR MSG_CALIBRATION_COMPLETED = _UxGT("Calibração Completa"); - LSTR MSG_CALIBRATION_FAILED = _UxGT("Calibração Falhou"); +namespace Language_pt_br { + using namespace LanguageTall_pt_br; } diff --git a/Marlin/src/lcd/language/language_ro.h b/Marlin/src/lcd/language/language_ro.h index b4f7550a7fa5..579c7eb22467 100644 --- a/Marlin/src/lcd/language/language_ro.h +++ b/Marlin/src/lcd/language/language_ro.h @@ -29,7 +29,7 @@ * * Translation by cristyanul */ -namespace Language_ro { +namespace LanguageNarrow_ro { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -68,23 +68,23 @@ namespace Language_ro { LSTR MSG_Z_FADE_HEIGHT = _UxGT("Fade Inaltime"); LSTR MSG_SET_HOME_OFFSETS = _UxGT("Seteaza Offseturile Acasa"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Offseturi Aplicate"); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Preincalzeste ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Preincalzeste ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Preincalzeste ") PREHEAT_1_LABEL _UxGT(" Capatul"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Preincalzeste ") PREHEAT_1_LABEL _UxGT(" Capatul ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Preincalzeste ") PREHEAT_1_LABEL _UxGT(" Tot"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Preincalzeste ") PREHEAT_1_LABEL _UxGT(" Patul"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Preincalzeste ") PREHEAT_1_LABEL _UxGT(" Conf"); - LSTR MSG_PREHEAT_M = _UxGT("Preincalzeste $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Preincalzeste $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Preincalzeste $ Capatul"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Preincalzeste $ Capatul ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Preincalzeste $ Tot"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Preincalzeste $ Patul"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Preincalzeste $ Conf"); - #endif + LSTR MSG_PREHEAT_1 = _UxGT("Preincalzeste ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Preincalzeste ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Preincalzeste ") PREHEAT_1_LABEL _UxGT(" Capatul"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Preincalzeste ") PREHEAT_1_LABEL _UxGT(" Capatul ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Preincalzeste ") PREHEAT_1_LABEL _UxGT(" Tot"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Preincalzeste ") PREHEAT_1_LABEL _UxGT(" Patul"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Preincalzeste ") PREHEAT_1_LABEL _UxGT(" Conf"); + + LSTR MSG_PREHEAT_M = _UxGT("Preincalzeste $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Preincalzeste $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Preincalzeste $ Capatul"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Preincalzeste $ Capatul ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Preincalzeste $ Tot"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Preincalzeste $ Patul"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Preincalzeste $ Conf"); + LSTR MSG_PREHEAT_CUSTOM = _UxGT("Preincalzeste Personalizat"); LSTR MSG_COOLDOWN = _UxGT("Racire"); LSTR MSG_CUTTER_FREQUENCY = _UxGT("Frecventa"); @@ -142,10 +142,8 @@ namespace Language_ro { LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Done Editing Mesh"); LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Build Custom Mesh"); LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("Build Mesh"); - #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Build Mesh ($)"); - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Validate Mesh ($)"); - #endif + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Build Mesh ($)"); + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Validate Mesh ($)"); LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Build Cold Mesh"); LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("Adjust Mesh Height"); LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("Height Amount"); @@ -476,19 +474,11 @@ namespace Language_ro { LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Light Brightness"); LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("INCORRECT PRINTER"); -#if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Total Printuri"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completat"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Timp Imprimare Total"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Longest Job Time"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total Extrudat"); -#else LSTR MSG_INFO_PRINT_COUNT = _UxGT("Prints"); LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completed"); LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Longest"); LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruded"); -#endif LSTR MSG_INFO_MIN_TEMP = _UxGT("Temperatura Minima"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Temperatura Maxima"); @@ -560,22 +550,8 @@ namespace Language_ro { LSTR MSG_BAD_PAGE_SPEED = _UxGT("Bad page speed"); // - // Filament Inlocuire screens show up to 3 lines on a 4-line display - // ...or up to 2 lines on a 3-line display + // Filament Inlocuire screens show up to 2 lines on a 3-line display // -#if LCD_HEIGHT >= 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Apasa Butonul", "pentru a reveni la print")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parcare...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Astept ca", "inlocuirea filamentului", "sa inceapa")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Insert filament", "and press button", "to continue")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Press button", "to heat nozzle")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Nozzle heating", "Please wait...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Wait for", "filament unload")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Wait for", "filament load")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Wait for", "filament purge")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Click to finish", "filament purge")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Wait for print", "to resume...")); -#else LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Click to continue")); LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parcare...")); LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Va rog asteptati...")); @@ -587,7 +563,7 @@ namespace Language_ro { LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Curatare...")); LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Click pentru a termina")); LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Se Reia...")); -#endif + LSTR MSG_TMC_DRIVERS = _UxGT("TMC Drivers"); LSTR MSG_TMC_CURRENT = _UxGT("Driver Current"); LSTR MSG_TMC_HYBRID_THRS = _UxGT("Hybrid Threshold"); @@ -606,3 +582,35 @@ namespace Language_ro { LSTR MSG_REHEAT = _UxGT("Reincalzire"); LSTR MSG_REHEATING = _UxGT("Reincalzire..."); } + +namespace LanguageWide_ro { + using namespace LanguageNarrow_ro; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Total Printuri"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completat"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Timp Imprimare Total"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Longest Job Time"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total Extrudat"); + #endif +} + +namespace LanguageTall_ro { + using namespace LanguageWide_ro; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Apasa Butonul", "pentru a reveni la print")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Astept ca", "inlocuirea filamentului", "sa inceapa")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Insert filament", "and press button", "to continue")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Press button", "to heat nozzle")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Nozzle heating", "Please wait...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Wait for", "filament unload")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Wait for", "filament load")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Wait for", "filament purge")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Click to finish", "filament purge")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Wait for print", "to resume...")); + #endif +} + +namespace Language_ro { + using namespace LanguageTall_ro; +} diff --git a/Marlin/src/lcd/language/language_ru.h b/Marlin/src/lcd/language/language_ru.h index 7e00467fa1bc..46bace2ad96b 100644 --- a/Marlin/src/lcd/language/language_ru.h +++ b/Marlin/src/lcd/language/language_ru.h @@ -29,7 +29,7 @@ */ #define DISPLAY_CHARSET_ISO10646_5 -namespace Language_ru { +namespace LanguageNarrow_ru { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -43,15 +43,9 @@ namespace Language_ru { LSTR MSG_MEDIA_INSERTED = _UxGT("SD карта вставлена"); LSTR MSG_MEDIA_REMOVED = _UxGT("SD карта извлечена"); LSTR MSG_MEDIA_WAITING = _UxGT("Вставьте SD карту"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_MEDIA_INIT_FAIL = _UxGT("Сбой инициализации SD"); - LSTR MSG_ADVANCED_SETTINGS = _UxGT("Расширенные настройки"); - LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Переполнение вызова"); - #else - LSTR MSG_MEDIA_INIT_FAIL = _UxGT("Сбой инициализ. SD"); - LSTR MSG_ADVANCED_SETTINGS = _UxGT("Расшир. настройки"); - LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Переполн. вызова"); - #endif + LSTR MSG_MEDIA_INIT_FAIL = _UxGT("Сбой инициализ. SD"); + LSTR MSG_ADVANCED_SETTINGS = _UxGT("Расшир. настройки"); + LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Переполн. вызова"); LSTR MSG_MEDIA_READ_ERROR = _UxGT("Ошибка чтения"); LSTR MSG_MEDIA_USB_REMOVED = _UxGT("USB диск удалён"); LSTR MSG_MEDIA_USB_FAILED = _UxGT("Ошибка USB диска"); @@ -77,71 +71,46 @@ namespace Language_ru { LSTR MSG_LEVEL_BED_NEXT_POINT = _UxGT("Следующая точка"); LSTR MSG_LEVEL_BED_DONE = _UxGT("Выравнивание готово!"); LSTR MSG_Z_FADE_HEIGHT = _UxGT("Лимит выранивания"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_SET_HOME_OFFSETS = _UxGT("Установ. смещения дома"); - LSTR MSG_HOME_OFFSET_X = _UxGT("Смещение дома X"); - LSTR MSG_HOME_OFFSET_Y = _UxGT("Смещение дома Y"); - LSTR MSG_HOME_OFFSET_Z = _UxGT("Смещение дома Z"); - #else - LSTR MSG_SET_HOME_OFFSETS = _UxGT("Установ.смещ.дома"); - LSTR MSG_HOME_OFFSET_X = _UxGT("Смещ. дома X"); - LSTR MSG_HOME_OFFSET_Y = _UxGT("Смещ. дома Y"); - LSTR MSG_HOME_OFFSET_Z = _UxGT("Смещ. дома Z"); - #endif + + LSTR MSG_SET_HOME_OFFSETS = _UxGT("Установ.смещ.дома"); + LSTR MSG_HOME_OFFSET_X = _UxGT("Смещ. дома X"); + LSTR MSG_HOME_OFFSET_Y = _UxGT("Смещ. дома Y"); + LSTR MSG_HOME_OFFSET_Z = _UxGT("Смещ. дома Z"); + LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Смещения применены"); LSTR MSG_SELECT_ORIGIN = _UxGT("Выберите ноль"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_LAST_VALUE_SP = _UxGT("Последнее значение "); - #else - LSTR MSG_LAST_VALUE_SP = _UxGT("Послед. знач. "); - #endif - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Нагрев ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Нагреть ~ ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Нагреть сопло ") PREHEAT_1_LABEL _UxGT(" сопло"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Нагреть сопло ~") PREHEAT_1_LABEL _UxGT(" сопло ~");; - LSTR MSG_PREHEAT_1_ALL = _UxGT("Нагреть всё ") PREHEAT_1_LABEL _UxGT(" всё"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Нагреть стол ") PREHEAT_1_LABEL _UxGT(" стол"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Правка предн. ") PREHEAT_1_LABEL _UxGT(" наст."); - #ifdef PREHEAT_2_LABEL - LSTR MSG_PREHEAT_2 = _UxGT("Нагрев ") PREHEAT_2_LABEL; - LSTR MSG_PREHEAT_2_SETTINGS = _UxGT("Нагрев ") PREHEAT_2_LABEL _UxGT(" настр."); - #endif - #ifdef PREHEAT_3_LABEL - LSTR MSG_PREHEAT_3 = _UxGT("Нагрев ") PREHEAT_3_LABEL; - LSTR MSG_PREHEAT_3_SETTINGS = _UxGT("Нагрев ") PREHEAT_3_LABEL _UxGT(" настр."); - #endif - LSTR MSG_PREHEAT_M = _UxGT("Нагрев $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Нагреть ~ $"); - LSTR MSG_PREHEAT_M_END = _UxGT("Нагреть сопло $"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Нагреть сопло ~ $"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Нагреть всё $"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Нагреть стол $"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Настр.нагрева $"); - #endif + LSTR MSG_LAST_VALUE_SP = _UxGT("Послед. знач. "); + + LSTR MSG_PREHEAT_1 = _UxGT("Нагрев ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Нагреть ~ ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Нагреть сопло ") PREHEAT_1_LABEL _UxGT(" сопло"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Нагреть сопло ~") PREHEAT_1_LABEL _UxGT(" сопло ~");; + LSTR MSG_PREHEAT_1_ALL = _UxGT("Нагреть всё ") PREHEAT_1_LABEL _UxGT(" всё"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Нагреть стол ") PREHEAT_1_LABEL _UxGT(" стол"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Правка предн. ") PREHEAT_1_LABEL _UxGT(" наст."); + + LSTR MSG_PREHEAT_M = _UxGT("Нагрев $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Нагреть ~ $"); + LSTR MSG_PREHEAT_M_END = _UxGT("Нагреть сопло $"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Нагреть сопло ~ $"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Нагреть всё $"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Нагреть стол $"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Настр.нагрева $"); + LSTR MSG_PREHEAT_CUSTOM = _UxGT("Нагрев Свой"); LSTR MSG_COOLDOWN = _UxGT("Охлаждение"); LSTR MSG_CUTTER_FREQUENCY = _UxGT("Частота"); LSTR MSG_LASER_MENU = _UxGT("Управление лазером"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_SPINDLE_MENU = _UxGT("Управлен.шпинделем"); - LSTR MSG_LASER_TOGGLE = _UxGT("Переключить лазер"); - LSTR MSG_SPINDLE_TOGGLE = _UxGT("Переключ. шпиндель"); - LSTR MSG_SPINDLE_POWER = _UxGT("Мощность шпинделя"); - LSTR MSG_LASER_POWER = _UxGT("Мощность лазера"); - LSTR MSG_LASER_PULSE_MS = _UxGT("Тестовый импульс мс"); - LSTR MSG_LASER_EVAC_TOGGLE = _UxGT("Переключить обдув"); - LSTR MSG_SPINDLE_EVAC_TOGGLE = _UxGT("Переключить вакуум"); - #else - LSTR MSG_SPINDLE_MENU = _UxGT("Управл. шпинд."); - LSTR MSG_LASER_TOGGLE = _UxGT("Переключ.лазер"); - LSTR MSG_SPINDLE_TOGGLE = _UxGT("Переключ.шпинд"); - LSTR MSG_SPINDLE_POWER = _UxGT("Мощн.шпинделя"); - LSTR MSG_LASER_POWER = _UxGT("Мощн. лазера"); - LSTR MSG_LASER_PULSE_MS = _UxGT("Тест. имп. мс"); - LSTR MSG_LASER_EVAC_TOGGLE = _UxGT("Переключ. обдув"); - LSTR MSG_SPINDLE_EVAC_TOGGLE = _UxGT("Переключ. вакуум"); - #endif + + LSTR MSG_SPINDLE_MENU = _UxGT("Управл. шпинд."); + LSTR MSG_LASER_TOGGLE = _UxGT("Переключ.лазер"); + LSTR MSG_SPINDLE_TOGGLE = _UxGT("Переключ.шпинд"); + LSTR MSG_SPINDLE_POWER = _UxGT("Мощн.шпинделя"); + LSTR MSG_LASER_POWER = _UxGT("Мощн. лазера"); + LSTR MSG_LASER_PULSE_MS = _UxGT("Тест. имп. мс"); + LSTR MSG_LASER_EVAC_TOGGLE = _UxGT("Переключ. обдув"); + LSTR MSG_SPINDLE_EVAC_TOGGLE = _UxGT("Переключ. вакуум"); + LSTR MSG_LASER_ASSIST_TOGGLE = _UxGT("Управление обдувом"); LSTR MSG_FLOWMETER_FAULT = _UxGT("Ошибка обдува"); LSTR MSG_LASER_FIRE_PULSE = _UxGT("Импульс лазера"); @@ -157,22 +126,12 @@ namespace Language_ru { LSTR MSG_LEVEL_BED = _UxGT("Выровнять стол"); LSTR MSG_BED_TRAMMING = _UxGT("Выровнять углы"); LSTR MSG_NEXT_CORNER = _UxGT("Следующий угол"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_BED_TRAMMING_RAISE = _UxGT("Вверх до срабатыв. зонда"); - LSTR MSG_BED_TRAMMING_IN_RANGE = _UxGT("Углы в норме. Вырав.стола"); - #else - LSTR MSG_BED_TRAMMING_RAISE = _UxGT("Вверх до сраб. зонда"); - LSTR MSG_BED_TRAMMING_IN_RANGE = _UxGT("Углы в норме. Вырав."); - #endif + LSTR MSG_BED_TRAMMING_RAISE = _UxGT("Вверх до сраб. зонда"); + LSTR MSG_BED_TRAMMING_IN_RANGE = _UxGT("Углы в норме. Вырав."); LSTR MSG_BED_TRAMMING_GOOD_POINTS = _UxGT("Хорошие точки: "); LSTR MSG_BED_TRAMMING_LAST_Z = _UxGT("Последняя Z: "); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_MESH_EDITOR = _UxGT("Смещение по Z"); - LSTR MSG_EDITING_STOPPED = _UxGT("Правка сетки окончена"); - #else - LSTR MSG_MESH_EDITOR = _UxGT("Смещение Z"); - LSTR MSG_EDITING_STOPPED = _UxGT("Правка окончена"); - #endif + LSTR MSG_MESH_EDITOR = _UxGT("Смещение Z"); + LSTR MSG_EDITING_STOPPED = _UxGT("Правка окончена"); LSTR MSG_EDIT_MESH = _UxGT("Редактировать сетку"); LSTR MSG_PROBING_POINT = _UxGT("Точка сетки"); LSTR MSG_MESH_X = _UxGT("Индекс X"); @@ -201,13 +160,8 @@ namespace Language_ru { LSTR MSG_UBL_LEVEL_BED = _UxGT("Настройка UBL"); LSTR MSG_LCD_TILTING_MESH = _UxGT("Точка разворота"); LSTR MSG_UBL_MANUAL_MESH = _UxGT("Ручной ввод сетки"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_UBL_BC_INSERT = _UxGT("Разместить шайбу,измерить"); - LSTR MSG_UBL_BC_REMOVE = _UxGT("Убрать и замерить стол"); - #else - LSTR MSG_UBL_BC_INSERT = _UxGT("Разм.шайбу, измерить"); - LSTR MSG_UBL_BC_REMOVE = _UxGT("Убрать, измер. стол"); - #endif + LSTR MSG_UBL_BC_INSERT = _UxGT("Разм.шайбу, измерить"); + LSTR MSG_UBL_BC_REMOVE = _UxGT("Убрать, измер. стол"); LSTR MSG_UBL_MESH_WIZARD = _UxGT("Мастер сеток UBL"); LSTR MSG_UBL_BC_INSERT2 = _UxGT("Измерение"); LSTR MSG_UBL_MOVING_TO_NEXT = _UxGT("Двигаемся дальше"); @@ -215,39 +169,21 @@ namespace Language_ru { LSTR MSG_UBL_DEACTIVATE_MESH = _UxGT("Деактивировать UBL"); LSTR MSG_UBL_MESH_EDIT = _UxGT("Редактор сеток"); LSTR MSG_UBL_EDIT_CUSTOM_MESH = _UxGT("Править свою сетку"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_UBL_SET_TEMP_BED = _UxGT("Температура стола"); - LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("Температура стола"); - LSTR MSG_UBL_SET_TEMP_HOTEND = _UxGT("Температура сопла"); - LSTR MSG_UBL_HOTEND_TEMP_CUSTOM = _UxGT("Температура сопла"); - LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Построить свою сетку"); - LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Правка сетки завершена"); - #else - LSTR MSG_UBL_SET_TEMP_BED = LCD_STR_THERMOMETER _UxGT(" стола, ") LCD_STR_DEGREE _UxGT("C"); - LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("Своя ") LCD_STR_THERMOMETER _UxGT(" стола,") LCD_STR_DEGREE _UxGT("C"); - LSTR MSG_UBL_SET_TEMP_HOTEND = LCD_STR_THERMOMETER _UxGT(" сопла, ") LCD_STR_DEGREE _UxGT("C"); - LSTR MSG_UBL_HOTEND_TEMP_CUSTOM = _UxGT("Своя ") LCD_STR_THERMOMETER _UxGT(" сопла,") LCD_STR_DEGREE _UxGT("C"); - LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Построить свою"); - LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Правка завершена"); - #endif + LSTR MSG_UBL_SET_TEMP_BED = LCD_STR_THERMOMETER _UxGT(" стола, ") LCD_STR_DEGREE _UxGT("C"); + LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("Своя ") LCD_STR_THERMOMETER _UxGT(" стола,") LCD_STR_DEGREE _UxGT("C"); + LSTR MSG_UBL_SET_TEMP_HOTEND = LCD_STR_THERMOMETER _UxGT(" сопла, ") LCD_STR_DEGREE _UxGT("C"); + LSTR MSG_UBL_HOTEND_TEMP_CUSTOM = _UxGT("Своя ") LCD_STR_THERMOMETER _UxGT(" сопла,") LCD_STR_DEGREE _UxGT("C"); + LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Построить свою"); + LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Правка завершена"); LSTR MSG_UBL_FINE_TUNE_MESH = _UxGT("Точная правка сетки"); LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("Построить сетку"); LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Построить сетку $"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Построить холодную сетку"); - #else - LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Строить холод.сетку"); - #endif + LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Строить холод.сетку"); LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("Правка высоты сетки"); LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("Высота"); LSTR MSG_UBL_VALIDATE_MESH_MENU = _UxGT("Проверить сетку"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Проверить сетку $"); - LSTR MSG_UBL_VALIDATE_CUSTOM_MESH = _UxGT("Проверить свою сетку"); - #else - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Провер. сетку $"); - LSTR MSG_UBL_VALIDATE_CUSTOM_MESH = _UxGT("Провер. свою сетку"); - #endif + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Провер. сетку $"); + LSTR MSG_UBL_VALIDATE_CUSTOM_MESH = _UxGT("Провер. свою сетку"); LSTR MSG_G26_HEATING_BED = _UxGT("G26 нагрев стола"); LSTR MSG_G26_HEATING_NOZZLE = _UxGT("G26 нагрев сопла"); LSTR MSG_G26_MANUAL_PRIME = _UxGT("Ручная прочистка"); @@ -257,11 +193,7 @@ namespace Language_ru { LSTR MSG_G26_LEAVING = _UxGT("Выйти из G26"); LSTR MSG_UBL_CONTINUE_MESH = _UxGT("Продолжить сетку"); LSTR MSG_UBL_MESH_LEVELING = _UxGT("Выравнивание сетки"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_UBL_3POINT_MESH_LEVELING = _UxGT("3-х точечное выравнивание"); - #else - LSTR MSG_UBL_3POINT_MESH_LEVELING = _UxGT("3-точечное выравн."); - #endif + LSTR MSG_UBL_3POINT_MESH_LEVELING = _UxGT("3-точечное выравн."); LSTR MSG_UBL_GRID_MESH_LEVELING = _UxGT("Выравнивание сеткой"); LSTR MSG_UBL_MESH_LEVEL = _UxGT("Выровнять сетку"); LSTR MSG_UBL_SIDE_POINTS = _UxGT("Крайние точки"); @@ -269,15 +201,9 @@ namespace Language_ru { LSTR MSG_UBL_OUTPUT_MAP = _UxGT("Вывести карту сетки"); LSTR MSG_UBL_OUTPUT_MAP_HOST = _UxGT("Вывести на хост"); LSTR MSG_UBL_OUTPUT_MAP_CSV = _UxGT("Вывести в CSV"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_UBL_OUTPUT_MAP_BACKUP = _UxGT("Сохранить сетку снаружи"); - LSTR MSG_UBL_INFO_UBL = _UxGT("Вывод информации UBL"); - LSTR MSG_UBL_FILLIN_AMOUNT = _UxGT("Кол-во заполнителя"); - #else - LSTR MSG_UBL_OUTPUT_MAP_BACKUP = _UxGT("Сохранить снаружи"); - LSTR MSG_UBL_INFO_UBL = _UxGT("Информация UBL"); - LSTR MSG_UBL_FILLIN_AMOUNT = _UxGT("Кол-во заполн."); - #endif + LSTR MSG_UBL_OUTPUT_MAP_BACKUP = _UxGT("Сохранить снаружи"); + LSTR MSG_UBL_INFO_UBL = _UxGT("Информация UBL"); + LSTR MSG_UBL_FILLIN_AMOUNT = _UxGT("Кол-во заполн."); LSTR MSG_UBL_MANUAL_FILLIN = _UxGT("Ручное заполнение"); LSTR MSG_UBL_SMART_FILLIN = _UxGT("Умное заполнение"); LSTR MSG_UBL_FILLIN_MESH = _UxGT("Заполнить сетку"); @@ -319,11 +245,7 @@ namespace Language_ru { LSTR MSG_SET_LEDS_DEFAULT = _UxGT("Свет по умолчанию"); LSTR MSG_LED_CHANNEL_N = _UxGT("Канал {"); LSTR MSG_LEDS2 = _UxGT("Свет #2"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_NEO2_PRESETS = _UxGT("Свет #2 предустановки"); - #else - LSTR MSG_NEO2_PRESETS = _UxGT("Свет #2 предустан."); - #endif + LSTR MSG_NEO2_PRESETS = _UxGT("Свет #2 предустан."); LSTR MSG_NEO2_BRIGHTNESS = _UxGT("Яркость"); LSTR MSG_CUSTOM_LEDS = _UxGT("Свой цвет подсветки"); LSTR MSG_INTENSITY_R = _UxGT("Уровень красного"); @@ -359,15 +281,9 @@ namespace Language_ru { LSTR MSG_NOZZLE_STANDBY = _UxGT("Сопло ожидает"); LSTR MSG_BED = _UxGT("Стол, ") LCD_STR_DEGREE _UxGT("C"); LSTR MSG_CHAMBER = _UxGT("Камера,") LCD_STR_DEGREE _UxGT("C"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_COOLER = _UxGT("Охлаждение лазера"); - LSTR MSG_COOLER_TOGGLE = _UxGT("Переключ. охлажд."); - LSTR MSG_FLOWMETER_SAFETY = _UxGT("Безопасн. потока"); - #else - LSTR MSG_COOLER = _UxGT("Охлажд. лазера"); - LSTR MSG_COOLER_TOGGLE = _UxGT("Переключ. охл."); - LSTR MSG_FLOWMETER_SAFETY = _UxGT("Безопас.потока"); - #endif + LSTR MSG_COOLER = _UxGT("Охлажд. лазера"); + LSTR MSG_COOLER_TOGGLE = _UxGT("Переключ. охл."); + LSTR MSG_FLOWMETER_SAFETY = _UxGT("Безопас.потока"); LSTR MSG_LASER = _UxGT("Лазер"); LSTR MSG_FAN_SPEED = _UxGT("Кулер"); LSTR MSG_FAN_SPEED_N = _UxGT("Кулер ~"); @@ -404,11 +320,7 @@ namespace Language_ru { LSTR MSG_VC_JERK = _UxGT("V") STR_C _UxGT("-рывок"); LSTR MSG_VN_JERK = _UxGT("V@-рывок"); LSTR MSG_VE_JERK = _UxGT("Ve-рывок"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_JUNCTION_DEVIATION = _UxGT("Отклонение угла"); - #else - LSTR MSG_JUNCTION_DEVIATION = _UxGT("Отклон.угла"); - #endif + LSTR MSG_JUNCTION_DEVIATION = _UxGT("Отклон.угла"); LSTR MSG_MAX_SPEED = _UxGT("Скорость, мм/с"); LSTR MSG_VMAX_A = _UxGT("Скор.макс ") STR_A; LSTR MSG_VMAX_B = _UxGT("Скор.макс ") STR_B; @@ -442,13 +354,8 @@ namespace Language_ru { LSTR MSG_VOLUMETRIC_ENABLED = _UxGT("E в мм") SUPERSCRIPT_THREE; LSTR MSG_VOLUMETRIC_LIMIT = _UxGT("E огран.,мм") SUPERSCRIPT_THREE; LSTR MSG_VOLUMETRIC_LIMIT_E = _UxGT("E огран. *"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_FILAMENT_DIAM = _UxGT("Диам. филамента"); - LSTR MSG_FILAMENT_DIAM_E = _UxGT("Диам. филамента *"); - #else - LSTR MSG_FILAMENT_DIAM = _UxGT("Диам. филам."); - LSTR MSG_FILAMENT_DIAM_E = _UxGT("Диам. филам. *"); - #endif + LSTR MSG_FILAMENT_DIAM = _UxGT("Диам. филам."); + LSTR MSG_FILAMENT_DIAM_E = _UxGT("Диам. филам. *"); LSTR MSG_FILAMENT_UNLOAD = _UxGT("Загрузка, мм"); LSTR MSG_FILAMENT_LOAD = _UxGT("Выгрузка, мм"); LSTR MSG_ADVANCE_K = _UxGT("К-фактор LA"); @@ -456,13 +363,8 @@ namespace Language_ru { LSTR MSG_CONTRAST = _UxGT("Контраст экрана"); LSTR MSG_STORE_EEPROM = _UxGT("Сохранить настройки"); LSTR MSG_LOAD_EEPROM = _UxGT("Загрузить настройки"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_RESTORE_DEFAULTS = _UxGT("На базовые параметры"); - LSTR MSG_INIT_EEPROM = _UxGT("Инициализация EEPROM"); - #else - LSTR MSG_RESTORE_DEFAULTS = _UxGT("На базовые парам."); - LSTR MSG_INIT_EEPROM = _UxGT("Инициализ. EEPROM"); - #endif + LSTR MSG_RESTORE_DEFAULTS = _UxGT("На базовые парам."); + LSTR MSG_INIT_EEPROM = _UxGT("Инициализ. EEPROM"); LSTR MSG_ERR_EEPROM_CRC = _UxGT("Сбой EEPROM: CRC"); LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Сбой EEPROM: размер"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Сбой EEPROM: версия"); @@ -511,41 +413,24 @@ namespace Language_ru { LSTR MSG_NO_MOVE = _UxGT("Нет движения."); LSTR MSG_KILLED = _UxGT("УБИТО. "); LSTR MSG_STOPPED = _UxGT("ОСТАНОВЛЕНО. "); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_CONTROL_RETRACT = _UxGT("Откат, мм"); - LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Откат при смене, мм"); - LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("Возврат при смене, мм"); - LSTR MSG_CONTROL_RETRACT_RECOVER_SWAPF = _UxGT("Возврат при смене, V"); - LSTR MSG_AUTORETRACT = _UxGT("Автооткат"); - #else - LSTR MSG_CONTROL_RETRACT = _UxGT("Откат, мм"); - LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Откат смены,мм"); - LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("Возвр.смены,мм"); - LSTR MSG_CONTROL_RETRACT_RECOVER_SWAPF = _UxGT("Возвр.смены V"); - LSTR MSG_AUTORETRACT = _UxGT("Автооткат"); - #endif + LSTR MSG_CONTROL_RETRACT = _UxGT("Откат, мм"); + LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Откат смены,мм"); + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("Возвр.смены,мм"); + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAPF = _UxGT("Возвр.смены V"); + LSTR MSG_AUTORETRACT = _UxGT("Автооткат"); LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("Подскок Z, мм"); LSTR MSG_CONTROL_RETRACTF = _UxGT("Втягивание V"); LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("Возврат, мм"); LSTR MSG_CONTROL_RETRACT_RECOVERF = _UxGT("Возврат V"); LSTR MSG_FILAMENT_SWAP_LENGTH = _UxGT("Длина замены"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_FILAMENT_SWAP_EXTRA = _UxGT("Дополнительная длина"); - #else - LSTR MSG_FILAMENT_SWAP_EXTRA = _UxGT("Доп. длина"); - #endif + LSTR MSG_FILAMENT_SWAP_EXTRA = _UxGT("Доп. длина"); LSTR MSG_FILAMENT_PURGE_LENGTH = _UxGT("Длина прочистки"); LSTR MSG_TOOL_CHANGE = _UxGT("Смена сопел"); LSTR MSG_TOOL_CHANGE_ZLIFT = _UxGT("Поднятие по Z"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("Начальная скор."); - LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("Скорость отката"); - #else - LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("Началь.скор."); - LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("Скор.отката"); - #endif + LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("Началь.скор."); + LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("Скор.отката"); LSTR MSG_FILAMENT_PARK_ENABLED = _UxGT("Парковать голову"); LSTR MSG_SINGLENOZZLE_UNRETRACT_SPEED = _UxGT("Скорость возврата"); LSTR MSG_SINGLENOZZLE_FAN_SPEED = _UxGT("Скорость кулера"); @@ -559,13 +444,8 @@ namespace Language_ru { LSTR MSG_FILAMENTCHANGE = _UxGT("Смена филамента"); LSTR MSG_FILAMENTCHANGE_E = _UxGT("Смена филамента *"); LSTR MSG_FILAMENTLOAD = _UxGT("Загрузить филамент"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_FILAMENTLOAD_E = _UxGT("Загрузить филамент *"); - LSTR MSG_FILAMENTUNLOAD_E = _UxGT("Выгрузить филамент *"); - #else - LSTR MSG_FILAMENTLOAD_E = _UxGT("Подать филамент *"); - LSTR MSG_FILAMENTUNLOAD_E = _UxGT("Убрать филамент *"); - #endif + LSTR MSG_FILAMENTLOAD_E = _UxGT("Подать филамент *"); + LSTR MSG_FILAMENTUNLOAD_E = _UxGT("Убрать филамент *"); LSTR MSG_FILAMENTUNLOAD_ALL = _UxGT("Выгрузить всё"); LSTR MSG_ATTACH_MEDIA = _UxGT("Установить SD карту"); LSTR MSG_CHANGE_MEDIA = _UxGT("Сменить SD карту"); @@ -597,11 +477,7 @@ namespace Language_ru { LSTR MSG_ZPROBE_XOFFSET = _UxGT("Смещение X"); LSTR MSG_ZPROBE_YOFFSET = _UxGT("Смещение Y"); LSTR MSG_ZPROBE_ZOFFSET = _UxGT("Смещение Z"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_MOVE_NOZZLE_TO_BED = _UxGT("Двигать сопло к столу"); - #else - LSTR MSG_MOVE_NOZZLE_TO_BED = _UxGT("Двиг. сопло к столу"); - #endif + LSTR MSG_MOVE_NOZZLE_TO_BED = _UxGT("Двиг. сопло к столу"); LSTR MSG_BABYSTEP_X = _UxGT("Микрошаг X"); LSTR MSG_BABYSTEP_Y = _UxGT("Микрошаг Y"); LSTR MSG_BABYSTEP_Z = _UxGT("Микрошаг Z"); @@ -640,22 +516,12 @@ namespace Language_ru { LSTR MSG_DELTA_RADIUS = _UxGT("Радиус"); LSTR MSG_INFO_MENU = _UxGT("О принтере"); LSTR MSG_INFO_PRINTER_MENU = _UxGT("Данные принтера"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_3POINT_LEVELING = _UxGT("3-точечное выравнивание"); - LSTR MSG_LINEAR_LEVELING = _UxGT("Линейное выравнивание"); - LSTR MSG_BILINEAR_LEVELING = _UxGT("Билинейное выравнивание"); - #else - LSTR MSG_3POINT_LEVELING = _UxGT("3-точ. выравнив."); - LSTR MSG_LINEAR_LEVELING = _UxGT("Линейное выравн."); - LSTR MSG_BILINEAR_LEVELING = _UxGT("Билин. выравнив."); - #endif + LSTR MSG_3POINT_LEVELING = _UxGT("3-точ. выравнив."); + LSTR MSG_LINEAR_LEVELING = _UxGT("Линейное выравн."); + LSTR MSG_BILINEAR_LEVELING = _UxGT("Билин. выравнив."); LSTR MSG_UBL_LEVELING = _UxGT("Выравнивание UBL"); LSTR MSG_MESH_LEVELING = _UxGT("Выравнивание сеткой"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_MESH_DONE = _UxGT("Зондирование выполнено"); - #else - LSTR MSG_MESH_DONE = _UxGT("Зондиров. выполнено"); - #endif + LSTR MSG_MESH_DONE = _UxGT("Зондиров. выполнено"); LSTR MSG_INFO_STATS_MENU = _UxGT("Статистика принтера"); LSTR MSG_INFO_BOARD_MENU = _UxGT("Данные платы"); @@ -663,30 +529,17 @@ namespace Language_ru { LSTR MSG_INFO_EXTRUDERS = _UxGT("Экструдеры"); LSTR MSG_INFO_BAUDRATE = _UxGT("Скорость,БОД"); LSTR MSG_INFO_PROTOCOL = _UxGT("Протокол"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_INFO_RUNAWAY_OFF = _UxGT("Контроль утечки Т: Выкл"); - LSTR MSG_INFO_RUNAWAY_ON = _UxGT("Контроль утечки Т: Вкл"); - LSTR MSG_HOTEND_IDLE_TIMEOUT = _UxGT("Время простоя хотенда"); - #else - LSTR MSG_INFO_RUNAWAY_OFF = _UxGT("Контр.утечки Т:Выкл"); - LSTR MSG_INFO_RUNAWAY_ON = _UxGT("Контр.утечки Т:Вкл"); - LSTR MSG_HOTEND_IDLE_TIMEOUT = _UxGT("Время прост.хот-а"); - #endif + LSTR MSG_INFO_RUNAWAY_OFF = _UxGT("Контр.утечки Т:Выкл"); + LSTR MSG_INFO_RUNAWAY_ON = _UxGT("Контр.утечки Т:Вкл"); + LSTR MSG_HOTEND_IDLE_TIMEOUT = _UxGT("Время прост.хот-а"); LSTR MSG_CASE_LIGHT = _UxGT("Подсветка корпуса"); LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Яркость подсветки"); LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("НЕВЕРНЫЙ ПРИНТЕР"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Счётчик печати"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Общее время печати"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Наидольшее задание"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Длина филамента"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Напечатано"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Общее время"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Наидольшее"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Выдавлено"); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Напечатано"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Общее время"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Наидольшее"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Выдавлено"); LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Завершено"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Мин. ") LCD_STR_THERMOMETER; @@ -704,22 +557,14 @@ namespace Language_ru { LSTR MSG_FILAMENT_CHANGE_OPTION_PURGE = _UxGT("Выдавить ещё"); LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("Возобновить печать"); LSTR MSG_FILAMENT_CHANGE_NOZZLE = _UxGT(" Сопла: "); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_RUNOUT_SENSOR = _UxGT("Датчик оконч. филамента"); - #else - LSTR MSG_RUNOUT_SENSOR = _UxGT("Датчик оконч.филам."); - #endif + LSTR MSG_RUNOUT_SENSOR = _UxGT("Датчик оконч.филам."); LSTR MSG_RUNOUT_DISTANCE_MM = _UxGT("До конца, мм"); LSTR MSG_KILL_HOMING_FAILED = _UxGT("Ошибка парковки"); LSTR MSG_LCD_PROBING_FAILED = _UxGT("Ошибка зондирования"); LSTR MSG_MMU2_CHOOSE_FILAMENT_HEADER = _UxGT("ВЫБИРЕТЕ ФИЛАМЕНТ"); LSTR MSG_MMU2_MENU = _UxGT("Настройки MMU"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_KILL_MMU2_FIRMWARE = _UxGT("Обновить прошивку MMU!"); - #else - LSTR MSG_KILL_MMU2_FIRMWARE = _UxGT("Обнови прошивку MMU"); - #endif + LSTR MSG_KILL_MMU2_FIRMWARE = _UxGT("Обнови прошивку MMU"); LSTR MSG_MMU2_NOT_RESPONDING = _UxGT("MMU требует внимания"); LSTR MSG_MMU2_RESUME = _UxGT("Продолжить печать"); LSTR MSG_MMU2_RESUMING = _UxGT("Продолжение..."); @@ -730,11 +575,7 @@ namespace Language_ru { LSTR MSG_MMU2_EJECT_FILAMENT_N = _UxGT("Извлечь филамент ~"); LSTR MSG_MMU2_UNLOAD_FILAMENT = _UxGT("Выгрузить филамент"); LSTR MSG_MMU2_LOADING_FILAMENT = _UxGT("Загрузка %i..."); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_MMU2_EJECTING_FILAMENT = _UxGT("Извлечение филамента..."); - #else - LSTR MSG_MMU2_EJECTING_FILAMENT = _UxGT("Извлеч.филамента..."); - #endif + LSTR MSG_MMU2_EJECTING_FILAMENT = _UxGT("Извлеч.филамента..."); LSTR MSG_MMU2_UNLOADING_FILAMENT = _UxGT("Выгрузка...."); LSTR MSG_MMU2_ALL = _UxGT("Всё"); LSTR MSG_MMU2_FILAMENT_N = _UxGT("Филамент ~"); @@ -742,11 +583,7 @@ namespace Language_ru { LSTR MSG_MMU2_RESETTING = _UxGT("Перезапуск MMU..."); LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Удалите и нажмите"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_MIX = _UxGT("Смешивание"); - #else - LSTR MSG_MIX = _UxGT("Смешив."); - #endif + LSTR MSG_MIX = _UxGT("Смешив."); LSTR MSG_MIX_COMPONENT_N = _UxGT("Компонент {"); LSTR MSG_MIXER = _UxGT("Смеситель"); LSTR MSG_GRADIENT = _UxGT("Градиент"); @@ -754,25 +591,15 @@ namespace Language_ru { LSTR MSG_CYCLE_MIX = _UxGT("Цикличное смешивание"); LSTR MSG_GRADIENT_MIX = _UxGT("Градиент смешивания"); LSTR MSG_REVERSE_GRADIENT = _UxGT("Сменить градиент"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_TOGGLE_MIX = _UxGT("Переключить смешивание"); - LSTR MSG_ACTIVE_VTOOL = _UxGT("Активация В-инструм."); - LSTR MSG_START_VTOOL = _UxGT("Начало В-инструмента"); - LSTR MSG_END_VTOOL = _UxGT("Конец В-инструмента"); - LSTR MSG_GRADIENT_ALIAS = _UxGT("Псевдоним В-инструмента"); - LSTR MSG_RESET_VTOOLS = _UxGT("Сброс В-инструментов"); - LSTR MSG_COMMIT_VTOOL = _UxGT("Смешать В-инструменты"); - LSTR MSG_VTOOLS_RESET = _UxGT("В-инструменты сброшены"); - #else - LSTR MSG_TOGGLE_MIX = _UxGT("Перекл. смешивание"); - LSTR MSG_ACTIVE_VTOOL = _UxGT("Актив.В-инструм."); - LSTR MSG_START_VTOOL = _UxGT("В-инструм.нач."); - LSTR MSG_END_VTOOL = _UxGT("В-инструм.кон."); - LSTR MSG_GRADIENT_ALIAS = _UxGT("Псевдоним В-инстр."); - LSTR MSG_RESET_VTOOLS = _UxGT("Сброс В-инструм."); - LSTR MSG_COMMIT_VTOOL = _UxGT("Смешать В-инструм."); - LSTR MSG_VTOOLS_RESET = _UxGT("В-инструм. сброшены"); - #endif + LSTR MSG_TOGGLE_MIX = _UxGT("Перекл. смешивание"); + LSTR MSG_ACTIVE_VTOOL = _UxGT("Актив.В-инструм."); + LSTR MSG_START_VTOOL = _UxGT("В-инструм.нач."); + LSTR MSG_END_VTOOL = _UxGT("В-инструм.кон."); + LSTR MSG_GRADIENT_ALIAS = _UxGT("Псевдоним В-инстр."); + LSTR MSG_RESET_VTOOLS = _UxGT("Сброс В-инструм."); + LSTR MSG_COMMIT_VTOOL = _UxGT("Смешать В-инструм."); + LSTR MSG_VTOOLS_RESET = _UxGT("В-инструм. сброшены"); + LSTR MSG_START_Z = _UxGT("Начало Z"); LSTR MSG_END_Z = _UxGT(" Конец Z"); @@ -782,269 +609,341 @@ namespace Language_ru { LSTR MSG_SNAKE = _UxGT("Sn4k3"); LSTR MSG_MAZE = _UxGT("Maze"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_BAD_PAGE = _UxGT("Плохой индекс страницы"); - LSTR MSG_BAD_PAGE_SPEED = _UxGT("Плохая скорость страницы"); - #else - LSTR MSG_BAD_PAGE = _UxGT("Плохая страница"); - LSTR MSG_BAD_PAGE_SPEED = _UxGT("Плохая скор.стран."); - #endif + LSTR MSG_BAD_PAGE = _UxGT("Плохая страница"); + LSTR MSG_BAD_PAGE_SPEED = _UxGT("Плохая скор.стран."); - LSTR MSG_EDIT_PASSWORD = _UxGT("Редактировать пароль"); - LSTR MSG_LOGIN_REQUIRED = _UxGT("Нужен логин"); - LSTR MSG_PASSWORD_SETTINGS = _UxGT("Настройки пароля"); - LSTR MSG_ENTER_DIGIT = _UxGT("Введите цифру"); - LSTR MSG_CHANGE_PASSWORD = _UxGT("Смените пароль"); - LSTR MSG_REMOVE_PASSWORD = _UxGT("Удалить пароль"); - LSTR MSG_PASSWORD_SET = _UxGT("Пароль это "); - LSTR MSG_START_OVER = _UxGT("Старт через"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_REMINDER_SAVE_SETTINGS = _UxGT("Не забудь сохранить!"); - #else - LSTR MSG_REMINDER_SAVE_SETTINGS = _UxGT("Не забудь сохранить"); - #endif - LSTR MSG_PASSWORD_REMOVED = _UxGT("Пароль удалён"); + LSTR MSG_EDIT_PASSWORD = _UxGT("Редактировать пароль"); + LSTR MSG_LOGIN_REQUIRED = _UxGT("Нужен логин"); + LSTR MSG_PASSWORD_SETTINGS = _UxGT("Настройки пароля"); + LSTR MSG_ENTER_DIGIT = _UxGT("Введите цифру"); + LSTR MSG_CHANGE_PASSWORD = _UxGT("Смените пароль"); + LSTR MSG_REMOVE_PASSWORD = _UxGT("Удалить пароль"); + LSTR MSG_PASSWORD_SET = _UxGT("Пароль это "); + LSTR MSG_START_OVER = _UxGT("Старт через"); + LSTR MSG_REMINDER_SAVE_SETTINGS = _UxGT("Не забудь сохранить"); + LSTR MSG_PASSWORD_REMOVED = _UxGT("Пароль удалён"); // // Filament Change screens show up to 3 lines on a 4-line display // ...or up to 2 lines on a 3-line display // - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Парковка...")); - #if LCD_HEIGHT >= 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_3_LINE("Нажмите кнопку", "для продолжения", "печати")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("Ожидайте начала", "смены филамента")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Вставьте филамент", "и нажмите кнопку", "для продолжения")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_3_LINE("Нажмите кнопку", "для нагрева", "сопла...")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Нагрев сопла", "Ждите...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Ожидайте", "выгрузки", "филамента")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Ожидайте", "загрузки", "филамента")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_3_LINE("Ожидайте", "экструзии", "филамента")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_3_LINE("Нажмите кнопку", "для завершения", "прочистки филамента")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_3_LINE("Ожидайте", "возобновления", "печати")); - #else - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Продолжить печать")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Ожидайте...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Вставь и нажми")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Нагреть сопло")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Нагрев...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Выгрузка...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Загрузка...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Прочистка...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Завершить прочистку")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Возобновление...")); - #endif - - LSTR MSG_TMC_DRIVERS = _UxGT("Драйвера TMC"); - LSTR MSG_TMC_CURRENT = _UxGT("Ток двигателей"); - LSTR MSG_TMC_HYBRID_THRS = _UxGT("Гибридный режим"); - LSTR MSG_TMC_HOMING_THRS = _UxGT("Чувствительность"); - LSTR MSG_TMC_STEPPING_MODE = _UxGT("Режим драйвера"); - LSTR MSG_TMC_STEALTH_ENABLED = _UxGT("Тихий режим вкл"); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Парковка...")); + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Продолжить печать")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Ожидайте...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Вставь и нажми")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Нагреть сопло")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Нагрев...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Выгрузка...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Загрузка...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Прочистка...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Завершить прочистку")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Возобновление...")); + + LSTR MSG_TMC_DRIVERS = _UxGT("Драйвера TMC"); + LSTR MSG_TMC_CURRENT = _UxGT("Ток двигателей"); + LSTR MSG_TMC_HYBRID_THRS = _UxGT("Гибридный режим"); + LSTR MSG_TMC_HOMING_THRS = _UxGT("Чувствительность"); + LSTR MSG_TMC_STEPPING_MODE = _UxGT("Режим драйвера"); + LSTR MSG_TMC_STEALTH_ENABLED = _UxGT("Тихий режим вкл"); + + LSTR MSG_SERVICE_RESET = _UxGT("Сброс"); + LSTR MSG_SERVICE_IN = _UxGT(" в:"); + LSTR MSG_BACKLASH = _UxGT("Люфт"); + LSTR MSG_BACKLASH_CORRECTION = _UxGT("Исправление"); + LSTR MSG_BACKLASH_SMOOTHING = _UxGT("Сглаживание"); + + LSTR MSG_LEVEL_X_AXIS = _UxGT("Выровнять ось X"); + LSTR MSG_AUTO_CALIBRATE = _UxGT("Автокалибровка"); + LSTR MSG_HEATER_TIMEOUT = _UxGT("Таймаут нагрева"); + LSTR MSG_REHEAT = _UxGT("Возобновить нагрев"); + LSTR MSG_REHEATING = _UxGT("Нагрев..."); + + LSTR MSG_PROBE_WIZARD = _UxGT("Мастер Z-зонда"); + LSTR MSG_PROBE_WIZARD_PROBING = _UxGT("Зондир.контр.точки Z"); + LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Движ.к точке зондир."); + + LSTR MSG_SOUND = _UxGT("Звук"); + + LSTR MSG_TOP_LEFT = _UxGT("Верхний левый"); + LSTR MSG_BOTTOM_LEFT = _UxGT("Нижний левый"); + LSTR MSG_TOP_RIGHT = _UxGT("Верхний правый"); + LSTR MSG_BOTTOM_RIGHT = _UxGT("Нижний правый"); + LSTR MSG_CALIBRATION_COMPLETED = _UxGT("Калибровка успешна"); + LSTR MSG_CALIBRATION_FAILED = _UxGT("Ошибка калибровки"); + + LSTR MSG_DRIVER_BACKWARD = _UxGT(" драйвер наоборот"); + + LSTR MSG_SD_CARD = _UxGT("SD Карта"); + LSTR MSG_USB_DISK = _UxGT("USB Диск"); + + LSTR MSG_SHORT_DAY = _UxGT("д"); // One character only + LSTR MSG_SHORT_HOUR = _UxGT("ч"); // One character only + LSTR MSG_SHORT_MINUTE = _UxGT("м"); // One character only + + LSTR MSG_FILAMENT_MAN = _UxGT("Управл.филаментом"); + LSTR MSG_MANUAL_LEVELING = _UxGT("Ручное выравнивание"); + LSTR MSG_TRAM_FL = _UxGT("Передний левый"); + LSTR MSG_TRAM_FR = _UxGT("Передний правый"); + LSTR MSG_TRAM_C = _UxGT("Центр"); + LSTR MSG_TRAM_BL = _UxGT("Задний левый"); + LSTR MSG_TRAM_BR = _UxGT("Задний правый"); + LSTR MSG_MANUAL_MESH = _UxGT("Сетка вручную"); + LSTR MSG_AUTO_MESH = _UxGT("Сетка автоматически"); + LSTR MSG_ERR_M428_TOO_FAR = _UxGT("Ошибка: слишком далеко!"); + LSTR MSG_TRAMMING_WIZARD = _UxGT("Помощник выравнив."); + LSTR MSG_PREHEAT_HOTEND = _UxGT("Нагреть сопло"); + LSTR MSG_BED_TRAMMING_MANUAL = _UxGT("Ручное выравнив."); + LSTR MSG_MESH_VIEWER = _UxGT("Просмотр сетки"); + LSTR MSG_MESH_VIEW = _UxGT("Смотреть сетку"); + LSTR MSG_NO_VALID_MESH = _UxGT("Нет годной сетки"); + LSTR MSG_ACTIVATE_MESH = _UxGT("Включить сетку"); + LSTR MSG_MESH_INSET = _UxGT("Отступы сетки"); + LSTR MSG_MESH_MIN_X = _UxGT("Сетка X минимум"); + LSTR MSG_MESH_MAX_X = _UxGT("Сетка X максимум"); + LSTR MSG_MESH_MIN_Y = _UxGT("Сетка Y минимум"); + LSTR MSG_MESH_MAX_Y = _UxGT("Сетка Y максимум"); + LSTR MSG_MESH_AMAX = _UxGT("Максимальная зона"); + LSTR MSG_MESH_CENTER = _UxGT("Центрировать зону"); + LSTR MSG_MESH_CANCEL = _UxGT("Сетка отменена"); + LSTR MSG_UBL_TILT_MESH = _UxGT("Наколнить сетку"); + LSTR MSG_UBL_TILTING_GRID = _UxGT("Величина наклона"); + LSTR MSG_UBL_MESH_TILTED = _UxGT("Сетка наклонена"); + LSTR MSG_UBL_MESH_FILLED = _UxGT("Попущенные точки заполнены"); + LSTR MSG_UBL_MESH_INVALID = _UxGT("Негодная сетка"); + LSTR MSG_UBL_INVALID_SLOT = _UxGT("Сперва выберите слот сетки"); + LSTR MSG_MESH_ACTIVE = _UxGT("Сетка %i активна"); + LSTR MSG_MOVE_50MM = _UxGT("Двигать 50mm"); + LSTR MSG_LIVE_MOVE = _UxGT("Живое перемещение"); + LSTR MSG_CUTTER = _UxGT("Резак"); + LSTR MSG_PID_CYCLE = _UxGT("Циклы PID"); + LSTR MSG_PID_AUTOTUNE_FAILED = _UxGT("Автонастройка PID не удалась!"); + LSTR MSG_BAD_HEATER_ID = _UxGT("Неверный экструдер."); + LSTR MSG_TEMP_TOO_HIGH = _UxGT("Слишком высокая температура."); + LSTR MSG_TIMEOUT = _UxGT("Таймаут."); + LSTR MSG_MPC_MEASURING_AMBIENT = _UxGT("Тест потери тепла"); + LSTR MSG_MPC_HEATING_PAST_200 = _UxGT("Нагрев выше >200C"); + LSTR MSG_MPC_COOLING_TO_AMBIENT = _UxGT("Охлаждение до окружающей"); + LSTR MSG_MPC_AUTOTUNE = _UxGT("Автонастройка MPC"); + LSTR MSG_MPC_EDIT = _UxGT("Изменить * MPC"); + LSTR MSG_MPC_POWER = _UxGT("Мощность нагревателя"); + LSTR MSG_MPC_POWER_E = _UxGT("Мощность *"); + LSTR MSG_MPC_BLOCK_HEAT_CAPACITY = _UxGT("Теплоёмкость"); + LSTR MSG_MPC_BLOCK_HEAT_CAPACITY_E = _UxGT("Теплоёмк. *"); + LSTR MSG_SENSOR_RESPONSIVENESS = _UxGT("Отклик датчика"); + LSTR MSG_SENSOR_RESPONSIVENESS_E = _UxGT("Отклик датч. *"); + LSTR MSG_MPC_AMBIENT_XFER_COEFF = _UxGT("Коэфф.окружения"); + LSTR MSG_MPC_AMBIENT_XFER_COEFF_E = _UxGT("Коэфф.окруж *"); + LSTR MSG_MPC_AMBIENT_XFER_COEFF_FAN = _UxGT("Коэфф.кулера"); + LSTR MSG_MPC_AMBIENT_XFER_COEFF_FAN_E = _UxGT("Коэфф.кулер *"); + LSTR MSG_INPUT_SHAPING = _UxGT("Input Shaping"); + LSTR MSG_SHAPING_ENABLE = _UxGT("Включить шейпинг @"); + LSTR MSG_SHAPING_DISABLE = _UxGT("Выключить шейпинг @"); + LSTR MSG_SHAPING_FREQ = _UxGT("@ частота"); + LSTR MSG_SHAPING_ZETA = _UxGT("@ подавление"); + LSTR MSG_FILAMENT_EN = _UxGT("Филамент *"); + LSTR MSG_SEGMENTS_PER_SECOND = _UxGT("Сегментов/сек"); + LSTR MSG_DRAW_MIN_X = _UxGT("Рисовать мин X"); + LSTR MSG_DRAW_MAX_X = _UxGT("Рисовать макс X"); + LSTR MSG_DRAW_MIN_Y = _UxGT("Рисовать мин Y"); + LSTR MSG_DRAW_MAX_Y = _UxGT("Рисовать макс Y"); + LSTR MSG_MAX_BELT_LEN = _UxGT("Макс.длина ремня"); + LSTR MSG_LINEAR_ADVANCE = _UxGT("Linear Advance"); + LSTR MSG_BRIGHTNESS = _UxGT("Яркость LCD"); + LSTR MSG_SCREEN_TIMEOUT = _UxGT("Таймаут LCD (м)"); + LSTR MSG_BRIGHTNESS_OFF = _UxGT("Выкл.подсветку"); + LSTR MSG_INFO_MACHINENAME = _UxGT("Название машины"); + LSTR MSG_INFO_SIZE = _UxGT("Размер"); + LSTR MSG_INFO_FWVERSION = _UxGT("Версия прошивки"); + LSTR MSG_INFO_BUILD = _UxGT("Дата сборки"); + LSTR MSG_BUTTON_CONFIRM = _UxGT("Подтвердить"); + LSTR MSG_BUTTON_CONTINUE = _UxGT("Продолжить"); + LSTR MSG_BUTTON_INFO = _UxGT("Инфо"); + LSTR MSG_BUTTON_LEVEL = _UxGT("Выровнять"); + LSTR MSG_BUTTON_PAUSE = _UxGT("Пауза"); + LSTR MSG_BUTTON_RESUME = _UxGT("Продолжить"); + LSTR MSG_BUTTON_ADVANCED = _UxGT("Расширанные"); + LSTR MSG_BUTTON_SAVE = _UxGT("Сохранить"); + LSTR MSG_BUTTON_PURGE = _UxGT("Прочистить"); + LSTR MSG_PAUSING = _UxGT("Пауза..."); + LSTR MSG_ADVANCED_PAUSE = _UxGT("Расширенная пауза"); + LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Продолжить печать"); + LSTR MSG_TURN_OFF = _UxGT("Выключить принтер"); + LSTR MSG_END_LOOPS = _UxGT("Завершить петлю"); + LSTR MSG_STOPPING = _UxGT("Остановка..."); + LSTR MSG_REMAINING_TIME = _UxGT("Осталось"); + LSTR MSG_PRINTER_KILLED = _UxGT("Принтер убит!"); + LSTR MSG_FWRETRACT = _UxGT("Откат принтера"); + LSTR MSG_SINGLENOZZLE_WIPE_RETRACT = _UxGT("Вытирание при откате"); + LSTR MSG_PARK_FAILED = _UxGT("Не удалось запарковать"); + LSTR MSG_FILAMENTUNLOAD = _UxGT("Выгрузить филамент"); + LSTR MSG_ATTACH_USB_MEDIA = _UxGT("Монтировать USB"); + LSTR MSG_BLTOUCH_SPEED_MODE = _UxGT("Высокая скорость"); + LSTR MSG_MANUAL_PENUP = _UxGT("Поднять перо"); + LSTR MSG_MANUAL_PENDOWN = _UxGT("Опустить перо"); + LSTR MSG_ZPROBE_SETTINGS = _UxGT("Наторойки зонда"); + LSTR MSG_ZPROBE_MARGIN = _UxGT("Отступы зонда"); + LSTR MSG_Z_FEED_RATE = _UxGT("Скорость Z"); + LSTR MSG_ENABLE_HS_MODE = _UxGT("Включить режим ВС"); + LSTR MSG_TEMP_MALFUNCTION = _UxGT("СБОЙ ТЕМПЕРАТУРЫ"); + LSTR MSG_PLEASE_WAIT = _UxGT("Ожидайте..."); + LSTR MSG_PREHEATING = _UxGT("Нагреваю..."); + LSTR MSG_DELTA_CALIBRATION_IN_PROGRESS = _UxGT("Делаю дельта-калибровку"); + LSTR MSG_RESET_STATS = _UxGT("Сбросить статистику печати?"); + LSTR MSG_FAN_SPEED_FAULT = _UxGT("Сбой скорости кулера"); + LSTR MSG_COLORS_GET = _UxGT("Получить цвет"); + LSTR MSG_COLORS_SELECT = _UxGT("Выбрать цвета"); + LSTR MSG_COLORS_APPLIED = _UxGT("Цвета применены"); + LSTR MSG_COLORS_RED = _UxGT("Красный"); + LSTR MSG_COLORS_GREEN = _UxGT("Зелёный"); + LSTR MSG_COLORS_BLUE = _UxGT("Синий"); + LSTR MSG_COLORS_WHITE = _UxGT("Белый"); + LSTR MSG_UI_LANGUAGE = _UxGT("UI Language"); + LSTR MSG_SOUND_ENABLE = _UxGT("Включить звук"); + LSTR MSG_LOCKSCREEN = _UxGT("Блокировать экран"); + LSTR MSG_LOCKSCREEN_LOCKED = _UxGT("Принтер заблокирован,"); + LSTR MSG_LOCKSCREEN_UNLOCK = _UxGT("Крутить для разблокировки."); + LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Ждите перезагрузки."); + LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Нет носителя."); + LSTR MSG_PLEASE_PREHEAT = _UxGT("Нагрейте сопло."); + LSTR MSG_INFO_PRINT_COUNT_RESET = _UxGT("Сбросить счетчик"); + LSTR MSG_FILAMENT_CHANGE_PURGE_CONTINUE = _UxGT("Прочистить или продолжить?"); + LSTR MSG_RUNOUT_ENABLE = _UxGT("Включить датч.филамента"); + LSTR MSG_RUNOUT_ACTIVE = _UxGT("Датч.филам. активен"); + LSTR MSG_INVERT_EXTRUDER = _UxGT("Инвертировать экструдер"); + LSTR MSG_EXTRUDER_MIN_TEMP = _UxGT("Миню темп. экструдера."); + LSTR MSG_FANCHECK = _UxGT("Пров.тахометра кулера"); + LSTR MSG_MMU2_REMOVE_AND_CLICK = _UxGT("Уберите и кликните..."); + LSTR MSG_REHEATDONE = _UxGT("Нагрето"); + LSTR MSG_XATC = _UxGT("Помощник перекоса X"); + LSTR MSG_XATC_DONE = _UxGT("Перекос Х настроен!"); + LSTR MSG_XATC_UPDATE_Z_OFFSET = _UxGT("Новое смещение Z-зонда "); + LSTR MSG_HOST_SHUTDOWN = _UxGT("Выключить хост"); - LSTR MSG_SERVICE_RESET = _UxGT("Сброс"); - LSTR MSG_SERVICE_IN = _UxGT(" в:"); - LSTR MSG_BACKLASH = _UxGT("Люфт"); - LSTR MSG_BACKLASH_CORRECTION = _UxGT("Исправление"); - LSTR MSG_BACKLASH_SMOOTHING = _UxGT("Сглаживание"); - - LSTR MSG_LEVEL_X_AXIS = _UxGT("Выровнять ось X"); - LSTR MSG_AUTO_CALIBRATE = _UxGT("Автокалибровка"); - LSTR MSG_HEATER_TIMEOUT = _UxGT("Таймаут нагрева"); - LSTR MSG_REHEAT = _UxGT("Возобновить нагрев"); - LSTR MSG_REHEATING = _UxGT("Нагрев..."); + // did not translate as there is no local terms/slang yet + LSTR MSG_FIXED_TIME_MOTION = _UxGT("Fixed-Time Motion"); + LSTR MSG_FTM_MODE = _UxGT("Motion Mode:"); + LSTR MSG_FTM_ZV = _UxGT("ZV"); + LSTR MSG_FTM_ZVD = _UxGT("ZVD"); + LSTR MSG_FTM_EI = _UxGT("EI"); + LSTR MSG_FTM_2HEI = _UxGT("2HEI"); + LSTR MSG_FTM_3HEI = _UxGT("3HEI"); + LSTR MSG_FTM_MZV = _UxGT("MZV"); + //LSTR MSG_FTM_ULENDO_FBS = _UxGT("Ulendo ФBС"); + //LSTR MSG_FTM_DISCTF = _UxGT("DISCTF"); + LSTR MSG_FTM_DYN_MODE = _UxGT("DF Mode:"); + LSTR MSG_FTM_Z_BASED = _UxGT("Z-based"); + LSTR MSG_FTM_MASS_BASED = _UxGT("Mass-based"); + LSTR MSG_FTM_BASE_FREQ_N = _UxGT("@ Base Freq."); + LSTR MSG_FTM_DFREQ_K_N = _UxGT("@ Dyn. Freq."); +} - LSTR MSG_PROBE_WIZARD = _UxGT("Мастер Z-зонда"); - #if LCD_WIDTH > 20 || HAS_DWIN_E3V2 - LSTR MSG_PROBE_WIZARD_PROBING = _UxGT("Зондиров. контр. точки Z"); - LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Движение к точке зондиров."); - #else - LSTR MSG_PROBE_WIZARD_PROBING = _UxGT("Зондир.контр.точки Z"); - LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Движ.к точке зондир."); +namespace LanguageWide_ru { + using namespace LanguageNarrow_ru; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_MEDIA_INIT_FAIL = _UxGT("Сбой инициализации SD"); + LSTR MSG_ADVANCED_SETTINGS = _UxGT("Расширенные настройки"); + LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Переполнение вызова"); + LSTR MSG_SET_HOME_OFFSETS = _UxGT("Установ. смещения дома"); + LSTR MSG_HOME_OFFSET_X = _UxGT("Смещение дома X"); + LSTR MSG_HOME_OFFSET_Y = _UxGT("Смещение дома Y"); + LSTR MSG_HOME_OFFSET_Z = _UxGT("Смещение дома Z"); + LSTR MSG_LAST_VALUE_SP = _UxGT("Последнее значение "); + LSTR MSG_SPINDLE_MENU = _UxGT("Управлен.шпинделем"); + LSTR MSG_LASER_TOGGLE = _UxGT("Переключить лазер"); + LSTR MSG_SPINDLE_TOGGLE = _UxGT("Переключ. шпиндель"); + LSTR MSG_SPINDLE_POWER = _UxGT("Мощность шпинделя"); + LSTR MSG_LASER_POWER = _UxGT("Мощность лазера"); + LSTR MSG_LASER_PULSE_MS = _UxGT("Тестовый импульс мс"); + LSTR MSG_LASER_EVAC_TOGGLE = _UxGT("Переключить обдув"); + LSTR MSG_SPINDLE_EVAC_TOGGLE = _UxGT("Переключить вакуум"); + LSTR MSG_BED_TRAMMING_RAISE = _UxGT("Вверх до срабатыв. зонда"); + LSTR MSG_BED_TRAMMING_IN_RANGE = _UxGT("Углы в норме. Вырав.стола"); + LSTR MSG_MESH_EDITOR = _UxGT("Смещение по Z"); + LSTR MSG_EDITING_STOPPED = _UxGT("Правка сетки окончена"); + LSTR MSG_UBL_BC_INSERT = _UxGT("Разместить шайбу,измерить"); + LSTR MSG_UBL_BC_REMOVE = _UxGT("Убрать и замерить стол"); + LSTR MSG_UBL_SET_TEMP_BED = _UxGT("Температура стола"); + LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("Температура стола"); + LSTR MSG_UBL_SET_TEMP_HOTEND = _UxGT("Температура сопла"); + LSTR MSG_UBL_HOTEND_TEMP_CUSTOM = _UxGT("Температура сопла"); + LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Построить свою сетку"); + LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Правка сетки завершена"); + LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Построить холодную сетку"); + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Проверить сетку $"); + LSTR MSG_UBL_VALIDATE_CUSTOM_MESH = _UxGT("Проверить свою сетку"); + LSTR MSG_UBL_3POINT_MESH_LEVELING = _UxGT("3-х точечное выравнивание"); + LSTR MSG_UBL_OUTPUT_MAP_BACKUP = _UxGT("Сохранить сетку снаружи"); + LSTR MSG_UBL_INFO_UBL = _UxGT("Вывод информации UBL"); + LSTR MSG_UBL_FILLIN_AMOUNT = _UxGT("Кол-во заполнителя"); + LSTR MSG_NEO2_PRESETS = _UxGT("Свет #2 предустановки"); + LSTR MSG_COOLER = _UxGT("Охлаждение лазера"); + LSTR MSG_COOLER_TOGGLE = _UxGT("Переключ. охлажд."); + LSTR MSG_FLOWMETER_SAFETY = _UxGT("Безопасн. потока"); + LSTR MSG_JUNCTION_DEVIATION = _UxGT("Отклонение угла"); + LSTR MSG_FILAMENT_DIAM = _UxGT("Диам. филамента"); + LSTR MSG_FILAMENT_DIAM_E = _UxGT("Диам. филамента *"); + LSTR MSG_RESTORE_DEFAULTS = _UxGT("На базовые параметры"); + LSTR MSG_INIT_EEPROM = _UxGT("Инициализация EEPROM"); + LSTR MSG_CONTROL_RETRACT = _UxGT("Откат, мм"); + LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Откат при смене, мм"); + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("Возврат при смене, мм"); + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAPF = _UxGT("Возврат при смене, V"); + LSTR MSG_AUTORETRACT = _UxGT("Автооткат"); + LSTR MSG_FILAMENT_SWAP_EXTRA = _UxGT("Дополнительная длина"); + LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("Начальная скор."); + LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("Скорость отката"); + LSTR MSG_FILAMENTLOAD_E = _UxGT("Загрузить филамент *"); + LSTR MSG_FILAMENTUNLOAD_E = _UxGT("Выгрузить филамент *"); + LSTR MSG_MOVE_NOZZLE_TO_BED = _UxGT("Двигать сопло к столу"); + LSTR MSG_3POINT_LEVELING = _UxGT("3-точечное выравнивание"); + LSTR MSG_LINEAR_LEVELING = _UxGT("Линейное выравнивание"); + LSTR MSG_BILINEAR_LEVELING = _UxGT("Билинейное выравнивание"); + LSTR MSG_MESH_DONE = _UxGT("Зондирование выполнено"); + LSTR MSG_INFO_RUNAWAY_OFF = _UxGT("Контроль утечки Т: Выкл"); + LSTR MSG_INFO_RUNAWAY_ON = _UxGT("Контроль утечки Т: Вкл"); + LSTR MSG_HOTEND_IDLE_TIMEOUT = _UxGT("Время простоя хотенда"); + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Счётчик печати"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Общее время печати"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Наидольшее задание"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Длина филамента"); + LSTR MSG_RUNOUT_SENSOR = _UxGT("Датчик оконч. филамента"); + LSTR MSG_KILL_MMU2_FIRMWARE = _UxGT("Обновить прошивку MMU!"); + LSTR MSG_MMU2_EJECTING_FILAMENT = _UxGT("Извлечение филамента..."); + LSTR MSG_MIX = _UxGT("Смешивание"); + LSTR MSG_TOGGLE_MIX = _UxGT("Переключить смешивание"); + LSTR MSG_ACTIVE_VTOOL = _UxGT("Активация В-инструм."); + LSTR MSG_START_VTOOL = _UxGT("Начало В-инструмента"); + LSTR MSG_END_VTOOL = _UxGT("Конец В-инструмента"); + LSTR MSG_GRADIENT_ALIAS = _UxGT("Псевдоним В-инструмента"); + LSTR MSG_RESET_VTOOLS = _UxGT("Сброс В-инструментов"); + LSTR MSG_COMMIT_VTOOL = _UxGT("Смешать В-инструменты"); + LSTR MSG_VTOOLS_RESET = _UxGT("В-инструменты сброшены"); + LSTR MSG_BAD_PAGE = _UxGT("Плохой индекс страницы"); + LSTR MSG_BAD_PAGE_SPEED = _UxGT("Плохая скорость страницы"); + LSTR MSG_REMINDER_SAVE_SETTINGS = _UxGT("Не забудь сохранить!"); + LSTR MSG_PROBE_WIZARD_PROBING = _UxGT("Зондиров. контр. точки Z"); + LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Движение к точке зондиров."); + LSTR MSG_FILAMENT_MAN = _UxGT("Управление филаментом"); #endif +} - LSTR MSG_SOUND = _UxGT("Звук"); - - LSTR MSG_TOP_LEFT = _UxGT("Верхний левый"); - LSTR MSG_BOTTOM_LEFT = _UxGT("Нижний левый"); - LSTR MSG_TOP_RIGHT = _UxGT("Верхний правый"); - LSTR MSG_BOTTOM_RIGHT = _UxGT("Нижний правый"); - LSTR MSG_CALIBRATION_COMPLETED = _UxGT("Калибровка успешна"); - LSTR MSG_CALIBRATION_FAILED = _UxGT("Ошибка калибровки"); - - LSTR MSG_DRIVER_BACKWARD = _UxGT(" драйвер наоборот"); - - LSTR MSG_SD_CARD = _UxGT("SD Карта"); - LSTR MSG_USB_DISK = _UxGT("USB Диск"); - - LSTR MSG_SHORT_DAY = _UxGT("д"); // One character only - LSTR MSG_SHORT_HOUR = _UxGT("ч"); // One character only - LSTR MSG_SHORT_MINUTE = _UxGT("м"); // One character only - - LSTR MSG_HIGH = _UxGT("ВЫСОКИЙ"); - LSTR MSG_LOW = _UxGT("НИЗКИЙ"); - LSTR MSG_ERROR = _UxGT("Ошибка"); - LSTR MSG_ENDSTOP_TEST = _UxGT("Тест концевиков"); - LSTR MSG_Z_PROBE = _UxGT("Z-зонд"); - LSTR MSG_HOMING = _UxGT("Парковка"); - LSTR MSG_Z_AFTER_HOME = _UxGT("Z после парковки"); - LSTR MSG_FILAMENT_SET = _UxGT("Настройки филамента"); - #if LCD_WIDTH > 20 || HAS_DWIN_E3V2 - LSTR MSG_FILAMENT_MAN = _UxGT("Управление филаментом"); - #else - LSTR MSG_FILAMENT_MAN = _UxGT("Управл.филаментом"); +namespace LanguageTall_ru { + using namespace LanguageWide_ru; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_3_LINE("Нажмите кнопку", "для продолжения", "печати")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("Ожидайте начала", "смены филамента")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Вставьте филамент", "и нажмите кнопку", "для продолжения")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_3_LINE("Нажмите кнопку", "для нагрева", "сопла...")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Нагрев сопла", "Ждите...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Ожидайте", "выгрузки", "филамента")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Ожидайте", "загрузки", "филамента")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_3_LINE("Ожидайте", "экструзии", "филамента")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_3_LINE("Нажмите кнопку", "для завершения", "прочистки филамента")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_3_LINE("Ожидайте", "возобновления", "печати")); #endif - LSTR MSG_MANUAL_LEVELING = _UxGT("Ручное выравнивание"); - LSTR MSG_TRAM_FL = _UxGT("Передний левый"); - LSTR MSG_TRAM_FR = _UxGT("Передний правый"); - LSTR MSG_TRAM_C = _UxGT("Центр"); - LSTR MSG_TRAM_BL = _UxGT("Задний левый"); - LSTR MSG_TRAM_BR = _UxGT("Задний правый"); - LSTR MSG_MANUAL_MESH = _UxGT("Сетка вручную"); - LSTR MSG_AUTO_MESH = _UxGT("Сетка автоматически"); - LSTR MSG_ERR_M428_TOO_FAR = _UxGT("Ошибка: слишком далеко!"); - LSTR MSG_TRAMMING_WIZARD = _UxGT("Помощник выравнив."); - LSTR MSG_PREHEAT_HOTEND = _UxGT("Нагреть сопло"); - LSTR MSG_BED_TRAMMING_MANUAL = _UxGT("Ручное выравнив."); - LSTR MSG_MESH_VIEWER = _UxGT("Просмотр сетки"); - LSTR MSG_MESH_VIEW = _UxGT("Смотреть сетку"); - LSTR MSG_NO_VALID_MESH = _UxGT("Нет годной сетки"); - LSTR MSG_ACTIVATE_MESH = _UxGT("Включить сетку"); - LSTR MSG_MESH_INSET = _UxGT("Отступы сетки"); - LSTR MSG_MESH_MIN_X = _UxGT("Сетка X минимум"); - LSTR MSG_MESH_MAX_X = _UxGT("Сетка X максимум"); - LSTR MSG_MESH_MIN_Y = _UxGT("Сетка Y минимум"); - LSTR MSG_MESH_MAX_Y = _UxGT("Сетка Y максимум"); - LSTR MSG_MESH_AMAX = _UxGT("Максимальная зона"); - LSTR MSG_MESH_CENTER = _UxGT("Центрировать зону"); - LSTR MSG_MESH_CANCEL = _UxGT("Сетка отменена"); - LSTR MSG_UBL_TILT_MESH = _UxGT("Наколнить сетку"); - LSTR MSG_UBL_TILTING_GRID = _UxGT("Величина наклона"); - LSTR MSG_UBL_MESH_TILTED = _UxGT("Сетка наклонена"); - LSTR MSG_UBL_MESH_FILLED = _UxGT("Попущенные точки заполнены"); - LSTR MSG_UBL_MESH_INVALID = _UxGT("Негодная сетка"); - LSTR MSG_UBL_INVALID_SLOT = _UxGT("Сперва выберите слот сетки"); - LSTR MSG_MESH_ACTIVE = _UxGT("Сетка %i активна"); - LSTR MSG_MOVE_50MM = _UxGT("Двигать 50mm"); - LSTR MSG_LIVE_MOVE = _UxGT("Живое перемещение"); - LSTR MSG_CUTTER = _UxGT("Резак"); - LSTR MSG_PID_CYCLE = _UxGT("Циклы PID"); - LSTR MSG_PID_AUTOTUNE_FAILED = _UxGT("Автонастройка PID не удалась!"); - LSTR MSG_BAD_HEATER_ID = _UxGT("Неверный экструдер."); - LSTR MSG_TEMP_TOO_HIGH = _UxGT("Слишком высокая температура."); - LSTR MSG_TIMEOUT = _UxGT("Таймаут."); - LSTR MSG_MPC_MEASURING_AMBIENT = _UxGT("Тест потери тепла"); - LSTR MSG_MPC_HEATING_PAST_200 = _UxGT("Нагрев выше >200C"); - LSTR MSG_MPC_COOLING_TO_AMBIENT = _UxGT("Охлаждение до окружающей"); - LSTR MSG_MPC_AUTOTUNE = _UxGT("Автонастройка MPC"); - LSTR MSG_MPC_EDIT = _UxGT("Изменить * MPC"); - LSTR MSG_MPC_POWER = _UxGT("Мощность нагревателя"); - LSTR MSG_MPC_POWER_E = _UxGT("Мощность *"); - LSTR MSG_MPC_BLOCK_HEAT_CAPACITY = _UxGT("Теплоёмкость"); - LSTR MSG_MPC_BLOCK_HEAT_CAPACITY_E = _UxGT("Теплоёмк. *"); - LSTR MSG_SENSOR_RESPONSIVENESS = _UxGT("Отклик датчика"); - LSTR MSG_SENSOR_RESPONSIVENESS_E = _UxGT("Отклик датч. *"); - LSTR MSG_MPC_AMBIENT_XFER_COEFF = _UxGT("Коэфф.окружения"); - LSTR MSG_MPC_AMBIENT_XFER_COEFF_E = _UxGT("Коэфф.окруж *"); - LSTR MSG_MPC_AMBIENT_XFER_COEFF_FAN = _UxGT("Коэфф.кулера"); - LSTR MSG_MPC_AMBIENT_XFER_COEFF_FAN_E = _UxGT("Коэфф.кулер *"); - LSTR MSG_INPUT_SHAPING = _UxGT("Input Shaping"); - LSTR MSG_SHAPING_ENABLE = _UxGT("Включить шейпинг @"); - LSTR MSG_SHAPING_DISABLE = _UxGT("Выключить шейпинг @"); - LSTR MSG_SHAPING_FREQ = _UxGT("@ частота"); - LSTR MSG_SHAPING_ZETA = _UxGT("@ подавление"); - LSTR MSG_FILAMENT_EN = _UxGT("Филамент *"); - LSTR MSG_SEGMENTS_PER_SECOND = _UxGT("Сегментов/сек"); - LSTR MSG_DRAW_MIN_X = _UxGT("Рисовать мин X"); - LSTR MSG_DRAW_MAX_X = _UxGT("Рисовать макс X"); - LSTR MSG_DRAW_MIN_Y = _UxGT("Рисовать мин Y"); - LSTR MSG_DRAW_MAX_Y = _UxGT("Рисовать макс Y"); - LSTR MSG_MAX_BELT_LEN = _UxGT("Макс.длина ремня"); - LSTR MSG_LINEAR_ADVANCE = _UxGT("Linear Advance"); - LSTR MSG_BRIGHTNESS = _UxGT("Яркость LCD"); - LSTR MSG_SCREEN_TIMEOUT = _UxGT("Таймаут LCD (м)"); - LSTR MSG_BRIGHTNESS_OFF = _UxGT("Выкл.подсветку"); - LSTR MSG_INFO_MACHINENAME = _UxGT("Название машины"); - LSTR MSG_INFO_SIZE = _UxGT("Размер"); - LSTR MSG_INFO_FWVERSION = _UxGT("Версия прошивки"); - LSTR MSG_INFO_BUILD = _UxGT("Дата сборки"); - LSTR MSG_BUTTON_CONFIRM = _UxGT("Подтвердить"); - LSTR MSG_BUTTON_CONTINUE = _UxGT("Продолжить"); - LSTR MSG_BUTTON_INFO = _UxGT("Инфо"); - LSTR MSG_BUTTON_LEVEL = _UxGT("Выровнять"); - LSTR MSG_BUTTON_PAUSE = _UxGT("Пауза"); - LSTR MSG_BUTTON_RESUME = _UxGT("Продолжить"); - LSTR MSG_BUTTON_ADVANCED = _UxGT("Расширанные"); - LSTR MSG_BUTTON_SAVE = _UxGT("Сохранить"); - LSTR MSG_BUTTON_PURGE = _UxGT("Прочистить"); - LSTR MSG_PAUSING = _UxGT("Пауза..."); - LSTR MSG_ADVANCED_PAUSE = _UxGT("Расширенная пауза"); - LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Продолжить печать"); - LSTR MSG_TURN_OFF = _UxGT("Выключить принтер"); - LSTR MSG_END_LOOPS = _UxGT("Завершить петлю"); - LSTR MSG_STOPPING = _UxGT("Остановка..."); - LSTR MSG_REMAINING_TIME = _UxGT("Осталось"); - LSTR MSG_PRINTER_KILLED = _UxGT("Принтер убит!"); - LSTR MSG_FWRETRACT = _UxGT("Откат принтера"); - LSTR MSG_SINGLENOZZLE_WIPE_RETRACT = _UxGT("Вытирание при откате"); - LSTR MSG_PARK_FAILED = _UxGT("Не удалось запарковать"); - LSTR MSG_FILAMENTUNLOAD = _UxGT("Выгрузить филамент"); - LSTR MSG_ATTACH_USB_MEDIA = _UxGT("Монтировать USB"); - LSTR MSG_BLTOUCH_SPEED_MODE = _UxGT("Высокая скорость"); - LSTR MSG_MANUAL_PENUP = _UxGT("Поднять перо"); - LSTR MSG_MANUAL_PENDOWN = _UxGT("Опустить перо"); - LSTR MSG_ZPROBE_SETTINGS = _UxGT("Наторойки зонда"); - LSTR MSG_ZPROBE_MARGIN = _UxGT("Отступы зонда"); - LSTR MSG_Z_FEED_RATE = _UxGT("Скорость Z"); - LSTR MSG_ENABLE_HS_MODE = _UxGT("Включить режим ВС"); - LSTR MSG_TEMP_MALFUNCTION = _UxGT("СБОЙ ТЕМПЕРАТУРЫ"); - LSTR MSG_PLEASE_WAIT = _UxGT("Ожидайте..."); - LSTR MSG_PREHEATING = _UxGT("Нагреваю..."); - LSTR MSG_DELTA_CALIBRATION_IN_PROGRESS = _UxGT("Делаю дельта-калибровку"); - LSTR MSG_RESET_STATS = _UxGT("Сбросить статистику печати?"); - LSTR MSG_FAN_SPEED_FAULT = _UxGT("Сбой скорости кулера"); - LSTR MSG_COLORS_GET = _UxGT("Получить цвет"); - LSTR MSG_COLORS_SELECT = _UxGT("Выбрать цвета"); - LSTR MSG_COLORS_APPLIED = _UxGT("Цвета применены"); - LSTR MSG_COLORS_RED = _UxGT("Красный"); - LSTR MSG_COLORS_GREEN = _UxGT("Зелёный"); - LSTR MSG_COLORS_BLUE = _UxGT("Синий"); - LSTR MSG_COLORS_WHITE = _UxGT("Белый"); - LSTR MSG_UI_LANGUAGE = _UxGT("UI Language"); - LSTR MSG_SOUND_ENABLE = _UxGT("Включить звук"); - LSTR MSG_LOCKSCREEN = _UxGT("Блокировать экран"); - LSTR MSG_LOCKSCREEN_LOCKED = _UxGT("Принтер заблокирован,"); - LSTR MSG_LOCKSCREEN_UNLOCK = _UxGT("Крутить для разблокировки."); - LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Ждите перезагрузки."); - LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Нет носителя."); - LSTR MSG_PLEASE_PREHEAT = _UxGT("Нагрейте сопло."); - LSTR MSG_INFO_PRINT_COUNT_RESET = _UxGT("Сбросить счетчик"); - LSTR MSG_FILAMENT_CHANGE_PURGE_CONTINUE = _UxGT("Прочистить или продолжить?"); - LSTR MSG_RUNOUT_ENABLE = _UxGT("Включить датч.филамента"); - LSTR MSG_RUNOUT_ACTIVE = _UxGT("Датч.филам. активен"); - LSTR MSG_INVERT_EXTRUDER = _UxGT("Инвертировать экструдер"); - LSTR MSG_EXTRUDER_MIN_TEMP = _UxGT("Миню темп. экструдера."); - LSTR MSG_FANCHECK = _UxGT("Пров.тахометра кулера"); - LSTR MSG_MMU2_REMOVE_AND_CLICK = _UxGT("Уберите и кликните..."); - LSTR MSG_REHEATDONE = _UxGT("Нагрето"); - LSTR MSG_XATC = _UxGT("Помощник перекоса X"); - LSTR MSG_XATC_DONE = _UxGT("Перекос Х настроен!"); - LSTR MSG_XATC_UPDATE_Z_OFFSET = _UxGT("Новое смещение Z-зонда "); - LSTR MSG_HOST_SHUTDOWN = _UxGT("Выключить хост"); +} - // did not translate as there is no local terms/slang yet - LSTR MSG_FIXED_TIME_MOTION = _UxGT("Fixed-Time Motion"); - LSTR MSG_FTM_MODE = _UxGT("Motion Mode:"); - LSTR MSG_FTM_ZV = _UxGT("ZV"); - LSTR MSG_FTM_ZVD = _UxGT("ZVD"); - LSTR MSG_FTM_EI = _UxGT("EI"); - LSTR MSG_FTM_2HEI = _UxGT("2HEI"); - LSTR MSG_FTM_3HEI = _UxGT("3HEI"); - LSTR MSG_FTM_MZV = _UxGT("MZV"); - //LSTR MSG_FTM_ULENDO_FBS = _UxGT("Ulendo ФBС"); - //LSTR MSG_FTM_DISCTF = _UxGT("DISCTF"); - LSTR MSG_FTM_DYN_MODE = _UxGT("DF Mode:"); - LSTR MSG_FTM_Z_BASED = _UxGT("Z-based"); - LSTR MSG_FTM_MASS_BASED = _UxGT("Mass-based"); - LSTR MSG_FTM_BASE_FREQ_N = _UxGT("@ Base Freq."); - LSTR MSG_FTM_DFREQ_K_N = _UxGT("@ Dyn. Freq."); +namespace Language_ru { + using namespace LanguageTall_ru; } diff --git a/Marlin/src/lcd/language/language_sk.h b/Marlin/src/lcd/language/language_sk.h index 7dc1c5357e39..290b0cdcde29 100644 --- a/Marlin/src/lcd/language/language_sk.h +++ b/Marlin/src/lcd/language/language_sk.h @@ -41,7 +41,7 @@ */ #define DISPLAY_CHARSET_ISO10646_SK -namespace Language_sk { +namespace LanguageNarrow_sk { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -107,30 +107,23 @@ namespace Language_sk { LSTR MSG_TRAMMING_WIZARD = _UxGT("Spriev. vyrovn."); LSTR MSG_SELECT_ORIGIN = _UxGT("Vyberte začiatok"); LSTR MSG_LAST_VALUE_SP = _UxGT("Posl. hodnota "); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Zahriať ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Zahriať ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Zahriať ") PREHEAT_1_LABEL _UxGT(" hotend"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Zahriať ") PREHEAT_1_LABEL _UxGT(" hotend ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Zahriať ") PREHEAT_1_LABEL _UxGT(" všetko"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Zahriať ") PREHEAT_1_LABEL _UxGT(" podlož"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Zahriať ") PREHEAT_1_LABEL _UxGT(" nast."); - #ifdef PREHEAT_2_LABEL - LSTR MSG_PREHEAT_2 = _UxGT("Zahriať ") PREHEAT_2_LABEL; - LSTR MSG_PREHEAT_2_SETTINGS = _UxGT("Zahriať ") PREHEAT_2_LABEL _UxGT(" nast."); - #endif - #ifdef PREHEAT_3_LABEL - LSTR MSG_PREHEAT_3 = _UxGT("Zahriať ") PREHEAT_3_LABEL; - LSTR MSG_PREHEAT_3_SETTINGS = _UxGT("Zahriať ") PREHEAT_3_LABEL _UxGT(" nast."); - #endif - LSTR MSG_PREHEAT_M = _UxGT("Zahriať $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Zahriať $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Zahriať $ hotend"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Zahriať $ hotend ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Zahriať $ všetko"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Zahriať $ podlož"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Zahriať $ nast."); - #endif + + LSTR MSG_PREHEAT_1 = _UxGT("Zahriať ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Zahriať ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Zahriať ") PREHEAT_1_LABEL _UxGT(" hotend"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Zahriať ") PREHEAT_1_LABEL _UxGT(" hotend ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Zahriať ") PREHEAT_1_LABEL _UxGT(" všetko"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Zahriať ") PREHEAT_1_LABEL _UxGT(" podlož"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Zahriať ") PREHEAT_1_LABEL _UxGT(" nast."); + + LSTR MSG_PREHEAT_M = _UxGT("Zahriať $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Zahriať $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Zahriať $ hotend"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Zahriať $ hotend ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Zahriať $ všetko"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Zahriať $ podlož"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Zahriať $ nast."); + LSTR MSG_PREHEAT_HOTEND = _UxGT("Zahriať hotend"); LSTR MSG_PREHEAT_CUSTOM = _UxGT("Vlastná teplota"); LSTR MSG_COOLDOWN = _UxGT("Schladiť"); @@ -494,25 +487,14 @@ namespace Language_sk { LSTR MSG_RESUME_PRINT = _UxGT("Obnoviť tlač"); LSTR MSG_STOP_PRINT = _UxGT("Zastaviť tlač"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Obnova po výp. nap."); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_HOST_START_PRINT = _UxGT("Spustiť z hosta"); - LSTR MSG_PRINTING_OBJECT = _UxGT("Tlačím objekt"); - LSTR MSG_CANCEL_OBJECT = _UxGT("Zrušiť objekt"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Zrušiť objekt {"); - LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Pokračovať v úlohe"); - LSTR MSG_MEDIA_MENU = _UxGT("Vytlačiť z karty"); - LSTR MSG_TURN_OFF = _UxGT("Vypnite tlačiareň"); - LSTR MSG_END_LOOPS = _UxGT("Ukončiť opak. sluč."); - #else - LSTR MSG_HOST_START_PRINT = _UxGT("Spustiť z hosta"); - LSTR MSG_PRINTING_OBJECT = _UxGT("Tlačím obj."); - LSTR MSG_CANCEL_OBJECT = _UxGT("Zrušiť obj."); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Zrušiť obj. {"); - LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Pokrač. v úlohe"); - LSTR MSG_MEDIA_MENU = _UxGT("Tlač z karty"); - LSTR MSG_TURN_OFF = _UxGT("Vypnit. teraz"); - LSTR MSG_END_LOOPS = _UxGT("Ukončiť sluč."); - #endif + LSTR MSG_HOST_START_PRINT = _UxGT("Spustiť z hosta"); + LSTR MSG_PRINTING_OBJECT = _UxGT("Tlačím obj."); + LSTR MSG_CANCEL_OBJECT = _UxGT("Zrušiť obj."); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Zrušiť obj. {"); + LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Pokrač. v úlohe"); + LSTR MSG_MEDIA_MENU = _UxGT("Tlač z karty"); + LSTR MSG_TURN_OFF = _UxGT("Vypnit. teraz"); + LSTR MSG_END_LOOPS = _UxGT("Ukončiť sluč."); LSTR MSG_NO_MEDIA = _UxGT("Žiadna karta"); LSTR MSG_DWELL = _UxGT("Spím..."); LSTR MSG_USERWAIT = _UxGT("Pokrač. kliknutím..."); @@ -562,12 +544,9 @@ namespace Language_sk { LSTR MSG_FILAMENTUNLOAD = _UxGT("Vysunúť filament"); LSTR MSG_FILAMENTUNLOAD_E = _UxGT("Vysunúť filament *"); LSTR MSG_FILAMENTUNLOAD_ALL = _UxGT("Vysunúť všetko"); - #if ENABLED(MULTI_VOLUME) - LSTR MSG_ATTACH_MEDIA = _UxGT("Načítať SD kartu"); - LSTR MSG_ATTACH_USB_MEDIA = _UxGT("Načítať USB disk"); - #else - LSTR MSG_ATTACH_MEDIA = _UxGT("Načítať kartu"); - #endif + LSTR MSG_ATTACH_MEDIA = _UxGT("Načítať kartu"); + LSTR MSG_ATTACH_SD_MEDIA = _UxGT("Načítať SD kartu"); + LSTR MSG_ATTACH_USB_MEDIA = _UxGT("Načítať USB disk"); LSTR MSG_CHANGE_MEDIA = _UxGT("Vymeniť kartu"); LSTR MSG_RELEASE_MEDIA = _UxGT("Odpojiť kartu"); LSTR MSG_ZPROBE_OUT = _UxGT("Sonda Z mimo podl."); @@ -680,22 +659,12 @@ namespace Language_sk { LSTR MSG_LOCKSCREEN_UNLOCK = _UxGT("potiahnite pre odomknutie."); LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Prosím čakajte do reštartu."); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Nie je vložená karta."); - LSTR MSG_PLEASE_PREHEAT = _UxGT("Prosím zahrejte hotend."); - LSTR MSG_INFO_PRINT_COUNT_RESET = _UxGT("Vynulovať počítadlo"); - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Počet tlačí"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Celkový čas"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Najdlhšia tlač"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Celkom vytlačené"); - #else - LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Žiadna karta"); - LSTR MSG_PLEASE_PREHEAT = _UxGT("Prosím zahrejte"); - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Tlače"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Čas"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Najdlhšia"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Vytlačené"); - #endif + LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Žiadna karta"); + LSTR MSG_PLEASE_PREHEAT = _UxGT("Prosím zahrejte"); + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Tlače"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Čas"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Najdlhšia"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Vytlačené"); LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Dokončené"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Teplota min"); @@ -785,34 +754,20 @@ namespace Language_sk { LSTR MSG_PASSWORD_REMOVED = _UxGT("Heslo odstránené"); // - // Filament Change screens show up to 3 lines on a 4-line display - // ...or up to 2 lines on a 3-line display + // Filament Change screens show up to 2 lines on a 3-line display // - #if LCD_HEIGHT >= 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Stlačte tlačidlo", "pre obnovu tlače")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkovanie...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Čakajte prosím", "na spustenie", "výmeny filamentu")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Vložte filament", "a stlačte tlačidlo", "pre pokračovanie")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Stlačte tlačidlo", "pre ohrev trysky")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Ohrev trysky", "Čakajte prosím...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Čakajte prosím", "na vysunutie", "filamentu")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Čakajte prosím", "na zavedenie", "filamentu")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_3_LINE("Čakajte prosím", "na vytlačenie", "filamentu")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_3_LINE("Stlačte tlačidlo", "pre dokončenie", "vytláčania filam.")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Čakajte prosím na", "obnovenie tlače...")); - #else - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Kliknite pre pokr.")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkovanie...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Čakajte prosím...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Vložte a kliknite")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Kliknite pre ohrev")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Ohrev...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Vysúvanie...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Zavádzanie...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Vytlačovanie...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Klik. pre dokonč.")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Pokračovanie...")); - #endif + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Kliknite pre pokr.")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkovanie...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Čakajte prosím...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Vložte a kliknite")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Kliknite pre ohrev")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Ohrev...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Vysúvanie...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Zavádzanie...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Vytlačovanie...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Klik. pre dokonč.")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Pokračovanie...")); + LSTR MSG_TMC_DRIVERS = _UxGT("Ovládače TMC"); LSTR MSG_TMC_CURRENT = _UxGT("Prúd ovládača"); LSTR MSG_TMC_HYBRID_THRS = _UxGT("Hybridný prah"); @@ -827,11 +782,8 @@ namespace Language_sk { LSTR MSG_LEVEL_X_AXIS = _UxGT("Vyrovnať os X"); LSTR MSG_AUTO_CALIBRATE = _UxGT("Auto-kalibrovať"); - #if ENABLED(TOUCH_UI_FTDI_EVE) - LSTR MSG_HEATER_TIMEOUT = _UxGT("Vypršal čas ohrevu, znížená teplota. Stlačte OK pre ohrev a ešte raz pre obnovu."); - #else - LSTR MSG_HEATER_TIMEOUT = _UxGT("Vypršal čas ohrevu"); - #endif + LSTR MSG_FTDI_HEATER_TIMEOUT = _UxGT("Vypršal čas ohrevu, znížená teplota. Stlačte OK pre ohrev a ešte raz pre obnovu."); + LSTR MSG_HEATER_TIMEOUT = _UxGT("Vypršal čas ohrevu"); LSTR MSG_REHEAT = _UxGT("Zohriať"); LSTR MSG_REHEATING = _UxGT("Zohrievanie..."); LSTR MSG_REHEATDONE = _UxGT("Zohrievanie dokonč."); @@ -860,3 +812,46 @@ namespace Language_sk { LSTR MSG_HOST_SHUTDOWN = _UxGT("Vypnúť hosta"); } + +namespace LanguageWide_sk { + using namespace LanguageNarrow_sk; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_HOST_START_PRINT = _UxGT("Spustiť z hosta"); + LSTR MSG_PRINTING_OBJECT = _UxGT("Tlačím objekt"); + LSTR MSG_CANCEL_OBJECT = _UxGT("Zrušiť objekt"); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Zrušiť objekt {"); + LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Pokračovať v úlohe"); + LSTR MSG_MEDIA_MENU = _UxGT("Vytlačiť z karty"); + LSTR MSG_TURN_OFF = _UxGT("Vypnite tlačiareň"); + LSTR MSG_END_LOOPS = _UxGT("Ukončiť opak. sluč."); + LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Nie je vložená karta."); + LSTR MSG_PLEASE_PREHEAT = _UxGT("Prosím zahrejte hotend."); + LSTR MSG_INFO_PRINT_COUNT_RESET = _UxGT("Vynulovať počítadlo"); + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Počet tlačí"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Celkový čas"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Najdlhšia tlač"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Celkom vytlačené"); + #endif +} + +namespace LanguageTall_sk { + using namespace LanguageWide_sk; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Stlačte tlačidlo", "pre obnovu tlače")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkovanie...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Čakajte prosím", "na spustenie", "výmeny filamentu")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Vložte filament", "a stlačte tlačidlo", "pre pokračovanie")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Stlačte tlačidlo", "pre ohrev trysky")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Ohrev trysky", "Čakajte prosím...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_3_LINE("Čakajte prosím", "na vysunutie", "filamentu")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_3_LINE("Čakajte prosím", "na zavedenie", "filamentu")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_3_LINE("Čakajte prosím", "na vytlačenie", "filamentu")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_3_LINE("Stlačte tlačidlo", "pre dokončenie", "vytláčania filam.")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Čakajte prosím na", "obnovenie tlače...")); + #endif +} + +namespace Language_sk { + using namespace LanguageTall_sk; +} diff --git a/Marlin/src/lcd/language/language_sv.h b/Marlin/src/lcd/language/language_sv.h index d264c1e6e289..ea3c1c61dd21 100644 --- a/Marlin/src/lcd/language/language_sv.h +++ b/Marlin/src/lcd/language/language_sv.h @@ -30,7 +30,7 @@ #define DISPLAY_CHARSET_ISO10646_1 -namespace Language_sv { +namespace LanguageNarrow_sv { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -77,23 +77,21 @@ namespace Language_sv { LSTR MSG_SELECT_ORIGIN = _UxGT("Välj Origo"); LSTR MSG_LAST_VALUE_SP = _UxGT("Senaste värde "); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Förvärmning ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Förvärmning ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Förvärmning ") PREHEAT_1_LABEL _UxGT(" Stoppa"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Förvärmning ") PREHEAT_1_LABEL _UxGT(" Stoppa ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Förvärmning ") PREHEAT_1_LABEL _UxGT(" Alla"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Förvärmning ") PREHEAT_1_LABEL _UxGT(" Bädd"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Förvärmning ") PREHEAT_1_LABEL _UxGT(" Konf"); + LSTR MSG_PREHEAT_1 = _UxGT("Förvärmning ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Förvärmning ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Förvärmning ") PREHEAT_1_LABEL _UxGT(" Stoppa"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Förvärmning ") PREHEAT_1_LABEL _UxGT(" Stoppa ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Förvärmning ") PREHEAT_1_LABEL _UxGT(" Alla"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Förvärmning ") PREHEAT_1_LABEL _UxGT(" Bädd"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Förvärmning ") PREHEAT_1_LABEL _UxGT(" Konf"); - LSTR MSG_PREHEAT_M = _UxGT("Förvärmning $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Förvärmning $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Förvärmning $ Stoppa"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Förvärmning $ Stoppa ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Förvärmning $ Alla"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Förvärmning $ Bädd"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Förvärmning $ Donf"); - #endif + LSTR MSG_PREHEAT_M = _UxGT("Förvärmning $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Förvärmning $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Förvärmning $ Stoppa"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Förvärmning $ Stoppa ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Förvärmning $ Alla"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Förvärmning $ Bädd"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Förvärmning $ Donf"); LSTR MSG_PREHEAT_CUSTOM = _UxGT("Förvärmning Anpassad"); LSTR MSG_COOLDOWN = _UxGT("Nedkylning"); @@ -513,19 +511,11 @@ namespace Language_sv { LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Ljus ljusstyrka"); LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("INKORREKT SKRIVARE"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Utskriftsantal"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Färdiga"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Total Utskriftstid"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Längsta Jobbtid"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruderade Totalt"); - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Utskrift"); - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Färdig"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Längsta"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruderad"); - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Utskrift"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Färdig"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Total"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Längsta"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruderad"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Min Temp"); LSTR MSG_INFO_MAX_TEMP = _UxGT("Max Temp"); @@ -608,34 +598,20 @@ namespace Language_sv { LSTR MSG_PASSWORD_REMOVED = _UxGT("Lösenord Bort taget"); // - // Filament Change screens show up to 3 lines on a 4-line display - // ...or up to 2 lines on a 3-line display + // Filament Change screens show up to 2 lines on a 3-line display // - #if LCD_HEIGHT >= 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Tryck på knappen", "för att fortsätta utskrift")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkera...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Vänta på", "trådbyte", "att börja")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Sätt in tråd", "och tryck på knappen", "för att fortsätta")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Tryck på knappen", "för att värma munstycke")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Munstycke värms", "Var snäll och vänta...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Väntar på", "trådlossning")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Väntar på", "trådladdning")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Väntar på", "tråd utrensning")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Klicka för att slutföra", "tråd utrensning")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Väntar på utskrift", "att återstarta...")); - #else - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Klick för att fortsätta")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkera...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Vänta...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Sätt in och klicka")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Klicka för att värma")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Värmer...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Lossar...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Laddar...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Rensar...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Klicka för att slutföra")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Återgår...")); - #endif + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Klick för att fortsätta")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Parkera...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Vänta...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Sätt in och klicka")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Klicka för att värma")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Värmer...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Lossar...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Laddar...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Rensar...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Klicka för att slutföra")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Återgår...")); + LSTR MSG_TMC_DRIVERS = _UxGT("TMC Drivers"); LSTR MSG_TMC_CURRENT = _UxGT("Driver Ström"); LSTR MSG_TMC_HYBRID_THRS = _UxGT("Hybrid Tröskelvärde"); @@ -650,11 +626,8 @@ namespace Language_sv { LSTR MSG_LEVEL_X_AXIS = _UxGT("Nivå X Axel"); LSTR MSG_AUTO_CALIBRATE = _UxGT("Auto Kalibrera"); - #if ENABLED(TOUCH_UI_FTDI_EVE) - LSTR MSG_HEATER_TIMEOUT = _UxGT("Overksam tidsgräns, temperatur minskning. Tryck ok för att återvärma och igen för att fortsätta."); - #else - LSTR MSG_HEATER_TIMEOUT = _UxGT("Värmare Tidsgräns"); - #endif + LSTR MSG_FTDI_HEATER_TIMEOUT = _UxGT("Overksam tidsgräns, temperatur minskning. Tryck ok för att återvärma och igen för att fortsätta."); + LSTR MSG_HEATER_TIMEOUT = _UxGT("Värmare Tidsgräns"); LSTR MSG_REHEAT = _UxGT("Återvärm"); LSTR MSG_REHEATING = _UxGT("Återvärmning..."); @@ -671,3 +644,35 @@ namespace Language_sv { LSTR MSG_CALIBRATION_COMPLETED = _UxGT("Kalibrering Färdig"); LSTR MSG_CALIBRATION_FAILED = _UxGT("Kalibrering Misslyckad"); } + +namespace LanguageWide_sv { + using namespace LanguageNarrow_sv; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Utskriftsantal"); + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Färdiga"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Total Utskriftstid"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Längsta Jobbtid"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extruderade Totalt"); + #endif +} + +namespace LanguageTall_sv { + using namespace LanguageWide_sv; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Tryck på knappen", "för att fortsätta utskrift")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Vänta på", "trådbyte", "att börja")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Sätt in tråd", "och tryck på knappen", "för att fortsätta")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Tryck på knappen", "för att värma munstycke")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Munstycke värms", "Var snäll och vänta...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Väntar på", "trådlossning")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Väntar på", "trådladdning")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Väntar på", "tråd utrensning")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Klicka för att slutföra", "tråd utrensning")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Väntar på utskrift", "att återstarta...")); + #endif +} + +namespace Language_sv { + using namespace LanguageTall_sv; +} diff --git a/Marlin/src/lcd/language/language_tr.h b/Marlin/src/lcd/language/language_tr.h index 667db7b77a42..a6a75a2acef6 100644 --- a/Marlin/src/lcd/language/language_tr.h +++ b/Marlin/src/lcd/language/language_tr.h @@ -30,7 +30,7 @@ #define DISPLAY_CHARSET_ISO10646_TR -namespace Language_tr { +namespace LanguageNarrow_tr { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -95,30 +95,23 @@ namespace Language_tr { LSTR MSG_TRAMMING_WIZARD = _UxGT("Hizalama Sihirbazı"); LSTR MSG_SELECT_ORIGIN = _UxGT("Başlangıç Seç"); LSTR MSG_LAST_VALUE_SP = _UxGT("Son değer "); - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Ön Isınma ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Ön Isınma ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Ön Isınma ") PREHEAT_1_LABEL _UxGT(" Nozul"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Ön Isınma ") PREHEAT_1_LABEL _UxGT(" Nozul ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Ön Isınma ") PREHEAT_1_LABEL _UxGT(" Tüm"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Ön Isınma ") PREHEAT_1_LABEL _UxGT(" Tabla"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Ön Isınma ") PREHEAT_1_LABEL _UxGT(" Ayarlar"); - #ifdef PREHEAT_2_LABEL - LSTR MSG_PREHEAT_2 = _UxGT("Ön Isınma ") PREHEAT_2_LABEL; - LSTR MSG_PREHEAT_2_SETTINGS = _UxGT("Ön Isınma ") PREHEAT_2_LABEL _UxGT(" Conf"); - #endif - #ifdef PREHEAT_3_LABEL - LSTR MSG_PREHEAT_3 = _UxGT("Ön Isınma ") PREHEAT_3_LABEL; - LSTR MSG_PREHEAT_3_SETTINGS = _UxGT("Ön Isınma ") PREHEAT_3_LABEL _UxGT(" Conf"); - #endif - LSTR MSG_PREHEAT_M = _UxGT("Ön Isınma $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Ön Isınma $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Ön Isınma $ Nozul"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Ön Isınma $ Nozul ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Ön Isınma $ Tüm"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Ön Isınma $ Tabla"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Ön Isınma $ Ayarlar"); - #endif + + LSTR MSG_PREHEAT_1 = _UxGT("Ön Isınma ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Ön Isınma ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Ön Isınma ") PREHEAT_1_LABEL _UxGT(" Nozul"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Ön Isınma ") PREHEAT_1_LABEL _UxGT(" Nozul ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Ön Isınma ") PREHEAT_1_LABEL _UxGT(" Tüm"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Ön Isınma ") PREHEAT_1_LABEL _UxGT(" Tabla"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Ön Isınma ") PREHEAT_1_LABEL _UxGT(" Ayarlar"); + + LSTR MSG_PREHEAT_M = _UxGT("Ön Isınma $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Ön Isınma $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Ön Isınma $ Nozul"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Ön Isınma $ Nozul ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Ön Isınma $ Tüm"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Ön Isınma $ Tabla"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Ön Isınma $ Ayarlar"); + LSTR MSG_PREHEAT_CUSTOM = _UxGT("Özel Ön Isınma"); LSTR MSG_COOLDOWN = _UxGT("Soğut/(Durdur)"); @@ -473,25 +466,16 @@ namespace Language_tr { LSTR MSG_RESUME_PRINT = _UxGT("Baskıyı Sürdür"); LSTR MSG_STOP_PRINT = _UxGT("Baskıyı Durdur"); LSTR MSG_OUTAGE_RECOVERY = _UxGT("Kesinti Kurtarma"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_HOST_START_PRINT = _UxGT("Host Baskıyı başlat"); - LSTR MSG_PRINTING_OBJECT = _UxGT("Yazdırma Nesnesi"); - LSTR MSG_CANCEL_OBJECT = _UxGT("Nesneyi İptal Et"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Nesneyi İptal Et {"); - LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Yazdırmaya Devam Et"); - LSTR MSG_MEDIA_MENU = _UxGT("SD Karttan Yazdır"); - LSTR MSG_TURN_OFF = _UxGT("Yazıcıyı kapat"); - LSTR MSG_END_LOOPS = _UxGT("Tekrr Döngüler Bitir"); - #else - LSTR MSG_HOST_START_PRINT = _UxGT("Host Başlatma"); - LSTR MSG_PRINTING_OBJECT = _UxGT("Nesneyi Yazdır"); - LSTR MSG_CANCEL_OBJECT = _UxGT("Nesneyi İptal Et"); - LSTR MSG_CANCEL_OBJECT_N = _UxGT("Nesneyi İptal Et {"); - LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("İşe Devam Et"); - LSTR MSG_MEDIA_MENU = MEDIA_TYPE_EN _UxGT(" Yazdır"); - LSTR MSG_TURN_OFF = _UxGT("Şimdi kapat"); - LSTR MSG_END_LOOPS = _UxGT("Son Döngüler"); - #endif + + LSTR MSG_HOST_START_PRINT = _UxGT("Host Başlatma"); + LSTR MSG_PRINTING_OBJECT = _UxGT("Nesneyi Yazdır"); + LSTR MSG_CANCEL_OBJECT = _UxGT("Nesneyi İptal Et"); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Nesneyi İptal Et {"); + LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("İşe Devam Et"); + LSTR MSG_MEDIA_MENU = MEDIA_TYPE_EN _UxGT(" Yazdır"); + LSTR MSG_TURN_OFF = _UxGT("Şimdi kapat"); + LSTR MSG_END_LOOPS = _UxGT("Son Döngüler"); + LSTR MSG_NO_MEDIA = _UxGT("SD Kart Yok!"); LSTR MSG_DWELL = _UxGT("Uyku..."); LSTR MSG_USERWAIT = _UxGT("Devam için tıkla..."); @@ -652,22 +636,12 @@ namespace Language_tr { LSTR MSG_LOCKSCREEN_UNLOCK = _UxGT("Açmak için kaydırın."); LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Y.Başlatma bekleyin."); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Ortam yerleştirilmedi."); - LSTR MSG_PLEASE_PREHEAT = _UxGT("Lütfen önce hotend'i ısıtın."); - LSTR MSG_INFO_PRINT_COUNT_RESET = _UxGT("Baskı Sayısını Sıfırla"); - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Baskı Sayısı"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Toplam Baskı Süresi"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("En Uzun Baskı Süresi"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Toplam Filaman"); - #else - LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Medya Yok"); - LSTR MSG_PLEASE_PREHEAT = _UxGT("Ön Isıtma Lütfen"); - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Baskı"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Süre"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("En Uzun"); - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Filaman"); - #endif + LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Medya Yok"); + LSTR MSG_PLEASE_PREHEAT = _UxGT("Ön Isıtma Lütfen"); + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Baskı"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Süre"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("En Uzun"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Filaman"); LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Tamamlanan"); LSTR MSG_INFO_MIN_TEMP = _UxGT("Min Sıc."); @@ -757,35 +731,20 @@ namespace Language_tr { LSTR MSG_PASSWORD_REMOVED = _UxGT("Şifre Kaldırıldı"); // - // Filament Değişim ekranları 4 satırlı ekranda 3 satıra kadar gösterilir - // ...veya 3 satırlı ekranda 2 satıra kadar + // Filament Değişim ekranları 3 satırlı ekranda 2 satıra kadar // - #if LCD_HEIGHT >= 4 + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Sürdürmek İçin Tıkla")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Park Ediliyor...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Lütfen bekleyiniz...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Yükle ve bas")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Isıtmak için Tıkla")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Isınıyor...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Çıkartılıyor...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Yüklüyor...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Temizleniyor...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Bitirmek için Tıkla")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Sürdürülüyor...")); - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Baskıya devam etmek", "için Butona bas")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Park Ediliyor...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Filaman değişimi", "için başlama", "bekleniyor")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Filamanı yükle", "ve devam için", "tuşa bas...")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Nozulü Isıtmak için", "Butona Bas.")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Nozul Isınıyor", "Lütfen Bekleyin...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Filamanın çıkması", "bekleniyor")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Filamanın yüklenmesi", "bekleniyor..")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Filaman Temizlemesi", "için bekle")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Filaman Temizlemesi", "bitirmek için tıkla")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Baskının devam ", "etmesi için bekle")); - #else - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Sürdürmek İçin Tıkla")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Park Ediliyor...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Lütfen bekleyiniz...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Yükle ve bas")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Isıtmak için Tıkla")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Isınıyor...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Çıkartılıyor...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Yüklüyor...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Temizleniyor...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Bitirmek için Tıkla")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Sürdürülüyor...")); - #endif LSTR MSG_TMC_DRIVERS = _UxGT("TMC Sürücüleri"); LSTR MSG_TMC_CURRENT = _UxGT("Sürücü Akımı"); LSTR MSG_TMC_HYBRID_THRS = _UxGT("Hibrit Eşiği"); @@ -800,11 +759,8 @@ namespace Language_tr { LSTR MSG_LEVEL_X_AXIS = _UxGT("Seviye X Ekseni"); LSTR MSG_AUTO_CALIBRATE = _UxGT("Otomatik Kalibre Et"); - #if ENABLED(TOUCH_UI_FTDI_EVE) - LSTR MSG_HEATER_TIMEOUT = _UxGT("Boşta kalma zaman aşımı, sıcaklık düştü. Yeniden ısıtmak ve tekrar devam etmek için için Tamam'a basın."); - #else - LSTR MSG_HEATER_TIMEOUT = _UxGT("Isıtıcı Zaman Aşımı"); - #endif + LSTR MSG_FTDI_HEATER_TIMEOUT = _UxGT("Boşta kalma zaman aşımı, sıcaklık düştü. Yeniden ısıtmak ve tekrar devam etmek için için Tamam'a basın."); + LSTR MSG_HEATER_TIMEOUT = _UxGT("Isıtıcı Zaman Aşımı"); LSTR MSG_REHEAT = _UxGT("Yeniden ısıt"); LSTR MSG_REHEATING = _UxGT("Yeniden ısıtılıyor..."); LSTR MSG_REHEATDONE = _UxGT("Y. Isıtma Tamam"); @@ -837,3 +793,46 @@ namespace Language_tr { LSTR MSG_SHORT_HOUR = _UxGT("s"); // One character only LSTR MSG_SHORT_MINUTE = _UxGT("d"); // One character only } + +namespace LanguageWide_tr { + using namespace LanguageNarrow_tr; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_HOST_START_PRINT = _UxGT("Host Baskıyı başlat"); + LSTR MSG_PRINTING_OBJECT = _UxGT("Yazdırma Nesnesi"); + LSTR MSG_CANCEL_OBJECT = _UxGT("Nesneyi İptal Et"); + LSTR MSG_CANCEL_OBJECT_N = _UxGT("Nesneyi İptal Et {"); + LSTR MSG_CONTINUE_PRINT_JOB = _UxGT("Yazdırmaya Devam Et"); + LSTR MSG_MEDIA_MENU = _UxGT("SD Karttan Yazdır"); + LSTR MSG_TURN_OFF = _UxGT("Yazıcıyı kapat"); + LSTR MSG_END_LOOPS = _UxGT("Tekrr Döngüler Bitir"); + LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Ortam yerleştirilmedi."); + LSTR MSG_PLEASE_PREHEAT = _UxGT("Lütfen önce hotend'i ısıtın."); + LSTR MSG_INFO_PRINT_COUNT_RESET = _UxGT("Baskı Sayısını Sıfırla"); + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Baskı Sayısı"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Toplam Baskı Süresi"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("En Uzun Baskı Süresi"); + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Toplam Filaman"); + #endif +} + +namespace LanguageTall_tr { + using namespace LanguageWide_tr; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("Baskıya devam etmek", "için Butona bas")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Park Ediliyor...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Filaman değişimi", "için başlama", "bekleniyor")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Filamanı yükle", "ve devam için", "tuşa bas...")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Nozulü Isıtmak için", "Butona Bas.")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Nozul Isınıyor", "Lütfen Bekleyin...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Filamanın çıkması", "bekleniyor")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Filamanın yüklenmesi", "bekleniyor..")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Filaman Temizlemesi", "için bekle")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("Filaman Temizlemesi", "bitirmek için tıkla")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Baskının devam ", "etmesi için bekle")); + #endif +} + +namespace Language_tr { + using namespace LanguageTall_tr; +} diff --git a/Marlin/src/lcd/language/language_uk.h b/Marlin/src/lcd/language/language_uk.h index 7a7f4a5f4445..78e91b0484e3 100644 --- a/Marlin/src/lcd/language/language_uk.h +++ b/Marlin/src/lcd/language/language_uk.h @@ -30,7 +30,7 @@ #define DISPLAY_CHARSET_ISO10646_5 -namespace Language_uk { +namespace LanguageNarrow_uk { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -44,21 +44,12 @@ namespace Language_uk { LSTR MSG_MEDIA_INSERTED = _UxGT("SD-картка вставлена"); LSTR MSG_MEDIA_REMOVED = _UxGT("SD-картка видалена"); LSTR MSG_MEDIA_WAITING = _UxGT("Вставте SD-картку"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_MEDIA_INIT_FAIL = _UxGT("Збій ініціалізації SD"); - #else - LSTR MSG_MEDIA_INIT_FAIL = _UxGT("Збій ініціаліз. SD"); - #endif + LSTR MSG_MEDIA_INIT_FAIL = _UxGT("Збій ініціаліз. SD"); LSTR MSG_MEDIA_READ_ERROR = _UxGT("Помилка зчитування"); LSTR MSG_MEDIA_USB_REMOVED = _UxGT("USB диск видалений"); LSTR MSG_MEDIA_USB_FAILED = _UxGT("Помилка USB диску"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Переповнення виклику"); - LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Програмні кінцевики"); - #else - LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Переповн. виклику"); - LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Прогр.кінцевики"); - #endif + LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Переповн. виклику"); + LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Прогр.кінцевики"); LSTR MSG_LCD_ENDSTOPS = _UxGT("Кінцевик"); // Max length 8 characters LSTR MSG_MAIN_MENU = _UxGT("Основне меню"); LSTR MSG_ADVANCED_SETTINGS = _UxGT("Інші налаштування"); @@ -81,64 +72,43 @@ namespace Language_uk { LSTR MSG_LEVEL_BED_NEXT_POINT = _UxGT("Наступна точка"); LSTR MSG_LEVEL_BED_DONE = _UxGT("Завершено!"); LSTR MSG_Z_FADE_HEIGHT = _UxGT("Висота спаду"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_SET_HOME_OFFSETS = _UxGT("Встанов. зміщення дому"); - LSTR MSG_HOME_OFFSET_X = _UxGT("Зміщення дому X"); - LSTR MSG_HOME_OFFSET_Y = _UxGT("Зміщення дому Y"); - LSTR MSG_HOME_OFFSET_Z = _UxGT("Зміщення дому Z"); - #else - LSTR MSG_SET_HOME_OFFSETS = _UxGT("Встан. зміщ. дому"); - LSTR MSG_HOME_OFFSET_X = _UxGT("Зміщ. дому X"); - LSTR MSG_HOME_OFFSET_Y = _UxGT("Зміщ. дому Y"); - LSTR MSG_HOME_OFFSET_Z = _UxGT("Зміщ. дому Z"); - #endif + LSTR MSG_SET_HOME_OFFSETS = _UxGT("Встан. зміщ. дому"); + LSTR MSG_HOME_OFFSET_X = _UxGT("Зміщ. дому X"); + LSTR MSG_HOME_OFFSET_Y = _UxGT("Зміщ. дому Y"); + LSTR MSG_HOME_OFFSET_Z = _UxGT("Зміщ. дому Z"); LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Зміщення прийняті"); LSTR MSG_SELECT_ORIGIN = _UxGT("Оберіть нуль"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_LAST_VALUE_SP = _UxGT("Останнє значення "); - #else - LSTR MSG_LAST_VALUE_SP = _UxGT("Останнє знач. "); - #endif - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Нагрів ") PREHEAT_1_LABEL; - LSTR MSG_PREHEAT_1_H = _UxGT("Нагрів ") PREHEAT_1_LABEL " ~"; - LSTR MSG_PREHEAT_1_END = _UxGT("Нагрів ") PREHEAT_1_LABEL _UxGT(" сопло"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Нагрів ") PREHEAT_1_LABEL _UxGT(" сопло ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Нагрів ") PREHEAT_1_LABEL _UxGT(" все"); - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Нагрів ") PREHEAT_1_LABEL _UxGT(" стіл"); - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Нагрів ") PREHEAT_1_LABEL _UxGT(" налашт"); - - LSTR MSG_PREHEAT_M = _UxGT("Нагрів $"); - LSTR MSG_PREHEAT_M_H = _UxGT("Нагрів $ ~"); - LSTR MSG_PREHEAT_M_END = _UxGT("Нагрів $ сопло"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Нагрів $ сопло ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Нагрів $ все"); - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Нагрів $ стіл"); - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Нагрів $ налашт"); - #endif + LSTR MSG_LAST_VALUE_SP = _UxGT("Останнє знач. "); + + LSTR MSG_PREHEAT_1 = _UxGT("Нагрів ") PREHEAT_1_LABEL; + LSTR MSG_PREHEAT_1_H = _UxGT("Нагрів ") PREHEAT_1_LABEL " ~"; + LSTR MSG_PREHEAT_1_END = _UxGT("Нагрів ") PREHEAT_1_LABEL _UxGT(" сопло"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Нагрів ") PREHEAT_1_LABEL _UxGT(" сопло ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Нагрів ") PREHEAT_1_LABEL _UxGT(" все"); + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Нагрів ") PREHEAT_1_LABEL _UxGT(" стіл"); + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Нагрів ") PREHEAT_1_LABEL _UxGT(" налашт"); + + LSTR MSG_PREHEAT_M = _UxGT("Нагрів $"); + LSTR MSG_PREHEAT_M_H = _UxGT("Нагрів $ ~"); + LSTR MSG_PREHEAT_M_END = _UxGT("Нагрів $ сопло"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Нагрів $ сопло ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Нагрів $ все"); + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Нагрів $ стіл"); + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Нагрів $ налашт"); + LSTR MSG_PREHEAT_CUSTOM = _UxGT("Нагрів свого"); LSTR MSG_COOLDOWN = _UxGT("Вимкнути нагрів"); LSTR MSG_CUTTER_FREQUENCY = _UxGT("Частота"); LSTR MSG_LASER_MENU = _UxGT("Керування лазером"); LSTR MSG_SPINDLE_MENU = _UxGT("Керування шпінделем"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_LASER_POWER = _UxGT("Потужність лазера"); - LSTR MSG_SPINDLE_TOGGLE = _UxGT("Перемкн. шпіндель"); - LSTR MSG_SPINDLE_EVAC_TOGGLE = _UxGT("Перемкнути вакуум"); - LSTR MSG_LASER_TOGGLE = _UxGT("Перемкнути лазер"); - LSTR MSG_SPINDLE_POWER = _UxGT("Потужн. шпінделя"); - LSTR MSG_LASER_PULSE_MS = _UxGT("Тестовий імпульс мс"); - LSTR MSG_LASER_EVAC_TOGGLE = _UxGT("Перемкнути обдув"); - #else - LSTR MSG_LASER_POWER = _UxGT("Потужн. лазера"); - LSTR MSG_SPINDLE_TOGGLE = _UxGT("Перемк. шпінд."); - LSTR MSG_SPINDLE_EVAC_TOGGLE = _UxGT("Перемк. вакуум"); - LSTR MSG_LASER_TOGGLE = _UxGT("Перемкн. лазер"); - LSTR MSG_SPINDLE_POWER = _UxGT("Потужн. шпінд."); - LSTR MSG_LASER_PULSE_MS = _UxGT("Тест. імп., мс"); - LSTR MSG_LASER_EVAC_TOGGLE = _UxGT("Перемкн. обдув"); - #endif + LSTR MSG_LASER_POWER = _UxGT("Потужн. лазера"); + LSTR MSG_SPINDLE_TOGGLE = _UxGT("Перемк. шпінд."); + LSTR MSG_SPINDLE_EVAC_TOGGLE = _UxGT("Перемк. вакуум"); + LSTR MSG_LASER_TOGGLE = _UxGT("Перемкн. лазер"); + LSTR MSG_SPINDLE_POWER = _UxGT("Потужн. шпінд."); + LSTR MSG_LASER_PULSE_MS = _UxGT("Тест. імп., мс"); + LSTR MSG_LASER_EVAC_TOGGLE = _UxGT("Перемкн. обдув"); LSTR MSG_LASER_ASSIST_TOGGLE = _UxGT("Керування обдувом"); LSTR MSG_FLOWMETER_FAULT = _UxGT("Помилка обдуву"); LSTR MSG_LASER_FIRE_PULSE = _UxGT("Імпульс лазеру"); @@ -153,21 +123,12 @@ namespace Language_uk { LSTR MSG_BED_LEVELING = _UxGT("Вирівнювання столу"); LSTR MSG_LEVEL_BED = _UxGT("Вирівняти стіл"); LSTR MSG_BED_TRAMMING = _UxGT("Вирівняти кути"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_BED_TRAMMING_RAISE = _UxGT("Вгору до спрацюв. зонду"); - LSTR MSG_BED_TRAMMING_IN_RANGE = _UxGT("Кути в межах. Вирів.столу"); - #else - LSTR MSG_BED_TRAMMING_RAISE = _UxGT("Вгору до спрац.зонду"); - LSTR MSG_BED_TRAMMING_IN_RANGE = _UxGT("Кути в межах. Вирівн"); - #endif + LSTR MSG_BED_TRAMMING_RAISE = _UxGT("Вгору до спрац.зонду"); + LSTR MSG_BED_TRAMMING_IN_RANGE = _UxGT("Кути в межах. Вирівн"); LSTR MSG_BED_TRAMMING_GOOD_POINTS = _UxGT("Хороші точки: "); LSTR MSG_BED_TRAMMING_LAST_Z = _UxGT("Остання Z: "); LSTR MSG_NEXT_CORNER = _UxGT("Наступний кут"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_MESH_EDITOR = _UxGT("Зміщення по Z"); - #else - LSTR MSG_MESH_EDITOR = _UxGT("Зміщення Z"); - #endif + LSTR MSG_MESH_EDITOR = _UxGT("Зміщення Z"); LSTR MSG_EDIT_MESH = _UxGT("Редагувати сітку"); LSTR MSG_EDITING_STOPPED = _UxGT("Редагув. зупинено"); LSTR MSG_PROBING_POINT = _UxGT("Точка сітки"); @@ -196,20 +157,11 @@ namespace Language_uk { LSTR MSG_UBL_TOOLS = _UxGT("Інструменти UBL"); LSTR MSG_UBL_LEVEL_BED = _UxGT("Налаштування UBL"); LSTR MSG_LCD_TILTING_MESH = _UxGT("Точка нахилу"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_UBL_MANUAL_MESH = _UxGT("Ручне введення сітки"); - LSTR MSG_UBL_BC_INSERT = _UxGT("Розмістити шайбу і вимір."); - #else - LSTR MSG_UBL_MANUAL_MESH = _UxGT("Ручне введ. сітки"); - LSTR MSG_UBL_BC_INSERT = _UxGT("Розм. шайбу і вимір."); - #endif + LSTR MSG_UBL_MANUAL_MESH = _UxGT("Ручне введ. сітки"); + LSTR MSG_UBL_BC_INSERT = _UxGT("Розм. шайбу і вимір."); LSTR MSG_UBL_MESH_WIZARD = _UxGT("Майстер сіток UBL"); LSTR MSG_UBL_BC_INSERT2 = _UxGT("Вимірювання"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_UBL_BC_REMOVE = _UxGT("Видалити і виміряти стіл"); - #else - LSTR MSG_UBL_BC_REMOVE = _UxGT("Видали і вимір. стіл"); - #endif + LSTR MSG_UBL_BC_REMOVE = _UxGT("Видали і вимір. стіл"); LSTR MSG_UBL_MOVING_TO_NEXT = _UxGT("Рух до наступної"); LSTR MSG_UBL_ACTIVATE_MESH = _UxGT("Активувати UBL"); LSTR MSG_UBL_DEACTIVATE_MESH = _UxGT("Деактивувати UBL"); @@ -217,15 +169,9 @@ namespace Language_uk { LSTR MSG_UBL_BED_TEMP_CUSTOM = _UxGT("Своя ") LCD_STR_THERMOMETER _UxGT(" столу,") LCD_STR_DEGREE _UxGT("C"); LSTR MSG_UBL_SET_TEMP_HOTEND = LCD_STR_THERMOMETER _UxGT(" сопла, ") LCD_STR_DEGREE _UxGT("C"); LSTR MSG_UBL_HOTEND_TEMP_CUSTOM = _UxGT("Своя ") LCD_STR_THERMOMETER _UxGT(" сопла,") LCD_STR_DEGREE _UxGT("C"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_UBL_EDIT_CUSTOM_MESH = _UxGT("Редагувати свою сітку"); - LSTR MSG_UBL_FINE_TUNE_MESH = _UxGT("Точне редагування сітки"); - LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Будувати свою сітку"); - #else - LSTR MSG_UBL_EDIT_CUSTOM_MESH = _UxGT("Редагувати свою"); - LSTR MSG_UBL_FINE_TUNE_MESH = _UxGT("Точне редаг. сітки"); - LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Будувати свою"); - #endif + LSTR MSG_UBL_EDIT_CUSTOM_MESH = _UxGT("Редагувати свою"); + LSTR MSG_UBL_FINE_TUNE_MESH = _UxGT("Точне редаг. сітки"); + LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Будувати свою"); LSTR MSG_UBL_MESH_EDIT = _UxGT("Редагування сітки"); LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Сітка побудована"); LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("Будувати сітку"); @@ -247,11 +193,7 @@ namespace Language_uk { LSTR MSG_UBL_CONTINUE_MESH = _UxGT("Продовжити сітку"); LSTR MSG_UBL_MESH_LEVELING = _UxGT("Вирівнювання сітки"); LSTR MSG_UBL_3POINT_MESH_LEVELING = _UxGT("3-точкове вирівн."); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_UBL_GRID_MESH_LEVELING = _UxGT("Вирівнювання растру"); - #else - LSTR MSG_UBL_GRID_MESH_LEVELING = _UxGT("Вирівнюв. растру"); - #endif + LSTR MSG_UBL_GRID_MESH_LEVELING = _UxGT("Вирівнюв. растру"); LSTR MSG_UBL_MESH_LEVEL = _UxGT("Вирівняти сітку"); LSTR MSG_UBL_SIDE_POINTS = _UxGT("Крайні точки"); LSTR MSG_UBL_MAP_TYPE = _UxGT("Тип мапи сітки"); @@ -260,23 +202,14 @@ namespace Language_uk { LSTR MSG_UBL_OUTPUT_MAP_CSV = _UxGT("Вивести в CSV"); LSTR MSG_UBL_OUTPUT_MAP_BACKUP = _UxGT("Зберегти зовні"); LSTR MSG_UBL_INFO_UBL = _UxGT("Інформація по UBL"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_UBL_FILLIN_AMOUNT = _UxGT("Обсяг заповнюв."); - #else - LSTR MSG_UBL_FILLIN_AMOUNT = _UxGT("Обсяг заповн."); - #endif + LSTR MSG_UBL_FILLIN_AMOUNT = _UxGT("Обсяг заповн."); LSTR MSG_UBL_MANUAL_FILLIN = _UxGT("Ручне заповнення"); LSTR MSG_UBL_SMART_FILLIN = _UxGT("Розумне заповнення"); LSTR MSG_UBL_FILLIN_MESH = _UxGT("Заповнити сітку"); LSTR MSG_UBL_INVALIDATE_ALL = _UxGT("Анулювати все"); LSTR MSG_UBL_INVALIDATE_CLOSEST = _UxGT("Анулювати найближчу"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_UBL_FINE_TUNE_ALL = _UxGT("Точно налаштувати все"); - LSTR MSG_UBL_FINE_TUNE_CLOSEST = _UxGT("Точно налашт.найближчу"); - #else - LSTR MSG_UBL_FINE_TUNE_ALL = _UxGT("Точно налашт. все"); - LSTR MSG_UBL_FINE_TUNE_CLOSEST = _UxGT("Точно найближчу"); - #endif + LSTR MSG_UBL_FINE_TUNE_ALL = _UxGT("Точно налашт. все"); + LSTR MSG_UBL_FINE_TUNE_CLOSEST = _UxGT("Точно найближчу"); LSTR MSG_UBL_STORAGE_MESH_MENU = _UxGT("Збереження сітки"); LSTR MSG_UBL_STORAGE_SLOT = _UxGT("Слот пам'яті"); LSTR MSG_UBL_LOAD_MESH = _UxGT("Завантажити сітку"); @@ -299,11 +232,7 @@ namespace Language_uk { LSTR MSG_LED_CONTROL = _UxGT("Керування світлом"); LSTR MSG_LEDS = _UxGT("Підсвітка"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_LED_PRESETS = _UxGT("Передустановки світла"); - #else - LSTR MSG_LED_PRESETS = _UxGT("Передустан. світла"); - #endif + LSTR MSG_LED_PRESETS = _UxGT("Передустан. світла"); LSTR MSG_SET_LEDS_RED = _UxGT("Червоний"); LSTR MSG_SET_LEDS_ORANGE = _UxGT("Помаранчевий"); LSTR MSG_SET_LEDS_YELLOW = _UxGT("Жовтий"); @@ -315,11 +244,7 @@ namespace Language_uk { LSTR MSG_SET_LEDS_DEFAULT = _UxGT("За умовчанням"); LSTR MSG_LED_CHANNEL_N = _UxGT("Канал {"); LSTR MSG_LEDS2 = _UxGT("Світло #2"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_NEO2_PRESETS = _UxGT("Передустановка світла #2"); - #else - LSTR MSG_NEO2_PRESETS = _UxGT("Передуст. світла #2"); - #endif + LSTR MSG_NEO2_PRESETS = _UxGT("Передуст. світла #2"); LSTR MSG_NEO2_BRIGHTNESS = _UxGT("Яскравість"); LSTR MSG_CUSTOM_LEDS = _UxGT("Своє світло"); LSTR MSG_INTENSITY_R = _UxGT("Рівень червоного"); @@ -350,24 +275,14 @@ namespace Language_uk { LSTR MSG_NOZZLE_STANDBY = _UxGT("Сопло очікує"); LSTR MSG_BED = _UxGT("Стіл, ") LCD_STR_DEGREE _UxGT("C"); LSTR MSG_CHAMBER = _UxGT("Камера,") LCD_STR_DEGREE _UxGT("C"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_COOLER = _UxGT("Охолодження лазеру"); - LSTR MSG_COOLER_TOGGLE = _UxGT("Перемк. охолодж."); - #else - LSTR MSG_COOLER = _UxGT("Охолодж. лазеру"); - LSTR MSG_COOLER_TOGGLE = _UxGT("Перемк.охолод"); - #endif + LSTR MSG_COOLER = _UxGT("Охолодж. лазеру"); + LSTR MSG_COOLER_TOGGLE = _UxGT("Перемк.охолод"); LSTR MSG_FLOWMETER_SAFETY = _UxGT("Безпека потоку"); LSTR MSG_LASER = _UxGT("Лазер"); LSTR MSG_FAN_SPEED = _UxGT("Швидк. вент."); LSTR MSG_FAN_SPEED_N = _UxGT("Швидк. вент. ~"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_STORED_FAN_N = _UxGT("Збереж.швидк.вент. ~"); - LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("Дод. швидк. вент. ~"); - #else - LSTR MSG_STORED_FAN_N = _UxGT("Збереж. вент. ~"); - LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("Додат.вент. ~"); - #endif + LSTR MSG_STORED_FAN_N = _UxGT("Збереж. вент. ~"); + LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("Додат.вент. ~"); LSTR MSG_EXTRA_FAN_SPEED = _UxGT("Дод. швидк. вент."); LSTR MSG_CONTROLLER_FAN = _UxGT("Вент. контролера"); LSTR MSG_CONTROLLER_FAN_IDLE_SPEED = _UxGT("Холості оберти"); @@ -399,11 +314,7 @@ namespace Language_uk { LSTR MSG_VC_JERK = _UxGT("V") STR_C _UxGT("-ривок"); LSTR MSG_VN_JERK = _UxGT("V@-ривок"); LSTR MSG_VE_JERK = _UxGT("Ve-ривок"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_JUNCTION_DEVIATION = _UxGT("Відхилення вузла"); - #else - LSTR MSG_JUNCTION_DEVIATION = _UxGT("Відхил.вузла"); - #endif + LSTR MSG_JUNCTION_DEVIATION = _UxGT("Відхил.вузла"); LSTR MSG_MAX_SPEED = _UxGT("Швидкість, мм/с"); LSTR MSG_VMAX_A = _UxGT("Швидк.макс ") STR_A; LSTR MSG_VMAX_B = _UxGT("Швидк.макс ") STR_B; @@ -412,11 +323,7 @@ namespace Language_uk { LSTR MSG_VMAX_E = _UxGT("Швидк.макс E"); LSTR MSG_VMAX_EN = _UxGT("Швидк.макс *"); LSTR MSG_VMIN = _UxGT("Швидк. мін"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_VTRAV_MIN = _UxGT("Переміщення мін"); - #else - LSTR MSG_VTRAV_MIN = _UxGT("Переміщ. мін"); - #endif + LSTR MSG_VTRAV_MIN = _UxGT("Переміщ. мін"); LSTR MSG_ACCELERATION = _UxGT("Прискорення, мм/с2"); LSTR MSG_AMAX_A = _UxGT("Приск.макс ") STR_A; LSTR MSG_AMAX_B = _UxGT("Приск.макс ") STR_B; @@ -447,23 +354,14 @@ namespace Language_uk { LSTR MSG_FILAMENT_LOAD = _UxGT("Завантаж., мм"); LSTR MSG_ADVANCE_K = _UxGT("Kоеф. просув."); LSTR MSG_ADVANCE_K_E = _UxGT("Kоеф. просув. *"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_CONTRAST = _UxGT("Контраст екрану"); - LSTR MSG_BRIGHTNESS = _UxGT("Яскравість LCD"); - #else - LSTR MSG_CONTRAST = _UxGT("Контраст"); - LSTR MSG_BRIGHTNESS = _UxGT("Яскравість"); - #endif + LSTR MSG_CONTRAST = _UxGT("Контраст"); + LSTR MSG_BRIGHTNESS = _UxGT("Яскравість"); LSTR MSG_SCREEN_TIMEOUT = _UxGT("LCD Таймаут, x"); LSTR MSG_BRIGHTNESS_OFF = _UxGT("Підсвітка вимк."); LSTR MSG_STORE_EEPROM = _UxGT("Зберегти в EEPROM"); LSTR MSG_LOAD_EEPROM = _UxGT("Зчитати з EEPROM"); LSTR MSG_RESTORE_DEFAULTS = _UxGT("На базові параметри"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_INIT_EEPROM = _UxGT("Ініціалізація EEPROM"); - #else - LSTR MSG_INIT_EEPROM = _UxGT("Ініціаліз. EEPROM"); - #endif + LSTR MSG_INIT_EEPROM = _UxGT("Ініціаліз. EEPROM"); LSTR MSG_ERR_EEPROM_CRC = _UxGT("Збій EEPROM: CRC"); LSTR MSG_ERR_EEPROM_SIZE = _UxGT("Збій EEPROM: розмір"); LSTR MSG_ERR_EEPROM_VERSION = _UxGT("Збій EEPROM: версія"); @@ -522,19 +420,11 @@ namespace Language_uk { LSTR MSG_NO_MOVE = _UxGT("Немає руху."); LSTR MSG_KILLED = _UxGT("ПЕРЕРВАНО. "); LSTR MSG_STOPPED = _UxGT("ЗУПИНЕНО. "); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_CONTROL_RETRACT = _UxGT("Втягування, мм"); - LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Зміна втягув.,мм"); - LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("Повернення, мм"); - LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("Поверн.зміни, мм"); - LSTR MSG_AUTORETRACT = _UxGT("Автовтягування"); - #else - LSTR MSG_CONTROL_RETRACT = _UxGT("Втягув., мм"); - LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Зміна втяг.мм"); - LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("Поверн., мм"); - LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("Повер.зміни,мм"); - LSTR MSG_AUTORETRACT = _UxGT("Автовтягув."); - #endif + LSTR MSG_CONTROL_RETRACT = _UxGT("Втягув., мм"); + LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Зміна втяг.мм"); + LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("Поверн., мм"); + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("Повер.зміни,мм"); + LSTR MSG_AUTORETRACT = _UxGT("Автовтягув."); LSTR MSG_CONTROL_RETRACTF = _UxGT("Втягування V"); LSTR MSG_CONTROL_RETRACT_ZHOP = _UxGT("Підскок, мм"); LSTR MSG_CONTROL_RETRACT_RECOVERF = _UxGT("Повернення V"); @@ -544,22 +434,12 @@ namespace Language_uk { LSTR MSG_FILAMENT_PURGE_LENGTH = _UxGT("Очистити довжину"); LSTR MSG_TOOL_CHANGE = _UxGT("Зміна сопла"); LSTR MSG_TOOL_CHANGE_ZLIFT = _UxGT("Підняти по Z"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("Початк.швидкість"); - LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("Швидкість втягув."); - #else - LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("Початк.швидк."); - LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("Швидк.втягув."); - #endif + LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("Початк.швидк."); + LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("Швидк.втягув."); LSTR MSG_FILAMENT_PARK_ENABLED = _UxGT("Паркувати голову"); LSTR MSG_SINGLENOZZLE_UNRETRACT_SPEED = _UxGT("Відновити швидкість"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_SINGLENOZZLE_FAN_SPEED = _UxGT("Оберти вентилятора"); - LSTR MSG_SINGLENOZZLE_FAN_TIME = _UxGT("Час вентилятора"); - #else - LSTR MSG_SINGLENOZZLE_FAN_SPEED = _UxGT("Оберти вент."); - LSTR MSG_SINGLENOZZLE_FAN_TIME = _UxGT("Час вент."); - #endif + LSTR MSG_SINGLENOZZLE_FAN_SPEED = _UxGT("Оберти вент."); + LSTR MSG_SINGLENOZZLE_FAN_TIME = _UxGT("Час вент."); LSTR MSG_TOOL_MIGRATION_ON = _UxGT("Авто Увімк."); LSTR MSG_TOOL_MIGRATION_OFF = _UxGT("Авто Вимкн."); LSTR MSG_TOOL_MIGRATION = _UxGT("Заміна інструменту"); @@ -616,11 +496,7 @@ namespace Language_uk { LSTR MSG_THERMAL_RUNAWAY_BED = _UxGT("ВИТІК ТЕПЛА СТОЛУ"); LSTR MSG_THERMAL_RUNAWAY_CHAMBER = _UxGT("ВИТІК ТЕПЛА КАМЕРИ"); LSTR MSG_THERMAL_RUNAWAY_COOLER = _UxGT("ВИТІК ОХОЛОДЖЕННЯ"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_COOLING_FAILED = _UxGT("ОХОЛОДЖЕННЯ НЕ ВДАЛОСЬ"); - #else - LSTR MSG_COOLING_FAILED = _UxGT("ОХОЛОДЖ. НЕ ВДАЛОСЬ"); - #endif + LSTR MSG_COOLING_FAILED = _UxGT("ОХОЛОДЖ. НЕ ВДАЛОСЬ"); LSTR MSG_ERR_MAXTEMP = _UxGT("МАКСИМАЛЬНА Т") LCD_STR_DEGREE; LSTR MSG_ERR_MINTEMP = _UxGT("МІНІМАЛЬНА Т") LCD_STR_DEGREE; LSTR MSG_HALTED = _UxGT("ПРИНТЕР ЗУПИНЕНО"); @@ -630,17 +506,10 @@ namespace Language_uk { LSTR MSG_BED_HEATING = _UxGT("Нагрів столу..."); LSTR MSG_PROBE_HEATING = _UxGT("Нагрів зонду..."); LSTR MSG_CHAMBER_HEATING = _UxGT("Нагрів камери..."); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_BED_COOLING = _UxGT("Охолодження столу..."); - LSTR MSG_PROBE_COOLING = _UxGT("Охолодження зонду..."); - LSTR MSG_CHAMBER_COOLING = _UxGT("Охолодження камери..."); - LSTR MSG_LASER_COOLING = _UxGT("Охолодження лазеру..."); - #else - LSTR MSG_BED_COOLING = _UxGT("Охолодж. столу..."); - LSTR MSG_PROBE_COOLING = _UxGT("Охолодж. зонду..."); - LSTR MSG_CHAMBER_COOLING = _UxGT("Охолодж. камери..."); - LSTR MSG_LASER_COOLING = _UxGT("Охолодж. лазеру..."); - #endif + LSTR MSG_BED_COOLING = _UxGT("Охолодж. столу..."); + LSTR MSG_PROBE_COOLING = _UxGT("Охолодж. зонду..."); + LSTR MSG_CHAMBER_COOLING = _UxGT("Охолодж. камери..."); + LSTR MSG_LASER_COOLING = _UxGT("Охолодж. лазеру..."); LSTR MSG_DELTA_CALIBRATE = _UxGT("Калібрування Delta"); LSTR MSG_DELTA_CALIBRATE_X = _UxGT("Калібрувати X"); LSTR MSG_DELTA_CALIBRATE_Y = _UxGT("Калібрувати Y"); @@ -655,22 +524,12 @@ namespace Language_uk { LSTR MSG_INFO_MENU = _UxGT("Про принтер"); LSTR MSG_INFO_PRINTER_MENU = _UxGT("Дані принтера"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_3POINT_LEVELING = _UxGT("3-точкове вирівнювання"); - LSTR MSG_LINEAR_LEVELING = _UxGT("Лінійне вирівнювання"); - LSTR MSG_BILINEAR_LEVELING = _UxGT("Білінійне вирівнювання"); - #else - LSTR MSG_3POINT_LEVELING = _UxGT("3-точкове вирівн."); - LSTR MSG_LINEAR_LEVELING = _UxGT("Лінійне вирівн."); - LSTR MSG_BILINEAR_LEVELING = _UxGT("Білінійне вирівн."); - #endif + LSTR MSG_3POINT_LEVELING = _UxGT("3-точкове вирівн."); + LSTR MSG_LINEAR_LEVELING = _UxGT("Лінійне вирівн."); + LSTR MSG_BILINEAR_LEVELING = _UxGT("Білінійне вирівн."); LSTR MSG_UBL_LEVELING = _UxGT("UBL"); LSTR MSG_MESH_LEVELING = _UxGT("Вирівнювання сітки"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_MESH_DONE = _UxGT("Зондування сітки виконано"); - #else - LSTR MSG_MESH_DONE = _UxGT("Зондування виконано"); - #endif + LSTR MSG_MESH_DONE = _UxGT("Зондування виконано"); LSTR MSG_INFO_STATS_MENU = _UxGT("Статистика принтера"); LSTR MSG_INFO_BOARD_MENU = _UxGT("Про плату"); @@ -678,15 +537,9 @@ namespace Language_uk { LSTR MSG_INFO_EXTRUDERS = _UxGT("Екструдери"); LSTR MSG_INFO_BAUDRATE = _UxGT("Бод"); LSTR MSG_INFO_PROTOCOL = _UxGT("Протокол"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_INFO_RUNAWAY_OFF = _UxGT("Контроль витіку ") LCD_STR_THERMOMETER _UxGT(" Вимк"); - LSTR MSG_INFO_RUNAWAY_ON = _UxGT("Контроль витіку ") LCD_STR_THERMOMETER _UxGT(" Увімк"); - LSTR MSG_HOTEND_IDLE_TIMEOUT = _UxGT("Час простою хотенду"); - #else - LSTR MSG_INFO_RUNAWAY_OFF = _UxGT("Контр.витіку ") LCD_STR_THERMOMETER _UxGT(" Вимк"); - LSTR MSG_INFO_RUNAWAY_ON = _UxGT("Контр.витіку ") LCD_STR_THERMOMETER _UxGT(" Увімк"); - LSTR MSG_HOTEND_IDLE_TIMEOUT = _UxGT("Час прост. хот-у"); - #endif + LSTR MSG_INFO_RUNAWAY_OFF = _UxGT("Контр.витіку ") LCD_STR_THERMOMETER _UxGT(" Вимк"); + LSTR MSG_INFO_RUNAWAY_ON = _UxGT("Контр.витіку ") LCD_STR_THERMOMETER _UxGT(" Увімк"); + LSTR MSG_HOTEND_IDLE_TIMEOUT = _UxGT("Час прост. хот-у"); LSTR MSG_CASE_LIGHT = _UxGT("Підсвітка"); LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("Яскравість світла"); @@ -696,23 +549,13 @@ namespace Language_uk { LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Екструдовано"); LSTR MSG_PLEASE_PREHEAT = _UxGT("Нагрійте хотенд"); LSTR MSG_COLORS_GET = _UxGT("Отримати колір"); - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Носій не вставлений"); - LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Перезавантаження..."); - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Кількість друків"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Час друку"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Найдовший час"); - LSTR MSG_COLORS_SELECT = _UxGT("Обрати кольори"); - LSTR MSG_COLORS_APPLIED = _UxGT("Кольори застосовані"); - #else - LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Немає носія"); - LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Перезавантаж..."); - LSTR MSG_INFO_PRINT_COUNT = _UxGT("Друків"); - LSTR MSG_INFO_PRINT_TIME = _UxGT("Загалом"); - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Найдовше"); - LSTR MSG_COLORS_SELECT = _UxGT("Кольори"); - LSTR MSG_COLORS_APPLIED = _UxGT("Кольори застос."); - #endif + LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Немає носія"); + LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Перезавантаж..."); + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Друків"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Загалом"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Найдовше"); + LSTR MSG_COLORS_SELECT = _UxGT("Кольори"); + LSTR MSG_COLORS_APPLIED = _UxGT("Кольори застос."); LSTR MSG_COLORS_RED = _UxGT("Червоний"); LSTR MSG_COLORS_GREEN = _UxGT("Зелений"); LSTR MSG_COLORS_BLUE = _UxGT("Синій"); @@ -732,21 +575,12 @@ namespace Language_uk { LSTR MSG_FILAMENT_CHANGE_HEADER_PAUSE = _UxGT("ЗУПИНКА ДРУКУ"); LSTR MSG_FILAMENT_CHANGE_HEADER_LOAD = _UxGT("ЗАВАНТАЖИТИ ПРУТОК"); LSTR MSG_FILAMENT_CHANGE_HEADER_UNLOAD = _UxGT("ВИВАНТАЖИТИ ПРУТОК"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_FILAMENT_CHANGE_OPTION_HEADER = _UxGT("ПАРАМЕТРИ ПРОДОВЖЕННЯ:"); - #else - LSTR MSG_FILAMENT_CHANGE_OPTION_HEADER = _UxGT("ПАРАМ.ПРОДОВЖЕННЯ:"); - #endif + LSTR MSG_FILAMENT_CHANGE_OPTION_HEADER = _UxGT("ПАРАМ.ПРОДОВЖЕННЯ:"); LSTR MSG_FILAMENT_CHANGE_OPTION_PURGE = _UxGT("Видавити ще"); LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("Відновити друк"); LSTR MSG_FILAMENT_CHANGE_NOZZLE = _UxGT(" Сопло: "); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_RUNOUT_SENSOR = _UxGT("Датчик закінчення прутка"); - LSTR MSG_RUNOUT_DISTANCE_MM = _UxGT("Відстань закінч.,мм"); - #else - LSTR MSG_RUNOUT_SENSOR = _UxGT("Датчик закінч.прутка"); - LSTR MSG_RUNOUT_DISTANCE_MM = _UxGT("До закінч.,мм"); - #endif + LSTR MSG_RUNOUT_SENSOR = _UxGT("Датчик закінч.прутка"); + LSTR MSG_RUNOUT_DISTANCE_MM = _UxGT("До закінч.,мм"); LSTR MSG_KILL_HOMING_FAILED = _UxGT("Помилка паркування"); LSTR MSG_LCD_PROBING_FAILED = _UxGT("Помилка зондування"); @@ -758,11 +592,7 @@ namespace Language_uk { LSTR MSG_MMU2_RESUMING = _UxGT("MMU Продовження..."); LSTR MSG_MMU2_LOAD_FILAMENT = _UxGT("MMU Завантажити"); LSTR MSG_MMU2_LOAD_ALL = _UxGT("MMU Завантажити все"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_MMU2_LOAD_TO_NOZZLE = _UxGT("MMU Завантажити в сопло"); - #else - LSTR MSG_MMU2_LOAD_TO_NOZZLE = _UxGT("MMU Завант. в сопло"); - #endif + LSTR MSG_MMU2_LOAD_TO_NOZZLE = _UxGT("MMU Завант. в сопло"); LSTR MSG_MMU2_EJECT_FILAMENT = _UxGT("MMU Звільнити"); LSTR MSG_MMU2_EJECT_FILAMENT_N = _UxGT("MMU Звільнити ~"); LSTR MSG_MMU2_UNLOAD_FILAMENT = _UxGT("MMU Вивантажити"); @@ -775,33 +605,18 @@ namespace Language_uk { LSTR MSG_MMU2_RESETTING = _UxGT("MMU Перезапуск..."); LSTR MSG_MMU2_EJECT_RECOVER = _UxGT("Видаліть, натисніть"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_MIX = _UxGT("Змішування"); - #else - LSTR MSG_MIX = _UxGT("Змішув."); - #endif + LSTR MSG_MIX = _UxGT("Змішув."); LSTR MSG_MIX_COMPONENT_N = _UxGT("Компонент {"); LSTR MSG_MIXER = _UxGT("Змішувач"); LSTR MSG_GRADIENT = _UxGT("Градієнт"); LSTR MSG_FULL_GRADIENT = _UxGT("Повний градієнт"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_TOGGLE_MIX = _UxGT("Переключити змішування"); - #else - LSTR MSG_TOGGLE_MIX = _UxGT("Переключ.змішування"); - #endif + LSTR MSG_TOGGLE_MIX = _UxGT("Переключ.змішування"); LSTR MSG_CYCLE_MIX = _UxGT("Циклічне змішування"); LSTR MSG_GRADIENT_MIX = _UxGT("Градієнт змішування"); LSTR MSG_REVERSE_GRADIENT = _UxGT("Змінити градієнт"); - - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_ACTIVE_VTOOL = _UxGT("Активація В-інструменту"); - LSTR MSG_GRADIENT_ALIAS = _UxGT("Псевдонім В-інструменту"); - LSTR MSG_RESET_VTOOLS = _UxGT("Зкидання В-інструментів"); - #else - LSTR MSG_ACTIVE_VTOOL = _UxGT("Актив. В-інструм."); - LSTR MSG_GRADIENT_ALIAS = _UxGT("Псевдонім В-інструм"); - LSTR MSG_RESET_VTOOLS = _UxGT("Зкидання В-інструм."); - #endif + LSTR MSG_ACTIVE_VTOOL = _UxGT("Актив. В-інструм."); + LSTR MSG_GRADIENT_ALIAS = _UxGT("Псевдонім В-інструм"); + LSTR MSG_RESET_VTOOLS = _UxGT("Зкидання В-інструм."); LSTR MSG_START_VTOOL = _UxGT("Початок В-інструменту"); LSTR MSG_END_VTOOL = _UxGT("Кінець В-інструменту"); LSTR MSG_COMMIT_VTOOL = _UxGT("Змішати В-інструменти"); @@ -816,11 +631,7 @@ namespace Language_uk { LSTR MSG_MAZE = _UxGT("Лабіринт"); LSTR MSG_BAD_PAGE = _UxGT("Погана сторінка"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_BAD_PAGE_SPEED = _UxGT("Погана швидкість стор."); - #else - LSTR MSG_BAD_PAGE_SPEED = _UxGT("Погана швидк. стор."); - #endif + LSTR MSG_BAD_PAGE_SPEED = _UxGT("Погана швидк. стор."); LSTR MSG_EDIT_PASSWORD = _UxGT("Редагувати пароль"); LSTR MSG_LOGIN_REQUIRED = _UxGT("Потрібен логін"); @@ -835,35 +646,19 @@ namespace Language_uk { // - // Filament Change screens show up to 3 lines on a 4-line display - // ...or up to 2 lines on a 3-line display + // Filament Change screens show up to 2 lines on a 3-line display // LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("Паркування...")); - #if LCD_HEIGHT >= 4 - // Up to 3 lines allowed - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_3_LINE("Натисніть кнопку", "для продовження", "друку")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Зачекайте", "на початок", "заміни прутка")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Вставте пруток", "та натисніть", "для продовження")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Натисніть кнопку", "для нагріву сопла")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Сопло нагрівається", "зачекайте...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Зачекайте", "на вивід прутка")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Зачекайте", "на ввід прутка")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Дочекайтесь", "очищення прутка")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_3_LINE("Натисніть кнопку", "для завершення", "очищення прутка")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_3_LINE("Зачекайте", "на відновлення", "друку")); - #else - // Up to 2 lines allowed - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Продовжити друк")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Зачекайте...")); - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Вставте і натисніть")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Нагріти сопло")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Нагрів сопла...")); - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Вивід прутка...")); - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Ввід прутка...")); - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Очищення прутка...")); - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Завершити очищення")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Поновлення друку...")); - #endif + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("Продовжити друк")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Зачекайте...")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Вставте і натисніть")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("Нагріти сопло")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Нагрів сопла...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Вивід прутка...")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Ввід прутка...")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("Очищення прутка...")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("Завершити очищення")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Поновлення друку...")); LSTR MSG_TMC_DRIVERS = _UxGT("Драйвери TMC"); LSTR MSG_TMC_CURRENT = _UxGT("Струм драйвера"); @@ -880,22 +675,14 @@ namespace Language_uk { LSTR MSG_LEVEL_X_AXIS = _UxGT("Рівень вісі X"); LSTR MSG_AUTO_CALIBRATE = _UxGT("Авто калібрування"); - #if ENABLED(TOUCH_UI_FTDI_EVE) - LSTR MSG_HEATER_TIMEOUT = _UxGT("Час простою збіг, температура впала. Натисніть ОК, щоби знову нагріти та продовжити"); - #else - LSTR MSG_HEATER_TIMEOUT = _UxGT("Час нагрівача збіг"); - #endif + LSTR MSG_FTDI_HEATER_TIMEOUT = _UxGT("Час простою збіг, температура впала. Натисніть ОК, щоби знову нагріти та продовжити"); + LSTR MSG_HEATER_TIMEOUT = _UxGT("Час нагрівача збіг"); LSTR MSG_REHEAT = _UxGT("Поновити нагрів"); LSTR MSG_REHEATING = _UxGT("Нагрівання..."); LSTR MSG_PROBE_WIZARD = _UxGT("Майстер Z-зонда"); - #if LCD_WIDTH > 21 || HAS_DWIN_E3V2 - LSTR MSG_PROBE_WIZARD_PROBING = _UxGT("Зондув. контрольної точки Z"); - LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Рух до точки зондування"); - #else - LSTR MSG_PROBE_WIZARD_PROBING = _UxGT("Зондув.контр.точки Z"); - LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Рух до точки зондув."); - #endif + LSTR MSG_PROBE_WIZARD_PROBING = _UxGT("Зондув.контр.точки Z"); + LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Рух до точки зондув."); LSTR MSG_SOUND = _UxGT("Звук"); @@ -915,3 +702,109 @@ namespace Language_uk { LSTR MSG_SHORT_HOUR = _UxGT("г"); // One character only LSTR MSG_SHORT_MINUTE = _UxGT("х"); // One character only } + +namespace LanguageWide_uk { + using namespace LanguageNarrow_uk; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_MEDIA_INIT_FAIL = _UxGT("Збій ініціалізації SD"); + LSTR MSG_KILL_SUBCALL_OVERFLOW = _UxGT("Переповнення виклику"); + LSTR MSG_LCD_SOFT_ENDSTOPS = _UxGT("Програмні кінцевики"); + LSTR MSG_SET_HOME_OFFSETS = _UxGT("Встанов. зміщення дому"); + LSTR MSG_HOME_OFFSET_X = _UxGT("Зміщення дому X"); + LSTR MSG_HOME_OFFSET_Y = _UxGT("Зміщення дому Y"); + LSTR MSG_HOME_OFFSET_Z = _UxGT("Зміщення дому Z"); + LSTR MSG_LAST_VALUE_SP = _UxGT("Останнє значення "); + LSTR MSG_LASER_POWER = _UxGT("Потужність лазера"); + LSTR MSG_SPINDLE_TOGGLE = _UxGT("Перемкн. шпіндель"); + LSTR MSG_SPINDLE_EVAC_TOGGLE = _UxGT("Перемкнути вакуум"); + LSTR MSG_LASER_TOGGLE = _UxGT("Перемкнути лазер"); + LSTR MSG_SPINDLE_POWER = _UxGT("Потужн. шпінделя"); + LSTR MSG_LASER_PULSE_MS = _UxGT("Тестовий імпульс мс"); + LSTR MSG_LASER_EVAC_TOGGLE = _UxGT("Перемкнути обдув"); + LSTR MSG_BED_TRAMMING_RAISE = _UxGT("Вгору до спрацюв. зонду"); + LSTR MSG_BED_TRAMMING_IN_RANGE = _UxGT("Кути в межах. Вирів.столу"); + LSTR MSG_MESH_EDITOR = _UxGT("Зміщення по Z"); + LSTR MSG_UBL_MANUAL_MESH = _UxGT("Ручне введення сітки"); + LSTR MSG_UBL_BC_INSERT = _UxGT("Розмістити шайбу і вимір."); + LSTR MSG_UBL_BC_REMOVE = _UxGT("Видалити і виміряти стіл"); + LSTR MSG_UBL_EDIT_CUSTOM_MESH = _UxGT("Редагувати свою сітку"); + LSTR MSG_UBL_FINE_TUNE_MESH = _UxGT("Точне редагування сітки"); + LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Будувати свою сітку"); + LSTR MSG_UBL_GRID_MESH_LEVELING = _UxGT("Вирівнювання растру"); + LSTR MSG_UBL_FILLIN_AMOUNT = _UxGT("Обсяг заповнюв."); + LSTR MSG_UBL_FINE_TUNE_ALL = _UxGT("Точно налаштувати все"); + LSTR MSG_UBL_FINE_TUNE_CLOSEST = _UxGT("Точно налашт.найближчу"); + LSTR MSG_LED_PRESETS = _UxGT("Передустановки світла"); + LSTR MSG_NEO2_PRESETS = _UxGT("Передустановка світла #2"); + LSTR MSG_COOLER = _UxGT("Охолодження лазеру"); + LSTR MSG_COOLER_TOGGLE = _UxGT("Перемк. охолодж."); + LSTR MSG_STORED_FAN_N = _UxGT("Збереж.швидк.вент. ~"); + LSTR MSG_EXTRA_FAN_SPEED_N = _UxGT("Дод. швидк. вент. ~"); + LSTR MSG_JUNCTION_DEVIATION = _UxGT("Відхилення вузла"); + LSTR MSG_VTRAV_MIN = _UxGT("Переміщення мін"); + LSTR MSG_CONTRAST = _UxGT("Контраст екрану"); + LSTR MSG_BRIGHTNESS = _UxGT("Яскравість LCD"); + LSTR MSG_INIT_EEPROM = _UxGT("Ініціалізація EEPROM"); + LSTR MSG_CONTROL_RETRACT = _UxGT("Втягування, мм"); + LSTR MSG_CONTROL_RETRACT_SWAP = _UxGT("Зміна втягув.,мм"); + LSTR MSG_CONTROL_RETRACT_RECOVER = _UxGT("Повернення, мм"); + LSTR MSG_CONTROL_RETRACT_RECOVER_SWAP = _UxGT("Поверн.зміни, мм"); + LSTR MSG_AUTORETRACT = _UxGT("Автовтягування"); + LSTR MSG_SINGLENOZZLE_PRIME_SPEED = _UxGT("Початк.швидкість"); + LSTR MSG_SINGLENOZZLE_RETRACT_SPEED = _UxGT("Швидкість втягув."); + LSTR MSG_SINGLENOZZLE_FAN_SPEED = _UxGT("Оберти вентилятора"); + LSTR MSG_SINGLENOZZLE_FAN_TIME = _UxGT("Час вентилятора"); + LSTR MSG_COOLING_FAILED = _UxGT("ОХОЛОДЖЕННЯ НЕ ВДАЛОСЬ"); + LSTR MSG_BED_COOLING = _UxGT("Охолодження столу..."); + LSTR MSG_PROBE_COOLING = _UxGT("Охолодження зонду..."); + LSTR MSG_CHAMBER_COOLING = _UxGT("Охолодження камери..."); + LSTR MSG_LASER_COOLING = _UxGT("Охолодження лазеру..."); + LSTR MSG_3POINT_LEVELING = _UxGT("3-точкове вирівнювання"); + LSTR MSG_LINEAR_LEVELING = _UxGT("Лінійне вирівнювання"); + LSTR MSG_BILINEAR_LEVELING = _UxGT("Білінійне вирівнювання"); + LSTR MSG_MESH_DONE = _UxGT("Зондування сітки виконано"); + LSTR MSG_INFO_RUNAWAY_OFF = _UxGT("Контроль витіку ") LCD_STR_THERMOMETER _UxGT(" Вимк"); + LSTR MSG_INFO_RUNAWAY_ON = _UxGT("Контроль витіку ") LCD_STR_THERMOMETER _UxGT(" Увімк"); + LSTR MSG_HOTEND_IDLE_TIMEOUT = _UxGT("Час простою хотенду"); + LSTR MSG_MEDIA_NOT_INSERTED = _UxGT("Носій не вставлений"); + LSTR MSG_PLEASE_WAIT_REBOOT = _UxGT("Перезавантаження..."); + LSTR MSG_INFO_PRINT_COUNT = _UxGT("Кількість друків"); + LSTR MSG_INFO_PRINT_TIME = _UxGT("Час друку"); + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Найдовший час"); + LSTR MSG_COLORS_SELECT = _UxGT("Обрати кольори"); + LSTR MSG_COLORS_APPLIED = _UxGT("Кольори застосовані"); + LSTR MSG_FILAMENT_CHANGE_OPTION_HEADER = _UxGT("ПАРАМЕТРИ ПРОДОВЖЕННЯ:"); + LSTR MSG_RUNOUT_SENSOR = _UxGT("Датчик закінчення прутка"); + LSTR MSG_RUNOUT_DISTANCE_MM = _UxGT("Відстань закінч.,мм"); + LSTR MSG_MMU2_LOAD_TO_NOZZLE = _UxGT("MMU Завантажити в сопло"); + LSTR MSG_MIX = _UxGT("Змішування"); + LSTR MSG_TOGGLE_MIX = _UxGT("Переключити змішування"); + LSTR MSG_ACTIVE_VTOOL = _UxGT("Активація В-інструменту"); + LSTR MSG_GRADIENT_ALIAS = _UxGT("Псевдонім В-інструменту"); + LSTR MSG_RESET_VTOOLS = _UxGT("Зкидання В-інструментів"); + LSTR MSG_BAD_PAGE_SPEED = _UxGT("Погана швидкість стор."); + LSTR MSG_PROBE_WIZARD_PROBING = _UxGT("Зондув. контрольної точки Z"); + LSTR MSG_PROBE_WIZARD_MOVING = _UxGT("Рух до точки зондування"); + #endif +} + +namespace LanguageTall_uk { + using namespace LanguageWide_uk; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_3_LINE("Натисніть кнопку", "для продовження", "друку")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Зачекайте", "на початок", "заміни прутка")); + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Вставте пруток", "та натисніть", "для продовження")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Натисніть кнопку", "для нагріву сопла")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Сопло нагрівається", "зачекайте...")); + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Зачекайте", "на вивід прутка")); + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Зачекайте", "на ввід прутка")); + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("Дочекайтесь", "очищення прутка")); + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_3_LINE("Натисніть кнопку", "для завершення", "очищення прутка")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_3_LINE("Зачекайте", "на відновлення", "друку")); + #endif +} + +namespace Language_uk { + using namespace LanguageTall_uk; +} diff --git a/Marlin/src/lcd/language/language_vi.h b/Marlin/src/lcd/language/language_vi.h index 69b58f71f01d..d37358219d5d 100644 --- a/Marlin/src/lcd/language/language_vi.h +++ b/Marlin/src/lcd/language/language_vi.h @@ -27,7 +27,7 @@ * LCD Menu Messages * See also https://marlinfw.org/docs/development/lcd_language.html */ -namespace Language_vi { +namespace LanguageNarrow_vi { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 2; @@ -63,23 +63,23 @@ namespace Language_vi { LSTR MSG_Z_FADE_HEIGHT = _UxGT("Chiều cao mờ dần"); // Fade Height LSTR MSG_SET_HOME_OFFSETS = _UxGT("Đặt bù đắp nhà"); // Set home offsets LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Bù đắp được áp dụng"); // Offsets applied - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" trước"); // Preheat - LSTR MSG_PREHEAT_1_H = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" trước ~"); // Preheat - LSTR MSG_PREHEAT_1_END = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Đầu"); - LSTR MSG_PREHEAT_1_END_E = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Đầu ~"); - LSTR MSG_PREHEAT_1_ALL = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Tất cả"); // All - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Bàn"); // Bed -- using vietnamese term for 'table' instead - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Cấu hình"); // Conf - LSTR MSG_PREHEAT_M = _UxGT("Làm nóng $ trước"); // Preheat - LSTR MSG_PREHEAT_M_H = _UxGT("Làm nóng $ trước ~"); // Preheat - LSTR MSG_PREHEAT_M_END = _UxGT("Làm nóng $ Đầu"); - LSTR MSG_PREHEAT_M_END_E = _UxGT("Làm nóng $ Đầu ~"); - LSTR MSG_PREHEAT_M_ALL = _UxGT("Làm nóng $ Tất cả"); // All - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Làm nóng $ Bàn"); // Bed -- using vietnamese term for 'table' instead - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Làm nóng $ Cấu hình"); // Conf - #endif + LSTR MSG_PREHEAT_1 = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" trước"); // Preheat + LSTR MSG_PREHEAT_1_H = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" trước ~"); // Preheat + LSTR MSG_PREHEAT_1_END = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Đầu"); + LSTR MSG_PREHEAT_1_END_E = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Đầu ~"); + LSTR MSG_PREHEAT_1_ALL = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Tất cả"); // All + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Bàn"); // Bed -- using vietnamese term for 'table' instead + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Làm nóng ") PREHEAT_1_LABEL _UxGT(" Cấu hình"); // Conf + + LSTR MSG_PREHEAT_M = _UxGT("Làm nóng $ trước"); // Preheat + LSTR MSG_PREHEAT_M_H = _UxGT("Làm nóng $ trước ~"); // Preheat + LSTR MSG_PREHEAT_M_END = _UxGT("Làm nóng $ Đầu"); + LSTR MSG_PREHEAT_M_END_E = _UxGT("Làm nóng $ Đầu ~"); + LSTR MSG_PREHEAT_M_ALL = _UxGT("Làm nóng $ Tất cả"); // All + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Làm nóng $ Bàn"); // Bed -- using vietnamese term for 'table' instead + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Làm nóng $ Cấu hình"); // Conf + LSTR MSG_PREHEAT_CUSTOM = _UxGT("Sự nóng trước tự chọn"); // Preheat Custom LSTR MSG_COOLDOWN = _UxGT("Nguội xuống"); // Cooldown LSTR MSG_SWITCH_PS_ON = _UxGT("Bật nguồn"); // Switch power on @@ -125,10 +125,8 @@ namespace Language_vi { LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("Chỉnh sửa xong lưới"); // Done Editing Mesh LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("Xây dựng lưới tự chọn"); // Build Custom Mesh LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("Xây dựng lưới"); // Build Mesh - #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Xây dựng lưới ($)"); - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Thẩm tra lưới ($)"); - #endif + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("Xây dựng lưới ($)"); + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("Thẩm tra lưới ($)"); LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("Xây dựng lưới lạnh"); // Build cold mesh LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("Điều chỉnh chiều cao lưới"); // Adjust Mesh Height LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("Số lượng chiều cao"); // Height Amount @@ -439,3 +437,20 @@ namespace Language_vi { LSTR MSG_SHORT_HOUR = _UxGT("g"); // h - giờ - One character only LSTR MSG_SHORT_MINUTE = _UxGT("p"); // m - phút - One character only } + +namespace LanguageWide_vi { + using namespace LanguageNarrow_vi; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + #endif +} + +namespace LanguageTall_vi { + using namespace LanguageWide_vi; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + #endif +} + +namespace Language_vi { + using namespace LanguageTall_vi; +} diff --git a/Marlin/src/lcd/language/language_zh_CN.h b/Marlin/src/lcd/language/language_zh_CN.h index 03c8d80bca74..7f4d5af37456 100644 --- a/Marlin/src/lcd/language/language_zh_CN.h +++ b/Marlin/src/lcd/language/language_zh_CN.h @@ -27,7 +27,7 @@ * LCD Menu Messages * See also https://marlinfw.org/docs/development/lcd_language.html */ -namespace Language_zh_CN { +namespace LanguageNarrow_zh_CN { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 3; @@ -68,23 +68,23 @@ namespace Language_zh_CN { LSTR MSG_Z_FADE_HEIGHT = _UxGT("淡出高度"); // "Fade Height" LSTR MSG_SET_HOME_OFFSETS = _UxGT("设置原点偏移"); // "Set home offsets" LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("偏移已启用"); // "Offsets applied" - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("预热 ") PREHEAT_1_LABEL; // "Preheat PREHEAT_2_LABEL" - LSTR MSG_PREHEAT_1_H = _UxGT("预热 ") PREHEAT_1_LABEL " ~"; // "Preheat PREHEAT_2_LABEL" - LSTR MSG_PREHEAT_1_END = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 喷嘴"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_1_END_E = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 喷嘴 ~"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_1_ALL = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 全部"); //MSG_PREHEAT_1 " All" - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 热床"); //MSG_PREHEAT_1 " Bed" - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 设置"); //MSG_PREHEAT_1 " conf" - LSTR MSG_PREHEAT_M = _UxGT("预热 $"); // "Preheat PREHEAT_2_LABEL" - LSTR MSG_PREHEAT_M_H = _UxGT("预热 $ ~"); // "Preheat PREHEAT_2_LABEL" - LSTR MSG_PREHEAT_M_END = _UxGT("预热 $ 喷嘴"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_M_END_E = _UxGT("预热 $ 喷嘴 ~"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_M_ALL = _UxGT("预热 $ 全部"); //MSG_PREHEAT_1 " All" - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("预热 $ 热床"); //MSG_PREHEAT_1 " Bed" - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("预热 $ 设置"); //MSG_PREHEAT_1 " conf" - #endif + LSTR MSG_PREHEAT_1 = _UxGT("预热 ") PREHEAT_1_LABEL; // "Preheat PREHEAT_2_LABEL" + LSTR MSG_PREHEAT_1_H = _UxGT("预热 ") PREHEAT_1_LABEL " ~"; // "Preheat PREHEAT_2_LABEL" + LSTR MSG_PREHEAT_1_END = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 喷嘴"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_1_END_E = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 喷嘴 ~"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_1_ALL = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 全部"); //MSG_PREHEAT_1 " All" + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 热床"); //MSG_PREHEAT_1 " Bed" + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("预热 ") PREHEAT_1_LABEL _UxGT(" 设置"); //MSG_PREHEAT_1 " conf" + + LSTR MSG_PREHEAT_M = _UxGT("预热 $"); // "Preheat PREHEAT_2_LABEL" + LSTR MSG_PREHEAT_M_H = _UxGT("预热 $ ~"); // "Preheat PREHEAT_2_LABEL" + LSTR MSG_PREHEAT_M_END = _UxGT("预热 $ 喷嘴"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_M_END_E = _UxGT("预热 $ 喷嘴 ~"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_M_ALL = _UxGT("预热 $ 全部"); //MSG_PREHEAT_1 " All" + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("预热 $ 热床"); //MSG_PREHEAT_1 " Bed" + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("预热 $ 设置"); //MSG_PREHEAT_1 " conf" + LSTR MSG_PREHEAT_CUSTOM = _UxGT("预热自定义"); LSTR MSG_COOLDOWN = _UxGT("降温"); // "Cooldown" LSTR MSG_CUTTER_FREQUENCY = _UxGT("切割频率"); @@ -142,10 +142,8 @@ namespace Language_zh_CN { LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("完成编辑网格"); // "Done Editing Mesh" LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("创设客户网格"); // "Build Custom Mesh" LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("创设网格"); // "Build Mesh" - #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("创设 $ 网格"); // "Build PREHEAT_1_LABEL Mesh" - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("批准 $ 网格"); // "Validate PREHEAT_1_LABEL Mesh" - #endif + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("创设 $ 网格"); // "Build PREHEAT_1_LABEL Mesh" + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("批准 $ 网格"); // "Validate PREHEAT_1_LABEL Mesh" LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("创设冷网格"); // "Build Cold Mesh" LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("调整网格高度"); // "Adjust Mesh Height" LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("高度合计"); // "Height Amount" @@ -476,19 +474,11 @@ namespace Language_zh_CN { LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("打印机不正确"); // "The printer is incorrect" - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("打印计数"); // "Print Count" - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("完成了"); // "Completed" - LSTR MSG_INFO_PRINT_TIME = _UxGT("总打印时间"); // "Total print time" - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最长工作时间"); // "Longest job time" - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("总计挤出"); // "Extruded total" - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("打印数"); // "Prints" - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("完成"); // "Completed" - LSTR MSG_INFO_PRINT_TIME = _UxGT("总共"); // "Total" - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最长"); // "Longest" - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("已挤出"); // "Extruded" - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("打印数"); // "Prints" + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("完成"); // "Completed" + LSTR MSG_INFO_PRINT_TIME = _UxGT("总共"); // "Total" + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最长"); // "Longest" + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("已挤出"); // "Extruded" LSTR MSG_INFO_MIN_TEMP = _UxGT("最低温度"); // "Min Temp" LSTR MSG_INFO_MAX_TEMP = _UxGT("最高温度"); // "Max Temp" @@ -560,34 +550,20 @@ namespace Language_zh_CN { LSTR MSG_BAD_PAGE_SPEED = _UxGT("错误页面速度"); // - // Filament Change screens show up to 3 lines on a 4-line display - // ...or up to 2 lines on a 3-line display + // Filament Change screens show up to 2 lines on a 3-line display // - #if LCD_HEIGHT >= 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("按下按钮", "恢复打印")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("停靠中...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("等待开始", "丝料", "变更")); // "Wait for start of the filament change" - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("插入料", "并按下", "以继续")); - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("按下按钮来", "加热喷嘴.")); // "Press button to heat nozzle." - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("加热喷嘴", "请等待 ...")); // "Heating nozzle Please wait..." - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("等待", "卸下丝料")); // "Wait for filament unload" - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("等待", "进料")); // "Wait for filament load" - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("等待", "丝料清除")); // "Wait for filament purge" - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("按下已完成", "料的清洗")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("等待打印", "恢复")); // "Wait for print to resume" - #else - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("按下继续")); - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("停靠中...")); - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("请等待 ...")); // "Please wait..." - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("插入并单击")); // "Insert and Click" - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("按下加热")); - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("加热中 ...")); // "Heating..." - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("退出中 ...")); // "Ejecting..." - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("装载中 ...")); // "Loading..." - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("清除中 ...")); // "Purging..." - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("按下完成")); - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("恢复中 ...")); // "Resuming..." - #endif + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("按下继续")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("停靠中...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("请等待 ...")); // "Please wait..." + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("插入并单击")); // "Insert and Click" + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("按下加热")); + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("加热中 ...")); // "Heating..." + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("退出中 ...")); // "Ejecting..." + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("装载中 ...")); // "Loading..." + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("清除中 ...")); // "Purging..." + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("按下完成")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("恢复中 ...")); // "Resuming..." + LSTR MSG_TMC_DRIVERS = _UxGT("TMC驱动器"); LSTR MSG_TMC_CURRENT = _UxGT("驱动电流"); LSTR MSG_TMC_HYBRID_THRS = _UxGT("混合阈值"); @@ -610,3 +586,36 @@ namespace Language_zh_CN { LSTR MSG_SHORT_HOUR = _UxGT("时"); // "h" // One character only LSTR MSG_SHORT_MINUTE = _UxGT("分"); // "m" // One character only } + +namespace LanguageWide_zh_CN { + using namespace LanguageNarrow_zh_CN; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("打印计数"); // "Print Count" + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("完成了"); // "Completed" + LSTR MSG_INFO_PRINT_TIME = _UxGT("总打印时间"); // "Total print time" + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最长工作时间"); // "Longest job time" + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("总计挤出"); // "Extruded total" + #endif +} + +namespace LanguageTall_zh_CN { + using namespace LanguageWide_zh_CN; + #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("按下按钮", "恢复打印")); + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("停靠中...")); + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("等待开始", "丝料", "变更")); // "Wait for start of the filament change" + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("插入料", "并按下", "以继续")); + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("按下按钮来", "加热喷嘴.")); // "Press button to heat nozzle." + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("加热喷嘴", "请等待 ...")); // "Heating nozzle Please wait..." + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("等待", "卸下丝料")); // "Wait for filament unload" + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("等待", "进料")); // "Wait for filament load" + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("等待", "丝料清除")); // "Wait for filament purge" + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("按下已完成", "料的清洗")); + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("等待打印", "恢复")); // "Wait for print to resume" + #endif +} + +namespace Language_zh_CN { + using namespace LanguageTall_zh_CN; +} diff --git a/Marlin/src/lcd/language/language_zh_TW.h b/Marlin/src/lcd/language/language_zh_TW.h index 968ad4424e19..b22a3cd1ac92 100644 --- a/Marlin/src/lcd/language/language_zh_TW.h +++ b/Marlin/src/lcd/language/language_zh_TW.h @@ -27,7 +27,7 @@ * LCD Menu Messages * See also https://marlinfw.org/docs/development/lcd_language.html */ -namespace Language_zh_TW { +namespace LanguageNarrow_zh_TW { using namespace Language_en; // Inherit undefined strings from English constexpr uint8_t CHARSIZE = 3; @@ -65,23 +65,23 @@ namespace Language_zh_TW { LSTR MSG_Z_FADE_HEIGHT = _UxGT("淡出高度"); // "Fade Height" LSTR MSG_SET_HOME_OFFSETS = _UxGT("設置原點偏移"); // "Set home offsets" LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("偏移已啟用"); // "Offsets applied" - #if HAS_PREHEAT - LSTR MSG_PREHEAT_1 = _UxGT("預熱 ") PREHEAT_1_LABEL; // "Preheat PREHEAT_1_LABEL" - LSTR MSG_PREHEAT_1_H = _UxGT("預熱 ") PREHEAT_1_LABEL " ~"; // "Preheat PREHEAT_1_LABEL" - LSTR MSG_PREHEAT_1_END = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 噴嘴"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_1_END_E = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 噴嘴 ~"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_1_ALL = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 全部"); //MSG_PREHEAT_1 " All" - LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 熱床"); //MSG_PREHEAT_1 " Bed" - LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 設置"); //MSG_PREHEAT_1 " conf" - LSTR MSG_PREHEAT_M = _UxGT("預熱 $"); // "Preheat PREHEAT_1_LABEL" - LSTR MSG_PREHEAT_M_H = _UxGT("預熱 $ ~"); // "Preheat PREHEAT_1_LABEL" - LSTR MSG_PREHEAT_M_END = _UxGT("預熱 $ 噴嘴"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_M_END_E = _UxGT("預熱 $ 噴嘴 ~"); //MSG_PREHEAT_1 " " - LSTR MSG_PREHEAT_M_ALL = _UxGT("預熱 $ 全部"); //MSG_PREHEAT_1 " All" - LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("預熱 $ 熱床"); //MSG_PREHEAT_1 " Bed" - LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("預熱 $ 設置"); //MSG_PREHEAT_1 " conf" - #endif + LSTR MSG_PREHEAT_1 = _UxGT("預熱 ") PREHEAT_1_LABEL; // "Preheat PREHEAT_1_LABEL" + LSTR MSG_PREHEAT_1_H = _UxGT("預熱 ") PREHEAT_1_LABEL " ~"; // "Preheat PREHEAT_1_LABEL" + LSTR MSG_PREHEAT_1_END = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 噴嘴"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_1_END_E = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 噴嘴 ~"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_1_ALL = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 全部"); //MSG_PREHEAT_1 " All" + LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 熱床"); //MSG_PREHEAT_1 " Bed" + LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("預熱 ") PREHEAT_1_LABEL _UxGT(" 設置"); //MSG_PREHEAT_1 " conf" + + LSTR MSG_PREHEAT_M = _UxGT("預熱 $"); // "Preheat PREHEAT_1_LABEL" + LSTR MSG_PREHEAT_M_H = _UxGT("預熱 $ ~"); // "Preheat PREHEAT_1_LABEL" + LSTR MSG_PREHEAT_M_END = _UxGT("預熱 $ 噴嘴"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_M_END_E = _UxGT("預熱 $ 噴嘴 ~"); //MSG_PREHEAT_1 " " + LSTR MSG_PREHEAT_M_ALL = _UxGT("預熱 $ 全部"); //MSG_PREHEAT_1 " All" + LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("預熱 $ 熱床"); //MSG_PREHEAT_1 " Bed" + LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("預熱 $ 設置"); //MSG_PREHEAT_1 " conf" + LSTR MSG_PREHEAT_CUSTOM = _UxGT("自定預熱"); // "Preheat Custom" LSTR MSG_COOLDOWN = _UxGT("降溫"); // "Cooldown" LSTR MSG_LASER_MENU = _UxGT("激光控制"); // "Laser Control" @@ -138,10 +138,8 @@ namespace Language_zh_TW { LSTR MSG_UBL_DONE_EDITING_MESH = _UxGT("完成編輯網格"); // "Done Editing Mesh" LSTR MSG_UBL_BUILD_CUSTOM_MESH = _UxGT("創設客戶網格"); // "Build Custom Mesh" LSTR MSG_UBL_BUILD_MESH_MENU = _UxGT("創設網格"); // "Build Mesh" - #if HAS_PREHEAT - LSTR MSG_UBL_BUILD_MESH_M = _UxGT("創設 $ 網格"); // "Build PREHEAT_1_LABEL Mesh" - LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("批准 $ 網格"); // "Validate PREHEAT_1_LABEL Mesh" - #endif + LSTR MSG_UBL_BUILD_MESH_M = _UxGT("創設 $ 網格"); // "Build PREHEAT_1_LABEL Mesh" + LSTR MSG_UBL_VALIDATE_MESH_M = _UxGT("批准 $ 網格"); // "Validate PREHEAT_1_LABEL Mesh" LSTR MSG_UBL_BUILD_COLD_MESH = _UxGT("創設冷網格"); // "Build Cold Mesh" LSTR MSG_UBL_MESH_HEIGHT_ADJUST = _UxGT("調整網格高度"); // "Adjust Mesh Height" LSTR MSG_UBL_MESH_HEIGHT_AMOUNT = _UxGT("高度合計"); // "Height Amount" @@ -424,19 +422,11 @@ namespace Language_zh_TW { LSTR MSG_CASE_LIGHT_BRIGHTNESS = _UxGT("燈亮度"); // "Light BRIGHTNESS" LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("打印機不正確"); // "The printer is incorrect" - #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 - LSTR MSG_INFO_PRINT_COUNT = _UxGT("列印計數"); // "Print Count" - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("已完成"); // "Completed" - LSTR MSG_INFO_PRINT_TIME = _UxGT("總列印時間"); // "Total print time" - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最長工作時間"); // "Longest job time" - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("總計擠出"); // "Extruded total" - #else - LSTR MSG_INFO_PRINT_COUNT = _UxGT("列印數"); // "Prints" - LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("完成"); // "Completed" - LSTR MSG_INFO_PRINT_TIME = _UxGT("總共"); // "Total" - LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最長"); // "Longest" - LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("已擠出"); // "Extruded" - #endif + LSTR MSG_INFO_PRINT_COUNT = _UxGT("列印數"); // "Prints" + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("完成"); // "Completed" + LSTR MSG_INFO_PRINT_TIME = _UxGT("總共"); // "Total" + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最長"); // "Longest" + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("已擠出"); // "Extruded" LSTR MSG_INFO_MIN_TEMP = _UxGT("最低溫度"); // "Min Temp" LSTR MSG_INFO_MAX_TEMP = _UxGT("最高溫度"); // "Max Temp" @@ -459,10 +449,40 @@ namespace Language_zh_TW { LSTR MSG_LCD_PROBING_FAILED = _UxGT("探針探測失敗"); // "Probing failed" // - // Filament Change screens show up to 3 lines on a 4-line display - // ...or up to 2 lines on a 3-line display + // Filament Change screens show up to 2 lines on a 3-line display // + LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("按下繼續..")); // "Click to continue" + LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("停車中 ...")); // "Parking..." + LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("請等待 ...")); // "Please wait..." + LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("插入並點擊")); // "Insert and Click" + LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("按下加熱..")); // "Click to heat" + LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("加熱中 ...")); // "Heating..." + LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("退出中 ...")); // "Ejecting..." + LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("載入中 ...")); // "Loading..." + LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("清除中 ...")); // "Purging..." + LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("按下完成..")); // "Click to finish" + LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("恢復中 ...")); // "Resuming..." + + LSTR MSG_SHORT_DAY = _UxGT("天"); // "d" // One character only + LSTR MSG_SHORT_HOUR = _UxGT("時"); // "h" // One character only + LSTR MSG_SHORT_MINUTE = _UxGT("分"); // "m" // One character only +} + +namespace LanguageWide_zh_TW { + using namespace LanguageNarrow_zh_TW; + #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2 + LSTR MSG_INFO_PRINT_COUNT = _UxGT("列印計數"); // "Print Count" + LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("已完成"); // "Completed" + LSTR MSG_INFO_PRINT_TIME = _UxGT("總列印時間"); // "Total print time" + LSTR MSG_INFO_PRINT_LONGEST = _UxGT("最長工作時間"); // "Longest job time" + LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("總計擠出"); // "Extruded total" + #endif +} + +namespace LanguageTall_zh_TW { + using namespace LanguageWide_zh_TW; #if LCD_HEIGHT >= 4 + // Filament Change screens show up to 3 lines on a 4-line display LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_2_LINE("按下按鈕", "恢復列印")); //"Press Button to resume print" LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("停車中 ...")); // "Parking..." LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("等待開始", "絲料", "變更")); // "Wait for start of the filament change" @@ -474,21 +494,9 @@ namespace Language_zh_TW { LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_2_LINE("等待", "絲料清除")); // "Wait for filament purge" LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_2_LINE("按下完成","絲料清除")); //"Press button to filament purge" LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("等待列印", "恢復")); // "Wait for print to resume" - #else // LCD_HEIGHT < 4 - LSTR MSG_ADVANCED_PAUSE_WAITING = _UxGT(MSG_1_LINE("按下繼續..")); // "Click to continue" - LSTR MSG_PAUSE_PRINT_PARKING = _UxGT(MSG_1_LINE("停車中 ...")); // "Parking..." - LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("請等待 ...")); // "Please wait..." - LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("插入並點擊")); // "Insert and Click" - LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_1_LINE("按下加熱..")); // "Click to heat" - LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("加熱中 ...")); // "Heating..." - LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("退出中 ...")); // "Ejecting..." - LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("載入中 ...")); // "Loading..." - LSTR MSG_FILAMENT_CHANGE_PURGE = _UxGT(MSG_1_LINE("清除中 ...")); // "Purging..." - LSTR MSG_FILAMENT_CHANGE_CONT_PURGE = _UxGT(MSG_1_LINE("按下完成..")); // "Click to finish" - LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("恢復中 ...")); // "Resuming..." - #endif // LCD_HEIGHT < 4 + #endif +} - LSTR MSG_SHORT_DAY = _UxGT("天"); // "d" // One character only - LSTR MSG_SHORT_HOUR = _UxGT("時"); // "h" // One character only - LSTR MSG_SHORT_MINUTE = _UxGT("分"); // "m" // One character only +namespace Language_zh_TW { + using namespace LanguageTall_zh_TW; } diff --git a/Marlin/src/lcd/menu/menu_main.cpp b/Marlin/src/lcd/menu/menu_main.cpp index 5ad5d18c0e63..1bf380e3608c 100644 --- a/Marlin/src/lcd/menu/menu_main.cpp +++ b/Marlin/src/lcd/menu/menu_main.cpp @@ -307,9 +307,11 @@ void menu_main() { #if HAS_SD_DETECT ACTION_ITEM(MSG_NO_MEDIA, nullptr); // "No Media" #else - GCODES_ITEM(MSG_ATTACH_MEDIA, F("M21" TERN_(MULTI_VOLUME, "S"))); // M21 Attach Media #if ENABLED(MULTI_VOLUME) - GCODES_ITEM(MSG_ATTACH_USB_MEDIA, F("M21U")); // M21 Attach USB Media + GCODES_ITEM(MSG_ATTACH_SD_MEDIA, F("M21S")); // M21S Attach SD Card + GCODES_ITEM(MSG_ATTACH_USB_MEDIA, F("M21U")); // M21U Attach USB Media + #else + GCODES_ITEM(MSG_ATTACH_MEDIA, F("M21")); // M21 Attach Media #endif #endif } @@ -422,10 +424,12 @@ void menu_main() { #if HAS_SD_DETECT ACTION_ITEM(MSG_NO_MEDIA, nullptr); // "No Media" #else - GCODES_ITEM(MSG_ATTACH_MEDIA, F("M21" TERN_(MULTI_VOLUME, "S"))); // M21 Attach Media - #if ENABLED(MULTI_VOLUME) - GCODES_ITEM(MSG_ATTACH_USB_MEDIA, F("M21U")); // M21 Attach USB Media - #endif + #if ENABLED(MULTI_VOLUME) + GCODES_ITEM(MSG_ATTACH_SD_MEDIA, F("M21S")); // M21S Attach SD Card + GCODES_ITEM(MSG_ATTACH_USB_MEDIA, F("M21U")); // M21U Attach USB Media + #else + GCODES_ITEM(MSG_ATTACH_MEDIA, F("M21")); // M21 Attach Media + #endif #endif } // END MEDIA MENU diff --git a/buildroot/share/scripts/__init__.py b/buildroot/share/scripts/__init__.py new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/buildroot/share/scripts/exportTranslations.py b/buildroot/share/scripts/languageExport.py similarity index 65% rename from buildroot/share/scripts/exportTranslations.py rename to buildroot/share/scripts/languageExport.py index 620c2e77b1c2..46485aa1241c 100755 --- a/buildroot/share/scripts/exportTranslations.py +++ b/buildroot/share/scripts/languageExport.py @@ -1,19 +1,21 @@ #!/usr/bin/env python3 -# -# exportTranslations.py -# -# Export LCD language strings to CSV files for easier translation. -# Use importTranslations.py to import CSV into the language files. -# +''' +languageExport.py + +Export LCD language strings to CSV files for easier translation. +Use importTranslations.py to import CSV into the language files. + +''' import re from pathlib import Path +from languageUtil import namebyid + +LANGHOME = "Marlin/src/lcd/language" # Write multiple sheets if true, otherwise write one giant sheet MULTISHEET = True - -# Where to look for the language files -LANGHOME = "Marlin/src/lcd/language" +OUTDIR = 'out-csv' # Check for the path to the language files if not Path(LANGHOME).is_dir(): @@ -21,39 +23,6 @@ print("Edit LANGHOME or cd to the root of the repo before running.") exit(1) -# A dictionary to contain language names -LANGNAME = { - 'an': "Aragonese", - 'bg': "Bulgarian", - 'ca': "Catalan", - 'cz': "Czech", - 'da': "Danish", - 'de': "German", - 'el': "Greek", 'el_CY': "Greek (Cyprus)", 'el_gr': "Greek (Greece)", - 'en': "English", - 'es': "Spanish", - 'eu': "Basque-Euskera", - 'fi': "Finnish", - 'fr': "French", 'fr_na': "French (no accent)", - 'gl': "Galician", - 'hr': "Croatian (Hrvatski)", - 'hu': "Hungarian / Magyar", - 'it': "Italian", - 'jp_kana': "Japanese (Kana)", - 'ko_KR': "Korean", - 'nl': "Dutch", - 'pl': "Polish", - 'pt': "Portuguese", 'pt_br': "Portuguese (Brazil)", - 'ro': "Romanian", - 'ru': "Russian", - 'sk': "Slovak", - 'sv': "Swedish", - 'tr': "Turkish", - 'uk': "Ukrainian", - 'vi': "Vietnamese", - 'zh_CN': "Simplified Chinese", 'zh_TW': "Traditional Chinese" -} - # A limit just for testing LIMIT = 0 @@ -80,8 +49,7 @@ if not f: continue # Flags to indicate a wide or tall section - wideflag = False - tallflag = False + wideflag, tallflag = False, False # A counter for the number of strings in the file stringcount = 0 # A dictionary to hold all the strings @@ -94,25 +62,20 @@ # Check for wide or tall sections, assume no complicated nesting if line.startswith("#endif") or line.startswith("#else"): - wideflag = False - tallflag = False + wideflag, tallflag = False, False elif re.match(r'#if.*WIDTH\s*>=?\s*2[01].*', line): wideflag = True elif re.match(r'#if.*LCD_HEIGHT\s*>=?\s*4.*', line): tallflag = True # For string-defining lines capture the string data match = re.match(r'LSTR\s+([A-Z0-9_]+)\s*=\s*(.+)\s*', line) if match: - # The name is the first captured group - name = match.group(1) - # The value is the second captured group - value = match.group(2) - # Replace escaped quotes temporarily - value = value.replace('\\"', '__Q__') + # Name and quote-sanitized value + name, value = match.group(1), match.group(2).replace('\\"', '$$$') # Remove all _UxGT wrappers from the value in a non-greedy way value = re.sub(r'_UxGT\((".*?")\)', r'\1', value) - # Multi-line strings will get one or more bars | for identification + # Multi-line strings get one or more bars | for identification multiline = 0 multimatch = re.match(r'.*MSG_(\d)_LINE\s*\(\s*(.+?)\s*\).*', value) if multimatch: @@ -122,7 +85,7 @@ # Wrap inline defines in parentheses value = re.sub(r' *([A-Z0-9]+_[A-Z0-9_]+) *', r'(\1)', value) # Remove quotes around strings - value = re.sub(r'"(.*?)"', r'\1', value).replace('__Q__', '"') + value = re.sub(r'"(.*?)"', r'\1', value).replace('$$$', '""') # Store all unique names as dictionary keys names[name] = 1 # Store the string as narrow or wide @@ -144,6 +107,9 @@ # Print the array #print(language_strings) +# Report the total number of unique strings +print("Found %s distinct LCD strings." % len(names)) + # Write a single language entry to the CSV file with narrow, wide, and tall strings def write_csv_lang(f, strings, name): f.write(',') @@ -157,32 +123,27 @@ def write_csv_lang(f, strings, name): # # Export a separate sheet for each language # - OUTDIR = 'csv-out' Path.mkdir(Path(OUTDIR), exist_ok=True) for lang in langcodes: - f = open("%s/language_%s.csv" % (OUTDIR, lang), 'w', encoding='utf-8') - if not f: continue - - lname = lang + ' ' + LANGNAME[lang] - header = ['name', lname, lname + ' (wide)', lname + ' (tall)'] - f.write('"' + '","'.join(header) + '"\n') + with open("%s/language_%s.csv" % (OUTDIR, lang), 'w', encoding='utf-8') as f: + lname = lang + ' ' + namebyid(lang) + header = ['name', lname, lname + ' (wide)', lname + ' (tall)'] + f.write('"' + '","'.join(header) + '"\n') - for name in names.keys(): - f.write('"' + name + '"') - write_csv_lang(f, language_strings[lang], name) - f.write('\n') - f.close() + for name in names.keys(): + f.write('"' + name + '"') + write_csv_lang(f, language_strings[lang], name) + f.write('\n') else: # # Export one large sheet containing all languages # - f = open("languages.csv", 'w', encoding='utf-8') - if f: + with open("languages.csv", 'w', encoding='utf-8') as f: header = ['name'] for lang in langcodes: - lname = lang + ' ' + LANGNAME[lang] + lname = lang + ' ' + namebyid(lang) header += [lname, lname + ' (wide)', lname + ' (tall)'] f.write('"' + '","'.join(header) + '"\n') @@ -190,4 +151,3 @@ def write_csv_lang(f, strings, name): f.write('"' + name + '"') for lang in langcodes: write_csv_lang(f, language_strings[lang], name) f.write('\n') - f.close() diff --git a/buildroot/share/scripts/languageImport.py b/buildroot/share/scripts/languageImport.py new file mode 100755 index 000000000000..a535040ad085 --- /dev/null +++ b/buildroot/share/scripts/languageImport.py @@ -0,0 +1,219 @@ +#!/usr/bin/env python3 +""" +languageImport.py + +Import LCD language strings from a CSV file or Google Sheets +and write Marlin LCD language files based on the data. + +Use languageExport.py to export CSV from the language files. + +Google Sheets Link: +https://docs.google.com/spreadsheets/d/12yiy-kS84ajKFm7oQIrC4CF8ZWeu9pAR4zrgxH4ruk4/edit#gid=84528699 + +TODO: Use the defines and comments above the namespace from existing language files. + Get the 'constexpr uint8_t CHARSIZE' from existing language files. + Get the correct 'using namespace' for languages that don't inherit from English. + +""" + +import sys, re, requests, csv, datetime +from languageUtil import namebyid + +LANGHOME = "Marlin/src/lcd/language" +OUTDIR = 'out-language' + +# Get the file path from the command line +FILEPATH = sys.argv[1] if len(sys.argv) > 1 else None + +download = FILEPATH == 'download' + +if not FILEPATH or download: + SHEETID = "12yiy-kS84ajKFm7oQIrC4CF8ZWeu9pAR4zrgxH4ruk4" + FILEPATH = 'https://docs.google.com/spreadsheet/ccc?key=%s&output=csv' % SHEETID + +if FILEPATH.startswith('http'): + response = requests.get(FILEPATH) + assert response.status_code == 200, 'GET failed for %s' % FILEPATH + csvdata = response.content.decode('utf-8') +else: + if not FILEPATH.endswith('.csv'): FILEPATH += '.csv' + with open(FILEPATH, 'r', encoding='utf-8') as f: csvdata = f.read() + +if not csvdata: + print("Error: couldn't read CSV data from %s" % FILEPATH) + exit(1) + +if download: + DLNAME = sys.argv[2] if len(sys.argv) > 2 else 'languages.csv' + if not DLNAME.endswith('.csv'): DLNAME += '.csv' + with open(DLNAME, 'w', encoding='utf-8') as f: f.write(csvdata) + print("Downloaded %s from %s" % (DLNAME, FILEPATH)) + exit(0) + +lines = csvdata.splitlines() +print(lines) +reader = csv.reader(lines, delimiter=',') +gothead = False +columns = [''] +numcols = 0 +strings_per_lang = {} +for row in reader: + if not gothead: + gothead = True + numcols = len(row) + if row[0] != 'name': + print('Error: first column should be "name"') + exit(1) + # The rest of the columns are language codes and names + for i in range(1, numcols): + elms = row[i].split(' ') + lang = elms[0] + style = ('Wide' if elms[-1] == '(wide)' else 'Tall' if elms[-1] == '(tall)' else 'Narrow') + columns.append({ 'lang': lang, 'style': style }) + if not lang in strings_per_lang: strings_per_lang[lang] = {} + if not style in strings_per_lang[lang]: strings_per_lang[lang][style] = {} + continue + # Add the named string for all the included languages + name = row[0] + for i in range(1, numcols): + str = row[i] + if str: + col = columns[i] + strings_per_lang[col['lang']][col['style']][name] = str + +# Create a folder for the imported language outfiles +from pathlib import Path +Path.mkdir(Path(OUTDIR), exist_ok=True) + +FILEHEADER = ''' +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +/** + * %s + * + * LCD Menu Messages + * See also https://marlinfw.org/docs/development/lcd_language.html + * + * Substitutions are applied for the following characters when used in menu items titles: + * + * $ displays an inserted string + * { displays '0'....'10' for indexes 0 - 10 + * ~ displays '1'....'11' for indexes 0 - 10 + * * displays 'E1'...'E11' for indexes 0 - 10 (By default. Uses LCD_FIRST_TOOL) + * @ displays an axis name such as XYZUVW, or E for an extruder + */ + +''' + +# Iterate over the languages which correspond to the columns +# The columns are assumed to be grouped by language in the order Narrow, Wide, Tall +# TODO: Go through lang only, then impose the order Narrow, Wide, Tall. +# So if something is missing or out of order everything still gets built correctly. + +f = None +gotlang = {} +for i in range(1, numcols): + #if i > 6: break # Testing + col = columns[i] + lang, style = col['lang'], col['style'] + + # If we haven't already opened a file for this language, do so now + if not lang in gotlang: + gotlang[lang] = {} + if f: f.close() + fn = "%s/language_%s.h" % (OUTDIR, lang) + f = open(fn, 'w', encoding='utf-8') + if not f: + print("Failed to open %s." % fn) + exit(1) + + # Write the opening header for the new language file + #f.write(FILEHEADER % namebyid(lang)) + f.write('/**\n * Imported from %s on %s at %s\n */\n' % (FILEPATH, datetime.date.today(), datetime.datetime.now().strftime("%H:%M:%S"))) + + # Start a namespace for the language and style + f.write('\nnamespace Language%s_%s {\n' % (style, lang)) + + # Wide and tall namespaces inherit from the others + if style == 'Wide': + f.write(' using namespace LanguageNarrow_%s;\n' % lang) + f.write(' #if LCD_WIDTH >= 20 || HAS_DWIN_E3V2\n') + elif style == 'Tall': + f.write(' using namespace LanguageWide_%s;\n' % lang) + f.write(' #if LCD_HEIGHT >= 4\n') + elif lang != 'en': + f.write(' using namespace Language_en; // Inherit undefined strings from English\n') + + # Formatting for the lines + indent = ' ' if style == 'Narrow' else ' ' + width = 34 if style == 'Narrow' else 32 + lstr_fmt = '%sLSTR %%-%ds = %%s;%%s\n' % (indent, width) + + # Emit all the strings for this language and style + for name in strings_per_lang[lang][style].keys(): + # Get the raw string value + val = strings_per_lang[lang][style][name] + # Count the number of bars + if val.startswith('|'): + bars = val.count('|') + val = val[1:] + else: + bars = 0 + # Escape backslashes, substitute quotes, and wrap in _UxGT("...") + val = '_UxGT("%s")' % val.replace('\\', '\\\\').replace('"', '$$$') + # Move named references outside of the macro + val = re.sub(r'\(([A-Z0-9]+_[A-Z0-9_]+)\)', r'") \1 _UxGT("', val) + # Remove all empty _UxGT("") that result from the above + val = re.sub(r'\s*_UxGT\(""\)\s*', '', val) + # No wrapper needed for just spaces + val = re.sub(r'_UxGT\((" +")\)', r'\1', val) + # Multi-line strings start with a bar... + if bars: + # Wrap the string in MSG_#_LINE(...) and split on bars + val = re.sub(r'^_UxGT\((.+)\)', r'_UxGT(MSG_%s_LINE(\1))' % bars, val) + val = val.replace('|', '", "') + # Restore quotes inside the string + val = val.replace('$$$', '\\"') + # Add a comment with the English string for reference + comm = '' + if lang != 'en' and 'en' in strings_per_lang: + en = strings_per_lang['en'] + if name in en[style]: str = en[style][name] + elif name in en['Narrow']: str = en['Narrow'][name] + if str: + cfmt = '%%%ss// %%s' % (50 - len(val) if len(val) < 50 else 1) + comm = cfmt % (' ', str) + + # Write out the string definition + f.write(lstr_fmt % (name, val, comm)) + + if style == 'Wide' or style == 'Tall': f.write(' #endif\n') + + f.write('}\n') # End namespace + + # Assume the 'Tall' namespace comes last + if style == 'Tall': f.write('\nnamespace Language_%s {\n using namespace LanguageTall_%s;\n}\n' % (lang, lang)) + +# Close the last-opened output file +if f: f.close() diff --git a/buildroot/share/scripts/languageUtil.py b/buildroot/share/scripts/languageUtil.py new file mode 100755 index 000000000000..789561e7b9a4 --- /dev/null +++ b/buildroot/share/scripts/languageUtil.py @@ -0,0 +1,41 @@ +#!/usr/bin/env python3 +# +# marlang.py +# + +# A dictionary to contain language names +LANGNAME = { + 'an': "Aragonese", + 'bg': "Bulgarian", + 'ca': "Catalan", + 'cz': "Czech", + 'da': "Danish", + 'de': "German", + 'el': "Greek", 'el_CY': "Greek (Cyprus)", 'el_gr': "Greek (Greece)", + 'en': "English", + 'es': "Spanish", + 'eu': "Basque-Euskera", + 'fi': "Finnish", + 'fr': "French", 'fr_na': "French (no accent)", + 'gl': "Galician", + 'hr': "Croatian (Hrvatski)", + 'hu': "Hungarian / Magyar", + 'it': "Italian", + 'jp_kana': "Japanese (Kana)", + 'ko_KR': "Korean", + 'nl': "Dutch", + 'pl': "Polish", + 'pt': "Portuguese", 'pt_br': "Portuguese (Brazil)", + 'ro': "Romanian", + 'ru': "Russian", + 'sk': "Slovak", + 'sv': "Swedish", + 'tr': "Turkish", + 'uk': "Ukrainian", + 'vi': "Vietnamese", + 'zh_CN': "Simplified Chinese", 'zh_TW': "Traditional Chinese" +} + +def namebyid(id): + if id in LANGNAME: return LANGNAME[id] + return '' From f766a90f5ff300d02eb6ac7917f2355b71f1f237 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 1 Jul 2023 00:53:49 +0000 Subject: [PATCH 338/427] [cron] Bump distribution date (2023-07-01) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 7bcfb4284a5b..8bba778082fd 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-06-30" +//#define STRING_DISTRIBUTION_DATE "2023-07-01" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index bea99e823a78..5f7753132bba 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-06-30" + #define STRING_DISTRIBUTION_DATE "2023-07-01" #endif /** From b77e2a5020714ad17fc12052093231ad4520ce14 Mon Sep 17 00:00:00 2001 From: Christophe Huriaux Date: Sat, 1 Jul 2023 06:06:08 +0200 Subject: [PATCH 339/427] =?UTF-8?q?=E2=9C=A8=20Ender=203=20S1=20Pro/Plus?= =?UTF-8?q?=20stock=20touchscreen=20(#25905)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/Configuration.h | 6 +- Marlin/Configuration_adv.h | 16 + Marlin/src/core/endianness.h | 76 ++ Marlin/src/core/macros.h | 35 + Marlin/src/feature/runout.cpp | 47 +- Marlin/src/inc/Conditionals_LCD.h | 2 + Marlin/src/inc/MarlinConfig.h | 1 + Marlin/src/inc/SanityCheck.h | 37 +- .../extui/dgus/fysetc/DGUSScreenHandler.cpp | 10 +- .../lcd/extui/dgus_e3s1pro/DGUSDisplay.cpp | 381 ++++++++++ .../src/lcd/extui/dgus_e3s1pro/DGUSDisplay.h | 163 +++++ .../dgus_e3s1pro/DGUSReturnKeyCodeHandler.cpp | 684 ++++++++++++++++++ .../dgus_e3s1pro/DGUSReturnKeyCodeHandler.h | 42 ++ .../lcd/extui/dgus_e3s1pro/DGUSRxHandler.cpp | 168 +++++ .../lcd/extui/dgus_e3s1pro/DGUSRxHandler.h | 128 ++++ .../extui/dgus_e3s1pro/DGUSSDCardHandler.cpp | 39 + .../extui/dgus_e3s1pro/DGUSSDCardHandler.h | 75 ++ .../DGUSSDCardHandler_Advanced.cpp | 157 ++++ .../dgus_e3s1pro/DGUSSDCardHandler_Basic.cpp | 137 ++++ .../extui/dgus_e3s1pro/DGUSScreenHandler.cpp | 549 ++++++++++++++ .../extui/dgus_e3s1pro/DGUSScreenHandler.h | 166 +++++ .../extui/dgus_e3s1pro/DGUSSetupHandler.cpp | 60 ++ .../lcd/extui/dgus_e3s1pro/DGUSSetupHandler.h | 26 + .../lcd/extui/dgus_e3s1pro/DGUSTxHandler.cpp | 223 ++++++ .../lcd/extui/dgus_e3s1pro/DGUSTxHandler.h | 150 ++++ .../lcd/extui/dgus_e3s1pro/config/DGUS_Addr.h | 251 +++++++ .../dgus_e3s1pro/config/DGUS_Constants.h | 57 ++ .../extui/dgus_e3s1pro/config/DGUS_Control.h | 41 ++ .../lcd/extui/dgus_e3s1pro/config/DGUS_Data.h | 199 +++++ .../extui/dgus_e3s1pro/config/DGUS_Screen.h | 106 +++ .../definition/DGUS_ScreenAddrList.cpp | 505 +++++++++++++ .../definition/DGUS_ScreenAddrList.h | 32 + .../definition/DGUS_ScreenSetup.cpp | 44 ++ .../definition/DGUS_ScreenSetup.h | 31 + .../extui/dgus_e3s1pro/definition/DGUS_VP.h | 43 ++ .../dgus_e3s1pro/definition/DGUS_VPList.cpp | 589 +++++++++++++++ .../dgus_e3s1pro/definition/DGUS_VPList.h | 31 + .../extui/dgus_e3s1pro/dgus_e3s1pro_extui.cpp | 165 +++++ .../extui/dgus_reloaded/DGUSScreenHandler.cpp | 36 +- .../extui/dgus_reloaded/config/DGUS_Addr.h | 1 + .../definition/DGUS_ScreenAddrList.cpp | 44 +- ini/features.ini | 1 + 42 files changed, 5478 insertions(+), 76 deletions(-) create mode 100644 Marlin/src/core/endianness.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSDisplay.cpp create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSDisplay.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSReturnKeyCodeHandler.cpp create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSReturnKeyCodeHandler.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSRxHandler.cpp create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSRxHandler.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler.cpp create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler_Advanced.cpp create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler_Basic.cpp create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSScreenHandler.cpp create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSScreenHandler.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSetupHandler.cpp create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSetupHandler.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSTxHandler.cpp create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/DGUSTxHandler.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Addr.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Constants.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Control.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Data.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Screen.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenAddrList.cpp create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenAddrList.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenSetup.cpp create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenSetup.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_VP.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_VPList.cpp create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_VPList.h create mode 100644 Marlin/src/lcd/extui/dgus_e3s1pro/dgus_e3s1pro_extui.cpp diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index b573d2d9ec79..b21eba76a00b 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -3107,13 +3107,17 @@ * - Download https://github.com/InsanityAutomation/Marlin/raw/CrealityDwin_2.0/TM3D_Combined480272_Landscape_V7.7z * - Copy the downloaded DWIN_SET folder to the SD card. * + * E3S1PRO (T5UID1) + * - Download https://github.com/CrealityOfficial/Ender-3S1/archive/3S1_Plus_Screen.zip + * - Copy the downloaded DWIN_SET folder to the SD card. + * * Flash display with DGUS Displays for Marlin: * - Format the SD card to FAT32 with an allocation size of 4kb. * - Download files as specified for your type of display. * - Plug the microSD card into the back of the display. * - Boot the display and wait for the update to complete. * - * :[ 'ORIGIN', 'FYSETC', 'HYPRECY', 'MKS', 'RELOADED', 'IA_CREALITY' ] + * :[ 'ORIGIN', 'FYSETC', 'HYPRECY', 'MKS', 'RELOADED', 'IA_CREALITY', 'E3S1PRO' ] */ //#define DGUS_LCD_UI ORIGIN #if DGUS_UI_IS(MKS) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index be54354d5c0c..4d0791c341af 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -2015,6 +2015,22 @@ #define DGUS_UI_WAITING_STATUS 10 #define DGUS_UI_WAITING_STATUS_PERIOD 8 // Increase to slower waiting status looping #endif + + #elif DGUS_UI_IS(E3S1PRO) + /** + * The stock Ender-3 S1 Pro/Plus display firmware has rather poor SD file handling. + * + * The autoscroll is mainly useful for status messages, filenames, and the "About" page. + * + * NOTE: The Advanced SD Card option is affected by the stock touchscreen firmware, so + * pages 5 and up will display "4/4". This may get fixed in a screen firmware update. + */ + #define DGUS_SOFTWARE_AUTOSCROLL // Enable long text software auto-scroll + #define DGUS_AUTOSCROLL_START_CYCLES 1 // Refresh cycles without scrolling at the beginning of text strings + #define DGUS_AUTOSCROLL_END_CYCLES 1 // ... at the end of text strings + + #define DGUS_ADVANCED_SDCARD // Allow more than 20 files and navigating directories + #define DGUS_USERCONFIRM // Reuse the SD Card page to show various messages #endif #endif // HAS_DGUS_LCD diff --git a/Marlin/src/core/endianness.h b/Marlin/src/core/endianness.h new file mode 100644 index 000000000000..8fa8e40078da --- /dev/null +++ b/Marlin/src/core/endianness.h @@ -0,0 +1,76 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "../core/types.h" +#include "../core/macros.h" + +#ifdef __cplusplus + +namespace Endianness { + static constexpr uint32_t _dword = 0x01020304; + static constexpr uint8_t _lsb = (const uint8_t&)_dword; + + static constexpr bool cpuIsLittleEndian = _lsb == 0x04; + static constexpr bool cpuIsBigEndian = _lsb == 0x01; + static_assert(cpuIsLittleEndian ^ cpuIsBigEndian, "Unknown CPU endianness"); + + // constexpr byte swapping for integral types + template static constexpr typename Private::enable_if::value, T>::type swap(T V, T swappedV=(T)0, size_t byteIndex=0) { + return byteIndex == sizeof(T) + ? swappedV + : swap((T)(V >> 8), (swappedV << 8) | (V & (T)0xFF), byteIndex + 1); + } + + // constexpr byte swapping for types derived from integral types (e.g. enums) + template static constexpr typename Private::enable_if< + Private::is_same::type>::value, T>::type swap(T V) { return (T)swap((uint16_t)V); } + template static constexpr typename Private::enable_if< + Private::is_same::type>::value, T>::type swap(T V) { return (T)swap((uint32_t)V); } + template static constexpr typename Private::enable_if< + Private::is_same::type>::value, T>::type swap(T V) { return (T)swap((uint64_t)V); } + + // Generic byte swapping + // CANNOT be used to initialize constexpr declarations + template static constexpr typename Private::enable_if::value && !Private::is_enum::value, T>::type swap(T V) { + union { + T val; + char byte[sizeof(T)]; + } src{}, dst{}; + + src.val = V; + for (uint8_t i = 0; i < sizeof(T); ++i) dst.byte[i] = src.byte[sizeof(T) - i - 1]; + return dst.val; + } + + // Convert to / from known endianness, depending on the host endianness + template static constexpr T toBE(T V) { return cpuIsLittleEndian ? swap(V) : V; } + template static constexpr T toLE(T V) { return cpuIsLittleEndian ? V : swap(V); } + template static constexpr T fromBE(T V) { return cpuIsLittleEndian ? swap(V) : V; } + template static constexpr T fromLE(T V) { return cpuIsLittleEndian ? V : swap(V); } + + // Reads a big/little endian from a pointer and converts it to the host endianness + template static constexpr T fromBE_P(void* V) { return fromBE(*(T*)V); } + template static constexpr T fromLE_P(void* V) { return fromLE(*(T*)V); } +}; + +#endif // __cplusplus diff --git a/Marlin/src/core/macros.h b/Marlin/src/core/macros.h index 565de2436c11..e4b9d479c4e7 100644 --- a/Marlin/src/core/macros.h +++ b/Marlin/src/core/macros.h @@ -408,7 +408,41 @@ template struct first_type_of { typedef T type; }; template struct first_type_of { typedef T type; }; + + // remove const/volatile type qualifiers + template struct remove_const { typedef T type; }; + template struct remove_const { typedef T type; }; + + template struct remove_volatile { typedef T type; }; + template struct remove_volatile { typedef T type; }; + + template struct remove_cv { typedef typename remove_const::type>::type type; }; + + // test if type is integral + template struct _is_integral { enum { value = false }; }; + template<> struct _is_integral { enum { value = true }; }; + template<> struct _is_integral { enum { value = true }; }; + template<> struct _is_integral { enum { value = true }; }; + template<> struct _is_integral { enum { value = true }; }; + template<> struct _is_integral { enum { value = true }; }; + template<> struct _is_integral { enum { value = true }; }; + template<> struct _is_integral { enum { value = true }; }; + template<> struct _is_integral { enum { value = true }; }; + template<> struct _is_integral { enum { value = true }; }; + template<> struct _is_integral { enum { value = true }; }; + template struct is_integral : public _is_integral::type> {}; } + + // enum type check and regression to its underlying integral. + namespace Private { + template struct is_enum { enum { value = __is_enum(T) }; }; + + template::value> struct _underlying_type { using type = __underlying_type(T); }; + template struct _underlying_type { }; + + template struct underlying_type : public _underlying_type { }; + } + // C++11 solution using SFINAE to detect the existence of a member in a class at compile time. // It creates a HasMember structure containing 'value' set to true if the member exists #define HAS_MEMBER_IMPL(Member) \ @@ -712,5 +746,6 @@ #define _UI_MKS 104 #define _UI_RELOADED 105 #define _UI_IA_CREALITY 106 +#define _UI_E3S1PRO 107 #define _DGUS_UI_IS(N) || (CAT(_UI_, DGUS_LCD_UI) == CAT(_UI_, N)) #define DGUS_UI_IS(V...) (0 MAP(_DGUS_UI_IS, V)) diff --git a/Marlin/src/feature/runout.cpp b/Marlin/src/feature/runout.cpp index db325dee7a08..b34e87ca5e81 100644 --- a/Marlin/src/feature/runout.cpp +++ b/Marlin/src/feature/runout.cpp @@ -101,13 +101,16 @@ void event_filament_runout(const uint8_t extruder) { const bool run_runout_script = !runout.host_handling; + const bool park_or_pause = (false + #ifdef FILAMENT_RUNOUT_SCRIPT + || strstr(FILAMENT_RUNOUT_SCRIPT, "M600") + || strstr(FILAMENT_RUNOUT_SCRIPT, "M125") + || TERN0(ADVANCED_PAUSE_FEATURE, strstr(FILAMENT_RUNOUT_SCRIPT, "M25")) + #endif + ); + #if ENABLED(HOST_ACTION_COMMANDS) - if (run_runout_script - && ( strstr(FILAMENT_RUNOUT_SCRIPT, "M600") - || strstr(FILAMENT_RUNOUT_SCRIPT, "M125") - || TERN0(ADVANCED_PAUSE_FEATURE, strstr(FILAMENT_RUNOUT_SCRIPT, "M25")) - ) - ) { + if (run_runout_script && park_or_pause) { hostui.paused(false); } else { @@ -126,22 +129,24 @@ void event_filament_runout(const uint8_t extruder) { SERIAL_EOL(); #endif // HOST_ACTION_COMMANDS - if (run_runout_script) { - #if MULTI_FILAMENT_SENSOR - MString script; - script.setf(F(FILAMENT_RUNOUT_SCRIPT), AS_CHAR(tool)); - #if ENABLED(FILAMENT_RUNOUT_SENSOR_DEBUG) - SERIAL_ECHOLNPGM("Runout Command: ", &script); - #endif - queue.inject(&script); - #else - #if ENABLED(FILAMENT_RUNOUT_SENSOR_DEBUG) - SERIAL_ECHOPGM("Runout Command: "); - SERIAL_ECHOLNPGM(FILAMENT_RUNOUT_SCRIPT); + #ifdef FILAMENT_RUNOUT_SCRIPT + if (run_runout_script) { + #if MULTI_FILAMENT_SENSOR + MString script; + script.setf(F(FILAMENT_RUNOUT_SCRIPT), AS_CHAR(tool)); + #if ENABLED(FILAMENT_RUNOUT_SENSOR_DEBUG) + SERIAL_ECHOLNPGM("Runout Command: ", &script); + #endif + queue.inject(&script); + #else + #if ENABLED(FILAMENT_RUNOUT_SENSOR_DEBUG) + SERIAL_ECHOPGM("Runout Command: "); + SERIAL_ECHOLNPGM(FILAMENT_RUNOUT_SCRIPT); + #endif + queue.inject(F(FILAMENT_RUNOUT_SCRIPT)); #endif - queue.inject(F(FILAMENT_RUNOUT_SCRIPT)); - #endif - } + } + #endif } #endif // HAS_FILAMENT_SENSOR diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 0ab42cb22f6c..bfc5bfd0ffbd 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -53,6 +53,8 @@ #define DGUS_LCD_UI_RELOADED 1 #elif DGUS_UI_IS(IA_CREALITY) #define DGUS_LCD_UI_IA_CREALITY 1 +#elif DGUS_UI_IS(E3S1PRO) + #define DGUS_LCD_UI_E3S1PRO 1 #endif /** diff --git a/Marlin/src/inc/MarlinConfig.h b/Marlin/src/inc/MarlinConfig.h index d61a6b55e788..8f6519dbafd4 100644 --- a/Marlin/src/inc/MarlinConfig.h +++ b/Marlin/src/inc/MarlinConfig.h @@ -57,6 +57,7 @@ #include "../core/utility.h" #include "../core/mstring.h" #include "../core/serial.h" + #include "../core/endianness.h" #endif diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 9fdd0d603eef..4a948ceba303 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -545,7 +545,7 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "You can't enable FIL_RUNOUT8_PULLUP and FIL_RUNOUT8_PULLDOWN at the same time." #elif FILAMENT_RUNOUT_DISTANCE_MM < 0 #error "FILAMENT_RUNOUT_DISTANCE_MM must be greater than or equal to zero." - #elif DISABLED(ADVANCED_PAUSE_FEATURE) + #elif DISABLED(ADVANCED_PAUSE_FEATURE) && defined(FILAMENT_RUNOUT_SCRIPT) static_assert(nullptr == strstr(FILAMENT_RUNOUT_SCRIPT, "M600"), "ADVANCED_PAUSE_FEATURE is required to use M600 with FILAMENT_RUNOUT_SENSOR."); #endif #endif @@ -3994,6 +3994,41 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." #endif #endif +/** + * Require certain features for DGUS_LCD_UI E3S1PRO. + */ +#if DGUS_UI_IS(E3S1PRO) + #if BUFSIZE < 4 + #error "DGUS_LCD_UI E3S1PRO requires a BUFSIZE of at least 4." + #elif !(HOTENDS == 1) + #error "DGUS_LCD_UI E3S1PRO requires 1 hotend." + #elif !(EXTRUDERS == 1) + #error "DGUS_LCD_UI E3S1PRO requires at least 1 extruder." + #elif !HAS_HEATED_BED + #error "DGUS_LCD_UI E3S1PRO requires a heated bed." + #elif FAN_COUNT < 1 + #error "DGUS_LCD_UI E3S1PRO requires a fan." + #elif !HAS_BED_PROBE + #error "DGUS_LCD_UI E3S1PRO requires a bed probe." + #elif !HAS_MESH + #error "DGUS_LCD_UI E3S1PRO requires mesh leveling." + #elif !HAS_MEDIA + #error "DGUS_LCD_UI E3S1PRO requires SDSUPPORT." + #elif DISABLED(POWER_LOSS_RECOVERY) + #error "DGUS_LCD_UI E3S1PRO requires POWER_LOSS_RECOVERY." + #elif DISABLED(LCD_BED_TRAMMING) + #error "DGUS_LCD_UI E3S1PRO requires LCD_BED_TRAMMING." + #elif DISABLED(BABYSTEP_ALWAYS_AVAILABLE) + #error "DGUS_LCD_UI E3S1PRO requires BABYSTEP_ALWAYS_AVAILABLE." + #elif DISABLED(BABYSTEP_ZPROBE_OFFSET) + #error "DGUS_LCD_UI E3S1PRO requires BABYSTEP_ZPROBE_OFFSET." + #elif !defined(PREHEAT_1_TEMP_HOTEND) || !defined(PREHEAT_2_TEMP_HOTEND) + #error "DGUS_LCD_UI E3S1PRO requires 2 preheating presets." + #elif ENABLED(AUTO_BED_LEVELING_UBL) && DISABLED(UBL_SAVE_ACTIVE_ON_M500) + #warning "Without UBL_SAVE_ACTIVE_ON_M500, your mesh will not be saved when using the touchscreen." + #endif +#endif + // JTAG support in the HAL #if ENABLED(DISABLE_DEBUG) && !defined(JTAGSWD_DISABLE) #error "DISABLE_DEBUG is not supported for the selected MCU/Board." diff --git a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp index 768092633eda..8c26066b2808 100644 --- a/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus/fysetc/DGUSScreenHandler.cpp @@ -77,20 +77,18 @@ if (!ExtUI::isPrintingFromMedia()) return; // avoid race condition when user stays in this menu and printer finishes. switch (swap16(*(uint16_t*)val_ptr)) { - case 0: { // Resume - if (ExtUI::isPrintingFromMediaPaused()) { - ExtUI::resumePrint(); - } - } break; + case 0: // Resume + if (ExtUI::isPrintingFromMediaPaused()) ExtUI::resumePrint(); + break; case 1: // Pause - gotoScreen(DGUS_SCREEN_SDPRINTMANIPULATION); if (!ExtUI::isPrintingFromMediaPaused()) { ExtUI::pausePrint(); //ExtUI::mks_pausePrint(); } break; + case 2: // Abort handleUserConfirmationPopUp(VP_SD_AbortPrintConfirmed, nullptr, PSTR("Abort printing"), filelist.filename(), PSTR("?"), true, true, false, true); break; diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSDisplay.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSDisplay.cpp new file mode 100644 index 000000000000..b897466c6afe --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSDisplay.cpp @@ -0,0 +1,381 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +/* DGUS implementation written by coldtobi in 2019 for Marlin */ + +#include "../../../inc/MarlinConfigPre.h" + +#if ENABLED(DGUS_LCD_UI_E3S1PRO) + +#include "DGUSDisplay.h" + +#include "config/DGUS_Addr.h" +#include "config/DGUS_Constants.h" +#include "definition/DGUS_VPList.h" + +#include "../ui_api.h" + +long map_precise(float x, long in_min, long in_max, long out_min, long out_max) { + return LROUND((x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min); +} + +uint8_t DGUSDisplay::gui_version = 0; +uint8_t DGUSDisplay::os_version = 0; + +uint8_t DGUSDisplay::volume = 255; +uint8_t DGUSDisplay::brightness = 100; + +DGUSDisplay::rx_datagram_state_t DGUSDisplay::rx_datagram_state = DGUS_IDLE; +uint8_t DGUSDisplay::rx_datagram_len = 0; + +bool DGUSDisplay::initialized = false; + +void DGUSDisplay::loop() { + processRx(); +} + +void DGUSDisplay::init() { + LCD_SERIAL.begin(LCD_BAUDRATE); + + readVersions(); +} + +void DGUSDisplay::read(uint16_t addr, uint8_t size) { + writeHeader(addr, DGUS_READVAR, size); + + LCD_SERIAL.write(size); +} + +void DGUSDisplay::write(uint16_t addr, const void* data_ptr, uint8_t size) { + if (!data_ptr) return; + + writeHeader(addr, DGUS_WRITEVAR, size); + + const char* data = static_cast(data_ptr); + + while (size--) LCD_SERIAL.write(*data++); +} + +void DGUSDisplay::writeString(uint16_t addr, const void* data_ptr, uint8_t size, bool left, bool right, bool use_space) { + if (!data_ptr) return; + + writeHeader(addr, DGUS_WRITEVAR, size); + + const char* data = static_cast(data_ptr); + size_t len = strlen(data); + uint8_t left_spaces = 0; + uint8_t right_spaces = 0; + + if (len < size) { + if (!len) { + right_spaces = size; + } + else { + const uint8_t rem = size - len; + if ((left && right) || (!left && !right)) { + left_spaces = rem / 2; + right_spaces = rem - left_spaces; + } + else if (left) + right_spaces = rem; + else + left_spaces = rem; + } + } + else { + len = size; + } + + while (left_spaces--) LCD_SERIAL.write(' '); + while (len--) LCD_SERIAL.write(*data++); + while (right_spaces--) LCD_SERIAL.write(use_space ? ' ' : '\0'); +} + +void DGUSDisplay::writeStringPGM(uint16_t addr, const void* data_ptr, uint8_t size, bool left, bool right, bool use_space) { + if (!data_ptr) return; + + writeHeader(addr, DGUS_WRITEVAR, size); + + const char* data = static_cast(data_ptr); + size_t len = strlen_P(data); + uint8_t left_spaces = 0, right_spaces = 0; + + if (len < size) { + if (!len) { + right_spaces = size; + } + else if ((left && right) || (!left && !right)) { + left_spaces = (size - len) / 2; + right_spaces = size - len - left_spaces; + } + else if (left) { + right_spaces = size - len; + } + else { + left_spaces = size - len; + } + } + else { + len = size; + } + + while (left_spaces--) LCD_SERIAL.write(' '); + while (len--) LCD_SERIAL.write(pgm_read_byte(data++)); + while (right_spaces--) LCD_SERIAL.write(use_space ? ' ' : '\0'); +} + +void DGUSDisplay::readVersions() { + if (gui_version != 0 && os_version != 0) return; + read(DGUS_VERSION, 1); +} + +void DGUSDisplay::switchScreen(DGUS_ScreenID screen) { + const uint8_t command[] = { 0x5A, 0x01, 0x00, (uint8_t)screen }; + write(0x84, command, sizeof(command)); +} + +void DGUSDisplay::playSound(uint8_t start, uint8_t len, uint8_t volume) { + if (volume == 0) volume = DGUSDisplay::volume; + else volume = map_precise(constrain(volume, 0, 100), 0, 100, 0, 0x40); + + if (volume == 0) return; + const uint8_t command[] = { start, len, volume, 0x00 }; + write(0xA0, command, sizeof(command)); +} + +void DGUSDisplay::enableControl(DGUS_ScreenID screen, DGUS_ControlType type, DGUS_Control control) { + const uint8_t command[] = { 0x5A, 0xA5, 0x00, (uint8_t)screen, (uint8_t)control, type, 0x00, 0x01 }; + write(0xB0, command, sizeof(command)); + + flushTx(); + delay(50); +} + +void DGUSDisplay::disableControl(DGUS_ScreenID screen, DGUS_ControlType type, DGUS_Control control) { + const uint8_t command[] = { 0x5A, 0xA5, 0x00, (uint8_t)screen, (uint8_t)control, type, 0x00, 0x00 }; + write(0xB0, command, sizeof(command)); + + flushTx(); + delay(50); +} + +uint8_t DGUSDisplay::getBrightness() { + return brightness; +} + +uint8_t DGUSDisplay::getVolume() { + return map_precise(volume, 0, 0x40, 0, 100); +} + +void DGUSDisplay::setBrightness(uint8_t new_brightness) { + brightness = constrain(new_brightness, 0, 100); + new_brightness = map_precise(brightness, 0, 100, 5, 100); + const uint8_t command[] = { new_brightness, new_brightness }; + write(0x82, command, sizeof(command)); +} + +void DGUSDisplay::setVolume(uint8_t new_volume) { + volume = map_precise(constrain(new_volume, 0, 100), 0, 100, 0, 0x40); + const uint8_t command[] = { volume, 0x00 }; + write(0xA1, command, sizeof(command)); +} + +void DGUSDisplay::processRx() { + + #if ENABLED(LCD_SERIAL_STATS_RX_BUFFER_OVERRUNS) + if (!LCD_SERIAL.available() && LCD_SERIAL.buffer_overruns()) { + // Overrun, but reset the flag only when the buffer is empty + // We want to extract as many as valid datagrams possible... + rx_datagram_state = DGUS_IDLE; + //LCD_SERIAL.reset_rx_overun(); + LCD_SERIAL.flush(); + } + #endif + + uint8_t receivedbyte; + while (LCD_SERIAL.available()) { + switch (rx_datagram_state) { + case DGUS_IDLE: // Waiting for the first header byte + receivedbyte = LCD_SERIAL.read(); + if (DGUS_HEADER1 == receivedbyte) rx_datagram_state = DGUS_HEADER1_SEEN; + break; + + case DGUS_HEADER1_SEEN: // Waiting for the second header byte + receivedbyte = LCD_SERIAL.read(); + rx_datagram_state = (DGUS_HEADER2 == receivedbyte) ? DGUS_HEADER2_SEEN : DGUS_IDLE; + break; + + case DGUS_HEADER2_SEEN: // Waiting for the length byte + rx_datagram_len = LCD_SERIAL.read(); + // Telegram min len is 3 (command and one word of payload) + rx_datagram_state = WITHIN(rx_datagram_len, 3, DGUS_RX_BUFFER_SIZE) ? DGUS_WAIT_TELEGRAM : DGUS_IDLE; + break; + + case DGUS_WAIT_TELEGRAM: // wait for complete datagram to arrive. + if (LCD_SERIAL.available() < rx_datagram_len) return; + + initialized = true; // We've talked to it, so we defined it as initialized. + uint8_t command = LCD_SERIAL.read(); + uint8_t readlen = rx_datagram_len - 1; // command is part of len. + unsigned char tmp[rx_datagram_len - 1]; + unsigned char *ptmp = tmp; + + while (readlen--) { + receivedbyte = LCD_SERIAL.read(); + *ptmp++ = receivedbyte; + } + // mostly we'll get this: 5A A5 03 82 4F 4B -- ACK on 0x82, so discard it. + if (command == DGUS_WRITEVAR && 'O' == tmp[0] && 'K' == tmp[1]) { + rx_datagram_state = DGUS_IDLE; + break; + } + + /** + * AutoUpload, (and answer to) Command 0x83 : + * tmp[0 1 2 3 4 ... ] + * Example 5A A5 06 83 20 01 01 78 01 …… + * / / | | \ / | \ \ + * Header | | | | \_____\_ DATA (Words!) + * DatagramLen / VPAdr | + * Command DataLen (in Words) + */ + if (command == DGUS_READVAR) { + const uint16_t addr = Endianness::fromBE_P(tmp); + const uint8_t dlen = tmp[2] << 1; // Convert to Bytes. (Display works with words) + if (addr == DGUS_VERSION && dlen == 2) { + gui_version = tmp[3]; + os_version = tmp[4]; + + #if ENABLED(DEBUG_DGUSLCD) + DEBUG_ECHOLNPGM("DGUS version: GUI ", gui_version, "OS ", os_version); + #endif + rx_datagram_state = DGUS_IDLE; + break; + } + + DGUS_VP vp; + if (!DGUS_PopulateVP((DGUS_Addr)addr, &vp)) { + rx_datagram_state = DGUS_IDLE; + break; + } + + if (!vp.rx_handler) { + rx_datagram_state = DGUS_IDLE; + break; + } + + gcode.reset_stepper_timeout(); + + if (!vp.size) { + DEBUG_EOL(); + vp.rx_handler(vp, nullptr); + + rx_datagram_state = DGUS_IDLE; + break; + } + + if (vp.flags & VPFLAG_RXSTRING) { + unsigned char buffer[vp.size]; + memset(buffer, 0, vp.size); + + for (uint8_t i = 0; i < dlen; i++) { + if (i >= vp.size) break; + + if (i + 1 < dlen && tmp[i + 3] == 0xFF && tmp[i + 4] == 0xFF) + break; + + buffer[i] = tmp[i + 3]; + } + + DEBUG_EOL(); + vp.rx_handler(vp, buffer); + + rx_datagram_state = DGUS_IDLE; + break; + } + + if (dlen != vp.size) { + rx_datagram_state = DGUS_IDLE; + break; + } + + DEBUG_EOL(); + vp.rx_handler(vp, &tmp[3]); + + rx_datagram_state = DGUS_IDLE; + break; + } + + #if ENABLED(DEBUG_DGUSLCD) + DEBUG_ECHOLNPGM("DGUS unknown command ", command); + #endif + + rx_datagram_state = DGUS_IDLE; + break; + } + } +} + +size_t DGUSDisplay::getFreeTxBuffer() { + return ( + #ifdef LCD_SERIAL_GET_TX_BUFFER_FREE + LCD_SERIAL_GET_TX_BUFFER_FREE() + #else + SIZE_MAX + #endif + ); +} + +void DGUSDisplay::flushTx() { + TERN(ARDUINO_ARCH_STM32, LCD_SERIAL.flush(), LCD_SERIAL.flushTX()); +} + +void DGUSDisplay::writeHeader(uint16_t addr, uint8_t command, uint8_t len) { + LCD_SERIAL.write(DGUS_HEADER1); + LCD_SERIAL.write(DGUS_HEADER2); + LCD_SERIAL.write(len + 3); + LCD_SERIAL.write(command); + + union { + uint16_t u16; + uint8_t u8[2]; + } data = { Endianness::toBE(addr) }; + + for (uint8_t i = 0; i < sizeof(data.u8); ++i) LCD_SERIAL.write(data.u8[i]); +} + +bool DGUS_PopulateVP(const DGUS_Addr addr, DGUS_VP * const buffer) { + const DGUS_VP *ret = vp_list; + + do { + const uint16_t *paddr = (uint16_t *)(&ret->addr); + const uint16_t addrcheck = pgm_read_word(paddr); + if (addrcheck == 0) break; + if ((DGUS_Addr)addrcheck == addr) { + memcpy_P(buffer, ret, sizeof(*ret)); + return true; + } + } while (++ret); + return false; +} + +#endif // DGUS_LCD_UI_E3S1PRO diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSDisplay.h b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSDisplay.h new file mode 100644 index 000000000000..8d8a3cf01393 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSDisplay.h @@ -0,0 +1,163 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +/** + * DGUS implementation written by coldtobi in 2019. + * Updated for STM32G0B1RE by Protomosh in 2022. + */ + +#include "config/DGUS_Screen.h" +#include "config/DGUS_Control.h" +#include "definition/DGUS_VP.h" + +#include "../ui_api.h" +#include "../../../inc/MarlinConfigPre.h" +#include "../../../MarlinCore.h" + +//#define DEBUG_DGUSLCD // Uncomment for debug messages +#define DEBUG_OUT ENABLED(DEBUG_DGUSLCD) +#include "../../../core/debug_out.h" + +// Low-Level access to the display. +class DGUSDisplay { +public: + + enum DGUS_ControlType : uint8_t { + VARIABLE_DATA_INPUT = 0x00, + POPUP_WINDOW = 0x01, + INCREMENTAL_ADJUST = 0x02, + SLIDER_ADJUST = 0x03, + RTC_SETTINGS = 0x04, + RETURN_KEY_CODE = 0x05, + TEXT_INPUT = 0x06, + FIRMWARE_SETTINGS = 0x07 + }; + + DGUSDisplay() = default; + + static void init(); + + static void read(uint16_t addr, uint8_t size); + static void write(uint16_t addr, const void* data_ptr, uint8_t size); + + static void writeString(uint16_t addr, const void* data_ptr, uint8_t size, bool left=true, bool right=false, bool use_space=true); + static void writeStringPGM(uint16_t addr, const void* data_ptr, uint8_t size, bool left=true, bool right=false, bool use_space=true); + static void writeString(uint16_t addr, FSTR_P const fstr, uint8_t size, bool left=true, bool right=false, bool use_space=true) { + writeStringPGM(addr, FTOP(fstr), size, left, right, use_space); + } + + template + static void write(uint16_t addr, T data) { + write(addr, static_cast(&data), sizeof(T)); + } + + // Until now I did not need to actively read from the display. That's why there is no ReadVariable + // (I extensively use the auto upload of the display) + + // Read GUI and OS version from screen + static void readVersions(); + + // Force display into another screen. + static void switchScreen(DGUS_ScreenID screen); + // Play sounds using the display speaker. + // start: position at which the sound was stored on the display. + // len: how many sounds to play. Sounds will play consecutively from start to start+len-1. + // volume: playback volume. 0 keeps the current volume. + static void playSound(uint8_t start, uint8_t len=1, uint8_t volume=0); + // Enable/disable a specific touch control. + // type: control type. + // control: index of the control on the page (set during screen development). + static void enableControl(DGUS_ScreenID screen, DGUS_ControlType type, DGUS_Control control); + static void disableControl(DGUS_ScreenID screen, DGUS_ControlType type, DGUS_Control control); + + static uint8_t getBrightness(); + static uint8_t getVolume(); + + // Set the display brightness/volume, ranging 0 - 100 + static void setBrightness(uint8_t brightness); + static void setVolume(uint8_t volume); + + // Periodic tasks, eg. Rx-Queue handling. + static void loop(); + + // Helper for users of this class to estimate if an interaction would be blocking. + static size_t getFreeTxBuffer(); + static void flushTx(); + + // Checks two things: Can we confirm the presence of the display and has we initialized it. + // (both boils down that the display answered to our chatting) + static bool isInitialized() { + return initialized; + } + + static uint8_t gui_version; + static uint8_t os_version; + + template + T_out fromFixedPoint(const T_in value) { + return (T_out)((float)value / POW(10, decimals)); + } + + template + T_out toFixedPoint(const T_in value) { + return (T_out)LROUND((float)value * POW(10, decimals)); + } + +private: + enum dgus_header : uint8_t { + DGUS_HEADER1 = 0x5A, + DGUS_HEADER2 = 0xA5 + }; + + enum dgus_command : uint8_t { + DGUS_WRITEVAR = 0x82, + DGUS_READVAR = 0x83 + }; + + enum rx_datagram_state_t : uint8_t { + DGUS_IDLE, //< waiting for DGUS_HEADER1. + DGUS_HEADER1_SEEN, //< DGUS_HEADER1 received + DGUS_HEADER2_SEEN, //< DGUS_HEADER2 received + DGUS_WAIT_TELEGRAM, //< LEN received, Waiting for to receive all bytes. + }; + + enum dgus_system_addr : uint16_t { + DGUS_VERSION = 0x000F // OS/GUI version + }; + + static void writeHeader(uint16_t addr, uint8_t command, uint8_t len); + static void processRx(); + + static uint8_t volume; + static uint8_t brightness; + + static rx_datagram_state_t rx_datagram_state; + static uint8_t rx_datagram_len; + + static bool initialized; +}; + +extern DGUSDisplay dgus; + +/// Helper to populate a DGUS_VP for a given VP. Return false if not found. +extern bool DGUS_PopulateVP(const DGUS_Addr addr, DGUS_VP * const buffer); diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSReturnKeyCodeHandler.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSReturnKeyCodeHandler.cpp new file mode 100644 index 000000000000..f6d2e2bb89f1 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSReturnKeyCodeHandler.cpp @@ -0,0 +1,684 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../../inc/MarlinConfigPre.h" + +#if ENABLED(DGUS_LCD_UI_E3S1PRO) + +#include "DGUSReturnKeyCodeHandler.h" + +#include "DGUSDisplay.h" +#include "DGUSScreenHandler.h" +#include "config/DGUS_Screen.h" + +#include "../ui_api.h" +#include "../../../core/language.h" +#include "../../../module/temperature.h" +#include "../../../module/printcounter.h" +#include "../../../module/stepper.h" +#include "../../../gcode/queue.h" +#if ENABLED(ADVANCED_PAUSE_FEATURE) + #include "../../../feature/pause.h" +#endif +#if ENABLED(POWER_LOSS_RECOVERY) + #include "../../../feature/powerloss.h" +#endif + +#define DGUS_UNKNOWN_COMMAND_DEBUG // uncomment to debug unknown commands + +static uint16_t plaExtruderTempSave = 0; +static uint16_t plaBedTempSave = 0; +static uint16_t absExtruderTempSave = 0; +static uint16_t absBedTempSave = 0; + +static DGUS_ScreenID GetJogScreenForSavedJogLength() { + DGUS_ScreenID jogscreen = DGUS_ScreenID::MOVEAXIS_10; + switch (screen.config.jogLength) { + case DGUS_Data::AxisControlCommand::Jog_10mm: jogscreen = DGUS_ScreenID::MOVEAXIS_10; break; + case DGUS_Data::AxisControlCommand::Jog_1mm: jogscreen = DGUS_ScreenID::MOVEAXIS_1; break; + case DGUS_Data::AxisControlCommand::Jog_0_1mm: jogscreen = DGUS_ScreenID::MOVEAXIS_01; break; + default: break; + } + + return jogscreen; +} + +// 1002 +void DGUSReturnKeyCodeHandler::Command_MenuSelect(DGUS_VP &vp, void *data) { + DGUS_Data::MenuSelectCommand submenu = Endianness::fromBE_P(data); + + switch (submenu) { + case DGUS_Data::MenuSelectCommand::Main: + screen.triggerScreenChange(DGUS_ScreenID::MAIN); + break; + + case DGUS_Data::MenuSelectCommand::Print: + if (ExtUI::isMediaInserted()) { + dgus_sdcard_handler.Reset(); + screen.triggerScreenChange(DGUS_ScreenID::FILE1); + } + else + screen.triggerTempScreenChange(DGUS_ScreenID::SDCARDCHECK, screen.getCurrentScreen()); + break; + + case DGUS_Data::MenuSelectCommand::Ready: { + DGUS_ScreenID jogscreen = GetJogScreenForSavedJogLength(); + if (ExtUI::isPositionKnown()) + screen.triggerScreenChange(jogscreen); + else + screen.homeThenChangeScreen(jogscreen); + } break; + + case DGUS_Data::MenuSelectCommand::Settings: + screen.triggerScreenChange(DGUS_ScreenID::TEMP); + break; + + case DGUS_Data::MenuSelectCommand::StartAutoLevel: + if (!ExtUI::isPositionKnown()) + screen.homeThenChangeScreen(screen.getCurrentScreen()); + + ExtUI::injectCommands(F("M420 S0\n" TERN(AUTO_BED_LEVELING_UBL, "G29 P1", "G29"))); + break; + + case DGUS_Data::MenuSelectCommand::PrintFinished: + screen.triggerScreenChange(DGUS_ScreenID::HOME); + break; + + case DGUS_Data::MenuSelectCommand::PausePrint: + screen.triggerTempScreenChange(DGUS_ScreenID::PAUSE_STOP, DGUS_ScreenID::PAUSE); + break; + + case DGUS_Data::MenuSelectCommand::PauseStopPrint: + screen.triggerTempScreenChange(DGUS_ScreenID::CONTINUE_STOP, DGUS_ScreenID::RESUME); + break; + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Command_MenuSelect: unknown id ", (uint16_t)submenu); + #endif + break; + } +} + +// 1004 +void DGUSReturnKeyCodeHandler::Command_Adjust(DGUS_VP &vp, void *data) { + DGUS_Data::AdjustCommand command = Endianness::fromBE_P(data); + + switch (command) { + case DGUS_Data::AdjustCommand::Show_Adjust: + screen.triggerScreenChange(DGUS_ScreenID::ADJUST); + break; + + case DGUS_Data::AdjustCommand::Show_PrintStatus: + screen.triggerScreenChange(DGUS_ScreenID::PAUSE); + break; + + case DGUS_Data::AdjustCommand::Show_Adjust_ZOffset: + screen.triggerScreenChange(DGUS_ScreenID::PREPARE); + break; + + case DGUS_Data::AdjustCommand::Validate_ZOffset: + screen.triggerScreenChange(DGUS_ScreenID::ADJUST); + break; + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Command_Adjust: unknown id ", (uint16_t)command); + #endif + break; + } +} + +// 1008 +void DGUSReturnKeyCodeHandler::Command_CheckKO(DGUS_VP &vp, void *data) { + DGUS_Data::CheckKOCommand command = Endianness::fromBE_P(data); + + if (command != DGUS_Data::CheckKOCommand::KO && command != DGUS_Data::CheckKOCommand::SDCard_No) { + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Command_CheckKO: unknown id ", (uint16_t)command); + #endif + return; + } + + switch (screen.getCurrentScreen()) { + case DGUS_ScreenID::CONTINUE_STOP: + case DGUS_ScreenID::STOP_CONFIRM: + case DGUS_ScreenID::PAUSE_STOP: + case DGUS_ScreenID::FILAMENTUSEUP: + case DGUS_ScreenID::FILAMENTLOAD: + ExtUI::stopPrint(); + TERN_(HAS_FILAMENT_SENSOR,ExtUI::setFilamentRunoutState(false)); + screen.triggerScreenChange(DGUS_ScreenID::FINISH); + break; + + case DGUS_ScreenID::SDCARDCHECK: + case DGUS_ScreenID::PAUSE_LASER: + break; + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Command_CheckKO: unknown src screen ", (uint16_t)screen.getCurrentScreen()); + #endif + return; + } + + screen.triggerScreenChange(DGUS_ScreenID::HOME); +} + +// 100A +void DGUSReturnKeyCodeHandler::Command_StopPause(DGUS_VP &vp, void *data) { + DGUS_Data::StopPauseCommand command = Endianness::fromBE_P(data); + + switch (command) { + case DGUS_Data::StopPauseCommand::Pause: + ExtUI::pausePrint(); + screen.triggerScreenChange(DGUS_ScreenID::RESUME); + break; + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Command_StopPause: unknown id ", (uint16_t)command); + #endif + break; + } +} + +// 100C +void DGUSReturnKeyCodeHandler::Command_CheckOK(DGUS_VP &vp, void *data) { + DGUS_Data::CheckOKCommand command = Endianness::fromBE_P(data); + + switch (command) { + case DGUS_Data::CheckOKCommand::ContinueStop_Continue: + #if HAS_FILAMENT_SENSOR + if (ExtUI::getFilamentRunoutEnabled() && READ(FIL_RUNOUT1_PIN) == FIL_RUNOUT1_STATE) { + screen.triggerScreenChange(DGUS_ScreenID::FILAMENTUSEUP); + break; + } + #endif + ExtUI::resumePrint(); + screen.triggerScreenChange(DGUS_ScreenID::PAUSE); + break; + + #if HAS_FILAMENT_SENSOR + case DGUS_Data::CheckOKCommand::FilamentRunout_Yes: + if (ExtUI::getTargetTemp_celsius(ExtUI::E0) < EXTRUDE_MINTEMP) + ExtUI::setTargetTemp_celsius(EXTRUDE_MINTEMP, ExtUI::E0); + + if (ExtUI::getFilamentRunoutEnabled() && READ(FIL_RUNOUT1_PIN) == FIL_RUNOUT1_STATE) + screen.triggerScreenChange(DGUS_ScreenID::FILAMENTUSEUP); + else + screen.triggerScreenChange(DGUS_ScreenID::FILAMENTLOAD); + break; + + case DGUS_Data::CheckOKCommand::FilamentLoad_Yes: + if (ExtUI::getFilamentRunoutEnabled() && READ(FIL_RUNOUT1_PIN) == FIL_RUNOUT1_STATE) { + screen.triggerScreenChange(DGUS_ScreenID::FILAMENTLOAD); + break; + } + + ExtUI::setFilamentRunoutState(false); + ExtUI::resumePrint(); + break; + #endif // HAS_FILAMENT_SENSOR + + case DGUS_Data::CheckOKCommand::SDCardCheck_Yes: + if (ExtUI::isMediaInserted()) { + dgus_sdcard_handler.Reset(); + screen.triggerScreenChange(DGUS_ScreenID::FILE1); + } + break; + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Command_CheckOK: unknown id ", (uint16_t)command); + #endif + break; + } +} + +// 1030 +void DGUSReturnKeyCodeHandler::Command_PresetControl(DGUS_VP &vp, void *data) { + DGUS_Data::PresetControlCommand command = Endianness::fromBE_P(data); + + switch (command) { + case DGUS_Data::PresetControlCommand::Show_Ready_Manual: + screen.triggerScreenChange(DGUS_ScreenID::CONTROL); + break; + + case DGUS_Data::PresetControlCommand::Show_Settings_PLA_Settings: + plaExtruderTempSave = screen.config.plaExtruderTemp; + plaBedTempSave = screen.config.plaBedTemp; + absExtruderTempSave = screen.config.absExtruderTemp; + absBedTempSave = screen.config.absBedTemp; + screen.triggerScreenChange(DGUS_ScreenID::PLA_TEMP); + break; + + case DGUS_Data::PresetControlCommand::Show_Settings_ABS_Settings: + plaExtruderTempSave = screen.config.plaExtruderTemp; + plaBedTempSave = screen.config.plaBedTemp; + absExtruderTempSave = screen.config.absExtruderTemp; + absBedTempSave = screen.config.absBedTemp; + screen.triggerScreenChange(DGUS_ScreenID::ABS_TEMP); + break; + + case DGUS_Data::PresetControlCommand::Apply_PLA_Settings: + ExtUI::setTargetTemp_celsius(screen.config.plaExtruderTemp, ExtUI::E0); + ExtUI::setTargetTemp_celsius(screen.config.plaBedTemp, ExtUI::BED); + break; + + case DGUS_Data::PresetControlCommand::Apply_ABS_Settings: + ExtUI::setTargetTemp_celsius(screen.config.absExtruderTemp, ExtUI::E0); + ExtUI::setTargetTemp_celsius(screen.config.absBedTemp, ExtUI::BED); + break; + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Settings_Submenu: unknown id ", (uint16_t)command); + #endif + break; + } +} + +// 1032 +void DGUSReturnKeyCodeHandler::Control_TemperatureCommand(DGUS_VP &vp, void *data) { + DGUS_Data::TemperatureControlCommand command = Endianness::fromBE_P(data); + + switch (command) { + case DGUS_Data::TemperatureControlCommand::Cooldown: + ExtUI::coolDown(); + break; + + case DGUS_Data::TemperatureControlCommand::Exit_Temperature_Preset_And_Discard_Temperature: + screen.config.plaExtruderTemp = plaExtruderTempSave; + screen.config.plaBedTemp = plaBedTempSave; + screen.config.absExtruderTemp = absExtruderTempSave; + screen.config.absBedTemp = absBedTempSave; + screen.triggerScreenChange(DGUS_ScreenID::TEMP); + break; + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Control_TemperatureCommand: unknown id ", (uint16_t)command); + #endif + break; + } +} + +// 103E +void DGUSReturnKeyCodeHandler::Command_SettingsMenu(DGUS_VP &vp, void *data) { + DGUS_Data::SettingsMenuCommand command = Endianness::fromBE_P(data); + + switch (command) { + case DGUS_Data::SettingsMenuCommand::DisableStepperMotors: { + const bool areSteppersEnabled = stepper.axis_enabled.bits & (_BV(NUM_AXES) - 1); + if (areSteppersEnabled) + stepper.disable_all_steppers(); + else + stepper.enable_all_steppers(); + } break; + + case DGUS_Data::SettingsMenuCommand::Reset_All_Settings: + screen.triggerScreenChange(DGUS_ScreenID::FACTORYRESET_CONFIRM); + break; + + case DGUS_Data::SettingsMenuCommand::FactoryReset_Validate: + ExtUI::injectCommands(F("M502")); + + case DGUS_Data::SettingsMenuCommand::FactoryReset_Cancel: + screen.triggerScreenChange(DGUS_ScreenID::CONTROL_DEVICE); + break; + + case DGUS_Data::SettingsMenuCommand::Show_Settings_Device_and_Save_Temperatures: + screen.triggerEEPROMSave(); + screen.triggerScreenChange(DGUS_ScreenID::TEMP); + break; + + case DGUS_Data::SettingsMenuCommand::Show_Settings_Device_and_Discard_Temperatures: + screen.config.plaExtruderTemp = plaExtruderTempSave; + screen.config.plaBedTemp = plaBedTempSave; + screen.config.absExtruderTemp = absExtruderTempSave; + screen.config.absBedTemp = absBedTempSave; + screen.triggerScreenChange(DGUS_ScreenID::TEMP); + break; + + case DGUS_Data::SettingsMenuCommand::Show_Settings_Device_Language: + screen.triggerScreenChange(DGUS_ScreenID::LANGUAGE); + break; + + case DGUS_Data::SettingsMenuCommand::Show_Settings_About: + screen.triggerScreenChange(DGUS_ScreenID::INFORMATION); + break; + + case DGUS_Data::SettingsMenuCommand::Show_Settings_Advanced: + screen.triggerScreenChange(DGUS_ScreenID::CONTROL_DEVICE); + break; + + case DGUS_Data::SettingsMenuCommand::Show_Ready_Jog: + screen.triggerScreenChange(GetJogScreenForSavedJogLength()); + break; + + case DGUS_Data::SettingsMenuCommand::Exit_Settings_Tramming: + screen.triggerEEPROMSave(); + screen.triggerScreenChange(DGUS_ScreenID::TEMP); + break; + + case DGUS_Data::SettingsMenuCommand::Exit_Settings_Leveling: + screen.triggerEEPROMSave(); + screen.triggerScreenChange(DGUS_ScreenID::TEMP); + break; + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Command_SettingsMenu: unknown id ", (uint16_t)command); + #endif + break; + } +} + +static void _gotoTrammingPoint(unsigned char point) { + constexpr float lfrb[4] = BED_TRAMMING_INSET_LFRB; + float x, y; + + switch (point) { + default: return; + case 1: x = X_CENTER; y = Y_CENTER; break; + case 2: x = X_MIN_POS + lfrb[0]; y = Y_MIN_POS + lfrb[1]; break; + case 3: x = X_MAX_POS - lfrb[2]; y = Y_MIN_POS + lfrb[1]; break; + case 4: x = X_MAX_POS - lfrb[2]; y = Y_MAX_POS - lfrb[3]; break; + case 5: x = X_MIN_POS + lfrb[0]; y = Y_MAX_POS - lfrb[3]; break; + } + + if (ExtUI::getAxisPosition_mm(ExtUI::Z) < (Z_MIN_POS) + (BED_TRAMMING_Z_HOP)) + ExtUI::setAxisPosition_mm((Z_MIN_POS) + (BED_TRAMMING_Z_HOP), ExtUI::Z); + + ExtUI::setAxisPosition_mm(x, ExtUI::X); + ExtUI::setAxisPosition_mm(y, ExtUI::Y); + ExtUI::setAxisPosition_mm((Z_MIN_POS) + (BED_TRAMMING_HEIGHT), ExtUI::Z); +} + +// 1044 +void DGUSReturnKeyCodeHandler::Command_Leveling(DGUS_VP &vp, void *data) { + DGUS_Data::LevelingCommand command = Endianness::fromBE_P(data); + + switch (command) { + case DGUS_Data::LevelingCommand::Show_AuxLeveling: + if (ExtUI::isPositionKnown()) + screen.triggerScreenChange(DGUS_ScreenID::LEVELINGMODE); + _gotoTrammingPoint(1); + break; + + case DGUS_Data::LevelingCommand::Show_Settings_Leveling: + case DGUS_Data::LevelingCommand::Show_AutoLeveling: + screen.homeThenChangeScreen(DGUS_ScreenID::LEVELING); + break; + + case DGUS_Data::LevelingCommand::Goto_Center: + _gotoTrammingPoint(1); + break; + + case DGUS_Data::LevelingCommand::Goto_LF: + _gotoTrammingPoint(2); + break; + + case DGUS_Data::LevelingCommand::Goto_RF: + _gotoTrammingPoint(3); + break; + + case DGUS_Data::LevelingCommand::Goto_RB: + _gotoTrammingPoint(4); + break; + + case DGUS_Data::LevelingCommand::Goto_LB: + _gotoTrammingPoint(5); + break; + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Command_Leveling: unknown id ", (uint16_t)command); + #endif + break; + } +} + +// 1046 +void DGUSReturnKeyCodeHandler::Command_AxisControl(DGUS_VP &vp, void *data) { + DGUS_Data::AxisControlCommand control = Endianness::fromBE_P(data); + + switch (control) { + case DGUS_Data::AxisControlCommand::Jog_10mm: + case DGUS_Data::AxisControlCommand::Jog_1mm: + case DGUS_Data::AxisControlCommand::Jog_0_1mm: + screen.config.jogLength = control; + break; + + case DGUS_Data::AxisControlCommand::Home_XY: + ExtUI::injectCommands(F("G28XY")); + break; + + case DGUS_Data::AxisControlCommand::Home_Z: + ExtUI::injectCommands(F("G28Z")); + break; + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Command_AxisControl: unknown id ", (uint16_t)control); + #endif + break; + } +} + +// 1056 +void DGUSReturnKeyCodeHandler::Command_FilamentIO(DGUS_VP &vp, void *data) { + DGUS_Data::FilamentIoCommand command = Endianness::fromBE_P(data); + + switch (command) { + case DGUS_Data::FilamentIoCommand::FilamentCheck_Yes: + case DGUS_Data::FilamentIoCommand::FilamentCheck_No: + screen.triggerReturnScreen(); + break; + + case DGUS_Data::FilamentIoCommand::Show_Ready_IO: + screen.triggerScreenChange(DGUS_ScreenID::FEEDRETURN); + break; + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Command_FilamentIO: unknown id ", (uint16_t)command); + #endif + break; + } +} + +// 105F +void DGUSReturnKeyCodeHandler::Command_PowerLoss(DGUS_VP &vp, void *data) { + DGUS_Data::PowerLossCommand command = Endianness::fromBE_P(data); + + switch (command) { + case DGUS_Data::PowerLossCommand::PowerLoss_Continue: + if (!recovery.valid()) { + screen.setStatusMessage(GET_TEXT_F(DGUS_MSG_INVALID_RECOVERY_DATA)); + screen.triggerScreenChange(DGUS_ScreenID::HOME); + return; + } + + screen.triggerScreenChange(DGUS_ScreenID::PAUSE); + ExtUI::injectCommands(F("M1000")); + break; + + case DGUS_Data::PowerLossCommand::PowerLoss_No: + screen.triggerScreenChange(DGUS_ScreenID::HOME); + ExtUI::injectCommands(F("M1000 C")); + break; + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Command_PowerLoss: unknown id ", (uint16_t)command); + #endif + break; + } +} + +// 1098 +void DGUSReturnKeyCodeHandler::Command_AdvancedSettings(DGUS_VP &vp, void *data) { + DGUS_Data::AdvancedSettingsCommand command = Endianness::fromBE_P(data); + + switch (command) { + case DGUS_Data::AdvancedSettingsCommand::Show_AdvSettings_Movement: + screen.triggerScreenChange(DGUS_ScreenID::MOTION); + break; + + case DGUS_Data::AdvancedSettingsCommand::Show_AdvSettings_PID: + #if NONE(PIDTEMP, PIDTEMPBED) + screen.angryBeeps(2); + screen.triggerScreenChange(DGUS_ScreenID::CONTROL_DEVICE); + #else + screen.triggerScreenChange(DGUS_ScreenID::PIDCONTROL); + #endif + break; + + case DGUS_Data::AdvancedSettingsCommand::Show_AdvSettings_Movement_MaxFeedrate: + screen.triggerScreenChange(DGUS_ScreenID::MAX_FEEDRATE); + break; + + case DGUS_Data::AdvancedSettingsCommand::Show_AdvSettings_Movement_Acceleration: + screen.triggerScreenChange(DGUS_ScreenID::ACCELERATION); + break; + + case DGUS_Data::AdvancedSettingsCommand::Show_AdvSettings_Movement_Jerk: + screen.triggerScreenChange(DGUS_ScreenID::JERK); + break; + + case DGUS_Data::AdvancedSettingsCommand::Show_AdvSettings_Movement_StepsPerMm: + screen.triggerScreenChange(DGUS_ScreenID::STEPSMM); + break; + + case DGUS_Data::AdvancedSettingsCommand::Exit_AdvSettings_Movement_Submenu: + screen.triggerScreenChange(DGUS_ScreenID::MOTION); + break; + + case DGUS_Data::AdvancedSettingsCommand::Show_AdvSettings: + screen.triggerScreenChange(DGUS_ScreenID::CONTROL_DEVICE); + break; + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Command_AdvancedSettings: unknown id ", (uint16_t)command); + #endif + break; + } +} + +// 2198 +void DGUSReturnKeyCodeHandler::Command_FilelistControl(DGUS_VP &vp, void *data) { + DGUS_Data::FilelistControlCommand control = Endianness::fromBE_P(data); + DGUS_SDCardHandler::page_t newPage; + + switch (control) { + #if HAS_MEDIA + case DGUS_Data::FilelistControlCommand::Start_Print: + if (!screen.getSDCardPrintFilename()[0]) { + screen.angryBeeps(2); + return; + } + + #if HAS_FILAMENT_SENSOR + if (ExtUI::getFilamentRunoutEnabled() && READ(FIL_RUNOUT1_PIN) == FIL_RUNOUT1_STATE) { + screen.triggerTempScreenChange(DGUS_ScreenID::FILAMENTCHECK, DGUS_ScreenID::HOME); + return; + } + #endif + + ExtUI::printFile(screen.getSDCardPrintFilename()); + screen.triggerScreenChange(DGUS_ScreenID::PAUSE); + return; + #endif + + case DGUS_Data::FilelistControlCommand::F1_Up: + //case DGUS_Data::FilelistControlCommand::F2_Up: + case DGUS_Data::FilelistControlCommand::F3_Up: + case DGUS_Data::FilelistControlCommand::F4_Up: + newPage = dgus_sdcard_handler.onPreviousPage(); + break; + + case DGUS_Data::FilelistControlCommand::F1_Down: + case DGUS_Data::FilelistControlCommand::F2_Down: + case DGUS_Data::FilelistControlCommand::F3_Down: + case DGUS_Data::FilelistControlCommand::F4_Down: + newPage = dgus_sdcard_handler.onNextPage(); + break; + + case DGUS_Data::FilelistControlCommand::Begin: + newPage = dgus_sdcard_handler.onFirstPage(); + break; + + case DGUS_Data::FilelistControlCommand::End: + newPage = dgus_sdcard_handler.onLastPage(); + break; + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Command_FilelistControl: unknown id ", (uint16_t)control); + #endif + return; + } + + screen.triggerScreenChange(DGUS_PAGE_TO_SCREEN(newPage)); +} + +// 2201 +void DGUSReturnKeyCodeHandler::Command_LaserControl(DGUS_VP &vp, void *data) { + DGUS_Data::LaserControlCommand control = Endianness::fromBE_P(data); + + switch (control) { + case DGUS_Data::LaserControlCommand::Mode_FDM: + screen.triggerScreenChange(DGUS_ScreenID::SW_FDM_TIPS); + break; + case DGUS_Data::LaserControlCommand::Mode_FDM_Confirm: + screen.triggerScreenChange(DGUS_ScreenID::SW_FDM_TIPS); + break; + + #if HAS_CUTTER + case DGUS_Data::LaserControlCommand::Mode_Cutter: + screen.triggerScreenChange(DGUS_ScreenID::SW_LASER_TIPS); + break; + + case DGUS_Data::LaserControlCommand::Mode_Cutter_Confirm: + screen.triggerScreenChange(DGUS_ScreenID::SW_LASER_TIPS); + break; + #endif + + case DGUS_Data::LaserControlCommand::Mode_Change: + #if HAS_CUTTER + screen.triggerScreenChange(DGUS_ScreenID::LASER_FDM); + #else + screen.angryBeeps(2); + #endif + + default: + #if ALL(DEBUG_DGUSLCD, DGUS_UNKNOWN_COMMAND_DEBUG) + DEBUG_ECHOLNPGM("Command_LaserControl: unknown id ", (uint16_t)control); + #endif + return; + } +} + +#endif // DGUS_LCD_UI_E3S1PRO diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSReturnKeyCodeHandler.h b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSReturnKeyCodeHandler.h new file mode 100644 index 000000000000..03a7224ca629 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSReturnKeyCodeHandler.h @@ -0,0 +1,42 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "definition/DGUS_VP.h" + +namespace DGUSReturnKeyCodeHandler { + void Command_MenuSelect(DGUS_VP &vp, void *data); + void Command_Adjust(DGUS_VP &vp, void *data); + void Command_CheckKO(DGUS_VP &vp, void *data); + void Command_StopPause(DGUS_VP &vp, void *data); + void Command_CheckOK(DGUS_VP &vp, void *data); + void Command_PresetControl(DGUS_VP &vp, void *data); + void Control_TemperatureCommand(DGUS_VP &vp, void *data); + void Command_SettingsMenu(DGUS_VP &vp, void *data); + void Command_Leveling(DGUS_VP &vp, void *data); + void Command_AxisControl(DGUS_VP &vp, void *data); + void Command_FilamentIO(DGUS_VP &vp, void *data); + void Command_PowerLoss(DGUS_VP &vp, void *data); + void Command_AdvancedSettings(DGUS_VP &vp, void *data); + void Command_FilelistControl(DGUS_VP &vp, void *data); + void Command_LaserControl(DGUS_VP &vp, void *data); +} diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSRxHandler.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSRxHandler.cpp new file mode 100644 index 000000000000..118cfd35143b --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSRxHandler.cpp @@ -0,0 +1,168 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../../inc/MarlinConfigPre.h" + +#if ENABLED(DGUS_LCD_UI_E3S1PRO) + +#include "DGUSRxHandler.h" + +#include "DGUSScreenHandler.h" +#include "config/DGUS_Screen.h" + +#include "../ui_api.h" +#include "../../../core/language.h" +#include "../../../module/stepper.h" + +void DGUSRxHandler::printSpeedPercentage(DGUS_VP &vp, void *data) { + const_float_t feedratePercentage = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setFeedrate_percent(feedratePercentage); +} + +void DGUSRxHandler::zOffset(DGUS_VP &vp, void *data) { + const_float_t zoffset = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + const_float_t currentzOffset = ExtUI::getZOffset_mm(); + const_float_t zStepsPerMm = ExtUI::getAxisSteps_per_mm(ExtUI::Z); + int16_t zStepsDiff = zStepsPerMm * (zoffset - currentzOffset); + + ExtUI::babystepAxis_steps(zStepsDiff, ExtUI::Z); + ExtUI::setZOffset_mm(zoffset); +} + +void DGUSRxHandler::extruderTargetTemp(DGUS_VP &vp, void *data) { + const_float_t temperature = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setTargetTemp_celsius(temperature, ExtUI::H0); +} + +void DGUSRxHandler::bedTargetTemp(DGUS_VP &vp, void *data) { + const_float_t temperature = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setTargetTemp_celsius(temperature, ExtUI::BED); +} + +void DGUSRxHandler::axis_X(DGUS_VP &vp, void *data) { + const_float_t axisValue = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setAxisPosition_mm(axisValue, ExtUI::X); +} + +void DGUSRxHandler::axis_Y(DGUS_VP &vp, void *data) { + const_float_t axisValue = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setAxisPosition_mm(axisValue, ExtUI::Y); +} + +void DGUSRxHandler::axis_Z(DGUS_VP &vp, void *data) { + const_float_t axisValue = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setAxisPosition_mm(axisValue, ExtUI::Z); +} + +void DGUSRxHandler::extrudeLength(DGUS_VP &vp, void *data) { + const_float_t length = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + const_float_t currentPosition = ExtUI::getAxisPosition_mm(ExtUI::E0); + + #if HAS_FILAMENT_SENSOR + if (ExtUI::getFilamentRunoutEnabled() && ExtUI::getFilamentRunoutState()) { + screen.triggerTempScreenChange(DGUS_ScreenID::FILAMENTCHECK, DGUS_ScreenID::CONTROL_DEVICE); + return; + } + #endif + ExtUI::setAxisPosition_mm(currentPosition+length, ExtUI::E0); +} + +void DGUSRxHandler::retractLength(DGUS_VP &vp, void *data) { + const_float_t length = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + const_float_t currentPosition = ExtUI::getAxisPosition_mm(ExtUI::E0); + + #if HAS_FILAMENT_SENSOR + if (ExtUI::getFilamentRunoutEnabled() && ExtUI::getFilamentRunoutState()) { + screen.triggerTempScreenChange(DGUS_ScreenID::FILAMENTCHECK, DGUS_ScreenID::CONTROL_DEVICE); + return; + } + #endif + ExtUI::setAxisPosition_mm(currentPosition-length, ExtUI::E0); +} + +void DGUSRxHandler::setLanguage(DGUS_VP &vp, void *data) { + DGUS_Data::Language language = (DGUS_Data::Language)Endianness::fromBE_P(data); + screen.config.language = language; + screen.triggerEEPROMSave(); + screen.triggerFullUpdate(); +} + +#if ENABLED(PIDTEMPBED) + + void DGUSRxHandler::bed_PID_P(DGUS_VP &vp, void *data) { + float pidValue = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setBedPID( + pidValue, + ExtUI::getBedPID_Ki(), + ExtUI::getBedPID_Kd() + ); + } + + void DGUSRxHandler::bed_PID_I(DGUS_VP &vp, void *data) { + float pidValue = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setBedPID( + ExtUI::getBedPID_Kp(), + pidValue, + ExtUI::getBedPID_Kd() + ); + } + + void DGUSRxHandler::bed_PID_D(DGUS_VP &vp, void *data) { + float pidValue = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setBedPID( + ExtUI::getBedPID_Kp(), + ExtUI::getBedPID_Ki(), + pidValue + ); + } + +#endif // PIDTEMPBED + +void DGUSRxHandler::fanSpeed(DGUS_VP &vp, void *data) { + const_float_t percentage = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setTargetFan_percent(percentage, ExtUI::FAN0); +} + +void DGUSRxHandler::sdCardFileSection(DGUS_VP &vp, void *data) { + uint8_t sdFileIndex = Endianness::fromBE_P(data) - 1; + + #if ENABLED(DGUS_USERCONFIRM) + if (screen.isOnUserConfirmationScreen()) { + screen.userConfirmation(); + return; + } + #endif + dgus_sdcard_handler.onFileSelect(DGUS_FILE_FROM_INDEX(sdFileIndex % 5)); +} + +void DGUSRxHandler::stringToExtra(DGUS_VP &vp, void *data_ptr) { + if (!vp.size || !vp.extra) return; + memcpy(vp.extra, data_ptr, vp.size); +} + +void DGUSRxHandler::disabled(DGUS_VP &vp, void *data_ptr) { + UNUSED(vp); + UNUSED(data_ptr); + screen.angryBeeps(2); +} + +#endif // DGUS_LCD_UI_E3S1PRO diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSRxHandler.h b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSRxHandler.h new file mode 100644 index 000000000000..562edf950948 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSRxHandler.h @@ -0,0 +1,128 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "DGUSDisplay.h" +#include "definition/DGUS_VP.h" + +namespace DGUSRxHandler { + void printSpeedPercentage(DGUS_VP &vp, void *data); + void zOffset(DGUS_VP &vp, void *data); + void extruderTargetTemp(DGUS_VP &vp, void *data); + void bedTargetTemp(DGUS_VP &vp, void *data); + void axis_X(DGUS_VP &vp, void *data); + void axis_Y(DGUS_VP &vp, void *data); + void axis_Z(DGUS_VP &vp, void *data); + void extrudeLength(DGUS_VP &vp, void *data); + void retractLength(DGUS_VP &vp, void *data); + void setLanguage(DGUS_VP &vp, void *data); + + template + void maxFeedrate(DGUS_VP &vp, void *data) { + feedRate_t maxSpeed = (float)Endianness::fromBE_P(data); + ExtUI::setAxisMaxFeedrate_mm_s(maxSpeed, axis); + } + template + void maxAcceleration(DGUS_VP &vp, void *data) { + float maxAcceleration = (float)Endianness::fromBE_P(data); + ExtUI::setAxisMaxAcceleration_mm_s2(maxAcceleration, axis); + } + template + void maxJerk(DGUS_VP &vp, void *data) { + float maxJerk = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setAxisMaxJerk_mm_s(maxJerk, axis); + } + template + void stepsPerMM(DGUS_VP &vp, void *data) { + float stepsPerMm = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setAxisSteps_per_mm(stepsPerMm, axis); + } + + #if ENABLED(PIDTEMP) + template + void PID_P(DGUS_VP &vp, void *data) { + float pidValue = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setPID( + pidValue, + ExtUI::getPID_Ki(extruder), + ExtUI::getPID_Kd(extruder), + extruder + ); + } + template + void PID_I(DGUS_VP &vp, void *data) { + float pidValue = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setPID( + ExtUI::getPID_Kp(extruder), + pidValue, + ExtUI::getPID_Kd(extruder), + extruder + ); + } + template + void PID_D(DGUS_VP &vp, void *data) { + float pidValue = dgus.fromFixedPoint(Endianness::fromBE_P(data)); + ExtUI::setPID( + ExtUI::getPID_Kp(extruder), + ExtUI::getPID_Ki(extruder), + pidValue, + extruder + ); + } + #endif // PIDTEMP + + #if ENABLED(PIDTEMPBED) + void bed_PID_P(DGUS_VP &vp, void *data); + void bed_PID_I(DGUS_VP &vp, void *data); + void bed_PID_D(DGUS_VP &vp, void *data); + #endif + + void fanSpeed(DGUS_VP &vp, void *data); + void sdCardFileSection(DGUS_VP &vp, void *data); + + void stringToExtra(DGUS_VP &vp, void *data); + void disabled(DGUS_VP &vp, void *data); + + template + void integerToExtra(DGUS_VP &vp, void *data_ptr) { + if (!vp.size || !vp.extra) return; + switch (vp.size) { + default: return; + case 1: { + const uint8_t data = *(uint8_t*)data_ptr; + *(T*)vp.extra = (T)data; + break; + } + case 2: { + const uint16_t data = Endianness::fromBE_P(data_ptr); + *(T*)vp.extra = (T)data; + break; + } + case 4: { + const uint32_t data = Endianness::fromBE_P(data_ptr); + *(T*)vp.extra = (T)data; + break; + } + } + } + +} diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler.cpp new file mode 100644 index 000000000000..17a05ae655a2 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler.cpp @@ -0,0 +1,39 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../../inc/MarlinConfigPre.h" + +#if ENABLED(DGUS_LCD_UI_E3S1PRO) + +#include "../../../sd/cardreader.h" +#include "DGUSSDCardHandler.h" + +char DGUS_SDCardHandler::filenames[5][LONG_FILENAME_LENGTH] = {0}; + +void DGUS_SDCardHandler::setFilename(file_t file, const char* filename, bool isDir) { + const uint8_t fileIndex = DGUS_FILE_TO_INDEX(file); + filenames[fileIndex][0] = '\0'; + if (filename) strcat(filenames[fileIndex], filename); + if (isDir) strcat(filenames[fileIndex], "/"); +} + +#endif // DGUS_LCD_UI_E3S1PRO diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler.h b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler.h new file mode 100644 index 000000000000..884418427183 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler.h @@ -0,0 +1,75 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include +#include "../../../sd/cardreader.h" + +#define DGUS_E3S1PRO_BASIC_SDCARD_MAX_FILES 20 +#define DGUS_E3S1PRO_BASIC_SDCARD_FILES_PER_PAGE 5 + +#define DGUS_PAGE_TO_SCREEN(page) (DGUS_ScreenID)((uint8_t)DGUS_ScreenID::FILE1 + ((uint8_t)page - (uint8_t)DGUS_SDCardHandler::page_t::PAGE_1)) +#define DGUS_SCREEN_TO_PAGE(screen) (DGUS_SDCardHandler::page_t)((uint8_t)DGUS_SDCardHandler::page_t::PAGE_1 + ((uint8_t)screen - (uint8_t)DGUS_ScreenID::FILE1)) + +#define DGUS_PAGE_TO_INDEX(page) (uint8_t)((uint8_t)page - (uint8_t)DGUS_SDCardHandler::page_t::PAGE_1) +#define DGUS_FILE_TO_INDEX(file) (uint8_t)((uint8_t)file - (uint8_t)DGUS_SDCardHandler::file_t::FILE_1) + +#define DGUS_PAGE_FROM_INDEX(index) (DGUS_SDCardHandler::page_t)(index + (uint8_t)DGUS_SDCardHandler::page_t::PAGE_1) +#define DGUS_FILE_FROM_INDEX(index) (DGUS_SDCardHandler::file_t)(index + (uint8_t)DGUS_SDCardHandler::file_t::FILE_1) + +class DGUS_SDCardHandler { + public: + enum class page_t : uint8_t { + PAGE_1 = 1, + PAGE_2, + PAGE_3, + PAGE_4 + }; + + enum class file_t : uint8_t { + FILE_1 = 1, + FILE_2, + FILE_3, + FILE_4, + FILE_5, + FILE_Max = FILE_5, + FILE_Count + }; + + static char filenames[5][LONG_FILENAME_LENGTH]; + +public: + static void Reset(); + + static void onPageLoad(page_t page); + static bool onFileSelect(file_t file); + + static page_t onFirstPage(); + static page_t onLastPage(); + static page_t onPreviousPage(); + static page_t onNextPage(); + +private: + static void setFilename(file_t file, const char* filename, bool isDir = false) PROGMEM; +}; + +extern DGUS_SDCardHandler dgus_sdcard_handler; diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler_Advanced.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler_Advanced.cpp new file mode 100644 index 000000000000..e53f9b84e725 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler_Advanced.cpp @@ -0,0 +1,157 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../../inc/MarlinConfigPre.h" + +#if ALL(DGUS_LCD_UI_E3S1PRO, DGUS_ADVANCED_SDCARD) + +#include "DGUSSDCardHandler.h" +#include "DGUSScreenHandler.h" +#include "DGUSDisplay.h" + +static DGUS_SDCardHandler::page_t currentPage = DGUS_SDCardHandler::page_t::PAGE_1; +static uint8_t currentVirtualPage = 0; +static size_t fileCount = 0; +static ExtUI::FileList fileList = ExtUI::FileList(); + +void DGUS_SDCardHandler::Reset() { + currentPage = DGUS_SDCardHandler::page_t::PAGE_1; + currentVirtualPage = 0; + + while (!fileList.isAtRootDir()) + fileList.upDir(); + + fileList.refresh(); + fileCount = fileList.count(); +} + +void DGUS_SDCardHandler::onPageLoad(DGUS_SDCardHandler::page_t page) { + setFilename(file_t::FILE_1, NULL); + setFilename(file_t::FILE_2, NULL); + setFilename(file_t::FILE_3, NULL); + setFilename(file_t::FILE_4, NULL); + setFilename(file_t::FILE_5, NULL); + + uint8_t pageIndex = currentVirtualPage; + uint16_t currentSeekPos = 0; + + currentSeekPos += pageIndex * DGUS_E3S1PRO_BASIC_SDCARD_FILES_PER_PAGE; + + file_t currentFile = file_t::FILE_1; + if (!fileList.isAtRootDir()) { + if (currentPage == page_t::PAGE_1) { + setFilename(currentFile, "-- dir up --"); + currentFile = DGUS_FILE_FROM_INDEX(DGUS_FILE_TO_INDEX(currentFile) + 1); + } + else + currentSeekPos -= 1; // account for the updir entry on page 1 + } + + while (currentFile <= file_t::FILE_5 + && fileList.seek(currentSeekPos, true) + && currentSeekPos < fileCount) { + ++currentSeekPos; + setFilename(currentFile, fileList.filename(), fileList.isDir()); + currentFile = DGUS_FILE_FROM_INDEX(DGUS_FILE_TO_INDEX(currentFile) + 1); + } +} + +bool DGUS_SDCardHandler::onFileSelect(DGUS_SDCardHandler::file_t file) { + uint8_t fileIndex = DGUS_FILE_TO_INDEX(file); + if (!filenames[fileIndex][0]) + return false; + + bool changeDir = false; + if (!fileList.isAtRootDir() + && currentPage == page_t::PAGE_1 + && file == file_t::FILE_1) { + fileList.upDir(); + changeDir = true; + } + else if (filenames[fileIndex][strlen(filenames[fileIndex])-1] == '/') { + filenames[fileIndex][strlen(filenames[fileIndex])-1] = '\0'; + fileList.changeDir(filenames[fileIndex]); + changeDir = true; + } + + if (changeDir) { + fileList.refresh(); + currentPage = DGUS_SDCardHandler::page_t::PAGE_1; + currentVirtualPage = 0; + fileCount = fileList.count(); + + if (currentPage == page_t::PAGE_1) + onPageLoad(page_t::PAGE_1); + else + screen.triggerScreenChange(DGUS_ScreenID::FILE1); + return true; + } + + screen.startPrintFromSD(filenames[fileIndex]); + return true; +} + +DGUS_SDCardHandler::page_t DGUS_SDCardHandler::onFirstPage() { + currentPage = DGUS_SDCardHandler::page_t::PAGE_1; + currentVirtualPage = 0; + return currentPage; +} + +DGUS_SDCardHandler::page_t DGUS_SDCardHandler::onLastPage() { + currentVirtualPage = (fileCount - 1 + (fileList.isAtRootDir() ? 0 : 1)) / DGUS_E3S1PRO_BASIC_SDCARD_FILES_PER_PAGE; + + if (currentVirtualPage >= 4) { + currentPage = page_t::PAGE_4; + onPageLoad(page_t::PAGE_4); + } + else + currentPage = DGUS_PAGE_FROM_INDEX(currentVirtualPage); + + return currentPage; +} + +DGUS_SDCardHandler::page_t DGUS_SDCardHandler::onPreviousPage() { + if (currentVirtualPage > 0) { + currentVirtualPage -= 1; + + if (currentVirtualPage >= 4) + currentPage = page_t::PAGE_4; + else + currentPage = DGUS_PAGE_FROM_INDEX(currentVirtualPage); + } + return currentPage; +} + +DGUS_SDCardHandler::page_t DGUS_SDCardHandler::onNextPage() { + if (currentVirtualPage < (fileCount - 1 + (fileList.isAtRootDir() ? 0 : 1)) / DGUS_E3S1PRO_BASIC_SDCARD_FILES_PER_PAGE) { + if (++currentVirtualPage >= 4) { + currentPage = page_t::PAGE_4; + onPageLoad(page_t::PAGE_4); + } + else + currentPage = DGUS_PAGE_FROM_INDEX(currentVirtualPage); + } + + return currentPage; +} + +#endif // DGUS_LCD_UI_E3S1PRO && DGUS_ADVANCED_SDCARD diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler_Basic.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler_Basic.cpp new file mode 100644 index 000000000000..85c7b660a7ec --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSDCardHandler_Basic.cpp @@ -0,0 +1,137 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../../inc/MarlinConfigPre.h" + +#define DGUS_E3S1PRO_BASIC_SDCARD_MAX_FILES 20 +#define DGUS_E3S1PRO_BASIC_SDCARD_FILES_PER_PAGE 5 + +#if ENABLED(DGUS_LCD_UI_E3S1PRO) && DISABLED(DGUS_ADVANCED_SDCARD) + +#include "DGUSSDCardHandler.h" +#include "DGUSScreenHandler.h" +#include "DGUSDisplay.h" + +static DGUS_SDCardHandler::page_t currentPage = DGUS_SDCardHandler::page_t::PAGE_1; +static size_t fileCount = 0; +static ExtUI::FileList fileList = ExtUI::FileList(); + +void DGUS_SDCardHandler::Reset() { + currentPage = DGUS_SDCardHandler::page_t::PAGE_1; + + while (!fileList.isAtRootDir()) + fileList.upDir(); + + fileCount = 0; + uint16_t currentSeekPos = 0; + uint16_t entriesCount = fileList.count(); + while (currentSeekPos < entriesCount + && fileCount < DGUS_E3S1PRO_BASIC_SDCARD_MAX_FILES + && fileList.seek(currentSeekPos, true) + ) { + if (!fileList.isDir()) fileCount++; + currentSeekPos++; + } + + #ifdef DEBUG_DGUSLCD + DEBUG_ECHOPGM("Reset() :", fileCount); + DEBUG_CHAR('/'); + DEBUG_ECHOLN(currentSeekPos); + #endif +} + +void DGUS_SDCardHandler::onPageLoad(DGUS_SDCardHandler::page_t page) { + setFilename(file_t::FILE_1, NULL); + setFilename(file_t::FILE_2, NULL); + setFilename(file_t::FILE_3, NULL); + setFilename(file_t::FILE_4, NULL); + setFilename(file_t::FILE_5, NULL); + + uint8_t pageIndex = DGUS_PAGE_TO_INDEX(page); + uint16_t currentFilePos = 0; + uint16_t currentSeekPos = 0; + uint16_t entriesCount = fileList.count(); + + #ifdef DEBUG_DGUSLCD + DEBUG_ECHOLNPGM("onPageLoad(): seek page ", pageIndex); + #endif + while (currentFilePos < pageIndex * DGUS_E3S1PRO_BASIC_SDCARD_FILES_PER_PAGE + && fileList.seek(currentSeekPos, true) + && currentSeekPos < entriesCount + ) { + ++currentSeekPos; + if (!fileList.isDir()) + currentFilePos++; + } + + #ifdef DEBUG_DGUSLCD + DEBUG_ECHOPGM("onPageLoad() :", currentFilePos); + DEBUG_CHAR('/'); + DEBUG_ECHOLN(currentSeekPos - 1); + #endif + + file_t currentFile = file_t::FILE_1; + while (currentFilePos < (pageIndex + 1) * DGUS_E3S1PRO_BASIC_SDCARD_FILES_PER_PAGE + && fileList.seek(currentSeekPos, true) + && currentSeekPos < entriesCount + ) { + ++currentSeekPos; + if (!fileList.isDir()) { + ++currentFilePos; + setFilename(currentFile, fileList.longFilename()); + currentFile = DGUS_FILE_FROM_INDEX(DGUS_FILE_TO_INDEX(currentFile) + 1); + } + } +} + +bool DGUS_SDCardHandler::onFileSelect(DGUS_SDCardHandler::file_t file) { + uint8_t fileIndex = DGUS_FILE_TO_INDEX(file); + if (!filenames[fileIndex][0]) + return false; + + screen.startPrintFromSD(filenames[fileIndex]); + return true; +} + +DGUS_SDCardHandler::page_t DGUS_SDCardHandler::onFirstPage() { + currentPage = DGUS_SDCardHandler::page_t::PAGE_1; + return currentPage; +} + +DGUS_SDCardHandler::page_t DGUS_SDCardHandler::onLastPage() { + currentPage = DGUS_PAGE_FROM_INDEX(fileCount / DGUS_E3S1PRO_BASIC_SDCARD_FILES_PER_PAGE); + return currentPage; +} + +DGUS_SDCardHandler::page_t DGUS_SDCardHandler::onPreviousPage() { + if (currentPage > page_t::PAGE_1) + currentPage = DGUS_PAGE_FROM_INDEX(DGUS_PAGE_TO_INDEX(currentPage) - 1); + return currentPage; +} + +DGUS_SDCardHandler::page_t DGUS_SDCardHandler::onNextPage() { + if (DGUS_PAGE_TO_INDEX(currentPage) < (fileCount / DGUS_E3S1PRO_BASIC_SDCARD_FILES_PER_PAGE) - 1) + currentPage = DGUS_PAGE_FROM_INDEX(DGUS_PAGE_TO_INDEX(currentPage) + 1); + return currentPage; +} + +#endif // DGUS_LCD_UI_E3S1PRO && !DGUS_ADVANCED_SDCARD diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSScreenHandler.cpp new file mode 100644 index 000000000000..37c52d86cdf4 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSScreenHandler.cpp @@ -0,0 +1,549 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../../inc/MarlinConfigPre.h" + +#if ENABLED(DGUS_LCD_UI_E3S1PRO) + +#include "DGUSDisplay.h" +#include "DGUSScreenHandler.h" +#include "DGUSSDCardHandler.h" + +#include "definition/DGUS_ScreenAddrList.h" +#include "definition/DGUS_ScreenSetup.h" + +#include "../../../gcode/queue.h" + +#define DGUS_SCREEN_PAGE_DEBUG // uncomment to debug page changes + +DGUSScreenHandler::eeprom_data_t DGUSScreenHandler::config = {}; +uint16_t DGUSScreenHandler::currentMeshPointIndex = 0; +bool DGUSScreenHandler::isLeveling = false; +char DGUSScreenHandler::homeStatusMessage[128]; + +bool DGUSScreenHandler::settings_ready = false; +bool DGUSScreenHandler::booted = false; + +DGUS_ScreenID DGUSScreenHandler::current_screen = DGUS_ScreenID::BOOT; +DGUS_ScreenID DGUSScreenHandler::new_screen = DGUS_ScreenID::BOOT; +DGUS_ScreenID DGUSScreenHandler::wait_return_screen = DGUS_ScreenID::BOOT; +DGUS_ScreenID DGUSScreenHandler::confirm_return_screen = DGUS_ScreenID::BOOT; +bool DGUSScreenHandler::full_update = false; +uint8_t DGUSScreenHandler::angry_beeps = 0; + +#if HAS_MEDIA + static const char* const noFileSelected = ""; + const char* DGUSScreenHandler::sdPrintFilename = noFileSelected; +#endif + +#if ENABLED(POWER_LOSS_RECOVERY) + bool DGUSScreenHandler::powerLossRecoveryAvailable = false; +#endif + +#if ENABLED(DGUS_SOFTWARE_AUTOSCROLL) + ssize_t DGUSScreenHandler::currentScrollIndex = 0; + size_t DGUSScreenHandler::pageMaxStringLen = 0; + size_t DGUSScreenHandler::pageMaxControlLen = 0; +#endif + +millis_t DGUSScreenHandler::status_expire = 0; +millis_t DGUSScreenHandler::eeprom_save = 0; + +void DGUSScreenHandler::init() { + dgus.init(); + moveToScreen(DGUS_ScreenID::BOOT, true); +} + +void DGUSScreenHandler::ready() { + dgus.playSound(1); +} + +void DGUSScreenHandler::loop() { + const millis_t ms = ExtUI::safe_millis(); + static millis_t next_event_ms = 0, next_beep_ms = 0; + static bool wasLeveling = isLeveling; + + if (new_screen != DGUS_ScreenID::BOOT) { + const DGUS_ScreenID screen = new_screen; + new_screen = DGUS_ScreenID::BOOT; + + #if ENABLED(DGUS_SOFTWARE_AUTOSCROLL) + currentScrollIndex = -DGUS_AUTOSCROLL_START_CYCLES; + pageMaxStringLen = 0; + pageMaxControlLen = 0; + #endif + + if (current_screen == screen) + triggerFullUpdate(); + else + moveToScreen(screen); + return; + } + + if (!booted && current_screen == DGUS_ScreenID::HOME) { + // Boot complete + booted = true; + dgus.readVersions(); + return; + } + + #if ENABLED(POWER_LOSS_RECOVERY) + if (booted && powerLossRecoveryAvailable) + { + triggerScreenChange(DGUS_ScreenID::POWERCONTINUE); + powerLossRecoveryAvailable = false; + } + #endif + + if (ELAPSED(ms, next_event_ms) || full_update) { + next_event_ms = ms + (booted ? DGUS_UPDATE_INTERVAL_MS : 50); + + #if ENABLED(DGUS_SOFTWARE_AUTOSCROLL) + currentScrollIndex += 1; + if (currentScrollIndex > (ssize_t)(pageMaxStringLen - pageMaxControlLen) + DGUS_AUTOSCROLL_END_CYCLES) + currentScrollIndex = -DGUS_AUTOSCROLL_START_CYCLES; + #endif + + if (angry_beeps) { + --angry_beeps; + dgus.playSound(3); + } + + if (!sendScreenVPData(current_screen, full_update)) + DEBUG_ECHOLNPGM("SendScreenVPData failed"); + + return; + } + + if (ELAPSED(ms, next_beep_ms)) { + next_beep_ms = ms + 300; + + if (angry_beeps) { + --angry_beeps; + dgus.playSound(0, 500/8, 100); + } + } + + if (wasLeveling && !isLeveling) { + #if ENABLED(AUTO_BED_LEVELING_UBL) + ExtUI::injectCommands(ExtUI::getLevelingIsValid() ? F("G29 S0") : F("G29 S1\nG29 P3\nG29 S0")); + #endif + + config.levelingEnabled = ExtUI::getLevelingIsValid(); + ExtUI::setLevelingActive(config.levelingEnabled); + triggerEEPROMSave(); + } + wasLeveling = isLeveling; + + if (!settings_ready && booted) return; + + if (status_expire > 0 && ELAPSED(ms, status_expire)) { + setStatusMessage(FPSTR(NUL_STR), 0); + return; + } + + if (eeprom_save > 0 && ELAPSED(ms, eeprom_save) && isPrinterIdle()) { + eeprom_save = 0; + ExtUI::injectCommands(F("M500")); + return; + } + + dgus.loop(); +} + +void DGUSScreenHandler::printerKilled(FSTR_P const error, FSTR_P const component) { + dgus.playSound(0, (uint8_t)(3000/8), 100); + setStatusMessage(error); + moveToScreen(DGUS_ScreenID::ABNORMAL); +} + +void DGUSScreenHandler::userConfirmRequired(const char * const msg) { + #if ENABLED(DGUS_USERCONFIRM) + if (confirm_return_screen == DGUS_ScreenID::BOOT) + confirm_return_screen = getCurrentScreen(); + + strcpy(dgus_sdcard_handler.filenames[0], msg); + dgus_sdcard_handler.filenames[1][0] = '\0'; + dgus_sdcard_handler.filenames[2][0] = '\0'; + dgus_sdcard_handler.filenames[3][0] = '\0'; + + strcpy(dgus_sdcard_handler.filenames[4], "["); + strcat(dgus_sdcard_handler.filenames[4], GET_TEXT(MSG_BUTTON_CONFIRM)); + strcat(dgus_sdcard_handler.filenames[4], "]"); + + new_screen = DGUS_ScreenID::FILE1; + #if ALL(DEBUG_OUT, DGUS_SCREEN_PAGE_DEBUG) + DEBUG_ECHOLNPGM("trig confirm: ", msg, ", ret: ", (uint16_t)confirm_return_screen); + #endif + #else + UNUSED(msg); + #endif +} + +void DGUSScreenHandler::userConfirmation() { + #if ENABLED(DGUS_USERCONFIRM) + if (confirm_return_screen == DGUS_ScreenID::BOOT) { + DEBUG_ECHOLNPGM("DGUS: User confirmation triggered but no return screen"); + return; + } + + if (confirm_return_screen >= DGUS_ScreenID::FILE1 && confirm_return_screen <= DGUS_ScreenID::FILE4) + dgus_sdcard_handler.onPageLoad(DGUS_SCREEN_TO_PAGE(confirm_return_screen)); + + #ifdef DEBUG_DGUSLCD + DEBUG_ECHOLNPGM("trig confirmed, ret:", (uint16_t)confirm_return_screen); + #endif + + new_screen = confirm_return_screen; + confirm_return_screen = DGUS_ScreenID::BOOT; + ExtUI::setUserConfirmed(); + #endif +} + +void DGUSScreenHandler::settingsReset() { + config.initialized = true; + config.volume = DGUS_DEFAULT_VOLUME; + config.brightness = DGUS_DEFAULT_BRIGHTNESS; + config.language = DGUS_Data::Language::Default; + config.jogLength = DGUS_Data::AxisControlCommand::Jog_1mm; + config.plaExtruderTemp = PREHEAT_1_TEMP_HOTEND; + config.plaBedTemp = PREHEAT_1_TEMP_BED; + config.absExtruderTemp = PREHEAT_2_TEMP_HOTEND; + config.absBedTemp = PREHEAT_2_TEMP_BED; + config.levelingEnabled = ExtUI::getLevelingActive(); + + if (!settings_ready) { + settings_ready = true; + ready(); + } + + setStatusMessage(GET_TEXT_F(DGUS_MSG_RESET_EEPROM)); +} + +void DGUSScreenHandler::storeSettings(char *buff) { + static_assert(sizeof(config) <= ExtUI::eeprom_data_size, "sizeof(eeprom_data_t) > eeprom_data_size."); + + config.initialized = true; + config.volume = dgus.getVolume(); + config.brightness = dgus.getBrightness(); + + memcpy(buff, &config, sizeof(config)); +} + +void DGUSScreenHandler::loadSettings(const char *buff) { + static_assert(sizeof(config) <= ExtUI::eeprom_data_size, "sizeof(eeprom_data_t) > eeprom_data_size."); + memcpy(&config, buff, sizeof(config)); + + if (!config.initialized + || config.language < DGUS_Data::Language::Chinese_Simplified + || config.language > DGUS_Data::Language::Turkish + || config.jogLength < DGUS_Data::AxisControlCommand::Jog_10mm + || config.jogLength > DGUS_Data::AxisControlCommand::Jog_0_1mm) { + DEBUG_ECHOLNPGM("invalid DGUS settings, resetting"); + settingsReset(); + } + + ExtUI::setLevelingActive(config.levelingEnabled); + dgus.setVolume(config.volume); + dgus.setBrightness(config.brightness); +} + +void DGUSScreenHandler::configurationStoreWritten(bool success) { + if (!success) + setStatusMessage(GET_TEXT_F(DGUS_MSG_WRITE_EEPROM_FAILED)); +} + +void DGUSScreenHandler::configurationStoreRead(bool success) { + if (!success) { + setStatusMessage(GET_TEXT_F(DGUS_MSG_READ_EEPROM_FAILED)); + } + else if (!settings_ready) { + settings_ready = true; + ready(); + } +} + +void DGUSScreenHandler::playTone(const uint16_t frequency, const uint16_t duration) { + if (WITHIN(frequency, 1, 255)) { + if (WITHIN(duration, 1, 255)) + dgus.playSound((uint8_t)frequency, (uint8_t)duration); + else + dgus.playSound((uint8_t)frequency); + } +} + +void DGUSScreenHandler::angryBeeps(const uint8_t beepCount) { + angry_beeps = beepCount; +} + +void DGUSScreenHandler::levelingStart() { + isLeveling = true; + currentMeshPointIndex = 0; + triggerFullUpdate(); +} + +void DGUSScreenHandler::levelingEnd() { + if (!isLeveling) return; + + #if ENABLED(DEBUG_DGUSLCD) + DEBUG_ECHOLNPGM("levelingEnd(), valid=", ExtUI::getLevelingIsValid()); + #endif + + isLeveling = false; + currentMeshPointIndex = 0; + triggerFullUpdate(); +} + +void DGUSScreenHandler::meshUpdate(const int8_t xpos, const int8_t ypos) { + if (!isLeveling) return; + + currentMeshPointIndex++; + triggerFullUpdate(); +} + +void DGUSScreenHandler::printTimerStarted() { + TERN_(HAS_FILAMENT_SENSOR, ExtUI::setFilamentRunoutState(false)); + triggerScreenChange(DGUS_ScreenID::PAUSE); +} + +void DGUSScreenHandler::printTimerPaused() { + dgus.playSound(3); + triggerScreenChange(DGUS_ScreenID::RESUME); +} + +void DGUSScreenHandler::printTimerStopped() { + dgus.playSound(3); + triggerScreenChange(DGUS_ScreenID::FINISH); +} + +void DGUSScreenHandler::filamentRunout(const ExtUI::extruder_t extruder) { + triggerScreenChange(DGUS_ScreenID::FILAMENTUSEUP); + dgus.playSound(3); +} + +ssize_t DGUSScreenHandler::getScrollIndex() { + return currentScrollIndex; +} + +void DGUSScreenHandler::addCurrentPageStringLength(size_t stringLength, size_t textControlLength) { + NOLESS(pageMaxStringLen, stringLength); + NOLESS(pageMaxControlLen, textControlLength); +} + +#if HAS_MEDIA + + void DGUSScreenHandler::sdCardInserted() {} + + void DGUSScreenHandler::sdCardRemoved() { + sdPrintFilename = noFileSelected; + + if (getCurrentScreen() >= DGUS_ScreenID::FILE1 + && getCurrentScreen() <= DGUS_ScreenID::FILE4) { + triggerTempScreenChange(DGUS_ScreenID::SDCARDCHECK, DGUS_ScreenID::HOME); + } + } + + void DGUSScreenHandler::sdCardError() {} + +#endif // HAS_MEDIA + +#if ENABLED(POWER_LOSS_RECOVERY) + void DGUSScreenHandler::powerLossResume() { + powerLossRecoveryAvailable = true; + } +#endif + +#if HAS_PID_HEATING + void DGUSScreenHandler::pidTuning(const ExtUI::result_t rst) { + dgus.playSound(3); + } +#endif + +void DGUSScreenHandler::steppersStatusChanged(bool steppersEnabled) { + refreshVP(DGUS_Addr::AXIS_StepperStatus); +} + +void DGUSScreenHandler::homingDone() { + if (isOnTempScreen(DGUS_ScreenID::AUTOHOME)) + triggerReturnScreen(); +} + +void DGUSScreenHandler::startPrintFromSD(const char* const filename) { + triggerScreenChange(DGUS_ScreenID::HOME); + sdPrintFilename = filename; + setStatusMessage(sdPrintFilename, 0); +} + +void DGUSScreenHandler::setStatusMessage(FSTR_P msg, const millis_t duration) { + setStatusMessage(FTOP(msg), duration); +} + +void DGUSScreenHandler::setStatusMessage(const char* msg, const millis_t duration) { + homeStatusMessage[0] = '\0'; + strncat(homeStatusMessage, msg, sizeof(homeStatusMessage) / sizeof(char) - 1); + status_expire = duration ? ExtUI::safe_millis() + duration : 0; +} + +DGUS_ScreenID DGUSScreenHandler::getCurrentScreen() { return current_screen; } + +void DGUSScreenHandler::homeThenChangeScreen(DGUS_ScreenID screen) { + triggerTempScreenChange(DGUS_ScreenID::AUTOHOME, screen); + ExtUI::injectCommands(F("G28")); +} + +void DGUSScreenHandler::triggerScreenChange(DGUS_ScreenID screen) { + if (confirm_return_screen != DGUS_ScreenID::BOOT) + confirm_return_screen = screen; + else + new_screen = screen; + wait_return_screen = DGUS_ScreenID::BOOT; // cancel temp screen + + #if ALL(DEBUG_OUT, DGUS_SCREEN_PAGE_DEBUG) + DEBUG_ECHOLNPGM("trig scr: ", (uint16_t)screen); + #endif +} + +void DGUSScreenHandler::triggerTempScreenChange(DGUS_ScreenID screen, DGUS_ScreenID returnScreen) { + if (confirm_return_screen != DGUS_ScreenID::BOOT) + confirm_return_screen = screen; + else + new_screen = screen; + wait_return_screen = returnScreen; + + #if ALL(DEBUG_OUT, DGUS_SCREEN_PAGE_DEBUG) + DEBUG_ECHOLNPGM("trig tmp: ", (uint16_t)screen, " ret: ", (uint16_t)returnScreen); + #endif +} + +void DGUSScreenHandler::triggerReturnScreen() { + new_screen = wait_return_screen; + wait_return_screen = DGUS_ScreenID::BOOT; + #if ALL(DEBUG_OUT, DGUS_SCREEN_PAGE_DEBUG) + DEBUG_ECHOLNPGM("trig ret scr"); + #endif +} + +bool DGUSScreenHandler::isOnTempScreen(DGUS_ScreenID screen) { + return wait_return_screen != DGUS_ScreenID::BOOT + && (screen == DGUS_ScreenID::BOOT || current_screen == screen); +} + +void DGUSScreenHandler::triggerFullUpdate() { + full_update = true; +} + +void DGUSScreenHandler::triggerEEPROMSave() { + eeprom_save = ExtUI::safe_millis() + 500; +} + +bool DGUSScreenHandler::isPrinterIdle() { + return (!ExtUI::commandsInQueue() && !ExtUI::isMoving()); +} + +const DGUS_Addr* DGUSScreenHandler::findScreenAddrList(DGUS_ScreenID screen) { + DGUS_ScreenAddrList list; + const DGUS_ScreenAddrList *map = screen_addr_list_map; + + do { + memcpy_P(&list, map, sizeof(*map)); + if (!list.addr_list) break; + if (list.screen == screen) return list.addr_list; + } while (++map); + + return nullptr; +} + +bool DGUSScreenHandler::callScreenSetup(DGUS_ScreenID screen) { + DGUS_ScreenSetup setup; + const DGUS_ScreenSetup *list = screen_setup_list; + + do { + memcpy_P(&setup, list, sizeof(*list)); + if (!setup.setup_fn) break; + if (setup.screen == screen) return setup.setup_fn(); + } while (++list); + + return true; +} + +void DGUSScreenHandler::moveToScreen(DGUS_ScreenID screen, bool abort_wait) { + current_screen = screen; + + if (!callScreenSetup(screen)) return; + if (!sendScreenVPData(screen, true)) return; + + dgus.switchScreen(current_screen); +} + +bool DGUSScreenHandler::sendScreenVPData(DGUS_ScreenID screen, bool complete_update) { + if (complete_update) full_update = false; + + const DGUS_Addr *list = findScreenAddrList(screen); + + while (true) { + if (!list) return true; // Nothing left to send + + const uint16_t addr = pgm_read_word(list++); + if (!addr) return true; // Nothing left to send + + DGUS_VP vp; + if (!DGUS_PopulateVP((DGUS_Addr)addr, &vp)) continue; // Invalid VP + if (!vp.tx_handler) continue; // Nothing to send + if (!complete_update + && !(vp.flags & VPFLAG_AUTOUPLOAD) + && TERN1(DGUS_SOFTWARE_AUTOSCROLL, !(vp.flags & VPFLAG_TXSTRING_AUTOSCROLL)) + ) continue; // Unnecessary VP + + uint8_t expected_tx = 6 + vp.size; // 6 bytes header + payload. + const millis_t try_until = ExtUI::safe_millis() + 1000; + + while (expected_tx > dgus.getFreeTxBuffer()) { + if (ELAPSED(ExtUI::safe_millis(), try_until)) return false; // Stop trying after 1 second + + dgus.flushTx(); // Flush the TX buffer + delay(50); + } + + vp.tx_handler(vp); + } +} + +bool DGUSScreenHandler::refreshVP(DGUS_Addr vpAddr) { + const DGUS_Addr *list = findScreenAddrList(current_screen); + + while (list && (uint16_t)*list) { + if (*list == vpAddr) { + DGUS_VP vp; + if (!DGUS_PopulateVP((DGUS_Addr)vpAddr, &vp) || !vp.tx_handler) + return false; + + vp.tx_handler(vp); + return true; + } + + list++; + } + + return false; +} + +#endif // DGUS_LCD_UI_E3S1PRO diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSScreenHandler.h b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSScreenHandler.h new file mode 100644 index 000000000000..9220f09aa3f7 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSScreenHandler.h @@ -0,0 +1,166 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "../../../inc/MarlinConfigPre.h" + +#include "config/DGUS_Addr.h" +#include "config/DGUS_Data.h" +#include "config/DGUS_Screen.h" +#include "config/DGUS_Constants.h" + +#include "DGUSSDCardHandler.h" + +#include "../ui_api.h" + +class DGUSScreenHandler { +public: + typedef struct { + bool initialized; + bool levelingEnabled; + uint8_t volume; + uint8_t brightness; + DGUS_Data::Language language; + DGUS_Data::AxisControlCommand jogLength; + uint16_t plaExtruderTemp; + uint16_t plaBedTemp; + uint16_t absExtruderTemp; + uint16_t absBedTemp; + } eeprom_data_t; + +public: + static eeprom_data_t config; + static uint16_t currentMeshPointIndex; + static bool isLeveling; + + static char homeStatusMessage[128]; + +private: + static bool settings_ready; + static bool booted; + + static DGUS_ScreenID current_screen; + static DGUS_ScreenID new_screen; + static DGUS_ScreenID wait_return_screen; + static DGUS_ScreenID confirm_return_screen; + static bool full_update; + static uint8_t angry_beeps; + + #if HAS_MEDIA + static const char* sdPrintFilename; + #endif + + #if ENABLED(POWER_LOSS_RECOVERY) + static bool powerLossRecoveryAvailable; + #endif + + #if ENABLED(DGUS_SOFTWARE_AUTOSCROLL) + static ssize_t currentScrollIndex; + static size_t pageMaxStringLen; + static size_t pageMaxControlLen; + #endif + + static millis_t status_expire; + static millis_t eeprom_save; + +public: + DGUSScreenHandler() = default; + + static void init(); + static void ready(); + static void loop(); + + static void printerKilled(FSTR_P const error, FSTR_P const component); + static bool isOnUserConfirmationScreen() { return confirm_return_screen != DGUS_ScreenID::BOOT; } + static void userConfirmRequired(const char * const msg); + static void userConfirmation(); + static void settingsReset(); + static void storeSettings(char *buff); + static void loadSettings(const char *buff); + static void configurationStoreWritten(bool success); + static void configurationStoreRead(bool success); + + static void playTone(const uint16_t frequency, const uint16_t duration); + static void angryBeeps(const uint8_t beepCount); + + static void levelingStart(); + static void levelingEnd(); + static void meshUpdate(const int8_t xpos, const int8_t ypos); + + static void printTimerStarted(); + static void printTimerPaused(); + static void printTimerStopped(); + static void filamentRunout(const ExtUI::extruder_t extruder); + + #if ENABLED(DGUS_SOFTWARE_AUTOSCROLL) + static ssize_t getScrollIndex(); + static void addCurrentPageStringLength(size_t stringLength, size_t textControlLength); + #endif + + #if HAS_MEDIA + /// Marlin informed us that a new SD has been inserted. + static void sdCardInserted(); + /// Marlin informed us that the SD Card has been removed(). + static void sdCardRemoved(); + /// Marlin informed us about a bad SD Card. + static void sdCardError(); + + static const char* getSDCardPrintFilename() { return sdPrintFilename; } + #endif + + #if ENABLED(POWER_LOSS_RECOVERY) + static void powerLossResume(); + #endif + + #if HAS_PID_HEATING + static void pidTuning(const ExtUI::result_t rst); + #endif + + static void steppersStatusChanged(bool steppersEnabled); + static void homingDone(); + + static void startPrintFromSD(const char* const filename); + static void setStatusMessage(FSTR_P msg, const millis_t duration=DGUS_STATUS_EXPIRATION_MS); + static void setStatusMessage(const char* msg, const millis_t duration=DGUS_STATUS_EXPIRATION_MS); + + static DGUS_ScreenID getCurrentScreen(); + static void homeThenChangeScreen(DGUS_ScreenID screen); + static void triggerScreenChange(DGUS_ScreenID screen); + static void triggerTempScreenChange(DGUS_ScreenID screen, DGUS_ScreenID returnScreen); + static void triggerReturnScreen(); + static bool isOnTempScreen(DGUS_ScreenID screen = DGUS_ScreenID::BOOT); + static void triggerFullUpdate(); + + static void triggerEEPROMSave(); + + static bool isPrinterIdle(); + +private: + static const DGUS_Addr* findScreenAddrList(DGUS_ScreenID screen); + static bool callScreenSetup(DGUS_ScreenID screen); + + static void moveToScreen(DGUS_ScreenID screen, bool abort_wait=false); + static bool sendScreenVPData(DGUS_ScreenID screen, bool complete_update); + static bool refreshVP(DGUS_Addr vpAddr); +}; + +extern DGUSScreenHandler screen; diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSetupHandler.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSetupHandler.cpp new file mode 100644 index 000000000000..ddde2689ded0 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSetupHandler.cpp @@ -0,0 +1,60 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../../inc/MarlinConfigPre.h" + +#if ENABLED(DGUS_LCD_UI_E3S1PRO) + +#include "DGUSSetupHandler.h" + +#include "DGUSDisplay.h" +#include "DGUSScreenHandler.h" + +typedef void (*controlSet_t)(const DGUS_ScreenID, DGUSDisplay::DGUS_ControlType, DGUS_Control); + +bool DGUSSetupHandler::sdCardPrepare() { + bool isConfirm = false; + + #if ENABLED(DGUS_USERCONFIRM) + isConfirm = screen.isOnUserConfirmationScreen(); + controlSet_t controlSet = isConfirm ? dgus.disableControl : dgus.enableControl; + + // Only allow the fifth line used as the confirm button to be clicked + controlSet(DGUS_ScreenID::FILE1, DGUSDisplay::DGUS_ControlType::RETURN_KEY_CODE, DGUS_Control::FILE1_File1); + controlSet(DGUS_ScreenID::FILE1, DGUSDisplay::DGUS_ControlType::RETURN_KEY_CODE, DGUS_Control::FILE1_File2); + controlSet(DGUS_ScreenID::FILE1, DGUSDisplay::DGUS_ControlType::RETURN_KEY_CODE, DGUS_Control::FILE1_File3); + controlSet(DGUS_ScreenID::FILE1, DGUSDisplay::DGUS_ControlType::RETURN_KEY_CODE, DGUS_Control::FILE1_File4); + controlSet(DGUS_ScreenID::FILE1, DGUSDisplay::DGUS_ControlType::RETURN_KEY_CODE, DGUS_Control::FILE1_Start); + controlSet(DGUS_ScreenID::FILE1, DGUSDisplay::DGUS_ControlType::RETURN_KEY_CODE, DGUS_Control::FILE1_End); + controlSet(DGUS_ScreenID::FILE1, DGUSDisplay::DGUS_ControlType::RETURN_KEY_CODE, DGUS_Control::FILE1_Prev); + controlSet(DGUS_ScreenID::FILE1, DGUSDisplay::DGUS_ControlType::RETURN_KEY_CODE, DGUS_Control::FILE1_Next); + controlSet(DGUS_ScreenID::FILE1, DGUSDisplay::DGUS_ControlType::RETURN_KEY_CODE, DGUS_Control::FILE1_Home); + controlSet(DGUS_ScreenID::FILE1, DGUSDisplay::DGUS_ControlType::RETURN_KEY_CODE, DGUS_Control::FILE1_Print); + controlSet(DGUS_ScreenID::FILE1, DGUSDisplay::DGUS_ControlType::RETURN_KEY_CODE, DGUS_Control::FILE1_Ready); + controlSet(DGUS_ScreenID::FILE1, DGUSDisplay::DGUS_ControlType::RETURN_KEY_CODE, DGUS_Control::FILE1_Settings); + #endif + + if (!isConfirm) dgus_sdcard_handler.onPageLoad(DGUS_SCREEN_TO_PAGE(screen.getCurrentScreen())); + return true; +} + +#endif // DGUS_LCD_UI_E3S1PRO diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSetupHandler.h b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSetupHandler.h new file mode 100644 index 000000000000..f8e3b33da820 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSSetupHandler.h @@ -0,0 +1,26 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +namespace DGUSSetupHandler { + bool sdCardPrepare(); +} diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSTxHandler.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSTxHandler.cpp new file mode 100644 index 000000000000..0dd12b1612c0 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSTxHandler.cpp @@ -0,0 +1,223 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../../inc/MarlinConfigPre.h" + +#if ENABLED(DGUS_LCD_UI_E3S1PRO) + +#include "DGUSTxHandler.h" + +#include "DGUSScreenHandler.h" +#include "config/DGUS_Data.h" + +#include "../../../module/stepper.h" // for axis_enabled +#include "../../../libs/duration_t.h" + +void DGUSTxHandler::bootAnimation(DGUS_VP &vp) { + static uint16_t bootIcon = 0; + + dgus.write((uint16_t)vp.addr, Endianness::toBE(bootIcon)); + + if (++bootIcon > 100) { + bootIcon = 0; + screen.triggerScreenChange(DGUS_ScreenID::HOME); + } +} + +void DGUSTxHandler::zOffset(DGUS_VP &vp) { + const float position = ExtUI::getZOffset_mm(); + const int16_t data = dgus.toFixedPoint(position); // Round to 0.01 + dgus.write((int16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::elapsedHours(DGUS_VP &vp) { + const duration_t elapsedtime = ExtUI::getProgress_seconds_elapsed(); + const int16_t data = elapsedtime.hour(); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::elapsedMinutes(DGUS_VP &vp) { + const duration_t elapsedtime = ExtUI::getProgress_seconds_elapsed(); + const int16_t data = elapsedtime.minute() % 60; + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::levelingProgress(DGUS_VP &vp) { + const uint16_t data = (100 * screen.currentMeshPointIndex) / GRID_MAX_POINTS; + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::fanSpeed(DGUS_VP &vp) { + const int16_t data = (int16_t)ExtUI::getActualFan_percent(ExtUI::FAN0); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::levelingProgressIcon(DGUS_VP &vp) { + const uint16_t data = 1 + (50 * screen.currentMeshPointIndex) / GRID_MAX_POINTS; + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +#if HAS_FILAMENT_SENSOR + void DGUSTxHandler::filamentInsertionStatus(DGUS_VP &vp) { + const uint16_t data = ExtUI::getFilamentRunoutState() ? 1 : 0; + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); + } +#endif + +void DGUSTxHandler::sdCardInsertionStatus(DGUS_VP &vp) { + const uint16_t data = ExtUI::isMediaInserted() ? 1 : 0; + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +#if ENABLED(PIDTEMPBED) + void DGUSTxHandler::bed_PID_P(DGUS_VP &vp) { + const int16_t data = dgus.toFixedPoint(ExtUI::getBedPID_Kp()); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); + } + + void DGUSTxHandler::bed_PID_I(DGUS_VP &vp) { + const int16_t data = dgus.toFixedPoint(ExtUI::getBedPID_Ki()); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); + } + + void DGUSTxHandler::bed_PID_D(DGUS_VP &vp) { + const int16_t data = dgus.toFixedPoint(ExtUI::getBedPID_Kd()); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); + } +#endif // PIDTEMPBED + +static duration_t _PrintRemainingDurationEstimate() { + duration_t remainingDuration = 0; + + if (ExtUI::isPrinting()) { + const uint8_t progressPercentage = ExtUI::getProgress_percent(); + remainingDuration = duration_t(3600); + + if (progressPercentage >= 2) + remainingDuration = ExtUI::getProgress_seconds_elapsed() * ((100.0 / (float)progressPercentage) - 1.0); + } + + return remainingDuration; +} + +void DGUSTxHandler::printRemainingHours(DGUS_VP &vp) { + const int16_t data = _PrintRemainingDurationEstimate().hour(); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::printRemainingMinutes(DGUS_VP &vp) { + const int16_t data = _PrintRemainingDurationEstimate().minute() % 60; + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::printPercentage(DGUS_VP &vp) { + const int16_t data = ExtUI::getProgress_percent(); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::printSpeedPercentage(DGUS_VP &vp) { + const int16_t data = ExtUI::getFeedrate_percent(); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::extruderTargetTemp(DGUS_VP &vp) { + const int16_t data = ExtUI::getTargetTemp_celsius(ExtUI::H0); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::extruderCurrentTemp(DGUS_VP &vp) { + const int16_t data = ExtUI::getActualTemp_celsius(ExtUI::H0); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::bedTargetTemp(DGUS_VP &vp) { + const int16_t data = ExtUI::getTargetTemp_celsius(ExtUI::BED); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::bedCurrentTemp(DGUS_VP &vp) { + const int16_t data = ExtUI::getActualTemp_celsius(ExtUI::BED); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::axis_X(DGUS_VP &vp) { + const int16_t data = dgus.toFixedPoint(ExtUI::getAxisPosition_mm(ExtUI::X)); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::axis_Y(DGUS_VP &vp) { + const int16_t data = dgus.toFixedPoint(ExtUI::getAxisPosition_mm(ExtUI::Y)); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::axis_Z(DGUS_VP &vp) { + const int16_t data = dgus.toFixedPoint(ExtUI::getAxisPosition_mm(ExtUI::Z)); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::stepperStatus(DGUS_VP &vp) { + const bool areSteppersEnabled = stepper.axis_enabled.bits & (_BV(NUM_AXES) - 1); + const uint16_t data = areSteppersEnabled ? 1 : 0; + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::enableIfLanguageMatchesExtra(DGUS_VP &vp) { + const DGUS_Data::Language targetLanguage = (DGUS_Data::Language)reinterpret_cast(vp.extra); + const uint16_t data = targetLanguage == screen.config.language ? 1 : 0; + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); +} + +void DGUSTxHandler::extraToString(DGUS_VP &vp) { + if (!vp.size || !vp.extra) return; + + #if ENABLED(DGUS_SOFTWARE_AUTOSCROLL) + if (vp.flags & VPFLAG_TXSTRING_AUTOSCROLL) { + const char* stringStart = (const char*)vp.extra; + const size_t stringLength = strlen(stringStart); + screen.addCurrentPageStringLength(stringLength, vp.size); + + if (stringLength <= vp.size || screen.getScrollIndex() <= 0) { + // no scroll needed + } + else if ((ssize_t)stringLength - screen.getScrollIndex() <= vp.size) { + stringStart += (stringLength - vp.size); + } + else + stringStart += screen.getScrollIndex(); + + dgus.writeString((uint16_t)vp.addr, + stringStart, + vp.size, true, false, false); + return; + } + #endif // DGUS_SOFTWARE_AUTOSCROLL + + dgus.writeString((uint16_t)vp.addr, vp.extra, vp.size, true, false, false); +} + +void DGUSTxHandler::extraPGMToString(DGUS_VP &vp) { + if (!vp.size || !vp.extra) return; + + dgus.writeStringPGM((uint16_t)vp.addr, vp.extra, vp.size, true, false, false); +} + +#endif // DGUS_LCD_UI_E3S1PRO diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSTxHandler.h b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSTxHandler.h new file mode 100644 index 000000000000..2b22c7a62eb0 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSTxHandler.h @@ -0,0 +1,150 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "DGUSDisplay.h" +#include "definition/DGUS_VP.h" + +#define Swap16(val) (uint16_t((uint16_t(val) >> 8) | (uint16_t(val) << 8))) + +namespace DGUSTxHandler { + void bootAnimation(DGUS_VP &); + + void zOffset(DGUS_VP &); + void elapsedHours(DGUS_VP &); + void elapsedMinutes(DGUS_VP &); + void levelingProgress(DGUS_VP &vp); + void fanSpeed(DGUS_VP &vp); + void levelingProgressIcon(DGUS_VP &vp); + #if HAS_FILAMENT_SENSOR + void filamentInsertionStatus(DGUS_VP &vp); + #endif + void sdCardInsertionStatus(DGUS_VP &vp); + + template + void maxFeedrate(DGUS_VP &vp) { + const uint16_t data = (uint16_t)ExtUI::getAxisMaxFeedrate_mm_s(axis); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); + } + template + void maxAcceleration(DGUS_VP &vp) { + const uint16_t data = (uint16_t)ExtUI::getAxisMaxAcceleration_mm_s2(axis); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); + } + template + void maxJerk(DGUS_VP &vp) { + const uint16_t data = dgus.toFixedPoint(ExtUI::getAxisMaxJerk_mm_s(axis)); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); + } + template + void stepsPerMM(DGUS_VP &vp) { + const uint16_t data = dgus.toFixedPoint(ExtUI::getAxisSteps_per_mm(axis)); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); + } + + #if ENABLED(PIDTEMP) + template + void PID_P(DGUS_VP &vp) { + const uint16_t data = dgus.toFixedPoint(ExtUI::getPID_Kp(extruder)); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); + } + template + void PID_I(DGUS_VP &vp) { + const uint16_t data = dgus.toFixedPoint(ExtUI::getPID_Ki(extruder)); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); + } + template + void PID_D(DGUS_VP &vp) { + const uint16_t data = dgus.toFixedPoint(ExtUI::getPID_Kd(extruder)); + dgus.write((uint16_t)vp.addr, Endianness::toBE(data)); + } + #endif // PIDTEMP + + #if ENABLED(PIDTEMPBED) + void bed_PID_P(DGUS_VP &vp); + void bed_PID_I(DGUS_VP &vp); + void bed_PID_D(DGUS_VP &vp); + #endif + + void printRemainingHours(DGUS_VP &); + void printRemainingMinutes(DGUS_VP &); + void printPercentage(DGUS_VP &); + void printSpeedPercentage(DGUS_VP &); + void extruderTargetTemp(DGUS_VP &); + void extruderCurrentTemp(DGUS_VP &); + void bedTargetTemp(DGUS_VP &); + void bedCurrentTemp(DGUS_VP &); + void axis_X(DGUS_VP &); + void axis_Y(DGUS_VP &); + void axis_Z(DGUS_VP &); + void stepperStatus(DGUS_VP &); + void enableIfLanguageMatchesExtra(DGUS_VP &); + + void extraToString(DGUS_VP &); + void extraPGMToString(DGUS_VP &); + + template + void extraToInteger(DGUS_VP &vp) { + if (!vp.size || !vp.extra) return; + switch (vp.size) { + default: return; + case 1: { + const uint8_t data = uint8_t(*(T*)vp.extra); + dgus.write(uint16_t(vp.addr), data); + break; + } + case 2: { + const uint16_t data = uint16_t(*(T*)vp.extra); + dgus.write(uint16_t(vp.addr), Endianness::toBE(data)); + break; + } + case 4: { + const uint32_t data = uint32_t(*(T*)vp.extra); + dgus.write(uint16_t(vp.addr), Endianness::toBE(data)); + break; + } + } + } + + template + void extraToFixedPoint(DGUS_VP &vp) { + if (!vp.size || !vp.extra) return; + switch (vp.size) { + default: return; + case 1: { + const uint8_t data = dgus.toFixedPoint(*(T*)vp.extra); + dgus.write(uint16_t(vp.addr), data); + break; + } + case 2: { + const uint16_t data = dgus.toFixedPoint(*(T*)vp.extra); + dgus.write(uint16_t(vp.addr), Endianness::toBE(data)); + break; + } + case 4: { + const uint32_t data = dgus.toFixedPoint(*(T*)vp.extra); + dgus.write(uint16_t(vp.addr), Endianness::toBE(data)); + break; + } + } + } +} diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Addr.h b/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Addr.h new file mode 100644 index 000000000000..73694a4e09b4 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Addr.h @@ -0,0 +1,251 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#define DGUS_MAIN_STATUS_LEN 20 +#define DGUS_FILENAME_LEN 20 +#define DGUS_INFOSTRING_LEN 16 // 20 in the firmware, but really only shows 16 characters + +enum class DGUS_Addr : uint16_t { + END = 0, + BOOT_Logo = 0x1000, + CMD_MenuSelect = 0x1002, // r, int, DGUS_Data::MenuSelectCommand + CMD_Adjust = 0x1004, // r, int, DGUS_Data::AdjustCommand + MAIN_PrintSpeedPercentage = 0x1006, // rw, int, 3.0 + CMD_CheckKO = 0x1008, // r, int, DGUS_Data::CheckKOCommand + CMD_StopPause = 0x100A, // r, int, DGUS_Data::StopPauseCommand + CMD_CheckOK = 0x100C, // r, int, DGUS_Data::CheckOKCommand + MAIN_Icon_Percentage = 0x100E, // w, icon, 0-100 + MAIN_ElapsedHours = 0x1010, // w, int, 3.0 + MAIN_ElapsedMinutes = 0x1012, // w, int, 2.0 + MAIN_PrintPercentage = 0x1016, // w, int, 3.0 + MAIN_ZOffset = 0x1026, // w, int, 2.2 + CMD_PresetControl = 0x1030, // r, int, DGUS_Data::PresetControlCommand + CMD_TemperatureControl = 0x1032, // r, int, DGUS_Data::TemperatureControlCommand + MAIN_ExtruderTargetTemp = 0x1034, // rw, int, 3.0 + MAIN_ExtruderCurrentTemp = 0x1036, // w, int, 3.0 + MAIN_BedTargetTemp = 0x103A, // rw, int, 3.0 + MAIN_BedCurrentTemp = 0x103C, // w, int, 3.0 + CMD_SettingsMenu = 0x103E, // r, int, DGUS_Data::SettingsMenuCommand + CMD_Leveling = 0x1044, // r, int, DGUS_Data::LevelingCommand + CMD_AxisControl = 0x1046, // r, int, DGUS_Data::AxisControlCommand + AXIS_X = 0x1048, // rw, int, 3.1 + AXIS_Y = 0x104A, // rw, int, 3.1 + AXIS_Z = 0x104C, // rw, int, 3.1 + IO_ExtrudeLength = 0x1052, // r, int, 3.1 + IO_RetractLength = 0x1054, // r, int, 3.1 + CMD_AxisIO = 0x1056, // r, int, DGUS_Data::FilamentIoCommand + LANGUAGE_SetLanguage = 0x105C, // r, int, 1-9 + CMD_PowerLoss = 0x105F, // r, int, DGUS_Data::PowerLossCommand + LEVELING_Progress_Icon = 0x108D, // w, icon, progress 1-50 + FILAMENT_Icon_Inserted = 0x108E, // w, icon, on-off 0-1 + TEMP_PLA_ExtruderTemp = 0x1090, // rw, int, 3.0 + TEMP_PLA_BedTemp = 0x1092, // rw, int, 3.0 + TEMP_ABS_ExtruderTemp = 0x1094, // rw, int, 3.0 + TEMP_ABS_BedTemp = 0x1096, // rw, int, 3.0 + CMD_AdvancedSettings = 0x1098, // r, int, DGUS_Data::AdvancedSettingsCommand + LEVELING_Progress = 0x109C, // w, int, 3.0 + MOTION_MaxSpeed_X = 0x109E, // rw, int, 4.0 + MOTION_MaxSpeed_Y = 0x10A0, // rw, int, 4.0 + MOTION_MaxSpeed_Z = 0x10A2, // rw, int, 4.0 + MOTION_MaxSpeed_E = 0x10A4, // rw, int, 4.0 + MOTION_Acceleration_X = 0x10A6, // rw, int, 4.0 + MOTION_Acceleration_Y = 0x10A8, // rw, int, 4.0 + MOTION_Acceleration_Z = 0x10AA, // rw, int, 4.0 + MOTION_Acceleration_E = 0x10AC, // rw, int, 4.0 + MOTION_MaxJerk_X = 0x10AE, // rw, int, 2.2 + MOTION_MaxJerk_Y = 0x10B0, // rw, int, 2.2 + MOTION_MaxJerk_Z = 0x10B2, // rw, int, 2.2 + MOTION_MaxJerk_E = 0x10B4, // rw, int, 2.2 + MOTION_StepsPerMm_X = 0x10B6, // rw, int, 4.1 + MOTION_StepsPerMm_Y = 0x10B8, // rw, int, 4.1 + MOTION_StepsPerMm_Z = 0x10BA, // rw, int, 4.1 + MOTION_StepsPerMm_E = 0x10BC, // rw, int, 4.1 + PID_Extruder_P = 0x10BE, // rw, int, 3.2 + PID_Extruder_I = 0x10C0, // rw, int, 3.2 + PID_Extruder_D = 0x10C2, // rw, int, 3.2 + PID_Bed_P = 0x10C4, // rw, int, 3.2 + PID_Bed_I = 0x10C6, // rw, int, 3.2 + PID_Bed_D = 0x10C8, // rw, int, 4.1 + CONTROL_FanSpeed = 0x10CA, // rw, int, 3.0 + SDCard_InsertionStatus = 0x1168, // w, icon, on off 0-1 + FINISH_Icon_Finished = 0x1170, // w, icon, translated 1-9 + MAIN_RemainingHours = 0x1171, // w, int, 3.0 + MAIN_RemainingMinutes = 0x1173, // w, int, 2.0 + + AXIS_StepperStatus = 0x1200, // w, icon, on off 0-1 + SDCARD_Selection_File1 = 0x1221, // w, icon, on off 0-1 + SDCARD_Selection_File2 = 0x1222, // w, icon, on off 0-1 + SDCARD_Selection_File3 = 0x1223, // w, icon, on off 0-1 + SDCARD_Selection_File4 = 0x1224, // w, icon, on off 0-1 + SDCARD_Selection_File5 = 0x1225, // w, icon, on off 0-1 + SDCARD_Selection_File6 = 0x1226, // w, icon, on off 0-1 + SDCARD_Selection_File7 = 0x1227, // w, icon, on off 0-1 + SDCARD_Selection_File8 = 0x1228, // w, icon, on off 0-1 + SDCARD_Selection_File9 = 0x1229, // w, icon, on off 0-1 + SDCARD_Selection_File10 = 0x122A, // w, icon, on off 0-1 + SDCARD_Selection_File11 = 0x122B, // w, icon, on off 0-1 + SDCARD_Selection_File12 = 0x122C, // w, icon, on off 0-1 + SDCARD_Selection_File13 = 0x122D, // w, icon, on off 0-1 + SDCARD_Selection_File14 = 0x122E, // w, icon, on off 0-1 + SDCARD_Selection_File15 = 0x122F, // w, icon, on off 0-1 + SDCARD_Selection_File16 = 0x1230, // w, icon, on off 0-1 + SDCARD_Selection_File17 = 0x1231, // w, icon, on off 0-1 + SDCARD_Selection_File18 = 0x1232, // w, icon, on off 0-1 + SDCARD_Selection_File19 = 0x1233, // w, icon, on off 0-1 + SDCARD_Selection_File20 = 0x1234, // w, icon, on off 0-1 + MENU_Icon_Home_S = 0x1300, // w, icon, translated 1-9 + MENU_Icon_Print_S = 0x1301, // w, icon, translated 1-9 + MENU_Icon_Ready_S = 0x1302, // w, icon, translated 1-9 + MENU_Icon_Settings_S = 0x1303, // w, icon, translated 1-9 + MENU_Icon_Home = 0x1304, // w, icon, translated 1-9 + MENU_Icon_Print = 0x1305, // w, icon, translated 1-9 + MENU_Icon_Ready = 0x1306, // w, icon, translated 1-9 + MENU_Icon_Settings = 0x1307, // w, icon, translated 1-9 + ADJUST_Icon_Adjust = 0x130D, // w, icon, translated 1-9 + ADJUST_Icon_Feedrate = 0x130E, // w, icon, translated 1-9 + IO_Icon_ExtruderTemp = 0x130F, // w, icon, translated 1-9 + CONTROL_Icon_BedTemp = 0x1310, // w, icon, translated 1-9 + ADJUST_Icon_ZOffset = 0x1311, // w, icon, translated 1-9 + CONTROL_Icon_FanControl = 0x1312, // w, icon, translated 1-9 + ADJUST_Icon_FanControl = 0x1313, // w, icon, translated 1-9 + AXIS_Icon_MoveAxis = 0x1314, // w, icon, translated 1-9 + AXIS_Icon_IO = 0x1318, // w, icon, translated 1-9 + AXIS_Icon_Manual = 0x1319, // w, icon, translated 1-9 + CONTROL_Icon_Cooling = 0x131A, // w, icon, translated 1-9 + IO_Icon_Extrude = 0x1321, // w, icon, translated 1-9 + IO_Icon_Retract = 0x1322, // w, icon, translated 1-9 + SETTINGS_Icon_Language = 0x1323, // w, icon, translated 1-9 + SETTINGS_Icon_Leveling = 0x1325, // w, icon, translated 1-9 + SETTINGS_Icon_Device = 0x1326, // w, icon, translated 1-9 + ADV_Icon_ResetSettings = 0x1327, // w, icon, translated 1-9 + INFO_Icon_About = 0x1328, // w, icon, translated 1-9 + INFO_Icon_Device = 0x1329, // w, icon, translated 1-9 + SETTINGS_Icon_Advanced = 0x132A, // w, icon, translated 1-9 + SETTINGS_Icon_About = 0x132B, // w, icon, translated 1-9 + SETTINGS_Icon_PLA = 0x132D, // w, icon, translated 1-9 + SETTINGS_Icon_ABS = 0x132E, // w, icon, translated 1-9 + RUNOUT_Icon_Stop = 0x133E, // w, icon, translated 1-9 + RUNOUT_Icon_Message = 0x133F, // w, icon, translated 1-9 + RESET_Icon_Yes = 0x1340, // w, icon, translated 1-9 + RESET_Icon_No = 0x1341, // w, icon, translated 1-9 + LOAD_Icon_Message = 0x1342, // w, icon, translated 1-9 + LOAD_Icon_Continue = 0x1343, // w, icon, translated 1-9 + PAUSE_Icon_Message = 0x1344, // w, icon, translated 1-9 + RESUME_Icon_Message = 0x1347, // w, icon, translated 1-9 + POWERLOSS_Icon_Message = 0x1348, // w, icon, translated 1-9 + AUTOHOME_Icon_WaitMessage = 0x1349, // w, icon, translated 1-9 + LEVELING_Icon_Leveling = 0x134B, // w, icon, translated 1-9 + RESET_Icon_InfoMessage = 0x134D, // w, icon, translated 1-9 + LEVELING_Icon_Start = 0x1356, // w, icon, translated 1-9 + LEVELING_Icon_AuxLevel = 0x1357, // w, icon, translated 1-9 + LEVELING_Icon_AutoLevel = 0x1358, // w, icon, translated 1-9 + LEVELING_Icon_AuxLevel_S = 0x1359, // w, icon, translated 1-9 + LEVELING_Icon_AutoLevel_S = 0x135A, // w, icon, translated 1-9 + LANGUAGE_Icon_Language = 0x135B, // w, icon, translated 1-9 + ADV_Icon_Movement = 0x135C, // w, icon, translated 1-9 + ADV_Icon_PID = 0x135D, // w, icon, translated 1-9 + ADV_Icon_MotionSettings = 0x135F, // w, icon, translated 1-9 + ADV_Icon_MaxFeedrate = 0x1360, // w, icon, translated 1-9 + ADV_Icon_Acceleration = 0x1361, // w, icon, translated 1-9 + ADV_Icon_Jerk = 0x1362, // w, icon, translated 1-9 + ADV_Icon_StepsPerMm = 0x1363, // w, icon, translated 1-9 + ADV_Icon_MaxSpeed = 0x1364, // w, icon, translated 1-9 + ADV_Icon_MaxSpeed_X = 0x1365, // w, icon, translated 1-9 + ADV_Icon_MaxSpeed_Y = 0x1366, // w, icon, translated 1-9 + ADV_Icon_MaxSpeed_Z = 0x1367, // w, icon, translated 1-9 + ADV_Icon_MaxSpeed_E = 0x1368, // w, icon, translated 1-9 + ADV_Icon_AccelerationMenu = 0x1369, // w, icon, translated 1-9 + ADV_Icon_Acceleration_X = 0x136A, // w, icon, translated 1-9 + ADV_Icon_Acceleration_Y = 0x136B, // w, icon, translated 1-9 + ADV_Icon_Acceleration_Z = 0x136C, // w, icon, translated 1-9 + ADV_Icon_Acceleration_E = 0x136D, // w, icon, translated 1-9 + ADV_Icon_MaxJerkMenu = 0x136E, // w, icon, translated 1-9 + ADV_Icon_MaxJerk_X = 0x136F, // w, icon, translated 1-9 + ADV_Icon_MaxJerk_Y = 0x1370, // w, icon, translated 1-9 + ADV_Icon_MaxJerk_Z = 0x1371, // w, icon, translated 1-9 + ADV_Icon_MaxJerk_E = 0x1372, // w, icon, translated 1-9 + ADV_Icon_StepsPerMmMenu = 0x1373, // w, icon, translated 1-9 + ADV_Icon_StepsPerMm_X = 0x1374, // w, icon, translated 1-9 + ADV_Icon_StepsPerMm_Y = 0x1375, // w, icon, translated 1-9 + ADV_Icon_StepsPerMm_Z = 0x1376, // w, icon, translated 1-9 + ADV_Icon_StepsPerMm_E = 0x1377, // w, icon, translated 1-9 + PID_Icon_PIDMenu = 0x1378, // w, icon, translated 1-9 + PID_Icon_Extruder_P = 0x1379, // w, icon, translated 1-9 + PID_Icon_Extruder_I = 0x137A, // w, icon, translated 1-9 + PID_Icon_Extruder_D = 0x137B, // w, icon, translated 1-9 + PID_Icon_Bed_P = 0x137C, // w, icon, translated 1-9 + PID_Icon_Bed_I = 0x137D, // w, icon, translated 1-9 + PID_Icon_Bed_D = 0x137E, // w, icon, translated 1-9 + CUTTER_Icon_Message = 0x1381, // w, icon, translated 1-9 + FDM_Icon_Message = 0x1382, // w, icon, translated 1-9 + ADV_Icon_SwitchToLaser = 0x1388, // w, icon, translated 1-9 + PRTMODE_Icon_Message = 0x1389, // w, icon, translated 1-9 + PRTMODE_Icon_FDM = 0x138D, // w, icon, translated 1-9 + PRTMODE_Icon_Cutter = 0x138E, // w, icon, translated 1-9 + INFO_Icon_Model = 0x1400, // w, icon, translated 1-9 + INFO_Icon_FW_Version = 0x1401, // w, icon, translated 1-9 + INFO_Icon_Screen_Version = 0x1402, // w, icon, translated 1-9 + INFO_Icon_HW_Version = 0x1403, // w, icon, translated 1-9 + INFO_Icon_Website = 0x1405, // w, icon, translated 1-9 + INFO_Icon_Print_Size = 0x1406, // w, icon, translated 1-9 + LANGUAGE_Icon_Chinese = 0x1411, // w, icon, on off 0-1 + LANGUAGE_Icon_English = 0x1412, // w, icon, on off 0-1 + LANGUAGE_Icon_German = 0x1413, // w, icon, on off 0-1 + LANGUAGE_Icon_Spanish = 0x1414, // w, icon, on off 0-1 + LANGUAGE_Icon_French = 0x1415, // w, icon, on off 0-1 + LANGUAGE_Icon_Italian = 0x1416, // w, icon, on off 0-1 + LANGUAGE_Icon_Portuguese = 0x1417, // w, icon, on off 0-1 + LANGUAGE_Icon_Russian = 0x1418, // w, icon, on off 0-1 + LANGUAGE_Icon_Turkish = 0x1419, // w, icon, on off 0-1 + INFO_Model = 0x17B0, // w, text, 20 + INFO_FW_Version = 0x17C4, // w, text, 20 + INFO_Screen_Version = 0x17D8, // w, text, 20 + INFO_HW_Version = 0x17EC, // w, text, 20 + INFO_Print_Size = 0x1800, // w, text, 20 + INFO_Website = 0x1814, // w, text, 20 + SDCARD_Filename1 = 0x200A, // w, text, 20 + SDCARD_Filename2 = 0x201E, // w, text, 20 + SDCARD_Filename3 = 0x2032, // w, text, 20 + SDCARD_Filename4 = 0x2046, // w, text, 20 + SDCARD_Filename5 = 0x205A, // w, text, 20 + SDCARD_Filename6 = 0x206E, // w, text, 20 + SDCARD_Filename7 = 0x2082, // w, text, 20 + SDCARD_Filename8 = 0x2096, // w, text, 20 + SDCARD_Filename9 = 0x20AA, // w, text, 20 + SDCARD_Filename10 = 0x20BE, // w, text, 20 + SDCARD_Filename11 = 0x20D2, // w, text, 20 + SDCARD_Filename12 = 0x20E6, // w, text, 20 + SDCARD_Filename13 = 0x20FA, // w, text, 20 + SDCARD_Filename14 = 0x210E, // w, text, 20 + SDCARD_Filename15 = 0x2122, // w, text, 20 + SDCARD_Filename16 = 0x2136, // w, text, 20 + SDCARD_Filename17 = 0x214A, // w, text, 20 + SDCARD_Filename18 = 0x215E, // w, text, 20 + SDCARD_Filename19 = 0x2172, // w, text, 20 + SDCARD_Filename20 = 0x2186, // w, text, 20 + CMD_FilelistControl = 0x2198, // w, int, DGUS_Data::FilelistControlCommand + SDCARD_FileSelection = 0x2199, // r, int 1-20 + MAIN_StatusMessage = 0x219A, // w, text, 20 + ABNORMAL_StatusMessage = 0x21D4, // w, text, 30 + CMD_LaserControl = 0x2201, // w, int, DGUS_Data::LaserControlCommand +}; diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Constants.h b/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Constants.h new file mode 100644 index 000000000000..3c89f7ad8a78 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Constants.h @@ -0,0 +1,57 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#define DGUS_BED_SIZE_STR STRINGIFY(X_BED_SIZE) "x" STRINGIFY(Y_BED_SIZE) "mm" + +#if ENABLED(DGUS_SOFTWARE_AUTOSCROLL) + #ifndef DGUS_AUTOSCROLL_START_CYCLES + // Additional refresh cycles where strings beginnings are shown + #define DGUS_AUTOSCROLL_START_CYCLES 1 + #endif + #ifndef DGUS_AUTOSCROLL_END_CYCLES + // Additional refresh cycles where strings endings are shown + #define DGUS_AUTOSCROLL_END_CYCLES 1 + #endif +#endif + +#ifndef DGUS_DEFAULT_VOLUME + #define DGUS_DEFAULT_VOLUME 50 +#endif + +#ifndef DGUS_DEFAULT_BRIGHTNESS + #define DGUS_DEFAULT_BRIGHTNESS 100 +#endif + +#ifndef DGUS_STATUS_EXPIRATION_MS + #define DGUS_STATUS_EXPIRATION_MS 30000 +#endif + +#ifndef BED_TRAMMING_Z_HOP + #define BED_TRAMMING_Z_HOP 4.0 +#endif + +#ifndef BED_TRAMMING_HEIGHT + #define BED_TRAMMING_HEIGHT 0.0 +#endif + +static_assert(BED_TRAMMING_Z_HOP >= 0, "BED_TRAMMING_Z_HOP must be >= 0. Please update your configuration."); diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Control.h b/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Control.h new file mode 100644 index 000000000000..c846b56bf404 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Control.h @@ -0,0 +1,41 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include + +enum class DGUS_Control : uint8_t { + // FILE1 + FILE1_File1 = 4, // RETURN_KEY_CODE + FILE1_File2 = 3, // RETURN_KEY_CODE + FILE1_File3 = 2, // RETURN_KEY_CODE + FILE1_File4 = 1, // RETURN_KEY_CODE + FILE1_File5 = 0, // RETURN_KEY_CODE + FILE1_Start = 8, // RETURN_KEY_CODE + FILE1_End = 7, // RETURN_KEY_CODE + FILE1_Prev = 5, // RETURN_KEY_CODE + FILE1_Next = 6, // RETURN_KEY_CODE + FILE1_Home = 9, // RETURN_KEY_CODE + FILE1_Print = 12, // RETURN_KEY_CODE + FILE1_Ready = 10, // RETURN_KEY_CODE + FILE1_Settings = 11, // RETURN_KEY_CODE +}; diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Data.h b/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Data.h new file mode 100644 index 000000000000..237cec779587 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Data.h @@ -0,0 +1,199 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include + +namespace DGUS_Data { + + // RX constants + + enum class Language : uint16_t { + Chinese_Simplified = 1, + English, + German, + Spanish, + French, + Italian, + Portuguese, + Russian, + Turkish, + + // Compatibility with LCD_LANGUAGE + zh_CN = Chinese_Simplified, + en = English, + de = German, + es = Spanish, + fr = French, + fr_na = French, + it = Italian, + pt = Portuguese, + ru = Russian, + tr = Turkish, + + Default = LCD_LANGUAGE + }; + + // 1002 + enum class MenuSelectCommand : uint16_t { + Print = 1, + Ready = 2, + Settings = 3, + PrintFinished = 5, + StartAutoLevel = 6, + Main = 8, + PausePrint = 9, + PauseStopPrint = 10 + }; + + // 1004 + enum class AdjustCommand : uint16_t { + Show_Adjust = 1, + Show_PrintStatus = 2, + Show_Adjust_ZOffset = 5, + Validate_ZOffset = 7, + }; + + // 1008 + enum class CheckKOCommand : uint16_t { + KO = 2, + SDCard_No = 4, // screen fw 1.0.3 + }; + + // 100A + enum class StopPauseCommand : uint16_t { + Pause_Laser = 1, + Pause = 2, + Stop_Confirm = 3 + }; + + // 100C + enum class CheckOKCommand : uint16_t { + ContinueStop_Continue = 1, + FilamentRunout_Yes = 2, + FilamentLoad_Yes = 3, + SDCardCheck_Yes = 4, + }; + + // 1030 + enum class PresetControlCommand : uint16_t { + Show_Settings_PLA_Settings = 3, + Show_Settings_ABS_Settings = 4, + Apply_PLA_Settings = 5, + Apply_ABS_Settings = 6, + Show_Ready_Manual = 8, + }; + + // 1032 + enum class TemperatureControlCommand : uint16_t { + Cooldown = 1, + Exit_Temperature_Preset_And_Discard_Temperature = 2 + }; + + // 103E + enum class SettingsMenuCommand : uint16_t { + Show_Settings_Device_Language = 1, + Show_Settings_Advanced = 2, + Show_Ready_Jog = 3, + Show_Settings_About = 5, + DisableStepperMotors = 6, + Reset_All_Settings = 7, + Show_Settings_Device_and_Save_Temperatures = 8, + FactoryReset_Validate = 11, + FactoryReset_Cancel = 14, + Exit_Settings_Tramming = 15, + Exit_Settings_Leveling = 16, + Show_Settings_Device_and_Discard_Temperatures = 17 + }; + + // 1044 + enum class LevelingCommand : uint16_t { + Show_Settings_Leveling = 1, + Show_AuxLeveling = 4, + Goto_Center = 5, + Goto_LF = 6, + Goto_RF = 7, + Goto_RB = 8, + Goto_LB = 9, + Show_AutoLeveling = 10, + }; + + // 1046 + enum class AxisControlCommand : uint16_t { + Jog_10mm = 1, + Jog_1mm = 2, + Jog_0_1mm = 3, + Home_XY = 4, + Home_Z = 5, + }; + + // 1056 + enum class FilamentIoCommand : uint16_t { + FilamentCheck_Yes = 1, + FilamentCheck_No = 2, + Show_Ready_IO = 3 + }; + + // 105F + enum class PowerLossCommand : uint16_t { + PowerLoss_Continue = 1, + PowerLoss_No = 2 + }; + + // 1098 + enum class AdvancedSettingsCommand : uint16_t { + Show_AdvSettings_Movement = 4, + Show_AdvSettings_PID = 5, + Show_AdvSettings_Movement_StepsPerMm = 7, + Show_AdvSettings_Movement_Acceleration = 8, + Show_AdvSettings_Movement_Jerk = 9, + Show_AdvSettings_Movement_MaxFeedrate = 10, + Exit_AdvSettings_Movement_Submenu = 12, + Show_AdvSettings = 13, + }; + + // 2198 + enum class FilelistControlCommand : uint16_t { + Start_Print = 1, + F1_Down = 2, + F1_Up = 3, + F2_Down = 4, + F2_Up = F1_Up, + F3_Down = 6, + F3_Up = 5, + F4_Down = 8, + F4_Up = 7, + Begin = 9, + End = 10 + }; + + // 2198 + enum class LaserControlCommand : uint16_t { + Mode_FDM = 1, + Mode_Cutter = 2, + Mode_FDM_Confirm = 3, + Mode_FDM_Cancel = 4, + Mode_Cutter_Confirm = 5, + Mode_Cutter_Cancel = 6, + Mode_Change = 0xB + }; +}; diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Screen.h b/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Screen.h new file mode 100644 index 000000000000..8e890aa14f7b --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/config/DGUS_Screen.h @@ -0,0 +1,106 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +enum class DGUS_ScreenID : uint8_t { + START = 0, + MAIN, + FILE1, + FILE2, + FILE3, + FILE4, + FILE5, + FILAMENTUSEUP, + FILAMENTLOAD, + FINISH, + PAUSE, + PAUSE_STOP, + RESUME, + CONTINUE_STOP, + ADJUST, + PREPARE, + MOVEAXIS_10, + MOVEAXIS_1, + MOVEAXIS_01, + FEEDRETURN, + CONTROL, + TEMP, + PLA_TEMP, + ABS_TEMP, + INFORMATION, + LEVELINGMODE, + LEVELING, + POWERCONTINUE, + LANGUAGE, + KEYBOARD, + KEYBOARD_CONFIRM, + THERMAL_RUNAWAY, + LEVEL_OFFSET, + CONTROL_DEVICE, + MOTION, + MAX_FEEDRATE, + ACCELERATION, + JERK, + STEPSMM, + PIDCONTROL, + AUTOHOME, + ABNORMAL, + WIFI_CONFIRM, + FACTORYRESET_CONFIRM, + SHUTDOWN, + SMOKE_ALARM, + FILAMENTCHECK, + SDCARDCHECK, + LASER_FDM, + MAIN_LASER, + _52_FILE1, + _53_FILE2, + _54_FILE3, + _55_FILE4, + SW_LASER_TIPS, + SW_FDM_TIPS, + STOP_CONFIRM, + PAUSE_LASER, + FINISH_LASER, + RESUME_LASER, + PAUSE_CONFIRM, + FOCUS, + DEVICE_LASER, + LANGE, + LASER_INFORMATION, + ACCEL_LASER, + JERK_SPEED_LASER, + MAX_SPEED_LASER, + AXIS_MOVE_10, + AXIS_MOVE_1, + AXIS_MOVE_01, + ADJUST_LASER, + ENGRAVE_TIPS, + RATIO, + SW_FOCUS, + AXIS_ADJUST_10, + AXIS_ADJUST_1, + AXIS_ADJUST_01, + + BOOT = START, + HOME = MAIN +}; diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenAddrList.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenAddrList.cpp new file mode 100644 index 000000000000..00083ced8cce --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenAddrList.cpp @@ -0,0 +1,505 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../../../inc/MarlinConfigPre.h" + +#if ENABLED(DGUS_LCD_UI_E3S1PRO) + +#include "DGUS_ScreenAddrList.h" + +#include "../../ui_api.h" + +constexpr DGUS_Addr LIST_BOOT[] PROGMEM = { + DGUS_Addr::BOOT_Logo, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_HOME[] PROGMEM = { + DGUS_Addr::MAIN_PrintSpeedPercentage, + DGUS_Addr::MAIN_Icon_Percentage, + DGUS_Addr::MAIN_ElapsedHours, + DGUS_Addr::MAIN_ElapsedMinutes, + DGUS_Addr::MAIN_PrintPercentage, + DGUS_Addr::MAIN_ZOffset, + DGUS_Addr::MAIN_ExtruderTargetTemp, + DGUS_Addr::MAIN_ExtruderCurrentTemp, + DGUS_Addr::MAIN_BedTargetTemp, + DGUS_Addr::MAIN_BedCurrentTemp, + DGUS_Addr::MAIN_RemainingHours, + DGUS_Addr::MAIN_RemainingMinutes, + DGUS_Addr::MAIN_StatusMessage, + DGUS_Addr::MENU_Icon_Home_S, + DGUS_Addr::MENU_Icon_Print, + DGUS_Addr::MENU_Icon_Ready, + DGUS_Addr::MENU_Icon_Settings, + DGUS_Addr::FINISH_Icon_Finished, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_PRINTING[] PROGMEM = { + DGUS_Addr::MAIN_PrintSpeedPercentage, + DGUS_Addr::MAIN_Icon_Percentage, + DGUS_Addr::MAIN_ElapsedHours, + DGUS_Addr::MAIN_ElapsedMinutes, + DGUS_Addr::MAIN_PrintPercentage, + DGUS_Addr::MAIN_ZOffset, + DGUS_Addr::MAIN_ExtruderTargetTemp, + DGUS_Addr::MAIN_ExtruderCurrentTemp, + DGUS_Addr::MAIN_BedTargetTemp, + DGUS_Addr::MAIN_BedCurrentTemp, + DGUS_Addr::MAIN_RemainingHours, + DGUS_Addr::MAIN_RemainingMinutes, + DGUS_Addr::MAIN_StatusMessage, + DGUS_Addr::MENU_Icon_Home, + DGUS_Addr::MENU_Icon_Print_S, + DGUS_Addr::MENU_Icon_Ready, + DGUS_Addr::MENU_Icon_Settings, + DGUS_Addr::FINISH_Icon_Finished, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_RUNOUT[] PROGMEM = { + DGUS_Addr::RESET_Icon_Yes, + DGUS_Addr::RUNOUT_Icon_Stop, + DGUS_Addr::RUNOUT_Icon_Message, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_FILAMENTLOAD[] PROGMEM = { + DGUS_Addr::LOAD_Icon_Continue, + DGUS_Addr::RESET_Icon_No, + DGUS_Addr::LOAD_Icon_Message, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_PAUSE_STOP[] PROGMEM = { + DGUS_Addr::RESET_Icon_Yes, + DGUS_Addr::RESET_Icon_No, + DGUS_Addr::PAUSE_Icon_Message, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_CONTINUE_STOP[] PROGMEM = { + DGUS_Addr::RESET_Icon_Yes, + DGUS_Addr::RESET_Icon_No, + DGUS_Addr::RESUME_Icon_Message, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_MOVEAXIS[] PROGMEM = { + DGUS_Addr::AXIS_StepperStatus, + DGUS_Addr::AXIS_X, + DGUS_Addr::AXIS_Y, + DGUS_Addr::AXIS_Z, + DGUS_Addr::MENU_Icon_Home, + DGUS_Addr::MENU_Icon_Print_S, + DGUS_Addr::MENU_Icon_Ready_S, + DGUS_Addr::MENU_Icon_Settings, + DGUS_Addr::AXIS_Icon_MoveAxis, + DGUS_Addr::AXIS_Icon_IO, + DGUS_Addr::AXIS_Icon_Manual, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_IO[] PROGMEM = { + DGUS_Addr::AXIS_Icon_MoveAxis, + DGUS_Addr::AXIS_Icon_IO, + DGUS_Addr::AXIS_Icon_Manual, + DGUS_Addr::MAIN_ExtruderTargetTemp, + DGUS_Addr::MAIN_ExtruderCurrentTemp, + DGUS_Addr::MENU_Icon_Home, + DGUS_Addr::MENU_Icon_Print_S, + DGUS_Addr::MENU_Icon_Ready_S, + DGUS_Addr::MENU_Icon_Settings, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_CONTROL[] PROGMEM = { + DGUS_Addr::AXIS_Icon_MoveAxis, + DGUS_Addr::AXIS_Icon_IO, + DGUS_Addr::AXIS_Icon_Manual, + DGUS_Addr::MAIN_ExtruderTargetTemp, + DGUS_Addr::MAIN_BedTargetTemp, + DGUS_Addr::IO_Icon_ExtruderTemp, + DGUS_Addr::CONTROL_Icon_BedTemp, + DGUS_Addr::AXIS_Icon_IO, // bogus, it's for "PLA temp" icon + DGUS_Addr::AXIS_Icon_Manual, // bogus, it's for "ABS temp" icon + DGUS_Addr::CONTROL_FanSpeed, + DGUS_Addr::ADJUST_Icon_FanControl, + DGUS_Addr::CONTROL_Icon_Cooling, + DGUS_Addr::MENU_Icon_Home, + DGUS_Addr::MENU_Icon_Print_S, + DGUS_Addr::MENU_Icon_Ready_S, + DGUS_Addr::MENU_Icon_Settings, + DGUS_Addr::END +}; + + +constexpr DGUS_Addr LIST_ADJUST[] PROGMEM = { + DGUS_Addr::ADJUST_Icon_Adjust, + DGUS_Addr::IO_Icon_ExtruderTemp, + DGUS_Addr::CONTROL_Icon_BedTemp, + DGUS_Addr::ADJUST_Icon_Feedrate, + DGUS_Addr::ADJUST_Icon_FanControl, + DGUS_Addr::ADJUST_Icon_ZOffset, + DGUS_Addr::MAIN_ExtruderTargetTemp, + DGUS_Addr::MAIN_BedTargetTemp, + DGUS_Addr::MAIN_PrintSpeedPercentage, + DGUS_Addr::CONTROL_FanSpeed, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_ADJUST_ZOFFSET[] PROGMEM = { + DGUS_Addr::MAIN_ZOffset, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_AUTOHOME[] PROGMEM = { + DGUS_Addr::AUTOHOME_Icon_WaitMessage, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_ABNORMAL[] PROGMEM = { + DGUS_Addr::ABNORMAL_StatusMessage, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_SETTINGS[] PROGMEM = { + DGUS_Addr::MENU_Icon_Home, + DGUS_Addr::MENU_Icon_Print_S, + DGUS_Addr::MENU_Icon_Ready_S, + DGUS_Addr::MENU_Icon_Settings_S, + DGUS_Addr::SETTINGS_Icon_Language, + DGUS_Addr::SETTINGS_Icon_Leveling, + DGUS_Addr::SETTINGS_Icon_Device, + DGUS_Addr::SETTINGS_Icon_Advanced, + DGUS_Addr::SETTINGS_Icon_About, + DGUS_Addr::SETTINGS_Icon_PLA, + DGUS_Addr::SETTINGS_Icon_ABS, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_TEMPERATURE_PRESETS[] PROGMEM = { + DGUS_Addr::SETTINGS_Icon_PLA, + DGUS_Addr::SETTINGS_Icon_ABS, + DGUS_Addr::IO_Icon_ExtruderTemp, + DGUS_Addr::CONTROL_Icon_BedTemp, + DGUS_Addr::TEMP_PLA_ExtruderTemp, + DGUS_Addr::TEMP_PLA_BedTemp, + DGUS_Addr::TEMP_ABS_ExtruderTemp, + DGUS_Addr::TEMP_ABS_BedTemp, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_TRAMMING[] PROGMEM = { + DGUS_Addr::LEVELING_Icon_Leveling, + DGUS_Addr::LEVELING_Icon_AutoLevel, + DGUS_Addr::LEVELING_Icon_AuxLevel_S, + DGUS_Addr::MAIN_ZOffset, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_AUTOLEVEL[] PROGMEM = { + DGUS_Addr::LEVELING_Icon_Start, + DGUS_Addr::LEVELING_Icon_Leveling, + DGUS_Addr::LEVELING_Icon_AutoLevel_S, + DGUS_Addr::LEVELING_Icon_AuxLevel, + DGUS_Addr::LEVELING_Progress_Icon, + DGUS_Addr::LEVELING_Progress, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_POWERLOSS[] PROGMEM = { + DGUS_Addr::POWERLOSS_Icon_Message, + DGUS_Addr::LOAD_Icon_Continue, + DGUS_Addr::RESET_Icon_No, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_LANGUAGE[] PROGMEM = { + DGUS_Addr::LANGUAGE_Icon_Language, + DGUS_Addr::LANGUAGE_Icon_Chinese, + DGUS_Addr::LANGUAGE_Icon_English, + DGUS_Addr::LANGUAGE_Icon_German, + DGUS_Addr::LANGUAGE_Icon_Spanish, + DGUS_Addr::LANGUAGE_Icon_French, + DGUS_Addr::LANGUAGE_Icon_Italian, + DGUS_Addr::LANGUAGE_Icon_Portuguese, + DGUS_Addr::LANGUAGE_Icon_Russian, + DGUS_Addr::LANGUAGE_Icon_Turkish, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_INFO[] PROGMEM = { + DGUS_Addr::MENU_Icon_Home, + DGUS_Addr::MENU_Icon_Print_S, + DGUS_Addr::MENU_Icon_Ready_S, + DGUS_Addr::MENU_Icon_Settings_S, + DGUS_Addr::INFO_Icon_Device, + DGUS_Addr::SETTINGS_Icon_Advanced, + DGUS_Addr::INFO_Icon_About, + DGUS_Addr::INFO_Icon_Model, + DGUS_Addr::INFO_Icon_FW_Version, + DGUS_Addr::INFO_Icon_Screen_Version, + DGUS_Addr::INFO_Icon_HW_Version, + DGUS_Addr::INFO_Icon_Print_Size, + DGUS_Addr::INFO_Icon_Website, + DGUS_Addr::INFO_Model, + DGUS_Addr::INFO_FW_Version, + DGUS_Addr::INFO_Screen_Version, + DGUS_Addr::INFO_HW_Version, + DGUS_Addr::INFO_Print_Size, + DGUS_Addr::INFO_Website, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_ADV_SETTINGS[] PROGMEM = { + DGUS_Addr::MENU_Icon_Home, + DGUS_Addr::MENU_Icon_Print_S, + DGUS_Addr::MENU_Icon_Ready_S, + DGUS_Addr::MENU_Icon_Settings_S, + DGUS_Addr::SETTINGS_Icon_Device, + DGUS_Addr::SETTINGS_Icon_Advanced, + DGUS_Addr::INFO_Icon_About, + DGUS_Addr::ADV_Icon_Movement, + DGUS_Addr::ADV_Icon_ResetSettings, + DGUS_Addr::ADV_Icon_PID, + DGUS_Addr::ADV_Icon_SwitchToLaser, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_MOTION[] PROGMEM = { + DGUS_Addr::ADV_Icon_MotionSettings, + DGUS_Addr::ADV_Icon_MaxFeedrate, + DGUS_Addr::ADV_Icon_Acceleration, + DGUS_Addr::ADV_Icon_Jerk, + DGUS_Addr::ADV_Icon_StepsPerMm, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_MAX_FEEDRATE[] PROGMEM = { + DGUS_Addr::ADV_Icon_MaxSpeed, + DGUS_Addr::ADV_Icon_MaxSpeed_X, + DGUS_Addr::ADV_Icon_MaxSpeed_Y, + DGUS_Addr::ADV_Icon_MaxSpeed_Z, + DGUS_Addr::ADV_Icon_MaxSpeed_E, + DGUS_Addr::MOTION_MaxSpeed_X, + DGUS_Addr::MOTION_MaxSpeed_Y, + DGUS_Addr::MOTION_MaxSpeed_Z, + DGUS_Addr::MOTION_MaxSpeed_E, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_ACCELERATION[] PROGMEM = { + DGUS_Addr::ADV_Icon_AccelerationMenu, + DGUS_Addr::ADV_Icon_Acceleration_X, + DGUS_Addr::ADV_Icon_Acceleration_Y, + DGUS_Addr::ADV_Icon_Acceleration_Z, + DGUS_Addr::ADV_Icon_Acceleration_E, + DGUS_Addr::MOTION_Acceleration_X, + DGUS_Addr::MOTION_Acceleration_Y, + DGUS_Addr::MOTION_Acceleration_Z, + DGUS_Addr::MOTION_Acceleration_E, + + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_JERK[] PROGMEM = { + DGUS_Addr::ADV_Icon_MaxJerkMenu, + DGUS_Addr::ADV_Icon_MaxJerk_X, + DGUS_Addr::ADV_Icon_MaxJerk_Y, + DGUS_Addr::ADV_Icon_MaxJerk_Z, + DGUS_Addr::ADV_Icon_MaxJerk_E, + DGUS_Addr::MOTION_MaxJerk_X, + DGUS_Addr::MOTION_MaxJerk_Y, + DGUS_Addr::MOTION_MaxJerk_Z, + DGUS_Addr::MOTION_MaxJerk_E, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_STEPSMM[] PROGMEM = { + DGUS_Addr::ADV_Icon_StepsPerMmMenu, + DGUS_Addr::ADV_Icon_StepsPerMm_X, + DGUS_Addr::ADV_Icon_StepsPerMm_Y, + DGUS_Addr::ADV_Icon_StepsPerMm_Z, + DGUS_Addr::ADV_Icon_StepsPerMm_E, + DGUS_Addr::MOTION_StepsPerMm_X, + DGUS_Addr::MOTION_StepsPerMm_Y, + DGUS_Addr::MOTION_StepsPerMm_Z, + DGUS_Addr::MOTION_StepsPerMm_E, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_PIDCONTROL[] PROGMEM = { + DGUS_Addr::PID_Icon_PIDMenu, + DGUS_Addr::PID_Icon_Extruder_P, + DGUS_Addr::PID_Icon_Extruder_I, + DGUS_Addr::PID_Icon_Extruder_D, + DGUS_Addr::PID_Icon_Bed_P, + DGUS_Addr::PID_Icon_Bed_I, + DGUS_Addr::PID_Icon_Bed_D, + DGUS_Addr::PID_Extruder_P, + DGUS_Addr::PID_Extruder_I, + DGUS_Addr::PID_Extruder_D, + DGUS_Addr::PID_Bed_P, + DGUS_Addr::PID_Bed_I, + DGUS_Addr::PID_Bed_D, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_RESET_CONFIRM[] PROGMEM = { + DGUS_Addr::RESET_Icon_InfoMessage, + DGUS_Addr::RESET_Icon_Yes, + DGUS_Addr::RESET_Icon_No, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_FILAMENTCHECK[] PROGMEM = { + DGUS_Addr::FILAMENT_Icon_Inserted, + DGUS_Addr::RESET_Icon_Yes, + DGUS_Addr::RESET_Icon_No, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_SDCARDCHECK[] PROGMEM = { + DGUS_Addr::RESET_Icon_Yes, + DGUS_Addr::RESET_Icon_No, + DGUS_Addr::SDCard_InsertionStatus, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_PRINTMODE[] PROGMEM = { + DGUS_Addr::PRTMODE_Icon_Message, + DGUS_Addr::PRTMODE_Icon_FDM, + DGUS_Addr::PRTMODE_Icon_Cutter, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_PRINTMODE_CONFIRM[] PROGMEM = { + DGUS_Addr::CUTTER_Icon_Message, + DGUS_Addr::FDM_Icon_Message, + DGUS_Addr::RESET_Icon_Yes, + DGUS_Addr::RESET_Icon_No, + DGUS_Addr::END +}; + +constexpr DGUS_Addr LIST_SDCARD[] PROGMEM = { + DGUS_Addr::MENU_Icon_Home_S, + DGUS_Addr::MENU_Icon_Print_S, + DGUS_Addr::MENU_Icon_Ready, + DGUS_Addr::MENU_Icon_Settings, + DGUS_Addr::SDCARD_Filename1, + DGUS_Addr::SDCARD_Filename2, + DGUS_Addr::SDCARD_Filename3, + DGUS_Addr::SDCARD_Filename4, + DGUS_Addr::SDCARD_Filename5, + DGUS_Addr::SDCARD_Filename6, + DGUS_Addr::SDCARD_Filename7, + DGUS_Addr::SDCARD_Filename8, + DGUS_Addr::SDCARD_Filename9, + DGUS_Addr::SDCARD_Filename10, + DGUS_Addr::SDCARD_Filename11, + DGUS_Addr::SDCARD_Filename12, + DGUS_Addr::SDCARD_Filename13, + DGUS_Addr::SDCARD_Filename14, + DGUS_Addr::SDCARD_Filename15, + DGUS_Addr::SDCARD_Filename16, + DGUS_Addr::SDCARD_Filename17, + DGUS_Addr::SDCARD_Filename18, + DGUS_Addr::SDCARD_Filename19, + DGUS_Addr::SDCARD_Filename20, + DGUS_Addr::SDCARD_Selection_File1, + DGUS_Addr::SDCARD_Selection_File2, + DGUS_Addr::SDCARD_Selection_File3, + DGUS_Addr::SDCARD_Selection_File4, + DGUS_Addr::SDCARD_Selection_File5, + DGUS_Addr::SDCARD_Selection_File6, + DGUS_Addr::SDCARD_Selection_File7, + DGUS_Addr::SDCARD_Selection_File8, + DGUS_Addr::SDCARD_Selection_File9, + DGUS_Addr::SDCARD_Selection_File10, + DGUS_Addr::SDCARD_Selection_File11, + DGUS_Addr::SDCARD_Selection_File12, + DGUS_Addr::SDCARD_Selection_File13, + DGUS_Addr::SDCARD_Selection_File14, + DGUS_Addr::SDCARD_Selection_File15, + DGUS_Addr::SDCARD_Selection_File16, + DGUS_Addr::SDCARD_Selection_File17, + DGUS_Addr::SDCARD_Selection_File18, + DGUS_Addr::SDCARD_Selection_File19, + DGUS_Addr::SDCARD_Selection_File20, + DGUS_Addr::END +}; + +#define MAP_HELPER(SCREEN, LIST) \ + { .screen = SCREEN, \ + .addr_list = LIST } + +const struct DGUS_ScreenAddrList screen_addr_list_map[] PROGMEM = { + MAP_HELPER(DGUS_ScreenID::BOOT, LIST_BOOT), + MAP_HELPER(DGUS_ScreenID::HOME, LIST_HOME), + MAP_HELPER(DGUS_ScreenID::FILE1, LIST_SDCARD), + MAP_HELPER(DGUS_ScreenID::FILE2, LIST_SDCARD), + MAP_HELPER(DGUS_ScreenID::FILE3, LIST_SDCARD), + MAP_HELPER(DGUS_ScreenID::FILE4, LIST_SDCARD), + MAP_HELPER(DGUS_ScreenID::FILAMENTUSEUP, LIST_RUNOUT), + MAP_HELPER(DGUS_ScreenID::FILAMENTLOAD, LIST_FILAMENTLOAD), + MAP_HELPER(DGUS_ScreenID::FINISH, LIST_PRINTING), + MAP_HELPER(DGUS_ScreenID::PAUSE, LIST_PRINTING), + MAP_HELPER(DGUS_ScreenID::PAUSE_STOP, LIST_PAUSE_STOP), + MAP_HELPER(DGUS_ScreenID::RESUME, LIST_PRINTING), + MAP_HELPER(DGUS_ScreenID::CONTINUE_STOP, LIST_CONTINUE_STOP), + MAP_HELPER(DGUS_ScreenID::ADJUST, LIST_ADJUST), + MAP_HELPER(DGUS_ScreenID::PREPARE, LIST_ADJUST_ZOFFSET), + MAP_HELPER(DGUS_ScreenID::MOVEAXIS_01, LIST_MOVEAXIS), + MAP_HELPER(DGUS_ScreenID::MOVEAXIS_1, LIST_MOVEAXIS), + MAP_HELPER(DGUS_ScreenID::MOVEAXIS_10, LIST_MOVEAXIS), + MAP_HELPER(DGUS_ScreenID::FEEDRETURN, LIST_IO), + MAP_HELPER(DGUS_ScreenID::CONTROL, LIST_CONTROL), + MAP_HELPER(DGUS_ScreenID::TEMP, LIST_SETTINGS), + MAP_HELPER(DGUS_ScreenID::PLA_TEMP, LIST_TEMPERATURE_PRESETS), + MAP_HELPER(DGUS_ScreenID::ABS_TEMP, LIST_TEMPERATURE_PRESETS), + MAP_HELPER(DGUS_ScreenID::AUTOHOME, LIST_AUTOHOME), + MAP_HELPER(DGUS_ScreenID::ABNORMAL, LIST_ABNORMAL), + MAP_HELPER(DGUS_ScreenID::LEVELINGMODE, LIST_TRAMMING), + MAP_HELPER(DGUS_ScreenID::LEVELING, LIST_AUTOLEVEL), + MAP_HELPER(DGUS_ScreenID::POWERCONTINUE, LIST_POWERLOSS), + MAP_HELPER(DGUS_ScreenID::LANGUAGE, LIST_LANGUAGE), + MAP_HELPER(DGUS_ScreenID::INFORMATION, LIST_INFO), + MAP_HELPER(DGUS_ScreenID::CONTROL_DEVICE, LIST_ADV_SETTINGS), + MAP_HELPER(DGUS_ScreenID::MOTION, LIST_MOTION), + MAP_HELPER(DGUS_ScreenID::MAX_FEEDRATE, LIST_MAX_FEEDRATE), + MAP_HELPER(DGUS_ScreenID::ACCELERATION, LIST_ACCELERATION), + MAP_HELPER(DGUS_ScreenID::JERK, LIST_JERK), + MAP_HELPER(DGUS_ScreenID::STEPSMM, LIST_STEPSMM), + MAP_HELPER(DGUS_ScreenID::PIDCONTROL, LIST_PIDCONTROL), + MAP_HELPER(DGUS_ScreenID::FACTORYRESET_CONFIRM, LIST_RESET_CONFIRM), + MAP_HELPER(DGUS_ScreenID::FILAMENTCHECK, LIST_FILAMENTCHECK), + MAP_HELPER(DGUS_ScreenID::SDCARDCHECK, LIST_SDCARDCHECK), + MAP_HELPER(DGUS_ScreenID::LASER_FDM, LIST_PRINTMODE), + MAP_HELPER(DGUS_ScreenID::SW_LASER_TIPS, LIST_PRINTMODE_CONFIRM), + MAP_HELPER(DGUS_ScreenID::SW_FDM_TIPS, LIST_PRINTMODE_CONFIRM), + + MAP_HELPER((DGUS_ScreenID)0, nullptr) +}; + +#endif // DGUS_LCD_UI_E3S1PRO diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenAddrList.h b/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenAddrList.h new file mode 100644 index 000000000000..b20bab1336fa --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenAddrList.h @@ -0,0 +1,32 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "../config/DGUS_Screen.h" +#include "../config/DGUS_Addr.h" + +struct DGUS_ScreenAddrList { + DGUS_ScreenID screen; + const DGUS_Addr *addr_list; +}; + +extern const struct DGUS_ScreenAddrList screen_addr_list_map[]; diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenSetup.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenSetup.cpp new file mode 100644 index 000000000000..3e4d191c8d00 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenSetup.cpp @@ -0,0 +1,44 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../../../inc/MarlinConfigPre.h" + +#if ENABLED(DGUS_LCD_UI_E3S1PRO) + +#include "DGUS_ScreenSetup.h" +#include "../DGUSSetupHandler.h" + +#include "../../ui_api.h" + +#define SETUP_HELPER(SCREEN, SETUP) \ + { .screen = SCREEN, \ + .setup_fn = SETUP } + +const struct DGUS_ScreenSetup screen_setup_list[] PROGMEM = { + SETUP_HELPER(DGUS_ScreenID::FILE1, &DGUSSetupHandler::sdCardPrepare), + SETUP_HELPER(DGUS_ScreenID::FILE2, &DGUSSetupHandler::sdCardPrepare), + SETUP_HELPER(DGUS_ScreenID::FILE3, &DGUSSetupHandler::sdCardPrepare), + SETUP_HELPER(DGUS_ScreenID::FILE4, &DGUSSetupHandler::sdCardPrepare), + SETUP_HELPER((DGUS_ScreenID)0, nullptr) +}; + +#endif // DGUS_LCD_UI_E3S1PRO diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenSetup.h b/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenSetup.h new file mode 100644 index 000000000000..4321413fd1db --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_ScreenSetup.h @@ -0,0 +1,31 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "../config/DGUS_Screen.h" + +struct DGUS_ScreenSetup { + DGUS_ScreenID screen; + bool (*setup_fn)(void); +}; + +extern const struct DGUS_ScreenSetup screen_setup_list[]; diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_VP.h b/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_VP.h new file mode 100644 index 000000000000..60eb9cfae28c --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_VP.h @@ -0,0 +1,43 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "../config/DGUS_Addr.h" + +#define VPFLAG_NONE 0 +#define VPFLAG_AUTOUPLOAD (1U << 0) // Upload on every DGUS update +#define VPFLAG_RXSTRING (1U << 1) // Treat the received data as a string (terminated with 0xFFFF) +#define VPFLAG_TXSTRING_AUTOSCROLL (1U << 2) + +#define VP_U16_FROM_EXTRA(N) (*(uint16_t*)N) + +struct DGUS_VP { + DGUS_Addr addr; + uint8_t size; + uint8_t flags; + void *extra; + + // Callback that will be called if the display modified the value. + // nullptr makes it readonly for the display. + void (*rx_handler)(DGUS_VP &, void *); + void (*tx_handler)(DGUS_VP &); +}; diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_VPList.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_VPList.cpp new file mode 100644 index 000000000000..dddc6f889ee1 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_VPList.cpp @@ -0,0 +1,589 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../../../inc/MarlinConfigPre.h" + +#if ENABLED(DGUS_LCD_UI_E3S1PRO) + +#include "DGUS_VPList.h" + +#include "../config/DGUS_Addr.h" +#include "../DGUSScreenHandler.h" +#include "../DGUSReturnKeyCodeHandler.h" +#include "../DGUSRxHandler.h" +#include "../DGUSTxHandler.h" + +#include "../../ui_api.h" + +const char DGUS_MACHINENAME[] PROGMEM = MACHINE_NAME; +const char DGUS_MARLINVERSION[] PROGMEM = SHORT_BUILD_VERSION; +const char DGUS_BOARD[] PROGMEM = BOARD_INFO_NAME; +const char DGUS_BEDSIZE[] PROGMEM = DGUS_BED_SIZE_STR; +const char DGUS_WEBSITE[] PROGMEM = "http://marlinfw.org"; +const uint16_t DGUS_ZERO = 0; + +#define VP_HELPER(ADDR, SIZE, FLAGS, EXTRA, RXHANDLER, TXHANDLER) \ + { .addr = ADDR, \ + .size = SIZE, \ + .flags = FLAGS, \ + .extra = EXTRA, \ + .rx_handler = RXHANDLER, \ + .tx_handler = TXHANDLER } + +#define VP_HELPER_WORD(ADDR, FLAGS, EXTRA, RXHANDLER, TXHANDLER) \ + VP_HELPER(ADDR, 2, FLAGS, EXTRA, RXHANDLER, TXHANDLER) + +#define VP_HELPER_DWORD(ADDR, FLAGS, EXTRA, RXHANDLER, TXHANDLER) \ + VP_HELPER(ADDR, 4, FLAGS, EXTRA, RXHANDLER, TXHANDLER) + +#define VP_HELPER_RX(ADDR, RXHANDLER) \ + VP_HELPER_WORD(ADDR, VPFLAG_NONE, nullptr, RXHANDLER, nullptr) + +#define VP_HELPER_RX_EXTRA(ADDR, EXTRA, RXHANDLER) \ + VP_HELPER_WORD(ADDR, VPFLAG_NONE, EXTRA, RXHANDLER, nullptr) + +#define VP_HELPER_RX_NODATA(ADDR, RXHANDLER) \ + VP_HELPER(ADDR, 0, VPFLAG_NONE, nullptr, RXHANDLER, nullptr) + +#define VP_HELPER_TX(ADDR, TXHANDLER) \ + VP_HELPER_WORD(ADDR, VPFLAG_NONE, nullptr, nullptr, TXHANDLER) + +#define VP_HELPER_TX_SIZE(ADDR, SIZE, TXHANDLER) \ + VP_HELPER(ADDR, SIZE, VPFLAG_NONE, nullptr, nullptr, TXHANDLER) + +#define VP_HELPER_TX_EXTRA(ADDR, EXTRA, TXHANDLER) \ + VP_HELPER_WORD(ADDR, VPFLAG_NONE, EXTRA, nullptr, TXHANDLER) + +#define VP_HELPER_TX_AUTO(ADDR, EXTRA, TXHANDLER) \ + VP_HELPER_WORD(ADDR, VPFLAG_AUTOUPLOAD, EXTRA, nullptr, TXHANDLER) + +#define VP_HELPER_LANG_ICON(ADDR) \ + VP_HELPER_TX_EXTRA(ADDR, &screen.config.language, (&DGUSTxHandler::extraToInteger)) + +#define VP_HELPER_FILENAME(ADDR, filenameIndex) \ + VP_HELPER(ADDR, DGUS_FILENAME_LEN, VPFLAG_TXSTRING_AUTOSCROLL, \ + VP_EXTRA_TO_STR(DGUS_SDCardHandler::filenames[filenameIndex]), \ + nullptr, DGUSTxHandler::extraToString) + +const struct DGUS_VP vp_list[] PROGMEM = { + VP_HELPER_TX_AUTO( DGUS_Addr::BOOT_Logo, + nullptr, + &DGUSTxHandler::bootAnimation), + VP_HELPER_RX( DGUS_Addr::CMD_MenuSelect, + &DGUSReturnKeyCodeHandler::Command_MenuSelect), + VP_HELPER_RX( DGUS_Addr::CMD_Adjust, + &DGUSReturnKeyCodeHandler::Command_Adjust), + VP_HELPER_WORD( DGUS_Addr::MAIN_PrintSpeedPercentage, + VPFLAG_AUTOUPLOAD, + nullptr, + &DGUSRxHandler::printSpeedPercentage, + &DGUSTxHandler::printSpeedPercentage), + VP_HELPER_RX( DGUS_Addr::CMD_CheckKO, + &DGUSReturnKeyCodeHandler::Command_CheckKO), + VP_HELPER_RX( DGUS_Addr::CMD_StopPause, + &DGUSReturnKeyCodeHandler::Command_StopPause), + VP_HELPER_RX( DGUS_Addr::CMD_CheckOK, + &DGUSReturnKeyCodeHandler::Command_CheckOK), + VP_HELPER_TX_AUTO( DGUS_Addr::MAIN_Icon_Percentage, nullptr, + &DGUSTxHandler::printPercentage), + VP_HELPER_TX_AUTO( DGUS_Addr::MAIN_ElapsedHours, + nullptr, + &DGUSTxHandler::elapsedHours), + VP_HELPER_TX_AUTO( DGUS_Addr::MAIN_ElapsedMinutes, + nullptr, + &DGUSTxHandler::elapsedMinutes), + VP_HELPER_TX_AUTO( DGUS_Addr::MAIN_PrintPercentage, + nullptr, + &DGUSTxHandler::printPercentage), + VP_HELPER_WORD( DGUS_Addr::MAIN_ZOffset, + VPFLAG_AUTOUPLOAD, + nullptr, + &DGUSRxHandler::zOffset, + &DGUSTxHandler::zOffset), + VP_HELPER_RX( DGUS_Addr::CMD_PresetControl, + &DGUSReturnKeyCodeHandler::Command_PresetControl), + VP_HELPER_RX( DGUS_Addr::CMD_TemperatureControl, + &DGUSReturnKeyCodeHandler::Control_TemperatureCommand), + VP_HELPER_WORD( DGUS_Addr::MAIN_ExtruderTargetTemp, + VPFLAG_AUTOUPLOAD, + nullptr, + &DGUSRxHandler::extruderTargetTemp, + &DGUSTxHandler::extruderTargetTemp), + VP_HELPER_TX_AUTO( DGUS_Addr::MAIN_ExtruderCurrentTemp, + nullptr, + &DGUSTxHandler::extruderCurrentTemp), + VP_HELPER_WORD( DGUS_Addr::MAIN_BedTargetTemp, + VPFLAG_AUTOUPLOAD, + nullptr, + &DGUSRxHandler::bedTargetTemp, + &DGUSTxHandler::bedTargetTemp), + VP_HELPER_TX_AUTO( DGUS_Addr::MAIN_BedCurrentTemp, + nullptr, + &DGUSTxHandler::bedCurrentTemp), + VP_HELPER_RX( DGUS_Addr::CMD_SettingsMenu, + &DGUSReturnKeyCodeHandler::Command_SettingsMenu), + VP_HELPER_RX( DGUS_Addr::CMD_Leveling, + &DGUSReturnKeyCodeHandler::Command_Leveling), + VP_HELPER_RX( DGUS_Addr::CMD_AxisControl, + &DGUSReturnKeyCodeHandler::Command_AxisControl), + VP_HELPER_WORD( DGUS_Addr::AXIS_X, + VPFLAG_AUTOUPLOAD, + nullptr, + &DGUSRxHandler::axis_X, + &DGUSTxHandler::axis_X), + VP_HELPER_WORD( DGUS_Addr::AXIS_Y, + VPFLAG_AUTOUPLOAD, + nullptr, + &DGUSRxHandler::axis_Y, + &DGUSTxHandler::axis_Y), + VP_HELPER_WORD( DGUS_Addr::AXIS_Z, + VPFLAG_AUTOUPLOAD, + nullptr, + &DGUSRxHandler::axis_Z, + &DGUSTxHandler::axis_Z), + VP_HELPER_RX( DGUS_Addr::IO_ExtrudeLength, + &DGUSRxHandler::extrudeLength), + VP_HELPER_RX( DGUS_Addr::IO_RetractLength, + &DGUSRxHandler::retractLength), + VP_HELPER_RX( DGUS_Addr::CMD_AxisIO, + &DGUSReturnKeyCodeHandler::Command_FilamentIO), + VP_HELPER_RX( DGUS_Addr::LANGUAGE_SetLanguage, + &DGUSRxHandler::setLanguage), + VP_HELPER_RX( DGUS_Addr::CMD_PowerLoss, + &DGUSReturnKeyCodeHandler::Command_PowerLoss), + VP_HELPER_TX( DGUS_Addr::LEVELING_Progress_Icon, + &DGUSTxHandler::levelingProgressIcon), + #if HAS_FILAMENT_SENSOR + VP_HELPER_TX_AUTO( DGUS_Addr::FILAMENT_Icon_Inserted, + nullptr, + &DGUSTxHandler::filamentInsertionStatus), + #endif + VP_HELPER_WORD( DGUS_Addr::TEMP_PLA_ExtruderTemp, + VPFLAG_NONE, + &screen.config.plaExtruderTemp, + &DGUSRxHandler::integerToExtra, + &DGUSTxHandler::extraToInteger), + VP_HELPER_WORD( DGUS_Addr::TEMP_PLA_BedTemp, + VPFLAG_NONE, + &screen.config.plaBedTemp, + &DGUSRxHandler::integerToExtra, + &DGUSTxHandler::extraToInteger), + VP_HELPER_WORD( DGUS_Addr::TEMP_ABS_ExtruderTemp, + VPFLAG_NONE, + &screen.config.absExtruderTemp, + &DGUSRxHandler::integerToExtra, + &DGUSTxHandler::extraToInteger), + VP_HELPER_WORD( DGUS_Addr::TEMP_ABS_BedTemp, + VPFLAG_NONE, + &screen.config.absBedTemp, + &DGUSRxHandler::integerToExtra, + &DGUSTxHandler::extraToInteger), + VP_HELPER_RX( DGUS_Addr::CMD_AdvancedSettings, + &DGUSReturnKeyCodeHandler::Command_AdvancedSettings), + VP_HELPER_TX( DGUS_Addr::LEVELING_Progress, + &DGUSTxHandler::levelingProgress), + VP_HELPER_WORD( DGUS_Addr::MOTION_MaxSpeed_X, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::maxFeedrate), + (&DGUSTxHandler::maxFeedrate)), + VP_HELPER_WORD( DGUS_Addr::MOTION_MaxSpeed_Y, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::maxFeedrate), + (&DGUSTxHandler::maxFeedrate)), + VP_HELPER_WORD( DGUS_Addr::MOTION_MaxSpeed_Z, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::maxFeedrate), + (&DGUSTxHandler::maxFeedrate)), + VP_HELPER_WORD( DGUS_Addr::MOTION_MaxSpeed_E, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::maxFeedrate), + (&DGUSTxHandler::maxFeedrate)), + VP_HELPER_WORD( DGUS_Addr::MOTION_Acceleration_X, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::maxAcceleration), + (&DGUSTxHandler::maxAcceleration)), + VP_HELPER_WORD( DGUS_Addr::MOTION_Acceleration_Y, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::maxAcceleration), + (&DGUSTxHandler::maxAcceleration)), + VP_HELPER_WORD( DGUS_Addr::MOTION_Acceleration_Z, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::maxAcceleration), + (&DGUSTxHandler::maxAcceleration)), + VP_HELPER_WORD( DGUS_Addr::MOTION_Acceleration_E, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::maxAcceleration), + (&DGUSTxHandler::maxAcceleration)), + VP_HELPER_WORD( DGUS_Addr::MOTION_MaxJerk_X, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::maxJerk), + (&DGUSTxHandler::maxJerk)), + VP_HELPER_WORD( DGUS_Addr::MOTION_MaxJerk_Y, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::maxJerk), + (&DGUSTxHandler::maxJerk)), + VP_HELPER_WORD( DGUS_Addr::MOTION_MaxJerk_Z, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::maxJerk), + (&DGUSTxHandler::maxJerk)), + VP_HELPER_WORD( DGUS_Addr::MOTION_MaxJerk_E, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::maxJerk), + (&DGUSTxHandler::maxJerk)), + VP_HELPER_WORD( DGUS_Addr::MOTION_StepsPerMm_X, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::stepsPerMM), + (&DGUSTxHandler::stepsPerMM)), + VP_HELPER_WORD( DGUS_Addr::MOTION_StepsPerMm_Y, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::stepsPerMM), + (&DGUSTxHandler::stepsPerMM)), + VP_HELPER_WORD( DGUS_Addr::MOTION_StepsPerMm_Z, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::stepsPerMM), + (&DGUSTxHandler::stepsPerMM)), + VP_HELPER_WORD( DGUS_Addr::MOTION_StepsPerMm_E, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::stepsPerMM), + (&DGUSTxHandler::stepsPerMM)), + #if ENABLED(PIDTEMP) + VP_HELPER_WORD( DGUS_Addr::PID_Extruder_P, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::PID_P), + (&DGUSTxHandler::PID_P)), + VP_HELPER_WORD( DGUS_Addr::PID_Extruder_I, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::PID_I), + (&DGUSTxHandler::PID_I)), + VP_HELPER_WORD( DGUS_Addr::PID_Extruder_D, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::PID_D), + (&DGUSTxHandler::PID_D)), + #else + VP_HELPER_WORD( DGUS_Addr::PID_Extruder_P, + VPFLAG_AUTOUPLOAD, + const_cast(&DGUS_ZERO), + DGUSRxHandler::disabled, + (DGUSTxHandler::extraToFixedPoint)), + VP_HELPER_WORD( DGUS_Addr::PID_Extruder_I, + VPFLAG_AUTOUPLOAD, + const_cast(&DGUS_ZERO), + DGUSRxHandler::disabled, + (DGUSTxHandler::extraToFixedPoint)), + VP_HELPER_WORD( DGUS_Addr::PID_Extruder_D, + VPFLAG_AUTOUPLOAD, + const_cast(&DGUS_ZERO), + DGUSRxHandler::disabled, + (DGUSTxHandler::extraToFixedPoint)), + #endif // PIDTEMP + #if ENABLED(PIDTEMPBED) + VP_HELPER_WORD( DGUS_Addr::PID_Bed_P, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::bed_PID_P), + (&DGUSTxHandler::bed_PID_P)), + VP_HELPER_WORD( DGUS_Addr::PID_Bed_I, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::bed_PID_I), + (&DGUSTxHandler::bed_PID_I)), + VP_HELPER_WORD( DGUS_Addr::PID_Bed_D, + VPFLAG_AUTOUPLOAD, + nullptr, + (&DGUSRxHandler::bed_PID_D), + (&DGUSTxHandler::bed_PID_D)), + #else + VP_HELPER_WORD( DGUS_Addr::PID_Bed_P, + VPFLAG_AUTOUPLOAD, + const_cast(&DGUS_ZERO), + DGUSRxHandler::disabled, + (DGUSTxHandler::extraToFixedPoint)), + VP_HELPER_WORD( DGUS_Addr::PID_Bed_I, + VPFLAG_AUTOUPLOAD, + const_cast(&DGUS_ZERO), + DGUSRxHandler::disabled, + (DGUSTxHandler::extraToFixedPoint)), + VP_HELPER_WORD( DGUS_Addr::PID_Bed_D, + VPFLAG_AUTOUPLOAD, + const_cast(&DGUS_ZERO), + DGUSRxHandler::disabled, + (DGUSTxHandler::extraToFixedPoint)), + #endif // PIDTEMPBED + VP_HELPER_WORD( DGUS_Addr::CONTROL_FanSpeed, + VPFLAG_AUTOUPLOAD, + nullptr, + &DGUSRxHandler::fanSpeed, + &DGUSTxHandler::fanSpeed), + VP_HELPER_TX( DGUS_Addr::SDCard_InsertionStatus, + DGUSTxHandler::sdCardInsertionStatus), + VP_HELPER_LANG_ICON(DGUS_Addr::FINISH_Icon_Finished), + VP_HELPER_TX_AUTO( DGUS_Addr::MAIN_RemainingHours, + nullptr, + &DGUSTxHandler::printRemainingHours), + VP_HELPER_TX_AUTO( DGUS_Addr::MAIN_RemainingMinutes, + nullptr, + &DGUSTxHandler::printRemainingMinutes), + VP_HELPER_TX_AUTO( DGUS_Addr::AXIS_StepperStatus, + nullptr, + &DGUSTxHandler::stepperStatus), + VP_HELPER_LANG_ICON(DGUS_Addr::MENU_Icon_Home_S), + VP_HELPER_LANG_ICON(DGUS_Addr::MENU_Icon_Print_S), + VP_HELPER_LANG_ICON(DGUS_Addr::MENU_Icon_Ready_S), + VP_HELPER_LANG_ICON(DGUS_Addr::MENU_Icon_Settings_S), + VP_HELPER_LANG_ICON(DGUS_Addr::MENU_Icon_Home), + VP_HELPER_LANG_ICON(DGUS_Addr::MENU_Icon_Print), + VP_HELPER_LANG_ICON(DGUS_Addr::MENU_Icon_Ready), + VP_HELPER_LANG_ICON(DGUS_Addr::MENU_Icon_Settings), + VP_HELPER_LANG_ICON(DGUS_Addr::ADJUST_Icon_Adjust), + VP_HELPER_LANG_ICON(DGUS_Addr::ADJUST_Icon_Feedrate), + VP_HELPER_LANG_ICON(DGUS_Addr::IO_Icon_ExtruderTemp), + VP_HELPER_LANG_ICON(DGUS_Addr::CONTROL_Icon_BedTemp), + VP_HELPER_LANG_ICON(DGUS_Addr::ADJUST_Icon_ZOffset), + VP_HELPER_LANG_ICON(DGUS_Addr::CONTROL_Icon_FanControl), + VP_HELPER_LANG_ICON(DGUS_Addr::ADJUST_Icon_FanControl), + VP_HELPER_LANG_ICON(DGUS_Addr::AXIS_Icon_MoveAxis), + VP_HELPER_LANG_ICON(DGUS_Addr::AXIS_Icon_IO), + VP_HELPER_LANG_ICON(DGUS_Addr::AXIS_Icon_Manual), + VP_HELPER_LANG_ICON(DGUS_Addr::CONTROL_Icon_Cooling), + VP_HELPER_LANG_ICON(DGUS_Addr::IO_Icon_Extrude), + VP_HELPER_LANG_ICON(DGUS_Addr::IO_Icon_Retract), + VP_HELPER_LANG_ICON(DGUS_Addr::SETTINGS_Icon_Language), + VP_HELPER_LANG_ICON(DGUS_Addr::SETTINGS_Icon_Leveling), + VP_HELPER_LANG_ICON(DGUS_Addr::SETTINGS_Icon_Device), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_ResetSettings), + VP_HELPER_LANG_ICON(DGUS_Addr::INFO_Icon_About), + VP_HELPER_LANG_ICON(DGUS_Addr::INFO_Icon_Device), + VP_HELPER_LANG_ICON(DGUS_Addr::SETTINGS_Icon_Advanced), + VP_HELPER_LANG_ICON(DGUS_Addr::SETTINGS_Icon_About), + VP_HELPER_LANG_ICON(DGUS_Addr::SETTINGS_Icon_PLA), + VP_HELPER_LANG_ICON(DGUS_Addr::SETTINGS_Icon_ABS), + VP_HELPER_LANG_ICON(DGUS_Addr::RUNOUT_Icon_Stop), + VP_HELPER_LANG_ICON(DGUS_Addr::RUNOUT_Icon_Message), + VP_HELPER_LANG_ICON(DGUS_Addr::RESET_Icon_Yes), + VP_HELPER_LANG_ICON(DGUS_Addr::RESET_Icon_No), + VP_HELPER_LANG_ICON(DGUS_Addr::LOAD_Icon_Message), + VP_HELPER_LANG_ICON(DGUS_Addr::LOAD_Icon_Continue), + VP_HELPER_LANG_ICON(DGUS_Addr::PAUSE_Icon_Message), + VP_HELPER_LANG_ICON(DGUS_Addr::RESUME_Icon_Message), + VP_HELPER_LANG_ICON(DGUS_Addr::POWERLOSS_Icon_Message), + VP_HELPER_LANG_ICON(DGUS_Addr::AUTOHOME_Icon_WaitMessage), + VP_HELPER_LANG_ICON(DGUS_Addr::LEVELING_Icon_Leveling), + VP_HELPER_LANG_ICON(DGUS_Addr::LEVELING_Icon_Start), + VP_HELPER_LANG_ICON(DGUS_Addr::LEVELING_Icon_AuxLevel), + VP_HELPER_LANG_ICON(DGUS_Addr::LEVELING_Icon_AutoLevel), + VP_HELPER_LANG_ICON(DGUS_Addr::LEVELING_Icon_AuxLevel_S), + VP_HELPER_LANG_ICON(DGUS_Addr::LEVELING_Icon_AutoLevel_S), + VP_HELPER_LANG_ICON(DGUS_Addr::LANGUAGE_Icon_Language), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_Movement), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_PID), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_MotionSettings), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_MaxFeedrate), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_Acceleration), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_Jerk), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_StepsPerMm), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_MaxSpeed), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_MaxSpeed_X), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_MaxSpeed_Y), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_MaxSpeed_Z), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_MaxSpeed_E), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_AccelerationMenu), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_Acceleration_X), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_Acceleration_Y), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_Acceleration_Z), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_Acceleration_E), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_MaxJerkMenu), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_MaxJerk_X), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_MaxJerk_Y), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_MaxJerk_Z), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_MaxJerk_E), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_StepsPerMmMenu), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_StepsPerMm_X), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_StepsPerMm_Y), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_StepsPerMm_Z), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_StepsPerMm_E), + VP_HELPER_LANG_ICON(DGUS_Addr::PID_Icon_PIDMenu), + VP_HELPER_LANG_ICON(DGUS_Addr::PID_Icon_Extruder_P), + VP_HELPER_LANG_ICON(DGUS_Addr::PID_Icon_Extruder_I), + VP_HELPER_LANG_ICON(DGUS_Addr::PID_Icon_Extruder_D), + VP_HELPER_LANG_ICON(DGUS_Addr::PID_Icon_Bed_P), + VP_HELPER_LANG_ICON(DGUS_Addr::PID_Icon_Bed_I), + VP_HELPER_LANG_ICON(DGUS_Addr::PID_Icon_Bed_D), + VP_HELPER_LANG_ICON(DGUS_Addr::CUTTER_Icon_Message), + VP_HELPER_LANG_ICON(DGUS_Addr::FDM_Icon_Message), + VP_HELPER_LANG_ICON(DGUS_Addr::ADV_Icon_SwitchToLaser), + VP_HELPER_LANG_ICON(DGUS_Addr::PRTMODE_Icon_Message), + VP_HELPER_LANG_ICON(DGUS_Addr::PRTMODE_Icon_FDM), + VP_HELPER_LANG_ICON(DGUS_Addr::PRTMODE_Icon_Cutter), + VP_HELPER_LANG_ICON(DGUS_Addr::INFO_Icon_Model), + VP_HELPER_LANG_ICON(DGUS_Addr::INFO_Icon_FW_Version), + VP_HELPER_LANG_ICON(DGUS_Addr::INFO_Icon_Screen_Version), + VP_HELPER_LANG_ICON(DGUS_Addr::INFO_Icon_HW_Version), + VP_HELPER_LANG_ICON(DGUS_Addr::INFO_Icon_Website), + VP_HELPER_LANG_ICON(DGUS_Addr::INFO_Icon_Print_Size), + VP_HELPER_TX_AUTO( DGUS_Addr::LANGUAGE_Icon_Chinese, + (void*)DGUS_Data::Language::Chinese_Simplified, + &DGUSTxHandler::enableIfLanguageMatchesExtra), + VP_HELPER_TX_AUTO( DGUS_Addr::LANGUAGE_Icon_English, + (void*)DGUS_Data::Language::English, + &DGUSTxHandler::enableIfLanguageMatchesExtra), + VP_HELPER_TX_AUTO( DGUS_Addr::LANGUAGE_Icon_German, + (void*)DGUS_Data::Language::German, + &DGUSTxHandler::enableIfLanguageMatchesExtra), + VP_HELPER_TX_AUTO( DGUS_Addr::LANGUAGE_Icon_Spanish, + (void*)DGUS_Data::Language::Spanish, + &DGUSTxHandler::enableIfLanguageMatchesExtra), + VP_HELPER_TX_AUTO( DGUS_Addr::LANGUAGE_Icon_French, + (void*)DGUS_Data::Language::French, + &DGUSTxHandler::enableIfLanguageMatchesExtra), + VP_HELPER_TX_AUTO( DGUS_Addr::LANGUAGE_Icon_Italian, + (void*)DGUS_Data::Language::Italian, + &DGUSTxHandler::enableIfLanguageMatchesExtra), + VP_HELPER_TX_AUTO( DGUS_Addr::LANGUAGE_Icon_Portuguese, + (void*)DGUS_Data::Language::Portuguese, + &DGUSTxHandler::enableIfLanguageMatchesExtra), + VP_HELPER_TX_AUTO( DGUS_Addr::LANGUAGE_Icon_Russian, + (void*)DGUS_Data::Language::Russian, + &DGUSTxHandler::enableIfLanguageMatchesExtra), + VP_HELPER_TX_AUTO( DGUS_Addr::LANGUAGE_Icon_Turkish, + (void*)DGUS_Data::Language::Turkish, + &DGUSTxHandler::enableIfLanguageMatchesExtra), + + VP_HELPER( DGUS_Addr::INFO_Model, + DGUS_INFOSTRING_LEN, + VPFLAG_TXSTRING_AUTOSCROLL, + VP_EXTRA_TO_STR(DGUS_MACHINENAME), + nullptr, + DGUSTxHandler::extraToString), + VP_HELPER( DGUS_Addr::INFO_FW_Version, + DGUS_INFOSTRING_LEN, + VPFLAG_TXSTRING_AUTOSCROLL, + VP_EXTRA_TO_STR(DGUS_MARLINVERSION), + nullptr, + DGUSTxHandler::extraToString), + //already set in the screen memory: + /* + VP_HELPER(DGUS_Addr::INFO_Screen_Version, + DGUS_INFOSTRING_LEN, + VPFLAG_NONE, + (void*)"", + nullptr, + DGUSTxHandler::extraToString), + */ + VP_HELPER( DGUS_Addr::INFO_HW_Version, + DGUS_INFOSTRING_LEN, + VPFLAG_TXSTRING_AUTOSCROLL, + VP_EXTRA_TO_STR(DGUS_BOARD), + nullptr, + DGUSTxHandler::extraToString), + VP_HELPER( DGUS_Addr::INFO_Print_Size, + DGUS_INFOSTRING_LEN, + VPFLAG_TXSTRING_AUTOSCROLL, + VP_EXTRA_TO_STR(DGUS_BEDSIZE), + nullptr, + DGUSTxHandler::extraToString), + VP_HELPER( DGUS_Addr::INFO_Website, + DGUS_INFOSTRING_LEN, + VPFLAG_TXSTRING_AUTOSCROLL, + VP_EXTRA_TO_STR(DGUS_WEBSITE), + nullptr, + DGUSTxHandler::extraToString), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename1, + 0), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename2, + 1), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename3, + 2), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename4, + 3), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename5, + 4), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename6, + 0), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename7, + 1), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename8, + 2), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename9, + 3), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename10, + 4), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename11, + 0), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename12, + 1), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename13, + 2), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename14, + 3), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename15, + 4), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename16, + 0), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename17, + 1), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename18, + 2), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename19, + 3), + VP_HELPER_FILENAME( DGUS_Addr::SDCARD_Filename20, + 4), + VP_HELPER_RX( DGUS_Addr::CMD_FilelistControl, + &DGUSReturnKeyCodeHandler::Command_FilelistControl), + VP_HELPER_RX( DGUS_Addr::SDCARD_FileSelection, + &DGUSRxHandler::sdCardFileSection), + VP_HELPER( DGUS_Addr::MAIN_StatusMessage, + DGUS_INFOSTRING_LEN, + VPFLAG_TXSTRING_AUTOSCROLL, + VP_EXTRA_TO_STR(screen.homeStatusMessage), + nullptr, + DGUSTxHandler::extraToString), + VP_HELPER( DGUS_Addr::ABNORMAL_StatusMessage, + DGUS_INFOSTRING_LEN, + VPFLAG_TXSTRING_AUTOSCROLL, + VP_EXTRA_TO_STR(screen.homeStatusMessage), + nullptr, + DGUSTxHandler::extraToString), + VP_HELPER_RX( DGUS_Addr::CMD_LaserControl, + &DGUSReturnKeyCodeHandler::Command_LaserControl), + VP_HELPER((DGUS_Addr)0, 0, VPFLAG_NONE, nullptr, nullptr, nullptr) +}; + +#endif // DGUS_LCD_UI_E3S1PRO diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_VPList.h b/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_VPList.h new file mode 100644 index 000000000000..8ca16e924ec8 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/definition/DGUS_VPList.h @@ -0,0 +1,31 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "DGUS_VP.h" + +#define VP_EXTRA_TO_U16(N) (void*)(uint16_t)(N) +#define VP_U16_FROM_EXTRA(N) (*(uint16_t*)N) + +#define VP_EXTRA_TO_STR(N) (void*)(N) + +extern const struct DGUS_VP vp_list[]; diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/dgus_e3s1pro_extui.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/dgus_e3s1pro_extui.cpp new file mode 100644 index 000000000000..530ce9bcf0e0 --- /dev/null +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/dgus_e3s1pro_extui.cpp @@ -0,0 +1,165 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +/** + * lcd/extui/dgus_reloaded/dgus_reloaded_extui.cpp + */ + +#include "../../../inc/MarlinConfigPre.h" + +#if ENABLED(DGUS_LCD_UI_E3S1PRO) + +#include "../ui_api.h" +#include "DGUSScreenHandler.h" + +#define DEBUG_OUT 1 +#include "../../../core/debug_out.h" + +namespace ExtUI { + + void onStartup() { + screen.init(); + } + + void onIdle() { + static bool processing = false; + + // Prevent recursion + if (!processing) { + processing = true; + screen.loop(); + processing = false; + } + } + + void onPrinterKilled(FSTR_P const error, FSTR_P const component) { + screen.printerKilled(error, component); + } + + void onMediaInserted() { TERN_(HAS_MEDIA, screen.sdCardInserted()); } + void onMediaError() { TERN_(HAS_MEDIA, screen.sdCardError()); } + void onMediaRemoved() { TERN_(HAS_MEDIA, screen.sdCardRemoved()); } + + void onPlayTone(const uint16_t frequency, const uint16_t duration) { + screen.playTone(frequency, duration); + } + + void onPrintTimerStarted() { + screen.printTimerStarted(); + } + + void onPrintTimerPaused() { + screen.printTimerPaused(); + } + + void onPrintTimerStopped() { + screen.printTimerStopped(); + } + + void onFilamentRunout(const extruder_t extruder) { + screen.filamentRunout(extruder); + } + + void onUserConfirmRequired(const char * const msg) { + screen.userConfirmRequired(msg); + } + + void onStatusChanged(const char * const msg) { + screen.setStatusMessage(msg); + } + + void onHomingStart() {} + + void onHomingDone() { + screen.homingDone(); + } + + void onPrintDone() {} + + void onFactoryReset() { + screen.settingsReset(); + } + + void onStoreSettings(char *buff) { + screen.storeSettings(buff); + } + + void onLoadSettings(const char *buff) { + screen.loadSettings(buff); + } + + void onPostprocessSettings() {} + + void onSettingsStored(const bool success) { + screen.configurationStoreWritten(success); + } + + void onSettingsLoaded(const bool success) { + screen.configurationStoreRead(success); + } + + #if HAS_MESH + void onLevelingStart() { + screen.levelingStart(); + } + + void onLevelingDone() { + screen.levelingEnd(); + } + + void onMeshUpdate(const int8_t xpos, const int8_t ypos, const_float_t zval) { + screen.meshUpdate(xpos, ypos); + } + + void onMeshUpdate(const int8_t xpos, const int8_t ypos, const probe_state_t state) { } + #endif + + #if ENABLED(POWER_LOSS_RECOVERY) + void onSetPowerLoss(const bool onoff) { + // Called when power-loss is enabled/disabled + } + void onPowerLoss() { + // Called when power-loss state is detected + } + void onPowerLossResume() { + // Called on resume from power-loss + screen.powerLossResume(); + } + #endif + + #if HAS_PID_HEATING + void onPidTuning(const result_t rst) { + // Called for temperature PID tuning result + screen.pidTuning(rst); + } + #endif + + void onSteppersDisabled() { + screen.steppersStatusChanged(false); + } + + void onSteppersEnabled() { + screen.steppersStatusChanged(true); + } +} + +#endif // DGUS_LCD_UI_RELOADED diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp index 793a2c15796f..76aa3de8727e 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSScreenHandler.cpp @@ -80,9 +80,8 @@ void DGUSScreenHandler::ready() { } void DGUSScreenHandler::loop() { - if (!settings_ready || current_screenID == DGUS_ScreenID::KILL) { + if (!settings_ready || current_screenID == DGUS_ScreenID::KILL) return; - } const millis_t ms = ExtUI::safe_millis(); static millis_t next_event_ms = 0; @@ -226,10 +225,8 @@ void DGUSScreenHandler::configurationStoreRead(bool success) { } void DGUSScreenHandler::playTone(const uint16_t frequency, const uint16_t duration) { - UNUSED(duration); - - if (frequency >= 1 && frequency <= 255) { - if (duration >= 1 && duration <= 255) + if (WITHIN(frequency, 1, 255)) { + if (WITHIN(duration, 1, 255)) dgus.playSound((uint8_t)frequency, (uint8_t)duration); else dgus.playSound((uint8_t)frequency); @@ -301,12 +298,10 @@ void DGUSScreenHandler::filamentRunout(const ExtUI::extruder_t extruder) { #endif // HAS_MEDIA #if ENABLED(POWER_LOSS_RECOVERY) - void DGUSScreenHandler::powerLossResume() { moveToScreen(DGUS_ScreenID::POWERLOSS, true); } - -#endif // POWER_LOSS_RECOVERY +#endif #if HAS_PID_HEATING @@ -374,20 +369,18 @@ void DGUSScreenHandler::setMessageLinePGM(PGM_P const msg, const uint8_t line) { void DGUSScreenHandler::setStatusMessage(const char* msg, const millis_t duration) { dgus.writeString((uint16_t)DGUS_Addr::MESSAGE_Status, msg, DGUS_STATUS_LEN, false, true); - status_expire = (duration > 0 ? ExtUI::safe_millis() + duration : 0); } void DGUSScreenHandler::setStatusMessage(FSTR_P const fmsg, const millis_t duration) { dgus.writeString((uint16_t)DGUS_Addr::MESSAGE_Status, fmsg, DGUS_STATUS_LEN, false, true); - status_expire = (duration > 0 ? ExtUI::safe_millis() + duration : 0); } void DGUSScreenHandler::showWaitScreen(const DGUS_ScreenID return_screenID, const bool has_continue/*=false*/) { - if (return_screenID != DGUS_ScreenID::WAIT) { + if (return_screenID != DGUS_ScreenID::WAIT) wait_return_screenID = return_screenID; - } + wait_continue = has_continue; triggerScreenChange(DGUS_ScreenID::WAIT); @@ -418,8 +411,7 @@ void DGUSScreenHandler::triggerEEPROMSave() { } bool DGUSScreenHandler::isPrinterIdle() { - return (!ExtUI::commandsInQueue() - && !ExtUI::isMoving()); + return (!ExtUI::commandsInQueue() && !ExtUI::isMoving()); } const DGUS_Addr* DGUSScreenHandler::findScreenAddrList(const DGUS_ScreenID screenID) { @@ -429,9 +421,7 @@ const DGUS_Addr* DGUSScreenHandler::findScreenAddrList(const DGUS_ScreenID scree do { memcpy_P(&list, map, sizeof(*map)); if (!list.addr_list) break; - if (list.screenID == screenID) { - return list.addr_list; - } + if (list.screenID == screenID) return list.addr_list; } while (++map); return nullptr; @@ -453,20 +443,16 @@ bool DGUSScreenHandler::callScreenSetup(const DGUS_ScreenID screenID) { } void DGUSScreenHandler::moveToScreen(const DGUS_ScreenID screenID, bool abort_wait) { - if (current_screenID == DGUS_ScreenID::KILL) { - return; - } + if (current_screenID == DGUS_ScreenID::KILL) return; if (current_screenID == DGUS_ScreenID::WAIT) { - if (screenID != DGUS_ScreenID::WAIT) { + if (screenID != DGUS_ScreenID::WAIT) wait_return_screenID = screenID; - } if (!abort_wait) return; - if (wait_continue && wait_for_user) { + if (wait_continue && wait_for_user) ExtUI::setUserConfirmed(); - } } if (!callScreenSetup(screenID)) return; diff --git a/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_Addr.h b/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_Addr.h index 8cec8e59c9f2..ec4962e6b27f 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_Addr.h +++ b/Marlin/src/lcd/extui/dgus_reloaded/config/DGUS_Addr.h @@ -36,6 +36,7 @@ #define DGUS_GCODE_LEN 32 enum class DGUS_Addr : uint16_t { + END = 0, MESSAGE_Line1 = 0x1100, // 0x1100 - 0x111F MESSAGE_Line2 = 0x1120, // 0x1120 - 0x113F MESSAGE_Line3 = 0x1140, // 0x1140 - 0x115F diff --git a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.cpp b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.cpp index 1a99eceeff3a..32e95f250801 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/definition/DGUS_ScreenAddrList.cpp @@ -33,7 +33,7 @@ constexpr DGUS_Addr LIST_HOME[] PROGMEM = { DGUS_Addr::TEMP_Target_H0, DGUS_Addr::TEMP_Current_Bed, DGUS_Addr::TEMP_Target_Bed, - (DGUS_Addr)0 + DGUS_Addr::END }; #if HAS_MEDIA @@ -46,7 +46,7 @@ constexpr DGUS_Addr LIST_HOME[] PROGMEM = { DGUS_Addr::SD_FileName4, DGUS_Addr::SD_ScrollIcons, DGUS_Addr::SD_SelectedFileName, - (DGUS_Addr)0 + DGUS_Addr::END }; #endif @@ -59,7 +59,7 @@ constexpr DGUS_Addr LIST_PRINT_STATUS[] PROGMEM = { DGUS_Addr::STATUS_Elapsed, DGUS_Addr::STATUS_Percent, DGUS_Addr::STATUS_Icons, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_PRINT_ADJUST[] PROGMEM = { @@ -69,7 +69,7 @@ constexpr DGUS_Addr LIST_PRINT_ADJUST[] PROGMEM = { DGUS_Addr::ADJUST_Feedrate, DGUS_Addr::ADJUST_Flowrate_CUR, DGUS_Addr::LEVEL_OFFSET_Current, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_PRINT_FINISHED[] PROGMEM = { @@ -80,7 +80,7 @@ constexpr DGUS_Addr LIST_PRINT_FINISHED[] PROGMEM = { DGUS_Addr::STATUS_PositionZ, DGUS_Addr::STATUS_Elapsed, DGUS_Addr::STATUS_Percent_Complete, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_TEMP_MENU[] PROGMEM = { @@ -88,7 +88,7 @@ constexpr DGUS_Addr LIST_TEMP_MENU[] PROGMEM = { DGUS_Addr::TEMP_Target_H0, DGUS_Addr::TEMP_Current_Bed, DGUS_Addr::TEMP_Target_Bed, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_TEMP_MANUAL[] PROGMEM = { @@ -98,23 +98,23 @@ constexpr DGUS_Addr LIST_TEMP_MANUAL[] PROGMEM = { DGUS_Addr::TEMP_Current_Bed, DGUS_Addr::TEMP_Target_Bed, DGUS_Addr::TEMP_Max_Bed, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_FAN[] PROGMEM = { DGUS_Addr::FAN0_Speed, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_SETTINGS_MENU[] PROGMEM = { DGUS_Addr::STEPPER_Status, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_LEVELING_OFFSET[] PROGMEM = { DGUS_Addr::LEVEL_OFFSET_Current, DGUS_Addr::LEVEL_OFFSET_StepIcons, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_LEVELING_MANUAL[] PROGMEM = { @@ -122,7 +122,7 @@ constexpr DGUS_Addr LIST_LEVELING_MANUAL[] PROGMEM = { DGUS_Addr::TEMP_Target_H0, DGUS_Addr::TEMP_Current_Bed, DGUS_Addr::TEMP_Target_Bed, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_LEVELING_AUTOMATIC[] PROGMEM = { @@ -132,13 +132,13 @@ constexpr DGUS_Addr LIST_LEVELING_AUTOMATIC[] PROGMEM = { DGUS_Addr::TEMP_Target_Bed, DGUS_Addr::LEVEL_AUTO_DisableIcon, DGUS_Addr::LEVEL_AUTO_Grid, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_LEVELING_PROBING[] PROGMEM = { DGUS_Addr::LEVEL_PROBING_Icons1, DGUS_Addr::LEVEL_PROBING_Icons2, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_FILAMENT[] PROGMEM = { @@ -146,7 +146,7 @@ constexpr DGUS_Addr LIST_FILAMENT[] PROGMEM = { DGUS_Addr::TEMP_Target_H0, DGUS_Addr::FILAMENT_ExtruderIcons, DGUS_Addr::FILAMENT_Length, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_MOVE[] PROGMEM = { @@ -154,17 +154,17 @@ constexpr DGUS_Addr LIST_MOVE[] PROGMEM = { DGUS_Addr::MOVE_CurrentY, DGUS_Addr::MOVE_CurrentZ, DGUS_Addr::MOVE_StepIcons, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_GCODE[] PROGMEM = { DGUS_Addr::GCODE_Data, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_SETTINGS_MENU2[] PROGMEM = { DGUS_Addr::SETTINGS2_BLTouch, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_PID[] PROGMEM = { @@ -174,17 +174,17 @@ constexpr DGUS_Addr LIST_PID[] PROGMEM = { DGUS_Addr::PID_Kp, DGUS_Addr::PID_Ki, DGUS_Addr::PID_Kd, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_VOLUME[] PROGMEM = { DGUS_Addr::VOLUME_Level, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_BRIGHTNESS[] PROGMEM = { DGUS_Addr::BRIGHTNESS_Level, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_INFOS[] PROGMEM = { @@ -196,12 +196,12 @@ constexpr DGUS_Addr LIST_INFOS[] PROGMEM = { DGUS_Addr::INFOS_PrintTime, DGUS_Addr::INFOS_LongestPrint, DGUS_Addr::INFOS_FilamentUsed, - (DGUS_Addr)0 + DGUS_Addr::END }; constexpr DGUS_Addr LIST_WAIT[] PROGMEM = { DGUS_Addr::WAIT_Icons, - (DGUS_Addr)0 + DGUS_Addr::END }; #define MAP_HELPER(SCREEN, LIST) { .screenID = SCREEN, .addr_list = LIST } diff --git a/ini/features.ini b/ini/features.ini index 63da77cf76c5..96a27b3ff961 100644 --- a/ini/features.ini +++ b/ini/features.ini @@ -96,6 +96,7 @@ ANYCUBIC_LCD_CHIRON = build_src_filter=+ ANYCUBIC_LCD_I3MEGA = build_src_filter=+ HAS_DGUS_LCD_CLASSIC = build_src_filter=+ +DGUS_LCD_UI_E3S1PRO = build_src_filter=+ DGUS_LCD_UI_RELOADED = build_src_filter=+ DGUS_LCD_UI_FYSETC = build_src_filter=+ DGUS_LCD_UI_HIPRECY = build_src_filter=+ From f9c8703e778a10f0a2a46c199712a7555f2aca33 Mon Sep 17 00:00:00 2001 From: Anson Liu Date: Sat, 1 Jul 2023 03:19:16 -0400 Subject: [PATCH 340/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20missing=20include?= =?UTF-8?q?=20cycles.h=20(#25927)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/stepper.h | 1 + 1 file changed, 1 insertion(+) diff --git a/Marlin/src/module/stepper.h b/Marlin/src/module/stepper.h index 9f49e353a753..8ec4024ea60a 100644 --- a/Marlin/src/module/stepper.h +++ b/Marlin/src/module/stepper.h @@ -45,6 +45,7 @@ #include "planner.h" #include "stepper/indirection.h" +#include "stepper/cycles.h" #ifdef __AVR__ #include "stepper/speed_lookuptable.h" #endif From 4985acafada69dcb17b813d76b359bcfb5b57b43 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 1 Jul 2023 04:33:53 -0500 Subject: [PATCH 341/427] =?UTF-8?q?=F0=9F=90=9B=20Prevent=20MString=20infi?= =?UTF-8?q?nite=20recursion=20(#26037)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #24390 --- Marlin/src/core/mstring.h | 25 ++++++++++++++++++------- Marlin/src/tests/marlin_tests.cpp | 5 +++-- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/Marlin/src/core/mstring.h b/Marlin/src/core/mstring.h index 67591ba3aead..77a03d7ff140 100644 --- a/Marlin/src/core/mstring.h +++ b/Marlin/src/core/mstring.h @@ -70,6 +70,9 @@ extern void SERIAL_CHAR(char c); #define SNPRINTF_P(V...) snprintf_P(V) #endif +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" + /** * @brief MString class template * @details A class template providing convenient string operators, @@ -112,6 +115,7 @@ class MString { MString& set(const MString &s) { strncpy(str, s.str, SIZE); debug(F("MString")); return *this; } MString& set(const bool &b) { return set(b ? F("true") : F("false")); } MString& set(const char c) { str[0] = c; if (1 < SIZE) str[1] = '\0'; debug(F("char")); return *this; } + MString& set(const int8_t &i) { SNPRINTF_P(str, SIZE, PSTR("%d"), i); debug(F("int8_t")); return *this; } MString& set(const short &i) { SNPRINTF_P(str, SIZE, PSTR("%d"), i); debug(F("short")); return *this; } MString& set(const int &i) { SNPRINTF_P(str, SIZE, PSTR("%d"), i); debug(F("int")); return *this; } MString& set(const long &l) { SNPRINTF_P(str, SIZE, PSTR("%ld"), l); debug(F("long")); return *this; } @@ -157,6 +161,7 @@ class MString { MString& append(const bool &b) { return append(b ? F("true") : F("false")); } MString& append(const char c) { int sz = length(); if (sz < SIZE) { str[sz] = c; if (sz < SIZE - 1) str[sz + 1] = '\0'; } return *this; } #if ENABLED(FASTER_APPEND) + MString& append(const int8_t &i) { int sz = length(); SNPRINTF(&str[sz], SIZE - sz, "%d", i); return *this; } MString& append(const short &i) { int sz = length(); SNPRINTF(&str[sz], SIZE - sz, "%d", i); return *this; } MString& append(const int &i) { int sz = length(); SNPRINTF(&str[sz], SIZE - sz, "%d", i); return *this; } MString& append(const long &l) { int sz = length(); SNPRINTF(&str[sz], SIZE - sz, "%ld", l); return *this; } @@ -165,13 +170,14 @@ class MString { MString& append(const unsigned int &i) { int sz = length(); SNPRINTF(&str[sz], SIZE - sz, "%u", i); return *this; } MString& append(const unsigned long &l) { int sz = length(); SNPRINTF(&str[sz], SIZE - sz, "%lu", l); return *this; } #else - MString& append(const short &i) { char buf[20]; sprintf(buf, "%d", i); return append(buf); } - MString& append(const int &i) { char buf[20]; sprintf(buf, "%d", i); return append(buf); } - MString& append(const long &l) { char buf[20]; sprintf(buf, "%ld", l); return append(buf); } - MString& append(const unsigned char &i) { char buf[20]; sprintf(buf, "%u", i); return append(buf); } - MString& append(const unsigned short &i) { char buf[20]; sprintf(buf, "%u", i); return append(buf); } - MString& append(const unsigned int &i) { char buf[20]; sprintf(buf, "%u", i); return append(buf); } - MString& append(const unsigned long &l) { char buf[20]; sprintf(buf, "%lu", l); return append(buf); } + MString& append(const int8_t &i) { char buf[ 5]; sprintf(buf, "%d", i); return append(buf); } + MString& append(const short &i) { char buf[12]; sprintf(buf, "%d", i); return append(buf); } + MString& append(const int &i) { char buf[12]; sprintf(buf, "%d", i); return append(buf); } + MString& append(const long &l) { char buf[12]; sprintf(buf, "%ld", l); return append(buf); } + MString& append(const unsigned char &i) { char buf[ 5]; sprintf(buf, "%u", i); return append(buf); } + MString& append(const unsigned short &i) { char buf[11]; sprintf(buf, "%u", i); return append(buf); } + MString& append(const unsigned int &i) { char buf[11]; sprintf(buf, "%u", i); return append(buf); } + MString& append(const unsigned long &l) { char buf[11]; sprintf(buf, "%lu", l); return append(buf); } #endif MString& append(const float &f) { return append(p_float_t(f, SERIAL_FLOAT_PRECISION)); } MString& append(const p_float_t &pf) { return append(w_float_t(pf.value, 1, pf.prec)); } @@ -220,6 +226,9 @@ class MString { template MString(T arg1, Args... more) { set(arg1); append(more...); } + // Catch unhandled types to prevent infinite recursion + template MString& append(T) { return append('?'); } + // Take a list of any number of arguments and append them to the string template MString& append(T arg1, Args... more) { return append(arg1).append(more...); } @@ -299,6 +308,8 @@ class MString { }; +#pragma GCC diagnostic pop + #ifndef TS_SIZE #define TS_SIZE 63 #endif diff --git a/Marlin/src/tests/marlin_tests.cpp b/Marlin/src/tests/marlin_tests.cpp index 3d14f094a2bf..f61f840176f2 100644 --- a/Marlin/src/tests/marlin_tests.cpp +++ b/Marlin/src/tests/marlin_tests.cpp @@ -52,16 +52,17 @@ void runStartupTests() { // 100 dashes, but chopped down to DEFAULT_MSTRING_SIZE (20) TSS(repchr_t('-', 100)).echoln(); - // Hello World!-123456------ str(F("Hello")); str.append(F(" World!")); str += '-'; - str += "123"; + str += uint8_t(123); str += F("456"); str += repchr_t('-', 6); str += Spaces(3); str += "< spaces!"; + str += int8_t(33); str.eol(); str += "^ eol!"; From 1a241e6e86512b570267d672e2f00a80df41b2e9 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 1 Jul 2023 16:50:42 -0500 Subject: [PATCH 342/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20M105=20(MString=20?= =?UTF-8?q?append=20TS)=20and=20EEPROM=20ver?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #24390 --- Marlin/src/core/mstring.h | 15 ++++++++++----- Marlin/src/module/settings.cpp | 4 ++-- Marlin/src/module/temperature.cpp | 2 +- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/Marlin/src/core/mstring.h b/Marlin/src/core/mstring.h index 77a03d7ff140..bdfc95f9dcda 100644 --- a/Marlin/src/core/mstring.h +++ b/Marlin/src/core/mstring.h @@ -112,10 +112,9 @@ class MString { MString& set(const char *s) { return set(const_cast(s)); } MString& set_P(PGM_P const s) { strncpy_P(str, s, SIZE); debug(F("pstring")); return *this; } MString& set(FSTR_P const f) { return set_P(FTOP(f)); } - MString& set(const MString &s) { strncpy(str, s.str, SIZE); debug(F("MString")); return *this; } MString& set(const bool &b) { return set(b ? F("true") : F("false")); } MString& set(const char c) { str[0] = c; if (1 < SIZE) str[1] = '\0'; debug(F("char")); return *this; } - MString& set(const int8_t &i) { SNPRINTF_P(str, SIZE, PSTR("%d"), i); debug(F("int8_t")); return *this; } + MString& set(const int8_t &i) { SNPRINTF_P(str, SIZE, PSTR("%d"), i); debug(F("int8_t")); return *this; } MString& set(const short &i) { SNPRINTF_P(str, SIZE, PSTR("%d"), i); debug(F("short")); return *this; } MString& set(const int &i) { SNPRINTF_P(str, SIZE, PSTR("%d"), i); debug(F("int")); return *this; } MString& set(const long &l) { SNPRINTF_P(str, SIZE, PSTR("%ld"), l); debug(F("long")); return *this; } @@ -130,6 +129,9 @@ class MString { MString& set(const xyz_pos_t &v) { set(); return append(v); } MString& set(const xyze_pos_t &v) { set(); return append(v); } + template + MString& set(const MString &m) { strncpy(str, &m, SIZE); debug(F("MString")); return *this; } + MString& setn(char *s, int len) { int c = _MIN(len, SIZE); strncpy(str, s, c); str[c] = '\0'; debug(F("string")); return *this; } MString& setn(const char *s, int len) { return setn(const_cast(s), len); } MString& setn_P(PGM_P const s, int len) { int c = _MIN(len, SIZE); strncpy_P(str, s, c); str[c] = '\0'; debug(F("pstring")); return *this; } @@ -157,7 +159,6 @@ class MString { MString& append(const char *s) { return append(const_cast(s)); } MString& append_P(PGM_P const s) { int sz = length(); if (sz < SIZE) strncpy_P(str + sz, s, SIZE - sz); debug(F("pstring")); return *this; } MString& append(FSTR_P const f) { return append_P(FTOP(f)); } - MString& append(const MString &s) { return append(s.str); } MString& append(const bool &b) { return append(b ? F("true") : F("false")); } MString& append(const char c) { int sz = length(); if (sz < SIZE) { str[sz] = c; if (sz < SIZE - 1) str[sz + 1] = '\0'; } return *this; } #if ENABLED(FASTER_APPEND) @@ -186,6 +187,9 @@ class MString { MString& append(const xyz_pos_t &v) { LOOP_NUM_AXES(i) { if (i) append(' '); append(AXIS_CHAR(i), v[i]); } debug(F("xyz")); return *this; } MString& append(const xyze_pos_t &v) { LOOP_LOGICAL_AXES(i) { if (i) append(' '); append(AXIS_CHAR(i), v[i]); } debug(F("xyze")); return *this; } + template + MString& append(const MString &m) { return append(&m); } + // Append only if the given space is available MString& appendn(char *s, int len) { int sz = length(), c = _MIN(len, SIZE - sz); if (c > 0) { strncpy(str + sz, s, c); str[sz + c] = '\0'; } debug(F("string")); return *this; } MString& appendn(const char *s, int len) { return appendn(const_cast(s), len); } @@ -227,7 +231,7 @@ class MString { MString(T arg1, Args... more) { set(arg1); append(more...); } // Catch unhandled types to prevent infinite recursion - template MString& append(T) { return append('?'); } + template MString& append(T) { return append(TERN(MSTRING_DEBUG, typeid(T).name(), '?')); } // Take a list of any number of arguments and append them to the string template @@ -313,4 +317,5 @@ class MString { #ifndef TS_SIZE #define TS_SIZE 63 #endif -#define TS(V...) MString(V) +typedef MString TString; +#define TS(V...) TString(V) diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index 479b43c4bd7d..c8ce84cd83e4 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -814,14 +814,14 @@ void MarlinSettings::postprocess() { */ bool MarlinSettings::save() { float dummyf = 0; - MString<4> ver(F("ERR")); + MString<3> ver(F("ERR")); if (!EEPROM_START(EEPROM_OFFSET)) return false; EEPROM_Error eeprom_error = ERR_EEPROM_NOERR; // Write or Skip version. (Flash doesn't allow rewrite without erase.) - TERN(FLASH_EEPROM_EMULATION, EEPROM_SKIP, EEPROM_WRITE)(&ver); + TERN(FLASH_EEPROM_EMULATION, EEPROM_SKIP, EEPROM_WRITE)(ver); #if ENABLED(EEPROM_INIT_NOW) EEPROM_SKIP(build_hash); // Skip the hash slot which will be written later diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index e209d6f83519..d7bf9c8b7936 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -4185,7 +4185,7 @@ void Temperature::isr() { SString<50> s(' ', k); if (TERN0(HAS_MULTI_HOTEND, e >= 0)) s += char('0' + e); - s += TS(':', p_float_t(c, SFP)); + s += ':'; s += p_float_t(c, SFP); if (show_t) { s += F(" /"); s += p_float_t(t, SFP); } #if ENABLED(SHOW_TEMP_ADC_VALUES) // Temperature MAX SPI boards do not have an OVERSAMPLENR defined From 60f74f3cb3c95e9d1c6408b80a489d422cf945e6 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 1 Jul 2023 18:20:22 -0500 Subject: [PATCH 343/427] =?UTF-8?q?=F0=9F=94=A8=20Suppress=20truncation=20?= =?UTF-8?q?warning?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/mstring.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Marlin/src/core/mstring.h b/Marlin/src/core/mstring.h index bdfc95f9dcda..f78ba601b161 100644 --- a/Marlin/src/core/mstring.h +++ b/Marlin/src/core/mstring.h @@ -73,6 +73,10 @@ extern void SERIAL_CHAR(char c); #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wdeprecated-declarations" +#if DISABLED(UNSAFE_MSTRING) + #pragma GCC diagnostic ignored "-Wstringop-truncation" +#endif + /** * @brief MString class template * @details A class template providing convenient string operators, From 7f5b0b4008c4e4853903f4f790392451f82362c2 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 1 Jul 2023 18:20:36 -0500 Subject: [PATCH 344/427] =?UTF-8?q?=F0=9F=A9=B9=20Define=20drawTrinamicCon?= =?UTF-8?q?figMenu?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25982 --- Marlin/src/lcd/e3v2/proui/dwin.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Marlin/src/lcd/e3v2/proui/dwin.h b/Marlin/src/lcd/e3v2/proui/dwin.h index 3c5bad1e9abd..41d8020b727a 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.h +++ b/Marlin/src/lcd/e3v2/proui/dwin.h @@ -355,6 +355,9 @@ void drawStepsMenu(); void drawEditMeshMenu(); #endif #endif +#if HAS_TRINAMIC_CONFIG + void drawTrinamicConfigMenu(); +#endif // Custom colors editing #if HAS_CUSTOM_COLORS From 38e92b522b8abc2a5b2c4050dd8d8231127d1aeb Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 1 Jul 2023 18:56:53 -0500 Subject: [PATCH 345/427] =?UTF-8?q?=F0=9F=93=9D=20mm/m=20=3D>=20mm/min?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/feature/camera/M240.cpp | 2 +- Marlin/src/module/tool_change.h | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Marlin/src/gcode/feature/camera/M240.cpp b/Marlin/src/gcode/feature/camera/M240.cpp index f79e80bcc236..bb1d3f9eee31 100644 --- a/Marlin/src/gcode/feature/camera/M240.cpp +++ b/Marlin/src/gcode/feature/camera/M240.cpp @@ -111,7 +111,7 @@ * B - Y offset to the return position * F - Override the XY movement feedrate * R - Retract/recover length (current units) - * S - Retract/recover feedrate (mm/m) + * S - Retract/recover feedrate (mm/min) * X - Move to X before triggering the shutter * Y - Move to Y before triggering the shutter * Z - Raise Z by a distance before triggering the shutter diff --git a/Marlin/src/module/tool_change.h b/Marlin/src/module/tool_change.h index 5f03a5495e76..3cb8b4a63784 100644 --- a/Marlin/src/module/tool_change.h +++ b/Marlin/src/module/tool_change.h @@ -34,8 +34,8 @@ float extra_resume; // M217 B int16_t prime_speed; // M217 P int16_t wipe_retract; // M217 G - int16_t retract_speed; // M217 R (mm/m) - int16_t unretract_speed; // M217 U (mm/m) + int16_t retract_speed; // M217 R (mm/min) + int16_t unretract_speed; // M217 U (mm/min) uint8_t fan_speed; // M217 F uint8_t fan_time; // M217 D #endif From 275642b2977af95024e2c8b55538a5dbc0fa09c5 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sun, 2 Jul 2023 00:31:20 +0000 Subject: [PATCH 346/427] [cron] Bump distribution date (2023-07-02) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 8bba778082fd..5b9b21662cfb 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-01" +//#define STRING_DISTRIBUTION_DATE "2023-07-02" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 5f7753132bba..7d97a2da45f1 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-01" + #define STRING_DISTRIBUTION_DATE "2023-07-02" #endif /** From b50add4694e66209acd3c5d6fe62f062817fd79e Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 1 Jul 2023 19:54:39 -0500 Subject: [PATCH 347/427] =?UTF-8?q?=F0=9F=94=A8=20Wrapper=20for=20GCC=20= 80000 #pragma GCC diagnostic ignored "-Wstringop-truncation" #endif From c483fe76c7c750d1ee08a6d5fdfe363f1beb4e03 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 1 Jul 2023 20:01:45 -0500 Subject: [PATCH 348/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20ProUI=20=5Fremain?= =?UTF-8?q?=5Ftime?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #25982 --- Marlin/src/lcd/e3v2/proui/dwin.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index 2e4047e05f45..34a37da45f64 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -575,6 +575,7 @@ void drawPrintProgressElapsed() { } #if ENABLED(SHOW_REMAINING_TIME) + uint32_t _remain_time = 0; void drawPrintProgressRemain() { MString<12> buf; buf.setf(F("%02i:%02i "), _remain_time / 3600, (_remain_time % 3600) / 60); @@ -1319,7 +1320,6 @@ void eachMomentUpdate() { // Remaining time #if ENABLED(SHOW_REMAINING_TIME) - static uint32_t _remain_time = 0; if (_remain_time != ui.get_remaining_time()) { _remain_time = ui.get_remaining_time(); drawPrintProgressRemain(); From 3ea87ad54c1e445a1c8cfef1489809edae5decb3 Mon Sep 17 00:00:00 2001 From: Alexander Gavrilenko Date: Sun, 2 Jul 2023 04:16:12 +0300 Subject: [PATCH 349/427] =?UTF-8?q?=E2=9C=A8=20SPI=20TFT=20/=20Touchscreen?= =?UTF-8?q?=20for=20STM32H7=20(#25784)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: thisiskeithb <13375512+thisiskeithb@users.noreply.github.com> Co-authored-by: Scott Lahteine --- Marlin/src/HAL/STM32/tft/tft_spi.cpp | 159 +++++++++++++----- Marlin/src/HAL/STM32/tft/tft_spi.h | 9 +- Marlin/src/HAL/STM32/tft/xpt2046.cpp | 44 ++++- Marlin/src/HAL/STM32/tft/xpt2046.h | 8 +- Marlin/src/inc/Conditionals_LCD.h | 14 ++ Marlin/src/inc/SanityCheck.h | 6 +- Marlin/src/lcd/marlinui.cpp | 26 +-- Marlin/src/lcd/marlinui.h | 5 +- Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h | 64 ++++--- .../pins/stm32f4/pins_BTT_SKR_V2_0_common.h | 78 ++++++--- .../pins/stm32h7/pins_BTT_SKR_V3_0_common.h | 113 ++++++++++--- 11 files changed, 387 insertions(+), 139 deletions(-) diff --git a/Marlin/src/HAL/STM32/tft/tft_spi.cpp b/Marlin/src/HAL/STM32/tft/tft_spi.cpp index eb81a27bf102..cca247e20d6b 100644 --- a/Marlin/src/HAL/STM32/tft/tft_spi.cpp +++ b/Marlin/src/HAL/STM32/tft/tft_spi.cpp @@ -52,7 +52,6 @@ void TFT_SPI::init() { SPIx.Init.NSS = SPI_NSS_SOFT; SPIx.Init.Mode = SPI_MODE_MASTER; SPIx.Init.Direction = (TFT_MISO_PIN == TFT_MOSI_PIN) ? SPI_DIRECTION_1LINE : SPI_DIRECTION_2LINES; - SPIx.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_2; SPIx.Init.CLKPhase = SPI_PHASE_1EDGE; SPIx.Init.CLKPolarity = SPI_POLARITY_LOW; SPIx.Init.DataSize = SPI_DATASIZE_8BIT; @@ -61,12 +60,25 @@ void TFT_SPI::init() { SPIx.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE; SPIx.Init.CRCPolynomial = 10; + #ifndef STM32H7xx + SPIx.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_2; // 18 MBit/s for F103, 21 MBit/s for F407, 25 MBit/s for F411 + #else + SPIx.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_4; // 20 MBit/s for H743 + SPIx.Init.NSSPMode = SPI_NSS_PULSE_ENABLE; + SPIx.Init.NSSPolarity = SPI_NSS_POLARITY_LOW; + SPIx.Init.FifoThreshold = SPI_FIFO_THRESHOLD_01DATA; + SPIx.Init.MasterSSIdleness = SPI_MASTER_SS_IDLENESS_00CYCLE; + SPIx.Init.MasterInterDataIdleness = SPI_MASTER_INTERDATA_IDLENESS_00CYCLE; + SPIx.Init.MasterReceiverAutoSusp = SPI_MASTER_RX_AUTOSUSP_DISABLE; + SPIx.Init.MasterKeepIOState = SPI_MASTER_KEEP_IO_STATE_ENABLE; + SPIx.Init.IOSwap = SPI_IO_SWAP_DISABLE; + #endif + pinmap_pinout(digitalPinToPinName(TFT_SCK_PIN), PinMap_SPI_SCLK); pinmap_pinout(digitalPinToPinName(TFT_MOSI_PIN), PinMap_SPI_MOSI); #if PIN_EXISTS(TFT_MISO) && TFT_MISO_PIN != TFT_MOSI_PIN pinmap_pinout(digitalPinToPinName(TFT_MISO_PIN), PinMap_SPI_MISO); #endif - pin_PullConfig(get_GPIO_Port(STM_PORT(digitalPinToPinName(TFT_SCK_PIN))), STM_LL_GPIO_PIN(digitalPinToPinName(TFT_SCK_PIN)), GPIO_PULLDOWN); #ifdef SPI1_BASE if (SPIx.Instance == SPI1) { @@ -74,12 +86,17 @@ void TFT_SPI::init() { #ifdef STM32F1xx __HAL_RCC_DMA1_CLK_ENABLE(); DMAtx.Instance = DMA1_Channel3; + SPIx.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_4; // SPI1 clock on F1 and F4 is two times faster than SPI2 and SPI3 clock #elif defined(STM32F4xx) __HAL_RCC_DMA2_CLK_ENABLE(); DMAtx.Instance = DMA2_Stream3; DMAtx.Init.Channel = DMA_CHANNEL_3; + SPIx.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_4; // SPI1 clock on F1 and F4 is two times faster than SPI2 and SPI3 clock + #elif defined(STM32H7xx) + __HAL_RCC_DMA1_CLK_ENABLE(); + DMAtx.Instance = DMA1_Stream4; + DMAtx.Init.Request = DMA_REQUEST_SPI1_TX; #endif - SPIx.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_4; } #endif #ifdef SPI2_BASE @@ -92,6 +109,10 @@ void TFT_SPI::init() { __HAL_RCC_DMA1_CLK_ENABLE(); DMAtx.Instance = DMA1_Stream4; DMAtx.Init.Channel = DMA_CHANNEL_0; + #elif defined(STM32H7xx) + __HAL_RCC_DMA1_CLK_ENABLE(); + DMAtx.Instance = DMA1_Stream4; + DMAtx.Init.Request = DMA_REQUEST_SPI2_TX; #endif } #endif @@ -105,25 +126,27 @@ void TFT_SPI::init() { __HAL_RCC_DMA1_CLK_ENABLE(); DMAtx.Instance = DMA1_Stream5; DMAtx.Init.Channel = DMA_CHANNEL_0; + #elif defined(STM32H7xx) + __HAL_RCC_DMA1_CLK_ENABLE(); + DMAtx.Instance = DMA1_Stream4; + DMAtx.Init.Request = DMA_REQUEST_SPI3_TX; #endif } #endif - HAL_SPI_Init(&SPIx); - DMAtx.Init.Direction = DMA_MEMORY_TO_PERIPH; DMAtx.Init.PeriphInc = DMA_PINC_DISABLE; DMAtx.Init.PeriphDataAlignment = DMA_PDATAALIGN_HALFWORD; DMAtx.Init.MemDataAlignment = DMA_MDATAALIGN_HALFWORD; DMAtx.Init.Mode = DMA_NORMAL; DMAtx.Init.Priority = DMA_PRIORITY_LOW; - #ifdef STM32F4xx + #if ANY(STM32F4xx, STM32H7xx) DMAtx.Init.FIFOMode = DMA_FIFOMODE_DISABLE; #endif } void TFT_SPI::dataTransferBegin(uint16_t dataSize) { - SPIx.Init.DataSize = dataSize == DATASIZE_8BIT ? SPI_DATASIZE_8BIT : SPI_DATASIZE_16BIT; + SPIx.Init.DataSize = dataSize; HAL_SPI_Init(&SPIx); WRITE(TFT_CS_PIN, LOW); } @@ -148,28 +171,43 @@ uint32_t TFT_SPI::getID() { uint32_t TFT_SPI::readID(const uint16_t inReg) { uint32_t data = 0; #if PIN_EXISTS(TFT_MISO) - uint32_t BaudRatePrescaler = SPIx.Init.BaudRatePrescaler; - uint32_t i; + const uint32_t oldPrescaler = SPIx.Init.BaudRatePrescaler; - SPIx.Init.BaudRatePrescaler = SPIx.Instance == SPI1 ? SPI_BAUDRATEPRESCALER_8 : SPI_BAUDRATEPRESCALER_4; + SPIx.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_64; dataTransferBegin(DATASIZE_8BIT); writeReg(inReg); if (SPIx.Init.Direction == SPI_DIRECTION_1LINE) SPI_1LINE_RX(&SPIx); - __HAL_SPI_ENABLE(&SPIx); - for (i = 0; i < 4; i++) { - #if TFT_MISO_PIN != TFT_MOSI_PIN - while (!__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_TXE)) {} - SPIx.Instance->DR = 0; - #endif - while (!__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_RXNE)) {} - data = (data << 8) | SPIx.Instance->DR; - } + #ifdef STM32H7xx + for (uint32_t i = 0; i < 4; i++) { + MODIFY_REG(SPIx.Instance->CR2, SPI_CR2_TSIZE, 1); + __HAL_SPI_ENABLE(&SPIx); + SET_BIT(SPIx.Instance->CR1, SPI_CR1_CSTART); + + #if TFT_MISO_PIN != TFT_MOSI_PIN + SPIx.Instance->TXDR = 0; + #endif + while (!__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_EOT)) {} + data = (data << 8) | SPIx.Instance->RXDR; + __HAL_SPI_DISABLE(&SPIx); + __HAL_SPI_CLEAR_EOTFLAG(&SPIx); + __HAL_SPI_CLEAR_TXTFFLAG(&SPIx); + } + #else + __HAL_SPI_ENABLE(&SPIx); + for (uint32_t i = 0; i < 4; i++) { + #if TFT_MISO_PIN != TFT_MOSI_PIN + while (!__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_TXE)) {} + SPIx.Instance->DR = 0; + #endif + while (!__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_RXNE)) {} + data = (data << 8) | SPIx.Instance->DR; + } + #endif dataTransferEnd(); - - SPIx.Init.BaudRatePrescaler = BaudRatePrescaler; + SPIx.Init.BaudRatePrescaler = oldPrescaler; #endif return data >> 7; @@ -182,6 +220,9 @@ bool TFT_SPI::isBusy() { #elif defined(STM32F4xx) #define __IS_DMA_ENABLED(__HANDLE__) ((__HANDLE__)->Instance->CR & DMA_SxCR_EN) #define __IS_DMA_CONFIGURED(__HANDLE__) ((__HANDLE__)->Instance->PAR != 0) + #elif defined(STM32H7xx) + #define __IS_DMA_ENABLED(__HANDLE__) (((DMA_Stream_TypeDef *)((__HANDLE__)->Instance))->CR & DMA_SxCR_EN) + #define __IS_DMA_CONFIGURED(__HANDLE__) (((DMA_Stream_TypeDef *)((__HANDLE__)->Instance))->PAR != 0) #endif if (!__IS_DMA_CONFIGURED(&DMAtx)) return false; @@ -193,8 +234,13 @@ bool TFT_SPI::isBusy() { else { // Check if DMA transfer completed flag is set if (__HAL_DMA_GET_FLAG(&DMAtx, __HAL_DMA_GET_TC_FLAG_INDEX(&DMAtx)) == 0) return true; - // Check if SPI transmit butter is empty and SPI is idle - if ((!__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_TXE)) || (__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_BSY))) return true; + #ifdef STM32H7xx + // Check if SPI data transfer is completed + if (!__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_EOT)) return true; + #else + // Check if SPI is idle + if (__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_BSY)) return true; + #endif } abort(); @@ -205,9 +251,15 @@ void TFT_SPI::abort() { HAL_DMA_Abort(&DMAtx); // Abort DMA transfer if any HAL_DMA_DeInit(&DMAtx); - CLEAR_BIT(SPIx.Instance->CR2, SPI_CR2_TXDMAEN); + #ifdef STM32H7xx + CLEAR_BIT(SPIx.Instance->CFG1, SPI_CFG1_TXDMAEN); + __HAL_SPI_CLEAR_EOTFLAG(&SPIx); + __HAL_SPI_CLEAR_TXTFFLAG(&SPIx); + #else + CLEAR_BIT(SPIx.Instance->CR2, SPI_CR2_TXDMAEN); + #endif - dataTransferEnd(); // Stop SPI and deselect CS + dataTransferEnd(); // Stop SPI and deselect CS } void TFT_SPI::transmit(uint16_t data) { @@ -215,12 +267,24 @@ void TFT_SPI::transmit(uint16_t data) { SPI_1LINE_TX(&SPIx); #endif - __HAL_SPI_ENABLE(&SPIx); + #ifdef STM32H7xx + MODIFY_REG(SPIx.Instance->CR2, SPI_CR2_TSIZE, 1); + __HAL_SPI_ENABLE(&SPIx); + SET_BIT(SPIx.Instance->CR1, SPI_CR1_CSTART); + + SPIx.Instance->TXDR = data; - SPIx.Instance->DR = data; + while (!__HAL_SPI_GET_FLAG(&SPIx, SPI_SR_EOT)) {} - while (!__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_TXE)) {} - while ( __HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_BSY)) {} + __HAL_SPI_CLEAR_EOTFLAG(&SPIx); + __HAL_SPI_CLEAR_TXTFFLAG(&SPIx); + #else + __HAL_SPI_ENABLE(&SPIx); + SPIx.Instance->DR = data; + while (__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_BSY)) {} + #endif + + __HAL_SPI_DISABLE(&SPIx); #if TFT_MISO_PIN != TFT_MOSI_PIN __HAL_SPI_CLEAR_OVRFLAG(&SPIx); // Clear overrun flag in 2 Lines communication mode because received data is not read @@ -237,35 +301,38 @@ void TFT_SPI::transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t coun dataTransferBegin(); - HAL_DMA_Start(&DMAtx, (uint32_t)data, (uint32_t)&(SPIx.Instance->DR), count); - __HAL_SPI_ENABLE(&SPIx); + #ifdef STM32H7xx + HAL_DMA_Start(&DMAtx, (uint32_t)data, (uint32_t)&(SPIx.Instance->TXDR), count); - SET_BIT(SPIx.Instance->CR2, SPI_CR2_TXDMAEN); // Enable Tx DMA Request + CLEAR_BIT(SPIx.Instance->CFG1, SPI_CFG1_TXDMAEN); + MODIFY_REG(SPIx.Instance->CR2, SPI_CR2_TSIZE, count); + SET_BIT(SPIx.Instance->CFG1, SPI_CFG1_TXDMAEN); // Enable Tx DMA Request + __HAL_SPI_ENABLE(&SPIx); + SET_BIT(SPIx.Instance->CR1, SPI_CR1_CSTART); + #else + HAL_DMA_Start(&DMAtx, (uint32_t)data, (uint32_t)&(SPIx.Instance->DR), count); + + __HAL_SPI_ENABLE(&SPIx); + SET_BIT(SPIx.Instance->CR2, SPI_CR2_TXDMAEN); // Enable Tx DMA Request + #endif TERN_(TFT_SHARED_IO, while (isBusy())); } void TFT_SPI::transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { - DMAtx.Init.MemInc = memoryIncrease; - HAL_DMA_Init(&DMAtx); - - if (TFT_MISO_PIN == TFT_MOSI_PIN) - SPI_1LINE_TX(&SPIx); - - dataTransferBegin(); - - HAL_DMA_Start(&DMAtx, (uint32_t)data, (uint32_t)&(SPIx.Instance->DR), count); - __HAL_SPI_ENABLE(&SPIx); - - SET_BIT(SPIx.Instance->CR2, SPI_CR2_TXDMAEN); // Enable Tx DMA Request + transmitDMA(memoryIncrease, data, count); HAL_DMA_PollForTransfer(&DMAtx, HAL_DMA_FULL_TRANSFER, HAL_MAX_DELAY); - while ( __HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_BSY)) {} + #ifdef STM32H7xx + while (!__HAL_SPI_GET_FLAG(&SPIx, SPI_SR_EOT)) {} + #else + while (__HAL_SPI_GET_FLAG(&SPIx, SPI_FLAG_BSY)) {} + #endif abort(); } #if ENABLED(USE_SPI_DMA_TC) - void TFT_SPI::TransmitDMA_IT(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { + void TFT_SPI::transmitDMA_IT(uint32_t memoryIncrease, uint16_t *data, uint16_t count) { DMAtx.Init.MemInc = memoryIncrease; HAL_DMA_Init(&DMAtx); diff --git a/Marlin/src/HAL/STM32/tft/tft_spi.h b/Marlin/src/HAL/STM32/tft/tft_spi.h index 0535113b1685..3d1f9829e3c0 100644 --- a/Marlin/src/HAL/STM32/tft/tft_spi.h +++ b/Marlin/src/HAL/STM32/tft/tft_spi.h @@ -25,8 +25,10 @@ #include "stm32f1xx_hal.h" #elif defined(STM32F4xx) #include "stm32f4xx_hal.h" +#elif defined(STM32H7xx) + #include "stm32h7xx_hal.h" #else - #error SPI TFT is currently only supported on STM32F1 and STM32F4 hardware. + #error SPI TFT is currently only supported on STM32F1, STM32F4 and STM32H7 hardware. #endif #ifndef LCD_READ_ID @@ -38,6 +40,7 @@ #define DATASIZE_8BIT SPI_DATASIZE_8BIT #define DATASIZE_16BIT SPI_DATASIZE_16BIT +#define DATASIZE_32BIT SPI_DATASIZE_32BIT #define TFT_IO_DRIVER TFT_SPI #define DMA_MAX_SIZE 0xFFFF @@ -51,7 +54,7 @@ class TFT_SPI { static void transmit(uint32_t memoryIncrease, uint16_t *data, uint16_t count); static void transmitDMA(uint32_t memoryIncrease, uint16_t *data, uint16_t count); #if ENABLED(USE_SPI_DMA_TC) - static void TransmitDMA_IT(uint32_t memoryIncrease, uint16_t *data, uint16_t count); + static void transmitDMA_IT(uint32_t memoryIncrease, uint16_t *data, uint16_t count); #endif public: @@ -71,7 +74,7 @@ class TFT_SPI { static void writeMultiple_DMA(uint16_t color, uint16_t count) { static uint16_t data; data = color; transmitDMA(DMA_MINC_DISABLE, &data, count); } #if ENABLED(USE_SPI_DMA_TC) - static void writeSequenceIT(uint16_t *data, uint16_t count) { TransmitDMA_IT(DMA_MINC_ENABLE, data, count); } + static void writeSequenceIT(uint16_t *data, uint16_t count) { transmitDMA_IT(DMA_MINC_ENABLE, data, count); } inline static void DMA_IRQHandler() { HAL_DMA_IRQHandler(&TFT_SPI::DMAtx); } #endif diff --git a/Marlin/src/HAL/STM32/tft/xpt2046.cpp b/Marlin/src/HAL/STM32/tft/xpt2046.cpp index 8efbfb84f8b0..f0c54f3690e9 100644 --- a/Marlin/src/HAL/STM32/tft/xpt2046.cpp +++ b/Marlin/src/HAL/STM32/tft/xpt2046.cpp @@ -56,7 +56,6 @@ void XPT2046::init() { SPIx.Init.NSS = SPI_NSS_SOFT; SPIx.Init.Mode = SPI_MODE_MASTER; SPIx.Init.Direction = SPI_DIRECTION_2LINES; - SPIx.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_8; SPIx.Init.CLKPhase = SPI_PHASE_2EDGE; SPIx.Init.CLKPolarity = SPI_POLARITY_HIGH; SPIx.Init.DataSize = SPI_DATASIZE_8BIT; @@ -65,6 +64,20 @@ void XPT2046::init() { SPIx.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE; SPIx.Init.CRCPolynomial = 10; + #ifndef STM32H7xx + SPIx.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_8; // 4.5 MBit/s for F103 and 5.25 MBit/s for F407 + #else + SPIx.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_16; // 5 MBit/s for H743 + SPIx.Init.NSSPMode = SPI_NSS_PULSE_ENABLE; + SPIx.Init.NSSPolarity = SPI_NSS_POLARITY_LOW; + SPIx.Init.FifoThreshold = SPI_FIFO_THRESHOLD_01DATA; + SPIx.Init.MasterSSIdleness = SPI_MASTER_SS_IDLENESS_00CYCLE; + SPIx.Init.MasterInterDataIdleness = SPI_MASTER_INTERDATA_IDLENESS_00CYCLE; + SPIx.Init.MasterReceiverAutoSusp = SPI_MASTER_RX_AUTOSUSP_DISABLE; + SPIx.Init.MasterKeepIOState = SPI_MASTER_KEEP_IO_STATE_ENABLE; + SPIx.Init.IOSwap = SPI_IO_SWAP_DISABLE; + #endif + pinmap_pinout(digitalPinToPinName(TOUCH_SCK_PIN), PinMap_SPI_SCLK); pinmap_pinout(digitalPinToPinName(TOUCH_MOSI_PIN), PinMap_SPI_MOSI); pinmap_pinout(digitalPinToPinName(TOUCH_MISO_PIN), PinMap_SPI_MISO); @@ -141,13 +154,30 @@ uint16_t XPT2046::getRawData(const XPTCoordinate coordinate) { } uint16_t XPT2046::hardwareIO(uint16_t data) { - __HAL_SPI_ENABLE(&SPIx); - while ((SPIx.Instance->SR & SPI_FLAG_TXE) != SPI_FLAG_TXE) {} - SPIx.Instance->DR = data; - while ((SPIx.Instance->SR & SPI_FLAG_RXNE) != SPI_FLAG_RXNE) {} - __HAL_SPI_DISABLE(&SPIx); + #ifdef STM32H7xx + MODIFY_REG(SPIx.Instance->CR2, SPI_CR2_TSIZE, 1); + __HAL_SPI_ENABLE(&SPIx); + SET_BIT(SPIx.Instance->CR1, SPI_CR1_CSTART); + + SPIx.Instance->TXDR = data; - return SPIx.Instance->DR; + while (!__HAL_SPI_GET_FLAG(&SPIx, SPI_SR_EOT)) {} + data = SPIx.Instance->RXDR; + + __HAL_SPI_DISABLE(&SPIx); + __HAL_SPI_CLEAR_EOTFLAG(&SPIx); + __HAL_SPI_CLEAR_TXTFFLAG(&SPIx); + + return data; + #else + __HAL_SPI_ENABLE(&SPIx); + while ((SPIx.Instance->SR & SPI_FLAG_TXE) != SPI_FLAG_TXE) {} + SPIx.Instance->DR = data; + while ((SPIx.Instance->SR & SPI_FLAG_RXNE) != SPI_FLAG_RXNE) {} + __HAL_SPI_DISABLE(&SPIx); + + return SPIx.Instance->DR; + #endif } uint16_t XPT2046::softwareIO(uint16_t data) { diff --git a/Marlin/src/HAL/STM32/tft/xpt2046.h b/Marlin/src/HAL/STM32/tft/xpt2046.h index 6b2492c33938..5ed0881ec68b 100644 --- a/Marlin/src/HAL/STM32/tft/xpt2046.h +++ b/Marlin/src/HAL/STM32/tft/xpt2046.h @@ -22,9 +22,13 @@ #pragma once #ifdef STM32F1xx - #include + #include "stm32f1xx_hal.h" #elif defined(STM32F4xx) - #include + #include "stm32f4xx_hal.h" +#elif defined(STM32H7xx) + #include "stm32h7xx_hal.h" +#else + #error SPI Touch Screen is currently only supported on STM32F1, STM32F4 and STM32H7 hardware. #endif #include "../../../inc/MarlinConfig.h" diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index bfc5bfd0ffbd..341c9d0bc064 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -533,6 +533,20 @@ #endif #if ANY(HAS_WIRED_LCD, EXTENSIBLE_UI, DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI) + /** + * HAS_DISPLAY indicates the display uses these MarlinUI methods... + * - update + * - abort_print + * - pause_print + * - resume_print + * - poweroff (for PSU_CONTROL and HAS_MARLINUI_MENU) + * + * ...and implements these MarlinUI methods: + * - zoffset_overlay (if BABYSTEP_GFX_OVERLAY or MESH_EDIT_GFX_OVERLAY are supported) + * - draw_kill_screen + * - kill_screen + * - draw_status_message + */ #define HAS_DISPLAY 1 #endif diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 4a948ceba303..8eb8662c32e3 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -2587,7 +2587,8 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L + COUNT_ENABLED(FYSETC_MINI_12864_X_X, FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0, FYSETC_GENERIC_12864_1_1) \ + COUNT_ENABLED(LCD_SAINSMART_I2C_1602, LCD_SAINSMART_I2C_2004) \ + COUNT_ENABLED(MKS_12864OLED, MKS_12864OLED_SSD1306) \ - + COUNT_ENABLED(MKS_TS35_V2_0, MKS_ROBIN_TFT24, MKS_ROBIN_TFT28, MKS_ROBIN_TFT32, MKS_ROBIN_TFT35, MKS_ROBIN_TFT43, MKS_ROBIN_TFT_V1_1R, ANET_ET4_TFT28, ANET_ET5_TFT35, BIQU_BX_TFT70, BTT_TFT35_SPI_V1_0) \ + + COUNT_ENABLED(MKS_TS35_V2_0, MKS_ROBIN_TFT24, MKS_ROBIN_TFT28, MKS_ROBIN_TFT32, MKS_ROBIN_TFT35, MKS_ROBIN_TFT43, \ + MKS_ROBIN_TFT_V1_1R, ANET_ET4_TFT28, ANET_ET5_TFT35, BIQU_BX_TFT70, BTT_TFT35_SPI_V1_0) \ + COUNT_ENABLED(TFTGLCD_PANEL_SPI, TFTGLCD_PANEL_I2C) \ + COUNT_ENABLED(VIKI2, miniVIKI) \ + ENABLED(WYH_L12864) \ @@ -2638,7 +2639,8 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #undef IS_U8GLIB_SSD1306 #undef IS_EXTUI -#if ANY(TFT_GENERIC, MKS_TS35_V2_0, MKS_ROBIN_TFT24, MKS_ROBIN_TFT28, MKS_ROBIN_TFT32, MKS_ROBIN_TFT35, MKS_ROBIN_TFT43, MKS_ROBIN_TFT_V1_1R, TFT_TRONXY_X5SA, ANYCUBIC_TFT35, ANYCUBIC_TFT35, LONGER_LK_TFT28, ANET_ET4_TFT28, ANET_ET5_TFT35, BIQU_BX_TFT70, BTT_TFT35_SPI_V1_0) +#if ANY(TFT_GENERIC, MKS_TS35_V2_0, MKS_ROBIN_TFT24, MKS_ROBIN_TFT28, MKS_ROBIN_TFT32, MKS_ROBIN_TFT35, MKS_ROBIN_TFT43, MKS_ROBIN_TFT_V1_1R, \ + TFT_TRONXY_X5SA, ANYCUBIC_TFT35, ANYCUBIC_TFT35, LONGER_LK_TFT28, ANET_ET4_TFT28, ANET_ET5_TFT35, BIQU_BX_TFT70, BTT_TFT35_SPI_V1_0) #if NONE(TFT_COLOR_UI, TFT_CLASSIC_UI, TFT_LVGL_UI) #error "TFT_COLOR_UI, TFT_CLASSIC_UI, TFT_LVGL_UI is required for your TFT. Please enable one." #elif MANY(TFT_COLOR_UI, TFT_CLASSIC_UI, TFT_LVGL_UI) diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index f8fde2177738..cbab4676c222 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -1679,11 +1679,13 @@ void MarlinUI::host_status() { #endif - void MarlinUI::flow_fault() { - LCD_ALERTMESSAGE(MSG_FLOWMETER_FAULT); - BUZZ(1000, 440); - TERN_(HAS_MARLINUI_MENU, return_to_status()); - } + #if ENABLED(FLOWMETER_SAFETY) + void MarlinUI::flow_fault() { + LCD_ALERTMESSAGE(MSG_FLOWMETER_FAULT); + BUZZ(1000, 440); + TERN_(HAS_MARLINUI_MENU, return_to_status()); + } + #endif void MarlinUI::pause_print() { #if HAS_MARLINUI_MENU @@ -1718,13 +1720,13 @@ void MarlinUI::host_status() { #if HAS_TOUCH_BUTTONS - // - // Screen Click - // - On menu screens move directly to the touched item - // - On menu screens, right side (last 3 cols) acts like a scroll - half up => prev page, half down = next page - // - On select screens (and others) touch the Right Half for +, Left Half for - - // - On edit screens, touch Up Half for -, Bottom Half to + - // + /** + * Screen Click + * - On menu screens move directly to the touched item + * - On menu screens, right side (last 3 cols) acts like a scroll - half up => prev page, half down = next page + * - On select screens (and others) touch the Left Half for ←, Right Half for → + * - On edit screens, touch Top Half for ↑, Bottom Half for ↓ + */ void MarlinUI::screen_click(const uint8_t row, const uint8_t col, const uint8_t, const uint8_t) { const millis_t now = millis(); if (PENDING(now, next_button_update_ms)) return; diff --git a/Marlin/src/lcd/marlinui.h b/Marlin/src/lcd/marlinui.h index 8810dcac7242..3a39d840e293 100644 --- a/Marlin/src/lcd/marlinui.h +++ b/Marlin/src/lcd/marlinui.h @@ -505,7 +505,10 @@ class MarlinUI { static void abort_print(); static void pause_print(); static void resume_print(); - static void flow_fault(); + + #if ENABLED(FLOWMETER_SAFETY) + static void flow_fault(); + #endif #if ALL(HAS_MARLINUI_MENU, PSU_CONTROL) static void poweroff(); diff --git a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h index 8cca8ec44081..ffb8fe8d12cf 100644 --- a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h +++ b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h @@ -311,28 +311,15 @@ #elif HAS_SPI_TFT // Config for Classic UI (emulated DOGM) and Color UI - #define TFT_A0_PIN EXP1_08_PIN - #define TFT_DC_PIN EXP1_08_PIN - #define TFT_CS_PIN EXP1_07_PIN - #define TFT_RESET_PIN EXP1_04_PIN - #define TFT_BACKLIGHT_PIN EXP1_03_PIN - - //#define TFT_RST_PIN EXP2_07_PIN - #define TFT_MOSI_PIN EXP2_06_PIN - #define TFT_SCK_PIN EXP2_02_PIN - #define TFT_MISO_PIN EXP2_01_PIN - - #define BTN_EN2 EXP2_05_PIN - #define BTN_EN1 EXP2_03_PIN - #define BTN_ENC EXP1_02_PIN + #define SDCARD_CONNECTION ONBOARD #define BEEPER_PIN EXP1_01_PIN - #define SDCARD_CONNECTION ONBOARD - #define TOUCH_BUTTONS_HW_SPI - #define TOUCH_BUTTONS_HW_SPI_DEVICE 1 + #define BTN_ENC EXP1_02_PIN + #define BTN_EN1 EXP2_03_PIN + #define BTN_EN2 EXP2_05_PIN - #define TFT_BUFFER_SIZE 2400 + #define TFT_DC_PIN TFT_A0_PIN #ifndef TFT_WIDTH #define TFT_WIDTH 480 @@ -341,8 +328,41 @@ #define TFT_HEIGHT 320 #endif - #define LCD_READ_ID 0xD3 - #define LCD_USE_DMA_SPI + #if ENABLED(BTT_TFT35_SPI_V1_0) + // 480x320, 3.5", SPI Display with Rotary Encoder. + // Stock Display for the BIQU B1 SE. + #define TFT_CS_PIN EXP2_04_PIN + #define TFT_A0_PIN EXP2_07_PIN + + #define TOUCH_CS_PIN EXP1_04_PIN + #define TOUCH_SCK_PIN EXP1_05_PIN + #define TOUCH_MISO_PIN EXP1_06_PIN + #define TOUCH_MOSI_PIN EXP1_03_PIN + #define TOUCH_INT_PIN EXP1_07_PIN + + #elif ENABLED(MKS_TS35_V2_0) + + #define TFT_CS_PIN EXP1_07_PIN + #define TFT_A0_PIN EXP1_08_PIN + + #define TFT_RESET_PIN EXP1_04_PIN + + #define TFT_BACKLIGHT_PIN EXP1_03_PIN + + #define TOUCH_BUTTONS_HW_SPI + #define TOUCH_BUTTONS_HW_SPI_DEVICE 1 + + //#define TFT_RST_PIN EXP2_07_PIN + #define TFT_SCK_PIN EXP2_02_PIN + #define TFT_MISO_PIN EXP2_01_PIN + #define TFT_MOSI_PIN EXP2_06_PIN + + #define LCD_READ_ID 0xD3 + #define LCD_USE_DMA_SPI + + #define TFT_BUFFER_SIZE 2400 + + #endif #if ENABLED(TFT_CLASSIC_UI) #ifndef TOUCH_CALIBRATION_X @@ -380,7 +400,7 @@ #define SD_DETECT_PIN EXP2_07_PIN - #else // !CR10_STOCKDISPLAY + #else // !CR10_STOCKDISPLAY #define LCD_PINS_RS EXP1_04_PIN @@ -421,7 +441,7 @@ #define NEOPIXEL_PIN EXP1_06_PIN #endif - #else // !FYSETC_MINI_12864 + #else // !FYSETC_MINI_12864 #if ENABLED(MKS_MINI_12864) diff --git a/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h index 055338f45b38..be7e0ab35f77 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h @@ -514,6 +514,61 @@ #endif // HAS_WIRED_LCD +#if HAS_SPI_TFT + + #define BTN_ENC EXP1_02_PIN + #define BTN_EN1 EXP2_03_PIN + #define BTN_EN2 EXP2_05_PIN + + #if ENABLED(BTT_TFT35_SPI_V1_0) + // 480x320, 3.5", SPI Display with Rotary Encoder. + // Stock Display for the BIQU B1 SE. + #define TFT_CS_PIN EXP2_04_PIN + #define TFT_A0_PIN EXP2_07_PIN + + #define TOUCH_CS_PIN EXP1_04_PIN + #define TOUCH_SCK_PIN EXP1_05_PIN + #define TOUCH_MISO_PIN EXP1_06_PIN + #define TOUCH_MOSI_PIN EXP1_03_PIN + #define TOUCH_INT_PIN EXP1_07_PIN + + #elif ENABLED(MKS_TS35_V2_0) + + /** ------ ------ + * BEEPER | 1 2 | BTN_ENC SPI1_MISO | 1 2 | SPI1_SCK + * TFT_BKL / LCD_EN | 3 4 | TFT_RESET / LCD_RS BTN_EN1 | 3 4 | SPI1_CS + * TOUCH_CS / LCD_D4 | 5 6 TOUCH_INT / LCD_D5 BTN_EN2 | 5 6 SPI1_MOSI + * SPI1_CS / LCD_D6 | 7 8 | SPI1_RS / LCD_D7 SPI1_RS | 7 8 | RESET + * GND | 9 10 | VCC GND | 9 10 | VCC + * ------ ------ + * EXP1 EXP2 + */ + #define TFT_CS_PIN EXP1_07_PIN // SPI1_CS + #define TFT_A0_PIN EXP1_08_PIN // SPI1_RS + #define TFT_DC_PIN TFT_DC_PIN + + #define TFT_RESET_PIN EXP1_04_PIN + + #define LCD_BACKLIGHT_PIN EXP1_03_PIN + #define TFT_BACKLIGHT_PIN LCD_BACKLIGHT_PIN + + #define TOUCH_BUTTONS_HW_SPI + #define TOUCH_BUTTONS_HW_SPI_DEVICE 1 + + #define TOUCH_CS_PIN EXP1_05_PIN // SPI1_NSS + #define TOUCH_SCK_PIN EXP2_02_PIN // SPI1_SCK + #define TOUCH_MISO_PIN EXP2_01_PIN // SPI1_MISO + #define TOUCH_MOSI_PIN EXP2_06_PIN // SPI1_MOSI + + #define LCD_READ_ID 0xD3 + #define LCD_USE_DMA_SPI + + #define TFT_BUFFER_SIZE 14400 + + #endif + +#endif // HAS_SPI_TFT + // Alter timing for graphical display #if IS_U8GLIB_ST7920 #ifndef BOARD_ST7920_DELAY_1 @@ -527,29 +582,6 @@ #endif #endif -#if HAS_SPI_TFT - - #define BTN_EN1 EXP2_03_PIN - #define BTN_EN2 EXP2_05_PIN - #define BTN_ENC EXP1_02_PIN - - // - // e.g., BTT_TFT35_SPI_V1_0 (480x320, 3.5", SPI Stock Display with Rotary Encoder in BIQU B1 SE) - // - #define TFT_CS_PIN EXP2_04_PIN - #define TFT_A0_PIN EXP2_07_PIN - #define TFT_SCK_PIN EXP2_02_PIN - #define TFT_MISO_PIN EXP2_01_PIN - #define TFT_MOSI_PIN EXP2_06_PIN - - #define TOUCH_INT_PIN EXP1_07_PIN - #define TOUCH_MISO_PIN EXP1_06_PIN - #define TOUCH_MOSI_PIN EXP1_03_PIN - #define TOUCH_SCK_PIN EXP1_05_PIN - #define TOUCH_CS_PIN EXP1_04_PIN - -#endif - // // NeoPixel LED // diff --git a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h index d6a7358f3e58..2d2df4c68ac7 100644 --- a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h +++ b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h @@ -459,6 +459,98 @@ #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN + #elif HAS_SPI_TFT // Config for Classic UI (emulated DOGM) and Color UI + + #define BTN_EN1 EXP2_03_PIN + #define BTN_EN2 EXP2_05_PIN + + #define TFT_DC_PIN TFT_A0_PIN + + #ifndef TFT_WIDTH + #define TFT_WIDTH 480 + #endif + #ifndef TFT_HEIGHT + #define TFT_HEIGHT 320 + #endif + + #if ENABLED(BTT_TFT35_SPI_V1_0) + // 480x320, 3.5", SPI Display with Rotary Encoder. + // Stock Display for the BIQU B1 SE. + #define TFT_CS_PIN EXP2_04_PIN + #define TFT_A0_PIN EXP2_07_PIN + + #define TOUCH_CS_PIN EXP1_04_PIN + #define TOUCH_SCK_PIN EXP1_05_PIN + #define TOUCH_MISO_PIN EXP1_06_PIN + #define TOUCH_MOSI_PIN EXP1_03_PIN + #define TOUCH_INT_PIN EXP1_07_PIN + + #ifndef TOUCH_CALIBRATION_X + #define TOUCH_CALIBRATION_X 17540 + #endif + #ifndef TOUCH_CALIBRATION_Y + #define TOUCH_CALIBRATION_Y -11388 + #endif + #ifndef TOUCH_OFFSET_X + #define TOUCH_OFFSET_X -21 + #endif + #ifndef TOUCH_OFFSET_Y + #define TOUCH_OFFSET_Y 337 + #endif + #ifndef TOUCH_ORIENTATION + #define TOUCH_ORIENTATION TOUCH_LANDSCAPE + #endif + + #elif ENABLED(MKS_TS35_V2_0) + + /** ------ ------ + * BEEPER | 1 2 | BTN_ENC SPI1_MISO | 1 2 | SPI1_SCK + * TFT_BKL / LCD_EN | 3 4 | TFT_RESET / LCD_RS BTN_EN1 | 3 4 | SPI1_CS + * TOUCH_CS / LCD_D4 | 5 6 TOUCH_INT / LCD_D5 BTN_EN2 | 5 6 SPI1_MOSI + * SPI1_CS / LCD_D6 | 7 8 | SPI1_RS / LCD_D7 SPI1_RS | 7 8 | RESET + * GND | 9 10 | VCC GND | 9 10 | VCC + * ------ ------ + * EXP1 EXP2 + */ + #define TFT_CS_PIN EXP1_07_PIN // SPI1_CS + #define TFT_A0_PIN EXP1_08_PIN // SPI1_RS + + #define TFT_RESET_PIN EXP1_04_PIN + + #define LCD_BACKLIGHT_PIN EXP1_03_PIN + #define TFT_BACKLIGHT_PIN LCD_BACKLIGHT_PIN + + #define TOUCH_BUTTONS_HW_SPI + #define TOUCH_BUTTONS_HW_SPI_DEVICE 1 + + #define TOUCH_CS_PIN EXP1_05_PIN // SPI1_NSS + #define TOUCH_SCK_PIN EXP2_02_PIN // SPI1_SCK + #define TOUCH_MISO_PIN EXP2_01_PIN // SPI1_MISO + #define TOUCH_MOSI_PIN EXP2_06_PIN // SPI1_MOSI + + #define LCD_READ_ID 0xD3 + #define LCD_USE_DMA_SPI + + #define TFT_BUFFER_SIZE 14400 + + #ifndef TOUCH_CALIBRATION_X + #define TOUCH_CALIBRATION_X -17253 + #endif + #ifndef TOUCH_CALIBRATION_Y + #define TOUCH_CALIBRATION_Y 11579 + #endif + #ifndef TOUCH_OFFSET_X + #define TOUCH_OFFSET_X 514 + #endif + #ifndef TOUCH_OFFSET_Y + #define TOUCH_OFFSET_Y -24 + #endif + #ifndef TOUCH_ORIENTATION + #define TOUCH_ORIENTATION TOUCH_LANDSCAPE + #endif + + #endif + #else #define LCD_PINS_RS EXP1_04_PIN @@ -517,27 +609,6 @@ #endif #endif -#if HAS_SPI_TFT - // - // e.g., BTT_TFT35_SPI_V1_0 (480x320, 3.5", SPI Stock Display with Rotary Encoder in BIQU B1 SE) - // - #define TFT_CS_PIN EXP2_04_PIN - #define TFT_A0_PIN EXP2_07_PIN - #define TFT_SCK_PIN EXP2_02_PIN - #define TFT_MISO_PIN EXP2_01_PIN - #define TFT_MOSI_PIN EXP2_06_PIN - - #define TOUCH_INT_PIN EXP1_07_PIN - #define TOUCH_MISO_PIN EXP1_06_PIN - #define TOUCH_MOSI_PIN EXP1_03_PIN - #define TOUCH_SCK_PIN EXP1_05_PIN - #define TOUCH_CS_PIN EXP1_04_PIN - - #define BTN_EN1 EXP2_03_PIN - #define BTN_EN2 EXP2_05_PIN - #define BTN_ENC EXP1_02_PIN -#endif - // // NeoPixel LED // From 7b8a2180ff0a0924a0558a6fbf4c75903f250511 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 3 Jul 2023 00:25:59 +0000 Subject: [PATCH 350/427] [cron] Bump distribution date (2023-07-03) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 5b9b21662cfb..2489ff9a450e 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-02" +//#define STRING_DISTRIBUTION_DATE "2023-07-03" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 7d97a2da45f1..b18e53e0d7bb 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-02" + #define STRING_DISTRIBUTION_DATE "2023-07-03" #endif /** From 179260878feb6fd575f8d341454e7c4a5add6c2e Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 1 Jul 2023 20:38:17 -0500 Subject: [PATCH 351/427] =?UTF-8?q?=F0=9F=8E=A8=20Misc.=20fixes=20and=20fo?= =?UTF-8?q?rmatting?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/MarlinCore.cpp | 4 +--- Marlin/src/core/macros.h | 2 ++ Marlin/src/core/serial.h | 9 ++++++--- Marlin/src/gcode/calibrate/G28.cpp | 14 +++++++++----- Marlin/src/gcode/sd/M24_M25.cpp | 2 +- Marlin/src/pins/ramps/pins_MKS_BASE_16.h | 2 +- Marlin/src/pins/ramps/pins_RAMPS.h | 18 ++++++++++-------- Marlin/src/pins/ramps/pins_RAMPS_CREALITY.h | 2 ++ 8 files changed, 32 insertions(+), 21 deletions(-) diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index 260464185f40..03b5e8c7a996 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -356,9 +356,7 @@ void startOrResumeJob() { TERN_(GCODE_REPEAT_MARKERS, repeat.reset()); TERN_(CANCEL_OBJECTS, cancelable.reset()); TERN_(LCD_SHOW_E_TOTAL, e_move_accumulator = 0); - #if ENABLED(SET_REMAINING_TIME) - ui.reset_remaining_time(); - #endif + TERN_(SET_REMAINING_TIME, ui.reset_remaining_time()); } print_job_timer.start(); } diff --git a/Marlin/src/core/macros.h b/Marlin/src/core/macros.h index e4b9d479c4e7..da17450c2b9f 100644 --- a/Marlin/src/core/macros.h +++ b/Marlin/src/core/macros.h @@ -375,6 +375,8 @@ extern "C++" { // C++11 solution that is standards compliant. Return type is deduced automatically + template static constexpr N _MIN(const N val) { return val; } + template static constexpr N _MAX(const N val) { return val; } template static constexpr auto _MIN(const L lhs, const R rhs) -> decltype(lhs + rhs) { return lhs < rhs ? lhs : rhs; } diff --git a/Marlin/src/core/serial.h b/Marlin/src/core/serial.h index 1c2369698597..fceaa0992c29 100644 --- a/Marlin/src/core/serial.h +++ b/Marlin/src/core/serial.h @@ -242,11 +242,14 @@ void serialprint_truefalse(const bool tf); void serial_offset(const_float_t v, const uint8_t sp=0); // For v==0 draw space (sp==1) or plus (sp==2) void print_bin(const uint16_t val); + void print_pos(NUM_AXIS_ARGS_(const_float_t) FSTR_P const prefix=nullptr, FSTR_P const suffix=nullptr); -inline void print_pos(const xyze_pos_t &xyze, FSTR_P const prefix=nullptr, FSTR_P const suffix=nullptr) { - print_pos(NUM_AXIS_ELEM_(xyze) prefix, suffix); -} +#if LOGICAL_AXES > 1 + inline void print_pos(const xyze_pos_t &xyze, FSTR_P const prefix=nullptr, FSTR_P const suffix=nullptr) { + print_pos(NUM_AXIS_ELEM_(xyze) prefix, suffix); + } +#endif #define SERIAL_POS(SUFFIX,VAR) do { print_pos(VAR, F(" " STRINGIFY(VAR) "="), F(" : " SUFFIX "\n")); }while(0) #define SERIAL_XYZ(PREFIX,V...) do { print_pos(V, F(PREFIX)); }while(0) diff --git a/Marlin/src/gcode/calibrate/G28.cpp b/Marlin/src/gcode/calibrate/G28.cpp index 6fb062c17003..33a8ed76e606 100644 --- a/Marlin/src/gcode/calibrate/G28.cpp +++ b/Marlin/src/gcode/calibrate/G28.cpp @@ -352,7 +352,9 @@ void GcodeSuite::G28() { endstops.enable(true); // Enable endstops for next homing move - bool finalRaiseZ = false; + #if HAS_Z_AXIS + bool finalRaiseZ = false; + #endif #if ENABLED(DELTA) @@ -622,10 +624,12 @@ void GcodeSuite::G28() { // Move to a height where we can use the full xy-area TERN_(DELTA_HOME_TO_SAFE_ZONE, do_blocking_move_to_z(delta_clip_start_height)); - // Move to the configured Z only if Z was homed to MIN, because machines that - // home to MAX historically expect 'G28 Z' to be safe to use at the end of a - // print, and do_move_after_z_homing is not very nuanced. - if (finalRaiseZ) do_move_after_z_homing(); + #if HAS_Z_AXIS + // Move to the configured Z only if Z was homed to MIN, because machines that + // home to MAX historically expect 'G28 Z' to be safe to use at the end of a + // print, and do_move_after_z_homing is not very nuanced. + if (finalRaiseZ) do_move_after_z_homing(); + #endif TERN_(CAN_SET_LEVELING_AFTER_G28, if (leveling_restore_state) set_bed_leveling_enabled()); diff --git a/Marlin/src/gcode/sd/M24_M25.cpp b/Marlin/src/gcode/sd/M24_M25.cpp index 45c596ae9922..7bf1ab74d5bb 100644 --- a/Marlin/src/gcode/sd/M24_M25.cpp +++ b/Marlin/src/gcode/sd/M24_M25.cpp @@ -70,7 +70,7 @@ void GcodeSuite::M24() { #endif if (card.isFileOpen()) { - card.startOrResumeFilePrinting(); // SD card will now be read for commands + card.startOrResumeFilePrinting(); // SD card will now be read for commands startOrResumeJob(); // Start (or resume) the print job timer TERN_(POWER_LOSS_RECOVERY, recovery.prepare()); } diff --git a/Marlin/src/pins/ramps/pins_MKS_BASE_16.h b/Marlin/src/pins/ramps/pins_MKS_BASE_16.h index 765a601fd029..bb6def5ca46f 100644 --- a/Marlin/src/pins/ramps/pins_MKS_BASE_16.h +++ b/Marlin/src/pins/ramps/pins_MKS_BASE_16.h @@ -38,7 +38,7 @@ // // Servos // -#define SERVO1_PIN 12 // Digital 12 / Pin 25 +#define SERVO1_PIN 12 // // Omitted RAMPS pins diff --git a/Marlin/src/pins/ramps/pins_RAMPS.h b/Marlin/src/pins/ramps/pins_RAMPS.h index 8b15f82736f9..08c059477b05 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS.h +++ b/Marlin/src/pins/ramps/pins_RAMPS.h @@ -320,14 +320,16 @@ // // TMC software SPI // -#ifndef TMC_SPI_MOSI - #define TMC_SPI_MOSI 66 -#endif -#ifndef TMC_SPI_MISO - #define TMC_SPI_MISO 44 -#endif -#ifndef TMC_SPI_SCK - #define TMC_SPI_SCK 64 +#if HAS_TMC_SPI + #ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI 66 + #endif + #ifndef TMC_SPI_MISO + #define TMC_SPI_MISO 44 + #endif + #ifndef TMC_SPI_SCK + #define TMC_SPI_SCK 64 + #endif #endif #if HAS_TMC_UART diff --git a/Marlin/src/pins/ramps/pins_RAMPS_CREALITY.h b/Marlin/src/pins/ramps/pins_RAMPS_CREALITY.h index 8c65b2e0b41d..49a8c196d0a6 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS_CREALITY.h +++ b/Marlin/src/pins/ramps/pins_RAMPS_CREALITY.h @@ -57,6 +57,8 @@ #define CASE_LIGHT_PIN 65 #endif +#define SERVO1_PIN 12 + #include "pins_RAMPS.h" #ifndef BEEPER_PIN From 1feb70c91beced527e2abd29d9465e5d998a694b Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Tue, 4 Jul 2023 06:06:45 +0000 Subject: [PATCH 352/427] [cron] Bump distribution date (2023-07-04) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 2489ff9a450e..a0bd1552eb40 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-03" +//#define STRING_DISTRIBUTION_DATE "2023-07-04" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index b18e53e0d7bb..c2c0cab98995 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-03" + #define STRING_DISTRIBUTION_DATE "2023-07-04" #endif /** From f479f8377d4a6b21ef3b429ed6a6d627c16ffd88 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Tue, 4 Jul 2023 13:25:26 -0700 Subject: [PATCH 353/427] =?UTF-8?q?=F0=9F=8E=A8=20Clean=20up=20TFT=20Color?= =?UTF-8?q?s=20(#26050)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dogm/u8g_dev_tft_upscale_from_128x64.cpp | 6 ++--- Marlin/src/lcd/tft/tft_color.h | 22 +++++++++---------- 2 files changed, 12 insertions(+), 16 deletions(-) diff --git a/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp b/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp index 160ee4412208..48c49b5c3312 100644 --- a/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp +++ b/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp @@ -88,8 +88,8 @@ TFT_IO tftio; #define X_HI (UPSCALE(TFT_PIXEL_OFFSET_X, WIDTH) - 1) #define Y_HI (UPSCALE(TFT_PIXEL_OFFSET_Y, HEIGHT) - 1) -// 16 bit color generator: https://ee-programming-notepad.blogspot.com/2016/10/16-bit-color-generator-picker.html -// RGB565 color picker: https://trolsoft.ru/en/articles/rgb565-color-picker +// RGB565 color picker: https://embeddednotepad.com/page/rgb565-color-picker +// Hex code to color name: https://www.color-name.com/ #define COLOR_BLACK 0x0000 // #000000 #define COLOR_WHITE 0xFFFF // #FFFFFF @@ -104,9 +104,7 @@ TFT_IO tftio; #define COLOR_BLUE 0x001F // #0000FF #define COLOR_YELLOW 0xFFE0 // #FFFF00 #define COLOR_MAGENTA 0xF81F // #FF00FF -#define COLOR_FUCHSIA 0xF81F // #FF00FF #define COLOR_CYAN 0x07FF // #00FFFF -#define COLOR_AQUA 0x07FF // #00FFFF #define COLOR_MAROON 0x7800 // #800000 #define COLOR_GREEN 0x03E0 // #008000 diff --git a/Marlin/src/lcd/tft/tft_color.h b/Marlin/src/lcd/tft/tft_color.h index 07518028aa80..66ec41e71143 100644 --- a/Marlin/src/lcd/tft/tft_color.h +++ b/Marlin/src/lcd/tft/tft_color.h @@ -30,8 +30,8 @@ #define COLOR(color) RGB(((color >> 16) & 0xFF), ((color >> 8) & 0xFF), (color & 0xFF)) #define HALF(color) RGB(RED(color) >> 1, GREEN(color) >> 1, BLUE(color) >> 1) -// 16 bit color generator: https://ee-programming-notepad.blogspot.com/2016/10/16-bit-color-generator-picker.html -// RGB565 color picker: https://trolsoft.ru/en/articles/rgb565-color-picker +// RGB565 color picker: https://embeddednotepad.com/page/rgb565-color-picker +// Hex code to color name: https://www.color-name.com/ #define COLOR_BLACK 0x0000 // #000000 #define COLOR_WHITE 0xFFFF // #FFFFFF @@ -44,13 +44,13 @@ #define COLOR_RED 0xF800 // #FF0000 #define COLOR_SCARLET 0xF904 // #FF2020 #define COLOR_LIME 0x7E00 // #00FF00 +#define COLOR_MIDNIGHT_BLUE 0x20AC // #1E156E #define COLOR_BLUE 0x001F // #0000FF +#define COLOR_OCEAN_BOAT_BLUE 0x03B7 // #0075BD #define COLOR_LIGHT_BLUE 0x061F // #00C3FF #define COLOR_YELLOW 0xFFE0 // #FFFF00 #define COLOR_MAGENTA 0xF81F // #FF00FF -#define COLOR_FUCHSIA 0xF81F // #FF00FF #define COLOR_CYAN 0x07FF // #00FFFF -#define COLOR_AQUA 0x07FF // #00FFFF #define COLOR_DODGER_BLUE 0x041F // #0080FF #define COLOR_VIVID_VIOLET 0x7933 // #772399 @@ -68,23 +68,21 @@ #define COLOR_DARK_ORANGE 0xFC40 // #FF8C00 #define COLOR_CORAL_RED 0xF9E7 // #FF3F3F -#define COLOR_DARK_PURPLE 0x9930 // #992380 - #ifndef COLOR_BACKGROUND - #define COLOR_BACKGROUND 0x20AC // #1E156E + #define COLOR_BACKGROUND COLOR_MIDNIGHT_BLUE #endif #ifndef COLOR_SELECTION_BG - #define COLOR_SELECTION_BG 0x9930 // #992380 + #define COLOR_SELECTION_BG COLOR_DARK_PURPLE #endif #ifndef COLOR_WEBSITE_URL - #define COLOR_WEBSITE_URL 0x03B7 // #0075BD + #define COLOR_WEBSITE_URL COLOR_OCEAN_BOAT_BLUE #endif #ifndef COLOR_INACTIVE #define COLOR_INACTIVE COLOR_GREY #endif #ifndef COLOR_COLD - #define COLOR_COLD COLOR_AQUA + #define COLOR_COLD COLOR_CYAN #endif #ifndef COLOR_HOTEND #define COLOR_HOTEND COLOR_SCARLET @@ -99,7 +97,7 @@ #define COLOR_COOLER COLOR_DARK_ORANGE #endif #ifndef COLOR_FAN - #define COLOR_FAN COLOR_AQUA + #define COLOR_FAN COLOR_CYAN #endif #ifndef COLOR_AXIS_HOMED @@ -117,7 +115,7 @@ #endif #ifndef COLOR_PRINT_TIME - #define COLOR_PRINT_TIME COLOR_AQUA + #define COLOR_PRINT_TIME COLOR_CYAN #endif #ifndef COLOR_PROGRESS_FRAME From 929497d52762f87243d1b521d9703f75b7501aa4 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Tue, 4 Jul 2023 14:07:56 -0700 Subject: [PATCH 354/427] =?UTF-8?q?=F0=9F=93=9D=20Update=20config=20URLs?= =?UTF-8?q?=20(#26049)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration.h | 40 +++++++++++---------- Marlin/Configuration_adv.h | 8 ++--- Marlin/src/inc/Conditionals_LCD.h | 2 +- Marlin/src/lcd/HD44780/marlinui_HD44780.cpp | 2 +- Marlin/src/lcd/HD44780/marlinui_HD44780.h | 2 +- 5 files changed, 29 insertions(+), 25 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index b21eba76a00b..c59bbba32a70 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -46,12 +46,13 @@ * * Example Configs: https://github.com/MarlinFirmware/Configurations/branches/all * - * Průša Calculator: https://blog.prusaprinters.org/calculator_3416/ + * Průša Calculator: https://blog.prusa3d.com/calculator_3416/ * * Calibration Guides: https://reprap.org/wiki/Calibration * https://reprap.org/wiki/Triffid_Hunter%27s_Calibration_Guide - * https://sites.google.com/site/repraplogphase/calibration-of-your-reprap + * https://web.archive.org/web/20220907014303/https://sites.google.com/site/repraplogphase/calibration-of-your-reprap * https://youtu.be/wAL9d7FgInk + * https://teachingtechyt.github.io/calibration.html * * Calibration Objects: https://www.thingiverse.com/thing:5573 * https://www.thingiverse.com/thing:1278865 @@ -990,8 +991,8 @@ // Radius around the center where the arm cannot reach #define MIDDLE_DEAD_ZONE_R 0 // (mm) - #define THETA_HOMING_OFFSET 0 // Calculated from Calibration Guide and M360 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 - #define PSI_HOMING_OFFSET 0 // Calculated from Calibration Guide and M364 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 + #define THETA_HOMING_OFFSET 0 // Calculated from Calibration Guide and M360 / M114. See https://www.morgan3dp.com/morgan-calibration-guide/ + #define PSI_HOMING_OFFSET 0 // Calculated from Calibration Guide and M364 / M114. See https://www.morgan3dp.com/morgan-calibration-guide/ #elif ENABLED(MP_SCARA) @@ -1025,7 +1026,7 @@ // Radius around the center where the arm cannot reach #define MIDDLE_DEAD_ZONE_R 0 // (mm) - // Calculated from Calibration Guide and M360 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 + // Calculated from Calibration Guide and M360 / M114. See https://www.morgan3dp.com/morgan-calibration-guide/ #define THETA_HOMING_OFFSET 0 #define PSI_HOMING_OFFSET 0 #endif @@ -1449,7 +1450,7 @@ #define MAG_MOUNTED_STOW_5 { PROBE_STOW_FEEDRATE, { 0, 0, 0 } } // Extra move if needed #endif -// Duet Smart Effector (for delta printers) - https://bit.ly/2ul5U7J +// Duet Smart Effector (for delta printers) - https://docs.duet3d.com/en/Duet3D_hardware/Accessories/Smart_Effector // When the pin is defined you can use M672 to set/reset the probe sensitivity. //#define DUET_SMART_EFFECTOR #if ENABLED(DUET_SMART_EFFECTOR) @@ -1465,7 +1466,7 @@ //#define SENSORLESS_PROBING /** - * Allen key retractable z-probe as seen on many Kossel delta printers - https://reprap.org/wiki/Kossel#Automatic_bed_leveling_probe + * Allen key retractable z-probe as seen on many Kossel delta printers - https://reprap.org/wiki/Kossel#Autolevel_probe * Deploys by touching z-axis belt. Retracts by pushing the probe down. */ //#define Z_PROBE_ALLEN_KEY @@ -2726,7 +2727,7 @@ // // Original RADDS LCD Display+Encoder+SDCardReader -// http://doku.radds.org/dokumentation/lcd-display/ +// https://web.archive.org/web/20200719145306/http://doku.radds.org/dokumentation/lcd-display/ // //#define RADDS_DISPLAY @@ -2756,7 +2757,6 @@ // // RigidBot Panel V1.0 -// http://www.inventapart.com/ // //#define RIGIDBOT_PANEL @@ -2800,8 +2800,9 @@ // // Sainsmart (YwRobot) LCD Displays // -// These require F.Malpartida's LiquidCrystal_I2C library -// https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/Home +// These require LiquidCrystal_I2C library: +// https://github.com/MarlinFirmware/New-LiquidCrystal +// https://github.com/fmalpartida/New-LiquidCrystal/wiki // //#define LCD_SAINSMART_I2C_1602 //#define LCD_SAINSMART_I2C_2004 @@ -2834,7 +2835,7 @@ // // -// 2-wire Non-latching LCD SR from https://goo.gl/aJJ4sH +// 2-wire Non-latching LCD SR from https://github.com/fmalpartida/New-LiquidCrystal/wiki/schematics#user-content-ShiftRegister_connection // LCD configuration: https://reprap.org/wiki/SAV_3D_LCD // //#define SAV_3DLCD @@ -2906,7 +2907,7 @@ // // MaKr3d Makr-Panel with graphic controller and SD support. -// https://reprap.org/wiki/MaKr3d_MaKrPanel +// https://reprap.org/wiki/MaKrPanel // //#define MAKRPANEL @@ -2924,7 +2925,7 @@ // // Cartesio UI -// http://mauk.cc/webshop/cartesio-shop/electronics/user-interface +// https://web.archive.org/web/20180605050442/http://mauk.cc/webshop/cartesio-shop/electronics/user-interface // //#define CARTESIO_UI @@ -2969,15 +2970,15 @@ // // BigTreeTech Mini 12864 V1.0 is an alias for FYSETC_MINI_12864_2_1. Type A/B. NeoPixel RGB Backlight. +// https://github.com/bigtreetech/MINI-12864/tree/master/mini12864_v1.0 // //#define BTT_MINI_12864_V1 // -// Factory display for Creality CR-10 +// Factory display for Creality CR-10 / CR-7 / Ender-3 // https://www.aliexpress.com/item/32833148327.html // -// This is RAMPS-compatible using a single 10-pin connector. -// (For CR-10 owners who want to replace the Melzi Creality board but retain the display) +// Connect to EXP1 on RAMPS and compatible boards. // //#define CR10_STOCKDISPLAY @@ -3183,6 +3184,7 @@ // // 480x320, 3.5", SPI Display with Rotary Encoder from MKS // Usually paired with MKS Robin Nano V2 & V3 +// https://github.com/makerbase-mks/MKS-TFT-Hardware/tree/master/MKS%20TS35 // //#define MKS_TS35_V2_0 @@ -3247,12 +3249,14 @@ //#define ANET_ET5_TFT35 // -// 1024x600, 7", RGB Stock Display with Rotary Encoder from BIQU-BX +// 1024x600, 7", RGB Stock Display with Rotary Encoder from BIQU BX +// https://github.com/bigtreetech/BIQU-BX/tree/master/Hardware // //#define BIQU_BX_TFT70 // // 480x320, 3.5", SPI Stock Display with Rotary Encoder from BIQU B1 SE Series +// https://github.com/bigtreetech/TFT35-SPI/tree/master/v1 // //#define BTT_TFT35_SPI_V1_0 diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 4d0791c341af..b1fde0a45d5f 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -190,7 +190,7 @@ /** * Hephestos 2 24V heated bed upgrade kit. - * https://store.bq.com/en/heated-bed-kit-hephestos2 + * https://www.en3dstudios.com/product/bq-hephestos-2-heated-bed-kit/ */ //#define HEPHESTOS2_HEATED_BED_KIT #if ENABLED(HEPHESTOS2_HEATED_BED_KIT) @@ -3426,7 +3426,7 @@ //#define PHOTOGRAPH_PIN 23 // Canon Hack Development Kit - // https://captain-slow.dk/2014/03/09/3d-printing-timelapses/ + // https://web.archive.org/web/20200920094805/https://captain-slow.dk/2014/03/09/3d-printing-timelapses/ //#define CHDK_PIN 4 // Optional second move with delay to trigger the camera shutter @@ -4028,7 +4028,7 @@ * Wiki: https://wiki.aus3d.com.au/Magnetic_Encoder * Github: https://github.com/Aus3D/MagneticEncoder * - * Supplier: https://aus3d.com.au/magnetic-encoder-module + * Supplier: https://aus3d.com.au/products/magnetic-encoder-module * Alternative Supplier: https://reliabuild3d.com/ * * Reliabuild encoders have been modified to improve reliability. @@ -4299,7 +4299,7 @@ /** * Using a sensor like the MMU2S * This mode requires a MK3S extruder with a sensor at the extruder idler, like the MMU2S. - * See https://help.prusa3d.com/en/guide/3b-mk3s-mk2-5s-extruder-upgrade_41560, step 11 + * See https://help.prusa3d.com/guide/3b-mk3s-mk2-5s-extruder-upgrade_41560#42048, step 11 */ #if HAS_PRUSA_MMU2S #define MMU2_C0_RETRY 5 // Number of retries (total time = timeout*retries) diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 341c9d0bc064..b052021bb7f2 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -454,7 +454,7 @@ // Shift register panels // --------------------- // 2 wire Non-latching LCD SR from: -// https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/schematics#!shiftregister-connection +// https://github.com/fmalpartida/New-LiquidCrystal/wiki/schematics#user-content-ShiftRegister_connection #if ENABLED(FF_INTERFACEBOARD) #define SR_LCD_3W_NL // Non latching 3 wire shift register #define IS_ULTIPANEL 1 diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp index c5b4df46f28c..148d0877cf57 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp @@ -81,7 +81,7 @@ #elif ENABLED(SR_LCD_2W_NL) // 2 wire Non-latching LCD SR from: - // https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/schematics#!shiftregister-connection + // https://github.com/fmalpartida/New-LiquidCrystal/wiki/schematics#user-content-ShiftRegister_connection LCD_CLASS lcd(SR_DATA_PIN, SR_CLK_PIN #if PIN_EXISTS(SR_STROBE) diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.h b/Marlin/src/lcd/HD44780/marlinui_HD44780.h index 719514fb11df..6f6f5a6855b6 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.h +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.h @@ -70,7 +70,7 @@ #elif ENABLED(SR_LCD_2W_NL) // 2 wire Non-latching LCD SR from: - // https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/schematics#!shiftregister-connection + // https://github.com/fmalpartida/New-LiquidCrystal/wiki/schematics#user-content-ShiftRegister_connection #include #include #define LCD_CLASS LiquidCrystal_SR From ed4e22b548a3ffb348e9d20f995f67a9aa7d2dd6 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 4 Jul 2023 18:31:20 -0500 Subject: [PATCH 355/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20pri?= =?UTF-8?q?nt=5Fpos=20=3D>=20print=5Fxyz?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/debug_section.h | 2 +- Marlin/src/core/serial.cpp | 14 +++++++++++- Marlin/src/core/serial.h | 22 +++++++++--------- Marlin/src/core/types.h | 37 +++++++++++++++++++++---------- Marlin/src/gcode/control/M211.cpp | 4 ++-- Marlin/src/module/motion.cpp | 4 +++- 6 files changed, 56 insertions(+), 27 deletions(-) diff --git a/Marlin/src/core/debug_section.h b/Marlin/src/core/debug_section.h index dc4cc0143c3e..eb3d12fdf54e 100644 --- a/Marlin/src/core/debug_section.h +++ b/Marlin/src/core/debug_section.h @@ -41,6 +41,6 @@ class SectionLog { SERIAL_ECHO(fpre); if (the_msg) SERIAL_ECHO(AS_CHAR(' '), the_msg); SERIAL_CHAR(' '); - print_pos(current_position); + print_xyz(xyz_pos_t(current_position)); } }; diff --git a/Marlin/src/core/serial.cpp b/Marlin/src/core/serial.cpp index bda1527545dd..2e07f3335a1d 100644 --- a/Marlin/src/core/serial.cpp +++ b/Marlin/src/core/serial.cpp @@ -121,12 +121,24 @@ void print_bin(uint16_t val) { } } -void print_pos(NUM_AXIS_ARGS_(const_float_t) FSTR_P const prefix/*=nullptr*/, FSTR_P const suffix/*=nullptr*/) { +void _print_xyz(NUM_AXIS_ARGS_(const_float_t) FSTR_P const prefix) { if (prefix) SERIAL_ECHO(prefix); #if NUM_AXES SERIAL_ECHOPGM_P( LIST_N(DOUBLE(NUM_AXES), SP_X_STR, x, SP_Y_STR, y, SP_Z_STR, z, SP_I_STR, i, SP_J_STR, j, SP_K_STR, k, SP_U_STR, u, SP_V_STR, v, SP_W_STR, w) ); #endif +} + +void print_xyz(NUM_AXIS_ARGS_(const_float_t) FSTR_P const prefix/*=nullptr*/, FSTR_P const suffix/*=nullptr*/) { + _print_xyz(NUM_AXIS_LIST_(x, y, z, i, j, k, u, v, w) prefix); + if (suffix) SERIAL_ECHO(suffix); else SERIAL_EOL(); +} + +void print_xyze(LOGICAL_AXIS_ARGS_(const_float_t) FSTR_P const prefix/*=nullptr*/, FSTR_P const suffix/*=nullptr*/) { + _print_xyz(NUM_AXIS_LIST_(x, y, z, i, j, k, u, v, w) prefix); + #if HAS_EXTRUDERS + SERIAL_ECHOPGM_P(SP_E_STR, e); + #endif if (suffix) SERIAL_ECHO(suffix); else SERIAL_EOL(); } diff --git a/Marlin/src/core/serial.h b/Marlin/src/core/serial.h index fceaa0992c29..96cff02508e3 100644 --- a/Marlin/src/core/serial.h +++ b/Marlin/src/core/serial.h @@ -243,16 +243,18 @@ void serial_offset(const_float_t v, const uint8_t sp=0); // For v==0 draw space void print_bin(const uint16_t val); -void print_pos(NUM_AXIS_ARGS_(const_float_t) FSTR_P const prefix=nullptr, FSTR_P const suffix=nullptr); - -#if LOGICAL_AXES > 1 - inline void print_pos(const xyze_pos_t &xyze, FSTR_P const prefix=nullptr, FSTR_P const suffix=nullptr) { - print_pos(NUM_AXIS_ELEM_(xyze) prefix, suffix); - } -#endif - -#define SERIAL_POS(SUFFIX,VAR) do { print_pos(VAR, F(" " STRINGIFY(VAR) "="), F(" : " SUFFIX "\n")); }while(0) -#define SERIAL_XYZ(PREFIX,V...) do { print_pos(V, F(PREFIX)); }while(0) +void print_xyz(NUM_AXIS_ARGS_(const_float_t) FSTR_P const prefix=nullptr, FSTR_P const suffix=nullptr); +inline void print_xyz(const xyz_pos_t &xyz, FSTR_P const prefix=nullptr, FSTR_P const suffix=nullptr) { + print_xyz(NUM_AXIS_ELEM_(xyz) prefix, suffix); +} + +void print_xyze(LOGICAL_AXIS_ARGS_(const_float_t) FSTR_P const prefix=nullptr, FSTR_P const suffix=nullptr); +inline void print_xyze(const xyze_pos_t &xyze, FSTR_P const prefix=nullptr, FSTR_P const suffix=nullptr) { + print_xyze(LOGICAL_AXIS_ELEM_(xyze) prefix, suffix); +} + +#define SERIAL_POS(SUFFIX,VAR) do { print_xyz(VAR, F(" " STRINGIFY(VAR) "="), F(" : " SUFFIX "\n")); }while(0) +#define SERIAL_XYZ(PREFIX,V...) do { print_xyz(V, F(PREFIX)); }while(0) /** * Extended string that can echo itself to serial diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index 6c0983694ce6..679cb2ce13e7 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -48,6 +48,19 @@ template struct IF { typedef L type; }; #define MAIN_AXIS_NAMES NUM_AXIS_LIST(X, Y, Z, I, J, K, U, V, W) #define STR_AXES_MAIN NUM_AXIS_GANG("X", "Y", "Z", STR_I, STR_J, STR_K, STR_U, STR_V, STR_W) +#define LOGICAL_AXIS_GANG(E,V...) NUM_AXIS_GANG(V) GANG_ITEM_E(E) +#define LOGICAL_AXIS_CODE(E,V...) NUM_AXIS_CODE(V) CODE_ITEM_E(E) +#define LOGICAL_AXIS_LIST(E,V...) NUM_AXIS_LIST(V) LIST_ITEM_E(E) +#define LOGICAL_AXIS_LIST_1(V) NUM_AXIS_LIST_1(V) LIST_ITEM_E(V) +#define LOGICAL_AXIS_ARRAY(E,V...) { LOGICAL_AXIS_LIST(E,V) } +#define LOGICAL_AXIS_ARRAY_1(V) { LOGICAL_AXIS_LIST_1(V) } +#define LOGICAL_AXIS_ARGS(T) LOGICAL_AXIS_LIST(T e, T x, T y, T z, T i, T j, T k, T u, T v, T w) +#define LOGICAL_AXIS_ELEM(O) LOGICAL_AXIS_LIST(O.e, O.x, O.y, O.z, O.i, O.j, O.k, O.u, O.v, O.w) +#define LOGICAL_AXIS_DECL(T,V) LOGICAL_AXIS_LIST(T e=V, T x=V, T y=V, T z=V, T i=V, T j=V, T k=V, T u=V, T v=V, T w=V) +#define LOGICAL_AXIS_NAMES LOGICAL_AXIS_LIST(E, X, Y, Z, I, J, K, U, V, W) +#define LOGICAL_AXIS_MAP(F) MAP(F, LOGICAL_AXIS_NAMES) +#define STR_AXES_LOGICAL LOGICAL_AXIS_GANG("E", "X", "Y", "Z", STR_I, STR_J, STR_K, STR_U, STR_V, STR_W) + #if NUM_AXES #define NUM_AXES_SEP , #define MAIN_AXIS_MAP(F) MAP(F, MAIN_AXIS_NAMES) @@ -67,18 +80,18 @@ template struct IF { typedef L type; }; #define NUM_AXIS_ELEM_(T) NUM_AXIS_ELEM(T) NUM_AXES_SEP #define MAIN_AXIS_NAMES_ MAIN_AXIS_NAMES NUM_AXES_SEP -#define LOGICAL_AXIS_GANG(E,V...) NUM_AXIS_GANG(V) GANG_ITEM_E(E) -#define LOGICAL_AXIS_CODE(E,V...) NUM_AXIS_CODE(V) CODE_ITEM_E(E) -#define LOGICAL_AXIS_LIST(E,V...) NUM_AXIS_LIST(V) LIST_ITEM_E(E) -#define LOGICAL_AXIS_LIST_1(V) NUM_AXIS_LIST_1(V) LIST_ITEM_E(V) -#define LOGICAL_AXIS_ARRAY(E,V...) { LOGICAL_AXIS_LIST(E,V) } -#define LOGICAL_AXIS_ARRAY_1(V) { LOGICAL_AXIS_LIST_1(V) } -#define LOGICAL_AXIS_ARGS(T) LOGICAL_AXIS_LIST(T e, T x, T y, T z, T i, T j, T k, T u, T v, T w) -#define LOGICAL_AXIS_ELEM(O) LOGICAL_AXIS_LIST(O.e, O.x, O.y, O.z, O.i, O.j, O.k, O.u, O.v, O.w) -#define LOGICAL_AXIS_DECL(T,V) LOGICAL_AXIS_LIST(T e=V, T x=V, T y=V, T z=V, T i=V, T j=V, T k=V, T u=V, T v=V, T w=V) -#define LOGICAL_AXIS_NAMES LOGICAL_AXIS_LIST(E, X, Y, Z, I, J, K, U, V, W) -#define LOGICAL_AXIS_MAP(F) MAP(F, LOGICAL_AXIS_NAMES) -#define STR_AXES_LOGICAL LOGICAL_AXIS_GANG("E", "X", "Y", "Z", STR_I, STR_J, STR_K, STR_U, STR_V, STR_W) +#if LOGICAL_AXES + #define LOGICAL_AXES_SEP , +#else + #define LOGICAL_AXES_SEP +#endif + +#define LOGICAL_AXIS_GANG_(V...) LOGICAL_AXIS_GANG(V) LOGICAL_AXES_SEP +#define LOGICAL_AXIS_LIST_(V...) LOGICAL_AXIS_LIST(V) LOGICAL_AXES_SEP +#define LOGICAL_AXIS_LIST_1_(V...) LOGICAL_AXIS_LIST_1(V) LOGICAL_AXES_SEP +#define LOGICAL_AXIS_ARGS_(T) LOGICAL_AXIS_ARGS(T) LOGICAL_AXES_SEP +#define LOGICAL_AXIS_ELEM_(T) LOGICAL_AXIS_ELEM(T) LOGICAL_AXES_SEP +#define LOGICAL_AXIS_NAMES_ LOGICAL_AXIS_NAMES LOGICAL_AXES_SEP #define SECONDARY_AXIS_GANG(V...) GANG_N(SECONDARY_AXES, V) #define SECONDARY_AXIS_CODE(V...) CODE_N(SECONDARY_AXES, V) diff --git a/Marlin/src/gcode/control/M211.cpp b/Marlin/src/gcode/control/M211.cpp index 95ae052a7bd4..8e7d10ce65b9 100644 --- a/Marlin/src/gcode/control/M211.cpp +++ b/Marlin/src/gcode/control/M211.cpp @@ -47,8 +47,8 @@ void GcodeSuite::M211_report(const bool forReplay/*=true*/) { report_echo_start(forReplay); const xyz_pos_t l_soft_min = soft_endstop.min.asLogical(), l_soft_max = soft_endstop.max.asLogical(); - print_pos(l_soft_min, F(STR_SOFT_MIN), F(" ")); - print_pos(l_soft_max, F(STR_SOFT_MAX)); + print_xyz(l_soft_min, F(STR_SOFT_MIN), F(" ")); + print_xyz(l_soft_max, F(STR_SOFT_MAX)); } #endif // HAS_SOFTWARE_ENDSTOPS diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index 3970273af0f1..c97523cbd316 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -577,7 +577,9 @@ void _internal_move_to_destination(const_feedRate_t fr_mm_s/*=0.0f*/ */ void do_blocking_move_to(NUM_AXIS_ARGS_(const_float_t) const_feedRate_t fr_mm_s/*=0.0f*/) { DEBUG_SECTION(log_move, "do_blocking_move_to", DEBUGGING(LEVELING)); - if (DEBUGGING(LEVELING)) DEBUG_XYZ("> ", NUM_AXIS_ARGS()); + #if NUM_AXES + if (DEBUGGING(LEVELING)) DEBUG_XYZ("> ", NUM_AXIS_ARGS()); + #endif const feedRate_t xy_feedrate = fr_mm_s ?: feedRate_t(XY_PROBE_FEEDRATE_MM_S); From 16f19b2c1fa6b64abd4de2558c13c9fdc162d600 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 4 Jul 2023 19:19:44 -0500 Subject: [PATCH 356/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20ProUI=20tramming?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/e3v2/proui/dwin.cpp | 28 ++++++++++------------------ buildroot/tests/STM32F103RE_creality | 2 +- 2 files changed, 11 insertions(+), 19 deletions(-) diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index 34a37da45f64..5ea8c71be0e1 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -2357,7 +2357,7 @@ void setFlow() { setPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refr if (isnan(zval)) LCD_MESSAGE(MSG_ZPROBE_OUT); else - ui.set_status(TS(F("X:"), p_float_t(xpos, 1), F(" Y:"), p_float_t(ypos, 1), F(" Z:"))); + ui.set_status(TS(F("X:"), p_float_t(xpos, 1), F(" Y:"), p_float_t(ypos, 1), F(" Z:"), p_float_t(zval, 2))); inLev = false; } return zval; @@ -2375,14 +2375,6 @@ void setFlow() { setPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refr #endif - inline void tramFL() { tram(0); } - inline void tramFR() { tram(1); } - inline void tramBR() { tram(2); } - inline void tramBL() { tram(3); } - #if ENABLED(BED_TRAMMING_INCLUDE_CENTER) - inline void tramC() { tram(4); } - #endif - #if HAS_BED_PROBE && HAS_MESH void trammingwizard() { @@ -2391,14 +2383,14 @@ void setFlow() { setPIntOnClick(MIN_PRINT_FLOW, MAX_PRINT_FLOW, []{ planner.refr return; } bed_mesh_t zval = {0}; - zval[0][0] = tramFL(); + zval[0][0] = tram(0); checkkey = ID_NothingToDo; meshViewer.drawMesh(zval, 2, 2); - zval[1][0] = tramFR(); + zval[1][0] = tram(1); meshViewer.drawMesh(zval, 2, 2); - zval[1][1] = tramBR(); + zval[1][1] = tram(2); meshViewer.drawMesh(zval, 2, 2); - zval[0][1] = tramBL(); + zval[0][1] = tram(3); meshViewer.drawMesh(zval, 2, 2); DWINUI::drawCenteredString(140, F("Calculating average")); @@ -3031,12 +3023,12 @@ void drawPrepareMenu() { #elif !HAS_BED_PROBE && HAS_ZOFFSET_ITEM MENU_ITEM_F(ICON_MoveZ0, "Home Z and disable", onDrawMenuItem, homeZAndDisable); #endif - MENU_ITEM(ICON_Axis, MSG_TRAM_FL, onDrawMenuItem, tramFL); - MENU_ITEM(ICON_Axis, MSG_TRAM_FR, onDrawMenuItem, tramFR); - MENU_ITEM(ICON_Axis, MSG_TRAM_BR, onDrawMenuItem, tramBR); - MENU_ITEM(ICON_Axis, MSG_TRAM_BL, onDrawMenuItem, tramBL); + MENU_ITEM(ICON_Axis, MSG_TRAM_FL, onDrawMenuItem, []{ (void)tram(0); }); + MENU_ITEM(ICON_Axis, MSG_TRAM_FR, onDrawMenuItem, []{ (void)tram(1); }); + MENU_ITEM(ICON_Axis, MSG_TRAM_BR, onDrawMenuItem, []{ (void)tram(2); }); + MENU_ITEM(ICON_Axis, MSG_TRAM_BL, onDrawMenuItem, []{ (void)tram(3); }); #if ENABLED(BED_TRAMMING_INCLUDE_CENTER) - MENU_ITEM(ICON_Axis, MSG_TRAM_C, onDrawMenuItem, tramC); + MENU_ITEM(ICON_Axis, MSG_TRAM_C, onDrawMenuItem, []{ (void)tram(4); }); #endif } updateMenu(trammingMenu); diff --git a/buildroot/tests/STM32F103RE_creality b/buildroot/tests/STM32F103RE_creality index bf56e12d7de6..9115d62d1b61 100755 --- a/buildroot/tests/STM32F103RE_creality +++ b/buildroot/tests/STM32F103RE_creality @@ -27,7 +27,7 @@ use_example_configs "Creality/Ender-3 S1/STM32F1" opt_disable DWIN_CREALITY_LCD Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN AUTO_BED_LEVELING_BILINEAR CANCEL_OBJECTS FWRETRACT opt_enable DWIN_LCD_PROUI INDIVIDUAL_AXIS_HOMING_SUBMENU SET_PROGRESS_MANUALLY SET_PROGRESS_PERCENT STATUS_MESSAGE_SCROLLING \ SOUND_MENU_ITEM PRINTCOUNTER NOZZLE_PARK_FEATURE ADVANCED_PAUSE_FEATURE FILAMENT_RUNOUT_SENSOR \ - BLTOUCH Z_SAFE_HOMING AUTO_BED_LEVELING_UBL MESH_EDIT_MENU \ + BLTOUCH Z_SAFE_HOMING AUTO_BED_LEVELING_UBL MESH_EDIT_MENU LCD_BED_TRAMMING \ LIMITED_MAX_FR_EDITING LIMITED_MAX_ACCEL_EDITING LIMITED_JERK_EDITING BAUD_RATE_GCODE opt_set PREHEAT_3_LABEL '"CUSTOM"' PREHEAT_3_TEMP_HOTEND 240 PREHEAT_3_TEMP_BED 60 PREHEAT_3_FAN_SPEED 128 BOOTSCREEN_TIMEOUT 1100 exec_test $1 $2 "Ender-3 S1 - ProUI (PIDTEMP)" "$3" From 67a9a7e66f1706b56ab76fa9866470fe85e7612a Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Wed, 5 Jul 2023 00:32:14 +0000 Subject: [PATCH 357/427] [cron] Bump distribution date (2023-07-05) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index a0bd1552eb40..121d03295fdc 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-04" +//#define STRING_DISTRIBUTION_DATE "2023-07-05" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index c2c0cab98995..18388e7eaad0 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-04" + #define STRING_DISTRIBUTION_DATE "2023-07-05" #endif /** From 57d26f7e4f614ee4e05e7e97fdc7109d8cfdc702 Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Wed, 5 Jul 2023 08:21:54 +0200 Subject: [PATCH 358/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20HOST=5FSTATUS=5FNO?= =?UTF-8?q?TIFICATIONS=20compile=20(#26040)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/marlinui.cpp | 7 ++----- Marlin/src/lcd/marlinui.h | 1 - buildroot/tests/LPC1768 | 2 +- buildroot/tests/rambo | 4 ++-- buildroot/tests/teensy31 | 2 +- buildroot/tests/teensy35 | 2 +- buildroot/tests/teensy41 | 2 +- 7 files changed, 8 insertions(+), 12 deletions(-) diff --git a/Marlin/src/lcd/marlinui.cpp b/Marlin/src/lcd/marlinui.cpp index cbab4676c222..69a8e2336365 100644 --- a/Marlin/src/lcd/marlinui.cpp +++ b/Marlin/src/lcd/marlinui.cpp @@ -1431,9 +1431,6 @@ void MarlinUI::host_notify_P(PGM_P const pstr) { void MarlinUI::host_notify(const char * const cstr) { TERN_(HOST_STATUS_NOTIFICATIONS, hostui.notify(cstr)); } -void MarlinUI::host_status() { - TERN_(HOST_STATUS_NOTIFICATIONS, hostui.notify(status_message)); -} #include @@ -1562,7 +1559,7 @@ void MarlinUI::host_status() { vsnprintf_P(status_message, MAX_MESSAGE_LENGTH, fmt, args); va_end(args); - host_status(); + host_notify(status_message); finish_status(level > 0); } @@ -1644,7 +1641,7 @@ void MarlinUI::host_status() { vsnprintf_P(&msg, 30, fmt, args); va_end(args); - host_status(); + host_notify(msg); } #endif // !HAS_STATUS_MESSAGE diff --git a/Marlin/src/lcd/marlinui.h b/Marlin/src/lcd/marlinui.h index 3a39d840e293..9c301e03f639 100644 --- a/Marlin/src/lcd/marlinui.h +++ b/Marlin/src/lcd/marlinui.h @@ -361,7 +361,6 @@ class MarlinUI { static void host_notify_P(PGM_P const fstr); static void host_notify(FSTR_P const fstr) { host_notify_P(FTOP(fstr)); } static void host_notify(const char * const cstr); - static void host_status(); #if HAS_STATUS_MESSAGE diff --git a/buildroot/tests/LPC1768 b/buildroot/tests/LPC1768 index 52769d2967e1..53fc6f6d7fdc 100755 --- a/buildroot/tests/LPC1768 +++ b/buildroot/tests/LPC1768 @@ -47,7 +47,7 @@ opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER ADAPTIVE_FAN_SLOWING TE BABYSTEPPING BABYSTEP_XY BABYSTEP_ZPROBE_OFFSET EP_BABYSTEPPING BABYSTEP_GFX_OVERLAY \ PRINTCOUNTER NOZZLE_PARK_FEATURE NOZZLE_CLEAN_FEATURE SLOW_PWM_HEATERS PIDTEMPBED EEPROM_SETTINGS INCH_MODE_SUPPORT TEMPERATURE_UNITS_SUPPORT \ Z_SAFE_HOMING ADVANCED_PAUSE_FEATURE PARK_HEAD_ON_PAUSE \ - HOST_KEEPALIVE_FEATURE HOST_ACTION_COMMANDS HOST_PROMPT_SUPPORT \ + HOST_KEEPALIVE_FEATURE HOST_ACTION_COMMANDS HOST_PROMPT_SUPPORT HOST_STATUS_NOTIFICATIONS \ LCD_INFO_MENU ARC_SUPPORT BEZIER_CURVE_SUPPORT EXTENDED_CAPABILITIES_REPORT AUTO_REPORT_TEMPERATURES \ SDSUPPORT SDCARD_SORT_ALPHA AUTO_REPORT_SD_STATUS EMERGENCY_PARSER SOFT_RESET_ON_KILL SOFT_RESET_VIA_SERIAL exec_test $1 $2 "Re-ARM with NOZZLE_AS_PROBE and many features." "$3" diff --git a/buildroot/tests/rambo b/buildroot/tests/rambo index c0784b95a055..d977fe1b429f 100755 --- a/buildroot/tests/rambo +++ b/buildroot/tests/rambo @@ -35,7 +35,7 @@ opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER LCD_PROGRESS_BAR LCD_PROGRESS_BAR_TE PSU_CONTROL LED_POWEROFF_TIMEOUT PS_OFF_CONFIRM PS_OFF_SOUND POWER_OFF_WAIT_FOR_COOLDOWN \ POWER_LOSS_RECOVERY POWER_LOSS_PIN POWER_LOSS_STATE POWER_LOSS_RECOVER_ZHOME POWER_LOSS_ZHOME_POS \ SLOW_PWM_HEATERS THERMAL_PROTECTION_CHAMBER LIN_ADVANCE ADVANCE_K_EXTRA \ - HOST_ACTION_COMMANDS HOST_PROMPT_SUPPORT PINS_DEBUGGING MAX7219_DEBUG M114_DETAIL + HOST_ACTION_COMMANDS HOST_PROMPT_SUPPORT HOST_STATUS_NOTIFICATIONS PINS_DEBUGGING MAX7219_DEBUG M114_DETAIL opt_add DEBUG_POWER_LOSS_RECOVERY exec_test $1 $2 "RAMBO | EXTRUDERS 2 | CHAR LCD + SD | FIX Probe | ABL-Linear | Advanced Pause | PLR | LEDs ..." "$3" @@ -129,7 +129,7 @@ opt_enable COREYX MIXING_EXTRUDER GRADIENT_MIX \ FIX_MOUNTED_PROBE PROBING_ESTEPPERS_OFF PROBE_OFFSET_WIZARD \ AUTO_BED_LEVELING_BILINEAR X_AXIS_TWIST_COMPENSATION MESH_EDIT_MENU DEBUG_LEVELING_FEATURE G26_MESH_VALIDATION \ Z_SAFE_HOMING SHOW_TEMP_ADC_VALUES HOME_Y_BEFORE_X EMERGENCY_PARSER \ - SD_ABORT_ON_ENDSTOP_HIT HOST_ACTION_COMMANDS HOST_PROMPT_SUPPORT HOST_PAUSE_M76 ADVANCED_OK M114_DETAIL \ + SD_ABORT_ON_ENDSTOP_HIT HOST_ACTION_COMMANDS HOST_PROMPT_SUPPORT HOST_STATUS_NOTIFICATIONS HOST_PAUSE_M76 ADVANCED_OK M114_DETAIL \ VOLUMETRIC_DEFAULT_ON NO_WORKSPACE_OFFSETS EXTRA_FAN_SPEED FWRETRACT \ USE_CONTROLLER_FAN CONTROLLER_FAN_EDITABLE CONTROLLER_FAN_USE_Z_ONLY opt_disable DISABLE_OTHER_EXTRUDERS diff --git a/buildroot/tests/teensy31 b/buildroot/tests/teensy31 index 5f5b84e0c4d1..5043bb9644de 100755 --- a/buildroot/tests/teensy31 +++ b/buildroot/tests/teensy31 @@ -32,5 +32,5 @@ opt_enable EEPROM_SETTINGS FILAMENT_WIDTH_SENSOR CALIBRATION_GCODE BAUD_RATE_GCO NOZZLE_PARK_FEATURE NOZZLE_CLEAN_FEATURE PARK_HEAD_ON_PAUSE \ ARC_SUPPORT BEZIER_CURVE_SUPPORT EXPERIMENTAL_I2CBUS EXTENDED_CAPABILITIES_REPORT AUTO_REPORT_TEMPERATURES \ PHOTO_GCODE PHOTO_POSITION PHOTO_SWITCH_POSITION PHOTO_SWITCH_MS PHOTO_DELAY_MS PHOTO_RETRACT_MM \ - HOST_ACTION_COMMANDS HOST_PROMPT_SUPPORT + HOST_ACTION_COMMANDS HOST_PROMPT_SUPPORT HOST_STATUS_NOTIFICATIONS exec_test $1 $2 "Teensy3.1 with many features" "$3" diff --git a/buildroot/tests/teensy35 b/buildroot/tests/teensy35 index 38da97c25b11..959a207aeeae 100755 --- a/buildroot/tests/teensy35 +++ b/buildroot/tests/teensy35 @@ -28,7 +28,7 @@ opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER SDSUPPORT SDCARD_SORT_A PRINTCOUNTER NOZZLE_PARK_FEATURE NOZZLE_CLEAN_FEATURE SLOW_PWM_HEATERS PIDTEMPBED EEPROM_SETTINGS INCH_MODE_SUPPORT TEMPERATURE_UNITS_SUPPORT M100_FREE_MEMORY_WATCHER \ ADVANCED_PAUSE_FEATURE ARC_SUPPORT BEZIER_CURVE_SUPPORT EXPERIMENTAL_I2CBUS EXTENDED_CAPABILITIES_REPORT AUTO_REPORT_TEMPERATURES PARK_HEAD_ON_PAUSE \ PHOTO_GCODE PHOTO_POSITION PHOTO_SWITCH_POSITION PHOTO_SWITCH_MS PHOTO_DELAY_MS PHOTO_RETRACT_MM \ - HOST_ACTION_COMMANDS HOST_PROMPT_SUPPORT + HOST_ACTION_COMMANDS HOST_PROMPT_SUPPORT HOST_STATUS_NOTIFICATIONS exec_test $1 $2 "Teensy3.5 with many features" "$3" # diff --git a/buildroot/tests/teensy41 b/buildroot/tests/teensy41 index e6a769c28273..894abc15b97d 100755 --- a/buildroot/tests/teensy41 +++ b/buildroot/tests/teensy41 @@ -28,7 +28,7 @@ opt_enable MAX31865_SENSOR_OHMS_0 MAX31865_CALIBRATION_OHMS_0 \ PRINTCOUNTER NOZZLE_PARK_FEATURE NOZZLE_CLEAN_FEATURE SLOW_PWM_HEATERS PIDTEMPBED EEPROM_SETTINGS INCH_MODE_SUPPORT TEMPERATURE_UNITS_SUPPORT \ ADVANCED_PAUSE_FEATURE ARC_SUPPORT BEZIER_CURVE_SUPPORT EXPERIMENTAL_I2CBUS EXTENDED_CAPABILITIES_REPORT AUTO_REPORT_TEMPERATURES PARK_HEAD_ON_PAUSE \ PHOTO_GCODE PHOTO_POSITION PHOTO_SWITCH_POSITION PHOTO_SWITCH_MS PHOTO_DELAY_MS PHOTO_RETRACT_MM \ - HOST_ACTION_COMMANDS HOST_PROMPT_SUPPORT + HOST_ACTION_COMMANDS HOST_PROMPT_SUPPORT HOST_STATUS_NOTIFICATIONS opt_add EXTUI_EXAMPLE exec_test $1 $2 "Teensy4.1 with many features" "$3" From bcf61cc91c00b2c0d82aa0e88d0f88e5a18bbe8b Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 6 Jul 2023 00:27:11 +0000 Subject: [PATCH 359/427] [cron] Bump distribution date (2023-07-06) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 121d03295fdc..1ee4620d2696 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-05" +//#define STRING_DISTRIBUTION_DATE "2023-07-06" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 18388e7eaad0..a00e1e188794 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-05" + #define STRING_DISTRIBUTION_DATE "2023-07-06" #endif /** From ef3054d1a8d368f5789a07ad5f0b14224ec1ce19 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Fri, 14 Jul 2023 16:24:17 -0700 Subject: [PATCH 360/427] =?UTF-8?q?=E2=9C=A8=20BTT=20Octopus=20Pro=20V1.1?= =?UTF-8?q?=20(STM32H723ZE)=20(#26043)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/boards.h | 1 + Marlin/src/pins/pins.h | 2 + .../pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h | 24 +- .../pins/stm32f4/pins_BTT_SKR_V2_0_common.h | 6 +- .../pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h | 6 +- .../pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h | 6 +- .../pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h | 6 +- .../pins/stm32g0/pins_BTT_MANTA_M8P_common.h | 6 +- .../pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h | 74 +-- .../pins/stm32h7/pins_BTT_OCTOPUS_PRO_V1_1.h | 572 ++++++++++++++++++ .../pins/stm32h7/pins_BTT_SKR_V3_0_common.h | 6 +- ini/stm32h7.ini | 2 +- 12 files changed, 640 insertions(+), 71 deletions(-) create mode 100644 Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_PRO_V1_1.h diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index e9940fc34496..50a4ebc19461 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -472,6 +472,7 @@ #define BOARD_BTT_SKR_V3_0 6006 // BigTreeTech SKR V3.0 (STM32H743VI / STM32H723VG) #define BOARD_BTT_SKR_V3_0_EZ 6007 // BigTreeTech SKR V3.0 EZ (STM32H743VI / STM32H723VG) #define BOARD_BTT_OCTOPUS_MAX_EZ_V1_0 6008 // BigTreeTech Octopus Max EZ V1.0 (STM32H723ZE) +#define BOARD_BTT_OCTOPUS_PRO_V1_1 6009 // BigTreeTech Octopus Pro v1.1 (STM32H723ZE) // // Espressif ESP32 WiFi diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index 4d41d76d8878..5c90dbc9626e 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -821,6 +821,8 @@ #include "stm32h7/pins_BTT_SKR_V3_0_EZ.h" // STM32H7 env:STM32H743VI_btt env:STM32H723VG_btt #elif MB(BTT_OCTOPUS_MAX_EZ_V1_0) #include "stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h" // STM32H7 env:STM32H723ZE_btt +#elif MB(BTT_OCTOPUS_PRO_V1_1) + #include "stm32h7/pins_BTT_OCTOPUS_PRO_V1_1.h" // STM32H7 env:STM32H723ZE_btt #elif MB(TEENSY41) #include "teensy4/pins_TEENSY41.h" // Teensy-4.x env:teensy41 #elif MB(T41U5XBB) diff --git a/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h b/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h index 4cfb8e7b7ea6..87ee6ca2efc7 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h @@ -44,11 +44,6 @@ // #define SERVO0_PIN PB6 -// -// Misc. Functions -// -#define LED_PIN PA13 - // // Trinamic Stallguard pins // @@ -61,13 +56,6 @@ #define E2_DIAG_PIN PG14 // E2DET #define E3_DIAG_PIN PG15 // E3DET -// -// Z Probe (when not Z_MIN_PIN) -// -#ifndef Z_MIN_PROBE_PIN - #define Z_MIN_PROBE_PIN PB7 -#endif - // // Limit Switches // @@ -125,6 +113,13 @@ #define Z_STOP_PIN Z_DIAG_PIN // Z-STOP #endif +// +// Z Probe (when not Z_MIN_PIN) +// +#ifndef Z_MIN_PROBE_PIN + #define Z_MIN_PROBE_PIN PB7 +#endif + // // Filament Runout Sensor // @@ -147,6 +142,11 @@ #define POWER_LOSS_PIN PC0 // PWRDET #endif +// +// Misc. Functions +// +#define LED_PIN PA13 + // // Steppers // diff --git a/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h index be7e0ab35f77..25bce4a140f9 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h @@ -137,10 +137,8 @@ // // Probe enable // -#if ENABLED(PROBE_ENABLE_DISABLE) - #ifndef PROBE_ENABLE_PIN - #define PROBE_ENABLE_PIN SERVO0_PIN - #endif +#if ENABLED(PROBE_ENABLE_DISABLE) && !defined(PROBE_ENABLE_PIN) + #define PROBE_ENABLE_PIN SERVO0_PIN #endif // diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h index fdcdd36ae86f..c2c16ba696bd 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_E3_EZ_V1_0.h @@ -53,10 +53,8 @@ // // Probe enable // -#if ENABLED(PROBE_ENABLE_DISABLE) - #ifndef PROBE_ENABLE_PIN - #define PROBE_ENABLE_PIN SERVO0_PIN - #endif +#if ENABLED(PROBE_ENABLE_DISABLE) && !defined(PROBE_ENABLE_PIN) + #define PROBE_ENABLE_PIN SERVO0_PIN #endif // diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h index 33b957f53a3e..f3c79f0cdcac 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M4P_V1_0.h @@ -55,10 +55,8 @@ // // Probe enable // -#if ENABLED(PROBE_ENABLE_DISABLE) - #ifndef PROBE_ENABLE_PIN - #define PROBE_ENABLE_PIN SERVO0_PIN - #endif +#if ENABLED(PROBE_ENABLE_DISABLE) && !defined(PROBE_ENABLE_PIN) + #define PROBE_ENABLE_PIN SERVO0_PIN #endif // diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h index 286a59a00b6e..ed3fb4e9dcad 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M5P_V1_0.h @@ -53,10 +53,8 @@ // // Probe enable // -#if ENABLED(PROBE_ENABLE_DISABLE) - #ifndef PROBE_ENABLE_PIN - #define PROBE_ENABLE_PIN SERVO0_PIN - #endif +#if ENABLED(PROBE_ENABLE_DISABLE) && !defined(PROBE_ENABLE_PIN) + #define PROBE_ENABLE_PIN SERVO0_PIN #endif // diff --git a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h index d4a21ba2f24f..fc3f679b8d18 100644 --- a/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h +++ b/Marlin/src/pins/stm32g0/pins_BTT_MANTA_M8P_common.h @@ -51,10 +51,8 @@ // // Probe enable // -#if ENABLED(PROBE_ENABLE_DISABLE) - #ifndef PROBE_ENABLE_PIN - #define PROBE_ENABLE_PIN SERVO0_PIN - #endif +#if ENABLED(PROBE_ENABLE_DISABLE) && !defined(PROBE_ENABLE_PIN) + #define PROBE_ENABLE_PIN SERVO0_PIN #endif // diff --git a/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h b/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h index bd230da6fc15..9d30d853b5dd 100644 --- a/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h +++ b/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_MAX_EZ.h @@ -45,45 +45,33 @@ // #define SERVO0_PIN PB14 -// -// Misc. Functions -// -#define LED_PIN PA14 - // // Trinamic Stallguard pins // #define X_DIAG_PIN PF0 // M1-STOP #define Y_DIAG_PIN PF2 // M2-STOP #define Z_DIAG_PIN PF4 // M3-STOP -#define Z2_DIAG_PIN PF3 // M4-STOP -#define E0_DIAG_PIN PF1 // M5-STOP -#define E1_DIAG_PIN PC15 // M6-STOP +#define Z2_DIAG_PIN PF3 // M4-DET +#define E0_DIAG_PIN PF1 // M5-DET +#define E1_DIAG_PIN PC15 // M6-DET #define E2_DIAG_PIN PF12 // PWRDET -// -// Z Probe (when not Z_MIN_PIN) -// -#ifndef Z_MIN_PROBE_PIN - #define Z_MIN_PROBE_PIN PB15 -#endif - // // Limit Switches // #ifdef X_STALL_SENSITIVITY #define X_STOP_PIN X_DIAG_PIN #if X_HOME_TO_MIN - #define X_MAX_PIN E0_DIAG_PIN // E0DET + #define X_MAX_PIN E0_DIAG_PIN // M4-DET #else - #define X_MIN_PIN E0_DIAG_PIN // E0DET + #define X_MIN_PIN E0_DIAG_PIN // M4-DET #endif #elif NEEDS_X_MINMAX #ifndef X_MIN_PIN #define X_MIN_PIN X_DIAG_PIN // X-STOP #endif #ifndef X_MAX_PIN - #define X_MAX_PIN E0_DIAG_PIN // E0DET + #define X_MAX_PIN E0_DIAG_PIN // M4-DET #endif #else #define X_STOP_PIN X_DIAG_PIN // X-STOP @@ -92,16 +80,16 @@ #ifdef Y_STALL_SENSITIVITY #define Y_STOP_PIN Y_DIAG_PIN #if Y_HOME_TO_MIN - #define Y_MAX_PIN E1_DIAG_PIN // E1DET + #define Y_MAX_PIN E1_DIAG_PIN // M5-DET #else - #define Y_MIN_PIN E1_DIAG_PIN // E1DET + #define Y_MIN_PIN E1_DIAG_PIN // M5-DET #endif #elif NEEDS_Y_MINMAX #ifndef Y_MIN_PIN #define Y_MIN_PIN Y_DIAG_PIN // Y-STOP #endif #ifndef Y_MAX_PIN - #define Y_MAX_PIN E1_DIAG_PIN // E1DET + #define Y_MAX_PIN E1_DIAG_PIN // M5-DET #endif #else #define Y_STOP_PIN Y_DIAG_PIN // Y-STOP @@ -126,24 +114,17 @@ #endif // -// Filament Runout Sensor -// -#define FIL_RUNOUT_PIN PF1 // E0DET -#define FIL_RUNOUT2_PIN PF15 // E1DET - -// -// Power Supply Control +// Z Probe (when not Z_MIN_PIN) // -#ifndef PS_ON_PIN - #define PS_ON_PIN PF13 // PS-ON +#ifndef Z_MIN_PROBE_PIN + #define Z_MIN_PROBE_PIN PB15 #endif // -// Power Loss Detection +// Filament Runout Sensor // -#ifndef POWER_LOSS_PIN - #define POWER_LOSS_PIN PF12 // PWRDET -#endif +#define FIL_RUNOUT_PIN PF1 // M5-DET +#define FIL_RUNOUT2_PIN PC15 // M6-DET // // Steppers @@ -244,6 +225,31 @@ #define FAN5_PIN PF8 // 4 wire Fan5 #define FAN6_PIN PA2 // 4 wire Fan6 +// +// Power Supply Control +// +#ifndef PS_ON_PIN + #define PS_ON_PIN PF13 // PS-ON +#endif + +// +// Power Loss Detection +// +#ifndef POWER_LOSS_PIN + #define POWER_LOSS_PIN PF12 // PWRDET +#endif + +// +// Misc. Functions +// +#define LED_PIN PA14 +#ifndef FILWIDTH_PIN + #define FILWIDTH_PIN PC0 +#endif +#ifndef FILWIDTH2_PIN + #define FILWIDTH2_PIN PF10 +#endif + // // SD Support // diff --git a/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_PRO_V1_1.h b/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_PRO_V1_1.h new file mode 100644 index 000000000000..64e1b828f090 --- /dev/null +++ b/Marlin/src/pins/stm32h7/pins_BTT_OCTOPUS_PRO_V1_1.h @@ -0,0 +1,572 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "env_validate.h" + +#define BOARD_INFO_NAME "BTT OCTOPUS PRO V1.1" + +#define HAS_OTG_USB_HOST_SUPPORT // USB Flash Drive support +#define USES_DIAG_JUMPERS + +// Onboard I2C EEPROM +#if ANY(NO_EEPROM_SELECTED, I2C_EEPROM) + #undef NO_EEPROM_SELECTED + #define I2C_EEPROM + #define MARLIN_EEPROM_SIZE 0x1000 // 4K (AT24C32) + #define SOFT_I2C_EEPROM // Force the use of Software I2C + #define I2C_SCL_PIN PB8 + #define I2C_SDA_PIN PB9 +#endif + +// Avoid conflict with TIMER_TONE +#define STEP_TIMER 8 + +// +// Servos +// +#define SERVO0_PIN PB6 + +// +// Trinamic Stallguard pins +// +#define X_DIAG_PIN PG6 // X-STOP +#define Y_DIAG_PIN PG9 // Y-STOP +#define Z_DIAG_PIN PG10 // Z-STOP +#define Z2_DIAG_PIN PG11 // Z2-STOP +#define E0_DIAG_PIN PG12 // E0DET +#define E1_DIAG_PIN PG13 // E1DET +#define E2_DIAG_PIN PG14 // E2DET +#define E3_DIAG_PIN PG15 // E3DET + +// +// Limit Switches +// +#ifdef X_STALL_SENSITIVITY + #define X_STOP_PIN X_DIAG_PIN + #if X_HOME_TO_MIN + #define X_MAX_PIN E0_DIAG_PIN // E0DET + #else + #define X_MIN_PIN E0_DIAG_PIN // E0DET + #endif +#elif NEEDS_X_MINMAX + #ifndef X_MIN_PIN + #define X_MIN_PIN X_DIAG_PIN // X-STOP + #endif + #ifndef X_MAX_PIN + #define X_MAX_PIN E0_DIAG_PIN // E0DET + #endif +#else + #define X_STOP_PIN X_DIAG_PIN // X-STOP +#endif + +#ifdef Y_STALL_SENSITIVITY + #define Y_STOP_PIN Y_DIAG_PIN + #if Y_HOME_TO_MIN + #define Y_MAX_PIN E1_DIAG_PIN // E1DET + #else + #define Y_MIN_PIN E1_DIAG_PIN // E1DET + #endif +#elif NEEDS_Y_MINMAX + #ifndef Y_MIN_PIN + #define Y_MIN_PIN Y_DIAG_PIN // Y-STOP + #endif + #ifndef Y_MAX_PIN + #define Y_MAX_PIN E1_DIAG_PIN // E1DET + #endif +#else + #define Y_STOP_PIN Y_DIAG_PIN // Y-STOP +#endif + +#ifdef Z_STALL_SENSITIVITY + #define Z_STOP_PIN Z_DIAG_PIN + #if Z_HOME_TO_MIN + #define Z_MAX_PIN E2_DIAG_PIN // PWRDET + #else + #define Z_MIN_PIN E2_DIAG_PIN // PWRDET + #endif +#elif NEEDS_Z_MINMAX + #ifndef Z_MIN_PIN + #define Z_MIN_PIN Z_DIAG_PIN // Z-STOP + #endif + #ifndef Z_MAX_PIN + #define Z_MAX_PIN E2_DIAG_PIN // PWRDET + #endif +#else + #define Z_STOP_PIN Z_DIAG_PIN // Z-STOP +#endif + +// +// Z Probe (when not Z_MIN_PIN) +// +#ifndef Z_MIN_PROBE_PIN + #if DISABLED(BLTOUCH) + #define Z_MIN_PROBE_PIN PC5 // Probe (Proximity switch) port + #else + #define Z_MIN_PROBE_PIN PB7 + #endif +#endif + +// +// Filament Runout Sensor +// +#define FIL_RUNOUT_PIN PG12 // E0DET +#define FIL_RUNOUT2_PIN PG13 // E1DET +#define FIL_RUNOUT3_PIN PG14 // E2DET +#define FIL_RUNOUT4_PIN PG15 // E3DET + +// +// Power Supply Control +// +#ifndef PS_ON_PIN + #define PS_ON_PIN PE11 // PS-ON +#endif + +// +// Power Loss Detection +// +#ifndef POWER_LOSS_PIN + #define POWER_LOSS_PIN PC0 // PWRDET +#endif + +// +// Misc. Functions +// +#define LED_PIN PA13 + +// +// Steppers +// +#define X_STEP_PIN PF13 // MOTOR 0 +#define X_DIR_PIN PF12 +#define X_ENABLE_PIN PF14 +#ifndef X_CS_PIN + #define X_CS_PIN PC4 +#endif + +#define Y_STEP_PIN PG0 // MOTOR 1 +#define Y_DIR_PIN PG1 +#define Y_ENABLE_PIN PF15 +#ifndef Y_CS_PIN + #define Y_CS_PIN PD11 +#endif + +#define Z_STEP_PIN PF11 // MOTOR 2 +#define Z_DIR_PIN PG3 +#define Z_ENABLE_PIN PG5 +#ifndef Z_CS_PIN + #define Z_CS_PIN PC6 +#endif + +#define Z2_STEP_PIN PG4 // MOTOR 3 +#define Z2_DIR_PIN PC1 +#define Z2_ENABLE_PIN PA2 +#ifndef Z2_CS_PIN + #define Z2_CS_PIN PC7 +#endif + +#define E0_STEP_PIN PF9 // MOTOR 4 +#define E0_DIR_PIN PF10 +#define E0_ENABLE_PIN PG2 +#ifndef E0_CS_PIN + #define E0_CS_PIN PF2 +#endif + +#define E1_STEP_PIN PC13 // MOTOR 5 +#define E1_DIR_PIN PF0 +#define E1_ENABLE_PIN PF1 +#ifndef E1_CS_PIN + #define E1_CS_PIN PE4 +#endif + +#define E2_STEP_PIN PE2 // MOTOR 6 +#define E2_DIR_PIN PE3 +#define E2_ENABLE_PIN PD4 +#ifndef E2_CS_PIN + + #define E2_CS_PIN PE1 +#endif + +#define E3_STEP_PIN PE6 // MOTOR 7 +#define E3_DIR_PIN PA14 +#define E3_ENABLE_PIN PE0 +#ifndef E3_CS_PIN + #define E3_CS_PIN PD3 +#endif + +// +// Temperature Sensors +// +#define TEMP_BED_PIN PF3 // TB +#define TEMP_1_PIN PF5 // TH1 +#define TEMP_2_PIN PF6 // TH2 +#define TEMP_3_PIN PF7 // TH3 + +#if TEMP_SENSOR_0 == -5 + #define TEMP_0_CS_PIN PF8 // Max31865 CS + #define TEMP_0_SCK_PIN PA5 + #define TEMP_0_MISO_PIN PA6 + #define TEMP_0_MOSI_PIN PA7 + #define SOFTWARE_SPI // Max31865 and LCD SD share a set of SPIs, Set SD to softwareSPI for Max31865 + #define FORCE_SOFT_SPI +#else + #define TEMP_0_PIN PF4 // TH0 +#endif + +// +// Heaters / Fans +// +#define HEATER_BED_PIN PA1 // Hotbed +#define HEATER_0_PIN PA0 // Heater0 +#define HEATER_1_PIN PA3 // Heater1 +#define HEATER_2_PIN PB0 // Heater2 +#define HEATER_3_PIN PB11 // Heater3 + +#define FAN0_PIN PA8 // Fan0 +#define FAN1_PIN PE5 // Fan1 +#define FAN2_PIN PD12 // Fan2 +#define FAN3_PIN PD13 // Fan3 +#define FAN4_PIN PD14 // Fan4 +#define FAN5_PIN PD15 // Fan5 + +// +// SD Support +// +#ifndef SDCARD_CONNECTION + #if HAS_WIRED_LCD + #define SDCARD_CONNECTION LCD + #else + #define SDCARD_CONNECTION ONBOARD + #endif +#endif + +// +// SPI pins for TMC2130 stepper drivers +// +#ifndef TMC_SPI_MOSI + #define TMC_SPI_MOSI PA7 +#endif +#ifndef TMC_SPI_MISO + #define TMC_SPI_MISO PA6 +#endif +#ifndef TMC_SPI_SCK + #define TMC_SPI_SCK PA5 +#endif + +#if HAS_TMC_UART + /** + * TMC2208/TMC2209 stepper drivers + * + * Hardware serial communication ports. + * If undefined software serial is used according to the pins below + */ + //#define X_HARDWARE_SERIAL Serial1 + //#define X2_HARDWARE_SERIAL Serial1 + //#define Y_HARDWARE_SERIAL Serial1 + //#define Y2_HARDWARE_SERIAL Serial1 + //#define Z_HARDWARE_SERIAL Serial1 + //#define Z2_HARDWARE_SERIAL Serial1 + //#define E0_HARDWARE_SERIAL Serial1 + //#define E1_HARDWARE_SERIAL Serial1 + //#define E2_HARDWARE_SERIAL Serial1 + //#define E3_HARDWARE_SERIAL Serial1 + //#define E4_HARDWARE_SERIAL Serial1 + + #define X_SERIAL_TX_PIN PC4 + #define X_SERIAL_RX_PIN X_SERIAL_TX_PIN + + #define Y_SERIAL_TX_PIN PD11 + #define Y_SERIAL_RX_PIN Y_SERIAL_TX_PIN + + #define Z_SERIAL_TX_PIN PC6 + #define Z_SERIAL_RX_PIN Z_SERIAL_TX_PIN + + #define Z2_SERIAL_TX_PIN PC7 + #define Z2_SERIAL_RX_PIN Z2_SERIAL_TX_PIN + + #define E0_SERIAL_TX_PIN PF2 + #define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN + + #define E1_SERIAL_TX_PIN PE4 + #define E1_SERIAL_RX_PIN E1_SERIAL_TX_PIN + + #define E2_SERIAL_TX_PIN PE1 + #define E2_SERIAL_RX_PIN E2_SERIAL_TX_PIN + + #define E3_SERIAL_TX_PIN PD3 + #define E3_SERIAL_RX_PIN E3_SERIAL_TX_PIN + + // Reduce baud rate to improve software serial reliability + #ifndef TMC_BAUD_RATE + #define TMC_BAUD_RATE 19200 + #endif + +#endif // HAS_TMC_UART + +/** ------ ------ + * (BEEPER) PE8 | 1 2 | PE7 (BTN_ENC) (MISO) PA6 | 1 2 | PA5 (SCK) + * (LCD_EN) PE9 | 3 4 | PE10 (LCD_RS) (BTN_EN1) PB2 | 3 4 | PA4 (SD_SS) + * (LCD_D4) PE12 5 6 | PE13 (LCD_D5) (BTN_EN2) PB1 5 6 | PA7 (MOSI) + * (LCD_D6) PE14 | 7 8 | PE15 (LCD_D7) (SD_DETECT) PC15 | 7 8 | RESET + * GND | 9 10 | 5V GND | 9 10 | -- + * ------ ------ + * EXP1 EXP2 + */ +#define EXP1_01_PIN PE8 +#define EXP1_02_PIN PE7 +#define EXP1_03_PIN PE9 +#define EXP1_04_PIN PE10 +#define EXP1_05_PIN PE12 +#define EXP1_06_PIN PE13 +#define EXP1_07_PIN PE14 +#define EXP1_08_PIN PE15 + +#define EXP2_01_PIN PA6 +#define EXP2_02_PIN PA5 +#define EXP2_03_PIN PB1 +#define EXP2_04_PIN PA4 +#define EXP2_05_PIN PB2 +#define EXP2_06_PIN PA7 +#define EXP2_07_PIN PC15 +#define EXP2_08_PIN -1 + +// +// Onboard SD card +// Must use soft SPI because Marlin's default hardware SPI is tied to LCD's EXP2 +// +#if SD_CONNECTION_IS(ONBOARD) + #define ONBOARD_SDIO // Use SDIO for onboard SD + #ifndef SD_DETECT_STATE + #define SD_DETECT_STATE HIGH + #elif SD_DETECT_STATE == LOW + #error "BOARD_BTT_OCTOPUS_V1_1 onboard SD requires SD_DETECT_STATE set to HIGH." + #endif + #define SD_DETECT_PIN PC14 +#elif SD_CONNECTION_IS(LCD) + + #define SDSS PA4 + #define SD_SS_PIN SDSS + #define SD_SCK_PIN PA5 + #define SD_MISO_PIN PA6 + #define SD_MOSI_PIN PA7 + #define SD_DETECT_PIN PC15 + +#elif SD_CONNECTION_IS(CUSTOM_CABLE) + #error "CUSTOM_CABLE is not a supported SDCARD_CONNECTION for this board" +#endif + +#if ENABLED(BTT_MOTOR_EXPANSION) + /** + * ------ ------ + * M3DIAG | 1 2 | M3RX M3STP | 1 2 | M3DIR + * M2DIAG | 3 4 | M2RX M2STP | 3 4 | M2DIR + * M1DIAG 5 6 | M1RX M1DIR 5 6 | M1STP + * M3EN | 7 8 | M2EN M1EN | 7 8 | -- + * GND | 9 10 | -- GND | 9 10 | -- + * ------ ------ + * EXP1 EXP2 + */ + + // M1 on Driver Expansion Module + #define E4_STEP_PIN EXP2_06_PIN + #define E4_DIR_PIN EXP2_05_PIN + #define E4_ENABLE_PIN EXP2_07_PIN + #define E4_DIAG_PIN EXP1_05_PIN + #define E4_CS_PIN EXP1_06_PIN + #if HAS_TMC_UART + #define E4_SERIAL_TX_PIN EXP1_06_PIN + #define E4_SERIAL_RX_PIN E4_SERIAL_TX_PIN + #endif + + // M2 on Driver Expansion Module + #define E5_STEP_PIN EXP2_03_PIN + #define E5_DIR_PIN EXP2_04_PIN + #define E5_ENABLE_PIN EXP1_08_PIN + #define E5_DIAG_PIN EXP1_03_PIN + #define E5_CS_PIN EXP1_04_PIN + #if HAS_TMC_UART + #define E5_SERIAL_TX_PIN EXP1_04_PIN + #define E5_SERIAL_RX_PIN E5_SERIAL_TX_PIN + #endif + + // M3 on Driver Expansion Module + #define E6_STEP_PIN EXP2_01_PIN + #define E6_DIR_PIN EXP2_02_PIN + #define E6_ENABLE_PIN EXP1_07_PIN + #define E6_DIAG_PIN EXP1_01_PIN + #define E6_CS_PIN EXP1_02_PIN + #if HAS_TMC_UART + #define E6_SERIAL_TX_PIN EXP1_02_PIN + #define E6_SERIAL_RX_PIN E6_SERIAL_TX_PIN + #endif + +#endif // BTT_MOTOR_EXPANSION + +// +// LCDs and Controllers +// +#if IS_TFTGLCD_PANEL + + #if ENABLED(TFTGLCD_PANEL_SPI) + #define TFTGLCD_CS EXP2_03_PIN + #endif + +#elif HAS_DWIN_E3V2 || IS_DWIN_MARLINUI + /** + * ------ ------ --- + * | 1 2 | | 1 2 | 1 | + * | 3 4 | RX | 3 4 | TX | 2 | RX + * ENT 5 6 | BEEP ENT 5 6 | BEEP | 3 | TX + * B | 7 8 | A B | 7 8 | A | 4 | + * GND | 9 10 | VCC GND | 9 10 | VCC 5 | + * ------ ------ --- + * EXP1 DWIN TFT + * + * DWIN pins are labeled as printed on DWIN PCB. GND, VCC, A, B, ENT & BEEP can be connected in the same + * orientation as the existing plug/DWIN to EXP1. TX/RX need to be connected to the TFT port, with TX->RX, RX->TX. + */ + + #ifndef NO_CONTROLLER_CUSTOM_WIRING_WARNING + #error "CAUTION! Ender-3 V2 display requires a custom cable. See 'pins_BTT_OCTOPUS_V1_common.h' for details. (Define NO_CONTROLLER_CUSTOM_WIRING_WARNING to suppress this warning.)" + #endif + + #define BEEPER_PIN EXP1_06_PIN + #define BTN_EN1 EXP1_08_PIN + #define BTN_EN2 EXP1_07_PIN + #define BTN_ENC EXP1_05_PIN + +#elif HAS_WIRED_LCD + + #define BEEPER_PIN EXP1_01_PIN + #define BTN_ENC EXP1_02_PIN + + #if ENABLED(CR10_STOCKDISPLAY) + + #define LCD_PINS_RS EXP1_07_PIN + + #define BTN_EN1 EXP1_03_PIN + #define BTN_EN2 EXP1_05_PIN + + #define LCD_PINS_EN EXP1_08_PIN + #define LCD_PINS_D4 EXP1_06_PIN + + #else + + #define LCD_PINS_RS EXP1_04_PIN + + #define BTN_EN1 EXP2_03_PIN + #define BTN_EN2 EXP2_05_PIN + + #define LCD_PINS_EN EXP1_03_PIN + #define LCD_PINS_D4 EXP1_05_PIN + + #if ENABLED(FYSETC_MINI_12864) + #define DOGLCD_CS EXP1_03_PIN + #define DOGLCD_A0 EXP1_04_PIN + //#define LCD_BACKLIGHT_PIN -1 + #define LCD_RESET_PIN EXP1_05_PIN // Must be high or open for LCD to operate normally. + #if ANY(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0) + #ifndef RGB_LED_R_PIN + #define RGB_LED_R_PIN EXP1_06_PIN + #endif + #ifndef RGB_LED_G_PIN + #define RGB_LED_G_PIN EXP1_07_PIN + #endif + #ifndef RGB_LED_B_PIN + #define RGB_LED_B_PIN EXP1_08_PIN + #endif + #elif ENABLED(FYSETC_MINI_12864_2_1) + #define NEOPIXEL_PIN EXP1_06_PIN + #endif + #endif // !FYSETC_MINI_12864 + + #if IS_ULTIPANEL + #define LCD_PINS_D5 EXP1_06_PIN + #define LCD_PINS_D6 EXP1_07_PIN + #define LCD_PINS_D7 EXP1_08_PIN + + #if ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) + #define BTN_ENC_EN LCD_PINS_D7 // Detect the presence of the encoder + #endif + + #endif + + #endif +#endif // HAS_WIRED_LCD + +// Alter timing for graphical display +#if IS_U8GLIB_ST7920 + #define BOARD_ST7920_DELAY_1 120 + #define BOARD_ST7920_DELAY_2 80 + #define BOARD_ST7920_DELAY_3 580 +#endif + +#if HAS_SPI_TFT + #define TFT_CS_PIN EXP2_04_PIN + #define TFT_A0_PIN EXP2_07_PIN + #define TFT_SCK_PIN EXP2_02_PIN + #define TFT_MISO_PIN EXP2_01_PIN + #define TFT_MOSI_PIN EXP2_06_PIN + + #define TOUCH_INT_PIN EXP1_07_PIN + #define TOUCH_MISO_PIN EXP1_06_PIN + #define TOUCH_MOSI_PIN EXP1_03_PIN + #define TOUCH_SCK_PIN EXP1_05_PIN + #define TOUCH_CS_PIN EXP1_04_PIN + + #define BTN_EN1 EXP2_03_PIN + #define BTN_EN2 EXP2_05_PIN + #define BTN_ENC EXP1_02_PIN +#endif + +// +// NeoPixel LED +// +#ifndef NEOPIXEL_PIN + #define NEOPIXEL_PIN PB10 +#endif + +#if ENABLED(WIFISUPPORT) + // + // WIFI + // + + /** + * ------- + * GND | 9 | | 8 | 3.3V + * (ESP-CS) PB12 | 10 | | 7 | PB15 (ESP-MOSI) + * 3.3V | 11 | | 6 | PB14 (ESP-MISO) + * (ESP-IO0) PD7 | 12 | | 5 | PB13 (ESP-CLK) + * (ESP-IO4) PD10 | 13 | | 4 | -- + * -- | 14 | | 3 | PE15 (ESP-EN) + * (ESP-RX) PD8 | 15 | | 2 | -- + * (ESP-TX) PD9 | 16 | | 1 | PE14 (ESP-RST) + * ------- + * WIFI + */ + #define ESP_WIFI_MODULE_COM 3 // Must also set either SERIAL_PORT or SERIAL_PORT_2 to this + #define ESP_WIFI_MODULE_BAUDRATE BAUDRATE // Must use same BAUDRATE as SERIAL_PORT & SERIAL_PORT_2 + #define ESP_WIFI_MODULE_RESET_PIN PG7 + #define ESP_WIFI_MODULE_ENABLE_PIN PG8 + #define ESP_WIFI_MODULE_GPIO0_PIN PD7 + #define ESP_WIFI_MODULE_GPIO4_PIN PD10 +#endif diff --git a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h index 2d2df4c68ac7..f85545a9d388 100644 --- a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h +++ b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h @@ -131,10 +131,8 @@ // // Probe enable // -#if ENABLED(PROBE_ENABLE_DISABLE) - #ifndef PROBE_ENABLE_PIN - #define PROBE_ENABLE_PIN SERVO0_PIN - #endif +#if ENABLED(PROBE_ENABLE_DISABLE) && !defined(PROBE_ENABLE_PIN) + #define PROBE_ENABLE_PIN SERVO0_PIN #endif // diff --git a/ini/stm32h7.ini b/ini/stm32h7.ini index 73d3b8779b7b..3a64e0644fa3 100644 --- a/ini/stm32h7.ini +++ b/ini/stm32h7.ini @@ -124,7 +124,7 @@ upload_protocol = cmsis-dap debug_tool = cmsis-dap # -# BigTreeTech Octopus Pro V1.0 / Octopus Max EZ V1.0 (STM32H723ZET6 ARM Cortex-M7) +# BigTreeTech Octopus Pro V1.1 / Octopus Max EZ V1.0 (STM32H723ZET6 ARM Cortex-M7) # [env:STM32H723ZE_btt] extends = STM32H723Zx_btt From 28f69a052c197b07ef7d404e738f2fa9ba641d0d Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 15 Jul 2023 00:26:39 +0000 Subject: [PATCH 361/427] [cron] Bump distribution date (2023-07-15) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 1ee4620d2696..d2cb857d7cb8 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-06" +//#define STRING_DISTRIBUTION_DATE "2023-07-15" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index a00e1e188794..c07aea0bf4ef 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-06" + #define STRING_DISTRIBUTION_DATE "2023-07-15" #endif /** From 45f7ebb92b11ced03998d590ae1431609c9da68f Mon Sep 17 00:00:00 2001 From: tombrazier <68918209+tombrazier@users.noreply.github.com> Date: Sun, 16 Jul 2023 02:06:21 +0100 Subject: [PATCH 362/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20Input=20Shaping=20?= =?UTF-8?q?"enable"=20for=20SHAPING=5FFREQ=5F[XY]=20=3D=3D=200=20(#26075)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/menu/menu_advanced.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/lcd/menu/menu_advanced.cpp b/Marlin/src/lcd/menu/menu_advanced.cpp index 7ef11d0e06c4..7c142d839085 100644 --- a/Marlin/src/lcd/menu/menu_advanced.cpp +++ b/Marlin/src/lcd/menu/menu_advanced.cpp @@ -568,7 +568,7 @@ void menu_backlash(); EDIT_ITEM_FAST_N(float42_52, X_AXIS, MSG_SHAPING_ZETA, &editable.decimal, 0.0f, 1.0f, []{ stepper.set_shaping_damping_ratio(X_AXIS, editable.decimal); }); } else - ACTION_ITEM_N(X_AXIS, MSG_SHAPING_ENABLE, []{ stepper.set_shaping_frequency(X_AXIS, SHAPING_FREQ_X); }); + ACTION_ITEM_N(X_AXIS, MSG_SHAPING_ENABLE, []{ stepper.set_shaping_frequency(X_AXIS, (SHAPING_FREQ_X) ?: (SHAPING_MIN_FREQ)); }); #endif #if ENABLED(INPUT_SHAPING_Y) editable.decimal = stepper.get_shaping_frequency(Y_AXIS); @@ -579,7 +579,7 @@ void menu_backlash(); EDIT_ITEM_FAST_N(float42_52, Y_AXIS, MSG_SHAPING_ZETA, &editable.decimal, 0.0f, 1.0f, []{ stepper.set_shaping_damping_ratio(Y_AXIS, editable.decimal); }); } else - ACTION_ITEM_N(Y_AXIS, MSG_SHAPING_ENABLE, []{ stepper.set_shaping_frequency(Y_AXIS, SHAPING_FREQ_Y); }); + ACTION_ITEM_N(Y_AXIS, MSG_SHAPING_ENABLE, []{ stepper.set_shaping_frequency(Y_AXIS, (SHAPING_FREQ_Y) ?: (SHAPING_MIN_FREQ)); }); #endif END_MENU(); From fc2272c4b473a45f2033d4dd82aef4b259b99759 Mon Sep 17 00:00:00 2001 From: Andrew <18502096+classicrocker883@users.noreply.github.com> Date: Sat, 15 Jul 2023 21:10:42 -0400 Subject: [PATCH 363/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix,=20clean=20up=20ProU?= =?UTF-8?q?I,=20JyersUI=20(#26078)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 117 +++++++++++------------ Marlin/src/lcd/e3v2/jyersui/dwin.h | 4 - Marlin/src/lcd/e3v2/proui/dwin.cpp | 40 ++++---- Marlin/src/lcd/e3v2/proui/dwin.h | 38 ++++---- Marlin/src/lcd/e3v2/proui/dwin_defines.h | 2 - 5 files changed, 98 insertions(+), 103 deletions(-) diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index 7139f3cdf9a4..fea1f081f6fe 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -254,7 +254,7 @@ class TextScroller { #if HAS_MESH - struct Mesh_Settings { + struct { bool viewer_asymmetric_range = false; bool viewer_print_value = false; bool goto_mesh_value = false; @@ -436,8 +436,7 @@ class TextScroller { drawing_mesh = false; } - }; - Mesh_Settings mesh_conf; + } mesh_conf; #endif // HAS_MESH @@ -817,14 +816,14 @@ void JyersDWIN::drawStatusArea(const bool icons/*=false*/) { dwinIconShow(ICON, ICON_HotendTemp, 10, 383); dwinDrawString(false, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 25 + 3 * STAT_CHR_W + 5, 384, F("/")); } - if (thermalManager.temp_hotend[0].celsius != hotend) { - hotend = thermalManager.temp_hotend[0].celsius; - dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 28, 384, thermalManager.temp_hotend[0].celsius); + if (thermalManager.degHotend(0) != hotend) { + hotend = thermalManager.degHotend(0); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 28, 384, hotend); dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, COLOR_WHITE), 25 + 3 * STAT_CHR_W + 5, 386); } - if (thermalManager.temp_hotend[0].target != hotendtarget) { - hotendtarget = thermalManager.temp_hotend[0].target; - dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 25 + 4 * STAT_CHR_W + 6, 384, thermalManager.temp_hotend[0].target); + if (thermalManager.wholeDegHotend(0) != hotendtarget) { + hotendtarget = thermalManager.degTargetHotend(0); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 25 + 4 * STAT_CHR_W + 6, 384, hotendtarget); dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, COLOR_WHITE), 25 + 4 * STAT_CHR_W + 39, 386); } if (icons) { @@ -847,14 +846,14 @@ void JyersDWIN::drawStatusArea(const bool icons/*=false*/) { dwinIconShow(ICON, ICON_BedTemp, 10, 416); dwinDrawString(false, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 25 + 3 * STAT_CHR_W + 5, 417, F("/")); } - if (thermalManager.temp_bed.celsius != bed) { - bed = thermalManager.temp_bed.celsius; - dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 28, 417, thermalManager.temp_bed.celsius); + if (thermalManager.degBed() != bed) { + bed = thermalManager.degBed(); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 28, 417, bed); dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, COLOR_WHITE), 25 + 3 * STAT_CHR_W + 5, 419); } - if (thermalManager.temp_bed.target != bedtarget) { - bedtarget = thermalManager.temp_bed.target; - dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 25 + 4 * STAT_CHR_W + 6, 417, thermalManager.temp_bed.target); + if (thermalManager.degTargetBed() != bedtarget) { + bedtarget = thermalManager.degTargetBed(); + dwinDrawIntValue(true, true, 0, DWIN_FONT_STAT, getColor(eeprom_settings.status_area_text, COLOR_WHITE), COLOR_BG_BLACK, 3, 25 + 4 * STAT_CHR_W + 6, 417, bedtarget); dwinDrawDegreeSymbol(getColor(eeprom_settings.status_area_text, COLOR_WHITE), 25 + 4 * STAT_CHR_W + 39, 419); } #endif @@ -1173,7 +1172,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) drawMenu(ID_ChangeFilament); #else - if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) + if (thermalManager.targetTooColdToExtrude(0)) popupHandler(Popup_ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { @@ -1181,7 +1180,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra thermalManager.wait_for_hotend(0); } popupHandler(Popup_FilChange); - gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.temp_hotend[0].target)); + gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.degTargetHotend(0))); } #endif } @@ -1314,7 +1313,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawFloat(current_position.e, row); } else { - if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) { + if (thermalManager.targetTooColdToExtrude(0)) { popupHandler(Popup_ETemp); } else { @@ -1338,7 +1337,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawCheckbox(row, probe_deployed); } else { - probe_deployed = !probe_deployed; + probe_deployed ^= true; probe.set_deployed(probe_deployed); drawCheckbox(row, probe_deployed); } @@ -1351,7 +1350,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawCheckbox(row, livemove); } else { - livemove = !livemove; + livemove ^= true; drawCheckbox(row, livemove); } break; @@ -1612,7 +1611,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra planner.synchronize(); redrawMenu(); } - liveadjust = !liveadjust; + liveadjust ^= true; drawCheckbox(row, liveadjust); } break; @@ -1728,7 +1727,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_WriteEEPROM, GET_TEXT_F(MSG_FILAMENTLOAD)); else { - if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) + if (thermalManager.targetTooColdToExtrude(0)) popupHandler(Popup_ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { @@ -1746,7 +1745,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_ReadEEPROM, GET_TEXT_F(MSG_FILAMENTUNLOAD)); else { - if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) { + if (thermalManager.targetTooColdToExtrude(0)) { popupHandler(Popup_ETemp); } else { @@ -1765,7 +1764,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra if (draw) drawMenuItem(row, ICON_ResumeEEPROM, GET_TEXT_F(MSG_FILAMENTCHANGE)); else { - if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) + if (thermalManager.targetTooColdToExtrude(0)) popupHandler(Popup_ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { @@ -1773,7 +1772,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra thermalManager.wait_for_hotend(0); } popupHandler(Popup_FilChange); - gcode.process_subcommands_now(TS(F("M600B1R"), thermalManager.temp_hotend[0].target)); + gcode.process_subcommands_now(TS(F("M600B1R"), thermalManager.degTargetHotend(0))); } } break; @@ -2002,7 +2001,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra case TEMP_HOTEND: if (draw) { drawMenuItem(row, ICON_SetEndTemp, F("Hotend")); - drawFloat(thermalManager.temp_hotend[0].target, row, false, 1); + drawFloat(thermalManager.degTargetHotend(0), row, false, 1); } else modifyValue(thermalManager.temp_hotend[0].target, MIN_E_TEMP, MAX_E_TEMP, 1); @@ -2012,7 +2011,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra case TEMP_BED: if (draw) { drawMenuItem(row, ICON_SetBedTemp, F("Bed")); - drawFloat(thermalManager.temp_bed.target, row, false, 1); + drawFloat(thermalManager.degTargetBed(), row, false, 1); } else modifyValue(thermalManager.temp_bed.target, MIN_BED_TEMP, MAX_BED_TEMP, 1); @@ -2690,7 +2689,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawCheckbox(row, eeprom_settings.time_format_textual); } else { - eeprom_settings.time_format_textual = !eeprom_settings.time_format_textual; + eeprom_settings.time_format_textual ^= true; drawCheckbox(row, eeprom_settings.time_format_textual); } break; @@ -2848,7 +2847,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawCheckbox(row, ui.sound_on); } else { - ui.sound_on = !ui.sound_on; + ui.sound_on ^= true; drawCheckbox(row, ui.sound_on); } break; @@ -2931,7 +2930,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawCheckbox(row, runout.enabled); } else { - runout.enabled = !runout.enabled; + runout.enabled ^= true; drawCheckbox(row, runout.enabled); } break; @@ -3378,7 +3377,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawCheckbox(row, mesh_conf.viewer_print_value); } else { - mesh_conf.viewer_print_value = !mesh_conf.viewer_print_value; + mesh_conf.viewer_print_value ^= true; drawCheckbox(row, mesh_conf.viewer_print_value); } break; @@ -3388,7 +3387,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawCheckbox(row, mesh_conf.viewer_asymmetric_range); } else { - mesh_conf.viewer_asymmetric_range = !mesh_conf.viewer_asymmetric_range; + mesh_conf.viewer_asymmetric_range ^= true; drawCheckbox(row, mesh_conf.viewer_asymmetric_range); } break; @@ -3571,7 +3570,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawCheckbox(row, mesh_conf.goto_mesh_value); } else { - mesh_conf.goto_mesh_value = !mesh_conf.goto_mesh_value; + mesh_conf.goto_mesh_value ^= true; current_position.z = 0; mesh_conf.manual_mesh_move(true); drawCheckbox(row, mesh_conf.goto_mesh_value); @@ -3836,7 +3835,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra case TUNE_HOTEND: if (draw) { drawMenuItem(row, ICON_SetEndTemp, F("Hotend")); - drawFloat(thermalManager.temp_hotend[0].target, row, false, 1); + drawFloat(thermalManager.degTargetHotend(0), row, false, 1); } else modifyValue(thermalManager.temp_hotend[0].target, MIN_E_TEMP, MAX_E_TEMP, 1); @@ -3847,7 +3846,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra case TUNE_BED: if (draw) { drawMenuItem(row, ICON_SetBedTemp, F("Bed")); - drawFloat(thermalManager.temp_bed.target, row, false, 1); + drawFloat(thermalManager.degTargetBed(), row, false, 1); } else modifyValue(thermalManager.temp_bed.target, MIN_BED_TEMP, MAX_BED_TEMP, 1); @@ -3910,7 +3909,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra drawCheckbox(row, runout.enabled); } else { - runout.enabled = !runout.enabled; + runout.enabled ^= true; drawCheckbox(row, runout.enabled); } break; @@ -3966,7 +3965,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra switch (last_menu) { case ID_Prepare: popupHandler(Popup_FilChange); - gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.temp_hotend[0].target)); + gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.degTargetHotend(0))); break; #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES) case ID_ChangeFilament: @@ -3985,7 +3984,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra break; case CHANGEFIL_CHANGE: popupHandler(Popup_FilChange); - gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.temp_hotend[0].target)); + gcode.process_subcommands_now(TS(F("M600 B1 R"), thermalManager.degTargetHotend(0))); break; } break; @@ -4009,7 +4008,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra case PREHEATHOTEND_CUSTOM: if (draw) { drawMenuItem(row, ICON_Temperature, F("Custom")); - drawFloat(thermalManager.temp_hotend[0].target, row, false, 1); + drawFloat(thermalManager.degTargetHotend(0), row, false, 1); } else modifyValue(thermalManager.temp_hotend[0].target, EXTRUDE_MINTEMP, MAX_E_TEMP, 1); @@ -4532,8 +4531,8 @@ void JyersDWIN::popupControl() { planner.synchronize(); #else queue.inject(F("M25")); - TERN_(HAS_HOTEND, pausetemp = thermalManager.temp_hotend[0].target); - TERN_(HAS_HEATED_BED, pausebed = thermalManager.temp_bed.target); + TERN_(HAS_HOTEND, pausetemp = thermalManager.degTargetHotend(0)); + TERN_(HAS_HEATED_BED, pausebed = thermalManager.degTargetBed()); TERN_(HAS_FAN, pausefan = thermalManager.fan_speed[0]); thermalManager.cooldown(); #endif @@ -4594,7 +4593,7 @@ void JyersDWIN::popupControl() { #if ENABLED(ADVANCED_PAUSE_FEATURE) case Popup_ConfFilChange: if (selection == 0) { - if (thermalManager.temp_hotend[0].target < thermalManager.extrude_min_temp) + if (thermalManager.targetTooColdToExtrude(0)) popupHandler(Popup_ETemp); else { if (thermalManager.temp_hotend[0].is_below_target(2)) { @@ -4602,7 +4601,7 @@ void JyersDWIN::popupControl() { thermalManager.wait_for_hotend(0); } popupHandler(Popup_FilChange); - gcode.process_subcommands_now(TS(F("M600B1R"), thermalManager.temp_hotend[0].target)); + gcode.process_subcommands_now(TS(F("M600B1R"), thermalManager.degTargetHotend(0))); } } else @@ -4786,12 +4785,12 @@ void JyersDWIN::update() { stateUpdate(); screenUpdate(); switch (process) { - case Proc_Main: mainMenuControl(); break; + case Proc_Main: mainMenuControl(); break; case Proc_Menu: menuControl(); break; case Proc_Value: valueControl(); break; case Proc_Option: optionControl(); break; case Proc_File: fileControl(); break; - case Proc_Print: printScreenControl(); break; + case Proc_Print: printScreenControl(); break; case Proc_Popup: popupControl(); break; case Proc_Confirm: confirmControl(); break; } @@ -4900,20 +4899,20 @@ void JyersDWIN::screenUpdate() { switch (active_menu) { case ID_TempMenu: #if HAS_HOTEND - if (thermalManager.temp_hotend[0].target != hotendtarget) { - hotendtarget = thermalManager.temp_hotend[0].target; + if (thermalManager.degTargetHotend(0) != hotendtarget) { + hotendtarget = thermalManager.degTargetHotend(0); if (scrollpos <= TEMP_HOTEND && TEMP_HOTEND <= scrollpos + MROWS) { if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) - drawFloat(thermalManager.temp_hotend[0].target, TEMP_HOTEND - scrollpos, false, 1); + drawFloat(hotendtarget, TEMP_HOTEND - scrollpos, false, 1); } } #endif #if HAS_HEATED_BED - if (thermalManager.temp_bed.target != bedtarget) { - bedtarget = thermalManager.temp_bed.target; + if (thermalManager.degTargetBed() != bedtarget) { + bedtarget = thermalManager.degTargetBed(); if (scrollpos <= TEMP_BED && TEMP_BED <= scrollpos + MROWS) { if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) - drawFloat(thermalManager.temp_bed.target, TEMP_BED - scrollpos, false, 1); + drawFloat(bedtarget, TEMP_BED - scrollpos, false, 1); } } #endif @@ -4922,27 +4921,27 @@ void JyersDWIN::screenUpdate() { fanspeed = thermalManager.fan_speed[0]; if (scrollpos <= TEMP_FAN && TEMP_FAN <= scrollpos + MROWS) { if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) - drawFloat(thermalManager.fan_speed[0], TEMP_FAN - scrollpos, false, 1); + drawFloat(fanspeed, TEMP_FAN - scrollpos, false, 1); } } #endif break; case ID_Tune: #if HAS_HOTEND - if (thermalManager.temp_hotend[0].target != hotendtarget) { - hotendtarget = thermalManager.temp_hotend[0].target; + if (thermalManager.degTargetHotend(0) != hotendtarget) { + hotendtarget = thermalManager.degTargetHotend(0); if (scrollpos <= TUNE_HOTEND && TUNE_HOTEND <= scrollpos + MROWS) { if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) - drawFloat(thermalManager.temp_hotend[0].target, TUNE_HOTEND - scrollpos, false, 1); + drawFloat(hotendtarget, TUNE_HOTEND - scrollpos, false, 1); } } #endif #if HAS_HEATED_BED - if (thermalManager.temp_bed.target != bedtarget) { - bedtarget = thermalManager.temp_bed.target; + if (thermalManager.degTargetBed() != bedtarget) { + bedtarget = thermalManager.degTargetBed(); if (scrollpos <= TUNE_BED && TUNE_BED <= scrollpos + MROWS) { if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) - drawFloat(thermalManager.temp_bed.target, TUNE_BED - scrollpos, false, 1); + drawFloat(bedtarget, TUNE_BED - scrollpos, false, 1); } } #endif @@ -4951,7 +4950,7 @@ void JyersDWIN::screenUpdate() { fanspeed = thermalManager.fan_speed[0]; if (scrollpos <= TUNE_FAN && TUNE_FAN <= scrollpos + MROWS) { if (process != Proc_Value || selection != TEMP_HOTEND - scrollpos) - drawFloat(thermalManager.fan_speed[0], TUNE_FAN - scrollpos, false, 1); + drawFloat(fanspeed, TUNE_FAN - scrollpos, false, 1); } } #endif diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.h b/Marlin/src/lcd/e3v2/jyersui/dwin.h index 17b6176f3d88..4f0669f8d89d 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.h +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.h @@ -233,10 +233,6 @@ class JyersDWIN { static void popupSelect(); static void updateStatusBar(const bool refresh=false); - #if HAS_MESH - static void setMeshViewerStatus(); - #endif - static FSTR_P getMenuTitle(const uint8_t menu); static uint8_t getMenuSize(const uint8_t menu); static void menuItemHandler(const uint8_t menu, const uint8_t item, bool draw=true); diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index 5ea8c71be0e1..7aa9b1760d10 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -129,9 +129,6 @@ #include "lockscreen.h" #endif -#define DEBUG_OUT ENABLED(DEBUG_DWIN) -#include "../../../core/debug_out.h" - #ifndef MACHINE_SIZE #define MACHINE_SIZE STRINGIFY(X_BED_SIZE) "x" STRINGIFY(Y_BED_SIZE) "x" STRINGIFY(Z_MAX_POS) #endif @@ -2203,10 +2200,14 @@ void setMoveZ() { hmiValue.axis = Z_AXIS; setPFloatOnClick(Z_MIN_POS, Z_MAX_POS, void setProbeOffsetX() { setPFloatOnClick(-60, 60, UNITFDIGITS); } void setProbeOffsetY() { setPFloatOnClick(-60, 60, UNITFDIGITS); } void setProbeOffsetZ() { setPFloatOnClick(-10, 10, 2); } - void probeTest() { - LCD_MESSAGE(MSG_M48_TEST); - queue.inject(F("G28O\nM48 P10")); - } + + #if ENABLED(Z_MIN_PROBE_REPEATABILITY_TEST) + void probeTest() { + LCD_MESSAGE(MSG_M48_TEST); + queue.inject(F("G28O\nM48 P10")); + } + #endif + void probeStow() { probe.stow(); } void probeDeploy() { probe.deploy(); } @@ -3038,7 +3039,7 @@ void drawPrepareMenu() { void drawControlMenu() { checkkey = ID_Menu; - if (SET_MENU_R(ControlMenu, selrect({103, 1, 28, 14}), MSG_CONTROL, 10)) { + if (SET_MENU_R(ControlMenu, selrect({103, 1, 28, 14}), MSG_CONTROL, 11)) { BACK_ITEM(gotoMainMenu); MENU_ITEM(ICON_Temperature, MSG_TEMPERATURE, onDrawTempSubMenu, drawTemperatureMenu); MENU_ITEM(ICON_Motion, MSG_MOTION, onDrawMotionSubMenu, drawMotionMenu); @@ -3066,7 +3067,7 @@ void drawControlMenu() { void drawAdvancedSettingsMenu() { checkkey = ID_Menu; - if (SET_MENU(AdvancedSettings, MSG_ADVANCED_SETTINGS, 22)) { + if (SET_MENU(AdvancedSettings, MSG_ADVANCED_SETTINGS, 23)) { BACK_ITEM(gotoMainMenu); #if ENABLED(EEPROM_SETTINGS) MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, writeEEPROM); @@ -3077,6 +3078,9 @@ void drawAdvancedSettingsMenu() { #if HAS_BED_PROBE MENU_ITEM(ICON_ProbeSet, MSG_ZPROBE_SETTINGS, onDrawSubMenu, drawProbeSetMenu); #endif + #if HAS_HOME_OFFSET + MENU_ITEM(ICON_ProbeSet, MSG_SET_HOME_OFFSETS, onDrawSubMenu, drawHomeOffsetMenu); + #endif MENU_ITEM(ICON_FilSet, MSG_FILAMENT_SET, onDrawSubMenu, drawFilSetMenu); #if ENABLED(PIDTEMP) && ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU) MENU_ITEM_F(ICON_PIDNozzle, STR_HOTEND_PID " Settings", onDrawSubMenu, drawHotendPIDMenu); @@ -3156,7 +3160,7 @@ void drawMoveMenu() { void drawHomeOffsetMenu() { checkkey = ID_Menu; if (SET_MENU(homeOffsetMenu, MSG_SET_HOME_OFFSETS, 4)) { - BACK_ITEM(drawPhySetMenu); + BACK_ITEM(drawAdvancedSettingsMenu); #if HAS_X_AXIS EDIT_ITEM(ICON_HomeOffsetX, MSG_HOME_OFFSET_X, onDrawPFloatMenu, setHomeOffsetX, &home_offset.x); #endif @@ -3195,7 +3199,9 @@ void drawMoveMenu() { EDIT_ITEM(ICON_HSMode, MSG_ENABLE_HS_MODE, onDrawChkbMenu, setHSMode, &bltouch.high_speed_mode); #endif #endif - MENU_ITEM(ICON_ProbeTest, MSG_M48_TEST, onDrawMenuItem, probeTest); + #if ENABLED(Z_MIN_PROBE_REPEATABILITY_TEST) + MENU_ITEM(ICON_ProbeTest, MSG_M48_TEST, onDrawMenuItem, probeTest); + #endif } updateMenu(ProbeSetMenu); } @@ -3794,9 +3800,9 @@ void drawStepsMenu() { EDIT_ITEM(ICON_PIDCycles, MSG_PID_CYCLE, onDrawPIntMenu, setPidCycles, &hmiData.pidCycles); #endif #if ENABLED(PID_EDIT_MENU) - EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KP, onDrawPFloat2Menu, SetKp, &thermalManager.temp_hotend[0].pid.Kp); - EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KI, onDrawPIDi, SetKi, &thermalManager.temp_hotend[0].pid.Ki); - EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KD, onDrawPIDd, SetKd, &thermalManager.temp_hotend[0].pid.Kd); + EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KP, onDrawPFloat2Menu, setKp, &thermalManager.temp_hotend[0].pid.Kp); + EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KI, onDrawPIDi, setKi, &thermalManager.temp_hotend[0].pid.Ki); + EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KD, onDrawPIDd, setKd, &thermalManager.temp_hotend[0].pid.Kd); #endif #if ENABLED(EEPROM_SETTINGS) MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, writeEEPROM); @@ -3824,9 +3830,9 @@ void drawStepsMenu() { EDIT_ITEM(ICON_PIDCycles, MSG_PID_CYCLE, onDrawPIntMenu, setPidCycles, &hmiData.pidCycles); #endif #if ENABLED(PID_EDIT_MENU) - EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KP, onDrawPFloat2Menu, SetKp, &thermalManager.temp_bed.pid.Kp); - EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KI, onDrawPIDi, SetKi, &thermalManager.temp_bed.pid.Ki); - EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KD, onDrawPIDd, SetKd, &thermalManager.temp_bed.pid.Kd); + EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KP, onDrawPFloat2Menu, setKp, &thermalManager.temp_bed.pid.Kp); + EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KI, onDrawPIDi, setKi, &thermalManager.temp_bed.pid.Ki); + EDIT_ITEM_F(ICON_PIDValue, "Set" STR_KD, onDrawPIDd, setKd, &thermalManager.temp_bed.pid.Kd); #endif #if ENABLED(EEPROM_SETTINGS) MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, writeEEPROM); diff --git a/Marlin/src/lcd/e3v2/proui/dwin.h b/Marlin/src/lcd/e3v2/proui/dwin.h index 41d8020b727a..ccc90b3de608 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.h +++ b/Marlin/src/lcd/e3v2/proui/dwin.h @@ -212,8 +212,12 @@ void doCoolDown(); #if HAS_LCD_BRIGHTNESS void turnOffBacklight(); #endif -void applyExtMinT(); -void parkHead(); +#if ENABLED(PREVENT_COLD_EXTRUSION) + void applyExtMinT(); +#endif +#if ENABLED(NOZZLE_PARK_FEATURE) + void parkHead(); +#endif #if HAS_ONESTEP_LEVELING void trammingwizard(); #endif @@ -225,9 +229,6 @@ void parkHead(); void ublMeshSave(); void ublMeshLoad(); #endif -#if ENABLED(HOST_SHUTDOWN_MENU_ITEM) && defined(SHUTDOWN_ACTION) - void hostShutDown(); -#endif #if DISABLED(HAS_BED_PROBE) void homeZAndDisable(); #endif @@ -238,7 +239,7 @@ void gotoMainMenu(); void gotoInfoMenu(); void gotoPowerLossRecovery(); void gotoConfirmToPrint(); -void dwinDrawDashboard(const bool with_update); // Status Area +void dwinDrawDashboard(); // Status Area void drawMainArea(); // Redraw main area void dwinDrawStatusLine(const char *text = ""); // Draw simple status text void dwinRedrawDash(); // Redraw Dash and Status line @@ -291,15 +292,9 @@ void dwinRebootScreen(); #if HAS_MESH void dwinMeshViewer(); #endif -#if HAS_GCODE_PREVIEW - void hmiConfirmToPrint(); -#endif #if HAS_ESDIAG void drawEndStopDiag(); #endif -#if ENABLED(PRINTCOUNTER) - void drawPrintStats(); -#endif // Menu drawing functions void drawPrintFileMenu(); @@ -315,10 +310,6 @@ void drawTrammingMenu(); void drawProbeSetMenu(); #endif void drawFilSetMenu(); -#if ENABLED(NOZZLE_PARK_FEATURE) - void drawParkPosMenu(); -#endif -void drawPhySetMenu(); #if ALL(CASE_LIGHT_MENU, CASELIGHT_USES_BRIGHTNESS) void drawCaseLightMenu(); #endif @@ -371,6 +362,9 @@ void drawStepsMenu(); #include "../../../module/temperature.h" void dwinStartM303(const bool seenC, const int c, const bool seenS, const heater_id_t hid, const celsius_t temp); void dwinPidTuning(tempcontrol_t result); + #if PROUI_TUNING_GRAPH + void dwinDrawPIDMPCPopup(); + #endif #endif #if ENABLED(PIDTEMP) #if ENABLED(PID_AUTOTUNE_MENU) @@ -390,9 +384,11 @@ void drawStepsMenu(); #endif // MPC -#if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) - void drawHotendMPCMenu(); -#endif -#if ENABLED(MPC_AUTOTUNE) - void dwinMPCTuning(tempcontrol_t result); +#if ENABLED(MPCTEMP) + #if ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU) + void drawHotendMPCMenu(); + #endif + #if ENABLED(MPC_AUTOTUNE) + void dwinMPCTuning(tempcontrol_t result); + #endif #endif diff --git a/Marlin/src/lcd/e3v2/proui/dwin_defines.h b/Marlin/src/lcd/e3v2/proui/dwin_defines.h index c52d57031c83..8ac7c5eb6231 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin_defines.h +++ b/Marlin/src/lcd/e3v2/proui/dwin_defines.h @@ -28,8 +28,6 @@ * Date: 2022/08/08 */ -//#define DEBUG_DWIN 1 - #if defined(__STM32F1__) || defined(STM32F1) #define DASH_REDRAW 1 #endif From 810c1693aca079c6ecdb1584292c65b384ca1f5f Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sun, 16 Jul 2023 06:08:45 +0000 Subject: [PATCH 364/427] [cron] Bump distribution date (2023-07-16) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index d2cb857d7cb8..564b67dd2346 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-15" +//#define STRING_DISTRIBUTION_DATE "2023-07-16" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index c07aea0bf4ef..95139f2c1ce1 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-15" + #define STRING_DISTRIBUTION_DATE "2023-07-16" #endif /** From 381515721481d09c4f30ca8a526e90fc39602fd9 Mon Sep 17 00:00:00 2001 From: Scott Mikutsky Date: Mon, 17 Jul 2023 00:29:56 -0400 Subject: [PATCH 365/427] =?UTF-8?q?=F0=9F=90=9B=20Ensure=20BLTouch=20deplo?= =?UTF-8?q?y=20in=20HS=20Mode=20(#26033)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/probe.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/Marlin/src/module/probe.cpp b/Marlin/src/module/probe.cpp index b3872146d136..8c13da36f99f 100644 --- a/Marlin/src/module/probe.cpp +++ b/Marlin/src/module/probe.cpp @@ -596,10 +596,8 @@ bool Probe::probe_down_to_z(const_float_t z, const_feedRate_t fr_mm_s) { thermalManager.wait_for_hotend_heating(active_extruder); #endif - #if ENABLED(BLTOUCH) - if (!bltouch.high_speed_mode && bltouch.deploy()) - return true; // Deploy in LOW SPEED MODE on every probe action - #endif + // Ensure the BLTouch is deployed. Does nothing if already deployed. + if (TERN0(BLTOUCH, bltouch.deploy())) return true; #if HAS_Z_SERVO_PROBE && (ENABLED(Z_SERVO_INTERMEDIATE_STOW) || defined(Z_SERVO_MEASURE_ANGLE)) probe_specific_action(true); // Always re-deploy in this case From fef772ef29e502c8fd2f53e10de383dbcb3529fe Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Sun, 16 Jul 2023 21:32:16 -0700 Subject: [PATCH 366/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20SPI=20TFT=20build?= =?UTF-8?q?=20on=20SKR=20V2=20&=20V3/EZ=20(#26041)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/pins/linux/pins_RAMPS_LINUX.h | 2 +- Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h | 32 +++++++-- Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h | 2 +- Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h | 2 +- .../pins/stm32f4/pins_BTT_SKR_V2_0_common.h | 67 +++++++++++++++++-- .../pins/stm32h7/pins_BTT_SKR_V3_0_common.h | 29 ++++++-- 6 files changed, 115 insertions(+), 19 deletions(-) diff --git a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h index 19ea927531b8..bff1167bf61b 100644 --- a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h +++ b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h @@ -377,9 +377,9 @@ #if ANY(TFT_COLOR_UI, TFT_CLASSIC_UI, TFT_LVGL_UI) - #define TFT_A0_PIN 43 #define TFT_CS_PIN 49 #define TFT_DC_PIN 43 + #define TFT_A0_PIN TFT_DC_PIN #define TFT_SCK_PIN SD_SCK_PIN #define TFT_MISO_PIN SD_MISO_PIN #define TFT_MOSI_PIN SD_MOSI_PIN diff --git a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h index ffb8fe8d12cf..cc3f91b4eafb 100644 --- a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h +++ b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h @@ -319,7 +319,7 @@ #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN - #define TFT_DC_PIN TFT_A0_PIN + #define TFT_A0_PIN TFT_DC_PIN #ifndef TFT_WIDTH #define TFT_WIDTH 480 @@ -329,10 +329,23 @@ #endif #if ENABLED(BTT_TFT35_SPI_V1_0) - // 480x320, 3.5", SPI Display with Rotary Encoder. - // Stock Display for the BIQU B1 SE. + + /** + * ------ ------ + * BEEPER | 1 2 | LCD-BTN MISO | 1 2 | CLK + * T_MOSI | 3 4 | T_CS LCD-ENCA | 3 4 | TFTCS + * T_CLK | 5 6 T_MISO LCD-ENCB | 5 6 MOSI + * PENIRQ | 7 8 | F_CS RS | 7 8 | RESET + * GND | 9 10 | VCC GND | 9 10 | NC + * ------ ------ + * EXP1 EXP2 + * + * 480x320, 3.5", SPI Display with Rotary Encoder. + * Stock Display for the BIQU B1 SE Series. + * Schematic: https://github.com/bigtreetech/TFT35-SPI/blob/master/v1/Hardware/BTT%20TFT35-SPI%20V1-SCH.pdf + */ #define TFT_CS_PIN EXP2_04_PIN - #define TFT_A0_PIN EXP2_07_PIN + #define TFT_DC_PIN EXP2_07_PIN #define TOUCH_CS_PIN EXP1_04_PIN #define TOUCH_SCK_PIN EXP1_05_PIN @@ -342,8 +355,17 @@ #elif ENABLED(MKS_TS35_V2_0) + /** ------ ------ + * BEEPER | 1 2 | BTN_ENC SPI1_MISO | 1 2 | SPI1_SCK + * TFT_BKL / LCD_EN | 3 4 | TFT_RESET / LCD_RS BTN_EN1 | 3 4 | SPI1_CS + * TOUCH_CS / LCD_D4 | 5 6 TOUCH_INT / LCD_D5 BTN_EN2 | 5 6 SPI1_MOSI + * SPI1_CS / LCD_D6 | 7 8 | SPI1_RS / LCD_D7 SPI1_RS | 7 8 | RESET + * GND | 9 10 | VCC GND | 9 10 | VCC + * ------ ------ + * EXP1 EXP2 + */ #define TFT_CS_PIN EXP1_07_PIN - #define TFT_A0_PIN EXP1_08_PIN + #define TFT_DC_PIN EXP1_08_PIN #define TFT_RESET_PIN EXP1_04_PIN diff --git a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h index a3fb8f648875..463814a5f055 100644 --- a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h +++ b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h @@ -396,8 +396,8 @@ #elif HAS_SPI_TFT // Config for Classic UI (emulated DOGM) and Color UI #define TFT_CS_PIN EXP1_07_PIN - #define TFT_A0_PIN EXP1_08_PIN #define TFT_DC_PIN EXP1_08_PIN + #define TFT_A0_PIN TFT_DC_PIN #define TFT_MISO_PIN EXP2_01_PIN #define TFT_BACKLIGHT_PIN EXP1_03_PIN #define TFT_RESET_PIN EXP1_04_PIN diff --git a/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h b/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h index 42a0155471b2..748e8cc902e3 100644 --- a/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h +++ b/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h @@ -295,8 +295,8 @@ #elif HAS_SPI_TFT // Config for Classic UI (emulated DOGM) and Color UI #define TFT_CS_PIN EXP1_07_PIN - #define TFT_A0_PIN EXP1_08_PIN #define TFT_DC_PIN EXP1_08_PIN + #define TFT_A0_PIN TFT_DC_PIN #define TFT_MISO_PIN EXP2_01_PIN #define TFT_BACKLIGHT_PIN EXP1_03_PIN #define TFT_RESET_PIN EXP1_04_PIN diff --git a/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h index 25bce4a140f9..f69f717d81a0 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h @@ -514,15 +514,40 @@ #if HAS_SPI_TFT + #define TFT_SCK_PIN EXP2_02_PIN + #define TFT_MISO_PIN EXP2_01_PIN + #define TFT_MOSI_PIN EXP2_06_PIN + #define BTN_ENC EXP1_02_PIN #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN + #ifndef TFT_WIDTH + #define TFT_WIDTH 480 + #endif + #ifndef TFT_HEIGHT + #define TFT_HEIGHT 320 + #endif + #if ENABLED(BTT_TFT35_SPI_V1_0) - // 480x320, 3.5", SPI Display with Rotary Encoder. - // Stock Display for the BIQU B1 SE. + + /** + * ------ ------ + * BEEPER | 1 2 | LCD-BTN MISO | 1 2 | CLK + * T_MOSI | 3 4 | T_CS LCD-ENCA | 3 4 | TFTCS + * T_CLK | 5 6 T_MISO LCD-ENCB | 5 6 MOSI + * PENIRQ | 7 8 | F_CS RS | 7 8 | RESET + * GND | 9 10 | VCC GND | 9 10 | NC + * ------ ------ + * EXP1 EXP2 + * + * 480x320, 3.5", SPI Display with Rotary Encoder. + * Stock Display for the BIQU B1 SE Series. + * Schematic: https://github.com/bigtreetech/TFT35-SPI/blob/master/v1/Hardware/BTT%20TFT35-SPI%20V1-SCH.pdf + */ #define TFT_CS_PIN EXP2_04_PIN - #define TFT_A0_PIN EXP2_07_PIN + #define TFT_DC_PIN EXP2_07_PIN + #define TFT_A0_PIN TFT_DC_PIN #define TOUCH_CS_PIN EXP1_04_PIN #define TOUCH_SCK_PIN EXP1_05_PIN @@ -530,6 +555,22 @@ #define TOUCH_MOSI_PIN EXP1_03_PIN #define TOUCH_INT_PIN EXP1_07_PIN + #ifndef TOUCH_CALIBRATION_X + #define TOUCH_CALIBRATION_X 17540 + #endif + #ifndef TOUCH_CALIBRATION_Y + #define TOUCH_CALIBRATION_Y -11388 + #endif + #ifndef TOUCH_OFFSET_X + #define TOUCH_OFFSET_X -21 + #endif + #ifndef TOUCH_OFFSET_Y + #define TOUCH_OFFSET_Y 337 + #endif + #ifndef TOUCH_ORIENTATION + #define TOUCH_ORIENTATION TOUCH_LANDSCAPE + #endif + #elif ENABLED(MKS_TS35_V2_0) /** ------ ------ @@ -542,8 +583,8 @@ * EXP1 EXP2 */ #define TFT_CS_PIN EXP1_07_PIN // SPI1_CS - #define TFT_A0_PIN EXP1_08_PIN // SPI1_RS - #define TFT_DC_PIN TFT_DC_PIN + #define TFT_DC_PIN EXP1_08_PIN // SPI1_RS + #define TFT_A0_PIN TFT_DC_PIN #define TFT_RESET_PIN EXP1_04_PIN @@ -563,6 +604,22 @@ #define TFT_BUFFER_SIZE 14400 + #ifndef TOUCH_CALIBRATION_X + #define TOUCH_CALIBRATION_X -17253 + #endif + #ifndef TOUCH_CALIBRATION_Y + #define TOUCH_CALIBRATION_Y 11579 + #endif + #ifndef TOUCH_OFFSET_X + #define TOUCH_OFFSET_X 514 + #endif + #ifndef TOUCH_OFFSET_Y + #define TOUCH_OFFSET_Y -24 + #endif + #ifndef TOUCH_ORIENTATION + #define TOUCH_ORIENTATION TOUCH_LANDSCAPE + #endif + #endif #endif // HAS_SPI_TFT diff --git a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h index f85545a9d388..81d338746a2c 100644 --- a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h +++ b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h @@ -459,11 +459,13 @@ #elif HAS_SPI_TFT // Config for Classic UI (emulated DOGM) and Color UI + #define TFT_SCK_PIN EXP2_02_PIN + #define TFT_MISO_PIN EXP2_01_PIN + #define TFT_MOSI_PIN EXP2_06_PIN + #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN - #define TFT_DC_PIN TFT_A0_PIN - #ifndef TFT_WIDTH #define TFT_WIDTH 480 #endif @@ -472,10 +474,24 @@ #endif #if ENABLED(BTT_TFT35_SPI_V1_0) - // 480x320, 3.5", SPI Display with Rotary Encoder. - // Stock Display for the BIQU B1 SE. + + /** + * ------ ------ + * BEEPER | 1 2 | LCD-BTN MISO | 1 2 | CLK + * T_MOSI | 3 4 | T_CS LCD-ENCA | 3 4 | TFTCS + * T_CLK | 5 6 T_MISO LCD-ENCB | 5 6 MOSI + * PENIRQ | 7 8 | F_CS RS | 7 8 | RESET + * GND | 9 10 | VCC GND | 9 10 | NC + * ------ ------ + * EXP1 EXP2 + * + * 480x320, 3.5", SPI Display with Rotary Encoder. + * Stock Display for the BIQU B1 SE Series. + * Schematic: https://github.com/bigtreetech/TFT35-SPI/blob/master/v1/Hardware/BTT%20TFT35-SPI%20V1-SCH.pdf + */ #define TFT_CS_PIN EXP2_04_PIN - #define TFT_A0_PIN EXP2_07_PIN + #define TFT_DC_PIN EXP2_07_PIN + #define TFT_A0_PIN TFT_DC_PIN #define TOUCH_CS_PIN EXP1_04_PIN #define TOUCH_SCK_PIN EXP1_05_PIN @@ -511,7 +527,8 @@ * EXP1 EXP2 */ #define TFT_CS_PIN EXP1_07_PIN // SPI1_CS - #define TFT_A0_PIN EXP1_08_PIN // SPI1_RS + #define TFT_DC_PIN EXP1_08_PIN // SPI1_RS + #define TFT_A0_PIN TFT_DC_PIN #define TFT_RESET_PIN EXP1_04_PIN From 821d77fe4c2ea0260d63e02ae65ab575da840801 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 16 Jul 2023 23:43:50 -0500 Subject: [PATCH 367/427] =?UTF-8?q?=F0=9F=8E=A8=20Misc.=20comment=20open?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/LPC1768/HAL_SPI.cpp | 2 +- Marlin/src/HAL/SAMD21/fastio.h | 2 +- Marlin/src/HAL/SAMD51/fastio.h | 4 ++-- Marlin/src/HAL/SAMD51/spi_pins.h | 2 +- Marlin/src/HAL/STM32F1/SPI.h | 10 +++++----- Marlin/src/feature/leds/leds.cpp | 2 +- Marlin/src/feature/leds/pca9533.cpp | 2 +- Marlin/src/feature/leds/pca9533.h | 4 ++-- Marlin/src/feature/meatpack.h | 2 +- Marlin/src/lcd/e3v2/proui/bedlevel_tools.h | 2 +- Marlin/src/lcd/extui/mks_ui/SPIFlashStorage.cpp | 4 ++-- Marlin/src/lcd/tft/tft_string.h | 4 ++-- Marlin/src/module/stepper.cpp | 2 +- Marlin/src/module/thermistor/thermistor_666.h | 2 +- Marlin/src/pins/stm32f1/pins_CHITU3D_V6.h | 2 +- 15 files changed, 23 insertions(+), 23 deletions(-) diff --git a/Marlin/src/HAL/LPC1768/HAL_SPI.cpp b/Marlin/src/HAL/LPC1768/HAL_SPI.cpp index 4d6cb55cff58..6ce7f755527f 100644 --- a/Marlin/src/HAL/LPC1768/HAL_SPI.cpp +++ b/Marlin/src/HAL/LPC1768/HAL_SPI.cpp @@ -318,7 +318,7 @@ void SPIClass::dmaSend(void *buf, uint16_t length, bool minc) { // Enable DMA GPDMA_ChannelCmd(0, ENABLE); - /* + /** * Observed behaviour on normal data transfer completion (SKR 1.3 board / LPC1768 MCU) * GPDMA_STAT_INTTC flag is SET * GPDMA_STAT_INTERR flag is NOT SET diff --git a/Marlin/src/HAL/SAMD21/fastio.h b/Marlin/src/HAL/SAMD21/fastio.h index df907ff7ec6c..471e8b62abc7 100644 --- a/Marlin/src/HAL/SAMD21/fastio.h +++ b/Marlin/src/HAL/SAMD21/fastio.h @@ -129,7 +129,7 @@ * Added as necessary or if I feel like it- not a comprehensive list! */ -/* +/** * Some of these share the same source and so can't be used in the same time */ #define PWM_PIN(P) (WITHIN(P, 2, 13) || WITHIN(P, 22, 23) || WITHIN(P, 44, 45) || P == 48) diff --git a/Marlin/src/HAL/SAMD51/fastio.h b/Marlin/src/HAL/SAMD51/fastio.h index 0acf48131796..3d43bdb24d8b 100644 --- a/Marlin/src/HAL/SAMD51/fastio.h +++ b/Marlin/src/HAL/SAMD51/fastio.h @@ -130,7 +130,7 @@ #ifdef ADAFRUIT_GRAND_CENTRAL_M4 - /* + /** * Adafruit Grand Central M4 has a lot of PWMs the availables are listed here. * Some of these share the same source and so can't be used in the same time */ @@ -176,7 +176,7 @@ #define digitalPinToAnalogInput(P) (WITHIN(P, 67, 74) ? (P) - 67 : WITHIN(P, 54, 61) ? 8 + (P) - 54 : WITHIN(P, 12, 13) ? 16 + (P) - 12 : P == 9 ? 18 : -1) - /* + /** * pins */ diff --git a/Marlin/src/HAL/SAMD51/spi_pins.h b/Marlin/src/HAL/SAMD51/spi_pins.h index f1e4fd430246..2c7cbeb99432 100644 --- a/Marlin/src/HAL/SAMD51/spi_pins.h +++ b/Marlin/src/HAL/SAMD51/spi_pins.h @@ -27,7 +27,7 @@ #ifdef ADAFRUIT_GRAND_CENTRAL_M4 - /* + /** * AGCM4 Default SPI Pins * * SS SCK MISO MOSI diff --git a/Marlin/src/HAL/STM32F1/SPI.h b/Marlin/src/HAL/STM32F1/SPI.h index 0941fa55b781..27bf684388ea 100644 --- a/Marlin/src/HAL/STM32F1/SPI.h +++ b/Marlin/src/HAL/STM32F1/SPI.h @@ -58,7 +58,7 @@ #define SPI_CLOCK_DIV128 SPI_BAUD_PCLK_DIV_128 #define SPI_CLOCK_DIV256 SPI_BAUD_PCLK_DIV_256 -/* +/** * Roger Clark. 20150106 * Commented out redundant AVR defined * @@ -153,7 +153,7 @@ class SPISettings { friend class SPIClass; }; -/* +/** * Kept for compat. */ static const uint8_t ff = 0xFF; @@ -233,7 +233,7 @@ class SPIClass { void onReceive(void(*)()); void onTransmit(void(*)()); - /* + /** * I/O */ @@ -314,7 +314,7 @@ class SPIClass { uint8_t dmaSendRepeat(uint16_t length); uint8_t dmaSendAsync(const void * transmitBuf, uint16_t length, bool minc = 1); - /* + /** * Pin accessors */ @@ -398,7 +398,7 @@ class SPIClass { void updateSettings(); - /* + /** * Functions added for DMA transfers with Callback. * Experimental. */ diff --git a/Marlin/src/feature/leds/leds.cpp b/Marlin/src/feature/leds/leds.cpp index 7305581cd046..ac7f1815162b 100644 --- a/Marlin/src/feature/leds/leds.cpp +++ b/Marlin/src/feature/leds/leds.cpp @@ -105,7 +105,7 @@ void LEDLights::setup() { PCA9632_set_led_color(curColor); // blackout delay(200); - /* + /** * LED Pin Counter steps -> events * | 0-100 | 100-200 | 200-300 | 300-400 | * fade in steady | fade out diff --git a/Marlin/src/feature/leds/pca9533.cpp b/Marlin/src/feature/leds/pca9533.cpp index 914db21ba31c..d71760e2cb63 100644 --- a/Marlin/src/feature/leds/pca9533.cpp +++ b/Marlin/src/feature/leds/pca9533.cpp @@ -1,4 +1,4 @@ -/* +/** * Marlin 3D Printer Firmware * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] * diff --git a/Marlin/src/feature/leds/pca9533.h b/Marlin/src/feature/leds/pca9533.h index 431058c49136..3a18e96b245d 100644 --- a/Marlin/src/feature/leds/pca9533.h +++ b/Marlin/src/feature/leds/pca9533.h @@ -1,4 +1,4 @@ -/* +/** * Marlin 3D Printer Firmware * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] * @@ -21,7 +21,7 @@ */ #pragma once -/* +/** * Driver for the PCA9533 LED controller found on the MightyBoard * used by FlashForge Creator Pro, MakerBot, etc. * Written 2020 APR 01 by grauerfuchs diff --git a/Marlin/src/feature/meatpack.h b/Marlin/src/feature/meatpack.h index 98a535e5923f..37039c3056ed 100644 --- a/Marlin/src/feature/meatpack.h +++ b/Marlin/src/feature/meatpack.h @@ -20,7 +20,7 @@ * */ -/* +/** * MeatPack G-code Compression * * Algorithm & Implementation: Scott Mudge - mail@scottmudge.com diff --git a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.h b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.h index 2e9b66aa30d2..7bd236760ae9 100644 --- a/Marlin/src/lcd/e3v2/proui/bedlevel_tools.h +++ b/Marlin/src/lcd/e3v2/proui/bedlevel_tools.h @@ -1,4 +1,4 @@ -/* +/** * Marlin 3D Printer Firmware * Copyright (c) 2022 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] * diff --git a/Marlin/src/lcd/extui/mks_ui/SPIFlashStorage.cpp b/Marlin/src/lcd/extui/mks_ui/SPIFlashStorage.cpp index 43149dc60c58..2c6dda512167 100644 --- a/Marlin/src/lcd/extui/mks_ui/SPIFlashStorage.cpp +++ b/Marlin/src/lcd/extui/mks_ui/SPIFlashStorage.cpp @@ -59,7 +59,7 @@ uint32_t SPIFlashStorage::m_startAddress; while (index < inputLength && index - count < max && input[index] == pixel) index++; if (index - count == 1) { - /* + /** * Failed to "replicate" the current pixel. See how many to copy. * Avoid a replicate run of only 2-pixels after a literal run. There * is no gain in this, and there is a risK of loss if the run after @@ -68,7 +68,7 @@ uint32_t SPIFlashStorage::m_startAddress; */ while (index < inputLength && index - count < max && (input[index] != input[index - 1] || (index > 1 && input[index] != input[index - 2]))) index++; - /* + /** * Check why this run stopped. If it found two identical pixels, reset * the index so we can add a run. Do this twice: the previous run * tried to detect a replicate run of at least 3 pixels. So we may be diff --git a/Marlin/src/lcd/tft/tft_string.h b/Marlin/src/lcd/tft/tft_string.h index 1284d282f134..420a3cc2b559 100644 --- a/Marlin/src/lcd/tft/tft_string.h +++ b/Marlin/src/lcd/tft/tft_string.h @@ -27,7 +27,7 @@ #define NO_GLYPH 0xFF -/* +/** * Marlin fonts with optional antialiasing. Fonts use unifont_t font header and glyph_t glyphs headers. * Number of glyphs (fontEndEncoding - fontStartEncoding) can not exceed 256 (TBD). * Some glyphs may be left undefined with NO_GLYPH @@ -37,7 +37,7 @@ #define FONT_MARLIN_GLYPHS_2BPP 0x82 #define FONT_MARLIN_GLYPHS_4BPP 0x84 -/* +/** * TFT fonts with optional antialiasing. Fonts use unifont_t font header and uniglyph_t glyphs headers. * Each glyph is prepended with its unicode. * Designed to be used for Japanese, Korean, Simplified Chinese and Traditional Chinese glyphs. diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 6133b6e39b08..d1c8eef69c05 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -2411,7 +2411,7 @@ hal_timer_t Stepper::block_phase_isr() { } #endif // LIN_ADVANCE - /* + /** * Adjust Laser Power - Decelerating * trap_ramp_entry_decr - holds the precalculated value to decrease the current power per decel step. */ diff --git a/Marlin/src/module/thermistor/thermistor_666.h b/Marlin/src/module/thermistor/thermistor_666.h index bba3e606fc06..14a03c23b5ba 100644 --- a/Marlin/src/module/thermistor/thermistor_666.h +++ b/Marlin/src/module/thermistor/thermistor_666.h @@ -27,7 +27,7 @@ */ //#include "output_table.h" -/* +/** * Parameters: * A: -0.000480634 * B: 0.00031362 diff --git a/Marlin/src/pins/stm32f1/pins_CHITU3D_V6.h b/Marlin/src/pins/stm32f1/pins_CHITU3D_V6.h index 02daab3e63ac..18c8e22dff9e 100644 --- a/Marlin/src/pins/stm32f1/pins_CHITU3D_V6.h +++ b/Marlin/src/pins/stm32f1/pins_CHITU3D_V6.h @@ -39,7 +39,7 @@ #include "pins_CHITU3D_common.h" -/* +/** * Circuit diagram https://github.com/MarlinFirmware/Marlin/files/3401484/x5sa-main_board-2.pdf * * Details on the 30 pin ribbon pins. From: https://3dtoday.ru/blogs/artem-sr/tronxy-x5sa-pro-ustanovka-bfp-touch-na-board-chitu3d-v6-cxy-v6-191017 From 5fd0247239445976dc38c1d238ebc718e2bfe9ce Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 17 Jul 2023 01:01:14 -0500 Subject: [PATCH 368/427] =?UTF-8?q?=F0=9F=8E=A8=20Rename=20Helvetica=2014?= =?UTF-8?q?=20(1)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fontdata/Helvetica/{helvetica_14.cpp => Helvetica_14_.cpp} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename Marlin/src/lcd/tft/fontdata/Helvetica/{helvetica_14.cpp => Helvetica_14_.cpp} (100%) diff --git a/Marlin/src/lcd/tft/fontdata/Helvetica/helvetica_14.cpp b/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_14_.cpp similarity index 100% rename from Marlin/src/lcd/tft/fontdata/Helvetica/helvetica_14.cpp rename to Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_14_.cpp From a5d47f84ae9eeb5c29280b279bfc844bac559c0d Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 17 Jul 2023 01:01:36 -0500 Subject: [PATCH 369/427] =?UTF-8?q?=F0=9F=8E=A8=20Rename=20Helvetica=2014?= =?UTF-8?q?=20(2)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fontdata/Helvetica/{Helvetica_14_.cpp => Helvetica_14.cpp} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename Marlin/src/lcd/tft/fontdata/Helvetica/{Helvetica_14_.cpp => Helvetica_14.cpp} (100%) diff --git a/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_14_.cpp b/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_14.cpp similarity index 100% rename from Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_14_.cpp rename to Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_14.cpp From 4d6e5c12b3d40747ff62cb140fdc3c293c9dbab5 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 17 Jul 2023 06:20:28 +0000 Subject: [PATCH 370/427] [cron] Bump distribution date (2023-07-17) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 564b67dd2346..9b48bdda7200 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-16" +//#define STRING_DISTRIBUTION_DATE "2023-07-17" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 95139f2c1ce1..aa5089e42e8c 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-16" + #define STRING_DISTRIBUTION_DATE "2023-07-17" #endif /** From 244de2458ac6fd48f3031d0179ca1bcad6808583 Mon Sep 17 00:00:00 2001 From: Alexander Gavrilenko Date: Mon, 17 Jul 2023 10:53:36 +0300 Subject: [PATCH 371/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Imp?= =?UTF-8?q?rove=20TFT=20Color=20UI=20layout=20/=20theme=20(#26077)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/Configuration.h | 9 + Marlin/src/feature/runout.cpp | 18 +- Marlin/src/inc/Conditionals_LCD.h | 9 +- Marlin/src/inc/Conditionals_adv.h | 2 +- .../lcd/dogm/fontdata/fontdata_ISO10646_1.h | 44 +- Marlin/src/lcd/tft/canvas.h | 1 - .../tft/fontdata/Helvetica/Helvetica_14.cpp | 31 +- .../tft/fontdata/Helvetica/Helvetica_19.cpp | 31 +- .../Medium_14px/NotoSans_Medium_14.cpp | 7 +- .../Medium_14px/NotoSans_Medium_ASCII_14.cpp | 7 +- .../NotoSans_Medium_Cyrillic_14.cpp | 7 +- .../Medium_14px/NotoSans_Medium_Greek_14.cpp | 7 +- .../NotoSans_Medium_Katakana_14.cpp | 7 +- .../Medium_14px/NotoSans_Medium_Korean_14.cpp | 7 +- .../NotoSans_Medium_Latin_Extended_A_14.cpp | 7 +- .../NotoSans_Medium_Simplified_Chinese_14.cpp | 7 +- .../NotoSans_Medium_Symbols_14.cpp | 9 +- ...NotoSans_Medium_Traditional_Chinese_14.cpp | 7 +- .../NotoSans_Medium_Vietnamese_14.cpp | 7 +- .../Medium_16px/NotoSans_Medium_16.cpp | 7 +- .../Medium_16px/NotoSans_Medium_ASCII_16.cpp | 7 +- .../NotoSans_Medium_Cyrillic_16.cpp | 7 +- .../Medium_16px/NotoSans_Medium_Greek_16.cpp | 7 +- .../NotoSans_Medium_Katakana_16.cpp | 7 +- .../Medium_16px/NotoSans_Medium_Korean_16.cpp | 7 +- .../NotoSans_Medium_Latin_Extended_A_16.cpp | 7 +- .../NotoSans_Medium_Simplified_Chinese_16.cpp | 7 +- .../NotoSans_Medium_Symbols_16.cpp | 9 +- ...NotoSans_Medium_Traditional_Chinese_16.cpp | 7 +- .../NotoSans_Medium_Vietnamese_16.cpp | 7 +- .../Medium_19px/NotoSans_Medium_19.cpp | 7 +- .../Medium_19px/NotoSans_Medium_ASCII_19.cpp | 7 +- .../NotoSans_Medium_Cyrillic_19.cpp | 7 +- .../Medium_19px/NotoSans_Medium_Greek_19.cpp | 7 +- .../NotoSans_Medium_Katakana_19.cpp | 7 +- .../Medium_19px/NotoSans_Medium_Korean_19.cpp | 7 +- .../NotoSans_Medium_Latin_Extended_A_19.cpp | 7 +- .../NotoSans_Medium_Simplified_Chinese_19.cpp | 7 +- .../NotoSans_Medium_Symbols_19.cpp | 9 +- ...NotoSans_Medium_Traditional_Chinese_19.cpp | 7 +- .../NotoSans_Medium_Vietnamese_19.cpp | 7 +- .../Medium_26px/NotoSans_Medium_26.cpp | 416 ++++++ .../Medium_26px/NotoSans_Medium_ASCII_26.cpp | 222 +++ .../NotoSans_Medium_Cyrillic_26.cpp | 322 +++++ .../Medium_26px/NotoSans_Medium_Greek_26.cpp | 178 +++ .../NotoSans_Medium_Katakana_26.cpp | 238 ++++ .../Medium_26px/NotoSans_Medium_Korean_26.cpp | 252 ++++ .../NotoSans_Medium_Latin_Extended_A_26.cpp | 288 ++++ .../NotoSans_Medium_Simplified_Chinese_26.cpp | 778 +++++++++++ .../NotoSans_Medium_Symbols_26.cpp | 38 + ...NotoSans_Medium_Traditional_Chinese_26.cpp | 646 +++++++++ .../NotoSans_Medium_Vietnamese_26.cpp | 246 ++++ .../Medium_27px/NotoSans_Medium_27.cpp | 416 ++++++ .../Medium_27px/NotoSans_Medium_ASCII_27.cpp | 222 +++ .../NotoSans_Medium_Cyrillic_27.cpp | 322 +++++ .../Medium_27px/NotoSans_Medium_Greek_27.cpp | 178 +++ .../NotoSans_Medium_Katakana_27.cpp | 238 ++++ .../Medium_27px/NotoSans_Medium_Korean_27.cpp | 252 ++++ .../NotoSans_Medium_Latin_Extended_A_27.cpp | 288 ++++ .../NotoSans_Medium_Simplified_Chinese_27.cpp | 778 +++++++++++ .../NotoSans_Medium_Symbols_27.cpp | 38 + ...NotoSans_Medium_Traditional_Chinese_27.cpp | 646 +++++++++ .../NotoSans_Medium_Vietnamese_27.cpp | 246 ++++ .../Medium_28px/NotoSans_Medium_28.cpp | 416 ++++++ .../Medium_28px/NotoSans_Medium_ASCII_28.cpp | 222 +++ .../NotoSans_Medium_Cyrillic_28.cpp | 322 +++++ .../Medium_28px/NotoSans_Medium_Greek_28.cpp | 178 +++ .../NotoSans_Medium_Katakana_28.cpp | 238 ++++ .../Medium_28px/NotoSans_Medium_Korean_28.cpp | 252 ++++ .../NotoSans_Medium_Latin_Extended_A_28.cpp | 288 ++++ .../NotoSans_Medium_Simplified_Chinese_28.cpp | 778 +++++++++++ .../NotoSans_Medium_Symbols_28.cpp | 38 + ...NotoSans_Medium_Traditional_Chinese_28.cpp | 646 +++++++++ .../NotoSans_Medium_Vietnamese_28.cpp | 246 ++++ .../Medium_29px/NotoSans_Medium_29.cpp | 416 ++++++ .../Medium_29px/NotoSans_Medium_ASCII_29.cpp | 222 +++ .../NotoSans_Medium_Cyrillic_29.cpp | 322 +++++ .../Medium_29px/NotoSans_Medium_Greek_29.cpp | 178 +++ .../NotoSans_Medium_Katakana_29.cpp | 238 ++++ .../Medium_29px/NotoSans_Medium_Korean_29.cpp | 252 ++++ .../NotoSans_Medium_Latin_Extended_A_29.cpp | 288 ++++ .../NotoSans_Medium_Simplified_Chinese_29.cpp | 778 +++++++++++ .../NotoSans_Medium_Symbols_29.cpp | 38 + ...NotoSans_Medium_Traditional_Chinese_29.cpp | 646 +++++++++ .../NotoSans_Medium_Vietnamese_29.cpp | 246 ++++ .../tft/fontdata/Unifont/10px/Unifont_10.cpp | 7 +- .../Unifont/10px/Unifont_ASCII_10.cpp | 7 +- .../Unifont/10px/Unifont_Cyrillic_10.cpp | 7 +- .../Unifont/10px/Unifont_Greek_10.cpp | 7 +- .../Unifont/10px/Unifont_Katakana_10.cpp | 7 +- .../Unifont/10px/Unifont_Korean_10.cpp | 7 +- .../10px/Unifont_Latin_Extended_A_10.cpp | 7 +- .../10px/Unifont_Simplified_Chinese_10.cpp | 7 +- .../Unifont/10px/Unifont_Symbols_10.cpp | 9 +- .../10px/Unifont_Traditional_Chinese_10.cpp | 7 +- .../Unifont/10px/Unifont_Vietnamese_10.cpp | 7 +- .../tft/fontdata/Unifont/20px/Unifont_20.cpp | 7 +- .../Unifont/20px/Unifont_ASCII_20.cpp | 7 +- .../Unifont/20px/Unifont_Cyrillic_20.cpp | 7 +- .../Unifont/20px/Unifont_Greek_20.cpp | 7 +- .../Unifont/20px/Unifont_Katakana_20.cpp | 7 +- .../Unifont/20px/Unifont_Korean_20.cpp | 7 +- .../20px/Unifont_Latin_Extended_A_20.cpp | 7 +- .../20px/Unifont_Simplified_Chinese_20.cpp | 7 +- .../Unifont/20px/Unifont_Symbols_20.cpp | 9 +- .../20px/Unifont_Traditional_Chinese_20.cpp | 7 +- .../Unifont/20px/Unifont_Vietnamese_20.cpp | 7 +- .../tft/fontdata/Unifont/30px/Unifont_30.cpp | 416 ++++++ .../Unifont/30px/Unifont_ASCII_30.cpp | 222 +++ .../Unifont/30px/Unifont_Cyrillic_30.cpp | 322 +++++ .../Unifont/30px/Unifont_Greek_30.cpp | 178 +++ .../Unifont/30px/Unifont_Katakana_30.cpp | 238 ++++ .../Unifont/30px/Unifont_Korean_30.cpp | 252 ++++ .../30px/Unifont_Latin_Extended_A_30.cpp | 288 ++++ .../30px/Unifont_Simplified_Chinese_30.cpp | 778 +++++++++++ .../Unifont/30px/Unifont_Symbols_30.cpp | 38 + .../30px/Unifont_Traditional_Chinese_30.cpp | 646 +++++++++ .../Unifont/30px/Unifont_Vietnamese_30.cpp | 246 ++++ Marlin/src/lcd/tft/fontdata/fontdata.h | 117 ++ Marlin/src/lcd/tft/images/back_32x32x4.cpp | 6 +- .../lcd/tft/images/background_320x30x16.cpp | 6 +- .../lcd/tft/images/bootscreen_112x38x1.cpp | 6 +- .../lcd/tft/images/bootscreen_195x59x16.cpp | 6 +- .../lcd/tft/images/bootscreen_228x255x2.cpp | 6 +- .../lcd/tft/images/bootscreen_228x255x4.cpp | 6 +- .../lcd/tft/images/bootscreen_320x240x16.cpp | 6 +- .../lcd/tft/images/bootscreen_480x320x16.cpp | 6 +- .../lcd/tft/images/btn_rounded_42x39x4.cpp | 6 +- .../lcd/tft/images/btn_rounded_64x52x4.cpp | 6 +- Marlin/src/lcd/tft/images/cancel_64x64x4.cpp | 6 +- Marlin/src/lcd/tft/images/chamber_64x64x4.cpp | 9 +- Marlin/src/lcd/tft/images/confirm_64x64x4.cpp | 6 +- .../src/lcd/tft/images/decrease_64x64x4.cpp | 6 +- .../src/lcd/tft/images/directory_32x32x4.cpp | 6 +- Marlin/src/lcd/tft/images/down_32x32x4.cpp | 6 +- Marlin/src/lcd/tft/images/fan_64x64x4.cpp | 9 +- .../src/lcd/tft/images/fan_fast_64x64x4.cpp | 9 +- .../src/lcd/tft/images/fan_slow_64x64x4.cpp | 9 +- .../src/lcd/tft/images/feedrate_32x32x4.cpp | 6 +- .../src/lcd/tft/images/flowrate_32x32x4.cpp | 6 +- .../src/lcd/tft/images/heated_bed_64x64x4.cpp | 9 +- Marlin/src/lcd/tft/images/home_64x64x4.cpp | 6 +- Marlin/src/lcd/tft/images/hotend_64x64x4.cpp | 6 +- .../src/lcd/tft/images/increase_64x64x4.cpp | 6 +- Marlin/src/lcd/tft/images/left_32x32x4.cpp | 6 +- .../src/lcd/tft/images/leveling_32x32x4.cpp | 6 +- Marlin/src/lcd/tft/images/menu_64x64x4.cpp | 6 +- Marlin/src/lcd/tft/images/pause_64x64x4.cpp | 6 +- Marlin/src/lcd/tft/images/refresh_32x32x4.cpp | 6 +- Marlin/src/lcd/tft/images/right_32x32x4.cpp | 6 +- Marlin/src/lcd/tft/images/sd_64x64x4.cpp | 4 + .../src/lcd/tft/images/settings_64x64x4.cpp | 6 +- Marlin/src/lcd/tft/images/slider_8x16x4.cpp | 6 +- .../lcd/tft/images/time_elapsed_32x32x4.cpp | 6 +- .../lcd/tft/images/time_remaining_32x32x4.cpp | 6 +- Marlin/src/lcd/tft/images/up_32x32x4.cpp | 6 +- Marlin/src/lcd/tft/tft.h | 2 +- Marlin/src/lcd/tft/tft_color.h | 122 -- Marlin/src/lcd/tft/tft_font.h | 6 - Marlin/src/lcd/tft/tft_image.cpp | 52 +- Marlin/src/lcd/tft/tft_image.h | 41 - Marlin/src/lcd/tft/tft_string.h | 93 +- Marlin/src/lcd/tft/themes/theme_ANET_BLACK.h | 53 + .../src/lcd/tft/themes/theme_BLACK_MARLIN.h | 30 + Marlin/src/lcd/tft/themes/theme_BLUE_MARLIN.h | 133 ++ Marlin/src/lcd/tft/themes/theme_CUSTOM.h | 30 + Marlin/src/lcd/tft/themes/theme_default.h | 144 ++ Marlin/src/lcd/tft/touch.cpp | 11 - Marlin/src/lcd/tft/touch.h | 17 +- Marlin/src/lcd/tft/ui_1024x600.cpp | 1083 --------------- Marlin/src/lcd/tft/ui_1024x600.h | 288 +++- Marlin/src/lcd/tft/ui_240x320.h | 294 ++++ Marlin/src/lcd/tft/ui_320x240.cpp | 1221 ----------------- Marlin/src/lcd/tft/ui_320x240.h | 291 +++- Marlin/src/lcd/tft/ui_320x480.h | 294 ++++ Marlin/src/lcd/tft/ui_480x272.h | 306 +++++ Marlin/src/lcd/tft/ui_480x320.cpp | 1196 ---------------- Marlin/src/lcd/tft/ui_480x320.h | 354 +++-- Marlin/src/lcd/tft/ui_color_ui.cpp | 588 ++++++++ Marlin/src/lcd/tft/ui_common.cpp | 223 ++- Marlin/src/lcd/tft/ui_common.h | 148 +- .../src/lcd/tft/ui_move_axis_screen_1024.cpp | 265 ++++ .../src/lcd/tft/ui_move_axis_screen_320.cpp | 399 ++++++ .../src/lcd/tft/ui_move_axis_screen_480.cpp | 400 ++++++ Marlin/src/lcd/tft/ui_theme.h | 35 + Marlin/src/lcd/tft_io/tft_orientation.h | 5 - .../PlatformIO/scripts/common-dependencies.h | 217 ++- .../PlatformIO/scripts/common-dependencies.py | 22 +- ini/features.ini | 112 +- 189 files changed, 23068 insertions(+), 4419 deletions(-) create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_26.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_ASCII_26.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Cyrillic_26.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Greek_26.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Katakana_26.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Korean_26.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Latin_Extended_A_26.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Simplified_Chinese_26.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Symbols_26.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Traditional_Chinese_26.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Vietnamese_26.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_27.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_ASCII_27.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Cyrillic_27.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Greek_27.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Katakana_27.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Korean_27.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Latin_Extended_A_27.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Simplified_Chinese_27.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Symbols_27.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Traditional_Chinese_27.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Vietnamese_27.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_28.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_ASCII_28.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Cyrillic_28.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Greek_28.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Katakana_28.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Korean_28.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Latin_Extended_A_28.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Simplified_Chinese_28.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Symbols_28.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Traditional_Chinese_28.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Vietnamese_28.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_29.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_ASCII_29.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Cyrillic_29.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Greek_29.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Katakana_29.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Korean_29.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Latin_Extended_A_29.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Simplified_Chinese_29.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Symbols_29.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Traditional_Chinese_29.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Vietnamese_29.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_30.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_ASCII_30.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Cyrillic_30.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Greek_30.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Katakana_30.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Korean_30.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Latin_Extended_A_30.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Simplified_Chinese_30.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Symbols_30.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Traditional_Chinese_30.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Vietnamese_30.cpp create mode 100644 Marlin/src/lcd/tft/fontdata/fontdata.h create mode 100644 Marlin/src/lcd/tft/themes/theme_ANET_BLACK.h create mode 100644 Marlin/src/lcd/tft/themes/theme_BLACK_MARLIN.h create mode 100644 Marlin/src/lcd/tft/themes/theme_BLUE_MARLIN.h create mode 100644 Marlin/src/lcd/tft/themes/theme_CUSTOM.h create mode 100644 Marlin/src/lcd/tft/themes/theme_default.h delete mode 100644 Marlin/src/lcd/tft/ui_1024x600.cpp create mode 100644 Marlin/src/lcd/tft/ui_240x320.h delete mode 100644 Marlin/src/lcd/tft/ui_320x240.cpp create mode 100644 Marlin/src/lcd/tft/ui_320x480.h create mode 100644 Marlin/src/lcd/tft/ui_480x272.h delete mode 100644 Marlin/src/lcd/tft/ui_480x320.cpp create mode 100644 Marlin/src/lcd/tft/ui_color_ui.cpp create mode 100644 Marlin/src/lcd/tft/ui_move_axis_screen_1024.cpp create mode 100644 Marlin/src/lcd/tft/ui_move_axis_screen_320.cpp create mode 100644 Marlin/src/lcd/tft/ui_move_axis_screen_480.cpp create mode 100644 Marlin/src/lcd/tft/ui_theme.h diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index c59bbba32a70..90a5939a246d 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -3303,6 +3303,15 @@ */ #define TFT_FONT NOTOSANS + /** + * TFT Theme for Color_UI. Choose one of the following or add a new one to 'Marlin/src/lcd/tft/themes' directory + * + * BLUE_MARLIN - Default theme with 'midnight blue' background + * BLACK_MARLIN - Theme with 'black' background + * ANET_BLACK - Theme used for Anet ET4/5 + */ + #define TFT_THEME BLACK_MARLIN + //#define TFT_SHARED_IO // I/O is shared between TFT display and other devices. Disable async data transfer. #endif diff --git a/Marlin/src/feature/runout.cpp b/Marlin/src/feature/runout.cpp index b34e87ca5e81..7c7d61e7eb6c 100644 --- a/Marlin/src/feature/runout.cpp +++ b/Marlin/src/feature/runout.cpp @@ -101,15 +101,16 @@ void event_filament_runout(const uint8_t extruder) { const bool run_runout_script = !runout.host_handling; - const bool park_or_pause = (false - #ifdef FILAMENT_RUNOUT_SCRIPT - || strstr(FILAMENT_RUNOUT_SCRIPT, "M600") - || strstr(FILAMENT_RUNOUT_SCRIPT, "M125") - || TERN0(ADVANCED_PAUSE_FEATURE, strstr(FILAMENT_RUNOUT_SCRIPT, "M25")) - #endif - ); - #if ENABLED(HOST_ACTION_COMMANDS) + + const bool park_or_pause = (false + #ifdef FILAMENT_RUNOUT_SCRIPT + || strstr(FILAMENT_RUNOUT_SCRIPT, "M600") + || strstr(FILAMENT_RUNOUT_SCRIPT, "M125") + || TERN0(ADVANCED_PAUSE_FEATURE, strstr(FILAMENT_RUNOUT_SCRIPT, "M25")) + #endif + ); + if (run_runout_script && park_or_pause) { hostui.paused(false); } @@ -127,6 +128,7 @@ void event_filament_runout(const uint8_t extruder) { SERIAL_ECHOPGM(" " ACTION_REASON_ON_FILAMENT_RUNOUT " "); SERIAL_CHAR(tool); SERIAL_EOL(); + #endif // HOST_ACTION_COMMANDS #ifdef FILAMENT_RUNOUT_SCRIPT diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index b052021bb7f2..01bc2805d948 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -1781,12 +1781,19 @@ #elif ANY(TFT_1024x600_LTDC, TFT_1024x600_SIM) #define HAS_UI_1024x600 1 #endif -#if ANY(HAS_UI_320x240, HAS_UI_480x320, HAS_UI_480x272) + +#if ANY(HAS_UI_320x240, HAS_UI_480x272) #if ENABLED(TFT_COLOR_UI_PORTRAIT) #define LCD_HEIGHT TERN(TOUCH_SCREEN, 8, 9) // Fewer lines with touch buttons onscreen #else #define LCD_HEIGHT TERN(TOUCH_SCREEN, 6, 7) // Fewer lines with touch buttons onscreen #endif +#elif HAS_UI_480x320 + #if ENABLED(TFT_COLOR_UI_PORTRAIT) + #define LCD_HEIGHT TERN(TOUCH_SCREEN, 9, 10) // Fewer lines with touch buttons onscreen + #else + #define LCD_HEIGHT TERN(TOUCH_SCREEN, 6, 7) // Fewer lines with touch buttons onscreen + #endif #elif HAS_UI_1024x600 #define LCD_HEIGHT TERN(TOUCH_SCREEN, 12, 13) // Fewer lines with touch buttons onscreen #endif diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index d5f4be18b9c2..eac9e2111048 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -833,7 +833,7 @@ #define HAS_MEDIA_SUBCALLS 1 #endif -#if ANY(SHOW_PROGRESS_PERCENT, SHOW_ELAPSED_TIME, SHOW_REMAINING_TIME, SHOW_INTERACTION_TIME) +#if ANY(SHOW_PROGRESS_PERCENT, SHOW_ELAPSED_TIME, SHOW_REMAINING_TIME, SHOW_INTERACTION_TIME) && !HAS_GRAPHICAL_TFT #define HAS_EXTRA_PROGRESS 1 #endif diff --git a/Marlin/src/lcd/dogm/fontdata/fontdata_ISO10646_1.h b/Marlin/src/lcd/dogm/fontdata/fontdata_ISO10646_1.h index 6f55d3bc3df8..1ebe9884c06e 100644 --- a/Marlin/src/lcd/dogm/fontdata/fontdata_ISO10646_1.h +++ b/Marlin/src/lcd/dogm/fontdata/fontdata_ISO10646_1.h @@ -25,17 +25,17 @@ #if defined(__AVR__) && ENABLED(NOT_EXTENDED_ISO10646_1_5X7) // reduced font (only symbols 1 - 127) - saves about 1278 bytes of FLASH -/* - Fontname: -Marlin6x12-Fixed-Medium-R-SemiCondensed--12-90-100-100-C-111-ISO10646-1 - Copyright: Public domain terminal emulator font. Share and enjoy. original font -Misc-Fixed-Medium-R-SemiCondensed--12-110-75-75-C-60-ISO10646-1 - Capital A Height: 7, '1' Height: 7 - Calculated Max Values w= 7 h=10 x= 5 y= 5 dx= 7 dy= 0 ascent= 8 len=10 - Font Bounding box w=12 h=15 x= 0 y=-2 - Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 - Pure Font ascent = 7 descent=-2 - X Font ascent = 8 descent=-2 - Max Font ascent = 8 descent=-2 -*/ +/** + * Fontname: -Marlin6x12-Fixed-Medium-R-SemiCondensed--12-90-100-100-C-111-ISO10646-1 + * Copyright: Public domain terminal emulator font. Share and enjoy. original font -Misc-Fixed-Medium-R-SemiCondensed--12-110-75-75-C-60-ISO10646-1 + * Capital A Height: 7, '1' Height: 7 + * Calculated Max Values w= 7 h=10 x= 5 y= 5 dx= 7 dy= 0 ascent= 8 len=10 + * Font Bounding box w=12 h=15 x= 0 y=-2 + * Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + * Pure Font ascent = 7 descent=-2 + * X Font ascent = 8 descent=-2 + * Max Font ascent = 8 descent=-2 + */ const u8g_fntpgm_uint8_t ISO10646_1_5x7[1324] U8G_FONT_SECTION("ISO10646_1_5x7") = { 0x00,0x0C,0x0F,0x00,0xFE,0x07,0x02,0x25,0x03,0xBB,0x01,0x7F,0xFE,0x08,0xFE,0x08, 0xFE,0x05,0x08,0x08,0x06,0x00,0x00,0x40,0xF0,0xC8,0x88,0x88,0x98,0x78,0x10,0x05, @@ -123,17 +123,17 @@ const u8g_fntpgm_uint8_t ISO10646_1_5x7[1324] U8G_FONT_SECTION("ISO10646_1_5x7") #else // extended (original) font (symbols 1 - 255) -/* - Fontname: -Marlin6x12-Fixed-Medium-R-SemiCondensed--12-90-100-100-C-111-ISO10646-1 - Copyright: Public domain terminal emulator font. Share and enjoy. original font -Misc-Fixed-Medium-R-SemiCondensed--12-110-75-75-C-60-ISO10646-1 - Capital A Height: 7, '1' Height: 7 - Calculated Max Values w= 7 h=10 x= 5 y= 7 dx= 7 dy= 0 ascent=10 len=10 - Font Bounding box w=12 h=15 x= 0 y=-2 - Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 - Pure Font ascent = 7 descent=-2 - X Font ascent = 8 descent=-2 - Max Font ascent =10 descent=-2 -*/ +/** + * Fontname: -Marlin6x12-Fixed-Medium-R-SemiCondensed--12-90-100-100-C-111-ISO10646-1 + * Copyright: Public domain terminal emulator font. Share and enjoy. original font -Misc-Fixed-Medium-R-SemiCondensed--12-110-75-75-C-60-ISO10646-1 + * Capital A Height: 7, '1' Height: 7 + * Calculated Max Values w= 7 h=10 x= 5 y= 7 dx= 7 dy= 0 ascent=10 len=10 + * Font Bounding box w=12 h=15 x= 0 y=-2 + * Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + * Pure Font ascent = 7 descent=-2 + * X Font ascent = 8 descent=-2 + * Max Font ascent =10 descent=-2 + */ const u8g_fntpgm_uint8_t ISO10646_1_5x7[2647] U8G_FONT_SECTION("ISO10646_1_5x7") = { 0x00,0x0C,0x0F,0x00,0xFE,0x07,0x02,0x25,0x03,0xBB,0x01,0xFF,0xFE,0x0A,0xFE,0x08, 0xFE,0x05,0x08,0x08,0x06,0x00,0x00,0x40,0xF0,0xC8,0x88,0x88,0x98,0x78,0x10,0x05, diff --git a/Marlin/src/lcd/tft/canvas.h b/Marlin/src/lcd/tft/canvas.h index d271ae7af3f7..e97da2f23b46 100644 --- a/Marlin/src/lcd/tft/canvas.h +++ b/Marlin/src/lcd/tft/canvas.h @@ -21,7 +21,6 @@ */ #pragma once -#include "tft_color.h" #include "tft_string.h" #include "tft_image.h" #include "tft.h" diff --git a/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_14.cpp b/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_14.cpp index 2fbf812369c4..fef4d9b9fac4 100644 --- a/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_14.cpp +++ b/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_14.cpp @@ -20,26 +20,23 @@ * */ -/* - Fontname: Helvetica - Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. - Capital A Height: 14, '1' Height: 13 - Calculated Max Values w=16 h=18 x= 2 y=12 dx=18 dy= 0 ascent=16 len=36 - Font Bounding box w=18 h=19 x= 0 y=-4 - Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 - Pure Font ascent =14 descent=-4 - X Font ascent =14 descent=-4 - Max Font ascent =16 descent=-4 -*/ +/** + * Fontname: Helvetica + * Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + * Capital A Height: 14, '1' Height: 13 + * Calculated Max Values w=16 h=18 x= 2 y=12 dx=18 dy= 0 ascent=16 len=36 + * Font Bounding box w=18 h=19 x= 0 y=-4 + * Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + * Pure Font ascent =14 descent=-4 + * X Font ascent =14 descent=-4 + * Max Font ascent =16 descent=-4 + */ -#include "../../../../inc/MarlinConfigPre.h" +#include "../fontdata.h" -#define HELVETICA 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == HELVETICA -#include - -// Helvetica Symbols, capital 'A' heigth: 14px +// Helvetica Symbols, capital 'A' height: 14px extern const uint8_t Helvetica_Symbols_14[43] = { 129,14,8,0,9,0,16,252, // unifont_t // 0x08 - LCD_STR_THERMOMETER a.k.a 0x1f321 🌡 @@ -48,7 +45,7 @@ extern const uint8_t Helvetica_Symbols_14[43] = { 5,5,5,7,1,8,112,216,136,216,112, }; -// Helvetica, capital 'A' heigth: 14px +// Helvetica, capital 'A' height: 14px extern const uint8_t Helvetica_14[4831] = { 129,14,32,0,255,0,16,252, // unifont_t // 0x0020 " " diff --git a/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_19.cpp b/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_19.cpp index ab2f91577a4d..40012d7501fe 100644 --- a/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_19.cpp +++ b/Marlin/src/lcd/tft/fontdata/Helvetica/Helvetica_19.cpp @@ -20,26 +20,23 @@ * */ -/* - Fontname: -Adobe-Helvetica-Medium-R-Normal--25-180-100-100-P-130-ISO10646-1 - Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. - Capital A Height: 19, '1' Height: 18 - Calculated Max Values w=22 h=24 x= 3 y=16 dx=25 dy= 0 ascent=24 len=69 - Font Bounding box w=28 h=37 x=-3 y=-8 - Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 - Pure Font ascent =19 descent=-5 - X Font ascent =19 descent=-5 - Max Font ascent =24 descent=-5 -*/ +/** + * Fontname: -Adobe-Helvetica-Medium-R-Normal--25-180-100-100-P-130-ISO10646-1 + * Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + * Capital A Height: 19, '1' Height: 18 + * Calculated Max Values w=22 h=24 x= 3 y=16 dx=25 dy= 0 ascent=24 len=69 + * Font Bounding box w=28 h=37 x=-3 y=-8 + * Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + * Pure Font ascent =19 descent=-5 + * X Font ascent =19 descent=-5 + * Max Font ascent =24 descent=-5 + */ -#include "../../../../inc/MarlinConfigPre.h" +#include "../fontdata.h" -#define HELVETICA 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == HELVETICA -#include - -// Helvetica Symbols, capital 'A' heigth: 19px +// Helvetica Symbols, capital 'A' height: 19px extern const uint8_t Helvetica_Symbols_19[45] = { 129,19,8,0,9,0,24,251, // unifont_t // 0x08 - LCD_STR_THERMOMETER a.k.a 0x1f321 🌡 @@ -49,7 +46,7 @@ extern const uint8_t Helvetica_Symbols_19[45] = { }; -// Helvetica, capital 'A' heigth: 19px +// Helvetica, capital 'A' height: 19px extern const uint8_t Helvetica_19[7298] = { 129,19,32,0,255,0,24,251, // unifont_t // 0x0020 " " diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_14.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_14.cpp index d9bdde8b2d2d..924033db514d 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_14.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_14.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium 19pt, capital 'A' heigth: 14px, width: 100%, range: 0x0020-0x00ff +// NotoSans Medium 19pt, capital 'A' height: 14px, width: 100%, range: 0x0020-0x00ff extern const uint8_t NotoSans_Medium_14[8358] = { 130,14,32,0,255,0,18,251, // unifont_t // 0x0020 " " diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_ASCII_14.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_ASCII_14.cpp index 0d452c94419d..38960aae7daa 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_ASCII_14.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_ASCII_14.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium ASCII 19pt, capital 'A' heigth: 14px, width: 100%, range: 0x0020-0x007e +// NotoSans Medium ASCII 19pt, capital 'A' height: 14px, width: 100%, range: 0x0020-0x007e extern const uint8_t NotoSans_Medium_ASCII_14[3865] = { 130,14,32,0,126,0,18,251, // unifont_t // 0x0020 " " diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Cyrillic_14.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Cyrillic_14.cpp index 7c1fc2ac4e24..ddda8029a598 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Cyrillic_14.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Cyrillic_14.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Cyrillic 19pt, capital 'A' heigth: 14px, width: 100%, range: 0x0401-0x0491, glyphs: 74 +// NotoSans Medium Cyrillic 19pt, capital 'A' height: 14px, width: 100%, range: 0x0401-0x0491, glyphs: 74 extern const uint8_t NotoSans_Medium_Cyrillic_14[3616] = { 130,14,1,4,145,4,18,251, // unifont_t // 0x0401 Ё diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Greek_14.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Greek_14.cpp index bb0cec7aca43..e8ebafb2b35f 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Greek_14.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Greek_14.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Greek 19pt, capital 'A' heigth: 14px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 +// NotoSans Medium Greek 19pt, capital 'A' height: 14px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 extern const uint8_t NotoSans_Medium_Greek_14[3253] = { 130,14,134,3,206,3,18,251, // unifont_t // 0x0386 Ά diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Katakana_14.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Katakana_14.cpp index eda142fef14d..c2d932784abb 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Katakana_14.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Katakana_14.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Katakana 19pt, capital 'A' heigth: 14px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 +// NotoSans Medium Katakana 19pt, capital 'A' height: 14px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 extern const uint8_t NotoSans_Medium_Katakana_14[7913] = { 162,14,160,48,104,136,18,251, // unifont_t // 0x30a0 ゠ diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Korean_14.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Korean_14.cpp index 258ccf879984..c9cee89c78d8 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Korean_14.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Korean_14.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Korean 19pt, capital 'A' heigth: 14px, width: 100%, range: 0xac70-0xd788, glyphs: 110 +// NotoSans Medium Korean 19pt, capital 'A' height: 14px, width: 100%, range: 0xac70-0xd788, glyphs: 110 extern const uint8_t NotoSans_Medium_Korean_14[8848] = { 162,14,112,172,136,215,18,251, // unifont_t // 0xac70 거 diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Latin_Extended_A_14.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Latin_Extended_A_14.cpp index d736d12c1798..e2480d02e2f4 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Latin_Extended_A_14.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Latin_Extended_A_14.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Latin Extended-A 19pt, capital 'A' heigth: 14px, width: 100%, range: 0x0100-0x017f +// NotoSans Medium Latin Extended-A 19pt, capital 'A' height: 14px, width: 100%, range: 0x0100-0x017f extern const uint8_t NotoSans_Medium_Latin_Extended_A_14[6668] = { 130,14,0,1,127,1,18,251, // unifont_t // 0x0100 Ā diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Simplified_Chinese_14.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Simplified_Chinese_14.cpp index 04825f3659d2..d40ed58a9675 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Simplified_Chinese_14.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Simplified_Chinese_14.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Simplified Chinese 19pt, capital 'A' heigth: 14px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 +// NotoSans Medium Simplified Chinese 19pt, capital 'A' height: 14px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 extern const uint8_t NotoSans_Medium_Simplified_Chinese_14[37028] = { 162,14,28,32,26,255,18,251, // unifont_t // 0x201c “ diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Symbols_14.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Symbols_14.cpp index a806753a97df..1dd62b795f8e 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Symbols_14.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Symbols_14.cpp @@ -20,21 +20,18 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Symbols 19pt, capital 'A' heigth: 14px, width: 100% +// NotoSans Medium Symbols 19pt, capital 'A' height: 14px, width: 100% extern const uint8_t NotoSans_Medium_Symbols_14[131] = { 130,14,8,0,10,0,18,251, // unifont_t // 0x08 - LCD_STR_THERMOMETER a.k.a 0x1f321 🌡 11,25,75,13,1,251,1,84,0,11,254,0,15,7,0,15,135,0,14,7,0,14,7,0,15,135,0,14,39,0,15,247,0,14,119,0,15,247,0,14,119,0,15,247,0,14,119,0,14,119,0,47,247,192,120,180,240,247,253,56,223,255,28,223,255,28,235,254,44,117,244,116,46,86,208,6,254,64,0,0,0, // 0x09 - LCD_STR_DEGREE a.k.a 0x00b0 ° 6,7,14,8,1,7,26,64,122,224,224,112,208,112,240,176,63,192,0,0, - // 0x0a - replacement for 0x2026 used in Greek languange files … + // 0x0a - replacement for 0x2026 used in Greek language files … 13,4,16,15,1,255,16,4,1,0,188,47,7,192,184,31,7,192,0,0,0,0, }; diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Traditional_Chinese_14.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Traditional_Chinese_14.cpp index 863d0c280514..4b63aebf1865 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Traditional_Chinese_14.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Traditional_Chinese_14.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Traditional Chinese 19pt, capital 'A' heigth: 14px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 +// NotoSans Medium Traditional Chinese 19pt, capital 'A' height: 14px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 extern const uint8_t NotoSans_Medium_Traditional_Chinese_14[30758] = { 162,14,191,34,26,255,18,251, // unifont_t // 0x22bf ⊿ diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Vietnamese_14.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Vietnamese_14.cpp index 6a363582e1bc..42e50e1814b2 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Vietnamese_14.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_14px/NotoSans_Medium_Vietnamese_14.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Vietnamese 19pt, capital 'A' heigth: 14px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 +// NotoSans Medium Vietnamese 19pt, capital 'A' height: 14px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 extern const uint8_t NotoSans_Medium_Vietnamese_14[6582] = { 162,14,2,1,249,30,18,251, // unifont_t // 0x0102 Ă diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_16.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_16.cpp index 08ec0bf9d054..95441c443c47 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_16.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_16.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium 22pt, capital 'A' heigth: 16px, width: 100%, range: 0x0020-0x00ff +// NotoSans Medium 22pt, capital 'A' height: 16px, width: 100%, range: 0x0020-0x00ff extern const uint8_t NotoSans_Medium_16[10298] = { 130,16,32,0,255,0,21,250, // unifont_t // 0x0020 " " diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_ASCII_16.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_ASCII_16.cpp index cac0216a7581..0c96bd8857a7 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_ASCII_16.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_ASCII_16.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium ASCII 22pt, capital 'A' heigth: 16px, width: 100%, range: 0x0020-0x007e +// NotoSans Medium ASCII 22pt, capital 'A' height: 16px, width: 100%, range: 0x0020-0x007e extern const uint8_t NotoSans_Medium_ASCII_16[4704] = { 130,16,32,0,126,0,21,250, // unifont_t // 0x0020 " " diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Cyrillic_16.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Cyrillic_16.cpp index 58ecea399fab..628dc214f668 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Cyrillic_16.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Cyrillic_16.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Cyrillic 22pt, capital 'A' heigth: 16px, width: 100%, range: 0x0401-0x0491, glyphs: 74 +// NotoSans Medium Cyrillic 22pt, capital 'A' height: 16px, width: 100%, range: 0x0401-0x0491, glyphs: 74 extern const uint8_t NotoSans_Medium_Cyrillic_16[4473] = { 130,16,1,4,145,4,21,250, // unifont_t // 0x0401 Ё diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Greek_16.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Greek_16.cpp index f20b747cc479..1f2b966c8f73 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Greek_16.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Greek_16.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Greek 22pt, capital 'A' heigth: 16px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 +// NotoSans Medium Greek 22pt, capital 'A' height: 16px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 extern const uint8_t NotoSans_Medium_Greek_16[4013] = { 130,16,134,3,206,3,21,250, // unifont_t // 0x0386 Ά diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Katakana_16.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Katakana_16.cpp index 18c9345ca37a..8da7297cd90b 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Katakana_16.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Katakana_16.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Katakana 22pt, capital 'A' heigth: 16px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 +// NotoSans Medium Katakana 22pt, capital 'A' height: 16px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 extern const uint8_t NotoSans_Medium_Katakana_16[9720] = { 162,16,160,48,104,136,21,250, // unifont_t // 0x30a0 ゠ diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Korean_16.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Korean_16.cpp index 3839ed419e13..bf9698000df2 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Korean_16.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Korean_16.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Korean 22pt, capital 'A' heigth: 16px, width: 100%, range: 0xac70-0xd788, glyphs: 110 +// NotoSans Medium Korean 22pt, capital 'A' height: 16px, width: 100%, range: 0xac70-0xd788, glyphs: 110 extern const uint8_t NotoSans_Medium_Korean_16[11557] = { 162,16,112,172,136,215,21,250, // unifont_t // 0xac70 거 diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Latin_Extended_A_16.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Latin_Extended_A_16.cpp index afce5184244b..23fb2b27c6e0 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Latin_Extended_A_16.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Latin_Extended_A_16.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Latin Extended-A 22pt, capital 'A' heigth: 16px, width: 100%, range: 0x0100-0x017f +// NotoSans Medium Latin Extended-A 22pt, capital 'A' height: 16px, width: 100%, range: 0x0100-0x017f extern const uint8_t NotoSans_Medium_Latin_Extended_A_16[8564] = { 130,16,0,1,127,1,21,250, // unifont_t // 0x0100 Ā diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Simplified_Chinese_16.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Simplified_Chinese_16.cpp index aa76df275a9d..a720bf0a3f0c 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Simplified_Chinese_16.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Simplified_Chinese_16.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Simplified Chinese 22pt, capital 'A' heigth: 16px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 +// NotoSans Medium Simplified Chinese 22pt, capital 'A' height: 16px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 extern const uint8_t NotoSans_Medium_Simplified_Chinese_16[43240] = { 162,16,28,32,26,255,21,250, // unifont_t // 0x201c “ diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Symbols_16.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Symbols_16.cpp index 63a2a7d071fa..9a2c2eb9b43d 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Symbols_16.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Symbols_16.cpp @@ -20,21 +20,18 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Symbols 22pt, capital 'A' heigth: 16px, width: 100% +// NotoSans Medium Symbols 22pt, capital 'A' height: 16px, width: 100% extern const uint8_t NotoSans_Medium_Symbols_16[166] = { 130,16,8,0,10,0,21,250, // unifont_t // 0x08 - LCD_STR_THERMOMETER a.k.a 0x1f321 🌡 13,27,108,15,1,251,1,255,208,0,3,234,240,0,3,128,240,0,3,224,240,0,3,128,240,0,3,224,240,0,3,128,240,0,3,156,240,0,3,253,240,0,3,173,240,0,3,173,240,0,3,253,240,0,3,173,240,0,3,253,240,0,3,173,240,0,3,173,240,0,11,253,248,0,61,45,46,0,116,255,139,0,242,255,227,64,227,255,243,128,227,255,243,64,177,255,215,0,56,127,79,0,31,64,188,0,7,255,224,0,0,89,0,0, // 0x09 - LCD_STR_DEGREE a.k.a 0x00b0 ° 8,8,16,9,1,8,11,208,62,184,176,44,240,29,176,44,126,184,31,224,0,0, - // 0x0a - replacement for 0x2026 used in Greek languange files … + // 0x0a - replacement for 0x2026 used in Greek language files … 16,4,16,18,1,255,56,3,128,56,125,11,208,189,125,7,192,124,0,0,0,0, }; diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Traditional_Chinese_16.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Traditional_Chinese_16.cpp index 606625646bb6..7aa67765d818 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Traditional_Chinese_16.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Traditional_Chinese_16.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Traditional Chinese 22pt, capital 'A' heigth: 16px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 +// NotoSans Medium Traditional Chinese 22pt, capital 'A' height: 16px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 extern const uint8_t NotoSans_Medium_Traditional_Chinese_16[36120] = { 162,16,191,34,26,255,21,250, // unifont_t // 0x22bf ⊿ diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Vietnamese_16.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Vietnamese_16.cpp index 3905fba3e99e..099a5b7fcb8f 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Vietnamese_16.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_16px/NotoSans_Medium_Vietnamese_16.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Vietnamese 22pt, capital 'A' heigth: 16px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 +// NotoSans Medium Vietnamese 22pt, capital 'A' height: 16px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 extern const uint8_t NotoSans_Medium_Vietnamese_16[8448] = { 162,16,2,1,249,30,21,250, // unifont_t // 0x0102 Ă diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_19.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_19.cpp index 925254e7f858..407fc3b5e259 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_19.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_19.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium 26pt, capital 'A' heigth: 19px, width: 100%, range: 0x0020-0x00ff +// NotoSans Medium 26pt, capital 'A' height: 19px, width: 100%, range: 0x0020-0x00ff extern const uint8_t NotoSans_Medium_19[13901] = { 130,19,32,0,255,0,25,249, // unifont_t // 0x0020 " " diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_ASCII_19.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_ASCII_19.cpp index 97ef16cf4474..fd4fa1a659b8 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_ASCII_19.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_ASCII_19.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium ASCII 26pt, capital 'A' heigth: 19px, width: 100%, range: 0x0020-0x007e +// NotoSans Medium ASCII 26pt, capital 'A' height: 19px, width: 100%, range: 0x0020-0x007e extern const uint8_t NotoSans_Medium_ASCII_19[6379] = { 130,19,32,0,126,0,25,249, // unifont_t // 0x0020 " " diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Cyrillic_19.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Cyrillic_19.cpp index dba08111cec1..707963c94664 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Cyrillic_19.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Cyrillic_19.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Cyrillic 26pt, capital 'A' heigth: 19px, width: 100%, range: 0x0401-0x0491, glyphs: 74 +// NotoSans Medium Cyrillic 26pt, capital 'A' height: 19px, width: 100%, range: 0x0401-0x0491, glyphs: 74 extern const uint8_t NotoSans_Medium_Cyrillic_19[6037] = { 130,19,1,4,145,4,25,249, // unifont_t // 0x0401 Ё diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Greek_19.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Greek_19.cpp index 497e7fa8e86f..155e93684fa5 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Greek_19.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Greek_19.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Greek 26pt, capital 'A' heigth: 19px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 +// NotoSans Medium Greek 26pt, capital 'A' height: 19px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 extern const uint8_t NotoSans_Medium_Greek_19[5416] = { 130,19,134,3,206,3,25,249, // unifont_t // 0x0386 Ά diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Katakana_19.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Katakana_19.cpp index f5d92c5fd545..d83370291491 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Katakana_19.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Katakana_19.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Katakana 26pt, capital 'A' heigth: 19px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 +// NotoSans Medium Katakana 26pt, capital 'A' height: 19px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 extern const uint8_t NotoSans_Medium_Katakana_19[13182] = { 162,19,160,48,104,136,25,249, // unifont_t // 0x30a0 ゠ diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Korean_19.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Korean_19.cpp index 14a0073211f7..436989afc819 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Korean_19.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Korean_19.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Korean 26pt, capital 'A' heigth: 19px, width: 100%, range: 0xac70-0xd788, glyphs: 110 +// NotoSans Medium Korean 26pt, capital 'A' height: 19px, width: 100%, range: 0xac70-0xd788, glyphs: 110 extern const uint8_t NotoSans_Medium_Korean_19[15510] = { 162,19,112,172,136,215,25,249, // unifont_t // 0xac70 거 diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Latin_Extended_A_19.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Latin_Extended_A_19.cpp index ccc23097fe1b..eba3fb1e08c0 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Latin_Extended_A_19.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Latin_Extended_A_19.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Latin Extended-A 26pt, capital 'A' heigth: 19px, width: 100%, range: 0x0100-0x017f +// NotoSans Medium Latin Extended-A 26pt, capital 'A' height: 19px, width: 100%, range: 0x0100-0x017f extern const uint8_t NotoSans_Medium_Latin_Extended_A_19[11379] = { 130,19,0,1,127,1,25,249, // unifont_t // 0x0100 Ā diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Simplified_Chinese_19.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Simplified_Chinese_19.cpp index 86621477e140..a4accd83075a 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Simplified_Chinese_19.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Simplified_Chinese_19.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Simplified Chinese 26pt, capital 'A' heigth: 19px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 +// NotoSans Medium Simplified Chinese 26pt, capital 'A' height: 19px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 extern const uint8_t NotoSans_Medium_Simplified_Chinese_19[58924] = { 162,19,28,32,26,255,25,249, // unifont_t // 0x201c “ diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Symbols_19.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Symbols_19.cpp index d28f2800d658..9aa12ceb0789 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Symbols_19.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Symbols_19.cpp @@ -20,21 +20,18 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Symbols 26pt, capital 'A' heigth: 19px, width: 100% +// NotoSans Medium Symbols 26pt, capital 'A' height: 19px, width: 100% extern const uint8_t NotoSans_Medium_Symbols_19[206] = { 130,19,8,0,10,0,25,249, // unifont_t // 0x08 - LCD_STR_THERMOMETER a.k.a 0x1f321 🌡 15,32,128,17,1,250,0,127,252,0,0,255,254,0,0,240,15,0,0,252,15,0,0,224,15,0,0,224,15,0,0,224,15,0,0,252,15,0,0,224,15,0,0,231,207,0,0,255,207,0,0,231,207,0,0,231,207,0,0,255,207,0,0,231,207,0,0,231,207,0,0,255,207,0,0,231,207,0,0,231,207,0,2,255,207,64,15,135,199,208,62,11,209,240,120,127,252,180,180,255,254,56,240,255,255,60,240,255,255,60,180,255,254,120,124,63,252,244,62,10,146,224,15,208,31,192,2,255,254,0,0,47,224,0, // 0x09 - LCD_STR_DEGREE a.k.a 0x00b0 ° 9,9,27,11,1,10,6,228,0,47,254,0,124,15,64,180,7,128,180,3,192,184,7,128,62,111,0,31,253,0,1,80,0, - // 0x0a - replacement for 0x2026 used in Greek languange files … + // 0x0a - replacement for 0x2026 used in Greek language files … 18,5,25,21,2,255,16,0,64,1,0,252,3,240,15,192,253,3,244,15,208,252,3,240,15,192,16,0,64,1,0, }; diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Traditional_Chinese_19.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Traditional_Chinese_19.cpp index c34f5bb7f163..3f5ee91514a7 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Traditional_Chinese_19.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Traditional_Chinese_19.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Traditional Chinese 26pt, capital 'A' heigth: 19px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 +// NotoSans Medium Traditional Chinese 26pt, capital 'A' height: 19px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 extern const uint8_t NotoSans_Medium_Traditional_Chinese_19[48872] = { 162,19,191,34,26,255,25,249, // unifont_t // 0x22bf ⊿ diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Vietnamese_19.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Vietnamese_19.cpp index 5ff24ab3b066..354e7bd29d99 100644 --- a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Vietnamese_19.cpp +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_19px/NotoSans_Medium_Vietnamese_19.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define NOTOSANS 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == NOTOSANS -#include - -// NotoSans Medium Vietnamese 26pt, capital 'A' heigth: 19px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 +// NotoSans Medium Vietnamese 26pt, capital 'A' height: 19px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 extern const uint8_t NotoSans_Medium_Vietnamese_19[11142] = { 162,19,2,1,249,30,25,249, // unifont_t // 0x0102 Ă diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_26.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_26.cpp new file mode 100644 index 000000000000..fd49cf1d2951 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_26.cpp @@ -0,0 +1,416 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium 36pt, capital 'A' height: 26px, width: 100%, range: 0x0020-0x00ff +extern const uint8_t NotoSans_Medium_26[24099] = { + 130,26,32,0,255,0,34,247, // unifont_t + // 0x0020 " " + 0,0,0,9,0,0, + // 0x0021 ! + 6,27,54,10,2,255,42,128,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,128,63,128,47,128,47,128,47,128,47,64,47,64,47,64,31,64,5,0,0,0,0,0,26,0,63,192,127,208,127,208,63,192,5,0, + // 0x0022 " + 11,10,30,15,2,16,106,2,168,191,2,252,127,2,252,127,2,252,127,1,248,127,1,248,62,1,248,62,1,244,62,0,244,41,0,160, + // 0x0023 # + 22,26,156,23,1,0,0,0,164,1,160,0,0,1,248,3,240,0,0,2,244,3,240,0,0,3,240,3,224,0,0,3,240,7,224,0,0,3,240,11,208,0,0,7,224,11,192,0,0,11,224,15,192,0,63,255,255,255,255,208,63,255,255,255,255,208,26,175,234,191,170,128,0,31,128,63,0,0,0,47,64,63,0,0,0,47,0,63,0,0,0,63,0,126,0,0,0,127,0,190,0,0,255,255,255,255,255,0,255,255,255,255,255,0,170,254,170,254,170,0,0,252,1,248,0,0,0,252,2,244,0,0,0,248,2,240,0,0,1,244,3,240,0,0,2,244,3,240,0,0,3,240,7,224,0,0,3,240,7,208,0,0, + // 0x0024 $ + 17,31,155,21,2,253,0,1,64,0,0,0,3,208,0,0,0,3,208,0,0,0,3,228,0,0,1,255,255,228,0,15,255,255,255,0,63,255,255,254,0,191,211,208,108,0,255,3,208,0,0,255,3,208,0,0,255,3,208,0,0,191,131,208,0,0,127,251,208,0,0,47,255,224,0,0,7,255,255,64,0,0,127,255,244,0,0,3,255,253,0,0,3,235,255,0,0,3,208,191,128,0,3,208,63,128,0,3,208,63,128,64,3,208,127,128,249,3,210,255,0,255,255,255,254,0,255,255,255,244,0,47,255,255,128,0,0,23,224,0,0,0,3,208,0,0,0,3,208,0,0,0,3,208,0,0,0,0,0,0,0, + // 0x0025 % + 28,27,189,31,1,255,1,255,64,0,0,168,0,11,255,224,0,3,244,0,31,235,244,0,7,240,0,63,129,252,0,15,208,0,63,0,253,0,31,128,0,63,0,189,0,63,0,0,127,0,190,0,190,0,0,126,0,126,0,252,0,0,126,0,126,2,244,0,0,127,0,190,7,240,0,0,63,0,189,15,208,106,64,63,0,253,31,195,255,240,47,129,252,63,79,255,248,15,235,248,126,31,209,252,11,255,240,252,47,128,190,1,255,130,248,63,64,127,0,0,3,240,63,0,63,0,0,11,224,63,0,63,0,0,15,192,63,0,63,0,0,63,64,63,0,63,0,0,127,0,63,64,63,0,0,253,0,47,64,127,0,1,248,0,31,192,253,0,3,240,0,15,230,252,0,11,224,0,7,255,244,0,15,192,0,1,255,208,0,0,0,0,0,21,0, + // 0x0026 & + 24,27,162,27,2,255,0,31,255,64,0,0,0,255,255,240,0,0,3,255,255,248,0,0,7,252,7,252,0,0,15,240,1,253,0,0,15,240,0,254,0,0,15,240,1,253,0,0,11,240,2,252,0,0,3,252,11,248,0,0,2,254,47,240,0,0,0,255,255,192,0,0,0,63,254,0,0,0,1,255,248,0,0,0,7,255,254,0,3,252,47,249,255,128,7,248,127,208,127,224,11,240,255,128,15,248,15,240,255,0,3,254,47,208,255,0,0,255,255,192,255,0,0,63,255,64,255,0,0,15,254,0,255,128,0,31,255,0,127,228,1,255,255,192,63,255,255,255,191,240,15,255,255,252,15,252,1,255,255,144,3,255,0,1,80,0,0,0, + // 0x0027 ' + 4,10,10,9,2,16,106,191,127,127,127,127,62,62,62,41, + // 0x0028 ( + 9,32,96,11,1,250,0,26,128,0,63,64,0,254,0,1,252,0,3,248,0,7,240,0,15,240,0,15,208,0,47,192,0,63,192,0,63,128,0,63,64,0,127,64,0,127,0,0,191,0,0,191,0,0,191,0,0,191,0,0,127,0,0,127,64,0,63,64,0,63,128,0,63,192,0,47,192,0,31,208,0,15,240,0,11,240,0,3,248,0,2,252,0,0,254,0,0,63,64,0,26,128, + // 0x0029 ) + 9,32,96,11,1,250,106,0,0,63,64,0,31,192,0,15,224,0,7,240,0,3,248,0,2,252,0,1,253,0,0,254,0,0,191,0,0,127,0,0,127,64,0,63,128,0,63,128,0,63,128,0,63,192,0,63,192,0,63,128,0,63,128,0,63,128,0,63,64,0,127,64,0,191,0,0,255,0,0,253,0,2,252,0,3,248,0,7,240,0,15,224,0,31,192,0,63,64,0,106,0,0, + // 0x002a * + 18,18,90,20,1,10,0,1,84,0,0,0,3,248,0,0,0,3,248,0,0,0,3,244,0,0,0,2,244,0,0,16,2,240,0,64,63,65,240,111,192,127,255,251,255,192,191,255,255,255,208,5,111,254,149,0,0,15,254,0,0,0,47,191,64,0,0,127,31,192,0,0,254,15,240,0,3,252,11,248,0,2,252,3,248,0,0,36,1,128,0,0,0,0,0,0, + // 0x002b + + 18,18,90,21,1,4,0,0,84,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,1,252,0,0,127,255,255,255,240,127,255,255,255,240,63,255,255,255,224,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0, + // 0x002c , + 6,9,18,10,1,251,15,240,15,240,31,224,47,192,47,192,63,64,63,0,126,0,104,0, + // 0x002d - + 10,4,12,12,1,8,21,85,64,191,255,208,191,255,208,191,255,208, + // 0x002e . + 6,6,12,10,2,255,26,0,63,192,127,208,127,208,63,192,5,0, + // 0x002f / + 14,26,104,14,0,0,0,0,10,144,0,0,47,192,0,0,63,128,0,0,127,64,0,0,191,0,0,0,254,0,0,1,252,0,0,3,252,0,0,3,244,0,0,11,240,0,0,15,224,0,0,31,208,0,0,47,192,0,0,63,128,0,0,127,0,0,0,255,0,0,0,253,0,0,2,252,0,0,3,248,0,0,7,244,0,0,11,240,0,0,15,224,0,0,31,208,0,0,47,192,0,0,63,128,0,0,127,0,0,0, + // 0x0030 0 + 18,27,135,21,1,255,0,27,255,64,0,0,191,255,240,0,3,255,255,252,0,7,254,7,255,0,15,240,0,191,64,31,224,0,63,192,47,192,0,47,192,63,192,0,31,208,63,192,0,15,224,63,128,0,15,224,127,128,0,15,240,127,64,0,15,240,127,64,0,15,240,127,64,0,15,240,127,64,0,15,240,127,128,0,15,240,63,128,0,15,240,63,128,0,15,224,63,192,0,31,208,47,192,0,47,208,31,208,0,63,192,15,240,0,191,128,7,252,2,255,0,3,255,255,253,0,0,255,255,248,0,0,31,255,208,0,0,0,84,0,0, + // 0x0031 1 + 11,26,78,21,3,0,0,2,164,0,31,244,0,191,244,3,255,244,15,255,244,127,215,244,255,71,244,60,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244, + // 0x0032 2 + 18,26,130,21,1,0,0,31,255,128,0,2,255,255,244,0,31,255,255,253,0,63,249,7,255,0,15,128,0,255,128,5,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,127,128,0,0,0,255,0,0,0,1,254,0,0,0,3,252,0,0,0,15,244,0,0,0,63,208,0,0,0,255,64,0,0,3,254,0,0,0,15,248,0,0,0,63,224,0,0,0,255,64,0,0,3,253,0,0,0,15,244,0,0,0,63,245,85,85,80,127,255,255,255,240,127,255,255,255,240,127,255,255,255,240, + // 0x0033 3 + 18,27,135,21,1,255,0,111,255,128,0,11,255,255,248,0,63,255,255,254,0,47,228,7,255,64,14,0,0,191,128,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,127,128,0,0,0,255,0,0,0,7,253,0,0,127,255,240,0,0,191,255,64,0,0,191,255,248,0,0,21,107,255,0,0,0,0,191,192,0,0,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,47,224,0,0,0,127,192,121,0,2,255,128,127,255,255,255,0,127,255,255,248,0,27,255,255,144,0,0,21,80,0,0, + // 0x0034 4 + 20,26,130,21,0,0,0,0,0,191,64,0,0,1,255,64,0,0,3,255,64,0,0,11,255,64,0,0,31,255,64,0,0,63,127,64,0,0,254,127,64,0,2,252,127,64,0,3,240,127,64,0,15,224,127,64,0,47,192,127,64,0,127,0,127,64,0,253,0,127,64,2,252,0,127,64,7,240,0,127,64,15,208,0,127,64,47,128,0,127,64,127,255,255,255,255,127,255,255,255,255,127,255,255,255,255,21,85,85,191,149,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64, + // 0x0035 5 + 17,27,135,21,2,255,26,170,170,168,0,31,255,255,252,0,47,255,255,252,0,47,234,170,168,0,47,192,0,0,0,47,192,0,0,0,63,128,0,0,0,63,128,0,0,0,63,128,0,0,0,63,64,0,0,0,63,255,249,0,0,63,255,255,224,0,63,255,255,248,0,10,81,111,254,0,0,0,2,255,0,0,0,0,255,64,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,64,0,0,0,255,0,64,0,1,255,0,249,0,27,253,0,255,255,255,248,0,255,255,255,208,0,47,255,254,0,0,0,21,64,0,0, + // 0x0036 6 + 17,27,135,21,2,255,0,1,191,252,0,0,47,255,252,0,0,255,255,252,0,3,255,144,4,0,11,248,0,0,0,31,224,0,0,0,63,192,0,0,0,63,128,0,0,0,127,0,0,0,0,191,0,0,0,0,254,11,255,208,0,254,127,255,248,0,254,255,255,254,0,255,240,2,255,0,255,128,0,191,128,255,0,0,63,192,254,0,0,63,192,254,0,0,47,192,255,0,0,63,192,191,0,0,63,192,127,64,0,63,128,63,192,0,191,64,31,244,2,255,0,11,255,255,252,0,2,255,255,244,0,0,127,255,128,0,0,1,80,0,0, + // 0x0037 7 + 18,26,130,21,1,0,106,170,170,170,160,191,255,255,255,240,191,255,255,255,240,106,170,170,175,240,0,0,0,31,208,0,0,0,63,192,0,0,0,127,64,0,0,0,255,0,0,0,1,254,0,0,0,3,252,0,0,0,3,248,0,0,0,11,240,0,0,0,15,240,0,0,0,47,208,0,0,0,63,192,0,0,0,191,64,0,0,0,255,0,0,0,1,254,0,0,0,3,252,0,0,0,7,248,0,0,0,15,240,0,0,0,31,240,0,0,0,63,208,0,0,0,63,192,0,0,0,191,64,0,0,0,255,0,0,0, + // 0x0038 8 + 18,27,135,21,1,255,0,27,255,128,0,1,255,255,248,0,7,255,255,255,0,15,248,1,255,128,31,224,0,63,192,47,192,0,47,192,47,192,0,47,192,31,208,0,63,192,15,240,0,63,128,11,252,1,255,0,2,255,155,252,0,0,191,255,224,0,0,47,255,128,0,0,191,255,244,0,3,255,95,254,0,15,244,1,255,128,47,208,0,63,192,63,128,0,15,224,127,64,0,15,240,127,64,0,15,240,127,64,0,15,240,63,192,0,31,224,47,240,0,127,192,15,255,171,255,64,3,255,255,253,0,0,127,255,224,0,0,0,84,0,0, + // 0x0039 9 + 18,27,135,21,1,255,0,27,254,64,0,0,255,255,240,0,7,255,255,252,0,15,253,7,255,0,47,224,0,191,64,63,192,0,63,192,63,128,0,31,208,127,64,0,15,224,127,64,0,15,224,127,64,0,15,240,63,128,0,15,240,63,192,0,63,240,47,224,0,191,240,15,254,91,255,240,7,255,255,207,224,1,255,255,15,224,0,6,144,15,208,0,0,0,31,192,0,0,0,47,192,0,0,0,63,128,0,0,0,255,0,0,0,2,254,0,0,0,31,252,0,11,255,255,240,0,11,255,255,128,0,11,255,248,0,0,0,84,0,0,0, + // 0x003a : + 6,21,42,10,2,255,31,64,127,192,191,208,127,208,63,128,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,0,63,192,127,208,127,208,63,192,5,0, + // 0x003b ; + 7,25,50,10,1,251,11,208,31,240,47,244,47,240,15,224,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,240,31,224,47,208,47,192,63,128,63,0,127,0,189,0,168,0, + // 0x003c < + 18,18,90,21,1,4,0,0,0,0,96,0,0,0,7,240,0,0,0,127,240,0,0,7,255,208,0,0,127,248,0,0,7,255,128,0,0,127,248,0,0,7,255,128,0,0,63,244,0,0,0,127,208,0,0,0,63,254,0,0,0,6,255,228,0,0,0,47,255,64,0,0,1,255,248,0,0,0,31,255,208,0,0,0,191,240,0,0,0,11,240,0,0,0,0,96, + // 0x003d = + 17,11,55,21,2,7,170,170,170,170,64,255,255,255,255,128,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,170,64,255,255,255,255,128,255,255,255,255,128,85,85,85,85,0, + // 0x003e > + 18,18,90,21,1,4,96,0,0,0,0,126,0,0,0,0,127,224,0,0,0,47,254,0,0,0,1,255,224,0,0,0,31,254,0,0,0,1,255,224,0,0,0,31,254,0,0,0,0,191,224,0,0,0,47,240,0,0,6,255,224,0,0,127,254,0,0,11,255,208,0,1,255,249,0,0,47,255,128,0,0,127,244,0,0,0,127,64,0,0,0,96,0,0,0,0, + // 0x003f ? + 15,27,108,16,0,255,1,191,249,0,47,255,255,192,127,255,255,240,63,144,111,248,20,0,3,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,3,252,0,0,15,244,0,0,63,224,0,0,255,128,0,3,254,0,0,15,244,0,0,31,208,0,0,63,128,0,0,63,64,0,0,63,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,26,0,0,0,127,192,0,0,191,192,0,0,191,192,0,0,127,128,0,0,5,0,0, + // 0x0040 @ + 29,30,240,32,2,252,0,0,1,106,164,0,0,0,0,0,111,255,255,208,0,0,0,3,255,255,255,252,0,0,0,31,249,0,6,255,64,0,0,191,128,0,0,63,208,0,1,253,0,0,0,11,240,0,7,244,0,0,0,2,252,0,15,208,0,111,164,0,252,0,31,192,11,255,255,128,126,0,63,0,63,255,255,128,63,0,63,0,191,64,47,128,63,0,126,0,253,0,47,128,47,0,189,2,252,0,47,64,47,64,252,3,244,0,47,64,47,64,252,3,244,0,63,64,47,64,252,3,240,0,63,64,63,0,252,3,244,0,63,64,63,0,252,2,248,0,127,64,126,0,252,1,252,0,255,128,252,0,189,0,255,155,251,231,248,0,126,0,63,255,195,255,224,0,63,0,11,254,0,255,64,0,47,128,0,0,0,0,0,0,15,224,0,0,0,0,0,0,7,248,0,0,0,0,0,0,2,255,64,0,1,160,0,0,0,127,254,170,191,224,0,0,0,11,255,255,255,208,0,0,0,0,111,255,249,0,0,0,0,0,0,0,0,0,0,0, + // 0x0041 A + 24,26,156,24,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x0042 B + 19,26,130,24,3,0,106,170,169,64,0,191,255,255,248,0,191,255,255,255,64,191,170,175,255,192,191,64,0,127,224,191,64,0,47,240,191,64,0,15,240,191,64,0,15,240,191,64,0,31,224,191,64,0,63,208,191,64,1,255,128,191,255,255,254,0,191,255,255,224,0,191,255,255,255,0,191,64,5,255,208,191,64,0,47,240,191,64,0,15,244,191,64,0,7,248,191,64,0,7,248,191,64,0,11,248,191,64,0,15,244,191,64,0,47,240,191,64,22,255,224,191,255,255,255,192,191,255,255,254,0,191,255,255,144,0, + // 0x0043 C + 20,27,135,23,2,255,0,0,191,255,144,0,15,255,255,253,0,127,255,255,252,2,255,245,91,252,7,255,0,0,36,15,252,0,0,0,47,240,0,0,0,63,208,0,0,0,63,192,0,0,0,127,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,224,0,0,0,31,244,0,0,0,15,253,0,0,0,3,255,208,1,184,0,255,255,255,248,0,63,255,255,248,0,6,255,255,224,0,0,5,80,0, + // 0x0044 D + 21,26,156,26,3,0,106,170,169,0,0,0,191,255,255,248,0,0,191,255,255,255,64,0,191,170,175,255,224,0,191,64,0,127,248,0,191,64,0,11,253,0,191,64,0,2,255,0,191,64,0,0,255,64,191,64,0,0,191,128,191,64,0,0,127,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,127,192,191,64,0,0,191,128,191,64,0,0,255,64,191,64,0,2,255,0,191,64,0,11,253,0,191,64,0,127,248,0,191,149,91,255,240,0,191,255,255,255,128,0,191,255,255,248,0,0,191,255,254,64,0,0, + // 0x0045 E + 15,26,104,20,3,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x0046 F + 15,26,104,19,3,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,240,191,255,255,240,191,255,255,240,191,85,85,80,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0, + // 0x0047 G + 22,27,162,26,2,255,0,0,111,255,228,0,0,11,255,255,255,192,0,63,255,255,255,128,1,255,249,85,191,64,3,255,128,0,2,0,15,252,0,0,0,0,31,240,0,0,0,0,63,224,0,0,0,0,63,192,0,0,0,0,127,128,0,0,0,0,191,64,0,0,0,0,255,64,0,0,0,0,255,0,0,191,255,208,255,0,0,255,255,208,255,64,0,255,255,208,191,64,0,106,175,208,191,128,0,0,31,208,127,192,0,0,31,208,63,192,0,0,31,208,47,224,0,0,31,208,31,244,0,0,31,208,11,254,0,0,31,208,3,255,208,0,111,208,0,255,255,255,255,208,0,47,255,255,255,208,0,2,255,255,254,64,0,0,1,84,0,0, + // 0x0048 H + 21,26,156,27,3,0,106,0,0,0,106,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,255,255,255,255,64,191,255,255,255,255,64,191,255,255,255,255,64,191,85,85,85,191,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64, + // 0x0049 I + 11,26,78,13,1,0,106,170,160,191,255,244,127,255,240,2,254,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,47,255,208,191,255,244,191,255,244, + // 0x004a J + 10,34,102,10,253,248,0,10,160,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,15,240,0,15,240,0,47,224,85,191,208,255,255,128,255,254,0,191,228,0,0,0,0, + // 0x004b K + 20,26,130,23,3,0,106,0,0,2,168,191,64,0,15,244,191,64,0,63,224,191,64,0,191,128,191,64,2,255,0,191,64,7,252,0,191,64,31,240,0,191,64,63,192,0,191,64,255,64,0,191,67,253,0,0,191,79,248,0,0,191,111,240,0,0,191,255,244,0,0,191,255,252,0,0,191,247,254,0,0,191,208,255,64,0,191,64,191,192,0,191,64,63,240,0,191,64,15,248,0,191,64,7,252,0,191,64,2,255,0,191,64,0,255,128,191,64,0,63,208,191,64,0,47,240,191,64,0,15,248,191,64,0,3,253, + // 0x004c L + 16,26,104,19,3,0,106,0,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,253,191,255,255,253,191,255,255,253, + // 0x004d M + 27,26,182,33,3,0,106,160,0,0,0,42,164,191,244,0,0,0,127,248,191,252,0,0,0,191,248,191,252,0,0,0,255,248,191,253,0,0,1,255,248,191,191,0,0,3,247,248,191,127,0,0,3,243,248,191,63,128,0,11,227,248,191,47,192,0,15,211,248,191,31,208,0,31,195,248,191,15,224,0,47,131,248,191,11,240,0,63,67,248,191,3,244,0,127,3,248,191,3,248,0,254,3,248,191,1,252,0,252,3,248,191,0,253,2,252,3,248,191,0,255,3,244,3,248,191,0,127,7,240,3,248,191,0,63,75,224,3,248,191,0,47,207,208,3,248,191,0,31,239,192,3,248,191,0,15,255,128,3,248,191,0,11,255,0,3,248,191,0,7,255,0,3,248,191,0,3,254,0,3,248,191,0,2,252,0,3,248, + // 0x004e N + 22,26,156,28,3,0,106,128,0,0,10,144,191,240,0,0,15,224,191,244,0,0,15,224,191,252,0,0,15,224,191,254,0,0,15,224,191,255,64,0,15,224,190,127,192,0,15,224,191,63,224,0,15,224,191,15,240,0,15,224,191,11,252,0,15,224,191,3,253,0,15,224,191,1,255,0,15,224,191,0,191,128,15,224,191,0,63,208,15,224,191,0,31,240,15,224,191,0,15,248,15,224,191,0,3,253,15,224,191,0,2,255,15,224,191,0,0,255,143,224,191,0,0,127,207,224,191,0,0,47,255,224,191,0,0,15,255,224,191,0,0,7,255,224,191,0,0,3,255,224,191,0,0,0,255,224,191,0,0,0,191,224, + // 0x004f O + 24,27,162,28,2,255,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x0050 P + 17,26,130,22,3,0,106,170,165,0,0,191,255,255,224,0,191,255,255,252,0,191,170,191,255,0,191,64,2,255,128,191,64,0,127,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,127,192,191,64,0,255,128,191,64,27,255,0,191,255,255,253,0,191,255,255,240,0,191,255,254,64,0,191,84,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0, + // 0x0051 Q + 24,33,198,28,2,249,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,208,0,0,0,5,127,240,0,0,0,0,15,252,0,0,0,0,7,254,0,0,0,0,1,255,128,0,0,0,0,191,224,0,0,0,0,47,248,0,0,0,0,0,0, + // 0x0052 R + 19,26,130,23,3,0,106,170,165,0,0,191,255,255,224,0,191,255,255,253,0,191,170,191,255,0,191,64,1,255,128,191,64,0,127,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,127,128,191,64,2,255,0,191,234,191,253,0,191,255,255,244,0,191,255,255,128,0,191,170,191,192,0,191,64,47,208,0,191,64,15,240,0,191,64,11,248,0,191,64,3,253,0,191,64,1,255,0,191,64,0,191,128,191,64,0,63,192,191,64,0,47,240,191,64,0,15,244,191,64,0,7,252, + // 0x0053 S + 16,27,108,20,2,255,0,111,255,144,7,255,255,253,31,255,255,253,63,249,86,252,191,192,0,20,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,208,0,0,63,253,0,0,15,255,208,0,3,255,253,0,0,127,255,208,0,6,255,244,0,0,47,252,0,0,7,254,0,0,0,255,0,0,0,255,0,0,0,191,0,0,0,255,64,0,1,255,249,0,11,253,255,255,255,248,255,255,255,224,111,255,254,0,0,21,64,0, + // 0x0054 T + 20,26,130,20,0,0,106,170,170,170,170,191,255,255,255,255,191,255,255,255,255,106,170,255,170,169,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0, + // 0x0055 U + 21,27,162,27,3,255,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,255,0,63,224,0,3,253,0,15,253,0,47,248,0,7,255,255,255,240,0,1,255,255,255,128,0,0,47,255,249,0,0,0,0,21,0,0,0, + // 0x0056 V + 22,26,156,22,0,0,170,0,0,0,10,160,191,64,0,0,31,224,63,192,0,0,47,208,63,192,0,0,63,192,47,208,0,0,127,128,15,240,0,0,191,64,15,240,0,0,255,0,7,244,0,1,254,0,3,252,0,2,252,0,3,252,0,3,252,0,1,253,0,7,248,0,0,255,0,11,240,0,0,191,0,15,240,0,0,127,128,31,208,0,0,63,192,63,192,0,0,47,192,63,192,0,0,31,224,127,64,0,0,15,240,255,0,0,0,11,240,254,0,0,0,7,245,253,0,0,0,3,250,252,0,0,0,2,255,248,0,0,0,0,255,244,0,0,0,0,255,240,0,0,0,0,127,224,0,0,0,0,63,192,0,0, + // 0x0057 W + 34,26,234,34,0,0,106,64,0,2,168,0,0,26,144,127,128,0,7,252,0,0,47,192,63,192,0,11,253,0,0,63,192,63,192,0,15,254,0,0,63,128,47,208,0,31,255,0,0,127,64,31,224,0,47,255,64,0,191,0,15,240,0,63,191,128,0,255,0,15,240,0,63,111,192,0,254,0,11,244,0,127,31,192,1,253,0,7,248,0,191,15,208,2,252,0,3,252,0,254,15,240,3,252,0,3,252,1,253,11,240,3,248,0,2,253,2,252,3,244,7,244,0,1,254,3,248,3,248,11,240,0,0,255,3,244,2,252,15,240,0,0,191,7,240,1,252,15,224,0,0,127,75,240,0,253,31,208,0,0,63,143,224,0,254,47,192,0,0,63,143,208,0,191,63,192,0,0,47,223,192,0,63,63,64,0,0,31,239,128,0,63,191,0,0,0,15,255,64,0,47,255,0,0,0,15,255,0,0,31,254,0,0,0,11,255,0,0,15,253,0,0,0,7,254,0,0,15,252,0,0,0,3,253,0,0,11,252,0,0, + // 0x0058 X + 22,26,156,22,0,0,42,128,0,0,42,128,47,224,0,0,191,64,15,244,0,1,255,0,7,252,0,3,252,0,2,254,0,11,248,0,0,255,0,15,240,0,0,127,192,47,192,0,0,47,208,127,128,0,0,15,240,255,0,0,0,7,250,253,0,0,0,2,255,248,0,0,0,0,255,240,0,0,0,0,191,208,0,0,0,0,255,240,0,0,0,2,255,244,0,0,0,3,255,252,0,0,0,15,241,254,0,0,0,31,208,255,64,0,0,63,192,63,192,0,0,191,64,47,224,0,1,254,0,15,244,0,3,252,0,7,252,0,11,244,0,2,254,0,31,240,0,0,255,0,63,192,0,0,127,192,191,128,0,0,63,224, + // 0x0059 Y + 21,26,156,21,0,0,170,64,0,0,106,128,127,192,0,0,255,64,63,208,0,1,255,0,31,240,0,3,252,0,11,244,0,7,248,0,3,252,0,15,240,0,2,253,0,31,224,0,0,255,0,63,192,0,0,191,128,127,128,0,0,63,192,255,0,0,0,47,226,253,0,0,0,15,243,252,0,0,0,7,255,244,0,0,0,3,255,240,0,0,0,1,255,208,0,0,0,0,255,128,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0, + // 0x005a Z + 19,26,130,21,1,0,106,170,170,170,160,127,255,255,255,240,127,255,255,255,240,42,170,170,191,240,0,0,0,63,192,0,0,0,255,64,0,0,2,255,0,0,0,3,252,0,0,0,15,244,0,0,0,47,224,0,0,0,63,192,0,0,0,255,64,0,0,2,254,0,0,0,3,252,0,0,0,15,244,0,0,0,47,224,0,0,0,127,192,0,0,0,255,64,0,0,2,254,0,0,0,7,252,0,0,0,15,244,0,0,0,47,224,0,0,0,127,213,85,85,80,255,255,255,255,244,255,255,255,255,244,255,255,255,255,244, + // 0x005b [ + 8,32,64,12,3,250,170,170,255,255,255,255,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,255,255,255,255,170,170, + // 0x005c "\" + 14,26,104,14,0,0,106,0,0,0,63,64,0,0,63,128,0,0,31,192,0,0,15,208,0,0,11,240,0,0,7,240,0,0,3,248,0,0,2,252,0,0,0,253,0,0,0,254,0,0,0,127,0,0,0,63,64,0,0,63,192,0,0,31,192,0,0,15,224,0,0,11,240,0,0,7,244,0,0,3,248,0,0,2,252,0,0,0,253,0,0,0,255,0,0,0,127,0,0,0,63,128,0,0,47,192,0,0,31,208, + // 0x005d ] + 8,32,64,12,1,250,170,170,255,255,255,255,0,191,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,191,255,255,255,255,170,170, + // 0x005e ^ + 18,17,85,21,1,9,0,1,240,0,0,0,3,248,0,0,0,7,252,0,0,0,11,254,0,0,0,15,255,0,0,0,47,95,128,0,0,63,15,192,0,0,189,7,224,0,0,252,3,240,0,2,248,1,248,0,3,240,0,253,0,7,224,0,127,0,15,192,0,63,64,31,128,0,31,192,63,64,0,15,208,127,0,0,7,240,105,0,0,2,160, + // 0x005f _ + 16,3,12,16,0,250,255,255,255,254,255,255,255,254,170,170,170,169, + // 0x0060 ` + 9,7,21,11,1,21,106,128,0,63,224,0,15,240,0,3,252,0,0,254,0,0,63,64,0,0,0, + // 0x0061 a + 17,21,105,21,1,255,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x0062 b + 18,29,145,22,3,255,85,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,1,170,0,0,254,47,255,224,0,254,191,255,252,0,255,254,91,255,0,255,208,1,255,64,255,128,0,127,128,255,0,0,63,192,255,0,0,47,192,255,0,0,47,208,255,0,0,47,208,255,0,0,31,208,255,0,0,47,208,255,0,0,47,208,255,0,0,63,192,255,64,0,63,192,255,192,0,191,128,255,240,2,255,0,255,255,255,253,0,252,127,255,248,0,252,11,255,208,0,0,0,20,0,0, + // 0x0063 c + 15,21,84,18,2,255,0,6,170,64,0,255,255,244,7,255,255,240,15,254,171,224,63,240,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,128,0,0,63,192,0,0,63,244,0,176,15,255,255,240,3,255,255,240,0,127,255,208,0,1,84,0, + // 0x0064 d + 18,29,145,22,2,255,0,0,0,5,64,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,26,164,31,208,1,255,255,31,208,11,255,255,223,208,31,254,91,255,208,63,224,0,255,208,127,192,0,127,208,191,64,0,63,208,255,0,0,47,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,47,208,191,64,0,63,208,127,192,0,127,208,63,240,1,255,208,15,255,255,239,208,7,255,255,143,208,0,191,253,15,208,0,5,64,0,0, + // 0x0065 e + 17,21,105,21,2,255,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x0066 f + 14,28,112,13,0,0,0,0,89,64,0,11,255,240,0,63,255,240,0,127,250,224,0,255,64,0,0,255,0,0,0,255,0,0,0,254,0,0,1,255,85,0,47,255,255,64,127,255,255,64,42,255,170,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0, + // 0x0067 g + 18,29,145,22,2,247,0,26,160,5,64,2,255,255,15,208,11,255,255,207,208,31,254,91,255,208,63,224,0,255,208,127,192,0,127,208,191,64,0,63,208,255,0,0,47,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,47,208,191,64,0,63,208,127,192,0,127,208,63,240,1,255,208,15,255,191,255,208,7,255,255,159,208,0,191,253,31,208,0,5,64,31,208,0,0,0,47,192,0,0,0,63,192,0,0,0,63,192,36,0,0,255,64,47,233,91,255,0,47,255,255,252,0,31,255,255,224,0,0,90,165,0,0, + // 0x0068 h + 17,28,140,23,3,0,85,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,1,170,64,0,254,31,255,244,0,254,191,255,253,0,255,254,91,255,0,255,224,0,255,64,255,128,0,127,128,255,64,0,63,128,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192, + // 0x0069 i + 4,27,27,10,3,0,104,255,255,255,40,0,0,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x006a j + 9,36,108,10,254,247,0,26,0,0,63,192,0,63,192,0,63,192,0,10,0,0,0,0,0,0,0,0,21,64,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,128,0,191,128,170,255,64,255,254,0,255,248,0,106,64,0, + // 0x006b k + 17,28,140,20,3,0,85,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,85,0,255,0,3,254,0,255,0,15,248,0,255,0,47,224,0,255,0,191,128,0,255,2,255,0,0,255,11,252,0,0,254,31,240,0,0,254,127,192,0,0,254,255,192,0,0,255,255,240,0,0,255,239,248,0,0,255,131,253,0,0,255,1,255,0,0,255,0,191,192,0,255,0,63,224,0,255,0,15,244,0,255,0,7,252,0,255,0,2,255,0,255,0,0,255,128, + // 0x006c l + 4,28,28,10,3,0,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x006d m + 29,20,160,34,3,0,84,1,170,0,1,170,64,0,252,47,255,224,47,255,240,0,253,191,255,252,191,255,252,0,255,253,95,255,254,91,254,0,255,208,2,255,224,1,255,0,255,128,0,255,192,0,255,0,255,64,0,255,64,0,191,64,255,0,0,255,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64, + // 0x006e n + 17,20,100,23,3,0,84,1,170,64,0,252,47,255,244,0,253,191,255,253,0,255,254,91,255,0,255,224,0,255,64,255,128,0,127,128,255,64,0,63,128,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192, + // 0x006f o + 18,21,105,22,2,255,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x0070 p + 18,29,145,22,3,247,84,1,170,0,0,253,31,255,224,0,253,191,255,252,0,255,254,91,255,0,255,208,1,255,64,255,128,0,127,192,255,0,0,63,192,255,0,0,63,192,255,0,0,47,208,255,0,0,47,208,255,0,0,31,208,255,0,0,47,208,255,0,0,47,208,255,0,0,63,192,255,64,0,63,192,255,192,0,255,128,255,240,2,255,0,255,255,255,253,0,254,127,255,248,0,254,11,255,208,0,255,0,20,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,170,0,0,0,0, + // 0x0071 q + 18,29,145,22,2,247,0,26,160,5,64,1,255,255,15,208,11,255,255,207,208,31,254,91,255,208,63,224,0,255,208,127,192,0,127,208,191,64,0,63,208,255,0,0,47,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,47,208,191,64,0,63,208,127,192,0,127,208,63,240,1,255,208,15,255,255,239,208,7,255,255,159,208,0,191,253,31,208,0,5,64,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,26,128, + // 0x0072 r + 12,20,60,15,3,0,84,1,169,252,15,254,253,63,253,254,255,253,255,248,0,255,208,0,255,128,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, + // 0x0073 s + 14,21,84,17,2,255,0,106,164,0,15,255,255,192,63,255,255,192,255,149,111,128,254,0,0,0,254,0,0,0,255,0,0,0,255,208,0,0,63,254,0,0,15,255,244,0,1,255,254,0,0,27,255,192,0,0,191,208,0,0,31,240,0,0,15,240,0,0,15,240,208,0,47,224,255,170,255,192,255,255,255,64,127,255,248,0,0,85,0,0, + // 0x0074 t + 13,25,100,14,0,255,0,60,0,0,0,188,0,0,0,252,0,0,0,252,0,0,3,253,85,64,47,255,255,128,127,255,255,128,43,254,170,64,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,253,0,0,1,255,0,0,0,255,255,192,0,127,255,192,0,31,255,128,0,0,80,0, + // 0x0075 u + 17,21,105,23,3,255,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,31,128,0,21,0,0,0, + // 0x0076 v + 19,20,100,19,0,0,85,0,0,1,84,191,64,0,7,248,127,128,0,15,240,63,192,0,15,240,47,208,0,31,208,15,240,0,63,192,15,240,0,63,128,7,244,0,191,64,3,252,0,255,0,2,252,1,254,0,1,254,2,252,0,0,255,3,252,0,0,127,7,244,0,0,63,139,240,0,0,47,207,224,0,0,31,223,208,0,0,15,255,192,0,0,11,255,128,0,0,3,255,0,0,0,3,255,0,0, + // 0x0077 w + 29,20,160,29,0,0,21,0,0,85,64,0,21,64,127,128,0,255,192,0,127,64,63,192,0,255,192,0,191,0,63,192,1,255,208,0,255,0,47,208,2,251,240,0,254,0,15,224,3,243,240,2,253,0,15,240,7,243,244,3,252,0,11,240,11,226,248,3,248,0,7,244,15,209,252,7,244,0,3,248,15,192,252,11,240,0,3,252,31,192,254,15,240,0,2,252,63,128,191,15,224,0,1,253,63,0,127,31,208,0,0,254,127,0,63,111,192,0,0,254,126,0,47,175,192,0,0,127,189,0,31,191,64,0,0,63,252,0,15,255,0,0,0,63,252,0,15,255,0,0,0,47,244,0,11,254,0,0,0,31,240,0,7,253,0,0, + // 0x0078 x + 18,20,100,20,1,0,85,0,0,21,64,191,192,0,63,192,63,208,0,255,64,15,240,2,254,0,7,252,3,252,0,3,253,15,244,0,0,255,31,224,0,0,127,255,192,0,0,47,255,0,0,0,15,254,0,0,0,15,253,0,0,0,47,255,0,0,0,127,255,192,0,0,255,47,224,0,2,254,15,240,0,7,252,7,252,0,15,240,2,254,0,47,224,0,255,64,127,192,0,127,192,255,0,0,47,224, + // 0x0079 y + 19,29,145,19,0,247,85,0,0,1,84,191,64,0,7,248,63,192,0,15,240,63,192,0,15,240,31,224,0,31,208,15,240,0,63,192,11,244,0,63,128,3,248,0,191,64,3,252,0,255,0,1,253,0,254,0,0,255,2,252,0,0,191,3,252,0,0,63,71,244,0,0,63,203,240,0,0,31,207,224,0,0,15,223,208,0,0,11,255,192,0,0,3,255,128,0,0,3,255,0,0,0,1,255,0,0,0,1,253,0,0,0,3,252,0,0,0,3,248,0,0,0,11,244,0,0,0,47,240,0,0,38,255,192,0,0,127,255,64,0,0,127,253,0,0,0,42,144,0,0,0, + // 0x007a z + 15,20,80,17,1,0,21,85,85,80,63,255,255,248,63,255,255,248,42,170,175,244,0,0,31,224,0,0,63,192,0,0,255,0,0,2,254,0,0,7,252,0,0,15,240,0,0,47,208,0,0,127,128,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,192,0,0,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x007b { + 12,32,96,14,1,250,0,0,105,0,11,254,0,47,254,0,127,228,0,191,64,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,254,0,2,253,0,175,248,0,255,144,0,255,208,0,175,252,0,2,253,0,0,254,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,64,0,127,228,0,47,254,0,11,254,0,0,105, + // 0x007c | + 4,37,37,20,8,247,20,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,104, + // 0x007d } + 12,32,96,14,1,250,169,0,0,255,208,0,255,248,0,95,252,0,2,253,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,255,0,0,191,64,0,63,250,0,7,255,0,7,255,0,63,250,0,191,64,0,255,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,2,253,0,95,252,0,255,248,0,255,208,0,169,0,0, + // 0x007e ~ + 18,5,25,21,1,10,11,255,128,0,32,63,255,253,66,240,127,255,255,255,240,120,1,191,255,192,16,0,6,249,0, + // 0x007f - 0x009a Control Characters + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x00a0 "�" + 0,0,0,9,0,0, + // 0x00a1 ¡ + 6,27,54,10,2,249,10,0,63,192,127,208,127,208,63,192,5,0,0,0,0,0,10,0,47,64,47,64,47,64,47,64,47,128,63,128,63,128,63,128,63,128,63,192,63,192,63,192,63,192,63,192,63,192,127,192,127,192,42,128, + // 0x00a2 ¢ + 15,27,108,21,3,255,0,3,240,0,0,3,240,0,0,3,240,0,0,47,255,224,2,255,255,244,11,255,255,240,31,248,1,160,63,208,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,192,0,0,63,224,0,0,31,254,86,244,11,255,255,244,1,255,255,240,0,27,254,64,0,3,240,0,0,3,240,0,0,3,240,0,0,1,80,0, + // 0x00a3 £ + 19,26,130,21,1,0,0,1,191,249,0,0,15,255,255,208,0,63,255,255,192,0,191,208,27,128,0,255,0,0,0,0,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,22,254,85,80,0,191,255,255,248,0,191,255,255,248,0,106,255,170,164,0,1,254,0,0,0,1,254,0,0,0,1,253,0,0,0,1,253,0,0,0,1,253,0,0,0,3,252,0,0,0,11,244,0,0,0,127,229,85,85,80,255,255,255,255,244,255,255,255,255,244,255,255,255,255,244, + // 0x00a4 ¤ + 16,17,68,21,2,4,20,0,0,8,125,6,164,63,191,191,255,255,47,255,255,252,15,244,11,244,15,192,1,248,31,64,0,252,47,0,0,188,47,0,0,125,47,0,0,188,31,128,0,252,15,224,3,248,15,254,111,244,63,255,255,253,191,111,253,191,60,0,64,45,0,0,0,0, + // 0x00a5 ¥ + 20,26,130,21,0,0,106,64,0,0,170,63,192,0,1,253,31,208,0,3,252,15,240,0,7,244,7,244,0,15,240,3,252,0,31,208,1,253,0,63,192,0,255,0,127,64,0,127,64,255,0,0,63,193,252,0,0,31,211,248,0,0,15,247,240,0,0,3,255,224,0,0,87,255,213,64,2,255,255,255,192,2,255,255,255,192,0,85,191,85,64,0,0,191,0,0,0,0,191,0,0,2,255,255,255,192,2,255,255,255,192,1,170,255,170,128,0,0,191,0,0,0,0,191,0,0,0,0,191,0,0,0,0,191,0,0, + // 0x00a6 ¦ + 4,37,37,20,8,247,20,189,189,189,189,189,189,189,189,189,189,189,189,189,104,0,0,0,0,0,0,0,20,189,189,189,189,189,189,189,189,189,189,189,189,189,104, + // 0x00a7 § + 14,29,116,18,2,255,0,22,80,0,7,255,255,144,47,255,255,208,63,208,27,192,191,0,0,64,191,0,0,0,127,64,0,0,63,228,0,0,15,255,64,0,7,255,248,0,31,239,255,0,63,64,191,192,126,0,31,224,189,0,7,240,190,0,3,240,127,64,7,240,63,224,11,224,15,255,111,192,2,255,255,0,0,31,255,64,0,1,255,192,0,0,31,224,0,0,11,240,0,0,11,240,208,0,15,224,255,166,191,192,255,255,255,64,47,255,248,0,0,0,0,0, + // 0x00a8 ¨ + 11,5,15,21,5,22,20,0,80,191,2,248,191,3,252,127,2,248,20,0,80, + // 0x00a9 © + 26,27,189,30,2,255,0,0,111,255,144,0,0,0,7,255,255,253,0,0,0,63,208,0,191,192,0,1,253,0,0,7,240,0,3,224,0,0,0,252,0,15,128,6,255,128,63,0,47,0,47,255,240,15,64,61,0,255,155,208,7,192,124,1,252,0,0,3,208,180,3,240,0,0,2,224,240,7,224,0,0,1,240,240,7,208,0,0,0,240,240,11,208,0,0,0,240,240,11,208,0,0,0,240,240,11,208,0,0,0,240,240,7,208,0,0,1,240,244,3,240,0,0,2,240,184,3,244,0,0,3,208,60,0,254,65,144,7,192,47,0,127,255,208,15,128,15,128,11,255,128,47,0,7,208,0,0,0,189,0,2,248,0,0,3,248,0,0,127,128,0,111,208,0,0,15,255,175,255,0,0,0,1,191,255,228,0,0,0,0,0,80,0,0,0, + // 0x00aa ª + 11,13,39,13,1,13,6,254,64,63,255,224,45,7,240,0,1,244,0,1,244,11,255,244,63,234,244,189,0,244,252,1,244,252,3,244,191,191,244,47,248,180,1,64,0, + // 0x00ab « + 17,16,80,19,1,1,0,15,0,30,0,0,63,192,63,128,0,191,64,255,0,2,254,3,252,0,7,248,11,244,0,15,240,47,224,0,63,192,127,128,0,127,128,255,0,0,63,208,63,192,0,15,240,31,224,0,3,252,11,248,0,1,254,2,253,0,0,191,128,255,0,0,47,192,63,128,0,14,0,13,0,0,0,0,0,0, + // 0x00ac ¬ + 18,10,50,21,1,4,127,255,255,255,240,127,255,255,255,240,63,255,255,255,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,1,80, + // 0x00ad ­ + 10,4,12,12,1,8,21,85,64,191,255,208,191,255,208,191,255,208, + // 0x00ae ® + 26,27,189,30,2,255,0,0,111,255,144,0,0,0,7,255,255,253,0,0,0,63,208,0,191,192,0,1,253,0,0,7,240,0,3,224,0,0,0,252,0,15,128,170,169,0,63,0,47,0,255,255,192,15,64,61,0,254,175,240,7,192,124,0,252,3,240,3,208,180,0,252,2,244,2,224,240,0,252,2,244,1,240,240,0,252,3,240,0,240,240,0,253,111,224,0,240,240,0,255,255,64,0,240,240,0,255,255,0,0,240,240,0,252,47,64,1,240,244,0,252,15,192,2,240,184,0,252,7,224,3,208,60,0,252,3,240,7,192,47,0,252,1,252,15,128,15,128,252,0,189,47,0,7,208,0,0,0,189,0,2,248,0,0,3,248,0,0,127,128,0,111,208,0,0,15,255,175,255,0,0,0,1,191,255,228,0,0,0,0,0,80,0,0,0, + // 0x00af ¯ + 18,3,15,18,0,27,255,255,255,255,240,255,255,255,255,240,170,170,170,170,160, + // 0x00b0 ° + 12,12,36,15,2,14,6,255,64,47,255,240,127,155,248,252,0,252,248,0,125,248,0,62,248,0,61,252,0,189,127,70,252,47,255,240,11,255,128,0,16,0, + // 0x00b1 ± + 18,22,110,21,1,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,42,170,254,170,144,127,255,255,255,240,127,255,255,255,240,21,86,253,85,80,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,164,0,0,0,0,0,0,0,127,255,255,255,240,127,255,255,255,240,127,255,255,255,240, + // 0x00b2 ² + 11,17,51,13,1,14,1,169,0,47,255,192,255,255,240,56,3,240,0,3,244,0,3,240,0,3,240,0,15,208,0,47,128,0,190,0,2,248,0,11,224,0,47,128,0,191,170,160,255,255,244,255,255,244,0,0,0, + // 0x00b3 ³ + 12,17,51,13,0,14,1,170,64,31,255,240,63,235,252,13,0,252,0,0,188,0,0,252,0,2,244,3,255,208,3,255,224,0,6,252,0,0,190,0,0,126,0,0,126,121,1,253,127,255,248,47,255,208,0,20,0, + // 0x00b4 ´ + 9,7,21,11,1,21,0,170,64,2,255,0,3,252,0,15,240,0,47,192,0,126,0,0,0,0,0, + // 0x00b5 µ + 17,29,145,23,3,247,85,0,0,21,64,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,0,0,191,192,255,64,0,255,192,255,208,7,255,192,255,255,255,255,192,255,255,255,31,192,254,127,252,31,192,254,1,64,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,170,0,0,0,0, + // 0x00b6 ¶ + 18,33,165,24,2,251,0,1,85,85,80,1,255,255,255,240,11,255,255,255,240,47,255,255,65,240,63,255,255,1,240,127,255,255,1,240,191,255,255,1,240,255,255,255,1,240,255,255,255,1,240,255,255,255,1,240,255,255,255,1,240,255,255,255,1,240,255,255,255,1,240,191,255,255,1,240,127,255,255,1,240,63,255,255,1,240,15,255,255,1,240,2,255,255,1,240,0,21,95,1,240,0,0,15,1,240,0,0,15,1,240,0,0,15,1,240,0,0,15,1,240,0,0,15,1,240,0,0,15,1,240,0,0,15,1,240,0,0,15,1,240,0,0,15,1,240,0,0,15,1,240,0,0,15,1,240,0,0,15,1,240,0,0,15,1,240,0,0,10,0,160, + // 0x00b7 · + 6,6,12,10,2,10,26,0,63,192,127,208,127,208,63,192,5,0, + // 0x00b8 ¸ + 8,9,18,8,0,247,7,192,15,128,31,244,2,252,0,189,0,189,171,252,255,244,106,64, + // 0x00b9 ¹ + 8,17,34,13,1,14,0,21,0,255,7,255,47,255,127,63,40,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,0, + // 0x00ba º + 12,13,39,14,1,13,2,255,64,15,255,240,63,86,248,125,0,188,188,0,125,252,0,62,252,0,62,252,0,61,188,0,124,63,1,252,47,255,240,7,255,192,0,20,0, + // 0x00bb » + 17,16,80,19,1,1,31,0,45,0,0,127,128,191,64,0,47,208,63,192,0,11,244,15,240,0,3,252,7,248,0,0,255,1,254,0,0,127,128,191,64,0,63,208,63,192,0,127,128,255,64,1,255,2,253,0,3,252,7,248,0,15,240,31,240,0,47,208,63,192,0,127,64,191,0,0,10,0,29,0,0,0,0,0,0,0, + // 0x00bc ¼ + 27,26,182,28,1,0,0,106,0,0,2,160,0,2,255,0,0,11,224,0,15,255,0,0,15,192,0,127,191,0,0,63,64,0,125,63,0,0,127,0,0,16,63,0,0,252,0,0,0,63,0,2,248,0,0,0,63,0,3,240,0,0,0,63,0,11,208,0,0,0,63,0,31,192,0,0,0,63,0,63,0,42,0,0,63,0,190,0,191,0,0,63,0,252,1,255,0,0,63,2,244,3,255,0,0,63,7,240,11,191,0,0,42,15,192,31,63,0,0,0,47,128,62,63,0,0,0,63,0,188,63,0,0,0,189,1,240,63,0,0,1,252,3,208,63,0,0,3,244,11,234,191,160,0,7,224,15,255,255,244,0,15,192,11,255,255,244,0,47,64,0,0,63,0,0,127,0,0,0,63,0,0,253,0,0,0,63,0, + // 0x00bd ½ + 27,26,182,29,1,0,0,169,0,0,10,128,0,3,254,0,0,31,192,0,31,254,0,0,63,0,0,191,190,0,0,190,0,0,188,126,0,0,252,0,0,32,190,0,2,244,0,0,0,190,0,7,240,0,0,0,190,0,15,192,0,0,0,190,0,47,128,0,0,0,190,0,63,0,0,0,0,190,0,189,2,169,0,0,190,1,252,63,255,192,0,190,3,244,255,255,240,0,190,7,224,56,7,240,0,190,15,192,0,3,240,0,105,47,64,0,3,240,0,0,127,0,0,3,240,0,0,253,0,0,15,208,0,1,248,0,0,63,128,0,3,240,0,0,254,0,0,11,224,0,3,248,0,0,15,192,0,15,224,0,0,63,64,0,63,128,0,0,126,0,0,255,170,160,0,252,0,0,255,255,244,2,248,0,0,255,255,244, + // 0x00be ¾ + 28,26,182,29,1,0,11,254,64,0,0,105,0,191,255,208,0,0,252,0,190,91,240,0,2,244,0,16,3,244,0,7,240,0,0,2,244,0,15,208,0,0,3,240,0,31,128,0,5,95,208,0,63,0,0,15,255,0,0,189,0,0,11,255,208,1,252,0,0,0,7,244,3,244,0,0,0,1,248,7,224,6,128,0,0,252,15,192,47,208,64,2,248,47,128,63,208,249,91,244,63,0,255,208,255,255,208,253,2,255,208,47,254,1,248,7,207,208,0,0,3,240,15,143,208,0,0,11,224,47,15,208,0,0,15,192,124,15,208,0,0,63,64,248,15,208,0,0,127,2,250,175,233,0,0,252,3,255,255,253,0,2,248,2,255,255,253,0,3,240,0,0,15,208,0,15,208,0,0,15,208,0,31,192,0,0,15,208, + // 0x00bf ¿ + 15,27,108,16,1,249,0,1,144,0,0,11,244,0,0,15,252,0,0,15,252,0,0,11,244,0,0,1,80,0,0,0,0,0,0,0,0,0,0,2,160,0,0,3,240,0,0,7,240,0,0,11,240,0,0,31,208,0,0,127,192,0,2,255,0,0,11,252,0,0,47,224,0,0,127,128,0,0,255,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,255,64,0,144,127,229,111,240,63,255,255,244,11,255,255,224,0,191,233,0, + // 0x00c0 À + 24,34,204,24,0,0,0,6,168,0,0,0,0,3,254,0,0,0,0,0,255,0,0,0,0,0,63,192,0,0,0,0,15,224,0,0,0,0,2,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x00c1 Á + 24,34,204,24,0,0,0,0,0,42,144,0,0,0,0,127,192,0,0,0,0,255,0,0,0,0,2,252,0,0,0,0,7,240,0,0,0,0,15,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x00c2 Â + 24,34,204,24,0,0,0,0,26,160,0,0,0,0,63,244,0,0,0,0,255,253,0,0,0,2,252,191,0,0,0,11,240,47,192,0,0,47,128,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x00c3 Ã + 24,33,198,24,0,0,0,1,164,0,100,0,0,11,255,64,244,0,0,31,255,251,240,0,0,47,91,255,208,0,0,60,0,191,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x00c4 Ä + 24,33,198,24,0,0,0,1,64,5,0,0,0,7,240,31,192,0,0,11,240,47,192,0,0,7,240,31,192,0,0,0,64,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x00c5 Å + 24,32,192,24,0,0,0,0,6,144,0,0,0,0,127,248,0,0,0,0,253,189,0,0,0,1,240,46,0,0,0,1,240,31,0,0,0,0,240,62,0,0,0,0,255,252,0,0,0,0,63,248,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x00c6 Æ + 31,26,208,32,0,0,0,0,0,170,170,170,170,160,0,0,2,255,255,255,255,244,0,0,3,255,255,255,255,244,0,0,11,250,255,170,170,160,0,0,15,240,191,0,0,0,0,0,31,208,191,0,0,0,0,0,63,192,191,0,0,0,0,0,127,64,191,0,0,0,0,0,255,0,191,0,0,0,0,1,254,0,191,0,0,0,0,3,252,0,191,64,0,0,0,7,248,0,191,255,255,224,0,11,240,0,191,255,255,224,0,15,224,0,191,255,255,224,0,47,192,0,191,64,0,0,0,63,255,255,255,0,0,0,0,191,255,255,255,0,0,0,0,255,255,255,255,0,0,0,2,254,170,170,255,0,0,0,3,252,0,0,191,0,0,0,7,248,0,0,191,0,0,0,15,240,0,0,191,0,0,0,31,224,0,0,191,85,85,80,63,192,0,0,191,255,255,244,127,128,0,0,191,255,255,244,255,0,0,0,191,255,255,244, + // 0x00c7 Ç + 20,35,175,23,2,247,0,0,191,255,144,0,15,255,255,253,0,127,255,255,252,2,255,245,91,252,7,255,0,0,36,15,252,0,0,0,47,240,0,0,0,63,208,0,0,0,63,192,0,0,0,127,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,224,0,0,0,31,244,0,0,0,15,253,0,0,0,3,255,208,1,184,0,255,255,255,248,0,63,255,255,248,0,6,255,255,224,0,0,15,208,0,0,0,31,64,0,0,0,63,224,0,0,0,7,252,0,0,0,0,252,0,0,0,0,252,0,0,0,171,252,0,0,0,255,240,0,0,0,170,64,0, + // 0x00c8 È + 15,34,136,20,3,0,2,168,0,0,2,255,0,0,0,191,64,0,0,47,192,0,0,11,240,0,0,2,248,0,0,0,0,0,0,0,0,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x00c9 É + 15,34,136,20,3,0,0,0,26,160,0,0,63,208,0,0,255,64,0,1,253,0,0,3,244,0,0,15,208,0,0,0,0,0,0,0,0,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x00ca Ê + 15,34,136,20,3,0,0,10,160,0,0,63,248,0,0,191,253,0,2,253,191,64,7,244,31,208,31,192,3,240,0,0,0,0,0,0,0,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x00cb Ë + 15,33,132,20,3,0,0,64,5,0,3,240,31,192,7,244,47,192,3,240,15,192,0,64,1,0,0,0,0,0,0,0,0,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x00cc Ì + 11,34,102,13,1,0,106,64,0,127,192,0,31,240,0,7,248,0,1,253,0,0,63,0,0,0,0,0,0,0,106,170,160,191,255,244,127,255,240,2,254,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,47,255,208,191,255,244,191,255,244, + // 0x00cd Í + 11,34,102,13,1,0,0,2,168,0,11,248,0,31,240,0,63,192,0,254,0,2,248,0,0,0,0,0,0,0,106,170,160,191,255,244,127,255,240,2,254,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,47,255,208,191,255,244,191,255,244, + // 0x00ce Î + 13,34,136,13,0,0,0,106,64,0,1,255,192,0,3,255,240,0,15,227,252,0,63,128,254,0,253,0,47,128,0,0,0,0,0,0,0,0,26,170,168,0,47,255,253,0,31,255,252,0,0,191,128,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,11,255,244,0,47,255,253,0,47,255,253,0, + // 0x00cf Ï + 11,33,99,13,1,0,20,0,80,190,3,244,255,3,248,190,3,244,20,0,64,0,0,0,0,0,0,106,170,160,191,255,244,127,255,240,2,254,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,47,255,208,191,255,244,191,255,244, + // 0x00d0 Ð + 23,26,156,26,1,0,6,170,170,144,0,0,7,255,255,255,128,0,7,255,255,255,244,0,7,254,170,255,254,0,7,244,0,7,255,128,7,244,0,0,191,208,7,244,0,0,47,240,7,244,0,0,15,244,7,244,0,0,11,248,7,244,0,0,7,252,7,244,0,0,3,252,91,249,85,0,3,252,255,255,255,64,3,252,255,255,255,64,3,252,255,255,255,0,3,252,7,244,0,0,3,252,7,244,0,0,7,252,7,244,0,0,11,248,7,244,0,0,15,244,7,244,0,0,47,240,7,244,0,0,191,208,7,244,0,7,255,128,7,249,85,191,254,0,7,255,255,255,248,0,7,255,255,255,128,0,7,255,255,228,0,0, + // 0x00d1 Ñ + 22,33,198,28,3,0,0,2,144,1,144,0,0,31,254,3,224,0,0,63,255,239,192,0,0,189,47,255,128,0,0,180,2,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,128,0,0,10,144,191,240,0,0,15,224,191,244,0,0,15,224,191,252,0,0,15,224,191,254,0,0,15,224,191,255,64,0,15,224,190,127,192,0,15,224,191,63,224,0,15,224,191,15,240,0,15,224,191,11,252,0,15,224,191,3,253,0,15,224,191,1,255,0,15,224,191,0,191,128,15,224,191,0,63,208,15,224,191,0,31,240,15,224,191,0,15,248,15,224,191,0,3,253,15,224,191,0,2,255,15,224,191,0,0,255,143,224,191,0,0,127,207,224,191,0,0,47,255,224,191,0,0,15,255,224,191,0,0,7,255,224,191,0,0,3,255,224,191,0,0,0,255,224,191,0,0,0,191,224, + // 0x00d2 Ò + 24,35,210,28,2,255,0,2,169,0,0,0,0,1,255,0,0,0,0,0,191,128,0,0,0,0,47,208,0,0,0,0,11,240,0,0,0,0,1,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x00d3 Ó + 24,35,210,28,2,255,0,0,0,26,160,0,0,0,0,63,224,0,0,0,0,191,128,0,0,0,1,254,0,0,0,0,3,248,0,0,0,0,11,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x00d4 Ô + 24,35,210,28,2,255,0,0,10,160,0,0,0,0,47,252,0,0,0,0,127,254,0,0,0,1,254,127,128,0,0,7,244,31,208,0,0,15,192,3,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x00d5 Õ + 24,34,204,28,2,255,0,0,100,0,40,0,0,3,255,128,184,0,0,15,255,251,244,0,0,31,71,255,240,0,0,46,0,127,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x00d6 Ö + 24,34,204,28,2,255,0,0,80,1,64,0,0,3,244,15,208,0,0,3,248,31,208,0,0,3,244,15,192,0,0,0,64,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x00d7 × + 16,17,68,21,2,4,4,0,0,4,46,0,0,61,127,128,0,255,47,224,3,252,11,248,15,240,2,254,63,192,0,191,255,0,0,47,252,0,0,15,248,0,0,63,254,0,0,255,191,128,3,252,47,224,15,240,11,248,63,192,2,253,127,0,0,191,28,0,0,44,0,0,0,0, + // 0x00d8 Ø + 24,29,174,28,2,254,0,0,0,0,0,128,0,1,191,254,67,240,0,31,255,255,255,240,0,191,255,255,255,192,3,255,229,91,255,192,11,254,0,0,255,224,15,248,0,1,255,244,47,240,0,3,255,252,63,208,0,11,227,253,127,192,0,31,194,254,191,128,0,63,65,254,191,64,0,254,0,255,255,64,2,252,0,255,255,64,3,244,0,255,255,64,15,224,0,255,255,64,47,192,0,255,191,64,127,0,0,255,191,128,253,0,1,255,127,194,252,0,2,254,63,199,240,0,3,253,47,239,208,0,7,252,31,255,128,0,15,248,11,255,0,0,63,240,3,255,144,6,255,208,3,255,255,255,255,64,11,255,255,255,252,0,15,194,255,255,144,0,7,128,5,80,0,0,0,0,0,0,0,0, + // 0x00d9 Ù + 21,35,210,27,3,255,0,42,144,0,0,0,0,31,240,0,0,0,0,7,252,0,0,0,0,1,253,0,0,0,0,0,127,0,0,0,0,0,31,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,255,0,63,224,0,3,253,0,15,253,0,47,248,0,7,255,255,255,240,0,1,255,255,255,128,0,0,47,255,249,0,0,0,0,21,0,0,0, + // 0x00da Ú + 21,35,210,27,3,255,0,0,0,170,0,0,0,0,3,254,0,0,0,0,7,248,0,0,0,0,15,224,0,0,0,0,63,128,0,0,0,0,190,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,255,0,63,224,0,3,253,0,15,253,0,47,248,0,7,255,255,255,240,0,1,255,255,255,128,0,0,47,255,249,0,0,0,0,21,0,0,0, + // 0x00db Û + 21,35,210,27,3,255,0,0,170,64,0,0,0,2,255,192,0,0,0,7,255,240,0,0,0,15,231,248,0,0,0,63,128,254,0,0,0,253,0,47,128,0,0,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,255,0,63,224,0,3,253,0,15,253,0,47,248,0,7,255,255,255,240,0,1,255,255,255,128,0,0,47,255,249,0,0,0,0,21,0,0,0, + // 0x00dc Ü + 21,34,204,27,3,255,0,5,0,20,0,0,0,63,128,253,0,0,0,63,192,254,0,0,0,47,64,253,0,0,0,5,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,255,0,63,224,0,3,253,0,15,253,0,47,248,0,7,255,255,255,240,0,1,255,255,255,128,0,0,47,255,249,0,0,0,0,21,0,0,0, + // 0x00dd Ý + 21,34,204,21,0,0,0,0,0,170,64,0,0,0,2,255,0,0,0,0,7,252,0,0,0,0,15,240,0,0,0,0,47,192,0,0,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,64,0,0,106,128,127,192,0,0,255,64,63,208,0,1,255,0,31,240,0,3,252,0,11,244,0,7,248,0,3,252,0,15,240,0,2,253,0,31,224,0,0,255,0,63,192,0,0,191,128,127,128,0,0,63,192,255,0,0,0,47,226,253,0,0,0,15,243,252,0,0,0,7,255,244,0,0,0,3,255,240,0,0,0,1,255,208,0,0,0,0,255,128,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0, + // 0x00de Þ + 17,26,130,22,3,0,106,0,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,149,80,0,0,191,255,255,144,0,191,255,255,248,0,191,255,255,254,0,191,64,7,255,64,191,64,0,191,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,191,128,191,64,2,255,0,191,234,255,254,0,191,255,255,248,0,191,255,255,128,0,191,170,148,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0, + // 0x00df ß + 19,29,145,24,3,255,0,5,148,0,0,2,255,255,224,0,15,255,255,253,0,63,254,175,255,0,191,192,0,255,128,255,0,0,127,128,255,0,0,63,128,255,0,0,127,64,255,0,0,255,0,255,0,7,252,0,255,0,31,240,0,255,0,127,192,0,255,0,255,0,0,255,0,255,0,0,255,0,255,64,0,255,0,191,224,0,255,0,63,252,0,255,0,11,255,64,255,0,1,255,224,255,0,0,47,244,255,0,0,11,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,6,0,11,248,255,7,250,191,244,255,7,255,255,224,255,2,255,255,64,0,0,5,80,0, + // 0x00e0 à + 17,29,145,21,1,255,0,106,64,0,0,0,127,192,0,0,0,31,240,0,0,0,7,248,0,0,0,1,253,0,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x00e1 á + 17,29,145,21,1,255,0,0,2,168,0,0,0,15,248,0,0,0,31,240,0,0,0,63,128,0,0,0,254,0,0,0,2,248,0,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x00e2 â + 17,29,145,21,1,255,0,2,169,0,0,0,7,255,0,0,0,31,255,192,0,0,63,143,224,0,0,254,3,248,0,3,244,0,190,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x00e3 ã + 17,28,140,21,1,255,0,26,0,10,0,0,255,224,31,0,2,255,255,190,0,3,225,255,252,0,7,192,31,240,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x00e4 ä + 17,28,140,21,1,255,0,20,0,80,0,0,254,3,244,0,0,255,3,248,0,0,190,3,244,0,0,20,0,64,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x00e5 å + 17,31,155,21,1,255,0,1,164,0,0,0,11,255,64,0,0,31,159,192,0,0,46,3,208,0,0,61,3,208,0,0,46,7,192,0,0,15,255,128,0,0,7,254,0,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x00e6 æ + 29,21,168,32,1,255,0,22,169,0,6,169,0,0,2,255,255,224,127,255,208,0,7,255,255,249,255,255,248,0,3,249,27,255,253,7,253,0,1,64,0,255,240,0,255,0,0,0,0,191,192,0,191,64,0,0,0,127,192,0,63,128,0,0,0,127,128,0,63,192,0,6,171,255,234,170,191,192,1,255,255,255,255,255,255,192,11,255,250,255,255,255,255,192,47,244,0,127,128,0,0,0,63,192,0,127,128,0,0,0,127,128,0,191,192,0,0,0,127,128,0,255,192,0,0,0,127,128,1,255,224,0,0,0,63,208,7,255,248,0,11,0,47,254,191,211,255,255,255,0,15,255,255,64,255,255,255,0,2,255,248,0,31,255,249,0,0,5,0,0,0,21,0,0, + // 0x00e7 ç + 15,29,116,18,2,247,0,6,170,64,0,255,255,244,7,255,255,240,15,254,171,224,63,240,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,128,0,0,63,192,0,0,63,244,0,176,15,255,255,240,3,255,255,240,0,127,255,208,0,3,244,0,0,7,192,0,0,15,248,0,0,1,254,0,0,0,63,0,0,0,63,0,0,106,254,0,0,127,252,0,0,42,80,0, + // 0x00e8 è + 17,29,145,21,2,255,1,169,0,0,0,1,255,0,0,0,0,127,192,0,0,0,31,224,0,0,0,7,244,0,0,0,0,252,0,0,0,0,0,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x00e9 é + 17,29,145,21,2,255,0,0,10,160,0,0,0,47,224,0,0,0,127,192,0,0,0,255,0,0,0,3,248,0,0,0,11,224,0,0,0,0,0,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x00ea ê + 17,29,145,21,2,255,0,10,164,0,0,0,31,252,0,0,0,63,255,0,0,0,254,63,192,0,3,248,15,224,0,15,208,2,248,0,0,0,0,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x00eb ë + 17,28,140,21,2,255,0,80,1,64,0,2,248,15,208,0,3,252,15,224,0,2,248,15,208,0,0,80,1,0,0,0,0,0,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x00ec ì + 8,28,56,10,0,0,170,0,191,128,63,208,15,240,2,252,0,190,0,0,0,0,1,84,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252, + // 0x00ed í + 8,28,56,10,3,0,1,170,3,253,15,244,47,208,127,64,253,0,0,0,0,0,85,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, + // 0x00ee î + 13,28,112,10,254,0,0,42,128,0,0,255,224,0,2,255,244,0,11,246,253,0,31,192,127,0,127,0,31,192,0,0,0,0,0,0,0,0,0,21,64,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0, + // 0x00ef ï + 11,27,81,10,255,0,4,0,80,63,1,252,127,66,252,63,1,252,4,0,16,0,0,0,0,0,0,0,85,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0, + // 0x00f0 ð + 18,28,140,22,2,255,0,62,0,60,0,0,127,226,254,0,0,47,255,248,0,0,3,255,192,0,0,11,255,208,0,0,191,239,240,0,0,255,7,252,0,0,52,1,253,0,0,0,0,191,0,0,0,0,63,128,0,127,254,47,192,3,255,255,239,208,15,255,255,255,224,63,244,1,255,240,127,192,0,63,240,191,64,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,224,191,64,0,31,208,127,192,0,63,192,63,224,0,255,128,15,255,175,255,0,3,255,255,248,0,0,127,255,208,0,0,1,80,0,0, + // 0x00f1 ñ + 17,27,135,23,3,0,0,104,0,40,0,3,255,128,124,0,11,255,254,248,0,15,135,255,240,0,31,0,127,192,0,0,0,0,0,0,0,0,0,0,0,84,1,170,64,0,252,47,255,244,0,253,191,255,253,0,255,254,91,255,0,255,224,0,255,64,255,128,0,127,128,255,64,0,63,128,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192, + // 0x00f2 ò + 18,29,145,22,2,255,0,170,0,0,0,0,191,192,0,0,0,47,208,0,0,0,11,240,0,0,0,2,252,0,0,0,0,190,0,0,0,0,0,0,0,0,0,0,0,0,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x00f3 ó + 18,29,145,22,2,255,0,0,6,168,0,0,0,15,244,0,0,0,63,208,0,0,0,127,64,0,0,0,253,0,0,0,3,244,0,0,0,0,0,0,0,0,0,0,0,0,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x00f4 ô + 18,29,145,22,2,255,0,2,168,0,0,0,15,254,0,0,0,47,255,128,0,0,191,111,208,0,1,253,7,244,0,7,240,0,253,0,0,0,0,0,0,0,0,0,0,0,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x00f5 õ + 18,28,140,22,2,255,0,41,0,25,0,1,255,224,62,0,3,255,254,253,0,7,210,255,248,0,11,64,47,224,0,0,0,0,0,0,0,0,0,0,0,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x00f6 ö + 18,28,140,22,2,255,0,20,1,64,0,0,253,3,240,0,1,253,7,244,0,0,252,3,240,0,0,16,0,64,0,0,0,0,0,0,0,0,0,0,0,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x00f7 ÷ + 18,17,85,21,1,4,0,1,248,0,0,0,3,253,0,0,0,3,253,0,0,0,2,252,0,0,0,0,80,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,240,127,255,255,255,240,63,255,255,255,224,0,0,0,0,0,0,0,0,0,0,0,0,180,0,0,0,2,252,0,0,0,3,253,0,0,0,2,252,0,0,0,0,164,0,0, + // 0x00f8 ø + 18,22,110,22,2,254,0,6,169,11,64,0,191,255,255,192,7,255,255,255,0,15,254,91,255,0,63,224,2,255,128,127,192,7,255,192,191,64,15,255,224,255,0,47,143,240,255,0,127,15,240,255,0,253,15,240,255,2,248,15,240,255,7,240,15,240,255,15,192,15,240,191,127,64,31,224,127,255,0,47,208,63,252,0,63,192,31,248,1,255,128,15,255,255,255,0,31,255,255,248,0,63,127,255,144,0,14,1,80,0,0,0,0,0,0,0, + // 0x00f9 ù + 17,29,145,23,3,255,1,169,0,0,0,1,255,0,0,0,0,127,192,0,0,0,31,224,0,0,0,7,244,0,0,0,1,252,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,31,128,0,21,0,0,0, + // 0x00fa ú + 17,29,145,23,3,255,0,0,10,160,0,0,0,63,224,0,0,0,127,192,0,0,0,255,0,0,0,3,248,0,0,0,11,224,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,31,128,0,21,0,0,0, + // 0x00fb û + 17,29,145,23,3,255,0,10,164,0,0,0,47,252,0,0,0,127,255,0,0,0,254,127,128,0,3,248,15,224,0,15,208,2,248,0,0,0,0,0,0,0,0,0,0,0,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,31,128,0,21,0,0,0, + // 0x00fc ü + 17,28,140,23,3,255,0,80,1,64,0,3,248,15,208,0,3,252,15,224,0,2,248,15,208,0,0,80,1,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,31,128,0,21,0,0,0, + // 0x00fd ý + 19,37,185,19,0,247,0,0,2,169,0,0,0,11,252,0,0,0,31,240,0,0,0,63,192,0,0,0,191,0,0,0,1,248,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,1,84,191,64,0,7,248,63,192,0,15,240,63,192,0,15,240,31,224,0,31,208,15,240,0,63,192,11,244,0,63,128,3,248,0,191,64,3,252,0,255,0,1,253,0,254,0,0,255,2,252,0,0,191,3,252,0,0,63,71,244,0,0,63,203,240,0,0,31,207,224,0,0,15,223,208,0,0,11,255,192,0,0,3,255,128,0,0,3,255,0,0,0,1,255,0,0,0,1,253,0,0,0,3,252,0,0,0,3,248,0,0,0,11,244,0,0,0,47,240,0,0,38,255,192,0,0,127,255,64,0,0,127,253,0,0,0,42,144,0,0,0, + // 0x00fe þ + 18,37,185,22,3,247,85,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,1,170,0,0,255,31,255,224,0,254,191,255,252,0,255,254,91,255,0,255,208,0,255,64,255,128,0,127,128,255,0,0,63,192,255,0,0,47,192,255,0,0,47,208,255,0,0,47,208,255,0,0,31,208,255,0,0,47,208,255,0,0,47,208,255,0,0,63,192,255,64,0,63,192,255,192,0,191,128,255,240,2,255,0,255,255,255,253,0,254,127,255,248,0,254,11,255,208,0,255,0,20,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,170,0,0,0,0, + // 0x00ff ÿ + 19,36,180,19,0,247,0,20,0,80,0,0,191,3,248,0,0,255,3,252,0,0,190,2,248,0,0,20,0,80,0,0,0,0,0,0,0,0,0,0,0,85,0,0,1,84,191,64,0,7,248,63,192,0,15,240,63,192,0,15,240,31,224,0,31,208,15,240,0,63,192,11,244,0,63,128,3,248,0,191,64,3,252,0,255,0,1,253,0,254,0,0,255,2,252,0,0,191,3,252,0,0,63,71,244,0,0,63,203,240,0,0,31,207,224,0,0,15,223,208,0,0,11,255,192,0,0,3,255,128,0,0,3,255,0,0,0,1,255,0,0,0,1,253,0,0,0,3,252,0,0,0,3,248,0,0,0,11,244,0,0,0,47,240,0,0,38,255,192,0,0,127,255,64,0,0,127,253,0,0,0,42,144,0,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_ASCII_26.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_ASCII_26.cpp new file mode 100644 index 000000000000..dcf12a39355c --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_ASCII_26.cpp @@ -0,0 +1,222 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium ASCII 36pt, capital 'A' height: 26px, width: 100%, range: 0x0020-0x007e +extern const uint8_t NotoSans_Medium_ASCII_26[10989] = { + 130,26,32,0,126,0,34,247, // unifont_t + // 0x0020 " " + 0,0,0,9,0,0, + // 0x0021 ! + 6,27,54,10,2,255,42,128,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,128,63,128,47,128,47,128,47,128,47,64,47,64,47,64,31,64,5,0,0,0,0,0,26,0,63,192,127,208,127,208,63,192,5,0, + // 0x0022 " + 11,10,30,15,2,16,106,2,168,191,2,252,127,2,252,127,2,252,127,1,248,127,1,248,62,1,248,62,1,244,62,0,244,41,0,160, + // 0x0023 # + 22,26,156,23,1,0,0,0,164,1,160,0,0,1,248,3,240,0,0,2,244,3,240,0,0,3,240,3,224,0,0,3,240,7,224,0,0,3,240,11,208,0,0,7,224,11,192,0,0,11,224,15,192,0,63,255,255,255,255,208,63,255,255,255,255,208,26,175,234,191,170,128,0,31,128,63,0,0,0,47,64,63,0,0,0,47,0,63,0,0,0,63,0,126,0,0,0,127,0,190,0,0,255,255,255,255,255,0,255,255,255,255,255,0,170,254,170,254,170,0,0,252,1,248,0,0,0,252,2,244,0,0,0,248,2,240,0,0,1,244,3,240,0,0,2,244,3,240,0,0,3,240,7,224,0,0,3,240,7,208,0,0, + // 0x0024 $ + 17,31,155,21,2,253,0,1,64,0,0,0,3,208,0,0,0,3,208,0,0,0,3,228,0,0,1,255,255,228,0,15,255,255,255,0,63,255,255,254,0,191,211,208,108,0,255,3,208,0,0,255,3,208,0,0,255,3,208,0,0,191,131,208,0,0,127,251,208,0,0,47,255,224,0,0,7,255,255,64,0,0,127,255,244,0,0,3,255,253,0,0,3,235,255,0,0,3,208,191,128,0,3,208,63,128,0,3,208,63,128,64,3,208,127,128,249,3,210,255,0,255,255,255,254,0,255,255,255,244,0,47,255,255,128,0,0,23,224,0,0,0,3,208,0,0,0,3,208,0,0,0,3,208,0,0,0,0,0,0,0, + // 0x0025 % + 28,27,189,31,1,255,1,255,64,0,0,168,0,11,255,224,0,3,244,0,31,235,244,0,7,240,0,63,129,252,0,15,208,0,63,0,253,0,31,128,0,63,0,189,0,63,0,0,127,0,190,0,190,0,0,126,0,126,0,252,0,0,126,0,126,2,244,0,0,127,0,190,7,240,0,0,63,0,189,15,208,106,64,63,0,253,31,195,255,240,47,129,252,63,79,255,248,15,235,248,126,31,209,252,11,255,240,252,47,128,190,1,255,130,248,63,64,127,0,0,3,240,63,0,63,0,0,11,224,63,0,63,0,0,15,192,63,0,63,0,0,63,64,63,0,63,0,0,127,0,63,64,63,0,0,253,0,47,64,127,0,1,248,0,31,192,253,0,3,240,0,15,230,252,0,11,224,0,7,255,244,0,15,192,0,1,255,208,0,0,0,0,0,21,0, + // 0x0026 & + 24,27,162,27,2,255,0,31,255,64,0,0,0,255,255,240,0,0,3,255,255,248,0,0,7,252,7,252,0,0,15,240,1,253,0,0,15,240,0,254,0,0,15,240,1,253,0,0,11,240,2,252,0,0,3,252,11,248,0,0,2,254,47,240,0,0,0,255,255,192,0,0,0,63,254,0,0,0,1,255,248,0,0,0,7,255,254,0,3,252,47,249,255,128,7,248,127,208,127,224,11,240,255,128,15,248,15,240,255,0,3,254,47,208,255,0,0,255,255,192,255,0,0,63,255,64,255,0,0,15,254,0,255,128,0,31,255,0,127,228,1,255,255,192,63,255,255,255,191,240,15,255,255,252,15,252,1,255,255,144,3,255,0,1,80,0,0,0, + // 0x0027 ' + 4,10,10,9,2,16,106,191,127,127,127,127,62,62,62,41, + // 0x0028 ( + 9,32,96,11,1,250,0,26,128,0,63,64,0,254,0,1,252,0,3,248,0,7,240,0,15,240,0,15,208,0,47,192,0,63,192,0,63,128,0,63,64,0,127,64,0,127,0,0,191,0,0,191,0,0,191,0,0,191,0,0,127,0,0,127,64,0,63,64,0,63,128,0,63,192,0,47,192,0,31,208,0,15,240,0,11,240,0,3,248,0,2,252,0,0,254,0,0,63,64,0,26,128, + // 0x0029 ) + 9,32,96,11,1,250,106,0,0,63,64,0,31,192,0,15,224,0,7,240,0,3,248,0,2,252,0,1,253,0,0,254,0,0,191,0,0,127,0,0,127,64,0,63,128,0,63,128,0,63,128,0,63,192,0,63,192,0,63,128,0,63,128,0,63,128,0,63,64,0,127,64,0,191,0,0,255,0,0,253,0,2,252,0,3,248,0,7,240,0,15,224,0,31,192,0,63,64,0,106,0,0, + // 0x002a * + 18,18,90,20,1,10,0,1,84,0,0,0,3,248,0,0,0,3,248,0,0,0,3,244,0,0,0,2,244,0,0,16,2,240,0,64,63,65,240,111,192,127,255,251,255,192,191,255,255,255,208,5,111,254,149,0,0,15,254,0,0,0,47,191,64,0,0,127,31,192,0,0,254,15,240,0,3,252,11,248,0,2,252,3,248,0,0,36,1,128,0,0,0,0,0,0, + // 0x002b + + 18,18,90,21,1,4,0,0,84,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,1,252,0,0,127,255,255,255,240,127,255,255,255,240,63,255,255,255,224,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0, + // 0x002c , + 6,9,18,10,1,251,15,240,15,240,31,224,47,192,47,192,63,64,63,0,126,0,104,0, + // 0x002d - + 10,4,12,12,1,8,21,85,64,191,255,208,191,255,208,191,255,208, + // 0x002e . + 6,6,12,10,2,255,26,0,63,192,127,208,127,208,63,192,5,0, + // 0x002f / + 14,26,104,14,0,0,0,0,10,144,0,0,47,192,0,0,63,128,0,0,127,64,0,0,191,0,0,0,254,0,0,1,252,0,0,3,252,0,0,3,244,0,0,11,240,0,0,15,224,0,0,31,208,0,0,47,192,0,0,63,128,0,0,127,0,0,0,255,0,0,0,253,0,0,2,252,0,0,3,248,0,0,7,244,0,0,11,240,0,0,15,224,0,0,31,208,0,0,47,192,0,0,63,128,0,0,127,0,0,0, + // 0x0030 0 + 18,27,135,21,1,255,0,27,255,64,0,0,191,255,240,0,3,255,255,252,0,7,254,7,255,0,15,240,0,191,64,31,224,0,63,192,47,192,0,47,192,63,192,0,31,208,63,192,0,15,224,63,128,0,15,224,127,128,0,15,240,127,64,0,15,240,127,64,0,15,240,127,64,0,15,240,127,64,0,15,240,127,128,0,15,240,63,128,0,15,240,63,128,0,15,224,63,192,0,31,208,47,192,0,47,208,31,208,0,63,192,15,240,0,191,128,7,252,2,255,0,3,255,255,253,0,0,255,255,248,0,0,31,255,208,0,0,0,84,0,0, + // 0x0031 1 + 11,26,78,21,3,0,0,2,164,0,31,244,0,191,244,3,255,244,15,255,244,127,215,244,255,71,244,60,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244,0,7,244, + // 0x0032 2 + 18,26,130,21,1,0,0,31,255,128,0,2,255,255,244,0,31,255,255,253,0,63,249,7,255,0,15,128,0,255,128,5,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,127,128,0,0,0,255,0,0,0,1,254,0,0,0,3,252,0,0,0,15,244,0,0,0,63,208,0,0,0,255,64,0,0,3,254,0,0,0,15,248,0,0,0,63,224,0,0,0,255,64,0,0,3,253,0,0,0,15,244,0,0,0,63,245,85,85,80,127,255,255,255,240,127,255,255,255,240,127,255,255,255,240, + // 0x0033 3 + 18,27,135,21,1,255,0,111,255,128,0,11,255,255,248,0,63,255,255,254,0,47,228,7,255,64,14,0,0,191,128,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,127,128,0,0,0,255,0,0,0,7,253,0,0,127,255,240,0,0,191,255,64,0,0,191,255,248,0,0,21,107,255,0,0,0,0,191,192,0,0,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,47,224,0,0,0,127,192,121,0,2,255,128,127,255,255,255,0,127,255,255,248,0,27,255,255,144,0,0,21,80,0,0, + // 0x0034 4 + 20,26,130,21,0,0,0,0,0,191,64,0,0,1,255,64,0,0,3,255,64,0,0,11,255,64,0,0,31,255,64,0,0,63,127,64,0,0,254,127,64,0,2,252,127,64,0,3,240,127,64,0,15,224,127,64,0,47,192,127,64,0,127,0,127,64,0,253,0,127,64,2,252,0,127,64,7,240,0,127,64,15,208,0,127,64,47,128,0,127,64,127,255,255,255,255,127,255,255,255,255,127,255,255,255,255,21,85,85,191,149,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64, + // 0x0035 5 + 17,27,135,21,2,255,26,170,170,168,0,31,255,255,252,0,47,255,255,252,0,47,234,170,168,0,47,192,0,0,0,47,192,0,0,0,63,128,0,0,0,63,128,0,0,0,63,128,0,0,0,63,64,0,0,0,63,255,249,0,0,63,255,255,224,0,63,255,255,248,0,10,81,111,254,0,0,0,2,255,0,0,0,0,255,64,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,64,0,0,0,255,0,64,0,1,255,0,249,0,27,253,0,255,255,255,248,0,255,255,255,208,0,47,255,254,0,0,0,21,64,0,0, + // 0x0036 6 + 17,27,135,21,2,255,0,1,191,252,0,0,47,255,252,0,0,255,255,252,0,3,255,144,4,0,11,248,0,0,0,31,224,0,0,0,63,192,0,0,0,63,128,0,0,0,127,0,0,0,0,191,0,0,0,0,254,11,255,208,0,254,127,255,248,0,254,255,255,254,0,255,240,2,255,0,255,128,0,191,128,255,0,0,63,192,254,0,0,63,192,254,0,0,47,192,255,0,0,63,192,191,0,0,63,192,127,64,0,63,128,63,192,0,191,64,31,244,2,255,0,11,255,255,252,0,2,255,255,244,0,0,127,255,128,0,0,1,80,0,0, + // 0x0037 7 + 18,26,130,21,1,0,106,170,170,170,160,191,255,255,255,240,191,255,255,255,240,106,170,170,175,240,0,0,0,31,208,0,0,0,63,192,0,0,0,127,64,0,0,0,255,0,0,0,1,254,0,0,0,3,252,0,0,0,3,248,0,0,0,11,240,0,0,0,15,240,0,0,0,47,208,0,0,0,63,192,0,0,0,191,64,0,0,0,255,0,0,0,1,254,0,0,0,3,252,0,0,0,7,248,0,0,0,15,240,0,0,0,31,240,0,0,0,63,208,0,0,0,63,192,0,0,0,191,64,0,0,0,255,0,0,0, + // 0x0038 8 + 18,27,135,21,1,255,0,27,255,128,0,1,255,255,248,0,7,255,255,255,0,15,248,1,255,128,31,224,0,63,192,47,192,0,47,192,47,192,0,47,192,31,208,0,63,192,15,240,0,63,128,11,252,1,255,0,2,255,155,252,0,0,191,255,224,0,0,47,255,128,0,0,191,255,244,0,3,255,95,254,0,15,244,1,255,128,47,208,0,63,192,63,128,0,15,224,127,64,0,15,240,127,64,0,15,240,127,64,0,15,240,63,192,0,31,224,47,240,0,127,192,15,255,171,255,64,3,255,255,253,0,0,127,255,224,0,0,0,84,0,0, + // 0x0039 9 + 18,27,135,21,1,255,0,27,254,64,0,0,255,255,240,0,7,255,255,252,0,15,253,7,255,0,47,224,0,191,64,63,192,0,63,192,63,128,0,31,208,127,64,0,15,224,127,64,0,15,224,127,64,0,15,240,63,128,0,15,240,63,192,0,63,240,47,224,0,191,240,15,254,91,255,240,7,255,255,207,224,1,255,255,15,224,0,6,144,15,208,0,0,0,31,192,0,0,0,47,192,0,0,0,63,128,0,0,0,255,0,0,0,2,254,0,0,0,31,252,0,11,255,255,240,0,11,255,255,128,0,11,255,248,0,0,0,84,0,0,0, + // 0x003a : + 6,21,42,10,2,255,31,64,127,192,191,208,127,208,63,128,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,0,63,192,127,208,127,208,63,192,5,0, + // 0x003b ; + 7,25,50,10,1,251,11,208,31,240,47,244,47,240,15,224,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,240,31,224,47,208,47,192,63,128,63,0,127,0,189,0,168,0, + // 0x003c < + 18,18,90,21,1,4,0,0,0,0,96,0,0,0,7,240,0,0,0,127,240,0,0,7,255,208,0,0,127,248,0,0,7,255,128,0,0,127,248,0,0,7,255,128,0,0,63,244,0,0,0,127,208,0,0,0,63,254,0,0,0,6,255,228,0,0,0,47,255,64,0,0,1,255,248,0,0,0,31,255,208,0,0,0,191,240,0,0,0,11,240,0,0,0,0,96, + // 0x003d = + 17,11,55,21,2,7,170,170,170,170,64,255,255,255,255,128,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,170,64,255,255,255,255,128,255,255,255,255,128,85,85,85,85,0, + // 0x003e > + 18,18,90,21,1,4,96,0,0,0,0,126,0,0,0,0,127,224,0,0,0,47,254,0,0,0,1,255,224,0,0,0,31,254,0,0,0,1,255,224,0,0,0,31,254,0,0,0,0,191,224,0,0,0,47,240,0,0,6,255,224,0,0,127,254,0,0,11,255,208,0,1,255,249,0,0,47,255,128,0,0,127,244,0,0,0,127,64,0,0,0,96,0,0,0,0, + // 0x003f ? + 15,27,108,16,0,255,1,191,249,0,47,255,255,192,127,255,255,240,63,144,111,248,20,0,3,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,3,252,0,0,15,244,0,0,63,224,0,0,255,128,0,3,254,0,0,15,244,0,0,31,208,0,0,63,128,0,0,63,64,0,0,63,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,26,0,0,0,127,192,0,0,191,192,0,0,191,192,0,0,127,128,0,0,5,0,0, + // 0x0040 @ + 29,30,240,32,2,252,0,0,1,106,164,0,0,0,0,0,111,255,255,208,0,0,0,3,255,255,255,252,0,0,0,31,249,0,6,255,64,0,0,191,128,0,0,63,208,0,1,253,0,0,0,11,240,0,7,244,0,0,0,2,252,0,15,208,0,111,164,0,252,0,31,192,11,255,255,128,126,0,63,0,63,255,255,128,63,0,63,0,191,64,47,128,63,0,126,0,253,0,47,128,47,0,189,2,252,0,47,64,47,64,252,3,244,0,47,64,47,64,252,3,244,0,63,64,47,64,252,3,240,0,63,64,63,0,252,3,244,0,63,64,63,0,252,2,248,0,127,64,126,0,252,1,252,0,255,128,252,0,189,0,255,155,251,231,248,0,126,0,63,255,195,255,224,0,63,0,11,254,0,255,64,0,47,128,0,0,0,0,0,0,15,224,0,0,0,0,0,0,7,248,0,0,0,0,0,0,2,255,64,0,1,160,0,0,0,127,254,170,191,224,0,0,0,11,255,255,255,208,0,0,0,0,111,255,249,0,0,0,0,0,0,0,0,0,0,0, + // 0x0041 A + 24,26,156,24,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x0042 B + 19,26,130,24,3,0,106,170,169,64,0,191,255,255,248,0,191,255,255,255,64,191,170,175,255,192,191,64,0,127,224,191,64,0,47,240,191,64,0,15,240,191,64,0,15,240,191,64,0,31,224,191,64,0,63,208,191,64,1,255,128,191,255,255,254,0,191,255,255,224,0,191,255,255,255,0,191,64,5,255,208,191,64,0,47,240,191,64,0,15,244,191,64,0,7,248,191,64,0,7,248,191,64,0,11,248,191,64,0,15,244,191,64,0,47,240,191,64,22,255,224,191,255,255,255,192,191,255,255,254,0,191,255,255,144,0, + // 0x0043 C + 20,27,135,23,2,255,0,0,191,255,144,0,15,255,255,253,0,127,255,255,252,2,255,245,91,252,7,255,0,0,36,15,252,0,0,0,47,240,0,0,0,63,208,0,0,0,63,192,0,0,0,127,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,224,0,0,0,31,244,0,0,0,15,253,0,0,0,3,255,208,1,184,0,255,255,255,248,0,63,255,255,248,0,6,255,255,224,0,0,5,80,0, + // 0x0044 D + 21,26,156,26,3,0,106,170,169,0,0,0,191,255,255,248,0,0,191,255,255,255,64,0,191,170,175,255,224,0,191,64,0,127,248,0,191,64,0,11,253,0,191,64,0,2,255,0,191,64,0,0,255,64,191,64,0,0,191,128,191,64,0,0,127,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,127,192,191,64,0,0,191,128,191,64,0,0,255,64,191,64,0,2,255,0,191,64,0,11,253,0,191,64,0,127,248,0,191,149,91,255,240,0,191,255,255,255,128,0,191,255,255,248,0,0,191,255,254,64,0,0, + // 0x0045 E + 15,26,104,20,3,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x0046 F + 15,26,104,19,3,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,240,191,255,255,240,191,255,255,240,191,85,85,80,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0, + // 0x0047 G + 22,27,162,26,2,255,0,0,111,255,228,0,0,11,255,255,255,192,0,63,255,255,255,128,1,255,249,85,191,64,3,255,128,0,2,0,15,252,0,0,0,0,31,240,0,0,0,0,63,224,0,0,0,0,63,192,0,0,0,0,127,128,0,0,0,0,191,64,0,0,0,0,255,64,0,0,0,0,255,0,0,191,255,208,255,0,0,255,255,208,255,64,0,255,255,208,191,64,0,106,175,208,191,128,0,0,31,208,127,192,0,0,31,208,63,192,0,0,31,208,47,224,0,0,31,208,31,244,0,0,31,208,11,254,0,0,31,208,3,255,208,0,111,208,0,255,255,255,255,208,0,47,255,255,255,208,0,2,255,255,254,64,0,0,1,84,0,0, + // 0x0048 H + 21,26,156,27,3,0,106,0,0,0,106,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,255,255,255,255,64,191,255,255,255,255,64,191,255,255,255,255,64,191,85,85,85,191,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64, + // 0x0049 I + 11,26,78,13,1,0,106,170,160,191,255,244,127,255,240,2,254,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,47,255,208,191,255,244,191,255,244, + // 0x004a J + 10,34,102,10,253,248,0,10,160,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,11,240,0,15,240,0,15,240,0,47,224,85,191,208,255,255,128,255,254,0,191,228,0,0,0,0, + // 0x004b K + 20,26,130,23,3,0,106,0,0,2,168,191,64,0,15,244,191,64,0,63,224,191,64,0,191,128,191,64,2,255,0,191,64,7,252,0,191,64,31,240,0,191,64,63,192,0,191,64,255,64,0,191,67,253,0,0,191,79,248,0,0,191,111,240,0,0,191,255,244,0,0,191,255,252,0,0,191,247,254,0,0,191,208,255,64,0,191,64,191,192,0,191,64,63,240,0,191,64,15,248,0,191,64,7,252,0,191,64,2,255,0,191,64,0,255,128,191,64,0,63,208,191,64,0,47,240,191,64,0,15,248,191,64,0,3,253, + // 0x004c L + 16,26,104,19,3,0,106,0,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,253,191,255,255,253,191,255,255,253, + // 0x004d M + 27,26,182,33,3,0,106,160,0,0,0,42,164,191,244,0,0,0,127,248,191,252,0,0,0,191,248,191,252,0,0,0,255,248,191,253,0,0,1,255,248,191,191,0,0,3,247,248,191,127,0,0,3,243,248,191,63,128,0,11,227,248,191,47,192,0,15,211,248,191,31,208,0,31,195,248,191,15,224,0,47,131,248,191,11,240,0,63,67,248,191,3,244,0,127,3,248,191,3,248,0,254,3,248,191,1,252,0,252,3,248,191,0,253,2,252,3,248,191,0,255,3,244,3,248,191,0,127,7,240,3,248,191,0,63,75,224,3,248,191,0,47,207,208,3,248,191,0,31,239,192,3,248,191,0,15,255,128,3,248,191,0,11,255,0,3,248,191,0,7,255,0,3,248,191,0,3,254,0,3,248,191,0,2,252,0,3,248, + // 0x004e N + 22,26,156,28,3,0,106,128,0,0,10,144,191,240,0,0,15,224,191,244,0,0,15,224,191,252,0,0,15,224,191,254,0,0,15,224,191,255,64,0,15,224,190,127,192,0,15,224,191,63,224,0,15,224,191,15,240,0,15,224,191,11,252,0,15,224,191,3,253,0,15,224,191,1,255,0,15,224,191,0,191,128,15,224,191,0,63,208,15,224,191,0,31,240,15,224,191,0,15,248,15,224,191,0,3,253,15,224,191,0,2,255,15,224,191,0,0,255,143,224,191,0,0,127,207,224,191,0,0,47,255,224,191,0,0,15,255,224,191,0,0,7,255,224,191,0,0,3,255,224,191,0,0,0,255,224,191,0,0,0,191,224, + // 0x004f O + 24,27,162,28,2,255,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x0050 P + 17,26,130,22,3,0,106,170,165,0,0,191,255,255,224,0,191,255,255,252,0,191,170,191,255,0,191,64,2,255,128,191,64,0,127,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,127,192,191,64,0,255,128,191,64,27,255,0,191,255,255,253,0,191,255,255,240,0,191,255,254,64,0,191,84,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0, + // 0x0051 Q + 24,33,198,28,2,249,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,208,0,0,0,5,127,240,0,0,0,0,15,252,0,0,0,0,7,254,0,0,0,0,1,255,128,0,0,0,0,191,224,0,0,0,0,47,248,0,0,0,0,0,0, + // 0x0052 R + 19,26,130,23,3,0,106,170,165,0,0,191,255,255,224,0,191,255,255,253,0,191,170,191,255,0,191,64,1,255,128,191,64,0,127,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,127,128,191,64,2,255,0,191,234,191,253,0,191,255,255,244,0,191,255,255,128,0,191,170,191,192,0,191,64,47,208,0,191,64,15,240,0,191,64,11,248,0,191,64,3,253,0,191,64,1,255,0,191,64,0,191,128,191,64,0,63,192,191,64,0,47,240,191,64,0,15,244,191,64,0,7,252, + // 0x0053 S + 16,27,108,20,2,255,0,111,255,144,7,255,255,253,31,255,255,253,63,249,86,252,191,192,0,20,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,208,0,0,63,253,0,0,15,255,208,0,3,255,253,0,0,127,255,208,0,6,255,244,0,0,47,252,0,0,7,254,0,0,0,255,0,0,0,255,0,0,0,191,0,0,0,255,64,0,1,255,249,0,11,253,255,255,255,248,255,255,255,224,111,255,254,0,0,21,64,0, + // 0x0054 T + 20,26,130,20,0,0,106,170,170,170,170,191,255,255,255,255,191,255,255,255,255,106,170,255,170,169,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0, + // 0x0055 U + 21,27,162,27,3,255,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,255,0,63,224,0,3,253,0,15,253,0,47,248,0,7,255,255,255,240,0,1,255,255,255,128,0,0,47,255,249,0,0,0,0,21,0,0,0, + // 0x0056 V + 22,26,156,22,0,0,170,0,0,0,10,160,191,64,0,0,31,224,63,192,0,0,47,208,63,192,0,0,63,192,47,208,0,0,127,128,15,240,0,0,191,64,15,240,0,0,255,0,7,244,0,1,254,0,3,252,0,2,252,0,3,252,0,3,252,0,1,253,0,7,248,0,0,255,0,11,240,0,0,191,0,15,240,0,0,127,128,31,208,0,0,63,192,63,192,0,0,47,192,63,192,0,0,31,224,127,64,0,0,15,240,255,0,0,0,11,240,254,0,0,0,7,245,253,0,0,0,3,250,252,0,0,0,2,255,248,0,0,0,0,255,244,0,0,0,0,255,240,0,0,0,0,127,224,0,0,0,0,63,192,0,0, + // 0x0057 W + 34,26,234,34,0,0,106,64,0,2,168,0,0,26,144,127,128,0,7,252,0,0,47,192,63,192,0,11,253,0,0,63,192,63,192,0,15,254,0,0,63,128,47,208,0,31,255,0,0,127,64,31,224,0,47,255,64,0,191,0,15,240,0,63,191,128,0,255,0,15,240,0,63,111,192,0,254,0,11,244,0,127,31,192,1,253,0,7,248,0,191,15,208,2,252,0,3,252,0,254,15,240,3,252,0,3,252,1,253,11,240,3,248,0,2,253,2,252,3,244,7,244,0,1,254,3,248,3,248,11,240,0,0,255,3,244,2,252,15,240,0,0,191,7,240,1,252,15,224,0,0,127,75,240,0,253,31,208,0,0,63,143,224,0,254,47,192,0,0,63,143,208,0,191,63,192,0,0,47,223,192,0,63,63,64,0,0,31,239,128,0,63,191,0,0,0,15,255,64,0,47,255,0,0,0,15,255,0,0,31,254,0,0,0,11,255,0,0,15,253,0,0,0,7,254,0,0,15,252,0,0,0,3,253,0,0,11,252,0,0, + // 0x0058 X + 22,26,156,22,0,0,42,128,0,0,42,128,47,224,0,0,191,64,15,244,0,1,255,0,7,252,0,3,252,0,2,254,0,11,248,0,0,255,0,15,240,0,0,127,192,47,192,0,0,47,208,127,128,0,0,15,240,255,0,0,0,7,250,253,0,0,0,2,255,248,0,0,0,0,255,240,0,0,0,0,191,208,0,0,0,0,255,240,0,0,0,2,255,244,0,0,0,3,255,252,0,0,0,15,241,254,0,0,0,31,208,255,64,0,0,63,192,63,192,0,0,191,64,47,224,0,1,254,0,15,244,0,3,252,0,7,252,0,11,244,0,2,254,0,31,240,0,0,255,0,63,192,0,0,127,192,191,128,0,0,63,224, + // 0x0059 Y + 21,26,156,21,0,0,170,64,0,0,106,128,127,192,0,0,255,64,63,208,0,1,255,0,31,240,0,3,252,0,11,244,0,7,248,0,3,252,0,15,240,0,2,253,0,31,224,0,0,255,0,63,192,0,0,191,128,127,128,0,0,63,192,255,0,0,0,47,226,253,0,0,0,15,243,252,0,0,0,7,255,244,0,0,0,3,255,240,0,0,0,1,255,208,0,0,0,0,255,128,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0, + // 0x005a Z + 19,26,130,21,1,0,106,170,170,170,160,127,255,255,255,240,127,255,255,255,240,42,170,170,191,240,0,0,0,63,192,0,0,0,255,64,0,0,2,255,0,0,0,3,252,0,0,0,15,244,0,0,0,47,224,0,0,0,63,192,0,0,0,255,64,0,0,2,254,0,0,0,3,252,0,0,0,15,244,0,0,0,47,224,0,0,0,127,192,0,0,0,255,64,0,0,2,254,0,0,0,7,252,0,0,0,15,244,0,0,0,47,224,0,0,0,127,213,85,85,80,255,255,255,255,244,255,255,255,255,244,255,255,255,255,244, + // 0x005b [ + 8,32,64,12,3,250,170,170,255,255,255,255,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,253,0,255,255,255,255,170,170, + // 0x005c "\" + 14,26,104,14,0,0,106,0,0,0,63,64,0,0,63,128,0,0,31,192,0,0,15,208,0,0,11,240,0,0,7,240,0,0,3,248,0,0,2,252,0,0,0,253,0,0,0,254,0,0,0,127,0,0,0,63,64,0,0,63,192,0,0,31,192,0,0,15,224,0,0,11,240,0,0,7,244,0,0,3,248,0,0,2,252,0,0,0,253,0,0,0,255,0,0,0,127,0,0,0,63,128,0,0,47,192,0,0,31,208, + // 0x005d ] + 8,32,64,12,1,250,170,170,255,255,255,255,0,191,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,191,255,255,255,255,170,170, + // 0x005e ^ + 18,17,85,21,1,9,0,1,240,0,0,0,3,248,0,0,0,7,252,0,0,0,11,254,0,0,0,15,255,0,0,0,47,95,128,0,0,63,15,192,0,0,189,7,224,0,0,252,3,240,0,2,248,1,248,0,3,240,0,253,0,7,224,0,127,0,15,192,0,63,64,31,128,0,31,192,63,64,0,15,208,127,0,0,7,240,105,0,0,2,160, + // 0x005f _ + 16,3,12,16,0,250,255,255,255,254,255,255,255,254,170,170,170,169, + // 0x0060 ` + 9,7,21,11,1,21,106,128,0,63,224,0,15,240,0,3,252,0,0,254,0,0,63,64,0,0,0, + // 0x0061 a + 17,21,105,21,1,255,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x0062 b + 18,29,145,22,3,255,85,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,1,170,0,0,254,47,255,224,0,254,191,255,252,0,255,254,91,255,0,255,208,1,255,64,255,128,0,127,128,255,0,0,63,192,255,0,0,47,192,255,0,0,47,208,255,0,0,47,208,255,0,0,31,208,255,0,0,47,208,255,0,0,47,208,255,0,0,63,192,255,64,0,63,192,255,192,0,191,128,255,240,2,255,0,255,255,255,253,0,252,127,255,248,0,252,11,255,208,0,0,0,20,0,0, + // 0x0063 c + 15,21,84,18,2,255,0,6,170,64,0,255,255,244,7,255,255,240,15,254,171,224,63,240,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,128,0,0,63,192,0,0,63,244,0,176,15,255,255,240,3,255,255,240,0,127,255,208,0,1,84,0, + // 0x0064 d + 18,29,145,22,2,255,0,0,0,5,64,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,26,164,31,208,1,255,255,31,208,11,255,255,223,208,31,254,91,255,208,63,224,0,255,208,127,192,0,127,208,191,64,0,63,208,255,0,0,47,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,47,208,191,64,0,63,208,127,192,0,127,208,63,240,1,255,208,15,255,255,239,208,7,255,255,143,208,0,191,253,15,208,0,5,64,0,0, + // 0x0065 e + 17,21,105,21,2,255,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x0066 f + 14,28,112,13,0,0,0,0,89,64,0,11,255,240,0,63,255,240,0,127,250,224,0,255,64,0,0,255,0,0,0,255,0,0,0,254,0,0,1,255,85,0,47,255,255,64,127,255,255,64,42,255,170,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0, + // 0x0067 g + 18,29,145,22,2,247,0,26,160,5,64,2,255,255,15,208,11,255,255,207,208,31,254,91,255,208,63,224,0,255,208,127,192,0,127,208,191,64,0,63,208,255,0,0,47,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,47,208,191,64,0,63,208,127,192,0,127,208,63,240,1,255,208,15,255,191,255,208,7,255,255,159,208,0,191,253,31,208,0,5,64,31,208,0,0,0,47,192,0,0,0,63,192,0,0,0,63,192,36,0,0,255,64,47,233,91,255,0,47,255,255,252,0,31,255,255,224,0,0,90,165,0,0, + // 0x0068 h + 17,28,140,23,3,0,85,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,1,170,64,0,254,31,255,244,0,254,191,255,253,0,255,254,91,255,0,255,224,0,255,64,255,128,0,127,128,255,64,0,63,128,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192, + // 0x0069 i + 4,27,27,10,3,0,104,255,255,255,40,0,0,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x006a j + 9,36,108,10,254,247,0,26,0,0,63,192,0,63,192,0,63,192,0,10,0,0,0,0,0,0,0,0,21,64,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,128,0,191,128,170,255,64,255,254,0,255,248,0,106,64,0, + // 0x006b k + 17,28,140,20,3,0,85,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,85,0,255,0,3,254,0,255,0,15,248,0,255,0,47,224,0,255,0,191,128,0,255,2,255,0,0,255,11,252,0,0,254,31,240,0,0,254,127,192,0,0,254,255,192,0,0,255,255,240,0,0,255,239,248,0,0,255,131,253,0,0,255,1,255,0,0,255,0,191,192,0,255,0,63,224,0,255,0,15,244,0,255,0,7,252,0,255,0,2,255,0,255,0,0,255,128, + // 0x006c l + 4,28,28,10,3,0,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x006d m + 29,20,160,34,3,0,84,1,170,0,1,170,64,0,252,47,255,224,47,255,240,0,253,191,255,252,191,255,252,0,255,253,95,255,254,91,254,0,255,208,2,255,224,1,255,0,255,128,0,255,192,0,255,0,255,64,0,255,64,0,191,64,255,0,0,255,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64,255,0,0,191,0,0,191,64, + // 0x006e n + 17,20,100,23,3,0,84,1,170,64,0,252,47,255,244,0,253,191,255,253,0,255,254,91,255,0,255,224,0,255,64,255,128,0,127,128,255,64,0,63,128,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192, + // 0x006f o + 18,21,105,22,2,255,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x0070 p + 18,29,145,22,3,247,84,1,170,0,0,253,31,255,224,0,253,191,255,252,0,255,254,91,255,0,255,208,1,255,64,255,128,0,127,192,255,0,0,63,192,255,0,0,63,192,255,0,0,47,208,255,0,0,47,208,255,0,0,31,208,255,0,0,47,208,255,0,0,47,208,255,0,0,63,192,255,64,0,63,192,255,192,0,255,128,255,240,2,255,0,255,255,255,253,0,254,127,255,248,0,254,11,255,208,0,255,0,20,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,170,0,0,0,0, + // 0x0071 q + 18,29,145,22,2,247,0,26,160,5,64,1,255,255,15,208,11,255,255,207,208,31,254,91,255,208,63,224,0,255,208,127,192,0,127,208,191,64,0,63,208,255,0,0,47,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,47,208,191,64,0,63,208,127,192,0,127,208,63,240,1,255,208,15,255,255,239,208,7,255,255,159,208,0,191,253,31,208,0,5,64,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,31,208,0,0,0,26,128, + // 0x0072 r + 12,20,60,15,3,0,84,1,169,252,15,254,253,63,253,254,255,253,255,248,0,255,208,0,255,128,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, + // 0x0073 s + 14,21,84,17,2,255,0,106,164,0,15,255,255,192,63,255,255,192,255,149,111,128,254,0,0,0,254,0,0,0,255,0,0,0,255,208,0,0,63,254,0,0,15,255,244,0,1,255,254,0,0,27,255,192,0,0,191,208,0,0,31,240,0,0,15,240,0,0,15,240,208,0,47,224,255,170,255,192,255,255,255,64,127,255,248,0,0,85,0,0, + // 0x0074 t + 13,25,100,14,0,255,0,60,0,0,0,188,0,0,0,252,0,0,0,252,0,0,3,253,85,64,47,255,255,128,127,255,255,128,43,254,170,64,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,253,0,0,1,255,0,0,0,255,255,192,0,127,255,192,0,31,255,128,0,0,80,0, + // 0x0075 u + 17,21,105,23,3,255,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,31,128,0,21,0,0,0, + // 0x0076 v + 19,20,100,19,0,0,85,0,0,1,84,191,64,0,7,248,127,128,0,15,240,63,192,0,15,240,47,208,0,31,208,15,240,0,63,192,15,240,0,63,128,7,244,0,191,64,3,252,0,255,0,2,252,1,254,0,1,254,2,252,0,0,255,3,252,0,0,127,7,244,0,0,63,139,240,0,0,47,207,224,0,0,31,223,208,0,0,15,255,192,0,0,11,255,128,0,0,3,255,0,0,0,3,255,0,0, + // 0x0077 w + 29,20,160,29,0,0,21,0,0,85,64,0,21,64,127,128,0,255,192,0,127,64,63,192,0,255,192,0,191,0,63,192,1,255,208,0,255,0,47,208,2,251,240,0,254,0,15,224,3,243,240,2,253,0,15,240,7,243,244,3,252,0,11,240,11,226,248,3,248,0,7,244,15,209,252,7,244,0,3,248,15,192,252,11,240,0,3,252,31,192,254,15,240,0,2,252,63,128,191,15,224,0,1,253,63,0,127,31,208,0,0,254,127,0,63,111,192,0,0,254,126,0,47,175,192,0,0,127,189,0,31,191,64,0,0,63,252,0,15,255,0,0,0,63,252,0,15,255,0,0,0,47,244,0,11,254,0,0,0,31,240,0,7,253,0,0, + // 0x0078 x + 18,20,100,20,1,0,85,0,0,21,64,191,192,0,63,192,63,208,0,255,64,15,240,2,254,0,7,252,3,252,0,3,253,15,244,0,0,255,31,224,0,0,127,255,192,0,0,47,255,0,0,0,15,254,0,0,0,15,253,0,0,0,47,255,0,0,0,127,255,192,0,0,255,47,224,0,2,254,15,240,0,7,252,7,252,0,15,240,2,254,0,47,224,0,255,64,127,192,0,127,192,255,0,0,47,224, + // 0x0079 y + 19,29,145,19,0,247,85,0,0,1,84,191,64,0,7,248,63,192,0,15,240,63,192,0,15,240,31,224,0,31,208,15,240,0,63,192,11,244,0,63,128,3,248,0,191,64,3,252,0,255,0,1,253,0,254,0,0,255,2,252,0,0,191,3,252,0,0,63,71,244,0,0,63,203,240,0,0,31,207,224,0,0,15,223,208,0,0,11,255,192,0,0,3,255,128,0,0,3,255,0,0,0,1,255,0,0,0,1,253,0,0,0,3,252,0,0,0,3,248,0,0,0,11,244,0,0,0,47,240,0,0,38,255,192,0,0,127,255,64,0,0,127,253,0,0,0,42,144,0,0,0, + // 0x007a z + 15,20,80,17,1,0,21,85,85,80,63,255,255,248,63,255,255,248,42,170,175,244,0,0,31,224,0,0,63,192,0,0,255,0,0,2,254,0,0,7,252,0,0,15,240,0,0,47,208,0,0,127,128,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,192,0,0,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x007b { + 12,32,96,14,1,250,0,0,105,0,11,254,0,47,254,0,127,228,0,191,64,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,254,0,2,253,0,175,248,0,255,144,0,255,208,0,175,252,0,2,253,0,0,254,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,64,0,127,228,0,47,254,0,11,254,0,0,105, + // 0x007c | + 4,37,37,20,8,247,20,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,104, + // 0x007d } + 12,32,96,14,1,250,169,0,0,255,208,0,255,248,0,95,252,0,2,253,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,255,0,0,191,64,0,63,250,0,7,255,0,7,255,0,63,250,0,191,64,0,255,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,2,253,0,95,252,0,255,248,0,255,208,0,169,0,0, + // 0x007e ~ + 18,5,25,21,1,10,11,255,128,0,32,63,255,253,66,240,127,255,255,255,240,120,1,191,255,192,16,0,6,249,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Cyrillic_26.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Cyrillic_26.cpp new file mode 100644 index 000000000000..312da738b801 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Cyrillic_26.cpp @@ -0,0 +1,322 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Cyrillic 36pt, capital 'A' height: 26px, width: 100%, range: 0x0401-0x0491, glyphs: 74 +extern const uint8_t NotoSans_Medium_Cyrillic_26[10307] = { + 130,26,1,4,145,4,34,247, // unifont_t + // 0x0401 Ё + 15,33,132,20,3,0,0,64,5,0,3,240,31,192,7,244,47,192,3,240,15,192,0,64,1,0,0,0,0,0,0,0,0,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x0402 Ђ + 255, + // 0x0403 Ѓ + 255, + // 0x0404 Є + 20,27,135,24,2,255,0,0,127,255,144,0,11,255,255,255,0,127,255,255,255,1,255,249,86,253,7,255,0,0,24,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,63,192,0,0,0,127,128,0,0,0,191,64,0,0,0,255,255,255,255,64,255,255,255,255,64,255,255,255,255,64,255,149,85,85,0,191,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,224,0,0,0,31,244,0,0,0,15,253,0,0,0,3,255,208,0,109,0,255,255,255,253,0,47,255,255,253,0,6,255,255,248,0,0,5,84,0, + // 0x0405 Ѕ + 255, + // 0x0406 І + 11,26,78,13,1,0,106,170,160,191,255,244,127,255,240,2,254,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,47,255,208,191,255,244,191,255,244, + // 0x0407 Ї + 11,33,99,13,1,0,20,0,80,190,3,244,255,3,248,190,3,244,20,0,64,0,0,0,0,0,0,106,170,160,191,255,244,127,255,240,2,254,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,47,255,208,191,255,244,191,255,244, + // 0x0408 Ј + 255, + // 0x0409 Љ + 255, + // 0x040a Њ + 255, + // 0x040b Ћ + 255, + // 0x040c Ќ + 255, + // 0x040d Ѝ + 255, + // 0x040e Ў + 255, + // 0x040f Џ + 255, + // 0x0410 А + 24,26,156,24,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x0411 Б + 18,26,130,22,3,0,106,170,170,170,0,191,255,255,255,0,191,255,255,255,0,191,234,170,170,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,255,255,128,0,191,255,255,248,0,191,255,255,255,0,191,64,23,255,128,191,64,0,127,192,191,64,0,47,208,191,64,0,31,224,191,64,0,31,224,191,64,0,47,224,191,64,0,63,208,191,64,0,191,192,191,149,91,255,128,191,255,255,254,0,191,255,255,248,0,191,255,254,64,0, + // 0x0412 В + 19,26,130,24,3,0,106,170,169,64,0,191,255,255,248,0,191,255,255,255,64,191,170,175,255,192,191,64,0,127,224,191,64,0,47,240,191,64,0,15,240,191,64,0,15,240,191,64,0,31,224,191,64,0,63,208,191,64,1,255,128,191,255,255,254,0,191,255,255,224,0,191,255,255,255,0,191,64,5,255,208,191,64,0,47,240,191,64,0,15,244,191,64,0,7,248,191,64,0,7,248,191,64,0,11,248,191,64,0,15,244,191,64,0,47,240,191,64,22,255,224,191,255,255,255,192,191,255,255,254,0,191,255,255,144,0, + // 0x0413 Г + 16,26,104,19,3,0,106,170,170,169,191,255,255,253,191,255,255,253,191,234,170,169,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0, + // 0x0414 Д + 25,33,231,26,0,249,0,0,42,170,170,144,0,0,0,127,255,255,224,0,0,0,127,255,255,224,0,0,0,191,170,191,224,0,0,0,191,0,31,224,0,0,0,255,0,31,224,0,0,0,254,0,31,224,0,0,1,253,0,31,224,0,0,2,253,0,31,224,0,0,3,252,0,31,224,0,0,3,252,0,31,224,0,0,7,248,0,31,224,0,0,11,244,0,31,224,0,0,15,240,0,31,224,0,0,31,224,0,31,224,0,0,47,208,0,31,224,0,0,63,192,0,31,224,0,0,127,128,0,31,224,0,0,255,0,0,31,224,0,0,255,0,0,31,224,0,2,253,0,0,31,224,0,3,252,0,0,31,224,0,95,249,85,85,111,229,64,255,255,255,255,255,255,192,255,255,255,255,255,255,192,255,255,255,255,255,255,192,255,0,0,0,0,63,192,255,0,0,0,0,63,192,255,0,0,0,0,63,192,255,0,0,0,0,63,192,255,0,0,0,0,63,192,255,0,0,0,0,63,192,255,0,0,0,0,63,192, + // 0x0415 Е + 15,26,104,20,3,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x0416 Ж + 32,26,208,32,0,0,42,128,0,10,144,0,2,168,47,224,0,15,224,0,15,244,15,244,0,15,224,0,47,224,3,252,0,15,224,0,127,192,1,255,0,15,224,0,255,0,0,191,128,15,224,3,253,0,0,63,208,15,224,11,244,0,0,15,240,15,224,31,224,0,0,7,252,15,224,63,192,0,0,1,254,15,224,255,0,0,0,0,191,79,226,253,0,0,0,0,63,207,231,248,0,0,0,0,15,255,255,240,0,0,0,0,47,239,239,244,0,0,0,0,127,207,227,252,0,0,0,0,255,15,225,254,0,0,0,3,253,15,224,191,128,0,0,11,248,15,224,63,208,0,0,31,240,15,224,31,240,0,0,63,192,15,224,11,248,0,0,255,64,15,224,3,254,0,2,254,0,15,224,0,255,64,7,252,0,15,224,0,127,192,15,240,0,15,224,0,47,224,63,208,0,15,224,0,15,248,191,128,0,15,224,0,3,253, + // 0x0417 З + 19,27,135,22,1,255,0,111,255,224,0,7,255,255,254,0,63,255,255,255,192,63,228,1,255,224,14,0,0,31,240,0,0,0,15,244,0,0,0,11,244,0,0,0,11,244,0,0,0,15,240,0,0,0,63,208,0,0,6,255,128,1,255,255,253,0,1,255,255,144,0,1,255,255,254,0,0,85,91,255,192,0,0,0,47,240,0,0,0,11,248,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,7,248,0,0,0,15,244,121,0,0,191,240,127,255,255,255,192,127,255,255,255,0,27,255,255,228,0,0,5,80,0,0, + // 0x0418 И + 22,26,156,28,3,0,106,0,0,0,42,160,191,0,0,0,127,240,191,0,0,0,255,240,191,0,0,2,255,240,191,0,0,7,255,240,191,0,0,15,251,240,191,0,0,47,235,240,191,0,0,127,203,240,191,0,0,255,11,240,191,0,2,254,11,240,191,0,3,252,11,240,191,0,15,244,11,240,191,0,47,224,11,240,191,0,63,192,11,240,191,0,255,64,11,240,191,1,254,0,11,240,191,3,252,0,11,240,191,15,244,0,11,240,191,31,240,0,11,240,191,63,192,0,11,240,191,191,64,0,11,240,191,255,0,0,11,240,191,252,0,0,11,240,191,248,0,0,11,240,191,240,0,0,11,240,191,208,0,0,11,240, + // 0x0419 Й + 22,34,204,28,3,0,0,127,0,2,248,0,0,127,0,3,248,0,0,63,128,11,244,0,0,47,250,191,224,0,0,11,255,255,128,0,0,1,191,249,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,0,0,0,42,160,191,0,0,0,127,240,191,0,0,0,255,240,191,0,0,2,255,240,191,0,0,7,255,240,191,0,0,15,251,240,191,0,0,47,235,240,191,0,0,127,203,240,191,0,0,255,11,240,191,0,2,254,11,240,191,0,3,252,11,240,191,0,15,244,11,240,191,0,47,224,11,240,191,0,63,192,11,240,191,0,255,64,11,240,191,1,254,0,11,240,191,3,252,0,11,240,191,15,244,0,11,240,191,31,240,0,11,240,191,63,192,0,11,240,191,191,64,0,11,240,191,255,0,0,11,240,191,252,0,0,11,240,191,248,0,0,11,240,191,240,0,0,11,240,191,208,0,0,11,240, + // 0x041a К + 20,26,130,23,3,0,106,0,0,2,168,191,64,0,15,244,191,64,0,63,208,191,64,0,191,128,191,64,2,254,0,191,64,7,252,0,191,64,31,240,0,191,64,63,192,0,191,64,255,64,0,191,67,253,0,0,191,75,248,0,0,191,111,224,0,0,191,255,192,0,0,191,191,208,0,0,191,95,240,0,0,191,75,252,0,0,191,66,255,0,0,191,64,255,128,0,191,64,63,224,0,191,64,15,244,0,191,64,7,252,0,191,64,2,255,0,191,64,0,191,192,191,64,0,63,224,191,64,0,15,248,191,64,0,3,253, + // 0x041b Л + 23,27,162,26,0,255,0,0,170,170,170,164,0,1,255,255,255,244,0,2,255,255,255,244,0,2,254,170,175,244,0,3,252,0,7,244,0,3,248,0,7,244,0,3,248,0,7,244,0,3,244,0,7,244,0,7,244,0,7,244,0,7,240,0,7,244,0,11,240,0,7,244,0,15,240,0,7,244,0,15,240,0,7,244,0,15,224,0,7,244,0,31,208,0,7,244,0,31,208,0,7,244,0,47,192,0,7,244,0,63,192,0,7,244,0,63,192,0,7,244,0,63,128,0,7,244,0,191,64,0,7,244,0,255,0,0,7,244,2,255,0,0,7,244,255,253,0,0,7,244,255,248,0,0,7,244,255,224,0,0,7,244,21,0,0,0,0,0, + // 0x041c М + 27,26,182,33,3,0,106,160,0,0,0,42,164,191,244,0,0,0,127,248,191,252,0,0,0,191,248,191,252,0,0,0,255,248,191,253,0,0,1,255,248,191,191,0,0,3,247,248,191,127,0,0,3,243,248,191,63,128,0,11,227,248,191,47,192,0,15,211,248,191,31,208,0,31,195,248,191,15,224,0,47,131,248,191,11,240,0,63,67,248,191,3,244,0,127,3,248,191,3,248,0,254,3,248,191,1,252,0,252,3,248,191,0,253,2,252,3,248,191,0,255,3,244,3,248,191,0,127,7,240,3,248,191,0,63,75,224,3,248,191,0,47,207,208,3,248,191,0,31,239,192,3,248,191,0,15,255,128,3,248,191,0,11,255,0,3,248,191,0,7,255,0,3,248,191,0,3,254,0,3,248,191,0,2,252,0,3,248, + // 0x041d Н + 21,26,156,27,3,0,106,0,0,0,106,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,255,255,255,255,64,191,255,255,255,255,64,191,255,255,255,255,64,191,85,85,85,191,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64, + // 0x041e О + 24,27,162,28,2,255,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x041f П + 20,26,130,26,3,0,106,170,170,170,170,191,255,255,255,255,191,255,255,255,255,191,234,170,170,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255,191,64,0,0,255, + // 0x0420 Р + 17,26,130,22,3,0,106,170,165,0,0,191,255,255,224,0,191,255,255,252,0,191,170,191,255,0,191,64,2,255,128,191,64,0,127,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,127,192,191,64,0,255,128,191,64,27,255,0,191,255,255,253,0,191,255,255,240,0,191,255,254,64,0,191,84,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0, + // 0x0421 С + 20,27,135,23,2,255,0,0,191,255,144,0,15,255,255,253,0,127,255,255,252,2,255,245,91,252,7,255,0,0,36,15,252,0,0,0,47,240,0,0,0,63,208,0,0,0,63,192,0,0,0,127,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,224,0,0,0,31,244,0,0,0,15,253,0,0,0,3,255,208,1,184,0,255,255,255,248,0,63,255,255,248,0,6,255,255,224,0,0,5,80,0, + // 0x0422 Т + 20,26,130,20,0,0,106,170,170,170,170,191,255,255,255,255,191,255,255,255,255,106,170,255,170,169,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0, + // 0x0423 У + 23,27,162,23,0,255,106,128,0,0,2,168,63,192,0,0,11,244,31,224,0,0,15,240,15,240,0,0,47,208,7,248,0,0,63,192,3,252,0,0,127,128,1,254,0,0,255,0,0,255,0,1,254,0,0,127,128,2,253,0,0,63,192,3,252,0,0,31,224,11,244,0,0,15,240,15,240,0,0,7,248,31,208,0,0,3,252,63,192,0,0,1,253,63,128,0,0,0,255,191,0,0,0,0,127,254,0,0,0,0,63,253,0,0,0,0,31,252,0,0,0,0,15,244,0,0,0,0,47,240,0,0,0,0,127,208,0,0,25,6,255,128,0,0,31,255,255,0,0,0,31,255,252,0,0,0,31,255,208,0,0,0,0,84,0,0,0,0, + // 0x0424 Ф + 26,27,189,30,2,255,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,6,191,255,228,0,0,0,191,255,255,255,208,0,3,255,255,255,255,248,0,15,255,151,249,111,254,0,63,244,3,248,2,255,64,127,192,3,248,0,127,192,255,64,3,248,0,47,208,255,0,3,248,0,31,224,254,0,3,248,0,15,224,254,0,3,248,0,15,224,254,0,3,248,0,15,224,255,0,3,248,0,31,224,255,0,3,248,0,47,208,191,128,3,248,0,63,192,63,224,3,248,0,255,128,31,253,3,248,11,255,0,11,255,255,255,255,252,0,1,255,255,255,255,224,0,0,31,255,255,254,0,0,0,0,23,253,64,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,1,80,0,0,0, + // 0x0425 Х + 22,26,156,22,0,0,42,128,0,0,42,128,47,224,0,0,191,64,15,244,0,1,255,0,7,252,0,3,252,0,2,254,0,11,248,0,0,255,0,15,240,0,0,127,192,47,192,0,0,47,208,127,128,0,0,15,240,255,0,0,0,7,250,253,0,0,0,2,255,248,0,0,0,0,255,240,0,0,0,0,191,208,0,0,0,0,255,240,0,0,0,2,255,244,0,0,0,3,255,252,0,0,0,15,241,254,0,0,0,31,208,255,64,0,0,63,192,63,192,0,0,191,64,47,224,0,1,254,0,15,244,0,3,252,0,7,252,0,11,244,0,2,254,0,31,240,0,0,255,0,63,192,0,0,127,192,191,128,0,0,63,224, + // 0x0426 Ц + 24,33,198,27,3,249,106,0,0,0,170,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,64,0,0,255,0,191,149,85,85,255,84,191,255,255,255,255,253,191,255,255,255,255,253,191,255,255,255,255,253,0,0,0,0,1,253,0,0,0,0,1,253,0,0,0,0,1,253,0,0,0,0,1,253,0,0,0,0,1,253,0,0,0,0,1,253,0,0,0,0,1,253, + // 0x0427 Ч + 20,26,130,25,2,0,106,64,0,0,170,127,64,0,0,255,127,64,0,0,255,127,64,0,0,255,127,64,0,0,255,127,64,0,0,255,127,64,0,0,255,127,64,0,0,255,127,64,0,0,255,127,64,0,0,255,127,128,0,0,255,127,128,0,0,255,63,192,0,1,255,63,244,1,111,255,31,255,255,255,255,7,255,255,255,255,0,191,255,144,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255, + // 0x0428 Ш + 32,26,208,38,3,0,106,0,0,10,160,0,1,168,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,64,0,15,240,0,2,253,191,149,85,95,245,85,86,253,191,255,255,255,255,255,255,253,191,255,255,255,255,255,255,253,191,255,255,255,255,255,255,253, + // 0x0429 Щ + 35,33,41,38,3,249,106,0,0,10,144,0,2,168,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,64,0,31,224,0,3,252,0,191,149,85,111,245,85,87,253,80,191,255,255,255,255,255,255,255,244,191,255,255,255,255,255,255,255,244,191,255,255,255,255,255,255,255,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244, + // 0x042a Ъ + 24,26,156,25,0,0,170,170,160,0,0,0,255,255,240,0,0,0,255,255,240,0,0,0,170,175,240,0,0,0,0,11,240,0,0,0,0,11,240,0,0,0,0,11,240,0,0,0,0,11,240,0,0,0,0,11,240,0,0,0,0,11,240,0,0,0,0,11,244,0,0,0,0,11,255,255,228,0,0,11,255,255,255,128,0,11,255,255,255,224,0,11,244,1,191,244,0,11,240,0,11,252,0,11,240,0,3,253,0,11,240,0,2,253,0,11,240,0,2,253,0,11,240,0,2,253,0,11,240,0,3,252,0,11,240,0,11,252,0,11,245,85,191,244,0,11,255,255,255,224,0,11,255,255,255,64,0,11,255,255,228,0, + // 0x042b Ы + 25,26,182,31,3,0,106,0,0,0,0,42,128,191,64,0,0,0,63,192,191,64,0,0,0,63,192,191,64,0,0,0,63,192,191,64,0,0,0,63,192,191,64,0,0,0,63,192,191,64,0,0,0,63,192,191,64,0,0,0,63,192,191,64,0,0,0,63,192,191,64,0,0,0,63,192,191,64,0,0,0,63,192,191,255,254,64,0,63,192,191,255,255,244,0,63,192,191,255,255,254,0,63,192,191,64,27,255,64,63,192,191,64,0,191,192,63,192,191,64,0,63,192,63,192,191,64,0,47,208,63,192,191,64,0,47,208,63,192,191,64,0,63,208,63,192,191,64,0,63,192,63,192,191,64,0,255,192,63,192,191,64,91,255,0,63,192,191,255,255,253,0,63,192,191,255,255,244,0,63,192,191,255,254,64,0,63,192, + // 0x042c Ь + 19,26,130,23,3,0,106,0,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,255,255,144,0,191,255,255,253,0,191,255,255,255,64,191,64,6,255,208,191,64,0,47,224,191,64,0,15,240,191,64,0,15,240,191,64,0,11,244,191,64,0,15,240,191,64,0,15,240,191,64,0,63,224,191,149,86,255,192,191,255,255,255,64,191,255,255,252,0,191,255,255,144,0, + // 0x042d Э + 20,27,135,23,1,255,6,255,254,64,0,191,255,255,244,0,127,255,255,254,0,63,165,91,255,192,20,0,0,191,224,0,0,0,47,240,0,0,0,11,248,0,0,0,3,252,0,0,0,2,253,0,0,0,1,254,0,0,0,1,255,1,255,255,255,255,1,255,255,255,255,1,255,255,255,255,0,85,85,86,255,0,0,0,1,254,0,0,0,1,254,0,0,0,2,253,0,0,0,3,252,0,0,0,11,252,0,0,0,31,244,0,0,0,127,224,185,0,7,255,192,191,255,255,255,0,191,255,255,248,0,47,255,255,128,0,0,21,64,0,0, + // 0x042e Ю + 33,27,243,38,3,255,106,0,0,0,47,255,208,0,0,191,64,0,2,255,255,254,0,0,191,64,0,15,255,255,255,192,0,191,64,0,63,253,85,255,240,0,191,64,0,255,208,0,31,248,0,191,64,1,255,0,0,7,252,0,191,64,3,254,0,0,2,254,0,191,64,3,252,0,0,0,255,0,191,64,7,248,0,0,0,255,64,191,64,11,244,0,0,0,191,128,191,64,15,240,0,0,0,127,128,191,255,255,240,0,0,0,127,192,191,255,255,240,0,0,0,63,192,191,255,255,240,0,0,0,63,192,191,85,95,240,0,0,0,63,192,191,64,15,240,0,0,0,127,128,191,64,11,244,0,0,0,127,128,191,64,11,248,0,0,0,191,64,191,64,7,252,0,0,0,255,0,191,64,3,253,0,0,1,255,0,191,64,2,255,0,0,3,253,0,191,64,0,255,192,0,15,252,0,191,64,0,127,244,0,191,240,0,191,64,0,31,255,255,255,208,0,191,64,0,7,255,255,255,0,0,191,64,0,0,127,255,244,0,0,0,0,0,0,0,84,0,0,0, + // 0x042f Я + 19,26,130,23,1,0,0,1,106,170,168,0,47,255,255,252,1,255,255,255,252,3,255,234,171,252,11,253,0,3,252,15,240,0,3,252,31,240,0,3,252,31,224,0,3,252,31,224,0,3,252,15,240,0,3,252,15,248,0,3,252,7,254,0,3,252,2,255,250,171,252,0,191,255,255,252,0,11,255,255,252,0,15,250,171,252,0,31,240,3,252,0,63,192,3,252,0,191,128,3,252,1,255,0,3,252,3,253,0,3,252,11,248,0,3,252,31,240,0,3,252,63,224,0,3,252,191,192,0,3,252,255,64,0,3,252, + // 0x0430 а + 17,21,105,21,1,255,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x0431 б + 18,29,145,22,2,255,0,0,0,1,64,0,0,6,255,208,0,6,255,255,224,0,127,255,255,224,1,255,255,148,0,7,255,64,0,0,15,244,0,0,0,47,208,0,0,0,63,192,0,0,0,63,64,0,0,0,191,2,255,224,0,191,31,255,252,0,255,127,255,255,0,255,253,1,255,192,255,224,0,63,192,255,128,0,47,224,255,0,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,191,0,0,15,240,127,128,0,31,224,63,192,0,47,208,47,224,0,63,192,15,248,1,255,128,7,255,255,255,0,1,255,255,248,0,0,47,255,208,0,0,0,80,0,0, + // 0x0432 в + 17,20,100,21,3,0,85,85,84,0,0,255,255,255,208,0,255,255,255,252,0,255,170,175,254,0,255,0,1,255,0,255,0,0,255,0,255,0,0,255,0,255,0,2,254,0,255,170,175,248,0,255,255,255,144,0,255,255,255,244,0,255,85,91,254,0,255,0,0,255,64,255,0,0,127,128,255,0,0,127,128,255,0,0,191,128,255,0,2,255,0,255,255,255,254,0,255,255,255,248,0,255,255,254,128,0, + // 0x0433 г + 13,20,80,16,3,0,85,85,85,0,255,255,255,64,255,255,255,64,255,170,170,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0, + // 0x0434 д + 21,27,162,22,0,249,0,1,85,85,80,0,0,3,255,255,244,0,0,3,255,255,244,0,0,3,250,175,244,0,0,7,244,7,244,0,0,7,240,7,244,0,0,11,240,7,244,0,0,15,240,7,244,0,0,15,224,7,244,0,0,31,208,7,244,0,0,47,192,7,244,0,0,63,128,7,244,0,0,127,64,7,244,0,0,255,0,7,244,0,1,254,0,7,244,0,3,252,0,7,244,0,11,244,0,7,244,0,127,255,255,255,255,192,127,255,255,255,255,192,127,255,255,255,255,192,127,0,0,0,31,192,127,0,0,0,31,192,127,0,0,0,31,192,127,0,0,0,31,192,127,0,0,0,31,192,127,0,0,0,31,192,127,0,0,0,31,192, + // 0x0435 е + 17,21,105,21,2,255,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x0436 ж + 28,20,140,28,0,0,21,64,0,85,0,1,84,47,224,0,191,0,3,252,11,244,0,191,0,15,240,3,252,0,191,0,63,192,0,255,0,191,0,191,64,0,127,128,191,1,253,0,0,31,224,191,7,248,0,0,11,244,191,15,240,0,0,3,252,191,63,192,0,0,0,255,191,191,0,0,0,0,255,255,255,64,0,0,3,253,191,63,192,0,0,11,244,191,15,240,0,0,47,224,191,7,248,0,0,127,192,191,2,254,0,0,255,0,191,0,191,64,3,252,0,191,0,63,208,15,244,0,191,0,15,240,47,208,0,191,0,3,252,191,128,0,191,0,1,255, + // 0x0437 з + 16,21,84,18,1,255,1,171,164,0,63,255,255,128,63,255,255,240,47,149,95,252,0,0,3,252,0,0,1,252,0,0,2,252,0,0,7,248,0,170,191,224,0,255,255,0,0,255,255,208,0,85,111,248,0,0,3,253,0,0,0,254,0,0,0,254,0,0,1,254,228,0,7,253,255,251,255,252,255,255,255,240,47,255,255,64,0,21,64,0, + // 0x0438 и + 18,20,100,24,3,0,85,0,0,21,80,254,0,0,127,240,254,0,0,255,240,254,0,2,255,240,254,0,3,255,240,254,0,15,251,240,254,0,31,219,240,254,0,63,139,240,254,0,255,11,240,254,1,253,11,240,254,3,252,11,240,254,11,240,11,240,254,31,208,11,240,254,63,192,11,240,253,191,0,11,240,254,254,0,11,240,255,252,0,11,240,255,244,0,11,240,255,224,0,11,240,255,192,0,11,240, + // 0x0439 й + 18,28,140,24,3,0,6,144,0,42,64,15,224,0,63,64,11,240,0,191,0,3,253,87,254,0,1,255,255,252,0,0,47,255,208,0,0,0,0,0,0,0,0,0,0,0,85,0,0,21,80,254,0,0,127,240,254,0,0,255,240,254,0,2,255,240,254,0,3,255,240,254,0,15,251,240,254,0,31,219,240,254,0,63,139,240,254,0,255,11,240,254,1,253,11,240,254,3,252,11,240,254,11,240,11,240,254,31,208,11,240,254,63,192,11,240,253,191,0,11,240,254,254,0,11,240,255,252,0,11,240,255,244,0,11,240,255,224,0,11,240,255,192,0,11,240, + // 0x043a к + 17,20,100,20,3,0,85,0,0,85,0,255,0,3,253,0,255,0,15,244,0,255,0,47,208,0,255,0,127,128,0,255,1,254,0,0,255,3,252,0,0,255,15,240,0,0,255,63,192,0,0,255,191,64,0,0,255,255,64,0,0,255,63,208,0,0,255,15,240,0,0,255,7,252,0,0,255,1,255,0,0,255,0,191,128,0,255,0,47,224,0,255,0,15,248,0,255,0,3,253,0,255,0,0,255,64, + // 0x043b л + 19,21,105,22,0,255,0,5,85,85,80,0,15,255,255,248,0,15,255,255,248,0,31,234,175,248,0,31,192,7,248,0,31,192,7,248,0,47,192,7,248,0,47,192,7,248,0,63,128,7,248,0,63,128,7,248,0,63,64,7,248,0,127,64,7,248,0,191,0,7,248,0,255,0,7,248,0,254,0,7,248,2,253,0,7,248,7,252,0,7,248,255,244,0,7,248,255,240,0,7,248,255,128,0,7,248,4,0,0,0,0, + // 0x043c м + 22,20,120,28,3,0,85,64,0,0,21,80,255,224,0,0,191,240,255,240,0,0,255,240,255,244,0,1,255,240,255,248,0,3,255,240,254,252,0,3,251,240,253,253,0,11,235,240,253,127,0,15,219,240,253,63,0,31,203,240,253,47,128,47,139,240,253,31,192,63,11,240,253,15,208,191,11,240,253,11,240,253,11,240,253,3,241,252,11,240,253,2,250,248,11,240,253,1,255,240,11,240,253,0,255,240,11,240,253,0,191,208,11,240,253,0,63,192,11,240,253,0,63,128,11,240, + // 0x043d н + 17,20,100,23,3,0,85,0,0,21,64,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,170,170,191,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192, + // 0x043e о + 18,21,105,22,2,255,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x043f п + 17,20,100,23,3,0,85,85,85,85,64,255,255,255,255,192,255,255,255,255,192,255,170,170,191,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192, + // 0x0440 р + 18,29,145,22,3,247,84,1,170,0,0,253,31,255,224,0,253,191,255,252,0,255,254,91,255,0,255,208,1,255,64,255,128,0,127,192,255,0,0,63,192,255,0,0,63,192,255,0,0,47,208,255,0,0,47,208,255,0,0,31,208,255,0,0,47,208,255,0,0,47,208,255,0,0,63,192,255,64,0,63,192,255,192,0,255,128,255,240,2,255,0,255,255,255,253,0,254,127,255,248,0,254,11,255,208,0,255,0,20,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,170,0,0,0,0, + // 0x0441 с + 15,21,84,18,2,255,0,6,170,64,0,255,255,244,7,255,255,240,15,254,171,224,63,240,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,128,0,0,63,192,0,0,63,244,0,176,15,255,255,240,3,255,255,240,0,127,255,208,0,1,84,0, + // 0x0442 т + 17,20,100,18,0,0,21,85,85,85,64,127,255,255,255,192,127,255,255,255,192,42,171,254,170,128,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0, + // 0x0443 у + 19,29,145,19,0,247,85,0,0,1,84,191,64,0,7,248,63,192,0,15,240,63,192,0,15,240,31,224,0,31,208,15,240,0,63,192,11,244,0,63,128,3,248,0,191,64,3,252,0,255,0,1,253,0,254,0,0,255,2,252,0,0,191,3,252,0,0,63,71,244,0,0,63,203,240,0,0,31,207,224,0,0,15,223,208,0,0,11,255,192,0,0,3,255,128,0,0,3,255,0,0,0,1,255,0,0,0,1,253,0,0,0,3,252,0,0,0,3,248,0,0,0,11,244,0,0,0,47,240,0,0,38,255,192,0,0,127,255,64,0,0,127,253,0,0,0,42,144,0,0,0, + // 0x0444 ф + 23,37,222,27,2,247,0,0,5,64,0,0,0,0,15,208,0,0,0,0,15,208,0,0,0,0,15,208,0,0,0,0,15,208,0,0,0,0,15,208,0,0,0,0,15,208,0,0,0,0,15,208,0,0,0,1,111,229,0,0,0,47,255,255,224,0,2,255,255,255,253,0,11,255,175,235,255,128,47,244,15,208,191,208,63,208,15,208,31,240,191,128,15,208,11,244,255,0,15,208,3,252,255,0,15,208,3,252,255,0,15,208,3,252,255,0,15,208,3,252,255,0,15,208,3,252,255,0,15,208,3,252,191,64,15,208,7,248,127,192,15,208,15,244,63,224,15,208,47,240,15,253,15,209,255,192,3,255,255,255,255,64,0,191,255,255,252,0,0,11,255,255,144,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,10,128,0,0, + // 0x0445 х + 18,20,100,20,1,0,85,0,0,21,64,191,192,0,63,192,63,208,0,255,64,15,240,2,254,0,7,252,3,252,0,3,253,15,244,0,0,255,31,224,0,0,127,255,192,0,0,47,255,0,0,0,15,254,0,0,0,15,253,0,0,0,47,255,0,0,0,127,255,192,0,0,255,47,224,0,2,254,15,240,0,7,252,7,252,0,15,240,2,254,0,47,224,0,255,64,127,192,0,127,192,255,0,0,47,224, + // 0x0446 ц + 20,27,135,23,3,249,85,0,0,21,64,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,190, + // 0x0447 ч + 18,20,100,23,2,0,21,0,0,5,64,127,64,0,31,224,127,64,0,31,224,127,64,0,31,224,127,64,0,31,224,127,64,0,31,224,127,64,0,31,224,127,64,0,31,224,127,64,0,31,224,127,192,0,127,224,63,245,91,255,224,31,255,255,255,224,7,255,255,95,224,0,106,144,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224, + // 0x0448 ш + 27,20,140,33,3,0,85,0,0,84,0,1,84,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252, + // 0x0449 щ + 30,27,216,33,3,249,85,0,0,84,0,1,84,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,0,1,253,0,3,252,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,11,224, + // 0x044a ъ + 24,20,120,25,0,0,21,85,80,0,0,0,191,255,244,0,0,0,191,255,244,0,0,0,106,175,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,254,170,148,0,0,7,255,255,255,128,0,7,255,255,255,240,0,7,249,85,111,252,0,7,244,0,3,253,0,7,244,0,1,253,0,7,244,0,1,253,0,7,244,0,2,253,0,7,244,0,11,252,0,7,255,255,255,244,0,7,255,255,255,208,0,7,255,255,249,0, + // 0x044b ы + 23,20,120,29,3,0,85,0,0,0,1,84,255,0,0,0,3,252,255,0,0,0,3,252,255,0,0,0,3,252,255,0,0,0,3,252,255,0,0,0,3,252,255,0,0,0,3,252,255,0,0,0,3,252,255,170,164,0,3,252,255,255,255,208,3,252,255,255,255,248,3,252,255,85,111,253,3,252,255,0,1,254,3,252,255,0,0,255,3,252,255,0,0,255,3,252,255,0,1,254,3,252,255,0,7,253,3,252,255,255,255,252,3,252,255,255,255,224,3,252,255,255,254,64,3,252, + // 0x044c ь + 17,20,100,22,3,0,85,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,170,169,0,0,255,255,255,244,0,255,255,255,254,0,255,85,91,255,64,255,0,0,191,128,255,0,0,63,192,255,0,0,63,192,255,0,0,127,128,255,0,1,255,64,255,255,255,254,0,255,255,255,248,0,255,255,255,128,0, + // 0x044d э + 15,21,84,18,1,255,6,170,64,0,127,255,253,0,127,255,255,64,62,86,255,208,0,0,47,240,0,0,11,244,0,0,7,248,0,0,3,252,5,85,87,252,11,255,255,252,11,255,255,252,6,170,171,252,0,0,3,252,0,0,3,252,0,0,11,244,0,0,15,240,144,0,127,224,255,239,255,192,255,255,254,0,127,255,228,0,0,84,0,0, + // 0x044e ю + 26,21,147,31,3,255,85,0,0,6,169,0,0,255,0,0,191,255,224,0,255,0,3,255,255,252,0,255,0,15,254,91,254,0,255,0,47,240,0,255,64,255,0,63,192,0,63,192,255,0,127,128,0,63,192,255,0,127,64,0,47,208,255,170,255,64,0,31,224,255,255,255,0,0,31,224,255,255,255,0,0,31,224,255,170,255,0,0,31,224,255,0,191,64,0,31,208,255,0,127,128,0,47,208,255,0,63,192,0,63,192,255,0,63,208,0,127,128,255,0,31,244,1,255,0,255,0,11,255,255,253,0,255,0,2,255,255,244,0,255,0,0,111,255,128,0,0,0,0,0,80,0,0, + // 0x044f я + 18,20,100,20,0,0,0,1,85,85,64,0,191,255,255,224,3,255,255,255,224,11,254,170,175,224,15,240,0,31,224,31,208,0,31,224,31,208,0,31,224,31,208,0,31,224,15,240,0,31,224,11,255,149,111,224,3,255,255,255,224,0,127,255,255,224,0,31,229,111,224,0,63,192,31,224,0,255,0,31,224,2,254,0,31,224,3,252,0,31,224,15,244,0,31,224,47,224,0,31,224,127,192,0,31,224, + // 0x0450 ѐ + 255, + // 0x0451 ё + 17,28,140,21,2,255,0,80,1,64,0,3,248,15,208,0,3,252,15,224,0,2,248,15,208,0,0,80,1,0,0,0,0,0,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x0452 ђ + 255, + // 0x0453 ѓ + 255, + // 0x0454 є + 15,21,84,18,2,255,0,6,170,64,0,255,255,248,7,255,255,244,31,254,86,240,63,224,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,85,85,64,255,255,255,128,255,255,255,128,255,170,170,64,255,0,0,0,255,0,0,0,191,64,0,0,63,192,0,0,47,244,0,36,15,255,255,248,3,255,255,248,0,127,255,224,0,0,84,0, + // 0x0455 ѕ + 255, + // 0x0456 і + 4,27,27,10,3,0,104,255,255,255,40,0,0,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x0457 ї + 11,27,81,10,255,0,4,0,80,63,1,252,127,66,252,63,1,252,4,0,16,0,0,0,0,0,0,0,85,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0, + // 0x0458 ј + 255, + // 0x0459 љ + 255, + // 0x045a њ + 255, + // 0x045b ћ + 255, + // 0x045c ќ + 255, + // 0x045d ѝ + 255, + // 0x045e ў + 255, + // 0x045f џ + 255, + // 0x0460 Ѡ + 255, + // 0x0461 ѡ + 255, + // 0x0462 Ѣ + 255, + // 0x0463 ѣ + 255, + // 0x0464 Ѥ + 255, + // 0x0465 ѥ + 255, + // 0x0466 Ѧ + 255, + // 0x0467 ѧ + 255, + // 0x0468 Ѩ + 255, + // 0x0469 ѩ + 255, + // 0x046a Ѫ + 255, + // 0x046b ѫ + 255, + // 0x046c Ѭ + 255, + // 0x046d ѭ + 255, + // 0x046e Ѯ + 255, + // 0x046f ѯ + 255, + // 0x0470 Ѱ + 255, + // 0x0471 ѱ + 255, + // 0x0472 Ѳ + 255, + // 0x0473 ѳ + 255, + // 0x0474 Ѵ + 255, + // 0x0475 ѵ + 255, + // 0x0476 Ѷ + 255, + // 0x0477 ѷ + 255, + // 0x0478 Ѹ + 255, + // 0x0479 ѹ + 255, + // 0x047a Ѻ + 255, + // 0x047b ѻ + 255, + // 0x047c Ѽ + 255, + // 0x047d ѽ + 255, + // 0x047e Ѿ + 255, + // 0x047f ѿ + 255, + // 0x0480 Ҁ + 255, + // 0x0481 ҁ + 255, + // 0x0482 ҂ + 255, + // 0x0483 ҃ + 255, + // 0x0484 ҄ + 255, + // 0x0485 ҅ + 255, + // 0x0486 ҆ + 255, + // 0x0487 ҇ + 255, + // 0x0488 ҈ + 255, + // 0x0489 ҉ + 255, + // 0x048a Ҋ + 255, + // 0x048b ҋ + 255, + // 0x048c Ҍ + 255, + // 0x048d ҍ + 255, + // 0x048e Ҏ + 255, + // 0x048f ҏ + 255, + // 0x0490 Ґ + 16,31,124,20,3,0,0,0,0,191,0,0,0,191,0,0,0,191,0,0,0,191,0,0,0,191,106,170,170,255,191,255,255,255,191,255,255,255,191,234,170,170,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0, + // 0x0491 ґ + 13,25,100,16,3,0,0,0,63,128,0,0,63,128,0,0,63,128,0,0,63,128,0,0,63,128,85,85,127,128,255,255,255,128,255,255,255,128,255,170,170,64,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Greek_26.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Greek_26.cpp new file mode 100644 index 000000000000..fcb06f5a101e --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Greek_26.cpp @@ -0,0 +1,178 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Greek 36pt, capital 'A' height: 26px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 +extern const uint8_t NotoSans_Medium_Greek_26[9565] = { + 130,26,134,3,206,3,34,247, // unifont_t + // 0x0386 Ά + 26,26,182,26,0,0,15,244,0,127,128,0,0,31,240,0,255,192,0,0,47,192,0,255,224,0,0,63,128,2,255,240,0,0,127,0,3,251,244,0,0,189,0,7,243,248,0,0,0,0,11,242,252,0,0,0,0,15,224,253,0,0,0,0,31,192,255,0,0,0,0,63,192,191,0,0,0,0,63,128,63,128,0,0,0,191,0,63,192,0,0,0,255,0,31,208,0,0,1,253,0,15,224,0,0,2,252,0,11,240,0,0,3,255,255,255,244,0,0,7,255,255,255,252,0,0,15,255,255,255,252,0,0,15,250,170,170,254,0,0,47,208,0,0,255,0,0,63,192,0,0,191,64,0,127,128,0,0,127,128,0,255,0,0,0,63,192,0,255,0,0,0,47,208,2,254,0,0,0,15,240,3,252,0,0,0,15,240, + // 0x0387 · + 255, + // 0x0388 Έ + 25,26,182,27,0,0,15,244,10,170,170,170,64,31,240,15,255,255,255,64,47,192,15,255,255,255,64,63,128,15,250,170,170,64,127,0,15,240,0,0,0,189,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,255,255,255,0,0,0,15,255,255,255,0,0,0,15,255,255,255,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,245,85,85,0,0,0,15,255,255,255,64,0,0,15,255,255,255,64,0,0,15,255,255,255,64, + // 0x0389 Ή + 30,26,208,33,0,0,15,244,10,160,0,0,10,160,31,240,15,240,0,0,15,240,47,192,15,240,0,0,15,240,63,128,15,240,0,0,15,240,127,0,15,240,0,0,15,240,189,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,255,255,255,255,240,0,0,15,255,255,255,255,240,0,0,15,255,255,255,255,240,0,0,15,245,85,85,95,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240, + // 0x038a Ί + 19,26,130,20,0,0,15,244,106,170,164,31,240,127,255,248,47,192,63,255,244,63,128,2,254,0,127,0,1,254,0,189,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,31,255,224,0,0,127,255,248,0,0,127,255,248, + // 0x038b ΋ + 255, + // 0x038c Ό + 31,27,216,33,0,255,15,244,0,6,255,249,0,0,31,240,0,191,255,255,208,0,47,192,3,255,255,255,248,0,63,128,15,255,149,111,255,0,127,0,63,244,0,2,255,128,189,0,127,208,0,0,127,192,0,0,255,128,0,0,63,224,0,1,255,0,0,0,15,240,0,2,254,0,0,0,15,244,0,3,253,0,0,0,11,248,0,3,252,0,0,0,7,248,0,3,252,0,0,0,7,252,0,3,252,0,0,0,7,252,0,3,252,0,0,0,7,252,0,3,252,0,0,0,7,252,0,3,252,0,0,0,7,248,0,3,253,0,0,0,11,248,0,2,254,0,0,0,15,244,0,1,255,0,0,0,15,240,0,0,255,64,0,0,47,224,0,0,191,192,0,0,127,208,0,0,63,240,0,1,255,128,0,0,31,254,64,27,255,0,0,0,7,255,255,255,252,0,0,0,0,255,255,255,224,0,0,0,0,27,255,254,0,0,0,0,0,0,21,64,0,0, + // 0x038d ΍ + 255, + // 0x038e Ύ + 29,26,208,29,0,0,15,244,106,128,0,0,42,128,31,240,63,192,0,0,127,128,47,192,31,224,0,0,255,0,63,128,15,244,0,2,254,0,127,0,7,252,0,3,252,0,189,0,3,253,0,11,248,0,0,0,1,255,0,15,240,0,0,0,0,255,64,47,208,0,0,0,0,63,192,63,192,0,0,0,0,47,208,191,64,0,0,0,0,15,240,255,0,0,0,0,0,11,246,252,0,0,0,0,0,3,255,248,0,0,0,0,0,2,255,240,0,0,0,0,0,0,255,224,0,0,0,0,0,0,127,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0, + // 0x038f Ώ + 31,26,208,31,0,0,15,244,0,27,255,228,0,0,31,240,1,255,255,255,128,0,47,192,11,255,255,255,240,0,63,128,47,254,85,191,252,0,127,0,127,224,0,7,255,0,189,0,255,128,0,0,255,128,0,2,255,0,0,0,127,192,0,3,253,0,0,0,63,208,0,7,252,0,0,0,31,240,0,7,248,0,0,0,15,240,0,11,248,0,0,0,15,240,0,11,244,0,0,0,15,240,0,11,244,0,0,0,15,240,0,11,244,0,0,0,15,240,0,7,248,0,0,0,15,240,0,3,252,0,0,0,15,224,0,3,252,0,0,0,31,208,0,2,253,0,0,0,63,192,0,0,255,0,0,0,127,128,0,0,127,128,0,0,255,0,0,0,47,208,0,3,252,0,0,0,11,244,0,15,240,0,0,5,87,254,0,127,213,80,0,15,255,255,0,191,255,244,0,15,255,255,0,191,255,244,0,15,255,255,0,191,255,244, + // 0x0390 ΐ + 255, + // 0x0391 Α + 24,26,156,24,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x0392 Β + 19,26,130,24,3,0,106,170,169,64,0,191,255,255,248,0,191,255,255,255,64,191,170,175,255,192,191,64,0,127,224,191,64,0,47,240,191,64,0,15,240,191,64,0,15,240,191,64,0,31,224,191,64,0,63,208,191,64,1,255,128,191,255,255,254,0,191,255,255,224,0,191,255,255,255,0,191,64,5,255,208,191,64,0,47,240,191,64,0,15,244,191,64,0,7,248,191,64,0,7,248,191,64,0,11,248,191,64,0,15,244,191,64,0,47,240,191,64,22,255,224,191,255,255,255,192,191,255,255,254,0,191,255,255,144,0, + // 0x0393 Γ + 14,26,104,18,3,0,106,170,170,160,191,255,255,240,191,255,255,240,191,170,170,160,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0, + // 0x0394 Δ + 23,26,156,23,0,0,0,0,31,224,0,0,0,0,63,240,0,0,0,0,127,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,252,255,0,0,0,3,252,127,0,0,0,3,244,63,128,0,0,11,240,47,192,0,0,15,224,31,208,0,0,31,208,15,224,0,0,63,192,11,240,0,0,63,128,7,248,0,0,191,0,3,252,0,0,255,0,2,253,0,1,253,0,0,254,0,3,252,0,0,255,0,3,248,0,0,127,64,11,244,0,0,63,192,15,240,0,0,47,192,31,224,0,0,31,224,47,192,0,0,15,240,63,213,85,85,95,244,127,255,255,255,255,252,191,255,255,255,255,252,191,255,255,255,255,252, + // 0x0395 Ε + 15,26,104,20,3,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x0396 Ζ + 19,26,130,21,1,0,106,170,170,170,160,127,255,255,255,240,127,255,255,255,240,42,170,170,191,240,0,0,0,63,192,0,0,0,255,64,0,0,2,255,0,0,0,3,252,0,0,0,15,244,0,0,0,47,224,0,0,0,63,192,0,0,0,255,64,0,0,2,254,0,0,0,3,252,0,0,0,15,244,0,0,0,47,224,0,0,0,127,192,0,0,0,255,64,0,0,2,254,0,0,0,7,252,0,0,0,15,244,0,0,0,47,224,0,0,0,127,213,85,85,80,255,255,255,255,244,255,255,255,255,244,255,255,255,255,244, + // 0x0397 Η + 21,26,156,27,3,0,106,0,0,0,106,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,255,255,255,255,64,191,255,255,255,255,64,191,255,255,255,255,64,191,85,85,85,191,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64, + // 0x0398 Θ + 24,27,162,28,2,255,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,66,170,170,128,255,255,67,255,255,208,255,255,67,255,255,208,255,255,66,170,170,128,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x0399 Ι + 11,26,78,13,1,0,106,170,160,191,255,244,127,255,240,2,254,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,47,255,208,191,255,244,191,255,244, + // 0x039a Κ + 20,26,130,23,3,0,106,0,0,2,168,191,64,0,15,244,191,64,0,63,224,191,64,0,191,128,191,64,2,255,0,191,64,7,252,0,191,64,31,240,0,191,64,63,192,0,191,64,255,64,0,191,67,253,0,0,191,79,248,0,0,191,111,240,0,0,191,255,244,0,0,191,255,252,0,0,191,247,254,0,0,191,208,255,64,0,191,64,191,192,0,191,64,63,240,0,191,64,15,248,0,191,64,7,252,0,191,64,2,255,0,191,64,0,255,128,191,64,0,63,208,191,64,0,47,240,191,64,0,15,248,191,64,0,3,253, + // 0x039b Λ + 23,26,156,23,0,0,0,0,47,208,0,0,0,0,63,240,0,0,0,0,191,240,0,0,0,0,255,244,0,0,0,1,254,252,0,0,0,2,253,252,0,0,0,3,248,254,0,0,0,7,240,191,0,0,0,11,240,127,64,0,0,15,224,63,128,0,0,31,192,47,192,0,0,63,192,31,208,0,0,63,128,15,224,0,0,191,0,11,240,0,0,255,0,7,244,0,0,254,0,3,252,0,2,252,0,2,252,0,3,252,0,1,253,0,7,248,0,0,255,0,11,240,0,0,191,0,15,240,0,0,127,128,31,224,0,0,63,192,47,192,0,0,47,208,63,192,0,0,31,224,127,128,0,0,15,240,255,0,0,0,11,244, + // 0x039c Μ + 27,26,182,33,3,0,106,160,0,0,0,42,164,191,244,0,0,0,127,248,191,252,0,0,0,191,248,191,252,0,0,0,255,248,191,253,0,0,1,255,248,191,191,0,0,3,247,248,191,127,0,0,3,243,248,191,63,128,0,11,227,248,191,47,192,0,15,211,248,191,31,208,0,31,195,248,191,15,224,0,47,131,248,191,11,240,0,63,67,248,191,3,244,0,127,3,248,191,3,248,0,254,3,248,191,1,252,0,252,3,248,191,0,253,2,252,3,248,191,0,255,3,244,3,248,191,0,127,7,240,3,248,191,0,63,75,224,3,248,191,0,47,207,208,3,248,191,0,31,239,192,3,248,191,0,15,255,128,3,248,191,0,11,255,0,3,248,191,0,7,255,0,3,248,191,0,3,254,0,3,248,191,0,2,252,0,3,248, + // 0x039d Ν + 22,26,156,28,3,0,106,128,0,0,10,144,191,240,0,0,15,224,191,244,0,0,15,224,191,252,0,0,15,224,191,254,0,0,15,224,191,255,64,0,15,224,190,127,192,0,15,224,191,63,224,0,15,224,191,15,240,0,15,224,191,11,252,0,15,224,191,3,253,0,15,224,191,1,255,0,15,224,191,0,191,128,15,224,191,0,63,208,15,224,191,0,31,240,15,224,191,0,15,248,15,224,191,0,3,253,15,224,191,0,2,255,15,224,191,0,0,255,143,224,191,0,0,127,207,224,191,0,0,47,255,224,191,0,0,15,255,224,191,0,0,7,255,224,191,0,0,3,255,224,191,0,0,0,255,224,191,0,0,0,191,224, + // 0x039e Ξ + 19,26,130,23,2,0,42,170,170,170,144,63,255,255,255,224,63,255,255,255,224,42,170,170,170,144,0,0,0,0,0,0,0,0,0,0,0,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,255,255,255,0,11,255,255,255,0,11,255,255,255,0,1,85,85,85,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,80,255,255,255,255,244,255,255,255,255,244,255,255,255,255,244, + // 0x039f Ο + 24,27,162,28,2,255,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x03a0 Π + 20,26,130,27,3,0,106,170,170,170,170,191,255,255,255,255,191,255,255,255,255,191,234,170,170,255,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191,191,64,0,0,191, + // 0x03a1 Ρ + 17,26,130,22,3,0,106,170,165,0,0,191,255,255,224,0,191,255,255,252,0,191,170,191,255,0,191,64,2,255,128,191,64,0,127,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,127,192,191,64,0,255,128,191,64,27,255,0,191,255,255,253,0,191,255,255,240,0,191,255,254,64,0,191,84,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0, + // 0x03a2 ΢ + 255, + // 0x03a3 Σ + 19,26,130,21,1,0,106,170,170,170,160,127,255,255,255,240,127,255,255,255,240,127,250,170,170,160,31,240,0,0,0,11,252,0,0,0,2,255,0,0,0,0,255,128,0,0,0,63,224,0,0,0,15,244,0,0,0,7,253,0,0,0,1,255,0,0,0,0,191,64,0,0,0,255,0,0,0,3,252,0,0,0,11,244,0,0,0,47,224,0,0,0,127,192,0,0,0,255,0,0,0,3,252,0,0,0,15,244,0,0,0,47,224,0,0,0,127,213,85,85,80,255,255,255,255,244,255,255,255,255,244,255,255,255,255,244, + // 0x03a4 Τ + 20,26,130,20,0,0,106,170,170,170,170,191,255,255,255,255,191,255,255,255,255,106,170,255,170,169,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0, + // 0x03a5 Υ + 21,26,156,21,0,0,170,64,0,0,106,128,127,192,0,0,255,64,63,208,0,1,255,0,31,240,0,3,252,0,11,244,0,7,248,0,3,252,0,15,240,0,2,253,0,31,224,0,0,255,0,63,192,0,0,191,128,127,128,0,0,63,192,255,0,0,0,47,226,253,0,0,0,15,243,252,0,0,0,7,255,244,0,0,0,3,255,240,0,0,0,1,255,208,0,0,0,0,255,128,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0, + // 0x03a6 Φ + 27,27,189,31,2,255,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,2,254,0,0,0,0,11,255,255,255,128,0,0,191,255,255,255,248,0,7,255,255,255,255,255,64,15,254,65,253,6,255,208,63,240,1,253,0,47,240,127,192,1,253,0,15,244,191,64,1,253,0,7,252,255,0,1,253,0,3,252,254,0,1,253,0,2,252,254,0,1,253,0,2,252,254,0,1,253,0,2,252,255,0,1,253,0,3,252,255,0,1,253,0,3,252,191,128,1,253,0,11,244,63,208,1,253,0,31,240,31,248,1,253,0,191,208,11,255,230,254,111,255,128,1,255,255,255,255,253,0,0,47,255,255,255,224,0,0,1,107,255,165,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,0,0,0,0,0, + // 0x03a7 Χ + 22,26,156,22,0,0,42,128,0,0,42,128,47,224,0,0,191,64,15,244,0,1,255,0,7,252,0,3,252,0,2,254,0,11,248,0,0,255,0,15,240,0,0,127,192,47,192,0,0,47,208,127,128,0,0,15,240,255,0,0,0,7,250,253,0,0,0,2,255,248,0,0,0,0,255,240,0,0,0,0,191,208,0,0,0,0,255,240,0,0,0,2,255,244,0,0,0,3,255,252,0,0,0,15,241,254,0,0,0,31,208,255,64,0,0,63,192,63,192,0,0,191,64,47,224,0,1,254,0,15,244,0,3,252,0,7,252,0,11,244,0,2,254,0,31,240,0,0,255,0,63,192,0,0,127,192,191,128,0,0,63,224, + // 0x03a8 Ψ + 24,26,156,30,3,0,170,0,10,160,0,170,255,0,15,240,0,255,255,0,15,240,0,255,255,0,15,240,0,255,255,0,15,240,0,255,255,0,15,240,0,255,255,0,15,240,0,255,255,0,15,240,0,255,255,0,15,240,0,255,191,0,15,240,0,255,191,0,15,240,0,255,191,64,15,240,0,254,127,128,15,240,1,253,63,192,15,240,3,252,47,224,15,240,11,248,15,253,15,240,127,240,3,255,255,255,255,208,0,255,255,255,255,0,0,27,255,255,228,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0, + // 0x03a9 Ω + 25,26,182,26,1,0,0,1,191,254,64,0,0,0,31,255,255,248,0,0,0,191,255,255,255,0,0,3,255,229,91,255,192,0,11,254,0,0,127,240,0,15,248,0,0,31,244,0,47,240,0,0,11,252,0,63,192,0,0,3,253,0,127,192,0,0,2,254,0,191,128,0,0,1,255,0,191,64,0,0,0,255,0,255,64,0,0,0,255,0,191,64,0,0,0,255,0,191,64,0,0,0,255,0,191,64,0,0,0,255,0,127,128,0,0,1,254,0,63,192,0,0,2,253,0,47,208,0,0,3,252,0,15,240,0,0,7,244,0,7,244,0,0,15,224,0,2,253,0,0,63,192,0,0,191,64,0,255,0,0,85,127,224,7,253,85,0,255,255,240,11,255,255,64,255,255,240,11,255,255,64,255,255,240,11,255,255,64, + // 0x03aa Ϊ + 255, + // 0x03ab Ϋ + 255, + // 0x03ac ά + 20,29,145,23,2,255,0,0,47,224,0,0,0,63,192,0,0,0,127,128,0,0,0,191,0,0,0,0,253,0,0,0,1,248,0,0,0,0,0,0,0,0,0,0,0,0,0,26,160,5,64,2,255,254,15,208,11,255,255,207,208,31,254,91,255,208,63,224,0,255,208,127,192,0,127,208,191,64,0,63,208,255,0,0,47,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,47,208,191,64,0,63,208,127,192,0,127,208,63,240,1,255,224,15,255,255,239,255,7,255,255,139,255,0,191,253,3,255,0,5,64,0,20, + // 0x03ad έ + 15,29,116,17,1,255,0,0,63,224,0,0,63,192,0,0,127,64,0,0,191,0,0,0,252,0,0,1,248,0,0,0,0,0,0,0,0,0,0,26,233,64,2,255,255,248,11,255,255,252,31,249,86,244,47,208,0,16,47,192,0,0,47,192,0,0,31,224,0,0,11,254,149,0,1,255,254,0,2,255,254,0,31,249,84,0,63,192,0,0,127,128,0,0,127,64,0,0,127,128,0,0,63,224,0,24,47,255,255,248,11,255,255,248,1,255,255,224,0,1,84,0, + // 0x03ae ή + 17,37,185,22,3,247,0,3,253,0,0,0,7,248,0,0,0,15,240,0,0,0,15,208,0,0,0,31,192,0,0,0,47,0,0,0,0,0,0,0,0,0,0,0,0,0,84,1,170,64,0,252,47,255,240,0,253,191,255,252,0,255,254,91,254,0,255,224,1,255,0,255,128,0,255,64,255,64,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,42,64, + // 0x03af ί + 9,29,87,13,3,255,7,252,0,11,248,0,15,240,0,31,208,0,47,128,0,63,0,0,0,0,0,0,0,0,85,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,255,0,0,255,0,0,255,64,0,127,255,192,63,255,192,11,255,192,0,84,0, + // 0x03b0 ΰ + 255, + // 0x03b1 α + 20,21,105,23,2,255,0,26,160,5,64,2,255,254,15,208,11,255,255,207,208,31,254,91,255,208,63,224,0,255,208,127,192,0,127,208,191,64,0,63,208,255,0,0,47,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,47,208,191,64,0,63,208,127,192,0,127,208,63,240,1,255,224,15,255,255,239,255,7,255,255,139,255,0,191,253,3,255,0,5,64,0,20, + // 0x03b2 β + 18,37,185,22,3,247,0,5,148,0,0,1,255,255,192,0,11,255,255,244,0,47,254,175,252,0,63,208,3,254,0,191,128,0,255,0,255,0,0,255,0,255,0,0,191,0,255,0,0,255,0,255,0,0,255,0,255,0,1,253,0,255,0,7,248,0,255,11,255,208,0,255,15,254,0,0,255,15,255,244,0,255,0,7,253,0,255,0,0,255,64,255,0,0,63,192,255,0,0,47,192,255,0,0,47,208,255,0,0,31,208,255,0,0,47,208,255,0,0,63,192,255,0,0,127,192,255,208,2,255,64,255,255,255,254,0,255,255,255,248,0,255,127,255,144,0,255,1,80,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,170,0,0,0,0, + // 0x03b3 γ + 18,28,140,19,0,248,85,0,0,5,80,191,0,0,15,240,127,128,0,15,240,63,192,0,15,240,47,192,0,15,240,31,224,0,15,224,15,240,0,15,224,11,240,0,31,208,3,248,0,47,192,3,252,0,63,192,1,252,0,63,128,0,254,0,127,0,0,255,0,254,0,0,127,1,253,0,0,63,131,252,0,0,47,203,240,0,0,31,239,224,0,0,15,255,192,0,0,11,255,0,0,0,7,252,0,0,0,3,248,0,0,0,3,248,0,0,0,3,248,0,0,0,3,248,0,0,0,3,248,0,0,0,3,248,0,0,0,3,248,0,0,0,2,164,0,0, + // 0x03b4 δ + 19,29,145,21,1,255,0,0,89,64,0,0,11,255,254,0,0,63,255,255,208,0,255,230,191,208,0,255,0,11,192,1,253,0,0,0,1,253,0,0,0,1,255,0,0,0,0,255,192,0,0,0,63,248,0,0,0,15,255,64,0,0,11,255,240,0,0,191,255,253,0,3,255,66,255,64,15,248,0,191,192,31,224,0,47,224,63,192,0,15,240,63,128,0,11,244,127,64,0,7,244,127,64,0,7,248,127,64,0,7,244,127,128,0,11,244,63,192,0,15,240,63,224,0,31,240,15,248,0,191,208,7,255,255,255,64,1,255,255,253,0,0,47,255,224,0,0,0,84,0,0, + // 0x03b5 ε + 15,21,84,17,1,255,0,26,233,64,2,255,255,248,11,255,255,252,31,249,86,244,47,208,0,16,47,192,0,0,47,192,0,0,31,224,0,0,11,254,149,0,1,255,254,0,2,255,254,0,31,249,84,0,63,192,0,0,127,128,0,0,127,64,0,0,127,128,0,0,63,224,0,24,47,255,255,248,11,255,255,248,1,255,255,224,0,1,84,0, + // 0x03b6 ζ + 15,36,144,17,2,248,21,85,85,84,63,255,255,248,63,255,255,248,42,169,95,244,0,0,31,224,0,0,127,192,0,0,255,0,0,3,253,0,0,11,248,0,0,31,224,0,0,63,192,0,0,255,64,0,2,254,0,0,7,252,0,0,15,240,0,0,47,208,0,0,63,192,0,0,127,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,0,191,208,0,0,63,249,0,0,31,255,248,0,7,255,255,192,0,111,255,240,0,1,191,244,0,0,11,248,0,0,3,248,0,0,3,244,0,0,7,240,0,0,15,240,0,0,31,208,0,0,5,64, + // 0x03b7 η + 17,29,145,22,3,247,84,1,170,64,0,252,47,255,240,0,253,191,255,252,0,255,254,91,254,0,255,224,1,255,0,255,128,0,255,64,255,64,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,255,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,42,64, + // 0x03b8 θ + 18,29,145,22,2,255,0,5,148,0,0,0,127,255,128,0,2,255,255,240,0,11,254,175,252,0,31,240,2,254,0,47,192,0,191,0,63,128,0,63,128,127,64,0,63,192,191,0,0,47,192,255,0,0,31,208,255,0,0,31,208,255,0,0,31,224,255,85,85,95,224,255,255,255,255,224,255,255,255,255,224,255,170,170,175,224,255,0,0,15,224,255,0,0,31,224,255,0,0,31,208,191,0,0,31,208,191,0,0,47,192,63,64,0,63,192,63,192,0,127,128,47,208,0,255,0,15,244,2,254,0,7,255,175,252,0,1,255,255,240,0,0,47,255,128,0,0,0,80,0,0, + // 0x03b9 ι + 9,21,63,13,3,255,85,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,255,0,0,255,0,0,255,64,0,127,255,192,63,255,192,11,255,192,0,84,0, + // 0x03ba κ + 17,20,100,20,3,0,85,0,0,85,0,255,0,3,254,0,255,0,11,248,0,255,0,31,240,0,255,0,127,192,0,255,0,255,0,0,255,3,253,0,0,255,15,244,0,0,255,47,224,0,0,255,191,192,0,0,255,255,240,0,0,255,255,248,0,0,255,211,253,0,0,255,1,255,0,0,255,0,191,192,0,255,0,63,224,0,255,0,15,244,0,255,0,7,252,0,255,0,2,255,0,255,0,0,255,128, + // 0x03bb λ + 20,29,145,19,0,255,89,64,0,0,0,255,248,0,0,0,255,255,0,0,0,170,255,192,0,0,0,63,208,0,0,0,15,240,0,0,0,11,244,0,0,0,3,248,0,0,0,3,252,0,0,0,3,253,0,0,0,7,255,0,0,0,15,255,0,0,0,15,255,128,0,0,31,175,192,0,0,63,95,208,0,0,63,15,224,0,0,191,11,240,0,0,254,7,244,0,1,253,3,252,0,2,252,2,252,0,3,248,1,254,0,7,244,0,255,0,15,240,0,191,64,15,240,0,63,128,47,208,0,63,192,63,192,0,47,253,63,192,0,15,253,191,128,0,7,253,0,0,0,0,80, + // 0x03bc μ + 19,29,145,23,3,247,85,0,0,21,64,255,0,0,63,128,255,0,0,63,128,255,0,0,63,128,255,0,0,63,128,255,0,0,63,128,255,0,0,63,128,255,0,0,63,128,255,0,0,63,128,255,0,0,63,128,255,0,0,63,128,255,0,0,63,128,255,0,0,127,128,255,0,0,191,128,255,0,0,255,128,255,64,1,255,128,255,208,7,255,192,255,255,255,255,252,255,255,255,31,252,254,127,248,11,252,254,1,64,0,80,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,170,0,0,0,0, + // 0x03bd ν + 18,20,100,19,0,0,85,0,0,5,80,191,0,0,15,240,127,128,0,15,240,63,192,0,15,240,47,192,0,15,240,31,224,0,15,224,15,240,0,15,224,11,240,0,31,208,3,248,0,47,192,3,252,0,63,192,1,252,0,63,128,0,254,0,127,0,0,255,0,255,0,0,127,1,253,0,0,63,131,252,0,0,47,203,240,0,0,31,239,224,0,0,15,255,192,0,0,11,255,0,0,0,7,252,0,0, + // 0x03be ξ + 15,36,144,18,2,248,21,85,85,84,63,255,255,252,63,255,255,252,41,191,233,84,1,253,0,0,15,224,0,0,31,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,47,208,0,0,15,248,0,0,7,255,255,240,0,127,255,244,1,255,255,244,15,253,0,0,63,208,0,0,127,128,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,0,191,192,0,0,63,249,0,0,31,255,248,0,3,255,255,192,0,111,255,240,0,1,191,248,0,0,11,248,0,0,3,248,0,0,3,248,0,0,7,244,0,0,15,240,0,0,15,208,0,0,5,64, + // 0x03bf ο + 18,21,105,22,2,255,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x03c0 π + 24,21,126,25,0,255,21,85,85,85,85,84,127,255,255,255,255,254,127,255,255,255,255,254,42,191,170,170,255,169,0,127,64,0,254,0,0,127,64,0,254,0,0,127,64,0,254,0,0,127,64,0,254,0,0,127,64,0,254,0,0,127,64,0,254,0,0,127,64,0,254,0,0,127,64,0,254,0,0,127,64,0,254,0,0,127,64,0,254,0,0,127,64,0,254,0,0,127,64,0,255,0,0,127,64,0,255,0,0,127,64,0,255,236,0,127,64,0,127,252,0,127,64,0,31,252,0,0,0,0,1,64, + // 0x03c1 ρ + 18,29,145,22,2,247,0,6,169,0,0,0,191,255,224,0,3,255,255,252,0,15,254,91,255,0,31,240,0,255,128,63,192,0,63,192,63,192,0,47,208,127,128,0,31,224,127,64,0,15,240,191,64,0,15,240,191,64,0,15,240,191,64,0,15,240,191,64,0,15,240,191,64,0,31,224,191,64,0,47,208,191,64,0,127,192,191,224,1,255,64,191,255,255,254,0,191,255,255,248,0,191,31,255,144,0,191,0,84,0,0,191,0,0,0,0,191,0,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,106,0,0,0,0, + // 0x03c2 ς + 15,28,112,18,2,248,0,6,170,64,0,191,255,244,7,255,255,240,15,254,155,224,63,224,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,0,191,192,0,0,63,224,0,0,47,253,0,0,11,255,248,0,2,255,255,128,0,47,255,240,0,1,191,244,0,0,11,248,0,0,3,248,0,0,3,244,0,0,7,240,0,0,15,240,0,0,31,208,0,0,5,64, + // 0x03c3 σ + 20,21,105,23,2,255,0,0,85,85,84,0,111,255,255,253,2,255,255,255,253,15,255,170,254,168,47,244,0,254,0,63,192,0,127,64,191,128,0,63,192,255,0,0,47,192,255,0,0,31,208,255,0,0,15,224,255,0,0,15,224,255,0,0,15,224,255,0,0,31,224,255,0,0,47,208,191,64,0,63,192,63,192,0,191,128,47,240,2,255,0,15,255,255,253,0,3,255,255,244,0,0,127,255,128,0,0,1,80,0,0, + // 0x03c4 τ + 17,21,105,18,0,255,21,85,85,85,64,127,255,255,255,192,127,255,255,255,192,42,175,250,170,64,0,15,224,0,0,0,15,224,0,0,0,15,224,0,0,0,15,224,0,0,0,15,224,0,0,0,15,224,0,0,0,15,224,0,0,0,15,224,0,0,0,15,224,0,0,0,15,224,0,0,0,15,224,0,0,0,15,240,0,0,0,15,244,0,0,0,11,255,175,0,0,3,255,255,0,0,0,191,255,0,0,0,5,80,0, + // 0x03c5 υ + 17,21,105,22,3,255,85,0,0,84,0,254,0,1,254,0,254,0,0,255,0,254,0,0,255,0,254,0,0,191,0,254,0,0,191,64,254,0,0,127,64,254,0,0,127,64,254,0,0,127,128,254,0,0,127,128,254,0,0,127,64,254,0,0,127,64,254,0,0,191,64,254,0,0,255,0,255,0,0,255,0,255,64,2,253,0,127,192,11,252,0,63,255,255,244,0,31,255,255,208,0,2,255,254,0,0,0,5,64,0,0, + // 0x03c6 φ + 23,37,222,27,2,247,0,0,5,64,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,1,111,229,0,0,0,47,255,255,224,0,2,255,255,255,253,0,11,255,175,235,255,128,47,244,31,208,127,208,63,192,31,208,31,240,191,128,31,208,11,248,255,0,31,208,3,252,255,0,31,208,3,252,255,0,31,208,3,252,255,0,31,208,2,252,255,0,31,208,3,252,255,0,31,208,3,252,191,64,31,208,7,248,127,192,31,208,11,244,63,224,31,208,47,240,15,248,31,208,191,192,3,255,255,255,255,64,0,191,255,255,252,0,0,11,255,255,144,0,0,0,31,224,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,31,208,0,0,0,0,10,128,0,0, + // 0x03c7 χ + 21,29,174,22,1,247,101,0,0,0,21,0,255,192,0,0,255,0,255,224,0,1,253,0,175,244,0,3,252,0,3,252,0,11,244,0,2,253,0,15,224,0,0,255,0,47,192,0,0,191,64,63,128,0,0,63,192,191,0,0,0,47,209,253,0,0,0,15,243,252,0,0,0,11,251,240,0,0,0,3,255,224,0,0,0,2,255,192,0,0,0,0,255,64,0,0,0,0,255,0,0,0,0,3,255,128,0,0,0,7,255,192,0,0,0,15,255,224,0,0,0,47,207,240,0,0,0,127,71,248,0,0,0,255,3,252,0,0,2,252,1,254,0,0,3,248,0,255,0,0,15,240,0,127,192,0,31,208,0,63,250,64,63,192,0,15,255,128,191,0,0,7,255,128,169,0,0,0,105,0, + // 0x03c8 ψ + 23,37,222,28,3,247,0,0,21,64,0,0,0,0,63,128,0,0,0,0,63,128,0,0,0,0,63,128,0,0,0,0,63,128,0,0,0,0,63,128,0,0,0,0,63,128,0,0,0,0,63,128,0,0,84,0,63,128,5,64,253,0,63,128,31,208,253,0,63,128,15,224,253,0,63,128,15,240,253,0,63,128,11,240,253,0,63,128,11,240,253,0,63,128,7,240,253,0,63,128,7,244,253,0,63,128,7,244,253,0,63,128,3,244,253,0,63,128,7,244,254,0,63,128,7,244,254,0,63,128,7,240,255,0,63,128,15,240,191,0,63,128,15,224,127,128,63,128,63,208,63,244,63,130,255,128,15,255,255,255,255,0,3,255,255,255,248,0,0,111,255,255,128,0,0,0,127,192,0,0,0,0,63,128,0,0,0,0,63,128,0,0,0,0,63,128,0,0,0,0,63,128,0,0,0,0,63,128,0,0,0,0,63,128,0,0,0,0,63,128,0,0,0,0,42,64,0,0, + // 0x03c9 ω + 26,21,147,29,2,255,1,84,0,0,1,80,0,3,248,0,0,3,248,0,15,240,0,0,1,253,0,31,208,0,0,0,255,0,47,192,0,0,0,127,64,63,128,0,0,0,63,128,127,64,0,0,0,63,192,191,0,3,248,0,47,192,191,0,3,248,0,47,192,191,0,3,248,0,47,192,191,0,3,248,0,31,208,191,0,3,248,0,31,192,191,0,3,248,0,47,192,191,0,3,248,0,47,192,127,64,7,252,0,63,192,63,192,11,252,0,127,64,47,224,31,190,1,255,0,15,255,255,47,255,253,0,3,255,254,15,255,248,0,0,191,248,3,255,208,0,0,5,0,0,20,0,0, + // 0x03ca ϊ + 255, + // 0x03cb ϋ + 255, + // 0x03cc ό + 18,29,145,22,2,255,0,0,31,240,0,0,0,47,224,0,0,0,63,192,0,0,0,127,64,0,0,0,190,0,0,0,0,252,0,0,0,0,0,0,0,0,0,0,0,0,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x03cd ύ + 17,29,145,22,3,255,0,0,255,128,0,0,0,255,0,0,0,2,253,0,0,0,3,248,0,0,0,3,240,0,0,0,7,208,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,84,0,254,0,1,254,0,254,0,0,255,0,254,0,0,255,0,254,0,0,191,0,254,0,0,191,64,254,0,0,127,64,254,0,0,127,64,254,0,0,127,128,254,0,0,127,128,254,0,0,127,64,254,0,0,127,64,254,0,0,191,64,254,0,0,255,0,255,0,0,255,0,255,64,2,253,0,127,192,11,252,0,63,255,255,244,0,31,255,255,208,0,2,255,254,0,0,0,5,64,0,0, + // 0x03ce ώ + 26,29,203,29,2,255,0,0,0,47,240,0,0,0,0,0,63,208,0,0,0,0,0,63,128,0,0,0,0,0,191,0,0,0,0,0,0,253,0,0,0,0,0,0,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,84,0,0,1,80,0,3,248,0,0,3,248,0,15,240,0,0,1,253,0,31,208,0,0,0,255,0,47,192,0,0,0,127,64,63,128,0,0,0,63,128,127,64,0,0,0,63,192,191,0,3,248,0,47,192,191,0,3,248,0,47,192,191,0,3,248,0,47,192,191,0,3,248,0,31,208,191,0,3,248,0,31,192,191,0,3,248,0,47,192,191,0,3,248,0,47,192,127,64,7,252,0,63,192,63,192,11,252,0,127,64,47,224,31,190,1,255,0,15,255,255,47,255,253,0,3,255,254,15,255,248,0,0,191,248,3,255,208,0,0,5,0,0,20,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Katakana_26.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Katakana_26.cpp new file mode 100644 index 000000000000..8683316b6767 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Katakana_26.cpp @@ -0,0 +1,238 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Katakana 36pt, capital 'A' height: 26px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 +extern const uint8_t NotoSans_Medium_Katakana_26[14440] = { + 162,26,160,48,104,136,34,247, // unifont_t + // 0x30a0 ゠ + 160,48,16,8,32,36,10,10,85,85,85,85,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,85,85,85,85, + // 0x30a1 ァ + 161,48,26,25,175,36,6,252,85,85,85,85,85,85,0,255,255,255,255,255,255,128,255,255,255,255,255,255,208,255,255,255,255,255,255,128,0,0,0,0,0,255,0,0,0,0,0,2,253,0,0,0,31,192,11,248,0,0,0,47,208,31,240,0,0,0,31,192,127,192,0,0,0,31,194,255,64,0,0,0,31,195,253,0,0,0,0,47,192,180,0,0,0,0,47,192,0,0,0,0,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,191,0,0,0,0,0,0,255,0,0,0,0,0,2,253,0,0,0,0,0,11,252,0,0,0,0,0,47,244,0,0,0,0,0,255,224,0,0,0,0,11,255,128,0,0,0,0,7,253,0,0,0,0,0,0,240,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30a2 ア + 162,48,30,29,232,36,4,254,191,255,255,255,255,255,255,64,191,255,255,255,255,255,255,208,191,255,255,255,255,255,255,208,106,85,85,85,85,85,255,128,0,0,0,0,0,1,255,0,0,0,0,0,0,3,253,0,0,0,0,0,0,15,248,0,0,0,2,253,0,47,240,0,0,0,2,253,0,191,192,0,0,0,2,253,2,255,64,0,0,0,2,252,31,253,0,0,0,0,2,252,47,244,0,0,0,0,2,252,11,208,0,0,0,0,2,252,1,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,63,208,0,0,0,0,0,0,191,192,0,0,0,0,0,2,255,64,0,0,0,0,0,11,254,0,0,0,0,0,0,127,252,0,0,0,0,0,6,255,240,0,0,0,0,0,7,255,128,0,0,0,0,0,0,253,0,0,0,0,0,0,0,32,0,0,0,0,0,0, + // 0x30a3 ィ + 163,48,25,25,175,36,4,253,0,0,0,0,0,60,0,0,0,0,0,0,255,0,0,0,0,0,3,255,64,0,0,0,0,15,253,0,0,0,0,0,127,244,0,0,0,0,2,255,192,0,0,0,0,31,254,0,0,0,0,0,191,244,0,0,0,0,11,255,192,0,0,0,0,191,255,128,0,0,0,27,255,255,128,0,0,6,255,255,191,128,0,0,191,255,228,127,128,0,0,127,254,0,127,128,0,0,63,144,0,127,128,0,0,4,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0, + // 0x30a4 イ + 164,48,28,30,210,36,3,255,0,0,0,0,0,0,32,0,0,0,0,0,0,252,0,0,0,0,0,3,255,0,0,0,0,0,15,255,0,0,0,0,0,63,248,0,0,0,0,1,255,224,0,0,0,0,7,255,128,0,0,0,0,63,253,0,0,0,0,1,255,240,0,0,0,0,31,255,128,0,0,0,0,191,253,0,0,0,0,27,255,252,0,0,0,1,255,255,252,0,0,0,47,255,251,252,0,0,27,255,255,67,252,0,0,255,255,244,3,252,0,0,191,254,0,3,252,0,0,63,144,0,3,252,0,0,36,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,7,252,0,0,0,0,0,7,252,0,0,0,0,0,7,252,0,0, + // 0x30a5 ゥ + 165,48,24,27,162,36,6,252,0,0,15,240,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,21,85,95,229,85,80,191,255,255,255,255,254,127,255,255,255,255,255,127,255,255,255,255,255,127,0,0,0,1,254,127,0,0,0,1,254,127,0,0,0,2,253,127,0,0,0,3,252,127,0,0,0,3,252,127,0,0,0,11,244,127,0,0,0,15,240,0,0,0,0,47,224,0,0,0,0,127,192,0,0,0,0,255,128,0,0,0,3,255,0,0,0,0,31,253,0,0,0,0,191,244,0,0,0,27,255,208,0,0,6,255,255,0,0,0,15,255,244,0,0,0,3,255,128,0,0,0,0,228,0,0,0,0,0,0,0,0,0, + // 0x30a6 ウ + 166,48,28,32,224,36,4,254,0,0,1,254,0,0,0,0,0,1,255,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,85,85,85,255,85,85,96,127,255,255,255,255,255,254,127,255,255,255,255,255,255,127,255,255,255,255,255,254,127,64,0,0,0,2,254,127,64,0,0,0,3,253,127,64,0,0,0,3,252,127,64,0,0,0,7,252,127,64,0,0,0,11,248,127,64,0,0,0,15,244,127,64,0,0,0,15,240,127,64,0,0,0,47,224,21,0,0,0,0,63,208,0,0,0,0,0,191,192,0,0,0,0,0,255,64,0,0,0,0,3,255,0,0,0,0,0,15,252,0,0,0,0,0,63,244,0,0,0,0,1,255,224,0,0,0,0,11,255,128,0,0,0,0,191,254,0,0,0,0,27,255,244,0,0,0,3,255,255,128,0,0,0,1,255,253,0,0,0,0,0,127,144,0,0,0,0,0,20,0,0,0,0, + // 0x30a7 ェ + 167,48,26,21,147,36,5,255,5,85,85,85,85,85,0,15,255,255,255,255,255,0,15,255,255,255,255,255,0,15,255,255,255,255,255,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,191,255,255,255,255,255,224,191,255,255,255,255,255,224,191,255,255,255,255,255,224,105,85,85,85,85,85,144, + // 0x30a8 エ + 168,48,30,24,192,36,3,1,15,255,255,255,255,255,255,0,15,255,255,255,255,255,255,0,15,255,255,255,255,255,255,0,10,170,170,191,234,170,170,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,254,170,170,170,170,170,170,240, + // 0x30a9 ォ + 169,48,25,26,182,36,6,253,0,0,0,10,160,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,11,224,0,0,0,0,0,11,224,0,0,21,0,0,11,224,1,64,63,255,255,255,255,255,192,63,255,255,255,255,255,192,63,255,255,255,255,255,192,0,0,0,191,240,0,0,0,0,1,255,240,0,0,0,0,3,255,240,0,0,0,0,15,255,240,0,0,0,0,63,231,240,0,0,0,0,255,135,240,0,0,0,7,255,7,240,0,0,0,47,252,7,240,0,0,0,255,240,7,240,0,0,7,255,128,7,240,0,0,127,253,0,7,240,0,0,255,244,0,7,240,0,0,63,128,0,7,240,0,0,13,0,21,11,240,0,0,0,0,47,255,240,0,0,0,0,47,255,224,0,0,0,0,31,255,128,0,0, + // 0x30aa オ + 170,48,30,31,248,36,3,254,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,26,85,85,85,127,213,86,144,47,255,255,255,255,255,255,208,47,255,255,255,255,255,255,208,47,255,255,255,255,255,255,208,0,0,0,1,255,192,0,0,0,0,0,3,255,192,0,0,0,0,0,15,255,192,0,0,0,0,0,63,255,192,0,0,0,0,0,255,223,192,0,0,0,0,3,255,31,192,0,0,0,0,15,252,31,192,0,0,0,0,63,240,31,192,0,0,0,1,255,192,31,192,0,0,0,11,255,0,31,192,0,0,0,47,252,0,31,192,0,0,1,255,240,0,31,192,0,0,31,255,128,0,31,208,0,0,191,253,0,0,31,208,0,0,191,240,0,0,31,208,0,0,63,64,0,0,31,208,0,0,8,0,0,64,47,208,0,0,0,0,2,255,255,208,0,0,0,0,1,255,255,192,0,0,0,0,1,255,255,64,0,0,0,0,0,85,100,0,0,0, + // 0x30ab カ + 171,48,27,31,217,36,4,254,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,101,85,91,249,85,86,128,191,255,255,255,255,255,248,191,255,255,255,255,255,252,191,255,255,255,255,255,252,0,0,15,240,0,3,252,0,0,15,224,0,3,248,0,0,31,208,0,3,248,0,0,31,208,0,3,248,0,0,47,192,0,3,248,0,0,63,192,0,3,244,0,0,127,128,0,3,244,0,0,191,0,0,3,244,0,0,255,0,0,7,244,0,2,254,0,0,7,240,0,7,252,0,0,11,240,0,15,248,0,0,11,240,0,47,240,0,0,15,240,0,191,208,0,0,15,224,2,255,128,0,0,31,208,11,255,0,5,0,127,192,63,252,0,11,255,255,192,255,240,0,11,255,255,64,63,128,0,7,255,254,0,14,0,0,1,90,160,0,0,0,0,0,0,0,0, + // 0x30ac ガ + 172,48,31,33,8,36,3,254,0,0,0,0,0,0,1,64,0,0,0,0,0,0,11,192,0,0,3,252,0,7,195,240,0,0,3,252,0,11,209,244,0,0,3,252,0,3,240,252,0,0,3,248,0,1,244,124,0,0,3,248,0,0,252,0,0,0,3,248,0,0,116,0,0,0,3,248,0,0,0,0,127,255,255,255,255,255,244,0,127,255,255,255,255,255,253,0,127,255,255,255,255,255,252,0,37,85,91,245,85,87,252,0,0,0,11,240,0,2,252,0,0,0,15,240,0,2,252,0,0,0,15,224,0,2,252,0,0,0,31,208,0,2,252,0,0,0,47,192,0,3,252,0,0,0,63,192,0,3,248,0,0,0,127,128,0,3,248,0,0,0,191,64,0,3,248,0,0,0,255,0,0,3,244,0,0,3,254,0,0,7,244,0,0,7,252,0,0,7,240,0,0,15,248,0,0,11,240,0,0,63,240,0,0,15,240,0,0,255,192,0,0,15,240,0,3,255,64,0,0,47,224,0,31,254,0,7,234,255,208,0,191,248,0,7,255,255,192,0,127,224,0,7,255,255,64,0,15,64,0,3,255,249,0,0,0,0,0,0,0,0,0,0, + // 0x30ad キ + 173,48,29,31,248,36,4,254,0,0,27,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,47,208,0,0,0,0,0,0,31,224,0,0,0,0,0,0,15,224,0,1,128,0,0,0,15,240,22,255,192,0,0,0,11,255,255,255,192,0,0,90,255,255,255,255,208,0,255,255,255,255,255,229,0,0,255,255,255,254,64,0,0,0,255,255,151,252,0,0,0,0,185,64,2,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,254,0,0,27,0,0,0,0,255,1,175,255,0,0,0,0,255,255,255,255,64,0,1,175,255,255,255,255,64,107,255,255,255,255,250,80,0,255,255,255,255,228,0,0,0,255,255,249,127,192,0,0,0,255,164,0,63,192,0,0,0,80,0,0,47,192,0,0,0,0,0,0,31,208,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,11,244,0,0,0,0,0,0,11,248,0,0,0,0,0,0,7,252,0,0,0,0,0,0,2,64,0,0,0, + // 0x30ae ギ + 174,48,31,33,8,36,3,254,0,0,0,0,0,0,11,192,0,0,0,0,0,2,71,224,0,0,1,144,0,15,195,240,0,0,47,224,0,3,224,248,0,0,15,224,0,2,244,184,0,0,15,240,0,0,252,0,0,0,11,240,0,0,164,0,0,0,11,240,1,111,208,0,0,0,7,250,255,255,208,0,0,1,175,255,255,255,224,0,171,255,255,255,255,254,144,0,255,255,255,255,229,0,0,0,191,255,251,252,0,0,0,0,127,164,1,253,0,0,0,0,16,0,0,254,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,1,0,0,0,0,191,0,22,255,64,0,0,0,127,175,255,255,128,0,0,22,255,255,255,255,192,5,175,255,255,255,255,229,0,255,255,255,255,250,64,0,0,191,255,255,191,192,0,0,0,127,250,64,31,208,0,0,0,37,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,248,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,228,0,0,0, + // 0x30af ク + 175,48,29,33,8,36,3,253,0,0,0,116,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,255,64,0,0,0,0,0,2,254,0,0,0,0,0,0,7,252,0,0,0,0,0,0,15,252,0,1,96,0,0,0,31,255,255,255,254,0,0,0,63,255,255,255,255,128,0,0,255,255,255,255,255,0,0,2,255,0,0,2,255,0,0,11,252,0,0,3,253,0,0,47,244,0,0,3,252,0,0,191,224,0,0,11,252,0,3,255,128,0,0,15,244,0,31,254,0,0,0,31,240,0,191,244,0,0,0,63,208,0,47,208,0,0,0,191,192,0,7,0,0,0,0,255,64,0,0,0,0,0,3,255,0,0,0,0,0,0,11,252,0,0,0,0,0,0,31,244,0,0,0,0,0,0,127,224,0,0,0,0,0,1,255,192,0,0,0,0,0,11,255,0,0,0,0,0,0,63,252,0,0,0,0,0,1,255,240,0,0,0,0,0,31,255,192,0,0,0,0,1,255,254,0,0,0,0,0,111,255,240,0,0,0,0,0,191,255,64,0,0,0,0,0,47,248,0,0,0,0,0,0,11,64,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30b0 グ + 176,48,33,34,50,36,2,253,0,0,0,0,0,0,0,244,0,0,0,0,0,0,0,32,252,0,0,0,0,228,0,1,244,126,0,0,0,0,255,64,0,252,63,0,0,0,2,255,0,0,126,31,128,0,0,3,253,0,0,63,9,0,0,0,11,252,0,0,31,64,0,0,0,15,248,0,1,104,0,0,0,0,63,255,255,255,253,0,0,0,0,191,255,255,255,255,64,0,0,1,255,255,255,255,255,0,0,0,3,254,0,0,3,253,0,0,0,15,252,0,0,3,252,0,0,0,63,240,0,0,7,252,0,0,0,255,192,0,0,15,244,0,0,7,255,64,0,0,31,240,0,0,47,252,0,0,0,47,224,0,0,255,240,0,0,0,127,192,0,0,63,192,0,0,0,255,128,0,0,10,0,0,0,1,255,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,255,208,0,0,0,0,0,0,2,255,128,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,127,248,0,0,0,0,0,0,2,255,224,0,0,0,0,0,0,47,255,64,0,0,0,0,0,2,255,253,0,0,0,0,0,0,127,255,224,0,0,0,0,0,0,255,255,0,0,0,0,0,0,0,63,228,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0, + // 0x30b1 ケ + 177,48,31,32,0,36,2,254,0,0,16,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,2,254,0,0,0,0,0,0,3,254,170,170,170,170,168,0,7,255,255,255,255,255,252,0,15,255,255,255,255,255,252,0,47,255,255,255,255,255,252,0,127,192,0,15,240,0,0,0,255,128,0,15,224,0,0,3,255,0,0,31,224,0,0,11,253,0,0,31,224,0,0,47,248,0,0,47,208,0,0,191,240,0,0,63,192,0,0,47,192,0,0,63,192,0,0,2,0,0,0,127,128,0,0,0,0,0,0,255,64,0,0,0,0,0,1,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,7,252,0,0,0,0,0,0,15,248,0,0,0,0,0,0,63,240,0,0,0,0,0,0,255,208,0,0,0,0,0,3,255,128,0,0,0,0,0,15,255,0,0,0,0,0,0,191,252,0,0,0,0,0,1,255,224,0,0,0,0,0,0,47,128,0,0,0,0,0,0,5,0,0,0,0,0, + // 0x30b2 ゲ + 178,48,33,34,50,36,2,253,0,0,0,0,0,0,0,176,0,0,0,0,0,0,0,17,248,0,0,0,101,0,0,1,240,188,0,0,0,191,192,0,0,252,63,0,0,0,255,64,0,0,189,47,64,0,0,255,0,0,0,63,13,0,0,1,254,0,0,0,31,0,0,0,3,253,0,0,0,4,0,0,0,3,252,0,0,0,0,0,0,0,11,255,255,255,255,255,248,0,0,15,255,255,255,255,255,248,0,0,63,255,255,255,255,255,248,0,0,127,234,170,191,250,170,164,0,0,255,64,0,47,208,0,0,0,3,255,0,0,47,208,0,0,0,11,252,0,0,63,192,0,0,0,47,248,0,0,63,192,0,0,0,191,240,0,0,63,192,0,0,0,255,192,0,0,127,128,0,0,0,31,0,0,0,191,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,191,208,0,0,0,0,0,0,2,255,192,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,63,253,0,0,0,0,0,0,2,255,244,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0, + // 0x30b3 コ + 179,48,26,27,189,36,5,255,58,170,170,170,170,170,160,63,255,255,255,255,255,240,63,255,255,255,255,255,240,63,255,255,255,255,255,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,234,170,170,170,191,240,0,0,0,0,0,15,240,0,0,0,0,0,10,160, + // 0x30b4 ゴ + 180,48,29,34,16,36,5,254,0,0,0,0,0,0,20,0,0,0,0,0,0,16,252,0,0,0,0,0,1,244,126,0,0,0,0,0,0,252,63,0,0,0,0,0,0,189,15,128,0,0,0,0,0,63,11,128,0,0,0,0,0,47,64,0,0,0,0,0,0,8,0,0,255,255,255,255,255,255,192,0,255,255,255,255,255,255,192,0,255,255,255,255,255,255,192,0,170,170,170,170,170,191,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,255,255,255,255,255,255,192,0,255,255,255,255,255,255,192,0,255,255,255,255,255,255,192,0,254,170,170,170,170,191,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,42,128,0, + // 0x30b5 サ + 181,48,32,32,0,36,2,253,0,1,168,0,0,127,128,0,0,2,253,0,0,127,64,0,0,2,252,0,0,127,64,0,0,1,252,0,0,127,64,0,0,1,252,0,0,127,64,0,0,1,252,0,0,127,64,0,0,1,252,0,0,127,64,0,170,86,254,85,85,191,149,168,191,255,255,255,255,255,255,253,191,255,255,255,255,255,255,253,191,255,255,255,255,255,255,253,0,1,252,0,0,127,64,0,0,1,252,0,0,127,64,0,0,1,252,0,0,127,64,0,0,1,252,0,0,127,64,0,0,1,252,0,0,127,0,0,0,1,252,0,0,191,0,0,0,2,252,0,0,191,0,0,0,2,252,0,0,255,0,0,0,2,253,0,0,254,0,0,0,0,0,0,2,253,0,0,0,0,0,0,3,252,0,0,0,0,0,0,7,252,0,0,0,0,0,0,15,244,0,0,0,0,0,0,63,240,0,0,0,0,0,1,255,192,0,0,0,0,0,11,255,64,0,0,0,0,0,191,253,0,0,0,0,0,3,255,240,0,0,0,0,0,0,191,128,0,0,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30b6 ザ + 182,48,34,33,41,36,1,253,0,0,0,0,0,0,0,6,0,0,0,85,0,0,42,129,15,0,0,0,254,0,0,63,207,75,128,0,0,254,0,0,63,199,199,192,0,0,254,0,0,63,131,211,208,0,0,254,0,0,63,130,226,208,0,0,254,0,0,63,129,224,0,0,0,254,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,127,255,255,255,255,255,255,254,0,127,255,255,255,255,255,255,254,0,127,255,255,255,255,255,255,254,0,42,150,255,85,85,127,213,169,0,0,0,254,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,0,254,0,0,127,64,0,0,0,0,254,0,0,127,64,0,0,0,0,254,0,0,191,0,0,0,0,0,169,0,0,255,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,127,240,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,31,255,64,0,0,0,0,0,1,255,253,0,0,0,0,0,0,0,255,240,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,4,0,0,0,0,0, + // 0x30b7 シ + 183,48,30,29,232,36,3,255,0,2,208,0,0,0,0,0,0,7,252,0,0,0,0,0,0,15,255,128,0,0,0,0,0,2,255,240,0,0,0,0,0,0,127,253,0,0,0,0,0,0,11,253,0,0,0,0,0,0,1,248,0,0,0,0,0,0,0,32,0,0,0,0,14,0,0,0,0,0,1,64,47,208,0,0,0,0,3,192,127,252,0,0,0,0,15,208,47,255,128,0,0,0,47,240,2,255,240,0,0,0,127,208,0,127,240,0,0,1,255,128,0,11,208,0,0,3,255,0,0,1,128,0,0,31,252,0,0,0,0,0,0,127,240,0,0,0,0,0,2,255,192,0,0,0,0,0,11,255,64,0,0,0,0,0,127,252,0,0,0,0,0,2,255,240,0,0,0,0,0,31,255,128,0,0,0,0,2,255,253,0,0,0,0,0,111,255,224,0,0,0,0,31,255,255,64,0,0,0,11,255,255,244,0,0,0,0,7,255,254,64,0,0,0,0,2,255,208,0,0,0,0,0,0,228,0,0,0,0,0,0, + // 0x30b8 ジ + 184,48,31,31,248,36,3,255,0,0,0,0,0,0,1,0,0,0,0,0,0,0,31,64,0,3,192,0,0,8,15,192,0,11,248,0,0,63,7,240,0,31,255,0,0,47,66,244,0,7,255,224,0,15,192,252,0,0,191,252,0,7,224,180,0,0,31,252,0,3,240,0,0,0,2,244,0,1,128,0,0,0,0,96,0,0,0,0,29,0,0,0,0,0,2,0,63,192,0,0,0,0,11,64,191,248,0,0,0,0,31,192,63,255,64,0,0,0,63,224,7,255,224,0,0,0,255,192,0,191,224,0,0,2,255,64,0,31,192,0,0,11,254,0,0,2,64,0,0,47,248,0,0,0,0,0,0,191,224,0,0,0,0,0,3,255,128,0,0,0,0,0,31,254,0,0,0,0,0,0,191,248,0,0,0,0,0,7,255,208,0,0,0,0,0,47,255,64,0,0,0,0,6,255,248,0,0,0,0,0,191,255,208,0,0,0,0,111,255,254,0,0,0,0,15,255,255,224,0,0,0,0,15,255,254,0,0,0,0,0,3,255,144,0,0,0,0,0,2,228,0,0,0,0,0,0, + // 0x30b9 ス + 185,48,30,29,232,36,3,254,0,0,0,0,0,1,0,0,1,255,255,255,255,255,208,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,224,0,1,234,170,170,170,191,192,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,64,0,0,0,0,0,2,255,0,0,0,0,0,0,3,253,0,0,0,0,0,0,11,248,0,0,0,0,0,0,15,240,0,0,0,0,0,0,63,208,0,0,0,0,0,0,191,192,0,0,0,0,0,1,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,15,255,64,0,0,0,0,0,63,255,208,0,0,0,0,0,255,255,244,0,0,0,0,7,255,15,253,0,0,0,0,31,252,7,255,64,0,0,0,191,240,1,255,208,0,0,7,255,192,0,127,240,0,0,47,254,0,0,31,252,0,1,255,248,0,0,7,255,0,47,255,208,0,0,2,255,192,127,254,0,0,0,0,191,208,47,244,0,0,0,0,63,128,11,64,0,0,0,0,13,0,0,0,0,0,0,0,0,0, + // 0x30ba ズ + 186,48,32,35,24,36,3,253,0,0,0,0,0,0,0,64,0,0,0,0,0,0,7,208,0,0,0,0,0,11,195,240,0,0,0,0,0,7,224,248,0,0,0,0,0,2,240,188,0,0,0,0,0,0,248,61,3,170,170,170,170,175,252,0,3,255,255,255,255,255,224,0,3,255,255,255,255,255,192,0,3,255,255,255,255,255,128,0,0,0,0,0,0,255,0,0,0,0,0,0,2,254,0,0,0,0,0,0,3,253,0,0,0,0,0,0,11,252,0,0,0,0,0,0,15,244,0,0,0,0,0,0,47,224,0,0,0,0,0,0,127,192,0,0,0,0,0,0,255,64,0,0,0,0,0,2,255,0,0,0,0,0,0,7,252,0,0,0,0,0,0,31,252,0,0,0,0,0,0,127,255,0,0,0,0,0,1,255,255,192,0,0,0,0,7,255,191,240,0,0,0,0,47,252,47,252,0,0,0,0,191,240,11,255,0,0,0,3,255,192,2,255,192,0,0,47,255,0,0,191,240,0,0,255,248,0,0,47,248,0,11,255,208,0,0,15,254,0,191,255,0,0,0,3,255,64,255,248,0,0,0,0,255,128,63,192,0,0,0,0,126,0,13,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0, + // 0x30bb セ + 187,48,30,30,240,36,2,255,0,0,127,64,0,0,0,0,0,0,191,128,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,111,128,0,0,127,64,1,175,255,240,0,0,127,70,191,255,255,240,0,0,127,255,255,255,255,208,0,111,255,255,255,249,191,128,191,255,255,255,229,0,255,0,255,255,255,228,0,2,254,0,191,255,255,64,0,3,252,0,126,64,127,64,0,15,244,0,0,0,127,64,0,47,224,0,0,0,127,64,0,127,192,0,0,0,127,64,1,255,0,0,0,0,127,64,3,253,0,0,0,0,127,64,0,120,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,128,0,0,0,0,0,0,63,192,0,0,5,64,0,0,63,254,170,175,255,128,0,0,47,255,255,255,255,128,0,0,15,255,255,255,255,64,0,0,1,191,255,255,165,0, + // 0x30bc ゼ + 188,48,34,33,41,36,1,254,0,0,0,0,0,0,0,124,0,0,0,0,0,0,0,24,63,0,0,0,0,0,0,0,125,31,64,0,0,63,192,0,0,63,15,192,0,0,63,192,0,0,31,135,208,0,0,63,192,0,0,15,194,0,0,0,63,192,0,0,7,192,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,1,64,0,0,0,63,192,0,1,191,224,0,0,0,63,192,6,255,255,248,0,0,0,63,219,255,255,255,240,0,0,0,127,255,255,255,255,224,0,5,191,255,255,255,228,63,192,0,127,255,255,255,144,0,191,64,0,127,255,255,192,0,1,255,0,0,63,249,63,192,0,3,252,0,0,41,0,63,192,0,11,248,0,0,0,0,63,192,0,47,240,0,0,0,0,63,192,0,127,192,0,0,0,0,63,192,1,255,64,0,0,0,0,63,192,0,190,0,0,0,0,0,63,192,0,24,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,47,244,0,1,107,192,0,0,0,31,255,255,255,255,192,0,0,0,15,255,255,255,255,192,0,0,0,2,255,255,255,255,192,0,0,0,0,5,105,85,64,0,0, + // 0x30bd ソ + 189,48,27,28,196,36,4,255,1,0,0,0,0,7,148,47,64,0,0,0,11,252,255,192,0,0,0,11,248,63,224,0,0,0,15,244,47,240,0,0,0,15,240,15,252,0,0,0,31,240,7,253,0,0,0,47,224,3,255,0,0,0,63,208,0,255,64,0,0,63,192,0,191,192,0,0,127,128,0,63,224,0,0,255,64,0,47,64,0,1,255,0,0,8,0,0,3,254,0,0,0,0,0,7,252,0,0,0,0,0,15,248,0,0,0,0,0,47,240,0,0,0,0,0,127,208,0,0,0,0,0,255,192,0,0,0,0,3,255,0,0,0,0,0,15,253,0,0,0,0,0,127,244,0,0,0,0,2,255,208,0,0,0,0,15,255,128,0,0,0,0,191,253,0,0,0,0,11,255,240,0,0,0,0,31,255,128,0,0,0,0,7,253,0,0,0,0,0,0,208,0,0,0,0, + // 0x30be ゾ + 190,48,31,33,8,36,3,254,0,0,0,0,0,0,2,192,0,0,0,0,0,7,11,224,0,0,0,0,0,31,195,240,0,0,0,0,0,11,209,248,0,0,0,0,0,3,240,188,1,0,0,0,0,1,244,32,31,128,0,0,0,0,144,0,127,208,0,0,0,7,228,0,63,240,0,0,0,11,252,0,15,248,0,0,0,11,248,0,11,252,0,0,0,15,244,0,3,254,0,0,0,15,240,0,1,255,64,0,0,31,224,0,0,255,192,0,0,47,208,0,0,127,208,0,0,63,192,0,0,47,240,0,0,127,192,0,0,15,128,0,0,255,64,0,0,9,0,0,1,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,11,252,0,0,0,0,0,0,15,244,0,0,0,0,0,0,63,240,0,0,0,0,0,0,191,208,0,0,0,0,0,2,255,64,0,0,0,0,0,11,254,0,0,0,0,0,0,47,252,0,0,0,0,0,1,255,240,0,0,0,0,0,11,255,192,0,0,0,0,0,127,254,0,0,0,0,0,7,255,248,0,0,0,0,0,15,255,208,0,0,0,0,0,2,254,0,0,0,0,0,0,0,160,0,0,0,0,0, + // 0x30bf タ + 191,48,29,33,8,36,3,253,0,0,0,189,0,0,0,0,0,0,0,255,64,0,0,0,0,0,1,255,0,0,0,0,0,0,3,253,0,0,0,0,0,0,11,252,0,0,16,0,0,0,15,255,255,255,253,0,0,0,63,255,255,255,255,128,0,0,191,255,255,255,255,64,0,1,255,64,0,2,255,0,0,7,253,0,0,2,254,0,0,31,248,0,0,3,252,0,0,63,240,0,0,7,252,0,1,255,192,0,0,15,244,0,11,255,1,192,0,31,240,0,63,252,7,248,0,63,208,0,255,240,15,255,64,191,192,0,63,128,3,255,224,255,64,0,9,0,0,127,255,255,0,0,0,0,0,15,255,252,0,0,0,0,0,2,255,248,0,0,0,0,0,0,127,253,0,0,0,0,0,0,255,255,128,0,0,0,0,3,255,255,224,0,0,0,0,31,253,127,240,0,0,0,0,191,244,31,192,0,0,0,3,255,208,3,64,0,0,0,47,255,0,0,0,0,0,2,255,248,0,0,0,0,0,127,255,208,0,0,0,0,1,255,254,0,0,0,0,0,0,127,224,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30c0 ダ + 192,48,33,35,59,36,2,253,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,244,0,0,0,0,16,0,0,112,252,0,0,0,0,190,64,0,248,62,0,0,0,0,255,64,0,189,47,64,0,0,2,254,0,0,63,15,64,0,0,3,252,0,0,47,68,0,0,0,15,252,0,1,110,0,0,0,0,31,255,255,255,254,0,0,0,0,63,255,255,255,255,128,0,0,0,255,255,255,255,255,0,0,0,2,255,0,0,1,255,0,0,0,7,252,0,0,3,253,0,0,0,31,244,0,0,3,252,0,0,0,127,224,0,0,11,248,0,0,2,255,128,0,0,15,244,0,0,11,254,2,208,0,47,240,0,0,63,248,11,252,0,63,208,0,0,255,224,15,255,64,191,192,0,0,47,64,2,255,240,255,64,0,0,5,0,0,127,255,254,0,0,0,0,0,0,11,255,252,0,0,0,0,0,0,1,255,248,0,0,0,0,0,0,0,191,253,0,0,0,0,0,0,1,255,255,128,0,0,0,0,0,7,255,255,240,0,0,0,0,0,47,252,127,240,0,0,0,0,0,255,240,15,192,0,0,0,0,7,255,192,3,0,0,0,0,0,127,254,0,0,0,0,0,0,6,255,248,0,0,0,0,0,0,191,255,192,0,0,0,0,0,1,255,253,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0, + // 0x30c1 チ + 193,48,30,31,248,36,3,254,0,0,0,0,0,1,0,0,0,0,0,0,1,127,192,0,0,0,0,6,191,255,224,0,3,255,255,255,255,255,240,0,3,255,255,255,255,249,0,0,2,255,255,255,228,0,0,0,0,85,80,31,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,149,85,85,111,229,85,85,96,0,0,0,47,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,128,0,0,0,0,0,0,191,64,0,0,0,0,0,0,255,0,0,0,0,0,0,2,254,0,0,0,0,0,0,7,253,0,0,0,0,0,0,31,248,0,0,0,0,0,0,127,240,0,0,0,0,0,1,255,208,0,0,0,0,0,31,255,64,0,0,0,0,0,63,253,0,0,0,0,0,0,11,240,0,0,0,0,0,0,1,128,0,0,0,0,0, + // 0x30c2 ヂ + 194,48,32,31,248,36,2,253,0,0,0,0,0,27,128,0,0,0,0,0,91,255,208,0,1,85,106,191,255,255,240,0,3,255,255,255,255,255,144,96,2,255,255,255,254,64,1,244,1,255,234,111,224,0,240,188,0,0,0,15,224,0,252,62,0,0,0,15,224,0,125,47,0,0,0,15,224,0,63,8,0,0,0,15,224,0,31,0,0,0,0,15,224,0,0,0,85,85,85,95,229,85,85,96,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,31,208,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,128,0,0,0,0,0,0,255,64,0,0,0,0,0,1,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,11,252,0,0,0,0,0,0,47,244,0,0,0,0,0,0,191,240,0,0,0,0,0,7,255,192,0,0,0,0,0,47,255,0,0,0,0,0,0,31,248,0,0,0,0,0,0,3,208,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30c3 ッ + 195,48,25,24,168,36,6,253,0,0,27,0,0,0,0,0,0,127,64,0,52,0,30,0,63,128,0,127,128,255,0,47,192,0,191,64,127,64,31,208,0,191,0,63,192,15,240,0,255,0,47,208,11,240,1,254,0,15,224,3,244,2,253,0,15,240,3,128,3,252,0,7,244,0,0,11,244,0,3,208,0,0,15,240,0,0,0,0,0,47,224,0,0,0,0,0,127,192,0,0,0,0,0,255,64,0,0,0,0,3,254,0,0,0,0,0,15,252,0,0,0,0,0,127,240,0,0,0,0,2,255,192,0,0,0,0,31,255,0,0,0,0,0,255,252,0,0,0,0,31,255,224,0,0,0,0,63,255,64,0,0,0,0,15,248,0,0,0,0,0,3,64,0,0,0,0, + // 0x30c4 ツ + 196,48,30,29,232,36,3,255,0,0,0,96,0,0,0,0,0,0,11,244,0,0,4,0,5,0,7,248,0,0,47,144,191,0,3,252,0,0,47,224,191,128,2,253,0,0,63,208,63,192,0,255,0,0,63,192,47,208,0,191,0,0,127,128,15,240,0,127,128,0,191,64,15,244,0,63,192,0,255,0,7,248,0,47,192,1,254,0,3,252,0,25,0,3,253,0,2,253,0,0,0,3,252,0,1,249,0,0,0,11,248,0,0,64,0,0,0,15,240,0,0,0,0,0,0,63,224,0,0,0,0,0,0,127,192,0,0,0,0,0,0,255,64,0,0,0,0,0,3,255,0,0,0,0,0,0,15,252,0,0,0,0,0,0,63,244,0,0,0,0,0,1,255,208,0,0,0,0,0,11,255,64,0,0,0,0,0,63,253,0,0,0,0,0,2,255,244,0,0,0,0,0,47,255,192,0,0,0,0,7,255,254,0,0,0,0,0,11,255,240,0,0,0,0,0,2,255,64,0,0,0,0,0,0,180,0,0,0,0,0, + // 0x30c5 ヅ + 197,48,33,33,41,36,2,254,0,0,0,0,0,0,1,244,0,0,0,0,0,0,2,224,252,0,0,0,0,0,0,3,240,126,0,0,0,0,0,0,0,252,63,0,0,0,0,96,0,0,189,31,64,0,0,3,248,0,0,62,4,0,2,0,3,252,0,0,16,0,0,127,128,1,253,0,0,4,0,0,63,192,0,255,0,0,47,208,0,47,208,0,191,0,0,63,208,0,15,240,0,127,128,0,63,192,0,15,244,0,63,192,0,127,192,0,7,248,0,47,208,0,191,128,0,3,252,0,31,208,0,255,0,0,2,253,0,9,0,1,255,0,0,0,255,0,0,0,3,253,0,0,0,253,0,0,0,7,252,0,0,0,64,0,0,0,15,244,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,11,253,0,0,0,0,0,0,0,47,248,0,0,0,0,0,0,0,255,224,0,0,0,0,0,0,7,255,192,0,0,0,0,0,0,47,254,0,0,0,0,0,0,1,255,248,0,0,0,0,0,0,31,255,208,0,0,0,0,0,2,255,255,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,52,0,0,0,0,0,0, + // 0x30c6 テ + 198,48,30,31,248,36,3,253,0,101,85,85,85,85,96,0,0,127,255,255,255,255,240,0,0,127,255,255,255,255,240,0,0,127,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,240,191,255,255,255,255,255,255,240,191,255,255,255,255,255,255,240,85,85,85,95,245,85,85,80,0,0,0,15,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,128,0,0,0,0,0,0,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,7,253,0,0,0,0,0,0,31,252,0,0,0,0,0,0,127,240,0,0,0,0,0,2,255,192,0,0,0,0,0,31,255,0,0,0,0,0,0,11,252,0,0,0,0,0,0,1,208,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30c7 デ + 199,48,32,35,24,36,3,253,0,0,0,0,0,0,0,80,0,0,0,0,0,0,2,240,0,0,0,0,0,1,160,252,0,0,0,0,0,2,244,189,0,0,0,0,0,0,252,63,0,255,255,255,255,253,125,31,0,255,255,255,255,253,63,0,0,255,255,255,255,253,25,0,0,85,85,85,85,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,224,255,255,255,255,255,255,255,224,255,255,255,255,255,255,255,224,165,85,85,111,229,85,85,144,0,0,0,47,208,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,128,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,11,252,0,0,0,0,0,0,31,248,0,0,0,0,0,0,127,240,0,0,0,0,0,2,255,192,0,0,0,0,0,31,255,0,0,0,0,0,0,47,252,0,0,0,0,0,0,7,224,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30c8 ト + 200,48,20,30,150,36,11,255,21,64,0,0,0,127,192,0,0,0,127,128,0,0,0,127,128,0,0,0,63,128,0,0,0,63,128,0,0,0,63,128,0,0,0,63,128,0,0,0,63,128,0,0,0,63,128,0,0,0,63,224,0,0,0,63,255,128,0,0,63,255,253,0,0,63,255,255,228,0,63,175,255,255,128,63,129,191,255,248,63,128,7,255,254,63,128,0,47,252,63,128,0,2,252,63,128,0,0,36,63,128,0,0,0,63,128,0,0,0,63,128,0,0,0,63,128,0,0,0,63,128,0,0,0,63,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,192,0,0,0,127,192,0,0,0, + // 0x30c9 ド + 201,48,22,30,180,36,10,254,85,64,0,0,44,0,191,128,0,0,190,0,127,128,0,116,63,0,127,128,0,252,31,192,127,64,0,126,11,208,127,64,0,63,67,208,127,64,0,15,193,0,127,64,0,11,128,0,127,64,0,0,0,0,127,64,0,0,0,0,127,224,0,0,0,0,127,255,128,0,0,0,127,255,253,0,0,0,127,255,255,228,0,0,127,175,255,255,128,0,127,65,191,255,248,0,127,64,7,255,253,0,127,64,0,47,252,0,127,64,0,2,248,0,127,64,0,0,32,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0, + // 0x30ca ナ + 202,48,31,31,248,36,3,254,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,191,255,255,255,255,255,255,244,191,255,255,255,255,255,255,244,191,255,255,255,255,255,255,244,106,170,170,175,250,170,170,160,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,47,208,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,0,0,0,0,0,0,3,255,0,0,0,0,0,0,11,252,0,0,0,0,0,0,47,248,0,0,0,0,0,0,191,240,0,0,0,0,0,3,255,192,0,0,0,0,0,47,255,0,0,0,0,0,0,127,252,0,0,0,0,0,0,15,224,0,0,0,0,0,0,2,64,0,0,0,0,0, + // 0x30cb ニ + 203,48,29,23,184,36,3,1,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0, + // 0x30cc ヌ + 204,48,25,30,210,36,5,253,0,0,0,0,0,20,0,47,255,255,255,255,253,0,47,255,255,255,255,255,128,47,255,255,255,255,255,64,26,170,170,170,170,255,0,0,0,0,0,2,254,0,0,0,0,0,3,253,0,0,0,0,0,3,252,0,0,0,0,0,11,248,0,0,56,0,0,15,240,0,0,255,64,0,31,224,0,2,255,240,0,63,208,0,0,127,254,0,191,192,0,0,11,255,192,255,64,0,0,1,255,251,254,0,0,0,0,47,255,252,0,0,0,0,7,255,244,0,0,0,0,0,255,248,0,0,0,0,1,255,255,0,0,0,0,7,255,255,208,0,0,0,47,253,255,244,0,0,0,255,244,47,254,0,0,7,255,208,7,255,128,0,127,255,0,1,255,64,7,255,248,0,0,126,0,191,255,208,0,0,8,0,255,254,0,0,0,0,0,63,224,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30cd ネ + 205,48,31,32,0,36,3,254,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,5,85,85,127,213,86,128,0,15,255,255,255,255,255,240,0,15,255,255,255,255,255,252,0,15,255,255,255,255,255,244,0,0,0,0,0,0,191,208,0,0,0,0,0,1,255,128,0,0,0,0,0,7,254,0,0,0,0,0,0,31,248,0,0,0,0,0,0,191,240,0,0,0,0,0,3,255,128,0,0,0,0,0,31,254,0,0,0,0,0,0,191,244,0,0,0,0,0,11,255,208,29,0,0,0,0,191,255,192,127,192,0,0,27,255,255,192,255,248,0,6,255,255,191,192,47,255,64,255,255,248,47,192,7,255,224,255,255,64,47,192,0,191,248,127,228,0,47,192,0,31,240,41,0,0,47,192,0,2,192,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0, + // 0x30ce ノ + 206,48,24,28,168,36,5,255,0,0,0,0,0,249,0,0,0,0,1,255,0,0,0,0,2,255,0,0,0,0,3,253,0,0,0,0,7,252,0,0,0,0,11,248,0,0,0,0,15,244,0,0,0,0,31,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,255,128,0,0,0,1,255,0,0,0,0,3,254,0,0,0,0,11,252,0,0,0,0,31,244,0,0,0,0,63,240,0,0,0,0,255,192,0,0,0,3,255,64,0,0,0,15,254,0,0,0,0,127,248,0,0,0,2,255,224,0,0,0,15,255,128,0,0,0,191,254,0,0,0,11,255,244,0,0,0,191,255,192,0,0,0,191,253,0,0,0,0,47,224,0,0,0,0,10,0,0,0,0,0, + // 0x30cf ハ + 207,48,32,26,208,36,2,0,0,0,20,0,0,116,0,0,0,0,63,208,7,252,0,0,0,0,63,192,3,253,0,0,0,0,63,192,1,255,0,0,0,0,127,128,0,255,64,0,0,0,191,64,0,127,192,0,0,0,255,0,0,63,192,0,0,0,255,0,0,47,224,0,0,1,254,0,0,15,240,0,0,2,253,0,0,11,248,0,0,3,252,0,0,7,252,0,0,3,252,0,0,3,253,0,0,11,248,0,0,2,255,0,0,15,240,0,0,0,255,0,0,31,240,0,0,0,255,128,0,63,208,0,0,0,127,192,0,127,192,0,0,0,63,192,0,255,128,0,0,0,63,224,1,255,0,0,0,0,31,240,3,254,0,0,0,0,15,244,11,252,0,0,0,0,15,248,15,248,0,0,0,0,11,252,63,240,0,0,0,0,7,252,127,208,0,0,0,0,3,254,27,192,0,0,0,0,2,228,0,0,0,0,0,0,0,0, + // 0x30d0 バ + 208,48,33,30,14,36,2,0,0,0,0,0,0,0,0,244,0,0,0,0,0,0,0,96,252,0,0,0,0,0,0,1,248,62,0,0,0,0,0,0,0,189,47,64,0,0,0,0,0,16,63,15,64,0,0,57,64,6,240,47,68,0,0,0,127,192,11,248,14,0,0,0,0,127,128,3,252,0,0,0,0,0,191,64,2,254,0,0,0,0,0,255,0,0,255,0,0,0,0,0,255,0,0,191,128,0,0,0,1,254,0,0,63,192,0,0,0,2,253,0,0,63,208,0,0,0,3,252,0,0,31,240,0,0,0,3,252,0,0,15,244,0,0,0,7,248,0,0,11,248,0,0,0,15,244,0,0,3,252,0,0,0,15,240,0,0,3,253,0,0,0,47,224,0,0,1,255,0,0,0,63,192,0,0,0,255,0,0,0,127,192,0,0,0,191,128,0,0,255,64,0,0,0,127,192,0,1,255,0,0,0,0,63,208,0,3,253,0,0,0,0,47,224,0,11,252,0,0,0,0,31,240,0,31,244,0,0,0,0,15,244,0,63,240,0,0,0,0,15,248,0,191,208,0,0,0,0,11,252,0,191,128,0,0,0,0,7,252,0,7,0,0,0,0,0,3,64,0, + // 0x30d1 パ + 209,48,33,31,23,36,2,255,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,31,255,0,0,0,0,0,0,0,61,15,64,0,0,0,0,0,0,120,3,192,0,0,0,0,0,16,120,3,192,0,0,62,64,7,240,61,11,128,0,0,127,192,11,248,31,255,0,0,0,127,128,3,252,7,248,0,0,0,191,64,2,254,0,0,0,0,0,255,0,0,255,0,0,0,0,0,255,0,0,191,128,0,0,0,1,254,0,0,63,192,0,0,0,2,253,0,0,63,208,0,0,0,3,252,0,0,31,240,0,0,0,3,252,0,0,15,244,0,0,0,7,248,0,0,11,248,0,0,0,15,244,0,0,3,252,0,0,0,15,240,0,0,3,253,0,0,0,47,224,0,0,1,255,0,0,0,63,208,0,0,0,255,0,0,0,127,192,0,0,0,255,64,0,0,255,128,0,0,0,127,192,0,1,255,0,0,0,0,63,192,0,3,254,0,0,0,0,63,208,0,7,252,0,0,0,0,47,240,0,15,248,0,0,0,0,31,240,0,47,240,0,0,0,0,15,244,0,127,224,0,0,0,0,11,248,0,255,192,0,0,0,0,7,252,0,47,64,0,0,0,0,3,228,0,1,0,0,0,0,0,1,0,0, + // 0x30d2 ヒ + 210,48,23,30,180,36,8,255,170,0,0,0,0,0,255,0,0,0,0,0,254,0,0,0,0,0,254,0,0,0,0,0,254,0,0,0,0,0,254,0,0,0,0,64,254,0,0,0,11,192,254,0,0,0,191,224,254,0,0,31,255,240,254,0,6,255,255,208,254,1,255,255,248,0,255,191,255,255,64,0,255,255,255,208,0,0,255,255,244,0,0,0,255,249,0,0,0,0,255,64,0,0,0,0,254,0,0,0,0,0,254,0,0,0,0,0,254,0,0,0,0,0,254,0,0,0,0,0,254,0,0,0,0,0,254,0,0,0,0,0,254,0,0,0,0,0,254,0,0,0,0,0,255,0,0,0,0,0,255,208,0,0,86,188,191,255,255,255,255,252,63,255,255,255,255,252,11,255,255,255,255,252,0,90,170,170,149,0, + // 0x30d3 ビ + 211,48,27,32,224,36,6,255,0,0,0,0,0,1,128,0,0,0,0,0,11,208,0,0,0,0,11,195,240,191,64,0,0,7,209,248,191,64,0,0,3,240,252,191,64,0,0,1,248,120,191,64,0,0,0,188,0,127,0,0,0,0,16,0,127,0,0,0,1,192,0,127,0,0,0,31,224,0,127,0,0,1,255,240,0,127,0,0,111,255,244,0,127,0,27,255,255,128,0,127,75,255,255,244,0,0,127,255,255,254,0,0,0,127,255,255,128,0,0,0,127,255,208,0,0,0,0,127,228,0,0,0,0,0,127,0,0,0,0,0,0,127,0,0,0,0,0,0,127,0,0,0,0,0,0,127,0,0,0,0,0,0,127,0,0,0,0,0,0,127,0,0,0,0,0,0,127,0,0,0,0,0,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,127,208,0,0,0,89,0,63,255,170,171,255,254,0,47,255,255,255,255,254,0,11,255,255,255,255,254,0,0,111,255,255,254,164,0, + // 0x30d4 ピ + 212,48,28,31,217,36,6,255,0,0,0,0,0,11,224,0,0,0,0,0,127,252,191,64,0,0,0,244,46,191,64,0,0,1,224,15,191,64,0,0,1,224,15,191,64,0,0,0,244,46,127,0,0,0,0,127,252,127,0,0,0,2,219,224,127,0,0,0,47,224,0,127,0,0,6,255,240,0,127,0,0,191,255,240,0,127,0,111,255,254,64,0,127,95,255,255,224,0,0,127,255,255,249,0,0,0,127,255,254,64,0,0,0,127,255,144,0,0,0,0,127,208,0,0,0,0,0,127,0,0,0,0,0,0,127,0,0,0,0,0,0,127,0,0,0,0,0,0,127,0,0,0,0,0,0,127,0,0,0,0,0,0,127,0,0,0,0,0,0,127,0,0,0,0,0,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,127,208,0,0,0,90,0,63,255,170,171,255,254,0,47,255,255,255,255,254,0,11,255,255,255,255,254,0,0,111,255,255,254,164,0, + // 0x30d5 フ + 213,48,26,28,196,36,5,254,255,255,255,255,255,255,128,255,255,255,255,255,255,240,255,255,255,255,255,255,240,170,170,170,170,170,191,240,0,0,0,0,0,47,224,0,0,0,0,0,63,208,0,0,0,0,0,63,192,0,0,0,0,0,127,192,0,0,0,0,0,191,64,0,0,0,0,0,255,0,0,0,0,0,1,255,0,0,0,0,0,3,253,0,0,0,0,0,7,252,0,0,0,0,0,15,248,0,0,0,0,0,47,240,0,0,0,0,0,127,208,0,0,0,0,1,255,192,0,0,0,0,7,255,0,0,0,0,0,31,253,0,0,0,0,0,191,244,0,0,0,0,7,255,208,0,0,0,0,63,255,64,0,0,0,6,255,252,0,0,0,1,191,255,224,0,0,0,1,255,255,64,0,0,0,0,127,244,0,0,0,0,0,46,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30d6 ブ + 214,48,31,34,16,36,4,254,0,0,0,0,0,0,2,64,0,0,0,0,0,9,15,192,0,0,0,0,0,63,11,208,0,0,0,0,0,31,131,240,0,0,0,0,0,15,193,248,0,0,0,0,0,3,240,244,186,170,170,170,170,171,208,0,255,255,255,255,255,255,240,0,255,255,255,255,255,255,248,0,255,255,255,255,255,255,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,224,0,0,0,0,0,0,47,208,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,3,253,0,0,0,0,0,0,7,252,0,0,0,0,0,0,15,248,0,0,0,0,0,0,63,240,0,0,0,0,0,0,191,208,0,0,0,0,0,2,255,128,0,0,0,0,0,11,255,0,0,0,0,0,0,63,252,0,0,0,0,0,1,255,240,0,0,0,0,0,11,255,192,0,0,0,0,0,191,255,0,0,0,0,0,31,255,248,0,0,0,0,1,255,255,208,0,0,0,0,0,191,253,0,0,0,0,0,0,47,208,0,0,0,0,0,0,8,0,0,0,0,0,0, + // 0x30d7 プ + 215,48,32,33,8,36,4,254,0,0,0,0,0,0,47,128,0,0,0,0,0,0,255,244,0,0,0,0,0,2,240,124,0,0,0,0,0,3,192,60,0,0,0,0,0,3,192,45,186,170,170,170,170,171,192,60,191,255,255,255,255,255,240,188,191,255,255,255,255,255,255,244,191,255,255,255,255,255,255,128,0,0,0,0,0,15,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,47,224,0,0,0,0,0,0,63,208,0,0,0,0,0,0,127,192,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,64,0,0,0,0,0,1,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,7,252,0,0,0,0,0,0,15,248,0,0,0,0,0,0,47,240,0,0,0,0,0,0,191,208,0,0,0,0,0,2,255,192,0,0,0,0,0,11,255,0,0,0,0,0,0,47,252,0,0,0,0,0,0,255,240,0,0,0,0,0,11,255,192,0,0,0,0,0,191,255,0,0,0,0,0,31,255,248,0,0,0,0,1,255,255,208,0,0,0,0,0,191,253,0,0,0,0,0,0,47,208,0,0,0,0,0,0,8,0,0,0,0,0,0, + // 0x30d8 ヘ + 216,48,32,23,184,36,2,1,0,0,2,248,0,0,0,0,0,0,11,255,0,0,0,0,0,0,47,255,192,0,0,0,0,0,191,255,240,0,0,0,0,1,255,175,252,0,0,0,0,3,254,7,255,0,0,0,0,15,252,1,255,192,0,0,0,63,240,0,127,240,0,0,0,191,208,0,47,248,0,0,1,255,128,0,11,254,0,0,7,255,0,0,3,255,128,0,31,252,0,0,0,255,208,0,127,244,0,0,0,63,244,0,191,224,0,0,0,15,253,0,63,192,0,0,0,7,255,0,15,0,0,0,0,2,255,192,1,0,0,0,0,0,191,240,0,0,0,0,0,0,63,252,0,0,0,0,0,0,15,254,0,0,0,0,0,0,7,255,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,180,0,0,0,0,0,0,0,16, + // 0x30d9 ベ + 217,48,32,27,216,36,2,0,0,0,0,0,0,0,7,64,0,0,0,0,0,0,31,192,0,0,0,0,0,30,15,224,0,0,0,0,0,63,3,240,0,0,2,244,0,31,130,248,0,0,15,254,0,15,208,252,0,0,63,255,128,7,240,96,0,0,255,255,224,3,244,0,0,2,255,191,248,1,128,0,0,7,253,11,254,0,0,0,0,31,244,2,255,128,0,0,0,63,224,0,191,224,0,0,0,255,192,0,47,244,0,0,3,255,0,0,15,253,0,0,11,253,0,0,3,255,64,0,47,248,0,0,0,255,208,0,191,240,0,0,0,127,240,0,255,192,0,0,0,31,252,0,63,64,0,0,0,11,255,0,15,0,0,0,0,2,255,192,0,0,0,0,0,0,255,240,0,0,0,0,0,0,63,248,0,0,0,0,0,0,31,254,0,0,0,0,0,0,7,254,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,240,0,0,0,0,0,0,0,0, + // 0x30da ペ + 218,48,32,27,216,36,2,0,0,0,0,0,0,0,190,0,0,0,0,0,0,3,255,208,0,0,0,0,0,15,130,240,0,0,0,0,0,15,0,180,0,0,2,244,0,30,0,120,0,0,15,254,0,15,0,180,0,0,63,255,128,15,129,240,0,0,255,255,224,3,255,208,0,2,255,191,248,0,190,64,0,7,253,11,254,0,0,0,0,31,244,2,255,128,0,0,0,63,224,0,191,224,0,0,0,255,192,0,47,244,0,0,3,255,0,0,15,253,0,0,11,253,0,0,3,255,64,0,63,248,0,0,0,255,208,0,255,240,0,0,0,127,240,0,191,192,0,0,0,31,252,0,63,64,0,0,0,11,255,0,14,0,0,0,0,2,255,192,0,0,0,0,0,0,255,240,0,0,0,0,0,0,63,248,0,0,0,0,0,0,31,254,0,0,0,0,0,0,7,254,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,240,0,0,0,0,0,0,0,0, + // 0x30db ホ + 219,48,31,32,0,36,3,254,0,0,0,5,64,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,63,255,255,255,255,255,255,224,63,255,255,255,255,255,255,224,63,255,255,255,255,255,255,224,41,85,85,111,229,85,85,144,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,4,0,31,208,0,64,0,0,31,64,31,208,7,208,0,0,63,192,31,208,15,240,0,0,127,128,31,208,7,252,0,0,255,0,31,208,3,253,0,2,254,0,31,208,0,255,0,7,252,0,31,208,0,191,128,15,244,0,31,208,0,63,208,63,224,0,31,208,0,31,240,255,192,0,31,208,0,15,244,255,0,0,31,208,0,7,244,45,0,0,31,208,0,3,128,0,0,0,31,208,0,0,0,0,0,64,47,208,0,0,0,0,0,191,255,208,0,0,0,0,0,191,255,192,0,0,0,0,0,191,255,128,0,0,0,0,0,21,84,0,0,0,0, + // 0x30dc ボ + 220,48,32,33,8,36,2,254,0,0,0,0,0,0,0,16,0,0,0,0,0,0,1,244,0,0,0,15,224,2,240,252,0,0,0,15,240,1,244,126,0,0,0,15,240,0,252,47,0,0,0,15,240,0,126,15,0,0,0,15,224,0,62,0,0,0,0,15,224,0,0,0,26,85,85,95,245,85,85,160,63,255,255,255,255,255,255,240,63,255,255,255,255,255,255,240,63,255,255,255,255,255,255,240,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,10,0,15,224,0,144,0,0,15,208,15,224,11,240,0,0,47,208,15,224,7,252,0,0,127,192,15,224,3,254,0,0,255,64,15,224,0,255,0,2,254,0,15,224,0,127,192,7,252,0,15,224,0,63,208,15,244,0,15,224,0,31,240,63,224,0,15,224,0,15,248,255,192,0,15,224,0,3,252,127,0,0,15,224,0,2,244,9,0,0,15,224,0,0,128,0,0,0,15,224,0,0,0,0,0,105,111,224,0,0,0,0,0,127,255,224,0,0,0,0,0,63,255,208,0,0,0,0,0,63,255,64,0,0,0, + // 0x30dd ポ + 221,48,32,34,16,36,2,254,0,0,0,0,0,0,11,144,0,0,0,0,0,0,127,248,0,0,0,0,0,0,244,124,0,0,0,15,240,0,224,30,0,0,0,15,240,1,224,30,0,0,0,15,240,0,224,30,0,0,0,15,224,0,244,124,0,0,0,15,224,0,127,248,0,0,0,15,224,0,11,144,26,85,85,95,245,85,85,160,63,255,255,255,255,255,255,240,63,255,255,255,255,255,255,240,63,255,255,255,255,255,255,240,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,10,0,15,224,0,144,0,0,15,208,15,224,11,240,0,0,47,208,15,224,7,252,0,0,127,192,15,224,3,254,0,0,255,64,15,224,0,255,0,2,254,0,15,224,0,127,192,7,252,0,15,224,0,63,208,15,244,0,15,224,0,31,240,63,224,0,15,224,0,15,248,255,192,0,15,224,0,3,252,127,0,0,15,224,0,2,244,9,0,0,15,224,0,0,128,0,0,0,15,224,0,0,0,0,0,105,111,224,0,0,0,0,0,127,255,224,0,0,0,0,0,63,255,208,0,0,0,0,0,63,255,64,0,0,0, + // 0x30de マ + 222,48,31,29,232,36,3,253,106,170,170,170,170,170,170,64,191,255,255,255,255,255,255,224,191,255,255,255,255,255,255,248,191,255,255,255,255,255,255,240,0,0,0,0,0,0,191,208,0,0,0,0,0,1,255,128,0,0,0,0,0,3,255,0,0,0,0,0,0,11,253,0,0,0,0,0,0,31,248,0,0,0,0,0,0,63,240,0,0,0,0,0,0,255,192,0,0,7,192,0,3,255,0,0,0,47,244,0,15,253,0,0,0,31,253,0,63,244,0,0,0,7,255,128,255,224,0,0,0,0,255,231,255,128,0,0,0,0,63,255,253,0,0,0,0,0,15,255,244,0,0,0,0,0,2,255,208,0,0,0,0,0,0,191,240,0,0,0,0,0,0,47,248,0,0,0,0,0,0,15,254,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,255,208,0,0,0,0,0,0,63,244,0,0,0,0,0,0,31,248,0,0,0,0,0,0,11,208,0,0,0,0,0,0,2,64,0,0,0,0,0,0,0,0,0,0, + // 0x30df ミ + 223,48,25,29,203,36,5,255,0,62,80,0,0,0,0,0,127,255,164,0,0,0,0,191,255,255,228,0,0,0,111,255,255,255,228,0,0,0,27,255,255,255,64,0,0,0,6,255,255,0,0,0,0,0,6,254,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,254,80,0,0,0,0,3,255,255,144,0,0,0,7,255,255,255,144,0,0,0,111,255,255,255,128,0,0,0,27,255,255,240,0,0,0,0,27,255,208,0,0,0,0,0,27,192,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,144,0,0,0,0,0,63,255,144,0,0,0,0,127,255,255,228,0,0,0,111,255,255,255,144,0,0,0,91,255,255,255,144,0,0,0,27,255,255,253,0,0,0,0,27,255,252,0,0,0,0,0,27,248,0,0,0,0,0,0,96,0, + // 0x30e0 ム + 224,48,32,31,248,36,2,254,0,0,0,16,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,191,192,0,0,0,0,0,0,255,128,0,0,0,0,0,0,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,2,254,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,7,248,0,0,0,0,0,0,15,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,31,224,0,0,0,0,0,0,47,208,0,0,0,0,0,0,63,192,0,11,64,0,0,0,127,128,0,127,192,0,0,0,191,64,0,47,224,0,0,0,255,0,0,15,240,0,0,1,254,0,0,11,248,0,0,2,253,0,0,3,253,0,0,3,252,0,0,2,255,0,0,7,248,0,0,0,255,64,0,11,244,0,0,0,191,192,0,15,240,1,106,255,255,208,0,111,255,255,255,255,255,240,127,255,255,255,255,255,255,244,127,255,255,255,255,250,91,252,63,255,255,169,64,0,3,253,62,149,0,0,0,0,3,254,0,0,0,0,0,0,1,248,0,0,0,0,0,0,0,64, + // 0x30e1 メ + 225,48,28,29,203,36,4,255,0,0,0,0,0,45,0,0,0,0,0,0,63,208,0,0,0,0,0,63,192,0,0,0,0,0,191,128,0,0,0,0,0,255,0,0,8,0,0,1,255,0,0,63,64,0,3,253,0,0,191,224,0,3,252,0,0,127,253,0,15,244,0,0,15,255,128,31,240,0,0,1,255,240,63,208,0,0,0,63,253,127,192,0,0,0,11,255,255,64,0,0,0,1,255,254,0,0,0,0,0,63,253,0,0,0,0,0,31,255,64,0,0,0,0,127,255,224,0,0,0,1,255,255,248,0,0,0,7,255,31,255,0,0,0,31,252,3,255,192,0,0,127,240,0,255,240,0,2,255,192,0,63,252,0,15,255,0,0,15,254,0,127,252,0,0,3,252,7,255,224,0,0,0,240,47,255,64,0,0,0,16,191,253,0,0,0,0,0,47,208,0,0,0,0,0,10,0,0,0,0,0,0, + // 0x30e2 モ + 226,48,29,28,224,36,4,255,5,85,85,85,85,85,80,0,11,255,255,255,255,255,240,0,11,255,255,255,255,255,240,0,11,255,255,255,255,255,240,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,165,85,95,245,85,85,85,64,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,11,252,0,0,0,0,0,0,11,255,234,175,254,0,0,0,3,255,255,255,254,0,0,0,1,255,255,255,254,0,0,0,0,27,255,255,249,0, + // 0x30e3 ャ + 227,48,26,26,182,36,5,253,0,1,128,0,0,0,0,0,47,208,0,0,0,0,0,15,224,0,0,0,0,0,15,240,0,0,0,0,0,11,240,0,0,107,192,0,3,244,1,175,255,240,0,3,254,255,255,255,224,0,91,255,255,255,255,192,191,255,255,255,144,63,128,191,255,255,64,0,255,0,127,249,255,0,2,253,0,37,0,191,0,7,248,0,0,0,127,64,31,240,0,0,0,63,128,127,192,0,0,0,63,192,255,0,0,0,0,47,192,45,0,0,0,0,31,208,0,0,0,0,0,15,224,0,0,0,0,0,11,240,0,0,0,0,0,7,244,0,0,0,0,0,3,248,0,0,0,0,0,3,252,0,0,0,0,0,2,252,0,0,0,0,0,1,254,0,0,0,0,0,0,255,0,0,0,0,0,0,228,0,0,0, + // 0x30e4 ヤ + 228,48,31,31,248,36,2,254,0,1,184,0,0,0,0,0,0,7,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,2,253,0,0,0,0,0,0,1,254,0,0,0,1,128,0,0,255,0,0,1,191,244,0,0,255,0,22,255,255,252,0,0,191,171,255,255,255,248,0,1,191,255,255,255,239,240,90,255,255,255,255,144,47,208,255,255,255,254,64,0,127,192,191,255,255,208,0,0,255,0,63,228,15,240,0,3,253,0,36,0,15,240,0,15,248,0,0,0,11,244,0,47,240,0,0,0,7,248,0,191,192,0,0,0,3,252,2,255,64,0,0,0,3,252,2,253,0,0,0,0,2,253,0,40,0,0,0,0,1,254,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,191,128,0,0,0,0,0,0,127,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,47,208,0,0,0,0,0,0,31,224,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,244,0,0,0,0,0,0,11,248,0,0,0,0,0,0,6,64,0,0,0, + // 0x30e5 ュ + 229,48,26,20,140,36,5,255,1,165,85,85,90,0,0,1,255,255,255,255,208,0,1,255,255,255,255,224,0,1,255,255,255,255,208,0,0,0,0,0,47,208,0,0,0,0,0,47,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,128,0,0,0,0,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,191,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,105,85,85,85,255,85,160,255,255,255,255,255,255,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,0,0,0,0,0,0,0, + // 0x30e6 ユ + 230,48,32,25,200,36,2,1,0,0,0,0,0,1,0,0,0,127,255,255,255,255,208,0,0,127,255,255,255,255,244,0,0,127,255,255,255,255,240,0,0,42,170,170,170,175,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,224,0,0,0,0,0,0,47,224,0,0,0,0,0,0,47,208,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,128,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,127,170,170,170,171,255,170,253,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,0,0,0,0,0,0,0,0, + // 0x30e7 ョ + 231,48,21,24,144,36,7,253,20,0,0,0,0,64,63,255,255,255,255,192,63,255,255,255,255,192,63,255,255,255,255,192,0,0,0,0,31,192,0,0,0,0,31,192,0,0,0,0,31,192,0,0,0,0,31,192,0,0,0,0,31,192,5,0,0,0,47,192,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,0,0,31,192,0,0,0,0,31,192,0,0,0,0,31,192,0,0,0,0,31,192,0,0,0,0,31,192,21,85,85,85,111,192,191,255,255,255,255,192,191,255,255,255,255,192,191,255,255,255,255,192,0,0,0,0,31,192,0,0,0,0,5,64, + // 0x30e8 ヨ + 232,48,25,28,196,36,5,254,63,255,255,255,255,255,192,63,255,255,255,255,255,192,63,255,255,255,255,255,192,37,85,85,85,85,127,192,0,0,0,0,0,47,192,0,0,0,0,0,47,192,0,0,0,0,0,47,192,0,0,0,0,0,47,192,0,0,0,0,0,47,192,0,0,0,0,0,47,192,9,85,85,85,85,127,192,15,255,255,255,255,255,192,15,255,255,255,255,255,192,15,255,255,255,255,255,192,0,0,0,0,0,47,192,0,0,0,0,0,47,192,0,0,0,0,0,47,192,0,0,0,0,0,47,192,0,0,0,0,0,47,192,0,0,0,0,0,47,192,0,0,0,0,0,47,192,0,0,0,0,0,47,192,191,255,255,255,255,255,192,191,255,255,255,255,255,192,191,255,255,255,255,255,192,106,170,170,170,170,191,192,0,0,0,0,0,47,192,0,0,0,0,0,5,64, + // 0x30e9 ラ + 233,48,27,30,210,36,5,254,1,85,85,85,85,86,0,3,255,255,255,255,255,0,3,255,255,255,255,255,0,3,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,224,255,255,255,255,255,255,252,255,255,255,255,255,255,244,85,85,85,85,85,95,240,0,0,0,0,0,31,240,0,0,0,0,0,47,208,0,0,0,0,0,63,192,0,0,0,0,0,191,128,0,0,0,0,0,255,0,0,0,0,0,3,254,0,0,0,0,0,11,252,0,0,0,0,0,47,240,0,0,0,0,0,255,208,0,0,0,0,7,255,128,0,0,0,0,47,254,0,0,0,0,2,255,248,0,0,0,0,111,255,208,0,0,0,15,255,254,0,0,0,0,11,255,244,0,0,0,0,3,254,64,0,0,0,0,0,144,0,0,0,0, + // 0x30ea リ + 234,48,22,30,180,36,7,254,106,64,0,0,63,208,127,128,0,0,63,208,127,128,0,0,47,192,127,128,0,0,47,192,127,128,0,0,47,192,127,128,0,0,47,192,127,128,0,0,47,192,127,128,0,0,47,192,127,128,0,0,47,192,127,128,0,0,47,192,127,128,0,0,47,192,127,128,0,0,47,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,128,127,128,0,0,191,128,0,0,0,0,255,64,0,0,0,1,255,0,0,0,0,3,254,0,0,0,0,11,252,0,0,0,0,47,244,0,0,0,0,255,224,0,0,0,11,255,128,0,0,1,191,254,0,0,0,15,255,244,0,0,0,3,255,128,0,0,0,0,248,0,0,0,0,0,0,0,0,0, + // 0x30eb ル + 235,48,33,29,5,36,2,255,0,1,84,0,21,64,0,0,0,0,3,252,0,127,128,0,0,0,0,3,252,0,127,128,0,0,0,0,3,252,0,63,128,0,0,0,0,3,252,0,63,128,0,0,0,0,3,252,0,63,128,0,0,0,0,3,252,0,63,128,0,0,0,0,3,252,0,63,128,0,0,0,0,3,252,0,63,128,0,0,0,0,3,252,0,63,128,0,0,0,0,3,252,0,63,128,0,0,0,0,3,248,0,63,128,0,0,0,0,3,248,0,63,128,0,0,0,0,3,248,0,63,128,0,0,0,0,3,244,0,63,128,0,0,0,0,7,244,0,63,128,0,8,0,0,7,240,0,63,128,0,61,0,0,11,240,0,63,128,0,191,0,0,15,240,0,63,128,2,255,64,0,31,224,0,63,128,11,253,0,0,63,192,0,63,128,63,244,0,0,127,192,0,63,129,255,224,0,0,255,64,0,63,139,255,64,0,3,255,0,0,63,255,253,0,0,11,253,0,0,63,255,240,0,0,47,248,0,0,127,255,128,0,0,191,240,0,0,127,252,0,0,0,47,192,0,0,63,208,0,0,0,7,0,0,0,10,0,0,0,0, + // 0x30ec レ + 236,48,26,28,196,36,7,255,127,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,1,0,63,192,0,0,0,7,192,63,192,0,0,0,31,208,63,192,0,0,0,127,224,63,192,0,0,1,255,192,63,192,0,0,11,255,0,63,192,0,0,127,252,0,63,192,0,2,255,224,0,63,192,0,31,255,64,0,63,192,1,255,252,0,0,63,192,31,255,224,0,0,63,198,255,255,0,0,0,63,255,255,244,0,0,0,63,255,255,64,0,0,0,127,255,224,0,0,0,0,47,249,0,0,0,0,0,7,64,0,0,0,0,0, + // 0x30ed ロ + 237,48,26,27,189,36,5,255,170,170,170,170,170,170,160,255,255,255,255,255,255,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,254,0,0,0,0,11,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,255,170,170,170,170,175,240,255,0,0,0,0,11,240,169,0,0,0,0,6,160, + // 0x30ee ヮ + 238,48,24,24,144,36,6,252,127,255,255,255,255,248,127,255,255,255,255,255,127,255,255,255,255,255,127,149,85,85,86,254,127,64,0,0,2,253,127,64,0,0,2,252,127,64,0,0,3,252,127,64,0,0,3,252,127,64,0,0,7,248,127,64,0,0,11,244,127,64,0,0,15,240,0,0,0,0,47,224,0,0,0,0,63,192,0,0,0,0,255,128,0,0,0,2,255,0,0,0,0,11,253,0,0,0,0,47,248,0,0,0,1,255,224,0,0,0,11,255,128,0,0,1,191,253,0,0,0,15,255,244,0,0,0,7,255,128,0,0,0,1,248,0,0,0,0,0,0,0,0,0, + // 0x30ef ワ + 239,48,28,28,196,36,4,254,191,255,255,255,255,255,244,127,255,255,255,255,255,254,127,255,255,255,255,255,254,127,170,170,170,170,171,253,127,64,0,0,0,3,252,127,64,0,0,0,3,252,127,64,0,0,0,3,252,127,64,0,0,0,7,248,127,64,0,0,0,11,244,127,64,0,0,0,15,244,127,64,0,0,0,15,240,127,64,0,0,0,31,224,191,128,0,0,0,63,208,0,0,0,0,0,127,192,0,0,0,0,0,255,128,0,0,0,0,1,255,0,0,0,0,0,3,254,0,0,0,0,0,15,252,0,0,0,0,0,63,244,0,0,0,0,0,255,224,0,0,0,0,7,255,192,0,0,0,0,47,254,0,0,0,0,2,255,248,0,0,0,0,111,255,208,0,0,0,3,255,255,0,0,0,0,1,255,244,0,0,0,0,0,191,64,0,0,0,0,0,20,0,0,0,0, + // 0x30f0 ヰ + 240,48,30,31,248,36,3,254,0,0,0,0,2,164,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,47,255,255,255,255,255,255,208,47,255,255,255,255,255,255,208,47,255,255,255,255,255,255,208,21,86,253,85,87,249,85,64,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,169,87,253,85,91,253,85,160,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,2,164,0,0, + // 0x30f1 ヱ + 241,48,31,26,208,36,3,0,10,170,170,170,170,170,171,0,15,255,255,255,255,255,255,208,15,255,255,255,255,255,255,224,15,255,255,255,255,255,255,192,0,0,0,0,0,0,255,64,0,0,0,0,0,2,254,0,0,0,0,0,0,7,252,0,0,0,0,191,64,15,244,0,0,0,0,191,64,63,224,0,0,0,0,191,64,255,192,0,0,0,0,191,67,255,0,0,0,0,0,191,65,252,0,0,0,0,0,191,64,32,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,254,170,170,255,234,170,171,244,255,255,255,255,255,255,255,244,255,255,255,255,255,255,255,244,255,255,255,255,255,255,255,244,0,0,0,0,0,0,0,0, + // 0x30f2 ヲ + 242,48,27,29,203,36,5,254,106,85,85,85,85,90,128,127,255,255,255,255,255,244,127,255,255,255,255,255,252,127,255,255,255,255,255,248,0,0,0,0,0,15,244,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,31,224,0,0,0,0,0,47,208,0,0,0,0,0,63,192,31,255,255,255,255,255,192,31,255,255,255,255,255,128,31,255,255,255,255,255,0,5,85,85,85,86,255,0,0,0,0,0,2,254,0,0,0,0,0,3,252,0,0,0,0,0,15,248,0,0,0,0,0,47,240,0,0,0,0,0,191,192,0,0,0,0,1,255,64,0,0,0,0,11,254,0,0,0,0,0,63,252,0,0,0,0,1,255,224,0,0,0,0,31,255,128,0,0,0,2,255,253,0,0,0,0,127,255,224,0,0,0,0,63,255,64,0,0,0,0,15,244,0,0,0,0,0,6,64,0,0,0,0, + // 0x30f3 ン + 243,48,29,28,224,36,5,255,3,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,63,248,0,0,0,0,0,0,31,255,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,191,244,0,0,0,0,0,0,47,253,0,0,0,28,0,0,7,255,64,0,0,61,0,0,1,254,0,0,0,127,0,0,0,120,0,0,0,255,64,0,0,0,0,0,3,255,0,0,0,0,0,0,11,252,0,0,0,0,0,0,31,244,0,0,0,0,0,0,127,224,0,0,0,0,0,1,255,192,0,0,0,0,0,11,255,0,0,0,0,0,0,47,252,0,0,0,0,0,0,255,240,0,0,0,0,0,7,255,192,0,0,0,0,0,63,255,0,0,0,0,0,2,255,248,0,0,0,0,0,111,255,208,0,0,0,0,27,255,254,0,0,0,0,22,255,255,240,0,0,0,0,255,255,255,64,0,0,0,0,127,255,224,0,0,0,0,0,63,249,0,0,0,0,0,0,9,0,0,0,0,0,0,0, + // 0x30f4 ヴ + 244,48,31,35,24,36,3,253,0,0,0,0,0,0,0,64,0,0,0,0,0,0,11,192,0,0,0,85,0,11,135,224,0,0,0,255,0,15,194,244,0,0,0,255,0,3,224,252,0,0,0,255,0,2,240,188,0,0,0,255,0,0,248,16,0,0,0,255,0,0,160,0,0,0,0,255,0,0,16,0,127,255,255,255,255,255,253,0,63,255,255,255,255,255,255,0,63,255,255,255,255,255,255,0,63,149,85,85,85,86,255,0,63,64,0,0,0,2,254,0,63,64,0,0,0,2,253,0,63,64,0,0,0,3,252,0,63,64,0,0,0,3,252,0,63,64,0,0,0,7,248,0,63,64,0,0,0,15,244,0,63,128,0,0,0,15,240,0,127,64,0,0,0,47,224,0,0,0,0,0,0,63,192,0,0,0,0,0,0,191,192,0,0,0,0,0,1,255,64,0,0,0,0,0,7,254,0,0,0,0,0,0,31,252,0,0,0,0,0,0,127,240,0,0,0,0,0,2,255,208,0,0,0,0,0,47,255,64,0,0,0,0,6,255,252,0,0,0,0,1,191,255,224,0,0,0,0,1,255,255,64,0,0,0,0,0,191,244,0,0,0,0,0,0,46,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30f5 ヵ + 245,48,23,26,156,36,6,253,0,0,63,64,0,0,0,0,63,64,0,0,0,0,63,64,0,0,0,0,63,64,0,0,0,0,63,0,0,0,84,0,127,64,1,64,191,255,255,255,255,248,191,255,255,255,255,252,191,255,255,255,255,252,0,0,191,0,2,252,0,0,254,0,2,248,0,0,253,0,2,248,0,0,252,0,2,248,0,2,252,0,3,248,0,3,248,0,3,244,0,7,244,0,3,244,0,15,240,0,3,244,0,31,208,0,3,240,0,63,192,0,7,240,0,255,64,0,11,240,3,254,0,0,15,224,31,252,0,149,111,208,191,240,0,255,255,192,191,192,0,255,255,128,47,0,0,191,253,0,4,0,0,0,0,0, + // 0x30f6 ヶ + 246,48,27,27,189,36,4,252,0,0,144,0,0,0,0,0,1,254,0,0,0,0,0,2,253,0,0,0,0,0,3,252,0,0,0,0,0,3,248,0,0,0,0,0,11,240,0,0,0,0,0,15,255,255,255,255,252,0,47,255,255,255,255,252,0,127,255,255,255,255,252,0,255,64,2,253,1,84,2,254,0,2,252,0,0,11,252,0,3,252,0,0,47,240,0,3,248,0,0,191,208,0,7,244,0,0,47,128,0,11,240,0,0,1,0,0,15,240,0,0,0,0,0,31,208,0,0,0,0,0,63,192,0,0,0,0,0,191,128,0,0,0,0,1,255,64,0,0,0,0,3,254,0,0,0,0,0,15,252,0,0,0,0,0,127,240,0,0,0,0,2,255,208,0,0,0,0,3,255,0,0,0,0,0,0,124,0,0,0,0,0,0,0,0,0,0,0, + // 0x30f7 ヷ + 247,48,31,35,24,36,3,253,0,0,0,0,0,0,1,128,0,0,0,0,0,6,15,208,0,0,0,0,0,47,71,240,0,0,0,0,0,15,195,244,0,0,0,0,0,11,208,248,0,0,0,0,0,3,224,64,0,0,0,0,0,1,0,0,127,255,255,255,255,255,248,0,127,255,255,255,255,255,255,0,63,255,255,255,255,255,255,0,63,234,170,170,170,171,254,0,63,128,0,0,0,2,253,0,63,128,0,0,0,3,253,0,63,128,0,0,0,3,252,0,63,128,0,0,0,3,252,0,63,128,0,0,0,7,248,0,63,128,0,0,0,11,248,0,63,128,0,0,0,15,244,0,127,128,0,0,0,31,240,0,127,128,0,0,0,47,224,0,0,0,0,0,0,63,208,0,0,0,0,0,0,191,192,0,0,0,0,0,0,255,64,0,0,0,0,0,3,255,0,0,0,0,0,0,11,253,0,0,0,0,0,0,47,248,0,0,0,0,0,0,191,240,0,0,0,0,0,3,255,192,0,0,0,0,0,31,255,0,0,0,0,0,1,255,252,0,0,0,0,0,31,255,224,0,0,0,0,3,255,255,64,0,0,0,0,1,255,248,0,0,0,0,0,0,127,128,0,0,0,0,0,0,20,0,0,0,0,0, + // 0x30f8 ヸ + 248,48,33,33,41,36,2,254,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,24,60,0,0,0,0,0,1,168,61,46,0,0,0,0,0,2,252,31,31,0,0,0,0,0,2,252,15,79,64,0,0,0,0,1,252,11,133,0,0,0,0,0,1,252,6,64,0,0,0,0,0,1,252,0,0,0,15,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,240,0,5,85,255,85,86,253,85,80,0,0,0,254,0,1,252,0,0,0,0,0,254,0,1,252,0,0,0,0,0,254,0,1,252,0,0,0,0,0,254,0,1,252,0,0,0,0,0,254,0,1,252,0,0,0,0,0,254,0,1,252,0,0,0,0,0,254,0,1,252,0,0,0,0,0,254,0,1,252,0,0,0,0,0,254,0,1,252,0,0,0,41,85,255,85,86,254,85,168,0,127,255,255,255,255,255,255,252,0,127,255,255,255,255,255,255,252,0,127,255,255,255,255,255,255,252,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,1,168,0,0,0, + // 0x30f9 ヹ + 249,48,32,33,8,36,2,255,0,0,0,0,0,0,0,16,0,0,0,0,0,0,3,240,0,0,0,0,0,7,209,248,0,0,0,0,0,3,240,252,0,0,0,0,0,2,244,126,0,0,0,0,0,0,252,36,0,0,0,0,0,0,164,0,6,170,170,170,170,170,171,128,11,255,255,255,255,255,255,240,11,255,255,255,255,255,255,240,11,255,255,255,255,255,255,208,0,0,0,0,0,0,127,192,0,0,0,0,0,0,255,64,0,0,0,0,0,2,254,0,0,0,0,63,192,11,252,0,0,0,0,63,192,47,240,0,0,0,0,63,192,191,208,0,0,0,0,63,194,255,128,0,0,0,0,63,192,254,0,0,0,0,0,63,192,24,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,191,255,255,255,255,255,255,252,191,255,255,255,255,255,255,252,191,255,255,255,255,255,255,252,191,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0x30fa ヺ + 250,48,30,35,24,36,4,253,0,0,0,0,0,0,10,0,0,0,0,0,0,40,63,64,0,0,0,0,0,189,15,192,0,0,0,0,0,63,11,208,0,0,0,0,0,47,131,224,0,0,0,0,0,15,129,0,170,85,85,85,85,110,64,0,255,255,255,255,255,255,224,0,255,255,255,255,255,255,248,0,255,255,255,255,255,255,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,31,224,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,63,255,255,255,255,255,128,0,63,255,255,255,255,255,64,0,63,255,255,255,255,255,0,0,21,85,85,85,86,254,0,0,0,0,0,0,3,252,0,0,0,0,0,0,7,248,0,0,0,0,0,0,15,240,0,0,0,0,0,0,63,224,0,0,0,0,0,0,255,192,0,0,0,0,0,2,255,0,0,0,0,0,0,15,253,0,0,0,0,0,0,63,248,0,0,0,0,0,2,255,208,0,0,0,0,0,31,255,64,0,0,0,0,2,255,253,0,0,0,0,0,191,255,224,0,0,0,0,0,191,255,64,0,0,0,0,0,47,244,0,0,0,0,0,0,10,64,0,0,0,0,0, + // 0x30fb ・ + 251,48,8,8,16,36,14,10,31,244,127,253,255,255,255,255,255,255,255,255,63,252,11,224, + // 0x30fc ー + 252,48,30,5,40,36,3,11,191,255,255,255,255,255,255,208,191,255,255,255,255,255,255,208,191,255,255,255,255,255,255,208,191,255,255,255,255,255,255,208,0,0,0,0,0,0,0,0, + // 0x30fd ヽ + 253,48,17,18,90,36,10,4,6,0,0,0,0,47,128,0,0,0,191,240,0,0,0,63,252,0,0,0,15,255,0,0,0,3,255,192,0,0,0,255,224,0,0,0,63,248,0,0,0,15,254,0,0,0,3,255,128,0,0,0,255,208,0,0,0,63,244,0,0,0,31,252,0,0,0,11,255,0,0,0,2,255,128,0,0,0,255,192,0,0,0,126,0,0,0,0,40,0, + // 0x30fe ヾ + 254,48,20,24,120,36,9,3,0,0,0,1,208,0,0,0,7,240,0,0,15,194,248,0,0,11,208,252,0,0,3,240,126,2,0,1,248,63,31,192,0,252,0,191,240,0,116,0,63,252,0,0,0,15,255,0,0,0,3,255,192,0,0,0,191,240,0,0,0,63,252,0,0,0,15,254,0,0,0,3,255,128,0,0,0,255,208,0,0,0,63,244,0,0,0,31,252,0,0,0,7,255,0,0,0,2,255,128,0,0,0,255,192,0,0,0,63,0,0,0,0,24,0,0,0,0,0,0, + // 0x30ff ヿ + 255,48,22,31,186,36,7,254,85,85,85,85,85,64,255,255,255,255,255,224,255,255,255,255,255,224,255,255,255,255,255,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224, + // 0x4eee 仮 + 238,78,34,35,59,36,1,252,0,0,100,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,253,47,255,255,255,255,192,0,2,252,47,255,255,255,255,192,0,3,244,47,255,255,255,255,192,0,15,240,47,192,0,0,0,0,0,31,208,47,128,0,0,0,0,0,63,192,47,128,0,0,0,0,0,127,64,47,128,0,0,0,0,0,255,64,47,128,0,0,0,0,3,255,64,47,128,0,0,0,0,11,255,64,47,192,0,0,0,0,31,255,64,47,255,255,255,254,0,127,255,64,47,255,255,255,255,0,255,191,64,47,255,255,255,255,0,190,63,64,47,255,0,0,190,0,60,63,64,47,255,0,0,253,0,16,63,64,47,175,128,1,252,0,0,63,64,63,159,192,3,248,0,0,63,64,63,79,208,3,244,0,0,63,64,63,71,240,11,240,0,0,63,64,63,3,248,15,208,0,0,63,64,63,1,253,63,192,0,0,63,64,127,0,255,127,64,0,0,63,64,190,0,63,255,0,0,0,63,64,254,0,47,252,0,0,0,63,64,253,0,15,252,0,0,0,63,65,252,0,63,255,0,0,0,63,67,248,1,255,255,208,0,0,63,67,244,11,254,127,248,0,0,63,79,240,191,248,15,255,128,0,63,95,211,255,208,2,255,224,0,63,79,192,254,0,0,127,192,0,63,66,64,116,0,0,7,0,0,0,0,0,0,0,0,0,0, + // 0x540d 名 + 13,84,31,34,16,36,1,253,0,0,0,249,0,0,0,0,0,0,2,254,0,0,0,0,0,0,3,252,0,0,0,0,0,0,15,244,0,0,0,0,0,0,47,255,255,255,208,0,0,0,191,255,255,255,240,0,0,1,255,255,255,255,224,0,0,11,253,0,0,47,192,0,0,47,244,0,0,127,128,0,0,255,240,0,0,255,0,0,11,255,252,0,2,253,0,0,63,255,255,64,7,252,0,0,63,224,191,224,15,240,0,0,15,64,31,248,63,208,0,0,4,0,7,254,255,128,0,0,0,0,1,255,254,0,0,0,0,0,0,127,248,0,0,0,0,0,0,191,224,0,0,0,0,0,3,255,255,255,255,252,0,0,47,255,255,255,255,252,0,1,255,255,255,255,255,252,0,31,255,240,0,0,2,252,6,255,255,240,0,0,1,252,127,255,215,240,0,0,1,252,63,253,7,240,0,0,1,252,31,128,7,240,0,0,1,252,4,0,7,240,0,0,1,252,0,0,7,240,0,0,1,252,0,0,7,240,0,0,1,252,0,0,7,255,255,255,255,252,0,0,7,255,255,255,255,252,0,0,7,255,255,255,255,252,0,0,7,240,0,0,2,252,0,0,6,160,0,0,1,252, + // 0x5b9a 定 + 154,91,33,35,59,36,1,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,208,0,0,0,0,0,127,0,15,192,0,0,0,0,0,127,0,15,192,0,0,0,0,0,127,0,15,192,0,0,0,0,0,127,0,15,195,255,255,255,255,252,127,0,5,67,255,255,255,255,252,21,0,0,3,255,255,255,255,252,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,7,224,3,248,0,0,0,0,0,7,240,3,248,0,0,0,0,0,11,240,3,248,0,0,0,0,0,15,224,3,255,255,255,192,0,0,15,208,3,255,255,255,192,0,0,31,224,3,255,255,255,192,0,0,47,240,3,248,0,0,0,0,0,63,244,3,248,0,0,0,0,0,127,252,3,248,0,0,0,0,0,255,255,3,248,0,0,0,0,1,253,63,211,248,0,0,0,0,3,252,31,251,248,0,0,0,0,11,244,7,255,253,0,0,0,0,47,240,1,255,255,255,255,255,192,127,192,0,47,255,255,255,255,128,47,64,0,1,191,255,255,255,64,9,0,0,0,0,5,85,85,0,0,0,0,0,0,0,0,0,0, + // 0x7247 片 + 71,114,32,35,24,36,1,252,0,0,0,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,213,85,95,245,85,84,0,47,255,255,255,255,255,253,0,47,255,255,255,255,255,253,0,47,255,255,255,255,255,253,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,213,85,85,85,80,0,0,63,255,255,255,255,244,0,0,63,255,255,255,255,244,0,0,127,255,255,255,255,244,0,0,127,0,0,0,7,244,0,0,191,0,0,0,7,244,0,0,255,0,0,0,7,244,0,0,254,0,0,0,7,244,0,2,252,0,0,0,7,244,0,3,252,0,0,0,7,244,0,11,248,0,0,0,7,244,0,15,240,0,0,0,7,244,0,63,224,0,0,0,7,244,0,127,192,0,0,0,7,244,0,31,0,0,0,0,7,244,0,9,0,0,0,0,7,244,0,0,0,0,0,0,0,0,0, + // 0x793a 示 + 58,121,33,32,32,36,1,253,0,21,85,85,85,85,85,64,0,0,191,255,255,255,255,255,224,0,0,191,255,255,255,255,255,224,0,0,191,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,85,85,85,85,85,85,85,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,2,64,2,252,0,24,0,0,0,11,244,2,252,1,253,0,0,0,15,240,2,252,0,255,0,0,0,31,208,2,252,0,127,128,0,0,63,192,2,252,0,47,208,0,0,191,64,2,252,0,15,240,0,0,255,0,2,252,0,11,244,0,3,253,0,2,252,0,3,252,0,11,248,0,2,252,0,2,254,0,47,240,0,2,252,0,0,255,0,127,208,0,2,252,0,0,191,64,31,64,0,2,252,0,0,63,64,1,0,21,87,252,0,0,36,0,0,0,47,255,248,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,15,254,128,0,0,0,0, + // 0x7fa9 義 + 169,127,33,34,50,36,2,253,0,0,96,0,0,30,64,0,0,0,3,252,0,0,63,192,0,0,0,1,253,0,0,63,64,0,0,0,0,191,0,0,255,0,0,0,31,255,255,255,255,255,255,244,0,31,255,255,255,255,255,255,244,0,10,170,170,175,250,170,170,160,0,0,0,0,15,224,0,0,0,0,1,255,255,255,255,255,255,64,0,1,255,255,255,255,255,255,64,0,0,85,85,95,245,85,85,0,0,0,0,0,15,224,0,0,0,0,170,170,170,175,250,170,170,170,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,0,0,0,100,0,0,64,0,0,1,90,255,252,63,66,244,0,0,63,255,255,254,47,135,255,64,0,63,235,254,64,47,128,191,224,0,0,2,248,0,31,192,15,224,0,0,2,248,0,31,192,1,128,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,170,171,254,170,175,250,170,170,0,0,2,248,0,3,240,15,128,0,0,2,254,191,131,244,63,128,0,170,255,255,255,129,252,254,0,0,255,255,255,233,0,255,248,0,0,255,171,248,0,0,255,208,13,0,0,2,248,0,27,255,224,15,64,0,2,248,2,255,255,249,47,64,2,171,248,63,255,135,255,255,0,3,255,244,31,248,0,255,254,0,2,255,144,10,64,0,27,248,0, + // 0x8868 表 + 104,136,34,34,50,36,1,253,0,0,0,2,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,7,255,255,255,255,255,255,253,0,7,255,255,255,255,255,255,253,0,7,255,255,255,255,255,255,253,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,170,170,171,254,170,170,160,0,0,191,255,255,255,255,255,240,0,0,191,255,255,255,255,255,240,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,0,0,0,191,239,128,0,0,0,0,0,7,255,15,192,0,116,0,0,0,47,248,15,208,2,254,0,0,2,255,208,7,240,15,253,0,0,47,255,64,3,244,127,240,0,7,255,255,0,2,254,255,64,0,191,255,191,0,0,255,248,0,0,63,244,63,0,0,191,208,0,0,30,64,63,0,0,63,208,0,0,0,0,63,0,0,31,240,0,0,0,0,63,0,27,139,253,0,0,0,0,63,91,255,194,255,128,0,0,0,127,255,255,192,191,248,0,0,111,255,255,249,0,31,255,128,0,255,255,249,0,0,7,255,208,0,191,249,0,0,0,0,127,64,0,57,0,0,0,0,0,6,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Korean_26.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Korean_26.cpp new file mode 100644 index 000000000000..d0b9e1fa8c1f --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Korean_26.cpp @@ -0,0 +1,252 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Korean 36pt, capital 'A' height: 26px, width: 100%, range: 0xac70-0xd788, glyphs: 110 +extern const uint8_t NotoSans_Medium_Korean_26[17586] = { + 162,26,112,172,136,215,34,247, // unifont_t + // 0xac70 거 + 112,172,27,34,238,33,2,253,0,0,0,0,0,1,84,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,63,255,255,255,0,3,248,63,255,255,255,0,3,248,63,255,255,255,0,3,248,0,0,0,191,0,3,248,0,0,0,255,0,3,248,0,0,0,254,0,3,248,0,0,0,254,0,3,248,0,0,1,253,0,3,248,0,0,2,252,0,3,248,0,0,3,252,0,3,248,0,0,7,244,255,255,248,0,0,15,240,255,255,248,0,0,47,224,255,255,248,0,0,63,192,0,3,248,0,0,255,64,0,3,248,0,2,255,0,0,3,248,0,11,252,0,0,3,248,0,63,240,0,0,3,248,1,255,208,0,0,3,248,11,255,64,0,0,3,248,127,252,0,0,0,3,248,255,224,0,0,0,3,248,127,64,0,0,0,3,248,36,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248, + // 0xace0 고 + 224,172,29,26,208,33,2,1,3,255,255,255,255,255,240,0,3,255,255,255,255,255,240,0,3,255,255,255,255,255,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,1,80,0,15,240,0,0,0,3,248,0,15,224,0,0,0,3,248,0,15,224,0,0,0,3,248,0,15,224,0,0,0,3,248,0,31,208,0,0,0,3,248,0,47,192,0,0,0,3,248,0,47,192,0,0,0,3,248,0,63,192,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0, + // 0xadf8 그 + 248,173,29,26,208,33,2,1,3,255,255,255,255,255,208,0,3,255,255,255,255,255,208,0,3,255,255,255,255,255,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,127,64,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,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0, + // 0xae09 급 + 9,174,30,31,248,33,2,254,1,255,255,255,255,255,224,0,1,255,255,255,255,255,224,0,1,255,255,255,255,255,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,192,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,252,0,0,0,15,224,0,1,252,0,0,0,15,224,0,1,252,0,0,0,15,224,0,1,252,0,0,0,15,224,0,1,255,255,255,255,255,224,0,1,255,255,255,255,255,224,0,1,255,255,255,255,255,224,0,1,252,0,0,0,15,224,0,1,252,0,0,0,15,224,0,1,252,0,0,0,15,224,0,1,255,255,255,255,255,224,0,1,255,255,255,255,255,224,0,1,255,255,255,255,255,224,0, + // 0xae30 기 + 48,174,27,34,238,33,2,253,0,0,0,0,0,1,84,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,31,255,255,255,192,3,248,31,255,255,255,192,3,248,31,255,255,255,192,3,248,0,0,0,63,192,3,248,0,0,0,63,128,3,248,0,0,0,63,128,3,248,0,0,0,127,64,3,248,0,0,0,191,0,3,248,0,0,0,255,0,3,248,0,0,1,254,0,3,248,0,0,3,252,0,3,248,0,0,7,248,0,3,248,0,0,15,244,0,3,248,0,0,47,240,0,3,248,0,0,127,192,0,3,248,0,1,255,64,0,3,248,0,7,254,0,0,3,248,0,47,248,0,0,3,248,0,255,240,0,0,3,248,7,255,128,0,0,3,248,127,253,0,0,0,3,248,191,244,0,0,0,3,248,63,128,0,0,0,3,248,24,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248, + // 0xae45 깅 + 69,174,27,34,238,33,2,253,0,0,0,0,0,1,80,0,0,0,0,0,3,248,0,0,0,0,0,3,248,15,255,255,255,192,3,248,15,255,255,255,128,3,248,15,255,255,255,128,3,248,0,0,0,63,64,3,248,0,0,0,127,0,3,248,0,0,0,255,0,3,248,0,0,0,254,0,3,248,0,0,3,252,0,3,248,0,0,11,248,0,3,248,0,0,31,240,0,3,248,0,0,127,192,0,3,248,0,2,255,64,0,3,248,0,31,253,0,0,3,248,1,255,244,0,0,3,248,111,255,128,0,0,3,248,191,253,0,0,0,3,248,63,208,0,0,0,3,248,40,0,0,0,0,2,164,0,0,6,255,254,64,0,0,0,191,255,255,253,0,0,7,255,255,255,255,128,0,31,254,0,1,191,224,0,63,224,0,0,15,244,0,63,128,0,0,7,248,0,63,64,0,0,3,248,0,63,128,0,0,7,248,0,63,224,0,0,15,244,0,31,254,64,1,191,224,0,7,255,255,255,255,128,0,0,191,255,255,253,0,0,0,6,191,254,64,0, + // 0xb044 끄 + 68,176,29,25,200,33,2,2,15,255,255,195,255,255,240,0,15,255,255,195,255,255,240,0,15,255,255,195,255,255,240,0,0,0,63,192,0,11,240,0,0,0,63,128,0,11,240,0,0,0,63,128,0,11,240,0,0,0,63,128,0,11,240,0,0,0,63,128,0,11,240,0,0,0,63,64,0,15,240,0,0,0,127,64,0,15,240,0,0,0,191,0,0,15,224,0,0,0,191,0,0,15,224,0,0,0,255,0,0,15,224,0,0,0,254,0,0,31,208,0,0,1,253,0,0,31,208,0,0,2,253,0,0,47,192,0,0,3,252,0,0,63,192,0,0,3,252,0,0,63,192,0,0,0,100,0,0,22,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192, + // 0xb0b4 내 + 180,176,27,34,238,33,3,253,0,0,0,0,0,1,80,0,0,0,1,252,3,244,0,0,0,1,252,3,244,0,0,0,1,252,3,244,106,0,0,1,252,3,244,191,0,0,1,252,3,244,191,0,0,1,252,3,244,191,0,0,1,252,3,244,191,0,0,1,252,3,244,191,0,0,1,252,3,244,191,0,0,1,252,3,244,191,0,0,1,252,3,244,191,0,0,1,252,3,244,191,0,0,1,252,3,244,191,0,0,1,255,255,244,191,0,0,1,255,255,244,191,0,0,1,255,255,244,191,0,0,1,252,3,244,191,0,0,1,252,3,244,191,0,0,1,252,3,244,191,0,0,1,252,3,244,191,0,90,225,252,3,244,191,255,255,225,252,3,244,191,255,255,241,252,3,244,191,255,250,65,252,3,244,0,0,0,1,252,3,244,0,0,0,1,252,3,244,0,0,0,1,252,3,244,0,0,0,1,252,3,244,0,0,0,1,252,3,244,0,0,0,1,252,3,244,0,0,0,1,252,3,244,0,0,0,0,0,3,244,0,0,0,0,0,3,244, + // 0xb178 노 + 120,177,30,27,216,33,2,1,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xb204 누 + 4,178,30,32,0,33,2,253,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0, + // 0xb274 뉴 + 116,178,29,32,0,33,2,253,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,3,248,0,11,240,0,0,0,3,248,0,11,240,0,0,0,3,248,0,11,240,0,0,0,3,248,0,11,240,0,0,0,3,248,0,11,240,0,0,0,3,248,0,11,240,0,0,0,3,248,0,11,240,0,0,0,3,248,0,11,240,0,0,0,3,248,0,11,240,0,0,0,3,248,0,11,240,0,0,0,3,248,0,11,240,0,0,0,3,248,0,11,240,0,0, + // 0xb2c8 니 + 200,178,26,34,238,33,3,253,0,0,0,0,0,10,144,0,0,0,0,0,15,224,0,0,0,0,0,15,224,21,0,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,20,15,224,127,64,21,175,252,15,224,127,255,255,255,252,15,224,127,255,255,255,252,15,224,127,255,255,165,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224, + // 0xb2e4 다 + 228,178,29,34,16,33,3,253,0,0,0,0,0,85,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,255,255,255,252,0,191,0,0,255,255,255,252,0,191,0,0,255,255,255,252,0,191,0,0,255,0,0,0,0,191,0,0,255,0,0,0,0,191,0,0,255,0,0,0,0,191,0,0,255,0,0,0,0,191,0,0,255,0,0,0,0,191,0,0,255,0,0,0,0,191,0,0,255,0,0,0,0,191,255,192,255,0,0,0,0,191,255,192,255,0,0,0,0,191,255,192,255,0,0,0,0,191,0,0,255,0,0,0,0,191,0,0,255,0,0,0,0,191,0,0,255,0,0,0,0,191,0,0,255,0,0,0,0,191,0,0,255,0,0,0,0,191,0,0,255,0,21,175,224,191,0,0,255,255,255,255,240,191,0,0,255,255,255,255,240,191,0,0,255,255,254,148,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0, + // 0xb2f9 당 + 249,178,29,34,16,33,3,253,0,0,0,0,0,21,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,255,255,255,248,0,127,64,0,255,255,255,248,0,127,64,0,255,255,255,248,0,127,64,0,255,0,0,0,0,127,64,0,255,0,0,0,0,127,64,0,255,0,0,0,0,127,64,0,255,0,0,0,0,127,255,192,255,0,0,0,0,127,255,192,255,0,0,0,0,127,255,192,255,0,0,0,0,127,64,0,255,0,0,0,0,127,64,0,255,0,1,107,224,127,64,0,255,255,255,255,224,127,64,0,255,255,255,255,240,127,64,0,255,255,255,165,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,21,0,0,0,0,107,255,228,0,0,0,0,11,255,255,255,208,0,0,0,127,255,255,255,248,0,0,0,255,228,0,27,254,0,0,2,254,0,0,1,255,0,0,3,252,0,0,0,127,64,0,3,248,0,0,0,63,128,0,3,252,0,0,0,127,64,0,2,254,0,0,1,255,0,0,0,255,228,0,31,254,0,0,0,127,255,255,255,248,0,0,0,11,255,255,255,208,0,0,0,0,111,255,228,0,0,0, + // 0xb3c4 도 + 196,179,30,27,216,33,2,1,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xb3cc 돌 + 204,179,29,32,0,33,2,253,1,255,255,255,255,255,208,0,1,255,255,255,255,255,208,0,1,255,255,255,255,255,208,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,224,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,1,170,170,170,170,175,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0, + // 0xb3d9 동 + 217,179,29,32,0,33,2,253,1,255,255,255,255,255,224,0,1,255,255,255,255,255,224,0,1,255,255,255,255,255,224,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,107,255,250,0,0,0,0,11,255,255,255,244,0,0,0,63,255,255,255,255,0,0,0,255,224,0,6,255,192,0,1,254,0,0,0,63,208,0,2,252,0,0,0,31,224,0,2,252,0,0,0,31,224,0,1,255,0,0,0,63,208,0,0,255,228,0,6,255,192,0,0,63,255,255,255,255,0,0,0,7,255,255,255,244,0,0,0,0,26,255,233,0,0,0, + // 0xb418 되 + 24,180,27,34,238,33,2,253,0,0,0,0,0,1,80,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,15,255,255,255,252,3,248,15,255,255,255,252,3,248,15,255,255,255,252,3,248,15,240,0,0,0,3,248,15,240,0,0,0,3,248,15,240,0,0,0,3,248,15,240,0,0,0,3,248,15,240,0,0,0,3,248,15,240,0,0,0,3,248,15,240,0,0,0,3,248,15,240,0,0,0,3,248,15,255,255,255,252,3,248,15,255,255,255,252,3,248,15,255,255,255,252,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,150,171,195,248,255,255,255,255,255,195,248,255,255,255,255,255,195,248,191,255,255,170,80,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248, + // 0xb41c 된 + 28,180,28,34,238,33,2,253,0,0,0,0,0,1,80,0,0,0,0,0,3,248,0,0,0,0,0,3,248,3,255,255,255,244,3,248,3,255,255,255,244,3,248,3,255,255,255,244,3,248,3,244,0,0,0,3,248,3,244,0,0,0,3,248,3,244,0,0,0,3,248,3,244,0,0,0,3,248,3,244,0,0,0,3,248,3,255,255,255,248,3,248,3,255,255,255,248,3,248,3,255,255,255,248,3,248,0,0,127,64,0,3,248,0,0,63,64,0,3,248,0,0,63,64,0,3,248,0,0,63,64,0,3,248,0,0,127,154,191,131,248,255,255,255,255,255,131,248,255,255,255,255,255,131,248,191,255,254,169,64,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,47,192,0,0,3,248,0,63,192,0,0,2,164,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,255,255,255,255,254,0,63,255,255,255,255,254,0,63,255,255,255,255,254,0,0,0,0,0,0,0, + // 0xb428 됨 + 40,180,27,33,231,33,2,254,0,0,0,0,0,2,164,0,0,0,0,0,3,248,3,255,255,255,244,3,248,3,255,255,255,244,3,248,3,255,255,255,244,3,248,3,248,0,0,0,3,248,3,244,0,0,0,3,248,3,244,0,0,0,3,248,3,244,0,0,0,3,248,3,244,0,0,0,3,248,3,255,255,255,248,3,248,3,255,255,255,248,3,248,3,255,255,255,248,3,248,0,0,63,64,0,3,248,0,0,63,64,0,3,248,0,0,63,64,0,3,248,0,0,127,154,191,195,248,255,255,255,255,255,195,248,255,255,255,255,255,131,248,191,255,234,149,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,0,0,0,63,255,255,255,255,248,0,63,255,255,255,255,248,0,63,255,255,255,255,248,0,63,192,0,0,3,248,0,63,192,0,0,3,248,0,63,192,0,0,3,248,0,63,192,0,0,3,248,0,63,192,0,0,3,248,0,63,255,255,255,255,248,0,63,255,255,255,255,248,0,63,255,255,255,255,248, + // 0xb4a4 뒤 + 164,180,27,34,238,33,2,253,0,0,0,0,0,2,164,0,0,0,0,0,3,248,7,255,255,255,244,3,248,7,255,255,255,244,3,248,7,255,255,255,244,3,248,7,244,0,0,0,3,248,7,244,0,0,0,3,248,7,244,0,0,0,3,248,7,244,0,0,0,3,248,7,244,0,0,0,3,248,7,244,0,0,0,3,248,7,244,0,0,0,3,248,7,255,255,255,248,3,248,7,255,255,255,248,3,248,7,255,255,255,248,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,21,67,248,255,255,255,255,255,195,248,255,255,255,255,255,195,248,255,255,255,254,149,3,248,255,255,255,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,0,0,0,3,248, + // 0xb4dc 드 + 220,180,30,27,216,33,2,1,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xb514 디 + 20,181,25,35,245,33,4,252,0,0,0,0,0,21,0,0,0,0,0,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,63,128,255,255,255,253,0,63,128,255,255,255,253,0,63,128,255,255,255,253,0,63,128,254,0,0,0,0,63,128,254,0,0,0,0,63,128,254,0,0,0,0,63,128,254,0,0,0,0,63,128,254,0,0,0,0,63,128,254,0,0,0,0,63,128,254,0,0,0,0,63,128,254,0,0,0,0,63,128,254,0,0,0,0,63,128,254,0,0,0,0,63,128,254,0,0,0,0,63,128,254,0,0,0,0,63,128,254,0,0,0,0,63,128,254,0,0,0,0,63,128,254,0,0,0,0,63,128,254,0,5,107,240,63,128,255,255,255,255,240,63,128,255,255,255,255,240,63,128,255,255,255,165,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,0,0, + // 0xb77c 라 + 124,183,29,34,16,33,3,253,0,0,0,0,0,21,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,255,255,255,252,0,191,0,0,255,255,255,252,0,191,0,0,255,255,255,252,0,191,0,0,0,0,2,252,0,191,0,0,0,0,2,252,0,191,0,0,0,0,2,252,0,191,0,0,0,0,2,252,0,191,0,0,0,0,2,252,0,191,0,0,0,0,2,252,0,191,0,0,255,255,255,252,0,191,0,0,255,255,255,252,0,191,255,192,255,255,255,252,0,191,255,192,255,0,0,0,0,191,255,192,255,0,0,0,0,191,0,0,255,0,0,0,0,191,0,0,255,0,0,0,0,191,0,0,255,0,0,0,0,191,0,0,255,0,0,0,0,191,0,0,255,0,5,107,240,191,0,0,255,255,255,255,240,191,0,0,255,255,255,255,240,191,0,0,255,255,254,148,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0, + // 0xb7ec 러 + 236,183,26,34,238,33,3,253,0,0,0,0,0,10,160,0,0,0,0,0,15,224,0,0,0,0,0,15,224,255,255,255,244,0,15,224,255,255,255,244,0,15,224,255,255,255,244,0,15,224,0,0,3,244,0,15,224,0,0,3,244,0,15,224,0,0,3,244,0,15,224,0,0,3,244,0,15,224,0,0,3,244,0,15,224,0,0,3,244,0,15,224,0,0,3,244,0,15,224,255,255,255,244,191,255,224,255,255,255,244,191,255,224,255,255,255,244,191,255,224,254,0,0,0,0,15,224,254,0,0,0,0,15,224,254,0,0,0,0,15,224,254,0,0,0,0,15,224,254,0,0,0,0,15,224,254,0,0,0,0,15,224,254,0,5,107,192,15,224,255,255,255,255,192,15,224,255,255,255,255,192,15,224,255,255,254,148,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224, + // 0xb808 레 + 8,184,27,34,238,33,3,253,0,0,0,0,0,1,84,0,0,0,0,106,3,248,0,0,0,0,191,3,248,0,0,0,0,191,3,248,255,255,253,0,191,3,248,255,255,253,0,191,3,248,255,255,253,0,191,3,248,0,0,253,0,191,3,248,0,0,253,0,191,3,248,0,0,253,0,191,3,248,0,0,253,0,191,3,248,0,0,253,0,191,3,248,0,0,253,63,255,3,248,255,255,253,63,255,3,248,255,255,253,63,255,3,248,255,255,253,0,191,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,253,0,90,240,191,3,248,255,255,255,240,191,3,248,255,255,255,240,191,3,248,255,255,233,64,191,3,248,0,0,0,0,191,3,248,0,0,0,0,191,3,248,0,0,0,0,191,3,248,0,0,0,0,191,3,248,0,0,0,0,191,3,248,0,0,0,0,191,3,248,0,0,0,0,21,3,248,0,0,0,0,0,3,248, + // 0xb825 력 + 37,184,26,35,245,33,3,252,0,0,0,0,0,10,144,0,0,0,0,0,15,224,255,255,255,240,0,15,224,255,255,255,240,0,15,224,255,255,255,240,0,15,224,0,0,11,240,255,255,224,0,0,11,240,255,255,224,0,0,11,240,255,255,224,0,0,11,240,0,15,224,191,255,255,240,0,15,224,255,255,255,240,0,15,224,255,255,255,240,0,15,224,255,0,0,0,255,255,224,255,0,0,0,255,255,224,255,0,0,0,255,255,224,255,0,0,0,0,15,224,255,0,5,191,0,15,224,255,255,255,255,0,15,224,255,255,255,255,0,15,224,255,255,254,165,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,5,64,0,0,0,0,0,0,0,0,255,255,255,255,255,224,0,255,255,255,255,255,224,0,255,255,255,255,255,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,0,0, + // 0xb85c 로 + 92,184,30,27,216,33,2,1,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xb8cc 료 + 204,184,30,27,216,33,2,1,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,0,1,253,0,15,224,0,0,0,1,253,0,15,224,0,0,0,1,253,0,15,224,0,0,0,1,253,0,15,224,0,0,0,1,253,0,15,224,0,0,0,1,253,0,15,224,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xb974 르 + 116,185,30,27,216,33,2,1,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xb9ac 리 + 172,185,26,34,238,33,3,253,0,0,0,0,0,5,64,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,127,255,255,254,0,15,224,127,255,255,254,0,15,224,127,255,255,254,0,15,224,0,0,0,254,0,15,224,0,0,0,254,0,15,224,0,0,0,254,0,15,224,0,0,0,254,0,15,224,0,0,0,254,0,15,224,0,0,0,254,0,15,224,127,255,255,254,0,15,224,127,255,255,254,0,15,224,127,255,255,254,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,0,0,0,15,224,127,64,5,106,253,15,224,127,255,255,255,253,15,224,127,255,255,255,253,15,224,127,255,255,169,64,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224, + // 0xb9b0 린 + 176,185,27,34,238,33,3,253,0,0,0,0,0,5,64,0,0,0,0,0,15,224,0,0,0,0,0,15,224,191,255,255,253,0,15,224,191,255,255,253,0,15,224,191,255,255,253,0,15,224,0,0,1,253,0,15,224,0,0,1,253,0,15,224,0,0,1,253,0,15,224,0,0,1,253,0,15,224,191,255,255,253,0,15,224,191,255,255,253,0,15,224,191,255,255,252,0,15,224,191,0,0,0,0,15,224,191,0,0,0,0,15,224,191,0,0,0,0,15,224,191,0,0,0,0,15,224,191,0,1,107,248,15,224,191,255,255,255,252,15,224,191,255,255,255,252,15,224,191,255,255,165,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,106,0,0,0,15,224,0,255,0,0,0,15,224,0,255,0,0,0,5,64,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,255,255,255,255,244,0,255,255,255,255,255,244,0,255,255,255,255,255,244,0,0,0,0,0,0,0, + // 0xb9bd 립 + 189,185,26,33,231,33,3,254,0,0,0,0,0,10,144,0,0,0,0,0,15,224,191,255,255,253,0,15,224,191,255,255,253,0,15,224,191,255,255,253,0,15,224,0,0,1,253,0,15,224,0,0,1,253,0,15,224,0,0,1,253,0,15,224,0,0,1,253,0,15,224,191,255,255,253,0,15,224,191,255,255,253,0,15,224,191,255,255,252,0,15,224,191,0,0,0,0,15,224,191,0,0,0,0,15,224,191,0,0,22,180,15,224,191,255,255,255,248,15,224,191,255,255,255,252,15,224,191,255,255,233,64,15,224,0,0,0,0,0,10,144,0,0,0,0,0,0,0,0,106,0,0,0,10,144,0,191,0,0,0,15,224,0,191,0,0,0,15,224,0,191,0,0,0,15,224,0,191,255,255,255,255,224,0,191,255,255,255,255,224,0,191,255,255,255,255,224,0,191,0,0,0,15,224,0,191,0,0,0,15,224,0,191,0,0,0,15,224,0,191,255,255,255,255,224,0,191,255,255,255,255,224,0,191,255,255,255,255,224, + // 0xb9c1 링 + 193,185,26,34,238,33,3,253,0,0,0,0,0,5,64,0,0,0,0,0,15,224,0,0,0,0,0,15,224,191,255,255,253,0,15,224,191,255,255,253,0,15,224,191,255,255,253,0,15,224,0,0,1,253,0,15,224,0,0,1,253,0,15,224,0,0,1,253,0,15,224,127,255,255,253,0,15,224,191,255,255,253,0,15,224,191,255,255,253,0,15,224,191,0,0,0,0,15,224,191,0,0,0,0,15,224,191,0,0,0,0,15,224,191,0,0,90,248,15,224,191,255,255,255,248,15,224,191,255,255,255,252,15,224,191,255,255,233,64,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,0,0,0,0,27,255,250,64,0,0,2,255,255,255,248,0,0,47,255,255,255,255,0,0,127,228,0,6,255,192,0,255,64,0,0,47,224,0,254,0,0,0,15,240,0,254,0,0,0,15,224,0,255,64,0,0,47,224,0,127,245,0,6,255,192,0,31,255,255,255,255,0,0,2,255,255,255,248,0,0,0,26,255,250,64,0, + // 0xba48 멈 + 72,186,26,33,231,33,3,254,0,0,0,0,0,5,80,0,0,0,0,0,15,224,0,0,0,0,0,15,224,255,255,255,253,0,15,224,255,255,255,253,0,15,224,255,255,255,253,0,15,224,255,0,1,253,0,15,224,255,0,1,253,0,15,224,255,0,1,253,0,15,224,255,0,1,255,255,255,224,255,0,1,255,255,255,224,255,0,1,255,255,255,224,255,0,1,253,0,15,224,255,0,1,253,0,15,224,255,0,1,253,0,15,224,255,255,255,253,0,15,224,255,255,255,253,0,15,224,191,255,255,253,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,10,144,0,0,0,0,0,0,0,0,191,255,255,255,255,224,0,191,255,255,255,255,224,0,191,255,255,255,255,224,0,191,0,0,0,15,224,0,191,0,0,0,15,224,0,191,0,0,0,15,224,0,191,0,0,0,15,224,0,191,0,0,0,15,224,0,191,0,0,0,15,224,0,191,255,255,255,255,224,0,191,255,255,255,255,224,0,191,255,255,255,255,224, + // 0xba54 메 + 84,186,27,34,238,33,3,253,0,0,0,0,0,2,164,0,0,0,0,127,3,248,0,0,0,0,127,3,248,0,0,0,0,127,3,248,255,255,255,64,127,3,248,255,255,255,64,127,3,248,255,255,255,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,255,255,3,248,253,0,63,255,255,3,248,253,0,63,255,255,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,255,255,255,64,127,3,248,255,255,255,64,127,3,248,255,255,255,64,127,3,248,0,0,0,0,127,3,248,0,0,0,0,127,3,248,0,0,0,0,127,3,248,0,0,0,0,127,3,248,0,0,0,0,127,3,248,0,0,0,0,127,3,248,0,0,0,0,127,3,248,0,0,0,0,21,3,248,0,0,0,0,0,3,244, + // 0xba74 면 + 116,186,27,34,238,33,3,253,0,0,0,0,0,6,144,0,0,0,0,0,15,224,0,0,0,0,0,15,224,191,255,255,253,0,15,224,255,255,255,253,0,15,224,255,255,255,253,0,15,224,255,0,1,255,255,255,224,255,0,1,255,255,255,224,255,0,1,255,255,255,224,255,0,1,253,0,15,224,255,0,1,253,0,15,224,255,0,1,253,0,15,224,255,0,1,253,0,15,224,255,0,1,255,255,255,224,255,0,1,255,255,255,224,255,0,1,255,255,255,224,255,255,255,253,0,15,224,255,255,255,253,0,15,224,255,255,255,253,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,42,0,0,0,15,224,0,127,64,0,0,15,224,0,127,64,0,0,10,144,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,127,255,255,255,255,248,0,127,255,255,255,255,248,0,127,255,255,255,255,248,0,0,0,0,0,0,0, + // 0xbaa8 모 + 168,186,30,27,216,33,2,1,3,255,255,255,255,255,240,0,3,255,255,255,255,255,240,0,3,255,255,255,255,255,240,0,3,248,0,0,0,15,240,0,3,248,0,0,0,15,240,0,3,248,0,0,0,15,240,0,3,248,0,0,0,15,240,0,3,248,0,0,0,15,240,0,3,248,0,0,0,15,240,0,3,248,0,0,0,15,240,0,3,248,0,0,0,15,240,0,3,248,0,0,0,15,240,0,3,248,0,0,0,15,240,0,3,255,255,255,255,255,240,0,3,255,255,255,255,255,240,0,3,255,255,255,255,255,240,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xbabb 못 + 187,186,29,32,0,33,2,253,1,255,255,255,255,255,208,0,1,255,255,255,255,255,208,0,1,255,255,255,255,255,208,0,1,252,0,0,0,15,208,0,1,252,0,0,0,15,208,0,1,252,0,0,0,15,208,0,1,252,0,0,0,15,208,0,1,252,0,0,0,15,208,0,1,255,255,255,255,255,208,0,1,255,255,255,255,255,208,0,1,255,255,255,255,255,208,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,192,0,0,0,0,0,3,255,240,0,0,0,0,0,15,251,252,0,0,0,0,0,127,226,255,64,0,0,0,7,255,128,191,244,0,0,6,255,254,0,47,255,228,0,11,255,240,0,3,255,252,0,7,254,0,0,0,47,244,0,2,64,0,0,0,0,96,0, + // 0xbbf8 미 + 248,187,26,35,245,33,3,252,0,0,0,0,0,5,64,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,127,255,255,255,0,15,224,127,255,255,255,0,15,224,127,255,255,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,0,0,255,0,15,224,127,255,255,255,0,15,224,127,255,255,255,0,15,224,127,255,255,255,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,0,0, + // 0xbc00 밀 + 0,188,27,34,238,33,3,253,0,0,0,0,0,10,144,0,0,0,0,0,15,224,127,255,255,255,0,15,224,191,255,255,255,0,15,224,191,255,255,255,0,15,224,191,0,0,191,0,15,224,191,0,0,191,0,15,224,191,0,0,191,0,15,224,191,0,0,191,0,15,224,191,0,0,191,0,15,224,191,0,0,191,0,15,224,191,0,0,191,0,15,224,191,0,0,191,0,15,224,191,255,255,255,0,15,224,191,255,255,255,0,15,224,191,255,255,255,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,5,80,0,0,0,0,0,0,0,0,191,255,255,255,255,224,0,191,255,255,255,255,224,0,191,255,255,255,255,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,191,255,255,255,255,224,0,191,255,255,255,255,224,0,191,170,170,170,170,144,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,255,255,255,255,248,0,191,255,255,255,255,248,0,191,255,255,255,255,248, + // 0xbc14 바 + 20,188,29,34,16,33,3,253,0,0,0,0,0,106,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,169,0,0,169,0,191,0,0,254,0,1,253,0,191,0,0,254,0,1,253,0,191,0,0,254,0,1,253,0,191,0,0,254,0,1,253,0,191,0,0,254,0,1,253,0,191,0,0,254,0,1,253,0,191,0,0,254,0,1,253,0,191,0,0,254,0,1,253,0,191,0,0,255,255,255,253,0,191,0,0,255,255,255,253,0,191,255,192,255,255,255,253,0,191,255,192,254,0,1,253,0,191,255,192,254,0,1,253,0,191,0,0,254,0,1,253,0,191,0,0,254,0,1,253,0,191,0,0,254,0,1,253,0,191,0,0,254,0,1,253,0,191,0,0,254,0,1,253,0,191,0,0,254,0,1,253,0,191,0,0,255,255,255,253,0,191,0,0,255,255,255,253,0,191,0,0,255,255,255,253,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0, + // 0xbc84 버 + 132,188,26,35,245,33,3,252,0,0,0,0,0,5,80,0,0,0,0,0,15,240,0,0,0,0,0,15,240,170,0,1,168,0,15,240,254,0,1,253,0,15,240,254,0,1,253,0,15,240,254,0,1,253,0,15,240,254,0,1,253,0,15,240,254,0,1,253,0,15,240,254,0,1,253,0,15,240,254,0,1,253,0,15,240,254,0,1,253,0,15,240,255,255,255,253,0,15,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,254,0,1,255,255,255,240,254,0,1,253,0,15,240,254,0,1,253,0,15,240,254,0,1,253,0,15,240,254,0,1,253,0,15,240,254,0,1,253,0,15,240,254,0,1,253,0,15,240,254,0,1,253,0,15,240,255,255,255,253,0,15,240,255,255,255,253,0,15,240,255,255,255,253,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,0,0, + // 0xbca0 베 + 160,188,27,34,238,33,3,253,0,0,0,0,0,1,84,0,0,0,0,127,3,248,0,0,0,0,127,3,248,0,0,21,0,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,255,255,255,64,127,3,248,255,255,255,255,255,3,248,255,255,255,255,255,3,248,253,0,63,255,255,3,248,253,0,63,128,191,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,253,0,63,64,127,3,248,255,255,255,64,127,3,248,255,255,255,64,127,3,248,255,255,255,64,127,3,248,0,0,0,0,127,3,248,0,0,0,0,127,3,248,0,0,0,0,127,3,248,0,0,0,0,127,3,248,0,0,0,0,127,3,248,0,0,0,0,127,3,248,0,0,0,0,21,3,248,0,0,0,0,0,3,248, + // 0xbca8 벨 + 168,188,28,34,238,33,3,253,0,0,0,0,0,1,80,0,0,0,0,126,3,244,169,0,26,64,191,3,244,254,0,47,192,191,3,244,254,0,47,192,191,3,244,254,0,47,192,191,3,244,255,255,255,192,191,3,244,255,255,255,192,191,3,244,255,255,255,255,255,3,244,254,0,47,255,255,3,244,254,0,47,255,255,3,244,254,0,47,192,191,3,244,254,0,47,192,191,3,244,254,0,47,192,191,3,244,255,255,255,192,191,3,244,255,255,255,192,191,3,244,255,255,255,128,191,3,244,0,0,0,0,126,3,244,0,0,0,0,0,0,0,0,127,255,255,255,255,244,0,127,255,255,255,255,244,0,127,255,255,255,255,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,127,255,255,255,255,244,0,127,255,255,255,255,244,0,127,234,170,170,170,160,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,127,255,255,255,255,254,0,127,255,255,255,255,254,0,127,255,255,255,255,253, + // 0xbcf8 본 + 248,188,29,32,0,33,2,253,1,253,0,0,0,15,208,0,1,253,0,0,0,15,208,0,1,253,0,0,0,15,208,0,1,253,0,0,0,15,208,0,1,255,255,255,255,255,208,0,1,255,255,255,255,255,208,0,1,255,255,255,255,255,208,0,1,253,0,0,0,15,208,0,1,253,0,0,0,15,208,0,1,253,0,0,0,15,208,0,1,255,255,255,255,255,208,0,1,255,255,255,255,255,208,0,1,255,255,255,255,255,208,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0, + // 0xbe44 비 + 68,190,26,34,238,33,3,253,0,0,0,0,0,5,80,0,0,0,0,0,15,224,0,0,0,0,0,15,224,106,0,0,106,0,15,224,127,0,0,191,0,15,224,127,0,0,191,0,15,224,127,0,0,191,0,15,224,127,0,0,191,0,15,224,127,0,0,191,0,15,224,127,0,0,191,0,15,224,127,0,0,191,0,15,224,127,0,0,191,0,15,224,127,255,255,255,0,15,224,127,255,255,255,0,15,224,127,255,255,255,0,15,224,127,0,0,191,0,15,224,127,0,0,191,0,15,224,127,0,0,191,0,15,224,127,0,0,191,0,15,224,127,0,0,191,0,15,224,127,0,0,191,0,15,224,127,0,0,191,0,15,224,127,0,0,191,0,15,224,127,255,255,255,0,15,224,127,255,255,255,0,15,224,127,255,255,255,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224, + // 0xc0ac 사 + 172,192,31,34,16,33,1,253,0,0,0,0,0,5,80,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,106,0,0,11,240,0,0,0,127,0,0,11,240,0,0,0,127,0,0,11,240,0,0,0,127,0,0,11,240,0,0,0,127,0,0,11,240,0,0,0,191,0,0,11,240,0,0,0,191,0,0,11,240,0,0,0,191,64,0,11,240,0,0,0,191,64,0,11,240,0,0,0,255,128,0,11,240,0,0,0,255,192,0,11,240,0,0,1,255,192,0,11,255,252,0,2,255,224,0,11,255,252,0,3,255,240,0,11,255,252,0,11,247,244,0,11,240,0,0,31,227,252,0,11,240,0,0,63,193,255,0,11,240,0,0,191,128,255,128,11,240,0,2,255,0,63,224,11,240,0,11,253,0,47,248,11,240,0,127,248,0,11,255,11,240,0,127,224,0,2,252,11,240,0,47,128,0,0,116,11,240,0,9,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0, + // 0xc0bd 삽 + 189,192,30,33,8,33,2,254,0,0,0,0,0,26,128,0,0,0,0,0,0,31,192,0,0,1,252,0,0,31,192,0,0,1,252,0,0,31,192,0,0,2,252,0,0,31,192,0,0,2,253,0,0,31,192,0,0,2,253,0,0,31,192,0,0,3,254,0,0,31,192,0,0,3,255,0,0,31,255,240,0,11,255,64,0,31,255,240,0,15,255,192,0,31,255,240,0,47,223,240,0,31,208,0,0,191,139,252,0,31,192,0,2,255,3,255,0,31,192,0,11,253,0,255,224,31,192,0,191,248,0,127,248,31,192,0,255,208,0,15,240,31,192,0,127,64,0,1,208,31,192,0,36,0,0,0,0,31,192,0,0,0,0,0,0,0,0,0,0,106,0,0,0,26,128,0,0,191,0,0,0,31,192,0,0,191,0,0,0,31,192,0,0,191,0,0,0,31,192,0,0,191,255,255,255,255,192,0,0,191,255,255,255,255,192,0,0,191,255,255,255,255,192,0,0,191,0,0,0,31,192,0,0,191,0,0,0,31,192,0,0,191,0,0,0,31,192,0,0,191,255,255,255,255,192,0,0,191,255,255,255,255,192,0,0,191,255,255,255,255,192,0, + // 0xc0c8 새 + 200,192,29,34,16,33,1,253,0,0,0,0,0,0,21,64,0,0,0,0,15,208,63,128,0,0,0,0,15,208,63,128,0,1,84,0,15,208,63,128,0,2,252,0,15,208,63,128,0,2,252,0,15,208,63,128,0,2,252,0,15,208,63,128,0,2,252,0,15,208,63,128,0,2,252,0,15,208,63,128,0,2,252,0,15,208,63,128,0,3,252,0,15,208,63,128,0,3,252,0,15,208,63,128,0,3,252,0,15,208,63,128,0,3,252,0,15,208,63,128,0,7,253,0,15,255,255,128,0,11,255,0,15,255,255,128,0,15,255,0,15,255,255,128,0,31,255,64,15,208,63,128,0,47,239,192,15,208,63,128,0,127,79,224,15,208,63,128,0,255,15,244,15,208,63,128,2,253,3,253,15,208,63,128,11,252,2,255,79,208,63,128,47,244,0,255,207,208,63,128,127,208,0,63,79,208,63,128,47,128,0,10,15,208,63,128,9,0,0,0,15,208,63,128,0,0,0,0,15,208,63,128,0,0,0,0,15,208,63,128,0,0,0,0,15,208,63,128,0,0,0,0,15,208,63,128,0,0,0,0,15,208,63,128,0,0,0,0,5,64,63,128,0,0,0,0,0,0,63,128, + // 0xc124 설 + 36,193,28,34,238,33,2,253,0,0,0,0,0,2,164,0,0,84,0,0,3,248,0,1,253,0,0,3,248,0,1,253,0,0,3,248,0,1,253,0,0,3,248,0,1,253,0,0,3,248,0,2,254,0,191,255,248,0,3,255,0,191,255,248,0,7,255,64,191,255,248,0,15,255,192,0,3,248,0,31,239,224,0,3,248,0,127,203,252,0,3,248,1,255,67,255,0,3,248,11,254,0,255,224,3,248,191,248,0,127,248,3,248,255,208,0,11,240,3,248,63,64,0,1,144,3,248,20,0,0,0,0,2,164,0,0,0,0,0,0,0,0,31,255,255,255,255,248,0,31,255,255,255,255,248,0,31,255,255,255,255,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,31,255,255,255,255,248,0,31,255,255,255,255,248,0,31,250,170,170,170,168,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,255,255,255,255,255,0,31,255,255,255,255,255,0,31,255,255,255,255,255, + // 0xc18c 소 + 140,193,30,28,224,33,2,1,0,0,0,21,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,192,0,0,0,0,0,1,255,192,0,0,0,0,0,3,255,224,0,0,0,0,0,7,255,240,0,0,0,0,0,15,243,252,0,0,0,0,0,63,209,255,0,0,0,0,1,255,128,255,192,0,0,0,11,254,0,63,248,0,0,0,191,248,0,15,255,128,0,47,255,224,0,2,255,254,0,47,254,0,0,0,127,254,0,15,228,0,0,0,7,252,0,9,0,0,127,0,0,20,0,0,0,0,127,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xc18d 속 + 141,193,30,33,8,33,2,253,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,192,0,0,0,0,0,1,255,208,0,0,0,0,0,3,255,240,0,0,0,0,0,15,247,252,0,0,0,0,0,127,210,255,64,0,0,0,7,255,128,191,228,0,0,1,191,253,0,31,255,144,0,31,255,240,0,3,255,253,0,15,254,64,42,0,127,252,0,7,144,0,127,64,1,180,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,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,255,255,255,255,255,224,0,3,255,255,255,255,255,224,0,3,255,255,255,255,255,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0, + // 0xc2a4 스 + 164,194,30,28,224,33,2,1,0,0,0,21,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,128,0,0,0,0,0,0,255,192,0,0,0,0,0,2,255,208,0,0,0,0,0,3,255,240,0,0,0,0,0,15,247,248,0,0,0,0,0,47,210,254,0,0,0,0,0,191,192,255,128,0,0,0,3,255,0,127,224,0,0,0,47,252,0,31,253,0,0,6,255,240,0,7,255,228,0,63,255,128,0,0,255,255,0,31,253,0,0,0,31,253,0,15,144,0,0,0,1,188,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xc2ac 슬 + 172,194,29,34,16,33,2,253,0,0,0,21,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,192,0,0,0,0,0,1,255,208,0,0,0,0,0,3,255,244,0,0,0,0,0,31,247,253,0,0,0,0,0,255,192,255,192,0,0,0,31,255,64,127,253,64,0,31,255,248,0,11,255,253,0,15,255,144,0,0,191,252,0,15,228,0,0,0,6,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,1,170,170,170,170,175,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0, + // 0xc2dc 시 + 220,194,27,33,231,33,2,253,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,255,0,0,3,248,0,0,255,0,0,3,248,0,0,255,0,0,3,248,0,0,255,0,0,3,248,0,0,255,0,0,3,248,0,0,255,0,0,3,248,0,0,255,0,0,3,248,0,0,255,0,0,3,248,0,1,255,0,0,3,248,0,1,255,64,0,3,248,0,3,255,128,0,3,248,0,3,255,192,0,3,248,0,11,255,224,0,3,248,0,15,235,240,0,3,248,0,47,195,252,0,3,248,0,127,194,254,0,3,248,0,255,64,255,64,3,248,3,254,0,127,208,3,248,31,252,0,47,248,3,248,191,240,0,11,255,3,248,255,192,0,2,253,3,248,127,0,0,0,120,3,248,40,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,2,164, + // 0xc2dd 식 + 221,194,27,34,238,33,2,253,0,0,0,0,0,2,164,0,0,0,0,0,3,248,0,0,254,0,0,3,248,0,0,254,0,0,3,248,0,0,254,0,0,3,248,0,0,254,0,0,3,248,0,0,255,0,0,3,248,0,1,255,0,0,3,248,0,2,255,0,0,3,248,0,3,255,128,0,3,248,0,7,255,192,0,3,248,0,15,255,240,0,3,248,0,63,203,248,0,3,248,0,255,131,254,0,3,248,3,255,0,255,208,3,248,47,252,0,127,252,3,248,255,244,0,15,252,3,248,127,192,0,2,244,3,248,45,0,0,0,16,3,248,0,0,0,0,0,3,248,0,0,0,0,0,1,84,0,0,0,0,0,0,0,0,127,255,255,255,255,248,0,127,255,255,255,255,248,0,127,255,255,255,255,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248, + // 0xc5b4 어 + 180,197,27,34,238,33,2,253,0,0,0,0,0,1,84,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,27,249,0,0,3,252,0,191,255,192,0,3,252,2,255,255,240,0,3,252,11,254,111,248,0,3,252,15,240,3,253,0,3,252,47,208,0,254,0,3,252,63,192,0,191,0,3,252,63,64,0,127,0,3,252,127,0,0,63,64,3,252,127,0,0,63,128,3,252,191,0,0,63,255,255,252,191,0,0,47,255,255,252,191,0,0,63,255,255,252,191,0,0,63,128,3,252,127,0,0,63,128,3,252,63,64,0,63,64,3,252,63,128,0,191,0,3,252,47,192,0,255,0,3,252,31,224,2,253,0,3,252,11,248,11,252,0,3,252,3,255,255,240,0,3,252,0,255,255,208,0,3,252,0,47,254,0,0,3,252,0,0,64,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252, + // 0xc5c6 없 + 198,197,30,35,24,33,2,252,0,0,0,0,0,1,84,0,0,0,0,0,0,3,248,0,0,47,254,0,0,3,248,0,1,255,255,224,0,3,248,0,11,255,255,252,0,3,248,0,47,244,7,255,0,3,248,0,63,192,0,191,64,3,248,0,127,64,0,63,192,3,248,0,191,0,0,47,255,255,248,0,191,0,0,31,255,255,248,0,191,0,0,47,255,255,248,0,127,64,0,63,192,3,248,0,63,192,0,191,64,3,248,0,47,244,7,255,0,3,248,0,11,255,255,252,0,3,248,0,1,255,255,240,0,3,248,0,0,47,254,64,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,0,0,2,252,1,252,0,127,64,0,2,252,1,252,0,127,64,0,2,252,1,252,0,127,64,0,2,252,1,252,0,127,64,0,2,255,255,252,0,191,128,0,2,255,255,252,0,255,192,0,2,254,171,252,1,255,208,0,2,252,1,252,3,255,224,0,2,252,1,252,11,251,244,0,2,252,1,252,31,243,253,0,2,252,1,252,191,193,255,128,2,255,255,255,255,64,191,240,2,255,255,253,253,0,31,208,1,255,255,252,176,0,2,128,0,0,0,0,0,0,0,0, + // 0xc5d1 엑 + 209,197,28,34,238,33,2,253,0,0,0,0,0,0,84,0,0,0,0,26,128,253,0,0,0,0,31,192,253,0,191,244,0,31,192,253,3,255,255,0,31,192,253,15,255,255,192,31,192,253,63,224,47,240,31,192,253,127,64,7,240,31,192,253,191,0,3,248,31,192,253,254,0,2,255,255,192,253,253,0,2,255,255,192,253,253,0,2,255,255,192,253,254,0,3,248,31,192,253,191,0,3,244,31,192,253,63,128,15,240,31,192,253,47,244,127,224,31,192,253,15,255,255,192,31,192,253,3,255,254,0,31,192,253,0,111,228,0,31,192,253,0,0,0,0,31,192,253,0,0,0,0,5,64,168,0,0,0,0,0,0,0,0,47,255,255,255,255,253,0,47,255,255,255,255,253,0,47,255,255,255,255,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253, + // 0xc5d4 엔 + 212,197,28,34,238,33,2,253,0,0,0,0,0,0,84,0,0,0,0,31,192,253,0,0,0,0,31,192,253,0,111,228,0,31,192,253,3,255,254,0,31,192,253,15,255,255,192,31,192,253,47,244,127,224,31,192,253,63,128,15,240,31,192,253,191,0,3,244,31,192,253,254,0,3,248,31,192,253,253,0,2,255,255,192,253,253,0,2,255,255,192,253,254,0,2,255,255,192,253,191,0,3,248,31,192,253,127,64,11,240,31,192,253,63,224,47,240,31,192,253,15,255,255,192,31,192,253,3,255,255,0,31,192,253,0,191,244,0,31,192,253,0,0,0,0,31,192,253,0,0,0,0,31,192,253,0,0,0,0,31,192,253,0,15,224,0,31,192,253,0,15,224,0,31,192,253,0,15,224,0,0,0,253,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,255,255,255,255,255,0,15,255,255,255,255,255,0,15,255,255,255,255,255,0,0,0,0,0,0,0, + // 0xc5f4 열 + 244,197,28,34,238,33,2,253,0,0,0,0,0,2,164,0,0,0,0,0,3,248,0,47,254,64,0,3,248,1,255,255,244,0,3,248,11,255,255,255,255,255,248,47,244,7,255,255,255,248,63,192,0,191,255,255,248,127,64,0,63,192,3,248,191,0,0,47,192,3,248,191,0,0,31,192,3,248,191,0,0,47,192,3,248,127,64,0,63,255,255,248,63,192,0,191,255,255,248,47,248,7,255,255,255,248,11,255,255,252,0,3,248,1,255,255,224,0,3,248,0,27,253,0,0,3,248,0,0,0,0,0,1,84,0,0,0,0,0,0,0,0,31,255,255,255,255,248,0,31,255,255,255,255,248,0,31,255,255,255,255,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,31,255,255,255,255,248,0,31,255,255,255,255,248,0,31,250,170,170,170,168,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,255,255,255,255,255,0,31,255,255,255,255,255,0,31,255,255,255,255,255, + // 0xc608 예 + 8,198,28,34,238,33,2,253,0,0,0,0,0,0,169,0,0,0,0,31,192,254,0,0,0,0,31,192,254,0,111,208,0,31,192,254,2,255,252,0,31,192,254,7,255,254,0,31,192,254,15,250,255,64,31,192,254,47,192,63,192,31,192,254,63,128,31,255,255,192,254,63,0,15,255,255,192,254,127,0,11,255,255,192,254,190,0,7,240,31,192,254,190,0,7,240,31,192,254,254,0,7,240,31,192,254,254,0,7,240,31,192,254,254,0,7,240,31,192,254,254,0,7,240,31,192,254,190,0,7,240,31,192,254,190,0,7,240,31,192,254,127,0,11,255,255,192,254,63,0,15,255,255,192,254,63,128,31,255,255,192,254,47,192,63,192,31,192,254,15,250,255,64,31,192,254,7,255,254,0,31,192,254,2,255,252,0,31,192,254,0,111,208,0,31,192,254,0,0,0,0,31,192,254,0,0,0,0,31,192,254,0,0,0,0,31,192,254,0,0,0,0,31,192,254,0,0,0,0,31,192,254,0,0,0,0,5,64,254,0,0,0,0,0,0,254, + // 0xc624 오 + 36,198,30,28,224,33,2,1,0,0,6,255,228,0,0,0,0,1,255,255,255,208,0,0,0,15,255,255,255,252,0,0,0,63,249,64,91,255,0,0,0,255,128,0,0,191,192,0,2,254,0,0,0,47,224,0,3,252,0,0,0,15,240,0,7,244,0,0,0,7,244,0,7,240,0,0,0,3,244,0,7,240,0,0,0,3,244,0,7,244,0,0,0,7,244,0,3,252,0,0,0,15,240,0,2,253,0,0,0,47,224,0,0,255,128,0,0,191,192,0,0,127,249,0,27,255,64,0,0,31,255,255,255,253,0,0,0,2,255,255,255,224,0,0,0,0,27,255,249,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xc628 온 + 40,198,29,33,8,33,2,253,0,0,27,255,249,0,0,0,0,7,255,255,255,244,0,0,0,47,255,255,255,254,0,0,0,255,249,0,27,255,192,0,1,255,64,0,0,127,208,0,3,252,0,0,0,15,240,0,3,252,0,0,0,15,240,0,3,252,0,0,0,15,240,0,3,252,0,0,0,15,240,0,1,255,64,0,0,127,224,0,0,255,244,0,11,255,192,0,0,63,255,255,255,255,0,0,0,7,255,255,255,244,0,0,0,0,26,255,233,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0, + // 0xc644 완 + 68,198,30,33,8,33,2,254,0,0,0,0,0,5,64,0,0,0,0,0,0,31,208,0,0,10,254,128,0,31,208,0,0,191,255,248,0,31,208,0,3,255,255,255,0,31,208,0,11,252,0,191,128,31,208,0,15,240,0,47,192,31,208,0,31,208,0,15,208,31,208,0,31,192,0,15,224,31,208,0,31,192,0,15,208,31,208,0,15,208,0,15,208,31,208,0,15,240,0,63,192,31,208,0,7,254,65,255,64,31,255,224,2,255,255,254,0,31,255,224,0,63,255,244,0,31,255,224,0,1,254,0,0,31,208,0,0,0,253,0,0,31,208,0,0,1,254,86,174,31,208,0,255,255,255,255,255,31,208,0,255,255,255,255,254,31,208,0,255,255,250,165,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,85,0,0,0,31,208,0,0,191,0,0,0,31,208,0,0,191,0,0,0,31,192,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,255,255,255,255,244,0,0,191,255,255,255,255,244,0,0,191,255,255,255,255,244,0, + // 0xc6d0 원 + 208,198,29,34,16,33,1,253,0,0,0,0,0,0,85,0,0,0,0,0,0,0,254,0,0,1,191,232,0,0,254,0,0,31,255,255,128,0,254,0,0,191,255,255,240,0,254,0,1,255,64,11,248,0,254,0,2,252,0,3,252,0,254,0,3,252,0,1,252,0,254,0,3,252,0,1,252,0,254,0,2,253,0,3,252,0,254,0,0,255,128,31,244,0,254,0,0,127,255,255,224,0,254,0,0,11,255,255,64,0,254,0,0,0,106,148,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,85,171,224,254,0,127,255,255,255,255,224,254,0,63,255,255,255,255,224,254,0,63,255,255,249,64,0,254,0,0,0,31,208,0,0,254,0,0,0,31,208,31,255,254,0,0,0,31,208,31,255,254,0,0,0,31,208,10,170,254,0,0,21,95,208,0,0,254,0,0,63,159,208,0,0,254,0,0,63,128,0,0,0,170,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,255,255,255,255,255,128,0,63,255,255,255,255,255,128,0,63,255,255,255,255,255,128,0,0,0,0,0,0,0,0, + // 0xc704 위 + 4,199,27,34,238,33,2,253,0,0,0,0,0,1,84,0,0,0,0,0,3,248,0,2,255,224,0,3,248,0,47,255,254,0,3,248,0,255,255,255,192,3,248,3,255,64,127,240,3,248,7,248,0,15,244,3,248,15,240,0,3,248,3,248,15,224,0,3,248,3,248,15,224,0,3,248,3,248,15,240,0,3,248,3,248,7,248,0,15,244,3,248,3,255,64,127,240,3,248,0,255,255,255,192,3,248,0,47,255,254,0,3,248,0,2,191,160,0,3,248,0,0,0,0,0,3,248,0,0,0,85,171,195,248,255,255,255,255,255,195,248,255,255,255,255,255,131,248,255,255,255,233,64,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,63,64,0,3,248,0,0,0,0,0,3,248, + // 0xc73c 으 + 60,199,30,28,224,33,2,1,0,0,6,255,228,0,0,0,0,1,255,255,255,208,0,0,0,11,255,255,255,248,0,0,0,63,253,64,95,255,0,0,0,255,208,0,1,255,192,0,1,255,0,0,0,63,208,0,3,252,0,0,0,15,240,0,3,248,0,0,0,11,240,0,7,244,0,0,0,7,244,0,7,240,0,0,0,3,244,0,7,244,0,0,0,7,244,0,3,248,0,0,0,11,240,0,3,252,0,0,0,15,240,0,1,254,0,0,0,47,224,0,0,255,208,0,1,255,192,0,0,63,253,64,95,255,0,0,0,15,255,255,255,252,0,0,0,1,255,255,255,208,0,0,0,0,27,255,249,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xc74c 음 + 76,199,29,32,0,33,2,254,0,0,26,255,233,0,0,0,0,7,255,255,255,244,0,0,0,63,255,255,255,255,0,0,0,255,228,0,6,255,192,0,2,255,0,0,0,63,224,0,3,252,0,0,0,15,240,0,3,252,0,0,0,15,240,0,3,252,0,0,0,15,240,0,2,255,0,0,0,63,224,0,0,255,228,0,6,255,192,0,0,63,255,255,255,255,0,0,0,7,255,255,255,248,0,0,0,0,43,255,250,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,252,0,0,0,15,224,0,2,252,0,0,0,15,224,0,2,252,0,0,0,15,224,0,2,252,0,0,0,15,224,0,2,252,0,0,0,15,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0, + // 0xc774 이 + 116,199,26,34,238,33,3,253,0,0,0,0,0,5,80,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,31,248,0,0,15,224,0,255,255,128,0,15,224,3,255,255,224,0,15,224,15,253,111,244,0,15,224,47,224,3,252,0,15,224,63,192,1,254,0,15,224,127,64,0,255,0,15,224,191,0,0,191,0,15,224,255,0,0,63,64,15,224,254,0,0,63,128,15,224,254,0,0,63,128,15,224,253,0,0,63,128,15,224,254,0,0,63,128,15,224,254,0,0,63,128,15,224,255,0,0,63,64,15,224,191,0,0,127,0,15,224,127,64,0,255,0,15,224,63,128,0,254,0,15,224,47,208,3,252,0,15,224,15,248,31,248,0,15,224,7,255,255,240,0,15,224,1,255,255,192,0,15,224,0,47,254,0,0,15,224,0,0,64,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,0,0,15,224, + // 0xc77c 일 + 124,199,28,34,238,33,2,253,0,0,0,0,0,1,80,0,0,0,0,0,3,248,0,27,254,64,0,3,248,1,255,255,244,0,3,248,11,255,255,253,0,3,248,31,248,6,255,64,3,248,63,208,0,127,192,3,248,127,128,0,47,192,3,248,127,0,0,31,208,3,248,191,0,0,15,208,3,248,127,0,0,31,208,3,248,127,128,0,47,192,3,248,63,208,0,127,192,3,248,31,248,6,255,64,3,248,11,255,255,253,0,3,248,1,255,255,244,0,3,248,0,27,254,64,0,3,248,0,0,0,0,0,2,164,0,0,0,0,0,0,0,0,47,255,255,255,255,248,0,47,255,255,255,255,248,0,47,255,255,255,255,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,47,255,255,255,255,248,0,47,255,255,255,255,248,0,47,234,170,170,170,164,0,47,192,0,0,0,0,0,47,192,0,0,0,0,0,47,192,0,0,0,0,0,47,255,255,255,255,254,0,47,255,255,255,255,254,0,47,255,255,255,255,254, + // 0xc77d 읽 + 125,199,27,35,245,33,2,252,0,0,0,0,0,1,84,0,0,0,0,0,3,248,0,27,254,64,0,3,248,1,255,255,240,0,3,248,11,255,255,253,0,3,248,31,248,6,255,64,3,248,63,208,0,127,192,3,248,127,128,0,47,192,3,248,127,0,0,31,208,3,248,191,0,0,15,208,3,248,127,0,0,31,208,3,248,127,128,0,47,192,3,248,63,208,0,127,192,3,248,31,248,6,255,64,3,248,11,255,255,253,0,3,248,1,255,255,244,0,3,248,0,27,254,64,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,0,0,1,255,255,248,255,255,248,1,255,255,248,255,255,248,1,255,255,248,255,255,248,0,0,3,248,0,3,248,0,0,3,248,0,3,248,0,0,3,248,0,3,248,0,255,255,248,0,3,248,0,255,255,248,0,3,248,0,255,170,164,0,3,248,0,253,0,0,0,3,248,0,253,0,0,0,3,248,0,253,0,22,128,3,248,0,255,255,255,192,3,248,0,255,255,255,192,3,248,0,255,254,165,0,3,248,0,0,0,0,0,0,0, + // 0xc785 입 + 133,199,27,33,231,33,2,254,0,0,0,0,0,1,84,0,0,0,0,0,3,248,0,27,254,64,0,3,248,0,255,255,244,0,3,248,7,255,255,254,0,3,248,31,249,6,255,64,3,248,63,208,0,63,192,3,248,127,128,0,31,208,3,248,127,64,0,15,224,3,248,191,0,0,15,224,3,248,127,64,0,15,224,3,248,127,128,0,31,208,3,248,63,208,0,63,192,3,248,31,248,2,255,64,3,248,11,255,255,254,0,3,248,1,255,255,244,0,3,248,0,27,255,64,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,192,0,0,3,248,0,47,192,0,0,3,248,0,47,192,0,0,3,248,0,47,192,0,0,3,248,0,47,255,255,255,255,248,0,47,255,255,255,255,248,0,47,255,255,255,255,248,0,47,192,0,0,3,248,0,47,192,0,0,3,248,0,47,192,0,0,3,248,0,47,255,255,255,255,248,0,47,255,255,255,255,248,0,47,255,255,255,255,248, + // 0xc790 자 + 144,199,31,34,16,33,1,253,0,0,0,0,0,5,80,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,47,255,255,255,252,11,240,0,47,255,255,255,252,11,240,0,47,255,255,255,252,11,240,0,0,0,127,0,0,11,240,0,0,0,127,0,0,11,240,0,0,0,127,0,0,11,240,0,0,0,191,0,0,11,240,0,0,0,191,64,0,11,240,0,0,0,191,64,0,11,240,0,0,0,255,128,0,11,240,0,0,0,255,192,0,11,255,252,0,1,255,192,0,11,255,252,0,3,255,224,0,11,255,252,0,3,251,240,0,11,240,0,0,11,243,248,0,11,240,0,0,31,210,253,0,11,240,0,0,63,192,255,64,11,240,0,0,255,64,127,192,11,240,0,2,255,0,47,244,11,240,0,15,252,0,15,254,11,240,0,127,244,0,3,255,11,240,0,63,208,0,0,188,11,240,0,31,0,0,0,20,11,240,0,4,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0, + // 0xc791 작 + 145,199,30,34,16,33,2,253,0,0,0,0,0,5,64,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,127,255,255,255,240,31,192,0,127,255,255,255,240,31,192,0,127,255,255,255,240,31,192,0,0,2,252,0,0,31,192,0,0,2,253,0,0,31,192,0,0,2,253,0,0,31,192,0,0,3,255,0,0,31,255,240,0,7,255,64,0,31,255,240,0,15,255,192,0,31,255,240,0,47,239,224,0,31,208,0,0,127,143,248,0,31,192,0,1,255,7,254,0,31,192,0,11,253,1,255,208,31,192,0,191,248,0,127,248,31,192,0,255,208,0,15,240,31,192,0,127,0,0,1,208,31,192,0,36,0,0,0,0,31,192,0,0,0,0,0,0,5,64,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,192,0,0,255,255,255,255,255,192,0,0,255,255,255,255,255,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0, + // 0xc798 잘 + 152,199,31,34,16,33,1,253,0,0,0,0,0,6,160,0,0,0,0,0,0,7,240,0,31,255,255,255,252,7,240,0,31,255,255,255,252,7,240,0,31,255,255,255,252,7,240,0,0,0,191,0,0,7,240,0,0,0,191,64,0,7,240,0,0,0,255,64,0,7,240,0,0,0,255,192,0,7,255,252,0,1,255,208,0,7,255,252,0,3,255,240,0,7,255,252,0,11,251,248,0,7,240,0,0,47,227,255,0,7,240,0,0,255,192,255,224,7,240,0,11,255,0,63,254,7,240,0,127,252,0,11,253,7,240,0,63,224,0,0,188,7,240,0,14,0,0,0,0,7,240,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,240,0,0,63,255,255,255,255,240,0,0,63,255,255,255,255,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,47,255,255,255,255,240,0,0,47,255,255,255,255,240,0,0,47,234,170,170,170,160,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,255,255,255,255,253,0,0,47,255,255,255,255,253,0,0,47,255,255,255,255,253,0, + // 0xc7a5 장 + 165,199,30,34,16,33,2,253,0,0,0,0,0,5,64,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,127,255,255,255,240,31,192,0,127,255,255,255,240,31,192,0,127,255,255,255,240,31,192,0,0,2,252,0,0,31,192,0,0,2,253,0,0,31,192,0,0,2,254,0,0,31,192,0,0,3,254,0,0,31,255,240,0,3,255,0,0,31,255,240,0,11,255,128,0,31,255,240,0,15,255,208,0,31,192,0,0,63,207,244,0,31,192,0,0,255,71,253,0,31,192,0,3,255,2,255,208,31,192,0,47,252,0,191,248,31,192,0,255,240,0,31,240,31,192,0,191,128,0,1,208,31,192,0,56,0,0,0,0,31,192,0,0,0,0,0,0,5,64,0,0,0,26,255,233,0,0,0,0,2,255,255,255,244,0,0,0,31,255,255,255,254,0,0,0,63,249,0,6,255,128,0,0,191,128,0,0,127,192,0,0,255,0,0,0,31,208,0,0,254,0,0,0,15,224,0,0,255,0,0,0,31,208,0,0,191,128,0,0,127,192,0,0,63,249,0,6,255,128,0,0,31,255,255,255,254,0,0,0,2,255,255,255,244,0,0,0,0,26,255,249,0,0,0, + // 0xc7ac 재 + 172,199,29,34,16,33,1,253,0,0,0,0,0,0,26,64,0,0,0,0,15,224,63,128,0,0,0,0,15,224,63,128,0,0,0,0,15,224,63,128,47,255,255,255,15,224,63,128,47,255,255,255,15,224,63,128,47,255,255,255,15,224,63,128,0,3,252,0,15,224,63,128,0,3,248,0,15,224,63,128,0,3,252,0,15,224,63,128,0,3,252,0,15,224,63,128,0,3,252,0,15,224,63,128,0,3,252,0,15,224,63,128,0,3,252,0,15,224,63,128,0,7,253,0,15,255,255,128,0,11,254,0,15,255,255,128,0,15,255,0,15,255,255,128,0,15,255,64,15,224,63,128,0,47,239,192,15,224,63,128,0,63,95,224,15,224,63,128,0,255,15,240,15,224,63,128,1,254,7,252,15,224,63,128,3,252,2,255,79,224,63,128,31,248,0,255,207,224,63,128,127,224,0,63,143,224,63,128,63,192,0,11,15,224,63,128,14,0,0,0,15,224,63,128,0,0,0,0,15,224,63,128,0,0,0,0,15,224,63,128,0,0,0,0,15,224,63,128,0,0,0,0,15,224,63,128,0,0,0,0,15,224,63,128,0,0,0,0,5,80,63,128,0,0,0,0,0,0,47,128, + // 0xc800 저 + 0,200,28,34,238,33,1,253,0,0,0,0,0,0,85,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,31,255,255,255,254,0,255,31,255,255,255,254,0,255,31,255,255,255,254,0,255,0,0,63,64,0,0,255,0,0,63,64,0,0,255,0,0,127,64,0,0,255,0,0,127,128,0,0,255,0,0,127,128,0,0,255,0,0,191,192,31,255,255,0,0,255,192,31,255,255,0,0,255,208,31,255,255,0,1,255,224,0,0,255,0,3,255,240,0,0,255,0,7,243,248,0,0,255,0,15,241,253,0,0,255,0,47,208,255,0,0,255,0,127,192,127,192,0,255,0,255,64,63,240,0,255,3,255,0,15,252,0,255,31,252,0,7,255,64,255,127,240,0,1,255,0,255,47,208,0,0,61,0,255,14,0,0,0,4,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,254, + // 0xc804 전 + 4,200,28,34,238,33,2,253,0,0,0,0,0,1,84,0,0,0,0,0,3,248,0,0,0,0,0,3,248,63,255,255,255,244,3,248,63,255,255,255,244,3,248,63,255,255,255,244,3,248,0,0,254,0,0,3,248,0,0,254,0,0,3,248,0,1,254,0,0,3,248,0,1,255,0,0,3,248,0,2,255,0,63,255,248,0,3,255,128,63,255,248,0,11,255,192,63,255,248,0,15,255,224,0,3,248,0,63,203,248,0,3,248,0,255,131,254,0,3,248,3,255,1,255,208,3,248,47,252,0,127,252,3,248,255,240,0,31,248,3,248,127,128,0,2,240,3,248,41,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,31,208,0,0,3,248,0,31,208,0,0,3,248,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,255,255,255,255,254,0,31,255,255,255,255,254,0,31,255,255,255,255,254,0,0,0,0,0,0,0, + // 0xc815 정 + 21,200,27,34,238,33,2,253,0,0,0,0,0,1,84,0,0,0,0,0,3,248,0,0,0,0,0,3,248,63,255,255,255,244,3,248,63,255,255,255,244,3,248,63,255,255,255,244,3,248,0,0,254,0,0,3,248,0,1,254,0,0,3,248,0,1,255,0,0,3,248,0,2,255,0,47,255,248,0,3,255,128,47,255,248,0,11,255,192,47,255,248,0,15,239,240,0,3,248,0,63,203,252,0,3,248,0,255,131,255,0,3,248,7,255,0,255,224,3,248,127,252,0,63,252,3,248,255,240,0,15,244,3,248,127,128,0,1,240,3,248,40,0,0,0,0,3,248,0,0,0,0,0,0,0,0,0,1,175,250,64,0,0,0,127,255,255,253,0,0,3,255,255,255,255,192,0,15,254,64,1,191,240,0,47,224,0,0,15,244,0,63,192,0,0,3,252,0,63,192,0,0,3,252,0,63,192,0,0,3,252,0,47,224,0,0,15,244,0,15,254,64,1,191,240,0,3,255,255,255,255,192,0,0,191,255,255,253,0,0,0,1,191,254,64,0, + // 0xc81c 제 + 28,200,29,34,16,33,1,253,0,0,0,0,0,0,42,64,0,0,0,0,7,240,63,128,0,0,0,0,11,240,63,128,0,0,0,0,11,240,63,128,47,255,255,255,11,240,63,128,47,255,255,255,11,240,63,128,47,255,255,255,11,240,63,128,0,3,248,0,11,240,63,128,0,3,248,0,11,240,63,128,0,3,248,0,11,240,63,128,0,3,252,0,11,240,63,128,0,3,252,0,11,240,63,128,0,3,252,31,255,240,63,128,0,7,252,31,255,240,63,128,0,11,253,31,255,240,63,128,0,15,254,0,11,240,63,128,0,15,255,0,11,240,63,128,0,31,255,64,11,240,63,128,0,63,175,192,11,240,63,128,0,127,31,208,11,240,63,128,0,255,15,240,11,240,63,128,2,253,7,248,11,240,63,128,7,252,3,254,11,240,63,128,31,240,0,255,203,240,63,128,127,208,0,63,139,240,63,128,63,128,0,15,11,240,63,128,14,0,0,0,11,240,63,128,0,0,0,0,11,240,63,128,0,0,0,0,11,240,63,128,0,0,0,0,11,240,63,128,0,0,0,0,11,240,63,128,0,0,0,0,11,240,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,64, + // 0xc8fd 죽 + 253,200,30,32,0,33,2,253,7,255,255,255,255,255,248,0,7,255,255,255,255,255,248,0,7,255,255,255,255,255,248,0,0,0,0,255,192,0,0,0,0,0,2,255,224,0,0,0,0,0,7,255,244,0,0,0,0,0,47,243,253,0,0,0,0,1,255,192,255,208,0,0,0,111,255,64,127,254,64,0,31,255,248,0,15,255,253,0,15,255,144,0,1,191,252,0,15,232,0,0,0,10,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,3,255,255,255,255,255,224,0,3,255,255,255,255,255,224,0,3,255,255,255,255,255,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0, + // 0xc900 준 + 0,201,30,32,0,33,2,253,7,255,255,255,255,255,248,0,7,255,255,255,255,255,248,0,7,255,255,255,255,255,248,0,0,0,0,255,192,0,0,0,0,0,1,255,208,0,0,0,0,0,3,255,240,0,0,0,0,0,15,247,252,0,0,0,0,0,127,210,255,64,0,0,0,2,255,128,191,228,0,0,1,191,254,0,47,255,144,0,31,255,244,0,7,255,253,0,15,255,64,0,0,127,252,0,7,144,0,0,0,1,184,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,2,252,0,63,128,0,0,0,2,252,0,63,128,0,0,0,2,252,0,63,128,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0, + // 0xc911 중 + 17,201,29,32,0,33,2,253,7,255,255,255,255,255,248,0,7,255,255,255,255,255,248,0,7,255,255,255,255,255,248,0,0,0,0,255,192,0,0,0,0,0,2,255,224,0,0,0,0,0,7,255,244,0,0,0,0,0,47,243,254,0,0,0,0,1,255,192,255,208,0,0,0,111,255,64,127,254,64,0,31,255,248,0,11,255,253,0,15,255,144,0,1,191,252,0,15,232,0,0,0,10,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,107,255,229,0,0,0,0,11,255,255,255,244,0,0,0,63,255,255,255,255,0,0,0,255,208,0,6,255,192,0,1,254,0,0,0,63,208,0,2,252,0,0,0,31,224,0,2,252,0,0,0,31,224,0,1,255,0,0,0,63,208,0,0,255,228,0,6,255,192,0,0,63,255,255,255,255,0,0,0,7,255,255,255,244,0,0,0,0,26,255,233,0,0,0, + // 0xc990 즐 + 144,201,29,32,0,33,2,253,7,255,255,255,255,255,248,0,7,255,255,255,255,255,248,0,7,255,255,255,255,255,248,0,0,0,0,255,192,0,0,0,0,0,2,255,224,0,0,0,0,0,11,255,248,0,0,0,0,0,191,226,255,128,0,0,0,95,255,128,191,253,64,0,31,255,253,0,31,255,254,0,15,255,144,0,1,191,252,0,11,164,0,0,0,6,188,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,1,170,170,170,170,175,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0, + // 0xc9c0 지 + 192,201,27,34,238,33,2,253,0,0,0,0,0,1,84,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,63,255,255,255,252,3,248,63,255,255,255,252,3,248,63,255,255,255,252,3,248,0,0,255,0,0,3,248,0,0,255,0,0,3,248,0,0,255,0,0,3,248,0,0,255,0,0,3,248,0,0,255,0,0,3,248,0,0,255,0,0,3,248,0,1,255,0,0,3,248,0,2,255,64,0,3,248,0,3,255,192,0,3,248,0,3,255,192,0,3,248,0,11,255,224,0,3,248,0,15,215,244,0,3,248,0,63,195,252,0,3,248,0,191,129,255,0,3,248,1,255,0,191,192,3,248,7,253,0,63,240,3,248,47,248,0,15,254,3,248,255,224,0,3,254,3,248,191,128,0,0,188,3,248,61,0,0,0,20,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248, + // 0xcc98 처 + 152,204,27,35,245,33,2,252,0,0,0,0,0,2,164,0,0,253,0,0,3,252,0,0,253,0,0,3,252,0,0,253,0,0,3,252,0,0,253,0,0,3,252,0,0,253,0,0,3,252,63,255,255,255,244,3,252,63,255,255,255,244,3,252,63,255,255,255,244,3,252,0,0,253,0,0,3,252,0,0,253,0,0,3,252,0,0,253,0,0,3,252,0,1,254,0,0,3,252,0,1,254,0,0,3,252,0,2,255,0,127,255,252,0,3,255,0,127,255,252,0,3,255,64,127,255,252,0,11,255,192,0,3,252,0,15,239,208,0,3,252,0,47,203,240,0,3,252,0,127,131,252,0,3,252,0,255,2,254,0,3,252,3,253,0,255,128,3,252,15,252,0,63,244,3,252,191,240,0,15,252,3,252,255,192,0,3,248,3,252,62,0,0,0,176,3,252,20,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,0,0, + // 0xcd08 초 + 8,205,30,29,232,33,2,1,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,11,255,255,255,255,255,248,0,11,255,255,255,255,255,248,0,11,255,255,255,255,255,248,0,0,0,0,127,128,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,192,0,0,0,0,0,1,255,208,0,0,0,0,0,3,255,240,0,0,0,0,0,15,251,252,0,0,0,0,0,63,226,255,0,0,0,0,2,255,192,255,224,0,0,0,47,255,0,47,254,0,0,27,255,248,0,11,255,249,0,31,255,208,0,1,255,254,0,15,253,0,21,0,27,252,0,10,64,0,127,64,0,104,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xcd95 축 + 149,205,29,34,16,33,2,253,0,0,0,21,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,7,255,255,255,255,255,240,0,7,255,255,255,255,255,240,0,7,255,255,255,255,255,240,0,0,0,0,255,192,0,0,0,0,0,0,255,192,0,0,0,0,0,3,255,240,0,0,0,0,0,31,251,253,0,0,0,0,1,191,210,255,144,0,0,1,175,255,64,191,254,80,0,31,255,248,0,11,255,253,0,15,255,128,0,0,191,252,0,10,144,0,0,0,1,168,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,3,255,255,255,255,255,224,0,3,255,255,255,255,255,224,0,3,255,255,255,255,255,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0, + // 0xcd9c 출 + 156,205,29,34,16,33,2,253,0,0,0,42,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,3,255,255,255,255,255,240,0,3,255,255,255,255,255,244,0,3,255,255,255,255,255,244,0,0,0,0,255,192,0,0,0,0,0,2,255,224,0,0,0,0,0,11,255,248,0,0,0,0,0,127,243,255,64,0,0,1,111,255,192,255,254,80,0,47,255,253,0,31,255,254,0,15,255,144,0,1,191,252,0,10,80,0,0,0,1,104,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,2,170,170,255,234,170,144,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,1,170,170,170,170,175,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0, + // 0xcda4 춤 + 164,205,29,33,8,33,2,254,0,0,0,21,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,3,255,255,255,255,255,240,0,3,255,255,255,255,255,240,0,3,255,255,255,255,255,240,0,0,0,0,255,192,0,0,0,0,0,1,255,208,0,0,0,0,0,7,255,244,0,0,0,0,0,127,247,255,64,0,0,0,27,255,192,255,249,0,0,31,255,253,0,31,255,253,0,15,255,208,0,1,255,252,0,15,164,0,0,0,6,188,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,252,0,0,0,15,224,0,2,252,0,0,0,15,224,0,2,252,0,0,0,15,224,0,2,252,0,0,0,15,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0, + // 0xcde8 취 + 232,205,27,34,238,33,2,253,0,0,21,0,0,1,84,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,15,255,255,255,252,3,248,15,255,255,255,252,3,248,15,255,255,255,252,3,248,0,0,127,128,0,3,248,0,0,191,192,0,3,248,0,0,255,192,0,3,248,0,2,255,240,0,3,248,0,11,255,252,0,3,248,0,63,242,255,128,3,248,6,255,192,191,253,3,248,47,255,0,31,253,3,248,15,248,0,2,252,3,248,11,64,0,0,20,3,248,0,0,0,0,0,3,248,0,0,0,85,175,195,248,255,255,255,255,255,195,248,255,255,255,255,255,195,248,255,255,255,233,64,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,127,64,0,3,248,0,0,0,0,0,3,248, + // 0xce58 치 + 88,206,27,34,238,33,2,253,0,0,0,0,0,2,164,0,0,191,0,0,3,248,0,0,191,0,0,3,248,0,0,191,0,0,3,248,0,0,191,0,0,3,248,0,0,191,0,0,3,248,63,255,255,255,252,3,248,63,255,255,255,252,3,248,63,255,255,255,252,3,248,0,0,191,0,0,3,248,0,0,191,0,0,3,248,0,0,191,0,0,3,248,0,0,191,0,0,3,248,0,0,255,64,0,3,248,0,0,255,128,0,3,248,0,1,255,192,0,3,248,0,2,255,208,0,3,248,0,3,255,224,0,3,248,0,11,247,244,0,3,248,0,15,227,252,0,3,248,0,63,193,255,0,3,248,0,255,128,191,128,3,248,2,255,0,63,240,3,248,15,252,0,31,253,3,248,127,244,0,7,255,3,248,63,208,0,0,253,3,248,30,0,0,0,24,3,248,4,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248, + // 0xce68 침 + 104,206,27,33,231,33,2,254,0,0,106,0,0,1,84,0,0,191,0,0,3,248,0,0,191,0,0,3,248,0,0,191,0,0,3,248,47,255,255,255,252,3,248,63,255,255,255,252,3,248,63,255,255,255,252,3,248,0,0,255,0,0,3,248,0,0,255,0,0,3,248,0,0,255,64,0,3,248,0,1,255,192,0,3,248,0,3,255,208,0,3,248,0,11,255,240,0,3,248,0,31,231,252,0,3,248,0,127,194,255,64,3,248,2,255,64,255,244,3,248,47,254,0,63,254,3,248,127,248,0,11,253,3,248,63,208,0,0,184,3,248,29,0,0,0,0,3,248,0,0,0,0,0,1,80,0,0,0,0,0,0,0,0,47,255,255,255,255,248,0,47,255,255,255,255,248,0,47,255,255,255,255,248,0,47,192,0,0,3,248,0,47,192,0,0,3,248,0,47,192,0,0,3,248,0,47,192,0,0,3,248,0,47,192,0,0,3,248,0,47,255,255,255,255,248,0,47,255,255,255,255,248,0,47,255,255,255,255,248, + // 0xce74 카 + 116,206,30,34,16,33,2,253,0,0,0,0,0,21,64,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,15,255,255,255,128,47,192,0,15,255,255,255,128,47,192,0,15,255,255,255,128,47,192,0,0,0,0,63,64,47,192,0,0,0,0,127,64,47,192,0,0,0,0,127,0,47,192,0,0,0,0,191,0,47,192,0,0,0,0,255,0,47,192,0,0,5,90,254,0,47,192,0,191,255,255,253,0,47,192,0,191,255,255,252,0,47,255,240,127,254,171,248,0,47,255,240,16,0,11,244,0,47,255,240,0,0,31,240,0,47,192,0,0,0,63,208,0,47,192,0,0,0,255,128,0,47,192,0,0,2,255,0,0,47,192,0,0,11,253,0,0,47,192,0,0,63,244,0,0,47,192,0,1,255,208,0,0,47,192,0,11,255,64,0,0,47,192,0,191,252,0,0,0,47,192,0,191,224,0,0,0,47,192,0,63,0,0,0,0,47,192,0,4,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0, + // 0xcf1c 켜 + 28,207,27,34,238,33,2,253,0,0,0,0,0,1,84,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,31,255,255,255,64,3,248,31,255,255,255,0,3,248,31,255,255,255,0,3,248,0,0,0,127,0,3,248,0,0,0,191,0,3,248,0,0,0,191,0,3,248,0,0,0,255,255,255,248,0,0,0,255,255,255,248,0,0,86,255,255,255,248,255,255,255,252,0,3,248,255,255,255,248,0,3,248,255,255,239,244,0,3,248,84,0,15,240,0,3,248,0,0,47,224,0,3,248,0,0,63,192,0,3,248,0,0,255,67,255,255,248,0,3,255,3,255,255,248,0,15,252,3,255,255,248,0,63,240,0,0,3,248,1,255,208,0,0,3,248,11,255,0,0,0,3,248,191,252,0,0,0,3,248,255,224,0,0,0,3,248,63,0,0,0,0,3,248,20,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248, + // 0xd0d1 탑 + 209,208,29,33,8,33,3,254,0,0,0,0,0,106,0,0,0,0,0,0,0,127,0,0,255,255,255,252,0,127,0,0,255,255,255,252,0,127,0,0,255,255,255,252,0,127,0,0,255,0,0,0,0,127,0,0,255,0,0,0,0,127,0,0,255,0,0,0,0,127,0,0,255,0,0,0,0,127,255,192,255,255,255,248,0,127,255,192,255,255,255,248,0,127,255,192,255,255,255,248,0,127,64,0,255,0,0,0,0,127,0,0,255,0,0,0,0,127,0,0,255,0,0,90,128,127,0,0,255,255,255,255,208,127,0,0,255,255,255,255,208,127,0,0,255,255,255,165,0,127,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,0,0,1,168,0,0,0,106,0,0,2,252,0,0,0,127,0,0,2,252,0,0,0,127,0,0,2,252,0,0,0,127,0,0,2,255,255,255,255,255,0,0,2,255,255,255,255,255,0,0,2,255,255,255,255,255,0,0,2,252,0,0,0,127,0,0,2,252,0,0,0,127,0,0,2,252,0,0,0,127,0,0,2,255,255,255,255,255,0,0,2,255,255,255,255,255,0,0,2,255,255,255,255,255,0,0, + // 0xd130 터 + 48,209,26,34,238,33,3,253,0,0,0,0,0,10,160,0,0,0,0,0,15,240,0,0,0,0,0,15,240,191,255,255,253,0,15,240,191,255,255,253,0,15,240,191,255,255,253,0,15,240,191,0,0,0,0,15,240,191,0,0,0,0,15,240,191,0,0,0,0,15,240,191,0,0,0,0,15,240,191,0,0,0,0,15,240,191,0,0,0,0,15,240,191,0,0,0,0,15,240,191,255,255,240,255,255,240,191,255,255,240,255,255,240,191,255,255,240,255,255,240,191,0,0,0,0,15,240,191,0,0,0,0,15,240,191,0,0,0,0,15,240,191,0,0,0,0,15,240,191,0,0,0,0,15,240,191,0,0,0,0,15,240,191,0,1,106,192,15,240,191,255,255,255,208,15,240,191,255,255,255,208,15,240,191,255,255,165,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240, + // 0xd14c 테 + 76,209,27,34,238,33,3,253,0,0,0,0,0,2,164,0,0,0,0,191,3,248,0,0,0,0,191,3,248,0,0,0,0,191,3,248,255,255,255,0,191,3,248,255,255,255,0,191,3,248,255,255,255,0,191,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,255,255,248,255,255,3,248,255,255,248,255,255,3,248,255,255,248,255,255,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,253,0,0,0,191,3,248,253,0,22,144,191,3,248,255,255,255,224,191,3,248,255,255,255,224,191,3,248,255,255,250,64,191,3,248,0,0,0,0,191,3,248,0,0,0,0,191,3,248,0,0,0,0,191,3,248,0,0,0,0,191,3,248,0,0,0,0,191,3,248,0,0,0,0,191,3,248,0,0,0,0,21,3,248,0,0,0,0,0,3,244, + // 0xd1a0 토 + 160,209,30,27,216,33,2,1,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,253,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,192,0,2,255,255,255,255,255,192,0,2,255,255,255,255,255,192,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xd2b8 트 + 184,210,30,27,216,33,2,1,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,192,0,2,255,255,255,255,255,192,0,2,255,255,255,255,255,192,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xd39c 펜 + 156,211,30,34,16,33,1,253,0,0,0,0,0,0,21,0,0,0,0,0,2,160,63,64,0,0,0,0,3,244,63,64,0,0,0,0,3,244,63,64,63,255,255,255,3,244,63,64,63,255,255,255,3,244,63,64,63,255,255,255,3,244,63,64,1,252,11,224,3,244,63,64,1,252,11,224,3,244,63,64,1,252,11,224,3,244,63,64,1,252,11,227,255,244,63,64,1,252,11,227,255,244,63,64,1,252,11,227,255,244,63,64,1,252,11,224,3,244,63,64,1,252,11,224,3,244,63,64,1,252,11,224,3,244,63,64,1,252,11,246,131,244,63,64,127,255,255,255,195,244,63,64,63,255,255,255,195,244,63,64,63,255,254,165,3,244,63,64,0,0,0,0,3,244,63,64,0,0,0,0,3,244,63,64,0,1,84,0,3,244,63,64,0,3,252,0,3,244,63,64,0,3,252,0,2,160,63,64,0,3,252,0,0,0,21,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,255,255,255,255,255,208,0,3,255,255,255,255,255,208,0,3,255,255,255,255,255,208,0,0,0,0,0,0,0,0, + // 0xd504 프 + 4,213,30,26,208,33,2,1,15,255,255,255,255,255,248,0,15,255,255,255,255,255,248,0,15,255,255,255,255,255,248,0,0,3,248,0,15,240,0,0,0,3,248,0,15,240,0,0,0,3,248,0,15,240,0,0,0,3,248,0,15,240,0,0,0,3,248,0,15,240,0,0,0,3,248,0,15,240,0,0,0,3,248,0,15,240,0,0,0,3,248,0,15,240,0,0,0,3,248,0,15,240,0,0,0,3,248,0,15,240,0,0,0,3,248,0,15,240,0,0,11,255,255,255,255,255,248,0,11,255,255,255,255,255,248,0,11,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208, + // 0xd558 하 + 88,213,31,34,16,33,1,253,0,0,0,0,0,5,80,0,0,0,191,0,0,11,240,0,0,0,191,0,0,11,240,0,0,0,191,0,0,11,240,0,0,0,191,0,0,11,240,0,0,0,191,0,0,11,240,0,127,255,255,255,254,11,240,0,127,255,255,255,254,11,240,0,127,255,255,255,254,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,2,255,144,0,11,240,0,0,31,255,252,0,11,240,0,0,191,255,255,64,11,240,0,2,255,65,191,192,11,255,252,3,252,0,31,224,11,255,252,7,244,0,15,240,11,255,252,11,240,0,7,240,11,240,0,11,240,0,7,244,11,240,0,11,240,0,7,244,11,240,0,11,240,0,7,240,11,240,0,7,244,0,15,240,11,240,0,3,252,0,31,224,11,240,0,2,255,65,191,192,11,240,0,0,191,255,255,64,11,240,0,0,31,255,252,0,11,240,0,0,2,255,144,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0, + // 0xd569 합 + 105,213,30,33,8,33,2,254,0,1,168,0,0,0,0,0,0,1,253,0,0,31,192,0,0,1,253,0,0,31,192,0,0,1,253,0,0,31,192,0,255,255,255,255,252,31,192,0,255,255,255,255,252,31,192,0,255,255,255,255,252,31,192,0,0,0,0,0,0,31,192,0,0,10,254,128,0,31,192,0,0,255,255,248,0,31,255,240,3,255,255,255,0,31,255,240,15,248,0,191,128,31,255,240,15,224,0,47,192,31,192,0,31,192,0,31,208,31,192,0,31,208,0,31,208,31,192,0,15,224,0,63,192,31,192,0,11,253,1,255,128,31,192,0,3,255,255,254,0,31,192,0,0,191,255,244,0,31,192,0,0,6,170,64,0,31,192,0,0,0,0,0,0,0,0,0,0,191,0,0,0,31,192,0,0,191,0,0,0,31,192,0,0,191,0,0,0,31,192,0,0,191,255,255,255,255,192,0,0,191,255,255,255,255,192,0,0,191,255,255,255,255,192,0,0,191,0,0,0,31,192,0,0,191,0,0,0,31,192,0,0,191,0,0,0,31,192,0,0,191,255,255,255,255,192,0,0,191,255,255,255,255,192,0,0,191,255,255,255,255,192,0, + // 0xd648 홈 + 72,214,29,34,16,33,2,253,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,47,255,255,255,255,255,253,0,47,255,255,255,255,255,254,0,47,255,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,111,255,254,64,0,0,0,11,255,255,255,248,0,0,0,127,254,170,175,255,64,0,0,255,128,0,0,191,192,0,0,255,0,0,0,63,192,0,0,255,0,0,0,63,192,0,0,191,228,0,6,255,128,0,0,47,255,255,255,254,0,0,0,6,255,255,255,228,0,0,0,0,5,191,148,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,252,0,0,0,15,224,0,2,252,0,0,0,15,224,0,2,252,0,0,0,15,224,0,2,252,0,0,0,15,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0,2,255,255,255,255,255,224,0, + // 0xd654 화 + 84,214,31,34,16,33,1,253,0,0,0,0,0,7,240,0,0,0,63,128,0,7,240,0,0,0,63,128,0,7,240,0,0,0,63,128,0,7,240,0,63,255,255,255,255,71,240,0,63,255,255,255,255,71,240,0,63,255,255,255,255,71,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,1,174,144,0,7,240,0,0,31,255,254,0,7,240,0,0,127,255,255,192,7,240,0,0,255,128,127,224,7,240,0,2,253,0,15,240,7,240,0,3,248,0,7,244,7,244,0,3,244,0,3,244,7,255,252,3,248,0,3,244,7,255,252,2,252,0,11,240,7,255,252,1,255,64,111,224,7,240,0,0,191,255,255,192,7,240,0,0,31,255,254,0,7,240,0,0,1,191,208,0,7,240,0,0,0,63,128,0,7,240,0,0,0,63,128,0,7,240,0,0,0,127,150,175,135,240,0,127,255,255,255,255,199,240,0,127,255,255,255,255,135,240,0,63,255,254,169,64,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0, + // 0xd788 히 + 136,215,27,34,238,33,2,253,0,0,0,0,0,1,80,0,0,191,0,0,3,248,0,0,191,0,0,3,248,0,0,191,0,0,3,248,0,0,191,0,0,3,248,0,0,191,0,0,3,248,127,255,255,255,255,3,248,127,255,255,255,255,3,248,127,255,255,255,255,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,2,255,144,0,3,248,0,31,255,252,0,3,248,0,255,255,255,64,3,248,2,255,65,191,192,3,248,3,252,0,31,224,3,248,11,244,0,15,240,3,248,15,240,0,7,244,3,248,15,224,0,3,244,3,248,15,224,0,3,244,3,248,15,240,0,7,244,3,248,11,244,0,15,240,3,248,3,252,0,31,224,3,248,2,255,65,191,192,3,248,0,255,255,255,64,3,248,0,47,255,252,0,3,248,0,2,255,144,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Latin_Extended_A_26.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Latin_Extended_A_26.cpp new file mode 100644 index 000000000000..fe1b4bdc12d7 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Latin_Extended_A_26.cpp @@ -0,0 +1,288 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Latin Extended-A 36pt, capital 'A' height: 26px, width: 100%, range: 0x0100-0x017f +extern const uint8_t NotoSans_Medium_Latin_Extended_A_26[19795] = { + 130,26,0,1,127,1,34,247, // unifont_t + // 0x0100 Ā + 24,31,186,24,0,0,0,10,170,170,128,0,0,15,255,255,192,0,0,15,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x0101 ā + 17,26,130,21,1,255,0,170,170,168,0,0,255,255,252,0,0,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x0102 Ă + 24,33,198,24,0,0,0,15,0,2,224,0,0,15,128,7,208,0,0,11,255,255,192,0,0,3,255,255,0,0,0,0,191,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x0103 ă + 17,28,140,21,1,255,2,224,0,60,0,1,244,0,188,0,0,255,255,248,0,0,127,255,224,0,0,11,255,64,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x0104 Ą + 24,35,210,24,0,247,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,3,253,0,0,0,0,2,240,0,0,0,0,11,192,0,0,0,0,31,64,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,0,63,148,0,0,0,0,31,253,0,0,0,0,7,253,0,0,0,0,0,0, + // 0x0105 ą + 18,29,145,21,1,247,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,47,0,0,0,0,125,0,0,0,0,248,0,0,0,2,244,0,0,0,2,244,0,0,0,2,253,80,0,0,0,255,224,0,0,0,127,208,0,0,0,0,0, + // 0x0106 Ć + 20,35,175,23,2,255,0,0,0,42,144,0,0,0,127,192,0,0,0,255,0,0,0,3,252,0,0,0,11,240,0,0,0,15,192,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,144,0,15,255,255,253,0,127,255,255,252,2,255,245,91,252,7,255,0,0,36,15,252,0,0,0,47,240,0,0,0,63,208,0,0,0,63,192,0,0,0,127,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,224,0,0,0,31,244,0,0,0,15,253,0,0,0,3,255,208,1,184,0,255,255,255,248,0,63,255,255,248,0,6,255,255,224,0,0,5,80,0, + // 0x0107 ć + 15,29,116,18,2,255,0,0,10,160,0,0,63,224,0,0,127,128,0,0,254,0,0,3,248,0,0,11,224,0,0,0,0,0,0,0,0,0,0,6,170,64,0,255,255,244,7,255,255,240,15,254,171,224,63,240,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,128,0,0,63,192,0,0,63,244,0,176,15,255,255,240,3,255,255,240,0,127,255,208,0,1,84,0, + // 0x0108 Ĉ + 20,35,175,23,2,255,0,0,26,144,0,0,0,63,244,0,0,0,255,252,0,0,3,252,255,0,0,11,240,47,192,0,47,128,7,240,0,0,0,0,0,0,0,0,0,0,0,0,191,255,144,0,15,255,255,253,0,127,255,255,252,2,255,245,91,252,7,255,0,0,36,15,252,0,0,0,47,240,0,0,0,63,208,0,0,0,63,192,0,0,0,127,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,224,0,0,0,31,244,0,0,0,15,253,0,0,0,3,255,208,1,184,0,255,255,255,248,0,63,255,255,248,0,6,255,255,224,0,0,5,80,0, + // 0x0109 ĉ + 15,29,116,18,2,255,0,10,164,0,0,47,252,0,0,127,255,0,0,254,127,128,3,248,15,224,15,208,2,248,0,0,0,0,0,0,0,0,0,6,170,64,0,255,255,244,7,255,255,240,15,254,171,224,63,240,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,128,0,0,63,192,0,0,63,244,0,176,15,255,255,240,3,255,255,240,0,127,255,208,0,1,84,0, + // 0x010a Ċ + 20,34,170,23,2,255,0,0,6,128,0,0,0,31,224,0,0,0,31,240,0,0,0,31,224,0,0,0,6,64,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,144,0,15,255,255,253,0,127,255,255,252,2,255,245,91,252,7,255,0,0,36,15,252,0,0,0,47,240,0,0,0,63,208,0,0,0,63,192,0,0,0,127,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,224,0,0,0,31,244,0,0,0,15,253,0,0,0,3,255,208,1,184,0,255,255,255,248,0,63,255,255,248,0,6,255,255,224,0,0,5,80,0, + // 0x010b ċ + 15,28,112,18,2,255,0,2,144,0,0,11,240,0,0,15,244,0,0,11,240,0,0,1,128,0,0,0,0,0,0,0,0,0,0,6,170,64,0,255,255,244,7,255,255,240,15,254,171,224,63,240,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,128,0,0,63,192,0,0,63,244,0,176,15,255,255,240,3,255,255,240,0,127,255,208,0,1,84,0, + // 0x010c Č + 20,35,175,23,2,255,0,42,0,1,160,0,31,208,15,224,0,7,244,63,128,0,2,254,254,0,0,0,191,252,0,0,0,63,240,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,144,0,15,255,255,253,0,127,255,255,252,2,255,245,91,252,7,255,0,0,36,15,252,0,0,0,47,240,0,0,0,63,208,0,0,0,63,192,0,0,0,127,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,224,0,0,0,31,244,0,0,0,15,253,0,0,0,3,255,208,1,184,0,255,255,255,248,0,63,255,255,248,0,6,255,255,224,0,0,5,80,0, + // 0x010d č + 15,29,116,18,2,255,10,64,0,164,11,224,7,240,3,252,47,208,0,255,191,64,0,63,253,0,0,31,248,0,0,0,0,0,0,0,0,0,0,6,170,64,0,255,255,244,7,255,255,240,15,254,171,224,63,240,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,128,0,0,63,192,0,0,63,244,0,176,15,255,255,240,3,255,255,240,0,127,255,208,0,1,84,0, + // 0x010e Ď + 21,34,204,26,3,0,1,164,0,10,64,0,0,254,0,127,0,0,0,63,130,252,0,0,0,15,251,240,0,0,0,3,255,208,0,0,0,1,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,170,169,0,0,0,191,255,255,248,0,0,191,255,255,255,64,0,191,170,175,255,224,0,191,64,0,127,248,0,191,64,0,11,253,0,191,64,0,2,255,0,191,64,0,0,255,64,191,64,0,0,191,128,191,64,0,0,127,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,127,192,191,64,0,0,191,128,191,64,0,0,255,64,191,64,0,2,255,0,191,64,0,11,253,0,191,64,0,127,248,0,191,149,91,255,240,0,191,255,255,255,128,0,191,255,255,248,0,0,191,255,254,64,0,0, + // 0x010f ď + 24,29,174,22,2,255,0,0,0,5,64,84,0,0,0,31,209,253,0,0,0,31,209,252,0,0,0,31,210,244,0,0,0,31,211,240,0,0,0,31,211,208,0,0,0,31,209,64,0,0,0,31,208,0,0,26,164,31,208,0,1,255,255,31,208,0,11,255,255,223,208,0,31,254,91,255,208,0,63,224,0,255,208,0,127,192,0,127,208,0,191,64,0,63,208,0,255,0,0,47,208,0,255,0,0,31,208,0,255,0,0,31,208,0,255,0,0,31,208,0,255,0,0,31,208,0,255,0,0,31,208,0,255,0,0,47,208,0,191,64,0,63,208,0,127,192,0,127,208,0,63,240,1,255,208,0,15,255,255,239,208,0,7,255,255,143,208,0,0,191,253,15,208,0,0,5,64,0,0,0, + // 0x0110 Đ + 23,26,156,26,1,0,6,170,170,144,0,0,7,255,255,255,128,0,7,255,255,255,244,0,7,254,170,255,254,0,7,244,0,7,255,128,7,244,0,0,191,208,7,244,0,0,47,240,7,244,0,0,15,244,7,244,0,0,11,248,7,244,0,0,7,252,7,244,0,0,3,252,91,249,85,0,3,252,255,255,255,64,3,252,255,255,255,64,3,252,255,255,255,0,3,252,7,244,0,0,3,252,7,244,0,0,7,252,7,244,0,0,11,248,7,244,0,0,15,244,7,244,0,0,47,240,7,244,0,0,191,208,7,244,0,7,255,128,7,249,85,191,254,0,7,255,255,255,248,0,7,255,255,255,128,0,7,255,255,228,0,0, + // 0x0111 đ + 20,29,145,23,2,255,0,0,0,5,64,0,0,0,31,208,0,0,0,31,208,0,1,85,111,229,0,11,255,255,255,0,11,255,255,255,0,1,85,111,229,0,0,0,31,208,0,5,64,31,208,0,191,253,31,208,7,255,255,159,208,31,255,255,255,208,63,240,2,255,208,127,192,0,127,208,191,128,0,63,208,255,0,0,47,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,47,208,191,64,0,63,208,127,192,0,127,208,63,240,1,255,208,31,255,255,239,208,7,255,255,143,208,0,191,253,15,208,0,5,64,0,0, + // 0x0112 Ē + 15,31,124,20,3,0,6,170,170,144,11,255,255,208,11,255,255,208,0,0,0,0,0,0,0,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x0113 ē + 17,26,130,21,2,255,2,170,170,160,0,3,255,255,240,0,3,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x0114 Ĕ + 15,33,132,20,3,0,15,64,2,240,15,192,7,224,7,255,255,192,2,255,255,64,0,127,248,0,0,0,0,0,0,0,0,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x0115 ĕ + 17,28,140,21,2,255,11,128,0,244,0,7,208,2,240,0,3,255,255,224,0,1,255,255,192,0,0,47,253,0,0,0,0,0,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x0116 Ė + 15,33,132,20,3,0,0,6,128,0,0,15,240,0,0,15,240,0,0,15,240,0,0,2,128,0,0,0,0,0,0,0,0,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x0117 ė + 17,28,140,21,2,255,0,2,144,0,0,0,11,244,0,0,0,15,244,0,0,0,11,244,0,0,0,1,144,0,0,0,0,0,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x0118 Ę + 15,35,140,20,3,247,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252,0,0,7,208,0,0,31,128,0,0,63,0,0,0,126,0,0,0,125,0,0,0,127,84,0,0,63,252,0,0,15,248,0,0,0,0, + // 0x0119 ę + 17,29,145,21,2,247,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,253,0,0,0,86,244,0,0,0,7,208,0,0,0,15,128,0,0,0,31,64,0,0,0,47,64,0,0,0,47,213,0,0,0,15,254,0,0,0,7,254,0,0,0,0,0,0, + // 0x011a Ě + 15,34,136,20,3,0,26,0,1,164,15,208,11,240,3,248,63,192,0,254,255,0,0,127,252,0,0,47,244,0,0,0,0,0,0,0,0,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x011b ě + 17,29,145,21,2,255,10,64,0,168,0,11,240,7,244,0,2,252,31,208,0,0,191,191,64,0,0,63,254,0,0,0,15,252,0,0,0,0,0,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x011c Ĝ + 22,35,210,26,2,255,0,0,6,164,0,0,0,0,31,253,0,0,0,0,63,255,0,0,0,0,255,63,192,0,0,3,248,15,240,0,0,11,224,2,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,111,255,228,0,0,11,255,255,255,192,0,63,255,255,255,128,1,255,249,85,191,64,3,255,128,0,2,0,15,252,0,0,0,0,31,240,0,0,0,0,63,224,0,0,0,0,63,192,0,0,0,0,127,128,0,0,0,0,191,64,0,0,0,0,255,64,0,0,0,0,255,0,0,191,255,208,255,0,0,255,255,208,255,64,0,255,255,208,191,64,0,106,175,208,191,128,0,0,31,208,127,192,0,0,31,208,63,192,0,0,31,208,47,224,0,0,31,208,31,244,0,0,31,208,11,254,0,0,31,208,3,255,208,0,111,208,0,255,255,255,255,208,0,47,255,255,255,208,0,2,255,255,254,64,0,0,1,84,0,0, + // 0x011d ĝ + 18,37,185,22,2,247,0,2,168,0,0,0,15,254,0,0,0,47,255,64,0,0,191,111,208,0,2,252,11,240,0,7,224,1,252,0,0,0,0,0,0,0,0,0,0,0,0,26,160,5,64,2,255,255,15,208,11,255,255,207,208,31,254,91,255,208,63,224,0,255,208,127,192,0,127,208,191,64,0,63,208,255,0,0,47,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,47,208,191,64,0,63,208,127,192,0,127,208,63,240,1,255,208,15,255,191,255,208,7,255,255,159,208,0,191,253,31,208,0,5,64,31,208,0,0,0,47,192,0,0,0,63,192,0,0,0,63,192,36,0,0,255,64,47,233,91,255,0,47,255,255,252,0,31,255,255,224,0,0,90,165,0,0, + // 0x011e Ğ + 22,34,204,26,2,255,0,7,192,0,244,0,0,3,208,2,240,0,0,3,255,255,224,0,0,0,255,255,192,0,0,0,47,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,111,255,228,0,0,11,255,255,255,192,0,63,255,255,255,128,1,255,249,85,191,64,3,255,128,0,2,0,15,252,0,0,0,0,31,240,0,0,0,0,63,224,0,0,0,0,63,192,0,0,0,0,127,128,0,0,0,0,191,64,0,0,0,0,255,64,0,0,0,0,255,0,0,191,255,208,255,0,0,255,255,208,255,64,0,255,255,208,191,64,0,106,175,208,191,128,0,0,31,208,127,192,0,0,31,208,63,192,0,0,31,208,47,224,0,0,31,208,31,244,0,0,31,208,11,254,0,0,31,208,3,255,208,0,111,208,0,255,255,255,255,208,0,47,255,255,255,208,0,2,255,255,254,64,0,0,1,84,0,0, + // 0x011f ğ + 18,36,180,22,2,247,3,192,0,184,0,3,224,1,248,0,1,255,255,240,0,0,191,255,208,0,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,26,160,5,64,2,255,255,15,208,11,255,255,207,208,31,254,91,255,208,63,224,0,255,208,127,192,0,127,208,191,64,0,63,208,255,0,0,47,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,47,208,191,64,0,63,208,127,192,0,127,208,63,240,1,255,208,15,255,191,255,208,7,255,255,159,208,0,191,253,31,208,0,5,64,31,208,0,0,0,47,192,0,0,0,63,192,0,0,0,63,192,36,0,0,255,64,47,233,91,255,0,47,255,255,252,0,31,255,255,224,0,0,90,165,0,0, + // 0x0120 Ġ + 22,34,204,26,2,255,0,0,2,160,0,0,0,0,7,248,0,0,0,0,11,248,0,0,0,0,7,244,0,0,0,0,1,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,111,255,228,0,0,11,255,255,255,192,0,63,255,255,255,128,1,255,249,85,191,64,3,255,128,0,2,0,15,252,0,0,0,0,31,240,0,0,0,0,63,224,0,0,0,0,63,192,0,0,0,0,127,128,0,0,0,0,191,64,0,0,0,0,255,64,0,0,0,0,255,0,0,191,255,208,255,0,0,255,255,208,255,64,0,255,255,208,191,64,0,106,175,208,191,128,0,0,31,208,127,192,0,0,31,208,63,192,0,0,31,208,47,224,0,0,31,208,31,244,0,0,31,208,11,254,0,0,31,208,3,255,208,0,111,208,0,255,255,255,255,208,0,47,255,255,255,208,0,2,255,255,254,64,0,0,1,84,0,0, + // 0x0121 ġ + 18,36,180,22,2,247,0,1,160,0,0,0,3,252,0,0,0,7,252,0,0,0,3,252,0,0,0,0,144,0,0,0,0,0,0,0,0,0,0,0,0,0,26,160,5,64,2,255,255,15,208,11,255,255,207,208,31,254,91,255,208,63,224,0,255,208,127,192,0,127,208,191,64,0,63,208,255,0,0,47,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,47,208,191,64,0,63,208,127,192,0,127,208,63,240,1,255,208,15,255,191,255,208,7,255,255,159,208,0,191,253,31,208,0,5,64,31,208,0,0,0,47,192,0,0,0,63,192,0,0,0,63,192,36,0,0,255,64,47,233,91,255,0,47,255,255,252,0,31,255,255,224,0,0,90,165,0,0, + // 0x0122 Ģ + 22,34,204,26,2,248,0,0,111,255,228,0,0,11,255,255,255,192,0,63,255,255,255,128,1,255,249,85,191,64,3,255,128,0,2,0,15,252,0,0,0,0,31,240,0,0,0,0,63,224,0,0,0,0,63,192,0,0,0,0,127,128,0,0,0,0,191,64,0,0,0,0,255,64,0,0,0,0,255,0,0,191,255,208,255,0,0,255,255,208,255,64,0,255,255,208,191,64,0,106,175,208,191,128,0,0,31,208,127,192,0,0,31,208,63,192,0,0,31,208,47,224,0,0,31,208,31,244,0,0,31,208,11,254,0,0,31,208,3,255,208,0,111,208,0,255,255,255,255,208,0,47,255,255,255,208,0,2,255,255,254,64,0,0,1,84,0,0,0,0,0,0,0,0,0,0,2,248,0,0,0,0,3,244,0,0,0,0,7,240,0,0,0,0,11,224,0,0,0,0,15,192,0,0,0,0,15,64,0,0, + // 0x0123 ģ + 18,37,185,22,2,247,0,0,40,0,0,0,0,188,0,0,0,0,252,0,0,0,2,248,0,0,0,3,244,0,0,0,11,240,0,0,0,0,0,0,0,0,0,0,0,0,0,26,160,5,64,2,255,255,15,208,11,255,255,207,208,31,254,91,255,208,63,224,0,255,208,127,192,0,127,208,191,64,0,63,208,255,0,0,47,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,47,208,191,64,0,63,208,127,192,0,127,208,63,240,1,255,208,15,255,191,255,208,7,255,255,159,208,0,191,253,31,208,0,5,64,31,208,0,0,0,47,192,0,0,0,63,192,0,0,0,63,192,36,0,0,255,64,47,233,91,255,0,47,255,255,252,0,31,255,255,224,0,0,90,165,0,0, + // 0x0124 Ĥ + 21,34,204,27,3,0,0,0,106,64,0,0,0,1,255,208,0,0,0,3,255,240,0,0,0,15,243,252,0,0,0,63,128,255,0,0,0,253,0,47,128,0,0,0,0,0,0,0,0,0,0,0,0,0,106,0,0,0,106,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,255,255,255,255,64,191,255,255,255,255,64,191,255,255,255,255,64,191,85,85,85,191,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64,191,64,0,0,127,64, + // 0x0125 ĥ + 22,36,216,23,254,0,0,42,128,0,0,0,0,255,224,0,0,0,2,255,244,0,0,0,11,246,253,0,0,0,31,208,127,64,0,0,127,0,15,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,64,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,106,144,0,0,63,135,255,253,0,0,63,175,255,255,64,0,63,255,150,255,192,0,63,248,0,63,208,0,63,224,0,31,224,0,63,208,0,15,224,0,63,192,0,15,240,0,63,192,0,15,240,0,63,192,0,15,240,0,63,192,0,15,240,0,63,192,0,15,240,0,63,192,0,15,240,0,63,192,0,15,240,0,63,192,0,15,240,0,63,192,0,15,240,0,63,192,0,15,240,0,63,192,0,15,240,0,63,192,0,15,240,0,63,192,0,15,240, + // 0x0126 Ħ + 27,26,182,27,0,0,1,168,0,0,1,169,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,171,255,170,170,171,255,168,255,255,255,255,255,255,252,255,255,255,255,255,255,252,2,253,0,0,2,254,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,255,255,255,255,253,0,2,255,255,255,255,253,0,2,255,255,255,255,253,0,2,253,85,85,86,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0, + // 0x0127 ħ + 20,28,140,23,0,0,1,84,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,255,255,255,240,0,255,255,255,240,0,87,253,85,80,0,3,252,0,0,0,3,252,0,0,0,3,252,11,254,0,3,248,191,255,224,3,250,255,255,248,3,255,228,31,252,3,255,64,3,253,3,254,0,1,254,3,253,0,0,255,3,252,0,0,255,3,252,0,0,255,3,252,0,0,255,3,252,0,0,255,3,252,0,0,255,3,252,0,0,255,3,252,0,0,255,3,252,0,0,255,3,252,0,0,255,3,252,0,0,255,3,252,0,0,255,3,252,0,0,255, + // 0x0128 Ĩ + 14,33,132,13,255,0,1,160,0,160,15,254,1,240,47,255,251,224,62,31,255,192,124,1,255,0,0,0,0,0,0,0,0,0,6,170,170,0,11,255,255,64,7,255,255,0,0,47,224,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,2,255,253,0,11,255,255,64,11,255,255,64, + // 0x0129 ĩ + 14,27,108,10,254,0,2,144,1,144,31,253,3,208,63,255,239,192,189,47,255,128,244,2,254,0,0,0,0,0,0,0,0,0,0,21,64,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0, + // 0x012a Ī + 11,31,93,13,1,0,170,170,168,255,255,252,255,255,252,0,0,0,0,0,0,106,170,160,191,255,244,127,255,240,2,254,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,47,255,208,191,255,244,191,255,244, + // 0x012b ī + 12,25,75,10,255,0,106,170,169,191,255,253,191,255,253,0,0,0,0,0,0,0,85,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0, + // 0x012c Ĭ + 13,33,132,13,0,0,184,0,15,64,125,0,47,0,63,255,254,0,31,255,252,0,2,255,208,0,0,0,0,0,0,0,0,0,26,170,168,0,47,255,253,0,31,255,252,0,0,191,128,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,11,255,244,0,47,255,253,0,47,255,253,0, + // 0x012d ĭ + 12,27,81,10,255,0,240,0,46,248,0,126,127,255,252,47,255,244,7,255,128,0,0,0,0,0,0,0,85,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0, + // 0x012e Į + 11,35,105,13,1,247,106,170,160,191,255,244,127,255,240,2,254,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,47,255,208,191,255,244,191,255,244,0,15,192,0,63,0,0,125,0,0,252,0,0,252,0,0,254,80,0,127,244,0,47,240,0,0,0, + // 0x012f į + 7,36,72,10,1,247,6,128,15,240,15,240,15,240,2,128,0,0,0,0,5,80,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,11,192,47,0,126,0,188,0,252,0,190,80,127,244,31,244,0,0, + // 0x0130 İ + 11,33,99,13,1,0,0,168,0,2,253,0,2,254,0,1,253,0,0,100,0,0,0,0,0,0,0,106,170,160,191,255,244,127,255,240,2,254,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,47,255,208,191,255,244,191,255,244, + // 0x0131 ı + 4,20,20,10,3,0,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x0132 IJ + 19,34,170,23,1,248,106,170,160,2,168,191,255,244,3,252,127,255,240,3,252,2,254,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,2,253,0,3,252,47,255,208,3,252,191,255,244,3,252,191,255,244,3,252,0,0,0,3,252,0,0,0,7,248,0,0,0,15,244,0,0,37,127,240,0,0,63,255,208,0,0,63,255,128,0,0,47,248,0,0,0,0,0,0, + // 0x0133 ij + 14,36,144,20,3,247,104,0,6,128,255,0,31,224,255,0,31,240,255,0,15,224,40,0,6,64,0,0,0,0,0,0,0,0,85,0,5,64,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,255,0,15,224,0,0,15,224,0,0,15,224,0,0,15,224,0,0,31,224,0,0,47,208,0,42,255,192,0,127,255,128,0,127,254,0,0,26,144,0, + // 0x0134 Ĵ + 15,42,168,10,253,248,0,10,164,0,0,47,252,0,0,127,255,0,0,254,127,128,3,248,15,224,15,208,2,248,0,0,0,0,0,0,0,0,0,10,160,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,11,240,0,0,15,240,0,0,15,240,0,0,47,224,0,85,191,208,0,255,255,128,0,255,254,0,0,191,228,0,0,0,0,0,0, + // 0x0135 ĵ + 13,37,148,10,254,247,0,42,128,0,0,255,224,0,2,255,244,0,11,246,253,0,31,192,127,0,127,0,31,192,0,0,0,0,0,0,0,0,0,21,64,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,128,0,0,191,128,0,170,255,64,0,255,254,0,0,255,248,0,0,106,64,0,0, + // 0x0136 Ķ + 20,34,170,23,3,248,106,0,0,2,168,191,64,0,15,244,191,64,0,63,224,191,64,0,191,128,191,64,2,255,0,191,64,7,252,0,191,64,31,240,0,191,64,63,192,0,191,64,255,64,0,191,67,253,0,0,191,79,248,0,0,191,111,240,0,0,191,255,244,0,0,191,255,252,0,0,191,247,254,0,0,191,208,255,64,0,191,64,191,192,0,191,64,63,240,0,191,64,15,248,0,191,64,7,252,0,191,64,2,255,0,191,64,0,255,128,191,64,0,63,208,191,64,0,47,240,191,64,0,15,248,191,64,0,3,253,0,0,0,0,0,0,0,0,0,0,0,0,253,0,0,0,1,252,0,0,0,2,252,0,0,0,3,244,0,0,0,3,224,0,0,0,7,192,0,0, + // 0x0137 ķ + 17,36,180,20,3,248,85,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,85,0,255,0,3,254,0,255,0,15,248,0,255,0,47,224,0,255,0,191,128,0,255,2,255,0,0,255,11,252,0,0,254,31,240,0,0,254,127,192,0,0,254,255,192,0,0,255,255,240,0,0,255,239,248,0,0,255,131,253,0,0,255,1,255,0,0,255,0,191,192,0,255,0,63,224,0,255,0,15,244,0,255,0,7,252,0,255,0,2,255,0,255,0,0,255,128,0,0,0,0,0,0,0,0,0,0,0,15,208,0,0,0,31,192,0,0,0,47,192,0,0,0,63,64,0,0,0,62,0,0,0,0,124,0,0,0, + // 0x0138 ĸ + 17,20,100,20,3,0,85,0,0,85,0,255,0,3,254,0,255,0,11,248,0,255,0,31,240,0,255,0,127,192,0,255,0,255,0,0,255,3,253,0,0,255,15,244,0,0,255,47,224,0,0,255,191,192,0,0,255,255,240,0,0,255,255,248,0,0,255,211,253,0,0,255,1,255,0,0,255,0,191,192,0,255,0,63,224,0,255,0,15,244,0,255,0,7,252,0,255,0,2,255,0,255,0,0,255,128, + // 0x0139 Ĺ + 16,34,136,19,3,0,0,170,0,0,3,254,0,0,7,248,0,0,15,224,0,0,63,128,0,0,190,0,0,0,0,0,0,0,0,0,0,0,106,0,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,253,191,255,255,253,191,255,255,253, + // 0x013a ĺ + 8,36,72,10,3,0,1,170,3,253,15,244,47,208,127,64,253,0,0,0,0,0,85,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, + // 0x013b Ļ + 16,34,136,19,3,248,106,0,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,253,191,255,255,253,191,255,255,253,0,0,0,0,0,0,0,0,0,7,244,0,0,11,240,0,0,11,224,0,0,15,192,0,0,31,64,0,0,47,0,0, + // 0x013c ļ + 6,36,72,10,2,248,21,64,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,0,0,0,0,31,208,31,192,47,128,63,0,126,0,188,0, + // 0x013d Ľ + 16,26,104,19,3,0,106,0,0,169,191,64,1,253,191,64,1,252,191,64,2,244,191,64,3,240,191,64,3,192,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,253,191,255,255,253,191,255,255,253, + // 0x013e ľ + 10,28,84,10,3,0,85,1,80,255,15,240,255,15,208,255,15,192,255,31,64,255,47,0,255,20,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, + // 0x013f Ŀ + 16,26,104,19,3,0,106,0,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,10,64,191,64,47,208,191,64,63,208,191,64,47,208,191,64,6,64,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,253,191,255,255,253,191,255,255,253, + // 0x0140 ŀ + 10,28,84,11,3,0,85,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,10,64,255,63,192,255,63,208,255,47,192,255,6,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, + // 0x0141 Ł + 19,26,130,19,0,0,1,168,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,7,0,0,2,253,127,64,0,2,255,255,128,0,2,255,253,0,0,2,255,224,0,0,11,255,0,0,0,127,253,0,0,0,63,253,0,0,0,42,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,254,85,85,80,2,255,255,255,244,2,255,255,255,244,2,255,255,255,244, + // 0x0142 ł + 10,28,84,10,0,0,1,80,0,3,248,0,3,248,0,3,248,0,3,248,0,3,248,0,3,248,0,3,248,0,3,248,0,3,248,0,3,248,0,3,248,128,3,255,224,3,255,240,3,255,128,31,253,0,191,248,0,255,248,0,123,248,0,3,248,0,3,248,0,3,248,0,3,248,0,3,248,0,3,248,0,3,248,0,3,248,0,3,248,0, + // 0x0143 Ń + 22,34,204,28,3,0,0,0,0,106,128,0,0,0,0,255,64,0,0,0,3,253,0,0,0,0,7,244,0,0,0,0,15,208,0,0,0,0,63,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,128,0,0,10,144,191,240,0,0,15,224,191,244,0,0,15,224,191,252,0,0,15,224,191,254,0,0,15,224,191,255,64,0,15,224,190,127,192,0,15,224,191,63,224,0,15,224,191,15,240,0,15,224,191,11,252,0,15,224,191,3,253,0,15,224,191,1,255,0,15,224,191,0,191,128,15,224,191,0,63,208,15,224,191,0,31,240,15,224,191,0,15,248,15,224,191,0,3,253,15,224,191,0,2,255,15,224,191,0,0,255,143,224,191,0,0,127,207,224,191,0,0,47,255,224,191,0,0,15,255,224,191,0,0,7,255,224,191,0,0,3,255,224,191,0,0,0,255,224,191,0,0,0,191,224, + // 0x0144 ń + 17,28,140,23,3,0,0,0,10,160,0,0,0,63,224,0,0,0,127,192,0,0,0,255,0,0,0,3,248,0,0,0,11,224,0,0,0,0,0,0,0,0,0,0,0,0,84,1,170,64,0,252,47,255,244,0,253,191,255,253,0,255,254,91,255,0,255,224,0,255,64,255,128,0,127,128,255,64,0,63,128,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192, + // 0x0145 Ņ + 22,34,204,28,3,248,106,128,0,0,10,144,191,240,0,0,15,224,191,244,0,0,15,224,191,252,0,0,15,224,191,254,0,0,15,224,191,255,64,0,15,224,190,127,192,0,15,224,191,63,224,0,15,224,191,15,240,0,15,224,191,11,252,0,15,224,191,3,253,0,15,224,191,1,255,0,15,224,191,0,191,128,15,224,191,0,63,208,15,224,191,0,31,240,15,224,191,0,15,248,15,224,191,0,3,253,15,224,191,0,2,255,15,224,191,0,0,255,143,224,191,0,0,127,207,224,191,0,0,47,255,224,191,0,0,15,255,224,191,0,0,7,255,224,191,0,0,3,255,224,191,0,0,0,255,224,191,0,0,0,191,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,208,0,0,0,0,31,192,0,0,0,0,47,128,0,0,0,0,63,0,0,0,0,0,62,0,0,0,0,0,124,0,0,0, + // 0x0146 ņ + 17,28,140,23,3,248,84,1,170,64,0,252,47,255,244,0,253,191,255,253,0,255,254,91,255,0,255,224,0,255,64,255,128,0,127,128,255,64,0,63,128,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,0,0,0,0,0,0,0,0,0,0,0,2,248,0,0,0,3,244,0,0,0,7,240,0,0,0,11,224,0,0,0,15,192,0,0,0,15,64,0,0, + // 0x0147 Ň + 22,34,204,28,3,0,0,104,0,6,144,0,0,63,64,47,192,0,0,15,224,255,0,0,0,3,251,252,0,0,0,1,255,240,0,0,0,0,191,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,128,0,0,10,144,191,240,0,0,15,224,191,244,0,0,15,224,191,252,0,0,15,224,191,254,0,0,15,224,191,255,64,0,15,224,190,127,192,0,15,224,191,63,224,0,15,224,191,15,240,0,15,224,191,11,252,0,15,224,191,3,253,0,15,224,191,1,255,0,15,224,191,0,191,128,15,224,191,0,63,208,15,224,191,0,31,240,15,224,191,0,15,248,15,224,191,0,3,253,15,224,191,0,2,255,15,224,191,0,0,255,143,224,191,0,0,127,207,224,191,0,0,47,255,224,191,0,0,15,255,224,191,0,0,7,255,224,191,0,0,3,255,224,191,0,0,0,255,224,191,0,0,0,191,224, + // 0x0148 ň + 17,28,140,23,3,0,10,64,0,164,0,11,224,7,244,0,2,252,31,208,0,0,255,191,64,0,0,63,254,0,0,0,15,252,0,0,0,0,0,0,0,0,0,0,0,0,84,1,170,64,0,252,47,255,244,0,253,191,255,253,0,255,254,91,255,0,255,224,0,255,64,255,128,0,127,128,255,64,0,63,128,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192, + // 0x0149 ʼn + 23,26,156,26,0,0,10,160,0,0,0,0,31,224,0,0,0,0,47,208,0,0,0,0,47,192,0,0,0,0,63,128,0,0,0,0,63,64,0,0,0,0,127,5,64,26,164,0,190,15,194,255,255,64,252,15,219,255,255,208,0,15,255,229,191,240,0,15,253,0,15,244,0,15,248,0,7,248,0,15,244,0,3,248,0,15,240,0,3,252,0,15,240,0,3,252,0,15,240,0,3,252,0,15,240,0,3,252,0,15,240,0,3,252,0,15,240,0,3,252,0,15,240,0,3,252,0,15,240,0,3,252,0,15,240,0,3,252,0,15,240,0,3,252,0,15,240,0,3,252,0,15,240,0,3,252,0,15,240,0,3,252, + // 0x014a Ŋ + 22,34,204,28,3,248,106,128,0,0,10,144,191,240,0,0,15,224,191,248,0,0,15,224,191,253,0,0,15,224,191,255,0,0,15,224,191,255,128,0,15,224,190,127,208,0,15,224,191,47,240,0,15,224,191,15,248,0,15,224,191,7,253,0,15,224,191,2,255,0,15,224,191,0,255,128,15,224,191,0,63,208,15,224,191,0,47,240,15,224,191,0,15,248,15,224,191,0,3,253,15,224,191,0,1,255,15,224,191,0,0,255,143,224,191,0,0,63,223,224,191,0,0,31,255,224,191,0,0,15,255,224,191,0,0,3,255,224,191,0,0,1,255,224,191,0,0,0,191,224,191,0,0,0,63,224,191,0,0,0,31,224,0,0,0,0,15,208,0,0,0,0,31,208,0,0,0,0,47,192,0,0,1,85,255,192,0,0,2,255,255,0,0,0,2,255,253,0,0,0,1,255,224,0,0,0,0,0,0,0, + // 0x014b ŋ + 17,29,145,23,3,247,84,1,170,64,0,252,47,255,244,0,253,191,255,253,0,255,254,91,255,0,255,224,0,255,64,255,192,0,127,128,255,64,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,127,128,0,0,106,255,64,0,0,127,255,0,0,0,127,252,0,0,0,26,144,0, + // 0x014c Ō + 24,32,192,28,2,255,0,6,170,170,144,0,0,7,255,255,224,0,0,7,255,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x014d ō + 18,26,130,22,2,255,1,170,170,164,0,2,255,255,244,0,2,255,255,244,0,0,0,0,0,0,0,0,0,0,0,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x014e Ŏ + 24,34,204,28,2,255,0,15,64,1,240,0,0,11,192,3,240,0,0,3,255,255,208,0,0,1,255,255,128,0,0,0,127,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x014f ŏ + 18,28,140,22,2,255,3,208,0,124,0,3,240,1,248,0,1,255,255,240,0,0,191,255,208,0,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x0150 Ő + 24,35,210,28,2,255,0,0,106,66,168,0,0,0,255,11,244,0,0,2,252,15,224,0,0,7,240,47,128,0,0,15,208,126,0,0,0,47,64,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x0151 ő + 18,29,145,22,2,255,0,26,128,169,0,0,127,194,253,0,0,255,7,244,0,1,252,15,224,0,3,240,47,128,0,11,192,62,0,0,0,0,0,0,0,0,0,0,0,0,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x0152 Œ + 30,27,216,34,2,255,0,1,191,254,170,170,170,160,0,47,255,255,255,255,255,240,0,255,255,255,255,255,255,240,3,255,229,91,255,170,170,144,11,254,0,1,254,0,0,0,15,244,0,1,254,0,0,0,47,224,0,1,254,0,0,0,63,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,191,128,0,1,254,0,0,0,191,64,0,1,254,0,0,0,255,64,0,1,255,255,255,192,255,0,0,1,255,255,255,192,255,0,0,1,255,255,255,192,255,64,0,1,254,0,0,0,191,64,0,1,254,0,0,0,191,128,0,1,254,0,0,0,127,192,0,1,254,0,0,0,63,192,0,1,254,0,0,0,63,224,0,1,254,0,0,0,31,240,0,1,254,0,0,0,15,252,0,1,254,0,0,0,3,255,144,6,254,85,85,80,0,255,255,255,255,255,255,240,0,63,255,255,255,255,255,240,0,6,255,255,255,255,255,240,0,0,5,80,0,0,0,0, + // 0x0153 œ + 31,21,168,34,2,255,0,6,169,0,0,170,128,0,0,255,255,208,11,255,252,0,7,255,255,248,63,255,255,64,15,254,91,254,255,145,191,192,63,224,0,255,253,0,31,224,127,192,0,63,248,0,15,240,191,64,0,47,240,0,7,244,255,0,0,31,240,0,7,244,255,0,0,31,250,170,175,248,255,0,0,15,255,255,255,248,255,0,0,15,255,255,255,248,255,0,0,15,240,0,0,0,255,0,0,31,240,0,0,0,255,0,0,47,240,0,0,0,191,64,0,63,244,0,0,0,63,192,0,127,252,0,0,0,47,244,1,255,255,64,1,160,15,255,255,253,127,254,255,224,2,255,255,244,31,255,255,224,0,127,255,128,2,255,255,128,0,1,80,0,0,5,64,0, + // 0x0154 Ŕ + 19,34,170,23,3,0,0,0,10,164,0,0,0,47,240,0,0,0,127,192,0,0,0,255,0,0,0,2,252,0,0,0,7,224,0,0,0,0,0,0,0,0,0,0,0,0,106,170,165,0,0,191,255,255,224,0,191,255,255,253,0,191,170,191,255,0,191,64,1,255,128,191,64,0,127,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,127,128,191,64,2,255,0,191,234,191,253,0,191,255,255,244,0,191,255,255,128,0,191,170,191,192,0,191,64,47,208,0,191,64,15,240,0,191,64,11,248,0,191,64,3,253,0,191,64,1,255,0,191,64,0,191,128,191,64,0,63,192,191,64,0,47,240,191,64,0,15,244,191,64,0,7,252, + // 0x0155 ŕ + 12,28,84,15,3,0,0,1,169,0,7,252,0,15,244,0,47,208,0,127,64,0,252,0,0,0,0,0,0,0,84,1,169,252,15,254,253,63,253,254,255,253,255,248,0,255,208,0,255,128,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, + // 0x0156 Ŗ + 19,34,170,23,3,248,106,170,165,0,0,191,255,255,224,0,191,255,255,253,0,191,170,191,255,0,191,64,1,255,128,191,64,0,127,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,127,128,191,64,2,255,0,191,234,191,253,0,191,255,255,244,0,191,255,255,128,0,191,170,191,192,0,191,64,47,208,0,191,64,15,240,0,191,64,11,248,0,191,64,3,253,0,191,64,1,255,0,191,64,0,191,128,191,64,0,63,192,191,64,0,47,240,191,64,0,15,244,191,64,0,7,252,0,0,0,0,0,0,0,0,0,0,0,0,253,0,0,0,1,253,0,0,0,1,252,0,0,0,3,244,0,0,0,3,224,0,0,0,7,192,0,0, + // 0x0157 ŗ + 13,28,112,15,2,248,21,0,106,64,63,3,255,128,63,79,255,64,63,191,255,64,63,254,0,0,63,244,0,0,63,224,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,0,0,0,0,0,0,0,0,31,208,0,0,47,192,0,0,63,128,0,0,63,0,0,0,125,0,0,0,188,0,0,0, + // 0x0158 Ř + 19,34,170,23,3,0,10,64,0,168,0,11,240,3,244,0,2,252,31,208,0,0,191,191,128,0,0,63,254,0,0,0,15,252,0,0,0,0,0,0,0,0,0,0,0,0,106,170,165,0,0,191,255,255,224,0,191,255,255,253,0,191,170,191,255,0,191,64,1,255,128,191,64,0,127,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,63,192,191,64,0,127,128,191,64,2,255,0,191,234,191,253,0,191,255,255,244,0,191,255,255,128,0,191,170,191,192,0,191,64,47,208,0,191,64,15,240,0,191,64,11,248,0,191,64,3,253,0,191,64,1,255,0,191,64,0,191,128,191,64,0,63,192,191,64,0,47,240,191,64,0,15,244,191,64,0,7,252, + // 0x0159 ř + 13,28,112,15,2,0,104,0,6,128,63,64,47,128,31,208,254,0,7,251,252,0,2,255,240,0,0,255,208,0,0,0,0,0,0,0,0,0,21,0,106,64,63,3,255,128,63,79,255,64,63,191,255,64,63,254,0,0,63,244,0,0,63,224,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0, + // 0x015a Ś + 16,35,140,20,2,255,0,0,10,160,0,0,63,224,0,0,191,128,0,0,254,0,0,3,248,0,0,11,224,0,0,0,0,0,0,0,0,0,0,111,255,144,7,255,255,253,31,255,255,253,63,249,86,252,191,192,0,20,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,208,0,0,63,253,0,0,15,255,208,0,3,255,253,0,0,127,255,208,0,6,255,244,0,0,47,252,0,0,7,254,0,0,0,255,0,0,0,255,0,0,0,191,0,0,0,255,64,0,1,255,249,0,11,253,255,255,255,248,255,255,255,224,111,255,254,0,0,21,64,0, + // 0x015b ś + 14,29,116,17,2,255,0,0,170,64,0,1,255,0,0,3,252,0,0,11,240,0,0,31,192,0,0,63,0,0,0,0,0,0,0,0,0,0,0,106,164,0,15,255,255,192,63,255,255,192,255,149,111,128,254,0,0,0,254,0,0,0,255,0,0,0,255,208,0,0,63,254,0,0,15,255,244,0,1,255,254,0,0,27,255,192,0,0,191,208,0,0,31,240,0,0,15,240,0,0,15,240,208,0,47,224,255,170,255,192,255,255,255,64,127,255,248,0,0,85,0,0, + // 0x015c Ŝ + 16,35,140,20,2,255,0,10,164,0,0,47,252,0,0,127,255,0,0,254,127,128,3,248,15,224,15,208,2,248,0,0,0,0,0,0,0,0,0,111,255,144,7,255,255,253,31,255,255,253,63,249,86,252,191,192,0,20,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,208,0,0,63,253,0,0,15,255,208,0,3,255,253,0,0,127,255,208,0,6,255,244,0,0,47,252,0,0,7,254,0,0,0,255,0,0,0,255,0,0,0,191,0,0,0,255,64,0,1,255,249,0,11,253,255,255,255,248,255,255,255,224,111,255,254,0,0,21,64,0, + // 0x015d ŝ + 14,29,116,17,2,255,0,106,128,0,0,255,208,0,3,255,244,0,11,242,252,0,47,192,191,0,190,0,31,192,0,0,0,0,0,0,0,0,0,106,164,0,15,255,255,192,63,255,255,192,255,149,111,128,254,0,0,0,254,0,0,0,255,0,0,0,255,208,0,0,63,254,0,0,15,255,244,0,1,255,254,0,0,27,255,192,0,0,191,208,0,0,31,240,0,0,15,240,0,0,15,240,208,0,47,224,255,170,255,192,255,255,255,64,127,255,248,0,0,85,0,0, + // 0x015e Ş + 16,35,140,20,2,247,0,111,255,144,7,255,255,253,31,255,255,253,63,249,86,252,191,192,0,20,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,208,0,0,63,253,0,0,15,255,208,0,3,255,253,0,0,127,255,208,0,6,255,244,0,0,47,252,0,0,7,254,0,0,0,255,0,0,0,255,0,0,0,191,0,0,0,255,64,0,1,255,249,0,11,253,255,255,255,248,255,255,255,224,111,255,254,0,0,31,192,0,0,31,64,0,0,63,224,0,0,7,248,0,0,0,252,0,0,0,252,0,0,171,248,0,1,255,240,0,0,169,64,0, + // 0x015f ş + 14,29,116,17,2,247,0,106,164,0,15,255,255,192,63,255,255,192,255,149,111,128,254,0,0,0,254,0,0,0,255,0,0,0,255,208,0,0,63,254,0,0,15,255,244,0,1,255,254,0,0,27,255,192,0,0,191,208,0,0,31,240,0,0,15,240,0,0,15,240,208,0,47,224,255,170,255,192,255,255,255,64,127,255,248,0,0,127,0,0,0,62,0,0,0,191,208,0,0,27,240,0,0,2,244,0,0,3,244,0,2,175,240,0,3,255,208,0,1,169,0,0, + // 0x0160 Š + 16,35,140,20,2,255,10,64,0,164,11,224,7,240,3,252,47,208,0,255,191,64,0,63,253,0,0,31,248,0,0,0,0,0,0,0,0,0,0,111,255,144,7,255,255,253,31,255,255,253,63,249,86,252,191,192,0,20,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,208,0,0,63,253,0,0,15,255,208,0,3,255,253,0,0,127,255,208,0,6,255,244,0,0,47,252,0,0,7,254,0,0,0,255,0,0,0,255,0,0,0,191,0,0,0,255,64,0,1,255,249,0,11,253,255,255,255,248,255,255,255,224,111,255,254,0,0,21,64,0, + // 0x0161 š + 14,29,116,17,2,255,104,0,6,128,127,64,47,128,31,208,254,0,7,251,252,0,2,255,240,0,0,255,192,0,0,0,0,0,0,0,0,0,0,106,164,0,15,255,255,192,63,255,255,192,255,149,111,128,254,0,0,0,254,0,0,0,255,0,0,0,255,208,0,0,63,254,0,0,15,255,244,0,1,255,254,0,0,27,255,192,0,0,191,208,0,0,31,240,0,0,15,240,0,0,15,240,208,0,47,224,255,170,255,192,255,255,255,64,127,255,248,0,0,85,0,0, + // 0x0162 Ţ + 20,35,175,20,0,247,106,170,170,170,170,191,255,255,255,255,191,255,255,255,255,106,170,255,170,169,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,61,0,0,0,0,188,0,0,0,0,255,128,0,0,0,31,224,0,0,0,7,240,0,0,0,7,240,0,0,6,175,224,0,0,7,255,128,0,0,2,164,0,0, + // 0x0163 ţ + 13,33,132,14,0,247,0,60,0,0,0,188,0,0,0,252,0,0,0,252,0,0,3,253,85,64,47,255,255,128,127,255,255,128,43,254,170,64,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,253,0,0,1,255,0,0,0,255,255,192,0,127,255,192,0,31,255,128,0,3,224,0,0,11,192,0,0,15,248,0,0,1,253,0,0,0,126,0,0,0,126,0,0,106,253,0,0,191,248,0,0,106,64,0, + // 0x0164 Ť + 20,34,170,20,0,0,0,164,0,10,64,0,254,0,127,0,0,63,194,252,0,0,15,251,244,0,0,3,255,208,0,0,1,255,128,0,0,0,0,0,0,0,0,0,0,0,106,170,170,170,170,191,255,255,255,255,191,255,255,255,255,106,170,255,170,169,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0, + // 0x0165 ť + 18,29,145,14,0,255,0,0,0,5,80,0,0,0,15,240,0,0,0,15,208,0,0,0,15,192,0,60,0,31,64,0,188,0,47,0,0,252,0,20,0,0,252,0,0,0,3,253,85,64,0,47,255,255,128,0,127,255,255,128,0,43,254,170,64,0,2,252,0,0,0,2,252,0,0,0,2,252,0,0,0,2,252,0,0,0,2,252,0,0,0,2,252,0,0,0,2,252,0,0,0,2,252,0,0,0,2,252,0,0,0,2,252,0,0,0,2,252,0,0,0,2,253,0,0,0,1,255,0,0,0,0,255,255,192,0,0,127,255,192,0,0,31,255,128,0,0,0,80,0,0, + // 0x0166 Ŧ + 20,26,130,20,0,0,106,170,170,170,170,191,255,255,255,255,191,255,255,255,255,106,170,255,170,170,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,1,170,255,170,128,3,255,255,255,192,3,255,255,255,192,2,170,255,170,128,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0, + // 0x0167 ŧ + 13,25,100,14,0,255,0,60,0,0,0,188,0,0,0,252,0,0,0,252,0,0,3,253,85,64,47,255,255,128,127,255,255,128,43,254,170,64,2,252,0,0,2,252,0,0,2,252,0,0,23,253,85,0,63,255,255,64,63,255,255,64,23,253,85,0,2,252,0,0,2,252,0,0,2,252,0,0,2,252,0,0,2,253,0,0,1,255,0,0,0,255,255,192,0,127,255,192,0,31,255,128,0,0,80,0, + // 0x0168 Ũ + 21,34,204,27,3,255,0,6,128,2,128,0,0,63,248,7,192,0,0,191,255,239,128,0,0,248,127,255,0,0,1,240,7,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,255,0,63,224,0,3,253,0,15,253,0,47,248,0,7,255,255,255,240,0,1,255,255,255,128,0,0,47,255,249,0,0,0,0,21,0,0,0, + // 0x0169 ũ + 17,28,140,23,3,255,0,104,0,40,0,3,255,128,124,0,11,255,254,248,0,15,135,255,240,0,31,0,127,192,0,0,0,0,0,0,0,0,0,0,0,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,31,128,0,21,0,0,0, + // 0x016a Ū + 21,32,192,27,3,255,0,42,170,170,0,0,0,63,255,255,0,0,0,63,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,255,0,63,224,0,3,253,0,15,253,0,47,248,0,7,255,255,255,240,0,1,255,255,255,128,0,0,47,255,249,0,0,0,0,21,0,0,0, + // 0x016b ū + 17,26,130,23,3,255,2,170,170,160,0,3,255,255,240,0,3,255,255,240,0,0,0,0,0,0,0,0,0,0,0,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,31,128,0,21,0,0,0, + // 0x016c Ŭ + 21,34,204,27,3,255,0,184,0,15,0,0,0,125,0,47,0,0,0,63,255,254,0,0,0,31,255,248,0,0,0,2,255,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,255,0,63,224,0,3,253,0,15,253,0,47,248,0,7,255,255,255,240,0,1,255,255,255,128,0,0,47,255,249,0,0,0,0,21,0,0,0, + // 0x016d ŭ + 17,28,140,23,3,255,11,128,0,240,0,7,208,2,240,0,3,255,255,224,0,1,255,255,128,0,0,47,253,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,31,128,0,21,0,0,0, + // 0x016e Ů + 21,37,222,27,3,255,0,0,105,0,0,0,0,2,255,208,0,0,0,7,231,240,0,0,0,11,128,244,0,0,0,15,64,244,0,0,0,11,129,240,0,0,0,3,255,224,0,0,0,1,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,255,0,63,224,0,3,253,0,15,253,0,47,248,0,7,255,255,255,240,0,1,255,255,255,128,0,0,47,255,249,0,0,0,0,21,0,0,0, + // 0x016f ů + 17,31,155,23,3,255,0,6,144,0,0,0,47,253,0,0,0,126,127,0,0,0,184,15,64,0,0,180,15,64,0,0,188,31,0,0,0,63,254,0,0,0,31,248,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,31,128,0,21,0,0,0, + // 0x0170 Ű + 21,35,210,27,3,255,0,6,164,42,128,0,0,15,240,127,128,0,0,47,208,255,0,0,0,63,66,252,0,0,0,189,3,240,0,0,1,244,15,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,255,0,63,224,0,3,253,0,15,253,0,47,248,0,7,255,255,255,240,0,1,255,255,255,128,0,0,47,255,249,0,0,0,0,21,0,0,0, + // 0x0171 ű + 17,29,145,23,3,255,0,106,66,168,0,0,255,7,248,0,1,253,15,240,0,3,244,47,192,0,11,208,63,0,0,31,64,252,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,31,128,0,21,0,0,0, + // 0x0172 Ų + 21,35,210,27,3,247,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,254,0,63,224,0,3,253,0,15,253,0,47,252,0,7,255,255,255,240,0,1,255,255,255,192,0,0,47,255,255,0,0,0,0,20,125,0,0,0,0,0,248,0,0,0,0,2,240,0,0,0,0,3,240,0,0,0,0,3,240,0,0,0,0,3,249,64,0,0,0,1,255,208,0,0,0,0,127,208,0,0,0,0,0,0,0, + // 0x0173 ų + 17,29,145,23,3,247,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,47,128,0,21,0,125,0,0,0,1,248,0,0,0,3,240,0,0,0,7,224,0,0,0,7,208,0,0,0,7,245,64,0,0,3,255,192,0,0,0,255,128,0,0,0,0,0, + // 0x0174 Ŵ + 34,34,50,34,0,0,0,0,0,2,168,0,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,47,255,64,0,0,0,0,0,0,191,111,208,0,0,0,0,0,1,253,7,244,0,0,0,0,0,7,240,0,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,2,168,0,0,26,144,127,128,0,7,252,0,0,47,192,63,192,0,11,253,0,0,63,192,63,192,0,15,254,0,0,63,128,47,208,0,31,255,0,0,127,64,31,224,0,47,255,64,0,191,0,15,240,0,63,191,128,0,255,0,15,240,0,63,111,192,0,254,0,11,244,0,127,31,192,1,253,0,7,248,0,191,15,208,2,252,0,3,252,0,254,15,240,3,252,0,3,252,1,253,11,240,3,248,0,2,253,2,252,3,244,7,244,0,1,254,3,248,3,248,11,240,0,0,255,3,244,2,252,15,240,0,0,191,7,240,1,252,15,224,0,0,127,75,240,0,253,31,208,0,0,63,143,224,0,254,47,192,0,0,63,143,208,0,191,63,192,0,0,47,223,192,0,63,63,64,0,0,31,239,128,0,63,191,0,0,0,15,255,64,0,47,255,0,0,0,15,255,0,0,31,254,0,0,0,11,255,0,0,15,253,0,0,0,7,254,0,0,15,252,0,0,0,3,253,0,0,11,252,0,0, + // 0x0175 ŵ + 29,28,224,29,0,0,0,0,0,106,64,0,0,0,0,0,1,255,208,0,0,0,0,0,3,255,240,0,0,0,0,0,15,243,252,0,0,0,0,0,63,128,255,0,0,0,0,0,190,0,47,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,0,0,85,64,0,21,64,127,128,0,255,192,0,127,64,63,192,0,255,192,0,191,0,63,192,1,255,208,0,255,0,47,208,2,251,240,0,254,0,15,224,3,243,240,2,253,0,15,240,7,243,244,3,252,0,11,240,11,226,248,3,248,0,7,244,15,209,252,7,244,0,3,248,15,192,252,11,240,0,3,252,31,192,254,15,240,0,2,252,63,128,191,15,224,0,1,253,63,0,127,31,208,0,0,254,127,0,63,111,192,0,0,254,126,0,47,175,192,0,0,127,189,0,31,191,64,0,0,63,252,0,15,255,0,0,0,63,252,0,15,255,0,0,0,47,244,0,11,254,0,0,0,31,240,0,7,253,0,0, + // 0x0176 Ŷ + 21,34,204,21,0,0,0,0,106,64,0,0,0,1,255,208,0,0,0,3,255,240,0,0,0,15,243,252,0,0,0,63,128,255,0,0,0,253,0,47,128,0,0,0,0,0,0,0,0,0,0,0,0,0,170,64,0,0,106,128,127,192,0,0,255,64,63,208,0,1,255,0,31,240,0,3,252,0,11,244,0,7,248,0,3,252,0,15,240,0,2,253,0,31,224,0,0,255,0,63,192,0,0,191,128,127,128,0,0,63,192,255,0,0,0,47,226,253,0,0,0,15,243,252,0,0,0,7,255,244,0,0,0,3,255,240,0,0,0,1,255,208,0,0,0,0,255,128,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0, + // 0x0177 ŷ + 19,37,185,19,0,247,0,1,169,0,0,0,7,255,64,0,0,15,255,192,0,0,63,207,240,0,0,254,3,252,0,3,244,0,190,0,0,0,0,0,0,0,0,0,0,0,85,0,0,1,84,191,64,0,7,248,63,192,0,15,240,63,192,0,15,240,31,224,0,31,208,15,240,0,63,192,11,244,0,63,128,3,248,0,191,64,3,252,0,255,0,1,253,0,254,0,0,255,2,252,0,0,191,3,252,0,0,63,71,244,0,0,63,203,240,0,0,31,207,224,0,0,15,223,208,0,0,11,255,192,0,0,3,255,128,0,0,3,255,0,0,0,1,255,0,0,0,1,253,0,0,0,3,252,0,0,0,3,248,0,0,0,11,244,0,0,0,47,240,0,0,38,255,192,0,0,127,255,64,0,0,127,253,0,0,0,42,144,0,0,0, + // 0x0178 Ÿ + 21,33,198,21,0,0,0,5,0,20,0,0,0,47,192,254,0,0,0,63,192,255,0,0,0,47,128,190,0,0,0,5,0,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,64,0,0,106,128,127,192,0,0,255,64,63,208,0,1,255,0,31,240,0,3,252,0,11,244,0,7,248,0,3,252,0,15,240,0,2,253,0,31,224,0,0,255,0,63,192,0,0,191,128,127,128,0,0,63,192,255,0,0,0,47,226,253,0,0,0,15,243,252,0,0,0,7,255,244,0,0,0,3,255,240,0,0,0,1,255,208,0,0,0,0,255,128,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0, + // 0x0179 Ź + 19,34,170,21,1,0,0,0,2,169,0,0,0,11,252,0,0,0,31,240,0,0,0,63,192,0,0,0,191,0,0,0,1,248,0,0,0,0,0,0,0,0,0,0,0,0,106,170,170,170,160,127,255,255,255,240,127,255,255,255,240,42,170,170,191,240,0,0,0,63,192,0,0,0,255,64,0,0,2,255,0,0,0,3,252,0,0,0,15,244,0,0,0,47,224,0,0,0,63,192,0,0,0,255,64,0,0,2,254,0,0,0,3,252,0,0,0,15,244,0,0,0,47,224,0,0,0,127,192,0,0,0,255,64,0,0,2,254,0,0,0,7,252,0,0,0,15,244,0,0,0,47,224,0,0,0,127,213,85,85,80,255,255,255,255,244,255,255,255,255,244,255,255,255,255,244, + // 0x017a ź + 15,28,112,17,1,0,0,0,42,144,0,0,191,192,0,0,255,0,0,3,252,0,0,11,240,0,0,31,128,0,0,0,0,0,0,0,0,0,21,85,85,80,63,255,255,248,63,255,255,248,42,170,175,244,0,0,31,224,0,0,63,192,0,0,255,0,0,2,254,0,0,7,252,0,0,15,240,0,0,47,208,0,0,127,128,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,192,0,0,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x017b Ż + 19,33,165,21,1,0,0,0,168,0,0,0,1,253,0,0,0,2,254,0,0,0,1,253,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,106,170,170,170,160,127,255,255,255,240,127,255,255,255,240,42,170,170,191,240,0,0,0,63,192,0,0,0,255,64,0,0,2,255,0,0,0,3,252,0,0,0,15,244,0,0,0,47,224,0,0,0,63,192,0,0,0,255,64,0,0,2,254,0,0,0,3,252,0,0,0,15,244,0,0,0,47,224,0,0,0,127,192,0,0,0,255,64,0,0,2,254,0,0,0,7,252,0,0,0,15,244,0,0,0,47,224,0,0,0,127,213,85,85,80,255,255,255,255,244,255,255,255,255,244,255,255,255,255,244, + // 0x017c ż + 15,27,108,17,1,0,0,10,128,0,0,31,224,0,0,47,224,0,0,31,208,0,0,6,64,0,0,0,0,0,0,0,0,0,21,85,85,80,63,255,255,248,63,255,255,248,42,170,175,244,0,0,31,224,0,0,63,192,0,0,255,0,0,2,254,0,0,7,252,0,0,15,240,0,0,47,208,0,0,127,128,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,192,0,0,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x017d Ž + 19,34,170,21,1,0,2,160,0,42,0,1,252,0,253,0,0,191,7,244,0,0,47,239,224,0,0,15,255,128,0,0,3,255,0,0,0,0,0,0,0,0,0,0,0,0,106,170,170,170,160,127,255,255,255,240,127,255,255,255,240,42,170,170,191,240,0,0,0,63,192,0,0,0,255,64,0,0,2,255,0,0,0,3,252,0,0,0,15,244,0,0,0,47,224,0,0,0,63,192,0,0,0,255,64,0,0,2,254,0,0,0,3,252,0,0,0,15,244,0,0,0,47,224,0,0,0,127,192,0,0,0,255,64,0,0,2,254,0,0,0,7,252,0,0,0,15,244,0,0,0,47,224,0,0,0,127,213,85,85,80,255,255,255,255,244,255,255,255,255,244,255,255,255,255,244, + // 0x017e ž + 15,28,112,17,1,0,42,0,2,160,31,192,15,224,7,244,127,128,2,254,254,0,0,191,252,0,0,63,240,0,0,0,0,0,0,0,0,0,21,85,85,80,63,255,255,248,63,255,255,248,42,170,175,244,0,0,31,224,0,0,63,192,0,0,255,0,0,2,254,0,0,7,252,0,0,15,240,0,0,47,208,0,0,127,128,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,192,0,0,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x017f ſ + 11,28,84,12,3,0,0,89,64,11,255,244,47,255,240,127,250,224,191,128,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Simplified_Chinese_26.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Simplified_Chinese_26.cpp new file mode 100644 index 000000000000..607d9118ae1e --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Simplified_Chinese_26.cpp @@ -0,0 +1,778 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Simplified Chinese 36pt, capital 'A' height: 26px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 +extern const uint8_t NotoSans_Medium_Simplified_Chinese_26[20454] = { + 162,26,28,32,26,255,34,247, // unifont_t + // 0x201c “ + 28,32,13,10,40,14,0,16,1,160,6,128,3,240,15,192,7,240,31,192,15,224,47,128,15,208,63,64,47,192,191,0,63,192,255,0,63,192,255,0,127,129,254,0,0,0,0,0, + // 0x201d ” + 29,32,13,10,40,14,0,16,10,160,42,128,15,240,63,192,15,240,63,192,31,208,127,128,47,192,127,0,63,128,191,0,63,64,253,0,63,0,252,0,125,1,248,0,0,0,0,0, + // 0x22bf ⊿ + 191,34,28,29,203,36,3,0,0,0,0,0,0,0,2,0,0,0,0,0,0,11,0,0,0,0,0,0,31,0,0,0,0,0,0,127,0,0,0,0,0,1,255,0,0,0,0,0,7,255,0,0,0,0,0,31,255,0,0,0,0,0,127,255,0,0,0,0,1,255,63,0,0,0,0,3,252,63,0,0,0,0,15,240,63,0,0,0,0,63,192,63,0,0,0,0,255,0,63,0,0,0,3,252,0,63,0,0,0,15,240,0,63,0,0,0,63,192,0,63,0,0,0,255,64,0,63,0,0,3,253,0,0,63,0,0,15,244,0,0,63,0,0,63,208,0,0,63,0,0,255,64,0,0,63,0,2,253,0,0,0,63,0,11,244,0,0,0,63,0,47,224,0,0,0,63,0,191,128,0,0,0,63,2,254,0,0,0,0,63,11,255,255,255,255,255,255,47,255,255,255,255,255,255,191,255,255,255,255,255,255, + // 0x4e00 一 + 0,78,34,4,36,36,1,12,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,42,170,170,170,170,170,170,170,144, + // 0x4e09 三 + 9,78,32,29,232,36,2,255,1,85,85,85,85,85,85,64,7,255,255,255,255,255,255,224,7,255,255,255,255,255,255,224,7,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,85,85,85,85,84,0,0,63,255,255,255,255,248,0,0,63,255,255,255,255,248,0,0,63,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,253,191,255,255,255,255,255,255,253,191,255,255,255,255,255,255,253,21,85,85,85,85,85,85,84, + // 0x4e0a 上 + 10,78,32,32,0,36,2,255,0,0,0,21,64,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,213,85,85,64,0,0,0,63,255,255,255,224,0,0,0,63,255,255,255,224,0,0,0,63,255,255,255,224,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,85,85,85,127,213,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x4e0b 下 + 11,78,32,32,0,36,2,253,85,85,85,85,85,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,253,0,0,0,0,0,0,47,255,208,0,0,0,0,0,47,255,252,0,0,0,0,0,47,223,255,128,0,0,0,0,47,194,255,244,0,0,0,0,47,192,127,255,0,0,0,0,47,192,11,255,208,0,0,0,47,192,0,255,240,0,0,0,47,192,0,47,192,0,0,0,47,192,0,7,64,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,31,192,0,0,0, + // 0x4e0d 不 + 13,78,33,32,32,36,2,253,21,85,85,85,85,85,85,84,0,127,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,253,0,0,0,0,2,255,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,127,240,0,0,0,0,0,0,0,255,240,0,0,0,0,0,0,3,255,242,224,0,0,0,0,0,15,255,251,252,0,0,0,0,0,63,255,247,255,64,0,0,0,0,255,207,240,255,224,0,0,0,7,255,79,240,47,252,0,0,0,31,253,15,240,7,255,64,0,0,191,240,15,240,1,255,208,0,7,255,192,15,240,0,63,248,0,47,254,0,15,240,0,15,254,0,255,248,0,15,240,0,2,255,64,191,208,0,15,240,0,0,253,0,62,0,0,15,240,0,0,52,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0, + // 0x4e13 专 + 19,78,32,35,24,36,2,252,0,0,0,127,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,254,0,0,0,0,3,255,255,255,255,255,255,192,3,255,255,255,255,255,255,192,3,255,255,255,255,255,255,192,0,0,3,244,0,0,0,0,0,0,7,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,15,208,0,0,0,0,255,255,255,255,255,255,255,253,255,255,255,255,255,255,255,253,255,255,255,255,255,255,255,253,0,0,127,64,0,0,0,0,0,0,191,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,253,0,0,0,0,0,0,2,255,255,255,255,255,0,0,3,255,255,255,255,255,192,0,3,255,255,255,255,255,0,0,0,0,0,0,11,252,0,0,0,0,0,0,47,240,0,0,0,0,0,0,191,192,0,0,0,0,0,2,255,0,0,0,0,190,64,11,252,0,0,0,1,255,249,47,240,0,0,0,1,191,255,255,208,0,0,0,0,6,255,255,128,0,0,0,0,0,31,255,244,0,0,0,0,0,0,191,255,64,0,0,0,0,0,11,255,208,0,0,0,0,0,0,127,192,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0, + // 0x4e1d 丝 + 29,78,32,32,0,36,2,255,0,0,144,0,0,2,64,0,0,1,252,0,0,7,240,0,0,2,252,0,0,15,240,0,0,3,244,0,0,15,208,0,0,7,240,0,0,47,192,0,0,15,224,0,0,63,0,0,0,31,192,0,0,190,0,0,0,63,128,56,1,252,0,244,0,127,0,191,3,248,2,253,0,253,0,254,7,240,3,248,1,252,2,252,15,208,15,240,3,244,7,244,63,128,31,208,15,224,15,240,255,255,255,128,63,255,255,192,255,255,255,0,63,255,255,64,191,255,253,0,31,255,255,0,101,7,248,0,4,2,252,0,0,15,240,0,0,7,244,0,0,47,192,0,0,15,224,0,0,127,64,0,0,63,192,0,0,254,0,0,0,255,0,0,3,248,0,0,2,252,0,0,15,240,0,0,15,255,255,252,127,255,255,252,31,255,255,252,191,255,255,252,15,255,255,252,127,255,255,248,10,149,0,0,58,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x4e2a 个 + 42,78,34,33,41,36,1,253,0,0,0,7,252,0,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,63,255,64,0,0,0,0,0,0,191,255,192,0,0,0,0,0,1,255,31,240,0,0,0,0,0,7,253,11,252,0,0,0,0,0,31,248,2,255,0,0,0,0,0,127,224,0,191,192,0,0,0,1,255,128,0,47,244,0,0,0,11,254,0,0,11,254,0,0,0,47,248,0,0,2,255,192,0,0,255,208,0,0,0,127,244,0,11,255,64,3,248,0,15,255,64,127,252,0,3,248,0,3,255,224,255,224,0,3,248,0,0,127,240,63,0,0,3,248,0,0,11,192,24,0,0,3,248,0,0,1,64,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0, + // 0x4e2d 中 + 45,78,30,34,16,36,3,253,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,21,85,85,127,149,85,85,64,191,255,255,255,255,255,255,208,191,255,255,255,255,255,255,208,191,255,255,255,255,255,255,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,191,85,85,127,149,85,95,208,191,255,255,255,255,255,255,208,191,255,255,255,255,255,255,208,191,255,255,255,255,255,255,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0, + // 0x4e3a 为 + 58,78,31,34,16,36,2,253,0,0,0,190,0,0,0,0,0,44,0,191,0,0,0,0,0,254,0,191,0,0,0,0,0,191,64,191,0,0,0,0,0,63,192,191,0,0,0,0,0,15,224,191,0,0,0,0,0,11,224,191,0,0,0,0,0,2,0,190,0,0,0,0,21,85,85,255,85,85,85,80,63,255,255,255,255,255,255,244,63,255,255,255,255,255,255,244,63,255,255,255,255,255,255,244,0,0,0,253,0,0,3,244,0,0,1,252,0,0,3,244,0,0,2,252,0,0,3,244,0,0,3,248,0,0,7,240,0,0,3,244,24,0,7,240,0,0,7,240,254,0,7,240,0,0,15,240,191,64,7,240,0,0,15,224,63,192,7,240,0,0,47,192,15,224,11,240,0,0,63,128,7,244,11,240,0,0,255,64,3,252,11,240,0,1,254,0,1,244,15,224,0,3,252,0,0,64,15,224,0,15,248,0,0,0,15,224,0,63,224,0,0,0,15,208,0,255,192,0,0,0,31,208,3,255,0,0,0,0,47,192,31,252,0,0,0,0,127,192,191,240,0,0,15,255,255,128,63,192,0,0,7,255,255,0,14,0,0,0,3,255,252,0,0,0,0,0,1,85,64,0, + // 0x4e3b 主 + 59,78,32,33,8,36,2,254,0,0,0,36,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,63,244,0,0,0,0,0,0,11,253,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,189,0,0,0,31,255,255,255,255,255,255,240,31,255,255,255,255,255,255,240,31,255,255,255,255,255,255,240,5,85,85,95,245,85,85,80,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,2,255,255,255,255,255,255,128,2,255,255,255,255,255,255,128,2,255,255,255,255,255,255,128,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,21,85,85,95,245,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x4e49 义 + 73,78,34,34,50,36,1,253,0,0,0,6,128,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,7,240,0,3,224,0,0,4,0,3,248,0,7,244,0,0,190,0,2,252,0,15,240,0,0,127,0,0,253,0,15,224,0,0,63,128,0,190,0,47,192,0,0,47,192,0,127,0,63,192,0,0,15,208,0,32,0,127,64,0,0,11,240,0,0,0,255,0,0,0,3,248,0,0,1,253,0,0,0,2,252,0,0,3,252,0,0,0,0,254,0,0,11,244,0,0,0,0,191,64,0,31,240,0,0,0,0,63,192,0,63,192,0,0,0,0,31,240,0,191,64,0,0,0,0,11,248,1,255,0,0,0,0,0,3,254,7,252,0,0,0,0,0,0,255,79,244,0,0,0,0,0,0,127,255,208,0,0,0,0,0,0,31,255,128,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,31,255,128,0,0,0,0,0,0,191,255,240,0,0,0,0,0,7,255,111,254,0,0,0,0,0,47,252,7,255,208,0,0,0,2,255,224,0,255,253,0,0,0,47,255,64,0,31,255,208,0,7,255,248,0,0,2,255,254,64,127,255,128,0,0,0,47,255,208,63,248,0,0,0,0,2,255,64,14,64,0,0,0,0,0,31,0,0,0,0,0,0,0,0,0,0, + // 0x4e4b 之 + 75,78,34,34,50,36,1,253,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,7,255,255,255,255,255,255,244,0,7,255,255,255,255,255,255,253,0,7,255,255,255,255,255,255,252,0,1,85,85,85,85,85,95,244,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,2,255,0,0,0,0,1,0,0,11,252,0,0,0,0,11,224,0,47,240,0,0,0,0,15,224,0,191,192,0,0,0,0,31,208,2,255,0,0,0,0,0,63,192,15,252,0,0,0,0,0,127,240,127,240,0,0,0,0,0,255,249,255,192,0,0,0,0,1,255,255,254,0,0,0,0,0,3,252,255,244,0,0,0,0,0,11,244,63,248,0,0,0,0,0,15,240,15,255,229,0,0,0,0,63,208,2,255,255,255,255,255,208,191,192,0,47,255,255,255,255,192,47,64,0,1,175,255,255,255,128,6,0,0,0,0,1,85,85,0, + // 0x4e86 了 + 134,78,29,32,0,36,3,253,21,85,85,85,85,85,84,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,192,127,255,255,255,255,255,255,0,0,0,0,0,0,11,253,0,0,0,0,0,0,47,244,0,0,0,0,0,0,191,208,0,0,0,0,0,3,255,64,0,0,0,0,0,15,253,0,0,0,0,0,0,127,240,0,0,0,0,0,26,255,192,0,0,0,0,0,47,254,0,0,0,0,0,0,47,244,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,5,85,127,192,0,0,0,0,11,255,255,128,0,0,0,0,7,255,255,0,0,0,0,0,3,255,232,0,0,0,0, + // 0x4e8c 二 + 140,78,32,26,208,36,2,0,2,170,170,170,170,170,170,128,3,255,255,255,255,255,255,192,3,255,255,255,255,255,255,192,3,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,254, + // 0x4e8e 于 + 142,78,32,32,0,36,2,253,1,85,85,85,85,85,85,64,7,255,255,255,255,255,255,208,7,255,255,255,255,255,255,208,7,255,255,255,255,255,255,208,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,85,85,85,91,245,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,0,0,1,85,111,240,0,0,0,0,1,255,255,240,0,0,0,0,0,255,255,208,0,0,0,0,0,191,250,0,0,0,0, + // 0x4ea4 交 + 164,78,32,35,24,36,2,252,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,21,85,85,95,229,85,85,84,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,0,0,0,0,0,4,0,0,0,0,121,0,0,47,0,0,0,1,255,64,0,255,208,0,0,7,253,0,0,63,248,0,0,31,248,0,0,11,255,0,0,191,224,0,0,1,255,192,3,255,128,0,0,0,127,240,31,254,5,0,0,100,15,252,191,244,191,0,0,255,3,255,63,192,63,64,1,254,0,252,14,0,47,192,3,252,0,32,0,0,15,224,7,248,0,0,0,0,11,244,15,240,0,0,0,0,3,252,63,208,0,0,0,0,1,255,191,128,0,0,0,0,0,191,255,0,0,0,0,0,0,63,252,0,0,0,0,0,0,127,253,0,0,0,0,0,2,255,255,128,0,0,0,0,47,255,255,248,0,0,0,2,255,248,47,255,128,0,0,191,255,192,7,255,254,0,111,255,253,0,0,191,255,254,255,255,208,0,0,11,255,255,127,248,0,0,0,0,111,253,62,64,0,0,0,0,1,184,0,0,0,0,0,0,0,0, + // 0x4eae 亮 + 174,78,32,35,24,36,2,252,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,254,0,0,0,0,0,0,0,0,0,5,85,85,85,85,84,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,64,0,0,1,252,0,0,63,64,0,0,1,252,0,0,63,64,0,0,1,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,21,85,85,85,85,84,0,0,0,0,0,0,0,0,0,106,170,170,170,170,170,170,169,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,125,0,0,0,0,0,0,189,125,0,47,192,11,224,0,189,125,0,63,128,15,224,0,189,125,0,63,128,15,224,0,189,0,0,63,64,15,224,0,0,0,0,127,0,15,224,0,0,0,0,255,0,15,224,0,0,0,1,254,0,15,224,0,52,0,7,252,0,15,224,0,63,0,47,244,0,15,240,0,63,6,255,224,0,15,240,0,191,255,255,64,0,11,255,255,254,191,248,0,0,7,255,255,252,62,64,0,0,1,191,255,224,0,0,0,0,0,0,0,0, + // 0x4ece 从 + 206,78,34,32,32,36,1,253,0,0,254,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,0,253,0,0,63,128,0,0,0,0,253,0,0,63,64,0,0,0,1,253,0,0,63,64,0,0,0,1,253,0,0,63,128,0,0,0,1,252,0,0,127,192,0,0,0,2,252,0,0,127,192,0,0,0,2,252,0,0,191,192,0,0,0,3,252,0,0,191,192,0,0,0,3,248,0,0,255,208,0,0,0,3,253,0,0,255,224,0,0,0,7,255,0,1,255,240,0,0,0,7,255,192,2,255,240,0,0,0,11,255,224,3,255,248,0,0,0,15,255,244,3,250,252,0,0,0,15,231,252,7,245,252,0,0,0,31,210,255,15,240,253,0,0,0,47,192,255,95,240,255,0,0,0,63,192,63,111,208,127,64,0,0,127,128,46,63,192,63,192,0,0,255,0,8,255,64,47,208,0,1,255,0,1,255,0,15,240,0,3,253,0,3,253,0,11,252,0,7,252,0,15,252,0,3,254,0,15,244,0,63,240,0,1,255,128,63,240,0,255,208,0,0,255,224,127,208,0,255,128,0,0,63,192,31,128,0,46,0,0,0,15,0,2,0,0,4,0,0,0,1,0, + // 0x4ee4 令 + 228,78,34,34,50,36,1,253,0,0,0,7,248,0,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,47,255,64,0,0,0,0,0,0,191,255,192,0,0,0,0,0,1,255,31,240,0,0,0,0,0,7,253,11,252,0,0,0,0,0,31,244,2,255,64,0,0,0,0,127,224,0,191,208,0,0,0,2,255,64,0,47,248,0,0,0,11,253,0,0,11,255,0,0,0,63,244,0,0,1,255,208,0,1,255,255,255,255,255,255,248,0,15,255,31,255,255,255,143,255,128,127,248,31,255,255,255,130,255,224,63,208,0,0,0,0,0,127,192,14,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,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,0,0,63,0,0,15,208,0,0,0,0,63,0,0,15,208,0,0,0,0,63,0,0,15,208,0,0,0,0,63,0,0,15,208,0,0,0,0,63,0,0,15,208,0,0,0,0,63,0,0,15,208,0,0,0,0,63,0,0,31,208,0,0,0,0,63,0,63,255,192,0,0,0,0,63,0,63,255,192,0,0,0,0,63,0,47,254,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0, + // 0x4ee5 以 + 229,78,34,31,23,36,1,253,0,127,0,0,0,0,11,240,0,0,127,0,0,0,0,15,240,0,0,127,0,8,0,0,15,224,0,0,127,0,191,0,0,15,224,0,0,127,0,127,128,0,15,208,0,0,127,0,47,208,0,31,208,0,0,127,0,15,244,0,47,192,0,0,127,0,7,252,0,47,192,0,0,63,0,2,253,0,63,128,0,0,63,64,0,255,0,63,128,0,0,63,64,0,191,64,127,64,0,0,63,64,0,61,0,191,0,0,0,63,64,0,16,0,254,0,0,0,63,64,0,0,1,253,0,0,0,63,64,0,0,2,252,0,0,0,63,64,0,0,3,252,0,0,0,63,64,0,0,11,244,0,0,0,63,128,4,0,15,240,0,0,0,63,128,124,0,47,224,0,0,0,63,139,253,0,127,244,0,0,0,63,255,254,0,255,253,0,0,0,63,255,228,3,255,255,0,0,7,255,254,0,15,252,191,192,0,127,255,224,0,63,240,63,240,0,127,253,0,1,255,208,15,252,0,63,128,0,11,255,64,3,255,0,40,0,0,127,253,0,1,255,128,0,0,11,255,240,0,0,127,208,0,0,31,255,128,0,0,47,224,0,0,7,248,0,0,0,15,64,0,0,1,128,0,0,0,1,0, + // 0x4ef6 件 + 246,78,34,34,50,36,1,253,0,0,144,0,0,21,0,0,0,0,0,253,0,0,191,0,0,0,0,2,252,10,64,191,0,0,0,0,3,248,15,208,191,0,0,0,0,7,240,15,192,191,0,0,0,0,15,240,31,192,191,0,0,0,0,31,208,47,128,191,0,0,0,0,63,192,63,149,191,85,84,0,0,127,64,63,255,255,255,254,0,0,255,0,191,255,255,255,254,0,2,255,0,255,255,255,255,254,0,7,255,1,252,0,191,0,0,0,15,255,3,248,0,191,0,0,0,63,255,7,244,0,191,0,0,0,191,255,11,240,0,191,0,0,0,127,127,0,128,0,191,0,0,0,44,63,0,0,0,191,0,0,0,4,63,0,0,0,191,0,0,0,0,63,11,255,255,255,255,255,208,0,63,11,255,255,255,255,255,208,0,63,11,255,255,255,255,255,208,0,63,1,85,85,191,85,85,64,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,190,0,0,0, + // 0x4efd 份 + 253,78,34,35,59,36,1,252,0,0,144,0,0,0,0,0,0,0,1,252,0,63,255,252,0,0,0,3,252,0,63,255,253,0,0,0,3,244,0,63,255,254,0,0,0,11,240,6,64,0,127,0,0,0,15,208,15,224,0,63,64,0,0,47,192,15,208,0,63,128,0,0,63,128,47,192,0,47,192,0,0,255,0,63,64,0,15,224,0,1,255,0,127,0,0,11,240,0,3,255,0,254,0,0,7,252,0,11,255,2,252,0,0,2,253,0,47,255,3,244,0,0,0,255,64,127,255,15,240,0,0,0,191,208,255,255,63,192,0,0,0,63,224,254,127,63,191,255,255,255,239,192,124,127,14,63,255,255,255,226,0,32,127,0,63,255,255,255,208,0,0,127,0,0,47,128,15,208,0,0,127,0,0,63,64,15,208,0,0,127,0,0,63,0,15,208,0,0,127,0,0,63,0,15,208,0,0,127,0,0,127,0,15,208,0,0,127,0,0,190,0,15,208,0,0,127,0,0,253,0,15,192,0,0,127,0,1,252,0,15,192,0,0,127,0,3,248,0,15,192,0,0,127,0,7,244,0,31,192,0,0,127,0,15,224,0,31,192,0,0,127,0,63,192,0,47,192,0,0,127,0,255,64,0,127,128,0,0,127,7,254,0,63,255,64,0,0,127,7,244,0,63,255,0,0,0,127,1,208,0,47,248,0,0,0,0,0,0,0,0,0,0,0, + // 0x4f11 休 + 17,79,34,34,50,36,1,253,0,0,36,0,0,84,0,0,0,0,0,127,64,0,252,0,0,0,0,0,255,0,0,252,0,0,0,0,0,254,0,0,252,0,0,0,0,2,252,0,0,252,0,0,0,0,7,248,0,0,252,0,0,0,0,15,240,0,0,252,0,0,0,0,31,224,0,0,252,0,0,0,0,63,192,0,0,252,0,0,0,0,255,139,255,255,255,255,255,192,2,255,139,255,255,255,255,255,192,7,255,139,255,255,255,255,255,192,31,255,129,85,95,255,213,85,64,127,255,128,0,15,255,224,0,0,255,239,128,0,47,255,240,0,0,191,47,128,0,63,255,244,0,0,61,47,128,0,127,254,252,0,0,20,47,128,0,254,253,253,0,0,0,47,128,2,252,252,127,0,0,0,47,128,3,248,252,63,128,0,0,47,128,11,240,252,47,192,0,0,47,128,31,208,252,15,240,0,0,47,128,63,192,252,7,248,0,0,47,128,255,64,252,3,253,0,0,47,130,254,0,252,0,255,0,0,47,139,252,0,252,0,191,192,0,47,255,240,0,252,0,63,240,0,47,159,208,0,252,0,15,192,0,47,139,64,0,252,0,3,64,0,47,129,0,0,252,0,0,0,0,47,128,0,0,252,0,0,0,0,47,128,0,0,252,0,0,0,0,47,128,0,0,252,0,0,0,0,31,128,0,0,252,0,0,0, + // 0x4f20 传 + 32,79,34,35,59,36,1,252,0,0,144,0,2,144,0,0,0,0,1,252,0,3,244,0,0,0,0,2,252,0,7,240,0,0,0,0,3,244,0,11,240,0,0,0,0,11,241,255,255,255,255,254,0,0,15,225,255,255,255,255,254,0,0,47,193,255,255,255,255,254,0,0,63,128,0,47,192,0,0,0,0,255,0,0,63,128,0,0,0,1,255,0,0,63,64,0,0,0,3,255,0,0,127,0,0,0,0,15,255,31,255,255,255,255,255,208,47,255,31,255,255,255,255,255,208,191,255,31,255,255,255,255,255,208,255,191,0,2,252,0,0,0,0,189,127,0,3,248,0,0,0,0,56,127,0,3,244,0,0,0,0,16,127,0,7,240,0,0,0,0,0,127,0,11,255,255,255,244,0,0,127,0,15,255,255,255,253,0,0,127,0,31,255,255,255,248,0,0,127,0,0,0,0,47,240,0,0,127,0,0,0,0,127,192,0,0,127,0,0,0,0,255,0,0,0,127,0,0,20,3,252,0,0,0,127,0,0,126,15,244,0,0,0,127,0,0,255,255,208,0,0,0,127,0,0,47,255,64,0,0,0,127,0,0,7,255,0,0,0,0,127,0,0,0,255,208,0,0,0,127,0,0,0,47,248,0,0,0,127,0,0,0,11,253,0,0,0,127,0,0,0,1,248,0,0,0,127,0,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0, + // 0x4f4d 位 + 77,79,34,34,50,36,1,253,0,0,100,0,0,168,0,0,0,0,0,254,0,0,253,0,0,0,0,1,253,0,0,253,0,0,0,0,3,252,0,0,253,0,0,0,0,7,244,0,0,253,0,0,0,0,15,240,0,0,253,0,0,0,0,31,208,0,0,253,0,0,0,0,63,195,255,255,255,255,255,192,0,191,67,255,255,255,255,255,192,1,255,67,255,255,255,255,255,192,3,255,64,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,47,255,64,5,128,0,11,144,0,191,255,64,15,192,0,15,240,0,255,127,64,15,208,0,15,224,0,125,63,64,11,224,0,15,208,0,56,63,64,7,240,0,31,192,0,0,63,64,3,240,0,47,192,0,0,63,64,3,244,0,63,128,0,0,63,64,3,248,0,63,64,0,0,63,64,2,248,0,127,0,0,0,63,64,1,252,0,127,0,0,0,63,64,1,252,0,254,0,0,0,63,64,0,252,0,253,0,0,0,63,64,0,253,1,252,0,0,0,63,64,0,253,2,252,0,0,0,63,64,0,254,3,244,0,0,0,63,64,0,80,3,240,0,0,0,63,64,0,0,7,240,0,0,0,63,75,255,255,255,255,255,224,0,63,75,255,255,255,255,255,224,0,63,75,255,255,255,255,255,224,0,63,64,0,0,0,0,0,0,0,42,0,0,0,0,0,0,0, + // 0x4f4e 低 + 78,79,34,34,50,36,1,253,0,0,144,0,0,0,0,0,0,0,1,252,0,0,0,0,96,0,0,2,252,0,0,0,111,248,0,0,3,244,0,5,191,255,254,0,0,11,240,251,255,255,255,228,0,0,15,224,255,255,255,228,0,0,0,47,192,255,254,95,192,0,0,0,63,128,254,0,15,192,0,0,0,191,0,253,0,15,208,0,0,1,255,0,253,0,15,208,0,0,3,255,0,253,0,15,208,0,0,11,255,0,253,0,15,208,0,0,31,255,0,253,0,15,208,0,0,127,255,0,255,255,255,255,255,208,255,255,0,255,255,255,255,255,208,254,127,0,255,255,255,255,255,208,124,127,0,253,0,7,240,0,0,32,127,0,253,0,7,240,0,0,0,127,0,253,0,3,240,0,0,0,127,0,253,0,3,244,0,0,0,127,0,253,0,3,248,0,0,0,127,0,253,0,2,252,0,0,0,127,0,253,0,1,252,0,0,0,127,0,253,1,172,253,0,0,0,127,0,255,255,252,254,0,0,0,127,15,255,255,252,191,2,208,0,127,15,255,254,144,63,66,240,0,127,11,249,0,0,63,194,240,0,127,0,0,0,0,31,227,240,0,127,0,0,0,0,15,255,224,0,127,3,255,255,255,227,255,208,0,127,3,255,255,255,225,255,128,0,127,3,255,255,255,224,21,0,0,106,0,0,0,0,0,0,0, + // 0x4f53 体 + 83,79,34,34,50,36,1,253,0,1,144,0,1,248,0,0,0,0,3,248,0,1,252,0,0,0,0,3,244,0,1,252,0,0,0,0,11,240,0,1,252,0,0,0,0,15,224,0,1,252,0,0,0,0,31,192,0,1,252,0,0,0,0,63,128,0,1,252,0,0,0,0,127,15,255,255,255,255,255,192,0,255,15,255,255,255,255,255,192,2,255,15,255,255,255,255,255,192,3,255,0,0,31,255,192,0,0,15,255,0,0,47,255,208,0,0,47,255,0,0,63,255,240,0,0,127,255,0,0,127,255,240,0,0,255,191,0,0,253,253,248,0,0,62,127,0,1,249,252,252,0,0,44,127,0,3,241,252,190,0,0,0,127,0,11,241,252,63,0,0,0,127,0,15,209,252,47,128,0,0,127,0,47,129,252,15,208,0,0,127,0,127,1,252,11,240,0,0,127,0,254,1,252,3,252,0,0,127,3,252,1,252,1,254,0,0,127,15,244,1,252,0,255,128,0,127,47,235,255,255,255,127,208,0,127,127,203,255,255,255,31,224,0,127,31,11,255,255,255,11,128,0,127,8,0,1,252,0,2,0,0,127,0,0,1,252,0,0,0,0,127,0,0,1,252,0,0,0,0,127,0,0,1,252,0,0,0,0,127,0,0,1,252,0,0,0,0,127,0,0,1,252,0,0,0,0,126,0,0,0,168,0,0,0, + // 0x4f59 余 + 89,79,34,35,59,36,1,252,0,0,0,7,248,0,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,63,255,128,0,0,0,0,0,0,255,191,208,0,0,0,0,0,3,255,15,248,0,0,0,0,0,15,252,3,254,0,0,0,0,0,63,240,0,255,192,0,0,0,1,255,192,0,63,244,0,0,0,11,254,0,0,11,255,0,0,0,127,244,0,0,1,255,208,0,3,255,208,0,0,0,63,254,0,47,255,255,255,255,255,251,255,208,127,245,255,255,255,255,241,255,192,31,65,255,255,255,255,240,31,64,4,0,0,3,248,0,0,1,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,7,255,255,255,255,255,255,254,0,7,255,255,255,255,255,255,254,0,7,255,255,255,255,255,255,254,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,144,3,248,0,208,0,0,0,3,252,3,248,7,248,0,0,0,11,244,3,248,7,254,0,0,0,47,224,3,248,0,255,192,0,0,191,192,3,248,0,63,240,0,2,255,0,3,248,0,15,252,0,31,252,0,3,248,0,3,255,0,63,240,0,3,248,0,0,255,128,31,128,15,255,244,0,0,62,0,5,0,7,255,240,0,0,20,0,0,0,3,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x4f5c 作 + 92,79,34,34,50,36,1,253,0,0,100,0,4,0,0,0,0,0,0,191,0,47,128,0,0,0,0,0,253,0,63,64,0,0,0,0,2,252,0,127,0,0,0,0,0,3,248,0,254,0,0,0,0,0,11,240,1,253,0,0,0,0,0,15,224,3,255,255,255,255,224,0,47,192,7,255,255,255,255,224,0,127,128,15,255,255,255,255,224,0,255,64,31,210,252,0,0,0,2,255,64,63,193,252,0,0,0,7,255,64,191,1,252,0,0,0,15,255,65,254,1,252,0,0,0,63,255,71,252,1,252,0,0,0,191,255,75,244,1,255,255,255,128,63,63,66,208,1,255,255,255,128,29,63,64,64,1,255,255,255,128,4,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,255,255,255,192,0,63,64,0,1,255,255,255,192,0,63,64,0,1,255,255,255,192,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0, + // 0x4f7f 使 + 127,79,34,35,59,36,1,252,0,0,116,0,0,189,0,0,0,0,0,254,0,0,190,0,0,0,0,1,252,0,0,190,0,0,0,0,3,252,0,0,190,0,0,0,0,7,251,255,255,255,255,255,224,0,15,243,255,255,255,255,255,224,0,31,211,255,255,255,255,255,224,0,63,192,0,0,190,0,0,0,0,191,64,0,0,190,0,0,0,1,255,64,0,0,190,0,0,0,3,255,64,255,255,255,255,255,64,15,255,65,255,255,255,255,255,64,47,255,65,255,255,255,255,255,64,191,255,65,252,0,190,0,47,64,255,127,65,252,0,190,0,47,64,126,63,65,252,0,190,0,47,64,60,63,65,252,0,190,0,47,64,16,63,65,252,0,190,0,47,64,0,63,65,255,255,255,255,255,64,0,63,65,255,255,255,255,255,64,0,63,64,255,255,255,255,255,64,0,63,64,20,0,252,0,0,0,0,63,64,253,1,252,0,0,0,0,63,64,127,2,252,0,0,0,0,63,64,63,195,248,0,0,0,0,63,64,15,251,240,0,0,0,0,63,64,3,255,224,0,0,0,0,63,64,0,255,224,0,0,0,0,63,64,1,255,253,0,0,0,0,63,64,11,255,255,244,0,0,0,63,65,255,244,191,255,233,0,0,63,95,255,208,11,255,255,224,0,63,75,253,0,0,111,255,192,0,63,67,144,0,0,0,111,64,0,0,0,0,0,0,0,0,0, + // 0x4f9b 供 + 155,79,34,34,50,36,1,253,0,0,144,1,164,0,42,0,0,0,0,253,1,252,0,63,0,0,0,2,252,1,252,0,63,0,0,0,3,248,1,252,0,63,0,0,0,7,240,1,252,0,63,0,0,0,15,224,1,252,0,63,0,0,0,31,192,1,252,0,63,0,0,0,63,128,2,252,0,63,64,0,0,191,3,255,255,255,255,255,192,1,255,3,255,255,255,255,255,192,3,255,3,255,255,255,255,255,192,11,255,0,1,252,0,63,0,0,47,255,0,1,252,0,63,0,0,127,255,0,1,252,0,63,0,0,255,191,0,1,252,0,63,0,0,126,127,0,1,252,0,63,0,0,56,127,0,1,252,0,63,0,0,16,127,0,1,252,0,63,0,0,0,127,0,1,252,0,63,0,0,0,127,11,255,255,255,255,255,224,0,127,11,255,255,255,255,255,224,0,127,11,255,255,255,255,255,224,0,127,1,85,85,85,85,85,64,0,127,0,0,0,0,0,0,0,0,127,0,0,160,0,9,0,0,0,127,0,2,253,0,127,0,0,0,127,0,3,248,0,63,192,0,0,127,0,15,240,0,31,240,0,0,127,0,63,208,0,7,248,0,0,127,0,191,128,0,2,253,0,0,127,2,255,0,0,0,255,0,0,127,15,252,0,0,0,63,192,0,127,3,240,0,0,0,31,128,0,127,0,128,0,0,0,8,0, + // 0x4fb5 侵 + 181,79,34,35,59,36,1,252,0,0,144,0,0,0,0,0,0,0,1,252,42,170,170,170,164,0,0,3,252,127,255,255,255,252,0,0,3,244,127,255,255,255,252,0,0,11,240,0,0,0,1,252,0,0,15,224,0,0,0,1,252,0,0,47,192,21,85,85,86,252,0,0,63,128,47,255,255,255,252,0,0,255,0,47,255,255,255,252,0,2,255,0,0,0,0,1,252,0,3,255,0,0,0,0,1,252,0,15,255,0,255,255,255,255,252,0,63,255,0,255,255,255,255,252,0,191,255,0,106,170,170,170,168,0,255,191,0,0,0,0,0,0,0,189,127,6,170,170,170,170,170,128,52,127,11,255,255,255,255,255,192,0,127,11,255,255,255,255,255,192,0,127,11,208,0,0,0,15,192,0,127,11,208,0,0,0,15,192,0,127,11,234,170,170,170,159,192,0,127,11,255,255,255,255,255,192,0,127,0,63,255,255,255,240,0,0,127,0,2,240,0,31,208,0,0,127,0,3,252,0,127,192,0,0,127,0,1,254,1,255,0,0,0,127,0,0,127,203,253,0,0,0,127,0,0,31,255,240,0,0,0,127,0,0,11,255,208,0,0,0,127,0,0,191,255,253,0,0,0,127,1,111,255,255,255,249,64,0,127,15,255,254,1,255,255,224,0,127,3,255,208,0,11,255,192,0,126,3,228,0,0,0,27,0,0,0,0,0,0,0,0,0,0, + // 0x4fdd 保 + 221,79,34,35,59,36,1,252,0,0,80,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,253,63,255,255,255,253,0,0,2,252,63,255,255,255,253,0,0,3,244,63,255,255,255,253,0,0,11,240,63,0,0,0,253,0,0,15,208,63,0,0,0,253,0,0,47,192,63,0,0,0,253,0,0,127,128,63,0,0,0,253,0,0,255,64,63,0,0,0,253,0,2,255,64,63,0,0,0,253,0,7,255,64,63,255,255,255,253,0,31,255,64,63,255,255,255,253,0,63,255,64,63,255,255,255,253,0,255,191,64,0,0,254,0,0,0,127,63,64,0,0,254,0,0,0,60,63,64,0,0,254,0,0,0,16,63,64,0,0,254,0,0,0,0,63,75,255,255,255,255,255,208,0,63,75,255,255,255,255,255,208,0,63,75,255,255,255,255,255,208,0,63,64,0,15,255,224,0,0,0,63,64,0,47,255,244,0,0,0,63,64,0,127,255,252,0,0,0,63,64,1,254,254,191,0,0,0,63,64,7,252,254,63,192,0,0,63,64,31,240,254,15,240,0,0,63,64,127,192,254,7,252,0,0,63,66,255,64,254,2,255,64,0,63,95,253,0,254,0,191,224,0,63,79,240,0,254,0,47,224,0,63,71,128,0,254,0,7,128,0,63,64,0,0,254,0,0,0,0,63,64,0,0,254,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x4fe1 信 + 225,79,34,34,50,36,1,253,0,0,184,0,0,0,0,0,0,0,0,254,10,170,170,170,160,0,0,1,252,15,255,255,255,244,0,0,3,248,15,255,255,255,244,0,0,7,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,63,199,255,255,255,255,255,224,0,191,71,255,255,255,255,255,224,1,255,71,255,255,255,255,255,208,3,255,64,0,0,0,0,0,0,11,255,64,0,0,0,0,0,0,47,255,64,47,255,255,255,252,0,191,255,64,47,255,255,255,252,0,255,127,64,26,170,170,170,168,0,125,63,64,0,0,0,0,0,0,56,63,64,0,0,0,0,0,0,0,63,64,47,255,255,255,252,0,0,63,64,47,255,255,255,252,0,0,63,64,26,170,170,170,168,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,42,170,170,170,168,0,0,63,64,63,255,255,255,253,0,0,63,64,63,255,255,255,253,0,0,63,64,63,0,0,0,253,0,0,63,64,63,0,0,0,253,0,0,63,64,63,0,0,0,253,0,0,63,64,63,0,0,0,253,0,0,63,64,63,170,170,170,253,0,0,63,64,63,255,255,255,253,0,0,63,64,63,255,255,255,253,0,0,63,64,63,0,0,0,253,0,0,42,0,63,0,0,0,168,0, + // 0x503c 值 + 60,80,34,34,50,36,1,253,0,0,144,0,0,170,0,0,0,0,1,252,0,0,254,0,0,0,0,2,252,0,0,253,0,0,0,0,3,244,0,0,253,0,0,0,0,7,243,255,255,255,255,255,64,0,15,227,255,255,255,255,255,64,0,47,195,255,255,255,255,255,64,0,63,128,0,2,244,0,0,0,0,191,0,0,3,240,0,0,0,1,254,0,42,171,250,170,160,0,3,254,0,63,255,255,255,244,0,11,254,0,63,255,255,255,244,0,31,254,0,62,0,0,2,244,0,63,254,0,62,0,0,2,244,0,191,254,0,62,0,0,2,244,0,127,126,0,63,255,255,255,244,0,44,126,0,63,255,255,255,244,0,20,126,0,63,85,85,87,244,0,0,126,0,62,0,0,2,244,0,0,126,0,62,0,0,2,244,0,0,126,0,63,255,255,255,244,0,0,126,0,63,255,255,255,244,0,0,126,0,63,85,85,87,244,0,0,126,0,62,0,0,2,244,0,0,126,0,62,0,0,2,244,0,0,126,0,63,255,255,255,244,0,0,126,0,63,255,255,255,244,0,0,126,0,63,85,85,87,244,0,0,126,0,62,0,0,2,244,0,0,126,0,62,0,0,2,244,0,0,126,31,255,255,255,255,255,208,0,126,47,255,255,255,255,255,208,0,126,47,255,255,255,255,255,208,0,126,0,0,0,0,0,0,0, + // 0x503e 倾 + 62,80,34,35,59,36,1,252,0,10,64,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,31,192,0,63,255,255,255,208,0,47,128,0,63,255,255,255,208,0,63,15,192,63,255,255,255,208,0,127,15,192,0,2,252,0,0,0,253,15,192,0,3,244,0,0,1,252,15,192,0,3,240,0,0,3,252,15,192,11,255,255,255,0,7,252,15,192,11,255,255,255,0,15,252,15,192,11,255,255,255,0,47,252,15,255,203,208,0,63,0,63,252,15,255,203,208,80,63,0,255,252,15,255,203,209,244,63,0,253,252,15,192,11,209,244,63,0,188,252,15,192,11,209,244,63,0,48,252,15,192,11,209,244,63,0,16,252,15,192,11,209,244,63,0,0,252,15,192,11,209,244,63,0,0,252,15,192,11,209,244,63,0,0,252,15,192,11,209,244,63,0,0,252,15,193,139,209,240,63,0,0,252,15,223,203,210,240,63,0,0,252,15,255,203,210,240,63,0,0,252,31,255,11,211,240,63,0,0,252,63,244,6,135,224,21,0,0,252,31,128,0,15,213,0,0,0,252,12,0,0,31,207,128,0,0,252,0,0,0,127,95,240,0,0,252,0,0,1,254,7,253,0,0,252,0,0,11,252,0,255,128,0,252,0,0,127,224,0,47,208,0,252,0,0,191,64,0,11,192,0,252,0,0,56,0,0,2,0,0,0,0,0,0,0,0,0,0, + // 0x504f 偏 + 79,80,34,34,50,36,1,253,0,2,64,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,11,231,255,255,255,255,255,208,0,15,215,255,255,255,255,255,208,0,31,199,255,255,255,255,255,208,0,63,128,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,191,0,255,255,255,255,255,0,0,253,0,255,255,255,255,255,0,3,253,0,254,170,170,170,191,0,7,253,0,252,0,0,0,127,0,15,253,0,252,0,0,0,127,0,47,253,0,252,0,0,0,127,0,127,253,0,255,255,255,255,255,0,255,253,0,255,255,255,255,255,0,254,189,0,254,170,170,170,170,0,124,189,0,252,0,0,0,0,0,48,189,0,252,0,0,0,0,0,0,189,1,255,255,255,255,255,128,0,189,1,255,255,255,255,255,128,0,189,2,255,235,250,254,175,128,0,189,2,255,194,240,124,31,128,0,189,3,255,194,240,124,31,128,0,189,3,255,194,240,124,31,128,0,189,7,255,235,250,254,175,128,0,189,11,239,255,255,255,255,128,0,189,15,223,255,255,255,255,128,0,189,31,207,194,240,124,31,128,0,189,63,143,194,240,124,31,128,0,189,127,15,194,240,124,31,128,0,189,254,15,194,240,124,31,128,0,189,60,15,194,240,125,255,128,0,189,4,15,194,240,124,255,64,0,189,0,15,129,160,104,253,0, + // 0x505c 停 + 92,80,34,34,50,36,1,253,0,0,144,0,0,253,0,0,0,0,1,252,0,0,253,0,0,0,0,3,252,0,0,253,0,0,0,0,3,251,255,255,255,255,255,208,0,11,247,255,255,255,255,255,208,0,15,215,255,255,255,255,255,208,0,63,192,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,255,0,63,255,255,255,248,0,2,255,0,63,255,255,255,248,0,7,255,0,63,85,85,86,248,0,15,255,0,63,64,0,2,248,0,63,255,0,63,64,0,2,248,0,255,255,0,63,255,255,255,248,0,255,127,0,63,255,255,255,248,0,188,127,0,21,85,85,85,80,0,52,127,0,0,0,0,0,0,0,16,127,10,170,170,170,170,170,144,0,127,15,255,255,255,255,255,224,0,127,15,255,255,255,255,255,224,0,127,15,192,0,0,0,7,224,0,127,15,192,0,0,0,7,224,0,127,15,198,170,170,170,151,224,0,127,15,203,255,255,255,215,224,0,127,0,11,255,255,255,208,0,0,127,0,0,0,253,0,0,0,0,127,0,0,0,253,0,0,0,0,127,0,0,0,253,0,0,0,0,127,0,0,0,253,0,0,0,0,127,0,0,0,253,0,0,0,0,127,0,0,0,253,0,0,0,0,127,0,3,255,253,0,0,0,0,127,0,1,255,252,0,0,0,0,126,0,0,255,224,0,0,0, + // 0x50a8 储 + 168,80,34,34,50,36,1,253,0,15,64,0,0,47,64,0,0,0,15,192,0,0,63,64,14,64,0,31,130,0,0,63,64,31,192,0,47,95,192,0,63,64,63,64,0,63,15,224,63,255,255,127,0,0,126,3,248,63,255,255,254,0,0,253,1,253,63,255,255,252,0,0,252,0,189,0,63,67,248,0,2,248,0,48,0,63,75,240,0,3,248,0,0,0,63,79,208,0,11,248,0,0,0,63,127,192,0,15,248,0,0,255,255,255,255,208,47,248,255,240,255,255,255,255,208,127,248,255,240,255,255,255,255,208,255,248,255,240,0,31,240,0,0,189,248,2,240,0,127,192,0,0,56,248,2,240,1,255,64,0,0,32,248,2,240,11,253,0,0,0,0,248,2,240,63,255,255,255,0,0,248,2,241,255,255,255,255,0,0,248,2,242,255,250,170,191,0,0,248,2,240,255,240,0,63,0,0,248,2,240,19,240,0,63,0,0,248,2,240,3,249,85,127,0,0,248,2,240,3,255,255,255,0,0,248,2,240,3,255,255,255,0,0,248,2,242,227,240,0,63,0,0,248,3,255,243,240,0,63,0,0,248,3,255,211,240,0,63,0,0,248,15,254,3,250,170,191,0,0,248,11,244,3,255,255,255,0,0,248,3,128,3,255,255,255,0,0,248,0,0,3,240,0,63,0,0,248,0,0,2,240,0,42,0, + // 0x50cf 像 + 207,80,34,34,50,36,1,253,0,2,64,1,164,0,0,0,0,0,7,240,3,248,0,0,0,0,0,11,240,11,249,85,144,0,0,0,15,208,31,255,255,248,0,0,0,31,192,63,255,255,244,0,0,0,63,128,255,0,11,240,0,0,0,63,66,253,0,31,208,0,0,0,191,11,253,85,127,213,85,0,0,254,63,255,255,255,255,255,0,3,253,127,255,255,255,255,255,0,7,253,11,240,0,252,0,63,0,15,253,3,240,0,252,0,63,0,47,253,3,240,0,252,0,63,0,191,253,3,255,255,255,255,255,0,255,253,3,255,255,255,255,255,0,188,189,1,85,191,219,229,85,0,120,189,0,2,255,7,224,1,0,32,189,0,111,255,3,240,15,64,0,189,11,255,239,194,244,127,192,0,189,47,253,15,225,249,255,0,0,189,11,144,47,244,255,252,0,0,189,0,1,255,252,255,224,0,0,189,0,31,248,253,127,64,0,0,189,1,255,192,190,63,64,0,0,189,31,253,2,255,47,192,0,0,189,15,224,11,255,15,224,0,0,189,1,0,127,255,75,240,0,0,189,0,2,255,63,67,252,0,0,189,0,47,248,63,64,255,0,0,189,2,255,208,63,0,191,208,0,189,63,253,0,191,0,47,192,0,189,47,225,255,253,0,11,64,0,189,10,0,255,248,0,1,0,0,189,0,0,255,208,0,0,0, + // 0x5145 充 + 69,81,33,35,59,36,2,252,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,191,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,254,0,0,0,15,240,0,20,0,0,0,0,0,31,208,0,124,0,0,0,0,0,63,192,1,255,64,0,0,0,0,63,64,0,127,208,0,0,0,0,191,0,0,31,244,0,0,0,0,253,0,0,7,253,0,0,0,2,254,170,255,255,255,64,0,31,255,255,255,255,255,255,208,0,31,255,255,255,255,255,255,240,0,31,255,255,234,149,80,7,252,0,9,80,0,0,0,0,2,248,0,0,0,31,192,3,240,0,208,0,0,0,47,192,3,240,0,0,0,0,0,63,192,3,240,0,0,0,0,0,63,128,3,240,0,0,0,0,0,63,128,3,240,0,0,0,0,0,127,64,3,240,0,0,0,0,0,191,0,3,240,0,16,0,0,0,255,0,3,240,0,46,0,0,2,253,0,3,240,0,47,64,0,7,252,0,3,240,0,47,64,0,31,244,0,3,240,0,47,64,0,191,224,0,3,240,0,63,0,27,255,128,0,3,248,0,127,0,255,253,0,0,3,255,255,255,0,191,224,0,0,1,255,255,253,0,62,0,0,0,0,127,255,244,0,0,0,0,0,0,0,0,0,0, + // 0x5148 先 + 72,81,32,35,24,36,2,252,0,0,0,11,224,0,0,0,0,11,144,11,224,0,0,0,0,15,224,11,224,0,0,0,0,15,208,11,224,0,0,0,0,31,192,11,224,0,0,0,0,63,192,11,240,0,0,0,0,63,255,255,255,255,255,192,0,191,255,255,255,255,255,192,0,255,255,255,255,255,255,192,1,252,0,11,224,0,0,0,3,248,0,11,224,0,0,0,11,240,0,11,224,0,0,0,15,224,0,11,224,0,0,0,3,192,0,11,224,0,0,0,0,0,0,11,224,0,0,0,0,0,0,11,240,0,0,0,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,0,0,63,128,3,240,0,0,0,0,63,64,3,240,0,0,0,0,63,64,3,240,0,0,0,0,127,0,3,240,0,0,0,0,191,0,3,240,0,0,0,0,254,0,3,240,0,0,0,2,252,0,3,240,0,52,0,7,252,0,3,240,0,63,0,15,240,0,3,240,0,63,0,127,224,0,3,240,0,63,2,255,192,0,3,244,0,191,111,254,0,0,3,255,255,254,255,248,0,0,2,255,255,252,63,192,0,0,0,191,255,244,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5149 光 + 73,81,34,35,59,36,1,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,1,0,0,0,109,0,3,248,0,7,224,0,0,255,0,3,248,0,15,240,0,0,127,64,3,248,0,15,224,0,0,63,192,3,248,0,47,192,0,0,31,208,3,248,0,63,128,0,0,15,240,3,248,0,127,0,0,0,7,244,3,248,0,254,0,0,0,3,248,3,248,2,252,0,0,0,2,252,3,248,3,248,0,0,0,1,208,3,248,0,96,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,15,240,0,252,0,0,0,0,0,15,224,0,252,0,0,0,0,0,15,208,0,252,0,0,0,0,0,15,208,0,252,0,0,0,0,0,31,192,0,252,0,0,0,0,0,47,192,0,252,0,0,0,0,0,63,192,0,252,0,0,0,0,0,127,64,0,252,0,0,0,0,0,255,0,0,252,0,10,0,0,2,254,0,0,252,0,11,208,0,7,252,0,0,252,0,11,208,0,31,244,0,0,252,0,15,208,0,191,224,0,0,252,0,15,192,27,255,128,0,0,253,0,31,192,127,254,0,0,0,255,255,255,128,47,240,0,0,0,191,255,255,64,14,0,0,0,0,31,255,253,0,0,0,0,0,0,0,0,0,0, + // 0x5165 入 + 101,81,34,32,32,36,1,253,0,2,255,255,252,0,0,0,0,0,2,255,255,252,0,0,0,0,0,2,255,255,252,0,0,0,0,0,1,85,85,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,5,255,0,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,47,255,128,0,0,0,0,0,0,63,255,192,0,0,0,0,0,0,63,223,192,0,0,0,0,0,0,127,79,224,0,0,0,0,0,0,255,11,240,0,0,0,0,0,1,254,7,248,0,0,0,0,0,3,253,3,252,0,0,0,0,0,7,252,2,254,0,0,0,0,0,15,244,0,255,0,0,0,0,0,31,240,0,191,192,0,0,0,0,63,192,0,63,224,0,0,0,0,255,128,0,31,244,0,0,0,2,255,0,0,11,252,0,0,0,11,253,0,0,3,255,0,0,0,47,244,0,0,0,255,208,0,0,191,224,0,0,0,127,244,0,3,255,128,0,0,0,31,254,0,47,254,0,0,0,0,7,255,208,127,248,0,0,0,0,0,255,192,15,208,0,0,0,0,0,47,0,2,0,0,0,0,0,0,5,0, + // 0x5168 全 + 104,81,34,33,41,36,1,254,0,0,0,7,252,0,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,47,255,64,0,0,0,0,0,0,127,191,192,0,0,0,0,0,1,255,15,240,0,0,0,0,0,7,252,7,252,0,0,0,0,0,15,240,1,255,0,0,0,0,0,63,208,0,127,192,0,0,0,1,255,64,0,31,244,0,0,0,7,252,0,0,3,254,0,0,0,47,240,0,0,0,255,192,0,0,255,192,0,0,0,47,244,0,11,254,0,0,0,0,7,255,0,63,255,255,255,255,255,255,255,208,127,235,255,255,255,255,254,191,192,31,71,255,255,255,255,254,31,64,8,0,0,3,248,0,0,1,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,15,255,255,255,255,255,255,255,64,15,255,255,255,255,255,255,255,64,15,255,255,255,255,255,255,255,64, + // 0x5171 共 + 113,81,32,34,16,36,2,253,0,0,168,0,0,42,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,1,253,0,0,191,64,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,85,85,254,85,85,191,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,61,0,0,120,0,0,0,0,255,128,3,255,0,0,0,3,255,0,0,255,208,0,0,15,252,0,0,47,248,0,0,127,240,0,0,11,255,0,2,255,192,0,0,1,255,192,31,254,0,0,0,0,127,240,127,244,0,0,0,0,15,253,47,208,0,0,0,0,3,248,10,0,0,0,0,0,0,144, + // 0x5173 关 + 115,81,26,35,245,36,5,252,0,4,0,0,3,128,0,0,188,0,0,11,244,0,0,255,0,0,15,240,0,0,63,128,0,31,208,0,0,47,192,0,63,128,0,0,15,240,0,191,0,0,0,7,240,0,253,0,0,0,3,64,0,24,0,0,11,255,255,255,255,254,0,11,255,255,255,255,254,0,11,255,255,255,255,254,0,0,0,3,248,0,0,0,0,0,3,244,0,0,0,0,0,3,244,0,0,0,0,0,3,244,0,0,0,0,0,3,244,0,0,0,0,0,3,244,0,0,0,63,255,255,255,255,255,192,63,255,255,255,255,255,192,63,255,255,255,255,255,192,0,0,7,254,0,0,0,0,0,11,255,0,0,0,0,0,15,255,64,0,0,0,0,31,255,192,0,0,0,0,63,207,208,0,0,0,0,191,75,244,0,0,0,1,255,3,252,0,0,0,7,252,1,255,0,0,0,47,244,0,191,208,0,1,255,208,0,63,248,0,31,255,64,0,15,255,208,191,252,0,0,2,255,208,63,208,0,0,0,127,128,13,0,0,0,0,6,0,0,0,0,0,0,0,0, + // 0x5177 具 + 119,81,32,33,8,36,2,253,0,26,170,170,170,170,168,0,0,47,255,255,255,255,252,0,0,47,255,255,255,255,252,0,0,47,128,0,0,1,252,0,0,47,128,0,0,1,252,0,0,47,128,0,0,1,252,0,0,47,255,255,255,255,252,0,0,47,255,255,255,255,252,0,0,47,149,85,85,86,252,0,0,47,128,0,0,1,252,0,0,47,128,0,0,1,252,0,0,47,149,85,85,86,252,0,0,47,255,255,255,255,252,0,0,47,255,255,255,255,252,0,0,47,128,0,0,1,252,0,0,47,128,0,0,1,252,0,0,47,128,0,0,1,252,0,0,47,255,255,255,255,252,0,0,47,255,255,255,255,252,0,0,26,170,170,170,170,168,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,4,0,0,0,0,0,0,0,63,0,0,184,0,0,0,2,255,192,3,255,208,0,0,127,255,64,1,255,254,0,11,255,248,0,0,31,255,228,255,255,64,0,0,0,191,254,63,228,0,0,0,0,11,252,13,0,0,0,0,0,0,160, + // 0x5197 冗 + 151,81,33,32,32,36,2,253,21,85,85,85,85,85,85,84,0,63,255,255,255,255,255,255,252,0,63,255,255,255,255,255,255,252,0,63,255,255,255,255,255,255,252,0,63,64,0,0,0,0,1,252,0,63,64,0,0,0,0,1,252,0,63,64,0,0,0,0,1,252,0,63,64,0,0,0,0,1,252,0,63,64,0,0,0,0,1,252,0,63,64,0,0,0,0,1,252,0,0,0,255,255,255,255,0,0,0,0,0,255,255,255,255,0,0,0,0,0,255,255,255,255,0,0,0,0,0,254,0,0,191,0,0,0,0,0,254,0,0,191,0,0,0,0,0,254,0,0,191,0,0,0,0,0,254,0,0,191,0,0,0,0,0,254,0,0,191,0,0,0,0,0,253,0,0,191,0,0,0,0,0,253,0,0,191,0,0,0,0,1,252,0,0,191,0,0,0,0,2,252,0,0,191,0,0,0,0,3,252,0,0,191,0,40,0,0,11,244,0,0,191,0,47,64,0,15,240,0,0,191,0,47,64,0,63,208,0,0,191,0,63,64,1,255,192,0,0,191,0,63,64,11,255,0,0,0,191,0,127,0,191,252,0,0,0,191,255,255,0,255,224,0,0,0,63,255,254,0,127,64,0,0,0,31,255,248,0,36,0,0,0,0,0,85,64,0, + // 0x51b7 冷 + 183,81,34,34,50,36,1,253,0,0,0,0,7,244,0,0,0,0,0,0,0,15,252,0,0,0,7,0,0,0,47,255,0,0,0,31,208,0,0,63,255,128,0,0,63,244,0,0,255,47,208,0,0,15,254,0,3,253,15,244,0,0,2,255,128,11,248,3,253,0,0,0,191,192,47,240,1,255,64,0,0,47,64,191,192,0,127,224,0,0,9,2,255,0,0,31,248,0,0,0,11,252,0,0,7,255,64,0,0,63,255,255,255,253,255,224,0,1,255,203,255,255,252,63,208,0,1,255,11,255,255,252,11,128,0,0,184,0,0,0,0,1,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,3,3,255,255,255,255,252,0,0,15,211,255,255,255,255,252,0,0,31,227,255,255,255,255,252,0,0,63,192,0,63,128,1,252,0,0,191,64,0,63,128,1,252,0,0,255,0,0,63,128,1,252,0,3,252,0,0,63,128,1,252,0,11,248,0,0,63,128,1,252,0,31,240,0,0,63,128,1,252,0,63,208,0,0,63,130,255,252,0,127,128,0,0,63,129,255,248,0,31,0,0,0,63,128,255,224,0,5,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,47,64,0,0,0, + // 0x51c6 准 + 198,81,34,34,50,36,1,253,0,0,0,0,228,0,100,0,0,0,0,0,2,252,0,191,0,0,2,0,0,3,248,0,254,0,0,15,208,0,7,240,0,252,0,0,31,248,0,15,224,1,252,0,0,7,255,0,31,208,3,244,0,0,0,255,192,63,192,3,240,0,0,0,47,224,127,255,255,255,255,128,0,11,192,255,255,255,255,255,128,0,2,2,255,255,255,255,255,128,0,0,7,255,64,15,208,0,0,0,0,15,255,64,15,192,0,0,0,0,63,255,64,15,192,0,0,0,0,255,255,64,15,192,0,0,0,0,127,63,255,255,255,255,0,0,0,28,63,255,255,255,255,0,0,0,0,63,255,255,255,255,0,0,0,0,63,64,15,192,0,0,0,1,0,63,64,15,192,0,0,0,11,64,63,64,15,192,0,0,0,15,192,63,64,15,192,0,0,0,47,192,63,64,15,192,0,0,0,127,128,63,255,255,255,255,0,0,255,0,63,255,255,255,255,0,2,253,0,63,255,255,255,255,0,3,252,0,63,64,15,192,0,0,15,240,0,63,64,15,192,0,0,47,224,0,63,64,15,192,0,0,127,192,0,63,64,15,192,0,0,63,0,0,63,255,255,255,255,224,10,0,0,63,255,255,255,255,224,0,0,0,63,255,255,255,255,224,0,0,0,63,64,0,0,0,0,0,0,0,63,0,0,0,0,0, + // 0x51fa 出 + 250,81,28,35,245,36,4,252,0,0,0,169,0,0,0,0,0,0,253,0,0,0,0,0,0,253,0,0,0,26,64,0,253,0,1,164,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,255,255,255,255,255,248,47,255,255,255,255,255,248,47,255,255,255,255,255,248,0,0,0,254,0,0,0,0,0,0,253,0,0,0,84,0,0,253,0,0,21,253,0,0,253,0,0,127,253,0,0,253,0,0,127,253,0,0,253,0,0,127,253,0,0,253,0,0,127,253,0,0,253,0,0,127,253,0,0,253,0,0,127,253,0,0,253,0,0,127,253,0,0,253,0,0,127,253,0,0,253,0,0,127,254,85,85,254,85,85,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,253,0,0,0,0,0,127,253,0,0,0,0,0,127,0,0,0,0,0,0,0, + // 0x51fb 击 + 251,81,32,34,16,36,2,253,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,1,85,85,91,245,85,85,64,3,255,255,255,255,255,255,208,3,255,255,255,255,255,255,208,3,255,255,255,255,255,255,208,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,21,85,85,91,245,85,85,84,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,3,252,0,11,240,0,47,192,3,252,0,11,240,0,47,192,3,252,0,11,240,0,47,192,3,252,0,11,240,0,47,192,3,252,0,11,240,0,47,192,3,252,0,11,240,0,47,192,3,252,0,11,240,0,47,192,3,252,0,11,240,0,47,192,3,253,85,91,245,85,127,192,3,255,255,255,255,255,255,192,3,255,255,255,255,255,255,192,3,255,255,255,255,255,255,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192, + // 0x5206 分 + 6,82,34,34,50,36,1,252,0,0,15,144,0,47,0,0,0,0,0,31,224,0,191,64,0,0,0,0,63,192,0,63,192,0,0,0,0,127,192,0,31,224,0,0,0,0,255,64,0,15,244,0,0,0,2,254,0,0,7,252,0,0,0,7,252,0,0,2,255,0,0,0,15,244,0,0,0,255,128,0,0,63,240,0,0,0,63,224,0,0,255,192,0,0,0,47,244,0,3,255,64,0,0,0,11,253,0,15,253,0,0,0,0,3,255,128,127,253,85,85,85,85,85,255,224,255,223,255,255,255,255,255,127,208,63,79,255,255,255,255,255,15,64,13,15,255,255,255,255,255,1,0,0,0,0,127,0,0,127,0,0,0,0,0,191,0,0,127,0,0,0,0,0,255,0,0,127,0,0,0,0,0,254,0,0,191,0,0,0,0,0,253,0,0,191,0,0,0,0,2,252,0,0,191,0,0,0,0,3,252,0,0,191,0,0,0,0,7,248,0,0,254,0,0,0,0,15,240,0,0,254,0,0,0,0,63,224,0,0,254,0,0,0,0,191,192,0,0,253,0,0,0,3,255,64,0,1,253,0,0,0,31,253,0,0,2,252,0,0,1,255,244,0,21,23,252,0,0,15,255,208,0,63,255,248,0,0,7,254,0,0,63,255,240,0,0,2,224,0,0,47,255,128,0,0,0,0,0,0,0,0,0,0,0, + // 0x5207 切 + 7,82,33,33,41,36,1,253,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,47,255,255,255,255,192,0,190,0,47,255,255,255,255,192,0,190,0,47,255,255,255,255,192,0,190,0,0,3,248,0,47,192,0,190,0,0,2,248,0,47,128,0,190,0,24,3,248,0,47,128,0,190,27,253,3,248,0,47,128,0,255,255,254,3,244,0,63,128,127,255,255,253,3,244,0,63,128,191,255,249,0,3,244,0,63,128,191,254,0,0,3,244,0,63,128,100,190,0,0,3,244,0,63,128,0,190,0,0,3,240,0,63,64,0,190,0,0,7,240,0,63,64,0,190,0,0,7,240,0,63,64,0,190,0,0,11,240,0,63,64,0,190,0,224,15,224,0,63,64,0,190,0,252,15,208,0,63,64,0,190,0,252,31,192,0,63,0,0,190,0,252,47,192,0,127,0,0,191,65,252,63,128,0,127,0,0,191,255,248,191,0,0,127,0,0,63,255,240,255,0,0,191,0,0,31,255,210,253,0,0,191,0,0,0,0,7,248,0,0,254,0,0,0,0,31,240,0,0,254,0,0,0,0,127,208,0,2,253,0,0,0,3,255,128,31,255,252,0,0,0,7,254,0,15,255,244,0,0,0,1,244,0,11,255,224,0,0,0,0,128,0,1,84,0,0, + // 0x521b 创 + 27,82,32,34,16,36,1,253,0,0,14,0,0,0,0,21,0,0,47,192,0,0,0,127,0,0,63,128,0,0,0,127,0,0,191,208,0,0,0,127,0,1,255,244,0,10,128,127,0,3,255,252,0,31,192,127,0,11,240,255,0,31,192,127,0,31,208,63,192,31,192,127,0,127,128,31,240,31,192,127,0,255,0,7,248,31,192,127,3,252,0,2,253,31,192,127,31,240,0,0,255,31,192,127,127,208,0,0,63,31,192,127,127,255,255,255,252,31,192,127,30,255,255,255,228,31,192,127,0,255,255,255,208,31,192,127,0,253,0,15,208,31,192,127,0,253,0,15,208,31,192,127,0,253,0,15,208,31,192,127,0,253,0,15,192,31,192,127,0,253,0,15,192,31,192,127,0,253,0,31,192,31,192,127,0,253,0,47,192,31,192,127,0,253,31,255,128,31,192,127,0,253,15,255,0,31,192,127,0,253,10,164,0,0,0,127,0,253,0,0,57,0,0,127,0,253,0,0,63,0,0,127,0,253,0,0,63,0,0,127,0,254,0,0,190,0,0,127,0,191,255,255,253,0,0,191,0,63,255,255,252,7,255,254,0,27,255,255,224,3,255,253,0,0,0,0,0,3,255,224, + // 0x521d 初 + 29,82,33,34,50,36,1,253,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,15,255,255,255,255,192,0,15,192,15,255,255,255,255,192,0,15,192,15,255,255,255,255,192,0,15,208,0,2,252,0,47,192,63,255,255,208,1,252,0,47,128,63,255,255,240,2,252,0,47,128,63,255,255,208,2,252,0,47,128,0,0,31,192,2,252,0,63,128,0,0,63,64,2,248,0,63,128,0,0,191,0,2,248,0,63,128,0,0,253,16,3,248,0,63,128,0,3,248,120,3,248,0,63,128,0,11,240,253,3,244,0,63,128,0,31,242,244,3,244,0,63,64,0,63,255,224,7,240,0,63,64,0,255,255,128,7,240,0,63,64,3,255,255,128,11,224,0,63,64,15,255,239,224,15,224,0,63,64,127,239,199,248,15,208,0,63,64,191,143,194,244,47,192,0,63,0,62,15,192,224,63,128,0,127,0,40,15,192,0,127,64,0,127,0,0,15,192,0,255,0,0,127,0,0,15,192,1,253,0,0,191,0,0,15,192,7,252,0,0,254,0,0,15,192,15,244,0,0,254,0,0,15,192,63,224,0,2,253,0,0,15,193,255,192,15,255,252,0,0,15,193,255,0,15,255,248,0,0,15,192,124,0,11,255,224,0,0,15,192,16,0,1,84,0,0, + // 0x522b 别 + 43,82,32,34,16,36,1,252,0,0,0,0,0,0,0,127,11,255,255,255,192,0,0,127,11,255,255,255,192,0,0,127,11,255,255,255,192,0,0,127,11,208,0,31,192,63,64,127,11,208,0,31,192,63,64,127,11,208,0,31,192,63,64,127,11,208,0,31,192,63,64,127,11,208,0,31,192,63,64,127,11,208,0,31,192,63,64,127,11,255,255,255,192,63,64,127,11,255,255,255,192,63,64,127,11,255,255,255,192,63,64,127,0,0,0,0,0,63,64,127,0,3,240,0,0,63,64,127,0,3,240,0,0,63,64,127,0,3,240,0,0,63,64,127,63,255,255,255,224,63,64,127,63,255,255,255,208,63,64,127,63,255,255,255,208,63,64,127,0,7,224,15,208,63,64,127,0,11,224,15,208,63,64,127,0,15,208,15,208,63,64,127,0,15,192,15,192,63,64,127,0,31,192,15,192,0,0,127,0,63,128,15,192,0,0,127,0,127,0,31,192,0,0,127,0,254,0,31,192,0,0,127,3,252,0,47,192,0,0,127,15,244,0,63,128,1,85,255,127,224,63,255,64,3,255,254,63,128,47,255,0,2,255,253,13,0,47,248,0,1,255,224,0,0,0,0,0,0,0,0, + // 0x5230 到 + 48,82,32,33,8,36,1,253,0,0,0,0,0,0,0,63,63,255,255,255,252,0,0,63,63,255,255,255,252,0,0,63,63,255,255,255,252,126,0,63,0,15,240,0,0,126,0,63,0,15,208,0,0,126,0,63,0,47,192,60,0,126,0,63,0,63,192,254,0,126,0,63,0,63,64,63,64,126,0,63,0,127,0,47,192,126,0,63,0,254,0,15,240,126,0,63,63,255,255,255,244,126,0,63,63,255,255,255,252,126,0,63,63,255,255,255,253,126,0,63,5,85,0,0,126,126,0,63,0,0,190,0,32,126,0,63,0,0,190,0,0,126,0,63,0,0,190,0,0,126,0,63,0,0,190,0,0,126,0,63,15,255,255,255,240,126,0,63,15,255,255,255,240,126,0,63,15,255,255,255,240,126,0,63,0,0,190,0,0,126,0,63,0,0,190,0,0,126,0,63,0,0,190,0,0,0,0,63,0,0,190,0,0,0,0,63,0,0,190,0,88,0,0,63,0,0,191,255,252,0,0,63,26,255,255,255,252,0,0,63,127,255,255,255,248,1,85,191,127,255,250,80,0,3,255,255,62,148,0,0,0,1,255,253,0,0,0,0,0,0,255,228, + // 0x5236 制 + 54,82,33,34,50,36,1,253,0,0,47,0,0,0,0,21,0,1,248,63,64,0,0,0,63,64,2,248,63,64,0,0,0,63,64,3,244,63,64,0,3,224,63,64,3,240,63,64,0,3,240,63,64,7,255,255,255,252,3,240,63,64,15,255,255,255,252,3,240,63,64,31,255,255,255,252,3,240,63,64,47,192,63,64,0,3,240,63,64,63,64,63,64,0,3,240,63,64,127,0,63,64,0,3,240,63,64,10,0,63,64,0,3,240,63,64,127,255,255,255,255,131,240,63,64,127,255,255,255,255,131,240,63,64,127,255,255,255,255,131,240,63,64,0,0,63,64,0,3,240,63,64,0,0,63,64,0,3,240,63,64,0,0,63,64,0,3,240,63,64,15,255,255,255,254,3,240,63,64,15,255,255,255,254,3,240,63,64,15,255,255,255,254,3,240,63,64,15,192,63,64,190,3,240,63,64,15,192,63,64,190,3,240,63,64,15,192,63,64,190,2,160,63,64,15,192,63,64,190,0,0,63,64,15,192,63,64,190,0,0,63,64,15,192,63,64,190,0,0,63,64,15,192,63,64,190,0,0,63,64,15,192,63,95,253,0,0,63,64,15,192,63,79,252,0,0,63,64,15,192,63,79,228,0,85,127,64,0,0,63,64,0,0,255,255,0,0,0,63,64,0,0,191,254,0,0,0,63,64,0,0,63,228,0, + // 0x5237 刷 + 55,82,32,34,16,36,1,253,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,63,7,255,255,255,254,0,0,63,7,255,255,255,254,5,64,63,7,255,255,255,254,15,192,63,7,224,0,0,190,15,192,63,7,224,0,0,190,15,192,63,7,224,0,0,190,15,192,63,7,224,0,0,190,15,192,63,7,255,255,255,254,15,192,63,7,255,255,255,254,15,192,63,7,255,255,255,254,15,192,63,7,224,3,240,0,15,192,63,7,224,3,240,0,15,192,63,7,224,3,240,0,15,192,63,7,224,3,240,0,15,192,63,7,239,255,255,255,15,192,63,7,239,255,255,255,15,192,63,7,239,255,255,255,15,192,63,7,239,67,240,63,15,192,63,11,223,67,240,63,15,192,63,11,223,67,240,63,15,192,63,11,223,67,240,63,15,192,63,15,207,67,240,63,15,192,63,15,207,67,240,63,10,128,63,15,207,67,240,63,0,0,63,31,143,67,240,63,0,0,63,31,143,67,247,254,0,0,63,63,79,67,243,253,0,0,63,63,15,67,241,160,0,0,63,190,0,3,240,0,0,85,191,189,0,3,240,0,0,255,255,28,0,3,240,0,0,191,254,0,0,3,240,0,0,127,228, + // 0x5272 割 + 114,82,31,34,16,36,2,253,0,1,248,0,0,0,0,84,0,1,252,0,0,0,0,252,0,1,252,0,0,0,0,252,170,171,254,170,164,0,0,252,255,255,255,255,248,127,0,252,255,255,255,255,248,127,0,252,252,0,0,1,248,127,0,252,252,1,252,1,248,127,0,252,252,1,252,1,248,127,0,252,15,255,255,255,192,127,0,252,15,255,255,255,192,127,0,252,5,86,253,85,64,127,0,252,0,1,252,0,0,127,0,252,5,86,253,85,0,127,0,252,15,255,255,255,64,127,0,252,15,255,255,255,64,127,0,252,0,1,252,0,0,127,0,252,0,1,252,0,0,127,0,252,170,170,254,170,160,127,0,252,255,255,255,255,244,127,0,252,255,255,255,255,244,127,0,252,0,0,0,0,0,127,0,252,6,170,170,170,64,127,0,252,15,255,255,255,192,127,0,252,15,255,255,255,192,0,0,252,15,192,0,31,192,0,0,252,15,192,0,31,192,0,0,252,15,192,0,31,192,0,0,252,15,192,0,31,192,0,0,252,15,234,170,175,192,0,0,252,15,255,255,255,192,5,86,252,15,255,255,255,192,7,255,252,15,192,0,31,192,3,255,248,15,192,0,5,64,3,255,144, + // 0x529b 力 + 155,82,31,35,24,36,2,252,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,63,255,255,255,255,255,255,248,63,255,255,255,255,255,255,248,63,255,255,255,255,255,255,248,21,85,85,255,85,85,87,244,0,0,0,254,0,0,3,244,0,0,0,254,0,0,3,244,0,0,0,253,0,0,3,244,0,0,1,252,0,0,3,240,0,0,2,252,0,0,7,240,0,0,3,252,0,0,7,240,0,0,3,248,0,0,7,240,0,0,11,244,0,0,11,240,0,0,15,240,0,0,11,240,0,0,31,224,0,0,11,240,0,0,63,192,0,0,15,224,0,0,191,192,0,0,15,224,0,0,255,0,0,0,15,208,0,3,254,0,0,0,15,208,0,11,252,0,0,0,31,192,0,47,244,0,0,0,47,192,0,191,208,0,0,0,63,192,3,255,128,0,0,0,63,128,31,254,0,0,21,85,255,64,191,244,0,0,15,255,255,0,127,208,0,0,15,255,253,0,30,0,0,0,11,255,224,0,0,0,0,0,0,0,0,0, + // 0x529f 功 + 159,82,33,34,50,36,1,253,0,0,0,0,0,84,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,63,255,255,240,0,253,0,0,0,63,255,255,240,0,253,0,0,0,63,255,255,240,0,253,0,0,0,0,31,208,0,0,253,0,0,0,0,15,192,11,255,255,255,255,128,0,15,192,11,255,255,255,255,128,0,15,192,11,255,255,255,255,128,0,15,192,0,1,253,0,47,128,0,15,192,0,1,252,0,47,128,0,15,192,0,1,252,0,47,128,0,15,192,0,2,252,0,63,64,0,15,192,0,2,248,0,63,64,0,15,192,0,3,248,0,63,64,0,15,192,0,3,244,0,63,64,0,15,192,0,3,244,0,63,64,0,15,192,0,7,240,0,63,64,0,15,193,184,11,240,0,63,0,0,15,255,252,15,224,0,63,0,0,111,255,252,31,208,0,63,0,111,255,255,224,63,192,0,127,0,127,255,228,0,127,128,0,127,0,63,249,0,0,255,0,0,191,0,57,0,0,2,254,0,0,190,0,0,0,0,11,252,0,0,254,0,0,0,0,47,240,0,0,253,0,0,0,0,191,208,0,2,252,0,0,0,7,255,128,31,255,252,0,0,0,7,254,0,15,255,244,0,0,0,1,244,0,15,255,208,0,0,0,0,64,0,0,0,0,0, + // 0x52a0 加 + 160,82,32,34,16,36,1,253,0,5,64,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,2,255,255,255,21,95,213,85,2,255,255,255,63,255,255,255,194,255,255,255,63,255,255,255,194,248,0,191,63,255,255,255,194,248,0,191,0,31,192,31,194,248,0,191,0,31,192,31,130,248,0,191,0,47,128,31,130,248,0,191,0,47,128,47,130,248,0,191,0,47,128,47,130,248,0,191,0,47,128,47,130,248,0,191,0,63,64,47,130,248,0,191,0,63,64,47,130,248,0,191,0,63,0,47,130,248,0,191,0,63,0,47,130,248,0,191,0,127,0,47,130,248,0,191,0,190,0,63,66,248,0,191,0,190,0,63,66,248,0,191,0,253,0,63,66,248,0,191,1,252,0,63,66,248,0,191,2,252,0,63,66,248,0,191,3,244,0,63,2,248,0,191,7,240,0,63,2,248,0,191,15,240,0,127,2,255,255,255,31,208,0,255,2,255,255,255,63,193,255,254,2,255,255,255,191,64,255,252,2,248,0,191,46,0,255,244,2,248,0,191,8,0,20,0,1,84,0,0, + // 0x52a8 动 + 168,82,32,34,16,36,2,253,0,0,0,0,0,21,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,63,0,0,63,255,255,252,0,63,0,0,63,255,255,252,0,63,0,0,47,255,255,252,0,63,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,63,0,0,0,0,0,0,255,255,255,255,0,0,0,0,255,255,255,255,0,0,0,0,255,255,255,255,0,0,0,0,0,127,0,191,255,255,255,254,0,127,0,127,255,255,255,254,0,190,0,127,255,255,255,254,0,190,0,190,0,127,0,0,0,190,0,190,0,190,0,0,0,253,0,190,0,253,0,0,0,253,0,190,0,252,7,208,0,252,0,190,1,252,3,240,1,252,0,190,2,248,3,240,2,252,0,253,3,240,1,248,2,248,0,253,7,240,0,252,3,244,0,253,15,208,1,253,7,240,0,253,15,197,191,254,11,240,0,253,63,255,255,255,15,224,0,252,191,255,254,127,95,208,1,252,127,254,64,46,127,192,1,252,62,64,0,0,191,64,2,252,0,0,0,1,255,0,3,248,0,0,0,3,253,47,255,244,0,0,0,7,248,15,255,240,0,0,0,0,240,15,255,128,0,0,0,0,64,0,0,0, + // 0x5316 化 + 22,83,34,33,41,36,1,253,0,0,47,128,190,0,0,0,0,0,0,63,192,190,0,0,0,0,0,0,191,64,190,0,0,0,0,0,0,255,0,190,0,0,0,0,0,2,253,0,190,0,0,0,0,0,3,252,0,190,0,0,0,0,0,15,240,0,190,0,0,48,0,0,31,224,0,190,0,0,252,0,0,63,208,0,190,0,7,255,0,0,255,208,0,190,0,47,253,0,3,255,208,0,190,1,255,240,0,11,255,208,0,190,11,255,64,0,47,255,208,0,190,127,248,0,0,191,239,208,0,191,255,208,0,0,255,143,208,0,191,253,0,0,0,127,15,208,0,191,224,0,0,0,60,15,208,0,191,0,0,0,0,0,15,208,0,190,0,0,0,0,0,15,208,0,190,0,0,0,0,0,15,208,0,190,0,0,0,0,0,15,208,0,190,0,0,0,0,0,15,208,0,190,0,0,0,0,0,15,208,0,190,0,0,0,0,0,15,208,0,190,0,0,7,128,0,15,208,0,190,0,0,11,224,0,15,208,0,190,0,0,11,224,0,15,208,0,190,0,0,11,208,0,15,208,0,191,0,0,15,208,0,15,208,0,127,64,0,47,192,0,15,208,0,63,255,255,255,192,0,15,208,0,63,255,255,255,64,0,15,208,0,11,255,255,253,0,0,10,128,0,0,0,0,0,0, + // 0x5347 升 + 71,83,32,35,24,36,2,252,0,0,0,1,0,5,0,0,0,0,0,31,64,47,128,0,0,0,2,255,208,47,128,0,0,0,111,255,208,47,128,0,0,31,255,253,0,47,128,0,27,255,255,144,0,47,128,0,191,255,252,0,0,47,128,0,63,250,252,0,0,47,128,0,41,0,252,0,0,47,128,0,0,0,252,0,0,47,128,0,0,0,252,0,0,47,128,0,0,0,252,0,0,47,128,0,0,0,252,0,0,47,128,0,0,0,252,0,0,47,128,0,0,1,253,0,0,63,128,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,252,0,0,47,128,0,0,2,252,0,0,47,128,0,0,2,248,0,0,47,128,0,0,3,248,0,0,47,128,0,0,3,244,0,0,47,128,0,0,7,240,0,0,47,128,0,0,15,240,0,0,47,128,0,0,31,224,0,0,47,128,0,0,63,192,0,0,47,128,0,0,191,128,0,0,47,128,0,2,255,0,0,0,47,128,0,11,253,0,0,0,47,128,0,63,244,0,0,0,47,128,0,255,208,0,0,0,47,128,0,127,64,0,0,0,47,128,0,24,0,0,0,0,47,128,0,0,0,0,0,0,0,0,0, + // 0x534a 半 + 74,83,32,34,16,36,2,253,0,0,0,15,224,0,0,0,0,120,0,15,224,0,62,0,2,252,0,15,224,0,127,192,0,254,0,15,224,0,191,0,0,191,64,15,224,0,254,0,0,63,192,15,224,2,252,0,0,47,208,15,224,3,248,0,0,15,240,15,224,11,240,0,0,11,240,15,224,31,208,0,0,7,144,15,224,7,192,0,0,0,0,15,224,0,0,0,1,85,85,95,229,85,85,80,15,255,255,255,255,255,255,240,15,255,255,255,255,255,255,240,15,255,255,255,255,255,255,240,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,85,85,85,95,245,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0, + // 0x534f 协 + 79,83,33,34,50,36,2,253,1,248,0,0,26,64,0,0,0,1,248,0,0,47,128,0,0,0,1,248,0,0,47,128,0,0,0,1,248,0,0,47,128,0,0,0,1,248,0,0,47,128,0,0,0,1,248,0,0,47,128,0,0,0,1,248,0,0,47,128,0,0,0,1,248,2,255,255,255,255,0,0,2,252,2,255,255,255,255,0,0,255,255,246,255,255,255,255,0,0,255,255,244,0,63,128,127,0,0,255,255,244,0,63,64,127,0,0,1,248,0,0,63,64,127,0,0,1,248,0,0,63,0,127,0,0,1,248,2,244,63,0,127,248,0,1,248,3,240,63,0,127,252,0,1,248,3,240,127,0,127,189,0,1,248,7,224,190,0,126,126,0,1,248,15,208,254,0,126,63,0,1,248,15,192,253,0,190,63,0,1,248,47,129,252,0,190,47,64,1,248,63,3,248,0,190,47,128,1,248,126,3,244,0,190,31,128,1,248,12,11,240,0,189,15,192,1,248,0,31,224,0,253,4,0,1,248,0,63,192,0,253,0,0,1,248,0,127,128,0,252,0,0,1,248,1,255,0,0,252,0,0,1,248,3,253,0,1,252,0,0,1,248,15,248,0,3,252,0,0,1,248,63,240,31,255,244,0,0,1,248,127,192,15,255,240,0,0,1,248,31,0,11,255,128,0,0,1,164,4,0,0,0,0,0,0, + // 0x5355 单 + 85,83,32,34,16,36,2,253,0,0,144,0,0,2,64,0,0,7,240,0,0,11,244,0,0,3,252,0,0,15,240,0,0,1,254,0,0,47,208,0,0,0,191,64,0,63,128,0,0,0,63,128,0,255,0,0,2,170,191,170,171,255,170,128,2,255,255,255,255,255,255,192,2,255,255,255,255,255,255,192,2,248,0,15,224,0,31,192,2,248,0,15,224,0,31,192,2,248,0,15,224,0,31,192,2,254,170,175,250,170,191,192,2,255,255,255,255,255,255,192,2,255,255,255,255,255,255,192,2,248,0,15,224,0,31,192,2,248,0,15,224,0,31,192,2,248,0,15,224,0,31,192,2,255,255,255,255,255,255,192,2,255,255,255,255,255,255,192,2,255,255,255,255,255,255,192,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,11,224,0,0,0, + // 0x5361 卡 + 97,83,32,34,16,36,2,253,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,255,255,255,0,0,0,0,47,255,255,255,0,0,0,0,47,255,255,255,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,111,213,85,85,85,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,238,0,0,0,0,0,0,47,255,248,0,0,0,0,0,47,255,255,208,0,0,0,0,47,203,255,254,0,0,0,0,47,192,111,255,208,0,0,0,47,192,1,255,192,0,0,0,47,192,0,31,64,0,0,0,47,192,0,1,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,31,192,0,0,0, + // 0x5370 印 + 112,83,30,34,16,36,3,253,0,0,6,0,0,0,0,0,0,0,127,192,0,0,0,0,0,7,255,224,85,85,85,80,17,191,255,145,255,255,255,240,127,255,248,1,255,255,255,240,127,254,64,1,255,255,255,240,127,144,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,64,0,1,252,0,3,240,127,255,255,209,252,0,3,240,127,255,255,209,252,0,3,240,127,255,255,209,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,255,255,225,252,0,7,240,127,255,255,225,252,15,255,240,127,255,255,225,252,11,255,240,127,64,0,1,252,7,255,192,127,0,0,1,252,2,148,0,127,0,0,1,252,0,0,0,21,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0, + // 0x5371 危 + 113,83,34,35,59,36,1,252,0,0,31,144,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,255,255,244,0,0,0,0,0,255,255,255,255,0,0,0,0,2,255,255,255,254,0,0,0,0,7,252,0,3,252,0,0,0,0,15,240,0,7,248,0,0,0,0,63,224,0,15,240,0,0,0,0,191,192,0,31,224,0,0,0,2,255,255,255,255,255,255,255,128,11,255,255,255,255,255,255,255,128,63,255,255,255,255,255,255,255,128,127,255,64,0,0,0,0,0,0,31,63,64,0,0,0,0,0,0,4,63,64,0,0,0,0,0,0,0,63,65,255,255,255,255,0,0,0,63,65,255,255,255,255,0,0,0,63,65,255,255,255,255,0,0,0,63,1,252,0,0,63,0,0,0,63,1,252,0,0,127,0,0,0,63,1,252,0,0,127,0,0,0,127,1,252,0,0,190,0,0,0,191,1,252,0,0,254,0,0,0,190,1,252,2,255,253,0,0,0,253,1,252,1,255,252,0,0,0,252,1,252,0,255,224,9,0,2,252,1,252,0,0,0,11,208,3,248,1,252,0,0,0,15,208,7,244,1,252,0,0,0,15,208,15,240,1,252,0,0,0,15,192,47,208,1,254,0,0,0,127,192,127,192,0,255,255,255,255,255,64,127,0,0,127,255,255,255,255,0,13,0,0,27,255,255,255,248,0,0,0,0,0,0,0,0,0,0, + // 0x5374 却 + 116,83,32,34,16,36,1,253,0,0,252,0,0,0,0,0,0,0,252,0,0,0,0,0,0,0,252,0,2,255,255,255,0,0,252,0,2,255,255,255,0,0,252,0,2,255,255,255,0,0,252,0,2,248,0,127,15,255,255,255,194,248,0,127,15,255,255,255,194,248,0,127,15,255,255,255,194,248,0,127,0,0,252,0,2,248,0,127,0,0,252,0,2,248,0,127,0,0,252,0,2,248,0,127,0,0,252,0,2,248,0,127,0,0,252,0,2,248,0,127,191,255,255,255,242,248,0,127,191,255,255,255,242,248,0,127,191,255,255,255,242,248,0,127,0,15,224,0,2,248,0,127,0,31,208,0,2,248,0,127,0,47,192,0,2,248,0,127,0,63,128,16,2,248,0,127,0,63,65,244,2,248,0,127,0,127,1,252,2,248,0,127,0,254,0,253,2,248,0,127,0,252,0,127,2,248,21,191,1,252,0,63,130,248,63,255,3,249,90,255,194,248,47,253,111,255,255,255,210,248,31,228,127,255,255,255,242,248,0,0,127,255,233,67,242,248,0,0,37,64,0,3,246,248,0,0,0,0,0,1,66,248,0,0,0,0,0,0,2,248,0,0,0,0,0,0,2,248,0,0, + // 0x5378 卸 + 120,83,32,34,16,36,1,253,0,62,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,127,0,0,2,255,255,255,0,254,0,0,2,255,255,255,0,255,255,255,226,255,255,255,2,255,255,255,226,252,0,63,7,255,255,255,226,248,0,63,15,224,126,0,2,248,0,63,47,192,126,0,2,248,0,63,63,128,126,0,2,248,0,63,15,0,126,0,2,248,0,63,0,0,126,0,2,248,0,63,63,255,255,255,242,248,0,63,63,255,255,255,242,248,0,63,63,255,255,255,242,248,0,63,0,0,126,0,2,248,0,63,0,0,126,0,2,248,0,63,1,80,126,0,2,248,0,63,3,224,126,0,2,248,0,63,3,224,127,255,194,248,0,63,3,224,127,255,194,248,0,63,3,224,127,255,194,248,0,63,3,224,126,0,2,248,0,63,3,224,126,0,2,248,0,63,3,224,126,0,2,248,0,63,3,224,126,0,2,248,63,255,3,224,126,6,178,248,47,255,3,224,191,255,246,248,31,253,27,255,255,255,246,248,5,64,191,255,255,254,82,248,0,0,191,255,233,0,2,248,0,0,126,144,0,0,2,248,0,0,0,0,0,0,2,248,0,0,0,0,0,0,2,248,0,0, + // 0x538b 压 + 139,83,34,32,32,36,1,253,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,3,244,0,0,0,0,0,0,0,3,244,0,0,5,64,0,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,0,0,3,244,191,255,255,255,255,254,0,3,240,191,255,255,255,255,254,0,3,240,191,255,255,255,255,254,0,3,240,0,0,31,208,0,0,0,3,240,0,0,15,192,0,0,0,3,240,0,0,15,192,32,0,0,3,240,0,0,15,192,252,0,0,3,240,0,0,15,192,255,64,0,7,240,0,0,15,192,63,208,0,7,224,0,0,15,192,15,240,0,11,224,0,0,15,192,3,248,0,15,208,0,0,15,192,1,240,0,15,192,0,0,15,192,0,64,0,15,192,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,0,63,143,255,255,255,255,255,255,192,127,15,255,255,255,255,255,255,192,191,15,255,255,255,255,255,255,192,45,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0, + // 0x539f 原 + 159,83,33,32,32,36,1,253,1,255,255,255,255,255,255,255,192,1,255,255,255,255,255,255,255,192,1,255,255,255,255,255,255,255,192,1,252,0,0,31,208,0,0,0,1,252,0,0,47,192,0,0,0,1,252,0,0,63,192,0,0,0,1,252,31,255,255,255,255,240,0,1,252,31,255,255,255,255,240,0,1,252,31,234,170,170,171,240,0,1,252,31,192,0,0,7,240,0,1,252,31,192,0,0,7,240,0,1,252,31,213,85,85,91,240,0,1,252,31,255,255,255,255,240,0,1,252,31,255,255,255,255,240,0,2,252,31,192,0,0,7,240,0,2,248,31,192,0,0,7,240,0,2,248,31,192,0,0,7,240,0,2,248,31,255,255,255,255,240,0,3,244,31,255,255,255,255,240,0,3,244,10,170,175,234,170,160,0,3,244,0,0,15,208,0,0,0,3,240,0,144,15,208,28,0,0,7,240,2,252,15,208,191,0,0,11,240,7,248,15,208,63,208,0,15,224,15,240,15,208,15,244,0,15,208,63,192,15,208,3,252,0,31,192,255,64,15,208,0,255,0,47,199,253,0,15,208,0,127,192,63,79,244,0,15,208,0,31,192,191,2,208,31,255,208,0,10,0,126,0,0,15,255,192,0,0,0,5,0,0,11,254,0,0,0,0, + // 0x53cc 双 + 204,83,33,32,32,36,1,252,47,255,255,252,127,255,255,255,0,47,255,255,253,127,255,255,255,0,47,255,255,252,127,255,255,255,0,0,0,1,252,47,128,0,190,0,0,0,1,252,31,192,0,254,0,0,0,2,252,31,192,0,253,0,1,0,3,248,15,192,0,252,0,7,192,3,244,15,208,1,252,0,31,224,3,240,11,224,2,248,0,11,244,7,240,7,240,3,244,0,3,253,11,240,7,240,3,240,0,0,255,15,224,3,240,11,240,0,0,127,207,208,3,248,15,224,0,0,47,255,192,1,252,31,208,0,0,15,255,128,0,252,47,192,0,0,3,255,64,0,254,63,128,0,0,1,255,0,0,191,191,0,0,0,0,255,64,0,63,254,0,0,0,1,255,192,0,63,252,0,0,0,3,255,224,0,31,248,0,0,0,7,255,244,0,15,240,0,0,0,15,243,252,0,63,248,0,0,0,47,210,253,0,191,253,0,0,0,127,192,255,2,255,255,0,0,0,255,0,188,11,253,191,192,0,3,254,0,48,47,244,63,240,0,15,252,0,1,255,208,15,252,0,63,240,0,11,255,64,3,255,128,127,192,0,15,253,0,0,255,192,31,64,0,7,224,0,0,63,0,8,0,0,2,64,0,0,9,0,0,0,0,0,0,0,0,0,0, + // 0x53cd 反 + 205,83,32,33,8,36,2,252,0,255,255,255,255,255,255,248,0,255,255,255,255,255,255,248,0,255,255,255,255,255,255,248,0,254,85,85,85,85,85,80,0,253,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,254,0,0,0,0,4,0,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,0,0,253,47,192,0,0,255,0,0,252,15,224,0,1,253,0,0,252,11,240,0,3,252,0,0,252,7,248,0,7,248,0,1,252,3,252,0,15,240,0,1,252,1,254,0,47,224,0,2,252,0,191,128,127,192,0,2,248,0,63,209,255,64,0,3,244,0,31,247,254,0,0,3,244,0,11,255,248,0,0,7,240,0,2,255,240,0,0,11,240,0,2,255,224,0,0,15,208,0,31,255,253,0,0,31,192,0,255,255,255,208,0,63,192,31,255,193,255,254,64,127,70,255,253,0,47,255,249,255,11,255,224,0,7,255,253,125,3,254,0,0,0,47,248,8,1,144,0,0,0,1,176,0,0,0,0,0,0,0,0, + // 0x53d6 取 + 214,83,34,32,32,36,1,253,63,255,255,255,244,0,0,0,0,63,255,255,255,244,0,0,0,0,63,255,255,255,244,0,0,0,0,2,248,0,127,47,255,255,255,64,2,248,0,63,31,255,255,255,64,2,248,0,63,31,255,255,255,64,2,248,0,63,5,149,85,127,0,2,248,0,63,15,208,0,127,0,2,255,255,255,15,224,0,127,0,2,255,255,255,11,240,0,190,0,2,255,255,255,7,240,0,253,0,2,248,0,63,3,244,0,252,0,2,248,0,63,3,248,1,252,0,2,248,0,63,1,252,3,248,0,2,248,0,63,0,253,3,244,0,2,255,255,255,0,255,11,240,0,2,255,255,255,0,127,15,224,0,2,255,255,255,0,63,175,208,0,2,248,0,63,0,31,255,192,0,2,248,0,63,0,15,255,64,0,2,248,0,63,0,11,255,0,0,2,248,0,63,0,3,253,0,0,2,248,26,255,0,7,253,0,0,7,255,255,255,0,15,255,64,0,255,255,255,255,0,63,255,192,0,191,255,254,191,0,255,175,240,0,127,229,0,63,3,255,15,252,0,16,0,0,63,31,252,3,255,64,0,0,0,63,191,240,0,255,224,0,0,0,63,127,128,0,63,208,0,0,0,63,45,0,0,11,128,0,0,0,63,0,0,0,1,0, + // 0x53d8 变 + 216,83,32,35,24,36,2,252,0,0,0,27,192,0,0,0,0,0,0,31,208,0,0,0,0,0,0,15,240,0,0,0,0,0,0,7,244,0,0,0,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,0,0,15,208,11,240,0,0,0,41,15,208,11,240,80,0,0,63,79,208,11,243,244,0,0,255,15,208,11,242,253,0,1,253,15,208,11,240,191,128,7,248,15,208,11,240,47,208,15,240,15,208,11,240,11,244,63,192,15,208,11,240,3,252,11,0,15,208,11,240,0,224,0,0,15,208,11,240,0,0,0,0,0,0,0,0,0,0,3,255,255,255,255,255,248,0,3,255,255,255,255,255,254,0,3,255,255,255,255,255,252,0,0,15,224,0,0,11,248,0,0,3,248,0,0,47,224,0,0,1,254,0,0,191,192,0,0,0,191,192,3,255,0,0,0,0,31,248,47,248,0,0,0,0,7,255,255,224,0,0,0,0,0,255,255,0,0,0,0,0,7,255,255,144,0,0,0,6,255,255,255,255,64,0,26,255,255,244,47,255,255,164,255,255,254,64,1,191,255,255,63,254,128,0,0,6,255,252,62,64,0,0,0,0,1,184,0,0,0,0,0,0,0,0, + // 0x53f0 台 + 240,83,32,34,16,36,2,253,0,0,3,208,0,0,0,0,0,0,3,252,0,0,0,0,0,0,11,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,47,208,0,9,0,0,0,0,63,192,0,63,64,0,0,0,191,64,0,191,208,0,0,0,254,0,0,31,244,0,0,3,252,0,0,7,254,0,0,7,244,0,0,1,255,64,0,15,245,170,175,255,255,208,191,255,255,255,255,255,255,244,191,255,255,255,255,255,255,252,127,255,255,250,170,85,66,255,21,64,0,0,0,0,0,255,0,0,0,0,0,0,0,120,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,191,255,255,255,255,254,0,0,191,255,255,255,255,254,0,0,191,255,255,255,255,254,0,0,191,0,0,0,0,254,0,0,191,0,0,0,0,254,0,0,191,0,0,0,0,254,0,0,191,0,0,0,0,254,0,0,191,0,0,0,0,254,0,0,191,0,0,0,0,254,0,0,191,0,0,0,0,254,0,0,191,0,0,0,0,254,0,0,191,255,255,255,255,254,0,0,191,255,255,255,255,254,0,0,191,255,255,255,255,254,0,0,191,0,0,0,1,254,0,0,127,0,0,0,0,253,0, + // 0x5403 吃 + 3,84,32,34,16,36,3,253,0,0,0,0,144,0,0,0,0,0,0,2,252,0,0,0,0,0,0,3,252,0,0,0,255,255,224,3,244,0,0,0,255,255,224,11,240,0,0,0,255,255,224,15,240,0,0,0,252,11,224,31,255,255,255,252,252,7,224,63,255,255,255,252,252,7,224,191,255,255,255,252,252,7,224,254,0,0,0,0,252,7,227,252,0,0,0,0,252,7,239,244,0,0,0,0,252,7,235,224,0,0,0,0,252,7,225,207,255,255,255,64,252,7,224,15,255,255,255,192,252,7,224,15,255,255,255,0,252,7,224,0,0,31,252,0,252,7,224,0,0,127,224,0,252,7,224,0,1,255,128,0,252,7,224,0,7,253,0,0,252,7,224,0,31,244,0,0,252,11,224,0,127,192,0,0,255,255,224,1,255,0,0,0,255,255,224,7,252,0,0,0,255,255,224,15,240,0,0,0,252,0,0,63,192,0,0,116,252,0,0,191,0,0,0,126,248,0,0,253,0,0,0,126,0,0,1,252,0,0,0,189,0,0,1,253,0,0,0,253,0,0,0,255,255,255,255,252,0,0,0,191,255,255,255,248,0,0,0,31,255,255,255,224,0,0,0,0,21,85,84,0, + // 0x5408 合 + 8,84,34,35,59,36,1,252,0,0,0,3,248,0,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,47,255,64,0,0,0,0,0,0,127,255,192,0,0,0,0,0,1,255,31,240,0,0,0,0,0,7,253,11,252,0,0,0,0,0,31,248,2,255,64,0,0,0,0,127,224,0,191,208,0,0,0,1,255,128,0,47,248,0,0,0,11,254,0,0,7,255,0,0,0,63,248,0,0,1,255,208,0,1,255,208,0,0,0,127,253,0,15,255,255,255,255,255,255,255,128,127,248,255,255,255,255,241,255,224,63,192,255,255,255,255,240,47,192,13,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,0,0,0,15,255,255,255,255,255,0,0,0,15,255,255,255,255,255,0,0,0,15,208,0,0,0,127,0,0,0,15,208,0,0,0,63,0,0,0,15,208,0,0,0,63,0,0,0,15,208,0,0,0,63,0,0,0,15,208,0,0,0,63,0,0,0,15,208,0,0,0,63,0,0,0,15,208,0,0,0,63,0,0,0,15,208,0,0,0,63,0,0,0,15,255,255,255,255,255,0,0,0,15,255,255,255,255,255,0,0,0,15,255,255,255,255,255,0,0,0,15,208,0,0,0,63,0,0,0,0,0,0,0,0,0,0,0, + // 0x540d 名 + 13,84,31,34,16,36,1,253,0,0,0,249,0,0,0,0,0,0,2,254,0,0,0,0,0,0,3,252,0,0,0,0,0,0,15,244,0,0,0,0,0,0,47,255,255,255,208,0,0,0,191,255,255,255,240,0,0,1,255,255,255,255,224,0,0,11,253,0,0,47,192,0,0,47,244,0,0,127,128,0,0,255,240,0,0,255,0,0,11,255,252,0,2,253,0,0,63,255,255,64,7,252,0,0,63,224,191,224,15,240,0,0,15,64,31,248,63,208,0,0,4,0,7,254,255,128,0,0,0,0,1,255,254,0,0,0,0,0,0,127,248,0,0,0,0,0,0,191,224,0,0,0,0,0,3,255,255,255,255,252,0,0,47,255,255,255,255,252,0,1,255,255,255,255,255,252,0,31,255,240,0,0,2,252,6,255,255,240,0,0,1,252,127,255,215,240,0,0,1,252,63,253,7,240,0,0,1,252,31,128,7,240,0,0,1,252,4,0,7,240,0,0,1,252,0,0,7,240,0,0,1,252,0,0,7,240,0,0,1,252,0,0,7,255,255,255,255,252,0,0,7,255,255,255,255,252,0,0,7,255,255,255,255,252,0,0,7,240,0,0,2,252,0,0,6,160,0,0,1,252, + // 0x540e 后 + 14,84,34,34,50,36,1,253,0,0,0,0,0,0,6,64,0,0,0,0,0,0,91,255,208,0,0,0,0,22,191,255,255,244,0,0,191,255,255,255,255,254,64,0,0,191,255,255,255,233,64,0,0,0,191,255,169,64,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,224,0,191,255,255,255,255,255,255,224,0,191,255,255,255,255,255,255,224,0,190,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,253,11,255,255,255,255,248,0,0,253,11,255,255,255,255,248,0,0,252,11,255,255,255,255,248,0,1,252,11,224,0,0,3,248,0,1,252,11,224,0,0,3,248,0,2,252,11,224,0,0,3,248,0,3,248,11,224,0,0,3,248,0,3,244,11,224,0,0,3,248,0,7,240,11,224,0,0,3,248,0,11,240,11,224,0,0,3,248,0,15,224,11,224,0,0,3,248,0,47,192,11,255,255,255,255,248,0,63,128,11,255,255,255,255,248,0,191,64,11,255,255,255,255,248,0,46,0,11,224,0,0,3,248,0,8,0,11,224,0,0,2,244,0, + // 0x5411 向 + 17,84,30,34,16,36,3,253,0,0,0,190,64,0,0,0,0,0,0,255,0,0,0,0,0,0,1,254,0,0,0,0,0,0,2,253,0,0,0,0,0,0,3,252,0,0,0,0,0,0,7,244,0,0,0,0,127,255,255,255,255,255,255,224,127,255,255,255,255,255,255,224,127,255,255,255,255,255,255,224,127,85,85,85,85,85,95,224,127,0,0,0,0,0,11,224,127,0,0,0,0,0,11,224,127,0,0,0,0,0,11,224,127,0,0,0,0,0,11,224,127,0,255,255,255,240,11,224,127,0,255,255,255,240,11,224,127,0,255,255,255,240,11,224,127,0,252,0,3,240,11,224,127,0,252,0,3,240,11,224,127,0,252,0,3,240,11,224,127,0,252,0,3,240,11,224,127,0,252,0,3,240,11,224,127,0,252,0,3,240,11,224,127,0,255,255,255,240,11,224,127,0,255,255,255,240,11,224,127,0,255,255,255,240,11,224,127,0,252,0,0,0,11,224,127,0,252,0,0,0,11,224,127,0,252,0,0,0,11,224,127,0,0,0,0,0,11,224,127,0,0,0,0,85,95,224,127,0,0,0,0,255,255,208,127,0,0,0,0,127,255,192,127,0,0,0,0,63,250,0, + // 0x5426 否 + 38,84,33,32,32,36,1,253,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,0,0,0,0,255,192,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,127,248,4,0,0,0,0,0,2,255,248,63,128,0,0,0,0,31,255,248,255,248,0,0,0,1,255,247,248,47,255,64,0,0,31,255,131,248,2,255,240,0,1,255,253,3,248,0,47,254,0,111,255,224,3,248,0,7,255,192,63,254,0,3,248,0,0,191,192,31,224,0,3,248,0,0,31,0,10,0,0,3,248,0,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,128,0,0,0,47,192,0,0,47,128,0,0,0,47,192,0,0,47,128,0,0,0,47,192,0,0,47,128,0,0,0,47,192,0,0,47,128,0,0,0,47,192,0,0,47,128,0,0,0,47,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,128,0,0,0,47,192,0,0,47,128,0,0,0,26,128,0, + // 0x542f 启 + 47,84,31,35,24,36,1,252,0,0,0,0,0,0,25,0,0,0,0,0,1,111,255,64,0,0,1,106,255,255,255,192,0,235,255,255,255,255,233,0,0,255,255,255,255,148,0,0,0,255,254,149,0,0,0,0,0,253,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,255,255,255,255,255,255,244,0,255,255,255,255,255,255,244,0,255,255,255,255,255,255,244,0,253,0,0,0,0,3,244,0,253,0,0,0,0,3,244,0,253,0,0,0,0,3,244,0,253,0,0,0,0,3,244,0,255,255,255,255,255,255,244,0,255,255,255,255,255,255,244,0,255,255,255,255,255,255,244,0,253,0,0,0,0,0,0,0,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,127,255,255,255,255,248,1,252,127,255,255,255,255,252,2,248,127,255,255,255,255,252,3,248,127,0,0,0,2,252,3,244,127,0,0,0,2,252,7,240,127,0,0,0,2,252,11,240,127,0,0,0,2,252,15,224,127,0,0,0,2,252,31,208,127,0,0,0,2,252,63,192,127,255,255,255,255,252,127,64,127,255,255,255,255,252,47,0,127,255,255,255,255,252,5,0,127,0,0,0,2,252,0,0,0,0,0,0,0,0, + // 0x544a 告 + 74,84,32,35,24,36,2,252,0,6,64,3,248,0,0,0,0,15,240,3,248,0,0,0,0,15,208,3,248,0,0,0,0,47,192,3,248,0,0,0,0,63,128,3,248,0,0,0,0,191,255,255,255,255,255,208,1,255,255,255,255,255,255,208,3,255,255,255,255,255,255,208,11,244,0,3,248,0,0,0,31,240,0,3,248,0,0,0,63,192,0,3,248,0,0,0,31,64,0,3,248,0,0,0,1,0,0,3,248,0,0,0,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,127,0,0,0,0,191,0,0,127,0,0,0,0,191,0,0,127,0,0,0,0,191,0,0,127,0,0,0,0,191,0,0,127,0,0,0,0,191,0,0,127,0,0,0,0,191,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,127,0,0,0,0,191,0,0,127,0,0,0,0,191,0,0,0,0,0,0,0,0,0, + // 0x5468 周 + 104,84,31,33,8,36,1,252,0,255,255,255,255,255,255,252,0,255,255,255,255,255,255,252,0,255,255,255,255,255,255,252,0,253,0,0,84,0,1,252,0,253,0,1,248,0,1,252,0,253,0,1,248,0,1,252,0,253,10,171,254,170,129,252,0,253,31,255,255,255,193,252,0,253,31,255,255,255,193,252,0,253,0,1,248,0,1,252,0,253,0,1,248,0,1,252,0,253,0,1,248,0,1,252,0,253,42,171,254,170,161,252,0,253,63,255,255,255,241,252,0,253,63,255,255,255,241,252,0,253,0,0,0,0,1,252,0,253,0,0,0,0,1,252,0,252,6,170,170,170,1,252,0,252,11,255,255,255,1,252,1,252,11,255,255,255,1,252,1,252,11,208,0,63,1,252,2,248,11,208,0,63,1,252,3,248,11,208,0,63,1,252,3,244,11,208,0,63,1,252,7,240,11,208,0,63,1,252,11,240,11,255,255,255,1,252,15,224,11,255,255,255,1,252,31,208,11,250,170,170,1,252,63,192,11,208,0,0,2,252,127,64,6,128,0,15,255,248,127,0,0,0,0,11,255,244,13,0,0,0,0,7,255,128,0,0,0,0,0,0,0,0, + // 0x547d 命 + 125,84,34,35,59,36,1,252,0,0,0,11,252,0,0,0,0,0,0,0,31,255,0,0,0,0,0,0,0,127,255,128,0,0,0,0,0,1,255,111,224,0,0,0,0,0,7,253,11,252,0,0,0,0,0,47,248,2,255,0,0,0,0,0,255,208,0,191,208,0,0,0,7,255,64,0,31,248,0,0,0,47,252,0,0,3,255,64,0,2,255,255,255,255,255,255,240,0,31,255,223,255,255,255,111,255,64,255,253,15,255,255,255,71,255,240,127,224,0,0,0,0,0,191,208,46,0,0,0,0,0,0,11,128,0,0,0,0,0,0,0,0,0,0,255,255,252,15,255,255,248,0,0,255,255,252,15,255,255,248,0,0,255,255,252,15,255,255,248,0,0,252,0,252,15,192,2,248,0,0,252,0,252,15,192,2,248,0,0,252,0,252,15,192,2,248,0,0,252,0,252,15,192,2,248,0,0,252,0,252,15,192,2,248,0,0,252,0,252,15,192,2,248,0,0,252,0,252,15,192,2,248,0,0,255,255,252,15,192,2,248,0,0,255,255,252,15,192,2,248,0,0,255,255,252,15,195,255,244,0,0,252,0,0,15,194,255,240,0,0,252,0,0,15,193,255,144,0,0,252,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x548c 和 + 140,84,32,34,16,36,1,253,0,0,0,4,0,0,0,0,0,0,1,252,0,0,0,0,0,1,191,255,0,0,0,0,6,255,255,255,64,0,0,0,47,255,255,144,15,255,255,254,15,255,252,0,15,255,255,254,4,1,252,0,15,255,255,254,0,1,252,0,15,192,0,254,0,1,252,0,15,192,0,254,0,1,252,0,15,192,0,254,0,1,252,0,15,192,0,254,63,255,255,255,143,192,0,254,63,255,255,255,143,192,0,254,63,255,255,255,143,192,0,254,0,7,252,0,15,192,0,254,0,15,254,0,15,192,0,254,0,15,255,64,15,192,0,254,0,47,255,208,15,192,0,254,0,63,255,240,15,192,0,254,0,191,254,252,15,192,0,254,0,253,252,255,15,192,0,254,3,245,252,63,143,192,0,254,7,241,252,47,15,192,0,254,15,209,252,13,15,192,0,254,63,193,252,0,15,192,0,254,191,65,252,0,15,192,0,254,190,1,252,0,15,255,255,254,60,1,252,0,15,255,255,254,16,1,252,0,15,255,255,254,0,1,252,0,15,208,0,254,0,1,252,0,15,192,0,254,0,1,252,0,15,192,0,254,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0, + // 0x54cd 响 + 205,84,32,34,16,36,2,253,0,0,0,0,0,233,0,0,0,0,0,0,1,254,0,0,0,0,0,0,2,252,0,0,127,255,240,0,3,252,0,0,127,255,240,0,7,244,0,0,127,255,240,0,11,240,0,0,126,3,240,191,255,255,255,254,126,3,240,191,255,255,255,254,126,3,240,191,255,255,255,254,126,3,240,189,0,0,0,190,126,3,240,189,0,0,0,190,126,3,240,189,0,0,0,190,126,3,240,189,5,85,80,190,126,3,240,189,15,255,240,190,126,3,240,189,15,255,240,190,126,3,240,189,15,65,240,190,126,3,240,189,15,65,240,190,126,3,240,189,15,65,240,190,126,3,240,189,15,65,240,190,126,3,240,189,15,65,240,190,126,3,240,189,15,65,240,190,127,255,240,189,15,65,240,190,127,255,240,189,15,150,240,190,127,255,240,189,15,255,240,190,126,0,0,189,15,255,240,190,126,0,0,189,15,64,0,190,126,0,0,189,15,64,0,190,41,0,0,189,0,0,0,190,0,0,0,189,0,0,0,190,0,0,0,189,0,0,0,190,0,0,0,189,0,0,0,190,0,0,0,189,0,0,127,254,0,0,0,189,0,0,63,252,0,0,0,189,0,0,47,224, + // 0x55b7 喷 + 183,85,33,34,50,36,2,253,0,0,0,0,1,164,0,0,0,0,0,0,0,1,248,0,0,0,0,0,0,0,1,248,0,0,0,127,255,192,170,171,254,170,168,0,127,255,193,255,255,255,255,252,0,127,255,193,255,255,255,255,252,0,125,11,192,0,1,248,0,0,0,124,11,192,11,193,248,47,0,0,124,11,192,15,208,0,63,0,0,124,11,198,175,250,170,191,170,0,124,11,203,255,255,255,255,255,0,124,11,203,255,255,255,255,255,0,124,11,192,15,208,0,63,0,0,124,11,192,15,208,0,63,0,0,124,11,192,0,0,0,0,0,0,124,11,192,42,170,170,170,160,0,124,11,192,127,255,255,255,240,0,124,11,192,127,255,255,255,240,0,124,11,192,126,0,0,3,240,0,124,11,192,126,0,0,3,240,0,124,11,192,126,1,164,3,240,0,127,255,192,126,1,248,3,240,0,127,255,192,126,1,248,3,240,0,127,255,192,126,1,248,3,240,0,125,0,0,126,1,248,3,240,0,124,0,0,126,2,248,3,240,0,124,0,0,126,3,244,3,240,0,40,0,0,21,11,241,145,80,0,0,0,0,0,63,211,253,0,0,0,0,0,2,255,65,255,208,0,0,0,1,191,252,0,47,253,0,0,0,63,255,208,0,2,255,192,0,0,15,249,0,0,0,63,64,0,0,5,0,0,0,0,6,0, + // 0x5634 嘴 + 52,86,33,35,59,36,2,252,0,0,0,2,240,15,192,0,0,0,0,0,3,240,15,192,0,0,0,0,1,131,240,15,192,112,0,127,255,195,211,240,15,194,252,0,127,255,195,211,255,223,239,244,0,127,255,195,211,255,223,255,64,0,124,11,195,211,245,79,244,0,0,124,11,195,211,240,15,192,0,0,124,11,195,211,240,15,192,15,64,124,11,195,211,246,159,192,15,64,124,11,195,255,255,223,229,111,64,124,11,239,255,255,219,255,255,0,124,11,239,255,252,2,255,252,0,124,11,218,67,248,1,0,0,0,124,11,192,11,255,255,192,0,0,124,11,192,31,255,255,208,0,0,124,11,192,127,64,47,128,0,0,124,11,193,255,0,127,64,0,0,124,11,203,255,255,255,255,248,0,124,11,255,255,255,255,255,248,0,127,255,207,190,0,248,2,248,0,127,255,192,126,0,248,2,248,0,127,255,192,127,255,255,255,248,0,124,0,0,127,255,255,255,248,0,124,0,0,190,0,248,2,248,0,124,0,0,189,0,248,2,248,0,40,0,0,254,1,252,2,248,0,0,0,0,255,255,255,255,248,0,0,0,2,255,255,255,255,248,0,0,0,3,248,0,0,2,248,0,0,0,15,240,0,0,2,248,0,0,0,63,208,0,1,87,244,0,0,0,191,64,0,3,255,240,0,0,0,29,0,0,1,255,144,0,0,0,0,0,0,0,0,0,0, + // 0x5668 器 + 104,86,34,34,50,36,1,252,1,170,170,168,2,170,170,168,0,2,255,255,252,3,255,255,248,0,2,255,255,252,3,255,255,248,0,2,244,0,252,3,240,1,248,0,2,244,0,252,3,240,1,248,0,2,244,0,252,3,240,1,248,0,2,244,0,252,3,240,1,248,0,2,244,0,252,3,240,1,248,0,2,254,170,252,3,250,171,248,0,2,255,255,252,3,255,255,248,0,2,255,255,255,147,255,255,248,0,0,0,0,15,240,0,0,0,0,0,0,0,63,192,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,63,240,0,255,64,0,0,0,1,255,192,0,63,224,0,0,0,11,255,0,0,31,253,0,0,0,191,252,0,0,3,255,208,0,27,255,224,0,0,0,255,253,0,255,255,255,253,11,255,255,255,224,127,255,255,253,11,255,255,255,208,47,255,255,253,11,255,255,255,128,0,252,0,189,11,208,3,240,0,0,252,0,189,11,208,3,240,0,0,252,0,189,11,208,3,240,0,0,252,0,189,11,208,3,240,0,0,252,0,189,11,208,3,240,0,0,255,255,253,11,255,255,240,0,0,255,255,253,11,255,255,240,0,0,255,255,253,11,255,255,240,0,0,252,0,189,11,208,3,240,0,0,0,0,0,0,0,0,0,0, + // 0x5674 噴 + 116,86,33,35,59,36,2,252,0,0,0,0,0,252,0,0,0,0,0,0,0,0,252,0,0,0,0,0,0,85,85,253,85,84,0,0,0,0,255,255,255,255,252,0,127,255,240,255,255,255,255,252,0,127,255,240,0,0,252,0,0,0,127,255,240,7,208,252,47,0,0,125,3,240,7,208,168,47,0,0,125,3,241,91,229,85,127,85,0,125,3,251,255,255,255,255,255,128,125,3,251,255,255,255,255,255,128,125,3,240,7,208,0,47,0,0,125,3,240,7,208,0,47,0,0,125,3,240,0,0,0,0,0,0,125,3,240,127,255,255,255,240,0,125,3,240,127,255,255,255,240,0,125,3,240,126,0,0,3,240,0,125,3,240,126,0,0,3,240,0,125,3,240,127,255,255,255,240,0,125,3,240,127,255,255,255,240,0,125,3,240,126,0,0,3,240,0,127,255,240,126,0,0,3,240,0,127,255,240,127,255,255,255,240,0,127,255,240,127,255,255,255,240,0,125,0,0,126,0,0,3,240,0,125,0,0,126,0,0,3,240,0,61,0,0,127,255,255,255,240,0,0,0,0,127,255,255,255,240,0,0,0,0,2,228,0,248,0,0,0,0,0,31,252,2,255,64,0,0,0,6,255,224,0,127,244,0,0,0,127,255,0,0,11,254,0,0,0,63,228,0,0,0,255,64,0,0,14,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0, + // 0x56de 回 + 222,86,30,33,8,36,3,253,85,85,85,85,85,85,85,80,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,253,0,255,255,255,240,11,240,253,0,255,255,255,240,11,240,253,0,255,255,255,240,11,240,253,0,252,0,7,240,11,240,253,0,252,0,7,240,11,240,253,0,252,0,7,240,11,240,253,0,252,0,7,240,11,240,253,0,252,0,7,240,11,240,253,0,252,0,7,240,11,240,253,0,252,0,7,240,11,240,253,0,252,0,7,240,11,240,253,0,255,255,255,240,11,240,253,0,255,255,255,240,11,240,253,0,255,255,255,240,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,254,0,0,0,0,0,11,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240, + // 0x56e0 因 + 224,86,30,32,0,36,3,253,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,253,0,0,0,0,0,7,240,253,0,0,26,64,0,7,240,253,0,0,47,64,0,7,240,253,0,0,63,64,0,7,240,253,0,0,63,64,0,7,240,253,0,0,63,0,0,7,240,253,0,0,63,0,0,7,240,253,63,255,255,255,255,199,240,253,63,255,255,255,255,199,240,253,63,255,255,255,255,199,240,253,0,0,127,192,0,7,240,253,0,0,191,208,0,7,240,253,0,0,255,240,0,7,240,253,0,1,255,240,0,7,240,253,0,3,249,252,0,7,240,253,0,7,240,253,0,7,240,253,0,31,240,191,64,7,240,253,0,127,192,63,208,7,240,253,1,255,64,15,248,7,240,253,31,253,0,7,255,135,240,253,63,240,0,0,255,135,240,253,31,128,0,0,47,7,240,253,4,0,0,0,0,7,240,253,0,0,0,0,0,7,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,7,240, + // 0x56fa 固 + 250,86,30,32,0,36,3,253,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,253,0,0,0,0,0,11,240,253,0,0,21,64,0,11,240,253,0,0,47,128,0,11,240,253,0,0,47,128,0,11,240,253,0,0,47,128,0,11,240,253,26,170,191,234,170,139,240,253,47,255,255,255,255,139,240,253,47,255,255,255,255,139,240,253,0,0,47,128,0,11,240,253,0,0,47,128,0,11,240,253,0,0,47,128,0,11,240,253,1,170,191,234,164,11,240,253,2,255,255,255,252,11,240,253,2,255,255,255,252,11,240,253,2,244,0,1,252,11,240,253,2,244,0,1,252,11,240,253,2,244,0,1,252,11,240,253,2,244,0,1,252,11,240,253,2,254,170,170,252,11,240,253,2,255,255,255,252,11,240,253,2,255,255,255,252,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,254,0,0,0,0,0,11,240,253,0,0,0,0,0,7,240, + // 0x56fe 图 + 254,86,30,33,8,36,3,252,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,252,0,1,64,0,0,7,240,252,0,3,244,0,0,7,240,252,0,15,224,0,0,7,240,252,0,63,255,255,253,7,240,252,0,255,255,255,255,7,240,252,3,254,170,171,252,7,240,252,31,255,0,11,240,7,240,252,191,239,208,47,208,7,240,252,62,11,249,255,0,7,240,252,4,1,255,252,0,7,240,252,0,1,255,248,0,7,240,252,0,47,255,255,208,7,240,252,27,255,244,191,255,151,240,254,255,255,64,11,255,247,240,252,191,226,144,0,111,199,240,252,121,7,255,128,0,71,240,252,0,2,255,253,0,7,240,252,0,0,7,255,0,7,240,252,0,0,0,45,0,7,240,252,0,255,228,0,0,7,240,252,3,255,255,228,0,7,240,252,0,27,255,255,228,7,240,252,0,0,6,255,244,7,240,252,0,0,0,7,240,7,240,252,0,0,0,0,0,7,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,252,0,0,0,0,0,7,240,0,0,0,0,0,0,0,0, + // 0x5728 在 + 40,87,33,34,50,36,1,253,0,0,0,100,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,0,0,47,192,0,0,0,0,0,0,0,127,128,0,20,0,0,0,0,0,255,0,0,190,0,0,0,0,2,253,0,0,190,0,0,0,0,7,252,0,0,190,0,0,0,0,15,240,0,0,190,0,0,0,0,63,208,0,0,190,0,0,0,0,191,192,0,0,190,0,0,0,2,255,192,127,255,255,255,253,0,15,255,192,127,255,255,255,253,0,63,255,192,127,255,255,255,253,0,127,223,192,0,0,254,0,0,0,63,31,192,0,0,190,0,0,0,24,31,192,0,0,190,0,0,0,0,31,192,0,0,190,0,0,0,0,31,192,0,0,190,0,0,0,0,31,192,0,0,190,0,0,0,0,31,192,0,0,190,0,0,0,0,31,192,0,0,190,0,0,0,0,31,192,0,0,190,0,0,0,0,31,192,0,0,254,0,0,0,0,31,195,255,255,255,255,255,128,0,31,195,255,255,255,255,255,128,0,31,195,255,255,255,255,255,128,0,31,192,0,0,0,0,0,0, + // 0x574f 坏 + 79,87,34,34,50,36,1,253,0,42,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,1,255,255,255,255,255,208,0,63,1,255,255,255,255,255,208,0,63,1,255,255,255,255,255,208,0,63,0,0,0,15,240,0,0,0,63,0,0,0,31,224,0,0,0,63,0,0,0,63,192,0,0,0,63,0,0,0,191,128,0,0,63,255,255,0,0,255,0,0,0,63,255,255,0,3,254,0,0,0,63,255,255,0,15,254,32,0,0,0,63,64,0,47,254,253,0,0,0,63,0,0,191,255,255,128,0,0,63,0,2,255,254,63,224,0,0,63,0,15,253,190,15,252,0,0,63,0,127,240,190,2,255,0,0,63,3,255,192,190,0,191,192,0,63,7,255,0,190,0,47,240,0,63,2,248,0,190,0,11,192,0,63,0,144,0,190,0,2,0,0,63,7,64,0,190,0,0,0,0,63,255,64,0,190,0,0,0,0,127,255,128,0,190,0,0,0,27,255,254,0,0,190,0,0,0,191,255,208,0,0,190,0,0,0,127,248,0,0,0,190,0,0,0,63,64,0,0,0,190,0,0,0,16,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0, + // 0x5757 块 + 87,87,33,35,59,36,1,252,0,21,0,0,1,164,0,0,0,0,63,0,0,2,248,0,0,0,0,63,0,0,2,248,0,0,0,0,63,0,0,2,248,0,0,0,0,63,0,0,2,248,0,0,0,0,63,0,0,2,248,0,0,0,0,63,0,31,255,255,255,248,0,0,63,0,31,255,255,255,248,0,0,63,64,31,255,255,255,248,0,63,255,255,0,2,248,2,248,0,63,255,255,0,2,248,1,248,0,63,255,255,0,2,248,1,248,0,0,63,0,0,2,248,1,248,0,0,63,0,0,2,248,1,248,0,0,63,0,0,2,248,1,248,0,0,63,0,0,2,248,1,248,0,0,63,0,0,2,248,2,248,0,0,63,0,191,255,255,255,255,192,0,63,0,191,255,255,255,255,192,0,63,0,191,255,255,255,255,192,0,63,11,0,7,255,128,0,0,0,63,255,0,11,255,192,0,0,0,63,255,64,15,239,208,0,0,6,255,253,0,31,199,240,0,0,127,255,208,0,63,195,248,0,0,127,249,0,0,191,66,252,0,0,63,128,0,1,255,0,255,0,0,40,0,0,3,252,0,127,192,0,0,0,0,31,248,0,63,240,0,0,0,0,191,224,0,15,253,0,0,0,7,255,128,0,3,255,128,0,0,31,254,0,0,0,255,192,0,0,11,240,0,0,0,63,64,0,0,3,64,0,0,0,6,0,0,0,0,0,0,0,0,0,0, + // 0x578b 型 + 139,87,32,33,8,36,2,254,0,0,0,0,0,0,3,240,31,255,255,255,224,0,3,240,31,255,255,255,224,190,3,240,31,255,255,255,224,190,3,240,0,63,1,252,0,190,3,240,0,63,1,252,0,190,3,240,0,63,1,252,0,190,3,240,0,63,1,252,0,190,3,240,0,63,1,252,0,190,3,240,191,255,255,255,248,190,3,240,191,255,255,255,248,190,3,240,191,255,255,255,248,190,3,240,0,190,1,252,0,190,3,240,0,253,1,252,0,190,3,240,1,252,1,252,0,20,3,240,3,248,1,252,0,0,3,240,15,240,1,252,0,0,3,240,127,208,1,252,0,11,255,240,191,128,1,252,0,3,255,240,62,0,0,175,240,3,255,128,4,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,1,255,255,255,255,255,255,64,1,255,255,255,255,255,255,64,1,255,255,255,255,255,255,64,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x57ab 垫 + 171,87,33,33,41,36,2,254,0,47,64,0,11,208,0,0,0,0,47,64,0,11,208,0,0,0,0,47,64,0,11,208,0,0,0,0,47,128,0,11,208,0,0,0,255,255,255,143,255,255,255,128,0,255,255,255,143,255,255,255,128,0,255,255,255,143,255,255,255,128,0,0,47,64,0,15,192,31,128,0,0,47,64,0,15,192,31,128,0,0,47,65,71,159,192,31,128,0,0,47,255,207,255,128,31,128,0,91,255,255,203,255,128,31,128,0,255,255,254,64,255,208,31,128,0,255,255,128,0,127,248,31,128,0,185,47,64,0,255,255,95,128,0,0,47,64,2,252,191,79,139,64,0,47,64,11,244,31,15,203,192,0,47,64,63,224,0,15,207,192,47,255,64,255,128,0,11,255,128,15,255,0,62,0,0,3,255,0,15,248,0,31,224,0,0,189,0,0,0,0,11,224,0,0,0,0,0,0,0,11,224,0,0,0,0,2,255,255,255,255,255,255,128,0,2,255,255,255,255,255,255,128,0,1,255,255,255,255,255,255,128,0,0,0,0,11,224,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,11,224,0,0,0,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0, + // 0x586b 填 + 107,88,34,35,59,36,1,252,0,21,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,1,255,255,255,255,255,192,0,63,1,255,255,255,255,255,192,0,63,1,255,255,255,255,255,192,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,11,255,255,255,244,0,63,255,254,11,255,255,255,244,0,63,255,254,11,208,0,3,244,0,63,255,254,11,208,0,3,244,0,0,63,0,11,255,255,255,244,0,0,63,0,11,255,255,255,244,0,0,63,0,11,208,0,3,244,0,0,63,0,11,208,0,3,244,0,0,63,0,11,255,255,255,244,0,0,63,0,11,255,255,255,244,0,0,63,0,11,208,0,3,244,0,0,63,0,11,208,0,3,244,0,0,63,11,11,255,255,255,244,0,0,63,255,11,255,255,255,244,0,0,63,255,64,0,0,0,0,0,2,255,254,0,0,0,0,0,0,111,255,235,255,255,255,255,255,208,191,254,11,255,255,255,255,255,224,63,208,11,255,255,255,255,255,224,61,0,0,0,16,0,8,0,0,0,0,0,1,255,0,127,64,0,0,0,0,11,253,0,127,224,0,0,0,1,191,240,0,11,253,0,0,0,15,255,128,0,1,255,128,0,0,11,248,0,0,0,63,208,0,0,2,144,0,0,0,10,0,0,0,0,0,0,0,0,0,0, + // 0x58f3 壳 + 243,88,32,34,16,36,2,253,0,0,0,11,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,106,170,170,175,250,170,170,169,0,0,0,15,224,0,0,0,1,85,85,95,245,85,85,64,2,255,255,255,255,255,255,192,2,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,170,170,170,170,170,170,252,63,0,0,0,0,0,0,252,63,5,85,85,85,85,80,252,63,15,255,255,255,255,240,252,0,15,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,255,0,0,0,3,255,255,255,255,0,0,0,3,255,255,255,255,0,0,0,3,244,0,0,191,0,0,0,3,244,0,0,191,0,0,0,7,240,0,0,191,0,16,0,15,240,0,0,191,0,61,0,63,208,0,0,191,0,63,2,255,128,0,0,127,0,126,111,254,0,0,0,127,255,253,127,248,0,0,0,63,255,252,63,128,0,0,0,31,255,240,8,0,0,0,0,0,0,0, + // 0x5907 备 + 7,89,34,35,59,36,1,252,0,0,0,249,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,47,255,255,255,253,0,0,0,0,191,255,255,255,255,0,0,0,3,255,255,255,255,253,0,0,0,31,253,0,0,11,248,0,0,0,191,255,128,0,63,240,0,0,11,255,191,224,1,255,192,0,0,11,253,15,253,11,254,0,0,0,3,224,2,255,255,244,0,0,0,0,0,0,127,255,192,0,0,0,0,0,1,255,255,249,0,0,0,0,0,127,255,255,255,228,0,0,1,175,255,254,11,255,255,250,64,191,255,255,208,0,111,255,255,224,127,255,244,0,0,1,191,255,192,63,249,0,0,0,0,1,175,0,20,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,64,3,248,0,63,192,0,0,63,64,3,248,0,63,192,0,0,63,64,3,248,0,63,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,234,171,254,170,191,192,0,0,63,64,3,248,0,63,192,0,0,63,64,3,248,0,63,192,0,0,63,64,3,248,0,63,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,64,0,0,0,63,128,0,0,0,0,0,0,0,0,0,0, + // 0x590d 复 + 13,89,24,35,210,36,6,252,0,15,128,0,0,0,0,31,192,0,0,0,0,63,128,0,0,0,0,191,255,255,255,224,0,255,255,255,255,240,3,255,255,255,255,240,11,244,0,0,0,0,31,240,0,0,0,0,127,224,0,0,0,0,255,255,255,255,255,0,190,255,255,255,255,0,24,189,0,0,63,0,0,189,0,0,63,0,0,191,255,255,255,0,0,191,255,255,255,0,0,189,0,0,63,0,0,189,0,0,63,0,0,191,255,255,255,0,0,191,255,255,255,0,0,1,254,0,0,0,0,3,252,0,0,0,0,15,255,255,254,0,0,63,255,255,255,0,1,255,149,86,254,0,11,255,192,3,252,0,191,251,244,15,244,0,127,130,254,127,208,0,28,0,191,255,64,0,0,0,63,254,0,0,0,6,255,255,224,0,1,191,255,191,255,148,127,255,228,11,255,253,63,254,0,0,191,248,30,64,0,0,1,176,0,0,0,0,0,0, + // 0x5916 外 + 22,89,34,34,50,36,1,253,0,0,164,0,0,3,244,0,0,0,0,254,0,0,3,244,0,0,0,0,253,0,0,3,244,0,0,0,2,252,0,0,3,244,0,0,0,3,248,0,0,3,244,0,0,0,3,248,0,0,3,244,0,0,0,11,255,255,248,3,244,0,0,0,15,255,255,252,3,244,0,0,0,31,255,255,252,3,244,0,0,0,63,192,3,255,3,244,0,0,0,127,64,3,255,195,244,0,0,0,255,0,7,255,211,244,0,0,2,252,0,11,251,243,244,0,0,7,252,0,15,227,255,244,0,0,15,254,0,15,208,255,244,0,0,63,255,208,31,192,127,244,0,0,255,175,248,63,128,47,244,0,0,47,7,255,127,64,15,248,0,0,8,0,255,255,0,3,255,0,0,0,0,47,254,0,3,255,208,0,0,0,11,252,0,3,255,248,0,0,0,3,248,0,3,255,255,64,0,0,15,240,0,3,246,255,240,0,0,47,208,0,3,244,127,224,0,0,63,192,0,3,244,11,128,0,0,255,64,0,3,244,1,0,0,3,254,0,0,3,244,0,0,0,15,248,0,0,3,244,0,0,0,63,240,0,0,3,244,0,0,1,255,192,0,0,3,244,0,0,15,255,0,0,0,3,244,0,0,47,248,0,0,0,3,244,0,0,11,208,0,0,0,3,244,0,0,2,0,0,0,0,3,244,0,0, + // 0x591a 多 + 26,89,32,35,24,36,2,252,0,0,0,46,64,0,0,0,0,0,0,191,192,0,0,0,0,0,2,255,0,0,0,0,0,0,11,255,255,255,224,0,0,0,127,255,255,255,244,0,0,2,255,255,255,255,224,0,0,47,253,0,0,63,192,0,6,255,252,0,0,255,64,0,63,255,255,128,3,253,0,0,31,244,127,244,15,248,0,0,11,64,11,254,127,224,0,0,0,0,1,255,255,64,0,0,0,0,0,127,253,64,0,0,0,0,2,255,231,252,0,0,0,0,127,255,79,244,0,0,0,27,255,244,127,224,0,0,26,255,255,66,255,255,255,248,127,255,224,15,255,255,255,253,47,249,0,191,255,255,255,252,25,0,11,255,128,0,11,244,0,0,191,253,0,0,31,240,0,31,255,255,64,0,63,192,0,127,253,191,240,0,255,64,0,31,144,31,253,3,254,0,0,8,0,2,255,159,248,0,0,0,0,0,127,255,224,0,0,0,0,0,31,255,64,0,0,0,0,0,191,252,0,0,0,0,0,27,255,224,0,0,0,0,22,255,254,0,0,0,0,91,255,255,224,0,0,0,2,255,255,249,0,0,0,0,0,255,254,64,0,0,0,0,0,186,64,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5927 大 + 39,89,32,34,16,36,2,253,0,0,0,15,224,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,85,85,85,111,229,85,85,85,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,0,0,0,63,252,0,0,0,0,0,0,127,253,0,0,0,0,0,0,191,254,0,0,0,0,0,0,255,191,0,0,0,0,0,1,254,127,64,0,0,0,0,2,252,63,192,0,0,0,0,3,252,31,224,0,0,0,0,11,244,15,240,0,0,0,0,31,240,11,252,0,0,0,0,63,208,3,253,0,0,0,0,191,192,0,255,64,0,0,2,255,0,0,191,208,0,0,11,253,0,0,63,244,0,0,47,248,0,0,15,253,0,0,255,224,0,0,3,255,128,7,255,128,0,0,0,255,240,127,254,0,0,0,0,63,254,255,244,0,0,0,0,15,254,63,128,0,0,0,0,1,252,8,0,0,0,0,0,0,32, + // 0x5929 天 + 41,89,33,33,41,36,2,252,85,85,85,85,85,85,85,85,0,191,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,254,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,47,255,255,255,255,255,255,252,0,47,255,255,255,255,255,255,252,0,47,255,255,255,255,255,255,252,0,21,85,85,127,249,85,85,84,0,0,0,0,63,252,0,0,0,0,0,0,0,63,253,0,0,0,0,0,0,0,127,255,0,0,0,0,0,0,0,255,191,0,0,0,0,0,0,1,254,63,192,0,0,0,0,0,3,252,47,224,0,0,0,0,0,15,248,15,244,0,0,0,0,0,63,240,7,252,0,0,0,0,0,255,208,2,255,64,0,0,0,7,255,64,0,255,208,0,0,0,47,253,0,0,63,253,0,0,2,255,244,0,0,15,255,208,0,127,255,128,0,0,2,255,254,64,255,253,0,0,0,0,127,255,0,127,208,0,0,0,0,7,253,0,57,0,0,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0, + // 0x592a 太 + 42,89,34,35,59,36,1,252,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,21,85,85,91,245,85,85,85,64,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,0,0,0,15,255,0,0,0,0,0,0,0,31,255,128,0,0,0,0,0,0,47,255,192,0,0,0,0,0,0,63,159,208,0,0,0,0,0,0,63,79,224,0,0,0,0,0,0,191,11,240,0,0,0,0,0,0,255,3,248,0,0,0,0,0,1,253,3,252,0,0,0,0,0,3,252,1,255,0,0,0,0,0,11,248,0,191,64,0,0,0,0,31,240,0,63,192,0,0,0,0,63,215,0,47,240,0,0,0,0,255,239,208,15,248,0,0,0,3,255,63,244,7,254,0,0,0,15,253,11,253,2,255,128,0,0,127,244,2,255,64,191,240,0,2,255,208,0,191,208,47,253,0,47,255,64,0,63,240,11,255,208,127,252,0,0,15,224,2,255,208,31,208,0,0,3,64,0,127,64,10,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0, + // 0x5931 失 + 49,89,33,35,59,36,2,252,0,4,0,15,224,0,0,0,0,0,15,208,15,224,0,0,0,0,0,47,192,15,224,0,0,0,0,0,63,192,15,224,0,0,0,0,0,63,128,15,224,0,0,0,0,0,191,0,15,224,0,0,0,0,0,255,255,255,255,255,255,192,0,1,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,192,0,11,249,85,95,229,85,85,64,0,15,240,0,15,224,0,0,0,0,47,208,0,15,224,0,0,0,0,127,192,0,15,224,0,0,0,0,127,64,0,15,208,0,0,0,0,10,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,85,85,85,111,229,85,85,85,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,0,0,0,127,252,0,0,0,0,0,0,0,255,255,0,0,0,0,0,0,1,254,127,64,0,0,0,0,0,3,252,63,192,0,0,0,0,0,11,248,31,240,0,0,0,0,0,47,240,15,252,0,0,0,0,0,191,208,3,254,0,0,0,0,3,255,128,0,255,208,0,0,0,47,254,0,0,63,248,0,0,2,255,244,0,0,31,255,144,0,111,255,192,0,0,2,255,254,64,255,253,0,0,0,0,127,255,64,127,208,0,0,0,0,7,254,0,41,0,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0, + // 0x5934 头 + 52,89,32,34,16,36,2,253,0,0,0,0,42,0,0,0,0,4,0,0,63,0,0,0,0,31,128,0,63,0,0,0,0,63,253,0,63,0,0,0,0,31,255,128,63,0,0,0,0,1,255,244,127,0,0,0,0,0,31,244,127,0,0,0,0,0,2,224,127,0,0,0,1,0,0,64,127,0,0,0,7,224,0,0,127,0,0,0,15,254,0,0,127,0,0,0,7,255,224,0,127,0,0,0,0,127,252,0,191,0,0,0,0,7,253,0,191,0,0,0,0,0,248,0,254,0,0,0,0,0,16,0,254,0,0,0,0,0,0,0,253,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,7,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,31,224,0,0,0,0,0,0,63,194,0,0,0,0,0,0,191,143,224,0,0,0,0,2,255,31,254,0,0,0,0,11,252,2,255,224,0,0,0,127,240,0,63,253,0,0,3,255,192,0,7,255,128,0,127,255,0,0,0,191,244,27,255,244,0,0,0,15,254,191,255,128,0,0,0,2,254,63,244,0,0,0,0,0,120,25,0,0,0,0,0,0,0, + // 0x597d 好 + 125,89,34,35,59,36,1,252,0,30,128,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,47,128,3,255,255,255,254,0,0,63,64,3,255,255,255,255,128,0,63,0,3,255,255,255,255,0,0,63,0,0,0,0,3,253,0,0,127,0,0,0,0,7,248,0,0,190,0,0,0,0,15,240,0,127,255,255,240,0,0,63,192,0,127,255,255,240,0,0,255,0,0,127,255,255,240,0,11,252,0,0,1,252,3,240,0,15,240,0,0,2,248,7,240,0,15,208,0,0,3,244,7,224,0,15,208,0,0,3,240,11,224,0,15,208,0,0,3,240,15,223,255,255,255,255,224,7,224,15,223,255,255,255,255,224,11,208,15,207,255,255,255,255,224,15,192,47,192,0,15,208,0,0,15,192,63,128,0,15,208,0,0,31,244,63,64,0,15,208,0,0,47,254,191,0,0,15,208,0,0,63,255,254,0,0,15,208,0,0,11,63,253,0,0,15,208,0,0,0,11,254,0,0,15,208,0,0,0,7,255,128,0,15,208,0,0,0,15,255,224,0,15,208,0,0,0,47,223,248,0,15,208,0,0,0,127,131,248,0,15,208,0,0,1,255,0,240,0,15,208,0,0,11,252,0,0,0,31,208,0,0,63,244,0,0,63,255,192,0,0,31,208,0,0,47,255,192,0,0,10,0,0,0,31,253,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x59cb 始 + 203,89,34,34,50,36,1,253,0,30,128,0,0,57,0,0,0,0,31,192,0,0,127,64,0,0,0,47,128,0,0,191,0,0,0,0,63,64,0,0,254,0,0,0,0,63,0,0,0,253,0,0,0,0,63,0,0,2,252,0,0,0,0,127,0,0,3,248,1,128,0,0,190,0,0,3,244,15,208,0,127,255,255,240,7,240,11,240,0,127,255,255,240,11,224,3,248,0,127,255,255,240,15,192,1,253,0,1,248,3,240,31,192,0,191,0,2,244,7,241,127,235,255,255,128,3,240,7,235,255,255,255,255,192,3,240,11,235,255,255,255,255,224,7,240,15,215,250,165,64,11,240,11,224,15,192,0,0,0,3,128,15,208,31,192,0,0,0,0,0,15,192,47,128,0,0,0,0,0,31,192,63,64,127,255,255,255,0,47,244,63,0,127,255,255,255,0,63,255,191,0,127,255,255,255,0,63,255,254,0,127,0,0,127,0,6,47,252,0,127,0,0,127,0,0,7,255,0,127,0,0,127,0,0,11,255,192,127,0,0,127,0,0,15,255,240,127,0,0,127,0,0,63,203,252,127,0,0,127,0,0,255,66,244,127,0,0,127,0,3,254,0,160,127,255,255,255,0,31,252,0,0,127,255,255,255,0,47,224,0,0,127,255,255,255,0,15,128,0,0,127,0,0,127,0,5,0,0,0,126,0,0,42,0, + // 0x5b50 子 + 80,91,33,33,41,36,2,252,0,85,85,85,85,85,84,0,0,2,255,255,255,255,255,255,64,0,2,255,255,255,255,255,255,192,0,2,255,255,255,255,255,255,64,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,127,240,0,0,0,0,0,0,2,255,128,0,0,0,0,0,0,31,253,0,0,0,0,0,0,6,255,240,0,0,0,0,0,0,11,255,64,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,85,85,85,95,245,85,85,85,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,1,85,95,224,0,0,0,0,0,1,255,255,224,0,0,0,0,0,0,255,255,192,0,0,0,0,0,0,191,249,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5b58 存 + 88,91,34,34,50,36,1,253,0,0,0,185,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,3,253,0,0,0,0,0,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,0,0,47,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,2,253,11,255,255,255,240,0,0,7,252,11,255,255,255,252,0,0,15,240,11,255,255,255,240,0,0,47,224,0,0,0,63,192,0,0,191,192,0,0,1,255,0,0,2,255,192,0,0,7,252,0,0,11,255,192,0,0,63,224,0,0,63,255,192,0,0,63,128,0,0,191,255,192,0,0,63,64,0,0,63,95,194,255,255,255,255,255,208,44,31,194,255,255,255,255,255,208,0,31,194,255,255,255,255,255,208,0,31,192,0,0,63,64,0,0,0,31,192,0,0,63,64,0,0,0,31,192,0,0,63,64,0,0,0,31,192,0,0,63,64,0,0,0,31,192,0,0,63,64,0,0,0,31,192,0,0,63,64,0,0,0,31,192,0,0,127,64,0,0,0,31,192,1,255,255,0,0,0,0,31,192,0,255,255,0,0,0,0,31,192,0,255,248,0,0,0, + // 0x5b89 安 + 137,91,32,35,24,36,2,252,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,64,0,0,0,0,1,252,63,64,0,16,0,0,1,252,63,64,0,191,0,0,1,252,63,64,0,254,0,0,1,252,63,64,2,252,0,0,1,252,0,0,3,248,0,0,0,0,0,0,11,240,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,255,64,0,31,224,0,0,0,254,0,0,47,192,0,0,3,252,0,0,63,192,0,0,7,248,0,0,127,64,0,0,15,240,0,0,255,0,0,0,31,244,0,2,253,0,0,0,63,255,144,7,252,0,0,0,127,255,254,95,240,0,0,0,191,47,255,255,208,0,0,0,5,1,191,255,208,0,0,0,0,0,31,255,253,0,0,0,0,1,255,255,255,208,0,0,0,127,255,130,255,253,0,5,191,255,248,0,47,255,208,47,255,255,128,0,2,255,240,15,255,228,0,0,0,47,192,7,164,0,0,0,0,7,0,0,0,0,0,0,0,0,0, + // 0x5b8c 完 + 140,91,32,34,16,36,2,253,0,0,0,11,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,64,0,0,0,0,1,252,63,64,0,0,0,0,1,252,63,64,0,0,0,0,1,252,63,64,0,0,0,0,1,252,63,75,255,255,255,255,209,252,0,11,255,255,255,255,208,0,0,11,255,255,255,255,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,63,128,15,224,0,0,0,0,63,64,11,224,0,0,0,0,127,0,11,224,0,0,0,0,191,0,11,224,0,0,0,0,255,0,11,224,0,0,0,1,253,0,11,224,0,16,0,3,252,0,11,224,0,62,0,15,248,0,11,224,0,63,0,127,240,0,11,224,0,63,6,255,192,0,11,240,0,127,191,255,0,0,11,255,255,254,255,248,0,0,3,255,255,253,127,128,0,0,1,255,255,244,36,0,0,0,0,0,0,0, + // 0x5b9a 定 + 154,91,33,35,59,36,1,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,208,0,0,0,0,0,127,0,15,192,0,0,0,0,0,127,0,15,192,0,0,0,0,0,127,0,15,192,0,0,0,0,0,127,0,15,195,255,255,255,255,252,127,0,5,67,255,255,255,255,252,21,0,0,3,255,255,255,255,252,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,7,224,3,248,0,0,0,0,0,7,240,3,248,0,0,0,0,0,11,240,3,248,0,0,0,0,0,15,224,3,255,255,255,192,0,0,15,208,3,255,255,255,192,0,0,31,224,3,255,255,255,192,0,0,47,240,3,248,0,0,0,0,0,63,244,3,248,0,0,0,0,0,127,252,3,248,0,0,0,0,0,255,255,3,248,0,0,0,0,1,253,63,211,248,0,0,0,0,3,252,31,251,248,0,0,0,0,11,244,7,255,253,0,0,0,0,47,240,1,255,255,255,255,255,192,127,192,0,47,255,255,255,255,128,47,64,0,1,191,255,255,255,64,9,0,0,0,0,5,85,85,0,0,0,0,0,0,0,0,0,0, + // 0x5ba2 客 + 162,91,34,34,50,36,1,253,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,192,0,80,0,0,0,127,0,15,192,0,255,0,0,0,127,0,15,192,3,253,0,0,0,127,0,15,192,15,254,170,170,128,127,0,0,0,63,255,255,255,244,0,0,0,0,255,255,255,255,240,0,0,0,7,255,64,0,47,208,0,0,0,127,255,208,0,191,128,0,0,3,255,223,248,2,255,0,0,0,3,254,3,255,31,248,0,0,0,0,244,0,191,255,224,0,0,0,0,0,0,47,255,128,0,0,0,0,0,0,191,255,244,0,0,0,0,0,27,255,255,255,208,0,0,0,2,255,254,11,255,255,164,0,1,191,255,224,0,191,255,255,208,127,255,253,0,0,6,255,255,128,63,255,255,255,255,255,255,255,0,31,147,255,255,255,255,252,5,0,0,3,255,255,255,255,252,0,0,0,3,244,0,0,1,252,0,0,0,3,244,0,0,1,252,0,0,0,3,244,0,0,1,252,0,0,0,3,244,0,0,1,252,0,0,0,3,255,255,255,255,252,0,0,0,3,255,255,255,255,252,0,0,0,3,255,255,255,255,252,0,0,0,3,244,0,0,1,252,0,0, + // 0x5bab 宫 + 171,91,30,35,24,36,3,252,0,0,0,110,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,254,85,85,85,85,85,91,240,253,0,0,0,0,0,7,240,253,0,0,0,0,0,7,240,253,42,170,170,170,170,135,240,253,63,255,255,255,255,199,240,0,63,255,255,255,255,192,0,0,63,0,0,0,15,192,0,0,63,0,0,0,15,192,0,0,63,0,0,0,15,192,0,0,63,170,170,170,175,192,0,0,63,255,255,255,255,192,0,0,63,255,255,255,255,192,0,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,255,255,255,255,255,254,0,7,255,255,255,255,255,254,0,7,255,255,255,255,255,254,0,7,240,0,0,0,0,190,0,7,240,0,0,0,0,190,0,7,240,0,0,0,0,190,0,7,240,0,0,0,0,190,0,7,240,0,0,0,0,190,0,7,255,255,255,255,255,254,0,7,255,255,255,255,255,254,0,7,255,255,255,255,255,254,0,7,240,0,0,0,0,190,0,0,0,0,0,0,0,0,0, + // 0x5bf9 对 + 249,91,33,34,50,36,2,253,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,127,255,255,248,0,0,63,64,0,127,255,255,248,0,0,63,64,0,127,255,255,244,0,0,63,64,0,0,0,3,244,0,0,63,128,0,0,0,3,242,255,255,255,255,64,0,0,7,242,255,255,255,255,64,0,0,11,242,255,255,255,255,64,1,0,11,224,0,0,63,64,0,15,128,15,208,0,0,63,64,0,47,224,31,192,0,0,63,64,0,15,248,47,192,4,0,63,64,0,3,254,63,128,188,0,63,64,0,0,255,191,64,254,0,63,64,0,0,63,255,0,127,64,63,64,0,0,15,255,0,63,192,63,64,0,0,3,254,0,15,208,63,64,0,0,2,255,64,15,224,63,64,0,0,3,255,192,7,240,63,64,0,0,15,255,240,3,240,63,64,0,0,31,239,248,2,64,63,64,0,0,63,195,252,0,0,63,64,0,0,191,129,255,0,0,63,64,0,1,255,0,190,0,0,63,64,0,7,252,0,52,0,0,63,64,0,31,244,0,0,0,0,63,64,0,127,224,0,0,0,165,191,64,0,255,128,0,0,0,255,255,0,0,62,0,0,0,0,255,254,0,0,20,0,0,0,0,191,228,0,0, + // 0x5c06 将 + 6,92,34,34,50,36,1,253,0,3,240,0,0,0,6,224,0,0,3,240,0,0,22,255,248,0,0,3,240,5,175,255,255,252,0,0,3,242,255,255,255,254,64,0,4,3,241,255,255,233,0,0,0,126,3,240,233,64,16,0,20,0,63,67,240,0,2,244,0,63,64,47,195,240,109,2,248,0,191,64,15,211,240,127,0,252,0,254,0,11,243,240,63,64,253,3,252,0,3,247,240,47,128,190,7,244,0,3,255,240,15,192,126,15,224,0,1,231,240,15,208,100,63,192,0,0,3,240,11,128,0,191,0,0,0,3,240,0,0,0,127,64,0,0,3,240,0,0,0,47,128,0,0,3,240,0,0,0,47,128,0,0,3,242,255,255,255,255,255,224,0,3,242,255,255,255,255,255,224,0,11,242,255,255,255,255,255,224,0,127,240,0,0,0,47,128,0,2,255,240,0,128,0,47,128,0,31,255,240,11,240,0,47,128,0,191,251,240,7,248,0,47,128,0,191,195,240,2,253,0,47,128,0,63,3,240,0,255,0,47,128,0,40,3,240,0,127,128,47,128,0,0,3,240,0,47,192,47,128,0,0,3,240,0,15,64,47,128,0,0,3,240,0,4,0,47,128,0,0,3,240,0,0,0,63,128,0,0,3,240,0,0,191,255,128,0,0,3,240,0,0,127,255,0,0,0,3,240,0,0,63,248,0,0, + // 0x5c0f 小 + 15,92,34,35,59,36,1,252,0,0,0,1,84,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,14,64,2,252,0,46,0,0,0,31,224,2,252,0,255,0,0,0,47,208,2,252,0,127,128,0,0,63,192,2,252,0,63,192,0,0,63,192,2,252,0,31,224,0,0,127,128,2,252,0,15,240,0,0,191,0,2,252,0,7,248,0,0,255,0,2,252,0,3,252,0,1,254,0,2,252,0,2,254,0,2,253,0,2,252,0,0,255,0,3,252,0,2,252,0,0,255,64,11,244,0,2,252,0,0,127,128,15,240,0,2,252,0,0,63,192,47,224,0,2,252,0,0,47,208,127,192,0,2,252,0,0,31,224,127,64,0,2,252,0,0,15,240,6,0,0,2,252,0,0,15,208,0,0,0,2,252,0,0,4,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,21,87,252,0,0,0,0,0,0,63,255,248,0,0,0,0,0,0,47,255,240,0,0,0,0,0,0,31,254,128,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5c31 就 + 49,92,34,35,59,36,1,252,0,0,252,0,0,7,224,0,0,0,0,252,0,0,7,224,80,0,0,0,252,0,0,7,227,240,0,0,0,252,0,0,7,226,252,0,0,0,252,0,0,7,224,254,0,63,255,255,255,240,7,224,127,64,63,255,255,255,240,7,224,47,192,63,255,255,255,240,7,224,15,128,0,0,0,0,0,7,224,4,0,0,0,0,0,0,11,240,0,0,3,255,255,255,79,255,255,255,208,7,255,255,255,79,255,255,255,208,7,255,255,255,79,255,255,255,208,7,240,0,47,64,11,224,0,0,7,240,0,47,64,15,228,0,0,7,240,0,47,64,15,254,0,0,7,240,0,47,64,15,254,0,0,7,255,255,255,64,15,254,0,0,7,255,255,255,64,31,254,0,0,7,255,255,255,64,47,254,0,0,0,0,253,0,0,63,254,0,0,0,0,253,4,0,63,190,0,0,3,240,253,63,0,127,126,0,0,7,240,253,63,0,191,126,0,0,11,224,253,47,128,254,126,0,0,15,208,253,15,194,252,126,1,0,15,192,253,15,211,248,126,2,208,47,128,253,7,235,244,126,2,240,63,64,253,2,95,240,126,2,240,191,0,253,0,63,192,126,3,224,44,0,252,0,255,128,127,71,224,0,127,252,3,255,0,63,255,208,0,63,252,2,252,0,63,255,192,0,63,224,0,112,0,15,255,64,0,0,0,0,0,0,0,0,0, + // 0x5c4f 屏 + 79,92,33,33,41,36,1,252,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,253,0,0,0,0,1,252,0,0,253,0,0,0,0,1,252,0,0,253,0,0,0,0,1,252,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,253,0,188,0,0,127,64,0,0,253,0,254,0,0,255,0,0,0,253,0,63,64,1,252,0,0,0,253,0,47,128,3,248,0,0,0,253,127,255,255,255,255,255,0,0,253,191,255,255,255,255,255,0,0,252,191,255,255,255,255,255,0,0,252,0,31,192,3,240,0,0,1,252,0,31,192,3,240,0,0,1,252,0,31,192,3,240,0,0,1,252,0,31,192,3,240,0,0,2,248,0,31,192,3,240,0,0,3,250,255,255,255,255,255,255,192,3,246,255,255,255,255,255,255,192,3,242,255,255,255,255,255,255,192,7,240,0,63,64,3,240,0,0,11,224,0,191,0,3,240,0,0,15,224,1,254,0,3,240,0,0,31,192,7,252,0,3,240,0,0,63,192,47,244,0,3,240,0,0,127,65,255,208,0,3,240,0,0,127,0,255,64,0,3,240,0,0,9,0,56,0,0,3,240,0,0,0,0,0,0,0,0,0,0,0, + // 0x5de5 工 + 229,93,32,28,224,36,2,255,15,255,255,255,255,255,255,244,15,255,255,255,255,255,255,244,15,255,255,255,255,255,255,244,5,85,85,95,245,85,85,80,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,85,85,85,85,85, + // 0x5dee 差 + 238,93,33,34,50,36,1,253,0,0,20,0,0,3,144,0,0,0,1,252,0,0,7,248,0,0,0,0,255,0,0,15,240,0,0,0,0,127,64,0,31,208,0,0,0,0,63,192,0,63,192,0,0,7,255,255,255,255,255,255,253,0,7,255,255,255,255,255,255,253,0,7,255,255,255,255,255,255,253,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,127,255,255,255,255,255,224,0,0,127,255,255,255,255,255,224,0,0,127,255,255,255,255,255,224,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,253,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,3,254,255,255,255,255,224,0,0,3,250,255,255,255,255,240,0,0,11,242,255,255,255,255,240,0,0,15,240,0,15,224,0,0,0,0,47,208,0,15,224,0,0,0,0,63,192,0,15,224,0,0,0,0,255,64,0,15,224,0,0,0,2,254,0,0,15,224,0,0,0,7,252,0,0,15,224,0,0,0,47,244,255,255,255,255,255,255,0,127,224,255,255,255,255,255,255,0,31,128,255,255,255,255,255,255,0,6,0,0,0,0,0,0,0,0, + // 0x5df2 已 + 242,93,31,31,248,36,3,254,191,255,255,255,255,255,248,0,191,255,255,255,255,255,248,0,191,255,255,255,255,255,248,0,21,85,85,85,85,87,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,15,224,0,0,0,3,248,0,15,224,0,0,0,3,248,0,15,224,0,0,0,3,248,0,15,224,0,0,0,3,248,0,15,224,0,0,0,3,248,0,15,229,85,85,85,87,248,0,15,255,255,255,255,255,248,0,15,255,255,255,255,255,248,0,15,255,255,255,255,255,248,0,15,224,0,0,0,3,248,0,15,224,0,0,0,2,248,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,208,15,224,0,0,0,0,1,252,15,224,0,0,0,0,1,252,15,224,0,0,0,0,2,252,15,224,0,0,0,0,3,252,15,240,0,0,0,0,7,248,11,254,85,85,85,85,111,240,3,255,255,255,255,255,255,224,1,255,255,255,255,255,255,192,0,43,255,255,255,255,249,0, + // 0x5e73 平 + 115,94,32,32,0,36,2,253,5,85,85,85,85,85,85,80,15,255,255,255,255,255,255,240,15,255,255,255,255,255,255,240,15,255,255,255,255,255,255,240,0,0,0,15,224,0,0,0,0,4,0,15,224,0,80,0,0,126,0,15,224,0,255,0,0,127,0,15,224,0,254,0,0,63,128,15,224,2,252,0,0,47,192,15,224,3,248,0,0,15,208,15,224,7,244,0,0,11,240,15,224,15,224,0,0,7,240,15,224,31,192,0,0,3,224,15,224,47,128,0,0,1,0,15,224,1,0,0,0,0,0,15,224,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,95,245,85,85,85,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0, + // 0x5e76 并 + 118,94,32,35,24,36,2,252,0,1,192,0,0,3,144,0,0,15,224,0,0,11,248,0,0,11,244,0,0,15,240,0,0,3,252,0,0,47,208,0,0,1,253,0,0,63,192,0,0,0,255,0,0,191,0,0,0,0,127,0,0,253,0,0,0,0,56,0,0,44,0,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,253,0,0,191,0,0,0,2,252,0,0,127,0,0,0,3,248,0,0,127,0,0,0,3,248,0,0,127,0,0,0,11,240,0,0,127,0,0,0,15,224,0,0,127,0,0,0,63,208,0,0,127,0,0,0,191,128,0,0,127,0,0,3,255,0,0,0,127,0,0,31,252,0,0,0,127,0,0,191,244,0,0,0,127,0,0,63,192,0,0,0,127,0,0,30,0,0,0,0,127,0,0,0,0,0,0,0,0,0,0, + // 0x5e8a 床 + 138,94,34,34,50,36,1,253,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,255,0,0,0,0,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,248,0,0,0,0,0,0,0,2,248,0,0,11,240,0,0,0,2,248,0,0,11,240,0,0,0,2,248,0,0,11,240,0,0,0,2,248,0,0,11,240,0,0,0,2,248,0,0,11,240,0,0,0,2,248,191,255,255,255,255,255,192,2,248,191,255,255,255,255,255,192,2,248,191,255,255,255,255,255,192,2,248,0,0,127,253,0,0,0,3,248,0,0,191,255,0,0,0,3,244,0,1,255,255,128,0,0,3,244,0,3,255,255,208,0,0,3,244,0,11,251,251,240,0,0,3,240,0,47,219,243,252,0,0,7,240,0,127,203,241,255,0,0,7,240,1,255,11,240,191,192,0,11,224,7,253,11,240,47,240,0,15,208,31,244,11,240,15,253,0,15,208,191,224,11,240,3,255,128,31,195,255,128,11,240,0,255,224,63,194,253,0,11,240,0,47,128,63,64,180,0,11,240,0,7,0,191,0,0,0,11,240,0,0,0,62,0,0,0,11,240,0,0,0,8,0,0,0,11,224,0,0,0, + // 0x5e94 应 + 148,94,34,35,59,36,1,252,0,0,0,0,189,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,192,0,0,0,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,248,0,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,2,248,0,0,24,0,0,208,0,2,248,0,0,253,0,1,253,0,2,248,26,0,190,0,2,252,0,2,248,127,0,127,0,3,252,0,2,248,63,64,63,0,3,244,0,2,248,47,128,63,128,7,240,0,2,248,31,192,47,192,15,240,0,2,248,15,208,31,192,15,208,0,3,248,11,240,15,208,47,192,0,3,248,7,240,15,224,63,128,0,3,244,3,244,11,224,127,0,0,3,244,2,248,7,240,191,0,0,3,244,1,252,7,224,253,0,0,3,240,0,253,0,2,252,0,0,7,240,0,248,0,3,244,0,0,11,240,0,64,0,11,240,0,0,15,224,0,0,0,15,208,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,63,64,0,0,47,199,255,255,255,255,255,255,208,63,135,255,255,255,255,255,255,208,127,71,255,255,255,255,255,255,208,63,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5e9f 废 + 159,94,33,35,59,36,1,252,0,0,0,0,109,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,127,192,0,0,0,3,255,255,255,255,255,255,255,192,3,255,255,255,255,255,255,255,192,3,255,255,255,255,255,255,255,192,3,248,0,0,4,0,0,0,0,3,248,3,160,15,192,20,0,0,3,248,7,240,31,192,253,0,0,3,248,11,240,47,192,191,64,0,3,248,15,224,63,128,47,192,0,3,248,31,192,63,64,15,240,0,3,248,63,192,127,0,3,128,0,3,248,191,255,255,255,255,255,64,3,244,127,255,255,255,255,255,64,3,244,63,255,255,255,255,255,64,3,244,16,2,252,0,0,0,0,3,244,0,3,244,0,0,0,0,3,244,0,11,240,0,0,0,0,3,244,0,15,255,255,255,128,0,3,240,0,47,255,255,255,224,0,7,240,0,127,255,255,255,192,0,7,240,0,255,208,0,127,64,0,11,240,3,255,244,1,255,0,0,11,224,15,251,253,7,252,0,0,15,208,63,224,191,159,240,0,0,15,209,255,128,47,255,192,0,0,31,203,255,0,15,255,128,0,0,47,207,248,0,191,255,248,0,0,63,131,208,27,255,239,255,228,0,127,1,3,255,253,2,255,255,192,127,0,3,255,208,0,31,255,0,9,0,0,248,0,0,0,109,0,0,0,0,0,0,0,0,0,0, + // 0x5ea6 度 + 166,94,33,35,59,36,1,252,0,0,0,0,190,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,248,0,0,0,0,0,0,0,2,248,0,63,0,0,252,0,0,2,248,0,63,0,0,252,0,0,2,249,170,255,234,171,255,170,64,2,249,255,255,255,255,255,255,128,2,249,255,255,255,255,255,255,128,2,248,0,63,0,0,252,0,0,2,248,0,63,0,0,252,0,0,2,248,0,63,0,0,252,0,0,2,244,0,63,170,170,252,0,0,2,244,0,63,255,255,252,0,0,3,244,0,63,255,255,252,0,0,3,244,0,0,0,0,0,0,0,3,240,0,0,0,0,0,0,0,3,240,255,255,255,255,255,224,0,3,240,255,255,255,255,255,240,0,3,240,170,191,170,170,191,224,0,7,240,0,255,0,0,127,192,0,11,224,0,63,192,1,255,0,0,15,208,0,31,244,11,252,0,0,15,192,0,7,255,127,240,0,0,31,192,0,0,255,255,128,0,0,63,128,0,6,255,255,144,0,0,63,64,22,255,255,255,255,148,0,191,3,255,255,248,31,255,255,192,126,2,255,254,0,0,191,255,128,8,1,249,0,0,0,1,111,0,0,0,0,0,0,0,0,0,0, + // 0x5f00 开 + 0,95,32,33,8,36,2,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,0,0,255,0,0,63,128,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,255,0,0,127,128,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,253,0,0,63,64,0,0,1,252,0,0,63,64,0,0,1,252,0,0,63,64,0,0,2,252,0,0,63,64,0,0,3,248,0,0,63,64,0,0,11,244,0,0,63,64,0,0,15,240,0,0,63,64,0,0,47,224,0,0,63,64,0,0,127,192,0,0,63,64,0,0,255,64,0,0,63,64,0,7,254,0,0,0,63,64,0,31,252,0,0,0,63,64,0,191,240,0,0,0,63,64,0,63,192,0,0,0,63,64,0,14,0,0,0,0,63,64,0,0,0,0,0,0,0,0,0, + // 0x5f03 弃 + 3,95,33,35,59,36,1,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,3,252,0,0,0,0,0,0,0,7,248,0,11,64,0,0,0,0,15,240,0,63,240,0,0,0,0,47,208,0,11,253,0,0,0,0,63,128,0,1,255,128,0,15,255,255,239,255,255,255,224,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,255,0,1,85,85,64,0,0,0,191,64,0,0,63,64,0,31,192,44,0,0,0,63,64,0,31,192,0,0,0,0,63,64,0,31,192,0,0,0,0,63,64,0,31,192,0,0,0,0,63,64,0,31,192,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,191,0,0,31,192,0,0,0,0,254,0,0,31,192,0,0,0,2,253,0,0,31,192,0,0,0,7,252,0,0,31,192,0,0,0,31,244,0,0,31,192,0,0,0,191,208,0,0,31,192,0,0,7,255,128,0,0,31,192,0,0,127,253,0,0,0,31,192,0,0,47,224,0,0,0,31,192,0,0,14,0,0,0,0,31,192,0,0,0,0,0,0,0,0,0,0,0, + // 0x5f0f 式 + 15,95,33,34,50,36,2,253,0,0,0,0,15,208,32,0,0,0,0,0,0,15,224,189,0,0,0,0,0,0,15,224,255,128,0,0,0,0,0,15,224,63,224,0,0,0,0,0,15,224,11,244,0,0,0,0,0,15,224,2,224,0,21,85,85,85,95,229,85,149,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,244,0,0,0,47,255,255,255,195,244,0,0,0,47,255,255,255,195,248,0,0,0,47,255,255,255,195,248,0,0,0,0,2,252,0,2,252,0,0,0,0,2,248,0,2,252,0,0,0,0,2,248,0,1,252,0,0,0,0,2,248,0,0,253,0,0,0,0,2,248,0,0,254,0,0,0,0,2,248,0,0,255,0,0,0,0,2,248,0,0,127,0,8,0,0,2,248,0,0,63,128,31,64,0,2,248,5,176,63,192,31,128,0,2,254,255,240,31,208,47,128,0,91,255,255,240,15,240,47,64,111,255,255,254,80,11,248,63,0,191,255,254,64,0,3,255,191,0,63,254,64,0,0,1,255,254,0,57,0,0,0,0,0,127,252,0,0,0,0,0,0,0,11,224,0, + // 0x5f15 引 + 21,95,29,35,24,36,2,252,0,0,0,0,0,0,5,0,0,0,0,0,0,0,63,128,31,255,255,255,0,0,63,128,31,255,255,255,0,0,63,128,31,255,255,255,0,0,63,128,0,0,0,63,0,0,63,128,0,0,0,63,0,0,63,128,0,0,0,63,0,0,63,128,0,0,0,63,0,0,63,128,0,0,0,63,0,0,63,128,7,255,255,255,0,0,63,128,11,255,255,255,0,0,63,128,11,255,255,255,0,0,63,128,15,208,0,0,0,0,63,128,15,208,0,0,0,0,63,128,15,192,0,0,0,0,63,128,31,192,0,0,0,0,63,128,47,192,0,0,0,0,63,128,47,255,255,255,64,0,63,128,63,255,255,255,64,0,63,128,63,255,255,255,0,0,63,128,127,0,0,127,0,0,63,128,26,0,0,127,0,0,63,128,0,0,0,127,0,0,63,128,0,0,0,191,0,0,63,128,0,0,0,190,0,0,63,128,0,0,0,254,0,0,63,128,0,0,0,253,0,0,63,128,0,0,1,253,0,0,63,128,0,0,2,252,0,0,63,128,0,149,91,252,0,0,63,128,0,191,255,244,0,0,63,128,0,127,255,240,0,0,63,128,0,63,254,64,0,0,63,128,0,0,0,0,0,0,0,0, + // 0x5f39 弹 + 57,95,33,35,59,36,2,252,0,0,0,0,64,0,10,64,0,0,0,0,7,224,0,15,224,0,255,255,244,7,244,0,47,192,0,255,255,244,2,252,0,63,128,0,255,255,244,0,253,0,127,0,0,0,2,244,0,191,0,253,0,0,0,2,244,0,61,1,252,0,0,0,2,244,0,0,3,244,0,0,0,2,244,63,255,255,255,252,0,0,3,244,63,255,255,255,252,0,63,255,244,63,170,255,170,252,0,127,255,244,63,0,254,0,252,0,127,255,244,63,0,254,0,252,0,126,0,0,63,170,255,170,252,0,126,0,0,63,255,255,255,252,0,125,0,0,63,255,255,255,252,0,125,0,0,63,0,254,0,252,0,125,0,0,63,0,254,0,252,0,127,255,244,63,0,254,0,252,0,191,255,244,63,255,255,255,252,0,191,255,244,63,255,255,255,252,0,0,3,244,42,170,255,170,168,0,0,3,240,0,0,254,0,0,0,0,3,240,0,0,254,0,0,0,0,3,247,255,255,255,255,255,64,0,3,243,255,255,255,255,255,64,0,3,243,255,255,255,255,255,64,0,7,240,0,0,254,0,0,0,0,7,224,0,0,254,0,0,0,0,11,224,0,0,254,0,0,0,0,31,208,0,0,254,0,0,0,63,255,192,0,0,254,0,0,0,47,255,128,0,0,254,0,0,0,31,254,0,0,0,253,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5f52 归 + 82,95,30,35,24,36,3,252,0,2,244,0,0,0,0,0,0,3,244,0,0,0,0,0,0,3,244,0,0,0,0,0,0,3,244,63,255,255,255,240,168,3,244,63,255,255,255,240,253,3,244,63,255,255,255,240,253,3,244,0,0,0,11,240,253,3,244,0,0,0,11,240,253,3,244,0,0,0,11,240,253,3,244,0,0,0,11,240,253,3,244,0,0,0,11,240,253,3,244,0,0,0,11,240,253,3,244,0,0,0,11,240,253,3,244,0,0,0,11,240,253,3,244,0,0,0,11,240,253,3,244,15,255,255,255,240,253,3,244,15,255,255,255,240,253,3,244,15,255,255,255,240,253,3,244,5,85,85,91,240,253,3,244,0,0,0,11,240,253,3,240,0,0,0,11,240,253,7,240,0,0,0,11,240,169,11,240,0,0,0,11,240,0,15,240,0,0,0,11,240,0,15,224,0,0,0,11,240,0,31,208,0,0,0,11,240,0,63,192,0,0,0,11,240,0,127,128,21,85,85,91,240,0,255,0,191,255,255,255,240,3,254,0,191,255,255,255,240,11,252,0,191,255,255,255,240,47,240,0,0,0,0,11,240,31,208,0,0,0,0,11,240,3,64,0,0,0,0,6,160,0,0,0,0,0,0,0,0, + // 0x5f84 径 + 132,95,34,34,50,36,1,253,0,0,144,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,11,244,63,255,255,255,253,0,0,47,224,63,255,255,255,253,0,0,191,192,63,255,255,255,252,0,3,255,0,2,244,0,3,248,0,15,252,0,2,252,0,15,240,0,127,240,16,0,254,0,47,208,0,63,128,126,0,127,128,127,128,0,45,0,255,0,47,225,255,0,0,0,2,252,0,11,251,252,0,0,0,11,244,0,3,255,240,0,0,0,31,224,0,1,255,224,0,0,0,127,192,0,31,255,254,0,0,1,255,192,1,255,251,255,224,0,7,255,192,111,255,64,191,255,144,47,255,195,255,248,0,11,255,224,255,255,193,255,64,21,0,191,192,191,95,192,160,0,63,0,2,0,61,31,192,0,0,63,0,0,0,20,31,192,0,0,63,0,0,0,0,31,192,0,0,63,0,0,0,0,31,192,63,255,255,255,254,0,0,31,192,63,255,255,255,254,0,0,31,192,63,255,255,255,254,0,0,31,192,0,0,63,0,0,0,0,31,192,0,0,63,0,0,0,0,31,192,0,0,63,0,0,0,0,31,192,0,0,63,0,0,0,0,31,192,0,0,63,0,0,0,0,31,195,255,255,255,255,255,208,0,31,195,255,255,255,255,255,208,0,31,195,255,255,255,255,255,208,0,31,192,0,0,0,0,0,0, + // 0x5f85 待 + 133,95,34,34,50,36,1,253,0,1,128,0,0,106,0,0,0,0,3,248,0,0,127,0,0,0,0,11,244,0,0,127,0,0,0,0,47,224,0,0,127,0,0,0,0,127,192,0,0,191,0,0,0,2,255,0,63,255,255,255,255,0,11,252,0,63,255,255,255,255,0,63,240,0,63,255,255,255,255,0,63,192,0,0,0,127,0,0,0,30,0,252,0,0,127,0,0,0,4,2,252,0,0,127,0,0,0,0,7,244,0,0,191,0,0,0,0,15,243,255,255,255,255,255,224,0,63,195,255,255,255,255,255,224,0,255,131,255,255,255,255,255,224,3,255,128,0,0,0,47,192,0,31,255,128,0,0,0,47,192,0,191,255,128,0,0,0,47,192,0,127,95,131,255,255,255,255,255,208,61,31,131,255,255,255,255,255,208,16,31,131,255,255,255,255,255,208,0,31,128,0,0,0,47,192,0,0,31,128,2,192,0,47,192,0,0,31,128,15,224,0,47,192,0,0,31,128,11,244,0,47,192,0,0,31,128,3,252,0,47,192,0,0,31,128,1,254,0,47,192,0,0,31,128,0,191,0,47,192,0,0,31,128,0,63,64,47,192,0,0,31,128,0,44,0,47,192,0,0,31,128,0,0,0,47,128,0,0,31,128,0,0,127,255,128,0,0,31,128,0,0,63,255,64,0,0,31,128,0,0,63,248,0,0, + // 0x5faa 循 + 170,95,34,34,50,36,1,253,0,3,144,0,0,0,0,80,0,0,11,240,0,0,0,111,248,0,0,31,208,80,22,255,255,254,0,0,127,128,255,255,255,255,144,0,1,255,0,255,255,255,240,0,0,7,252,0,254,64,7,240,0,0,47,240,0,253,0,7,240,0,0,191,128,64,253,0,7,240,0,0,62,1,252,255,255,255,255,255,208,4,3,248,255,255,255,255,255,208,0,11,240,255,255,255,255,255,208,0,31,208,253,0,7,224,0,0,0,63,192,253,0,11,224,0,0,0,255,64,253,0,11,208,0,0,2,255,64,253,0,11,208,0,0,11,255,64,253,63,255,255,255,0,47,255,64,252,63,255,255,255,0,255,255,64,252,63,170,170,255,0,191,63,64,252,63,0,0,63,0,60,63,64,252,63,0,0,63,0,0,63,64,252,63,255,255,255,0,0,63,64,252,63,255,255,255,0,0,63,65,252,63,85,85,127,0,0,63,65,248,63,0,0,63,0,0,63,66,248,63,0,0,63,0,0,63,67,244,63,255,255,255,0,0,63,67,240,63,255,255,255,0,0,63,71,240,63,85,85,127,0,0,63,75,224,63,0,0,63,0,0,63,79,208,63,0,0,63,0,0,63,95,192,63,255,255,255,0,0,63,111,128,63,255,255,255,0,0,63,71,0,63,85,85,127,0,0,47,65,0,63,0,0,42,0, + // 0x5fae 微 + 174,95,34,34,50,36,1,253,0,29,0,15,64,0,184,0,0,0,63,192,15,64,0,252,0,0,0,191,0,15,64,0,252,0,0,1,254,31,15,67,193,252,0,0,7,248,31,15,67,193,248,0,0,15,240,31,15,67,194,244,0,0,63,192,31,15,67,195,244,0,0,191,0,31,15,67,195,255,255,208,61,15,239,15,67,199,255,255,224,16,31,239,15,67,203,255,255,224,0,63,159,255,255,223,208,63,0,0,127,31,255,255,239,208,63,0,0,254,31,255,255,255,224,62,0,3,253,0,0,0,127,224,126,0,11,253,0,0,0,255,240,125,0,31,253,0,0,0,253,240,188,0,63,253,63,255,255,244,240,252,0,255,253,63,255,255,224,244,252,0,189,253,63,255,255,208,249,248,0,56,253,2,240,125,0,190,244,0,16,253,2,240,125,0,127,240,0,0,253,3,240,125,0,63,240,0,0,253,3,240,125,0,63,224,0,0,253,3,240,125,0,47,192,0,0,253,3,224,125,0,31,192,0,0,253,7,224,126,184,63,208,0,0,253,11,208,191,248,191,240,0,0,253,15,194,255,245,255,244,0,0,253,31,129,254,3,249,252,0,0,253,63,64,144,15,240,255,0,0,253,255,0,0,127,192,63,208,0,253,60,0,0,255,0,31,240,0,253,20,0,0,188,0,7,192,0,189,0,0,0,32,0,1,64, + // 0x5fc3 心 + 195,95,34,34,50,36,1,253,0,0,0,144,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,11,255,224,0,0,0,0,0,0,1,255,254,0,0,0,0,0,0,0,11,255,224,0,0,0,0,0,0,0,191,253,0,0,0,0,0,0,0,31,255,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,31,0,0,1,228,15,208,0,0,127,128,0,1,252,15,208,0,0,47,208,0,2,252,15,208,0,0,15,240,0,2,248,15,208,0,0,7,248,0,3,248,15,208,0,0,3,252,0,3,244,15,208,0,0,1,254,0,7,240,15,208,0,0,0,255,0,11,240,15,208,0,0,0,127,128,15,224,15,208,0,0,0,63,192,31,208,15,208,0,0,0,47,208,47,192,15,208,0,0,208,15,224,127,128,15,208,0,0,252,15,240,255,0,15,208,0,0,252,11,208,126,0,15,208,0,1,252,1,0,4,0,15,208,0,1,252,0,0,0,0,15,208,0,2,248,0,0,0,0,15,240,0,7,244,0,0,0,0,15,255,255,255,240,0,0,0,0,7,255,255,255,224,0,0,0,0,1,191,255,255,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x5ffd 忽 + 253,95,34,34,50,36,1,253,0,0,45,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,3,255,255,255,255,255,248,0,0,11,255,255,255,255,255,244,0,0,47,255,255,255,255,255,244,0,0,191,192,127,64,254,3,244,0,2,255,0,254,1,252,3,244,0,11,252,2,252,3,248,3,240,0,63,240,7,244,7,240,3,240,0,31,192,31,224,15,224,7,240,0,3,0,127,192,47,192,7,240,0,0,1,255,0,127,64,7,240,0,0,11,252,0,255,0,11,240,0,0,63,240,3,252,0,15,224,0,2,255,192,15,244,0,15,208,0,3,254,0,63,208,0,47,192,0,0,244,2,255,64,127,255,192,0,0,0,15,253,0,63,255,64,0,0,0,11,244,0,47,249,0,0,0,0,2,199,208,0,0,0,0,0,0,0,15,252,0,0,0,0,0,16,5,71,255,64,14,0,0,0,63,15,192,191,208,127,128,0,0,127,15,192,31,192,63,224,0,0,254,15,192,7,0,15,244,0,1,252,15,192,0,3,67,252,0,3,252,15,192,0,3,241,255,0,11,244,15,192,0,3,240,191,128,47,224,15,208,0,11,240,63,192,127,192,15,255,255,255,224,31,208,15,0,7,255,255,255,192,14,0,0,0,1,255,255,254,0,0,0, + // 0x6027 性 + 39,96,33,35,59,36,1,252,0,63,64,0,0,47,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,3,244,63,64,0,0,0,63,64,3,240,63,64,0,0,0,63,64,7,240,63,64,0,0,0,63,64,11,240,63,64,0,0,0,63,88,11,224,63,64,0,0,10,63,252,15,224,63,128,0,0,31,63,190,31,255,255,255,255,0,47,63,127,47,255,255,255,255,0,47,63,95,127,255,255,255,255,0,63,63,79,255,64,63,64,0,0,62,63,79,255,0,63,64,0,0,61,63,64,254,0,63,64,0,0,125,63,66,252,0,63,64,0,0,188,63,64,120,0,63,64,0,0,188,63,64,0,0,63,64,0,0,0,63,64,0,0,63,128,0,0,0,63,64,15,255,255,255,253,0,0,63,64,15,255,255,255,253,0,0,63,64,15,255,255,255,253,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,128,0,0,0,63,67,255,255,255,255,255,192,0,63,67,255,255,255,255,255,192,0,63,67,255,255,255,255,255,192,0,63,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x603b 总 + 59,96,33,34,50,36,2,253,0,0,96,0,0,13,0,0,0,0,2,252,0,0,47,208,0,0,0,0,254,0,0,63,192,0,0,0,0,191,64,0,191,64,0,0,0,0,63,192,0,254,0,0,0,0,0,31,208,2,252,0,0,0,0,0,15,128,3,248,0,0,0,0,127,255,255,255,255,254,0,0,0,127,255,255,255,255,254,0,0,0,127,255,255,255,255,254,0,0,0,127,0,0,0,0,254,0,0,0,127,0,0,0,0,254,0,0,0,127,0,0,0,0,254,0,0,0,127,0,0,0,0,254,0,0,0,127,0,0,0,0,254,0,0,0,127,0,0,0,0,254,0,0,0,127,255,255,255,255,254,0,0,0,127,255,255,255,255,254,0,0,0,127,255,255,255,255,254,0,0,0,0,0,7,0,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,47,240,0,0,0,0,1,0,169,11,252,0,7,0,0,11,240,254,1,255,0,47,128,0,15,224,254,0,127,192,31,208,0,15,208,254,0,47,192,11,240,0,31,192,254,0,11,0,3,252,0,47,192,254,0,0,1,1,253,0,63,64,254,0,0,3,224,191,0,191,0,254,0,0,3,244,63,64,254,0,255,0,0,7,240,47,0,124,0,255,255,255,255,240,20,0,4,0,127,255,255,255,208,0,0,0,0,27,255,255,255,64,0,0, + // 0x6062 恢 + 98,96,34,35,59,36,1,252,0,63,0,31,64,0,0,0,0,0,63,0,31,64,0,0,0,0,0,63,0,31,64,0,0,0,0,0,63,0,47,64,0,0,0,0,0,63,3,255,255,255,255,255,208,0,63,3,255,255,255,255,255,208,0,63,103,255,255,255,255,255,208,10,63,248,31,64,0,0,0,0,31,63,188,31,64,3,240,0,0,31,63,61,31,64,3,240,0,0,31,63,46,31,64,3,240,0,0,46,63,31,47,64,3,240,0,0,46,63,15,47,73,3,240,11,128,61,63,14,47,79,131,240,15,192,60,63,0,47,79,67,240,31,128,188,63,0,47,79,3,240,47,0,248,63,0,47,95,3,240,63,0,16,63,0,47,47,3,240,125,0,0,63,0,63,62,3,240,188,0,0,63,0,63,61,3,244,248,0,0,63,0,63,124,7,244,96,0,0,63,0,63,4,11,248,0,0,0,63,0,126,0,15,252,0,0,0,63,0,190,0,31,189,0,0,0,63,0,253,0,63,63,0,0,0,63,0,252,0,127,47,64,0,0,63,1,252,0,253,15,192,0,0,63,2,248,2,252,15,224,0,0,63,3,240,11,240,7,248,0,0,63,11,240,47,224,2,254,0,0,63,15,209,255,128,0,255,192,0,63,47,195,254,0,0,63,224,0,63,15,66,248,0,0,15,192,0,63,2,0,208,0,0,2,64,0,0,0,0,0,0,0,0,0, + // 0x606f 息 + 111,96,33,34,50,36,2,253,0,0,0,15,240,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,31,192,0,0,0,0,0,63,255,255,255,255,253,0,0,0,63,255,255,255,255,253,0,0,0,63,170,170,170,170,253,0,0,0,63,64,0,0,0,253,0,0,0,63,64,0,0,0,253,0,0,0,63,255,255,255,255,253,0,0,0,63,255,255,255,255,253,0,0,0,63,149,85,85,85,253,0,0,0,63,64,0,0,0,253,0,0,0,63,64,0,0,0,253,0,0,0,63,255,255,255,255,253,0,0,0,63,255,255,255,255,253,0,0,0,63,149,85,85,85,253,0,0,0,63,64,0,0,0,253,0,0,0,63,64,0,0,0,253,0,0,0,63,170,170,170,170,253,0,0,0,63,255,255,255,255,253,0,0,0,63,255,255,255,255,253,0,0,0,0,0,9,0,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,224,0,8,0,0,3,224,127,11,248,0,190,0,0,3,240,127,2,254,0,191,128,0,11,240,127,0,255,0,63,224,0,15,208,127,0,56,0,15,244,0,47,192,127,0,0,30,3,252,0,127,128,127,0,0,31,128,255,0,255,0,127,0,0,63,128,191,64,253,0,63,255,255,255,64,63,64,36,0,47,255,255,255,0,24,0,0,0,11,255,255,248,0,0,0, + // 0x611f 感 + 31,97,34,33,41,36,1,254,0,0,0,0,11,224,189,0,0,0,0,0,0,7,225,255,208,0,0,0,0,0,7,240,31,224,0,1,170,170,170,175,250,171,234,64,1,255,255,255,255,255,255,255,128,1,255,255,255,255,255,255,255,128,1,248,0,0,3,244,0,0,0,1,248,0,0,2,248,1,0,0,1,248,0,0,1,252,11,224,0,1,249,255,255,244,252,15,208,0,2,249,255,255,244,253,31,192,0,2,244,0,0,0,190,63,128,0,2,244,0,0,0,127,127,0,0,3,244,255,255,240,63,254,0,0,3,240,255,255,240,47,252,0,0,3,240,253,87,240,15,244,1,0,7,240,252,3,240,15,240,3,128,11,224,252,3,240,63,244,3,224,15,192,253,87,240,255,252,7,208,31,192,255,255,247,254,255,75,192,63,128,255,255,255,248,127,255,192,191,0,0,5,7,224,31,255,64,61,0,0,47,129,64,2,253,0,8,0,5,111,244,0,1,0,0,0,36,31,199,254,0,47,128,0,0,127,31,192,255,64,47,224,0,0,254,31,192,46,0,11,248,0,1,252,31,192,4,7,147,253,0,3,248,31,192,0,7,224,255,0,15,240,31,192,0,15,224,63,192,63,208,15,255,255,255,192,31,208,47,128,11,255,255,255,192,15,64,5,0,1,255,255,254,0,0,0, + // 0x620f 戏 + 15,98,34,35,59,36,1,252,0,0,0,0,7,224,8,0,0,0,0,0,0,11,240,63,0,0,0,0,0,0,11,240,127,192,0,0,0,0,0,7,240,31,240,0,63,255,255,224,7,240,7,252,0,63,255,255,244,7,240,1,252,0,63,255,255,240,7,240,0,96,0,0,0,3,240,3,240,0,0,0,0,0,7,240,3,244,1,107,128,6,0,11,224,7,255,255,255,192,31,128,15,215,255,255,255,255,192,47,208,15,215,255,255,255,233,64,15,240,31,199,255,253,64,0,0,3,248,47,193,67,248,0,96,0,1,253,63,64,2,252,0,189,0,0,191,127,0,2,252,0,253,0,0,63,255,0,1,252,2,252,0,0,31,254,0,1,253,3,244,0,0,11,252,0,0,253,11,240,0,0,3,252,0,0,254,31,208,0,0,7,254,0,0,255,63,192,0,0,15,255,0,0,191,191,0,0,0,47,255,192,0,127,253,0,0,0,127,223,224,0,63,248,0,0,0,255,15,240,0,63,240,5,0,3,254,7,248,0,63,208,11,128,11,252,2,248,1,255,224,11,208,47,240,0,224,7,255,240,15,192,191,208,0,64,47,255,252,15,192,63,64,0,1,255,227,255,111,192,13,0,0,11,255,65,255,255,128,0,0,0,2,252,0,127,255,0,0,0,0,0,160,0,31,254,0,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,0,0,0, + // 0x6210 成 + 16,98,34,35,59,36,1,252,0,0,0,0,15,224,96,0,0,0,0,0,0,15,225,254,0,0,0,0,0,0,15,225,255,192,0,0,0,0,0,15,224,47,244,0,0,0,0,0,15,224,7,252,0,0,0,0,0,15,224,0,240,0,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,253,85,85,91,245,85,85,64,2,252,0,0,7,240,0,0,0,2,252,0,0,7,240,0,0,0,2,252,0,0,3,240,1,228,0,2,252,0,0,3,244,3,252,0,2,255,255,255,3,244,3,244,0,2,255,255,255,3,248,11,240,0,2,255,255,255,2,248,15,224,0,2,252,0,127,2,252,31,192,0,2,252,0,127,1,252,63,192,0,2,252,0,127,0,253,127,64,0,2,252,0,127,0,254,255,0,0,2,252,0,127,0,255,253,0,0,3,248,0,190,0,191,248,0,0,3,248,0,190,0,127,240,0,0,3,244,0,190,0,63,208,5,0,7,244,0,253,0,191,192,11,128,11,241,255,253,1,255,208,11,208,11,240,255,252,11,255,240,11,208,15,224,191,224,63,255,248,15,192,47,208,0,2,255,211,254,31,192,63,192,0,31,255,1,255,255,128,127,64,0,15,248,0,127,255,0,47,0,0,3,208,0,15,253,0,9,0,0,1,0,0,0,80,0,0,0,0,0,0,0,0,0,0, + // 0x6237 户 + 55,98,30,35,24,36,1,252,0,0,0,1,240,0,0,0,0,0,0,3,248,0,0,0,0,0,0,2,252,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,63,255,255,255,255,255,224,0,63,255,255,255,255,255,224,0,63,255,255,255,255,255,224,0,63,64,0,0,0,15,224,0,63,64,0,0,0,15,224,0,63,64,0,0,0,15,224,0,63,64,0,0,0,15,224,0,63,64,0,0,0,15,224,0,63,64,0,0,0,15,224,0,63,64,0,0,0,15,224,0,63,255,255,255,255,255,224,0,63,255,255,255,255,255,224,0,127,255,255,255,255,255,224,0,127,0,0,0,0,15,224,0,191,0,0,0,0,15,224,0,191,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,1,253,0,0,0,0,0,0,2,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,248,0,0,0,0,0,0,11,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,47,208,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,64,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6240 所 + 64,98,34,34,50,36,1,253,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,189,0,47,255,255,255,192,0,31,255,128,47,255,255,255,196,7,255,255,64,47,255,255,255,207,255,255,224,0,0,0,0,0,15,255,249,0,0,0,0,0,0,15,253,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,11,255,255,255,15,208,0,0,0,11,255,255,255,15,208,0,0,0,11,255,255,255,15,208,0,0,0,11,224,0,127,15,224,0,0,0,11,224,0,127,15,255,255,255,224,11,224,0,127,15,255,255,255,224,11,224,0,127,15,255,255,255,224,11,224,0,127,15,208,7,240,0,11,255,255,255,15,208,7,240,0,11,255,255,255,15,192,7,240,0,11,255,255,255,15,192,7,240,0,11,224,0,0,31,192,7,240,0,11,224,0,0,47,192,7,240,0,11,208,0,0,47,128,7,240,0,15,208,0,0,63,64,7,240,0,15,208,0,0,127,0,7,240,0,15,192,0,0,191,0,7,240,0,31,192,0,0,253,0,7,240,0,31,192,0,2,252,0,7,240,0,47,128,0,3,248,0,7,240,0,63,64,0,11,240,0,7,240,0,191,0,0,47,224,0,7,240,0,254,0,0,63,192,0,7,240,0,124,0,0,15,64,0,7,240,0,8,0,0,1,0,0,7,240,0, + // 0x6247 扇 + 71,98,32,32,0,36,1,253,31,255,255,255,255,255,255,255,31,255,255,255,255,255,255,255,15,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,240,0,255,255,255,255,255,255,240,0,255,170,170,170,170,171,240,0,253,0,0,0,0,3,240,0,253,0,0,0,0,3,240,0,255,170,170,170,170,171,240,0,255,255,255,255,255,255,240,0,255,255,255,255,255,255,240,0,253,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,253,255,255,241,255,255,252,0,253,255,255,241,255,255,252,0,252,170,171,240,170,170,252,1,252,24,3,240,44,1,252,1,252,127,3,240,191,1,252,2,252,47,131,240,47,193,252,2,248,15,211,240,15,209,252,3,244,7,131,240,3,65,252,7,240,0,3,240,0,21,252,11,240,1,243,240,2,253,252,15,224,111,247,240,111,253,252,31,215,255,211,243,255,209,252,47,195,253,3,242,253,1,252,127,67,144,3,241,128,1,252,255,0,1,171,240,0,171,248,45,0,0,255,224,0,191,244,4,0,0,255,128,0,63,208, + // 0x624b 手 + 75,98,32,35,24,36,2,252,0,0,0,0,0,0,104,0,0,0,0,0,22,191,254,0,0,5,90,191,255,255,255,64,11,255,255,255,255,255,228,0,7,255,255,255,254,80,0,0,3,255,169,95,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,15,240,0,0,0,11,255,255,255,255,255,255,240,11,255,255,255,255,255,255,240,11,255,255,255,255,255,255,240,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,95,245,85,85,85,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,1,64,31,224,0,0,0,0,3,255,255,224,0,0,0,0,2,255,255,192,0,0,0,0,0,255,249,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6253 打 + 83,98,34,34,50,36,1,253,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,15,255,255,255,255,224,0,15,192,15,255,255,255,255,224,0,15,192,15,255,255,255,255,224,0,15,192,5,85,85,254,85,64,63,255,255,240,0,0,253,0,0,63,255,255,240,0,0,253,0,0,63,255,255,240,0,0,253,0,0,0,31,208,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,214,240,0,0,253,0,0,0,31,255,240,0,0,253,0,0,6,255,255,240,0,0,253,0,0,127,255,254,64,0,0,253,0,0,63,255,208,0,0,0,253,0,0,63,175,192,0,0,0,253,0,0,20,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,1,253,0,0,0,31,192,0,47,255,253,0,0,15,255,192,0,31,255,252,0,0,15,255,128,0,15,255,240,0,0,7,249,0,0,6,165,0,0,0, + // 0x6267 执 + 103,98,34,35,59,36,1,252,0,63,0,0,31,192,0,0,0,0,63,0,0,31,192,0,0,0,0,63,0,0,31,192,0,0,0,0,63,0,0,31,192,0,0,0,0,63,0,0,31,192,0,0,0,0,63,0,0,31,192,0,0,0,0,63,0,0,31,192,0,0,0,0,63,0,0,31,192,0,0,0,63,255,254,191,255,255,255,192,0,63,255,254,191,255,255,255,128,0,63,255,254,191,255,255,255,128,0,0,63,0,0,47,128,47,128,0,0,63,0,0,47,128,47,128,0,0,63,0,0,47,128,47,128,0,0,63,0,0,63,64,47,128,0,0,63,0,4,63,64,47,128,0,0,63,91,63,127,64,47,128,0,0,63,255,191,255,0,47,128,0,1,191,255,31,255,0,47,128,0,127,255,249,2,255,208,47,128,0,127,255,64,0,191,248,47,64,0,63,191,0,0,255,255,111,64,0,36,63,0,0,253,255,255,64,0,0,63,0,2,252,47,175,128,0,0,63,0,3,244,7,47,128,0,0,63,0,11,240,0,47,128,0,0,63,0,15,224,0,31,130,0,0,63,0,63,192,0,31,131,208,0,63,0,191,128,0,15,195,224,0,63,2,255,0,0,15,199,208,0,127,11,252,0,0,15,235,208,47,255,47,244,0,0,7,255,192,15,254,15,208,0,0,3,255,128,15,228,3,64,0,0,0,190,0,0,0,0,0,0,0,0,0,0, + // 0x6279 批 + 121,98,34,34,50,36,1,253,0,63,0,42,0,2,160,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,127,255,253,63,64,7,240,0,0,127,255,253,63,64,7,240,4,0,127,255,253,63,64,7,240,31,0,0,127,0,63,64,7,240,127,128,0,63,0,63,64,7,241,255,128,0,63,0,63,255,215,247,254,0,0,63,0,63,255,215,255,244,0,0,63,0,63,255,215,255,192,0,0,63,0,63,64,7,253,0,0,0,63,188,63,64,7,240,0,0,0,127,253,63,64,7,240,0,0,27,255,253,63,64,7,240,0,0,255,255,208,63,64,7,240,0,0,191,255,0,63,64,7,240,0,0,126,127,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,7,128,0,63,0,63,64,7,240,7,224,0,63,0,63,86,151,240,7,224,0,63,0,63,255,231,240,11,208,0,127,11,255,255,227,240,15,208,63,254,15,255,255,147,255,255,192,31,253,15,254,144,3,255,255,128,15,228,6,64,0,0,191,254,0, + // 0x6296 抖 + 150,98,34,35,59,36,1,252,0,47,128,0,0,0,47,128,0,0,47,128,0,0,0,47,128,0,0,47,128,0,16,0,47,128,0,0,47,128,0,126,0,47,128,0,0,47,128,0,255,208,47,128,0,0,47,128,0,47,248,47,128,0,0,47,128,0,7,254,47,128,0,63,255,255,192,0,253,47,128,0,63,255,255,192,0,36,47,128,0,63,255,255,192,0,0,47,128,0,0,47,128,0,0,0,47,128,0,0,47,128,1,64,0,47,128,0,0,47,128,3,244,0,47,128,0,0,47,128,11,254,0,47,128,0,0,47,128,2,255,208,47,128,0,0,47,128,64,127,244,47,128,0,0,47,223,192,11,240,47,128,0,0,47,255,192,1,192,47,128,0,27,255,255,192,0,0,47,128,0,191,255,249,0,0,0,47,128,0,127,255,192,0,0,0,47,239,208,63,175,128,0,0,6,191,255,208,16,47,128,0,107,255,255,255,224,0,47,128,63,255,255,255,249,64,0,47,128,63,255,255,191,128,0,0,47,128,47,250,64,47,128,0,0,47,128,21,0,0,47,128,0,0,47,128,0,0,0,47,128,0,0,47,128,0,0,0,47,128,0,0,47,128,0,0,0,47,128,0,0,47,128,0,0,0,47,128,0,47,255,128,0,0,0,47,128,0,15,255,0,0,0,0,47,128,0,15,248,0,0,0,0,47,128,0,0,0,0,0,0,0,0,0,0, + // 0x62a5 报 + 165,98,34,35,59,36,1,252,0,31,192,0,0,0,0,0,0,0,31,192,15,255,255,255,253,0,0,31,192,15,255,255,255,253,0,0,31,192,15,255,255,255,253,0,0,31,192,15,208,0,0,253,0,0,31,192,15,208,0,0,252,0,0,31,192,15,208,0,0,252,0,63,255,255,143,208,0,1,252,0,63,255,255,143,208,0,2,252,0,63,255,255,143,208,42,171,248,0,0,47,192,15,208,63,255,244,0,0,31,192,15,208,47,255,208,0,0,31,192,15,208,0,0,0,0,0,31,192,15,208,0,0,0,0,0,31,192,15,255,255,255,254,0,0,31,192,15,255,255,255,255,0,0,31,219,143,255,255,255,255,0,0,47,255,207,219,224,0,191,0,27,255,255,207,215,240,0,253,0,191,255,254,79,211,244,1,252,0,127,255,192,15,209,252,2,252,0,63,175,192,15,208,253,3,244,0,16,31,192,15,208,191,11,240,0,0,31,192,15,208,63,207,224,0,0,31,192,15,208,31,255,192,0,0,31,192,15,208,11,255,64,0,0,31,192,15,208,3,255,0,0,0,31,192,15,208,7,255,64,0,0,31,192,15,208,31,255,208,0,0,31,192,15,208,127,255,248,0,0,47,192,15,211,255,75,255,128,63,255,192,15,255,253,2,255,208,63,255,64,15,223,240,0,127,64,47,249,0,15,211,128,0,10,0,0,0,0,0,0,0,0,0,0, + // 0x62ac 抬 + 172,98,34,35,59,36,1,252,0,31,192,0,3,228,0,0,0,0,31,192,0,3,252,0,0,0,0,31,192,0,7,244,0,0,0,0,31,192,0,11,240,0,0,0,0,31,192,0,15,224,0,0,0,0,31,192,0,31,208,1,0,0,0,31,192,0,47,192,31,0,0,127,255,255,128,63,64,63,192,0,127,255,255,128,127,0,15,224,0,127,255,255,128,254,0,11,244,0,0,47,192,0,253,0,3,252,0,0,31,192,2,252,0,1,254,0,0,31,192,87,253,170,255,255,0,0,31,192,191,255,255,255,255,128,0,31,192,191,255,255,255,255,192,0,31,192,191,250,165,80,15,224,0,31,219,192,0,0,0,11,192,0,47,255,192,0,0,0,1,0,6,255,255,192,0,0,0,0,0,255,255,249,11,255,255,255,252,0,191,255,192,11,255,255,255,252,0,126,111,192,11,255,255,255,252,0,0,31,192,11,224,0,1,252,0,0,31,192,11,224,0,1,252,0,0,31,192,11,224,0,1,252,0,0,31,192,11,224,0,1,252,0,0,31,192,11,224,0,1,252,0,0,31,192,11,224,0,1,252,0,0,31,192,11,224,0,1,252,0,0,31,192,11,255,255,255,252,0,0,47,192,11,255,255,255,252,0,31,255,128,11,255,255,255,252,0,15,255,64,11,224,0,1,252,0,15,249,0,11,224,0,0,168,0,0,0,0,0,0,0,0,0,0, + // 0x62bd 抽 + 189,98,33,35,59,36,1,252,0,47,64,0,0,47,64,0,0,0,47,64,0,0,47,64,0,0,0,47,64,0,0,47,64,0,0,0,47,64,0,0,47,64,0,0,0,47,64,0,0,47,64,0,0,0,47,64,0,0,47,64,0,0,0,47,64,0,0,47,64,0,0,127,255,255,0,0,47,64,0,0,127,255,255,47,255,255,255,255,192,127,255,255,47,255,255,255,255,192,0,47,128,47,255,255,255,255,192,0,47,64,47,128,63,128,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,159,111,64,47,64,47,192,0,63,255,111,64,47,64,47,192,27,255,255,175,255,255,255,255,192,255,255,248,47,255,255,255,255,192,191,255,128,47,255,255,255,255,192,126,127,64,47,128,47,128,47,192,16,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,255,255,255,255,192,0,47,64,47,255,255,255,255,192,0,63,64,47,255,255,255,255,192,47,255,64,47,128,0,0,47,192,31,255,0,47,64,0,0,47,192,15,248,0,47,64,0,0,26,128,0,0,0,0,0,0,0,0,0, + // 0x62d4 拔 + 212,98,34,35,59,36,1,252,0,47,64,0,31,192,16,0,0,0,47,64,0,31,192,125,0,0,0,47,64,0,31,192,255,192,0,0,47,64,0,31,192,47,244,0,0,47,64,0,31,192,7,254,0,0,47,64,0,31,192,0,254,0,0,47,64,0,31,192,0,44,0,127,255,255,0,31,192,0,0,0,127,255,255,127,255,255,255,255,192,127,255,255,127,255,255,255,255,192,106,191,234,127,255,255,255,255,192,0,47,64,0,47,128,0,0,0,0,47,64,0,47,128,0,0,0,0,47,64,0,63,192,0,64,0,0,47,64,0,63,208,2,248,0,0,47,64,0,63,224,3,244,0,0,47,135,64,63,240,3,240,0,0,47,255,64,127,240,7,240,0,6,255,255,128,191,248,11,224,0,191,255,253,0,254,252,15,208,0,191,255,128,0,252,189,31,192,0,127,191,64,1,252,127,47,192,0,32,47,64,2,248,63,127,64,0,0,47,64,3,244,31,255,0,0,0,47,64,7,240,15,254,0,0,0,47,64,15,224,7,252,0,0,0,47,64,31,208,7,252,0,0,0,47,64,63,192,15,255,64,0,0,47,64,191,64,63,255,208,0,0,47,65,254,0,255,95,244,0,0,63,67,252,7,254,7,255,64,47,255,79,244,47,248,1,255,224,31,255,11,208,47,208,0,47,192,15,248,2,128,7,0,0,3,64,0,0,0,0,0,0,0,0,0, + // 0x62e9 择 + 233,98,34,35,59,36,1,252,0,47,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,47,255,255,255,248,0,0,63,64,47,255,255,255,253,0,0,63,64,47,255,255,255,252,0,0,63,64,0,253,0,7,244,0,0,63,64,0,127,0,31,208,0,127,255,255,64,47,192,127,128,0,127,255,255,64,11,246,254,0,0,127,255,255,64,3,255,248,0,0,0,63,64,0,0,255,224,0,0,0,63,64,0,7,255,248,0,0,0,63,64,0,127,255,255,128,0,0,63,64,11,255,208,255,254,0,0,63,64,255,254,0,31,255,224,0,63,65,191,224,0,2,255,192,0,63,175,61,0,63,64,27,64,0,63,255,0,0,63,64,0,0,11,255,255,64,0,63,64,0,0,191,255,228,15,255,255,255,252,0,127,255,64,15,255,255,255,252,0,62,127,64,15,255,255,255,252,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,255,255,255,255,255,208,0,63,64,255,255,255,255,255,208,0,63,64,255,255,255,255,255,208,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,31,255,64,0,0,63,64,0,0,15,255,0,0,0,63,64,0,0,15,248,0,0,0,63,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x6309 按 + 9,99,34,35,59,36,1,252,0,47,64,0,0,63,0,0,0,0,47,64,0,0,63,64,0,0,0,47,64,0,0,63,64,0,0,0,47,64,0,0,63,64,0,0,0,47,64,0,0,63,64,0,0,0,47,64,63,255,255,255,255,192,0,47,64,63,255,255,255,255,192,127,255,255,127,255,255,255,255,192,127,255,255,127,0,0,0,15,192,127,255,255,127,1,252,0,15,192,0,47,128,63,2,252,0,15,192,0,47,64,63,3,248,0,15,192,0,47,64,0,3,240,0,0,0,0,47,64,0,7,240,0,0,0,0,47,64,0,15,224,0,0,0,0,47,64,127,255,255,255,255,224,0,47,70,191,255,255,255,255,224,0,47,255,255,255,255,255,255,224,1,191,255,128,63,64,7,240,0,191,255,254,0,127,0,15,240,0,191,255,128,0,254,0,15,224,0,127,191,64,0,252,0,31,208,0,36,47,64,2,252,0,47,192,0,0,47,64,3,255,64,63,64,0,0,47,64,7,255,248,255,0,0,0,47,64,11,255,255,253,0,0,0,47,64,0,65,255,252,0,0,0,47,64,0,0,63,255,64,0,0,47,64,0,1,255,255,240,0,0,47,64,0,31,255,47,253,0,0,63,64,6,255,248,7,255,128,47,255,65,255,255,128,0,191,208,31,255,0,255,244,0,0,31,128,15,248,0,121,0,0,0,2,0,0,0,0,0,0,0,0,0,0, + // 0x6321 挡 + 33,99,33,35,59,36,1,252,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,1,0,63,64,20,0,0,63,64,47,128,63,64,63,64,0,63,64,31,192,63,64,127,0,0,63,64,15,208,63,64,190,0,0,63,64,11,224,63,64,253,0,127,255,255,67,240,63,65,252,0,127,255,255,67,244,63,66,248,0,127,255,255,66,248,63,67,240,0,0,63,128,1,248,63,71,224,0,0,63,64,0,128,63,66,208,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,128,0,0,0,63,64,63,255,255,255,255,0,0,63,64,63,255,255,255,255,0,0,63,91,63,255,255,255,255,0,0,63,255,64,0,0,0,127,0,6,255,255,64,0,0,0,127,0,191,255,249,0,0,0,0,127,0,191,255,128,0,0,0,0,127,0,127,127,64,31,255,255,255,255,0,16,63,64,31,255,255,255,255,0,0,63,64,31,255,255,255,255,0,0,63,64,0,0,0,0,127,0,0,63,64,0,0,0,0,127,0,0,63,64,0,0,0,0,127,0,0,63,64,0,0,0,0,127,0,0,63,64,191,255,255,255,255,0,0,63,64,191,255,255,255,255,0,0,63,64,191,255,255,255,255,0,47,255,64,0,0,0,0,127,0,31,255,0,0,0,0,0,127,0,15,248,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0, + // 0x6324 挤 + 36,99,34,34,50,36,1,253,0,126,0,0,1,180,0,0,0,0,126,0,0,2,252,0,0,0,0,126,0,0,0,253,0,0,0,0,126,0,0,0,191,0,0,0,0,126,2,255,255,255,255,255,192,0,126,2,255,255,255,255,255,192,0,126,2,255,255,255,255,255,192,127,255,252,3,244,0,15,224,0,127,255,252,1,252,0,47,192,0,127,255,252,0,254,0,63,128,0,0,191,0,0,127,64,255,0,0,0,126,0,0,47,211,253,0,0,0,126,0,0,11,255,244,0,0,0,126,0,0,3,255,224,0,0,0,126,0,0,11,255,244,0,0,0,126,0,1,255,255,255,212,0,0,127,186,255,255,215,255,255,224,0,191,253,255,253,0,111,255,192,11,255,252,255,144,0,1,191,128,191,255,144,80,252,0,63,65,0,127,254,0,0,252,0,63,64,0,62,190,0,0,252,0,63,64,0,16,126,0,0,252,0,63,64,0,0,126,0,0,252,0,63,64,0,0,126,0,1,252,0,63,64,0,0,126,0,1,252,0,63,64,0,0,126,0,3,248,0,63,64,0,0,126,0,3,244,0,63,64,0,0,126,0,11,240,0,63,64,0,0,126,0,47,224,0,63,64,0,0,190,0,191,192,0,63,64,0,63,254,7,255,0,0,63,64,0,31,252,7,248,0,0,63,64,0,15,224,0,144,0,0,63,64,0, + // 0x635f 损 + 95,99,34,35,59,36,1,252,0,63,0,0,0,0,0,0,0,0,63,0,6,170,170,170,160,0,0,63,0,7,255,255,255,240,0,0,63,0,7,255,255,255,240,0,0,63,0,7,240,0,3,240,0,0,63,0,7,240,0,3,240,0,0,63,0,7,240,0,3,240,0,127,255,255,7,240,0,3,240,0,127,255,255,7,255,255,255,240,0,127,255,255,7,255,255,255,240,0,0,127,0,6,170,170,170,160,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,31,255,255,255,253,0,0,63,0,31,255,255,255,253,0,0,63,0,31,234,170,170,253,0,0,63,6,31,128,0,0,253,0,0,63,255,31,128,0,0,253,0,0,191,255,95,128,63,0,253,0,111,255,254,31,128,127,0,253,0,191,255,144,31,128,127,0,253,0,191,255,0,31,128,127,0,253,0,120,63,0,31,128,127,0,253,0,0,63,0,31,128,127,0,253,0,0,63,0,31,128,190,0,253,0,0,63,0,31,128,253,0,253,0,0,63,0,26,67,252,16,84,0,0,63,0,0,15,244,125,0,0,0,63,0,0,127,240,255,128,0,0,63,0,6,255,192,127,244,0,21,191,0,127,254,0,11,254,0,63,255,7,255,244,0,1,255,208,31,254,2,255,64,0,0,47,208,15,228,0,224,0,0,0,7,64,0,0,0,0,0,0,0,0,0, + // 0x6362 换 + 98,99,34,35,59,36,1,252,0,127,0,0,14,128,0,0,0,0,127,0,0,47,192,0,0,0,0,127,0,0,63,128,0,0,0,0,127,0,0,191,255,255,128,0,0,127,0,1,255,255,255,240,0,0,127,0,3,255,255,255,208,0,0,127,0,15,240,0,63,192,0,127,255,252,63,208,0,191,0,0,127,255,252,255,128,1,253,0,0,127,255,254,255,170,171,254,168,0,0,127,0,191,255,255,255,252,0,0,127,0,63,255,255,255,252,0,0,127,0,31,128,127,1,252,0,0,127,0,31,128,127,1,252,0,0,127,0,31,128,127,1,252,0,0,127,0,31,128,127,1,252,0,0,127,109,31,128,127,1,252,0,0,127,253,31,128,127,1,252,0,27,255,254,31,128,127,1,252,0,191,255,244,31,128,190,1,252,0,127,255,3,255,255,255,255,255,192,62,191,3,255,255,255,255,255,192,0,127,3,255,255,255,255,255,192,0,127,0,0,3,255,64,0,0,0,127,0,0,11,255,192,0,0,0,127,0,0,15,235,224,0,0,0,127,0,0,63,195,248,0,0,0,127,0,0,255,65,254,0,0,0,127,0,7,253,0,191,128,0,0,127,0,47,244,0,47,244,0,0,191,1,255,208,0,11,254,64,47,255,31,255,0,0,1,255,224,15,253,15,248,0,0,0,127,192,15,228,3,128,0,0,0,7,0,0,0,0,0,0,0,0,0,0, + // 0x6389 掉 + 137,99,34,35,59,36,1,252,0,63,0,0,0,190,0,0,0,0,63,0,0,0,190,0,0,0,0,63,0,0,0,190,0,0,0,0,63,0,0,0,191,255,255,192,0,63,0,0,0,191,255,255,192,0,63,0,0,0,191,255,255,192,0,63,0,0,0,190,0,0,0,127,255,255,0,0,190,0,0,0,127,255,255,0,0,190,0,0,0,127,255,255,63,255,255,255,253,0,0,127,0,63,255,255,255,253,0,0,63,0,63,170,170,170,253,0,0,63,0,63,0,0,0,253,0,0,63,0,63,0,0,0,253,0,0,63,0,63,255,255,255,253,0,0,63,1,63,255,255,255,253,0,0,63,190,63,85,85,85,253,0,0,127,255,63,0,0,0,253,0,47,255,255,63,0,0,0,253,0,127,255,208,63,170,170,170,253,0,63,255,0,63,255,255,255,253,0,57,127,0,63,255,255,255,253,0,0,63,0,0,0,190,0,0,0,0,63,0,0,0,190,0,0,0,0,63,0,0,0,190,0,0,0,0,63,3,255,255,255,255,255,208,0,63,3,255,255,255,255,255,208,0,63,3,255,255,255,255,255,208,0,63,0,0,0,190,0,0,0,0,63,0,0,0,190,0,0,0,0,127,0,0,0,190,0,0,0,63,255,0,0,0,190,0,0,0,63,254,0,0,0,190,0,0,0,47,228,0,0,0,190,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x63a2 探 + 162,99,34,34,50,36,1,253,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,191,255,255,255,255,192,0,63,0,191,255,255,255,255,192,0,63,0,191,255,255,255,255,192,0,63,0,189,0,0,0,15,192,0,63,0,189,15,193,248,15,192,127,255,253,189,15,193,248,15,192,127,255,253,189,31,129,248,10,128,127,255,253,0,47,129,248,0,0,0,127,0,0,63,65,248,3,64,0,63,0,0,191,1,248,3,224,0,63,0,2,253,1,252,7,208,0,63,0,31,248,1,255,255,192,0,63,0,255,224,0,255,255,128,0,63,0,127,64,127,26,169,0,0,63,188,16,0,127,0,0,0,0,191,253,0,0,127,0,0,0,111,255,253,0,0,127,0,0,0,191,255,144,255,255,255,255,255,192,127,255,0,255,255,255,255,255,192,120,63,0,255,255,255,255,255,192,0,63,0,0,11,255,244,0,0,0,63,0,0,31,255,252,0,0,0,63,0,0,63,255,255,0,0,0,63,0,0,255,127,63,128,0,0,63,0,3,252,127,31,224,0,0,63,0,15,244,127,7,248,0,0,63,0,127,208,127,2,255,0,0,63,7,255,64,127,0,191,224,0,127,11,253,0,127,0,47,208,63,254,3,224,0,127,0,7,128,31,253,0,64,0,127,0,0,0,15,228,0,0,0,127,0,0,0, + // 0x63a5 接 + 165,99,34,35,59,36,1,252,0,47,64,0,0,127,0,0,0,0,47,64,0,0,127,0,0,0,0,47,64,0,0,127,0,0,0,0,47,64,0,0,127,0,0,0,0,47,64,191,255,255,255,255,64,0,47,64,191,255,255,255,255,64,0,47,64,127,255,255,255,255,64,0,47,128,0,252,0,15,192,0,127,255,254,0,253,0,31,192,0,127,255,254,0,126,0,63,64,0,127,255,254,0,127,0,63,0,0,0,47,64,0,63,0,126,0,0,0,47,66,255,255,255,255,255,208,0,47,67,255,255,255,255,255,208,0,47,67,255,255,255,255,255,208,0,47,64,0,7,244,0,0,0,0,47,174,0,11,240,0,0,0,0,63,255,0,15,208,0,0,0,27,255,255,255,255,255,255,255,208,255,255,230,255,255,255,255,255,208,191,255,66,255,255,255,255,255,208,126,47,64,0,253,0,31,192,0,0,47,64,1,252,0,47,192,0,0,47,64,3,248,0,63,64,0,0,47,64,7,244,0,127,0,0,0,47,64,15,255,128,254,0,0,0,47,64,31,255,255,252,0,0,0,47,64,6,159,255,248,0,0,0,47,64,0,0,255,254,0,0,0,47,64,0,7,255,255,224,0,0,63,64,5,191,253,191,253,0,47,255,71,255,255,224,11,255,64,15,255,3,255,249,0,0,191,0,15,248,2,249,0,0,0,28,0,0,0,0,0,0,0,0,0,0, + // 0x63a7 控 + 167,99,34,34,50,36,1,253,0,62,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,255,255,255,255,255,192,0,63,0,255,255,255,255,255,192,0,63,0,255,255,255,255,255,192,0,127,1,248,31,193,248,15,192,127,255,253,248,31,129,248,15,192,127,255,253,248,31,129,248,15,192,127,255,253,248,47,65,248,0,0,0,63,0,0,63,1,248,1,0,0,63,0,0,127,1,248,7,192,0,63,0,1,253,1,248,11,192,0,63,0,11,252,1,255,175,192,0,63,25,191,240,0,255,255,128,0,63,253,191,128,0,127,254,0,0,191,254,56,0,0,0,0,0,47,255,248,0,0,0,0,0,0,255,255,128,0,0,0,0,0,0,191,255,0,63,255,255,255,254,0,125,127,0,63,255,255,255,254,0,0,63,0,63,255,255,255,254,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,127,3,255,255,255,255,255,224,63,254,3,255,255,255,255,255,224,31,253,3,255,255,255,255,255,224,15,228,0,0,0,0,0,0,0, + // 0x63d0 提 + 208,99,34,35,59,36,1,252,0,126,0,0,0,0,0,0,0,0,126,0,15,255,255,255,252,0,0,126,0,15,255,255,255,252,0,0,126,0,15,213,85,86,252,0,0,126,0,15,192,0,0,252,0,0,126,0,15,192,0,0,252,0,0,126,0,15,255,255,255,252,0,127,255,254,15,255,255,255,252,0,127,255,254,15,213,85,85,252,0,127,255,254,15,192,0,0,252,0,0,127,0,15,192,0,0,252,0,0,126,0,15,255,255,255,252,0,0,126,0,15,255,255,255,252,0,0,126,0,5,85,85,85,84,0,0,126,0,0,0,0,0,0,0,0,126,0,0,0,0,0,0,0,0,126,24,255,255,255,255,255,192,0,127,253,255,255,255,255,255,192,6,255,254,170,170,255,170,170,128,191,255,248,0,0,127,0,0,0,191,255,0,11,128,127,0,0,0,126,190,0,15,192,127,0,0,0,0,126,0,15,192,127,170,168,0,0,126,0,31,192,127,255,252,0,0,126,0,47,192,127,255,252,0,0,126,0,63,192,127,0,0,0,0,126,0,63,224,127,0,0,0,0,126,0,191,244,127,0,0,0,0,126,0,253,252,127,0,0,0,0,126,2,252,63,191,0,0,0,0,126,7,244,31,255,255,255,224,63,254,15,240,2,255,255,255,208,47,252,47,192,0,27,255,255,192,31,228,7,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x63d2 插 + 210,99,33,34,50,36,1,253,0,62,0,0,0,0,0,0,0,0,63,0,0,0,0,22,248,0,0,63,0,1,90,191,255,253,0,0,63,0,127,255,255,255,254,0,0,63,0,63,255,255,233,64,0,0,63,0,42,85,127,0,0,0,0,63,0,0,0,63,0,0,0,127,255,253,0,0,63,0,0,0,127,255,254,255,255,255,255,255,192,127,255,254,255,255,255,255,255,192,0,127,1,255,255,255,255,255,192,0,63,0,0,0,63,0,0,0,0,63,0,0,0,63,0,0,0,0,63,0,0,4,63,0,0,0,0,63,0,0,62,63,0,0,0,0,63,0,182,255,255,63,255,64,0,63,124,191,254,191,63,255,64,0,127,253,191,208,63,47,255,64,111,255,253,190,0,63,0,47,64,191,255,144,189,0,63,0,47,64,127,191,0,189,0,63,0,47,64,32,63,0,191,253,63,47,255,64,0,63,0,191,253,63,47,255,64,0,63,0,191,253,63,47,255,64,0,63,0,189,0,63,0,47,64,0,63,0,189,0,63,0,47,64,0,63,0,189,0,63,0,47,64,0,63,0,189,0,63,0,47,64,0,63,0,189,0,63,0,47,64,0,63,0,191,255,255,255,255,64,0,127,0,191,255,255,255,255,64,63,254,0,191,255,255,255,255,64,31,253,0,189,0,0,0,47,64,15,228,0,125,0,0,0,47,64, + // 0x6536 收 + 54,101,34,35,59,36,1,252,0,0,15,192,3,144,0,0,0,0,0,31,192,3,244,0,0,0,0,0,31,192,7,240,0,0,0,0,0,31,192,11,240,0,0,0,2,144,31,192,15,224,0,0,0,7,240,31,192,31,208,0,0,0,7,240,31,192,47,192,0,0,0,7,240,31,192,63,255,255,255,224,7,240,31,192,127,255,255,255,224,7,240,31,192,255,255,255,255,224,7,240,31,193,255,0,0,253,0,7,240,31,195,255,64,1,252,0,7,240,31,199,255,128,2,252,0,7,240,31,207,255,192,3,248,0,7,240,31,239,239,192,3,244,0,7,240,31,255,203,224,7,240,0,7,240,31,223,7,240,11,240,0,7,240,31,198,3,244,15,208,0,7,240,31,192,2,252,47,192,0,7,240,31,192,1,252,63,128,0,7,240,31,192,0,254,191,0,0,7,241,191,192,0,127,254,0,0,7,255,255,192,0,63,252,0,0,127,255,255,192,0,47,248,0,0,127,255,175,192,0,31,240,0,0,63,228,31,192,0,127,252,0,0,41,0,31,192,1,255,254,0,0,0,0,31,192,7,254,255,128,0,0,0,31,192,47,248,63,240,0,0,0,31,193,255,224,15,253,0,0,0,31,203,255,128,7,255,128,0,0,31,239,253,0,0,255,224,0,0,31,207,224,0,0,47,192,0,0,31,199,0,0,0,3,0,0,0,0,0,0,0,0,0,0, + // 0x653e 放 + 62,101,34,35,59,36,1,252,0,3,240,0,0,185,0,0,0,0,3,240,0,0,254,0,0,0,0,3,240,0,0,254,0,0,0,0,3,240,0,0,253,0,0,0,0,3,240,0,1,252,0,0,0,0,7,244,0,2,252,0,0,0,127,255,255,255,67,248,0,0,0,127,255,255,255,67,255,255,255,224,127,255,255,255,71,255,255,255,224,0,126,0,0,15,255,255,255,224,0,126,0,0,31,224,2,252,0,0,126,0,0,47,240,2,248,0,0,126,0,0,63,240,3,244,0,0,127,255,252,191,244,3,240,0,0,127,255,253,255,248,7,240,0,0,127,255,255,254,252,11,224,0,0,126,0,253,248,252,15,208,0,0,126,0,252,112,190,31,192,0,0,126,0,252,0,127,47,192,0,0,190,0,252,0,63,127,64,0,0,190,1,252,0,63,255,0,0,0,253,1,252,0,31,254,0,0,0,253,1,252,0,15,253,0,0,0,252,1,252,0,11,252,0,0,1,252,1,252,0,11,252,0,0,2,252,1,248,0,31,253,0,0,3,248,2,248,0,127,255,64,0,7,240,2,248,1,255,191,192,0,15,240,2,248,7,253,47,240,0,31,208,3,244,47,244,15,253,0,63,192,7,245,255,208,3,255,128,255,67,255,251,255,64,0,255,208,126,2,255,227,252,0,0,47,128,8,1,255,64,208,0,0,6,0,0,0,0,0,0,0,0,0,0, + // 0x6570 数 + 112,101,34,35,59,36,1,252,0,0,252,0,0,46,64,0,0,7,192,252,15,128,63,128,0,0,11,208,252,31,192,63,64,0,0,3,240,252,63,0,127,0,0,0,2,244,252,189,0,127,0,0,0,1,240,252,120,0,190,0,0,0,42,234,254,170,160,254,0,0,0,127,255,255,255,241,255,255,255,224,127,255,255,255,242,255,255,255,224,0,7,255,0,3,255,255,255,224,0,31,255,224,3,248,0,253,0,0,127,255,252,11,252,1,252,0,2,254,253,255,79,252,2,252,0,31,244,252,63,239,253,2,252,0,127,208,252,11,127,254,3,248,0,63,0,252,0,255,191,3,244,0,24,2,252,0,254,63,7,240,0,0,11,240,0,124,63,79,240,0,0,15,208,0,4,47,207,224,0,127,255,255,255,240,31,239,192,0,191,255,255,255,240,15,255,192,0,191,255,255,255,240,11,255,64,0,0,253,0,252,0,3,255,0,0,2,252,2,252,0,3,254,0,0,3,248,3,244,0,3,253,0,0,11,255,71,240,0,15,255,0,0,15,255,255,224,0,63,255,192,0,6,159,255,192,0,191,255,224,0,0,2,255,240,3,255,15,248,0,0,31,255,254,31,252,3,254,0,6,255,247,255,255,240,1,255,208,63,255,128,127,255,192,0,127,208,47,248,0,13,190,0,0,31,64,14,64,0,0,52,0,0,2,0,0,0,0,0,0,0,0,0,0, + // 0x6572 敲 + 114,101,34,35,59,36,1,252,0,1,252,0,0,11,224,0,0,0,1,252,0,0,11,224,0,0,0,1,252,0,0,11,224,0,0,0,1,252,0,0,11,224,0,0,42,171,254,170,160,11,224,0,0,127,255,255,255,240,11,255,255,192,127,255,255,255,240,11,255,255,192,0,0,0,0,0,11,255,255,192,0,85,85,84,0,11,224,0,0,1,255,255,252,0,11,224,0,0,1,255,255,252,0,11,224,0,0,1,248,0,252,0,11,224,0,0,1,248,0,252,0,11,224,0,0,1,249,85,252,63,255,255,254,0,1,255,255,252,63,255,255,255,0,1,255,255,252,63,255,255,255,0,0,0,0,0,2,160,0,190,0,5,85,85,85,67,240,0,253,0,31,255,255,255,194,244,1,252,0,31,255,255,255,193,252,3,248,0,31,64,0,15,192,253,7,244,0,31,64,0,15,192,191,15,240,0,31,79,255,79,192,63,95,208,0,31,79,255,79,192,47,255,192,0,31,79,7,79,192,15,255,64,0,31,79,7,79,192,7,254,0,0,31,79,7,79,192,7,254,0,0,31,79,255,79,192,31,255,128,0,31,79,255,79,192,191,255,224,0,31,79,0,15,195,255,95,253,0,31,79,0,15,223,254,7,255,128,31,68,1,95,255,248,1,255,224,31,64,3,255,159,208,0,63,192,31,64,1,254,14,0,0,7,0,0,0,0,0,0,0,0,0,0, + // 0x6574 整 + 116,101,33,33,41,36,2,254,0,3,240,0,0,120,0,0,0,0,3,240,0,0,254,0,0,0,255,255,255,255,128,252,0,0,0,255,255,255,255,130,252,0,0,0,85,87,245,85,3,255,255,255,0,0,3,240,0,11,255,255,255,0,63,255,255,255,31,250,175,250,0,63,255,255,255,63,224,11,208,0,63,3,240,63,255,240,15,192,0,62,3,240,63,253,252,47,128,0,63,3,240,63,56,190,63,0,0,63,255,255,255,0,63,254,0,0,63,255,255,255,0,31,252,0,0,0,63,254,0,0,15,248,0,0,0,255,255,208,0,127,254,0,0,7,251,251,253,2,255,255,208,0,63,211,240,254,127,252,47,254,0,255,67,240,45,255,224,7,255,64,120,3,240,0,126,0,0,190,0,0,1,80,0,16,0,0,8,0,10,170,170,170,170,170,170,160,0,15,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,240,0,0,0,0,11,224,0,0,0,0,0,26,64,11,224,0,0,0,0,0,47,128,11,250,170,168,0,0,0,47,128,11,255,255,253,0,0,0,47,128,11,255,255,253,0,0,0,47,128,11,224,0,0,0,0,0,47,128,11,224,0,0,0,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64, + // 0x6599 料 + 153,101,34,34,50,36,1,253,0,11,208,0,0,0,15,208,0,0,11,208,0,0,0,15,208,0,24,11,208,164,1,0,15,208,0,62,11,208,252,15,128,15,208,0,47,11,208,252,31,244,15,208,0,31,11,209,244,7,253,15,208,0,15,75,210,240,0,255,79,208,0,15,139,211,240,0,47,15,208,0,11,203,211,208,0,9,15,208,0,11,203,215,192,0,0,15,208,0,7,139,219,128,0,0,15,208,0,0,11,208,0,0,0,15,208,0,127,255,255,252,120,0,15,208,0,127,255,255,252,255,64,15,208,0,127,255,255,252,191,224,15,208,0,0,63,224,0,31,252,15,208,0,0,63,240,0,2,248,15,208,0,0,191,252,0,0,176,15,208,0,0,255,255,0,0,0,15,208,0,1,255,255,128,0,0,15,208,64,3,251,239,208,0,0,15,255,208,3,235,215,240,0,22,255,255,224,15,203,211,248,107,255,255,255,224,31,203,209,243,255,255,255,228,0,63,75,208,131,255,254,95,208,0,191,11,208,2,249,0,15,208,0,189,11,208,0,0,0,15,208,0,60,11,208,0,0,0,15,208,0,36,11,208,0,0,0,15,208,0,0,11,208,0,0,0,15,208,0,0,11,208,0,0,0,15,208,0,0,11,208,0,0,0,15,208,0,0,11,208,0,0,0,15,208,0,0,11,208,0,0,0,15,208,0, + // 0x659c 斜 + 156,101,34,34,50,36,1,253,0,2,253,0,0,0,3,240,0,0,3,255,64,0,0,3,240,0,0,7,255,208,0,0,3,240,0,0,15,255,244,0,180,3,240,0,0,47,203,253,2,253,3,240,0,0,127,130,255,64,255,67,240,0,0,255,0,191,192,63,211,240,0,3,252,0,47,240,15,247,240,0,11,244,0,15,192,3,247,240,0,47,224,0,3,64,0,195,240,0,191,255,255,254,0,0,3,240,0,255,255,255,254,0,0,3,240,0,61,255,255,254,2,192,3,240,0,0,0,253,0,15,244,3,240,0,0,0,253,0,3,254,3,240,0,0,0,253,0,0,191,195,240,0,63,255,255,255,224,47,227,240,0,63,255,255,255,224,11,131,240,0,63,255,255,255,224,1,3,240,0,0,0,253,0,0,0,3,240,64,0,0,253,0,0,0,3,255,208,3,224,253,46,0,1,191,255,224,3,240,253,63,5,191,255,255,224,7,224,253,47,95,255,255,248,0,11,208,253,31,207,255,231,240,0,15,192,253,15,207,164,3,240,0,47,128,253,11,224,0,3,240,0,63,64,253,3,240,0,3,240,0,191,0,253,3,224,0,3,240,0,125,0,253,1,0,0,3,240,0,8,0,253,0,0,0,3,240,0,0,191,252,0,0,0,3,240,0,0,63,252,0,0,0,3,240,0,0,63,224,0,0,0,3,240,0, + // 0x65ad 断 + 173,101,32,35,24,36,3,252,0,0,104,0,0,0,0,64,168,0,188,0,0,0,11,224,248,16,188,0,0,2,255,248,248,244,188,63,41,191,255,228,248,248,188,62,63,255,249,0,248,124,188,124,63,249,0,0,248,60,188,188,63,64,0,0,248,61,188,244,63,64,0,0,248,61,189,240,63,64,0,0,248,16,188,16,63,64,0,0,248,0,188,0,63,64,0,0,249,255,255,255,63,64,0,0,249,255,255,255,63,255,255,254,249,255,255,254,63,255,255,254,248,1,252,0,63,255,255,254,248,3,255,0,63,64,63,0,248,7,255,192,63,64,63,0,248,15,255,240,63,64,63,0,248,31,254,252,63,64,63,0,248,62,188,190,63,0,63,0,248,252,188,60,63,0,63,0,255,248,188,0,63,0,63,0,255,240,188,0,127,0,63,0,249,192,188,0,126,0,63,0,248,0,188,0,190,0,63,0,248,0,188,0,253,0,63,0,248,0,20,1,252,0,63,0,255,255,255,255,252,0,63,0,255,255,255,255,244,0,63,0,255,255,255,255,240,0,63,0,248,0,0,31,208,0,63,0,248,0,0,63,192,0,63,0,248,0,0,31,64,0,63,0,0,0,0,10,0,0,63,0,0,0,0,0,0,0,0,0, + // 0x65b0 新 + 176,101,34,35,59,36,1,252,0,1,168,0,0,0,0,4,0,0,1,252,0,0,0,0,189,0,0,1,252,0,0,0,31,255,128,0,1,252,0,6,91,255,255,64,47,255,255,255,199,255,255,224,0,47,255,255,255,199,255,228,0,0,47,255,255,255,199,244,0,0,0,1,240,0,252,7,240,0,0,0,1,244,1,252,7,240,0,0,0,0,252,2,244,7,240,0,0,0,0,252,3,240,7,240,0,0,0,0,184,2,224,7,240,0,0,0,63,255,255,255,215,255,255,255,224,63,255,255,255,215,255,255,255,224,63,255,255,255,215,255,255,255,224,0,1,252,0,7,240,11,240,0,0,1,252,0,7,240,7,224,0,0,1,252,0,7,240,7,224,0,63,255,255,255,199,224,7,224,0,63,255,255,255,203,224,7,224,0,63,255,255,255,203,224,7,224,0,0,7,252,0,15,208,7,224,0,0,15,255,0,15,208,7,224,0,0,47,255,192,15,192,7,224,0,0,127,255,244,31,192,7,224,0,1,254,254,254,47,128,7,224,0,7,249,252,191,63,64,7,224,0,31,241,252,60,127,0,7,224,0,127,193,252,4,254,0,7,224,0,127,1,252,1,253,0,7,224,0,44,1,252,3,252,0,7,224,0,0,1,252,15,240,0,7,224,0,0,1,252,3,224,0,7,224,0,0,1,248,0,128,0,6,160,0,0,0,0,0,0,0,0,0,0, + // 0x65b9 方 + 185,101,32,35,24,36,2,252,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,11,244,0,0,0,0,0,0,7,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,255,255,255,255,0,0,0,15,255,255,255,255,0,0,0,31,255,255,255,254,0,0,0,31,208,0,0,254,0,0,0,47,192,0,0,254,0,0,0,63,128,0,0,254,0,0,0,127,64,0,0,253,0,0,0,255,0,0,0,253,0,0,0,255,0,0,0,253,0,0,2,253,0,0,1,252,0,0,7,252,0,0,1,252,0,0,15,244,0,0,2,252,0,0,63,224,0,0,3,248,0,0,255,192,0,0,3,248,0,3,255,0,0,0,7,244,0,47,253,0,0,0,15,240,0,255,244,0,3,255,255,224,0,191,192,0,3,255,255,192,0,45,0,0,2,255,254,0,0,0,0,0,0,0,0,0,0, + // 0x65e0 无 + 224,101,33,31,23,36,2,253,15,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,240,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,0,0,0,127,64,0,0,0,0,0,0,0,127,85,0,0,0,0,0,0,0,191,191,0,0,0,0,0,0,0,254,191,0,0,0,0,0,0,0,253,191,0,0,0,0,0,0,2,252,191,0,0,0,0,0,0,3,248,191,0,0,0,0,0,0,11,240,191,0,0,0,0,0,0,31,224,191,0,0,16,0,0,0,127,192,191,0,0,46,0,0,1,255,64,191,0,0,47,128,0,11,254,0,191,0,0,63,128,0,127,248,0,191,0,0,63,64,7,255,224,0,191,0,0,127,0,191,255,64,0,127,255,255,255,0,255,248,0,0,63,255,255,253,0,63,128,0,0,31,255,255,248,0,36,0,0,0,0,85,85,0,0, + // 0x65f6 时 + 246,101,32,34,16,36,3,253,0,0,0,0,0,0,169,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,255,255,253,0,0,0,254,0,255,255,253,0,0,0,254,0,255,255,253,0,0,0,254,0,252,0,189,0,0,0,254,0,252,0,189,63,255,255,255,254,252,0,189,63,255,255,255,254,252,0,189,63,255,255,255,254,252,0,189,21,85,85,254,84,252,0,189,0,0,0,254,0,252,0,189,0,0,0,254,0,255,255,253,2,192,0,254,0,255,255,253,15,224,0,254,0,255,255,253,7,244,0,254,0,252,0,189,3,252,0,254,0,252,0,189,0,254,0,254,0,252,0,189,0,191,64,254,0,252,0,189,0,63,192,254,0,252,0,189,0,31,224,254,0,252,0,189,0,15,240,254,0,252,0,189,0,7,64,254,0,252,0,189,0,0,0,254,0,255,255,253,0,0,0,254,0,255,255,253,0,0,0,254,0,255,255,253,0,0,0,254,0,252,0,0,0,0,0,254,0,252,0,0,0,0,0,254,0,252,0,0,0,0,0,254,0,0,0,0,0,47,255,253,0,0,0,0,0,31,255,252,0,0,0,0,0,15,255,224,0,0,0,0,0,5,80,0,0, + // 0x660e 明 + 14,102,31,33,8,36,3,252,255,255,255,3,255,255,255,244,255,255,255,3,255,255,255,244,255,255,255,3,255,255,255,244,252,0,127,3,240,0,3,244,252,0,63,3,240,0,3,244,252,0,63,3,240,0,3,244,252,0,63,3,240,0,3,244,252,0,63,3,240,0,3,244,252,0,63,3,255,255,255,244,252,0,63,3,255,255,255,244,255,255,255,3,255,255,255,244,255,255,255,3,240,0,3,244,255,255,255,3,240,0,3,244,252,0,63,3,240,0,3,244,252,0,63,7,240,0,3,244,252,0,63,7,240,0,3,244,252,0,63,7,240,0,3,244,252,0,63,7,255,255,255,244,252,0,63,11,255,255,255,244,255,255,255,15,255,255,255,244,255,255,255,15,208,0,3,244,255,255,255,15,192,0,3,244,252,0,0,47,192,0,3,244,252,0,0,63,128,0,3,244,252,0,0,127,0,0,3,244,84,0,0,255,0,0,3,244,0,0,2,253,0,0,3,244,0,0,7,252,0,0,3,244,0,0,15,240,0,0,7,244,0,0,127,224,0,31,255,240,0,0,127,128,0,15,255,240,0,0,14,0,0,11,254,64,0,0,0,0,0,0,0,0, + // 0x662f 是 + 47,102,34,33,41,36,1,253,0,21,85,85,85,85,85,64,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,0,0,0,0,31,192,0,0,63,0,0,0,0,31,192,0,0,63,85,85,85,85,111,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,0,0,0,0,31,192,0,0,63,0,0,0,0,31,192,0,0,63,149,85,85,85,111,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,0,0,0,1,252,0,0,0,0,0,3,144,1,252,0,0,0,0,0,7,244,1,252,0,0,0,0,0,11,240,1,252,0,0,0,0,0,15,240,1,255,255,255,244,0,0,15,224,1,255,255,255,244,0,0,47,240,1,255,255,255,244,0,0,63,252,1,252,0,0,0,0,0,191,255,1,252,0,0,0,0,1,254,127,209,252,0,0,0,0,7,252,31,255,252,0,0,0,0,31,240,7,255,255,255,255,255,208,127,208,0,127,255,255,255,255,192,47,64,0,1,191,255,255,255,128,9,0,0,0,0,0,0,0,0, + // 0x6682 暂 + 130,102,32,34,16,36,2,253,0,14,64,0,0,0,0,16,0,31,208,0,0,0,91,244,170,191,234,170,70,191,255,252,255,255,255,255,139,255,255,228,255,255,255,255,139,250,80,0,3,248,0,0,11,192,0,0,7,240,189,0,11,192,0,0,31,192,189,0,11,192,0,0,127,234,255,170,79,234,170,170,127,255,255,255,207,255,255,255,63,255,255,255,207,255,255,255,16,0,189,0,15,192,63,0,0,0,189,0,15,192,63,0,0,5,255,255,95,128,63,0,191,255,255,255,111,64,63,0,255,255,255,169,63,0,63,0,190,149,189,0,191,0,63,0,0,0,189,0,253,0,63,0,0,0,189,0,60,0,63,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,0,0,255,255,255,255,255,255,0,0,255,170,170,170,170,255,0,0,253,0,0,0,0,127,0,0,253,0,0,0,0,127,0,0,255,255,255,255,255,255,0,0,255,255,255,255,255,255,0,0,254,85,85,85,85,191,0,0,253,0,0,0,0,127,0,0,253,0,0,0,0,127,0,0,255,255,255,255,255,255,0,0,255,255,255,255,255,255,0,0,255,170,170,170,170,255,0,0,189,0,0,0,0,127,0, + // 0x66ab 暫 + 171,102,32,34,16,36,2,253,0,3,240,0,0,0,1,128,0,3,240,0,0,1,111,240,191,255,255,255,95,191,255,248,191,255,255,255,95,255,254,64,0,3,240,0,31,249,0,0,26,171,250,169,31,128,0,0,63,255,255,254,31,128,0,0,62,3,240,62,31,128,0,0,62,3,240,62,31,255,255,255,63,255,255,254,31,255,255,255,63,171,250,190,31,234,191,170,62,3,240,62,47,64,63,0,63,255,255,254,63,0,63,0,26,171,250,169,63,0,63,0,0,3,240,0,190,0,63,0,255,255,255,255,253,0,63,0,255,255,255,255,248,0,63,0,0,3,240,11,240,0,63,0,0,3,240,2,208,0,63,0,0,1,64,0,64,0,0,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,170,170,170,170,252,0,0,63,0,0,0,0,252,0,0,63,0,0,0,0,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,85,85,85,85,252,0,0,63,0,0,0,0,252,0,0,63,0,0,0,0,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,170,170,170,170,252,0,0,63,0,0,0,0,252,0, + // 0x66f4 更 + 244,102,33,33,41,36,2,252,191,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,254,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,1,254,170,175,250,170,175,208,0,1,252,0,7,240,0,15,208,0,1,252,0,7,240,0,15,208,0,1,254,170,175,250,170,175,208,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,1,252,0,7,240,0,15,208,0,1,252,0,7,240,0,15,208,0,1,252,0,11,240,0,15,208,0,1,254,170,175,250,170,175,208,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,0,6,0,15,208,0,0,0,0,0,127,64,47,192,0,0,0,0,0,63,208,63,128,0,0,0,0,0,15,244,255,64,0,0,0,0,0,7,255,255,0,0,0,0,0,0,1,255,252,0,0,0,0,0,0,0,191,253,0,0,0,0,0,0,11,255,255,249,0,0,0,0,6,255,255,255,255,255,169,85,0,255,255,244,27,255,255,255,255,64,127,254,0,0,107,255,255,255,0,47,144,0,0,0,21,175,254,0,0,0,0,0,0,0,0,0,0, + // 0x6700 最 + 0,103,32,33,8,36,2,253,0,191,255,255,255,255,254,0,0,191,255,255,255,255,254,0,0,190,85,85,85,85,254,0,0,190,0,0,0,0,190,0,0,190,0,0,0,0,190,0,0,191,255,255,255,255,254,0,0,191,255,255,255,255,254,0,0,190,0,0,0,0,190,0,0,190,0,0,0,0,190,0,0,191,255,255,255,255,254,0,0,191,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,254,255,255,255,255,255,255,255,254,171,254,171,255,170,170,170,170,3,240,0,252,0,0,0,0,3,240,0,252,0,0,0,0,3,255,255,252,255,255,255,244,3,255,255,252,255,255,255,244,3,249,85,252,107,234,175,240,3,240,0,252,31,192,15,208,3,249,85,252,15,208,47,192,3,255,255,252,7,240,127,128,3,255,255,252,2,252,255,0,3,240,0,252,0,255,252,0,3,240,0,252,0,127,244,0,3,250,191,252,0,127,240,0,255,255,255,252,7,255,254,0,255,255,255,252,127,253,255,228,254,148,0,255,255,224,47,255,0,0,0,252,254,0,7,254,0,0,0,252,96,0,0,44, + // 0x6709 有 + 9,103,33,35,59,36,1,252,0,0,0,100,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,2,252,0,0,0,0,0,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,0,0,31,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,2,255,255,255,255,255,128,0,0,7,255,255,255,255,255,128,0,0,15,255,255,255,255,255,128,0,0,63,253,0,0,0,47,128,0,0,255,253,0,0,0,47,128,0,3,255,253,0,0,0,47,128,0,31,252,255,255,255,255,255,128,0,127,240,255,255,255,255,255,128,0,63,128,255,255,255,255,255,128,0,14,0,253,0,0,0,47,128,0,0,0,253,0,0,0,47,128,0,0,0,253,0,0,0,47,128,0,0,0,255,255,255,255,255,128,0,0,0,255,255,255,255,255,128,0,0,0,255,255,255,255,255,128,0,0,0,253,0,0,0,47,128,0,0,0,253,0,0,0,47,128,0,0,0,253,0,0,0,47,128,0,0,0,253,0,0,0,63,128,0,0,0,253,0,0,255,255,64,0,0,0,253,0,0,191,255,0,0,0,0,253,0,0,127,248,0,0,0,0,0,0,0,0,0,0,0, + // 0x671f 期 + 31,103,33,34,50,36,1,252,0,252,0,190,0,0,0,0,0,0,252,0,190,1,255,255,255,64,0,252,0,190,1,255,255,255,64,0,252,0,190,1,255,255,255,64,63,255,255,255,241,252,0,63,64,63,255,255,255,241,252,0,63,64,63,255,255,255,241,252,0,63,64,0,252,0,190,1,252,0,63,64,0,252,0,190,1,252,0,63,64,0,254,170,254,1,255,255,255,64,0,255,255,254,1,255,255,255,64,0,255,255,254,1,255,255,255,64,0,252,0,190,1,252,0,63,64,0,252,0,190,1,252,0,63,64,0,252,0,190,1,252,0,63,64,0,254,170,254,1,252,0,63,64,0,255,255,254,1,248,0,63,64,0,255,255,254,1,248,0,63,64,0,252,0,190,1,255,255,255,64,0,252,0,190,2,255,255,255,64,0,252,0,190,2,255,255,255,64,127,255,255,255,242,244,0,63,64,191,255,255,255,243,244,0,63,64,191,255,255,255,243,240,0,63,64,0,16,0,64,3,240,0,63,64,0,126,2,224,7,240,0,63,64,0,255,7,244,11,224,0,63,64,2,252,2,253,15,208,0,63,64,7,248,0,255,31,192,0,63,64,31,240,0,63,175,192,0,63,64,63,208,0,47,127,128,127,255,0,47,64,0,4,63,0,63,255,0,10,0,0,0,10,0,47,248,0,0,0,0,0,0,0,0,0,0, + // 0x673a 机 + 58,103,34,35,59,36,1,252,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,127,255,255,192,0,0,7,240,0,127,255,255,192,0,0,7,240,0,127,255,255,192,0,0,7,240,0,127,0,31,192,0,0,7,240,0,127,0,15,192,0,0,7,240,0,127,0,15,192,0,63,255,255,252,127,0,15,192,0,63,255,255,252,127,0,15,192,0,63,255,255,252,127,0,15,192,0,0,15,240,0,127,0,15,192,0,0,31,240,0,127,0,15,192,0,0,47,240,0,127,0,15,192,0,0,63,244,0,127,0,15,192,0,0,63,252,0,127,0,15,192,0,0,191,255,0,127,0,15,192,0,0,255,255,192,127,0,15,192,0,1,251,255,224,127,0,15,192,0,3,247,243,248,190,0,15,192,0,7,215,241,252,190,0,15,192,0,15,199,240,240,253,0,15,192,0,47,135,240,32,253,0,15,192,0,63,71,240,0,252,0,15,192,0,254,7,240,1,252,0,15,192,64,124,7,240,2,248,0,15,193,224,56,7,240,3,244,0,15,193,240,16,7,240,7,240,0,15,193,240,0,7,240,15,224,0,15,193,240,0,7,240,31,208,0,15,193,240,0,7,240,63,192,0,15,210,240,0,7,240,255,0,0,15,255,240,0,7,240,254,0,0,15,255,208,0,7,240,40,0,0,2,255,128,0,1,64,0,0,0,0,0,0, + // 0x6740 杀 + 64,103,32,34,16,36,2,253,0,0,0,0,0,0,160,0,0,100,0,0,0,3,253,0,1,255,64,0,0,31,252,0,2,255,248,0,0,191,240,0,0,31,255,144,7,255,128,0,0,1,255,253,63,253,0,0,0,0,31,255,255,224,0,0,0,0,0,255,255,64,0,0,0,0,2,255,255,224,0,0,0,0,111,255,255,253,0,0,0,7,255,248,15,255,208,0,1,191,255,128,1,255,253,0,111,255,248,0,0,31,255,128,127,255,64,0,0,1,255,192,31,224,0,11,240,0,47,0,5,0,0,11,240,0,4,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,255,255,255,255,255,255,255,254,255,255,255,255,255,255,255,254,255,255,255,255,255,255,255,254,0,0,0,11,240,0,0,0,0,1,0,11,240,0,0,0,0,7,224,11,240,11,192,0,0,31,240,11,240,31,240,0,0,63,192,11,240,7,253,0,0,255,0,11,240,1,255,64,7,253,0,11,240,0,63,208,31,244,0,11,240,0,15,244,191,208,0,11,240,0,3,253,255,64,0,15,240,0,1,254,61,0,15,255,224,0,0,116,0,0,11,255,208,0,0,0,0,0,7,254,64,0,0,0, + // 0x675f 束 + 95,103,33,34,50,36,2,253,0,0,0,11,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,63,255,255,255,255,255,255,253,0,63,255,255,255,255,255,255,253,0,63,255,255,255,255,255,255,253,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,3,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,192,0,3,244,0,15,224,0,31,192,0,3,244,0,15,224,0,31,192,0,3,244,0,15,224,0,31,192,0,3,244,0,15,224,0,31,192,0,3,244,0,15,224,0,31,192,0,3,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,192,0,0,0,0,255,255,0,0,0,0,0,0,3,255,255,192,0,0,0,0,0,15,255,255,240,0,0,0,0,0,127,223,231,253,0,0,0,0,2,255,79,225,255,128,0,0,0,31,253,15,224,127,244,0,0,0,191,244,15,224,31,255,0,0,11,255,192,15,224,3,255,224,0,191,254,0,15,224,0,191,255,64,255,240,0,15,224,0,15,255,0,63,64,0,15,224,0,1,252,0,20,0,0,15,224,0,0,40,0,0,0,0,11,224,0,0,0,0, + // 0x6761 条 + 97,103,34,34,50,36,1,253,0,0,0,249,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,31,255,255,255,224,0,0,0,0,127,255,255,255,252,0,0,0,2,255,255,255,255,248,0,0,0,11,255,0,0,31,240,0,0,0,127,255,192,0,127,192,0,0,3,255,223,244,1,255,64,0,0,15,254,3,254,11,253,0,0,0,3,244,0,255,255,244,0,0,0,0,64,0,47,255,192,0,0,0,0,0,0,47,255,208,0,0,0,0,0,7,255,255,255,64,0,0,0,1,191,255,91,255,254,64,0,1,191,255,244,0,191,255,255,128,47,255,254,65,84,6,255,255,128,15,255,144,3,248,0,6,255,0,11,164,0,3,248,0,0,5,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,0,255,255,240,0,0,0,0,0,3,255,255,252,0,0,0,0,0,31,243,249,255,64,0,0,0,0,191,195,248,127,224,0,0,0,7,255,3,248,15,253,0,0,0,127,252,3,248,3,255,208,0,7,255,224,3,248,0,191,254,0,127,255,0,3,248,0,15,255,208,47,244,0,3,248,0,1,255,128,15,64,0,3,248,0,0,31,0,0,0,0,2,248,0,0,0,0, + // 0x6765 来 + 101,103,34,34,50,36,1,253,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,3,255,255,255,255,255,255,253,0,3,255,255,255,255,255,255,253,0,3,255,255,255,255,255,255,253,0,0,0,64,3,252,0,20,0,0,0,11,192,3,248,0,47,128,0,0,15,208,3,248,0,63,192,0,0,11,240,3,248,0,127,64,0,0,3,248,3,248,0,255,0,0,0,2,252,3,248,1,253,0,0,0,1,253,3,248,3,248,0,0,0,0,253,3,248,7,240,0,0,0,0,80,3,248,1,160,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,0,127,255,208,0,0,0,0,0,0,255,255,240,0,0,0,0,0,3,255,255,252,0,0,0,0,0,11,247,249,254,0,0,0,0,0,63,211,248,127,192,0,0,0,0,255,131,248,47,240,0,0,0,3,254,3,248,11,252,0,0,0,47,248,3,248,2,255,64,0,0,255,224,3,248,0,191,240,0,11,255,64,3,248,0,47,254,0,127,253,0,3,248,0,7,255,208,63,224,0,3,248,0,0,255,192,15,64,0,3,248,0,0,31,0,0,0,0,3,248,0,0,1,0,0,0,0,3,248,0,0,0,0, + // 0x677f 板 + 127,103,34,35,59,36,1,252,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,2,255,255,255,255,192,0,15,192,2,255,255,255,255,192,0,15,192,2,255,255,255,255,192,0,15,192,2,248,0,0,0,0,0,15,192,2,244,0,0,0,0,0,15,192,2,244,0,0,0,0,63,255,255,226,244,0,0,0,0,63,255,255,226,244,0,0,0,0,63,255,255,226,244,0,0,0,0,0,31,192,2,248,0,0,0,0,0,47,192,2,255,255,255,255,64,0,63,192,3,255,255,255,255,64,0,127,224,3,255,255,255,255,0,0,191,244,3,255,208,0,127,0,0,255,252,3,255,224,0,190,0,1,255,255,3,247,240,0,253,0,2,255,239,131,242,244,1,252,0,3,223,207,211,241,252,2,248,0,11,207,199,243,240,253,3,244,0,15,143,194,199,240,191,11,240,0,63,79,192,71,224,63,95,208,0,127,15,192,11,224,47,255,192,0,253,15,192,15,208,15,255,64,0,60,15,192,31,192,7,254,0,0,36,15,192,47,192,3,253,0,0,0,15,192,63,128,15,255,64,0,0,15,192,127,0,127,255,208,0,0,15,192,191,1,255,159,248,0,0,15,193,253,31,253,7,255,128,0,15,195,252,63,244,1,255,224,0,15,193,244,31,128,0,63,128,0,15,192,32,9,0,0,7,0,0,0,0,0,0,0,0,0,0, + // 0x6797 林 + 151,103,34,34,50,36,1,253,0,3,244,0,0,3,240,0,0,0,3,244,0,0,3,240,0,0,0,3,244,0,0,3,240,0,0,0,3,244,0,0,3,240,0,0,0,3,244,0,0,3,240,0,0,0,3,244,0,0,3,240,0,0,0,3,244,0,0,3,240,0,0,0,3,244,0,0,7,244,0,0,63,255,255,253,127,255,255,255,192,63,255,255,253,127,255,255,255,192,63,255,255,253,127,255,255,255,192,0,11,244,0,0,15,252,0,0,0,15,252,0,0,31,253,0,0,0,15,255,0,0,47,255,0,0,0,47,255,192,0,63,255,0,0,0,63,255,224,0,127,255,128,0,0,127,251,248,0,255,255,192,0,0,255,246,253,1,255,255,208,0,1,251,244,255,3,247,247,240,0,3,243,244,60,7,243,243,244,0,7,243,244,36,15,211,241,252,0,15,211,244,0,47,195,240,253,0,47,195,244,0,127,67,240,191,0,127,67,244,0,255,3,240,63,128,191,3,244,3,252,3,240,47,208,61,3,244,11,248,3,240,15,224,40,3,244,7,240,3,240,11,128,0,3,244,2,192,3,240,2,0,0,3,244,0,0,3,240,0,0,0,3,244,0,0,3,240,0,0,0,3,244,0,0,3,240,0,0,0,3,244,0,0,3,240,0,0,0,3,244,0,0,3,240,0,0,0,3,244,0,0,3,240,0,0, + // 0x67f1 柱 + 241,103,34,35,59,36,1,252,0,11,224,0,0,176,0,0,0,0,11,224,0,3,253,0,0,0,0,11,224,0,2,255,128,0,0,0,11,224,0,0,127,240,0,0,0,11,224,0,0,15,252,0,0,0,11,224,0,0,2,253,0,0,0,11,224,0,0,0,244,0,0,0,11,224,3,255,255,255,255,192,63,255,255,247,255,255,255,255,192,63,255,255,247,255,255,255,255,192,63,255,255,244,0,11,240,0,0,0,15,224,0,0,11,240,0,0,0,31,224,0,0,11,240,0,0,0,47,224,0,0,11,240,0,0,0,63,244,0,0,11,240,0,0,0,127,252,0,0,11,240,0,0,0,255,255,0,0,11,240,0,0,0,255,255,192,0,11,240,0,0,2,251,239,224,255,255,255,255,128,3,235,227,244,255,255,255,255,128,11,219,226,244,255,255,255,255,128,15,203,224,224,0,11,240,0,0,47,139,224,64,0,11,240,0,0,127,11,224,0,0,11,240,0,0,190,11,224,0,0,11,240,0,0,60,11,224,0,0,11,240,0,0,36,11,224,0,0,11,240,0,0,0,11,224,0,0,11,240,0,0,0,11,224,0,0,11,240,0,0,0,11,224,0,0,11,240,0,0,0,11,224,63,255,255,255,255,224,0,11,224,63,255,255,255,255,224,0,11,224,63,255,255,255,255,224,0,11,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6821 校 + 33,104,34,35,59,36,1,252,0,15,192,0,0,31,192,0,0,0,15,192,0,0,31,192,0,0,0,15,192,0,0,31,192,0,0,0,15,192,0,0,31,192,0,0,0,15,192,0,0,31,192,0,0,0,15,192,31,255,255,255,255,192,0,15,192,31,255,255,255,255,192,0,15,192,31,255,255,255,255,192,63,255,255,218,170,170,170,170,128,63,255,255,192,4,0,1,0,0,63,255,255,192,47,64,15,192,0,0,47,192,0,63,128,15,240,0,0,63,192,0,191,0,7,248,0,0,63,192,1,253,0,1,253,0,0,127,240,3,248,0,0,191,0,0,191,244,15,240,0,0,63,192,0,255,252,63,235,0,15,159,208,1,255,255,47,127,64,31,203,192,3,255,223,73,31,192,63,129,0,7,239,207,192,15,192,63,64,0,11,207,199,208,11,240,191,0,0,15,143,195,128,3,244,253,0,0,63,79,193,0,2,255,252,0,0,127,15,192,0,0,255,244,0,0,189,15,192,0,0,127,224,0,0,60,15,192,0,0,63,224,0,0,36,15,192,0,0,255,248,0,0,0,15,192,0,7,255,255,0,0,0,15,192,0,31,245,255,192,0,0,15,192,1,255,208,63,248,0,0,15,192,27,255,0,15,255,128,0,15,192,191,248,0,3,255,208,0,15,192,63,208,0,0,127,128,0,15,192,45,0,0,0,11,0,0,0,0,0,0,0,0,0,0, + // 0x683c 格 + 60,104,34,35,59,36,1,252,0,15,192,0,1,224,0,0,0,0,15,192,0,3,248,0,0,0,0,15,192,0,7,244,0,0,0,0,15,192,0,15,240,0,0,0,0,15,192,0,31,255,255,244,0,0,15,192,0,63,255,255,252,0,0,15,192,0,191,255,255,244,0,0,15,192,1,255,0,7,240,0,63,255,255,231,255,64,15,224,0,63,255,255,239,255,192,47,192,0,63,255,255,255,223,224,127,64,0,0,31,192,191,71,248,254,0,0,0,47,208,29,2,255,252,0,0,0,63,244,0,0,191,240,0,0,0,127,252,0,0,127,240,0,0,0,191,255,0,2,255,253,0,0,0,255,239,192,15,255,255,128,0,1,255,207,208,191,240,127,248,0,3,239,195,203,255,128,31,255,208,7,223,194,255,253,0,2,255,224,15,207,192,255,255,255,255,255,128,31,143,192,126,255,255,255,253,0,63,15,192,17,255,255,255,252,0,191,15,192,1,248,0,1,252,0,189,15,192,1,248,0,1,252,0,60,15,192,1,248,0,1,252,0,36,15,192,1,248,0,1,252,0,0,15,192,1,248,0,1,252,0,0,15,192,1,248,0,1,252,0,0,15,192,1,248,0,1,252,0,0,15,192,1,255,255,255,252,0,0,15,192,1,255,255,255,252,0,0,15,192,1,255,255,255,252,0,0,15,192,1,248,0,1,252,0,0,0,0,0,0,0,0,0,0, + // 0x68af 梯 + 175,104,33,34,50,36,1,253,0,15,192,0,24,0,2,144,0,0,15,192,0,252,0,3,248,0,0,15,192,0,190,0,7,240,0,0,15,192,0,63,0,15,224,0,0,15,192,0,63,128,31,192,0,0,15,192,0,31,64,31,64,0,0,15,192,15,255,255,255,255,0,0,15,192,15,255,255,255,255,0,63,255,255,207,255,255,255,255,0,63,255,255,192,0,47,64,63,0,63,255,255,192,0,47,64,63,0,0,47,192,0,0,47,64,63,0,0,63,192,0,0,47,64,63,0,0,63,208,7,255,255,255,255,0,0,127,240,11,255,255,255,255,0,0,255,248,11,255,255,255,255,0,0,255,253,15,192,47,64,0,0,2,255,239,15,192,47,64,0,0,3,255,207,223,192,47,64,0,0,7,223,203,239,255,255,255,255,192,15,207,195,111,255,255,255,255,192,31,143,192,63,255,255,255,255,192,63,15,192,63,0,255,64,15,192,190,15,192,0,3,255,64,31,192,124,15,192,0,11,255,64,31,192,56,15,192,0,47,255,64,31,128,16,15,192,0,255,111,64,47,128,0,15,192,3,253,47,64,63,64,0,15,192,31,244,47,95,255,0,0,15,193,255,224,47,79,255,0,0,15,193,255,64,47,79,248,0,0,15,192,124,0,47,64,0,0,0,15,192,16,0,47,64,0,0,0,15,192,0,0,47,64,0,0, + // 0x68c0 检 + 192,104,34,34,50,36,1,253,0,47,64,0,0,61,0,0,0,0,63,64,0,0,255,0,0,0,0,63,64,0,1,254,0,0,0,0,63,64,0,3,255,128,0,0,0,63,64,0,11,255,208,0,0,0,63,64,0,47,219,244,0,0,0,63,64,0,127,66,254,0,0,63,255,254,1,254,0,255,128,0,63,255,254,7,252,0,63,240,0,63,255,254,31,240,0,11,253,0,0,63,64,127,192,0,2,255,192,0,127,66,255,255,255,255,191,224,0,191,203,253,255,255,255,15,192,0,255,227,240,255,255,255,2,64,0,255,245,128,0,0,0,0,0,2,255,252,0,0,0,0,0,0,3,255,190,0,0,0,0,16,0,3,255,127,6,0,188,0,126,0,11,255,94,47,0,188,0,253,0,15,191,72,31,128,125,0,252,0,47,127,64,15,192,125,1,244,0,63,63,64,11,192,62,3,240,0,190,63,64,7,208,63,3,224,0,60,63,64,3,224,63,11,192,0,40,63,64,3,240,47,15,192,0,16,63,64,3,240,26,47,64,0,0,63,64,1,64,0,63,0,0,0,63,64,0,0,0,125,0,0,0,63,64,0,0,0,252,0,0,0,63,66,255,255,255,255,255,128,0,63,66,255,255,255,255,255,128,0,63,66,255,255,255,255,255,128,0,63,64,0,0,0,0,0,0,0,47,0,0,0,0,0,0,0, + // 0x69fd 槽 + 253,105,34,35,59,36,1,252,0,47,64,0,11,208,252,0,0,0,47,64,0,11,208,252,0,0,0,47,64,0,11,208,252,0,0,0,47,64,255,255,255,255,255,224,0,47,64,255,255,255,255,255,224,0,47,64,170,175,250,254,170,144,0,47,64,0,11,208,252,0,0,0,47,128,5,91,229,253,85,0,63,255,255,47,255,255,255,255,64,63,255,255,47,255,255,255,255,64,63,255,255,47,3,208,248,31,64,0,63,64,47,3,208,248,31,64,0,63,64,47,255,255,255,255,64,0,127,128,47,255,255,255,255,64,0,191,192,47,7,208,248,31,64,0,255,240,47,3,208,248,31,64,1,255,244,47,3,208,248,31,64,2,255,252,47,255,255,255,255,64,3,255,190,47,255,255,255,255,64,7,239,111,69,85,85,85,85,0,15,239,79,0,0,0,0,0,0,31,111,73,7,255,255,255,252,0,63,47,64,7,255,255,255,252,0,126,47,64,7,250,170,170,252,0,188,47,64,7,240,0,0,252,0,56,47,64,7,245,85,85,252,0,32,47,64,7,255,255,255,252,0,0,47,64,7,255,255,255,252,0,0,47,64,7,240,0,0,252,0,0,47,64,7,240,0,0,252,0,0,47,64,7,250,170,170,252,0,0,47,64,7,255,255,255,252,0,0,47,64,7,255,255,255,252,0,0,47,64,7,240,0,0,252,0,0,0,0,0,0,0,0,0,0, + // 0x6a21 模 + 33,106,34,35,59,36,1,252,0,63,0,0,63,0,63,64,0,0,63,0,0,63,0,63,64,0,0,63,0,0,63,0,63,64,0,0,63,0,255,255,255,255,255,192,0,63,0,255,255,255,255,255,192,0,63,0,191,255,255,255,255,128,0,63,0,0,63,0,63,64,0,63,255,254,0,63,0,63,64,0,63,255,254,0,21,0,21,0,0,63,255,254,47,255,255,255,252,0,0,63,84,47,255,255,255,252,0,0,63,64,47,213,85,86,252,0,0,127,128,47,128,0,0,252,0,0,191,208,47,149,85,85,252,0,0,255,240,47,255,255,255,252,0,1,255,248,47,255,255,255,252,0,2,255,253,47,128,0,0,252,0,3,255,127,47,128,0,0,252,0,7,255,47,111,255,255,255,252,0,15,255,14,47,255,255,255,252,0,15,191,8,5,85,191,85,84,0,47,63,0,0,0,190,0,0,0,127,63,0,0,0,254,0,0,0,189,63,1,255,255,255,255,255,128,124,63,1,255,255,255,255,255,192,56,63,1,255,255,255,255,255,192,16,63,0,0,7,255,240,0,0,0,63,0,0,15,243,252,0,0,0,63,0,0,63,208,255,0,0,0,63,0,2,255,128,127,224,0,0,63,0,111,254,0,31,254,64,0,63,7,255,244,0,7,255,208,0,63,2,255,64,0,0,191,128,0,63,0,228,0,0,0,7,0,0,0,0,0,0,0,0,0,0, + // 0x6a59 橙 + 89,106,34,34,50,36,1,253,0,31,192,0,0,0,80,0,0,0,31,192,26,170,130,240,32,0,0,31,192,47,255,241,244,244,0,0,31,192,47,255,224,255,252,0,0,31,192,0,15,192,255,224,0,0,31,192,4,15,192,191,66,0,0,31,192,62,47,128,63,11,192,0,31,192,127,255,0,47,175,192,63,255,255,159,254,0,31,254,0,63,255,255,131,253,0,15,244,0,63,255,255,131,255,255,255,252,0,0,47,192,15,239,255,254,255,0,0,63,192,47,202,170,168,191,208,0,63,192,255,0,0,0,47,240,0,191,226,253,0,0,0,11,192,0,255,244,179,255,255,255,249,64,0,255,252,3,255,255,255,248,0,2,255,255,3,245,85,87,248,0,3,255,223,131,240,0,2,248,0,7,239,207,195,240,0,2,248,0,15,223,199,67,240,0,2,248,0,15,159,194,3,250,170,171,248,0,63,31,192,3,255,255,255,248,0,127,31,192,3,255,255,255,248,0,189,31,192,0,8,0,14,64,0,60,31,192,0,189,0,31,192,0,36,31,192,0,127,0,47,128,0,0,31,192,0,63,0,63,0,0,0,31,192,0,47,64,126,0,0,0,31,192,0,30,0,124,0,0,0,31,192,255,255,255,255,255,224,0,31,192,255,255,255,255,255,224,0,31,192,255,255,255,255,255,208,0,31,192,0,0,0,0,0,0, + // 0x6b62 止 + 98,107,32,32,0,36,2,255,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,255,255,255,244,0,127,0,1,255,255,255,244,0,127,0,1,255,255,255,244,0,127,0,1,253,85,85,80,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,85,191,85,86,253,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x6b63 正 + 99,107,32,31,248,36,2,254,5,85,85,85,85,85,85,84,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,106,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,255,255,255,208,0,127,0,3,255,255,255,208,0,127,0,3,255,255,255,208,0,127,0,3,252,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0, + // 0x6b65 步 + 101,107,32,34,16,36,2,253,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,21,0,11,240,0,0,0,0,63,128,11,240,0,0,0,0,63,128,11,255,255,255,64,0,63,128,11,255,255,255,64,0,63,128,11,255,255,255,64,0,63,128,11,240,0,0,0,0,63,128,11,240,0,0,0,0,63,128,11,240,0,0,0,0,63,128,11,240,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,11,224,0,0,0,0,7,144,11,224,0,0,0,0,15,244,11,224,0,57,0,0,63,224,11,224,0,191,64,0,255,128,11,224,0,255,0,3,255,0,11,224,2,253,0,31,252,0,11,224,3,252,0,191,224,0,11,224,15,244,0,127,128,15,255,224,47,240,0,13,0,11,255,208,191,192,0,0,0,7,254,66,255,64,0,0,0,0,0,15,253,0,0,0,0,0,0,191,244,0,0,0,0,0,7,255,208,0,0,0,0,1,191,255,0,0,0,0,1,111,255,244,0,0,0,2,191,255,255,64,0,0,0,3,255,255,228,0,0,0,0,1,255,249,0,0,0,0,0,0,233,0,0,0,0,0,0, + // 0x6bd4 比 + 212,107,34,34,50,36,1,253,0,42,64,0,6,160,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,40,0,0,63,128,0,7,240,1,254,0,0,63,128,0,7,240,11,255,64,0,63,255,255,7,240,191,253,0,0,63,255,255,7,251,255,224,0,0,63,255,255,7,255,254,0,0,0,63,149,85,7,255,208,0,0,0,63,128,0,7,253,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,7,128,0,63,128,0,7,240,0,7,240,0,63,128,6,199,240,0,7,224,0,63,150,255,199,240,0,11,224,0,63,255,255,215,240,0,15,208,43,255,255,255,135,244,0,31,208,127,255,255,144,3,255,255,255,192,63,255,144,0,2,255,255,255,128,46,64,0,0,0,191,255,254,0,0,0,0,0,0,0,0,0,0, + // 0x6ca1 没 + 161,108,34,35,59,36,1,252,0,144,0,0,0,0,0,0,0,3,253,0,11,255,255,253,0,0,7,255,192,11,255,255,253,0,0,0,191,244,11,255,255,253,0,0,0,15,244,11,224,0,253,0,0,0,2,224,11,224,0,253,0,0,0,0,64,15,208,0,253,0,0,0,0,0,15,208,0,253,3,64,0,0,0,15,192,0,253,3,224,0,0,0,47,192,0,253,3,224,30,0,0,127,128,0,253,7,208,63,224,0,255,0,0,255,255,208,127,253,7,254,0,0,127,255,192,11,255,143,248,0,0,47,254,0,0,191,67,224,0,0,0,0,0,0,30,0,64,0,0,0,0,0,0,0,2,255,255,255,255,244,0,0,0,2,255,255,255,255,248,0,0,0,2,255,255,255,255,244,0,0,0,0,6,208,0,15,240,0,0,2,208,15,240,0,47,208,0,0,3,244,3,244,0,63,192,0,0,11,240,2,252,0,255,0,0,0,15,224,0,255,3,254,0,0,0,47,192,0,127,207,252,0,0,0,63,128,0,31,255,240,0,0,0,191,0,0,11,255,192,0,0,0,254,0,0,31,255,208,0,0,3,252,0,1,255,255,252,0,0,7,248,0,31,255,239,255,208,0,15,240,27,255,254,2,255,255,128,15,224,63,255,224,0,47,255,208,2,192,31,249,0,0,2,255,128,0,0,14,64,0,0,0,27,0,0,0,0,0,0,0,0,0,0, + // 0x6ce2 波 + 226,108,34,35,59,36,1,252,0,64,0,0,0,253,0,0,0,2,244,0,0,0,253,0,0,0,7,255,64,0,0,253,0,0,0,1,255,224,0,0,253,0,0,0,0,47,240,0,0,253,0,0,0,0,7,209,255,255,255,255,255,128,0,0,129,255,255,255,255,255,192,0,0,1,255,255,255,255,255,128,0,0,1,252,0,254,0,63,64,0,0,1,252,0,253,0,127,0,13,0,1,252,0,253,0,190,0,63,208,1,252,0,253,0,252,0,127,252,1,252,0,253,0,120,0,11,255,65,252,0,253,0,0,0,1,255,1,255,255,255,255,244,0,0,45,1,255,255,255,255,252,0,0,0,1,255,255,255,255,248,0,0,0,1,254,248,0,3,244,0,0,0,1,252,252,0,11,240,0,0,0,1,248,190,0,15,208,0,0,7,66,248,63,0,47,192,0,0,15,210,248,47,192,63,128,0,0,31,195,244,15,224,255,0,0,0,63,195,240,11,246,253,0,0,0,63,67,240,3,255,252,0,0,0,191,11,240,0,255,240,0,0,0,253,15,224,0,191,224,0,0,2,252,15,208,2,255,248,0,0,3,248,31,192,15,255,255,64,0,11,240,63,128,191,245,255,228,0,31,224,127,91,255,192,63,255,64,47,192,254,63,254,0,11,255,208,7,128,188,31,224,0,0,191,64,0,0,24,10,0,0,0,10,0,0,0,0,0,0,0,0,0,0, + // 0x6ce8 注 + 232,108,34,34,50,36,1,253,0,128,0,0,40,0,0,0,0,1,253,0,0,127,128,0,0,0,3,255,192,0,255,244,0,0,0,1,255,244,0,47,254,0,0,0,0,31,252,0,7,255,192,0,0,0,2,244,0,0,191,240,0,0,0,0,80,0,0,31,224,0,0,0,0,0,0,0,7,128,0,0,0,0,1,255,255,255,255,255,192,0,0,1,255,255,255,255,255,192,9,0,1,255,255,255,255,255,192,63,224,0,0,0,254,0,0,0,127,254,0,0,0,254,0,0,0,11,255,192,0,0,254,0,0,0,0,191,64,0,0,254,0,0,0,0,10,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,63,255,255,255,253,0,0,0,64,63,255,255,255,253,0,0,0,240,63,255,255,255,253,0,0,2,252,0,0,255,0,0,0,0,3,244,0,0,254,0,0,0,0,11,240,0,0,254,0,0,0,0,15,224,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,63,128,0,0,254,0,0,0,0,255,0,0,0,254,0,0,0,1,254,0,0,0,254,0,0,0,3,252,0,0,0,255,0,0,0,11,244,11,255,255,255,255,255,224,15,240,11,255,255,255,255,255,224,2,208,11,255,255,255,255,255,224,0,64,0,0,0,0,0,0,0, + // 0x6d17 洗 + 23,109,34,35,59,36,1,252,0,64,0,0,0,190,0,0,0,3,224,0,11,224,190,0,0,0,11,254,0,15,224,190,0,0,0,2,255,192,15,208,190,0,0,0,0,127,240,31,192,190,0,0,0,0,15,224,47,192,191,0,0,0,0,2,128,63,255,255,255,255,0,0,0,0,127,255,255,255,255,0,0,0,0,255,255,255,255,255,0,0,0,0,253,0,190,0,0,0,13,0,2,252,0,190,0,0,0,63,128,7,248,0,190,0,0,0,127,248,11,240,0,190,0,0,0,15,255,1,224,0,190,0,0,0,1,255,64,0,0,190,0,0,0,0,46,11,255,255,255,255,255,208,0,4,11,255,255,255,255,255,208,0,0,11,255,255,255,255,255,208,0,0,0,0,254,2,252,0,0,0,0,0,0,253,2,248,0,0,0,7,64,0,253,2,248,0,0,0,11,208,0,252,2,248,0,0,0,15,208,1,252,2,248,0,0,0,47,192,2,252,2,248,0,0,0,63,64,3,248,2,248,0,0,0,127,0,3,244,2,248,1,0,0,254,0,7,240,2,248,3,208,1,253,0,15,224,2,248,3,240,3,252,0,47,208,2,248,3,240,7,244,0,191,128,2,248,3,240,15,240,3,255,0,1,252,7,224,31,224,47,252,0,1,255,255,208,11,192,63,224,0,0,255,255,192,1,128,15,64,0,0,127,254,0,0,0,0,0,0,0,0,0,0, + // 0x6d3b 活 + 59,109,33,34,50,36,2,253,1,0,0,0,0,0,2,128,0,11,128,0,0,0,5,191,224,0,31,248,0,0,26,255,255,248,0,11,255,129,191,255,255,255,144,0,1,255,225,255,255,255,144,0,0,0,47,192,255,250,252,0,0,0,0,3,64,80,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,125,0,31,255,255,255,255,255,64,255,208,31,255,255,255,255,255,64,191,248,31,255,255,255,255,255,64,15,255,0,0,1,252,0,0,0,1,253,0,0,1,252,0,0,0,0,56,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,2,0,255,255,255,255,244,0,0,15,128,255,255,255,255,244,0,0,31,208,255,255,255,255,244,0,0,63,192,252,0,0,3,244,0,0,191,0,252,0,0,3,244,0,0,254,0,252,0,0,3,244,0,3,252,0,252,0,0,3,244,0,7,248,0,252,0,0,3,244,0,15,240,0,252,0,0,3,244,0,47,208,0,255,255,255,255,244,0,127,192,0,255,255,255,255,244,0,63,0,0,255,255,255,255,244,0,10,0,0,252,0,0,3,244,0,0,0,0,188,0,0,2,160,0, + // 0x6d41 流 + 65,109,34,34,50,36,1,253,0,64,0,0,1,252,0,0,0,2,244,0,0,1,252,0,0,0,7,255,0,0,1,252,0,0,0,2,255,224,0,1,252,0,0,0,0,63,244,0,1,252,0,0,0,0,7,247,255,255,255,255,255,192,0,0,199,255,255,255,255,255,192,0,0,7,255,255,255,255,255,192,0,0,0,0,63,192,0,0,0,0,0,0,0,127,64,47,0,0,9,0,0,0,190,0,63,192,0,63,224,0,0,252,0,15,240,0,127,253,0,2,254,170,175,252,0,11,255,131,255,255,255,255,255,0,0,191,3,255,255,255,255,255,128,0,13,3,255,234,149,64,31,208,0,0,0,0,0,0,0,15,64,0,0,0,31,128,0,5,64,0,0,0,0,31,129,248,15,192,0,0,1,0,31,129,248,15,192,0,0,3,208,31,129,248,15,192,0,0,7,240,31,129,248,15,192,0,0,15,240,31,129,248,15,192,0,0,31,208,47,65,248,15,192,0,0,63,192,47,65,248,15,192,0,0,127,64,63,1,248,15,192,0,0,255,0,127,1,248,15,193,0,1,253,0,255,1,248,15,193,224,3,252,1,253,1,248,15,194,240,11,244,3,252,1,248,15,194,224,15,240,15,244,1,248,15,195,224,15,208,63,224,1,248,15,255,208,3,192,15,128,0,164,11,255,192,0,0,2,0,0,0,1,170,0, + // 0x6d4b 测 + 75,109,33,34,50,36,1,253,0,64,0,0,0,0,0,10,0,3,224,0,0,0,0,0,31,64,15,254,15,255,255,244,0,31,64,3,255,207,255,255,244,61,31,64,0,127,223,213,86,244,61,31,64,0,15,143,192,0,244,61,31,64,0,2,15,192,0,244,61,31,64,0,0,15,195,208,244,61,31,64,0,0,15,195,208,244,61,31,64,0,0,15,195,208,244,61,31,64,8,0,15,195,208,244,61,31,64,47,128,15,195,208,244,61,31,64,127,244,15,195,208,244,61,31,64,31,255,15,195,208,244,61,31,64,2,254,15,195,208,244,61,31,64,0,60,15,195,208,244,61,31,64,0,0,15,195,208,244,61,31,64,0,0,15,195,208,244,61,31,64,0,0,15,195,208,244,61,31,64,0,0,15,195,208,244,61,31,64,0,24,15,195,208,244,61,31,64,0,63,15,195,208,244,61,31,64,0,63,15,195,208,244,61,31,64,0,191,15,199,192,244,61,31,64,0,254,15,203,192,244,61,31,64,1,252,5,79,192,80,20,31,64,2,252,0,15,132,0,0,31,64,3,244,0,47,125,0,0,31,64,7,240,0,126,63,64,0,31,64,15,224,1,252,15,208,0,31,64,31,208,7,244,3,240,0,31,64,63,192,63,208,1,252,63,255,64,11,64,63,64,0,184,31,254,0,0,0,8,0,0,16,10,164,0, + // 0x6d88 消 + 136,109,32,35,24,36,2,252,1,0,0,0,2,252,0,0,15,208,0,96,2,252,0,164,47,248,3,244,2,252,0,254,11,255,66,252,2,252,2,252,0,255,192,254,2,252,3,248,0,47,64,191,2,252,11,240,0,6,0,63,130,252,15,208,0,0,0,47,194,252,47,192,0,0,0,13,2,252,6,0,0,0,0,0,2,252,0,0,120,0,1,255,255,255,255,244,255,128,1,255,255,255,255,244,255,240,1,255,255,255,255,244,31,253,1,252,0,0,3,244,3,253,1,252,0,0,3,244,0,184,1,252,0,0,3,244,0,32,1,252,0,0,3,244,0,0,1,255,255,255,255,244,0,0,1,255,255,255,255,244,0,0,1,255,255,255,255,244,0,14,1,252,0,0,3,244,0,31,193,252,0,0,3,244,0,63,129,252,0,0,3,244,0,127,1,255,255,255,255,244,0,255,1,255,255,255,255,244,1,253,1,255,255,255,255,244,3,252,1,252,0,0,3,244,7,244,1,252,0,0,3,244,15,240,1,252,0,0,3,244,31,224,1,252,0,0,3,244,63,192,1,252,0,0,3,244,127,128,1,252,0,11,255,240,31,0,1,252,0,7,255,240,1,0,1,252,0,3,255,128,0,0,0,0,0,0,0,0, + // 0x6de1 淡 + 225,109,34,34,50,36,1,253,0,0,0,0,0,253,0,0,0,2,224,0,0,0,253,0,0,0,7,254,0,9,64,253,0,160,0,2,255,208,31,128,253,0,254,0,0,127,244,63,64,252,2,252,0,0,11,240,63,0,252,3,244,0,0,1,192,254,1,252,11,240,0,0,0,1,252,2,248,31,192,0,0,0,2,248,3,253,47,64,0,0,0,0,16,7,255,129,0,0,8,0,0,0,15,255,248,0,0,47,128,0,0,63,219,255,64,0,127,244,0,2,255,64,255,240,0,31,255,0,111,254,0,31,254,0,1,255,67,255,244,0,2,255,64,0,46,2,255,128,253,0,126,0,0,4,0,228,0,252,0,8,0,0,0,0,0,0,252,0,0,0,0,0,0,47,64,252,0,190,0,0,3,0,63,65,252,0,255,0,0,11,192,127,1,252,2,253,0,0,15,224,190,2,254,3,248,0,0,47,192,252,3,255,11,240,0,0,63,131,252,3,255,95,208,0,0,191,7,240,11,255,223,128,0,0,254,0,96,15,239,224,0,0,2,253,0,0,63,199,248,0,0,7,252,0,1,255,131,254,0,0,15,240,0,27,254,0,255,208,0,31,224,2,255,248,0,63,254,64,31,192,47,255,208,0,11,255,208,3,128,15,253,0,0,1,255,128,0,0,7,144,0,0,0,7,0,0,0,0,0,0,0,0,0,0, + // 0x6df7 混 + 247,109,34,34,50,36,1,253,0,128,0,0,0,0,0,0,0,3,248,0,170,170,170,170,168,0,7,255,129,255,255,255,255,252,0,1,255,241,255,255,255,255,252,0,0,31,225,252,0,0,1,252,0,0,3,193,252,0,0,1,252,0,0,0,65,252,0,0,1,252,0,0,0,1,255,255,255,255,252,0,0,0,1,255,255,255,255,252,0,0,0,1,254,170,170,170,252,0,13,0,1,252,0,0,1,252,0,63,224,1,252,0,0,1,252,0,127,253,1,254,170,170,171,252,0,7,255,1,255,255,255,255,252,0,0,190,1,255,255,255,255,252,0,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,0,15,208,0,0,0,0,0,252,0,15,208,0,0,0,1,0,252,0,15,208,8,0,0,7,128,252,0,15,208,127,0,0,15,224,255,255,207,215,255,128,0,31,208,255,255,207,255,253,0,0,47,192,255,255,207,255,208,0,0,63,64,252,0,15,253,0,0,0,191,0,252,0,15,208,0,0,0,254,0,252,0,15,208,2,0,2,252,0,252,0,15,208,3,224,3,248,0,253,111,207,208,7,224,11,240,22,255,255,207,208,11,208,15,240,63,255,255,207,255,255,192,31,208,63,255,148,7,255,255,192,3,192,42,64,0,1,255,254,0,0,0,0,0,0,0,0,0,0, + // 0x6e05 清 + 5,110,34,34,50,36,1,253,0,64,0,0,0,253,0,0,0,3,248,0,0,0,253,0,0,0,11,255,66,255,255,255,255,255,64,1,255,226,255,255,255,255,255,64,0,47,241,85,85,254,85,85,0,0,7,208,0,0,253,0,0,0,0,0,128,21,85,254,85,84,0,0,0,0,191,255,255,255,253,0,0,0,0,191,255,255,255,253,0,0,0,0,0,0,253,0,0,0,13,0,0,0,0,253,0,0,0,63,208,11,255,255,255,255,255,224,127,253,11,255,255,255,255,255,224,11,255,133,85,85,85,85,85,64,1,255,0,0,0,0,0,0,0,0,46,0,26,170,170,170,164,0,0,4,0,47,255,255,255,252,0,0,0,0,47,255,255,255,252,0,0,0,0,47,128,0,1,252,0,0,1,0,47,128,0,1,252,0,0,3,208,47,255,255,255,252,0,0,7,240,47,255,255,255,252,0,0,15,240,47,128,0,1,252,0,0,31,208,47,128,0,1,252,0,0,63,192,47,128,0,1,252,0,0,127,64,47,255,255,255,252,0,0,255,0,47,255,255,255,252,0,1,254,0,47,149,85,86,252,0,3,252,0,47,128,0,1,252,0,7,244,0,47,128,0,1,252,0,15,240,0,47,128,0,1,252,0,31,208,0,47,128,2,255,248,0,3,192,0,47,128,1,255,244,0,0,0,0,47,128,0,255,144,0, + // 0x6e29 温 + 41,110,34,33,41,36,1,253,0,224,0,0,0,0,0,0,0,3,254,0,127,255,255,255,240,0,3,255,224,127,255,255,255,240,0,0,127,248,127,255,255,255,240,0,0,7,240,127,0,0,3,240,0,0,0,144,127,0,0,3,240,0,0,0,0,127,170,170,171,240,0,0,0,0,127,255,255,255,240,0,0,0,0,127,255,255,255,240,0,4,0,0,127,0,0,3,240,0,47,128,0,127,0,0,3,240,0,127,248,0,127,0,0,3,240,0,31,255,64,127,255,255,255,240,0,1,255,128,127,255,255,255,240,0,0,47,0,127,255,255,255,240,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,253,0,0,3,66,255,255,255,255,253,0,0,7,226,255,255,255,255,253,0,0,15,226,244,47,7,208,253,0,0,31,194,244,47,7,208,253,0,0,63,130,244,47,7,208,253,0,0,127,2,244,47,7,208,253,0,0,254,2,244,47,7,208,253,0,2,252,2,244,47,7,208,253,0,3,248,2,244,47,7,208,253,0,11,240,2,244,47,7,208,253,0,31,224,127,255,255,255,255,255,224,31,192,127,255,255,255,255,255,224,3,128,127,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x6e38 游 + 56,110,34,34,50,36,1,253,1,0,0,47,64,2,160,0,0,3,224,0,47,64,3,244,0,0,15,253,0,47,64,7,240,0,0,7,255,128,47,64,7,240,0,0,0,191,192,47,64,11,224,0,0,0,31,64,63,128,15,255,255,224,0,6,191,255,255,223,255,255,224,0,0,191,255,255,239,255,255,224,0,0,191,255,255,255,64,0,0,0,0,2,244,0,191,0,0,0,13,0,2,244,1,253,0,0,0,63,224,2,244,0,127,255,255,64,127,253,3,244,0,15,255,255,208,11,255,3,244,0,11,255,255,128,0,188,3,255,255,0,0,191,0,0,20,3,255,255,0,1,253,0,0,0,3,255,255,0,11,248,0,0,0,3,240,63,0,31,224,0,0,0,3,240,63,0,31,192,0,0,0,7,240,63,0,31,192,0,0,52,7,224,63,63,255,255,224,0,62,11,224,63,63,255,255,224,0,190,11,208,63,63,255,255,224,0,253,15,192,63,0,31,192,0,1,252,15,192,63,0,31,192,0,2,252,31,128,127,0,31,192,0,3,244,63,64,126,0,31,192,0,7,240,63,0,126,0,31,192,0,11,240,190,0,190,0,31,192,0,15,208,252,0,189,0,31,192,0,47,195,252,0,253,0,31,192,0,63,135,240,191,252,31,255,128,0,11,66,208,127,248,15,255,64,0,0,0,128,63,208,15,249,0,0, + // 0x6e90 源 + 144,110,34,34,50,36,1,253,0,64,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,11,255,3,255,255,255,255,255,192,2,255,211,255,255,255,255,255,192,0,63,227,255,255,255,255,255,192,0,11,195,244,0,15,240,0,0,0,1,3,244,0,15,224,0,0,0,0,3,244,0,15,192,0,0,0,0,3,244,85,111,213,85,0,0,0,3,244,255,255,255,255,0,13,0,3,244,255,255,255,255,0,63,208,3,244,252,0,0,63,0,127,248,3,244,252,0,0,63,0,11,255,3,244,253,85,85,127,0,1,254,3,244,255,255,255,255,0,0,44,3,240,255,255,255,255,0,0,0,3,240,252,0,0,63,0,0,0,3,240,252,0,0,63,0,0,0,3,240,252,0,0,63,0,0,0,7,240,255,255,255,255,0,0,13,7,240,255,255,255,255,0,0,31,139,224,85,95,229,85,0,0,63,139,224,0,15,208,0,0,0,127,15,208,36,15,208,116,0,0,191,15,192,191,15,210,252,0,0,253,31,192,253,15,208,254,0,2,252,47,129,252,15,208,127,64,3,248,63,67,244,15,208,63,192,7,240,127,11,240,15,208,31,208,15,240,254,31,208,15,208,15,224,31,209,253,47,128,15,208,7,208,63,195,252,2,11,255,192,0,0,11,65,244,0,7,255,192,0,0,0,0,16,0,3,249,0,0,0, + // 0x6ea2 溢 + 162,110,34,34,50,36,1,253,0,64,0,0,0,0,0,0,0,3,244,0,0,15,255,252,0,0,11,255,0,6,79,255,253,0,0,2,255,208,15,223,255,255,0,0,0,47,208,47,192,0,63,64,0,0,7,128,127,64,0,47,192,0,0,0,1,254,0,0,15,244,0,0,0,7,254,170,170,175,253,0,0,0,31,243,255,255,253,255,192,0,0,15,195,255,255,252,127,64,14,0,3,0,0,0,0,13,0,63,208,0,0,0,0,0,0,0,127,252,0,0,0,0,0,0,0,11,255,0,0,15,255,253,0,0,1,254,0,10,79,255,255,0,0,0,44,0,15,223,255,255,64,0,0,0,0,63,192,0,47,192,0,0,0,0,191,64,0,15,224,0,0,0,1,254,0,0,11,248,0,0,0,3,252,0,0,2,254,0,0,0,31,240,0,0,0,255,208,0,29,127,255,255,255,255,255,208,0,63,175,255,255,255,255,251,64,0,63,73,255,255,255,255,244,0,0,191,0,252,47,11,194,244,0,0,254,0,252,47,11,194,244,0,1,252,0,252,47,11,194,244,0,3,248,0,252,47,11,194,244,0,7,244,0,252,47,11,194,244,0,15,240,0,252,47,11,194,244,0,31,208,127,255,255,255,255,255,224,47,192,127,255,255,255,255,255,224,11,128,127,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x6ed1 滑 + 209,110,33,34,50,36,1,253,0,64,0,0,0,0,0,0,0,2,248,0,26,170,170,170,144,0,7,255,64,31,255,255,255,224,0,1,255,240,31,255,255,255,224,0,0,31,244,31,128,0,7,224,0,0,2,224,31,128,0,7,224,0,0,0,64,31,128,255,255,224,0,0,0,0,31,128,255,255,224,0,0,0,0,31,128,244,11,224,0,0,0,0,31,128,244,7,224,0,8,0,0,31,128,244,7,224,0,47,128,10,191,234,250,175,250,128,127,248,15,255,255,255,255,255,192,31,255,79,255,255,255,255,255,192,1,255,79,192,0,0,0,15,192,0,46,15,192,0,0,0,15,192,0,0,15,239,255,255,255,239,192,0,0,6,175,255,255,255,234,128,0,0,0,31,234,170,175,224,0,0,0,0,31,128,0,7,224,0,0,3,192,31,128,0,7,224,0,0,7,240,31,255,255,255,224,0,0,15,240,31,255,255,255,224,0,0,31,208,31,213,85,91,224,0,0,63,192,31,128,0,7,224,0,0,127,64,31,213,85,91,224,0,0,255,0,31,255,255,255,224,0,1,254,0,31,255,255,255,224,0,3,252,0,31,128,0,7,224,0,7,244,0,31,128,0,7,224,0,15,240,0,31,128,0,7,224,0,31,208,0,31,128,6,175,224,0,3,192,0,31,128,7,255,208,0,0,0,0,31,128,3,254,64,0, + // 0x6f0f 漏 + 15,111,33,34,50,36,1,253,1,0,0,0,0,0,0,0,0,3,224,6,170,170,170,170,170,0,15,253,7,255,255,255,255,255,0,3,255,199,255,255,255,255,255,0,0,191,199,224,0,0,0,127,0,0,31,71,224,0,0,0,127,0,0,2,7,224,0,0,0,127,0,0,0,7,250,170,170,170,255,0,0,0,7,255,255,255,255,255,0,0,0,7,255,255,255,255,255,0,4,0,7,224,0,0,0,0,0,47,128,7,224,0,0,0,0,0,127,244,7,250,170,170,170,170,128,31,255,7,255,255,255,255,255,192,2,255,11,255,255,255,255,255,192,0,61,11,224,0,31,64,0,0,0,4,11,208,0,31,64,0,0,0,0,11,234,170,191,170,170,64,0,0,11,255,255,255,255,255,64,0,0,15,255,255,255,255,255,64,0,40,15,239,0,31,64,31,64,0,63,15,239,20,31,84,31,64,0,127,15,239,126,31,126,31,64,0,254,31,175,47,239,95,223,64,0,253,47,175,7,159,67,159,64,2,252,63,111,0,31,64,31,64,3,248,63,47,20,31,100,31,64,7,244,127,47,125,31,190,31,64,11,240,190,47,47,159,95,159,64,15,208,253,47,11,239,71,95,64,47,194,252,47,1,31,64,31,64,63,131,244,47,0,31,65,111,64,31,1,240,47,0,31,71,255,64,1,0,16,47,0,31,3,253,0, + // 0x6fc0 激 + 192,111,34,35,59,36,1,252,1,0,0,15,144,1,228,0,0,3,224,0,31,192,1,252,0,0,15,253,0,47,192,2,248,0,0,3,255,133,127,149,66,244,0,0,0,127,223,255,255,195,244,0,0,0,15,15,255,255,195,240,0,0,0,1,15,64,15,195,240,0,0,0,0,15,64,15,199,255,255,224,0,0,15,149,95,203,255,255,224,0,0,15,255,255,207,255,255,224,13,0,15,255,255,223,192,63,0,63,208,15,64,15,239,192,126,0,127,248,15,64,15,255,208,126,0,15,254,15,149,95,255,208,189,0,1,253,15,255,255,255,224,189,0,0,56,15,255,255,255,240,252,0,0,0,0,31,192,186,240,252,0,0,0,0,31,192,33,244,252,0,0,0,106,191,234,160,249,248,0,0,0,191,255,255,240,254,244,0,0,24,191,255,255,240,191,240,0,0,47,0,252,0,0,127,240,0,0,63,64,252,0,0,63,208,0,0,127,0,254,170,128,47,192,0,0,254,0,255,255,128,47,192,0,0,252,1,255,255,128,63,192,0,2,252,2,244,31,128,191,240,0,3,248,3,240,31,129,255,244,0,7,240,7,240,31,131,253,252,0,15,240,15,208,47,79,240,255,0,31,208,63,192,63,127,208,63,192,63,192,255,15,255,255,128,31,224,11,130,253,15,254,189,0,7,192,0,0,112,6,148,36,0,1,0,0,0,0,0,0,0,0,0,0, + // 0x706f 灯 + 111,112,33,34,50,36,2,253,0,10,128,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,15,255,255,255,255,128,0,31,192,15,255,255,255,255,128,0,31,192,15,255,255,255,255,128,0,31,192,5,85,87,249,85,0,0,31,194,144,0,3,248,0,0,47,31,195,240,0,3,248,0,0,62,31,195,224,0,3,248,0,0,62,31,203,208,0,3,248,0,0,62,31,207,192,0,3,248,0,0,61,31,207,64,0,3,248,0,0,125,31,239,0,0,3,248,0,0,188,31,238,0,0,3,248,0,0,252,31,192,0,0,3,248,0,0,248,47,128,0,0,3,248,0,0,20,47,128,0,0,3,248,0,0,0,47,128,0,0,3,248,0,0,0,63,64,0,0,3,248,0,0,0,63,128,0,0,3,248,0,0,0,63,208,0,0,3,248,0,0,0,127,244,0,0,3,248,0,0,0,191,253,0,0,3,248,0,0,0,253,191,64,0,3,248,0,0,2,252,63,208,0,3,248,0,0,3,252,15,240,0,3,248,0,0,11,244,3,208,0,3,248,0,0,15,240,1,128,0,3,248,0,0,63,208,0,0,0,3,248,0,0,255,128,0,0,191,255,244,0,0,255,0,0,0,63,255,240,0,0,60,0,0,0,47,255,208,0,0,16,0,0,0,26,84,0,0,0, + // 0x70b9 点 + 185,112,32,34,16,36,2,253,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,255,255,255,248,0,0,0,15,255,255,255,248,0,0,0,15,255,255,255,248,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,255,255,255,255,255,255,0,0,255,255,255,255,255,255,0,0,255,255,255,255,255,255,0,0,252,0,0,0,0,127,0,0,252,0,0,0,0,127,0,0,252,0,0,0,0,127,0,0,252,0,0,0,0,127,0,0,252,0,0,0,0,127,0,0,252,0,0,0,0,127,0,0,255,255,255,255,255,255,0,0,255,255,255,255,255,255,0,0,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,228,0,0,1,0,31,0,2,252,15,208,31,192,63,192,3,248,15,208,15,192,31,208,11,240,11,224,15,224,11,240,15,224,11,240,7,240,3,252,63,192,7,240,3,244,1,253,191,64,7,240,2,248,0,255,254,0,7,240,1,252,0,126,24,0,2,80,0,64,0,32, + // 0x70ed 热 + 237,112,33,35,59,36,2,252,0,31,128,0,15,192,0,0,0,0,47,128,0,15,192,0,0,0,0,47,128,0,15,192,0,0,0,0,47,128,0,15,192,0,0,0,0,47,128,0,15,192,0,0,0,191,255,255,175,255,255,255,0,0,191,255,255,175,255,255,255,0,0,191,255,255,175,255,255,255,0,0,0,47,128,0,15,192,63,0,0,0,47,128,0,31,192,63,0,0,0,47,128,0,31,128,63,0,0,0,47,129,64,47,128,63,0,0,0,47,255,137,47,64,63,0,0,1,191,255,223,191,64,63,0,0,191,255,255,191,255,0,63,0,0,255,255,208,7,255,0,63,0,0,255,255,128,0,255,224,63,0,0,180,47,128,0,255,252,63,0,0,0,47,128,2,255,255,47,8,0,0,47,128,7,244,191,47,75,128,0,47,128,31,240,29,31,79,192,0,47,128,127,192,0,15,207,128,31,255,66,255,64,0,15,255,64,15,255,0,253,0,0,7,255,0,15,248,0,48,0,0,1,248,0,0,0,0,0,0,0,2,0,0,0,248,0,0,1,64,47,128,0,3,252,15,208,31,192,47,208,0,7,244,11,224,15,208,15,240,0,15,240,7,240,11,240,7,248,0,47,192,7,240,7,240,2,252,0,127,128,7,240,3,244,0,255,0,255,0,3,240,3,248,0,191,0,44,0,2,144,1,144,0,56,0,0,0,0,0,0,0,0,0,0, + // 0x7247 片 + 71,114,32,35,24,36,1,252,0,0,0,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,213,85,95,245,85,84,0,47,255,255,255,255,255,253,0,47,255,255,255,255,255,253,0,47,255,255,255,255,255,253,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,213,85,85,85,80,0,0,63,255,255,255,255,244,0,0,63,255,255,255,255,244,0,0,127,255,255,255,255,244,0,0,127,0,0,0,7,244,0,0,191,0,0,0,7,244,0,0,255,0,0,0,7,244,0,0,254,0,0,0,7,244,0,2,252,0,0,0,7,244,0,3,252,0,0,0,7,244,0,11,248,0,0,0,7,244,0,15,240,0,0,0,7,244,0,63,224,0,0,0,7,244,0,127,192,0,0,0,7,244,0,31,0,0,0,0,7,244,0,9,0,0,0,0,7,244,0,0,0,0,0,0,0,0,0, + // 0x7269 物 + 105,114,34,34,50,36,1,253,0,3,240,0,14,64,0,0,0,0,3,240,0,31,128,0,0,0,11,131,240,0,47,64,0,0,0,15,195,240,0,63,0,0,0,0,15,195,240,0,63,0,0,0,0,15,195,240,0,190,0,0,0,0,15,131,240,0,255,255,255,255,208,31,255,255,209,255,255,255,255,192,31,255,255,211,255,255,255,255,192,47,255,255,215,240,126,15,207,192,63,7,240,15,224,188,31,143,192,62,3,240,31,192,252,47,79,192,125,3,240,63,129,248,63,15,192,252,3,240,255,2,244,63,15,192,44,3,240,125,3,240,126,31,192,0,3,240,4,11,208,189,31,192,0,3,240,96,15,192,252,31,128,0,3,255,240,47,129,248,31,128,0,47,255,240,127,3,244,47,128,27,255,255,144,253,3,240,47,128,127,255,244,2,252,11,224,47,64,63,251,240,11,244,15,192,63,64,62,3,240,47,224,47,192,63,64,0,3,240,63,192,63,64,63,0,0,3,240,15,0,191,0,63,0,0,3,240,0,1,253,0,127,0,0,3,240,0,3,248,0,127,0,0,3,240,0,15,240,0,190,0,0,3,240,0,47,208,0,253,0,0,3,240,0,191,128,2,252,0,0,3,240,3,255,3,255,252,0,0,3,240,1,252,2,255,244,0,0,3,240,0,32,1,255,208,0,0,3,240,0,0,0,0,0,0, + // 0x7279 特 + 121,114,34,34,50,36,1,253,0,3,240,0,0,31,192,0,0,0,3,240,0,0,31,192,0,0,10,67,240,0,0,31,192,0,0,15,195,240,0,0,31,192,0,0,15,195,240,3,255,255,255,255,0,15,195,240,3,255,255,255,255,0,15,131,240,3,255,255,255,255,0,31,239,250,128,0,31,192,0,0,31,255,255,208,0,31,192,0,0,47,255,255,208,0,31,192,0,0,63,91,245,64,0,31,192,0,0,62,3,240,63,255,255,255,255,208,125,3,240,63,255,255,255,255,208,252,3,240,63,255,255,255,255,208,124,3,240,0,0,0,15,208,0,4,3,240,0,0,0,15,208,0,0,3,241,176,0,0,15,208,0,0,3,255,240,0,0,15,208,0,0,111,255,255,255,255,255,255,192,47,255,255,111,255,255,255,255,192,127,255,240,47,255,255,255,255,192,63,251,240,0,0,0,15,208,0,57,3,240,0,180,0,15,208,0,0,3,240,2,252,0,15,208,0,0,3,240,0,255,0,15,208,0,0,3,240,0,63,128,15,208,0,0,3,240,0,31,208,15,208,0,0,3,240,0,11,240,15,208,0,0,3,240,0,3,128,15,208,0,0,3,240,0,0,0,15,208,0,0,3,240,0,0,21,95,192,0,0,3,240,0,0,63,255,192,0,0,3,240,0,0,47,255,128,0,0,3,240,0,0,31,249,0,0, + // 0x7387 率 + 135,115,32,35,24,36,2,252,0,0,0,11,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,0,0,0,63,64,0,0,0,2,0,0,190,0,0,3,208,31,208,1,252,7,64,15,244,31,248,31,240,15,208,63,208,2,255,127,208,63,65,255,0,0,127,95,240,190,3,248,0,0,28,3,254,248,0,80,0,0,0,0,191,241,64,0,0,0,0,64,47,207,193,128,0,0,27,192,127,7,247,248,0,1,255,209,252,3,255,255,64,111,255,255,255,255,252,191,240,255,228,191,255,255,254,15,253,126,0,127,255,165,127,2,254,32,0,0,15,224,30,0,116,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,0,0,0,0, + // 0x73af 环 + 175,115,33,32,32,36,1,253,127,255,253,63,255,255,255,255,192,127,255,253,63,255,255,255,255,192,127,255,253,63,255,255,255,255,192,0,126,0,0,0,31,208,0,0,0,126,0,0,0,63,192,0,0,0,126,0,0,0,63,128,0,0,0,126,0,0,0,191,0,0,0,0,126,0,0,0,255,0,0,0,0,126,0,0,2,254,0,0,0,0,126,0,0,3,254,16,0,0,0,126,0,0,11,255,188,0,0,63,255,248,0,15,255,254,0,0,63,255,248,0,63,254,191,64,0,63,255,248,0,191,254,63,192,0,0,126,0,1,255,190,15,240,0,0,126,0,3,253,190,7,248,0,0,126,0,15,248,190,2,253,0,0,126,0,63,240,190,0,255,0,0,126,0,255,192,190,0,127,192,0,126,0,191,64,190,0,47,64,0,126,0,45,0,190,0,12,0,0,126,24,4,0,190,0,0,0,0,127,253,0,0,190,0,0,0,1,191,253,0,0,190,0,0,0,111,255,248,0,0,190,0,0,0,191,254,64,0,0,190,0,0,0,127,208,0,0,0,190,0,0,0,52,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0, + // 0x7528 用 + 40,117,31,32,0,36,1,252,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,252,0,191,0,1,252,0,1,252,0,191,0,1,252,0,1,252,0,191,0,1,252,0,1,252,0,191,0,1,252,0,1,252,0,191,0,1,252,0,1,252,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,252,0,191,0,1,252,0,1,252,0,191,0,1,252,0,1,252,0,190,0,1,252,0,1,252,0,190,0,1,252,0,1,252,0,190,0,1,252,0,1,252,0,190,0,1,252,0,1,252,0,191,255,255,255,255,255,252,0,255,255,255,255,255,255,252,0,255,255,255,255,255,255,252,0,252,0,1,252,0,1,252,1,252,0,1,252,0,1,252,2,252,0,1,252,0,1,252,3,248,0,1,252,0,1,252,3,244,0,1,252,0,1,252,11,240,0,1,252,0,1,252,15,224,0,1,252,0,1,252,47,192,0,1,252,0,2,252,127,192,0,1,252,31,255,252,127,0,0,1,252,15,255,244,13,0,0,1,248,11,255,144,0,0,0,0,0,0,0,0, + // 0x7535 电 + 53,117,31,34,16,36,4,253,0,0,0,169,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,253,0,0,0,0,21,85,85,254,85,85,84,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,252,0,191,0,0,253,0,0,252,0,191,0,0,253,0,0,252,0,191,0,0,253,0,0,252,0,191,0,0,253,0,0,252,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,252,0,191,0,0,254,0,1,252,0,191,0,0,253,0,0,252,0,191,0,0,253,0,0,252,0,191,0,0,253,0,0,252,0,191,0,0,253,0,0,252,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,252,0,191,85,85,254,85,85,85,0,191,0,0,253,0,0,3,224,85,0,0,253,0,0,3,248,0,0,0,254,0,0,3,244,0,0,0,254,0,0,7,244,0,0,0,255,0,0,15,240,0,0,0,191,255,255,255,224,0,0,0,127,255,255,255,192,0,0,0,31,255,255,255,0,0,0,0,0,85,85,80,0, + // 0x7565 略 + 101,117,32,35,24,36,3,252,0,0,0,0,10,64,0,0,0,0,0,0,15,208,0,0,255,255,255,0,47,192,0,0,255,255,255,0,63,128,0,0,255,255,255,0,191,255,255,208,244,124,63,1,255,255,255,240,244,124,63,3,255,255,255,208,244,124,63,15,248,0,47,192,244,124,63,63,252,0,127,0,244,124,63,255,191,0,254,0,244,124,63,253,63,130,252,0,244,124,63,180,15,219,240,0,255,255,255,16,7,255,208,0,255,255,255,0,2,255,128,0,255,255,255,0,7,255,192,0,244,124,63,0,47,255,244,0,244,124,63,0,255,215,254,0,244,124,63,11,255,1,255,228,244,124,63,191,248,0,63,255,244,124,63,255,208,0,7,254,244,124,63,255,255,255,255,252,244,124,63,255,255,255,255,224,244,124,63,31,255,255,255,208,244,124,63,15,208,0,15,208,255,255,255,15,208,0,15,208,255,255,255,15,208,0,15,208,255,255,255,15,208,0,15,208,244,0,0,15,208,0,15,208,244,0,0,15,208,0,15,208,244,0,0,15,208,0,15,208,0,0,0,15,255,255,255,208,0,0,0,15,255,255,255,208,0,0,0,15,255,255,255,208,0,0,0,15,208,0,15,208,0,0,0,0,0,0,0,0, + // 0x767d 白 + 125,118,26,34,238,36,5,253,0,0,11,228,0,0,0,0,0,15,244,0,0,0,0,0,15,240,0,0,0,0,0,31,224,0,0,0,0,0,63,192,0,0,0,85,85,127,213,85,85,80,255,255,255,255,255,255,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,254,85,85,85,85,91,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,254,85,85,85,85,91,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240, + // 0x7684 的 + 132,118,31,34,16,36,3,253,0,46,64,0,14,64,0,0,0,63,128,0,15,208,0,0,0,63,64,0,31,192,0,0,0,127,0,0,47,128,0,0,0,190,0,0,63,64,0,0,0,253,0,0,127,0,0,0,255,255,255,192,191,255,255,244,255,255,255,192,255,255,255,244,255,255,255,194,255,255,255,244,252,0,15,195,248,0,2,244,252,0,15,203,240,0,3,244,252,0,15,207,224,0,3,244,252,0,15,255,192,0,3,244,252,0,15,239,128,0,3,240,252,0,15,199,5,0,3,240,252,0,15,192,63,0,3,240,255,255,255,192,63,192,3,240,255,255,255,192,15,224,3,240,255,255,255,192,11,244,3,240,252,0,15,192,3,252,3,240,252,0,15,192,0,254,3,240,252,0,15,192,0,191,7,240,252,0,15,192,0,63,71,240,252,0,15,192,0,24,7,224,252,0,15,192,0,0,11,224,252,0,15,192,0,0,11,224,252,0,15,192,0,0,15,208,255,255,255,192,0,0,15,208,255,255,255,192,0,0,31,192,255,255,255,192,0,0,63,192,252,0,0,0,7,255,255,128,252,0,0,0,3,255,255,0,252,0,0,0,2,255,248,0,0,0,0,0,0,0,0,0, + // 0x76d1 监 + 209,118,33,34,50,36,2,253,0,0,47,128,1,228,0,0,0,6,144,47,128,2,252,0,0,0,11,224,47,128,3,248,0,0,0,11,224,47,128,3,240,0,0,0,11,224,47,128,7,240,0,0,0,11,224,47,128,15,255,255,255,0,11,224,47,128,31,255,255,255,0,11,224,47,128,47,255,255,255,0,11,224,47,128,63,64,0,0,0,11,224,47,128,191,0,0,0,0,11,224,47,129,253,7,0,0,0,11,224,47,131,252,47,192,0,0,11,224,47,139,244,47,244,0,0,11,224,47,159,224,7,253,0,0,11,224,47,135,192,1,255,128,0,11,224,47,129,64,0,63,208,0,11,208,47,128,0,0,15,224,0,0,0,47,128,0,0,7,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,255,255,128,0,1,255,255,255,255,255,255,128,0,1,255,255,255,255,255,255,128,0,1,252,3,240,15,192,47,128,0,1,252,3,240,15,192,47,128,0,1,252,3,240,15,192,47,128,0,1,252,3,240,15,192,47,128,0,1,252,3,240,15,192,47,128,0,1,252,3,240,15,192,47,128,0,1,252,3,240,15,192,47,128,0,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0, + // 0x76f4 直 + 244,118,32,34,16,36,2,253,0,0,0,3,248,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,0,0,0,15,240,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,208,0,0,0,0,0,63,255,255,255,255,0,15,208,63,255,255,255,255,0,15,208,63,85,85,85,191,0,15,208,63,0,0,0,127,0,15,208,63,0,0,0,127,0,15,208,63,255,255,255,255,0,15,208,63,255,255,255,255,0,15,208,63,85,85,85,191,0,15,208,63,0,0,0,127,0,15,208,63,0,0,0,127,0,15,208,63,255,255,255,255,0,15,208,63,255,255,255,255,0,15,208,63,85,85,85,191,0,15,208,63,0,0,0,127,0,15,208,63,0,0,0,127,0,15,208,63,255,255,255,255,0,15,208,63,255,255,255,255,0,15,208,21,85,85,85,85,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,255,255,255,255,255,255,255,15,255,255,255,255,255,255,255,15,255,255,255,255,255,255,255,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0, + // 0x7701 省 + 1,119,32,34,16,36,2,253,0,0,0,11,224,0,0,0,0,0,0,11,224,0,0,0,0,3,208,11,224,2,224,0,0,11,244,11,224,15,252,0,0,47,224,11,224,2,255,0,0,191,192,11,224,0,191,208,2,255,0,11,224,0,31,244,11,252,0,11,224,10,7,253,127,240,0,15,224,47,225,255,191,192,63,255,224,255,192,125,30,0,31,255,219,255,0,16,0,0,15,250,191,244,0,0,0,0,0,27,255,128,0,0,0,0,6,255,253,0,0,0,0,22,255,255,128,0,0,0,111,255,255,255,255,255,255,0,255,255,255,255,255,255,255,0,127,255,250,170,170,170,255,0,21,7,240,0,0,0,191,0,0,7,240,0,0,0,191,0,0,7,255,255,255,255,255,0,0,7,255,255,255,255,255,0,0,7,245,85,85,85,191,0,0,7,240,0,0,0,191,0,0,7,240,0,0,0,191,0,0,7,255,255,255,255,255,0,0,7,255,255,255,255,255,0,0,7,245,85,85,85,191,0,0,7,240,0,0,0,191,0,0,7,240,0,0,0,191,0,0,7,255,255,255,255,255,0,0,7,255,255,255,255,255,0,0,7,250,170,170,170,255,0,0,7,240,0,0,0,106,0, + // 0x7720 眠 + 32,119,33,32,32,36,2,253,127,255,252,15,255,255,255,253,0,127,255,252,15,255,255,255,253,0,127,255,252,15,255,255,255,253,0,126,0,252,15,192,0,0,253,0,126,0,252,15,192,0,0,253,0,126,0,252,15,192,0,0,253,0,126,0,252,15,192,0,0,253,0,127,255,252,15,255,255,255,253,0,127,255,252,15,255,255,255,253,0,127,255,252,15,255,255,255,253,0,126,0,252,15,192,15,192,0,0,126,0,252,15,192,15,192,0,0,126,0,252,15,192,15,208,0,0,126,0,252,15,192,15,208,0,0,126,0,252,15,192,11,208,0,0,127,255,252,15,255,255,255,255,64,127,255,252,15,255,255,255,255,64,127,255,252,15,255,255,255,255,64,126,0,252,15,208,7,240,0,0,126,0,252,15,192,3,240,0,0,126,0,252,15,192,3,240,0,0,126,0,252,15,192,3,244,0,0,127,0,252,15,192,2,248,0,0,127,255,252,15,192,1,252,0,0,127,255,252,15,192,0,252,7,64,127,255,252,15,192,0,253,7,192,126,0,0,15,192,105,190,11,192,126,0,0,15,255,254,63,11,192,126,0,2,255,255,254,47,223,192,0,0,3,255,255,228,15,255,128,0,0,3,255,164,0,7,255,0,0,0,1,144,0,0,1,252,0, + // 0x786e 确 + 110,120,33,35,59,36,1,252,0,0,0,0,3,144,0,0,0,0,0,0,0,7,240,0,0,0,63,255,255,244,11,224,0,0,0,63,255,255,244,15,255,254,0,0,63,255,255,244,47,255,255,192,0,0,63,64,0,63,255,255,64,0,0,63,0,0,255,0,191,0,0,0,127,0,1,252,0,252,0,0,0,190,0,3,248,3,248,0,0,0,189,0,15,255,255,255,255,64,0,252,0,63,255,255,255,255,64,0,252,0,15,255,255,255,255,64,1,252,0,3,248,11,208,63,64,2,255,255,193,248,11,208,63,64,3,255,255,193,248,11,208,63,64,7,255,255,193,248,11,208,63,64,15,244,15,193,255,255,255,255,64,15,244,15,193,255,255,255,255,64,47,244,15,193,254,175,234,191,64,63,244,15,193,248,11,208,63,64,255,244,15,193,248,11,208,63,64,127,244,15,193,248,11,208,63,64,62,244,15,194,255,255,255,255,64,2,244,15,194,255,255,255,255,64,2,244,15,195,255,255,255,255,64,2,244,15,195,240,0,0,63,64,2,255,255,199,240,0,0,63,64,2,255,255,203,224,0,0,63,64,2,255,255,223,208,0,0,63,64,2,244,0,31,192,0,0,63,64,2,244,0,63,128,0,0,63,64,2,244,0,255,0,0,63,255,0,0,0,0,125,0,0,63,255,0,0,0,0,24,0,0,47,248,0,0,0,0,0,0,0,0,0,0, + // 0x79bb 离 + 187,121,32,34,16,36,2,253,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,191,255,255,255,255,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,1,0,0,0,0,105,2,64,15,208,106,0,0,190,11,248,63,128,191,0,0,190,7,255,254,0,191,0,0,190,0,63,252,0,191,0,0,190,1,191,255,128,191,0,0,190,47,253,47,240,191,0,0,190,47,208,7,208,191,0,0,190,9,0,0,64,191,0,0,191,255,255,255,255,255,0,0,191,255,255,255,255,255,0,0,106,170,191,234,170,170,0,0,0,0,63,128,0,0,0,0,0,0,127,64,0,0,0,15,255,255,255,255,255,255,240,15,255,255,255,255,255,255,240,15,255,255,255,255,255,255,240,15,224,1,252,2,224,11,240,15,224,2,252,3,244,11,240,15,224,3,244,0,252,11,240,15,231,255,250,255,254,11,240,15,227,255,255,255,255,75,240,15,227,255,255,234,175,203,240,15,224,0,0,0,15,75,240,15,224,0,0,0,0,11,240,15,224,0,0,0,15,255,240,15,224,0,0,0,11,255,208,15,224,0,0,0,3,254,64, + // 0x79fb 移 + 251,121,34,34,50,36,1,253,0,0,1,0,0,46,64,0,0,0,0,111,128,0,63,64,0,0,0,111,255,208,0,255,0,0,0,47,255,255,144,3,255,255,248,0,63,255,244,0,15,255,255,254,0,46,159,224,0,63,255,255,252,0,0,11,224,1,255,64,3,248,0,0,11,224,31,255,128,11,240,0,0,11,224,63,255,240,47,208,0,0,11,224,15,67,253,191,128,0,63,255,255,240,0,255,254,0,0,63,255,255,240,0,63,252,0,0,63,255,255,240,0,191,224,0,0,0,31,224,0,11,255,128,0,0,0,47,224,1,191,255,248,0,0,0,63,240,15,255,219,240,0,0,0,127,252,11,254,31,224,0,0,0,255,255,3,144,63,255,255,64,1,255,255,192,0,255,255,255,208,3,251,235,240,7,255,255,255,192,7,235,227,240,31,240,0,63,128,15,203,225,208,255,208,0,191,0,47,139,224,75,255,244,1,254,0,127,11,224,15,251,254,3,252,0,190,11,224,3,192,255,207,244,0,60,11,224,0,0,47,255,208,0,36,11,224,0,0,7,255,128,0,0,11,224,0,0,11,254,0,0,0,11,224,0,0,191,244,0,0,0,11,224,0,27,255,192,0,0,0,11,224,6,255,254,0,0,0,0,11,224,63,255,224,0,0,0,0,11,224,31,253,0,0,0,0,0,11,224,14,64,0,0,0,0, + // 0x7a7a 空 + 122,122,32,33,8,36,2,254,0,0,0,11,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,0,15,224,15,208,0,252,63,0,15,208,15,208,0,252,63,0,31,192,15,208,0,252,63,0,47,192,15,208,0,252,0,0,63,128,15,208,0,0,0,0,255,0,15,208,0,248,0,7,254,0,15,224,0,252,0,127,248,0,11,255,255,248,47,255,224,0,7,255,255,244,63,255,0,0,1,255,255,208,31,228,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,128,0,255,255,255,255,255,255,128,0,255,255,255,255,255,255,128,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254, + // 0x7aef 端 + 239,122,34,34,50,36,1,253,0,26,0,0,0,47,64,0,0,0,63,0,0,0,47,128,0,0,0,63,0,15,192,47,128,63,0,0,63,0,15,192,47,128,63,0,0,63,0,15,192,47,128,63,0,0,63,0,15,192,47,128,63,0,0,63,0,15,192,47,128,63,0,63,255,255,15,192,47,128,63,0,63,255,255,15,255,255,255,255,0,63,255,255,15,255,255,255,255,0,0,0,0,15,255,255,255,255,0,6,0,120,0,0,0,0,0,0,31,0,190,0,0,0,0,0,0,15,64,189,127,255,255,255,255,208,15,128,252,127,255,255,255,255,208,15,128,252,127,255,255,255,255,208,11,192,252,0,0,63,64,0,0,11,192,248,0,0,127,0,0,0,11,193,244,0,0,191,0,0,0,7,209,244,31,255,255,255,255,128,7,210,240,31,255,255,255,255,128,7,211,240,31,255,255,255,255,128,7,211,224,31,131,224,188,31,128,0,3,230,159,131,224,188,31,128,0,7,255,223,131,224,188,31,128,27,255,255,239,131,224,188,31,128,191,255,254,95,131,224,188,31,128,127,254,64,31,131,224,188,31,128,62,64,0,31,131,224,188,31,128,0,0,0,31,131,224,188,31,128,0,0,0,31,131,224,188,31,128,0,0,0,31,131,224,189,191,128,0,0,0,31,131,224,188,255,64,0,0,0,26,64,0,0,254,0, + // 0x7b2c 第 + 44,123,33,34,50,36,1,253,0,46,64,0,1,244,0,0,0,0,63,64,0,3,248,0,0,0,0,191,0,0,7,240,0,0,0,0,255,255,255,79,255,255,255,192,3,255,255,255,111,255,255,255,192,11,251,254,170,255,239,250,170,128,31,225,252,1,255,3,248,0,0,63,192,253,7,252,1,252,0,0,127,64,190,3,240,0,254,0,0,13,0,96,0,144,0,100,0,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,0,2,248,0,7,240,0,0,0,0,2,248,0,7,240,0,0,0,0,2,248,0,7,240,0,0,47,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,127,0,2,248,0,0,0,0,0,191,0,2,248,0,0,0,0,0,254,0,2,248,0,0,0,0,0,255,255,255,255,255,255,255,0,1,255,255,255,255,255,255,255,0,2,255,255,255,255,255,255,255,0,1,164,1,255,248,0,0,190,0,0,0,15,251,248,0,0,254,0,0,0,191,210,248,0,0,253,0,0,11,255,2,248,0,1,252,0,1,255,244,2,248,11,255,252,0,63,255,128,2,248,3,255,244,0,31,248,0,2,248,3,255,208,0,11,128,0,2,248,0,0,0,0,0,0,0,2,244,0,0,0,0, + // 0x7b49 等 + 73,123,34,34,50,36,1,253,0,46,64,0,1,228,0,0,0,0,63,128,0,3,248,0,0,0,0,191,0,0,7,244,0,0,0,0,255,255,255,143,255,255,255,192,2,255,255,255,175,255,255,255,192,7,255,255,255,255,255,255,255,192,15,241,252,0,255,3,248,0,0,63,192,253,3,253,1,252,0,0,127,64,190,2,248,0,254,0,0,30,0,100,3,248,0,116,0,0,0,0,0,3,248,0,0,0,0,0,191,255,255,255,255,255,240,0,0,191,255,255,255,255,255,240,0,0,127,255,255,255,255,255,224,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,208,63,255,255,255,255,255,255,255,208,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,0,0,184,0,0,11,240,0,0,0,2,254,0,0,11,240,0,0,0,0,255,192,0,11,240,0,0,0,0,63,240,0,11,240,0,0,0,0,11,252,0,11,240,0,0,0,0,2,252,0,11,240,0,0,0,0,0,224,63,255,224,0,0,0,0,0,0,47,255,208,0,0,0,0,0,0,15,254,0,0,0, + // 0x7bb1 箱 + 177,123,33,35,59,36,1,252,0,47,64,0,1,248,0,0,0,0,63,128,0,3,248,0,0,0,0,127,0,0,7,244,0,0,0,0,255,255,255,75,255,255,255,192,1,255,255,255,159,255,255,255,192,3,255,255,255,191,255,255,255,192,11,241,252,0,191,71,240,0,0,15,224,253,1,255,2,252,0,0,63,192,190,3,252,0,253,0,0,127,64,127,2,248,0,191,0,0,31,0,124,0,112,0,56,0,0,0,2,248,0,0,0,0,0,0,0,2,248,0,63,255,255,255,0,0,2,248,0,63,255,255,255,0,0,2,248,0,63,255,255,255,0,47,255,255,255,63,0,0,127,0,47,255,255,255,63,0,0,127,0,47,255,255,255,63,0,0,127,0,0,11,248,0,63,255,255,255,0,0,15,252,0,63,255,255,255,0,0,47,255,0,63,170,170,255,0,0,63,255,208,63,0,0,127,0,0,191,255,244,63,0,0,127,0,1,255,250,253,63,0,0,127,0,3,246,248,255,63,255,255,255,0,15,242,248,60,63,255,255,255,0,47,194,248,20,63,170,170,255,0,191,130,248,0,63,0,0,127,0,63,2,248,0,63,0,0,127,0,12,2,248,0,63,234,170,255,0,0,2,248,0,63,255,255,255,0,0,2,248,0,63,255,255,255,0,0,2,248,0,63,0,0,127,0,0,2,248,0,42,0,0,21,0,0,0,0,0,0,0,0,0,0, + // 0x7c7b 类 + 123,124,32,35,24,36,2,252,0,0,0,11,224,0,0,0,0,31,0,11,224,0,249,0,0,127,128,11,224,2,253,0,0,47,224,11,224,7,248,0,0,11,244,11,224,15,240,0,0,3,252,11,224,63,192,0,0,2,244,15,224,47,64,0,127,255,255,255,255,255,255,254,127,255,255,255,255,255,255,254,127,255,255,255,255,255,255,254,0,0,3,255,255,192,0,0,0,0,31,255,255,244,0,0,0,0,191,219,231,254,0,0,0,7,255,75,225,255,208,0,0,127,252,11,224,63,254,64,27,255,224,11,224,7,255,249,255,255,64,11,224,0,191,254,63,244,0,5,64,16,11,252,30,64,0,11,224,254,0,100,0,0,0,15,224,191,224,0,0,0,0,15,224,11,252,0,0,0,0,15,208,1,244,0,127,255,255,255,255,255,255,255,127,255,255,255,255,255,255,255,127,255,255,255,255,255,255,255,0,0,0,255,253,0,0,0,0,0,2,254,191,64,0,0,0,0,11,252,63,224,0,0,0,0,127,244,15,253,0,0,0,27,255,208,3,255,228,0,27,255,255,0,0,191,255,233,255,255,244,0,0,31,255,255,127,254,0,0,0,0,191,253,62,64,0,0,0,0,1,188,0,0,0,0,0,0,0,0, + // 0x7d22 索 + 34,125,32,34,16,36,2,253,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,0,1,254,0,0,0,253,127,0,7,252,0,64,0,253,127,0,31,240,1,248,0,253,127,30,127,192,11,253,0,253,0,127,254,0,63,240,0,0,0,47,252,1,255,128,0,0,0,3,255,71,253,9,0,0,0,0,127,255,240,63,192,0,0,0,15,255,128,47,244,0,0,0,31,252,0,7,254,0,106,170,255,250,170,170,255,192,127,255,255,255,255,255,255,244,127,255,255,255,255,255,255,253,21,80,64,15,224,0,0,248,0,2,228,15,224,10,0,16,0,15,252,15,224,63,224,0,0,127,224,15,224,31,253,0,7,255,128,15,224,2,255,192,127,253,0,15,224,0,63,244,255,224,0,15,224,0,7,254,63,64,0,15,224,0,0,248,4,0,0,15,224,0,0,0, + // 0x7d2b 紫 + 43,125,33,35,59,36,1,252,0,0,126,0,11,224,0,0,0,0,0,126,0,11,224,0,0,0,1,80,126,0,11,224,1,180,0,3,240,127,170,139,224,111,254,0,3,240,127,255,203,251,255,249,0,3,240,127,255,203,255,255,64,0,3,240,126,0,11,255,144,0,0,3,240,126,0,11,240,0,0,0,3,240,126,0,11,224,0,10,64,3,240,126,1,75,224,0,15,192,3,240,191,255,203,240,0,31,192,27,255,255,255,199,255,255,255,192,127,255,255,254,67,255,255,255,64,127,254,148,47,128,191,255,253,0,37,0,0,191,128,0,0,0,0,0,0,2,253,0,126,0,0,0,0,11,79,244,1,255,64,0,0,0,47,255,192,11,252,0,0,0,0,47,255,64,127,224,16,0,0,0,2,255,246,255,66,248,0,0,0,0,47,255,248,2,255,0,0,0,0,7,255,208,0,127,208,0,0,0,2,255,170,171,255,244,0,63,255,255,255,255,255,255,253,0,63,255,255,255,255,255,255,255,64,63,255,255,255,248,0,0,63,192,0,0,80,3,248,0,64,14,0,0,1,253,3,248,7,244,0,0,0,11,252,3,248,11,255,0,0,0,127,240,3,248,1,255,224,0,7,255,128,3,248,0,47,252,0,63,253,0,3,248,0,3,255,64,15,224,0,3,248,0,0,191,0,2,0,0,3,248,0,0,20,0,0,0,0,0,0,0,0,0,0, + // 0x7ea2 红 + 162,126,34,33,41,36,1,254,0,2,64,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,15,240,5,85,85,85,85,0,0,31,208,15,255,255,255,255,128,0,63,192,15,255,255,255,255,128,0,127,64,15,255,255,255,255,128,0,255,0,0,0,31,208,0,0,2,252,3,64,0,31,208,0,0,3,248,11,224,0,31,208,0,0,11,240,31,240,0,31,208,0,0,31,208,63,192,0,31,208,0,0,191,255,255,64,0,31,208,0,0,191,255,254,0,0,31,208,0,0,63,255,252,0,0,31,208,0,0,41,11,244,0,0,31,208,0,0,0,31,208,0,0,31,208,0,0,0,127,128,0,0,31,208,0,0,1,254,0,0,0,31,208,0,0,7,252,22,144,0,31,208,0,0,31,255,255,208,0,31,208,0,0,127,255,255,224,0,31,208,0,0,63,255,233,0,0,31,208,0,0,46,144,0,0,0,31,208,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,31,208,0,0,0,0,27,192,0,31,208,0,0,0,107,255,192,0,31,208,0,0,127,255,255,239,255,255,255,255,208,127,255,249,95,255,255,255,255,208,127,249,0,31,255,255,255,255,208,57,0,0,5,85,85,85,85,64,0,0,0,0,0,0,0,0,0, + // 0x7ea7 级 + 167,126,34,35,59,36,1,252,0,3,128,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,15,224,47,255,255,255,208,0,0,31,192,47,255,255,255,192,0,0,63,128,47,255,255,255,192,0,0,127,0,0,63,128,63,128,0,0,254,0,0,63,64,63,64,0,1,252,4,0,63,64,127,0,0,3,244,15,128,63,64,191,0,0,7,240,31,192,63,64,254,0,0,15,208,63,128,63,0,252,0,0,47,133,191,0,63,1,252,0,0,191,255,253,0,127,2,255,254,0,127,255,252,0,127,3,255,255,64,63,239,240,0,127,131,255,255,0,16,15,208,0,191,192,0,127,0,0,63,128,0,191,208,0,254,0,0,191,0,0,255,224,0,252,0,1,253,27,192,255,240,1,252,0,3,255,255,192,255,248,3,248,0,15,255,255,129,252,253,7,240,0,127,255,228,2,248,191,15,224,0,127,249,0,3,248,63,95,192,0,62,64,0,3,244,47,255,128,0,16,0,1,199,240,15,255,0,0,0,0,111,207,224,7,254,0,0,0,11,255,239,208,7,254,0,0,1,255,255,111,192,31,255,128,0,47,255,224,63,128,127,255,224,0,63,253,0,191,2,255,79,253,0,63,144,1,254,31,253,3,255,128,40,0,3,252,127,244,0,255,208,0,0,2,248,47,128,0,47,128,0,0,0,48,13,0,0,2,0,0,0,0,0,0,0,0,0,0, + // 0x7ebf 线 + 191,126,33,34,50,36,2,253,0,9,0,0,3,240,0,0,0,0,15,192,0,3,240,184,0,0,0,31,192,0,3,241,255,64,0,0,63,128,0,3,240,63,224,0,0,127,0,0,3,240,11,208,0,0,191,0,0,3,240,1,64,0,0,253,0,0,3,240,5,164,0,2,248,0,0,3,251,255,248,0,3,240,29,6,191,255,255,252,0,15,224,63,159,255,255,254,144,0,31,192,127,15,255,249,0,0,0,63,65,254,10,83,248,0,0,0,255,255,252,0,2,248,0,0,0,255,255,244,0,2,248,0,89,0,191,255,224,0,1,253,175,254,0,16,47,192,0,6,255,255,255,0,0,127,64,27,255,255,255,228,0,0,254,0,63,255,255,144,0,0,3,252,0,63,254,253,0,32,0,11,240,107,25,0,254,0,190,0,47,255,255,0,0,190,1,253,0,255,255,255,0,0,127,3,248,0,191,255,144,0,0,127,15,240,0,127,144,0,0,0,63,191,192,0,16,0,0,0,0,63,255,0,0,0,0,2,0,0,47,252,0,0,0,1,191,0,0,127,240,0,0,0,111,255,64,3,255,224,8,0,111,255,254,0,47,255,240,15,64,255,255,128,7,255,247,252,15,64,191,224,0,191,255,65,255,111,64,116,0,0,191,244,0,255,255,0,0,0,0,62,64,0,63,254,0,0,0,0,0,0,0,7,248,0, + // 0x7ec6 细 + 198,126,33,34,50,36,1,253,0,1,208,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,7,244,11,255,255,255,255,64,0,15,240,11,255,255,255,255,64,0,31,208,11,255,255,255,255,64,0,63,192,11,229,95,213,127,64,0,127,64,11,224,15,192,63,64,0,254,0,11,224,15,192,63,64,2,252,1,11,224,15,192,63,64,3,244,3,219,224,15,192,63,64,15,224,15,251,224,15,192,63,64,63,213,175,219,224,15,192,63,64,191,255,255,139,224,15,192,63,64,127,255,255,11,224,15,192,63,64,63,167,252,11,224,15,192,63,64,0,11,244,11,255,255,255,255,64,0,31,208,11,255,255,255,255,64,0,127,64,11,255,255,255,255,64,1,254,0,11,224,15,192,63,64,7,253,111,219,224,15,192,63,64,31,255,255,235,224,15,192,63,64,127,255,255,219,224,15,192,63,64,63,255,164,11,224,15,192,63,64,46,80,0,11,224,15,192,63,64,0,0,0,11,224,15,192,63,64,0,0,0,11,224,15,192,63,64,0,0,0,91,224,15,192,63,64,0,5,191,235,224,15,192,63,64,26,255,255,235,255,255,255,255,64,127,255,255,219,255,255,255,255,64,127,254,144,11,255,255,255,255,64,58,64,0,11,224,0,0,63,64,0,0,0,11,224,0,0,63,64,0,0,0,1,64,0,0,0,0, + // 0x7ec8 终 + 200,126,34,34,50,36,1,253,0,6,64,0,1,164,0,0,0,0,11,240,0,3,252,0,0,0,0,15,224,0,7,244,0,0,0,0,31,192,0,15,240,0,0,0,0,63,128,0,47,255,255,248,0,0,127,64,0,63,255,255,253,0,0,191,0,0,255,255,255,252,0,0,253,0,2,255,0,3,244,0,3,248,9,11,255,192,15,240,0,7,240,31,239,255,224,47,192,0,15,224,63,255,199,244,127,64,0,47,192,127,47,1,254,254,0,0,191,255,254,4,0,191,252,0,0,127,255,252,0,0,63,240,0,0,63,255,240,0,0,255,252,0,0,16,15,224,0,11,255,255,64,0,0,63,192,0,127,248,191,244,0,0,191,0,7,255,208,31,255,64,1,252,0,63,254,0,3,255,240,7,244,22,111,244,16,0,127,192,31,255,255,143,64,253,0,7,64,127,255,255,128,2,255,224,0,0,63,255,233,0,0,111,253,0,0,63,144,0,0,0,2,255,64,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,8,0,0,0,0,1,128,126,64,0,0,0,0,6,255,209,255,248,0,0,0,107,255,255,208,191,255,208,0,0,191,255,254,64,2,255,254,0,0,127,254,64,0,0,27,255,224,0,57,0,0,0,0,0,191,252,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,0,144,0, + // 0x7ed3 结 + 211,126,33,34,50,36,1,253,0,6,0,0,0,31,192,0,0,0,11,224,0,0,31,192,0,0,0,15,240,0,0,31,192,0,0,0,31,208,0,0,31,192,0,0,0,63,192,0,0,31,208,0,0,0,127,64,15,255,255,255,255,192,0,255,0,15,255,255,255,255,192,1,253,0,15,255,255,255,255,192,3,248,11,128,0,31,192,0,0,11,240,31,224,0,31,192,0,0,31,208,63,192,0,31,192,0,0,127,218,191,128,0,31,192,0,0,191,255,255,0,0,31,192,0,0,127,255,252,7,255,255,255,255,0,63,175,248,7,255,255,255,255,0,0,15,240,7,255,255,255,255,0,0,63,192,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,7,252,26,208,0,0,0,0,0,31,255,255,225,255,255,255,253,0,127,255,255,225,255,255,255,253,0,63,255,233,1,255,255,255,253,0,63,148,0,1,252,0,0,253,0,0,0,0,1,252,0,0,253,0,0,0,0,1,252,0,0,253,0,0,0,5,161,252,0,0,253,0,0,27,255,241,252,0,0,253,0,111,255,255,241,252,0,0,253,0,191,255,254,65,255,255,255,253,0,127,249,0,1,255,255,255,253,0,37,0,0,1,255,255,255,253,0,0,0,0,1,252,0,0,253,0,0,0,0,1,248,0,0,169,0, + // 0x7ed9 给 + 217,126,33,34,50,36,1,253,0,6,0,0,0,41,0,0,0,0,11,224,0,0,63,64,0,0,0,15,224,0,0,191,64,0,0,0,31,192,0,0,255,192,0,0,0,63,128,0,1,255,224,0,0,0,127,64,0,3,255,240,0,0,0,255,0,0,11,242,252,0,0,1,253,0,0,31,224,254,0,0,3,248,15,64,63,192,127,128,0,7,240,47,192,255,64,47,224,0,15,208,63,131,254,0,15,248,0,47,197,191,15,252,0,3,255,0,191,255,253,63,255,255,255,255,192,127,255,252,255,255,255,255,191,128,63,239,240,63,63,255,255,79,0,16,15,224,8,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,3,248,26,131,255,255,255,240,0,15,255,255,131,255,255,255,240,0,127,255,255,131,255,255,255,240,0,63,255,164,3,244,0,7,240,0,63,144,0,3,244,0,7,240,0,0,0,0,3,244,0,7,240,0,0,0,0,3,244,0,7,240,0,0,0,6,195,244,0,7,240,0,0,27,255,195,244,0,7,240,0,43,255,255,195,244,0,7,240,0,127,255,249,3,255,255,255,240,0,63,249,0,3,255,255,255,240,0,57,0,0,3,255,255,255,240,0,0,0,0,3,244,0,7,240,0,0,0,0,3,244,0,7,240,0, + // 0x7edf 统 + 223,126,34,34,50,36,1,253,0,7,64,0,0,110,0,0,0,0,11,240,0,0,191,0,0,0,0,15,240,0,0,63,128,0,0,0,31,208,0,0,47,192,0,0,0,63,192,0,0,31,128,0,0,0,127,64,31,255,255,255,255,192,0,255,0,31,255,255,255,255,192,1,253,4,31,255,255,255,255,192,3,248,15,64,3,252,0,0,0,11,240,47,192,11,244,2,0,0,31,208,127,128,15,240,31,192,0,127,218,255,0,63,192,15,224,0,191,255,253,0,191,64,7,244,0,127,255,248,2,254,0,7,252,0,63,175,240,31,254,191,255,254,0,0,31,208,63,255,255,255,255,0,0,63,128,47,255,255,234,127,192,0,255,0,31,165,0,0,31,192,2,252,6,64,63,64,252,9,0,11,254,255,64,63,64,252,0,0,47,255,255,64,63,0,252,0,0,127,255,254,0,63,0,252,0,0,63,249,0,0,63,0,252,0,0,45,0,0,0,127,0,252,0,0,0,0,0,0,190,0,252,0,0,0,0,27,64,254,0,252,6,0,0,6,255,129,252,0,252,7,208,1,191,255,131,252,0,252,7,208,63,255,248,11,244,0,252,7,208,63,254,64,63,240,0,252,11,192,63,208,2,255,192,0,255,255,192,36,0,3,255,0,0,255,255,128,0,0,0,252,0,0,47,254,0,0,0,0,80,0,0,0,0,0, + // 0x7ee7 继 + 231,126,34,32,32,36,1,255,0,10,0,0,0,0,164,0,0,0,15,208,10,64,0,248,0,0,0,31,192,31,128,0,248,4,0,0,47,192,31,143,128,248,31,64,0,63,64,31,139,192,248,47,0,0,127,0,31,131,208,248,62,0,0,253,0,31,131,224,248,124,0,1,252,0,31,130,240,248,248,0,3,244,14,31,129,240,248,240,0,7,240,47,223,128,144,248,160,0,15,208,63,95,128,0,248,0,0,47,192,191,31,159,255,255,255,192,191,255,252,31,159,255,255,255,192,127,255,248,31,159,255,255,255,192,63,239,240,31,128,7,253,0,0,16,15,208,31,128,15,255,0,0,0,63,128,31,128,31,255,192,0,0,191,0,31,128,63,255,224,0,1,252,0,31,128,125,250,244,0,3,244,107,95,128,248,248,252,0,15,255,255,31,131,240,248,127,0,127,255,255,31,139,224,248,47,128,63,254,144,31,159,192,248,15,64,46,64,0,31,143,64,248,6,0,0,0,0,31,134,0,248,0,0,0,0,0,31,128,0,248,0,0,0,0,111,159,128,0,248,0,0,1,111,255,159,128,0,244,0,0,127,255,255,95,128,0,0,0,0,127,255,144,31,255,255,255,255,208,63,144,0,31,255,255,255,255,208,16,0,0,31,255,255,255,255,208, + // 0x7eea 绪 + 234,126,34,35,59,36,1,252,0,6,0,0,0,252,0,0,0,0,11,224,0,0,252,0,0,0,0,15,208,0,0,252,0,46,0,0,31,192,0,0,252,0,63,64,0,63,64,11,255,255,254,191,0,0,127,0,11,255,255,255,253,0,0,253,0,11,255,255,255,252,0,1,252,0,0,0,252,11,240,0,3,244,15,64,0,252,31,224,0,7,224,31,192,0,252,63,192,0,15,192,63,128,0,252,255,0,0,47,149,191,127,255,255,255,255,224,191,255,253,127,255,255,255,255,224,63,255,248,127,255,255,255,255,224,63,155,240,0,0,255,128,0,0,16,15,224,0,3,255,0,0,0,0,47,192,0,15,252,0,0,0,0,63,0,0,127,240,0,0,0,0,253,0,2,255,255,255,254,0,2,248,5,31,255,255,255,254,0,11,255,255,255,255,255,255,254,0,47,255,254,191,255,0,0,190,0,63,255,233,61,127,0,0,190,0,63,228,0,0,127,0,0,190,0,20,0,0,0,127,255,255,254,0,0,0,0,0,127,255,255,254,0,0,0,1,128,127,170,170,254,0,0,5,191,192,127,0,0,190,0,6,255,255,192,127,0,0,190,0,127,255,254,64,127,0,0,190,0,63,254,64,0,127,255,255,254,0,63,128,0,0,127,255,255,254,0,0,0,0,0,127,255,255,254,0,0,0,0,0,127,0,0,189,0,0,0,0,0,0,0,0,0,0, + // 0x7eed 续 + 237,126,33,35,59,36,1,252,0,2,0,0,0,63,64,0,0,0,7,224,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,192,3,255,255,255,248,0,0,47,128,3,255,255,255,252,0,0,63,0,3,255,255,255,252,0,0,190,0,0,0,63,64,0,0,0,252,0,0,0,63,64,0,0,2,248,29,0,0,63,64,0,0,3,240,63,111,255,255,255,255,64,11,208,127,47,255,255,255,255,64,31,192,253,31,255,255,255,255,0,127,255,252,0,0,0,0,63,0,127,255,240,0,52,15,192,126,0,63,239,224,0,255,15,192,188,0,16,31,192,0,47,223,192,252,0,0,63,64,9,7,223,192,16,0,0,190,0,31,192,79,192,0,0,1,252,26,11,244,15,192,0,0,7,251,254,1,252,15,192,0,0,15,255,254,0,52,31,192,0,0,63,255,144,127,255,255,255,255,128,63,228,0,127,255,255,255,255,128,40,0,0,127,255,255,255,255,128,0,0,6,0,0,254,0,0,0,0,1,191,0,1,252,36,0,0,0,47,255,0,7,252,254,0,0,7,255,249,0,15,240,191,128,0,127,255,128,0,127,208,47,240,0,63,244,0,2,255,64,7,252,0,62,0,0,31,253,0,0,255,0,16,0,0,255,240,0,0,63,192,0,0,0,63,128,0,0,15,128,0,0,0,24,0,0,0,2,0,0,0,0,0,0,0,0,0,0, + // 0x7eff 绿 + 255,126,34,34,50,36,1,253,0,14,0,0,0,0,0,0,0,0,15,208,3,255,255,255,252,0,0,31,192,3,255,255,255,252,0,0,63,128,3,255,255,255,252,0,0,127,64,0,0,0,0,252,0,0,191,0,0,0,0,0,252,0,0,253,0,0,0,0,0,252,0,2,252,0,1,255,255,255,252,0,3,244,29,1,255,255,255,252,0,7,240,63,65,170,170,170,252,0,15,208,127,0,0,0,1,248,0,47,192,254,0,0,0,1,248,0,191,255,252,0,0,0,2,248,0,127,255,244,15,255,255,255,255,208,63,255,240,15,255,255,255,255,208,20,31,208,15,255,255,255,255,208,0,63,128,0,0,31,192,0,0,0,191,0,1,64,31,192,8,0,1,252,0,11,224,31,192,63,128,3,244,26,7,248,31,192,255,128,15,255,254,1,254,31,195,253,0,63,255,254,0,127,31,239,240,0,63,255,148,0,44,47,255,128,0,47,144,0,0,1,255,254,0,0,0,0,0,0,11,255,255,0,0,0,0,1,0,127,239,239,192,0,0,1,190,2,255,95,207,244,0,0,111,255,31,248,31,195,254,0,31,255,253,127,208,31,192,255,224,127,255,128,47,0,31,192,47,192,63,228,0,8,0,31,192,7,64,57,0,0,0,11,255,128,0,0,0,0,0,0,7,255,64,0,0,0,0,0,0,3,249,0,0,0, + // 0x7f16 编 + 22,127,33,34,50,36,1,253,0,10,0,0,0,47,0,0,0,0,15,208,0,0,63,64,0,0,0,31,192,0,0,63,192,0,0,0,47,128,0,0,31,208,0,0,0,63,0,15,255,255,255,255,0,0,126,0,15,255,255,255,255,0,0,253,0,15,255,255,255,255,0,1,252,0,15,192,0,0,63,0,3,244,45,15,192,0,0,63,0,7,240,63,15,192,0,0,63,0,15,192,190,15,234,170,170,255,0,31,129,252,31,255,255,255,255,0,127,255,248,31,255,255,255,255,0,127,255,240,31,192,0,0,0,0,63,255,224,31,192,0,0,0,0,41,31,192,31,128,0,0,0,0,0,63,64,31,255,255,255,255,64,0,190,0,31,255,255,255,255,64,0,252,0,47,254,191,191,175,64,3,244,104,47,252,46,31,15,64,15,255,252,47,252,46,31,15,64,63,255,252,63,252,46,31,15,64,63,255,144,63,188,46,31,15,64,63,144,0,63,190,191,191,175,64,16,0,0,126,191,255,255,255,64,0,0,108,189,191,255,255,255,64,0,11,253,253,188,46,31,15,64,1,191,253,252,188,46,31,15,64,47,255,145,248,188,46,31,15,64,127,248,3,244,188,46,31,15,64,63,64,7,240,188,46,31,15,64,36,0,11,224,188,46,31,191,64,0,0,1,192,188,25,9,127,0,0,0,0,0,84,0,0,20,0, + // 0x7f3a 缺 + 58,127,34,34,50,36,1,253,2,144,0,0,0,47,128,0,0,3,244,0,0,0,47,128,0,0,3,240,0,0,0,47,128,0,0,7,240,0,0,0,47,128,0,0,11,240,0,0,0,47,128,0,0,15,255,255,252,0,47,128,0,0,15,255,255,252,191,255,255,252,0,31,255,255,252,191,255,255,252,0,47,135,240,0,191,255,255,252,0,63,71,240,0,0,47,128,252,0,191,7,240,0,0,47,128,252,0,126,7,240,0,0,47,128,252,0,8,7,240,0,0,47,128,252,0,127,255,255,254,0,47,128,252,0,127,255,255,254,0,47,128,252,0,127,255,255,254,0,47,128,252,0,0,7,240,0,0,47,128,252,0,0,7,240,0,255,255,255,255,224,26,7,240,188,255,255,255,255,224,31,7,240,188,255,255,255,255,224,31,7,240,188,0,63,240,0,0,31,7,240,188,0,127,248,0,0,31,7,240,188,0,191,252,0,0,31,7,240,188,0,254,253,0,0,31,7,240,188,1,252,191,0,0,31,7,240,188,3,252,63,64,0,31,255,255,252,11,244,63,192,0,31,255,255,252,31,224,15,240,0,31,255,255,252,127,192,11,248,0,31,0,0,189,255,64,3,254,0,31,0,0,31,254,0,0,255,208,26,0,0,47,248,0,0,127,208,0,0,0,11,208,0,0,31,128,0,0,0,2,64,0,0,2,0, + // 0x7f51 网 + 81,127,30,32,0,36,3,253,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,254,0,31,128,3,240,7,240,253,0,31,128,3,240,3,240,253,0,31,128,3,240,3,240,253,0,31,128,3,240,3,240,253,0,31,64,3,240,3,240,253,0,47,66,3,240,3,240,253,60,47,75,199,224,3,240,253,191,47,15,247,224,3,240,253,63,255,3,255,208,3,240,253,15,255,0,255,208,3,240,253,3,255,0,63,208,3,240,253,0,255,0,31,224,3,240,253,0,127,128,15,248,3,240,253,0,191,208,15,253,3,240,253,0,255,240,31,255,3,240,253,0,255,252,47,127,195,240,253,1,252,252,63,15,211,240,253,2,244,116,63,7,131,240,253,3,240,16,190,2,3,240,253,7,240,0,253,0,3,240,253,15,224,1,252,0,3,240,253,31,192,3,248,0,3,240,253,63,128,11,240,0,3,240,253,191,0,31,224,0,3,240,253,46,0,11,192,0,3,240,253,4,0,1,0,0,11,240,253,0,0,0,0,31,255,240,253,0,0,0,0,15,255,208,253,0,0,0,0,15,254,64, + // 0x7f6e 置 + 110,127,33,34,50,36,2,252,5,85,85,85,85,85,85,80,0,15,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,240,0,15,208,11,208,11,224,7,240,0,15,208,11,208,11,224,7,240,0,15,229,95,229,91,229,91,240,0,15,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,240,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,127,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,253,0,106,170,170,175,234,170,170,169,0,0,0,0,15,192,0,0,0,0,0,0,63,255,255,255,255,128,0,11,240,63,255,255,255,255,128,0,11,240,63,0,0,0,31,128,0,11,240,63,0,0,0,31,128,0,11,240,63,255,255,255,255,128,0,11,240,63,255,255,255,255,128,0,11,240,63,0,0,0,31,128,0,11,240,63,255,255,255,255,128,0,11,240,63,255,255,255,255,128,0,11,240,63,0,0,0,31,128,0,11,240,63,0,0,0,31,128,0,11,240,63,255,255,255,255,128,0,11,240,63,255,255,255,255,128,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,255,255,255,255,255,255,255,64,11,255,255,255,255,255,255,255,64,11,250,170,170,170,170,170,170,0,11,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x7f72 署 + 114,127,33,34,50,36,1,252,1,85,85,85,85,85,85,84,0,3,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,252,0,3,244,2,244,2,248,0,252,0,3,244,2,244,2,248,0,252,0,3,244,2,244,2,248,0,252,0,3,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,252,0,1,85,85,95,229,85,85,84,0,0,0,0,11,224,0,0,80,0,0,42,170,175,250,170,130,248,0,0,63,255,255,255,255,219,252,0,0,63,255,255,255,255,255,224,0,0,0,0,11,224,1,255,128,0,0,0,0,11,224,15,253,0,0,42,170,170,175,250,191,254,170,128,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,0,31,255,192,0,0,0,0,0,6,255,253,0,0,0,0,0,0,191,255,249,85,85,80,0,0,111,255,255,255,255,255,240,0,47,255,255,255,255,255,255,240,0,127,255,254,0,0,0,7,240,0,47,228,126,0,0,0,11,240,0,9,0,127,255,255,255,255,240,0,0,0,127,255,255,255,255,240,0,0,0,126,0,0,0,7,240,0,0,0,126,0,0,0,7,240,0,0,0,127,85,85,85,91,240,0,0,0,127,255,255,255,255,240,0,0,0,127,255,255,255,255,240,0,0,0,126,0,0,0,7,224,0,0,0,0,0,0,0,0,0,0, + // 0x8005 者 + 5,128,33,34,50,36,1,253,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,144,0,0,0,0,63,64,0,2,252,0,0,0,0,63,64,0,7,248,0,0,255,255,255,255,255,159,240,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,64,0,0,0,0,63,64,3,254,0,0,0,0,0,63,64,15,248,0,0,0,0,0,63,64,63,224,0,0,0,0,0,63,64,255,192,0,0,0,0,0,63,67,255,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,0,47,248,0,0,0,0,0,0,2,255,208,0,0,0,0,0,0,47,254,0,0,0,0,0,0,2,255,255,255,255,255,128,0,0,127,255,255,255,255,255,128,0,11,255,255,255,255,255,255,128,0,191,255,254,0,0,0,63,128,0,63,244,190,0,0,0,63,128,0,30,0,190,0,0,0,63,128,0,0,0,191,255,255,255,255,128,0,0,0,191,255,255,255,255,128,0,0,0,191,170,170,170,191,128,0,0,0,190,0,0,0,63,128,0,0,0,190,0,0,0,63,128,0,0,0,190,0,0,0,63,128,0,0,0,191,255,255,255,255,128,0,0,0,191,255,255,255,255,128,0,0,0,191,255,255,255,255,128,0,0,0,190,0,0,0,47,128,0, + // 0x806a 聪 + 106,128,34,35,59,36,1,252,0,0,0,0,9,0,2,128,0,0,0,0,0,63,0,3,244,0,63,255,255,240,47,128,7,240,0,63,255,255,240,15,192,15,208,0,63,255,255,240,11,224,31,192,0,7,208,47,0,3,240,47,64,0,7,208,47,0,3,208,63,0,0,7,208,47,1,255,255,255,254,0,7,208,47,2,255,255,255,255,0,7,250,191,2,255,255,255,255,0,7,255,255,2,244,0,0,127,0,7,255,255,2,244,0,0,127,0,7,208,47,2,244,0,0,127,0,7,208,47,2,244,0,0,127,0,7,208,47,2,244,0,0,127,0,7,208,47,2,244,0,0,127,0,7,208,47,2,255,255,255,255,0,7,255,255,2,255,255,255,255,0,7,255,255,1,255,255,255,254,0,7,250,191,0,0,5,0,0,0,7,208,47,0,0,63,0,0,0,7,208,47,0,1,95,192,0,0,7,208,47,1,11,199,240,40,0,7,208,47,243,235,194,244,188,0,7,235,255,243,219,192,252,62,0,31,255,255,247,219,192,180,47,0,127,255,255,7,203,192,0,15,128,127,249,47,15,203,192,3,143,192,36,0,47,15,139,192,3,231,208,0,0,47,31,75,208,3,211,224,0,0,47,47,7,250,175,194,128,0,0,47,5,3,255,255,192,0,0,0,47,0,1,255,255,0,0,0,0,47,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x80fd 能 + 253,128,34,35,59,36,1,252,0,15,128,0,3,240,0,0,0,0,31,208,0,3,240,0,0,0,0,47,192,16,3,240,0,16,0,0,63,66,240,3,240,1,244,0,0,127,2,252,3,240,47,253,0,0,254,0,253,3,247,255,248,0,1,252,0,191,3,255,254,64,0,7,254,191,255,131,255,208,0,0,127,255,255,255,195,244,0,0,0,127,255,255,255,227,240,0,9,0,127,169,84,7,247,240,0,11,208,0,0,0,3,131,240,0,15,208,0,0,0,0,3,244,0,15,192,7,255,255,254,3,255,255,255,192,7,255,255,254,2,255,255,255,64,7,255,255,254,0,191,255,253,0,7,224,0,190,0,0,0,0,0,7,224,0,190,2,160,0,0,0,7,250,170,254,3,240,0,0,0,7,255,255,254,3,240,0,36,0,7,255,255,254,3,240,2,252,0,7,224,0,190,3,240,47,255,0,7,224,0,190,3,246,255,248,0,7,224,0,190,3,255,255,64,0,7,255,255,254,3,255,224,0,0,7,255,255,254,3,249,0,0,0,7,250,170,254,3,240,0,1,0,7,224,0,190,3,240,0,3,208,7,224,0,190,3,240,0,7,224,7,224,0,190,3,240,0,7,224,7,224,0,190,3,244,0,15,208,7,224,127,254,3,255,255,255,192,7,224,63,252,2,255,255,255,128,7,224,63,224,0,111,255,253,0,0,0,0,0,0,0,0,0,0, + // 0x81ea 自 + 234,129,26,35,245,36,5,252,0,0,3,232,0,0,0,0,0,7,248,0,0,0,0,0,11,240,0,0,0,0,0,15,240,0,0,0,0,0,15,208,0,0,0,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,64,0,0,0,15,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,0,0,0,0,11,240,127,0,0,0,0,11,224,0,0,0,0,0,0,0, + // 0x81f3 至 + 243,129,32,31,248,36,2,254,63,255,255,255,255,255,255,253,63,255,255,255,255,255,255,253,63,255,255,255,255,255,255,253,0,0,15,244,0,0,0,0,0,0,31,224,0,124,0,0,0,0,63,192,2,255,64,0,0,0,63,128,0,191,208,0,0,0,191,0,0,47,248,0,0,0,254,0,0,7,254,0,0,2,254,170,191,255,255,192,47,255,255,255,255,255,255,240,47,255,255,255,255,255,255,252,47,255,255,170,85,64,3,253,21,0,0,0,0,0,1,244,0,0,0,15,224,0,0,64,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,3,255,255,255,255,255,255,192,3,255,255,255,255,255,255,192,3,255,255,255,255,255,255,192,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0, + // 0x83dc 菜 + 220,131,33,34,50,36,1,253,0,0,47,128,0,47,128,0,0,0,0,47,128,0,47,128,0,0,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,0,0,47,128,0,47,128,0,0,0,0,47,128,0,47,128,0,0,0,0,26,128,0,22,175,128,0,0,0,5,86,175,255,255,224,0,11,255,255,255,255,255,255,244,0,7,255,255,255,255,254,148,0,0,3,255,254,169,84,0,1,64,0,0,0,0,6,192,0,3,248,0,0,124,0,15,208,0,11,244,0,0,255,0,11,240,0,15,224,0,0,63,128,3,244,0,47,192,0,0,47,192,3,248,0,63,128,0,0,15,224,2,224,0,191,0,0,0,11,208,2,248,0,252,0,0,0,1,0,3,248,0,20,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,1,255,255,240,0,0,0,0,0,11,255,255,253,0,0,0,0,0,127,243,248,255,128,0,0,0,7,255,131,248,63,248,0,0,0,127,253,3,248,11,255,144,0,11,255,240,3,248,0,255,254,64,127,255,64,3,248,0,31,255,192,47,248,0,3,248,0,2,255,64,15,64,0,3,248,0,0,26,0,0,0,0,3,248,0,0,0,0, + // 0x84dd 蓝 + 221,132,33,33,41,36,2,254,0,0,253,0,0,127,0,0,0,0,0,253,0,0,127,0,0,0,191,255,255,255,255,255,255,254,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,0,0,253,0,0,127,0,0,0,0,0,253,0,0,127,0,0,0,0,0,0,0,1,0,0,0,0,0,0,21,0,11,224,0,0,0,1,64,47,64,15,208,0,0,0,7,240,47,64,15,192,0,0,0,7,240,47,64,47,255,255,248,0,7,240,47,64,63,255,255,248,0,7,240,47,64,127,255,255,244,0,7,240,47,64,254,2,64,0,0,7,240,47,65,252,31,192,0,0,7,240,47,67,248,15,240,0,0,7,240,47,75,240,3,248,0,0,7,240,47,66,208,1,252,0,0,7,240,47,64,64,0,254,0,0,0,0,47,64,0,0,125,0,0,0,0,0,0,0,0,16,0,0,1,255,255,255,255,255,255,128,0,1,255,255,255,255,255,255,128,0,1,254,171,250,175,234,191,128,0,1,252,3,240,15,192,47,128,0,1,252,3,240,15,192,47,128,0,1,252,3,240,15,192,47,128,0,1,252,3,240,15,192,47,128,0,1,252,3,240,15,192,47,128,0,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64, + // 0x86c7 蛇 + 199,134,34,33,41,36,1,254,0,5,64,0,0,11,208,0,0,0,11,192,0,0,15,208,0,0,0,11,192,0,0,15,208,0,0,0,11,192,0,0,15,208,0,0,0,11,192,0,0,15,208,0,0,0,11,192,3,255,255,255,255,192,0,11,192,3,255,255,255,255,192,31,255,255,243,255,255,255,255,192,31,255,255,243,240,0,0,15,192,31,239,235,243,240,0,0,15,192,31,7,194,243,240,0,0,15,192,31,7,194,243,240,0,0,15,192,31,7,194,243,255,192,0,0,0,31,7,194,240,15,192,0,0,0,31,7,194,240,15,192,0,32,0,31,7,194,240,15,192,1,252,0,31,7,194,240,15,192,47,254,0,31,239,235,240,15,194,255,244,0,31,255,255,240,15,255,255,64,0,31,255,255,240,15,255,228,0,0,31,11,192,0,15,253,0,0,0,31,11,192,0,15,208,0,0,0,0,11,194,208,15,192,0,0,0,0,11,195,240,15,192,0,0,0,0,11,194,240,15,192,0,0,0,0,11,193,244,15,192,0,10,0,0,11,193,252,15,192,0,11,208,0,31,255,252,15,192,0,11,192,127,255,255,253,15,192,0,15,192,127,255,255,190,15,192,0,31,192,127,250,64,62,15,255,255,255,128,36,0,0,61,11,255,255,255,0,0,0,0,0,1,255,255,248,0, + // 0x884c 行 + 76,136,34,35,59,36,1,252,0,0,228,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,11,248,3,255,255,255,255,64,0,47,240,3,255,255,255,255,64,0,191,192,3,255,255,255,255,64,3,255,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,127,224,0,0,0,0,0,0,0,63,128,46,64,0,0,0,0,0,29,0,127,128,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,11,248,47,255,255,255,255,208,0,31,240,47,255,255,255,255,208,0,127,192,47,255,255,255,255,208,1,255,192,0,0,0,127,64,0,7,255,192,0,0,0,127,0,0,47,255,192,0,0,0,127,0,0,191,255,192,0,0,0,127,0,0,127,143,192,0,0,0,127,0,0,46,15,192,0,0,0,127,0,0,8,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,1,85,191,0,0,0,15,192,0,3,255,255,0,0,0,15,192,0,3,255,254,0,0,0,15,192,0,2,255,228,0,0,0,0,0,0,0,0,0,0,0, + // 0x88ab 被 + 171,136,34,34,50,36,1,253,0,47,64,0,0,11,208,0,0,0,47,128,0,0,11,224,0,0,0,47,128,0,0,11,224,0,0,0,47,128,0,0,11,224,0,0,0,47,128,0,0,11,224,0,0,0,47,128,0,0,11,224,0,0,0,47,128,3,255,255,255,255,208,63,255,255,67,255,255,255,255,192,63,255,255,195,255,255,255,255,192,63,255,255,131,240,11,224,47,128,0,0,63,3,240,11,224,63,64,0,0,190,3,240,11,224,63,0,0,1,252,3,240,11,224,126,0,0,3,244,131,240,11,224,0,0,0,15,225,247,255,255,255,254,0,0,47,211,231,255,255,255,255,0,0,191,255,199,255,255,255,254,0,2,255,255,7,255,192,0,253,0,11,255,254,7,239,208,1,252,0,47,255,191,75,231,240,3,248,0,255,239,143,203,227,244,3,244,0,127,47,139,203,210,252,15,240,0,60,47,131,79,208,253,31,208,0,16,47,128,15,192,191,63,192,0,0,47,128,31,192,63,255,64,0,0,47,128,47,128,31,254,0,0,0,47,128,63,64,15,252,0,0,0,47,128,63,0,47,254,0,0,0,47,128,191,0,255,255,208,0,0,47,128,254,7,255,127,248,0,0,47,129,252,127,252,15,255,128,0,47,131,248,255,224,2,255,208,0,47,130,240,127,64,0,127,128,0,47,128,80,36,0,0,7,0, + // 0x88c5 装 + 197,136,34,35,59,36,1,252,0,0,190,0,0,47,128,0,0,0,0,190,0,0,47,128,0,0,7,64,190,0,0,47,128,0,0,31,224,190,0,0,47,128,0,0,11,248,190,0,0,47,128,0,0,1,253,190,63,255,255,255,255,192,0,120,190,63,255,255,255,255,192,0,16,190,63,255,255,255,255,192,0,0,190,0,0,47,128,0,0,0,0,190,0,0,47,128,0,0,0,31,190,0,0,47,128,0,0,1,255,190,0,0,47,128,0,0,47,255,190,0,0,47,128,0,0,127,244,190,15,255,255,255,255,0,63,64,190,15,255,255,255,255,0,20,0,190,11,255,255,255,255,0,0,0,190,0,0,0,0,0,0,0,0,20,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,42,170,170,171,254,170,170,170,128,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,2,255,63,64,0,80,0,0,0,47,248,31,192,2,248,0,0,6,255,208,11,224,31,248,0,1,191,255,0,3,249,255,192,0,127,255,255,0,1,255,253,0,0,47,248,127,0,0,191,224,0,0,9,0,63,0,0,47,244,0,0,0,0,63,90,254,11,255,64,0,0,26,255,255,254,1,255,249,0,0,127,255,255,253,0,47,255,208,0,63,255,148,0,0,2,255,128,0,41,0,0,0,0,0,27,0,0,0,0,0,0,0,0,0,0, + // 0x8981 要 + 129,137,33,34,50,36,2,252,127,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,253,0,0,0,15,208,11,208,0,0,0,0,0,15,208,11,208,0,0,0,0,0,15,208,11,208,0,0,0,10,170,175,250,175,250,170,160,0,15,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,240,0,15,208,15,208,11,208,7,240,0,15,208,15,208,11,208,7,240,0,15,208,15,208,11,208,7,240,0,15,208,15,208,11,208,7,240,0,15,250,175,250,175,250,175,240,0,15,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,240,0,0,0,3,252,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,15,224,0,0,0,0,0,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,170,171,255,170,170,191,250,170,0,0,3,252,0,0,63,192,0,0,0,11,244,0,0,191,64,0,0,0,15,244,0,2,254,0,0,0,0,63,255,249,11,252,0,0,0,0,127,255,255,255,240,0,0,0,0,5,6,255,255,244,0,0,0,0,0,1,191,255,255,228,0,0,0,90,255,255,231,255,255,144,0,127,255,255,249,0,27,255,252,0,63,255,254,64,0,0,111,244,0,46,165,0,0,0,0,1,224,0,0,0,0,0,0,0,0,0,0, + // 0x89d2 角 + 210,137,31,35,24,36,1,252,0,0,11,160,0,0,0,0,0,0,15,240,0,0,0,0,0,0,47,255,255,248,0,0,0,0,127,255,255,255,0,0,0,0,255,255,255,254,0,0,0,3,253,0,2,252,0,0,0,15,244,0,7,244,0,0,0,63,224,0,15,224,0,0,0,255,255,255,255,255,255,244,7,255,255,255,255,255,255,244,47,255,255,255,255,255,255,244,15,239,192,0,189,0,3,244,3,79,192,0,189,0,3,244,0,15,192,0,189,0,3,244,0,15,192,0,189,0,3,244,0,15,192,0,189,0,3,244,0,15,255,255,255,255,255,244,0,15,255,255,255,255,255,244,0,15,255,255,255,255,255,244,0,15,192,0,189,0,3,244,0,31,192,0,189,0,3,244,0,31,192,0,189,0,3,244,0,47,192,0,189,0,3,244,0,47,255,255,255,255,255,244,0,63,255,255,255,255,255,244,0,63,255,255,255,255,255,244,0,191,0,0,0,0,3,244,0,253,0,0,0,0,3,244,2,252,0,0,0,0,3,244,7,248,0,0,0,0,3,244,31,240,0,0,0,0,7,244,127,192,0,0,0,255,255,244,63,64,0,0,0,127,255,240,13,0,0,0,0,63,254,64,0,0,0,0,0,0,0,0, + // 0x8ba1 计 + 161,139,34,34,50,36,1,253,0,0,0,0,0,47,128,0,0,0,60,0,0,0,63,192,0,0,0,255,0,0,0,63,192,0,0,0,127,208,0,0,63,192,0,0,0,31,244,0,0,63,192,0,0,0,7,253,0,0,63,192,0,0,0,1,253,0,0,63,192,0,0,0,0,116,0,0,63,192,0,0,0,0,16,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,21,85,64,0,0,63,192,0,0,127,255,224,191,255,255,255,255,208,127,255,224,191,255,255,255,255,208,127,255,224,191,255,255,255,255,208,0,15,224,85,85,127,213,85,64,0,15,224,0,0,63,192,0,0,0,15,224,0,0,63,192,0,0,0,15,224,0,0,63,192,0,0,0,15,224,0,0,63,192,0,0,0,15,224,0,0,63,192,0,0,0,15,224,0,0,63,192,0,0,0,15,224,0,0,63,192,0,0,0,15,224,0,0,63,192,0,0,0,15,224,176,0,63,192,0,0,0,15,227,240,0,63,192,0,0,0,15,255,248,0,63,192,0,0,0,15,255,224,0,63,192,0,0,0,15,255,64,0,63,192,0,0,0,63,252,0,0,63,192,0,0,0,127,224,0,0,63,192,0,0,0,63,64,0,0,63,192,0,0,0,28,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0, + // 0x8bae 议 + 174,139,33,34,50,36,2,252,1,128,0,0,11,128,0,0,0,11,224,0,0,31,192,1,64,0,11,244,1,244,15,224,3,248,0,3,252,2,248,11,240,3,248,0,0,255,1,252,3,244,3,244,0,0,127,64,252,2,252,7,240,0,0,47,0,252,1,252,7,240,0,0,8,0,253,0,253,11,240,0,0,0,0,190,0,160,15,224,0,0,0,0,127,0,0,15,208,0,0,0,0,63,64,0,31,192,0,255,254,0,47,128,0,63,128,0,255,254,0,31,192,0,63,64,0,255,254,0,15,208,0,127,0,0,0,190,0,15,224,0,255,0,0,0,190,0,7,240,0,253,0,0,0,190,0,3,248,2,252,0,0,0,190,0,2,252,3,248,0,0,0,190,0,0,254,11,240,0,0,0,190,0,0,191,15,224,0,0,0,190,0,0,63,255,192,0,0,0,190,0,0,47,255,64,0,0,0,190,0,0,15,255,0,0,0,0,190,3,0,7,253,0,0,0,0,190,31,0,15,255,0,0,0,0,191,255,128,63,255,192,0,0,0,191,255,0,255,255,244,0,0,0,255,248,7,254,15,254,0,0,0,255,208,47,248,2,255,208,0,3,254,2,255,224,0,191,254,0,2,248,31,255,64,0,31,255,128,0,208,15,248,0,0,2,255,0,0,0,7,128,0,0,0,44,0,0,0,0,0,0,0,0,0,0, + // 0x8bbe 设 + 190,139,33,35,59,36,1,252,0,16,0,0,0,0,0,0,0,0,248,0,0,191,255,255,64,0,2,254,0,0,191,255,255,64,0,0,191,192,0,191,255,255,64,0,0,47,240,0,189,0,63,64,0,0,11,248,0,189,0,63,64,0,0,2,244,0,253,0,63,64,0,0,0,208,0,252,0,63,64,0,0,0,0,1,252,0,63,64,0,0,0,0,3,248,0,63,64,0,0,0,0,11,244,0,63,64,0,0,0,0,47,240,0,47,255,192,127,255,129,255,192,0,31,255,192,127,255,129,255,0,0,6,255,128,127,255,128,120,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,47,128,63,255,255,255,248,0,0,47,128,63,255,255,255,252,0,0,47,128,63,255,255,255,252,0,0,47,128,11,208,0,3,244,0,0,47,128,7,240,0,11,240,0,0,47,128,3,248,0,15,208,0,0,47,128,1,253,0,63,192,0,0,47,128,0,191,0,191,64,0,0,47,131,64,63,194,254,0,0,0,47,159,192,15,251,252,0,0,0,47,255,192,7,255,240,0,0,0,63,255,0,3,255,192,0,0,0,63,248,0,31,255,248,0,0,0,191,224,1,255,255,255,128,0,1,255,64,191,255,130,255,254,64,0,189,3,255,248,0,47,255,192,0,48,0,255,128,0,6,255,64,0,0,0,164,0,0,0,27,0,0,0,0,0,0,0,0,0,0, + // 0x8bd5 试 + 213,139,33,34,50,36,2,253,0,0,0,0,0,10,128,0,0,1,192,0,0,0,15,215,192,0,7,240,0,0,0,15,219,240,0,7,253,0,0,0,15,211,248,0,1,255,0,0,0,15,208,253,0,0,127,192,0,0,15,208,127,0,0,31,224,0,0,15,208,60,0,0,11,128,0,0,15,224,16,0,0,1,7,255,255,255,255,255,64,0,0,7,255,255,255,255,255,64,0,0,7,255,255,255,255,255,64,0,0,0,0,0,15,224,0,0,255,255,0,0,0,11,224,0,0,255,255,0,0,0,11,224,0,0,255,255,0,0,0,11,224,0,0,0,127,0,0,0,11,240,0,0,0,127,1,255,255,199,240,0,0,0,127,1,255,255,199,240,0,0,0,127,1,255,255,199,240,0,0,0,127,0,3,240,3,240,0,0,0,127,0,3,240,3,244,0,0,0,127,0,3,240,3,244,0,0,0,127,0,3,240,3,248,0,0,0,127,0,3,240,2,248,0,0,0,127,0,3,240,2,252,4,0,0,127,10,3,240,17,252,14,0,0,127,127,3,250,240,253,15,128,0,127,255,7,255,244,254,15,128,0,191,254,255,255,244,191,31,64,1,255,226,255,249,0,127,255,0,3,255,1,254,64,0,63,255,0,1,248,0,128,0,0,31,254,0,0,208,0,0,0,0,11,252,0,0,0,0,0,0,0,2,240,0, + // 0x8bef 误 + 239,139,34,34,50,36,1,252,0,144,0,0,0,0,0,0,0,2,244,0,15,255,255,255,252,0,3,254,0,15,255,255,255,252,0,0,255,128,15,255,255,255,252,0,0,63,224,15,192,0,0,252,0,0,15,240,15,192,0,0,252,0,0,3,208,15,192,0,0,252,0,0,1,64,15,192,0,0,252,0,0,0,0,15,255,255,255,252,0,0,0,0,15,255,255,255,252,0,127,255,128,15,255,255,255,252,0,127,255,128,0,0,0,0,0,0,127,255,128,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,47,128,47,255,255,255,255,0,0,47,128,47,255,255,255,255,0,0,47,128,47,255,255,255,255,0,0,47,128,0,0,63,0,0,0,0,47,128,0,0,63,0,0,0,0,47,128,0,0,127,0,0,0,0,47,128,255,255,255,255,255,224,0,47,128,255,255,255,255,255,224,0,47,128,255,255,255,255,255,224,0,47,129,0,1,255,192,0,0,0,47,139,64,3,255,240,0,0,0,47,255,128,7,251,244,0,0,0,47,255,128,31,242,253,0,0,0,63,253,0,127,192,255,128,0,0,191,240,3,255,64,63,244,0,0,191,128,127,253,0,31,255,64,0,61,1,255,240,0,3,255,208,0,36,0,191,128,0,0,191,128,0,0,0,52,0,0,0,11,0,0,0,0,0,0,0,0,0,0, + // 0x8bf7 请 + 247,139,34,34,50,36,1,253,0,0,0,0,0,63,0,0,0,0,208,0,0,0,63,0,0,0,3,248,0,0,0,63,0,0,0,3,254,0,63,255,255,255,255,64,0,191,128,63,255,255,255,255,64,0,47,224,21,85,191,149,85,0,0,11,240,0,0,63,0,0,0,0,2,192,31,255,255,255,253,0,0,0,0,31,255,255,255,253,0,0,0,0,5,85,127,85,84,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,127,255,129,255,255,255,255,255,208,127,255,129,255,255,255,255,255,208,127,255,128,85,85,85,85,85,64,0,31,128,0,0,0,0,0,0,0,31,128,15,255,255,255,252,0,0,31,128,15,255,255,255,252,0,0,31,128,15,234,170,170,252,0,0,31,128,15,192,0,1,252,0,0,31,128,15,192,0,1,252,0,0,31,128,15,255,255,255,252,0,0,31,128,15,255,255,255,252,0,0,31,128,15,213,85,86,252,0,0,31,130,79,192,0,1,252,0,0,31,143,143,192,0,1,252,0,0,31,255,207,255,255,255,252,0,0,47,255,79,255,255,255,252,0,0,63,252,15,213,85,86,252,0,0,127,240,15,192,0,1,252,0,0,255,128,15,192,0,1,252,0,0,189,0,15,192,2,255,248,0,0,52,0,15,192,1,255,244,0,0,0,0,15,192,0,254,64,0, + // 0x8bfb 读 + 251,139,33,35,59,36,1,252,0,0,0,0,0,127,0,0,0,0,224,0,0,0,127,0,0,0,3,248,0,0,0,127,0,0,0,3,255,0,31,255,255,255,252,0,0,191,192,47,255,255,255,252,0,0,47,240,47,255,255,255,252,0,0,11,240,0,0,127,0,0,0,0,2,192,0,0,127,0,0,0,0,0,64,0,0,127,0,0,0,0,0,0,255,255,255,255,255,64,0,0,0,255,255,255,255,255,64,0,0,0,191,255,255,255,255,0,127,255,64,0,0,0,0,63,0,127,255,64,1,208,10,64,125,0,127,255,64,3,253,31,192,252,0,0,47,64,0,191,159,192,252,0,0,47,64,20,15,239,192,16,0,0,47,64,190,2,95,128,0,0,0,47,64,47,224,31,128,0,0,0,47,64,3,248,47,128,0,0,0,47,64,0,176,63,64,0,0,0,47,66,255,255,255,255,255,192,0,47,66,255,255,255,255,255,192,0,47,66,255,255,255,255,255,192,0,47,78,0,1,253,0,0,0,0,47,191,0,3,252,48,0,0,0,47,255,64,15,244,253,0,0,0,47,253,0,63,224,255,128,0,0,63,244,0,255,192,47,240,0,0,63,208,11,255,0,7,253,0,0,255,0,127,252,0,1,255,64,0,252,3,255,224,0,0,63,192,0,48,1,255,0,0,0,15,192,0,0,0,180,0,0,0,3,0,0,0,0,0,0,0,0,0,0, + // 0x8c03 调 + 3,140,32,34,16,36,1,252,0,144,0,0,0,0,0,0,2,244,0,127,255,255,255,255,3,253,0,127,255,255,255,255,0,255,64,127,255,255,255,255,0,63,208,126,0,0,0,63,0,15,240,126,0,62,0,63,0,3,208,126,0,62,0,63,0,1,64,126,5,127,84,63,0,0,0,126,31,255,253,63,0,0,0,126,31,255,253,63,0,0,0,126,0,62,0,63,127,255,128,126,0,62,0,63,127,255,128,126,0,62,0,63,127,255,128,126,63,255,255,63,0,47,128,126,63,255,255,63,0,47,128,126,21,85,85,63,0,47,128,126,0,0,0,63,0,47,128,126,0,0,0,63,0,47,128,126,47,255,252,63,0,47,128,125,47,255,252,63,0,47,128,189,47,85,188,63,0,47,128,252,47,0,124,63,0,47,128,252,47,0,124,63,0,47,136,252,47,0,124,63,0,47,190,252,47,85,188,63,0,47,255,248,47,255,252,63,0,63,255,244,47,255,252,63,0,63,247,240,47,0,0,63,0,191,215,240,26,0,0,63,1,255,15,208,0,0,0,63,1,252,31,192,0,0,63,255,0,112,31,128,0,0,47,254,0,0,3,0,0,0,31,244,0,0,0,0,0,0,0,0, + // 0x8d25 败 + 37,141,33,35,59,36,2,252,0,0,0,0,0,64,0,0,0,0,0,0,0,0,252,0,0,0,63,255,255,244,1,252,0,0,0,63,255,255,244,2,248,0,0,0,63,255,255,244,2,244,0,0,0,63,0,1,244,3,240,0,0,0,63,0,1,244,7,240,0,0,0,63,5,65,244,11,255,255,255,0,63,11,193,244,15,255,255,255,0,63,11,193,244,31,255,255,255,0,63,11,193,244,63,128,3,224,0,63,11,193,244,63,0,7,208,0,63,11,193,244,191,0,7,208,0,63,11,193,244,255,0,11,192,0,63,11,193,247,255,0,15,192,0,63,11,193,251,255,128,15,192,0,63,11,193,246,255,192,31,128,0,63,11,193,244,207,192,47,64,0,63,11,193,244,7,224,63,0,0,63,15,193,244,3,240,63,0,0,63,15,193,244,2,248,125,0,0,63,15,193,244,0,252,252,0,0,63,15,193,244,0,191,252,0,0,63,31,129,244,0,63,244,0,0,21,47,64,0,0,47,240,0,0,0,63,8,0,0,15,224,0,0,0,126,62,0,0,47,248,0,0,0,253,63,64,0,191,254,0,0,2,252,15,192,2,253,255,64,0,11,240,11,240,11,248,63,224,0,47,208,3,248,127,224,15,252,0,255,128,0,253,255,128,3,255,64,189,0,0,160,253,0,0,190,0,52,0,0,0,32,0,0,8,0,0,0,0,0,0,0,0,0,0, + // 0x8d2a 贪 + 42,141,33,35,59,36,2,252,0,0,0,2,224,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,127,253,0,0,0,0,0,0,7,255,255,208,0,0,0,0,0,127,252,47,254,0,0,0,0,11,255,210,3,255,228,0,0,1,255,254,31,128,127,255,144,0,191,255,224,31,240,7,255,255,64,255,253,0,3,252,0,47,255,0,127,144,0,1,244,0,1,188,0,20,127,255,255,255,255,240,0,0,0,127,255,255,255,255,252,0,0,0,42,170,170,170,191,240,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,2,252,0,0,0,0,191,255,255,255,255,253,0,0,0,191,255,255,255,255,253,0,0,0,191,255,255,255,255,253,0,0,0,190,0,0,0,0,253,0,0,0,190,0,11,224,0,253,0,0,0,190,0,15,224,0,253,0,0,0,190,0,15,224,0,253,0,0,0,190,0,15,224,0,253,0,0,0,190,0,15,208,0,253,0,0,0,190,0,47,192,0,253,0,0,0,190,0,127,197,0,253,0,0,0,0,1,255,31,228,0,0,0,0,0,31,253,63,255,128,0,0,0,1,255,244,6,255,253,0,0,1,191,255,128,0,31,255,224,0,47,255,248,0,0,1,191,252,0,15,255,64,0,0,0,11,240,0,7,208,0,0,0,0,0,160,0,0,0,0,0,0,0,0,0,0, + // 0x8d77 起 + 119,141,34,35,59,36,1,252,0,1,164,0,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,2,248,0,11,255,255,254,0,0,2,248,0,11,255,255,254,0,15,255,255,255,11,255,255,254,0,15,255,255,255,0,0,0,190,0,15,255,255,255,0,0,0,190,0,0,2,248,0,0,0,0,190,0,0,2,248,0,0,0,0,190,0,0,2,248,0,0,0,0,190,0,0,2,248,0,0,0,0,190,0,63,255,255,255,194,170,170,254,0,63,255,255,255,199,255,255,254,0,63,255,255,255,199,255,255,254,0,0,0,253,0,7,240,0,190,0,0,0,253,0,7,240,0,0,0,0,0,253,0,7,240,0,0,0,11,208,253,0,7,240,0,0,0,11,208,253,0,7,240,0,0,0,11,208,255,255,135,240,0,0,0,11,208,255,255,135,240,0,7,64,15,208,255,255,135,240,0,7,224,15,224,253,0,7,240,0,11,208,15,240,253,0,7,240,0,11,208,15,240,253,0,7,240,0,31,192,15,252,253,0,3,255,255,255,192,31,253,253,0,2,255,255,255,64,31,255,253,0,0,191,255,253,0,47,175,253,0,0,0,0,0,0,63,79,255,229,80,0,0,0,64,63,2,255,255,255,255,255,255,208,191,0,47,255,255,255,255,255,192,253,0,0,111,255,255,255,255,128,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x8d85 超 + 133,141,34,34,50,36,1,253,0,3,244,0,0,0,0,0,0,0,3,244,0,63,255,255,255,64,0,3,244,0,63,255,255,255,64,0,3,244,0,63,255,255,255,64,31,255,255,254,0,63,64,63,64,31,255,255,254,0,63,0,63,0,31,255,255,254,0,127,0,63,0,0,3,244,0,0,190,0,63,0,0,3,244,0,0,252,0,63,0,0,3,244,0,2,248,0,127,0,0,3,244,0,11,244,0,254,0,63,255,255,255,111,224,255,253,0,63,255,255,255,255,128,127,252,0,63,255,255,255,254,0,42,144,0,0,1,248,0,20,0,0,0,0,0,1,248,0,10,170,170,169,0,10,129,248,0,15,255,255,254,0,11,209,248,0,15,255,255,254,0,15,193,248,0,15,192,0,190,0,15,193,255,255,15,192,0,190,0,15,193,255,255,15,192,0,190,0,15,193,255,255,15,192,0,190,0,15,209,248,0,15,192,0,190,0,15,241,248,0,15,192,0,190,0,15,241,248,0,15,234,170,254,0,15,253,248,0,15,255,255,254,0,31,255,248,0,15,255,255,254,0,47,255,248,0,0,0,0,0,0,47,111,252,0,0,0,0,0,0,63,15,255,229,80,0,0,1,64,127,2,255,255,255,255,255,255,208,190,0,47,255,255,255,255,255,192,188,0,0,111,255,255,255,255,128,8,0,0,0,0,0,0,0,0, + // 0x8ddd 距 + 221,141,34,33,41,36,1,253,11,255,255,244,0,0,0,0,0,15,255,255,244,127,255,255,255,192,15,255,255,244,127,255,255,255,192,15,192,3,244,127,255,255,255,192,15,192,3,244,127,0,0,0,0,15,192,3,244,127,0,0,0,0,15,192,3,244,127,0,0,0,0,15,192,3,244,127,0,0,0,0,15,192,3,244,127,0,0,0,0,15,255,255,244,127,255,255,254,0,15,255,255,244,127,255,255,254,0,15,255,255,244,127,255,255,254,0,0,3,240,0,127,0,0,190,0,0,3,240,0,127,0,0,190,0,0,3,240,0,127,0,0,190,0,15,195,240,0,127,0,0,190,0,15,195,240,0,127,0,0,190,0,15,195,255,252,127,0,0,190,0,15,195,255,252,127,0,0,190,0,15,195,255,252,127,255,255,254,0,15,195,240,0,127,255,255,254,0,15,195,240,0,127,255,255,254,0,15,195,240,0,127,0,0,0,0,15,195,240,0,127,0,0,0,0,15,195,240,4,127,0,0,0,0,15,195,246,253,127,0,0,0,0,15,199,255,253,127,0,0,0,0,31,255,255,253,127,0,0,0,0,191,255,254,64,127,255,255,255,224,191,254,64,0,127,255,255,255,224,126,64,0,0,127,255,255,255,224,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0,0, + // 0x8f6c 转 + 108,143,34,35,59,36,1,252,0,15,128,0,0,7,224,0,0,0,15,192,0,0,11,240,0,0,0,31,192,0,0,11,224,0,0,0,47,128,0,0,15,208,0,0,127,255,255,241,255,255,255,255,0,127,255,255,241,255,255,255,255,0,127,255,255,241,255,255,255,255,0,0,190,0,0,0,63,64,0,0,0,252,0,0,0,127,0,0,0,0,252,0,0,0,191,0,0,0,1,249,248,0,0,254,0,0,0,2,241,252,11,255,255,255,255,208,3,241,252,11,255,255,255,255,208,7,209,252,11,255,255,255,255,208,11,193,252,0,3,248,0,0,0,15,193,252,0,3,244,0,0,0,63,255,255,240,11,240,0,0,0,47,255,255,240,15,240,0,0,0,31,255,255,240,15,255,255,254,0,4,1,252,0,31,255,255,255,0,0,1,252,0,63,255,255,252,0,0,1,252,0,0,0,7,248,0,0,1,253,108,0,0,15,240,0,0,2,255,252,0,0,63,192,0,26,255,255,252,2,128,127,64,0,127,255,255,232,11,244,254,0,0,63,255,252,0,15,255,252,0,0,62,65,252,0,1,255,240,0,0,0,1,252,0,0,63,248,0,0,0,1,252,0,0,11,255,0,0,0,1,252,0,0,1,255,192,0,0,1,252,0,0,0,63,240,0,0,1,252,0,0,0,15,192,0,0,1,248,0,0,0,3,64,0,0,0,0,0,0,0,0,0,0, + // 0x8f6f 软 + 111,143,34,35,59,36,1,252,0,2,160,0,0,228,0,0,0,0,3,244,0,1,252,0,0,0,0,7,240,0,1,252,0,0,0,0,11,240,0,2,248,0,0,0,63,255,255,255,3,244,0,0,0,63,255,255,255,3,244,0,0,0,63,255,255,255,3,255,255,255,208,0,47,128,0,7,255,255,255,208,0,63,0,0,11,255,255,255,192,0,127,0,0,15,208,0,31,192,0,190,21,0,31,192,0,31,128,0,253,63,0,63,128,0,47,64,1,252,63,0,127,71,224,63,0,2,248,63,0,255,7,224,63,0,3,240,63,1,253,7,224,126,0,11,240,63,0,188,11,224,125,0,31,255,255,255,20,11,224,4,0,31,255,255,255,0,11,224,0,0,15,255,255,255,0,11,240,0,0,4,0,63,0,0,15,240,0,0,0,0,63,0,0,15,244,0,0,0,0,63,0,0,31,248,0,0,0,0,63,1,0,47,252,0,0,0,0,127,255,64,63,253,0,0,26,255,255,255,64,127,191,0,0,127,255,255,254,0,255,63,64,0,63,255,255,64,1,253,47,192,0,62,148,63,0,3,252,15,224,0,0,0,63,0,15,240,11,244,0,0,0,63,0,47,224,3,253,0,0,0,63,0,255,128,1,255,128,0,0,63,3,255,0,0,127,208,0,0,63,1,252,0,0,31,128,0,0,63,0,96,0,0,3,0,0,0,0,0,0,0,0,0,0, + // 0x8f74 轴 + 116,143,33,35,59,36,1,252,0,14,128,0,0,11,224,0,0,0,31,192,0,0,11,224,0,0,0,31,192,0,0,11,224,0,0,0,47,128,0,0,11,224,0,0,63,255,255,240,0,11,224,0,0,63,255,255,240,0,11,224,0,0,63,255,255,240,0,11,224,0,0,0,190,0,0,0,11,224,0,0,0,252,0,1,255,255,255,255,64,0,252,0,1,255,255,255,255,64,1,248,252,1,255,255,255,255,64,2,244,252,1,248,11,224,47,64,3,240,252,1,248,11,224,47,64,3,224,252,1,248,11,224,47,64,11,208,252,1,248,11,224,47,64,15,192,252,1,248,11,224,47,64,47,255,255,241,248,11,224,47,64,47,255,255,241,248,11,224,47,64,31,255,255,241,255,255,255,255,64,4,0,252,1,255,255,255,255,64,0,0,252,1,255,255,255,255,64,0,0,252,1,248,11,224,47,64,0,0,253,161,248,11,224,47,64,0,1,255,245,248,11,224,47,64,26,255,255,245,248,11,224,47,64,127,255,255,225,248,11,224,47,64,63,255,252,1,248,11,224,47,64,62,64,252,1,248,11,224,47,64,0,0,252,1,248,11,224,47,64,0,0,252,1,255,255,255,255,64,0,0,252,1,255,255,255,255,64,0,0,252,1,255,255,255,255,64,0,0,252,1,248,0,0,47,64,0,0,252,1,248,0,0,47,64,0,0,0,0,0,0,0,0,0, + // 0x8f7d 载 + 125,143,33,35,59,36,2,252,0,0,189,0,1,252,0,0,0,0,0,253,0,1,252,30,0,0,0,0,253,0,1,252,127,128,0,15,255,255,255,225,252,47,224,0,15,255,255,255,225,252,11,244,0,10,170,255,170,145,252,3,252,0,0,0,253,0,1,252,0,224,0,0,0,253,0,1,252,0,0,0,170,170,255,170,170,254,170,170,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,0,11,144,0,0,252,0,0,0,0,15,224,0,0,252,0,0,0,0,31,192,0,0,253,1,228,0,106,191,234,170,168,253,3,244,0,191,255,255,255,252,189,3,240,0,191,255,255,255,252,190,7,224,0,0,252,0,0,0,190,15,208,0,3,248,31,192,0,127,31,192,0,7,240,31,192,0,63,63,128,0,31,255,255,255,240,63,127,0,0,31,255,255,255,240,63,254,0,0,15,255,255,255,240,47,252,0,0,4,0,31,192,0,31,248,0,0,0,0,31,192,0,31,240,0,0,0,0,31,192,0,15,224,12,0,0,0,31,255,252,47,224,15,64,26,175,255,255,252,127,240,15,128,191,255,255,255,165,255,244,31,64,127,255,255,192,3,254,252,47,0,37,64,31,192,15,244,255,127,0,0,0,31,192,63,224,191,254,0,0,0,31,192,127,128,63,253,0,0,0,31,192,29,0,7,244,0,0,0,0,0,0,0,0,0,0, + // 0x8f91 辑 + 145,143,34,34,50,36,1,253,0,14,128,0,0,0,0,0,0,0,31,192,0,255,255,255,252,0,0,47,128,0,255,255,255,252,0,0,63,64,0,254,85,86,252,0,127,255,255,240,252,0,0,252,0,127,255,255,240,252,0,0,252,0,127,255,255,240,254,85,86,252,0,0,254,0,0,255,255,255,252,0,0,252,0,0,255,255,255,252,0,0,252,0,0,0,0,0,0,0,1,249,248,0,0,0,0,0,0,2,245,248,10,170,170,170,170,128,3,241,248,15,255,255,255,255,192,7,225,248,15,255,255,255,255,192,11,209,248,0,189,0,1,252,0,15,193,248,0,189,0,1,252,0,63,255,255,224,190,85,86,252,0,47,255,255,224,191,255,255,252,0,31,255,255,224,191,255,255,252,0,4,1,248,0,189,0,1,252,0,0,1,248,0,189,0,1,252,0,0,1,248,0,189,0,1,252,0,0,1,248,16,191,255,255,252,0,0,6,255,240,191,255,255,252,0,43,255,255,244,190,85,86,252,0,127,255,255,224,189,0,1,252,0,63,255,252,0,189,0,1,254,208,62,65,248,0,190,106,255,255,208,0,1,248,47,255,255,255,255,208,0,1,248,31,255,255,255,252,0,0,1,248,31,234,84,1,252,0,0,1,248,0,0,0,1,252,0,0,1,248,0,0,0,1,252,0,0,1,248,0,0,0,1,252,0, + // 0x8f93 输 + 147,143,34,34,50,36,1,253,0,121,0,0,0,14,0,0,0,0,126,0,0,0,47,192,0,0,0,189,0,0,0,127,192,0,0,0,189,0,0,1,255,224,0,0,127,255,255,64,11,255,252,0,0,127,255,255,64,47,240,255,64,0,127,255,255,64,255,192,63,224,0,1,244,0,11,254,0,15,254,0,2,240,0,127,244,0,2,255,224,3,240,1,255,255,255,255,255,208,3,227,224,126,255,255,255,231,128,7,211,224,16,170,170,170,144,0,11,195,224,0,0,0,0,0,0,15,195,224,0,0,0,0,10,0,15,131,224,15,255,253,21,31,64,31,67,224,15,255,253,62,31,64,63,255,255,15,234,189,62,31,64,63,255,255,15,64,61,62,31,64,47,255,255,15,64,61,62,31,64,0,3,224,15,255,253,62,31,64,0,3,224,15,255,253,62,31,64,0,3,224,15,149,189,62,31,64,0,3,251,15,64,61,62,31,64,0,27,255,79,64,61,62,31,64,47,255,255,79,255,253,62,31,64,63,255,244,15,255,253,62,31,64,63,235,224,15,149,189,62,31,64,36,3,224,15,64,61,62,31,64,0,3,224,15,64,61,0,31,64,0,3,224,15,64,61,0,31,64,0,3,224,15,64,125,0,31,64,0,3,224,15,75,253,15,255,0,0,3,224,15,71,252,15,255,0,0,3,224,10,66,144,6,164,0, + // 0x8fb9 边 + 185,143,34,34,50,36,1,253,0,64,0,0,1,80,0,0,0,2,208,0,0,7,240,0,0,0,15,244,0,0,7,240,0,0,0,3,253,0,0,11,240,0,0,0,1,255,0,0,11,240,0,0,0,0,127,192,0,11,240,0,0,0,0,47,240,0,11,240,0,0,0,0,15,210,255,255,255,255,255,0,0,2,2,255,255,255,255,255,0,0,0,2,255,255,255,255,255,0,0,0,0,0,15,224,0,127,0,0,0,0,0,15,208,0,127,0,21,85,0,0,15,208,0,127,0,127,255,64,0,31,192,0,127,0,127,255,64,0,47,192,0,191,0,127,255,64,0,63,192,0,191,0,0,63,64,0,63,64,0,191,0,0,63,64,0,127,0,0,190,0,0,63,64,0,255,0,0,254,0,0,63,64,0,253,0,0,254,0,0,63,64,3,252,0,0,253,0,0,63,64,7,248,0,0,253,0,0,63,64,15,240,0,1,253,0,0,63,64,63,208,0,2,252,0,0,63,64,255,128,21,7,252,0,0,63,71,254,0,63,255,248,0,0,63,67,248,0,31,255,240,0,1,255,192,208,0,15,255,128,0,11,255,248,0,0,0,0,0,0,63,246,255,228,0,0,0,21,160,255,192,127,255,255,255,255,255,224,127,0,11,255,255,255,255,255,208,61,0,0,111,255,255,255,255,192,8,0,0,0,5,85,64,0,0, + // 0x8fc1 迁 + 193,143,34,34,50,36,1,253,0,64,0,0,0,0,0,64,0,1,244,0,0,0,0,111,240,0,7,254,0,0,1,175,255,248,0,1,255,192,107,255,255,255,228,0,0,63,242,255,255,255,228,0,0,0,11,240,255,255,252,0,0,0,0,2,192,148,0,252,0,0,0,0,0,0,0,0,252,0,0,0,7,0,0,0,0,252,0,0,0,31,224,0,0,0,252,0,0,0,31,253,0,0,0,252,0,0,0,3,255,64,0,0,252,0,0,0,0,127,192,0,0,252,0,0,0,0,31,139,255,255,255,255,255,192,0,2,11,255,255,255,255,255,192,0,0,11,255,255,255,255,255,192,0,0,0,0,0,252,0,0,0,63,255,192,0,0,252,0,0,0,63,255,192,0,0,252,0,0,0,63,255,192,0,0,252,0,0,0,0,31,192,0,0,252,0,0,0,0,31,192,0,0,252,0,0,0,0,31,192,0,0,252,0,0,0,0,31,192,0,0,252,0,0,0,0,31,192,0,0,252,0,0,0,0,31,192,0,0,252,0,0,0,0,47,192,0,0,252,0,0,0,0,191,240,0,0,252,0,0,0,3,255,253,0,0,252,0,0,0,31,253,255,144,0,0,0,0,0,191,240,127,255,234,170,170,255,208,63,128,15,255,255,255,255,255,192,45,0,1,191,255,255,255,255,192,4,0,0,0,85,85,85,85,0, + // 0x8fd0 运 + 208,143,34,34,50,36,1,253,0,64,0,0,0,0,0,0,0,2,244,0,0,0,0,0,0,0,7,254,0,63,255,255,255,252,0,1,255,192,63,255,255,255,252,0,0,47,240,63,255,255,255,252,0,0,7,224,0,0,0,0,0,0,0,1,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,64,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,31,253,7,255,255,255,255,255,224,2,255,135,255,255,255,255,255,224,0,127,135,255,255,255,255,255,224,0,14,0,0,63,192,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,127,64,8,0,0,0,0,0,0,191,0,191,0,0,63,255,64,0,254,0,127,64,0,63,255,64,1,252,0,47,192,0,63,255,64,2,252,0,15,240,0,0,63,64,3,244,0,7,248,0,0,63,64,7,240,0,2,252,0,0,63,64,15,230,175,255,254,0,0,63,67,255,255,255,255,255,0,0,63,67,255,255,255,255,255,128,0,63,67,255,254,165,0,31,192,0,63,193,80,0,0,0,15,128,0,255,224,0,0,0,0,4,0,7,255,248,0,0,0,0,0,0,47,250,255,144,0,0,0,0,0,191,224,191,255,234,170,170,255,208,63,64,31,255,255,255,255,255,192,45,0,1,191,255,255,255,255,192,0,0,0,1,86,170,165,85,0, + // 0x8fd1 近 + 209,143,34,34,50,36,1,253,0,0,0,0,0,0,1,128,0,3,64,0,0,0,1,191,240,0,31,208,0,4,5,191,255,252,0,31,248,0,15,255,255,255,208,0,7,254,0,15,255,255,164,0,0,0,255,128,15,254,80,0,0,0,0,63,208,15,192,0,0,0,0,0,15,192,15,192,0,0,0,0,0,6,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,255,255,255,255,192,0,0,0,31,255,255,255,255,192,0,0,0,31,255,255,255,255,192,0,0,0,31,192,1,252,0,0,63,255,128,31,192,1,252,0,0,63,255,128,47,128,1,252,0,0,63,255,128,63,128,1,252,0,0,0,47,128,63,64,1,252,0,0,0,47,128,127,0,1,252,0,0,0,47,128,191,0,1,252,0,0,0,47,128,253,0,1,252,0,0,0,47,130,252,0,1,252,0,0,0,47,131,248,0,1,252,0,0,0,47,143,240,0,1,252,0,0,0,47,143,208,0,1,252,0,0,0,63,195,128,0,1,252,0,0,1,255,240,0,0,1,252,0,0,11,255,254,0,0,0,0,0,0,127,248,255,249,64,0,0,85,80,127,208,63,255,255,255,255,255,208,63,64,7,255,255,255,255,255,192,28,0,0,43,255,255,255,255,128,0,0,0,0,0,0,0,0,0, + // 0x8fd4 返 + 212,143,34,33,41,36,1,253,2,0,0,0,0,0,0,0,0,31,208,0,63,255,255,255,255,0,31,244,0,63,255,255,255,255,0,7,253,0,63,255,255,255,255,0,0,255,64,63,0,0,0,0,0,0,63,192,63,0,0,0,0,0,0,15,64,63,0,0,0,0,0,0,4,0,63,0,0,0,0,0,0,0,0,127,255,255,255,248,0,0,0,0,127,255,255,255,252,0,0,0,0,127,255,255,255,248,0,0,0,0,127,127,0,3,244,0,0,0,0,127,63,0,11,240,0,63,255,64,127,47,128,15,224,0,63,255,64,190,15,192,31,192,0,63,255,64,190,15,240,63,128,0,0,63,64,253,7,244,255,0,0,0,63,64,252,2,254,254,0,0,0,63,65,252,0,255,252,0,0,0,63,66,252,0,127,240,0,0,0,63,67,244,0,127,240,0,0,0,63,71,240,2,255,254,0,0,0,63,79,240,15,255,255,192,0,0,63,95,209,255,244,191,253,0,0,63,111,203,255,192,31,255,192,0,127,199,67,254,0,2,255,128,2,255,240,1,224,0,0,47,0,11,255,253,0,0,0,0,0,0,127,245,255,229,64,0,0,21,80,191,192,127,255,255,255,255,255,208,63,0,11,255,255,255,255,255,192,44,0,0,111,255,255,255,255,128,0,0,0,0,0,0,0,0,0, + // 0x8fd8 还 + 216,143,34,33,41,36,1,253,2,208,0,0,0,0,0,0,0,15,244,1,85,85,85,85,85,0,7,253,3,255,255,255,255,255,64,1,255,67,255,255,255,255,255,64,0,127,195,255,255,255,255,255,64,0,47,240,0,0,127,128,0,0,0,15,192,0,0,255,0,0,0,0,2,0,0,1,254,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,11,252,0,0,0,0,0,0,0,47,252,0,0,0,21,85,0,0,127,252,48,0,0,127,255,64,0,255,253,252,0,0,127,255,64,3,255,253,255,0,0,127,255,64,15,250,252,127,192,0,0,63,64,63,226,252,31,240,0,0,63,65,255,194,252,7,252,0,0,63,75,255,2,252,1,255,0,0,63,111,248,2,252,0,191,192,0,63,79,224,2,252,0,47,64,0,63,67,64,2,252,0,8,0,0,63,64,0,2,252,0,0,0,0,63,64,0,2,252,0,0,0,0,63,64,0,2,252,0,0,0,0,63,64,0,2,252,0,0,0,0,127,64,0,2,252,0,0,0,3,255,224,0,2,252,0,0,0,15,255,253,0,0,0,0,0,0,63,230,255,229,0,0,0,86,160,255,128,63,255,255,255,255,255,224,127,0,11,255,255,255,255,255,208,61,0,0,111,255,255,255,255,192,8,0,0,0,5,85,64,0,0, + // 0x8fdb 进 + 219,143,34,33,41,36,1,253,2,192,0,0,253,0,127,0,0,15,240,0,0,253,0,127,0,0,11,252,0,0,253,0,127,0,0,2,254,0,0,253,0,127,0,0,0,191,128,0,253,0,127,0,0,0,63,208,0,254,0,191,0,0,0,15,194,255,255,255,255,255,0,0,3,2,255,255,255,255,255,0,0,0,2,255,255,255,255,255,0,0,0,0,0,253,0,127,0,0,0,0,0,0,253,0,127,0,0,0,0,0,0,253,0,127,0,0,63,255,128,0,253,0,127,0,0,63,255,128,0,253,0,127,0,0,63,255,128,0,253,0,191,0,0,0,47,131,255,255,255,255,255,192,0,47,131,255,255,255,255,255,192,0,47,131,255,255,255,255,255,192,0,47,128,2,252,0,127,0,0,0,47,128,3,248,0,127,0,0,0,47,128,3,244,0,127,0,0,0,47,128,11,240,0,127,0,0,0,47,128,31,224,0,127,0,0,0,47,128,63,192,0,127,0,0,0,47,128,255,64,0,127,0,0,0,63,192,191,0,0,127,0,0,1,255,240,44,0,0,127,0,0,11,255,254,0,0,0,0,0,0,47,245,255,229,0,0,0,86,144,127,192,47,255,255,255,255,255,192,63,0,2,255,255,255,255,255,192,13,0,0,27,255,255,255,255,128,4,0,0,0,0,0,0,0,0, + // 0x8fde 连 + 222,143,34,34,50,36,1,253,0,64,0,0,41,0,0,0,0,3,208,0,0,63,192,0,0,0,15,240,0,0,63,128,0,0,0,3,252,0,0,127,0,0,0,0,1,255,3,255,255,255,255,255,0,0,127,131,255,255,255,255,255,0,0,63,195,255,255,255,255,255,0,0,15,192,3,248,0,0,0,0,0,6,0,7,240,21,0,0,0,0,0,0,15,224,63,128,0,0,0,0,0,31,192,63,128,0,0,0,0,0,63,128,63,128,0,0,127,255,64,191,64,63,128,0,0,127,255,65,255,255,255,255,252,0,127,255,64,255,255,255,255,252,0,0,63,64,191,255,255,255,252,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,75,255,255,255,255,255,128,0,63,75,255,255,255,255,255,128,0,63,75,255,255,255,255,255,128,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,127,64,0,0,63,128,0,0,3,255,224,0,0,63,128,0,0,15,255,253,0,0,63,128,0,0,63,226,255,229,0,0,0,86,160,255,192,63,255,255,255,255,255,224,127,0,11,255,255,255,255,255,208,45,0,0,111,255,255,255,255,192,8,0,0,0,5,85,64,0,0, + // 0x8ff7 迷 + 247,143,34,34,50,36,1,253,0,0,0,0,0,84,0,0,0,3,64,0,0,1,252,0,0,0,31,208,0,120,1,252,0,185,0,31,248,1,252,1,252,0,254,0,7,254,0,254,1,252,1,252,0,1,255,128,127,1,252,3,248,0,0,63,208,63,129,252,7,240,0,0,15,192,47,193,252,11,224,0,0,7,0,15,193,252,31,192,0,0,0,0,15,129,252,31,64,0,0,0,0,4,1,252,1,0,0,0,0,0,0,1,252,0,0,0,0,0,15,255,255,255,255,255,192,0,0,15,255,255,255,255,255,192,63,255,143,255,255,255,255,255,192,63,255,128,0,31,255,192,0,0,63,255,128,0,63,255,224,0,0,0,47,128,0,191,255,244,0,0,0,47,128,1,253,253,253,0,0,0,47,128,7,245,252,191,0,0,0,47,128,15,241,252,63,192,0,0,47,128,127,193,252,15,244,0,0,47,129,255,65,252,7,253,0,0,47,139,253,1,252,1,255,192,0,47,143,244,1,252,0,127,128,0,47,195,208,1,252,0,15,0,0,63,208,0,1,252,0,0,0,1,255,244,0,1,252,0,0,0,11,255,254,0,0,84,0,0,0,127,244,255,249,64,0,0,85,80,127,208,63,255,255,255,255,255,208,63,0,7,255,255,255,255,255,192,28,0,0,43,255,255,255,255,128,0,0,0,0,0,0,0,0,0, + // 0x9000 退 + 0,144,34,33,41,36,1,253,3,128,0,47,255,255,255,240,0,31,240,0,47,255,255,255,240,0,11,253,0,47,255,255,255,240,0,2,255,64,47,128,0,3,240,0,0,191,192,47,128,0,3,240,0,0,47,224,47,128,0,3,240,0,0,11,128,47,255,255,255,240,0,0,1,0,47,255,255,255,240,0,0,0,0,47,234,170,171,240,0,0,0,0,47,128,0,3,240,0,0,0,0,47,128,0,3,240,0,0,0,0,47,128,0,3,240,0,0,0,0,47,255,255,255,240,0,63,255,128,47,255,255,255,240,0,63,255,128,47,255,255,255,244,0,63,255,128,47,128,126,0,62,0,0,47,128,47,128,63,1,255,64,0,47,128,47,128,47,139,253,0,0,47,128,47,128,15,255,224,0,0,47,128,47,128,11,255,0,0,0,47,128,47,128,3,252,0,0,0,47,128,47,128,25,255,0,0,0,47,128,47,155,252,191,208,0,0,47,128,127,255,252,47,253,0,0,47,195,255,255,228,7,255,192,0,63,211,255,228,0,1,255,64,1,255,246,228,0,0,0,30,0,11,255,254,0,0,0,0,0,0,127,244,255,249,64,0,0,85,80,127,208,63,255,255,255,255,255,208,63,0,7,255,255,255,255,255,192,28,0,0,43,255,255,255,255,128,0,0,0,0,0,0,0,0,0, + // 0x9009 选 + 9,144,33,35,59,36,2,252,0,0,0,0,1,248,0,0,0,8,0,0,25,2,252,0,0,0,63,0,0,47,130,252,0,0,0,191,192,0,63,66,252,0,0,0,47,240,0,127,2,252,0,0,0,11,252,0,255,255,255,255,248,0,2,255,1,255,255,255,255,248,0,0,191,3,255,255,255,255,248,0,0,56,11,240,2,252,0,0,0,0,0,31,224,2,252,0,0,0,0,0,7,192,2,252,0,0,0,0,0,0,64,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,31,255,255,255,255,255,0,255,253,31,255,255,255,255,255,0,255,253,31,255,255,255,255,255,0,255,253,0,1,252,15,208,0,0,0,253,0,2,252,15,208,0,0,0,253,0,3,248,15,208,0,0,0,253,0,3,244,15,208,0,0,0,253,0,11,240,15,208,0,0,0,253,0,15,224,15,208,29,0,0,253,0,47,208,15,208,31,64,0,253,0,191,192,15,224,47,64,0,253,3,255,0,11,224,63,64,0,253,63,252,0,11,255,255,0,0,253,47,240,0,7,255,254,0,0,255,79,64,0,1,255,248,0,2,255,240,0,0,0,0,0,0,31,255,253,0,0,0,0,0,0,127,224,255,229,0,0,21,106,64,255,128,47,255,255,255,255,255,0,190,0,6,255,255,255,255,255,0,56,0,0,26,255,255,255,234,0,0,0,0,0,0,0,0,0,0, + // 0x901f 速 + 31,144,34,34,50,36,1,253,0,0,0,0,0,252,0,0,0,2,0,0,0,0,252,0,0,0,15,208,0,0,0,252,0,0,0,47,244,0,0,0,252,0,0,0,7,254,7,255,255,255,255,255,192,1,255,135,255,255,255,255,255,192,0,63,215,255,255,255,255,255,128,0,15,128,0,0,252,0,0,0,0,1,0,0,0,252,0,0,0,0,0,0,255,255,255,255,253,0,0,0,0,255,255,255,255,253,0,0,0,0,254,170,254,170,253,0,0,0,0,252,0,252,0,253,0,0,0,0,252,0,252,0,253,0,63,255,128,252,0,252,0,253,0,63,255,128,252,0,252,0,253,0,63,255,128,255,255,255,255,253,0,0,47,128,255,255,255,255,253,0,0,47,128,170,175,255,234,169,0,0,47,128,0,47,255,192,0,0,0,47,128,0,127,255,244,0,0,0,47,128,2,253,254,253,0,0,0,47,128,11,244,252,191,128,0,0,47,128,127,208,252,47,244,0,0,47,130,255,64,252,11,255,64,0,47,207,253,0,252,1,255,128,0,63,211,240,0,252,0,63,0,1,255,245,64,0,252,0,4,0,11,255,254,0,0,168,0,0,0,127,244,255,249,64,0,0,85,80,127,208,63,255,255,255,255,255,208,63,0,7,255,255,255,255,255,192,28,0,0,43,255,255,255,255,128,0,0,0,0,0,0,0,0,0, + // 0x90e8 部 + 232,144,34,34,50,36,1,253,0,0,169,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,191,255,255,64,0,0,190,0,0,191,255,255,208,47,255,255,255,244,191,255,255,192,47,255,255,255,244,190,0,63,192,47,255,255,255,244,190,0,63,64,0,16,0,20,0,190,0,191,0,1,248,0,63,64,190,0,254,0,0,252,0,63,0,190,1,252,0,0,189,0,126,0,190,2,248,0,0,126,0,189,0,190,3,244,0,0,127,0,252,0,190,7,240,0,0,36,0,100,0,190,15,208,0,127,255,255,255,252,190,31,192,0,127,255,255,255,252,190,15,240,0,127,255,255,255,252,190,3,248,0,0,0,0,0,0,190,0,253,0,0,0,0,0,0,190,0,191,0,0,0,0,0,0,190,0,63,64,3,255,255,255,192,190,0,47,128,3,255,255,255,192,190,0,31,192,3,255,255,255,192,190,0,31,192,3,240,0,15,192,190,0,31,192,3,240,0,15,192,190,0,31,192,3,240,0,15,192,190,0,127,192,3,240,0,15,192,190,63,255,128,3,240,0,15,192,190,31,255,0,3,240,0,15,192,190,31,248,0,3,255,255,255,192,190,5,64,0,3,255,255,255,192,190,0,0,0,3,255,255,255,192,190,0,0,0,3,240,0,15,192,190,0,0,0,3,240,0,15,192,190,0,0,0, + // 0x914d 配 + 77,145,33,33,41,36,2,253,255,255,255,255,0,0,0,0,0,255,255,255,255,31,255,255,253,0,255,255,255,255,31,255,255,253,0,0,61,61,0,31,255,255,253,0,0,61,61,0,0,0,0,253,0,0,61,61,0,0,0,0,253,0,0,61,61,0,0,0,0,253,0,63,255,255,253,0,0,0,253,0,63,255,255,253,0,0,0,253,0,63,255,255,253,0,0,0,253,0,61,44,56,125,0,0,0,253,0,61,44,56,125,0,0,0,253,0,61,44,56,125,15,255,255,253,0,61,44,56,125,15,255,255,253,0,61,44,56,125,15,255,255,253,0,61,60,56,125,15,192,0,253,0,61,56,56,125,15,192,0,253,0,61,180,63,253,15,192,0,104,0,63,240,31,253,15,192,0,0,0,61,128,0,125,15,192,0,0,0,61,0,0,125,15,192,0,0,0,61,0,0,125,15,192,0,0,0,63,255,255,253,15,192,0,0,0,63,255,255,253,15,192,0,24,0,62,85,85,189,15,192,0,31,64,61,0,0,125,15,192,0,31,128,61,0,0,125,15,192,0,47,128,61,0,0,125,15,192,0,47,64,63,255,255,253,15,208,0,127,0,63,255,255,253,15,255,255,255,0,63,170,170,253,11,255,255,253,0,61,0,0,125,2,255,255,248,0,61,0,0,20,0,0,0,0,0, + // 0x91ca 释 + 202,145,34,34,50,36,1,253,0,0,0,64,0,0,0,0,0,0,1,175,240,0,0,0,0,0,43,255,255,245,255,255,255,255,64,63,255,254,145,255,255,255,255,192,63,175,208,1,255,255,255,255,0,0,11,208,0,31,64,0,254,0,25,11,208,248,15,192,3,252,0,47,11,208,248,3,240,15,240,0,15,139,210,240,1,252,63,208,0,11,203,211,224,0,191,255,64,0,7,219,219,192,0,63,253,0,0,3,75,209,64,0,191,252,0,0,0,11,208,0,11,255,255,128,0,63,255,255,241,191,253,191,249,0,63,255,255,255,255,224,15,255,224,63,255,255,251,254,0,1,255,208,0,31,224,3,208,15,208,11,192,0,63,248,0,0,15,208,0,0,0,63,254,0,0,15,208,0,0,0,255,255,128,255,255,255,254,0,1,255,239,224,255,255,255,254,0,3,251,215,244,255,255,255,254,0,11,235,210,240,0,15,208,0,0,31,203,208,128,0,15,208,0,0,127,75,208,0,0,15,208,0,0,191,11,208,7,255,255,255,255,192,61,11,208,7,255,255,255,255,192,40,11,208,7,255,255,255,255,192,0,11,208,0,0,15,208,0,0,0,11,208,0,0,15,208,0,0,0,11,208,0,0,15,208,0,0,0,11,208,0,0,15,208,0,0,0,11,208,0,0,15,208,0,0,0,11,208,0,0,15,208,0,0, + // 0x91cd 重 + 205,145,32,33,8,36,2,254,0,0,0,0,0,5,172,0,0,0,5,90,191,255,254,0,3,255,255,255,255,255,255,0,2,255,255,255,255,169,64,0,1,170,85,95,208,0,0,0,0,0,0,15,208,0,0,0,170,170,170,175,250,170,170,170,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,253,85,95,229,85,127,64,0,252,0,15,208,0,63,64,0,252,0,15,224,0,63,64,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,252,0,15,208,0,63,64,0,252,0,15,208,0,63,64,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,85,85,95,229,85,85,0,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,7,255,255,255,255,255,255,240,7,255,255,255,255,255,255,240,2,170,170,175,250,170,170,160,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,170,170,170,170,170, + // 0x91cf 量 + 207,145,33,32,32,36,2,254,0,127,255,255,255,255,253,0,0,0,191,255,255,255,255,254,0,0,0,190,0,0,0,0,254,0,0,0,190,0,0,0,0,254,0,0,0,191,255,255,255,255,254,0,0,0,191,255,255,255,255,254,0,0,0,190,0,0,0,0,254,0,0,0,191,255,255,255,255,254,0,0,0,191,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,252,0,11,224,0,63,64,0,0,252,0,11,224,0,63,64,0,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,252,0,11,224,0,63,64,0,0,252,0,11,224,0,63,64,0,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,0,0,11,224,0,0,0,0,1,85,85,95,229,85,85,64,0,3,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,192,0,0,0,0,11,224,0,0,0,0,170,170,170,175,250,170,170,170,0,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64, + // 0x9488 针 + 136,148,33,34,50,36,1,253,0,41,0,0,0,6,160,0,0,0,63,64,0,0,11,240,0,0,0,127,0,0,0,11,240,0,0,0,253,0,0,0,11,240,0,0,2,255,255,240,0,11,240,0,0,7,255,255,240,0,11,240,0,0,15,255,255,240,0,11,240,0,0,63,208,0,0,0,11,240,0,0,191,128,0,0,0,11,240,0,0,127,0,0,0,0,11,240,0,0,61,0,0,0,0,11,240,0,0,19,255,255,208,0,11,240,0,0,3,255,255,219,255,255,255,255,192,2,175,250,139,255,255,255,255,192,0,11,224,11,255,255,255,255,192,0,11,224,1,85,91,245,85,64,0,11,224,0,0,11,240,0,0,0,11,224,0,0,11,240,0,0,47,255,255,240,0,11,240,0,0,47,255,255,240,0,11,240,0,0,47,255,255,240,0,11,240,0,0,0,11,224,0,0,11,240,0,0,0,11,224,0,0,11,240,0,0,0,11,224,0,0,11,240,0,0,0,11,224,0,0,11,240,0,0,0,11,224,0,0,11,240,0,0,0,11,224,40,0,11,240,0,0,0,11,226,248,0,11,240,0,0,0,15,255,252,0,11,240,0,0,0,15,255,224,0,11,240,0,0,0,63,254,0,0,11,240,0,0,0,63,244,0,0,11,240,0,0,0,31,64,0,0,11,240,0,0,0,8,0,0,0,11,224,0,0, + // 0x94ae 钮 + 174,148,34,34,50,36,1,253,0,164,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,1,252,0,7,255,255,255,255,0,3,248,0,7,255,255,255,255,0,3,255,255,231,255,255,255,255,0,11,255,255,224,0,190,0,127,0,15,255,255,224,0,254,0,127,0,47,192,0,0,0,253,0,190,0,127,64,0,0,0,253,0,190,0,255,0,0,0,0,252,0,190,0,125,0,0,0,0,252,0,189,0,59,255,255,192,0,252,0,253,0,3,255,255,192,1,252,0,253,0,3,255,255,192,1,252,0,253,0,0,15,192,2,171,254,170,252,0,0,15,192,3,255,255,255,252,0,0,15,192,3,255,255,255,252,0,0,15,192,2,171,254,171,252,0,63,255,255,224,3,240,1,252,0,63,255,255,224,3,240,1,252,0,63,255,255,224,7,240,2,248,0,0,15,192,0,7,240,2,248,0,0,15,192,0,11,224,2,248,0,0,15,192,0,11,224,3,244,0,0,15,192,0,15,208,3,244,0,0,15,192,64,15,208,3,244,0,0,15,195,192,15,192,3,240,0,0,15,239,208,15,192,3,240,0,0,15,255,208,31,192,7,240,0,0,31,254,85,111,213,91,245,64,0,63,244,255,255,255,255,255,224,0,255,128,255,255,255,255,255,224,0,125,0,255,255,255,255,255,224,0,32,0,0,0,0,0,0,0, + // 0x9519 错 + 25,149,34,35,59,36,1,252,0,57,0,0,11,192,31,128,0,0,63,0,0,15,192,31,128,0,0,190,0,0,15,192,31,128,0,0,252,0,0,15,192,31,128,0,2,255,255,208,15,192,31,128,0,3,255,255,211,255,255,255,255,128,15,255,255,211,255,255,255,255,128,47,192,0,3,255,255,255,255,128,127,64,0,0,15,192,31,128,0,127,0,0,0,15,192,31,128,0,61,0,0,0,15,192,31,128,0,23,255,255,192,15,192,31,128,0,3,255,255,207,255,255,255,255,208,3,255,255,207,255,255,255,255,208,0,15,192,15,255,255,255,255,208,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,191,255,255,252,0,47,255,255,224,255,255,255,252,0,47,255,255,224,255,255,255,252,0,47,255,255,224,252,0,0,252,0,0,15,192,0,252,0,0,252,0,0,15,192,0,252,0,0,252,0,0,15,192,0,252,0,0,252,0,0,15,192,0,255,255,255,252,0,0,15,192,0,255,255,255,252,0,0,15,193,192,254,170,170,252,0,0,15,223,192,252,0,0,252,0,0,15,255,208,252,0,0,252,0,0,47,255,128,252,0,0,252,0,0,127,248,0,255,255,255,252,0,0,127,192,0,255,255,255,252,0,0,45,0,0,255,170,170,252,0,0,0,0,0,252,0,0,252,0,0,0,0,0,0,0,0,0,0, + // 0x955c 镜 + 92,149,34,35,59,36,1,252,0,36,0,0,0,31,128,0,0,0,127,0,0,0,15,192,0,0,0,190,0,2,170,175,250,170,0,0,253,0,3,255,255,255,255,64,2,255,255,195,255,255,255,255,64,7,255,255,192,6,128,2,64,0,15,255,255,192,15,192,11,224,0,47,192,0,0,11,208,15,192,0,127,128,0,0,7,208,31,128,0,127,0,0,15,255,255,255,255,192,62,0,0,15,255,255,255,255,192,27,255,255,79,255,255,255,255,192,3,255,255,64,0,0,0,0,0,3,255,255,64,0,0,0,0,0,0,31,192,1,255,255,255,254,0,0,31,192,1,255,255,255,254,0,0,31,192,1,248,0,0,126,0,0,31,192,1,248,0,0,126,0,63,255,255,209,255,255,255,254,0,63,255,255,209,255,255,255,254,0,63,255,255,209,248,0,0,126,0,0,31,192,1,248,0,0,126,0,0,31,192,1,255,255,255,254,0,0,31,192,1,255,255,255,254,0,0,31,192,0,7,240,127,0,0,0,31,192,128,7,224,126,0,0,0,31,199,208,11,224,126,0,0,0,31,255,224,15,208,126,1,0,0,47,255,192,47,192,126,3,208,0,63,254,0,127,64,126,3,224,0,255,240,7,255,0,127,3,224,0,191,64,191,252,0,63,255,208,0,60,0,127,224,0,63,255,192,0,16,0,46,0,0,5,85,0,0,0,0,0,0,0,0,0,0, + // 0x957f 长 + 127,149,33,34,50,36,2,253,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,120,0,0,0,7,240,0,0,1,255,64,0,0,7,240,0,0,11,253,0,0,0,7,240,0,0,63,244,0,0,0,7,240,0,1,255,208,0,0,0,7,240,0,11,255,0,0,0,0,7,240,0,191,248,0,0,0,0,7,240,11,255,208,0,0,0,0,7,240,127,254,0,0,0,0,0,7,240,47,244,0,0,0,0,0,7,240,11,64,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,85,91,245,86,253,85,85,85,0,0,7,240,0,253,0,0,0,0,0,7,240,0,191,0,0,0,0,0,7,240,0,63,64,0,0,0,0,7,240,0,63,192,0,0,0,0,7,240,0,31,240,0,0,0,0,7,240,0,11,252,0,0,0,0,7,240,0,3,254,0,0,0,0,7,240,0,0,255,192,0,0,0,7,240,0,0,127,244,0,0,0,7,240,6,244,31,254,0,0,0,7,250,255,244,7,255,228,0,0,11,255,255,248,0,255,255,64,0,47,255,255,144,0,47,255,0,0,31,255,144,0,0,2,252,0,0,15,208,0,0,0,0,24,0,0,4,0,0,0,0,0,0,0, + // 0x95ed 闭 + 237,149,30,35,24,36,3,252,1,0,0,0,0,0,0,0,47,64,0,0,0,0,0,0,63,208,31,255,255,255,255,240,15,240,31,255,255,255,255,240,7,252,31,255,255,255,255,240,1,254,0,0,0,0,7,240,0,184,0,0,0,0,3,240,0,16,0,0,63,64,3,240,84,0,0,0,63,64,3,240,253,0,0,0,63,64,3,240,253,0,0,0,63,64,3,240,253,0,0,0,63,64,3,240,253,15,255,255,255,255,195,240,253,15,255,255,255,255,195,240,253,15,255,255,255,255,195,240,253,0,0,7,255,64,3,240,253,0,0,15,255,64,3,240,253,0,0,63,255,64,3,240,253,0,0,191,191,64,3,240,253,0,2,254,63,64,3,240,253,0,11,252,63,64,3,240,253,0,63,240,63,64,3,240,253,0,255,192,63,64,3,240,253,11,255,0,63,64,3,240,253,127,248,0,63,64,3,240,253,127,224,0,63,64,3,240,253,31,0,0,63,64,3,240,253,4,0,0,127,64,3,240,253,0,0,255,255,0,3,240,253,0,0,255,255,0,3,240,253,0,0,127,228,0,7,240,253,0,0,0,0,7,255,240,253,0,0,0,0,3,255,208,253,0,0,0,0,3,255,64,0,0,0,0,0,0,0,0, + // 0x95f2 闲 + 242,149,30,34,16,36,3,253,1,0,0,0,0,0,0,0,11,128,0,0,0,0,0,0,47,208,15,255,255,255,255,240,11,244,15,255,255,255,255,240,3,252,15,255,255,255,255,240,0,255,0,0,0,0,3,240,0,127,128,0,0,0,3,240,0,47,128,0,0,0,3,240,84,13,0,26,64,0,3,240,252,0,0,47,64,0,3,240,252,0,0,47,64,0,3,240,252,0,0,47,64,0,3,240,252,0,0,47,64,0,3,240,252,31,255,255,255,255,195,240,252,31,255,255,255,255,195,240,252,31,255,255,255,255,131,240,252,0,0,255,240,0,3,240,252,0,3,255,252,0,3,240,252,0,7,255,255,0,3,240,252,0,15,239,191,192,3,240,252,0,63,111,79,240,3,240,252,0,254,47,67,252,3,240,252,3,252,47,65,254,3,240,252,31,244,47,64,127,67,240,252,63,208,47,64,47,3,240,252,31,64,47,64,8,3,240,252,8,0,47,64,0,3,240,252,0,0,47,64,0,3,240,252,0,0,47,64,0,3,240,252,0,0,47,64,0,7,240,252,0,0,5,0,127,255,240,252,0,0,0,0,63,255,224,252,0,0,0,0,47,255,64,168,0,0,0,0,0,0,0, + // 0x95f4 间 + 244,149,30,35,24,36,3,252,1,0,0,0,0,0,0,0,31,64,0,0,0,0,0,0,63,208,31,255,255,255,255,240,15,240,31,255,255,255,255,240,3,252,31,255,255,255,255,240,1,253,0,0,0,0,11,240,0,180,0,0,0,0,7,240,0,0,0,0,0,0,7,240,169,0,0,0,0,0,7,240,254,0,0,0,0,0,7,240,254,0,170,170,170,160,7,240,254,0,255,255,255,240,7,240,254,0,255,255,255,240,7,240,254,0,252,0,3,240,7,240,254,0,252,0,3,240,7,240,254,0,252,0,3,240,7,240,254,0,252,0,3,240,7,240,254,0,254,170,171,240,7,240,254,0,255,255,255,240,7,240,254,0,255,255,255,240,7,240,254,0,252,0,3,240,7,240,254,0,252,0,3,240,7,240,254,0,252,0,3,240,7,240,254,0,252,0,3,240,7,240,254,0,252,0,3,240,7,240,254,0,255,255,255,240,7,240,254,0,255,255,255,240,7,240,254,0,170,170,170,160,7,240,254,0,0,0,0,0,7,240,254,0,0,0,0,0,7,240,254,0,0,0,0,0,11,240,254,0,0,0,0,3,255,240,254,0,0,0,0,2,255,224,254,0,0,0,0,1,254,64,0,0,0,0,0,0,0,0, + // 0x9608 阈 + 8,150,30,35,24,36,3,252,3,192,0,0,0,0,0,0,15,224,15,255,255,255,255,240,7,248,15,255,255,255,255,240,2,253,15,255,255,255,255,240,0,255,64,0,0,0,11,240,0,63,192,0,0,0,7,240,0,31,128,1,240,144,7,240,84,9,0,1,242,244,7,240,253,0,0,1,244,189,7,240,253,0,0,1,244,56,7,240,253,26,170,170,254,170,71,240,253,63,255,255,255,255,199,240,253,63,255,255,255,255,199,240,253,0,0,0,248,0,7,240,253,0,0,0,248,21,7,240,253,15,255,244,248,63,7,240,253,15,255,244,252,62,7,240,253,15,64,244,188,124,7,240,253,15,64,244,188,188,7,240,253,15,64,244,124,248,7,240,253,15,64,244,126,240,7,240,253,15,255,244,63,224,7,240,253,15,255,244,63,192,7,240,253,0,0,0,47,129,135,240,253,0,0,20,63,66,231,240,253,1,175,252,191,195,215,240,253,63,255,254,255,231,199,240,253,63,254,75,243,255,199,240,253,41,0,47,193,255,71,240,253,0,0,31,0,126,7,240,253,0,0,4,0,0,11,240,253,0,0,0,0,63,255,224,253,0,0,0,0,47,255,192,253,0,0,0,0,31,254,0,0,0,0,0,0,0,0,0, + // 0x964d 降 + 77,150,32,35,24,36,3,252,0,0,0,0,14,64,0,0,0,0,0,0,63,128,0,0,255,255,208,0,127,0,0,0,255,255,244,0,255,170,170,0,255,255,240,3,255,255,255,192,252,7,240,11,255,255,255,64,252,11,208,47,240,0,191,0,252,15,192,191,248,0,253,0,252,15,195,254,253,3,252,0,252,47,71,244,127,79,240,0,252,63,1,208,47,255,192,0,252,62,0,0,11,255,64,0,252,125,0,0,11,255,64,0,252,190,0,0,191,255,244,0,252,63,0,11,255,159,255,144,252,15,194,255,253,1,255,254,252,15,215,255,208,47,175,252,252,7,226,249,0,47,129,180,252,3,240,64,0,47,128,0,252,3,240,255,255,255,255,240,252,3,240,255,255,255,255,240,252,3,240,255,255,255,255,240,252,11,240,11,192,47,128,0,252,255,224,11,192,47,128,0,252,255,192,11,192,47,128,0,252,190,0,11,192,47,128,0,252,0,15,255,255,255,255,252,252,0,15,255,255,255,255,252,252,0,11,255,255,255,255,252,252,0,0,0,0,47,128,0,252,0,0,0,0,47,128,0,252,0,0,0,0,47,128,0,252,0,0,0,0,47,128,0,252,0,0,0,0,47,128,0,0,0,0,0,0,0,0,0, + // 0x9650 限 + 80,150,31,33,8,36,3,252,255,255,244,63,255,255,255,192,255,255,252,63,255,255,255,192,255,255,252,63,255,255,255,192,252,2,244,63,0,0,15,192,252,3,240,63,0,0,15,192,252,7,224,63,0,0,15,192,252,11,208,63,255,255,255,192,252,15,192,63,255,255,255,192,252,31,128,63,255,255,255,192,252,63,0,63,0,0,15,192,252,63,0,63,0,0,15,192,252,63,64,63,0,0,15,192,252,15,192,63,0,0,15,192,252,7,224,63,255,255,255,192,252,3,240,63,255,255,255,192,252,2,248,63,255,255,255,192,252,1,252,63,1,248,0,0,252,0,252,63,0,252,2,208,252,0,252,63,0,253,7,248,252,1,252,63,0,126,47,224,252,3,252,63,0,63,191,128,252,255,248,63,0,63,254,0,252,191,240,63,0,31,244,0,252,127,128,63,0,15,224,0,252,0,0,63,0,7,244,0,252,0,0,63,0,19,253,0,252,0,0,63,111,244,255,0,252,0,1,191,255,244,127,208,252,0,63,255,255,244,47,248,252,0,47,255,228,0,11,252,252,0,15,228,0,0,2,244,252,0,4,0,0,0,0,32,0,0,0,0,0,0,0,0, + // 0x9664 除 + 100,150,32,34,16,36,3,253,0,0,0,0,6,160,0,0,0,0,0,0,15,248,0,0,255,255,208,0,47,252,0,0,255,255,244,0,127,255,0,0,255,255,240,0,254,63,192,0,252,7,240,3,252,31,240,0,252,11,208,15,240,7,252,0,252,15,192,63,208,2,255,0,252,15,192,255,64,0,127,208,252,47,75,253,0,0,31,248,252,63,63,244,0,0,7,254,252,62,31,239,255,255,254,252,252,189,14,31,255,255,253,40,252,190,0,31,255,255,253,0,252,63,0,0,3,240,0,0,252,15,192,0,3,240,0,0,252,11,208,0,3,240,0,0,252,7,224,0,3,240,0,0,252,3,242,255,255,255,255,240,252,3,242,255,255,255,255,240,252,3,242,255,255,255,255,240,252,3,240,0,3,240,0,0,252,11,240,0,3,240,0,0,252,255,224,62,3,240,124,0,252,255,192,190,3,240,191,0,252,190,0,252,3,240,63,128,252,0,2,248,3,240,31,192,252,0,7,240,3,240,11,240,252,0,15,224,3,240,3,244,252,0,63,192,3,240,1,252,252,0,47,0,7,240,0,252,252,0,9,3,255,240,0,80,252,0,0,2,255,224,0,0,252,0,0,1,254,64,0,0, + // 0x9669 险 + 105,150,32,34,16,36,3,253,0,0,0,0,2,144,0,0,0,0,0,0,3,244,0,0,255,255,208,0,15,240,0,0,255,255,244,0,31,252,0,0,255,255,240,0,63,254,0,0,252,7,224,0,255,127,128,0,252,11,208,2,252,31,224,0,252,15,192,11,244,7,252,0,252,31,128,47,208,1,255,64,252,47,64,191,128,0,127,224,252,63,3,254,0,0,31,253,252,126,47,255,255,255,251,255,252,189,47,223,255,255,244,189,252,63,15,79,255,255,244,28,252,31,192,0,0,0,0,0,252,15,192,0,0,0,0,0,252,7,224,0,1,80,1,0,252,3,240,24,3,224,3,240,252,3,240,188,3,240,7,224,252,3,240,125,2,240,11,208,252,3,240,62,1,244,15,192,252,7,240,63,1,244,31,64,252,255,240,47,64,248,63,0,252,255,208,31,128,252,126,0,252,190,64,15,128,252,188,0,252,0,0,15,192,64,248,0,252,0,0,4,0,2,240,0,252,0,0,0,0,3,224,0,252,0,0,0,0,11,192,0,252,0,11,255,255,255,255,252,252,0,11,255,255,255,255,252,252,0,11,255,255,255,255,252,252,0,0,0,0,0,0,0,168,0,0,0,0,0,0,0, + // 0x96f6 零 + 246,150,34,33,41,36,1,253,0,85,85,85,85,85,85,80,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,0,2,244,0,0,0,0,0,0,0,3,248,0,0,0,0,31,255,255,255,255,255,255,255,64,31,255,255,255,255,255,255,255,64,31,128,0,2,244,0,0,47,64,31,134,170,146,244,170,169,47,64,31,143,255,226,244,255,254,47,64,31,143,255,226,244,255,254,47,64,0,0,0,2,244,0,0,0,0,0,47,255,240,80,255,255,128,0,0,47,255,247,248,255,255,128,0,0,0,0,47,255,64,0,0,0,0,0,0,191,255,224,0,0,0,0,0,11,254,15,253,0,0,0,0,0,127,244,2,255,208,0,0,0,11,255,128,0,47,254,64,0,1,255,255,255,255,255,255,249,0,127,255,151,255,255,254,47,255,208,63,248,1,85,85,84,1,255,192,30,64,0,0,0,0,0,6,64,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,21,85,127,85,85,127,64,0,0,0,0,63,0,0,63,64,0,0,0,0,63,0,0,63,64,0,0,0,0,63,0,42,191,0,0,0,0,0,63,0,63,255,0,0,0,0,0,63,0,31,248,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0, + // 0x9700 需 + 0,151,32,33,8,36,2,253,2,170,170,170,170,170,170,128,3,255,255,255,255,255,255,192,3,255,255,255,255,255,255,192,0,0,0,11,208,0,0,0,0,0,0,11,208,0,0,0,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,85,85,95,229,85,85,253,126,0,0,11,208,0,0,189,126,63,255,139,211,255,248,189,126,63,255,139,211,255,248,189,126,0,0,11,208,0,0,189,0,0,0,11,208,0,0,0,0,191,255,139,211,255,254,0,0,191,255,139,211,255,254,0,0,0,0,11,208,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,106,170,170,175,250,170,170,169,0,0,0,15,192,0,0,0,0,0,0,31,192,0,0,0,3,255,255,255,255,255,255,224,3,255,255,255,255,255,255,224,3,254,171,250,175,250,175,224,3,244,3,240,7,224,7,224,3,244,3,240,7,224,7,224,3,244,3,240,7,224,7,224,3,244,3,240,7,224,7,224,3,244,3,240,7,224,7,224,3,244,3,240,7,225,175,224,3,244,3,240,7,225,255,208,3,240,2,160,6,144,255,64, + // 0x9752 青 + 82,151,32,35,24,36,2,252,0,0,0,11,224,0,0,0,0,0,0,15,224,0,0,0,6,170,170,175,250,170,170,144,11,255,255,255,255,255,255,240,11,255,255,255,255,255,255,240,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,85,85,95,245,85,85,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,106,170,170,170,170,170,170,169,0,0,0,0,0,0,0,0,0,26,170,170,170,170,168,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,64,0,0,0,252,0,0,63,64,0,0,0,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,149,85,85,85,252,0,0,63,64,0,0,0,252,0,0,63,149,85,85,85,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,64,0,0,0,252,0,0,63,64,0,0,0,252,0,0,63,64,0,0,1,252,0,0,63,64,0,6,171,252,0,0,63,64,0,7,255,252,0,0,63,64,0,3,255,224,0,0,0,0,0,0,0,0,0, + // 0x975e 非 + 94,151,34,35,59,36,1,252,0,0,3,240,1,248,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,15,255,255,240,2,255,255,255,192,15,255,255,240,2,255,255,255,192,15,255,255,240,2,255,255,255,192,0,0,7,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,15,255,255,240,2,255,255,255,0,15,255,255,240,2,255,255,255,0,15,255,255,240,2,255,255,255,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,7,240,2,252,0,0,0,0,0,7,246,130,252,0,0,0,0,5,175,255,194,252,0,0,0,107,255,255,255,194,255,255,255,208,127,255,255,249,2,255,255,255,208,63,255,191,192,2,255,255,255,208,57,64,127,64,2,252,0,0,0,0,0,255,0,2,252,0,0,0,0,2,253,0,2,252,0,0,0,0,11,252,0,2,252,0,0,0,0,47,240,0,2,252,0,0,0,1,255,192,0,2,252,0,0,0,11,255,0,0,2,252,0,0,0,11,252,0,0,2,252,0,0,0,2,208,0,0,2,248,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9760 靠 + 96,151,33,35,59,36,2,252,0,14,128,11,224,0,0,0,0,0,63,128,11,224,0,0,0,0,0,127,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,3,252,0,15,224,0,0,0,0,11,244,0,11,224,0,0,0,0,23,245,85,95,229,85,85,84,0,191,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,254,0,0,0,0,11,224,0,0,0,0,0,0,0,5,80,0,0,0,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,253,0,0,0,0,63,128,0,0,253,0,0,0,0,63,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,0,15,208,11,240,0,0,0,0,0,15,208,7,240,0,0,0,127,255,255,208,7,255,255,253,0,127,255,255,208,7,255,255,253,0,0,0,15,208,7,240,0,0,0,0,0,15,208,7,240,0,0,0,31,255,255,208,7,255,255,248,0,31,255,255,208,7,255,255,248,0,0,0,15,208,7,240,0,0,0,0,0,15,192,7,240,0,0,0,175,255,255,192,7,255,255,255,64,255,255,255,128,7,255,255,255,64,165,64,191,0,7,245,85,85,0,0,7,253,0,7,240,0,0,0,1,191,244,0,7,240,0,0,0,3,255,128,0,7,240,0,0,0,1,248,0,0,7,240,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9762 面 + 98,151,32,33,8,36,2,252,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,47,208,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,64,0,0,0,31,255,255,255,255,255,255,244,31,255,255,255,255,255,255,244,31,255,255,255,255,255,255,244,31,192,47,64,3,240,3,244,31,192,47,64,3,240,3,244,31,192,47,64,3,240,3,244,31,192,47,234,171,240,3,244,31,192,47,255,255,240,3,244,31,192,47,255,255,240,3,244,31,192,47,64,3,240,3,244,31,192,47,64,3,240,3,244,31,192,47,64,3,240,3,244,31,192,47,234,171,240,3,244,31,192,47,255,255,240,3,244,31,192,47,255,255,240,3,244,31,192,47,64,3,240,3,244,31,192,47,64,3,240,3,244,31,192,47,64,3,240,3,244,31,192,47,64,3,240,3,244,31,255,255,255,255,255,255,244,31,255,255,255,255,255,255,244,31,255,255,255,255,255,255,244,31,192,0,0,0,0,3,244,31,192,0,0,0,0,3,244,0,0,0,0,0,0,0,0, + // 0x9875 页 + 117,152,32,33,8,36,2,252,127,255,255,255,255,255,255,254,127,255,255,255,255,255,255,254,127,255,255,255,255,255,255,254,0,0,0,47,192,0,0,0,0,0,0,63,128,0,0,0,0,0,0,127,64,0,0,0,0,0,0,191,0,0,0,0,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,253,0,0,0,0,63,64,0,253,0,0,0,0,63,64,0,253,0,11,240,0,63,64,0,253,0,11,240,0,63,64,0,253,0,11,240,0,63,64,0,253,0,11,240,0,63,64,0,253,0,11,240,0,63,64,0,253,0,11,240,0,63,64,0,253,0,11,240,0,63,64,0,253,0,11,240,0,63,64,0,253,0,15,224,0,63,64,0,253,0,15,224,0,63,64,0,253,0,47,192,0,63,64,0,253,0,127,199,144,63,64,0,0,1,255,79,253,0,0,0,0,11,254,11,255,208,0,0,0,127,248,0,191,252,0,0,27,255,208,0,11,255,128,6,255,254,0,0,0,255,244,255,255,224,0,0,0,31,253,63,253,0,0,0,0,2,252,30,64,0,0,0,0,0,112,0,0,0,0,0,0,0,0, + // 0x9879 项 + 121,152,34,32,32,36,1,253,0,0,0,63,255,255,255,255,208,0,0,0,63,255,255,255,255,208,127,255,255,85,85,255,255,255,208,127,255,255,0,0,255,0,0,0,127,255,255,0,0,254,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,15,255,255,255,252,0,0,63,64,15,255,255,255,252,0,0,63,64,15,255,255,255,252,0,0,63,64,15,192,0,0,252,0,0,63,64,15,192,0,0,252,0,0,63,64,15,192,63,64,252,0,0,63,64,15,192,63,64,252,0,0,63,64,15,192,63,64,252,0,0,63,64,15,192,63,64,252,0,0,63,64,15,192,63,64,252,0,0,63,64,15,192,63,64,252,0,0,63,64,15,192,63,64,252,0,0,63,66,79,192,63,64,252,0,0,63,255,143,192,63,0,252,0,0,127,255,207,192,127,0,252,0,111,255,254,15,192,127,0,252,0,191,255,144,15,192,254,0,252,0,191,244,0,0,1,253,0,0,0,125,0,0,0,3,252,56,0,0,0,0,0,0,15,244,255,64,0,0,0,0,0,127,224,127,224,0,0,0,0,2,255,128,15,253,0,0,0,0,127,253,0,2,255,64,0,0,7,255,224,0,0,127,208,0,0,2,254,64,0,0,15,128,0,0,0,224,0,0,0,2,0, + // 0x9884 预 + 132,152,34,33,41,36,1,252,63,255,255,245,255,255,255,255,208,63,255,255,249,255,255,255,255,208,63,255,255,241,255,255,255,255,208,0,0,31,208,0,3,244,0,0,0,0,63,128,0,7,240,0,0,2,64,255,0,0,11,224,0,0,7,247,252,0,63,255,255,255,0,11,255,240,0,63,255,255,255,0,0,255,208,0,63,255,255,255,0,0,47,248,0,63,0,0,63,0,0,7,254,0,63,0,0,63,0,0,1,254,0,63,2,160,63,0,191,255,255,254,63,3,240,63,0,191,255,255,254,63,3,240,63,0,191,255,255,253,63,3,240,63,0,0,15,192,252,63,3,240,63,0,0,15,192,248,63,3,240,63,0,0,15,193,244,63,3,240,63,0,0,15,195,240,63,3,240,63,0,0,15,195,224,63,7,240,63,0,0,15,192,64,63,7,224,63,0,0,15,192,0,63,11,224,63,0,0,15,192,0,63,15,208,63,0,0,15,192,0,42,31,192,42,0,0,15,192,0,0,63,129,0,0,0,15,192,0,0,191,95,128,0,0,15,192,0,2,254,47,240,0,0,15,192,0,15,248,11,252,0,0,31,192,0,191,224,1,255,64,15,255,192,15,255,64,0,127,208,15,255,192,7,248,0,0,31,192,11,249,0,2,128,0,0,7,0,0,0,0,0,0,0,0,0,0, + // 0x9891 频 + 145,152,34,35,59,36,1,252,0,0,189,0,0,0,0,0,0,0,0,189,0,0,0,0,0,0,0,0,189,0,31,255,255,255,192,3,208,189,0,31,255,255,255,192,3,224,191,255,31,255,255,255,192,3,224,191,255,64,0,252,0,0,3,224,191,255,64,1,252,0,0,3,224,189,0,0,2,244,0,0,3,224,189,0,0,3,240,0,0,3,224,189,0,11,255,255,255,0,3,224,189,0,11,255,255,255,0,191,255,255,255,203,234,170,191,0,191,255,255,255,203,192,0,47,0,191,255,255,255,203,192,248,47,0,0,1,248,0,11,192,248,47,0,0,1,248,0,11,192,248,47,0,1,145,248,0,11,192,248,47,0,3,241,248,15,139,192,248,47,0,3,225,248,31,139,192,248,47,0,11,209,248,47,75,192,244,47,0,15,193,248,63,11,193,244,47,0,31,129,248,126,11,193,244,47,0,63,65,248,253,11,193,244,47,0,127,1,249,252,11,194,240,47,0,44,1,255,244,11,195,240,47,0,0,0,175,240,11,195,240,47,0,0,0,47,192,0,7,208,0,0,0,0,191,64,0,15,223,64,0,0,3,254,0,0,47,175,224,0,0,31,248,0,0,191,11,252,0,1,255,208,0,7,253,1,255,0,47,255,0,1,191,244,0,63,192,47,244,0,1,255,128,0,15,208,14,64,0,0,184,0,0,3,64,0,0,0,0,0,0,0,0,0, + // 0x989d 额 + 157,152,34,35,59,36,1,252,0,1,160,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,2,252,0,31,255,255,255,192,42,171,255,170,159,255,255,255,208,63,255,255,255,223,255,255,255,208,63,255,255,255,192,1,248,0,0,63,0,0,15,192,2,244,0,0,63,5,0,15,192,3,240,0,0,63,15,192,15,192,7,224,0,0,47,47,128,15,143,255,255,255,0,0,127,255,252,15,255,255,255,0,0,255,255,254,15,234,170,191,0,3,250,171,252,15,192,0,63,0,31,224,3,248,15,193,244,63,0,127,137,15,240,15,193,244,63,0,46,63,255,192,15,193,244,63,0,4,63,255,0,15,193,244,63,0,0,15,255,192,15,193,244,63,0,0,191,255,248,15,194,244,63,0,11,255,135,255,143,194,244,63,0,127,253,0,191,207,194,240,63,0,63,208,0,31,15,195,240,63,0,47,170,170,168,15,195,240,63,0,1,255,255,252,15,195,240,63,0,1,255,255,252,15,199,224,63,0,1,244,0,252,15,139,208,42,0,1,244,0,252,0,15,194,0,0,1,244,0,252,0,47,143,192,0,1,244,0,252,0,127,15,244,0,1,244,0,252,1,254,3,253,0,1,255,255,252,11,252,0,255,128,1,255,255,252,191,240,0,47,224,1,254,170,253,255,128,0,11,208,1,164,0,252,184,0,0,2,128,0,0,0,0,0,0,0,0,0, + // 0x98ce 风 + 206,152,34,33,41,36,1,252,0,127,255,255,255,255,255,192,0,0,127,255,255,255,255,255,192,0,0,127,255,255,255,255,255,192,0,0,127,0,0,0,0,31,192,0,0,127,0,0,0,0,31,192,0,0,127,0,0,0,80,31,192,0,0,127,0,0,0,253,31,192,0,0,127,7,128,1,252,31,192,0,0,127,47,208,2,248,31,192,0,0,127,15,240,3,240,31,192,0,0,127,3,252,7,240,31,192,0,0,127,0,254,15,208,31,192,0,0,127,0,127,159,192,15,192,0,0,127,0,47,255,128,15,192,0,0,127,0,15,255,0,15,192,0,0,191,0,7,254,0,15,192,0,0,191,0,2,254,0,15,192,0,0,190,0,7,255,0,15,192,0,0,254,0,15,255,192,15,192,0,0,253,0,47,239,224,15,192,0,0,253,0,127,143,244,15,192,0,1,252,1,255,3,252,15,208,0,2,252,7,252,2,254,15,208,0,3,248,31,244,0,255,11,208,128,3,244,127,224,0,127,203,224,208,7,240,255,128,0,63,135,225,240,15,240,62,0,0,13,3,241,240,31,224,8,0,0,0,3,246,224,63,192,0,0,0,0,2,255,224,127,128,0,0,0,0,0,255,192,31,0,0,0,0,0,0,127,128,6,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0, + // 0x9971 饱 + 113,153,34,34,50,36,1,253,0,168,0,0,9,0,0,0,0,0,252,0,0,47,128,0,0,0,0,252,0,0,63,64,0,0,0,1,248,0,0,127,0,0,0,0,2,248,0,0,191,255,255,254,0,3,255,255,128,255,255,255,254,0,3,255,255,210,255,255,255,254,0,3,255,255,195,240,0,0,190,0,11,224,31,207,224,0,0,190,0,15,192,47,95,192,0,0,190,0,15,192,63,127,128,0,0,190,0,47,128,63,255,255,255,224,190,0,63,64,189,191,255,255,224,190,0,191,42,108,59,254,175,224,190,0,189,63,0,19,244,3,224,190,0,44,63,0,3,244,3,224,190,0,0,63,0,3,244,3,224,190,0,0,63,0,3,244,3,224,189,0,0,63,0,3,244,3,224,189,0,0,63,0,3,254,175,224,189,0,0,63,0,3,255,255,224,253,0,0,63,0,3,255,255,224,252,0,0,63,0,3,244,1,255,252,0,0,63,0,3,244,0,255,248,0,0,63,2,3,244,0,255,224,0,0,63,15,67,244,0,0,0,0,0,63,191,131,244,0,0,6,0,0,63,255,3,244,0,0,11,208,0,63,252,3,244,0,0,11,208,0,127,224,2,248,0,0,31,192,0,255,64,1,255,255,255,255,192,0,253,0,0,255,255,255,255,64,0,116,0,0,47,255,255,248,0,0,0,0,0,0,0,0,0,0, + // 0x9a6c 马 + 108,154,31,33,8,36,2,252,3,255,255,255,255,255,244,0,3,255,255,255,255,255,240,0,3,255,255,255,255,255,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240,0,0,5,64,0,0,7,240,0,0,15,208,0,0,11,240,0,0,15,192,0,0,11,224,0,0,15,192,0,0,15,224,0,0,31,192,0,0,15,208,0,0,31,192,0,0,15,208,0,0,47,192,0,0,15,192,0,0,47,128,0,0,15,192,0,0,47,128,0,0,31,192,0,0,63,255,255,255,255,255,252,0,63,255,255,255,255,255,252,0,63,255,255,255,255,255,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,244,255,255,255,255,255,254,3,244,255,255,255,255,255,254,3,240,255,255,255,255,255,254,7,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,208,0,0,0,0,0,0,63,192,0,0,0,0,11,255,255,192,0,0,0,0,3,255,255,0,0,0,0,0,3,255,248,0,0,0,0,0,0,0,0,0, + // 0x9a71 驱 + 113,154,34,32,32,36,1,253,47,255,255,66,255,255,255,255,192,47,255,255,66,255,255,255,255,192,47,255,255,66,255,255,255,255,192,0,0,47,66,248,0,0,0,0,0,0,47,2,244,0,0,0,0,7,208,63,2,244,0,0,184,0,11,208,63,2,244,112,0,253,0,11,208,63,2,245,252,1,252,0,11,192,63,2,244,254,2,248,0,11,192,63,2,244,63,67,244,0,15,192,62,2,244,31,199,240,0,15,192,126,2,244,15,255,224,0,15,192,126,2,244,3,255,192,0,15,192,125,2,244,1,255,128,0,15,128,189,2,244,0,255,0,0,31,255,255,242,244,0,191,64,0,31,255,255,242,244,1,255,192,0,26,170,171,226,244,3,255,224,0,0,0,7,226,244,7,247,244,0,0,0,7,226,244,15,226,252,0,0,0,7,226,244,63,192,253,0,0,27,215,210,244,191,64,191,0,27,255,219,210,245,254,0,63,128,255,255,75,210,247,252,0,47,0,191,144,15,194,244,180,0,8,0,16,0,15,194,244,16,0,0,0,0,0,15,194,244,0,0,0,0,0,0,31,130,255,255,255,255,224,0,0,63,130,255,255,255,255,224,0,191,255,2,255,255,255,255,224,0,127,253,0,0,0,0,0,0,0,42,160,0,0,0,0,0,0, + // 0x9ad8 高 + 216,154,32,35,24,36,2,252,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,191,255,255,255,255,255,255,253,191,255,255,255,255,255,255,253,191,255,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,255,255,255,255,224,0,0,11,255,255,255,255,224,0,0,11,229,85,85,95,224,0,0,11,224,0,0,11,224,0,0,11,224,0,0,11,224,0,0,11,229,85,85,95,224,0,0,11,255,255,255,255,224,0,0,11,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,255,244,15,255,255,255,255,255,255,244,15,255,255,255,255,255,255,244,15,192,0,0,0,0,3,244,15,192,21,85,85,84,3,244,15,192,63,255,255,252,3,244,15,192,63,255,255,252,3,244,15,192,63,0,0,252,3,244,15,192,63,0,0,252,3,244,15,192,63,0,0,252,3,244,15,192,63,85,85,252,3,244,15,192,63,255,255,252,3,244,15,192,63,255,255,252,7,244,15,192,63,0,0,15,255,240,15,192,42,0,0,11,255,240,15,192,0,0,0,7,255,128,0,0,0,0,0,0,0,0, + // 0x9ec4 黄 + 196,158,32,35,24,36,2,252,0,0,127,0,0,253,0,0,0,0,127,0,0,253,0,0,0,0,127,0,0,253,0,0,7,255,255,255,255,255,255,224,7,255,255,255,255,255,255,224,7,255,255,255,255,255,255,224,0,0,127,0,0,253,0,0,0,0,127,0,0,253,0,0,0,0,127,0,0,253,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,11,224,0,0,0,0,0,0,11,224,0,0,0,0,85,85,95,245,85,85,0,0,255,255,255,255,255,255,128,0,255,255,255,255,255,255,128,0,252,0,11,224,0,63,128,0,252,0,11,224,0,63,128,0,253,85,95,245,85,127,128,0,255,255,255,255,255,255,128,0,255,255,255,255,255,255,128,0,252,0,11,224,0,63,128,0,252,0,11,224,0,63,128,0,252,0,11,224,0,63,128,0,255,255,255,255,255,255,128,0,255,255,255,255,255,255,128,0,85,89,85,85,165,85,0,0,0,62,0,0,253,0,0,0,7,255,192,2,255,228,0,1,191,254,0,0,111,255,128,111,255,224,0,0,1,255,253,63,253,0,0,0,0,27,252,15,128,0,0,0,0,0,176,0,0,0,0,0,0,0,0, + // 0x9ede 點 + 222,158,34,34,50,36,1,253,0,0,0,0,0,3,240,0,0,15,255,255,255,64,3,240,0,0,15,255,255,255,64,3,240,0,0,15,149,245,111,64,3,240,0,0,15,64,240,31,64,3,240,0,0,15,180,241,255,64,3,240,0,0,15,120,242,239,64,3,240,0,0,15,124,243,223,64,3,244,0,0,15,108,243,95,64,3,255,255,224,15,93,247,31,64,3,255,255,224,15,68,246,31,64,3,255,255,224,15,64,240,31,64,3,240,0,0,15,255,255,255,64,3,240,0,0,15,255,255,255,64,3,240,0,0,5,86,249,85,0,3,240,0,0,0,2,244,0,0,3,240,0,0,10,171,250,170,0,3,240,0,0,31,255,255,255,79,255,255,255,0,31,255,255,255,79,255,255,255,0,0,2,244,0,15,255,255,255,0,0,2,244,0,15,192,0,63,0,0,2,249,90,143,192,0,63,0,63,255,255,255,207,192,0,63,0,63,255,255,255,207,192,0,63,0,63,234,149,84,15,192,0,63,0,0,0,4,60,15,192,0,63,0,6,31,46,62,15,192,0,63,0,11,207,31,31,79,192,0,63,0,15,143,79,11,207,192,0,63,0,15,79,75,71,223,255,255,255,0,47,11,139,131,143,255,255,255,0,63,11,134,64,15,255,255,255,0,189,5,0,0,15,192,0,63,0,40,0,0,0,15,192,0,42,0, + // 0x9f50 齐 + 80,159,33,35,59,36,2,252,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,191,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,255,0,191,255,255,255,255,255,255,255,0,0,7,244,0,0,31,224,0,0,0,2,252,0,0,127,192,0,0,0,0,255,0,0,255,0,0,0,0,0,63,208,7,253,0,0,0,0,0,15,252,31,244,0,0,0,0,0,2,255,255,208,0,0,0,0,0,0,191,255,0,0,0,0,0,0,1,191,255,144,0,0,0,0,0,111,255,255,254,64,0,0,0,107,255,253,47,255,254,144,0,191,255,255,144,1,255,255,255,64,255,255,228,0,0,7,255,255,0,127,251,164,0,0,10,235,253,0,36,3,248,0,0,15,208,4,0,0,3,248,0,0,15,208,0,0,0,3,248,0,0,15,208,0,0,0,3,248,0,0,15,208,0,0,0,3,244,0,0,15,208,0,0,0,3,244,0,0,15,208,0,0,0,7,244,0,0,15,208,0,0,0,11,240,0,0,15,208,0,0,0,15,240,0,0,15,208,0,0,0,47,224,0,0,15,208,0,0,0,191,192,0,0,15,208,0,0,2,255,64,0,0,15,208,0,0,31,254,0,0,0,15,208,0,0,15,248,0,0,0,15,208,0,0,2,208,0,0,0,15,208,0,0,0,0,0,0,0,0,0,0,0, + // 0xff1a : + 26,255,6,24,48,36,15,2,47,128,191,224,255,240,255,240,191,224,47,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,128,191,224,255,240,255,240,191,224,47,128, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Symbols_26.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Symbols_26.cpp new file mode 100644 index 000000000000..cd343edcdb70 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Symbols_26.cpp @@ -0,0 +1,38 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium_Symbols 36pt, capital 'A' height: 26px, width: 100% +extern const uint8_t NotoSans_Medium_Symbols_26[112] = { + 130,26,8,0,10,0,34,247, // unifont_t + // 0x08 - LCD_STR_THERMOMETER a.k.a 0x1f321 🌡 + 21,44,8,24,2,248,0,15,255,248,0,0,0,63,255,253,0,0,0,63,170,254,0,0,0,61,0,62,0,0,0,61,0,62,0,0,0,63,192,62,0,0,0,61,0,62,0,0,0,61,0,62,0,0,0,61,0,62,0,0,0,63,192,62,0,0,0,61,0,62,0,0,0,61,0,62,0,0,0,61,126,62,0,0,0,63,254,62,0,0,0,62,190,62,0,0,0,61,126,62,0,0,0,61,126,62,0,0,0,62,190,62,0,0,0,63,254,62,0,0,0,61,126,62,0,0,0,61,126,62,0,0,0,61,190,62,0,0,0,63,254,62,0,0,0,61,126,62,0,0,0,61,126,62,0,0,0,61,126,62,0,0,0,255,254,63,64,0,3,253,190,47,224,0,15,208,126,3,248,0,47,66,255,128,253,0,62,15,255,244,63,0,188,47,255,252,47,0,252,63,255,254,15,64,248,127,255,255,15,128,248,127,255,255,15,128,248,63,255,255,15,64,188,63,255,253,31,0,125,15,255,248,63,0,63,2,255,208,189,0,31,192,20,2,252,0,11,248,0,31,240,0,2,255,234,255,192,0,0,127,255,254,0,0,0,6,255,208,0,0, + // 0x09 - LCD_STR_DEGREE a.k.a 0x00b0 ° + 12,12,36,15,2,14,6,255,64,47,255,240,127,155,248,252,0,252,248,0,125,248,0,62,248,0,61,252,0,189,127,70,252,47,255,240,11,255,128,0,16,0, + // 0x0a - replacement for 0x2026 used in Greek language files … + 25,6,42,29,2,255,26,0,1,160,0,41,0,63,192,11,248,0,255,64,127,208,15,252,0,255,128,127,208,15,252,0,255,128,63,192,7,248,0,255,0,5,0,0,80,0,20,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Traditional_Chinese_26.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Traditional_Chinese_26.cpp new file mode 100644 index 000000000000..b2d1dd9e992d --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Traditional_Chinese_26.cpp @@ -0,0 +1,646 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Traditional Chinese 36pt, capital 'A' height: 26px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 +extern const uint8_t NotoSans_Medium_Traditional_Chinese_26[17084] = { + 162,26,191,34,26,255,34,247, // unifont_t + // 0x22bf ⊿ + 191,34,28,29,203,36,3,0,0,0,0,0,0,0,2,0,0,0,0,0,0,11,0,0,0,0,0,0,31,0,0,0,0,0,0,127,0,0,0,0,0,1,255,0,0,0,0,0,7,255,0,0,0,0,0,31,255,0,0,0,0,0,127,255,0,0,0,0,1,255,63,0,0,0,0,3,252,63,0,0,0,0,15,240,63,0,0,0,0,63,192,63,0,0,0,0,255,0,63,0,0,0,3,252,0,63,0,0,0,15,240,0,63,0,0,0,63,192,0,63,0,0,0,255,64,0,63,0,0,3,253,0,0,63,0,0,15,244,0,0,63,0,0,63,208,0,0,63,0,0,255,64,0,0,63,0,2,253,0,0,0,63,0,11,244,0,0,0,63,0,47,224,0,0,0,63,0,191,128,0,0,0,63,2,254,0,0,0,0,63,11,255,255,255,255,255,255,47,255,255,255,255,255,255,191,255,255,255,255,255,255, + // 0x4e00 一 + 0,78,34,4,36,36,1,12,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,42,170,170,170,170,170,170,170,144, + // 0x4e09 三 + 9,78,32,29,232,36,2,255,1,85,85,85,85,85,85,64,7,255,255,255,255,255,255,224,7,255,255,255,255,255,255,224,7,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,85,85,85,85,84,0,0,63,255,255,255,255,248,0,0,63,255,255,255,255,248,0,0,63,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,253,191,255,255,255,255,255,255,253,191,255,255,255,255,255,255,253,21,85,85,85,85,85,85,84, + // 0x4e0a 上 + 10,78,32,32,0,36,2,255,0,0,0,21,64,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,213,85,85,64,0,0,0,63,255,255,255,224,0,0,0,63,255,255,255,224,0,0,0,63,255,255,255,224,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,85,85,85,127,213,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x4e0b 下 + 11,78,32,32,0,36,2,253,85,85,85,85,85,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,253,0,0,0,0,0,0,47,255,208,0,0,0,0,0,47,255,252,0,0,0,0,0,47,223,255,128,0,0,0,0,47,194,255,244,0,0,0,0,47,192,127,255,0,0,0,0,47,192,11,255,208,0,0,0,47,192,0,255,240,0,0,0,47,192,0,47,192,0,0,0,47,192,0,7,64,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,31,192,0,0,0, + // 0x4e0d 不 + 13,78,33,32,32,36,2,253,21,85,85,85,85,85,85,84,0,127,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,253,0,0,0,0,2,255,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,127,240,0,0,0,0,0,0,0,255,240,0,0,0,0,0,0,3,255,242,224,0,0,0,0,0,15,255,251,252,0,0,0,0,0,63,255,247,255,64,0,0,0,0,255,207,240,255,224,0,0,0,7,255,79,240,47,252,0,0,0,31,253,15,240,7,255,64,0,0,191,240,15,240,1,255,208,0,7,255,192,15,240,0,63,248,0,47,254,0,15,240,0,15,254,0,255,248,0,15,240,0,2,255,64,191,208,0,15,240,0,0,253,0,62,0,0,15,240,0,0,52,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0, + // 0x4e26 並 + 38,78,32,33,8,36,2,254,0,1,128,0,0,3,144,0,0,15,208,0,0,7,252,0,0,11,240,0,0,11,244,0,0,3,248,0,0,15,224,0,0,2,253,0,0,47,192,0,0,0,254,0,0,127,64,0,0,0,189,0,0,255,0,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,21,85,91,245,95,229,85,84,0,0,11,240,15,208,0,0,0,0,11,240,15,208,0,0,0,0,11,240,15,208,9,64,7,240,11,240,15,208,15,240,3,240,11,240,15,208,15,208,2,248,11,240,15,208,31,192,1,252,11,240,15,208,63,192,0,253,11,240,15,208,63,64,0,190,11,240,15,208,127,0,0,127,11,240,15,208,191,0,0,63,11,240,15,208,253,0,0,63,75,240,15,209,252,0,0,47,139,240,15,210,248,0,0,47,203,240,15,211,244,0,0,25,11,240,15,209,160,0,0,0,11,240,15,208,0,0,0,0,11,240,15,208,0,0,0,0,11,240,15,208,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,85,85,85,85,85, + // 0x4e2d 中 + 45,78,30,34,16,36,3,253,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,21,85,85,127,149,85,85,64,191,255,255,255,255,255,255,208,191,255,255,255,255,255,255,208,191,255,255,255,255,255,255,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,191,85,85,127,149,85,95,208,191,255,255,255,255,255,255,208,191,255,255,255,255,255,255,208,191,255,255,255,255,255,255,208,191,0,0,63,128,0,15,208,191,0,0,63,128,0,15,208,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0, + // 0x4e3b 主 + 59,78,32,33,8,36,2,254,0,0,0,36,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,63,244,0,0,0,0,0,0,11,253,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,189,0,0,0,31,255,255,255,255,255,255,240,31,255,255,255,255,255,255,240,31,255,255,255,255,255,255,240,5,85,85,95,245,85,85,80,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,2,255,255,255,255,255,255,128,2,255,255,255,255,255,255,128,2,255,255,255,255,255,255,128,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,21,85,85,95,245,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x4e4b 之 + 75,78,34,34,50,36,1,253,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,7,255,255,255,255,255,255,244,0,7,255,255,255,255,255,255,253,0,7,255,255,255,255,255,255,252,0,1,85,85,85,85,85,95,244,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,2,255,0,0,0,0,1,0,0,11,252,0,0,0,0,11,224,0,47,240,0,0,0,0,15,224,0,191,192,0,0,0,0,31,208,2,255,0,0,0,0,0,63,192,15,252,0,0,0,0,0,127,240,127,240,0,0,0,0,0,255,249,255,192,0,0,0,0,1,255,255,254,0,0,0,0,0,3,252,255,244,0,0,0,0,0,11,244,63,248,0,0,0,0,0,15,240,15,255,229,0,0,0,0,63,208,2,255,255,255,255,255,208,191,192,0,47,255,255,255,255,192,47,64,0,1,175,255,255,255,128,6,0,0,0,0,1,85,85,0, + // 0x4ea4 交 + 164,78,32,35,24,36,2,252,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,21,85,85,95,229,85,85,84,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,0,0,0,0,0,4,0,0,0,0,121,0,0,47,0,0,0,1,255,64,0,255,208,0,0,7,253,0,0,63,248,0,0,31,248,0,0,11,255,0,0,191,224,0,0,1,255,192,3,255,128,0,0,0,127,240,31,254,5,0,0,100,15,252,191,244,191,0,0,255,3,255,63,192,63,64,1,254,0,252,14,0,47,192,3,252,0,32,0,0,15,224,7,248,0,0,0,0,11,244,15,240,0,0,0,0,3,252,63,208,0,0,0,0,1,255,191,128,0,0,0,0,0,191,255,0,0,0,0,0,0,63,252,0,0,0,0,0,0,127,253,0,0,0,0,0,2,255,255,128,0,0,0,0,47,255,255,248,0,0,0,2,255,248,47,255,128,0,0,191,255,192,7,255,254,0,111,255,253,0,0,191,255,254,255,255,208,0,0,11,255,255,127,248,0,0,0,0,111,253,62,64,0,0,0,0,1,184,0,0,0,0,0,0,0,0, + // 0x4eae 亮 + 174,78,32,35,24,36,2,252,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,254,0,0,0,0,0,0,0,0,0,5,85,85,85,85,84,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,64,0,0,1,252,0,0,63,64,0,0,1,252,0,0,63,64,0,0,1,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,21,85,85,85,85,84,0,0,0,0,0,0,0,0,0,106,170,170,170,170,170,170,169,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,125,0,0,0,0,0,0,189,125,0,47,192,11,224,0,189,125,0,63,128,15,224,0,189,125,0,63,128,15,224,0,189,0,0,63,64,15,224,0,0,0,0,127,0,15,224,0,0,0,0,255,0,15,224,0,0,0,1,254,0,15,224,0,52,0,7,252,0,15,224,0,63,0,47,244,0,15,240,0,63,6,255,224,0,15,240,0,191,255,255,64,0,11,255,255,254,191,248,0,0,7,255,255,252,62,64,0,0,1,191,255,224,0,0,0,0,0,0,0,0, + // 0x4ee4 令 + 228,78,34,34,50,36,1,253,0,0,0,7,248,0,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,47,255,64,0,0,0,0,0,0,191,255,192,0,0,0,0,0,1,255,31,240,0,0,0,0,0,7,253,11,252,0,0,0,0,0,31,244,2,255,64,0,0,0,0,127,224,0,191,208,0,0,0,2,255,64,0,47,248,0,0,0,11,253,0,0,11,255,0,0,0,63,244,0,0,1,255,208,0,1,255,255,255,255,255,255,248,0,15,255,31,255,255,255,143,255,128,127,248,31,255,255,255,130,255,224,63,208,0,0,0,0,0,127,192,14,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,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,0,0,63,0,0,15,208,0,0,0,0,63,0,0,15,208,0,0,0,0,63,0,0,15,208,0,0,0,0,63,0,0,15,208,0,0,0,0,63,0,0,15,208,0,0,0,0,63,0,0,15,208,0,0,0,0,63,0,0,31,208,0,0,0,0,63,0,63,255,192,0,0,0,0,63,0,63,255,192,0,0,0,0,63,0,47,254,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0, + // 0x4ef6 件 + 246,78,34,34,50,36,1,253,0,0,144,0,0,21,0,0,0,0,0,253,0,0,191,0,0,0,0,2,252,10,64,191,0,0,0,0,3,248,15,208,191,0,0,0,0,7,240,15,192,191,0,0,0,0,15,240,31,192,191,0,0,0,0,31,208,47,128,191,0,0,0,0,63,192,63,149,191,85,84,0,0,127,64,63,255,255,255,254,0,0,255,0,191,255,255,255,254,0,2,255,0,255,255,255,255,254,0,7,255,1,252,0,191,0,0,0,15,255,3,248,0,191,0,0,0,63,255,7,244,0,191,0,0,0,191,255,11,240,0,191,0,0,0,127,127,0,128,0,191,0,0,0,44,63,0,0,0,191,0,0,0,4,63,0,0,0,191,0,0,0,0,63,11,255,255,255,255,255,208,0,63,11,255,255,255,255,255,208,0,63,11,255,255,255,255,255,208,0,63,1,85,85,191,85,85,64,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,191,0,0,0,0,63,0,0,0,190,0,0,0, + // 0x4efd 份 + 253,78,34,35,59,36,1,252,0,0,144,0,0,0,0,0,0,0,1,252,0,63,255,252,0,0,0,3,252,0,63,255,253,0,0,0,3,244,0,63,255,254,0,0,0,11,240,6,64,0,127,0,0,0,15,208,15,224,0,63,64,0,0,47,192,15,208,0,63,128,0,0,63,128,47,192,0,47,192,0,0,255,0,63,64,0,15,224,0,1,255,0,127,0,0,11,240,0,3,255,0,254,0,0,7,252,0,11,255,2,252,0,0,2,253,0,47,255,3,244,0,0,0,255,64,127,255,15,240,0,0,0,191,208,255,255,63,192,0,0,0,63,224,254,127,63,191,255,255,255,239,192,124,127,14,63,255,255,255,226,0,32,127,0,63,255,255,255,208,0,0,127,0,0,47,128,15,208,0,0,127,0,0,63,64,15,208,0,0,127,0,0,63,0,15,208,0,0,127,0,0,63,0,15,208,0,0,127,0,0,127,0,15,208,0,0,127,0,0,190,0,15,208,0,0,127,0,0,253,0,15,192,0,0,127,0,1,252,0,15,192,0,0,127,0,3,248,0,15,192,0,0,127,0,7,244,0,31,192,0,0,127,0,15,224,0,31,192,0,0,127,0,63,192,0,47,192,0,0,127,0,255,64,0,127,128,0,0,127,7,254,0,63,255,64,0,0,127,7,244,0,63,255,0,0,0,127,1,208,0,47,248,0,0,0,0,0,0,0,0,0,0,0, + // 0x4f11 休 + 17,79,34,34,50,36,1,253,0,0,36,0,0,84,0,0,0,0,0,127,64,0,252,0,0,0,0,0,255,0,0,252,0,0,0,0,0,254,0,0,252,0,0,0,0,2,252,0,0,252,0,0,0,0,7,248,0,0,252,0,0,0,0,15,240,0,0,252,0,0,0,0,31,224,0,0,252,0,0,0,0,63,192,0,0,252,0,0,0,0,255,139,255,255,255,255,255,192,2,255,139,255,255,255,255,255,192,7,255,139,255,255,255,255,255,192,31,255,129,85,95,255,213,85,64,127,255,128,0,15,255,224,0,0,255,239,128,0,47,255,240,0,0,191,47,128,0,63,255,244,0,0,61,47,128,0,127,254,252,0,0,20,47,128,0,254,253,253,0,0,0,47,128,2,252,252,127,0,0,0,47,128,3,248,252,63,128,0,0,47,128,11,240,252,47,192,0,0,47,128,31,208,252,15,240,0,0,47,128,63,192,252,7,248,0,0,47,128,255,64,252,3,253,0,0,47,130,254,0,252,0,255,0,0,47,139,252,0,252,0,191,192,0,47,255,240,0,252,0,63,240,0,47,159,208,0,252,0,15,192,0,47,139,64,0,252,0,3,64,0,47,129,0,0,252,0,0,0,0,47,128,0,0,252,0,0,0,0,47,128,0,0,252,0,0,0,0,47,128,0,0,252,0,0,0,0,31,128,0,0,252,0,0,0, + // 0x4f4d 位 + 77,79,34,34,50,36,1,253,0,0,100,0,0,168,0,0,0,0,0,254,0,0,253,0,0,0,0,1,253,0,0,253,0,0,0,0,3,252,0,0,253,0,0,0,0,7,244,0,0,253,0,0,0,0,15,240,0,0,253,0,0,0,0,31,208,0,0,253,0,0,0,0,63,195,255,255,255,255,255,192,0,191,67,255,255,255,255,255,192,1,255,67,255,255,255,255,255,192,3,255,64,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,47,255,64,5,128,0,11,144,0,191,255,64,15,192,0,15,240,0,255,127,64,15,208,0,15,224,0,125,63,64,11,224,0,15,208,0,56,63,64,7,240,0,31,192,0,0,63,64,3,240,0,47,192,0,0,63,64,3,244,0,63,128,0,0,63,64,3,248,0,63,64,0,0,63,64,2,248,0,127,0,0,0,63,64,1,252,0,127,0,0,0,63,64,1,252,0,254,0,0,0,63,64,0,252,0,253,0,0,0,63,64,0,253,1,252,0,0,0,63,64,0,253,2,252,0,0,0,63,64,0,254,3,244,0,0,0,63,64,0,80,3,240,0,0,0,63,64,0,0,7,240,0,0,0,63,75,255,255,255,255,255,224,0,63,75,255,255,255,255,255,224,0,63,75,255,255,255,255,255,224,0,63,64,0,0,0,0,0,0,0,42,0,0,0,0,0,0,0, + // 0x4f4e 低 + 78,79,34,34,50,36,1,253,0,0,144,0,0,0,0,0,0,0,1,252,0,0,0,0,96,0,0,2,252,0,0,0,111,248,0,0,3,244,0,5,191,255,254,0,0,11,240,251,255,255,255,228,0,0,15,224,255,255,255,228,0,0,0,47,192,255,254,95,192,0,0,0,63,128,254,0,15,192,0,0,0,191,0,253,0,15,208,0,0,1,255,0,253,0,15,208,0,0,3,255,0,253,0,15,208,0,0,11,255,0,253,0,15,208,0,0,31,255,0,253,0,15,208,0,0,127,255,0,255,255,255,255,255,208,255,255,0,255,255,255,255,255,208,254,127,0,255,255,255,255,255,208,124,127,0,253,0,7,240,0,0,32,127,0,253,0,7,240,0,0,0,127,0,253,0,3,240,0,0,0,127,0,253,0,3,244,0,0,0,127,0,253,0,3,248,0,0,0,127,0,253,0,2,252,0,0,0,127,0,253,0,1,252,0,0,0,127,0,253,1,172,253,0,0,0,127,0,255,255,252,254,0,0,0,127,15,255,255,252,191,2,208,0,127,15,255,254,144,63,66,240,0,127,11,249,0,0,63,194,240,0,127,0,0,0,0,31,227,240,0,127,0,0,0,0,15,255,224,0,127,3,255,255,255,227,255,208,0,127,3,255,255,255,225,255,128,0,127,3,255,255,255,224,21,0,0,106,0,0,0,0,0,0,0, + // 0x4f5c 作 + 92,79,34,34,50,36,1,253,0,0,100,0,4,0,0,0,0,0,0,191,0,47,128,0,0,0,0,0,253,0,63,64,0,0,0,0,2,252,0,127,0,0,0,0,0,3,248,0,254,0,0,0,0,0,11,240,1,253,0,0,0,0,0,15,224,3,255,255,255,255,224,0,47,192,7,255,255,255,255,224,0,127,128,15,255,255,255,255,224,0,255,64,31,210,252,0,0,0,2,255,64,63,193,252,0,0,0,7,255,64,191,1,252,0,0,0,15,255,65,254,1,252,0,0,0,63,255,71,252,1,252,0,0,0,191,255,75,244,1,255,255,255,128,63,63,66,208,1,255,255,255,128,29,63,64,64,1,255,255,255,128,4,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,255,255,255,192,0,63,64,0,1,255,255,255,192,0,63,64,0,1,255,255,255,192,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0, + // 0x4f9b 供 + 155,79,34,34,50,36,1,253,0,0,144,1,164,0,42,0,0,0,0,253,1,252,0,63,0,0,0,2,252,1,252,0,63,0,0,0,3,248,1,252,0,63,0,0,0,7,240,1,252,0,63,0,0,0,15,224,1,252,0,63,0,0,0,31,192,1,252,0,63,0,0,0,63,128,2,252,0,63,64,0,0,191,3,255,255,255,255,255,192,1,255,3,255,255,255,255,255,192,3,255,3,255,255,255,255,255,192,11,255,0,1,252,0,63,0,0,47,255,0,1,252,0,63,0,0,127,255,0,1,252,0,63,0,0,255,191,0,1,252,0,63,0,0,126,127,0,1,252,0,63,0,0,56,127,0,1,252,0,63,0,0,16,127,0,1,252,0,63,0,0,0,127,0,1,252,0,63,0,0,0,127,11,255,255,255,255,255,224,0,127,11,255,255,255,255,255,224,0,127,11,255,255,255,255,255,224,0,127,1,85,85,85,85,85,64,0,127,0,0,0,0,0,0,0,0,127,0,0,160,0,9,0,0,0,127,0,2,253,0,127,0,0,0,127,0,3,248,0,63,192,0,0,127,0,15,240,0,31,240,0,0,127,0,63,208,0,7,248,0,0,127,0,191,128,0,2,253,0,0,127,2,255,0,0,0,255,0,0,127,15,252,0,0,0,63,192,0,127,3,240,0,0,0,31,128,0,127,0,128,0,0,0,8,0, + // 0x4fdd 保 + 221,79,34,35,59,36,1,252,0,0,80,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,253,63,255,255,255,253,0,0,2,252,63,255,255,255,253,0,0,3,244,63,255,255,255,253,0,0,11,240,63,0,0,0,253,0,0,15,208,63,0,0,0,253,0,0,47,192,63,0,0,0,253,0,0,127,128,63,0,0,0,253,0,0,255,64,63,0,0,0,253,0,2,255,64,63,0,0,0,253,0,7,255,64,63,255,255,255,253,0,31,255,64,63,255,255,255,253,0,63,255,64,63,255,255,255,253,0,255,191,64,0,0,254,0,0,0,127,63,64,0,0,254,0,0,0,60,63,64,0,0,254,0,0,0,16,63,64,0,0,254,0,0,0,0,63,75,255,255,255,255,255,208,0,63,75,255,255,255,255,255,208,0,63,75,255,255,255,255,255,208,0,63,64,0,15,255,224,0,0,0,63,64,0,47,255,244,0,0,0,63,64,0,127,255,252,0,0,0,63,64,1,254,254,191,0,0,0,63,64,7,252,254,63,192,0,0,63,64,31,240,254,15,240,0,0,63,64,127,192,254,7,252,0,0,63,66,255,64,254,2,255,64,0,63,95,253,0,254,0,191,224,0,63,79,240,0,254,0,47,224,0,63,71,128,0,254,0,7,128,0,63,64,0,0,254,0,0,0,0,63,64,0,0,254,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x4fe1 信 + 225,79,34,34,50,36,1,253,0,0,184,0,0,0,0,0,0,0,0,254,10,170,170,170,160,0,0,1,252,15,255,255,255,244,0,0,3,248,15,255,255,255,244,0,0,7,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,63,199,255,255,255,255,255,224,0,191,71,255,255,255,255,255,224,1,255,71,255,255,255,255,255,208,3,255,64,0,0,0,0,0,0,11,255,64,0,0,0,0,0,0,47,255,64,47,255,255,255,252,0,191,255,64,47,255,255,255,252,0,255,127,64,26,170,170,170,168,0,125,63,64,0,0,0,0,0,0,56,63,64,0,0,0,0,0,0,0,63,64,47,255,255,255,252,0,0,63,64,47,255,255,255,252,0,0,63,64,26,170,170,170,168,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,42,170,170,170,168,0,0,63,64,63,255,255,255,253,0,0,63,64,63,255,255,255,253,0,0,63,64,63,0,0,0,253,0,0,63,64,63,0,0,0,253,0,0,63,64,63,0,0,0,253,0,0,63,64,63,0,0,0,253,0,0,63,64,63,170,170,170,253,0,0,63,64,63,255,255,255,253,0,0,63,64,63,255,255,255,253,0,0,63,64,63,0,0,0,253,0,0,42,0,63,0,0,0,168,0, + // 0x500b 個 + 11,80,33,35,59,36,1,252,0,2,64,0,0,0,0,0,0,0,3,240,0,0,0,0,0,0,0,11,242,255,255,255,255,255,64,0,15,210,255,255,255,255,255,64,0,31,194,255,255,255,255,255,64,0,63,130,244,0,0,0,63,64,0,127,2,244,0,188,0,63,64,0,191,2,244,0,188,0,63,64,1,254,2,244,0,188,0,63,64,3,254,2,244,0,188,0,63,64,7,254,2,245,255,255,255,63,64,15,254,2,245,255,255,255,63,64,63,254,2,244,85,254,85,63,64,191,254,2,244,0,188,0,63,64,255,254,2,244,0,188,0,63,64,253,190,2,244,0,188,0,63,64,124,190,2,244,21,189,84,63,64,48,190,2,244,63,255,252,63,64,0,190,2,244,63,255,252,63,64,0,190,2,244,61,0,188,63,64,0,190,2,244,61,0,188,63,64,0,190,2,244,61,0,188,63,64,0,190,2,244,61,0,188,63,64,0,190,2,244,62,85,252,63,64,0,190,2,244,63,255,252,63,64,0,190,2,244,63,255,252,63,64,0,190,2,244,0,0,0,63,64,0,190,2,244,0,0,0,63,64,0,190,2,244,0,0,0,63,64,0,190,2,255,255,255,255,255,64,0,190,2,255,255,255,255,255,64,0,190,2,255,255,255,255,255,64,0,190,2,244,0,0,0,63,64,0,190,2,244,0,0,0,42,64,0,0,0,0,0,0,0,0,0, + // 0x503c 值 + 60,80,34,34,50,36,1,253,0,0,144,0,0,170,0,0,0,0,1,252,0,0,254,0,0,0,0,2,252,0,0,253,0,0,0,0,3,244,0,0,253,0,0,0,0,7,243,255,255,255,255,255,64,0,15,227,255,255,255,255,255,64,0,47,195,255,255,255,255,255,64,0,63,128,0,2,244,0,0,0,0,191,0,0,3,240,0,0,0,1,254,0,42,171,250,170,160,0,3,254,0,63,255,255,255,244,0,11,254,0,63,255,255,255,244,0,31,254,0,62,0,0,2,244,0,63,254,0,62,0,0,2,244,0,191,254,0,62,0,0,2,244,0,127,126,0,63,255,255,255,244,0,44,126,0,63,255,255,255,244,0,20,126,0,63,85,85,87,244,0,0,126,0,62,0,0,2,244,0,0,126,0,62,0,0,2,244,0,0,126,0,63,255,255,255,244,0,0,126,0,63,255,255,255,244,0,0,126,0,63,85,85,87,244,0,0,126,0,62,0,0,2,244,0,0,126,0,62,0,0,2,244,0,0,126,0,63,255,255,255,244,0,0,126,0,63,255,255,255,244,0,0,126,0,63,85,85,87,244,0,0,126,0,62,0,0,2,244,0,0,126,0,62,0,0,2,244,0,0,126,31,255,255,255,255,255,208,0,126,47,255,255,255,255,255,208,0,126,47,255,255,255,255,255,208,0,126,0,0,0,0,0,0,0, + // 0x504f 偏 + 79,80,34,34,50,36,1,253,0,2,64,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,11,231,255,255,255,255,255,208,0,15,215,255,255,255,255,255,208,0,31,199,255,255,255,255,255,208,0,63,128,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,191,0,255,255,255,255,255,0,0,253,0,255,255,255,255,255,0,3,253,0,254,170,170,170,191,0,7,253,0,252,0,0,0,127,0,15,253,0,252,0,0,0,127,0,47,253,0,252,0,0,0,127,0,127,253,0,255,255,255,255,255,0,255,253,0,255,255,255,255,255,0,254,189,0,254,170,170,170,170,0,124,189,0,252,0,0,0,0,0,48,189,0,252,0,0,0,0,0,0,189,1,255,255,255,255,255,128,0,189,1,255,255,255,255,255,128,0,189,2,255,235,250,254,175,128,0,189,2,255,194,240,124,31,128,0,189,3,255,194,240,124,31,128,0,189,3,255,194,240,124,31,128,0,189,7,255,235,250,254,175,128,0,189,11,239,255,255,255,255,128,0,189,15,223,255,255,255,255,128,0,189,31,207,194,240,124,31,128,0,189,63,143,194,240,124,31,128,0,189,127,15,194,240,124,31,128,0,189,254,15,194,240,124,31,128,0,189,60,15,194,240,125,255,128,0,189,4,15,194,240,124,255,64,0,189,0,15,129,160,104,253,0, + // 0x505c 停 + 92,80,34,34,50,36,1,253,0,0,144,0,0,253,0,0,0,0,1,252,0,0,253,0,0,0,0,3,252,0,0,253,0,0,0,0,3,251,255,255,255,255,255,208,0,11,247,255,255,255,255,255,208,0,15,215,255,255,255,255,255,208,0,63,192,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,255,0,63,255,255,255,248,0,2,255,0,63,255,255,255,248,0,7,255,0,63,85,85,86,248,0,15,255,0,63,64,0,2,248,0,63,255,0,63,64,0,2,248,0,255,255,0,63,255,255,255,248,0,255,127,0,63,255,255,255,248,0,188,127,0,21,85,85,85,80,0,52,127,0,0,0,0,0,0,0,16,127,10,170,170,170,170,170,144,0,127,15,255,255,255,255,255,224,0,127,15,255,255,255,255,255,224,0,127,15,192,0,0,0,7,224,0,127,15,192,0,0,0,7,224,0,127,15,198,170,170,170,151,224,0,127,15,203,255,255,255,215,224,0,127,0,11,255,255,255,208,0,0,127,0,0,0,253,0,0,0,0,127,0,0,0,253,0,0,0,0,127,0,0,0,253,0,0,0,0,127,0,0,0,253,0,0,0,0,127,0,0,0,253,0,0,0,0,127,0,0,0,253,0,0,0,0,127,0,3,255,253,0,0,0,0,127,0,1,255,252,0,0,0,0,126,0,0,255,224,0,0,0, + // 0x5075 偵 + 117,80,33,35,59,36,1,252,0,0,100,0,0,252,0,0,0,0,0,254,0,0,252,0,0,0,0,1,253,0,0,252,0,0,0,0,3,252,0,0,255,255,255,192,0,7,244,0,0,255,255,255,192,0,15,240,0,0,255,255,255,128,0,31,208,0,0,252,0,0,0,0,63,192,0,0,252,0,0,0,0,191,64,106,170,254,170,168,0,1,255,64,127,255,255,255,252,0,3,255,64,127,255,255,255,252,0,11,255,64,127,0,0,0,252,0,47,255,64,127,0,0,0,252,0,127,255,64,127,0,0,0,252,0,255,127,64,127,255,255,255,252,0,190,63,64,127,255,255,255,252,0,60,63,64,127,85,85,86,252,0,16,63,64,127,0,0,0,252,0,0,63,64,127,0,0,0,252,0,0,63,64,127,255,255,255,252,0,0,63,64,127,255,255,255,252,0,0,63,64,127,85,85,86,252,0,0,63,64,127,0,0,0,252,0,0,63,64,127,0,0,0,252,0,0,63,64,127,255,255,255,252,0,0,63,64,127,255,255,255,252,0,0,63,64,42,170,170,170,168,0,0,63,64,0,96,0,9,0,0,0,63,64,2,255,0,191,128,0,0,63,64,15,253,0,127,244,0,0,63,64,191,240,0,15,254,0,0,63,75,255,128,0,2,255,192,0,63,71,253,0,0,0,127,192,0,47,65,224,0,0,0,13,0,0,0,0,0,0,0,0,0,0, + // 0x5099 備 + 153,80,34,35,59,36,1,252,0,2,128,0,248,0,63,0,0,0,7,240,0,252,0,63,0,0,0,11,224,0,252,0,63,0,0,0,15,219,255,255,255,255,255,208,0,31,203,255,255,255,255,255,208,0,63,75,255,255,255,255,255,208,0,127,0,0,252,0,63,0,0,0,254,0,0,252,0,63,0,0,1,253,0,0,248,0,63,0,0,3,253,0,0,0,0,0,0,0,7,253,3,255,255,255,255,255,224,15,253,7,255,255,255,255,255,224,47,253,7,255,255,255,255,255,224,127,253,7,240,0,0,0,0,0,255,253,7,240,0,0,0,0,0,253,189,7,240,170,170,170,170,64,120,189,7,241,255,255,255,255,128,48,189,7,241,255,255,255,255,128,0,189,7,241,244,7,208,15,128,0,189,7,225,244,7,208,15,128,0,189,7,225,248,7,208,31,128,0,189,7,225,255,255,255,255,128,0,189,7,225,255,255,255,255,128,0,189,11,209,244,7,208,15,128,0,189,11,209,244,7,208,15,128,0,189,15,193,248,7,208,31,128,0,189,15,193,255,255,255,255,128,0,189,31,193,255,255,255,255,128,0,189,47,129,244,7,208,15,128,0,189,63,65,244,7,208,15,128,0,189,127,1,244,7,208,15,128,0,189,254,1,244,7,210,175,128,0,189,124,1,244,7,211,255,64,0,189,24,1,244,7,211,253,0,0,0,0,0,0,0,0,0,0, + // 0x50b3 傳 + 179,80,34,34,50,36,1,253,0,0,224,0,0,189,0,0,0,0,1,252,0,0,253,0,0,0,0,3,254,170,170,254,170,170,128,0,3,255,255,255,255,255,255,192,0,11,247,255,255,255,255,255,192,0,15,208,0,0,253,0,0,0,0,63,192,0,0,253,0,0,0,0,127,64,255,255,255,255,255,0,0,255,0,255,255,255,255,255,0,2,255,0,252,0,253,0,127,0,3,255,0,252,0,253,0,127,0,15,255,0,255,255,255,255,255,0,47,255,0,255,255,255,255,255,0,191,255,0,252,0,253,0,127,0,255,191,0,252,0,253,0,127,0,189,127,0,255,255,255,255,255,0,56,127,0,255,255,255,255,255,0,16,127,0,0,0,253,7,244,0,0,127,0,0,0,253,2,253,0,0,127,11,255,255,255,255,255,64,0,127,7,255,255,255,255,255,208,0,127,2,170,85,85,47,135,192,0,127,0,0,0,0,47,129,0,0,127,10,170,170,170,191,234,144,0,127,31,255,255,255,255,255,224,0,127,31,255,255,255,255,255,224,0,127,0,11,128,0,47,128,0,0,127,0,31,224,0,47,128,0,0,127,0,11,248,0,47,128,0,0,127,0,2,253,0,47,128,0,0,127,0,0,191,0,47,128,0,0,127,0,0,56,127,255,128,0,0,127,0,0,0,63,255,64,0,0,126,0,0,0,47,249,0,0, + // 0x50be 傾 + 190,80,34,35,59,36,1,252,0,5,0,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,192,0,191,255,255,255,208,0,47,128,0,191,255,255,255,208,0,63,95,128,191,255,255,255,208,0,127,31,128,0,3,248,0,0,0,190,31,128,0,3,240,0,0,0,253,31,128,10,171,250,170,0,2,252,31,128,15,255,255,255,64,3,252,31,130,79,255,255,255,64,11,252,31,139,239,192,0,47,64,15,252,31,175,223,192,0,47,64,63,252,31,255,79,192,0,47,64,127,252,31,253,15,255,255,255,64,255,252,31,240,15,255,255,255,64,252,252,31,192,15,213,85,127,64,116,252,31,128,15,192,0,47,64,48,252,31,128,15,192,0,47,64,0,252,31,128,15,213,85,127,64,0,252,31,128,15,255,255,255,64,0,252,31,129,79,255,255,255,64,0,252,31,130,255,192,0,47,64,0,252,31,130,255,192,0,47,64,0,252,31,130,255,192,0,47,64,0,252,31,131,255,255,255,255,64,0,252,31,255,239,255,255,255,64,0,252,15,255,218,170,170,170,0,0,252,7,255,64,96,0,128,0,0,252,0,0,2,253,7,240,0,0,252,0,0,15,252,7,253,0,0,252,0,0,191,240,0,255,64,0,252,0,7,255,128,0,63,224,0,252,0,7,252,0,0,15,208,0,252,0,1,208,0,0,3,64,0,0,0,0,0,0,0,0,0, + // 0x5132 儲 + 50,81,34,34,50,36,1,253,0,10,64,0,0,7,224,0,0,0,15,218,170,160,7,224,15,128,0,15,207,255,240,7,224,15,192,0,47,143,255,240,7,224,47,128,0,63,0,0,0,175,250,127,0,0,127,0,0,0,255,255,191,0,0,253,42,170,169,255,255,253,0,1,252,63,255,253,7,224,252,0,3,252,63,255,253,7,226,244,0,7,252,0,0,0,7,227,240,0,15,252,0,0,0,7,239,208,0,47,252,10,170,163,255,255,255,224,63,252,15,255,247,255,255,255,224,255,252,15,255,246,170,255,186,144,253,252,0,0,0,2,252,176,0,120,252,0,0,0,11,241,252,0,48,252,10,170,160,31,208,63,0,0,252,15,255,244,191,128,28,0,0,252,15,255,246,255,255,255,64,0,252,0,0,15,255,255,255,64,0,252,0,0,7,255,255,255,64,0,252,10,170,170,143,192,47,64,0,252,31,255,252,15,192,47,64,0,252,31,255,252,15,192,47,64,0,252,31,64,252,15,255,255,64,0,252,31,64,252,15,255,255,64,0,252,31,64,252,15,213,127,64,0,252,31,64,252,15,192,47,64,0,252,31,64,252,15,192,47,64,0,252,31,255,252,15,192,47,64,0,252,31,255,252,15,255,255,64,0,252,31,234,168,15,255,255,64,0,252,31,64,0,15,234,191,64,0,252,10,0,0,15,192,47,0, + // 0x5145 充 + 69,81,33,35,59,36,2,252,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,191,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,254,0,0,0,15,240,0,20,0,0,0,0,0,31,208,0,124,0,0,0,0,0,63,192,1,255,64,0,0,0,0,63,64,0,127,208,0,0,0,0,191,0,0,31,244,0,0,0,0,253,0,0,7,253,0,0,0,2,254,170,255,255,255,64,0,31,255,255,255,255,255,255,208,0,31,255,255,255,255,255,255,240,0,31,255,255,234,149,80,7,252,0,9,80,0,0,0,0,2,248,0,0,0,31,192,3,240,0,208,0,0,0,47,192,3,240,0,0,0,0,0,63,192,3,240,0,0,0,0,0,63,128,3,240,0,0,0,0,0,63,128,3,240,0,0,0,0,0,127,64,3,240,0,0,0,0,0,191,0,3,240,0,16,0,0,0,255,0,3,240,0,46,0,0,2,253,0,3,240,0,47,64,0,7,252,0,3,240,0,47,64,0,31,244,0,3,240,0,47,64,0,191,224,0,3,240,0,63,0,27,255,128,0,3,248,0,127,0,255,253,0,0,3,255,255,255,0,191,224,0,0,1,255,255,253,0,62,0,0,0,0,127,255,244,0,0,0,0,0,0,0,0,0,0, + // 0x5148 先 + 72,81,32,35,24,36,2,252,0,0,0,11,224,0,0,0,0,11,144,11,224,0,0,0,0,15,224,11,224,0,0,0,0,15,208,11,224,0,0,0,0,31,192,11,224,0,0,0,0,63,192,11,240,0,0,0,0,63,255,255,255,255,255,192,0,191,255,255,255,255,255,192,0,255,255,255,255,255,255,192,1,252,0,11,224,0,0,0,3,248,0,11,224,0,0,0,11,240,0,11,224,0,0,0,15,224,0,11,224,0,0,0,3,192,0,11,224,0,0,0,0,0,0,11,224,0,0,0,0,0,0,11,240,0,0,0,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,0,0,63,128,3,240,0,0,0,0,63,64,3,240,0,0,0,0,63,64,3,240,0,0,0,0,127,0,3,240,0,0,0,0,191,0,3,240,0,0,0,0,254,0,3,240,0,0,0,2,252,0,3,240,0,52,0,7,252,0,3,240,0,63,0,15,240,0,3,240,0,63,0,127,224,0,3,240,0,63,2,255,192,0,3,244,0,191,111,254,0,0,3,255,255,254,255,248,0,0,2,255,255,252,63,192,0,0,0,191,255,244,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5149 光 + 73,81,34,35,59,36,1,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,1,0,0,0,109,0,3,248,0,7,224,0,0,255,0,3,248,0,15,240,0,0,127,64,3,248,0,15,224,0,0,63,192,3,248,0,47,192,0,0,31,208,3,248,0,63,128,0,0,15,240,3,248,0,127,0,0,0,7,244,3,248,0,254,0,0,0,3,248,3,248,2,252,0,0,0,2,252,3,248,3,248,0,0,0,1,208,3,248,0,96,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,15,240,0,252,0,0,0,0,0,15,224,0,252,0,0,0,0,0,15,208,0,252,0,0,0,0,0,15,208,0,252,0,0,0,0,0,31,192,0,252,0,0,0,0,0,47,192,0,252,0,0,0,0,0,63,192,0,252,0,0,0,0,0,127,64,0,252,0,0,0,0,0,255,0,0,252,0,10,0,0,2,254,0,0,252,0,11,208,0,7,252,0,0,252,0,11,208,0,31,244,0,0,252,0,15,208,0,191,224,0,0,252,0,15,192,27,255,128,0,0,253,0,31,192,127,254,0,0,0,255,255,255,128,47,240,0,0,0,191,255,255,64,14,0,0,0,0,31,255,253,0,0,0,0,0,0,0,0,0,0, + // 0x5165 入 + 101,81,34,32,32,36,1,253,0,2,255,255,252,0,0,0,0,0,2,255,255,252,0,0,0,0,0,2,255,255,252,0,0,0,0,0,1,85,85,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,5,255,0,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,47,255,128,0,0,0,0,0,0,63,255,192,0,0,0,0,0,0,63,223,192,0,0,0,0,0,0,127,79,224,0,0,0,0,0,0,255,11,240,0,0,0,0,0,1,254,7,248,0,0,0,0,0,3,253,3,252,0,0,0,0,0,7,252,2,254,0,0,0,0,0,15,244,0,255,0,0,0,0,0,31,240,0,191,192,0,0,0,0,63,192,0,63,224,0,0,0,0,255,128,0,31,244,0,0,0,2,255,0,0,11,252,0,0,0,11,253,0,0,3,255,0,0,0,47,244,0,0,0,255,208,0,0,191,224,0,0,0,127,244,0,3,255,128,0,0,0,31,254,0,47,254,0,0,0,0,7,255,208,127,248,0,0,0,0,0,255,192,15,208,0,0,0,0,0,47,0,2,0,0,0,0,0,0,5,0, + // 0x5168 全 + 104,81,34,33,41,36,1,254,0,0,0,7,252,0,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,47,255,64,0,0,0,0,0,0,127,191,192,0,0,0,0,0,1,255,15,240,0,0,0,0,0,7,252,7,252,0,0,0,0,0,15,240,1,255,0,0,0,0,0,63,208,0,127,192,0,0,0,1,255,64,0,31,244,0,0,0,7,252,0,0,3,254,0,0,0,47,240,0,0,0,255,192,0,0,255,192,0,0,0,47,244,0,11,254,0,0,0,0,7,255,0,63,255,255,255,255,255,255,255,208,127,235,255,255,255,255,254,191,192,31,71,255,255,255,255,254,31,64,8,0,0,3,248,0,0,1,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,15,255,255,255,255,255,255,255,64,15,255,255,255,255,255,255,255,64,15,255,255,255,255,255,255,255,64, + // 0x5171 共 + 113,81,32,34,16,36,2,253,0,0,168,0,0,42,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,1,253,0,0,191,64,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,85,85,254,85,85,191,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,61,0,0,120,0,0,0,0,255,128,3,255,0,0,0,3,255,0,0,255,208,0,0,15,252,0,0,47,248,0,0,127,240,0,0,11,255,0,2,255,192,0,0,1,255,192,31,254,0,0,0,0,127,240,127,244,0,0,0,0,15,253,47,208,0,0,0,0,3,248,10,0,0,0,0,0,0,144, + // 0x5177 具 + 119,81,32,33,8,36,2,253,0,26,170,170,170,170,168,0,0,47,255,255,255,255,252,0,0,47,255,255,255,255,252,0,0,47,128,0,0,1,252,0,0,47,128,0,0,1,252,0,0,47,128,0,0,1,252,0,0,47,255,255,255,255,252,0,0,47,255,255,255,255,252,0,0,47,149,85,85,86,252,0,0,47,128,0,0,1,252,0,0,47,128,0,0,1,252,0,0,47,149,85,85,86,252,0,0,47,255,255,255,255,252,0,0,47,255,255,255,255,252,0,0,47,128,0,0,1,252,0,0,47,128,0,0,1,252,0,0,47,128,0,0,1,252,0,0,47,255,255,255,255,252,0,0,47,255,255,255,255,252,0,0,26,170,170,170,170,168,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,4,0,0,0,0,0,0,0,63,0,0,184,0,0,0,2,255,192,3,255,208,0,0,127,255,64,1,255,254,0,11,255,248,0,0,31,255,228,255,255,64,0,0,0,191,254,63,228,0,0,0,0,11,252,13,0,0,0,0,0,0,160, + // 0x5197 冗 + 151,81,33,32,32,36,2,253,21,85,85,85,85,85,85,84,0,63,255,255,255,255,255,255,252,0,63,255,255,255,255,255,255,252,0,63,255,255,255,255,255,255,252,0,63,64,0,0,0,0,1,252,0,63,64,0,0,0,0,1,252,0,63,64,0,0,0,0,1,252,0,63,64,0,0,0,0,1,252,0,63,64,0,0,0,0,1,252,0,63,64,0,0,0,0,1,252,0,0,0,255,255,255,255,0,0,0,0,0,255,255,255,255,0,0,0,0,0,255,255,255,255,0,0,0,0,0,254,0,0,191,0,0,0,0,0,254,0,0,191,0,0,0,0,0,254,0,0,191,0,0,0,0,0,254,0,0,191,0,0,0,0,0,254,0,0,191,0,0,0,0,0,253,0,0,191,0,0,0,0,0,253,0,0,191,0,0,0,0,1,252,0,0,191,0,0,0,0,2,252,0,0,191,0,0,0,0,3,252,0,0,191,0,40,0,0,11,244,0,0,191,0,47,64,0,15,240,0,0,191,0,47,64,0,63,208,0,0,191,0,63,64,1,255,192,0,0,191,0,63,64,11,255,0,0,0,191,0,127,0,191,252,0,0,0,191,255,255,0,255,224,0,0,0,63,255,254,0,127,64,0,0,0,31,255,248,0,36,0,0,0,0,0,85,64,0, + // 0x51b7 冷 + 183,81,34,34,50,36,1,253,0,0,0,0,7,244,0,0,0,0,0,0,0,15,252,0,0,0,7,0,0,0,47,255,0,0,0,31,208,0,0,63,255,128,0,0,63,244,0,0,255,47,208,0,0,15,254,0,3,253,15,244,0,0,2,255,128,11,248,3,253,0,0,0,191,192,47,240,1,255,64,0,0,47,64,191,192,0,127,224,0,0,9,2,255,0,0,31,248,0,0,0,11,252,0,0,7,255,64,0,0,63,255,255,255,253,255,224,0,1,255,203,255,255,252,63,208,0,1,255,11,255,255,252,11,128,0,0,184,0,0,0,0,1,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,3,3,255,255,255,255,252,0,0,15,211,255,255,255,255,252,0,0,31,227,255,255,255,255,252,0,0,63,192,0,63,128,1,252,0,0,191,64,0,63,128,1,252,0,0,255,0,0,63,128,1,252,0,3,252,0,0,63,128,1,252,0,11,248,0,0,63,128,1,252,0,31,240,0,0,63,128,1,252,0,63,208,0,0,63,130,255,252,0,127,128,0,0,63,129,255,248,0,31,0,0,0,63,128,255,224,0,5,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,47,64,0,0,0, + // 0x51c6 准 + 198,81,34,34,50,36,1,253,0,0,0,0,228,0,100,0,0,0,0,0,2,252,0,191,0,0,2,0,0,3,248,0,254,0,0,15,208,0,7,240,0,252,0,0,31,248,0,15,224,1,252,0,0,7,255,0,31,208,3,244,0,0,0,255,192,63,192,3,240,0,0,0,47,224,127,255,255,255,255,128,0,11,192,255,255,255,255,255,128,0,2,2,255,255,255,255,255,128,0,0,7,255,64,15,208,0,0,0,0,15,255,64,15,192,0,0,0,0,63,255,64,15,192,0,0,0,0,255,255,64,15,192,0,0,0,0,127,63,255,255,255,255,0,0,0,28,63,255,255,255,255,0,0,0,0,63,255,255,255,255,0,0,0,0,63,64,15,192,0,0,0,1,0,63,64,15,192,0,0,0,11,64,63,64,15,192,0,0,0,15,192,63,64,15,192,0,0,0,47,192,63,64,15,192,0,0,0,127,128,63,255,255,255,255,0,0,255,0,63,255,255,255,255,0,2,253,0,63,255,255,255,255,0,3,252,0,63,64,15,192,0,0,15,240,0,63,64,15,192,0,0,47,224,0,63,64,15,192,0,0,127,192,0,63,64,15,192,0,0,63,0,0,63,255,255,255,255,224,10,0,0,63,255,255,255,255,224,0,0,0,63,255,255,255,255,224,0,0,0,63,64,0,0,0,0,0,0,0,63,0,0,0,0,0, + // 0x51fa 出 + 250,81,28,35,245,36,4,252,0,0,0,169,0,0,0,0,0,0,253,0,0,0,0,0,0,253,0,0,0,26,64,0,253,0,1,164,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,128,0,253,0,3,248,47,255,255,255,255,255,248,47,255,255,255,255,255,248,47,255,255,255,255,255,248,0,0,0,254,0,0,0,0,0,0,253,0,0,0,84,0,0,253,0,0,21,253,0,0,253,0,0,127,253,0,0,253,0,0,127,253,0,0,253,0,0,127,253,0,0,253,0,0,127,253,0,0,253,0,0,127,253,0,0,253,0,0,127,253,0,0,253,0,0,127,253,0,0,253,0,0,127,253,0,0,253,0,0,127,254,85,85,254,85,85,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,253,0,0,0,0,0,127,253,0,0,0,0,0,127,0,0,0,0,0,0,0, + // 0x5206 分 + 6,82,34,34,50,36,1,252,0,0,15,144,0,47,0,0,0,0,0,31,224,0,191,64,0,0,0,0,63,192,0,63,192,0,0,0,0,127,192,0,31,224,0,0,0,0,255,64,0,15,244,0,0,0,2,254,0,0,7,252,0,0,0,7,252,0,0,2,255,0,0,0,15,244,0,0,0,255,128,0,0,63,240,0,0,0,63,224,0,0,255,192,0,0,0,47,244,0,3,255,64,0,0,0,11,253,0,15,253,0,0,0,0,3,255,128,127,253,85,85,85,85,85,255,224,255,223,255,255,255,255,255,127,208,63,79,255,255,255,255,255,15,64,13,15,255,255,255,255,255,1,0,0,0,0,127,0,0,127,0,0,0,0,0,191,0,0,127,0,0,0,0,0,255,0,0,127,0,0,0,0,0,254,0,0,191,0,0,0,0,0,253,0,0,191,0,0,0,0,2,252,0,0,191,0,0,0,0,3,252,0,0,191,0,0,0,0,7,248,0,0,254,0,0,0,0,15,240,0,0,254,0,0,0,0,63,224,0,0,254,0,0,0,0,191,192,0,0,253,0,0,0,3,255,64,0,1,253,0,0,0,31,253,0,0,2,252,0,0,1,255,244,0,21,23,252,0,0,15,255,208,0,63,255,248,0,0,7,254,0,0,63,255,240,0,0,2,224,0,0,47,255,128,0,0,0,0,0,0,0,0,0,0,0, + // 0x5217 列 + 23,82,32,34,16,36,1,252,0,0,0,0,0,0,0,127,47,255,255,255,252,0,0,127,47,255,255,255,252,0,0,127,47,255,255,255,252,169,0,127,0,3,244,0,0,253,0,127,0,7,240,0,0,253,0,127,0,11,240,0,0,253,0,127,0,15,224,0,0,253,0,127,0,15,208,0,0,253,0,127,0,47,255,255,224,253,0,127,0,63,255,255,240,253,0,127,0,127,255,255,224,253,0,127,0,254,0,15,208,253,0,127,1,252,0,15,192,253,0,127,3,248,0,31,192,253,0,127,11,248,0,47,128,253,0,127,31,255,64,63,64,253,0,127,63,255,224,127,0,253,0,127,255,31,253,190,0,253,0,127,61,3,255,253,0,253,0,127,4,0,191,252,0,253,0,127,0,0,31,248,0,253,0,127,0,0,11,240,0,253,0,127,0,0,31,224,0,84,0,127,0,0,63,192,0,0,0,127,0,0,255,64,0,0,0,127,0,2,254,0,0,0,0,127,0,11,252,0,0,0,0,127,0,63,240,0,0,0,0,127,1,255,192,0,0,1,85,191,11,255,0,0,0,3,255,255,3,252,0,0,0,2,255,253,0,208,0,0,0,1,255,224,0,0,0,0,0,0,0,0, + // 0x521d 初 + 29,82,33,34,50,36,1,253,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,15,255,255,255,255,192,0,15,192,15,255,255,255,255,192,0,15,192,15,255,255,255,255,192,0,15,208,0,2,252,0,47,192,63,255,255,208,1,252,0,47,128,63,255,255,240,2,252,0,47,128,63,255,255,208,2,252,0,47,128,0,0,31,192,2,252,0,63,128,0,0,63,64,2,248,0,63,128,0,0,191,0,2,248,0,63,128,0,0,253,16,3,248,0,63,128,0,3,248,120,3,248,0,63,128,0,11,240,253,3,244,0,63,128,0,31,242,244,3,244,0,63,64,0,63,255,224,7,240,0,63,64,0,255,255,128,7,240,0,63,64,3,255,255,128,11,224,0,63,64,15,255,239,224,15,224,0,63,64,127,239,199,248,15,208,0,63,64,191,143,194,244,47,192,0,63,0,62,15,192,224,63,128,0,127,0,40,15,192,0,127,64,0,127,0,0,15,192,0,255,0,0,127,0,0,15,192,1,253,0,0,191,0,0,15,192,7,252,0,0,254,0,0,15,192,15,244,0,0,254,0,0,15,192,63,224,0,2,253,0,0,15,193,255,192,15,255,252,0,0,15,193,255,0,15,255,248,0,0,15,192,124,0,11,255,224,0,0,15,192,16,0,1,84,0,0, + // 0x5230 到 + 48,82,32,33,8,36,1,253,0,0,0,0,0,0,0,63,63,255,255,255,252,0,0,63,63,255,255,255,252,0,0,63,63,255,255,255,252,126,0,63,0,15,240,0,0,126,0,63,0,15,208,0,0,126,0,63,0,47,192,60,0,126,0,63,0,63,192,254,0,126,0,63,0,63,64,63,64,126,0,63,0,127,0,47,192,126,0,63,0,254,0,15,240,126,0,63,63,255,255,255,244,126,0,63,63,255,255,255,252,126,0,63,63,255,255,255,253,126,0,63,5,85,0,0,126,126,0,63,0,0,190,0,32,126,0,63,0,0,190,0,0,126,0,63,0,0,190,0,0,126,0,63,0,0,190,0,0,126,0,63,15,255,255,255,240,126,0,63,15,255,255,255,240,126,0,63,15,255,255,255,240,126,0,63,0,0,190,0,0,126,0,63,0,0,190,0,0,126,0,63,0,0,190,0,0,0,0,63,0,0,190,0,0,0,0,63,0,0,190,0,88,0,0,63,0,0,191,255,252,0,0,63,26,255,255,255,252,0,0,63,127,255,255,255,248,1,85,191,127,255,250,80,0,3,255,255,62,148,0,0,0,1,255,253,0,0,0,0,0,0,255,228, + // 0x5236 制 + 54,82,33,34,50,36,1,253,0,0,47,0,0,0,0,21,0,1,248,63,64,0,0,0,63,64,2,248,63,64,0,0,0,63,64,3,244,63,64,0,3,224,63,64,3,240,63,64,0,3,240,63,64,7,255,255,255,252,3,240,63,64,15,255,255,255,252,3,240,63,64,31,255,255,255,252,3,240,63,64,47,192,63,64,0,3,240,63,64,63,64,63,64,0,3,240,63,64,127,0,63,64,0,3,240,63,64,10,0,63,64,0,3,240,63,64,127,255,255,255,255,131,240,63,64,127,255,255,255,255,131,240,63,64,127,255,255,255,255,131,240,63,64,0,0,63,64,0,3,240,63,64,0,0,63,64,0,3,240,63,64,0,0,63,64,0,3,240,63,64,15,255,255,255,254,3,240,63,64,15,255,255,255,254,3,240,63,64,15,255,255,255,254,3,240,63,64,15,192,63,64,190,3,240,63,64,15,192,63,64,190,3,240,63,64,15,192,63,64,190,2,160,63,64,15,192,63,64,190,0,0,63,64,15,192,63,64,190,0,0,63,64,15,192,63,64,190,0,0,63,64,15,192,63,64,190,0,0,63,64,15,192,63,95,253,0,0,63,64,15,192,63,79,252,0,0,63,64,15,192,63,79,228,0,85,127,64,0,0,63,64,0,0,255,255,0,0,0,63,64,0,0,191,254,0,0,0,63,64,0,0,63,228,0, + // 0x5237 刷 + 55,82,32,34,16,36,1,253,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,63,7,255,255,255,254,0,0,63,7,255,255,255,254,5,64,63,7,255,255,255,254,15,192,63,7,224,0,0,190,15,192,63,7,224,0,0,190,15,192,63,7,224,0,0,190,15,192,63,7,224,0,0,190,15,192,63,7,255,255,255,254,15,192,63,7,255,255,255,254,15,192,63,7,255,255,255,254,15,192,63,7,224,3,240,0,15,192,63,7,224,3,240,0,15,192,63,7,224,3,240,0,15,192,63,7,224,3,240,0,15,192,63,7,239,255,255,255,15,192,63,7,239,255,255,255,15,192,63,7,239,255,255,255,15,192,63,7,239,67,240,63,15,192,63,11,223,67,240,63,15,192,63,11,223,67,240,63,15,192,63,11,223,67,240,63,15,192,63,15,207,67,240,63,15,192,63,15,207,67,240,63,10,128,63,15,207,67,240,63,0,0,63,31,143,67,240,63,0,0,63,31,143,67,247,254,0,0,63,63,79,67,243,253,0,0,63,63,15,67,241,160,0,0,63,190,0,3,240,0,0,85,191,189,0,3,240,0,0,255,255,28,0,3,240,0,0,191,254,0,0,3,240,0,0,127,228, + // 0x5275 創 + 117,82,32,35,24,36,1,252,0,0,26,64,0,0,0,0,0,0,127,224,0,0,0,63,0,0,255,252,0,0,0,63,0,3,254,255,64,0,0,63,0,11,244,127,208,42,0,63,0,47,224,31,244,63,0,63,0,191,128,3,253,63,0,63,3,255,255,255,255,63,0,63,31,250,255,255,60,63,0,63,191,209,85,85,16,63,0,63,63,64,0,0,0,63,0,63,8,255,255,255,244,63,0,63,0,255,255,255,244,63,0,63,0,253,85,87,244,63,0,63,0,252,0,2,244,63,0,63,0,252,0,2,244,63,0,63,0,255,255,255,244,63,0,63,0,255,255,255,244,63,0,63,0,252,0,2,244,63,0,63,0,253,85,87,244,63,0,63,0,255,255,255,244,63,0,63,1,255,255,255,244,63,0,63,2,244,0,0,0,63,0,63,2,244,0,0,0,63,0,63,3,255,255,255,252,63,0,63,3,255,255,255,252,0,0,63,7,255,213,85,252,0,0,63,11,239,128,0,252,0,0,63,15,223,128,0,252,0,0,63,47,143,128,0,252,0,0,63,127,15,255,255,252,1,85,191,125,15,255,255,252,3,255,255,12,15,234,170,252,1,255,253,0,15,128,0,168,0,255,228,0,0,0,0,0,0,0,0, + // 0x529b 力 + 155,82,31,35,24,36,2,252,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,63,255,255,255,255,255,255,248,63,255,255,255,255,255,255,248,63,255,255,255,255,255,255,248,21,85,85,255,85,85,87,244,0,0,0,254,0,0,3,244,0,0,0,254,0,0,3,244,0,0,0,253,0,0,3,244,0,0,1,252,0,0,3,240,0,0,2,252,0,0,7,240,0,0,3,252,0,0,7,240,0,0,3,248,0,0,7,240,0,0,11,244,0,0,11,240,0,0,15,240,0,0,11,240,0,0,31,224,0,0,11,240,0,0,63,192,0,0,15,224,0,0,191,192,0,0,15,224,0,0,255,0,0,0,15,208,0,3,254,0,0,0,15,208,0,11,252,0,0,0,31,192,0,47,244,0,0,0,47,192,0,191,208,0,0,0,63,192,3,255,128,0,0,0,63,128,31,254,0,0,21,85,255,64,191,244,0,0,15,255,255,0,127,208,0,0,15,255,253,0,30,0,0,0,11,255,224,0,0,0,0,0,0,0,0,0, + // 0x52a0 加 + 160,82,32,34,16,36,1,253,0,5,64,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,2,255,255,255,21,95,213,85,2,255,255,255,63,255,255,255,194,255,255,255,63,255,255,255,194,248,0,191,63,255,255,255,194,248,0,191,0,31,192,31,194,248,0,191,0,31,192,31,130,248,0,191,0,47,128,31,130,248,0,191,0,47,128,47,130,248,0,191,0,47,128,47,130,248,0,191,0,47,128,47,130,248,0,191,0,63,64,47,130,248,0,191,0,63,64,47,130,248,0,191,0,63,0,47,130,248,0,191,0,63,0,47,130,248,0,191,0,127,0,47,130,248,0,191,0,190,0,63,66,248,0,191,0,190,0,63,66,248,0,191,0,253,0,63,66,248,0,191,1,252,0,63,66,248,0,191,2,252,0,63,66,248,0,191,3,244,0,63,2,248,0,191,7,240,0,63,2,248,0,191,15,240,0,127,2,255,255,255,31,208,0,255,2,255,255,255,63,193,255,254,2,255,255,255,191,64,255,252,2,248,0,191,46,0,255,244,2,248,0,191,8,0,20,0,1,84,0,0, + // 0x52d5 動 + 213,82,33,35,59,36,1,252,0,0,0,6,64,5,64,0,0,0,86,175,255,192,15,208,0,0,63,255,255,255,224,15,208,0,0,47,255,254,148,0,15,208,0,0,5,64,252,0,0,15,208,0,0,0,0,252,0,0,15,208,0,0,21,85,254,85,80,15,208,0,0,127,255,255,255,244,15,208,0,0,127,255,255,255,249,95,208,0,0,0,0,252,0,15,255,255,255,128,0,0,252,0,15,255,255,255,128,31,255,255,255,251,255,255,255,128,31,255,255,255,240,15,192,47,128,31,64,252,3,240,15,192,47,128,31,64,252,3,240,15,192,47,128,31,255,255,255,240,31,192,47,128,31,255,255,255,240,31,192,47,128,31,64,252,3,240,31,128,47,128,31,64,252,3,240,47,128,47,64,31,64,253,3,240,63,64,63,64,31,255,255,255,240,63,0,63,64,31,255,255,255,240,63,0,63,64,0,0,252,0,0,191,0,63,64,0,0,252,0,0,254,0,63,64,47,255,255,255,240,253,0,63,0,47,255,255,255,242,252,0,63,0,5,85,254,85,83,248,0,63,0,0,0,252,0,11,240,0,127,0,0,0,252,22,175,224,0,127,0,0,86,255,255,255,192,0,190,0,127,255,255,255,255,128,0,254,0,127,255,254,171,254,3,255,253,0,58,148,0,2,252,1,255,252,0,0,0,0,0,160,0,255,224,0,0,0,0,0,0,0,0,0,0, + // 0x5316 化 + 22,83,34,33,41,36,1,253,0,0,47,128,190,0,0,0,0,0,0,63,192,190,0,0,0,0,0,0,191,64,190,0,0,0,0,0,0,255,0,190,0,0,0,0,0,2,253,0,190,0,0,0,0,0,3,252,0,190,0,0,0,0,0,15,240,0,190,0,0,48,0,0,31,224,0,190,0,0,252,0,0,63,208,0,190,0,7,255,0,0,255,208,0,190,0,47,253,0,3,255,208,0,190,1,255,240,0,11,255,208,0,190,11,255,64,0,47,255,208,0,190,127,248,0,0,191,239,208,0,191,255,208,0,0,255,143,208,0,191,253,0,0,0,127,15,208,0,191,224,0,0,0,60,15,208,0,191,0,0,0,0,0,15,208,0,190,0,0,0,0,0,15,208,0,190,0,0,0,0,0,15,208,0,190,0,0,0,0,0,15,208,0,190,0,0,0,0,0,15,208,0,190,0,0,0,0,0,15,208,0,190,0,0,0,0,0,15,208,0,190,0,0,7,128,0,15,208,0,190,0,0,11,224,0,15,208,0,190,0,0,11,224,0,15,208,0,190,0,0,11,208,0,15,208,0,191,0,0,15,208,0,15,208,0,127,64,0,47,192,0,15,208,0,63,255,255,255,192,0,15,208,0,63,255,255,255,64,0,15,208,0,11,255,255,253,0,0,10,128,0,0,0,0,0,0, + // 0x534a 半 + 74,83,32,34,16,36,2,253,0,0,0,15,224,0,0,0,0,120,0,15,224,0,62,0,2,252,0,15,224,0,127,192,0,254,0,15,224,0,191,0,0,191,64,15,224,0,254,0,0,63,192,15,224,2,252,0,0,47,208,15,224,3,248,0,0,15,240,15,224,11,240,0,0,11,240,15,224,31,208,0,0,7,144,15,224,7,192,0,0,0,0,15,224,0,0,0,1,85,85,95,229,85,85,80,15,255,255,255,255,255,255,240,15,255,255,255,255,255,255,240,15,255,255,255,255,255,255,240,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,85,85,85,95,245,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0, + // 0x5354 協 + 84,83,33,35,59,36,1,252,0,127,0,0,0,189,0,0,0,0,127,0,0,0,253,0,0,0,0,127,0,0,0,252,0,0,0,0,127,0,0,0,252,0,0,0,0,127,0,47,255,255,255,254,0,0,127,0,47,255,255,255,254,0,0,127,0,26,171,254,170,254,0,0,127,0,0,3,240,0,189,0,0,127,0,0,11,224,0,189,0,0,127,0,0,31,192,0,252,0,191,255,255,0,63,128,0,252,0,191,255,255,1,255,0,2,252,0,191,255,255,27,252,3,255,248,0,0,127,0,255,224,1,255,240,0,0,127,0,127,64,0,170,64,0,0,127,0,36,0,0,0,0,0,0,127,0,47,0,0,63,0,0,0,127,0,47,0,0,63,0,0,0,127,0,47,0,0,63,0,0,0,127,10,191,170,138,191,170,128,0,127,15,255,255,207,255,255,192,0,127,15,255,255,207,255,255,192,0,127,0,63,15,192,126,15,192,0,127,0,62,15,192,189,15,192,0,127,0,125,15,192,188,15,192,0,127,0,189,15,192,252,15,192,0,127,0,252,15,128,248,15,192,0,127,0,248,15,130,244,15,128,0,127,2,244,15,131,240,15,128,0,127,3,240,31,139,224,15,128,0,127,11,208,31,95,192,31,64,0,127,47,198,191,127,134,191,64,0,127,47,3,255,62,7,255,0,0,127,9,3,248,8,3,252,0,0,0,0,0,0,0,0,0,0, + // 0x5361 卡 + 97,83,32,34,16,36,2,253,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,255,255,255,0,0,0,0,47,255,255,255,0,0,0,0,47,255,255,255,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,111,213,85,85,85,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,238,0,0,0,0,0,0,47,255,248,0,0,0,0,0,47,255,255,208,0,0,0,0,47,203,255,254,0,0,0,0,47,192,111,255,208,0,0,0,47,192,1,255,192,0,0,0,47,192,0,31,64,0,0,0,47,192,0,1,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,31,192,0,0,0, + // 0x5370 印 + 112,83,30,34,16,36,3,253,0,0,6,0,0,0,0,0,0,0,127,192,0,0,0,0,0,7,255,224,85,85,85,80,17,191,255,145,255,255,255,240,127,255,248,1,255,255,255,240,127,254,64,1,255,255,255,240,127,144,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,64,0,1,252,0,3,240,127,255,255,209,252,0,3,240,127,255,255,209,252,0,3,240,127,255,255,209,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,0,0,1,252,0,3,240,127,255,255,225,252,0,7,240,127,255,255,225,252,15,255,240,127,255,255,225,252,11,255,240,127,64,0,1,252,7,255,192,127,0,0,1,252,2,148,0,127,0,0,1,252,0,0,0,21,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0, + // 0x5378 卸 + 120,83,32,34,16,36,1,253,0,62,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,127,0,0,2,255,255,255,0,254,0,0,2,255,255,255,0,255,255,255,226,255,255,255,2,255,255,255,226,252,0,63,7,255,255,255,226,248,0,63,15,224,126,0,2,248,0,63,47,192,126,0,2,248,0,63,63,128,126,0,2,248,0,63,15,0,126,0,2,248,0,63,0,0,126,0,2,248,0,63,63,255,255,255,242,248,0,63,63,255,255,255,242,248,0,63,63,255,255,255,242,248,0,63,0,0,126,0,2,248,0,63,0,0,126,0,2,248,0,63,1,80,126,0,2,248,0,63,3,224,126,0,2,248,0,63,3,224,127,255,194,248,0,63,3,224,127,255,194,248,0,63,3,224,127,255,194,248,0,63,3,224,126,0,2,248,0,63,3,224,126,0,2,248,0,63,3,224,126,0,2,248,0,63,3,224,126,0,2,248,63,255,3,224,126,6,178,248,47,255,3,224,191,255,246,248,31,253,27,255,255,255,246,248,5,64,191,255,255,254,82,248,0,0,191,255,233,0,2,248,0,0,126,144,0,0,2,248,0,0,0,0,0,0,2,248,0,0,0,0,0,0,2,248,0,0, + // 0x537b 卻 + 123,83,32,34,16,36,1,253,0,0,21,0,0,0,0,0,0,0,255,128,0,0,0,0,0,2,255,240,1,255,255,255,0,7,255,252,1,255,255,255,0,31,242,255,1,255,255,255,0,127,192,191,209,252,0,63,1,255,0,31,241,252,0,63,11,252,0,11,245,252,0,63,63,240,0,2,225,252,0,63,15,128,106,0,129,252,0,63,5,0,255,192,1,252,0,63,0,2,255,240,1,252,0,63,0,7,255,252,1,252,0,63,0,15,242,255,1,252,0,63,0,63,192,191,193,252,0,63,0,255,64,47,241,252,0,63,3,253,0,11,249,252,0,63,15,244,0,3,245,252,0,63,127,208,0,0,225,252,0,63,191,255,255,255,129,252,0,63,45,255,255,255,65,252,0,63,0,255,255,255,65,252,0,63,0,252,0,47,65,252,0,63,0,252,0,47,65,252,0,63,0,252,0,47,65,252,63,255,0,252,0,47,65,252,47,255,0,252,0,47,65,252,31,252,0,252,0,47,65,252,5,64,0,255,255,255,65,252,0,0,0,255,255,255,65,252,0,0,0,255,255,255,65,252,0,0,0,252,0,47,65,252,0,0,0,252,0,47,65,252,0,0,0,84,0,0,1,248,0,0, + // 0x539f 原 + 159,83,33,32,32,36,1,253,1,255,255,255,255,255,255,255,192,1,255,255,255,255,255,255,255,192,1,255,255,255,255,255,255,255,192,1,252,0,0,31,208,0,0,0,1,252,0,0,47,192,0,0,0,1,252,0,0,63,192,0,0,0,1,252,31,255,255,255,255,240,0,1,252,31,255,255,255,255,240,0,1,252,31,234,170,170,171,240,0,1,252,31,192,0,0,7,240,0,1,252,31,192,0,0,7,240,0,1,252,31,213,85,85,91,240,0,1,252,31,255,255,255,255,240,0,1,252,31,255,255,255,255,240,0,2,252,31,192,0,0,7,240,0,2,248,31,192,0,0,7,240,0,2,248,31,192,0,0,7,240,0,2,248,31,255,255,255,255,240,0,3,244,31,255,255,255,255,240,0,3,244,10,170,175,234,170,160,0,3,244,0,0,15,208,0,0,0,3,240,0,144,15,208,28,0,0,7,240,2,252,15,208,191,0,0,11,240,7,248,15,208,63,208,0,15,224,15,240,15,208,15,244,0,15,208,63,192,15,208,3,252,0,31,192,255,64,15,208,0,255,0,47,199,253,0,15,208,0,127,192,63,79,244,0,15,208,0,31,192,191,2,208,31,255,208,0,10,0,126,0,0,15,255,192,0,0,0,5,0,0,11,254,0,0,0,0, + // 0x53cd 反 + 205,83,32,33,8,36,2,252,0,255,255,255,255,255,255,248,0,255,255,255,255,255,255,248,0,255,255,255,255,255,255,248,0,254,85,85,85,85,85,80,0,253,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,254,0,0,0,0,4,0,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,0,0,253,47,192,0,0,255,0,0,252,15,224,0,1,253,0,0,252,11,240,0,3,252,0,0,252,7,248,0,7,248,0,1,252,3,252,0,15,240,0,1,252,1,254,0,47,224,0,2,252,0,191,128,127,192,0,2,248,0,63,209,255,64,0,3,244,0,31,247,254,0,0,3,244,0,11,255,248,0,0,7,240,0,2,255,240,0,0,11,240,0,2,255,224,0,0,15,208,0,31,255,253,0,0,31,192,0,255,255,255,208,0,63,192,31,255,193,255,254,64,127,70,255,253,0,47,255,249,255,11,255,224,0,7,255,253,125,3,254,0,0,0,47,248,8,1,144,0,0,0,1,176,0,0,0,0,0,0,0,0, + // 0x53d6 取 + 214,83,34,32,32,36,1,253,63,255,255,255,244,0,0,0,0,63,255,255,255,244,0,0,0,0,63,255,255,255,244,0,0,0,0,2,248,0,127,47,255,255,255,64,2,248,0,63,31,255,255,255,64,2,248,0,63,31,255,255,255,64,2,248,0,63,5,149,85,127,0,2,248,0,63,15,208,0,127,0,2,255,255,255,15,224,0,127,0,2,255,255,255,11,240,0,190,0,2,255,255,255,7,240,0,253,0,2,248,0,63,3,244,0,252,0,2,248,0,63,3,248,1,252,0,2,248,0,63,1,252,3,248,0,2,248,0,63,0,253,3,244,0,2,255,255,255,0,255,11,240,0,2,255,255,255,0,127,15,224,0,2,255,255,255,0,63,175,208,0,2,248,0,63,0,31,255,192,0,2,248,0,63,0,15,255,64,0,2,248,0,63,0,11,255,0,0,2,248,0,63,0,3,253,0,0,2,248,26,255,0,7,253,0,0,7,255,255,255,0,15,255,64,0,255,255,255,255,0,63,255,192,0,191,255,254,191,0,255,175,240,0,127,229,0,63,3,255,15,252,0,16,0,0,63,31,252,3,255,64,0,0,0,63,191,240,0,255,224,0,0,0,63,127,128,0,63,208,0,0,0,63,45,0,0,11,128,0,0,0,63,0,0,0,1,0, + // 0x53f0 台 + 240,83,32,34,16,36,2,253,0,0,3,208,0,0,0,0,0,0,3,252,0,0,0,0,0,0,11,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,47,208,0,9,0,0,0,0,63,192,0,63,64,0,0,0,191,64,0,191,208,0,0,0,254,0,0,31,244,0,0,3,252,0,0,7,254,0,0,7,244,0,0,1,255,64,0,15,245,170,175,255,255,208,191,255,255,255,255,255,255,244,191,255,255,255,255,255,255,252,127,255,255,250,170,85,66,255,21,64,0,0,0,0,0,255,0,0,0,0,0,0,0,120,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,191,255,255,255,255,254,0,0,191,255,255,255,255,254,0,0,191,255,255,255,255,254,0,0,191,0,0,0,0,254,0,0,191,0,0,0,0,254,0,0,191,0,0,0,0,254,0,0,191,0,0,0,0,254,0,0,191,0,0,0,0,254,0,0,191,0,0,0,0,254,0,0,191,0,0,0,0,254,0,0,191,0,0,0,0,254,0,0,191,255,255,255,255,254,0,0,191,255,255,255,255,254,0,0,191,255,255,255,255,254,0,0,191,0,0,0,1,254,0,0,127,0,0,0,0,253,0, + // 0x5408 合 + 8,84,34,35,59,36,1,252,0,0,0,3,248,0,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,47,255,64,0,0,0,0,0,0,127,255,192,0,0,0,0,0,1,255,31,240,0,0,0,0,0,7,253,11,252,0,0,0,0,0,31,248,2,255,64,0,0,0,0,127,224,0,191,208,0,0,0,1,255,128,0,47,248,0,0,0,11,254,0,0,7,255,0,0,0,63,248,0,0,1,255,208,0,1,255,208,0,0,0,127,253,0,15,255,255,255,255,255,255,255,128,127,248,255,255,255,255,241,255,224,63,192,255,255,255,255,240,47,192,13,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,0,0,0,15,255,255,255,255,255,0,0,0,15,255,255,255,255,255,0,0,0,15,208,0,0,0,127,0,0,0,15,208,0,0,0,63,0,0,0,15,208,0,0,0,63,0,0,0,15,208,0,0,0,63,0,0,0,15,208,0,0,0,63,0,0,0,15,208,0,0,0,63,0,0,0,15,208,0,0,0,63,0,0,0,15,208,0,0,0,63,0,0,0,15,255,255,255,255,255,0,0,0,15,255,255,255,255,255,0,0,0,15,255,255,255,255,255,0,0,0,15,208,0,0,0,63,0,0,0,0,0,0,0,0,0,0,0, + // 0x5426 否 + 38,84,33,32,32,36,1,253,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,0,0,0,0,255,192,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,127,248,4,0,0,0,0,0,2,255,248,63,128,0,0,0,0,31,255,248,255,248,0,0,0,1,255,247,248,47,255,64,0,0,31,255,131,248,2,255,240,0,1,255,253,3,248,0,47,254,0,111,255,224,3,248,0,7,255,192,63,254,0,3,248,0,0,191,192,31,224,0,3,248,0,0,31,0,10,0,0,3,248,0,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,128,0,0,0,47,192,0,0,47,128,0,0,0,47,192,0,0,47,128,0,0,0,47,192,0,0,47,128,0,0,0,47,192,0,0,47,128,0,0,0,47,192,0,0,47,128,0,0,0,47,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,128,0,0,0,47,192,0,0,47,128,0,0,0,26,128,0, + // 0x544a 告 + 74,84,32,35,24,36,2,252,0,6,64,3,248,0,0,0,0,15,240,3,248,0,0,0,0,15,208,3,248,0,0,0,0,47,192,3,248,0,0,0,0,63,128,3,248,0,0,0,0,191,255,255,255,255,255,208,1,255,255,255,255,255,255,208,3,255,255,255,255,255,255,208,11,244,0,3,248,0,0,0,31,240,0,3,248,0,0,0,63,192,0,3,248,0,0,0,31,64,0,3,248,0,0,0,1,0,0,3,248,0,0,0,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,127,0,0,0,0,191,0,0,127,0,0,0,0,191,0,0,127,0,0,0,0,191,0,0,127,0,0,0,0,191,0,0,127,0,0,0,0,191,0,0,127,0,0,0,0,191,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,127,0,0,0,0,191,0,0,127,0,0,0,0,191,0,0,0,0,0,0,0,0,0, + // 0x547d 命 + 125,84,34,35,59,36,1,252,0,0,0,11,252,0,0,0,0,0,0,0,31,255,0,0,0,0,0,0,0,127,255,128,0,0,0,0,0,1,255,111,224,0,0,0,0,0,7,253,11,252,0,0,0,0,0,47,248,2,255,0,0,0,0,0,255,208,0,191,208,0,0,0,7,255,64,0,31,248,0,0,0,47,252,0,0,3,255,64,0,2,255,255,255,255,255,255,240,0,31,255,223,255,255,255,111,255,64,255,253,15,255,255,255,71,255,240,127,224,0,0,0,0,0,191,208,46,0,0,0,0,0,0,11,128,0,0,0,0,0,0,0,0,0,0,255,255,252,15,255,255,248,0,0,255,255,252,15,255,255,248,0,0,255,255,252,15,255,255,248,0,0,252,0,252,15,192,2,248,0,0,252,0,252,15,192,2,248,0,0,252,0,252,15,192,2,248,0,0,252,0,252,15,192,2,248,0,0,252,0,252,15,192,2,248,0,0,252,0,252,15,192,2,248,0,0,252,0,252,15,192,2,248,0,0,255,255,252,15,192,2,248,0,0,255,255,252,15,192,2,248,0,0,255,255,252,15,195,255,244,0,0,252,0,0,15,194,255,240,0,0,252,0,0,15,193,255,144,0,0,252,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x548c 和 + 140,84,32,34,16,36,1,253,0,0,0,4,0,0,0,0,0,0,1,252,0,0,0,0,0,1,191,255,0,0,0,0,6,255,255,255,64,0,0,0,47,255,255,144,15,255,255,254,15,255,252,0,15,255,255,254,4,1,252,0,15,255,255,254,0,1,252,0,15,192,0,254,0,1,252,0,15,192,0,254,0,1,252,0,15,192,0,254,0,1,252,0,15,192,0,254,63,255,255,255,143,192,0,254,63,255,255,255,143,192,0,254,63,255,255,255,143,192,0,254,0,7,252,0,15,192,0,254,0,15,254,0,15,192,0,254,0,15,255,64,15,192,0,254,0,47,255,208,15,192,0,254,0,63,255,240,15,192,0,254,0,191,254,252,15,192,0,254,0,253,252,255,15,192,0,254,3,245,252,63,143,192,0,254,7,241,252,47,15,192,0,254,15,209,252,13,15,192,0,254,63,193,252,0,15,192,0,254,191,65,252,0,15,192,0,254,190,1,252,0,15,255,255,254,60,1,252,0,15,255,255,254,16,1,252,0,15,255,255,254,0,1,252,0,15,208,0,254,0,1,252,0,15,192,0,254,0,1,252,0,15,192,0,254,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0, + // 0x555f 啟 + 95,85,34,35,59,36,1,252,0,0,100,0,0,3,160,0,0,0,1,252,0,0,7,240,0,0,0,0,252,0,0,11,224,0,0,0,0,190,0,0,11,208,0,0,0,0,127,0,0,15,192,0,0,3,255,255,255,192,15,192,0,0,3,255,255,255,192,31,192,0,0,3,255,255,255,192,47,255,255,208,3,240,0,15,192,63,255,255,208,3,240,0,15,192,127,255,255,208,3,240,0,15,192,191,0,190,0,3,240,0,15,192,255,0,189,0,3,240,0,15,194,255,0,253,0,3,255,255,255,195,255,64,252,0,3,255,255,255,203,255,64,252,0,3,255,255,255,223,239,129,252,0,3,240,0,0,7,207,194,248,0,3,240,0,0,1,75,211,244,0,7,240,0,0,0,7,227,240,0,7,250,170,170,144,3,247,240,0,7,239,255,255,224,3,255,208,0,7,239,255,255,224,1,255,192,0,11,223,192,7,224,0,255,192,0,15,223,192,7,224,0,191,64,0,15,207,192,7,224,0,191,0,0,15,207,192,7,224,1,255,128,0,31,143,192,7,224,3,255,208,0,47,143,192,7,224,11,255,240,0,63,79,234,175,224,31,231,248,0,127,15,255,255,224,127,194,254,0,190,15,255,255,226,255,0,255,128,44,15,192,7,235,253,0,63,224,4,15,192,7,227,240,0,15,192,0,5,64,0,1,192,0,2,0,0,0,0,0,0,0,0,0,0, + // 0x55ae 單 + 174,85,32,32,0,36,2,253,7,255,255,252,47,255,255,224,7,255,255,252,47,255,255,224,7,224,1,252,47,64,11,224,7,224,1,252,47,64,11,224,7,224,1,252,47,64,11,224,7,255,255,252,47,255,255,224,7,255,255,252,47,255,255,224,0,0,0,0,0,0,0,0,0,170,170,170,170,170,170,64,1,255,255,255,255,255,255,128,1,255,255,255,255,255,255,128,1,252,0,15,224,0,63,128,1,252,0,15,224,0,63,128,1,253,85,95,245,85,127,128,1,255,255,255,255,255,255,128,1,255,255,255,255,255,255,128,1,252,0,15,224,0,63,128,1,252,0,15,224,0,63,128,1,252,0,15,224,0,63,128,1,255,255,255,255,255,255,128,1,255,255,255,255,255,255,128,0,170,170,175,250,170,170,64,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,191,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,10,144,0,0,0, + // 0x5634 嘴 + 52,86,33,35,59,36,2,252,0,0,0,2,240,15,192,0,0,0,0,0,3,240,15,192,0,0,0,0,1,131,240,15,192,112,0,127,255,195,211,240,15,194,252,0,127,255,195,211,255,223,239,244,0,127,255,195,211,255,223,255,64,0,124,11,195,211,245,79,244,0,0,124,11,195,211,240,15,192,0,0,124,11,195,211,240,15,192,15,64,124,11,195,211,246,159,192,15,64,124,11,195,255,255,223,229,111,64,124,11,239,255,255,219,255,255,0,124,11,239,255,252,2,255,252,0,124,11,218,67,248,1,0,0,0,124,11,192,11,255,255,192,0,0,124,11,192,31,255,255,208,0,0,124,11,192,127,64,47,128,0,0,124,11,193,255,0,127,64,0,0,124,11,203,255,255,255,255,248,0,124,11,255,255,255,255,255,248,0,127,255,207,190,0,248,2,248,0,127,255,192,126,0,248,2,248,0,127,255,192,127,255,255,255,248,0,124,0,0,127,255,255,255,248,0,124,0,0,190,0,248,2,248,0,124,0,0,189,0,248,2,248,0,40,0,0,254,1,252,2,248,0,0,0,0,255,255,255,255,248,0,0,0,2,255,255,255,255,248,0,0,0,3,248,0,0,2,248,0,0,0,15,240,0,0,2,248,0,0,0,63,208,0,1,87,244,0,0,0,191,64,0,3,255,240,0,0,0,29,0,0,1,255,144,0,0,0,0,0,0,0,0,0,0, + // 0x5668 器 + 104,86,34,34,50,36,1,252,1,170,170,168,2,170,170,168,0,2,255,255,252,3,255,255,248,0,2,255,255,252,3,255,255,248,0,2,244,0,252,3,240,1,248,0,2,244,0,252,3,240,1,248,0,2,244,0,252,3,240,1,248,0,2,244,0,252,3,240,1,248,0,2,244,0,252,3,240,1,248,0,2,254,170,252,3,250,171,248,0,2,255,255,252,3,255,255,248,0,2,255,255,255,147,255,255,248,0,0,0,0,15,240,0,0,0,0,0,0,0,63,192,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,63,240,0,255,64,0,0,0,1,255,192,0,63,224,0,0,0,11,255,0,0,31,253,0,0,0,191,252,0,0,3,255,208,0,27,255,224,0,0,0,255,253,0,255,255,255,253,11,255,255,255,224,127,255,255,253,11,255,255,255,208,47,255,255,253,11,255,255,255,128,0,252,0,189,11,208,3,240,0,0,252,0,189,11,208,3,240,0,0,252,0,189,11,208,3,240,0,0,252,0,189,11,208,3,240,0,0,252,0,189,11,208,3,240,0,0,255,255,253,11,255,255,240,0,0,255,255,253,11,255,255,240,0,0,255,255,253,11,255,255,240,0,0,252,0,189,11,208,3,240,0,0,0,0,0,0,0,0,0,0, + // 0x5674 噴 + 116,86,33,35,59,36,2,252,0,0,0,0,0,252,0,0,0,0,0,0,0,0,252,0,0,0,0,0,0,85,85,253,85,84,0,0,0,0,255,255,255,255,252,0,127,255,240,255,255,255,255,252,0,127,255,240,0,0,252,0,0,0,127,255,240,7,208,252,47,0,0,125,3,240,7,208,168,47,0,0,125,3,241,91,229,85,127,85,0,125,3,251,255,255,255,255,255,128,125,3,251,255,255,255,255,255,128,125,3,240,7,208,0,47,0,0,125,3,240,7,208,0,47,0,0,125,3,240,0,0,0,0,0,0,125,3,240,127,255,255,255,240,0,125,3,240,127,255,255,255,240,0,125,3,240,126,0,0,3,240,0,125,3,240,126,0,0,3,240,0,125,3,240,127,255,255,255,240,0,125,3,240,127,255,255,255,240,0,125,3,240,126,0,0,3,240,0,127,255,240,126,0,0,3,240,0,127,255,240,127,255,255,255,240,0,127,255,240,127,255,255,255,240,0,125,0,0,126,0,0,3,240,0,125,0,0,126,0,0,3,240,0,61,0,0,127,255,255,255,240,0,0,0,0,127,255,255,255,240,0,0,0,0,2,228,0,248,0,0,0,0,0,31,252,2,255,64,0,0,0,6,255,224,0,127,244,0,0,0,127,255,0,0,11,254,0,0,0,63,228,0,0,0,255,64,0,0,14,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0, + // 0x56de 回 + 222,86,30,33,8,36,3,253,85,85,85,85,85,85,85,80,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,253,0,255,255,255,240,11,240,253,0,255,255,255,240,11,240,253,0,255,255,255,240,11,240,253,0,252,0,7,240,11,240,253,0,252,0,7,240,11,240,253,0,252,0,7,240,11,240,253,0,252,0,7,240,11,240,253,0,252,0,7,240,11,240,253,0,252,0,7,240,11,240,253,0,252,0,7,240,11,240,253,0,252,0,7,240,11,240,253,0,255,255,255,240,11,240,253,0,255,255,255,240,11,240,253,0,255,255,255,240,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,254,0,0,0,0,0,11,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240, + // 0x56e0 因 + 224,86,30,32,0,36,3,253,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,253,0,0,0,0,0,7,240,253,0,0,26,64,0,7,240,253,0,0,47,64,0,7,240,253,0,0,63,64,0,7,240,253,0,0,63,64,0,7,240,253,0,0,63,0,0,7,240,253,0,0,63,0,0,7,240,253,63,255,255,255,255,199,240,253,63,255,255,255,255,199,240,253,63,255,255,255,255,199,240,253,0,0,127,192,0,7,240,253,0,0,191,208,0,7,240,253,0,0,255,240,0,7,240,253,0,1,255,240,0,7,240,253,0,3,249,252,0,7,240,253,0,7,240,253,0,7,240,253,0,31,240,191,64,7,240,253,0,127,192,63,208,7,240,253,1,255,64,15,248,7,240,253,31,253,0,7,255,135,240,253,63,240,0,0,255,135,240,253,31,128,0,0,47,7,240,253,4,0,0,0,0,7,240,253,0,0,0,0,0,7,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,7,240, + // 0x56fa 固 + 250,86,30,32,0,36,3,253,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,253,0,0,0,0,0,11,240,253,0,0,21,64,0,11,240,253,0,0,47,128,0,11,240,253,0,0,47,128,0,11,240,253,0,0,47,128,0,11,240,253,26,170,191,234,170,139,240,253,47,255,255,255,255,139,240,253,47,255,255,255,255,139,240,253,0,0,47,128,0,11,240,253,0,0,47,128,0,11,240,253,0,0,47,128,0,11,240,253,1,170,191,234,164,11,240,253,2,255,255,255,252,11,240,253,2,255,255,255,252,11,240,253,2,244,0,1,252,11,240,253,2,244,0,1,252,11,240,253,2,244,0,1,252,11,240,253,2,244,0,1,252,11,240,253,2,254,170,170,252,11,240,253,2,255,255,255,252,11,240,253,2,255,255,255,252,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,253,0,0,0,0,0,11,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,254,0,0,0,0,0,11,240,253,0,0,0,0,0,7,240, + // 0x5716 圖 + 22,87,30,34,16,36,3,252,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,252,0,0,0,0,0,3,240,252,0,0,0,0,0,3,240,252,0,255,255,255,240,3,240,252,0,255,255,255,240,3,240,252,0,248,0,3,240,3,240,252,0,248,0,3,240,3,240,252,0,255,255,255,240,3,240,252,0,255,255,255,240,3,240,252,0,0,47,64,0,3,240,252,127,255,255,255,255,211,240,252,127,255,255,255,255,211,240,252,0,0,0,0,0,3,240,252,7,255,255,255,252,3,240,252,7,255,255,255,253,3,240,252,7,208,0,0,125,3,240,252,7,209,170,164,125,3,240,252,7,211,255,248,125,3,240,252,7,211,192,120,125,3,240,252,7,211,192,120,125,3,240,252,7,211,255,248,125,3,240,252,7,209,170,164,125,3,240,252,7,208,0,0,125,3,240,252,7,255,255,255,253,3,240,252,7,255,255,255,253,3,240,252,0,0,0,0,0,3,240,252,0,0,0,0,0,3,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,252,0,0,0,0,0,3,240,0,0,0,0,0,0,0,0, + // 0x5728 在 + 40,87,33,34,50,36,1,253,0,0,0,100,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,0,0,47,192,0,0,0,0,0,0,0,127,128,0,20,0,0,0,0,0,255,0,0,190,0,0,0,0,2,253,0,0,190,0,0,0,0,7,252,0,0,190,0,0,0,0,15,240,0,0,190,0,0,0,0,63,208,0,0,190,0,0,0,0,191,192,0,0,190,0,0,0,2,255,192,127,255,255,255,253,0,15,255,192,127,255,255,255,253,0,63,255,192,127,255,255,255,253,0,127,223,192,0,0,254,0,0,0,63,31,192,0,0,190,0,0,0,24,31,192,0,0,190,0,0,0,0,31,192,0,0,190,0,0,0,0,31,192,0,0,190,0,0,0,0,31,192,0,0,190,0,0,0,0,31,192,0,0,190,0,0,0,0,31,192,0,0,190,0,0,0,0,31,192,0,0,190,0,0,0,0,31,192,0,0,254,0,0,0,0,31,195,255,255,255,255,255,128,0,31,195,255,255,255,255,255,128,0,31,195,255,255,255,255,255,128,0,31,192,0,0,0,0,0,0, + // 0x578b 型 + 139,87,32,33,8,36,2,254,0,0,0,0,0,0,3,240,31,255,255,255,224,0,3,240,31,255,255,255,224,190,3,240,31,255,255,255,224,190,3,240,0,63,1,252,0,190,3,240,0,63,1,252,0,190,3,240,0,63,1,252,0,190,3,240,0,63,1,252,0,190,3,240,0,63,1,252,0,190,3,240,191,255,255,255,248,190,3,240,191,255,255,255,248,190,3,240,191,255,255,255,248,190,3,240,0,190,1,252,0,190,3,240,0,253,1,252,0,190,3,240,1,252,1,252,0,20,3,240,3,248,1,252,0,0,3,240,15,240,1,252,0,0,3,240,127,208,1,252,0,11,255,240,191,128,1,252,0,3,255,240,62,0,0,175,240,3,255,128,4,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,1,255,255,255,255,255,255,64,1,255,255,255,255,255,255,64,1,255,255,255,255,255,255,64,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x57f7 執 + 247,87,34,35,59,36,1,252,0,3,240,0,0,126,0,0,0,0,3,240,0,0,126,0,0,0,0,3,240,0,0,126,0,0,0,0,3,240,0,0,126,0,0,0,15,255,255,252,0,126,0,0,0,15,255,255,252,0,126,0,0,0,15,255,255,252,0,126,0,0,0,0,3,240,0,0,127,0,0,0,0,3,240,0,255,255,255,244,0,127,255,255,255,255,255,255,244,0,127,255,255,255,128,127,255,244,0,127,255,255,255,128,126,3,244,0,2,224,1,244,0,126,3,244,0,3,240,2,244,0,126,3,244,0,2,244,3,240,0,190,3,244,0,0,248,3,240,32,190,3,244,0,0,252,7,208,189,190,3,244,0,0,252,7,192,255,253,3,244,0,63,255,255,255,127,253,3,244,0,63,255,255,255,11,253,3,244,0,63,255,255,255,2,255,131,244,0,0,3,240,0,2,255,226,244,0,0,3,240,0,3,255,250,244,0,0,3,240,0,3,246,254,244,0,47,255,255,254,11,240,182,244,0,47,255,255,254,15,224,18,244,128,31,255,255,253,47,192,1,248,240,0,3,240,0,127,128,1,248,240,0,3,240,0,255,0,0,252,240,0,3,240,3,253,0,0,252,240,0,3,240,15,248,0,0,191,240,0,3,240,63,240,0,0,127,224,0,3,240,31,192,0,0,63,192,0,3,240,6,0,0,0,11,128,0,0,0,0,0,0,0,0,0, + // 0x584a 塊 + 74,88,34,35,59,36,1,252,0,42,0,0,0,250,0,0,0,0,63,0,0,0,254,0,0,0,0,63,0,0,1,252,0,0,0,0,63,0,0,3,252,0,0,0,0,63,0,127,255,255,255,255,0,0,63,0,127,255,255,255,255,0,0,63,0,127,255,255,255,255,0,0,63,0,126,0,190,0,127,0,63,255,254,126,0,190,0,127,0,63,255,254,126,0,190,0,127,0,63,255,254,127,255,255,255,255,0,0,63,0,127,255,255,255,255,0,0,63,0,127,170,255,170,191,0,0,63,0,126,0,190,0,127,0,0,63,0,126,0,190,0,127,0,0,63,0,126,0,190,0,127,0,0,63,0,127,255,255,255,255,0,0,63,0,127,255,255,255,255,0,0,63,0,127,255,255,255,255,0,0,63,1,0,252,63,65,0,0,0,63,111,1,252,63,75,192,0,0,63,255,65,252,63,75,128,0,1,255,255,2,252,63,79,95,0,111,255,228,2,248,63,79,15,0,191,254,0,3,244,63,95,31,128,63,208,0,3,240,63,191,255,192,57,0,0,11,240,63,191,255,208,0,0,0,15,224,63,105,2,64,0,0,0,63,192,63,64,2,0,0,0,0,255,128,63,64,3,208,0,0,7,255,0,47,64,7,224,0,0,191,252,0,47,255,255,208,0,0,127,224,0,31,255,255,192,0,0,47,64,0,6,255,254,0,0,0,0,0,0,0,0,0,0, + // 0x586b 填 + 107,88,34,35,59,36,1,252,0,21,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,1,255,255,255,255,255,192,0,63,1,255,255,255,255,255,192,0,63,1,255,255,255,255,255,192,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,11,255,255,255,244,0,63,255,254,11,255,255,255,244,0,63,255,254,11,208,0,3,244,0,63,255,254,11,208,0,3,244,0,0,63,0,11,255,255,255,244,0,0,63,0,11,255,255,255,244,0,0,63,0,11,208,0,3,244,0,0,63,0,11,208,0,3,244,0,0,63,0,11,255,255,255,244,0,0,63,0,11,255,255,255,244,0,0,63,0,11,208,0,3,244,0,0,63,0,11,208,0,3,244,0,0,63,11,11,255,255,255,244,0,0,63,255,11,255,255,255,244,0,0,63,255,64,0,0,0,0,0,2,255,254,0,0,0,0,0,0,111,255,235,255,255,255,255,255,208,191,254,11,255,255,255,255,255,224,63,208,11,255,255,255,255,255,224,61,0,0,0,16,0,8,0,0,0,0,0,1,255,0,127,64,0,0,0,0,11,253,0,127,224,0,0,0,1,191,240,0,11,253,0,0,0,15,255,128,0,1,255,128,0,0,11,248,0,0,0,63,208,0,0,2,144,0,0,0,10,0,0,0,0,0,0,0,0,0,0, + // 0x588a 墊 + 138,88,34,33,41,36,1,254,0,2,244,0,0,47,0,0,0,0,3,244,0,0,63,0,0,0,5,87,245,84,0,63,0,0,0,15,255,255,253,0,63,0,0,0,15,255,255,253,47,255,255,240,0,0,3,244,0,63,255,255,240,0,21,87,244,0,63,255,255,240,0,127,255,255,255,213,127,3,240,0,127,255,255,255,192,63,3,240,0,2,240,2,240,0,63,3,240,0,1,244,3,224,45,62,3,240,0,0,248,7,192,127,254,3,240,0,63,255,255,255,223,253,3,240,0,63,255,255,255,194,255,67,240,0,21,87,249,85,65,255,227,240,0,0,3,244,0,3,255,250,240,64,5,87,249,84,7,242,242,240,208,15,255,255,254,15,208,146,244,240,15,255,255,254,63,192,1,244,240,0,3,244,0,255,0,0,253,224,0,3,244,2,253,0,0,255,208,0,3,244,1,244,0,0,127,192,0,0,0,2,248,0,0,31,64,0,0,0,2,248,0,0,0,0,0,191,255,255,255,255,255,224,0,0,191,255,255,255,255,255,224,0,0,191,255,255,255,255,255,208,0,0,0,0,2,248,0,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,2,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192, + // 0x5916 外 + 22,89,34,34,50,36,1,253,0,0,164,0,0,3,244,0,0,0,0,254,0,0,3,244,0,0,0,0,253,0,0,3,244,0,0,0,2,252,0,0,3,244,0,0,0,3,248,0,0,3,244,0,0,0,3,248,0,0,3,244,0,0,0,11,255,255,248,3,244,0,0,0,15,255,255,252,3,244,0,0,0,31,255,255,252,3,244,0,0,0,63,192,3,255,3,244,0,0,0,127,64,3,255,195,244,0,0,0,255,0,7,255,211,244,0,0,2,252,0,11,251,243,244,0,0,7,252,0,15,227,255,244,0,0,15,254,0,15,208,255,244,0,0,63,255,208,31,192,127,244,0,0,255,175,248,63,128,47,244,0,0,47,7,255,127,64,15,248,0,0,8,0,255,255,0,3,255,0,0,0,0,47,254,0,3,255,208,0,0,0,11,252,0,3,255,248,0,0,0,3,248,0,3,255,255,64,0,0,15,240,0,3,246,255,240,0,0,47,208,0,3,244,127,224,0,0,63,192,0,3,244,11,128,0,0,255,64,0,3,244,1,0,0,3,254,0,0,3,244,0,0,0,15,248,0,0,3,244,0,0,0,63,240,0,0,3,244,0,0,1,255,192,0,0,3,244,0,0,15,255,0,0,0,3,244,0,0,47,248,0,0,0,3,244,0,0,11,208,0,0,0,3,244,0,0,2,0,0,0,0,3,244,0,0, + // 0x591a 多 + 26,89,32,35,24,36,2,252,0,0,0,46,64,0,0,0,0,0,0,191,192,0,0,0,0,0,2,255,0,0,0,0,0,0,11,255,255,255,224,0,0,0,127,255,255,255,244,0,0,2,255,255,255,255,224,0,0,47,253,0,0,63,192,0,6,255,252,0,0,255,64,0,63,255,255,128,3,253,0,0,31,244,127,244,15,248,0,0,11,64,11,254,127,224,0,0,0,0,1,255,255,64,0,0,0,0,0,127,253,64,0,0,0,0,2,255,231,252,0,0,0,0,127,255,79,244,0,0,0,27,255,244,127,224,0,0,26,255,255,66,255,255,255,248,127,255,224,15,255,255,255,253,47,249,0,191,255,255,255,252,25,0,11,255,128,0,11,244,0,0,191,253,0,0,31,240,0,31,255,255,64,0,63,192,0,127,253,191,240,0,255,64,0,31,144,31,253,3,254,0,0,8,0,2,255,159,248,0,0,0,0,0,127,255,224,0,0,0,0,0,31,255,64,0,0,0,0,0,191,252,0,0,0,0,0,27,255,224,0,0,0,0,22,255,254,0,0,0,0,91,255,255,224,0,0,0,2,255,255,249,0,0,0,0,0,255,254,64,0,0,0,0,0,186,64,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5920 夠 + 32,89,33,34,50,36,1,253,0,3,224,0,0,164,0,0,0,0,7,240,0,0,252,0,0,0,0,15,192,0,1,248,0,0,0,0,63,234,168,3,244,0,0,0,0,191,255,254,7,240,0,0,0,2,255,255,252,11,255,255,255,128,7,244,1,252,15,255,255,255,128,47,208,3,244,47,255,255,255,128,127,132,11,240,127,0,0,31,128,30,62,31,208,254,0,0,47,64,4,127,255,130,252,0,0,47,64,0,31,255,7,248,0,0,47,64,0,7,252,11,251,255,252,47,64,0,47,240,1,219,255,252,47,64,1,255,255,0,11,234,252,47,64,31,254,254,0,11,192,124,47,64,47,245,252,0,11,192,124,47,64,15,131,255,255,75,192,124,47,64,4,15,255,255,203,192,124,47,64,0,63,255,255,139,192,124,63,64,1,255,0,63,11,192,124,63,0,11,248,0,191,11,192,124,63,0,63,225,0,253,11,234,252,63,0,47,79,195,252,11,255,252,63,0,8,15,251,240,11,255,252,63,0,0,2,255,208,11,192,0,63,0,0,0,255,128,11,192,0,63,0,0,3,254,0,6,128,0,127,0,0,31,248,0,0,0,0,190,0,1,255,224,0,0,0,0,253,0,47,255,64,0,0,3,255,252,0,63,248,0,0,0,1,255,248,0,47,128,0,0,0,0,255,224,0,8,0,0,0,0,0,0,0,0, + // 0x5927 大 + 39,89,32,34,16,36,2,253,0,0,0,15,224,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,85,85,85,111,229,85,85,85,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,0,0,0,63,252,0,0,0,0,0,0,127,253,0,0,0,0,0,0,191,254,0,0,0,0,0,0,255,191,0,0,0,0,0,1,254,127,64,0,0,0,0,2,252,63,192,0,0,0,0,3,252,31,224,0,0,0,0,11,244,15,240,0,0,0,0,31,240,11,252,0,0,0,0,63,208,3,253,0,0,0,0,191,192,0,255,64,0,0,2,255,0,0,191,208,0,0,11,253,0,0,63,244,0,0,47,248,0,0,15,253,0,0,255,224,0,0,3,255,128,7,255,128,0,0,0,255,240,127,254,0,0,0,0,63,254,255,244,0,0,0,0,15,254,63,128,0,0,0,0,1,252,8,0,0,0,0,0,0,32, + // 0x5929 天 + 41,89,33,33,41,36,2,252,85,85,85,85,85,85,85,85,0,191,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,254,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,47,255,255,255,255,255,255,252,0,47,255,255,255,255,255,255,252,0,47,255,255,255,255,255,255,252,0,21,85,85,127,249,85,85,84,0,0,0,0,63,252,0,0,0,0,0,0,0,63,253,0,0,0,0,0,0,0,127,255,0,0,0,0,0,0,0,255,191,0,0,0,0,0,0,1,254,63,192,0,0,0,0,0,3,252,47,224,0,0,0,0,0,15,248,15,244,0,0,0,0,0,63,240,7,252,0,0,0,0,0,255,208,2,255,64,0,0,0,7,255,64,0,255,208,0,0,0,47,253,0,0,63,253,0,0,2,255,244,0,0,15,255,208,0,127,255,128,0,0,2,255,254,64,255,253,0,0,0,0,127,255,0,127,208,0,0,0,0,7,253,0,57,0,0,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0, + // 0x5931 失 + 49,89,33,35,59,36,2,252,0,4,0,15,224,0,0,0,0,0,15,208,15,224,0,0,0,0,0,47,192,15,224,0,0,0,0,0,63,192,15,224,0,0,0,0,0,63,128,15,224,0,0,0,0,0,191,0,15,224,0,0,0,0,0,255,255,255,255,255,255,192,0,1,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,192,0,11,249,85,95,229,85,85,64,0,15,240,0,15,224,0,0,0,0,47,208,0,15,224,0,0,0,0,127,192,0,15,224,0,0,0,0,127,64,0,15,208,0,0,0,0,10,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,85,85,85,111,229,85,85,85,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,0,0,0,127,252,0,0,0,0,0,0,0,255,255,0,0,0,0,0,0,1,254,127,64,0,0,0,0,0,3,252,63,192,0,0,0,0,0,11,248,31,240,0,0,0,0,0,47,240,15,252,0,0,0,0,0,191,208,3,254,0,0,0,0,3,255,128,0,255,208,0,0,0,47,254,0,0,63,248,0,0,2,255,244,0,0,31,255,144,0,111,255,192,0,0,2,255,254,64,255,253,0,0,0,0,127,255,64,127,208,0,0,0,0,7,254,0,41,0,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0, + // 0x59cb 始 + 203,89,34,34,50,36,1,253,0,30,128,0,0,57,0,0,0,0,31,192,0,0,127,64,0,0,0,47,128,0,0,191,0,0,0,0,63,64,0,0,254,0,0,0,0,63,0,0,0,253,0,0,0,0,63,0,0,2,252,0,0,0,0,127,0,0,3,248,1,128,0,0,190,0,0,3,244,15,208,0,127,255,255,240,7,240,11,240,0,127,255,255,240,11,224,3,248,0,127,255,255,240,15,192,1,253,0,1,248,3,240,31,192,0,191,0,2,244,7,241,127,235,255,255,128,3,240,7,235,255,255,255,255,192,3,240,11,235,255,255,255,255,224,7,240,15,215,250,165,64,11,240,11,224,15,192,0,0,0,3,128,15,208,31,192,0,0,0,0,0,15,192,47,128,0,0,0,0,0,31,192,63,64,127,255,255,255,0,47,244,63,0,127,255,255,255,0,63,255,191,0,127,255,255,255,0,63,255,254,0,127,0,0,127,0,6,47,252,0,127,0,0,127,0,0,7,255,0,127,0,0,127,0,0,11,255,192,127,0,0,127,0,0,15,255,240,127,0,0,127,0,0,63,203,252,127,0,0,127,0,0,255,66,244,127,0,0,127,0,3,254,0,160,127,255,255,255,0,31,252,0,0,127,255,255,255,0,47,224,0,0,127,255,255,255,0,15,128,0,0,127,0,0,127,0,5,0,0,0,126,0,0,42,0, + // 0x5a92 媒 + 146,90,34,34,50,36,1,253,0,62,0,0,252,0,7,240,0,0,63,0,0,252,0,7,240,0,0,127,0,0,252,0,7,240,0,0,126,0,0,252,0,7,240,0,0,190,0,127,255,255,255,255,208,0,253,0,127,255,255,255,255,208,0,252,0,127,255,255,255,255,192,0,252,0,0,252,0,7,240,0,191,255,255,192,252,0,7,240,0,191,255,255,192,254,85,91,240,0,191,255,255,192,255,255,255,240,0,3,244,31,128,255,255,255,240,0,3,240,31,128,252,0,7,240,0,7,240,47,64,252,0,7,240,0,7,224,63,64,252,0,7,240,0,11,208,63,0,255,255,255,240,0,15,192,63,0,255,255,255,240,0,15,192,127,0,170,191,234,160,0,31,192,190,0,0,47,128,0,0,31,128,253,0,0,47,128,0,0,47,224,253,0,0,47,128,0,0,63,253,252,127,255,255,255,255,208,63,255,248,127,255,255,255,255,208,10,127,244,127,255,255,255,255,208,0,31,244,0,3,255,248,0,0,0,15,253,0,15,255,254,0,0,0,47,255,0,63,255,191,128,0,0,63,255,192,255,47,143,224,0,0,255,31,135,252,47,135,252,0,3,253,7,47,244,47,130,255,64,15,248,2,255,208,47,128,191,224,63,224,0,255,0,47,128,31,192,31,64,0,56,0,47,128,7,0,9,0,0,0,0,47,128,0,0, + // 0x5b50 子 + 80,91,33,33,41,36,2,252,0,85,85,85,85,85,84,0,0,2,255,255,255,255,255,255,64,0,2,255,255,255,255,255,255,192,0,2,255,255,255,255,255,255,64,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,127,240,0,0,0,0,0,0,2,255,128,0,0,0,0,0,0,31,253,0,0,0,0,0,0,6,255,240,0,0,0,0,0,0,11,255,64,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,85,85,85,95,245,85,85,85,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,1,85,95,224,0,0,0,0,0,1,255,255,224,0,0,0,0,0,0,255,255,192,0,0,0,0,0,0,191,249,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5b58 存 + 88,91,34,34,50,36,1,253,0,0,0,185,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,3,253,0,0,0,0,0,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,0,0,47,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,2,253,11,255,255,255,240,0,0,7,252,11,255,255,255,252,0,0,15,240,11,255,255,255,240,0,0,47,224,0,0,0,63,192,0,0,191,192,0,0,1,255,0,0,2,255,192,0,0,7,252,0,0,11,255,192,0,0,63,224,0,0,63,255,192,0,0,63,128,0,0,191,255,192,0,0,63,64,0,0,63,95,194,255,255,255,255,255,208,44,31,194,255,255,255,255,255,208,0,31,194,255,255,255,255,255,208,0,31,192,0,0,63,64,0,0,0,31,192,0,0,63,64,0,0,0,31,192,0,0,63,64,0,0,0,31,192,0,0,63,64,0,0,0,31,192,0,0,63,64,0,0,0,31,192,0,0,63,64,0,0,0,31,192,0,0,127,64,0,0,0,31,192,1,255,255,0,0,0,0,31,192,0,255,255,0,0,0,0,31,192,0,255,248,0,0,0, + // 0x5b89 安 + 137,91,32,35,24,36,2,252,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,64,0,0,0,0,1,252,63,64,0,16,0,0,1,252,63,64,0,191,0,0,1,252,63,64,0,254,0,0,1,252,63,64,2,252,0,0,1,252,0,0,3,248,0,0,0,0,0,0,11,240,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,255,64,0,31,224,0,0,0,254,0,0,47,192,0,0,3,252,0,0,63,192,0,0,7,248,0,0,127,64,0,0,15,240,0,0,255,0,0,0,31,244,0,2,253,0,0,0,63,255,144,7,252,0,0,0,127,255,254,95,240,0,0,0,191,47,255,255,208,0,0,0,5,1,191,255,208,0,0,0,0,0,31,255,253,0,0,0,0,1,255,255,255,208,0,0,0,127,255,130,255,253,0,5,191,255,248,0,47,255,208,47,255,255,128,0,2,255,240,15,255,228,0,0,0,47,192,7,164,0,0,0,0,7,0,0,0,0,0,0,0,0,0, + // 0x5b8c 完 + 140,91,32,34,16,36,2,253,0,0,0,11,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,64,0,0,0,0,1,252,63,64,0,0,0,0,1,252,63,64,0,0,0,0,1,252,63,64,0,0,0,0,1,252,63,75,255,255,255,255,209,252,0,11,255,255,255,255,208,0,0,11,255,255,255,255,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,63,128,15,224,0,0,0,0,63,64,11,224,0,0,0,0,127,0,11,224,0,0,0,0,191,0,11,224,0,0,0,0,255,0,11,224,0,0,0,1,253,0,11,224,0,16,0,3,252,0,11,224,0,62,0,15,248,0,11,224,0,63,0,127,240,0,11,224,0,63,6,255,192,0,11,240,0,127,191,255,0,0,11,255,255,254,255,248,0,0,3,255,255,253,127,128,0,0,1,255,255,244,36,0,0,0,0,0,0,0, + // 0x5b9a 定 + 154,91,33,35,59,36,1,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,208,0,0,0,0,0,127,0,15,192,0,0,0,0,0,127,0,15,192,0,0,0,0,0,127,0,15,192,0,0,0,0,0,127,0,15,195,255,255,255,255,252,127,0,5,67,255,255,255,255,252,21,0,0,3,255,255,255,255,252,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,7,224,3,248,0,0,0,0,0,7,240,3,248,0,0,0,0,0,11,240,3,248,0,0,0,0,0,15,224,3,255,255,255,192,0,0,15,208,3,255,255,255,192,0,0,31,224,3,255,255,255,192,0,0,47,240,3,248,0,0,0,0,0,63,244,3,248,0,0,0,0,0,127,252,3,248,0,0,0,0,0,255,255,3,248,0,0,0,0,1,253,63,211,248,0,0,0,0,3,252,31,251,248,0,0,0,0,11,244,7,255,253,0,0,0,0,47,240,1,255,255,255,255,255,192,127,192,0,47,255,255,255,255,128,47,64,0,1,191,255,255,255,64,9,0,0,0,0,5,85,85,0,0,0,0,0,0,0,0,0,0, + // 0x5ba2 客 + 162,91,34,34,50,36,1,253,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,192,0,80,0,0,0,127,0,15,192,0,255,0,0,0,127,0,15,192,3,253,0,0,0,127,0,15,192,15,254,170,170,128,127,0,0,0,63,255,255,255,244,0,0,0,0,255,255,255,255,240,0,0,0,7,255,64,0,47,208,0,0,0,127,255,208,0,191,128,0,0,3,255,223,248,2,255,0,0,0,3,254,3,255,31,248,0,0,0,0,244,0,191,255,224,0,0,0,0,0,0,47,255,128,0,0,0,0,0,0,191,255,244,0,0,0,0,0,27,255,255,255,208,0,0,0,2,255,254,11,255,255,164,0,1,191,255,224,0,191,255,255,208,127,255,253,0,0,6,255,255,128,63,255,255,255,255,255,255,255,0,31,147,255,255,255,255,252,5,0,0,3,255,255,255,255,252,0,0,0,3,244,0,0,1,252,0,0,0,3,244,0,0,1,252,0,0,0,3,244,0,0,1,252,0,0,0,3,244,0,0,1,252,0,0,0,3,255,255,255,255,252,0,0,0,3,255,255,255,255,252,0,0,0,3,255,255,255,255,252,0,0,0,3,244,0,0,1,252,0,0, + // 0x5bb9 容 + 185,91,33,35,59,36,2,252,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,63,255,255,255,255,255,255,252,0,63,255,255,255,255,255,255,252,0,63,255,255,255,255,255,255,252,0,63,64,0,0,0,0,1,252,0,63,0,20,0,0,80,1,252,0,63,0,63,128,1,248,1,252,0,63,0,255,0,3,255,65,252,0,0,7,253,0,0,191,224,0,0,0,31,244,5,80,31,252,0,0,0,191,208,31,244,3,255,64,0,7,255,64,63,252,0,191,208,0,15,253,0,255,255,0,47,240,0,7,240,3,254,191,192,11,192,0,2,128,15,252,63,240,2,0,0,0,0,63,240,15,253,0,0,0,0,0,255,192,3,255,64,0,0,0,7,255,0,0,191,240,0,0,0,47,252,0,0,47,253,0,0,1,255,240,0,0,7,255,208,0,11,255,255,255,255,255,255,253,0,191,255,255,255,255,255,255,255,64,191,239,255,255,255,255,242,255,0,62,15,208,0,0,7,240,44,0,16,15,208,0,0,7,240,0,0,0,15,208,0,0,7,240,0,0,0,15,208,0,0,7,240,0,0,0,15,208,0,0,7,240,0,0,0,15,255,255,255,255,240,0,0,0,15,255,255,255,255,240,0,0,0,15,255,255,255,255,240,0,0,0,15,208,0,0,7,240,0,0,0,0,0,0,0,0,0,0,0, + // 0x5c0d 對 + 13,92,34,35,59,36,1,252,0,10,66,144,0,0,2,160,0,9,15,131,224,164,0,7,240,0,63,15,131,224,252,0,7,240,0,47,79,131,226,248,0,7,240,0,15,207,131,227,240,0,7,240,0,11,223,131,231,224,0,7,240,0,7,223,131,239,192,0,7,240,0,2,15,131,226,64,0,7,240,0,127,255,255,255,252,0,7,240,0,127,255,255,255,252,0,7,240,0,127,255,255,255,255,255,255,255,224,0,244,0,62,7,255,255,255,224,0,252,0,63,7,255,255,255,224,0,253,0,190,0,0,7,240,0,0,126,0,252,0,0,7,240,0,0,61,0,248,0,0,7,240,0,15,255,255,255,224,252,7,240,0,15,255,255,255,224,253,7,240,0,15,255,255,255,224,190,7,240,0,0,0,189,0,0,63,7,240,0,0,0,189,0,0,47,135,240,0,0,0,189,0,0,31,199,240,0,7,255,255,255,192,15,199,240,0,7,255,255,255,192,15,215,240,0,2,170,255,170,128,5,7,240,0,0,0,189,0,0,0,7,240,0,0,0,189,0,0,0,7,240,0,0,0,189,5,164,0,7,240,0,0,5,255,255,248,0,7,240,0,47,255,255,255,248,0,7,240,0,63,255,255,254,144,0,11,240,0,63,254,148,0,0,31,255,224,0,20,0,0,0,0,15,255,208,0,0,0,0,0,0,11,254,64,0,0,0,0,0,0,0,0,0,0, + // 0x5c0f 小 + 15,92,34,35,59,36,1,252,0,0,0,1,84,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,14,64,2,252,0,46,0,0,0,31,224,2,252,0,255,0,0,0,47,208,2,252,0,127,128,0,0,63,192,2,252,0,63,192,0,0,63,192,2,252,0,31,224,0,0,127,128,2,252,0,15,240,0,0,191,0,2,252,0,7,248,0,0,255,0,2,252,0,3,252,0,1,254,0,2,252,0,2,254,0,2,253,0,2,252,0,0,255,0,3,252,0,2,252,0,0,255,64,11,244,0,2,252,0,0,127,128,15,240,0,2,252,0,0,63,192,47,224,0,2,252,0,0,47,208,127,192,0,2,252,0,0,31,224,127,64,0,2,252,0,0,15,240,6,0,0,2,252,0,0,15,208,0,0,0,2,252,0,0,4,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,21,87,252,0,0,0,0,0,0,63,255,248,0,0,0,0,0,0,47,255,240,0,0,0,0,0,0,31,254,128,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5c31 就 + 49,92,34,35,59,36,1,252,0,0,252,0,0,7,224,0,0,0,0,252,0,0,7,224,80,0,0,0,252,0,0,7,227,240,0,0,0,252,0,0,7,226,252,0,0,0,252,0,0,7,224,254,0,63,255,255,255,240,7,224,127,64,63,255,255,255,240,7,224,47,192,63,255,255,255,240,7,224,15,128,0,0,0,0,0,7,224,4,0,0,0,0,0,0,11,240,0,0,3,255,255,255,79,255,255,255,208,7,255,255,255,79,255,255,255,208,7,255,255,255,79,255,255,255,208,7,240,0,47,64,11,224,0,0,7,240,0,47,64,15,228,0,0,7,240,0,47,64,15,254,0,0,7,240,0,47,64,15,254,0,0,7,255,255,255,64,15,254,0,0,7,255,255,255,64,31,254,0,0,7,255,255,255,64,47,254,0,0,0,0,253,0,0,63,254,0,0,0,0,253,4,0,63,190,0,0,3,240,253,63,0,127,126,0,0,7,240,253,63,0,191,126,0,0,11,224,253,47,128,254,126,0,0,15,208,253,15,194,252,126,1,0,15,192,253,15,211,248,126,2,208,47,128,253,7,235,244,126,2,240,63,64,253,2,95,240,126,2,240,191,0,253,0,63,192,126,3,224,44,0,252,0,255,128,127,71,224,0,127,252,3,255,0,63,255,208,0,63,252,2,252,0,63,255,192,0,63,224,0,112,0,15,255,64,0,0,0,0,0,0,0,0,0, + // 0x5de5 工 + 229,93,32,28,224,36,2,255,15,255,255,255,255,255,255,244,15,255,255,255,255,255,255,244,15,255,255,255,255,255,255,244,5,85,85,95,245,85,85,80,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,85,85,85,85,85, + // 0x5dee 差 + 238,93,33,34,50,36,1,253,0,0,20,0,0,3,144,0,0,0,1,252,0,0,7,248,0,0,0,0,255,0,0,15,240,0,0,0,0,127,64,0,31,208,0,0,0,0,63,192,0,63,192,0,0,7,255,255,255,255,255,255,253,0,7,255,255,255,255,255,255,253,0,7,255,255,255,255,255,255,253,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,127,255,255,255,255,255,224,0,0,127,255,255,255,255,255,224,0,0,127,255,255,255,255,255,224,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,253,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,3,254,255,255,255,255,224,0,0,3,250,255,255,255,255,240,0,0,11,242,255,255,255,255,240,0,0,15,240,0,15,224,0,0,0,0,47,208,0,15,224,0,0,0,0,63,192,0,15,224,0,0,0,0,255,64,0,15,224,0,0,0,2,254,0,0,15,224,0,0,0,7,252,0,0,15,224,0,0,0,47,244,255,255,255,255,255,255,0,127,224,255,255,255,255,255,255,0,31,128,255,255,255,255,255,255,0,6,0,0,0,0,0,0,0,0, + // 0x5df2 已 + 242,93,31,31,248,36,3,254,191,255,255,255,255,255,248,0,191,255,255,255,255,255,248,0,191,255,255,255,255,255,248,0,21,85,85,85,85,87,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,15,224,0,0,0,3,248,0,15,224,0,0,0,3,248,0,15,224,0,0,0,3,248,0,15,224,0,0,0,3,248,0,15,224,0,0,0,3,248,0,15,229,85,85,85,87,248,0,15,255,255,255,255,255,248,0,15,255,255,255,255,255,248,0,15,255,255,255,255,255,248,0,15,224,0,0,0,3,248,0,15,224,0,0,0,2,248,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,208,15,224,0,0,0,0,1,252,15,224,0,0,0,0,1,252,15,224,0,0,0,0,2,252,15,224,0,0,0,0,3,252,15,240,0,0,0,0,7,248,11,254,85,85,85,85,111,240,3,255,255,255,255,255,255,224,1,255,255,255,255,255,255,192,0,43,255,255,255,255,249,0, + // 0x5e73 平 + 115,94,32,32,0,36,2,253,5,85,85,85,85,85,85,80,15,255,255,255,255,255,255,240,15,255,255,255,255,255,255,240,15,255,255,255,255,255,255,240,0,0,0,15,224,0,0,0,0,4,0,15,224,0,80,0,0,126,0,15,224,0,255,0,0,127,0,15,224,0,254,0,0,63,128,15,224,2,252,0,0,47,192,15,224,3,248,0,0,15,208,15,224,7,244,0,0,11,240,15,224,15,224,0,0,7,240,15,224,31,192,0,0,3,224,15,224,47,128,0,0,1,0,15,224,1,0,0,0,0,0,15,224,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,95,245,85,85,85,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0, + // 0x5e8a 床 + 138,94,34,34,50,36,1,253,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,255,0,0,0,0,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,248,0,0,0,0,0,0,0,2,248,0,0,11,240,0,0,0,2,248,0,0,11,240,0,0,0,2,248,0,0,11,240,0,0,0,2,248,0,0,11,240,0,0,0,2,248,0,0,11,240,0,0,0,2,248,191,255,255,255,255,255,192,2,248,191,255,255,255,255,255,192,2,248,191,255,255,255,255,255,192,2,248,0,0,127,253,0,0,0,3,248,0,0,191,255,0,0,0,3,244,0,1,255,255,128,0,0,3,244,0,3,255,255,208,0,0,3,244,0,11,251,251,240,0,0,3,240,0,47,219,243,252,0,0,7,240,0,127,203,241,255,0,0,7,240,1,255,11,240,191,192,0,11,224,7,253,11,240,47,240,0,15,208,31,244,11,240,15,253,0,15,208,191,224,11,240,3,255,128,31,195,255,128,11,240,0,255,224,63,194,253,0,11,240,0,47,128,63,64,180,0,11,240,0,7,0,191,0,0,0,11,240,0,0,0,62,0,0,0,11,240,0,0,0,8,0,0,0,11,224,0,0,0, + // 0x5ea6 度 + 166,94,33,35,59,36,1,252,0,0,0,0,190,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,248,0,0,0,0,0,0,0,2,248,0,63,0,0,252,0,0,2,248,0,63,0,0,252,0,0,2,249,170,255,234,171,255,170,64,2,249,255,255,255,255,255,255,128,2,249,255,255,255,255,255,255,128,2,248,0,63,0,0,252,0,0,2,248,0,63,0,0,252,0,0,2,248,0,63,0,0,252,0,0,2,244,0,63,170,170,252,0,0,2,244,0,63,255,255,252,0,0,3,244,0,63,255,255,252,0,0,3,244,0,0,0,0,0,0,0,3,240,0,0,0,0,0,0,0,3,240,255,255,255,255,255,224,0,3,240,255,255,255,255,255,240,0,3,240,170,191,170,170,191,224,0,7,240,0,255,0,0,127,192,0,11,224,0,63,192,1,255,0,0,15,208,0,31,244,11,252,0,0,15,192,0,7,255,127,240,0,0,31,192,0,0,255,255,128,0,0,63,128,0,6,255,255,144,0,0,63,64,22,255,255,255,255,148,0,191,3,255,255,248,31,255,255,192,126,2,255,254,0,0,191,255,128,8,1,249,0,0,0,1,111,0,0,0,0,0,0,0,0,0,0, + // 0x5ee2 廢 + 226,94,34,35,59,36,1,252,0,0,0,0,190,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,3,255,255,255,255,255,255,255,192,3,255,255,255,255,255,255,255,192,3,255,255,255,255,255,255,255,192,3,240,0,0,0,84,0,0,0,3,240,191,255,244,189,15,128,0,3,240,191,255,244,63,127,64,0,3,240,21,91,240,31,252,0,0,3,240,48,15,208,15,224,46,0,3,240,254,63,128,7,244,255,0,3,240,127,255,0,1,255,248,0,3,240,15,252,0,0,127,208,0,3,240,31,244,0,85,127,248,0,3,241,255,255,194,255,255,255,208,3,255,255,255,194,255,254,191,192,3,247,224,7,194,240,62,11,64,3,241,0,7,194,240,62,13,0,7,240,21,91,195,224,62,30,0,7,224,127,255,223,208,63,254,0,7,224,191,255,239,192,31,252,0,7,224,248,0,11,0,0,0,0,11,208,244,0,5,0,0,64,0,15,209,255,255,207,255,255,240,0,15,195,255,255,207,255,255,240,0,15,194,229,95,193,240,11,208,0,31,128,0,15,193,248,31,192,0,47,64,0,15,128,190,127,0,0,63,64,0,31,64,47,252,0,0,127,0,0,47,64,47,254,0,0,190,0,21,127,7,255,255,249,64,125,0,63,254,63,248,31,255,64,12,0,63,248,30,64,0,191,0,0,0,0,0,0,0,0,0,0, + // 0x5efa 建 + 250,94,34,35,59,36,1,252,0,0,0,0,0,168,0,0,0,0,0,0,0,0,252,0,0,0,127,255,224,0,0,252,0,0,0,127,255,240,63,255,255,255,252,0,127,255,208,63,255,255,255,252,0,0,31,192,42,170,254,171,252,0,0,63,128,0,0,252,1,252,0,0,63,6,170,170,254,171,254,144,0,191,11,255,255,255,255,255,208,0,253,11,255,255,255,255,255,208,1,252,0,0,0,252,1,252,0,3,248,0,0,0,252,1,252,0,7,240,0,42,170,254,171,252,0,15,255,253,127,255,255,255,252,0,31,255,252,127,255,255,255,252,0,63,255,252,0,0,252,0,0,0,47,0,252,0,0,252,0,0,0,0,1,252,106,170,254,170,168,0,1,2,248,191,255,255,255,252,0,31,66,244,191,255,255,255,252,0,15,195,240,0,0,252,0,0,0,11,215,240,0,0,252,0,0,0,7,251,226,170,170,254,170,170,64,3,255,211,255,255,255,255,255,128,1,255,195,255,255,255,255,255,128,0,191,128,0,0,252,0,0,0,0,127,208,0,0,252,0,0,0,0,255,248,0,0,252,0,0,0,2,255,255,144,0,168,0,0,0,7,252,255,255,149,0,0,0,0,31,240,47,255,255,255,255,255,208,127,208,1,255,255,255,255,255,192,47,64,0,5,191,255,255,255,128,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5f15 引 + 21,95,29,35,24,36,2,252,0,0,0,0,0,0,5,0,0,0,0,0,0,0,63,128,31,255,255,255,0,0,63,128,31,255,255,255,0,0,63,128,31,255,255,255,0,0,63,128,0,0,0,63,0,0,63,128,0,0,0,63,0,0,63,128,0,0,0,63,0,0,63,128,0,0,0,63,0,0,63,128,0,0,0,63,0,0,63,128,7,255,255,255,0,0,63,128,11,255,255,255,0,0,63,128,11,255,255,255,0,0,63,128,15,208,0,0,0,0,63,128,15,208,0,0,0,0,63,128,15,192,0,0,0,0,63,128,31,192,0,0,0,0,63,128,47,192,0,0,0,0,63,128,47,255,255,255,64,0,63,128,63,255,255,255,64,0,63,128,63,255,255,255,0,0,63,128,127,0,0,127,0,0,63,128,26,0,0,127,0,0,63,128,0,0,0,127,0,0,63,128,0,0,0,191,0,0,63,128,0,0,0,190,0,0,63,128,0,0,0,254,0,0,63,128,0,0,0,253,0,0,63,128,0,0,1,253,0,0,63,128,0,0,2,252,0,0,63,128,0,149,91,252,0,0,63,128,0,191,255,244,0,0,63,128,0,127,255,240,0,0,63,128,0,63,254,64,0,0,63,128,0,0,0,0,0,0,0,0, + // 0x5f85 待 + 133,95,34,34,50,36,1,253,0,1,128,0,0,106,0,0,0,0,3,248,0,0,127,0,0,0,0,11,244,0,0,127,0,0,0,0,47,224,0,0,127,0,0,0,0,127,192,0,0,191,0,0,0,2,255,0,63,255,255,255,255,0,11,252,0,63,255,255,255,255,0,63,240,0,63,255,255,255,255,0,63,192,0,0,0,127,0,0,0,30,0,252,0,0,127,0,0,0,4,2,252,0,0,127,0,0,0,0,7,244,0,0,191,0,0,0,0,15,243,255,255,255,255,255,224,0,63,195,255,255,255,255,255,224,0,255,131,255,255,255,255,255,224,3,255,128,0,0,0,47,192,0,31,255,128,0,0,0,47,192,0,191,255,128,0,0,0,47,192,0,127,95,131,255,255,255,255,255,208,61,31,131,255,255,255,255,255,208,16,31,131,255,255,255,255,255,208,0,31,128,0,0,0,47,192,0,0,31,128,2,192,0,47,192,0,0,31,128,15,224,0,47,192,0,0,31,128,11,244,0,47,192,0,0,31,128,3,252,0,47,192,0,0,31,128,1,254,0,47,192,0,0,31,128,0,191,0,47,192,0,0,31,128,0,63,64,47,192,0,0,31,128,0,44,0,47,192,0,0,31,128,0,0,0,47,128,0,0,31,128,0,0,127,255,128,0,0,31,128,0,0,63,255,64,0,0,31,128,0,0,63,248,0,0, + // 0x5f8c 後 + 140,95,34,35,59,36,1,252,0,2,128,0,3,64,0,0,0,0,11,244,0,15,240,0,0,0,0,31,224,0,47,208,0,0,0,0,127,192,0,127,128,45,0,0,1,255,0,96,254,0,127,192,0,7,252,1,255,248,1,255,0,0,31,240,2,255,240,3,252,0,0,191,192,0,127,224,15,240,0,0,63,0,248,31,252,63,192,0,0,24,3,252,3,255,255,2,128,0,0,7,240,0,255,252,15,208,0,0,31,224,0,63,240,11,244,0,0,63,192,0,63,128,2,252,0,0,255,64,0,255,170,170,255,0,3,255,79,255,255,255,255,255,128,15,255,79,255,255,255,255,255,192,63,255,79,255,255,228,0,15,224,255,255,64,0,47,192,0,7,192,127,63,64,0,127,64,0,1,0,60,63,64,1,255,255,255,224,0,0,63,64,7,255,255,255,240,0,0,63,64,47,250,170,175,224,0,0,63,64,255,244,0,63,192,0,0,63,75,255,252,0,191,64,0,0,63,79,244,191,2,254,0,0,0,63,67,192,63,219,248,0,0,0,63,64,0,15,255,224,0,0,0,63,64,0,3,255,192,0,0,0,63,64,0,47,255,244,0,0,0,63,64,2,255,255,255,64,0,0,63,65,191,255,66,255,254,64,0,63,79,255,244,0,63,255,224,0,63,75,254,64,0,6,255,192,0,63,67,144,0,0,0,27,64,0,0,0,0,0,0,0,0,0, + // 0x5f91 徑 + 145,95,34,34,50,36,1,253,0,2,128,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,31,224,255,255,255,255,255,192,0,63,192,255,255,255,255,255,192,0,255,0,255,255,255,255,255,192,3,252,0,0,0,0,0,0,0,31,240,0,3,144,25,0,164,0,127,192,0,11,224,63,64,252,0,63,0,244,15,192,127,2,248,0,24,3,252,47,128,252,7,240,0,0,7,240,63,2,248,15,208,0,0,15,224,253,7,240,47,128,0,0,63,193,252,15,208,127,0,0,0,255,64,252,11,224,63,64,0,2,255,64,127,3,244,15,192,0,11,255,64,63,64,252,7,240,0,63,255,64,15,192,191,2,252,0,255,255,64,11,224,63,64,254,0,191,63,64,3,244,31,192,127,0,60,63,64,2,144,10,64,41,0,16,63,64,0,0,0,0,0,0,0,63,64,191,255,255,255,254,0,0,63,64,255,255,255,255,255,0,0,63,64,255,255,255,255,255,0,0,63,64,0,0,190,0,0,0,0,63,64,0,0,190,0,0,0,0,63,64,0,0,190,0,0,0,0,63,64,0,0,190,0,0,0,0,63,64,0,0,190,0,0,0,0,63,64,0,0,190,0,0,0,0,63,79,255,255,255,255,255,224,0,63,79,255,255,255,255,255,224,0,63,79,255,255,255,255,255,224,0,47,64,0,0,0,0,0,0, + // 0x5f9e 從 + 158,95,34,35,59,36,1,252,0,3,128,0,185,0,15,128,0,0,11,244,0,253,0,31,192,0,0,31,224,0,252,0,31,128,0,0,127,192,1,252,0,47,128,0,1,255,0,2,248,0,63,64,0,7,252,0,3,244,0,127,0,0,47,240,0,7,248,0,191,0,0,191,192,0,15,255,0,255,192,0,62,1,248,31,255,194,255,240,0,24,3,248,63,143,227,251,252,0,0,11,240,191,3,207,241,255,0,0,31,209,254,0,111,208,127,192,0,63,199,252,0,191,128,31,224,0,255,71,240,0,127,0,11,192,3,255,65,208,0,62,0,2,0,15,255,64,0,0,63,0,0,0,63,255,64,0,0,63,0,0,0,255,191,64,15,192,63,0,0,0,127,63,64,15,192,63,0,0,0,56,63,64,31,192,63,0,0,0,0,63,64,31,192,63,255,254,0,0,63,64,31,128,63,255,254,0,0,63,64,47,128,63,255,254,0,0,63,64,63,192,63,0,0,0,0,63,64,63,208,63,0,0,0,0,63,64,127,224,63,0,0,0,0,63,64,191,240,63,0,0,0,0,63,64,255,252,63,0,0,0,0,63,66,252,254,63,0,0,0,0,63,67,248,127,255,0,0,0,0,63,79,240,47,255,64,0,0,0,63,111,224,11,255,255,255,208,0,63,111,192,1,255,255,255,192,0,63,71,0,0,6,255,255,128,0,21,0,0,0,0,0,0,0, + // 0x5fa9 復 + 169,95,34,35,59,36,1,252,0,3,144,2,228,0,0,0,0,0,11,240,3,248,0,0,0,0,0,47,208,7,244,0,0,0,0,0,127,128,15,250,170,170,170,128,1,255,0,31,255,255,255,255,192,11,252,0,63,255,255,255,255,192,47,240,0,191,64,0,0,0,0,191,192,0,255,0,0,0,0,0,63,0,247,254,0,0,0,0,0,28,3,255,255,255,255,255,252,0,0,7,251,251,255,255,255,252,0,0,15,224,139,208,0,1,252,0,0,63,192,11,208,0,1,252,0,0,255,64,11,255,255,255,252,0,3,255,64,11,255,255,255,252,0,15,255,64,11,208,0,1,252,0,63,255,64,11,208,0,1,252,0,255,191,64,11,255,255,255,252,0,126,63,64,11,255,255,255,252,0,56,63,64,0,31,208,0,0,0,0,63,64,0,63,128,0,0,0,0,63,64,0,255,85,85,64,0,0,63,64,2,255,255,255,248,0,0,63,64,15,255,255,255,244,0,0,63,64,63,252,0,15,224,0,0,63,66,255,255,0,63,192,0,0,63,71,252,47,209,255,0,0,0,63,64,224,15,251,252,0,0,0,63,64,0,3,255,240,0,0,0,63,64,0,47,255,249,0,0,0,63,64,91,255,255,255,249,0,0,63,75,255,255,129,191,255,224,0,63,67,255,228,0,11,255,192,0,63,66,228,0,0,0,27,0,0,0,0,0,0,0,0,0,0, + // 0x5fae 微 + 174,95,34,34,50,36,1,253,0,29,0,15,64,0,184,0,0,0,63,192,15,64,0,252,0,0,0,191,0,15,64,0,252,0,0,1,254,31,15,67,193,252,0,0,7,248,31,15,67,193,248,0,0,15,240,31,15,67,194,244,0,0,63,192,31,15,67,195,244,0,0,191,0,31,15,67,195,255,255,208,61,15,239,15,67,199,255,255,224,16,31,239,15,67,203,255,255,224,0,63,159,255,255,223,208,63,0,0,127,31,255,255,239,208,63,0,0,254,31,255,255,255,224,62,0,3,253,0,0,0,127,224,126,0,11,253,0,0,0,255,240,125,0,31,253,0,0,0,253,240,188,0,63,253,63,255,255,244,240,252,0,255,253,63,255,255,224,244,252,0,189,253,63,255,255,208,249,248,0,56,253,2,240,125,0,190,244,0,16,253,2,240,125,0,127,240,0,0,253,3,240,125,0,63,240,0,0,253,3,240,125,0,63,224,0,0,253,3,240,125,0,47,192,0,0,253,3,224,125,0,31,192,0,0,253,7,224,126,184,63,208,0,0,253,11,208,191,248,191,240,0,0,253,15,194,255,245,255,244,0,0,253,31,129,254,3,249,252,0,0,253,63,64,144,15,240,255,0,0,253,255,0,0,127,192,63,208,0,253,60,0,0,255,0,31,240,0,253,20,0,0,188,0,7,192,0,189,0,0,0,32,0,1,64, + // 0x5fc3 心 + 195,95,34,34,50,36,1,253,0,0,0,144,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,11,255,224,0,0,0,0,0,0,1,255,254,0,0,0,0,0,0,0,11,255,224,0,0,0,0,0,0,0,191,253,0,0,0,0,0,0,0,31,255,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,31,0,0,1,228,15,208,0,0,127,128,0,1,252,15,208,0,0,47,208,0,2,252,15,208,0,0,15,240,0,2,248,15,208,0,0,7,248,0,3,248,15,208,0,0,3,252,0,3,244,15,208,0,0,1,254,0,7,240,15,208,0,0,0,255,0,11,240,15,208,0,0,0,127,128,15,224,15,208,0,0,0,63,192,31,208,15,208,0,0,0,47,208,47,192,15,208,0,0,208,15,224,127,128,15,208,0,0,252,15,240,255,0,15,208,0,0,252,11,208,126,0,15,208,0,1,252,1,0,4,0,15,208,0,1,252,0,0,0,0,15,208,0,2,248,0,0,0,0,15,240,0,7,244,0,0,0,0,15,255,255,255,240,0,0,0,0,7,255,255,255,224,0,0,0,0,1,191,255,255,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x6027 性 + 39,96,33,35,59,36,1,252,0,63,64,0,0,47,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,3,244,63,64,0,0,0,63,64,3,240,63,64,0,0,0,63,64,7,240,63,64,0,0,0,63,64,11,240,63,64,0,0,0,63,88,11,224,63,64,0,0,10,63,252,15,224,63,128,0,0,31,63,190,31,255,255,255,255,0,47,63,127,47,255,255,255,255,0,47,63,95,127,255,255,255,255,0,63,63,79,255,64,63,64,0,0,62,63,79,255,0,63,64,0,0,61,63,64,254,0,63,64,0,0,125,63,66,252,0,63,64,0,0,188,63,64,120,0,63,64,0,0,188,63,64,0,0,63,64,0,0,0,63,64,0,0,63,128,0,0,0,63,64,15,255,255,255,253,0,0,63,64,15,255,255,255,253,0,0,63,64,15,255,255,255,253,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,128,0,0,0,63,67,255,255,255,255,255,192,0,63,67,255,255,255,255,255,192,0,63,67,255,255,255,255,255,192,0,63,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6062 恢 + 98,96,34,35,59,36,1,252,0,63,0,31,64,0,0,0,0,0,63,0,31,64,0,0,0,0,0,63,0,31,64,0,0,0,0,0,63,0,47,64,0,0,0,0,0,63,3,255,255,255,255,255,208,0,63,3,255,255,255,255,255,208,0,63,103,255,255,255,255,255,208,10,63,248,31,64,0,0,0,0,31,63,188,31,64,3,240,0,0,31,63,61,31,64,3,240,0,0,31,63,46,31,64,3,240,0,0,46,63,31,47,64,3,240,0,0,46,63,15,47,73,3,240,11,128,61,63,14,47,79,131,240,15,192,60,63,0,47,79,67,240,31,128,188,63,0,47,79,3,240,47,0,248,63,0,47,95,3,240,63,0,16,63,0,47,47,3,240,125,0,0,63,0,63,62,3,240,188,0,0,63,0,63,61,3,244,248,0,0,63,0,63,124,7,244,96,0,0,63,0,63,4,11,248,0,0,0,63,0,126,0,15,252,0,0,0,63,0,190,0,31,189,0,0,0,63,0,253,0,63,63,0,0,0,63,0,252,0,127,47,64,0,0,63,1,252,0,253,15,192,0,0,63,2,248,2,252,15,224,0,0,63,3,240,11,240,7,248,0,0,63,11,240,47,224,2,254,0,0,63,15,209,255,128,0,255,192,0,63,47,195,254,0,0,63,224,0,63,15,66,248,0,0,15,192,0,63,2,0,208,0,0,2,64,0,0,0,0,0,0,0,0,0, + // 0x606f 息 + 111,96,33,34,50,36,2,253,0,0,0,15,240,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,31,192,0,0,0,0,0,63,255,255,255,255,253,0,0,0,63,255,255,255,255,253,0,0,0,63,170,170,170,170,253,0,0,0,63,64,0,0,0,253,0,0,0,63,64,0,0,0,253,0,0,0,63,255,255,255,255,253,0,0,0,63,255,255,255,255,253,0,0,0,63,149,85,85,85,253,0,0,0,63,64,0,0,0,253,0,0,0,63,64,0,0,0,253,0,0,0,63,255,255,255,255,253,0,0,0,63,255,255,255,255,253,0,0,0,63,149,85,85,85,253,0,0,0,63,64,0,0,0,253,0,0,0,63,64,0,0,0,253,0,0,0,63,170,170,170,170,253,0,0,0,63,255,255,255,255,253,0,0,0,63,255,255,255,255,253,0,0,0,0,0,9,0,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,224,0,8,0,0,3,224,127,11,248,0,190,0,0,3,240,127,2,254,0,191,128,0,11,240,127,0,255,0,63,224,0,15,208,127,0,56,0,15,244,0,47,192,127,0,0,30,3,252,0,127,128,127,0,0,31,128,255,0,255,0,127,0,0,63,128,191,64,253,0,63,255,255,255,64,63,64,36,0,47,255,255,255,0,24,0,0,0,11,255,255,248,0,0,0, + // 0x61b6 憶 + 182,97,34,34,50,36,1,253,0,63,0,0,0,63,0,0,0,0,63,0,0,0,63,0,0,0,0,63,0,21,85,191,149,85,0,0,63,0,127,255,255,255,255,0,0,63,0,127,255,255,255,255,0,0,63,0,0,252,0,15,192,0,0,63,96,0,189,0,31,128,0,10,63,248,0,126,0,47,64,0,31,63,188,0,63,0,63,0,0,31,63,62,255,255,255,255,255,208,31,63,47,255,255,255,255,255,208,46,63,31,170,170,170,170,170,144,46,63,15,0,0,0,0,0,0,61,63,9,15,255,255,255,253,0,60,63,0,15,255,255,255,253,0,124,63,0,15,192,0,0,189,0,248,63,0,15,192,0,0,189,0,16,63,0,15,255,255,255,253,0,0,63,0,15,255,255,255,253,0,0,63,0,15,192,0,0,189,0,0,63,0,15,192,0,0,189,0,0,63,0,15,255,255,255,253,0,0,63,0,15,255,255,255,253,0,0,63,0,0,1,248,0,0,0,0,63,0,0,1,255,0,0,0,0,63,0,36,42,127,193,224,0,0,63,0,126,63,11,211,244,0,0,63,0,189,63,2,65,253,0,0,63,0,252,63,0,4,191,0,0,63,1,252,63,0,11,191,128,0,63,3,244,47,64,15,207,192,0,63,15,240,47,255,255,139,224,0,63,7,192,31,255,255,3,64,0,63,0,0,2,170,168,0,0, + // 0x61c9 應 + 201,97,34,35,59,36,1,252,0,0,0,0,190,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,3,255,255,255,255,255,255,255,192,3,255,255,255,255,255,255,255,192,3,255,255,255,255,255,255,255,192,3,240,2,224,15,128,184,0,0,3,240,3,240,47,128,252,0,0,3,240,11,224,63,2,248,0,0,3,240,31,192,255,255,255,255,0,3,240,63,65,255,255,255,255,0,3,240,255,67,252,3,240,0,0,3,243,255,79,252,3,240,0,0,3,255,255,127,255,255,255,252,0,3,255,255,111,255,255,255,252,0,3,251,95,68,188,3,240,0,0,3,241,31,64,191,255,255,252,0,3,240,31,64,191,255,255,252,0,3,240,31,64,188,3,240,0,0,7,240,31,64,188,3,240,0,0,7,224,31,64,191,255,255,255,128,7,224,31,64,191,255,255,255,128,7,224,31,64,56,0,0,0,0,11,208,0,0,255,64,0,0,0,15,208,0,0,127,240,0,0,0,15,192,36,10,135,253,7,192,0,15,192,63,15,192,252,15,240,0,31,128,190,15,192,32,3,248,0,47,128,252,15,192,0,81,253,0,63,66,252,15,192,0,188,191,0,127,7,244,15,192,0,252,63,192,190,15,224,15,255,255,252,15,208,124,3,128,11,255,255,244,11,64,8,0,0,1,170,170,128,0,0,0,0,0,0,0,0,0,0,0, + // 0x6210 成 + 16,98,34,35,59,36,1,252,0,0,0,0,15,224,96,0,0,0,0,0,0,15,225,254,0,0,0,0,0,0,15,225,255,192,0,0,0,0,0,15,224,47,244,0,0,0,0,0,15,224,7,252,0,0,0,0,0,15,224,0,240,0,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,253,85,85,91,245,85,85,64,2,252,0,0,7,240,0,0,0,2,252,0,0,7,240,0,0,0,2,252,0,0,3,240,1,228,0,2,252,0,0,3,244,3,252,0,2,255,255,255,3,244,3,244,0,2,255,255,255,3,248,11,240,0,2,255,255,255,2,248,15,224,0,2,252,0,127,2,252,31,192,0,2,252,0,127,1,252,63,192,0,2,252,0,127,0,253,127,64,0,2,252,0,127,0,254,255,0,0,2,252,0,127,0,255,253,0,0,3,248,0,190,0,191,248,0,0,3,248,0,190,0,127,240,0,0,3,244,0,190,0,63,208,5,0,7,244,0,253,0,191,192,11,128,11,241,255,253,1,255,208,11,208,11,240,255,252,11,255,240,11,208,15,224,191,224,63,255,248,15,192,47,208,0,2,255,211,254,31,192,63,192,0,31,255,1,255,255,128,127,64,0,15,248,0,127,255,0,47,0,0,3,208,0,15,253,0,9,0,0,1,0,0,0,80,0,0,0,0,0,0,0,0,0,0, + // 0x6236 戶 + 54,98,30,34,16,36,1,253,0,0,0,0,0,0,176,0,0,0,0,0,0,111,252,0,0,0,0,1,175,255,255,0,0,20,22,255,255,255,228,0,0,47,255,255,255,228,0,0,0,47,255,254,144,0,0,0,0,47,233,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,255,255,255,255,255,208,0,47,255,255,255,255,255,208,0,47,255,255,255,255,255,208,0,47,192,0,0,0,15,208,0,47,192,0,0,0,15,208,0,47,128,0,0,0,15,208,0,47,128,0,0,0,15,208,0,47,128,0,0,0,15,208,0,63,128,0,0,0,15,208,0,63,255,255,255,255,255,208,0,63,255,255,255,255,255,208,0,63,255,255,255,255,255,208,0,127,0,0,0,0,15,208,0,191,0,0,0,0,15,208,0,254,0,0,0,0,0,0,0,253,0,0,0,0,0,0,2,252,0,0,0,0,0,0,3,248,0,0,0,0,0,0,7,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,63,208,0,0,0,0,0,0,127,192,0,0,0,0,0,0,31,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0, + // 0x6240 所 + 64,98,34,34,50,36,1,253,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,189,0,47,255,255,255,192,0,31,255,128,47,255,255,255,196,7,255,255,64,47,255,255,255,207,255,255,224,0,0,0,0,0,15,255,249,0,0,0,0,0,0,15,253,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,11,255,255,255,15,208,0,0,0,11,255,255,255,15,208,0,0,0,11,255,255,255,15,208,0,0,0,11,224,0,127,15,224,0,0,0,11,224,0,127,15,255,255,255,224,11,224,0,127,15,255,255,255,224,11,224,0,127,15,255,255,255,224,11,224,0,127,15,208,7,240,0,11,255,255,255,15,208,7,240,0,11,255,255,255,15,192,7,240,0,11,255,255,255,15,192,7,240,0,11,224,0,0,31,192,7,240,0,11,224,0,0,47,192,7,240,0,11,208,0,0,47,128,7,240,0,15,208,0,0,63,64,7,240,0,15,208,0,0,127,0,7,240,0,15,192,0,0,191,0,7,240,0,31,192,0,0,253,0,7,240,0,31,192,0,2,252,0,7,240,0,47,128,0,3,248,0,7,240,0,63,64,0,11,240,0,7,240,0,191,0,0,47,224,0,7,240,0,254,0,0,63,192,0,7,240,0,124,0,0,15,64,0,7,240,0,8,0,0,1,0,0,7,240,0, + // 0x6247 扇 + 71,98,32,32,0,36,1,253,31,255,255,255,255,255,255,255,31,255,255,255,255,255,255,255,15,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,240,0,255,255,255,255,255,255,240,0,255,170,170,170,170,171,240,0,253,0,0,0,0,3,240,0,253,0,0,0,0,3,240,0,255,170,170,170,170,171,240,0,255,255,255,255,255,255,240,0,255,255,255,255,255,255,240,0,253,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,253,255,255,241,255,255,252,0,253,255,255,241,255,255,252,0,252,170,171,240,170,170,252,1,252,24,3,240,44,1,252,1,252,127,3,240,191,1,252,2,252,47,131,240,47,193,252,2,248,15,211,240,15,209,252,3,244,7,131,240,3,65,252,7,240,0,3,240,0,21,252,11,240,1,243,240,2,253,252,15,224,111,247,240,111,253,252,31,215,255,211,243,255,209,252,47,195,253,3,242,253,1,252,127,67,144,3,241,128,1,252,255,0,1,171,240,0,171,248,45,0,0,255,224,0,191,244,4,0,0,255,128,0,63,208, + // 0x624b 手 + 75,98,32,35,24,36,2,252,0,0,0,0,0,0,104,0,0,0,0,0,22,191,254,0,0,5,90,191,255,255,255,64,11,255,255,255,255,255,228,0,7,255,255,255,254,80,0,0,3,255,169,95,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,15,240,0,0,0,11,255,255,255,255,255,255,240,11,255,255,255,255,255,255,240,11,255,255,255,255,255,255,240,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,95,245,85,85,85,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,1,64,31,224,0,0,0,0,3,255,255,224,0,0,0,0,2,255,255,192,0,0,0,0,0,255,249,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6253 打 + 83,98,34,34,50,36,1,253,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,15,255,255,255,255,224,0,15,192,15,255,255,255,255,224,0,15,192,15,255,255,255,255,224,0,15,192,5,85,85,254,85,64,63,255,255,240,0,0,253,0,0,63,255,255,240,0,0,253,0,0,63,255,255,240,0,0,253,0,0,0,31,208,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,214,240,0,0,253,0,0,0,31,255,240,0,0,253,0,0,6,255,255,240,0,0,253,0,0,127,255,254,64,0,0,253,0,0,63,255,208,0,0,0,253,0,0,63,175,192,0,0,0,253,0,0,20,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,0,253,0,0,0,15,192,0,0,1,253,0,0,0,31,192,0,47,255,253,0,0,15,255,192,0,31,255,252,0,0,15,255,128,0,15,255,240,0,0,7,249,0,0,6,165,0,0,0, + // 0x6279 批 + 121,98,34,34,50,36,1,253,0,63,0,42,0,2,160,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,127,255,253,63,64,7,240,0,0,127,255,253,63,64,7,240,4,0,127,255,253,63,64,7,240,31,0,0,127,0,63,64,7,240,127,128,0,63,0,63,64,7,241,255,128,0,63,0,63,255,215,247,254,0,0,63,0,63,255,215,255,244,0,0,63,0,63,255,215,255,192,0,0,63,0,63,64,7,253,0,0,0,63,188,63,64,7,240,0,0,0,127,253,63,64,7,240,0,0,27,255,253,63,64,7,240,0,0,255,255,208,63,64,7,240,0,0,191,255,0,63,64,7,240,0,0,126,127,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,0,0,0,63,0,63,64,7,240,7,128,0,63,0,63,64,7,240,7,224,0,63,0,63,86,151,240,7,224,0,63,0,63,255,231,240,11,208,0,127,11,255,255,227,240,15,208,63,254,15,255,255,147,255,255,192,31,253,15,254,144,3,255,255,128,15,228,6,64,0,0,191,254,0, + // 0x6296 抖 + 150,98,34,35,59,36,1,252,0,47,128,0,0,0,47,128,0,0,47,128,0,0,0,47,128,0,0,47,128,0,16,0,47,128,0,0,47,128,0,126,0,47,128,0,0,47,128,0,255,208,47,128,0,0,47,128,0,47,248,47,128,0,0,47,128,0,7,254,47,128,0,63,255,255,192,0,253,47,128,0,63,255,255,192,0,36,47,128,0,63,255,255,192,0,0,47,128,0,0,47,128,0,0,0,47,128,0,0,47,128,1,64,0,47,128,0,0,47,128,3,244,0,47,128,0,0,47,128,11,254,0,47,128,0,0,47,128,2,255,208,47,128,0,0,47,128,64,127,244,47,128,0,0,47,223,192,11,240,47,128,0,0,47,255,192,1,192,47,128,0,27,255,255,192,0,0,47,128,0,191,255,249,0,0,0,47,128,0,127,255,192,0,0,0,47,239,208,63,175,128,0,0,6,191,255,208,16,47,128,0,107,255,255,255,224,0,47,128,63,255,255,255,249,64,0,47,128,63,255,255,191,128,0,0,47,128,47,250,64,47,128,0,0,47,128,21,0,0,47,128,0,0,47,128,0,0,0,47,128,0,0,47,128,0,0,0,47,128,0,0,47,128,0,0,0,47,128,0,0,47,128,0,0,0,47,128,0,47,255,128,0,0,0,47,128,0,15,255,0,0,0,0,47,128,0,15,248,0,0,0,0,47,128,0,0,0,0,0,0,0,0,0,0, + // 0x62bd 抽 + 189,98,33,35,59,36,1,252,0,47,64,0,0,47,64,0,0,0,47,64,0,0,47,64,0,0,0,47,64,0,0,47,64,0,0,0,47,64,0,0,47,64,0,0,0,47,64,0,0,47,64,0,0,0,47,64,0,0,47,64,0,0,0,47,64,0,0,47,64,0,0,127,255,255,0,0,47,64,0,0,127,255,255,47,255,255,255,255,192,127,255,255,47,255,255,255,255,192,0,47,128,47,255,255,255,255,192,0,47,64,47,128,63,128,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,159,111,64,47,64,47,192,0,63,255,111,64,47,64,47,192,27,255,255,175,255,255,255,255,192,255,255,248,47,255,255,255,255,192,191,255,128,47,255,255,255,255,192,126,127,64,47,128,47,128,47,192,16,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,64,47,64,47,192,0,47,64,47,255,255,255,255,192,0,47,64,47,255,255,255,255,192,0,63,64,47,255,255,255,255,192,47,255,64,47,128,0,0,47,192,31,255,0,47,64,0,0,47,192,15,248,0,47,64,0,0,26,128,0,0,0,0,0,0,0,0,0, + // 0x62d4 拔 + 212,98,34,35,59,36,1,252,0,47,64,0,31,192,16,0,0,0,47,64,0,31,192,125,0,0,0,47,64,0,31,192,255,192,0,0,47,64,0,31,192,47,244,0,0,47,64,0,31,192,7,254,0,0,47,64,0,31,192,0,254,0,0,47,64,0,31,192,0,44,0,127,255,255,0,31,192,0,0,0,127,255,255,127,255,255,255,255,192,127,255,255,127,255,255,255,255,192,106,191,234,127,255,255,255,255,192,0,47,64,0,47,128,0,0,0,0,47,64,0,47,128,0,0,0,0,47,64,0,63,192,0,64,0,0,47,64,0,63,208,2,248,0,0,47,64,0,63,224,3,244,0,0,47,135,64,63,240,3,240,0,0,47,255,64,127,240,7,240,0,6,255,255,128,191,248,11,224,0,191,255,253,0,254,252,15,208,0,191,255,128,0,252,189,31,192,0,127,191,64,1,252,127,47,192,0,32,47,64,2,248,63,127,64,0,0,47,64,3,244,31,255,0,0,0,47,64,7,240,15,254,0,0,0,47,64,15,224,7,252,0,0,0,47,64,31,208,7,252,0,0,0,47,64,63,192,15,255,64,0,0,47,64,191,64,63,255,208,0,0,47,65,254,0,255,95,244,0,0,63,67,252,7,254,7,255,64,47,255,79,244,47,248,1,255,224,31,255,11,208,47,208,0,47,192,15,248,2,128,7,0,0,3,64,0,0,0,0,0,0,0,0,0, + // 0x6309 按 + 9,99,34,35,59,36,1,252,0,47,64,0,0,63,0,0,0,0,47,64,0,0,63,64,0,0,0,47,64,0,0,63,64,0,0,0,47,64,0,0,63,64,0,0,0,47,64,0,0,63,64,0,0,0,47,64,63,255,255,255,255,192,0,47,64,63,255,255,255,255,192,127,255,255,127,255,255,255,255,192,127,255,255,127,0,0,0,15,192,127,255,255,127,1,252,0,15,192,0,47,128,63,2,252,0,15,192,0,47,64,63,3,248,0,15,192,0,47,64,0,3,240,0,0,0,0,47,64,0,7,240,0,0,0,0,47,64,0,15,224,0,0,0,0,47,64,127,255,255,255,255,224,0,47,70,191,255,255,255,255,224,0,47,255,255,255,255,255,255,224,1,191,255,128,63,64,7,240,0,191,255,254,0,127,0,15,240,0,191,255,128,0,254,0,15,224,0,127,191,64,0,252,0,31,208,0,36,47,64,2,252,0,47,192,0,0,47,64,3,255,64,63,64,0,0,47,64,7,255,248,255,0,0,0,47,64,11,255,255,253,0,0,0,47,64,0,65,255,252,0,0,0,47,64,0,0,63,255,64,0,0,47,64,0,1,255,255,240,0,0,47,64,0,31,255,47,253,0,0,63,64,6,255,248,7,255,128,47,255,65,255,255,128,0,191,208,31,255,0,255,244,0,0,31,128,15,248,0,121,0,0,0,2,0,0,0,0,0,0,0,0,0,0, + // 0x6389 掉 + 137,99,34,35,59,36,1,252,0,63,0,0,0,190,0,0,0,0,63,0,0,0,190,0,0,0,0,63,0,0,0,190,0,0,0,0,63,0,0,0,191,255,255,192,0,63,0,0,0,191,255,255,192,0,63,0,0,0,191,255,255,192,0,63,0,0,0,190,0,0,0,127,255,255,0,0,190,0,0,0,127,255,255,0,0,190,0,0,0,127,255,255,63,255,255,255,253,0,0,127,0,63,255,255,255,253,0,0,63,0,63,170,170,170,253,0,0,63,0,63,0,0,0,253,0,0,63,0,63,0,0,0,253,0,0,63,0,63,255,255,255,253,0,0,63,1,63,255,255,255,253,0,0,63,190,63,85,85,85,253,0,0,127,255,63,0,0,0,253,0,47,255,255,63,0,0,0,253,0,127,255,208,63,170,170,170,253,0,63,255,0,63,255,255,255,253,0,57,127,0,63,255,255,255,253,0,0,63,0,0,0,190,0,0,0,0,63,0,0,0,190,0,0,0,0,63,0,0,0,190,0,0,0,0,63,3,255,255,255,255,255,208,0,63,3,255,255,255,255,255,208,0,63,3,255,255,255,255,255,208,0,63,0,0,0,190,0,0,0,0,63,0,0,0,190,0,0,0,0,127,0,0,0,190,0,0,0,63,255,0,0,0,190,0,0,0,63,254,0,0,0,190,0,0,0,47,228,0,0,0,190,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x63a2 探 + 162,99,34,34,50,36,1,253,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,191,255,255,255,255,192,0,63,0,191,255,255,255,255,192,0,63,0,191,255,255,255,255,192,0,63,0,189,0,0,0,15,192,0,63,0,189,15,193,248,15,192,127,255,253,189,15,193,248,15,192,127,255,253,189,31,129,248,10,128,127,255,253,0,47,129,248,0,0,0,127,0,0,63,65,248,3,64,0,63,0,0,191,1,248,3,224,0,63,0,2,253,1,252,7,208,0,63,0,31,248,1,255,255,192,0,63,0,255,224,0,255,255,128,0,63,0,127,64,127,26,169,0,0,63,188,16,0,127,0,0,0,0,191,253,0,0,127,0,0,0,111,255,253,0,0,127,0,0,0,191,255,144,255,255,255,255,255,192,127,255,0,255,255,255,255,255,192,120,63,0,255,255,255,255,255,192,0,63,0,0,11,255,244,0,0,0,63,0,0,31,255,252,0,0,0,63,0,0,63,255,255,0,0,0,63,0,0,255,127,63,128,0,0,63,0,3,252,127,31,224,0,0,63,0,15,244,127,7,248,0,0,63,0,127,208,127,2,255,0,0,63,7,255,64,127,0,191,224,0,127,11,253,0,127,0,47,208,63,254,3,224,0,127,0,7,128,31,253,0,64,0,127,0,0,0,15,228,0,0,0,127,0,0,0, + // 0x63a5 接 + 165,99,34,35,59,36,1,252,0,47,64,0,0,127,0,0,0,0,47,64,0,0,127,0,0,0,0,47,64,0,0,127,0,0,0,0,47,64,0,0,127,0,0,0,0,47,64,191,255,255,255,255,64,0,47,64,191,255,255,255,255,64,0,47,64,127,255,255,255,255,64,0,47,128,0,252,0,15,192,0,127,255,254,0,253,0,31,192,0,127,255,254,0,126,0,63,64,0,127,255,254,0,127,0,63,0,0,0,47,64,0,63,0,126,0,0,0,47,66,255,255,255,255,255,208,0,47,67,255,255,255,255,255,208,0,47,67,255,255,255,255,255,208,0,47,64,0,7,244,0,0,0,0,47,174,0,11,240,0,0,0,0,63,255,0,15,208,0,0,0,27,255,255,255,255,255,255,255,208,255,255,230,255,255,255,255,255,208,191,255,66,255,255,255,255,255,208,126,47,64,0,253,0,31,192,0,0,47,64,1,252,0,47,192,0,0,47,64,3,248,0,63,64,0,0,47,64,7,244,0,127,0,0,0,47,64,15,255,128,254,0,0,0,47,64,31,255,255,252,0,0,0,47,64,6,159,255,248,0,0,0,47,64,0,0,255,254,0,0,0,47,64,0,7,255,255,224,0,0,63,64,5,191,253,191,253,0,47,255,71,255,255,224,11,255,64,15,255,3,255,249,0,0,191,0,15,248,2,249,0,0,0,28,0,0,0,0,0,0,0,0,0,0, + // 0x63a7 控 + 167,99,34,34,50,36,1,253,0,62,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,255,255,255,255,255,192,0,63,0,255,255,255,255,255,192,0,63,0,255,255,255,255,255,192,0,127,1,248,31,193,248,15,192,127,255,253,248,31,129,248,15,192,127,255,253,248,31,129,248,15,192,127,255,253,248,47,65,248,0,0,0,63,0,0,63,1,248,1,0,0,63,0,0,127,1,248,7,192,0,63,0,1,253,1,248,11,192,0,63,0,11,252,1,255,175,192,0,63,25,191,240,0,255,255,128,0,63,253,191,128,0,127,254,0,0,191,254,56,0,0,0,0,0,47,255,248,0,0,0,0,0,0,255,255,128,0,0,0,0,0,0,191,255,0,63,255,255,255,254,0,125,127,0,63,255,255,255,254,0,0,63,0,63,255,255,255,254,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,127,3,255,255,255,255,255,224,63,254,3,255,255,255,255,255,224,31,253,3,255,255,255,255,255,224,15,228,0,0,0,0,0,0,0, + // 0x63d0 提 + 208,99,34,35,59,36,1,252,0,126,0,0,0,0,0,0,0,0,126,0,15,255,255,255,252,0,0,126,0,15,255,255,255,252,0,0,126,0,15,213,85,86,252,0,0,126,0,15,192,0,0,252,0,0,126,0,15,192,0,0,252,0,0,126,0,15,255,255,255,252,0,127,255,254,15,255,255,255,252,0,127,255,254,15,213,85,85,252,0,127,255,254,15,192,0,0,252,0,0,127,0,15,192,0,0,252,0,0,126,0,15,255,255,255,252,0,0,126,0,15,255,255,255,252,0,0,126,0,5,85,85,85,84,0,0,126,0,0,0,0,0,0,0,0,126,0,0,0,0,0,0,0,0,126,24,255,255,255,255,255,192,0,127,253,255,255,255,255,255,192,6,255,254,170,170,255,170,170,128,191,255,248,0,0,127,0,0,0,191,255,0,11,128,127,0,0,0,126,190,0,15,192,127,0,0,0,0,126,0,15,192,127,170,168,0,0,126,0,31,192,127,255,252,0,0,126,0,47,192,127,255,252,0,0,126,0,63,192,127,0,0,0,0,126,0,63,224,127,0,0,0,0,126,0,191,244,127,0,0,0,0,126,0,253,252,127,0,0,0,0,126,2,252,63,191,0,0,0,0,126,7,244,31,255,255,255,224,63,254,15,240,2,255,255,255,208,47,252,47,192,0,27,255,255,192,31,228,7,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x63d2 插 + 210,99,33,34,50,36,1,253,0,62,0,0,0,0,0,0,0,0,63,0,0,0,0,22,248,0,0,63,0,1,90,191,255,253,0,0,63,0,127,255,255,255,254,0,0,63,0,63,255,255,233,64,0,0,63,0,42,85,127,0,0,0,0,63,0,0,0,63,0,0,0,127,255,253,0,0,63,0,0,0,127,255,254,255,255,255,255,255,192,127,255,254,255,255,255,255,255,192,0,127,1,255,255,255,255,255,192,0,63,0,0,0,63,0,0,0,0,63,0,0,0,63,0,0,0,0,63,0,0,4,63,0,0,0,0,63,0,0,62,63,0,0,0,0,63,0,182,255,255,63,255,64,0,63,124,191,254,191,63,255,64,0,127,253,191,208,63,47,255,64,111,255,253,190,0,63,0,47,64,191,255,144,189,0,63,0,47,64,127,191,0,189,0,63,0,47,64,32,63,0,191,253,63,47,255,64,0,63,0,191,253,63,47,255,64,0,63,0,191,253,63,47,255,64,0,63,0,189,0,63,0,47,64,0,63,0,189,0,63,0,47,64,0,63,0,189,0,63,0,47,64,0,63,0,189,0,63,0,47,64,0,63,0,189,0,63,0,47,64,0,63,0,191,255,255,255,255,64,0,127,0,191,255,255,255,255,64,63,254,0,191,255,255,255,255,64,31,253,0,189,0,0,0,47,64,15,228,0,125,0,0,0,47,64, + // 0x63db 換 + 219,99,34,35,59,36,1,252,0,62,0,0,58,0,0,0,0,0,63,0,0,127,0,0,0,0,0,63,0,0,254,0,0,0,0,0,63,0,1,255,255,244,0,0,0,63,0,3,255,255,252,0,0,0,63,0,15,250,171,248,0,0,0,63,0,47,208,3,240,0,0,127,255,254,255,128,11,224,0,0,127,255,255,255,0,15,192,0,0,127,255,255,255,255,255,255,255,0,0,127,0,191,255,255,255,255,0,0,63,0,63,175,235,250,191,0,0,63,0,63,7,195,224,63,0,0,63,0,63,11,195,224,63,0,0,63,0,63,15,67,224,63,0,0,63,4,63,63,3,255,255,0,0,63,189,63,253,1,255,255,0,1,191,253,63,176,0,0,63,0,111,255,253,63,0,0,0,63,0,191,255,144,63,0,126,0,63,0,127,255,0,42,0,189,0,42,0,120,63,0,0,0,189,0,0,0,0,63,3,255,255,255,255,255,192,0,63,3,255,255,255,255,255,192,0,63,2,255,255,255,255,255,192,0,63,0,0,3,255,192,0,0,0,63,0,0,7,255,224,0,0,0,63,0,0,15,231,244,0,0,0,63,0,0,63,194,254,0,0,0,63,0,2,255,64,255,208,0,0,127,0,47,252,0,63,253,0,63,254,11,255,224,0,11,255,208,31,253,11,255,0,0,1,255,128,15,228,3,208,0,0,0,11,0,0,0,0,0,0,0,0,0,0, + // 0x64c7 擇 + 199,100,34,35,59,36,1,252,0,63,0,0,0,0,0,0,0,0,63,0,21,85,85,85,85,0,0,63,0,63,255,255,255,255,64,0,63,0,63,255,255,255,255,64,0,63,0,62,11,192,248,31,64,0,63,0,62,11,192,248,31,64,0,63,0,62,11,192,248,31,64,127,255,253,63,255,255,255,255,64,127,255,253,63,255,255,255,255,64,127,255,253,21,85,127,85,85,0,0,127,0,0,0,63,0,0,0,0,63,0,21,85,191,85,85,0,0,63,0,47,255,255,255,255,0,0,63,0,47,255,255,255,255,0,0,63,0,0,0,63,0,0,0,0,63,4,0,0,63,0,0,0,0,63,254,255,255,255,255,255,224,1,191,255,255,255,255,255,255,224,127,255,254,170,254,170,175,250,144,191,255,128,0,252,0,15,192,0,127,255,0,0,190,0,47,128,0,121,63,0,0,63,0,63,0,0,0,63,0,255,255,255,255,255,192,0,63,0,255,255,255,255,255,192,0,63,0,170,170,191,170,170,128,0,63,0,0,0,63,0,0,0,0,63,0,0,0,63,0,0,0,0,63,0,63,255,255,255,255,0,0,63,0,63,255,255,255,255,0,0,63,0,42,170,191,170,170,0,0,127,0,0,0,63,0,0,0,63,254,0,0,0,63,0,0,0,31,253,0,0,0,63,0,0,0,15,228,0,0,0,63,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x64ca 擊 + 202,100,32,34,16,36,2,253,0,7,192,0,0,0,0,0,0,7,208,0,11,255,255,0,191,255,255,255,11,255,255,0,191,255,255,254,11,213,127,4,5,91,229,84,15,192,63,15,47,255,255,252,31,128,63,95,46,7,208,188,127,64,63,255,47,255,255,252,254,0,15,252,47,91,213,188,56,0,0,0,47,91,229,188,127,255,255,240,47,255,255,252,127,255,255,224,0,7,208,0,11,208,15,192,255,255,255,255,7,240,47,128,255,255,255,254,2,253,254,0,31,7,208,244,0,191,248,0,31,7,208,248,27,255,249,0,31,255,255,248,255,255,255,233,31,255,255,248,127,64,47,255,0,0,0,0,21,107,209,189,1,255,255,255,255,255,244,0,0,255,255,255,254,149,0,0,0,0,0,11,224,0,0,0,0,0,0,11,224,0,0,0,11,255,255,255,255,255,255,240,11,255,255,255,255,255,255,240,0,0,0,11,224,0,0,0,21,85,85,95,229,85,85,84,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,11,224,0,0,0,0,0,0,11,224,0,0,0,0,0,21,95,224,0,0,0,0,0,47,255,208,0,0,0,0,0,15,254,64,0,0,0, + // 0x64cb 擋 + 203,100,33,34,50,36,1,253,0,63,0,1,0,127,0,80,0,0,63,0,31,128,127,0,253,0,0,63,0,15,208,127,1,252,0,0,63,0,7,240,127,3,244,0,0,63,0,3,240,127,7,224,0,0,63,0,2,224,127,7,192,0,0,63,0,255,255,255,255,255,192,127,255,253,255,255,255,255,255,192,127,255,253,254,170,170,170,175,192,127,255,253,252,0,0,0,15,192,0,127,0,253,85,85,85,95,192,0,63,0,254,255,255,255,255,192,0,63,0,2,255,255,255,240,0,0,63,0,2,249,85,91,240,0,0,63,0,2,244,0,7,240,0,0,63,4,2,244,0,7,240,0,0,63,253,2,255,255,255,240,0,1,255,253,2,255,255,255,240,0,191,255,253,0,85,85,85,80,0,191,255,64,0,0,0,0,0,0,127,255,0,63,255,255,255,255,0,36,63,0,63,255,255,255,255,0,0,63,0,63,149,191,85,191,0,0,63,0,63,0,62,0,127,0,0,63,0,63,0,62,0,127,0,0,63,0,63,255,255,255,255,0,0,63,0,63,255,255,255,255,0,0,63,0,63,149,191,85,191,0,0,63,0,63,0,62,0,127,0,0,63,0,63,0,62,0,127,0,0,127,0,63,255,255,255,255,0,63,254,0,63,255,255,255,255,0,31,253,0,63,170,170,170,191,0,15,228,0,47,0,0,0,127,0, + // 0x64e0 擠 + 224,100,34,35,59,36,1,252,0,126,0,0,0,127,0,0,0,0,126,0,0,0,127,0,0,0,0,126,0,0,0,127,0,0,0,0,126,3,255,255,255,255,255,192,0,126,3,255,255,255,255,255,192,0,126,2,170,175,170,254,170,128,0,126,0,0,15,0,248,0,0,127,255,252,0,11,128,240,9,0,127,255,252,0,7,194,240,191,64,127,255,254,255,255,227,255,255,64,0,126,2,255,254,190,111,252,0,0,126,0,61,61,61,46,45,0,0,126,0,60,61,61,45,31,0,0,126,0,188,61,61,45,15,0,0,126,0,248,60,61,46,171,192,0,126,107,243,252,61,191,243,224,0,127,255,195,244,61,126,65,192,6,255,253,5,64,40,0,84,0,191,255,224,15,192,0,1,252,0,191,255,0,15,192,0,1,252,0,127,190,0,15,255,255,255,252,0,32,126,0,15,255,255,255,252,0,0,126,0,15,234,170,170,252,0,0,126,0,15,192,0,1,252,0,0,126,0,31,192,0,1,252,0,0,126,0,31,234,170,171,252,0,0,126,0,47,255,255,255,252,0,0,126,0,63,255,255,255,252,0,0,126,0,63,0,0,1,252,0,0,126,0,191,0,0,1,252,0,0,126,1,253,0,0,1,252,0,63,254,3,252,0,0,1,252,0,47,252,11,240,0,0,1,252,0,31,228,1,208,0,0,1,252,0,0,0,0,0,0,0,0,0,0, + // 0x6536 收 + 54,101,34,35,59,36,1,252,0,0,15,192,3,144,0,0,0,0,0,31,192,3,244,0,0,0,0,0,31,192,7,240,0,0,0,0,0,31,192,11,240,0,0,0,2,144,31,192,15,224,0,0,0,7,240,31,192,31,208,0,0,0,7,240,31,192,47,192,0,0,0,7,240,31,192,63,255,255,255,224,7,240,31,192,127,255,255,255,224,7,240,31,192,255,255,255,255,224,7,240,31,193,255,0,0,253,0,7,240,31,195,255,64,1,252,0,7,240,31,199,255,128,2,252,0,7,240,31,207,255,192,3,248,0,7,240,31,239,239,192,3,244,0,7,240,31,255,203,224,7,240,0,7,240,31,223,7,240,11,240,0,7,240,31,198,3,244,15,208,0,7,240,31,192,2,252,47,192,0,7,240,31,192,1,252,63,128,0,7,240,31,192,0,254,191,0,0,7,241,191,192,0,127,254,0,0,7,255,255,192,0,63,252,0,0,127,255,255,192,0,47,248,0,0,127,255,175,192,0,31,240,0,0,63,228,31,192,0,127,252,0,0,41,0,31,192,1,255,254,0,0,0,0,31,192,7,254,255,128,0,0,0,31,192,47,248,63,240,0,0,0,31,193,255,224,15,253,0,0,0,31,203,255,128,7,255,128,0,0,31,239,253,0,0,255,224,0,0,31,207,224,0,0,47,192,0,0,31,199,0,0,0,3,0,0,0,0,0,0,0,0,0,0, + // 0x653e 放 + 62,101,34,35,59,36,1,252,0,3,240,0,0,185,0,0,0,0,3,240,0,0,254,0,0,0,0,3,240,0,0,254,0,0,0,0,3,240,0,0,253,0,0,0,0,3,240,0,1,252,0,0,0,0,7,244,0,2,252,0,0,0,127,255,255,255,67,248,0,0,0,127,255,255,255,67,255,255,255,224,127,255,255,255,71,255,255,255,224,0,126,0,0,15,255,255,255,224,0,126,0,0,31,224,2,252,0,0,126,0,0,47,240,2,248,0,0,126,0,0,63,240,3,244,0,0,127,255,252,191,244,3,240,0,0,127,255,253,255,248,7,240,0,0,127,255,255,254,252,11,224,0,0,126,0,253,248,252,15,208,0,0,126,0,252,112,190,31,192,0,0,126,0,252,0,127,47,192,0,0,190,0,252,0,63,127,64,0,0,190,1,252,0,63,255,0,0,0,253,1,252,0,31,254,0,0,0,253,1,252,0,15,253,0,0,0,252,1,252,0,11,252,0,0,1,252,1,252,0,11,252,0,0,2,252,1,248,0,31,253,0,0,3,248,2,248,0,127,255,64,0,7,240,2,248,1,255,191,192,0,15,240,2,248,7,253,47,240,0,31,208,3,244,47,244,15,253,0,63,192,7,245,255,208,3,255,128,255,67,255,251,255,64,0,255,208,126,2,255,227,252,0,0,47,128,8,1,255,64,208,0,0,6,0,0,0,0,0,0,0,0,0,0, + // 0x6557 敗 + 87,101,34,35,59,36,1,252,0,0,0,0,0,249,0,0,0,10,170,170,168,0,253,0,0,0,11,255,255,252,1,252,0,0,0,11,255,255,252,2,252,0,0,0,11,208,0,252,3,248,0,0,0,11,208,0,252,3,244,0,0,0,11,208,0,252,7,244,0,0,0,11,208,0,252,11,255,255,255,224,11,250,170,252,15,255,255,255,224,11,255,255,252,31,255,255,255,224,11,255,255,252,63,192,2,248,0,11,208,0,252,127,208,3,248,0,11,208,0,252,255,224,3,244,0,11,208,0,254,255,240,7,240,0,11,208,0,255,255,240,11,240,0,11,255,255,255,247,244,15,224,0,11,255,255,255,242,252,15,208,0,11,250,170,253,193,252,31,192,0,11,208,0,252,0,254,63,192,0,11,208,0,252,0,191,63,128,0,11,208,0,252,0,127,191,0,0,11,208,0,252,0,63,255,0,0,11,255,255,252,0,31,253,0,0,11,255,255,252,0,15,252,0,0,6,170,170,168,0,15,248,0,0,0,100,1,64,0,47,252,0,0,0,254,15,208,0,127,255,0,0,1,252,11,240,1,255,255,192,0,3,248,3,248,11,253,63,240,0,11,240,1,253,63,244,15,253,0,31,224,0,191,255,208,3,255,208,63,192,0,59,255,64,0,255,224,127,0,0,1,248,0,0,47,128,13,0,0,0,208,0,0,3,0,0,0,0,0,0,0,0,0,0, + // 0x6574 整 + 116,101,33,33,41,36,2,254,0,3,240,0,0,120,0,0,0,0,3,240,0,0,254,0,0,0,255,255,255,255,128,252,0,0,0,255,255,255,255,130,252,0,0,0,85,87,245,85,3,255,255,255,0,0,3,240,0,11,255,255,255,0,63,255,255,255,31,250,175,250,0,63,255,255,255,63,224,11,208,0,63,3,240,63,255,240,15,192,0,62,3,240,63,253,252,47,128,0,63,3,240,63,56,190,63,0,0,63,255,255,255,0,63,254,0,0,63,255,255,255,0,31,252,0,0,0,63,254,0,0,15,248,0,0,0,255,255,208,0,127,254,0,0,7,251,251,253,2,255,255,208,0,63,211,240,254,127,252,47,254,0,255,67,240,45,255,224,7,255,64,120,3,240,0,126,0,0,190,0,0,1,80,0,16,0,0,8,0,10,170,170,170,170,170,170,160,0,15,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,240,0,0,0,0,11,224,0,0,0,0,0,26,64,11,224,0,0,0,0,0,47,128,11,250,170,168,0,0,0,47,128,11,255,255,253,0,0,0,47,128,11,255,255,253,0,0,0,47,128,11,224,0,0,0,0,0,47,128,11,224,0,0,0,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64, + // 0x6578 數 + 120,101,34,35,59,36,1,252,0,0,125,0,0,11,144,0,0,0,0,125,0,0,15,224,0,0,3,255,255,255,224,15,208,0,0,3,255,255,255,224,15,192,0,0,3,224,190,11,224,15,192,0,0,3,224,125,7,224,31,192,0,0,191,255,255,255,255,47,128,0,0,191,255,255,255,255,63,255,255,224,27,224,190,7,229,63,255,255,224,3,224,125,7,224,127,255,255,224,3,255,255,255,224,190,0,189,0,3,255,255,255,224,255,0,253,0,0,0,190,0,1,255,0,252,0,0,0,190,0,3,255,64,252,0,15,255,255,255,251,255,65,252,0,15,255,255,255,255,255,130,248,0,15,192,125,2,255,223,195,244,0,15,192,125,2,251,207,195,240,0,15,255,255,255,245,75,215,240,0,15,255,255,255,244,7,251,224,0,0,3,244,0,0,3,255,208,0,0,7,224,0,0,2,255,192,0,106,175,255,255,255,1,255,128,0,127,255,255,255,255,0,255,0,0,127,255,170,191,149,0,255,0,0,0,189,0,63,0,2,255,64,0,0,254,64,190,0,7,255,192,0,2,255,245,252,0,15,255,224,0,3,255,255,244,0,63,219,244,0,0,0,255,248,0,255,131,253,0,0,11,255,255,71,254,1,255,64,27,255,253,191,239,248,0,127,208,15,255,144,15,139,208,0,31,128,11,164,0,1,3,64,0,3,0,0,0,0,0,0,0,0,0,0, + // 0x6599 料 + 153,101,34,34,50,36,1,253,0,11,208,0,0,0,15,208,0,0,11,208,0,0,0,15,208,0,24,11,208,164,1,0,15,208,0,62,11,208,252,15,128,15,208,0,47,11,208,252,31,244,15,208,0,31,11,209,244,7,253,15,208,0,15,75,210,240,0,255,79,208,0,15,139,211,240,0,47,15,208,0,11,203,211,208,0,9,15,208,0,11,203,215,192,0,0,15,208,0,7,139,219,128,0,0,15,208,0,0,11,208,0,0,0,15,208,0,127,255,255,252,120,0,15,208,0,127,255,255,252,255,64,15,208,0,127,255,255,252,191,224,15,208,0,0,63,224,0,31,252,15,208,0,0,63,240,0,2,248,15,208,0,0,191,252,0,0,176,15,208,0,0,255,255,0,0,0,15,208,0,1,255,255,128,0,0,15,208,64,3,251,239,208,0,0,15,255,208,3,235,215,240,0,22,255,255,224,15,203,211,248,107,255,255,255,224,31,203,209,243,255,255,255,228,0,63,75,208,131,255,254,95,208,0,191,11,208,2,249,0,15,208,0,189,11,208,0,0,0,15,208,0,60,11,208,0,0,0,15,208,0,36,11,208,0,0,0,15,208,0,0,11,208,0,0,0,15,208,0,0,11,208,0,0,0,15,208,0,0,11,208,0,0,0,15,208,0,0,11,208,0,0,0,15,208,0,0,11,208,0,0,0,15,208,0, + // 0x659c 斜 + 156,101,34,34,50,36,1,253,0,2,253,0,0,0,3,240,0,0,3,255,64,0,0,3,240,0,0,7,255,208,0,0,3,240,0,0,15,255,244,0,180,3,240,0,0,47,203,253,2,253,3,240,0,0,127,130,255,64,255,67,240,0,0,255,0,191,192,63,211,240,0,3,252,0,47,240,15,247,240,0,11,244,0,15,192,3,247,240,0,47,224,0,3,64,0,195,240,0,191,255,255,254,0,0,3,240,0,255,255,255,254,0,0,3,240,0,61,255,255,254,2,192,3,240,0,0,0,253,0,15,244,3,240,0,0,0,253,0,3,254,3,240,0,0,0,253,0,0,191,195,240,0,63,255,255,255,224,47,227,240,0,63,255,255,255,224,11,131,240,0,63,255,255,255,224,1,3,240,0,0,0,253,0,0,0,3,240,64,0,0,253,0,0,0,3,255,208,3,224,253,46,0,1,191,255,224,3,240,253,63,5,191,255,255,224,7,224,253,47,95,255,255,248,0,11,208,253,31,207,255,231,240,0,15,192,253,15,207,164,3,240,0,47,128,253,11,224,0,3,240,0,63,64,253,3,240,0,3,240,0,191,0,253,3,224,0,3,240,0,125,0,253,1,0,0,3,240,0,8,0,253,0,0,0,3,240,0,0,191,252,0,0,0,3,240,0,0,63,252,0,0,0,3,240,0,0,63,224,0,0,0,3,240,0, + // 0x65b0 新 + 176,101,34,35,59,36,1,252,0,1,168,0,0,0,0,4,0,0,1,252,0,0,0,0,189,0,0,1,252,0,0,0,31,255,128,0,1,252,0,6,91,255,255,64,47,255,255,255,199,255,255,224,0,47,255,255,255,199,255,228,0,0,47,255,255,255,199,244,0,0,0,1,240,0,252,7,240,0,0,0,1,244,1,252,7,240,0,0,0,0,252,2,244,7,240,0,0,0,0,252,3,240,7,240,0,0,0,0,184,2,224,7,240,0,0,0,63,255,255,255,215,255,255,255,224,63,255,255,255,215,255,255,255,224,63,255,255,255,215,255,255,255,224,0,1,252,0,7,240,11,240,0,0,1,252,0,7,240,7,224,0,0,1,252,0,7,240,7,224,0,63,255,255,255,199,224,7,224,0,63,255,255,255,203,224,7,224,0,63,255,255,255,203,224,7,224,0,0,7,252,0,15,208,7,224,0,0,15,255,0,15,208,7,224,0,0,47,255,192,15,192,7,224,0,0,127,255,244,31,192,7,224,0,1,254,254,254,47,128,7,224,0,7,249,252,191,63,64,7,224,0,31,241,252,60,127,0,7,224,0,127,193,252,4,254,0,7,224,0,127,1,252,1,253,0,7,224,0,44,1,252,3,252,0,7,224,0,0,1,252,15,240,0,7,224,0,0,1,252,3,224,0,7,224,0,0,1,248,0,128,0,6,160,0,0,0,0,0,0,0,0,0,0, + // 0x65b7 斷 + 183,101,32,34,16,36,3,253,0,20,0,80,0,0,1,64,164,60,0,240,0,0,31,224,248,120,2,208,0,2,255,248,249,241,11,202,9,191,255,208,251,227,223,95,15,255,248,0,250,235,75,188,15,253,0,0,248,255,3,248,15,192,0,0,248,61,1,241,15,192,0,0,248,122,129,219,15,192,0,0,248,242,195,219,143,192,0,0,255,255,255,255,207,192,0,0,251,234,254,81,207,192,0,0,248,0,64,0,15,255,255,254,255,255,255,255,143,255,255,254,255,255,255,255,143,255,255,254,253,126,85,249,79,192,63,64,248,60,1,240,15,192,63,0,248,180,2,208,15,192,63,0,251,242,79,142,15,192,63,0,251,215,223,31,15,192,63,0,249,255,7,189,15,192,63,0,248,190,3,248,15,192,63,0,248,60,0,240,31,128,63,0,248,122,194,235,31,128,63,0,248,242,211,199,111,64,63,0,255,255,255,255,239,64,63,0,251,233,254,150,255,0,63,0,248,0,0,0,127,0,63,0,255,255,255,255,254,0,63,0,255,255,255,255,252,0,63,0,254,170,170,171,252,0,63,0,248,0,0,3,244,0,63,0,248,0,0,1,240,0,63,0,80,0,0,0,80,0,63,0, + // 0x65bc 於 + 188,101,34,35,59,36,1,252,0,7,240,0,0,15,240,0,0,0,7,240,0,0,31,240,0,0,0,7,240,0,0,47,248,0,0,0,7,240,0,0,63,252,0,0,0,7,240,0,0,127,253,0,0,0,7,240,0,0,253,127,0,0,127,255,255,255,1,252,63,128,0,127,255,255,255,3,248,47,192,0,127,255,255,255,11,240,15,224,0,0,190,0,0,31,224,7,244,0,0,190,0,0,63,192,3,252,0,0,190,0,0,255,64,0,255,0,0,190,0,2,254,0,0,191,208,0,190,0,7,252,0,0,63,224,0,255,255,251,240,4,0,15,192,0,255,255,245,192,62,0,3,128,0,255,255,244,0,191,208,0,0,0,253,2,244,0,47,244,0,0,0,252,3,244,0,7,254,0,0,0,252,3,244,0,0,255,64,0,0,252,3,244,0,0,63,0,0,1,252,3,244,0,0,12,0,0,1,252,3,244,0,0,0,0,0,2,248,3,240,0,0,0,0,0,3,244,3,240,11,128,0,0,0,3,240,3,240,31,248,0,0,0,7,240,3,240,31,255,128,0,0,11,224,3,240,2,255,244,0,0,15,208,3,240,0,47,254,0,0,47,192,7,240,0,7,255,208,0,63,128,15,224,0,0,191,248,0,191,11,255,224,0,0,15,252,0,62,7,255,192,0,0,2,240,0,12,3,254,0,0,0,0,144,0,0,0,0,0,0,0,0,0,0, + // 0x6607 昇 + 7,102,32,33,8,36,2,253,1,170,170,170,170,170,170,64,1,255,255,255,255,255,255,64,1,255,255,255,255,255,255,64,1,252,0,0,0,0,63,64,1,252,0,0,0,0,63,64,1,252,0,0,0,0,63,64,1,255,255,255,255,255,255,64,1,255,255,255,255,255,255,64,1,254,170,170,170,170,191,64,1,252,0,0,0,0,63,64,1,252,0,0,0,0,63,64,1,255,255,255,255,255,255,64,1,255,255,255,255,255,255,64,1,170,170,170,170,170,170,64,0,0,0,27,64,5,64,0,0,0,91,255,208,47,192,0,6,255,255,255,224,47,192,0,15,255,255,228,0,47,192,0,11,250,127,64,0,47,192,0,0,0,63,64,0,47,192,0,0,0,63,64,0,47,192,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,191,0,0,47,192,0,0,0,254,0,0,47,192,0,0,3,253,0,0,47,192,0,0,11,248,0,0,47,192,0,0,127,240,0,0,47,192,0,7,255,208,0,0,47,192,0,47,255,0,0,0,47,192,0,15,244,0,0,0,47,192,0,3,64,0,0,0,47,192,0, + // 0x660e 明 + 14,102,31,33,8,36,3,252,255,255,255,3,255,255,255,244,255,255,255,3,255,255,255,244,255,255,255,3,255,255,255,244,252,0,127,3,240,0,3,244,252,0,63,3,240,0,3,244,252,0,63,3,240,0,3,244,252,0,63,3,240,0,3,244,252,0,63,3,240,0,3,244,252,0,63,3,255,255,255,244,252,0,63,3,255,255,255,244,255,255,255,3,255,255,255,244,255,255,255,3,240,0,3,244,255,255,255,3,240,0,3,244,252,0,63,3,240,0,3,244,252,0,63,7,240,0,3,244,252,0,63,7,240,0,3,244,252,0,63,7,240,0,3,244,252,0,63,7,255,255,255,244,252,0,63,11,255,255,255,244,255,255,255,15,255,255,255,244,255,255,255,15,208,0,3,244,255,255,255,15,192,0,3,244,252,0,0,47,192,0,3,244,252,0,0,63,128,0,3,244,252,0,0,127,0,0,3,244,84,0,0,255,0,0,3,244,0,0,2,253,0,0,3,244,0,0,7,252,0,0,3,244,0,0,15,240,0,0,7,244,0,0,127,224,0,31,255,240,0,0,127,128,0,15,255,240,0,0,14,0,0,11,254,64,0,0,0,0,0,0,0,0, + // 0x662f 是 + 47,102,34,33,41,36,1,253,0,21,85,85,85,85,85,64,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,0,0,0,0,31,192,0,0,63,0,0,0,0,31,192,0,0,63,85,85,85,85,111,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,0,0,0,0,31,192,0,0,63,0,0,0,0,31,192,0,0,63,149,85,85,85,111,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,0,0,0,1,252,0,0,0,0,0,3,144,1,252,0,0,0,0,0,7,244,1,252,0,0,0,0,0,11,240,1,252,0,0,0,0,0,15,240,1,255,255,255,244,0,0,15,224,1,255,255,255,244,0,0,47,240,1,255,255,255,244,0,0,63,252,1,252,0,0,0,0,0,191,255,1,252,0,0,0,0,1,254,127,209,252,0,0,0,0,7,252,31,255,252,0,0,0,0,31,240,7,255,255,255,255,255,208,127,208,0,127,255,255,255,255,192,47,64,0,1,191,255,255,255,128,9,0,0,0,0,0,0,0,0, + // 0x6642 時 + 66,102,33,34,50,36,2,253,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,127,255,253,0,0,191,0,0,0,127,255,253,0,0,191,0,0,0,127,255,253,47,255,255,255,252,0,127,0,253,47,255,255,255,252,0,127,0,253,47,255,255,255,252,0,127,0,253,0,0,191,0,0,0,127,0,253,0,0,191,0,0,0,127,0,253,0,0,191,0,0,0,127,0,253,0,0,191,0,0,0,127,0,253,255,255,255,255,255,128,127,0,253,255,255,255,255,255,128,127,255,253,255,255,255,255,255,128,127,255,253,0,0,0,63,64,0,127,255,253,0,0,0,63,64,0,127,0,253,0,0,0,63,64,0,127,0,253,0,0,0,63,64,0,127,0,253,255,255,255,255,255,0,127,0,253,255,255,255,255,255,64,127,0,253,255,255,255,255,255,64,127,0,253,0,0,0,63,64,0,127,0,253,0,192,0,63,64,0,127,0,253,11,240,0,63,64,0,127,255,253,11,248,0,63,64,0,127,255,253,2,253,0,63,64,0,127,255,253,0,255,0,63,64,0,127,0,0,0,63,128,63,64,0,127,0,0,0,47,128,63,64,0,127,0,0,0,13,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,255,255,64,0,0,0,0,0,0,191,255,0,0,0,0,0,0,0,63,248,0,0, + // 0x66ab 暫 + 171,102,32,34,16,36,2,253,0,3,240,0,0,0,1,128,0,3,240,0,0,1,111,240,191,255,255,255,95,191,255,248,191,255,255,255,95,255,254,64,0,3,240,0,31,249,0,0,26,171,250,169,31,128,0,0,63,255,255,254,31,128,0,0,62,3,240,62,31,128,0,0,62,3,240,62,31,255,255,255,63,255,255,254,31,255,255,255,63,171,250,190,31,234,191,170,62,3,240,62,47,64,63,0,63,255,255,254,63,0,63,0,26,171,250,169,63,0,63,0,0,3,240,0,190,0,63,0,255,255,255,255,253,0,63,0,255,255,255,255,248,0,63,0,0,3,240,11,240,0,63,0,0,3,240,2,208,0,63,0,0,1,64,0,64,0,0,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,170,170,170,170,252,0,0,63,0,0,0,0,252,0,0,63,0,0,0,0,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,85,85,85,85,252,0,0,63,0,0,0,0,252,0,0,63,0,0,0,0,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,170,170,170,170,252,0,0,63,0,0,0,0,252,0, + // 0x66f4 更 + 244,102,33,33,41,36,2,252,191,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,254,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,1,254,170,175,250,170,175,208,0,1,252,0,7,240,0,15,208,0,1,252,0,7,240,0,15,208,0,1,254,170,175,250,170,175,208,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,1,252,0,7,240,0,15,208,0,1,252,0,7,240,0,15,208,0,1,252,0,11,240,0,15,208,0,1,254,170,175,250,170,175,208,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,0,6,0,15,208,0,0,0,0,0,127,64,47,192,0,0,0,0,0,63,208,63,128,0,0,0,0,0,15,244,255,64,0,0,0,0,0,7,255,255,0,0,0,0,0,0,1,255,252,0,0,0,0,0,0,0,191,253,0,0,0,0,0,0,11,255,255,249,0,0,0,0,6,255,255,255,255,255,169,85,0,255,255,244,27,255,255,255,255,64,127,254,0,0,107,255,255,255,0,47,144,0,0,0,21,175,254,0,0,0,0,0,0,0,0,0,0, + // 0x6700 最 + 0,103,32,33,8,36,2,253,0,191,255,255,255,255,254,0,0,191,255,255,255,255,254,0,0,190,85,85,85,85,254,0,0,190,0,0,0,0,190,0,0,190,0,0,0,0,190,0,0,191,255,255,255,255,254,0,0,191,255,255,255,255,254,0,0,190,0,0,0,0,190,0,0,190,0,0,0,0,190,0,0,191,255,255,255,255,254,0,0,191,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,254,255,255,255,255,255,255,255,254,171,254,171,255,170,170,170,170,3,240,0,252,0,0,0,0,3,240,0,252,0,0,0,0,3,255,255,252,255,255,255,244,3,255,255,252,255,255,255,244,3,249,85,252,107,234,175,240,3,240,0,252,31,192,15,208,3,249,85,252,15,208,47,192,3,255,255,252,7,240,127,128,3,255,255,252,2,252,255,0,3,240,0,252,0,255,252,0,3,240,0,252,0,127,244,0,3,250,191,252,0,127,240,0,255,255,255,252,7,255,254,0,255,255,255,252,127,253,255,228,254,148,0,255,255,224,47,255,0,0,0,252,254,0,7,254,0,0,0,252,96,0,0,44, + // 0x6709 有 + 9,103,33,35,59,36,1,252,0,0,0,100,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,2,252,0,0,0,0,0,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,0,0,31,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,2,255,255,255,255,255,128,0,0,7,255,255,255,255,255,128,0,0,15,255,255,255,255,255,128,0,0,63,253,0,0,0,47,128,0,0,255,253,0,0,0,47,128,0,3,255,253,0,0,0,47,128,0,31,252,255,255,255,255,255,128,0,127,240,255,255,255,255,255,128,0,63,128,255,255,255,255,255,128,0,14,0,253,0,0,0,47,128,0,0,0,253,0,0,0,47,128,0,0,0,253,0,0,0,47,128,0,0,0,255,255,255,255,255,128,0,0,0,255,255,255,255,255,128,0,0,0,255,255,255,255,255,128,0,0,0,253,0,0,0,47,128,0,0,0,253,0,0,0,47,128,0,0,0,253,0,0,0,47,128,0,0,0,253,0,0,0,63,128,0,0,0,253,0,0,255,255,64,0,0,0,253,0,0,191,255,0,0,0,0,253,0,0,127,248,0,0,0,0,0,0,0,0,0,0,0, + // 0x677f 板 + 127,103,34,35,59,36,1,252,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,2,255,255,255,255,192,0,15,192,2,255,255,255,255,192,0,15,192,2,255,255,255,255,192,0,15,192,2,248,0,0,0,0,0,15,192,2,244,0,0,0,0,0,15,192,2,244,0,0,0,0,63,255,255,226,244,0,0,0,0,63,255,255,226,244,0,0,0,0,63,255,255,226,244,0,0,0,0,0,31,192,2,248,0,0,0,0,0,47,192,2,255,255,255,255,64,0,63,192,3,255,255,255,255,64,0,127,224,3,255,255,255,255,0,0,191,244,3,255,208,0,127,0,0,255,252,3,255,224,0,190,0,1,255,255,3,247,240,0,253,0,2,255,239,131,242,244,1,252,0,3,223,207,211,241,252,2,248,0,11,207,199,243,240,253,3,244,0,15,143,194,199,240,191,11,240,0,63,79,192,71,224,63,95,208,0,127,15,192,11,224,47,255,192,0,253,15,192,15,208,15,255,64,0,60,15,192,31,192,7,254,0,0,36,15,192,47,192,3,253,0,0,0,15,192,63,128,15,255,64,0,0,15,192,127,0,127,255,208,0,0,15,192,191,1,255,159,248,0,0,15,193,253,31,253,7,255,128,0,15,195,252,63,244,1,255,224,0,15,193,244,31,128,0,63,128,0,15,192,32,9,0,0,7,0,0,0,0,0,0,0,0,0,0, + // 0x67f1 柱 + 241,103,34,35,59,36,1,252,0,11,224,0,0,176,0,0,0,0,11,224,0,3,253,0,0,0,0,11,224,0,2,255,128,0,0,0,11,224,0,0,127,240,0,0,0,11,224,0,0,15,252,0,0,0,11,224,0,0,2,253,0,0,0,11,224,0,0,0,244,0,0,0,11,224,3,255,255,255,255,192,63,255,255,247,255,255,255,255,192,63,255,255,247,255,255,255,255,192,63,255,255,244,0,11,240,0,0,0,15,224,0,0,11,240,0,0,0,31,224,0,0,11,240,0,0,0,47,224,0,0,11,240,0,0,0,63,244,0,0,11,240,0,0,0,127,252,0,0,11,240,0,0,0,255,255,0,0,11,240,0,0,0,255,255,192,0,11,240,0,0,2,251,239,224,255,255,255,255,128,3,235,227,244,255,255,255,255,128,11,219,226,244,255,255,255,255,128,15,203,224,224,0,11,240,0,0,47,139,224,64,0,11,240,0,0,127,11,224,0,0,11,240,0,0,190,11,224,0,0,11,240,0,0,60,11,224,0,0,11,240,0,0,36,11,224,0,0,11,240,0,0,0,11,224,0,0,11,240,0,0,0,11,224,0,0,11,240,0,0,0,11,224,0,0,11,240,0,0,0,11,224,63,255,255,255,255,224,0,11,224,63,255,255,255,255,224,0,11,224,63,255,255,255,255,224,0,11,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6821 校 + 33,104,34,35,59,36,1,252,0,15,192,0,0,31,192,0,0,0,15,192,0,0,31,192,0,0,0,15,192,0,0,31,192,0,0,0,15,192,0,0,31,192,0,0,0,15,192,0,0,31,192,0,0,0,15,192,31,255,255,255,255,192,0,15,192,31,255,255,255,255,192,0,15,192,31,255,255,255,255,192,63,255,255,218,170,170,170,170,128,63,255,255,192,4,0,1,0,0,63,255,255,192,47,64,15,192,0,0,47,192,0,63,128,15,240,0,0,63,192,0,191,0,7,248,0,0,63,192,1,253,0,1,253,0,0,127,240,3,248,0,0,191,0,0,191,244,15,240,0,0,63,192,0,255,252,63,235,0,15,159,208,1,255,255,47,127,64,31,203,192,3,255,223,73,31,192,63,129,0,7,239,207,192,15,192,63,64,0,11,207,199,208,11,240,191,0,0,15,143,195,128,3,244,253,0,0,63,79,193,0,2,255,252,0,0,127,15,192,0,0,255,244,0,0,189,15,192,0,0,127,224,0,0,60,15,192,0,0,63,224,0,0,36,15,192,0,0,255,248,0,0,0,15,192,0,7,255,255,0,0,0,15,192,0,31,245,255,192,0,0,15,192,1,255,208,63,248,0,0,15,192,27,255,0,15,255,128,0,15,192,191,248,0,3,255,208,0,15,192,63,208,0,0,127,128,0,15,192,45,0,0,0,11,0,0,0,0,0,0,0,0,0,0, + // 0x683c 格 + 60,104,34,35,59,36,1,252,0,15,192,0,1,224,0,0,0,0,15,192,0,3,248,0,0,0,0,15,192,0,7,244,0,0,0,0,15,192,0,15,240,0,0,0,0,15,192,0,31,255,255,244,0,0,15,192,0,63,255,255,252,0,0,15,192,0,191,255,255,244,0,0,15,192,1,255,0,7,240,0,63,255,255,231,255,64,15,224,0,63,255,255,239,255,192,47,192,0,63,255,255,255,223,224,127,64,0,0,31,192,191,71,248,254,0,0,0,47,208,29,2,255,252,0,0,0,63,244,0,0,191,240,0,0,0,127,252,0,0,127,240,0,0,0,191,255,0,2,255,253,0,0,0,255,239,192,15,255,255,128,0,1,255,207,208,191,240,127,248,0,3,239,195,203,255,128,31,255,208,7,223,194,255,253,0,2,255,224,15,207,192,255,255,255,255,255,128,31,143,192,126,255,255,255,253,0,63,15,192,17,255,255,255,252,0,191,15,192,1,248,0,1,252,0,189,15,192,1,248,0,1,252,0,60,15,192,1,248,0,1,252,0,36,15,192,1,248,0,1,252,0,0,15,192,1,248,0,1,252,0,0,15,192,1,248,0,1,252,0,0,15,192,1,248,0,1,252,0,0,15,192,1,255,255,255,252,0,0,15,192,1,255,255,255,252,0,0,15,192,1,255,255,255,252,0,0,15,192,1,248,0,1,252,0,0,0,0,0,0,0,0,0,0, + // 0x689d 條 + 157,104,34,35,59,36,1,252,0,2,64,0,2,144,0,0,0,0,7,240,0,3,240,0,0,0,0,11,224,0,11,240,0,0,0,0,15,208,0,15,208,0,0,0,0,31,197,64,63,255,255,255,192,0,63,143,192,191,255,255,255,192,0,127,15,193,255,170,171,254,128,0,191,15,195,255,0,11,240,0,0,253,15,207,255,128,15,208,0,3,253,15,255,223,224,63,192,0,7,253,15,207,71,248,255,0,0,15,253,15,193,1,255,252,0,0,47,253,15,192,0,127,244,0,0,127,253,15,192,1,255,253,0,0,255,253,15,192,31,255,255,208,0,254,189,15,203,255,244,127,255,144,124,189,15,223,255,64,7,255,208,48,189,15,203,228,15,192,111,128,0,189,15,193,0,15,192,1,0,0,189,15,192,0,15,192,0,0,0,189,15,207,255,255,255,255,192,0,189,15,207,255,255,255,255,192,0,189,15,207,255,255,255,255,192,0,189,15,192,0,191,248,0,0,0,189,15,192,1,255,253,0,0,0,189,15,192,7,255,255,0,0,0,189,15,192,31,239,239,192,0,0,189,15,128,127,143,203,240,0,0,189,0,2,255,15,195,253,0,0,189,0,31,252,15,192,255,128,0,189,0,191,224,15,192,63,240,0,189,0,63,64,15,192,15,192,0,189,0,8,0,15,192,2,0,0,189,0,0,0,15,192,0,0,0,0,0,0,0,0,0,0,0, + // 0x68c4 棄 + 196,104,32,34,16,36,2,253,0,0,0,11,224,0,0,0,0,0,0,11,224,0,0,0,0,0,0,11,224,0,0,0,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,106,170,191,234,170,255,170,170,0,0,127,64,0,255,128,0,0,0,254,0,0,31,248,0,31,255,255,255,255,255,255,128,31,255,255,255,255,255,255,244,31,255,255,170,170,85,87,244,0,0,0,6,144,0,0,144,0,47,128,11,208,2,248,0,0,47,128,11,208,2,248,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,106,191,234,175,250,171,254,169,0,47,128,11,208,2,248,0,0,47,128,11,208,2,248,0,0,47,255,255,255,255,248,0,0,47,255,255,255,255,248,0,0,5,85,95,245,85,84,0,0,0,0,15,224,0,0,0,170,170,170,175,250,170,170,170,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,11,255,255,224,0,0,0,0,127,223,231,253,0,0,0,7,255,15,225,255,208,0,0,191,248,15,224,47,254,64,111,255,128,15,224,2,255,249,255,248,0,15,224,0,47,255,127,128,0,15,224,0,2,253,20,0,0,11,224,0,0,4, + // 0x69fd 槽 + 253,105,34,35,59,36,1,252,0,47,64,0,11,208,252,0,0,0,47,64,0,11,208,252,0,0,0,47,64,0,11,208,252,0,0,0,47,64,255,255,255,255,255,224,0,47,64,255,255,255,255,255,224,0,47,64,170,175,250,254,170,144,0,47,64,0,11,208,252,0,0,0,47,128,5,91,229,253,85,0,63,255,255,47,255,255,255,255,64,63,255,255,47,255,255,255,255,64,63,255,255,47,3,208,248,31,64,0,63,64,47,3,208,248,31,64,0,63,64,47,255,255,255,255,64,0,127,128,47,255,255,255,255,64,0,191,192,47,7,208,248,31,64,0,255,240,47,3,208,248,31,64,1,255,244,47,3,208,248,31,64,2,255,252,47,255,255,255,255,64,3,255,190,47,255,255,255,255,64,7,239,111,69,85,85,85,85,0,15,239,79,0,0,0,0,0,0,31,111,73,7,255,255,255,252,0,63,47,64,7,255,255,255,252,0,126,47,64,7,250,170,170,252,0,188,47,64,7,240,0,0,252,0,56,47,64,7,245,85,85,252,0,32,47,64,7,255,255,255,252,0,0,47,64,7,255,255,255,252,0,0,47,64,7,240,0,0,252,0,0,47,64,7,240,0,0,252,0,0,47,64,7,250,170,170,252,0,0,47,64,7,255,255,255,252,0,0,47,64,7,255,255,255,252,0,0,47,64,7,240,0,0,252,0,0,0,0,0,0,0,0,0,0, + // 0x6a59 橙 + 89,106,34,34,50,36,1,253,0,31,192,0,0,0,80,0,0,0,31,192,26,170,130,240,32,0,0,31,192,47,255,241,244,244,0,0,31,192,47,255,224,255,252,0,0,31,192,0,15,192,255,224,0,0,31,192,4,15,192,191,66,0,0,31,192,62,47,128,63,11,192,0,31,192,127,255,0,47,175,192,63,255,255,159,254,0,31,254,0,63,255,255,131,253,0,15,244,0,63,255,255,131,255,255,255,252,0,0,47,192,15,239,255,254,255,0,0,63,192,47,202,170,168,191,208,0,63,192,255,0,0,0,47,240,0,191,226,253,0,0,0,11,192,0,255,244,179,255,255,255,249,64,0,255,252,3,255,255,255,248,0,2,255,255,3,245,85,87,248,0,3,255,223,131,240,0,2,248,0,7,239,207,195,240,0,2,248,0,15,223,199,67,240,0,2,248,0,15,159,194,3,250,170,171,248,0,63,31,192,3,255,255,255,248,0,127,31,192,3,255,255,255,248,0,189,31,192,0,8,0,14,64,0,60,31,192,0,189,0,31,192,0,36,31,192,0,127,0,47,128,0,0,31,192,0,63,0,63,0,0,0,31,192,0,47,64,126,0,0,0,31,192,0,30,0,124,0,0,0,31,192,255,255,255,255,255,224,0,31,192,255,255,255,255,255,224,0,31,192,255,255,255,255,255,208,0,31,192,0,0,0,0,0,0, + // 0x6a5f 機 + 95,106,34,34,50,36,1,253,0,63,0,1,0,189,1,0,0,0,63,0,7,208,189,3,224,0,0,63,0,15,192,189,11,192,0,0,63,0,15,128,189,15,128,0,0,63,0,47,8,189,31,8,0,0,63,0,253,47,189,254,31,64,0,63,3,252,62,127,252,63,0,0,63,0,253,188,126,254,188,0,63,255,254,63,244,125,63,248,0,63,255,254,15,240,126,15,240,0,63,255,254,11,208,126,7,210,0,0,127,0,15,173,62,15,143,64,0,127,0,47,31,62,63,11,192,0,191,128,125,31,63,255,255,208,0,255,210,255,255,127,255,255,224,1,255,242,255,255,191,87,65,224,2,255,249,149,7,127,11,208,64,3,255,188,0,0,47,7,244,0,3,255,62,0,0,47,64,252,0,11,255,47,255,255,255,255,255,208,15,191,14,255,255,255,255,255,208,31,63,1,175,234,175,234,170,128,63,63,0,15,192,15,192,228,0,125,63,0,31,192,11,193,252,0,188,63,0,31,244,7,211,244,0,56,63,0,47,254,3,251,240,0,32,63,0,63,191,195,255,192,0,0,63,0,127,31,194,255,0,0,0,63,0,254,3,2,253,1,208,0,63,1,252,0,31,254,2,240,0,63,7,248,1,191,255,131,224,0,63,15,240,31,254,31,255,208,0,63,11,192,15,240,11,255,192,0,63,2,0,6,0,1,190,0, + // 0x6aa2 檢 + 162,106,34,35,59,36,1,252,0,31,128,0,0,63,64,0,0,0,31,128,0,0,255,192,0,0,0,31,128,0,2,255,240,0,0,0,31,128,0,7,251,252,0,0,0,31,128,0,31,241,255,0,0,0,31,128,0,127,192,191,192,0,0,31,128,1,255,64,47,240,0,0,31,192,7,253,0,11,253,0,63,255,255,175,244,0,2,255,128,63,255,255,255,255,255,255,255,240,63,255,255,255,63,255,255,95,192,0,63,128,56,42,170,170,67,128,0,63,128,16,0,0,0,0,0,0,127,192,5,85,80,85,85,0,0,191,224,31,255,241,255,255,64,0,255,244,31,255,241,255,255,64,0,255,252,31,2,241,240,31,64,2,255,254,31,2,241,240,31,64,3,255,175,95,2,241,240,31,64,7,239,143,223,2,241,240,31,64,11,223,139,95,255,241,255,255,64,15,159,130,31,255,241,255,255,64,47,31,128,5,85,80,85,85,0,127,31,128,0,121,0,15,128,0,189,31,128,0,253,0,15,192,0,60,31,128,0,252,0,31,128,0,32,31,128,2,252,0,63,64,0,0,31,128,3,254,0,63,192,0,0,31,128,11,255,128,255,244,0,0,31,128,31,239,226,255,254,0,0,31,128,127,135,235,244,255,128,0,31,130,255,1,191,224,47,224,0,31,129,252,0,31,128,11,208,0,31,128,160,0,9,0,2,64,0,0,0,0,0,0,0,0,0, + // 0x6b62 止 + 98,107,32,32,0,36,2,255,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,0,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,255,255,255,244,0,127,0,1,255,255,255,244,0,127,0,1,255,255,255,244,0,127,0,1,253,85,85,80,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,0,127,0,1,252,0,0,0,85,191,85,86,253,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x6b63 正 + 99,107,32,31,248,36,2,254,5,85,85,85,85,85,85,84,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,106,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,255,255,255,208,0,127,0,3,255,255,255,208,0,127,0,3,255,255,255,208,0,127,0,3,252,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,0,127,0,3,248,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0, + // 0x6b65 步 + 101,107,32,34,16,36,2,253,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,21,0,11,240,0,0,0,0,63,128,11,240,0,0,0,0,63,128,11,255,255,255,64,0,63,128,11,255,255,255,64,0,63,128,11,255,255,255,64,0,63,128,11,240,0,0,0,0,63,128,11,240,0,0,0,0,63,128,11,240,0,0,0,0,63,128,11,240,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,11,224,0,0,0,0,7,144,11,224,0,0,0,0,15,244,11,224,0,57,0,0,63,224,11,224,0,191,64,0,255,128,11,224,0,255,0,3,255,0,11,224,2,253,0,31,252,0,11,224,3,252,0,191,224,0,11,224,15,244,0,127,128,15,255,224,47,240,0,13,0,11,255,208,191,192,0,0,0,7,254,66,255,64,0,0,0,0,0,15,253,0,0,0,0,0,0,191,244,0,0,0,0,0,7,255,208,0,0,0,0,1,191,255,0,0,0,0,1,111,255,244,0,0,0,2,191,255,255,64,0,0,0,3,255,255,228,0,0,0,0,1,255,249,0,0,0,0,0,0,233,0,0,0,0,0,0, + // 0x6b78 歸 + 120,107,34,34,50,36,1,253,0,15,128,0,0,0,0,0,0,0,31,192,0,63,255,255,248,0,0,47,64,0,63,255,255,248,0,15,255,255,240,21,85,86,248,0,15,255,255,240,0,0,1,248,0,15,213,87,241,85,85,86,249,64,15,192,3,247,255,255,255,255,224,15,192,3,247,255,255,255,255,224,15,255,255,240,0,0,1,248,0,15,255,255,240,0,0,1,248,0,15,213,85,80,63,255,255,248,0,15,192,0,0,63,255,255,248,0,15,255,255,240,21,85,85,80,0,15,255,255,241,170,170,170,170,64,15,213,87,242,255,255,255,255,192,15,192,3,242,255,255,255,255,192,15,192,3,242,240,11,208,15,192,15,255,255,242,240,11,208,15,192,15,255,255,242,240,11,208,15,192,5,91,229,80,0,11,208,0,0,0,3,224,0,191,255,255,254,0,15,67,224,0,191,255,255,254,0,15,131,250,160,191,175,250,254,0,15,131,255,240,189,11,208,126,0,15,131,255,240,189,11,208,126,0,15,131,224,0,189,11,208,126,0,15,131,224,0,189,11,208,126,0,15,131,224,4,189,11,208,126,0,15,135,255,252,189,11,213,190,0,31,255,255,252,189,11,215,253,0,191,255,255,228,189,11,211,248,0,127,254,144,0,0,11,208,0,0,41,0,0,0,0,11,208,0,0,0,0,0,0,0,11,208,0,0, + // 0x6bbc 殼 + 188,107,33,35,59,36,2,252,0,11,208,0,0,0,0,0,0,0,11,224,0,7,255,255,128,0,0,11,224,0,11,255,255,128,0,255,255,255,255,11,255,255,128,0,255,255,255,255,11,208,31,128,0,85,95,245,85,11,208,31,128,0,0,11,224,0,11,208,31,128,0,21,95,229,84,11,208,31,128,0,63,255,255,252,11,208,31,135,64,63,255,255,252,15,192,31,135,192,0,0,0,0,31,192,31,135,192,0,0,0,0,63,128,31,239,192,255,255,255,254,191,0,15,255,128,255,255,255,255,254,0,7,254,0,253,85,85,126,188,0,0,0,0,248,0,0,62,16,0,0,0,0,251,255,255,190,63,255,255,248,0,3,255,255,128,63,255,255,252,0,1,85,85,64,63,255,255,248,0,0,0,0,0,6,192,3,240,0,2,170,170,128,15,208,11,240,0,3,255,255,192,7,240,15,208,0,3,255,255,192,3,244,47,192,0,3,240,15,192,1,252,127,64,0,7,240,15,192,0,254,255,0,0,7,224,15,192,0,127,252,0,0,7,224,15,193,0,47,244,0,0,11,208,15,255,64,127,248,0,0,15,192,111,255,66,255,255,0,0,47,192,191,249,31,254,255,208,0,127,64,63,130,255,240,63,254,0,255,0,16,15,255,128,11,255,64,60,0,0,7,248,0,1,254,0,0,0,0,3,128,0,0,28,0,0,0,0,0,0,0,0,0,0, + // 0x6bd4 比 + 212,107,34,34,50,36,1,253,0,42,64,0,6,160,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,40,0,0,63,128,0,7,240,1,254,0,0,63,128,0,7,240,11,255,64,0,63,255,255,7,240,191,253,0,0,63,255,255,7,251,255,224,0,0,63,255,255,7,255,254,0,0,0,63,149,85,7,255,208,0,0,0,63,128,0,7,253,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,7,128,0,63,128,0,7,240,0,7,240,0,63,128,6,199,240,0,7,224,0,63,150,255,199,240,0,11,224,0,63,255,255,215,240,0,15,208,43,255,255,255,135,244,0,31,208,127,255,255,144,3,255,255,255,192,63,255,144,0,2,255,255,255,128,46,64,0,0,0,191,255,254,0,0,0,0,0,0,0,0,0,0, + // 0x6c92 沒 + 146,108,33,34,50,36,1,253,0,144,0,0,190,0,0,0,0,3,253,0,0,254,0,0,0,0,7,255,128,0,253,0,0,0,0,0,191,244,0,255,255,255,253,0,0,15,244,1,255,255,255,253,0,0,2,224,2,255,255,255,253,0,0,0,64,3,248,0,0,252,0,0,0,0,7,240,0,0,252,0,0,0,0,11,240,0,1,252,0,0,0,0,15,224,0,1,252,0,8,0,0,47,192,0,2,252,0,47,128,0,63,128,0,3,248,0,127,244,0,255,0,0,7,244,0,47,255,3,254,0,31,255,240,0,2,255,139,252,0,15,255,224,0,0,47,2,240,0,11,255,128,0,0,4,0,64,0,0,0,0,0,0,0,0,255,255,255,255,248,0,0,0,0,255,255,255,255,252,0,0,0,0,255,255,255,255,252,0,0,2,208,2,240,0,7,244,0,0,3,244,3,248,0,15,240,0,0,11,240,1,253,0,63,208,0,0,15,224,0,255,64,191,128,0,0,47,192,0,63,210,255,0,0,0,63,128,0,31,255,252,0,0,0,191,0,0,7,255,240,0,0,0,254,0,0,3,255,224,0,0,3,252,0,0,111,255,253,0,0,7,248,0,7,255,255,255,208,0,15,240,6,255,255,129,255,255,128,15,224,15,255,248,0,47,255,192,2,192,7,254,64,0,1,255,64,0,0,2,144,0,0,0,10,0, + // 0x6d88 消 + 136,109,32,35,24,36,2,252,1,0,0,0,2,252,0,0,15,208,0,96,2,252,0,164,47,248,3,244,2,252,0,254,11,255,66,252,2,252,2,252,0,255,192,254,2,252,3,248,0,47,64,191,2,252,11,240,0,6,0,63,130,252,15,208,0,0,0,47,194,252,47,192,0,0,0,13,2,252,6,0,0,0,0,0,2,252,0,0,120,0,1,255,255,255,255,244,255,128,1,255,255,255,255,244,255,240,1,255,255,255,255,244,31,253,1,252,0,0,3,244,3,253,1,252,0,0,3,244,0,184,1,252,0,0,3,244,0,32,1,252,0,0,3,244,0,0,1,255,255,255,255,244,0,0,1,255,255,255,255,244,0,0,1,255,255,255,255,244,0,14,1,252,0,0,3,244,0,31,193,252,0,0,3,244,0,63,129,252,0,0,3,244,0,127,1,255,255,255,255,244,0,255,1,255,255,255,255,244,1,253,1,255,255,255,255,244,3,252,1,252,0,0,3,244,7,244,1,252,0,0,3,244,15,240,1,252,0,0,3,244,31,224,1,252,0,0,3,244,63,192,1,252,0,0,3,244,127,128,1,252,0,11,255,240,31,0,1,252,0,7,255,240,1,0,1,252,0,3,255,128,0,0,0,0,0,0,0,0, + // 0x6de1 淡 + 225,109,34,34,50,36,1,253,0,0,0,0,0,253,0,0,0,2,224,0,0,0,253,0,0,0,7,254,0,9,64,253,0,160,0,2,255,208,31,128,253,0,254,0,0,127,244,63,64,252,2,252,0,0,11,240,63,0,252,3,244,0,0,1,192,254,1,252,11,240,0,0,0,1,252,2,248,31,192,0,0,0,2,248,3,253,47,64,0,0,0,0,16,7,255,129,0,0,8,0,0,0,15,255,248,0,0,47,128,0,0,63,219,255,64,0,127,244,0,2,255,64,255,240,0,31,255,0,111,254,0,31,254,0,1,255,67,255,244,0,2,255,64,0,46,2,255,128,253,0,126,0,0,4,0,228,0,252,0,8,0,0,0,0,0,0,252,0,0,0,0,0,0,47,64,252,0,190,0,0,3,0,63,65,252,0,255,0,0,11,192,127,1,252,2,253,0,0,15,224,190,2,254,3,248,0,0,47,192,252,3,255,11,240,0,0,63,131,252,3,255,95,208,0,0,191,7,240,11,255,223,128,0,0,254,0,96,15,239,224,0,0,2,253,0,0,63,199,248,0,0,7,252,0,1,255,131,254,0,0,15,240,0,27,254,0,255,208,0,31,224,2,255,248,0,63,254,64,31,192,47,255,208,0,11,255,208,3,128,15,253,0,0,1,255,128,0,0,7,144,0,0,0,7,0,0,0,0,0,0,0,0,0,0, + // 0x6e05 清 + 5,110,34,34,50,36,1,253,0,64,0,0,0,253,0,0,0,3,248,0,0,0,253,0,0,0,11,255,66,255,255,255,255,255,64,1,255,226,255,255,255,255,255,64,0,47,241,85,85,254,85,85,0,0,7,208,0,0,253,0,0,0,0,0,128,21,85,254,85,84,0,0,0,0,191,255,255,255,253,0,0,0,0,191,255,255,255,253,0,0,0,0,0,0,253,0,0,0,13,0,0,0,0,253,0,0,0,63,208,11,255,255,255,255,255,224,127,253,11,255,255,255,255,255,224,11,255,133,85,85,85,85,85,64,1,255,0,0,0,0,0,0,0,0,46,0,26,170,170,170,164,0,0,4,0,47,255,255,255,252,0,0,0,0,47,255,255,255,252,0,0,0,0,47,128,0,1,252,0,0,1,0,47,128,0,1,252,0,0,3,208,47,255,255,255,252,0,0,7,240,47,255,255,255,252,0,0,15,240,47,128,0,1,252,0,0,31,208,47,128,0,1,252,0,0,63,192,47,128,0,1,252,0,0,127,64,47,255,255,255,252,0,0,255,0,47,255,255,255,252,0,1,254,0,47,149,85,86,252,0,3,252,0,47,128,0,1,252,0,7,244,0,47,128,0,1,252,0,15,240,0,47,128,0,1,252,0,31,208,0,47,128,2,255,248,0,3,192,0,47,128,1,255,244,0,0,0,0,47,128,0,255,144,0, + // 0x6e2c 測 + 44,110,32,35,24,36,1,252,0,0,0,0,0,0,0,47,3,224,0,0,0,0,0,63,15,253,15,255,255,192,0,63,7,255,143,255,255,192,0,63,0,127,207,255,255,194,240,63,0,15,79,192,15,195,240,63,0,1,15,192,15,195,240,63,0,0,15,192,15,195,240,63,0,0,15,255,255,195,240,63,0,0,15,255,255,195,240,63,8,0,15,255,255,195,240,63,47,128,15,192,15,195,240,63,127,248,15,192,15,195,240,63,31,255,15,192,15,195,240,63,1,253,15,192,15,195,240,63,0,56,15,234,175,195,240,63,0,0,15,255,255,195,240,63,0,0,15,255,255,195,240,63,0,0,15,192,15,195,240,63,0,0,15,192,15,195,240,63,0,24,15,192,15,195,240,63,0,47,15,192,15,195,240,63,0,63,79,255,255,195,240,63,0,127,15,255,255,195,240,63,0,254,15,255,255,194,240,63,0,253,0,0,4,0,0,63,2,252,3,244,63,0,0,63,3,248,7,240,63,128,0,63,7,240,15,208,31,192,0,63,15,224,47,192,15,240,0,63,31,208,127,64,3,248,0,63,63,193,254,0,1,244,255,255,11,66,252,0,0,128,127,254,0,0,112,0,0,0,63,228,0,0,0,0,0,0,0,0, + // 0x6e90 源 + 144,110,34,34,50,36,1,253,0,64,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,11,255,3,255,255,255,255,255,192,2,255,211,255,255,255,255,255,192,0,63,227,255,255,255,255,255,192,0,11,195,244,0,15,240,0,0,0,1,3,244,0,15,224,0,0,0,0,3,244,0,15,192,0,0,0,0,3,244,85,111,213,85,0,0,0,3,244,255,255,255,255,0,13,0,3,244,255,255,255,255,0,63,208,3,244,252,0,0,63,0,127,248,3,244,252,0,0,63,0,11,255,3,244,253,85,85,127,0,1,254,3,244,255,255,255,255,0,0,44,3,240,255,255,255,255,0,0,0,3,240,252,0,0,63,0,0,0,3,240,252,0,0,63,0,0,0,3,240,252,0,0,63,0,0,0,7,240,255,255,255,255,0,0,13,7,240,255,255,255,255,0,0,31,139,224,85,95,229,85,0,0,63,139,224,0,15,208,0,0,0,127,15,208,36,15,208,116,0,0,191,15,192,191,15,210,252,0,0,253,31,192,253,15,208,254,0,2,252,47,129,252,15,208,127,64,3,248,63,67,244,15,208,63,192,7,240,127,11,240,15,208,31,208,15,240,254,31,208,15,208,15,224,31,209,253,47,128,15,208,7,208,63,195,252,2,11,255,192,0,0,11,65,244,0,7,255,192,0,0,0,0,16,0,3,249,0,0,0, + // 0x6e96 準 + 150,110,33,34,50,36,1,253,0,96,0,7,144,11,144,0,0,0,254,0,15,240,15,224,0,0,2,255,224,31,208,31,192,0,0,0,47,240,63,192,63,128,0,0,0,3,208,255,255,255,255,254,0,0,0,66,255,255,255,255,254,0,9,0,7,255,170,255,170,169,0,63,208,31,254,0,127,0,0,0,127,253,127,254,0,127,0,0,0,7,253,255,255,255,255,255,244,0,0,120,62,191,255,255,255,244,0,0,0,4,191,85,191,85,80,0,0,0,128,190,0,127,0,0,0,0,2,224,190,85,191,85,80,0,0,11,240,191,255,255,255,248,0,0,47,208,191,255,255,255,248,0,0,127,128,190,0,127,0,0,0,1,254,0,190,0,127,0,0,0,11,252,0,191,170,255,170,170,64,31,240,0,191,255,255,255,255,128,11,192,0,191,255,255,255,255,128,3,64,0,2,244,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0, + // 0x6eab 溫 + 171,110,34,34,50,36,1,253,0,128,0,0,0,0,0,0,0,3,248,0,42,170,170,170,160,0,7,255,128,127,255,255,255,240,0,1,255,240,127,255,255,255,240,0,0,31,224,126,0,80,7,240,0,0,3,192,126,0,244,7,240,0,0,0,0,126,0,240,7,240,0,0,0,0,126,2,240,7,240,0,0,0,0,126,3,252,7,240,0,0,0,0,126,15,255,71,240,0,14,0,0,126,63,11,215,240,0,63,224,0,126,189,3,247,240,0,127,253,0,126,32,0,135,240,0,11,255,0,127,170,170,171,240,0,0,254,0,127,255,255,255,240,0,0,28,0,127,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,252,0,0,6,2,255,255,255,255,252,0,0,15,194,255,255,255,255,252,0,0,31,210,244,62,7,192,252,0,0,47,194,244,62,7,192,252,0,0,63,66,244,62,7,192,252,0,0,191,2,244,62,7,192,252,0,0,254,2,244,62,7,192,252,0,2,252,2,244,62,7,192,252,0,3,248,2,244,62,7,192,252,0,11,240,2,244,62,7,192,252,0,31,224,191,255,255,255,255,255,224,47,192,191,255,255,255,255,255,224,7,128,191,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x6fc0 激 + 192,111,34,35,59,36,1,252,1,0,0,15,144,1,228,0,0,3,224,0,31,192,1,252,0,0,15,253,0,47,192,2,248,0,0,3,255,133,127,149,66,244,0,0,0,127,223,255,255,195,244,0,0,0,15,15,255,255,195,240,0,0,0,1,15,64,15,195,240,0,0,0,0,15,64,15,199,255,255,224,0,0,15,149,95,203,255,255,224,0,0,15,255,255,207,255,255,224,13,0,15,255,255,223,192,63,0,63,208,15,64,15,239,192,126,0,127,248,15,64,15,255,208,126,0,15,254,15,149,95,255,208,189,0,1,253,15,255,255,255,224,189,0,0,56,15,255,255,255,240,252,0,0,0,0,31,192,186,240,252,0,0,0,0,31,192,33,244,252,0,0,0,106,191,234,160,249,248,0,0,0,191,255,255,240,254,244,0,0,24,191,255,255,240,191,240,0,0,47,0,252,0,0,127,240,0,0,63,64,252,0,0,63,208,0,0,127,0,254,170,128,47,192,0,0,254,0,255,255,128,47,192,0,0,252,1,255,255,128,63,192,0,2,252,2,244,31,128,191,240,0,3,248,3,240,31,129,255,244,0,7,240,7,240,31,131,253,252,0,15,240,15,208,47,79,240,255,0,31,208,63,192,63,127,208,63,192,63,192,255,15,255,255,128,31,224,11,130,253,15,254,189,0,7,192,0,0,112,6,148,36,0,1,0,0,0,0,0,0,0,0,0,0, + // 0x7121 無 + 33,113,33,34,50,36,2,253,0,7,144,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,255,255,255,255,255,255,248,0,2,255,255,255,255,255,255,248,0,11,255,255,255,255,255,255,248,0,31,255,2,240,31,64,252,0,0,191,255,2,240,31,64,252,0,0,255,127,2,240,31,64,252,0,0,61,63,2,240,31,64,252,0,0,4,63,2,240,31,64,252,0,0,0,63,2,240,31,64,252,0,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,0,63,2,240,31,64,252,0,0,0,63,2,240,31,64,252,0,0,0,63,2,240,31,64,252,0,0,0,63,2,240,31,64,252,0,0,0,63,2,240,31,64,252,0,0,127,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0,0,0,144,0,0,0,0,6,0,0,2,252,6,208,27,192,63,128,0,3,248,11,224,15,192,47,208,0,7,240,7,240,15,224,15,240,0,15,240,7,240,11,240,7,252,0,47,208,3,240,3,240,2,253,0,127,128,3,240,3,244,0,255,0,255,0,3,240,2,248,0,191,64,29,0,1,64,1,64,0,52,0, + // 0x71b1 熱 + 177,113,33,34,50,36,2,253,0,6,144,0,0,252,0,0,0,0,7,224,0,0,252,0,0,0,5,91,229,80,0,252,0,0,0,31,255,255,248,0,252,0,0,0,31,255,255,248,0,252,0,0,0,0,7,224,0,127,255,255,192,0,0,7,224,0,127,255,255,192,0,191,255,255,255,127,255,255,192,0,191,255,255,255,0,252,15,192,0,85,253,127,85,0,252,15,192,0,0,244,62,4,0,252,15,192,0,3,240,62,15,57,248,15,192,0,31,224,47,255,191,248,15,192,0,255,128,31,253,191,244,15,192,0,125,7,224,0,31,253,15,192,0,0,7,224,0,3,255,79,192,0,21,91,245,84,3,255,239,192,0,63,255,255,252,11,239,223,195,128,63,255,255,252,15,211,207,195,192,0,7,224,0,31,192,15,195,192,0,7,224,0,63,64,15,195,192,0,7,250,190,191,0,15,199,192,175,255,255,255,253,0,15,255,128,255,255,255,251,248,0,11,255,64,255,233,80,0,240,0,1,169,0,0,0,0,0,64,0,0,0,0,0,144,0,0,1,0,11,0,0,2,252,11,208,31,192,63,192,0,3,248,11,224,15,208,31,224,0,11,240,11,240,15,224,11,244,0,31,224,7,240,7,240,3,252,0,63,192,7,240,3,244,1,254,0,255,0,7,240,3,244,0,191,0,29,0,1,0,0,0,0,32,0, + // 0x71c8 燈 + 200,113,34,34,50,36,1,253,0,10,64,0,0,11,128,64,0,0,31,128,26,170,79,193,224,0,0,31,128,47,255,231,215,244,0,0,31,128,47,255,211,255,192,0,0,31,128,0,15,194,255,0,0,0,31,129,8,15,192,252,15,64,0,31,139,255,111,64,190,63,192,9,31,143,239,255,0,63,254,0,15,31,159,75,253,0,31,244,0,15,31,191,3,248,0,15,240,0,31,31,253,11,255,255,255,252,0,31,31,252,47,255,255,254,255,64,31,31,144,191,90,170,168,127,240,47,31,135,253,0,0,0,31,224,62,31,135,244,0,0,0,2,192,124,47,130,135,255,255,255,244,0,120,47,64,7,255,255,255,244,0,0,47,64,7,250,170,171,244,0,0,47,64,7,224,0,3,244,0,0,63,64,7,224,0,3,244,0,0,63,0,7,224,0,3,244,0,0,63,128,7,250,170,171,244,0,0,63,208,7,255,255,255,244,0,0,127,240,7,255,255,255,244,0,0,255,252,0,20,0,25,0,0,0,252,254,0,252,0,47,192,0,2,252,127,64,126,0,63,64,0,3,244,47,192,63,0,127,0,0,11,240,15,64,47,64,189,0,0,15,224,5,0,30,0,188,0,0,63,192,1,255,255,255,255,255,192,127,64,2,255,255,255,255,255,192,46,0,2,255,255,255,255,255,192,8,0,0,0,0,0,0,0,0, + // 0x7247 片 + 71,114,32,35,24,36,1,252,0,0,0,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,47,213,85,95,245,85,84,0,47,255,255,255,255,255,253,0,47,255,255,255,255,255,253,0,47,255,255,255,255,255,253,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,213,85,85,85,80,0,0,63,255,255,255,255,244,0,0,63,255,255,255,255,244,0,0,127,255,255,255,255,244,0,0,127,0,0,0,7,244,0,0,191,0,0,0,7,244,0,0,255,0,0,0,7,244,0,0,254,0,0,0,7,244,0,2,252,0,0,0,7,244,0,3,252,0,0,0,7,244,0,11,248,0,0,0,7,244,0,15,240,0,0,0,7,244,0,63,224,0,0,0,7,244,0,127,192,0,0,0,7,244,0,31,0,0,0,0,7,244,0,9,0,0,0,0,7,244,0,0,0,0,0,0,0,0,0, + // 0x7269 物 + 105,114,34,34,50,36,1,253,0,3,240,0,14,64,0,0,0,0,3,240,0,31,128,0,0,0,11,131,240,0,47,64,0,0,0,15,195,240,0,63,0,0,0,0,15,195,240,0,63,0,0,0,0,15,195,240,0,190,0,0,0,0,15,131,240,0,255,255,255,255,208,31,255,255,209,255,255,255,255,192,31,255,255,211,255,255,255,255,192,47,255,255,215,240,126,15,207,192,63,7,240,15,224,188,31,143,192,62,3,240,31,192,252,47,79,192,125,3,240,63,129,248,63,15,192,252,3,240,255,2,244,63,15,192,44,3,240,125,3,240,126,31,192,0,3,240,4,11,208,189,31,192,0,3,240,96,15,192,252,31,128,0,3,255,240,47,129,248,31,128,0,47,255,240,127,3,244,47,128,27,255,255,144,253,3,240,47,128,127,255,244,2,252,11,224,47,64,63,251,240,11,244,15,192,63,64,62,3,240,47,224,47,192,63,64,0,3,240,63,192,63,64,63,0,0,3,240,15,0,191,0,63,0,0,3,240,0,1,253,0,127,0,0,3,240,0,3,248,0,127,0,0,3,240,0,15,240,0,190,0,0,3,240,0,47,208,0,253,0,0,3,240,0,191,128,2,252,0,0,3,240,3,255,3,255,252,0,0,3,240,1,252,2,255,244,0,0,3,240,0,32,1,255,208,0,0,3,240,0,0,0,0,0,0, + // 0x7387 率 + 135,115,32,35,24,36,2,252,0,0,0,11,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,0,0,0,63,64,0,0,0,2,0,0,190,0,0,3,208,31,208,1,252,7,64,15,244,31,248,31,240,15,208,63,208,2,255,127,208,63,65,255,0,0,127,95,240,190,3,248,0,0,28,3,254,248,0,80,0,0,0,0,191,241,64,0,0,0,0,64,47,207,193,128,0,0,27,192,127,7,247,248,0,1,255,209,252,3,255,255,64,111,255,255,255,255,252,191,240,255,228,191,255,255,254,15,253,126,0,127,255,165,127,2,254,32,0,0,15,224,30,0,116,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,0,0,0,0, + // 0x7528 用 + 40,117,31,32,0,36,1,252,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,252,0,191,0,1,252,0,1,252,0,191,0,1,252,0,1,252,0,191,0,1,252,0,1,252,0,191,0,1,252,0,1,252,0,191,0,1,252,0,1,252,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,252,0,191,0,1,252,0,1,252,0,191,0,1,252,0,1,252,0,190,0,1,252,0,1,252,0,190,0,1,252,0,1,252,0,190,0,1,252,0,1,252,0,190,0,1,252,0,1,252,0,191,255,255,255,255,255,252,0,255,255,255,255,255,255,252,0,255,255,255,255,255,255,252,0,252,0,1,252,0,1,252,1,252,0,1,252,0,1,252,2,252,0,1,252,0,1,252,3,248,0,1,252,0,1,252,3,244,0,1,252,0,1,252,11,240,0,1,252,0,1,252,15,224,0,1,252,0,1,252,47,192,0,1,252,0,2,252,127,192,0,1,252,31,255,252,127,0,0,1,252,15,255,244,13,0,0,1,248,11,255,144,0,0,0,0,0,0,0,0, + // 0x754c 界 + 76,117,32,34,16,36,2,252,1,170,170,170,170,170,170,64,1,255,255,255,255,255,255,128,1,255,255,255,255,255,255,128,1,252,0,11,224,0,63,128,1,252,0,11,224,0,63,128,1,252,0,11,224,0,63,128,1,254,170,175,250,170,191,128,1,255,255,255,255,255,255,128,1,255,255,255,255,255,255,128,1,252,0,11,224,0,63,128,1,252,0,11,224,0,63,128,1,252,0,11,224,0,63,128,1,254,170,175,250,170,191,128,1,255,255,255,255,255,255,128,1,255,255,255,255,255,255,128,0,0,31,240,11,248,0,0,0,0,191,192,2,254,0,0,0,2,255,0,0,255,192,0,0,31,252,0,0,63,248,0,1,255,240,0,0,11,255,128,31,255,191,64,0,255,255,249,255,253,63,64,0,254,47,255,127,208,63,64,0,254,7,253,45,0,63,64,0,254,0,40,0,0,127,0,0,254,0,0,0,0,191,0,0,254,0,0,0,0,255,0,0,254,0,0,0,3,253,0,0,254,0,0,0,15,252,0,0,254,0,0,0,191,240,0,0,254,0,0,7,255,192,0,0,254,0,0,2,254,0,0,0,254,0,0,0,244,0,0,0,254,0,0,0,0,0,0,0,0,0,0, + // 0x767d 白 + 125,118,26,34,238,36,5,253,0,0,11,228,0,0,0,0,0,15,244,0,0,0,0,0,15,240,0,0,0,0,0,31,224,0,0,0,0,0,63,192,0,0,0,85,85,127,213,85,85,80,255,255,255,255,255,255,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,254,85,85,85,85,91,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,255,255,255,255,255,255,240,254,85,85,85,85,91,240,253,0,0,0,0,7,240,253,0,0,0,0,7,240, + // 0x7684 的 + 132,118,31,34,16,36,3,253,0,46,64,0,14,64,0,0,0,63,128,0,15,208,0,0,0,63,64,0,31,192,0,0,0,127,0,0,47,128,0,0,0,190,0,0,63,64,0,0,0,253,0,0,127,0,0,0,255,255,255,192,191,255,255,244,255,255,255,192,255,255,255,244,255,255,255,194,255,255,255,244,252,0,15,195,248,0,2,244,252,0,15,203,240,0,3,244,252,0,15,207,224,0,3,244,252,0,15,255,192,0,3,244,252,0,15,239,128,0,3,240,252,0,15,199,5,0,3,240,252,0,15,192,63,0,3,240,255,255,255,192,63,192,3,240,255,255,255,192,15,224,3,240,255,255,255,192,11,244,3,240,252,0,15,192,3,252,3,240,252,0,15,192,0,254,3,240,252,0,15,192,0,191,7,240,252,0,15,192,0,63,71,240,252,0,15,192,0,24,7,224,252,0,15,192,0,0,11,224,252,0,15,192,0,0,11,224,252,0,15,192,0,0,15,208,255,255,255,192,0,0,15,208,255,255,255,192,0,0,31,192,255,255,255,192,0,0,63,192,252,0,0,0,7,255,255,128,252,0,0,0,3,255,255,0,252,0,0,0,2,255,248,0,0,0,0,0,0,0,0,0, + // 0x76e3 監 + 227,118,33,33,41,36,2,254,0,0,0,0,0,164,0,0,0,42,170,170,170,0,252,0,0,0,63,255,255,255,1,252,0,0,0,63,255,255,255,2,244,0,0,0,63,1,244,0,3,240,0,0,0,63,1,244,0,7,255,255,254,0,63,255,255,253,11,255,255,255,0,63,255,255,253,15,255,255,255,0,63,0,0,189,47,64,0,0,0,63,0,0,125,127,0,0,0,0,63,0,0,125,254,0,0,0,0,63,0,0,126,252,0,0,0,0,63,255,255,253,56,0,0,0,0,63,255,255,253,0,0,0,0,0,63,1,244,0,0,0,0,0,0,63,1,244,0,3,255,255,252,0,63,171,254,170,67,255,255,252,0,63,255,255,255,67,255,255,252,0,63,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,170,170,170,64,0,1,255,255,255,255,255,255,64,0,1,255,255,255,255,255,255,64,0,1,252,3,240,15,192,63,64,0,1,252,3,240,15,192,63,64,0,1,252,3,240,15,192,63,64,0,1,252,3,240,15,192,63,64,0,1,252,3,240,15,192,63,64,0,1,252,3,240,15,192,63,64,0,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64, + // 0x76f4 直 + 244,118,32,34,16,36,2,253,0,0,0,3,248,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,0,0,0,15,240,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,208,0,0,0,0,0,63,255,255,255,255,0,15,208,63,255,255,255,255,0,15,208,63,85,85,85,191,0,15,208,63,0,0,0,127,0,15,208,63,0,0,0,127,0,15,208,63,255,255,255,255,0,15,208,63,255,255,255,255,0,15,208,63,85,85,85,191,0,15,208,63,0,0,0,127,0,15,208,63,0,0,0,127,0,15,208,63,255,255,255,255,0,15,208,63,255,255,255,255,0,15,208,63,85,85,85,191,0,15,208,63,0,0,0,127,0,15,208,63,0,0,0,127,0,15,208,63,255,255,255,255,0,15,208,63,255,255,255,255,0,15,208,21,85,85,85,85,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,255,255,255,255,255,255,255,15,255,255,255,255,255,255,255,15,255,255,255,255,255,255,255,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0, + // 0x7720 眠 + 32,119,33,32,32,36,2,253,127,255,252,15,255,255,255,253,0,127,255,252,15,255,255,255,253,0,127,255,252,15,255,255,255,253,0,126,0,252,15,192,0,0,253,0,126,0,252,15,192,0,0,253,0,126,0,252,15,192,0,0,253,0,126,0,252,15,192,0,0,253,0,127,255,252,15,255,255,255,253,0,127,255,252,15,255,255,255,253,0,127,255,252,15,255,255,255,253,0,126,0,252,15,192,15,192,0,0,126,0,252,15,192,15,192,0,0,126,0,252,15,192,15,208,0,0,126,0,252,15,192,15,208,0,0,126,0,252,15,192,11,208,0,0,127,255,252,15,255,255,255,255,64,127,255,252,15,255,255,255,255,64,127,255,252,15,255,255,255,255,64,126,0,252,15,208,7,240,0,0,126,0,252,15,192,3,240,0,0,126,0,252,15,192,3,240,0,0,126,0,252,15,192,3,244,0,0,127,0,252,15,192,2,248,0,0,127,255,252,15,192,1,252,0,0,127,255,252,15,192,0,252,7,64,127,255,252,15,192,0,253,7,192,126,0,0,15,192,105,190,11,192,126,0,0,15,255,254,63,11,192,126,0,2,255,255,254,47,223,192,0,0,3,255,255,228,15,255,128,0,0,3,255,164,0,7,255,0,0,0,1,144,0,0,1,252,0, + // 0x780d 砍 + 13,120,34,35,59,36,1,252,0,0,0,0,31,128,0,0,0,0,0,0,0,47,192,0,0,0,63,255,255,252,63,128,0,0,0,63,255,255,252,63,128,0,0,0,63,255,255,252,63,64,0,0,0,0,63,0,0,127,0,0,0,0,0,127,0,0,191,0,0,0,0,0,126,0,0,255,255,255,255,208,0,189,0,0,255,255,255,255,208,0,253,0,1,255,255,255,255,192,0,252,0,2,252,47,128,47,192,0,252,0,3,248,47,128,63,128,1,248,0,7,240,47,128,63,64,3,255,255,223,240,47,128,63,0,3,255,255,255,208,47,128,190,0,7,255,255,255,192,47,128,253,0,15,244,11,215,64,47,128,252,0,15,244,11,208,0,63,128,4,0,47,244,11,208,0,63,192,0,0,63,244,11,208,0,63,192,0,0,255,244,11,208,0,127,208,0,0,191,244,11,208,0,255,224,0,0,62,244,11,208,0,251,240,0,0,22,244,11,208,2,246,248,0,0,2,244,11,208,3,240,252,0,0,2,244,11,208,11,224,190,0,0,2,255,255,208,31,192,63,64,0,2,255,255,208,63,128,47,192,0,2,255,255,209,255,0,15,240,0,2,244,0,7,253,0,7,253,0,2,244,0,47,244,0,2,255,128,2,244,0,255,208,0,0,191,224,0,0,0,63,64,0,0,31,192,0,0,0,24,0,0,0,3,64,0,0,0,0,0,0,0,0,0, + // 0x78ba 確 + 186,120,34,35,59,36,1,252,0,0,0,0,0,14,64,0,0,0,0,0,0,0,31,192,0,0,63,255,255,224,0,47,128,0,0,63,255,255,224,0,63,64,0,0,63,255,255,255,255,255,255,255,208,0,127,0,31,255,255,255,255,208,0,126,0,31,255,255,255,255,208,0,190,0,31,66,252,0,11,208,0,253,0,31,71,244,30,75,208,0,252,0,31,79,240,47,75,208,0,252,0,5,47,208,63,1,64,1,252,0,0,63,192,190,0,0,2,248,0,0,255,255,255,255,64,3,255,255,195,255,255,255,255,64,3,255,255,207,255,255,255,255,64,7,255,255,255,253,1,248,0,0,15,240,15,255,253,1,248,0,0,15,240,15,206,253,1,248,0,0,47,240,15,192,255,255,255,255,0,63,240,15,192,255,255,255,255,0,191,240,15,192,254,170,254,169,0,255,240,15,192,253,1,248,0,0,190,240,15,192,253,1,248,0,0,58,240,15,192,254,170,254,169,0,18,240,15,192,255,255,255,255,0,2,240,15,192,255,255,255,255,0,2,240,15,192,253,1,248,0,0,2,255,255,192,253,1,248,0,0,2,255,255,192,253,1,248,0,0,2,255,255,192,253,1,248,0,0,2,240,0,0,255,255,255,255,224,2,240,0,0,255,255,255,255,224,1,160,0,0,255,255,255,255,208,0,0,0,0,253,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x79fb 移 + 251,121,34,34,50,36,1,253,0,0,1,0,0,46,64,0,0,0,0,111,128,0,63,64,0,0,0,111,255,208,0,255,0,0,0,47,255,255,144,3,255,255,248,0,63,255,244,0,15,255,255,254,0,46,159,224,0,63,255,255,252,0,0,11,224,1,255,64,3,248,0,0,11,224,31,255,128,11,240,0,0,11,224,63,255,240,47,208,0,0,11,224,15,67,253,191,128,0,63,255,255,240,0,255,254,0,0,63,255,255,240,0,63,252,0,0,63,255,255,240,0,191,224,0,0,0,31,224,0,11,255,128,0,0,0,47,224,1,191,255,248,0,0,0,63,240,15,255,219,240,0,0,0,127,252,11,254,31,224,0,0,0,255,255,3,144,63,255,255,64,1,255,255,192,0,255,255,255,208,3,251,235,240,7,255,255,255,192,7,235,227,240,31,240,0,63,128,15,203,225,208,255,208,0,191,0,47,139,224,75,255,244,1,254,0,127,11,224,15,251,254,3,252,0,190,11,224,3,192,255,207,244,0,60,11,224,0,0,47,255,208,0,36,11,224,0,0,7,255,128,0,0,11,224,0,0,11,254,0,0,0,11,224,0,0,191,244,0,0,0,11,224,0,27,255,192,0,0,0,11,224,6,255,254,0,0,0,0,11,224,63,255,224,0,0,0,0,11,224,31,253,0,0,0,0,0,11,224,14,64,0,0,0,0, + // 0x7a4d 積 + 77,122,34,35,59,36,1,252,0,0,0,0,0,47,128,0,0,0,0,111,64,0,47,192,0,0,1,111,255,207,255,255,255,255,128,63,255,255,143,255,255,255,255,128,63,255,224,0,0,47,192,0,0,26,95,208,0,0,47,192,0,0,0,15,208,3,255,255,255,254,0,0,15,208,3,255,255,255,254,0,0,15,208,0,0,47,192,0,0,0,15,208,0,0,47,192,0,0,63,255,255,255,255,255,255,255,208,63,255,255,255,255,255,255,255,208,63,255,255,192,0,0,0,0,0,0,31,208,2,255,255,255,253,0,0,47,208,2,255,255,255,253,0,0,63,240,2,244,0,0,189,0,0,127,252,2,244,0,0,189,0,0,255,254,2,244,0,0,189,0,1,255,255,66,255,255,255,253,0,2,255,239,210,255,255,255,253,0,7,239,219,226,244,0,0,189,0,15,207,211,194,244,0,0,189,0,31,143,209,66,255,255,255,253,0,63,15,208,2,255,255,255,253,0,254,15,208,2,244,0,0,189,0,188,15,208,2,244,0,0,189,0,56,15,208,2,255,255,255,253,0,16,15,208,2,255,255,255,253,0,0,15,208,0,11,64,10,0,0,0,15,208,0,127,224,63,208,0,0,15,208,7,255,128,15,252,0,0,15,208,191,253,0,2,255,128,0,15,208,255,208,0,0,127,208,0,15,208,57,0,0,0,10,0,0,0,0,0,0,0,0,0,0, + // 0x7aef 端 + 239,122,34,34,50,36,1,253,0,26,0,0,0,47,64,0,0,0,63,0,0,0,47,128,0,0,0,63,0,15,192,47,128,63,0,0,63,0,15,192,47,128,63,0,0,63,0,15,192,47,128,63,0,0,63,0,15,192,47,128,63,0,0,63,0,15,192,47,128,63,0,63,255,255,15,192,47,128,63,0,63,255,255,15,255,255,255,255,0,63,255,255,15,255,255,255,255,0,0,0,0,15,255,255,255,255,0,6,0,120,0,0,0,0,0,0,31,0,190,0,0,0,0,0,0,15,64,189,127,255,255,255,255,208,15,128,252,127,255,255,255,255,208,15,128,252,127,255,255,255,255,208,11,192,252,0,0,63,64,0,0,11,192,248,0,0,127,0,0,0,11,193,244,0,0,191,0,0,0,7,209,244,31,255,255,255,255,128,7,210,240,31,255,255,255,255,128,7,211,240,31,255,255,255,255,128,7,211,224,31,131,224,188,31,128,0,3,230,159,131,224,188,31,128,0,7,255,223,131,224,188,31,128,27,255,255,239,131,224,188,31,128,191,255,254,95,131,224,188,31,128,127,254,64,31,131,224,188,31,128,62,64,0,31,131,224,188,31,128,0,0,0,31,131,224,188,31,128,0,0,0,31,131,224,188,31,128,0,0,0,31,131,224,189,191,128,0,0,0,31,131,224,188,255,64,0,0,0,26,64,0,0,254,0, + // 0x7b49 等 + 73,123,34,34,50,36,1,253,0,46,64,0,1,228,0,0,0,0,63,128,0,3,248,0,0,0,0,191,0,0,7,244,0,0,0,0,255,255,255,143,255,255,255,192,2,255,255,255,175,255,255,255,192,7,255,255,255,255,255,255,255,192,15,241,252,0,255,3,248,0,0,63,192,253,3,253,1,252,0,0,127,64,190,2,248,0,254,0,0,30,0,100,3,248,0,116,0,0,0,0,0,3,248,0,0,0,0,0,191,255,255,255,255,255,240,0,0,191,255,255,255,255,255,240,0,0,127,255,255,255,255,255,224,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,208,63,255,255,255,255,255,255,255,208,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,0,0,184,0,0,11,240,0,0,0,2,254,0,0,11,240,0,0,0,0,255,192,0,11,240,0,0,0,0,63,240,0,11,240,0,0,0,0,11,252,0,11,240,0,0,0,0,2,252,0,11,240,0,0,0,0,0,224,63,255,224,0,0,0,0,0,0,47,255,208,0,0,0,0,0,0,15,254,0,0,0, + // 0x7ba1 管 + 161,123,34,35,59,36,1,252,0,46,0,0,2,228,0,0,0,0,63,64,0,3,248,0,0,0,0,191,0,0,7,240,0,0,0,0,255,255,255,79,255,255,255,208,3,255,255,255,191,255,255,255,208,11,255,254,171,255,239,254,170,144,47,225,252,3,254,2,252,0,0,127,192,253,3,248,0,254,0,0,31,0,125,2,244,0,126,0,0,0,0,0,2,244,0,0,0,0,10,170,170,171,254,170,170,170,0,15,255,255,255,255,255,255,255,64,15,255,255,255,255,255,255,255,64,15,192,0,0,0,0,0,63,64,15,192,0,0,0,0,0,63,64,15,194,255,255,255,255,252,63,64,15,194,255,255,255,255,252,63,64,5,66,249,85,85,86,252,21,0,0,2,244,0,0,1,252,0,0,0,2,244,0,0,1,252,0,0,0,2,255,255,255,255,252,0,0,0,2,255,255,255,255,252,0,0,0,2,249,85,85,85,84,0,0,0,2,244,0,0,0,0,0,0,0,2,244,0,0,0,0,0,0,0,2,255,255,255,255,255,208,0,0,2,255,255,255,255,255,208,0,0,2,250,170,170,170,175,208,0,0,2,244,0,0,0,15,208,0,0,2,244,0,0,0,15,208,0,0,2,250,170,170,170,175,208,0,0,2,255,255,255,255,255,208,0,0,2,255,255,255,255,255,208,0,0,2,244,0,0,0,15,208,0,0,0,0,0,0,0,0,0,0, + // 0x7bb1 箱 + 177,123,33,35,59,36,1,252,0,47,64,0,1,248,0,0,0,0,63,128,0,3,248,0,0,0,0,127,0,0,7,244,0,0,0,0,255,255,255,75,255,255,255,192,1,255,255,255,159,255,255,255,192,3,255,255,255,191,255,255,255,192,11,241,252,0,191,71,240,0,0,15,224,253,1,255,2,252,0,0,63,192,190,3,252,0,253,0,0,127,64,127,2,248,0,191,0,0,31,0,124,0,112,0,56,0,0,0,2,248,0,0,0,0,0,0,0,2,248,0,63,255,255,255,0,0,2,248,0,63,255,255,255,0,0,2,248,0,63,255,255,255,0,47,255,255,255,63,0,0,127,0,47,255,255,255,63,0,0,127,0,47,255,255,255,63,0,0,127,0,0,11,248,0,63,255,255,255,0,0,15,252,0,63,255,255,255,0,0,47,255,0,63,170,170,255,0,0,63,255,208,63,0,0,127,0,0,191,255,244,63,0,0,127,0,1,255,250,253,63,0,0,127,0,3,246,248,255,63,255,255,255,0,15,242,248,60,63,255,255,255,0,47,194,248,20,63,170,170,255,0,191,130,248,0,63,0,0,127,0,63,2,248,0,63,0,0,127,0,12,2,248,0,63,234,170,255,0,0,2,248,0,63,255,255,255,0,0,2,248,0,63,255,255,255,0,0,2,248,0,63,0,0,127,0,0,2,248,0,42,0,0,21,0,0,0,0,0,0,0,0,0,0, + // 0x7cfb 系 + 251,124,33,34,50,36,2,253,0,0,0,0,0,0,4,0,0,0,0,0,0,0,90,255,0,0,0,5,90,171,255,255,255,192,0,47,255,255,255,255,255,255,208,0,31,255,255,255,255,250,80,0,0,15,255,235,254,64,0,0,0,0,0,0,11,252,0,16,0,0,0,0,0,31,240,0,126,0,0,0,0,0,127,192,1,255,64,0,0,0,160,255,0,7,254,0,0,0,2,255,253,0,31,248,0,0,0,2,255,244,0,127,224,0,0,0,0,127,244,1,255,64,0,0,0,0,11,253,7,253,0,0,0,0,0,1,255,159,244,2,64,0,0,0,0,63,255,192,31,224,0,0,0,0,15,255,0,15,248,0,0,0,0,31,248,0,3,254,0,0,0,0,191,224,0,0,255,192,0,255,255,255,255,255,255,255,224,0,255,255,255,255,255,255,255,248,0,191,255,255,255,255,255,255,254,0,85,84,0,15,245,0,0,255,64,0,0,0,15,224,0,0,125,0,0,2,64,15,224,7,0,16,0,0,11,244,15,224,47,208,0,0,0,47,240,15,224,47,248,0,0,0,191,192,15,224,7,255,0,0,3,255,0,15,224,0,255,208,0,31,252,0,15,224,0,47,244,0,191,240,0,15,224,0,11,254,0,255,192,0,15,224,0,2,254,0,46,0,0,15,224,0,0,180,0,0,0,0,15,224,0,0,0,0, + // 0x7d05 紅 + 5,125,34,35,59,36,1,252,0,6,64,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,127,1,1,255,255,255,255,192,0,253,7,225,255,255,255,255,192,46,248,15,241,255,255,255,255,192,127,240,31,208,0,11,240,0,0,63,224,63,128,0,11,240,0,0,15,244,255,0,0,11,240,0,0,2,254,252,0,0,11,240,0,0,0,255,244,0,0,11,240,0,0,0,63,225,240,0,11,240,0,0,0,47,194,248,0,11,240,0,0,0,191,0,252,0,11,240,0,0,1,253,0,191,0,11,240,0,0,191,255,255,255,64,11,240,0,0,191,255,255,255,192,11,240,0,0,127,255,255,239,208,11,240,0,0,0,3,244,7,208,11,240,0,0,0,3,244,2,0,11,240,0,0,1,3,244,20,0,11,240,0,0,11,227,245,252,0,11,240,0,0,15,211,244,253,0,11,240,0,0,15,195,244,190,0,11,240,0,0,15,195,244,63,0,11,240,0,0,31,131,244,63,64,11,240,0,0,63,67,244,31,128,11,240,0,0,63,3,244,15,192,11,240,0,0,191,3,244,14,0,11,240,0,0,109,3,244,11,255,255,255,255,224,4,3,244,11,255,255,255,255,224,0,3,244,11,255,255,255,255,224,0,3,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x7d22 索 + 34,125,32,34,16,36,2,253,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,0,1,254,0,0,0,253,127,0,7,252,0,64,0,253,127,0,31,240,1,248,0,253,127,30,127,192,11,253,0,253,0,127,254,0,63,240,0,0,0,47,252,1,255,128,0,0,0,3,255,71,253,9,0,0,0,0,127,255,240,63,192,0,0,0,15,255,128,47,244,0,0,0,31,252,0,7,254,0,106,170,255,250,170,170,255,192,127,255,255,255,255,255,255,244,127,255,255,255,255,255,255,253,21,80,64,15,224,0,0,248,0,2,228,15,224,10,0,16,0,15,252,15,224,63,224,0,0,127,224,15,224,31,253,0,7,255,128,15,224,2,255,192,127,253,0,15,224,0,63,244,255,224,0,15,224,0,7,254,63,64,0,15,224,0,0,248,4,0,0,15,224,0,0,0, + // 0x7d2b 紫 + 43,125,33,35,59,36,1,252,0,0,126,0,11,224,0,0,0,0,0,126,0,11,224,0,0,0,1,80,126,0,11,224,1,180,0,3,240,127,170,139,224,111,254,0,3,240,127,255,203,251,255,249,0,3,240,127,255,203,255,255,64,0,3,240,126,0,11,255,144,0,0,3,240,126,0,11,240,0,0,0,3,240,126,0,11,224,0,10,64,3,240,126,1,75,224,0,15,192,3,240,191,255,203,240,0,31,192,27,255,255,255,199,255,255,255,192,127,255,255,254,67,255,255,255,64,127,254,148,47,128,191,255,253,0,37,0,0,191,128,0,0,0,0,0,0,2,253,0,126,0,0,0,0,11,79,244,1,255,64,0,0,0,47,255,192,11,252,0,0,0,0,47,255,64,127,224,16,0,0,0,2,255,246,255,66,248,0,0,0,0,47,255,248,2,255,0,0,0,0,7,255,208,0,127,208,0,0,0,2,255,170,171,255,244,0,63,255,255,255,255,255,255,253,0,63,255,255,255,255,255,255,255,64,63,255,255,255,248,0,0,63,192,0,0,80,3,248,0,64,14,0,0,1,253,3,248,7,244,0,0,0,11,252,3,248,11,255,0,0,0,127,240,3,248,1,255,224,0,7,255,128,3,248,0,47,252,0,63,253,0,3,248,0,3,255,64,15,224,0,3,248,0,0,191,0,2,0,0,3,248,0,0,20,0,0,0,0,0,0,0,0,0,0, + // 0x7d30 細 + 48,125,33,34,50,36,1,253,0,13,0,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,126,0,2,255,255,255,255,64,0,252,8,2,255,255,255,255,64,1,248,31,130,255,255,255,255,64,43,240,63,130,244,15,192,47,64,63,208,127,2,244,15,192,47,64,127,192,253,2,244,15,192,47,64,31,226,248,2,244,15,192,47,64,7,251,240,2,244,15,192,47,64,2,255,192,2,244,15,192,47,64,0,255,79,66,244,15,192,47,64,0,126,15,194,244,15,192,47,64,0,252,11,210,244,15,192,47,64,2,249,175,242,244,15,192,47,64,191,255,255,246,255,255,255,255,64,191,255,255,254,255,255,255,255,64,127,239,208,255,255,255,255,255,64,0,15,192,123,244,15,192,47,64,0,15,192,2,244,15,192,47,64,9,15,193,130,244,15,192,47,64,15,207,207,194,244,15,192,47,64,15,143,199,210,244,15,192,47,64,31,79,195,242,244,15,192,47,64,47,79,194,242,244,15,192,47,64,63,15,193,250,244,15,192,47,64,63,15,192,250,244,15,192,47,64,189,15,192,146,255,255,255,255,64,188,15,192,2,255,255,255,255,64,4,15,192,2,255,255,255,255,64,0,15,192,2,244,0,0,47,64,0,15,192,2,244,0,0,47,64,0,11,192,0,80,0,0,0,0, + // 0x7d42 終 + 66,125,34,35,59,36,1,252,0,8,0,0,1,164,0,0,0,0,47,128,0,3,248,0,0,0,0,63,64,0,7,244,0,0,0,0,127,0,0,15,240,0,0,0,0,253,0,0,31,255,255,248,0,1,248,46,0,63,255,255,253,0,23,240,63,64,191,255,255,248,0,63,224,190,2,255,0,3,240,0,127,192,252,7,255,128,15,224,0,31,210,244,31,255,208,47,192,0,7,251,224,191,199,240,127,128,0,2,255,192,63,2,253,254,0,0,0,255,89,8,0,255,252,0,0,0,126,63,0,0,63,240,0,0,0,252,31,64,0,191,244,0,0,2,244,15,192,3,255,254,0,0,107,255,255,192,31,253,255,192,0,191,255,255,225,255,224,63,248,0,191,255,255,255,255,64,11,255,144,16,15,193,255,248,16,1,255,224,0,15,192,71,128,189,0,31,128,9,79,203,64,1,255,208,2,0,15,207,207,128,0,127,248,0,0,31,143,203,192,0,7,255,0,0,31,79,199,208,0,0,190,0,0,47,15,195,224,0,0,8,0,0,63,15,194,240,57,0,0,0,0,63,15,193,240,255,224,0,0,0,125,15,192,65,255,255,64,0,0,252,15,192,0,7,255,248,0,0,44,15,192,0,0,47,255,128,0,0,15,192,0,0,1,255,248,0,0,15,192,0,0,0,31,244,0,0,15,192,0,0,0,1,224,0,0,0,0,0,0,0,0,0,0, + // 0x7d71 統 + 113,125,34,35,59,36,1,252,0,8,0,0,0,47,128,0,0,0,47,128,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,127,0,0,0,63,128,0,0,0,253,0,0,0,63,128,0,0,1,252,46,47,255,255,255,255,192,7,240,63,111,255,255,255,255,192,63,224,190,47,255,255,255,255,192,127,192,252,0,7,244,0,0,0,47,210,244,0,11,240,7,64,0,11,251,240,0,15,224,31,192,0,2,255,192,0,31,192,11,240,0,0,255,72,0,63,128,3,248,0,0,126,63,0,63,85,171,253,0,0,252,31,95,255,255,255,255,0,2,244,15,223,255,255,255,255,128,107,255,255,223,255,234,84,31,192,191,255,255,224,0,0,0,15,192,191,255,255,240,10,128,105,5,0,16,15,193,240,15,192,190,0,0,0,15,192,64,31,192,190,0,0,9,79,199,0,31,192,190,0,0,15,207,207,128,31,192,190,0,0,31,143,207,192,47,128,190,0,0,31,79,199,208,63,64,190,0,0,47,15,195,224,63,64,190,0,0,63,15,195,240,127,0,190,1,0,63,15,194,240,190,0,190,3,208,125,15,192,65,253,0,190,3,240,252,15,192,3,252,0,190,3,240,44,15,192,31,240,0,126,3,224,0,15,192,191,208,0,127,255,208,0,15,192,255,64,0,63,255,192,0,15,192,56,0,0,31,255,64,0,0,0,0,0,0,0,0,0, + // 0x7d72 絲 + 114,125,34,34,50,36,1,253,0,10,64,0,0,7,64,0,0,0,15,224,0,0,15,224,0,0,0,31,192,0,0,31,192,0,0,0,63,64,0,0,63,128,0,0,0,191,2,0,0,127,1,64,0,0,252,11,224,0,253,3,244,0,46,248,15,224,42,248,15,240,0,63,240,63,192,127,240,31,208,0,127,208,127,0,127,208,63,128,0,31,240,253,0,15,240,191,0,0,3,254,252,0,3,253,253,0,0,0,255,240,0,0,255,248,0,0,0,127,209,192,0,63,241,240,0,0,63,135,240,0,63,195,248,0,0,190,3,244,0,191,1,252,0,1,252,1,252,1,253,0,191,0,191,255,255,253,127,255,255,255,64,191,255,255,255,127,255,255,255,192,127,255,255,255,127,255,255,255,208,0,3,240,47,80,3,240,11,208,0,3,240,8,0,3,240,3,0,6,147,240,96,0,3,240,16,0,11,227,242,244,11,211,242,244,0,15,211,241,252,15,211,242,252,0,15,195,240,252,31,195,240,253,0,15,195,240,126,47,131,240,191,0,31,131,240,63,63,67,240,63,64,63,67,240,62,127,3,240,47,192,63,3,240,0,254,3,240,15,192,190,3,240,2,252,3,240,15,224,28,3,240,0,184,3,240,7,128,0,3,240,0,0,3,240,0,0,0,3,240,0,0,3,240,0,0,0,3,240,0,0,3,240,0,0, + // 0x7da0 綠 + 160,125,34,34,50,36,1,253,0,25,0,0,14,128,0,0,0,0,47,128,0,31,192,0,0,0,0,63,0,0,47,128,0,0,0,0,126,0,0,63,255,255,244,0,0,252,4,0,63,255,255,244,0,1,248,47,64,127,170,171,240,0,27,240,63,0,190,0,3,240,0,63,224,190,0,253,0,7,240,0,127,193,252,0,255,255,255,224,0,31,211,244,1,255,255,255,208,0,11,251,224,2,254,170,175,192,0,2,255,192,1,96,0,15,192,0,0,255,92,0,0,0,31,192,0,0,190,62,31,255,255,255,255,192,1,252,47,95,255,255,255,255,192,3,240,31,223,255,255,255,255,192,255,255,255,192,0,15,192,0,0,191,255,255,224,0,15,208,4,0,191,255,235,241,208,15,224,31,64,0,15,130,251,244,15,240,127,192,0,15,129,66,253,15,241,254,0,10,79,134,0,191,15,255,248,0,15,143,159,64,63,79,255,224,0,31,79,143,192,12,15,255,64,0,47,15,139,192,1,79,255,64,0,47,15,135,208,11,207,223,192,0,63,15,131,224,127,223,207,240,0,62,15,131,226,255,79,195,252,0,189,15,129,31,252,15,193,255,64,252,15,128,127,224,15,192,191,224,40,15,128,63,64,15,192,47,192,0,15,128,28,11,255,192,7,64,0,15,128,0,7,255,64,0,0,0,15,128,0,3,249,0,0,0, + // 0x7db2 網 + 178,125,33,35,59,36,1,252,0,8,0,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,63,64,15,255,255,255,255,128,0,127,0,15,255,255,255,255,128,0,252,0,15,255,255,255,255,128,1,248,46,15,192,0,0,31,128,27,240,63,15,198,64,46,31,128,63,224,190,15,203,192,63,31,128,127,193,252,15,195,208,61,31,128,47,211,240,15,195,224,188,31,128,11,251,224,15,194,240,244,31,128,3,255,192,15,202,234,186,31,128,0,255,109,15,207,255,255,95,128,0,190,63,15,207,255,255,95,128,1,252,47,79,192,31,64,31,128,3,240,31,207,192,31,64,31,128,255,255,255,239,192,31,64,31,128,191,255,255,255,202,175,234,95,128,191,255,235,255,207,255,255,95,128,0,15,130,255,207,255,255,95,128,0,15,129,159,195,240,0,31,128,10,79,135,15,195,240,0,31,128,15,143,143,79,195,240,0,31,128,31,79,143,207,195,240,0,31,128,47,79,139,223,195,240,0,31,128,47,15,135,239,195,240,0,31,128,63,15,131,255,194,255,255,31,128,62,15,131,255,193,255,255,31,128,125,15,129,95,192,106,170,31,128,252,15,128,15,192,0,0,31,128,40,15,128,15,192,0,0,31,128,0,15,128,15,192,0,47,255,64,0,15,128,15,192,0,15,255,0,0,15,128,15,192,0,15,248,0,0,0,0,0,0,0,0,0,0, + // 0x7dd2 緒 + 210,125,34,34,50,36,1,253,0,29,0,0,1,248,0,0,0,0,47,128,0,1,248,0,14,64,0,63,0,0,1,248,0,47,128,0,126,0,0,1,248,0,63,0,0,252,24,11,255,255,253,190,0,1,248,63,79,255,255,254,253,0,47,240,127,15,255,255,255,252,0,127,208,253,0,1,248,7,240,0,127,193,252,0,1,248,15,224,0,31,211,240,0,1,248,47,192,0,11,251,224,0,1,248,127,64,0,3,255,192,63,255,255,255,255,208,0,255,93,63,255,255,255,255,208,0,190,63,63,255,255,255,255,208,1,252,47,64,0,127,192,0,0,3,240,31,192,1,255,0,0,0,255,255,255,208,11,252,0,0,0,191,255,255,224,63,255,255,253,0,191,255,235,242,255,255,255,253,0,0,15,130,255,255,255,255,253,0,0,15,128,255,254,0,0,253,0,10,79,135,63,190,0,0,253,0,15,143,143,68,126,0,0,253,0,31,79,143,192,127,170,170,253,0,47,15,139,192,127,255,255,253,0,47,15,135,208,127,255,255,253,0,63,15,131,224,126,0,0,253,0,62,15,131,208,126,0,0,253,0,189,15,128,0,126,0,0,253,0,188,15,128,0,127,255,255,253,0,4,15,128,0,127,255,255,253,0,0,15,128,0,127,255,255,253,0,0,15,128,0,126,0,0,253,0,0,15,128,0,41,0,0,168,0, + // 0x7dda 線 + 218,125,34,34,50,36,1,253,0,25,0,0,0,14,64,0,0,0,47,128,0,0,47,208,0,0,0,63,0,0,0,63,192,0,0,0,126,0,0,0,63,64,0,0,0,252,4,3,255,255,255,255,0,1,248,47,67,255,255,255,255,0,27,240,63,3,250,170,170,191,0,63,224,190,3,240,0,0,63,0,127,193,252,3,240,0,0,63,0,31,211,244,3,255,255,255,255,0,11,251,224,3,255,255,255,255,0,2,255,192,3,245,85,85,191,0,0,255,92,3,240,0,0,63,0,0,190,62,3,240,0,0,63,0,1,252,47,67,250,170,170,191,0,3,240,31,195,255,255,255,255,0,255,255,255,195,255,255,255,255,0,191,255,255,224,0,15,192,0,0,191,255,235,240,0,15,208,4,0,0,15,130,240,0,15,224,31,64,0,15,129,95,255,159,240,127,192,9,15,134,31,255,223,245,255,0,15,143,143,95,255,207,255,252,0,31,79,143,192,31,143,255,224,0,47,15,139,192,63,79,255,128,0,47,15,135,208,127,15,239,192,0,63,15,131,224,253,15,207,240,0,62,15,131,227,252,15,199,248,0,189,15,128,15,240,15,194,255,64,252,15,128,127,208,15,192,191,224,40,15,128,191,64,15,192,47,208,0,15,128,61,11,255,192,7,128,0,15,128,0,7,255,128,0,0,0,15,128,0,3,249,0,0,0, + // 0x7de8 編 + 232,125,33,34,50,36,1,253,0,25,0,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,63,0,63,255,255,255,255,192,0,126,0,63,255,255,255,255,192,0,252,20,63,255,255,255,255,192,1,248,63,0,0,0,0,0,0,27,240,127,0,0,0,0,0,0,63,224,253,6,170,170,170,170,0,127,193,248,11,255,255,255,255,0,31,211,240,11,255,255,255,255,0,7,251,224,11,208,0,0,63,0,2,255,192,11,208,0,0,63,0,0,255,92,11,208,0,0,63,0,0,190,125,11,250,170,170,191,0,0,252,63,11,255,255,255,255,0,3,240,31,75,255,255,255,255,0,255,255,255,203,208,0,0,0,0,191,255,255,203,208,0,0,0,0,191,191,239,219,255,255,255,255,192,0,31,67,239,255,255,255,255,192,0,31,66,79,254,190,191,175,192,14,95,90,15,252,61,30,15,192,31,95,111,15,252,61,30,15,192,31,95,95,79,252,61,30,15,192,47,31,79,159,253,126,111,95,192,47,31,75,239,191,255,255,255,192,63,31,75,255,127,255,255,255,192,62,31,71,255,124,61,30,15,192,188,31,64,190,124,61,30,15,192,252,31,64,252,124,61,30,15,192,20,31,66,248,124,61,30,15,192,0,31,67,240,124,61,30,175,128,0,31,64,160,124,61,30,127,128,0,31,64,0,104,20,4,62,0, + // 0x7e2e 縮 + 46,126,33,35,59,36,1,252,0,30,0,0,0,63,128,0,0,0,47,64,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,189,0,47,255,255,255,255,128,0,252,45,63,255,255,255,255,192,1,244,63,63,255,255,255,255,192,47,240,126,63,0,0,0,15,192,127,208,252,63,0,0,0,15,192,127,193,248,63,0,0,0,15,192,31,211,240,63,126,0,0,5,64,11,251,208,0,127,170,170,170,128,2,255,192,0,190,255,255,255,192,0,255,109,0,253,255,255,255,192,0,190,62,1,248,0,127,0,0,0,252,47,3,240,0,190,0,0,3,240,15,135,240,0,252,0,0,255,255,255,203,240,106,254,170,64,191,255,255,223,240,191,255,255,64,191,191,251,255,240,191,255,255,64,0,31,67,255,240,188,0,31,64,0,31,64,255,240,188,0,31,64,9,31,73,59,240,188,0,31,64,15,159,111,19,240,188,0,31,64,31,95,95,3,240,191,255,255,64,47,31,79,131,240,191,255,255,64,47,31,79,131,240,190,170,191,64,63,31,75,195,240,188,0,31,64,62,31,71,195,240,188,0,31,64,125,31,65,3,240,188,0,31,64,252,31,64,3,240,188,0,31,64,40,31,64,3,240,191,255,255,64,0,31,64,3,240,191,255,255,64,0,31,64,3,240,190,170,191,64,0,31,64,3,240,188,0,31,64,0,0,0,0,0,0,0,0,0, + // 0x7e3d 總 + 61,126,34,34,50,36,1,253,0,25,0,0,0,15,144,0,0,0,47,128,0,0,47,192,0,0,0,63,0,0,0,63,128,0,0,0,126,0,6,170,191,170,170,0,0,252,20,15,255,255,255,255,0,1,248,63,15,255,255,255,255,0,27,240,127,15,192,14,0,47,0,63,224,253,15,192,31,0,47,0,127,193,248,15,192,63,255,111,0,31,211,240,15,207,191,255,47,0,7,251,224,15,207,248,47,47,0,2,255,192,15,199,255,125,47,0,0,255,92,15,223,159,248,47,0,0,190,125,15,206,7,252,47,0,0,252,63,15,192,31,255,111,0,3,240,31,79,192,191,15,47,0,255,255,255,207,195,248,0,47,0,191,255,255,207,234,234,170,191,0,191,191,239,223,255,255,255,255,0,0,31,67,239,255,255,255,255,0,0,31,66,64,0,248,0,0,0,9,31,69,0,2,255,64,0,0,15,159,111,0,0,127,208,0,0,31,95,95,0,0,11,244,0,0,47,31,79,65,11,210,240,180,0,47,31,79,135,219,208,64,252,0,63,31,75,203,203,208,0,190,0,62,31,71,207,203,208,0,63,64,125,31,65,15,139,208,4,31,192,252,31,64,47,75,208,15,143,208,40,31,64,127,11,208,15,135,224,0,31,64,189,7,255,255,67,224,0,31,64,24,3,255,255,1,0,0,31,64,0,0,170,168,0,0, + // 0x7e7c 繼 + 124,126,34,34,50,36,1,253,0,52,0,188,1,0,1,0,0,0,190,0,252,7,192,3,192,0,0,252,0,252,15,64,11,128,0,0,248,0,252,31,40,15,13,0,2,244,80,252,252,61,253,47,0,3,240,252,252,252,184,188,124,0,63,209,248,252,63,240,47,244,0,127,195,240,252,15,208,11,228,0,63,135,224,252,11,124,11,173,0,15,223,192,252,30,45,31,15,0,7,255,64,253,255,255,255,255,128,2,255,0,253,255,255,255,255,192,0,254,240,253,229,7,249,65,192,0,249,244,252,0,1,0,0,0,3,240,248,255,255,255,255,255,192,7,208,188,255,255,255,255,255,192,255,255,254,254,171,170,171,170,128,255,255,255,252,7,192,3,208,0,191,191,191,252,11,128,7,192,0,0,63,31,252,15,8,15,73,0,0,63,4,252,189,62,191,31,0,29,63,40,252,252,124,252,61,0,47,63,124,252,125,244,62,184,0,47,63,61,252,31,224,15,240,0,63,63,62,252,11,212,7,236,0,62,63,47,252,15,124,11,174,0,62,63,31,252,46,30,31,15,64,125,63,15,253,255,255,255,255,192,188,63,4,253,233,67,249,65,208,252,63,0,252,0,1,0,0,64,56,63,0,255,255,255,255,255,208,0,63,0,255,255,255,255,255,208,0,63,0,254,170,170,170,170,128,0,62,0,188,0,0,0,0,0, + // 0x7e8c 續 + 140,126,34,35,59,36,1,252,0,25,0,0,0,63,128,0,0,0,63,128,0,0,63,128,0,0,0,63,0,63,255,255,255,255,192,0,189,0,63,255,255,255,255,192,0,252,20,0,0,63,128,0,0,1,244,63,0,0,63,128,0,0,27,240,190,7,255,255,255,255,0,63,208,252,7,255,255,255,255,0,127,194,248,0,0,0,0,0,0,31,211,240,15,255,255,255,255,64,11,255,208,15,255,255,255,255,64,3,255,128,15,66,240,244,31,64,0,255,124,15,175,192,255,255,64,0,189,125,15,125,0,21,111,64,0,248,63,15,64,0,0,31,64,2,240,47,79,255,255,255,255,64,107,255,255,143,255,255,255,255,64,191,255,255,192,0,0,0,0,0,127,255,235,211,255,255,255,253,0,16,31,67,131,255,255,255,253,0,0,31,64,3,240,0,0,189,0,5,31,90,3,255,255,255,253,0,15,159,111,3,250,170,170,253,0,31,95,95,67,240,0,0,189,0,47,31,79,131,255,255,255,253,0,47,31,75,195,250,170,170,253,0,63,31,75,195,240,0,0,189,0,62,31,70,3,250,170,170,253,0,125,31,64,3,255,255,255,253,0,252,31,64,0,31,64,47,64,0,40,31,64,2,255,192,127,244,0,0,31,64,191,254,0,11,255,64,0,31,65,255,208,0,0,191,208,0,31,64,56,0,0,0,14,0,0,0,0,0,0,0,0,0,0, + // 0x7ea2 红 + 162,126,34,33,41,36,1,254,0,2,64,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,15,240,5,85,85,85,85,0,0,31,208,15,255,255,255,255,128,0,63,192,15,255,255,255,255,128,0,127,64,15,255,255,255,255,128,0,255,0,0,0,31,208,0,0,2,252,3,64,0,31,208,0,0,3,248,11,224,0,31,208,0,0,11,240,31,240,0,31,208,0,0,31,208,63,192,0,31,208,0,0,191,255,255,64,0,31,208,0,0,191,255,254,0,0,31,208,0,0,63,255,252,0,0,31,208,0,0,41,11,244,0,0,31,208,0,0,0,31,208,0,0,31,208,0,0,0,127,128,0,0,31,208,0,0,1,254,0,0,0,31,208,0,0,7,252,22,144,0,31,208,0,0,31,255,255,208,0,31,208,0,0,127,255,255,224,0,31,208,0,0,63,255,233,0,0,31,208,0,0,46,144,0,0,0,31,208,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,31,208,0,0,0,0,27,192,0,31,208,0,0,0,107,255,192,0,31,208,0,0,127,255,255,239,255,255,255,255,208,127,255,249,95,255,255,255,255,208,127,249,0,31,255,255,255,255,208,57,0,0,5,85,85,85,85,64,0,0,0,0,0,0,0,0,0, + // 0x7f6e 置 + 110,127,33,34,50,36,2,252,5,85,85,85,85,85,85,80,0,15,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,240,0,15,208,11,208,11,224,7,240,0,15,208,11,208,11,224,7,240,0,15,229,95,229,91,229,91,240,0,15,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,240,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,127,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,253,0,106,170,170,175,234,170,170,169,0,0,0,0,15,192,0,0,0,0,0,0,63,255,255,255,255,128,0,11,240,63,255,255,255,255,128,0,11,240,63,0,0,0,31,128,0,11,240,63,0,0,0,31,128,0,11,240,63,255,255,255,255,128,0,11,240,63,255,255,255,255,128,0,11,240,63,0,0,0,31,128,0,11,240,63,255,255,255,255,128,0,11,240,63,255,255,255,255,128,0,11,240,63,0,0,0,31,128,0,11,240,63,0,0,0,31,128,0,11,240,63,255,255,255,255,128,0,11,240,63,255,255,255,255,128,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,255,255,255,255,255,255,255,64,11,255,255,255,255,255,255,255,64,11,250,170,170,170,170,170,170,0,11,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x7f72 署 + 114,127,33,34,50,36,1,252,1,85,85,85,85,85,85,84,0,3,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,252,0,3,244,2,244,2,248,0,252,0,3,244,2,244,2,248,0,252,0,3,244,2,244,2,248,0,252,0,3,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,252,0,1,85,85,95,229,85,85,84,0,0,0,0,11,224,0,0,80,0,0,42,170,175,250,170,130,248,0,0,63,255,255,255,255,219,252,0,0,63,255,255,255,255,255,224,0,0,0,0,11,224,1,255,128,0,0,0,0,11,224,15,253,0,0,42,170,170,175,250,191,254,170,128,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,0,31,255,192,0,0,0,0,0,6,255,253,0,0,0,0,0,0,191,255,249,85,85,80,0,0,111,255,255,255,255,255,240,0,47,255,255,255,255,255,255,240,0,127,255,254,0,0,0,7,240,0,47,228,126,0,0,0,11,240,0,9,0,127,255,255,255,255,240,0,0,0,127,255,255,255,255,240,0,0,0,126,0,0,0,7,240,0,0,0,126,0,0,0,7,240,0,0,0,127,85,85,85,91,240,0,0,0,127,255,255,255,255,240,0,0,0,127,255,255,255,255,240,0,0,0,126,0,0,0,7,224,0,0,0,0,0,0,0,0,0,0, + // 0x8070 聰 + 112,128,34,35,59,36,1,252,0,0,0,0,0,15,144,0,0,0,0,0,0,0,15,208,0,0,63,255,255,252,0,47,192,0,0,63,255,255,253,170,191,234,170,0,63,255,255,255,255,255,255,255,0,3,240,15,195,255,255,255,255,0,3,240,15,195,240,11,64,47,0,3,240,15,195,240,15,0,47,0,3,240,15,195,240,47,255,47,0,3,255,255,195,243,254,175,47,0,3,255,255,195,243,252,46,47,0,3,255,255,195,247,255,188,47,0,3,240,15,195,243,75,244,47,0,3,240,15,195,240,3,252,47,0,3,240,15,195,240,31,191,47,0,3,240,15,195,240,253,8,47,0,3,240,15,195,240,240,0,47,0,3,255,255,195,255,255,255,255,0,3,255,255,195,255,255,255,255,0,3,255,255,193,170,191,170,170,0,3,240,15,192,0,191,128,0,0,3,240,15,192,0,63,240,0,0,3,240,15,192,0,7,252,0,0,3,240,15,192,3,240,252,16,0,3,240,111,192,247,240,48,252,0,27,255,255,194,247,240,0,253,0,191,255,255,195,243,240,0,127,0,127,255,175,195,243,240,0,63,64,62,64,15,199,227,240,7,95,192,0,0,15,207,195,240,7,207,192,0,0,15,239,131,240,11,203,224,0,0,15,239,2,255,255,199,224,0,0,15,193,1,255,255,66,0,0,0,15,192,0,42,169,0,0,0,0,0,0,0,0,0,0,0, + // 0x81ea 自 + 234,129,26,35,245,36,5,252,0,0,3,232,0,0,0,0,0,7,248,0,0,0,0,0,11,240,0,0,0,0,0,15,240,0,0,0,0,0,15,208,0,0,0,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,64,0,0,0,15,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,0,0,0,0,11,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,0,0,0,0,11,240,127,0,0,0,0,11,224,0,0,0,0,0,0,0, + // 0x85cd 藍 + 205,133,32,33,8,36,2,254,0,0,190,0,0,190,0,0,0,0,190,0,0,254,0,0,191,255,255,255,255,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,190,0,0,254,0,0,0,0,190,0,0,189,0,0,0,0,0,0,0,248,0,0,15,255,255,255,129,252,0,0,15,255,255,255,131,248,0,0,15,64,252,0,7,254,170,169,15,255,255,254,15,255,255,253,15,255,255,254,47,255,255,253,15,64,0,62,127,64,0,0,15,64,0,63,255,0,0,0,15,255,255,254,124,0,0,0,15,255,255,254,4,0,0,0,15,64,252,0,2,170,170,164,15,64,252,0,3,255,255,248,15,255,255,255,195,255,255,248,15,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,170,170,170,64,0,255,255,255,255,255,255,128,0,255,255,255,255,255,255,128,0,252,3,240,11,192,47,128,0,252,3,240,11,192,47,128,0,252,3,240,11,192,47,128,0,252,3,240,11,192,47,128,0,252,3,240,11,192,47,128,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x884c 行 + 76,136,34,35,59,36,1,252,0,0,228,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,11,248,3,255,255,255,255,64,0,47,240,3,255,255,255,255,64,0,191,192,3,255,255,255,255,64,3,255,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,127,224,0,0,0,0,0,0,0,63,128,46,64,0,0,0,0,0,29,0,127,128,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,11,248,47,255,255,255,255,208,0,31,240,47,255,255,255,255,208,0,127,192,47,255,255,255,255,208,1,255,192,0,0,0,127,64,0,7,255,192,0,0,0,127,0,0,47,255,192,0,0,0,127,0,0,191,255,192,0,0,0,127,0,0,127,143,192,0,0,0,127,0,0,46,15,192,0,0,0,127,0,0,8,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,0,0,127,0,0,0,15,192,0,1,85,191,0,0,0,15,192,0,3,255,255,0,0,0,15,192,0,3,255,254,0,0,0,15,192,0,2,255,228,0,0,0,0,0,0,0,0,0,0,0, + // 0x8868 表 + 104,136,34,34,50,36,1,253,0,0,0,2,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,7,255,255,255,255,255,255,253,0,7,255,255,255,255,255,255,253,0,7,255,255,255,255,255,255,253,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,170,170,171,254,170,170,160,0,0,191,255,255,255,255,255,240,0,0,191,255,255,255,255,255,240,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,128,0,0,0,191,239,128,0,0,0,0,0,7,255,15,192,0,116,0,0,0,47,248,15,208,2,254,0,0,2,255,208,7,240,15,253,0,0,47,255,64,3,244,127,240,0,7,255,255,0,2,254,255,64,0,191,255,191,0,0,255,248,0,0,63,244,63,0,0,191,208,0,0,30,64,63,0,0,63,208,0,0,0,0,63,0,0,31,240,0,0,0,0,63,0,27,139,253,0,0,0,0,63,91,255,194,255,128,0,0,0,127,255,255,192,191,248,0,0,111,255,255,249,0,31,255,128,0,255,255,249,0,0,7,255,208,0,191,249,0,0,0,0,127,64,0,57,0,0,0,0,0,6,0, + // 0x88ab 被 + 171,136,34,34,50,36,1,253,0,47,64,0,0,11,208,0,0,0,47,128,0,0,11,224,0,0,0,47,128,0,0,11,224,0,0,0,47,128,0,0,11,224,0,0,0,47,128,0,0,11,224,0,0,0,47,128,0,0,11,224,0,0,0,47,128,3,255,255,255,255,208,63,255,255,67,255,255,255,255,192,63,255,255,195,255,255,255,255,192,63,255,255,131,240,11,224,47,128,0,0,63,3,240,11,224,63,64,0,0,190,3,240,11,224,63,0,0,1,252,3,240,11,224,126,0,0,3,244,131,240,11,224,0,0,0,15,225,247,255,255,255,254,0,0,47,211,231,255,255,255,255,0,0,191,255,199,255,255,255,254,0,2,255,255,7,255,192,0,253,0,11,255,254,7,239,208,1,252,0,47,255,191,75,231,240,3,248,0,255,239,143,203,227,244,3,244,0,127,47,139,203,210,252,15,240,0,60,47,131,79,208,253,31,208,0,16,47,128,15,192,191,63,192,0,0,47,128,31,192,63,255,64,0,0,47,128,47,128,31,254,0,0,0,47,128,63,64,15,252,0,0,0,47,128,63,0,47,254,0,0,0,47,128,191,0,255,255,208,0,0,47,128,254,7,255,127,248,0,0,47,129,252,127,252,15,255,128,0,47,131,248,255,224,2,255,208,0,47,130,240,127,64,0,127,128,0,47,128,80,36,0,0,7,0, + // 0x88c5 装 + 197,136,34,35,59,36,1,252,0,0,190,0,0,47,128,0,0,0,0,190,0,0,47,128,0,0,7,64,190,0,0,47,128,0,0,31,224,190,0,0,47,128,0,0,11,248,190,0,0,47,128,0,0,1,253,190,63,255,255,255,255,192,0,120,190,63,255,255,255,255,192,0,16,190,63,255,255,255,255,192,0,0,190,0,0,47,128,0,0,0,0,190,0,0,47,128,0,0,0,31,190,0,0,47,128,0,0,1,255,190,0,0,47,128,0,0,47,255,190,0,0,47,128,0,0,127,244,190,15,255,255,255,255,0,63,64,190,15,255,255,255,255,0,20,0,190,11,255,255,255,255,0,0,0,190,0,0,0,0,0,0,0,0,20,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,42,170,170,171,254,170,170,170,128,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,2,255,63,64,0,80,0,0,0,47,248,31,192,2,248,0,0,6,255,208,11,224,31,248,0,1,191,255,0,3,249,255,192,0,127,255,255,0,1,255,253,0,0,47,248,127,0,0,191,224,0,0,9,0,63,0,0,47,244,0,0,0,0,63,90,254,11,255,64,0,0,26,255,255,254,1,255,249,0,0,127,255,255,253,0,47,255,208,0,63,255,148,0,0,2,255,128,0,41,0,0,0,0,0,27,0,0,0,0,0,0,0,0,0,0, + // 0x88dd 裝 + 221,136,34,35,59,36,1,252,2,144,15,192,0,15,192,0,0,7,224,15,192,0,15,192,0,0,7,224,15,192,0,15,192,0,0,7,224,15,192,0,15,192,0,0,7,250,175,192,0,15,192,0,0,7,255,255,203,255,255,255,255,128,7,255,255,203,255,255,255,255,128,3,208,15,203,255,255,255,255,128,0,0,15,192,0,15,192,0,0,42,170,175,192,0,15,192,0,0,63,255,255,192,0,15,192,0,0,63,255,255,192,0,15,192,0,0,2,244,15,192,0,15,192,0,0,3,244,15,194,255,255,255,255,0,7,240,15,195,255,255,255,255,0,15,224,15,195,255,255,255,255,0,127,192,15,192,0,0,0,0,0,63,0,15,194,252,0,0,0,0,24,0,0,2,252,0,0,0,0,42,170,170,171,254,170,170,170,128,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,2,255,63,64,0,80,0,0,0,111,248,31,192,2,248,0,0,27,255,192,11,224,31,248,0,6,255,255,0,3,249,255,208,0,127,255,255,0,1,255,253,0,0,47,228,127,0,0,191,224,0,0,4,0,127,0,5,47,248,0,0,0,0,127,111,255,11,255,64,0,0,107,255,255,255,1,255,249,0,0,191,255,255,233,0,47,255,208,0,127,250,80,0,0,2,255,128,0,20,0,0,0,0,0,27,0,0,0,0,0,0,0,0,0,0, + // 0x8907 複 + 7,137,34,34,50,36,1,253,0,63,0,0,62,0,0,0,0,0,63,0,0,127,0,0,0,0,0,63,0,0,254,0,0,0,0,0,63,0,1,255,255,255,255,192,0,63,0,3,255,255,255,255,192,0,63,0,11,255,255,255,255,192,0,63,0,15,208,0,0,0,0,63,255,254,63,192,0,0,0,0,63,255,255,255,128,0,0,0,0,63,255,254,126,255,255,255,252,0,0,0,188,21,255,255,255,252,0,0,0,252,1,248,0,0,252,0,0,2,248,1,248,0,0,252,0,0,3,240,1,255,255,255,252,0,0,11,226,129,255,255,255,252,0,0,31,195,225,248,0,0,252,0,0,63,203,193,248,0,0,252,0,0,191,255,1,255,255,255,252,0,2,255,253,1,255,255,255,252,0,7,255,254,0,3,252,0,0,0,31,255,127,64,11,240,0,0,0,127,255,31,128,47,255,255,244,0,191,63,11,0,255,255,255,252,0,60,63,0,7,255,170,175,244,0,16,63,0,47,255,64,15,224,0,0,63,0,255,239,208,63,192,0,0,63,0,62,11,249,255,0,0,0,63,0,0,2,255,252,0,0,0,63,0,0,1,255,244,0,0,0,63,0,0,47,255,255,64,0,0,63,0,27,255,255,255,254,64,0,63,0,255,255,128,127,255,224,0,63,0,191,248,0,6,255,192,0,63,0,57,0,0,0,27,0, + // 0x89d2 角 + 210,137,31,35,24,36,1,252,0,0,11,160,0,0,0,0,0,0,15,240,0,0,0,0,0,0,47,255,255,248,0,0,0,0,127,255,255,255,0,0,0,0,255,255,255,254,0,0,0,3,253,0,2,252,0,0,0,15,244,0,7,244,0,0,0,63,224,0,15,224,0,0,0,255,255,255,255,255,255,244,7,255,255,255,255,255,255,244,47,255,255,255,255,255,255,244,15,239,192,0,189,0,3,244,3,79,192,0,189,0,3,244,0,15,192,0,189,0,3,244,0,15,192,0,189,0,3,244,0,15,192,0,189,0,3,244,0,15,255,255,255,255,255,244,0,15,255,255,255,255,255,244,0,15,255,255,255,255,255,244,0,15,192,0,189,0,3,244,0,31,192,0,189,0,3,244,0,31,192,0,189,0,3,244,0,47,192,0,189,0,3,244,0,47,255,255,255,255,255,244,0,63,255,255,255,255,255,244,0,63,255,255,255,255,255,244,0,191,0,0,0,0,3,244,0,253,0,0,0,0,3,244,2,252,0,0,0,0,3,244,7,248,0,0,0,0,3,244,31,240,0,0,0,0,7,244,127,192,0,0,0,255,255,244,63,64,0,0,0,127,255,240,13,0,0,0,0,63,254,64,0,0,0,0,0,0,0,0, + // 0x8a08 計 + 8,138,34,34,50,36,1,253,0,0,0,0,0,3,240,0,0,6,170,170,144,0,7,240,0,0,11,255,255,208,0,7,240,0,0,11,255,255,208,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,191,255,255,252,0,7,240,0,0,191,255,255,252,0,7,240,0,0,106,170,170,168,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,15,255,255,208,0,7,240,0,0,15,255,255,209,85,87,245,85,80,10,170,170,151,255,255,255,255,240,0,0,0,7,255,255,255,255,240,0,0,0,7,255,255,255,255,240,15,255,255,208,0,7,240,0,0,15,255,255,208,0,7,240,0,0,10,170,170,144,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,15,255,255,208,0,7,240,0,0,15,255,255,208,0,7,240,0,0,15,234,175,208,0,7,240,0,0,15,192,11,208,0,7,240,0,0,15,192,11,208,0,7,240,0,0,15,192,11,208,0,7,240,0,0,15,192,11,208,0,7,240,0,0,15,192,11,208,0,7,240,0,0,15,234,175,208,0,7,240,0,0,15,255,255,208,0,7,240,0,0,15,255,255,208,0,7,240,0,0,15,192,0,0,0,7,240,0,0,10,128,0,0,0,7,240,0,0, + // 0x8a0a 訊 + 10,138,35,34,50,36,1,252,6,170,170,64,0,0,0,0,0,15,255,255,139,255,255,255,240,0,15,255,255,139,255,255,255,240,0,0,0,0,11,255,255,255,240,0,0,0,0,0,11,208,7,240,0,191,255,255,240,11,208,7,240,0,191,255,255,240,11,208,7,240,0,106,170,170,160,11,208,7,240,0,0,0,0,0,11,208,7,240,0,0,0,0,0,11,208,7,240,0,15,255,255,128,11,208,7,240,0,15,255,255,128,11,208,7,240,0,10,170,170,64,11,208,7,240,0,0,0,0,15,255,255,231,240,0,0,0,0,15,255,255,231,240,0,15,255,255,143,255,255,231,240,0,15,255,255,128,15,208,7,240,0,10,170,170,64,15,192,7,240,0,0,0,0,0,15,192,7,240,0,0,0,0,0,31,192,7,240,0,15,255,255,128,31,192,3,240,0,15,255,255,128,47,128,3,240,0,15,234,191,128,63,64,3,240,0,15,192,15,128,127,0,3,240,0,15,192,15,128,191,0,3,244,64,15,192,15,128,254,0,2,244,160,15,192,15,130,252,0,2,248,180,15,192,15,131,248,0,1,252,244,15,234,191,143,240,0,0,252,240,15,255,255,175,224,0,0,255,240,15,255,255,255,192,0,0,127,224,15,192,0,47,0,0,0,63,208,10,128,0,9,0,0,0,11,128,0,0,0,0,0,0,0,0,0, + // 0x8a18 記 + 24,138,34,33,41,36,1,253,6,170,170,144,0,0,0,0,0,11,255,255,224,191,255,255,254,0,11,255,255,224,191,255,255,254,0,0,0,0,0,191,255,255,254,0,0,0,0,0,0,0,0,190,0,191,255,255,252,0,0,0,190,0,191,255,255,252,0,0,0,190,0,106,170,170,168,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,15,255,255,208,0,0,0,190,0,15,255,255,208,0,0,0,190,0,10,170,170,144,0,0,0,190,0,0,0,0,0,127,255,255,254,0,0,0,0,0,127,255,255,254,0,15,255,255,208,127,255,255,254,0,15,255,255,208,127,0,0,190,0,10,170,170,144,127,0,0,190,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0,0,15,255,255,208,127,0,0,0,0,15,255,255,208,127,0,0,0,0,15,234,175,208,127,0,0,0,0,15,192,11,208,127,0,0,4,0,15,192,11,208,127,0,0,11,144,15,192,11,208,127,0,0,11,224,15,192,11,208,127,0,0,11,208,15,192,11,208,127,0,0,15,208,15,234,175,208,127,64,0,47,192,15,255,255,208,63,255,255,255,192,15,255,255,208,47,255,255,255,64,15,192,0,0,11,255,255,253,0,10,128,0,0,0,0,0,0,0, + // 0x8a2d 設 + 45,138,34,33,41,36,1,253,6,170,170,128,127,255,255,0,0,11,255,255,192,127,255,255,0,0,11,255,255,192,127,255,255,0,0,0,0,0,0,127,0,63,0,0,0,0,0,0,127,0,63,0,0,191,255,255,240,127,0,63,0,0,191,255,255,240,126,0,63,3,0,106,170,170,160,190,0,63,3,224,0,0,0,0,253,0,63,67,224,0,0,0,2,252,0,63,71,224,15,255,255,199,248,0,63,255,208,15,255,255,223,240,0,31,255,192,10,170,170,175,208,0,7,254,0,0,0,0,7,64,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,199,255,255,255,253,0,15,255,255,199,255,255,255,253,0,10,170,170,135,255,255,255,252,0,0,0,0,0,25,0,3,252,0,0,0,0,0,127,0,7,244,0,15,255,255,192,63,128,15,240,0,15,255,255,192,31,192,31,208,0,15,234,175,192,15,240,127,192,0,15,192,15,192,3,252,255,0,0,15,192,15,192,1,255,253,0,0,15,192,15,192,0,191,248,0,0,15,192,15,192,0,191,244,0,0,15,192,15,192,7,255,254,0,0,15,234,175,192,47,255,255,208,0,15,255,255,203,255,244,127,254,64,15,255,255,239,255,64,11,255,208,15,192,0,15,248,0,1,191,128,10,128,0,10,64,0,0,11,0, + // 0x8a66 試 + 102,138,34,35,59,36,1,252,0,0,0,0,0,0,126,20,0,10,170,170,0,0,0,126,189,0,15,255,255,0,0,0,126,127,0,15,255,255,0,0,0,126,47,192,0,0,0,0,0,0,126,15,208,0,0,0,0,0,0,126,3,128,191,255,255,192,0,0,126,0,0,191,255,255,218,170,170,255,170,128,191,255,255,223,255,255,255,255,192,0,0,0,15,255,255,255,255,192,0,0,0,0,0,0,127,0,0,15,255,255,64,0,0,127,0,0,15,255,255,64,0,0,127,0,0,10,170,170,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,15,255,254,63,0,0,15,255,255,79,255,254,63,0,0,15,255,255,79,255,254,63,0,0,10,170,170,0,47,64,63,0,0,0,0,0,0,47,64,63,0,0,0,0,0,0,47,64,63,0,0,15,255,255,64,47,64,47,64,0,15,255,255,64,47,64,47,64,0,15,234,191,64,47,64,47,128,0,15,192,47,64,47,64,31,128,0,15,192,47,64,47,64,15,192,0,15,192,47,64,47,65,79,193,208,15,192,47,64,47,255,143,209,240,15,192,47,91,255,255,139,226,240,15,234,191,111,255,250,7,247,224,15,255,255,95,249,0,3,255,208,15,255,255,73,0,0,2,255,192,15,192,0,0,0,0,0,255,128,10,64,0,0,0,0,0,46,0,0,0,0,0,0,0,0,0,0, + // 0x8a8d 認 + 141,138,34,33,41,36,1,253,10,170,170,3,255,255,255,255,64,15,255,255,3,255,255,255,255,64,15,255,255,3,255,255,255,255,64,0,0,0,0,0,126,0,63,0,0,0,0,0,0,189,0,63,0,191,255,255,209,224,253,0,63,0,191,255,255,211,255,252,0,63,0,106,170,170,130,255,252,0,63,0,0,0,0,0,31,255,64,63,0,0,0,0,0,7,255,224,127,0,15,255,255,64,15,255,240,127,0,15,255,255,64,47,194,224,190,0,10,170,170,0,191,64,64,254,0,0,0,0,3,254,0,255,253,0,0,0,0,31,248,0,255,252,0,15,255,255,75,208,96,191,224,0,15,255,255,66,0,253,0,0,0,10,170,170,0,0,255,192,0,0,0,0,0,0,0,47,244,0,0,0,0,0,0,0,7,253,0,0,15,255,255,64,6,144,252,0,0,15,255,255,66,71,224,48,116,0,15,234,191,67,231,224,1,252,0,15,192,47,71,215,224,0,253,0,15,192,47,75,215,224,0,127,0,15,192,47,79,199,224,0,63,128,15,192,47,79,199,224,9,31,192,15,192,47,95,135,224,11,207,208,15,234,191,127,71,224,11,203,224,15,255,255,191,7,224,15,199,240,15,255,255,76,7,255,255,131,128,15,192,0,0,3,255,255,64,0,10,64,0,0,0,191,253,0,0, + // 0x8aa4 誤 + 164,138,34,34,50,36,1,252,6,170,169,0,0,255,255,255,0,15,255,254,0,0,255,255,255,0,15,255,254,0,0,255,255,255,0,0,0,0,7,224,252,0,127,0,0,0,0,7,224,252,0,127,0,191,255,255,199,224,252,0,127,0,191,255,255,199,224,252,0,127,0,106,170,170,135,224,252,0,127,0,0,0,0,7,224,255,255,255,0,0,0,0,7,224,255,255,255,0,15,255,254,7,224,255,255,255,0,15,255,254,7,224,0,0,0,0,10,170,169,7,224,0,0,0,0,0,0,0,7,224,0,0,0,0,0,0,0,7,255,255,255,252,0,15,255,254,7,255,255,255,252,0,15,255,254,7,255,255,255,252,0,10,170,169,7,224,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,15,255,255,0,0,0,1,252,0,15,255,255,63,255,255,255,255,224,15,234,191,63,255,255,255,255,224,15,128,63,63,255,255,255,255,224,15,128,63,0,10,0,2,0,0,15,128,63,0,15,208,47,192,0,15,128,63,0,63,208,31,240,0,15,128,63,0,255,128,7,252,0,15,234,191,3,254,0,2,254,0,15,255,255,15,248,0,0,191,128,15,255,255,127,224,0,0,63,208,15,128,0,63,128,0,0,15,208,10,64,0,13,0,0,0,6,0,0,0,0,0,0,0,0,0,0, + // 0x8abf 調 + 191,138,33,34,50,36,1,252,10,170,168,15,255,255,255,255,64,15,255,252,31,255,255,255,255,64,15,255,252,31,255,255,255,255,64,0,0,0,31,128,0,0,47,64,0,0,0,31,128,31,0,47,64,191,255,255,31,128,31,64,47,64,191,255,255,31,128,31,64,47,64,106,170,170,31,139,255,254,47,64,0,0,0,31,139,255,254,47,64,0,0,0,31,134,175,169,47,64,15,255,252,31,128,31,64,47,64,15,255,252,31,128,31,64,47,64,10,170,168,31,134,175,170,47,64,0,0,0,31,143,255,255,47,64,0,0,0,31,143,255,255,47,64,15,255,252,31,128,0,0,47,64,15,255,252,31,128,0,0,47,64,10,170,168,31,129,85,84,47,64,0,0,0,31,139,255,253,47,64,0,0,0,31,139,255,253,47,64,15,255,252,47,75,192,61,47,64,15,255,252,47,75,192,61,47,64,15,234,252,47,75,192,61,47,64,15,64,188,63,11,192,61,47,64,15,64,188,63,11,213,125,47,64,15,64,188,63,11,255,253,47,64,15,64,188,126,11,255,253,47,64,15,64,188,189,11,192,0,47,64,15,234,252,252,1,64,0,47,64,15,255,254,252,0,0,16,127,64,15,255,255,248,0,0,63,255,64,15,64,3,244,0,0,63,255,0,10,64,0,112,0,0,47,248,0,0,0,0,0,0,0,0,0,0, + // 0x8acb 請 + 203,138,34,34,50,36,1,253,0,0,0,0,0,15,192,0,0,6,170,170,64,0,15,192,0,0,15,255,255,129,85,95,229,85,64,15,255,255,135,255,255,255,255,128,0,0,0,7,255,255,255,255,128,0,0,0,0,0,15,192,0,0,191,255,255,240,85,95,213,85,0,191,255,255,241,255,255,255,255,0,106,170,170,161,255,255,255,255,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,15,255,255,143,255,255,255,255,208,15,255,255,143,255,255,255,255,208,10,170,170,69,85,85,85,85,64,0,0,0,0,0,0,0,0,0,0,0,0,0,85,85,85,84,0,15,255,255,128,191,255,255,253,0,15,255,255,128,191,255,255,253,0,10,170,170,64,189,0,0,253,0,0,0,0,0,189,0,0,253,0,0,0,0,0,191,255,255,253,0,15,255,255,128,191,255,255,253,0,15,255,255,128,190,85,85,253,0,15,234,191,128,189,0,0,253,0,15,192,15,128,190,85,85,253,0,15,192,15,128,191,255,255,253,0,15,192,15,128,191,255,255,253,0,15,192,15,128,189,0,0,253,0,15,192,15,128,189,0,0,253,0,15,234,191,128,189,0,0,253,0,15,255,255,128,189,0,0,253,0,15,255,255,128,189,0,191,253,0,15,192,0,0,189,0,63,248,0,10,128,0,0,105,0,42,144,0, + // 0x8b70 議 + 112,139,34,34,50,36,1,253,0,0,0,0,100,0,3,144,0,10,170,168,0,252,0,11,224,0,15,255,252,0,127,0,15,192,0,15,255,252,21,127,85,111,149,0,0,0,0,47,255,255,255,255,64,0,0,0,47,255,255,255,255,64,191,255,255,0,0,63,0,0,0,191,255,255,0,0,63,0,0,0,106,170,170,11,255,255,255,253,0,0,0,0,11,255,255,255,253,0,0,0,0,0,0,63,64,0,0,15,255,252,0,0,63,0,0,0,15,255,252,255,255,255,255,255,192,10,170,168,255,255,255,255,255,192,0,0,0,170,170,170,170,170,128,0,0,0,0,0,81,160,0,0,15,255,252,5,175,250,245,244,0,15,255,252,127,255,209,245,254,0,10,170,168,63,254,1,244,63,64,0,0,0,0,62,1,244,15,64,0,0,0,0,62,1,244,0,0,15,255,252,255,255,255,255,255,192,15,255,252,255,255,255,255,255,192,15,234,252,85,191,85,253,85,64,15,64,188,0,62,0,252,36,0,15,64,188,0,127,188,188,190,0,15,64,188,191,255,252,190,252,0,15,64,188,255,255,232,127,240,0,15,64,188,250,190,0,63,192,0,15,234,252,0,62,0,191,129,208,15,255,252,0,62,7,255,194,224,15,255,252,21,190,127,219,251,208,15,64,0,47,253,61,3,255,192,10,64,0,15,244,0,0,191,0, + // 0x8b80 讀 + 128,139,34,35,59,36,1,252,0,0,0,0,0,63,64,0,0,10,170,168,0,0,63,64,0,0,15,255,252,63,255,255,255,255,192,15,255,252,63,255,255,255,255,192,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,191,255,255,11,255,255,255,255,0,191,255,255,6,170,170,170,170,0,106,170,170,0,0,0,0,0,0,0,0,0,47,255,255,255,255,128,0,0,0,47,255,255,255,255,128,15,255,252,47,1,224,240,15,128,15,255,252,47,11,192,255,255,128,10,170,168,47,121,0,21,95,128,0,0,0,47,0,0,0,15,128,0,0,0,47,255,255,255,255,128,15,255,252,47,255,255,255,255,128,15,255,252,0,0,0,0,0,0,10,170,168,11,255,255,255,254,0,0,0,0,11,255,255,255,254,0,0,0,0,11,208,0,0,126,0,15,255,252,11,255,255,255,254,0,15,255,252,11,229,85,85,190,0,15,234,252,11,208,0,0,126,0,15,64,188,11,255,255,255,254,0,15,64,188,11,229,85,85,190,0,15,64,188,11,208,0,0,126,0,15,64,188,11,255,255,255,254,0,15,64,188,11,255,255,255,254,0,15,234,252,0,47,64,47,64,0,15,255,252,2,255,192,127,244,0,15,255,252,127,253,0,7,255,64,15,64,0,255,208,0,0,127,208,10,64,0,56,0,0,0,11,0,0,0,0,0,0,0,0,0,0, + // 0x8b8a 變 + 138,139,34,35,59,36,1,252,0,40,0,0,0,0,29,0,0,0,62,0,63,255,128,63,0,0,0,252,0,63,255,128,188,0,0,10,240,144,0,0,5,244,120,0,31,210,245,255,255,255,224,252,0,15,215,226,255,255,255,227,240,0,3,255,192,0,0,3,255,208,0,0,255,16,42,170,128,255,84,0,0,252,180,63,255,192,189,124,0,2,240,124,0,0,1,244,47,0,63,255,255,0,0,63,255,255,128,63,255,255,191,255,255,255,255,208,21,111,10,63,255,169,111,66,192,0,47,0,0,0,0,31,64,0,11,175,120,127,255,199,159,109,0,15,175,60,126,175,203,159,111,0,31,47,46,124,11,207,95,79,128,47,47,31,124,11,223,31,71,192,62,47,5,127,255,254,31,67,208,44,47,11,250,170,156,31,65,0,0,26,31,208,0,0,10,0,0,0,0,127,192,0,0,0,0,0,0,1,255,255,255,255,255,255,0,0,11,255,255,255,255,255,255,0,0,63,254,170,170,175,254,170,0,2,255,255,0,0,47,224,0,0,31,253,127,224,1,255,128,0,0,11,208,15,254,31,253,0,0,0,1,0,1,255,255,240,0,0,0,0,0,1,191,255,228,0,0,0,0,22,191,255,255,255,249,64,0,127,255,255,249,6,255,255,255,208,63,255,249,0,0,7,255,255,192,31,229,0,0,0,0,5,175,0,0,0,0,0,0,0,0,0,0, + // 0x8cc7 資 + 199,140,32,35,24,36,2,252,0,0,0,3,224,0,0,0,11,144,0,7,240,0,0,0,31,255,64,15,229,85,85,80,7,255,240,47,255,255,255,253,0,31,224,191,255,255,255,252,0,1,194,252,7,248,3,240,0,0,7,240,11,252,15,224,0,0,16,192,31,254,15,192,0,27,240,0,127,191,128,0,27,255,240,7,254,31,248,0,255,255,145,191,248,7,255,228,191,228,3,255,128,0,191,255,121,0,2,244,0,0,11,253,0,127,255,255,255,255,255,104,0,127,255,255,255,255,255,0,0,127,0,0,0,0,127,0,0,126,0,0,0,0,127,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,127,0,0,0,0,127,0,0,126,0,0,0,0,127,0,0,127,0,0,0,0,127,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,126,0,0,0,0,127,0,0,127,0,0,0,0,127,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,0,29,0,0,100,0,0,0,2,255,192,2,255,144,0,1,191,254,0,1,191,254,0,191,255,224,0,0,7,255,228,63,249,0,0,0,0,111,254,14,64,0,0,0,0,2,224,0,0,0,0,0,0,0,0, + // 0x8ddd 距 + 221,141,34,33,41,36,1,253,11,255,255,244,0,0,0,0,0,15,255,255,244,127,255,255,255,192,15,255,255,244,127,255,255,255,192,15,192,3,244,127,255,255,255,192,15,192,3,244,127,0,0,0,0,15,192,3,244,127,0,0,0,0,15,192,3,244,127,0,0,0,0,15,192,3,244,127,0,0,0,0,15,192,3,244,127,0,0,0,0,15,255,255,244,127,255,255,254,0,15,255,255,244,127,255,255,254,0,15,255,255,244,127,255,255,254,0,0,3,240,0,127,0,0,190,0,0,3,240,0,127,0,0,190,0,0,3,240,0,127,0,0,190,0,15,195,240,0,127,0,0,190,0,15,195,240,0,127,0,0,190,0,15,195,255,252,127,0,0,190,0,15,195,255,252,127,0,0,190,0,15,195,255,252,127,255,255,254,0,15,195,240,0,127,255,255,254,0,15,195,240,0,127,255,255,254,0,15,195,240,0,127,0,0,0,0,15,195,240,0,127,0,0,0,0,15,195,240,4,127,0,0,0,0,15,195,246,253,127,0,0,0,0,15,199,255,253,127,0,0,0,0,31,255,255,253,127,0,0,0,0,191,255,254,64,127,255,255,255,224,191,254,64,0,127,255,255,255,224,126,64,0,0,127,255,255,255,224,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0,0, + // 0x8eca 車 + 202,142,32,35,24,36,2,252,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,63,255,255,255,255,255,255,252,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,1,255,255,255,255,255,255,64,1,255,255,255,255,255,255,64,1,255,255,255,255,255,255,64,1,252,0,15,224,0,63,64,1,252,0,15,224,0,63,64,1,254,170,175,250,170,191,64,1,255,255,255,255,255,255,64,1,255,255,255,255,255,255,64,1,252,0,15,224,0,63,64,1,252,0,15,224,0,63,64,1,252,0,15,224,0,63,64,1,254,170,175,250,170,191,64,1,255,255,255,255,255,255,64,1,255,255,255,255,255,255,64,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,0,0,0,0, + // 0x8edf 軟 + 223,142,34,35,59,36,1,252,0,3,244,0,1,228,0,0,0,0,3,244,0,2,248,0,0,0,0,3,244,0,2,248,0,0,0,0,3,244,0,3,244,0,0,0,63,255,255,255,67,240,0,0,0,63,255,255,255,71,240,0,0,0,63,255,255,255,75,240,0,0,0,0,3,244,0,11,255,255,255,192,0,3,244,0,15,255,255,255,192,31,255,255,255,31,255,255,255,192,31,255,255,255,47,135,240,31,128,31,151,245,127,63,71,240,47,64,31,66,240,63,191,7,240,63,0,31,66,240,63,254,7,240,63,0,31,86,245,127,252,7,240,62,0,31,255,255,255,248,7,240,125,0,31,255,255,255,48,7,240,188,0,31,66,240,63,0,7,240,4,0,31,66,240,63,0,11,240,0,0,31,151,245,127,0,15,244,0,0,31,255,255,255,0,15,248,0,0,31,255,255,255,0,31,252,0,0,0,3,244,0,0,47,189,0,0,0,3,244,0,0,63,62,0,0,0,3,244,0,0,189,63,0,0,127,255,255,255,192,252,47,128,0,127,255,255,255,195,248,15,208,0,127,255,255,255,203,240,11,240,0,0,3,244,0,47,224,3,252,0,0,3,244,0,191,192,1,255,0,0,3,244,3,255,0,0,255,208,0,3,244,15,252,0,0,63,224,0,3,244,3,240,0,0,15,192,0,3,244,2,128,0,0,2,64,0,0,0,0,0,0,0,0,0, + // 0x8ef8 軸 + 248,142,33,35,59,36,1,252,0,3,224,0,0,3,240,0,0,0,3,224,0,0,3,240,0,0,0,3,224,0,0,3,240,0,0,0,3,224,0,0,3,240,0,0,63,255,255,254,0,3,240,0,0,63,255,255,254,0,3,240,0,0,63,255,255,254,0,3,240,0,0,0,3,224,0,0,3,240,0,0,0,3,224,0,127,255,255,255,64,31,255,255,252,127,255,255,255,64,31,255,255,252,127,255,255,255,64,31,151,229,188,126,3,240,31,64,31,3,208,188,126,3,240,31,64,31,3,208,188,126,3,240,31,64,31,87,229,188,126,3,240,31,64,31,255,255,252,126,3,240,31,64,31,255,255,252,126,3,240,31,64,31,3,208,188,126,3,240,31,64,31,3,208,188,127,255,255,255,64,31,151,229,188,127,255,255,255,64,31,255,255,252,127,255,255,255,64,31,255,255,252,126,3,240,31,64,0,3,224,0,126,3,240,31,64,0,3,224,0,126,3,240,31,64,0,3,224,0,126,3,240,31,64,191,255,255,255,126,3,240,31,64,191,255,255,255,126,3,240,31,64,191,255,255,255,126,3,240,31,64,0,3,224,0,126,3,240,31,64,0,3,224,0,127,255,255,255,64,0,3,224,0,127,255,255,255,64,0,3,224,0,127,255,255,255,64,0,3,224,0,126,0,0,31,64,0,3,224,0,126,0,0,31,64,0,0,0,0,0,0,0,0,0, + // 0x8f09 載 + 9,143,33,35,59,36,2,252,0,0,252,0,3,240,4,0,0,0,0,252,0,3,244,46,0,0,0,0,252,0,3,244,191,128,0,31,255,255,255,195,244,47,224,0,31,255,255,255,195,244,11,248,0,26,170,254,170,131,244,2,252,0,0,0,252,0,3,244,0,240,0,0,0,252,0,3,244,0,0,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,0,0,252,0,2,248,0,0,0,0,0,252,0,2,248,0,0,0,63,255,255,255,226,252,2,244,0,63,255,255,255,225,252,3,244,0,21,86,253,85,81,252,7,240,0,0,0,252,0,1,252,11,224,0,10,171,254,170,128,252,15,208,0,31,255,255,255,192,253,31,192,0,31,0,248,7,192,253,63,128,0,31,0,248,7,192,190,127,0,0,31,255,255,255,192,191,254,0,0,31,234,254,175,192,127,252,0,0,31,0,248,7,192,63,244,0,0,31,255,255,255,192,63,240,0,0,31,255,255,255,192,63,192,12,0,0,0,252,0,0,191,192,15,64,0,0,252,0,2,255,208,31,128,191,255,255,255,251,255,240,31,64,191,255,255,255,255,247,248,47,0,85,86,253,86,255,194,254,127,0,0,0,252,3,255,0,255,254,0,0,0,252,1,248,0,63,252,0,0,0,252,0,160,0,11,244,0,0,0,0,0,0,0,0,0,0, + // 0x8f2f 輯 + 47,143,34,35,59,36,1,252,0,3,224,0,0,0,0,0,0,0,3,224,0,15,255,255,254,0,0,3,224,0,15,255,255,254,0,0,3,224,0,15,213,85,254,0,63,255,255,254,15,192,0,190,0,63,255,255,254,15,192,0,190,0,63,255,255,254,15,213,85,254,0,0,3,224,0,15,255,255,254,0,0,3,224,0,15,255,255,254,0,31,255,255,252,0,0,0,0,0,31,255,255,252,0,0,0,0,0,31,151,229,188,255,255,255,255,224,31,3,208,188,255,255,255,255,224,31,3,208,188,175,234,170,255,144,31,87,229,188,15,192,0,190,0,31,255,255,252,15,192,0,190,0,31,255,255,252,15,213,85,190,0,31,3,208,188,15,255,255,254,0,31,3,208,188,15,255,255,254,0,31,151,229,188,15,192,0,190,0,31,255,255,252,15,192,0,190,0,31,255,255,252,15,213,85,254,0,0,3,224,0,15,255,255,254,0,0,3,224,0,15,255,255,254,0,0,3,224,0,15,192,0,190,0,191,255,255,255,15,192,0,190,0,191,255,255,255,15,192,0,191,208,191,255,255,255,15,234,191,255,224,0,3,224,3,255,255,255,255,224,0,3,224,3,255,255,255,254,0,0,3,224,2,250,148,0,190,0,0,3,224,0,0,0,0,190,0,0,3,224,0,0,0,0,190,0,0,3,224,0,0,0,0,190,0,0,0,0,0,0,0,0,0,0, + // 0x8f38 輸 + 56,143,34,34,50,36,1,253,0,15,192,0,0,15,208,0,0,0,15,192,0,0,31,240,0,0,0,15,192,0,0,63,252,0,0,0,15,192,0,0,191,254,0,0,63,255,255,248,1,252,127,64,0,63,255,255,248,7,244,47,208,0,63,255,255,248,31,240,15,244,0,0,15,192,0,127,192,3,254,0,0,15,192,2,255,0,0,255,192,47,255,255,255,255,170,170,191,240,47,255,255,251,227,255,255,207,224,47,91,215,243,67,255,255,194,192,46,7,130,240,0,0,0,0,0,46,7,130,240,0,0,0,0,0,47,91,150,241,85,84,0,15,128,47,255,255,242,255,253,25,15,128,47,255,255,242,255,253,62,15,128,46,7,130,242,224,61,62,15,128,46,7,130,242,224,61,62,15,128,47,91,215,242,245,125,62,15,128,47,255,255,242,255,253,62,15,128,47,255,255,242,255,253,62,15,128,0,15,192,2,224,61,62,15,128,0,15,192,2,224,61,62,15,128,0,15,192,2,245,125,62,15,128,191,255,255,246,255,253,62,15,128,191,255,255,246,255,253,62,15,128,191,255,255,246,224,61,62,15,128,0,15,192,2,224,61,21,15,128,0,15,192,2,224,61,0,15,128,0,15,192,2,224,61,0,15,128,0,15,192,2,224,125,5,111,128,0,15,192,2,225,253,7,255,64,0,15,192,2,224,248,3,253,0, + // 0x8f49 轉 + 73,143,34,35,59,36,1,252,0,11,208,0,0,7,224,0,0,0,11,208,0,0,7,224,0,0,0,11,208,0,170,171,250,170,128,0,11,229,85,255,255,255,255,192,63,255,255,253,255,255,255,255,192,63,255,255,252,0,7,224,0,0,63,255,255,252,0,7,224,0,0,0,11,208,0,191,255,255,255,64,0,11,208,0,191,255,255,255,64,31,255,255,244,188,7,224,47,64,31,255,255,244,188,7,224,47,64,31,91,213,244,191,255,255,255,64,31,3,192,244,191,255,255,255,64,31,3,192,244,188,7,224,47,64,31,87,213,244,188,7,224,47,64,31,255,255,244,191,255,255,255,64,31,255,255,244,191,255,255,255,64,31,3,192,244,0,7,224,248,0,31,3,192,244,0,7,224,190,0,31,91,213,247,255,255,255,255,128,31,255,255,246,255,255,255,255,208,31,255,255,245,165,84,5,67,192,0,11,208,0,0,0,15,208,0,0,11,208,1,170,170,175,234,144,0,11,208,3,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,253,11,0,15,208,0,191,255,255,253,47,192,15,208,0,0,11,208,0,15,224,15,208,0,0,11,208,0,3,244,15,208,0,0,11,208,0,1,240,15,208,0,0,11,208,0,0,74,175,192,0,0,11,208,0,0,15,255,192,0,0,11,208,0,0,7,254,0,0,0,0,0,0,0,0,0,0,0, + // 0x8fd1 近 + 209,143,34,34,50,36,1,253,0,0,0,0,0,0,1,128,0,3,64,0,0,0,1,191,240,0,31,208,0,4,5,191,255,252,0,31,248,0,15,255,255,255,208,0,7,254,0,15,255,255,164,0,0,0,255,128,15,254,80,0,0,0,0,63,208,15,192,0,0,0,0,0,15,192,15,192,0,0,0,0,0,6,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,255,255,255,255,192,0,0,0,31,255,255,255,255,192,0,0,0,31,255,255,255,255,192,0,0,0,31,192,1,252,0,0,63,255,128,31,192,1,252,0,0,63,255,128,47,128,1,252,0,0,63,255,128,63,128,1,252,0,0,0,47,128,63,64,1,252,0,0,0,47,128,127,0,1,252,0,0,0,47,128,191,0,1,252,0,0,0,47,128,253,0,1,252,0,0,0,47,130,252,0,1,252,0,0,0,47,131,248,0,1,252,0,0,0,47,143,240,0,1,252,0,0,0,47,143,208,0,1,252,0,0,0,63,195,128,0,1,252,0,0,1,255,240,0,0,1,252,0,0,11,255,254,0,0,0,0,0,0,127,248,255,249,64,0,0,85,80,127,208,63,255,255,255,255,255,208,63,64,7,255,255,255,255,255,192,28,0,0,43,255,255,255,255,128,0,0,0,0,0,0,0,0,0, + // 0x8fd4 返 + 212,143,34,33,41,36,1,253,2,0,0,0,0,0,0,0,0,31,208,0,63,255,255,255,255,0,31,244,0,63,255,255,255,255,0,7,253,0,63,255,255,255,255,0,0,255,64,63,0,0,0,0,0,0,63,192,63,0,0,0,0,0,0,15,64,63,0,0,0,0,0,0,4,0,63,0,0,0,0,0,0,0,0,127,255,255,255,248,0,0,0,0,127,255,255,255,252,0,0,0,0,127,255,255,255,248,0,0,0,0,127,127,0,3,244,0,0,0,0,127,63,0,11,240,0,63,255,64,127,47,128,15,224,0,63,255,64,190,15,192,31,192,0,63,255,64,190,15,240,63,128,0,0,63,64,253,7,244,255,0,0,0,63,64,252,2,254,254,0,0,0,63,65,252,0,255,252,0,0,0,63,66,252,0,127,240,0,0,0,63,67,244,0,127,240,0,0,0,63,71,240,2,255,254,0,0,0,63,79,240,15,255,255,192,0,0,63,95,209,255,244,191,253,0,0,63,111,203,255,192,31,255,192,0,127,199,67,254,0,2,255,128,2,255,240,1,224,0,0,47,0,11,255,253,0,0,0,0,0,0,127,245,255,229,64,0,0,21,80,191,192,127,255,255,255,255,255,208,63,0,11,255,255,255,255,255,192,44,0,0,111,255,255,255,255,128,0,0,0,0,0,0,0,0,0, + // 0x9000 退 + 0,144,34,33,41,36,1,253,3,128,0,47,255,255,255,240,0,31,240,0,47,255,255,255,240,0,11,253,0,47,255,255,255,240,0,2,255,64,47,128,0,3,240,0,0,191,192,47,128,0,3,240,0,0,47,224,47,128,0,3,240,0,0,11,128,47,255,255,255,240,0,0,1,0,47,255,255,255,240,0,0,0,0,47,234,170,171,240,0,0,0,0,47,128,0,3,240,0,0,0,0,47,128,0,3,240,0,0,0,0,47,128,0,3,240,0,0,0,0,47,255,255,255,240,0,63,255,128,47,255,255,255,240,0,63,255,128,47,255,255,255,244,0,63,255,128,47,128,126,0,62,0,0,47,128,47,128,63,1,255,64,0,47,128,47,128,47,139,253,0,0,47,128,47,128,15,255,224,0,0,47,128,47,128,11,255,0,0,0,47,128,47,128,3,252,0,0,0,47,128,47,128,25,255,0,0,0,47,128,47,155,252,191,208,0,0,47,128,127,255,252,47,253,0,0,47,195,255,255,228,7,255,192,0,63,211,255,228,0,1,255,64,1,255,246,228,0,0,0,30,0,11,255,254,0,0,0,0,0,0,127,244,255,249,64,0,0,85,80,127,208,63,255,255,255,255,255,208,63,0,7,255,255,255,255,255,192,28,0,0,43,255,255,255,255,128,0,0,0,0,0,0,0,0,0, + // 0x901f 速 + 31,144,34,34,50,36,1,253,0,0,0,0,0,252,0,0,0,2,0,0,0,0,252,0,0,0,15,208,0,0,0,252,0,0,0,47,244,0,0,0,252,0,0,0,7,254,7,255,255,255,255,255,192,1,255,135,255,255,255,255,255,192,0,63,215,255,255,255,255,255,128,0,15,128,0,0,252,0,0,0,0,1,0,0,0,252,0,0,0,0,0,0,255,255,255,255,253,0,0,0,0,255,255,255,255,253,0,0,0,0,254,170,254,170,253,0,0,0,0,252,0,252,0,253,0,0,0,0,252,0,252,0,253,0,63,255,128,252,0,252,0,253,0,63,255,128,252,0,252,0,253,0,63,255,128,255,255,255,255,253,0,0,47,128,255,255,255,255,253,0,0,47,128,170,175,255,234,169,0,0,47,128,0,47,255,192,0,0,0,47,128,0,127,255,244,0,0,0,47,128,2,253,254,253,0,0,0,47,128,11,244,252,191,128,0,0,47,128,127,208,252,47,244,0,0,47,130,255,64,252,11,255,64,0,47,207,253,0,252,1,255,128,0,63,211,240,0,252,0,63,0,1,255,245,64,0,252,0,4,0,11,255,254,0,0,168,0,0,0,127,244,255,249,64,0,0,85,80,127,208,63,255,255,255,255,255,208,63,0,7,255,255,255,255,255,192,28,0,0,43,255,255,255,255,128,0,0,0,0,0,0,0,0,0, + // 0x9023 連 + 35,144,34,34,50,36,1,253,0,0,0,0,2,248,0,0,0,7,0,0,0,2,248,0,0,0,47,208,0,0,2,248,0,0,0,31,244,15,255,255,255,255,255,64,7,253,15,255,255,255,255,255,64,1,255,75,255,255,255,255,255,64,0,127,192,0,2,248,0,0,0,0,47,64,0,2,248,0,0,0,0,9,1,255,255,255,255,248,0,0,0,1,255,255,255,255,248,0,0,0,1,253,86,253,86,248,0,0,0,1,248,2,248,1,248,0,0,0,1,248,2,248,1,248,0,0,0,1,255,255,255,255,248,0,127,255,1,255,255,255,255,248,0,127,255,1,253,86,253,86,248,0,127,255,1,248,2,248,1,248,0,0,63,1,253,86,253,86,248,0,0,63,1,255,255,255,255,248,0,0,63,1,255,255,255,255,248,0,0,63,0,0,2,248,0,0,0,0,63,0,0,2,248,0,0,0,0,63,26,170,171,254,170,170,128,0,63,31,255,255,255,255,255,192,0,63,31,255,255,255,255,255,192,0,63,0,0,2,248,0,0,0,0,63,128,0,2,248,0,0,0,0,255,208,0,2,248,0,0,0,7,255,244,0,2,248,0,0,0,47,251,255,128,0,0,0,0,0,127,208,255,255,234,170,170,255,208,63,64,47,255,255,255,255,255,192,45,0,1,255,255,255,255,255,128,4,0,0,1,85,85,85,85,0, + // 0x9032 進 + 50,144,34,34,50,36,1,253,0,0,0,2,144,1,144,0,0,7,64,0,3,248,3,252,0,0,47,208,0,11,240,3,244,0,0,15,248,0,15,224,11,240,0,0,3,254,0,47,192,15,208,0,0,0,255,64,127,255,255,255,255,0,0,63,192,255,255,255,255,255,0,0,31,2,255,255,255,255,255,0,0,4,7,255,0,47,128,0,0,0,0,31,255,0,47,128,0,0,0,0,63,255,0,47,128,0,0,0,0,255,255,0,47,128,0,0,0,0,255,191,255,255,255,252,0,0,0,60,127,255,255,255,252,0,127,255,0,127,255,255,255,252,0,127,255,0,127,0,47,128,0,0,127,255,0,127,0,47,128,0,0,0,63,0,127,0,47,128,0,0,0,63,0,127,255,255,255,252,0,0,63,0,127,255,255,255,252,0,0,63,0,127,255,255,255,252,0,0,63,0,127,0,47,128,0,0,0,63,0,127,0,47,128,0,0,0,63,0,127,0,47,128,0,0,0,63,0,127,255,255,255,255,128,0,63,0,127,255,255,255,255,128,0,63,128,127,255,255,255,255,128,0,255,208,0,0,0,0,0,0,7,255,244,0,0,0,0,0,0,47,251,255,128,0,0,0,0,0,127,208,255,255,234,170,170,255,208,63,64,47,255,255,255,255,255,192,45,0,1,255,255,255,255,255,128,4,0,0,1,85,85,85,85,0, + // 0x904b 運 + 75,144,34,33,41,36,1,253,7,0,5,85,85,85,85,85,0,47,208,11,255,255,255,255,255,64,31,244,11,255,255,255,255,255,64,7,253,11,192,0,84,0,47,64,1,255,75,192,1,252,0,47,64,0,127,193,64,1,252,0,5,0,0,31,67,255,255,255,255,254,0,0,8,3,255,255,255,255,254,0,0,0,1,85,86,253,85,84,0,0,0,0,0,1,252,0,0,0,0,0,0,255,255,255,255,248,0,0,0,0,255,255,255,255,248,0,0,0,0,252,1,252,1,248,0,127,255,0,252,1,252,1,248,0,127,255,0,255,255,255,255,248,0,127,255,0,255,255,255,255,248,0,0,63,0,252,1,252,1,248,0,0,63,0,252,1,252,1,248,0,0,63,0,252,1,252,1,248,0,0,63,0,255,255,255,255,248,0,0,63,0,255,255,255,255,248,0,0,63,0,0,1,252,0,0,0,0,63,10,170,170,254,170,170,128,0,63,15,255,255,255,255,255,192,0,63,15,255,255,255,255,255,192,0,63,128,0,1,252,0,0,0,0,255,208,0,1,252,0,0,0,7,255,244,0,1,252,0,0,0,47,251,255,128,0,0,0,0,0,127,208,255,255,234,170,170,255,208,63,64,47,255,255,255,255,255,192,45,0,1,255,255,255,255,255,128,4,0,0,1,85,85,85,85,0, + // 0x9054 達 + 84,144,34,34,50,36,1,253,0,0,0,0,1,252,0,0,0,3,0,0,0,1,252,0,0,0,31,208,0,85,86,253,85,84,0,31,244,0,255,255,255,255,248,0,7,253,0,255,255,255,255,248,0,1,255,0,0,1,252,0,0,0,0,127,192,0,1,252,0,0,0,0,47,133,85,86,253,85,85,64,0,13,31,255,255,255,255,255,192,0,0,31,255,255,255,255,255,192,0,0,0,11,208,0,63,64,0,0,0,0,7,240,0,191,0,0,0,0,0,3,244,0,253,0,0,0,0,5,87,249,85,253,85,64,127,255,11,255,255,255,255,255,128,127,255,11,255,255,255,255,255,128,127,255,0,0,1,252,0,0,0,0,63,0,0,1,252,0,0,0,0,63,0,255,255,255,255,252,0,0,63,0,255,255,255,255,252,0,0,63,0,85,86,253,85,84,0,0,63,0,0,1,252,0,0,0,0,63,0,0,1,252,0,0,0,0,63,15,255,255,255,255,255,128,0,63,15,255,255,255,255,255,128,0,63,6,170,170,254,170,170,64,0,63,64,0,1,252,0,0,0,0,255,208,0,1,252,0,0,0,7,255,244,0,0,168,0,0,0,31,251,255,64,0,0,0,0,0,127,208,255,255,234,170,170,255,208,63,64,47,255,255,255,255,255,192,45,0,1,255,255,255,255,255,128,4,0,0,1,85,85,85,85,0, + // 0x9078 選 + 120,144,34,33,41,36,1,253,11,0,15,255,255,47,255,254,0,63,192,15,255,255,47,255,254,0,47,240,0,0,63,0,0,126,0,11,252,0,0,63,0,0,126,0,2,254,1,85,127,1,85,126,0,0,255,75,255,255,15,255,254,0,0,63,11,255,255,15,255,254,0,0,36,11,192,0,15,192,1,0,0,0,11,208,7,207,192,7,192,0,0,7,255,255,203,255,255,192,0,0,3,255,255,67,255,255,64,0,0,0,21,84,0,21,84,0,0,0,0,2,248,1,252,0,0,127,255,0,2,248,1,252,0,0,127,255,5,87,253,86,253,85,0,127,255,11,255,255,255,255,255,0,0,127,11,255,255,255,255,255,0,0,63,0,2,248,1,252,0,0,0,63,0,2,248,1,252,0,0,0,63,0,2,248,1,252,0,0,0,63,47,255,255,255,255,255,192,0,63,47,255,255,255,255,255,192,0,63,26,170,170,170,170,170,128,0,63,0,1,248,0,188,0,0,0,63,0,31,248,1,255,128,0,0,127,1,255,208,0,47,248,0,1,255,203,254,0,0,3,255,0,7,255,245,240,0,0,0,190,0,47,247,254,128,0,0,0,16,0,191,192,255,255,170,170,170,255,224,63,0,47,255,255,255,255,255,192,44,0,1,191,255,255,255,255,192,0,0,0,0,85,85,85,84,0, + // 0x9084 還 + 132,144,34,33,41,36,1,253,7,64,3,255,255,255,255,252,0,47,208,3,255,255,255,255,252,0,31,244,3,240,61,7,192,252,0,3,253,3,240,61,7,192,188,0,0,255,67,240,61,7,192,188,0,0,63,195,255,255,255,255,252,0,0,31,67,255,255,255,255,252,0,0,8,0,0,0,0,0,0,0,0,0,21,85,85,85,85,85,64,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,0,255,255,255,255,240,0,127,255,0,255,255,255,255,240,0,127,255,0,252,0,0,3,240,0,0,63,0,252,0,0,3,240,0,0,63,0,255,255,255,255,240,0,0,63,0,255,255,255,255,248,0,0,63,0,0,31,248,0,255,0,0,63,0,0,191,254,3,252,0,0,63,0,7,255,255,223,224,0,0,63,0,127,247,255,255,64,0,0,63,7,255,195,246,255,144,0,0,63,15,253,3,240,63,254,64,0,63,131,224,3,240,11,255,64,0,255,209,0,3,240,0,126,0,7,255,244,0,3,240,0,0,0,47,251,255,128,0,0,0,0,0,127,208,255,255,234,170,170,255,208,63,64,47,255,255,255,255,255,192,45,0,1,255,255,255,255,255,128,4,0,0,1,85,85,85,85,0, + // 0x908a 邊 + 138,144,34,34,50,36,1,253,0,64,0,0,1,232,0,0,0,2,224,0,0,2,248,0,0,0,11,253,0,127,255,255,255,240,0,2,255,128,127,170,170,171,240,0,0,127,224,127,85,85,91,240,0,0,15,192,127,255,255,255,240,0,0,2,0,127,0,0,3,240,0,0,0,0,127,85,85,91,240,0,11,64,0,127,255,255,255,240,0,47,224,0,127,0,0,3,240,0,31,252,0,127,85,85,91,240,0,2,255,64,127,255,255,255,240,0,0,127,64,0,1,248,0,0,0,0,29,10,170,171,254,170,170,128,0,0,15,255,255,255,255,255,128,0,0,15,192,124,15,64,31,128,0,0,15,192,248,15,65,255,128,127,255,0,27,240,15,255,224,0,127,255,2,255,129,255,255,128,0,127,255,0,248,1,248,0,0,0,0,63,15,255,255,255,255,255,192,0,63,15,255,255,255,255,255,192,0,63,0,0,126,0,0,0,0,0,63,0,0,191,255,255,192,0,0,63,0,2,255,255,255,192,0,0,63,0,11,240,0,15,192,0,0,127,65,191,208,0,31,128,0,1,255,215,255,0,62,255,0,0,7,255,251,244,0,63,253,0,0,47,247,255,128,0,0,0,0,0,191,208,255,255,234,170,170,191,208,63,64,47,255,255,255,255,255,192,45,0,1,191,255,255,255,255,192,0,0,0,1,85,85,85,85,0, + // 0x90e8 部 + 232,144,34,34,50,36,1,253,0,0,169,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,191,255,255,64,0,0,190,0,0,191,255,255,208,47,255,255,255,244,191,255,255,192,47,255,255,255,244,190,0,63,192,47,255,255,255,244,190,0,63,64,0,16,0,20,0,190,0,191,0,1,248,0,63,64,190,0,254,0,0,252,0,63,0,190,1,252,0,0,189,0,126,0,190,2,248,0,0,126,0,189,0,190,3,244,0,0,127,0,252,0,190,7,240,0,0,36,0,100,0,190,15,208,0,127,255,255,255,252,190,31,192,0,127,255,255,255,252,190,15,240,0,127,255,255,255,252,190,3,248,0,0,0,0,0,0,190,0,253,0,0,0,0,0,0,190,0,191,0,0,0,0,0,0,190,0,63,64,3,255,255,255,192,190,0,47,128,3,255,255,255,192,190,0,31,192,3,255,255,255,192,190,0,31,192,3,240,0,15,192,190,0,31,192,3,240,0,15,192,190,0,31,192,3,240,0,15,192,190,0,127,192,3,240,0,15,192,190,63,255,128,3,240,0,15,192,190,31,255,0,3,240,0,15,192,190,31,248,0,3,255,255,255,192,190,5,64,0,3,255,255,255,192,190,0,0,0,3,255,255,255,192,190,0,0,0,3,240,0,15,192,190,0,0,0,3,240,0,15,192,190,0,0,0, + // 0x91cb 釋 + 203,145,34,35,59,36,1,252,0,0,27,128,0,0,0,0,0,1,107,255,241,85,85,85,85,0,127,255,255,147,255,255,255,255,64,63,255,208,3,255,255,255,255,64,21,11,192,3,240,244,60,31,64,0,11,192,147,240,244,60,31,64,31,11,193,247,240,244,60,31,64,31,11,194,243,245,249,125,111,64,15,139,195,227,255,255,255,255,64,15,203,195,211,255,255,255,255,64,11,203,203,192,0,15,192,0,0,7,203,207,128,21,95,213,84,0,1,11,194,0,191,255,255,252,0,106,175,250,164,191,255,255,252,0,127,255,255,244,0,15,192,0,0,127,255,255,244,0,15,192,0,0,0,47,192,15,255,255,255,255,208,0,63,208,15,255,255,255,255,208,0,127,244,5,95,85,87,229,64,0,255,253,0,15,128,7,224,0,0,255,255,64,15,192,11,192,0,2,255,223,208,7,208,15,128,0,3,235,199,241,87,229,111,85,64,11,203,194,231,255,255,255,255,192,31,139,192,135,255,255,255,255,192,63,75,192,0,0,15,192,0,0,191,11,192,0,0,15,192,0,0,125,11,192,1,255,255,255,255,0,56,11,192,1,255,255,255,255,0,16,11,192,0,85,95,229,85,0,0,11,192,0,0,15,192,0,0,0,11,192,0,0,15,192,0,0,0,11,192,0,0,15,192,0,0,0,11,192,0,0,15,192,0,0,0,0,0,0,0,0,0,0,0, + // 0x91cd 重 + 205,145,32,33,8,36,2,254,0,0,0,0,0,5,172,0,0,0,5,90,191,255,254,0,3,255,255,255,255,255,255,0,2,255,255,255,255,169,64,0,1,170,85,95,208,0,0,0,0,0,0,15,208,0,0,0,170,170,170,175,250,170,170,170,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,253,85,95,229,85,127,64,0,252,0,15,208,0,63,64,0,252,0,15,224,0,63,64,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,252,0,15,208,0,63,64,0,252,0,15,208,0,63,64,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,85,85,95,229,85,85,0,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,7,255,255,255,255,255,255,240,7,255,255,255,255,255,255,240,2,170,170,175,250,170,170,160,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,170,170,170,170,170, + // 0x91cf 量 + 207,145,33,32,32,36,2,254,0,127,255,255,255,255,253,0,0,0,191,255,255,255,255,254,0,0,0,190,0,0,0,0,254,0,0,0,190,0,0,0,0,254,0,0,0,191,255,255,255,255,254,0,0,0,191,255,255,255,255,254,0,0,0,190,0,0,0,0,254,0,0,0,191,255,255,255,255,254,0,0,0,191,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,252,0,11,224,0,63,64,0,0,252,0,11,224,0,63,64,0,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,252,0,11,224,0,63,64,0,0,252,0,11,224,0,63,64,0,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,0,0,11,224,0,0,0,0,1,85,85,95,229,85,85,64,0,3,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,192,0,0,0,0,11,224,0,0,0,0,170,170,170,175,250,170,170,170,0,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64, + // 0x91dd 針 + 221,145,34,34,50,36,1,253,0,3,248,0,0,2,164,0,0,0,11,254,0,0,3,248,0,0,0,15,255,192,0,3,248,0,0,0,63,239,240,0,3,248,0,0,0,127,75,252,0,3,248,0,0,0,254,2,255,0,3,248,0,0,3,252,0,191,128,3,248,0,0,15,240,0,63,192,3,248,0,0,63,208,0,15,64,3,248,0,0,255,255,255,253,0,3,248,0,0,63,255,255,244,0,3,248,0,0,22,255,255,244,0,3,248,0,0,0,2,244,0,255,255,255,255,224,0,2,244,0,255,255,255,255,224,0,2,244,0,255,255,255,255,224,0,2,244,0,85,87,253,85,64,47,255,255,255,64,3,248,0,0,47,255,255,255,64,3,248,0,0,47,255,255,255,64,3,248,0,0,0,2,244,0,0,3,248,0,0,0,2,244,36,0,3,248,0,0,15,130,244,62,0,3,248,0,0,11,194,244,125,0,3,248,0,0,7,194,244,188,0,3,248,0,0,3,210,244,248,0,3,248,0,0,3,226,245,244,0,3,248,0,0,3,242,245,240,0,3,248,0,0,1,66,244,1,0,3,248,0,0,0,2,250,255,64,3,248,0,0,1,175,255,255,64,3,248,0,0,63,255,255,255,64,3,248,0,0,63,255,249,64,0,3,248,0,0,47,148,0,0,0,3,248,0,0,0,0,0,0,0,2,248,0,0, + // 0x9215 鈕 + 21,146,34,34,50,36,1,253,0,15,224,0,0,0,0,0,0,0,31,248,0,0,0,0,0,0,0,63,254,0,255,255,255,252,0,0,127,127,128,255,255,255,252,0,0,253,47,224,255,255,255,252,0,2,252,11,248,1,253,2,252,0,7,240,3,253,0,252,1,252,0,31,208,0,252,0,252,1,252,0,127,192,0,112,1,252,2,248,0,255,255,255,208,1,252,2,248,0,63,255,255,192,1,252,2,248,0,7,255,255,192,1,248,2,248,0,0,11,208,0,2,248,2,248,0,0,11,208,0,2,248,2,248,0,0,11,208,0,2,244,2,248,0,63,255,255,247,255,255,255,255,224,63,255,255,247,255,255,255,255,224,63,255,255,247,255,255,255,255,224,0,11,208,0,7,244,3,248,0,0,11,208,64,3,240,3,244,0,15,11,210,240,7,240,3,244,0,15,75,210,240,7,240,3,244,0,15,139,211,224,7,224,3,240,0,11,203,211,208,11,224,3,240,0,7,203,215,192,11,224,3,240,0,7,203,219,128,11,208,3,240,0,3,139,210,64,15,208,7,240,0,0,11,208,20,15,192,7,240,0,0,11,235,252,15,192,7,240,0,1,191,255,252,31,192,11,240,0,63,255,255,255,255,255,255,255,224,63,255,228,31,255,255,255,255,224,46,144,0,31,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x932f 錯 + 47,147,34,34,50,36,1,253,0,15,224,0,3,240,15,192,0,0,31,248,0,3,240,15,192,0,0,63,254,0,3,240,15,192,0,0,127,191,128,3,240,15,192,0,0,254,47,209,255,255,255,255,128,2,252,15,245,255,255,255,255,128,7,244,3,254,255,255,255,255,128,31,224,0,252,3,240,15,192,0,127,192,0,112,3,240,15,192,0,255,255,255,208,3,240,15,192,0,63,255,255,192,3,240,15,192,0,7,255,255,192,3,240,15,192,0,0,11,208,11,255,255,255,255,224,0,11,208,11,255,255,255,255,224,0,11,208,11,255,255,255,255,224,63,255,255,244,0,0,0,0,0,63,255,255,244,0,0,0,0,0,63,255,255,244,0,0,0,0,0,0,11,208,0,63,255,255,253,0,0,11,208,64,63,255,255,253,0,11,11,209,240,63,170,170,253,0,15,75,210,240,63,0,0,189,0,15,139,211,224,63,0,0,189,0,11,203,211,208,63,0,0,189,0,7,203,215,192,63,255,255,253,0,7,203,219,128,63,255,255,253,0,3,203,210,64,63,170,170,253,0,0,11,208,104,63,0,0,189,0,0,11,255,252,63,0,0,189,0,26,255,255,252,63,255,255,253,0,63,255,255,164,63,255,255,253,0,63,255,144,0,63,255,255,253,0,46,64,0,0,63,0,0,189,0,0,0,0,0,42,0,0,105,0, + // 0x9375 鍵 + 117,147,34,34,50,36,1,253,0,31,128,0,0,0,188,0,0,0,47,224,0,0,0,188,0,0,0,63,244,0,0,0,188,0,0,0,191,252,63,253,63,255,255,0,0,253,255,127,252,63,255,255,0,3,248,63,255,252,42,254,175,0,11,240,31,208,248,0,188,31,0,31,208,11,193,244,0,188,31,0,127,64,3,3,242,255,255,255,240,255,170,170,3,226,255,255,255,240,127,255,255,7,209,170,254,175,224,27,255,255,15,192,0,188,31,0,0,31,64,15,128,0,188,31,0,0,31,64,31,233,63,255,255,0,0,31,64,63,255,63,255,255,0,63,255,255,127,255,42,254,170,0,63,255,255,93,47,0,188,0,0,63,255,255,64,63,0,188,0,0,0,31,64,8,62,191,255,255,64,0,31,68,61,62,191,255,255,64,9,31,79,62,125,106,254,170,64,30,31,79,47,188,0,188,0,0,15,31,94,31,252,0,188,0,0,15,31,110,15,249,255,255,255,208,15,95,125,15,245,255,255,255,208,11,95,124,7,241,255,255,255,192,11,159,68,7,240,0,188,0,0,0,31,64,79,252,0,188,0,0,0,47,255,223,255,0,188,0,0,27,255,255,255,127,228,0,0,0,127,255,255,253,15,255,255,255,224,63,249,11,248,2,255,255,255,208,36,0,3,224,0,27,255,255,192,0,0,0,64,0,0,0,0,0, + // 0x9577 長 + 119,149,32,34,16,36,2,252,0,11,255,255,255,255,255,64,0,15,255,255,255,255,255,64,0,15,255,255,255,255,255,64,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,255,255,255,255,253,0,0,15,255,255,255,255,253,0,0,15,250,170,170,170,168,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,255,255,255,255,253,0,0,15,255,255,255,255,253,0,0,15,250,170,170,170,168,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,15,224,11,240,0,2,128,0,15,224,3,248,0,15,240,0,15,224,2,252,0,127,224,0,15,224,0,255,3,255,64,0,15,224,0,127,159,252,0,0,15,224,0,47,255,208,0,0,15,224,0,15,254,0,0,0,15,224,0,3,255,64,0,0,15,224,91,244,255,244,0,0,15,255,255,244,63,255,64,11,255,255,255,244,11,255,254,15,255,255,233,0,0,255,255,15,255,148,0,0,0,11,253,5,64,0,0,0,0,0,108,0,0,0,0,0,0,0,0, + // 0x9589 閉 + 137,149,30,33,8,36,3,253,106,170,170,144,106,170,170,144,255,255,255,224,191,255,255,240,255,255,255,224,191,255,255,240,254,0,11,224,190,0,7,240,254,0,11,224,190,0,7,240,254,85,95,224,190,85,91,240,255,255,255,224,191,255,255,240,255,255,255,224,191,255,255,240,254,0,11,224,190,0,7,240,254,0,11,224,190,0,7,240,254,0,11,224,190,0,7,240,255,255,255,224,191,255,255,240,255,255,255,224,191,255,255,240,255,85,85,64,85,85,91,240,254,0,0,0,168,0,7,240,254,0,0,0,252,0,7,240,254,0,0,0,252,0,7,240,254,10,170,171,254,170,7,240,254,15,255,255,255,255,7,240,254,15,255,255,255,255,7,240,254,0,0,15,252,0,7,240,254,0,0,63,252,0,7,240,254,0,0,255,252,0,7,240,254,0,3,253,252,0,7,240,254,0,31,240,252,0,7,240,254,0,191,192,252,0,7,240,254,7,255,0,252,0,7,240,254,47,248,0,252,0,7,240,254,15,208,0,252,0,7,240,254,2,0,191,248,21,95,240,254,0,0,191,244,63,255,240,254,0,0,63,144,63,255,208,190,0,0,0,0,47,254,0, + // 0x958b 開 + 139,149,30,34,16,36,3,252,85,85,85,80,85,85,85,80,255,255,255,224,191,255,255,240,255,255,255,224,191,255,255,240,253,0,11,224,190,0,7,240,253,0,11,224,190,0,7,240,254,85,91,224,190,85,91,240,255,255,255,224,191,255,255,240,255,255,255,224,191,255,255,240,253,0,11,224,190,0,7,240,253,0,11,224,190,0,7,240,254,85,95,224,190,85,91,240,255,255,255,224,191,255,255,240,255,255,255,224,191,255,255,240,253,0,0,0,0,0,7,240,253,0,0,0,0,0,7,240,253,6,170,170,170,169,7,240,253,11,255,255,255,254,7,240,253,11,255,255,255,254,7,240,253,0,15,128,63,0,7,240,253,0,15,128,63,0,7,240,253,0,15,128,63,0,7,240,253,31,255,255,255,255,71,240,253,31,255,255,255,255,71,240,253,31,255,255,255,255,71,240,253,0,31,128,63,0,7,240,253,0,47,64,63,0,7,240,253,0,63,0,63,0,7,240,253,0,126,0,63,0,7,240,253,0,253,0,63,0,7,240,253,3,252,0,63,5,91,240,253,15,240,0,63,15,255,240,253,7,208,0,63,11,255,208,253,1,64,0,0,7,254,64,0,0,0,0,0,0,0,0, + // 0x9593 間 + 147,149,30,33,8,36,3,253,106,170,170,144,106,170,170,144,255,255,255,224,191,255,255,240,255,255,255,224,191,255,255,240,254,0,11,224,190,0,7,240,254,0,11,224,190,0,7,240,254,85,95,224,190,85,91,240,255,255,255,224,191,255,255,240,255,255,255,224,191,255,255,240,254,0,11,224,190,0,7,240,254,0,11,224,190,0,7,240,254,0,11,224,190,0,7,240,255,255,255,224,191,255,255,240,255,255,255,224,191,255,255,240,255,85,85,64,85,85,91,240,254,0,0,0,0,0,7,240,254,0,0,0,0,0,7,240,254,0,255,255,255,224,7,240,254,0,255,255,255,224,7,240,254,0,254,170,171,224,7,240,254,0,252,0,7,224,7,240,254,0,252,0,7,224,7,240,254,0,254,85,91,224,7,240,254,0,255,255,255,224,7,240,254,0,255,255,255,224,7,240,254,0,252,0,7,224,7,240,254,0,252,0,7,224,7,240,254,0,252,0,7,224,7,240,254,0,255,255,255,224,7,240,254,0,255,255,255,224,7,240,254,0,254,170,170,181,95,240,254,0,252,0,0,47,255,240,254,0,84,0,0,31,255,208,254,0,0,0,0,15,254,64, + // 0x95dc 關 + 220,149,30,34,16,36,3,252,85,85,85,64,21,85,85,80,255,255,255,224,191,255,255,240,255,255,255,224,191,255,255,240,253,0,11,224,190,0,3,240,253,0,11,224,190,0,3,240,255,255,255,224,191,255,255,240,255,255,255,224,191,255,255,240,253,0,11,224,190,0,7,240,253,0,11,224,190,0,3,240,254,85,91,224,190,85,87,240,255,255,255,224,191,255,255,240,255,255,255,224,191,255,255,240,253,0,61,0,15,64,3,240,253,0,124,0,62,0,3,240,253,10,240,131,184,100,3,240,253,15,210,231,240,244,3,240,253,3,231,193,251,208,3,240,253,0,255,0,127,88,3,240,253,0,125,208,45,45,3,240,253,1,240,240,190,191,3,240,253,47,255,255,255,255,67,240,253,47,255,191,229,7,67,240,253,0,1,176,160,0,3,240,253,7,129,240,244,61,3,240,253,7,129,240,244,61,3,240,253,7,129,240,244,61,3,240,253,7,255,240,255,253,3,240,253,7,255,224,255,253,3,240,253,0,7,208,244,0,3,240,253,0,31,192,244,1,7,240,253,1,255,0,244,3,255,240,253,0,252,0,244,2,255,224,253,0,80,0,0,1,254,64,0,0,0,0,0,0,0,0, + // 0x964d 降 + 77,150,32,35,24,36,3,252,0,0,0,0,14,64,0,0,0,0,0,0,63,128,0,0,255,255,208,0,127,0,0,0,255,255,244,0,255,170,170,0,255,255,240,3,255,255,255,192,252,7,240,11,255,255,255,64,252,11,208,47,240,0,191,0,252,15,192,191,248,0,253,0,252,15,195,254,253,3,252,0,252,47,71,244,127,79,240,0,252,63,1,208,47,255,192,0,252,62,0,0,11,255,64,0,252,125,0,0,11,255,64,0,252,190,0,0,191,255,244,0,252,63,0,11,255,159,255,144,252,15,194,255,253,1,255,254,252,15,215,255,208,47,175,252,252,7,226,249,0,47,129,180,252,3,240,64,0,47,128,0,252,3,240,255,255,255,255,240,252,3,240,255,255,255,255,240,252,3,240,255,255,255,255,240,252,11,240,11,192,47,128,0,252,255,224,11,192,47,128,0,252,255,192,11,192,47,128,0,252,190,0,11,192,47,128,0,252,0,15,255,255,255,255,252,252,0,15,255,255,255,255,252,252,0,11,255,255,255,255,252,252,0,0,0,0,47,128,0,252,0,0,0,0,47,128,0,252,0,0,0,0,47,128,0,252,0,0,0,0,47,128,0,252,0,0,0,0,47,128,0,0,0,0,0,0,0,0,0, + // 0x9664 除 + 100,150,32,34,16,36,3,253,0,0,0,0,6,160,0,0,0,0,0,0,15,248,0,0,255,255,208,0,47,252,0,0,255,255,244,0,127,255,0,0,255,255,240,0,254,63,192,0,252,7,240,3,252,31,240,0,252,11,208,15,240,7,252,0,252,15,192,63,208,2,255,0,252,15,192,255,64,0,127,208,252,47,75,253,0,0,31,248,252,63,63,244,0,0,7,254,252,62,31,239,255,255,254,252,252,189,14,31,255,255,253,40,252,190,0,31,255,255,253,0,252,63,0,0,3,240,0,0,252,15,192,0,3,240,0,0,252,11,208,0,3,240,0,0,252,7,224,0,3,240,0,0,252,3,242,255,255,255,255,240,252,3,242,255,255,255,255,240,252,3,242,255,255,255,255,240,252,3,240,0,3,240,0,0,252,11,240,0,3,240,0,0,252,255,224,62,3,240,124,0,252,255,192,190,3,240,191,0,252,190,0,252,3,240,63,128,252,0,2,248,3,240,31,192,252,0,7,240,3,240,11,240,252,0,15,224,3,240,3,244,252,0,63,192,3,240,1,252,252,0,47,0,7,240,0,252,252,0,9,3,255,240,0,80,252,0,0,2,255,224,0,0,252,0,0,1,254,64,0,0, + // 0x968e 階 + 142,150,32,35,24,36,3,252,0,0,0,80,0,21,0,0,0,0,1,248,0,63,0,0,255,255,209,248,0,63,0,0,255,255,241,248,0,63,1,224,255,255,241,248,0,63,11,248,252,11,225,255,254,63,191,244,252,15,193,255,254,63,255,64,252,15,193,254,170,63,244,0,252,31,129,248,0,63,64,0,252,47,65,248,0,63,0,0,252,63,1,248,0,63,0,56,252,62,1,248,6,63,0,62,252,188,1,254,255,63,64,126,252,189,31,255,255,63,255,253,252,63,31,255,144,31,255,252,252,31,143,144,15,150,255,160,252,15,192,0,15,208,0,0,252,11,208,0,31,192,0,0,252,7,224,191,255,255,255,224,252,3,240,255,255,255,255,240,252,3,240,255,255,255,255,240,252,3,240,253,0,0,7,240,252,11,224,253,0,0,7,240,252,255,208,253,0,0,7,240,252,255,192,255,255,255,255,240,252,189,0,255,255,255,255,240,252,0,0,254,170,170,175,240,252,0,0,253,0,0,7,240,252,0,0,253,0,0,7,240,252,0,0,253,0,0,7,240,252,0,0,255,255,255,255,240,252,0,0,255,255,255,255,240,252,0,0,255,255,255,255,240,252,0,0,189,0,0,7,224,0,0,0,0,0,0,0,0, + // 0x96d9 雙 + 217,150,33,35,59,36,1,252,0,41,1,0,0,100,4,0,0,0,63,7,208,0,252,31,128,0,0,125,15,192,1,252,63,0,0,0,252,31,64,3,244,62,0,0,1,255,255,255,131,255,255,255,64,3,255,255,255,143,255,255,255,64,15,248,63,0,31,240,125,0,0,47,244,47,0,63,224,125,0,0,127,255,255,255,255,255,255,254,0,63,255,255,255,255,255,255,254,0,25,244,63,0,115,240,125,0,0,1,244,47,0,3,224,125,0,0,1,255,255,255,3,255,255,254,0,1,255,255,255,3,255,255,254,0,1,248,63,0,3,240,125,0,0,1,244,47,0,3,224,125,0,0,1,255,255,255,195,255,255,255,192,1,255,255,255,195,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,170,170,170,170,170,174,0,0,3,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,128,0,0,1,253,0,0,2,255,0,0,0,1,255,128,0,15,252,0,0,0,0,127,240,0,127,240,0,0,0,0,31,254,7,255,128,0,0,0,0,2,255,255,252,0,0,0,0,0,0,191,255,240,0,0,0,0,0,27,255,255,255,144,0,0,5,175,255,255,255,255,255,233,64,63,255,255,228,2,255,255,255,128,31,255,249,0,0,7,255,255,0,15,148,0,0,0,0,5,189,0,0,0,0,0,0,0,0,0,0, + // 0x96e2 離 + 226,150,34,35,59,36,1,252,0,1,252,0,0,30,0,64,0,0,1,252,0,0,47,128,252,0,0,1,252,0,0,63,2,248,0,127,255,255,255,240,63,3,244,0,127,255,255,255,240,190,3,240,0,106,170,170,170,160,253,7,224,0,0,0,5,0,1,252,15,208,0,11,128,15,79,66,255,255,255,192,15,143,111,15,67,255,255,255,192,15,143,253,15,75,255,255,255,192,15,130,253,15,79,248,15,192,0,15,131,255,143,111,248,15,192,0,15,143,219,223,191,248,15,192,0,15,175,66,79,255,248,15,192,0,15,136,0,15,190,255,255,255,128,15,255,255,255,85,255,255,255,192,15,255,255,255,65,255,255,255,192,5,86,249,85,1,248,15,192,0,0,1,244,0,1,248,15,192,0,26,171,250,170,129,248,15,192,0,47,255,255,255,209,248,15,192,0,47,255,255,255,209,248,15,192,0,47,3,208,11,209,255,255,255,192,47,3,210,75,209,255,255,255,192,47,7,199,139,209,255,255,255,128,47,7,195,203,209,248,15,192,0,47,31,255,219,209,248,15,192,0,47,127,255,251,209,248,15,192,0,47,58,80,251,209,248,15,192,0,47,0,0,155,209,255,255,255,224,47,0,0,11,209,255,255,255,224,47,0,1,95,193,255,255,255,224,47,0,3,255,193,248,0,0,0,47,0,2,254,1,248,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x96fb 電 + 251,150,33,33,41,36,2,253,2,170,170,170,170,170,170,128,0,3,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,192,0,0,0,0,11,208,0,0,0,0,0,0,0,11,208,0,0,0,0,127,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,253,0,127,85,85,95,229,85,85,253,0,126,0,0,11,208,0,0,189,0,126,47,255,139,211,255,244,189,0,126,47,255,139,211,255,248,189,0,126,0,0,11,208,0,0,189,0,0,0,0,11,208,0,0,0,0,0,127,255,139,211,255,253,0,0,0,127,255,139,211,255,253,0,0,0,0,0,6,144,0,0,0,0,0,85,85,85,85,85,85,0,0,0,255,255,255,255,255,255,0,0,0,255,255,255,255,255,255,0,0,0,252,0,15,208,0,63,0,0,0,252,0,15,208,0,63,0,0,0,255,255,255,255,255,255,0,0,0,255,255,255,255,255,255,0,0,0,252,0,15,208,0,63,0,0,0,252,0,15,208,0,63,0,0,0,253,85,95,229,85,127,0,0,0,255,255,255,255,255,255,4,0,0,255,255,255,255,255,255,31,64,0,252,0,15,208,0,0,47,64,0,168,0,15,224,0,0,63,64,0,0,0,11,255,255,255,255,0,0,0,0,3,255,255,255,253,0,0,0,0,0,26,170,170,144,0, + // 0x9752 青 + 82,151,32,35,24,36,2,252,0,0,0,11,224,0,0,0,0,0,0,15,224,0,0,0,6,170,170,175,250,170,170,144,11,255,255,255,255,255,255,240,11,255,255,255,255,255,255,240,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,85,85,95,245,85,85,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,106,170,170,170,170,170,170,169,0,0,0,0,0,0,0,0,0,26,170,170,170,170,168,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,64,0,0,0,252,0,0,63,64,0,0,0,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,149,85,85,85,252,0,0,63,64,0,0,0,252,0,0,63,149,85,85,85,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,64,0,0,0,252,0,0,63,64,0,0,0,252,0,0,63,64,0,0,1,252,0,0,63,64,0,6,171,252,0,0,63,64,0,7,255,252,0,0,63,64,0,3,255,224,0,0,0,0,0,0,0,0,0, + // 0x975e 非 + 94,151,34,35,59,36,1,252,0,0,3,240,1,248,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,15,255,255,240,2,255,255,255,192,15,255,255,240,2,255,255,255,192,15,255,255,240,2,255,255,255,192,0,0,7,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,15,255,255,240,2,255,255,255,0,15,255,255,240,2,255,255,255,0,15,255,255,240,2,255,255,255,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,7,240,2,252,0,0,0,0,0,7,246,130,252,0,0,0,0,5,175,255,194,252,0,0,0,107,255,255,255,194,255,255,255,208,127,255,255,249,2,255,255,255,208,63,255,191,192,2,255,255,255,208,57,64,127,64,2,252,0,0,0,0,0,255,0,2,252,0,0,0,0,2,253,0,2,252,0,0,0,0,11,252,0,2,252,0,0,0,0,47,240,0,2,252,0,0,0,1,255,192,0,2,252,0,0,0,11,255,0,0,2,252,0,0,0,11,252,0,0,2,252,0,0,0,2,208,0,0,2,248,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9762 面 + 98,151,32,33,8,36,2,252,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,47,208,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,64,0,0,0,31,255,255,255,255,255,255,244,31,255,255,255,255,255,255,244,31,255,255,255,255,255,255,244,31,192,47,64,3,240,3,244,31,192,47,64,3,240,3,244,31,192,47,64,3,240,3,244,31,192,47,234,171,240,3,244,31,192,47,255,255,240,3,244,31,192,47,255,255,240,3,244,31,192,47,64,3,240,3,244,31,192,47,64,3,240,3,244,31,192,47,64,3,240,3,244,31,192,47,234,171,240,3,244,31,192,47,255,255,240,3,244,31,192,47,255,255,240,3,244,31,192,47,64,3,240,3,244,31,192,47,64,3,240,3,244,31,192,47,64,3,240,3,244,31,192,47,64,3,240,3,244,31,255,255,255,255,255,255,244,31,255,255,255,255,255,255,244,31,255,255,255,255,255,255,244,31,192,0,0,0,0,3,244,31,192,0,0,0,0,3,244,0,0,0,0,0,0,0,0, + // 0x9805 項 + 5,152,34,33,41,36,1,252,0,0,0,47,255,255,255,255,224,0,0,0,47,255,255,255,255,224,63,255,255,213,85,127,255,255,208,63,255,255,192,0,47,192,0,0,63,255,255,192,0,63,128,0,0,0,47,128,0,0,63,64,0,0,0,47,128,3,255,255,255,255,0,0,47,128,3,255,255,255,255,0,0,47,128,3,250,170,170,191,0,0,47,128,3,240,0,0,63,0,0,47,128,3,240,0,0,63,0,0,47,128,3,245,85,85,127,0,0,47,128,3,255,255,255,255,0,0,47,128,3,255,255,255,255,0,0,47,128,3,240,0,0,63,0,0,47,128,3,240,0,0,63,0,0,47,128,3,240,0,0,63,0,0,47,128,3,255,255,255,255,0,0,47,134,227,255,255,255,255,0,0,47,255,243,245,85,85,127,0,1,191,255,227,240,0,0,63,0,111,255,253,3,240,0,0,63,0,191,255,128,3,250,170,170,191,0,63,228,0,3,255,255,255,255,0,57,0,0,3,255,255,255,255,0,0,0,0,0,9,0,5,0,0,0,0,0,0,63,128,47,192,0,0,0,0,2,255,192,63,248,0,0,0,0,111,254,0,7,255,64,0,0,3,255,240,0,0,191,224,0,0,2,255,64,0,0,31,208,0,0,0,224,0,0,0,3,64,0,0,0,0,0,0,0,0,0, + // 0x9810 預 + 16,152,34,33,41,36,1,252,63,255,255,247,255,255,255,255,192,63,255,255,251,255,255,255,255,192,63,255,255,243,255,255,255,255,192,0,0,31,208,0,15,240,0,0,0,0,63,128,0,15,208,0,0,3,208,254,0,85,111,229,85,0,11,255,252,0,191,255,255,255,0,2,255,240,0,191,255,255,255,0,0,47,248,0,190,0,0,63,0,0,7,254,0,190,0,0,63,0,0,0,190,0,190,0,0,63,0,191,255,255,254,191,255,255,255,0,191,255,255,254,191,255,255,255,0,191,255,255,253,190,85,85,127,0,0,15,192,252,190,0,0,63,0,0,15,192,248,190,0,0,63,0,0,15,193,244,190,85,85,127,0,0,15,194,240,191,255,255,255,0,0,15,195,240,191,255,255,255,0,0,15,194,208,190,0,0,63,0,0,15,192,0,190,0,0,63,0,0,15,192,0,190,0,0,63,0,0,15,192,0,191,170,170,191,0,0,15,192,0,191,255,255,255,0,0,15,192,0,191,255,255,255,0,0,15,192,0,1,64,1,0,0,0,15,192,0,7,224,11,208,0,0,15,192,0,47,244,31,248,0,0,31,192,1,255,208,7,255,0,15,255,192,31,254,0,0,191,192,15,255,192,63,244,0,0,47,224,11,250,0,15,64,0,0,7,64,0,0,0,0,0,0,0,0,0, + // 0x984d 額 + 77,152,34,34,50,36,1,253,0,3,240,0,0,0,0,0,0,0,3,240,0,0,0,0,0,0,0,3,240,0,191,255,255,255,192,42,171,250,170,191,255,255,255,192,63,255,255,255,191,255,255,255,192,63,255,255,255,0,7,240,0,0,62,0,0,63,0,11,224,0,0,62,11,128,63,10,175,250,170,0,62,15,192,63,31,255,255,255,0,0,63,149,64,31,255,255,255,0,0,127,255,248,31,128,0,63,0,1,255,255,244,31,128,0,63,0,3,244,3,240,31,128,0,63,0,31,248,15,208,31,255,255,255,0,127,255,31,192,31,255,255,255,0,126,127,255,0,31,213,85,127,0,8,15,254,0,31,128,0,63,0,0,7,255,64,31,128,0,63,0,0,31,255,208,31,149,85,127,0,0,191,143,248,31,255,255,255,0,11,254,2,255,31,255,255,255,0,191,244,0,127,31,128,0,63,0,127,255,255,252,31,128,0,63,0,47,255,255,240,31,128,0,63,0,3,250,171,240,31,234,170,191,0,3,240,3,240,31,255,255,255,0,3,240,3,240,31,255,255,255,0,3,240,3,240,0,64,0,0,0,3,240,3,240,2,244,7,208,0,3,255,255,240,31,252,11,248,0,3,255,255,241,255,224,2,255,64,3,250,170,175,255,64,0,127,208,3,240,0,7,248,0,0,15,224,1,64,0,1,128,0,0,3,64, + // 0x985e 類 + 94,152,34,34,50,36,1,253,0,2,160,0,0,0,0,0,0,6,3,240,56,0,0,0,0,0,31,67,240,126,191,255,255,255,208,15,195,240,252,191,255,255,255,208,7,211,241,244,191,255,255,255,192,3,147,241,240,0,7,240,0,0,42,171,250,170,0,11,224,0,0,63,255,255,255,26,175,234,170,0,63,255,255,255,47,255,255,255,0,0,31,244,0,47,255,255,255,0,0,63,255,0,47,64,0,63,0,0,255,255,224,47,64,0,63,0,3,247,247,252,47,64,0,63,0,31,227,240,255,47,255,255,255,0,127,131,240,61,47,255,255,255,0,46,3,240,4,47,149,85,127,0,4,2,160,0,47,64,0,63,0,0,2,160,0,47,64,0,63,0,0,3,240,0,47,149,85,127,0,0,3,240,0,47,255,255,255,0,63,255,255,255,47,255,255,255,0,63,255,255,255,47,64,0,63,0,63,255,255,255,47,64,0,63,0,0,7,240,0,47,64,0,63,0,0,11,240,0,47,255,255,255,0,0,15,253,0,47,255,255,255,0,0,47,255,128,26,170,170,170,0,0,127,175,240,0,208,1,64,0,1,255,11,252,3,252,11,240,0,11,253,1,254,31,248,11,253,0,127,244,0,120,255,224,1,255,64,63,192,0,15,255,64,0,63,224,46,0,0,7,248,0,0,15,208,0,0,0,1,128,0,0,2,0, + // 0x98a8 風 + 168,152,34,33,41,36,1,252,0,191,255,255,255,255,255,208,0,0,191,255,255,255,255,255,208,0,0,191,255,255,255,255,255,208,0,0,190,0,0,0,0,15,208,0,0,190,0,0,1,108,15,208,0,0,190,1,90,255,255,15,208,0,0,190,127,255,255,255,79,208,0,0,190,63,255,250,64,15,208,0,0,190,21,67,240,0,15,208,0,0,190,0,3,240,0,15,208,0,0,190,0,3,240,0,15,208,0,0,190,47,255,255,255,15,208,0,0,190,47,255,255,255,15,208,0,0,190,47,171,250,191,15,208,0,0,189,47,3,240,47,11,208,0,0,189,47,3,240,47,11,208,0,0,253,47,3,240,47,11,224,0,0,253,47,3,240,47,11,224,0,0,252,47,171,250,191,11,224,0,0,252,47,255,255,255,11,224,0,0,252,47,255,255,255,7,224,0,1,252,0,3,240,4,7,224,0,2,248,0,3,240,125,7,240,0,3,244,0,3,240,63,3,240,64,3,240,0,3,240,47,131,240,192,7,240,0,3,250,191,195,240,240,15,225,171,255,255,255,226,244,240,15,210,255,255,255,255,241,249,224,63,194,255,250,149,2,244,255,224,127,64,80,0,0,1,248,255,208,63,0,0,0,0,0,128,127,192,9,0,0,0,0,0,0,31,64,0,0,0,0,0,0,0,0,0, + // 0x98fd 飽 + 253,152,34,34,50,36,1,253,0,7,244,0,3,144,0,0,0,0,15,253,0,3,240,0,0,0,0,31,255,64,11,240,0,0,0,0,63,175,208,15,224,0,0,0,0,191,15,244,15,192,0,0,0,1,253,3,252,47,255,255,255,128,3,252,0,255,63,255,255,255,128,15,241,248,61,127,255,255,255,128,63,193,248,20,254,0,0,47,128,255,65,248,2,252,0,0,47,64,63,255,255,255,244,0,0,47,64,7,255,255,255,255,255,240,47,64,3,245,86,250,239,255,240,47,64,3,240,1,248,31,255,240,47,64,3,240,2,248,0,2,240,47,64,3,255,255,248,0,2,240,63,64,3,255,255,248,0,2,240,63,64,3,240,1,248,0,2,240,63,0,3,240,1,248,63,255,240,63,0,3,245,86,248,63,255,240,63,0,3,255,255,248,63,255,240,127,0,3,255,255,248,63,0,63,255,0,3,240,0,0,63,0,47,253,0,3,240,11,0,63,0,31,244,0,3,240,47,128,63,0,0,0,0,3,240,15,192,63,0,0,0,0,3,240,11,240,63,0,0,2,0,3,240,31,244,63,0,0,3,224,3,251,255,252,63,0,0,7,224,27,255,255,253,63,0,0,7,224,127,255,228,190,63,64,0,15,208,63,249,0,127,63,255,255,255,192,41,0,0,36,31,255,255,255,128,0,0,0,0,6,255,255,253,0, + // 0x9918 餘 + 24,153,34,34,50,36,1,253,0,15,240,0,0,15,224,0,0,0,31,252,0,0,47,240,0,0,0,63,255,0,0,63,248,0,0,0,191,63,192,0,255,253,0,0,0,252,15,240,1,252,191,0,0,3,248,3,248,3,248,63,192,0,15,245,86,252,15,240,15,240,0,63,255,255,184,63,208,11,248,0,255,63,255,32,191,64,2,254,0,124,0,0,3,254,0,0,255,192,21,85,85,95,252,0,0,63,240,7,255,255,251,255,255,255,255,208,7,255,255,243,143,255,255,243,128,7,208,3,240,15,255,255,240,0,7,208,3,240,0,11,208,0,0,7,255,255,240,0,11,208,0,0,7,255,255,240,0,11,208,0,0,7,224,3,242,255,255,255,255,192,7,208,3,243,255,255,255,255,192,7,229,87,243,255,255,255,255,192,7,255,255,240,0,11,208,0,0,7,255,255,240,0,11,208,16,0,7,208,0,0,42,11,209,248,0,7,208,0,0,63,11,208,252,0,7,255,255,240,126,11,208,190,0,7,255,255,240,252,11,208,127,0,7,250,170,161,252,11,208,63,64,7,208,0,3,248,11,208,31,192,7,250,170,171,240,11,208,15,192,7,255,255,255,224,11,208,15,208,7,255,255,250,192,11,208,7,64,7,208,0,0,3,255,208,0,0,7,208,0,0,2,255,192,0,0,7,208,0,0,1,254,0,0,0, + // 0x99ac 馬 + 172,153,33,32,32,36,1,253,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,63,0,0,252,0,0,0,0,0,63,0,0,252,0,0,0,0,0,63,0,0,252,0,0,0,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,170,170,254,170,170,128,0,0,63,0,0,252,0,0,0,0,0,63,0,0,252,0,0,0,0,0,63,170,170,254,170,170,128,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,0,0,252,0,0,0,0,0,63,0,0,252,0,0,0,0,0,63,0,0,252,0,0,0,0,0,63,255,255,255,255,255,255,128,0,63,255,255,255,255,255,255,128,0,63,255,255,255,255,255,255,64,0,0,0,0,0,0,0,63,64,0,80,0,0,0,6,0,63,64,0,252,6,0,176,47,128,63,64,1,252,47,64,248,15,192,63,0,2,248,31,128,252,7,224,127,0,3,244,15,192,189,3,240,127,0,7,240,15,192,62,1,244,191,0,15,224,15,192,63,0,64,254,0,31,208,11,208,47,0,1,254,0,127,192,11,208,20,3,255,252,0,47,0,5,0,0,2,255,248,0,4,0,0,0,0,1,255,208,0, + // 0x9a45 驅 + 69,154,34,34,50,36,1,252,10,170,170,160,170,170,170,170,64,15,255,255,241,255,255,255,255,192,15,255,255,241,255,255,255,255,192,15,130,240,1,244,0,0,0,0,15,130,240,1,244,0,0,0,0,15,130,240,1,244,31,255,248,0,15,255,255,209,244,31,255,248,0,15,255,255,209,244,31,0,248,0,15,235,250,145,244,31,0,248,0,15,130,240,1,244,31,0,248,0,15,130,240,1,244,31,0,248,0,15,235,250,145,244,31,0,248,0,15,255,255,225,244,31,255,248,0,15,255,255,225,244,31,255,248,0,15,130,240,1,244,0,0,0,0,15,130,240,1,244,0,0,0,0,15,130,240,1,245,255,211,255,128,15,255,255,245,245,255,211,255,128,15,255,255,245,245,225,211,135,128,10,170,170,245,245,209,211,131,128,0,0,1,245,245,209,211,131,128,4,0,33,245,245,209,211,131,128,30,171,57,245,245,209,211,131,128,30,179,109,245,245,209,211,131,128,45,179,143,241,245,255,211,255,128,45,179,207,241,245,255,211,255,128,60,114,194,241,244,0,0,0,0,60,113,194,241,244,0,0,0,0,124,112,3,241,250,170,170,170,144,180,0,3,241,255,255,255,255,224,16,1,91,225,255,255,255,255,224,0,0,255,193,244,0,0,0,0,0,0,255,65,244,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9ad4 體 + 212,154,33,35,59,36,2,252,0,0,0,0,0,244,124,0,0,5,85,85,64,0,244,124,0,0,15,255,255,192,0,244,124,0,0,15,255,255,192,255,255,255,253,0,15,128,15,192,255,255,255,253,0,15,128,15,192,248,184,184,125,0,15,139,255,192,244,180,116,125,0,15,139,255,192,244,180,120,125,0,15,139,15,192,255,255,255,253,0,15,139,15,192,255,255,255,253,0,15,139,15,192,244,180,116,125,0,95,223,95,212,244,180,116,125,0,255,255,255,252,255,255,255,253,0,255,255,255,252,255,255,255,253,0,248,0,0,188,0,0,0,0,0,248,0,0,188,0,0,0,0,0,255,255,255,255,255,255,255,255,64,11,255,255,131,255,255,255,255,64,11,213,111,129,85,85,85,85,0,11,192,15,128,0,0,0,0,0,11,213,95,128,127,255,255,248,0,11,255,255,128,127,255,255,248,0,11,255,255,128,124,0,0,248,0,11,192,15,128,124,0,0,248,0,11,192,15,128,125,0,0,248,0,11,255,255,128,127,255,255,248,0,11,255,255,128,127,255,255,248,0,11,213,95,128,7,128,15,128,0,11,192,15,128,11,192,15,128,0,11,192,15,128,7,224,47,0,0,11,192,15,128,3,240,62,0,0,11,193,175,139,255,255,255,255,128,11,194,255,75,255,255,255,255,128,11,193,254,5,85,85,85,85,64,0,0,0,0,0,0,0,0,0, + // 0x9ad8 高 + 216,154,32,35,24,36,2,252,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,208,0,0,0,191,255,255,255,255,255,255,253,191,255,255,255,255,255,255,253,191,255,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,255,255,255,255,224,0,0,11,255,255,255,255,224,0,0,11,229,85,85,95,224,0,0,11,224,0,0,11,224,0,0,11,224,0,0,11,224,0,0,11,229,85,85,95,224,0,0,11,255,255,255,255,224,0,0,11,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,255,244,15,255,255,255,255,255,255,244,15,255,255,255,255,255,255,244,15,192,0,0,0,0,3,244,15,192,21,85,85,84,3,244,15,192,63,255,255,252,3,244,15,192,63,255,255,252,3,244,15,192,63,0,0,252,3,244,15,192,63,0,0,252,3,244,15,192,63,0,0,252,3,244,15,192,63,85,85,252,3,244,15,192,63,255,255,252,3,244,15,192,63,255,255,252,7,244,15,192,63,0,0,15,255,240,15,192,42,0,0,11,255,240,15,192,0,0,0,7,255,128,0,0,0,0,0,0,0,0, + // 0x9ec3 黃 + 195,158,32,35,24,36,2,252,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,10,170,255,170,170,191,170,164,31,255,255,255,255,255,255,248,31,255,255,255,255,255,255,248,0,0,253,0,0,127,0,0,0,0,253,0,0,127,0,0,0,0,254,85,85,191,0,0,0,0,255,255,255,255,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,254,85,95,229,85,127,64,0,252,0,15,224,0,63,64,0,253,0,15,224,0,127,64,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,252,0,15,224,0,63,64,0,252,0,15,224,0,63,64,0,254,85,95,229,85,127,64,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,0,189,0,0,190,64,0,0,11,255,64,1,255,249,0,2,255,253,0,0,111,255,224,191,255,144,0,0,1,191,254,191,248,0,0,0,0,11,254,46,0,0,0,0,0,0,116,0,0,0,0,0,0,0,0, + // 0x9ede 點 + 222,158,34,34,50,36,1,253,0,0,0,0,0,3,240,0,0,15,255,255,255,64,3,240,0,0,15,255,255,255,64,3,240,0,0,15,149,245,111,64,3,240,0,0,15,64,240,31,64,3,240,0,0,15,180,241,255,64,3,240,0,0,15,120,242,239,64,3,240,0,0,15,124,243,223,64,3,244,0,0,15,108,243,95,64,3,255,255,224,15,93,247,31,64,3,255,255,224,15,68,246,31,64,3,255,255,224,15,64,240,31,64,3,240,0,0,15,255,255,255,64,3,240,0,0,15,255,255,255,64,3,240,0,0,5,86,249,85,0,3,240,0,0,0,2,244,0,0,3,240,0,0,10,171,250,170,0,3,240,0,0,31,255,255,255,79,255,255,255,0,31,255,255,255,79,255,255,255,0,0,2,244,0,15,255,255,255,0,0,2,244,0,15,192,0,63,0,0,2,249,90,143,192,0,63,0,63,255,255,255,207,192,0,63,0,63,255,255,255,207,192,0,63,0,63,234,149,84,15,192,0,63,0,0,0,4,60,15,192,0,63,0,6,31,46,62,15,192,0,63,0,11,207,31,31,79,192,0,63,0,15,143,79,11,207,192,0,63,0,15,79,75,71,223,255,255,255,0,47,11,139,131,143,255,255,255,0,63,11,134,64,15,255,255,255,0,189,5,0,0,15,192,0,63,0,40,0,0,0,15,192,0,42,0, + // 0x9f4a 齊 + 74,159,34,35,59,36,1,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,128,63,255,255,255,255,255,255,255,128,42,170,170,170,171,234,170,170,64,0,0,0,36,3,224,0,16,0,0,0,0,188,7,224,6,248,0,31,255,255,255,15,218,255,253,0,31,255,255,159,95,95,255,208,0,5,189,95,142,81,31,155,192,0,0,252,15,131,240,31,67,224,0,0,248,15,67,240,31,66,240,0,2,244,31,67,240,31,64,252,0,7,240,47,3,240,31,150,254,0,47,203,255,3,240,255,255,127,192,127,71,253,3,240,255,255,31,208,44,1,80,2,160,165,0,3,128,0,10,144,0,0,0,42,64,0,0,15,208,0,0,0,63,64,0,0,15,250,170,170,170,191,64,0,0,15,255,255,255,255,255,64,0,0,15,255,255,255,255,255,64,0,0,15,208,0,0,0,63,64,0,0,15,208,0,0,0,63,64,0,0,31,234,170,170,170,191,64,0,0,47,255,255,255,255,255,64,0,0,63,255,255,255,255,255,64,0,0,191,64,0,0,0,63,64,0,1,255,0,0,0,0,63,64,0,7,253,0,0,0,0,63,64,0,31,248,0,0,0,0,63,64,0,15,240,0,0,0,0,63,64,0,3,128,0,0,0,0,63,64,0,0,0,0,0,0,0,0,0,0, + // 0xff1a : + 26,255,6,24,48,36,15,2,47,128,191,224,255,240,255,240,191,224,47,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,128,191,224,255,240,255,240,191,224,47,128, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Vietnamese_26.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Vietnamese_26.cpp new file mode 100644 index 000000000000..d291f24576db --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_26px/NotoSans_Medium_Vietnamese_26.cpp @@ -0,0 +1,246 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Vietnamese 36pt, capital 'A' height: 26px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 +extern const uint8_t NotoSans_Medium_Vietnamese_26[18855] = { + 162,26,2,1,249,30,34,247, // unifont_t + // 0x0102 Ă + 2,1,24,33,198,24,0,0,0,15,0,2,224,0,0,15,128,7,208,0,0,11,255,255,192,0,0,3,255,255,0,0,0,0,191,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x0103 ă + 3,1,17,28,140,21,1,255,2,224,0,60,0,1,244,0,188,0,0,255,255,248,0,0,127,255,224,0,0,11,255,64,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x0110 Đ + 16,1,23,26,156,26,1,0,6,170,170,144,0,0,7,255,255,255,128,0,7,255,255,255,244,0,7,254,170,255,254,0,7,244,0,7,255,128,7,244,0,0,191,208,7,244,0,0,47,240,7,244,0,0,15,244,7,244,0,0,11,248,7,244,0,0,7,252,7,244,0,0,3,252,91,249,85,0,3,252,255,255,255,64,3,252,255,255,255,64,3,252,255,255,255,0,3,252,7,244,0,0,3,252,7,244,0,0,7,252,7,244,0,0,11,248,7,244,0,0,15,244,7,244,0,0,47,240,7,244,0,0,191,208,7,244,0,7,255,128,7,249,85,191,254,0,7,255,255,255,248,0,7,255,255,255,128,0,7,255,255,228,0,0, + // 0x0111 đ + 17,1,20,29,145,23,2,255,0,0,0,5,64,0,0,0,31,208,0,0,0,31,208,0,1,85,111,229,0,11,255,255,255,0,11,255,255,255,0,1,85,111,229,0,0,0,31,208,0,5,64,31,208,0,191,253,31,208,7,255,255,159,208,31,255,255,255,208,63,240,2,255,208,127,192,0,127,208,191,128,0,63,208,255,0,0,47,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,31,208,255,0,0,47,208,191,64,0,63,208,127,192,0,127,208,63,240,1,255,208,31,255,255,239,208,7,255,255,143,208,0,191,253,15,208,0,5,64,0,0, + // 0x0128 Ĩ + 40,1,14,33,132,13,255,0,1,160,0,160,15,254,1,240,47,255,251,224,62,31,255,192,124,1,255,0,0,0,0,0,0,0,0,0,6,170,170,0,11,255,255,64,7,255,255,0,0,47,224,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,0,47,208,0,2,255,253,0,11,255,255,64,11,255,255,64, + // 0x0129 ĩ + 41,1,14,27,108,10,254,0,2,144,1,144,31,253,3,208,63,255,239,192,189,47,255,128,244,2,254,0,0,0,0,0,0,0,0,0,0,21,64,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0, + // 0x0168 Ũ + 104,1,21,34,204,27,3,255,0,6,128,2,128,0,0,63,248,7,192,0,0,191,255,239,128,0,0,248,127,255,0,0,1,240,7,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,255,0,63,224,0,3,253,0,15,253,0,47,248,0,7,255,255,255,240,0,1,255,255,255,128,0,0,47,255,249,0,0,0,0,21,0,0,0, + // 0x0169 ũ + 105,1,17,28,140,23,3,255,0,104,0,40,0,3,255,128,124,0,11,255,254,248,0,15,135,255,240,0,31,0,127,192,0,0,0,0,0,0,0,0,0,0,0,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,31,128,0,21,0,0,0, + // 0x01a0 Ơ + 160,1,28,29,203,29,2,255,0,0,0,0,0,1,84,0,0,0,0,0,3,253,0,1,191,254,64,3,252,0,31,255,255,248,3,252,0,255,255,255,255,11,244,3,255,229,91,255,239,240,11,254,0,0,127,255,192,15,248,0,0,15,253,0,47,240,0,0,11,252,0,63,208,0,0,3,253,0,127,192,0,0,2,254,0,191,128,0,0,1,255,0,191,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,191,64,0,0,0,255,0,191,128,0,0,1,255,0,127,192,0,0,2,254,0,63,192,0,0,3,253,0,63,224,0,0,7,252,0,31,244,0,0,15,248,0,15,253,0,0,63,240,0,3,255,144,2,255,208,0,0,255,255,255,255,64,0,0,47,255,255,252,0,0,0,6,255,255,144,0,0,0,0,5,80,0,0,0, + // 0x01a1 ơ + 161,1,22,24,144,23,2,255,0,0,0,0,5,80,0,0,0,0,15,240,0,0,0,0,31,224,0,6,169,0,31,208,0,191,255,224,63,192,7,255,255,253,255,64,15,254,91,255,253,0,63,224,0,191,224,0,127,192,0,63,192,0,191,64,0,31,208,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,224,0,127,128,0,47,208,0,63,192,0,63,192,0,31,244,1,255,128,0,11,255,255,255,0,0,2,255,255,248,0,0,0,111,255,144,0,0,0,1,80,0,0,0, + // 0x01af Ư + 175,1,27,29,203,29,3,255,0,0,0,0,0,1,84,0,0,0,0,0,3,252,170,0,0,0,106,67,252,255,0,0,0,127,71,248,255,0,0,0,127,75,240,255,0,0,0,127,175,208,255,0,0,0,127,255,128,255,0,0,0,127,249,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,191,64,0,191,64,0,0,191,0,0,127,128,0,0,255,0,0,63,192,0,1,255,0,0,63,224,0,3,253,0,0,15,253,0,47,252,0,0,7,255,255,255,240,0,0,1,255,255,255,192,0,0,0,31,255,253,0,0,0,0,0,21,0,0,0,0, + // 0x01b0 ư + 176,1,24,24,144,25,3,255,0,0,0,0,1,84,0,0,0,0,2,253,0,0,0,0,3,252,84,0,0,21,67,252,254,0,0,63,135,244,254,0,0,63,239,240,254,0,0,63,255,192,254,0,0,63,253,0,254,0,0,63,192,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,127,128,0,254,0,0,127,128,0,255,0,0,255,128,0,255,64,1,255,128,0,191,192,7,255,128,0,63,255,255,255,128,0,31,255,255,47,128,0,7,255,248,31,128,0,0,21,0,0,0,0, + // 0x0303 ̃ + 3,3,14,6,24,0,238,21,2,144,1,144,31,253,3,208,63,255,239,192,189,47,255,128,244,2,254,0,0,0,0,0, + // 0x0309 ̉ + 9,3,8,9,18,0,242,21,106,64,191,244,107,252,0,253,0,252,7,248,31,224,15,64,10,0, + // 0x0323 ̣ + 35,3,4,5,5,0,243,249,40,255,255,255,40, + // 0x0340 ̀ + 64,3,8,7,14,0,250,21,170,0,191,128,63,208,15,240,2,252,0,190,0,0, + // 0x0341 ́ + 65,3,8,7,14,0,254,21,0,170,2,254,7,252,15,240,63,128,190,0,0,0, + // 0x1ea0 Ạ + 160,30,24,33,198,24,0,249,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,128,0,0,0,0,15,240,0,0,0,0,31,240,0,0,0,0,15,240,0,0,0,0,6,128,0,0, + // 0x1ea1 ạ + 161,30,17,27,135,21,1,249,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0,0,0,0,0,0,0,0,164,0,0,0,2,252,0,0,0,3,253,0,0,0,2,252,0,0,0,0,164,0,0, + // 0x1ea2 Ả + 162,30,24,36,216,24,0,0,0,0,42,128,0,0,0,0,127,248,0,0,0,0,106,253,0,0,0,0,0,190,0,0,0,0,0,189,0,0,0,0,6,252,0,0,0,0,15,224,0,0,0,0,15,128,0,0,0,0,10,64,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x1ea3 ả + 163,30,17,31,155,21,1,255,0,6,164,0,0,0,15,255,64,0,0,10,191,192,0,0,0,15,192,0,0,0,15,192,0,0,0,127,128,0,0,1,253,0,0,0,1,240,0,0,0,0,160,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x1ea4 Ấ + 164,30,24,35,210,24,0,0,0,0,0,0,15,224,0,0,0,0,47,128,0,0,47,240,126,0,0,0,127,252,184,0,0,0,254,254,0,0,0,3,244,63,64,0,0,15,192,11,208,0,0,5,0,0,64,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x1ea5 ấ + 165,30,19,30,150,21,1,255,0,0,0,1,252,0,0,0,3,240,0,3,254,15,192,0,15,255,94,0,0,47,239,192,0,0,126,7,240,0,1,244,0,252,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x1ea6 Ầ + 166,30,24,35,210,24,0,0,15,208,0,0,0,0,3,240,0,0,0,0,1,248,47,240,0,0,0,61,127,248,0,0,0,0,254,254,0,0,0,3,244,63,64,0,0,15,192,11,208,0,0,4,0,0,64,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x1ea7 ầ + 167,30,18,30,150,21,0,255,127,0,0,0,0,47,128,0,0,0,11,208,255,128,0,1,227,255,208,0,0,11,251,240,0,0,31,193,252,0,0,62,0,63,0,0,0,0,0,0,0,0,0,0,0,0,1,170,144,0,0,127,255,253,0,0,255,255,255,128,0,190,85,255,192,0,16,0,47,208,0,0,0,15,224,0,0,0,15,240,0,0,0,15,240,0,1,170,255,240,0,127,255,255,240,2,255,255,175,240,11,253,0,15,240,15,240,0,15,240,31,224,0,15,240,31,224,0,31,240,31,224,0,63,240,15,244,0,255,240,11,255,175,251,240,3,255,255,199,240,0,191,254,3,240,0,5,64,0,0, + // 0x1ea8 Ẩ + 168,30,24,38,228,24,0,0,0,0,0,0,80,0,0,0,0,1,254,0,0,0,0,0,95,64,0,0,0,0,11,128,0,0,0,0,47,0,0,0,47,240,184,0,0,0,127,248,116,0,0,1,254,253,0,0,0,3,244,63,64,0,0,15,192,11,192,0,0,4,0,0,64,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x1ea9 ẩ + 169,30,19,33,165,21,1,255,0,0,0,5,0,0,0,0,47,224,0,0,0,21,240,0,0,0,0,244,0,0,0,6,240,0,3,254,15,64,0,11,255,75,0,0,47,223,192,0,0,127,7,240,0,0,248,0,252,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x1eaa Ẫ + 170,30,24,38,228,24,0,0,0,0,168,0,208,0,0,3,255,146,208,0,0,11,239,255,192,0,0,15,1,255,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,63,248,0,0,0,0,254,253,0,0,0,3,244,63,64,0,0,11,192,11,208,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x1eab ẫ + 171,30,17,33,165,21,1,255,0,31,128,44,0,0,191,249,124,0,0,250,255,244,0,1,208,31,224,0,0,0,0,0,0,0,2,253,0,0,0,11,255,0,0,0,31,239,192,0,0,127,7,240,0,1,244,0,252,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x1eac Ậ + 172,30,24,41,246,24,0,249,0,0,26,160,0,0,0,0,63,248,0,0,0,0,255,253,0,0,0,2,253,191,0,0,0,11,240,47,192,0,0,31,128,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,128,0,0,0,0,15,240,0,0,0,0,31,240,0,0,0,0,15,240,0,0,0,0,6,128,0,0, + // 0x1ead ậ + 173,30,17,35,175,21,1,249,0,2,169,0,0,0,7,255,0,0,0,15,255,192,0,0,63,143,240,0,0,254,3,248,0,3,244,0,190,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0,0,0,0,0,0,0,0,160,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,0,160,0,0, + // 0x1eae Ắ + 174,30,24,37,222,24,0,0,0,0,0,21,0,0,0,0,0,254,0,0,0,0,1,248,0,0,0,0,3,224,0,0,0,11,70,66,208,0,0,11,192,7,192,0,0,3,245,111,192,0,0,2,255,255,0,0,0,0,127,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x1eaf ắ + 175,30,17,32,160,21,1,255,0,0,5,64,0,0,0,31,192,0,0,0,63,0,0,0,0,188,0,0,0,240,160,120,0,0,244,0,248,0,0,190,91,240,0,0,63,255,224,0,0,11,255,64,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x1eb0 Ằ + 176,30,24,37,222,24,0,0,0,0,84,0,0,0,0,0,252,0,0,0,0,0,127,0,0,0,0,0,31,64,0,0,0,11,66,130,208,0,0,11,128,7,192,0,0,7,245,111,128,0,0,2,255,255,0,0,0,0,191,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x1eb1 ằ + 177,30,17,32,160,21,1,255,0,21,0,0,0,0,47,128,0,0,0,11,208,0,0,0,2,240,0,0,1,240,100,120,0,0,244,0,248,0,0,254,91,240,0,0,63,255,224,0,0,11,255,64,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x1eb2 Ẳ + 178,30,24,38,228,24,0,0,0,0,9,64,0,0,0,0,47,240,0,0,0,0,0,244,0,0,0,0,0,240,0,0,0,0,7,224,0,0,0,11,71,66,208,0,0,11,128,7,192,0,0,7,245,111,128,0,0,2,255,255,0,0,0,0,191,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x1eb3 ẳ + 179,30,17,33,165,21,1,255,0,1,160,0,0,0,3,253,0,0,0,0,31,0,0,0,0,31,0,0,0,0,252,0,0,0,240,160,124,0,0,244,0,184,0,0,190,91,244,0,0,63,255,224,0,0,11,255,64,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x1eb4 Ẵ + 180,30,24,38,228,24,0,0,0,0,168,0,144,0,0,3,255,146,208,0,0,11,239,255,192,0,0,15,1,191,64,0,0,0,0,0,0,0,0,10,0,2,128,0,0,11,128,3,192,0,0,7,229,111,192,0,0,3,255,255,0,0,0,0,191,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253, + // 0x1eb5 ẵ + 181,30,17,33,165,21,1,255,0,26,64,28,0,0,127,248,124,0,0,250,255,248,0,1,224,31,224,0,0,0,0,0,0,0,160,0,40,0,0,240,0,184,0,0,254,87,244,0,0,63,255,224,0,0,11,255,64,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0, + // 0x1eb6 Ặ + 182,30,24,40,240,24,0,249,0,15,64,2,240,0,0,15,128,7,224,0,0,7,255,255,192,0,0,2,255,255,64,0,0,0,127,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,224,0,0,0,0,47,244,0,0,0,0,63,248,0,0,0,0,191,252,0,0,0,0,254,253,0,0,0,1,253,255,0,0,0,2,252,127,0,0,0,3,248,63,128,0,0,7,244,63,192,0,0,15,240,31,208,0,0,15,224,15,224,0,0,47,192,11,240,0,0,63,192,7,244,0,0,127,128,3,252,0,0,191,0,2,252,0,0,255,255,255,254,0,1,255,255,255,255,0,3,255,255,255,255,64,3,254,170,170,191,128,11,244,0,0,63,192,15,240,0,0,47,208,31,224,0,0,15,240,47,208,0,0,15,240,63,192,0,0,7,248,127,128,0,0,3,252,255,0,0,0,2,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,128,0,0,0,0,15,240,0,0,0,0,31,240,0,0,0,0,15,240,0,0,0,0,6,128,0,0, + // 0x1eb7 ặ + 183,30,17,34,170,21,1,249,1,240,0,61,0,0,244,0,188,0,0,255,255,248,0,0,63,255,240,0,0,11,255,128,0,0,0,0,0,0,0,0,0,0,0,0,6,170,64,0,1,255,255,244,0,3,255,255,254,0,2,249,87,255,0,0,64,0,191,64,0,0,0,63,128,0,0,0,63,192,0,0,0,63,192,0,6,171,255,192,1,255,255,255,192,11,255,254,191,192,47,244,0,63,192,63,192,0,63,192,127,128,0,63,192,127,128,0,127,192,127,128,0,255,192,63,208,3,255,192,47,254,191,239,192,15,255,255,31,192,2,255,248,15,192,0,21,0,0,0,0,0,0,0,0,0,1,160,0,0,0,7,248,0,0,0,7,252,0,0,0,7,248,0,0,0,1,160,0,0, + // 0x1eb8 Ẹ + 184,30,15,33,132,20,3,249,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252,0,0,0,0,0,0,0,0,0,6,128,0,0,15,224,0,0,31,240,0,0,15,224,0,0,6,128,0, + // 0x1eb9 ẹ + 185,30,17,27,135,21,2,249,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0,0,0,0,0,0,0,1,160,0,0,0,3,248,0,0,0,7,252,0,0,0,3,248,0,0,0,1,160,0,0, + // 0x1eba Ẻ + 186,30,15,36,144,20,3,0,0,42,144,0,0,63,252,0,0,42,254,0,0,0,126,0,0,0,126,0,0,6,252,0,0,15,240,0,0,11,192,0,0,6,128,0,0,0,0,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x1ebb ẻ + 187,30,17,31,155,21,2,255,0,6,164,0,0,0,15,255,0,0,0,10,191,128,0,0,0,15,192,0,0,0,15,192,0,0,0,191,64,0,0,2,253,0,0,0,2,240,0,0,0,1,160,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x1ebc Ẽ + 188,30,15,33,132,20,3,0,0,164,0,100,7,255,64,244,15,255,251,240,47,75,255,224,61,0,191,128,0,0,0,0,0,0,0,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x1ebd ẽ + 189,30,17,28,140,21,2,255,0,104,0,40,0,3,255,128,124,0,11,255,254,248,0,15,135,255,240,0,31,0,127,192,0,0,0,0,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x1ebe Ế + 190,30,18,35,175,20,3,0,0,0,0,15,224,0,0,0,47,128,0,47,240,126,0,0,127,248,244,0,0,254,253,0,0,3,244,63,64,0,15,192,11,192,0,4,0,0,64,0,0,0,0,0,0,106,170,170,168,0,191,255,255,252,0,191,255,255,252,0,191,170,170,168,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,255,255,244,0,191,255,255,244,0,191,255,255,244,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,149,85,84,0,191,255,255,252,0,191,255,255,252,0,191,255,255,252,0, + // 0x1ebf ế + 191,30,19,30,150,21,2,255,0,0,0,3,244,0,0,0,15,208,0,11,252,31,64,0,47,254,45,0,0,127,127,64,0,0,252,15,208,0,3,224,2,240,0,0,0,0,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x1ec0 Ề + 192,30,17,35,175,20,1,0,254,0,0,0,0,63,0,0,0,0,15,193,255,0,0,3,215,255,192,0,0,15,239,224,0,0,63,66,244,0,0,188,0,189,0,0,80,0,4,0,0,0,0,0,0,6,170,170,170,128,11,255,255,255,192,11,255,255,255,192,11,250,170,170,128,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,255,255,255,64,11,255,255,255,64,11,255,255,255,64,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,249,85,85,64,11,255,255,255,192,11,255,255,255,192,11,255,255,255,192, + // 0x1ec1 ề + 193,30,18,30,150,21,1,255,253,0,0,0,0,63,0,0,0,0,15,130,255,0,0,2,199,255,192,0,0,15,239,224,0,0,63,66,244,0,0,252,0,189,0,0,0,0,0,0,0,0,0,0,0,0,2,170,64,0,0,63,255,244,0,1,255,255,253,0,3,254,70,255,64,15,244,0,63,192,31,224,0,47,208,47,192,0,15,224,63,192,0,15,224,63,234,170,175,240,63,255,255,255,240,63,255,255,255,240,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,47,224,0,0,0,15,244,0,0,0,11,253,0,6,192,3,255,255,255,192,0,191,255,255,192,0,27,255,254,0,0,0,21,64,0, + // 0x1ec2 Ể + 194,30,17,38,190,20,3,0,0,0,0,80,0,0,0,1,254,0,0,0,0,95,64,0,0,0,11,128,0,0,0,47,0,0,47,240,184,0,0,127,248,116,0,0,254,253,0,0,3,244,63,64,0,15,192,11,192,0,4,0,0,64,0,0,0,0,0,0,106,170,170,168,0,191,255,255,252,0,191,255,255,252,0,191,170,170,168,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,255,255,244,0,191,255,255,244,0,191,255,255,244,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,149,85,84,0,191,255,255,252,0,191,255,255,252,0,191,255,255,252,0, + // 0x1ec3 ể + 195,30,18,33,165,21,2,255,0,0,0,20,0,0,0,0,191,128,0,0,0,23,208,0,0,0,3,208,0,0,0,27,192,0,15,252,46,0,0,47,254,44,0,0,127,127,64,0,1,252,15,192,0,3,224,2,240,0,0,0,0,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x1ec4 Ễ + 196,30,15,38,152,20,3,0,0,168,1,208,3,255,147,208,11,239,255,192,15,1,255,0,0,0,0,0,0,31,224,0,0,63,248,0,0,254,253,0,3,244,63,64,15,192,11,192,4,0,0,64,0,0,0,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252, + // 0x1ec5 ễ + 197,30,17,33,165,21,2,255,0,110,0,116,0,1,255,229,240,0,3,235,255,224,0,3,128,127,128,0,0,0,0,0,0,0,11,248,0,0,0,31,253,0,0,0,63,191,64,0,0,252,15,192,0,3,224,2,240,0,0,0,0,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0, + // 0x1ec6 Ệ + 198,30,15,41,164,20,3,249,0,10,160,0,0,63,252,0,0,191,254,0,1,253,127,64,7,244,31,208,31,192,3,244,0,0,0,0,0,0,0,0,106,170,170,168,191,255,255,252,191,255,255,252,191,170,170,168,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,255,255,244,191,255,255,244,191,255,255,244,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,149,85,84,191,255,255,252,191,255,255,252,191,255,255,252,0,0,0,0,0,0,0,0,0,6,128,0,0,15,224,0,0,31,240,0,0,15,224,0,0,6,128,0, + // 0x1ec7 ệ + 199,30,17,35,175,21,2,249,0,6,164,0,0,0,31,252,0,0,0,63,255,0,0,0,255,63,192,0,3,248,15,224,0,15,208,2,248,0,0,0,0,0,0,0,0,0,0,0,0,10,169,0,0,0,255,255,208,0,7,255,255,244,0,15,249,27,253,0,63,208,0,255,0,127,128,0,191,64,191,0,0,63,128,255,0,0,63,128,255,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,191,128,0,0,0,63,208,0,0,0,47,244,0,27,0,15,255,255,255,0,2,255,255,255,0,0,111,255,248,0,0,0,85,0,0,0,0,0,0,0,0,1,160,0,0,0,3,248,0,0,0,7,252,0,0,0,3,248,0,0,0,1,160,0,0, + // 0x1ec8 Ỉ + 200,30,11,36,108,13,1,0,2,164,0,7,255,128,6,191,208,0,11,224,0,11,208,0,111,192,0,254,0,0,248,0,0,180,0,0,0,0,106,170,160,191,255,244,127,255,240,2,254,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,47,255,208,191,255,244,191,255,244, + // 0x1ec9 ỉ + 201,30,7,30,60,10,2,0,106,64,255,240,171,252,0,252,0,252,7,248,31,208,31,0,10,0,0,0,21,64,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192, + // 0x1eca Ị + 202,30,11,33,99,13,1,249,106,170,160,191,255,244,127,255,240,2,254,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,2,253,0,47,255,208,191,255,244,191,255,244,0,0,0,0,0,0,0,164,0,2,253,0,3,253,0,2,253,0,0,164,0, + // 0x1ecb ị + 203,30,4,34,34,10,3,249,104,255,255,255,40,0,0,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,40,255,255,255,40, + // 0x1ecc Ọ + 204,30,24,33,198,28,2,249,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0,0,0,0,0,0,0,0,0,2,144,0,0,0,0,15,240,0,0,0,0,15,244,0,0,0,0,15,240,0,0,0,0,2,144,0,0, + // 0x1ecd ọ + 205,30,18,27,135,22,2,249,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0,0,0,0,0,0,0,1,160,0,0,0,3,252,0,0,0,7,252,0,0,0,3,252,0,0,0,1,160,0,0, + // 0x1ece Ỏ + 206,30,24,37,222,28,2,255,0,0,10,144,0,0,0,0,47,253,0,0,0,0,42,255,0,0,0,0,0,63,64,0,0,0,0,63,0,0,0,0,1,191,0,0,0,0,7,248,0,0,0,0,3,208,0,0,0,0,3,192,0,0,0,0,0,0,0,0,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x1ecf ỏ + 207,30,18,31,155,22,2,255,0,6,164,0,0,0,15,255,64,0,0,10,191,192,0,0,0,15,192,0,0,0,15,192,0,0,0,127,128,0,0,1,253,0,0,0,1,240,0,0,0,0,160,0,0,0,0,0,0,0,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x1ed0 Ố + 208,30,24,36,216,28,2,255,0,0,0,0,11,240,0,0,0,0,15,192,0,0,15,244,63,0,0,0,63,252,120,0,0,0,191,191,0,0,0,2,248,47,128,0,0,7,208,7,224,0,0,1,0,0,64,0,0,0,0,0,0,0,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x1ed1 ố + 209,30,19,30,150,22,2,255,0,0,0,3,248,0,0,0,7,224,0,7,253,15,128,0,15,255,46,0,0,63,191,128,0,0,253,11,224,0,2,240,1,244,0,0,0,0,0,0,0,0,0,0,0,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x1ed2 Ồ + 210,30,24,36,216,28,2,255,11,240,0,0,0,0,2,244,0,0,0,0,0,188,15,244,0,0,0,46,63,252,0,0,0,0,191,191,0,0,0,2,248,31,192,0,0,7,208,7,224,0,0,1,0,0,64,0,0,0,0,0,0,0,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x1ed3 ồ + 211,30,19,30,150,22,1,255,254,0,0,0,0,63,64,0,0,0,15,193,255,64,0,2,211,255,192,0,0,15,235,240,0,0,47,66,248,0,0,189,0,126,0,0,0,0,0,0,0,0,0,0,0,0,1,170,64,0,0,47,255,248,0,1,255,255,255,0,3,255,150,255,192,15,248,0,47,224,31,240,0,15,240,47,208,0,7,248,63,192,0,3,252,63,192,0,3,252,63,192,0,3,252,63,192,0,3,252,63,192,0,3,252,63,192,0,3,252,63,192,0,7,248,31,224,0,11,244,15,240,0,15,240,7,253,0,127,224,2,255,255,255,192,0,191,255,254,0,0,27,255,228,0,0,0,84,0,0, + // 0x1ed4 Ổ + 212,30,24,39,234,28,2,255,0,0,0,0,16,0,0,0,0,0,255,64,0,0,0,0,91,192,0,0,0,0,3,192,0,0,0,0,31,128,0,0,31,244,61,0,0,0,63,252,56,0,0,0,255,191,0,0,0,2,248,47,128,0,0,7,208,7,224,0,0,1,0,0,64,0,0,0,0,0,0,0,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x1ed5 ổ + 213,30,18,33,165,22,2,255,0,0,0,20,0,0,0,0,63,192,0,0,0,22,224,0,0,0,1,240,0,0,0,11,208,0,7,253,31,0,0,15,255,13,0,0,63,191,128,0,0,253,11,224,0,2,240,1,244,0,0,0,0,0,0,0,0,0,0,0,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x1ed6 Ỗ + 214,30,24,39,234,28,2,255,0,0,105,0,176,0,0,2,255,209,224,0,0,7,235,255,208,0,0,11,64,191,64,0,0,0,0,0,0,0,0,0,11,240,0,0,0,0,47,252,0,0,0,0,191,190,0,0,0,1,248,47,128,0,0,7,208,7,224,0,0,1,0,0,64,0,0,0,0,0,0,0,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0, + // 0x1ed7 ỗ + 215,30,18,33,165,22,2,255,0,46,64,56,0,0,255,244,184,0,1,250,255,240,0,2,192,47,208,0,0,0,0,0,0,0,3,252,0,0,0,15,255,0,0,0,47,191,128,0,0,190,11,224,0,2,244,1,244,0,0,0,0,0,0,0,0,0,0,0,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0, + // 0x1ed8 Ộ + 216,30,24,41,246,28,2,249,0,0,10,164,0,0,0,0,47,252,0,0,0,0,127,254,0,0,0,1,254,127,128,0,0,3,244,15,224,0,0,15,208,2,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,191,254,64,0,0,31,255,255,248,0,0,191,255,255,255,0,3,255,229,91,255,192,11,254,0,0,127,240,15,248,0,0,15,244,47,240,0,0,11,252,63,208,0,0,3,253,127,192,0,0,2,254,191,128,0,0,1,255,191,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,255,64,0,0,0,255,191,64,0,0,0,255,191,128,0,0,1,255,127,192,0,0,2,254,63,192,0,0,3,253,63,224,0,0,7,252,31,244,0,0,15,248,15,253,0,0,63,240,3,255,144,6,255,208,0,255,255,255,255,64,0,47,255,255,252,0,0,6,255,255,144,0,0,0,5,80,0,0,0,0,0,0,0,0,0,0,2,144,0,0,0,0,15,240,0,0,0,0,15,244,0,0,0,0,15,240,0,0,0,0,2,144,0,0, + // 0x1ed9 ộ + 217,30,18,35,175,22,2,249,0,2,168,0,0,0,15,255,0,0,0,47,255,128,0,0,127,95,208,0,1,253,7,244,0,7,240,0,253,0,0,0,0,0,0,0,0,0,0,0,0,6,169,0,0,0,191,255,224,0,7,255,255,252,0,15,254,91,255,0,63,224,0,191,128,127,192,0,63,192,191,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,127,128,0,47,208,63,192,0,63,192,31,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,111,255,144,0,0,1,80,0,0,0,0,0,0,0,0,1,160,0,0,0,3,252,0,0,0,7,252,0,0,0,3,252,0,0,0,1,160,0,0, + // 0x1eda Ớ + 218,30,28,35,245,29,2,255,0,0,0,42,144,0,0,0,0,0,127,192,0,0,0,0,0,255,64,0,0,0,0,2,253,0,0,0,0,0,7,240,0,0,0,0,0,15,192,0,0,0,0,0,0,0,0,1,84,0,0,0,0,0,3,253,0,1,191,254,64,3,252,0,31,255,255,248,3,252,0,255,255,255,255,11,244,3,255,229,91,255,239,240,11,254,0,0,127,255,192,15,248,0,0,15,253,0,47,240,0,0,11,252,0,63,208,0,0,3,253,0,127,192,0,0,2,254,0,191,128,0,0,1,255,0,191,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,191,64,0,0,0,255,0,191,128,0,0,1,255,0,127,192,0,0,2,254,0,63,192,0,0,3,253,0,63,224,0,0,7,252,0,31,244,0,0,15,248,0,15,253,0,0,63,240,0,3,255,144,2,255,208,0,0,255,255,255,255,64,0,0,47,255,255,252,0,0,0,6,255,255,144,0,0,0,0,5,80,0,0,0, + // 0x1edb ớ + 219,30,22,29,174,23,2,255,0,0,10,164,0,0,0,0,47,240,0,0,0,0,63,192,0,0,0,0,255,0,0,0,0,2,252,0,0,0,0,7,240,0,5,80,0,0,0,0,15,240,0,0,0,0,31,224,0,6,169,0,31,208,0,191,255,224,63,192,7,255,255,253,255,64,15,254,91,255,253,0,63,224,0,191,224,0,127,192,0,63,192,0,191,64,0,31,208,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,224,0,127,128,0,47,208,0,63,192,0,63,192,0,31,244,1,255,128,0,11,255,255,255,0,0,2,255,255,248,0,0,0,111,255,144,0,0,0,1,80,0,0,0, + // 0x1edc Ờ + 220,30,28,35,245,29,2,255,0,2,168,0,0,0,0,0,2,255,0,0,0,0,0,0,191,64,0,0,0,0,0,47,192,0,0,0,0,0,11,240,0,0,0,0,0,2,248,0,0,0,0,0,0,0,0,1,84,0,0,0,0,0,3,253,0,1,191,254,64,3,252,0,31,255,255,248,3,252,0,255,255,255,255,11,244,3,255,229,91,255,239,240,11,254,0,0,127,255,192,15,248,0,0,15,253,0,47,240,0,0,11,252,0,63,208,0,0,3,253,0,127,192,0,0,2,254,0,191,128,0,0,1,255,0,191,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,191,64,0,0,0,255,0,191,128,0,0,1,255,0,127,192,0,0,2,254,0,63,192,0,0,3,253,0,63,224,0,0,7,252,0,31,244,0,0,15,248,0,15,253,0,0,63,240,0,3,255,144,2,255,208,0,0,255,255,255,255,64,0,0,47,255,255,252,0,0,0,6,255,255,144,0,0,0,0,5,80,0,0,0, + // 0x1edd ờ + 221,30,22,29,174,23,2,255,0,170,0,0,0,0,0,255,128,0,0,0,0,63,208,0,0,0,0,15,240,0,0,0,0,3,248,0,0,0,0,0,189,0,5,80,0,0,0,0,15,240,0,0,0,0,31,224,0,6,169,0,31,208,0,191,255,224,63,192,7,255,255,253,255,64,15,254,91,255,253,0,63,224,0,191,224,0,127,192,0,63,192,0,191,64,0,31,208,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,224,0,127,128,0,47,208,0,63,192,0,63,192,0,31,244,1,255,128,0,11,255,255,255,0,0,2,255,255,248,0,0,0,111,255,144,0,0,0,1,80,0,0,0, + // 0x1ede Ở + 222,30,28,37,3,29,2,255,0,0,26,144,0,0,0,0,0,63,252,0,0,0,0,0,42,255,0,0,0,0,0,0,63,0,0,0,0,0,0,63,0,0,0,0,0,2,253,0,0,0,0,0,11,244,0,0,0,0,0,7,192,0,0,0,0,0,6,128,0,1,84,0,0,0,0,0,3,253,0,1,191,254,64,3,252,0,31,255,255,248,3,252,0,255,255,255,255,11,244,3,255,229,91,255,239,240,11,254,0,0,127,255,192,15,248,0,0,15,253,0,47,240,0,0,11,252,0,63,208,0,0,3,253,0,127,192,0,0,2,254,0,191,128,0,0,1,255,0,191,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,191,64,0,0,0,255,0,191,128,0,0,1,255,0,127,192,0,0,2,254,0,63,192,0,0,3,253,0,63,224,0,0,7,252,0,31,244,0,0,15,248,0,15,253,0,0,63,240,0,3,255,144,2,255,208,0,0,255,255,255,255,64,0,0,47,255,255,252,0,0,0,6,255,255,144,0,0,0,0,5,80,0,0,0, + // 0x1edf ở + 223,30,22,31,186,23,2,255,0,10,164,0,0,0,0,15,255,0,0,0,0,10,191,128,0,0,0,0,31,192,0,0,0,0,31,128,0,0,0,1,191,64,0,0,0,2,253,0,0,0,0,2,240,0,5,80,0,1,160,0,15,240,0,0,0,0,31,224,0,6,169,0,31,208,0,191,255,224,63,192,7,255,255,253,255,64,15,254,91,255,253,0,63,224,0,191,224,0,127,192,0,63,192,0,191,64,0,31,208,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,224,0,127,128,0,47,208,0,63,192,0,63,192,0,31,244,1,255,128,0,11,255,255,255,0,0,2,255,255,248,0,0,0,111,255,144,0,0,0,1,80,0,0,0, + // 0x1ee0 Ỡ + 224,30,28,34,238,29,2,255,0,0,100,0,40,0,0,0,3,255,128,184,0,0,0,15,255,251,244,0,0,0,31,71,255,240,0,0,0,46,0,127,128,0,0,0,0,0,0,0,1,84,0,0,0,0,0,3,253,0,1,191,254,64,3,252,0,31,255,255,248,3,252,0,255,255,255,255,11,244,3,255,229,91,255,239,240,11,254,0,0,127,255,192,15,248,0,0,15,253,0,47,240,0,0,11,252,0,63,208,0,0,3,253,0,127,192,0,0,2,254,0,191,128,0,0,1,255,0,191,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,191,64,0,0,0,255,0,191,128,0,0,1,255,0,127,192,0,0,2,254,0,63,192,0,0,3,253,0,63,224,0,0,7,252,0,31,244,0,0,15,248,0,15,253,0,0,63,240,0,3,255,144,2,255,208,0,0,255,255,255,255,64,0,0,47,255,255,252,0,0,0,6,255,255,144,0,0,0,0,5,80,0,0,0, + // 0x1ee1 ỡ + 225,30,22,28,168,23,2,255,0,41,0,25,0,0,1,255,208,62,0,0,3,255,254,252,0,0,11,210,255,248,0,0,15,64,47,224,5,80,0,0,0,0,15,240,0,0,0,0,31,224,0,6,169,0,31,208,0,191,255,224,63,192,7,255,255,253,255,64,15,254,91,255,253,0,63,224,0,191,224,0,127,192,0,63,192,0,191,64,0,31,208,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,224,0,127,128,0,47,208,0,63,192,0,63,192,0,31,244,1,255,128,0,11,255,255,255,0,0,2,255,255,248,0,0,0,111,255,144,0,0,0,1,80,0,0,0, + // 0x1ee2 Ợ + 226,30,28,35,245,29,2,249,0,0,0,0,0,1,84,0,0,0,0,0,3,253,0,1,191,254,64,3,252,0,31,255,255,248,3,252,0,255,255,255,255,11,244,3,255,229,91,255,239,240,11,254,0,0,127,255,192,15,248,0,0,15,253,0,47,240,0,0,11,252,0,63,208,0,0,3,253,0,127,192,0,0,2,254,0,191,128,0,0,1,255,0,191,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,255,64,0,0,0,255,0,191,64,0,0,0,255,0,191,128,0,0,1,255,0,127,192,0,0,2,254,0,63,192,0,0,3,253,0,63,224,0,0,7,252,0,31,244,0,0,15,248,0,15,253,0,0,63,240,0,3,255,144,2,255,208,0,0,255,255,255,255,64,0,0,47,255,255,252,0,0,0,6,255,255,144,0,0,0,0,5,80,0,0,0,0,0,0,0,0,0,0,0,0,2,128,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,2,128,0,0,0, + // 0x1ee3 ợ + 227,30,22,30,180,23,2,249,0,0,0,0,5,80,0,0,0,0,15,240,0,0,0,0,31,224,0,6,169,0,31,208,0,191,255,224,63,192,7,255,255,253,255,64,15,254,91,255,253,0,63,224,0,191,224,0,127,192,0,63,192,0,191,64,0,31,208,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,224,0,127,128,0,47,208,0,63,192,0,63,192,0,31,244,1,255,128,0,11,255,255,255,0,0,2,255,255,248,0,0,0,111,255,144,0,0,0,1,80,0,0,0,0,0,0,0,0,0,0,0,160,0,0,0,0,3,252,0,0,0,0,3,252,0,0,0,0,3,252,0,0,0,0,0,160,0,0,0, + // 0x1ee4 Ụ + 228,30,21,33,198,27,3,249,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,255,0,63,224,0,3,253,0,15,253,0,47,248,0,7,255,255,255,240,0,1,255,255,255,128,0,0,47,255,249,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,41,0,0,0,0,0,255,0,0,0,0,0,255,64,0,0,0,0,255,0,0,0,0,0,41,0,0,0, + // 0x1ee5 ụ + 229,30,17,27,135,23,3,249,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,31,128,0,21,0,0,0,0,0,0,0,0,0,6,128,0,0,0,15,224,0,0,0,31,240,0,0,0,15,224,0,0,0,6,128,0,0, + // 0x1ee6 Ủ + 230,30,21,37,222,27,3,255,0,0,169,0,0,0,0,2,255,208,0,0,0,2,175,240,0,0,0,0,3,244,0,0,0,0,3,240,0,0,0,0,27,240,0,0,0,0,63,128,0,0,0,0,61,0,0,0,0,0,60,0,0,0,0,0,0,0,0,0,170,0,0,0,106,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,127,64,255,0,0,0,191,64,191,64,0,0,191,0,127,128,0,0,255,0,63,192,0,1,255,0,63,224,0,3,253,0,15,253,0,47,248,0,7,255,255,255,240,0,1,255,255,255,128,0,0,47,255,249,0,0,0,0,21,0,0,0, + // 0x1ee7 ủ + 231,30,17,31,155,23,3,255,0,26,144,0,0,0,47,253,0,0,0,42,255,0,0,0,0,63,0,0,0,0,63,0,0,0,1,254,0,0,0,7,248,0,0,0,3,208,0,0,0,2,128,0,0,0,0,0,0,0,85,0,0,21,64,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,63,128,254,0,0,127,128,254,0,0,127,128,255,0,0,255,128,255,64,1,255,128,191,192,7,255,128,127,255,255,255,128,47,255,255,47,128,7,255,248,31,128,0,21,0,0,0, + // 0x1ee8 Ứ + 232,30,27,35,245,29,3,255,0,0,1,170,0,0,0,0,0,3,253,0,0,0,0,0,15,244,0,0,0,0,0,47,208,0,0,0,0,0,63,64,0,0,0,0,0,253,0,0,0,0,0,0,0,0,0,1,84,0,0,0,0,0,3,252,170,0,0,0,106,67,252,255,0,0,0,127,71,248,255,0,0,0,127,75,240,255,0,0,0,127,175,208,255,0,0,0,127,255,128,255,0,0,0,127,249,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,191,64,0,191,64,0,0,191,0,0,127,128,0,0,255,0,0,63,192,0,1,255,0,0,63,224,0,3,253,0,0,15,253,0,47,252,0,0,7,255,255,255,240,0,0,1,255,255,255,192,0,0,0,31,255,253,0,0,0,0,0,21,0,0,0,0, + // 0x1ee9 ứ + 233,30,24,29,174,25,3,255,0,0,26,160,0,0,0,0,63,208,0,0,0,0,255,64,0,0,0,1,253,0,0,0,0,3,244,0,0,0,0,15,208,0,1,84,0,0,0,0,2,253,0,0,0,0,3,252,84,0,0,21,67,252,254,0,0,63,135,244,254,0,0,63,239,240,254,0,0,63,255,192,254,0,0,63,253,0,254,0,0,63,192,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,127,128,0,254,0,0,127,128,0,255,0,0,255,128,0,255,64,1,255,128,0,191,192,7,255,128,0,63,255,255,255,128,0,31,255,255,47,128,0,7,255,248,31,128,0,0,21,0,0,0,0, + // 0x1eea Ừ + 234,30,27,35,245,29,3,255,0,42,144,0,0,0,0,0,31,240,0,0,0,0,0,11,248,0,0,0,0,0,2,253,0,0,0,0,0,0,127,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,0,1,84,0,0,0,0,0,3,252,170,0,0,0,106,67,252,255,0,0,0,127,71,248,255,0,0,0,127,75,240,255,0,0,0,127,175,208,255,0,0,0,127,255,128,255,0,0,0,127,249,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,191,64,0,191,64,0,0,191,0,0,127,128,0,0,255,0,0,63,192,0,1,255,0,0,63,224,0,3,253,0,0,15,253,0,47,252,0,0,7,255,255,255,240,0,0,1,255,255,255,192,0,0,0,31,255,253,0,0,0,0,0,21,0,0,0,0, + // 0x1eeb ừ + 235,30,24,29,174,25,3,255,2,169,0,0,0,0,1,255,0,0,0,0,0,191,128,0,0,0,0,47,208,0,0,0,0,7,240,0,0,0,0,1,252,0,1,84,0,0,0,0,2,253,0,0,0,0,3,252,84,0,0,21,67,252,254,0,0,63,135,244,254,0,0,63,239,240,254,0,0,63,255,192,254,0,0,63,253,0,254,0,0,63,192,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,127,128,0,254,0,0,127,128,0,255,0,0,255,128,0,255,64,1,255,128,0,191,192,7,255,128,0,63,255,255,255,128,0,31,255,255,47,128,0,7,255,248,31,128,0,0,21,0,0,0,0, + // 0x1eec Ử + 236,30,27,37,3,29,3,255,0,0,169,0,0,0,0,0,1,255,224,0,0,0,0,1,175,240,0,0,0,0,0,2,244,0,0,0,0,0,2,244,0,0,0,0,0,27,240,0,0,0,0,0,63,128,0,0,0,0,0,62,0,0,0,0,0,0,45,0,0,1,84,0,0,0,0,0,3,252,170,0,0,0,106,67,252,255,0,0,0,127,71,248,255,0,0,0,127,75,240,255,0,0,0,127,175,208,255,0,0,0,127,255,128,255,0,0,0,127,249,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,191,64,0,191,64,0,0,191,0,0,127,128,0,0,255,0,0,63,192,0,1,255,0,0,63,224,0,3,253,0,0,15,253,0,47,252,0,0,7,255,255,255,240,0,0,1,255,255,255,192,0,0,0,31,255,253,0,0,0,0,0,21,0,0,0,0, + // 0x1eed ử + 237,30,24,31,186,25,3,255,0,26,144,0,0,0,0,47,253,0,0,0,0,26,255,0,0,0,0,0,47,64,0,0,0,0,63,0,0,0,0,1,255,0,0,0,0,3,248,0,0,0,0,3,208,0,1,84,0,2,128,0,2,253,0,0,0,0,3,252,84,0,0,21,67,252,254,0,0,63,135,244,254,0,0,63,239,240,254,0,0,63,255,192,254,0,0,63,253,0,254,0,0,63,192,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,127,128,0,254,0,0,127,128,0,255,0,0,255,128,0,255,64,1,255,128,0,191,192,7,255,128,0,63,255,255,255,128,0,31,255,255,47,128,0,7,255,248,31,128,0,0,21,0,0,0,0, + // 0x1eee Ữ + 238,30,27,34,238,29,3,255,0,6,128,2,128,0,0,0,63,248,7,192,0,0,0,255,255,239,128,0,0,0,248,127,255,0,0,0,1,240,7,252,0,0,0,0,0,0,0,0,1,84,0,0,0,0,0,3,252,170,0,0,0,106,67,252,255,0,0,0,127,71,248,255,0,0,0,127,75,240,255,0,0,0,127,175,208,255,0,0,0,127,255,128,255,0,0,0,127,249,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,191,64,0,191,64,0,0,191,0,0,127,128,0,0,255,0,0,63,192,0,1,255,0,0,63,224,0,3,253,0,0,15,253,0,47,252,0,0,7,255,255,255,240,0,0,1,255,255,255,192,0,0,0,31,255,253,0,0,0,0,0,21,0,0,0,0, + // 0x1eef ữ + 239,30,24,28,168,25,3,255,0,104,0,40,0,0,3,255,128,124,0,0,11,255,254,248,0,0,15,135,255,240,0,0,31,0,127,192,1,84,0,0,0,0,2,253,0,0,0,0,3,252,84,0,0,21,67,252,254,0,0,63,135,244,254,0,0,63,239,240,254,0,0,63,255,192,254,0,0,63,253,0,254,0,0,63,192,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,127,128,0,254,0,0,127,128,0,255,0,0,255,128,0,255,64,1,255,128,0,191,192,7,255,128,0,63,255,255,255,128,0,31,255,255,47,128,0,7,255,248,31,128,0,0,21,0,0,0,0, + // 0x1ef0 Ự + 240,30,27,35,245,29,3,249,0,0,0,0,0,1,84,0,0,0,0,0,3,252,170,0,0,0,106,67,252,255,0,0,0,127,71,248,255,0,0,0,127,75,240,255,0,0,0,127,175,208,255,0,0,0,127,255,128,255,0,0,0,127,249,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,127,64,0,255,0,0,0,191,64,0,191,64,0,0,191,0,0,127,128,0,0,255,0,0,63,192,0,1,255,0,0,63,224,0,3,253,0,0,15,253,0,47,252,0,0,7,255,255,255,240,0,0,1,255,255,255,192,0,0,0,31,255,253,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,0,41,0,0,0,0,0,0,191,64,0,0,0,0,0,255,64,0,0,0,0,0,191,64,0,0,0,0,0,41,0,0,0,0, + // 0x1ef1 ự + 241,30,24,30,180,25,3,249,0,0,0,0,1,84,0,0,0,0,2,253,0,0,0,0,3,252,84,0,0,21,67,252,254,0,0,63,135,244,254,0,0,63,239,240,254,0,0,63,255,192,254,0,0,63,253,0,254,0,0,63,192,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,63,128,0,254,0,0,127,128,0,254,0,0,127,128,0,255,0,0,255,128,0,255,64,1,255,128,0,191,192,7,255,128,0,63,255,255,255,128,0,31,255,255,47,128,0,7,255,248,31,128,0,0,21,0,0,0,0,0,0,0,0,0,0,0,6,128,0,0,0,0,15,224,0,0,0,0,31,240,0,0,0,0,15,224,0,0,0,0,6,128,0,0,0, + // 0x1ef2 Ỳ + 242,30,21,34,204,21,0,0,0,26,160,0,0,0,0,15,244,0,0,0,0,3,252,0,0,0,0,0,254,0,0,0,0,0,63,64,0,0,0,0,15,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,64,0,0,106,128,127,192,0,0,255,64,63,208,0,1,255,0,31,240,0,3,252,0,11,244,0,7,248,0,3,252,0,15,240,0,2,253,0,31,224,0,0,255,0,63,192,0,0,191,128,127,128,0,0,63,192,255,0,0,0,47,226,253,0,0,0,15,243,252,0,0,0,7,255,244,0,0,0,3,255,240,0,0,0,1,255,208,0,0,0,0,255,128,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0, + // 0x1ef3 ỳ + 243,30,19,37,185,19,0,247,0,106,128,0,0,0,63,208,0,0,0,15,240,0,0,0,3,248,0,0,0,0,253,0,0,0,0,63,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,1,84,191,64,0,7,248,63,192,0,15,240,63,192,0,15,240,31,224,0,31,208,15,240,0,63,192,11,244,0,63,128,3,248,0,191,64,3,252,0,255,0,1,253,0,254,0,0,255,2,252,0,0,191,3,252,0,0,63,71,244,0,0,63,203,240,0,0,31,207,224,0,0,15,223,208,0,0,11,255,192,0,0,3,255,128,0,0,3,255,0,0,0,1,255,0,0,0,1,253,0,0,0,3,252,0,0,0,3,248,0,0,0,11,244,0,0,0,47,240,0,0,38,255,192,0,0,127,255,64,0,0,127,253,0,0,0,42,144,0,0,0, + // 0x1ef4 Ỵ + 244,30,21,33,198,21,0,249,170,64,0,0,106,128,127,192,0,0,255,64,63,208,0,1,255,0,31,240,0,3,252,0,11,244,0,7,248,0,3,252,0,15,240,0,2,253,0,31,224,0,0,255,0,63,192,0,0,191,128,127,128,0,0,63,192,255,0,0,0,47,226,253,0,0,0,15,243,252,0,0,0,7,255,244,0,0,0,3,255,240,0,0,0,1,255,208,0,0,0,0,255,128,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,0,0,191,64,0,0,0,0,191,128,0,0,0,0,191,64,0,0,0,0,25,0,0,0, + // 0x1ef5 ỵ + 245,30,19,29,145,19,0,247,85,0,0,1,84,191,64,0,7,248,63,192,0,15,240,63,192,0,15,240,31,224,0,31,208,15,240,0,63,192,11,244,0,63,128,3,248,0,191,64,3,252,0,255,0,1,253,0,254,0,0,255,2,252,0,0,191,3,252,0,0,63,71,244,0,0,63,203,240,0,0,31,207,224,0,0,15,223,208,0,0,11,255,192,0,0,3,255,128,0,0,3,255,0,0,0,1,255,0,0,0,1,253,0,0,0,3,252,0,0,0,3,248,25,0,0,11,244,127,128,0,47,240,191,128,38,255,192,127,128,127,255,64,25,0,127,253,0,0,0,42,144,0,0,0, + // 0x1ef6 Ỷ + 246,30,21,36,216,21,0,0,0,0,105,0,0,0,0,1,255,224,0,0,0,1,175,244,0,0,0,0,2,248,0,0,0,0,2,244,0,0,0,0,27,240,0,0,0,0,63,192,0,0,0,0,62,0,0,0,0,0,45,0,0,0,0,0,0,0,0,0,170,64,0,0,106,128,127,192,0,0,255,64,63,208,0,1,255,0,31,240,0,3,252,0,11,244,0,7,248,0,3,252,0,15,240,0,2,253,0,31,224,0,0,255,0,63,192,0,0,191,128,127,128,0,0,63,192,255,0,0,0,47,226,253,0,0,0,15,243,252,0,0,0,7,255,244,0,0,0,3,255,240,0,0,0,1,255,208,0,0,0,0,255,128,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0, + // 0x1ef7 ỷ + 247,30,19,39,195,19,0,247,0,2,164,0,0,0,7,255,128,0,0,6,191,208,0,0,0,11,208,0,0,0,11,208,0,0,0,111,192,0,0,0,254,0,0,0,0,248,0,0,0,0,164,0,0,0,0,0,0,0,85,0,0,1,84,191,64,0,7,248,63,192,0,15,240,63,192,0,15,240,31,224,0,31,208,15,240,0,63,192,11,244,0,63,128,3,248,0,191,64,3,252,0,255,0,1,253,0,254,0,0,255,2,252,0,0,191,3,252,0,0,63,71,244,0,0,63,203,240,0,0,31,207,224,0,0,15,223,208,0,0,11,255,192,0,0,3,255,128,0,0,3,255,0,0,0,1,255,0,0,0,1,253,0,0,0,3,252,0,0,0,3,248,0,0,0,11,244,0,0,0,47,240,0,0,38,255,192,0,0,127,255,64,0,0,127,253,0,0,0,42,144,0,0,0, + // 0x1ef8 Ỹ + 248,30,21,33,198,21,0,0,0,6,144,2,128,0,0,63,252,7,192,0,0,191,255,239,192,0,0,248,127,255,0,0,0,240,7,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,64,0,0,106,128,127,192,0,0,255,64,63,208,0,1,255,0,31,240,0,3,252,0,11,244,0,7,248,0,3,252,0,15,240,0,2,253,0,31,224,0,0,255,0,63,192,0,0,191,128,127,128,0,0,63,192,255,0,0,0,47,226,253,0,0,0,15,243,252,0,0,0,7,255,244,0,0,0,3,255,240,0,0,0,1,255,208,0,0,0,0,255,128,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0, + // 0x1ef9 ỹ + 249,30,19,36,180,19,0,247,0,26,64,10,0,0,255,240,31,0,2,255,255,190,0,3,225,255,252,0,3,192,31,244,0,0,0,0,0,0,0,0,0,0,0,85,0,0,1,84,191,64,0,7,248,63,192,0,15,240,63,192,0,15,240,31,224,0,31,208,15,240,0,63,192,11,244,0,63,128,3,248,0,191,64,3,252,0,255,0,1,253,0,254,0,0,255,2,252,0,0,191,3,252,0,0,63,71,244,0,0,63,203,240,0,0,31,207,224,0,0,15,223,208,0,0,11,255,192,0,0,3,255,128,0,0,3,255,0,0,0,1,255,0,0,0,1,253,0,0,0,3,252,0,0,0,3,248,0,0,0,11,244,0,0,0,47,240,0,0,38,255,192,0,0,127,255,64,0,0,127,253,0,0,0,42,144,0,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_27.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_27.cpp new file mode 100644 index 000000000000..f94284c75848 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_27.cpp @@ -0,0 +1,416 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium 37pt, capital 'A' height: 27px, width: 100%, range: 0x0020-0x00ff +extern const uint8_t NotoSans_Medium_27[25343] = { + 130,27,32,0,255,0,35,247, // unifont_t + // 0x0020 " " + 0,0,0,10,0,0, + // 0x0021 ! + 6,28,56,10,2,255,21,64,63,208,63,208,63,208,63,192,63,192,63,192,63,192,63,192,63,192,47,192,47,192,47,192,47,192,47,128,31,128,31,128,31,128,31,128,0,0,0,0,0,0,26,64,63,208,127,224,127,208,63,192,5,0, + // 0x0022 " + 12,11,33,16,2,16,21,0,84,191,65,253,127,1,252,127,1,252,127,1,252,63,0,252,63,0,252,63,0,252,62,0,252,62,0,248,0,0,0, + // 0x0023 # + 22,27,162,24,1,0,0,0,84,0,84,0,0,0,252,1,248,0,0,1,248,1,248,0,0,2,248,2,244,0,0,2,244,3,240,0,0,3,240,3,240,0,0,3,240,3,224,0,0,7,240,7,224,0,42,175,250,175,250,160,63,255,255,255,255,240,63,255,255,255,255,240,0,15,192,31,192,0,0,15,192,31,128,0,0,31,128,47,64,0,0,47,64,63,0,0,0,63,0,63,0,0,85,127,85,191,85,64,255,255,255,255,255,128,255,255,255,255,255,128,85,254,85,253,85,64,0,252,0,252,0,0,0,252,0,252,0,0,0,252,1,248,0,0,1,248,2,244,0,0,1,244,3,244,0,0,2,244,3,240,0,0,3,240,3,240,0,0, + // 0x0024 $ + 17,31,155,21,2,253,0,2,240,0,0,0,2,240,0,0,0,2,240,0,0,0,111,255,164,0,7,255,255,255,64,47,255,255,255,0,127,251,246,191,0,191,130,240,5,0,255,2,240,0,0,255,2,240,0,0,255,66,240,0,0,127,210,240,0,0,63,255,240,0,0,15,255,249,0,0,2,255,255,208,0,0,31,255,252,0,0,2,255,255,0,0,2,242,255,192,0,2,240,63,192,0,2,240,47,192,0,2,240,47,192,64,2,240,63,192,254,66,246,255,128,255,255,255,255,0,255,255,255,248,0,27,255,255,128,0,0,6,240,0,0,0,2,240,0,0,0,2,240,0,0,0,2,240,0,0,0,0,0,0,0, + // 0x0025 % + 29,28,224,32,1,255,0,170,64,0,0,85,0,0,7,255,224,0,0,252,0,0,15,255,248,0,2,248,0,0,47,193,252,0,3,240,0,0,63,64,254,0,15,224,0,0,63,0,126,0,31,192,0,0,127,0,127,0,63,64,0,0,127,0,63,0,127,0,0,0,127,0,63,0,253,0,0,0,127,0,63,2,252,0,0,0,127,0,127,3,240,0,0,0,63,0,127,11,224,191,224,0,63,64,254,15,195,255,252,0,31,193,252,47,135,250,254,0,15,255,248,127,15,224,127,0,3,255,240,253,15,192,63,64,0,110,65,252,31,192,47,128,0,0,3,244,31,192,31,192,0,0,11,240,47,128,31,192,0,0,15,192,47,128,31,192,0,0,47,128,31,192,31,192,0,0,63,0,31,192,47,128,0,0,190,0,15,192,63,128,0,1,252,0,15,208,63,0,0,3,244,0,7,249,255,0,0,7,240,0,3,255,252,0,0,15,208,0,0,191,244,0,0,0,0,0,0,5,0,0, + // 0x0026 & + 25,28,196,27,2,255,0,6,250,64,0,0,0,0,127,255,240,0,0,0,2,255,255,252,0,0,0,3,254,91,254,0,0,0,11,248,1,255,0,0,0,11,240,0,255,0,0,0,11,240,0,255,0,0,0,11,240,0,255,0,0,0,7,248,2,253,0,0,0,3,253,11,252,0,0,0,0,255,191,240,0,0,0,0,127,255,128,0,0,0,0,63,253,0,0,0,0,2,255,253,0,0,169,0,11,255,255,64,2,253,0,47,248,191,208,3,252,0,127,208,47,244,3,252,0,255,128,11,253,11,244,0,255,0,2,255,79,240,0,255,0,0,191,255,208,0,255,0,0,47,255,128,0,255,64,0,11,255,0,0,255,192,0,31,255,128,0,127,244,1,255,255,224,0,47,255,255,255,175,248,0,11,255,255,253,7,254,0,1,191,255,208,1,255,128,0,1,80,0,0,0,0, + // 0x0027 ' + 5,11,22,9,2,16,21,0,191,64,127,0,127,0,127,0,63,0,63,0,63,0,62,0,62,0,0,0, + // 0x0028 ( + 9,33,99,12,1,250,0,5,64,0,63,192,0,127,0,0,254,0,2,252,0,3,248,0,11,240,0,15,240,0,31,208,0,47,192,0,63,192,0,63,128,0,63,128,0,127,64,0,127,64,0,127,64,0,191,0,0,127,0,0,127,64,0,127,64,0,127,64,0,63,128,0,63,192,0,47,192,0,31,208,0,15,224,0,15,240,0,7,244,0,3,252,0,1,253,0,0,255,0,0,63,64,0,31,192, + // 0x0029 ) + 9,33,99,12,1,250,85,0,0,127,64,0,47,192,0,15,224,0,11,240,0,3,248,0,2,252,0,1,253,0,0,255,0,0,191,0,0,127,64,0,63,128,0,63,128,0,63,192,0,63,192,0,63,192,0,47,192,0,47,192,0,63,192,0,63,192,0,63,192,0,63,128,0,127,64,0,191,64,0,255,0,0,254,0,1,253,0,3,252,0,7,244,0,15,240,0,31,208,0,63,128,0,127,0,0, + // 0x002a * + 18,17,85,20,1,11,0,3,252,0,0,0,2,252,0,0,0,2,252,0,0,0,1,248,0,0,0,1,248,0,0,57,1,244,6,208,127,249,249,255,224,127,255,255,255,224,111,255,255,255,160,0,7,254,0,0,0,15,255,64,0,0,63,159,192,0,0,191,15,224,0,1,254,7,248,0,3,253,3,252,0,1,252,2,244,0,0,20,0,64,0, + // 0x002b + + 18,18,90,21,2,4,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,170,171,250,170,128,255,255,255,255,208,255,255,255,255,208,85,87,245,85,64,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0, + // 0x002c , + 7,10,20,10,1,251,1,80,15,244,15,240,15,224,31,208,47,192,63,128,63,0,127,0,125,0, + // 0x002d - + 10,4,12,12,1,8,106,170,144,191,255,224,191,255,224,127,255,208, + // 0x002e . + 6,6,12,10,2,255,26,64,63,208,127,224,127,208,63,192,5,0, + // 0x002f / + 14,27,108,14,0,0,0,0,5,80,0,0,15,224,0,0,47,192,0,0,63,192,0,0,127,64,0,0,191,0,0,0,254,0,0,1,253,0,0,3,252,0,0,3,248,0,0,11,240,0,0,15,240,0,0,31,208,0,0,47,192,0,0,63,128,0,0,127,64,0,0,255,0,0,0,254,0,0,2,252,0,0,3,252,0,0,7,244,0,0,11,240,0,0,15,224,0,0,31,208,0,0,47,192,0,0,63,128,0,0,127,0,0,0, + // 0x0030 0 + 19,28,140,21,1,255,0,6,250,64,0,0,127,255,240,0,1,255,255,253,0,3,255,171,255,0,11,252,0,191,128,15,240,0,63,192,31,224,0,31,208,47,192,0,15,240,63,192,0,15,240,63,192,0,11,240,63,128,0,11,244,127,128,0,11,244,127,128,0,7,244,127,128,0,7,244,127,128,0,7,244,127,128,0,11,244,63,128,0,11,244,63,192,0,11,244,63,192,0,15,240,63,192,0,15,240,31,208,0,31,224,15,224,0,47,208,15,244,0,63,192,7,253,1,255,128,2,255,255,255,0,0,191,255,252,0,0,31,255,224,0,0,0,84,0,0, + // 0x0031 1 + 11,27,81,21,3,0,0,1,84,0,11,252,0,63,252,1,255,252,7,255,252,47,247,252,255,195,252,127,3,252,24,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252, + // 0x0032 2 + 19,27,135,21,1,0,0,6,186,64,0,0,255,255,244,0,11,255,255,254,0,63,255,171,255,64,31,208,0,255,192,11,0,0,63,192,0,0,0,47,208,0,0,0,47,208,0,0,0,47,208,0,0,0,63,192,0,0,0,63,192,0,0,0,191,64,0,0,1,255,0,0,0,3,252,0,0,0,15,244,0,0,0,63,224,0,0,0,255,128,0,0,3,254,0,0,0,15,248,0,0,0,63,224,0,0,0,255,128,0,0,3,254,0,0,0,15,244,0,0,0,63,245,85,85,80,127,255,255,255,244,127,255,255,255,244,127,255,255,255,244, + // 0x0033 3 + 18,28,140,21,1,255,0,26,186,64,0,2,255,255,248,0,47,255,255,254,0,63,254,171,255,128,15,128,0,191,192,4,0,0,63,208,0,0,0,47,208,0,0,0,47,208,0,0,0,47,192,0,0,0,63,192,0,0,0,255,64,0,21,91,253,0,0,127,255,224,0,0,127,255,144,0,0,127,255,254,0,0,0,6,255,192,0,0,0,63,224,0,0,0,31,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,31,240,0,0,0,63,224,126,64,1,255,192,127,255,255,255,64,127,255,255,253,0,27,255,255,208,0,0,5,80,0,0, + // 0x0034 4 + 21,27,162,21,0,0,0,0,0,42,64,0,0,0,0,255,192,0,0,0,2,255,192,0,0,0,3,255,192,0,0,0,15,255,192,0,0,0,47,191,192,0,0,0,127,63,192,0,0,0,254,63,192,0,0,2,252,63,192,0,0,7,240,63,192,0,0,15,208,63,192,0,0,47,192,63,192,0,0,127,0,63,192,0,0,253,0,63,192,0,3,248,0,63,192,0,11,240,0,63,192,0,15,208,0,63,192,0,63,192,0,63,192,0,127,255,255,255,255,64,127,255,255,255,255,64,127,255,255,255,255,64,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0, + // 0x0035 5 + 17,28,140,21,2,255,5,85,85,84,0,31,255,255,253,0,31,255,255,253,0,31,255,255,253,0,47,192,0,0,0,47,192,0,0,0,47,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,128,0,0,0,63,133,80,0,0,63,255,255,128,0,63,255,255,248,0,63,255,255,254,0,4,0,7,255,0,0,0,0,255,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,127,128,64,0,0,255,64,249,0,11,255,0,255,255,255,252,0,255,255,255,224,0,31,255,254,64,0,0,21,64,0,0, + // 0x0036 6 + 18,28,140,21,2,255,0,0,106,169,0,0,11,255,254,0,0,127,255,254,0,2,255,249,89,0,7,254,0,0,0,15,244,0,0,0,47,224,0,0,0,63,192,0,0,0,127,128,0,0,0,191,0,0,0,0,191,1,170,64,0,255,31,255,244,0,254,127,255,254,0,255,254,91,255,64,255,224,0,191,192,255,128,0,63,192,255,0,0,47,208,255,0,0,31,224,255,0,0,31,224,255,0,0,31,208,191,64,0,47,208,127,128,0,63,192,63,208,0,127,192,31,248,2,255,64,11,255,255,254,0,2,255,255,248,0,0,47,255,208,0,0,0,84,0,0, + // 0x0037 7 + 19,27,135,21,1,0,21,85,85,85,80,191,255,255,255,248,191,255,255,255,248,191,255,255,255,244,0,0,0,15,240,0,0,0,31,224,0,0,0,63,192,0,0,0,127,128,0,0,0,191,64,0,0,0,255,0,0,0,2,253,0,0,0,3,252,0,0,0,11,244,0,0,0,15,240,0,0,0,31,224,0,0,0,63,192,0,0,0,127,128,0,0,0,255,64,0,0,1,255,0,0,0,3,253,0,0,0,3,252,0,0,0,11,244,0,0,0,15,240,0,0,0,47,224,0,0,0,63,192,0,0,0,191,128,0,0,0,255,64,0,0, + // 0x0038 8 + 19,28,140,21,1,255,0,6,186,64,0,0,191,255,248,0,3,255,255,255,0,11,254,86,255,192,15,240,0,63,208,31,224,0,31,224,31,208,0,15,224,31,208,0,31,224,15,224,0,47,208,15,244,0,127,192,3,254,2,255,0,1,255,239,252,0,0,63,255,224,0,0,47,255,208,0,1,255,255,252,0,7,254,7,255,64,15,244,0,191,208,47,208,0,31,240,63,192,0,11,240,63,128,0,7,244,127,64,0,7,244,63,128,0,11,244,63,192,0,15,240,47,244,0,127,224,15,255,171,255,192,3,255,255,254,0,0,127,255,228,0,0,0,84,0,0, + // 0x0039 9 + 19,28,140,21,1,255,0,6,169,0,0,0,191,255,224,0,2,255,255,252,0,11,255,171,255,0,31,244,0,255,128,47,208,0,63,208,63,192,0,31,224,63,128,0,15,240,127,128,0,11,240,127,128,0,11,244,63,128,0,11,244,63,192,0,15,244,63,208,0,47,244,31,244,0,255,244,15,255,255,251,244,3,255,255,219,240,0,127,254,11,240,0,1,64,15,240,0,0,0,15,224,0,0,0,31,208,0,0,0,63,192,0,0,0,191,128,0,0,2,255,0,0,0,31,253,0,7,255,255,244,0,7,255,255,192,0,7,255,249,0,0,0,85,0,0,0, + // 0x003a : + 6,22,44,10,2,255,5,0,63,192,127,208,127,224,63,208,31,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,64,63,208,127,224,127,208,63,192,5,0, + // 0x003b ; + 7,26,52,10,1,251,1,64,15,240,31,244,47,244,31,244,7,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,80,15,240,31,240,31,224,47,192,63,192,63,64,127,0,190,0,188,0, + // 0x003c < + 18,19,95,21,2,4,0,0,0,0,64,0,0,0,7,208,0,0,0,127,208,0,0,7,255,192,0,0,127,253,0,0,7,255,208,0,0,127,253,0,0,7,255,208,0,0,127,249,0,0,0,255,128,0,0,0,255,208,0,0,0,127,254,0,0,0,7,255,228,0,0,0,47,255,64,0,0,2,255,248,0,0,0,31,255,192,0,0,1,255,208,0,0,0,11,208,0,0,0,0,144, + // 0x003d = + 17,11,55,21,2,7,255,255,255,255,192,255,255,255,255,192,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,192,255,255,255,255,192,255,255,255,255,192,0,0,0,0,0, + // 0x003e > + 18,19,95,21,2,4,64,0,0,0,0,244,0,0,0,0,255,64,0,0,0,255,244,0,0,0,31,255,64,0,0,1,255,244,0,0,0,31,255,64,0,0,1,191,244,0,0,0,11,255,64,0,0,0,191,208,0,0,1,191,208,0,0,31,255,128,0,2,255,244,0,0,127,254,64,0,11,255,224,0,0,191,253,0,0,0,255,208,0,0,0,249,0,0,0,0,128,0,0,0,0, + // 0x003f ? + 16,28,112,17,0,255,0,106,164,0,31,255,255,128,127,255,255,240,63,250,191,252,45,0,7,252,0,0,1,253,0,0,0,254,0,0,0,254,0,0,1,253,0,0,3,252,0,0,15,244,0,0,63,224,0,1,255,128,0,7,253,0,0,15,244,0,0,31,208,0,0,47,128,0,0,63,64,0,0,63,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,64,0,0,127,192,0,0,191,208,0,0,191,208,0,0,63,192,0,0,5,0,0, + // 0x0040 @ + 29,31,248,33,2,252,0,0,0,21,80,0,0,0,0,0,27,255,255,144,0,0,0,1,255,255,255,253,0,0,0,11,255,149,91,255,128,0,0,63,224,0,0,127,224,0,0,255,64,0,0,7,248,0,3,252,0,0,0,1,253,0,11,240,0,5,64,0,191,0,15,208,1,255,255,128,63,64,47,128,15,255,255,208,47,128,63,0,63,229,111,192,15,192,63,0,191,64,15,192,15,192,126,0,253,0,15,192,15,192,189,1,252,0,15,192,15,192,252,2,248,0,15,192,15,192,252,2,248,0,31,192,15,192,252,2,248,0,31,192,15,192,252,2,248,0,47,192,31,128,253,1,252,0,63,192,47,64,189,0,254,0,191,208,127,0,190,0,191,235,247,250,253,0,63,0,47,255,209,255,244,0,63,64,6,254,0,127,128,0,31,192,0,0,0,0,0,0,15,240,0,0,0,0,0,0,3,252,0,0,0,0,0,0,1,255,128,0,1,180,0,0,0,127,254,170,191,244,0,0,0,11,255,255,255,240,0,0,0,0,111,255,254,64,0,0,0,0,0,0,0,0,0,0, + // 0x0041 A + 24,27,162,24,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x0042 B + 20,27,135,24,3,0,21,85,84,0,0,127,255,255,248,0,127,255,255,255,64,127,255,255,255,208,127,128,1,191,240,127,128,0,31,244,127,128,0,15,244,127,128,0,11,244,127,128,0,11,244,127,128,0,15,240,127,128,0,47,224,127,149,86,255,128,127,255,255,253,0,127,255,255,249,0,127,255,255,255,192,127,128,0,127,240,127,128,0,15,248,127,128,0,3,252,127,128,0,3,252,127,128,0,3,253,127,128,0,3,252,127,128,0,11,252,127,128,0,31,248,127,149,86,255,240,127,255,255,255,208,127,255,255,255,0,127,255,255,228,0, + // 0x0043 C + 20,28,140,23,2,255,0,0,26,234,64,0,7,255,255,253,0,47,255,255,255,0,255,255,175,253,3,255,208,0,108,11,254,0,0,0,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,127,192,0,0,0,127,192,0,0,0,191,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,128,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,208,0,0,0,47,240,0,0,0,15,248,0,0,0,11,254,0,0,0,3,255,228,1,188,0,255,255,255,252,0,47,255,255,252,0,2,255,255,244,0,0,5,84,0, + // 0x0044 D + 22,27,162,27,3,0,21,85,84,0,0,0,127,255,255,244,0,0,127,255,255,255,64,0,127,255,255,255,224,0,127,128,1,191,252,0,127,128,0,11,254,0,127,128,0,2,255,64,127,128,0,0,255,192,127,128,0,0,127,192,127,128,0,0,63,208,127,128,0,0,47,224,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,47,224,127,128,0,0,63,208,127,128,0,0,63,192,127,128,0,0,191,192,127,128,0,1,255,64,127,128,0,7,255,0,127,128,0,47,252,0,127,149,91,255,244,0,127,255,255,255,192,0,127,255,255,253,0,0,127,255,254,64,0,0, + // 0x0045 E + 16,27,108,21,3,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x0046 F + 16,27,108,20,3,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0, + // 0x0047 G + 22,28,168,27,2,255,0,0,6,190,148,0,0,2,255,255,255,144,0,31,255,255,255,224,0,191,255,235,255,192,2,255,224,0,7,128,7,255,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,64,0,0,0,0,255,64,0,127,255,240,191,64,0,127,255,240,191,64,0,127,255,240,191,128,0,0,15,240,127,192,0,0,15,240,63,192,0,0,15,240,63,208,0,0,15,240,47,240,0,0,15,240,15,252,0,0,15,240,7,255,0,0,15,240,2,255,228,0,95,240,0,191,255,255,255,240,0,31,255,255,255,240,0,1,255,255,254,64,0,0,1,85,0,0, + // 0x0048 H + 21,27,162,28,3,0,21,0,0,0,21,64,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,149,85,85,127,192,127,255,255,255,255,192,127,255,255,255,255,192,127,255,255,255,255,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192, + // 0x0049 I + 11,27,81,13,1,0,85,85,84,191,255,248,191,255,248,11,255,128,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,2,254,0,47,255,228,191,255,248,191,255,248, + // 0x004a J + 11,35,105,11,253,248,0,5,80,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,15,240,0,31,240,81,191,224,255,255,192,255,255,0,191,248,0,0,0,0, + // 0x004b K + 20,27,135,23,3,0,21,0,0,1,85,127,128,0,7,253,127,128,0,15,244,127,128,0,63,224,127,128,0,255,128,127,128,2,255,0,127,128,11,252,0,127,128,31,240,0,127,128,127,192,0,127,128,255,64,0,127,131,253,0,0,127,143,248,0,0,127,175,244,0,0,127,255,252,0,0,127,255,254,0,0,127,245,255,64,0,127,192,191,192,0,127,128,63,224,0,127,128,31,244,0,127,128,11,252,0,127,128,3,255,0,127,128,0,255,128,127,128,0,127,192,127,128,0,47,240,127,128,0,15,248,127,128,0,7,253,127,128,0,2,255, + // 0x004c L + 16,27,108,20,3,0,21,0,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,85,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x004d M + 28,27,189,34,3,0,21,80,0,0,0,5,84,127,248,0,0,0,47,253,127,252,0,0,0,63,253,127,253,0,0,0,127,253,127,254,0,0,0,191,253,127,191,0,0,0,254,253,127,127,64,0,1,253,253,127,63,128,0,3,249,253,127,47,192,0,3,241,253,127,15,208,0,11,241,253,127,15,240,0,15,225,253,127,7,240,0,31,193,253,127,3,244,0,47,193,253,127,3,252,0,63,65,253,127,1,252,0,127,1,253,127,0,254,0,190,1,253,127,0,191,0,253,1,253,127,0,127,65,252,1,253,127,0,63,131,248,1,253,127,0,47,195,240,1,253,127,0,31,219,240,1,253,127,0,15,239,208,1,253,127,0,11,255,192,1,253,127,0,3,255,128,1,253,127,0,3,255,64,1,253,127,0,2,255,0,1,253,127,0,0,254,0,1,253, + // 0x004e N + 22,27,162,29,3,0,21,64,0,0,1,80,127,240,0,0,11,240,127,248,0,0,11,240,127,252,0,0,11,240,127,255,0,0,11,240,127,255,64,0,11,240,127,127,192,0,11,240,127,63,224,0,11,240,127,15,244,0,11,240,127,11,252,0,11,240,127,3,254,0,11,240,127,1,255,0,11,240,127,0,191,192,11,240,127,0,63,208,11,240,127,0,31,240,7,240,127,0,15,248,7,240,127,0,3,253,7,240,127,0,2,255,7,240,127,0,0,255,135,240,127,0,0,127,199,240,127,0,0,47,247,240,127,0,0,15,251,240,127,0,0,7,255,240,127,0,0,3,255,240,127,0,0,0,255,240,127,0,0,0,191,240,127,0,0,0,63,240, + // 0x004f O + 25,28,196,29,2,255,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x0050 P + 18,27,135,23,3,0,21,85,80,0,0,127,255,255,208,0,127,255,255,253,0,127,255,255,255,0,127,128,6,255,192,127,128,0,127,208,127,128,0,47,224,127,128,0,31,224,127,128,0,31,240,127,128,0,31,224,127,128,0,47,224,127,128,0,63,208,127,128,1,255,192,127,149,111,255,64,127,255,255,253,0,127,255,255,240,0,127,255,250,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0, + // 0x0051 Q + 25,34,238,29,2,249,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,240,0,0,0,0,5,111,244,0,0,0,0,0,11,253,0,0,0,0,0,3,255,64,0,0,0,0,0,255,192,0,0,0,0,0,63,240,0,0,0,0,0,31,252,0,0,0,0,0,1,84,0, + // 0x0052 R + 20,27,135,23,3,0,21,85,84,0,0,127,255,255,224,0,127,255,255,253,0,127,255,255,255,64,127,128,6,255,192,127,128,0,127,208,127,128,0,47,224,127,128,0,31,240,127,128,0,31,240,127,128,0,31,224,127,128,0,47,208,127,128,0,127,192,127,128,6,255,64,127,255,255,254,0,127,255,255,244,0,127,255,255,192,0,127,149,127,208,0,127,128,15,240,0,127,128,11,248,0,127,128,3,253,0,127,128,1,255,0,127,128,0,255,128,127,128,0,63,192,127,128,0,47,240,127,128,0,15,244,127,128,0,7,252,127,128,0,3,254, + // 0x0053 S + 17,28,140,20,2,255,0,26,234,64,0,2,255,255,253,0,15,255,255,255,0,63,254,175,254,0,127,208,0,108,0,191,128,0,0,0,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,191,192,0,0,0,63,244,0,0,0,31,255,64,0,0,11,255,244,0,0,1,255,255,128,0,0,31,255,240,0,0,1,191,252,0,0,0,15,255,0,0,0,2,255,64,0,0,0,191,128,0,0,0,127,128,0,0,0,127,128,0,0,0,191,128,128,0,0,255,0,254,64,27,254,0,255,255,255,252,0,255,255,255,240,0,111,255,254,64,0,0,21,64,0,0, + // 0x0054 T + 21,27,162,21,0,0,21,85,85,85,85,0,191,255,255,255,255,64,191,255,255,255,255,64,191,255,255,255,255,64,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0, + // 0x0055 U + 21,28,168,27,3,255,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,254,0,0,0,0,21,64,0,0, + // 0x0056 V + 23,27,162,23,0,0,85,0,0,0,1,84,191,64,0,0,11,244,127,192,0,0,15,240,63,192,0,0,31,224,47,208,0,0,47,208,31,240,0,0,63,192,15,240,0,0,127,128,11,244,0,0,255,64,3,252,0,0,255,0,3,252,0,1,254,0,2,253,0,3,253,0,0,255,0,3,252,0,0,255,0,7,248,0,0,127,128,15,240,0,0,63,192,15,240,0,0,63,192,31,208,0,0,31,224,63,192,0,0,15,240,63,192,0,0,11,240,127,64,0,0,7,248,255,0,0,0,3,252,254,0,0,0,2,253,253,0,0,0,1,255,252,0,0,0,0,255,248,0,0,0,0,191,244,0,0,0,0,63,240,0,0,0,0,63,224,0,0, + // 0x0057 W + 34,27,243,35,0,0,85,0,0,1,84,0,0,5,80,127,128,0,3,254,0,0,15,240,63,192,0,3,255,0,0,15,240,63,192,0,11,255,0,0,31,224,47,208,0,15,255,64,0,47,208,31,224,0,15,255,128,0,63,192,15,240,0,31,239,192,0,63,192,15,240,0,47,207,208,0,127,128,11,244,0,63,143,224,0,191,64,7,248,0,63,75,240,0,255,0,3,252,0,127,7,240,0,255,0,3,252,0,255,3,244,1,254,0,2,253,0,254,3,252,2,253,0,1,254,1,253,2,252,3,252,0,0,255,2,252,1,253,3,252,0,0,255,3,248,0,254,7,248,0,0,191,67,244,0,191,11,244,0,0,127,135,240,0,127,15,240,0,0,63,203,240,0,63,79,240,0,0,47,207,224,0,63,143,224,0,0,31,223,208,0,47,223,192,0,0,15,239,192,0,31,239,192,0,0,15,255,128,0,15,255,128,0,0,11,255,64,0,11,255,64,0,0,7,255,0,0,7,255,0,0,0,3,255,0,0,3,255,0,0,0,3,254,0,0,3,254,0,0, + // 0x0058 X + 22,27,162,23,0,0,21,64,0,0,5,80,47,224,0,0,63,192,15,244,0,0,191,128,7,252,0,0,255,0,3,254,0,3,253,0,0,255,0,7,248,0,0,191,128,15,240,0,0,63,208,47,208,0,0,15,240,127,128,0,0,11,248,255,0,0,0,3,254,253,0,0,0,1,255,252,0,0,0,0,191,240,0,0,0,0,127,240,0,0,0,0,255,244,0,0,0,2,255,252,0,0,0,3,254,254,0,0,0,15,240,255,64,0,0,31,224,127,192,0,0,63,192,47,224,0,0,191,64,15,244,0,1,255,0,7,252,0,3,252,0,3,254,0,11,248,0,0,255,0,31,240,0,0,191,192,63,208,0,0,63,208,191,128,0,0,31,240, + // 0x0059 Y + 21,27,162,22,0,0,85,0,0,0,21,64,191,192,0,0,63,192,63,208,0,0,191,128,31,240,0,1,255,0,15,244,0,3,253,0,7,252,0,7,252,0,3,253,0,15,244,0,1,255,0,31,240,0,0,191,64,63,208,0,0,63,192,127,128,0,0,47,224,255,0,0,0,15,241,254,0,0,0,11,251,252,0,0,0,3,255,248,0,0,0,1,255,240,0,0,0,0,255,208,0,0,0,0,127,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x005a Z + 19,27,135,21,1,0,21,85,85,85,84,127,255,255,255,248,127,255,255,255,248,127,255,255,255,248,0,0,0,47,240,0,0,0,63,192,0,0,0,255,128,0,0,2,255,0,0,0,3,252,0,0,0,15,248,0,0,0,47,240,0,0,0,63,192,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,192,0,0,0,255,64,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,229,85,85,84,191,255,255,255,252,191,255,255,255,252,191,255,255,255,252, + // 0x005b [ + 9,33,99,12,3,250,85,85,0,255,255,64,255,255,64,255,170,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,254,0,0,255,255,64,255,255,64,255,255,0, + // 0x005c "\" + 14,27,108,14,0,0,85,0,0,0,127,64,0,0,63,128,0,0,47,192,0,0,15,208,0,0,15,240,0,0,7,240,0,0,3,248,0,0,2,252,0,0,1,253,0,0,0,254,0,0,0,191,0,0,0,63,64,0,0,63,192,0,0,31,192,0,0,15,224,0,0,11,240,0,0,7,244,0,0,3,248,0,0,2,252,0,0,1,253,0,0,0,255,0,0,0,191,0,0,0,63,128,0,0,63,192,0,0,31,208,0,0,15,224, + // 0x005d ] + 9,33,99,12,1,250,85,85,0,255,255,64,255,255,64,170,191,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,255,255,64,255,255,64,255,255,64, + // 0x005e ^ + 19,18,90,21,1,9,0,0,160,0,0,0,1,248,0,0,0,3,253,0,0,0,7,255,0,0,0,15,255,64,0,0,31,223,192,0,0,47,79,208,0,0,63,7,240,0,0,189,3,244,0,0,252,1,252,0,2,248,0,253,0,3,240,0,127,0,11,224,0,63,64,15,192,0,31,192,31,128,0,15,208,63,64,0,7,240,127,0,0,3,248,20,0,0,0,80, + // 0x005f _ + 16,3,12,16,0,250,170,170,170,170,255,255,255,255,170,170,170,170, + // 0x0060 ` + 8,7,14,11,2,22,85,0,255,128,127,192,31,240,7,248,0,253,0,41, + // 0x0061 a + 18,22,110,21,1,255,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x0062 b + 18,29,145,23,3,255,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,7,255,208,0,255,63,255,252,0,255,255,255,255,0,255,244,2,255,128,255,192,0,127,192,255,128,0,63,208,255,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,64,0,31,224,255,128,0,63,208,255,192,0,127,192,255,244,1,255,128,255,255,255,255,0,253,63,255,252,0,252,11,255,224,0,0,0,20,0,0, + // 0x0063 c + 15,22,88,18,2,255,0,0,84,0,0,47,255,228,2,255,255,248,11,255,255,244,31,253,1,176,63,224,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,192,0,0,63,208,0,0,47,248,0,120,15,255,255,248,2,255,255,248,0,127,255,224,0,1,84,0, + // 0x0064 d + 18,29,145,23,2,255,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,1,64,15,240,0,191,254,15,240,3,255,255,207,240,15,255,255,255,240,47,248,1,255,240,63,208,0,127,240,127,192,0,47,240,191,64,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,191,64,0,15,240,191,128,0,47,240,63,208,0,63,240,47,244,1,255,240,15,255,255,255,240,3,255,255,203,240,0,191,254,7,240,0,1,64,0,0, + // 0x0065 e + 18,22,110,21,2,255,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x0066 f + 15,29,116,13,0,0,0,0,4,0,0,7,255,248,0,31,255,244,0,63,255,240,0,191,192,16,0,255,64,0,0,255,0,0,0,255,0,0,0,255,0,0,7,255,255,128,127,255,255,192,127,255,255,192,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0, + // 0x0067 g + 18,30,150,23,2,247,0,1,64,0,0,0,191,253,7,240,3,255,255,203,240,15,255,255,255,240,47,248,2,255,240,63,208,0,127,240,127,192,0,47,240,191,64,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,191,64,0,15,240,127,128,0,31,240,63,208,0,63,240,47,244,1,255,240,15,255,255,255,240,3,255,255,207,240,0,191,254,15,240,0,1,64,15,240,0,0,0,15,240,0,0,0,31,224,0,0,0,47,208,20,0,0,191,192,47,165,87,255,128,47,255,255,254,0,31,255,255,244,0,1,175,254,64,0, + // 0x0068 h + 18,28,140,23,3,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,4,0,0,255,7,255,224,0,255,63,255,253,0,255,191,255,255,64,255,248,1,255,192,255,208,0,127,192,255,192,0,63,192,255,64,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208, + // 0x0069 i + 4,28,28,10,3,0,20,255,255,255,125,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x006a j + 9,37,111,10,254,247,0,5,0,0,63,192,0,63,192,0,63,192,0,31,64,0,0,0,0,0,0,0,0,0,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,127,192,150,255,128,255,255,0,255,253,0,191,144,0, + // 0x006b k + 17,28,140,21,3,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,255,64,255,0,3,254,0,255,0,15,248,0,255,0,63,224,0,255,0,191,128,0,255,2,255,0,0,255,11,252,0,0,255,31,240,0,0,255,127,192,0,0,255,255,224,0,0,255,255,244,0,0,255,231,252,0,0,255,130,255,0,0,255,0,255,128,0,255,0,63,208,0,255,0,31,240,0,255,0,11,252,0,255,0,3,254,0,255,0,1,255,64,255,0,0,191,192, + // 0x006c l + 4,28,28,10,3,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x006d m + 29,21,168,35,3,0,0,0,16,0,0,4,0,0,253,11,255,224,7,255,244,0,253,63,255,252,47,255,253,0,255,255,255,254,191,255,255,0,255,244,3,255,253,1,255,128,255,192,0,255,240,0,127,192,255,128,0,191,192,0,63,192,255,64,0,127,192,0,63,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192, + // 0x006e n + 18,21,105,23,3,0,0,0,4,0,0,253,7,255,244,0,253,63,255,254,0,255,255,255,255,64,255,248,1,255,192,255,208,0,127,192,255,192,0,63,192,255,64,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208, + // 0x006f o + 19,22,110,23,2,255,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x0070 p + 18,30,150,23,3,247,0,0,20,0,0,253,11,255,224,0,254,63,255,252,0,255,255,255,255,0,255,244,2,255,128,255,192,0,127,192,255,128,0,63,208,255,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,64,0,47,224,255,128,0,63,208,255,208,0,127,192,255,244,2,255,128,255,255,255,255,0,255,63,255,252,0,255,11,255,224,0,255,0,20,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0, + // 0x0071 q + 18,30,150,23,2,247,0,1,64,0,0,0,191,253,7,240,3,255,255,203,240,15,255,255,255,240,47,248,1,255,240,63,208,0,127,240,127,192,0,47,240,191,64,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,191,64,0,15,240,191,128,0,47,240,63,208,0,63,240,47,244,1,255,240,15,255,255,255,240,3,255,255,207,240,0,191,254,15,240,0,1,64,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240, + // 0x0072 r + 12,21,63,16,3,0,0,0,20,252,7,255,253,31,255,254,127,255,255,255,85,255,244,0,255,208,0,255,128,0,255,64,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, + // 0x0073 s + 15,22,88,18,2,255,0,5,64,0,2,255,255,64,47,255,255,240,127,255,255,208,255,64,6,192,254,0,0,0,255,0,0,0,255,128,0,0,191,244,0,0,63,255,128,0,11,255,252,0,0,191,255,128,0,7,255,208,0,0,127,240,0,0,15,240,0,0,11,244,0,0,11,240,228,0,31,240,255,234,255,208,255,255,255,128,111,255,248,0,0,85,0,0, + // 0x0074 t + 14,26,104,14,0,255,0,20,0,0,0,125,0,0,0,189,0,0,0,253,0,0,1,253,0,0,11,255,255,192,127,255,255,192,127,255,255,192,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,1,254,0,0,1,255,64,0,0,255,255,208,0,127,255,208,0,31,255,192,0,0,84,0, + // 0x0075 u + 17,21,105,23,3,255,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,0,0, + // 0x0076 v + 20,20,100,19,0,0,255,64,0,3,253,127,128,0,3,252,63,192,0,11,248,47,208,0,15,240,31,224,0,31,240,15,240,0,47,208,11,244,0,63,192,3,252,0,127,128,3,252,0,191,64,1,253,0,255,0,0,255,1,253,0,0,191,3,252,0,0,127,131,248,0,0,63,199,244,0,0,47,203,240,0,0,15,223,224,0,0,15,255,192,0,0,7,255,192,0,0,3,255,64,0,0,2,255,0,0, + // 0x0077 w + 30,20,160,30,0,0,127,128,0,127,192,0,47,208,63,192,0,191,224,0,63,192,63,192,0,255,240,0,63,192,47,208,0,255,240,0,127,64,31,224,2,251,244,0,191,0,15,240,3,246,248,0,255,0,15,240,3,241,252,0,254,0,11,244,7,240,253,1,253,0,7,248,11,224,254,2,252,0,3,252,15,208,191,3,252,0,2,252,31,192,127,7,248,0,1,253,47,192,63,75,240,0,0,254,63,128,63,139,240,0,0,255,63,0,31,207,224,0,0,191,127,0,15,223,208,0,0,127,190,0,15,239,192,0,0,63,253,0,11,255,192,0,0,63,252,0,7,255,128,0,0,31,248,0,3,255,64,0,0,15,244,0,2,255,0,0, + // 0x0078 x + 18,20,100,20,1,0,255,128,0,31,240,63,208,0,63,192,31,240,0,255,128,15,248,1,255,0,3,253,3,252,0,1,255,15,244,0,0,191,159,240,0,0,63,255,192,0,0,31,255,64,0,0,11,254,0,0,0,15,255,0,0,0,47,255,128,0,0,127,255,208,0,0,255,79,240,0,2,254,11,248,0,7,252,3,253,0,15,244,0,255,0,47,224,0,191,192,127,192,0,63,224,255,64,0,15,240, + // 0x0079 y + 20,29,145,20,0,247,191,64,0,3,253,127,192,0,3,252,63,192,0,11,248,47,224,0,15,240,15,240,0,31,240,15,240,0,47,208,7,248,0,63,192,3,252,0,127,128,2,253,0,191,64,0,254,0,255,0,0,255,1,254,0,0,127,66,252,0,0,63,195,252,0,0,47,199,244,0,0,15,219,240,0,0,15,239,224,0,0,7,255,208,0,0,3,255,192,0,0,2,255,128,0,0,0,255,0,0,0,0,255,0,0,0,2,253,0,0,0,3,252,0,0,0,7,248,0,0,0,31,240,0,0,21,191,224,0,0,127,255,128,0,0,127,254,0,0,0,47,224,0,0,0, + // 0x007a z + 16,20,80,18,1,0,63,255,255,252,63,255,255,252,63,255,255,252,0,0,15,244,0,0,31,240,0,0,63,192,0,0,255,64,0,2,254,0,0,7,252,0,0,15,240,0,0,47,208,0,0,127,192,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,208,0,0,191,255,255,253,191,255,255,253,191,255,255,253, + // 0x007b { + 12,33,99,14,1,250,0,0,5,0,2,255,0,31,255,0,63,254,0,127,208,0,191,64,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,255,0,7,254,0,255,248,0,255,128,0,255,244,0,91,253,0,1,255,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,127,128,0,63,245,0,47,255,0,11,255,0,0,111, + // 0x007c | + 4,37,37,20,8,247,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126, + // 0x007d } + 13,33,132,14,1,250,80,0,0,0,191,144,0,0,191,244,0,0,191,252,0,0,3,254,0,0,0,254,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,0,0,0,127,208,0,0,31,255,64,0,1,255,64,0,11,255,64,0,63,245,0,0,191,128,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,254,0,0,1,254,0,0,27,253,0,0,191,252,0,0,191,224,0,0,185,0,0,0, + // 0x007e ~ + 18,6,30,21,2,10,6,164,0,0,0,127,255,144,0,208,255,255,254,175,208,249,111,255,255,192,192,0,191,255,64,0,0,5,164,0, + // 0x007f - 0x009a Control Characters + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x00a0 "�" + 0,0,0,10,0,0, + // 0x00a1 ¡ + 6,27,54,10,2,249,47,128,127,208,127,224,127,208,47,128,0,0,0,0,0,0,31,64,31,128,31,128,47,128,47,128,47,128,47,192,47,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,208,42,128, + // 0x00a2 ¢ + 15,28,112,21,3,255,0,1,240,0,0,2,240,0,0,2,240,0,0,7,254,144,0,191,255,252,7,255,255,248,15,255,150,244,47,244,0,16,63,208,0,0,127,192,0,0,191,64,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,0,191,64,0,0,127,192,0,0,63,208,0,0,47,244,0,20,15,255,170,252,7,255,255,252,0,255,255,248,0,7,254,64,0,2,240,0,0,2,240,0,0,2,240,0,0,0,80,0, + // 0x00a3 £ + 19,27,135,21,1,0,0,0,106,164,0,0,7,255,255,224,0,31,255,255,240,0,63,250,175,208,0,191,128,1,128,0,255,0,0,0,0,255,0,0,0,0,254,0,0,0,0,254,0,0,0,0,254,0,0,0,0,254,0,0,0,0,254,0,0,0,107,255,170,168,0,191,255,255,252,0,191,255,255,252,0,1,255,0,0,0,0,254,0,0,0,0,254,0,0,0,0,254,0,0,0,0,254,0,0,0,1,254,0,0,0,3,252,0,0,0,11,244,0,0,0,127,229,85,85,84,191,255,255,255,252,191,255,255,255,252,191,255,255,255,252, + // 0x00a4 ¤ + 17,17,85,21,2,4,44,0,64,15,0,191,111,254,127,128,63,255,255,255,0,15,254,175,252,0,11,240,2,252,0,15,192,0,253,0,31,64,0,126,0,47,64,0,63,0,47,64,0,63,0,31,128,0,126,0,15,192,0,253,0,11,240,3,252,0,15,255,191,252,0,63,255,255,255,0,191,31,253,63,128,44,0,0,14,0,0,0,0,0,0, + // 0x00a5 ¥ + 19,27,135,21,1,0,85,0,0,0,84,255,0,0,3,252,191,64,0,7,248,63,192,0,15,240,47,208,0,31,224,15,240,0,63,192,11,244,0,127,128,3,252,0,255,0,1,253,1,253,0,0,255,3,252,0,0,127,71,244,0,0,63,207,240,0,0,31,239,208,0,0,15,255,192,0,6,175,255,234,64,11,255,255,255,128,11,255,255,255,128,0,1,253,0,0,0,1,253,0,0,0,1,254,0,0,11,255,255,255,128,11,255,255,255,128,5,86,254,85,64,0,1,253,0,0,0,1,253,0,0,0,1,253,0,0,0,1,253,0,0, + // 0x00a6 ¦ + 4,37,37,20,8,247,126,126,126,126,126,126,126,126,126,126,126,126,126,126,0,0,0,0,0,0,0,0,41,126,126,126,126,126,126,126,126,126,126,126,126,126,126, + // 0x00a7 § + 15,30,120,19,2,255,0,1,64,0,2,255,255,128,15,255,255,240,63,233,175,224,127,64,0,128,127,0,0,0,127,64,0,0,63,208,0,0,31,254,0,0,7,255,224,0,11,255,254,0,47,214,255,192,63,0,47,240,126,0,7,240,190,0,3,244,127,0,3,244,63,192,3,240,47,248,11,240,11,255,255,192,0,191,255,0,0,11,255,192,0,0,127,240,0,0,11,240,0,0,3,244,0,0,3,244,224,0,15,240,255,170,191,224,255,255,255,128,47,255,248,0,0,0,0,0, + // 0x00a8 ¨ + 12,4,12,22,5,23,127,0,252,191,66,253,127,1,252,41,0,164, + // 0x00a9 © + 27,28,196,31,2,255,0,0,22,186,64,0,0,0,2,255,255,253,0,0,0,31,249,85,191,192,0,0,191,64,0,7,244,0,2,244,0,0,0,253,0,7,208,0,89,0,47,0,15,64,11,255,244,15,192,46,0,63,255,240,3,208,60,0,255,0,96,2,240,188,2,252,0,0,0,244,244,3,240,0,0,0,248,240,3,240,0,0,0,188,240,7,224,0,0,0,124,240,7,224,0,0,0,124,240,7,224,0,0,0,124,240,7,224,0,0,0,124,244,3,240,0,0,0,184,184,3,244,0,0,0,244,124,1,252,0,0,0,240,61,0,255,149,176,2,240,47,0,63,255,240,7,208,15,192,7,255,208,15,192,3,240,0,0,0,63,0,1,253,0,0,1,252,0,0,127,144,0,31,240,0,0,11,255,239,255,128,0,0,0,191,255,244,0,0,0,0,0,84,0,0,0, + // 0x00aa ª + 11,14,42,14,1,13,1,170,0,63,255,224,47,155,244,0,1,248,0,0,248,1,171,248,47,255,248,127,64,248,252,0,248,252,1,248,253,11,248,127,255,184,31,244,56,0,0,0, + // 0x00ab « + 17,17,85,20,1,1,0,5,0,5,0,0,15,192,31,192,0,63,192,63,192,0,255,64,255,0,2,253,3,253,0,11,248,11,248,0,31,240,31,224,0,63,192,127,192,0,127,192,191,128,0,47,224,47,224,0,11,244,15,244,0,3,253,3,252,0,0,255,0,255,0,0,127,192,127,128,0,31,208,47,192,0,10,0,10,0,0,0,0,0,0, + // 0x00ac ¬ + 18,11,55,21,2,4,170,170,170,170,128,255,255,255,255,208,255,255,255,255,208,85,85,85,95,208,0,0,0,11,208,0,0,0,11,208,0,0,0,11,208,0,0,0,11,208,0,0,0,11,208,0,0,0,11,208,0,0,0,1,64, + // 0x00ad ­ + 10,4,12,12,1,8,106,170,144,191,255,224,191,255,224,127,255,208, + // 0x00ae ® + 27,28,196,31,2,255,0,0,22,186,64,0,0,0,2,255,255,253,0,0,0,31,249,85,191,192,0,0,191,64,0,7,244,0,2,244,0,0,0,253,0,7,208,21,80,0,47,0,15,64,191,255,128,15,192,46,0,191,255,240,3,208,60,0,188,7,248,2,240,188,0,188,0,252,0,244,244,0,188,0,252,0,248,240,0,188,0,252,0,188,240,0,188,3,244,0,124,240,0,191,255,224,0,124,240,0,191,255,64,0,124,240,0,190,175,64,0,124,244,0,188,15,192,0,184,184,0,188,7,224,0,244,124,0,188,3,244,0,240,61,0,188,1,252,2,240,47,0,188,0,189,7,208,15,192,188,0,63,15,192,3,240,0,0,0,63,0,1,253,0,0,1,252,0,0,127,144,0,31,240,0,0,11,255,239,255,128,0,0,0,191,255,244,0,0,0,0,0,84,0,0,0, + // 0x00af ¯ + 19,3,15,19,0,28,255,255,255,255,248,255,255,255,255,248,255,255,255,255,248, + // 0x00b0 ° + 12,12,36,16,2,15,1,170,64,15,255,224,63,255,252,190,0,253,252,0,63,248,0,63,248,0,63,252,0,63,190,0,189,63,235,252,31,255,240,1,254,64, + // 0x00b1 ± + 18,23,115,21,2,0,0,1,80,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,1,80,0,0,0,0,0,0,0,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208, + // 0x00b2 ² + 11,17,51,13,1,15,1,101,0,31,255,192,191,255,240,125,7,244,16,2,248,0,2,248,0,3,244,0,7,240,0,15,192,0,63,64,0,253,0,7,244,0,31,208,0,127,64,0,255,255,248,255,255,248,170,170,164, + // 0x00b3 ³ + 11,17,51,13,1,15,1,101,0,47,255,192,255,255,240,120,3,244,0,2,248,0,2,244,0,3,240,10,191,192,15,255,64,6,175,240,0,2,248,0,0,252,0,0,252,128,2,252,254,175,244,255,255,224,27,254,0, + // 0x00b4 ´ + 9,7,21,11,1,22,0,85,64,1,255,64,3,253,0,11,248,0,31,208,0,63,64,0,104,0,0, + // 0x00b5 µ + 18,29,145,23,3,247,255,0,0,31,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,63,208,255,64,0,127,208,255,128,0,255,208,255,224,7,255,208,255,255,255,239,208,255,255,255,143,208,255,63,253,15,208,255,1,64,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0, + // 0x00b6 ¶ + 19,33,165,24,2,251,0,127,255,255,248,7,255,255,255,248,31,255,255,213,248,63,255,255,128,248,127,255,255,128,248,191,255,255,128,248,255,255,255,128,248,255,255,255,128,248,255,255,255,128,248,255,255,255,128,248,255,255,255,128,248,255,255,255,128,248,191,255,255,128,248,127,255,255,128,248,63,255,255,128,248,31,255,255,128,248,11,255,255,128,248,1,191,255,128,248,0,0,15,128,248,0,0,15,128,248,0,0,15,128,248,0,0,15,128,248,0,0,15,128,248,0,0,15,128,248,0,0,15,128,248,0,0,15,128,248,0,0,15,128,248,0,0,15,128,248,0,0,15,128,248,0,0,15,128,248,0,0,15,128,248,0,0,15,128,248,0,0,10,64,164, + // 0x00b7 · + 6,6,12,10,2,10,26,64,63,208,127,224,127,208,63,192,5,0, + // 0x00b8 ¸ + 8,9,18,8,0,247,7,192,15,192,31,244,6,253,0,190,0,126,86,253,255,248,191,144, + // 0x00b9 ¹ + 9,16,48,13,1,15,0,191,64,3,255,64,31,255,64,127,111,64,44,47,64,0,47,64,0,63,64,0,63,64,0,63,64,0,63,64,0,63,64,0,63,64,0,63,64,0,63,64,0,63,64,0,26,0, + // 0x00ba º + 12,14,42,14,1,13,0,170,0,11,255,224,47,235,248,126,0,189,188,0,62,252,0,63,252,0,63,252,0,63,188,0,62,125,0,125,63,150,252,15,255,240,2,255,128,0,0,0, + // 0x00bb » + 18,17,85,20,1,1,5,0,5,0,0,63,64,63,0,0,63,192,63,192,0,15,240,31,240,0,7,252,7,248,0,2,254,2,253,0,0,191,64,255,64,0,63,208,63,192,0,47,208,63,208,0,191,128,191,128,1,255,1,254,0,3,252,7,252,0,15,240,15,240,0,63,208,63,192,0,127,128,127,64,0,10,0,10,0,0,0,0,0,0,0, + // 0x00bc ¼ + 27,27,189,28,1,0,0,21,0,0,0,84,0,1,255,0,0,3,244,0,11,255,0,0,7,240,0,63,255,0,0,15,192,0,191,63,0,0,47,128,0,56,63,0,0,63,0,0,0,63,0,0,253,0,0,0,63,0,1,252,0,0,0,63,0,3,240,0,0,0,63,0,11,224,0,0,0,63,0,15,192,0,0,0,63,0,63,64,47,192,0,63,0,127,0,127,192,0,63,0,252,0,255,192,0,63,2,248,2,255,192,0,63,3,240,7,223,192,0,21,15,208,15,159,192,0,0,31,192,47,31,192,0,0,63,64,124,31,192,0,0,190,0,248,31,192,0,0,252,2,240,31,192,0,2,244,7,255,255,252,0,7,240,7,255,255,252,0,15,208,6,170,191,232,0,47,128,0,0,31,192,0,63,0,0,0,31,192,0,190,0,0,0,31,192, + // 0x00bd ½ + 27,27,189,30,1,0,0,21,0,0,1,80,0,1,254,0,0,11,224,0,11,254,0,0,15,192,0,127,254,0,0,63,64,0,254,126,0,0,127,0,0,116,126,0,0,252,0,0,0,126,0,2,248,0,0,0,126,0,3,240,0,0,0,126,0,15,208,0,0,0,126,0,31,192,0,0,0,126,0,63,0,0,0,0,126,0,190,7,255,128,0,126,0,252,63,255,240,0,126,3,244,63,155,248,0,126,7,240,24,1,252,0,126,15,208,0,0,252,0,21,47,128,0,1,252,0,0,63,0,0,2,244,0,0,189,0,0,7,240,0,1,252,0,0,31,192,0,3,244,0,0,127,0,0,11,224,0,1,252,0,0,15,192,0,7,240,0,0,47,128,0,31,192,0,0,127,0,0,127,234,168,0,253,0,0,191,255,252,1,248,0,0,191,255,252, + // 0x00be ¾ + 29,27,216,30,1,0,6,169,0,0,0,21,0,0,127,255,208,0,0,127,0,0,255,175,240,0,0,253,0,0,52,3,248,0,2,248,0,0,0,1,248,0,3,240,0,0,0,2,244,0,11,224,0,0,0,7,240,0,31,192,0,0,11,255,192,0,63,64,0,0,11,255,128,0,190,0,0,0,5,91,244,0,252,0,0,0,0,1,252,2,248,0,0,0,0,0,252,7,240,7,240,0,0,0,252,15,208,15,240,0,208,2,252,31,192,63,240,0,255,191,244,63,0,191,240,0,255,255,208,190,0,247,240,0,22,169,1,252,3,227,240,0,0,0,3,244,11,195,240,0,0,0,7,240,31,67,240,0,0,0,15,192,62,3,240,0,0,0,47,128,188,3,240,0,0,0,63,0,255,255,255,0,0,0,253,1,255,255,255,64,0,1,252,0,170,171,250,0,0,3,244,0,0,3,240,0,0,11,224,0,0,3,240,0,0,15,192,0,0,3,240,0, + // 0x00bf ¿ + 15,28,112,17,1,248,0,3,244,0,0,15,252,0,0,15,252,0,0,15,252,0,0,3,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,244,0,0,3,244,0,0,3,244,0,0,11,240,0,0,31,224,0,0,191,192,0,2,255,0,0,15,252,0,0,47,240,0,0,127,192,0,0,255,0,0,0,255,0,0,0,254,0,0,0,255,0,0,0,255,64,0,96,127,229,91,244,63,255,255,252,11,255,255,244,1,191,254,64,0,0,0,0, + // 0x00c0 À + 24,35,210,24,0,0,0,1,84,0,0,0,0,3,255,0,0,0,0,0,255,64,0,0,0,0,63,192,0,0,0,0,15,240,0,0,0,0,3,248,0,0,0,0,0,168,0,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x00c1 Á + 24,35,210,24,0,0,0,0,0,5,80,0,0,0,0,63,240,0,0,0,0,127,192,0,0,0,0,255,0,0,0,0,3,252,0,0,0,0,11,224,0,0,0,0,10,64,0,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x00c2  + 24,35,210,24,0,0,0,0,5,80,0,0,0,0,47,248,0,0,0,0,127,253,0,0,0,1,254,191,64,0,0,3,248,47,192,0,0,15,208,7,240,0,0,26,0,0,164,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x00c3 à + 24,34,204,24,0,0,0,0,80,0,20,0,0,3,255,64,124,0,0,15,255,245,248,0,0,31,175,255,240,0,0,46,1,255,208,0,0,40,0,25,0,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x00c4 Ä + 24,33,198,24,0,0,0,3,240,15,192,0,0,7,244,31,224,0,0,7,244,15,208,0,0,1,160,6,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x00c5 Å + 24,33,198,24,0,0,0,0,1,64,0,0,0,0,47,248,0,0,0,0,190,190,0,0,0,0,244,31,0,0,0,0,240,15,0,0,0,0,244,31,0,0,0,0,191,255,0,0,0,0,63,252,0,0,0,0,63,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x00c6 Æ + 31,27,216,33,0,0,0,0,0,85,85,85,85,84,0,0,0,255,255,255,255,252,0,0,2,255,255,255,255,252,0,0,3,255,255,255,255,252,0,0,11,244,127,192,0,0,0,0,15,240,63,192,0,0,0,0,31,208,63,192,0,0,0,0,63,192,63,192,0,0,0,0,127,128,63,192,0,0,0,0,255,0,63,192,0,0,0,1,254,0,63,192,0,0,0,3,252,0,63,213,85,80,0,7,248,0,63,255,255,244,0,11,244,0,63,255,255,244,0,15,240,0,63,255,255,244,0,47,208,0,127,192,0,0,0,63,255,255,255,192,0,0,0,191,255,255,255,192,0,0,0,255,255,255,255,192,0,0,2,254,85,85,191,192,0,0,3,252,0,0,63,192,0,0,7,248,0,0,63,192,0,0,15,240,0,0,63,192,0,0,31,224,0,0,63,213,85,84,63,192,0,0,63,255,255,252,127,192,0,0,63,255,255,252,255,64,0,0,63,255,255,252, + // 0x00c7 Ç + 20,36,180,23,2,247,0,0,26,234,64,0,7,255,255,253,0,47,255,255,255,0,255,255,175,253,3,255,208,0,108,11,254,0,0,0,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,127,192,0,0,0,127,192,0,0,0,191,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,128,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,208,0,0,0,47,240,0,0,0,15,248,0,0,0,11,254,0,0,0,3,255,228,1,188,0,255,255,255,252,0,47,255,255,252,0,2,255,255,244,0,0,11,212,0,0,0,15,128,0,0,0,31,244,0,0,0,6,252,0,0,0,0,190,0,0,0,0,190,0,0,0,150,253,0,0,0,255,248,0,0,0,191,144,0, + // 0x00c8 È + 16,35,140,21,3,0,1,84,0,0,2,255,0,0,0,255,128,0,0,63,208,0,0,15,240,0,0,2,248,0,0,0,104,0,0,0,0,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x00c9 É + 16,35,140,21,3,0,0,0,5,80,0,0,47,240,0,0,127,192,0,0,255,0,0,2,252,0,0,7,240,0,0,10,128,0,0,0,0,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x00ca Ê + 16,35,140,21,3,0,0,5,80,0,0,31,252,0,0,127,254,0,0,255,191,128,3,252,31,208,15,224,7,244,26,64,0,168,0,0,0,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x00cb Ë + 16,33,132,21,3,0,3,244,15,208,3,248,15,224,3,248,15,224,1,160,6,128,0,0,0,0,0,0,0,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x00cc Ì + 11,35,105,13,1,0,85,64,0,127,192,0,47,240,0,11,248,0,2,253,0,0,127,0,0,26,64,0,0,0,85,85,84,191,255,248,191,255,248,11,255,128,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,2,254,0,47,255,228,191,255,248,191,255,248, + // 0x00cd Í + 12,35,105,13,1,0,0,1,85,0,7,253,0,15,244,0,47,208,0,127,64,0,253,0,1,160,0,0,0,0,85,85,84,191,255,248,191,255,248,11,255,128,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,2,254,0,47,255,228,191,255,248,191,255,248, + // 0x00ce Î + 13,35,140,13,0,0,0,21,64,0,0,255,192,0,3,255,240,0,11,251,252,0,47,192,254,0,191,0,63,128,164,0,6,128,0,0,0,0,21,85,85,0,47,255,254,0,47,255,254,0,2,255,224,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,191,128,0,11,255,249,0,47,255,254,0,47,255,254,0, + // 0x00cf Ï + 11,33,99,13,1,0,190,1,248,255,3,252,255,2,252,40,0,160,0,0,0,0,0,0,85,85,84,191,255,248,191,255,248,11,255,128,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,2,254,0,47,255,228,191,255,248,191,255,248, + // 0x00d0 Ð + 24,27,162,27,1,0,1,85,85,64,0,0,7,255,255,255,64,0,7,255,255,255,244,0,7,255,255,255,254,0,7,248,0,27,255,192,7,248,0,0,191,224,7,248,0,0,47,244,7,248,0,0,15,252,7,248,0,0,7,252,7,248,0,0,3,253,7,248,0,0,2,254,7,248,0,0,1,255,191,255,255,64,1,255,255,255,255,128,1,255,255,255,255,128,1,255,171,254,170,64,1,255,7,248,0,0,2,254,7,248,0,0,3,253,7,248,0,0,3,252,7,248,0,0,11,252,7,248,0,0,31,244,7,248,0,0,127,240,7,248,0,2,255,192,7,253,85,191,255,64,7,255,255,255,252,0,7,255,255,255,208,0,7,255,255,228,0,0, + // 0x00d1 Ñ + 22,34,204,29,3,0,0,0,80,0,80,0,0,11,253,0,240,0,0,47,255,215,240,0,0,63,175,255,208,0,0,124,2,255,128,0,0,100,0,25,0,0,0,0,0,0,0,0,21,64,0,0,1,80,127,240,0,0,11,240,127,248,0,0,11,240,127,252,0,0,11,240,127,255,0,0,11,240,127,255,64,0,11,240,127,127,192,0,11,240,127,63,224,0,11,240,127,15,244,0,11,240,127,11,252,0,11,240,127,3,254,0,11,240,127,1,255,0,11,240,127,0,191,192,11,240,127,0,63,208,11,240,127,0,31,240,7,240,127,0,15,248,7,240,127,0,3,253,7,240,127,0,2,255,7,240,127,0,0,255,135,240,127,0,0,127,199,240,127,0,0,47,247,240,127,0,0,15,251,240,127,0,0,7,255,240,127,0,0,3,255,240,127,0,0,0,255,240,127,0,0,0,191,240,127,0,0,0,63,240, + // 0x00d2 Ò + 25,36,252,29,2,255,0,1,85,0,0,0,0,0,1,255,0,0,0,0,0,0,191,192,0,0,0,0,0,47,224,0,0,0,0,0,11,244,0,0,0,0,0,1,252,0,0,0,0,0,0,105,0,0,0,0,0,0,0,0,0,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x00d3 Ó + 25,36,252,29,2,255,0,0,0,5,84,0,0,0,0,0,31,244,0,0,0,0,0,63,208,0,0,0,0,0,191,64,0,0,0,0,1,253,0,0,0,0,0,3,244,0,0,0,0,0,6,128,0,0,0,0,0,0,0,0,0,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x00d4 Ô + 25,36,252,29,2,255,0,0,5,80,0,0,0,0,0,15,252,0,0,0,0,0,63,255,0,0,0,0,0,255,191,192,0,0,0,2,252,31,224,0,0,0,11,240,3,248,0,0,0,10,64,0,104,0,0,0,0,0,0,0,0,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x00d5 Õ + 25,35,245,29,2,255,0,0,20,0,20,0,0,0,2,255,128,61,0,0,0,7,255,249,188,0,0,0,15,235,255,248,0,0,0,31,0,191,240,0,0,0,9,0,6,64,0,0,0,0,0,0,0,0,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x00d6 Ö + 25,34,238,29,2,255,0,2,248,7,224,0,0,0,3,252,15,240,0,0,0,3,252,11,240,0,0,0,0,160,2,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x00d7 × + 16,17,68,21,3,4,116,0,0,52,253,0,0,253,255,64,3,252,63,208,15,240,15,244,63,192,3,253,255,0,0,255,252,0,0,63,240,0,0,63,244,0,0,255,253,0,3,253,255,64,15,240,63,208,63,192,15,240,255,0,3,252,252,0,0,252,48,0,0,48,0,0,0,0, + // 0x00d8 Ø + 25,30,210,29,2,254,0,0,0,0,0,64,0,0,0,107,250,64,244,0,0,11,255,255,251,252,0,0,127,255,255,255,240,0,1,255,254,175,255,224,0,3,255,128,0,191,240,0,15,252,0,0,191,252,0,31,244,0,0,255,253,0,63,224,0,3,250,255,0,63,208,0,11,240,255,0,127,192,0,31,192,255,64,191,128,0,63,128,191,128,191,128,0,191,0,191,128,191,128,1,252,0,127,128,255,64,3,244,0,127,192,191,64,15,224,0,127,192,191,128,47,192,0,127,128,191,128,63,64,0,191,128,127,192,254,0,0,255,64,63,194,252,0,0,255,64,63,215,244,0,1,255,0,47,255,224,0,3,254,0,15,255,192,0,11,252,0,11,255,64,0,47,248,0,3,255,228,2,255,240,0,2,255,255,255,255,192,0,7,255,255,255,254,0,0,15,210,255,255,224,0,0,3,128,1,84,0,0,0,0,0,0,0,0,0,0, + // 0x00d9 Ù + 21,36,216,27,3,255,0,5,80,0,0,0,0,31,244,0,0,0,0,7,252,0,0,0,0,1,254,0,0,0,0,0,127,64,0,0,0,0,31,192,0,0,0,0,2,144,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,254,0,0,0,0,21,64,0,0, + // 0x00da Ú + 21,36,216,27,3,255,0,0,0,85,64,0,0,0,1,255,64,0,0,0,3,254,0,0,0,0,11,248,0,0,0,0,31,224,0,0,0,0,63,64,0,0,0,0,105,0,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,254,0,0,0,0,21,64,0,0, + // 0x00db Û + 21,36,216,27,3,255,0,0,21,64,0,0,0,0,255,208,0,0,0,3,255,240,0,0,0,11,251,252,0,0,0,47,208,255,0,0,0,127,0,47,128,0,0,168,0,6,128,0,0,0,0,0,0,0,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,254,0,0,0,0,21,64,0,0, + // 0x00dc Ü + 21,34,204,27,3,255,0,31,128,126,0,0,0,63,192,191,0,0,0,47,192,191,0,0,0,10,64,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,254,0,0,0,0,21,64,0,0, + // 0x00dd Ý + 21,35,210,22,0,0,0,0,0,85,64,0,0,0,0,255,128,0,0,0,3,254,0,0,0,0,7,248,0,0,0,0,15,224,0,0,0,0,63,128,0,0,0,0,41,0,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,192,0,0,63,192,63,208,0,0,191,128,31,240,0,1,255,0,15,244,0,3,253,0,7,252,0,7,252,0,3,253,0,15,244,0,1,255,0,31,240,0,0,191,64,63,208,0,0,63,192,127,128,0,0,47,224,255,0,0,0,15,241,254,0,0,0,11,251,252,0,0,0,3,255,248,0,0,0,1,255,240,0,0,0,0,255,208,0,0,0,0,127,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x00de Þ + 18,27,135,23,3,0,21,0,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,255,254,64,0,127,255,255,248,0,127,255,255,255,0,127,149,111,255,128,127,128,0,255,192,127,128,0,63,208,127,128,0,47,224,127,128,0,31,240,127,128,0,31,240,127,128,0,31,224,127,128,0,63,208,127,128,0,127,192,127,128,7,255,128,127,255,255,255,0,127,255,255,248,0,127,255,255,144,0,127,149,80,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0, + // 0x00df ß + 20,30,150,24,3,255,0,0,80,0,0,0,191,255,224,0,11,255,255,253,0,47,255,255,255,64,127,224,1,255,192,191,128,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,128,255,0,1,255,0,255,0,11,252,0,255,0,47,240,0,255,0,127,192,0,255,0,191,0,0,255,0,191,64,0,255,0,191,208,0,255,0,63,248,0,255,0,15,255,0,255,0,2,255,208,255,0,0,127,244,255,0,0,15,252,255,0,0,3,253,255,0,0,1,254,255,0,0,1,254,255,0,0,1,254,255,3,64,3,253,255,3,254,191,252,255,3,255,255,240,255,1,255,255,128,0,0,5,80,0, + // 0x00e0 à + 18,30,150,21,1,255,0,85,64,0,0,0,127,208,0,0,0,31,240,0,0,0,7,248,0,0,0,1,253,0,0,0,0,127,0,0,0,0,10,64,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x00e1 á + 18,30,150,21,1,255,0,0,1,85,0,0,0,7,253,0,0,0,15,244,0,0,0,47,224,0,0,0,127,64,0,0,0,253,0,0,0,1,160,0,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x00e2 â + 18,30,150,21,1,255,0,0,85,0,0,0,3,255,64,0,0,15,255,192,0,0,47,239,240,0,0,191,67,252,0,1,252,0,254,0,2,160,0,26,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x00e3 ã + 18,29,145,21,1,255,0,5,0,1,64,0,127,224,15,128,1,255,254,111,0,3,250,255,255,0,3,192,47,252,0,2,128,1,144,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x00e4 ä + 18,28,140,21,1,255,0,126,1,248,0,0,255,2,252,0,0,191,2,252,0,0,40,0,164,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x00e5 å + 18,32,160,21,1,255,0,0,84,0,0,0,7,255,64,0,0,15,239,208,0,0,31,3,224,0,0,46,1,240,0,0,31,2,224,0,0,15,155,208,0,0,7,255,128,0,0,0,100,0,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x00e6 æ + 30,22,176,33,1,255,0,0,16,0,0,20,0,0,0,127,255,208,11,255,208,0,7,255,255,248,127,255,248,0,3,255,255,254,255,239,255,0,2,208,1,255,252,0,255,64,0,0,0,127,240,0,63,192,0,0,0,63,224,0,47,208,0,0,0,63,192,0,31,224,0,0,0,63,192,0,31,224,0,27,255,255,255,255,255,224,2,255,255,255,255,255,255,240,15,255,165,127,255,255,255,224,47,244,0,63,192,0,0,0,63,192,0,63,192,0,0,0,127,192,0,63,208,0,0,0,127,128,0,191,224,0,0,0,63,192,0,255,244,0,0,0,63,224,7,251,254,0,6,192,47,254,191,225,255,255,255,192,15,255,255,128,127,255,255,192,2,255,253,0,11,255,254,0,0,5,64,0,0,21,0,0, + // 0x00e7 ç + 15,30,120,18,2,247,0,0,84,0,0,47,255,228,2,255,255,248,11,255,255,244,31,253,1,176,63,224,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,192,0,0,63,208,0,0,47,248,0,120,15,255,255,248,2,255,255,248,0,127,255,224,0,3,244,0,0,3,224,0,0,11,252,0,0,1,255,0,0,0,63,64,0,0,63,64,0,37,191,0,0,63,253,0,0,63,224,0, + // 0x00e8 è + 18,30,150,21,2,255,0,85,0,0,0,1,255,64,0,0,0,127,192,0,0,0,31,224,0,0,0,7,244,0,0,0,1,252,0,0,0,0,41,0,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x00e9 é + 18,30,150,21,2,255,0,0,5,84,0,0,0,31,244,0,0,0,63,224,0,0,0,191,128,0,0,1,254,0,0,0,3,244,0,0,0,6,144,0,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x00ea ê + 18,30,150,21,2,255,0,1,84,0,0,0,15,253,0,0,0,63,255,0,0,0,191,191,192,0,2,253,15,240,0,7,240,2,248,0,10,128,0,104,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x00eb ë + 18,28,140,21,2,255,1,248,7,224,0,3,252,11,240,0,2,252,11,240,0,0,164,2,144,0,0,0,0,0,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x00ec ì + 8,29,58,10,0,0,85,0,255,128,63,208,15,240,3,248,0,253,0,42,0,0,0,0,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252, + // 0x00ed í + 8,29,58,10,3,0,0,85,3,255,11,252,15,240,63,192,190,0,164,0,0,0,0,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, + // 0x00ee î + 14,29,116,10,254,0,0,21,64,0,0,191,224,0,1,255,244,0,7,250,253,0,15,224,191,0,63,64,31,192,104,0,2,144,0,0,0,0,0,0,0,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0, + // 0x00ef ï + 12,27,81,10,255,0,63,0,252,127,65,253,127,64,253,25,0,104,0,0,0,0,0,0,0,0,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0, + // 0x00f0 ð + 19,29,145,23,2,255,0,30,0,29,0,0,63,208,191,0,0,47,255,254,0,0,7,255,240,0,0,3,255,208,0,0,47,255,240,0,0,255,199,252,0,0,125,1,254,0,0,16,0,191,64,0,0,0,63,192,0,6,165,31,208,0,255,255,223,224,7,255,255,255,240,31,254,91,255,240,63,224,0,127,244,127,192,0,31,248,191,64,0,15,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,244,255,0,0,11,240,191,128,0,15,240,63,192,0,47,224,47,244,0,191,192,15,255,239,255,64,2,255,255,252,0,0,111,255,224,0,0,0,84,0,0, + // 0x00f1 ñ + 18,28,140,23,3,0,0,20,0,5,0,1,255,128,62,0,7,255,249,188,0,15,235,255,252,0,15,0,191,240,0,10,0,6,64,0,0,0,0,0,0,0,0,4,0,0,253,7,255,244,0,253,63,255,254,0,255,255,255,255,64,255,248,1,255,192,255,208,0,127,192,255,192,0,63,192,255,64,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208, + // 0x00f2 ò + 19,30,150,23,2,255,0,85,0,0,0,0,191,192,0,0,0,63,224,0,0,0,15,244,0,0,0,2,252,0,0,0,0,190,0,0,0,0,26,0,0,0,0,0,0,0,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x00f3 ó + 19,30,150,23,2,255,0,0,1,84,0,0,0,11,252,0,0,0,31,240,0,0,0,63,192,0,0,0,191,0,0,0,1,252,0,0,0,1,160,0,0,0,0,0,0,0,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x00f4 ô + 19,30,150,23,2,255,0,1,84,0,0,0,7,255,0,0,0,15,255,128,0,0,63,239,224,0,0,255,7,244,0,3,248,1,253,0,2,144,0,42,0,0,0,0,0,0,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x00f5 õ + 19,29,145,23,2,255,0,5,0,5,0,0,255,208,15,0,2,255,253,127,0,3,251,255,253,0,11,192,63,248,0,6,64,1,64,0,0,0,0,0,0,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x00f6 ö + 19,28,140,23,2,255,0,253,2,244,0,0,254,3,248,0,0,254,3,248,0,0,104,1,160,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x00f7 ÷ + 18,18,90,21,2,4,0,1,144,0,0,0,7,244,0,0,0,11,248,0,0,0,11,248,0,0,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,170,128,255,255,255,255,208,255,255,255,255,208,85,85,85,85,64,0,0,0,0,0,0,0,0,0,0,0,3,240,0,0,0,11,248,0,0,0,11,248,0,0,0,7,244,0,0,0,1,144,0,0, + // 0x00f8 ø + 19,23,115,23,2,254,0,0,16,3,0,0,47,255,219,208,2,255,255,255,192,11,255,255,255,64,31,248,1,255,192,63,208,1,255,208,127,192,3,255,240,191,64,15,239,240,255,0,47,203,244,255,0,127,11,248,255,0,253,7,248,255,2,252,7,248,255,7,240,7,248,255,15,208,11,244,191,127,128,15,240,127,255,0,31,240,63,253,0,63,224,31,252,1,255,192,15,255,255,255,0,31,255,255,252,0,63,175,255,208,0,14,0,84,0,0,0,0,0,0,0, + // 0x00f9 ù + 17,30,150,23,3,255,0,85,0,0,0,1,255,64,0,0,0,127,192,0,0,0,31,224,0,0,0,7,244,0,0,0,1,252,0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,0,0, + // 0x00fa ú + 17,30,150,23,3,255,0,0,5,84,0,0,0,31,244,0,0,0,63,224,0,0,0,191,128,0,0,1,254,0,0,0,3,244,0,0,0,6,144,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,0,0, + // 0x00fb û + 17,30,150,23,3,255,0,1,84,0,0,0,15,253,0,0,0,63,255,0,0,0,191,191,192,0,2,253,15,240,0,7,240,3,248,0,10,128,0,104,0,0,0,0,0,0,0,0,0,0,0,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,0,0, + // 0x00fc ü + 17,28,140,23,3,255,1,248,7,224,0,3,252,11,240,0,2,252,11,240,0,0,160,2,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,0,0, + // 0x00fd ý + 20,38,190,20,0,247,0,0,1,85,0,0,0,3,254,0,0,0,15,248,0,0,0,31,224,0,0,0,63,128,0,0,0,254,0,0,0,0,164,0,0,0,0,0,0,0,0,0,0,0,0,191,64,0,3,253,127,192,0,3,252,63,192,0,11,248,47,224,0,15,240,15,240,0,31,240,15,240,0,47,208,7,248,0,63,192,3,252,0,127,128,2,253,0,191,64,0,254,0,255,0,0,255,1,254,0,0,127,66,252,0,0,63,195,252,0,0,47,199,244,0,0,15,219,240,0,0,15,239,224,0,0,7,255,208,0,0,3,255,192,0,0,2,255,128,0,0,0,255,0,0,0,0,255,0,0,0,2,253,0,0,0,3,252,0,0,0,7,248,0,0,0,31,240,0,0,21,191,224,0,0,127,255,128,0,0,127,254,0,0,0,47,224,0,0,0, + // 0x00fe þ + 18,37,185,23,3,247,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,20,0,0,255,7,255,224,0,255,63,255,252,0,255,255,255,255,0,255,244,2,255,128,255,192,0,127,192,255,128,0,63,208,255,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,64,0,31,224,255,128,0,63,208,255,208,0,127,192,255,244,1,255,128,255,255,255,255,0,255,63,255,252,0,255,11,255,224,0,255,0,20,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0, + // 0x00ff ÿ + 20,36,180,20,0,247,0,127,1,252,0,0,191,2,252,0,0,191,2,252,0,0,41,0,164,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,64,0,3,253,127,192,0,3,252,63,192,0,11,248,47,224,0,15,240,15,240,0,31,240,15,240,0,47,208,7,248,0,63,192,3,252,0,127,128,2,253,0,191,64,0,254,0,255,0,0,255,1,254,0,0,127,66,252,0,0,63,195,252,0,0,47,199,244,0,0,15,219,240,0,0,15,239,224,0,0,7,255,208,0,0,3,255,192,0,0,2,255,128,0,0,0,255,0,0,0,0,255,0,0,0,2,253,0,0,0,3,252,0,0,0,7,248,0,0,0,31,240,0,0,21,191,224,0,0,127,255,128,0,0,127,254,0,0,0,47,224,0,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_ASCII_27.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_ASCII_27.cpp new file mode 100644 index 000000000000..384408c9d32a --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_ASCII_27.cpp @@ -0,0 +1,222 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium ASCII 37pt, capital 'A' height: 27px, width: 100%, range: 0x0020-0x007e +extern const uint8_t NotoSans_Medium_ASCII_27[11627] = { + 130,27,32,0,126,0,35,247, // unifont_t + // 0x0020 " " + 0,0,0,10,0,0, + // 0x0021 ! + 6,28,56,10,2,255,21,64,63,208,63,208,63,208,63,192,63,192,63,192,63,192,63,192,63,192,47,192,47,192,47,192,47,192,47,128,31,128,31,128,31,128,31,128,0,0,0,0,0,0,26,64,63,208,127,224,127,208,63,192,5,0, + // 0x0022 " + 12,11,33,16,2,16,21,0,84,191,65,253,127,1,252,127,1,252,127,1,252,63,0,252,63,0,252,63,0,252,62,0,252,62,0,248,0,0,0, + // 0x0023 # + 22,27,162,24,1,0,0,0,84,0,84,0,0,0,252,1,248,0,0,1,248,1,248,0,0,2,248,2,244,0,0,2,244,3,240,0,0,3,240,3,240,0,0,3,240,3,224,0,0,7,240,7,224,0,42,175,250,175,250,160,63,255,255,255,255,240,63,255,255,255,255,240,0,15,192,31,192,0,0,15,192,31,128,0,0,31,128,47,64,0,0,47,64,63,0,0,0,63,0,63,0,0,85,127,85,191,85,64,255,255,255,255,255,128,255,255,255,255,255,128,85,254,85,253,85,64,0,252,0,252,0,0,0,252,0,252,0,0,0,252,1,248,0,0,1,248,2,244,0,0,1,244,3,244,0,0,2,244,3,240,0,0,3,240,3,240,0,0, + // 0x0024 $ + 17,31,155,21,2,253,0,2,240,0,0,0,2,240,0,0,0,2,240,0,0,0,111,255,164,0,7,255,255,255,64,47,255,255,255,0,127,251,246,191,0,191,130,240,5,0,255,2,240,0,0,255,2,240,0,0,255,66,240,0,0,127,210,240,0,0,63,255,240,0,0,15,255,249,0,0,2,255,255,208,0,0,31,255,252,0,0,2,255,255,0,0,2,242,255,192,0,2,240,63,192,0,2,240,47,192,0,2,240,47,192,64,2,240,63,192,254,66,246,255,128,255,255,255,255,0,255,255,255,248,0,27,255,255,128,0,0,6,240,0,0,0,2,240,0,0,0,2,240,0,0,0,2,240,0,0,0,0,0,0,0, + // 0x0025 % + 29,28,224,32,1,255,0,170,64,0,0,85,0,0,7,255,224,0,0,252,0,0,15,255,248,0,2,248,0,0,47,193,252,0,3,240,0,0,63,64,254,0,15,224,0,0,63,0,126,0,31,192,0,0,127,0,127,0,63,64,0,0,127,0,63,0,127,0,0,0,127,0,63,0,253,0,0,0,127,0,63,2,252,0,0,0,127,0,127,3,240,0,0,0,63,0,127,11,224,191,224,0,63,64,254,15,195,255,252,0,31,193,252,47,135,250,254,0,15,255,248,127,15,224,127,0,3,255,240,253,15,192,63,64,0,110,65,252,31,192,47,128,0,0,3,244,31,192,31,192,0,0,11,240,47,128,31,192,0,0,15,192,47,128,31,192,0,0,47,128,31,192,31,192,0,0,63,0,31,192,47,128,0,0,190,0,15,192,63,128,0,1,252,0,15,208,63,0,0,3,244,0,7,249,255,0,0,7,240,0,3,255,252,0,0,15,208,0,0,191,244,0,0,0,0,0,0,5,0,0, + // 0x0026 & + 25,28,196,27,2,255,0,6,250,64,0,0,0,0,127,255,240,0,0,0,2,255,255,252,0,0,0,3,254,91,254,0,0,0,11,248,1,255,0,0,0,11,240,0,255,0,0,0,11,240,0,255,0,0,0,11,240,0,255,0,0,0,7,248,2,253,0,0,0,3,253,11,252,0,0,0,0,255,191,240,0,0,0,0,127,255,128,0,0,0,0,63,253,0,0,0,0,2,255,253,0,0,169,0,11,255,255,64,2,253,0,47,248,191,208,3,252,0,127,208,47,244,3,252,0,255,128,11,253,11,244,0,255,0,2,255,79,240,0,255,0,0,191,255,208,0,255,0,0,47,255,128,0,255,64,0,11,255,0,0,255,192,0,31,255,128,0,127,244,1,255,255,224,0,47,255,255,255,175,248,0,11,255,255,253,7,254,0,1,191,255,208,1,255,128,0,1,80,0,0,0,0, + // 0x0027 ' + 5,11,22,9,2,16,21,0,191,64,127,0,127,0,127,0,63,0,63,0,63,0,62,0,62,0,0,0, + // 0x0028 ( + 9,33,99,12,1,250,0,5,64,0,63,192,0,127,0,0,254,0,2,252,0,3,248,0,11,240,0,15,240,0,31,208,0,47,192,0,63,192,0,63,128,0,63,128,0,127,64,0,127,64,0,127,64,0,191,0,0,127,0,0,127,64,0,127,64,0,127,64,0,63,128,0,63,192,0,47,192,0,31,208,0,15,224,0,15,240,0,7,244,0,3,252,0,1,253,0,0,255,0,0,63,64,0,31,192, + // 0x0029 ) + 9,33,99,12,1,250,85,0,0,127,64,0,47,192,0,15,224,0,11,240,0,3,248,0,2,252,0,1,253,0,0,255,0,0,191,0,0,127,64,0,63,128,0,63,128,0,63,192,0,63,192,0,63,192,0,47,192,0,47,192,0,63,192,0,63,192,0,63,192,0,63,128,0,127,64,0,191,64,0,255,0,0,254,0,1,253,0,3,252,0,7,244,0,15,240,0,31,208,0,63,128,0,127,0,0, + // 0x002a * + 18,17,85,20,1,11,0,3,252,0,0,0,2,252,0,0,0,2,252,0,0,0,1,248,0,0,0,1,248,0,0,57,1,244,6,208,127,249,249,255,224,127,255,255,255,224,111,255,255,255,160,0,7,254,0,0,0,15,255,64,0,0,63,159,192,0,0,191,15,224,0,1,254,7,248,0,3,253,3,252,0,1,252,2,244,0,0,20,0,64,0, + // 0x002b + + 18,18,90,21,2,4,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,170,171,250,170,128,255,255,255,255,208,255,255,255,255,208,85,87,245,85,64,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0, + // 0x002c , + 7,10,20,10,1,251,1,80,15,244,15,240,15,224,31,208,47,192,63,128,63,0,127,0,125,0, + // 0x002d - + 10,4,12,12,1,8,106,170,144,191,255,224,191,255,224,127,255,208, + // 0x002e . + 6,6,12,10,2,255,26,64,63,208,127,224,127,208,63,192,5,0, + // 0x002f / + 14,27,108,14,0,0,0,0,5,80,0,0,15,224,0,0,47,192,0,0,63,192,0,0,127,64,0,0,191,0,0,0,254,0,0,1,253,0,0,3,252,0,0,3,248,0,0,11,240,0,0,15,240,0,0,31,208,0,0,47,192,0,0,63,128,0,0,127,64,0,0,255,0,0,0,254,0,0,2,252,0,0,3,252,0,0,7,244,0,0,11,240,0,0,15,224,0,0,31,208,0,0,47,192,0,0,63,128,0,0,127,0,0,0, + // 0x0030 0 + 19,28,140,21,1,255,0,6,250,64,0,0,127,255,240,0,1,255,255,253,0,3,255,171,255,0,11,252,0,191,128,15,240,0,63,192,31,224,0,31,208,47,192,0,15,240,63,192,0,15,240,63,192,0,11,240,63,128,0,11,244,127,128,0,11,244,127,128,0,7,244,127,128,0,7,244,127,128,0,7,244,127,128,0,11,244,63,128,0,11,244,63,192,0,11,244,63,192,0,15,240,63,192,0,15,240,31,208,0,31,224,15,224,0,47,208,15,244,0,63,192,7,253,1,255,128,2,255,255,255,0,0,191,255,252,0,0,31,255,224,0,0,0,84,0,0, + // 0x0031 1 + 11,27,81,21,3,0,0,1,84,0,11,252,0,63,252,1,255,252,7,255,252,47,247,252,255,195,252,127,3,252,24,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252, + // 0x0032 2 + 19,27,135,21,1,0,0,6,186,64,0,0,255,255,244,0,11,255,255,254,0,63,255,171,255,64,31,208,0,255,192,11,0,0,63,192,0,0,0,47,208,0,0,0,47,208,0,0,0,47,208,0,0,0,63,192,0,0,0,63,192,0,0,0,191,64,0,0,1,255,0,0,0,3,252,0,0,0,15,244,0,0,0,63,224,0,0,0,255,128,0,0,3,254,0,0,0,15,248,0,0,0,63,224,0,0,0,255,128,0,0,3,254,0,0,0,15,244,0,0,0,63,245,85,85,80,127,255,255,255,244,127,255,255,255,244,127,255,255,255,244, + // 0x0033 3 + 18,28,140,21,1,255,0,26,186,64,0,2,255,255,248,0,47,255,255,254,0,63,254,171,255,128,15,128,0,191,192,4,0,0,63,208,0,0,0,47,208,0,0,0,47,208,0,0,0,47,192,0,0,0,63,192,0,0,0,255,64,0,21,91,253,0,0,127,255,224,0,0,127,255,144,0,0,127,255,254,0,0,0,6,255,192,0,0,0,63,224,0,0,0,31,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,31,240,0,0,0,63,224,126,64,1,255,192,127,255,255,255,64,127,255,255,253,0,27,255,255,208,0,0,5,80,0,0, + // 0x0034 4 + 21,27,162,21,0,0,0,0,0,42,64,0,0,0,0,255,192,0,0,0,2,255,192,0,0,0,3,255,192,0,0,0,15,255,192,0,0,0,47,191,192,0,0,0,127,63,192,0,0,0,254,63,192,0,0,2,252,63,192,0,0,7,240,63,192,0,0,15,208,63,192,0,0,47,192,63,192,0,0,127,0,63,192,0,0,253,0,63,192,0,3,248,0,63,192,0,11,240,0,63,192,0,15,208,0,63,192,0,63,192,0,63,192,0,127,255,255,255,255,64,127,255,255,255,255,64,127,255,255,255,255,64,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0, + // 0x0035 5 + 17,28,140,21,2,255,5,85,85,84,0,31,255,255,253,0,31,255,255,253,0,31,255,255,253,0,47,192,0,0,0,47,192,0,0,0,47,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,128,0,0,0,63,133,80,0,0,63,255,255,128,0,63,255,255,248,0,63,255,255,254,0,4,0,7,255,0,0,0,0,255,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,127,128,64,0,0,255,64,249,0,11,255,0,255,255,255,252,0,255,255,255,224,0,31,255,254,64,0,0,21,64,0,0, + // 0x0036 6 + 18,28,140,21,2,255,0,0,106,169,0,0,11,255,254,0,0,127,255,254,0,2,255,249,89,0,7,254,0,0,0,15,244,0,0,0,47,224,0,0,0,63,192,0,0,0,127,128,0,0,0,191,0,0,0,0,191,1,170,64,0,255,31,255,244,0,254,127,255,254,0,255,254,91,255,64,255,224,0,191,192,255,128,0,63,192,255,0,0,47,208,255,0,0,31,224,255,0,0,31,224,255,0,0,31,208,191,64,0,47,208,127,128,0,63,192,63,208,0,127,192,31,248,2,255,64,11,255,255,254,0,2,255,255,248,0,0,47,255,208,0,0,0,84,0,0, + // 0x0037 7 + 19,27,135,21,1,0,21,85,85,85,80,191,255,255,255,248,191,255,255,255,248,191,255,255,255,244,0,0,0,15,240,0,0,0,31,224,0,0,0,63,192,0,0,0,127,128,0,0,0,191,64,0,0,0,255,0,0,0,2,253,0,0,0,3,252,0,0,0,11,244,0,0,0,15,240,0,0,0,31,224,0,0,0,63,192,0,0,0,127,128,0,0,0,255,64,0,0,1,255,0,0,0,3,253,0,0,0,3,252,0,0,0,11,244,0,0,0,15,240,0,0,0,47,224,0,0,0,63,192,0,0,0,191,128,0,0,0,255,64,0,0, + // 0x0038 8 + 19,28,140,21,1,255,0,6,186,64,0,0,191,255,248,0,3,255,255,255,0,11,254,86,255,192,15,240,0,63,208,31,224,0,31,224,31,208,0,15,224,31,208,0,31,224,15,224,0,47,208,15,244,0,127,192,3,254,2,255,0,1,255,239,252,0,0,63,255,224,0,0,47,255,208,0,1,255,255,252,0,7,254,7,255,64,15,244,0,191,208,47,208,0,31,240,63,192,0,11,240,63,128,0,7,244,127,64,0,7,244,63,128,0,11,244,63,192,0,15,240,47,244,0,127,224,15,255,171,255,192,3,255,255,254,0,0,127,255,228,0,0,0,84,0,0, + // 0x0039 9 + 19,28,140,21,1,255,0,6,169,0,0,0,191,255,224,0,2,255,255,252,0,11,255,171,255,0,31,244,0,255,128,47,208,0,63,208,63,192,0,31,224,63,128,0,15,240,127,128,0,11,240,127,128,0,11,244,63,128,0,11,244,63,192,0,15,244,63,208,0,47,244,31,244,0,255,244,15,255,255,251,244,3,255,255,219,240,0,127,254,11,240,0,1,64,15,240,0,0,0,15,224,0,0,0,31,208,0,0,0,63,192,0,0,0,191,128,0,0,2,255,0,0,0,31,253,0,7,255,255,244,0,7,255,255,192,0,7,255,249,0,0,0,85,0,0,0, + // 0x003a : + 6,22,44,10,2,255,5,0,63,192,127,208,127,224,63,208,31,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,64,63,208,127,224,127,208,63,192,5,0, + // 0x003b ; + 7,26,52,10,1,251,1,64,15,240,31,244,47,244,31,244,7,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,80,15,240,31,240,31,224,47,192,63,192,63,64,127,0,190,0,188,0, + // 0x003c < + 18,19,95,21,2,4,0,0,0,0,64,0,0,0,7,208,0,0,0,127,208,0,0,7,255,192,0,0,127,253,0,0,7,255,208,0,0,127,253,0,0,7,255,208,0,0,127,249,0,0,0,255,128,0,0,0,255,208,0,0,0,127,254,0,0,0,7,255,228,0,0,0,47,255,64,0,0,2,255,248,0,0,0,31,255,192,0,0,1,255,208,0,0,0,11,208,0,0,0,0,144, + // 0x003d = + 17,11,55,21,2,7,255,255,255,255,192,255,255,255,255,192,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,192,255,255,255,255,192,255,255,255,255,192,0,0,0,0,0, + // 0x003e > + 18,19,95,21,2,4,64,0,0,0,0,244,0,0,0,0,255,64,0,0,0,255,244,0,0,0,31,255,64,0,0,1,255,244,0,0,0,31,255,64,0,0,1,191,244,0,0,0,11,255,64,0,0,0,191,208,0,0,1,191,208,0,0,31,255,128,0,2,255,244,0,0,127,254,64,0,11,255,224,0,0,191,253,0,0,0,255,208,0,0,0,249,0,0,0,0,128,0,0,0,0, + // 0x003f ? + 16,28,112,17,0,255,0,106,164,0,31,255,255,128,127,255,255,240,63,250,191,252,45,0,7,252,0,0,1,253,0,0,0,254,0,0,0,254,0,0,1,253,0,0,3,252,0,0,15,244,0,0,63,224,0,1,255,128,0,7,253,0,0,15,244,0,0,31,208,0,0,47,128,0,0,63,64,0,0,63,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,64,0,0,127,192,0,0,191,208,0,0,191,208,0,0,63,192,0,0,5,0,0, + // 0x0040 @ + 29,31,248,33,2,252,0,0,0,21,80,0,0,0,0,0,27,255,255,144,0,0,0,1,255,255,255,253,0,0,0,11,255,149,91,255,128,0,0,63,224,0,0,127,224,0,0,255,64,0,0,7,248,0,3,252,0,0,0,1,253,0,11,240,0,5,64,0,191,0,15,208,1,255,255,128,63,64,47,128,15,255,255,208,47,128,63,0,63,229,111,192,15,192,63,0,191,64,15,192,15,192,126,0,253,0,15,192,15,192,189,1,252,0,15,192,15,192,252,2,248,0,15,192,15,192,252,2,248,0,31,192,15,192,252,2,248,0,31,192,15,192,252,2,248,0,47,192,31,128,253,1,252,0,63,192,47,64,189,0,254,0,191,208,127,0,190,0,191,235,247,250,253,0,63,0,47,255,209,255,244,0,63,64,6,254,0,127,128,0,31,192,0,0,0,0,0,0,15,240,0,0,0,0,0,0,3,252,0,0,0,0,0,0,1,255,128,0,1,180,0,0,0,127,254,170,191,244,0,0,0,11,255,255,255,240,0,0,0,0,111,255,254,64,0,0,0,0,0,0,0,0,0,0, + // 0x0041 A + 24,27,162,24,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x0042 B + 20,27,135,24,3,0,21,85,84,0,0,127,255,255,248,0,127,255,255,255,64,127,255,255,255,208,127,128,1,191,240,127,128,0,31,244,127,128,0,15,244,127,128,0,11,244,127,128,0,11,244,127,128,0,15,240,127,128,0,47,224,127,149,86,255,128,127,255,255,253,0,127,255,255,249,0,127,255,255,255,192,127,128,0,127,240,127,128,0,15,248,127,128,0,3,252,127,128,0,3,252,127,128,0,3,253,127,128,0,3,252,127,128,0,11,252,127,128,0,31,248,127,149,86,255,240,127,255,255,255,208,127,255,255,255,0,127,255,255,228,0, + // 0x0043 C + 20,28,140,23,2,255,0,0,26,234,64,0,7,255,255,253,0,47,255,255,255,0,255,255,175,253,3,255,208,0,108,11,254,0,0,0,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,127,192,0,0,0,127,192,0,0,0,191,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,128,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,208,0,0,0,47,240,0,0,0,15,248,0,0,0,11,254,0,0,0,3,255,228,1,188,0,255,255,255,252,0,47,255,255,252,0,2,255,255,244,0,0,5,84,0, + // 0x0044 D + 22,27,162,27,3,0,21,85,84,0,0,0,127,255,255,244,0,0,127,255,255,255,64,0,127,255,255,255,224,0,127,128,1,191,252,0,127,128,0,11,254,0,127,128,0,2,255,64,127,128,0,0,255,192,127,128,0,0,127,192,127,128,0,0,63,208,127,128,0,0,47,224,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,47,224,127,128,0,0,63,208,127,128,0,0,63,192,127,128,0,0,191,192,127,128,0,1,255,64,127,128,0,7,255,0,127,128,0,47,252,0,127,149,91,255,244,0,127,255,255,255,192,0,127,255,255,253,0,0,127,255,254,64,0,0, + // 0x0045 E + 16,27,108,21,3,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x0046 F + 16,27,108,20,3,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0, + // 0x0047 G + 22,28,168,27,2,255,0,0,6,190,148,0,0,2,255,255,255,144,0,31,255,255,255,224,0,191,255,235,255,192,2,255,224,0,7,128,7,255,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,64,0,0,0,0,255,64,0,127,255,240,191,64,0,127,255,240,191,64,0,127,255,240,191,128,0,0,15,240,127,192,0,0,15,240,63,192,0,0,15,240,63,208,0,0,15,240,47,240,0,0,15,240,15,252,0,0,15,240,7,255,0,0,15,240,2,255,228,0,95,240,0,191,255,255,255,240,0,31,255,255,255,240,0,1,255,255,254,64,0,0,1,85,0,0, + // 0x0048 H + 21,27,162,28,3,0,21,0,0,0,21,64,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,149,85,85,127,192,127,255,255,255,255,192,127,255,255,255,255,192,127,255,255,255,255,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192, + // 0x0049 I + 11,27,81,13,1,0,85,85,84,191,255,248,191,255,248,11,255,128,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,2,254,0,47,255,228,191,255,248,191,255,248, + // 0x004a J + 11,35,105,11,253,248,0,5,80,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,11,244,0,15,240,0,31,240,81,191,224,255,255,192,255,255,0,191,248,0,0,0,0, + // 0x004b K + 20,27,135,23,3,0,21,0,0,1,85,127,128,0,7,253,127,128,0,15,244,127,128,0,63,224,127,128,0,255,128,127,128,2,255,0,127,128,11,252,0,127,128,31,240,0,127,128,127,192,0,127,128,255,64,0,127,131,253,0,0,127,143,248,0,0,127,175,244,0,0,127,255,252,0,0,127,255,254,0,0,127,245,255,64,0,127,192,191,192,0,127,128,63,224,0,127,128,31,244,0,127,128,11,252,0,127,128,3,255,0,127,128,0,255,128,127,128,0,127,192,127,128,0,47,240,127,128,0,15,248,127,128,0,7,253,127,128,0,2,255, + // 0x004c L + 16,27,108,20,3,0,21,0,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,85,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x004d M + 28,27,189,34,3,0,21,80,0,0,0,5,84,127,248,0,0,0,47,253,127,252,0,0,0,63,253,127,253,0,0,0,127,253,127,254,0,0,0,191,253,127,191,0,0,0,254,253,127,127,64,0,1,253,253,127,63,128,0,3,249,253,127,47,192,0,3,241,253,127,15,208,0,11,241,253,127,15,240,0,15,225,253,127,7,240,0,31,193,253,127,3,244,0,47,193,253,127,3,252,0,63,65,253,127,1,252,0,127,1,253,127,0,254,0,190,1,253,127,0,191,0,253,1,253,127,0,127,65,252,1,253,127,0,63,131,248,1,253,127,0,47,195,240,1,253,127,0,31,219,240,1,253,127,0,15,239,208,1,253,127,0,11,255,192,1,253,127,0,3,255,128,1,253,127,0,3,255,64,1,253,127,0,2,255,0,1,253,127,0,0,254,0,1,253, + // 0x004e N + 22,27,162,29,3,0,21,64,0,0,1,80,127,240,0,0,11,240,127,248,0,0,11,240,127,252,0,0,11,240,127,255,0,0,11,240,127,255,64,0,11,240,127,127,192,0,11,240,127,63,224,0,11,240,127,15,244,0,11,240,127,11,252,0,11,240,127,3,254,0,11,240,127,1,255,0,11,240,127,0,191,192,11,240,127,0,63,208,11,240,127,0,31,240,7,240,127,0,15,248,7,240,127,0,3,253,7,240,127,0,2,255,7,240,127,0,0,255,135,240,127,0,0,127,199,240,127,0,0,47,247,240,127,0,0,15,251,240,127,0,0,7,255,240,127,0,0,3,255,240,127,0,0,0,255,240,127,0,0,0,191,240,127,0,0,0,63,240, + // 0x004f O + 25,28,196,29,2,255,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x0050 P + 18,27,135,23,3,0,21,85,80,0,0,127,255,255,208,0,127,255,255,253,0,127,255,255,255,0,127,128,6,255,192,127,128,0,127,208,127,128,0,47,224,127,128,0,31,224,127,128,0,31,240,127,128,0,31,224,127,128,0,47,224,127,128,0,63,208,127,128,1,255,192,127,149,111,255,64,127,255,255,253,0,127,255,255,240,0,127,255,250,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0, + // 0x0051 Q + 25,34,238,29,2,249,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,240,0,0,0,0,5,111,244,0,0,0,0,0,11,253,0,0,0,0,0,3,255,64,0,0,0,0,0,255,192,0,0,0,0,0,63,240,0,0,0,0,0,31,252,0,0,0,0,0,1,84,0, + // 0x0052 R + 20,27,135,23,3,0,21,85,84,0,0,127,255,255,224,0,127,255,255,253,0,127,255,255,255,64,127,128,6,255,192,127,128,0,127,208,127,128,0,47,224,127,128,0,31,240,127,128,0,31,240,127,128,0,31,224,127,128,0,47,208,127,128,0,127,192,127,128,6,255,64,127,255,255,254,0,127,255,255,244,0,127,255,255,192,0,127,149,127,208,0,127,128,15,240,0,127,128,11,248,0,127,128,3,253,0,127,128,1,255,0,127,128,0,255,128,127,128,0,63,192,127,128,0,47,240,127,128,0,15,244,127,128,0,7,252,127,128,0,3,254, + // 0x0053 S + 17,28,140,20,2,255,0,26,234,64,0,2,255,255,253,0,15,255,255,255,0,63,254,175,254,0,127,208,0,108,0,191,128,0,0,0,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,191,192,0,0,0,63,244,0,0,0,31,255,64,0,0,11,255,244,0,0,1,255,255,128,0,0,31,255,240,0,0,1,191,252,0,0,0,15,255,0,0,0,2,255,64,0,0,0,191,128,0,0,0,127,128,0,0,0,127,128,0,0,0,191,128,128,0,0,255,0,254,64,27,254,0,255,255,255,252,0,255,255,255,240,0,111,255,254,64,0,0,21,64,0,0, + // 0x0054 T + 21,27,162,21,0,0,21,85,85,85,85,0,191,255,255,255,255,64,191,255,255,255,255,64,191,255,255,255,255,64,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0, + // 0x0055 U + 21,28,168,27,3,255,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,254,0,0,0,0,21,64,0,0, + // 0x0056 V + 23,27,162,23,0,0,85,0,0,0,1,84,191,64,0,0,11,244,127,192,0,0,15,240,63,192,0,0,31,224,47,208,0,0,47,208,31,240,0,0,63,192,15,240,0,0,127,128,11,244,0,0,255,64,3,252,0,0,255,0,3,252,0,1,254,0,2,253,0,3,253,0,0,255,0,3,252,0,0,255,0,7,248,0,0,127,128,15,240,0,0,63,192,15,240,0,0,63,192,31,208,0,0,31,224,63,192,0,0,15,240,63,192,0,0,11,240,127,64,0,0,7,248,255,0,0,0,3,252,254,0,0,0,2,253,253,0,0,0,1,255,252,0,0,0,0,255,248,0,0,0,0,191,244,0,0,0,0,63,240,0,0,0,0,63,224,0,0, + // 0x0057 W + 34,27,243,35,0,0,85,0,0,1,84,0,0,5,80,127,128,0,3,254,0,0,15,240,63,192,0,3,255,0,0,15,240,63,192,0,11,255,0,0,31,224,47,208,0,15,255,64,0,47,208,31,224,0,15,255,128,0,63,192,15,240,0,31,239,192,0,63,192,15,240,0,47,207,208,0,127,128,11,244,0,63,143,224,0,191,64,7,248,0,63,75,240,0,255,0,3,252,0,127,7,240,0,255,0,3,252,0,255,3,244,1,254,0,2,253,0,254,3,252,2,253,0,1,254,1,253,2,252,3,252,0,0,255,2,252,1,253,3,252,0,0,255,3,248,0,254,7,248,0,0,191,67,244,0,191,11,244,0,0,127,135,240,0,127,15,240,0,0,63,203,240,0,63,79,240,0,0,47,207,224,0,63,143,224,0,0,31,223,208,0,47,223,192,0,0,15,239,192,0,31,239,192,0,0,15,255,128,0,15,255,128,0,0,11,255,64,0,11,255,64,0,0,7,255,0,0,7,255,0,0,0,3,255,0,0,3,255,0,0,0,3,254,0,0,3,254,0,0, + // 0x0058 X + 22,27,162,23,0,0,21,64,0,0,5,80,47,224,0,0,63,192,15,244,0,0,191,128,7,252,0,0,255,0,3,254,0,3,253,0,0,255,0,7,248,0,0,191,128,15,240,0,0,63,208,47,208,0,0,15,240,127,128,0,0,11,248,255,0,0,0,3,254,253,0,0,0,1,255,252,0,0,0,0,191,240,0,0,0,0,127,240,0,0,0,0,255,244,0,0,0,2,255,252,0,0,0,3,254,254,0,0,0,15,240,255,64,0,0,31,224,127,192,0,0,63,192,47,224,0,0,191,64,15,244,0,1,255,0,7,252,0,3,252,0,3,254,0,11,248,0,0,255,0,31,240,0,0,191,192,63,208,0,0,63,208,191,128,0,0,31,240, + // 0x0059 Y + 21,27,162,22,0,0,85,0,0,0,21,64,191,192,0,0,63,192,63,208,0,0,191,128,31,240,0,1,255,0,15,244,0,3,253,0,7,252,0,7,252,0,3,253,0,15,244,0,1,255,0,31,240,0,0,191,64,63,208,0,0,63,192,127,128,0,0,47,224,255,0,0,0,15,241,254,0,0,0,11,251,252,0,0,0,3,255,248,0,0,0,1,255,240,0,0,0,0,255,208,0,0,0,0,127,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x005a Z + 19,27,135,21,1,0,21,85,85,85,84,127,255,255,255,248,127,255,255,255,248,127,255,255,255,248,0,0,0,47,240,0,0,0,63,192,0,0,0,255,128,0,0,2,255,0,0,0,3,252,0,0,0,15,248,0,0,0,47,240,0,0,0,63,192,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,192,0,0,0,255,64,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,229,85,85,84,191,255,255,255,252,191,255,255,255,252,191,255,255,255,252, + // 0x005b [ + 9,33,99,12,3,250,85,85,0,255,255,64,255,255,64,255,170,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,253,0,0,254,0,0,255,255,64,255,255,64,255,255,0, + // 0x005c "\" + 14,27,108,14,0,0,85,0,0,0,127,64,0,0,63,128,0,0,47,192,0,0,15,208,0,0,15,240,0,0,7,240,0,0,3,248,0,0,2,252,0,0,1,253,0,0,0,254,0,0,0,191,0,0,0,63,64,0,0,63,192,0,0,31,192,0,0,15,224,0,0,11,240,0,0,7,244,0,0,3,248,0,0,2,252,0,0,1,253,0,0,0,255,0,0,0,191,0,0,0,63,128,0,0,63,192,0,0,31,208,0,0,15,224, + // 0x005d ] + 9,33,99,12,1,250,85,85,0,255,255,64,255,255,64,170,191,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,255,255,64,255,255,64,255,255,64, + // 0x005e ^ + 19,18,90,21,1,9,0,0,160,0,0,0,1,248,0,0,0,3,253,0,0,0,7,255,0,0,0,15,255,64,0,0,31,223,192,0,0,47,79,208,0,0,63,7,240,0,0,189,3,244,0,0,252,1,252,0,2,248,0,253,0,3,240,0,127,0,11,224,0,63,64,15,192,0,31,192,31,128,0,15,208,63,64,0,7,240,127,0,0,3,248,20,0,0,0,80, + // 0x005f _ + 16,3,12,16,0,250,170,170,170,170,255,255,255,255,170,170,170,170, + // 0x0060 ` + 8,7,14,11,2,22,85,0,255,128,127,192,31,240,7,248,0,253,0,41, + // 0x0061 a + 18,22,110,21,1,255,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x0062 b + 18,29,145,23,3,255,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,7,255,208,0,255,63,255,252,0,255,255,255,255,0,255,244,2,255,128,255,192,0,127,192,255,128,0,63,208,255,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,64,0,31,224,255,128,0,63,208,255,192,0,127,192,255,244,1,255,128,255,255,255,255,0,253,63,255,252,0,252,11,255,224,0,0,0,20,0,0, + // 0x0063 c + 15,22,88,18,2,255,0,0,84,0,0,47,255,228,2,255,255,248,11,255,255,244,31,253,1,176,63,224,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,192,0,0,63,208,0,0,47,248,0,120,15,255,255,248,2,255,255,248,0,127,255,224,0,1,84,0, + // 0x0064 d + 18,29,145,23,2,255,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,1,64,15,240,0,191,254,15,240,3,255,255,207,240,15,255,255,255,240,47,248,1,255,240,63,208,0,127,240,127,192,0,47,240,191,64,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,191,64,0,15,240,191,128,0,47,240,63,208,0,63,240,47,244,1,255,240,15,255,255,255,240,3,255,255,203,240,0,191,254,7,240,0,1,64,0,0, + // 0x0065 e + 18,22,110,21,2,255,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x0066 f + 15,29,116,13,0,0,0,0,4,0,0,7,255,248,0,31,255,244,0,63,255,240,0,191,192,16,0,255,64,0,0,255,0,0,0,255,0,0,0,255,0,0,7,255,255,128,127,255,255,192,127,255,255,192,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0, + // 0x0067 g + 18,30,150,23,2,247,0,1,64,0,0,0,191,253,7,240,3,255,255,203,240,15,255,255,255,240,47,248,2,255,240,63,208,0,127,240,127,192,0,47,240,191,64,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,191,64,0,15,240,127,128,0,31,240,63,208,0,63,240,47,244,1,255,240,15,255,255,255,240,3,255,255,207,240,0,191,254,15,240,0,1,64,15,240,0,0,0,15,240,0,0,0,31,224,0,0,0,47,208,20,0,0,191,192,47,165,87,255,128,47,255,255,254,0,31,255,255,244,0,1,175,254,64,0, + // 0x0068 h + 18,28,140,23,3,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,4,0,0,255,7,255,224,0,255,63,255,253,0,255,191,255,255,64,255,248,1,255,192,255,208,0,127,192,255,192,0,63,192,255,64,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208, + // 0x0069 i + 4,28,28,10,3,0,20,255,255,255,125,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x006a j + 9,37,111,10,254,247,0,5,0,0,63,192,0,63,192,0,63,192,0,31,64,0,0,0,0,0,0,0,0,0,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,127,192,150,255,128,255,255,0,255,253,0,191,144,0, + // 0x006b k + 17,28,140,21,3,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,255,64,255,0,3,254,0,255,0,15,248,0,255,0,63,224,0,255,0,191,128,0,255,2,255,0,0,255,11,252,0,0,255,31,240,0,0,255,127,192,0,0,255,255,224,0,0,255,255,244,0,0,255,231,252,0,0,255,130,255,0,0,255,0,255,128,0,255,0,63,208,0,255,0,31,240,0,255,0,11,252,0,255,0,3,254,0,255,0,1,255,64,255,0,0,191,192, + // 0x006c l + 4,28,28,10,3,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x006d m + 29,21,168,35,3,0,0,0,16,0,0,4,0,0,253,11,255,224,7,255,244,0,253,63,255,252,47,255,253,0,255,255,255,254,191,255,255,0,255,244,3,255,253,1,255,128,255,192,0,255,240,0,127,192,255,128,0,191,192,0,63,192,255,64,0,127,192,0,63,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192,255,0,0,127,128,0,47,192, + // 0x006e n + 18,21,105,23,3,0,0,0,4,0,0,253,7,255,244,0,253,63,255,254,0,255,255,255,255,64,255,248,1,255,192,255,208,0,127,192,255,192,0,63,192,255,64,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208, + // 0x006f o + 19,22,110,23,2,255,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x0070 p + 18,30,150,23,3,247,0,0,20,0,0,253,11,255,224,0,254,63,255,252,0,255,255,255,255,0,255,244,2,255,128,255,192,0,127,192,255,128,0,63,208,255,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,64,0,47,224,255,128,0,63,208,255,208,0,127,192,255,244,2,255,128,255,255,255,255,0,255,63,255,252,0,255,11,255,224,0,255,0,20,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0, + // 0x0071 q + 18,30,150,23,2,247,0,1,64,0,0,0,191,253,7,240,3,255,255,203,240,15,255,255,255,240,47,248,1,255,240,63,208,0,127,240,127,192,0,47,240,191,64,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,191,64,0,15,240,191,128,0,47,240,63,208,0,63,240,47,244,1,255,240,15,255,255,255,240,3,255,255,207,240,0,191,254,15,240,0,1,64,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240, + // 0x0072 r + 12,21,63,16,3,0,0,0,20,252,7,255,253,31,255,254,127,255,255,255,85,255,244,0,255,208,0,255,128,0,255,64,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, + // 0x0073 s + 15,22,88,18,2,255,0,5,64,0,2,255,255,64,47,255,255,240,127,255,255,208,255,64,6,192,254,0,0,0,255,0,0,0,255,128,0,0,191,244,0,0,63,255,128,0,11,255,252,0,0,191,255,128,0,7,255,208,0,0,127,240,0,0,15,240,0,0,11,244,0,0,11,240,228,0,31,240,255,234,255,208,255,255,255,128,111,255,248,0,0,85,0,0, + // 0x0074 t + 14,26,104,14,0,255,0,20,0,0,0,125,0,0,0,189,0,0,0,253,0,0,1,253,0,0,11,255,255,192,127,255,255,192,127,255,255,192,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,1,254,0,0,1,255,64,0,0,255,255,208,0,127,255,208,0,31,255,192,0,0,84,0, + // 0x0075 u + 17,21,105,23,3,255,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,0,0, + // 0x0076 v + 20,20,100,19,0,0,255,64,0,3,253,127,128,0,3,252,63,192,0,11,248,47,208,0,15,240,31,224,0,31,240,15,240,0,47,208,11,244,0,63,192,3,252,0,127,128,3,252,0,191,64,1,253,0,255,0,0,255,1,253,0,0,191,3,252,0,0,127,131,248,0,0,63,199,244,0,0,47,203,240,0,0,15,223,224,0,0,15,255,192,0,0,7,255,192,0,0,3,255,64,0,0,2,255,0,0, + // 0x0077 w + 30,20,160,30,0,0,127,128,0,127,192,0,47,208,63,192,0,191,224,0,63,192,63,192,0,255,240,0,63,192,47,208,0,255,240,0,127,64,31,224,2,251,244,0,191,0,15,240,3,246,248,0,255,0,15,240,3,241,252,0,254,0,11,244,7,240,253,1,253,0,7,248,11,224,254,2,252,0,3,252,15,208,191,3,252,0,2,252,31,192,127,7,248,0,1,253,47,192,63,75,240,0,0,254,63,128,63,139,240,0,0,255,63,0,31,207,224,0,0,191,127,0,15,223,208,0,0,127,190,0,15,239,192,0,0,63,253,0,11,255,192,0,0,63,252,0,7,255,128,0,0,31,248,0,3,255,64,0,0,15,244,0,2,255,0,0, + // 0x0078 x + 18,20,100,20,1,0,255,128,0,31,240,63,208,0,63,192,31,240,0,255,128,15,248,1,255,0,3,253,3,252,0,1,255,15,244,0,0,191,159,240,0,0,63,255,192,0,0,31,255,64,0,0,11,254,0,0,0,15,255,0,0,0,47,255,128,0,0,127,255,208,0,0,255,79,240,0,2,254,11,248,0,7,252,3,253,0,15,244,0,255,0,47,224,0,191,192,127,192,0,63,224,255,64,0,15,240, + // 0x0079 y + 20,29,145,20,0,247,191,64,0,3,253,127,192,0,3,252,63,192,0,11,248,47,224,0,15,240,15,240,0,31,240,15,240,0,47,208,7,248,0,63,192,3,252,0,127,128,2,253,0,191,64,0,254,0,255,0,0,255,1,254,0,0,127,66,252,0,0,63,195,252,0,0,47,199,244,0,0,15,219,240,0,0,15,239,224,0,0,7,255,208,0,0,3,255,192,0,0,2,255,128,0,0,0,255,0,0,0,0,255,0,0,0,2,253,0,0,0,3,252,0,0,0,7,248,0,0,0,31,240,0,0,21,191,224,0,0,127,255,128,0,0,127,254,0,0,0,47,224,0,0,0, + // 0x007a z + 16,20,80,18,1,0,63,255,255,252,63,255,255,252,63,255,255,252,0,0,15,244,0,0,31,240,0,0,63,192,0,0,255,64,0,2,254,0,0,7,252,0,0,15,240,0,0,47,208,0,0,127,192,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,208,0,0,191,255,255,253,191,255,255,253,191,255,255,253, + // 0x007b { + 12,33,99,14,1,250,0,0,5,0,2,255,0,31,255,0,63,254,0,127,208,0,191,64,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,255,0,7,254,0,255,248,0,255,128,0,255,244,0,91,253,0,1,255,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,191,0,0,127,128,0,63,245,0,47,255,0,11,255,0,0,111, + // 0x007c | + 4,37,37,20,8,247,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126, + // 0x007d } + 13,33,132,14,1,250,80,0,0,0,191,144,0,0,191,244,0,0,191,252,0,0,3,254,0,0,0,254,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,0,0,0,127,208,0,0,31,255,64,0,1,255,64,0,11,255,64,0,63,245,0,0,191,128,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,254,0,0,1,254,0,0,27,253,0,0,191,252,0,0,191,224,0,0,185,0,0,0, + // 0x007e ~ + 18,6,30,21,2,10,6,164,0,0,0,127,255,144,0,208,255,255,254,175,208,249,111,255,255,192,192,0,191,255,64,0,0,5,164,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Cyrillic_27.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Cyrillic_27.cpp new file mode 100644 index 000000000000..c621bdfc9efe --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Cyrillic_27.cpp @@ -0,0 +1,322 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Cyrillic 37pt, capital 'A' height: 27px, width: 100%, range: 0x0401-0x0491, glyphs: 74 +extern const uint8_t NotoSans_Medium_Cyrillic_27[10855] = { + 130,27,1,4,145,4,35,247, // unifont_t + // 0x0401 Ё + 16,33,132,21,3,0,3,244,15,208,3,248,15,224,3,248,15,224,1,160,6,128,0,0,0,0,0,0,0,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x0402 Ђ + 255, + // 0x0403 Ѓ + 255, + // 0x0404 Є + 21,28,168,24,2,255,0,0,26,254,144,0,0,7,255,255,254,64,0,47,255,255,255,128,0,255,255,175,255,64,3,255,208,0,47,0,11,253,0,0,0,0,15,244,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,128,0,0,0,0,191,149,85,85,64,0,191,255,255,255,192,0,255,255,255,255,192,0,255,255,255,255,192,0,191,128,0,0,0,0,191,128,0,0,0,0,127,192,0,0,0,0,63,192,0,0,0,0,63,208,0,0,0,0,47,240,0,0,0,0,15,248,0,0,0,0,11,255,0,0,0,0,3,255,228,0,111,0,0,255,255,255,255,0,0,47,255,255,255,0,0,2,255,255,249,0,0,0,1,84,0,0, + // 0x0405 Ѕ + 255, + // 0x0406 І + 11,27,81,13,1,0,85,85,84,191,255,248,191,255,248,11,255,128,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,2,254,0,47,255,228,191,255,248,191,255,248, + // 0x0407 Ї + 11,33,99,13,1,0,190,1,248,255,3,252,255,2,252,40,0,160,0,0,0,0,0,0,85,85,84,191,255,248,191,255,248,11,255,128,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,2,254,0,47,255,228,191,255,248,191,255,248, + // 0x0408 Ј + 255, + // 0x0409 Љ + 255, + // 0x040a Њ + 255, + // 0x040b Ћ + 255, + // 0x040c Ќ + 255, + // 0x040d Ѝ + 255, + // 0x040e Ў + 255, + // 0x040f Џ + 255, + // 0x0410 А + 24,27,162,24,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x0411 Б + 18,27,135,23,3,0,21,85,85,85,0,127,255,255,255,128,127,255,255,255,128,127,255,255,255,128,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,234,149,0,0,127,255,255,244,0,127,255,255,254,0,127,255,255,255,192,127,128,1,255,208,127,128,0,47,240,127,128,0,15,240,127,128,0,15,240,127,128,0,15,240,127,128,0,15,240,127,128,0,31,240,127,128,0,127,224,127,149,91,255,192,127,255,255,255,64,127,255,255,252,0,127,255,254,128,0, + // 0x0412 В + 20,27,135,24,3,0,21,85,84,0,0,127,255,255,248,0,127,255,255,255,64,127,255,255,255,208,127,128,1,191,240,127,128,0,31,244,127,128,0,15,244,127,128,0,11,244,127,128,0,11,244,127,128,0,15,240,127,128,0,47,224,127,149,86,255,128,127,255,255,253,0,127,255,255,249,0,127,255,255,255,192,127,128,0,127,240,127,128,0,15,248,127,128,0,3,252,127,128,0,3,252,127,128,0,3,253,127,128,0,3,252,127,128,0,11,252,127,128,0,31,248,127,149,86,255,240,127,255,255,255,208,127,255,255,255,0,127,255,255,228,0, + // 0x0413 Г + 16,27,108,20,3,0,21,85,85,85,127,255,255,255,127,255,255,255,127,255,255,255,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0, + // 0x0414 Д + 26,35,245,26,0,248,0,0,21,85,85,80,0,0,0,63,255,255,240,0,0,0,63,255,255,240,0,0,0,127,255,255,240,0,0,0,127,64,15,240,0,0,0,191,0,15,240,0,0,0,255,0,15,240,0,0,0,255,0,15,240,0,0,0,254,0,15,240,0,0,1,253,0,15,240,0,0,2,253,0,15,240,0,0,3,252,0,15,240,0,0,3,248,0,15,240,0,0,11,244,0,15,240,0,0,15,240,0,15,240,0,0,15,240,0,15,240,0,0,47,208,0,15,240,0,0,63,192,0,15,240,0,0,127,128,0,15,240,0,0,255,64,0,15,240,0,0,255,0,0,15,240,0,2,253,0,0,15,240,0,3,252,0,0,15,240,0,95,253,85,85,95,249,80,255,255,255,255,255,255,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,255,0,0,0,0,31,224,255,0,0,0,0,31,224,255,0,0,0,0,31,224,255,0,0,0,0,31,224,255,0,0,0,0,31,224,255,0,0,0,0,31,224,255,0,0,0,0,31,224,0,0,0,0,0,0,0, + // 0x0415 Е + 16,27,108,21,3,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x0416 Ж + 32,27,216,33,0,0,21,64,0,5,80,0,0,85,63,208,0,11,240,0,3,253,15,240,0,11,240,0,11,248,7,252,0,11,240,0,31,240,2,254,0,11,240,0,63,192,0,255,64,11,240,0,255,64,0,63,192,11,240,2,254,0,0,31,240,11,240,7,252,0,0,7,248,11,240,15,240,0,0,2,253,11,240,63,208,0,0,0,255,11,240,191,64,0,0,0,63,203,241,254,0,0,0,0,31,235,247,252,0,0,0,0,15,255,255,244,0,0,0,0,47,235,247,252,0,0,0,0,127,203,241,255,0,0,0,0,255,75,240,191,128,0,0,3,254,11,240,63,208,0,0,11,252,11,240,15,240,0,0,31,240,11,240,7,252,0,0,63,208,11,240,2,254,0,0,255,128,11,240,0,255,64,2,255,0,11,240,0,127,192,7,252,0,11,240,0,47,240,15,244,0,11,240,0,15,248,63,224,0,11,240,0,3,253,191,192,0,11,240,0,1,255, + // 0x0417 З + 20,28,140,22,1,255,0,6,170,144,0,2,255,255,254,0,47,255,255,255,192,63,254,154,255,240,31,128,0,47,244,4,0,0,11,252,0,0,0,3,252,0,0,0,3,252,0,0,0,7,248,0,0,0,15,244,0,0,0,127,224,0,85,91,255,128,0,255,255,248,0,0,255,255,228,0,0,255,255,255,128,0,0,1,191,240,0,0,0,15,248,0,0,0,3,252,0,0,0,2,253,0,0,0,2,254,0,0,0,2,253,0,0,0,3,252,0,0,0,15,252,126,64,0,127,244,127,255,255,255,224,127,255,255,255,64,27,255,255,244,0,0,5,84,0,0, + // 0x0418 И + 23,27,162,29,3,0,21,0,0,0,5,80,127,0,0,0,47,248,127,0,0,0,127,248,127,0,0,0,255,248,127,0,0,2,255,248,127,0,0,7,255,248,127,0,0,15,247,248,127,0,0,47,227,248,127,0,0,63,195,248,127,0,0,255,67,248,127,0,1,255,3,248,127,0,3,252,3,248,127,0,15,248,3,248,127,0,31,240,3,248,127,0,63,192,3,248,127,0,191,128,3,248,127,1,255,0,3,248,127,3,253,0,3,248,127,11,248,0,3,248,127,31,240,0,3,248,127,63,208,0,3,248,127,191,128,0,3,248,127,255,0,0,3,248,127,253,0,0,3,248,127,252,0,0,3,248,127,240,0,0,3,248,127,208,0,0,3,248, + // 0x0419 Й + 23,35,210,29,3,0,0,127,0,0,253,0,0,63,64,1,253,0,0,63,192,3,252,0,0,31,249,111,244,0,0,11,255,255,224,0,0,1,191,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,0,0,0,5,80,127,0,0,0,47,248,127,0,0,0,127,248,127,0,0,0,255,248,127,0,0,2,255,248,127,0,0,7,255,248,127,0,0,15,247,248,127,0,0,47,227,248,127,0,0,63,195,248,127,0,0,255,67,248,127,0,1,255,3,248,127,0,3,252,3,248,127,0,15,248,3,248,127,0,31,240,3,248,127,0,63,192,3,248,127,0,191,128,3,248,127,1,255,0,3,248,127,3,253,0,3,248,127,11,248,0,3,248,127,31,240,0,3,248,127,63,208,0,3,248,127,191,128,0,3,248,127,255,0,0,3,248,127,253,0,0,3,248,127,252,0,0,3,248,127,240,0,0,3,248,127,208,0,0,3,248, + // 0x041a К + 20,27,135,23,3,0,21,0,0,1,85,127,128,0,7,252,127,128,0,15,244,127,128,0,63,208,127,128,0,255,128,127,128,2,254,0,127,128,11,252,0,127,128,31,240,0,127,128,127,192,0,127,128,255,64,0,127,131,253,0,0,127,143,248,0,0,127,175,240,0,0,127,255,208,0,0,127,175,240,0,0,127,143,252,0,0,127,131,254,0,0,127,128,255,64,0,127,128,127,208,0,127,128,47,240,0,127,128,11,252,0,127,128,3,255,0,127,128,0,255,128,127,128,0,63,224,127,128,0,31,244,127,128,0,7,252,127,128,0,2,255, + // 0x041b Л + 23,28,168,27,0,255,0,0,85,85,85,84,0,0,255,255,255,252,0,1,255,255,255,252,0,1,255,255,255,252,0,2,252,0,3,252,0,2,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,248,0,3,252,0,3,248,0,3,252,0,7,244,0,3,252,0,11,244,0,3,252,0,11,240,0,3,252,0,15,240,0,3,252,0,15,240,0,3,252,0,15,224,0,3,252,0,31,224,0,3,252,0,31,208,0,3,252,0,47,192,0,3,252,0,63,192,0,3,252,0,63,192,0,3,252,0,127,128,0,3,252,0,255,64,0,3,252,2,255,0,0,3,252,255,253,0,0,3,252,255,252,0,0,3,252,255,224,0,0,3,252,21,0,0,0,0,0, + // 0x041c М + 28,27,189,34,3,0,21,80,0,0,0,5,84,127,248,0,0,0,47,253,127,252,0,0,0,63,253,127,253,0,0,0,127,253,127,254,0,0,0,191,253,127,191,0,0,0,254,253,127,127,64,0,1,253,253,127,63,128,0,3,249,253,127,47,192,0,3,241,253,127,15,208,0,11,241,253,127,15,240,0,15,225,253,127,7,240,0,31,193,253,127,3,244,0,47,193,253,127,3,252,0,63,65,253,127,1,252,0,127,1,253,127,0,254,0,190,1,253,127,0,191,0,253,1,253,127,0,127,65,252,1,253,127,0,63,131,248,1,253,127,0,47,195,240,1,253,127,0,31,219,240,1,253,127,0,15,239,208,1,253,127,0,11,255,192,1,253,127,0,3,255,128,1,253,127,0,3,255,64,1,253,127,0,2,255,0,1,253,127,0,0,254,0,1,253, + // 0x041d Н + 21,27,162,28,3,0,21,0,0,0,21,64,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,149,85,85,127,192,127,255,255,255,255,192,127,255,255,255,255,192,127,255,255,255,255,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192, + // 0x041e О + 25,28,196,29,2,255,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x041f П + 21,27,162,27,3,0,21,85,85,85,85,64,127,255,255,255,255,128,127,255,255,255,255,128,127,255,255,255,255,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128, + // 0x0420 Р + 18,27,135,23,3,0,21,85,80,0,0,127,255,255,208,0,127,255,255,253,0,127,255,255,255,0,127,128,6,255,192,127,128,0,127,208,127,128,0,47,224,127,128,0,31,224,127,128,0,31,240,127,128,0,31,224,127,128,0,47,224,127,128,0,63,208,127,128,1,255,192,127,149,111,255,64,127,255,255,253,0,127,255,255,240,0,127,255,250,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0, + // 0x0421 С + 20,28,140,23,2,255,0,0,26,234,64,0,7,255,255,253,0,47,255,255,255,0,255,255,175,253,3,255,208,0,108,11,254,0,0,0,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,127,192,0,0,0,127,192,0,0,0,191,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,128,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,208,0,0,0,47,240,0,0,0,15,248,0,0,0,11,254,0,0,0,3,255,228,1,188,0,255,255,255,252,0,47,255,255,252,0,2,255,255,244,0,0,5,84,0, + // 0x0422 Т + 21,27,162,21,0,0,21,85,85,85,85,0,191,255,255,255,255,64,191,255,255,255,255,64,191,255,255,255,255,64,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0, + // 0x0423 У + 22,28,168,24,1,255,85,0,0,0,5,80,255,0,0,0,15,240,191,128,0,0,31,224,63,192,0,0,63,192,47,224,0,0,127,192,15,240,0,0,255,64,11,248,0,0,255,0,3,252,0,2,253,0,2,254,0,3,252,0,0,255,0,7,248,0,0,191,128,15,240,0,0,63,192,31,224,0,0,47,224,63,192,0,0,15,240,63,192,0,0,11,248,191,64,0,0,3,252,255,0,0,0,2,255,253,0,0,0,0,255,252,0,0,0,0,191,248,0,0,0,0,63,240,0,0,0,0,63,224,0,0,0,0,191,192,0,0,0,1,255,128,0,0,101,91,255,0,0,0,127,255,252,0,0,0,127,255,244,0,0,0,127,255,128,0,0,0,1,80,0,0,0,0, + // 0x0424 Ф + 27,28,196,30,2,255,0,0,2,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,87,254,80,0,0,0,47,255,255,255,128,0,1,255,255,255,255,248,0,11,255,255,255,255,255,0,31,253,3,252,6,255,192,63,224,3,252,0,127,208,191,192,3,252,0,31,240,255,64,3,252,0,15,240,255,0,3,252,0,11,244,255,0,3,252,0,7,244,255,0,3,252,0,7,248,255,0,3,252,0,7,244,255,0,3,252,0,11,244,191,64,3,252,0,15,240,127,192,3,252,0,47,224,63,240,3,252,0,191,192,15,254,67,252,7,255,64,7,255,255,255,255,254,0,0,191,255,255,255,244,0,0,11,255,255,254,64,0,0,0,7,253,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,1,84,0,0,0, + // 0x0425 Х + 22,27,162,23,0,0,21,64,0,0,5,80,47,224,0,0,63,192,15,244,0,0,191,128,7,252,0,0,255,0,3,254,0,3,253,0,0,255,0,7,248,0,0,191,128,15,240,0,0,63,208,47,208,0,0,15,240,127,128,0,0,11,248,255,0,0,0,3,254,253,0,0,0,1,255,252,0,0,0,0,191,240,0,0,0,0,127,240,0,0,0,0,255,244,0,0,0,2,255,252,0,0,0,3,254,254,0,0,0,15,240,255,64,0,0,31,224,127,192,0,0,63,192,47,224,0,0,191,64,15,244,0,1,255,0,7,252,0,3,252,0,3,254,0,11,248,0,0,255,0,31,240,0,0,191,192,63,208,0,0,63,208,191,128,0,0,31,240, + // 0x0426 Ц + 24,35,210,28,3,248,21,0,0,0,21,64,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,213,85,85,191,213,127,255,255,255,255,255,127,255,255,255,255,255,127,255,255,255,255,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,0, + // 0x0427 Ч + 21,27,162,26,2,0,21,64,0,0,21,64,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,128,0,0,127,128,127,192,0,0,127,128,63,192,0,0,127,128,63,224,0,2,255,128,47,254,90,255,255,128,15,255,255,255,255,128,3,255,255,254,191,128,0,111,255,144,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128, + // 0x0428 Ш + 33,27,243,39,3,0,21,0,0,5,80,0,0,85,0,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,128,0,11,244,0,0,191,64,127,213,85,95,249,85,85,255,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64, + // 0x0429 Щ + 36,35,59,39,3,248,21,0,0,5,80,0,0,85,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,128,0,15,240,0,0,255,0,127,213,85,95,249,85,86,255,84,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,0,0, + // 0x042a Ъ + 24,27,162,26,0,0,85,85,80,0,0,0,255,255,244,0,0,0,255,255,244,0,0,0,255,255,244,0,0,0,0,11,244,0,0,0,0,11,244,0,0,0,0,11,244,0,0,0,0,11,244,0,0,0,0,11,244,0,0,0,0,11,244,0,0,0,0,11,244,0,0,0,0,11,254,169,80,0,0,11,255,255,254,0,0,11,255,255,255,224,0,11,255,255,255,248,0,11,244,0,31,253,0,11,244,0,2,254,0,11,244,0,0,255,0,11,244,0,0,255,0,11,244,0,0,255,0,11,244,0,0,255,0,11,244,0,2,255,0,11,244,0,7,253,0,11,249,85,191,252,0,11,255,255,255,240,0,11,255,255,255,128,0,11,255,255,232,0, + // 0x042b Ы + 26,27,189,32,3,0,21,0,0,0,0,5,80,127,128,0,0,0,31,240,127,128,0,0,0,31,240,127,128,0,0,0,31,240,127,128,0,0,0,31,240,127,128,0,0,0,31,240,127,128,0,0,0,31,240,127,128,0,0,0,31,240,127,128,0,0,0,31,240,127,128,0,0,0,31,240,127,128,0,0,0,31,240,127,234,148,0,0,31,240,127,255,255,224,0,31,240,127,255,255,253,0,31,240,127,255,255,255,64,31,240,127,128,1,255,192,31,240,127,128,0,63,208,31,240,127,128,0,31,224,31,240,127,128,0,15,240,31,240,127,128,0,15,240,31,240,127,128,0,31,240,31,240,127,128,0,63,224,31,240,127,128,0,191,208,31,240,127,149,91,255,128,31,240,127,255,255,255,0,31,240,127,255,255,248,0,31,240,127,255,254,64,0,31,240, + // 0x042c Ь + 19,27,135,24,3,0,21,0,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,234,165,0,0,127,255,255,248,0,127,255,255,255,64,127,255,255,255,208,127,128,0,191,240,127,128,0,15,244,127,128,0,7,248,127,128,0,7,252,127,128,0,3,252,127,128,0,7,252,127,128,0,15,248,127,128,0,47,240,127,149,90,255,224,127,255,255,255,192,127,255,255,254,0,127,255,255,144,0, + // 0x042d Э + 21,28,168,24,1,255,1,107,233,0,0,0,111,255,255,244,0,0,191,255,255,254,0,0,63,254,191,255,192,0,45,0,1,255,240,0,0,0,0,47,248,0,0,0,0,11,252,0,0,0,0,3,253,0,0,0,0,1,255,0,0,0,0,0,255,0,0,0,0,0,255,64,0,85,85,85,255,64,0,255,255,255,255,64,0,255,255,255,255,64,0,255,255,255,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,0,0,0,0,1,255,0,0,0,0,2,254,0,0,0,0,7,252,0,0,0,0,15,252,0,0,0,0,127,240,0,185,64,27,255,208,0,191,255,255,255,64,0,191,255,255,252,0,0,47,255,255,144,0,0,0,21,80,0,0,0, + // 0x042e Ю + 34,28,252,39,3,255,21,0,0,0,6,190,144,0,0,127,128,0,0,191,255,254,0,0,127,128,0,7,255,255,255,208,0,127,128,0,31,255,234,255,248,0,127,128,0,63,244,0,31,253,0,127,128,0,191,192,0,3,255,0,127,128,0,255,64,0,0,255,64,127,128,2,254,0,0,0,127,192,127,128,3,253,0,0,0,63,192,127,128,3,252,0,0,0,63,208,127,128,7,252,0,0,0,47,224,127,149,91,248,0,0,0,31,224,127,255,255,248,0,0,0,31,240,127,255,255,248,0,0,0,31,240,127,255,255,248,0,0,0,31,240,127,128,11,248,0,0,0,31,240,127,128,7,248,0,0,0,31,224,127,128,7,252,0,0,0,47,224,127,128,3,252,0,0,0,63,208,127,128,3,253,0,0,0,63,192,127,128,1,255,0,0,0,191,128,127,128,0,255,128,0,1,255,64,127,128,0,127,224,0,7,254,0,127,128,0,63,253,0,111,252,0,127,128,0,15,255,255,255,240,0,127,128,0,2,255,255,255,192,0,127,128,0,0,47,255,249,0,0,0,0,0,0,0,85,0,0,0, + // 0x042f Я + 20,27,135,24,1,0,0,0,21,85,84,0,11,255,255,253,0,191,255,255,253,2,255,255,255,253,7,255,64,2,253,15,252,0,2,253,15,240,0,2,253,15,240,0,2,253,15,240,0,2,253,15,240,0,2,253,15,244,0,2,253,11,252,0,2,253,3,255,144,2,253,1,255,255,255,253,0,63,255,255,253,0,7,255,255,253,0,11,249,86,253,0,31,240,2,253,0,63,208,2,253,0,191,128,2,253,1,255,0,2,253,3,254,0,2,253,11,252,0,2,253,15,244,0,2,253,63,224,0,2,253,191,192,0,2,253,255,64,0,2,253, + // 0x0430 а + 18,22,110,21,1,255,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x0431 б + 19,29,145,22,2,255,0,0,1,111,240,0,1,191,255,240,0,31,255,255,240,0,255,255,250,80,3,255,228,0,0,11,253,0,0,0,15,240,0,0,0,47,208,0,0,0,63,192,0,0,0,127,128,90,64,0,191,71,255,248,0,191,47,255,255,0,255,191,171,255,192,255,248,0,127,224,255,208,0,31,240,255,128,0,15,240,255,0,0,15,244,255,0,0,11,244,255,0,0,11,244,255,64,0,11,244,191,64,0,11,244,127,192,0,15,240,63,192,0,15,240,47,240,0,63,224,15,253,0,255,192,7,255,255,255,64,1,255,255,253,0,0,47,255,224,0,0,0,84,0,0, + // 0x0432 в + 17,20,100,22,3,0,255,255,254,128,0,255,255,255,248,0,255,255,255,255,0,255,0,6,255,64,255,0,0,191,128,255,0,0,127,128,255,0,0,191,64,255,0,2,255,0,255,255,255,248,0,255,255,255,208,0,255,255,255,253,0,255,0,6,255,64,255,0,0,127,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,1,255,128,255,255,255,255,0,255,255,255,252,0,255,255,255,144,0, + // 0x0433 г + 13,20,80,17,3,0,255,255,255,128,255,255,255,128,255,255,255,128,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0, + // 0x0434 д + 22,27,162,22,0,249,0,2,255,255,248,0,0,3,255,255,252,0,0,3,255,255,252,0,0,3,248,3,252,0,0,3,244,3,252,0,0,7,244,3,252,0,0,11,240,3,252,0,0,11,240,3,252,0,0,15,240,3,252,0,0,31,208,3,252,0,0,47,192,3,252,0,0,63,192,3,252,0,0,127,128,3,252,0,0,255,0,3,252,0,1,254,0,3,252,0,3,252,0,3,252,0,11,248,0,3,252,0,127,255,255,255,255,224,127,255,255,255,255,224,127,255,255,255,255,224,127,64,0,0,15,224,127,64,0,0,15,224,127,64,0,0,15,224,127,64,0,0,15,224,127,64,0,0,15,224,127,64,0,0,15,224,127,64,0,0,15,224, + // 0x0435 е + 18,22,110,21,2,255,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x0436 ж + 29,20,160,29,0,0,63,208,0,127,64,0,255,0,15,240,0,127,64,3,252,0,7,252,0,127,64,15,244,0,1,254,0,127,64,47,208,0,0,191,64,127,64,127,128,0,0,63,208,127,64,255,0,0,0,15,240,127,67,252,0,0,0,3,252,127,79,240,0,0,0,1,254,127,111,208,0,0,0,0,191,255,255,128,0,0,0,0,255,191,191,192,0,0,0,3,253,127,95,240,0,0,0,11,248,127,75,248,0,0,0,31,224,127,66,254,0,0,0,127,192,127,64,255,64,0,0,255,0,127,64,63,192,0,3,253,0,127,64,15,240,0,15,244,0,127,64,7,252,0,47,224,0,127,64,2,254,0,191,192,0,127,64,0,191,128, + // 0x0437 з + 16,22,88,19,1,255,0,1,64,0,27,255,255,64,127,255,255,240,63,255,255,252,30,0,7,253,0,0,0,254,0,0,0,254,0,0,1,253,0,0,11,252,0,191,255,224,0,255,255,64,0,255,255,240,0,0,27,253,0,0,1,255,0,0,0,191,0,0,0,191,0,0,0,255,180,0,7,254,191,255,255,252,191,255,255,244,47,255,255,128,0,21,64,0, + // 0x0438 и + 19,20,100,25,3,0,255,0,0,47,244,255,0,0,63,248,255,0,0,255,248,255,0,1,255,248,255,0,3,255,248,255,0,11,243,248,255,0,31,227,248,255,0,63,195,248,255,0,191,67,248,255,1,254,3,248,255,3,252,3,248,255,11,244,3,248,255,31,224,3,248,254,63,192,3,248,254,191,64,3,248,255,255,0,3,248,255,252,0,3,248,255,244,0,3,248,255,240,0,3,248,255,192,0,3,248, + // 0x0439 й + 19,29,145,25,3,0,1,64,0,5,64,11,240,0,47,192,7,240,0,63,128,3,253,1,255,64,2,255,255,254,0,0,127,255,244,0,0,5,169,64,0,0,0,0,0,0,0,0,0,0,0,255,0,0,47,244,255,0,0,63,248,255,0,0,255,248,255,0,1,255,248,255,0,3,255,248,255,0,11,243,248,255,0,31,227,248,255,0,63,195,248,255,0,191,67,248,255,1,254,3,248,255,3,252,3,248,255,11,244,3,248,255,31,224,3,248,254,63,192,3,248,254,191,64,3,248,255,255,0,3,248,255,252,0,3,248,255,244,0,3,248,255,240,0,3,248,255,192,0,3,248, + // 0x043a к + 17,20,100,21,3,0,255,0,0,255,0,255,0,3,253,0,255,0,15,244,0,255,0,47,224,0,255,0,191,128,0,255,1,255,0,0,255,7,252,0,0,255,15,240,0,0,255,63,192,0,0,255,255,64,0,0,255,127,192,0,0,255,47,240,0,0,255,11,248,0,0,255,3,254,0,0,255,0,255,64,0,255,0,63,208,0,255,0,31,240,0,255,0,7,252,0,255,0,2,255,0,255,0,0,191,192, + // 0x043b л + 19,21,105,22,0,255,0,15,255,255,252,0,15,255,255,252,0,15,255,255,252,0,15,224,3,252,0,31,208,3,252,0,31,208,3,252,0,31,192,3,252,0,47,192,3,252,0,47,192,3,252,0,63,192,3,252,0,63,128,3,252,0,63,64,3,252,0,127,64,3,252,0,255,0,3,252,0,255,0,3,252,2,253,0,3,252,7,252,0,3,252,255,248,0,3,252,255,240,0,3,252,255,128,0,3,252,4,0,0,0,0, + // 0x043c м + 23,20,120,29,3,0,255,224,0,0,63,248,255,240,0,0,127,248,255,244,0,0,191,248,255,252,0,0,255,248,255,252,0,1,255,248,254,254,0,3,251,248,254,127,0,3,243,248,254,63,64,11,243,248,254,47,128,15,211,248,254,31,192,31,195,248,254,15,208,63,131,248,254,11,240,63,3,248,254,3,240,191,3,248,254,3,248,253,3,248,254,1,253,252,3,248,254,0,255,248,3,248,254,0,191,244,3,248,254,0,63,240,3,248,254,0,63,208,3,248,254,0,31,192,3,248, + // 0x043d н + 18,20,100,24,3,0,255,0,0,15,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,255,85,85,95,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240, + // 0x043e о + 19,22,110,23,2,255,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x043f п + 18,20,100,23,3,0,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208, + // 0x0440 р + 18,30,150,23,3,247,0,0,20,0,0,253,11,255,224,0,254,63,255,252,0,255,255,255,255,0,255,244,2,255,128,255,192,0,127,192,255,128,0,63,208,255,64,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,64,0,47,224,255,128,0,63,208,255,208,0,127,192,255,244,2,255,128,255,255,255,255,0,255,63,255,252,0,255,11,255,224,0,255,0,20,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0, + // 0x0441 с + 15,22,88,18,2,255,0,0,84,0,0,47,255,228,2,255,255,248,11,255,255,244,31,253,1,176,63,224,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,192,0,0,63,208,0,0,47,248,0,120,15,255,255,248,2,255,255,248,0,127,255,224,0,1,84,0, + // 0x0442 т + 17,20,100,18,1,0,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,0,15,244,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0, + // 0x0443 у + 20,29,145,20,0,247,191,64,0,3,253,127,192,0,3,252,63,192,0,11,248,47,224,0,15,240,15,240,0,31,240,15,240,0,47,208,7,248,0,63,192,3,252,0,127,128,2,253,0,191,64,0,254,0,255,0,0,255,1,254,0,0,127,66,252,0,0,63,195,252,0,0,47,199,244,0,0,15,219,240,0,0,15,239,224,0,0,7,255,208,0,0,3,255,192,0,0,2,255,128,0,0,0,255,0,0,0,0,255,0,0,0,2,253,0,0,0,3,252,0,0,0,7,248,0,0,0,31,240,0,0,21,191,224,0,0,127,255,128,0,0,127,254,0,0,0,47,224,0,0,0, + // 0x0444 ф + 24,37,222,28,2,247,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,7,255,255,144,0,0,191,255,255,253,0,3,255,255,255,255,128,15,254,79,241,255,224,47,240,15,240,31,244,63,192,15,240,7,252,191,128,15,240,3,253,255,64,15,240,2,254,255,0,15,240,1,254,255,0,15,240,0,255,255,0,15,240,0,255,255,0,15,240,1,254,255,64,15,240,1,254,191,128,15,240,3,253,63,192,15,240,7,252,47,240,15,240,31,244,15,254,15,240,191,224,3,255,255,255,255,128,0,191,255,255,254,0,0,11,255,255,208,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,224,0,0, + // 0x0445 х + 18,20,100,20,1,0,255,128,0,31,240,63,208,0,63,192,31,240,0,255,128,15,248,1,255,0,3,253,3,252,0,1,255,15,244,0,0,191,159,240,0,0,63,255,192,0,0,31,255,64,0,0,11,254,0,0,0,15,255,0,0,0,47,255,128,0,0,127,255,208,0,0,255,79,240,0,2,254,11,248,0,7,252,3,253,0,15,244,0,255,0,47,224,0,191,192,127,192,0,63,224,255,64,0,15,240, + // 0x0446 ц + 21,27,162,24,3,249,255,0,0,31,208,0,255,0,0,31,224,0,255,0,0,31,224,0,255,0,0,31,224,0,255,0,0,31,224,0,255,0,0,31,224,0,255,0,0,31,224,0,255,0,0,31,224,0,255,0,0,31,224,0,255,0,0,31,224,0,255,0,0,31,224,0,255,0,0,31,224,0,255,0,0,31,224,0,255,0,0,31,224,0,255,0,0,31,224,0,255,0,0,31,224,0,255,0,0,31,224,0,255,255,255,255,255,64,255,255,255,255,255,64,255,255,255,255,255,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64,0,0,0,0,127,64, + // 0x0447 ч + 18,20,100,23,2,0,127,64,0,15,240,127,128,0,15,240,127,128,0,15,240,127,128,0,15,240,127,128,0,15,240,127,128,0,15,240,127,128,0,15,240,127,128,0,15,240,127,128,0,15,240,63,208,0,191,240,47,250,175,255,240,15,255,255,255,240,3,255,254,79,240,0,26,80,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240, + // 0x0448 ш + 28,20,140,34,3,0,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x0449 щ + 31,27,216,34,3,249,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,0,0,255,0,0,255,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,248, + // 0x044a ъ + 24,20,120,26,0,0,127,255,248,0,0,0,191,255,252,0,0,0,191,255,252,0,0,0,0,7,252,0,0,0,0,3,252,0,0,0,0,3,252,0,0,0,0,3,252,0,0,0,0,3,252,0,0,0,0,3,255,255,250,0,0,3,255,255,255,240,0,3,255,255,255,252,0,3,252,0,27,254,0,3,252,0,0,255,0,3,252,0,0,255,0,3,252,0,0,255,0,3,252,0,0,255,0,3,252,0,7,254,0,3,255,255,255,252,0,3,255,255,255,240,0,3,255,255,254,64, + // 0x044b ы + 24,20,120,30,3,0,255,0,0,0,1,253,255,0,0,0,1,253,255,0,0,0,1,253,255,0,0,0,1,253,255,0,0,0,1,253,255,0,0,0,1,253,255,0,0,0,1,253,255,0,0,0,1,253,255,255,254,64,1,253,255,255,255,244,1,253,255,255,255,253,1,253,255,0,7,255,1,253,255,0,0,255,1,253,255,0,0,191,65,253,255,0,0,191,65,253,255,0,0,255,1,253,255,0,7,255,1,253,255,255,255,252,1,253,255,255,255,244,1,253,255,255,254,64,1,253, + // 0x044c ь + 18,20,100,22,3,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,255,255,144,0,255,255,255,253,0,255,255,255,255,64,255,0,5,255,192,255,0,0,63,208,255,0,0,47,208,255,0,0,47,208,255,0,0,63,192,255,0,1,255,192,255,255,255,255,0,255,255,255,253,0,255,255,255,144,0, + // 0x044d э + 16,22,88,18,1,255,0,20,0,0,47,255,244,0,127,255,255,64,63,255,255,208,41,0,127,240,0,0,15,248,0,0,3,252,0,0,3,252,0,0,2,253,6,170,171,253,11,255,255,254,11,255,255,254,1,85,86,253,0,0,2,253,0,0,3,252,0,0,7,252,0,0,15,244,160,0,127,240,255,255,255,192,255,255,255,0,127,255,244,0,0,84,0,0, + // 0x044e ю + 27,22,154,31,3,255,0,0,0,0,20,0,0,255,0,0,31,255,208,0,255,0,0,255,255,252,0,255,0,3,255,255,255,0,255,0,15,253,1,255,192,255,0,31,240,0,63,208,255,0,63,208,0,31,240,255,0,63,192,0,15,240,255,0,63,192,0,15,240,255,255,255,128,0,11,244,255,255,255,128,0,11,244,255,255,255,128,0,11,244,255,85,191,128,0,11,244,255,0,63,192,0,15,244,255,0,63,192,0,15,240,255,0,63,208,0,31,240,255,0,31,240,0,63,208,255,0,15,252,0,255,192,255,0,3,255,255,255,0,255,0,0,255,255,252,0,255,0,0,47,255,224,0,0,0,0,0,84,0,0, + // 0x044f я + 18,20,100,21,0,0,0,27,255,255,240,1,255,255,255,240,7,255,255,255,240,15,253,0,15,240,15,240,0,15,240,31,224,0,15,240,31,208,0,15,240,15,240,0,15,240,15,248,0,15,240,7,255,255,255,240,1,255,255,255,240,0,47,255,255,240,0,31,224,15,240,0,63,192,15,240,0,255,64,15,240,2,254,0,15,240,3,252,0,15,240,15,244,0,15,240,47,240,0,15,240,127,192,0,15,240, + // 0x0450 ѐ + 255, + // 0x0451 ё + 18,28,140,21,2,255,1,248,7,224,0,3,252,11,240,0,2,252,11,240,0,0,160,2,144,0,0,0,0,0,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x0452 ђ + 255, + // 0x0453 ѓ + 255, + // 0x0454 є + 15,22,88,19,2,255,0,0,84,0,0,47,255,244,2,255,255,252,11,255,255,252,31,248,0,100,63,208,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,170,170,128,255,255,255,192,255,255,255,192,255,85,85,64,255,0,0,0,191,64,0,0,127,128,0,0,63,208,0,0,47,248,0,44,15,255,255,252,2,255,255,252,0,111,255,244,0,0,84,0, + // 0x0455 ѕ + 255, + // 0x0456 і + 4,28,28,10,3,0,20,255,255,255,125,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x0457 ї + 12,27,81,10,255,0,63,0,252,127,65,253,127,64,253,25,0,104,0,0,0,0,0,0,0,0,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0, + // 0x0458 ј + 255, + // 0x0459 љ + 255, + // 0x045a њ + 255, + // 0x045b ћ + 255, + // 0x045c ќ + 255, + // 0x045d ѝ + 255, + // 0x045e ў + 255, + // 0x045f џ + 255, + // 0x0460 Ѡ + 255, + // 0x0461 ѡ + 255, + // 0x0462 Ѣ + 255, + // 0x0463 ѣ + 255, + // 0x0464 Ѥ + 255, + // 0x0465 ѥ + 255, + // 0x0466 Ѧ + 255, + // 0x0467 ѧ + 255, + // 0x0468 Ѩ + 255, + // 0x0469 ѩ + 255, + // 0x046a Ѫ + 255, + // 0x046b ѫ + 255, + // 0x046c Ѭ + 255, + // 0x046d ѭ + 255, + // 0x046e Ѯ + 255, + // 0x046f ѯ + 255, + // 0x0470 Ѱ + 255, + // 0x0471 ѱ + 255, + // 0x0472 Ѳ + 255, + // 0x0473 ѳ + 255, + // 0x0474 Ѵ + 255, + // 0x0475 ѵ + 255, + // 0x0476 Ѷ + 255, + // 0x0477 ѷ + 255, + // 0x0478 Ѹ + 255, + // 0x0479 ѹ + 255, + // 0x047a Ѻ + 255, + // 0x047b ѻ + 255, + // 0x047c Ѽ + 255, + // 0x047d ѽ + 255, + // 0x047e Ѿ + 255, + // 0x047f ѿ + 255, + // 0x0480 Ҁ + 255, + // 0x0481 ҁ + 255, + // 0x0482 ҂ + 255, + // 0x0483 ҃ + 255, + // 0x0484 ҄ + 255, + // 0x0485 ҅ + 255, + // 0x0486 ҆ + 255, + // 0x0487 ҇ + 255, + // 0x0488 ҈ + 255, + // 0x0489 ҉ + 255, + // 0x048a Ҋ + 255, + // 0x048b ҋ + 255, + // 0x048c Ҍ + 255, + // 0x048d ҍ + 255, + // 0x048e Ҏ + 255, + // 0x048f ҏ + 255, + // 0x0490 Ґ + 17,32,160,20,3,0,0,0,0,63,64,0,0,0,63,64,0,0,0,63,64,0,0,0,63,64,0,0,0,63,64,21,85,85,191,64,127,255,255,255,64,127,255,255,255,64,127,255,255,255,64,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0, + // 0x0491 ґ + 13,26,104,17,3,0,0,0,26,128,0,0,47,192,0,0,47,192,0,0,47,192,0,0,47,192,0,0,47,192,255,255,255,192,255,255,255,192,255,255,255,192,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Greek_27.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Greek_27.cpp new file mode 100644 index 000000000000..4767eed15a02 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Greek_27.cpp @@ -0,0 +1,178 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Greek 37pt, capital 'A' height: 27px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 +extern const uint8_t NotoSans_Medium_Greek_27[10040] = { + 130,27,134,3,206,3,35,247, // unifont_t + // 0x0386 Ά + 27,27,189,27,0,0,10,164,0,42,128,0,0,15,240,0,127,224,0,0,47,224,0,191,240,0,0,63,192,0,255,244,0,0,63,64,1,255,248,0,0,126,0,3,250,252,0,0,104,0,7,244,253,0,0,0,0,11,240,255,0,0,0,0,15,240,191,0,0,0,0,31,208,63,128,0,0,0,63,192,63,192,0,0,0,63,128,47,208,0,0,0,191,64,15,224,0,0,0,255,0,15,240,0,0,1,254,0,7,244,0,0,2,253,0,3,252,0,0,3,255,255,255,252,0,0,7,255,255,255,254,0,0,15,255,255,255,255,0,0,15,245,85,85,255,64,0,47,224,0,0,127,128,0,63,192,0,0,63,192,0,127,192,0,0,47,208,0,191,64,0,0,31,240,0,255,0,0,0,15,240,1,254,0,0,0,11,248,3,253,0,0,0,3,252, + // 0x0387 · + 255, + // 0x0388 Έ + 25,27,189,27,0,0,10,164,5,85,85,85,64,15,240,15,255,255,255,192,47,224,15,255,255,255,192,63,192,15,255,255,255,192,63,64,15,244,0,0,0,126,0,15,244,0,0,0,104,0,15,244,0,0,0,0,0,15,244,0,0,0,0,0,15,244,0,0,0,0,0,15,244,0,0,0,0,0,15,244,0,0,0,0,0,15,249,85,85,0,0,0,15,255,255,255,64,0,0,15,255,255,255,64,0,0,15,255,255,255,64,0,0,15,244,0,0,0,0,0,15,244,0,0,0,0,0,15,244,0,0,0,0,0,15,244,0,0,0,0,0,15,244,0,0,0,0,0,15,244,0,0,0,0,0,15,244,0,0,0,0,0,15,244,0,0,0,0,0,15,249,85,85,64,0,0,15,255,255,255,192,0,0,15,255,255,255,192,0,0,15,255,255,255,192, + // 0x0389 Ή + 31,27,216,34,0,0,10,164,5,80,0,0,1,84,15,240,15,244,0,0,3,252,47,224,15,244,0,0,3,252,63,192,15,244,0,0,3,252,63,64,15,244,0,0,3,252,126,0,15,244,0,0,3,252,104,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252,0,0,15,249,85,85,91,252,0,0,15,255,255,255,255,252,0,0,15,255,255,255,255,252,0,0,15,255,255,255,255,252,0,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252,0,0,15,244,0,0,3,252, + // 0x038a Ί + 19,27,135,21,0,0,10,164,21,85,84,15,240,63,255,252,47,224,63,255,252,63,192,6,255,144,63,64,0,255,0,126,0,0,255,0,104,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,31,255,244,0,0,63,255,252,0,0,63,255,252, + // 0x038b ΋ + 255, + // 0x038c Ό + 32,28,224,34,0,255,10,164,0,1,175,233,0,0,15,240,0,47,255,255,224,0,47,224,1,255,255,255,252,0,63,192,7,255,250,191,255,64,63,64,31,253,0,2,255,192,126,0,63,240,0,0,63,240,104,0,127,192,0,0,31,244,0,0,255,128,0,0,11,248,0,0,255,0,0,0,7,252,0,1,255,0,0,0,3,253,0,2,254,0,0,0,3,253,0,3,253,0,0,0,2,254,0,3,253,0,0,0,2,254,0,3,253,0,0,0,2,254,0,3,253,0,0,0,2,254,0,3,253,0,0,0,2,254,0,2,254,0,0,0,2,254,0,2,254,0,0,0,3,253,0,1,255,0,0,0,3,252,0,0,255,64,0,0,11,252,0,0,191,192,0,0,15,248,0,0,127,224,0,0,47,240,0,0,47,248,0,0,191,208,0,0,15,255,64,11,255,128,0,0,3,255,255,255,254,0,0,0,0,191,255,255,244,0,0,0,0,11,255,255,128,0,0,0,0,0,21,64,0,0, + // 0x038d ΍ + 255, + // 0x038e Ύ + 30,27,216,30,0,0,10,164,21,64,0,0,5,80,15,240,63,208,0,0,47,224,47,224,31,240,0,0,63,192,63,192,15,244,0,0,191,128,63,64,7,252,0,0,255,0,126,0,3,253,0,2,253,0,104,0,0,255,0,3,252,0,0,0,0,191,128,15,244,0,0,0,0,63,192,31,240,0,0,0,0,47,224,63,208,0,0,0,0,15,240,127,128,0,0,0,0,11,248,255,0,0,0,0,0,3,254,254,0,0,0,0,0,1,255,252,0,0,0,0,0,0,255,248,0,0,0,0,0,0,127,240,0,0,0,0,0,0,63,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0, + // 0x038f Ώ + 31,27,216,32,0,0,10,164,0,1,191,164,0,0,15,240,0,127,255,255,128,0,47,224,3,255,255,255,244,0,63,192,15,255,234,255,254,0,63,64,63,248,0,7,255,64,126,0,191,208,0,0,255,192,104,0,255,128,0,0,63,224,0,2,255,0,0,0,31,240,0,3,253,0,0,0,15,244,0,3,252,0,0,0,11,248,0,7,252,0,0,0,7,252,0,7,252,0,0,0,7,252,0,7,248,0,0,0,3,252,0,7,248,0,0,0,3,252,0,7,252,0,0,0,3,252,0,3,252,0,0,0,7,248,0,3,252,0,0,0,11,244,0,2,253,0,0,0,15,240,0,0,255,0,0,0,31,224,0,0,191,64,0,0,63,192,0,0,63,192,0,0,127,128,0,0,15,240,0,1,254,0,0,0,7,252,0,7,248,0,0,5,86,255,0,47,245,84,0,11,255,255,64,63,255,252,0,11,255,255,64,63,255,252,0,11,255,255,64,63,255,252, + // 0x0390 ΐ + 255, + // 0x0391 Α + 24,27,162,24,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x0392 Β + 20,27,135,24,3,0,21,85,84,0,0,127,255,255,248,0,127,255,255,255,64,127,255,255,255,208,127,128,1,191,240,127,128,0,31,244,127,128,0,15,244,127,128,0,11,244,127,128,0,11,244,127,128,0,15,240,127,128,0,47,224,127,149,86,255,128,127,255,255,253,0,127,255,255,249,0,127,255,255,255,192,127,128,0,127,240,127,128,0,15,248,127,128,0,3,252,127,128,0,3,252,127,128,0,3,253,127,128,0,3,252,127,128,0,11,252,127,128,0,31,248,127,149,86,255,240,127,255,255,255,208,127,255,255,255,0,127,255,255,228,0, + // 0x0393 Γ + 15,27,108,19,3,0,21,85,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0, + // 0x0394 Δ + 24,27,162,24,0,0,0,0,10,160,0,0,0,0,31,244,0,0,0,0,63,252,0,0,0,0,127,252,0,0,0,0,191,254,0,0,0,0,254,191,0,0,0,1,252,127,64,0,0,3,252,63,192,0,0,3,248,47,192,0,0,11,240,15,224,0,0,15,240,15,240,0,0,31,208,7,244,0,0,63,192,3,252,0,0,63,128,2,252,0,0,191,64,1,254,0,0,255,0,0,255,0,1,254,0,0,191,64,3,252,0,0,63,128,3,252,0,0,63,192,11,244,0,0,31,224,15,240,0,0,15,240,31,224,0,0,15,244,47,208,0,0,7,248,63,234,170,170,171,252,127,255,255,255,255,253,191,255,255,255,255,254,191,255,255,255,255,254, + // 0x0395 Ε + 16,27,108,21,3,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x0396 Ζ + 19,27,135,21,1,0,21,85,85,85,84,127,255,255,255,248,127,255,255,255,248,127,255,255,255,248,0,0,0,47,240,0,0,0,63,192,0,0,0,255,128,0,0,2,255,0,0,0,3,252,0,0,0,15,248,0,0,0,47,240,0,0,0,63,192,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,192,0,0,0,255,64,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,229,85,85,84,191,255,255,255,252,191,255,255,255,252,191,255,255,255,252, + // 0x0397 Η + 21,27,162,28,3,0,21,0,0,0,21,64,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,149,85,85,127,192,127,255,255,255,255,192,127,255,255,255,255,192,127,255,255,255,255,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192, + // 0x0398 Θ + 25,28,196,29,2,255,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,131,255,255,240,127,192,255,67,255,255,240,127,192,255,67,255,255,240,127,192,191,128,85,85,64,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x0399 Ι + 11,27,81,13,1,0,85,85,84,191,255,248,191,255,248,11,255,128,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,2,254,0,47,255,228,191,255,248,191,255,248, + // 0x039a Κ + 20,27,135,23,3,0,21,0,0,1,85,127,128,0,7,253,127,128,0,15,244,127,128,0,63,224,127,128,0,255,128,127,128,2,255,0,127,128,11,252,0,127,128,31,240,0,127,128,127,192,0,127,128,255,64,0,127,131,253,0,0,127,143,248,0,0,127,175,244,0,0,127,255,252,0,0,127,255,254,0,0,127,245,255,64,0,127,192,191,192,0,127,128,63,224,0,127,128,31,244,0,127,128,11,252,0,127,128,3,255,0,127,128,0,255,128,127,128,0,127,192,127,128,0,47,240,127,128,0,15,248,127,128,0,7,253,127,128,0,2,255, + // 0x039b Λ + 23,27,162,23,0,0,0,0,26,144,0,0,0,0,63,240,0,0,0,0,63,244,0,0,0,0,191,248,0,0,0,0,255,252,0,0,0,1,253,253,0,0,0,2,252,255,0,0,0,3,248,127,0,0,0,7,244,63,128,0,0,11,240,63,192,0,0,15,224,31,192,0,0,31,208,15,224,0,0,63,192,15,240,0,0,63,128,7,244,0,0,191,64,3,248,0,0,255,0,3,252,0,0,254,0,1,253,0,2,253,0,0,255,0,3,252,0,0,255,0,7,248,0,0,127,64,11,244,0,0,63,192,15,240,0,0,63,192,31,224,0,0,47,224,47,208,0,0,15,240,63,192,0,0,15,244,127,128,0,0,11,248,255,64,0,0,3,252, + // 0x039c Μ + 28,27,189,34,3,0,21,80,0,0,0,5,84,127,248,0,0,0,47,253,127,252,0,0,0,63,253,127,253,0,0,0,127,253,127,254,0,0,0,191,253,127,191,0,0,0,254,253,127,127,64,0,1,253,253,127,63,128,0,3,249,253,127,47,192,0,3,241,253,127,15,208,0,11,241,253,127,15,240,0,15,225,253,127,7,240,0,31,193,253,127,3,244,0,47,193,253,127,3,252,0,63,65,253,127,1,252,0,127,1,253,127,0,254,0,190,1,253,127,0,191,0,253,1,253,127,0,127,65,252,1,253,127,0,63,131,248,1,253,127,0,47,195,240,1,253,127,0,31,219,240,1,253,127,0,15,239,208,1,253,127,0,11,255,192,1,253,127,0,3,255,128,1,253,127,0,3,255,64,1,253,127,0,2,255,0,1,253,127,0,0,254,0,1,253, + // 0x039d Ν + 22,27,162,29,3,0,21,64,0,0,1,80,127,240,0,0,11,240,127,248,0,0,11,240,127,252,0,0,11,240,127,255,0,0,11,240,127,255,64,0,11,240,127,127,192,0,11,240,127,63,224,0,11,240,127,15,244,0,11,240,127,11,252,0,11,240,127,3,254,0,11,240,127,1,255,0,11,240,127,0,191,192,11,240,127,0,63,208,11,240,127,0,31,240,7,240,127,0,15,248,7,240,127,0,3,253,7,240,127,0,2,255,7,240,127,0,0,255,135,240,127,0,0,127,199,240,127,0,0,47,247,240,127,0,0,15,251,240,127,0,0,7,255,240,127,0,0,3,255,240,127,0,0,0,255,240,127,0,0,0,191,240,127,0,0,0,63,240, + // 0x039e Ξ + 19,27,135,23,2,0,21,85,85,85,80,63,255,255,255,240,63,255,255,255,240,63,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,170,170,170,64,11,255,255,255,128,11,255,255,255,128,11,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,84,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252, + // 0x039f Ο + 25,28,196,29,2,255,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x03a0 Π + 21,27,162,27,3,0,21,85,85,85,85,64,127,255,255,255,255,192,127,255,255,255,255,192,127,255,255,255,255,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192, + // 0x03a1 Ρ + 18,27,135,23,3,0,21,85,80,0,0,127,255,255,208,0,127,255,255,253,0,127,255,255,255,0,127,128,6,255,192,127,128,0,127,208,127,128,0,47,224,127,128,0,31,224,127,128,0,31,240,127,128,0,31,224,127,128,0,47,224,127,128,0,63,208,127,128,1,255,192,127,149,111,255,64,127,255,255,253,0,127,255,255,240,0,127,255,250,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0, + // 0x03a2 ΢ + 255, + // 0x03a3 Σ + 19,27,135,21,1,0,21,85,85,85,80,127,255,255,255,248,127,255,255,255,248,127,255,255,255,248,47,240,0,0,0,15,252,0,0,0,3,254,0,0,0,0,255,128,0,0,0,127,208,0,0,0,31,244,0,0,0,11,252,0,0,0,2,255,0,0,0,0,255,192,0,0,0,127,192,0,0,0,255,0,0,0,3,253,0,0,0,15,244,0,0,0,47,224,0,0,0,127,192,0,0,1,255,0,0,0,3,252,0,0,0,15,244,0,0,0,47,224,0,0,0,127,213,85,85,84,191,255,255,255,252,191,255,255,255,252,191,255,255,255,252, + // 0x03a4 Τ + 21,27,162,21,0,0,21,85,85,85,85,0,191,255,255,255,255,64,191,255,255,255,255,64,191,255,255,255,255,64,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0, + // 0x03a5 Υ + 21,27,162,22,0,0,85,0,0,0,21,64,191,192,0,0,63,192,63,208,0,0,191,128,31,240,0,1,255,0,15,244,0,3,253,0,7,252,0,7,252,0,3,253,0,15,244,0,1,255,0,31,240,0,0,191,64,63,208,0,0,63,192,127,128,0,0,47,224,255,0,0,0,15,241,254,0,0,0,11,251,252,0,0,0,3,255,248,0,0,0,1,255,240,0,0,0,0,255,208,0,0,0,0,127,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x03a6 Φ + 28,28,196,32,2,255,0,0,0,169,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,1,175,255,250,64,0,0,47,255,255,255,248,0,2,255,255,255,255,255,64,11,255,229,255,91,255,224,31,248,0,255,0,63,244,63,208,0,255,0,11,252,191,128,0,255,0,3,253,255,64,0,255,0,1,254,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,255,0,0,255,0,0,255,191,64,0,255,0,2,254,127,192,0,255,0,3,252,63,240,0,255,0,15,248,15,253,0,255,0,127,240,7,255,250,255,175,255,208,1,255,255,255,255,255,0,0,31,255,255,255,244,0,0,0,90,255,165,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,0, + // 0x03a7 Χ + 22,27,162,23,0,0,21,64,0,0,5,80,47,224,0,0,63,192,15,244,0,0,191,128,7,252,0,0,255,0,3,254,0,3,253,0,0,255,0,7,248,0,0,191,128,15,240,0,0,63,208,47,208,0,0,15,240,127,128,0,0,11,248,255,0,0,0,3,254,253,0,0,0,1,255,252,0,0,0,0,191,240,0,0,0,0,127,240,0,0,0,0,255,244,0,0,0,2,255,252,0,0,0,3,254,254,0,0,0,15,240,255,64,0,0,31,224,127,192,0,0,63,192,47,224,0,0,191,64,15,244,0,1,255,0,7,252,0,3,252,0,3,254,0,11,248,0,0,255,0,31,240,0,0,191,192,63,208,0,0,63,208,191,128,0,0,31,240, + // 0x03a8 Ψ + 25,27,189,31,3,0,85,0,1,80,0,21,64,191,0,7,244,0,127,128,191,0,7,244,0,127,128,191,0,7,244,0,127,128,191,0,7,244,0,127,128,191,0,7,244,0,127,128,191,0,7,244,0,127,128,191,0,7,244,0,127,128,191,0,7,244,0,127,128,191,0,7,244,0,127,128,191,64,7,244,0,127,128,191,64,7,244,0,127,128,127,128,7,244,0,191,64,63,192,7,244,0,255,0,63,224,7,244,2,255,0,31,244,7,244,7,253,0,11,255,91,249,191,248,0,2,255,255,255,255,224,0,0,127,255,255,255,64,0,0,6,255,255,228,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0, + // 0x03a9 Ω + 25,27,189,27,1,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,191,240,0,15,253,0,0,31,252,0,31,244,0,0,7,253,0,63,224,0,0,2,255,0,63,192,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,64,0,0,0,127,128,191,64,0,0,0,127,128,191,128,0,0,0,127,128,127,128,0,0,0,191,64,63,192,0,0,0,255,0,63,192,0,0,0,255,0,31,224,0,0,2,253,0,15,240,0,0,3,252,0,7,248,0,0,11,244,0,1,254,0,0,47,208,0,0,127,128,0,191,64,0,85,111,240,3,254,85,64,255,255,240,3,255,255,192,255,255,240,3,255,255,192,255,255,240,3,255,255,192, + // 0x03aa Ϊ + 255, + // 0x03ab Ϋ + 255, + // 0x03ac ά + 21,30,180,23,2,255,0,0,26,160,0,0,0,0,47,224,0,0,0,0,63,192,0,0,0,0,127,64,0,0,0,0,191,0,0,0,0,0,252,0,0,0,0,0,164,0,0,0,0,0,0,0,0,0,0,1,64,0,0,0,0,191,253,7,240,0,3,255,255,203,240,0,15,255,255,255,240,0,47,248,1,255,240,0,63,208,0,127,240,0,127,192,0,47,240,0,191,64,0,31,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,191,64,0,31,240,0,191,128,0,47,240,0,63,208,0,63,240,0,47,244,1,255,244,0,15,255,255,251,255,64,3,255,255,195,255,128,0,191,254,1,255,64,0,1,64,0,20,0, + // 0x03ad έ + 16,30,120,18,1,255,0,0,26,160,0,0,63,224,0,0,63,192,0,0,127,64,0,0,191,0,0,0,252,0,0,0,164,0,0,0,0,0,0,0,80,0,0,191,255,228,3,255,255,253,15,255,255,252,31,240,0,120,47,208,0,0,47,192,0,0,31,208,0,0,15,244,0,0,3,255,254,0,0,191,255,0,3,255,255,0,31,249,0,0,63,192,0,0,127,128,0,0,127,128,0,0,127,192,0,0,63,224,0,28,47,255,255,252,11,255,255,252,1,191,255,244,0,1,84,0, + // 0x03ae ή + 17,38,190,23,3,247,0,2,170,0,0,0,3,253,0,0,0,7,248,0,0,0,11,240,0,0,0,15,208,0,0,0,31,192,0,0,0,26,0,0,0,0,0,0,0,0,0,0,20,0,0,253,11,255,224,0,253,63,255,252,0,255,255,255,255,0,255,248,2,255,64,255,208,0,191,128,255,192,0,63,192,255,64,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192, + // 0x03af ί + 9,30,90,13,3,255,2,169,0,7,252,0,11,244,0,15,224,0,31,192,0,47,64,0,26,0,0,0,0,0,0,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,191,128,0,127,255,192,47,255,192,11,255,192,0,21,0, + // 0x03b0 ΰ + 255, + // 0x03b1 α + 21,22,132,23,2,255,0,1,64,0,0,0,0,191,253,7,240,0,3,255,255,203,240,0,15,255,255,255,240,0,47,248,1,255,240,0,63,208,0,127,240,0,127,192,0,47,240,0,191,64,0,31,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,191,64,0,31,240,0,191,128,0,47,240,0,63,208,0,63,240,0,47,244,1,255,244,0,15,255,255,251,255,64,3,255,255,195,255,128,0,191,254,1,255,64,0,1,64,0,20,0, + // 0x03b2 β + 18,38,190,23,3,247,0,0,80,0,0,0,127,255,128,0,3,255,255,248,0,15,255,255,253,0,63,244,7,255,0,127,192,0,255,64,191,128,0,191,128,255,0,0,127,128,255,0,0,127,128,255,0,0,127,128,255,0,0,255,0,255,0,1,254,0,255,1,91,248,0,255,11,255,144,0,255,11,255,144,0,255,11,255,253,0,255,0,1,255,64,255,0,0,63,192,255,0,0,47,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,224,255,0,0,63,208,255,224,1,255,192,255,255,255,255,0,255,255,255,253,0,255,111,255,224,0,255,1,84,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0, + // 0x03b3 γ + 19,28,140,20,0,248,255,0,0,7,244,127,128,0,7,244,63,192,0,7,244,63,192,0,11,244,31,224,0,11,240,15,240,0,15,240,11,240,0,15,240,7,244,0,15,240,3,252,0,31,208,2,252,0,47,192,1,253,0,63,192,0,255,0,63,128,0,191,0,191,0,0,63,64,254,0,0,63,195,252,0,0,47,199,248,0,0,15,239,240,0,0,15,255,192,0,0,7,255,64,0,0,3,253,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,2,252,0,0, + // 0x03b4 δ + 19,30,150,22,1,255,0,0,5,0,0,0,2,255,253,0,0,31,255,255,208,0,127,255,255,240,0,255,64,11,224,1,254,0,0,192,1,254,0,0,0,1,255,0,0,0,0,255,128,0,0,0,127,240,0,0,0,31,254,0,0,0,7,255,224,0,0,47,255,252,0,0,255,231,255,0,3,254,0,255,192,15,244,0,47,240,47,224,0,15,244,63,192,0,7,248,63,192,0,3,252,127,128,0,3,252,127,128,0,3,252,127,128,0,3,252,127,192,0,3,252,63,208,0,11,248,47,240,0,15,244,15,253,0,127,224,7,255,255,255,192,1,255,255,255,0,0,47,255,228,0,0,0,84,0,0, + // 0x03b5 ε + 16,22,88,18,1,255,0,0,80,0,0,191,255,228,3,255,255,253,15,255,255,252,31,240,0,120,47,208,0,0,47,192,0,0,31,208,0,0,15,244,0,0,3,255,254,0,0,191,255,0,3,255,255,0,31,249,0,0,63,192,0,0,127,128,0,0,127,128,0,0,127,192,0,0,63,224,0,28,47,255,255,252,11,255,255,252,1,191,255,244,0,1,84,0, + // 0x03b6 ζ + 15,36,144,17,2,248,63,255,255,252,63,255,255,252,63,255,255,252,0,0,15,244,0,0,47,224,0,0,127,128,0,0,255,0,0,3,252,0,0,11,244,0,0,47,224,0,0,127,192,0,0,255,0,0,3,253,0,0,7,252,0,0,15,240,0,0,47,208,0,0,63,192,0,0,127,128,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,128,0,0,191,224,0,0,63,254,0,0,31,255,249,0,3,255,255,208,0,111,255,244,0,1,191,252,0,0,7,252,0,0,3,252,0,0,3,252,0,0,3,248,0,0,7,244,0,0,15,240,0,0,5,64, + // 0x03b7 η + 17,30,150,23,3,247,0,0,20,0,0,253,11,255,224,0,253,63,255,252,0,255,255,255,255,0,255,248,2,255,64,255,208,0,191,128,255,192,0,63,192,255,64,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192, + // 0x03b8 θ + 18,30,150,22,2,255,0,0,80,0,0,0,47,255,128,0,1,255,255,244,0,7,255,255,252,0,15,248,2,255,0,31,224,0,191,64,63,192,0,63,192,63,128,0,47,192,127,64,0,31,224,191,64,0,15,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,191,0,0,15,240,127,64,0,31,224,63,128,0,47,208,63,192,0,63,192,31,224,0,127,128,15,248,1,255,0,3,255,255,253,0,1,255,255,248,0,0,47,255,144,0,0,0,84,0,0, + // 0x03b9 ι + 9,21,63,13,3,255,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,191,128,0,127,255,192,47,255,192,11,255,192,0,21,0, + // 0x03ba κ + 17,20,100,21,3,0,255,0,0,255,64,255,0,3,254,0,255,0,11,252,0,255,0,47,240,0,255,0,127,192,0,255,1,255,64,0,255,3,253,0,0,255,15,248,0,0,255,47,224,0,0,255,191,224,0,0,255,255,244,0,0,255,251,252,0,0,255,210,255,0,0,255,0,255,128,0,255,0,63,208,0,255,0,31,240,0,255,0,11,252,0,255,0,3,254,0,255,0,0,255,64,255,0,0,127,192, + // 0x03bb λ + 20,30,150,20,0,255,5,0,0,0,0,255,248,0,0,0,255,255,0,0,0,255,255,192,0,0,0,127,224,0,0,0,15,240,0,0,0,11,244,0,0,0,3,252,0,0,0,2,252,0,0,0,2,254,0,0,0,3,255,0,0,0,7,255,64,0,0,11,255,128,0,0,15,239,192,0,0,31,207,208,0,0,63,143,240,0,0,63,75,240,0,0,191,7,248,0,0,255,3,252,0,1,253,2,253,0,2,252,0,254,0,3,252,0,255,0,7,248,0,191,64,15,240,0,63,192,15,240,0,63,208,47,224,0,31,224,63,208,0,15,255,63,192,0,11,255,191,128,0,3,255,0,0,0,0,84, + // 0x03bc μ + 20,29,145,24,3,247,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,64,0,127,192,255,128,0,255,208,255,224,7,255,224,255,255,255,239,255,255,255,255,79,255,255,63,253,3,255,255,1,64,0,20,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0, + // 0x03bd ν + 19,20,100,20,0,0,255,0,0,7,244,127,128,0,7,244,63,192,0,7,244,63,192,0,11,244,31,224,0,11,240,15,240,0,15,240,11,240,0,15,240,7,244,0,15,240,3,252,0,31,224,2,252,0,47,192,1,253,0,63,192,0,255,0,63,128,0,191,0,191,0,0,63,64,254,0,0,63,195,252,0,0,47,199,248,0,0,15,239,240,0,0,15,255,192,0,0,7,255,64,0,0,3,253,0,0, + // 0x03be ξ + 16,36,144,19,2,248,63,255,255,253,63,255,255,253,63,255,255,168,0,191,64,0,7,244,0,0,15,224,0,0,47,192,0,0,63,192,0,0,63,192,0,0,47,208,0,0,31,240,0,0,11,254,80,0,1,255,255,248,0,127,255,248,3,255,255,248,15,248,0,0,63,208,0,0,127,128,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,128,0,0,191,208,0,0,63,254,0,0,15,255,249,0,2,255,255,224,0,47,255,248,0,0,127,252,0,0,3,252,0,0,3,252,0,0,3,252,0,0,3,252,0,0,7,244,0,0,15,240,0,0,5,80, + // 0x03bf ο + 19,22,110,23,2,255,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x03c0 π + 25,21,147,25,0,255,127,255,255,255,255,255,0,127,255,255,255,255,255,64,127,255,255,255,255,255,64,0,127,128,0,191,64,0,0,63,128,0,191,64,0,0,63,128,0,191,64,0,0,63,128,0,191,64,0,0,63,128,0,191,64,0,0,63,128,0,191,64,0,0,63,128,0,191,64,0,0,63,128,0,191,64,0,0,63,128,0,191,64,0,0,63,128,0,191,64,0,0,63,128,0,191,64,0,0,63,128,0,191,64,0,0,63,128,0,191,64,0,0,63,128,0,191,128,0,0,63,128,0,127,255,0,0,63,128,0,63,255,0,0,63,128,0,15,254,0,0,0,0,0,0,80,0, + // 0x03c1 ρ + 19,30,150,22,2,247,0,0,80,0,0,0,47,255,208,0,1,255,255,252,0,7,255,255,255,0,15,248,1,255,192,47,240,0,63,208,63,192,0,31,224,63,192,0,15,240,127,128,0,15,240,127,128,0,11,244,127,64,0,11,244,127,64,0,11,244,127,64,0,11,244,127,64,0,15,244,127,64,0,15,240,127,64,0,31,240,127,128,0,63,208,127,244,1,255,192,127,255,255,255,0,127,255,255,252,0,127,95,255,208,0,127,64,84,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0,127,64,0,0,0, + // 0x03c2 ς + 15,29,116,18,2,248,0,0,20,0,0,47,255,228,1,255,255,248,11,255,255,244,31,249,1,176,63,224,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,128,0,0,127,192,0,0,63,240,0,0,31,254,0,0,11,255,249,0,1,255,255,208,0,47,255,244,0,0,127,252,0,0,7,252,0,0,3,252,0,0,3,252,0,0,3,248,0,0,7,244,0,0,15,240,0,0,5,64, + // 0x03c3 σ + 20,21,105,23,2,255,0,6,255,255,255,0,191,255,255,255,7,255,255,255,255,15,254,64,254,0,63,240,0,63,128,127,192,0,47,192,191,128,0,31,224,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,11,240,255,0,0,15,240,255,0,0,15,240,191,64,0,15,240,127,128,0,47,224,63,208,0,127,192,47,244,1,255,128,11,255,255,255,0,2,255,255,248,0,0,127,255,208,0,0,1,84,0,0, + // 0x03c4 τ + 18,21,105,19,0,255,127,255,255,255,208,127,255,255,255,208,127,255,255,255,208,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,252,0,0,0,7,255,255,64,0,2,255,255,64,0,0,191,255,0,0,0,1,80,0, + // 0x03c5 υ + 17,21,105,23,3,255,255,0,0,255,0,255,0,0,255,0,255,0,0,191,64,255,0,0,127,128,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,128,255,0,0,255,64,191,128,1,255,0,127,208,11,253,0,63,255,255,248,0,15,255,255,224,0,2,255,255,64,0,0,5,64,0,0, + // 0x03c6 φ + 24,37,222,28,2,247,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,7,255,255,144,0,0,191,255,255,253,0,3,255,255,255,255,128,15,254,15,241,191,224,47,240,15,240,31,244,63,192,15,240,7,252,191,128,15,240,3,253,255,64,15,240,1,254,255,0,15,240,1,255,255,0,15,240,0,255,255,0,15,240,0,255,255,0,15,240,0,255,255,64,15,240,1,254,191,128,15,240,3,253,63,192,15,240,7,252,47,240,15,240,15,244,15,253,15,240,191,240,3,255,255,255,255,192,0,191,255,255,254,0,0,11,255,255,208,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,224,0,0, + // 0x03c7 χ + 21,29,174,22,1,247,255,64,0,0,63,192,255,224,0,0,191,64,255,240,0,1,254,0,11,252,0,3,252,0,3,253,0,7,248,0,1,255,0,15,240,0,0,255,64,31,208,0,0,127,192,63,192,0,0,63,192,191,0,0,0,31,224,254,0,0,0,15,242,252,0,0,0,7,255,244,0,0,0,3,255,240,0,0,0,1,255,208,0,0,0,0,255,128,0,0,0,0,255,128,0,0,0,2,255,192,0,0,0,7,255,224,0,0,0,15,255,240,0,0,0,47,215,248,0,0,0,63,131,252,0,0,0,255,1,254,0,0,1,253,0,255,0,0,3,252,0,191,128,0,11,244,0,63,208,0,31,224,0,47,249,64,63,192,0,15,255,192,191,64,0,3,255,192,255,0,0,0,191,128, + // 0x03c8 ψ + 23,37,222,29,3,247,0,0,47,192,0,0,0,0,47,192,0,0,0,0,47,192,0,0,0,0,47,192,0,0,0,0,47,192,0,0,0,0,47,192,0,0,0,0,47,192,0,0,0,0,47,192,0,0,254,0,47,192,11,240,254,0,47,192,11,240,254,0,47,192,7,244,254,0,47,192,3,248,254,0,47,192,3,252,254,0,47,192,3,252,254,0,47,192,3,252,254,0,47,192,2,252,254,0,47,192,2,252,254,0,47,192,2,252,254,0,47,192,2,252,254,0,47,192,2,252,255,0,47,192,3,252,255,0,47,192,3,248,191,64,47,192,11,244,63,192,47,192,47,240,47,244,47,193,255,208,15,255,255,255,255,64,3,255,255,255,253,0,0,111,255,255,144,0,0,0,47,208,0,0,0,0,47,192,0,0,0,0,47,192,0,0,0,0,47,192,0,0,0,0,47,192,0,0,0,0,47,192,0,0,0,0,47,192,0,0,0,0,47,192,0,0,0,0,31,192,0,0, + // 0x03c9 ω + 26,21,147,30,2,255,2,252,0,0,2,252,0,7,244,0,0,0,254,0,15,240,0,0,0,191,64,31,208,0,0,0,63,128,63,192,0,0,0,47,192,63,128,0,0,0,31,208,127,64,0,84,0,15,224,191,64,2,252,0,15,240,191,0,2,252,0,15,240,191,0,2,252,0,15,240,191,0,2,252,0,15,240,191,0,2,252,0,15,240,191,64,2,252,0,15,240,127,64,3,252,0,15,224,63,128,3,252,0,31,208,63,192,7,254,0,63,192,31,240,15,239,64,191,128,15,255,255,159,255,255,0,3,255,255,11,255,253,0,0,191,248,2,255,240,0,0,5,64,0,5,0,0, + // 0x03ca ϊ + 255, + // 0x03cb ϋ + 255, + // 0x03cc ό + 19,30,150,23,2,255,0,0,10,164,0,0,0,31,240,0,0,0,47,208,0,0,0,63,192,0,0,0,63,0,0,0,0,190,0,0,0,0,104,0,0,0,0,0,0,0,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x03cd ύ + 17,30,150,23,3,255,0,0,106,128,0,0,0,255,128,0,0,0,255,0,0,0,1,253,0,0,0,2,248,0,0,0,3,240,0,0,0,2,144,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0,255,0,255,0,0,255,0,255,0,0,191,64,255,0,0,127,128,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,128,255,0,0,255,64,191,128,1,255,0,127,208,11,253,0,63,255,255,248,0,15,255,255,224,0,2,255,255,64,0,0,5,64,0,0, + // 0x03ce ώ + 26,30,210,30,2,255,0,0,0,10,164,0,0,0,0,0,31,240,0,0,0,0,0,47,208,0,0,0,0,0,63,128,0,0,0,0,0,127,0,0,0,0,0,0,189,0,0,0,0,0,0,104,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,252,0,0,2,252,0,7,244,0,0,0,254,0,15,240,0,0,0,191,64,31,208,0,0,0,63,128,63,192,0,0,0,47,192,63,128,0,0,0,31,208,127,64,0,84,0,15,224,191,64,2,252,0,15,240,191,0,2,252,0,15,240,191,0,2,252,0,15,240,191,0,2,252,0,15,240,191,0,2,252,0,15,240,191,64,2,252,0,15,240,127,64,3,252,0,15,224,63,128,3,252,0,31,208,63,192,7,254,0,63,192,31,240,15,239,64,191,128,15,255,255,159,255,255,0,3,255,255,11,255,253,0,0,191,248,2,255,240,0,0,5,64,0,5,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Katakana_27.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Katakana_27.cpp new file mode 100644 index 000000000000..7fd80a5ebf94 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Katakana_27.cpp @@ -0,0 +1,238 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Katakana 37pt, capital 'A' height: 27px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 +extern const uint8_t NotoSans_Medium_Katakana_27[13151] = { + 162,27,160,48,104,136,35,247, // unifont_t + // 0x30a0 ゠ + 160,48,17,8,40,37,10,10,191,255,255,255,128,21,85,85,85,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,128,21,85,85,85,0, + // 0x30a1 ァ + 161,48,26,25,175,37,6,252,191,255,255,255,255,255,192,191,255,255,255,255,255,240,191,255,255,255,255,255,240,101,85,85,85,85,191,192,0,0,0,0,0,191,64,0,0,5,80,1,255,0,0,0,15,240,7,252,0,0,0,15,240,31,244,0,0,0,15,224,127,208,0,0,0,15,225,255,128,0,0,0,15,224,254,0,0,0,0,15,224,40,0,0,0,0,31,208,0,0,0,0,0,47,192,0,0,0,0,0,63,192,0,0,0,0,0,63,128,0,0,0,0,0,255,64,0,0,0,0,1,255,0,0,0,0,0,7,253,0,0,0,0,0,31,248,0,0,0,0,0,191,240,0,0,0,0,11,255,192,0,0,0,0,3,254,0,0,0,0,0,0,180,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30a2 ア + 162,48,31,30,240,37,4,254,186,170,170,170,170,170,170,128,191,255,255,255,255,255,255,240,191,255,255,255,255,255,255,248,191,255,255,255,255,255,255,240,0,0,0,0,0,0,127,208,0,0,0,0,0,0,255,128,0,0,0,0,0,2,255,0,0,0,0,170,0,7,252,0,0,0,0,255,0,31,244,0,0,0,0,255,0,127,224,0,0,0,0,255,2,255,128,0,0,0,0,255,15,255,0,0,0,0,0,254,11,248,0,0,0,0,0,254,2,224,0,0,0,0,1,254,0,0,0,0,0,0,1,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,11,248,0,0,0,0,0,0,15,244,0,0,0,0,0,0,47,240,0,0,0,0,0,0,127,208,0,0,0,0,0,1,255,128,0,0,0,0,0,11,255,0,0,0,0,0,0,127,252,0,0,0,0,0,6,255,240,0,0,0,0,0,3,255,192,0,0,0,0,0,0,189,0,0,0,0,0,0,0,16,0,0,0,0,0,0, + // 0x30a3 ィ + 163,48,25,26,182,37,4,253,0,0,0,0,0,13,0,0,0,0,0,0,63,64,0,0,0,0,0,255,192,0,0,0,0,3,255,128,0,0,0,0,31,254,0,0,0,0,0,191,244,0,0,0,0,3,255,192,0,0,0,0,31,254,0,0,0,0,1,255,244,0,0,0,0,31,255,208,0,0,0,1,255,255,192,0,0,0,111,255,255,192,0,0,27,255,254,63,192,0,0,127,255,224,63,192,0,0,63,253,0,63,192,0,0,31,128,0,63,192,0,0,4,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0, + // 0x30a4 イ + 164,48,29,31,248,37,3,255,0,0,0,0,0,0,4,0,0,0,0,0,0,0,62,0,0,0,0,0,0,0,255,128,0,0,0,0,0,3,255,192,0,0,0,0,0,15,255,0,0,0,0,0,0,127,248,0,0,0,0,0,1,255,224,0,0,0,0,0,11,255,128,0,0,0,0,0,127,253,0,0,0,0,0,2,255,224,0,0,0,0,0,47,255,64,0,0,0,0,2,255,253,0,0,0,0,0,47,255,253,0,0,0,0,7,255,255,253,0,0,0,1,191,255,226,253,0,0,0,111,255,254,2,253,0,0,0,255,255,224,2,253,0,0,0,127,249,0,2,253,0,0,0,63,64,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,3,253,0,0,0,0,0,0,3,253,0,0,0,0,0,0,3,253,0,0,0,0,0,0,3,254,0,0,0, + // 0x30a5 ゥ + 165,48,25,28,196,37,6,252,0,0,11,244,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,7,240,0,0,0,0,0,7,240,0,0,0,127,255,255,255,255,254,0,127,255,255,255,255,255,192,63,255,255,255,255,255,192,63,149,85,85,85,191,128,63,64,0,0,0,191,64,63,64,0,0,0,255,0,63,64,0,0,0,255,0,63,64,0,0,1,254,0,127,64,0,0,2,253,0,127,64,0,0,3,252,0,21,0,0,0,11,248,0,0,0,0,0,15,244,0,0,0,0,0,63,240,0,0,0,0,0,191,192,0,0,0,0,2,255,64,0,0,0,0,15,255,0,0,0,0,0,191,248,0,0,0,0,27,255,224,0,0,0,6,255,255,64,0,0,0,7,255,248,0,0,0,0,2,255,144,0,0,0,0,0,180,0,0,0,0,0,0,0,0,0,0,0, + // 0x30a6 ウ + 166,48,29,33,8,37,4,254,0,0,0,191,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,41,85,85,255,149,85,104,0,127,255,255,255,255,255,255,128,127,255,255,255,255,255,255,192,63,255,255,255,255,255,255,128,63,64,0,0,0,0,255,64,63,64,0,0,0,0,255,0,63,64,0,0,0,0,255,0,63,64,0,0,0,1,255,0,63,64,0,0,0,2,254,0,63,64,0,0,0,3,253,0,127,128,0,0,0,7,252,0,127,128,0,0,0,11,248,0,127,64,0,0,0,15,244,0,0,0,0,0,0,47,240,0,0,0,0,0,0,63,208,0,0,0,0,0,0,255,192,0,0,0,0,0,2,255,0,0,0,0,0,0,11,254,0,0,0,0,0,0,63,252,0,0,0,0,0,1,255,240,0,0,0,0,0,11,255,192,0,0,0,0,0,191,255,0,0,0,0,0,111,255,248,0,0,0,0,2,255,255,192,0,0,0,0,0,191,253,0,0,0,0,0,0,63,144,0,0,0,0,0,0,8,0,0,0,0,0, + // 0x30a7 ェ + 167,48,27,21,147,37,5,255,11,255,255,255,255,255,192,11,255,255,255,255,255,192,11,255,255,255,255,255,192,5,85,86,254,85,85,64,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,127,255,255,255,255,255,244,127,255,255,255,255,255,244,127,255,255,255,255,255,244,106,170,170,170,170,170,164, + // 0x30a8 エ + 168,48,31,25,200,37,3,1,11,170,170,170,170,170,171,192,11,255,255,255,255,255,255,192,11,255,255,255,255,255,255,192,11,255,255,255,255,255,255,192,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252, + // 0x30a9 ォ + 169,48,26,27,189,37,6,253,0,0,0,2,160,0,0,0,0,0,7,244,0,0,0,0,0,3,244,0,0,0,0,0,3,244,0,0,0,0,0,3,244,0,0,0,0,0,3,244,0,0,47,255,255,255,255,255,240,47,255,255,255,255,255,240,47,255,255,255,255,255,240,21,85,85,127,249,85,80,0,0,0,191,244,0,0,0,0,1,255,244,0,0,0,0,7,255,244,0,0,0,0,31,247,244,0,0,0,0,127,211,248,0,0,0,2,255,131,248,0,0,0,15,254,3,248,0,0,0,127,244,3,248,0,0,2,255,208,3,248,0,0,47,255,0,3,248,0,0,191,248,0,3,248,0,0,63,208,0,3,248,0,0,14,0,4,3,248,0,0,0,0,15,255,248,0,0,0,0,15,255,244,0,0,0,0,15,255,224,0,0,0,0,0,0,0,0,0, + // 0x30aa オ + 170,48,31,31,248,37,3,255,0,0,0,0,31,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,26,170,170,170,175,250,170,164,47,255,255,255,255,255,255,244,47,255,255,255,255,255,255,244,47,255,255,255,255,255,255,244,0,0,0,0,255,224,0,0,0,0,0,2,255,224,0,0,0,0,0,7,255,240,0,0,0,0,0,31,255,240,0,0,0,0,0,127,223,240,0,0,0,0,1,255,143,240,0,0,0,0,7,254,15,240,0,0,0,0,31,252,15,240,0,0,0,0,191,224,15,240,0,0,0,3,255,128,15,240,0,0,0,31,254,0,15,240,0,0,0,191,248,0,15,240,0,0,11,255,208,0,11,240,0,0,127,255,0,0,11,240,0,0,255,248,0,0,11,240,0,0,63,208,0,0,11,240,0,0,14,0,0,0,15,240,0,0,0,0,0,250,191,240,0,0,0,0,0,255,255,240,0,0,0,0,0,255,255,208,0,0,0,0,0,191,255,64,0,0, + // 0x30ab カ + 171,48,28,32,224,37,4,254,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,127,255,255,255,255,255,248,127,255,255,255,255,255,255,127,255,255,255,255,255,254,106,149,91,249,85,86,254,0,0,11,240,0,0,254,0,0,15,240,0,0,254,0,0,15,240,0,0,254,0,0,15,224,0,0,253,0,0,31,208,0,1,253,0,0,63,192,0,1,253,0,0,63,192,0,1,252,0,0,191,128,0,2,252,0,0,255,0,0,2,252,0,2,255,0,0,3,252,0,3,253,0,0,3,252,0,11,252,0,0,3,248,0,47,244,0,0,3,248,0,127,224,0,0,7,244,1,255,192,0,0,15,240,11,255,0,1,0,47,240,47,253,0,3,255,255,224,255,244,0,3,255,255,208,63,208,0,3,255,255,128,15,0,0,1,170,168,0,0,0,0,0,0,0,0, + // 0x30ac ガ + 172,48,32,34,16,37,3,254,0,0,0,0,0,0,0,80,0,0,0,0,0,0,3,240,0,0,2,253,0,1,225,248,0,0,3,253,0,3,240,189,0,0,2,253,0,1,252,63,0,0,2,252,0,0,189,47,0,0,2,252,0,0,63,0,0,0,2,252,0,0,40,0,0,0,3,252,0,0,0,0,63,255,255,255,255,255,253,0,63,255,255,255,255,255,255,0,63,255,255,255,255,255,255,0,42,149,91,253,85,85,255,0,0,0,7,248,0,0,255,0,0,0,7,244,0,0,255,0,0,0,11,240,0,0,255,0,0,0,15,240,0,0,254,0,0,0,15,224,0,0,254,0,0,0,31,208,0,0,254,0,0,0,63,192,0,0,253,0,0,0,63,192,0,0,253,0,0,0,191,128,0,1,253,0,0,0,255,0,0,1,252,0,0,2,254,0,0,2,252,0,0,7,252,0,0,2,252,0,0,15,248,0,0,3,252,0,0,63,240,0,0,3,248,0,0,255,208,0,0,7,248,0,3,255,128,0,0,15,244,0,31,255,0,3,254,191,240,0,191,248,0,3,255,255,224,0,127,224,0,3,255,255,192,0,15,128,0,2,255,254,0,0,1,0,0,0,0,0,0,0, + // 0x30ad キ + 173,48,30,32,0,37,4,254,0,0,10,208,0,0,0,0,0,0,31,224,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,11,240,0,0,80,0,0,0,11,244,1,175,240,0,0,0,7,254,255,255,240,0,0,5,191,255,255,255,240,0,175,255,255,255,255,254,80,0,255,255,255,255,165,0,0,0,255,255,251,253,0,0,0,0,191,164,1,254,0,0,0,0,16,0,0,254,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,191,0,0,1,64,0,0,0,191,64,5,191,192,0,0,0,127,155,255,255,192,0,0,5,191,255,255,255,208,0,107,255,255,255,255,250,64,255,255,255,255,255,164,0,0,255,255,255,255,208,0,0,0,255,255,148,31,208,0,0,0,186,64,0,15,224,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,11,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,248,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,253,0,0,0,0,0,0,1,64,0,0,0, + // 0x30ae ギ + 174,48,32,34,16,37,3,254,0,0,0,0,0,0,2,224,0,0,0,0,0,0,130,244,0,0,0,80,0,3,240,252,0,0,15,240,0,2,244,126,0,0,15,240,0,0,252,63,0,0,11,244,0,0,126,20,0,0,7,244,0,0,61,0,0,0,3,248,0,6,240,0,0,0,3,252,107,255,240,0,0,0,23,255,255,255,244,0,21,175,255,255,255,255,244,0,191,255,255,255,255,148,0,0,191,255,255,255,64,0,0,0,127,254,144,255,0,0,0,0,57,0,0,255,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,128,0,26,192,0,0,0,63,193,111,255,208,0,0,0,63,255,255,255,224,0,1,111,255,255,255,255,224,107,255,255,255,255,254,144,0,191,255,255,255,249,0,0,0,191,255,254,159,240,0,0,0,127,233,0,15,240,0,0,0,20,0,0,11,240,0,0,0,0,0,0,11,244,0,0,0,0,0,0,7,248,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,2,254,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,229,0,0,0, + // 0x30af ク + 175,48,30,33,8,37,3,254,0,0,0,57,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,255,192,0,0,0,0,0,1,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,7,253,85,85,88,0,0,0,15,255,255,255,255,128,0,0,63,255,255,255,255,224,0,0,191,255,255,255,255,192,0,1,255,64,0,0,255,128,0,7,254,0,0,0,255,64,0,31,252,0,0,1,255,0,0,127,240,0,0,3,254,0,2,255,192,0,0,3,252,0,11,255,0,0,0,11,252,0,127,252,0,0,0,15,244,0,63,240,0,0,0,47,240,0,11,128,0,0,0,127,208,0,0,0,0,0,0,255,192,0,0,0,0,0,2,255,0,0,0,0,0,0,7,253,0,0,0,0,0,0,31,252,0,0,0,0,0,0,127,240,0,0,0,0,0,1,255,192,0,0,0,0,0,11,255,64,0,0,0,0,0,63,253,0,0,0,0,0,2,255,244,0,0,0,0,0,31,255,192,0,0,0,0,2,255,254,0,0,0,0,0,127,255,244,0,0,0,0,0,127,255,128,0,0,0,0,0,31,248,0,0,0,0,0,0,3,64,0,0,0,0,0, + // 0x30b0 グ + 176,48,34,35,59,37,2,253,0,0,0,0,0,0,0,125,0,0,0,0,0,0,0,20,63,0,0,0,0,120,0,0,189,47,128,0,0,0,191,192,0,63,15,192,0,0,0,255,64,0,47,71,224,0,0,2,255,0,0,15,194,64,0,0,3,253,0,0,7,192,0,0,0,15,253,85,85,105,0,0,0,0,31,255,255,255,255,64,0,0,0,63,255,255,255,255,192,0,0,0,255,255,255,255,255,192,0,0,2,255,0,0,0,255,64,0,0,11,253,0,0,1,255,0,0,0,47,248,0,0,2,254,0,0,0,191,224,0,0,3,253,0,0,3,255,128,0,0,11,252,0,0,31,254,0,0,0,15,244,0,0,191,248,0,0,0,31,240,0,0,127,208,0,0,0,63,224,0,0,15,0,0,0,0,191,192,0,0,0,0,0,0,1,255,64,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,63,244,0,0,0,0,0,0,0,191,224,0,0,0,0,0,0,2,255,192,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,127,252,0,0,0,0,0,0,7,255,224,0,0,0,0,0,0,47,255,128,0,0,0,0,0,7,255,253,0,0,0,0,0,0,191,255,224,0,0,0,0,0,0,191,255,64,0,0,0,0,0,0,47,244,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0, + // 0x30b1 ケ + 177,48,32,33,8,37,2,254,0,0,20,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,63,208,0,0,0,0,0,0,127,192,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,3,255,170,170,170,170,171,0,7,255,255,255,255,255,255,0,15,255,255,255,255,255,255,0,31,255,255,255,255,255,255,0,63,224,0,7,248,0,0,0,255,192,0,11,244,0,0,2,255,64,0,11,244,0,0,7,254,0,0,15,240,0,0,31,252,0,0,15,240,0,0,127,240,0,0,31,240,0,0,63,208,0,0,47,224,0,0,7,64,0,0,63,208,0,0,0,0,0,0,63,192,0,0,0,0,0,0,191,192,0,0,0,0,0,0,255,64,0,0,0,0,0,2,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,15,252,0,0,0,0,0,0,63,244,0,0,0,0,0,0,255,240,0,0,0,0,0,3,255,192,0,0,0,0,0,15,255,0,0,0,0,0,0,191,252,0,0,0,0,0,0,191,240,0,0,0,0,0,0,31,128,0,0,0,0,0,0,1,0,0,0,0,0, + // 0x30b2 ゲ + 178,48,33,35,59,37,2,253,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,0,189,0,0,0,36,0,0,0,188,63,0,0,0,127,192,0,0,189,31,128,0,0,191,192,0,0,63,15,192,0,0,191,128,0,0,31,131,128,0,0,255,0,0,0,15,192,0,0,1,255,0,0,0,6,0,0,0,3,253,0,0,0,0,0,0,0,7,254,170,170,170,170,173,0,0,15,255,255,255,255,255,254,0,0,31,255,255,255,255,255,254,0,0,63,255,255,255,255,255,254,0,0,191,192,0,15,240,0,0,0,1,255,64,0,15,240,0,0,0,3,255,0,0,15,240,0,0,0,15,252,0,0,31,224,0,0,0,63,244,0,0,47,224,0,0,0,255,224,0,0,47,208,0,0,0,127,192,0,0,63,192,0,0,0,11,0,0,0,127,192,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,11,252,0,0,0,0,0,0,0,47,244,0,0,0,0,0,0,0,127,240,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,7,255,64,0,0,0,0,0,0,47,254,0,0,0,0,0,0,1,255,248,0,0,0,0,0,0,0,255,208,0,0,0,0,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30b3 コ + 179,48,27,27,189,37,5,255,63,255,255,255,255,255,248,63,255,255,255,255,255,248,63,255,255,255,255,255,248,63,250,170,170,170,175,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,127,255,255,255,255,255,248,127,255,255,255,255,255,248,127,255,255,255,255,255,248,127,255,255,255,255,255,248,0,0,0,0,0,7,248,0,0,0,0,0,7,252,0,0,0,0,0,0,0, + // 0x30b4 ゴ + 180,48,30,35,24,37,5,254,0,0,0,0,0,0,5,0,0,0,0,0,0,4,63,0,0,0,0,0,0,188,47,128,0,0,0,0,0,126,15,192,0,0,0,0,0,63,7,224,0,0,0,0,0,31,131,224,0,0,0,0,0,15,192,0,0,0,0,0,0,5,0,0,191,255,255,255,255,255,240,0,191,255,255,255,255,255,240,0,191,255,255,255,255,255,240,0,191,234,170,170,170,191,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,255,255,255,255,255,255,240,0,255,255,255,255,255,255,240,0,255,255,255,255,255,255,240,0,255,255,255,255,255,255,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0, + // 0x30b5 サ + 181,48,32,33,8,37,2,253,0,0,169,0,0,47,192,0,0,1,254,0,0,63,192,0,0,1,254,0,0,47,192,0,0,0,254,0,0,47,192,0,0,0,254,0,0,47,192,0,0,0,254,0,0,47,192,0,0,0,254,0,0,47,192,0,0,0,254,0,0,47,192,0,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,106,170,255,170,170,191,234,170,0,0,254,0,0,47,192,0,0,0,254,0,0,47,192,0,0,0,254,0,0,63,192,0,0,0,254,0,0,63,192,0,0,0,254,0,0,63,192,0,0,0,254,0,0,63,192,0,0,0,254,0,0,63,128,0,0,1,254,0,0,127,128,0,0,1,254,0,0,191,64,0,0,0,0,0,0,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,3,253,0,0,0,0,0,0,15,252,0,0,0,0,0,0,47,244,0,0,0,0,0,0,255,224,0,0,0,0,0,11,255,192,0,0,0,0,0,191,255,0,0,0,0,0,1,255,248,0,0,0,0,0,0,127,208,0,0,0,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30b6 ザ + 182,48,35,33,41,37,1,253,0,0,0,0,0,0,0,7,192,0,0,170,0,0,47,226,195,208,0,0,255,0,0,31,227,210,240,0,0,255,0,0,31,209,241,240,0,0,255,0,0,31,208,244,244,0,0,255,0,0,31,208,184,80,0,0,255,0,0,31,208,80,0,0,0,255,0,0,31,208,0,0,122,170,255,170,170,175,250,170,64,127,255,255,255,255,255,255,255,128,127,255,255,255,255,255,255,255,128,127,255,255,255,255,255,255,255,128,0,0,255,0,0,31,208,0,0,0,0,255,0,0,31,208,0,0,0,0,255,0,0,31,208,0,0,0,0,255,0,0,31,208,0,0,0,0,255,0,0,31,208,0,0,0,0,255,0,0,47,208,0,0,0,0,255,0,0,63,192,0,0,0,0,255,0,0,63,192,0,0,0,0,255,0,0,63,192,0,0,0,0,85,0,0,127,128,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,63,244,0,0,0,0,0,0,1,255,224,0,0,0,0,0,0,31,255,128,0,0,0,0,0,0,255,254,0,0,0,0,0,0,0,191,244,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,4,0,0,0,0,0, + // 0x30b7 シ + 183,48,30,30,240,37,4,255,0,3,64,0,0,0,0,0,0,15,240,0,0,0,0,0,0,47,254,0,0,0,0,0,0,15,255,192,0,0,0,0,0,1,255,248,0,0,0,0,0,0,47,252,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,176,0,0,0,0,20,0,0,0,0,0,1,0,62,0,0,0,0,0,3,128,255,224,0,0,0,0,11,192,255,253,0,0,0,0,31,224,47,255,128,0,0,0,63,240,3,255,224,0,0,0,255,192,0,127,192,0,0,3,255,64,0,11,64,0,0,15,254,0,0,1,0,0,0,63,248,0,0,0,0,0,0,255,224,0,0,0,0,0,7,255,128,0,0,0,0,0,47,254,0,0,0,0,0,0,255,244,0,0,0,0,0,11,255,208,0,0,0,0,0,127,255,0,0,0,0,0,11,255,248,0,0,0,0,1,191,255,192,0,0,0,1,191,255,253,0,0,0,0,47,255,255,224,0,0,0,0,15,255,253,0,0,0,0,0,11,255,128,0,0,0,0,0,3,144,0,0,0,0,0,0, + // 0x30b8 ジ + 184,48,32,31,248,37,3,255,0,0,0,0,0,0,7,208,0,2,192,0,0,1,7,240,0,7,248,0,0,31,66,248,0,15,255,64,0,15,192,252,0,11,255,224,0,11,224,126,0,0,255,253,0,3,240,62,0,0,31,254,0,1,248,0,0,0,2,252,0,0,244,0,0,0,0,116,0,0,0,0,8,0,0,0,0,0,0,64,47,64,0,0,0,0,2,192,127,240,0,0,0,0,3,224,191,254,0,0,0,0,15,240,15,255,208,0,0,0,47,244,1,255,240,0,0,0,191,224,0,47,224,0,0,1,255,192,0,7,192,0,0,7,255,0,0,0,0,0,0,31,252,0,0,0,0,0,0,191,240,0,0,0,0,0,2,255,208,0,0,0,0,0,15,255,64,0,0,0,0,0,191,252,0,0,0,0,0,3,255,224,0,0,0,0,0,47,255,128,0,0,0,0,6,255,252,0,0,0,0,0,191,255,224,0,0,0,0,111,255,255,0,0,0,0,15,255,255,244,0,0,0,0,11,255,254,0,0,0,0,0,3,255,144,0,0,0,0,0,1,228,0,0,0,0,0,0, + // 0x30b9 ス + 185,48,30,30,240,37,4,254,0,0,0,0,0,1,0,0,3,255,255,255,255,255,192,0,3,255,255,255,255,255,240,0,3,255,255,255,255,255,224,0,3,250,170,170,170,255,192,0,0,0,0,0,0,255,128,0,0,0,0,0,1,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,7,252,0,0,0,0,0,0,15,248,0,0,0,0,0,0,31,240,0,0,0,0,0,0,63,208,0,0,0,0,0,0,191,128,0,0,0,0,0,2,255,0,0,0,0,0,0,7,253,0,0,0,0,0,0,31,253,0,0,0,0,0,0,63,255,64,0,0,0,0,0,255,255,208,0,0,0,0,7,255,127,248,0,0,0,0,31,253,15,253,0,0,0,0,191,244,7,255,64,0,0,3,255,208,1,255,208,0,0,31,255,0,0,127,244,0,0,255,252,0,0,31,252,0,11,255,224,0,0,7,255,0,191,255,64,0,0,2,255,192,255,248,0,0,0,0,255,208,127,208,0,0,0,0,63,64,29,0,0,0,0,0,28,0,0,0,0,0,0,0,0,0, + // 0x30ba ズ + 186,48,33,36,68,37,3,253,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,244,0,0,0,0,0,0,1,224,252,0,0,0,0,0,0,3,240,189,0,0,0,0,0,0,1,248,63,0,0,0,0,0,0,0,189,47,64,0,0,0,0,0,1,127,13,0,3,255,255,255,255,255,254,0,0,3,255,255,255,255,255,240,0,0,3,255,255,255,255,255,240,0,0,3,255,170,170,170,255,208,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,11,252,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,1,255,64,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,63,255,128,0,0,0,0,0,0,255,255,240,0,0,0,0,0,3,255,127,252,0,0,0,0,0,31,253,15,255,0,0,0,0,0,127,244,3,255,192,0,0,0,3,255,208,0,255,224,0,0,0,31,255,0,0,63,248,0,0,0,255,252,0,0,15,254,0,0,11,255,224,0,0,3,255,64,0,255,255,64,0,0,1,255,208,0,191,248,0,0,0,0,127,208,0,47,208,0,0,0,0,47,64,0,9,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0, + // 0x30bb セ + 187,48,31,31,248,37,2,255,0,0,42,128,0,0,0,0,0,0,127,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,6,192,0,0,63,128,0,22,255,244,0,0,63,128,27,255,255,252,0,0,63,239,255,255,255,244,0,5,191,255,255,255,255,240,91,255,255,255,255,144,63,208,255,255,255,254,80,0,191,128,191,255,255,192,0,0,255,0,127,249,63,128,0,3,253,0,100,0,63,128,0,11,252,0,0,0,63,128,0,31,240,0,0,0,63,128,0,63,208,0,0,0,63,128,0,255,128,0,0,0,63,128,0,255,0,0,0,0,63,128,0,28,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,224,0,0,5,144,0,0,63,255,170,255,255,208,0,0,31,255,255,255,255,208,0,0,7,255,255,255,255,208,0,0,0,111,255,255,169,64, + // 0x30bc ゼ + 188,48,35,34,50,37,1,254,0,0,0,0,0,0,0,31,0,0,0,0,0,0,0,5,31,128,0,0,0,0,0,0,47,11,208,0,0,63,208,0,0,31,131,240,0,0,63,208,0,0,11,194,244,0,0,47,208,0,0,3,240,208,0,0,47,208,0,0,2,240,0,0,0,47,192,0,0,0,64,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,27,240,0,0,0,47,192,0,91,255,253,0,0,0,47,193,111,255,255,253,0,0,0,47,255,255,255,255,248,0,0,26,255,255,255,255,159,240,0,47,255,255,255,254,64,47,224,0,127,255,255,249,0,0,63,192,0,63,255,255,192,0,0,255,64,0,63,164,47,192,0,2,254,0,0,16,0,47,192,0,7,252,0,0,0,0,47,192,0,15,244,0,0,0,0,47,192,0,63,224,0,0,0,0,47,192,0,255,192,0,0,0,0,47,192,0,47,0,0,0,0,0,47,192,0,4,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,249,0,1,91,240,0,0,0,15,255,255,255,255,240,0,0,0,11,255,255,255,255,240,0,0,0,1,255,255,255,255,224,0,0,0,0,6,170,165,80,0,0, + // 0x30bd ソ + 189,48,28,29,203,37,4,255,0,0,0,0,0,1,80,11,64,0,0,0,3,254,191,192,0,0,0,3,253,127,224,0,0,0,3,252,47,240,0,0,0,7,252,15,252,0,0,0,7,252,7,253,0,0,0,11,248,3,255,0,0,0,15,244,1,255,128,0,0,31,240,0,191,192,0,0,47,224,0,63,224,0,0,63,208,0,47,224,0,0,127,192,0,15,0,0,0,255,128,0,0,0,0,1,255,0,0,0,0,0,3,254,0,0,0,0,0,11,252,0,0,0,0,0,31,248,0,0,0,0,0,63,240,0,0,0,0,0,255,208,0,0,0,0,3,255,128,0,0,0,0,15,255,0,0,0,0,0,63,252,0,0,0,0,1,255,240,0,0,0,0,11,255,192,0,0,0,0,191,254,0,0,0,0,11,255,248,0,0,0,0,15,255,208,0,0,0,0,3,254,0,0,0,0,0,0,160,0,0,0,0, + // 0x30be ゾ + 190,48,31,34,16,37,4,254,0,0,0,0,0,0,2,128,0,0,0,0,0,6,15,208,0,0,0,0,0,47,67,240,0,0,0,0,0,15,193,248,0,0,0,0,0,7,224,252,0,0,0,0,0,3,240,100,31,0,0,0,0,1,224,0,255,64,0,0,0,10,144,0,255,192,0,0,0,15,248,0,63,224,0,0,0,15,244,0,47,240,0,0,0,15,240,0,15,252,0,0,0,31,240,0,7,253,0,0,0,47,224,0,3,255,0,0,0,63,208,0,1,255,128,0,0,63,192,0,0,255,192,0,0,191,128,0,0,127,192,0,0,255,64,0,0,61,0,0,1,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,11,252,0,0,0,0,0,0,15,248,0,0,0,0,0,0,63,240,0,0,0,0,0,0,191,208,0,0,0,0,0,1,255,128,0,0,0,0,0,7,255,0,0,0,0,0,0,31,252,0,0,0,0,0,0,191,244,0,0,0,0,0,3,255,208,0,0,0,0,0,31,255,64,0,0,0,0,1,255,253,0,0,0,0,0,31,255,240,0,0,0,0,0,47,255,128,0,0,0,0,0,7,248,0,0,0,0,0,0,1,208,0,0,0,0,0, + // 0x30bf タ + 191,48,30,34,16,37,3,254,0,0,0,16,0,0,0,0,0,0,0,62,64,0,0,0,0,0,0,191,192,0,0,0,0,0,0,255,64,0,0,0,0,0,2,255,0,0,0,0,0,0,3,253,0,0,4,0,0,0,15,255,255,255,255,64,0,0,47,255,255,255,255,208,0,0,127,255,255,255,255,192,0,0,255,149,85,85,255,192,0,3,255,0,0,0,255,64,0,15,252,0,0,0,255,0,0,47,244,0,0,2,254,0,0,191,208,0,0,3,253,0,3,255,128,128,0,11,252,0,31,254,2,248,0,15,244,0,191,248,11,255,64,47,240,0,127,208,3,255,224,127,208,0,15,0,0,191,253,255,192,0,0,0,0,31,255,255,0,0,0,0,0,2,255,254,0,0,0,0,0,0,127,253,0,0,0,0,0,0,63,255,128,0,0,0,0,0,255,255,240,0,0,0,0,3,255,191,252,0,0,0,0,31,254,31,244,0,0,0,0,191,248,3,224,0,0,0,7,255,208,0,128,0,0,0,63,255,64,0,0,0,0,6,255,252,0,0,0,0,0,191,255,208,0,0,0,0,0,255,254,0,0,0,0,0,0,63,228,0,0,0,0,0,0,10,0,0,0,0,0,0, + // 0x30c0 ダ + 192,48,34,36,68,37,2,253,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,125,0,0,0,0,16,0,0,40,63,0,0,0,0,126,64,0,189,31,128,0,0,0,191,192,0,63,15,192,0,0,0,255,64,0,31,135,224,0,0,2,255,0,0,15,193,0,0,0,7,253,0,0,11,128,0,0,0,15,255,255,255,255,0,0,0,0,47,255,255,255,255,208,0,0,0,127,255,255,255,255,192,0,0,0,255,149,85,85,255,128,0,0,3,255,0,0,0,255,64,0,0,15,252,0,0,1,255,0,0,0,63,244,0,0,2,254,0,0,0,255,208,0,0,3,252,0,0,3,255,128,128,0,11,252,0,0,31,253,2,248,0,15,244,0,0,191,244,11,255,64,47,240,0,0,127,208,3,255,224,127,208,0,0,15,0,0,191,253,255,128,0,0,0,0,0,31,255,255,0,0,0,0,0,0,2,255,253,0,0,0,0,0,0,0,127,253,0,0,0,0,0,0,0,63,255,128,0,0,0,0,0,0,255,255,240,0,0,0,0,0,7,255,191,252,0,0,0,0,0,31,253,31,244,0,0,0,0,0,191,244,3,224,0,0,0,0,7,255,208,0,128,0,0,0,0,127,255,0,0,0,0,0,0,7,255,248,0,0,0,0,0,0,191,255,208,0,0,0,0,0,0,255,254,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0, + // 0x30c1 チ + 193,48,31,32,0,37,3,254,0,0,0,0,0,0,128,0,0,0,0,0,0,111,240,0,0,0,0,22,191,255,248,0,3,255,255,255,255,255,252,0,2,255,255,255,255,249,0,0,1,255,255,255,245,0,0,0,0,149,84,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,170,85,85,95,249,85,85,168,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,15,240,0,0,0,0,0,0,15,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,47,208,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,255,128,0,0,0,0,0,1,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,15,252,0,0,0,0,0,0,63,244,0,0,0,0,0,1,255,224,0,0,0,0,0,11,255,128,0,0,0,0,0,47,254,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,128,0,0,0,0,0, + // 0x30c2 ヂ + 194,48,33,32,32,37,2,253,0,0,0,0,0,6,208,0,0,0,0,0,0,26,255,240,0,0,1,85,106,191,255,255,252,0,0,3,255,255,255,255,255,228,24,0,2,255,255,255,255,144,0,125,0,0,255,250,175,240,0,124,63,0,0,0,0,11,240,0,126,31,128,0,0,0,11,240,0,47,11,192,0,0,0,11,240,0,15,131,64,0,0,0,11,240,0,11,192,0,0,0,0,11,240,0,1,0,0,0,0,0,11,240,0,0,0,0,255,255,255,255,255,255,255,252,0,255,255,255,255,255,255,255,252,0,255,255,255,255,255,255,255,252,0,169,85,85,95,245,85,85,168,0,0,0,0,15,240,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,11,253,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,191,240,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,47,255,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,2,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30c3 ッ + 195,48,26,25,175,37,6,253,0,0,7,64,0,0,0,0,0,63,192,0,25,0,27,0,47,192,0,47,208,191,64,31,224,0,63,208,63,128,15,240,0,63,192,63,192,11,244,0,63,192,31,224,3,248,0,191,64,15,240,3,252,0,255,0,11,244,2,228,1,255,0,3,248,0,0,2,253,0,3,248,0,0,3,252,0,1,64,0,0,15,244,0,0,0,0,0,31,240,0,0,0,0,0,63,208,0,0,0,0,0,255,128,0,0,0,0,3,255,0,0,0,0,0,15,252,0,0,0,0,0,127,244,0,0,0,0,2,255,208,0,0,0,0,47,255,64,0,0,0,2,255,252,0,0,0,0,63,255,224,0,0,0,0,31,255,0,0,0,0,0,7,244,0,0,0,0,0,1,64,0,0,0,0, + // 0x30c4 ツ + 196,48,31,30,240,37,3,255,0,0,0,16,0,0,0,0,0,0,3,248,0,0,0,0,1,0,3,252,0,0,11,144,47,64,2,253,0,0,15,248,191,128,0,255,0,0,15,244,63,192,0,255,64,0,31,240,47,224,0,127,128,0,47,224,31,240,0,63,192,0,63,208,15,244,0,47,208,0,63,192,7,252,0,31,224,0,127,128,3,252,0,15,128,0,255,64,2,254,0,0,0,1,255,0,1,255,0,0,0,2,254,0,0,228,0,0,0,3,252,0,0,0,0,0,0,15,248,0,0,0,0,0,0,31,240,0,0,0,0,0,0,63,224,0,0,0,0,0,0,255,192,0,0,0,0,0,2,255,64,0,0,0,0,0,11,254,0,0,0,0,0,0,47,248,0,0,0,0,0,0,255,240,0,0,0,0,0,7,255,192,0,0,0,0,0,47,255,0,0,0,0,0,2,255,248,0,0,0,0,0,47,255,208,0,0,0,0,7,255,255,0,0,0,0,0,3,255,244,0,0,0,0,0,0,255,128,0,0,0,0,0,0,116,0,0,0,0,0, + // 0x30c5 ヅ + 197,48,33,34,50,37,3,254,0,0,0,0,0,0,1,240,0,0,0,0,0,0,2,209,252,0,0,0,0,0,0,3,240,189,0,0,0,0,0,0,2,248,63,0,0,0,0,80,0,0,252,31,64,0,0,11,240,0,0,126,8,0,0,0,11,244,0,0,36,0,0,126,0,3,252,0,0,0,0,0,255,0,3,252,0,0,63,128,0,191,64,1,254,0,0,63,208,0,127,192,0,255,0,0,63,192,0,63,208,0,191,64,0,127,192,0,31,224,0,127,128,0,255,128,0,15,240,0,63,192,0,255,0,0,11,248,0,46,64,1,255,0,0,7,252,0,0,0,3,253,0,0,3,252,0,0,0,7,252,0,0,2,208,0,0,0,15,248,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,1,255,64,0,0,0,0,0,0,7,254,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,127,240,0,0,0,0,0,0,2,255,192,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,127,253,0,0,0,0,0,0,7,255,240,0,0,0,0,0,0,127,255,128,0,0,0,0,0,11,255,253,0,0,0,0,0,0,15,255,224,0,0,0,0,0,0,3,254,64,0,0,0,0,0,0,0,224,0,0,0,0,0,0, + // 0x30c6 テ + 198,48,31,32,0,37,3,253,0,41,85,85,85,85,168,0,0,127,255,255,255,255,252,0,0,127,255,255,255,255,252,0,0,127,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,85,85,85,85,85,85,168,191,255,255,255,255,255,255,252,191,255,255,255,255,255,255,252,191,255,255,255,255,255,255,252,0,0,0,11,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,31,224,0,0,0,0,0,0,47,208,0,0,0,0,0,0,63,192,0,0,0,0,0,0,191,128,0,0,0,0,0,1,255,64,0,0,0,0,0,3,255,0,0,0,0,0,0,15,252,0,0,0,0,0,0,127,244,0,0,0,0,0,2,255,224,0,0,0,0,0,31,255,64,0,0,0,0,0,7,253,0,0,0,0,0,0,0,224,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30c7 デ + 199,48,33,36,68,37,3,253,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,0,252,0,0,0,0,0,0,0,116,126,0,0,0,0,0,0,0,252,47,64,0,0,0,0,0,0,126,15,192,0,191,255,255,255,255,47,75,192,0,191,255,255,255,255,15,192,0,0,191,255,255,255,255,10,64,0,0,101,85,85,85,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,170,170,170,170,164,0,255,255,255,255,255,255,255,248,0,255,255,255,255,255,255,255,248,0,255,255,255,255,255,255,255,248,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,7,253,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,127,240,0,0,0,0,0,0,2,255,208,0,0,0,0,0,0,31,255,64,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,3,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30c8 ト + 200,48,20,31,155,37,12,255,85,0,0,0,0,255,64,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,248,0,0,0,255,255,224,0,0,255,255,255,64,0,255,255,255,249,0,255,27,255,255,208,255,0,127,255,253,255,0,2,255,253,255,0,0,31,252,255,0,0,1,244,255,0,0,0,16,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,64,0,0,0, + // 0x30c9 ド + 201,48,23,31,186,37,10,254,21,64,0,0,10,0,127,192,0,0,63,64,63,192,0,44,15,192,63,192,0,126,11,224,63,192,0,63,67,240,63,192,0,15,193,244,63,192,0,11,208,128,63,192,0,3,224,0,63,192,0,1,0,0,63,192,0,0,0,0,63,208,0,0,0,0,63,254,64,0,0,0,63,255,249,0,0,0,63,255,255,224,0,0,63,255,255,255,64,0,63,194,255,255,248,0,63,192,27,255,255,64,63,192,0,127,255,0,63,192,0,6,254,0,63,192,0,0,44,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0, + // 0x30ca ナ + 202,48,31,32,0,37,3,254,0,0,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,191,255,255,255,255,255,255,252,191,255,255,255,255,255,255,252,191,255,255,255,255,255,255,252,122,170,170,175,254,170,170,172,0,0,0,11,244,0,0,0,0,0,0,11,244,0,0,0,0,0,0,11,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,47,224,0,0,0,0,0,0,63,208,0,0,0,0,0,0,191,192,0,0,0,0,0,0,255,128,0,0,0,0,0,3,255,0,0,0,0,0,0,11,253,0,0,0,0,0,0,47,252,0,0,0,0,0,0,191,240,0,0,0,0,0,3,255,208,0,0,0,0,0,47,255,64,0,0,0,0,0,47,252,0,0,0,0,0,0,7,224,0,0,0,0,0,0,0,64,0,0,0,0,0, + // 0x30cb ニ + 203,48,30,24,192,37,3,1,2,255,255,255,255,255,252,0,2,255,255,255,255,255,252,0,2,255,255,255,255,255,252,0,2,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,191,255,255,255,255,255,255,240,191,255,255,255,255,255,255,240,191,255,255,255,255,255,255,240,191,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0, + // 0x30cc ヌ + 204,48,26,31,217,37,5,253,0,0,0,0,0,4,0,31,255,255,255,255,255,64,31,255,255,255,255,255,208,31,255,255,255,255,255,208,26,170,170,170,170,255,192,0,0,0,0,0,255,128,0,0,0,0,0,255,0,0,0,0,0,1,255,0,0,0,0,0,3,253,0,0,40,0,0,7,252,0,0,127,64,0,11,248,0,1,255,240,0,15,240,0,0,191,253,0,47,224,0,0,31,255,192,127,192,0,0,1,255,244,255,128,0,0,0,63,255,255,0,0,0,0,11,255,253,0,0,0,0,1,255,252,0,0,0,0,0,127,255,0,0,0,0,1,255,255,208,0,0,0,7,255,255,244,0,0,0,47,253,63,254,0,0,0,255,244,11,255,128,0,11,255,208,1,255,224,0,191,255,0,0,127,192,11,255,248,0,0,31,64,255,255,208,0,0,1,0,255,254,0,0,0,0,0,63,224,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30cd ネ + 205,48,32,33,8,37,3,254,0,0,0,26,160,0,0,0,0,0,0,31,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,11,255,255,255,255,255,244,0,11,255,255,255,255,255,254,0,11,255,255,255,255,255,254,0,6,165,85,85,85,127,248,0,0,0,0,0,0,127,240,0,0,0,0,0,0,255,192,0,0,0,0,0,7,255,0,0,0,0,0,0,31,252,0,0,0,0,0,0,191,240,0,0,0,0,0,3,255,192,0,0,0,0,0,31,254,0,0,0,0,0,1,255,248,0,0,0,0,0,31,255,224,15,128,0,0,1,255,255,224,63,244,0,0,47,255,255,224,63,255,0,27,255,255,95,224,11,255,224,255,255,244,15,224,0,255,252,191,255,64,15,224,0,31,253,63,208,0,15,224,0,3,248,24,0,0,15,224,0,0,176,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0, + // 0x30ce ノ + 206,48,25,29,203,37,5,255,0,0,0,0,0,121,0,0,0,0,0,0,191,192,0,0,0,0,0,255,128,0,0,0,0,0,255,64,0,0,0,0,2,255,0,0,0,0,0,3,254,0,0,0,0,0,3,252,0,0,0,0,0,11,252,0,0,0,0,0,15,244,0,0,0,0,0,31,240,0,0,0,0,0,63,208,0,0,0,0,0,127,192,0,0,0,0,0,255,128,0,0,0,0,2,255,0,0,0,0,0,7,253,0,0,0,0,0,15,252,0,0,0,0,0,63,240,0,0,0,0,0,255,208,0,0,0,0,3,255,192,0,0,0,0,15,255,0,0,0,0,0,127,252,0,0,0,0,1,255,240,0,0,0,0,31,255,192,0,0,0,0,191,254,0,0,0,0,11,255,248,0,0,0,0,255,255,192,0,0,0,0,127,254,0,0,0,0,0,31,224,0,0,0,0,0,10,0,0,0,0,0,0, + // 0x30cf ハ + 207,48,33,27,243,37,2,0,0,0,4,0,0,44,0,0,0,0,0,31,224,3,254,0,0,0,0,0,47,224,1,255,0,0,0,0,0,63,208,0,255,128,0,0,0,0,63,192,0,127,192,0,0,0,0,63,192,0,63,208,0,0,0,0,127,128,0,31,240,0,0,0,0,191,64,0,15,244,0,0,0,0,255,0,0,11,252,0,0,0,1,255,0,0,3,252,0,0,0,2,254,0,0,2,254,0,0,0,3,253,0,0,1,255,0,0,0,3,252,0,0,0,255,64,0,0,11,248,0,0,0,191,192,0,0,15,244,0,0,0,63,192,0,0,31,240,0,0,0,63,224,0,0,63,224,0,0,0,47,240,0,0,127,192,0,0,0,15,244,0,0,255,128,0,0,0,15,248,0,1,255,0,0,0,0,7,252,0,3,254,0,0,0,0,3,253,0,11,252,0,0,0,0,3,254,0,31,248,0,0,0,0,2,255,0,63,240,0,0,0,0,1,255,64,127,208,0,0,0,0,0,255,64,7,192,0,0,0,0,0,228,0,0,0,0,0,0,0,0,0,0, + // 0x30d0 バ + 208,48,34,31,23,37,2,0,0,0,0,0,0,0,0,44,0,0,0,0,0,0,0,4,63,0,0,0,0,0,0,0,189,31,64,0,0,0,0,0,0,63,15,192,0,0,0,0,0,0,31,71,224,0,0,36,0,0,184,15,194,64,0,0,63,208,3,252,7,192,0,0,0,63,192,2,254,1,0,0,0,0,127,192,0,255,0,0,0,0,0,127,128,0,191,128,0,0,0,0,191,64,0,127,192,0,0,0,0,255,0,0,63,224,0,0,0,0,255,0,0,31,240,0,0,0,1,254,0,0,15,244,0,0,0,2,253,0,0,11,252,0,0,0,3,252,0,0,3,253,0,0,0,7,252,0,0,2,254,0,0,0,11,244,0,0,1,255,0,0,0,15,240,0,0,0,255,64,0,0,31,240,0,0,0,191,192,0,0,63,208,0,0,0,127,192,0,0,127,192,0,0,0,63,224,0,0,255,128,0,0,0,47,240,0,1,255,0,0,0,0,15,240,0,3,254,0,0,0,0,15,248,0,11,252,0,0,0,0,11,252,0,31,248,0,0,0,0,7,252,0,63,240,0,0,0,0,3,254,0,191,224,0,0,0,0,3,255,0,191,192,0,0,0,0,1,254,0,7,64,0,0,0,0,0,144,0, + // 0x30d1 パ + 209,48,34,32,32,37,2,255,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,11,255,128,0,0,0,0,0,0,31,67,208,0,0,0,0,0,0,45,1,224,0,0,0,0,0,0,45,0,224,0,0,62,128,2,252,31,3,208,0,0,63,192,3,253,11,255,192,0,0,63,192,1,255,1,253,0,0,0,127,128,0,255,64,0,0,0,0,191,64,0,191,192,0,0,0,0,255,64,0,63,208,0,0,0,0,255,0,0,47,224,0,0,0,0,255,0,0,15,240,0,0,0,2,254,0,0,15,248,0,0,0,3,253,0,0,7,252,0,0,0,3,252,0,0,3,253,0,0,0,7,248,0,0,2,255,0,0,0,15,244,0,0,1,255,0,0,0,15,240,0,0,0,255,64,0,0,47,240,0,0,0,191,192,0,0,63,208,0,0,0,127,192,0,0,127,192,0,0,0,63,224,0,0,255,128,0,0,0,47,240,0,1,255,0,0,0,0,31,240,0,3,254,0,0,0,0,15,248,0,7,253,0,0,0,0,11,252,0,15,252,0,0,0,0,7,252,0,47,244,0,0,0,0,3,253,0,127,224,0,0,0,0,3,254,0,255,192,0,0,0,0,2,255,0,31,128,0,0,0,0,1,244,0,1,0,0,0,0,0,0,0,0, + // 0x30d2 ヒ + 210,48,24,30,180,37,8,0,170,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,16,255,0,0,0,2,240,255,0,0,0,111,244,255,0,0,11,255,248,255,0,1,255,255,244,255,0,191,255,254,0,255,111,255,255,208,0,255,255,255,244,0,0,255,255,249,0,0,0,255,254,64,0,0,0,255,64,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,191,208,0,0,1,111,127,255,255,255,255,255,63,255,255,255,255,255,15,255,255,255,255,255,0,111,255,255,250,165, + // 0x30d3 ビ + 211,48,28,33,231,37,6,255,0,0,0,0,0,0,144,0,0,0,0,0,3,240,0,0,0,0,2,224,252,127,128,0,0,3,240,189,127,128,0,0,0,252,63,127,128,0,0,0,189,46,127,128,0,0,0,63,0,127,128,0,0,0,40,0,127,128,0,0,0,16,0,127,128,0,0,2,240,0,127,128,0,0,47,248,0,127,128,0,7,255,252,0,127,128,1,255,255,244,0,127,129,191,255,254,64,0,127,239,255,255,208,0,0,127,255,255,248,0,0,0,127,255,254,0,0,0,0,127,254,64,0,0,0,0,127,208,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,192,0,0,0,0,0,63,224,0,0,0,91,64,63,255,255,255,255,255,64,31,255,255,255,255,255,64,7,255,255,255,255,255,64,0,111,255,255,254,165,0, + // 0x30d4 ピ + 212,48,29,32,0,37,6,255,0,0,0,0,0,7,244,0,0,0,0,0,0,47,254,0,106,128,0,0,0,61,15,64,127,128,0,0,0,120,7,128,127,128,0,0,0,180,3,192,127,128,0,0,0,120,7,128,127,128,0,0,0,61,31,64,127,128,0,0,0,47,254,0,127,128,0,0,1,247,244,0,127,128,0,0,27,244,0,0,127,128,0,2,255,252,0,0,127,128,0,127,255,252,0,0,127,128,111,255,255,128,0,0,127,155,255,255,228,0,0,0,127,255,255,253,0,0,0,0,127,255,254,64,0,0,0,0,127,255,144,0,0,0,0,0,127,208,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,192,0,0,0,0,0,0,63,224,0,0,0,91,64,0,63,255,255,255,255,255,64,0,31,255,255,255,255,255,64,0,7,255,255,255,255,255,64,0,0,111,255,255,254,165,0,0, + // 0x30d5 フ + 213,48,27,29,203,37,5,254,255,255,255,255,255,255,224,255,255,255,255,255,255,252,255,255,255,255,255,255,252,186,170,170,170,170,175,248,0,0,0,0,0,15,244,0,0,0,0,0,15,240,0,0,0,0,0,31,240,0,0,0,0,0,47,224,0,0,0,0,0,63,208,0,0,0,0,0,63,192,0,0,0,0,0,191,128,0,0,0,0,0,255,64,0,0,0,0,2,255,0,0,0,0,0,3,254,0,0,0,0,0,11,252,0,0,0,0,0,31,244,0,0,0,0,0,127,240,0,0,0,0,0,255,208,0,0,0,0,3,255,64,0,0,0,0,31,254,0,0,0,0,0,191,248,0,0,0,0,7,255,224,0,0,0,0,127,255,128,0,0,0,11,255,253,0,0,0,1,255,255,224,0,0,0,0,255,255,64,0,0,0,0,63,244,0,0,0,0,0,14,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x30d6 ブ + 214,48,32,35,24,37,4,254,0,0,0,0,0,0,0,128,0,0,0,0,0,6,7,240,0,0,0,0,0,15,194,244,0,0,0,0,0,11,224,252,0,0,0,0,0,3,240,126,0,0,0,0,0,1,248,56,191,170,170,170,170,171,240,0,191,255,255,255,255,255,252,0,191,255,255,255,255,255,253,0,191,255,255,255,255,255,252,0,0,0,0,0,0,11,252,0,0,0,0,0,0,11,248,0,0,0,0,0,0,15,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,47,224,0,0,0,0,0,0,63,208,0,0,0,0,0,0,63,192,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,64,0,0,0,0,0,2,255,0,0,0,0,0,0,7,253,0,0,0,0,0,0,15,252,0,0,0,0,0,0,47,244,0,0,0,0,0,0,191,224,0,0,0,0,0,1,255,192,0,0,0,0,0,11,255,0,0,0,0,0,0,63,253,0,0,0,0,0,1,255,244,0,0,0,0,0,31,255,208,0,0,0,0,1,255,255,0,0,0,0,0,111,255,248,0,0,0,0,0,255,255,208,0,0,0,0,0,63,254,0,0,0,0,0,0,31,208,0,0,0,0,0,0,4,0,0,0,0,0,0, + // 0x30d7 プ + 215,48,33,34,50,37,4,254,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,63,252,0,0,0,0,0,0,0,184,47,0,0,0,0,0,0,0,240,15,0,0,0,0,0,0,0,240,11,64,191,170,170,170,170,171,240,15,0,191,255,255,255,255,255,248,47,0,191,255,255,255,255,255,255,252,0,191,255,255,255,255,255,255,224,0,0,0,0,0,0,11,252,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,47,244,0,0,0,0,0,0,0,191,240,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,11,255,64,0,0,0,0,0,0,63,253,0,0,0,0,0,0,1,255,244,0,0,0,0,0,0,31,255,208,0,0,0,0,0,1,255,255,0,0,0,0,0,0,111,255,248,0,0,0,0,0,0,255,255,208,0,0,0,0,0,0,63,254,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0, + // 0x30d8 ヘ + 216,48,33,24,216,37,2,1,0,0,0,100,0,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,15,255,192,0,0,0,0,0,0,63,255,240,0,0,0,0,0,0,191,255,252,0,0,0,0,0,1,255,135,255,0,0,0,0,0,7,254,1,255,192,0,0,0,0,15,252,0,127,240,0,0,0,0,63,240,0,47,252,0,0,0,0,191,208,0,11,254,0,0,0,2,255,128,0,2,255,128,0,0,11,255,0,0,0,255,224,0,0,47,252,0,0,0,63,248,0,0,191,244,0,0,0,15,253,0,0,127,224,0,0,0,7,255,64,0,31,192,0,0,0,1,255,192,0,11,0,0,0,0,0,191,240,0,0,0,0,0,0,0,63,252,0,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0, + // 0x30d9 ベ + 217,48,33,28,252,37,2,0,0,0,0,0,0,0,2,192,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,3,244,0,0,0,0,0,0,31,193,252,0,0,0,1,248,0,15,208,190,0,0,0,11,255,0,3,240,63,0,0,0,47,255,192,2,248,40,0,0,0,127,255,240,0,252,0,0,0,1,255,239,252,0,160,0,0,0,3,255,7,255,0,0,0,0,0,15,252,1,255,192,0,0,0,0,47,240,0,127,240,0,0,0,0,191,208,0,31,252,0,0,0,1,255,128,0,11,255,0,0,0,7,255,0,0,2,255,128,0,0,31,253,0,0,0,255,224,0,0,127,244,0,0,0,63,248,0,0,255,224,0,0,0,15,253,0,0,127,192,0,0,0,7,255,64,0,31,64,0,0,0,1,255,208,0,6,0,0,0,0,0,191,240,0,0,0,0,0,0,0,63,252,0,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,1,255,64,0,0,0,0,0,0,0,189,0,0,0,0,0,0,0,0,52,0,0,0,0,0,0,0,0,0,0, + // 0x30da ペ + 218,48,33,28,252,37,2,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,1,255,240,0,0,0,0,0,0,3,225,252,0,0,0,0,0,0,7,192,61,0,0,0,2,248,0,11,64,45,0,0,0,11,255,0,11,64,45,0,0,0,47,255,192,7,128,61,0,0,0,127,255,240,3,224,188,0,0,1,255,239,252,1,255,244,0,0,3,255,7,255,0,47,128,0,0,15,252,1,255,192,0,0,0,0,47,240,0,127,240,0,0,0,0,191,208,0,31,252,0,0,0,1,255,128,0,11,255,0,0,0,7,255,0,0,2,255,128,0,0,15,253,0,0,0,255,224,0,0,63,248,0,0,0,63,248,0,0,255,240,0,0,0,15,253,0,0,191,192,0,0,0,7,255,64,0,47,128,0,0,0,1,255,208,0,11,0,0,0,0,0,191,240,0,0,0,0,0,0,0,63,252,0,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,1,255,64,0,0,0,0,0,0,0,189,0,0,0,0,0,0,0,0,52,0,0,0,0,0,0,0,0,0,0, + // 0x30db ホ + 219,48,32,32,0,37,3,254,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,42,170,170,175,250,170,170,164,63,255,255,255,255,255,255,248,63,255,255,255,255,255,255,248,63,255,255,255,255,255,255,248,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,9,0,15,240,0,96,0,0,15,208,15,240,3,248,0,0,47,208,15,240,7,252,0,0,127,192,15,240,2,255,0,0,255,64,15,240,0,255,128,2,254,0,15,240,0,127,192,7,252,0,15,240,0,47,224,15,244,0,15,240,0,15,244,63,224,0,15,240,0,11,252,255,192,0,15,240,0,3,253,255,64,0,15,240,0,1,253,45,0,0,15,240,0,0,224,0,0,0,15,240,0,0,0,0,0,16,31,240,0,0,0,0,0,127,255,240,0,0,0,0,0,127,255,224,0,0,0,0,0,63,255,192,0,0,0,0,0,21,169,0,0,0,0, + // 0x30dc ボ + 220,48,34,34,50,37,2,254,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,124,0,0,0,0,6,164,0,184,63,0,0,0,0,11,244,0,252,47,64,0,0,0,11,244,0,126,15,192,0,0,0,7,244,0,47,71,208,0,0,0,7,244,0,15,130,0,0,0,0,7,244,0,9,0,0,0,0,0,7,244,0,0,0,0,47,255,255,255,255,255,255,252,0,47,255,255,255,255,255,255,252,0,47,255,255,255,255,255,255,252,0,26,170,170,175,250,170,170,168,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,16,0,0,0,11,128,7,244,0,248,0,0,0,15,240,7,244,3,253,0,0,0,63,208,7,244,1,255,0,0,0,127,192,7,244,0,191,128,0,0,255,0,7,244,0,63,208,0,3,254,0,7,244,0,31,240,0,11,252,0,7,244,0,15,248,0,31,240,0,7,244,0,3,252,0,127,208,0,7,244,0,2,255,0,191,128,0,7,244,0,0,254,0,31,0,0,7,244,0,0,180,0,0,0,0,7,244,0,0,0,0,0,0,16,15,244,0,0,0,0,0,0,63,255,244,0,0,0,0,0,0,63,255,240,0,0,0,0,0,0,63,255,224,0,0,0,0,0,0,5,89,0,0,0,0,0, + // 0x30dd ポ + 221,48,33,35,59,37,2,254,0,0,0,0,0,0,6,228,0,0,0,0,0,0,0,47,253,0,0,0,0,0,0,0,61,31,0,0,0,0,11,248,0,180,11,64,0,0,0,11,244,0,180,7,128,0,0,0,11,244,0,180,11,64,0,0,0,7,244,0,61,31,0,0,0,0,7,244,0,47,253,0,0,0,0,7,244,0,6,228,0,0,0,0,7,244,0,0,0,0,47,255,255,255,255,255,255,252,0,47,255,255,255,255,255,255,252,0,47,255,255,255,255,255,255,252,0,26,170,170,175,250,170,170,168,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,16,0,0,0,11,128,7,244,0,248,0,0,0,15,240,7,244,3,253,0,0,0,63,208,7,244,1,255,0,0,0,127,192,7,244,0,191,128,0,0,255,0,7,244,0,63,208,0,3,254,0,7,244,0,31,240,0,11,252,0,7,244,0,15,248,0,31,240,0,7,244,0,3,252,0,127,208,0,7,244,0,2,255,0,191,128,0,7,244,0,0,254,0,31,0,0,7,244,0,0,180,0,0,0,0,7,244,0,0,0,0,0,0,16,15,244,0,0,0,0,0,0,63,255,244,0,0,0,0,0,0,63,255,240,0,0,0,0,0,0,63,255,224,0,0,0,0,0,0,5,89,0,0,0,0,0, + // 0x30de マ + 222,48,32,30,240,37,3,253,0,0,0,0,0,0,0,64,127,255,255,255,255,255,255,240,127,255,255,255,255,255,255,252,127,255,255,255,255,255,255,253,122,170,170,170,170,170,191,248,0,0,0,0,0,0,63,240,0,0,0,0,0,0,255,208,0,0,0,0,0,1,255,128,0,0,0,0,0,3,255,0,0,0,0,0,0,15,252,0,0,0,0,0,0,63,244,0,0,1,128,0,0,191,224,0,0,7,224,0,2,255,128,0,0,47,252,0,11,255,0,0,0,15,255,0,47,252,0,0,0,2,255,208,191,240,0,0,0,0,191,251,255,192,0,0,0,0,31,255,255,0,0,0,0,0,7,255,248,0,0,0,0,0,0,255,240,0,0,0,0,0,0,63,248,0,0,0,0,0,0,15,253,0,0,0,0,0,0,7,255,64,0,0,0,0,0,1,255,208,0,0,0,0,0,0,127,240,0,0,0,0,0,0,47,252,0,0,0,0,0,0,11,253,0,0,0,0,0,0,3,240,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0, + // 0x30df ミ + 223,48,24,30,180,37,6,255,0,186,64,0,0,0,0,255,255,144,0,0,1,255,255,255,144,0,1,191,255,255,255,144,0,0,111,255,255,255,0,0,0,27,255,255,0,0,0,0,27,253,0,0,0,0,0,108,0,0,0,0,0,0,0,0,0,0,0,0,7,229,0,0,0,0,11,255,249,0,0,0,15,255,255,249,0,0,10,255,255,255,249,0,0,6,191,255,255,224,0,0,1,191,255,208,0,0,0,1,191,192,0,0,0,0,6,128,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,127,228,0,0,0,0,255,255,229,0,0,0,255,255,255,249,0,0,107,255,255,255,228,0,0,26,255,255,255,224,0,0,6,255,255,252,0,0,0,6,255,248,0,0,0,0,27,240,0,0,0,0,0,96, + // 0x30e0 ム + 224,48,33,32,32,37,2,254,0,0,0,20,0,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,47,208,0,2,192,0,0,0,0,63,192,0,47,224,0,0,0,0,127,192,0,15,244,0,0,0,0,191,64,0,11,252,0,0,0,0,255,0,0,3,253,0,0,0,1,255,0,0,1,255,0,0,0,2,253,0,0,0,255,128,0,0,3,252,0,0,0,127,192,0,0,7,252,0,0,0,63,224,0,0,11,244,0,21,175,255,240,0,0,15,250,255,255,255,255,248,0,127,255,255,255,255,255,255,252,0,63,255,255,255,255,255,167,254,0,63,255,255,254,149,0,2,255,0,63,250,80,0,0,0,0,255,128,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,116,0,0,0,0,0,0,0,0,0,0, + // 0x30e1 メ + 225,48,29,31,248,37,4,254,0,0,0,0,0,14,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,63,224,0,0,0,0,0,0,63,192,0,0,0,0,0,0,191,128,0,0,31,0,0,0,255,64,0,0,63,224,0,1,255,0,0,0,191,252,0,3,253,0,0,0,31,255,64,7,252,0,0,0,2,255,240,15,244,0,0,0,0,127,253,47,240,0,0,0,0,15,255,191,208,0,0,0,0,2,255,255,128,0,0,0,0,0,127,255,0,0,0,0,0,0,15,255,64,0,0,0,0,0,31,255,224,0,0,0,0,0,63,255,248,0,0,0,0,0,255,239,254,0,0,0,0,3,255,71,255,192,0,0,0,31,253,1,255,240,0,0,0,127,244,0,63,252,0,0,2,255,208,0,15,255,0,0,15,255,64,0,3,255,128,0,127,253,0,0,0,255,0,7,255,240,0,0,0,60,0,63,255,128,0,0,0,16,0,191,253,0,0,0,0,0,0,31,224,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30e2 モ + 226,48,30,29,232,37,4,255,6,85,85,85,85,85,84,0,7,255,255,255,255,255,252,0,7,255,255,255,255,255,252,0,7,255,255,255,255,255,252,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,170,170,175,254,170,170,170,144,255,255,255,255,255,255,255,224,255,255,255,255,255,255,255,224,255,255,255,255,255,255,255,224,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,252,0,0,0,0,0,0,7,255,64,0,21,64,0,0,3,255,255,255,255,128,0,0,2,255,255,255,255,64,0,0,0,191,255,255,255,64,0,0,0,6,175,170,170,0, + // 0x30e3 ャ + 227,48,27,27,189,37,5,253,0,0,80,0,0,0,0,0,15,224,0,0,0,0,0,15,240,0,0,0,0,0,11,240,0,0,0,0,0,7,244,0,0,1,144,0,3,248,0,6,255,248,0,2,252,27,255,255,252,0,2,255,255,255,255,244,22,191,255,255,254,95,224,191,255,255,249,0,63,192,127,255,255,0,0,191,64,63,148,127,64,1,254,0,16,0,63,128,3,252,0,0,0,63,192,15,244,0,0,0,47,192,63,208,0,0,0,31,208,127,128,0,0,0,15,240,10,0,0,0,0,15,240,0,0,0,0,0,11,244,0,0,0,0,0,3,248,0,0,0,0,0,3,252,0,0,0,0,0,2,252,0,0,0,0,0,1,253,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,191,64,0,0,0,0,0,121,0,0,0, + // 0x30e4 ヤ + 228,48,32,32,0,37,2,254,0,0,108,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,253,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,255,0,0,0,0,16,0,0,255,0,0,0,107,252,0,0,191,64,1,175,255,255,0,0,127,134,255,255,255,254,0,0,127,255,255,255,255,252,5,175,255,255,255,249,15,244,255,255,255,255,228,0,31,240,191,255,255,240,0,0,63,192,127,254,79,240,0,0,255,64,57,64,11,244,0,2,255,0,0,0,7,248,0,11,252,0,0,0,3,252,0,47,244,0,0,0,3,252,0,191,208,0,0,0,2,254,1,255,128,0,0,0,1,255,0,126,0,0,0,0,0,255,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,191,128,0,0,0,0,0,0,127,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,208,0,0,0,0,0,0,47,224,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,244,0,0,0,0,0,0,11,248,0,0,0,0,0,0,7,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,2,64,0,0,0, + // 0x30e5 ュ + 229,48,27,20,140,37,5,255,0,255,255,255,255,208,0,0,255,255,255,255,244,0,0,255,255,255,255,244,0,0,170,170,170,175,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,224,0,0,0,0,0,31,224,0,0,0,0,0,31,208,0,0,0,0,0,47,208,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,128,0,0,0,0,0,127,128,0,106,170,170,170,255,234,168,191,255,255,255,255,255,252,191,255,255,255,255,255,252,191,255,255,255,255,255,252,0,0,0,0,0,0,0, + // 0x30e6 ユ + 230,48,32,25,200,37,3,1,0,254,170,170,170,191,128,0,0,255,255,255,255,255,240,0,0,255,255,255,255,255,240,0,0,255,255,255,255,255,240,0,0,0,0,0,0,47,240,0,0,0,0,0,0,47,224,0,0,0,0,0,0,47,224,0,0,0,0,0,0,63,208,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,191,128,0,0,0,0,0,0,191,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,254,0,0,0,0,0,0,2,254,0,0,255,255,255,255,255,255,255,253,255,255,255,255,255,255,255,253,255,255,255,255,255,255,255,253,255,255,255,255,255,255,255,253,0,0,0,0,0,0,0,0, + // 0x30e7 ョ + 231,48,22,24,144,37,7,253,63,255,255,255,255,240,63,255,255,255,255,240,63,255,255,255,255,240,21,85,85,85,95,240,0,0,0,0,11,240,0,0,0,0,11,240,0,0,0,0,11,240,0,0,0,0,11,240,0,0,0,0,11,240,15,255,255,255,255,240,15,255,255,255,255,240,15,255,255,255,255,240,5,85,85,85,95,240,0,0,0,0,11,240,0,0,0,0,11,240,0,0,0,0,11,240,0,0,0,0,11,240,0,0,0,0,11,240,21,85,85,85,95,240,127,255,255,255,255,240,127,255,255,255,255,240,127,255,255,255,255,240,0,0,0,0,11,240,0,0,0,0,5,80, + // 0x30e8 ヨ + 232,48,26,28,196,37,5,255,63,255,255,255,255,255,240,63,255,255,255,255,255,240,63,255,255,255,255,255,240,42,170,170,170,170,175,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,15,255,255,255,255,255,240,15,255,255,255,255,255,240,15,255,255,255,255,255,240,10,170,170,170,170,175,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,106,170,170,170,170,175,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,127,255,255,255,255,255,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240, + // 0x30e9 ラ + 233,48,28,31,217,37,5,254,1,169,85,85,85,106,128,2,255,255,255,255,255,192,2,255,255,255,255,255,192,2,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,165,85,85,85,85,85,160,255,255,255,255,255,255,253,255,255,255,255,255,255,254,255,255,255,255,255,255,252,0,0,0,0,0,7,252,0,0,0,0,0,11,248,0,0,0,0,0,15,240,0,0,0,0,0,47,224,0,0,0,0,0,63,208,0,0,0,0,0,191,192,0,0,0,0,1,255,0,0,0,0,0,7,254,0,0,0,0,0,31,252,0,0,0,0,0,127,240,0,0,0,0,2,255,192,0,0,0,0,31,255,0,0,0,0,2,255,252,0,0,0,0,111,255,224,0,0,0,15,255,255,64,0,0,0,7,255,244,0,0,0,0,1,255,64,0,0,0,0,0,160,0,0,0,0, + // 0x30ea リ + 234,48,21,31,186,37,8,254,170,0,0,0,63,192,255,0,0,0,63,192,255,0,0,0,63,192,255,0,0,0,63,192,255,0,0,0,63,192,255,0,0,0,63,192,255,0,0,0,63,192,255,0,0,0,63,192,255,0,0,0,63,192,255,0,0,0,63,192,255,0,0,0,63,192,255,0,0,0,63,192,255,0,0,0,63,192,255,0,0,0,63,192,255,0,0,0,63,192,255,0,0,0,127,128,255,0,0,0,127,128,255,0,0,0,191,64,85,0,0,0,255,0,0,0,0,1,255,0,0,0,0,3,254,0,0,0,0,11,252,0,0,0,0,47,248,0,0,0,0,191,240,0,0,0,7,255,192,0,0,0,111,255,0,0,0,11,255,252,0,0,0,31,255,224,0,0,0,7,254,0,0,0,0,2,224,0,0,0,0,0,0,0,0,0, + // 0x30eb ル + 235,48,33,29,5,37,2,255,0,2,253,0,63,208,0,0,0,0,2,253,0,63,192,0,0,0,0,2,253,0,47,192,0,0,0,0,2,253,0,47,192,0,0,0,0,2,253,0,47,192,0,0,0,0,2,253,0,47,192,0,0,0,0,2,252,0,47,192,0,0,0,0,2,252,0,47,192,0,0,0,0,2,252,0,47,192,0,0,0,0,2,252,0,47,192,0,0,0,0,2,252,0,47,192,0,0,0,0,2,252,0,47,192,0,0,0,0,3,252,0,47,192,0,0,0,0,3,252,0,47,192,0,0,0,0,3,252,0,47,192,0,0,0,0,3,248,0,47,192,0,7,0,0,7,248,0,47,192,0,15,128,0,11,244,0,47,192,0,63,192,0,15,240,0,47,192,0,255,192,0,31,240,0,47,192,3,255,0,0,63,208,0,47,192,31,252,0,0,127,192,0,47,192,191,240,0,0,255,128,0,47,203,255,192,0,2,255,0,0,47,255,255,0,0,11,253,0,0,47,255,248,0,0,47,248,0,0,63,255,208,0,0,191,240,0,0,63,254,0,0,0,47,192,0,0,31,224,0,0,0,7,0,0,0,3,64,0,0,0, + // 0x30ec レ + 236,48,26,29,203,37,8,255,255,64,0,0,0,0,0,255,64,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,3,64,255,0,0,0,0,15,192,255,0,0,0,0,63,224,255,0,0,0,0,255,192,255,0,0,0,7,255,0,255,0,0,0,47,253,0,255,0,0,1,255,244,0,255,0,0,11,255,192,0,255,0,0,191,254,0,0,255,0,11,255,244,0,0,255,0,191,255,128,0,0,255,95,255,252,0,0,0,255,255,255,208,0,0,0,255,255,253,0,0,0,0,255,255,128,0,0,0,0,63,228,0,0,0,0,0,9,0,0,0,0,0,0, + // 0x30ed ロ + 237,48,27,28,196,37,5,255,170,170,170,170,170,170,168,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,170,170,170,170,171,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,0,0,0,0,0,0,0, + // 0x30ee ヮ + 238,48,25,25,175,37,6,252,21,85,85,85,85,104,0,127,255,255,255,255,255,64,63,255,255,255,255,255,192,63,255,255,255,255,255,128,63,128,0,0,0,191,64,63,128,0,0,0,255,0,63,128,0,0,0,255,0,63,128,0,0,0,255,0,63,128,0,0,1,254,0,63,128,0,0,2,253,0,127,128,0,0,3,252,0,42,64,0,0,11,248,0,0,0,0,0,15,240,0,0,0,0,0,47,240,0,0,0,0,0,127,208,0,0,0,0,1,255,128,0,0,0,0,7,255,0,0,0,0,0,31,252,0,0,0,0,0,191,244,0,0,0,0,11,255,192,0,0,0,1,191,255,0,0,0,0,11,255,248,0,0,0,0,3,255,192,0,0,0,0,0,248,0,0,0,0,0,0,0,0,0,0,0, + // 0x30ef ワ + 239,48,29,29,232,37,4,254,127,255,255,255,255,255,253,0,127,255,255,255,255,255,255,128,127,255,255,255,255,255,255,128,127,234,170,170,170,170,255,64,127,128,0,0,0,0,255,0,127,128,0,0,0,1,255,0,127,128,0,0,0,1,255,0,127,128,0,0,0,2,254,0,127,128,0,0,0,3,253,0,127,128,0,0,0,3,252,0,127,128,0,0,0,7,252,0,127,128,0,0,0,11,248,0,127,128,0,0,0,15,244,0,21,64,0,0,0,31,240,0,0,0,0,0,0,63,224,0,0,0,0,0,0,127,192,0,0,0,0,0,0,255,128,0,0,0,0,0,3,255,0,0,0,0,0,0,11,254,0,0,0,0,0,0,47,248,0,0,0,0,0,0,255,240,0,0,0,0,0,7,255,192,0,0,0,0,0,47,255,0,0,0,0,0,2,255,252,0,0,0,0,0,111,255,224,0,0,0,0,3,255,255,64,0,0,0,0,0,255,248,0,0,0,0,0,0,63,128,0,0,0,0,0,0,4,0,0,0,0,0, + // 0x30f0 ヰ + 240,48,31,32,0,37,3,254,0,0,0,0,1,168,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,31,255,255,255,255,255,255,240,31,255,255,255,255,255,255,240,31,255,255,255,255,255,255,240,26,86,254,85,86,254,85,96,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,170,170,170,170,171,254,170,168,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,1,168,0,0, + // 0x30f1 ヱ + 241,48,32,27,216,37,3,0,14,170,170,170,170,170,171,192,15,255,255,255,255,255,255,244,15,255,255,255,255,255,255,244,15,255,255,255,255,255,255,240,0,0,0,0,0,0,63,192,0,0,0,0,0,0,191,128,0,0,0,0,0,1,255,0,0,0,0,63,192,7,253,0,0,0,0,63,192,31,248,0,0,0,0,63,192,127,224,0,0,0,0,63,193,255,192,0,0,0,0,63,193,255,0,0,0,0,0,63,192,44,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,253,255,255,255,255,255,255,255,253,255,255,255,255,255,255,255,253,255,255,255,255,255,255,255,253,0,0,0,0,0,0,0,0, + // 0x30f2 ヲ + 242,48,28,30,210,37,5,254,58,170,170,170,170,170,224,127,255,255,255,255,255,253,127,255,255,255,255,255,255,127,255,255,255,255,255,253,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,7,248,0,0,0,0,0,11,248,0,0,0,0,0,11,244,0,0,0,0,0,15,240,10,85,85,85,85,95,240,31,255,255,255,255,255,224,31,255,255,255,255,255,192,31,255,255,255,255,255,192,0,0,0,0,0,191,128,0,0,0,0,0,255,0,0,0,0,0,2,254,0,0,0,0,0,7,252,0,0,0,0,0,31,248,0,0,0,0,0,63,240,0,0,0,0,1,255,192,0,0,0,0,7,255,64,0,0,0,0,47,253,0,0,0,0,1,255,244,0,0,0,0,31,255,192,0,0,0,2,255,254,0,0,0,0,127,255,244,0,0,0,0,47,255,128,0,0,0,0,15,248,0,0,0,0,0,2,64,0,0,0,0, + // 0x30f3 ン + 243,48,30,29,232,37,5,255,2,64,0,0,0,0,0,0,15,224,0,0,0,0,0,0,47,252,0,0,0,0,0,0,31,255,64,0,0,0,0,0,3,255,208,0,0,0,0,0,0,191,248,0,0,0,0,0,0,31,254,0,0,0,6,0,0,7,255,192,0,0,15,0,0,1,255,64,0,0,31,192,0,0,61,0,0,0,63,208,0,0,4,0,0,0,255,192,0,0,0,0,0,2,255,64,0,0,0,0,0,7,254,0,0,0,0,0,0,31,252,0,0,0,0,0,0,127,240,0,0,0,0,0,1,255,208,0,0,0,0,0,7,255,64,0,0,0,0,0,47,253,0,0,0,0,0,1,255,244,0,0,0,0,0,11,255,208,0,0,0,0,0,127,255,0,0,0,0,0,7,255,248,0,0,0,0,0,191,255,208,0,0,0,0,47,255,254,0,0,0,0,111,255,255,224,0,0,0,0,191,255,254,0,0,0,0,0,63,255,224,0,0,0,0,0,31,248,0,0,0,0,0,0,5,0,0,0,0,0,0,0, + // 0x30f4 ヴ + 244,48,31,35,24,37,4,253,0,0,0,0,0,0,15,192,0,0,1,84,0,11,71,224,0,0,2,254,0,15,195,240,0,0,2,254,0,11,224,252,0,0,2,253,0,3,240,188,0,0,2,253,0,1,248,16,0,0,2,253,0,0,144,0,0,0,2,253,0,0,16,0,255,255,255,255,255,255,252,0,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,0,255,85,85,85,85,87,254,0,254,0,0,0,0,3,253,0,254,0,0,0,0,3,253,0,254,0,0,0,0,3,252,0,254,0,0,0,0,7,252,0,254,0,0,0,0,11,248,0,254,0,0,0,0,15,244,0,254,0,0,0,0,31,240,0,255,0,0,0,0,47,224,0,84,0,0,0,0,63,192,0,0,0,0,0,0,255,192,0,0,0,0,0,1,255,64,0,0,0,0,0,3,254,0,0,0,0,0,0,15,252,0,0,0,0,0,0,63,244,0,0,0,0,0,1,255,224,0,0,0,0,0,11,255,128,0,0,0,0,0,191,254,0,0,0,0,0,27,255,244,0,0,0,0,7,255,255,192,0,0,0,0,3,255,253,0,0,0,0,0,0,255,224,0,0,0,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30f5 ヵ + 245,48,24,27,162,37,6,253,0,0,42,128,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,47,192,0,0,0,0,63,128,0,0,0,0,63,128,0,0,191,255,255,255,255,248,191,255,255,255,255,254,191,255,255,255,255,254,85,85,127,149,85,254,0,0,127,0,0,254,0,0,191,0,0,254,0,0,191,0,0,253,0,0,254,0,0,253,0,1,253,0,0,253,0,2,252,0,0,252,0,3,248,0,1,252,0,11,240,0,1,252,0,31,224,0,2,252,0,63,208,0,2,248,0,255,128,0,3,248,3,255,0,0,7,244,15,252,0,105,95,240,191,244,0,127,255,240,191,208,0,127,255,192,31,0,0,63,255,64,0,0,0,0,0,0, + // 0x30f6 ヶ + 246,48,28,27,189,37,4,252,0,0,254,0,0,0,0,0,0,255,0,0,0,0,0,1,254,0,0,0,0,0,2,253,0,0,0,0,0,3,252,0,0,0,0,0,7,249,85,85,85,85,0,15,255,255,255,255,254,0,47,255,255,255,255,254,0,63,255,255,255,255,254,0,255,64,0,254,0,0,2,254,0,0,253,0,0,11,252,0,1,253,0,0,47,244,0,2,252,0,0,127,208,0,3,252,0,0,31,128,0,3,252,0,0,1,0,0,11,244,0,0,0,0,0,15,240,0,0,0,0,0,47,224,0,0,0,0,0,63,192,0,0,0,0,0,255,192,0,0,0,0,2,255,0,0,0,0,0,15,253,0,0,0,0,0,63,248,0,0,0,0,2,255,224,0,0,0,0,2,255,128,0,0,0,0,0,61,0,0,0,0,0,0,0,0,0,0,0, + // 0x30f7 ヷ + 247,48,31,36,32,37,4,253,0,0,0,0,0,0,2,128,0,0,0,0,0,26,15,192,0,0,0,0,0,63,7,240,0,0,0,0,0,31,131,244,0,0,0,0,0,15,193,248,0,0,0,0,0,7,224,64,0,0,0,0,0,1,0,0,255,255,255,255,255,255,244,0,255,255,255,255,255,255,254,0,255,255,255,255,255,255,255,0,255,170,170,170,170,171,254,0,255,0,0,0,0,3,253,0,255,0,0,0,0,3,252,0,255,0,0,0,0,3,252,0,255,0,0,0,0,7,252,0,255,0,0,0,0,11,248,0,255,0,0,0,0,15,244,0,255,0,0,0,0,15,240,0,255,0,0,0,0,31,240,0,255,0,0,0,0,63,224,0,85,0,0,0,0,63,192,0,0,0,0,0,0,191,192,0,0,0,0,0,0,255,64,0,0,0,0,0,3,255,0,0,0,0,0,0,11,253,0,0,0,0,0,0,31,248,0,0,0,0,0,0,127,240,0,0,0,0,0,2,255,192,0,0,0,0,0,15,255,64,0,0,0,0,0,191,253,0,0,0,0,0,7,255,244,0,0,0,0,0,191,255,192,0,0,0,0,11,255,254,0,0,0,0,0,3,255,240,0,0,0,0,0,0,254,0,0,0,0,0,0,0,32,0,0,0,0,0, + // 0x30f8 ヸ + 248,48,33,34,50,37,3,254,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,4,124,0,0,0,0,0,1,84,60,61,0,0,0,0,0,3,252,62,47,0,0,0,0,0,3,252,31,15,64,0,0,0,0,3,252,15,79,64,0,0,0,0,3,252,11,64,0,0,0,0,0,3,252,0,0,0,42,85,85,85,87,253,86,160,0,63,255,255,255,255,255,255,240,0,63,255,255,255,255,255,255,240,0,63,255,255,255,255,255,255,240,0,0,2,252,0,3,252,0,0,0,0,2,252,0,3,252,0,0,0,0,2,252,0,3,252,0,0,0,0,2,252,0,3,252,0,0,0,0,2,252,0,3,252,0,0,0,0,2,252,0,3,252,0,0,0,0,2,252,0,3,252,0,0,0,0,2,252,0,3,252,0,0,0,0,2,252,0,3,252,0,0,0,0,2,252,0,3,252,0,0,0,255,255,255,255,255,255,255,248,0,255,255,255,255,255,255,255,248,0,255,255,255,255,255,255,255,248,0,170,170,170,170,171,254,170,164,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,2,168,0,0,0, + // 0x30f9 ヹ + 249,48,33,34,50,37,2,255,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,252,0,0,0,0,0,0,2,240,190,0,0,0,0,0,0,1,248,63,0,0,0,0,0,0,0,252,31,128,0,0,0,0,0,0,126,9,0,0,0,0,0,0,0,40,0,0,7,170,170,170,170,170,171,224,0,7,255,255,255,255,255,255,252,0,7,255,255,255,255,255,255,252,0,7,255,255,255,255,255,255,244,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,255,128,0,0,0,0,47,224,2,255,0,0,0,0,0,47,224,11,252,0,0,0,0,0,47,208,47,244,0,0,0,0,0,47,208,255,224,0,0,0,0,0,47,208,191,128,0,0,0,0,0,47,208,30,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,191,255,255,255,255,255,255,255,0,191,255,255,255,255,255,255,255,0,191,255,255,255,255,255,255,255,0,191,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0, + // 0x30fa ヺ + 250,48,31,36,32,37,4,253,0,0,0,0,0,0,6,128,0,0,0,0,0,26,15,208,0,0,0,0,0,63,71,240,0,0,0,0,0,31,195,244,0,0,0,0,0,15,209,248,0,0,0,0,0,7,208,64,170,170,170,170,170,171,208,0,191,255,255,255,255,255,248,0,191,255,255,255,255,255,253,0,191,255,255,255,255,255,252,0,0,0,0,0,0,7,252,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,31,224,0,25,85,85,85,85,111,208,0,47,255,255,255,255,255,192,0,47,255,255,255,255,255,192,0,47,255,255,255,255,255,128,0,0,0,0,0,0,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,3,253,0,0,0,0,0,0,15,252,0,0,0,0,0,0,47,240,0,0,0,0,0,0,127,208,0,0,0,0,0,1,255,128,0,0,0,0,0,11,255,0,0,0,0,0,0,63,252,0,0,0,0,0,2,255,240,0,0,0,0,0,31,255,192,0,0,0,0,2,255,254,0,0,0,0,0,127,255,240,0,0,0,0,0,63,255,64,0,0,0,0,0,31,244,0,0,0,0,0,0,6,64,0,0,0,0,0, + // 0x30fb ・ + 251,48,9,9,27,37,14,10,1,144,0,31,253,0,63,255,0,191,255,128,191,255,128,191,255,128,127,255,64,47,254,0,7,244,0, + // 0x30fc ー + 252,48,31,5,40,37,3,12,127,255,255,255,255,255,255,244,127,255,255,255,255,255,255,244,127,255,255,255,255,255,255,244,127,255,255,255,255,255,255,244,20,0,0,0,0,0,0,80, + // 0x30fd ヽ + 253,48,18,18,90,37,10,4,11,128,0,0,0,47,224,0,0,0,127,248,0,0,0,31,254,0,0,0,3,255,128,0,0,0,255,224,0,0,0,63,248,0,0,0,15,254,0,0,0,3,255,64,0,0,1,255,208,0,0,0,127,244,0,0,0,47,252,0,0,0,11,255,0,0,0,3,255,128,0,0,0,255,224,0,0,0,127,224,0,0,0,47,64,0,0,0,9,0, + // 0x30fe ヾ + 254,48,21,24,144,37,9,4,0,0,0,0,32,0,0,0,0,2,244,0,0,0,2,192,252,0,0,0,7,240,126,0,0,0,3,244,63,64,0,0,0,252,31,192,7,128,0,190,10,0,47,224,0,62,0,0,127,252,0,16,0,0,15,255,0,0,0,0,3,255,192,0,0,0,0,255,224,0,0,0,0,63,248,0,0,0,0,15,254,0,0,0,0,3,255,128,0,0,0,0,255,208,0,0,0,0,127,244,0,0,0,0,31,253,0,0,0,0,11,255,0,0,0,0,2,255,192,0,0,0,0,255,224,0,0,0,0,63,224,0,0,0,0,31,128,0,0,0,0,9,0,0, + // 0x30ff ヿ + 255,48,23,32,192,37,7,254,85,85,85,85,85,80,255,255,255,255,255,244,255,255,255,255,255,244,255,255,255,255,255,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244,0,0,0,0,7,244, + // 0x4eee 仮 + 238,78,35,36,68,37,1,252,0,0,36,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,254,15,255,255,255,255,240,0,1,252,15,255,255,255,255,240,0,3,252,15,255,255,255,255,240,0,11,244,15,213,85,85,85,64,0,15,240,15,192,0,0,0,0,0,47,208,15,192,0,0,0,0,0,127,128,15,192,0,0,0,0,0,255,128,15,192,0,0,0,0,2,255,128,15,192,0,0,0,0,7,255,128,15,192,0,0,0,0,31,255,128,15,255,255,255,255,128,63,255,128,15,255,255,255,255,192,255,239,128,15,255,255,255,255,192,191,47,128,15,255,64,0,63,128,60,47,128,15,255,128,0,63,64,36,47,128,31,223,192,0,127,0,0,47,128,31,207,224,0,254,0,0,47,128,31,199,240,0,253,0,0,47,128,47,195,244,2,252,0,0,47,128,47,194,252,3,248,0,0,47,128,47,128,254,15,240,0,0,47,128,63,64,191,95,224,0,0,47,128,63,64,63,255,192,0,0,47,128,127,0,31,255,64,0,0,47,128,191,0,11,254,0,0,0,47,128,254,0,11,255,0,0,0,47,128,253,0,63,255,192,0,0,47,130,252,0,255,255,244,0,0,47,131,248,11,255,15,255,64,0,47,139,244,127,252,3,255,244,0,47,143,241,255,224,0,191,248,0,47,135,192,191,64,0,15,224,0,47,65,128,36,0,0,1,192,0,0,0,0,0,0,0,0,0, + // 0x540d 名 + 13,84,32,35,24,37,1,253,0,0,0,185,0,0,0,0,0,0,1,255,0,0,0,0,0,0,3,253,0,0,0,0,0,0,11,252,0,0,0,0,0,0,31,255,255,255,244,0,0,0,127,255,255,255,252,0,0,0,255,255,255,255,244,0,0,7,254,0,0,15,240,0,0,31,248,0,0,47,208,0,0,191,240,0,0,63,192,0,3,255,252,0,0,255,64,0,31,255,255,64,1,254,0,0,127,244,255,224,7,252,0,0,31,192,47,248,15,244,0,0,10,0,11,254,63,224,0,0,0,0,2,255,255,192,0,0,0,0,0,191,255,0,0,0,0,0,0,63,252,0,0,0,0,0,0,191,244,0,0,0,0,0,3,255,255,255,255,255,0,0,47,255,255,255,255,255,0,1,255,255,255,255,255,255,0,31,255,244,0,0,0,191,6,255,255,244,0,0,0,191,127,255,211,244,0,0,0,191,63,253,3,244,0,0,0,191,31,128,3,244,0,0,0,191,4,0,3,244,0,0,0,191,0,0,3,244,0,0,0,191,0,0,3,244,0,0,0,191,0,0,3,255,255,255,255,255,0,0,3,255,255,255,255,255,0,0,3,255,255,255,255,255,0,0,3,244,0,0,0,191,0,0,2,160,0,0,0,190, + // 0x5b9a 定 + 154,91,34,36,68,37,1,252,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,229,85,85,85,85,85,111,192,15,208,0,0,0,0,0,47,192,15,208,0,0,0,0,0,47,192,15,208,0,0,0,0,0,47,192,15,208,85,85,85,85,85,47,192,15,211,255,255,255,255,255,47,192,0,3,255,255,255,255,255,0,0,0,3,255,255,255,255,255,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,3,244,1,252,0,0,0,0,0,7,244,1,252,0,0,0,0,0,7,240,1,253,0,0,0,0,0,11,240,1,255,255,255,240,0,0,15,240,1,255,255,255,240,0,0,15,240,1,255,255,255,240,0,0,31,244,1,252,0,0,0,0,0,63,252,1,252,0,0,0,0,0,63,254,1,252,0,0,0,0,0,191,255,65,252,0,0,0,0,0,254,63,225,252,0,0,0,0,3,252,15,254,252,0,0,0,0,11,248,3,255,253,0,0,0,0,47,240,0,255,255,255,255,255,240,127,208,0,31,255,255,255,255,224,47,128,0,0,111,255,255,255,208,10,0,0,0,0,21,85,85,64,0,0,0,0,0,0,0,0,0, + // 0x7247 片 + 71,114,32,36,32,37,1,252,0,0,0,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,234,170,171,254,170,170,0,31,255,255,255,255,255,255,0,31,255,255,255,255,255,255,0,31,255,255,255,255,255,255,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,234,170,170,171,252,0,0,127,64,0,0,2,252,0,0,191,0,0,0,2,252,0,0,255,0,0,0,2,252,0,0,254,0,0,0,2,252,0,2,253,0,0,0,2,252,0,3,252,0,0,0,2,252,0,11,248,0,0,0,2,252,0,31,240,0,0,0,2,252,0,63,224,0,0,0,2,252,0,127,192,0,0,0,2,252,0,31,64,0,0,0,2,252,0,6,0,0,0,0,2,252,0,0,0,0,0,0,0,0,0, + // 0x793a 示 + 58,121,34,33,41,37,1,253,0,21,85,85,85,85,85,80,0,0,127,255,255,255,255,255,244,0,0,127,255,255,255,255,255,244,0,0,127,255,255,255,255,255,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,21,85,85,86,254,85,85,85,80,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,3,228,1,253,0,47,0,0,0,11,244,1,253,0,191,64,0,0,15,240,1,253,0,63,192,0,0,47,224,1,253,0,31,240,0,0,63,192,1,253,0,15,244,0,0,191,128,1,253,0,3,252,0,1,255,0,1,253,0,2,253,0,3,253,0,1,253,0,0,255,0,15,248,0,1,253,0,0,191,128,47,240,0,1,253,0,0,63,192,127,208,0,1,253,0,0,47,208,31,64,0,1,253,0,0,31,128,1,0,26,171,253,0,0,8,0,0,0,15,255,252,0,0,0,0,0,0,15,255,248,0,0,0,0,0,0,11,255,144,0,0,0,0, + // 0x7fa9 義 + 169,127,34,35,59,37,2,253,0,0,100,0,0,11,144,0,0,0,2,252,0,0,15,240,0,0,0,0,255,0,0,47,192,0,0,0,0,127,64,0,63,128,0,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,10,170,170,171,250,170,170,168,0,0,0,0,7,240,0,0,0,0,0,85,85,91,249,85,85,64,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,170,170,170,174,170,170,170,170,128,0,0,90,252,10,128,180,0,0,47,255,255,255,15,193,255,64,0,63,255,255,228,15,208,191,240,0,26,86,252,0,15,208,11,252,0,0,1,252,0,15,224,1,240,0,170,170,254,170,175,250,170,170,128,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,1,252,0,3,248,2,64,0,0,1,252,0,2,252,15,240,0,86,175,254,175,192,254,63,208,0,255,255,255,255,192,255,255,128,0,255,255,255,250,64,127,253,0,0,80,1,252,0,0,127,244,3,64,0,1,252,0,11,255,244,7,208,0,1,252,1,255,255,254,75,208,2,171,252,47,255,209,255,255,192,3,255,248,15,249,0,127,255,128,2,255,224,7,64,0,6,253,0, + // 0x8868 表 + 104,136,35,35,59,37,1,253,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,7,255,255,255,255,255,255,255,64,7,255,255,255,255,255,255,255,64,7,255,255,255,255,255,255,255,64,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,127,255,255,255,255,255,252,0,0,191,255,255,255,255,255,252,0,0,191,255,255,255,255,255,252,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,0,0,0,127,239,192,0,0,0,0,0,2,255,143,224,0,28,0,0,0,31,253,7,240,0,191,0,0,0,255,240,3,244,2,255,64,0,27,255,192,2,252,31,253,0,1,255,255,128,1,253,191,224,0,111,255,255,128,0,255,255,64,0,127,254,63,128,0,127,248,0,0,47,208,63,128,0,47,224,0,0,9,0,63,128,0,15,244,0,0,0,0,63,128,0,71,253,0,0,0,0,63,128,111,210,255,128,0,0,0,63,239,255,208,191,244,0,0,0,127,255,255,208,47,254,64,0,127,255,255,249,0,7,255,244,0,191,255,249,0,0,0,255,240,0,127,249,0,0,0,0,31,208,0,57,0,0,0,0,0,1,128, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Korean_27.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Korean_27.cpp new file mode 100644 index 000000000000..02cce9dccac2 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Korean_27.cpp @@ -0,0 +1,252 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Korean 37pt, capital 'A' height: 27px, width: 100%, range: 0xac70-0xd788, glyphs: 110 +extern const uint8_t NotoSans_Medium_Korean_27[16344] = { + 162,27,112,172,136,215,35,247, // unifont_t + // 0xac70 거 + 112,172,28,35,245,34,2,253,0,0,0,0,0,0,85,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,63,255,255,255,128,1,254,63,255,255,255,128,1,254,63,255,255,255,128,1,254,0,0,0,127,64,1,254,0,0,0,127,64,1,254,0,0,0,191,0,1,254,0,0,0,191,0,1,254,0,0,0,255,0,1,254,0,0,0,254,0,1,254,0,0,2,253,0,1,254,0,0,3,252,127,255,254,0,0,7,248,127,255,254,0,0,15,240,127,255,254,0,0,47,224,0,1,254,0,0,127,192,0,1,254,0,0,255,64,0,1,254,0,3,254,0,0,1,254,0,31,252,0,0,1,254,0,127,240,0,0,1,254,3,255,192,0,0,1,254,47,255,0,0,0,1,254,255,248,0,0,0,1,254,191,208,0,0,0,1,254,62,0,0,0,0,1,254,16,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254, + // 0xace0 고 + 224,172,30,27,216,34,2,1,3,255,255,255,255,255,252,0,3,255,255,255,255,255,252,0,3,255,255,255,255,255,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,3,252,0,7,248,0,0,0,3,252,0,7,244,0,0,0,3,252,0,11,244,0,0,0,3,252,0,11,240,0,0,0,3,252,0,15,240,0,0,0,3,252,0,15,240,0,0,0,3,252,0,15,240,0,0,0,3,252,0,15,224,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0, + // 0xadf8 그 + 248,173,30,26,208,34,2,2,3,255,255,255,255,255,240,0,3,255,255,255,255,255,240,0,3,255,255,255,255,255,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240, + // 0xae09 급 + 9,174,30,33,8,34,2,253,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,224,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,253,0,0,0,7,244,0,1,253,0,0,0,7,244,0,1,253,0,0,0,7,244,0,1,253,0,0,0,7,244,0,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,253,0,0,0,7,244,0,1,253,0,0,0,7,244,0,1,253,0,0,0,7,244,0,1,253,0,0,0,7,244,0,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,0,0,0,0,0,0,0,0, + // 0xae30 기 + 48,174,28,35,245,34,2,253,0,0,0,0,0,0,84,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,15,255,255,255,224,1,253,15,255,255,255,224,1,253,15,255,255,255,208,1,253,0,0,0,31,208,1,253,0,0,0,47,208,1,253,0,0,0,47,192,1,253,0,0,0,63,192,1,253,0,0,0,63,128,1,253,0,0,0,127,64,1,253,0,0,0,255,0,1,253,0,0,1,255,0,1,253,0,0,2,253,0,1,253,0,0,7,252,0,1,253,0,0,15,244,0,1,253,0,0,47,240,0,1,253,0,0,191,192,0,1,253,0,2,255,64,0,1,253,0,11,254,0,0,1,253,0,63,248,0,0,1,253,1,255,224,0,0,1,253,15,255,128,0,0,1,253,191,253,0,0,0,1,253,127,224,0,0,0,1,253,47,64,0,0,0,1,253,4,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253, + // 0xae45 깅 + 69,174,28,35,245,34,2,253,0,0,0,0,0,0,84,0,0,0,0,0,2,253,0,0,0,0,0,2,253,15,255,255,255,208,2,253,15,255,255,255,192,2,253,15,255,255,255,192,2,253,0,0,0,63,192,2,253,0,0,0,63,128,2,253,0,0,0,127,64,2,253,0,0,0,255,0,2,253,0,0,1,254,0,2,253,0,0,3,252,0,2,253,0,0,15,244,0,2,253,0,0,63,224,0,2,253,0,1,255,128,0,2,253,0,31,254,0,0,2,253,1,255,248,0,0,2,253,47,255,208,0,0,2,253,191,253,0,0,0,2,253,63,208,0,0,0,2,253,24,0,0,0,0,1,168,0,0,2,191,255,144,0,0,0,127,255,255,254,0,0,3,255,255,255,255,208,0,15,255,80,1,191,244,0,47,244,0,0,11,252,0,63,192,0,0,2,253,0,63,192,0,0,1,253,0,63,192,0,0,1,253,0,63,192,0,0,2,253,0,47,240,0,0,11,252,0,15,255,80,1,191,244,0,3,255,255,255,255,208,0,0,127,255,255,254,0,0,0,6,191,255,144,0, + // 0xb044 끄 + 68,176,30,26,208,34,2,2,15,255,255,194,255,255,252,0,15,255,255,194,255,255,252,0,15,255,255,194,255,255,252,0,0,0,47,192,0,3,252,0,0,0,47,192,0,3,252,0,0,0,47,192,0,3,252,0,0,0,47,192,0,3,252,0,0,0,63,192,0,3,248,0,0,0,63,192,0,3,248,0,0,0,63,192,0,3,248,0,0,0,63,128,0,3,248,0,0,0,127,128,0,7,244,0,0,0,127,64,0,7,244,0,0,0,191,0,0,11,244,0,0,0,255,0,0,11,240,0,0,0,255,0,0,15,240,0,0,1,254,0,0,15,240,0,0,2,253,0,0,15,224,0,0,2,252,0,0,31,224,0,0,0,4,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240, + // 0xb0b4 내 + 180,176,28,35,245,34,3,253,0,0,0,0,0,0,84,0,0,0,0,190,1,253,0,0,0,0,254,1,253,0,0,0,0,254,1,253,106,0,0,0,254,1,253,191,0,0,0,254,1,253,191,0,0,0,254,1,253,191,0,0,0,254,1,253,191,0,0,0,254,1,253,191,0,0,0,254,1,253,191,0,0,0,254,1,253,191,0,0,0,254,1,253,191,0,0,0,254,1,253,191,0,0,0,254,1,253,191,0,0,0,255,255,253,191,0,0,0,255,255,253,191,0,0,0,255,255,253,191,0,0,0,255,1,253,191,0,0,0,254,1,253,191,0,0,0,254,1,253,191,0,0,0,254,1,253,191,0,0,0,254,1,253,191,0,90,240,254,1,253,191,255,255,240,254,1,253,191,255,255,244,254,1,253,191,255,254,144,254,1,253,20,0,0,0,254,1,253,0,0,0,0,254,1,253,0,0,0,0,254,1,253,0,0,0,0,254,1,253,0,0,0,0,254,1,253,0,0,0,0,254,1,253,0,0,0,0,254,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253, + // 0xb178 노 + 120,177,30,28,224,34,2,1,1,168,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,255,255,255,255,255,252,0,2,255,255,255,255,255,252,0,2,255,255,255,255,255,252,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240, + // 0xb204 누 + 4,178,30,33,8,34,2,253,0,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0, + // 0xb274 뉴 + 116,178,30,33,8,34,2,253,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0, + // 0xb2c8 니 + 200,178,26,35,245,34,4,253,0,0,0,0,0,5,64,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,20,31,208,254,0,21,191,248,31,208,255,255,255,255,252,31,208,255,255,255,255,248,31,208,255,255,255,165,0,31,208,84,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208, + // 0xb2e4 다 + 228,178,30,35,24,34,3,253,0,0,0,0,0,21,64,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,255,255,255,254,0,63,128,0,255,255,255,254,0,63,128,0,255,255,255,254,0,63,128,0,255,0,0,0,0,63,128,0,255,0,0,0,0,63,128,0,255,0,0,0,0,63,128,0,255,0,0,0,0,63,128,0,255,0,0,0,0,63,128,0,255,0,0,0,0,63,128,0,255,0,0,0,0,63,192,0,255,0,0,0,0,63,255,240,255,0,0,0,0,63,255,240,255,0,0,0,0,63,255,240,255,0,0,0,0,63,128,0,255,0,0,0,0,63,128,0,255,0,0,0,0,63,128,0,255,0,0,0,0,63,128,0,255,0,0,0,0,63,128,0,255,0,1,90,240,63,128,0,255,255,255,255,244,63,128,0,255,255,255,255,244,63,128,0,255,255,255,233,64,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0, + // 0xb2f9 당 + 249,178,30,35,24,34,3,253,0,0,0,0,0,21,64,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,255,255,255,252,0,63,192,0,255,255,255,252,0,63,192,0,255,255,255,252,0,63,192,0,255,0,0,0,0,63,192,0,255,0,0,0,0,63,192,0,255,0,0,0,0,63,192,0,255,0,0,0,0,63,255,224,255,0,0,0,0,63,255,224,255,0,0,0,0,63,255,224,255,0,0,0,0,63,192,0,255,0,0,0,0,63,192,0,255,0,0,91,240,63,192,0,255,255,255,255,244,63,192,0,255,255,255,255,244,63,192,0,255,255,255,233,64,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,21,64,0,0,0,43,255,233,0,0,0,0,7,255,255,255,224,0,0,0,47,255,255,255,253,0,0,0,255,249,0,91,255,0,0,1,255,64,0,0,255,192,0,2,253,0,0,0,63,192,0,3,252,0,0,0,47,208,0,3,252,0,0,0,47,208,0,2,253,0,0,0,63,192,0,1,255,64,0,0,255,192,0,0,191,249,0,91,255,0,0,0,47,255,255,255,253,0,0,0,7,255,255,255,224,0,0,0,0,43,255,249,0,0,0, + // 0xb3c4 도 + 196,179,30,28,224,34,2,1,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240, + // 0xb3cc 돌 + 204,179,30,33,8,34,2,253,0,255,255,255,255,255,240,0,0,255,255,255,255,255,240,0,0,255,255,255,255,255,240,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,255,255,255,255,255,248,0,0,255,255,255,255,255,248,0,0,255,255,255,255,255,248,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,255,170,170,170,170,160,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,252,0, + // 0xb3d9 동 + 217,179,30,33,8,34,2,253,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,255,250,64,0,0,0,6,255,255,255,248,0,0,0,47,255,255,255,255,64,0,0,191,249,0,6,255,208,0,0,255,64,0,0,47,240,0,1,254,0,0,0,11,244,0,2,253,0,0,0,7,244,0,1,254,0,0,0,11,244,0,0,255,64,0,0,47,240,0,0,191,249,0,6,255,208,0,0,47,255,255,255,255,128,0,0,7,255,255,255,248,0,0,0,0,27,255,250,64,0,0, + // 0xb418 되 + 24,180,28,35,245,34,2,253,0,0,0,0,0,0,84,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,11,255,255,255,253,1,253,11,255,255,255,253,1,253,11,255,255,255,253,1,253,11,240,0,0,0,1,253,11,240,0,0,0,1,253,11,240,0,0,0,1,253,11,240,0,0,0,1,253,11,240,0,0,0,1,253,11,240,0,0,0,1,253,11,240,0,0,0,1,253,11,240,0,0,0,1,253,11,255,255,255,254,1,253,11,255,255,255,254,1,253,11,255,255,255,254,1,253,0,0,63,192,0,1,253,0,0,63,192,0,1,253,0,0,63,192,0,1,253,0,0,63,192,0,1,253,0,0,63,192,0,1,253,0,0,63,192,0,1,253,0,0,127,218,191,225,253,255,255,255,255,255,225,253,191,255,255,255,255,225,253,191,255,255,170,80,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253, + // 0xb41c 된 + 28,180,29,35,24,34,2,253,0,0,0,0,0,0,84,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,3,255,255,255,252,1,253,0,3,255,255,255,252,1,253,0,3,255,255,255,252,1,253,0,3,248,0,0,0,1,253,0,3,248,0,0,0,1,253,0,3,248,0,0,0,1,253,0,3,248,0,0,0,1,253,0,3,248,0,0,0,1,253,0,3,248,0,0,0,1,253,0,3,255,255,255,252,1,253,0,3,255,255,255,252,1,253,0,3,255,255,255,252,1,253,0,0,0,63,192,0,1,253,0,0,0,63,192,0,1,253,0,0,0,63,192,0,1,253,0,0,0,63,213,170,193,253,0,255,255,255,255,255,209,253,0,255,255,255,255,255,209,253,0,191,255,255,170,80,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,26,128,0,0,1,253,0,0,47,192,0,0,1,253,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,255,255,255,255,255,64,0,47,255,255,255,255,255,64,0,47,255,255,255,255,255,64,0,0,0,0,0,0,0,0, + // 0xb428 됨 + 40,180,28,35,245,34,2,253,0,0,0,0,0,0,169,0,0,0,0,0,1,254,3,255,255,255,252,1,254,3,255,255,255,252,1,254,3,255,255,255,252,1,254,3,248,0,0,0,1,254,3,248,0,0,0,1,254,3,248,0,0,0,1,254,3,248,0,0,0,1,254,3,248,0,0,0,1,254,3,255,255,255,253,1,254,3,255,255,255,253,1,254,3,255,255,255,253,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,214,175,209,254,255,255,255,255,255,209,254,191,255,255,255,255,209,254,191,255,254,169,64,1,254,0,0,0,0,0,1,254,0,0,0,0,0,0,84,0,0,0,0,0,0,0,0,47,255,255,255,255,254,0,47,255,255,255,255,254,0,47,255,255,255,255,254,0,47,192,0,0,1,254,0,47,192,0,0,0,254,0,47,192,0,0,0,254,0,47,192,0,0,0,254,0,47,192,0,0,0,254,0,47,255,255,255,255,254,0,47,255,255,255,255,254,0,47,255,255,255,255,254,0,0,0,0,0,0,0, + // 0xb4a4 뒤 + 164,180,28,35,245,34,2,253,0,0,0,0,0,0,169,0,0,0,0,0,1,254,3,255,255,255,252,1,254,3,255,255,255,252,1,254,3,255,255,255,252,1,254,3,248,0,0,0,1,254,3,248,0,0,0,1,254,3,248,0,0,0,1,254,3,248,0,0,0,1,254,3,248,0,0,0,1,254,3,248,0,0,0,1,254,3,248,0,0,0,1,254,3,255,255,255,253,1,254,3,255,255,255,253,1,254,3,255,255,255,253,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,86,145,254,255,255,255,255,255,225,254,255,255,255,255,255,241,254,255,255,255,254,165,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,128,0,1,254,0,0,0,0,0,1,253, + // 0xb4dc 드 + 220,180,30,27,216,34,2,1,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0, + // 0xb514 디 + 20,181,26,35,245,34,4,253,0,0,0,0,0,5,64,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,255,255,255,255,0,31,208,255,255,255,255,0,31,208,255,255,255,255,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,0,0,31,208,254,0,0,90,244,31,208,255,255,255,255,248,31,208,255,255,255,255,248,31,208,255,255,255,250,80,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208, + // 0xb77c 라 + 124,183,30,35,24,34,3,253,0,0,0,0,0,21,64,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,255,255,255,253,0,63,192,0,255,255,255,253,0,63,192,0,255,255,255,253,0,63,192,0,0,0,1,253,0,63,192,0,0,0,1,253,0,63,192,0,0,0,1,253,0,63,192,0,0,0,1,253,0,63,192,0,0,0,1,253,0,63,192,0,0,0,1,253,0,63,192,0,255,255,255,253,0,63,192,0,255,255,255,253,0,63,255,240,255,255,255,253,0,63,255,240,255,0,0,0,0,63,255,240,255,0,0,0,0,63,192,0,255,0,0,0,0,63,192,0,255,0,0,0,0,63,192,0,255,0,0,0,0,63,192,0,255,0,0,0,0,63,192,0,255,0,0,0,16,63,192,0,255,0,21,175,244,63,192,0,255,255,255,255,248,63,192,0,255,255,255,255,248,63,192,0,255,255,254,165,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0, + // 0xb7ec 러 + 236,183,27,35,245,34,3,253,0,0,0,0,0,1,80,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,255,255,255,252,0,3,248,255,255,255,252,0,3,248,255,255,255,252,0,3,248,0,0,3,252,0,3,248,0,0,3,252,0,3,248,0,0,3,252,0,3,248,0,0,3,252,0,3,248,0,0,3,252,0,3,248,0,0,3,252,0,3,248,255,255,255,252,63,255,248,255,255,255,252,63,255,248,255,255,255,252,63,255,248,255,0,0,0,0,7,248,255,0,0,0,0,3,248,255,0,0,0,0,3,248,255,0,0,0,0,3,248,255,0,0,0,0,3,248,255,0,0,0,0,3,248,255,0,0,0,0,3,248,255,0,85,175,224,3,248,255,255,255,255,224,3,248,255,255,255,255,240,3,248,255,255,254,148,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248, + // 0xb808 레 + 8,184,28,35,245,34,3,253,0,0,0,0,0,0,84,0,0,0,0,63,64,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,255,255,254,0,63,128,253,255,255,254,0,63,128,253,255,255,254,0,63,128,253,0,0,254,0,63,128,253,0,0,254,0,63,128,253,0,0,254,0,63,128,253,0,0,254,0,63,128,253,0,0,254,0,63,128,253,0,0,254,0,63,128,253,0,0,254,63,255,128,253,255,255,254,63,255,128,253,255,255,254,63,255,128,253,255,255,254,0,63,128,253,254,0,0,0,63,128,253,254,0,0,0,63,128,253,254,0,0,0,63,128,253,254,0,0,0,63,128,253,254,0,0,0,63,128,253,254,0,0,0,63,128,253,254,5,90,244,63,128,253,255,255,255,244,63,128,253,255,255,255,248,63,128,253,255,255,233,80,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,21,0,253,0,0,0,0,0,0,253, + // 0xb825 력 + 37,184,27,35,245,34,3,253,0,0,0,0,0,0,80,0,0,0,0,0,3,248,0,0,0,0,0,3,248,255,255,255,248,0,3,248,255,255,255,248,0,3,248,255,255,255,248,0,7,248,0,0,3,248,63,255,248,0,0,3,248,63,255,248,0,0,3,248,63,255,248,0,0,3,248,0,3,248,255,255,255,248,0,3,248,255,255,255,248,0,3,248,255,255,255,248,0,7,248,255,0,0,0,63,255,248,255,0,0,0,63,255,248,255,0,0,0,63,255,248,255,0,0,21,0,3,248,255,255,255,255,64,3,248,255,255,255,255,128,3,248,255,255,255,233,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,1,80,0,0,0,0,0,0,0,0,255,255,255,255,255,248,0,255,255,255,255,255,248,0,255,255,255,255,255,248,0,0,0,0,0,7,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,244, + // 0xb85c 로 + 92,184,30,28,224,34,2,1,2,255,255,255,255,255,248,0,2,255,255,255,255,255,248,0,2,255,255,255,255,255,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240, + // 0xb8cc 료 + 204,184,30,28,224,34,2,1,2,255,255,255,255,255,248,0,2,255,255,255,255,255,248,0,2,255,255,255,255,255,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,0,0,254,0,7,244,0,0,0,0,254,0,7,244,0,0,0,0,254,0,7,244,0,0,0,0,254,0,7,244,0,0,0,0,254,0,7,244,0,0,0,0,255,0,7,244,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240, + // 0xb974 르 + 116,185,30,28,224,34,2,1,2,255,255,255,255,255,248,0,2,255,255,255,255,255,248,0,2,255,255,255,255,255,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240, + // 0xb9ac 리 + 172,185,27,35,245,34,3,253,0,0,0,0,0,1,80,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,127,255,255,255,64,7,244,127,255,255,255,64,7,244,127,255,255,255,64,7,244,0,0,0,191,64,7,244,0,0,0,191,64,7,244,0,0,0,191,64,7,244,0,0,0,191,64,7,244,0,0,0,191,64,7,244,0,0,0,191,64,7,244,63,255,255,255,64,7,244,63,255,255,255,64,7,244,63,255,255,255,64,7,244,63,128,0,0,0,7,244,63,128,0,0,0,7,244,63,128,0,0,0,7,244,63,128,0,0,0,7,244,63,128,0,0,0,7,244,63,128,0,0,0,7,244,63,128,0,0,1,7,244,63,128,85,107,255,7,244,63,255,255,255,255,7,244,63,255,255,255,255,7,244,63,255,255,169,64,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244, + // 0xb9b0 린 + 176,185,28,35,245,34,3,253,0,0,0,0,0,1,80,0,0,0,0,0,7,244,0,0,0,0,0,7,244,127,255,255,255,0,7,244,127,255,255,255,0,7,244,127,255,255,255,0,7,244,0,0,0,255,0,7,244,0,0,0,255,0,7,244,0,0,0,255,0,7,244,0,0,0,255,0,7,244,127,255,255,255,0,7,244,127,255,255,255,0,7,244,127,255,255,255,0,7,244,127,64,0,0,0,7,244,127,64,0,0,0,7,244,127,64,0,0,0,7,244,127,64,0,0,0,7,244,127,64,0,90,252,7,244,127,255,255,255,253,7,244,127,255,255,255,253,7,244,127,255,255,233,80,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,191,0,0,0,7,244,0,191,0,0,0,7,244,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,255,255,255,255,253,0,191,255,255,255,255,253,0,191,255,255,255,255,253,0,0,0,0,0,0,0, + // 0xb9bd 립 + 189,185,27,35,245,34,3,253,0,0,0,0,0,2,160,0,0,0,0,0,7,244,127,255,255,255,0,7,244,127,255,255,255,0,7,244,127,255,255,255,0,7,244,0,0,0,255,0,7,244,0,0,0,255,0,7,244,0,0,0,255,0,7,244,0,0,0,255,0,7,244,127,255,255,255,0,7,244,127,255,255,255,0,7,244,127,255,255,254,0,7,244,127,64,0,0,0,7,244,127,64,0,0,0,7,244,127,64,0,0,0,7,244,127,64,1,90,252,7,244,127,255,255,255,253,7,244,127,255,255,255,253,7,244,127,255,255,233,64,7,244,0,0,0,0,0,6,164,0,0,0,0,0,0,0,0,106,0,0,0,2,164,0,127,64,0,0,7,244,0,127,64,0,0,7,244,0,127,64,0,0,7,244,0,127,255,255,255,255,244,0,127,255,255,255,255,244,0,127,255,255,255,255,244,0,127,64,0,0,7,244,0,127,64,0,0,7,244,0,127,64,0,0,7,244,0,127,255,255,255,255,244,0,127,255,255,255,255,244,0,127,255,255,255,255,244,0,0,0,0,0,0,0, + // 0xb9c1 링 + 193,185,27,35,245,34,3,253,0,0,0,0,0,1,80,0,0,0,0,0,7,244,0,0,0,0,0,7,244,127,255,255,255,0,7,244,127,255,255,255,0,7,244,127,255,255,255,0,7,244,0,0,0,255,0,7,244,0,0,0,255,0,7,244,0,0,0,255,0,7,244,0,0,0,255,0,7,244,127,255,255,255,0,7,244,127,255,255,255,0,7,244,127,255,255,254,0,7,244,127,64,0,0,0,7,244,127,64,0,0,0,7,244,127,64,0,0,0,7,244,127,64,1,90,252,7,244,127,255,255,255,253,7,244,127,255,255,255,253,7,244,127,255,255,233,64,7,244,0,0,0,0,0,7,244,0,0,0,0,0,1,80,0,0,26,255,254,64,0,0,2,255,255,255,253,0,0,15,255,255,255,255,128,0,63,249,0,6,255,224,0,191,192,0,0,31,240,0,255,0,0,0,11,244,0,255,0,0,0,7,248,0,255,0,0,0,11,244,0,191,192,0,0,31,240,0,63,249,0,6,255,224,0,15,255,255,255,255,128,0,2,255,255,255,253,0,0,0,26,255,254,64,0, + // 0xba48 멈 + 72,186,27,35,245,34,3,253,0,0,0,0,0,1,80,0,0,0,0,0,3,248,0,0,0,0,0,3,248,191,255,255,255,0,3,248,191,255,255,255,0,3,248,191,255,255,255,0,3,248,191,0,0,255,0,3,248,191,0,0,255,0,3,248,191,0,0,255,0,7,248,191,0,0,255,255,255,248,191,0,0,255,255,255,248,191,0,0,255,255,255,248,191,0,0,255,0,3,248,191,0,0,255,0,3,248,191,0,0,255,0,3,248,191,255,255,255,0,3,248,191,255,255,255,0,3,248,191,255,255,255,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,248,0,127,255,255,255,255,248,0,127,255,255,255,255,248,0,127,64,0,0,3,248,0,127,64,0,0,3,248,0,127,64,0,0,3,248,0,127,64,0,0,3,248,0,127,64,0,0,3,248,0,127,64,0,0,3,248,0,127,255,255,255,255,248,0,127,255,255,255,255,248,0,127,255,255,255,255,248,0,0,0,0,0,0,0, + // 0xba54 메 + 84,186,28,35,245,34,3,253,0,0,0,0,0,0,168,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,255,255,255,192,63,128,253,255,255,255,192,63,128,253,255,255,255,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,255,255,128,253,254,0,47,255,255,128,253,254,0,47,255,255,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,255,255,255,192,63,128,253,255,255,255,192,63,128,253,255,255,255,192,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,5,0,253,0,0,0,0,0,0,253, + // 0xba74 면 + 116,186,28,35,245,34,3,253,0,0,0,0,0,2,164,0,0,0,0,0,3,248,0,0,0,0,0,3,248,191,255,255,255,0,3,248,191,255,255,255,0,3,248,191,255,255,255,0,3,248,191,0,0,255,255,255,248,191,0,0,255,255,255,248,191,0,0,255,255,255,248,191,0,0,255,0,7,248,191,0,0,255,0,3,248,191,0,0,255,0,3,248,191,0,0,255,0,3,248,191,0,0,255,0,7,248,191,0,0,255,255,255,248,191,0,0,255,255,255,248,191,0,0,255,255,255,248,191,255,255,255,0,3,248,191,255,255,255,0,3,248,191,255,255,255,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,42,64,0,0,3,248,0,63,128,0,0,3,248,0,63,128,0,0,2,164,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,63,255,255,255,255,253,0,63,255,255,255,255,253,0,63,255,255,255,255,253,0,0,0,0,0,0,0, + // 0xbaa8 모 + 168,186,30,28,224,34,2,1,2,255,255,255,255,255,248,0,2,255,255,255,255,255,248,0,2,255,255,255,255,255,248,0,2,252,0,0,0,3,248,0,2,252,0,0,0,3,248,0,2,252,0,0,0,3,248,0,2,252,0,0,0,3,248,0,2,252,0,0,0,3,248,0,2,252,0,0,0,3,248,0,2,252,0,0,0,3,248,0,2,252,0,0,0,3,248,0,2,252,0,0,0,3,248,0,2,252,0,0,0,3,248,0,2,252,0,0,0,3,248,0,2,255,255,255,255,255,248,0,2,255,255,255,255,255,248,0,2,255,255,255,255,255,248,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240, + // 0xbabb 못 + 187,186,30,33,8,34,2,253,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,1,253,0,0,0,11,240,0,1,253,0,0,0,11,240,0,1,253,0,0,0,11,240,0,1,253,0,0,0,11,240,0,1,253,0,0,0,11,240,0,1,253,0,0,0,11,240,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,191,224,0,0,0,0,0,0,255,240,0,0,0,0,0,3,255,252,0,0,0,0,0,15,250,255,0,0,0,0,0,191,224,255,208,0,0,0,27,255,128,63,254,0,0,7,255,254,0,11,255,249,0,11,255,224,0,1,255,253,0,3,254,0,0,0,11,252,0,1,64,0,0,0,0,20,0, + // 0xbbf8 미 + 248,187,27,35,245,34,3,253,0,0,0,0,0,1,80,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,127,255,255,255,64,7,244,127,255,255,255,64,7,244,127,255,255,255,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,255,255,255,64,7,244,127,255,255,255,64,7,244,127,255,255,255,64,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244, + // 0xbc00 밀 + 0,188,28,35,245,34,3,253,0,0,0,0,0,6,164,0,0,0,0,0,7,244,127,255,255,255,64,7,244,127,255,255,255,64,7,244,127,255,255,255,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,64,0,127,64,7,244,127,255,255,255,64,7,244,127,255,255,255,64,7,244,127,255,255,255,64,7,244,0,0,0,0,0,7,244,0,0,0,0,0,1,80,0,0,0,0,0,0,0,0,191,255,255,255,255,244,0,191,255,255,255,255,244,0,191,255,255,255,255,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,127,255,255,255,255,244,0,127,255,255,255,255,244,0,127,255,255,255,255,244,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,127,255,255,255,255,253,0,127,255,255,255,255,253,0,127,255,255,255,255,253, + // 0xbc14 바 + 20,188,30,35,24,34,3,253,0,0,0,0,0,21,64,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,170,0,0,170,0,63,128,0,255,0,0,255,0,63,128,0,255,0,0,255,0,63,128,0,255,0,0,255,0,63,128,0,255,0,0,255,0,63,128,0,255,0,0,255,0,63,128,0,255,0,0,255,0,63,128,0,255,0,0,255,0,63,128,0,255,0,0,255,0,63,128,0,255,255,255,255,0,63,128,0,255,255,255,255,0,63,192,0,255,255,255,255,0,63,255,240,255,0,0,255,0,63,255,240,255,0,0,255,0,63,255,240,255,0,0,255,0,63,128,0,255,0,0,255,0,63,128,0,255,0,0,255,0,63,128,0,255,0,0,255,0,63,128,0,255,0,0,255,0,63,128,0,255,0,0,255,0,63,128,0,255,0,0,255,0,63,128,0,255,255,255,255,0,63,128,0,255,255,255,255,0,63,128,0,255,255,255,255,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0, + // 0xbc84 버 + 132,188,27,35,245,34,3,253,0,0,0,0,0,1,84,0,0,0,0,0,3,248,0,0,0,0,0,3,248,170,0,0,170,0,3,248,255,0,0,255,0,3,248,255,0,0,255,0,3,248,255,0,0,255,0,3,248,255,0,0,255,0,3,248,255,0,0,255,0,3,248,255,0,0,255,0,3,248,255,0,0,255,0,3,248,255,0,0,255,0,3,248,255,255,255,255,0,3,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,255,0,0,255,255,255,248,255,0,0,255,0,7,248,255,0,0,255,0,3,248,255,0,0,255,0,3,248,255,0,0,255,0,3,248,255,0,0,255,0,3,248,255,0,0,255,0,3,248,255,0,0,255,0,3,248,255,255,255,255,0,3,248,255,255,255,255,0,3,248,255,255,255,255,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248, + // 0xbca0 베 + 160,188,28,35,245,34,3,253,0,0,0,0,0,0,84,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,5,64,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,255,255,255,192,63,128,253,255,255,255,255,255,128,253,255,255,255,255,255,128,253,254,0,47,255,255,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,254,0,47,192,63,128,253,255,255,255,192,63,128,253,255,255,255,192,63,128,253,255,255,255,192,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,0,0,253,0,0,0,0,0,0,253, + // 0xbca8 벨 + 168,188,29,35,24,34,3,253,0,0,0,0,0,0,84,0,0,0,0,0,63,65,252,0,20,0,10,128,63,65,252,0,255,0,31,208,63,65,252,0,255,0,31,208,63,65,252,0,255,0,31,208,63,65,252,0,255,0,31,208,63,65,252,0,255,255,255,208,63,65,252,0,255,255,255,255,255,65,252,0,255,255,255,255,255,65,252,0,255,0,31,255,255,65,252,0,255,0,31,208,63,65,252,0,255,0,31,208,63,65,252,0,255,0,31,208,63,65,252,0,255,255,255,208,63,65,252,0,255,255,255,208,63,65,252,0,255,255,255,208,63,65,252,0,0,0,0,0,63,65,252,0,0,0,0,0,0,0,84,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,255,255,255,255,255,64,0,63,255,255,255,255,255,64,0,63,255,255,255,255,255,64, + // 0xbcf8 본 + 248,188,30,33,8,34,2,253,0,254,0,0,0,11,240,0,0,254,0,0,0,11,240,0,0,254,0,0,0,11,240,0,0,254,0,0,0,11,240,0,0,255,255,255,255,255,240,0,0,255,255,255,255,255,240,0,0,255,255,255,255,255,240,0,0,254,0,0,0,11,240,0,0,254,0,0,0,11,240,0,0,254,0,0,0,11,240,0,0,254,0,0,0,11,240,0,0,255,255,255,255,255,240,0,0,255,255,255,255,255,240,0,0,255,255,255,255,255,240,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0xbe44 비 + 68,190,27,35,245,34,3,253,0,0,0,0,0,1,80,0,0,0,0,0,7,244,0,0,0,0,0,7,244,42,64,0,42,64,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,255,255,255,128,7,244,127,255,255,255,128,7,244,127,255,255,255,128,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,64,0,63,128,7,244,127,255,255,255,128,7,244,127,255,255,255,128,7,244,127,255,255,255,128,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244, + // 0xc0ac 사 + 172,192,32,35,24,34,1,253,0,0,0,0,0,1,84,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,42,64,0,3,248,0,0,0,63,128,0,3,248,0,0,0,63,128,0,3,248,0,0,0,63,128,0,3,248,0,0,0,63,128,0,3,248,0,0,0,63,128,0,3,248,0,0,0,127,128,0,3,248,0,0,0,127,128,0,3,248,0,0,0,127,192,0,3,248,0,0,0,191,192,0,3,248,0,0,0,255,192,0,3,248,0,0,0,255,208,0,3,255,255,0,1,255,240,0,3,255,255,0,3,255,240,0,3,255,255,0,7,247,248,0,3,252,0,0,15,242,253,0,3,248,0,0,47,224,255,0,3,248,0,0,127,192,191,192,3,248,0,0,255,128,63,224,3,248,0,3,255,0,31,248,3,248,0,31,252,0,11,255,67,248,0,127,244,0,2,255,3,248,0,63,208,0,0,189,3,248,0,15,0,0,0,24,3,248,0,4,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0, + // 0xc0bd 삽 + 189,192,31,35,24,34,2,253,0,0,0,0,0,6,160,0,0,0,0,0,0,15,240,0,0,0,254,0,0,15,240,0,0,0,254,0,0,15,240,0,0,0,254,0,0,15,240,0,0,1,254,0,0,15,240,0,0,1,255,0,0,15,240,0,0,2,255,0,0,15,240,0,0,3,255,64,0,15,255,248,0,3,255,192,0,15,255,248,0,11,255,208,0,15,255,248,0,31,239,240,0,15,240,0,0,63,199,252,0,15,240,0,0,255,131,255,0,15,240,0,7,255,0,255,224,15,240,0,127,252,0,127,252,15,240,0,255,244,0,15,252,15,240,0,191,192,0,2,240,15,240,0,62,0,0,0,16,15,240,0,0,0,0,0,0,6,160,0,0,0,0,0,0,0,0,0,0,127,64,0,0,11,240,0,0,127,64,0,0,15,240,0,0,127,64,0,0,15,240,0,0,127,64,0,0,15,240,0,0,127,255,255,255,255,240,0,0,127,255,255,255,255,240,0,0,127,255,255,255,255,240,0,0,127,64,0,0,15,240,0,0,127,64,0,0,15,240,0,0,127,64,0,0,15,240,0,0,127,255,255,255,255,240,0,0,127,255,255,255,255,240,0,0,127,255,255,255,255,240,0,0,0,0,0,0,0,0,0, + // 0xc0c8 새 + 200,192,30,35,24,34,1,253,0,0,0,0,0,0,5,64,0,0,0,0,7,240,15,208,0,0,0,0,7,240,15,208,0,0,84,0,7,240,15,208,0,1,252,0,7,240,15,208,0,1,252,0,7,240,15,208,0,1,252,0,7,240,15,208,0,1,252,0,7,240,15,208,0,1,252,0,7,240,15,208,0,2,252,0,7,240,15,208,0,2,253,0,7,240,15,208,0,2,253,0,7,240,15,208,0,3,253,0,7,240,15,208,0,3,254,0,7,240,15,208,0,3,255,0,7,255,255,208,0,7,255,0,7,255,255,208,0,11,255,64,7,255,255,208,0,15,255,192,7,240,31,208,0,31,223,208,7,240,15,208,0,63,143,240,7,240,15,208,0,191,75,248,7,240,15,208,0,255,3,253,7,240,15,208,3,253,2,255,71,240,15,208,15,252,0,255,231,240,15,208,127,240,0,63,199,240,15,208,63,208,0,15,71,240,15,208,15,0,0,1,7,240,15,208,4,0,0,0,7,240,15,208,0,0,0,0,7,240,15,208,0,0,0,0,7,240,15,208,0,0,0,0,7,240,15,208,0,0,0,0,7,240,15,208,0,0,0,0,7,240,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,208, + // 0xc124 설 + 36,193,29,34,16,34,2,254,0,0,0,0,0,0,169,0,0,0,85,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,254,0,0,0,255,0,0,0,254,0,0,1,255,0,63,255,254,0,0,2,255,64,63,255,254,0,0,3,255,192,63,255,254,0,0,7,255,208,0,1,254,0,0,15,255,240,0,0,254,0,0,63,215,252,0,0,254,0,0,255,195,255,0,0,254,0,3,255,0,255,224,0,254,0,47,253,0,127,253,0,254,0,255,244,0,15,252,0,254,0,127,208,0,2,244,0,254,0,62,0,0,0,16,0,254,0,0,0,0,0,0,0,84,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,254,0,0,15,255,255,255,255,254,0,0,15,255,255,255,255,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,15,255,255,255,255,254,0,0,15,255,255,255,255,254,0,0,15,255,255,255,255,253,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,255,255,255,255,255,128,0,15,255,255,255,255,255,128,0,15,255,255,255,255,255,128, + // 0xc18c 소 + 140,193,30,29,232,34,2,1,0,0,0,21,64,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,191,208,0,0,0,0,0,0,255,224,0,0,0,0,0,1,255,240,0,0,0,0,0,3,255,252,0,0,0,0,0,15,246,254,0,0,0,0,0,47,240,255,128,0,0,0,0,255,192,127,224,0,0,0,11,255,64,31,253,0,0,0,191,252,0,7,255,208,0,47,255,240,0,1,255,255,64,47,255,64,0,0,47,255,64,15,244,0,0,0,2,255,0,5,0,0,63,128,0,9,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0, + // 0xc18d 속 + 141,193,30,34,16,34,2,253,0,0,0,63,128,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,208,0,0,0,0,0,0,255,224,0,0,0,0,0,1,255,244,0,0,0,0,0,7,255,252,0,0,0,0,0,31,241,255,64,0,0,0,0,191,208,191,224,0,0,0,27,255,128,47,254,0,0,6,255,253,0,7,255,249,0,15,255,224,0,0,191,255,0,11,254,0,63,192,11,254,0,2,64,0,63,192,0,104,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,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,255,255,255,255,255,244,0,3,255,255,255,255,255,244,0,3,255,255,255,255,255,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0, + // 0xc2a4 스 + 164,194,30,29,232,34,2,1,0,0,0,21,64,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,255,224,0,0,0,0,0,0,255,240,0,0,0,0,0,3,255,248,0,0,0,0,0,11,251,253,0,0,0,0,0,31,240,255,0,0,0,0,0,127,208,191,208,0,0,0,2,255,128,63,244,0,0,0,31,254,0,11,255,64,0,2,255,244,0,2,255,244,0,63,255,208,0,0,127,255,128,31,253,0,0,0,11,255,0,15,144,0,0,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0, + // 0xc2ac 슬 + 172,194,30,34,16,34,2,253,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,208,0,0,0,0,0,0,255,224,0,0,0,0,0,1,255,244,0,0,0,0,0,7,255,253,0,0,0,0,0,47,240,255,128,0,0,0,2,255,208,127,248,0,0,1,191,255,0,15,255,228,0,31,255,248,0,2,255,255,64,15,255,128,0,0,47,255,0,11,164,0,0,0,1,173,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,255,170,170,170,170,160,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,252,0, + // 0xc2dc 시 + 220,194,28,34,238,34,2,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,191,0,0,1,253,0,0,191,0,0,1,253,0,0,191,0,0,1,253,0,0,191,0,0,1,253,0,0,191,0,0,1,253,0,0,191,0,0,1,253,0,0,191,64,0,1,253,0,0,255,64,0,1,253,0,0,255,128,0,1,253,0,0,255,128,0,1,253,0,1,255,192,0,1,253,0,2,255,208,0,1,253,0,3,255,240,0,1,253,0,11,251,244,0,1,253,0,15,227,252,0,1,253,0,47,210,254,0,1,253,0,127,192,255,64,1,253,1,255,64,127,208,1,253,7,254,0,47,244,1,253,47,252,0,15,255,1,253,255,240,0,3,255,65,253,191,192,0,0,190,1,253,62,0,0,0,28,1,253,20,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,0,168, + // 0xc2dd 식 + 221,194,28,35,245,34,2,253,0,0,0,0,0,0,84,0,0,0,0,0,1,253,0,0,191,0,0,1,253,0,0,255,0,0,1,253,0,0,255,0,0,1,253,0,0,255,0,0,1,253,0,0,255,0,0,1,253,0,0,255,0,0,1,253,0,0,255,64,0,1,253,0,2,255,192,0,1,253,0,3,255,208,0,1,253,0,7,255,240,0,1,253,0,15,247,248,0,1,253,0,63,211,254,0,1,253,0,255,129,255,128,1,253,7,255,0,127,248,1,253,127,252,0,31,255,1,253,191,240,0,7,253,1,253,63,128,0,0,188,1,253,24,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,0,84,0,0,0,0,0,0,0,0,63,255,255,255,255,253,0,63,255,255,255,255,253,0,63,255,255,255,255,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253, + // 0xc5b4 어 + 180,197,28,35,245,34,2,253,0,0,0,0,0,0,85,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,11,253,0,0,0,254,0,127,255,208,0,0,254,2,255,255,244,0,0,254,7,255,175,252,0,0,254,15,244,2,254,0,0,254,31,224,0,255,0,0,254,63,192,0,127,128,0,254,63,128,0,63,192,0,254,127,64,0,47,192,0,254,127,64,0,47,192,0,254,127,0,0,31,255,255,254,191,0,0,31,255,255,254,191,0,0,31,255,255,254,127,0,0,31,208,1,254,127,64,0,47,192,0,254,63,64,0,47,192,0,254,63,128,0,63,192,0,254,63,192,0,63,128,0,254,31,208,0,191,0,0,254,15,240,1,255,0,0,254,11,253,7,253,0,0,254,3,255,255,248,0,0,254,0,255,255,224,0,0,254,0,47,255,64,0,0,254,0,0,80,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254, + // 0xc5c6 없 + 198,197,31,35,24,34,2,253,0,0,0,0,0,0,84,0,0,0,0,0,0,0,254,0,0,27,254,64,0,0,254,0,1,255,255,244,0,0,254,0,11,255,255,253,0,0,254,0,31,253,6,255,64,0,254,0,63,208,0,127,192,0,254,0,127,128,0,47,208,0,254,0,191,0,0,15,255,255,254,0,191,0,0,15,255,255,254,0,191,0,0,15,255,255,254,0,127,64,0,31,224,1,254,0,63,192,0,63,192,0,254,0,63,224,0,191,128,0,254,0,31,253,7,255,0,0,254,0,7,255,255,253,0,0,254,0,1,255,255,244,0,0,254,0,0,27,254,64,0,0,254,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,64,0,1,252,0,253,0,47,192,0,1,252,0,253,0,47,192,0,1,252,0,253,0,47,192,0,1,252,0,253,0,63,192,0,1,255,255,253,0,63,208,0,1,255,255,253,0,127,224,0,1,255,255,253,0,255,240,0,1,252,0,253,1,255,248,0,1,252,0,253,7,249,254,0,1,252,0,253,47,240,255,208,1,255,255,254,255,208,63,248,1,255,255,253,255,64,15,244,1,255,255,253,60,0,2,224,0,0,0,0,0,0,0,0, + // 0xc5d1 엑 + 209,197,28,35,245,34,2,253,0,0,0,0,0,0,21,0,0,0,0,10,144,127,0,0,0,0,15,224,127,0,191,248,0,15,224,127,3,255,255,128,15,224,127,15,255,255,208,15,224,127,47,224,31,244,15,224,127,127,128,3,248,15,224,127,191,0,2,252,15,224,127,254,0,1,255,255,224,127,254,0,0,255,255,224,127,254,0,0,255,255,224,127,191,0,1,252,15,224,127,191,0,3,252,15,224,127,63,192,7,244,15,224,127,47,244,47,240,15,224,127,15,255,255,208,15,224,127,3,255,255,64,15,224,127,0,127,248,0,15,224,127,0,0,0,0,15,224,127,0,0,0,0,15,224,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,255,0,31,255,255,255,255,255,0,31,255,255,255,255,255,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191, + // 0xc5d4 엔 + 212,197,29,35,24,34,2,253,0,0,0,0,0,0,21,0,0,0,0,0,15,224,127,0,0,0,0,0,15,224,127,0,0,111,228,0,15,224,127,0,2,255,255,0,15,224,127,0,15,255,255,192,15,224,127,0,31,249,127,240,15,224,127,0,63,192,11,244,15,224,127,0,127,64,3,252,15,224,127,0,191,0,1,252,15,224,127,0,254,0,0,255,255,224,127,0,254,0,0,255,255,224,127,0,254,0,0,255,255,224,127,0,191,0,1,252,15,224,127,0,127,64,3,252,15,224,127,0,63,192,11,244,15,224,127,0,31,249,127,240,15,224,127,0,15,255,255,192,15,224,127,0,2,255,255,0,15,224,127,0,0,111,228,0,15,224,127,0,0,0,0,0,15,224,127,0,0,0,0,0,15,224,127,0,0,0,0,0,15,224,127,0,0,15,240,0,15,224,127,0,0,15,240,0,15,224,127,0,0,15,240,0,0,0,127,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,255,255,255,255,255,192,0,15,255,255,255,255,255,192,0,15,255,255,255,255,255,192,0,0,0,0,0,0,0,0, + // 0xc5f4 열 + 244,197,29,34,16,34,2,254,0,0,0,0,0,0,169,0,0,0,0,0,0,1,254,0,0,31,255,128,0,1,254,0,1,255,255,252,0,1,254,0,11,255,255,255,255,255,254,0,31,248,2,255,255,255,254,0,63,192,0,63,255,255,254,0,127,64,0,31,224,1,254,0,191,0,0,15,224,1,254,0,191,0,0,15,224,1,254,0,191,0,0,15,224,1,254,0,127,64,0,31,255,255,254,0,63,192,0,63,255,255,254,0,31,248,2,255,255,255,254,0,11,255,255,253,0,1,254,0,1,255,255,244,0,1,254,0,0,47,255,128,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,254,0,0,15,255,255,255,255,254,0,0,15,255,255,255,255,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,15,255,255,255,255,254,0,0,15,255,255,255,255,254,0,0,15,255,255,255,255,254,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,255,255,255,255,255,128,0,15,255,255,255,255,255,128,0,15,255,255,255,255,255,128, + // 0xc608 예 + 8,198,29,35,24,34,2,253,0,0,0,0,0,0,21,0,0,0,0,0,10,144,63,64,0,0,0,0,15,224,63,64,0,6,64,0,15,224,63,64,0,191,248,0,15,224,63,64,3,255,254,0,15,224,63,64,11,255,255,64,15,224,63,64,15,240,127,192,15,224,63,64,47,192,31,208,15,224,63,64,63,128,15,255,255,224,63,64,127,64,11,255,255,224,63,64,127,0,7,255,255,224,63,64,191,0,3,244,15,224,63,64,191,0,3,244,15,224,63,64,190,0,3,244,15,224,63,64,254,0,3,248,15,224,63,64,190,0,3,244,15,224,63,64,191,0,3,244,15,224,63,64,191,0,3,244,15,224,63,64,127,0,7,255,255,224,63,64,127,64,11,255,255,224,63,64,63,128,15,255,255,224,63,64,47,192,31,208,15,224,63,64,15,240,127,192,15,224,63,64,11,255,255,64,15,224,63,64,3,255,254,0,15,224,63,64,0,191,248,0,15,224,63,64,0,6,64,0,15,224,63,64,0,0,0,0,15,224,63,64,0,0,0,0,15,224,63,64,0,0,0,0,15,224,63,64,0,0,0,0,15,224,63,64,0,0,0,0,15,224,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64, + // 0xc624 오 + 36,198,30,28,224,34,2,1,0,0,6,255,249,0,0,0,0,1,255,255,255,244,0,0,0,15,255,255,255,254,0,0,0,63,253,64,23,255,192,0,0,255,208,0,0,127,240,0,1,255,0,0,0,15,244,0,3,252,0,0,0,3,252,0,3,248,0,0,0,2,252,0,7,244,0,0,0,2,252,0,7,244,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,252,0,0,0,3,252,0,1,255,0,0,0,15,244,0,0,255,208,0,0,127,240,0,0,63,253,64,23,255,192,0,0,15,255,255,255,255,0,0,0,1,255,255,255,244,0,0,0,0,10,255,254,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240, + // 0xc628 온 + 40,198,30,33,8,34,2,253,0,0,27,255,254,64,0,0,0,7,255,255,255,253,0,0,0,47,255,255,255,255,128,0,0,255,249,0,6,255,224,0,1,255,64,0,0,31,244,0,3,253,0,0,0,7,248,0,3,252,0,0,0,3,252,0,3,253,0,0,0,7,248,0,1,255,0,0,0,31,244,0,0,255,249,0,6,255,240,0,0,47,255,255,255,255,128,0,0,7,255,255,255,253,0,0,0,0,26,255,250,64,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0xc644 완 + 68,198,31,35,24,34,2,253,0,0,0,0,0,5,80,0,0,0,0,0,0,15,240,0,0,6,190,64,0,15,240,0,0,127,255,248,0,15,240,0,2,255,255,255,64,15,240,0,7,254,0,191,192,15,240,0,15,240,0,31,224,15,240,0,15,224,0,11,240,15,240,0,31,208,0,7,240,15,240,0,31,208,0,11,240,15,240,0,15,224,0,15,240,15,240,0,15,244,0,31,224,15,240,0,3,254,69,255,192,15,255,248,1,255,255,255,0,15,255,248,0,63,255,248,0,15,255,248,0,1,255,64,0,15,240,0,0,0,255,0,0,15,240,0,0,0,255,0,0,15,240,0,0,0,255,106,255,79,240,0,255,255,255,255,255,79,240,0,255,255,255,255,255,79,240,0,255,255,250,165,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,85,0,0,0,15,240,0,0,191,0,0,0,15,240,0,0,191,0,0,0,11,240,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,255,255,255,255,252,0,0,191,255,255,255,255,252,0,0,191,255,255,255,255,252,0,0,0,0,0,0,0,0,0, + // 0xc6d0 원 + 208,198,29,35,24,34,2,253,0,0,0,0,0,0,84,0,0,0,0,0,0,0,254,0,0,6,191,164,0,0,254,0,0,127,255,255,64,0,254,0,1,255,255,255,208,0,254,0,3,254,0,31,240,0,254,0,11,244,0,7,248,0,254,0,11,240,0,3,248,0,254,0,11,240,0,3,248,0,254,0,7,248,0,7,244,0,254,0,3,254,64,111,240,0,254,0,1,255,255,255,208,0,254,0,0,47,255,254,0,0,254,0,0,1,174,144,0,0,254,0,0,0,0,0,0,0,254,0,0,0,1,85,175,192,254,0,255,255,255,255,255,208,254,0,255,255,255,255,255,208,254,0,255,255,255,254,149,0,254,0,0,0,63,192,0,0,254,0,0,0,63,192,0,0,254,0,0,0,63,192,63,255,254,0,0,0,63,192,63,255,254,0,0,0,63,192,42,171,254,0,0,85,63,192,0,0,254,0,0,255,63,192,0,0,254,0,0,255,0,0,0,0,169,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,255,255,255,255,255,255,64,0,0,0,0,0,0,0,0, + // 0xc704 위 + 4,199,28,35,245,34,2,253,0,0,0,0,0,0,84,0,0,0,0,0,1,254,0,2,255,228,0,1,254,0,47,255,255,64,1,254,0,255,255,255,208,1,254,3,255,145,127,244,1,254,7,252,0,7,252,1,254,11,240,0,2,252,1,254,15,240,0,1,253,1,254,15,240,0,1,253,1,254,11,240,0,2,252,1,254,7,252,0,7,252,1,254,3,255,64,47,244,1,254,0,255,255,255,224,1,254,0,47,255,255,64,1,254,0,2,255,244,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,1,90,191,225,254,255,255,255,255,255,225,254,255,255,255,255,255,225,254,255,255,255,234,80,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,128,0,1,254,0,0,0,0,0,1,253, + // 0xc73c 으 + 60,199,30,28,224,34,2,1,0,0,11,255,250,0,0,0,0,1,255,255,255,244,0,0,0,11,255,255,255,254,0,0,0,63,254,64,27,255,192,0,0,191,208,0,0,127,224,0,1,255,0,0,0,15,244,0,3,252,0,0,0,7,248,0,3,252,0,0,0,3,252,0,3,244,0,0,0,2,252,0,7,244,0,0,0,1,252,0,3,248,0,0,0,2,252,0,3,252,0,0,0,3,252,0,2,253,0,0,0,7,248,0,1,255,0,0,0,31,240,0,0,191,224,0,0,191,224,0,0,47,254,80,91,255,128,0,0,11,255,255,255,254,0,0,0,0,191,255,255,224,0,0,0,0,6,255,249,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0, + // 0xc74c 음 + 76,199,30,34,16,34,2,253,0,0,26,255,250,64,0,0,0,7,255,255,255,249,0,0,0,47,255,255,255,255,128,0,0,255,249,0,6,255,224,0,1,255,64,0,0,31,244,0,3,253,0,0,0,7,248,0,3,252,0,0,0,3,252,0,3,252,0,0,0,7,248,0,1,255,0,0,0,31,244,0,0,255,249,0,6,255,240,0,0,47,255,255,255,255,128,0,0,7,255,255,255,253,0,0,0,0,27,255,254,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,253,0,0,0,7,244,0,2,252,0,0,0,7,244,0,2,252,0,0,0,7,244,0,2,252,0,0,0,7,244,0,2,252,0,0,0,7,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,0,0,0,0,0,0,0,0, + // 0xc774 이 + 116,199,27,35,245,34,3,253,0,0,0,0,0,1,80,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,27,249,0,0,7,244,0,191,255,192,0,7,244,3,255,255,240,0,7,244,11,254,111,252,0,7,244,31,240,3,253,0,7,244,63,192,0,255,0,7,244,63,192,0,191,64,7,244,127,64,0,63,128,7,244,191,0,0,63,192,7,244,255,0,0,47,192,7,244,255,0,0,47,192,7,244,254,0,0,47,192,7,244,254,0,0,47,192,7,244,255,0,0,47,192,7,244,255,0,0,47,192,7,244,191,0,0,63,192,7,244,191,0,0,63,128,7,244,127,128,0,127,64,7,244,63,192,0,255,0,7,244,47,224,1,254,0,7,244,15,248,11,252,0,7,244,7,255,255,244,0,7,244,1,255,255,208,0,7,244,0,47,255,0,0,7,244,0,1,80,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244,0,0,0,0,0,7,244, + // 0xc77c 일 + 124,199,29,34,16,34,2,254,0,0,0,0,0,0,84,0,0,0,0,0,0,1,253,0,0,31,255,128,0,1,253,0,1,255,255,248,0,1,253,0,7,255,255,255,0,1,253,0,31,249,1,255,192,1,253,0,63,208,0,63,208,1,253,0,63,128,0,15,224,1,253,0,127,64,0,15,240,1,253,0,127,64,0,11,240,1,253,0,127,64,0,15,240,1,253,0,63,128,0,15,224,1,253,0,63,208,0,63,208,1,253,0,31,249,1,255,192,1,253,0,7,255,255,255,0,1,253,0,1,255,255,248,0,1,253,0,0,27,255,128,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,253,0,0,31,255,255,255,255,253,0,0,31,255,255,255,255,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,31,255,255,255,255,253,0,0,31,255,255,255,255,253,0,0,31,255,255,255,255,253,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,255,255,255,255,255,64,0,31,255,255,255,255,255,64,0,31,255,255,255,255,255,64, + // 0xc77d 읽 + 125,199,28,35,245,34,2,253,0,0,0,0,0,0,84,0,0,0,0,0,1,253,0,27,254,64,0,1,253,0,255,255,248,0,1,253,7,255,255,255,0,1,253,15,253,6,255,128,1,253,47,224,0,63,192,1,253,63,192,0,31,224,1,253,127,64,0,15,240,1,253,127,64,0,15,240,1,253,127,64,0,15,240,1,253,127,64,0,15,240,1,253,63,192,0,31,224,1,253,47,224,0,63,208,1,253,15,253,6,255,128,1,253,7,255,255,255,0,1,253,0,191,255,244,0,1,253,0,27,255,128,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,0,0,0,255,255,252,127,255,253,0,255,255,252,127,255,253,0,255,255,252,127,255,253,0,0,2,252,0,1,253,0,0,2,252,0,1,253,0,0,2,252,0,1,253,0,255,255,252,0,1,253,0,255,255,252,0,1,253,0,255,170,168,0,1,253,0,254,0,0,0,1,253,0,254,0,1,64,1,253,0,255,255,255,208,1,253,0,255,255,255,208,1,253,0,255,255,250,64,1,253,0,0,0,0,0,0,84, + // 0xc785 입 + 133,199,28,35,245,34,2,253,0,0,0,0,0,0,84,0,0,0,0,0,1,253,0,11,255,128,0,1,253,0,191,255,248,0,1,253,7,255,255,255,0,1,253,15,253,70,255,192,1,253,47,224,0,63,208,1,253,63,192,0,15,240,1,253,127,128,0,15,240,1,253,127,64,0,11,240,1,253,127,64,0,11,240,1,253,127,128,0,15,240,1,253,63,192,0,15,240,1,253,47,224,0,63,208,1,253,15,253,70,255,192,1,253,7,255,255,255,0,1,253,0,255,255,248,0,1,253,0,27,255,128,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,0,0,0,26,128,0,0,0,168,0,31,208,0,0,1,253,0,31,208,0,0,1,253,0,31,208,0,0,1,253,0,31,255,255,255,255,253,0,31,255,255,255,255,253,0,31,255,255,255,255,253,0,31,208,0,0,1,253,0,31,208,0,0,1,253,0,31,208,0,0,1,253,0,31,208,0,0,1,253,0,31,255,255,255,255,253,0,31,255,255,255,255,253,0,31,255,255,255,255,253,0,0,0,0,0,0,0, + // 0xc790 자 + 144,199,32,35,24,34,1,253,0,0,0,0,0,1,84,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,47,255,255,255,254,3,248,0,47,255,255,255,254,3,248,0,47,255,255,255,254,3,248,0,0,0,127,128,0,3,248,0,0,0,63,128,0,3,248,0,0,0,63,128,0,3,248,0,0,0,63,128,0,3,248,0,0,0,127,128,0,3,248,0,0,0,127,192,0,3,248,0,0,0,191,192,0,3,248,0,0,0,255,192,0,3,255,255,0,0,255,224,0,3,255,255,0,1,255,240,0,3,255,255,0,3,255,244,0,3,252,0,0,7,247,252,0,3,248,0,0,15,241,254,0,3,248,0,0,47,208,255,64,3,248,0,0,127,192,127,208,3,248,0,1,255,64,47,244,3,248,0,7,254,0,15,254,3,248,0,47,252,0,3,255,131,248,0,127,240,0,0,255,3,248,0,63,192,0,0,45,3,248,0,14,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0, + // 0xc791 작 + 145,199,31,35,24,34,2,253,0,0,0,0,0,5,80,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,127,255,255,255,248,15,240,0,127,255,255,255,248,15,240,0,127,255,255,255,248,15,240,0,0,0,254,0,0,15,240,0,0,1,254,0,0,15,240,0,0,1,255,0,0,15,240,0,0,2,255,0,0,15,255,248,0,3,255,128,0,15,255,248,0,11,255,192,0,15,255,248,0,15,255,224,0,15,240,0,0,63,203,248,0,15,240,0,0,255,131,254,0,15,240,0,7,255,1,255,208,15,240,0,47,252,0,191,252,15,240,0,255,244,0,31,252,15,240,0,191,192,0,3,244,15,240,0,62,0,0,0,96,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,240,0,0,255,255,255,255,255,240,0,0,255,255,255,255,255,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,11,240,0, + // 0xc798 잘 + 152,199,31,35,24,34,2,253,0,0,0,0,0,10,160,0,0,0,0,0,0,15,240,0,127,255,255,255,248,15,240,0,127,255,255,255,248,15,240,0,127,255,255,255,248,15,240,0,0,1,254,0,0,15,240,0,0,1,254,0,0,15,240,0,0,2,255,0,0,15,240,0,0,3,255,0,0,15,255,248,0,3,255,128,0,15,255,248,0,11,255,192,0,15,255,248,0,31,239,240,0,15,240,0,0,127,203,253,0,15,240,0,1,255,67,255,128,15,240,0,11,254,0,255,248,15,240,0,255,252,0,63,252,15,240,0,255,224,0,7,248,15,240,0,191,64,0,0,112,15,240,0,36,0,0,0,0,5,80,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,240,0,0,191,255,255,255,255,240,0,0,191,255,255,255,255,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,106,170,170,170,175,240,0,0,191,255,255,255,255,240,0,0,191,255,255,255,255,240,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,255,255,255,255,252,0,0,191,255,255,255,255,252,0,0,191,255,255,255,255,252,0, + // 0xc7a5 장 + 165,199,31,35,24,34,2,253,0,0,0,0,0,5,80,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,127,255,255,255,248,15,240,0,127,255,255,255,248,15,240,0,127,255,255,255,248,15,240,0,0,1,254,0,0,15,240,0,0,1,254,0,0,15,240,0,0,1,255,0,0,15,240,0,0,2,255,0,0,15,255,248,0,3,255,64,0,15,255,248,0,7,255,192,0,15,255,248,0,15,255,224,0,15,240,0,0,31,223,244,0,15,240,0,0,127,199,253,0,15,240,0,1,255,66,255,128,15,240,0,11,254,0,191,248,15,240,0,191,252,0,47,252,15,240,0,255,224,0,7,244,15,240,0,127,64,0,0,96,15,240,0,36,0,0,0,0,15,240,0,0,0,0,0,0,0,0,0,0,0,26,255,254,64,0,0,0,2,255,255,255,248,0,0,0,15,255,255,255,255,64,0,0,63,249,0,6,255,208,0,0,191,192,0,0,47,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,11,244,0,0,255,0,0,0,15,240,0,0,191,192,0,0,47,240,0,0,63,249,0,6,255,208,0,0,15,255,255,255,255,64,0,0,2,255,255,255,248,0,0,0,0,26,255,254,64,0,0, + // 0xc7ac 재 + 172,199,29,35,24,34,2,253,0,0,0,0,0,0,42,64,0,0,0,0,31,208,63,128,0,0,0,0,31,208,63,128,0,0,0,0,31,208,63,128,191,255,255,254,31,208,63,128,191,255,255,254,31,208,63,128,191,255,255,254,31,208,63,128,0,11,240,0,31,208,63,128,0,11,240,0,31,208,63,128,0,11,240,0,31,208,63,128,0,15,240,0,31,208,63,128,0,15,244,0,31,208,63,128,0,15,244,0,31,208,63,128,0,15,244,0,31,208,63,128,0,15,248,0,31,255,255,128,0,31,252,0,31,255,255,128,0,47,253,0,31,255,255,128,0,63,254,0,31,208,63,128,0,127,191,0,31,208,63,128,0,255,63,192,31,208,63,128,1,253,47,208,31,208,63,128,3,252,15,240,31,208,63,128,11,248,11,253,31,208,63,128,47,240,3,255,159,208,63,128,255,208,0,255,95,208,63,128,255,128,0,62,31,208,63,128,126,0,0,8,31,208,63,128,36,0,0,0,31,208,63,128,0,0,0,0,31,208,63,128,0,0,0,0,31,208,63,128,0,0,0,0,31,208,63,128,0,0,0,0,31,208,63,128,0,0,0,0,31,208,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,64, + // 0xc800 저 + 0,200,28,35,245,34,2,253,0,0,0,0,0,0,85,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,63,255,255,255,252,0,254,63,255,255,255,252,0,254,63,255,255,255,252,0,254,0,0,255,0,0,0,254,0,0,255,0,0,0,254,0,0,255,0,0,0,254,0,0,255,0,0,0,254,0,0,255,0,0,0,254,0,0,255,0,0,1,254,0,1,255,64,63,255,254,0,2,255,128,63,255,254,0,3,255,192,63,255,254,0,3,255,192,0,0,254,0,11,255,224,0,0,254,0,15,231,240,0,0,254,0,47,195,252,0,0,254,0,127,130,254,0,0,254,0,255,0,255,64,0,254,3,254,0,127,208,0,254,15,252,0,47,248,0,254,127,240,0,11,255,0,254,255,208,0,3,254,0,254,191,64,0,0,188,0,254,60,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254, + // 0xc804 전 + 4,200,29,35,24,34,2,253,0,0,0,0,0,0,85,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,63,255,255,255,252,0,254,0,63,255,255,255,252,0,254,0,63,255,255,255,252,0,254,0,0,0,255,0,0,0,254,0,0,0,255,0,0,0,254,0,0,0,255,0,0,0,254,0,0,0,255,0,0,1,254,0,0,1,255,64,31,255,254,0,0,3,255,192,31,255,254,0,0,3,255,208,31,255,254,0,0,15,255,240,0,0,254,0,0,47,231,252,0,0,254,0,0,191,195,255,0,0,254,0,2,255,64,255,208,0,254,0,31,254,0,127,253,0,254,0,255,248,0,31,253,0,254,0,191,208,0,2,248,0,254,0,63,0,0,0,32,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,5,80,0,0,0,254,0,0,15,224,0,0,0,254,0,0,15,224,0,0,0,169,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,255,255,255,255,255,64,0,15,255,255,255,255,255,64,0,15,255,255,255,255,255,64,0,0,0,0,0,0,0,0, + // 0xc815 정 + 21,200,28,35,245,34,2,253,0,0,0,0,0,0,84,0,0,0,0,0,0,254,0,0,0,0,0,0,254,63,255,255,255,252,0,254,63,255,255,255,252,0,254,63,255,255,255,252,0,254,0,0,255,0,0,0,254,0,0,255,0,0,0,254,0,0,255,0,0,0,254,0,1,255,64,15,255,254,0,3,255,192,15,255,254,0,3,255,208,15,255,254,0,15,255,240,0,1,254,0,47,231,252,0,0,254,0,191,194,255,0,0,254,1,255,64,255,208,0,254,31,254,0,63,253,0,254,191,252,0,15,253,0,254,191,224,0,2,248,0,254,63,64,0,0,32,0,254,24,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,1,191,255,144,0,0,0,127,255,255,255,64,0,3,255,255,255,255,224,0,15,254,64,0,111,248,0,31,240,0,0,7,253,0,47,208,0,0,1,254,0,63,192,0,0,0,254,0,47,208,0,0,1,254,0,31,240,0,0,7,253,0,15,254,64,0,127,248,0,3,255,255,255,255,224,0,0,127,255,255,255,64,0,0,1,191,255,144,0, + // 0xc81c 제 + 28,200,30,35,24,34,1,253,0,0,0,0,0,0,10,128,0,0,0,0,3,248,15,208,0,0,0,0,3,248,15,208,0,0,0,0,3,248,15,208,47,255,255,255,131,248,15,208,47,255,255,255,131,248,15,208,47,255,255,255,131,248,15,208,0,2,252,0,3,248,15,208,0,2,252,0,3,248,15,208,0,2,252,0,3,248,15,208,0,2,252,0,3,248,15,208,0,3,252,0,3,248,15,208,0,3,252,0,3,248,15,208,0,3,253,15,255,248,15,208,0,3,253,15,255,248,15,208,0,7,254,15,255,248,15,208,0,11,255,0,3,248,15,208,0,15,255,64,3,248,15,208,0,31,255,128,3,248,15,208,0,47,223,192,3,248,15,208,0,127,79,240,3,248,15,208,0,255,11,244,3,248,15,208,1,254,3,253,3,248,15,208,7,252,1,255,67,248,15,208,31,244,0,191,211,248,15,208,127,224,0,63,195,248,15,208,63,192,0,11,67,248,15,208,14,0,0,0,3,248,15,208,0,0,0,0,3,248,15,208,0,0,0,0,3,248,15,208,0,0,0,0,3,248,15,208,0,0,0,0,3,248,15,208,0,0,0,0,3,248,15,208,0,0,0,0,0,0,15,208,0,0,0,0,0,0,15,208, + // 0xc8fd 죽 + 253,200,30,33,8,34,2,253,7,255,255,255,255,255,253,0,7,255,255,255,255,255,253,0,7,255,255,255,255,255,253,0,0,0,0,255,224,0,0,0,0,0,0,255,240,0,0,0,0,0,3,255,248,0,0,0,0,0,15,250,254,0,0,0,0,0,127,240,255,208,0,0,0,7,255,192,127,249,0,0,6,255,255,0,15,255,249,0,31,255,248,0,2,255,255,64,15,255,64,0,0,47,255,0,11,148,0,0,0,1,173,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,3,255,255,255,255,255,244,0,3,255,255,255,255,255,244,0,3,255,255,255,255,255,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0, + // 0xc900 준 + 0,201,30,33,8,34,2,253,7,255,255,255,255,255,253,0,7,255,255,255,255,255,253,0,7,255,255,255,255,255,253,0,0,0,0,191,224,0,0,0,0,0,0,255,240,0,0,0,0,0,1,255,244,0,0,0,0,0,7,255,252,0,0,0,0,0,31,241,255,64,0,0,0,0,191,224,191,224,0,0,0,27,255,128,47,254,64,0,11,255,253,0,7,255,254,0,15,255,224,0,1,255,255,0,11,254,0,0,0,11,254,0,6,144,0,0,0,0,104,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,47,208,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,1,253,0,47,192,0,0,0,1,253,0,47,192,0,0,0,1,253,0,47,192,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0, + // 0xc911 중 + 17,201,30,33,8,34,2,253,7,255,255,255,255,255,253,0,7,255,255,255,255,255,253,0,7,255,255,255,255,255,253,0,0,0,0,255,224,0,0,0,0,0,0,255,240,0,0,0,0,0,3,255,252,0,0,0,0,0,31,246,255,0,0,0,0,1,191,224,191,228,0,0,0,111,255,128,47,255,80,0,31,255,253,0,7,255,255,64,15,255,208,0,0,127,255,0,11,249,0,0,0,6,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,27,255,254,64,0,0,0,7,255,255,255,253,0,0,0,63,255,255,255,255,128,0,0,255,228,0,1,191,224,0,1,255,0,0,0,31,240,0,2,253,0,0,0,11,244,0,2,253,0,0,0,11,244,0,1,255,64,0,0,31,240,0,0,255,228,0,6,255,224,0,0,63,255,255,255,255,128,0,0,7,255,255,255,249,0,0,0,0,26,255,250,64,0,0, + // 0xc990 즐 + 144,201,30,33,8,34,2,253,7,255,255,255,255,255,253,0,7,255,255,255,255,255,253,0,7,255,255,255,255,255,253,0,0,0,0,191,224,0,0,0,0,0,1,255,244,0,0,0,0,0,7,255,253,0,0,0,0,0,127,240,255,208,0,0,0,95,255,192,63,255,80,0,31,255,253,0,7,255,255,64,15,255,208,0,0,127,255,0,11,164,0,0,0,1,174,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,255,170,170,170,170,160,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,252,0, + // 0xc9c0 지 + 192,201,28,35,245,34,2,253,0,0,0,0,0,0,84,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,63,255,255,255,254,1,253,63,255,255,255,254,1,253,63,255,255,255,254,1,253,0,0,191,64,0,1,253,0,0,191,0,0,1,253,0,0,191,0,0,1,253,0,0,191,0,0,1,253,0,0,191,64,0,1,253,0,0,255,64,0,1,253,0,0,255,128,0,1,253,0,0,255,192,0,1,253,0,1,255,192,0,1,253,0,3,255,208,0,1,253,0,3,255,240,0,1,253,0,11,247,244,0,1,253,0,31,227,253,0,1,253,0,63,193,255,0,1,253,0,255,128,191,192,1,253,2,255,0,63,240,1,253,11,253,0,31,253,1,253,127,248,0,7,255,129,253,255,224,0,1,255,1,253,127,128,0,0,45,1,253,45,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253, + // 0xcc98 처 + 152,204,28,35,245,34,2,253,0,0,0,0,0,0,169,0,0,255,0,0,0,254,0,0,255,0,0,0,254,0,0,255,0,0,0,254,0,0,255,0,0,0,254,0,0,255,0,0,0,254,63,255,255,255,252,0,254,63,255,255,255,252,0,254,63,255,255,255,252,0,254,0,0,255,0,0,0,254,0,0,255,0,0,0,254,0,0,255,0,0,0,254,0,0,255,0,0,0,254,0,0,255,0,0,0,254,0,1,255,0,63,255,254,0,2,255,64,63,255,254,0,3,255,192,63,255,254,0,3,255,192,0,1,254,0,11,255,224,0,0,254,0,15,215,244,0,0,254,0,63,195,252,0,0,254,0,191,129,255,0,0,254,1,255,0,255,192,0,254,11,253,0,63,240,0,254,47,248,0,15,254,0,254,255,224,0,3,254,0,254,127,128,0,0,252,0,254,45,0,0,0,16,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254, + // 0xcd08 초 + 8,205,30,30,240,34,2,1,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,7,255,255,255,255,255,253,0,7,255,255,255,255,255,253,0,7,255,255,255,255,255,253,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,191,224,0,0,0,0,0,0,255,240,0,0,0,0,0,2,255,248,0,0,0,0,0,11,255,254,0,0,0,0,0,47,240,255,128,0,0,0,1,255,208,127,244,0,0,0,47,255,64,31,255,64,0,27,255,252,0,3,255,254,64,31,255,208,0,0,127,255,64,15,253,0,21,64,7,255,0,6,64,0,63,192,0,25,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240, + // 0xcd95 축 + 149,205,30,35,24,34,2,253,0,0,0,21,64,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,3,255,255,255,255,255,252,0,3,255,255,255,255,255,252,0,3,255,255,255,255,255,252,0,0,0,0,127,208,0,0,0,0,0,0,255,224,0,0,0,0,0,2,255,244,0,0,0,0,0,11,255,254,0,0,0,0,0,191,240,255,208,0,0,0,111,255,192,63,254,80,0,31,255,253,0,11,255,255,64,15,255,208,0,0,191,255,0,11,164,0,0,0,1,173,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,3,255,255,255,255,255,244,0,3,255,255,255,255,255,244,0,3,255,255,255,255,255,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0, + // 0xcd9c 출 + 156,205,30,35,24,34,2,253,0,0,0,42,128,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,3,255,255,255,255,255,252,0,3,255,255,255,255,255,252,0,3,255,255,255,255,255,252,0,0,0,0,127,208,0,0,0,0,0,0,255,240,0,0,0,0,0,7,255,252,0,0,0,0,0,111,246,255,144,0,0,0,91,255,208,191,254,80,0,47,255,254,0,31,255,255,64,15,255,228,0,1,191,255,0,15,164,0,0,0,1,174,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,1,255,255,255,255,255,240,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,1,170,170,170,170,175,244,0,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,252,0, + // 0xcda4 춤 + 164,205,30,35,24,34,2,253,0,0,0,21,64,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,3,255,255,255,255,255,252,0,3,255,255,255,255,255,252,0,3,255,255,255,255,255,252,0,0,0,0,127,208,0,0,0,0,0,0,255,224,0,0,0,0,0,2,255,244,0,0,0,0,0,11,255,254,0,0,0,0,0,191,240,255,224,0,0,0,111,255,192,63,255,144,0,31,255,253,0,7,255,255,64,15,255,144,0,0,111,255,0,10,148,0,0,0,1,109,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,252,0,0,0,7,244,0,2,252,0,0,0,7,244,0,2,252,0,0,0,7,244,0,2,252,0,0,0,7,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,0,0,0,0,0,0,0,0, + // 0xcde8 취 + 232,205,28,35,245,34,2,253,0,0,21,64,0,0,169,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,15,255,255,255,255,1,254,15,255,255,255,255,1,254,15,255,255,255,255,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,191,224,0,1,254,0,0,255,240,0,1,254,0,3,255,252,0,1,254,0,31,250,255,128,1,254,0,191,240,255,248,1,254,31,255,192,47,255,65,254,31,254,0,7,255,1,254,15,244,0,0,125,1,254,6,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,85,90,191,225,254,255,255,255,255,255,225,254,255,255,255,255,255,225,254,191,255,255,233,64,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,63,192,0,1,254,0,0,0,0,0,1,253, + // 0xce58 치 + 88,206,28,35,245,34,2,253,0,0,0,0,0,0,168,0,0,127,64,0,1,253,0,0,127,64,0,1,253,0,0,127,64,0,1,253,0,0,127,64,0,1,253,0,0,127,64,0,1,253,47,255,255,255,254,1,253,47,255,255,255,254,1,253,47,255,255,255,254,1,253,0,0,127,128,0,1,253,0,0,127,64,0,1,253,0,0,127,128,0,1,253,0,0,127,128,0,1,253,0,0,191,128,0,1,253,0,0,191,192,0,1,253,0,0,255,192,0,1,253,0,1,255,224,0,1,253,0,2,255,240,0,1,253,0,3,251,248,0,1,253,0,11,242,252,0,1,253,0,31,224,255,0,1,253,0,63,192,191,192,1,253,0,255,64,63,224,1,253,3,255,0,31,252,1,253,47,252,0,7,255,129,253,127,240,0,1,255,65,253,63,192,0,0,62,1,253,14,0,0,0,4,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253, + // 0xce68 침 + 104,206,28,35,245,34,2,253,0,0,127,64,0,0,168,0,0,127,64,0,1,253,0,0,127,64,0,1,253,0,0,127,64,0,1,253,47,255,255,255,254,1,253,47,255,255,255,254,1,253,47,255,255,255,254,1,253,0,0,191,64,0,1,253,0,0,191,64,0,1,253,0,0,255,128,0,1,253,0,0,255,192,0,1,253,0,2,255,224,0,1,253,0,3,255,244,0,1,253,0,15,243,253,0,1,253,0,127,209,255,128,1,253,1,255,192,191,248,1,253,47,255,0,47,255,65,253,127,248,0,7,255,1,253,63,208,0,0,125,1,253,13,0,0,0,0,1,253,0,0,0,0,0,0,84,0,0,0,0,0,0,0,0,31,255,255,255,255,253,0,31,255,255,255,255,253,0,31,255,255,255,255,253,0,31,208,0,0,1,253,0,31,208,0,0,1,253,0,31,208,0,0,1,253,0,31,208,0,0,1,253,0,31,208,0,0,1,253,0,31,208,0,0,1,253,0,31,255,255,255,255,253,0,31,255,255,255,255,253,0,31,255,255,255,255,253,0,0,0,0,0,0,0, + // 0xce74 카 + 116,206,31,35,24,34,2,253,0,0,0,0,0,5,80,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,15,255,255,255,192,15,224,0,15,255,255,255,192,15,224,0,15,255,255,255,192,15,224,0,0,0,0,63,192,15,224,0,0,0,0,63,192,15,224,0,0,0,0,63,128,15,224,0,0,0,0,63,128,15,224,0,0,0,0,127,64,15,224,0,0,0,85,255,0,15,224,0,191,255,255,255,0,15,224,0,191,255,255,254,0,15,255,252,127,255,235,253,0,15,255,252,21,0,7,252,0,15,255,252,0,0,15,244,0,15,240,0,0,0,31,240,0,15,224,0,0,0,127,208,0,15,224,0,0,0,255,128,0,15,224,0,0,3,255,0,0,15,224,0,0,31,252,0,0,15,224,0,0,127,240,0,0,15,224,0,3,255,192,0,0,15,224,0,47,255,0,0,0,15,224,0,255,248,0,0,0,15,224,0,63,208,0,0,0,15,224,0,46,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0, + // 0xcf1c 켜 + 28,207,28,35,245,34,2,253,0,0,0,0,0,0,85,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,31,255,255,255,192,1,254,31,255,255,255,128,1,254,31,255,255,255,128,1,254,0,0,0,63,128,1,254,0,0,0,63,128,1,254,0,0,0,127,64,1,254,0,0,0,127,255,255,254,0,0,0,191,255,255,254,0,0,85,255,255,255,254,255,255,255,254,0,1,254,255,255,255,252,0,1,254,191,255,235,252,0,1,254,85,0,11,244,0,1,254,0,0,15,240,0,1,254,0,0,63,224,0,1,254,0,0,191,194,255,255,254,0,2,255,66,255,255,254,0,7,254,2,255,255,254,0,47,248,0,0,1,254,0,191,240,0,0,1,254,7,255,128,0,0,1,254,47,254,0,0,0,1,254,255,244,0,0,0,1,254,127,192,0,0,0,1,254,45,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,0,253, + // 0xd0d1 탑 + 209,208,30,35,24,34,3,253,0,0,0,0,0,42,128,0,0,0,0,0,0,63,192,0,191,255,255,254,0,63,192,0,191,255,255,254,0,63,192,0,191,255,255,254,0,63,192,0,191,0,0,0,0,63,192,0,191,0,0,0,0,63,192,0,191,0,0,0,0,63,192,0,191,0,0,0,0,63,255,224,191,255,255,252,0,63,255,224,191,255,255,252,0,63,255,224,191,255,255,252,0,63,192,0,191,0,0,0,0,63,192,0,191,0,0,0,0,63,192,0,191,0,0,0,0,63,192,0,191,0,1,107,240,63,192,0,191,255,255,255,240,63,192,0,191,255,255,255,240,63,192,0,191,255,255,165,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,0,0,168,0,0,0,26,128,0,1,253,0,0,0,63,192,0,1,253,0,0,0,63,192,0,1,253,0,0,0,63,192,0,1,255,255,255,255,255,192,0,1,255,255,255,255,255,192,0,1,255,255,255,255,255,192,0,1,253,0,0,0,63,192,0,1,253,0,0,0,63,192,0,1,253,0,0,0,63,192,0,1,255,255,255,255,255,192,0,1,255,255,255,255,255,192,0,1,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0, + // 0xd130 터 + 48,209,27,35,245,34,3,253,0,0,0,0,0,1,80,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,191,255,255,255,0,3,248,191,255,255,255,0,3,248,191,255,255,255,0,3,248,191,0,0,0,0,3,248,191,0,0,0,0,3,248,191,0,0,0,0,3,248,191,0,0,0,0,3,248,191,0,0,0,0,3,248,191,0,0,0,0,3,248,191,255,255,244,191,255,248,191,255,255,244,191,255,248,191,255,255,244,191,255,248,191,0,0,0,0,7,248,191,0,0,0,0,3,248,191,0,0,0,0,3,248,191,0,0,0,0,3,248,191,0,0,0,0,3,248,191,0,0,0,0,3,248,191,0,0,0,0,3,248,191,64,5,107,224,3,248,191,255,255,255,240,3,248,191,255,255,255,240,3,248,191,255,255,165,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248,0,0,0,0,0,3,248, + // 0xd14c 테 + 76,209,28,35,245,34,3,253,0,0,0,0,0,0,84,0,0,0,0,42,64,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,255,255,255,64,63,128,253,255,255,255,64,63,128,253,255,255,255,64,63,128,253,254,0,0,0,63,128,253,254,0,0,0,63,128,253,254,0,0,0,63,128,253,254,0,0,0,63,128,253,254,0,0,0,63,128,253,254,0,0,127,255,128,253,255,255,252,127,255,128,253,255,255,252,127,255,128,253,255,255,252,0,63,128,253,254,0,0,0,63,128,253,254,0,0,0,63,128,253,254,0,0,0,63,128,253,254,0,0,0,63,128,253,254,0,0,0,63,128,253,254,0,0,0,63,128,253,254,0,86,176,63,128,253,255,255,255,240,63,128,253,255,255,255,240,63,128,253,255,255,250,80,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,63,128,253,0,0,0,0,21,0,253,0,0,0,0,0,0,253, + // 0xd1a0 토 + 160,209,30,28,224,34,2,1,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,255,255,255,255,255,244,0,1,254,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,224,0,1,255,255,255,255,255,224,0,1,255,255,255,255,255,224,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240, + // 0xd2b8 트 + 184,210,30,28,224,34,2,1,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,1,255,255,255,255,255,248,0,1,254,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240, + // 0xd39c 펜 + 156,211,30,35,24,34,1,253,0,0,0,0,0,0,5,64,0,0,0,0,1,168,31,208,0,0,0,0,2,252,31,208,0,0,0,0,2,252,31,208,47,255,255,255,130,252,31,208,47,255,255,255,130,252,31,208,47,255,255,255,130,252,31,208,1,252,7,240,2,252,31,208,1,252,7,240,2,252,31,208,1,252,7,240,2,252,31,208,1,252,7,241,255,252,31,208,1,252,7,241,255,252,31,208,1,252,7,241,255,252,31,208,1,252,7,240,2,252,31,208,1,252,7,240,2,252,31,208,1,252,7,240,2,252,31,208,1,252,7,240,2,252,31,208,1,253,27,250,210,252,31,208,127,255,255,255,210,252,31,208,63,255,255,255,210,252,31,208,63,255,250,164,2,252,31,208,0,0,0,0,2,252,31,208,0,0,0,0,2,252,31,208,0,1,168,0,2,252,31,208,0,2,252,0,2,252,31,208,0,2,252,0,1,168,31,208,0,2,252,0,0,0,5,64,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,2,255,255,255,255,255,240,0,0,0,0,0,0,0,0, + // 0xd504 프 + 4,213,30,27,216,34,2,1,11,255,255,255,255,255,253,0,11,255,255,255,255,255,253,0,11,255,255,255,255,255,253,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,0,2,252,0,3,248,0,0,11,255,255,255,255,255,253,0,11,255,255,255,255,255,253,0,11,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240, + // 0xd558 하 + 88,213,32,35,24,34,1,253,0,0,0,0,0,1,84,0,0,0,42,64,0,3,252,0,0,0,127,64,0,3,252,0,0,0,127,64,0,3,252,0,0,0,127,64,0,3,252,0,0,0,127,128,0,3,252,0,127,255,255,255,255,67,252,0,127,255,255,255,255,67,252,0,127,255,255,255,255,67,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,2,255,224,0,3,252,0,0,31,255,254,0,3,252,0,0,191,255,255,192,3,255,255,2,255,64,127,224,3,255,255,3,252,0,15,244,3,255,255,7,244,0,3,248,3,252,0,11,240,0,3,252,3,252,0,11,240,0,3,252,3,252,0,11,240,0,3,252,3,252,0,7,248,0,3,248,3,252,0,3,252,0,15,244,3,252,0,2,255,128,127,224,3,252,0,0,191,255,255,192,3,252,0,0,47,255,254,0,3,252,0,0,2,255,224,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,248,0, + // 0xd569 합 + 105,213,31,35,24,34,2,253,0,0,169,0,0,0,0,0,0,0,254,0,0,15,240,0,0,0,254,0,0,15,240,0,0,0,254,0,0,15,240,0,255,255,255,255,254,15,240,0,255,255,255,255,254,15,240,0,255,255,255,255,254,15,240,0,0,0,0,0,0,15,240,0,0,6,186,64,0,15,240,0,0,127,255,249,0,15,255,248,3,255,255,255,64,15,255,248,11,253,0,191,192,15,255,248,15,240,0,31,224,15,240,0,31,208,0,15,240,15,240,0,31,208,0,15,240,15,240,0,15,240,0,31,224,15,240,0,11,248,0,127,192,15,240,0,3,255,255,255,128,15,240,0,0,191,255,253,0,15,240,0,0,10,255,144,0,15,240,0,0,0,0,0,0,5,80,0,0,0,0,0,0,0,0,0,0,127,64,0,0,15,240,0,0,127,64,0,0,15,240,0,0,127,64,0,0,15,240,0,0,127,255,255,255,255,240,0,0,127,255,255,255,255,240,0,0,127,255,255,255,255,240,0,0,127,64,0,0,15,240,0,0,127,64,0,0,15,240,0,0,127,64,0,0,15,240,0,0,127,255,255,255,255,240,0,0,127,255,255,255,255,240,0,0,127,255,255,255,255,240,0,0,0,0,0,0,0,0,0, + // 0xd648 홈 + 72,214,30,34,16,34,2,254,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,47,255,255,255,255,255,255,64,47,255,255,255,255,255,255,64,47,255,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,5,170,165,0,0,0,0,2,255,255,255,248,0,0,0,47,255,255,255,255,128,0,0,191,228,0,1,191,208,0,0,255,64,0,0,31,240,0,0,255,0,0,0,31,240,0,0,191,208,0,0,127,224,0,0,63,255,170,175,255,192,0,0,11,255,255,255,254,0,0,0,0,111,255,254,144,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,252,0,0,0,7,244,0,2,252,0,0,0,7,244,0,2,252,0,0,0,7,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0,2,255,255,255,255,255,244,0, + // 0xd654 화 + 84,214,32,34,16,34,1,253,0,0,63,192,0,3,252,0,0,0,63,192,0,3,252,0,0,0,63,192,0,3,252,0,0,0,63,192,0,3,252,0,63,255,255,255,255,195,252,0,63,255,255,255,255,195,252,0,63,255,255,255,255,195,252,0,0,0,0,0,0,3,252,0,0,1,175,164,0,3,252,0,0,31,255,255,64,3,252,0,0,127,255,255,208,3,252,0,0,255,128,47,240,3,252,0,2,253,0,7,248,3,252,0,3,252,0,3,252,3,252,0,3,248,0,2,252,3,255,254,3,252,0,2,252,3,255,254,2,252,0,3,248,3,255,254,0,255,64,31,244,3,252,0,0,191,255,255,224,3,252,0,0,31,255,255,128,3,252,0,0,2,255,248,0,3,252,0,0,0,63,192,0,3,252,0,0,0,63,192,0,3,252,0,0,0,63,192,0,3,252,0,0,0,63,218,191,211,252,0,127,255,255,255,255,211,252,0,127,255,255,255,255,211,252,0,63,255,255,169,64,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0, + // 0xd788 히 + 136,215,28,35,245,34,2,253,0,0,0,0,0,0,84,0,0,127,64,0,1,253,0,0,127,64,0,1,253,0,0,127,64,0,1,253,0,0,127,64,0,1,253,0,0,127,128,0,1,253,127,255,255,255,255,129,253,127,255,255,255,255,129,253,127,255,255,255,255,129,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,2,255,224,0,1,253,0,47,255,254,0,1,253,0,255,255,255,192,1,253,2,255,64,127,240,1,253,3,252,0,15,244,1,253,11,244,0,3,248,1,253,11,240,0,3,252,1,253,15,240,0,2,252,1,253,11,240,0,3,252,1,253,11,244,0,3,248,1,253,3,252,0,15,244,1,253,2,255,64,127,240,1,253,0,255,255,255,192,1,253,0,47,255,254,0,1,253,0,2,255,228,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Latin_Extended_A_27.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Latin_Extended_A_27.cpp new file mode 100644 index 000000000000..16b5e7a8f974 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Latin_Extended_A_27.cpp @@ -0,0 +1,288 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Latin Extended-A 37pt, capital 'A' height: 27px, width: 100%, range: 0x0100-0x017f +extern const uint8_t NotoSans_Medium_Latin_Extended_A_27[20794] = { + 130,27,0,1,127,1,35,247, // unifont_t + // 0x0100 Ā + 24,32,192,24,0,0,0,1,85,85,80,0,0,11,255,255,224,0,0,11,255,255,224,0,0,6,170,170,144,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x0101 ā + 18,27,135,21,1,255,0,85,85,84,0,0,255,255,253,0,0,255,255,253,0,0,170,170,168,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x0102 Ă + 24,34,204,24,0,0,0,10,0,0,160,0,0,15,128,2,240,0,0,11,249,111,224,0,0,3,255,255,192,0,0,0,255,254,0,0,0,0,6,144,0,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x0103 ă + 18,29,145,21,1,255,1,160,0,26,0,1,240,0,62,0,0,254,86,252,0,0,127,255,248,0,0,31,255,208,0,0,1,169,0,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x0104 Ą + 24,36,216,24,0,247,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255,0,0,0,0,1,248,0,0,0,0,3,224,0,0,0,0,15,192,0,0,0,0,31,128,0,0,0,0,31,128,0,0,0,0,31,209,0,0,0,0,15,255,0,0,0,0,7,255,0,0,0,0,0,84, + // 0x0105 ą + 18,30,150,21,1,247,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,15,208,0,5,64,15,128,0,0,0,63,0,0,0,0,188,0,0,0,0,248,0,0,0,1,248,0,0,0,0,253,16,0,0,0,255,240,0,0,0,63,240,0,0,0,1,64, + // 0x0106 Ć + 20,36,180,23,2,255,0,0,0,5,80,0,0,0,63,240,0,0,0,191,192,0,0,0,255,0,0,0,3,252,0,0,0,11,224,0,0,0,10,64,0,0,0,0,0,0,0,0,26,234,64,0,7,255,255,253,0,47,255,255,255,0,255,255,175,253,3,255,208,0,108,11,254,0,0,0,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,127,192,0,0,0,127,192,0,0,0,191,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,128,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,208,0,0,0,47,240,0,0,0,15,248,0,0,0,11,254,0,0,0,3,255,228,1,188,0,255,255,255,252,0,47,255,255,252,0,2,255,255,244,0,0,5,84,0, + // 0x0107 ć + 15,30,120,18,2,255,0,0,5,84,0,0,31,244,0,0,63,208,0,0,191,64,0,1,253,0,0,3,244,0,0,6,128,0,0,0,0,0,0,0,84,0,0,47,255,228,2,255,255,248,11,255,255,244,31,253,1,176,63,224,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,192,0,0,63,208,0,0,47,248,0,120,15,255,255,248,2,255,255,248,0,127,255,224,0,1,84,0, + // 0x0108 Ĉ + 20,36,180,23,2,255,0,0,5,80,0,0,0,47,248,0,0,0,127,253,0,0,1,254,191,64,0,3,248,47,192,0,15,208,7,240,0,26,0,0,164,0,0,0,0,0,0,0,26,234,64,0,7,255,255,253,0,47,255,255,255,0,255,255,175,253,3,255,208,0,108,11,254,0,0,0,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,127,192,0,0,0,127,192,0,0,0,191,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,128,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,208,0,0,0,47,240,0,0,0,15,248,0,0,0,11,254,0,0,0,3,255,228,1,188,0,255,255,255,252,0,47,255,255,252,0,2,255,255,244,0,0,5,84,0, + // 0x0109 ĉ + 15,30,120,18,2,255,0,5,80,0,0,15,252,0,0,63,255,0,0,255,191,192,2,252,31,224,11,240,3,248,10,64,0,104,0,0,0,0,0,0,84,0,0,47,255,228,2,255,255,248,11,255,255,244,31,253,1,176,63,224,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,192,0,0,63,208,0,0,47,248,0,120,15,255,255,248,2,255,255,248,0,127,255,224,0,1,84,0, + // 0x010a Ċ + 20,35,175,23,2,255,0,0,1,64,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,7,208,0,0,0,0,0,0,0,0,0,0,0,0,0,26,234,64,0,7,255,255,253,0,47,255,255,255,0,255,255,175,253,3,255,208,0,108,11,254,0,0,0,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,127,192,0,0,0,127,192,0,0,0,191,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,128,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,208,0,0,0,47,240,0,0,0,15,248,0,0,0,11,254,0,0,0,3,255,228,1,188,0,255,255,255,252,0,47,255,255,252,0,2,255,255,244,0,0,5,84,0, + // 0x010b ċ + 15,29,116,18,2,255,0,1,80,0,0,7,244,0,0,11,248,0,0,11,248,0,0,2,240,0,0,0,0,0,0,0,0,0,0,0,84,0,0,47,255,228,2,255,255,248,11,255,255,244,31,253,1,176,63,224,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,192,0,0,63,208,0,0,47,248,0,120,15,255,255,248,2,255,255,248,0,127,255,224,0,1,84,0, + // 0x010c Č + 20,36,180,23,2,255,0,5,0,0,80,0,31,192,3,244,0,7,244,31,208,0,2,253,191,128,0,0,191,254,0,0,0,63,252,0,0,0,10,160,0,0,0,0,0,0,0,0,26,234,64,0,7,255,255,253,0,47,255,255,255,0,255,255,175,253,3,255,208,0,108,11,254,0,0,0,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,127,192,0,0,0,127,192,0,0,0,191,128,0,0,0,191,64,0,0,0,255,64,0,0,0,255,64,0,0,0,191,128,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,63,208,0,0,0,47,240,0,0,0,15,248,0,0,0,11,254,0,0,0,3,255,228,1,188,0,255,255,255,252,0,47,255,255,252,0,2,255,255,244,0,0,5,84,0, + // 0x010d č + 15,30,120,18,2,255,5,0,0,20,15,224,2,252,3,252,15,240,0,255,63,192,0,63,255,0,0,31,253,0,0,6,164,0,0,0,0,0,0,0,84,0,0,47,255,228,2,255,255,248,11,255,255,244,31,253,1,176,63,224,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,64,0,0,127,192,0,0,63,208,0,0,47,248,0,120,15,255,255,248,2,255,255,248,0,127,255,224,0,1,84,0, + // 0x010e Ď + 22,35,210,27,3,0,0,80,0,5,64,0,0,254,0,47,192,0,0,63,128,255,0,0,0,15,247,252,0,0,0,3,255,240,0,0,0,1,255,208,0,0,0,0,170,64,0,0,0,0,0,0,0,0,21,85,84,0,0,0,127,255,255,244,0,0,127,255,255,255,64,0,127,255,255,255,224,0,127,128,1,191,252,0,127,128,0,11,254,0,127,128,0,2,255,64,127,128,0,0,255,192,127,128,0,0,127,192,127,128,0,0,63,208,127,128,0,0,47,224,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,47,224,127,128,0,0,63,208,127,128,0,0,63,192,127,128,0,0,191,192,127,128,0,1,255,64,127,128,0,7,255,0,127,128,0,47,252,0,127,149,91,255,244,0,127,255,255,255,192,0,127,255,255,253,0,0,127,255,254,64,0,0, + // 0x010f ď + 24,29,174,23,2,255,0,0,0,15,240,191,0,0,0,15,240,254,0,0,0,15,240,253,0,0,0,15,240,252,0,0,0,15,242,240,0,0,0,15,242,224,0,0,0,15,240,0,0,1,64,15,240,0,0,191,254,15,240,0,3,255,255,207,240,0,15,255,255,255,240,0,47,248,1,255,240,0,63,208,0,127,240,0,127,192,0,47,240,0,191,64,0,31,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,191,64,0,15,240,0,191,128,0,47,240,0,63,208,0,63,240,0,47,244,1,255,240,0,15,255,255,255,240,0,3,255,255,203,240,0,0,191,254,7,240,0,0,1,64,0,0,0, + // 0x0110 Đ + 24,27,162,27,1,0,1,85,85,64,0,0,7,255,255,255,64,0,7,255,255,255,244,0,7,255,255,255,254,0,7,248,0,27,255,192,7,248,0,0,191,224,7,248,0,0,47,244,7,248,0,0,15,252,7,248,0,0,7,252,7,248,0,0,3,253,7,248,0,0,2,254,7,248,0,0,1,255,191,255,255,64,1,255,255,255,255,128,1,255,255,255,255,128,1,255,171,254,170,64,1,255,7,248,0,0,2,254,7,248,0,0,3,253,7,248,0,0,3,252,7,248,0,0,11,252,7,248,0,0,31,244,7,248,0,0,127,240,7,248,0,2,255,192,7,253,85,191,255,64,7,255,255,255,252,0,7,255,255,255,208,0,7,255,255,228,0,0, + // 0x0111 đ + 21,29,174,23,2,255,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,3,255,255,255,128,0,7,255,255,255,128,0,3,255,255,255,128,0,0,0,15,240,0,0,0,0,15,240,0,0,47,232,15,240,0,2,255,255,79,240,0,11,255,255,239,240,0,31,254,91,255,240,0,63,224,0,191,240,0,127,192,0,63,240,0,191,128,0,31,240,0,255,64,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,64,0,15,240,0,191,128,0,47,240,0,63,208,0,63,240,0,63,244,1,255,240,0,15,255,255,255,240,0,3,255,255,203,240,0,0,191,254,7,240,0,0,1,64,0,0,0, + // 0x0112 Ē + 16,32,128,21,3,0,1,85,85,80,7,255,255,240,7,255,255,240,6,170,170,160,0,0,0,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x0113 ē + 18,27,135,21,2,255,1,85,85,80,0,3,255,255,244,0,3,255,255,244,0,2,170,170,160,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x0114 Ĕ + 16,34,136,21,3,0,10,64,0,160,11,192,1,240,7,249,111,240,3,255,255,192,0,191,255,0,0,6,144,0,0,0,0,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x0115 ĕ + 18,29,145,21,2,255,6,128,0,104,0,7,192,0,248,0,3,249,91,240,0,1,255,255,224,0,0,127,255,64,0,0,6,164,0,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x0116 Ė + 16,34,136,21,3,0,0,1,64,0,0,11,240,0,0,15,244,0,0,15,244,0,0,3,224,0,0,0,0,0,0,0,0,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x0117 ė + 18,29,145,21,2,255,0,0,80,0,0,0,3,248,0,0,0,11,252,0,0,0,7,248,0,0,0,2,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x0118 Ę + 16,36,144,21,3,247,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253,0,0,3,240,0,0,15,192,0,0,47,64,0,0,63,0,0,0,63,0,0,0,63,68,0,0,47,253,0,0,15,253,0,0,0,80, + // 0x0119 ę + 18,30,150,21,2,247,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,255,0,0,0,85,248,0,0,0,3,240,0,0,0,11,192,0,0,0,15,192,0,0,0,31,128,0,0,0,15,209,0,0,0,15,255,0,0,0,3,255,0,0,0,0,20,0, + // 0x011a Ě + 16,35,140,21,3,0,5,0,0,84,15,208,3,248,3,248,15,224,1,254,127,128,0,127,255,0,0,47,252,0,0,10,164,0,0,0,0,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x011b ě + 18,30,150,21,2,255,5,64,0,20,0,11,224,1,252,0,2,252,11,240,0,0,255,127,192,0,0,63,255,64,0,0,15,253,0,0,0,6,168,0,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x011c Ĝ + 22,36,216,27,2,255,0,0,1,84,0,0,0,0,15,254,0,0,0,0,47,255,64,0,0,0,127,191,192,0,0,1,254,11,240,0,0,3,244,2,252,0,0,6,128,0,105,0,0,0,0,0,0,0,0,0,6,190,148,0,0,2,255,255,255,144,0,31,255,255,255,224,0,191,255,235,255,192,2,255,224,0,7,128,7,255,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,64,0,0,0,0,255,64,0,127,255,240,191,64,0,127,255,240,191,64,0,127,255,240,191,128,0,0,15,240,127,192,0,0,15,240,63,192,0,0,15,240,63,208,0,0,15,240,47,240,0,0,15,240,15,252,0,0,15,240,7,255,0,0,15,240,2,255,228,0,95,240,0,191,255,255,255,240,0,31,255,255,255,240,0,1,255,255,254,64,0,0,1,85,0,0, + // 0x011d ĝ + 18,38,190,23,2,247,0,1,84,0,0,0,11,255,0,0,0,31,255,128,0,0,63,239,208,0,0,254,11,244,0,3,248,1,253,0,6,144,0,41,0,0,0,0,0,0,0,1,64,0,0,0,191,253,7,240,3,255,255,203,240,15,255,255,255,240,47,248,2,255,240,63,208,0,127,240,127,192,0,47,240,191,64,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,191,64,0,15,240,127,128,0,31,240,63,208,0,63,240,47,244,1,255,240,15,255,255,255,240,3,255,255,207,240,0,191,254,15,240,0,1,64,15,240,0,0,0,15,240,0,0,0,31,224,0,0,0,47,208,20,0,0,191,192,47,165,87,255,128,47,255,255,254,0,31,255,255,244,0,1,175,254,64,0, + // 0x011e Ğ + 22,35,210,27,2,255,0,2,128,0,104,0,0,3,208,0,252,0,0,2,254,91,244,0,0,0,255,255,240,0,0,0,63,255,128,0,0,0,5,164,0,0,0,0,0,0,0,0,0,0,6,190,148,0,0,2,255,255,255,144,0,31,255,255,255,224,0,191,255,235,255,192,2,255,224,0,7,128,7,255,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,64,0,0,0,0,255,64,0,127,255,240,191,64,0,127,255,240,191,64,0,127,255,240,191,128,0,0,15,240,127,192,0,0,15,240,63,192,0,0,15,240,63,208,0,0,15,240,47,240,0,0,15,240,15,252,0,0,15,240,7,255,0,0,15,240,2,255,228,0,95,240,0,191,255,255,255,240,0,31,255,255,255,240,0,1,255,255,254,64,0,0,1,85,0,0, + // 0x011f ğ + 18,37,185,23,2,247,2,144,0,40,0,3,224,0,188,0,1,254,91,248,0,0,255,255,240,0,0,47,255,192,0,0,1,164,0,0,0,0,0,0,0,0,1,64,0,0,0,191,253,7,240,3,255,255,203,240,15,255,255,255,240,47,248,2,255,240,63,208,0,127,240,127,192,0,47,240,191,64,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,191,64,0,15,240,127,128,0,31,240,63,208,0,63,240,47,244,1,255,240,15,255,255,255,240,3,255,255,207,240,0,191,254,15,240,0,1,64,15,240,0,0,0,15,240,0,0,0,31,224,0,0,0,47,208,20,0,0,191,192,47,165,87,255,128,47,255,255,254,0,31,255,255,244,0,1,175,254,64,0, + // 0x0120 Ġ + 22,35,210,27,2,255,0,0,0,80,0,0,0,0,3,252,0,0,0,0,3,252,0,0,0,0,3,252,0,0,0,0,1,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,190,148,0,0,2,255,255,255,144,0,31,255,255,255,224,0,191,255,235,255,192,2,255,224,0,7,128,7,255,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,64,0,0,0,0,255,64,0,127,255,240,191,64,0,127,255,240,191,64,0,127,255,240,191,128,0,0,15,240,127,192,0,0,15,240,63,192,0,0,15,240,63,208,0,0,15,240,47,240,0,0,15,240,15,252,0,0,15,240,7,255,0,0,15,240,2,255,228,0,95,240,0,191,255,255,255,240,0,31,255,255,255,240,0,1,255,255,254,64,0,0,1,85,0,0, + // 0x0121 ġ + 18,37,185,23,2,247,0,0,80,0,0,0,2,252,0,0,0,3,253,0,0,0,3,253,0,0,0,1,248,0,0,0,0,0,0,0,0,0,0,0,0,0,1,64,0,0,0,191,253,7,240,3,255,255,203,240,15,255,255,255,240,47,248,2,255,240,63,208,0,127,240,127,192,0,47,240,191,64,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,191,64,0,15,240,127,128,0,31,240,63,208,0,63,240,47,244,1,255,240,15,255,255,255,240,3,255,255,207,240,0,191,254,15,240,0,1,64,15,240,0,0,0,15,240,0,0,0,31,224,0,0,0,47,208,20,0,0,191,192,47,165,87,255,128,47,255,255,254,0,31,255,255,244,0,1,175,254,64,0, + // 0x0122 Ģ + 22,36,216,27,2,247,0,0,6,190,148,0,0,2,255,255,255,144,0,31,255,255,255,224,0,191,255,235,255,192,2,255,224,0,7,128,7,255,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,64,0,0,0,0,255,64,0,127,255,240,191,64,0,127,255,240,191,64,0,127,255,240,191,128,0,0,15,240,127,192,0,0,15,240,63,192,0,0,15,240,63,208,0,0,15,240,47,240,0,0,15,240,15,252,0,0,15,240,7,255,0,0,15,240,2,255,228,0,95,240,0,191,255,255,255,240,0,31,255,255,255,240,0,1,255,255,254,64,0,0,1,85,0,0,0,0,0,0,0,0,0,0,1,252,0,0,0,0,2,252,0,0,0,0,3,248,0,0,0,0,3,240,0,0,0,0,7,208,0,0,0,0,15,192,0,0,0,0,0,0,0,0, + // 0x0123 ģ + 18,38,190,23,2,247,0,0,5,0,0,0,0,62,0,0,0,0,189,0,0,0,0,252,0,0,0,2,248,0,0,0,3,248,0,0,0,2,160,0,0,0,0,0,0,0,0,1,64,0,0,0,191,253,7,240,3,255,255,203,240,15,255,255,255,240,47,248,2,255,240,63,208,0,127,240,127,192,0,47,240,191,64,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,191,64,0,15,240,127,128,0,31,240,63,208,0,63,240,47,244,1,255,240,15,255,255,255,240,3,255,255,207,240,0,191,254,15,240,0,1,64,15,240,0,0,0,15,240,0,0,0,31,224,0,0,0,47,208,20,0,0,191,192,47,165,87,255,128,47,255,255,254,0,31,255,255,244,0,1,175,254,64,0, + // 0x0124 Ĥ + 21,35,210,28,3,0,0,0,21,64,0,0,0,0,255,224,0,0,0,2,255,244,0,0,0,7,251,252,0,0,0,31,208,255,0,0,0,127,64,47,192,0,0,104,0,6,144,0,0,0,0,0,0,0,21,0,0,0,21,64,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,149,85,85,127,192,127,255,255,255,255,192,127,255,255,255,255,192,127,255,255,255,255,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192,127,128,0,0,63,192, + // 0x0125 ĥ + 23,37,222,23,254,0,0,21,64,0,0,0,0,191,224,0,0,0,1,255,248,0,0,0,7,250,253,0,0,0,15,224,191,64,0,0,63,128,31,192,0,0,104,0,2,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,1,0,0,0,63,193,255,248,0,0,63,207,255,255,64,0,63,239,255,255,208,0,63,254,0,127,240,0,63,244,0,31,240,0,63,240,0,15,240,0,63,208,0,11,244,0,63,192,0,11,244,0,63,192,0,11,244,0,63,192,0,11,244,0,63,192,0,11,244,0,63,192,0,11,244,0,63,192,0,11,244,0,63,192,0,11,244,0,63,192,0,11,244,0,63,192,0,11,244,0,63,192,0,11,244,0,63,192,0,11,244,0,63,192,0,11,244,0,63,192,0,11,244, + // 0x0126 Ħ + 28,27,189,28,0,0,0,84,0,0,0,85,0,1,254,0,0,0,255,0,1,254,0,0,0,255,0,1,254,0,0,0,255,0,86,254,85,85,85,255,84,255,255,255,255,255,255,254,255,255,255,255,255,255,254,171,255,170,170,170,255,169,1,254,0,0,0,255,0,1,254,0,0,0,255,0,1,254,0,0,0,255,0,1,254,85,85,85,255,0,1,255,255,255,255,255,0,1,255,255,255,255,255,0,1,255,255,255,255,255,0,1,254,0,0,0,255,0,1,254,0,0,0,255,0,1,254,0,0,0,255,0,1,254,0,0,0,255,0,1,254,0,0,0,255,0,1,254,0,0,0,255,0,1,254,0,0,0,255,0,1,254,0,0,0,255,0,1,254,0,0,0,255,0,1,254,0,0,0,255,0,1,254,0,0,0,255,0,1,254,0,0,0,255,0, + // 0x0127 ħ + 21,28,168,23,0,0,3,252,0,0,0,0,3,252,0,0,0,0,3,252,0,0,0,0,191,255,255,240,0,0,191,255,255,240,0,0,191,255,255,240,0,0,3,252,0,0,0,0,3,252,0,0,0,0,3,252,1,84,0,0,3,252,47,255,208,0,3,252,255,255,248,0,3,255,255,255,253,0,3,255,208,3,255,0,3,255,0,0,255,0,3,254,0,0,255,64,3,253,0,0,191,64,3,252,0,0,191,64,3,252,0,0,191,64,3,252,0,0,191,64,3,252,0,0,191,64,3,252,0,0,191,64,3,252,0,0,191,64,3,252,0,0,191,64,3,252,0,0,191,64,3,252,0,0,191,64,3,252,0,0,191,64,3,252,0,0,191,64,3,252,0,0,191,64, + // 0x0128 Ĩ + 14,34,136,13,0,0,1,64,1,64,47,248,3,208,127,255,155,192,254,191,255,128,240,11,255,0,144,0,100,0,0,0,0,0,21,85,85,0,47,255,254,0,47,255,254,0,2,255,224,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,191,128,0,11,255,249,0,47,255,254,0,47,255,254,0, + // 0x0129 ĩ + 14,28,112,10,254,0,1,64,0,80,15,253,1,240,63,255,215,224,126,191,255,192,248,7,255,64,160,0,100,0,0,0,0,0,0,0,0,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0, + // 0x012a Ī + 11,32,96,13,1,0,85,85,84,255,255,252,255,255,252,170,170,168,0,0,0,85,85,84,191,255,248,191,255,248,11,255,128,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,2,254,0,47,255,228,191,255,248,191,255,248, + // 0x012b ī + 12,26,78,10,255,0,21,85,85,191,255,254,191,255,254,106,170,169,0,0,0,0,0,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0, + // 0x012c Ĭ + 13,34,136,13,0,0,104,0,10,64,124,0,15,64,63,149,191,0,31,255,253,0,7,255,244,0,0,106,64,0,0,0,0,0,21,85,85,0,47,255,254,0,47,255,254,0,2,255,224,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,191,128,0,11,255,249,0,47,255,254,0,47,255,254,0, + // 0x012d ĭ + 12,28,84,10,255,0,160,0,10,248,0,47,191,150,254,63,255,252,15,255,224,0,105,0,0,0,0,0,0,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0, + // 0x012e Į + 11,36,108,13,1,247,85,85,84,191,255,248,191,255,248,11,255,128,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,2,254,0,47,255,228,191,255,248,191,255,248,0,11,192,0,47,64,0,126,0,0,188,0,0,252,0,0,254,0,0,127,248,0,47,248,0,1,64, + // 0x012f į + 7,37,74,10,1,247,1,64,15,240,15,240,15,240,7,208,0,0,0,0,0,0,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,11,208,47,64,62,0,189,0,252,0,190,0,127,248,47,248,1,64, + // 0x0130 İ + 11,34,102,13,1,0,0,84,0,1,253,0,2,255,0,1,254,0,0,188,0,0,0,0,0,0,0,85,85,84,191,255,248,191,255,248,11,255,128,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,2,254,0,47,255,228,191,255,248,191,255,248, + // 0x0131 ı + 4,20,20,10,3,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x0132 IJ + 20,35,175,24,1,248,85,85,84,0,84,191,255,248,2,253,191,255,248,2,253,11,255,128,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,1,254,0,2,253,2,254,0,2,253,47,255,228,2,253,191,255,248,2,253,191,255,248,2,253,0,0,0,2,253,0,0,0,3,252,0,0,0,7,252,0,0,20,111,248,0,0,63,255,240,0,0,63,255,208,0,0,47,254,0,0,0,0,0,0, + // 0x0133 ij + 15,37,148,20,3,247,20,0,1,64,255,0,15,240,255,0,15,244,255,0,15,240,125,0,7,224,0,0,0,0,0,0,0,0,0,0,0,0,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,31,240,0,37,191,224,0,63,255,192,0,63,255,64,0,47,248,0, + // 0x0134 Ĵ + 15,43,172,11,253,248,0,5,80,0,0,31,252,0,0,63,255,0,0,255,191,128,3,252,31,224,11,224,3,244,10,64,0,168,0,0,0,0,0,5,80,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,15,240,0,0,31,240,0,81,191,224,0,255,255,192,0,255,255,0,0,191,248,0,0,0,0,0,0, + // 0x0135 ĵ + 14,38,152,10,254,247,0,21,64,0,0,191,224,0,1,255,244,0,7,250,253,0,15,224,191,0,63,64,31,192,104,0,2,144,0,0,0,0,0,0,0,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,127,192,0,150,255,128,0,255,255,0,0,255,253,0,0,191,144,0,0, + // 0x0136 Ķ + 20,36,180,23,3,247,21,0,0,1,85,127,128,0,7,253,127,128,0,15,244,127,128,0,63,224,127,128,0,255,128,127,128,2,255,0,127,128,11,252,0,127,128,31,240,0,127,128,127,192,0,127,128,255,64,0,127,131,253,0,0,127,143,248,0,0,127,175,244,0,0,127,255,252,0,0,127,255,254,0,0,127,245,255,64,0,127,192,191,192,0,127,128,63,224,0,127,128,31,244,0,127,128,11,252,0,127,128,3,255,0,127,128,0,255,128,127,128,0,127,192,127,128,0,47,240,127,128,0,15,248,127,128,0,7,253,127,128,0,2,255,0,0,0,0,0,0,0,0,0,0,0,0,190,0,0,0,0,254,0,0,0,0,252,0,0,0,1,248,0,0,0,3,240,0,0,0,3,208,0,0,0,0,0,0,0, + // 0x0137 ķ + 17,37,185,21,3,247,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,255,64,255,0,3,254,0,255,0,15,248,0,255,0,63,224,0,255,0,191,128,0,255,2,255,0,0,255,11,252,0,0,255,31,240,0,0,255,127,192,0,0,255,255,224,0,0,255,255,244,0,0,255,231,252,0,0,255,130,255,0,0,255,0,255,128,0,255,0,63,208,0,255,0,31,240,0,255,0,11,252,0,255,0,3,254,0,255,0,1,255,64,255,0,0,191,192,0,0,0,0,0,0,0,0,0,0,0,11,224,0,0,0,15,224,0,0,0,31,192,0,0,0,47,128,0,0,0,63,0,0,0,0,61,0,0,0,0,0,0,0,0, + // 0x0138 ĸ + 17,20,100,21,3,0,255,0,0,255,64,255,0,3,254,0,255,0,11,252,0,255,0,47,240,0,255,0,127,192,0,255,1,255,64,0,255,3,253,0,0,255,15,248,0,0,255,47,224,0,0,255,191,224,0,0,255,255,244,0,0,255,251,252,0,0,255,210,255,0,0,255,0,255,128,0,255,0,63,208,0,255,0,31,240,0,255,0,11,252,0,255,0,3,254,0,255,0,0,255,64,255,0,0,127,192, + // 0x0139 Ĺ + 16,35,140,20,3,0,0,85,0,0,1,255,0,0,3,253,0,0,15,244,0,0,31,208,0,0,63,64,0,0,104,0,0,0,0,0,0,0,21,0,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,85,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x013a ĺ + 8,37,74,10,3,0,0,85,3,255,11,252,15,240,63,192,190,0,164,0,0,0,0,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, + // 0x013b Ļ + 16,36,144,20,3,247,21,0,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,85,127,255,255,255,127,255,255,255,127,255,255,255,0,0,0,0,0,0,0,0,0,3,248,0,0,3,244,0,0,7,240,0,0,11,208,0,0,15,192,0,0,31,64,0,0,0,0,0, + // 0x013c ļ + 6,37,74,10,2,247,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,0,0,0,0,15,208,31,208,47,192,63,64,63,0,124,0,0,0, + // 0x013d Ľ + 16,27,108,20,3,0,21,0,0,85,127,128,0,255,127,128,0,254,127,128,0,252,127,128,1,248,127,128,2,240,127,128,1,144,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,85,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x013e ľ + 11,28,84,10,3,0,255,7,244,255,11,240,255,15,208,255,15,192,255,31,64,255,30,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, + // 0x013f Ŀ + 16,27,108,20,3,0,21,0,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,1,64,127,128,15,224,127,128,31,240,127,128,31,240,127,128,11,208,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,85,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x0140 ŀ + 10,28,84,11,3,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,5,64,255,31,208,255,47,224,255,47,224,255,15,128,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, + // 0x0141 Ł + 19,27,135,20,0,0,0,84,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,1,0,0,1,254,15,64,0,1,254,191,192,0,1,255,255,128,0,1,255,252,0,0,2,255,208,0,0,31,254,0,0,0,127,254,0,0,0,63,254,0,0,0,26,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,85,85,84,1,255,255,255,252,1,255,255,255,252,1,255,255,255,252, + // 0x0142 ł + 10,28,84,10,0,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,254,208,3,255,240,3,255,240,7,255,64,47,252,0,255,252,0,255,252,0,55,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0, + // 0x0143 Ń + 22,35,210,29,3,0,0,0,0,21,64,0,0,0,0,191,192,0,0,0,0,255,64,0,0,0,3,253,0,0,0,0,11,244,0,0,0,0,31,192,0,0,0,0,26,0,0,0,0,0,0,0,0,0,21,64,0,0,1,80,127,240,0,0,11,240,127,248,0,0,11,240,127,252,0,0,11,240,127,255,0,0,11,240,127,255,64,0,11,240,127,127,192,0,11,240,127,63,224,0,11,240,127,15,244,0,11,240,127,11,252,0,11,240,127,3,254,0,11,240,127,1,255,0,11,240,127,0,191,192,11,240,127,0,63,208,11,240,127,0,31,240,7,240,127,0,15,248,7,240,127,0,3,253,7,240,127,0,2,255,7,240,127,0,0,255,135,240,127,0,0,127,199,240,127,0,0,47,247,240,127,0,0,15,251,240,127,0,0,7,255,240,127,0,0,3,255,240,127,0,0,0,255,240,127,0,0,0,191,240,127,0,0,0,63,240, + // 0x0144 ń + 18,29,145,23,3,0,0,0,5,84,0,0,0,31,244,0,0,0,63,224,0,0,0,191,128,0,0,1,254,0,0,0,3,244,0,0,0,6,144,0,0,0,0,0,0,0,0,0,4,0,0,253,7,255,244,0,253,63,255,254,0,255,255,255,255,64,255,248,1,255,192,255,208,0,127,192,255,192,0,63,192,255,64,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208, + // 0x0145 Ņ + 22,36,216,29,3,247,21,64,0,0,1,80,127,240,0,0,11,240,127,248,0,0,11,240,127,252,0,0,11,240,127,255,0,0,11,240,127,255,64,0,11,240,127,127,192,0,11,240,127,63,224,0,11,240,127,15,244,0,11,240,127,11,252,0,11,240,127,3,254,0,11,240,127,1,255,0,11,240,127,0,191,192,11,240,127,0,63,208,11,240,127,0,31,240,7,240,127,0,15,248,7,240,127,0,3,253,7,240,127,0,2,255,7,240,127,0,0,255,135,240,127,0,0,127,199,240,127,0,0,47,247,240,127,0,0,15,251,240,127,0,0,7,255,240,127,0,0,3,255,240,127,0,0,0,255,240,127,0,0,0,191,240,127,0,0,0,63,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,224,0,0,0,0,15,224,0,0,0,0,31,192,0,0,0,0,47,128,0,0,0,0,63,0,0,0,0,0,61,0,0,0,0,0,0,0,0,0, + // 0x0146 ņ + 18,30,150,23,3,247,0,0,4,0,0,253,7,255,244,0,253,63,255,254,0,255,255,255,255,64,255,248,1,255,192,255,208,0,127,192,255,192,0,63,192,255,64,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,0,0,0,0,0,0,0,0,0,0,0,1,252,0,0,0,2,252,0,0,0,3,244,0,0,0,3,240,0,0,0,11,208,0,0,0,15,128,0,0,0,0,0,0,0, + // 0x0147 Ň + 22,35,210,29,3,0,0,20,0,1,80,0,0,63,64,11,224,0,0,15,224,63,128,0,0,3,249,255,0,0,0,1,255,252,0,0,0,0,191,240,0,0,0,0,42,144,0,0,0,0,0,0,0,0,21,64,0,0,1,80,127,240,0,0,11,240,127,248,0,0,11,240,127,252,0,0,11,240,127,255,0,0,11,240,127,255,64,0,11,240,127,127,192,0,11,240,127,63,224,0,11,240,127,15,244,0,11,240,127,11,252,0,11,240,127,3,254,0,11,240,127,1,255,0,11,240,127,0,191,192,11,240,127,0,63,208,11,240,127,0,31,240,7,240,127,0,15,248,7,240,127,0,3,253,7,240,127,0,2,255,7,240,127,0,0,255,135,240,127,0,0,127,199,240,127,0,0,47,247,240,127,0,0,15,251,240,127,0,0,7,255,240,127,0,0,3,255,240,127,0,0,0,255,240,127,0,0,0,191,240,127,0,0,0,63,240, + // 0x0148 ň + 18,29,145,23,3,0,5,64,0,20,0,11,224,2,252,0,3,252,11,240,0,0,255,127,192,0,0,63,255,64,0,0,31,253,0,0,0,6,168,0,0,0,0,0,0,0,0,0,4,0,0,253,7,255,244,0,253,63,255,254,0,255,255,255,255,64,255,248,1,255,192,255,208,0,127,192,255,192,0,63,192,255,64,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208, + // 0x0149 ʼn + 24,27,162,26,0,0,5,80,0,0,0,0,31,240,0,0,0,0,31,224,0,0,0,0,47,208,0,0,0,0,63,192,0,0,0,0,63,128,0,0,0,0,63,0,0,0,64,0,127,15,208,127,255,64,189,15,227,255,255,224,168,15,255,255,255,244,0,15,255,128,31,252,0,15,253,0,3,252,0,15,252,0,2,253,0,15,244,0,2,253,0,15,244,0,1,253,0,15,240,0,1,253,0,15,240,0,1,253,0,15,240,0,1,253,0,15,240,0,1,253,0,15,240,0,1,253,0,15,240,0,1,253,0,15,240,0,1,253,0,15,240,0,1,253,0,15,240,0,1,253,0,15,240,0,1,253,0,15,240,0,1,253,0,15,240,0,1,253, + // 0x014a Ŋ + 22,35,210,29,3,248,21,64,0,0,1,80,127,240,0,0,11,240,127,248,0,0,11,240,127,253,0,0,11,240,127,255,0,0,11,240,127,255,128,0,11,240,127,127,208,0,11,240,127,47,240,0,11,240,127,15,248,0,11,240,127,7,253,0,11,240,127,2,255,0,11,240,127,0,255,128,11,240,127,0,127,208,11,240,127,0,47,240,7,240,127,0,15,248,7,240,127,0,7,253,7,240,127,0,2,255,7,240,127,0,0,255,135,240,127,0,0,63,215,240,127,0,0,47,247,240,127,0,0,15,255,240,127,0,0,3,255,240,127,0,0,1,255,240,127,0,0,0,255,240,127,0,0,0,63,240,127,0,0,0,31,240,127,0,0,0,11,240,0,0,0,0,7,240,0,0,0,0,11,240,0,0,0,0,15,240,0,0,0,64,191,224,0,0,0,255,255,192,0,0,0,255,255,0,0,0,0,255,248,0,0,0,0,0,0,0, + // 0x014b ŋ + 18,30,150,23,3,247,0,0,4,0,0,253,7,255,244,0,253,63,255,254,0,255,255,255,255,64,255,248,1,255,192,255,208,0,63,192,255,192,0,63,208,255,64,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,255,0,0,47,208,0,0,0,47,208,0,0,0,47,208,0,0,0,47,208,0,0,0,47,208,0,0,0,63,192,0,0,37,255,192,0,0,63,255,64,0,0,63,254,0,0,0,47,228,0, + // 0x014c Ō + 25,33,231,29,2,255,0,1,85,85,80,0,0,0,3,255,255,240,0,0,0,3,255,255,240,0,0,0,2,170,170,160,0,0,0,0,0,0,0,0,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x014d ō + 19,27,135,23,2,255,0,85,85,84,0,1,255,255,252,0,1,255,255,252,0,0,170,170,168,0,0,0,0,0,0,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x014e Ŏ + 25,35,245,29,2,255,0,6,128,0,164,0,0,0,7,192,0,244,0,0,0,3,249,107,240,0,0,0,2,255,255,208,0,0,0,0,127,255,64,0,0,0,0,6,148,0,0,0,0,0,0,0,0,0,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x014f ŏ + 19,29,145,23,2,255,2,144,0,41,0,2,240,0,124,0,1,254,91,252,0,0,255,255,240,0,0,47,255,192,0,0,1,164,0,0,0,0,0,0,0,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x0150 Ő + 25,36,252,29,2,255,0,0,21,64,84,0,0,0,0,191,131,253,0,0,0,0,254,11,244,0,0,0,3,252,15,224,0,0,0,7,240,47,128,0,0,0,15,192,126,0,0,0,0,26,0,100,0,0,0,0,0,0,0,0,0,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x0151 ő + 19,30,150,23,2,255,0,5,64,85,0,0,63,208,255,0,0,191,67,252,0,0,254,7,244,0,2,248,15,208,0,7,224,47,64,0,6,64,41,0,0,0,0,0,0,0,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x0152 Œ + 31,28,224,35,2,255,0,0,107,249,85,85,85,84,0,11,255,255,255,255,255,248,0,127,255,255,255,255,255,248,1,255,254,175,255,255,255,248,7,255,64,0,255,0,0,0,15,252,0,0,255,0,0,0,31,240,0,0,255,0,0,0,63,224,0,0,255,0,0,0,63,192,0,0,255,0,0,0,127,192,0,0,255,0,0,0,191,128,0,0,255,0,0,0,191,64,0,0,255,149,85,80,191,64,0,0,255,255,255,240,255,64,0,0,255,255,255,240,255,64,0,0,255,255,255,240,191,64,0,0,255,0,0,0,191,128,0,0,255,0,0,0,127,192,0,0,255,0,0,0,63,192,0,0,255,0,0,0,63,208,0,0,255,0,0,0,47,240,0,0,255,0,0,0,15,248,0,0,255,0,0,0,11,254,0,0,255,0,0,0,3,255,208,6,255,149,85,84,0,255,255,255,255,255,255,248,0,47,255,255,255,255,255,248,0,2,255,255,255,255,255,248,0,0,5,80,0,0,0,0, + // 0x0153 œ + 32,21,168,35,2,255,0,47,255,128,1,255,248,0,2,255,255,244,15,255,255,128,11,255,255,253,63,255,255,224,31,248,1,255,255,128,31,244,63,208,0,63,254,0,7,248,127,192,0,47,252,0,3,252,191,64,0,15,248,0,2,253,255,0,0,15,244,0,1,253,255,0,0,15,255,255,255,253,255,0,0,11,255,255,255,254,255,0,0,11,255,255,255,253,255,0,0,15,244,0,0,0,255,0,0,15,244,0,0,0,191,64,0,15,248,0,0,0,127,128,0,47,252,0,0,0,63,208,0,63,254,0,0,0,31,244,1,255,255,208,0,120,11,255,255,254,63,255,255,248,2,255,255,248,15,255,255,248,0,47,255,144,1,255,255,208,0,0,80,0,0,1,80,0, + // 0x0154 Ŕ + 20,35,175,23,3,0,0,0,1,84,0,0,0,15,248,0,0,0,47,224,0,0,0,127,128,0,0,0,254,0,0,0,3,248,0,0,0,2,144,0,0,0,0,0,0,0,21,85,84,0,0,127,255,255,224,0,127,255,255,253,0,127,255,255,255,64,127,128,6,255,192,127,128,0,127,208,127,128,0,47,224,127,128,0,31,240,127,128,0,31,240,127,128,0,31,224,127,128,0,47,208,127,128,0,127,192,127,128,6,255,64,127,255,255,254,0,127,255,255,244,0,127,255,255,192,0,127,149,127,208,0,127,128,15,240,0,127,128,11,248,0,127,128,3,253,0,127,128,1,255,0,127,128,0,255,128,127,128,0,63,192,127,128,0,47,240,127,128,0,15,244,127,128,0,7,252,127,128,0,3,254, + // 0x0155 ŕ + 12,29,87,16,3,0,0,0,85,0,3,255,0,11,252,0,15,240,0,63,192,0,190,0,0,164,0,0,0,0,0,0,20,252,7,255,253,31,255,254,127,255,255,255,85,255,244,0,255,208,0,255,128,0,255,64,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, + // 0x0156 Ŗ + 20,36,180,23,3,247,21,85,84,0,0,127,255,255,224,0,127,255,255,253,0,127,255,255,255,64,127,128,6,255,192,127,128,0,127,208,127,128,0,47,224,127,128,0,31,240,127,128,0,31,240,127,128,0,31,224,127,128,0,47,208,127,128,0,127,192,127,128,6,255,64,127,255,255,254,0,127,255,255,244,0,127,255,255,192,0,127,149,127,208,0,127,128,15,240,0,127,128,11,248,0,127,128,3,253,0,127,128,1,255,0,127,128,0,255,128,127,128,0,63,192,127,128,0,47,240,127,128,0,15,244,127,128,0,7,252,127,128,0,3,254,0,0,0,0,0,0,0,0,0,0,0,0,190,0,0,0,0,254,0,0,0,0,253,0,0,0,1,252,0,0,0,2,240,0,0,0,3,224,0,0,0,0,0,0,0, + // 0x0157 ŗ + 13,30,120,16,2,247,0,0,5,0,63,1,255,192,63,71,255,192,63,159,255,192,63,255,213,64,63,253,0,0,63,244,0,0,63,224,0,0,63,208,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,0,0,0,0,0,0,0,0,15,208,0,0,31,192,0,0,47,192,0,0,63,64,0,0,62,0,0,0,124,0,0,0,0,0,0,0, + // 0x0158 Ř + 20,35,175,23,3,0,5,64,0,20,0,11,240,1,252,0,2,252,11,244,0,0,191,111,208,0,0,63,255,64,0,0,15,254,0,0,0,6,168,0,0,0,0,0,0,0,21,85,84,0,0,127,255,255,224,0,127,255,255,253,0,127,255,255,255,64,127,128,6,255,192,127,128,0,127,208,127,128,0,47,224,127,128,0,31,240,127,128,0,31,240,127,128,0,31,224,127,128,0,47,208,127,128,0,127,192,127,128,6,255,64,127,255,255,254,0,127,255,255,244,0,127,255,255,192,0,127,149,127,208,0,127,128,15,240,0,127,128,11,248,0,127,128,3,253,0,127,128,1,255,0,127,128,0,255,128,127,128,0,63,192,127,128,0,47,240,127,128,0,15,244,127,128,0,7,252,127,128,0,3,254, + // 0x0159 ř + 14,29,116,16,2,0,20,0,1,64,127,0,15,208,31,208,127,64,11,246,254,0,2,255,248,0,0,255,240,0,0,42,128,0,0,0,0,0,0,0,5,0,63,1,255,192,63,71,255,192,63,159,255,192,63,255,213,64,63,253,0,0,63,244,0,0,63,224,0,0,63,208,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0, + // 0x015a Ś + 17,36,180,20,2,255,0,0,5,80,0,0,0,31,244,0,0,0,63,208,0,0,0,191,64,0,0,1,253,0,0,0,3,244,0,0,0,6,128,0,0,0,0,0,0,0,0,26,234,64,0,2,255,255,253,0,15,255,255,255,0,63,254,175,254,0,127,208,0,108,0,191,128,0,0,0,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,191,192,0,0,0,63,244,0,0,0,31,255,64,0,0,11,255,244,0,0,1,255,255,128,0,0,31,255,240,0,0,1,191,252,0,0,0,15,255,0,0,0,2,255,64,0,0,0,191,128,0,0,0,127,128,0,0,0,127,128,0,0,0,191,128,128,0,0,255,0,254,64,27,254,0,255,255,255,252,0,255,255,255,240,0,111,255,254,64,0,0,21,64,0,0, + // 0x015b ś + 15,30,120,18,2,255,0,0,21,64,0,0,255,128,0,2,255,0,0,7,252,0,0,15,240,0,0,47,128,0,0,41,0,0,0,0,0,0,0,5,64,0,2,255,255,64,47,255,255,240,127,255,255,208,255,64,6,192,254,0,0,0,255,0,0,0,255,128,0,0,191,244,0,0,63,255,128,0,11,255,252,0,0,191,255,128,0,7,255,208,0,0,127,240,0,0,15,240,0,0,11,244,0,0,11,240,228,0,31,240,255,234,255,208,255,255,255,128,111,255,248,0,0,85,0,0, + // 0x015c Ŝ + 17,36,180,20,2,255,0,5,80,0,0,0,15,252,0,0,0,63,255,0,0,0,255,191,192,0,2,252,31,224,0,11,240,3,248,0,10,64,0,104,0,0,0,0,0,0,0,26,234,64,0,2,255,255,253,0,15,255,255,255,0,63,254,175,254,0,127,208,0,108,0,191,128,0,0,0,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,191,192,0,0,0,63,244,0,0,0,31,255,64,0,0,11,255,244,0,0,1,255,255,128,0,0,31,255,240,0,0,1,191,252,0,0,0,15,255,0,0,0,2,255,64,0,0,0,191,128,0,0,0,127,128,0,0,0,127,128,0,0,0,191,128,128,0,0,255,0,254,64,27,254,0,255,255,255,252,0,255,255,255,240,0,111,255,254,64,0,0,21,64,0,0, + // 0x015d ŝ + 15,30,120,18,2,255,0,21,64,0,0,191,224,0,2,255,244,0,7,251,253,0,15,224,191,0,63,64,47,192,104,0,2,144,0,0,0,0,0,5,64,0,2,255,255,64,47,255,255,240,127,255,255,208,255,64,6,192,254,0,0,0,255,0,0,0,255,128,0,0,191,244,0,0,63,255,128,0,11,255,252,0,0,191,255,128,0,7,255,208,0,0,127,240,0,0,15,240,0,0,11,244,0,0,11,240,228,0,31,240,255,234,255,208,255,255,255,128,111,255,248,0,0,85,0,0, + // 0x015e Ş + 17,36,180,20,2,247,0,26,234,64,0,2,255,255,253,0,15,255,255,255,0,63,254,175,254,0,127,208,0,108,0,191,128,0,0,0,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,191,192,0,0,0,63,244,0,0,0,31,255,64,0,0,11,255,244,0,0,1,255,255,128,0,0,31,255,240,0,0,1,191,252,0,0,0,15,255,0,0,0,2,255,64,0,0,0,191,128,0,0,0,127,128,0,0,0,127,128,0,0,0,191,128,128,0,0,255,0,254,64,27,254,0,255,255,255,252,0,255,255,255,240,0,111,255,254,64,0,0,31,192,0,0,0,15,128,0,0,0,47,240,0,0,0,7,252,0,0,0,0,253,0,0,0,0,253,0,0,0,150,252,0,0,0,255,244,0,0,0,255,128,0,0, + // 0x015f ş + 15,30,120,18,2,247,0,5,64,0,2,255,255,64,47,255,255,240,127,255,255,208,255,64,6,192,254,0,0,0,255,0,0,0,255,128,0,0,191,244,0,0,63,255,128,0,11,255,252,0,0,191,255,128,0,7,255,208,0,0,127,240,0,0,15,240,0,0,11,244,0,0,11,240,228,0,31,240,255,234,255,208,255,255,255,128,111,255,248,0,0,111,64,0,0,63,0,0,0,127,208,0,0,27,244,0,0,2,248,0,0,1,248,0,1,91,244,0,3,255,240,0,2,254,64,0, + // 0x0160 Š + 17,36,180,20,2,255,5,0,0,20,0,15,224,2,252,0,3,252,15,240,0,0,255,63,192,0,0,63,255,0,0,0,31,253,0,0,0,6,164,0,0,0,0,0,0,0,0,26,234,64,0,2,255,255,253,0,15,255,255,255,0,63,254,175,254,0,127,208,0,108,0,191,128,0,0,0,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,191,192,0,0,0,63,244,0,0,0,31,255,64,0,0,11,255,244,0,0,1,255,255,128,0,0,31,255,240,0,0,1,191,252,0,0,0,15,255,0,0,0,2,255,64,0,0,0,191,128,0,0,0,127,128,0,0,0,127,128,0,0,0,191,128,128,0,0,255,0,254,64,27,254,0,255,255,255,252,0,255,255,255,240,0,111,255,254,64,0,0,21,64,0,0, + // 0x0161 š + 15,30,120,18,2,255,84,0,1,64,127,0,31,208,31,208,127,64,11,246,253,0,2,255,248,0,0,255,240,0,0,42,128,0,0,0,0,0,0,5,64,0,2,255,255,64,47,255,255,240,127,255,255,208,255,64,6,192,254,0,0,0,255,0,0,0,255,128,0,0,191,244,0,0,63,255,128,0,11,255,252,0,0,191,255,128,0,7,255,208,0,0,127,240,0,0,15,240,0,0,11,244,0,0,11,240,228,0,31,240,255,234,255,208,255,255,255,128,111,255,248,0,0,85,0,0, + // 0x0162 Ţ + 21,36,216,21,0,247,21,85,85,85,85,0,191,255,255,255,255,64,191,255,255,255,255,64,191,255,255,255,255,64,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,62,0,0,0,0,0,125,0,0,0,0,0,255,128,0,0,0,0,31,240,0,0,0,0,3,240,0,0,0,0,3,244,0,0,0,2,111,240,0,0,0,7,255,208,0,0,0,3,250,0,0,0, + // 0x0163 ţ + 14,34,136,14,0,247,0,20,0,0,0,125,0,0,0,189,0,0,0,253,0,0,1,253,0,0,11,255,255,192,127,255,255,192,127,255,255,192,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,1,254,0,0,1,255,64,0,0,255,255,208,0,127,255,208,0,31,255,192,0,3,244,0,0,7,192,0,0,15,248,0,0,1,254,0,0,0,63,0,0,0,63,0,0,102,255,0,0,127,252,0,0,127,144,0, + // 0x0164 Ť + 21,35,210,21,0,0,0,80,0,5,64,0,0,254,0,47,192,0,0,63,128,255,0,0,0,15,247,252,0,0,0,7,255,240,0,0,0,1,255,192,0,0,0,0,170,64,0,0,0,0,0,0,0,0,21,85,85,85,85,0,191,255,255,255,255,64,191,255,255,255,255,64,191,255,255,255,255,64,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0, + // 0x0165 ť + 19,29,145,14,0,255,0,0,0,7,244,0,0,0,11,240,0,0,0,15,224,0,20,0,15,192,0,125,0,15,64,0,189,0,30,0,0,253,0,0,0,1,253,0,0,0,11,255,255,192,0,127,255,255,192,0,127,255,255,192,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,1,254,0,0,0,1,255,64,0,0,0,255,255,208,0,0,127,255,208,0,0,31,255,192,0,0,0,84,0,0, + // 0x0166 Ŧ + 21,27,162,21,0,0,21,85,85,85,85,0,191,255,255,255,255,64,191,255,255,255,255,64,191,255,255,255,255,64,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,3,255,255,255,224,0,3,255,255,255,224,0,3,255,255,255,224,0,1,85,191,149,64,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0, + // 0x0167 ŧ + 14,26,104,14,0,255,0,20,0,0,0,125,0,0,0,189,0,0,0,253,0,0,1,253,0,0,11,255,255,192,127,255,255,192,127,255,255,192,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,43,255,170,64,63,255,255,128,63,255,255,128,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,2,253,0,0,1,254,0,0,1,255,64,0,0,255,255,208,0,127,255,208,0,31,255,192,0,0,84,0, + // 0x0168 Ũ + 21,35,210,27,3,255,0,1,64,0,80,0,0,31,248,3,224,0,0,127,255,155,208,0,0,254,191,255,192,0,0,240,11,255,0,0,0,160,0,100,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,254,0,0,0,0,21,64,0,0, + // 0x0169 ũ + 17,29,145,23,3,255,0,20,0,5,0,1,255,128,62,0,7,255,249,188,0,15,235,255,252,0,15,0,191,240,0,10,0,6,64,0,0,0,0,0,0,0,0,0,0,0,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,0,0, + // 0x016a Ū + 21,33,198,27,3,255,0,21,85,85,0,0,0,63,255,255,64,0,0,63,255,255,64,0,0,42,170,170,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,254,0,0,0,0,21,64,0,0, + // 0x016b ū + 17,27,135,23,3,255,1,85,85,80,0,3,255,255,244,0,3,255,255,244,0,2,170,170,160,0,0,0,0,0,0,0,0,0,0,0,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,0,0, + // 0x016c Ŭ + 21,35,210,27,3,255,0,104,0,6,128,0,0,124,0,15,128,0,0,63,149,191,0,0,0,31,255,254,0,0,0,7,255,244,0,0,0,0,106,64,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,254,0,0,0,0,21,64,0,0, + // 0x016d ŭ + 17,29,145,23,3,255,6,128,0,104,0,7,192,0,248,0,3,249,91,240,0,1,255,255,224,0,0,127,255,64,0,0,6,164,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,0,0, + // 0x016e Ů + 21,38,228,27,3,255,0,0,21,0,0,0,0,1,255,208,0,0,0,3,251,244,0,0,0,7,192,184,0,0,0,11,128,124,0,0,0,7,192,184,0,0,0,3,246,244,0,0,0,1,255,224,0,0,0,0,25,0,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,254,0,0,0,0,21,64,0,0, + // 0x016f ů + 17,32,160,23,3,255,0,1,80,0,0,0,31,253,0,0,0,63,191,64,0,0,124,11,128,0,0,184,7,192,0,0,124,11,128,0,0,63,111,64,0,0,31,254,0,0,0,1,144,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,0,0, + // 0x0170 Ű + 21,36,216,27,3,255,0,1,84,5,64,0,0,11,248,63,208,0,0,15,240,127,128,0,0,47,192,254,0,0,0,127,2,248,0,0,0,252,7,224,0,0,0,160,6,64,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,254,0,0,0,0,21,64,0,0, + // 0x0171 ű + 17,30,150,23,3,255,0,21,64,84,0,0,191,131,253,0,0,255,7,248,0,2,252,15,224,0,7,240,47,128,0,15,192,126,0,0,10,0,100,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,0,0, + // 0x0172 Ų + 21,36,216,27,3,247,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,255,128,0,0,0,21,127,0,0,0,0,0,188,0,0,0,0,0,248,0,0,0,0,1,248,0,0,0,0,2,248,0,0,0,0,1,253,16,0,0,0,0,255,240,0,0,0,0,127,240,0,0,0,0,5,64,0, + // 0x0173 ų + 18,29,145,23,3,247,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,63,0,0,0,0,252,0,0,0,1,244,0,0,0,3,240,0,0,0,3,240,0,0,0,3,244,64,0,0,2,255,208,0,0,0,255,208,0,0,0,5,0, + // 0x0174 Ŵ + 34,35,59,35,0,0,0,0,0,1,84,0,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,15,255,192,0,0,0,0,0,0,63,239,224,0,0,0,0,0,0,191,7,248,0,0,0,0,0,2,248,0,254,0,0,0,0,0,2,144,0,42,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,1,84,0,0,5,80,127,128,0,3,254,0,0,15,240,63,192,0,3,255,0,0,15,240,63,192,0,11,255,0,0,31,224,47,208,0,15,255,64,0,47,208,31,224,0,15,255,128,0,63,192,15,240,0,31,239,192,0,63,192,15,240,0,47,207,208,0,127,128,11,244,0,63,143,224,0,191,64,7,248,0,63,75,240,0,255,0,3,252,0,127,7,240,0,255,0,3,252,0,255,3,244,1,254,0,2,253,0,254,3,252,2,253,0,1,254,1,253,2,252,3,252,0,0,255,2,252,1,253,3,252,0,0,255,3,248,0,254,7,248,0,0,191,67,244,0,191,11,244,0,0,127,135,240,0,127,15,240,0,0,63,203,240,0,63,79,240,0,0,47,207,224,0,63,143,224,0,0,31,223,208,0,47,223,192,0,0,15,239,192,0,31,239,192,0,0,15,255,128,0,15,255,128,0,0,11,255,64,0,11,255,64,0,0,7,255,0,0,7,255,0,0,0,3,255,0,0,3,255,0,0,0,3,254,0,0,3,254,0,0, + // 0x0175 ŵ + 30,29,232,30,0,0,0,0,0,21,64,0,0,0,0,0,0,255,224,0,0,0,0,0,2,255,244,0,0,0,0,0,7,251,252,0,0,0,0,0,31,224,191,0,0,0,0,0,63,64,47,192,0,0,0,0,104,0,6,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,128,0,127,192,0,47,208,63,192,0,191,224,0,63,192,63,192,0,255,240,0,63,192,47,208,0,255,240,0,127,64,31,224,2,251,244,0,191,0,15,240,3,246,248,0,255,0,15,240,3,241,252,0,254,0,11,244,7,240,253,1,253,0,7,248,11,224,254,2,252,0,3,252,15,208,191,3,252,0,2,252,31,192,127,7,248,0,1,253,47,192,63,75,240,0,0,254,63,128,63,139,240,0,0,255,63,0,31,207,224,0,0,191,127,0,15,223,208,0,0,127,190,0,15,239,192,0,0,63,253,0,11,255,192,0,0,63,252,0,7,255,128,0,0,31,248,0,3,255,64,0,0,15,244,0,2,255,0,0, + // 0x0176 Ŷ + 21,35,210,22,0,0,0,0,21,64,0,0,0,0,255,208,0,0,0,2,255,240,0,0,0,11,251,252,0,0,0,31,208,255,0,0,0,127,64,47,192,0,0,168,0,6,144,0,0,0,0,0,0,0,85,0,0,0,21,64,191,192,0,0,63,192,63,208,0,0,191,128,31,240,0,1,255,0,15,244,0,3,253,0,7,252,0,7,252,0,3,253,0,15,244,0,1,255,0,31,240,0,0,191,64,63,208,0,0,63,192,127,128,0,0,47,224,255,0,0,0,15,241,254,0,0,0,11,251,252,0,0,0,3,255,248,0,0,0,1,255,240,0,0,0,0,255,208,0,0,0,0,127,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x0177 ŷ + 20,38,190,20,0,247,0,0,85,0,0,0,3,255,64,0,0,11,255,192,0,0,47,239,240,0,0,127,67,252,0,1,253,0,191,0,2,160,0,26,64,0,0,0,0,0,0,0,0,0,0,191,64,0,3,253,127,192,0,3,252,63,192,0,11,248,47,224,0,15,240,15,240,0,31,240,15,240,0,47,208,7,248,0,63,192,3,252,0,127,128,2,253,0,191,64,0,254,0,255,0,0,255,1,254,0,0,127,66,252,0,0,63,195,252,0,0,47,199,244,0,0,15,219,240,0,0,15,239,224,0,0,7,255,208,0,0,3,255,192,0,0,2,255,128,0,0,0,255,0,0,0,0,255,0,0,0,2,253,0,0,0,3,252,0,0,0,7,248,0,0,0,31,240,0,0,21,191,224,0,0,127,255,128,0,0,127,254,0,0,0,47,224,0,0,0, + // 0x0178 Ÿ + 21,33,198,22,0,0,0,31,192,127,0,0,0,47,192,191,0,0,0,47,192,127,0,0,0,10,64,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,192,0,0,63,192,63,208,0,0,191,128,31,240,0,1,255,0,15,244,0,3,253,0,7,252,0,7,252,0,3,253,0,15,244,0,1,255,0,31,240,0,0,191,64,63,208,0,0,63,192,127,128,0,0,47,224,255,0,0,0,15,241,254,0,0,0,11,251,252,0,0,0,3,255,248,0,0,0,1,255,240,0,0,0,0,255,208,0,0,0,0,127,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x0179 Ź + 19,35,175,21,1,0,0,0,1,85,0,0,0,3,254,0,0,0,15,248,0,0,0,31,224,0,0,0,63,128,0,0,0,254,0,0,0,0,164,0,0,0,0,0,0,0,21,85,85,85,84,127,255,255,255,248,127,255,255,255,248,127,255,255,255,248,0,0,0,47,240,0,0,0,63,192,0,0,0,255,128,0,0,2,255,0,0,0,3,252,0,0,0,15,248,0,0,0,47,240,0,0,0,63,192,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,192,0,0,0,255,64,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,229,85,85,84,191,255,255,255,252,191,255,255,255,252,191,255,255,255,252, + // 0x017a ź + 16,29,116,18,1,0,0,0,21,80,0,0,63,224,0,0,255,128,0,1,254,0,0,3,248,0,0,15,224,0,0,10,64,0,0,0,0,0,0,0,0,0,63,255,255,252,63,255,255,252,63,255,255,252,0,0,15,244,0,0,31,240,0,0,63,192,0,0,255,64,0,2,254,0,0,7,252,0,0,15,240,0,0,47,208,0,0,127,192,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,208,0,0,191,255,255,253,191,255,255,253,191,255,255,253, + // 0x017b Ż + 19,34,170,21,1,0,0,0,20,0,0,0,0,254,0,0,0,1,255,0,0,0,1,255,0,0,0,0,189,0,0,0,0,0,0,0,0,0,0,0,0,21,85,85,85,84,127,255,255,255,248,127,255,255,255,248,127,255,255,255,248,0,0,0,47,240,0,0,0,63,192,0,0,0,255,128,0,0,2,255,0,0,0,3,252,0,0,0,15,248,0,0,0,47,240,0,0,0,63,192,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,192,0,0,0,255,64,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,229,85,85,84,191,255,255,255,252,191,255,255,255,252,191,255,255,255,252, + // 0x017c ż + 16,28,112,18,1,0,0,1,64,0,0,15,224,0,0,31,240,0,0,31,240,0,0,11,208,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,252,63,255,255,252,63,255,255,252,0,0,15,244,0,0,31,240,0,0,63,192,0,0,255,64,0,2,254,0,0,7,252,0,0,15,240,0,0,47,208,0,0,127,192,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,208,0,0,191,255,255,253,191,255,255,253,191,255,255,253, + // 0x017d Ž + 19,35,175,21,1,0,1,80,0,5,0,2,252,0,127,0,0,191,2,253,0,0,47,219,244,0,0,15,255,208,0,0,3,255,128,0,0,1,170,0,0,0,0,0,0,0,21,85,85,85,84,127,255,255,255,248,127,255,255,255,248,127,255,255,255,248,0,0,0,47,240,0,0,0,63,192,0,0,0,255,128,0,0,2,255,0,0,0,3,252,0,0,0,15,248,0,0,0,47,240,0,0,0,63,192,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,192,0,0,0,255,64,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,229,85,85,84,191,255,255,255,252,191,255,255,255,252,191,255,255,255,252, + // 0x017e ž + 16,29,116,18,1,0,21,0,0,80,47,192,7,240,11,240,47,208,2,253,191,64,0,255,253,0,0,63,248,0,0,26,160,0,0,0,0,0,0,0,0,0,63,255,255,252,63,255,255,252,63,255,255,252,0,0,15,244,0,0,31,240,0,0,63,192,0,0,255,64,0,2,254,0,0,7,252,0,0,15,240,0,0,47,208,0,0,127,192,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,208,0,0,191,255,255,253,191,255,255,253,191,255,255,253, + // 0x017f ſ + 11,29,87,13,3,0,0,5,0,2,255,248,31,255,248,63,255,240,127,208,16,191,64,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Simplified_Chinese_27.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Simplified_Chinese_27.cpp new file mode 100644 index 000000000000..7228cff311de --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Simplified_Chinese_27.cpp @@ -0,0 +1,778 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Simplified Chinese 37pt, capital 'A' height: 27px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 +extern const uint8_t NotoSans_Medium_Simplified_Chinese_27[24699] = { + 162,27,28,32,26,255,35,247, // unifont_t + // 0x201c “ + 28,32,14,10,40,14,0,17,0,80,1,80,3,240,7,224,3,240,15,208,11,240,31,192,15,224,47,192,31,208,63,128,47,192,127,64,63,192,255,64,127,192,255,0,106,64,170,0, + // 0x201d ” + 29,32,14,10,40,14,0,17,5,80,5,80,15,244,47,224,15,240,47,208,15,224,63,192,31,208,63,128,47,192,127,64,63,128,191,0,63,0,254,0,127,0,252,0,105,0,164,0, + // 0x22bf ⊿ + 191,34,29,30,240,37,3,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,2,192,0,0,0,0,0,0,11,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,191,192,0,0,0,0,0,2,255,192,0,0,0,0,0,11,255,192,0,0,0,0,0,47,239,192,0,0,0,0,0,191,143,192,0,0,0,0,2,254,15,192,0,0,0,0,11,248,15,192,0,0,0,0,47,224,15,192,0,0,0,0,191,128,15,192,0,0,0,2,254,0,15,192,0,0,0,11,248,0,15,192,0,0,0,31,224,0,15,192,0,0,0,127,128,0,15,192,0,0,1,255,0,0,15,192,0,0,7,252,0,0,15,192,0,0,31,240,0,0,15,192,0,0,127,192,0,0,15,192,0,1,255,0,0,0,15,192,0,7,252,0,0,0,15,192,0,31,240,0,0,0,15,192,0,127,192,0,0,0,15,192,1,255,0,0,0,0,15,192,7,255,255,255,255,255,255,192,31,255,255,255,255,255,255,192,127,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0, + // 0x4e00 一 + 0,78,35,4,36,37,1,13,63,255,255,255,255,255,255,255,244,127,255,255,255,255,255,255,255,244,127,255,255,255,255,255,255,255,244,127,255,255,255,255,255,255,255,244, + // 0x4e09 三 + 9,78,33,30,14,37,2,255,1,85,85,85,85,85,85,80,0,7,255,255,255,255,255,255,244,0,7,255,255,255,255,255,255,244,0,7,255,255,255,255,255,255,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,254,0,0,0,63,255,255,255,255,254,0,0,0,63,255,255,255,255,254,0,0,0,26,170,170,170,170,169,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,21,85,85,85,85,85,85,85,0, + // 0x4e0a 上 + 10,78,33,33,41,37,2,255,0,0,0,5,64,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,255,255,255,248,0,0,0,0,47,255,255,255,248,0,0,0,0,47,255,255,255,248,0,0,0,0,47,229,85,85,80,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,85,85,85,127,229,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x4e0b 下 + 11,78,33,32,32,37,2,253,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,106,170,170,175,250,170,170,170,64,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,232,0,0,0,0,0,0,0,15,255,128,0,0,0,0,0,0,15,255,248,0,0,0,0,0,0,15,255,255,64,0,0,0,0,0,15,231,255,240,0,0,0,0,0,15,224,191,254,0,0,0,0,0,15,224,15,255,192,0,0,0,0,15,224,1,255,248,0,0,0,0,15,224,0,63,248,0,0,0,0,15,224,0,11,240,0,0,0,0,15,224,0,1,192,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,208,0,0,0,0, + // 0x4e0d 不 + 13,78,33,33,41,37,2,253,21,85,85,85,85,85,85,85,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,0,0,0,0,255,64,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,63,244,0,0,0,0,0,0,0,191,244,0,0,0,0,0,0,2,255,244,176,0,0,0,0,0,7,255,246,253,0,0,0,0,0,31,255,251,255,128,0,0,0,0,127,247,244,191,240,0,0,0,2,255,199,244,31,253,0,0,0,11,255,7,244,7,255,128,0,0,63,252,7,244,0,255,224,0,1,255,240,7,244,0,47,252,0,15,255,128,7,244,0,11,255,0,191,253,0,7,244,0,2,255,192,255,240,0,7,244,0,0,127,192,63,128,0,7,244,0,0,47,0,28,0,0,7,244,0,0,4,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0, + // 0x4e13 专 + 19,78,33,36,68,37,2,252,0,0,0,63,64,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,191,0,0,0,0,0,3,255,255,255,255,255,255,240,0,3,255,255,255,255,255,255,240,0,3,255,255,255,255,255,255,240,0,1,85,87,253,85,85,85,64,0,0,0,3,248,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,11,240,0,0,0,0,0,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,85,85,127,213,85,85,85,85,0,0,0,63,64,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,255,0,0,0,1,0,0,0,1,255,255,255,255,255,192,0,0,2,255,255,255,255,255,224,0,0,3,255,255,255,255,255,192,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,255,192,0,0,0,0,126,64,3,255,0,0,0,0,0,255,253,15,252,0,0,0,0,0,191,255,255,240,0,0,0,0,0,2,255,255,192,0,0,0,0,0,0,27,255,253,0,0,0,0,0,0,0,127,255,208,0,0,0,0,0,0,6,255,240,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,2,192,0,0,0,0,0,0,0,0,0,0,0, + // 0x4e1d 丝 + 29,78,33,33,41,37,2,255,0,0,80,0,0,0,128,0,0,0,0,253,0,0,2,252,0,0,0,1,253,0,0,3,248,0,0,0,3,252,0,0,7,240,0,0,0,3,244,0,0,15,224,0,0,0,11,240,0,0,31,192,0,0,0,15,208,0,0,63,128,0,0,0,47,192,45,0,127,0,36,0,0,63,64,63,128,254,0,127,0,0,190,0,191,1,252,0,255,0,1,252,1,254,3,244,2,253,0,3,248,3,252,11,240,3,248,0,11,240,7,244,47,192,15,240,0,47,255,255,224,191,255,255,208,0,47,255,255,192,127,255,255,128,0,31,255,255,64,63,255,255,0,0,9,65,254,0,20,2,252,0,0,0,3,252,0,0,11,244,0,0,0,11,240,0,0,31,208,0,0,0,47,208,0,0,63,128,0,0,0,127,64,0,0,254,0,0,0,1,253,0,0,3,252,0,0,0,7,254,175,254,31,250,175,255,0,31,255,255,254,127,255,255,255,0,15,255,255,253,63,255,255,255,0,11,250,149,0,47,234,149,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x4e2a 个 + 42,78,35,34,50,37,1,253,0,0,0,3,253,0,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,31,255,192,0,0,0,0,0,0,63,255,224,0,0,0,0,0,0,255,143,248,0,0,0,0,0,3,255,3,254,0,0,0,0,0,15,252,1,255,128,0,0,0,0,47,244,0,127,224,0,0,0,0,255,208,0,31,248,0,0,0,3,255,64,0,7,255,0,0,0,31,253,0,0,1,255,208,0,0,127,240,0,0,0,63,248,0,3,255,192,1,252,0,11,255,128,31,254,0,1,252,0,2,255,244,255,244,0,1,252,0,0,127,252,127,192,0,1,252,0,0,11,244,45,0,0,1,252,0,0,1,224,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0, + // 0x4e2d 中 + 45,78,31,35,24,37,3,253,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,21,85,85,111,213,85,85,80,127,255,255,255,255,255,255,244,127,255,255,255,255,255,255,244,127,255,255,255,255,255,255,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,85,85,111,213,85,87,244,127,255,255,255,255,255,255,244,127,255,255,255,255,255,255,244,127,255,255,255,255,255,255,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0, + // 0x4e3a 为 + 58,78,32,35,24,37,2,253,0,0,0,63,64,0,0,0,0,24,0,63,64,0,0,0,0,255,0,63,64,0,0,0,0,127,128,63,64,0,0,0,0,63,208,63,64,0,0,0,0,15,240,63,64,0,0,0,0,7,244,63,64,0,0,0,0,3,128,63,0,0,0,0,0,0,0,127,0,0,0,0,63,255,255,255,255,255,255,253,63,255,255,255,255,255,255,253,63,255,255,255,255,255,255,253,21,85,85,255,85,85,86,253,0,0,0,254,0,0,1,252,0,0,0,254,0,0,1,252,0,0,1,253,0,0,1,252,0,0,2,252,0,0,2,252,0,0,3,252,46,0,2,252,0,0,3,248,191,64,2,252,0,0,11,240,63,192,2,252,0,0,15,240,15,240,2,252,0,0,47,208,7,248,3,252,0,0,63,192,3,252,3,252,0,0,191,128,0,254,3,248,0,1,255,0,0,184,3,248,0,3,253,0,0,0,3,248,0,15,252,0,0,0,3,244,0,63,240,0,0,0,7,244,0,255,192,0,0,0,11,240,3,255,64,0,0,0,15,240,31,253,0,0,0,0,47,240,191,244,0,0,3,255,255,208,63,192,0,0,2,255,255,192,14,0,0,0,1,255,255,0,0,0,0,0,0,85,80,0, + // 0x4e3b 主 + 59,78,33,34,50,37,2,254,0,0,0,24,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,255,208,0,0,0,0,0,0,0,63,244,0,0,0,0,0,0,0,15,253,0,0,0,0,0,0,0,2,255,64,0,0,0,0,0,0,0,191,192,0,0,0,5,85,85,85,127,85,85,84,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,85,85,91,249,85,85,64,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,85,85,85,85,85,85,85,85,64, + // 0x4e49 义 + 73,78,34,35,59,37,1,253,0,0,0,2,192,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,3,248,0,1,228,0,0,0,0,2,252,0,2,253,0,0,111,0,0,253,0,3,252,0,0,127,64,0,191,0,7,248,0,0,63,128,0,127,64,11,240,0,0,47,192,0,63,128,15,224,0,0,15,224,0,41,0,47,208,0,0,11,240,0,0,0,63,192,0,0,3,248,0,0,0,191,64,0,0,2,252,0,0,0,255,0,0,0,0,255,0,0,2,253,0,0,0,0,191,64,0,7,252,0,0,0,0,63,192,0,15,240,0,0,0,0,31,240,0,47,224,0,0,0,0,11,248,0,127,192,0,0,0,0,3,254,1,255,0,0,0,0,0,1,255,67,253,0,0,0,0,0,0,127,223,248,0,0,0,0,0,0,47,255,224,0,0,0,0,0,0,11,255,192,0,0,0,0,0,0,7,255,128,0,0,0,0,0,0,31,255,224,0,0,0,0,0,0,191,255,253,0,0,0,0,0,7,255,139,255,128,0,0,0,0,63,253,1,255,244,0,0,0,7,255,224,0,63,255,64,0,0,127,255,64,0,7,255,248,0,27,255,248,0,0,0,191,255,208,127,255,128,0,0,0,11,255,240,47,244,0,0,0,0,0,191,208,14,64,0,0,0,0,0,7,128,0,0,0,0,0,0,0,0,0, + // 0x4e4b 之 + 75,78,35,35,59,37,1,253,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,1,85,85,86,253,85,85,84,0,7,255,255,255,255,255,255,254,0,7,255,255,255,255,255,255,255,64,7,255,255,255,255,255,255,254,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,31,244,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,255,128,0,0,0,2,0,0,3,254,0,0,0,0,11,240,0,31,248,0,0,0,0,15,240,0,127,224,0,0,0,0,31,224,1,255,128,0,0,0,0,63,224,11,254,0,0,0,0,0,127,240,63,248,0,0,0,0,0,255,253,255,208,0,0,0,0,1,255,255,255,0,0,0,0,0,3,252,191,252,0,0,0,0,0,7,248,63,249,0,0,0,0,0,15,240,11,255,233,64,0,0,0,63,224,1,255,255,255,255,255,244,191,192,0,47,255,255,255,255,240,47,64,0,1,111,255,255,255,224,6,0,0,0,0,5,85,85,64, + // 0x4e86 了 + 134,78,29,32,0,37,4,253,255,255,255,255,255,255,253,0,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,64,85,85,85,85,85,95,254,0,0,0,0,0,0,47,248,0,0,0,0,0,0,191,224,0,0,0,0,0,2,255,128,0,0,0,0,0,15,254,0,0,0,0,0,0,63,244,0,0,0,0,0,1,255,208,0,0,0,0,0,63,255,0,0,0,0,0,0,63,248,0,0,0,0,0,0,63,208,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,21,85,191,64,0,0,0,0,31,255,255,0,0,0,0,0,15,255,254,0,0,0,0,0,11,255,228,0,0,0,0, + // 0x4e8c 二 + 140,78,33,26,234,37,2,1,1,170,170,170,170,170,170,160,0,2,255,255,255,255,255,255,224,0,2,255,255,255,255,255,255,224,0,2,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192, + // 0x4e8e 于 + 142,78,33,33,41,37,2,253,1,85,85,85,85,85,85,80,0,7,255,255,255,255,255,255,244,0,7,255,255,255,255,255,255,244,0,7,255,255,255,255,255,255,244,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,85,85,85,87,253,85,85,85,64,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,1,255,255,248,0,0,0,0,0,0,255,255,240,0,0,0,0,0,0,191,255,208,0,0,0,0,0,0,42,148,0,0,0,0,0, + // 0x4ea4 交 + 164,78,33,36,68,37,2,252,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,85,85,85,91,249,85,85,85,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,61,0,0,15,128,0,0,0,0,255,128,0,63,240,0,0,0,3,255,0,0,31,253,0,0,0,15,252,0,0,7,255,128,0,0,63,240,0,0,0,255,224,0,1,255,192,0,0,0,47,248,0,11,255,1,0,0,20,11,255,0,127,252,63,0,0,63,130,255,128,127,224,63,128,0,191,64,191,64,15,64,47,192,0,255,0,44,0,4,0,15,224,2,253,0,0,0,0,0,11,244,7,252,0,0,0,0,0,3,252,15,244,0,0,0,0,0,1,255,63,224,0,0,0,0,0,0,191,255,192,0,0,0,0,0,0,63,255,0,0,0,0,0,0,0,31,253,0,0,0,0,0,0,0,127,255,64,0,0,0,0,0,2,255,255,240,0,0,0,0,0,47,255,127,254,0,0,0,0,6,255,248,11,255,228,0,0,1,191,255,208,1,255,255,144,0,191,255,253,0,0,47,255,255,128,255,255,208,0,0,2,255,255,192,63,248,0,0,0,0,27,255,0,46,0,0,0,0,0,0,26,0,0,0,0,0,0,0,0,0,0, + // 0x4eae 亮 + 174,78,33,36,68,37,2,252,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,47,213,85,85,85,255,0,0,0,47,128,0,0,0,191,0,0,0,47,128,0,0,0,191,0,0,0,47,213,85,85,85,255,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,170,170,170,170,170,170,191,64,126,0,0,0,0,0,0,63,64,126,0,31,192,7,244,0,63,64,126,0,31,192,7,244,0,63,64,126,0,47,192,7,244,0,63,64,0,0,63,192,7,244,0,0,0,0,0,63,128,7,244,0,0,0,0,0,191,64,7,244,0,0,0,0,0,255,0,7,244,0,13,0,0,3,253,0,7,244,0,15,192,0,47,252,0,7,244,0,31,192,6,255,240,0,3,248,0,47,192,255,255,128,0,3,255,255,255,64,191,248,0,0,2,255,255,255,0,62,64,0,0,0,191,255,248,0,0,0,0,0,0,0,0,0,0, + // 0x4ece 从 + 206,78,35,33,41,37,1,253,0,0,191,0,0,15,208,0,0,0,0,255,0,0,31,208,0,0,0,0,255,0,0,31,208,0,0,0,0,255,0,0,31,208,0,0,0,0,255,0,0,31,208,0,0,0,0,255,0,0,31,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,208,0,0,0,0,254,0,0,47,208,0,0,0,1,253,0,0,63,224,0,0,0,1,253,0,0,63,240,0,0,0,2,252,0,0,63,240,0,0,0,2,252,0,0,127,240,0,0,0,3,253,0,0,127,244,0,0,0,3,255,0,0,191,248,0,0,0,3,255,192,0,255,252,0,0,0,7,255,224,0,255,252,0,0,0,11,255,248,1,254,253,0,0,0,15,247,253,2,252,254,0,0,0,15,242,255,3,252,191,0,0,0,31,224,255,135,248,127,64,0,0,47,208,63,207,240,63,192,0,0,63,192,47,159,240,47,208,0,0,127,128,14,63,208,15,240,0,0,255,64,4,191,192,15,244,0,1,255,0,0,255,64,7,252,0,3,254,0,3,255,0,3,255,0,7,252,0,15,252,0,0,255,192,15,248,0,63,248,0,0,191,240,63,240,0,255,224,0,0,63,244,127,208,0,127,192,0,0,15,224,11,128,0,15,0,0,0,3,192,1,0,0,0,0,0,0,0,0, + // 0x4ee4 令 + 228,78,35,35,59,37,1,253,0,0,0,3,253,0,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,31,255,192,0,0,0,0,0,0,63,255,240,0,0,0,0,0,0,255,143,248,0,0,0,0,0,3,254,3,255,0,0,0,0,0,15,252,0,255,192,0,0,0,0,63,240,0,63,240,0,0,0,1,255,192,0,15,253,0,0,0,11,255,0,0,3,255,128,0,0,47,248,0,0,0,191,240,0,1,255,255,255,255,255,239,253,0,11,255,79,255,255,255,199,255,208,127,253,15,255,255,255,193,255,248,63,240,0,0,0,0,0,63,240,31,128,0,0,0,0,0,11,208,9,0,0,0,0,0,0,1,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,11,240,0,0,0,0,63,128,47,255,240,0,0,0,0,63,128,15,255,224,0,0,0,0,63,128,15,255,128,0,0,0,0,63,128,1,64,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0, + // 0x4ee5 以 + 229,78,35,32,32,37,1,253,0,127,64,0,0,0,3,248,0,0,127,64,0,0,0,3,252,0,0,127,64,1,0,0,3,248,0,0,63,64,47,64,0,7,244,0,0,63,64,127,192,0,7,244,0,0,63,64,31,240,0,11,240,0,0,63,64,11,248,0,11,240,0,0,63,64,3,252,0,15,240,0,0,63,128,1,255,0,15,224,0,0,63,128,0,255,64,31,208,0,0,63,128,0,127,192,47,192,0,0,63,128,0,63,128,63,192,0,0,63,128,0,24,0,63,128,0,0,63,128,0,0,0,127,64,0,0,63,128,0,0,0,255,0,0,0,63,128,0,0,0,255,0,0,0,63,128,0,0,2,253,0,0,0,63,192,0,0,3,252,0,0,0,63,192,9,0,11,248,0,0,0,47,192,190,0,31,248,0,0,0,47,223,255,0,63,253,0,0,0,47,255,255,0,191,255,64,0,0,127,255,224,2,255,255,208,0,11,255,254,0,11,254,63,240,0,127,255,208,0,47,248,15,252,0,63,249,0,0,255,240,3,255,0,63,128,0,7,255,192,0,255,192,20,0,0,127,254,0,0,127,224,0,0,7,255,244,0,0,47,244,0,0,15,255,192,0,0,11,244,0,0,3,253,0,0,0,3,208,0,0,0,208,0,0,0,1,64, + // 0x4ef6 件 + 246,78,35,35,59,37,1,253,0,0,80,0,0,21,0,0,0,0,0,254,0,0,63,64,0,0,0,1,253,7,144,63,64,0,0,0,2,252,11,240,63,64,0,0,0,3,248,15,224,63,64,0,0,0,11,240,15,208,63,64,0,0,0,15,224,15,192,63,64,0,0,0,47,192,47,213,127,149,85,0,0,63,128,63,255,255,255,255,128,0,255,0,63,255,255,255,255,128,2,255,0,191,255,255,255,255,128,3,255,0,254,0,63,64,0,0,15,255,1,252,0,63,64,0,0,47,255,3,252,0,63,64,0,0,191,255,7,244,0,63,64,0,0,127,127,1,240,0,63,64,0,0,62,63,0,0,0,63,64,0,0,28,63,0,0,0,63,64,0,0,0,63,1,85,85,127,149,85,80,0,63,3,255,255,255,255,255,244,0,63,3,255,255,255,255,255,244,0,63,3,255,255,255,255,255,244,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0, + // 0x4efd 份 + 253,78,35,35,59,37,1,253,0,0,160,0,0,0,0,0,0,0,0,253,0,31,255,255,0,0,0,2,252,0,31,255,255,0,0,0,3,248,0,31,255,255,64,0,0,7,244,2,64,0,47,192,0,0,15,240,7,240,0,31,192,0,0,31,208,11,240,0,15,224,0,0,63,192,15,208,0,15,240,0,0,191,64,47,192,0,7,244,0,1,255,0,63,128,0,3,252,0,3,255,0,191,0,0,1,254,0,11,255,1,253,0,0,0,255,64,31,255,3,252,0,0,0,127,192,127,255,11,240,0,0,0,47,244,255,255,31,224,0,0,0,15,248,255,127,63,255,255,255,255,251,240,124,63,15,47,255,255,255,244,192,32,63,0,47,255,255,255,244,0,0,63,0,0,31,208,3,244,0,0,63,0,0,31,192,3,244,0,0,63,0,0,31,192,3,244,0,0,63,0,0,47,128,3,240,0,0,63,0,0,63,128,7,240,0,0,63,0,0,63,64,7,240,0,0,63,0,0,127,0,7,240,0,0,63,0,0,254,0,7,240,0,0,63,0,1,252,0,7,240,0,0,63,0,3,252,0,11,240,0,0,63,0,11,244,0,11,240,0,0,63,0,31,240,0,15,224,0,0,63,0,191,192,0,31,224,0,0,63,3,255,0,47,255,208,0,0,63,3,252,0,15,255,192,0,0,63,1,240,0,15,255,0,0,0,42,0,64,0,1,64,0,0, + // 0x4f11 休 + 17,79,35,35,59,37,1,253,0,0,20,0,0,21,0,0,0,0,0,63,128,0,127,0,0,0,0,0,127,64,0,127,0,0,0,0,0,255,0,0,127,0,0,0,0,1,254,0,0,127,0,0,0,0,3,252,0,0,127,0,0,0,0,7,248,0,0,127,0,0,0,0,15,240,0,0,127,0,0,0,0,47,224,0,0,127,0,0,0,0,127,193,85,85,191,85,85,80,0,255,199,255,255,255,255,255,240,2,255,199,255,255,255,255,255,240,11,255,199,255,255,255,255,255,240,47,255,192,0,7,255,240,0,0,127,255,192,0,11,255,244,0,0,255,223,192,0,15,255,252,0,0,127,31,192,0,47,255,253,0,0,60,31,192,0,63,255,191,0,0,16,31,192,0,191,191,63,64,0,0,31,192,0,253,127,47,192,0,0,31,192,3,252,127,15,208,0,0,31,192,7,244,127,11,240,0,0,31,192,15,240,127,3,252,0,0,31,192,63,208,127,2,254,0,0,31,192,191,128,127,0,255,64,0,31,194,255,0,127,0,127,208,0,31,203,252,0,127,0,47,240,0,31,239,244,0,127,0,15,252,0,31,207,224,0,127,0,3,240,0,31,195,128,0,127,0,0,192,0,31,192,0,0,127,0,0,0,0,31,192,0,0,127,0,0,0,0,31,192,0,0,127,0,0,0,0,31,192,0,0,127,0,0,0,0,31,192,0,0,127,0,0,0, + // 0x4f20 传 + 32,79,34,36,68,37,1,252,0,0,164,0,0,164,0,0,0,0,0,254,0,1,252,0,0,0,0,1,252,0,3,248,0,0,0,0,3,248,0,3,244,0,0,0,0,7,244,255,255,255,255,255,64,0,15,240,255,255,255,255,255,64,0,31,208,255,255,255,255,255,64,0,63,192,0,15,224,0,0,0,0,191,64,0,31,192,0,0,0,1,255,0,0,47,192,0,0,0,3,255,0,0,63,128,0,0,0,11,255,15,255,255,255,255,255,240,47,255,15,255,255,255,255,255,240,127,255,15,255,255,255,255,255,240,255,255,0,0,254,0,0,0,0,191,127,0,0,253,0,0,0,0,60,127,0,2,252,0,0,0,0,52,127,0,3,252,0,0,0,0,0,127,0,3,248,0,0,0,0,0,127,0,7,255,255,255,254,0,0,127,0,11,255,255,255,255,64,0,127,0,15,255,255,255,253,0,0,127,0,0,0,0,11,248,0,0,127,0,0,0,0,47,224,0,0,127,0,0,0,0,191,192,0,0,127,0,0,8,1,255,0,0,0,127,0,0,63,135,252,0,0,0,127,0,0,191,255,240,0,0,0,127,0,0,31,255,192,0,0,0,127,0,0,2,255,192,0,0,0,127,0,0,0,127,240,0,0,0,127,0,0,0,15,253,0,0,0,127,0,0,0,3,255,0,0,0,127,0,0,0,0,189,0,0,0,63,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0, + // 0x4f4d 位 + 77,79,35,35,59,37,1,253,0,0,36,0,0,42,0,0,0,0,0,191,0,0,127,0,0,0,0,0,254,0,0,127,0,0,0,0,2,252,0,0,127,0,0,0,0,3,248,0,0,127,0,0,0,0,11,240,0,0,127,0,0,0,0,15,224,0,0,127,0,0,0,0,63,194,255,255,255,255,255,240,0,127,130,255,255,255,255,255,240,0,255,130,255,255,255,255,255,240,3,255,128,85,85,85,85,85,64,11,255,128,0,0,0,0,0,0,31,255,128,0,64,0,2,144,0,127,255,128,11,224,0,3,252,0,255,175,128,7,240,0,3,248,0,191,47,128,3,240,0,7,244,0,60,47,128,3,244,0,11,240,0,32,47,128,3,248,0,15,240,0,0,47,128,2,252,0,15,224,0,0,47,128,1,252,0,15,208,0,0,47,128,0,252,0,31,192,0,0,47,128,0,253,0,47,192,0,0,47,128,0,253,0,63,128,0,0,47,128,0,254,0,63,64,0,0,47,128,0,191,0,127,0,0,0,47,128,0,127,0,191,0,0,0,47,128,0,127,0,254,0,0,0,47,128,0,127,0,252,0,0,0,47,128,0,16,1,252,0,0,0,47,128,0,0,3,248,0,0,0,47,135,255,255,255,255,255,248,0,47,135,255,255,255,255,255,248,0,47,135,255,255,255,255,255,248,0,47,129,85,85,85,85,85,80,0,47,64,0,0,0,0,0,0, + // 0x4f4e 低 + 78,79,35,35,59,37,1,253,0,0,80,0,0,0,0,0,0,0,0,253,0,0,0,0,36,0,0,1,252,0,0,0,27,253,0,0,3,248,0,1,111,255,255,64,0,7,244,122,255,255,255,249,0,0,15,240,127,255,255,249,0,0,0,31,208,127,254,155,240,0,0,0,63,192,127,0,7,240,0,0,0,191,64,127,0,7,240,0,0,0,255,0,127,0,7,240,0,0,3,255,0,127,0,7,240,0,0,11,255,0,127,0,7,240,0,0,31,255,0,127,0,3,240,0,0,63,255,0,127,255,255,255,255,244,255,255,0,127,255,255,255,255,244,255,127,0,127,255,255,255,255,244,124,63,0,127,0,3,248,0,0,52,63,0,127,0,2,252,0,0,0,63,0,127,0,2,252,0,0,0,63,0,127,0,1,252,0,0,0,63,0,127,0,0,252,0,0,0,63,0,127,0,0,253,0,0,0,63,0,127,0,0,254,0,0,0,63,0,127,0,4,191,0,0,0,63,0,127,91,254,127,0,0,0,63,5,255,255,254,63,64,64,0,63,15,255,255,254,63,192,184,0,63,11,255,250,64,31,192,188,0,63,7,229,0,0,15,224,252,0,63,0,0,0,0,11,244,252,0,63,0,0,0,0,3,255,248,0,63,3,255,255,255,245,255,244,0,63,3,255,255,255,244,127,224,0,63,3,255,255,255,244,6,64,0,63,0,0,0,0,0,0,0, + // 0x4f53 体 + 83,79,35,35,59,37,1,253,0,0,144,0,0,189,0,0,0,0,2,252,0,0,254,0,0,0,0,3,248,0,0,254,0,0,0,0,7,240,0,0,254,0,0,0,0,15,240,0,0,254,0,0,0,0,31,208,0,0,254,0,0,0,0,63,192,0,0,254,0,0,0,0,63,75,255,255,255,255,255,240,0,255,11,255,255,255,255,255,240,1,255,11,255,255,255,255,255,240,3,255,1,85,95,255,245,85,80,11,255,0,0,15,255,240,0,0,31,255,0,0,31,255,244,0,0,63,255,0,0,63,255,252,0,0,255,255,0,0,126,254,252,0,0,127,127,0,0,189,254,126,0,0,61,127,0,1,252,254,63,0,0,24,127,0,3,248,254,47,128,0,0,127,0,7,240,254,15,192,0,0,127,0,15,224,254,11,240,0,0,127,0,47,192,254,3,244,0,0,127,0,63,128,254,2,252,0,0,127,0,255,0,254,0,255,0,0,127,2,253,0,254,0,191,128,0,127,7,248,0,254,0,63,208,0,127,31,247,255,255,255,223,244,0,127,63,215,255,255,255,203,248,0,127,15,71,255,255,255,194,224,0,127,6,0,0,254,0,0,128,0,127,0,0,0,254,0,0,0,0,127,0,0,0,254,0,0,0,0,127,0,0,0,254,0,0,0,0,127,0,0,0,254,0,0,0,0,127,0,0,0,254,0,0,0,0,63,0,0,0,169,0,0,0, + // 0x4f59 余 + 89,79,35,36,68,37,1,252,0,0,0,2,252,0,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,31,255,192,0,0,0,0,0,0,127,255,240,0,0,0,0,0,1,255,143,252,0,0,0,0,0,7,255,3,255,0,0,0,0,0,47,252,0,255,208,0,0,0,0,191,240,0,63,248,0,0,0,7,255,128,0,15,255,0,0,0,47,254,0,0,2,255,224,0,1,255,244,0,0,0,191,253,0,31,255,208,0,0,0,31,255,208,127,253,255,255,255,255,253,255,244,47,208,255,255,255,255,252,47,240,14,0,255,255,255,255,252,7,192,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,3,255,255,255,255,255,255,255,128,3,255,255,255,255,255,255,255,128,3,255,255,255,255,255,255,255,128,1,85,85,86,253,85,85,85,0,0,0,0,1,252,0,0,0,0,0,0,144,1,252,0,112,0,0,0,2,253,1,252,2,253,0,0,0,7,252,1,252,2,255,128,0,0,31,240,1,252,0,127,224,0,0,191,192,1,252,0,31,248,0,2,255,0,1,252,0,3,255,0,31,252,0,1,252,0,0,255,128,63,240,1,6,252,0,0,63,224,15,128,11,255,252,0,0,31,128,1,0,3,255,248,0,0,5,0,0,0,3,255,144,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x4f5c 作 + 92,79,35,35,59,37,1,253,0,0,36,0,5,0,0,0,0,0,0,127,0,15,208,0,0,0,0,0,255,0,31,192,0,0,0,0,1,253,0,63,128,0,0,0,0,3,252,0,127,64,0,0,0,0,7,248,0,255,0,0,0,0,0,15,240,0,255,255,255,255,248,0,31,208,2,255,255,255,255,248,0,63,192,3,255,255,255,255,248,0,191,192,15,245,254,85,85,80,0,255,192,31,208,254,0,0,0,3,255,192,63,192,254,0,0,0,11,255,192,191,64,254,0,0,0,31,255,193,255,0,254,0,0,0,63,255,195,252,0,254,0,0,0,127,255,199,248,0,255,255,255,224,63,47,192,240,0,255,255,255,224,29,47,192,0,0,255,255,255,224,4,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,255,255,255,240,0,47,192,0,0,255,255,255,240,0,47,192,0,0,255,255,255,240,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,128,0,0,254,0,0,0, + // 0x4f7f 使 + 127,79,35,36,68,37,1,252,0,0,56,0,0,42,0,0,0,0,0,191,0,0,63,64,0,0,0,0,254,0,0,63,64,0,0,0,2,252,0,0,63,64,0,0,0,3,251,255,255,255,255,255,244,0,11,243,255,255,255,255,255,244,0,15,227,255,255,255,255,255,244,0,63,192,0,0,127,64,0,0,0,127,128,0,0,63,64,0,0,0,255,128,0,0,63,64,0,0,3,255,128,255,255,255,255,255,208,11,255,128,255,255,255,255,255,208,47,255,128,255,255,255,255,255,208,191,255,128,252,0,63,64,15,208,255,111,128,252,0,63,64,15,208,127,47,128,252,0,63,64,15,208,60,47,128,252,0,63,64,15,208,16,47,128,252,0,63,64,15,208,0,47,128,255,255,255,255,255,208,0,47,128,255,255,255,255,255,208,0,47,128,255,255,255,255,255,208,0,47,128,0,0,127,0,0,0,0,47,128,189,0,190,0,0,0,0,47,128,127,0,254,0,0,0,0,47,128,47,193,253,0,0,0,0,47,128,15,242,252,0,0,0,0,47,128,3,255,248,0,0,0,0,47,128,0,255,240,0,0,0,0,47,128,0,127,248,0,0,0,0,47,128,1,255,255,144,0,0,0,47,128,31,255,255,254,64,0,0,47,130,255,248,31,255,255,148,0,47,143,255,208,1,255,255,244,0,47,131,254,0,0,11,255,224,0,47,130,144,0,0,0,26,192,0,0,0,0,0,0,0,0,0, + // 0x4f9b 供 + 155,79,35,35,59,37,1,253,0,0,96,0,168,0,10,128,0,0,0,254,0,253,0,31,192,0,0,1,253,0,253,0,31,192,0,0,2,252,0,253,0,31,192,0,0,3,248,0,253,0,31,192,0,0,11,240,0,253,0,31,192,0,0,15,224,0,253,0,31,192,0,0,47,192,0,253,0,31,192,0,0,127,129,255,255,255,255,255,240,0,255,1,255,255,255,255,255,240,2,255,1,255,255,255,255,255,240,7,255,0,85,254,85,111,213,80,15,255,0,0,253,0,31,192,0,63,255,0,0,253,0,31,192,0,255,255,0,0,253,0,31,192,0,191,127,0,0,253,0,31,192,0,61,63,0,0,253,0,31,192,0,36,63,0,0,253,0,31,192,0,0,63,0,0,253,0,31,192,0,0,63,1,85,254,85,111,213,80,0,63,7,255,255,255,255,255,244,0,63,7,255,255,255,255,255,244,0,63,7,255,255,255,255,255,244,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,185,0,7,64,0,0,63,0,0,254,0,47,192,0,0,63,0,3,252,0,15,240,0,0,63,0,11,244,0,7,252,0,0,63,0,47,224,0,2,254,0,0,63,0,191,192,0,0,191,64,0,63,2,255,0,0,0,63,192,0,63,11,253,0,0,0,15,240,0,63,2,244,0,0,0,11,208,0,63,0,80,0,0,0,2,0, + // 0x4fb5 侵 + 181,79,35,36,68,37,1,252,0,0,164,0,0,0,0,0,0,0,0,253,42,170,170,170,169,0,0,2,252,63,255,255,255,254,0,0,3,248,63,255,255,255,254,0,0,7,244,0,0,0,0,190,0,0,15,240,0,0,0,0,190,0,0,31,208,10,170,170,170,254,0,0,63,192,15,255,255,255,254,0,0,191,64,15,255,255,255,254,0,0,255,0,0,0,0,0,190,0,3,255,0,0,0,0,0,190,0,11,255,0,106,170,170,170,254,0,31,255,0,127,255,255,255,254,0,63,255,0,127,255,255,255,254,0,255,255,0,0,0,0,0,0,0,255,127,0,0,0,0,0,0,0,125,63,6,170,170,170,170,170,160,52,63,7,255,255,255,255,255,240,0,63,7,255,255,255,255,255,240,0,63,7,224,0,0,0,3,240,0,63,7,224,0,0,0,3,240,0,63,7,250,170,170,170,171,240,0,63,1,111,255,255,255,253,80,0,63,0,47,255,255,255,248,0,0,63,0,1,184,0,11,240,0,0,63,0,2,253,0,47,208,0,0,63,0,0,255,64,191,128,0,0,63,0,0,63,227,254,0,0,0,63,0,0,15,255,248,0,0,0,63,0,0,3,255,240,0,0,0,63,0,0,111,255,255,64,0,0,63,0,111,255,251,255,254,80,0,63,11,255,255,64,127,255,248,0,63,3,255,228,0,6,255,240,0,63,1,228,0,0,0,6,192,0,0,0,0,0,0,0,0,0, + // 0x4fdd 保 + 221,79,35,35,59,37,1,253,0,0,32,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,254,63,255,255,255,255,64,0,1,253,63,255,255,255,255,64,0,3,252,63,255,255,255,255,64,0,7,244,63,64,0,0,63,64,0,15,240,63,64,0,0,63,64,0,47,208,63,64,0,0,63,64,0,63,192,63,64,0,0,63,64,0,255,128,63,64,0,0,63,64,2,255,128,63,64,0,0,63,64,7,255,128,63,255,255,255,255,64,15,255,128,63,255,255,255,255,64,63,255,128,63,255,255,255,255,64,255,239,128,0,0,63,64,0,0,127,47,128,0,0,63,64,0,0,61,47,128,0,0,63,64,0,0,20,47,128,0,0,63,64,0,0,0,47,135,255,255,255,255,255,240,0,47,135,255,255,255,255,255,240,0,47,135,255,255,255,255,255,240,0,47,128,0,7,255,244,0,0,0,47,128,0,15,255,252,0,0,0,47,128,0,47,255,254,0,0,0,47,128,0,191,191,127,128,0,0,47,128,1,254,63,111,208,0,0,47,128,7,252,63,79,244,0,0,47,128,47,240,63,67,253,0,0,47,128,191,208,63,65,255,64,0,47,135,255,64,63,64,127,224,0,47,159,253,0,63,64,31,252,0,47,139,244,0,63,64,7,244,0,47,131,192,0,63,64,1,208,0,47,128,0,0,63,64,0,0,0,47,64,0,0,63,0,0,0, + // 0x4fe1 信 + 225,79,35,35,59,37,1,253,0,0,32,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,254,11,255,255,255,252,0,0,1,253,11,255,255,255,252,0,0,3,252,11,255,255,255,252,0,0,7,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,47,211,255,255,255,255,255,248,0,63,131,255,255,255,255,255,248,0,255,131,255,255,255,255,255,244,2,255,128,0,0,0,0,0,0,7,255,128,0,0,0,0,0,0,31,255,128,15,255,255,255,254,0,63,255,128,15,255,255,255,255,0,255,239,128,15,255,255,255,255,0,191,47,128,0,0,0,0,0,0,61,47,128,0,0,0,0,0,0,56,47,128,0,0,0,0,0,0,0,47,128,15,255,255,255,254,0,0,47,128,15,255,255,255,254,0,0,47,128,10,170,170,170,170,0,0,47,128,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,47,128,47,255,255,255,255,0,0,47,128,47,255,255,255,255,0,0,47,128,47,234,170,170,255,0,0,47,128,47,128,0,0,63,0,0,47,128,47,128,0,0,63,0,0,47,128,47,128,0,0,63,0,0,47,128,47,128,0,0,63,0,0,47,128,47,255,255,255,255,0,0,47,128,47,255,255,255,255,0,0,47,128,47,255,255,255,255,0,0,47,128,47,128,0,0,63,0,0,26,64,47,128,0,0,42,0, + // 0x503c 值 + 60,80,35,35,59,37,1,253,0,0,80,0,0,58,64,0,0,0,0,253,0,0,63,64,0,0,0,1,252,0,0,127,0,0,0,0,3,248,0,0,127,0,0,0,0,3,246,255,255,255,255,255,208,0,11,242,255,255,255,255,255,208,0,15,210,255,255,255,255,255,208,0,47,192,0,0,252,0,0,0,0,127,64,0,1,252,0,0,0,0,255,0,0,1,248,0,0,0,2,255,0,63,255,255,255,253,0,3,255,0,63,255,255,255,253,0,15,255,0,63,170,170,170,253,0,47,255,0,63,0,0,0,253,0,127,255,0,63,0,0,0,253,0,191,191,0,63,149,85,85,253,0,62,127,0,63,255,255,255,253,0,28,127,0,63,255,255,255,253,0,0,127,0,63,0,0,0,253,0,0,127,0,63,0,0,0,253,0,0,127,0,63,149,85,85,253,0,0,127,0,63,255,255,255,253,0,0,127,0,63,255,255,255,253,0,0,127,0,63,0,0,0,253,0,0,127,0,63,0,0,0,253,0,0,127,0,63,0,0,0,253,0,0,127,0,63,255,255,255,253,0,0,127,0,63,255,255,255,253,0,0,127,0,63,149,85,85,253,0,0,127,0,63,0,0,0,253,0,0,127,0,63,0,0,0,253,0,0,127,31,255,255,255,255,255,244,0,127,31,255,255,255,255,255,244,0,127,31,255,255,255,255,255,244,0,127,0,0,0,0,0,0,0, + // 0x503e 倾 + 62,80,35,36,68,37,1,252,0,6,64,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,192,0,47,255,255,255,244,0,31,192,0,47,255,255,255,244,0,63,139,208,47,255,255,255,244,0,63,11,208,0,0,254,0,0,0,191,11,208,0,0,253,0,0,0,254,11,208,0,1,252,0,0,1,253,11,208,0,2,248,0,0,3,252,11,208,3,255,255,255,192,7,252,11,208,3,255,255,255,192,15,252,11,255,227,255,255,255,192,47,252,11,255,227,240,0,31,192,63,252,11,255,227,240,84,31,192,255,252,11,208,3,240,188,31,192,254,252,11,208,3,240,188,31,192,188,252,11,208,3,240,188,31,192,52,252,11,208,3,240,188,31,192,16,252,11,208,3,240,188,31,192,0,252,11,208,3,240,188,31,192,0,252,11,208,3,240,188,31,192,0,252,11,208,3,240,188,31,192,0,252,11,208,147,240,252,31,192,0,252,11,219,211,240,252,31,192,0,252,15,255,211,240,252,31,192,0,252,31,255,67,241,248,31,192,0,252,47,248,2,146,244,5,64,0,252,15,128,0,3,242,64,0,0,252,9,0,0,15,231,224,0,0,252,0,0,0,47,203,252,0,0,252,0,0,0,191,65,255,64,0,252,0,0,3,254,0,127,208,0,252,0,0,47,244,0,15,244,0,252,0,0,127,192,0,3,224,0,252,0,0,29,0,0,0,128,0,0,0,0,0,0,0,0,0, + // 0x504f 偏 + 79,80,35,35,59,37,1,253,0,1,64,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,7,243,255,255,255,255,255,244,0,11,227,255,255,255,255,255,244,0,15,211,255,255,255,255,255,244,0,47,192,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,127,0,106,170,170,170,170,128,0,255,0,191,255,255,255,255,192,1,254,0,191,255,255,255,255,192,3,254,0,189,0,0,0,31,192,11,254,0,189,0,0,0,31,192,31,254,0,189,0,0,0,31,192,63,254,0,191,170,170,170,191,192,191,254,0,191,255,255,255,255,192,255,190,0,191,255,255,255,255,192,188,190,0,253,0,0,0,0,0,52,190,0,253,0,0,0,0,0,16,190,0,255,170,170,170,170,144,0,190,0,255,255,255,255,255,224,0,190,0,255,255,255,255,255,224,0,190,0,255,208,244,46,7,224,0,190,1,255,208,244,46,7,224,0,190,2,255,208,244,46,7,224,0,190,3,255,208,244,46,7,224,0,190,3,251,255,255,255,255,224,0,190,7,251,255,255,255,255,224,0,190,11,235,250,254,191,175,224,0,190,15,219,208,244,46,7,224,0,190,47,203,208,244,46,7,224,0,190,127,75,208,244,46,7,224,0,190,191,11,208,244,46,7,224,0,190,45,11,208,244,46,191,224,0,190,4,11,208,244,46,127,208,0,126,0,11,192,164,41,62,64, + // 0x505c 停 + 92,80,35,35,59,37,1,253,0,0,80,0,0,42,0,0,0,0,0,253,0,0,127,0,0,0,0,1,252,0,0,127,0,0,0,0,3,252,0,0,127,0,0,0,0,7,247,255,255,255,255,255,244,0,15,243,255,255,255,255,255,244,0,31,211,255,255,255,255,255,244,0,63,192,0,0,0,0,0,0,0,127,64,5,85,85,85,84,0,0,255,0,31,255,255,255,254,0,3,255,0,31,255,255,255,254,0,7,255,0,31,128,0,0,254,0,31,255,0,31,128,0,0,254,0,63,255,0,31,213,85,85,254,0,255,255,0,31,255,255,255,254,0,255,127,0,31,255,255,255,254,0,124,63,0,0,0,0,0,0,0,52,63,0,0,0,0,0,0,0,0,63,15,255,255,255,255,255,248,0,63,15,255,255,255,255,255,248,0,63,15,250,170,170,170,171,248,0,63,15,192,0,0,0,1,248,0,63,15,192,0,0,0,1,248,0,63,15,195,255,255,255,245,248,0,63,15,195,255,255,255,245,248,0,63,0,3,255,255,255,240,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,1,255,255,0,0,0,0,63,0,0,255,254,0,0,0,0,63,0,0,191,244,0,0,0, + // 0x50a8 储 + 168,80,35,35,59,37,1,253,0,11,64,0,0,15,192,0,0,0,15,208,0,0,15,192,3,144,0,15,193,0,0,15,192,11,240,0,31,143,192,0,15,192,15,208,0,63,79,240,31,255,255,223,192,0,63,3,252,47,255,255,255,128,0,190,0,254,47,255,255,255,0,0,252,0,127,0,15,192,253,0,1,252,0,40,0,15,194,252,0,3,252,0,0,0,15,199,244,0,7,252,0,0,0,15,207,224,0,15,252,0,0,191,255,255,255,244,47,252,255,248,191,255,255,255,244,127,252,255,248,191,255,255,255,244,255,252,255,248,0,11,248,0,0,189,252,22,248,0,47,240,0,0,56,252,1,248,0,191,192,0,0,32,252,1,248,2,255,64,0,0,0,252,1,248,15,255,255,255,128,0,252,1,248,191,255,255,255,192,0,252,1,249,255,255,255,255,192,0,252,1,248,191,248,0,15,192,0,252,1,248,56,248,0,15,192,0,252,1,248,0,248,0,15,192,0,252,1,248,0,254,170,175,192,0,252,1,248,0,255,255,255,192,0,252,1,248,16,255,255,255,192,0,252,1,249,240,248,0,15,192,0,252,1,255,244,248,0,15,192,0,252,3,255,224,248,0,15,192,0,252,11,255,0,255,255,255,192,0,252,7,244,0,255,255,255,192,0,252,3,192,0,255,255,255,192,0,252,0,0,0,248,0,15,192,0,248,0,0,0,248,0,10,128, + // 0x50cf 像 + 207,80,35,35,59,37,1,253,0,2,64,0,228,0,0,0,0,0,3,244,2,252,0,0,0,0,0,7,240,3,254,170,160,0,0,0,15,224,15,255,255,253,0,0,0,15,208,47,255,255,253,0,0,0,47,192,127,64,3,248,0,0,0,63,129,254,0,15,240,0,0,0,127,7,253,85,111,229,85,64,0,255,47,255,255,255,255,255,192,2,254,63,255,255,255,255,255,192,3,254,11,248,0,190,0,15,192,11,254,2,248,0,190,0,15,192,31,254,2,248,0,190,0,15,192,63,254,2,249,85,190,85,95,192,255,254,2,255,255,255,255,255,192,255,190,2,255,255,255,255,255,192,188,190,0,0,127,227,240,0,0,52,190,0,3,255,66,244,2,64,16,190,0,127,255,192,252,11,224,0,190,11,255,159,240,252,47,240,0,190,15,253,7,248,190,255,128,0,190,3,128,47,252,127,253,0,0,190,0,1,255,190,63,240,0,0,190,0,31,248,63,47,192,0,0,190,2,255,208,63,79,208,0,0,190,15,253,1,255,139,240,0,0,190,7,208,11,255,195,248,0,0,190,1,0,127,239,194,253,0,0,190,0,2,255,79,192,255,64,0,190,0,47,248,15,192,127,208,0,190,6,255,208,47,192,47,244,0,190,47,254,0,127,64,11,240,0,190,15,224,255,255,0,1,192,0,190,5,0,127,252,0,0,0,0,126,0,0,127,160,0,0,0, + // 0x5145 充 + 69,81,34,36,68,37,2,252,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,11,244,0,0,0,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,0,0,11,244,0,4,0,0,0,0,0,15,240,0,63,0,0,0,0,0,47,192,0,191,192,0,0,0,0,63,128,0,47,244,0,0,0,0,191,0,0,11,253,0,0,0,0,254,0,0,1,255,64,0,10,171,255,175,255,255,255,208,0,31,255,255,255,255,255,255,244,0,15,255,255,255,255,255,255,252,0,15,255,254,170,149,80,2,255,0,0,0,0,0,0,0,0,253,0,0,0,15,208,2,252,0,48,0,0,0,31,208,2,252,0,0,0,0,0,31,208,2,252,0,0,0,0,0,47,192,2,252,0,0,0,0,0,47,192,2,252,0,0,0,0,0,63,192,2,252,0,0,0,0,0,127,64,2,252,0,4,0,0,0,255,0,2,252,0,11,128,0,1,255,0,2,252,0,11,208,0,3,253,0,2,252,0,15,208,0,31,248,0,2,252,0,15,208,0,191,240,0,2,252,0,15,192,27,255,192,0,1,253,64,111,192,255,254,0,0,1,255,255,255,128,127,224,0,0,0,255,255,255,0,62,0,0,0,0,47,255,249,0,0,0,0,0,0,0,0,0,0, + // 0x5148 先 + 72,81,33,36,68,37,2,252,0,0,0,3,240,0,0,0,0,0,7,224,3,244,0,0,0,0,0,11,240,3,244,0,0,0,0,0,15,224,3,244,0,0,0,0,0,15,208,3,244,0,0,0,0,0,47,213,87,245,85,85,80,0,0,63,255,255,255,255,255,240,0,0,127,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,1,253,0,3,244,0,0,0,0,3,252,0,3,244,0,0,0,0,7,248,0,3,244,0,0,0,0,15,240,0,3,244,0,0,0,0,7,208,0,3,244,0,0,0,0,0,64,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,21,85,111,213,87,253,85,85,64,0,0,47,192,2,252,0,0,0,0,0,63,192,2,252,0,0,0,0,0,63,128,2,252,0,0,0,0,0,63,64,2,252,0,0,0,0,0,191,0,2,252,0,0,0,0,0,255,0,2,252,0,0,0,0,2,253,0,2,252,0,14,64,0,3,252,0,2,252,0,15,192,0,15,244,0,2,252,0,15,192,0,127,240,0,2,252,0,31,192,2,255,192,0,2,252,0,47,128,111,255,0,0,1,255,255,255,128,255,248,0,0,0,255,255,255,0,63,208,0,0,0,127,255,253,0,29,0,0,0,0,0,85,64,0,0,0,0,0,0,0,0,0,0, + // 0x5149 光 + 73,81,35,36,68,37,1,252,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,64,0,0,109,0,1,252,0,2,248,0,0,191,0,1,252,0,3,252,0,0,63,128,1,252,0,7,248,0,0,47,192,1,252,0,15,240,0,0,15,224,1,252,0,15,224,0,0,11,240,1,252,0,47,192,0,0,3,248,1,252,0,63,128,0,0,3,252,1,252,0,255,0,0,0,1,253,1,252,1,253,0,0,0,0,228,1,252,0,104,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,21,85,91,245,85,255,85,85,80,0,0,11,240,0,191,0,0,0,0,0,11,240,0,191,0,0,0,0,0,15,240,0,191,0,0,0,0,0,15,224,0,191,0,0,0,0,0,15,208,0,191,0,0,0,0,0,31,208,0,191,0,0,0,0,0,63,192,0,191,0,0,0,0,0,63,128,0,191,0,1,0,0,0,255,64,0,191,0,2,208,0,1,255,0,0,191,0,3,244,0,7,253,0,0,191,0,3,244,0,31,248,0,0,191,0,3,244,0,255,240,0,0,191,0,3,240,27,255,192,0,0,191,64,11,240,127,254,0,0,0,127,255,255,224,47,240,0,0,0,63,255,255,192,14,0,0,0,0,11,255,254,64,0,0,0,0,0,0,0,0,0, + // 0x5165 入 + 101,81,34,33,41,37,2,253,0,1,85,85,84,0,0,0,0,0,7,255,255,252,0,0,0,0,0,7,255,255,252,0,0,0,0,0,7,255,255,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,10,253,0,0,0,0,0,0,0,31,254,0,0,0,0,0,0,0,47,255,0,0,0,0,0,0,0,63,255,0,0,0,0,0,0,0,63,255,64,0,0,0,0,0,0,191,191,128,0,0,0,0,0,0,255,47,192,0,0,0,0,0,0,255,31,208,0,0,0,0,0,2,253,15,240,0,0,0,0,0,3,252,11,244,0,0,0,0,0,11,248,7,248,0,0,0,0,0,15,240,3,253,0,0,0,0,0,47,224,1,255,0,0,0,0,0,127,192,0,255,128,0,0,0,0,255,64,0,127,208,0,0,0,2,255,0,0,47,240,0,0,0,11,253,0,0,15,252,0,0,0,47,248,0,0,3,255,0,0,0,191,224,0,0,1,255,192,0,2,255,192,0,0,0,127,244,0,31,255,0,0,0,0,47,254,0,191,252,0,0,0,0,7,255,208,255,224,0,0,0,0,1,255,192,63,64,0,0,0,0,0,63,0,8,0,0,0,0,0,0,8,0, + // 0x5168 全 + 104,81,35,34,50,37,1,254,0,0,0,3,253,0,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,31,255,192,0,0,0,0,0,0,63,255,240,0,0,0,0,0,0,255,143,248,0,0,0,0,0,3,255,3,254,0,0,0,0,0,15,252,1,255,128,0,0,0,0,63,240,0,127,240,0,0,0,0,255,208,0,31,252,0,0,0,7,255,64,0,7,255,64,0,0,31,253,0,0,0,255,224,0,0,191,240,0,0,0,63,253,0,7,255,192,0,0,0,11,255,192,63,254,0,0,0,0,2,255,244,127,247,255,255,255,255,255,175,240,31,71,255,255,255,255,255,71,208,8,7,255,255,255,255,255,64,64,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,253,0,0,0,0,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192, + // 0x5171 共 + 113,81,33,35,59,37,2,253,0,0,169,0,0,26,128,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,5,85,255,85,85,127,213,85,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,85,85,255,85,85,127,213,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,0,0,45,0,0,0,0,0,191,192,0,255,128,0,0,0,2,255,64,0,127,240,0,0,0,15,253,0,0,15,253,0,0,0,63,244,0,0,3,255,128,0,1,255,208,0,0,0,191,240,0,15,255,0,0,0,0,31,252,0,127,248,0,0,0,0,7,255,0,47,208,0,0,0,0,0,254,0,6,0,0,0,0,0,0,48,0, + // 0x5173 关 + 115,81,26,36,252,37,5,252,0,4,0,0,1,144,0,0,125,0,0,3,252,0,0,255,0,0,3,252,0,0,63,192,0,11,244,0,0,47,208,0,15,224,0,0,15,240,0,47,192,0,0,7,244,0,63,64,0,0,3,224,0,47,0,0,1,86,85,85,85,85,0,7,255,255,255,255,255,64,7,255,255,255,255,255,64,7,255,255,255,255,255,64,0,0,1,252,0,0,0,0,0,1,252,0,0,0,0,0,1,252,0,0,0,0,0,1,252,0,0,0,0,0,1,252,0,0,0,0,0,2,253,0,0,0,47,255,255,255,255,255,224,47,255,255,255,255,255,224,47,255,255,255,255,255,224,0,0,3,255,0,0,0,0,0,7,255,128,0,0,0,0,11,255,192,0,0,0,0,15,255,224,0,0,0,0,47,219,240,0,0,0,0,127,195,252,0,0,0,0,255,66,255,0,0,0,7,254,0,255,192,0,0,31,248,0,63,244,0,1,255,224,0,15,254,0,27,255,128,0,3,255,224,191,253,0,0,0,255,240,63,224,0,0,0,31,208,14,0,0,0,0,1,128,0,0,0,0,0,0,0, + // 0x5177 具 + 119,81,33,34,50,37,2,253,0,26,170,170,170,170,170,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,47,192,0,0,0,191,0,0,0,47,192,0,0,0,191,0,0,0,47,192,0,0,0,191,0,0,0,47,234,170,170,170,255,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,47,192,0,0,0,191,0,0,0,47,192,0,0,0,191,0,0,0,47,192,0,0,0,191,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,47,234,170,170,170,255,0,0,0,47,192,0,0,0,191,0,0,0,47,192,0,0,0,191,0,0,0,47,234,170,170,170,255,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,47,64,0,62,0,0,0,0,2,255,224,1,255,228,0,0,0,111,255,128,0,191,255,128,0,11,255,248,0,0,7,255,248,0,191,255,128,0,0,0,111,255,128,63,244,0,0,0,0,2,255,0,14,0,0,0,0,0,0,56,0, + // 0x5197 冗 + 151,81,34,33,41,37,2,253,21,85,85,85,85,85,85,85,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,128,0,0,0,0,0,191,0,63,128,0,0,0,0,0,191,0,63,128,0,0,0,0,0,191,0,63,128,0,0,0,0,0,191,0,63,128,0,0,0,0,0,191,0,63,128,0,0,0,0,0,191,0,42,64,191,255,255,255,128,106,0,0,0,191,255,255,255,128,0,0,0,0,191,255,255,255,128,0,0,0,0,191,0,0,127,128,0,0,0,0,191,0,0,63,128,0,0,0,0,191,0,0,63,128,0,0,0,0,191,0,0,63,128,0,0,0,0,191,0,0,63,128,0,0,0,0,255,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,1,253,0,0,63,128,4,0,0,3,252,0,0,63,128,15,64,0,7,248,0,0,63,128,15,224,0,15,240,0,0,63,128,15,208,0,63,224,0,0,63,128,15,208,1,255,192,0,0,63,128,15,192,11,255,0,0,0,63,192,31,192,191,252,0,0,0,63,255,255,192,255,240,0,0,0,47,255,255,64,63,64,0,0,0,15,255,254,0,36,0,0,0,0,0,85,80,0, + // 0x51b7 冷 + 183,81,35,35,59,37,1,253,0,0,0,0,2,248,0,0,0,0,0,0,0,7,254,0,0,0,7,0,0,0,15,255,64,0,0,15,208,0,0,47,255,208,0,0,63,248,0,0,191,143,240,0,0,11,255,0,1,255,7,252,0,0,2,255,192,3,252,2,255,0,0,0,127,208,15,244,0,191,208,0,0,31,128,127,208,0,47,244,0,0,6,1,255,128,0,11,254,0,0,0,7,254,0,0,2,255,208,0,0,47,251,255,255,254,127,248,0,1,255,227,255,255,254,31,244,0,0,255,67,255,255,254,3,224,0,0,124,0,0,0,0,0,128,0,0,32,0,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,66,255,255,255,255,255,0,0,7,210,255,255,255,255,255,0,0,15,242,255,255,255,255,255,0,0,47,208,0,31,208,0,191,0,0,63,192,0,31,192,0,191,0,0,255,64,0,31,192,0,191,0,1,254,0,0,31,192,0,191,0,3,252,0,0,31,192,0,191,0,11,248,0,0,31,192,0,191,0,31,240,0,0,31,192,0,191,0,63,208,0,0,31,192,255,254,0,127,192,0,0,31,192,191,253,0,31,64,0,0,31,192,127,248,0,6,0,0,0,31,192,20,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0, + // 0x51c6 准 + 198,81,35,35,59,37,1,253,0,0,0,0,164,0,25,0,0,0,0,0,0,254,0,63,192,0,2,0,0,1,252,0,63,64,0,11,224,0,3,248,0,127,0,0,31,252,0,7,244,0,254,0,0,7,255,64,15,240,0,252,0,0,0,255,208,31,208,2,252,0,0,0,47,240,63,255,255,255,255,224,0,11,192,127,255,255,255,255,224,0,2,64,255,255,255,255,255,224,0,0,2,255,192,7,240,0,0,0,0,7,255,128,7,240,0,0,0,0,15,255,128,7,240,0,0,0,0,63,255,128,7,240,0,0,0,0,191,239,192,7,240,0,0,0,0,63,111,255,255,255,255,192,0,0,14,47,255,255,255,255,192,0,0,0,47,255,255,255,255,192,0,0,0,47,128,7,240,0,0,0,3,0,47,128,7,240,0,0,0,11,192,47,128,7,240,0,0,0,31,224,47,128,7,240,0,0,0,63,192,47,255,255,255,255,192,0,191,64,47,255,255,255,255,192,0,255,0,47,255,255,255,255,192,3,253,0,47,192,7,240,0,0,7,248,0,47,128,7,240,0,0,15,240,0,47,128,7,240,0,0,63,208,0,47,128,7,240,0,0,127,192,0,47,128,7,240,0,0,47,64,0,47,255,255,255,255,244,10,0,0,47,255,255,255,255,244,0,0,0,47,255,255,255,255,244,0,0,0,47,192,0,0,0,0,0,0,0,31,128,0,0,0,0, + // 0x51fa 出 + 250,81,29,35,24,37,4,253,0,0,0,106,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,127,0,0,0,0,5,64,0,127,0,0,84,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,213,85,191,85,85,254,0,31,255,255,255,255,255,254,0,31,255,255,255,255,255,254,0,31,255,255,255,255,255,254,0,0,0,0,127,0,0,0,0,0,0,0,127,0,0,0,0,189,0,0,127,0,0,31,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,85,85,85,85,85,111,192,254,0,0,0,0,0,47,192,190,0,0,0,0,0,31,192, + // 0x51fb 击 + 251,81,33,35,59,37,2,253,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,1,85,85,87,249,85,85,80,0,3,255,255,255,255,255,255,244,0,3,255,255,255,255,255,255,244,0,3,255,255,255,255,255,255,244,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,85,85,85,87,249,85,85,85,64,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,84,0,3,244,0,5,64,0,2,252,0,3,244,0,15,224,0,2,252,0,3,244,0,15,224,0,2,252,0,3,244,0,15,224,0,2,252,0,3,244,0,15,224,0,2,252,0,3,244,0,15,224,0,2,252,0,3,244,0,15,224,0,2,252,0,3,244,0,15,224,0,2,252,0,3,244,0,15,224,0,2,253,85,87,249,85,95,224,0,2,255,255,255,255,255,255,224,0,2,255,255,255,255,255,255,224,0,2,255,255,255,255,255,255,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0, + // 0x5206 分 + 6,82,35,35,59,37,1,252,0,0,11,208,0,27,128,0,0,0,0,15,240,0,63,192,0,0,0,0,47,224,0,31,224,0,0,0,0,63,192,0,15,244,0,0,0,0,191,128,0,7,252,0,0,0,1,255,0,0,2,255,0,0,0,3,254,0,0,0,255,128,0,0,11,252,0,0,0,127,208,0,0,31,240,0,0,0,47,244,0,0,127,224,0,0,0,15,252,0,1,255,128,0,0,0,3,255,0,7,255,0,0,0,0,1,255,208,47,252,0,0,0,0,0,127,244,191,255,255,255,255,255,255,239,248,127,207,255,255,255,255,255,203,224,31,15,255,255,255,255,255,194,128,4,5,85,127,213,85,127,192,0,0,0,0,63,128,0,47,192,0,0,0,0,127,64,0,47,192,0,0,0,0,191,0,0,63,192,0,0,0,0,191,0,0,63,128,0,0,0,0,255,0,0,63,128,0,0,0,1,254,0,0,63,128,0,0,0,3,252,0,0,63,128,0,0,0,7,252,0,0,63,64,0,0,0,15,244,0,0,63,64,0,0,0,47,240,0,0,127,64,0,0,0,191,192,0,0,127,0,0,0,3,255,64,0,0,191,0,0,0,31,254,0,0,0,255,0,0,1,255,248,0,37,87,254,0,0,15,255,208,0,47,255,253,0,0,3,254,0,0,31,255,248,0,0,1,224,0,0,15,255,144,0,0,0,0,0,0,0,0,0,0,0, + // 0x5207 切 + 7,82,34,34,50,37,1,253,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,15,255,255,255,255,240,0,191,0,15,255,255,255,255,224,0,191,0,15,255,255,255,255,224,0,191,0,5,85,254,85,95,224,0,191,0,0,0,253,0,15,224,0,191,0,5,0,252,0,15,224,0,191,22,255,0,252,0,15,224,0,191,255,255,1,252,0,15,224,111,255,255,255,1,252,0,15,224,191,255,254,64,1,252,0,15,224,191,255,64,0,1,252,0,15,224,121,191,0,0,1,252,0,15,208,0,191,0,0,2,252,0,15,208,0,191,0,0,2,248,0,15,208,0,191,0,0,3,248,0,15,208,0,191,0,0,3,244,0,15,208,0,191,0,96,3,244,0,31,208,0,191,0,125,7,240,0,31,192,0,191,0,190,11,240,0,31,192,0,191,0,189,15,224,0,31,192,0,127,0,253,31,208,0,31,192,0,127,255,252,63,192,0,47,192,0,63,255,248,127,128,0,47,192,0,31,255,240,255,0,0,63,192,0,0,85,2,254,0,0,63,128,0,0,0,7,252,0,0,63,128,0,0,0,15,244,0,0,127,64,0,0,0,127,224,0,0,255,0,0,0,2,255,192,11,255,255,0,0,0,3,255,0,3,255,253,0,0,0,0,248,0,3,255,248,0,0,0,0,96,0,1,85,64,0, + // 0x521b 创 + 27,82,33,35,59,37,1,253,0,0,10,0,0,0,0,5,64,0,0,31,208,0,0,0,47,192,0,0,63,192,0,0,0,47,192,0,0,127,208,0,0,0,47,192,0,0,255,244,0,6,144,47,192,0,2,255,253,0,11,224,47,192,0,3,252,255,0,11,224,47,192,0,15,240,63,192,11,224,47,192,0,47,208,31,240,11,224,47,192,0,191,128,11,248,11,224,47,192,2,255,0,2,253,11,224,47,192,11,252,0,0,255,11,224,47,192,47,244,0,0,127,203,224,47,192,191,208,0,0,47,11,224,47,192,63,255,255,255,248,11,224,47,192,12,191,255,255,240,11,224,47,192,0,191,255,255,240,11,224,47,192,0,190,0,7,240,11,224,47,192,0,190,0,7,240,11,224,47,192,0,190,0,11,224,11,224,47,192,0,190,0,11,224,11,224,47,192,0,190,0,15,224,11,224,47,192,0,190,0,15,208,11,224,47,192,0,190,15,191,192,11,224,47,192,0,190,15,255,128,11,224,47,192,0,190,11,254,0,1,64,47,192,0,190,0,0,20,0,0,47,192,0,190,0,0,47,64,0,47,192,0,190,0,0,47,64,0,47,192,0,190,0,0,63,64,0,47,192,0,191,0,0,127,0,0,47,192,0,127,255,255,255,1,80,127,192,0,63,255,255,253,3,255,255,128,0,11,255,255,228,1,255,255,0,0,0,0,0,0,0,255,232,0, + // 0x521d 初 + 29,82,34,35,59,37,1,253,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,11,255,255,255,255,224,0,15,208,11,255,255,255,255,224,0,15,208,11,255,255,255,255,224,0,15,224,1,85,255,85,95,224,63,255,255,224,0,254,0,15,224,63,255,255,244,0,254,0,15,224,63,255,255,240,0,254,0,15,224,0,0,15,208,0,253,0,15,224,0,0,47,192,0,253,0,15,224,0,0,63,64,0,253,0,15,224,0,0,255,0,0,253,0,15,224,0,1,252,40,1,252,0,15,208,0,3,248,126,1,252,0,15,208,0,15,240,253,1,252,0,15,208,0,47,250,244,2,252,0,15,208,0,191,255,208,3,248,0,15,208,2,255,255,192,3,248,0,15,208,11,255,255,224,3,244,0,15,208,47,255,219,248,7,240,0,31,192,191,223,210,252,15,240,0,31,192,127,79,208,244,15,224,0,31,192,45,15,208,32,47,192,0,31,192,0,15,208,0,63,192,0,47,192,0,15,208,0,191,64,0,47,192,0,15,208,0,255,0,0,63,192,0,15,208,3,253,0,0,63,128,0,15,208,11,252,0,0,63,64,0,15,208,47,240,0,0,255,64,0,15,208,255,208,11,255,255,0,0,15,208,255,128,3,255,253,0,0,15,208,62,0,3,255,248,0,0,15,208,4,0,1,85,64,0, + // 0x522b 别 + 43,82,33,35,59,37,1,252,0,0,0,0,0,0,0,47,192,11,255,255,255,208,0,0,47,192,11,255,255,255,208,0,0,47,192,11,255,255,255,208,0,0,47,192,11,224,0,15,208,31,192,47,192,11,224,0,15,208,31,192,47,192,11,224,0,15,208,31,192,47,192,11,224,0,15,208,31,192,47,192,11,224,0,15,208,31,192,47,192,11,224,0,15,208,31,192,47,192,11,255,255,255,208,31,192,47,192,11,255,255,255,208,31,192,47,192,11,255,255,255,208,31,192,47,192,0,0,0,0,0,31,192,47,192,0,2,248,0,0,31,192,47,192,0,2,244,0,0,31,192,47,192,0,3,244,0,0,31,192,47,192,63,255,255,255,240,31,192,47,192,63,255,255,255,240,31,192,47,192,63,255,255,255,240,31,192,47,192,0,7,240,11,240,31,192,47,192,0,7,240,11,240,31,192,47,192,0,11,224,11,240,31,192,47,192,0,15,224,11,224,31,192,47,192,0,15,208,11,224,5,64,47,192,0,31,192,15,224,0,0,47,192,0,63,128,15,224,0,0,47,192,0,127,0,15,208,0,0,47,192,0,255,0,15,208,0,0,47,192,3,252,0,47,192,0,0,47,192,15,244,63,255,192,0,85,127,128,127,224,31,255,64,0,255,255,128,63,128,15,253,0,0,255,255,0,13,0,0,0,0,0,191,248,0,0,0,0,0,0,0,0,0,0, + // 0x5230 到 + 48,82,33,34,50,37,1,253,0,0,0,0,0,0,0,26,128,0,0,0,0,0,0,0,31,192,63,255,255,255,254,0,0,31,192,63,255,255,255,254,0,0,31,192,63,255,255,255,254,63,64,31,192,0,15,240,0,0,63,64,31,192,0,15,224,4,0,63,64,31,192,0,31,192,127,0,63,64,31,192,0,47,192,63,128,63,64,31,192,0,63,64,31,208,63,64,31,192,0,127,0,11,240,63,64,31,192,21,255,255,255,252,63,64,31,192,63,255,255,255,253,63,64,31,192,63,255,255,255,255,63,64,31,192,63,169,84,0,63,63,64,31,192,0,0,127,0,24,63,64,31,192,0,0,127,0,0,63,64,31,192,0,0,127,0,0,63,64,31,192,0,0,127,0,0,63,64,31,192,15,255,255,255,248,63,64,31,192,15,255,255,255,248,63,64,31,192,15,255,255,255,248,63,64,31,192,0,0,127,0,0,63,64,31,192,0,0,127,0,0,63,64,31,192,0,0,127,0,0,21,0,31,192,0,0,127,0,0,0,0,31,192,0,0,127,0,0,0,0,31,192,0,0,127,22,190,0,0,31,192,0,5,191,255,255,0,0,31,192,111,255,255,255,255,0,0,31,192,127,255,255,255,233,0,149,127,192,63,255,250,80,0,0,255,255,192,62,148,0,0,0,0,255,255,64,0,0,0,0,0,0,191,248,0, + // 0x5236 制 + 54,82,34,35,59,37,1,253,0,0,31,128,0,0,0,5,64,0,248,47,128,0,0,0,15,208,2,252,47,128,0,0,0,15,208,3,248,47,128,0,1,248,15,208,3,244,47,128,0,2,248,15,208,7,255,255,255,254,2,248,15,208,11,255,255,255,254,2,248,15,208,15,255,255,255,254,2,248,15,208,47,192,47,128,0,2,248,15,208,63,128,47,128,0,2,248,15,208,127,0,47,128,0,2,248,15,208,10,0,47,128,0,2,248,15,208,127,255,255,255,255,194,248,15,208,127,255,255,255,255,194,248,15,208,127,255,255,255,255,194,248,15,208,0,0,47,128,0,2,248,15,208,0,0,47,128,0,2,248,15,208,0,0,47,128,0,2,248,15,208,0,0,47,128,0,2,248,15,208,11,255,255,255,255,2,248,15,208,11,255,255,255,255,2,248,15,208,11,255,255,255,255,2,248,15,208,11,208,47,128,63,2,248,15,208,11,208,47,128,63,2,248,15,208,11,208,47,128,63,1,164,15,208,11,208,47,128,63,0,0,15,208,11,208,47,128,63,0,0,15,208,11,208,47,128,63,0,0,15,208,11,208,47,128,63,0,0,15,208,11,208,47,143,255,0,0,15,208,11,208,47,143,254,0,0,15,208,11,208,47,139,248,0,21,111,192,0,0,47,128,0,0,63,255,192,0,0,47,128,0,0,63,255,128,0,0,31,128,0,0,47,249,0, + // 0x5237 刷 + 55,82,33,35,59,37,1,253,0,0,0,0,0,0,0,5,64,0,0,0,0,0,0,0,15,192,3,255,255,255,255,0,0,15,192,3,255,255,255,255,1,64,15,192,3,255,255,255,255,7,224,15,192,3,240,0,0,63,7,224,15,192,3,240,0,0,63,7,224,15,192,3,240,0,0,63,7,224,15,192,3,240,0,0,63,7,224,15,192,3,255,255,255,255,7,224,15,192,3,255,255,255,255,7,224,15,192,3,255,255,255,255,7,224,15,192,3,240,1,248,0,7,224,15,192,3,240,1,248,0,7,224,15,192,3,240,1,248,0,7,224,15,192,3,240,1,248,0,7,224,15,192,3,251,255,255,255,71,224,15,192,3,255,255,255,255,71,224,15,192,7,255,255,255,255,71,224,15,192,7,239,193,248,31,71,224,15,192,7,239,193,248,31,71,224,15,192,7,239,193,248,31,71,224,15,192,11,239,193,248,31,71,224,15,192,11,223,193,248,31,71,224,15,192,15,223,193,248,31,71,224,15,192,15,207,193,248,31,65,80,15,192,15,207,193,248,31,64,0,15,192,31,207,193,248,31,64,0,15,192,31,143,193,251,255,64,0,15,192,63,79,193,249,255,0,0,15,192,63,15,193,248,164,0,0,15,192,190,0,1,248,0,0,85,111,192,189,0,1,248,0,0,127,255,192,28,0,1,248,0,0,63,255,64,0,0,1,248,0,0,47,249,0, + // 0x5272 割 + 114,82,32,35,24,37,2,253,0,0,252,0,0,0,0,21,0,0,252,0,0,0,0,63,0,0,252,0,0,0,0,63,170,170,255,170,168,0,0,63,255,255,255,255,253,47,128,63,255,255,255,255,253,47,128,63,252,0,0,0,253,47,128,63,252,0,252,0,253,47,128,63,252,0,252,0,253,47,128,63,254,170,254,170,253,47,128,63,15,255,255,255,208,47,128,63,15,255,255,255,208,47,128,63,0,0,252,0,0,47,128,63,0,0,252,0,0,47,128,63,15,255,255,255,192,47,128,63,15,255,255,255,192,47,128,63,5,85,254,85,64,47,128,63,0,0,252,0,0,47,128,63,0,0,252,0,0,47,128,63,255,255,255,255,252,47,128,63,255,255,255,255,252,47,128,63,170,170,170,170,168,47,128,63,0,0,0,0,0,47,128,63,6,170,170,170,128,47,128,63,15,255,255,255,208,47,128,63,15,255,255,255,208,0,0,63,15,192,0,15,208,0,0,63,15,192,0,15,208,0,0,63,15,192,0,15,208,0,0,63,15,192,0,15,208,0,0,63,15,234,170,175,208,0,0,63,15,255,255,255,208,2,170,255,15,255,255,255,208,2,255,255,15,192,0,15,208,1,255,253,11,192,0,5,64,0,255,228, + // 0x529b 力 + 155,82,32,35,24,37,2,253,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,63,255,255,255,255,255,255,254,63,255,255,255,255,255,255,253,63,255,255,255,255,255,255,253,26,170,170,191,170,170,170,253,0,0,0,191,0,0,0,253,0,0,0,191,0,0,1,253,0,0,0,255,0,0,1,252,0,0,0,254,0,0,1,252,0,0,0,254,0,0,1,252,0,0,1,253,0,0,2,252,0,0,3,252,0,0,2,252,0,0,3,252,0,0,2,252,0,0,11,248,0,0,3,252,0,0,15,240,0,0,3,248,0,0,31,224,0,0,3,248,0,0,63,208,0,0,3,248,0,0,191,192,0,0,3,244,0,1,255,0,0,0,7,244,0,7,254,0,0,0,11,240,0,15,252,0,0,0,11,240,0,63,240,0,0,0,15,240,1,255,208,0,0,0,31,224,11,255,64,0,0,0,63,208,63,253,0,0,15,255,255,192,191,240,0,0,7,255,255,64,47,128,0,0,3,255,253,0,9,0,0,0,1,85,64,0, + // 0x529f 功 + 159,82,34,34,50,37,1,253,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0,63,255,255,244,0,127,0,0,0,63,255,255,244,0,127,0,0,0,63,255,255,244,0,127,0,0,0,0,15,208,1,85,191,85,85,64,0,15,208,3,255,255,255,255,224,0,15,208,3,255,255,255,255,224,0,15,208,3,255,255,255,255,224,0,15,208,0,0,191,0,15,224,0,15,208,0,0,254,0,15,208,0,15,208,0,0,254,0,15,208,0,15,208,0,0,253,0,15,208,0,15,208,0,0,253,0,15,208,0,15,208,0,0,252,0,15,208,0,15,208,0,1,252,0,15,208,0,15,208,0,2,252,0,15,192,0,15,208,0,3,248,0,15,192,0,15,209,188,3,244,0,31,192,0,15,255,252,7,240,0,31,192,0,111,255,253,15,240,0,31,192,111,255,255,228,31,224,0,47,192,127,255,244,0,63,192,0,47,192,63,249,0,0,191,128,0,47,192,61,0,0,1,255,0,0,63,128,0,0,0,3,254,0,0,63,128,0,0,0,15,252,0,0,127,64,0,0,0,127,240,0,0,255,0,0,0,3,255,192,15,255,255,0,0,0,3,255,0,7,255,253,0,0,0,0,248,0,3,255,240,0,0,0,0,80,0,0,20,0,0, + // 0x52a0 加 + 160,82,33,36,68,37,1,252,0,5,64,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,85,85,85,64,0,15,208,0,0,255,255,255,192,0,15,208,0,0,255,255,255,192,63,255,255,255,208,255,255,255,192,63,255,255,255,208,252,0,47,192,63,255,255,255,208,252,0,47,192,21,111,213,95,208,252,0,47,192,0,31,192,15,208,252,0,47,192,0,31,192,15,192,252,0,47,192,0,31,192,15,192,252,0,47,192,0,31,192,15,192,252,0,47,192,0,31,192,15,192,252,0,47,192,0,47,192,15,192,252,0,47,192,0,47,128,15,192,252,0,47,192,0,63,128,15,192,252,0,47,192,0,63,64,31,192,252,0,47,192,0,63,64,31,192,252,0,47,192,0,63,0,31,192,252,0,47,192,0,127,0,31,192,252,0,47,192,0,191,0,31,192,252,0,47,192,0,254,0,31,192,252,0,47,192,1,253,0,47,192,252,0,47,192,2,252,0,47,192,252,0,47,192,3,252,0,47,128,252,0,47,192,7,244,0,63,128,255,255,255,192,15,240,0,63,64,255,255,255,192,31,224,0,191,64,255,255,255,192,63,192,255,255,0,253,85,127,192,191,128,191,254,0,252,0,47,192,47,0,191,248,0,252,0,47,128,8,0,21,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x52a8 动 + 168,82,33,35,59,37,2,253,0,0,0,0,0,5,64,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,47,255,255,254,0,31,192,0,0,47,255,255,254,0,31,192,0,0,47,255,255,254,0,31,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,21,111,213,85,0,0,0,0,0,127,255,255,255,192,0,0,0,0,127,255,255,255,192,0,0,0,0,127,255,255,255,192,255,255,255,255,0,47,128,47,192,255,255,255,255,0,63,128,47,128,255,255,255,255,0,63,64,47,128,0,127,64,0,0,63,64,47,128,0,127,0,0,0,63,64,47,128,0,191,0,0,0,63,0,63,128,0,253,1,160,0,127,0,63,128,0,252,3,240,0,191,0,63,128,1,252,2,244,0,190,0,63,64,3,248,1,252,0,254,0,63,64,3,240,0,253,0,253,0,63,64,7,240,0,190,1,252,0,63,64,15,208,6,255,2,252,0,63,0,31,219,255,255,67,248,0,63,0,63,255,255,255,139,244,0,127,0,127,255,254,95,207,240,0,127,0,63,254,64,15,95,208,0,191,0,62,64,0,0,63,192,0,254,0,0,0,0,0,255,128,1,254,0,0,0,0,2,255,15,255,252,0,0,0,0,3,253,7,255,248,0,0,0,0,0,180,3,255,224,0,0,0,0,0,16,0,20,0,0, + // 0x5316 化 + 22,83,35,34,50,37,1,253,0,0,15,128,63,64,0,0,0,0,0,47,192,63,64,0,0,0,0,0,63,192,63,64,0,0,0,0,0,191,64,63,64,0,0,0,0,0,255,0,63,64,0,0,0,0,3,253,0,63,64,0,0,0,0,7,248,0,63,64,0,8,0,0,15,240,0,63,64,0,62,0,0,63,224,0,63,64,0,255,64,0,191,224,0,63,64,7,255,128,1,255,224,0,63,64,63,253,0,3,255,224,0,63,65,255,240,0,15,255,224,0,63,79,255,64,0,63,255,224,0,63,255,248,0,0,255,223,224,0,63,255,192,0,0,191,79,224,0,63,253,0,0,0,62,15,224,0,63,208,0,0,0,40,15,224,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,15,224,0,63,64,0,1,0,0,15,224,0,63,64,0,2,228,0,15,224,0,63,64,0,2,248,0,15,224,0,63,64,0,2,248,0,15,224,0,63,64,0,3,244,0,15,224,0,63,64,0,3,244,0,15,224,0,63,192,0,11,240,0,15,224,0,63,255,255,255,224,0,15,224,0,31,255,255,255,192,0,15,224,0,7,255,255,255,64,0,10,144,0,0,0,0,0,0, + // 0x5347 升 + 71,83,33,35,59,37,2,253,0,0,0,0,0,5,64,0,0,0,0,0,11,192,15,208,0,0,0,0,1,191,240,15,208,0,0,0,0,47,255,240,15,208,0,0,0,27,255,255,64,15,208,0,0,6,255,255,224,0,15,208,0,0,191,255,254,0,0,15,208,0,0,63,254,253,0,0,15,208,0,0,62,64,253,0,0,15,208,0,0,0,0,253,0,0,15,208,0,0,0,0,253,0,0,15,208,0,0,0,0,253,0,0,15,208,0,0,0,0,253,0,0,15,208,0,0,0,0,253,0,0,15,208,0,0,0,0,253,0,0,15,208,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,85,85,254,85,85,95,229,85,64,0,0,253,0,0,15,208,0,0,0,1,252,0,0,15,208,0,0,0,1,252,0,0,15,208,0,0,0,2,252,0,0,15,208,0,0,0,3,248,0,0,15,208,0,0,0,7,244,0,0,15,208,0,0,0,15,240,0,0,15,208,0,0,0,31,224,0,0,15,208,0,0,0,63,208,0,0,15,208,0,0,0,255,128,0,0,15,208,0,0,2,255,0,0,0,15,208,0,0,15,253,0,0,0,15,208,0,0,127,244,0,0,0,15,208,0,0,255,208,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,24,0,0,0,0,15,208,0,0, + // 0x534a 半 + 74,83,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,104,0,7,240,0,15,64,0,1,253,0,7,240,0,31,224,0,0,255,0,7,240,0,63,192,0,0,127,128,7,240,0,127,128,0,0,63,192,7,240,0,255,0,0,0,31,224,7,240,1,254,0,0,0,15,240,7,240,3,252,0,0,0,7,244,7,240,7,244,0,0,0,3,224,7,240,7,240,0,0,0,1,0,7,240,0,64,0,0,0,0,0,7,240,0,0,0,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,5,85,85,91,249,85,85,84,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,85,85,85,91,249,85,85,85,64,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0, + // 0x534f 协 + 79,83,34,35,59,37,2,253,1,252,0,0,10,128,0,0,0,1,252,0,0,15,192,0,0,0,1,252,0,0,15,192,0,0,0,1,252,0,0,15,192,0,0,0,1,252,0,0,15,192,0,0,0,1,252,0,0,15,192,0,0,0,1,252,0,0,15,192,0,0,0,1,252,0,255,255,255,255,192,0,1,252,0,255,255,255,255,192,0,255,255,252,255,255,255,255,192,0,255,255,252,85,95,213,111,192,0,255,255,252,0,15,192,47,128,0,1,252,0,0,31,192,47,128,0,1,252,0,0,31,192,47,128,0,1,252,1,248,47,192,47,238,0,1,252,2,248,47,128,47,255,0,1,252,3,244,63,128,47,191,0,1,252,3,240,63,64,47,175,64,1,252,7,240,63,0,47,159,128,1,252,11,224,127,0,63,143,192,1,252,15,208,254,0,63,79,192,1,252,47,192,253,0,63,75,208,1,252,63,65,252,0,63,75,224,1,252,47,3,252,0,63,71,224,1,252,5,7,244,0,63,67,224,1,252,0,15,240,0,63,0,0,1,252,0,47,208,0,63,0,0,1,252,0,63,192,0,127,0,0,1,252,0,255,64,0,127,0,0,1,252,3,254,0,0,191,0,0,1,252,11,252,0,1,254,0,0,1,252,63,240,11,255,253,0,0,1,252,127,208,7,255,252,0,0,1,252,15,64,3,255,224,0,0,0,168,1,0,0,0,0,0,0, + // 0x5355 单 + 85,83,33,35,59,37,2,253,0,0,16,0,0,0,64,0,0,0,2,244,0,0,3,248,0,0,0,3,252,0,0,3,252,0,0,0,1,255,0,0,11,244,0,0,0,0,191,64,0,31,240,0,0,0,0,63,192,0,63,192,0,0,0,0,31,128,0,127,64,0,0,2,255,255,255,255,255,255,240,0,2,255,255,255,255,255,255,240,0,2,255,255,255,255,255,255,240,0,2,252,0,7,240,0,11,240,0,2,252,0,7,240,0,11,240,0,2,252,0,7,240,0,11,240,0,2,255,255,255,255,255,255,240,0,2,255,255,255,255,255,255,240,0,2,254,170,175,254,170,175,240,0,2,252,0,7,240,0,11,240,0,2,252,0,7,240,0,11,240,0,2,252,0,7,240,0,11,240,0,2,255,255,255,255,255,255,240,0,2,255,255,255,255,255,255,240,0,1,255,255,255,255,255,255,240,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,7,244,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0, + // 0x5361 卡 + 97,83,33,35,59,37,2,253,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,255,255,255,192,0,0,0,0,15,255,255,255,192,0,0,0,0,15,255,255,255,192,0,0,0,0,15,229,85,85,64,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,85,85,85,95,229,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,255,144,0,0,0,0,0,0,15,255,254,64,0,0,0,0,0,15,255,255,248,0,0,0,0,0,15,226,255,255,208,0,0,0,0,15,224,27,255,244,0,0,0,0,15,224,0,127,240,0,0,0,0,15,224,0,6,208,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,208,0,0,0,0, + // 0x5370 印 + 112,83,30,35,24,37,4,253,0,0,9,0,0,0,0,0,0,1,191,64,0,0,0,0,0,31,255,209,85,85,85,80,134,255,255,131,255,255,255,240,255,255,244,3,255,255,255,240,255,254,0,3,255,255,255,240,255,128,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,255,255,255,195,248,0,7,240,255,255,255,195,248,0,7,240,255,255,255,195,248,0,7,240,254,85,85,67,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,255,255,255,195,248,26,175,240,255,255,255,195,248,15,255,240,255,255,255,195,248,11,255,208,253,85,85,67,248,7,254,64,253,0,0,3,248,0,0,0,253,0,0,3,248,0,0,0,84,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,2,164,0,0,0, + // 0x5371 危 + 113,83,35,36,68,37,1,252,0,0,15,224,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,63,255,255,253,0,0,0,0,0,191,255,255,255,128,0,0,0,1,255,255,255,255,64,0,0,0,3,252,0,1,255,0,0,0,0,15,244,0,3,253,0,0,0,0,47,240,0,7,252,0,0,0,0,191,192,0,11,240,0,0,0,1,255,255,255,255,255,255,255,224,11,255,255,255,255,255,255,255,224,63,255,255,255,255,255,255,255,224,127,255,128,0,0,0,0,0,0,31,127,128,0,0,0,0,0,0,4,63,128,0,0,0,0,0,0,0,63,128,255,255,255,255,192,0,0,63,128,255,255,255,255,192,0,0,63,128,255,255,255,255,192,0,0,63,64,253,0,0,47,192,0,0,63,64,253,0,0,47,192,0,0,63,64,253,0,0,47,128,0,0,63,0,253,0,0,63,128,0,0,127,0,253,0,0,63,64,0,0,127,0,253,0,0,127,64,0,0,191,0,253,0,255,255,0,0,0,254,0,253,0,191,254,0,0,0,253,0,253,0,127,228,3,128,2,252,0,253,0,0,0,3,244,3,252,0,253,0,0,0,3,244,7,244,0,253,0,0,0,3,240,15,240,0,253,0,0,0,7,240,47,208,0,255,64,0,0,31,240,127,192,0,191,255,255,255,255,208,127,64,0,63,255,255,255,255,128,14,0,0,11,255,255,255,253,0,0,0,0,0,0,0,0,0,0, + // 0x5374 却 + 116,83,33,35,59,37,1,253,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,255,255,255,192,0,0,253,0,0,255,255,255,192,0,0,253,0,0,255,255,255,192,0,0,254,0,0,253,85,111,192,15,255,255,255,208,253,0,31,192,15,255,255,255,208,253,0,31,192,15,255,255,255,208,253,0,31,192,0,0,253,0,0,253,0,31,192,0,0,253,0,0,253,0,31,192,0,0,253,0,0,253,0,31,192,0,0,253,0,0,253,0,31,192,0,0,253,0,0,253,0,31,192,0,0,254,0,0,253,0,31,192,127,255,255,255,248,253,0,31,192,127,255,255,255,248,253,0,31,192,127,255,255,255,248,253,0,31,192,0,15,240,0,0,253,0,31,192,0,31,224,0,0,253,0,31,192,0,47,192,0,0,253,0,31,192,0,63,192,36,0,253,0,31,192,0,63,65,252,0,253,0,31,192,0,127,0,254,0,253,0,31,192,0,254,0,127,0,253,0,47,192,0,253,0,63,128,253,47,255,192,2,252,0,111,208,253,15,255,128,7,255,255,255,224,253,15,254,0,127,255,255,255,240,253,6,80,0,127,255,255,251,248,253,0,0,0,63,250,80,2,252,253,0,0,0,16,0,0,0,248,253,0,0,0,0,0,0,0,64,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,252,0,0,0, + // 0x5378 卸 + 120,83,33,35,59,37,1,253,0,46,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,127,0,0,0,255,255,255,192,0,190,0,0,0,255,255,255,192,0,255,255,255,240,255,255,255,192,2,255,255,255,240,254,0,31,192,3,255,255,255,240,253,0,15,192,11,240,127,0,0,253,0,15,192,31,208,63,0,0,253,0,15,192,63,192,63,0,0,253,0,15,192,15,0,63,0,0,253,0,15,192,0,0,63,0,0,253,0,15,192,63,255,255,255,252,253,0,15,192,63,255,255,255,252,253,0,15,192,63,255,255,255,252,253,0,15,192,0,0,127,0,0,253,0,15,192,0,0,63,0,0,253,0,15,192,1,80,63,0,0,253,0,15,192,3,240,63,0,0,253,0,15,192,3,240,63,255,224,253,0,15,192,3,240,63,255,224,253,0,15,192,3,240,63,255,224,253,0,15,192,3,240,63,0,0,253,0,15,192,3,240,63,0,0,253,0,15,192,3,240,63,0,0,253,0,15,192,3,240,63,0,0,253,10,175,192,3,240,63,0,20,253,15,255,192,3,240,63,111,252,253,11,255,128,3,246,255,255,252,253,7,249,0,111,255,255,255,252,253,0,0,0,191,255,255,249,0,253,0,0,0,127,255,148,0,0,253,0,0,0,122,64,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0, + // 0x538b 压 + 139,83,35,33,41,37,1,253,2,255,255,255,255,255,255,255,244,2,255,255,255,255,255,255,255,244,2,255,255,255,255,255,255,255,244,2,249,85,85,85,85,85,85,80,2,244,0,0,0,0,0,0,0,2,244,0,0,11,240,0,0,0,2,244,0,0,11,240,0,0,0,2,244,0,0,11,240,0,0,0,2,244,0,0,11,240,0,0,0,2,244,0,0,11,240,0,0,0,2,244,0,0,11,240,0,0,0,2,244,0,0,11,240,0,0,0,3,244,0,0,11,240,0,0,0,3,244,127,255,255,255,255,255,64,3,244,127,255,255,255,255,255,64,3,244,127,255,255,255,255,255,64,3,244,0,0,11,240,0,0,0,3,244,0,0,11,240,0,0,0,3,244,0,0,11,240,8,0,0,3,240,0,0,11,240,127,0,0,3,240,0,0,11,240,63,192,0,3,240,0,0,11,240,15,240,0,7,240,0,0,11,240,3,252,0,11,224,0,0,11,240,1,254,0,11,224,0,0,11,240,0,120,0,15,208,0,0,11,240,0,16,0,15,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,63,139,255,255,255,255,255,255,240,127,75,255,255,255,255,255,255,240,191,11,255,255,255,255,255,255,240,46,1,85,85,85,85,85,85,80,4,0,0,0,0,0,0,0,0, + // 0x539f 原 + 159,83,34,33,41,37,1,253,1,255,255,255,255,255,255,255,240,1,255,255,255,255,255,255,255,240,1,255,255,255,255,255,255,255,240,1,252,0,0,15,244,0,0,0,1,252,0,0,15,240,0,0,0,1,252,0,0,31,224,0,0,0,1,252,10,170,191,250,170,168,0,1,252,15,255,255,255,255,252,0,1,252,15,255,255,255,255,252,0,1,252,15,208,0,0,2,252,0,1,252,15,208,0,0,2,252,0,1,252,15,208,0,0,2,252,0,1,252,15,255,255,255,255,252,0,1,252,15,255,255,255,255,252,0,1,252,15,234,170,170,171,252,0,1,252,15,208,0,0,2,252,0,1,252,15,208,0,0,2,252,0,2,252,15,250,170,170,171,252,0,2,248,15,255,255,255,255,252,0,2,248,15,255,255,255,255,252,0,3,248,0,0,7,240,0,0,0,3,244,0,0,7,240,0,0,0,3,244,0,249,7,240,31,64,0,7,240,2,253,7,240,63,208,0,11,240,7,248,7,240,15,244,0,11,224,15,240,7,240,3,253,0,15,224,63,208,7,240,0,255,64,31,208,255,128,7,240,0,63,192,47,199,254,0,7,240,0,31,240,63,143,248,0,7,240,0,11,240,127,66,224,15,255,240,0,3,128,127,0,0,11,255,224,0,0,0,5,0,0,7,255,64,0,0,0, + // 0x53cc 双 + 204,83,34,33,41,37,1,252,47,255,255,253,63,255,255,255,128,47,255,255,254,63,255,255,255,192,47,255,255,254,63,255,255,255,192,5,85,85,254,31,213,85,127,128,0,0,0,253,15,208,0,63,64,0,0,0,253,15,224,0,63,64,0,0,1,252,11,224,0,127,0,3,128,2,252,7,240,0,191,0,15,208,2,248,7,240,0,254,0,15,244,3,248,3,244,0,253,0,3,252,3,244,3,244,1,252,0,1,255,11,240,2,252,2,252,0,0,191,143,240,1,252,3,248,0,0,63,239,224,0,253,7,244,0,0,15,255,208,0,254,11,240,0,0,7,255,192,0,127,15,224,0,0,2,255,128,0,63,111,192,0,0,0,255,64,0,63,255,192,0,0,0,255,192,0,31,255,64,0,0,1,255,224,0,15,255,0,0,0,3,255,244,0,11,253,0,0,0,7,255,252,0,11,252,0,0,0,15,242,253,0,31,254,0,0,0,47,224,255,0,127,255,0,0,0,127,192,191,65,255,255,192,0,0,255,64,61,7,254,47,240,0,3,254,0,20,47,252,15,252,0,15,252,0,0,255,240,3,255,64,63,240,0,11,255,192,1,255,224,127,208,0,11,254,0,0,127,240,31,64,0,3,244,0,0,15,192,9,0,0,0,128,0,0,2,64,0,0,0,0,0,0,0,0,0, + // 0x53cd 反 + 205,83,33,33,41,37,2,253,0,85,85,85,85,85,85,84,0,0,255,255,255,255,255,255,253,0,0,255,255,255,255,255,255,253,0,0,255,255,255,255,255,255,253,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,192,0,0,254,111,229,85,85,127,192,0,0,254,15,240,0,0,191,64,0,0,253,11,244,0,0,255,0,0,0,253,3,252,0,2,254,0,0,0,253,2,253,0,3,252,0,0,0,252,0,255,0,11,248,0,0,1,252,0,191,128,31,240,0,0,1,252,0,63,208,63,208,0,0,2,252,0,31,240,255,128,0,0,3,248,0,11,255,255,0,0,0,3,244,0,3,255,252,0,0,0,7,240,0,0,255,244,0,0,0,11,240,0,2,255,248,0,0,0,15,224,0,31,255,255,64,0,0,31,208,0,191,254,255,244,0,0,63,192,47,255,208,127,255,144,0,127,71,255,254,0,11,255,255,64,255,7,255,240,0,1,255,255,64,61,2,254,0,0,0,11,254,0,8,0,208,0,0,0,0,108,0, + // 0x53d6 取 + 214,83,35,33,41,37,1,253,63,255,255,255,252,0,0,0,0,63,255,255,255,252,0,0,0,0,63,255,255,255,252,0,0,0,0,2,252,0,63,143,255,255,255,208,1,252,0,63,143,255,255,255,208,1,252,0,63,143,255,255,255,208,1,252,0,63,133,165,85,111,192,1,252,0,63,135,240,0,31,192,1,255,255,255,135,240,0,47,192,1,255,255,255,131,244,0,63,128,1,255,255,255,131,248,0,63,64,1,252,0,63,130,252,0,127,0,1,252,0,63,129,252,0,191,0,1,252,0,63,128,253,0,254,0,1,252,0,63,128,191,0,253,0,1,252,0,63,128,127,2,252,0,1,255,255,255,128,63,67,252,0,1,255,255,255,128,47,199,244,0,1,255,255,255,128,31,223,240,0,1,252,0,63,128,15,255,224,0,1,252,0,63,128,7,255,192,0,1,252,0,63,128,3,255,128,0,1,252,0,63,128,2,255,0,0,1,252,26,255,128,2,255,64,0,6,255,255,255,128,11,255,192,0,255,255,255,255,128,31,255,240,0,191,255,254,127,128,127,239,252,0,127,233,0,63,129,255,131,255,0,16,0,0,63,139,254,0,255,208,0,0,0,63,255,248,0,127,248,0,0,0,63,191,208,0,15,244,0,0,0,63,143,0,0,2,208,0,0,0,47,64,0,0,0,64, + // 0x53d8 变 + 216,83,33,36,68,37,2,252,0,0,0,11,208,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,3,252,0,0,0,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,0,0,11,240,3,244,0,0,0,0,8,11,240,3,244,16,0,0,0,63,139,240,3,244,188,0,0,0,127,75,240,3,245,255,0,0,0,255,11,240,3,244,127,192,0,2,252,11,240,3,244,31,240,0,7,248,11,240,3,244,7,252,0,31,240,11,240,3,244,2,254,0,31,192,11,240,3,244,0,190,0,3,0,11,240,3,244,0,52,0,0,0,11,240,3,244,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,255,255,253,0,0,3,255,255,255,255,255,255,128,0,3,255,255,255,255,255,255,0,0,0,15,240,0,0,3,253,0,0,0,3,252,0,0,15,248,0,0,0,0,255,0,0,63,224,0,0,0,0,127,224,1,255,128,0,0,0,0,15,253,15,253,0,0,0,0,0,2,255,255,244,0,0,0,0,0,0,191,255,128,0,0,0,0,0,6,255,255,228,0,0,0,0,1,255,255,255,255,144,0,0,26,255,255,249,31,255,255,233,0,255,255,254,64,0,191,255,255,192,63,255,144,0,0,1,191,255,0,46,64,0,0,0,0,0,110,0,0,0,0,0,0,0,0,0,0, + // 0x53f0 台 + 240,83,33,35,59,37,2,253,0,0,1,228,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,31,240,0,6,0,0,0,0,0,63,208,0,47,192,0,0,0,0,127,128,0,63,244,0,0,0,0,255,0,0,11,253,0,0,0,2,253,0,0,2,255,64,0,0,3,252,0,0,0,191,208,0,0,11,249,106,171,255,255,240,0,127,255,255,255,255,255,255,252,0,127,255,255,255,255,255,255,255,0,127,255,255,255,250,169,85,255,128,37,84,0,0,0,0,0,127,192,0,0,0,0,0,0,0,47,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,21,85,85,85,85,85,0,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,0,0,0,0,127,64,0,0,127,0,0,0,0,127,64,0,0,127,0,0,0,0,127,64,0,0,127,0,0,0,0,127,64,0,0,127,0,0,0,0,127,64,0,0,127,0,0,0,0,127,64,0,0,127,0,0,0,0,127,64,0,0,127,0,0,0,0,127,64,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,85,85,85,85,191,64,0,0,127,0,0,0,0,127,64,0, + // 0x5403 吃 + 3,84,33,35,59,37,3,253,0,0,0,0,164,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,253,0,0,0,0,85,85,80,2,252,0,0,0,0,255,255,240,3,248,0,0,0,0,255,255,240,11,244,0,0,0,0,255,255,240,15,255,255,255,255,0,252,3,240,31,255,255,255,255,0,252,3,240,63,255,255,255,255,0,252,3,240,191,64,0,0,0,0,252,3,241,255,0,0,0,0,0,252,3,243,253,0,0,0,0,0,252,3,255,248,0,0,0,0,0,252,3,243,240,0,0,0,0,0,252,3,240,139,255,255,255,208,0,252,3,240,11,255,255,255,240,0,252,3,240,11,255,255,255,128,0,252,3,240,0,0,11,253,0,0,252,3,240,0,0,63,244,0,0,252,3,240,0,0,255,192,0,0,252,3,240,0,3,254,0,0,0,252,3,240,0,31,248,0,0,0,255,255,240,0,127,208,0,0,0,255,255,240,1,255,64,0,0,0,255,255,240,7,253,0,0,0,0,253,85,80,15,240,0,0,20,0,252,0,0,63,192,0,0,31,128,252,0,0,127,64,0,0,47,128,168,0,0,255,0,0,0,47,128,0,0,0,254,0,0,0,63,64,0,0,0,255,64,0,0,127,0,0,0,0,255,255,255,255,255,0,0,0,0,63,255,255,255,253,0,0,0,0,11,255,255,255,248,0,0,0,0,0,21,85,85,0,0, + // 0x5408 合 + 8,84,35,35,59,37,1,253,0,0,0,2,253,0,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,31,255,192,0,0,0,0,0,0,63,255,240,0,0,0,0,0,0,255,143,248,0,0,0,0,0,3,255,3,255,0,0,0,0,0,15,252,0,255,192,0,0,0,0,63,240,0,63,240,0,0,0,1,255,192,0,15,253,0,0,0,7,255,0,0,3,255,128,0,0,47,252,0,0,0,191,244,0,1,255,224,0,0,0,31,254,0,15,255,255,255,255,255,255,255,224,127,254,191,255,255,255,248,191,248,63,244,191,255,255,255,248,31,240,31,64,0,0,0,0,0,3,208,4,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,192,0,0,15,255,255,255,255,255,192,0,0,15,255,255,255,255,255,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,255,255,255,255,255,192,0,0,15,255,255,255,255,255,192,0,0,15,255,255,255,255,255,192,0,0,15,224,0,0,0,47,192,0,0,11,208,0,0,0,31,192,0, + // 0x540d 名 + 13,84,32,35,24,37,1,253,0,0,0,185,0,0,0,0,0,0,1,255,0,0,0,0,0,0,3,253,0,0,0,0,0,0,11,252,0,0,0,0,0,0,31,255,255,255,244,0,0,0,127,255,255,255,252,0,0,0,255,255,255,255,244,0,0,7,254,0,0,15,240,0,0,31,248,0,0,47,208,0,0,191,240,0,0,63,192,0,3,255,252,0,0,255,64,0,31,255,255,64,1,254,0,0,127,244,255,224,7,252,0,0,31,192,47,248,15,244,0,0,10,0,11,254,63,224,0,0,0,0,2,255,255,192,0,0,0,0,0,191,255,0,0,0,0,0,0,63,252,0,0,0,0,0,0,191,244,0,0,0,0,0,3,255,255,255,255,255,0,0,47,255,255,255,255,255,0,1,255,255,255,255,255,255,0,31,255,244,0,0,0,191,6,255,255,244,0,0,0,191,127,255,211,244,0,0,0,191,63,253,3,244,0,0,0,191,31,128,3,244,0,0,0,191,4,0,3,244,0,0,0,191,0,0,3,244,0,0,0,191,0,0,3,244,0,0,0,191,0,0,3,255,255,255,255,255,0,0,3,255,255,255,255,255,0,0,3,255,255,255,255,255,0,0,3,244,0,0,0,191,0,0,2,160,0,0,0,190, + // 0x540e 后 + 14,84,35,35,59,37,1,253,0,0,0,0,0,0,1,128,0,0,0,0,0,0,6,191,240,0,0,0,0,1,107,255,255,252,0,0,186,175,255,255,255,255,228,0,0,191,255,255,255,255,164,0,0,0,191,255,255,233,64,0,0,0,0,191,165,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,85,85,85,85,85,85,80,0,191,255,255,255,255,255,255,248,0,191,255,255,255,255,255,255,248,0,191,255,255,255,255,255,255,248,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,254,7,255,255,255,255,253,0,0,254,7,255,255,255,255,253,0,0,253,7,255,255,255,255,253,0,0,253,7,240,0,0,0,253,0,1,252,7,240,0,0,0,253,0,2,252,7,240,0,0,0,253,0,3,252,7,240,0,0,0,253,0,3,248,7,240,0,0,0,253,0,7,244,7,240,0,0,0,253,0,11,240,7,240,0,0,0,253,0,15,224,7,240,0,0,0,253,0,47,208,7,255,255,255,255,253,0,63,192,7,255,255,255,255,253,0,191,64,7,255,255,255,255,253,0,31,0,7,240,0,0,0,253,0,8,0,7,240,0,0,0,253,0, + // 0x5411 向 + 17,84,31,35,24,37,3,253,0,0,0,122,64,0,0,0,0,0,0,191,192,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,0,0,0,0,0,0,2,254,0,0,0,0,0,0,3,252,0,0,0,0,21,85,87,253,85,85,85,80,127,255,255,255,255,255,255,248,127,255,255,255,255,255,255,248,127,255,255,255,255,255,255,248,127,0,0,0,0,0,3,248,127,0,0,0,0,0,3,248,127,0,0,0,0,0,3,248,127,0,0,0,0,0,3,248,127,0,191,255,255,248,3,248,127,0,191,255,255,248,3,248,127,0,191,255,255,248,3,248,127,0,189,0,2,248,3,248,127,0,189,0,2,248,3,248,127,0,189,0,2,248,3,248,127,0,189,0,2,248,3,248,127,0,189,0,2,248,3,248,127,0,189,0,2,248,3,248,127,0,189,0,2,248,3,248,127,0,191,255,255,248,3,248,127,0,191,255,255,248,3,248,127,0,191,255,255,248,3,248,127,0,189,0,0,0,3,248,127,0,189,0,0,0,3,248,127,0,189,0,0,0,3,248,127,0,0,0,0,0,3,248,127,0,0,0,0,21,91,244,127,0,0,0,0,63,255,244,127,0,0,0,0,63,255,240,127,0,0,0,0,31,254,64, + // 0x5426 否 + 38,84,34,33,41,37,1,253,31,255,255,255,255,255,255,255,208,31,255,255,255,255,255,255,255,208,31,255,255,255,255,255,255,255,208,0,0,0,0,191,224,0,0,0,0,0,0,1,255,128,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,255,252,15,128,0,0,0,0,7,255,252,63,248,0,0,0,0,127,254,252,47,255,64,0,0,2,255,241,252,2,255,240,0,0,47,255,65,252,0,127,254,0,7,255,252,1,252,0,7,255,192,127,255,208,1,252,0,0,191,240,63,254,0,1,252,0,0,31,224,15,224,0,1,252,0,0,3,192,5,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,240,0,0,47,255,255,255,255,255,240,0,0,47,255,255,255,255,255,240,0,0,47,192,0,0,0,15,240,0,0,47,192,0,0,0,15,240,0,0,47,192,0,0,0,15,240,0,0,47,192,0,0,0,15,240,0,0,47,192,0,0,0,15,240,0,0,47,192,0,0,0,15,240,0,0,47,255,255,255,255,255,240,0,0,47,255,255,255,255,255,240,0,0,47,255,255,255,255,255,240,0,0,47,192,0,0,0,15,240,0,0,31,192,0,0,0,10,160,0, + // 0x542f 启 + 47,84,31,35,24,37,2,253,0,0,0,0,0,0,88,0,0,0,0,0,1,175,255,0,0,0,5,107,255,255,255,192,2,175,255,255,255,255,228,0,3,255,255,255,254,144,0,0,3,255,250,148,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,255,255,255,255,255,255,244,3,255,255,255,255,255,255,244,3,255,255,255,255,255,255,244,3,248,0,0,0,0,3,244,3,248,0,0,0,0,3,244,3,248,0,0,0,0,3,244,3,248,0,0,0,0,3,244,3,255,255,255,255,255,255,244,3,255,255,255,255,255,255,244,3,255,255,255,255,255,255,244,3,248,0,0,0,0,0,0,3,244,0,0,0,0,0,0,3,244,0,0,0,0,0,0,3,244,0,0,0,0,0,0,7,240,255,255,255,255,255,248,7,240,255,255,255,255,255,248,11,240,255,255,255,255,255,248,15,224,253,0,0,0,2,248,15,208,253,0,0,0,2,248,31,192,253,0,0,0,2,248,63,192,253,0,0,0,2,248,63,128,253,0,0,0,2,248,191,0,255,255,255,255,255,248,255,0,255,255,255,255,255,248,189,0,255,255,255,255,255,248,40,0,253,0,0,0,2,248,0,0,168,0,0,0,1,164, + // 0x544a 告 + 74,84,33,36,68,37,2,252,0,2,64,1,252,0,0,0,0,0,11,240,1,252,0,0,0,0,0,15,224,1,252,0,0,0,0,0,31,208,1,252,0,0,0,0,0,63,192,1,252,0,0,0,0,0,127,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,2,255,255,255,255,255,255,240,0,7,252,0,2,253,0,0,0,0,15,240,0,1,252,0,0,0,0,63,224,0,1,252,0,0,0,0,63,192,0,1,252,0,0,0,0,7,0,0,1,252,0,0,0,0,1,0,0,2,253,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,128,0,0,63,255,255,255,255,255,128,0,0,63,255,255,255,255,255,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,63,255,255,255,255,255,128,0,0,63,255,255,255,255,255,128,0,0,63,255,255,255,255,255,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,0,0,0,0,0,0,0,0, + // 0x5468 周 + 104,84,32,34,16,37,1,252,0,191,255,255,255,255,255,254,0,191,255,255,255,255,255,254,0,191,255,255,255,255,255,254,0,191,0,0,85,0,0,254,0,190,0,0,253,0,0,190,0,190,0,0,253,0,0,190,0,190,0,0,253,0,0,190,0,190,15,255,255,255,224,190,0,190,15,255,255,255,224,190,0,190,10,170,255,170,144,190,0,190,0,0,253,0,0,190,0,190,0,0,253,0,0,190,0,190,0,0,253,0,0,190,0,190,63,255,255,255,248,190,0,254,63,255,255,255,248,190,0,254,47,255,255,255,244,190,0,254,0,0,0,0,0,190,0,254,0,0,0,0,0,190,0,253,2,170,170,170,128,190,0,253,7,255,255,255,192,190,0,252,7,255,255,255,192,190,1,252,7,240,0,31,192,190,2,252,7,240,0,31,192,190,3,248,7,240,0,31,192,190,3,244,7,240,0,31,192,190,7,240,7,250,170,191,192,190,11,240,7,255,255,255,192,190,15,224,7,255,255,255,192,190,31,208,7,240,0,0,0,190,63,192,7,240,0,0,0,254,127,128,2,144,0,7,255,254,63,0,0,0,0,3,255,252,13,0,0,0,0,2,255,224,0,0,0,0,0,0,0,0, + // 0x547d 命 + 125,84,35,36,68,37,1,252,0,0,0,3,253,0,0,0,0,0,0,0,11,255,64,0,0,0,0,0,0,47,255,208,0,0,0,0,0,0,191,239,244,0,0,0,0,0,2,255,75,254,0,0,0,0,0,11,254,2,255,128,0,0,0,0,47,248,0,191,240,0,0,0,0,255,208,0,47,253,0,0,0,11,255,64,0,7,255,192,0,0,63,253,0,0,1,255,248,0,2,255,223,255,255,255,223,255,128,47,255,15,255,255,255,194,255,248,255,248,15,255,255,255,192,127,252,127,192,0,0,0,0,0,11,240,45,0,0,0,0,0,0,0,208,0,0,0,0,0,0,0,0,0,0,255,255,254,11,255,255,253,0,0,255,255,254,11,255,255,253,0,0,255,255,254,11,255,255,253,0,0,252,0,126,11,224,0,253,0,0,252,0,126,11,224,0,253,0,0,252,0,126,11,224,0,253,0,0,252,0,126,11,224,0,253,0,0,252,0,126,11,224,0,253,0,0,252,0,126,11,224,0,253,0,0,252,0,126,11,224,0,253,0,0,255,255,254,11,224,0,253,0,0,255,255,254,11,224,0,253,0,0,255,255,254,11,224,255,253,0,0,252,0,0,11,224,255,252,0,0,252,0,0,11,224,191,224,0,0,252,0,0,11,224,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x548c 和 + 140,84,33,35,59,37,1,253,0,0,0,4,0,0,0,0,0,0,0,1,190,0,0,0,0,0,0,1,191,255,128,0,0,0,0,22,255,255,255,129,85,85,85,0,47,255,255,144,11,255,255,255,64,15,255,253,0,11,255,255,255,64,4,0,253,0,11,255,255,255,64,0,0,253,0,11,224,0,63,64,0,0,253,0,11,224,0,63,64,0,0,253,0,11,224,0,63,64,0,0,253,0,11,224,0,63,64,63,255,255,255,203,224,0,63,64,63,255,255,255,203,224,0,63,64,63,255,255,255,203,224,0,63,64,0,7,253,0,11,224,0,63,64,0,11,254,0,11,224,0,63,64,0,15,255,128,11,224,0,63,64,0,31,255,208,11,224,0,63,64,0,63,255,244,11,224,0,63,64,0,127,255,252,11,224,0,63,64,0,253,253,255,11,224,0,63,64,1,252,253,63,139,224,0,63,64,3,244,253,31,203,224,0,63,64,11,240,253,15,75,224,0,63,64,31,208,253,2,11,224,0,63,64,63,192,253,0,11,224,0,63,64,191,64,253,0,11,245,85,127,64,126,0,253,0,11,255,255,255,64,60,0,253,0,11,255,255,255,64,0,0,253,0,11,255,255,255,64,0,0,253,0,11,224,0,63,64,0,0,253,0,11,224,0,63,64,0,0,253,0,11,224,0,63,64,0,0,253,0,0,0,0,0,0,0,0,252,0,0,0,0,0,0, + // 0x54cd 响 + 205,84,32,36,32,37,3,252,0,0,0,0,2,232,0,0,0,0,0,0,3,253,0,0,0,0,0,0,3,252,0,0,0,0,0,0,7,244,0,0,255,255,208,0,11,240,0,0,255,255,208,0,15,224,0,0,255,255,209,255,255,255,255,254,252,11,209,255,255,255,255,254,252,11,209,255,255,255,255,254,252,11,209,252,0,0,0,254,252,11,209,252,0,0,0,254,252,11,209,252,0,0,0,254,252,11,209,252,0,0,0,254,252,11,209,252,31,255,224,254,252,11,209,252,31,255,224,254,252,11,209,252,31,87,224,254,252,11,209,252,31,2,224,254,252,11,209,252,31,2,224,254,252,11,209,252,31,2,224,254,252,11,209,252,31,2,224,254,252,11,209,252,31,2,224,254,252,11,209,252,31,2,224,254,255,255,209,252,31,2,224,254,255,255,209,252,31,87,224,254,255,255,209,252,31,255,224,254,252,0,1,252,31,255,224,254,252,0,1,252,31,0,0,254,252,0,1,252,31,0,0,254,164,0,1,252,0,0,0,254,0,0,1,252,0,0,0,254,0,0,1,252,0,0,0,254,0,0,1,252,0,0,0,254,0,0,1,252,0,0,191,253,0,0,1,252,0,0,63,252,0,0,1,252,0,0,63,224,0,0,0,0,0,0,0,0, + // 0x55b7 喷 + 183,85,34,35,59,37,2,253,0,0,0,0,0,169,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,191,255,255,255,254,0,127,255,208,255,255,255,255,254,0,127,255,208,255,255,255,255,254,0,127,255,208,0,0,253,0,0,0,125,7,208,0,0,253,0,0,0,125,7,208,7,240,189,15,192,0,125,7,208,7,240,0,15,192,0,125,7,215,255,255,255,255,255,192,125,7,215,255,255,255,255,255,192,125,7,215,255,255,255,255,255,192,125,7,208,7,240,0,15,192,0,125,7,208,7,240,0,15,192,0,125,7,208,0,0,0,0,0,0,125,7,208,63,255,255,255,248,0,125,7,208,63,255,255,255,248,0,125,7,208,63,255,255,255,248,0,125,7,208,63,0,0,1,248,0,125,7,208,63,0,0,1,248,0,125,7,208,63,0,189,1,248,0,127,255,208,63,0,253,1,248,0,127,255,208,63,0,253,1,248,0,127,255,208,63,0,253,1,248,0,125,0,0,63,0,253,1,248,0,125,0,0,63,0,252,1,248,0,125,0,0,63,1,252,1,248,0,40,0,0,21,7,248,164,0,0,0,0,0,0,47,242,255,64,0,0,0,0,2,255,192,191,244,0,0,0,1,191,254,0,11,255,64,0,0,47,255,224,0,0,191,224,0,0,15,253,0,0,0,31,192,0,0,2,64,0,0,0,1,128, + // 0x5634 嘴 + 52,86,34,36,68,37,2,252,0,0,0,1,244,3,224,0,0,0,0,0,1,244,3,224,0,0,0,0,1,145,244,3,224,24,0,127,255,210,241,244,3,225,255,0,127,255,210,241,255,243,255,253,0,127,255,210,241,255,243,255,208,0,125,7,210,241,249,83,253,0,0,125,7,210,241,244,3,224,0,0,125,7,210,241,244,3,224,3,64,125,7,210,241,245,103,224,3,208,125,7,210,251,255,247,240,7,208,125,7,239,255,255,243,255,255,192,125,7,239,255,254,2,255,255,128,125,7,223,149,252,0,90,165,0,125,7,208,3,255,255,224,0,0,125,7,208,11,255,255,244,0,0,125,7,208,47,213,95,224,0,0,125,7,208,191,64,47,192,0,0,125,7,211,255,255,255,255,253,0,125,7,255,255,255,255,255,253,0,125,7,255,255,85,190,85,253,0,127,255,219,127,0,125,0,189,0,127,255,208,63,0,125,0,189,0,127,255,208,63,255,255,255,253,0,125,0,0,63,255,255,255,253,0,125,0,0,63,0,125,0,189,0,125,0,0,127,0,125,0,189,0,0,0,0,191,255,255,255,253,0,0,0,0,255,255,255,255,253,0,0,0,1,253,85,85,85,253,0,0,0,3,248,0,0,0,189,0,0,0,15,240,0,0,0,189,0,0,0,63,224,0,0,150,253,0,0,0,127,128,0,0,255,252,0,0,0,14,0,0,0,191,228,0,0,0,0,0,0,0,0,0,0, + // 0x5668 器 + 104,86,35,34,50,37,1,252,2,255,255,254,2,255,255,254,0,2,255,255,254,2,255,255,254,0,2,255,255,254,2,255,255,254,0,2,248,0,190,2,248,0,190,0,2,248,0,190,2,248,0,190,0,2,248,0,190,2,248,0,190,0,2,248,0,190,2,248,0,190,0,2,254,170,254,2,254,170,254,0,2,255,255,254,2,255,255,254,0,2,255,255,255,226,255,255,254,0,0,0,0,7,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,47,224,0,0,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,0,0,47,244,0,127,192,0,0,0,1,255,224,0,47,244,0,0,0,11,255,128,0,11,255,0,0,0,191,253,0,0,1,255,224,0,11,255,240,0,0,0,127,255,64,191,255,255,255,3,255,255,255,248,63,255,255,255,3,255,255,255,244,30,255,255,255,3,255,255,255,224,0,252,0,127,3,240,0,252,0,0,252,0,127,3,240,0,252,0,0,252,0,127,3,240,0,252,0,0,252,0,127,3,240,0,252,0,0,252,0,127,3,240,0,252,0,0,255,255,255,3,255,255,252,0,0,255,255,255,3,255,255,252,0,0,255,255,255,3,255,255,252,0,0,252,0,127,3,240,0,252,0,0,0,0,0,0,0,0,0,0, + // 0x5674 噴 + 116,86,33,36,68,37,3,252,0,0,0,0,1,248,0,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,2,248,0,0,0,0,0,2,255,255,255,255,252,0,255,255,194,255,255,255,255,252,0,255,255,193,85,86,253,85,84,0,255,255,192,10,130,248,42,0,0,248,15,192,15,194,248,63,0,0,248,11,192,15,192,0,63,0,0,248,11,223,255,255,255,255,255,128,248,11,223,255,255,255,255,255,128,248,11,213,95,213,85,127,85,0,248,11,192,15,192,0,63,0,0,248,11,192,5,64,0,21,0,0,248,11,192,255,255,255,255,240,0,248,11,192,255,255,255,255,240,0,248,11,192,252,0,0,3,240,0,248,11,192,252,0,0,3,240,0,248,11,192,255,255,255,255,240,0,248,11,192,255,255,255,255,240,0,248,11,192,252,0,0,3,240,0,255,255,192,252,0,0,3,240,0,255,255,192,252,0,0,3,240,0,255,255,192,255,255,255,255,240,0,248,0,0,255,255,255,255,240,0,248,0,0,252,0,0,3,240,0,248,0,0,252,0,0,3,240,0,0,0,0,255,255,255,255,240,0,0,0,0,255,255,255,255,240,0,0,0,0,3,224,1,244,0,0,0,0,0,47,248,3,255,64,0,0,0,11,255,208,0,191,244,0,0,1,255,253,0,0,11,254,0,0,0,191,208,0,0,1,255,64,0,0,45,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0, + // 0x56de 回 + 222,86,31,34,16,37,3,253,85,85,85,85,85,85,85,84,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,255,255,255,248,2,252,254,0,255,255,255,248,2,252,254,0,255,255,255,248,2,252,254,0,253,0,3,248,2,252,254,0,253,0,3,248,2,252,254,0,253,0,3,248,2,252,254,0,253,0,3,248,2,252,254,0,253,0,3,248,2,252,254,0,253,0,3,248,2,252,254,0,253,0,3,248,2,252,254,0,253,0,3,248,2,252,254,0,255,255,255,248,2,252,254,0,255,255,255,248,2,252,254,0,255,255,255,248,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,3,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252, + // 0x56e0 因 + 224,86,31,34,16,37,3,253,85,85,85,85,85,85,85,84,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,253,0,0,0,0,0,2,252,253,0,0,10,128,0,2,252,253,0,0,31,192,0,2,252,253,0,0,31,192,0,2,252,253,0,0,31,192,0,2,252,253,0,0,31,192,0,2,252,253,0,0,31,128,0,2,252,253,47,255,255,255,255,226,252,253,47,255,255,255,255,226,252,253,47,255,255,255,255,226,252,253,0,0,63,224,0,2,252,253,0,0,63,240,0,2,252,253,0,0,191,244,0,2,252,253,0,0,255,248,0,2,252,253,0,1,253,252,0,2,252,253,0,3,252,191,0,2,252,253,0,7,244,63,128,2,252,253,0,31,240,47,208,2,252,253,0,127,192,15,248,2,252,253,2,255,64,7,255,66,252,253,47,253,0,1,255,242,252,253,47,244,0,0,127,210,252,253,15,128,0,0,11,130,252,253,0,0,0,0,0,2,252,253,0,0,0,0,0,2,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,254,85,85,85,85,85,86,252,253,0,0,0,0,0,2,252, + // 0x56fa 固 + 250,86,31,33,8,37,3,253,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,254,0,0,0,0,0,2,252,254,0,0,10,128,0,2,252,254,0,0,15,192,0,2,252,254,0,0,15,192,0,2,252,254,0,0,15,192,0,2,252,254,15,255,255,255,255,210,252,254,31,255,255,255,255,226,252,254,31,255,255,255,255,226,252,254,0,0,15,192,0,2,252,254,0,0,15,192,0,2,252,254,0,0,15,192,0,2,252,254,0,0,15,192,0,2,252,254,0,255,255,255,253,2,252,254,0,255,255,255,253,2,252,254,0,254,170,170,253,2,252,254,0,252,0,0,189,2,252,254,0,252,0,0,189,2,252,254,0,252,0,0,189,2,252,254,0,252,0,0,189,2,252,254,0,254,170,170,253,2,252,254,0,255,255,255,253,2,252,254,0,255,255,255,253,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,254,0,0,0,0,0,3,252,254,0,0,0,0,0,2,252, + // 0x56fe 图 + 254,86,31,33,8,37,3,253,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,253,0,0,64,0,0,2,252,253,0,2,248,0,0,2,252,253,0,7,244,0,0,2,252,253,0,31,250,170,169,2,252,253,0,127,255,255,255,130,252,253,1,255,255,255,255,2,252,253,11,255,0,1,253,2,252,253,63,255,192,11,244,2,252,253,63,75,248,127,208,2,252,253,13,1,255,255,0,2,252,253,0,0,191,252,0,2,252,253,0,11,255,255,144,2,252,253,6,255,253,191,254,66,252,254,255,255,208,11,255,254,252,253,191,249,144,0,111,242,252,253,62,66,255,64,0,146,252,253,0,2,255,253,0,2,252,253,0,0,6,255,128,2,252,253,0,0,0,31,0,2,252,253,0,255,164,0,0,2,252,253,2,255,255,228,0,2,252,253,0,91,255,255,228,2,252,253,0,0,6,255,252,2,252,253,0,0,0,6,248,2,252,253,0,0,0,0,0,2,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,253,0,0,0,0,0,2,252,169,0,0,0,0,0,1,168, + // 0x5728 在 + 40,87,34,35,59,37,1,253,0,0,0,57,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,5,85,86,253,85,85,85,85,64,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,0,0,31,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,64,0,63,64,0,0,0,0,255,0,0,63,64,0,0,0,2,253,0,0,63,64,0,0,0,7,252,0,0,63,64,0,0,0,15,240,0,0,63,64,0,0,0,63,224,0,0,63,64,0,0,0,255,208,0,0,127,64,0,0,3,255,208,63,255,255,255,255,0,15,255,208,63,255,255,255,255,0,127,255,208,63,255,255,255,255,0,127,223,208,0,0,63,64,0,0,47,15,208,0,0,63,64,0,0,8,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,127,64,0,0,0,15,209,255,255,255,255,255,224,0,15,209,255,255,255,255,255,224,0,15,209,255,255,255,255,255,224,0,15,208,0,0,0,0,0,0, + // 0x574f 坏 + 79,87,35,34,50,37,1,253,0,47,64,0,0,0,0,0,0,0,47,64,0,0,0,0,0,0,0,47,64,255,255,255,255,255,244,0,47,64,255,255,255,255,255,244,0,47,64,255,255,255,255,255,244,0,47,64,0,0,7,248,0,0,0,47,64,0,0,15,240,0,0,0,47,64,0,0,47,208,0,0,63,255,255,0,0,127,192,0,0,63,255,255,0,0,255,64,0,0,63,255,255,0,3,255,72,0,0,21,127,149,0,15,255,191,0,0,0,47,64,0,63,255,255,208,0,0,47,64,0,255,255,111,244,0,0,47,64,3,255,63,71,254,0,0,47,64,47,252,63,65,255,128,0,47,65,255,240,63,64,63,224,0,47,67,255,192,63,64,15,248,0,47,66,253,0,63,64,3,244,0,47,64,176,0,63,64,0,208,0,47,64,64,0,63,64,0,0,0,47,159,128,0,63,64,0,0,0,47,255,192,0,63,64,0,0,1,191,255,192,0,63,64,0,0,111,255,253,0,0,63,64,0,0,127,255,128,0,0,63,64,0,0,63,244,0,0,0,63,64,0,0,62,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0, + // 0x5757 块 + 87,87,34,35,59,37,1,253,0,21,0,0,0,168,0,0,0,0,63,64,0,0,253,0,0,0,0,63,64,0,0,253,0,0,0,0,63,64,0,0,253,0,0,0,0,63,64,0,0,253,0,0,0,0,63,64,0,0,253,0,0,0,0,63,64,15,255,255,255,254,0,0,63,64,15,255,255,255,254,0,0,63,64,15,255,255,255,254,0,63,255,255,64,0,253,0,254,0,63,255,255,64,0,253,0,190,0,63,255,255,64,0,253,0,190,0,21,127,149,0,0,253,0,190,0,0,63,64,0,0,253,0,190,0,0,63,64,0,0,253,0,190,0,0,63,64,0,0,253,0,190,0,0,63,64,0,0,252,0,190,0,0,63,64,63,255,255,255,255,240,0,63,64,63,255,255,255,255,240,0,63,64,63,255,255,255,255,240,0,63,66,85,87,255,213,85,80,0,63,191,64,3,255,224,0,0,0,63,255,192,7,251,240,0,0,0,191,255,64,11,243,244,0,0,31,255,244,0,15,226,252,0,0,127,255,64,0,63,208,254,0,0,63,244,0,0,127,128,191,64,0,47,64,0,0,255,0,63,192,0,4,0,0,3,254,0,31,240,0,0,0,0,31,252,0,15,252,0,0,0,0,191,240,0,3,255,64,0,0,7,255,192,0,0,255,240,0,0,15,254,0,0,0,127,240,0,0,7,244,0,0,0,15,192,0,0,2,128,0,0,0,1,128, + // 0x578b 型 + 139,87,33,34,50,37,2,254,0,0,0,0,0,0,0,84,0,0,0,0,0,0,0,0,252,0,31,255,255,255,244,63,0,252,0,31,255,255,255,244,63,0,252,0,31,255,255,255,244,63,0,252,0,0,63,0,253,0,63,0,252,0,0,63,0,253,0,63,0,252,0,0,63,0,253,0,63,0,252,0,0,63,0,253,0,63,0,252,0,191,255,255,255,252,63,0,252,0,191,255,255,255,252,63,0,252,0,191,255,255,255,252,63,0,252,0,0,191,0,253,0,63,0,252,0,0,254,0,253,0,63,0,252,0,0,253,0,253,0,63,0,252,0,3,252,0,253,0,0,0,252,0,11,244,0,253,0,0,0,252,0,47,240,0,253,0,0,1,252,0,191,192,0,253,0,3,255,252,0,63,0,0,254,160,1,255,248,0,8,0,0,3,244,0,255,144,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,0,0,0,7,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,7,244,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x57ab 垫 + 171,87,34,34,50,37,2,254,0,31,128,0,3,240,0,0,0,0,31,192,0,3,240,0,0,0,0,31,192,0,3,240,0,0,0,0,31,192,0,3,240,0,0,0,191,255,255,207,255,255,255,208,0,191,255,255,207,255,255,255,208,0,191,255,255,207,255,255,255,208,0,0,31,192,0,7,240,11,208,0,0,31,192,0,11,224,11,208,0,0,31,192,67,139,208,11,208,0,0,31,255,219,255,208,11,208,0,6,255,255,219,255,192,11,208,0,255,255,255,208,255,224,11,208,0,255,255,229,0,63,253,11,208,0,191,255,192,0,127,255,139,208,0,84,31,192,0,255,127,215,226,208,0,31,192,2,252,15,199,226,240,0,31,192,15,248,2,3,243,240,0,31,192,127,224,0,3,255,224,31,255,128,63,128,0,0,255,192,15,255,64,31,80,0,0,127,64,15,249,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,1,255,255,255,255,255,255,224,0,1,255,255,255,255,255,255,224,0,1,255,255,255,255,255,255,208,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x586b 填 + 107,88,35,35,59,37,1,253,0,21,0,0,0,63,64,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,255,255,255,255,255,240,0,63,0,255,255,255,255,255,240,0,63,0,255,255,255,255,255,240,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,7,255,255,255,253,0,63,255,255,7,255,255,255,253,0,63,255,255,7,240,0,0,253,0,63,255,255,7,240,0,0,253,0,21,127,84,7,255,255,255,253,0,0,63,0,7,255,255,255,253,0,0,63,0,7,240,0,0,253,0,0,63,0,7,240,0,0,253,0,0,63,0,7,240,0,0,253,0,0,63,0,7,255,255,255,253,0,0,63,0,7,255,255,255,253,0,0,63,0,7,240,0,0,253,0,0,63,0,7,240,0,0,253,0,0,63,75,71,255,255,255,253,0,0,63,255,135,255,255,255,253,0,0,127,255,128,0,0,0,0,0,7,255,253,0,0,0,0,0,0,127,255,211,255,255,255,255,255,248,127,253,3,255,255,255,255,255,248,63,128,3,255,255,255,255,255,244,40,0,0,0,41,0,10,0,0,0,0,0,0,255,128,63,208,0,0,0,0,11,254,0,31,252,0,0,0,1,191,244,0,2,255,64,0,0,15,255,128,0,0,127,224,0,0,3,253,0,0,0,15,244,0,0,0,208,0,0,0,2,64, + // 0x58f3 壳 + 243,88,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,106,170,170,175,250,170,170,170,64,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,2,255,255,255,255,255,255,224,0,2,255,255,255,255,255,255,224,0,1,170,170,170,170,170,170,144,0,0,0,0,0,0,0,0,0,0,42,170,170,170,170,170,170,170,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,0,0,0,0,0,0,127,0,63,0,0,0,0,0,0,127,0,63,15,255,255,255,255,252,127,0,63,15,255,255,255,255,252,127,0,0,5,85,85,85,85,84,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,64,0,0,0,2,255,255,255,255,128,0,0,0,2,255,255,255,255,128,0,0,0,2,252,0,0,63,128,0,0,0,2,248,0,0,63,128,0,0,0,3,248,0,0,63,128,0,0,0,3,244,0,0,63,128,8,0,0,15,240,0,0,63,128,31,128,0,63,224,0,0,63,128,31,128,2,255,192,0,0,63,128,47,128,111,255,0,0,0,47,255,255,64,127,248,0,0,0,31,255,255,0,47,208,0,0,0,11,255,252,0,8,0,0,0,0,0,0,0,0, + // 0x5907 备 + 7,89,35,36,68,37,1,252,0,0,0,250,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,31,255,255,255,255,0,0,0,0,127,255,255,255,255,192,0,0,2,255,255,255,255,255,0,0,0,15,254,0,0,3,253,0,0,0,191,255,192,0,31,248,0,0,7,255,191,244,0,191,224,0,0,11,253,11,254,7,255,64,0,0,2,224,1,255,255,252,0,0,0,0,64,0,63,255,224,0,0,0,0,0,1,191,255,249,0,0,0,0,0,111,255,255,255,249,0,0,1,111,255,255,71,255,255,254,144,191,255,255,224,0,47,255,255,248,63,255,249,0,0,0,111,255,240,63,249,0,0,0,0,0,107,192,21,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,128,1,252,0,15,224,0,0,63,128,1,252,0,15,224,0,0,63,128,1,252,0,15,224,0,0,63,234,171,254,170,175,224,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,128,1,252,0,15,224,0,0,63,128,1,252,0,15,224,0,0,63,128,1,252,0,15,224,0,0,63,128,1,252,0,15,224,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,128,0,0,0,15,224,0,0,0,0,0,0,0,0,0,0, + // 0x590d 复 + 13,89,24,36,216,37,6,252,0,6,64,0,0,0,0,15,240,0,0,0,0,31,208,0,0,0,0,63,192,0,0,0,0,191,255,255,255,248,0,255,255,255,255,248,3,255,255,255,255,248,15,248,0,0,0,0,63,245,85,85,85,0,255,255,255,255,255,192,127,191,255,255,255,192,28,126,0,0,31,192,0,126,0,0,31,192,0,127,255,255,255,192,0,127,255,255,255,192,0,126,0,0,47,192,0,126,0,0,31,192,0,127,0,0,47,192,0,127,255,255,255,192,0,127,255,255,255,192,0,0,255,0,0,0,0,2,253,0,0,0,0,11,255,255,255,64,0,47,255,255,255,192,0,255,213,85,255,64,11,255,224,1,254,0,127,251,248,7,252,0,63,193,255,47,240,0,14,0,127,255,192,0,0,0,31,255,0,0,0,1,255,255,244,0,1,191,255,191,255,228,63,255,244,7,255,255,47,254,64,0,47,253,14,64,0,0,0,120,0,0,0,0,0,0, + // 0x5916 外 + 22,89,35,35,59,37,1,253,0,0,121,0,0,1,252,0,0,0,0,191,0,0,1,252,0,0,0,0,254,0,0,1,252,0,0,0,1,253,0,0,1,252,0,0,0,2,252,0,0,1,252,0,0,0,3,252,0,80,1,252,0,0,0,7,255,255,253,1,252,0,0,0,15,255,255,253,1,252,0,0,0,31,255,255,253,1,252,0,0,0,47,192,1,254,129,252,0,0,0,127,128,2,255,209,252,0,0,0,255,0,3,255,241,252,0,0,1,254,0,3,251,249,252,0,0,3,252,0,7,241,255,252,0,0,15,254,0,11,240,191,252,0,0,63,255,208,15,224,63,252,0,0,191,255,248,31,192,31,252,0,0,127,75,255,47,192,7,253,0,0,13,1,255,255,128,2,255,64,0,0,0,63,255,0,1,255,224,0,0,0,11,254,0,1,255,248,0,0,0,3,252,0,1,255,255,64,0,0,3,248,0,1,254,255,244,0,0,15,240,0,1,252,127,252,0,0,47,224,0,1,252,15,240,0,0,127,192,0,1,252,1,208,0,0,255,64,0,1,252,0,0,0,3,254,0,0,1,252,0,0,0,15,252,0,0,1,252,0,0,0,127,240,0,0,1,252,0,0,2,255,192,0,0,1,252,0,0,31,255,0,0,0,1,252,0,0,47,248,0,0,0,1,252,0,0,7,208,0,0,0,1,252,0,0,1,0,0,0,0,1,252,0,0, + // 0x591a 多 + 26,89,33,35,59,37,2,253,0,0,0,15,144,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,7,255,255,255,240,0,0,0,0,47,255,255,255,252,0,0,0,1,255,255,255,255,248,0,0,0,31,254,0,0,15,240,0,0,1,255,253,0,0,63,208,0,0,47,255,255,128,0,255,64,0,0,31,248,127,248,7,253,0,0,0,11,64,11,255,47,244,0,0,0,0,0,0,255,255,192,0,0,0,0,0,0,63,255,64,0,0,0,0,0,1,255,246,254,0,0,0,0,0,47,255,139,252,0,0,0,0,7,255,248,47,240,0,0,0,26,255,255,128,255,255,255,253,0,127,255,244,7,255,255,255,255,64,47,254,0,127,255,255,255,255,0,14,64,2,255,208,0,2,253,0,0,0,111,255,0,0,7,252,0,0,11,255,255,64,0,15,244,0,0,63,255,255,240,0,63,208,0,0,47,244,31,253,0,255,128,0,0,14,0,2,255,135,255,0,0,0,0,0,0,127,255,252,0,0,0,0,0,0,31,255,224,0,0,0,0,0,0,15,255,128,0,0,0,0,0,1,255,252,0,0,0,0,0,0,111,255,224,0,0,0,0,0,91,255,254,0,0,0,0,1,175,255,255,224,0,0,0,0,1,255,255,249,0,0,0,0,0,0,255,254,64,0,0,0,0,0,0,121,64,0,0,0,0,0,0, + // 0x5927 大 + 39,89,33,35,59,37,2,253,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,15,240,0,0,0,0,106,170,170,175,250,170,170,170,64,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,47,253,0,0,0,0,0,0,0,63,255,0,0,0,0,0,0,0,63,255,0,0,0,0,0,0,0,191,191,128,0,0,0,0,0,0,255,63,192,0,0,0,0,0,0,254,31,208,0,0,0,0,0,2,253,15,240,0,0,0,0,0,3,252,11,248,0,0,0,0,0,11,248,3,253,0,0,0,0,0,31,240,2,255,0,0,0,0,0,63,224,0,255,128,0,0,0,0,255,192,0,127,208,0,0,0,2,255,64,0,47,244,0,0,0,11,254,0,0,15,253,0,0,0,63,248,0,0,3,255,64,0,1,255,224,0,0,0,255,224,0,11,255,128,0,0,0,63,253,0,191,254,0,0,0,0,31,255,192,191,244,0,0,0,0,3,255,128,47,128,0,0,0,0,0,190,0,8,0,0,0,0,0,0,8,0, + // 0x5929 天 + 41,89,34,33,41,37,2,252,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,106,170,170,175,250,170,170,170,64,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,21,85,85,95,245,85,85,85,0,47,255,255,255,255,255,255,254,0,47,255,255,255,255,255,255,254,0,47,255,255,255,255,255,255,254,0,0,0,0,15,252,0,0,0,0,0,0,0,31,254,0,0,0,0,0,0,0,63,255,0,0,0,0,0,0,0,63,255,128,0,0,0,0,0,0,191,127,192,0,0,0,0,0,1,255,31,224,0,0,0,0,0,3,254,15,248,0,0,0,0,0,15,252,7,253,0,0,0,0,0,63,244,2,255,0,0,0,0,0,255,224,0,255,208,0,0,0,7,255,128,0,63,248,0,0,0,127,254,0,0,15,255,64,0,6,255,244,0,0,3,255,244,0,191,255,192,0,0,0,191,255,208,255,253,0,0,0,0,31,255,192,127,208,0,0,0,0,2,255,64,41,0,0,0,0,0,0,26,0,0,0,0,0,0,0,0,0,0, + // 0x592a 太 + 42,89,34,35,59,37,2,253,0,0,0,11,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,106,170,170,191,255,170,170,170,64,0,0,0,63,255,0,0,0,0,0,0,0,63,255,64,0,0,0,0,0,0,127,191,128,0,0,0,0,0,0,191,47,192,0,0,0,0,0,0,255,31,208,0,0,0,0,0,1,254,15,240,0,0,0,0,0,3,252,7,244,0,0,0,0,0,7,252,3,252,0,0,0,0,0,15,244,2,254,0,0,0,0,0,31,240,0,255,64,0,0,0,0,63,208,0,127,192,0,0,0,0,255,159,0,63,224,0,0,0,3,255,191,192,15,248,0,0,0,15,253,127,240,11,254,0,0,0,63,244,15,252,2,255,128,0,1,255,224,3,255,0,255,240,0,11,255,128,0,255,192,63,253,0,191,253,0,0,127,240,15,255,208,255,240,0,0,31,192,2,255,192,63,64,0,0,11,0,0,127,64,24,0,0,0,0,0,0,10,0, + // 0x5931 失 + 49,89,34,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,15,224,7,240,0,0,0,0,0,15,224,7,240,0,0,0,0,0,47,208,7,240,0,0,0,0,0,63,192,7,240,0,0,0,0,0,127,128,7,240,0,0,0,0,0,191,149,91,249,85,85,80,0,0,255,255,255,255,255,255,240,0,2,255,255,255,255,255,255,240,0,3,255,255,255,255,255,255,240,0,11,244,0,7,240,0,0,0,0,31,240,0,7,240,0,0,0,0,63,208,0,11,240,0,0,0,0,191,192,0,11,240,0,0,0,0,31,0,0,11,240,0,0,0,0,1,0,0,11,240,0,0,0,0,0,0,0,15,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,85,85,85,127,255,85,85,85,64,0,0,0,63,255,0,0,0,0,0,0,0,191,255,128,0,0,0,0,0,0,255,47,192,0,0,0,0,0,3,254,15,240,0,0,0,0,0,11,252,11,252,0,0,0,0,0,47,244,3,255,0,0,0,0,0,255,224,0,255,192,0,0,0,7,255,128,0,127,244,0,0,0,47,254,0,0,31,255,0,0,2,255,244,0,0,7,255,228,0,127,255,192,0,0,0,191,255,208,255,253,0,0,0,0,31,255,208,63,208,0,0,0,0,1,255,128,40,0,0,0,0,0,0,27,0, + // 0x5934 头 + 52,89,33,35,59,37,2,253,0,0,0,0,26,128,0,0,0,0,0,0,0,47,192,0,0,0,0,15,208,0,47,192,0,0,0,0,47,253,0,47,192,0,0,0,0,27,255,208,47,192,0,0,0,0,0,191,248,47,192,0,0,0,0,0,11,252,63,192,0,0,0,0,0,1,240,63,192,0,0,0,1,0,0,16,63,128,0,0,0,7,224,0,0,63,128,0,0,0,15,255,64,0,63,128,0,0,0,7,255,224,0,63,128,0,0,0,0,127,253,0,63,128,0,0,0,0,7,254,0,63,64,0,0,0,0,0,188,0,63,64,0,0,0,0,0,16,0,127,0,0,0,0,0,0,0,0,191,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,3,252,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,31,241,0,0,0,0,0,0,0,63,211,224,0,0,0,0,0,0,255,143,254,0,0,0,0,0,3,255,7,255,208,0,0,0,0,15,252,0,127,253,0,0,0,0,191,244,0,7,255,128,0,0,7,255,192,0,0,191,244,0,0,191,254,0,0,0,31,254,0,111,255,244,0,0,0,3,255,128,127,255,64,0,0,0,0,191,64,47,228,0,0,0,0,0,29,0,9,0,0,0,0,0,0,0,0, + // 0x597d 好 + 125,89,35,36,68,37,1,252,0,14,128,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,1,255,255,255,255,64,0,47,128,1,255,255,255,255,224,0,63,64,1,255,255,255,255,192,0,63,64,0,0,0,0,255,64,0,63,0,0,0,0,2,254,0,0,127,0,0,0,0,7,248,0,127,255,255,248,0,0,31,240,0,127,255,255,248,0,0,127,192,0,127,255,255,244,0,2,255,0,0,0,252,3,244,0,7,252,0,0,1,252,3,244,0,7,240,0,0,2,248,3,240,0,7,240,0,0,3,244,7,240,0,7,240,0,0,3,240,7,251,255,255,255,255,248,7,240,11,235,255,255,255,255,248,11,224,15,235,255,255,255,255,248,15,208,15,209,85,91,245,85,80,15,192,31,192,0,7,240,0,0,31,240,47,192,0,7,240,0,0,47,253,63,64,0,7,240,0,0,63,255,255,0,0,7,240,0,0,31,191,255,0,0,7,240,0,0,2,15,254,0,0,7,240,0,0,0,3,255,64,0,7,240,0,0,0,7,255,208,0,7,240,0,0,0,15,255,244,0,7,240,0,0,0,47,215,253,0,7,240,0,0,0,127,193,252,0,7,240,0,0,1,255,0,180,0,7,240,0,0,11,253,0,16,21,91,240,0,0,63,244,0,0,47,255,240,0,0,15,208,0,0,15,255,208,0,0,7,0,0,0,15,254,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x59cb 始 + 203,89,35,35,59,37,1,253,0,15,128,0,0,42,64,0,0,0,31,192,0,0,63,192,0,0,0,31,192,0,0,63,128,0,0,0,47,128,0,0,127,64,0,0,0,63,64,0,0,191,0,0,0,0,63,0,0,0,254,0,0,0,0,63,0,0,0,253,0,160,0,0,191,0,0,2,252,3,244,0,127,255,255,248,3,248,2,252,0,127,255,255,248,3,240,0,254,0,127,255,255,244,11,240,0,127,64,1,252,3,244,15,208,0,63,192,1,248,3,240,31,214,171,255,208,2,248,3,247,255,255,255,255,240,3,244,7,243,255,255,255,255,244,3,240,7,243,255,255,170,87,252,7,240,11,225,64,0,0,1,248,11,224,15,208,0,0,0,0,128,15,208,15,208,0,0,0,0,0,15,192,31,192,0,0,0,0,0,31,208,47,192,63,255,255,255,192,47,248,63,128,63,255,255,255,192,63,255,191,0,63,255,255,255,192,63,255,255,0,63,64,0,31,192,6,31,254,0,63,64,0,31,192,0,3,255,64,63,64,0,31,192,0,7,255,208,63,64,0,31,192,0,15,255,248,63,64,0,31,192,0,63,215,253,63,64,0,31,192,0,191,128,252,63,64,0,31,192,3,255,0,112,63,255,255,255,192,31,252,0,0,63,255,255,255,192,47,240,0,0,63,255,255,255,192,15,128,0,0,63,64,0,31,192,6,0,0,0,63,64,0,26,128, + // 0x5b50 子 + 80,91,33,34,50,37,2,252,0,85,85,85,85,85,85,0,0,1,255,255,255,255,255,255,192,0,1,255,255,255,255,255,255,240,0,1,255,255,255,255,255,255,192,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,255,224,0,0,0,0,0,0,11,255,64,0,0,0,0,0,1,127,252,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,85,85,85,91,249,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,1,149,95,244,0,0,0,0,0,0,255,255,240,0,0,0,0,0,0,191,255,224,0,0,0,0,0,0,127,254,64,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5b58 存 + 88,91,35,35,59,37,1,253,0,0,0,57,0,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,253,0,0,0,0,0,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,5,85,95,245,85,85,85,85,64,0,0,47,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,1,255,7,255,255,255,248,0,0,3,253,7,255,255,255,255,0,0,11,248,7,255,255,255,252,0,0,31,240,0,0,0,31,244,0,0,63,208,0,0,0,127,208,0,0,255,208,0,0,1,255,64,0,3,255,208,0,0,27,252,0,0,15,255,208,0,0,31,240,0,0,127,255,208,0,0,31,192,0,0,127,223,208,0,0,47,192,0,0,63,15,209,255,255,255,255,255,244,28,15,209,255,255,255,255,255,244,0,15,209,255,255,255,255,255,244,0,15,208,0,0,31,192,0,0,0,15,208,0,0,31,192,0,0,0,15,208,0,0,31,192,0,0,0,15,208,0,0,31,192,0,0,0,15,208,0,0,31,192,0,0,0,15,208,0,0,31,192,0,0,0,15,208,0,64,47,192,0,0,0,15,208,0,255,255,192,0,0,0,15,208,0,191,255,64,0,0,0,15,208,0,127,249,0,0,0, + // 0x5b89 安 + 137,91,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,11,244,0,0,0,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,128,0,0,0,0,0,191,0,63,128,0,36,0,0,0,191,0,63,128,0,127,128,0,0,191,0,63,128,0,255,0,0,0,191,0,63,128,1,254,0,0,0,191,0,0,0,3,252,0,0,0,0,0,0,0,7,248,0,0,0,0,0,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,21,85,191,149,85,95,245,85,0,0,0,255,0,0,15,240,0,0,0,1,254,0,0,31,224,0,0,0,3,252,0,0,47,208,0,0,0,7,248,0,0,63,192,0,0,0,15,240,0,0,255,64,0,0,0,47,254,64,2,255,0,0,0,0,63,255,249,7,252,0,0,0,0,191,255,255,239,244,0,0,0,0,27,6,255,255,224,0,0,0,0,0,0,31,255,248,0,0,0,0,0,0,47,255,255,128,0,0,0,0,6,255,251,255,248,0,0,0,1,191,255,128,127,255,128,0,26,255,255,248,0,7,255,244,0,31,255,255,128,0,0,127,248,0,11,255,224,0,0,0,11,240,0,3,148,0,0,0,0,1,128,0, + // 0x5b8c 完 + 140,91,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,149,85,85,85,85,85,255,0,63,64,0,0,0,0,0,191,0,63,64,0,0,0,0,0,191,0,63,64,0,0,0,0,0,191,0,63,71,255,255,255,255,240,191,0,21,7,255,255,255,255,240,85,0,0,7,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,85,85,85,85,85,85,85,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,47,192,3,244,0,0,0,0,0,63,192,3,244,0,0,0,0,0,63,128,3,244,0,0,0,0,0,127,64,3,244,0,0,0,0,0,191,0,3,244,0,0,0,0,0,255,0,3,244,0,4,0,0,3,253,0,3,244,0,15,128,0,11,252,0,3,244,0,15,192,0,63,240,0,3,244,0,15,192,2,255,208,0,3,248,0,47,192,191,255,64,0,3,255,255,255,128,255,252,0,0,2,255,255,255,0,127,208,0,0,0,191,255,253,0,56,0,0,0,0,0,0,0,0, + // 0x5b9a 定 + 154,91,34,36,68,37,1,252,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,229,85,85,85,85,85,111,192,15,208,0,0,0,0,0,47,192,15,208,0,0,0,0,0,47,192,15,208,0,0,0,0,0,47,192,15,208,85,85,85,85,85,47,192,15,211,255,255,255,255,255,47,192,0,3,255,255,255,255,255,0,0,0,3,255,255,255,255,255,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,3,244,1,252,0,0,0,0,0,7,244,1,252,0,0,0,0,0,7,240,1,253,0,0,0,0,0,11,240,1,255,255,255,240,0,0,15,240,1,255,255,255,240,0,0,15,240,1,255,255,255,240,0,0,31,244,1,252,0,0,0,0,0,63,252,1,252,0,0,0,0,0,63,254,1,252,0,0,0,0,0,191,255,65,252,0,0,0,0,0,254,63,225,252,0,0,0,0,3,252,15,254,252,0,0,0,0,11,248,3,255,253,0,0,0,0,47,240,0,255,255,255,255,255,240,127,208,0,31,255,255,255,255,224,47,128,0,0,111,255,255,255,208,10,0,0,0,0,21,85,85,64,0,0,0,0,0,0,0,0,0, + // 0x5ba2 客 + 162,91,35,36,68,37,1,252,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,208,0,20,0,0,0,31,192,15,208,0,255,64,0,0,31,192,15,208,2,254,0,0,0,31,192,15,208,11,254,170,170,160,31,192,15,208,47,255,255,255,253,31,192,0,0,191,255,255,255,252,0,0,0,7,255,128,0,15,244,0,0,0,47,255,240,0,63,224,0,0,2,255,235,252,1,255,128,0,0,3,255,66,255,75,254,0,0,0,0,248,0,127,255,244,0,0,0,0,0,0,31,255,208,0,0,0,0,0,0,111,255,248,0,0,0,0,0,7,255,255,255,224,0,0,0,1,191,255,139,255,255,164,0,1,191,255,248,0,191,255,255,244,127,255,255,64,0,6,255,255,224,63,255,255,255,255,255,255,255,192,31,231,255,255,255,255,255,6,64,4,2,255,255,255,255,255,0,0,0,2,248,0,0,0,191,0,0,0,2,248,0,0,0,191,0,0,0,2,248,0,0,0,191,0,0,0,2,248,0,0,0,191,0,0,0,2,248,0,0,0,191,0,0,0,2,255,255,255,255,255,0,0,0,2,255,255,255,255,255,0,0,0,2,255,255,255,255,255,0,0,0,2,248,0,0,0,191,0,0,0,0,0,0,0,0,0,0,0, + // 0x5bab 宫 + 171,91,31,36,32,37,3,252,0,0,0,47,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,63,192,0,0,0,0,0,0,31,224,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,254,85,85,85,85,85,86,252,253,0,0,0,0,0,2,252,253,0,0,0,0,0,2,252,253,63,255,255,255,255,242,252,253,63,255,255,255,255,242,252,0,63,255,255,255,255,240,0,0,63,0,0,0,7,240,0,0,63,0,0,0,7,240,0,0,63,0,0,0,7,240,0,0,63,0,0,0,7,240,0,0,63,255,255,255,255,240,0,0,63,255,255,255,255,240,0,0,63,255,255,255,255,240,0,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,255,255,255,255,255,255,128,3,255,255,255,255,255,255,128,3,255,255,255,255,255,255,128,3,240,0,0,0,0,63,128,3,240,0,0,0,0,63,128,3,240,0,0,0,0,63,128,3,240,0,0,0,0,63,128,3,240,0,0,0,0,63,128,3,255,255,255,255,255,255,128,3,255,255,255,255,255,255,128,3,255,255,255,255,255,255,128,3,240,0,0,0,0,63,128,0,0,0,0,0,0,0,0, + // 0x5bf9 对 + 249,91,34,35,59,37,2,253,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,127,255,255,248,0,0,15,192,0,127,255,255,252,0,0,15,192,0,127,255,255,252,0,0,15,192,0,21,85,86,252,0,0,15,192,0,0,0,3,248,255,255,255,255,208,0,0,3,248,255,255,255,255,208,0,0,3,244,255,255,255,255,208,0,0,7,240,85,85,95,213,64,7,64,11,240,0,0,15,192,0,31,208,15,240,0,0,15,192,0,31,244,15,224,0,0,15,192,0,7,253,31,208,29,0,15,192,0,1,255,111,192,191,0,15,192,0,0,127,255,128,63,128,15,192,0,0,31,255,64,47,192,15,192,0,0,7,255,0,15,224,15,192,0,0,2,255,0,7,240,15,192,0,0,2,255,192,3,248,15,192,0,0,3,255,224,2,252,15,192,0,0,11,255,248,1,244,15,192,0,0,31,247,252,0,64,15,192,0,0,63,210,255,0,0,15,192,0,0,191,128,255,64,0,15,192,0,1,255,0,63,0,0,15,192,0,7,253,0,40,0,0,15,192,0,31,248,0,0,0,0,15,192,0,191,224,0,0,0,170,191,192,0,255,192,0,0,0,127,255,192,0,62,0,0,0,0,63,255,64,0,24,0,0,0,0,63,248,0,0, + // 0x5c06 将 + 6,92,35,35,59,37,1,253,0,3,244,0,0,0,0,180,0,0,3,244,0,0,1,191,253,0,0,3,244,0,90,255,255,255,0,0,3,244,191,255,255,255,228,0,0,3,244,255,255,255,144,0,0,30,3,244,191,165,0,0,0,0,127,3,244,0,0,108,0,15,128,63,131,244,5,0,252,0,31,224,31,211,244,63,0,254,0,63,192,15,243,244,63,64,127,0,191,64,7,243,244,31,192,63,1,254,0,3,251,244,15,208,63,67,252,0,2,255,244,11,224,63,75,240,0,0,211,244,7,240,16,31,208,0,0,3,244,3,144,0,63,128,0,0,3,244,0,0,0,31,208,0,0,3,244,0,0,0,15,224,0,0,3,244,0,0,0,15,224,0,0,3,244,255,255,255,255,255,244,0,3,244,255,255,255,255,255,244,0,7,244,255,255,255,255,255,244,0,63,244,0,0,0,15,224,0,2,255,244,0,80,0,15,224,0,31,255,244,3,244,0,15,224,0,191,251,244,3,252,0,15,224,0,191,211,244,1,255,0,15,224,0,63,3,244,0,127,128,15,224,0,40,3,244,0,63,192,15,224,0,0,3,244,0,15,240,15,224,0,0,3,244,0,11,128,15,224,0,0,3,244,0,1,0,15,224,0,0,3,244,0,0,21,95,224,0,0,3,244,0,0,63,255,208,0,0,3,244,0,0,47,255,192,0,0,3,244,0,0,31,254,0,0, + // 0x5c0f 小 + 15,92,35,36,68,37,1,252,0,0,0,0,84,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,9,0,0,253,0,7,0,0,0,15,240,0,253,0,63,128,0,0,31,224,0,253,0,63,208,0,0,31,208,0,253,0,31,240,0,0,47,192,0,253,0,15,244,0,0,63,192,0,253,0,7,252,0,0,127,128,0,253,0,3,253,0,0,191,64,0,253,0,1,254,0,0,255,0,0,253,0,0,255,0,1,254,0,0,253,0,0,191,128,3,253,0,0,253,0,0,63,192,3,252,0,0,253,0,0,63,208,11,244,0,0,253,0,0,31,224,15,240,0,0,253,0,0,15,240,63,224,0,0,253,0,0,11,244,127,192,0,0,253,0,0,7,248,47,64,0,0,253,0,0,3,252,2,0,0,0,253,0,0,3,224,0,0,0,0,253,0,0,1,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,42,91,253,0,0,0,0,0,0,63,255,252,0,0,0,0,0,0,31,255,248,0,0,0,0,0,0,15,255,144,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5c31 就 + 49,92,35,35,59,37,1,253,0,0,254,0,0,3,244,0,0,0,0,254,0,0,3,244,36,0,0,0,254,0,0,3,245,252,0,0,0,254,0,0,3,244,255,0,0,0,254,0,0,3,244,63,128,63,255,255,255,248,3,244,31,192,63,255,255,255,248,3,244,15,240,63,255,255,255,248,3,244,3,224,0,0,0,0,0,3,244,1,0,0,0,0,0,0,3,248,0,0,3,255,255,255,203,255,255,255,244,3,255,255,255,203,255,255,255,244,3,255,255,255,203,255,255,255,244,3,240,0,31,192,3,244,0,0,3,240,0,31,192,3,244,0,0,3,240,0,31,192,3,255,128,0,3,240,0,31,192,7,255,128,0,3,240,0,31,192,7,255,128,0,3,255,255,255,192,11,255,128,0,3,255,255,255,192,15,255,128,0,3,255,255,255,192,15,255,128,0,0,0,190,0,0,31,239,128,0,0,0,190,6,0,47,239,128,0,3,244,190,63,64,63,175,128,0,3,240,190,31,128,127,111,128,0,7,240,190,15,192,191,47,128,0,15,208,190,11,224,253,47,128,224,15,192,190,7,243,252,47,128,252,47,192,190,3,247,248,47,128,248,63,64,190,2,79,240,47,128,248,191,0,190,0,47,208,47,129,248,29,0,254,0,191,192,47,255,248,0,127,253,2,255,0,31,255,240,0,63,252,0,253,0,11,255,208,0,47,224,0,36,0,0,84,0, + // 0x5c4f 屏 + 79,92,34,34,50,37,1,252,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,254,0,0,0,0,0,191,0,0,254,0,0,0,0,0,191,0,0,254,0,0,0,0,0,191,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,254,0,109,0,0,31,128,0,0,254,0,191,0,0,63,192,0,0,254,0,63,128,0,127,64,0,0,254,0,47,192,0,254,0,0,0,254,0,15,192,0,252,0,0,0,254,127,255,255,255,255,255,192,0,253,127,255,255,255,255,255,192,0,253,63,255,255,255,255,255,192,0,253,0,15,208,1,252,0,0,0,252,0,15,208,1,252,0,0,1,252,0,15,208,1,252,0,0,1,252,0,15,208,1,252,0,0,2,253,255,255,255,255,255,255,240,3,249,255,255,255,255,255,255,240,3,249,255,255,255,255,255,255,240,3,244,0,47,192,1,252,0,0,7,240,0,63,128,1,252,0,0,11,240,0,255,0,1,252,0,0,15,224,2,254,0,1,252,0,0,31,208,11,252,0,1,252,0,0,63,192,127,244,0,1,252,0,0,127,65,255,208,0,1,252,0,0,47,0,127,64,0,1,252,0,0,5,0,40,0,0,1,252,0,0,0,0,0,0,0,0,0,0,0, + // 0x5de5 工 + 229,93,33,28,252,37,2,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,10,170,170,175,250,170,170,168,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,85,85,85,91,249,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x5dee 差 + 238,93,34,35,59,37,1,253,0,0,24,0,0,0,228,0,0,0,0,254,0,0,2,253,0,0,0,0,191,0,0,3,252,0,0,0,0,63,192,0,11,240,0,0,0,0,31,192,0,15,208,0,0,3,255,255,255,255,255,255,255,64,3,255,255,255,255,255,255,255,64,3,255,255,255,255,255,255,255,64,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,127,255,255,255,255,255,248,0,0,127,255,255,255,255,255,248,0,0,127,255,255,255,255,255,244,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,2,253,255,255,255,255,248,0,0,3,249,255,255,255,255,248,0,0,11,245,255,255,255,255,248,0,0,15,240,0,3,240,0,0,0,0,31,208,0,3,240,0,0,0,0,63,192,0,3,240,0,0,0,0,255,128,0,3,240,0,0,0,2,255,0,0,3,240,0,0,0,7,252,0,0,3,240,0,0,0,47,248,191,255,255,255,255,255,192,127,224,191,255,255,255,255,255,192,31,128,191,255,255,255,255,255,192,2,0,0,0,0,0,0,0,0, + // 0x5df2 已 + 242,93,32,32,0,37,3,254,21,85,85,85,85,85,84,0,127,255,255,255,255,255,254,0,127,255,255,255,255,255,254,0,127,255,255,255,255,255,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,6,160,0,0,0,0,254,0,11,240,0,0,0,0,254,0,11,240,0,0,0,0,254,0,11,240,0,0,0,0,254,0,11,240,0,0,0,0,254,0,11,240,0,0,0,0,254,0,11,255,255,255,255,255,254,0,11,255,255,255,255,255,254,0,11,255,255,255,255,255,254,0,11,245,85,85,85,85,254,0,11,240,0,0,0,0,254,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,121,11,240,0,0,0,0,0,127,11,240,0,0,0,0,0,191,11,240,0,0,0,0,0,255,11,240,0,0,0,0,0,254,11,244,0,0,0,0,2,253,7,254,85,85,85,85,111,252,3,255,255,255,255,255,255,248,0,255,255,255,255,255,255,224,0,27,255,255,255,255,254,0, + // 0x5e73 平 + 115,94,33,33,41,37,2,253,5,85,85,85,85,85,85,84,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,20,0,0,0,127,0,7,240,0,63,128,0,0,63,64,7,240,0,127,128,0,0,63,192,7,240,0,191,0,0,0,31,208,7,240,0,254,0,0,0,15,224,7,240,2,252,0,0,0,11,240,7,240,3,248,0,0,0,7,244,7,240,7,240,0,0,0,3,248,7,240,15,224,0,0,0,2,128,7,240,6,192,0,0,0,0,0,7,240,0,0,0,0,85,85,85,91,249,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0, + // 0x5e76 并 + 118,94,33,36,68,37,2,252,0,1,208,0,0,1,228,0,0,0,15,240,0,0,3,253,0,0,0,7,248,0,0,7,252,0,0,0,2,253,0,0,15,240,0,0,0,0,255,0,0,47,208,0,0,0,0,191,64,0,63,192,0,0,0,0,63,128,0,191,0,0,0,0,0,45,0,0,30,0,0,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,0,0,191,0,0,63,128,0,0,0,0,191,0,0,63,128,0,0,0,0,191,0,0,63,128,0,0,0,0,191,0,0,63,128,0,0,0,0,191,0,0,63,128,0,0,0,0,191,0,0,63,128,0,0,0,0,191,0,0,63,128,0,0,85,85,255,85,85,127,213,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,253,0,0,63,128,0,0,0,1,253,0,0,63,128,0,0,0,2,252,0,0,63,128,0,0,0,3,252,0,0,63,128,0,0,0,11,244,0,0,63,128,0,0,0,15,240,0,0,63,128,0,0,0,63,224,0,0,63,128,0,0,0,191,192,0,0,63,128,0,0,2,255,64,0,0,63,128,0,0,31,253,0,0,0,63,128,0,0,191,244,0,0,0,63,128,0,0,63,192,0,0,0,63,128,0,0,14,0,0,0,0,47,128,0,0,0,0,0,0,0,0,0,0,0, + // 0x5e8a 床 + 138,94,35,35,59,37,1,253,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,85,85,85,127,149,85,85,80,2,255,255,255,255,255,255,255,240,2,255,255,255,255,255,255,255,240,2,255,255,255,255,255,255,255,240,2,252,0,0,0,0,0,0,0,2,252,0,0,3,244,0,0,0,2,252,0,0,3,244,0,0,0,2,252,0,0,3,244,0,0,0,2,252,0,0,3,244,0,0,0,2,252,0,0,3,244,0,0,0,2,252,0,0,7,248,0,0,0,2,252,127,255,255,255,255,255,240,2,252,127,255,255,255,255,255,240,2,252,127,255,255,255,255,255,240,2,252,0,0,47,255,0,0,0,2,252,0,0,127,255,128,0,0,2,248,0,0,255,255,208,0,0,3,248,0,2,255,255,240,0,0,3,244,0,7,251,251,252,0,0,3,244,0,31,243,245,255,0,0,3,244,0,63,195,244,191,192,0,7,240,0,255,67,244,47,240,0,11,240,3,254,3,244,15,252,0,15,224,31,252,3,244,3,255,64,15,208,191,240,3,244,0,255,224,31,195,255,192,3,244,0,63,244,63,193,254,0,3,244,0,11,224,63,128,116,0,3,244,0,1,192,191,0,0,0,3,244,0,0,0,46,0,0,0,3,244,0,0,0,5,0,0,0,3,244,0,0,0, + // 0x5e94 应 + 148,94,35,36,68,37,1,252,0,0,0,0,111,0,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,224,0,0,0,2,255,255,255,255,255,255,255,240,2,255,255,255,255,255,255,255,240,2,255,255,255,255,255,255,255,240,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,5,0,0,100,0,2,252,0,0,127,0,0,191,0,2,252,6,0,63,0,0,255,0,2,252,63,0,63,64,0,255,0,2,252,63,128,47,128,1,253,0,2,252,31,192,31,192,2,252,0,2,252,15,208,15,208,3,252,0,2,252,15,224,15,224,7,244,0,2,252,7,240,11,240,11,240,0,2,252,3,244,7,240,15,224,0,2,248,3,248,3,240,31,208,0,3,248,2,252,3,244,47,192,0,3,248,1,253,3,248,63,64,0,3,244,0,254,2,224,191,0,0,3,244,0,191,0,0,254,0,0,7,240,0,184,0,1,252,0,0,7,240,0,0,0,3,248,0,0,11,240,0,0,0,11,240,0,0,15,224,0,0,0,15,208,0,0,15,208,0,0,0,47,192,0,0,47,195,255,255,255,255,255,255,244,63,195,255,255,255,255,255,255,244,127,67,255,255,255,255,255,255,244,63,1,85,85,85,85,85,85,80,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5e9f 废 + 159,94,34,36,68,37,1,252,0,0,0,0,111,0,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,47,224,0,0,0,3,255,255,255,255,255,255,255,240,3,255,255,255,255,255,255,255,240,3,255,255,255,255,255,255,255,240,3,248,0,0,0,0,0,0,0,3,248,2,164,11,240,9,0,0,3,248,3,248,15,224,63,0,0,3,248,7,244,15,208,63,192,0,3,248,11,240,31,192,15,240,0,3,248,15,224,47,192,3,248,0,3,248,47,192,63,128,1,224,0,3,248,127,255,255,255,255,255,192,3,248,63,255,255,255,255,255,192,3,248,63,255,255,255,255,255,192,3,248,20,0,253,0,0,0,0,3,248,0,2,252,0,0,0,0,3,248,0,3,248,0,0,0,0,3,244,0,11,255,255,255,224,0,3,244,0,15,255,255,255,248,0,3,244,0,63,255,255,255,240,0,7,240,0,191,224,0,47,208,0,7,240,1,255,248,0,127,192,0,11,240,7,254,254,1,255,0,0,15,240,31,244,191,199,252,0,0,15,224,127,208,47,255,244,0,0,15,210,255,128,11,255,208,0,0,31,223,254,0,27,255,244,0,0,63,199,244,1,255,255,255,128,0,63,130,192,111,255,215,255,254,64,127,64,3,255,253,0,127,255,224,47,0,1,255,208,0,6,255,192,6,0,0,184,0,0,0,27,64,0,0,0,0,0,0,0,0,0, + // 0x5ea6 度 + 166,94,34,35,59,37,1,253,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,127,64,0,0,0,2,255,255,255,255,255,255,255,240,2,255,255,255,255,255,255,255,240,2,255,255,255,255,255,255,255,240,2,252,0,0,0,0,0,0,0,2,252,0,47,128,0,127,0,0,2,252,0,47,128,0,127,0,0,2,252,0,47,128,0,127,0,0,2,252,255,255,255,255,255,255,224,2,252,255,255,255,255,255,255,224,2,252,255,255,255,255,255,255,208,2,252,0,47,128,0,127,0,0,2,248,0,47,128,0,127,0,0,2,248,0,47,128,0,127,0,0,2,248,0,47,255,255,255,0,0,2,248,0,47,255,255,255,0,0,2,248,0,26,170,170,170,0,0,3,248,0,0,0,0,0,0,0,3,244,191,255,255,255,255,224,0,3,244,191,255,255,255,255,252,0,3,240,191,255,255,255,255,248,0,3,240,0,127,0,0,15,240,0,7,240,0,63,192,0,63,208,0,11,224,0,15,244,1,255,64,0,15,208,0,7,254,15,253,0,0,15,208,0,0,255,255,240,0,0,31,192,0,0,63,255,192,0,0,63,192,0,27,255,255,249,0,0,63,64,107,255,255,255,255,254,80,191,3,255,255,244,6,255,255,240,46,1,255,253,0,0,31,255,208,4,0,233,0,0,0,0,27,128, + // 0x5f00 开 + 0,95,33,33,41,37,2,252,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,0,0,127,0,0,31,192,0,0,0,0,127,0,0,31,192,0,0,0,0,127,0,0,31,192,0,0,0,0,127,0,0,31,192,0,0,0,0,127,0,0,31,192,0,0,0,0,127,0,0,31,192,0,0,0,0,127,0,0,31,192,0,0,0,0,127,0,0,31,192,0,0,0,0,127,0,0,31,192,0,0,0,0,127,0,0,31,192,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,85,85,255,85,85,111,213,85,64,0,0,254,0,0,31,192,0,0,0,0,253,0,0,31,192,0,0,0,1,253,0,0,31,192,0,0,0,2,252,0,0,31,192,0,0,0,3,252,0,0,31,192,0,0,0,11,248,0,0,31,192,0,0,0,15,240,0,0,31,192,0,0,0,47,224,0,0,31,192,0,0,0,127,192,0,0,31,192,0,0,1,255,128,0,0,31,192,0,0,7,255,0,0,0,31,192,0,0,47,252,0,0,0,31,192,0,0,191,240,0,0,0,31,192,0,0,47,192,0,0,0,31,192,0,0,14,0,0,0,0,31,192,0,0,0,0,0,0,0,0,0,0,0, + // 0x5f03 弃 + 3,95,34,36,68,37,1,252,0,0,0,0,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,63,255,255,255,255,255,255,255,224,63,255,255,255,255,255,255,255,224,63,255,255,255,255,255,255,255,224,0,0,1,254,0,0,0,0,0,0,0,3,252,0,3,192,0,0,0,0,7,244,0,15,248,0,0,0,0,15,224,0,7,255,0,0,0,0,47,192,0,0,191,208,0,1,85,127,235,255,255,255,248,0,15,255,255,255,255,255,255,254,0,15,255,255,255,255,255,255,255,128,11,254,170,149,84,0,0,63,208,0,0,0,0,0,5,64,15,64,0,0,47,128,0,15,224,0,0,0,0,47,128,0,15,224,0,0,0,0,47,128,0,15,224,0,0,0,0,47,128,0,15,224,0,0,0,0,63,128,0,15,224,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,0,0,127,0,0,15,224,0,0,0,0,255,0,0,15,224,0,0,0,1,254,0,0,15,224,0,0,0,3,252,0,0,15,224,0,0,0,15,248,0,0,15,224,0,0,0,191,240,0,0,15,224,0,0,7,255,192,0,0,15,224,0,0,127,254,0,0,0,15,224,0,0,47,240,0,0,0,15,224,0,0,14,64,0,0,0,15,224,0,0,0,0,0,0,0,0,0,0,0, + // 0x5f0f 式 + 15,95,34,35,59,37,2,253,0,0,0,0,6,160,4,0,0,0,0,0,0,7,240,63,0,0,0,0,0,0,7,244,127,208,0,0,0,0,0,7,244,31,244,0,0,0,0,0,7,244,3,253,0,0,0,0,0,7,244,0,252,0,0,0,0,0,7,244,0,32,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,85,85,85,85,87,249,85,85,64,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,2,252,0,0,0,5,85,85,85,66,252,0,0,0,47,255,255,255,226,252,0,0,0,47,255,255,255,225,253,0,0,0,47,255,255,255,224,253,0,0,0,0,1,252,0,0,254,0,0,0,0,1,252,0,0,255,0,0,0,0,1,252,0,0,191,0,0,0,0,1,252,0,0,191,0,0,0,0,1,252,0,0,127,64,0,0,0,1,252,0,0,63,128,0,0,0,1,252,0,0,63,192,7,0,0,1,252,0,0,31,208,7,224,0,1,252,6,248,15,224,11,224,0,1,255,255,248,15,240,11,224,0,107,255,255,248,7,248,15,208,127,255,255,254,144,3,254,15,192,127,255,254,64,0,1,255,255,192,63,250,64,0,0,0,191,255,128,41,0,0,0,0,0,47,255,0,0,0,0,0,0,0,6,248,0, + // 0x5f15 引 + 21,95,29,36,32,37,3,252,0,0,0,0,0,0,21,0,0,0,0,0,0,0,63,64,127,255,255,254,0,0,63,64,127,255,255,254,0,0,63,64,127,255,255,254,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,31,255,255,254,0,0,63,64,31,255,255,254,0,0,63,64,47,255,255,254,0,0,63,64,47,192,0,0,0,0,63,64,63,128,0,0,0,0,63,64,63,64,0,0,0,0,63,64,63,0,0,0,0,0,63,64,127,0,0,0,0,0,63,64,191,255,255,255,0,0,63,64,255,255,255,255,0,0,63,64,255,255,255,254,0,0,63,64,253,0,0,254,0,0,63,64,188,0,0,254,0,0,63,64,0,0,0,253,0,0,63,64,0,0,0,253,0,0,63,64,0,0,0,253,0,0,63,64,0,0,1,252,0,0,63,64,0,0,2,252,0,0,63,64,0,0,2,252,0,0,63,64,0,0,3,248,0,0,63,64,0,0,7,248,0,0,63,64,2,165,111,244,0,0,63,64,1,255,255,240,0,0,63,64,0,255,255,208,0,0,63,64,0,255,254,0,0,0,63,64,0,0,0,0,0,0,0,0, + // 0x5f39 弹 + 57,95,34,36,68,37,2,252,0,0,0,0,16,0,2,64,0,0,0,0,2,240,0,7,244,0,191,255,252,3,252,0,11,240,0,191,255,252,0,253,0,15,224,0,191,255,252,0,191,0,47,192,0,0,1,252,0,63,128,63,64,0,0,1,252,0,31,64,191,0,0,0,1,252,0,8,0,253,0,0,0,1,252,42,170,171,254,170,0,0,1,252,63,255,255,255,255,0,63,255,252,63,255,255,255,255,0,63,255,252,63,64,127,64,127,0,63,255,252,63,64,127,64,127,0,62,0,0,63,64,127,64,127,0,62,0,0,63,255,255,255,255,0,126,0,0,63,255,255,255,255,0,126,0,0,63,170,191,170,191,0,126,0,0,63,64,127,64,127,0,126,0,0,63,64,127,64,127,0,127,255,252,63,234,255,234,255,0,191,255,248,63,255,255,255,255,0,191,255,248,63,255,255,255,255,0,0,2,248,0,0,127,64,0,0,0,2,248,0,0,127,64,0,0,0,2,244,0,0,127,64,0,0,0,2,247,255,255,255,255,255,208,0,3,247,255,255,255,255,255,208,0,3,247,255,255,255,255,255,208,0,3,240,0,0,127,64,0,0,0,3,240,0,0,127,64,0,0,0,7,240,0,0,127,64,0,0,16,31,224,0,0,127,64,0,0,63,255,208,0,0,127,64,0,0,31,255,192,0,0,127,64,0,0,15,254,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5f52 归 + 82,95,31,36,32,37,3,252,0,1,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,252,31,255,255,255,252,105,2,252,31,255,255,255,252,254,2,252,31,255,255,255,252,254,2,252,5,85,85,87,252,254,2,252,0,0,0,2,252,254,2,252,0,0,0,2,252,254,2,252,0,0,0,2,252,254,2,252,0,0,0,2,252,254,2,252,0,0,0,2,252,254,2,252,0,0,0,2,252,254,2,252,0,0,0,2,252,254,2,252,0,0,0,2,252,254,2,252,1,85,85,87,252,254,2,252,7,255,255,255,252,254,2,252,7,255,255,255,252,254,2,248,7,255,255,255,252,254,2,248,0,0,0,2,252,254,3,248,0,0,0,2,252,254,3,248,0,0,0,2,252,254,3,244,0,0,0,2,252,85,7,244,0,0,0,2,252,0,11,240,0,0,0,2,252,0,15,240,0,0,0,2,252,0,15,224,0,0,0,2,252,0,47,192,0,0,0,2,252,0,63,192,21,85,85,87,252,0,255,64,127,255,255,255,252,2,255,0,127,255,255,255,252,11,252,0,127,255,255,255,252,47,244,0,0,0,0,2,252,15,224,0,0,0,0,2,252,3,64,0,0,0,0,1,164,0,0,0,0,0,0,0,0, + // 0x5f84 径 + 132,95,35,35,59,37,1,253,0,0,144,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,11,252,63,255,255,255,254,0,0,31,240,63,255,255,255,255,64,0,127,192,63,255,255,255,255,0,2,255,64,0,184,0,1,254,0,11,253,0,0,253,0,3,252,0,63,244,0,0,191,0,11,244,0,127,208,61,0,63,192,31,224,0,47,0,191,64,31,240,127,192,0,8,1,254,0,11,253,255,0,0,0,3,252,0,2,255,252,0,0,0,15,244,0,0,255,244,0,0,0,47,224,0,2,255,253,0,0,0,191,192,0,47,255,255,208,0,2,255,192,6,255,244,255,254,64,11,255,193,191,255,64,31,255,248,63,255,194,255,248,0,2,255,244,255,239,192,254,64,26,128,27,224,127,95,192,80,0,47,192,0,64,61,31,192,0,0,47,192,0,0,20,31,192,0,0,47,192,0,0,0,31,192,0,0,47,192,0,0,0,31,192,31,255,255,255,255,64,0,31,192,31,255,255,255,255,64,0,31,192,31,255,255,255,255,64,0,31,192,0,0,47,192,0,0,0,31,192,0,0,47,192,0,0,0,31,192,0,0,47,192,0,0,0,31,192,0,0,47,192,0,0,0,31,192,0,0,47,192,0,0,0,31,195,255,255,255,255,255,244,0,31,195,255,255,255,255,255,244,0,31,195,255,255,255,255,255,244,0,31,192,0,0,0,0,0,0, + // 0x5f85 待 + 133,95,35,35,59,37,1,253,0,0,144,0,0,42,64,0,0,0,2,252,0,0,63,128,0,0,0,7,252,0,0,63,128,0,0,0,31,240,0,0,63,128,0,0,0,127,208,0,0,63,128,0,0,1,255,64,47,255,255,255,255,128,11,253,0,47,255,255,255,255,128,63,244,0,47,255,255,255,255,128,63,192,16,0,0,63,128,0,0,31,0,189,0,0,63,128,0,0,4,1,253,0,0,63,128,0,0,0,3,252,0,0,63,128,0,0,0,15,243,255,255,255,255,255,248,0,47,211,255,255,255,255,255,248,0,191,195,255,255,255,255,255,248,2,255,192,0,0,0,15,224,0,11,255,192,0,0,0,15,224,0,47,255,192,0,0,0,15,224,0,191,255,192,0,0,0,15,224,0,127,159,193,255,255,255,255,255,240,61,31,193,255,255,255,255,255,240,20,31,193,255,255,255,255,255,240,0,31,192,0,0,0,15,224,0,0,31,192,1,208,0,15,224,0,0,31,192,11,240,0,15,224,0,0,31,192,3,252,0,15,224,0,0,31,192,2,254,0,15,224,0,0,31,192,0,255,0,15,224,0,0,31,192,0,63,192,15,224,0,0,31,192,0,47,192,15,224,0,0,31,192,0,14,0,15,224,0,0,31,192,0,0,16,31,224,0,0,31,192,0,0,63,255,208,0,0,31,192,0,0,47,255,192,0,0,31,192,0,0,15,254,0,0, + // 0x5faa 循 + 170,95,35,35,59,37,1,253,0,1,128,0,0,0,0,0,0,0,3,248,0,0,0,6,253,0,0,15,240,0,0,91,255,255,64,0,63,208,126,255,255,255,249,0,0,191,64,127,255,255,253,0,0,2,254,0,127,250,82,248,0,0,11,248,0,127,0,2,248,0,0,63,224,0,126,0,2,248,0,0,127,128,144,126,0,2,248,0,0,45,1,253,127,255,255,255,255,244,4,3,252,127,255,255,255,255,244,0,11,240,127,255,255,255,255,244,0,31,224,126,0,3,244,0,0,0,63,192,126,0,3,240,0,0,0,255,128,126,0,3,240,0,0,3,255,128,126,31,255,255,255,128,31,255,128,126,31,255,255,255,192,127,255,128,126,31,255,255,255,192,255,175,128,190,31,128,0,31,192,62,47,128,190,31,128,0,31,192,40,47,128,189,31,149,85,111,192,0,47,128,253,31,255,255,255,192,0,47,128,253,31,255,255,255,192,0,47,128,252,31,128,0,31,192,0,47,128,252,31,128,0,31,192,0,47,129,252,31,128,0,31,192,0,47,130,248,31,255,255,255,192,0,47,130,248,31,255,255,255,192,0,47,131,244,31,149,85,111,192,0,47,135,240,31,128,0,31,192,0,47,139,240,31,128,0,31,192,0,47,143,208,31,255,255,255,192,0,47,159,192,31,255,255,255,192,0,47,131,128,31,149,85,111,192,0,47,128,0,31,128,0,10,128, + // 0x5fae 微 + 174,95,35,35,59,37,1,253,0,14,0,11,192,0,58,0,0,0,47,192,11,192,0,63,0,0,0,127,64,11,192,0,127,0,0,0,255,15,11,194,224,190,0,0,3,252,15,11,194,240,253,0,0,15,244,15,11,194,240,252,0,0,63,208,15,11,194,240,252,0,0,191,64,15,11,194,241,255,255,244,61,7,223,11,194,243,255,255,244,20,15,239,11,194,243,255,255,244,0,47,207,255,255,247,240,15,192,0,63,79,255,255,255,240,15,128,0,191,15,255,255,255,240,31,128,1,254,0,0,0,47,244,31,64,3,253,0,0,0,63,248,47,64,11,253,0,0,0,191,248,47,0,31,253,0,0,0,60,188,63,0,127,253,47,255,255,244,124,63,0,255,253,47,255,255,240,61,62,0,189,189,47,255,255,240,62,125,0,56,189,1,244,63,0,63,188,0,16,189,1,244,63,0,47,252,0,0,189,1,244,63,0,15,248,0,0,189,1,244,63,0,15,240,0,0,189,2,244,63,0,11,240,0,0,189,2,240,63,0,15,240,0,0,189,3,240,63,188,47,244,0,0,189,7,240,63,253,127,252,0,0,189,11,208,255,248,255,254,0,0,189,15,192,255,66,252,127,64,0,189,63,128,96,11,244,63,208,0,189,191,0,0,63,224,15,244,0,189,61,0,0,191,128,7,248,0,189,8,0,0,62,0,1,240,0,189,0,0,0,4,0,0,64, + // 0x5fc3 心 + 195,95,35,35,59,37,1,253,0,0,0,80,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,1,255,255,0,0,0,0,0,0,0,11,255,224,0,0,0,0,0,0,0,191,254,0,0,0,0,0,0,0,15,255,192,0,0,0,0,0,0,1,255,64,0,0,0,0,0,0,0,46,0,0,0,0,0,0,0,0,4,0,0,0,0,0,5,80,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,2,64,0,0,64,15,240,0,0,31,192,0,0,252,15,240,0,0,31,240,0,1,252,15,240,0,0,11,248,0,1,252,15,240,0,0,3,252,0,2,252,15,240,0,0,1,254,0,3,248,15,240,0,0,0,255,0,3,244,15,240,0,0,0,127,128,7,240,15,240,0,0,0,63,192,11,240,15,240,0,0,0,31,224,15,240,15,240,0,0,0,15,240,31,208,15,240,0,0,0,11,244,63,192,15,240,0,0,116,7,248,127,192,15,240,0,0,127,3,252,255,64,15,240,0,0,127,2,224,47,0,15,240,0,0,190,0,0,4,0,15,240,0,0,190,0,0,0,0,11,240,0,0,253,0,0,0,0,11,244,0,2,252,0,0,0,0,7,255,255,255,252,0,0,0,0,3,255,255,255,244,0,0,0,0,0,191,255,255,208,0,0,0,0,0,0,0,0,0,0,0, + // 0x5ffd 忽 + 253,95,34,35,59,37,2,253,0,0,57,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,11,255,255,255,255,255,244,0,0,31,255,255,255,255,255,244,0,0,127,255,255,255,255,255,244,0,1,255,64,255,1,253,7,240,0,7,253,2,252,2,252,3,240,0,47,244,7,248,3,244,7,240,0,191,208,15,240,15,240,7,240,0,127,64,63,192,31,208,7,240,0,13,0,255,64,63,192,11,240,0,0,3,253,0,255,0,11,240,0,0,31,248,2,253,0,15,224,0,0,191,208,11,248,0,15,208,0,7,255,64,47,240,0,31,208,0,15,252,0,191,192,0,63,192,0,3,224,3,255,0,255,255,192,0,0,64,47,252,0,127,255,64,0,0,0,31,224,0,63,248,0,0,0,0,7,139,128,0,0,0,0,0,0,0,47,244,0,0,0,0,0,64,5,11,254,0,13,0,0,0,253,63,129,255,192,191,64,0,0,252,63,128,63,128,63,208,0,2,252,63,128,10,0,15,240,0,3,248,63,128,0,2,7,252,0,15,240,63,128,0,7,225,254,0,47,224,63,128,0,7,224,191,64,127,192,47,192,0,15,224,63,192,255,64,47,255,255,255,208,31,208,61,0,15,255,255,255,192,14,0,0,0,6,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6027 性 + 39,96,34,35,59,37,1,253,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,128,2,248,15,192,0,0,0,63,128,2,248,15,192,0,0,0,63,128,3,248,15,192,0,0,0,63,128,3,244,15,192,0,0,0,63,136,3,240,15,192,0,0,9,63,253,7,240,15,192,0,0,15,127,191,15,255,255,255,255,192,31,63,175,79,255,255,255,255,192,31,63,159,159,255,255,255,255,192,47,63,143,239,213,95,213,85,64,63,63,139,255,64,15,192,0,0,62,63,129,191,0,15,192,0,0,62,63,128,255,0,15,192,0,0,125,63,128,253,0,15,192,0,0,188,63,128,44,0,15,192,0,0,188,63,128,0,0,15,192,0,0,0,63,128,0,0,31,208,0,0,0,63,128,15,255,255,255,255,64,0,63,128,15,255,255,255,255,64,0,63,128,15,255,255,255,255,64,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,130,255,255,255,255,255,240,0,63,130,255,255,255,255,255,240,0,63,130,255,255,255,255,255,240,0,63,128,85,85,85,85,85,80,0,42,64,0,0,0,0,0,0, + // 0x603b 总 + 59,96,34,35,59,37,2,253,0,0,20,0,0,6,0,0,0,0,1,252,0,0,15,224,0,0,0,0,255,0,0,15,240,0,0,0,0,191,64,0,47,208,0,0,0,0,63,192,0,63,192,0,0,0,0,31,224,0,191,0,0,0,0,0,15,240,0,254,0,0,0,0,0,11,144,2,253,0,0,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,64,0,0,0,127,64,0,0,127,64,0,0,0,127,64,0,0,127,64,0,0,0,127,64,0,0,127,64,0,0,0,127,64,0,0,127,64,0,0,0,127,64,0,0,127,128,0,0,0,127,64,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,0,0,2,64,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,106,15,252,0,2,192,0,7,144,191,2,255,64,15,224,0,11,240,191,0,127,208,11,244,0,15,224,191,0,31,240,3,252,0,15,208,191,0,7,192,0,254,0,47,192,191,0,1,0,64,127,64,63,192,191,0,0,0,248,63,192,127,64,191,0,0,0,252,31,208,255,0,191,64,0,2,252,15,192,125,0,127,255,255,255,248,5,0,4,0,63,255,255,255,240,0,0,0,0,11,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0, + // 0x6062 恢 + 98,96,35,35,59,37,1,253,0,63,64,15,192,0,0,0,0,0,63,64,15,192,0,0,0,0,0,63,64,15,192,0,0,0,0,0,63,64,15,192,0,0,0,0,0,63,67,255,255,255,255,255,244,0,63,67,255,255,255,255,255,244,0,63,167,255,255,255,255,255,244,9,63,252,31,192,0,0,0,0,15,63,188,15,192,0,252,0,0,31,63,126,15,192,0,252,0,0,31,63,95,15,192,0,252,0,0,31,63,79,79,192,0,252,0,0,47,63,79,79,192,0,252,2,144,62,63,75,79,199,192,252,3,240,61,63,64,15,199,192,252,7,224,124,63,64,15,203,192,252,11,208,188,63,64,15,203,192,252,15,192,116,63,64,31,207,128,252,31,128,0,63,64,31,143,65,252,47,0,0,63,64,31,159,1,252,63,0,0,63,64,47,127,2,252,125,0,0,63,64,47,93,3,253,4,0,0,63,64,63,0,3,254,0,0,0,63,64,63,0,7,255,0,0,0,63,64,127,0,15,239,64,0,0,63,64,190,0,31,143,192,0,0,63,64,253,0,63,79,208,0,0,63,64,252,0,191,7,240,0,0,63,66,252,1,253,3,252,0,0,63,67,248,7,248,1,254,0,0,63,71,240,31,240,0,191,128,0,63,79,224,191,192,0,63,244,0,63,95,194,255,64,0,15,248,0,63,75,128,252,0,0,3,240,0,63,65,0,96,0,0,0,144, + // 0x606f 息 + 111,96,35,35,59,37,1,253,0,0,0,1,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,252,0,0,0,0,0,11,255,255,255,255,255,192,0,0,11,255,255,255,255,255,192,0,0,11,250,170,170,170,191,192,0,0,11,224,0,0,0,15,192,0,0,11,224,0,0,0,15,192,0,0,11,250,170,170,170,175,192,0,0,11,255,255,255,255,255,192,0,0,11,255,255,255,255,255,192,0,0,11,224,0,0,0,15,192,0,0,11,224,0,0,0,15,192,0,0,11,250,170,170,170,175,192,0,0,11,255,255,255,255,255,192,0,0,11,255,255,255,255,255,192,0,0,11,224,0,0,0,15,192,0,0,11,224,0,0,0,15,192,0,0,11,224,0,0,0,15,192,0,0,11,255,255,255,255,255,192,0,0,11,255,255,255,255,255,192,0,0,6,170,170,170,170,170,128,0,0,0,0,2,208,0,0,0,0,0,0,0,15,244,0,0,0,0,0,80,0,3,253,0,2,192,0,0,190,15,208,255,64,15,240,0,0,253,15,208,63,208,15,252,0,1,252,15,208,15,208,3,254,0,3,248,15,208,7,0,0,255,64,11,240,15,208,0,2,224,63,208,31,240,15,208,0,3,244,31,240,127,192,15,224,0,7,244,11,244,63,64,15,255,255,255,240,3,244,6,0,7,255,255,255,224,1,128,0,0,1,191,255,255,64,0,0, + // 0x611f 感 + 31,97,35,35,59,37,1,253,0,0,0,0,3,240,61,0,0,0,0,0,0,3,244,191,208,0,0,0,0,0,3,244,47,248,0,0,0,0,0,3,244,2,244,0,1,255,255,255,255,255,255,255,224,1,255,255,255,255,255,255,255,224,1,255,255,255,255,255,255,255,208,1,252,0,0,0,252,0,0,0,1,252,85,85,84,253,1,144,0,1,252,255,255,252,190,3,248,0,1,252,255,255,252,190,7,240,0,1,248,0,0,0,127,11,240,0,1,248,0,0,0,63,79,208,0,2,248,21,85,80,47,175,192,0,2,244,191,255,248,31,255,64,0,3,244,191,255,248,15,255,0,0,3,240,188,1,248,11,252,0,64,7,240,188,1,248,11,248,0,240,11,224,188,1,248,63,252,0,248,15,208,191,255,249,255,255,1,244,31,192,191,255,255,254,63,211,240,63,128,21,86,87,248,31,255,240,191,0,0,11,128,208,7,255,208,46,0,0,47,244,0,0,191,64,8,0,5,75,254,0,1,128,0,0,61,15,208,255,192,15,224,0,0,127,15,208,47,128,15,248,0,0,254,15,208,10,1,3,254,0,1,253,15,208,0,2,224,255,64,3,252,15,208,0,3,244,63,192,15,240,15,224,0,3,240,31,240,63,224,15,255,255,255,240,11,244,47,128,7,255,255,255,208,3,208,2,0,1,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x620f 戏 + 15,98,35,36,68,37,1,252,0,0,0,0,3,244,2,0,0,0,0,0,0,3,248,31,192,0,0,0,0,0,3,248,47,240,0,0,0,0,0,3,248,7,252,0,63,255,255,248,3,248,1,255,0,63,255,255,252,3,252,0,191,0,63,255,255,248,2,252,0,40,0,0,0,3,244,2,252,0,0,0,0,0,3,244,2,252,0,22,144,2,0,7,240,2,254,191,255,224,15,128,7,242,255,255,255,255,240,47,208,11,227,255,255,255,254,144,15,240,15,227,255,255,148,0,0,3,248,31,194,149,253,0,0,0,2,253,47,192,0,253,0,62,0,0,255,63,128,0,254,0,63,64,0,63,255,64,0,254,0,191,0,0,31,255,0,0,191,0,254,0,0,15,254,0,0,191,2,252,0,0,3,253,0,0,127,7,248,0,0,3,254,0,0,127,79,240,0,0,11,255,64,0,63,175,208,0,0,15,255,192,0,63,255,128,0,0,47,255,224,0,47,255,0,0,0,127,207,240,0,31,253,0,0,0,255,71,252,0,15,248,2,64,3,254,2,253,0,63,240,2,240,15,252,0,248,0,255,248,3,244,63,240,0,160,3,255,252,3,240,191,208,0,0,31,255,255,3,240,47,64,0,0,255,240,255,219,224,13,0,0,3,255,192,191,255,208,0,0,0,0,253,0,47,255,192,0,0,0,0,32,0,11,255,128,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,0,0, + // 0x6210 成 + 16,98,35,36,68,37,1,252,0,0,0,0,7,240,40,0,0,0,0,0,0,7,244,191,64,0,0,0,0,0,7,244,191,240,0,0,0,0,0,7,244,15,253,0,0,0,0,0,7,244,2,254,0,0,0,0,0,3,244,0,60,0,1,255,255,255,255,255,255,255,240,1,255,255,255,255,255,255,255,240,1,255,255,255,255,255,255,255,240,1,253,85,85,87,249,85,85,80,1,252,0,0,3,248,0,0,0,1,252,0,0,3,252,0,0,0,1,252,0,0,2,252,0,185,0,1,252,0,0,2,252,0,255,0,1,255,255,255,65,252,1,253,0,1,255,255,255,65,252,3,252,0,1,255,255,255,64,253,3,248,0,1,253,0,63,64,254,11,240,0,1,252,0,63,64,255,15,224,0,1,252,0,63,64,191,47,208,0,2,252,0,63,64,127,127,128,0,2,252,0,63,64,127,255,0,0,2,252,0,63,0,63,253,0,0,3,252,0,63,0,47,252,0,0,3,248,0,127,0,31,240,1,64,3,248,0,191,0,63,224,2,224,7,244,255,255,0,255,240,2,244,11,240,191,253,3,255,244,3,244,15,240,191,244,15,255,252,3,240,15,224,0,0,127,241,254,3,240,47,208,0,2,255,208,255,139,240,63,192,0,15,255,64,127,255,208,127,128,0,11,252,0,31,255,192,47,0,0,3,224,0,7,255,64,6,0,0,0,64,0,0,84,0,0,0,0,0,0,0,0,0,0, + // 0x6237 户 + 55,98,31,36,32,37,1,252,0,0,0,1,184,0,0,0,0,0,0,2,252,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,127,64,0,0,0,63,255,255,255,255,255,244,0,63,255,255,255,255,255,244,0,63,255,255,255,255,255,244,0,63,128,0,0,0,3,244,0,63,128,0,0,0,3,244,0,63,128,0,0,0,3,244,0,63,128,0,0,0,3,244,0,63,128,0,0,0,3,244,0,63,128,0,0,0,3,244,0,63,128,0,0,0,3,244,0,63,255,255,255,255,255,244,0,63,255,255,255,255,255,244,0,63,255,255,255,255,255,244,0,63,64,0,0,0,7,244,0,127,0,0,0,0,3,244,0,127,0,0,0,0,1,80,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,253,0,0,0,0,0,0,1,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,248,0,0,0,0,0,0,11,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,47,208,0,0,0,0,0,0,127,192,0,0,0,0,0,0,63,64,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6240 所 + 64,98,35,34,50,37,1,253,0,0,0,0,0,0,0,111,64,47,255,255,255,208,0,7,255,208,47,255,255,255,209,2,255,255,208,47,255,255,255,215,255,255,248,0,0,0,0,0,7,255,254,64,0,0,0,0,0,7,255,64,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,7,255,255,255,71,240,0,0,0,7,255,255,255,71,240,0,0,0,7,255,255,255,71,240,0,0,0,7,240,0,63,71,240,0,0,0,7,240,0,63,71,255,255,255,248,7,240,0,63,71,255,255,255,248,7,240,0,63,71,255,255,255,248,7,240,0,63,71,245,86,253,80,7,240,0,63,71,240,2,252,0,7,255,255,255,71,240,2,252,0,7,255,255,255,75,240,2,252,0,7,255,255,255,79,224,2,252,0,7,240,0,0,15,224,2,252,0,11,224,0,0,15,208,2,252,0,11,224,0,0,15,192,2,252,0,11,224,0,0,47,192,2,252,0,15,208,0,0,63,128,2,252,0,15,208,0,0,63,64,2,252,0,15,192,0,0,191,0,2,252,0,31,192,0,0,254,0,2,252,0,47,128,0,2,252,0,2,252,0,63,64,0,7,248,0,2,252,0,191,0,0,15,240,0,2,252,0,254,0,0,47,224,0,2,252,0,125,0,0,11,128,0,2,252,0,8,0,0,2,0,0,1,252,0, + // 0x6247 扇 + 71,98,33,33,41,37,1,253,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,252,0,0,191,255,255,255,255,255,252,0,0,191,170,170,170,170,170,252,0,0,190,0,0,0,0,0,252,0,0,190,0,0,0,0,0,252,0,0,191,170,170,170,170,170,252,0,0,191,255,255,255,255,255,252,0,0,191,255,255,255,255,255,252,0,0,190,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,170,170,164,170,170,169,0,0,253,255,255,248,255,255,254,0,0,253,255,255,248,255,255,254,0,0,253,4,2,248,4,0,126,0,0,252,46,2,248,47,0,126,0,1,252,63,130,248,47,192,126,0,1,252,15,210,248,11,240,126,0,2,252,7,242,248,3,240,126,0,3,248,2,130,248,0,128,126,0,7,244,0,22,248,0,26,126,0,11,240,2,250,248,2,254,126,0,15,224,127,254,248,111,254,126,0,31,211,255,210,249,255,224,126,0,63,195,253,2,248,253,0,126,0,127,130,208,2,248,144,0,190,0,255,0,0,171,244,0,59,254,0,45,0,0,255,240,0,63,253,0,4,0,0,191,144,0,31,228,0, + // 0x624b 手 + 75,98,33,36,68,37,2,252,0,0,0,0,0,0,110,0,0,0,0,0,0,6,191,255,128,0,0,5,106,255,255,255,255,208,0,11,255,255,255,255,255,233,0,0,7,255,255,255,254,148,0,0,0,3,255,170,87,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,1,85,85,87,249,85,85,84,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,85,85,85,91,249,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,1,85,91,244,0,0,0,0,0,2,255,255,240,0,0,0,0,0,0,255,255,224,0,0,0,0,0,0,255,254,64,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6253 打 + 83,98,34,35,59,37,2,253,0,63,64,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,31,255,255,255,255,224,0,63,128,31,255,255,255,255,224,0,63,128,31,255,255,255,255,224,0,63,128,5,85,86,254,85,64,0,63,128,0,0,1,252,0,0,255,255,255,192,0,1,252,0,0,255,255,255,192,0,1,252,0,0,255,255,255,192,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,135,208,0,1,252,0,0,0,63,255,208,0,1,252,0,0,1,191,255,224,0,1,252,0,0,191,255,255,144,0,1,252,0,0,255,255,208,0,0,1,252,0,0,255,255,128,0,0,1,252,0,0,180,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,2,252,0,0,63,255,64,0,63,255,252,0,0,47,255,0,0,63,255,252,0,0,31,248,0,0,31,255,240,0,0,0,0,0,0,10,169,0,0,0, + // 0x6267 执 + 103,98,35,36,68,37,1,252,0,47,64,0,15,208,0,0,0,0,63,64,0,15,208,0,0,0,0,63,64,0,15,208,0,0,0,0,63,64,0,15,208,0,0,0,0,63,64,0,15,208,0,0,0,0,63,64,0,15,208,0,0,0,0,63,64,0,15,208,0,0,0,0,63,128,0,15,224,0,0,0,63,255,255,63,255,255,255,224,0,63,255,255,63,255,255,255,224,0,63,255,255,63,255,255,255,224,0,0,63,64,0,15,208,15,224,0,0,63,64,0,15,192,15,208,0,0,63,64,0,15,192,15,208,0,0,63,64,0,15,192,15,208,0,0,63,64,4,31,192,15,208,0,0,63,70,31,95,192,15,208,0,0,63,255,127,255,192,15,208,0,0,127,255,111,255,128,15,208,0,27,255,255,67,255,208,15,208,0,191,255,224,0,127,248,15,208,0,127,255,64,0,127,255,79,208,0,62,63,64,0,191,255,239,208,0,0,63,64,0,254,47,239,208,0,0,63,64,1,252,7,207,208,0,0,63,64,3,252,1,79,208,0,0,63,64,7,248,0,15,208,0,0,63,64,15,240,0,11,208,192,0,63,64,47,224,0,11,224,244,0,63,64,127,192,0,7,225,248,0,63,65,255,64,0,3,241,244,5,127,75,254,0,0,3,251,240,31,255,95,252,0,0,2,255,240,15,255,11,224,0,0,0,255,208,15,244,3,128,0,0,0,63,64,0,0,0,0,0,0,0,0,0, + // 0x6279 批 + 121,98,35,35,59,37,1,253,0,63,0,5,64,1,164,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,127,255,255,47,192,2,248,0,0,127,255,255,47,192,2,248,2,0,127,255,255,47,192,2,248,11,192,0,63,0,47,192,2,248,63,240,0,63,0,47,255,242,249,255,192,0,63,0,47,255,242,255,254,0,0,63,0,47,255,242,255,244,0,0,63,0,47,213,82,255,128,0,0,63,94,47,192,2,252,0,0,0,63,254,47,192,2,248,0,0,6,255,255,47,192,2,248,0,0,191,255,249,47,192,2,248,0,0,191,255,64,47,192,2,248,0,0,127,127,0,47,192,2,248,0,0,16,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,1,208,0,63,0,47,192,2,248,1,248,0,63,0,47,192,98,248,2,248,0,63,0,47,219,242,248,2,244,0,63,10,255,255,246,252,3,240,0,127,15,255,255,225,255,255,240,47,255,11,255,144,0,255,255,224,31,254,3,144,0,0,127,255,128,15,228,0,0,0,0,0,0,0, + // 0x6296 抖 + 150,98,35,36,68,37,1,252,0,31,192,0,0,0,15,208,0,0,31,192,0,0,0,15,224,0,0,31,192,0,0,0,15,224,0,0,31,192,0,45,0,15,224,0,0,31,192,0,127,192,15,224,0,0,31,192,0,127,244,15,224,0,0,31,192,0,11,254,15,224,0,0,31,192,0,1,255,79,224,0,63,255,255,208,0,63,15,224,0,63,255,255,208,0,12,15,224,0,63,255,255,208,0,0,15,224,0,0,31,192,0,0,0,15,224,0,0,31,192,0,128,0,15,224,0,0,31,192,2,248,0,15,224,0,0,31,192,7,255,128,15,224,0,0,31,192,1,255,240,15,224,0,0,31,192,64,31,252,15,224,0,0,31,223,208,3,244,15,224,0,0,47,255,224,0,176,15,224,0,27,255,255,224,0,0,15,224,0,127,255,249,0,0,0,15,224,0,63,255,192,0,0,0,15,251,244,63,111,192,0,0,6,191,255,244,0,31,192,0,107,255,255,255,248,0,31,192,47,255,255,255,250,64,0,31,192,31,255,255,175,224,0,0,31,192,31,250,64,15,224,0,0,31,192,5,0,0,15,224,0,0,31,192,0,0,0,15,224,0,0,31,192,0,0,0,15,224,0,0,31,192,0,0,0,15,224,0,0,47,192,0,0,0,15,224,0,31,255,192,0,0,0,15,224,0,15,255,64,0,0,0,15,224,0,15,249,0,0,0,0,15,224,0,0,0,0,0,0,0,0,0,0, + // 0x62a5 报 + 165,98,34,36,68,37,1,252,0,10,128,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,7,255,255,255,255,64,0,31,192,7,255,255,255,255,64,0,31,192,7,255,255,255,255,0,0,31,192,7,240,0,0,127,0,0,31,192,7,240,0,0,127,0,21,111,213,71,240,0,0,191,0,63,255,255,199,240,0,0,255,0,63,255,255,199,240,46,170,254,0,63,255,255,199,240,15,255,252,0,0,31,192,7,240,15,255,240,0,0,31,192,7,240,0,0,0,0,0,31,192,7,240,0,0,0,0,0,31,192,7,255,255,255,255,128,0,31,192,7,255,255,255,255,192,0,31,214,199,255,255,255,255,192,0,31,255,199,247,240,0,63,128,6,255,255,215,243,248,0,63,64,191,255,255,135,241,252,0,127,0,127,255,224,7,240,253,0,255,0,63,255,192,7,240,191,0,253,0,57,31,192,7,240,63,130,252,0,0,31,192,7,240,47,195,248,0,0,31,192,7,240,15,255,240,0,0,31,192,7,240,7,255,224,0,0,31,192,7,240,3,255,192,0,0,31,192,7,240,1,255,128,0,0,31,192,7,240,3,255,208,0,0,31,192,7,240,15,255,248,0,0,31,192,7,240,63,255,254,0,16,47,192,7,242,255,194,255,224,63,255,192,7,255,255,0,191,240,47,255,128,7,247,248,0,31,208,31,249,0,7,242,192,0,2,128,0,0,0,0,0,0,0,0,0, + // 0x62ac 抬 + 172,98,35,36,68,37,1,252,0,31,192,0,0,228,0,0,0,0,31,192,0,1,254,0,0,0,0,31,192,0,3,252,0,0,0,0,31,192,0,3,252,0,0,0,0,31,192,0,7,244,0,0,0,0,31,192,0,11,240,0,0,0,0,31,192,0,15,224,1,64,0,0,31,192,0,31,208,15,208,0,127,255,255,192,47,192,15,240,0,127,255,255,192,63,64,7,248,0,127,255,255,192,127,0,1,253,0,0,31,192,0,254,0,0,191,0,0,31,192,1,254,106,191,255,192,0,31,192,127,255,255,255,255,208,0,31,192,127,255,255,255,255,240,0,31,192,63,255,250,149,71,248,0,31,193,165,0,0,0,3,248,0,31,239,208,0,0,0,1,192,0,47,255,208,0,0,0,0,0,27,255,255,208,0,0,0,0,0,191,255,249,3,255,255,255,255,0,127,255,192,3,255,255,255,255,0,62,95,192,3,255,255,255,255,0,0,31,192,3,240,0,0,191,0,0,31,192,3,240,0,0,191,0,0,31,192,3,240,0,0,191,0,0,31,192,3,240,0,0,191,0,0,31,192,3,240,0,0,191,0,0,31,192,3,240,0,0,191,0,0,31,192,3,240,0,0,191,0,0,31,192,3,255,255,255,255,0,0,31,192,3,255,255,255,255,0,31,255,192,3,255,255,255,255,0,15,255,128,3,240,0,0,191,0,11,253,0,3,240,0,0,106,0,0,0,0,0,0,0,0,0,0, + // 0x62bd 抽 + 189,98,34,36,68,37,1,252,0,31,128,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,127,255,255,133,85,95,213,85,64,127,255,255,159,255,255,255,255,240,127,255,255,159,255,255,255,255,240,0,47,192,31,255,255,255,255,240,0,47,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,95,192,15,192,11,240,0,47,239,159,192,15,192,11,240,0,47,255,223,192,15,208,11,240,27,255,255,223,255,255,255,255,240,191,255,248,31,255,255,255,255,240,127,255,192,31,255,255,255,255,240,62,111,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,31,213,95,213,95,240,0,47,192,31,255,255,255,255,240,0,47,192,31,255,255,255,255,240,0,47,128,31,255,255,255,255,240,47,255,128,31,192,0,0,11,240,15,255,64,31,192,0,0,11,240,15,249,0,15,192,0,0,6,144,0,0,0,0,0,0,0,0,0, + // 0x62d4 拔 + 212,98,35,36,68,37,1,252,0,31,128,0,11,208,4,0,0,0,47,192,0,15,224,47,64,0,0,47,192,0,15,208,63,224,0,0,47,192,0,15,208,15,253,0,0,47,192,0,15,208,2,255,128,0,47,192,0,15,208,0,127,128,0,47,192,0,15,208,0,15,0,0,47,192,0,15,208,0,0,0,127,255,255,191,255,255,255,255,240,127,255,255,191,255,255,255,255,240,106,191,234,127,255,255,255,255,240,0,47,192,0,15,208,0,0,0,0,47,192,0,15,208,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,240,0,253,0,0,47,192,0,47,240,0,253,0,0,47,193,64,47,244,1,252,0,0,47,255,128,63,248,2,252,0,0,127,255,192,63,252,2,248,0,111,255,255,128,127,253,3,244,0,191,255,228,0,191,127,7,240,0,127,255,192,0,254,63,75,240,0,62,47,192,0,253,47,207,208,0,0,47,192,1,252,15,239,192,0,0,47,192,2,252,11,255,128,0,0,47,192,3,244,3,255,0,0,0,47,192,11,240,2,254,0,0,0,47,192,15,224,3,255,64,0,0,47,192,47,192,11,255,208,0,0,47,192,127,128,47,255,244,0,0,47,192,255,0,191,199,254,0,0,47,131,253,3,255,1,255,208,47,255,143,248,31,252,0,127,248,15,255,71,240,15,240,0,11,240,15,249,1,192,3,128,0,1,192,0,0,0,0,0,0,0,0,0, + // 0x62e9 择 + 233,98,35,36,68,37,1,252,0,47,128,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,47,128,15,255,255,255,254,0,0,47,128,15,255,255,255,255,64,0,47,128,15,255,255,255,255,0,0,47,128,0,190,0,1,253,0,0,47,128,0,63,64,7,248,0,0,47,128,0,31,192,15,240,0,63,255,255,192,15,240,63,192,0,63,255,255,192,3,253,255,64,0,63,255,255,192,0,255,253,0,0,0,47,128,0,0,191,244,0,0,0,47,128,0,7,255,255,64,0,0,47,128,0,191,253,255,244,0,0,47,128,111,255,208,31,255,228,0,47,128,191,253,0,2,255,244,0,47,155,127,64,31,192,27,224,0,47,255,128,0,31,192,0,64,6,255,255,128,0,31,192,0,0,191,255,249,11,255,255,255,255,0,127,255,128,11,255,255,255,255,0,63,127,128,11,255,255,255,255,0,16,47,128,0,0,31,192,0,0,0,47,128,0,0,31,192,0,0,0,47,128,0,0,31,192,0,0,0,47,128,0,0,31,192,0,0,0,47,128,127,255,255,255,255,244,0,47,128,127,255,255,255,255,244,0,47,128,127,255,255,255,255,244,0,47,128,0,0,31,192,0,0,0,47,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,31,255,128,0,0,31,192,0,0,15,255,0,0,0,31,192,0,0,11,248,0,0,0,31,192,0,0,0,0,0,0,0,0,0,0,0, + // 0x6309 按 + 9,99,35,36,68,37,1,252,0,31,128,0,0,31,192,0,0,0,47,192,0,0,31,192,0,0,0,47,192,0,0,31,192,0,0,0,47,192,0,0,31,192,0,0,0,47,192,0,0,31,192,0,0,0,47,192,63,255,255,255,255,240,0,47,192,63,255,255,255,255,240,0,47,192,63,255,255,255,255,240,127,255,255,191,128,0,0,7,240,127,255,255,191,64,0,0,7,240,127,255,255,191,64,254,0,7,240,0,47,192,63,64,253,0,7,240,0,47,192,21,2,252,0,1,80,0,47,192,0,3,248,0,0,0,0,47,192,0,3,244,0,0,0,0,47,192,63,255,255,255,255,248,0,47,193,191,255,255,255,255,248,0,47,255,255,255,255,255,255,248,1,191,255,192,47,192,2,252,0,127,255,255,128,63,128,3,248,0,191,255,208,0,127,0,3,248,0,127,255,192,0,191,0,7,240,0,57,47,192,0,254,0,15,240,0,0,47,192,1,254,0,31,224,0,0,47,192,2,255,244,63,192,0,0,47,192,3,255,255,191,128,0,0,47,192,2,247,255,255,0,0,0,47,192,0,0,127,255,64,0,0,47,192,0,0,31,255,224,0,0,47,192,0,0,191,255,253,0,0,47,192,0,27,255,75,255,128,0,47,128,22,255,252,1,255,224,47,255,128,255,255,208,0,47,240,15,255,64,127,249,0,0,7,208,15,249,0,62,64,0,0,1,128,0,0,0,0,0,0,0,0,0, + // 0x6321 挡 + 33,99,33,36,68,37,1,252,0,47,128,0,0,10,128,0,0,0,47,128,0,0,15,192,0,0,0,47,128,0,0,15,192,0,0,0,47,128,11,192,15,192,15,128,0,47,128,15,208,15,192,31,192,0,47,128,11,224,15,192,47,192,0,47,128,7,240,15,192,63,64,0,63,192,3,244,15,192,127,0,63,255,255,194,248,15,192,190,0,63,255,255,193,252,15,192,253,0,63,255,255,192,253,15,193,252,0,0,47,128,0,184,15,195,244,0,0,47,128,0,0,15,192,96,0,0,47,128,0,0,15,192,0,0,0,47,128,31,255,255,255,255,192,0,47,128,31,255,255,255,255,192,0,47,130,95,255,255,255,255,192,0,47,255,133,85,85,85,111,192,0,127,255,192,0,0,0,47,192,47,255,255,192,0,0,0,47,192,191,255,248,0,0,0,0,47,192,127,255,128,0,0,0,0,47,192,127,127,128,15,255,255,255,255,192,16,47,128,15,255,255,255,255,192,0,47,128,15,255,255,255,255,192,0,47,128,0,0,0,0,47,192,0,47,128,0,0,0,0,47,192,0,47,128,0,0,0,0,47,192,0,47,128,0,0,0,0,47,192,0,47,128,127,255,255,255,255,192,0,47,128,127,255,255,255,255,192,0,63,128,127,255,255,255,255,192,47,255,128,21,85,85,85,111,192,15,255,0,0,0,0,0,47,192,15,248,0,0,0,0,0,5,64,0,0,0,0,0,0,0,0,0, + // 0x6324 挤 + 36,99,35,35,59,37,1,253,0,127,0,0,0,108,0,0,0,0,127,0,0,0,254,0,0,0,0,127,0,0,0,191,0,0,0,0,127,0,0,0,63,128,0,0,0,127,0,255,255,255,255,255,240,0,127,0,255,255,255,255,255,240,0,127,0,255,255,255,255,255,240,0,127,0,1,252,0,7,244,0,63,255,253,0,253,0,15,240,0,63,255,253,0,127,0,31,208,0,63,255,253,0,63,192,63,192,0,0,127,0,0,15,240,255,0,0,0,127,0,0,7,255,253,0,0,0,127,0,0,1,255,244,0,0,0,127,0,0,2,255,249,0,0,0,127,0,0,191,255,255,228,0,0,127,108,191,255,246,255,255,244,0,127,252,255,254,64,47,255,240,0,191,252,191,224,0,1,191,224,47,255,248,36,85,0,5,64,64,127,255,64,0,254,0,15,208,0,63,255,0,0,254,0,15,208,0,57,127,0,0,254,0,15,208,0,0,127,0,0,254,0,15,208,0,0,127,0,0,254,0,15,208,0,0,127,0,0,253,0,15,208,0,0,127,0,0,253,0,15,208,0,0,127,0,2,252,0,15,208,0,0,127,0,3,248,0,15,208,0,0,127,0,15,244,0,15,208,0,0,127,0,63,224,0,15,208,0,63,255,2,255,192,0,15,208,0,31,254,7,254,0,0,15,208,0,15,248,0,244,0,0,15,208,0,5,0,0,0,0,0,5,64,0, + // 0x635f 损 + 95,99,35,36,68,37,1,252,0,63,64,0,0,0,0,0,0,0,63,64,2,170,170,170,168,0,0,63,64,3,255,255,255,252,0,0,63,64,3,255,255,255,252,0,0,63,64,3,244,0,1,252,0,0,63,64,3,244,0,1,252,0,0,63,64,3,244,0,1,252,0,0,63,64,3,244,0,1,252,0,127,255,255,67,250,170,171,252,0,127,255,255,67,255,255,255,252,0,127,255,255,67,255,255,255,252,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,10,170,170,170,170,0,0,63,64,15,255,255,255,255,0,0,63,64,15,255,255,255,255,0,0,63,64,15,192,0,0,63,0,0,63,175,79,192,0,0,63,0,0,63,255,143,192,21,64,63,0,6,255,255,143,192,47,128,63,0,191,255,248,15,192,47,128,63,0,191,255,128,15,192,47,128,63,0,127,191,64,15,192,47,128,63,0,32,63,64,15,192,63,128,63,0,0,63,64,15,192,63,128,63,0,0,63,64,15,192,63,64,63,0,0,63,64,15,192,191,0,63,0,0,63,64,5,65,254,8,0,0,0,63,64,0,11,252,47,64,0,0,63,64,0,63,244,127,224,0,0,63,64,2,255,208,31,253,0,21,127,64,127,255,0,2,255,128,47,255,3,255,248,0,0,127,244,31,254,1,255,128,0,0,15,240,15,228,0,164,0,0,0,2,208,0,0,0,0,0,0,0,0,0, + // 0x6362 换 + 98,99,35,36,68,37,1,252,0,63,0,0,11,160,0,0,0,0,63,0,0,15,224,0,0,0,0,63,0,0,47,192,0,0,0,0,63,0,0,63,255,255,224,0,0,63,0,0,255,255,255,248,0,0,63,0,2,255,255,255,244,0,0,63,0,7,248,0,31,224,0,0,127,64,15,240,0,63,192,0,63,255,253,63,192,0,191,0,0,63,255,254,255,234,171,255,170,0,63,255,254,255,255,255,255,255,0,0,63,0,63,255,255,255,255,0,0,63,0,31,192,47,128,191,0,0,63,0,15,192,47,128,191,0,0,63,0,15,192,47,128,191,0,0,63,0,15,192,47,128,191,0,0,63,0,15,192,47,128,191,0,0,63,174,15,192,47,128,191,0,0,127,255,15,192,47,128,191,0,27,255,255,15,192,63,64,191,0,191,255,228,15,192,63,64,191,0,127,255,2,255,255,255,255,255,240,62,127,2,255,255,255,255,255,240,0,63,2,255,255,255,255,255,240,0,63,0,0,1,255,192,0,0,0,63,0,0,3,255,240,0,0,0,63,0,0,11,247,248,0,0,0,63,0,0,47,225,253,0,0,0,63,0,0,191,192,191,64,0,0,63,0,3,255,0,63,224,0,0,63,0,31,252,0,15,253,0,5,191,0,191,224,0,3,255,144,31,255,11,255,64,0,0,191,248,15,254,11,248,0,0,0,31,240,15,228,3,208,0,0,0,1,192,0,0,0,0,0,0,0,0,0, + // 0x6389 掉 + 137,99,35,36,68,37,1,252,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,255,255,240,0,63,64,0,0,63,255,255,240,0,63,64,0,0,63,255,255,240,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,127,255,255,0,0,63,64,0,0,127,255,255,63,255,255,255,255,0,127,255,255,63,255,255,255,255,0,0,63,64,63,234,170,170,255,0,0,63,64,63,64,0,0,63,0,0,63,64,63,64,0,0,63,0,0,63,64,63,170,170,170,191,0,0,63,64,63,255,255,255,255,0,0,63,91,63,255,255,255,255,0,0,63,255,63,64,0,0,63,0,1,191,255,63,64,0,0,63,0,111,255,255,63,64,0,0,63,0,127,255,208,63,234,170,170,191,0,63,255,64,63,255,255,255,255,0,57,63,64,63,255,255,255,255,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,67,255,255,255,255,255,244,0,63,67,255,255,255,255,255,244,0,63,67,255,255,255,255,255,244,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,127,64,0,0,63,64,0,0,63,255,0,0,0,63,64,0,0,63,255,0,0,0,63,64,0,0,47,248,0,0,0,63,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x63a2 探 + 162,99,35,35,59,37,1,253,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,63,255,255,255,255,224,0,63,0,63,255,255,255,255,240,0,63,0,63,255,255,255,255,240,0,63,0,62,0,0,0,7,240,0,63,0,62,11,224,189,7,240,0,63,0,62,11,208,189,7,240,127,255,255,62,15,208,189,3,224,127,255,255,0,15,192,189,0,0,127,255,255,0,31,192,189,0,128,0,63,0,0,63,128,189,1,244,0,63,0,0,255,0,190,1,244,0,63,0,7,254,0,191,171,240,0,63,0,191,248,0,127,255,240,0,63,0,63,208,21,95,255,192,0,63,26,41,0,47,128,0,0,0,63,254,0,0,47,128,0,0,1,191,255,0,0,47,128,0,0,111,255,254,0,0,47,128,0,0,191,255,144,191,255,255,255,255,240,127,255,0,191,255,255,255,255,240,56,63,0,191,255,255,255,255,240,0,63,0,0,3,255,252,0,0,0,63,0,0,15,255,255,0,0,0,63,0,0,47,255,255,128,0,0,63,0,0,191,111,159,224,0,0,63,0,2,254,47,135,248,0,0,63,0,11,252,47,130,254,0,0,63,0,127,240,47,128,255,208,0,63,2,255,192,47,128,63,248,0,127,7,254,0,47,128,15,244,47,255,1,244,0,47,128,2,208,31,254,0,64,0,47,128,0,0,15,228,0,0,0,47,128,0,0, + // 0x63a5 接 + 165,99,35,36,68,37,1,252,0,31,128,0,0,47,192,0,0,0,47,192,0,0,47,192,0,0,0,47,192,0,0,47,192,0,0,0,47,192,0,0,47,192,0,0,0,47,192,63,255,255,255,255,208,0,47,192,63,255,255,255,255,208,0,47,192,63,255,255,255,255,208,0,47,192,0,190,0,7,240,0,63,255,255,0,127,0,11,224,0,63,255,255,0,63,0,15,208,0,63,255,255,0,63,64,15,192,0,0,47,192,0,47,128,47,128,0,0,47,192,0,47,128,63,64,0,0,47,193,255,255,255,255,255,244,0,47,193,255,255,255,255,255,244,0,47,193,255,255,255,255,255,244,0,47,192,0,2,252,0,0,0,0,47,239,0,3,244,0,0,0,0,127,255,0,11,240,0,0,0,111,255,255,255,255,255,255,255,244,191,255,229,255,255,255,255,255,244,191,255,192,255,255,255,255,255,244,125,47,192,0,127,0,11,240,0,0,47,192,0,254,0,15,224,0,0,47,192,1,252,0,31,192,0,0,47,192,3,252,0,63,192,0,0,47,192,7,255,208,127,64,0,0,47,192,15,255,255,255,0,0,0,47,192,1,203,255,253,0,0,0,47,192,0,0,127,255,128,0,0,47,192,0,6,255,255,248,0,5,127,128,5,191,254,47,255,64,31,255,131,255,255,228,2,255,208,15,255,2,255,253,0,0,47,192,15,248,0,249,64,0,0,7,0,0,0,0,0,0,0,0,0,0, + // 0x63a7 控 + 167,99,35,35,59,37,1,253,0,63,0,0,0,47,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,255,255,255,255,255,240,0,63,0,255,255,255,255,255,240,0,63,0,255,255,255,255,255,240,0,63,0,252,11,208,189,3,240,127,255,254,252,15,208,189,3,240,127,255,254,252,15,192,189,3,240,127,255,254,252,15,192,189,0,0,0,63,0,0,47,192,189,1,0,0,63,0,0,63,128,189,2,240,0,63,0,0,191,0,190,2,240,0,63,0,7,253,0,191,255,240,0,63,25,191,248,0,127,255,224,0,63,254,127,208,0,31,255,128,0,191,255,61,0,0,0,0,0,31,255,253,0,0,0,0,0,0,191,255,128,0,0,0,0,0,0,191,255,0,31,255,255,255,255,128,125,63,0,31,255,255,255,255,128,0,63,0,31,255,255,255,255,128,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,127,3,255,255,255,255,255,244,47,255,3,255,255,255,255,255,244,31,254,3,255,255,255,255,255,244,15,228,0,0,0,0,0,0,0, + // 0x63d0 提 + 208,99,35,35,59,37,1,253,0,42,0,0,0,0,0,0,0,0,63,0,6,170,170,170,169,0,0,63,0,15,255,255,255,255,0,0,63,0,15,255,255,255,255,0,0,63,0,15,208,0,0,127,0,0,63,0,15,208,0,0,127,0,0,63,0,15,229,85,85,191,0,127,255,255,15,255,255,255,255,0,127,255,255,15,255,255,255,255,0,127,255,255,15,208,0,0,127,0,0,127,0,15,208,0,0,127,0,0,63,0,15,234,170,170,191,0,0,63,0,15,255,255,255,255,0,0,63,0,15,255,255,255,255,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,5,127,255,255,255,255,224,0,63,254,191,255,255,255,255,240,1,191,255,191,255,255,255,255,240,127,255,254,0,0,47,128,0,0,191,255,144,1,64,47,128,0,0,127,255,0,7,224,47,128,0,0,56,63,0,11,224,47,128,0,0,0,63,0,15,208,47,255,255,0,0,63,0,15,192,47,255,255,0,0,63,0,31,208,47,234,170,0,0,63,0,47,240,47,128,0,0,0,63,0,63,248,47,128,0,0,0,63,0,191,189,47,128,0,0,0,63,0,253,63,191,128,0,0,0,63,2,252,31,255,128,0,0,63,255,11,244,7,255,255,255,248,47,254,31,224,0,255,255,255,244,31,244,7,192,0,6,255,255,240,0,0,0,0,0,0,0,0,0, + // 0x63d2 插 + 210,99,34,35,59,37,1,253,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,5,190,0,0,63,0,0,86,175,255,255,64,0,63,0,63,255,255,255,255,128,0,63,0,63,255,255,250,80,0,0,63,0,26,165,111,128,0,0,0,63,0,0,0,47,128,0,0,0,63,0,0,0,47,128,0,0,127,255,255,0,0,47,128,0,0,127,255,255,255,255,255,255,255,240,127,255,255,255,255,255,255,255,240,0,63,0,255,255,255,255,255,240,0,63,0,0,0,47,128,0,0,0,63,0,0,0,47,128,0,0,0,63,0,0,31,47,128,0,0,0,63,0,57,255,255,143,255,208,0,63,110,63,255,191,143,255,208,0,63,254,63,244,47,143,255,208,11,255,255,63,0,47,128,15,208,191,255,248,63,0,47,128,15,208,191,255,64,63,0,47,128,15,208,127,191,0,63,0,47,128,15,208,16,63,0,63,255,47,143,255,208,0,63,0,63,255,47,143,255,208,0,63,0,63,255,47,143,255,208,0,63,0,63,0,47,128,15,208,0,63,0,63,0,47,128,15,208,0,63,0,63,0,47,128,15,208,0,63,0,63,0,47,128,15,208,0,63,0,63,0,47,128,15,208,0,63,0,63,255,255,255,255,208,0,127,0,63,255,255,255,255,208,47,255,0,63,255,255,255,255,208,31,254,0,63,0,0,0,15,208,15,228,0,63,0,0,0,11,192, + // 0x6536 收 + 54,101,35,36,68,37,1,252,0,0,10,144,1,228,0,0,0,0,0,15,208,2,252,0,0,0,0,0,15,208,3,252,0,0,0,0,0,15,208,3,248,0,0,0,1,80,15,208,7,240,0,0,0,7,240,15,208,11,240,0,0,0,7,240,15,208,15,224,0,0,0,7,240,15,208,31,255,255,255,248,7,240,15,208,63,255,255,255,248,7,240,15,208,63,255,255,255,248,7,240,15,208,191,213,85,127,144,7,240,15,208,255,192,0,127,0,7,240,15,210,255,192,0,191,0,7,240,15,215,255,208,0,254,0,7,240,15,239,255,240,0,253,0,7,240,15,255,231,240,1,252,0,7,240,15,239,195,244,3,252,0,7,240,15,215,66,252,3,244,0,7,240,15,208,1,252,11,240,0,7,240,15,208,0,254,15,224,0,7,240,15,208,0,191,47,208,0,7,240,15,208,0,63,191,192,0,7,246,255,208,0,47,255,64,0,11,255,255,208,0,15,254,0,0,191,255,255,208,0,11,252,0,0,127,255,79,208,0,15,252,0,0,63,144,15,208,0,63,255,0,0,20,0,15,208,0,191,255,128,0,0,0,15,208,3,255,127,224,0,0,0,15,208,31,252,15,252,0,0,0,15,208,191,240,7,255,64,0,0,15,235,255,192,1,255,244,0,0,15,223,254,0,0,127,248,0,0,15,215,240,0,0,11,224,0,0,15,210,64,0,0,1,192,0,0,0,0,0,0,0,0,0, + // 0x653e 放 + 62,101,35,36,68,37,1,252,0,3,244,0,0,58,0,0,0,0,3,244,0,0,63,64,0,0,0,3,244,0,0,127,0,0,0,0,3,244,0,0,191,0,0,0,0,3,244,0,0,255,0,0,0,0,3,244,0,0,254,0,0,0,127,255,255,255,193,253,0,0,0,127,255,255,255,194,255,255,255,248,127,255,255,255,195,255,255,255,248,0,127,0,0,3,255,255,255,248,0,63,0,0,11,244,0,191,0,0,63,0,0,15,244,0,254,0,0,63,0,0,31,248,0,253,0,0,63,0,0,63,252,0,252,0,0,63,255,254,127,252,1,252,0,0,63,255,254,255,253,2,252,0,0,63,255,255,254,190,3,248,0,0,127,0,254,252,127,7,244,0,0,127,0,253,40,63,75,240,0,0,127,0,253,0,63,143,224,0,0,127,0,253,0,31,223,208,0,0,127,0,253,0,15,255,192,0,0,190,0,253,0,11,255,64,0,0,254,0,253,0,7,255,0,0,0,253,0,252,0,3,254,0,0,0,252,0,252,0,3,254,0,0,2,252,0,252,0,15,255,64,0,3,248,0,252,0,47,255,192,0,7,244,0,252,0,191,239,240,0,15,240,1,252,2,255,15,252,0,31,224,2,252,31,252,3,255,64,63,192,3,248,191,240,0,255,224,255,67,255,251,255,192,0,127,244,126,1,255,241,254,0,0,15,224,12,1,255,128,240,0,0,1,192,0,0,0,0,0,0,0,0,0, + // 0x6570 数 + 112,101,35,36,68,37,1,252,0,0,253,0,0,14,128,0,0,2,128,253,7,128,31,208,0,0,15,208,253,15,224,31,192,0,0,7,240,253,31,192,47,192,0,0,3,244,253,63,64,63,128,0,0,1,248,253,126,0,63,64,0,0,0,208,253,24,0,127,64,0,0,63,255,255,255,248,191,255,255,244,63,255,255,255,248,255,255,255,244,63,255,255,255,244,255,255,255,244,0,7,255,128,2,253,85,127,80,0,31,255,244,3,253,0,127,0,0,191,254,255,7,254,0,191,0,2,253,253,63,223,255,0,254,0,31,244,253,15,223,255,0,254,0,127,208,253,2,127,255,64,253,0,47,0,253,0,191,175,129,252,0,4,3,248,0,127,31,195,252,0,0,7,240,0,29,15,195,248,0,0,15,224,0,4,15,231,244,0,191,255,255,255,248,11,255,240,0,191,255,255,255,248,3,255,224,0,127,255,255,255,248,3,255,192,0,0,254,0,253,0,1,255,128,0,1,252,0,252,0,0,255,0,0,3,252,2,252,0,2,255,64,0,11,255,131,244,0,7,255,192,0,15,255,255,240,0,31,255,224,0,2,139,255,224,0,127,239,248,0,0,1,255,248,1,255,131,254,0,0,11,255,255,11,254,1,255,128,6,255,249,255,255,252,0,191,244,63,255,208,63,255,224,0,47,244,47,249,0,10,63,64,0,7,208,14,64,0,0,40,0,0,0,128,0,0,0,0,0,0,0,0,0, + // 0x6572 敲 + 114,101,35,36,68,37,1,252,0,0,252,0,0,3,244,0,0,0,0,252,0,0,3,244,0,0,0,0,252,0,0,3,244,0,0,0,0,252,0,0,3,244,0,0,63,255,255,255,244,3,244,0,0,127,255,255,255,244,3,255,255,240,127,255,255,255,244,3,255,255,240,0,0,0,0,0,3,255,255,240,0,85,85,84,0,3,244,0,0,1,255,255,253,0,3,244,0,0,1,255,255,253,0,3,244,0,0,1,248,0,189,0,3,244,0,0,1,248,0,189,0,3,244,0,0,1,248,0,189,31,255,255,255,192,1,255,255,253,31,255,255,255,192,1,255,255,253,31,255,255,255,192,0,85,85,84,0,96,0,63,128,0,0,0,0,2,248,0,63,64,10,170,170,170,129,252,0,127,0,31,255,255,255,208,253,0,255,0,31,255,255,255,208,190,0,253,0,31,64,0,7,208,63,2,252,0,31,64,0,7,208,63,131,248,0,31,79,255,199,208,31,203,240,0,31,79,255,199,208,15,255,224,0,31,79,3,199,208,7,255,192,0,31,79,3,199,208,2,255,64,0,31,79,3,199,208,2,255,64,0,31,79,255,199,208,15,255,208,0,31,79,255,199,208,63,255,248,0,31,79,0,7,209,255,203,255,0,31,79,0,7,239,255,66,255,224,31,64,1,91,255,252,0,191,248,31,64,1,255,223,224,0,31,240,31,64,0,255,71,64,0,2,192,0,0,0,0,0,0,0,0,0, + // 0x6574 整 + 116,101,34,34,50,37,2,254,0,2,240,0,0,41,0,0,0,0,3,240,0,0,63,64,0,0,85,87,245,85,64,127,0,0,0,255,255,255,255,192,254,0,0,0,255,255,255,255,193,255,170,170,128,0,3,240,0,3,255,255,255,192,63,255,255,255,75,255,255,255,192,63,255,255,255,111,240,3,244,0,63,3,244,47,255,252,3,240,0,63,3,240,31,255,189,11,224,0,63,3,240,31,108,63,31,192,0,63,255,255,255,68,31,255,128,0,63,255,255,255,64,15,255,0,0,0,47,254,0,0,7,253,0,0,0,191,255,208,0,31,255,64,0,2,255,255,253,0,191,255,224,0,31,243,241,255,75,255,95,254,0,255,195,240,46,191,252,3,255,208,190,3,240,4,127,208,0,191,192,52,3,240,0,45,0,0,11,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,10,170,170,175,254,170,170,168,0,0,0,0,3,240,0,0,0,0,0,31,192,3,240,0,0,0,0,0,31,192,3,255,255,255,64,0,0,31,192,3,255,255,255,64,0,0,31,192,3,250,170,170,0,0,0,31,192,3,240,0,0,0,0,0,31,192,3,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x6599 料 + 153,101,35,35,59,37,1,253,0,6,160,0,0,0,3,240,0,0,7,224,0,0,0,3,240,0,4,7,224,16,0,0,3,240,0,62,7,224,126,3,192,3,240,0,47,7,224,189,15,244,3,240,0,31,7,224,252,7,254,3,240,0,15,135,224,248,0,255,131,240,0,15,199,225,244,0,47,195,240,0,11,199,226,240,0,11,131,240,0,11,199,227,224,0,2,3,240,0,7,215,227,208,0,0,3,240,0,2,71,226,192,0,0,3,240,0,0,11,240,0,20,0,3,240,0,63,255,255,253,62,0,3,240,0,63,255,255,253,191,208,3,240,0,63,255,255,253,47,248,3,240,0,0,47,240,0,7,254,3,240,0,0,63,248,0,0,188,3,240,0,0,127,253,0,0,40,3,240,0,0,255,255,0,0,0,3,240,0,1,255,255,192,0,0,3,240,80,2,251,235,224,0,0,7,255,244,3,231,227,248,0,22,255,255,248,11,215,225,252,107,255,255,255,244,31,199,224,246,255,255,255,244,0,63,135,224,97,255,254,151,240,0,191,7,224,0,249,64,3,240,0,190,7,224,0,0,0,3,240,0,60,7,224,0,0,0,3,240,0,36,7,224,0,0,0,3,240,0,0,7,224,0,0,0,3,240,0,0,7,224,0,0,0,3,240,0,0,7,224,0,0,0,3,240,0,0,7,224,0,0,0,3,240,0,0,7,224,0,0,0,3,240,0, + // 0x659c 斜 + 156,101,35,35,59,37,1,253,0,1,254,0,0,0,0,252,0,0,3,255,128,0,0,0,252,0,0,7,255,224,0,0,0,252,0,0,15,255,252,0,60,0,252,0,0,31,211,255,0,255,0,252,0,0,63,192,255,192,127,192,252,0,0,255,0,63,224,31,240,252,0,2,253,0,31,244,7,253,252,0,11,248,0,7,224,1,253,252,0,47,240,0,2,128,0,160,252,0,191,255,255,255,0,0,0,252,0,255,255,255,255,0,0,0,252,0,61,255,255,255,0,208,0,252,0,0,0,190,0,3,248,0,252,0,0,0,190,0,3,255,0,252,0,0,0,190,0,0,255,192,252,0,0,0,190,0,0,47,240,252,0,63,255,255,255,240,11,244,252,0,63,255,255,255,240,2,208,252,0,63,255,255,255,240,0,0,252,0,0,0,190,0,0,0,0,252,16,0,0,190,0,0,0,1,255,244,2,224,190,47,0,1,111,255,248,3,240,190,47,65,191,255,255,248,7,240,190,31,207,255,255,253,0,11,224,190,15,219,255,229,252,0,15,192,190,7,247,228,0,252,0,31,192,190,3,240,0,0,252,0,63,64,190,2,244,0,0,252,0,191,0,190,1,244,0,0,252,0,61,0,190,0,0,0,0,252,0,4,0,190,0,0,0,0,252,0,0,127,253,0,0,0,0,252,0,0,63,252,0,0,0,0,252,0,0,47,224,0,0,0,0,252,0, + // 0x65ad 断 + 173,101,33,36,68,37,3,252,0,0,41,0,0,0,0,0,0,168,0,126,0,0,0,1,244,0,252,0,126,0,0,0,111,253,0,252,180,126,31,72,31,255,254,0,252,184,126,47,15,255,255,144,0,252,124,126,63,15,255,228,0,0,252,61,126,61,15,228,0,0,0,252,62,126,124,15,192,0,0,0,252,62,126,184,15,192,0,0,0,252,45,126,176,15,192,0,0,0,252,0,126,0,15,192,0,0,0,252,255,255,255,79,192,0,0,0,253,255,255,255,79,192,0,0,0,253,255,255,255,79,255,255,255,128,252,0,254,0,15,255,255,255,128,252,1,255,0,15,255,255,255,128,252,3,255,192,15,192,31,192,0,252,7,255,240,31,192,31,192,0,252,15,255,252,31,192,31,192,0,252,47,254,191,31,192,31,192,0,252,127,126,63,31,192,31,192,0,252,253,126,12,31,192,31,192,0,255,248,126,0,47,128,31,192,0,253,240,126,0,63,64,31,192,0,252,192,126,0,63,64,31,192,0,252,0,126,0,63,0,31,192,0,252,0,126,0,127,0,31,192,0,252,0,0,0,254,0,31,192,0,255,255,255,255,253,0,31,192,0,255,255,255,255,252,0,31,192,0,255,255,255,255,248,0,31,192,0,252,0,0,15,240,0,31,192,0,252,0,0,47,208,0,31,192,0,168,0,0,15,192,0,31,192,0,0,0,0,3,0,0,31,192,0,0,0,0,0,0,0,0,0,0, + // 0x65b0 新 + 176,101,35,36,68,37,1,252,0,0,168,0,0,0,0,1,0,0,0,252,0,0,0,0,111,64,0,0,252,0,0,0,27,255,208,0,0,252,0,2,70,255,255,208,47,255,255,255,227,255,255,244,0,47,255,255,255,227,255,249,0,0,47,255,255,255,227,249,0,0,0,1,244,0,189,3,244,0,0,0,1,248,0,253,3,244,0,0,0,0,252,1,252,3,244,0,0,0,0,189,2,244,3,244,0,0,0,0,125,2,240,3,244,0,0,0,63,255,255,255,243,248,0,0,0,63,255,255,255,243,255,255,255,244,63,255,255,255,243,255,255,255,244,0,0,252,0,3,255,255,255,244,0,0,252,0,3,244,2,248,0,0,0,252,0,3,244,2,248,0,0,0,252,0,3,244,2,248,0,63,255,255,255,227,244,2,248,0,63,255,255,255,227,244,2,248,0,63,255,255,255,227,240,2,248,0,0,3,252,0,3,240,2,248,0,0,15,255,64,7,240,2,248,0,0,47,255,224,11,224,2,248,0,0,127,255,248,15,224,2,248,0,0,254,253,255,15,208,2,248,0,3,248,252,127,95,192,2,248,0,31,240,252,30,63,128,2,248,0,127,192,252,4,127,64,2,248,0,127,64,252,0,255,0,2,248,0,29,0,252,2,253,0,2,248,0,0,0,252,7,248,0,2,248,0,0,0,252,2,240,0,2,248,0,0,0,252,0,128,0,2,164,0,0,0,0,0,0,0,0,0,0, + // 0x65b9 方 + 185,101,33,36,68,37,2,252,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,85,85,85,91,245,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,3,252,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,11,255,255,255,255,128,0,0,0,15,255,255,255,255,128,0,0,0,15,255,255,255,255,128,0,0,0,15,224,0,0,63,64,0,0,0,31,208,0,0,63,64,0,0,0,63,192,0,0,63,64,0,0,0,63,192,0,0,127,0,0,0,0,191,64,0,0,127,0,0,0,0,255,0,0,0,127,0,0,0,2,254,0,0,0,191,0,0,0,7,252,0,0,0,191,0,0,0,15,248,0,0,0,254,0,0,0,63,240,0,0,0,254,0,0,0,255,208,0,0,1,253,0,0,3,255,64,0,0,2,252,0,0,47,253,0,1,64,7,252,0,0,255,244,0,2,255,255,244,0,0,127,192,0,1,255,255,240,0,0,45,0,0,0,255,255,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x65e0 无 + 224,101,34,32,32,37,2,253,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,31,208,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,47,192,0,0,0,0,0,0,0,63,149,0,0,0,0,0,0,0,63,191,64,0,0,0,0,0,0,191,127,64,0,0,0,0,0,0,255,63,64,0,0,0,0,0,1,254,63,64,0,0,0,0,0,3,252,63,64,0,0,0,0,0,7,248,63,64,0,0,0,0,0,15,240,63,64,0,4,0,0,0,63,208,63,64,0,11,128,0,0,255,192,63,64,0,15,224,0,7,255,0,63,64,0,15,208,0,63,252,0,63,64,0,15,208,2,255,240,0,63,128,0,47,192,127,255,128,0,63,255,255,255,192,255,252,0,0,47,255,255,255,64,63,208,0,0,11,255,255,254,0,40,0,0,0,0,85,85,80,0, + // 0x65f6 时 + 246,101,33,35,59,37,3,253,0,0,0,0,0,0,42,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,255,255,255,0,0,0,63,64,0,255,255,255,0,0,0,63,64,0,255,255,255,0,0,0,63,64,0,253,0,127,0,0,0,63,64,0,252,0,127,5,85,85,127,149,0,252,0,127,47,255,255,255,255,128,252,0,127,47,255,255,255,255,128,252,0,127,47,255,255,255,255,128,252,0,127,0,0,0,63,64,0,252,0,127,0,0,0,63,64,0,252,0,127,0,0,0,63,64,0,255,255,255,1,224,0,63,64,0,255,255,255,7,244,0,63,64,0,255,255,255,3,252,0,63,64,0,252,0,127,1,254,0,63,64,0,252,0,127,0,191,64,63,64,0,252,0,127,0,63,192,63,64,0,252,0,127,0,31,224,63,64,0,252,0,127,0,15,240,63,64,0,252,0,127,0,3,244,63,64,0,252,0,127,0,2,192,63,64,0,252,0,127,0,0,0,63,64,0,255,255,255,0,0,0,63,64,0,255,255,255,0,0,0,63,64,0,255,255,255,0,0,0,63,64,0,252,0,0,0,0,0,63,64,0,252,0,0,0,0,0,63,64,0,252,0,0,0,0,0,127,64,0,0,0,0,0,15,255,255,0,0,0,0,0,0,11,255,255,0,0,0,0,0,0,7,255,248,0,0,0,0,0,0,1,85,0,0,0, + // 0x660e 明 + 14,102,32,34,16,37,3,252,255,255,255,66,255,255,255,253,255,255,255,66,255,255,255,253,255,255,255,66,255,255,255,253,253,0,63,66,248,0,0,253,252,0,63,66,248,0,0,253,252,0,63,66,248,0,0,253,252,0,63,66,248,0,0,253,252,0,63,66,248,0,0,253,252,0,63,66,252,0,0,253,252,0,63,66,255,255,255,253,255,255,255,66,255,255,255,253,255,255,255,66,255,255,255,253,255,255,255,66,248,0,0,253,252,0,63,66,248,0,0,253,252,0,63,66,248,0,0,253,252,0,63,67,248,0,0,253,252,0,63,67,248,0,0,253,252,0,63,67,248,0,0,253,252,0,63,67,255,255,255,253,253,0,63,67,255,255,255,253,255,255,255,71,255,255,255,253,255,255,255,75,240,0,0,253,255,255,255,79,224,0,0,253,252,0,0,15,208,0,0,253,252,0,0,47,192,0,0,253,252,0,0,63,128,0,0,253,84,0,0,191,64,0,0,253,0,0,0,255,0,0,0,253,0,0,3,253,0,0,0,253,0,0,15,248,0,5,86,253,0,0,63,240,0,11,255,252,0,0,47,192,0,7,255,248,0,0,11,0,0,3,255,144,0,0,0,0,0,0,0,0, + // 0x662f 是 + 47,102,35,34,50,37,1,253,0,42,170,170,170,170,170,144,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,63,64,0,0,0,11,240,0,0,63,64,0,0,0,11,240,0,0,63,149,85,85,85,95,240,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,63,64,0,0,0,11,240,0,0,63,64,0,0,0,11,240,0,0,63,170,170,170,170,175,240,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,0,0,0,0,254,0,0,0,0,0,2,148,0,254,0,0,0,0,0,3,248,0,254,0,0,0,0,0,7,244,0,254,0,0,0,0,0,11,240,0,255,255,255,253,0,0,15,240,0,255,255,255,253,0,0,31,244,0,255,255,255,253,0,0,47,252,0,254,0,0,0,0,0,63,255,0,254,0,0,0,0,0,255,191,128,254,0,0,0,0,2,254,47,244,254,0,0,0,0,7,252,15,255,254,0,0,0,0,31,244,2,255,255,255,255,255,244,127,224,0,127,255,255,255,255,240,47,64,0,1,191,255,255,255,224,9,0,0,0,0,0,0,0,0, + // 0x6682 暂 + 130,102,33,35,59,37,2,253,0,10,64,0,0,0,0,4,0,0,31,224,0,0,0,26,253,0,170,191,234,170,130,191,255,255,0,255,255,255,255,195,255,255,249,0,255,255,255,255,195,254,148,0,0,2,252,0,0,3,240,0,0,0,3,240,41,0,3,240,0,0,0,15,224,127,0,3,240,0,0,0,47,192,127,0,3,250,170,170,128,191,255,255,255,211,255,255,255,192,63,255,255,255,215,255,255,255,192,63,170,255,170,135,224,15,192,0,0,0,127,0,11,224,15,192,0,0,0,127,0,75,208,15,192,0,0,21,191,255,207,192,15,192,0,255,255,255,255,223,192,15,192,0,255,255,255,165,47,128,15,192,0,186,148,127,0,127,64,15,192,0,0,0,127,0,191,0,15,192,0,0,0,127,0,29,0,15,192,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,128,0,0,191,255,255,255,255,255,128,0,0,191,170,170,170,170,191,128,0,0,190,0,0,0,0,47,128,0,0,190,0,0,0,0,47,128,0,0,191,255,255,255,255,255,128,0,0,191,255,255,255,255,255,128,0,0,191,85,85,85,85,127,128,0,0,190,0,0,0,0,47,128,0,0,190,0,0,0,0,47,128,0,0,191,255,255,255,255,255,128,0,0,191,255,255,255,255,255,128,0,0,191,170,170,170,170,191,128,0,0,190,0,0,0,0,47,128,0, + // 0x66ab 暫 + 171,102,33,35,59,37,2,253,0,3,240,0,0,0,0,96,0,0,3,240,0,0,0,27,252,0,191,255,255,255,203,175,255,254,0,191,255,255,255,203,255,255,144,0,0,3,244,0,11,254,144,0,0,0,3,240,0,11,208,0,0,0,47,255,255,255,11,208,0,0,0,47,171,250,191,11,208,0,0,0,47,3,240,47,15,250,170,170,128,47,255,255,255,15,255,255,255,192,47,171,250,191,15,255,255,255,192,47,3,240,47,15,192,31,192,0,47,171,250,191,15,192,31,192,0,47,255,255,255,47,128,31,192,0,0,3,240,0,63,64,31,192,0,255,255,255,255,255,0,31,192,0,255,255,255,255,253,0,31,192,0,0,3,240,3,252,0,31,192,0,0,3,240,1,240,0,31,192,0,0,1,80,0,64,0,6,64,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,234,170,170,170,255,0,0,0,63,64,0,0,0,191,0,0,0,63,64,0,0,0,191,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,149,85,85,85,191,0,0,0,63,64,0,0,0,191,0,0,0,63,64,0,0,0,191,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,234,170,170,170,255,0,0,0,63,64,0,0,0,127,0,0, + // 0x66f4 更 + 244,102,34,33,41,37,2,253,127,255,255,255,255,255,255,255,128,127,255,255,255,255,255,255,255,128,127,255,255,255,255,255,255,255,128,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,252,0,3,248,0,3,240,0,0,252,0,3,248,0,3,240,0,0,252,0,3,248,0,3,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,254,170,171,254,170,171,240,0,0,252,0,3,248,0,3,240,0,0,252,0,3,248,0,3,240,0,0,252,0,3,248,0,3,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,11,0,15,240,0,0,0,0,0,63,192,31,208,0,0,0,0,0,31,240,63,192,0,0,0,0,0,11,253,191,128,0,0,0,0,0,2,255,255,0,0,0,0,0,0,0,191,253,0,0,0,0,0,0,1,255,255,228,0,0,0,0,0,111,255,255,255,249,84,0,0,175,255,253,31,255,255,255,255,224,191,255,144,0,191,255,255,255,192,63,244,0,0,0,107,255,255,128,9,0,0,0,0,0,0,21,0, + // 0x6700 最 + 0,103,33,34,50,37,2,253,0,127,255,255,255,255,255,128,0,0,127,255,255,255,255,255,128,0,0,127,85,85,85,85,127,128,0,0,127,0,0,0,0,63,128,0,0,127,0,0,0,0,63,128,0,0,127,255,255,255,255,255,128,0,0,127,255,255,255,255,255,128,0,0,127,0,0,0,0,63,128,0,0,127,0,0,0,0,63,128,0,0,127,255,255,255,255,255,128,0,0,127,255,255,255,255,255,128,0,0,21,85,85,85,85,85,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,2,244,0,190,0,0,0,0,0,2,244,0,190,0,0,0,0,0,2,249,85,254,42,170,170,164,0,2,255,255,254,127,255,255,253,0,2,255,255,254,127,255,255,252,0,2,244,0,190,7,192,3,248,0,2,244,0,190,11,224,7,240,0,2,255,255,254,3,244,15,224,0,2,255,255,254,2,252,63,192,0,2,249,85,254,0,255,191,64,0,2,244,0,190,0,63,254,0,0,2,244,0,254,0,47,252,0,0,3,255,255,254,0,63,253,0,0,255,255,255,254,2,255,255,192,0,255,255,255,254,111,253,127,253,0,254,148,0,191,255,224,11,255,192,0,0,0,190,127,64,1,191,64,0,0,0,189,32,0,0,6,0, + // 0x6709 有 + 9,103,33,36,68,37,2,252,0,0,0,228,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,63,128,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,255,255,255,255,255,64,0,0,15,255,255,255,255,255,64,0,0,63,255,255,255,255,255,64,0,0,255,248,0,0,0,63,64,0,2,255,248,0,0,0,63,64,0,11,255,248,0,0,0,63,64,0,63,243,255,255,255,255,255,64,0,255,211,255,255,255,255,255,64,0,255,67,255,255,255,255,255,64,0,60,3,248,0,0,0,63,64,0,16,3,248,0,0,0,63,64,0,0,3,248,0,0,0,63,64,0,0,3,248,0,0,0,63,64,0,0,3,255,255,255,255,255,64,0,0,3,255,255,255,255,255,64,0,0,3,255,255,255,255,255,64,0,0,3,248,0,0,0,63,64,0,0,3,248,0,0,0,63,64,0,0,3,248,0,0,0,63,64,0,0,3,248,0,0,80,127,64,0,0,3,248,0,1,255,255,64,0,0,3,248,0,0,255,255,0,0,0,3,248,0,0,255,248,0,0,0,0,0,0,0,0,0,0,0, + // 0x671f 期 + 31,103,34,35,59,37,1,252,0,252,0,63,0,0,0,0,0,0,252,0,63,0,255,255,255,208,0,252,0,63,0,255,255,255,208,0,252,0,63,0,255,255,255,208,63,255,255,255,248,253,0,15,208,63,255,255,255,248,253,0,15,208,63,255,255,255,248,253,0,15,208,0,252,0,63,0,253,0,15,208,0,252,0,63,0,253,0,15,208,0,252,0,63,0,255,255,255,208,0,255,255,255,0,255,255,255,208,0,255,255,255,0,255,255,255,208,0,254,170,255,0,253,0,15,208,0,252,0,63,0,253,0,15,208,0,252,0,63,0,253,0,15,208,0,252,0,63,0,253,0,15,208,0,255,255,255,0,253,0,15,208,0,255,255,255,0,253,0,15,208,0,254,170,255,0,255,255,255,208,0,252,0,63,0,255,255,255,208,0,252,0,63,0,255,255,255,208,0,252,0,63,0,252,0,15,208,127,255,255,255,248,252,0,15,208,127,255,255,255,249,252,0,15,208,127,255,255,255,250,252,0,15,208,0,0,0,0,3,248,0,15,208,0,63,65,240,3,244,0,15,208,0,191,3,252,3,240,0,15,208,1,253,0,254,11,240,0,15,208,7,252,0,127,79,224,0,15,208,15,240,0,47,223,208,0,31,208,63,208,0,15,127,192,47,255,192,47,128,0,4,31,128,15,255,128,6,0,0,0,3,0,15,253,0,0,0,0,0,0,0,0,0,0, + // 0x673a 机 + 58,103,35,35,59,37,1,253,0,3,240,0,0,0,0,0,0,0,3,240,0,0,0,0,0,0,0,3,240,0,63,255,255,240,0,0,3,240,0,63,255,255,240,0,0,3,240,0,63,255,255,240,0,0,3,240,0,63,149,91,240,0,0,3,240,0,63,128,7,240,0,0,3,240,0,63,128,7,240,0,63,255,255,252,63,128,7,240,0,63,255,255,252,63,128,7,240,0,63,255,255,252,63,128,7,240,0,21,95,245,84,63,128,7,240,0,0,15,240,0,63,128,7,240,0,0,31,240,0,63,128,7,240,0,0,47,244,0,63,128,7,240,0,0,63,253,0,63,128,7,240,0,0,127,255,64,63,128,7,240,0,0,255,255,192,63,64,7,240,0,0,251,251,240,63,64,7,240,0,2,247,243,252,63,64,7,240,0,7,227,240,253,63,0,7,240,0,15,211,240,184,127,0,7,240,0,31,195,240,48,127,0,7,240,0,63,67,240,0,190,0,7,240,0,191,3,240,0,254,0,7,240,0,125,3,240,0,253,0,7,240,120,60,3,240,2,252,0,7,240,124,16,3,240,3,248,0,7,240,124,0,3,240,7,244,0,7,240,124,0,3,240,15,240,0,7,240,188,0,3,240,47,208,0,7,240,252,0,3,240,127,192,0,7,255,252,0,3,240,191,0,0,3,255,244,0,3,240,45,0,0,1,255,224,0,2,160,4,0,0,0,0,0, + // 0x6740 杀 + 64,103,33,35,59,37,2,253,0,0,0,0,0,0,56,0,0,0,52,0,0,0,1,255,0,0,0,255,128,0,0,11,255,0,0,1,255,253,0,0,63,248,0,0,0,31,255,208,2,255,208,0,0,0,1,191,254,31,254,0,0,0,0,0,11,255,255,244,0,0,0,0,0,0,191,255,192,0,0,0,0,0,1,255,255,244,0,0,0,0,0,47,255,255,255,64,0,0,0,6,255,253,7,255,244,0,0,1,191,255,144,0,127,255,0,0,47,255,248,0,0,11,255,224,0,63,255,128,0,0,0,191,224,0,31,228,0,3,244,0,15,192,0,5,0,0,3,244,0,1,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,7,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,3,208,3,244,1,208,0,0,0,11,244,3,244,11,248,0,0,0,47,224,3,244,3,254,0,0,0,127,192,3,244,0,255,128,0,1,255,0,3,244,0,63,224,0,11,253,0,3,244,0,15,248,0,47,244,0,3,244,0,3,254,0,255,208,0,3,244,0,0,255,64,191,64,5,91,244,0,0,127,64,45,0,11,255,244,0,0,40,0,0,0,7,255,240,0,0,0,0,0,0,3,254,64,0,0,0,0, + // 0x675f 束 + 95,103,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,244,0,0,0,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,244,0,0,0,0,2,255,255,255,255,255,255,240,0,2,255,255,255,255,255,255,240,0,2,255,255,255,255,255,255,240,0,2,248,0,7,240,0,11,240,0,2,248,0,7,240,0,11,240,0,2,248,0,7,240,0,11,240,0,2,248,0,7,240,0,11,240,0,2,248,0,7,240,0,11,240,0,2,255,255,255,255,255,255,240,0,2,255,255,255,255,255,255,240,0,2,255,255,255,255,255,255,240,0,0,0,0,191,255,128,0,0,0,0,0,2,255,255,224,0,0,0,0,0,11,255,255,248,0,0,0,0,0,63,247,247,255,0,0,0,0,1,255,199,240,255,208,0,0,0,11,255,7,240,47,248,0,0,0,191,248,7,240,11,255,128,0,7,255,208,7,240,1,255,248,0,191,254,0,7,240,0,63,255,128,255,244,0,7,240,0,7,255,192,63,128,0,7,240,0,0,191,0,24,0,0,7,240,0,0,9,0,0,0,0,7,240,0,0,0,0, + // 0x6761 条 + 97,103,34,35,59,37,2,253,0,0,2,248,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,63,255,255,255,224,0,0,0,0,255,255,255,255,252,0,0,0,7,255,255,255,255,244,0,0,0,31,254,0,0,47,224,0,0,0,191,255,64,0,191,192,0,0,11,255,191,208,1,255,0,0,0,63,253,15,248,11,253,0,0,0,31,224,3,255,127,240,0,0,0,7,64,0,255,255,192,0,0,0,0,0,0,63,255,64,0,0,0,0,0,1,255,255,248,0,0,0,0,0,111,255,255,255,208,0,0,0,27,255,253,11,255,255,228,0,111,255,255,208,0,127,255,255,192,127,255,248,2,160,2,255,255,64,63,254,64,7,240,0,6,255,0,30,64,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,0,0,2,255,255,224,0,0,0,0,0,11,255,255,248,0,0,0,0,0,63,231,242,255,0,0,0,0,1,255,135,240,191,224,0,0,0,15,254,7,240,47,253,0,0,0,191,244,7,240,7,255,208,0,27,255,192,7,240,0,255,254,0,255,253,0,7,240,0,31,255,208,191,224,0,7,240,0,2,255,64,62,0,0,7,240,0,0,31,0,0,0,0,7,240,0,0,0,0, + // 0x6765 来 + 101,103,35,35,59,37,1,253,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,1,85,85,86,254,85,85,85,0,3,255,255,255,255,255,255,255,64,3,255,255,255,255,255,255,255,64,3,255,255,255,255,255,255,255,64,0,0,64,1,253,0,5,0,0,0,11,208,1,253,0,15,224,0,0,15,240,1,253,0,31,224,0,0,7,244,1,253,0,63,192,0,0,3,252,1,253,0,127,64,0,0,1,253,1,253,0,255,0,0,0,0,255,1,253,1,253,0,0,0,0,189,1,253,2,248,0,0,21,85,101,86,254,85,117,85,80,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,0,0,0,63,255,240,0,0,0,0,0,0,255,255,252,0,0,0,0,0,2,254,254,254,0,0,0,0,0,11,249,253,191,128,0,0,0,0,47,225,253,47,224,0,0,0,0,255,193,253,15,252,0,0,0,3,255,1,253,3,255,0,0,0,47,252,1,253,0,255,208,0,0,255,240,1,253,0,63,252,0,11,255,128,1,253,0,11,255,128,127,253,0,1,253,0,1,255,244,63,240,0,1,253,0,0,63,240,15,64,0,1,253,0,0,7,192,0,0,0,1,253,0,0,0,64,0,0,0,1,253,0,0,0,0, + // 0x677f 板 + 127,103,35,36,68,37,1,252,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,1,255,255,255,255,240,0,15,208,1,255,255,255,255,240,0,15,208,1,255,255,255,255,240,0,15,208,1,252,0,0,0,0,0,15,208,1,252,0,0,0,0,0,15,208,1,252,0,0,0,0,63,255,255,241,252,0,0,0,0,63,255,255,241,252,0,0,0,0,63,255,255,241,252,0,0,0,0,0,31,224,1,252,0,0,0,0,0,47,208,1,255,255,255,255,208,0,63,208,1,255,255,255,255,208,0,63,240,1,255,255,255,255,192,0,127,248,1,255,240,0,47,192,0,255,253,1,255,240,0,63,128,0,255,255,1,254,248,0,63,64,1,255,255,194,253,252,0,127,0,3,255,223,226,248,253,0,254,0,7,223,211,242,248,191,0,253,0,15,207,210,227,248,63,66,252,0,31,143,208,195,244,63,199,244,0,63,79,208,3,240,15,223,240,0,191,15,208,7,240,11,255,208,0,189,15,208,11,240,3,255,192,0,60,15,208,15,224,2,255,64,0,16,15,208,15,208,2,255,64,0,0,15,208,47,192,15,255,208,0,0,15,208,63,128,63,255,248,0,0,15,208,191,65,255,199,255,0,0,15,208,255,15,255,1,255,224,0,15,210,252,47,248,0,127,244,0,15,208,184,15,208,0,11,224,0,11,208,32,2,0,0,1,192,0,0,0,0,0,0,0,0,0, + // 0x6797 林 + 151,103,35,35,59,37,1,253,0,2,248,0,0,1,252,0,0,0,2,248,0,0,1,252,0,0,0,2,248,0,0,1,252,0,0,0,2,248,0,0,1,252,0,0,0,2,248,0,0,1,252,0,0,0,2,248,0,0,1,252,0,0,0,2,248,0,0,1,252,0,0,0,2,248,0,0,1,252,0,0,63,255,255,254,63,255,255,255,224,63,255,255,254,63,255,255,255,224,63,255,255,254,63,255,255,255,224,5,91,253,84,5,87,255,85,64,0,11,252,0,0,11,255,0,0,0,15,255,0,0,15,255,128,0,0,31,255,192,0,31,255,192,0,0,47,255,240,0,47,255,192,0,0,63,255,248,0,63,255,224,0,0,127,249,254,0,191,255,240,0,0,254,248,255,64,254,254,244,0,1,250,248,63,2,249,253,252,0,3,242,248,29,3,245,252,253,0,11,242,248,4,15,241,252,127,0,15,210,248,0,31,209,252,63,128,63,194,248,0,63,193,252,47,192,191,66,248,0,255,1,252,15,240,127,2,248,3,254,1,252,11,248,60,2,248,7,252,1,252,3,244,20,2,248,2,240,1,252,2,192,0,2,248,0,208,1,252,0,64,0,2,248,0,0,1,252,0,0,0,2,248,0,0,1,252,0,0,0,2,248,0,0,1,252,0,0,0,2,248,0,0,1,252,0,0,0,2,248,0,0,1,252,0,0,0,2,248,0,0,1,252,0,0, + // 0x67f1 柱 + 241,103,35,36,68,37,1,252,0,7,240,0,0,52,0,0,0,0,7,240,0,0,254,0,0,0,0,7,240,0,1,255,192,0,0,0,7,240,0,0,127,244,0,0,0,7,240,0,0,15,253,0,0,0,7,240,0,0,2,255,0,0,0,7,240,0,0,0,191,0,0,0,7,240,0,0,0,125,0,0,63,255,255,253,255,255,255,255,240,63,255,255,253,255,255,255,255,240,63,255,255,253,255,255,255,255,240,21,95,245,80,0,3,248,0,0,0,15,240,0,0,3,248,0,0,0,31,240,0,0,3,248,0,0,0,47,240,0,0,3,248,0,0,0,63,252,0,0,3,248,0,0,0,127,254,0,0,3,248,0,0,0,191,255,64,0,3,248,0,0,0,255,255,208,0,3,248,0,0,2,251,251,240,191,255,255,255,224,3,247,243,252,191,255,255,255,224,11,215,240,252,191,255,255,255,224,15,199,240,176,0,3,248,0,0,47,135,240,16,0,3,248,0,0,127,7,240,0,0,3,248,0,0,190,7,240,0,0,3,248,0,0,60,7,240,0,0,3,248,0,0,40,7,240,0,0,3,248,0,0,0,7,240,0,0,3,248,0,0,0,7,240,0,0,3,248,0,0,0,7,240,0,0,3,248,0,0,0,7,240,31,255,255,255,255,248,0,7,240,31,255,255,255,255,248,0,7,240,31,255,255,255,255,248,0,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6821 校 + 33,104,35,36,68,37,1,252,0,15,208,0,0,15,224,0,0,0,15,208,0,0,15,224,0,0,0,15,208,0,0,15,224,0,0,0,15,208,0,0,15,224,0,0,0,15,208,0,0,15,224,0,0,0,15,208,0,0,15,224,0,0,0,15,208,15,255,255,255,255,240,0,15,208,15,255,255,255,255,240,63,255,255,234,170,170,170,170,160,63,255,255,224,0,0,0,64,0,63,255,255,224,15,128,7,224,0,0,31,208,0,47,192,7,248,0,0,47,208,0,63,128,2,253,0,0,63,208,0,255,0,0,255,64,0,63,240,2,253,0,0,63,192,0,127,248,7,248,0,0,31,224,0,255,253,31,241,0,6,91,240,0,255,255,47,239,192,11,243,244,2,255,239,139,15,192,15,225,128,3,239,223,192,11,224,31,208,0,7,223,215,240,7,240,47,192,0,15,207,211,208,3,252,127,128,0,31,143,209,128,1,253,255,0,0,63,79,208,0,0,255,253,0,0,191,15,208,0,0,63,252,0,0,125,15,208,0,0,47,244,0,0,60,15,208,0,0,47,248,0,0,16,15,208,0,0,191,254,0,0,0,15,208,0,3,255,255,192,0,0,15,208,0,31,252,127,244,0,0,15,208,0,255,240,31,254,0,0,15,208,27,255,128,3,255,224,0,15,208,127,253,0,0,255,244,0,15,208,63,208,0,0,31,208,0,15,208,13,0,0,0,2,128,0,0,0,0,0,0,0,0,0, + // 0x683c 格 + 60,104,35,35,59,37,1,253,0,15,208,0,0,228,0,0,0,0,15,208,0,1,253,0,0,0,0,15,208,0,2,252,0,0,0,0,15,208,0,7,244,0,0,0,0,15,208,0,15,255,255,253,0,0,15,208,0,31,255,255,255,0,0,15,208,0,63,255,255,253,0,0,15,208,0,255,64,2,252,0,63,255,255,242,255,192,3,248,0,63,255,255,251,255,208,11,240,0,63,255,255,255,251,240,31,208,0,0,31,224,127,195,252,63,128,0,0,31,224,31,1,254,255,0,0,0,63,244,5,0,127,253,0,0,0,63,252,0,0,47,248,0,0,0,127,255,0,0,127,252,0,0,0,191,255,128,2,255,255,128,0,0,255,223,208,15,254,191,244,0,1,255,215,240,191,244,31,255,64,3,255,211,219,255,192,3,255,248,7,223,209,255,254,0,0,127,244,15,207,208,191,255,255,255,255,224,31,143,208,62,255,255,255,255,64,63,79,208,0,255,255,255,254,0,191,15,208,0,252,0,0,190,0,125,15,208,0,252,0,0,190,0,56,15,208,0,252,0,0,190,0,16,15,208,0,252,0,0,190,0,0,15,208,0,252,0,0,190,0,0,15,208,0,252,0,0,190,0,0,15,208,0,255,255,255,254,0,0,15,208,0,255,255,255,254,0,0,15,208,0,255,255,255,254,0,0,15,208,0,252,0,0,190,0,0,10,144,0,168,0,0,105,0, + // 0x68af 梯 + 175,104,34,35,59,37,1,253,0,15,208,0,25,0,0,228,0,0,15,208,0,127,0,1,254,0,0,15,208,0,63,64,2,252,0,0,15,208,0,47,192,3,244,0,0,15,208,0,15,192,11,240,0,0,15,208,0,15,128,7,208,0,0,15,208,11,255,255,255,255,192,0,15,208,11,255,255,255,255,192,63,255,255,219,255,255,255,255,192,63,255,255,208,0,15,192,15,192,63,255,255,208,0,15,192,15,192,0,31,208,0,0,15,192,15,192,0,47,208,0,0,15,192,15,192,0,63,224,3,255,255,255,255,192,0,63,240,3,255,255,255,255,192,0,127,252,3,255,255,255,255,192,0,255,254,7,240,15,192,0,0,0,255,255,11,224,15,192,0,0,2,255,223,203,208,15,192,0,0,3,239,219,223,208,15,192,0,0,7,223,211,223,255,255,255,255,240,15,207,210,159,255,255,255,255,240,31,143,208,47,255,255,255,255,240,63,15,208,47,128,191,192,7,240,191,15,208,0,1,255,192,7,240,125,15,208,0,7,255,192,11,224,60,15,208,0,31,255,192,11,224,16,15,208,0,127,207,192,15,224,0,15,208,2,255,15,192,15,208,0,15,208,31,252,15,203,255,192,0,15,208,191,240,15,195,255,192,0,15,208,255,128,15,195,254,0,0,15,208,61,0,15,192,0,0,0,15,208,0,0,15,192,0,0,0,15,208,0,0,15,192,0,0, + // 0x68c0 检 + 192,104,35,35,59,37,1,253,0,47,64,0,0,46,0,0,0,0,47,128,0,0,63,64,0,0,0,47,128,0,0,255,64,0,0,0,47,128,0,1,255,192,0,0,0,47,128,0,3,255,240,0,0,0,47,128,0,15,247,252,0,0,0,47,128,0,63,193,255,0,0,63,255,255,0,191,64,127,192,0,63,255,255,3,254,0,31,244,0,63,255,255,15,252,0,7,254,0,0,63,128,63,240,0,2,255,192,0,63,129,255,192,0,0,191,244,0,127,199,254,191,255,255,223,244,0,191,227,248,191,255,255,195,240,0,255,244,208,191,255,255,192,144,1,255,252,0,0,0,0,0,0,2,255,254,0,0,0,0,0,0,3,255,191,0,0,45,0,30,0,7,255,159,79,128,62,0,63,64,11,239,142,15,192,63,0,63,0,15,175,132,15,192,47,0,126,0,47,111,128,7,208,47,64,252,0,63,47,128,3,240,31,64,252,0,190,47,128,3,240,15,130,244,0,60,47,128,2,240,15,195,240,0,40,47,128,1,244,15,199,208,0,0,47,128,1,244,4,15,192,0,0,47,128,0,64,0,31,128,0,0,47,128,0,0,0,63,0,0,0,47,128,0,0,0,126,0,0,0,47,128,255,255,255,255,255,224,0,47,128,255,255,255,255,255,224,0,47,128,255,255,255,255,255,224,0,47,128,0,0,0,0,0,0,0,31,64,0,0,0,0,0,0, + // 0x69fd 槽 + 253,105,35,36,68,37,1,252,0,31,192,0,3,240,63,0,0,0,31,192,0,3,240,63,0,0,0,31,192,0,3,240,63,0,0,0,31,192,191,255,255,255,255,248,0,31,192,191,255,255,255,255,248,0,31,192,106,171,250,255,170,164,0,31,192,0,3,240,63,0,0,0,31,192,0,3,240,63,0,0,63,255,255,159,255,255,255,255,208,63,255,255,159,255,255,255,255,208,63,255,255,159,150,245,126,91,208,0,63,192,31,66,240,61,7,208,0,63,192,31,130,240,126,11,208,0,63,192,31,255,255,255,255,208,0,127,208,31,255,255,255,255,208,0,255,240,31,66,240,61,7,208,0,255,248,31,66,240,61,7,208,1,255,252,31,150,245,126,91,208,3,255,255,31,255,255,255,255,208,3,255,223,95,255,255,255,255,208,11,223,207,192,0,0,0,0,0,15,159,199,2,170,170,170,170,0,31,95,193,3,255,255,255,255,0,63,31,192,3,255,255,255,255,0,190,31,192,3,244,0,0,127,0,188,31,192,3,244,0,0,127,0,60,31,192,3,249,85,85,191,0,32,31,192,3,255,255,255,255,0,0,31,192,3,255,255,255,255,0,0,31,192,3,244,0,0,127,0,0,31,192,3,244,0,0,127,0,0,31,192,3,250,170,170,191,0,0,31,192,3,255,255,255,255,0,0,31,192,3,255,255,255,255,0,0,31,192,3,244,0,0,127,0,0,0,0,0,0,0,0,0,0, + // 0x6a21 模 + 33,106,35,35,59,37,1,253,0,47,64,0,31,128,15,192,0,0,47,64,0,31,128,15,192,0,0,47,64,0,31,128,15,192,0,0,47,64,127,255,255,255,255,240,0,47,64,127,255,255,255,255,240,0,47,64,127,255,255,255,255,224,0,47,64,0,31,128,15,192,0,63,255,255,0,31,128,15,192,0,63,255,255,0,5,64,5,64,0,63,255,255,15,255,255,255,255,0,0,63,149,15,255,255,255,255,0,0,63,128,15,234,170,170,191,0,0,63,192,15,192,0,0,127,0,0,127,208,15,192,0,0,127,0,0,191,240,15,255,255,255,255,0,0,255,248,15,255,255,255,255,0,1,255,253,15,213,85,85,191,0,2,255,191,15,192,0,0,127,0,3,255,111,143,229,85,85,191,0,7,255,79,143,255,255,255,255,0,15,255,74,15,255,255,255,255,0,31,175,64,0,0,63,64,0,0,63,47,64,0,0,63,64,0,0,127,47,64,0,0,63,0,0,0,190,47,64,255,255,255,255,255,240,60,47,64,255,255,255,255,255,240,40,47,64,255,255,255,255,255,240,0,47,64,0,3,255,252,0,0,0,47,64,0,11,248,254,0,0,0,47,64,0,47,240,127,192,0,0,47,64,1,255,192,47,248,0,0,47,64,111,255,0,11,255,144,0,47,67,255,248,0,1,255,244,0,47,65,255,128,0,0,47,224,0,47,64,164,0,0,0,2,192, + // 0x6a59 橙 + 89,106,35,35,59,37,1,253,0,15,192,0,0,0,20,0,0,0,15,192,10,170,208,252,20,0,0,15,192,31,255,244,252,125,0,0,15,192,31,255,240,191,254,0,0,15,192,0,7,240,63,244,0,0,15,192,4,11,224,63,192,128,0,15,192,47,79,192,31,194,240,0,15,192,63,255,128,15,219,244,63,255,255,203,255,64,11,255,192,63,255,255,194,255,0,3,253,0,63,255,255,193,255,255,255,253,0,0,47,208,7,255,255,255,255,64,0,47,192,15,246,170,170,63,224,0,63,192,127,192,0,0,15,252,0,127,225,255,64,0,0,3,240,0,191,244,254,170,170,170,169,144,0,255,252,34,255,255,255,253,0,0,255,255,2,255,255,255,253,0,2,255,239,130,248,0,0,253,0,3,255,207,210,248,0,0,253,0,7,223,199,194,248,0,0,253,0,15,207,195,66,248,0,0,253,0,31,143,192,2,255,255,255,253,0,63,15,192,2,255,255,255,253,0,191,15,192,1,170,170,171,169,0,189,15,192,0,26,0,7,224,0,60,15,192,0,63,0,11,240,0,16,15,192,0,47,128,15,208,0,0,15,192,0,31,192,31,192,0,0,15,192,0,15,192,47,64,0,0,15,192,0,15,64,47,0,0,0,15,192,255,255,255,255,255,248,0,15,192,255,255,255,255,255,248,0,15,192,255,255,255,255,255,244,0,15,192,0,0,0,0,0,0, + // 0x6b62 止 + 98,107,33,33,41,37,2,255,0,0,0,0,190,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,42,0,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,255,85,85,84,0,0,63,64,0,255,255,255,253,0,0,63,64,0,255,255,255,253,0,0,63,64,0,255,255,255,253,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,85,191,149,85,255,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x6b63 正 + 99,107,33,32,32,37,2,254,21,85,85,85,85,85,85,85,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,21,0,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,254,85,85,80,0,0,63,64,1,255,255,255,244,0,0,63,64,1,255,255,255,244,0,0,63,64,1,255,255,255,244,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,85,85,85,85,85,85,85,85,64, + // 0x6b65 步 + 101,107,33,35,59,37,2,253,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,5,0,3,244,0,0,0,0,0,47,192,3,244,0,0,0,0,0,47,192,3,255,255,255,192,0,0,47,192,3,255,255,255,192,0,0,47,192,3,255,255,255,192,0,0,47,192,3,249,85,85,64,0,0,47,192,3,244,0,0,0,0,0,47,192,3,244,0,0,0,0,0,47,192,3,244,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,21,85,85,87,245,85,85,85,0,0,2,64,3,244,0,0,0,0,0,7,248,3,244,0,4,0,0,0,15,240,3,244,0,47,128,0,0,63,224,3,244,0,63,192,0,0,255,128,3,244,0,127,128,0,3,255,0,3,244,0,255,0,0,31,252,0,3,244,2,254,0,0,191,240,0,3,244,7,252,0,0,63,192,15,255,240,15,244,0,0,14,0,7,255,240,63,240,0,0,0,0,3,255,128,255,192,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,127,252,0,0,0,0,0,0,2,255,240,0,0,0,0,0,0,191,255,128,0,0,0,0,0,111,255,248,0,0,0,0,2,191,255,255,144,0,0,0,0,2,255,255,248,0,0,0,0,0,0,255,249,0,0,0,0,0,0,0,185,0,0,0,0,0,0,0, + // 0x6bd4 比 + 212,107,34,35,59,37,2,253,0,106,0,0,6,144,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,124,0,0,191,0,0,15,224,3,255,0,0,191,85,85,15,224,47,255,64,0,191,255,254,15,226,255,248,0,0,191,255,254,15,255,255,128,0,0,191,255,254,15,255,248,0,0,0,191,0,0,15,255,128,0,0,0,191,0,0,15,244,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,7,128,0,191,0,0,15,224,0,11,240,0,191,0,27,143,224,0,11,224,0,191,27,255,143,224,0,11,224,0,255,255,255,207,240,0,15,208,175,255,255,254,75,240,0,31,192,255,255,254,64,7,255,255,255,192,255,254,64,0,3,255,255,255,64,190,64,0,0,1,255,255,254,0,0,0,0,0,0,5,85,64,0, + // 0x6ca1 没 + 161,108,34,34,50,37,2,253,7,208,0,0,0,0,0,0,0,15,252,0,15,255,255,252,0,0,15,255,128,15,255,255,252,0,0,1,255,240,15,255,255,252,0,0,0,31,224,31,192,0,252,0,0,0,3,192,31,192,0,252,0,0,0,0,0,31,192,0,252,0,0,0,0,0,47,192,0,252,3,64,0,0,0,63,128,0,252,7,224,0,0,0,127,64,0,252,7,224,121,0,0,255,0,0,253,11,208,255,208,3,254,0,0,255,255,208,255,248,31,252,0,0,191,255,192,31,255,31,240,0,0,47,254,0,1,253,7,192,0,0,0,0,0,0,60,2,0,0,0,0,64,0,0,0,3,255,255,255,255,244,0,0,0,3,255,255,255,255,244,0,0,0,3,255,255,255,255,240,0,0,1,0,11,192,0,31,224,0,0,7,128,31,208,0,63,192,0,0,15,224,11,240,0,191,128,0,0,31,208,3,252,1,255,0,0,0,63,192,2,255,7,253,0,0,0,127,64,0,191,159,248,0,0,0,255,0,0,63,255,224,0,0,2,253,0,0,15,255,128,0,0,3,252,0,0,47,255,128,0,0,11,244,0,2,255,255,248,0,0,31,240,0,111,255,175,255,144,0,63,208,111,255,253,2,255,255,144,63,128,191,255,208,0,127,255,208,11,0,63,248,0,0,6,255,128,0,0,41,0,0,0,0,27,0, + // 0x6ce2 波 + 226,108,34,36,68,37,1,252,0,64,0,0,0,63,0,0,0,2,248,0,0,0,63,0,0,0,7,255,64,0,0,63,0,0,0,1,255,240,0,0,63,0,0,0,0,47,248,0,0,63,0,0,0,0,3,240,255,255,255,255,255,224,0,0,128,255,255,255,255,255,240,0,0,0,255,255,255,255,255,224,0,0,0,254,0,127,64,31,208,0,0,0,253,0,63,0,31,192,4,0,0,253,0,63,0,63,128,31,64,0,253,0,63,0,63,64,63,240,0,253,0,63,0,127,0,127,254,0,253,0,63,0,9,0,11,255,128,253,0,63,0,0,0,0,191,64,255,255,255,255,253,0,0,30,0,255,255,255,255,254,0,0,0,0,255,255,255,255,253,0,0,0,0,253,252,0,1,252,0,0,0,0,252,190,0,3,252,0,0,0,0,252,63,0,7,244,0,0,3,129,252,47,192,15,240,0,0,11,225,252,15,208,31,208,0,0,15,209,252,11,240,63,192,0,0,47,194,248,3,252,255,64,0,0,63,131,244,1,255,254,0,0,0,191,3,244,0,191,252,0,0,0,254,7,240,0,63,244,0,0,2,253,11,224,0,255,253,0,0,3,252,15,208,7,255,255,192,0,11,244,47,192,127,252,191,248,0,15,240,63,139,255,224,31,255,208,31,208,191,47,255,64,2,255,240,7,192,190,15,244,0,0,47,208,0,0,8,3,64,0,0,2,128,0,0,0,0,0,0,0,0,0, + // 0x6ce8 注 + 232,108,35,35,59,37,1,253,0,80,0,0,13,0,0,0,0,1,253,0,0,63,208,0,0,0,3,255,208,0,191,248,0,0,0,0,191,248,0,31,255,64,0,0,0,15,253,0,2,255,224,0,0,0,1,248,0,0,63,248,0,0,0,0,32,0,0,11,244,0,0,0,0,0,0,0,2,208,0,0,0,0,0,255,255,255,255,255,224,0,0,0,255,255,255,255,255,224,9,0,0,255,255,255,255,255,224,47,208,0,85,85,127,149,85,64,127,253,0,0,0,63,64,0,0,31,255,192,0,0,63,64,0,0,1,255,192,0,0,63,64,0,0,0,47,64,0,0,63,64,0,0,0,6,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,63,255,255,255,255,64,0,0,64,63,255,255,255,255,64,0,0,244,63,255,255,255,255,64,0,1,252,5,85,127,149,85,0,0,3,252,0,0,63,64,0,0,0,7,244,0,0,63,64,0,0,0,15,240,0,0,63,64,0,0,0,47,208,0,0,63,64,0,0,0,63,192,0,0,63,64,0,0,0,191,64,0,0,63,64,0,0,1,255,0,0,0,63,64,0,0,3,252,1,85,85,127,149,85,80,11,248,7,255,255,255,255,255,248,15,240,7,255,255,255,255,255,248,2,208,7,255,255,255,255,255,248,0,64,0,0,0,0,0,0,0, + // 0x6d17 洗 + 23,109,34,35,59,37,2,253,1,0,0,4,0,253,0,0,0,11,192,0,31,192,253,0,0,0,31,248,0,31,192,253,0,0,0,11,255,0,47,192,253,0,0,0,1,255,192,63,128,253,0,0,0,0,47,192,127,64,253,0,0,0,0,11,0,191,255,255,255,255,0,0,0,0,255,255,255,255,255,0,0,0,1,255,255,255,255,255,0,0,0,2,253,1,254,0,0,0,16,0,3,248,0,253,0,0,0,125,0,11,240,0,253,0,0,0,255,192,31,240,0,253,0,0,0,191,248,11,192,0,253,0,0,0,31,254,1,128,0,253,0,0,0,2,253,5,85,85,254,85,85,64,0,120,31,255,255,255,255,255,208,0,0,31,255,255,255,255,255,208,0,0,31,255,255,255,255,255,208,0,0,0,1,252,3,244,0,0,0,4,0,2,252,3,244,0,0,0,15,0,2,252,3,244,0,0,0,47,192,2,248,3,244,0,0,0,63,64,3,248,3,244,0,0,0,191,0,3,244,3,244,0,0,0,254,0,11,240,3,244,0,0,2,252,0,15,240,3,244,3,128,3,248,0,31,208,3,244,3,240,11,240,0,63,192,3,244,3,240,15,224,1,255,64,3,244,3,240,47,192,11,254,0,3,248,7,224,127,128,191,248,0,2,255,255,208,47,64,191,224,0,1,255,255,192,6,0,63,64,0,0,191,255,0,0,0,4,0,0,0,0,0,0, + // 0x6d3b 活 + 59,109,34,35,59,37,2,253,0,0,0,0,0,0,1,144,0,7,208,0,0,0,1,111,248,0,15,252,0,0,6,191,255,253,0,11,255,128,175,255,255,255,228,0,1,255,240,255,255,255,228,0,0,0,47,208,191,254,254,0,0,0,0,3,128,20,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,56,0,15,255,255,255,255,255,208,191,128,15,255,255,255,255,255,208,255,248,15,255,255,255,255,255,208,31,255,5,85,85,254,85,85,64,2,254,0,0,0,190,0,0,0,0,60,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,2,0,127,255,255,255,252,0,0,11,192,127,255,255,255,252,0,0,15,224,127,255,255,255,252,0,0,47,192,126,0,0,0,252,0,0,63,128,126,0,0,0,252,0,0,191,0,126,0,0,0,252,0,0,254,0,126,0,0,0,252,0,3,252,0,126,0,0,0,252,0,7,248,0,126,0,0,0,252,0,15,240,0,126,0,0,0,252,0,47,208,0,127,255,255,255,252,0,127,192,0,127,255,255,255,252,0,63,64,0,127,255,255,255,252,0,10,0,0,126,0,0,0,252,0,0,0,0,126,0,0,0,168,0, + // 0x6d41 流 + 65,109,34,35,59,37,2,253,1,0,0,0,2,252,0,0,0,11,224,0,0,2,252,0,0,0,15,253,0,0,2,252,0,0,0,11,255,192,0,2,252,0,0,0,0,191,240,0,2,252,0,0,0,0,31,207,255,255,255,255,255,192,0,2,79,255,255,255,255,255,192,0,0,15,255,255,255,255,255,192,0,0,0,0,127,128,0,0,0,0,0,0,0,191,0,30,0,0,16,0,0,0,254,0,127,64,0,125,0,0,1,252,0,47,208,0,255,208,0,3,244,0,11,244,0,191,252,1,91,255,255,255,253,0,31,255,11,255,255,255,255,255,0,1,252,11,255,255,255,255,255,128,0,40,7,250,165,80,0,47,208,0,0,0,0,0,0,0,15,64,0,0,0,63,2,244,31,192,0,0,0,0,63,2,244,31,192,0,0,2,0,63,2,244,31,192,0,0,11,128,63,2,244,31,192,0,0,15,208,63,2,244,31,192,0,0,47,192,63,2,244,31,192,0,0,63,128,63,2,244,31,192,0,0,191,0,127,2,244,31,192,0,0,254,0,190,2,244,31,192,0,3,252,0,253,2,244,31,194,208,7,248,1,252,2,244,31,194,224,15,240,3,252,2,244,31,194,224,31,224,11,244,2,244,31,195,224,63,192,47,240,2,244,31,255,224,63,128,127,192,2,244,15,255,192,11,0,47,0,0,0,7,255,64,0,0,8,0,0,0,0,0,0, + // 0x6d4b 测 + 75,109,34,35,59,37,1,253,0,64,0,0,0,0,0,2,128,3,244,0,0,0,0,0,7,208,15,254,7,255,255,252,0,7,208,3,255,219,255,255,252,26,7,208,0,127,235,234,170,252,31,71,208,0,11,199,192,0,188,31,71,208,0,2,7,192,0,188,31,71,208,0,0,7,194,240,188,31,71,208,0,0,7,194,240,188,31,71,208,0,0,7,194,240,188,31,71,208,4,0,7,194,240,188,31,71,208,47,64,7,194,240,188,31,71,208,127,244,7,194,240,188,31,71,208,47,254,7,194,240,188,31,71,208,3,255,7,194,240,188,31,71,208,0,125,7,194,240,188,31,71,208,0,8,7,194,240,188,31,71,208,0,0,7,194,240,188,31,71,208,0,0,7,194,240,188,31,71,208,0,0,7,194,240,188,31,71,208,0,0,7,194,240,188,31,71,208,0,30,7,194,240,188,31,71,208,0,63,135,194,240,188,31,71,208,0,63,71,195,240,188,31,71,208,0,191,7,195,224,188,31,71,208,0,254,7,195,224,188,31,71,208,1,253,0,7,208,0,5,7,208,2,252,0,15,197,0,0,7,208,3,248,0,31,175,0,0,7,208,7,240,0,63,31,192,0,7,208,15,240,0,254,7,240,0,7,208,31,208,7,248,2,248,0,11,208,47,192,47,240,0,189,15,255,192,7,128,47,128,0,61,11,255,128,0,0,8,0,0,16,7,233,0, + // 0x6d88 消 + 136,109,33,36,68,37,2,252,1,0,0,0,0,253,0,0,0,11,128,0,32,0,253,0,40,0,31,248,2,248,0,253,0,63,64,15,255,2,252,0,253,0,191,0,1,255,208,255,0,253,0,254,0,0,63,192,127,64,253,2,252,0,0,11,64,63,192,253,3,248,0,0,1,0,31,208,253,11,240,0,0,0,0,15,128,253,11,208,0,0,0,0,4,0,253,0,64,0,16,0,0,0,0,254,0,0,0,125,0,0,255,255,255,255,252,0,255,192,0,255,255,255,255,252,0,191,244,0,255,255,255,255,252,0,15,254,0,253,0,0,0,252,0,2,254,0,253,0,0,0,252,0,0,188,0,253,0,0,0,252,0,0,20,0,253,0,0,0,252,0,0,0,0,255,255,255,255,252,0,0,0,0,255,255,255,255,252,0,0,0,0,255,255,255,255,252,0,0,11,0,253,0,0,0,252,0,0,15,192,253,0,0,0,252,0,0,47,192,253,0,0,0,252,0,0,63,64,255,255,255,255,252,0,0,191,0,255,255,255,255,252,0,0,254,0,255,255,255,255,252,0,2,252,0,253,0,0,0,252,0,3,248,0,253,0,0,0,252,0,11,240,0,253,0,0,0,252,0,31,224,0,253,0,0,0,252,0,63,208,0,253,0,0,1,252,0,127,192,0,253,0,3,255,252,0,31,64,0,253,0,2,255,248,0,2,0,0,253,0,1,255,208,0,0,0,0,0,0,0,0,0,0, + // 0x6de1 淡 + 225,109,35,34,50,37,1,253,0,0,0,0,0,127,0,0,0,1,224,0,0,0,127,0,0,0,7,254,0,6,64,127,0,36,0,3,255,208,15,192,127,0,63,128,0,127,248,31,192,191,0,191,0,0,11,244,63,128,190,1,253,0,0,1,208,127,0,254,3,252,0,0,0,0,254,0,253,7,240,0,0,0,1,252,1,254,15,208,0,0,0,0,36,3,255,209,64,0,4,0,0,0,7,255,252,0,0,31,64,0,0,31,251,255,128,0,127,244,0,0,191,208,191,244,0,47,254,0,7,255,128,31,255,0,2,255,193,255,253,0,2,255,192,0,127,2,255,224,106,0,63,192,0,13,0,254,0,127,0,11,0,0,0,0,0,0,191,0,0,0,0,0,0,9,0,191,0,25,0,0,1,0,31,192,190,0,63,192,0,3,128,47,128,254,0,127,128,0,11,240,63,64,255,0,255,0,0,15,224,191,0,255,66,253,0,0,47,192,254,1,255,131,248,0,0,63,195,252,3,255,207,240,0,0,191,66,244,3,255,246,192,0,0,255,0,16,15,247,248,0,0,2,253,0,0,47,226,254,0,0,7,252,0,0,255,192,255,128,0,15,244,0,27,255,0,63,244,0,31,240,6,255,252,0,15,255,144,15,208,31,255,224,0,2,255,244,2,128,11,254,0,0,0,127,224,0,0,3,144,0,0,0,1,128, + // 0x6df7 混 + 247,109,34,35,59,37,2,253,1,0,0,0,0,0,0,0,0,7,192,0,0,0,0,0,0,0,15,248,3,255,255,255,255,252,0,31,255,67,255,255,255,255,252,0,1,255,211,255,255,255,255,252,0,0,47,195,244,0,0,2,252,0,0,7,3,244,0,0,2,252,0,0,0,3,254,170,170,171,252,0,0,0,3,255,255,255,255,252,0,0,0,3,255,255,255,255,252,0,16,0,3,244,0,0,2,252,0,126,0,3,244,0,0,2,252,0,255,208,3,244,0,0,2,252,0,191,252,3,255,255,255,255,252,0,11,253,3,255,255,255,255,252,0,1,248,2,255,255,255,255,248,0,0,32,0,0,0,0,0,0,0,0,0,1,84,0,5,64,0,0,0,0,2,248,0,15,192,0,0,0,0,2,248,0,15,192,0,0,0,4,2,248,0,15,192,28,0,0,15,2,248,0,15,192,191,0,0,47,194,255,255,143,199,255,128,0,63,130,255,255,143,255,253,0,0,191,2,255,255,143,255,208,0,0,254,2,248,0,15,249,0,0,2,252,2,248,0,15,192,0,0,3,252,2,248,0,15,192,6,0,11,244,2,248,0,15,192,7,224,15,240,2,249,175,143,192,7,224,47,208,91,255,255,207,192,11,208,63,192,255,255,255,143,255,255,192,127,64,191,254,144,15,255,255,192,15,0,121,64,0,2,255,254,0,0,0,0,0,0,0,0,0,0, + // 0x6e05 清 + 5,110,34,36,68,37,2,252,2,0,0,0,1,252,0,0,0,15,224,0,0,1,252,0,0,0,31,254,1,85,86,253,85,85,0,7,255,195,255,255,255,255,255,64,0,191,211,255,255,255,255,255,64,0,31,192,0,1,252,0,0,0,0,3,64,0,1,252,0,0,0,0,0,1,255,255,255,255,253,0,0,0,1,255,255,255,255,253,0,0,0,0,85,86,253,85,84,0,16,0,0,0,1,252,0,0,0,125,0,10,170,170,254,170,170,144,255,224,31,255,255,255,255,255,224,191,253,31,255,255,255,255,255,224,11,255,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,0,40,0,63,255,255,255,248,0,0,0,0,63,255,255,255,248,0,0,0,0,63,170,170,171,248,0,0,0,0,63,0,0,2,248,0,0,1,0,63,0,0,2,248,0,0,11,128,63,255,255,255,248,0,0,15,208,63,255,255,255,248,0,0,47,192,63,85,85,86,248,0,0,63,128,63,0,0,2,248,0,0,191,0,63,85,85,86,248,0,0,254,0,63,255,255,255,248,0,2,252,0,63,255,255,255,248,0,7,248,0,63,0,0,2,248,0,15,240,0,63,0,0,2,248,0,31,224,0,63,0,0,2,248,0,63,192,0,63,0,0,2,248,0,63,128,0,63,0,3,255,248,0,15,0,0,63,0,2,255,244,0,1,0,0,63,0,1,255,144,0,0,0,0,0,0,0,0,0,0, + // 0x6e29 温 + 41,110,34,34,50,37,2,253,3,208,0,0,0,0,0,0,0,11,252,0,255,255,255,255,240,0,15,255,128,255,255,255,255,240,0,1,255,240,255,255,255,255,240,0,0,31,224,252,0,0,7,240,0,0,3,192,252,0,0,7,240,0,0,0,0,252,0,0,7,240,0,0,0,0,255,255,255,255,240,0,0,0,0,255,255,255,255,240,0,0,0,0,255,170,170,175,240,0,56,0,0,252,0,0,7,240,0,255,208,0,252,0,0,7,240,0,191,252,0,255,255,255,255,240,0,11,255,0,255,255,255,255,240,0,0,253,0,255,255,255,255,240,0,0,24,0,0,0,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,255,255,255,255,252,0,0,9,3,255,255,255,255,252,0,0,15,131,255,255,255,255,252,0,0,47,195,240,61,11,192,252,0,0,63,131,240,61,11,192,252,0,0,191,3,240,61,11,192,252,0,0,254,3,240,61,11,192,252,0,2,252,3,240,61,11,192,252,0,3,248,3,240,61,11,192,252,0,11,240,3,240,61,11,192,252,0,15,224,3,240,61,11,192,252,0,63,192,3,240,61,11,192,252,0,127,128,255,255,255,255,255,255,224,63,0,255,255,255,255,255,255,224,10,0,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x6e38 游 + 56,110,35,36,68,37,1,252,0,0,0,31,192,0,164,0,0,3,224,0,31,192,1,252,0,0,11,253,0,31,192,2,252,0,0,7,255,128,31,192,3,248,0,0,0,191,208,31,192,3,244,0,0,0,31,128,31,192,7,255,255,248,0,2,127,255,255,235,255,255,248,0,0,127,255,255,239,255,255,248,0,0,127,255,255,255,213,85,80,0,0,21,253,85,127,192,0,0,0,0,1,252,0,127,64,0,0,30,0,1,252,0,255,0,0,0,63,240,1,252,0,47,255,255,208,127,254,1,248,0,3,255,255,240,7,255,1,255,255,195,255,255,224,0,189,2,255,255,128,0,63,192,0,24,2,255,255,128,0,191,0,0,0,2,248,31,128,6,253,0,0,0,3,244,31,128,11,244,0,0,0,3,244,31,128,11,224,0,0,0,3,240,31,128,11,224,0,0,56,3,240,47,175,255,255,248,0,63,7,240,47,175,255,255,248,0,127,7,224,47,111,255,255,248,0,254,11,208,47,64,11,224,0,0,253,15,192,47,64,11,224,0,2,252,15,192,63,64,11,224,0,3,248,47,128,63,64,11,224,0,7,244,63,64,63,0,11,224,0,11,240,127,0,63,0,11,224,0,15,224,254,0,63,0,11,224,0,47,194,252,0,191,0,11,224,0,63,199,244,127,254,15,255,224,0,11,66,240,63,252,7,255,192,0,0,0,128,63,224,3,254,0,0,0,0,0,0,0,0,0,0,0, + // 0x6e90 源 + 144,110,34,35,59,37,2,253,1,0,0,0,0,0,0,0,0,11,208,0,0,0,0,0,0,0,31,252,11,255,255,255,255,255,192,11,255,75,255,255,255,255,255,192,1,255,203,255,255,255,255,255,192,0,47,75,240,0,31,224,0,0,0,10,11,240,0,31,208,0,0,0,0,11,240,0,47,192,0,0,0,0,11,240,0,47,128,0,0,0,0,11,241,255,255,255,255,0,16,0,11,241,255,255,255,255,0,125,0,11,241,254,170,170,191,0,255,208,11,241,248,0,0,127,0,191,252,11,241,248,0,0,127,0,11,252,11,225,255,255,255,255,0,0,244,11,225,255,255,255,255,0,0,16,11,225,253,85,85,191,0,0,0,11,225,248,0,0,127,0,0,0,15,225,248,0,0,127,0,0,0,15,209,254,170,170,191,0,0,16,15,209,255,255,255,255,0,0,61,15,193,255,255,255,255,0,0,127,15,192,0,15,192,0,0,0,254,31,192,0,15,192,16,0,1,253,47,192,184,15,193,248,0,2,252,63,128,253,15,194,252,0,3,248,63,66,252,15,192,254,0,11,240,127,3,244,15,192,191,64,15,240,255,11,240,15,192,63,192,31,208,253,31,208,15,192,31,208,63,194,252,63,128,15,192,15,224,127,67,248,63,0,15,192,11,144,191,11,240,5,15,255,192,0,0,30,7,224,0,15,255,128,0,0,0,0,128,0,7,249,0,0,0, + // 0x6ea2 溢 + 162,110,34,35,59,37,2,253,1,0,0,0,0,0,0,0,0,15,208,0,0,31,255,248,0,0,47,252,0,9,31,255,252,0,0,11,255,64,47,223,255,254,0,0,0,255,192,63,128,0,191,64,0,0,47,0,255,0,0,63,192,0,0,9,2,253,0,0,31,240,0,0,0,7,252,0,0,15,253,0,0,0,31,255,255,255,254,255,192,0,0,127,219,255,255,252,191,64,0,0,31,70,170,170,168,29,0,125,0,5,0,0,0,0,0,0,255,208,0,0,0,0,0,0,0,191,248,0,0,31,255,252,0,0,11,252,0,9,31,255,254,0,0,1,244,0,63,223,255,255,0,0,0,16,0,127,64,0,63,128,0,0,0,0,255,0,0,31,208,0,0,0,3,253,0,0,15,240,0,0,0,11,244,0,0,3,252,0,0,0,47,224,0,0,0,255,128,0,52,255,255,255,255,255,255,224,0,191,191,255,255,255,255,255,128,0,254,46,255,255,255,255,246,0,1,253,2,244,61,15,131,240,0,2,252,2,244,61,15,131,240,0,3,248,2,244,61,15,131,240,0,7,240,2,244,61,15,131,240,0,15,240,2,244,61,15,131,240,0,31,208,2,244,61,15,131,240,0,63,192,2,244,61,15,131,240,0,127,128,255,255,255,255,255,255,224,191,0,255,255,255,255,255,255,224,46,0,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x6ed1 滑 + 209,110,34,35,59,37,1,253,0,128,0,0,0,0,0,0,0,2,248,0,10,170,170,170,164,0,7,255,128,15,255,255,255,248,0,1,255,244,15,255,255,255,248,0,0,47,248,15,192,0,2,248,0,0,7,240,15,192,0,2,248,0,0,0,224,15,192,0,3,248,0,0,0,0,15,192,191,255,248,0,0,0,0,15,192,191,255,248,0,0,0,0,15,192,188,2,248,0,4,0,0,15,192,188,2,248,0,47,128,6,175,234,254,171,254,160,127,248,11,255,255,255,255,255,240,31,255,139,255,255,255,255,255,240,1,255,139,224,0,0,0,3,240,0,47,11,224,0,0,0,3,240,0,5,11,234,170,170,170,167,240,0,0,11,239,255,255,255,251,240,0,0,0,15,255,255,255,248,0,0,0,0,15,192,0,2,248,0,0,1,128,15,192,0,2,248,0,0,3,240,15,234,170,171,248,0,0,7,244,15,255,255,255,248,0,0,11,240,15,255,255,255,248,0,0,15,224,15,192,0,2,248,0,0,47,192,15,192,0,2,248,0,0,63,128,15,234,170,171,248,0,0,255,0,15,255,255,255,248,0,1,254,0,15,255,255,255,248,0,3,252,0,15,192,0,2,248,0,7,248,0,15,192,0,2,248,0,15,240,0,15,192,0,2,248,0,15,224,0,15,192,2,171,244,0,3,192,0,15,192,3,255,240,0,0,0,0,15,192,1,255,144,0, + // 0x6f0f 漏 + 15,111,34,35,59,37,1,253,1,64,0,0,0,0,0,0,0,3,240,3,255,255,255,255,255,128,15,254,3,255,255,255,255,255,192,2,255,211,255,255,255,255,255,192,0,127,211,240,0,0,0,31,192,0,15,131,240,0,0,0,31,192,0,2,3,240,0,0,0,31,192,0,0,3,255,255,255,255,255,192,0,0,3,255,255,255,255,255,192,0,0,3,255,255,255,255,255,192,4,0,3,240,0,0,0,0,0,31,64,3,240,0,0,0,0,0,63,224,3,240,0,0,0,0,0,127,253,3,255,255,255,255,255,240,11,255,131,255,255,255,255,255,240,0,255,3,250,170,175,234,170,160,0,29,3,240,0,15,192,0,0,0,0,7,240,0,15,192,0,0,0,0,7,255,255,255,255,255,208,0,0,7,255,255,255,255,255,208,0,0,11,255,234,175,234,175,208,0,45,11,239,128,15,192,7,208,0,63,75,223,141,15,206,7,208,0,127,15,223,175,143,223,199,208,0,191,15,207,139,239,199,247,208,0,253,31,207,129,207,192,199,208,1,252,47,143,128,15,192,7,208,3,252,63,79,140,15,205,7,208,7,244,63,15,191,79,239,135,208,11,240,127,15,143,223,203,231,208,15,224,254,15,131,223,193,199,208,47,193,252,15,128,79,192,7,208,63,195,248,15,128,15,193,91,208,15,65,244,15,128,15,193,255,192,1,0,32,15,128,11,192,255,64, + // 0x6fc0 激 + 192,111,34,36,68,37,2,252,0,0,0,46,64,2,228,0,0,15,128,0,63,192,2,248,0,0,47,244,0,63,64,3,244,0,0,31,254,0,127,0,3,240,0,0,3,255,127,255,255,131,240,0,0,0,127,63,255,255,135,240,0,0,0,28,63,85,111,139,224,0,0,0,0,63,0,31,143,255,255,224,0,0,63,85,111,143,255,255,224,0,0,63,255,255,159,255,255,224,0,0,63,255,255,175,192,127,0,125,0,63,0,31,191,192,126,0,255,128,63,0,31,255,192,190,0,255,244,63,85,111,255,192,189,0,31,252,63,255,255,255,208,253,0,2,244,63,255,255,255,208,252,0,0,96,0,63,64,247,224,252,0,0,0,0,63,64,114,241,252,0,0,0,0,63,64,1,242,248,0,0,1,255,255,255,241,247,244,0,0,1,255,255,255,240,251,240,0,0,53,255,255,255,224,255,240,0,0,190,2,244,0,0,127,224,0,0,254,2,244,0,0,63,208,0,1,252,2,255,255,64,63,192,0,3,252,3,255,255,64,63,128,0,3,244,3,255,255,64,127,192,0,11,240,7,240,63,64,255,240,0,15,224,11,224,63,2,255,244,0,31,208,15,192,63,7,246,252,0,63,192,63,128,63,31,240,255,0,127,64,191,0,127,127,192,127,192,191,2,253,47,255,255,64,47,224,46,7,248,31,253,253,0,11,192,0,1,208,10,144,48,0,2,0,0,0,0,0,0,0,0,0,0, + // 0x706f 灯 + 111,112,34,35,59,37,2,253,0,10,128,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,7,255,255,255,255,224,0,15,192,7,255,255,255,255,224,0,15,192,7,255,255,255,255,224,0,15,192,1,85,86,254,85,64,0,15,192,144,0,0,253,0,0,47,15,193,248,0,0,253,0,0,47,15,195,240,0,0,253,0,0,63,15,195,240,0,0,253,0,0,63,15,199,208,0,0,253,0,0,62,15,203,192,0,0,253,0,0,62,15,207,128,0,0,253,0,0,125,15,239,0,0,0,253,0,0,188,15,198,0,0,0,253,0,0,252,31,192,0,0,0,253,0,0,120,31,192,0,0,0,253,0,0,0,31,192,0,0,0,253,0,0,0,47,192,0,0,0,253,0,0,0,63,128,0,0,0,253,0,0,0,63,192,0,0,0,253,0,0,0,63,240,0,0,0,253,0,0,0,127,252,0,0,0,253,0,0,0,191,255,0,0,0,253,0,0,0,254,63,192,0,0,253,0,0,1,253,31,240,0,0,253,0,0,3,252,11,248,0,0,253,0,0,7,244,2,240,0,0,253,0,0,15,240,0,192,0,0,253,0,0,63,208,0,0,0,1,253,0,0,191,192,0,0,63,255,253,0,0,255,0,0,0,47,255,252,0,0,61,0,0,0,15,255,240,0,0,4,0,0,0,10,169,0,0,0, + // 0x70b9 点 + 185,112,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,255,255,255,254,0,0,0,0,7,255,255,255,254,0,0,0,0,7,255,255,255,254,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,253,0,0,0,0,47,192,0,0,253,0,0,0,0,47,192,0,0,253,0,0,0,0,47,192,0,0,253,0,0,0,0,47,192,0,0,253,0,0,0,0,47,192,0,0,253,0,0,0,0,47,192,0,0,253,0,0,0,0,47,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,0,0,1,64,11,192,0,1,253,11,224,15,208,15,224,0,3,252,7,240,11,240,11,244,0,11,244,7,240,3,244,3,252,0,15,240,3,240,3,248,0,254,0,63,208,3,244,1,252,0,191,64,191,128,3,244,0,253,0,63,192,255,0,3,248,0,254,0,47,128,24,0,2,80,0,64,0,4,0, + // 0x70ed 热 + 237,112,34,36,68,37,2,252,0,31,192,0,7,240,0,0,0,0,31,192,0,7,224,0,0,0,0,31,192,0,11,224,0,0,0,0,31,192,0,11,224,0,0,0,0,31,192,0,11,224,0,0,0,191,255,255,207,255,255,255,192,0,191,255,255,207,255,255,255,192,0,191,255,255,207,255,255,255,192,0,0,31,192,0,11,224,15,192,0,0,31,192,0,15,208,15,192,0,0,31,192,0,15,208,15,192,0,0,31,193,128,15,192,15,192,0,0,31,255,193,15,192,15,192,0,0,127,255,207,239,192,15,192,0,111,255,255,175,255,192,15,192,0,255,255,228,7,255,128,15,192,0,255,255,192,0,191,224,15,192,0,185,31,192,0,127,253,15,192,0,0,31,192,0,255,255,143,192,0,0,31,192,2,252,191,207,194,64,0,31,192,7,248,31,79,195,240,0,31,192,31,240,2,11,211,240,31,255,192,191,208,0,7,231,224,15,255,64,255,64,0,3,255,208,11,249,0,61,0,0,2,255,192,0,0,0,16,0,0,0,190,0,0,228,0,0,0,0,2,192,0,1,252,7,240,15,224,15,224,0,3,248,7,240,11,240,11,244,0,11,240,3,240,3,244,3,252,0,15,224,3,244,3,248,1,254,0,63,192,3,244,2,252,0,191,64,191,128,3,244,1,252,0,63,192,255,0,3,248,0,253,0,47,192,29,0,1,80,0,80,0,13,0,0,0,0,0,0,0,0,0,0, + // 0x7247 片 + 71,114,32,36,32,37,1,252,0,0,0,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,234,170,171,254,170,170,0,31,255,255,255,255,255,255,0,31,255,255,255,255,255,255,0,31,255,255,255,255,255,255,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,234,170,170,171,252,0,0,127,64,0,0,2,252,0,0,191,0,0,0,2,252,0,0,255,0,0,0,2,252,0,0,254,0,0,0,2,252,0,2,253,0,0,0,2,252,0,3,252,0,0,0,2,252,0,11,248,0,0,0,2,252,0,31,240,0,0,0,2,252,0,63,224,0,0,0,2,252,0,127,192,0,0,0,2,252,0,31,64,0,0,0,2,252,0,6,0,0,0,0,2,252,0,0,0,0,0,0,0,0,0, + // 0x7269 物 + 105,114,34,35,59,37,1,253,0,3,244,0,11,128,0,0,0,0,3,244,0,15,208,0,0,0,6,67,244,0,15,192,0,0,0,11,211,244,0,31,192,0,0,0,15,195,244,0,47,64,0,0,0,15,195,244,0,63,0,0,0,0,15,195,244,0,127,255,255,255,240,15,195,244,0,255,255,255,255,240,31,255,255,225,255,255,255,255,240,31,255,255,227,248,47,71,247,240,47,255,255,231,240,63,11,211,240,63,3,244,15,224,126,15,199,240,63,3,244,47,192,189,15,199,240,190,3,244,127,128,252,31,135,240,188,3,244,127,2,248,47,135,240,44,3,244,13,3,240,63,71,240,0,3,244,0,7,240,63,11,224,0,3,250,244,15,208,190,11,224,0,3,255,244,47,192,253,11,224,0,111,255,248,63,65,252,15,208,27,255,255,144,255,3,248,15,208,127,255,244,2,252,3,240,15,208,63,251,244,7,248,11,240,15,208,61,3,244,31,240,15,208,15,192,0,3,244,47,192,47,192,15,192,0,3,244,3,0,127,64,31,192,0,3,244,0,0,255,0,47,192,0,3,244,0,2,253,0,47,128,0,3,244,0,7,248,0,63,128,0,3,244,0,31,240,0,127,64,0,3,244,0,127,192,0,255,0,0,3,244,1,255,65,255,255,0,0,3,244,0,189,0,255,252,0,0,3,244,0,36,0,255,244,0,0,3,244,0,0,0,20,0,0, + // 0x7279 特 + 121,114,35,35,59,37,1,253,0,3,244,0,0,11,224,0,0,0,3,244,0,0,15,224,0,0,10,131,244,0,0,15,224,0,0,15,195,244,0,0,15,224,0,0,15,195,244,2,255,255,255,255,192,15,195,244,2,255,255,255,255,192,15,195,244,2,255,255,255,255,192,31,215,249,80,0,15,224,0,0,31,255,255,224,0,15,224,0,0,47,255,255,224,0,15,224,0,0,63,255,255,224,0,15,224,0,0,63,3,244,63,255,255,255,255,244,126,3,244,63,255,255,255,255,244,189,3,244,63,255,255,255,255,244,124,3,244,0,0,0,7,244,0,8,3,244,0,0,0,7,240,0,0,3,244,16,0,0,7,240,0,0,3,250,244,0,0,7,240,0,0,3,255,248,0,0,7,244,0,0,191,255,255,255,255,255,255,240,111,255,254,95,255,255,255,255,240,127,255,244,15,255,255,255,255,240,63,231,244,0,0,0,7,240,0,41,3,244,0,124,0,7,240,0,0,3,244,0,254,0,7,240,0,0,3,244,0,127,128,7,240,0,0,3,244,0,47,208,7,240,0,0,3,244,0,15,240,7,240,0,0,3,244,0,3,244,7,240,0,0,3,244,0,2,192,7,240,0,0,3,244,0,0,0,7,240,0,0,3,244,0,0,21,91,240,0,0,3,244,0,0,31,255,240,0,0,3,244,0,0,15,255,224,0,0,3,244,0,0,15,254,64,0, + // 0x7387 率 + 135,115,33,36,68,37,2,252,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,0,0,0,47,192,0,0,0,0,1,0,0,63,64,0,0,224,0,15,192,0,254,2,64,3,253,0,47,248,10,252,7,240,15,248,0,7,255,47,240,15,208,63,208,0,0,255,239,240,63,129,255,64,0,0,47,7,253,190,0,188,0,0,0,4,0,255,252,0,0,0,0,0,0,0,63,242,208,0,0,0,0,1,128,31,199,240,244,0,0,0,31,208,63,2,255,255,64,0,2,255,224,253,85,254,255,224,0,127,255,191,255,255,255,31,253,0,191,228,127,255,255,255,130,255,128,62,0,63,170,164,15,192,127,64,16,0,0,7,240,10,0,28,0,0,0,0,7,240,0,0,0,0,0,0,0,7,244,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x73af 环 + 175,115,34,32,32,37,1,253,127,255,255,47,255,255,255,255,240,127,255,255,47,255,255,255,255,240,127,255,255,47,255,255,255,255,240,0,127,0,0,0,15,240,0,0,0,127,0,0,0,31,224,0,0,0,127,0,0,0,47,192,0,0,0,127,0,0,0,63,128,0,0,0,127,0,0,0,191,64,0,0,0,127,0,0,1,255,64,0,0,0,127,0,0,3,255,173,0,0,63,255,252,0,7,255,255,64,0,63,255,252,0,15,255,191,192,0,63,255,252,0,63,255,95,240,0,0,127,0,0,191,255,75,248,0,0,127,0,1,255,63,67,253,0,0,127,0,3,253,63,64,255,0,0,127,0,15,248,63,64,127,192,0,127,0,127,240,63,64,47,224,0,127,0,191,192,63,64,15,240,0,127,0,47,0,63,64,7,128,0,127,0,13,0,63,64,1,0,0,127,110,0,0,63,64,0,0,0,127,255,0,0,63,64,0,0,6,255,255,0,0,63,64,0,0,127,255,228,0,0,63,64,0,0,127,253,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,36,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0, + // 0x7528 用 + 40,117,32,34,16,37,1,252,0,21,85,85,85,85,85,85,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,127,0,0,254,0,0,191,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,191,255,255,255,255,255,255,0,191,255,255,255,255,255,255,0,255,255,255,255,255,255,255,0,254,85,85,254,85,85,191,0,253,0,0,253,0,0,191,1,252,0,0,253,0,0,191,2,252,0,0,253,0,0,191,3,248,0,0,253,0,0,191,3,244,0,0,253,0,0,191,11,240,0,0,253,0,0,191,15,240,0,0,253,0,0,191,47,208,0,0,253,5,65,255,127,192,0,0,253,11,255,254,127,64,0,0,253,7,255,252,14,0,0,0,189,3,255,224,0,0,0,0,0,0,0,0, + // 0x7535 电 + 53,117,32,35,24,37,4,253,0,0,0,106,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,21,85,85,191,85,85,85,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,0,0,191,0,0,127,0,127,0,0,191,0,0,127,0,127,0,0,191,0,0,127,0,127,0,0,191,0,0,127,0,127,0,0,191,0,0,191,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,0,0,191,0,0,127,0,127,0,0,191,0,0,127,0,127,0,0,191,0,0,127,0,127,0,0,191,0,0,127,0,127,85,85,191,85,85,191,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,0,0,191,0,0,0,128,127,0,0,191,0,0,0,253,21,0,0,191,0,0,0,253,0,0,0,191,0,0,0,253,0,0,0,191,0,0,1,252,0,0,0,127,128,0,3,252,0,0,0,127,255,255,255,248,0,0,0,63,255,255,255,240,0,0,0,11,255,255,255,208,0,0,0,0,85,85,85,0, + // 0x7565 略 + 101,117,33,36,68,37,3,252,0,0,0,0,3,144,0,0,0,0,0,0,0,11,240,0,0,0,255,255,255,64,15,224,0,0,0,255,255,255,64,47,192,0,0,0,255,255,255,64,63,255,255,244,0,244,60,31,64,255,255,255,252,0,244,60,31,66,255,255,255,244,0,244,60,31,71,252,0,15,240,0,244,60,31,95,254,0,31,208,0,244,60,31,191,255,64,63,192,0,244,60,31,255,175,192,255,0,0,244,60,31,254,15,242,253,0,0,244,60,31,120,7,255,248,0,0,255,255,255,64,2,255,240,0,0,255,255,255,64,0,255,192,0,0,255,255,255,64,2,255,244,0,0,244,60,31,64,15,255,254,0,0,244,60,31,64,191,242,255,208,0,244,60,31,71,255,128,127,253,0,244,60,31,191,253,0,15,255,192,244,60,31,255,224,0,1,255,64,244,60,31,255,255,255,255,254,0,244,60,31,103,255,255,255,244,0,244,60,31,71,255,255,255,244,0,255,255,255,71,240,0,3,244,0,255,255,255,71,240,0,3,244,0,255,255,255,71,240,0,3,244,0,244,0,0,7,240,0,3,244,0,244,0,0,7,240,0,3,244,0,244,0,0,7,240,0,3,244,0,244,0,0,7,240,0,3,244,0,0,0,0,7,255,255,255,244,0,0,0,0,7,255,255,255,244,0,0,0,0,7,255,255,255,244,0,0,0,0,7,240,0,3,244,0,0,0,0,0,0,0,0,0,0, + // 0x767d 白 + 125,118,27,36,252,37,5,252,0,0,3,228,0,0,0,0,0,7,252,0,0,0,0,0,11,248,0,0,0,0,0,15,240,0,0,0,0,0,31,240,0,0,0,0,0,47,208,0,0,0,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,85,85,85,85,87,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252,254,85,85,85,85,87,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,85,85,85,85,87,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,0,0,0,0,0,0,0, + // 0x7684 的 + 132,118,32,35,24,37,3,253,0,30,128,0,7,144,0,0,0,47,192,0,11,240,0,0,0,63,128,0,15,224,0,0,0,63,64,0,15,208,0,0,0,127,0,0,31,192,0,0,0,190,0,0,63,192,0,0,255,255,255,208,63,255,255,253,255,255,255,208,191,255,255,253,255,255,255,208,255,255,255,253,253,0,15,209,253,0,0,253,253,0,15,211,248,0,0,253,253,0,15,219,240,0,0,252,253,0,15,239,224,0,0,252,253,0,15,239,192,0,0,252,253,0,15,210,66,0,0,252,253,0,15,208,31,128,0,252,255,255,255,208,31,208,0,252,255,255,255,208,11,240,0,252,255,255,255,208,3,252,0,252,253,0,15,208,1,254,1,252,253,0,15,208,0,191,1,252,253,0,15,208,0,63,193,252,253,0,15,208,0,47,194,248,253,0,15,208,0,15,66,248,253,0,15,208,0,4,2,248,253,0,15,208,0,0,3,248,253,0,15,208,0,0,3,244,253,0,15,208,0,0,3,244,255,255,255,208,0,0,7,240,255,255,255,208,0,0,11,240,255,255,255,208,0,0,31,224,253,0,0,0,2,255,255,208,253,0,0,0,0,255,255,192,253,0,0,0,0,255,254,0,0,0,0,0,0,0,0,0, + // 0x76d1 监 + 209,118,33,34,50,37,2,254,0,0,31,192,0,164,0,0,0,6,160,31,192,0,254,0,0,0,11,240,31,192,1,252,0,0,0,11,240,31,192,2,252,0,0,0,11,240,31,192,3,248,0,0,0,11,240,31,192,7,255,255,255,192,11,240,31,192,11,255,255,255,192,11,240,31,192,15,255,255,255,192,11,240,31,192,47,192,0,0,0,11,240,31,192,63,128,0,0,0,11,240,31,192,191,2,128,0,0,11,240,31,193,254,15,224,0,0,11,240,31,195,252,15,252,0,0,11,240,31,207,244,3,255,64,0,11,240,31,195,224,0,191,208,0,11,240,31,192,128,0,47,244,0,11,224,31,192,0,0,11,248,0,0,0,31,192,0,0,2,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,252,2,244,7,240,15,224,0,0,252,2,244,7,240,15,224,0,0,252,2,244,7,240,15,224,0,0,252,2,244,7,240,15,224,0,0,252,2,244,7,240,15,224,0,0,252,2,244,7,240,15,224,0,0,252,2,244,7,240,15,224,0,0,252,2,244,7,240,15,224,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x76f4 直 + 244,118,33,35,59,37,2,253,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,7,244,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,26,175,250,170,170,64,0,5,80,63,255,255,255,255,128,0,15,224,63,255,255,255,255,128,0,15,224,63,64,0,0,47,128,0,15,224,63,64,0,0,47,128,0,15,224,63,149,85,85,127,128,0,15,224,63,255,255,255,255,128,0,15,224,63,255,255,255,255,128,0,15,224,63,64,0,0,47,128,0,15,224,63,64,0,0,47,128,0,15,224,63,149,85,85,127,128,0,15,224,63,255,255,255,255,128,0,15,224,63,255,255,255,255,128,0,15,224,63,64,0,0,47,128,0,15,224,63,64,0,0,47,128,0,15,224,63,170,170,170,191,128,0,15,224,63,255,255,255,255,128,0,15,224,63,255,255,255,255,128,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0, + // 0x7701 省 + 1,119,34,35,59,37,1,253,0,0,0,0,252,0,0,0,0,0,0,0,0,252,0,0,0,0,0,0,184,0,252,0,61,0,0,0,1,254,0,252,0,255,128,0,0,7,252,0,252,0,63,240,0,0,31,240,0,252,0,15,252,0,0,127,208,0,252,0,2,255,64,2,255,64,0,252,0,224,191,208,31,253,0,1,252,3,253,47,240,47,244,7,255,252,31,248,11,208,7,192,3,255,252,191,224,1,0,1,0,2,255,171,255,64,0,0,0,0,0,1,191,248,0,0,0,0,0,0,111,255,208,0,0,0,0,0,111,255,249,0,0,0,0,5,175,255,255,250,170,170,144,0,127,255,255,255,255,255,255,224,0,47,255,255,255,255,255,255,224,0,15,229,252,0,0,0,15,224,0,0,0,252,0,0,0,15,224,0,0,0,252,0,0,0,15,224,0,0,0,255,255,255,255,255,224,0,0,0,255,255,255,255,255,224,0,0,0,254,85,85,85,95,224,0,0,0,252,0,0,0,15,224,0,0,0,252,0,0,0,15,224,0,0,0,255,255,255,255,255,224,0,0,0,255,255,255,255,255,224,0,0,0,254,85,85,85,95,224,0,0,0,252,0,0,0,15,224,0,0,0,252,0,0,0,15,224,0,0,0,255,255,255,255,255,224,0,0,0,255,255,255,255,255,224,0,0,0,254,170,170,170,175,224,0,0,0,252,0,0,0,11,224,0, + // 0x7720 眠 + 32,119,34,33,41,37,2,253,127,255,253,11,255,255,255,255,64,127,255,253,11,255,255,255,255,64,127,255,253,11,255,255,255,255,64,127,0,189,11,224,0,0,63,64,127,0,189,11,224,0,0,63,64,127,0,189,11,224,0,0,63,64,127,0,189,11,224,0,0,63,64,127,0,189,11,240,0,0,63,64,127,255,253,11,255,255,255,255,64,127,255,253,11,255,255,255,255,64,127,255,253,11,255,255,255,255,64,127,0,189,11,224,7,240,0,0,127,0,189,11,224,3,240,0,0,127,0,189,11,224,3,240,0,0,127,0,189,11,224,3,240,0,0,127,0,189,11,240,7,244,0,0,127,255,253,11,255,255,255,255,208,127,255,253,11,255,255,255,255,208,127,255,253,11,255,255,255,255,208,127,0,189,11,224,2,248,0,0,127,0,189,11,224,1,252,0,0,127,0,189,11,224,1,252,0,0,127,0,189,11,224,0,252,0,0,127,0,189,11,224,0,253,0,0,127,255,253,11,224,0,190,0,0,127,255,253,11,224,0,127,1,208,127,255,253,11,224,0,63,2,240,127,0,0,11,224,107,127,130,240,127,0,0,11,255,255,95,195,240,63,0,2,255,255,255,79,247,240,0,0,2,255,255,249,7,255,208,0,0,1,255,228,0,2,255,192,0,0,0,144,0,0,0,127,0, + // 0x786e 确 + 110,120,33,36,68,37,1,252,0,0,0,0,1,228,0,0,0,0,0,0,0,2,252,0,0,0,63,255,255,248,3,244,0,0,0,63,255,255,248,11,255,255,64,0,63,255,255,248,15,255,255,224,0,0,63,128,0,31,255,255,208,0,0,63,64,0,63,128,63,192,0,0,63,0,0,191,0,63,64,0,0,127,0,1,254,0,191,0,0,0,190,0,3,252,1,252,0,0,0,253,0,15,255,255,255,255,192,0,252,0,31,255,255,255,255,192,1,252,0,11,255,255,255,255,192,2,255,255,225,252,3,240,15,192,3,255,255,224,252,3,240,15,192,3,255,255,224,252,3,240,15,192,11,248,7,224,255,171,250,175,192,15,248,7,224,255,255,255,255,192,31,248,7,224,255,255,255,255,192,63,248,7,224,252,3,240,15,192,127,248,7,224,252,3,240,15,192,255,248,7,224,252,3,240,15,192,127,248,7,224,252,3,240,15,192,45,248,7,224,255,255,255,255,192,5,248,7,225,255,255,255,255,192,1,248,7,225,255,255,255,255,192,1,248,7,226,248,0,0,15,192,1,255,255,227,244,0,0,15,192,1,255,255,231,240,0,0,15,192,1,255,255,235,240,0,0,15,192,1,248,0,15,224,0,0,15,192,1,248,0,47,192,0,0,31,192,1,248,0,127,128,0,31,255,192,0,0,0,63,0,0,15,255,192,0,0,0,8,0,0,15,254,0,0,0,0,0,0,0,0,0,0, + // 0x79bb 离 + 187,121,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,191,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,0,0,64,0,0,0,0,106,1,128,3,240,42,64,0,0,127,3,249,31,208,63,128,0,0,127,7,255,255,64,63,128,0,0,127,0,47,254,0,63,128,0,0,127,0,127,255,208,63,128,0,0,127,11,255,111,244,63,128,0,0,127,47,244,3,240,63,128,0,0,127,11,64,0,144,63,128,0,0,127,170,170,170,170,191,128,0,0,127,255,255,255,255,255,128,0,0,127,255,255,255,255,255,128,0,0,0,0,47,208,0,0,0,0,0,0,0,63,192,0,0,0,0,11,255,255,255,255,255,255,248,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,11,240,0,254,0,176,3,252,0,11,240,0,253,2,248,3,252,0,11,240,1,252,0,253,3,252,0,11,240,2,248,21,191,3,252,0,11,243,255,255,255,255,131,252,0,11,243,255,255,255,255,211,252,0,11,243,255,234,148,7,227,252,0,11,240,0,0,0,3,67,252,0,11,240,0,0,0,0,3,252,0,11,240,0,0,0,7,255,248,0,11,240,0,0,0,3,255,244,0,11,240,0,0,0,1,255,144,0, + // 0x79fb 移 + 251,121,34,35,59,37,1,253,0,0,1,0,0,15,144,0,0,0,0,111,192,0,47,192,0,0,0,111,255,240,0,127,128,0,0,63,255,255,208,1,255,255,254,0,63,255,244,0,7,255,255,255,128,47,155,240,0,47,255,255,255,0,0,7,240,0,191,192,0,254,0,0,7,240,7,255,192,2,252,0,0,7,240,47,255,240,7,248,0,0,7,240,15,231,253,31,240,0,0,11,240,3,0,255,191,192,0,63,255,255,240,0,63,255,64,0,63,255,255,240,0,15,253,0,0,63,255,255,240,0,191,240,0,0,0,15,240,0,7,255,208,0,0,0,31,240,1,255,255,253,0,0,0,63,248,15,255,227,252,0,0,0,127,254,3,254,11,240,0,0,0,255,255,130,144,47,255,255,224,1,255,255,208,0,191,255,255,240,3,251,247,244,2,255,255,255,240,7,231,242,244,15,248,0,31,208,15,199,240,224,191,240,0,63,192,47,135,240,71,255,253,0,191,64,127,71,240,7,254,255,129,255,0,190,7,240,2,208,127,231,252,0,60,7,240,0,0,15,255,244,0,36,7,240,0,0,2,255,208,0,0,7,240,0,0,7,255,64,0,0,7,240,0,0,127,252,0,0,0,7,240,0,7,255,224,0,0,0,7,240,6,255,255,64,0,0,0,7,240,47,255,244,0,0,0,0,7,240,15,254,0,0,0,0,0,7,240,7,144,0,0,0,0, + // 0x7a7a 空 + 122,122,33,34,50,37,2,254,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,64,11,240,3,240,0,127,0,63,64,11,240,3,240,0,127,0,63,64,15,224,3,240,0,127,0,63,64,15,208,3,240,0,127,0,63,64,47,192,3,240,0,0,0,0,0,63,192,3,240,0,32,0,0,0,255,64,3,240,0,63,0,0,7,254,0,3,244,0,127,0,0,191,248,0,3,255,255,254,0,47,255,224,0,2,255,255,252,0,63,255,64,0,0,191,255,244,0,15,228,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,208,0,0,191,255,255,255,255,255,208,0,0,191,255,255,255,255,255,208,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128, + // 0x7aef 端 + 239,122,35,35,59,37,1,253,0,5,0,0,0,15,192,0,0,0,47,64,0,0,15,192,0,0,0,47,64,11,224,15,192,15,192,0,47,64,11,224,15,192,15,192,0,47,64,11,224,15,192,15,192,0,47,64,11,224,15,192,15,192,0,47,64,11,224,15,192,15,192,0,47,64,11,224,15,192,15,192,63,255,255,139,255,255,255,255,192,63,255,255,139,255,255,255,255,192,63,255,255,139,255,255,255,255,192,0,0,0,0,0,0,0,0,0,6,0,57,0,0,0,0,0,0,31,64,127,0,0,0,0,0,0,15,128,126,63,255,255,255,255,244,15,128,189,63,255,255,255,255,244,15,192,189,63,255,255,255,255,244,11,192,252,0,0,47,192,0,0,11,192,252,0,0,63,192,0,0,7,208,252,0,0,63,64,0,0,7,209,248,15,255,255,255,255,224,3,225,244,15,255,255,255,255,224,3,226,240,15,255,255,255,255,224,3,211,240,15,193,244,63,7,224,0,3,246,223,193,244,63,7,224,0,7,255,223,193,244,63,7,224,27,255,255,239,193,244,63,7,224,191,255,254,79,193,244,63,7,224,127,254,64,15,193,244,63,7,224,62,64,0,15,193,244,63,7,224,0,0,0,15,193,244,63,7,224,0,0,0,15,193,244,63,7,224,0,0,0,15,193,244,63,111,224,0,0,0,15,193,244,63,127,208,0,0,0,10,128,80,0,63,64, + // 0x7b2c 第 + 44,123,34,35,59,37,1,253,0,46,64,0,0,248,0,0,0,0,63,128,0,1,253,0,0,0,0,127,64,0,3,252,0,0,0,0,255,170,170,135,254,170,170,160,2,255,255,255,207,255,255,255,240,3,255,255,255,239,255,255,255,240,15,241,252,0,191,130,252,0,0,63,208,254,2,255,0,255,0,0,127,128,127,2,252,0,63,64,0,30,0,56,0,112,0,41,0,0,0,255,255,255,255,255,255,248,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,0,0,0,252,0,2,252,0,0,0,0,0,252,0,2,252,0,0,0,0,0,252,0,2,252,0,0,31,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,0,0,252,0,0,0,0,0,127,0,0,252,0,0,0,0,0,191,0,0,252,0,0,0,0,0,255,255,255,255,255,255,255,192,0,255,255,255,255,255,255,255,192,1,255,255,255,255,255,255,255,192,2,252,0,191,252,0,0,63,128,0,0,3,255,252,0,0,63,128,0,0,47,249,252,0,0,63,64,0,1,255,208,252,0,0,127,64,0,31,255,0,252,0,0,191,0,1,255,248,0,252,3,255,255,0,47,255,128,0,252,1,255,253,0,15,252,0,0,252,0,255,244,0,7,128,0,0,252,0,0,0,0,0,0,0,0,252,0,0,0,0, + // 0x7b49 等 + 73,123,34,35,59,37,1,253,0,30,64,0,0,249,0,0,0,0,63,192,0,1,253,0,0,0,0,127,64,0,2,252,0,0,0,0,255,255,255,199,255,255,255,240,1,255,255,255,207,255,255,255,240,3,255,255,255,239,255,255,255,240,15,240,252,0,191,130,252,0,0,63,208,254,1,255,0,255,0,0,191,128,127,0,253,0,127,64,0,31,0,56,1,252,0,61,0,0,0,0,0,1,252,0,0,0,0,0,127,255,255,255,255,255,248,0,0,127,255,255,255,255,255,252,0,0,127,255,255,255,255,255,252,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,0,0,124,0,0,3,248,0,0,0,1,255,64,0,3,248,0,0,0,0,191,208,0,3,248,0,0,0,0,31,244,0,3,248,0,0,0,0,7,253,0,3,248,0,0,0,0,1,253,0,7,248,0,0,0,0,0,176,31,255,244,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,11,255,128,0,0, + // 0x7bb1 箱 + 177,123,34,35,59,37,1,253,0,30,0,0,0,228,0,0,0,0,47,192,0,0,254,0,0,0,0,63,128,0,1,252,0,0,0,0,127,64,0,3,252,0,0,0,0,255,255,255,199,255,255,255,240,1,255,255,255,207,255,255,255,240,3,255,255,255,239,255,255,255,240,11,244,253,0,127,194,252,0,0,31,224,191,0,255,0,255,0,0,127,192,63,2,253,0,63,64,0,47,64,62,0,116,0,46,64,0,5,1,252,0,0,0,0,0,0,0,1,252,0,47,255,255,255,192,0,1,252,0,47,255,255,255,192,0,2,252,0,47,255,255,255,192,47,255,255,255,111,128,0,47,192,47,255,255,255,111,128,0,47,192,47,255,255,255,111,128,0,47,192,0,7,252,0,47,234,170,191,192,0,15,253,0,47,255,255,255,192,0,31,255,64,47,255,255,255,192,0,63,255,208,47,128,0,47,192,0,127,255,244,47,128,0,47,192,0,255,254,254,47,128,0,47,192,2,253,252,255,111,234,170,191,192,7,245,252,63,47,255,255,255,192,31,225,252,28,47,255,255,255,192,63,193,252,0,47,128,0,47,192,127,65,252,0,47,128,0,47,192,46,1,252,0,47,128,0,47,192,8,1,252,0,47,255,255,255,192,0,1,252,0,47,255,255,255,192,0,1,252,0,47,255,255,255,192,0,1,252,0,47,128,0,47,192,0,1,252,0,26,64,0,21,64, + // 0x7c7b 类 + 123,124,34,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,11,0,7,240,0,126,0,0,0,63,192,7,240,0,255,64,0,0,31,240,7,240,2,253,0,0,0,11,248,7,240,7,248,0,0,0,3,252,7,240,15,240,0,0,0,0,248,7,240,31,192,0,0,63,255,255,255,255,255,255,255,128,63,255,255,255,255,255,255,255,128,63,255,255,255,255,255,255,255,128,0,0,2,255,255,224,0,0,0,0,0,11,255,255,248,0,0,0,0,0,127,247,243,255,64,0,0,0,2,255,135,240,191,240,0,0,0,111,254,7,240,31,255,64,0,7,255,244,7,240,3,255,254,64,255,255,128,7,240,0,127,255,128,63,248,0,1,80,0,7,255,0,31,128,0,2,160,63,64,29,0,0,0,0,7,240,127,244,0,0,0,0,0,11,240,7,255,0,0,0,0,0,11,240,0,188,0,0,127,255,255,255,255,255,255,255,128,127,255,255,255,255,255,255,255,128,127,255,255,255,255,255,255,255,128,0,0,0,127,255,0,0,0,0,0,0,0,255,191,192,0,0,0,0,0,3,254,47,224,0,0,0,0,0,31,252,15,253,0,0,0,0,1,255,244,3,255,208,0,0,0,111,255,208,0,255,254,64,0,175,255,254,0,0,47,255,255,144,255,255,224,0,0,2,255,255,192,63,253,0,0,0,0,31,255,0,42,64,0,0,0,0,0,90,0, + // 0x7d22 索 + 34,125,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,63,255,255,255,255,255,255,255,64,63,255,255,255,255,255,255,255,64,63,255,255,255,255,255,255,255,64,63,0,0,255,64,0,0,63,64,63,0,3,254,0,16,0,63,64,63,0,15,248,0,188,0,63,64,63,9,63,224,2,255,0,63,64,63,63,255,64,15,252,0,63,64,0,63,253,0,127,224,0,0,0,0,7,255,1,255,129,0,0,0,0,0,191,219,253,11,192,0,0,0,0,31,255,224,31,244,0,0,0,0,7,255,64,7,254,0,0,0,0,31,252,0,0,255,192,0,127,255,255,255,255,255,255,244,0,127,255,255,255,255,255,255,254,0,127,255,255,255,255,250,170,255,64,0,0,64,7,240,0,0,61,0,0,2,248,7,240,11,192,0,0,0,15,252,7,240,47,248,0,0,0,127,240,7,240,7,255,128,0,7,255,128,7,240,0,191,240,0,127,253,0,7,240,0,15,253,0,255,224,0,7,240,0,2,255,64,47,64,0,7,240,0,0,125,0,4,0,0,7,240,0,0,0,0, + // 0x7d2b 紫 + 43,125,34,35,59,37,1,253,0,0,63,0,3,244,0,0,0,0,0,63,0,3,244,0,0,0,0,0,63,0,3,244,0,24,0,3,240,63,0,3,244,1,254,0,3,240,63,255,211,244,111,255,128,3,240,63,255,211,255,255,253,0,3,240,63,255,211,255,254,64,0,3,240,63,0,3,254,64,0,0,3,240,63,0,3,244,0,2,0,3,240,63,0,83,244,0,3,240,3,240,127,255,227,248,0,7,240,27,255,255,255,227,255,255,255,240,127,255,255,255,65,255,255,255,208,127,255,164,31,144,127,255,255,64,41,64,0,127,192,0,0,0,0,0,0,1,255,0,30,0,0,0,0,7,75,252,0,191,208,0,0,0,31,255,224,2,255,64,0,0,0,47,255,128,15,252,0,0,0,0,2,255,224,127,224,40,0,0,0,0,47,254,255,65,255,0,0,0,0,7,255,252,0,191,192,0,0,0,0,255,208,0,31,244,0,63,255,255,255,255,255,255,253,0,63,255,255,255,255,255,255,255,64,63,255,255,255,255,255,255,255,208,21,64,0,1,253,0,0,15,240,0,0,16,1,252,0,16,7,128,0,1,254,1,252,2,253,0,0,0,11,254,1,252,7,255,128,0,0,127,244,1,252,0,127,244,0,7,255,192,1,252,0,11,255,0,47,254,0,1,252,0,1,255,208,11,240,0,1,252,0,0,47,128,2,64,0,1,252,0,0,5,0, + // 0x7ea2 红 + 162,126,35,34,50,37,1,254,0,1,128,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,15,240,1,85,85,85,85,64,0,31,224,7,255,255,255,255,224,0,63,192,7,255,255,255,255,224,0,127,128,7,255,255,255,255,224,0,255,0,0,0,11,240,0,0,1,253,3,128,0,11,240,0,0,3,248,7,244,0,11,240,0,0,11,240,15,240,0,11,240,0,0,31,208,47,224,0,11,240,0,0,191,255,255,192,0,11,240,0,0,127,255,255,0,0,11,240,0,0,63,255,253,0,0,11,240,0,0,41,71,248,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,255,64,0,0,11,240,0,0,3,253,0,80,0,11,240,0,0,11,254,191,240,0,11,240,0,0,63,255,255,240,0,11,240,0,0,63,255,255,224,0,11,240,0,0,63,254,144,0,0,11,240,0,0,41,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,27,208,0,11,240,0,0,0,107,255,224,0,11,240,0,0,127,255,255,239,255,255,255,255,244,127,255,254,79,255,255,255,255,244,63,254,64,15,255,255,255,255,244,57,64,0,5,85,85,85,85,80,0,0,0,0,0,0,0,0,0, + // 0x7ea7 级 + 167,126,35,36,68,37,1,252,0,2,64,0,0,0,0,0,0,0,3,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,15,224,15,255,255,255,240,0,0,31,192,15,255,255,255,240,0,0,63,128,15,255,255,255,224,0,0,127,0,0,31,192,15,208,0,0,254,0,0,31,192,31,192,0,1,252,2,0,31,192,47,192,0,3,248,11,192,31,192,63,128,0,7,240,15,224,31,192,63,64,0,15,208,63,192,47,192,127,0,0,63,213,191,64,47,128,190,0,0,191,255,254,0,47,128,255,255,128,127,255,252,0,63,128,255,255,192,63,235,244,0,63,193,255,255,192,16,15,224,0,63,224,0,47,128,0,47,192,0,63,240,0,63,64,0,127,0,0,127,244,0,127,0,0,253,27,192,191,252,0,191,0,3,254,255,192,191,253,0,253,0,15,255,255,192,253,191,2,252,0,127,255,244,0,253,63,131,248,0,127,249,0,1,252,47,203,240,0,62,64,0,2,252,15,255,224,0,16,0,1,211,248,7,255,192,0,0,0,111,231,240,2,255,64,0,0,11,255,255,240,2,255,64,0,1,255,255,159,224,11,255,208,0,47,255,228,47,192,63,255,248,0,63,254,0,127,129,255,199,255,0,63,208,0,255,11,255,1,255,224,40,0,2,254,63,252,0,63,244,0,0,1,252,15,208,0,11,208,0,0,0,36,7,0,0,1,128,0,0,0,0,0,0,0,0,0, + // 0x7ebf 线 + 191,126,34,35,59,37,2,253,0,5,0,0,2,252,0,0,0,0,15,208,0,2,252,61,0,0,0,15,224,0,2,252,191,192,0,0,47,192,0,2,252,47,244,0,0,63,128,0,2,252,3,244,0,0,127,0,0,2,252,0,160,0,0,254,0,0,1,252,0,24,0,1,252,0,0,1,253,191,254,0,3,248,13,0,107,255,255,254,0,7,240,31,143,255,255,255,249,0,15,208,63,203,255,255,164,0,0,63,128,191,11,250,252,0,0,0,191,239,254,0,0,253,0,0,0,255,255,252,0,0,253,0,1,0,191,255,244,0,0,253,6,191,64,122,95,224,0,0,255,255,255,128,0,47,192,0,111,255,255,255,128,0,127,0,47,255,255,254,80,0,0,253,0,47,255,255,64,0,0,3,248,1,31,229,127,0,30,0,15,246,191,64,0,63,64,63,192,63,255,255,64,0,63,64,191,0,255,255,255,0,0,63,130,253,0,127,254,64,0,0,47,203,248,0,62,64,0,0,0,31,255,240,0,0,0,0,0,0,15,255,128,0,0,0,6,64,0,15,254,0,0,0,1,191,128,0,47,248,0,0,1,191,255,192,2,255,248,3,0,111,255,254,0,47,255,252,3,208,255,255,128,6,255,245,254,7,208,191,224,0,127,255,128,191,223,192,116,0,0,63,248,0,63,255,192,0,0,0,31,64,0,15,255,64,0,0,0,4,0,0,2,253,0, + // 0x7ec6 细 + 198,126,34,35,59,37,1,253,0,0,208,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,3,252,3,255,255,255,255,208,0,11,244,3,255,255,255,255,208,0,15,240,3,255,255,255,255,208,0,47,192,3,249,95,245,95,208,0,63,128,3,240,11,224,15,208,0,191,0,3,240,11,224,15,208,0,253,0,3,240,11,224,15,208,3,252,2,211,240,11,224,15,208,7,240,3,251,240,11,224,15,208,31,224,15,243,240,11,224,15,208,127,239,255,211,240,11,224,15,208,127,255,255,131,240,11,224,15,208,63,255,255,3,240,11,224,15,208,62,151,252,3,240,11,224,15,208,0,11,244,3,255,255,255,255,208,0,31,208,3,255,255,255,255,208,0,127,128,3,255,255,255,255,208,1,254,0,3,240,11,224,15,208,7,253,175,243,240,11,224,15,208,47,255,255,243,240,11,224,15,208,127,255,255,227,240,11,224,15,208,63,255,148,3,240,11,224,15,208,46,64,0,3,240,11,224,15,208,0,0,0,3,240,11,224,15,208,0,0,0,3,240,11,224,15,208,0,0,1,163,240,11,224,15,208,0,22,255,243,244,11,224,15,208,47,255,255,243,255,255,255,255,208,127,255,255,147,255,255,255,255,208,63,254,64,3,255,255,255,255,208,57,0,0,3,240,0,0,15,208,0,0,0,3,240,0,0,15,208,0,0,0,1,80,0,0,0,0, + // 0x7ec8 终 + 200,126,35,35,59,37,1,253,0,3,64,0,0,165,0,0,0,0,7,240,0,1,253,0,0,0,0,15,240,0,3,252,0,0,0,0,15,224,0,7,248,0,0,0,0,47,192,0,15,255,255,253,0,0,63,128,0,47,255,255,255,64,0,191,0,0,127,255,255,255,0,0,254,0,1,255,128,1,253,0,2,252,6,3,255,208,3,248,0,3,244,15,223,255,240,11,240,0,15,240,31,255,227,252,47,208,0,31,192,63,159,128,255,191,128,0,127,235,255,6,0,127,255,0,0,191,255,253,0,0,47,252,0,0,63,255,248,0,0,63,253,0,0,41,75,240,0,2,255,255,128,0,0,31,208,0,15,254,191,244,0,0,63,128,1,191,244,31,255,64,0,255,0,31,255,192,3,255,244,2,252,0,47,254,0,0,191,248,11,250,191,203,224,57,0,11,224,47,255,255,194,0,191,208,0,128,127,255,255,192,0,191,253,0,0,63,254,144,0,0,11,255,128,0,41,0,0,0,0,0,191,192,0,0,0,0,0,0,0,15,64,0,0,0,0,0,20,0,0,0,0,0,0,6,224,63,144,0,0,0,0,91,255,240,255,254,64,0,0,111,255,255,240,31,255,244,0,0,191,255,254,64,0,191,255,128,0,127,249,0,0,0,6,255,248,0,41,0,0,0,0,0,47,254,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,0,32,0, + // 0x7ed3 结 + 211,126,34,35,59,37,1,253,0,2,0,0,0,11,240,0,0,0,7,224,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,224,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,63,128,15,255,255,255,255,240,0,191,0,15,255,255,255,255,240,0,254,0,15,255,255,255,255,240,2,252,3,69,85,95,245,85,80,3,248,11,240,0,11,240,0,0,15,240,15,240,0,11,240,0,0,47,208,63,192,0,11,240,0,0,191,255,255,128,0,11,240,0,0,191,255,255,0,0,15,240,0,0,63,255,253,3,255,255,255,255,192,62,91,248,3,255,255,255,255,192,0,15,240,3,255,255,255,255,192,0,63,192,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,3,253,5,160,0,0,0,0,0,15,255,255,240,255,255,255,255,64,127,255,255,240,255,255,255,255,64,63,255,254,64,255,255,255,255,64,63,249,0,0,253,0,0,63,64,25,0,0,0,253,0,0,63,64,0,0,0,0,253,0,0,63,64,0,0,0,0,253,0,0,63,64,0,0,27,240,253,0,0,63,64,0,111,255,240,253,0,0,63,64,127,255,255,244,253,0,0,63,64,127,255,254,64,255,255,255,255,64,127,250,64,0,255,255,255,255,64,57,0,0,0,255,255,255,255,64,0,0,0,0,253,0,0,63,64,0,0,0,0,253,0,0,42,64, + // 0x7ed9 给 + 217,126,34,36,68,37,1,252,0,3,64,0,0,14,64,0,0,0,7,240,0,0,47,192,0,0,0,15,240,0,0,63,192,0,0,0,15,208,0,0,127,224,0,0,0,47,192,0,0,255,244,0,0,0,63,128,0,1,255,252,0,0,0,191,0,0,3,252,254,0,0,0,253,0,0,11,244,127,64,0,2,252,11,128,31,224,47,208,0,7,244,15,224,63,192,15,244,0,15,224,63,192,255,0,3,253,0,47,213,191,67,253,0,1,255,128,191,255,255,31,255,255,255,255,240,127,255,252,127,255,255,255,239,224,63,255,248,63,239,255,255,199,192,20,15,240,14,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,3,252,22,193,255,255,255,252,0,15,255,255,193,255,255,255,252,0,63,255,255,193,255,255,255,252,0,63,255,249,1,252,0,2,252,0,63,228,0,1,252,0,2,252,0,24,0,0,1,252,0,2,252,0,0,0,0,1,252,0,2,252,0,0,0,0,1,252,0,2,252,0,0,0,27,209,252,0,2,252,0,0,111,255,209,252,0,2,252,0,47,255,255,209,252,0,2,252,0,63,255,249,1,255,255,255,252,0,63,249,0,1,255,255,255,252,0,57,0,0,1,255,255,255,252,0,0,0,0,1,252,0,2,252,0,0,0,0,1,252,0,2,252,0,0,0,0,0,0,0,0,0,0, + // 0x7edf 统 + 223,126,35,35,59,37,1,253,0,3,128,0,0,27,0,0,0,0,7,244,0,0,63,128,0,0,0,15,240,0,0,31,192,0,0,0,31,224,0,0,15,224,0,0,0,47,192,0,0,11,208,0,0,0,63,128,15,255,255,255,255,240,0,191,0,15,255,255,255,255,240,1,254,0,15,255,255,255,255,240,3,252,15,128,1,255,0,0,0,7,244,31,224,3,253,0,64,0,15,224,63,192,11,248,7,224,0,63,213,191,64,31,240,7,244,0,191,255,255,0,63,192,2,252,0,127,255,252,0,255,64,0,254,0,63,255,248,3,255,90,191,255,64,20,15,240,47,255,255,255,255,192,0,47,192,31,255,255,255,255,208,0,127,64,15,255,169,64,11,240,0,254,0,9,26,128,105,3,192,3,253,111,128,31,192,191,0,0,15,255,255,128,31,192,191,0,0,63,255,255,192,47,192,191,0,0,63,255,228,0,47,128,191,0,0,63,228,0,0,63,128,191,0,0,24,0,0,0,63,64,191,0,0,0,0,0,64,127,0,191,0,0,0,0,31,192,191,0,191,1,208,0,7,255,192,254,0,191,2,244,2,255,255,194,253,0,191,2,244,63,255,248,7,252,0,191,2,244,63,254,64,47,244,0,127,3,240,63,208,1,255,224,0,127,255,240,36,0,2,255,128,0,63,255,224,0,0,0,253,0,0,31,255,128,0,0,0,32,0,0,0,0,0, + // 0x7ee7 继 + 231,126,35,33,41,37,1,255,0,6,0,0,0,0,104,0,0,0,11,224,5,64,0,189,0,0,0,15,224,15,192,0,189,0,0,0,31,192,15,194,192,189,7,128,0,63,128,15,195,208,189,11,192,0,63,0,15,195,224,189,15,128,0,191,0,15,193,240,189,31,64,0,253,0,15,192,244,189,47,0,2,252,10,15,192,248,189,61,0,3,240,15,207,192,188,189,124,0,11,224,47,207,192,80,189,20,0,31,192,63,79,192,0,189,0,0,127,234,255,15,207,255,255,255,240,127,255,252,15,207,255,255,255,240,63,255,248,15,207,255,255,255,240,41,75,240,15,192,3,255,0,0,0,31,192,15,192,7,255,192,0,0,63,64,15,192,15,255,224,0,0,254,0,15,192,31,254,248,0,2,252,1,79,192,63,189,189,0,7,250,191,143,192,189,189,63,0,47,255,255,143,193,252,189,31,192,127,255,254,79,195,244,189,15,224,63,249,64,15,203,224,189,3,208,41,0,0,15,199,192,189,2,64,0,0,0,15,194,0,189,0,0,0,0,0,79,192,0,189,0,0,0,0,111,207,192,0,189,0,0,1,175,255,207,192,0,125,0,0,127,255,255,143,192,0,0,0,0,63,255,144,15,255,255,255,255,244,63,144,0,15,255,255,255,255,244,16,0,0,15,255,255,255,255,244, + // 0x7eea 绪 + 234,126,35,35,59,37,1,253,0,3,64,0,0,190,0,0,0,0,7,240,0,0,190,0,0,0,0,15,224,0,0,190,0,11,144,0,15,192,0,0,190,0,31,208,0,47,128,3,255,255,255,127,192,0,63,64,3,255,255,255,255,64,0,191,0,3,255,255,255,255,0,0,253,0,0,0,190,2,253,0,1,252,7,0,0,190,7,248,0,3,244,15,208,0,190,15,240,0,11,224,31,192,0,190,47,208,0,15,192,63,128,0,191,127,192,0,47,214,191,63,255,255,255,255,244,191,255,253,63,255,255,255,255,244,63,255,252,63,255,255,255,255,244,62,155,240,0,0,127,208,0,0,0,15,208,0,2,255,64,0,0,0,63,128,0,31,252,0,0,0,0,191,0,0,191,255,255,255,64,1,252,1,11,255,255,255,255,64,7,250,255,191,255,255,255,255,64,31,255,255,191,255,64,0,63,64,63,255,254,47,127,64,0,63,64,63,249,64,4,63,64,0,63,64,41,0,0,0,63,234,170,191,64,0,0,0,0,63,255,255,255,64,0,0,0,64,63,255,255,255,64,0,0,111,208,63,64,0,63,64,1,111,255,224,63,64,0,63,64,63,255,255,144,63,64,0,63,64,63,255,144,0,63,255,255,255,64,63,144,0,0,63,255,255,255,64,20,0,0,0,63,255,255,255,64,0,0,0,0,63,64,0,63,64,0,0,0,0,26,64,0,21,0, + // 0x7eed 续 + 237,126,34,36,68,37,1,252,0,2,64,0,0,31,192,0,0,0,7,240,0,0,31,192,0,0,0,11,240,0,0,31,192,0,0,0,15,208,2,255,255,255,254,0,0,31,192,3,255,255,255,254,0,0,63,64,3,255,255,255,254,0,0,127,0,0,0,31,192,0,0,0,253,0,0,0,31,192,0,0,1,252,14,0,0,31,192,0,0,3,240,31,207,255,255,255,255,208,11,224,63,79,255,255,255,255,208,15,192,127,15,255,255,255,255,192,127,255,253,0,0,0,0,15,192,127,255,248,0,40,6,144,47,128,63,255,240,0,127,71,240,63,0,41,15,224,0,47,231,240,63,0,0,31,192,1,3,251,240,45,0,0,63,0,11,192,215,240,0,0,0,189,0,11,244,7,224,0,0,1,252,111,1,254,7,224,0,0,7,255,255,0,61,11,224,0,0,31,255,255,0,4,15,208,0,0,63,255,144,63,255,255,255,255,224,63,228,0,63,255,255,255,255,224,24,0,0,63,255,255,255,255,224,0,0,6,0,0,63,64,0,0,0,0,191,64,0,255,8,0,0,0,31,255,64,2,253,63,64,0,6,255,253,0,11,248,63,224,0,127,255,144,0,47,240,11,252,0,63,244,0,1,255,192,2,255,0,62,64,0,15,255,0,0,127,192,16,0,0,127,248,0,0,31,240,0,0,0,47,208,0,0,7,224,0,0,0,13,0,0,0,1,128,0,0,0,0,0,0,0,0,0, + // 0x7eff 绿 + 255,126,35,35,59,37,1,253,0,10,64,0,0,0,0,0,0,0,15,224,2,255,255,255,255,0,0,31,208,2,255,255,255,255,0,0,47,192,2,255,255,255,255,0,0,63,128,0,0,0,0,127,0,0,127,0,0,0,0,0,127,0,0,254,0,0,0,0,0,127,0,1,253,0,0,170,170,170,255,0,2,252,8,0,255,255,255,255,0,3,240,47,64,255,255,255,254,0,11,224,63,128,0,0,0,190,0,31,192,191,0,0,0,0,190,0,127,255,253,0,0,0,0,190,0,127,255,252,15,255,255,255,255,244,63,255,244,15,255,255,255,255,244,41,15,224,15,255,255,255,255,244,0,47,192,0,0,11,224,0,0,0,127,64,0,64,11,224,1,0,0,254,0,3,224,11,224,11,192,2,252,1,7,252,11,224,47,240,11,250,191,1,255,11,224,191,128,47,255,255,0,127,139,242,254,0,127,255,254,0,31,75,255,244,0,63,254,64,0,8,47,255,192,0,45,0,0,0,1,255,255,0,0,0,0,0,0,11,255,255,192,0,0,0,6,0,127,235,235,244,0,0,1,191,2,255,75,227,253,0,0,127,255,95,252,11,224,255,208,47,255,254,63,224,11,224,63,248,63,255,128,31,64,11,224,11,240,63,228,0,4,0,11,224,1,208,41,0,0,0,3,255,208,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,2,254,0,0,0, + // 0x7f16 编 + 22,127,34,35,59,37,1,253,0,10,64,0,0,27,128,0,0,0,15,224,0,0,47,192,0,0,0,15,208,0,0,15,224,0,0,0,47,192,0,0,15,240,0,0,0,63,64,15,255,255,255,255,192,0,127,0,15,255,255,255,255,192,0,254,0,15,255,255,255,255,192,0,252,0,15,208,0,0,15,192,2,244,29,15,208,0,0,15,192,3,240,63,79,208,0,0,15,192,15,208,127,15,255,255,255,255,192,31,192,253,15,255,255,255,255,192,127,255,252,15,255,255,255,255,192,127,255,244,15,208,0,0,0,0,63,255,240,15,208,0,0,0,0,57,79,208,15,192,0,0,0,0,0,47,128,15,255,255,255,255,208,0,63,0,15,255,255,255,255,208,0,253,0,15,255,255,255,255,208,2,252,4,15,254,15,75,131,208,7,250,253,31,254,15,75,131,208,31,255,254,31,254,15,75,131,208,63,255,249,31,190,15,75,131,208,63,249,0,47,190,15,75,131,208,46,0,0,63,127,255,255,255,208,0,0,4,63,63,255,255,255,208,0,0,189,127,63,175,239,239,208,0,27,254,190,62,15,75,131,208,2,255,249,253,62,15,75,131,208,127,255,128,252,62,15,75,131,208,127,244,2,252,62,15,75,131,208,63,64,3,244,62,15,75,135,208,32,0,7,240,62,15,75,191,208,0,0,0,208,62,10,6,111,192,0,0,0,0,41,0,0,5,0, + // 0x7f3a 缺 + 58,127,35,35,59,37,1,253,2,144,0,0,0,15,208,0,0,3,248,0,0,0,15,208,0,0,3,244,0,0,0,15,208,0,0,7,240,0,0,0,15,208,0,0,11,240,0,0,0,15,208,0,0,11,255,255,254,0,15,208,0,0,15,255,255,254,63,255,255,255,0,31,255,255,254,63,255,255,255,0,47,195,240,0,63,255,255,255,0,63,131,240,0,0,15,208,127,0,127,3,240,0,0,15,208,63,0,126,3,240,0,0,15,208,63,0,9,3,240,0,0,15,208,63,0,127,255,255,255,0,15,208,63,0,127,255,255,255,0,15,208,63,0,127,255,255,255,0,15,208,63,0,0,3,240,0,0,15,208,127,0,0,3,240,0,127,255,255,255,248,10,3,240,41,127,255,255,255,248,31,67,240,126,127,255,255,255,248,31,67,240,126,0,47,252,0,0,31,67,240,126,0,63,252,0,0,31,67,240,126,0,63,254,0,0,31,67,240,126,0,127,255,0,0,31,67,240,126,0,191,63,64,0,31,67,240,126,0,254,63,192,0,31,67,240,126,2,253,31,208,0,31,255,255,254,3,252,15,240,0,31,255,255,254,15,244,7,252,0,31,255,255,254,63,224,3,254,0,31,64,0,126,255,192,0,255,128,31,64,0,27,255,0,0,127,244,26,64,0,15,253,0,0,31,244,0,0,0,7,240,0,0,7,224,0,0,0,1,128,0,0,0,128, + // 0x7f51 网 + 81,127,31,33,8,37,3,253,191,255,255,255,255,255,255,252,191,255,255,255,255,255,255,252,191,255,255,255,255,255,255,252,190,85,95,213,86,253,86,252,190,0,15,192,1,248,1,252,190,0,15,192,1,248,1,252,190,0,15,192,1,248,1,252,190,0,15,192,2,248,1,252,190,0,15,192,2,244,1,252,190,24,31,195,194,244,1,252,190,63,31,139,246,244,1,252,190,127,239,131,255,240,1,252,190,15,255,64,255,240,1,252,190,3,255,64,63,240,1,252,190,1,255,64,15,240,1,252,190,0,127,128,7,252,1,252,190,0,63,208,7,254,1,252,190,0,127,244,11,255,129,252,190,0,191,252,15,255,209,252,190,0,253,254,15,207,241,252,190,0,252,125,31,131,241,252,190,1,252,40,63,129,193,252,190,3,248,0,63,0,65,252,190,3,240,0,191,0,1,252,190,11,240,0,253,0,1,252,190,31,208,2,252,0,1,252,190,63,192,7,248,0,1,252,190,127,64,15,240,0,1,252,190,30,0,3,208,0,1,252,190,4,0,0,128,5,86,252,190,0,0,0,0,15,255,248,190,0,0,0,0,7,255,244,190,0,0,0,0,3,255,144, + // 0x7f6e 置 + 110,127,34,35,59,37,2,252,5,85,85,85,85,85,85,84,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,11,224,7,240,3,240,1,252,0,11,224,7,240,3,240,1,252,0,11,224,7,240,3,240,1,252,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,5,85,85,87,253,85,85,84,0,0,0,0,3,248,0,0,0,0,106,170,170,171,254,170,170,170,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,0,0,0,7,240,0,0,0,0,0,0,0,11,224,0,0,0,0,6,160,63,255,255,255,255,224,0,7,240,63,255,255,255,255,224,0,7,240,63,64,0,0,11,224,0,7,240,63,255,255,255,255,224,0,7,240,63,255,255,255,255,224,0,7,240,63,64,0,0,11,224,0,7,240,63,64,0,0,11,224,0,7,240,63,255,255,255,255,224,0,7,240,63,255,255,255,255,224,0,7,240,63,64,0,0,11,224,0,7,240,63,64,0,0,11,224,0,7,240,63,255,255,255,255,224,0,7,240,47,255,255,255,255,224,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,255,255,255,255,255,255,255,208,7,255,255,255,255,255,255,255,208,7,250,170,170,170,170,170,170,128,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x7f72 署 + 114,127,34,34,50,37,1,253,1,85,85,85,85,85,85,85,0,2,255,255,255,255,255,255,255,0,2,255,255,255,255,255,255,255,0,2,244,1,248,0,252,0,127,0,2,244,1,248,0,252,0,127,0,2,244,1,248,0,252,0,127,0,2,255,255,255,255,255,255,255,0,2,255,255,255,255,255,255,255,0,1,85,85,91,245,85,85,85,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,56,0,0,63,255,255,255,255,240,255,0,0,63,255,255,255,255,247,253,0,0,42,170,175,250,170,255,244,0,0,0,0,7,240,1,255,192,0,0,0,0,7,240,15,254,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,47,255,255,255,255,255,255,255,224,0,0,0,47,255,192,0,0,0,0,0,7,255,253,0,0,0,0,0,1,191,255,255,255,255,248,0,1,191,255,255,255,255,255,248,0,127,255,255,170,170,170,171,248,0,63,255,191,0,0,0,2,248,0,31,144,63,0,0,0,3,248,0,0,0,63,255,255,255,255,248,0,0,0,63,255,255,255,255,248,0,0,0,63,0,0,0,2,248,0,0,0,63,0,0,0,2,248,0,0,0,63,255,255,255,255,248,0,0,0,63,255,255,255,255,248,0,0,0,63,170,170,170,171,248,0,0,0,42,0,0,0,1,164,0, + // 0x8005 者 + 5,128,34,36,68,37,1,252,0,0,0,47,128,0,0,0,0,0,0,0,47,128,0,0,16,0,0,0,0,47,128,0,0,125,0,0,0,0,47,128,0,0,255,0,0,0,0,47,128,0,2,253,0,0,191,255,255,255,255,219,248,0,0,191,255,255,255,255,255,224,0,0,191,255,255,255,255,255,192,0,0,0,0,47,128,2,255,0,0,0,0,0,47,128,15,252,0,0,0,0,0,47,128,63,224,0,0,0,0,0,47,193,255,128,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,0,0,0,15,254,0,0,0,0,0,0,0,191,244,0,0,0,0,0,0,7,255,192,0,0,0,0,0,0,63,254,0,0,0,0,0,0,2,255,255,255,255,255,208,0,0,127,255,255,255,255,255,208,0,11,255,255,255,255,255,255,208,0,127,255,255,0,0,0,15,208,0,63,244,127,0,0,0,15,208,0,14,64,127,0,0,0,15,208,0,0,0,127,255,255,255,255,208,0,0,0,127,255,255,255,255,208,0,0,0,127,170,170,170,175,208,0,0,0,127,0,0,0,15,208,0,0,0,127,0,0,0,15,208,0,0,0,127,0,0,0,15,208,0,0,0,127,255,255,255,255,208,0,0,0,127,255,255,255,255,208,0,0,0,127,255,255,255,255,208,0,0,0,127,0,0,0,15,208,0,0,0,0,0,0,0,0,0,0, + // 0x806a 聪 + 106,128,35,35,59,37,1,253,0,0,0,0,2,0,0,144,0,0,0,0,0,47,128,0,252,0,63,255,255,248,31,192,2,252,0,63,255,255,248,15,224,3,248,0,63,255,255,248,7,240,7,240,0,7,224,31,128,3,248,11,224,0,7,224,31,128,1,252,15,192,0,7,224,31,128,0,208,47,128,0,7,224,31,128,255,255,255,255,128,7,250,191,128,255,255,255,255,128,7,255,255,128,255,255,255,255,128,7,255,255,128,252,0,0,47,128,7,224,31,128,252,0,0,47,128,7,224,31,128,252,0,0,47,128,7,224,31,128,252,0,0,47,128,7,224,31,128,252,0,0,47,128,7,224,31,128,255,255,255,255,128,7,250,191,128,255,255,255,255,128,7,255,255,128,255,255,255,255,128,7,255,255,128,0,1,0,0,0,7,224,31,128,0,15,128,0,0,7,224,31,128,0,15,208,0,0,7,224,31,128,3,243,244,5,0,7,224,31,225,227,241,252,47,0,7,225,127,246,243,240,190,31,64,7,255,255,251,243,240,62,15,192,127,255,255,211,227,240,20,11,208,127,255,175,131,227,240,0,67,224,63,144,31,135,211,240,0,247,240,16,0,31,143,195,240,0,245,244,0,0,31,143,195,240,1,244,248,0,0,31,159,67,254,171,240,144,0,0,31,129,2,255,255,224,0,0,0,31,128,0,191,255,128,0,0,0,31,128,0,0,0,0,0, + // 0x80fd 能 + 253,128,35,36,68,37,1,252,0,15,144,0,2,248,0,0,0,0,15,224,0,2,248,0,0,0,0,47,192,16,2,248,0,0,0,0,63,129,248,2,248,0,44,0,0,127,1,253,2,248,6,255,0,0,190,0,191,2,248,127,255,64,0,253,0,63,130,255,255,244,0,22,254,255,255,194,255,254,0,0,127,255,255,255,226,255,128,0,0,127,255,255,255,242,252,0,0,0,63,169,84,3,246,248,0,2,144,0,0,0,2,210,248,0,3,244,0,0,0,0,2,252,0,3,240,7,255,255,255,2,252,0,7,240,7,255,255,255,1,255,255,255,240,7,255,255,255,0,255,255,255,208,7,240,0,127,0,47,255,255,64,7,240,0,127,0,84,0,0,0,7,240,0,127,2,248,0,0,0,7,250,170,191,2,248,0,0,0,7,255,255,255,2,248,0,46,0,7,255,255,255,2,248,2,255,64,7,240,0,127,2,248,111,255,64,7,240,0,127,2,255,255,248,0,7,240,0,127,2,255,255,64,0,7,255,255,255,2,255,224,0,0,7,255,255,255,2,252,0,0,0,7,250,170,191,2,248,0,1,128,7,240,0,127,2,248,0,1,248,7,240,0,127,2,248,0,1,248,7,240,0,127,2,248,0,2,248,7,240,0,127,2,252,0,3,244,7,240,63,255,1,255,255,255,240,7,240,63,254,0,255,255,255,224,7,240,31,228,0,47,255,255,64,0,0,0,0,0,0,0,0,0, + // 0x81ea 自 + 234,129,26,36,252,37,6,252,0,0,11,224,0,0,0,0,0,15,240,0,0,0,0,0,15,224,0,0,0,0,0,31,208,0,0,0,0,0,47,192,0,0,0,255,255,255,255,255,255,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,254,85,85,85,85,95,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,0,0,0,0,0,0,0, + // 0x81f3 至 + 243,129,33,32,32,37,2,254,63,255,255,255,255,255,255,255,64,63,255,255,255,255,255,255,255,64,63,255,255,255,255,255,255,255,64,0,0,11,252,0,0,0,0,0,0,0,15,244,0,29,0,0,0,0,0,31,240,0,191,64,0,0,0,0,63,208,0,191,224,0,0,0,0,127,192,0,47,248,0,0,0,0,255,64,0,11,255,0,0,0,1,255,0,0,1,255,192,0,31,255,255,175,255,255,255,240,0,31,255,255,255,255,255,255,252,0,31,255,255,255,255,255,255,254,0,26,170,170,169,85,80,1,255,64,0,0,0,1,80,0,0,124,0,0,0,0,7,240,0,0,16,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,11,240,0,0,0,0,2,255,255,255,255,255,255,240,0,2,255,255,255,255,255,255,240,0,2,255,255,255,255,255,255,240,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0, + // 0x83dc 菜 + 220,131,34,35,59,37,1,253,0,0,31,192,0,15,208,0,0,0,0,31,192,0,15,208,0,0,0,0,31,192,0,15,208,0,0,47,255,255,255,255,255,255,255,240,47,255,255,255,255,255,255,255,240,47,255,255,255,255,255,255,255,240,0,0,31,192,0,15,208,0,0,0,0,31,192,0,15,208,0,0,0,0,10,128,0,6,191,224,0,0,0,85,106,191,255,255,248,0,11,255,255,255,255,255,255,248,0,3,255,255,255,255,254,148,0,0,3,255,250,165,80,0,0,144,0,0,0,0,2,208,0,1,253,0,0,125,0,11,240,0,3,252,0,0,191,0,3,244,0,7,248,0,0,63,192,2,252,0,15,240,0,0,31,208,1,252,0,31,208,0,0,15,240,0,228,0,63,128,0,0,7,208,1,252,0,127,0,0,0,1,0,1,252,0,4,0,0,0,0,0,1,253,0,0,0,0,47,255,255,255,255,255,255,255,240,47,255,255,255,255,255,255,255,240,47,255,255,255,255,255,255,255,240,0,0,0,255,255,248,0,0,0,0,0,7,255,254,255,0,0,0,0,0,63,245,252,127,224,0,0,0,2,255,193,252,31,254,0,0,0,111,254,1,252,3,255,224,0,11,255,244,1,252,0,127,255,144,127,255,128,1,252,0,11,255,240,47,248,0,1,252,0,0,191,208,15,64,0,1,252,0,0,7,128,0,0,0,1,252,0,0,0,0, + // 0x84dd 蓝 + 221,132,33,34,50,37,2,254,0,0,191,0,0,63,128,0,0,0,0,191,0,0,63,128,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,0,0,191,0,0,63,128,0,0,0,0,191,0,0,63,128,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,31,192,7,240,0,0,0,3,240,31,192,11,240,0,0,0,3,240,31,192,15,255,255,253,0,3,240,31,192,31,255,255,253,0,3,240,31,192,47,255,255,253,0,3,240,31,192,63,64,128,0,0,3,240,31,192,191,11,224,0,0,3,240,31,193,253,7,244,0,0,3,240,31,195,252,2,252,0,0,3,240,31,194,244,0,254,0,0,3,240,31,192,96,0,127,0,0,2,160,31,192,0,0,63,64,0,0,0,5,64,0,0,24,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,254,171,254,175,250,175,208,0,0,252,2,244,3,224,15,208,0,0,252,2,244,3,224,15,208,0,0,252,2,244,3,224,15,208,0,0,252,2,244,3,224,15,208,0,0,252,2,244,3,224,15,208,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x86c7 蛇 + 199,134,34,35,59,37,1,253,0,1,64,0,0,3,240,0,0,0,7,208,0,0,3,240,0,0,0,7,208,0,0,3,240,0,0,0,7,208,0,0,3,240,0,0,0,7,208,0,0,3,240,0,0,0,7,208,1,255,255,255,255,240,0,7,208,1,255,255,255,255,240,31,255,255,245,255,255,255,255,240,31,255,255,245,248,0,0,3,240,31,255,255,245,248,0,0,3,240,31,3,193,245,248,0,0,3,240,31,3,193,245,248,0,0,3,240,31,3,193,245,255,208,0,3,240,31,3,193,244,11,208,0,0,0,31,3,193,244,11,208,0,4,0,31,3,193,244,11,208,0,61,0,31,3,193,244,11,208,2,255,0,31,3,193,244,11,208,47,255,64,31,255,255,244,11,210,255,248,0,31,255,255,244,11,255,255,64,0,31,255,255,244,11,255,228,0,0,31,11,208,0,11,254,0,0,0,10,11,208,0,11,224,0,0,0,0,11,209,240,11,208,0,0,0,0,11,210,244,11,208,0,0,0,0,11,208,248,11,208,0,0,0,0,11,208,252,11,208,0,2,128,0,11,209,252,11,208,0,3,240,0,31,255,254,11,208,0,3,240,127,255,255,255,11,224,0,3,240,127,255,255,191,11,240,0,11,240,127,250,64,47,7,255,255,255,224,36,0,0,46,3,255,255,255,192,0,0,0,0,0,191,255,254,0,0,0,0,0,0,0,0,0,0, + // 0x884c 行 + 76,136,34,36,68,37,1,252,0,0,180,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,7,252,2,255,255,255,255,192,0,31,240,2,255,255,255,255,192,0,127,208,2,255,255,255,255,192,2,255,64,0,85,85,85,85,64,11,253,0,0,0,0,0,0,0,63,244,0,0,0,0,0,0,0,127,208,14,0,0,0,0,0,0,47,0,63,192,0,0,0,0,0,8,0,127,128,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,3,253,5,85,85,85,85,80,0,11,248,31,255,255,255,255,240,0,47,240,31,255,255,255,255,240,0,127,208,31,255,255,255,255,240,1,255,208,0,0,0,47,192,0,11,255,208,0,0,0,47,192,0,47,255,208,0,0,0,47,192,0,255,239,208,0,0,0,47,192,0,127,143,208,0,0,0,47,192,0,30,15,208,0,0,0,47,192,0,4,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,1,85,127,192,0,0,15,208,0,2,255,255,128,0,0,15,208,0,1,255,255,64,0,0,15,208,0,0,255,248,0,0,0,0,0,0,0,0,0,0,0, + // 0x88ab 被 + 171,136,35,35,59,37,1,253,0,31,128,0,0,3,244,0,0,0,31,192,0,0,3,244,0,0,0,31,192,0,0,3,244,0,0,0,31,192,0,0,3,244,0,0,0,31,192,0,0,3,244,0,0,0,31,192,0,0,3,244,0,0,0,47,192,3,255,255,255,255,244,63,255,255,195,255,255,255,255,240,63,255,255,211,255,255,255,255,240,63,255,255,195,244,3,244,11,224,0,0,47,131,244,3,244,15,208,0,0,127,3,244,3,244,15,192,0,0,254,3,244,3,244,31,192,0,1,252,3,244,3,244,27,64,0,3,248,147,244,3,244,0,0,0,15,240,251,255,255,255,255,128,0,47,227,243,255,255,255,255,192,0,191,251,211,255,255,255,255,128,1,255,255,131,255,224,0,63,64,7,255,255,3,251,240,0,191,0,47,255,239,195,243,244,0,254,0,255,239,207,227,241,252,1,252,0,127,95,195,231,240,253,3,252,0,60,31,194,135,240,191,11,244,0,16,31,192,11,224,63,223,224,0,0,31,192,15,208,31,255,192,0,0,31,192,15,192,15,255,64,0,0,31,192,31,192,3,255,0,0,0,31,192,47,128,15,255,128,0,0,31,192,63,64,127,255,240,0,0,31,192,191,2,255,239,254,0,0,31,192,254,47,254,7,255,224,0,31,194,252,191,244,0,255,244,0,31,193,244,63,128,0,31,224,0,31,192,32,8,0,0,1,192, + // 0x88c5 装 + 197,136,35,36,68,37,1,252,0,0,42,0,0,10,144,0,0,0,0,127,0,0,15,208,0,0,2,0,127,0,0,15,208,0,0,15,208,127,0,0,15,208,0,0,15,248,127,0,0,15,208,0,0,3,254,127,31,255,255,255,255,240,0,189,127,31,255,255,255,255,240,0,36,127,31,255,255,255,255,240,0,0,127,0,0,15,208,0,0,0,0,127,0,0,15,208,0,0,0,7,127,0,0,15,208,0,0,1,191,191,0,0,15,208,0,0,31,255,191,0,0,15,208,0,0,127,248,127,7,255,255,255,255,192,63,64,127,7,255,255,255,255,192,20,0,127,7,255,255,255,255,192,0,0,127,0,0,0,0,0,0,0,0,42,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,42,170,170,255,255,234,170,170,160,0,0,2,255,95,192,0,56,0,0,0,47,248,11,224,1,255,0,0,7,255,208,3,248,31,253,0,6,255,255,64,1,253,191,224,0,127,255,255,64,0,191,254,0,0,31,244,63,64,0,47,244,0,0,9,0,63,64,1,11,254,0,0,0,0,63,171,255,2,255,208,0,0,26,255,255,255,64,127,255,128,0,63,255,255,250,0,11,255,244,0,63,255,148,0,0,0,191,224,0,21,0,0,0,0,0,6,192,0,0,0,0,0,0,0,0,0, + // 0x8981 要 + 129,137,33,34,50,37,2,252,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,0,0,11,224,3,240,0,0,0,0,0,11,224,3,240,0,0,0,7,255,255,255,255,255,255,248,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,11,224,11,224,3,240,1,252,0,11,224,11,224,3,240,1,252,0,11,224,11,224,3,240,1,252,0,11,224,11,224,3,240,1,252,0,11,224,11,224,3,240,1,252,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,248,0,0,0,2,252,0,0,0,0,0,0,0,11,244,0,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,1,254,0,0,15,240,0,0,0,3,252,0,0,63,192,0,0,0,11,244,0,0,191,128,0,0,0,31,255,144,2,255,0,0,0,0,63,255,255,155,252,0,0,0,0,47,191,255,255,244,0,0,0,0,1,1,191,255,254,64,0,0,0,0,1,255,255,255,249,0,0,0,90,255,255,230,255,255,228,0,127,255,255,254,0,7,255,254,0,63,255,254,64,0,0,31,252,0,31,169,0,0,0,0,0,180,0,0,0,0,0,0,0,0,0,0, + // 0x89d2 角 + 210,137,32,36,32,37,1,252,0,0,7,228,0,0,0,0,0,0,15,244,0,0,0,0,0,0,31,255,255,253,0,0,0,0,63,255,255,255,128,0,0,0,255,255,255,255,64,0,0,1,254,0,0,255,0,0,0,7,252,0,2,253,0,0,0,15,244,0,3,248,0,0,0,63,224,0,15,240,0,0,1,255,255,255,255,255,255,253,7,255,255,255,255,255,255,253,47,255,255,255,255,255,255,253,15,239,208,0,63,0,0,253,3,79,208,0,63,0,0,253,0,15,208,0,63,0,0,253,0,15,208,0,63,0,0,253,0,15,255,255,255,255,255,253,0,15,255,255,255,255,255,253,0,15,255,255,255,255,255,253,0,15,208,0,63,0,0,253,0,15,208,0,63,0,0,253,0,15,192,0,63,0,0,253,0,15,192,0,63,0,0,253,0,31,192,0,127,0,0,253,0,47,255,255,255,255,255,253,0,63,255,255,255,255,255,253,0,63,255,255,255,255,255,253,0,127,0,0,0,0,0,253,0,254,0,0,0,0,0,253,2,253,0,0,0,0,0,253,7,248,0,0,0,0,0,253,31,240,0,0,0,20,2,253,127,208,0,0,0,127,255,252,63,128,0,0,0,63,255,248,13,0,0,0,0,47,255,144,0,0,0,0,0,0,0,0, + // 0x8ba1 计 + 161,139,34,35,59,37,2,253,0,0,0,0,0,63,64,0,0,0,176,0,0,0,63,64,0,0,2,253,0,0,0,63,64,0,0,2,255,64,0,0,63,64,0,0,0,127,208,0,0,63,64,0,0,0,31,244,0,0,63,64,0,0,0,7,252,0,0,63,64,0,0,0,1,240,0,0,63,64,0,0,0,0,128,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,255,255,192,170,170,191,234,170,128,255,255,193,255,255,255,255,255,208,255,255,193,255,255,255,255,255,208,85,127,193,255,255,255,255,255,208,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,64,0,63,64,0,0,0,47,194,208,0,63,64,0,0,0,47,207,224,0,63,64,0,0,0,47,255,240,0,63,64,0,0,0,47,255,128,0,63,64,0,0,0,63,253,0,0,63,64,0,0,0,191,240,0,0,63,64,0,0,1,255,128,0,0,63,64,0,0,0,189,0,0,0,63,64,0,0,0,52,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0, + // 0x8bae 议 + 174,139,34,35,59,37,2,252,1,192,0,0,7,192,0,0,0,11,240,0,0,15,224,0,80,0,7,248,0,252,7,240,0,254,0,2,253,0,252,3,248,0,253,0,0,255,0,253,1,252,1,252,0,0,63,192,253,0,254,2,252,0,0,31,0,190,0,191,2,252,0,0,8,0,127,0,127,3,248,0,0,0,0,63,0,52,3,244,0,0,0,0,63,64,0,7,240,0,85,85,0,47,192,0,11,240,0,255,255,0,31,192,0,15,224,0,255,255,0,15,208,0,31,208,0,255,255,0,11,240,0,47,192,0,0,127,0,7,240,0,63,128,0,0,127,0,3,248,0,127,64,0,0,127,0,2,252,0,255,0,0,0,127,0,0,254,1,253,0,0,0,127,0,0,255,3,252,0,0,0,127,0,0,127,135,248,0,0,0,127,0,0,63,223,240,0,0,0,127,0,0,15,255,208,0,0,0,127,0,0,11,255,192,0,0,0,127,0,0,3,255,0,0,0,0,127,7,64,3,255,64,0,0,0,127,47,192,15,255,208,0,0,0,127,255,192,63,255,244,0,0,0,191,254,0,255,223,254,0,0,0,255,244,7,255,2,255,208,0,1,255,192,63,252,0,191,248,0,3,254,2,255,224,0,47,255,144,1,248,15,255,64,0,7,255,224,0,144,11,252,0,0,0,191,128,0,0,3,208,0,0,0,11,0,0,0,0,0,0,0,0,0,0, + // 0x8bbe 设 + 190,139,34,35,59,37,1,252,0,48,0,0,0,0,0,0,0,0,252,0,0,63,255,255,192,0,1,255,64,0,63,255,255,192,0,0,127,208,0,63,255,255,192,0,0,15,244,0,63,0,15,192,0,0,3,252,0,63,0,15,192,0,0,0,244,0,127,0,15,192,0,0,0,80,0,190,0,15,192,0,0,0,0,0,253,0,15,192,0,0,0,0,3,252,0,15,192,0,21,85,0,15,248,0,15,255,240,127,255,192,191,240,0,11,255,240,127,255,192,255,192,0,2,255,240,127,255,192,126,0,0,0,0,0,0,31,192,36,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,63,255,255,255,255,0,0,31,192,63,255,255,255,255,0,0,31,192,63,255,255,255,254,0,0,31,192,7,240,0,1,253,0,0,31,192,3,248,0,3,252,0,0,31,192,1,252,0,11,244,0,0,31,192,0,255,0,15,224,0,0,31,192,64,63,192,63,192,0,0,31,195,192,31,240,255,64,0,0,31,223,208,11,255,254,0,0,0,47,255,208,2,255,248,0,0,0,47,255,64,1,255,240,0,0,0,63,252,0,11,255,254,0,0,0,191,224,1,191,255,255,224,0,0,255,128,111,255,208,191,255,144,0,189,1,255,253,0,31,255,240,0,52,0,255,144,0,1,191,208,0,0,0,100,0,0,0,6,192,0,0,0,0,0,0,0,0,0, + // 0x8bd5 试 + 213,139,34,35,59,37,2,253,0,0,0,0,0,6,160,0,0,1,208,0,0,0,7,241,240,0,7,244,0,0,0,7,243,248,0,3,254,0,0,0,7,240,254,0,0,255,128,0,0,7,240,127,0,0,63,208,0,0,7,240,47,128,0,15,240,0,0,7,240,14,0,0,3,193,85,85,87,245,85,64,0,1,3,255,255,255,255,255,208,0,0,3,255,255,255,255,255,208,0,0,3,255,255,255,255,255,208,85,85,0,0,0,3,244,0,0,255,255,0,0,0,3,244,0,0,255,255,0,0,0,3,244,0,0,255,255,0,0,0,3,244,0,0,0,63,0,0,0,3,248,0,0,0,63,0,255,255,243,248,0,0,0,63,0,255,255,242,248,0,0,0,63,0,255,255,242,252,0,0,0,63,0,2,252,2,252,0,0,0,63,0,1,248,1,252,0,0,0,63,0,1,248,1,252,0,0,0,63,0,1,248,0,253,0,0,0,63,0,1,248,0,253,0,0,0,63,0,1,248,0,254,0,0,0,63,1,1,248,0,191,3,64,0,63,31,1,248,104,127,3,224,0,63,191,65,255,252,127,67,224,0,127,255,91,255,252,63,135,208,0,191,250,255,255,228,47,219,192,2,255,208,255,249,0,31,255,192,2,255,0,254,0,0,15,255,128,0,248,0,64,0,0,7,255,0,0,144,0,0,0,0,1,254,0,0,0,0,0,0,0,0,20,0, + // 0x8bef 误 + 239,139,35,35,59,37,1,252,0,80,0,0,0,0,0,0,0,1,248,0,7,255,255,255,255,0,3,254,0,7,255,255,255,255,0,0,255,192,7,255,255,255,255,0,0,63,240,7,224,0,0,63,0,0,15,248,7,224,0,0,63,0,0,3,224,7,224,0,0,63,0,0,0,128,7,224,0,0,63,0,0,0,0,7,255,255,255,255,0,0,0,0,7,255,255,255,255,0,21,85,64,7,255,255,255,255,0,127,255,192,0,0,0,0,0,0,127,255,192,0,0,0,0,0,0,127,255,192,0,0,0,0,0,0,0,31,192,31,255,255,255,255,192,0,31,192,31,255,255,255,255,192,0,31,192,31,255,255,255,255,192,0,31,192,0,0,31,192,0,0,0,31,192,0,0,47,128,0,0,0,31,192,0,0,47,128,0,0,0,31,192,0,0,47,128,0,0,0,31,192,127,255,255,255,255,248,0,31,192,127,255,255,255,255,248,0,31,192,127,255,255,255,255,248,0,31,192,64,0,255,240,0,0,0,31,199,192,1,255,244,0,0,0,31,239,192,3,254,252,0,0,0,31,255,192,15,244,255,64,0,0,63,254,0,63,240,127,208,0,0,191,244,1,255,192,31,252,0,0,127,192,111,255,0,7,255,208,0,62,0,255,248,0,1,255,244,0,20,0,127,192,0,0,47,224,0,0,0,56,0,0,0,2,192,0,0,0,0,0,0,0,0,0, + // 0x8bf7 请 + 247,139,35,35,59,37,1,253,0,0,0,0,0,47,128,0,0,0,160,0,0,0,47,192,0,0,2,248,0,0,0,47,192,0,0,3,254,0,63,255,255,255,255,208,0,255,192,63,255,255,255,255,208,0,47,224,26,170,191,234,170,128,0,15,244,0,0,47,192,0,0,0,3,224,5,85,127,213,85,0,0,0,128,15,255,255,255,255,0,0,0,0,15,255,255,255,255,0,0,0,0,0,0,47,192,0,0,21,85,64,0,0,47,192,0,0,127,255,192,255,255,255,255,255,244,127,255,192,255,255,255,255,255,244,127,255,192,170,170,170,170,170,160,0,31,192,0,0,0,0,0,0,0,31,192,6,170,170,170,169,0,0,31,192,7,255,255,255,254,0,0,31,192,7,255,255,255,254,0,0,31,192,7,224,0,0,190,0,0,31,192,7,224,0,0,190,0,0,31,192,7,245,85,85,190,0,0,31,192,7,255,255,255,254,0,0,31,192,7,255,255,255,254,0,0,31,192,7,224,0,0,190,0,0,31,194,199,224,0,0,190,0,0,31,207,199,224,0,0,190,0,0,31,255,215,255,255,255,254,0,0,31,255,135,255,255,255,254,0,0,47,253,7,245,85,85,254,0,0,63,240,7,224,0,0,190,0,0,255,192,7,224,0,0,190,0,0,126,0,7,224,0,255,253,0,0,56,0,7,224,0,191,252,0,0,0,0,7,224,0,127,224,0, + // 0x8bfb 读 + 251,139,34,36,68,37,1,252,0,0,0,0,0,47,128,0,0,0,224,0,0,0,63,128,0,0,3,252,0,0,0,63,128,0,0,2,255,64,15,255,255,255,255,0,0,191,208,15,255,255,255,255,0,0,31,244,15,255,255,255,255,0,0,7,244,0,0,63,128,0,0,0,2,208,0,0,63,128,0,0,0,0,64,0,0,63,128,0,0,0,0,0,127,255,255,255,255,208,0,0,0,127,255,255,255,255,208,21,85,0,127,255,255,255,255,192,127,255,128,0,0,0,0,15,192,127,255,128,0,144,6,144,47,128,127,255,128,2,253,15,208,63,0,0,31,128,0,191,143,208,63,0,0,31,128,4,31,239,208,45,0,0,31,128,62,3,223,208,0,0,0,31,128,63,208,79,208,0,0,0,31,128,11,248,15,208,0,0,0,31,128,1,253,15,208,0,0,0,31,128,0,56,15,192,0,0,0,31,129,255,255,255,255,255,240,0,31,129,255,255,255,255,255,240,0,31,129,255,255,255,255,255,240,0,31,139,0,0,255,0,0,0,0,31,239,64,1,254,28,0,0,0,31,255,128,7,252,127,64,0,0,31,254,0,31,244,127,224,0,0,47,248,0,191,208,15,252,0,0,63,224,3,255,128,2,255,0,0,191,64,127,253,0,0,127,208,0,189,2,255,240,0,0,31,240,0,52,0,255,64,0,0,7,240,0,0,0,120,0,0,0,1,192,0,0,0,0,0,0,0,0,0, + // 0x8c03 调 + 3,140,33,35,59,37,1,252,0,144,0,0,0,0,0,0,0,2,244,0,63,255,255,255,255,192,3,254,0,63,255,255,255,255,192,0,255,128,63,255,255,255,255,192,0,63,224,63,0,0,0,15,192,0,15,244,63,0,31,64,15,192,0,3,224,63,0,31,64,15,192,0,0,128,63,6,175,170,15,192,0,0,0,63,15,255,255,15,192,0,0,0,63,15,255,255,15,192,21,85,0,63,0,31,64,15,192,127,255,192,63,0,31,64,15,192,127,255,192,63,0,31,64,15,192,127,255,192,63,26,175,170,143,192,0,47,192,63,47,255,255,207,192,0,47,192,63,47,255,255,207,192,0,47,192,63,0,0,0,15,192,0,47,192,63,0,0,0,15,192,0,47,192,63,0,0,0,15,192,0,47,192,63,15,255,255,15,192,0,47,192,63,15,255,255,15,192,0,47,192,62,15,234,191,15,192,0,47,192,126,15,128,63,15,192,0,47,192,126,15,128,63,15,192,0,47,197,189,15,128,63,15,192,0,47,239,252,15,234,191,15,192,0,47,255,252,15,255,255,15,192,0,47,255,248,15,255,255,15,192,0,63,250,244,15,128,0,15,192,0,127,211,240,10,64,0,15,192,1,255,71,240,0,0,0,15,192,0,252,15,208,0,0,31,255,192,0,48,15,192,0,0,15,255,128,0,0,2,64,0,0,11,253,0,0,0,0,0,0,0,0,0,0, + // 0x8d25 败 + 37,141,34,35,59,37,2,253,0,0,0,0,0,16,0,0,0,0,0,0,0,0,127,0,0,0,47,255,255,252,0,190,0,0,0,47,255,255,252,0,253,0,0,0,47,255,255,252,0,252,0,0,0,47,0,0,252,1,252,0,0,0,47,0,0,252,3,248,0,0,0,47,1,64,252,3,255,255,255,192,47,7,224,252,7,255,255,255,192,47,7,224,252,15,255,255,255,192,47,7,224,252,15,192,1,248,0,47,7,224,252,47,192,2,244,0,47,7,224,252,63,64,2,240,0,47,7,224,252,191,64,3,240,0,47,7,224,252,255,128,3,240,0,47,7,224,254,255,192,3,224,0,47,7,224,253,255,208,7,224,0,47,7,224,252,183,224,11,208,0,47,7,208,252,3,240,15,192,0,47,11,208,252,2,248,15,192,0,47,11,208,252,0,252,47,64,0,47,11,208,252,0,254,63,0,0,47,15,192,252,0,127,127,0,0,47,15,192,252,0,63,253,0,0,47,15,192,248,0,15,252,0,0,0,47,128,0,0,11,244,0,0,0,63,14,0,0,11,248,0,0,0,127,63,64,0,31,254,0,0,0,253,31,192,0,63,255,128,0,2,252,11,240,0,255,63,224,0,11,240,3,248,7,252,15,248,0,47,208,1,252,47,240,3,255,64,255,128,0,253,255,192,0,255,208,189,0,0,48,62,0,0,47,128,36,0,0,0,20,0,0,2,0, + // 0x8d2a 贪 + 42,141,34,36,68,37,2,252,0,0,0,0,244,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,47,254,0,0,0,0,0,0,2,255,255,224,0,0,0,0,0,47,254,31,254,64,0,0,0,7,255,241,2,255,248,0,0,1,191,255,75,192,47,255,224,0,111,255,244,15,244,2,255,255,208,255,255,64,3,253,0,31,255,192,127,224,0,0,252,0,1,191,64,41,63,255,255,255,255,244,1,0,0,63,255,255,255,255,254,0,0,0,63,255,255,255,255,252,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,254,0,0,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,0,0,0,0,63,64,0,0,127,0,7,240,0,63,64,0,0,127,0,7,240,0,63,64,0,0,127,0,7,240,0,63,64,0,0,127,0,7,240,0,63,64,0,0,127,0,11,240,0,63,64,0,0,127,0,15,240,0,63,64,0,0,127,0,63,210,0,63,64,0,0,0,0,255,143,248,0,0,0,0,0,11,255,31,255,224,0,0,0,1,191,248,2,255,254,64,0,0,127,255,208,0,11,255,244,0,47,255,253,0,0,0,127,254,0,15,255,128,0,0,0,2,252,0,3,228,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0, + // 0x8d77 起 + 119,141,35,36,68,37,1,252,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,3,255,255,255,64,0,1,252,0,3,255,255,255,64,15,255,255,255,131,255,255,255,64,15,255,255,255,128,0,0,63,64,15,255,255,255,128,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,64,63,255,255,255,224,0,0,63,64,63,255,255,255,227,255,255,255,64,63,255,255,255,227,255,255,255,64,42,170,255,170,147,255,255,255,64,0,0,190,0,3,244,0,63,64,0,0,190,0,3,244,0,0,0,1,64,190,0,3,244,0,0,0,11,224,190,0,3,244,0,0,0,11,224,190,0,3,244,0,0,0,11,224,191,255,195,244,0,0,0,11,224,191,255,195,244,0,2,208,11,208,191,255,195,244,0,2,244,15,240,190,0,3,244,0,3,244,15,244,190,0,3,248,0,7,240,15,252,190,0,2,255,255,255,240,15,254,190,0,1,255,255,255,208,15,255,254,0,0,127,255,255,64,31,239,254,0,0,0,0,0,0,47,143,255,0,0,0,0,0,0,63,67,255,250,85,85,85,85,84,63,0,255,255,255,255,255,255,244,191,0,31,255,255,255,255,255,240,254,0,0,111,255,255,255,255,224,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x8d85 超 + 133,141,35,35,59,37,1,253,0,2,248,0,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,2,248,0,47,255,255,255,208,0,2,248,0,47,255,255,255,208,31,255,255,255,47,255,255,255,208,31,255,255,255,0,31,192,15,192,31,255,255,255,0,47,128,15,192,0,2,248,0,0,63,64,15,192,0,2,248,0,0,127,0,31,192,0,2,248,0,0,254,0,31,192,0,2,248,0,1,252,0,63,128,0,2,248,0,3,248,63,255,64,63,255,255,255,223,240,63,255,0,63,255,255,255,255,192,47,248,0,63,255,255,255,239,0,0,0,0,0,0,252,0,4,0,0,0,0,0,0,252,0,11,255,255,255,64,11,144,252,0,11,255,255,255,128,11,208,252,0,11,255,255,255,128,11,208,252,0,11,224,0,63,128,11,208,255,255,75,224,0,63,128,11,208,255,255,75,224,0,63,128,15,208,255,255,75,224,0,63,128,15,224,252,0,11,224,0,63,128,15,240,252,0,11,224,0,63,128,15,248,252,0,11,255,255,255,128,15,253,252,0,11,255,255,255,128,31,255,252,0,11,255,255,255,64,31,191,252,0,0,0,0,0,0,47,95,253,0,0,0,0,0,0,63,7,255,250,85,85,85,85,84,127,1,255,255,255,255,255,255,244,190,0,47,255,255,255,255,255,240,189,0,0,111,255,255,255,255,224,8,0,0,0,0,0,0,0,0, + // 0x8ddd 距 + 221,141,35,33,41,37,1,253,11,255,255,248,63,255,255,255,240,11,255,255,248,63,255,255,255,240,11,255,255,248,63,255,255,255,240,11,208,1,248,63,64,0,0,0,11,208,1,248,63,64,0,0,0,11,208,1,248,63,64,0,0,0,11,208,1,248,63,64,0,0,0,11,208,1,248,63,64,0,0,0,11,255,255,248,63,128,0,0,0,11,255,255,248,63,255,255,255,128,11,255,255,248,63,255,255,255,128,0,2,244,0,63,255,255,255,128,0,2,244,0,63,64,0,63,128,0,2,244,0,63,64,0,63,128,0,2,244,0,63,64,0,63,128,15,194,244,0,63,64,0,63,128,15,194,244,0,63,64,0,63,128,15,194,255,253,63,64,0,63,128,15,194,255,253,63,128,0,63,128,15,194,255,253,63,255,255,255,128,15,194,244,0,63,255,255,255,128,15,194,244,0,63,255,255,255,128,15,194,244,0,63,64,0,0,0,15,194,244,0,63,64,0,0,0,15,194,244,5,63,64,0,0,0,15,194,250,254,63,64,0,0,0,15,215,255,255,63,64,0,0,0,31,255,255,254,63,128,0,0,0,191,255,254,64,63,255,255,255,248,127,254,64,0,63,255,255,255,248,121,64,0,0,63,255,255,255,248,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0, + // 0x8f6c 转 + 108,143,35,36,68,37,1,252,0,11,144,0,0,2,248,0,0,0,15,208,0,0,3,248,0,0,0,15,192,0,0,3,244,0,0,0,31,192,0,0,7,240,0,0,127,255,255,248,255,255,255,255,192,127,255,255,248,255,255,255,255,192,127,255,255,248,255,255,255,255,192,0,127,0,0,0,31,192,0,0,0,189,0,0,0,47,192,0,0,0,252,0,0,0,63,128,0,0,0,248,252,0,0,63,64,0,0,2,244,252,3,255,255,255,255,244,3,240,252,3,255,255,255,255,244,7,224,252,3,255,255,255,255,244,11,208,252,0,1,253,0,0,0,15,192,252,0,2,252,0,0,0,47,255,255,244,3,252,0,0,0,47,255,255,244,3,248,0,0,0,31,255,255,244,7,244,0,4,0,4,1,252,0,11,255,255,255,128,0,0,252,0,15,255,255,255,192,0,0,252,0,31,255,255,255,0,0,0,252,0,0,0,2,253,0,0,0,253,110,0,0,7,248,0,0,107,255,254,0,0,15,240,0,127,255,255,254,0,208,63,192,0,127,255,254,80,3,248,191,64,0,63,250,252,0,7,255,254,0,0,20,0,252,0,0,255,252,0,0,0,0,252,0,0,31,253,0,0,0,0,252,0,0,3,255,128,0,0,0,252,0,0,0,191,240,0,0,0,252,0,0,0,31,248,0,0,0,252,0,0,0,3,240,0,0,0,252,0,0,0,0,192,0,0,0,0,0,0,0,0,0,0, + // 0x8f6f 软 + 111,143,35,35,59,37,1,253,0,1,144,0,0,169,0,0,0,0,2,252,0,0,190,0,0,0,0,3,248,0,0,253,0,0,0,0,3,244,0,0,253,0,0,0,0,11,244,0,0,252,0,0,0,63,255,255,255,129,252,0,0,0,63,255,255,255,130,255,255,255,244,63,255,255,255,131,255,255,255,240,0,47,192,0,3,255,255,255,240,0,63,64,0,11,240,0,7,240,0,127,21,0,15,224,0,11,224,0,190,63,0,31,192,0,15,208,0,253,63,0,63,193,80,15,192,1,252,63,0,127,67,244,15,192,3,244,63,0,255,3,244,31,128,7,240,63,0,125,3,244,47,64,31,255,255,255,72,3,244,1,0,31,255,255,255,64,3,244,0,0,15,255,255,255,64,3,248,0,0,5,0,63,64,0,3,252,0,0,0,0,63,0,0,7,252,0,0,0,0,63,0,0,11,253,0,0,0,0,63,0,0,15,254,0,0,0,0,63,175,192,15,255,0,0,1,107,255,255,192,47,255,64,0,127,255,255,255,192,63,159,192,0,127,255,255,229,0,191,15,208,0,63,254,191,0,0,255,11,240,0,41,0,63,0,3,252,3,252,0,0,0,63,0,11,248,2,254,0,0,0,63,0,47,240,0,255,128,0,0,63,0,191,192,0,63,240,0,0,63,2,255,64,0,31,244,0,0,63,0,189,0,0,7,208,0,0,47,0,36,0,0,0,128, + // 0x8f74 轴 + 116,143,34,36,68,37,1,252,0,14,128,0,0,3,244,0,0,0,15,208,0,0,3,244,0,0,0,31,192,0,0,3,244,0,0,0,31,192,0,0,3,244,0,0,63,255,255,244,0,3,244,0,0,63,255,255,244,0,3,244,0,0,63,255,255,244,0,3,244,0,0,0,191,0,0,0,3,244,0,0,0,189,0,0,255,255,255,255,208,0,252,0,0,255,255,255,255,208,0,252,188,0,255,255,255,255,208,1,248,252,0,252,3,244,15,208,3,244,252,0,252,3,244,15,208,3,240,252,0,252,3,244,15,208,7,224,252,0,252,3,244,15,208,15,192,252,0,252,3,244,15,208,47,255,255,244,252,3,244,15,208,47,255,255,244,252,3,244,15,208,15,255,255,244,252,3,244,15,208,4,0,253,0,255,255,255,255,208,0,0,252,0,255,255,255,255,208,0,0,252,0,255,255,255,255,208,0,0,252,0,252,3,244,15,208,0,0,253,104,252,3,244,15,208,0,91,255,248,252,3,244,15,208,127,255,255,252,252,3,244,15,208,63,255,255,144,252,3,244,15,208,63,254,252,0,252,3,244,15,208,41,64,252,0,252,3,244,15,208,0,0,252,0,252,3,244,15,208,0,0,252,0,255,255,255,255,208,0,0,252,0,255,255,255,255,208,0,0,252,0,255,255,255,255,208,0,0,252,0,252,0,0,15,208,0,0,188,0,252,0,0,11,208,0,0,0,0,0,0,0,0,0, + // 0x8f7d 载 + 125,143,34,35,59,37,2,253,0,0,126,0,0,254,0,0,0,0,0,127,0,0,190,11,64,0,0,0,127,0,0,190,47,208,0,15,255,255,255,240,190,15,244,0,15,255,255,255,240,190,3,252,0,10,170,255,170,160,190,0,255,0,0,0,127,0,0,190,0,56,0,0,0,127,0,0,190,0,0,0,170,170,255,170,170,255,170,170,128,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,7,144,0,0,127,0,0,0,0,11,240,0,0,127,0,0,0,0,15,224,0,0,127,0,96,0,0,15,208,0,0,63,0,253,0,127,255,255,255,253,63,0,252,0,127,255,255,255,253,63,1,252,0,106,255,170,170,169,63,67,244,0,0,253,5,64,0,63,67,240,0,2,248,15,192,0,47,139,240,0,7,240,15,192,0,47,207,208,0,31,255,255,255,248,31,239,192,0,31,255,255,255,248,31,255,64,0,15,255,255,255,248,15,255,0,0,4,0,15,192,0,15,253,0,0,0,0,15,192,0,11,252,0,0,0,0,15,192,4,7,244,3,64,0,0,15,255,253,15,244,3,208,107,255,255,255,253,63,252,7,208,127,255,255,255,233,255,253,11,208,127,255,255,192,3,254,255,79,192,21,0,15,192,31,248,63,255,192,0,0,15,192,63,224,31,255,64,0,0,15,192,15,128,7,254,0,0,0,15,192,5,0,0,0,0, + // 0x8f91 辑 + 145,143,35,35,59,37,1,253,0,10,64,0,0,0,0,0,0,0,15,208,0,42,170,170,169,0,0,31,192,0,127,255,255,255,0,0,31,192,0,127,255,255,255,0,0,47,192,0,126,0,0,127,0,63,255,255,244,126,0,0,127,0,63,255,255,244,126,0,0,127,0,63,255,255,244,127,255,255,255,0,0,190,0,0,127,255,255,255,0,0,252,0,0,42,170,170,170,0,0,252,168,0,0,0,0,0,0,2,248,252,7,255,255,255,255,240,3,240,252,7,255,255,255,255,240,7,240,252,7,255,255,255,255,240,11,224,252,0,63,0,0,190,0,15,192,252,0,63,0,0,190,0,47,255,255,240,63,0,0,190,0,47,255,255,240,63,255,255,254,0,31,255,255,240,63,255,255,254,0,4,0,252,0,63,170,170,254,0,0,0,252,0,63,0,0,190,0,0,0,252,0,63,0,0,190,0,0,0,252,0,63,85,85,190,0,0,0,254,184,63,255,255,254,0,0,107,255,248,63,255,255,254,0,127,255,255,248,63,0,0,190,0,127,255,255,144,63,0,0,190,0,63,255,252,0,63,0,0,191,244,62,64,252,0,127,90,191,255,244,0,0,252,15,255,255,255,255,244,0,0,252,15,255,255,255,254,0,0,0,252,15,250,149,0,190,0,0,0,252,0,0,0,0,190,0,0,0,252,0,0,0,0,190,0,0,0,252,0,0,0,0,190,0, + // 0x8f93 输 + 147,143,35,35,59,37,1,253,0,37,0,0,0,3,128,0,0,0,63,0,0,0,15,240,0,0,0,127,0,0,0,63,224,0,0,0,126,0,0,0,255,244,0,0,0,190,0,0,3,255,254,0,0,127,255,255,128,31,248,191,192,0,127,255,255,128,191,224,47,248,0,127,255,255,135,255,128,7,255,128,1,248,0,127,253,0,1,255,244,2,244,0,255,255,255,255,255,244,3,240,0,63,255,255,255,250,224,3,243,240,4,191,255,255,244,64,7,211,240,0,0,0,0,0,0,11,195,240,0,0,0,0,1,64,15,195,240,10,170,170,0,7,192,31,67,240,15,255,255,15,71,192,63,255,255,143,255,255,15,135,192,63,255,255,143,192,47,15,135,192,47,255,255,143,192,47,15,135,192,20,3,240,15,234,191,15,135,192,0,3,240,15,255,255,15,135,192,0,3,240,15,255,255,15,135,192,0,3,240,15,192,47,15,135,192,0,3,255,143,192,47,15,135,192,6,255,255,143,234,191,15,135,192,127,255,255,79,255,255,15,135,192,63,255,240,15,255,255,15,135,192,63,147,240,15,192,47,15,135,192,0,3,240,15,192,47,15,71,192,0,3,240,15,192,47,0,7,192,0,3,240,15,192,47,0,7,192,0,3,240,15,192,47,0,11,192,0,3,240,15,195,255,7,255,192,0,3,240,15,195,254,3,255,192,0,3,240,11,193,164,2,169,0, + // 0x8fb9 边 + 185,143,35,36,68,37,1,252,0,64,0,0,1,84,0,0,0,2,224,0,0,3,248,0,0,0,11,248,0,0,3,248,0,0,0,3,254,0,0,3,248,0,0,0,0,255,128,0,3,248,0,0,0,0,63,208,0,3,248,0,0,0,0,31,240,85,87,249,85,85,64,0,11,209,255,255,255,255,255,192,0,2,1,255,255,255,255,255,192,0,0,1,255,255,255,255,255,192,0,0,0,0,7,240,0,47,192,0,0,0,0,11,240,0,47,192,21,85,0,0,11,240,0,47,192,127,255,128,0,15,224,0,47,192,127,255,128,0,15,224,0,47,192,127,255,128,0,31,208,0,47,192,0,63,128,0,47,192,0,63,128,0,63,128,0,63,192,0,63,128,0,63,128,0,127,64,0,63,128,0,63,128,0,191,0,0,63,128,0,63,128,0,255,0,0,63,64,0,63,128,3,252,0,0,127,64,0,63,128,11,248,0,0,127,0,0,63,128,31,240,0,0,191,0,0,63,128,191,208,0,1,255,0,0,63,130,255,64,31,255,254,0,0,63,131,254,0,15,255,252,0,0,191,192,244,0,11,255,240,0,3,255,244,0,0,1,85,0,0,15,255,254,0,0,0,0,0,0,63,241,255,249,0,0,0,85,168,255,192,47,255,255,255,255,255,244,127,0,7,255,255,255,255,255,240,45,0,0,111,255,255,255,255,240,8,0,0,0,21,85,85,64,0,0,0,0,0,0,0,0,0,0, + // 0x8fc1 迁 + 193,143,35,35,59,37,1,253,0,0,0,0,0,0,0,16,0,1,244,0,0,0,0,27,248,0,3,255,0,0,1,111,255,254,0,1,255,208,90,255,255,255,249,0,0,47,244,255,255,255,249,0,0,0,11,244,255,255,255,0,0,0,0,1,208,101,0,191,0,0,0,0,0,0,0,0,191,0,0,0,3,64,0,0,0,191,0,0,0,15,224,0,0,0,191,0,0,0,31,253,0,0,0,191,0,0,0,3,255,128,0,0,191,0,0,0,0,127,224,0,0,191,0,0,0,0,15,199,255,255,255,255,255,240,0,2,7,255,255,255,255,255,240,0,0,7,255,255,255,255,255,240,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,63,255,192,0,0,191,0,0,0,63,255,192,0,0,191,0,0,0,63,255,192,0,0,191,0,0,0,0,15,192,0,0,191,0,0,0,0,15,192,0,0,191,0,0,0,0,15,192,0,0,191,0,0,0,0,15,192,0,0,191,0,0,0,0,15,192,0,0,191,0,0,0,0,15,192,0,0,191,0,0,0,0,47,224,0,0,191,0,0,0,0,255,248,0,0,191,0,0,0,11,255,255,64,0,21,0,0,0,63,248,191,250,80,0,0,21,84,127,224,47,255,255,255,255,255,244,63,64,2,255,255,255,255,255,240,28,0,0,27,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x8fd0 运 + 208,143,35,35,59,37,1,253,0,64,0,0,0,0,0,0,0,1,244,0,0,0,0,0,0,0,7,255,0,47,255,255,255,255,0,1,255,208,47,255,255,255,255,0,0,47,244,47,255,255,255,255,0,0,11,240,0,0,0,0,0,0,0,1,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,64,0,0,0,0,0,0,0,47,244,0,0,0,0,0,0,0,31,254,0,0,0,0,0,0,0,2,255,195,255,255,255,255,255,248,0,127,195,255,255,255,255,255,248,0,15,67,255,255,255,255,255,248,0,1,0,0,31,224,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,63,192,7,0,0,0,0,0,0,63,128,63,128,0,63,255,128,0,191,0,31,208,0,63,255,128,0,254,0,11,240,0,63,255,128,1,253,0,3,252,0,0,47,128,2,252,0,1,254,0,0,47,128,3,244,0,85,255,0,0,47,129,175,255,255,255,255,192,0,47,130,255,255,255,255,255,208,0,47,130,255,255,255,234,95,240,0,47,193,254,149,0,0,7,240,0,127,208,0,0,0,0,3,128,2,255,244,0,0,0,0,0,0,11,255,255,0,0,0,0,0,0,127,244,255,249,64,0,0,5,80,127,208,63,255,255,255,255,255,244,63,0,7,255,255,255,255,255,240,28,0,0,43,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x8fd1 近 + 209,143,35,35,59,37,1,253,0,0,0,0,0,0,0,96,0,3,64,0,0,0,0,111,252,0,15,224,0,4,1,175,255,255,0,31,252,0,15,255,255,255,244,0,7,255,0,15,255,255,233,0,0,0,255,192,15,255,148,0,0,0,0,63,224,15,224,0,0,0,0,0,15,208,15,224,0,0,0,0,0,3,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,255,255,255,255,240,0,0,0,15,255,255,255,255,240,0,0,0,15,255,255,255,255,240,0,0,0,15,224,0,254,0,0,63,255,192,15,208,0,254,0,0,63,255,192,15,192,0,254,0,0,63,255,192,31,192,0,254,0,0,0,31,192,47,192,0,254,0,0,0,31,192,63,128,0,254,0,0,0,31,192,63,64,0,254,0,0,0,31,192,191,0,0,254,0,0,0,31,192,254,0,0,254,0,0,0,31,194,253,0,0,254,0,0,0,31,195,252,0,0,254,0,0,0,31,207,244,0,0,254,0,0,0,31,199,224,0,0,254,0,0,0,63,225,192,0,0,254,0,0,1,255,248,0,0,0,254,0,0,11,255,255,64,0,0,0,0,0,127,248,191,254,85,85,85,85,100,127,208,47,255,255,255,255,255,244,63,64,2,255,255,255,255,255,240,28,0,0,27,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x8fd4 返 + 212,143,35,34,50,37,1,253,3,64,0,0,0,0,0,0,0,31,208,0,63,255,255,255,255,192,31,248,0,63,255,255,255,255,192,7,254,0,63,255,255,255,255,192,1,255,128,63,64,0,0,0,0,0,127,208,63,64,0,0,0,0,0,31,192,63,64,0,0,0,0,0,11,0,63,64,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,255,255,255,254,0,0,0,0,63,255,255,255,255,0,0,0,0,63,255,255,255,254,0,0,0,0,63,127,64,1,252,0,0,0,0,63,111,192,3,252,0,63,255,128,63,79,208,7,244,0,63,255,128,63,11,240,15,240,0,63,255,128,127,7,244,31,208,0,0,47,128,127,2,252,63,192,0,0,47,128,190,0,255,255,64,0,0,47,128,253,0,127,254,0,0,0,47,129,252,0,47,252,0,0,0,47,130,252,0,63,252,0,0,0,47,131,248,1,255,255,64,0,0,47,135,240,11,255,255,240,0,0,47,143,224,191,248,47,255,64,0,47,159,195,255,208,7,255,240,0,127,211,129,254,0,0,191,224,2,255,244,0,224,0,0,11,192,11,255,255,64,0,0,0,0,0,127,244,255,250,84,0,5,85,84,127,208,63,255,255,255,255,255,240,63,0,7,255,255,255,255,255,240,28,0,0,27,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x8fd8 还 + 216,143,35,36,68,37,1,252,0,64,0,0,0,0,0,0,0,2,224,0,0,0,0,0,0,0,11,248,1,85,85,85,85,85,64,3,254,3,255,255,255,255,255,208,0,255,131,255,255,255,255,255,208,0,63,211,255,255,255,255,255,208,0,31,240,0,0,47,192,0,0,0,11,208,0,0,127,128,0,0,0,2,0,0,0,255,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,15,253,0,0,0,21,85,0,0,63,253,28,0,0,127,255,128,0,191,253,191,0,0,127,255,128,2,255,253,191,192,0,127,255,128,11,253,253,47,240,0,0,63,128,47,244,253,11,252,0,0,63,128,191,208,253,3,255,0,0,63,135,255,128,253,0,255,192,0,63,159,253,0,253,0,63,224,0,63,143,244,0,253,0,15,224,0,63,131,192,0,253,0,7,64,0,63,128,0,0,253,0,0,0,0,63,128,0,0,253,0,0,0,0,63,128,0,0,253,0,0,0,0,63,128,0,0,253,0,0,0,0,63,128,0,0,253,0,0,0,0,191,192,0,0,253,0,0,0,3,255,244,0,0,253,0,0,0,15,255,254,0,0,0,0,0,0,63,241,255,249,0,0,0,85,168,255,192,47,255,255,255,255,255,248,127,0,7,255,255,255,255,255,240,45,0,0,111,255,255,255,255,240,8,0,0,0,21,85,85,64,0,0,0,0,0,0,0,0,0,0, + // 0x8fdb 进 + 219,143,35,34,50,37,1,253,2,192,0,0,127,0,63,128,0,11,240,0,0,127,0,63,128,0,7,252,0,0,127,0,63,128,0,1,255,0,0,127,0,63,128,0,0,127,192,0,127,0,63,128,0,0,47,224,85,191,85,127,149,64,0,11,209,255,255,255,255,255,192,0,3,1,255,255,255,255,255,192,0,0,1,255,255,255,255,255,192,0,0,0,0,127,0,63,128,0,0,0,0,0,127,0,63,128,0,0,0,0,0,127,0,63,128,0,0,0,0,0,127,0,63,128,0,63,255,192,0,127,0,63,128,0,63,255,192,0,127,0,63,128,0,63,255,194,255,255,255,255,255,240,0,31,194,255,255,255,255,255,240,0,31,194,255,255,255,255,255,240,0,31,192,85,254,85,127,149,80,0,31,192,1,252,0,63,128,0,0,31,192,2,252,0,63,128,0,0,31,192,3,248,0,63,128,0,0,31,192,11,244,0,63,128,0,0,31,192,31,240,0,63,128,0,0,31,192,63,208,0,63,128,0,0,31,192,255,128,0,63,128,0,0,63,208,63,0,0,63,128,0,2,255,248,12,0,0,42,64,0,11,255,255,64,0,0,0,0,0,47,240,127,254,84,0,85,106,244,127,192,15,255,255,255,255,255,240,63,0,1,255,255,255,255,255,240,13,0,0,6,191,255,255,254,144,0,0,0,0,0,0,0,0,0, + // 0x8fde 连 + 222,143,35,36,68,37,1,252,0,64,0,0,14,0,0,0,0,2,224,0,0,31,208,0,0,0,11,244,0,0,47,192,0,0,0,3,253,0,0,63,192,0,0,0,0,255,3,255,255,255,255,255,192,0,127,195,255,255,255,255,255,192,0,47,211,255,255,255,255,255,192,0,15,208,2,252,0,0,0,0,0,7,0,3,248,5,64,0,0,0,0,0,7,244,15,208,0,0,0,0,0,15,240,15,208,0,0,0,0,0,31,208,15,208,0,0,0,0,0,63,192,15,208,0,0,127,255,128,255,255,255,255,255,0,127,255,128,255,255,255,255,255,0,127,255,128,127,255,255,255,255,0,0,47,128,36,0,31,208,0,0,0,47,128,0,0,15,208,0,0,0,47,128,0,0,15,208,0,0,0,47,128,0,0,15,208,0,0,0,47,128,0,0,31,224,0,0,0,47,131,255,255,255,255,255,224,0,47,131,255,255,255,255,255,224,0,47,131,255,255,255,255,255,224,0,47,128,0,0,15,208,0,0,0,47,128,0,0,15,208,0,0,0,47,128,0,0,15,208,0,0,0,127,128,0,0,15,208,0,0,2,255,240,0,0,15,208,0,0,15,255,254,0,0,15,208,0,0,63,245,255,249,0,0,0,21,168,191,192,47,255,255,255,255,255,248,127,0,7,255,255,255,255,255,240,46,0,0,111,255,255,255,255,240,8,0,0,0,21,85,85,64,0,0,0,0,0,0,0,0,0,0, + // 0x8ff7 迷 + 247,143,35,35,59,37,1,253,0,0,0,0,0,84,0,0,0,3,64,0,0,0,254,0,0,0,15,224,0,108,0,254,0,62,64,31,252,0,254,0,254,0,63,128,7,255,0,191,0,254,0,191,0,0,255,192,63,128,254,0,254,0,0,63,224,47,192,254,2,252,0,0,15,192,15,208,254,3,244,0,0,3,0,11,240,254,11,240,0,0,0,0,7,144,254,7,208,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,7,255,255,255,255,255,224,0,0,7,255,255,255,255,255,224,0,0,7,255,255,255,255,255,224,63,255,192,0,15,255,240,0,0,63,255,192,0,31,255,244,0,0,63,255,192,0,63,255,252,0,0,0,31,192,0,255,254,191,0,0,0,31,192,2,252,254,63,128,0,0,31,192,7,248,254,31,224,0,0,31,192,31,240,254,11,248,0,0,31,192,127,192,254,3,254,0,0,31,194,255,64,254,0,255,192,0,31,207,253,0,254,0,63,240,0,31,199,244,0,254,0,15,208,0,31,193,208,0,254,0,3,64,0,63,224,0,0,254,0,0,0,1,255,248,0,0,254,0,0,0,11,255,255,64,0,0,0,0,0,127,248,191,254,85,85,85,85,100,127,208,47,255,255,255,255,255,244,63,64,2,255,255,255,255,255,240,28,0,0,27,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x9000 退 + 0,144,35,33,41,37,1,253,7,208,0,31,255,255,255,252,0,31,244,0,31,255,255,255,252,0,11,254,0,31,255,255,255,252,0,1,255,192,31,192,0,1,252,0,0,63,240,31,192,0,1,252,0,0,15,224,31,234,170,171,252,0,0,3,64,31,255,255,255,252,0,0,0,0,31,255,255,255,252,0,0,0,0,31,192,0,1,252,0,0,0,0,31,192,0,1,252,0,0,0,0,31,192,0,1,252,0,0,0,0,31,255,255,255,252,0,0,0,0,31,255,255,255,252,0,63,255,192,31,255,255,255,252,0,63,255,192,31,192,63,64,15,64,63,255,192,31,192,47,192,127,208,0,31,192,31,192,15,210,255,64,0,31,192,31,192,11,255,252,0,0,31,192,31,192,7,255,208,0,0,31,192,31,192,2,255,0,0,0,31,192,31,192,0,255,64,0,0,31,192,31,193,174,127,208,0,0,31,192,31,255,255,31,248,0,0,31,193,255,255,255,7,255,144,0,31,194,255,255,144,1,255,240,0,63,225,255,144,0,0,47,192,1,255,248,144,0,0,0,3,64,11,255,255,64,0,0,0,0,0,127,248,191,254,85,85,85,85,100,127,208,47,255,255,255,255,255,244,63,64,2,255,255,255,255,255,240,28,0,0,27,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x9009 选 + 9,144,34,35,59,37,2,253,0,0,0,0,0,169,0,0,0,4,0,0,9,0,253,0,0,0,63,0,0,31,192,253,0,0,0,191,208,0,47,192,253,0,0,0,47,244,0,63,128,253,0,0,0,11,252,0,127,255,255,255,254,0,2,255,0,255,255,255,255,254,0,0,191,65,255,255,255,255,254,0,0,60,3,252,0,253,0,0,0,0,0,15,240,0,253,0,0,0,0,0,7,224,0,253,0,0,0,0,0,0,128,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,15,255,255,255,255,255,192,0,0,15,255,255,255,255,255,192,255,254,15,255,255,255,255,255,192,255,254,0,0,254,3,244,0,0,255,254,0,0,253,3,244,0,0,0,190,0,1,252,3,244,0,0,0,190,0,2,252,3,244,0,0,0,190,0,3,248,3,244,0,0,0,190,0,11,244,3,244,10,0,0,190,0,15,240,3,244,11,208,0,190,0,63,208,3,244,11,208,0,190,2,255,128,3,244,15,192,0,190,31,254,0,3,255,255,192,0,190,31,248,0,2,255,255,128,0,191,139,192,0,0,255,255,0,2,255,245,0,0,0,0,0,0,15,255,254,0,0,0,0,0,0,63,244,191,229,0,0,0,86,144,255,192,31,255,255,255,255,255,192,255,0,3,255,255,255,255,255,192,60,0,0,27,255,255,255,255,128,20,0,0,0,0,0,0,0,0, + // 0x901f 速 + 31,144,35,35,59,37,1,253,0,0,0,0,0,190,0,0,0,2,64,0,0,0,190,0,0,0,15,208,0,0,0,190,0,0,0,47,248,0,0,0,190,0,0,0,7,254,3,255,255,255,255,255,240,1,255,131,255,255,255,255,255,240,0,63,227,255,255,255,255,255,224,0,15,208,0,0,190,0,0,0,0,3,0,0,0,190,0,0,0,0,0,0,106,170,255,170,170,0,0,0,0,191,255,255,255,255,64,0,0,0,191,255,255,255,255,64,0,0,0,189,0,190,0,63,64,0,0,0,189,0,190,0,63,64,0,0,0,189,0,190,0,63,64,63,255,192,189,0,190,0,63,64,63,255,192,191,170,255,170,191,64,63,255,192,191,255,255,255,255,64,0,31,192,191,255,255,255,255,64,0,31,192,0,11,255,224,0,0,0,31,192,0,47,255,248,0,0,0,31,192,0,127,255,254,0,0,0,31,192,2,253,190,127,128,0,0,31,192,11,248,190,31,244,0,0,31,192,127,224,190,7,254,0,0,31,199,255,128,190,1,255,224,0,31,199,253,0,190,0,63,208,0,63,226,240,0,190,0,11,128,1,255,248,64,0,190,0,1,0,11,255,255,64,0,85,0,0,0,127,248,191,254,85,85,85,85,100,127,208,47,255,255,255,255,255,244,63,64,2,255,255,255,255,255,240,28,0,0,27,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x90e8 部 + 232,144,35,35,59,37,1,253,0,0,106,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,63,255,255,192,0,0,127,0,0,63,255,255,244,47,255,255,255,252,63,255,255,240,47,255,255,255,252,63,64,31,240,47,255,255,255,252,63,0,31,208,0,0,0,4,0,63,0,47,192,0,252,0,31,192,63,0,63,128,0,252,0,47,128,63,0,127,0,0,189,0,63,64,63,0,254,0,0,126,0,63,0,63,0,253,0,0,63,0,126,0,63,2,252,0,0,63,0,253,0,63,3,244,0,0,36,0,24,0,63,7,240,0,127,255,255,255,254,63,11,240,0,127,255,255,255,254,63,2,252,0,127,255,255,255,254,63,0,255,0,0,0,0,0,0,63,0,63,64,0,0,0,0,0,63,0,47,192,0,0,0,0,0,63,0,15,208,3,255,255,255,224,63,0,11,224,3,255,255,255,224,63,0,7,240,3,255,255,255,224,63,0,7,240,3,240,0,11,224,63,0,7,240,3,240,0,11,224,63,0,11,240,3,240,0,11,224,63,0,31,240,3,240,0,11,224,63,15,255,224,3,240,0,11,224,63,15,255,192,3,240,0,11,224,63,11,255,0,3,255,255,255,224,63,1,80,0,3,255,255,255,224,63,0,0,0,3,255,255,255,224,63,0,0,0,3,240,0,11,224,63,0,0,0,3,240,0,11,224,63,0,0,0, + // 0x914d 配 + 77,145,34,33,41,37,2,253,255,255,255,255,143,255,255,255,64,255,255,255,255,143,255,255,255,64,255,255,255,255,143,255,255,255,64,0,62,47,0,1,85,85,127,64,0,62,47,0,0,0,0,63,64,0,62,47,0,0,0,0,63,64,63,255,255,254,0,0,0,63,64,63,255,255,255,0,0,0,63,64,63,255,255,255,0,0,0,63,64,62,29,60,63,0,0,0,63,64,62,29,60,63,0,0,0,63,64,62,29,60,63,0,0,0,63,64,62,29,60,63,11,255,255,255,64,62,29,60,63,11,255,255,255,64,62,29,60,63,11,255,255,255,64,62,44,60,63,11,224,0,63,64,62,60,60,63,11,224,0,63,64,62,180,47,255,11,224,0,21,0,63,240,31,255,11,224,0,0,0,62,64,0,63,11,224,0,0,0,62,0,0,63,11,224,0,0,0,63,85,85,127,11,224,0,0,0,63,255,255,255,11,224,0,0,0,63,255,255,255,11,224,0,6,0,62,0,0,63,11,224,0,7,224,62,0,0,63,11,224,0,11,224,62,0,0,63,11,224,0,11,224,63,170,170,191,11,224,0,15,208,63,255,255,255,11,240,0,31,192,63,255,255,255,7,255,255,255,192,62,0,0,63,3,255,255,255,64,62,0,0,63,1,255,255,254,0,41,0,0,0,0,0,0,0,0, + // 0x91ca 释 + 202,145,35,35,59,37,1,253,0,0,0,80,0,0,0,0,0,0,1,175,240,0,0,0,0,0,47,255,255,252,255,255,255,255,208,63,255,255,228,255,255,255,255,224,47,175,240,0,255,255,255,255,192,0,7,224,0,15,192,0,63,128,5,7,224,120,7,224,0,255,0,63,7,224,252,3,244,3,252,0,31,135,224,248,1,253,15,240,0,15,199,226,240,0,127,127,192,0,7,215,227,224,0,47,255,0,0,3,231,231,192,0,15,254,0,0,1,7,224,0,0,191,255,208,0,0,7,224,0,7,255,111,254,64,63,255,255,245,191,244,7,255,248,63,255,255,251,255,128,0,191,244,63,255,255,246,248,1,80,11,240,0,15,240,0,64,3,240,0,144,0,47,252,0,0,3,240,0,0,0,63,255,0,0,3,240,0,0,0,191,255,192,191,255,255,255,64,0,255,255,240,191,255,255,255,64,3,251,227,252,191,255,255,255,64,11,231,224,244,0,3,240,0,0,31,199,224,80,0,3,240,0,0,127,135,224,0,0,3,240,0,0,191,7,224,3,255,255,255,255,240,61,7,224,3,255,255,255,255,240,40,7,224,3,255,255,255,255,240,0,7,224,0,0,7,244,0,0,0,7,224,0,0,3,240,0,0,0,7,224,0,0,3,240,0,0,0,7,224,0,0,3,240,0,0,0,7,224,0,0,3,240,0,0,0,7,224,0,0,3,240,0,0, + // 0x91cd 重 + 205,145,33,34,50,37,2,254,0,0,0,0,0,0,90,0,0,0,0,0,5,106,255,255,64,0,2,191,255,255,255,255,255,192,0,2,255,255,255,255,255,233,0,0,1,255,169,91,244,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,170,170,170,175,254,170,170,170,128,0,0,0,7,240,0,0,0,0,0,85,85,91,245,85,85,64,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,253,0,7,240,0,15,208,0,0,253,0,7,240,0,15,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,253,0,11,240,0,31,208,0,0,253,0,7,240,0,15,208,0,0,253,0,7,240,0,15,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,85,85,91,245,85,85,64,0,0,0,0,7,240,0,0,0,0,2,170,170,175,250,170,170,164,0,3,255,255,255,255,255,255,248,0,3,255,255,255,255,255,255,248,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x91cf 量 + 207,145,33,33,41,37,2,254,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,0,0,0,0,63,64,0,0,127,0,0,0,0,63,64,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,0,0,0,0,63,64,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,170,170,170,170,170,170,170,170,128,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,252,0,3,240,0,15,208,0,0,252,0,3,240,0,15,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,252,0,3,240,0,15,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,0,0,3,240,0,0,0,0,0,0,0,3,240,0,0,0,0,3,255,255,255,255,255,255,240,0,3,255,255,255,255,255,255,240,0,1,85,85,87,245,85,85,80,0,0,0,0,3,240,0,0,0,0,170,170,170,171,250,170,170,170,128,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x9488 针 + 136,148,34,35,59,37,1,253,0,25,0,0,0,2,164,0,0,0,63,128,0,0,3,248,0,0,0,127,0,0,0,3,248,0,0,0,254,0,0,0,3,248,0,0,1,255,255,248,0,3,248,0,0,3,255,255,248,0,3,248,0,0,15,255,255,248,0,3,248,0,0,47,224,0,0,0,3,248,0,0,127,192,0,0,0,3,248,0,0,191,0,0,0,0,3,248,0,0,61,0,0,0,0,3,248,0,0,43,255,255,224,0,3,248,0,0,3,255,255,226,170,171,254,170,160,3,255,255,231,255,255,255,255,240,0,7,240,7,255,255,255,255,240,0,7,240,7,255,255,255,255,240,0,7,240,0,0,3,248,0,0,0,7,240,0,0,3,248,0,0,0,7,240,0,0,3,248,0,0,47,255,255,244,0,3,248,0,0,47,255,255,244,0,3,248,0,0,47,255,255,244,0,3,248,0,0,0,7,240,0,0,3,248,0,0,0,7,240,0,0,3,248,0,0,0,7,240,0,0,3,248,0,0,0,7,240,0,0,3,248,0,0,0,7,240,0,0,3,248,0,0,0,7,240,44,0,3,248,0,0,0,7,242,252,0,3,248,0,0,0,11,255,253,0,3,248,0,0,0,15,255,244,0,3,248,0,0,0,63,255,64,0,3,248,0,0,0,63,244,0,0,3,248,0,0,0,31,128,0,0,3,248,0,0,0,8,0,0,0,3,244,0,0, + // 0x94ae 钮 + 174,148,35,35,59,37,1,253,0,100,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,252,0,3,255,255,255,255,192,1,252,0,3,255,255,255,255,192,3,255,255,243,255,255,255,255,192,7,255,255,240,0,63,64,47,128,15,255,255,240,0,63,0,47,128,47,213,85,80,0,127,0,47,128,63,128,0,0,0,127,0,63,128,255,0,0,0,0,127,0,63,64,189,0,0,0,0,191,0,63,64,63,255,255,192,0,190,0,63,64,39,255,255,192,0,190,0,63,64,3,255,255,192,0,253,0,63,0,0,15,192,0,0,253,0,63,0,0,15,192,3,255,255,255,255,0,0,15,192,3,255,255,255,255,0,0,15,192,3,255,255,255,255,0,0,15,192,0,86,253,85,191,0,63,255,255,240,2,252,0,190,0,63,255,255,240,2,248,0,190,0,63,255,255,240,3,248,0,190,0,0,15,192,0,3,244,0,254,0,0,15,192,0,3,244,0,253,0,0,15,192,0,3,240,0,253,0,0,15,192,0,7,240,0,252,0,0,15,192,0,7,240,0,252,0,0,15,194,224,11,240,1,252,0,0,15,239,240,11,224,1,252,0,0,15,255,224,15,224,2,252,0,0,31,255,85,95,229,87,253,80,0,63,248,191,255,255,255,255,244,0,191,192,191,255,255,255,255,244,0,61,0,191,255,255,255,255,244,0,16,0,0,0,0,0,0,0, + // 0x9519 错 + 25,149,35,35,59,37,1,253,0,20,0,0,3,224,11,208,0,0,63,0,0,3,240,11,208,0,0,127,0,0,3,240,11,208,0,0,254,0,0,3,240,11,208,0,1,253,0,0,3,240,11,208,0,3,255,255,242,255,255,255,255,224,11,255,255,242,255,255,255,255,224,31,255,255,242,255,255,255,255,224,127,192,0,0,3,240,11,208,0,127,0,0,0,3,240,11,208,0,61,0,0,0,3,240,11,208,0,27,255,255,208,3,240,11,208,0,3,255,255,219,255,255,255,255,244,3,255,255,219,255,255,255,255,244,0,15,208,11,255,255,255,255,244,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,127,255,255,255,0,47,255,255,240,127,255,255,255,0,47,255,255,240,127,255,255,255,0,47,255,255,240,127,0,0,63,0,0,15,208,0,127,0,0,63,0,0,15,208,0,127,0,0,63,0,0,15,208,0,127,170,170,255,0,0,15,208,0,127,255,255,255,0,0,15,208,0,127,255,255,255,0,0,15,208,144,127,0,0,63,0,0,15,235,224,127,0,0,63,0,0,15,255,240,127,0,0,63,0,0,31,255,128,127,255,255,255,0,0,127,253,0,127,255,255,255,0,0,63,208,0,127,255,255,255,0,0,46,0,0,127,0,0,63,0,0,0,0,0,42,0,0,21,0, + // 0x955c 镜 + 92,149,35,36,68,37,1,252,0,40,0,0,0,11,208,0,0,0,63,0,0,0,7,240,0,0,0,191,0,1,255,255,255,255,192,0,253,0,1,255,255,255,255,208,2,255,255,209,255,255,255,255,208,3,255,255,208,2,128,1,144,0,15,255,255,208,11,224,3,244,0,31,208,0,0,3,240,3,240,0,127,192,0,0,3,240,7,224,0,127,0,0,11,255,255,255,255,240,62,0,0,11,255,255,255,255,240,31,255,255,203,255,255,255,255,240,3,255,255,192,0,0,0,0,0,3,255,255,192,0,0,0,0,0,0,15,192,0,255,255,255,255,128,0,15,192,0,255,255,255,255,128,0,15,192,0,253,0,0,47,128,0,15,192,0,252,0,0,47,128,0,15,192,0,255,255,255,255,128,63,255,255,240,255,255,255,255,128,63,255,255,240,252,0,0,47,128,63,255,255,240,252,0,0,47,128,0,15,192,0,253,0,0,47,128,0,15,192,0,255,255,255,255,128,0,15,192,0,255,255,255,255,128,0,15,192,0,2,248,47,128,0,0,15,192,80,3,244,47,128,0,0,15,199,224,3,240,47,128,0,0,15,255,240,11,240,47,128,64,0,31,255,208,15,224,47,128,244,0,63,254,0,63,192,47,128,248,0,255,244,2,255,128,47,129,248,0,191,128,127,254,0,31,255,244,0,61,0,63,244,0,15,255,240,0,16,0,30,64,0,1,170,64,0,0,0,0,0,0,0,0,0, + // 0x957f 长 + 127,149,34,35,59,37,2,253,0,2,164,0,0,0,0,0,0,0,3,244,0,0,0,46,0,0,0,3,244,0,0,0,191,192,0,0,3,244,0,0,2,255,64,0,0,3,244,0,0,15,253,0,0,0,3,244,0,0,127,244,0,0,0,3,244,0,2,255,208,0,0,0,3,244,0,31,255,0,0,0,0,3,244,1,255,248,0,0,0,0,3,244,31,255,208,0,0,0,0,3,244,47,254,0,0,0,0,0,3,244,11,224,0,0,0,0,0,3,244,2,0,0,0,0,0,0,3,244,0,0,0,0,0,0,85,87,249,85,85,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,3,244,0,254,0,0,0,0,0,3,244,0,191,0,0,0,0,0,3,244,0,63,128,0,0,0,0,3,244,0,47,208,0,0,0,0,3,244,0,15,240,0,0,0,0,3,244,0,11,252,0,0,0,0,3,244,0,3,254,0,0,0,0,3,244,0,0,255,128,0,0,0,3,244,0,0,127,240,0,0,0,3,244,0,4,47,253,0,0,0,3,244,6,252,11,255,128,0,0,3,254,255,252,1,255,253,0,0,11,255,255,252,0,127,255,208,0,31,255,255,144,0,11,255,192,0,15,255,144,0,0,0,191,0,0,15,224,0,0,0,0,5,0,0,4,0,0,0,0,0,0,0, + // 0x95ed 闭 + 237,149,31,36,32,37,3,252,1,0,0,0,0,0,0,0,31,64,0,0,0,0,0,0,63,208,15,255,255,255,255,252,15,244,15,255,255,255,255,252,3,252,15,255,255,255,255,252,1,255,0,0,0,0,2,252,0,189,0,0,0,0,1,252,0,32,0,0,26,128,1,252,0,0,0,0,47,192,1,252,254,0,0,0,47,192,1,252,254,0,0,0,47,192,1,252,254,0,0,0,47,192,1,252,254,0,0,0,47,192,1,252,254,15,255,255,255,255,225,252,254,15,255,255,255,255,225,252,254,15,255,255,255,255,225,252,254,0,0,3,255,192,1,252,254,0,0,11,255,192,1,252,254,0,0,31,255,192,1,252,254,0,0,127,239,192,1,252,254,0,1,255,47,192,1,252,254,0,7,253,47,192,1,252,254,0,47,244,47,192,1,252,254,0,255,208,47,192,1,252,254,11,255,64,47,192,1,252,254,63,252,0,47,192,1,252,254,63,224,0,47,192,1,252,254,15,64,0,47,192,1,252,254,0,0,85,127,192,1,252,254,0,0,191,255,192,1,252,254,0,0,127,255,64,1,252,254,0,0,63,249,0,2,252,254,0,0,0,0,2,255,252,254,0,0,0,0,1,255,244,254,0,0,0,0,0,255,144,0,0,0,0,0,0,0,0, + // 0x95f2 闲 + 242,149,31,35,24,37,3,253,1,0,0,0,0,0,0,0,11,192,0,0,0,0,0,0,31,224,11,255,255,255,255,252,11,248,11,255,255,255,255,252,2,253,11,255,255,255,255,252,0,255,64,0,0,0,1,252,0,63,192,0,0,0,1,252,0,31,192,0,0,0,1,252,84,10,0,10,128,0,1,252,252,0,0,15,192,0,1,252,252,0,0,15,192,0,1,252,252,0,0,15,192,0,1,252,252,0,0,15,192,0,1,252,252,15,255,255,255,255,225,252,252,15,255,255,255,255,225,252,252,15,255,255,255,255,225,252,252,0,0,191,248,0,1,252,252,0,0,255,253,0,1,252,252,0,3,255,255,64,1,252,252,0,11,255,239,208,1,252,252,0,31,207,207,244,1,252,252,0,63,79,195,252,1,252,252,0,255,15,192,255,1,252,252,3,252,15,192,127,129,252,252,31,244,15,192,47,209,252,252,63,208,15,192,15,129,252,252,15,64,15,192,1,1,252,252,0,0,15,192,0,1,252,252,0,0,15,192,0,1,252,252,0,0,15,192,0,1,252,252,0,0,15,192,0,2,252,252,0,0,5,64,47,255,252,252,0,0,0,0,31,255,244,252,0,0,0,0,15,255,208,252,0,0,0,0,5,80,0, + // 0x95f4 间 + 244,149,31,36,32,37,3,252,1,0,0,0,0,0,0,0,31,64,0,0,0,0,0,0,63,208,15,255,255,255,255,252,15,244,15,255,255,255,255,252,3,252,15,255,255,255,255,252,1,255,0,0,0,0,2,252,0,188,0,0,0,0,2,252,0,32,0,0,0,0,2,252,0,0,0,0,0,0,2,252,255,0,0,0,0,0,2,252,255,0,0,0,0,0,2,252,255,0,191,255,255,248,2,252,255,0,191,255,255,248,2,252,255,0,191,255,255,248,2,252,255,0,189,0,1,248,2,252,255,0,189,0,1,248,2,252,255,0,189,0,1,248,2,252,255,0,189,0,1,248,2,252,255,0,191,255,255,248,2,252,255,0,191,255,255,248,2,252,255,0,191,255,255,248,2,252,255,0,189,0,1,248,2,252,255,0,189,0,1,248,2,252,255,0,189,0,1,248,2,252,255,0,189,0,1,248,2,252,255,0,191,255,255,248,2,252,255,0,191,255,255,248,2,252,255,0,191,255,255,248,2,252,255,0,0,0,0,0,2,252,255,0,0,0,0,0,2,252,255,0,0,0,0,0,2,252,255,0,0,0,0,0,2,252,255,0,0,0,0,0,255,252,255,0,0,0,0,0,255,244,255,0,0,0,0,0,191,144,0,0,0,0,0,0,0,0, + // 0x9608 阈 + 8,150,31,36,32,37,3,252,2,192,0,0,0,0,0,0,15,240,11,255,255,255,255,248,7,252,11,255,255,255,255,248,2,254,11,255,255,255,255,248,0,191,64,0,0,0,2,248,0,63,192,0,0,0,2,248,0,31,208,0,184,16,2,248,0,11,64,0,252,248,2,248,254,0,0,0,252,190,2,248,254,0,0,0,252,47,2,248,254,0,0,0,252,8,2,248,254,47,255,255,255,255,226,248,254,47,255,255,255,255,226,248,254,26,170,170,254,170,146,248,254,0,0,0,188,0,2,248,254,0,0,0,125,10,66,248,254,11,255,248,125,15,66,248,254,11,255,248,125,31,2,248,254,11,128,184,62,63,2,248,254,11,128,184,62,62,2,248,254,11,128,184,63,188,2,248,254,11,255,248,47,252,2,248,254,11,255,248,31,244,2,248,254,0,0,0,31,240,2,248,254,0,0,0,15,208,162,248,254,0,26,254,31,192,246,248,254,47,255,254,63,224,242,248,254,63,255,233,255,250,242,248,254,47,148,3,249,255,226,248,254,0,0,31,224,191,194,248,254,0,0,15,128,31,66,248,254,0,0,1,0,0,3,248,254,0,0,0,0,31,255,248,254,0,0,0,0,15,255,240,254,0,0,0,0,11,255,128,0,0,0,0,0,0,0,0, + // 0x964d 降 + 77,150,33,35,59,37,3,253,0,0,0,0,11,144,0,0,0,0,0,0,0,15,208,0,0,0,255,255,224,0,63,192,0,0,0,255,255,252,0,191,234,171,128,0,255,255,244,1,255,255,255,240,0,252,3,240,7,255,255,255,208,0,252,7,240,31,248,0,63,192,0,252,11,208,127,253,0,127,0,0,252,15,194,255,191,1,254,0,0,252,31,195,252,63,199,252,0,0,252,47,64,224,15,255,240,0,0,252,63,0,0,3,255,192,0,0,252,126,0,0,3,255,208,0,0,252,126,0,0,47,255,253,0,0,252,63,64,6,255,235,255,228,0,252,15,193,191,255,0,191,255,128,252,11,227,255,244,10,175,255,0,252,3,241,254,64,15,208,125,0,252,3,240,144,0,15,208,0,0,252,2,244,127,255,255,255,252,0,252,2,244,191,255,255,255,252,0,252,2,244,191,255,255,255,252,0,252,3,244,3,240,15,208,0,0,252,255,240,3,240,15,208,0,0,252,191,224,3,240,15,208,0,0,252,191,64,3,240,15,208,0,0,252,0,7,255,255,255,255,255,0,252,0,7,255,255,255,255,255,0,252,0,7,255,255,255,255,255,0,252,0,0,0,0,15,208,0,0,252,0,0,0,0,15,208,0,0,252,0,0,0,0,15,208,0,0,252,0,0,0,0,15,208,0,0,252,0,0,0,0,15,208,0,0,252,0,0,0,0,15,208,0,0, + // 0x9650 限 + 80,150,32,33,8,37,3,253,255,255,248,47,255,255,255,240,255,255,254,47,255,255,255,240,255,255,253,47,255,255,255,240,253,1,252,47,128,0,3,240,253,2,248,47,128,0,3,240,253,3,244,47,128,0,3,240,253,7,240,47,128,0,3,240,253,11,224,47,255,255,255,240,253,15,192,47,255,255,255,240,253,31,192,47,255,255,255,240,253,47,64,47,128,0,3,240,253,63,0,47,128,0,3,240,253,31,192,47,128,0,3,240,253,11,224,47,128,0,3,240,253,3,240,47,255,255,255,240,253,2,248,47,255,255,255,240,253,0,252,47,255,255,255,240,253,0,252,47,128,189,0,0,253,0,253,47,128,126,0,180,253,0,252,47,128,63,2,253,253,1,252,47,128,63,75,248,253,191,252,47,128,47,255,224,253,127,244,47,128,15,255,64,253,63,144,47,128,11,252,0,253,0,0,47,128,3,248,0,253,0,0,47,128,2,253,0,253,0,0,47,128,20,255,0,253,0,0,47,219,252,127,192,253,0,1,191,255,252,47,244,253,0,31,255,255,248,15,254,253,0,15,255,249,0,3,255,253,0,15,233,0,0,0,189,253,0,0,0,0,0,0,20, + // 0x9664 除 + 100,150,33,35,59,37,3,253,0,0,0,0,2,164,0,0,0,0,0,0,0,11,253,0,0,0,255,255,224,0,15,255,0,0,0,255,255,252,0,63,255,192,0,0,255,255,244,0,191,31,224,0,0,252,3,240,2,254,11,248,0,0,252,7,240,11,248,2,254,0,0,252,11,208,47,240,0,191,192,0,252,15,192,191,192,0,47,240,0,252,31,135,254,0,0,11,254,0,252,47,95,248,0,0,2,255,128,252,63,15,239,255,255,255,191,0,252,126,11,79,255,255,255,13,0,252,127,0,15,255,255,255,0,0,252,47,128,0,2,248,0,0,0,252,15,192,0,2,248,0,0,0,252,11,224,0,2,248,0,0,0,252,3,240,0,2,248,0,0,0,252,3,241,255,255,255,255,252,0,252,2,245,255,255,255,255,252,0,252,2,245,255,255,255,255,252,0,252,2,244,0,2,248,0,0,0,252,3,244,0,2,248,0,0,0,252,255,240,47,66,248,31,0,0,252,191,224,63,2,248,63,128,0,252,191,64,191,2,248,31,208,0,252,0,0,253,2,248,11,240,0,252,0,2,252,2,248,3,244,0,252,0,7,244,2,248,1,252,0,252,0,15,224,2,248,0,254,0,252,0,63,192,2,248,0,127,0,252,0,31,64,3,248,0,62,0,252,0,1,1,255,248,0,16,0,252,0,0,0,255,240,0,0,0,252,0,0,0,255,128,0,0,0, + // 0x9669 险 + 105,150,33,35,59,37,3,253,0,0,0,0,0,224,0,0,0,0,0,0,0,2,252,0,0,0,255,255,240,0,3,252,0,0,0,255,255,252,0,15,254,0,0,0,255,255,244,0,31,255,64,0,0,252,3,240,0,127,175,208,0,0,252,7,240,0,255,15,244,0,0,252,11,208,3,252,3,253,0,0,252,15,192,15,244,0,255,128,0,252,31,128,63,224,0,63,224,0,252,47,64,255,128,0,15,252,0,252,63,7,255,0,0,3,255,128,252,62,31,255,255,255,253,255,192,252,127,15,231,255,255,253,47,0,252,47,135,71,255,255,252,6,0,252,15,192,0,0,0,0,0,0,252,7,224,0,0,0,0,0,0,252,3,240,0,0,160,0,144,0,252,3,244,45,1,244,1,252,0,252,2,244,126,0,248,2,248,0,252,2,248,63,0,252,3,240,0,252,2,244,47,64,252,7,224,0,252,3,244,31,128,188,11,208,0,252,255,240,15,192,125,15,192,0,252,191,224,15,192,125,47,64,0,252,127,64,11,208,62,63,0,0,252,0,0,7,208,16,126,0,0,252,0,0,1,0,0,252,0,0,252,0,0,0,0,1,248,0,0,252,0,0,0,0,3,240,0,0,252,0,3,255,255,255,255,255,0,252,0,3,255,255,255,255,255,0,252,0,3,255,255,255,255,255,0,252,0,0,0,0,0,0,0,0,168,0,0,0,0,0,0,0,0, + // 0x96f6 零 + 246,150,34,34,50,37,2,253,2,170,170,170,170,170,170,160,0,3,255,255,255,255,255,255,240,0,3,255,255,255,255,255,255,240,0,0,0,0,7,240,0,0,0,0,21,85,85,87,245,85,85,85,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,0,0,7,240,0,0,63,64,127,0,0,7,240,0,0,63,64,127,47,255,199,241,255,254,63,64,127,47,255,199,241,255,254,63,64,42,0,0,7,240,0,0,42,0,0,0,0,7,240,0,0,0,0,0,127,255,192,1,255,255,64,0,0,127,255,239,249,255,255,64,0,0,0,0,191,255,64,0,0,0,0,0,11,255,127,244,0,0,0,0,0,191,248,15,255,64,0,0,0,27,255,208,1,255,249,0,0,2,255,255,85,85,127,255,228,0,191,255,159,255,255,253,191,255,208,255,248,15,255,255,252,7,255,192,190,64,0,0,0,0,0,31,64,16,0,0,0,0,0,0,0,0,1,255,255,255,255,255,255,0,0,1,255,255,255,255,255,255,0,0,0,85,85,255,85,85,191,0,0,0,0,0,190,0,0,63,0,0,0,0,0,190,0,0,127,0,0,0,0,0,190,0,106,255,0,0,0,0,0,190,0,63,255,0,0,0,0,0,190,0,63,248,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0, + // 0x9700 需 + 0,151,33,34,50,37,2,253,2,170,170,170,170,170,170,160,0,3,255,255,255,255,255,255,240,0,3,255,255,255,255,255,255,240,0,0,0,0,3,240,0,0,0,0,0,0,0,3,240,0,0,0,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,85,85,91,245,85,85,127,64,127,0,0,3,240,0,0,63,64,127,47,255,195,241,255,254,63,64,127,47,255,195,241,255,254,63,64,127,0,0,3,240,0,0,63,64,0,0,0,3,240,0,0,0,0,0,127,255,195,241,255,255,64,0,0,127,255,195,241,255,255,64,0,0,0,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,106,170,170,170,170,170,170,170,64,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,11,240,0,0,0,0,0,0,0,15,208,0,0,0,0,2,170,170,191,250,170,170,164,0,3,255,255,255,255,255,255,248,0,3,255,255,255,255,255,255,248,0,3,244,3,244,3,244,2,248,0,3,244,3,244,3,244,2,248,0,3,244,3,244,3,244,2,248,0,3,244,3,244,3,244,2,248,0,3,244,3,244,3,244,2,248,0,3,244,3,244,3,244,2,248,0,3,244,3,244,3,244,255,244,0,3,244,3,244,3,244,127,240,0,2,164,1,160,1,160,62,128,0, + // 0x9752 青 + 82,151,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,6,170,170,175,250,170,170,164,0,7,255,255,255,255,255,255,248,0,7,255,255,255,255,255,255,248,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,170,170,171,250,170,170,128,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,106,170,170,175,250,170,170,170,64,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,47,234,170,170,170,255,0,0,0,47,128,0,0,0,191,0,0,0,47,128,0,0,0,191,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,47,213,85,85,85,191,0,0,0,47,128,0,0,0,191,0,0,0,47,213,85,85,85,191,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,47,128,0,0,0,191,0,0,0,47,128,0,0,0,191,0,0,0,47,128,0,0,0,191,0,0,0,47,128,0,3,255,255,0,0,0,47,128,0,2,255,253,0,0,0,47,128,0,0,170,144,0,0, + // 0x975e 非 + 94,151,35,36,68,37,1,252,0,0,2,164,0,169,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,248,0,254,0,0,0,15,255,255,248,0,255,255,255,224,15,255,255,248,0,255,255,255,224,15,255,255,248,0,255,255,255,224,0,0,3,248,0,253,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,248,0,253,0,0,0,11,255,255,248,0,255,255,255,192,11,255,255,248,0,255,255,255,192,11,255,255,248,0,255,255,255,192,0,0,3,248,0,254,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,244,0,253,0,0,0,0,0,3,244,0,253,0,0,0,0,0,7,255,208,253,0,0,0,0,22,255,255,208,254,0,0,0,127,255,255,255,208,255,255,255,244,127,255,255,245,0,255,255,255,244,63,254,191,192,0,255,255,255,244,41,0,63,192,0,253,0,0,0,0,0,255,64,0,253,0,0,0,0,2,254,0,0,253,0,0,0,0,11,252,0,0,253,0,0,0,0,47,244,0,0,253,0,0,0,1,255,208,0,0,253,0,0,0,11,255,64,0,0,253,0,0,0,11,252,0,0,0,253,0,0,0,2,208,0,0,0,253,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9760 靠 + 96,151,34,36,68,37,2,252,0,5,0,3,240,0,0,0,0,0,31,192,3,240,0,0,0,0,0,63,192,7,244,0,0,0,0,0,127,255,255,255,255,255,240,0,1,255,255,255,255,255,255,240,0,7,252,0,3,240,0,0,0,0,23,249,85,91,245,85,85,85,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,0,0,0,3,240,0,0,0,0,0,0,0,5,84,0,0,0,0,0,191,255,255,255,255,255,208,0,0,191,255,255,255,255,255,208,0,0,190,0,0,0,0,15,208,0,0,190,0,0,0,0,15,208,0,0,190,0,0,0,0,15,208,0,0,191,255,255,255,255,255,208,0,0,191,255,255,255,255,255,208,0,0,0,7,240,3,244,0,0,0,0,0,11,240,3,248,0,0,0,63,255,255,240,3,255,255,255,64,63,255,255,240,3,255,255,255,64,0,0,7,240,3,244,0,0,0,0,0,11,240,3,248,0,0,0,31,255,255,240,3,255,255,254,0,31,255,255,240,3,255,255,254,0,0,0,11,224,3,244,0,0,0,0,0,11,224,3,249,85,85,64,191,255,255,208,3,255,255,255,208,255,255,255,192,3,255,255,255,208,165,64,127,128,3,244,0,0,0,0,6,255,0,3,244,0,0,0,1,191,248,0,3,244,0,0,0,3,255,208,0,3,244,0,0,0,0,249,0,0,3,244,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9762 面 + 98,151,33,32,32,37,2,253,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,15,240,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,47,192,0,0,0,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,208,31,192,1,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,255,255,252,1,252,0,15,192,15,255,255,252,1,252,0,15,192,15,234,171,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,234,171,252,1,252,0,15,192,15,255,255,252,1,252,0,15,192,15,255,255,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,192,1,252,1,252,0,15,208,31,192,1,252,1,252,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,192,0,0,0,0,1,252,0,15,192,0,0,0,0,1,252,0, + // 0x9875 页 + 117,152,33,34,50,37,2,252,63,255,255,255,255,255,255,255,128,63,255,255,255,255,255,255,255,128,63,255,255,255,255,255,255,255,128,0,0,0,31,240,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,127,64,0,0,0,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,254,0,0,0,0,31,208,0,0,254,0,0,0,0,31,208,0,0,254,0,3,244,0,31,208,0,0,254,0,3,244,0,31,208,0,0,254,0,3,244,0,31,208,0,0,254,0,3,244,0,31,208,0,0,254,0,3,244,0,31,208,0,0,254,0,3,244,0,31,208,0,0,254,0,3,244,0,31,208,0,0,254,0,3,244,0,31,208,0,0,254,0,7,240,0,31,208,0,0,254,0,11,240,0,31,208,0,0,254,0,15,240,0,31,208,0,0,254,0,63,210,224,31,208,0,0,0,0,255,203,254,0,0,0,0,0,7,255,7,255,224,0,0,0,0,127,252,0,127,254,0,0,0,11,255,224,0,7,255,224,0,6,255,255,64,0,0,127,253,0,191,255,244,0,0,0,11,255,64,63,253,0,0,0,0,0,190,0,30,64,0,0,0,0,0,28,0,0,0,0,0,0,0,0,0,0, + // 0x9879 项 + 121,152,35,33,41,37,1,253,0,0,0,63,255,255,255,255,244,0,0,0,63,255,255,255,255,244,21,85,85,127,255,255,255,255,244,127,255,255,128,0,63,192,0,0,127,255,255,128,0,127,64,0,0,21,127,149,0,0,255,0,0,0,0,63,128,11,255,255,255,255,0,0,63,128,11,255,255,255,255,0,0,63,128,11,255,255,255,255,0,0,63,128,11,224,0,0,127,0,0,63,128,11,224,0,0,127,0,0,63,128,11,224,31,192,127,0,0,63,128,11,224,31,192,127,0,0,63,128,11,224,31,192,127,0,0,63,128,11,224,31,192,127,0,0,63,128,11,224,31,192,127,0,0,63,128,11,224,31,192,127,0,0,63,128,11,224,31,192,127,0,0,63,128,11,224,31,192,127,0,0,63,155,203,224,47,192,127,0,0,63,255,203,224,47,192,127,0,6,255,255,203,224,47,192,127,0,191,255,249,11,224,63,128,127,0,191,254,64,11,224,127,64,42,0,127,208,0,0,0,255,4,0,0,56,0,0,0,2,253,47,64,0,0,0,0,0,11,248,127,224,0,0,0,0,0,127,240,31,252,0,0,0,0,7,255,192,3,255,64,0,0,0,191,254,0,0,191,224,0,0,3,255,244,0,0,31,244,0,0,1,255,64,0,0,3,224,0,0,0,96,0,0,0,0,128, + // 0x9884 预 + 132,152,35,34,50,37,1,252,63,255,255,248,255,255,255,255,244,63,255,255,252,255,255,255,255,244,63,255,255,244,255,255,255,255,244,0,0,15,224,0,2,252,0,0,0,0,47,192,0,3,248,0,0,1,128,191,0,0,3,244,0,0,7,246,253,0,47,255,255,255,192,7,255,244,0,47,255,255,255,192,0,255,224,0,47,255,255,255,192,0,47,248,0,47,128,0,31,192,0,7,255,0,47,64,0,31,192,0,0,255,0,47,65,164,31,192,191,255,255,255,47,66,248,31,192,191,255,255,255,47,66,248,31,192,191,255,255,255,47,66,248,31,192,0,15,224,189,47,66,248,31,192,0,15,208,252,47,66,248,31,192,0,15,208,252,47,66,248,31,192,0,15,209,244,47,66,248,31,192,0,15,211,240,47,66,248,31,192,0,15,209,160,47,66,248,31,192,0,15,208,0,47,67,244,31,192,0,15,208,0,47,67,244,31,192,0,15,208,0,47,71,240,31,192,0,15,208,0,0,15,224,0,0,0,15,208,0,0,47,210,128,0,0,15,208,0,0,127,203,240,0,0,15,208,0,1,255,11,252,0,0,15,208,0,11,253,2,255,64,0,31,208,0,191,240,0,127,208,15,255,208,11,255,128,0,31,244,15,255,192,3,253,0,0,7,240,11,254,0,0,144,0,0,1,128,0,0,0,0,0,0,0,0,0, + // 0x9891 频 + 145,152,35,36,68,37,1,252,0,0,126,0,0,0,0,0,0,0,0,126,0,0,0,0,0,0,0,0,126,0,15,255,255,255,240,3,224,126,0,15,255,255,255,240,3,240,127,255,143,255,255,255,240,3,240,127,255,128,0,127,0,0,3,240,127,255,128,0,190,0,0,3,240,126,0,0,0,252,0,0,3,240,126,0,0,1,252,0,0,3,240,126,0,3,255,255,255,192,3,240,126,0,3,255,255,255,192,3,240,126,0,3,250,170,175,192,191,255,255,255,227,240,0,15,192,191,255,255,255,227,240,20,15,192,191,255,255,255,227,240,125,15,192,0,0,252,0,3,240,125,15,192,0,0,252,0,3,240,125,15,192,1,224,252,6,3,240,125,15,192,3,240,252,15,211,240,125,15,192,3,240,252,15,195,240,189,15,192,11,208,252,47,195,240,189,15,192,15,192,252,63,67,240,188,15,192,47,128,252,127,3,240,188,15,192,63,0,252,254,3,240,252,15,192,62,0,254,252,3,240,252,15,192,4,0,255,248,3,241,248,15,192,0,0,15,240,2,162,244,6,128,0,0,63,208,0,3,243,64,0,0,0,255,128,0,11,255,224,0,0,7,254,0,0,31,199,252,0,0,47,248,0,0,191,129,255,64,6,255,208,0,7,254,0,63,208,63,254,0,0,191,248,0,15,244,31,244,0,0,191,208,0,3,240,14,0,0,0,57,0,0,0,128,0,0,0,0,0,0,0,0,0, + // 0x989d 额 + 157,152,35,36,68,37,1,252,0,0,96,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,2,252,0,15,255,255,255,240,0,0,253,0,15,255,255,255,240,63,255,255,255,223,255,255,255,240,63,255,255,255,208,0,189,0,0,63,255,255,255,208,0,252,0,0,63,1,0,11,208,1,248,0,0,63,15,208,11,208,2,244,0,0,47,31,192,11,215,255,255,255,192,0,63,255,253,7,255,255,255,192,0,255,255,255,7,250,170,175,192,3,254,170,254,7,208,0,15,192,15,240,2,252,7,208,104,15,192,127,196,11,244,7,208,189,15,192,63,47,175,224,7,208,188,15,192,8,127,255,192,7,208,188,15,192,0,11,255,128,7,208,252,15,192,0,47,255,248,7,208,252,15,192,2,255,239,255,71,208,252,15,192,47,255,65,255,231,208,252,15,192,63,248,0,47,199,208,252,15,192,47,128,0,6,7,208,252,15,192,26,255,255,253,7,209,248,15,192,1,255,255,253,7,210,248,15,192,1,254,170,253,7,211,244,15,192,1,248,0,189,6,131,240,5,64,1,248,0,189,0,11,226,192,0,1,248,0,189,0,15,215,244,0,1,248,0,189,0,63,199,253,0,1,248,0,189,0,255,0,255,128,1,255,255,253,7,253,0,63,224,1,255,255,254,127,244,0,15,248,1,254,170,254,255,192,0,2,244,1,168,0,189,61,0,0,0,160,0,0,0,0,0,0,0,0,0, + // 0x98ce 风 + 206,152,35,35,59,37,1,252,0,21,85,85,85,85,85,80,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,63,64,0,0,0,11,240,0,0,63,64,0,0,0,11,240,0,0,63,64,0,0,16,11,240,0,0,63,64,0,0,63,11,240,0,0,63,66,128,0,190,11,240,0,0,63,95,224,0,253,11,240,0,0,63,75,244,1,252,11,240,0,0,63,67,252,3,248,11,240,0,0,63,64,255,3,244,11,240,0,0,63,64,127,139,240,7,240,0,0,127,64,47,239,208,7,240,0,0,127,0,15,255,192,7,240,0,0,127,0,3,255,64,7,240,0,0,127,0,1,255,0,7,240,0,0,191,0,1,255,64,7,240,0,0,191,0,3,255,192,7,240,0,0,191,0,15,255,224,7,240,0,0,254,0,47,235,244,7,240,0,0,254,0,127,195,252,3,240,0,1,253,0,255,1,254,3,240,0,2,252,3,253,0,255,67,240,0,3,252,15,248,0,63,195,244,96,3,248,127,240,0,47,227,244,116,7,244,191,192,0,15,210,248,124,15,240,47,0,0,10,1,252,188,15,224,8,0,0,0,0,253,184,63,208,0,0,0,0,0,255,244,127,192,0,0,0,0,0,127,240,47,64,0,0,0,0,0,47,224,6,0,0,0,0,0,0,6,64,0,0,0,0,0,0,0,0,0, + // 0x9971 饱 + 113,153,35,35,59,37,1,253,0,100,0,0,10,64,0,0,0,0,253,0,0,15,192,0,0,0,0,253,0,0,31,192,0,0,0,0,252,0,0,63,64,0,0,0,1,252,0,0,127,255,255,255,128,2,248,0,0,191,255,255,255,128,3,255,255,224,255,255,255,255,128,3,255,255,227,248,0,0,47,128,7,255,255,215,240,0,0,47,128,11,224,15,207,224,0,0,47,64,15,208,31,191,192,0,0,47,64,31,192,63,191,255,255,244,47,64,63,128,127,63,255,255,244,47,64,127,21,109,45,255,255,244,47,64,190,63,64,5,252,2,244,63,64,44,63,64,1,252,2,244,63,64,4,63,64,1,252,2,244,63,64,0,63,64,1,252,2,244,63,64,0,63,64,1,252,2,244,63,64,0,63,64,1,252,2,244,63,64,0,63,64,1,255,255,244,63,64,0,63,64,1,255,255,244,63,0,0,63,64,1,255,255,244,127,0,0,63,64,1,252,0,191,255,0,0,63,64,1,252,0,63,253,0,0,63,66,65,252,0,63,228,0,0,63,79,129,252,0,0,0,0,0,63,191,193,252,0,0,2,144,0,63,255,65,252,0,0,2,244,0,63,252,1,252,0,0,3,244,0,63,240,0,253,0,0,7,240,0,255,128,0,255,255,255,255,224,0,254,0,0,127,255,255,255,192,0,116,0,0,27,255,255,254,0,0,16,0,0,0,0,0,0,0, + // 0x9a6c 马 + 108,154,32,34,16,37,2,252,3,255,255,255,255,255,252,0,3,255,255,255,255,255,252,0,3,255,255,255,255,255,252,0,1,85,85,85,85,87,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,3,248,0,0,15,224,0,0,3,248,0,0,15,224,0,0,3,244,0,0,15,208,0,0,3,244,0,0,15,208,0,0,3,244,0,0,15,208,0,0,7,240,0,0,15,192,0,0,7,240,0,0,31,192,0,0,7,240,0,0,31,192,0,0,11,240,0,0,47,192,0,0,15,240,0,0,47,255,255,255,255,255,255,0,63,255,255,255,255,255,255,0,63,255,255,255,255,255,255,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,253,255,255,255,255,255,255,64,253,255,255,255,255,255,255,65,252,255,255,255,255,255,255,65,252,21,85,85,85,85,85,2,252,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,11,244,0,0,0,0,1,0,31,240,0,0,0,0,3,255,255,224,0,0,0,0,1,255,255,192,0,0,0,0,1,255,254,0,0,0,0,0,0,0,0,0, + // 0x9a71 驱 + 113,154,35,33,41,37,1,253,47,255,255,192,255,255,255,255,240,47,255,255,192,255,255,255,255,240,47,255,255,128,255,255,255,255,240,0,0,31,128,252,0,0,0,0,0,0,31,128,252,0,0,0,0,7,144,31,64,252,0,0,41,0,7,224,47,64,252,24,0,63,64,7,208,47,64,252,189,0,127,0,11,208,47,64,252,191,0,190,0,11,208,47,0,252,63,128,253,0,11,208,63,0,252,31,209,252,0,11,192,63,0,252,11,243,248,0,15,192,63,0,252,3,255,244,0,15,192,63,0,252,1,255,240,0,15,192,62,0,252,0,191,208,0,15,192,127,160,252,0,63,192,0,15,255,255,240,252,0,63,208,0,31,255,255,240,252,0,191,240,0,26,170,171,240,252,0,255,248,0,0,0,3,240,252,3,254,252,0,0,0,3,240,252,7,244,255,0,0,0,3,240,252,15,224,127,64,0,27,227,240,252,63,192,63,192,27,255,227,224,252,191,64,15,208,255,255,151,224,253,254,0,11,192,191,144,7,224,252,124,0,2,0,16,0,11,208,252,0,0,0,0,0,0,15,208,252,0,0,0,0,0,0,15,192,255,255,255,255,244,0,0,47,192,255,255,255,255,244,0,127,255,128,255,255,255,255,244,0,63,255,0,0,0,0,0,0,0,42,164,0,0,0,0,0,0, + // 0x9ad8 高 + 216,154,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,85,85,85,85,80,0,0,0,7,255,255,255,255,244,0,0,0,7,255,255,255,255,244,0,0,0,7,240,0,0,3,244,0,0,0,7,240,0,0,3,244,0,0,0,7,240,0,0,3,244,0,0,0,7,255,255,255,255,244,0,0,0,7,255,255,255,255,244,0,0,0,1,85,85,85,85,80,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,208,0,0,0,0,0,252,0,15,208,0,0,0,0,0,252,0,15,208,5,85,85,84,0,252,0,15,208,31,255,255,253,0,252,0,15,208,31,255,255,253,0,252,0,15,208,31,64,0,189,0,252,0,15,208,31,64,0,189,0,252,0,15,208,31,64,0,189,0,252,0,15,208,31,255,255,253,0,252,0,15,208,31,255,255,253,0,252,0,15,208,31,149,85,90,2,252,0,15,208,31,64,0,7,255,252,0,15,208,5,0,0,3,255,248,0,15,208,0,0,0,2,255,144,0, + // 0x9ec4 黄 + 196,158,33,36,68,37,2,252,0,0,63,128,0,127,0,0,0,0,0,63,128,0,127,0,0,0,0,0,63,128,0,127,0,0,0,3,255,255,255,255,255,255,248,0,3,255,255,255,255,255,255,248,0,3,255,255,255,255,255,255,248,0,0,0,63,128,0,127,0,0,0,0,0,63,128,0,127,0,0,0,0,0,63,128,0,127,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,254,85,91,249,85,111,208,0,0,253,0,7,244,0,15,208,0,0,253,0,7,244,0,15,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,254,85,91,249,85,95,208,0,0,253,0,7,244,0,15,208,0,0,253,0,7,244,0,15,208,0,0,254,85,91,249,85,111,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,0,9,0,0,36,0,0,0,0,0,127,128,0,191,144,0,0,0,11,255,208,0,255,254,0,0,1,255,254,0,0,11,255,244,0,127,255,224,0,0,0,127,255,64,63,253,0,0,0,0,2,254,0,15,64,0,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0, + // 0x9ede 點 + 222,158,35,35,59,37,1,253,0,0,0,0,0,1,252,0,0,5,85,85,85,64,1,252,0,0,15,255,255,255,128,1,252,0,0,15,255,255,255,128,1,252,0,0,15,64,244,15,128,1,252,0,0,15,148,244,143,128,1,252,0,0,15,184,244,255,128,1,252,0,0,15,124,245,223,128,1,252,0,0,15,108,246,207,128,1,255,255,248,15,93,247,143,128,1,255,255,248,15,93,251,79,128,1,255,255,248,15,64,245,15,128,1,252,0,0,15,149,249,95,128,1,252,0,0,15,255,255,255,128,1,252,0,0,15,255,255,255,128,1,252,0,0,0,1,248,0,0,1,252,0,0,0,1,248,0,0,1,252,0,0,10,171,254,170,128,1,252,0,0,31,255,255,255,199,255,255,255,192,31,255,255,255,199,255,255,255,192,0,1,248,0,7,255,255,255,192,0,1,248,0,7,224,0,15,192,0,1,254,191,215,224,0,15,192,63,255,255,255,215,224,0,15,192,63,255,255,255,215,224,0,15,192,63,165,80,0,7,224,0,15,192,0,0,5,62,7,224,0,15,192,6,79,31,31,7,224,0,15,192,11,207,79,15,199,224,0,15,192,15,143,139,135,215,224,0,15,192,15,75,135,195,231,255,255,255,192,31,75,195,193,235,255,255,255,192,63,7,195,128,7,255,255,255,192,189,1,64,0,7,224,0,31,192,24,0,0,0,7,224,0,10,128, + // 0x9f50 齐 + 80,159,34,36,68,37,2,252,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,3,248,0,0,15,244,0,0,0,1,254,0,0,47,224,0,0,0,0,127,128,0,191,192,0,0,0,0,47,240,2,255,0,0,0,0,0,11,253,15,252,0,0,0,0,0,1,255,255,240,0,0,0,0,0,0,63,255,128,0,0,0,0,0,0,191,255,224,0,0,0,0,0,47,255,255,255,144,0,0,0,107,255,254,27,255,255,164,0,191,255,255,208,0,191,255,255,208,255,255,244,0,0,2,255,255,192,63,251,232,0,0,6,182,191,0,20,2,252,0,0,7,240,0,0,0,2,252,0,0,7,240,0,0,0,2,252,0,0,7,240,0,0,0,2,252,0,0,7,240,0,0,0,2,252,0,0,7,240,0,0,0,3,252,0,0,7,240,0,0,0,3,248,0,0,7,240,0,0,0,7,244,0,0,7,240,0,0,0,15,240,0,0,7,240,0,0,0,47,240,0,0,7,240,0,0,0,127,208,0,0,7,240,0,0,2,255,128,0,0,7,240,0,0,31,255,0,0,0,7,240,0,0,11,248,0,0,0,7,240,0,0,2,208,0,0,0,7,240,0,0,0,0,0,0,0,0,0,0,0, + // 0xff1a : + 26,255,7,24,48,37,15,2,31,208,63,240,191,248,127,244,63,240,31,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,208,63,240,191,248,191,244,63,240,31,208, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Symbols_27.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Symbols_27.cpp new file mode 100644 index 000000000000..e07f03b5aa7a --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Symbols_27.cpp @@ -0,0 +1,38 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium_Symbols 37pt, capital 'A' height: 27px, width: 100% +extern const uint8_t NotoSans_Medium_Symbols_27[118] = { + 130,27,8,0,10,0,35,247, // unifont_t + // 0x08 - LCD_STR_THERMOMETER a.k.a 0x1f321 🌡 + 21,45,14,25,2,248,0,11,255,253,0,0,0,31,255,255,0,0,0,47,170,191,64,0,0,46,0,31,64,0,0,46,0,31,64,0,0,47,208,31,64,0,0,46,0,31,64,0,0,46,0,31,64,0,0,46,0,31,64,0,0,46,0,31,64,0,0,47,208,31,64,0,0,46,0,31,64,0,0,46,63,31,64,0,0,47,191,31,64,0,0,47,191,31,64,0,0,46,63,31,64,0,0,46,63,31,64,0,0,46,127,31,64,0,0,47,255,31,64,0,0,46,63,31,64,0,0,46,63,31,64,0,0,46,63,31,64,0,0,47,255,31,64,0,0,47,127,31,64,0,0,46,63,31,64,0,0,46,63,31,64,0,0,63,191,31,128,0,1,255,255,31,240,0,7,244,63,7,248,0,31,192,127,64,253,0,63,67,255,244,63,0,126,15,255,254,31,64,189,47,255,255,15,128,252,63,255,255,143,192,252,63,255,255,139,192,252,63,255,255,139,192,252,47,255,255,79,192,189,15,255,255,15,128,127,7,255,252,47,64,63,128,191,224,127,0,15,224,0,1,252,0,7,253,0,11,244,0,1,255,234,255,208,0,0,47,255,255,0,0,0,2,255,224,0,0, + // 0x09 - LCD_STR_DEGREE a.k.a 0x00b0 ° + 12,12,36,16,2,15,1,170,64,15,255,224,63,255,252,190,0,253,252,0,63,248,0,63,248,0,63,252,0,63,190,0,189,63,235,252,31,255,240,1,254,64, + // 0x0a - replacement for 0x2026 used in Greek language files … + 26,6,42,30,2,255,26,64,1,164,0,26,64,63,208,7,252,0,127,192,127,224,7,253,0,191,208,127,208,7,253,0,191,208,63,192,3,252,0,63,192,5,0,0,80,0,5,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Traditional_Chinese_27.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Traditional_Chinese_27.cpp new file mode 100644 index 000000000000..e43aee93f3c5 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Traditional_Chinese_27.cpp @@ -0,0 +1,646 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Traditional Chinese 37pt, capital 'A' height: 27px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 +extern const uint8_t NotoSans_Medium_Traditional_Chinese_27[20513] = { + 162,27,191,34,26,255,35,247, // unifont_t + // 0x22bf ⊿ + 191,34,29,30,240,37,3,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,2,192,0,0,0,0,0,0,11,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,191,192,0,0,0,0,0,2,255,192,0,0,0,0,0,11,255,192,0,0,0,0,0,47,239,192,0,0,0,0,0,191,143,192,0,0,0,0,2,254,15,192,0,0,0,0,11,248,15,192,0,0,0,0,47,224,15,192,0,0,0,0,191,128,15,192,0,0,0,2,254,0,15,192,0,0,0,11,248,0,15,192,0,0,0,31,224,0,15,192,0,0,0,127,128,0,15,192,0,0,1,255,0,0,15,192,0,0,7,252,0,0,15,192,0,0,31,240,0,0,15,192,0,0,127,192,0,0,15,192,0,1,255,0,0,0,15,192,0,7,252,0,0,0,15,192,0,31,240,0,0,0,15,192,0,127,192,0,0,0,15,192,1,255,0,0,0,0,15,192,7,255,255,255,255,255,255,192,31,255,255,255,255,255,255,192,127,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0, + // 0x4e00 一 + 0,78,35,4,36,37,1,13,63,255,255,255,255,255,255,255,244,127,255,255,255,255,255,255,255,244,127,255,255,255,255,255,255,255,244,127,255,255,255,255,255,255,255,244, + // 0x4e09 三 + 9,78,33,30,14,37,2,255,1,85,85,85,85,85,85,80,0,7,255,255,255,255,255,255,244,0,7,255,255,255,255,255,255,244,0,7,255,255,255,255,255,255,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,254,0,0,0,63,255,255,255,255,254,0,0,0,63,255,255,255,255,254,0,0,0,26,170,170,170,170,169,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,21,85,85,85,85,85,85,85,0, + // 0x4e0a 上 + 10,78,33,33,41,37,2,255,0,0,0,5,64,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,255,255,255,248,0,0,0,0,47,255,255,255,248,0,0,0,0,47,255,255,255,248,0,0,0,0,47,229,85,85,80,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,85,85,85,127,229,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x4e0b 下 + 11,78,33,32,32,37,2,253,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,106,170,170,175,250,170,170,170,64,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,232,0,0,0,0,0,0,0,15,255,128,0,0,0,0,0,0,15,255,248,0,0,0,0,0,0,15,255,255,64,0,0,0,0,0,15,231,255,240,0,0,0,0,0,15,224,191,254,0,0,0,0,0,15,224,15,255,192,0,0,0,0,15,224,1,255,248,0,0,0,0,15,224,0,63,248,0,0,0,0,15,224,0,11,240,0,0,0,0,15,224,0,1,192,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,208,0,0,0,0, + // 0x4e0d 不 + 13,78,33,33,41,37,2,253,21,85,85,85,85,85,85,85,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,0,0,0,0,255,64,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,63,244,0,0,0,0,0,0,0,191,244,0,0,0,0,0,0,2,255,244,176,0,0,0,0,0,7,255,246,253,0,0,0,0,0,31,255,251,255,128,0,0,0,0,127,247,244,191,240,0,0,0,2,255,199,244,31,253,0,0,0,11,255,7,244,7,255,128,0,0,63,252,7,244,0,255,224,0,1,255,240,7,244,0,47,252,0,15,255,128,7,244,0,11,255,0,191,253,0,7,244,0,2,255,192,255,240,0,7,244,0,0,127,192,63,128,0,7,244,0,0,47,0,28,0,0,7,244,0,0,4,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0, + // 0x4e26 並 + 38,78,33,34,50,37,2,254,0,1,128,0,0,0,228,0,0,0,15,240,0,0,2,254,0,0,0,7,244,0,0,3,252,0,0,0,3,252,0,0,11,244,0,0,0,0,254,0,0,15,240,0,0,0,0,255,0,0,47,192,0,0,0,0,126,0,0,63,128,0,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,21,85,91,249,91,245,85,85,0,0,0,3,240,7,240,0,0,0,0,0,3,240,7,240,0,0,0,0,0,3,240,7,240,1,0,0,2,240,3,240,7,240,3,248,0,3,244,3,240,7,240,7,244,0,2,248,3,240,7,240,11,240,0,1,252,3,240,7,240,15,240,0,0,253,3,240,7,240,15,208,0,0,190,3,240,7,240,31,192,0,0,127,3,240,7,240,63,192,0,0,63,67,240,7,240,63,64,0,0,63,131,240,7,240,127,0,0,0,47,195,240,7,240,255,0,0,0,31,195,240,7,240,253,0,0,0,31,195,240,7,241,252,0,0,0,9,3,240,7,240,20,0,0,0,0,3,240,7,240,0,0,0,0,0,3,240,7,240,0,0,0,0,0,3,240,7,240,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,106,170,170,170,170,170,170,170,64, + // 0x4e2d 中 + 45,78,31,35,24,37,3,253,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,21,85,85,111,213,85,85,80,127,255,255,255,255,255,255,244,127,255,255,255,255,255,255,244,127,255,255,255,255,255,255,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,127,85,85,111,213,85,87,244,127,255,255,255,255,255,255,244,127,255,255,255,255,255,255,244,127,255,255,255,255,255,255,244,127,0,0,31,192,0,3,244,127,0,0,31,192,0,3,244,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,31,192,0,0,0, + // 0x4e3b 主 + 59,78,33,34,50,37,2,254,0,0,0,24,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,255,208,0,0,0,0,0,0,0,63,244,0,0,0,0,0,0,0,15,253,0,0,0,0,0,0,0,2,255,64,0,0,0,0,0,0,0,191,192,0,0,0,5,85,85,85,127,85,85,84,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,85,85,91,249,85,85,64,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,85,85,85,85,85,85,85,85,64, + // 0x4e4b 之 + 75,78,35,35,59,37,1,253,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,1,85,85,86,253,85,85,84,0,7,255,255,255,255,255,255,254,0,7,255,255,255,255,255,255,255,64,7,255,255,255,255,255,255,254,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,31,244,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,255,128,0,0,0,2,0,0,3,254,0,0,0,0,11,240,0,31,248,0,0,0,0,15,240,0,127,224,0,0,0,0,31,224,1,255,128,0,0,0,0,63,224,11,254,0,0,0,0,0,127,240,63,248,0,0,0,0,0,255,253,255,208,0,0,0,0,1,255,255,255,0,0,0,0,0,3,252,191,252,0,0,0,0,0,7,248,63,249,0,0,0,0,0,15,240,11,255,233,64,0,0,0,63,224,1,255,255,255,255,255,244,191,192,0,47,255,255,255,255,240,47,64,0,1,111,255,255,255,224,6,0,0,0,0,5,85,85,64, + // 0x4ea4 交 + 164,78,33,36,68,37,2,252,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,85,85,85,91,249,85,85,85,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,61,0,0,15,128,0,0,0,0,255,128,0,63,240,0,0,0,3,255,0,0,31,253,0,0,0,15,252,0,0,7,255,128,0,0,63,240,0,0,0,255,224,0,1,255,192,0,0,0,47,248,0,11,255,1,0,0,20,11,255,0,127,252,63,0,0,63,130,255,128,127,224,63,128,0,191,64,191,64,15,64,47,192,0,255,0,44,0,4,0,15,224,2,253,0,0,0,0,0,11,244,7,252,0,0,0,0,0,3,252,15,244,0,0,0,0,0,1,255,63,224,0,0,0,0,0,0,191,255,192,0,0,0,0,0,0,63,255,0,0,0,0,0,0,0,31,253,0,0,0,0,0,0,0,127,255,64,0,0,0,0,0,2,255,255,240,0,0,0,0,0,47,255,127,254,0,0,0,0,6,255,248,11,255,228,0,0,1,191,255,208,1,255,255,144,0,191,255,253,0,0,47,255,255,128,255,255,208,0,0,2,255,255,192,63,248,0,0,0,0,27,255,0,46,0,0,0,0,0,0,26,0,0,0,0,0,0,0,0,0,0, + // 0x4eae 亮 + 174,78,33,36,68,37,2,252,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,47,213,85,85,85,255,0,0,0,47,128,0,0,0,191,0,0,0,47,128,0,0,0,191,0,0,0,47,213,85,85,85,255,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,170,170,170,170,170,170,191,64,126,0,0,0,0,0,0,63,64,126,0,31,192,7,244,0,63,64,126,0,31,192,7,244,0,63,64,126,0,47,192,7,244,0,63,64,0,0,63,192,7,244,0,0,0,0,0,63,128,7,244,0,0,0,0,0,191,64,7,244,0,0,0,0,0,255,0,7,244,0,13,0,0,3,253,0,7,244,0,15,192,0,47,252,0,7,244,0,31,192,6,255,240,0,3,248,0,47,192,255,255,128,0,3,255,255,255,64,191,248,0,0,2,255,255,255,0,62,64,0,0,0,191,255,248,0,0,0,0,0,0,0,0,0,0, + // 0x4ee4 令 + 228,78,35,35,59,37,1,253,0,0,0,3,253,0,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,31,255,192,0,0,0,0,0,0,63,255,240,0,0,0,0,0,0,255,143,248,0,0,0,0,0,3,254,3,255,0,0,0,0,0,15,252,0,255,192,0,0,0,0,63,240,0,63,240,0,0,0,1,255,192,0,15,253,0,0,0,11,255,0,0,3,255,128,0,0,47,248,0,0,0,191,240,0,1,255,255,255,255,255,239,253,0,11,255,79,255,255,255,199,255,208,127,253,15,255,255,255,193,255,248,63,240,0,0,0,0,0,63,240,31,128,0,0,0,0,0,11,208,9,0,0,0,0,0,0,1,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,7,240,0,0,0,0,63,128,0,11,240,0,0,0,0,63,128,47,255,240,0,0,0,0,63,128,15,255,224,0,0,0,0,63,128,15,255,128,0,0,0,0,63,128,1,64,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0, + // 0x4ef6 件 + 246,78,35,35,59,37,1,253,0,0,80,0,0,21,0,0,0,0,0,254,0,0,63,64,0,0,0,1,253,7,144,63,64,0,0,0,2,252,11,240,63,64,0,0,0,3,248,15,224,63,64,0,0,0,11,240,15,208,63,64,0,0,0,15,224,15,192,63,64,0,0,0,47,192,47,213,127,149,85,0,0,63,128,63,255,255,255,255,128,0,255,0,63,255,255,255,255,128,2,255,0,191,255,255,255,255,128,3,255,0,254,0,63,64,0,0,15,255,1,252,0,63,64,0,0,47,255,3,252,0,63,64,0,0,191,255,7,244,0,63,64,0,0,127,127,1,240,0,63,64,0,0,62,63,0,0,0,63,64,0,0,28,63,0,0,0,63,64,0,0,0,63,1,85,85,127,149,85,80,0,63,3,255,255,255,255,255,244,0,63,3,255,255,255,255,255,244,0,63,3,255,255,255,255,255,244,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0, + // 0x4efd 份 + 253,78,35,35,59,37,1,253,0,0,160,0,0,0,0,0,0,0,0,253,0,31,255,255,0,0,0,2,252,0,31,255,255,0,0,0,3,248,0,31,255,255,64,0,0,7,244,2,64,0,47,192,0,0,15,240,7,240,0,31,192,0,0,31,208,11,240,0,15,224,0,0,63,192,15,208,0,15,240,0,0,191,64,47,192,0,7,244,0,1,255,0,63,128,0,3,252,0,3,255,0,191,0,0,1,254,0,11,255,1,253,0,0,0,255,64,31,255,3,252,0,0,0,127,192,127,255,11,240,0,0,0,47,244,255,255,31,224,0,0,0,15,248,255,127,63,255,255,255,255,251,240,124,63,15,47,255,255,255,244,192,32,63,0,47,255,255,255,244,0,0,63,0,0,31,208,3,244,0,0,63,0,0,31,192,3,244,0,0,63,0,0,31,192,3,244,0,0,63,0,0,47,128,3,240,0,0,63,0,0,63,128,7,240,0,0,63,0,0,63,64,7,240,0,0,63,0,0,127,0,7,240,0,0,63,0,0,254,0,7,240,0,0,63,0,1,252,0,7,240,0,0,63,0,3,252,0,11,240,0,0,63,0,11,244,0,11,240,0,0,63,0,31,240,0,15,224,0,0,63,0,191,192,0,31,224,0,0,63,3,255,0,47,255,208,0,0,63,3,252,0,15,255,192,0,0,63,1,240,0,15,255,0,0,0,42,0,64,0,1,64,0,0, + // 0x4f11 休 + 17,79,35,35,59,37,1,253,0,0,20,0,0,21,0,0,0,0,0,63,128,0,127,0,0,0,0,0,127,64,0,127,0,0,0,0,0,255,0,0,127,0,0,0,0,1,254,0,0,127,0,0,0,0,3,252,0,0,127,0,0,0,0,7,248,0,0,127,0,0,0,0,15,240,0,0,127,0,0,0,0,47,224,0,0,127,0,0,0,0,127,193,85,85,191,85,85,80,0,255,199,255,255,255,255,255,240,2,255,199,255,255,255,255,255,240,11,255,199,255,255,255,255,255,240,47,255,192,0,7,255,240,0,0,127,255,192,0,11,255,244,0,0,255,223,192,0,15,255,252,0,0,127,31,192,0,47,255,253,0,0,60,31,192,0,63,255,191,0,0,16,31,192,0,191,191,63,64,0,0,31,192,0,253,127,47,192,0,0,31,192,3,252,127,15,208,0,0,31,192,7,244,127,11,240,0,0,31,192,15,240,127,3,252,0,0,31,192,63,208,127,2,254,0,0,31,192,191,128,127,0,255,64,0,31,194,255,0,127,0,127,208,0,31,203,252,0,127,0,47,240,0,31,239,244,0,127,0,15,252,0,31,207,224,0,127,0,3,240,0,31,195,128,0,127,0,0,192,0,31,192,0,0,127,0,0,0,0,31,192,0,0,127,0,0,0,0,31,192,0,0,127,0,0,0,0,31,192,0,0,127,0,0,0,0,31,192,0,0,127,0,0,0, + // 0x4f4d 位 + 77,79,35,35,59,37,1,253,0,0,36,0,0,42,0,0,0,0,0,191,0,0,127,0,0,0,0,0,254,0,0,127,0,0,0,0,2,252,0,0,127,0,0,0,0,3,248,0,0,127,0,0,0,0,11,240,0,0,127,0,0,0,0,15,224,0,0,127,0,0,0,0,63,194,255,255,255,255,255,240,0,127,130,255,255,255,255,255,240,0,255,130,255,255,255,255,255,240,3,255,128,85,85,85,85,85,64,11,255,128,0,0,0,0,0,0,31,255,128,0,64,0,2,144,0,127,255,128,11,224,0,3,252,0,255,175,128,7,240,0,3,248,0,191,47,128,3,240,0,7,244,0,60,47,128,3,244,0,11,240,0,32,47,128,3,248,0,15,240,0,0,47,128,2,252,0,15,224,0,0,47,128,1,252,0,15,208,0,0,47,128,0,252,0,31,192,0,0,47,128,0,253,0,47,192,0,0,47,128,0,253,0,63,128,0,0,47,128,0,254,0,63,64,0,0,47,128,0,191,0,127,0,0,0,47,128,0,127,0,191,0,0,0,47,128,0,127,0,254,0,0,0,47,128,0,127,0,252,0,0,0,47,128,0,16,1,252,0,0,0,47,128,0,0,3,248,0,0,0,47,135,255,255,255,255,255,248,0,47,135,255,255,255,255,255,248,0,47,135,255,255,255,255,255,248,0,47,129,85,85,85,85,85,80,0,47,64,0,0,0,0,0,0, + // 0x4f4e 低 + 78,79,35,35,59,37,1,253,0,0,80,0,0,0,0,0,0,0,0,253,0,0,0,0,36,0,0,1,252,0,0,0,27,253,0,0,3,248,0,1,111,255,255,64,0,7,244,122,255,255,255,249,0,0,15,240,127,255,255,249,0,0,0,31,208,127,254,155,240,0,0,0,63,192,127,0,7,240,0,0,0,191,64,127,0,7,240,0,0,0,255,0,127,0,7,240,0,0,3,255,0,127,0,7,240,0,0,11,255,0,127,0,7,240,0,0,31,255,0,127,0,3,240,0,0,63,255,0,127,255,255,255,255,244,255,255,0,127,255,255,255,255,244,255,127,0,127,255,255,255,255,244,124,63,0,127,0,3,248,0,0,52,63,0,127,0,2,252,0,0,0,63,0,127,0,2,252,0,0,0,63,0,127,0,1,252,0,0,0,63,0,127,0,0,252,0,0,0,63,0,127,0,0,253,0,0,0,63,0,127,0,0,254,0,0,0,63,0,127,0,4,191,0,0,0,63,0,127,91,254,127,0,0,0,63,5,255,255,254,63,64,64,0,63,15,255,255,254,63,192,184,0,63,11,255,250,64,31,192,188,0,63,7,229,0,0,15,224,252,0,63,0,0,0,0,11,244,252,0,63,0,0,0,0,3,255,248,0,63,3,255,255,255,245,255,244,0,63,3,255,255,255,244,127,224,0,63,3,255,255,255,244,6,64,0,63,0,0,0,0,0,0,0, + // 0x4f5c 作 + 92,79,35,35,59,37,1,253,0,0,36,0,5,0,0,0,0,0,0,127,0,15,208,0,0,0,0,0,255,0,31,192,0,0,0,0,1,253,0,63,128,0,0,0,0,3,252,0,127,64,0,0,0,0,7,248,0,255,0,0,0,0,0,15,240,0,255,255,255,255,248,0,31,208,2,255,255,255,255,248,0,63,192,3,255,255,255,255,248,0,191,192,15,245,254,85,85,80,0,255,192,31,208,254,0,0,0,3,255,192,63,192,254,0,0,0,11,255,192,191,64,254,0,0,0,31,255,193,255,0,254,0,0,0,63,255,195,252,0,254,0,0,0,127,255,199,248,0,255,255,255,224,63,47,192,240,0,255,255,255,224,29,47,192,0,0,255,255,255,224,4,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,255,255,255,240,0,47,192,0,0,255,255,255,240,0,47,192,0,0,255,255,255,240,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,192,0,0,254,0,0,0,0,47,128,0,0,254,0,0,0, + // 0x4f9b 供 + 155,79,35,35,59,37,1,253,0,0,96,0,168,0,10,128,0,0,0,254,0,253,0,31,192,0,0,1,253,0,253,0,31,192,0,0,2,252,0,253,0,31,192,0,0,3,248,0,253,0,31,192,0,0,11,240,0,253,0,31,192,0,0,15,224,0,253,0,31,192,0,0,47,192,0,253,0,31,192,0,0,127,129,255,255,255,255,255,240,0,255,1,255,255,255,255,255,240,2,255,1,255,255,255,255,255,240,7,255,0,85,254,85,111,213,80,15,255,0,0,253,0,31,192,0,63,255,0,0,253,0,31,192,0,255,255,0,0,253,0,31,192,0,191,127,0,0,253,0,31,192,0,61,63,0,0,253,0,31,192,0,36,63,0,0,253,0,31,192,0,0,63,0,0,253,0,31,192,0,0,63,1,85,254,85,111,213,80,0,63,7,255,255,255,255,255,244,0,63,7,255,255,255,255,255,244,0,63,7,255,255,255,255,255,244,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,185,0,7,64,0,0,63,0,0,254,0,47,192,0,0,63,0,3,252,0,15,240,0,0,63,0,11,244,0,7,252,0,0,63,0,47,224,0,2,254,0,0,63,0,191,192,0,0,191,64,0,63,2,255,0,0,0,63,192,0,63,11,253,0,0,0,15,240,0,63,2,244,0,0,0,11,208,0,63,0,80,0,0,0,2,0, + // 0x4fdd 保 + 221,79,35,35,59,37,1,253,0,0,32,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,254,63,255,255,255,255,64,0,1,253,63,255,255,255,255,64,0,3,252,63,255,255,255,255,64,0,7,244,63,64,0,0,63,64,0,15,240,63,64,0,0,63,64,0,47,208,63,64,0,0,63,64,0,63,192,63,64,0,0,63,64,0,255,128,63,64,0,0,63,64,2,255,128,63,64,0,0,63,64,7,255,128,63,255,255,255,255,64,15,255,128,63,255,255,255,255,64,63,255,128,63,255,255,255,255,64,255,239,128,0,0,63,64,0,0,127,47,128,0,0,63,64,0,0,61,47,128,0,0,63,64,0,0,20,47,128,0,0,63,64,0,0,0,47,135,255,255,255,255,255,240,0,47,135,255,255,255,255,255,240,0,47,135,255,255,255,255,255,240,0,47,128,0,7,255,244,0,0,0,47,128,0,15,255,252,0,0,0,47,128,0,47,255,254,0,0,0,47,128,0,191,191,127,128,0,0,47,128,1,254,63,111,208,0,0,47,128,7,252,63,79,244,0,0,47,128,47,240,63,67,253,0,0,47,128,191,208,63,65,255,64,0,47,135,255,64,63,64,127,224,0,47,159,253,0,63,64,31,252,0,47,139,244,0,63,64,7,244,0,47,131,192,0,63,64,1,208,0,47,128,0,0,63,64,0,0,0,47,64,0,0,63,0,0,0, + // 0x4fe1 信 + 225,79,35,35,59,37,1,253,0,0,32,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,254,11,255,255,255,252,0,0,1,253,11,255,255,255,252,0,0,3,252,11,255,255,255,252,0,0,7,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,47,211,255,255,255,255,255,248,0,63,131,255,255,255,255,255,248,0,255,131,255,255,255,255,255,244,2,255,128,0,0,0,0,0,0,7,255,128,0,0,0,0,0,0,31,255,128,15,255,255,255,254,0,63,255,128,15,255,255,255,255,0,255,239,128,15,255,255,255,255,0,191,47,128,0,0,0,0,0,0,61,47,128,0,0,0,0,0,0,56,47,128,0,0,0,0,0,0,0,47,128,15,255,255,255,254,0,0,47,128,15,255,255,255,254,0,0,47,128,10,170,170,170,170,0,0,47,128,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,47,128,47,255,255,255,255,0,0,47,128,47,255,255,255,255,0,0,47,128,47,234,170,170,255,0,0,47,128,47,128,0,0,63,0,0,47,128,47,128,0,0,63,0,0,47,128,47,128,0,0,63,0,0,47,128,47,128,0,0,63,0,0,47,128,47,255,255,255,255,0,0,47,128,47,255,255,255,255,0,0,47,128,47,255,255,255,255,0,0,47,128,47,128,0,0,63,0,0,26,64,47,128,0,0,42,0, + // 0x500b 個 + 11,80,34,36,68,37,1,252,0,2,144,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,7,241,255,255,255,255,255,208,0,11,241,255,255,255,255,255,208,0,15,209,255,255,255,255,255,208,0,47,193,252,0,0,0,15,208,0,63,129,252,0,63,0,15,208,0,127,1,252,0,63,0,15,208,0,255,1,252,0,63,0,15,208,2,255,1,252,0,63,0,15,208,3,255,1,252,106,191,170,143,208,11,255,1,252,255,255,255,207,208,31,255,1,252,255,255,255,207,208,63,255,1,252,0,63,0,15,208,255,255,1,252,0,63,0,15,208,255,191,1,252,0,63,0,15,208,188,127,1,252,0,63,0,15,208,52,127,1,252,47,255,254,15,208,16,127,1,252,47,255,254,15,208,0,127,1,252,47,85,126,15,208,0,127,1,252,47,0,62,15,208,0,127,1,252,47,0,62,15,208,0,127,1,252,47,0,62,15,208,0,127,1,252,47,0,62,15,208,0,127,1,252,47,85,126,15,208,0,127,1,252,47,255,254,15,208,0,127,1,252,47,255,254,15,208,0,127,1,252,0,0,0,15,208,0,127,1,252,0,0,0,15,208,0,127,1,252,0,0,0,15,208,0,127,1,255,255,255,255,255,208,0,127,1,255,255,255,255,255,208,0,127,1,255,255,255,255,255,208,0,127,1,252,0,0,0,15,208,0,127,1,252,0,0,0,10,128,0,0,0,0,0,0,0,0,0, + // 0x503c 值 + 60,80,35,35,59,37,1,253,0,0,80,0,0,58,64,0,0,0,0,253,0,0,63,64,0,0,0,1,252,0,0,127,0,0,0,0,3,248,0,0,127,0,0,0,0,3,246,255,255,255,255,255,208,0,11,242,255,255,255,255,255,208,0,15,210,255,255,255,255,255,208,0,47,192,0,0,252,0,0,0,0,127,64,0,1,252,0,0,0,0,255,0,0,1,248,0,0,0,2,255,0,63,255,255,255,253,0,3,255,0,63,255,255,255,253,0,15,255,0,63,170,170,170,253,0,47,255,0,63,0,0,0,253,0,127,255,0,63,0,0,0,253,0,191,191,0,63,149,85,85,253,0,62,127,0,63,255,255,255,253,0,28,127,0,63,255,255,255,253,0,0,127,0,63,0,0,0,253,0,0,127,0,63,0,0,0,253,0,0,127,0,63,149,85,85,253,0,0,127,0,63,255,255,255,253,0,0,127,0,63,255,255,255,253,0,0,127,0,63,0,0,0,253,0,0,127,0,63,0,0,0,253,0,0,127,0,63,0,0,0,253,0,0,127,0,63,255,255,255,253,0,0,127,0,63,255,255,255,253,0,0,127,0,63,149,85,85,253,0,0,127,0,63,0,0,0,253,0,0,127,0,63,0,0,0,253,0,0,127,31,255,255,255,255,255,244,0,127,31,255,255,255,255,255,244,0,127,31,255,255,255,255,255,244,0,127,0,0,0,0,0,0,0, + // 0x504f 偏 + 79,80,35,35,59,37,1,253,0,1,64,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,7,243,255,255,255,255,255,244,0,11,227,255,255,255,255,255,244,0,15,211,255,255,255,255,255,244,0,47,192,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,127,0,106,170,170,170,170,128,0,255,0,191,255,255,255,255,192,1,254,0,191,255,255,255,255,192,3,254,0,189,0,0,0,31,192,11,254,0,189,0,0,0,31,192,31,254,0,189,0,0,0,31,192,63,254,0,191,170,170,170,191,192,191,254,0,191,255,255,255,255,192,255,190,0,191,255,255,255,255,192,188,190,0,253,0,0,0,0,0,52,190,0,253,0,0,0,0,0,16,190,0,255,170,170,170,170,144,0,190,0,255,255,255,255,255,224,0,190,0,255,255,255,255,255,224,0,190,0,255,208,244,46,7,224,0,190,1,255,208,244,46,7,224,0,190,2,255,208,244,46,7,224,0,190,3,255,208,244,46,7,224,0,190,3,251,255,255,255,255,224,0,190,7,251,255,255,255,255,224,0,190,11,235,250,254,191,175,224,0,190,15,219,208,244,46,7,224,0,190,47,203,208,244,46,7,224,0,190,127,75,208,244,46,7,224,0,190,191,11,208,244,46,7,224,0,190,45,11,208,244,46,191,224,0,190,4,11,208,244,46,127,208,0,126,0,11,192,164,41,62,64, + // 0x505c 停 + 92,80,35,35,59,37,1,253,0,0,80,0,0,42,0,0,0,0,0,253,0,0,127,0,0,0,0,1,252,0,0,127,0,0,0,0,3,252,0,0,127,0,0,0,0,7,247,255,255,255,255,255,244,0,15,243,255,255,255,255,255,244,0,31,211,255,255,255,255,255,244,0,63,192,0,0,0,0,0,0,0,127,64,5,85,85,85,84,0,0,255,0,31,255,255,255,254,0,3,255,0,31,255,255,255,254,0,7,255,0,31,128,0,0,254,0,31,255,0,31,128,0,0,254,0,63,255,0,31,213,85,85,254,0,255,255,0,31,255,255,255,254,0,255,127,0,31,255,255,255,254,0,124,63,0,0,0,0,0,0,0,52,63,0,0,0,0,0,0,0,0,63,15,255,255,255,255,255,248,0,63,15,255,255,255,255,255,248,0,63,15,250,170,170,170,171,248,0,63,15,192,0,0,0,1,248,0,63,15,192,0,0,0,1,248,0,63,15,195,255,255,255,245,248,0,63,15,195,255,255,255,245,248,0,63,0,3,255,255,255,240,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,1,255,255,0,0,0,0,63,0,0,255,254,0,0,0,0,63,0,0,191,244,0,0,0, + // 0x5075 偵 + 117,80,34,36,68,37,1,252,0,0,36,0,0,191,0,0,0,0,0,191,0,0,191,0,0,0,0,0,254,0,0,191,0,0,0,0,1,252,0,0,191,255,255,224,0,3,248,0,0,191,255,255,240,0,11,244,0,0,191,255,255,240,0,15,240,0,0,191,0,0,0,0,47,208,0,0,191,0,0,0,0,127,192,0,0,191,0,0,0,0,255,128,63,255,255,255,255,0,2,255,128,63,255,255,255,255,0,7,255,128,63,170,170,170,255,0,31,255,128,63,0,0,0,127,0,127,255,128,63,0,0,0,127,0,255,175,128,63,255,255,255,255,0,191,47,128,63,255,255,255,255,0,60,47,128,63,170,170,170,191,0,36,47,128,63,0,0,0,127,0,0,47,128,63,0,0,0,127,0,0,47,128,63,149,85,85,191,0,0,47,128,63,255,255,255,255,0,0,47,128,63,255,255,255,255,0,0,47,128,63,0,0,0,127,0,0,47,128,63,0,0,0,127,0,0,47,128,63,0,0,0,127,0,0,47,128,63,255,255,255,255,0,0,47,128,63,255,255,255,255,0,0,47,128,42,170,170,170,170,0,0,47,128,0,36,0,6,0,0,0,47,128,0,255,64,63,208,0,0,47,128,7,255,0,47,252,0,0,47,128,127,248,0,7,255,64,0,47,135,255,208,0,0,191,224,0,47,135,254,0,0,0,31,240,0,47,128,244,0,0,0,7,64,0,0,0,0,0,0,0,0,0, + // 0x5099 備 + 153,80,35,36,68,37,1,252,0,2,144,0,189,0,31,128,0,0,3,244,0,253,0,31,192,0,0,7,240,0,253,0,31,192,0,0,15,231,255,255,255,255,255,244,0,15,199,255,255,255,255,255,244,0,47,199,255,255,255,255,255,244,0,63,64,0,253,0,31,192,0,0,191,0,0,253,0,31,192,0,0,254,0,0,189,0,31,192,0,2,254,0,0,0,0,0,0,0,3,254,3,255,255,255,255,255,248,15,254,3,255,255,255,255,255,248,31,254,3,255,255,255,255,255,248,63,254,3,240,0,0,0,0,0,255,254,3,240,0,0,0,0,0,255,190,3,240,0,0,0,0,0,124,190,3,240,255,255,255,255,224,52,190,3,240,255,255,255,255,224,16,190,3,240,254,171,250,171,224,0,190,3,240,252,2,240,7,224,0,190,3,240,252,2,240,7,224,0,190,3,240,253,87,245,91,224,0,190,3,240,255,255,255,255,224,0,190,3,240,255,255,255,255,224,0,190,7,240,252,2,240,7,224,0,190,7,224,252,2,240,7,224,0,190,11,224,253,87,245,91,224,0,190,15,208,255,255,255,255,224,0,190,15,192,255,255,255,255,224,0,190,31,192,252,2,240,7,224,0,190,47,128,252,2,240,7,224,0,190,63,64,252,2,240,7,224,0,190,191,0,252,2,241,175,224,0,190,61,0,252,2,241,255,208,0,190,8,0,168,1,80,255,64,0,0,0,0,0,0,0,0,0, + // 0x50b3 傳 + 179,80,35,35,59,37,1,253,0,0,80,0,0,42,0,0,0,0,0,253,0,0,63,0,0,0,0,1,252,0,0,63,0,0,0,0,3,251,255,255,255,255,255,240,0,7,247,255,255,255,255,255,240,0,15,226,170,170,191,170,170,160,0,31,192,0,0,63,0,0,0,0,63,128,191,255,255,255,255,192,0,191,0,191,255,255,255,255,192,1,255,0,190,0,127,0,47,192,3,255,0,190,0,63,0,31,192,11,255,0,191,255,255,255,255,192,47,255,0,191,255,255,255,255,192,127,255,0,190,0,63,0,31,192,255,191,0,190,0,63,0,31,192,190,63,0,191,255,255,255,255,192,60,63,0,191,255,255,255,255,192,48,63,0,0,0,127,3,252,0,0,63,0,0,0,63,0,255,0,0,63,1,85,85,191,85,191,128,0,63,3,255,255,255,255,255,224,0,63,3,255,255,255,255,255,244,0,63,1,85,80,0,15,225,240,0,63,0,0,0,0,15,224,64,0,63,15,255,255,255,255,255,248,0,63,15,255,255,255,255,255,248,0,63,10,171,234,170,175,250,164,0,63,0,11,208,0,15,224,0,0,63,0,15,244,0,15,224,0,0,63,0,3,253,0,15,224,0,0,63,0,0,255,0,15,224,0,0,63,0,0,63,64,15,224,0,0,63,0,0,28,47,255,208,0,0,63,0,0,0,31,255,192,0,0,63,0,0,0,15,250,0,0, + // 0x50be 傾 + 190,80,35,36,68,37,1,252,0,1,0,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,15,208,0,63,255,255,255,244,0,31,192,0,63,255,255,255,244,0,47,143,192,63,255,255,255,244,0,63,15,192,0,0,253,0,0,0,127,15,192,0,1,252,0,0,0,253,15,192,6,171,254,170,128,1,253,15,192,11,255,255,255,192,3,253,15,193,203,255,255,255,192,7,253,15,195,251,208,0,15,192,15,253,15,207,255,208,0,15,192,31,253,15,239,219,208,0,15,192,63,253,15,255,11,229,85,95,192,255,253,15,252,11,255,255,255,192,254,253,15,240,11,255,255,255,192,188,253,15,192,11,208,0,15,192,52,253,15,192,11,208,0,15,192,16,253,15,192,11,208,0,15,192,0,253,15,192,11,255,255,255,192,0,253,15,192,11,255,255,255,192,0,253,15,192,219,229,85,95,192,0,253,15,192,255,208,0,15,192,0,253,15,192,255,208,0,15,192,0,253,15,193,255,208,0,15,192,0,253,15,193,255,255,255,255,192,0,253,15,255,251,255,255,255,192,0,253,15,255,230,170,170,170,128,0,253,3,255,128,36,0,32,0,0,253,0,0,0,254,2,252,0,0,253,0,0,7,254,1,255,64,0,253,0,0,127,248,0,127,208,0,253,0,3,255,208,0,15,244,0,253,0,2,254,0,0,3,244,0,253,0,0,224,0,0,0,192,0,0,0,0,0,0,0,0,0, + // 0x5132 儲 + 50,81,35,36,68,37,1,252,0,6,64,0,0,2,244,0,0,0,11,230,170,164,2,244,3,224,0,15,203,255,248,2,244,7,240,0,31,203,255,248,2,244,11,208,0,63,64,0,0,107,254,159,192,0,63,0,0,0,191,255,239,128,0,190,42,170,170,191,255,255,64,0,253,63,255,255,2,244,127,0,2,252,63,255,255,2,244,253,0,3,252,0,0,0,2,245,252,0,11,252,0,0,0,2,247,244,0,31,252,10,170,168,255,255,255,244,63,252,15,255,253,255,255,255,248,191,252,15,255,253,255,255,255,248,255,252,0,0,0,0,191,40,0,188,252,0,0,0,2,252,191,0,52,252,0,0,0,7,244,47,128,16,252,15,255,252,31,208,11,0,0,252,15,255,252,191,255,255,192,0,252,10,170,170,255,255,255,192,0,252,0,0,7,255,255,255,192,0,252,0,0,1,251,208,15,192,0,252,15,255,253,71,208,15,192,0,252,15,255,253,7,208,15,192,0,252,15,234,253,7,250,175,192,0,252,15,128,125,7,255,255,192,0,252,15,128,125,7,255,255,192,0,252,15,128,125,7,208,15,192,0,252,15,128,125,7,208,15,192,0,252,15,128,125,7,208,15,192,0,252,15,255,253,7,208,15,192,0,252,15,255,253,7,255,255,192,0,252,15,234,169,7,255,255,192,0,252,15,128,0,7,255,255,192,0,188,10,64,0,7,208,15,192,0,0,0,0,0,0,0,0,0, + // 0x5145 充 + 69,81,34,36,68,37,2,252,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,11,244,0,0,0,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,0,0,11,244,0,4,0,0,0,0,0,15,240,0,63,0,0,0,0,0,47,192,0,191,192,0,0,0,0,63,128,0,47,244,0,0,0,0,191,0,0,11,253,0,0,0,0,254,0,0,1,255,64,0,10,171,255,175,255,255,255,208,0,31,255,255,255,255,255,255,244,0,15,255,255,255,255,255,255,252,0,15,255,254,170,149,80,2,255,0,0,0,0,0,0,0,0,253,0,0,0,15,208,2,252,0,48,0,0,0,31,208,2,252,0,0,0,0,0,31,208,2,252,0,0,0,0,0,47,192,2,252,0,0,0,0,0,47,192,2,252,0,0,0,0,0,63,192,2,252,0,0,0,0,0,127,64,2,252,0,4,0,0,0,255,0,2,252,0,11,128,0,1,255,0,2,252,0,11,208,0,3,253,0,2,252,0,15,208,0,31,248,0,2,252,0,15,208,0,191,240,0,2,252,0,15,192,27,255,192,0,1,253,64,111,192,255,254,0,0,1,255,255,255,128,127,224,0,0,0,255,255,255,0,62,0,0,0,0,47,255,249,0,0,0,0,0,0,0,0,0,0, + // 0x5148 先 + 72,81,33,36,68,37,2,252,0,0,0,3,240,0,0,0,0,0,7,224,3,244,0,0,0,0,0,11,240,3,244,0,0,0,0,0,15,224,3,244,0,0,0,0,0,15,208,3,244,0,0,0,0,0,47,213,87,245,85,85,80,0,0,63,255,255,255,255,255,240,0,0,127,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,1,253,0,3,244,0,0,0,0,3,252,0,3,244,0,0,0,0,7,248,0,3,244,0,0,0,0,15,240,0,3,244,0,0,0,0,7,208,0,3,244,0,0,0,0,0,64,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,21,85,111,213,87,253,85,85,64,0,0,47,192,2,252,0,0,0,0,0,63,192,2,252,0,0,0,0,0,63,128,2,252,0,0,0,0,0,63,64,2,252,0,0,0,0,0,191,0,2,252,0,0,0,0,0,255,0,2,252,0,0,0,0,2,253,0,2,252,0,14,64,0,3,252,0,2,252,0,15,192,0,15,244,0,2,252,0,15,192,0,127,240,0,2,252,0,31,192,2,255,192,0,2,252,0,47,128,111,255,0,0,1,255,255,255,128,255,248,0,0,0,255,255,255,0,63,208,0,0,0,127,255,253,0,29,0,0,0,0,0,85,64,0,0,0,0,0,0,0,0,0,0, + // 0x5149 光 + 73,81,35,36,68,37,1,252,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,64,0,0,109,0,1,252,0,2,248,0,0,191,0,1,252,0,3,252,0,0,63,128,1,252,0,7,248,0,0,47,192,1,252,0,15,240,0,0,15,224,1,252,0,15,224,0,0,11,240,1,252,0,47,192,0,0,3,248,1,252,0,63,128,0,0,3,252,1,252,0,255,0,0,0,1,253,1,252,1,253,0,0,0,0,228,1,252,0,104,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,21,85,91,245,85,255,85,85,80,0,0,11,240,0,191,0,0,0,0,0,11,240,0,191,0,0,0,0,0,15,240,0,191,0,0,0,0,0,15,224,0,191,0,0,0,0,0,15,208,0,191,0,0,0,0,0,31,208,0,191,0,0,0,0,0,63,192,0,191,0,0,0,0,0,63,128,0,191,0,1,0,0,0,255,64,0,191,0,2,208,0,1,255,0,0,191,0,3,244,0,7,253,0,0,191,0,3,244,0,31,248,0,0,191,0,3,244,0,255,240,0,0,191,0,3,240,27,255,192,0,0,191,64,11,240,127,254,0,0,0,127,255,255,224,47,240,0,0,0,63,255,255,192,14,0,0,0,0,11,255,254,64,0,0,0,0,0,0,0,0,0, + // 0x5165 入 + 101,81,34,33,41,37,2,253,0,1,85,85,84,0,0,0,0,0,7,255,255,252,0,0,0,0,0,7,255,255,252,0,0,0,0,0,7,255,255,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,10,253,0,0,0,0,0,0,0,31,254,0,0,0,0,0,0,0,47,255,0,0,0,0,0,0,0,63,255,0,0,0,0,0,0,0,63,255,64,0,0,0,0,0,0,191,191,128,0,0,0,0,0,0,255,47,192,0,0,0,0,0,0,255,31,208,0,0,0,0,0,2,253,15,240,0,0,0,0,0,3,252,11,244,0,0,0,0,0,11,248,7,248,0,0,0,0,0,15,240,3,253,0,0,0,0,0,47,224,1,255,0,0,0,0,0,127,192,0,255,128,0,0,0,0,255,64,0,127,208,0,0,0,2,255,0,0,47,240,0,0,0,11,253,0,0,15,252,0,0,0,47,248,0,0,3,255,0,0,0,191,224,0,0,1,255,192,0,2,255,192,0,0,0,127,244,0,31,255,0,0,0,0,47,254,0,191,252,0,0,0,0,7,255,208,255,224,0,0,0,0,1,255,192,63,64,0,0,0,0,0,63,0,8,0,0,0,0,0,0,8,0, + // 0x5168 全 + 104,81,35,34,50,37,1,254,0,0,0,3,253,0,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,31,255,192,0,0,0,0,0,0,63,255,240,0,0,0,0,0,0,255,143,248,0,0,0,0,0,3,255,3,254,0,0,0,0,0,15,252,1,255,128,0,0,0,0,63,240,0,127,240,0,0,0,0,255,208,0,31,252,0,0,0,7,255,64,0,7,255,64,0,0,31,253,0,0,0,255,224,0,0,191,240,0,0,0,63,253,0,7,255,192,0,0,0,11,255,192,63,254,0,0,0,0,2,255,244,127,247,255,255,255,255,255,175,240,31,71,255,255,255,255,255,71,208,8,7,255,255,255,255,255,64,64,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,253,0,0,0,0,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192, + // 0x5171 共 + 113,81,33,35,59,37,2,253,0,0,169,0,0,26,128,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,5,85,255,85,85,127,213,85,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,85,85,255,85,85,127,213,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,0,0,45,0,0,0,0,0,191,192,0,255,128,0,0,0,2,255,64,0,127,240,0,0,0,15,253,0,0,15,253,0,0,0,63,244,0,0,3,255,128,0,1,255,208,0,0,0,191,240,0,15,255,0,0,0,0,31,252,0,127,248,0,0,0,0,7,255,0,47,208,0,0,0,0,0,254,0,6,0,0,0,0,0,0,48,0, + // 0x5177 具 + 119,81,33,34,50,37,2,253,0,26,170,170,170,170,170,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,47,192,0,0,0,191,0,0,0,47,192,0,0,0,191,0,0,0,47,192,0,0,0,191,0,0,0,47,234,170,170,170,255,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,47,192,0,0,0,191,0,0,0,47,192,0,0,0,191,0,0,0,47,192,0,0,0,191,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,47,234,170,170,170,255,0,0,0,47,192,0,0,0,191,0,0,0,47,192,0,0,0,191,0,0,0,47,234,170,170,170,255,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,47,64,0,62,0,0,0,0,2,255,224,1,255,228,0,0,0,111,255,128,0,191,255,128,0,11,255,248,0,0,7,255,248,0,191,255,128,0,0,0,111,255,128,63,244,0,0,0,0,2,255,0,14,0,0,0,0,0,0,56,0, + // 0x5197 冗 + 151,81,34,33,41,37,2,253,21,85,85,85,85,85,85,85,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,128,0,0,0,0,0,191,0,63,128,0,0,0,0,0,191,0,63,128,0,0,0,0,0,191,0,63,128,0,0,0,0,0,191,0,63,128,0,0,0,0,0,191,0,63,128,0,0,0,0,0,191,0,42,64,191,255,255,255,128,106,0,0,0,191,255,255,255,128,0,0,0,0,191,255,255,255,128,0,0,0,0,191,0,0,127,128,0,0,0,0,191,0,0,63,128,0,0,0,0,191,0,0,63,128,0,0,0,0,191,0,0,63,128,0,0,0,0,191,0,0,63,128,0,0,0,0,255,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,1,253,0,0,63,128,4,0,0,3,252,0,0,63,128,15,64,0,7,248,0,0,63,128,15,224,0,15,240,0,0,63,128,15,208,0,63,224,0,0,63,128,15,208,1,255,192,0,0,63,128,15,192,11,255,0,0,0,63,192,31,192,191,252,0,0,0,63,255,255,192,255,240,0,0,0,47,255,255,64,63,64,0,0,0,15,255,254,0,36,0,0,0,0,0,85,80,0, + // 0x51b7 冷 + 183,81,35,35,59,37,1,253,0,0,0,0,2,248,0,0,0,0,0,0,0,7,254,0,0,0,7,0,0,0,15,255,64,0,0,15,208,0,0,47,255,208,0,0,63,248,0,0,191,143,240,0,0,11,255,0,1,255,7,252,0,0,2,255,192,3,252,2,255,0,0,0,127,208,15,244,0,191,208,0,0,31,128,127,208,0,47,244,0,0,6,1,255,128,0,11,254,0,0,0,7,254,0,0,2,255,208,0,0,47,251,255,255,254,127,248,0,1,255,227,255,255,254,31,244,0,0,255,67,255,255,254,3,224,0,0,124,0,0,0,0,0,128,0,0,32,0,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,66,255,255,255,255,255,0,0,7,210,255,255,255,255,255,0,0,15,242,255,255,255,255,255,0,0,47,208,0,31,208,0,191,0,0,63,192,0,31,192,0,191,0,0,255,64,0,31,192,0,191,0,1,254,0,0,31,192,0,191,0,3,252,0,0,31,192,0,191,0,11,248,0,0,31,192,0,191,0,31,240,0,0,31,192,0,191,0,63,208,0,0,31,192,255,254,0,127,192,0,0,31,192,191,253,0,31,64,0,0,31,192,127,248,0,6,0,0,0,31,192,20,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0, + // 0x51c6 准 + 198,81,35,35,59,37,1,253,0,0,0,0,164,0,25,0,0,0,0,0,0,254,0,63,192,0,2,0,0,1,252,0,63,64,0,11,224,0,3,248,0,127,0,0,31,252,0,7,244,0,254,0,0,7,255,64,15,240,0,252,0,0,0,255,208,31,208,2,252,0,0,0,47,240,63,255,255,255,255,224,0,11,192,127,255,255,255,255,224,0,2,64,255,255,255,255,255,224,0,0,2,255,192,7,240,0,0,0,0,7,255,128,7,240,0,0,0,0,15,255,128,7,240,0,0,0,0,63,255,128,7,240,0,0,0,0,191,239,192,7,240,0,0,0,0,63,111,255,255,255,255,192,0,0,14,47,255,255,255,255,192,0,0,0,47,255,255,255,255,192,0,0,0,47,128,7,240,0,0,0,3,0,47,128,7,240,0,0,0,11,192,47,128,7,240,0,0,0,31,224,47,128,7,240,0,0,0,63,192,47,255,255,255,255,192,0,191,64,47,255,255,255,255,192,0,255,0,47,255,255,255,255,192,3,253,0,47,192,7,240,0,0,7,248,0,47,128,7,240,0,0,15,240,0,47,128,7,240,0,0,63,208,0,47,128,7,240,0,0,127,192,0,47,128,7,240,0,0,47,64,0,47,255,255,255,255,244,10,0,0,47,255,255,255,255,244,0,0,0,47,255,255,255,255,244,0,0,0,47,192,0,0,0,0,0,0,0,31,128,0,0,0,0, + // 0x51fa 出 + 250,81,29,35,24,37,4,253,0,0,0,106,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,127,0,0,0,0,5,64,0,127,0,0,84,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,192,0,127,0,0,254,0,31,213,85,191,85,85,254,0,31,255,255,255,255,255,254,0,31,255,255,255,255,255,254,0,31,255,255,255,255,255,254,0,0,0,0,127,0,0,0,0,0,0,0,127,0,0,0,0,189,0,0,127,0,0,31,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,254,0,0,127,0,0,47,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,255,85,85,85,85,85,111,192,254,0,0,0,0,0,47,192,190,0,0,0,0,0,31,192, + // 0x5206 分 + 6,82,35,35,59,37,1,252,0,0,11,208,0,27,128,0,0,0,0,15,240,0,63,192,0,0,0,0,47,224,0,31,224,0,0,0,0,63,192,0,15,244,0,0,0,0,191,128,0,7,252,0,0,0,1,255,0,0,2,255,0,0,0,3,254,0,0,0,255,128,0,0,11,252,0,0,0,127,208,0,0,31,240,0,0,0,47,244,0,0,127,224,0,0,0,15,252,0,1,255,128,0,0,0,3,255,0,7,255,0,0,0,0,1,255,208,47,252,0,0,0,0,0,127,244,191,255,255,255,255,255,255,239,248,127,207,255,255,255,255,255,203,224,31,15,255,255,255,255,255,194,128,4,5,85,127,213,85,127,192,0,0,0,0,63,128,0,47,192,0,0,0,0,127,64,0,47,192,0,0,0,0,191,0,0,63,192,0,0,0,0,191,0,0,63,128,0,0,0,0,255,0,0,63,128,0,0,0,1,254,0,0,63,128,0,0,0,3,252,0,0,63,128,0,0,0,7,252,0,0,63,64,0,0,0,15,244,0,0,63,64,0,0,0,47,240,0,0,127,64,0,0,0,191,192,0,0,127,0,0,0,3,255,64,0,0,191,0,0,0,31,254,0,0,0,255,0,0,1,255,248,0,37,87,254,0,0,15,255,208,0,47,255,253,0,0,3,254,0,0,31,255,248,0,0,1,224,0,0,15,255,144,0,0,0,0,0,0,0,0,0,0,0, + // 0x5217 列 + 23,82,33,36,68,37,1,252,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,47,192,47,255,255,255,253,0,0,47,192,47,255,255,255,253,0,0,47,192,47,255,255,255,253,63,0,47,192,0,3,252,0,0,127,0,47,192,0,3,244,0,0,127,0,47,192,0,7,240,0,0,127,0,47,192,0,11,240,0,0,127,0,47,192,0,15,224,0,0,127,0,47,192,0,31,255,255,224,127,0,47,192,0,63,255,255,244,127,0,47,192,0,63,255,255,240,127,0,47,192,0,191,0,11,240,127,0,47,192,0,253,0,11,240,127,0,47,192,3,252,0,15,224,127,0,47,192,7,248,0,15,208,127,0,47,192,15,255,0,31,192,127,0,47,192,63,255,224,63,128,127,0,47,192,191,175,252,63,64,127,0,47,192,191,7,255,191,0,127,0,47,192,44,0,255,254,0,127,0,47,192,0,0,47,252,0,127,0,47,192,0,0,7,252,0,127,0,47,192,0,0,11,244,0,127,0,47,192,0,0,31,224,0,0,0,47,192,0,0,63,192,0,0,0,47,192,0,0,191,128,0,0,0,47,192,0,2,255,0,0,0,0,47,192,0,11,252,0,0,0,0,47,192,0,47,240,0,0,0,0,47,192,1,255,208,0,0,1,85,127,192,7,255,64,0,0,1,255,255,128,2,252,0,0,0,0,255,255,0,0,160,0,0,0,0,255,248,0,0,0,0,0,0,0,0,0,0, + // 0x521d 初 + 29,82,34,35,59,37,1,253,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,11,255,255,255,255,224,0,15,208,11,255,255,255,255,224,0,15,208,11,255,255,255,255,224,0,15,224,1,85,255,85,95,224,63,255,255,224,0,254,0,15,224,63,255,255,244,0,254,0,15,224,63,255,255,240,0,254,0,15,224,0,0,15,208,0,253,0,15,224,0,0,47,192,0,253,0,15,224,0,0,63,64,0,253,0,15,224,0,0,255,0,0,253,0,15,224,0,1,252,40,1,252,0,15,208,0,3,248,126,1,252,0,15,208,0,15,240,253,1,252,0,15,208,0,47,250,244,2,252,0,15,208,0,191,255,208,3,248,0,15,208,2,255,255,192,3,248,0,15,208,11,255,255,224,3,244,0,15,208,47,255,219,248,7,240,0,31,192,191,223,210,252,15,240,0,31,192,127,79,208,244,15,224,0,31,192,45,15,208,32,47,192,0,31,192,0,15,208,0,63,192,0,47,192,0,15,208,0,191,64,0,47,192,0,15,208,0,255,0,0,63,192,0,15,208,3,253,0,0,63,128,0,15,208,11,252,0,0,63,64,0,15,208,47,240,0,0,255,64,0,15,208,255,208,11,255,255,0,0,15,208,255,128,3,255,253,0,0,15,208,62,0,3,255,248,0,0,15,208,4,0,1,85,64,0, + // 0x5230 到 + 48,82,33,34,50,37,1,253,0,0,0,0,0,0,0,26,128,0,0,0,0,0,0,0,31,192,63,255,255,255,254,0,0,31,192,63,255,255,255,254,0,0,31,192,63,255,255,255,254,63,64,31,192,0,15,240,0,0,63,64,31,192,0,15,224,4,0,63,64,31,192,0,31,192,127,0,63,64,31,192,0,47,192,63,128,63,64,31,192,0,63,64,31,208,63,64,31,192,0,127,0,11,240,63,64,31,192,21,255,255,255,252,63,64,31,192,63,255,255,255,253,63,64,31,192,63,255,255,255,255,63,64,31,192,63,169,84,0,63,63,64,31,192,0,0,127,0,24,63,64,31,192,0,0,127,0,0,63,64,31,192,0,0,127,0,0,63,64,31,192,0,0,127,0,0,63,64,31,192,15,255,255,255,248,63,64,31,192,15,255,255,255,248,63,64,31,192,15,255,255,255,248,63,64,31,192,0,0,127,0,0,63,64,31,192,0,0,127,0,0,63,64,31,192,0,0,127,0,0,21,0,31,192,0,0,127,0,0,0,0,31,192,0,0,127,0,0,0,0,31,192,0,0,127,22,190,0,0,31,192,0,5,191,255,255,0,0,31,192,111,255,255,255,255,0,0,31,192,127,255,255,255,233,0,149,127,192,63,255,250,80,0,0,255,255,192,62,148,0,0,0,0,255,255,64,0,0,0,0,0,0,191,248,0, + // 0x5236 制 + 54,82,34,35,59,37,1,253,0,0,31,128,0,0,0,5,64,0,248,47,128,0,0,0,15,208,2,252,47,128,0,0,0,15,208,3,248,47,128,0,1,248,15,208,3,244,47,128,0,2,248,15,208,7,255,255,255,254,2,248,15,208,11,255,255,255,254,2,248,15,208,15,255,255,255,254,2,248,15,208,47,192,47,128,0,2,248,15,208,63,128,47,128,0,2,248,15,208,127,0,47,128,0,2,248,15,208,10,0,47,128,0,2,248,15,208,127,255,255,255,255,194,248,15,208,127,255,255,255,255,194,248,15,208,127,255,255,255,255,194,248,15,208,0,0,47,128,0,2,248,15,208,0,0,47,128,0,2,248,15,208,0,0,47,128,0,2,248,15,208,0,0,47,128,0,2,248,15,208,11,255,255,255,255,2,248,15,208,11,255,255,255,255,2,248,15,208,11,255,255,255,255,2,248,15,208,11,208,47,128,63,2,248,15,208,11,208,47,128,63,2,248,15,208,11,208,47,128,63,1,164,15,208,11,208,47,128,63,0,0,15,208,11,208,47,128,63,0,0,15,208,11,208,47,128,63,0,0,15,208,11,208,47,128,63,0,0,15,208,11,208,47,143,255,0,0,15,208,11,208,47,143,254,0,0,15,208,11,208,47,139,248,0,21,111,192,0,0,47,128,0,0,63,255,192,0,0,47,128,0,0,63,255,128,0,0,31,128,0,0,47,249,0, + // 0x5237 刷 + 55,82,33,35,59,37,1,253,0,0,0,0,0,0,0,5,64,0,0,0,0,0,0,0,15,192,3,255,255,255,255,0,0,15,192,3,255,255,255,255,1,64,15,192,3,255,255,255,255,7,224,15,192,3,240,0,0,63,7,224,15,192,3,240,0,0,63,7,224,15,192,3,240,0,0,63,7,224,15,192,3,240,0,0,63,7,224,15,192,3,255,255,255,255,7,224,15,192,3,255,255,255,255,7,224,15,192,3,255,255,255,255,7,224,15,192,3,240,1,248,0,7,224,15,192,3,240,1,248,0,7,224,15,192,3,240,1,248,0,7,224,15,192,3,240,1,248,0,7,224,15,192,3,251,255,255,255,71,224,15,192,3,255,255,255,255,71,224,15,192,7,255,255,255,255,71,224,15,192,7,239,193,248,31,71,224,15,192,7,239,193,248,31,71,224,15,192,7,239,193,248,31,71,224,15,192,11,239,193,248,31,71,224,15,192,11,223,193,248,31,71,224,15,192,15,223,193,248,31,71,224,15,192,15,207,193,248,31,65,80,15,192,15,207,193,248,31,64,0,15,192,31,207,193,248,31,64,0,15,192,31,143,193,251,255,64,0,15,192,63,79,193,249,255,0,0,15,192,63,15,193,248,164,0,0,15,192,190,0,1,248,0,0,85,111,192,189,0,1,248,0,0,127,255,192,28,0,1,248,0,0,63,255,64,0,0,1,248,0,0,47,249,0, + // 0x5275 創 + 117,82,33,36,68,37,1,252,0,0,5,64,0,0,0,0,0,0,0,63,240,0,0,0,31,192,0,0,191,252,0,0,0,31,192,0,1,255,255,64,0,0,31,192,0,3,252,127,208,0,0,31,192,0,15,244,31,244,31,192,31,192,0,63,208,7,253,31,192,31,192,0,255,213,86,255,95,192,31,192,7,255,255,255,191,31,192,31,192,63,245,255,255,93,31,192,31,192,127,128,0,0,0,31,192,31,192,13,85,85,85,84,31,192,31,192,0,255,255,255,252,31,192,31,192,0,255,255,255,252,31,192,31,192,0,252,0,0,252,31,192,31,192,0,252,0,0,252,31,192,31,192,0,255,255,255,252,31,192,31,192,0,255,255,255,252,31,192,31,192,0,252,0,1,252,31,192,31,192,0,252,0,0,252,31,192,31,192,0,255,255,255,252,31,192,31,192,0,255,255,255,252,31,192,31,192,1,253,85,85,84,31,192,31,192,1,248,0,0,0,31,192,31,192,2,254,170,170,168,31,192,31,192,3,255,255,255,253,31,192,31,192,3,255,255,255,253,0,0,31,192,7,255,192,0,189,0,0,31,192,15,223,192,0,189,0,0,31,192,15,207,192,0,189,0,0,31,192,63,143,192,0,189,0,0,31,192,127,15,255,255,253,0,85,127,192,62,15,255,255,253,0,255,255,192,12,15,234,170,253,0,191,255,64,0,15,192,0,105,0,127,248,0,0,0,0,0,0,0,0,0,0, + // 0x529b 力 + 155,82,32,35,24,37,2,253,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,63,64,0,0,0,63,255,255,255,255,255,255,254,63,255,255,255,255,255,255,253,63,255,255,255,255,255,255,253,26,170,170,191,170,170,170,253,0,0,0,191,0,0,0,253,0,0,0,191,0,0,1,253,0,0,0,255,0,0,1,252,0,0,0,254,0,0,1,252,0,0,0,254,0,0,1,252,0,0,1,253,0,0,2,252,0,0,3,252,0,0,2,252,0,0,3,252,0,0,2,252,0,0,11,248,0,0,3,252,0,0,15,240,0,0,3,248,0,0,31,224,0,0,3,248,0,0,63,208,0,0,3,248,0,0,191,192,0,0,3,244,0,1,255,0,0,0,7,244,0,7,254,0,0,0,11,240,0,15,252,0,0,0,11,240,0,63,240,0,0,0,15,240,1,255,208,0,0,0,31,224,11,255,64,0,0,0,63,208,63,253,0,0,15,255,255,192,191,240,0,0,7,255,255,64,47,128,0,0,3,255,253,0,9,0,0,0,1,85,64,0, + // 0x52a0 加 + 160,82,33,36,68,37,1,252,0,5,64,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,85,85,85,64,0,15,208,0,0,255,255,255,192,0,15,208,0,0,255,255,255,192,63,255,255,255,208,255,255,255,192,63,255,255,255,208,252,0,47,192,63,255,255,255,208,252,0,47,192,21,111,213,95,208,252,0,47,192,0,31,192,15,208,252,0,47,192,0,31,192,15,192,252,0,47,192,0,31,192,15,192,252,0,47,192,0,31,192,15,192,252,0,47,192,0,31,192,15,192,252,0,47,192,0,47,192,15,192,252,0,47,192,0,47,128,15,192,252,0,47,192,0,63,128,15,192,252,0,47,192,0,63,64,31,192,252,0,47,192,0,63,64,31,192,252,0,47,192,0,63,0,31,192,252,0,47,192,0,127,0,31,192,252,0,47,192,0,191,0,31,192,252,0,47,192,0,254,0,31,192,252,0,47,192,1,253,0,47,192,252,0,47,192,2,252,0,47,192,252,0,47,192,3,252,0,47,128,252,0,47,192,7,244,0,63,128,255,255,255,192,15,240,0,63,64,255,255,255,192,31,224,0,191,64,255,255,255,192,63,192,255,255,0,253,85,127,192,191,128,191,254,0,252,0,47,192,47,0,191,248,0,252,0,47,128,8,0,21,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x52d5 動 + 213,82,34,36,68,37,1,252,0,0,0,0,64,1,80,0,0,0,0,22,191,208,3,240,0,0,42,255,255,255,240,3,240,0,0,63,255,255,255,144,3,240,0,0,31,250,254,0,0,3,240,0,0,0,0,189,0,0,3,240,0,0,42,170,254,170,164,3,240,0,0,127,255,255,255,252,3,240,0,0,127,255,255,255,253,91,240,0,0,0,0,189,0,3,255,255,255,224,0,0,189,0,3,255,255,255,224,31,255,255,255,251,255,255,255,224,31,255,255,255,244,7,240,11,224,31,149,254,86,244,7,240,11,224,31,64,189,2,244,11,224,15,224,31,128,189,2,244,11,224,15,224,31,255,255,255,244,11,224,15,208,31,255,255,255,244,15,208,15,208,31,64,189,2,244,15,208,15,208,31,64,189,2,244,15,208,15,208,31,255,255,255,244,31,192,15,208,31,255,255,255,244,31,192,15,208,5,85,254,85,80,63,128,15,208,0,0,189,0,0,63,64,15,192,10,170,254,170,160,127,0,15,192,31,255,255,255,244,191,0,15,192,31,255,255,255,245,254,0,31,192,0,0,189,0,3,252,0,31,192,0,0,189,0,7,252,0,31,192,0,0,190,107,255,244,0,47,192,1,90,255,255,255,224,0,63,128,127,255,255,255,255,192,0,127,64,63,255,255,171,255,64,255,255,0,62,149,0,1,253,0,191,254,0,0,0,0,0,116,0,191,248,0,0,0,0,0,0,0,0,0,0, + // 0x5316 化 + 22,83,35,34,50,37,1,253,0,0,15,128,63,64,0,0,0,0,0,47,192,63,64,0,0,0,0,0,63,192,63,64,0,0,0,0,0,191,64,63,64,0,0,0,0,0,255,0,63,64,0,0,0,0,3,253,0,63,64,0,0,0,0,7,248,0,63,64,0,8,0,0,15,240,0,63,64,0,62,0,0,63,224,0,63,64,0,255,64,0,191,224,0,63,64,7,255,128,1,255,224,0,63,64,63,253,0,3,255,224,0,63,65,255,240,0,15,255,224,0,63,79,255,64,0,63,255,224,0,63,255,248,0,0,255,223,224,0,63,255,192,0,0,191,79,224,0,63,253,0,0,0,62,15,224,0,63,208,0,0,0,40,15,224,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,15,224,0,63,64,0,1,0,0,15,224,0,63,64,0,2,228,0,15,224,0,63,64,0,2,248,0,15,224,0,63,64,0,2,248,0,15,224,0,63,64,0,3,244,0,15,224,0,63,64,0,3,244,0,15,224,0,63,192,0,11,240,0,15,224,0,63,255,255,255,224,0,15,224,0,31,255,255,255,192,0,15,224,0,7,255,255,255,64,0,10,144,0,0,0,0,0,0, + // 0x534a 半 + 74,83,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,104,0,7,240,0,15,64,0,1,253,0,7,240,0,31,224,0,0,255,0,7,240,0,63,192,0,0,127,128,7,240,0,127,128,0,0,63,192,7,240,0,255,0,0,0,31,224,7,240,1,254,0,0,0,15,240,7,240,3,252,0,0,0,7,244,7,240,7,244,0,0,0,3,224,7,240,7,240,0,0,0,1,0,7,240,0,64,0,0,0,0,0,7,240,0,0,0,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,5,85,85,91,249,85,85,84,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,85,85,85,91,249,85,85,85,64,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0, + // 0x5354 協 + 84,83,34,36,68,37,1,252,0,63,0,0,0,63,0,0,0,0,63,0,0,0,63,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,0,0,127,0,0,0,0,63,0,31,255,255,255,255,128,0,63,0,31,255,255,255,255,128,0,63,0,15,255,255,255,255,64,0,63,0,0,2,248,0,63,64,0,63,0,0,3,244,0,63,64,0,127,0,0,15,240,0,63,0,127,255,255,0,47,192,0,63,0,127,255,255,0,255,64,0,191,0,127,255,255,11,254,0,255,254,0,0,63,0,127,244,0,255,252,0,0,63,0,63,128,0,191,224,0,0,63,0,24,0,0,0,0,0,0,63,0,15,128,0,15,192,0,0,63,0,31,128,0,15,192,0,0,63,0,31,128,0,31,192,0,0,63,0,31,128,0,31,128,0,0,63,15,255,255,235,255,255,240,0,63,15,255,255,235,255,255,240,0,63,10,191,239,230,191,235,240,0,63,0,47,7,208,47,67,240,0,63,0,63,7,208,63,3,240,0,63,0,63,7,208,63,3,240,0,63,0,62,7,208,127,3,240,0,63,0,189,7,208,189,3,224,0,63,0,252,11,208,252,3,224,0,63,1,252,11,193,252,7,224,0,63,3,244,11,195,244,7,224,0,63,11,240,15,203,240,11,208,0,63,31,210,191,239,194,175,192,0,63,31,66,255,95,66,255,192,0,63,6,2,254,5,1,254,0,0,0,0,0,0,0,0,0,0, + // 0x5361 卡 + 97,83,33,35,59,37,2,253,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,255,255,255,192,0,0,0,0,15,255,255,255,192,0,0,0,0,15,255,255,255,192,0,0,0,0,15,229,85,85,64,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,85,85,85,95,229,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,255,144,0,0,0,0,0,0,15,255,254,64,0,0,0,0,0,15,255,255,248,0,0,0,0,0,15,226,255,255,208,0,0,0,0,15,224,27,255,244,0,0,0,0,15,224,0,127,240,0,0,0,0,15,224,0,6,208,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,208,0,0,0,0, + // 0x5370 印 + 112,83,30,35,24,37,4,253,0,0,9,0,0,0,0,0,0,1,191,64,0,0,0,0,0,31,255,209,85,85,85,80,134,255,255,131,255,255,255,240,255,255,244,3,255,255,255,240,255,254,0,3,255,255,255,240,255,128,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,255,255,255,195,248,0,7,240,255,255,255,195,248,0,7,240,255,255,255,195,248,0,7,240,254,85,85,67,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,253,0,0,3,248,0,7,240,255,255,255,195,248,26,175,240,255,255,255,195,248,15,255,240,255,255,255,195,248,11,255,208,253,85,85,67,248,7,254,64,253,0,0,3,248,0,0,0,253,0,0,3,248,0,0,0,84,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,2,164,0,0,0, + // 0x5378 卸 + 120,83,33,35,59,37,1,253,0,46,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,127,0,0,0,255,255,255,192,0,190,0,0,0,255,255,255,192,0,255,255,255,240,255,255,255,192,2,255,255,255,240,254,0,31,192,3,255,255,255,240,253,0,15,192,11,240,127,0,0,253,0,15,192,31,208,63,0,0,253,0,15,192,63,192,63,0,0,253,0,15,192,15,0,63,0,0,253,0,15,192,0,0,63,0,0,253,0,15,192,63,255,255,255,252,253,0,15,192,63,255,255,255,252,253,0,15,192,63,255,255,255,252,253,0,15,192,0,0,127,0,0,253,0,15,192,0,0,63,0,0,253,0,15,192,1,80,63,0,0,253,0,15,192,3,240,63,0,0,253,0,15,192,3,240,63,255,224,253,0,15,192,3,240,63,255,224,253,0,15,192,3,240,63,255,224,253,0,15,192,3,240,63,0,0,253,0,15,192,3,240,63,0,0,253,0,15,192,3,240,63,0,0,253,0,15,192,3,240,63,0,0,253,10,175,192,3,240,63,0,20,253,15,255,192,3,240,63,111,252,253,11,255,128,3,246,255,255,252,253,7,249,0,111,255,255,255,252,253,0,0,0,191,255,255,249,0,253,0,0,0,127,255,148,0,0,253,0,0,0,122,64,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0, + // 0x537b 卻 + 123,83,33,35,59,37,1,253,0,0,21,0,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,1,255,244,0,255,255,255,192,0,3,255,253,0,255,255,255,192,0,15,245,255,128,255,255,255,192,0,63,208,127,224,254,85,95,192,0,255,64,31,248,254,0,15,192,7,254,0,7,252,254,0,15,192,47,244,0,1,244,254,0,15,192,31,208,21,0,144,254,0,15,192,11,0,191,192,0,254,0,15,192,0,0,255,240,0,254,0,15,192,0,2,255,252,0,254,0,15,192,0,11,250,255,0,254,0,15,192,0,31,240,255,192,254,0,15,192,0,63,192,63,240,254,0,15,192,0,255,64,15,248,254,0,15,192,7,253,0,3,253,254,0,15,192,31,244,0,1,248,254,0,15,192,191,208,0,0,176,254,0,15,192,127,255,255,255,192,254,0,15,192,28,255,255,255,192,254,0,15,192,0,255,255,255,192,254,0,15,192,0,252,0,31,192,254,0,15,192,0,252,0,31,192,254,0,31,192,0,252,0,31,192,254,31,255,192,0,252,0,31,192,254,15,255,192,0,252,0,31,192,254,11,255,0,0,252,0,31,192,254,1,80,0,0,255,255,255,192,254,0,0,0,0,255,255,255,192,254,0,0,0,0,255,255,255,192,254,0,0,0,0,252,0,31,192,254,0,0,0,0,252,0,15,192,254,0,0,0,0,20,0,0,0,189,0,0,0, + // 0x539f 原 + 159,83,34,33,41,37,1,253,1,255,255,255,255,255,255,255,240,1,255,255,255,255,255,255,255,240,1,255,255,255,255,255,255,255,240,1,252,0,0,15,244,0,0,0,1,252,0,0,15,240,0,0,0,1,252,0,0,31,224,0,0,0,1,252,10,170,191,250,170,168,0,1,252,15,255,255,255,255,252,0,1,252,15,255,255,255,255,252,0,1,252,15,208,0,0,2,252,0,1,252,15,208,0,0,2,252,0,1,252,15,208,0,0,2,252,0,1,252,15,255,255,255,255,252,0,1,252,15,255,255,255,255,252,0,1,252,15,234,170,170,171,252,0,1,252,15,208,0,0,2,252,0,1,252,15,208,0,0,2,252,0,2,252,15,250,170,170,171,252,0,2,248,15,255,255,255,255,252,0,2,248,15,255,255,255,255,252,0,3,248,0,0,7,240,0,0,0,3,244,0,0,7,240,0,0,0,3,244,0,249,7,240,31,64,0,7,240,2,253,7,240,63,208,0,11,240,7,248,7,240,15,244,0,11,224,15,240,7,240,3,253,0,15,224,63,208,7,240,0,255,64,31,208,255,128,7,240,0,63,192,47,199,254,0,7,240,0,31,240,63,143,248,0,7,240,0,11,240,127,66,224,15,255,240,0,3,128,127,0,0,11,255,224,0,0,0,5,0,0,7,255,64,0,0,0, + // 0x53cd 反 + 205,83,33,33,41,37,2,253,0,85,85,85,85,85,85,84,0,0,255,255,255,255,255,255,253,0,0,255,255,255,255,255,255,253,0,0,255,255,255,255,255,255,253,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,192,0,0,254,111,229,85,85,127,192,0,0,254,15,240,0,0,191,64,0,0,253,11,244,0,0,255,0,0,0,253,3,252,0,2,254,0,0,0,253,2,253,0,3,252,0,0,0,252,0,255,0,11,248,0,0,1,252,0,191,128,31,240,0,0,1,252,0,63,208,63,208,0,0,2,252,0,31,240,255,128,0,0,3,248,0,11,255,255,0,0,0,3,244,0,3,255,252,0,0,0,7,240,0,0,255,244,0,0,0,11,240,0,2,255,248,0,0,0,15,224,0,31,255,255,64,0,0,31,208,0,191,254,255,244,0,0,63,192,47,255,208,127,255,144,0,127,71,255,254,0,11,255,255,64,255,7,255,240,0,1,255,255,64,61,2,254,0,0,0,11,254,0,8,0,208,0,0,0,0,108,0, + // 0x53d6 取 + 214,83,35,33,41,37,1,253,63,255,255,255,252,0,0,0,0,63,255,255,255,252,0,0,0,0,63,255,255,255,252,0,0,0,0,2,252,0,63,143,255,255,255,208,1,252,0,63,143,255,255,255,208,1,252,0,63,143,255,255,255,208,1,252,0,63,133,165,85,111,192,1,252,0,63,135,240,0,31,192,1,255,255,255,135,240,0,47,192,1,255,255,255,131,244,0,63,128,1,255,255,255,131,248,0,63,64,1,252,0,63,130,252,0,127,0,1,252,0,63,129,252,0,191,0,1,252,0,63,128,253,0,254,0,1,252,0,63,128,191,0,253,0,1,252,0,63,128,127,2,252,0,1,255,255,255,128,63,67,252,0,1,255,255,255,128,47,199,244,0,1,255,255,255,128,31,223,240,0,1,252,0,63,128,15,255,224,0,1,252,0,63,128,7,255,192,0,1,252,0,63,128,3,255,128,0,1,252,0,63,128,2,255,0,0,1,252,26,255,128,2,255,64,0,6,255,255,255,128,11,255,192,0,255,255,255,255,128,31,255,240,0,191,255,254,127,128,127,239,252,0,127,233,0,63,129,255,131,255,0,16,0,0,63,139,254,0,255,208,0,0,0,63,255,248,0,127,248,0,0,0,63,191,208,0,15,244,0,0,0,63,143,0,0,2,208,0,0,0,47,64,0,0,0,64, + // 0x53f0 台 + 240,83,33,35,59,37,2,253,0,0,1,228,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,31,240,0,6,0,0,0,0,0,63,208,0,47,192,0,0,0,0,127,128,0,63,244,0,0,0,0,255,0,0,11,253,0,0,0,2,253,0,0,2,255,64,0,0,3,252,0,0,0,191,208,0,0,11,249,106,171,255,255,240,0,127,255,255,255,255,255,255,252,0,127,255,255,255,255,255,255,255,0,127,255,255,255,250,169,85,255,128,37,84,0,0,0,0,0,127,192,0,0,0,0,0,0,0,47,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,21,85,85,85,85,85,0,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,0,0,0,0,127,64,0,0,127,0,0,0,0,127,64,0,0,127,0,0,0,0,127,64,0,0,127,0,0,0,0,127,64,0,0,127,0,0,0,0,127,64,0,0,127,0,0,0,0,127,64,0,0,127,0,0,0,0,127,64,0,0,127,0,0,0,0,127,64,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,85,85,85,85,191,64,0,0,127,0,0,0,0,127,64,0, + // 0x5408 合 + 8,84,35,35,59,37,1,253,0,0,0,2,253,0,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,31,255,192,0,0,0,0,0,0,63,255,240,0,0,0,0,0,0,255,143,248,0,0,0,0,0,3,255,3,255,0,0,0,0,0,15,252,0,255,192,0,0,0,0,63,240,0,63,240,0,0,0,1,255,192,0,15,253,0,0,0,7,255,0,0,3,255,128,0,0,47,252,0,0,0,191,244,0,1,255,224,0,0,0,31,254,0,15,255,255,255,255,255,255,255,224,127,254,191,255,255,255,248,191,248,63,244,191,255,255,255,248,31,240,31,64,0,0,0,0,0,3,208,4,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,192,0,0,15,255,255,255,255,255,192,0,0,15,255,255,255,255,255,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,255,255,255,255,255,192,0,0,15,255,255,255,255,255,192,0,0,15,255,255,255,255,255,192,0,0,15,224,0,0,0,47,192,0,0,11,208,0,0,0,31,192,0, + // 0x5426 否 + 38,84,34,33,41,37,1,253,31,255,255,255,255,255,255,255,208,31,255,255,255,255,255,255,255,208,31,255,255,255,255,255,255,255,208,0,0,0,0,191,224,0,0,0,0,0,0,1,255,128,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,255,252,15,128,0,0,0,0,7,255,252,63,248,0,0,0,0,127,254,252,47,255,64,0,0,2,255,241,252,2,255,240,0,0,47,255,65,252,0,127,254,0,7,255,252,1,252,0,7,255,192,127,255,208,1,252,0,0,191,240,63,254,0,1,252,0,0,31,224,15,224,0,1,252,0,0,3,192,5,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,240,0,0,47,255,255,255,255,255,240,0,0,47,255,255,255,255,255,240,0,0,47,192,0,0,0,15,240,0,0,47,192,0,0,0,15,240,0,0,47,192,0,0,0,15,240,0,0,47,192,0,0,0,15,240,0,0,47,192,0,0,0,15,240,0,0,47,192,0,0,0,15,240,0,0,47,255,255,255,255,255,240,0,0,47,255,255,255,255,255,240,0,0,47,255,255,255,255,255,240,0,0,47,192,0,0,0,15,240,0,0,31,192,0,0,0,10,160,0, + // 0x544a 告 + 74,84,33,36,68,37,2,252,0,2,64,1,252,0,0,0,0,0,11,240,1,252,0,0,0,0,0,15,224,1,252,0,0,0,0,0,31,208,1,252,0,0,0,0,0,63,192,1,252,0,0,0,0,0,127,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,2,255,255,255,255,255,255,240,0,7,252,0,2,253,0,0,0,0,15,240,0,1,252,0,0,0,0,63,224,0,1,252,0,0,0,0,63,192,0,1,252,0,0,0,0,7,0,0,1,252,0,0,0,0,1,0,0,2,253,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,128,0,0,63,255,255,255,255,255,128,0,0,63,255,255,255,255,255,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,63,255,255,255,255,255,128,0,0,63,255,255,255,255,255,128,0,0,63,255,255,255,255,255,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,0,0,0,0,0,0,0,0, + // 0x547d 命 + 125,84,35,36,68,37,1,252,0,0,0,3,253,0,0,0,0,0,0,0,11,255,64,0,0,0,0,0,0,47,255,208,0,0,0,0,0,0,191,239,244,0,0,0,0,0,2,255,75,254,0,0,0,0,0,11,254,2,255,128,0,0,0,0,47,248,0,191,240,0,0,0,0,255,208,0,47,253,0,0,0,11,255,64,0,7,255,192,0,0,63,253,0,0,1,255,248,0,2,255,223,255,255,255,223,255,128,47,255,15,255,255,255,194,255,248,255,248,15,255,255,255,192,127,252,127,192,0,0,0,0,0,11,240,45,0,0,0,0,0,0,0,208,0,0,0,0,0,0,0,0,0,0,255,255,254,11,255,255,253,0,0,255,255,254,11,255,255,253,0,0,255,255,254,11,255,255,253,0,0,252,0,126,11,224,0,253,0,0,252,0,126,11,224,0,253,0,0,252,0,126,11,224,0,253,0,0,252,0,126,11,224,0,253,0,0,252,0,126,11,224,0,253,0,0,252,0,126,11,224,0,253,0,0,252,0,126,11,224,0,253,0,0,255,255,254,11,224,0,253,0,0,255,255,254,11,224,0,253,0,0,255,255,254,11,224,255,253,0,0,252,0,0,11,224,255,252,0,0,252,0,0,11,224,191,224,0,0,252,0,0,11,224,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x548c 和 + 140,84,33,35,59,37,1,253,0,0,0,4,0,0,0,0,0,0,0,1,190,0,0,0,0,0,0,1,191,255,128,0,0,0,0,22,255,255,255,129,85,85,85,0,47,255,255,144,11,255,255,255,64,15,255,253,0,11,255,255,255,64,4,0,253,0,11,255,255,255,64,0,0,253,0,11,224,0,63,64,0,0,253,0,11,224,0,63,64,0,0,253,0,11,224,0,63,64,0,0,253,0,11,224,0,63,64,63,255,255,255,203,224,0,63,64,63,255,255,255,203,224,0,63,64,63,255,255,255,203,224,0,63,64,0,7,253,0,11,224,0,63,64,0,11,254,0,11,224,0,63,64,0,15,255,128,11,224,0,63,64,0,31,255,208,11,224,0,63,64,0,63,255,244,11,224,0,63,64,0,127,255,252,11,224,0,63,64,0,253,253,255,11,224,0,63,64,1,252,253,63,139,224,0,63,64,3,244,253,31,203,224,0,63,64,11,240,253,15,75,224,0,63,64,31,208,253,2,11,224,0,63,64,63,192,253,0,11,224,0,63,64,191,64,253,0,11,245,85,127,64,126,0,253,0,11,255,255,255,64,60,0,253,0,11,255,255,255,64,0,0,253,0,11,255,255,255,64,0,0,253,0,11,224,0,63,64,0,0,253,0,11,224,0,63,64,0,0,253,0,11,224,0,63,64,0,0,253,0,0,0,0,0,0,0,0,252,0,0,0,0,0,0, + // 0x555f 啟 + 95,85,35,36,68,37,1,252,0,0,104,0,0,2,228,0,0,0,0,252,0,0,2,248,0,0,0,0,254,0,0,3,244,0,0,0,0,127,0,0,3,240,0,0,0,0,63,64,0,7,240,0,0,3,255,255,255,224,7,240,0,0,3,255,255,255,224,15,224,0,0,3,255,255,255,224,15,255,255,244,3,240,0,7,224,31,255,255,244,3,240,0,7,224,47,255,255,244,3,240,0,7,224,63,128,47,128,3,240,0,7,224,127,128,63,64,3,240,0,7,224,255,128,63,64,3,255,255,255,225,255,192,63,0,3,255,255,255,227,255,192,127,0,3,255,255,255,231,255,208,127,0,3,240,0,0,7,247,208,190,0,3,240,0,0,1,211,240,253,0,3,240,0,0,0,67,240,252,0,3,240,0,0,0,2,245,252,0,7,247,255,255,240,1,250,248,0,7,251,255,255,240,0,255,244,0,7,235,255,255,240,0,191,240,0,11,235,208,3,240,0,127,224,0,15,219,208,3,240,0,63,192,0,15,219,208,3,240,0,63,192,0,15,203,208,3,240,0,191,208,0,31,203,208,3,240,1,255,240,0,47,139,208,3,240,3,255,252,0,63,75,255,255,240,15,245,254,0,127,11,255,255,240,63,224,255,64,190,11,255,255,240,255,192,63,224,45,11,208,3,247,255,0,31,248,4,11,208,3,242,248,0,3,240,0,1,64,0,0,208,0,0,128,0,0,0,0,0,0,0,0,0, + // 0x55ae 單 + 174,85,33,33,41,37,2,253,7,255,255,253,15,255,255,248,0,7,255,255,253,15,255,255,248,0,7,240,0,253,15,192,2,248,0,7,240,0,253,15,192,2,248,0,7,240,0,253,15,192,3,248,0,7,255,255,253,15,255,255,248,0,7,255,255,253,15,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,255,170,175,254,170,175,224,0,0,252,0,7,240,0,15,224,0,0,252,0,7,240,0,15,224,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,254,170,171,250,170,175,224,0,0,252,0,7,240,0,15,224,0,0,252,0,7,240,0,15,224,0,0,255,170,175,254,170,175,224,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0, + // 0x5634 嘴 + 52,86,34,36,68,37,2,252,0,0,0,1,244,3,224,0,0,0,0,0,1,244,3,224,0,0,0,0,1,145,244,3,224,24,0,127,255,210,241,244,3,225,255,0,127,255,210,241,255,243,255,253,0,127,255,210,241,255,243,255,208,0,125,7,210,241,249,83,253,0,0,125,7,210,241,244,3,224,0,0,125,7,210,241,244,3,224,3,64,125,7,210,241,245,103,224,3,208,125,7,210,251,255,247,240,7,208,125,7,239,255,255,243,255,255,192,125,7,239,255,254,2,255,255,128,125,7,223,149,252,0,90,165,0,125,7,208,3,255,255,224,0,0,125,7,208,11,255,255,244,0,0,125,7,208,47,213,95,224,0,0,125,7,208,191,64,47,192,0,0,125,7,211,255,255,255,255,253,0,125,7,255,255,255,255,255,253,0,125,7,255,255,85,190,85,253,0,127,255,219,127,0,125,0,189,0,127,255,208,63,0,125,0,189,0,127,255,208,63,255,255,255,253,0,125,0,0,63,255,255,255,253,0,125,0,0,63,0,125,0,189,0,125,0,0,127,0,125,0,189,0,0,0,0,191,255,255,255,253,0,0,0,0,255,255,255,255,253,0,0,0,1,253,85,85,85,253,0,0,0,3,248,0,0,0,189,0,0,0,15,240,0,0,0,189,0,0,0,63,224,0,0,150,253,0,0,0,127,128,0,0,255,252,0,0,0,14,0,0,0,191,228,0,0,0,0,0,0,0,0,0,0, + // 0x5668 器 + 104,86,35,34,50,37,1,252,2,255,255,254,2,255,255,254,0,2,255,255,254,2,255,255,254,0,2,255,255,254,2,255,255,254,0,2,248,0,190,2,248,0,190,0,2,248,0,190,2,248,0,190,0,2,248,0,190,2,248,0,190,0,2,248,0,190,2,248,0,190,0,2,254,170,254,2,254,170,254,0,2,255,255,254,2,255,255,254,0,2,255,255,255,226,255,255,254,0,0,0,0,7,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,47,224,0,0,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,0,0,47,244,0,127,192,0,0,0,1,255,224,0,47,244,0,0,0,11,255,128,0,11,255,0,0,0,191,253,0,0,1,255,224,0,11,255,240,0,0,0,127,255,64,191,255,255,255,3,255,255,255,248,63,255,255,255,3,255,255,255,244,30,255,255,255,3,255,255,255,224,0,252,0,127,3,240,0,252,0,0,252,0,127,3,240,0,252,0,0,252,0,127,3,240,0,252,0,0,252,0,127,3,240,0,252,0,0,252,0,127,3,240,0,252,0,0,255,255,255,3,255,255,252,0,0,255,255,255,3,255,255,252,0,0,255,255,255,3,255,255,252,0,0,252,0,127,3,240,0,252,0,0,0,0,0,0,0,0,0,0, + // 0x5674 噴 + 116,86,33,36,68,37,3,252,0,0,0,0,1,248,0,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,2,248,0,0,0,0,0,2,255,255,255,255,252,0,255,255,194,255,255,255,255,252,0,255,255,193,85,86,253,85,84,0,255,255,192,10,130,248,42,0,0,248,15,192,15,194,248,63,0,0,248,11,192,15,192,0,63,0,0,248,11,223,255,255,255,255,255,128,248,11,223,255,255,255,255,255,128,248,11,213,95,213,85,127,85,0,248,11,192,15,192,0,63,0,0,248,11,192,5,64,0,21,0,0,248,11,192,255,255,255,255,240,0,248,11,192,255,255,255,255,240,0,248,11,192,252,0,0,3,240,0,248,11,192,252,0,0,3,240,0,248,11,192,255,255,255,255,240,0,248,11,192,255,255,255,255,240,0,248,11,192,252,0,0,3,240,0,255,255,192,252,0,0,3,240,0,255,255,192,252,0,0,3,240,0,255,255,192,255,255,255,255,240,0,248,0,0,255,255,255,255,240,0,248,0,0,252,0,0,3,240,0,248,0,0,252,0,0,3,240,0,0,0,0,255,255,255,255,240,0,0,0,0,255,255,255,255,240,0,0,0,0,3,224,1,244,0,0,0,0,0,47,248,3,255,64,0,0,0,11,255,208,0,191,244,0,0,1,255,253,0,0,11,254,0,0,0,191,208,0,0,1,255,64,0,0,45,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0, + // 0x56de 回 + 222,86,31,34,16,37,3,253,85,85,85,85,85,85,85,84,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,255,255,255,248,2,252,254,0,255,255,255,248,2,252,254,0,255,255,255,248,2,252,254,0,253,0,3,248,2,252,254,0,253,0,3,248,2,252,254,0,253,0,3,248,2,252,254,0,253,0,3,248,2,252,254,0,253,0,3,248,2,252,254,0,253,0,3,248,2,252,254,0,253,0,3,248,2,252,254,0,253,0,3,248,2,252,254,0,255,255,255,248,2,252,254,0,255,255,255,248,2,252,254,0,255,255,255,248,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,3,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252, + // 0x56e0 因 + 224,86,31,34,16,37,3,253,85,85,85,85,85,85,85,84,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,253,0,0,0,0,0,2,252,253,0,0,10,128,0,2,252,253,0,0,31,192,0,2,252,253,0,0,31,192,0,2,252,253,0,0,31,192,0,2,252,253,0,0,31,192,0,2,252,253,0,0,31,128,0,2,252,253,47,255,255,255,255,226,252,253,47,255,255,255,255,226,252,253,47,255,255,255,255,226,252,253,0,0,63,224,0,2,252,253,0,0,63,240,0,2,252,253,0,0,191,244,0,2,252,253,0,0,255,248,0,2,252,253,0,1,253,252,0,2,252,253,0,3,252,191,0,2,252,253,0,7,244,63,128,2,252,253,0,31,240,47,208,2,252,253,0,127,192,15,248,2,252,253,2,255,64,7,255,66,252,253,47,253,0,1,255,242,252,253,47,244,0,0,127,210,252,253,15,128,0,0,11,130,252,253,0,0,0,0,0,2,252,253,0,0,0,0,0,2,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,254,85,85,85,85,85,86,252,253,0,0,0,0,0,2,252, + // 0x56fa 固 + 250,86,31,33,8,37,3,253,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,254,0,0,0,0,0,2,252,254,0,0,10,128,0,2,252,254,0,0,15,192,0,2,252,254,0,0,15,192,0,2,252,254,0,0,15,192,0,2,252,254,15,255,255,255,255,210,252,254,31,255,255,255,255,226,252,254,31,255,255,255,255,226,252,254,0,0,15,192,0,2,252,254,0,0,15,192,0,2,252,254,0,0,15,192,0,2,252,254,0,0,15,192,0,2,252,254,0,255,255,255,253,2,252,254,0,255,255,255,253,2,252,254,0,254,170,170,253,2,252,254,0,252,0,0,189,2,252,254,0,252,0,0,189,2,252,254,0,252,0,0,189,2,252,254,0,252,0,0,189,2,252,254,0,254,170,170,253,2,252,254,0,255,255,255,253,2,252,254,0,255,255,255,253,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,254,0,0,0,0,0,2,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,254,0,0,0,0,0,3,252,254,0,0,0,0,0,2,252, + // 0x5716 圖 + 22,87,31,35,24,37,3,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,253,0,0,0,0,0,1,252,253,0,0,0,0,0,1,252,253,0,255,255,255,252,1,252,253,0,255,255,255,252,1,252,253,0,252,0,0,252,1,252,253,0,252,0,0,252,1,252,253,0,255,255,255,252,1,252,253,0,255,255,255,248,1,252,253,0,0,15,192,0,1,252,253,63,255,255,255,255,245,252,253,63,255,255,255,255,245,252,253,0,0,0,0,0,1,252,253,0,0,0,0,0,1,252,253,3,255,255,255,255,1,252,253,3,255,255,255,255,1,252,253,3,224,0,0,63,1,252,253,3,225,170,168,63,1,252,253,3,225,255,252,63,1,252,253,3,225,224,60,63,1,252,253,3,225,224,60,63,1,252,253,3,225,255,252,63,1,252,253,3,225,170,168,63,1,252,253,3,224,0,0,63,1,252,253,3,255,255,255,255,1,252,253,3,255,255,255,255,1,252,253,0,0,0,0,0,1,252,253,0,0,0,0,0,1,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,253,0,0,0,0,0,1,252,0,0,0,0,0,0,0,0, + // 0x5728 在 + 40,87,34,35,59,37,1,253,0,0,0,57,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,5,85,86,253,85,85,85,85,64,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,0,0,31,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,64,0,63,64,0,0,0,0,255,0,0,63,64,0,0,0,2,253,0,0,63,64,0,0,0,7,252,0,0,63,64,0,0,0,15,240,0,0,63,64,0,0,0,63,224,0,0,63,64,0,0,0,255,208,0,0,127,64,0,0,3,255,208,63,255,255,255,255,0,15,255,208,63,255,255,255,255,0,127,255,208,63,255,255,255,255,0,127,223,208,0,0,63,64,0,0,47,15,208,0,0,63,64,0,0,8,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,127,64,0,0,0,15,209,255,255,255,255,255,224,0,15,209,255,255,255,255,255,224,0,15,209,255,255,255,255,255,224,0,15,208,0,0,0,0,0,0, + // 0x578b 型 + 139,87,33,34,50,37,2,254,0,0,0,0,0,0,0,84,0,0,0,0,0,0,0,0,252,0,31,255,255,255,244,63,0,252,0,31,255,255,255,244,63,0,252,0,31,255,255,255,244,63,0,252,0,0,63,0,253,0,63,0,252,0,0,63,0,253,0,63,0,252,0,0,63,0,253,0,63,0,252,0,0,63,0,253,0,63,0,252,0,191,255,255,255,252,63,0,252,0,191,255,255,255,252,63,0,252,0,191,255,255,255,252,63,0,252,0,0,191,0,253,0,63,0,252,0,0,254,0,253,0,63,0,252,0,0,253,0,253,0,63,0,252,0,3,252,0,253,0,0,0,252,0,11,244,0,253,0,0,0,252,0,47,240,0,253,0,0,1,252,0,191,192,0,253,0,3,255,252,0,63,0,0,254,160,1,255,248,0,8,0,0,3,244,0,255,144,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,0,0,0,7,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,7,244,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x57f7 執 + 247,87,35,36,68,37,1,252,0,2,244,0,0,47,64,0,0,0,2,248,0,0,63,64,0,0,0,2,248,0,0,63,64,0,0,0,2,248,0,0,63,64,0,0,15,255,255,254,0,63,64,0,0,15,255,255,254,0,63,64,0,0,15,255,255,254,0,63,64,0,0,0,2,248,0,0,63,128,0,0,0,2,248,0,127,255,255,253,0,0,2,248,0,127,255,255,253,0,127,255,255,255,255,255,255,253,0,127,255,255,255,192,63,64,252,0,127,255,255,255,192,63,64,252,0,2,240,0,252,0,63,64,252,0,2,244,0,252,0,63,64,252,0,0,248,2,244,16,63,64,252,0,0,252,3,240,62,63,0,252,0,0,188,3,208,191,255,0,252,0,63,255,255,255,175,255,0,252,0,63,255,255,255,135,255,0,252,0,63,255,255,255,128,255,192,252,0,0,2,248,0,0,255,240,252,0,0,2,248,0,0,255,252,252,0,0,2,248,0,1,255,255,252,0,0,2,248,0,2,252,254,253,0,31,255,255,255,3,244,60,253,0,31,255,255,255,11,240,4,189,32,31,255,255,255,15,224,0,189,56,0,2,248,0,63,192,0,126,60,0,2,248,0,191,128,0,127,60,0,2,248,1,255,0,0,63,60,0,2,248,7,252,0,0,63,252,0,2,248,47,244,0,0,31,248,0,2,248,15,208,0,0,15,240,0,2,244,2,64,0,0,3,224,0,0,0,0,0,0,0,0,0, + // 0x584a 塊 + 74,88,35,35,59,37,1,253,0,42,64,0,0,126,64,0,0,0,63,64,0,0,191,64,0,0,0,63,64,0,0,255,0,0,0,0,63,64,0,0,253,0,0,0,0,63,64,63,255,255,255,255,192,0,63,64,63,255,255,255,255,192,0,63,64,63,255,255,255,255,192,0,63,64,63,0,63,64,31,192,63,255,255,63,0,63,64,31,192,63,255,255,63,0,63,64,31,192,63,255,255,63,170,191,170,191,192,21,127,148,63,255,255,255,255,192,0,63,64,63,255,255,255,255,192,0,63,64,63,0,63,64,31,192,0,63,64,63,0,63,64,31,192,0,63,64,63,0,63,64,31,192,0,63,64,63,0,63,64,31,192,0,63,64,63,255,255,255,255,192,0,63,64,63,255,255,255,255,192,0,63,64,63,255,255,255,255,192,0,63,66,0,254,15,193,144,0,0,63,191,64,253,15,195,224,0,0,127,255,192,253,15,195,210,64,11,255,254,0,253,15,195,199,192,191,255,208,1,252,15,199,195,208,127,249,0,2,252,15,223,239,240,63,128,0,3,248,15,239,255,240,36,0,0,7,244,15,222,148,224,0,0,0,31,240,15,192,0,64,0,0,0,127,208,15,192,1,244,0,0,2,255,128,15,192,2,248,0,0,127,254,0,15,255,255,244,0,0,63,248,0,11,255,255,240,0,0,47,192,0,2,255,255,128,0,0,8,0,0,0,0,0,0, + // 0x586b 填 + 107,88,35,35,59,37,1,253,0,21,0,0,0,63,64,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,255,255,255,255,255,240,0,63,0,255,255,255,255,255,240,0,63,0,255,255,255,255,255,240,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,7,255,255,255,253,0,63,255,255,7,255,255,255,253,0,63,255,255,7,240,0,0,253,0,63,255,255,7,240,0,0,253,0,21,127,84,7,255,255,255,253,0,0,63,0,7,255,255,255,253,0,0,63,0,7,240,0,0,253,0,0,63,0,7,240,0,0,253,0,0,63,0,7,240,0,0,253,0,0,63,0,7,255,255,255,253,0,0,63,0,7,255,255,255,253,0,0,63,0,7,240,0,0,253,0,0,63,0,7,240,0,0,253,0,0,63,75,71,255,255,255,253,0,0,63,255,135,255,255,255,253,0,0,127,255,128,0,0,0,0,0,7,255,253,0,0,0,0,0,0,127,255,211,255,255,255,255,255,248,127,253,3,255,255,255,255,255,248,63,128,3,255,255,255,255,255,244,40,0,0,0,41,0,10,0,0,0,0,0,0,255,128,63,208,0,0,0,0,11,254,0,31,252,0,0,0,1,191,244,0,2,255,64,0,0,15,255,128,0,0,127,224,0,0,3,253,0,0,0,15,244,0,0,0,208,0,0,0,2,64, + // 0x588a 墊 + 138,88,35,34,50,37,1,254,0,1,248,0,0,10,64,0,0,0,2,248,0,0,15,128,0,0,5,86,249,85,0,15,128,0,0,15,255,255,255,0,15,128,0,0,15,255,255,255,0,15,128,0,0,0,2,248,0,15,255,255,252,0,0,2,248,0,15,255,255,252,0,127,255,255,255,213,111,255,252,0,127,255,255,255,208,31,128,252,0,22,245,86,249,64,31,128,252,0,1,244,1,244,9,47,128,252,0,0,248,3,240,31,255,64,252,0,21,253,91,229,127,255,0,252,0,63,255,255,255,215,255,64,252,0,63,255,255,255,208,191,224,252,0,0,2,248,0,0,255,252,252,0,0,2,248,0,2,254,253,252,32,15,255,255,255,3,244,116,252,56,15,255,255,255,15,240,0,189,124,5,86,253,85,63,192,0,126,120,0,2,248,0,255,64,0,63,244,0,2,248,0,253,0,0,47,240,0,2,248,0,188,0,0,11,208,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,191,255,255,255,255,255,244,0,0,191,255,255,255,255,255,244,0,0,127,255,255,255,255,255,244,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240, + // 0x5916 外 + 22,89,35,35,59,37,1,253,0,0,121,0,0,1,252,0,0,0,0,191,0,0,1,252,0,0,0,0,254,0,0,1,252,0,0,0,1,253,0,0,1,252,0,0,0,2,252,0,0,1,252,0,0,0,3,252,0,80,1,252,0,0,0,7,255,255,253,1,252,0,0,0,15,255,255,253,1,252,0,0,0,31,255,255,253,1,252,0,0,0,47,192,1,254,129,252,0,0,0,127,128,2,255,209,252,0,0,0,255,0,3,255,241,252,0,0,1,254,0,3,251,249,252,0,0,3,252,0,7,241,255,252,0,0,15,254,0,11,240,191,252,0,0,63,255,208,15,224,63,252,0,0,191,255,248,31,192,31,252,0,0,127,75,255,47,192,7,253,0,0,13,1,255,255,128,2,255,64,0,0,0,63,255,0,1,255,224,0,0,0,11,254,0,1,255,248,0,0,0,3,252,0,1,255,255,64,0,0,3,248,0,1,254,255,244,0,0,15,240,0,1,252,127,252,0,0,47,224,0,1,252,15,240,0,0,127,192,0,1,252,1,208,0,0,255,64,0,1,252,0,0,0,3,254,0,0,1,252,0,0,0,15,252,0,0,1,252,0,0,0,127,240,0,0,1,252,0,0,2,255,192,0,0,1,252,0,0,31,255,0,0,0,1,252,0,0,47,248,0,0,0,1,252,0,0,7,208,0,0,0,1,252,0,0,1,0,0,0,0,1,252,0,0, + // 0x591a 多 + 26,89,33,35,59,37,2,253,0,0,0,15,144,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,7,255,255,255,240,0,0,0,0,47,255,255,255,252,0,0,0,1,255,255,255,255,248,0,0,0,31,254,0,0,15,240,0,0,1,255,253,0,0,63,208,0,0,47,255,255,128,0,255,64,0,0,31,248,127,248,7,253,0,0,0,11,64,11,255,47,244,0,0,0,0,0,0,255,255,192,0,0,0,0,0,0,63,255,64,0,0,0,0,0,1,255,246,254,0,0,0,0,0,47,255,139,252,0,0,0,0,7,255,248,47,240,0,0,0,26,255,255,128,255,255,255,253,0,127,255,244,7,255,255,255,255,64,47,254,0,127,255,255,255,255,0,14,64,2,255,208,0,2,253,0,0,0,111,255,0,0,7,252,0,0,11,255,255,64,0,15,244,0,0,63,255,255,240,0,63,208,0,0,47,244,31,253,0,255,128,0,0,14,0,2,255,135,255,0,0,0,0,0,0,127,255,252,0,0,0,0,0,0,31,255,224,0,0,0,0,0,0,15,255,128,0,0,0,0,0,1,255,252,0,0,0,0,0,0,111,255,224,0,0,0,0,0,91,255,254,0,0,0,0,1,175,255,255,224,0,0,0,0,1,255,255,249,0,0,0,0,0,0,255,254,64,0,0,0,0,0,0,121,64,0,0,0,0,0,0, + // 0x5920 夠 + 32,89,33,35,59,37,2,253,0,6,64,0,0,144,0,0,0,0,15,208,0,1,252,0,0,0,0,47,192,0,3,248,0,0,0,0,63,64,0,3,244,0,0,0,0,255,255,248,7,240,0,0,0,2,255,255,252,15,224,0,0,0,11,255,255,248,31,255,255,255,128,47,208,3,240,63,255,255,255,64,255,64,15,224,127,255,255,255,64,253,116,47,192,254,0,0,47,64,33,254,127,66,252,0,0,47,64,0,127,254,11,244,0,0,47,64,0,31,248,15,250,170,168,47,64,0,63,224,7,207,255,252,47,64,2,255,248,0,15,255,252,47,64,47,254,252,0,15,128,252,63,64,191,227,244,0,15,128,252,63,64,63,75,255,254,15,128,252,63,64,20,47,255,255,79,128,252,63,64,0,127,255,255,15,128,252,63,0,2,253,0,127,15,128,252,63,0,11,248,0,253,15,128,252,63,0,63,224,1,252,15,128,252,63,0,255,136,3,244,15,234,252,63,0,189,63,75,240,15,255,252,63,0,32,47,239,208,15,255,252,63,0,0,7,255,128,15,128,0,63,0,0,2,255,0,15,128,0,127,0,0,11,252,0,10,64,0,126,0,0,127,240,0,0,0,0,190,0,6,255,192,0,0,0,0,253,0,191,254,0,0,0,3,255,252,0,255,240,0,0,0,2,255,248,0,127,64,0,0,0,2,255,224,0,32,0,0,0,0,0,0,0,0, + // 0x5927 大 + 39,89,33,35,59,37,2,253,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,15,240,0,0,0,0,106,170,170,175,250,170,170,170,64,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,47,253,0,0,0,0,0,0,0,63,255,0,0,0,0,0,0,0,63,255,0,0,0,0,0,0,0,191,191,128,0,0,0,0,0,0,255,63,192,0,0,0,0,0,0,254,31,208,0,0,0,0,0,2,253,15,240,0,0,0,0,0,3,252,11,248,0,0,0,0,0,11,248,3,253,0,0,0,0,0,31,240,2,255,0,0,0,0,0,63,224,0,255,128,0,0,0,0,255,192,0,127,208,0,0,0,2,255,64,0,47,244,0,0,0,11,254,0,0,15,253,0,0,0,63,248,0,0,3,255,64,0,1,255,224,0,0,0,255,224,0,11,255,128,0,0,0,63,253,0,191,254,0,0,0,0,31,255,192,191,244,0,0,0,0,3,255,128,47,128,0,0,0,0,0,190,0,8,0,0,0,0,0,0,8,0, + // 0x5929 天 + 41,89,34,33,41,37,2,252,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,106,170,170,175,250,170,170,170,64,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,21,85,85,95,245,85,85,85,0,47,255,255,255,255,255,255,254,0,47,255,255,255,255,255,255,254,0,47,255,255,255,255,255,255,254,0,0,0,0,15,252,0,0,0,0,0,0,0,31,254,0,0,0,0,0,0,0,63,255,0,0,0,0,0,0,0,63,255,128,0,0,0,0,0,0,191,127,192,0,0,0,0,0,1,255,31,224,0,0,0,0,0,3,254,15,248,0,0,0,0,0,15,252,7,253,0,0,0,0,0,63,244,2,255,0,0,0,0,0,255,224,0,255,208,0,0,0,7,255,128,0,63,248,0,0,0,127,254,0,0,15,255,64,0,6,255,244,0,0,3,255,244,0,191,255,192,0,0,0,191,255,208,255,253,0,0,0,0,31,255,192,127,208,0,0,0,0,2,255,64,41,0,0,0,0,0,0,26,0,0,0,0,0,0,0,0,0,0, + // 0x5931 失 + 49,89,34,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,15,224,7,240,0,0,0,0,0,15,224,7,240,0,0,0,0,0,47,208,7,240,0,0,0,0,0,63,192,7,240,0,0,0,0,0,127,128,7,240,0,0,0,0,0,191,149,91,249,85,85,80,0,0,255,255,255,255,255,255,240,0,2,255,255,255,255,255,255,240,0,3,255,255,255,255,255,255,240,0,11,244,0,7,240,0,0,0,0,31,240,0,7,240,0,0,0,0,63,208,0,11,240,0,0,0,0,191,192,0,11,240,0,0,0,0,31,0,0,11,240,0,0,0,0,1,0,0,11,240,0,0,0,0,0,0,0,15,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,85,85,85,127,255,85,85,85,64,0,0,0,63,255,0,0,0,0,0,0,0,191,255,128,0,0,0,0,0,0,255,47,192,0,0,0,0,0,3,254,15,240,0,0,0,0,0,11,252,11,252,0,0,0,0,0,47,244,3,255,0,0,0,0,0,255,224,0,255,192,0,0,0,7,255,128,0,127,244,0,0,0,47,254,0,0,31,255,0,0,2,255,244,0,0,7,255,228,0,127,255,192,0,0,0,191,255,208,255,253,0,0,0,0,31,255,208,63,208,0,0,0,0,1,255,128,40,0,0,0,0,0,0,27,0, + // 0x59cb 始 + 203,89,35,35,59,37,1,253,0,15,128,0,0,42,64,0,0,0,31,192,0,0,63,192,0,0,0,31,192,0,0,63,128,0,0,0,47,128,0,0,127,64,0,0,0,63,64,0,0,191,0,0,0,0,63,0,0,0,254,0,0,0,0,63,0,0,0,253,0,160,0,0,191,0,0,2,252,3,244,0,127,255,255,248,3,248,2,252,0,127,255,255,248,3,240,0,254,0,127,255,255,244,11,240,0,127,64,1,252,3,244,15,208,0,63,192,1,248,3,240,31,214,171,255,208,2,248,3,247,255,255,255,255,240,3,244,7,243,255,255,255,255,244,3,240,7,243,255,255,170,87,252,7,240,11,225,64,0,0,1,248,11,224,15,208,0,0,0,0,128,15,208,15,208,0,0,0,0,0,15,192,31,192,0,0,0,0,0,31,208,47,192,63,255,255,255,192,47,248,63,128,63,255,255,255,192,63,255,191,0,63,255,255,255,192,63,255,255,0,63,64,0,31,192,6,31,254,0,63,64,0,31,192,0,3,255,64,63,64,0,31,192,0,7,255,208,63,64,0,31,192,0,15,255,248,63,64,0,31,192,0,63,215,253,63,64,0,31,192,0,191,128,252,63,64,0,31,192,3,255,0,112,63,255,255,255,192,31,252,0,0,63,255,255,255,192,47,240,0,0,63,255,255,255,192,15,128,0,0,63,64,0,31,192,6,0,0,0,63,64,0,26,128, + // 0x5a92 媒 + 146,90,35,35,59,37,1,253,0,46,64,0,126,0,1,248,0,0,63,64,0,126,0,2,248,0,0,63,0,0,126,0,2,248,0,0,127,0,0,126,0,2,248,0,0,127,0,63,255,255,255,255,240,0,190,0,63,255,255,255,255,240,0,253,0,63,255,255,255,255,240,0,253,0,0,126,0,2,248,0,127,255,255,208,126,0,2,248,0,127,255,255,192,126,0,2,248,0,127,255,255,192,127,255,255,248,0,2,244,15,192,127,255,255,248,0,3,244,15,192,127,170,171,248,0,3,240,31,192,126,0,2,248,0,7,240,31,128,126,0,2,248,0,11,224,47,128,127,255,255,248,0,11,208,47,64,127,255,255,248,0,15,192,63,64,127,255,255,248,0,15,192,63,0,0,15,192,0,0,31,192,127,0,0,15,192,0,0,47,224,190,0,0,15,192,0,0,63,252,253,63,255,255,255,255,244,63,255,252,63,255,255,255,255,244,11,127,252,63,255,255,255,255,244,0,31,248,0,1,255,253,0,0,0,11,253,0,3,255,255,0,0,0,15,255,64,15,255,255,192,0,0,47,255,192,63,207,203,240,0,0,127,159,209,255,79,195,253,0,1,255,11,135,253,15,192,255,64,7,253,2,127,244,15,192,127,240,47,248,0,255,208,15,192,31,244,63,224,0,127,64,15,192,7,224,15,64,0,40,0,15,192,0,128,5,0,0,0,0,15,192,0,0, + // 0x5b50 子 + 80,91,33,34,50,37,2,252,0,85,85,85,85,85,85,0,0,1,255,255,255,255,255,255,192,0,1,255,255,255,255,255,255,240,0,1,255,255,255,255,255,255,192,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,255,224,0,0,0,0,0,0,11,255,64,0,0,0,0,0,1,127,252,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,85,85,85,91,249,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,1,149,95,244,0,0,0,0,0,0,255,255,240,0,0,0,0,0,0,191,255,224,0,0,0,0,0,0,127,254,64,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5b58 存 + 88,91,35,35,59,37,1,253,0,0,0,57,0,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,253,0,0,0,0,0,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,5,85,95,245,85,85,85,85,64,0,0,47,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,1,255,7,255,255,255,248,0,0,3,253,7,255,255,255,255,0,0,11,248,7,255,255,255,252,0,0,31,240,0,0,0,31,244,0,0,63,208,0,0,0,127,208,0,0,255,208,0,0,1,255,64,0,3,255,208,0,0,27,252,0,0,15,255,208,0,0,31,240,0,0,127,255,208,0,0,31,192,0,0,127,223,208,0,0,47,192,0,0,63,15,209,255,255,255,255,255,244,28,15,209,255,255,255,255,255,244,0,15,209,255,255,255,255,255,244,0,15,208,0,0,31,192,0,0,0,15,208,0,0,31,192,0,0,0,15,208,0,0,31,192,0,0,0,15,208,0,0,31,192,0,0,0,15,208,0,0,31,192,0,0,0,15,208,0,0,31,192,0,0,0,15,208,0,64,47,192,0,0,0,15,208,0,255,255,192,0,0,0,15,208,0,191,255,64,0,0,0,15,208,0,127,249,0,0,0, + // 0x5b89 安 + 137,91,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,11,244,0,0,0,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,128,0,0,0,0,0,191,0,63,128,0,36,0,0,0,191,0,63,128,0,127,128,0,0,191,0,63,128,0,255,0,0,0,191,0,63,128,1,254,0,0,0,191,0,0,0,3,252,0,0,0,0,0,0,0,7,248,0,0,0,0,0,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,21,85,191,149,85,95,245,85,0,0,0,255,0,0,15,240,0,0,0,1,254,0,0,31,224,0,0,0,3,252,0,0,47,208,0,0,0,7,248,0,0,63,192,0,0,0,15,240,0,0,255,64,0,0,0,47,254,64,2,255,0,0,0,0,63,255,249,7,252,0,0,0,0,191,255,255,239,244,0,0,0,0,27,6,255,255,224,0,0,0,0,0,0,31,255,248,0,0,0,0,0,0,47,255,255,128,0,0,0,0,6,255,251,255,248,0,0,0,1,191,255,128,127,255,128,0,26,255,255,248,0,7,255,244,0,31,255,255,128,0,0,127,248,0,11,255,224,0,0,0,11,240,0,3,148,0,0,0,0,1,128,0, + // 0x5b8c 完 + 140,91,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,149,85,85,85,85,85,255,0,63,64,0,0,0,0,0,191,0,63,64,0,0,0,0,0,191,0,63,64,0,0,0,0,0,191,0,63,71,255,255,255,255,240,191,0,21,7,255,255,255,255,240,85,0,0,7,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,85,85,85,85,85,85,85,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,47,192,3,244,0,0,0,0,0,63,192,3,244,0,0,0,0,0,63,128,3,244,0,0,0,0,0,127,64,3,244,0,0,0,0,0,191,0,3,244,0,0,0,0,0,255,0,3,244,0,4,0,0,3,253,0,3,244,0,15,128,0,11,252,0,3,244,0,15,192,0,63,240,0,3,244,0,15,192,2,255,208,0,3,248,0,47,192,191,255,64,0,3,255,255,255,128,255,252,0,0,2,255,255,255,0,127,208,0,0,0,191,255,253,0,56,0,0,0,0,0,0,0,0, + // 0x5b9a 定 + 154,91,34,36,68,37,1,252,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,229,85,85,85,85,85,111,192,15,208,0,0,0,0,0,47,192,15,208,0,0,0,0,0,47,192,15,208,0,0,0,0,0,47,192,15,208,85,85,85,85,85,47,192,15,211,255,255,255,255,255,47,192,0,3,255,255,255,255,255,0,0,0,3,255,255,255,255,255,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,3,244,1,252,0,0,0,0,0,7,244,1,252,0,0,0,0,0,7,240,1,253,0,0,0,0,0,11,240,1,255,255,255,240,0,0,15,240,1,255,255,255,240,0,0,15,240,1,255,255,255,240,0,0,31,244,1,252,0,0,0,0,0,63,252,1,252,0,0,0,0,0,63,254,1,252,0,0,0,0,0,191,255,65,252,0,0,0,0,0,254,63,225,252,0,0,0,0,3,252,15,254,252,0,0,0,0,11,248,3,255,253,0,0,0,0,47,240,0,255,255,255,255,255,240,127,208,0,31,255,255,255,255,224,47,128,0,0,111,255,255,255,208,10,0,0,0,0,21,85,85,64,0,0,0,0,0,0,0,0,0, + // 0x5ba2 客 + 162,91,35,36,68,37,1,252,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,208,0,20,0,0,0,31,192,15,208,0,255,64,0,0,31,192,15,208,2,254,0,0,0,31,192,15,208,11,254,170,170,160,31,192,15,208,47,255,255,255,253,31,192,0,0,191,255,255,255,252,0,0,0,7,255,128,0,15,244,0,0,0,47,255,240,0,63,224,0,0,2,255,235,252,1,255,128,0,0,3,255,66,255,75,254,0,0,0,0,248,0,127,255,244,0,0,0,0,0,0,31,255,208,0,0,0,0,0,0,111,255,248,0,0,0,0,0,7,255,255,255,224,0,0,0,1,191,255,139,255,255,164,0,1,191,255,248,0,191,255,255,244,127,255,255,64,0,6,255,255,224,63,255,255,255,255,255,255,255,192,31,231,255,255,255,255,255,6,64,4,2,255,255,255,255,255,0,0,0,2,248,0,0,0,191,0,0,0,2,248,0,0,0,191,0,0,0,2,248,0,0,0,191,0,0,0,2,248,0,0,0,191,0,0,0,2,248,0,0,0,191,0,0,0,2,255,255,255,255,255,0,0,0,2,255,255,255,255,255,0,0,0,2,255,255,255,255,255,0,0,0,2,248,0,0,0,191,0,0,0,0,0,0,0,0,0,0,0, + // 0x5bb9 容 + 185,91,34,36,68,37,2,252,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,64,0,0,0,0,0,191,0,63,64,0,0,0,0,0,191,0,63,64,9,0,0,32,0,191,0,63,64,63,192,0,254,0,191,0,63,64,255,64,1,255,208,191,0,0,3,254,0,0,63,248,0,0,0,31,248,5,80,7,255,0,0,0,255,224,15,252,0,255,208,0,11,255,64,63,255,0,47,244,0,15,252,0,255,255,192,7,248,0,3,224,3,255,47,244,1,208,0,0,0,15,252,11,254,0,0,0,0,0,127,240,2,255,128,0,0,0,2,255,128,0,127,244,0,0,0,31,254,0,0,15,255,0,0,0,191,244,0,0,2,255,224,0,11,255,255,255,255,255,255,254,64,191,255,255,255,255,255,255,255,208,191,239,255,255,255,255,253,255,128,63,75,224,0,0,2,252,31,0,20,11,224,0,0,2,252,1,0,0,11,224,0,0,2,252,0,0,0,11,224,0,0,2,252,0,0,0,11,224,0,0,2,252,0,0,0,11,224,0,0,2,252,0,0,0,11,255,255,255,255,252,0,0,0,11,255,255,255,255,252,0,0,0,11,255,255,255,255,252,0,0,0,11,224,0,0,2,252,0,0,0,0,0,0,0,0,0,0,0, + // 0x5c0d 對 + 13,92,35,36,68,37,1,252,0,10,130,160,0,0,1,168,0,9,15,195,240,56,0,2,252,0,63,15,195,240,191,0,2,252,0,47,143,195,240,252,0,2,252,0,15,207,195,242,248,0,2,252,0,11,223,195,243,240,0,2,252,0,3,239,195,251,208,0,2,252,0,2,79,195,241,128,0,2,252,0,127,255,255,255,254,0,2,252,0,127,255,255,255,254,0,2,252,0,127,255,255,255,255,255,255,255,248,0,184,0,31,67,255,255,255,248,0,252,0,63,67,255,255,255,248,0,189,0,63,0,0,2,252,0,0,127,0,190,0,0,2,252,0,0,62,0,188,0,0,2,252,0,15,255,255,255,240,125,2,252,0,15,255,255,255,240,127,2,252,0,15,255,255,255,240,63,66,252,0,0,0,126,0,0,47,194,252,0,0,0,126,0,0,15,194,252,0,0,0,126,0,0,15,226,252,0,3,255,255,255,208,7,242,252,0,3,255,255,255,208,3,242,252,0,3,255,255,255,208,3,130,252,0,0,0,126,0,0,0,2,252,0,0,0,126,0,0,0,2,252,0,0,0,126,0,0,0,2,252,0,0,0,127,107,252,0,2,252,0,0,90,255,255,252,0,2,252,0,63,255,255,255,252,0,2,252,0,63,255,255,250,80,0,3,248,0,63,254,148,0,0,15,255,248,0,20,0,0,0,0,7,255,240,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,0,0,0,0, + // 0x5c0f 小 + 15,92,35,36,68,37,1,252,0,0,0,0,84,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,9,0,0,253,0,7,0,0,0,15,240,0,253,0,63,128,0,0,31,224,0,253,0,63,208,0,0,31,208,0,253,0,31,240,0,0,47,192,0,253,0,15,244,0,0,63,192,0,253,0,7,252,0,0,127,128,0,253,0,3,253,0,0,191,64,0,253,0,1,254,0,0,255,0,0,253,0,0,255,0,1,254,0,0,253,0,0,191,128,3,253,0,0,253,0,0,63,192,3,252,0,0,253,0,0,63,208,11,244,0,0,253,0,0,31,224,15,240,0,0,253,0,0,15,240,63,224,0,0,253,0,0,11,244,127,192,0,0,253,0,0,7,248,47,64,0,0,253,0,0,3,252,2,0,0,0,253,0,0,3,224,0,0,0,0,253,0,0,1,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,42,91,253,0,0,0,0,0,0,63,255,252,0,0,0,0,0,0,31,255,248,0,0,0,0,0,0,15,255,144,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5c31 就 + 49,92,35,35,59,37,1,253,0,0,254,0,0,3,244,0,0,0,0,254,0,0,3,244,36,0,0,0,254,0,0,3,245,252,0,0,0,254,0,0,3,244,255,0,0,0,254,0,0,3,244,63,128,63,255,255,255,248,3,244,31,192,63,255,255,255,248,3,244,15,240,63,255,255,255,248,3,244,3,224,0,0,0,0,0,3,244,1,0,0,0,0,0,0,3,248,0,0,3,255,255,255,203,255,255,255,244,3,255,255,255,203,255,255,255,244,3,255,255,255,203,255,255,255,244,3,240,0,31,192,3,244,0,0,3,240,0,31,192,3,244,0,0,3,240,0,31,192,3,255,128,0,3,240,0,31,192,7,255,128,0,3,240,0,31,192,7,255,128,0,3,255,255,255,192,11,255,128,0,3,255,255,255,192,15,255,128,0,3,255,255,255,192,15,255,128,0,0,0,190,0,0,31,239,128,0,0,0,190,6,0,47,239,128,0,3,244,190,63,64,63,175,128,0,3,240,190,31,128,127,111,128,0,7,240,190,15,192,191,47,128,0,15,208,190,11,224,253,47,128,224,15,192,190,7,243,252,47,128,252,47,192,190,3,247,248,47,128,248,63,64,190,2,79,240,47,128,248,191,0,190,0,47,208,47,129,248,29,0,254,0,191,192,47,255,248,0,127,253,2,255,0,31,255,240,0,63,252,0,253,0,11,255,208,0,47,224,0,36,0,0,84,0, + // 0x5de5 工 + 229,93,33,28,252,37,2,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,10,170,170,175,250,170,170,168,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,85,85,85,91,249,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x5dee 差 + 238,93,34,35,59,37,1,253,0,0,24,0,0,0,228,0,0,0,0,254,0,0,2,253,0,0,0,0,191,0,0,3,252,0,0,0,0,63,192,0,11,240,0,0,0,0,31,192,0,15,208,0,0,3,255,255,255,255,255,255,255,64,3,255,255,255,255,255,255,255,64,3,255,255,255,255,255,255,255,64,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,127,255,255,255,255,255,248,0,0,127,255,255,255,255,255,248,0,0,127,255,255,255,255,255,244,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,2,253,255,255,255,255,248,0,0,3,249,255,255,255,255,248,0,0,11,245,255,255,255,255,248,0,0,15,240,0,3,240,0,0,0,0,31,208,0,3,240,0,0,0,0,63,192,0,3,240,0,0,0,0,255,128,0,3,240,0,0,0,2,255,0,0,3,240,0,0,0,7,252,0,0,3,240,0,0,0,47,248,191,255,255,255,255,255,192,127,224,191,255,255,255,255,255,192,31,128,191,255,255,255,255,255,192,2,0,0,0,0,0,0,0,0, + // 0x5df2 已 + 242,93,32,32,0,37,3,254,21,85,85,85,85,85,84,0,127,255,255,255,255,255,254,0,127,255,255,255,255,255,254,0,127,255,255,255,255,255,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,6,160,0,0,0,0,254,0,11,240,0,0,0,0,254,0,11,240,0,0,0,0,254,0,11,240,0,0,0,0,254,0,11,240,0,0,0,0,254,0,11,240,0,0,0,0,254,0,11,255,255,255,255,255,254,0,11,255,255,255,255,255,254,0,11,255,255,255,255,255,254,0,11,245,85,85,85,85,254,0,11,240,0,0,0,0,254,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,121,11,240,0,0,0,0,0,127,11,240,0,0,0,0,0,191,11,240,0,0,0,0,0,255,11,240,0,0,0,0,0,254,11,244,0,0,0,0,2,253,7,254,85,85,85,85,111,252,3,255,255,255,255,255,255,248,0,255,255,255,255,255,255,224,0,27,255,255,255,255,254,0, + // 0x5e73 平 + 115,94,33,33,41,37,2,253,5,85,85,85,85,85,85,84,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,20,0,0,0,127,0,7,240,0,63,128,0,0,63,64,7,240,0,127,128,0,0,63,192,7,240,0,191,0,0,0,31,208,7,240,0,254,0,0,0,15,224,7,240,2,252,0,0,0,11,240,7,240,3,248,0,0,0,7,244,7,240,7,240,0,0,0,3,248,7,240,15,224,0,0,0,2,128,7,240,6,192,0,0,0,0,0,7,240,0,0,0,0,85,85,85,91,249,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0, + // 0x5e8a 床 + 138,94,35,35,59,37,1,253,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,85,85,85,127,149,85,85,80,2,255,255,255,255,255,255,255,240,2,255,255,255,255,255,255,255,240,2,255,255,255,255,255,255,255,240,2,252,0,0,0,0,0,0,0,2,252,0,0,3,244,0,0,0,2,252,0,0,3,244,0,0,0,2,252,0,0,3,244,0,0,0,2,252,0,0,3,244,0,0,0,2,252,0,0,3,244,0,0,0,2,252,0,0,7,248,0,0,0,2,252,127,255,255,255,255,255,240,2,252,127,255,255,255,255,255,240,2,252,127,255,255,255,255,255,240,2,252,0,0,47,255,0,0,0,2,252,0,0,127,255,128,0,0,2,248,0,0,255,255,208,0,0,3,248,0,2,255,255,240,0,0,3,244,0,7,251,251,252,0,0,3,244,0,31,243,245,255,0,0,3,244,0,63,195,244,191,192,0,7,240,0,255,67,244,47,240,0,11,240,3,254,3,244,15,252,0,15,224,31,252,3,244,3,255,64,15,208,191,240,3,244,0,255,224,31,195,255,192,3,244,0,63,244,63,193,254,0,3,244,0,11,224,63,128,116,0,3,244,0,1,192,191,0,0,0,3,244,0,0,0,46,0,0,0,3,244,0,0,0,5,0,0,0,3,244,0,0,0, + // 0x5ea6 度 + 166,94,34,35,59,37,1,253,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,127,64,0,0,0,2,255,255,255,255,255,255,255,240,2,255,255,255,255,255,255,255,240,2,255,255,255,255,255,255,255,240,2,252,0,0,0,0,0,0,0,2,252,0,47,128,0,127,0,0,2,252,0,47,128,0,127,0,0,2,252,0,47,128,0,127,0,0,2,252,255,255,255,255,255,255,224,2,252,255,255,255,255,255,255,224,2,252,255,255,255,255,255,255,208,2,252,0,47,128,0,127,0,0,2,248,0,47,128,0,127,0,0,2,248,0,47,128,0,127,0,0,2,248,0,47,255,255,255,0,0,2,248,0,47,255,255,255,0,0,2,248,0,26,170,170,170,0,0,3,248,0,0,0,0,0,0,0,3,244,191,255,255,255,255,224,0,3,244,191,255,255,255,255,252,0,3,240,191,255,255,255,255,248,0,3,240,0,127,0,0,15,240,0,7,240,0,63,192,0,63,208,0,11,224,0,15,244,1,255,64,0,15,208,0,7,254,15,253,0,0,15,208,0,0,255,255,240,0,0,31,192,0,0,63,255,192,0,0,63,192,0,27,255,255,249,0,0,63,64,107,255,255,255,255,254,80,191,3,255,255,244,6,255,255,240,46,1,255,253,0,0,31,255,208,4,0,233,0,0,0,0,27,128, + // 0x5ee2 廢 + 226,94,35,36,68,37,1,252,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,3,255,255,255,255,255,255,255,240,3,255,255,255,255,255,255,255,240,3,255,255,255,255,255,255,255,240,3,240,0,0,0,0,0,0,0,3,240,21,85,80,62,2,128,0,3,240,127,255,252,47,75,224,0,3,240,127,255,248,15,255,128,0,3,240,0,3,240,11,252,2,0,3,240,125,15,224,3,248,31,208,3,240,191,191,128,0,254,255,64,3,240,15,255,0,0,63,248,0,3,240,11,252,0,0,15,248,0,3,240,191,255,224,255,255,255,224,3,255,255,255,224,255,255,255,244,3,251,245,87,224,253,111,75,224,3,242,64,3,224,248,15,65,64,3,240,0,3,225,244,15,71,128,3,240,63,255,227,240,15,155,128,7,240,127,255,255,224,15,255,64,7,240,189,85,71,192,7,254,0,7,224,252,0,1,0,0,0,0,11,224,248,0,7,255,255,252,0,15,209,255,255,231,255,255,252,0,15,210,255,255,209,185,86,244,0,15,194,245,91,208,252,3,240,0,31,192,0,11,192,126,15,208,0,47,128,0,15,192,47,255,64,0,63,64,0,15,192,15,254,0,0,127,0,0,15,192,31,255,144,0,190,0,37,127,134,255,255,254,144,125,0,63,255,31,253,7,255,208,12,0,47,253,15,144,0,111,128,0,0,0,0,0,0,0,0,0, + // 0x5efa 建 + 250,94,35,36,68,37,1,252,0,0,0,0,0,105,0,0,0,0,0,0,0,0,191,0,0,0,127,255,244,0,0,191,0,0,0,127,255,240,63,255,255,255,254,0,127,255,224,63,255,255,255,254,0,0,15,208,42,170,255,170,254,0,0,47,192,0,0,191,0,190,0,0,63,128,0,0,191,0,190,0,0,127,7,255,255,255,255,255,244,0,254,7,255,255,255,255,255,244,0,252,2,170,170,255,170,255,164,2,252,0,0,0,191,0,190,0,3,244,0,0,0,191,0,190,0,11,255,253,63,255,255,255,254,0,15,255,254,63,255,255,255,254,0,47,255,253,42,170,255,170,169,0,47,64,253,0,0,191,0,0,0,1,0,252,0,0,191,0,0,0,0,0,252,63,255,255,255,255,0,7,65,252,63,255,255,255,255,0,15,194,248,42,170,255,170,170,0,15,195,244,0,0,191,0,0,0,7,227,240,0,0,191,0,0,0,3,251,243,255,255,255,255,255,224,2,255,227,255,255,255,255,255,224,0,255,194,255,255,255,255,255,208,0,127,192,0,0,191,0,0,0,0,127,240,0,0,191,0,0,0,0,255,253,0,0,191,0,0,0,2,255,255,224,0,85,0,0,0,7,252,191,255,229,84,5,85,80,31,240,31,255,255,255,255,255,244,127,224,1,191,255,255,255,255,240,47,128,0,1,175,255,255,255,224,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5f15 引 + 21,95,29,36,32,37,3,252,0,0,0,0,0,0,21,0,0,0,0,0,0,0,63,64,127,255,255,254,0,0,63,64,127,255,255,254,0,0,63,64,127,255,255,254,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,0,0,0,190,0,0,63,64,31,255,255,254,0,0,63,64,31,255,255,254,0,0,63,64,47,255,255,254,0,0,63,64,47,192,0,0,0,0,63,64,63,128,0,0,0,0,63,64,63,64,0,0,0,0,63,64,63,0,0,0,0,0,63,64,127,0,0,0,0,0,63,64,191,255,255,255,0,0,63,64,255,255,255,255,0,0,63,64,255,255,255,254,0,0,63,64,253,0,0,254,0,0,63,64,188,0,0,254,0,0,63,64,0,0,0,253,0,0,63,64,0,0,0,253,0,0,63,64,0,0,0,253,0,0,63,64,0,0,1,252,0,0,63,64,0,0,2,252,0,0,63,64,0,0,2,252,0,0,63,64,0,0,3,248,0,0,63,64,0,0,7,248,0,0,63,64,2,165,111,244,0,0,63,64,1,255,255,240,0,0,63,64,0,255,255,208,0,0,63,64,0,255,254,0,0,0,63,64,0,0,0,0,0,0,0,0, + // 0x5f85 待 + 133,95,35,35,59,37,1,253,0,0,144,0,0,42,64,0,0,0,2,252,0,0,63,128,0,0,0,7,252,0,0,63,128,0,0,0,31,240,0,0,63,128,0,0,0,127,208,0,0,63,128,0,0,1,255,64,47,255,255,255,255,128,11,253,0,47,255,255,255,255,128,63,244,0,47,255,255,255,255,128,63,192,16,0,0,63,128,0,0,31,0,189,0,0,63,128,0,0,4,1,253,0,0,63,128,0,0,0,3,252,0,0,63,128,0,0,0,15,243,255,255,255,255,255,248,0,47,211,255,255,255,255,255,248,0,191,195,255,255,255,255,255,248,2,255,192,0,0,0,15,224,0,11,255,192,0,0,0,15,224,0,47,255,192,0,0,0,15,224,0,191,255,192,0,0,0,15,224,0,127,159,193,255,255,255,255,255,240,61,31,193,255,255,255,255,255,240,20,31,193,255,255,255,255,255,240,0,31,192,0,0,0,15,224,0,0,31,192,1,208,0,15,224,0,0,31,192,11,240,0,15,224,0,0,31,192,3,252,0,15,224,0,0,31,192,2,254,0,15,224,0,0,31,192,0,255,0,15,224,0,0,31,192,0,63,192,15,224,0,0,31,192,0,47,192,15,224,0,0,31,192,0,14,0,15,224,0,0,31,192,0,0,16,31,224,0,0,31,192,0,0,63,255,208,0,0,31,192,0,0,47,255,192,0,0,31,192,0,0,15,254,0,0, + // 0x5f8c 後 + 140,95,35,36,68,37,1,252,0,1,128,0,1,128,0,0,0,0,3,248,0,3,244,0,0,0,0,15,240,0,15,240,0,0,0,0,63,208,0,47,208,10,0,0,0,191,64,16,127,64,31,208,0,3,254,0,189,254,0,127,192,0,15,248,1,255,248,0,255,0,0,127,224,0,127,240,3,253,0,0,127,128,160,15,252,15,244,0,0,45,1,253,2,255,63,208,0,0,0,3,252,0,191,255,66,240,0,0,11,240,0,47,252,3,248,0,0,31,224,0,31,240,1,254,0,0,63,192,0,127,192,0,191,64,0,255,139,255,255,255,255,255,192,3,255,139,255,255,255,255,255,224,31,255,135,255,255,255,255,255,244,127,255,128,0,15,240,0,3,248,255,175,128,0,47,208,0,1,208,61,47,128,0,191,234,170,160,0,36,47,128,2,255,255,255,252,0,0,47,128,11,255,255,255,248,0,0,47,128,63,248,0,11,240,0,0,47,130,255,253,0,31,224,0,0,47,143,254,191,0,127,192,0,0,47,131,244,63,193,255,0,0,0,47,129,192,15,251,252,0,0,0,47,128,0,3,255,240,0,0,0,47,128,0,2,255,224,0,0,0,47,128,0,47,255,253,0,0,0,47,128,6,255,251,255,228,0,0,47,129,191,255,128,191,255,208,0,47,143,255,248,0,15,255,244,0,47,131,255,64,0,1,191,240,0,47,130,144,0,0,0,2,192,0,0,0,0,0,0,0,0,0, + // 0x5f91 徑 + 145,95,35,35,59,37,1,253,0,1,128,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,15,240,255,255,255,255,255,240,0,63,208,255,255,255,255,255,240,0,255,64,255,255,255,255,255,240,3,253,0,0,0,0,0,0,0,15,248,0,1,144,9,0,36,0,127,224,0,3,244,15,208,63,0,127,64,164,11,240,47,128,254,0,45,1,253,15,208,127,1,252,0,0,3,248,47,128,254,3,244,0,0,11,240,63,2,252,11,224,0,0,31,208,253,3,240,31,192,0,0,63,192,253,7,240,47,192,0,0,255,128,127,3,248,15,224,0,3,255,128,63,128,253,3,244,0,15,255,128,15,192,127,1,252,0,127,255,128,11,240,47,128,191,0,255,239,128,3,244,15,208,63,128,127,47,128,2,252,11,240,31,192,60,47,128,0,144,2,64,10,0,0,47,128,0,0,0,0,0,0,0,47,128,127,255,255,255,255,128,0,47,128,127,255,255,255,255,128,0,47,128,127,255,255,255,255,128,0,47,128,0,0,63,64,0,0,0,47,128,0,0,63,64,0,0,0,47,128,0,0,63,64,0,0,0,47,128,0,0,63,64,0,0,0,47,128,0,0,63,64,0,0,0,47,128,0,0,63,64,0,0,0,47,139,255,255,255,255,255,248,0,47,139,255,255,255,255,255,248,0,47,139,255,255,255,255,255,248,0,47,128,0,0,0,0,0,0, + // 0x5f9e 從 + 158,95,35,35,59,37,1,253,0,2,144,0,57,0,7,160,0,0,7,248,0,127,0,11,240,0,0,15,240,0,190,0,11,224,0,0,63,192,0,253,0,15,208,0,0,255,64,0,252,0,15,192,0,3,253,0,2,252,0,31,192,0,15,248,0,3,252,0,63,128,0,127,224,0,7,255,64,63,208,0,63,64,164,15,255,208,191,244,0,29,1,253,31,239,245,255,253,0,0,3,248,63,195,243,252,255,64,0,11,240,191,64,219,244,63,208,0,47,210,254,0,47,240,15,240,0,127,199,252,0,127,192,3,244,1,255,129,240,0,31,0,1,208,3,255,128,144,0,31,128,0,0,31,255,128,0,0,31,192,0,0,127,255,128,0,0,31,192,0,0,255,175,128,11,224,31,192,0,0,62,47,128,15,224,31,192,0,0,40,47,128,15,208,31,192,0,0,0,47,128,15,208,31,255,255,128,0,47,128,15,192,31,255,255,128,0,47,128,31,192,31,255,255,64,0,47,128,47,224,31,192,0,0,0,47,128,63,240,31,192,0,0,0,47,128,63,244,31,192,0,0,0,47,128,191,252,31,192,0,0,0,47,128,254,191,31,192,0,0,0,47,130,252,63,239,192,0,0,0,47,135,248,31,255,192,0,0,0,47,159,240,7,255,255,255,244,0,47,159,208,0,191,255,255,240,0,47,135,128,0,6,255,255,224,0,26,64,0,0,0,0,0,0, + // 0x5fa9 復 + 169,95,35,36,68,37,1,252,0,1,128,0,164,0,0,0,0,0,3,248,1,253,0,0,0,0,0,15,240,3,252,0,0,0,0,0,47,208,3,248,0,0,0,0,0,191,128,11,255,255,255,255,240,2,254,0,15,255,255,255,255,240,15,248,0,63,255,255,255,255,240,127,224,0,191,128,0,0,0,0,63,64,165,255,85,85,85,84,0,28,1,255,255,255,255,255,254,0,0,3,254,251,255,255,255,254,0,0,15,240,83,240,0,0,126,0,0,47,208,3,240,0,0,126,0,0,127,128,3,255,255,255,254,0,1,255,128,3,255,255,255,254,0,7,255,128,3,240,0,0,190,0,31,255,128,3,240,0,0,126,0,127,255,128,3,240,0,0,190,0,255,175,128,3,255,255,255,254,0,126,47,128,3,255,255,255,254,0,40,47,128,0,15,224,0,0,0,0,47,128,0,47,192,0,0,0,0,47,128,0,127,213,85,80,0,0,47,128,1,255,255,255,254,0,0,47,128,7,255,255,255,252,0,0,47,128,47,254,0,3,248,0,0,47,129,255,255,128,31,240,0,0,47,131,253,31,224,127,192,0,0,47,128,176,7,255,255,0,0,0,47,128,0,1,255,248,0,0,0,47,128,0,27,255,254,64,0,0,47,128,26,255,255,255,250,64,0,47,131,255,255,144,127,255,248,0,47,130,255,244,0,2,255,224,0,47,128,228,0,0,0,6,192,0,0,0,0,0,0,0,0,0, + // 0x5fae 微 + 174,95,35,35,59,37,1,253,0,14,0,11,192,0,58,0,0,0,47,192,11,192,0,63,0,0,0,127,64,11,192,0,127,0,0,0,255,15,11,194,224,190,0,0,3,252,15,11,194,240,253,0,0,15,244,15,11,194,240,252,0,0,63,208,15,11,194,240,252,0,0,191,64,15,11,194,241,255,255,244,61,7,223,11,194,243,255,255,244,20,15,239,11,194,243,255,255,244,0,47,207,255,255,247,240,15,192,0,63,79,255,255,255,240,15,128,0,191,15,255,255,255,240,31,128,1,254,0,0,0,47,244,31,64,3,253,0,0,0,63,248,47,64,11,253,0,0,0,191,248,47,0,31,253,0,0,0,60,188,63,0,127,253,47,255,255,244,124,63,0,255,253,47,255,255,240,61,62,0,189,189,47,255,255,240,62,125,0,56,189,1,244,63,0,63,188,0,16,189,1,244,63,0,47,252,0,0,189,1,244,63,0,15,248,0,0,189,1,244,63,0,15,240,0,0,189,2,244,63,0,11,240,0,0,189,2,240,63,0,15,240,0,0,189,3,240,63,188,47,244,0,0,189,7,240,63,253,127,252,0,0,189,11,208,255,248,255,254,0,0,189,15,192,255,66,252,127,64,0,189,63,128,96,11,244,63,208,0,189,191,0,0,63,224,15,244,0,189,61,0,0,191,128,7,248,0,189,8,0,0,62,0,1,240,0,189,0,0,0,4,0,0,64, + // 0x5fc3 心 + 195,95,35,35,59,37,1,253,0,0,0,80,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,1,255,255,0,0,0,0,0,0,0,11,255,224,0,0,0,0,0,0,0,191,254,0,0,0,0,0,0,0,15,255,192,0,0,0,0,0,0,1,255,64,0,0,0,0,0,0,0,46,0,0,0,0,0,0,0,0,4,0,0,0,0,0,5,80,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,2,64,0,0,64,15,240,0,0,31,192,0,0,252,15,240,0,0,31,240,0,1,252,15,240,0,0,11,248,0,1,252,15,240,0,0,3,252,0,2,252,15,240,0,0,1,254,0,3,248,15,240,0,0,0,255,0,3,244,15,240,0,0,0,127,128,7,240,15,240,0,0,0,63,192,11,240,15,240,0,0,0,31,224,15,240,15,240,0,0,0,15,240,31,208,15,240,0,0,0,11,244,63,192,15,240,0,0,116,7,248,127,192,15,240,0,0,127,3,252,255,64,15,240,0,0,127,2,224,47,0,15,240,0,0,190,0,0,4,0,15,240,0,0,190,0,0,0,0,11,240,0,0,253,0,0,0,0,11,244,0,2,252,0,0,0,0,7,255,255,255,252,0,0,0,0,3,255,255,255,244,0,0,0,0,0,191,255,255,208,0,0,0,0,0,0,0,0,0,0,0, + // 0x6027 性 + 39,96,34,35,59,37,1,253,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,128,2,248,15,192,0,0,0,63,128,2,248,15,192,0,0,0,63,128,3,248,15,192,0,0,0,63,128,3,244,15,192,0,0,0,63,136,3,240,15,192,0,0,9,63,253,7,240,15,192,0,0,15,127,191,15,255,255,255,255,192,31,63,175,79,255,255,255,255,192,31,63,159,159,255,255,255,255,192,47,63,143,239,213,95,213,85,64,63,63,139,255,64,15,192,0,0,62,63,129,191,0,15,192,0,0,62,63,128,255,0,15,192,0,0,125,63,128,253,0,15,192,0,0,188,63,128,44,0,15,192,0,0,188,63,128,0,0,15,192,0,0,0,63,128,0,0,31,208,0,0,0,63,128,15,255,255,255,255,64,0,63,128,15,255,255,255,255,64,0,63,128,15,255,255,255,255,64,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,128,0,0,15,192,0,0,0,63,130,255,255,255,255,255,240,0,63,130,255,255,255,255,255,240,0,63,130,255,255,255,255,255,240,0,63,128,85,85,85,85,85,80,0,42,64,0,0,0,0,0,0, + // 0x6062 恢 + 98,96,35,35,59,37,1,253,0,63,64,15,192,0,0,0,0,0,63,64,15,192,0,0,0,0,0,63,64,15,192,0,0,0,0,0,63,64,15,192,0,0,0,0,0,63,67,255,255,255,255,255,244,0,63,67,255,255,255,255,255,244,0,63,167,255,255,255,255,255,244,9,63,252,31,192,0,0,0,0,15,63,188,15,192,0,252,0,0,31,63,126,15,192,0,252,0,0,31,63,95,15,192,0,252,0,0,31,63,79,79,192,0,252,0,0,47,63,79,79,192,0,252,2,144,62,63,75,79,199,192,252,3,240,61,63,64,15,199,192,252,7,224,124,63,64,15,203,192,252,11,208,188,63,64,15,203,192,252,15,192,116,63,64,31,207,128,252,31,128,0,63,64,31,143,65,252,47,0,0,63,64,31,159,1,252,63,0,0,63,64,47,127,2,252,125,0,0,63,64,47,93,3,253,4,0,0,63,64,63,0,3,254,0,0,0,63,64,63,0,7,255,0,0,0,63,64,127,0,15,239,64,0,0,63,64,190,0,31,143,192,0,0,63,64,253,0,63,79,208,0,0,63,64,252,0,191,7,240,0,0,63,66,252,1,253,3,252,0,0,63,67,248,7,248,1,254,0,0,63,71,240,31,240,0,191,128,0,63,79,224,191,192,0,63,244,0,63,95,194,255,64,0,15,248,0,63,75,128,252,0,0,3,240,0,63,65,0,96,0,0,0,144, + // 0x606f 息 + 111,96,35,35,59,37,1,253,0,0,0,1,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,252,0,0,0,0,0,11,255,255,255,255,255,192,0,0,11,255,255,255,255,255,192,0,0,11,250,170,170,170,191,192,0,0,11,224,0,0,0,15,192,0,0,11,224,0,0,0,15,192,0,0,11,250,170,170,170,175,192,0,0,11,255,255,255,255,255,192,0,0,11,255,255,255,255,255,192,0,0,11,224,0,0,0,15,192,0,0,11,224,0,0,0,15,192,0,0,11,250,170,170,170,175,192,0,0,11,255,255,255,255,255,192,0,0,11,255,255,255,255,255,192,0,0,11,224,0,0,0,15,192,0,0,11,224,0,0,0,15,192,0,0,11,224,0,0,0,15,192,0,0,11,255,255,255,255,255,192,0,0,11,255,255,255,255,255,192,0,0,6,170,170,170,170,170,128,0,0,0,0,2,208,0,0,0,0,0,0,0,15,244,0,0,0,0,0,80,0,3,253,0,2,192,0,0,190,15,208,255,64,15,240,0,0,253,15,208,63,208,15,252,0,1,252,15,208,15,208,3,254,0,3,248,15,208,7,0,0,255,64,11,240,15,208,0,2,224,63,208,31,240,15,208,0,3,244,31,240,127,192,15,224,0,7,244,11,244,63,64,15,255,255,255,240,3,244,6,0,7,255,255,255,224,1,128,0,0,1,191,255,255,64,0,0, + // 0x61b6 憶 + 182,97,35,35,59,37,1,253,0,63,64,0,0,31,128,0,0,0,63,64,0,0,47,192,0,0,0,63,64,0,0,47,192,0,0,0,63,64,63,255,255,255,255,192,0,63,64,63,255,255,255,255,192,0,63,64,42,190,170,171,250,128,0,63,148,0,126,0,7,224,0,4,63,252,0,63,0,15,192,0,15,63,189,0,47,64,15,192,0,31,63,126,255,255,255,255,255,244,31,63,95,255,255,255,255,255,244,31,63,79,234,170,170,170,170,164,47,63,79,128,0,0,0,0,0,62,63,74,75,255,255,255,255,64,62,63,64,11,255,255,255,255,64,125,63,64,11,224,0,0,63,64,188,63,64,11,224,0,0,63,64,120,63,64,11,224,0,0,63,64,0,63,64,11,255,255,255,255,64,0,63,64,11,255,255,255,255,64,0,63,64,11,224,0,0,63,64,0,63,64,11,224,0,0,63,64,0,63,64,11,255,255,255,255,64,0,63,64,11,255,255,255,255,64,0,63,64,0,0,253,0,0,0,0,63,64,0,0,191,192,16,0,0,63,64,45,15,207,240,184,0,0,63,64,63,15,195,224,254,0,0,63,64,127,15,192,128,127,64,0,63,64,189,15,192,1,47,192,0,63,64,252,15,192,3,239,224,0,63,67,248,15,192,7,227,240,0,63,75,240,15,255,255,210,248,0,63,66,208,15,255,255,192,208,0,63,64,0,1,191,250,0,0, + // 0x61c9 應 + 201,97,35,35,59,37,1,253,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,3,255,255,255,255,255,255,255,240,3,255,255,255,255,255,255,255,240,3,255,255,255,255,255,255,255,240,3,240,0,228,11,144,41,0,0,3,240,2,248,15,192,127,0,0,3,240,7,240,47,128,253,0,0,3,240,15,208,63,255,255,255,192,3,240,47,192,255,255,255,255,192,3,240,127,194,255,1,248,0,0,3,241,255,199,254,1,248,0,0,3,251,255,223,255,255,255,255,0,3,255,255,239,255,255,255,255,0,3,255,223,199,126,1,248,0,0,3,242,15,192,62,1,248,0,0,3,240,15,192,63,255,255,255,0,3,240,15,192,63,255,255,255,0,3,240,15,192,62,1,248,0,0,3,240,15,192,63,1,248,0,0,7,240,15,192,63,255,255,255,224,7,224,15,192,63,255,255,255,224,7,224,10,64,29,0,0,0,0,11,224,0,0,127,208,0,0,0,15,208,0,0,31,252,0,0,0,15,192,25,11,210,255,2,240,0,15,192,63,79,208,126,3,252,0,31,192,127,15,208,8,0,254,0,47,128,253,15,208,0,36,127,64,63,65,252,15,208,0,63,47,192,127,7,248,11,224,0,127,15,240,190,15,240,11,255,255,254,7,244,61,3,192,3,255,255,252,3,208,8,0,0,0,175,255,160,0,0, + // 0x6210 成 + 16,98,35,36,68,37,1,252,0,0,0,0,7,240,40,0,0,0,0,0,0,7,244,191,64,0,0,0,0,0,7,244,191,240,0,0,0,0,0,7,244,15,253,0,0,0,0,0,7,244,2,254,0,0,0,0,0,3,244,0,60,0,1,255,255,255,255,255,255,255,240,1,255,255,255,255,255,255,255,240,1,255,255,255,255,255,255,255,240,1,253,85,85,87,249,85,85,80,1,252,0,0,3,248,0,0,0,1,252,0,0,3,252,0,0,0,1,252,0,0,2,252,0,185,0,1,252,0,0,2,252,0,255,0,1,255,255,255,65,252,1,253,0,1,255,255,255,65,252,3,252,0,1,255,255,255,64,253,3,248,0,1,253,0,63,64,254,11,240,0,1,252,0,63,64,255,15,224,0,1,252,0,63,64,191,47,208,0,2,252,0,63,64,127,127,128,0,2,252,0,63,64,127,255,0,0,2,252,0,63,0,63,253,0,0,3,252,0,63,0,47,252,0,0,3,248,0,127,0,31,240,1,64,3,248,0,191,0,63,224,2,224,7,244,255,255,0,255,240,2,244,11,240,191,253,3,255,244,3,244,15,240,191,244,15,255,252,3,240,15,224,0,0,127,241,254,3,240,47,208,0,2,255,208,255,139,240,63,192,0,15,255,64,127,255,208,127,128,0,11,252,0,31,255,192,47,0,0,3,224,0,7,255,64,6,0,0,0,64,0,0,84,0,0,0,0,0,0,0,0,0,0, + // 0x6236 戶 + 54,98,29,35,24,37,2,253,0,0,0,0,0,1,160,0,0,0,0,0,0,111,252,0,0,0,0,1,191,255,254,0,0,80,26,255,255,255,228,0,0,127,255,255,255,228,0,0,0,127,255,254,144,0,0,0,0,127,233,0,0,0,0,0,0,127,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,127,255,255,255,255,255,192,0,127,255,255,255,255,255,192,0,127,255,255,255,255,255,192,0,127,0,0,0,0,31,192,0,127,0,0,0,0,31,192,0,127,0,0,0,0,31,192,0,191,0,0,0,0,31,192,0,191,0,0,0,0,31,192,0,191,0,0,0,0,31,192,0,191,0,0,0,0,31,192,0,255,255,255,255,255,255,192,0,255,255,255,255,255,255,192,0,255,255,255,255,255,255,192,0,253,0,0,0,0,47,192,1,252,0,0,0,0,31,192,2,252,0,0,0,0,0,0,3,248,0,0,0,0,0,0,7,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,31,224,0,0,0,0,0,0,63,192,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,0,0,0,0,0,0,0,125,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0, + // 0x6240 所 + 64,98,35,34,50,37,1,253,0,0,0,0,0,0,0,111,64,47,255,255,255,208,0,7,255,208,47,255,255,255,209,2,255,255,208,47,255,255,255,215,255,255,248,0,0,0,0,0,7,255,254,64,0,0,0,0,0,7,255,64,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,7,255,255,255,71,240,0,0,0,7,255,255,255,71,240,0,0,0,7,255,255,255,71,240,0,0,0,7,240,0,63,71,240,0,0,0,7,240,0,63,71,255,255,255,248,7,240,0,63,71,255,255,255,248,7,240,0,63,71,255,255,255,248,7,240,0,63,71,245,86,253,80,7,240,0,63,71,240,2,252,0,7,255,255,255,71,240,2,252,0,7,255,255,255,75,240,2,252,0,7,255,255,255,79,224,2,252,0,7,240,0,0,15,224,2,252,0,11,224,0,0,15,208,2,252,0,11,224,0,0,15,192,2,252,0,11,224,0,0,47,192,2,252,0,15,208,0,0,63,128,2,252,0,15,208,0,0,63,64,2,252,0,15,192,0,0,191,0,2,252,0,31,192,0,0,254,0,2,252,0,47,128,0,2,252,0,2,252,0,63,64,0,7,248,0,2,252,0,191,0,0,15,240,0,2,252,0,254,0,0,47,224,0,2,252,0,125,0,0,11,128,0,2,252,0,8,0,0,2,0,0,1,252,0, + // 0x6247 扇 + 71,98,33,33,41,37,1,253,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,252,0,0,191,255,255,255,255,255,252,0,0,191,170,170,170,170,170,252,0,0,190,0,0,0,0,0,252,0,0,190,0,0,0,0,0,252,0,0,191,170,170,170,170,170,252,0,0,191,255,255,255,255,255,252,0,0,191,255,255,255,255,255,252,0,0,190,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,170,170,164,170,170,169,0,0,253,255,255,248,255,255,254,0,0,253,255,255,248,255,255,254,0,0,253,4,2,248,4,0,126,0,0,252,46,2,248,47,0,126,0,1,252,63,130,248,47,192,126,0,1,252,15,210,248,11,240,126,0,2,252,7,242,248,3,240,126,0,3,248,2,130,248,0,128,126,0,7,244,0,22,248,0,26,126,0,11,240,2,250,248,2,254,126,0,15,224,127,254,248,111,254,126,0,31,211,255,210,249,255,224,126,0,63,195,253,2,248,253,0,126,0,127,130,208,2,248,144,0,190,0,255,0,0,171,244,0,59,254,0,45,0,0,255,240,0,63,253,0,4,0,0,191,144,0,31,228,0, + // 0x624b 手 + 75,98,33,36,68,37,2,252,0,0,0,0,0,0,110,0,0,0,0,0,0,6,191,255,128,0,0,5,106,255,255,255,255,208,0,11,255,255,255,255,255,233,0,0,7,255,255,255,254,148,0,0,0,3,255,170,87,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,1,85,85,87,249,85,85,84,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,85,85,85,91,249,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,1,85,91,244,0,0,0,0,0,2,255,255,240,0,0,0,0,0,0,255,255,224,0,0,0,0,0,0,255,254,64,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6253 打 + 83,98,34,35,59,37,2,253,0,63,64,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,31,255,255,255,255,224,0,63,128,31,255,255,255,255,224,0,63,128,31,255,255,255,255,224,0,63,128,5,85,86,254,85,64,0,63,128,0,0,1,252,0,0,255,255,255,192,0,1,252,0,0,255,255,255,192,0,1,252,0,0,255,255,255,192,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,135,208,0,1,252,0,0,0,63,255,208,0,1,252,0,0,1,191,255,224,0,1,252,0,0,191,255,255,144,0,1,252,0,0,255,255,208,0,0,1,252,0,0,255,255,128,0,0,1,252,0,0,180,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,2,252,0,0,63,255,64,0,63,255,252,0,0,47,255,0,0,63,255,252,0,0,31,248,0,0,31,255,240,0,0,0,0,0,0,10,169,0,0,0, + // 0x6279 批 + 121,98,35,35,59,37,1,253,0,63,0,5,64,1,164,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,127,255,255,47,192,2,248,0,0,127,255,255,47,192,2,248,2,0,127,255,255,47,192,2,248,11,192,0,63,0,47,192,2,248,63,240,0,63,0,47,255,242,249,255,192,0,63,0,47,255,242,255,254,0,0,63,0,47,255,242,255,244,0,0,63,0,47,213,82,255,128,0,0,63,94,47,192,2,252,0,0,0,63,254,47,192,2,248,0,0,6,255,255,47,192,2,248,0,0,191,255,249,47,192,2,248,0,0,191,255,64,47,192,2,248,0,0,127,127,0,47,192,2,248,0,0,16,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,0,0,0,63,0,47,192,2,248,1,208,0,63,0,47,192,2,248,1,248,0,63,0,47,192,98,248,2,248,0,63,0,47,219,242,248,2,244,0,63,10,255,255,246,252,3,240,0,127,15,255,255,225,255,255,240,47,255,11,255,144,0,255,255,224,31,254,3,144,0,0,127,255,128,15,228,0,0,0,0,0,0,0, + // 0x6296 抖 + 150,98,35,36,68,37,1,252,0,31,192,0,0,0,15,208,0,0,31,192,0,0,0,15,224,0,0,31,192,0,0,0,15,224,0,0,31,192,0,45,0,15,224,0,0,31,192,0,127,192,15,224,0,0,31,192,0,127,244,15,224,0,0,31,192,0,11,254,15,224,0,0,31,192,0,1,255,79,224,0,63,255,255,208,0,63,15,224,0,63,255,255,208,0,12,15,224,0,63,255,255,208,0,0,15,224,0,0,31,192,0,0,0,15,224,0,0,31,192,0,128,0,15,224,0,0,31,192,2,248,0,15,224,0,0,31,192,7,255,128,15,224,0,0,31,192,1,255,240,15,224,0,0,31,192,64,31,252,15,224,0,0,31,223,208,3,244,15,224,0,0,47,255,224,0,176,15,224,0,27,255,255,224,0,0,15,224,0,127,255,249,0,0,0,15,224,0,63,255,192,0,0,0,15,251,244,63,111,192,0,0,6,191,255,244,0,31,192,0,107,255,255,255,248,0,31,192,47,255,255,255,250,64,0,31,192,31,255,255,175,224,0,0,31,192,31,250,64,15,224,0,0,31,192,5,0,0,15,224,0,0,31,192,0,0,0,15,224,0,0,31,192,0,0,0,15,224,0,0,31,192,0,0,0,15,224,0,0,47,192,0,0,0,15,224,0,31,255,192,0,0,0,15,224,0,15,255,64,0,0,0,15,224,0,15,249,0,0,0,0,15,224,0,0,0,0,0,0,0,0,0,0, + // 0x62bd 抽 + 189,98,34,36,68,37,1,252,0,31,128,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,127,255,255,133,85,95,213,85,64,127,255,255,159,255,255,255,255,240,127,255,255,159,255,255,255,255,240,0,47,192,31,255,255,255,255,240,0,47,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,95,192,15,192,11,240,0,47,239,159,192,15,192,11,240,0,47,255,223,192,15,208,11,240,27,255,255,223,255,255,255,255,240,191,255,248,31,255,255,255,255,240,127,255,192,31,255,255,255,255,240,62,111,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,31,192,15,192,11,240,0,47,192,31,213,95,213,95,240,0,47,192,31,255,255,255,255,240,0,47,192,31,255,255,255,255,240,0,47,128,31,255,255,255,255,240,47,255,128,31,192,0,0,11,240,15,255,64,31,192,0,0,11,240,15,249,0,15,192,0,0,6,144,0,0,0,0,0,0,0,0,0, + // 0x62d4 拔 + 212,98,35,36,68,37,1,252,0,31,128,0,11,208,4,0,0,0,47,192,0,15,224,47,64,0,0,47,192,0,15,208,63,224,0,0,47,192,0,15,208,15,253,0,0,47,192,0,15,208,2,255,128,0,47,192,0,15,208,0,127,128,0,47,192,0,15,208,0,15,0,0,47,192,0,15,208,0,0,0,127,255,255,191,255,255,255,255,240,127,255,255,191,255,255,255,255,240,106,191,234,127,255,255,255,255,240,0,47,192,0,15,208,0,0,0,0,47,192,0,15,208,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,240,0,253,0,0,47,192,0,47,240,0,253,0,0,47,193,64,47,244,1,252,0,0,47,255,128,63,248,2,252,0,0,127,255,192,63,252,2,248,0,111,255,255,128,127,253,3,244,0,191,255,228,0,191,127,7,240,0,127,255,192,0,254,63,75,240,0,62,47,192,0,253,47,207,208,0,0,47,192,1,252,15,239,192,0,0,47,192,2,252,11,255,128,0,0,47,192,3,244,3,255,0,0,0,47,192,11,240,2,254,0,0,0,47,192,15,224,3,255,64,0,0,47,192,47,192,11,255,208,0,0,47,192,127,128,47,255,244,0,0,47,192,255,0,191,199,254,0,0,47,131,253,3,255,1,255,208,47,255,143,248,31,252,0,127,248,15,255,71,240,15,240,0,11,240,15,249,1,192,3,128,0,1,192,0,0,0,0,0,0,0,0,0, + // 0x6309 按 + 9,99,35,36,68,37,1,252,0,31,128,0,0,31,192,0,0,0,47,192,0,0,31,192,0,0,0,47,192,0,0,31,192,0,0,0,47,192,0,0,31,192,0,0,0,47,192,0,0,31,192,0,0,0,47,192,63,255,255,255,255,240,0,47,192,63,255,255,255,255,240,0,47,192,63,255,255,255,255,240,127,255,255,191,128,0,0,7,240,127,255,255,191,64,0,0,7,240,127,255,255,191,64,254,0,7,240,0,47,192,63,64,253,0,7,240,0,47,192,21,2,252,0,1,80,0,47,192,0,3,248,0,0,0,0,47,192,0,3,244,0,0,0,0,47,192,63,255,255,255,255,248,0,47,193,191,255,255,255,255,248,0,47,255,255,255,255,255,255,248,1,191,255,192,47,192,2,252,0,127,255,255,128,63,128,3,248,0,191,255,208,0,127,0,3,248,0,127,255,192,0,191,0,7,240,0,57,47,192,0,254,0,15,240,0,0,47,192,1,254,0,31,224,0,0,47,192,2,255,244,63,192,0,0,47,192,3,255,255,191,128,0,0,47,192,2,247,255,255,0,0,0,47,192,0,0,127,255,64,0,0,47,192,0,0,31,255,224,0,0,47,192,0,0,191,255,253,0,0,47,192,0,27,255,75,255,128,0,47,128,22,255,252,1,255,224,47,255,128,255,255,208,0,47,240,15,255,64,127,249,0,0,7,208,15,249,0,62,64,0,0,1,128,0,0,0,0,0,0,0,0,0, + // 0x6389 掉 + 137,99,35,36,68,37,1,252,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,255,255,240,0,63,64,0,0,63,255,255,240,0,63,64,0,0,63,255,255,240,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,127,255,255,0,0,63,64,0,0,127,255,255,63,255,255,255,255,0,127,255,255,63,255,255,255,255,0,0,63,64,63,234,170,170,255,0,0,63,64,63,64,0,0,63,0,0,63,64,63,64,0,0,63,0,0,63,64,63,170,170,170,191,0,0,63,64,63,255,255,255,255,0,0,63,91,63,255,255,255,255,0,0,63,255,63,64,0,0,63,0,1,191,255,63,64,0,0,63,0,111,255,255,63,64,0,0,63,0,127,255,208,63,234,170,170,191,0,63,255,64,63,255,255,255,255,0,57,63,64,63,255,255,255,255,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,67,255,255,255,255,255,244,0,63,67,255,255,255,255,255,244,0,63,67,255,255,255,255,255,244,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,127,64,0,0,63,64,0,0,63,255,0,0,0,63,64,0,0,63,255,0,0,0,63,64,0,0,47,248,0,0,0,63,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x63a2 探 + 162,99,35,35,59,37,1,253,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,63,255,255,255,255,224,0,63,0,63,255,255,255,255,240,0,63,0,63,255,255,255,255,240,0,63,0,62,0,0,0,7,240,0,63,0,62,11,224,189,7,240,0,63,0,62,11,208,189,7,240,127,255,255,62,15,208,189,3,224,127,255,255,0,15,192,189,0,0,127,255,255,0,31,192,189,0,128,0,63,0,0,63,128,189,1,244,0,63,0,0,255,0,190,1,244,0,63,0,7,254,0,191,171,240,0,63,0,191,248,0,127,255,240,0,63,0,63,208,21,95,255,192,0,63,26,41,0,47,128,0,0,0,63,254,0,0,47,128,0,0,1,191,255,0,0,47,128,0,0,111,255,254,0,0,47,128,0,0,191,255,144,191,255,255,255,255,240,127,255,0,191,255,255,255,255,240,56,63,0,191,255,255,255,255,240,0,63,0,0,3,255,252,0,0,0,63,0,0,15,255,255,0,0,0,63,0,0,47,255,255,128,0,0,63,0,0,191,111,159,224,0,0,63,0,2,254,47,135,248,0,0,63,0,11,252,47,130,254,0,0,63,0,127,240,47,128,255,208,0,63,2,255,192,47,128,63,248,0,127,7,254,0,47,128,15,244,47,255,1,244,0,47,128,2,208,31,254,0,64,0,47,128,0,0,15,228,0,0,0,47,128,0,0, + // 0x63a5 接 + 165,99,35,36,68,37,1,252,0,31,128,0,0,47,192,0,0,0,47,192,0,0,47,192,0,0,0,47,192,0,0,47,192,0,0,0,47,192,0,0,47,192,0,0,0,47,192,63,255,255,255,255,208,0,47,192,63,255,255,255,255,208,0,47,192,63,255,255,255,255,208,0,47,192,0,190,0,7,240,0,63,255,255,0,127,0,11,224,0,63,255,255,0,63,0,15,208,0,63,255,255,0,63,64,15,192,0,0,47,192,0,47,128,47,128,0,0,47,192,0,47,128,63,64,0,0,47,193,255,255,255,255,255,244,0,47,193,255,255,255,255,255,244,0,47,193,255,255,255,255,255,244,0,47,192,0,2,252,0,0,0,0,47,239,0,3,244,0,0,0,0,127,255,0,11,240,0,0,0,111,255,255,255,255,255,255,255,244,191,255,229,255,255,255,255,255,244,191,255,192,255,255,255,255,255,244,125,47,192,0,127,0,11,240,0,0,47,192,0,254,0,15,224,0,0,47,192,1,252,0,31,192,0,0,47,192,3,252,0,63,192,0,0,47,192,7,255,208,127,64,0,0,47,192,15,255,255,255,0,0,0,47,192,1,203,255,253,0,0,0,47,192,0,0,127,255,128,0,0,47,192,0,6,255,255,248,0,5,127,128,5,191,254,47,255,64,31,255,131,255,255,228,2,255,208,15,255,2,255,253,0,0,47,192,15,248,0,249,64,0,0,7,0,0,0,0,0,0,0,0,0,0, + // 0x63a7 控 + 167,99,35,35,59,37,1,253,0,63,0,0,0,47,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,255,255,255,255,255,240,0,63,0,255,255,255,255,255,240,0,63,0,255,255,255,255,255,240,0,63,0,252,11,208,189,3,240,127,255,254,252,15,208,189,3,240,127,255,254,252,15,192,189,3,240,127,255,254,252,15,192,189,0,0,0,63,0,0,47,192,189,1,0,0,63,0,0,63,128,189,2,240,0,63,0,0,191,0,190,2,240,0,63,0,7,253,0,191,255,240,0,63,25,191,248,0,127,255,224,0,63,254,127,208,0,31,255,128,0,191,255,61,0,0,0,0,0,31,255,253,0,0,0,0,0,0,191,255,128,0,0,0,0,0,0,191,255,0,31,255,255,255,255,128,125,63,0,31,255,255,255,255,128,0,63,0,31,255,255,255,255,128,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,63,0,0,0,63,128,0,0,0,127,3,255,255,255,255,255,244,47,255,3,255,255,255,255,255,244,31,254,3,255,255,255,255,255,244,15,228,0,0,0,0,0,0,0, + // 0x63d0 提 + 208,99,35,35,59,37,1,253,0,42,0,0,0,0,0,0,0,0,63,0,6,170,170,170,169,0,0,63,0,15,255,255,255,255,0,0,63,0,15,255,255,255,255,0,0,63,0,15,208,0,0,127,0,0,63,0,15,208,0,0,127,0,0,63,0,15,229,85,85,191,0,127,255,255,15,255,255,255,255,0,127,255,255,15,255,255,255,255,0,127,255,255,15,208,0,0,127,0,0,127,0,15,208,0,0,127,0,0,63,0,15,234,170,170,191,0,0,63,0,15,255,255,255,255,0,0,63,0,15,255,255,255,255,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,5,127,255,255,255,255,224,0,63,254,191,255,255,255,255,240,1,191,255,191,255,255,255,255,240,127,255,254,0,0,47,128,0,0,191,255,144,1,64,47,128,0,0,127,255,0,7,224,47,128,0,0,56,63,0,11,224,47,128,0,0,0,63,0,15,208,47,255,255,0,0,63,0,15,192,47,255,255,0,0,63,0,31,208,47,234,170,0,0,63,0,47,240,47,128,0,0,0,63,0,63,248,47,128,0,0,0,63,0,191,189,47,128,0,0,0,63,0,253,63,191,128,0,0,0,63,2,252,31,255,128,0,0,63,255,11,244,7,255,255,255,248,47,254,31,224,0,255,255,255,244,31,244,7,192,0,6,255,255,240,0,0,0,0,0,0,0,0,0, + // 0x63d2 插 + 210,99,34,35,59,37,1,253,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,5,190,0,0,63,0,0,86,175,255,255,64,0,63,0,63,255,255,255,255,128,0,63,0,63,255,255,250,80,0,0,63,0,26,165,111,128,0,0,0,63,0,0,0,47,128,0,0,0,63,0,0,0,47,128,0,0,127,255,255,0,0,47,128,0,0,127,255,255,255,255,255,255,255,240,127,255,255,255,255,255,255,255,240,0,63,0,255,255,255,255,255,240,0,63,0,0,0,47,128,0,0,0,63,0,0,0,47,128,0,0,0,63,0,0,31,47,128,0,0,0,63,0,57,255,255,143,255,208,0,63,110,63,255,191,143,255,208,0,63,254,63,244,47,143,255,208,11,255,255,63,0,47,128,15,208,191,255,248,63,0,47,128,15,208,191,255,64,63,0,47,128,15,208,127,191,0,63,0,47,128,15,208,16,63,0,63,255,47,143,255,208,0,63,0,63,255,47,143,255,208,0,63,0,63,255,47,143,255,208,0,63,0,63,0,47,128,15,208,0,63,0,63,0,47,128,15,208,0,63,0,63,0,47,128,15,208,0,63,0,63,0,47,128,15,208,0,63,0,63,0,47,128,15,208,0,63,0,63,255,255,255,255,208,0,127,0,63,255,255,255,255,208,47,255,0,63,255,255,255,255,208,31,254,0,63,0,0,0,15,208,15,228,0,63,0,0,0,11,192, + // 0x63db 換 + 219,99,35,36,68,37,1,252,0,63,0,0,30,64,0,0,0,0,63,0,0,63,128,0,0,0,0,63,0,0,63,64,0,0,0,0,63,0,0,255,255,252,0,0,0,63,0,1,255,255,255,0,0,0,63,0,3,254,171,254,0,0,0,63,0,15,240,2,252,0,0,0,63,0,47,192,3,244,0,0,127,255,255,191,64,11,240,0,0,127,255,255,255,255,255,255,255,192,127,255,255,255,255,255,255,255,192,0,63,0,63,255,255,255,255,192,0,63,0,47,3,224,244,15,192,0,63,0,47,3,208,244,15,192,0,63,0,47,7,208,244,15,192,0,63,0,47,15,192,248,31,192,0,63,5,47,127,64,255,255,192,0,63,254,47,254,0,127,255,192,1,191,255,47,116,0,0,15,192,127,255,254,47,0,5,0,15,192,191,255,144,47,0,63,64,15,192,127,255,0,26,0,63,0,10,64,56,63,0,0,0,63,0,0,0,0,63,2,255,255,255,255,255,240,0,63,2,255,255,255,255,255,240,0,63,1,255,255,255,255,255,240,0,63,0,0,1,255,224,0,0,0,63,0,0,3,255,244,0,0,0,63,0,0,11,242,253,0,0,0,63,0,0,47,224,255,64,0,0,63,0,1,255,128,127,244,0,0,127,0,31,254,0,15,255,144,47,255,11,255,244,0,3,255,244,31,254,3,255,64,0,0,127,208,15,228,2,228,0,0,0,2,128,0,0,0,0,0,0,0,0,0, + // 0x64c7 擇 + 199,100,35,36,68,37,1,252,0,63,0,0,0,0,0,0,0,0,63,0,21,85,85,85,85,64,0,63,0,47,255,255,255,255,208,0,63,0,47,255,255,255,255,208,0,63,0,47,3,224,61,7,208,0,63,0,47,3,224,61,7,208,0,63,0,47,3,224,61,7,208,0,63,0,47,255,255,255,255,208,127,255,255,47,255,255,255,255,208,127,255,255,5,85,111,213,85,64,127,255,255,0,0,47,128,0,0,0,63,0,10,170,191,234,170,64,0,63,0,15,255,255,255,255,128,0,63,0,15,255,255,255,255,128,0,63,0,0,0,47,128,0,0,0,63,0,0,0,47,128,0,0,0,63,110,170,170,191,234,170,164,0,63,254,255,255,255,255,255,244,27,255,255,255,255,255,255,255,244,255,255,228,0,126,0,3,240,0,191,255,0,0,63,0,11,224,0,126,127,0,0,63,64,15,192,0,16,63,0,106,191,170,175,234,160,0,63,0,191,255,255,255,255,240,0,63,0,191,255,255,255,255,240,0,63,0,0,0,47,128,0,0,0,63,0,0,0,47,128,0,0,0,63,0,42,170,191,234,170,128,0,63,0,63,255,255,255,255,192,0,63,0,63,255,255,255,255,192,0,63,0,0,0,47,128,0,0,0,127,0,0,0,47,128,0,0,47,255,0,0,0,47,128,0,0,31,254,0,0,0,47,128,0,0,15,228,0,0,0,47,128,0,0,0,0,0,0,0,0,0,0,0, + // 0x64ca 擊 + 202,100,34,35,59,37,2,253,0,3,208,0,0,0,0,0,0,0,3,224,0,3,255,255,128,0,191,255,255,255,67,255,255,128,0,191,255,255,255,67,245,111,129,0,0,3,224,0,7,224,31,131,128,31,255,255,252,15,208,31,131,192,31,87,229,188,47,192,15,255,192,31,87,229,124,191,64,11,255,128,31,255,255,252,29,0,1,85,0,31,3,224,60,63,255,255,252,0,31,255,255,252,63,255,255,248,0,5,87,229,84,7,229,87,240,0,255,255,255,255,67,244,15,208,0,255,255,255,255,64,254,127,128,0,0,3,224,104,0,127,254,0,0,31,3,224,188,1,191,253,0,0,31,3,224,188,191,255,255,229,0,31,255,255,252,63,228,47,255,208,15,255,255,252,20,0,2,255,128,0,0,0,5,90,191,244,6,0,0,255,255,255,255,255,248,0,0,0,255,255,255,250,84,0,0,0,0,0,0,3,240,0,0,0,0,7,255,255,255,255,255,255,248,0,7,255,255,255,255,255,255,248,0,0,0,0,7,244,0,0,0,0,0,0,0,3,240,0,0,0,0,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,21,85,85,87,245,85,85,85,64,0,0,0,3,240,0,0,0,0,0,0,0,3,240,0,0,0,0,0,0,26,175,240,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,15,255,128,0,0,0,0, + // 0x64cb 擋 + 203,100,34,35,59,37,1,253,0,63,0,0,64,47,128,16,0,0,63,0,15,192,47,128,127,0,0,63,0,11,240,47,128,191,0,0,63,0,3,244,47,128,252,0,0,63,0,2,252,47,130,248,0,0,63,0,0,244,47,130,240,0,0,63,0,191,255,255,255,255,240,0,63,0,191,255,255,255,255,240,127,255,255,191,170,170,170,175,240,127,255,255,190,0,0,0,7,240,127,255,255,190,0,0,0,7,240,0,63,0,190,255,255,255,255,240,0,63,0,21,255,255,255,249,80,0,63,0,0,253,85,87,248,0,0,63,0,0,252,0,2,248,0,0,63,0,0,252,0,2,248,0,0,63,25,0,253,85,86,248,0,0,63,254,0,255,255,255,248,0,1,191,255,0,255,255,255,248,0,191,255,253,0,0,0,0,0,0,191,255,128,0,0,0,0,0,0,127,255,0,31,255,255,255,255,192,36,63,0,31,255,255,255,255,192,0,63,0,31,234,191,170,191,192,0,63,0,31,128,47,64,47,192,0,63,0,31,128,47,64,47,192,0,63,0,31,255,255,255,255,192,0,63,0,31,255,255,255,255,192,0,63,0,31,213,127,149,127,192,0,63,0,31,128,47,64,47,192,0,63,0,31,128,47,64,47,192,0,127,0,31,255,255,255,255,192,47,255,0,31,255,255,255,255,192,31,254,0,31,234,170,170,191,192,15,228,0,31,128,0,0,47,128, + // 0x64e0 擠 + 224,100,35,36,68,37,1,252,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,63,2,255,255,255,255,255,240,0,63,3,255,255,255,255,255,240,0,63,3,255,255,255,255,255,240,0,63,0,0,3,128,61,0,0,0,127,0,0,3,208,188,1,64,127,255,252,0,3,240,248,31,208,127,255,253,255,255,241,255,255,208,127,255,253,255,255,171,159,255,0,0,63,0,31,31,47,15,79,64,0,63,0,46,31,47,15,75,128,0,63,0,62,31,47,15,71,192,0,63,0,124,47,47,15,71,224,0,63,0,252,62,47,47,253,244,0,63,111,243,254,47,63,248,244,0,63,254,210,248,47,20,0,16,6,255,253,69,64,0,0,21,0,191,255,228,15,208,0,0,126,0,191,255,0,15,208,0,0,126,0,127,191,0,15,255,255,255,254,0,36,63,0,15,255,255,255,254,0,0,63,0,15,250,170,170,254,0,0,63,0,15,208,0,0,126,0,0,63,0,15,208,0,0,126,0,0,63,0,15,250,170,170,254,0,0,63,0,15,255,255,255,254,0,0,63,0,31,255,255,255,254,0,0,63,0,63,128,0,0,126,0,0,63,0,127,64,0,0,126,0,0,127,0,255,0,0,0,126,0,63,255,3,253,0,0,0,126,0,47,253,3,248,0,0,0,126,0,31,228,0,160,0,0,0,126,0,0,0,0,0,0,0,0,0,0, + // 0x6536 收 + 54,101,35,36,68,37,1,252,0,0,10,144,1,228,0,0,0,0,0,15,208,2,252,0,0,0,0,0,15,208,3,252,0,0,0,0,0,15,208,3,248,0,0,0,1,80,15,208,7,240,0,0,0,7,240,15,208,11,240,0,0,0,7,240,15,208,15,224,0,0,0,7,240,15,208,31,255,255,255,248,7,240,15,208,63,255,255,255,248,7,240,15,208,63,255,255,255,248,7,240,15,208,191,213,85,127,144,7,240,15,208,255,192,0,127,0,7,240,15,210,255,192,0,191,0,7,240,15,215,255,208,0,254,0,7,240,15,239,255,240,0,253,0,7,240,15,255,231,240,1,252,0,7,240,15,239,195,244,3,252,0,7,240,15,215,66,252,3,244,0,7,240,15,208,1,252,11,240,0,7,240,15,208,0,254,15,224,0,7,240,15,208,0,191,47,208,0,7,240,15,208,0,63,191,192,0,7,246,255,208,0,47,255,64,0,11,255,255,208,0,15,254,0,0,191,255,255,208,0,11,252,0,0,127,255,79,208,0,15,252,0,0,63,144,15,208,0,63,255,0,0,20,0,15,208,0,191,255,128,0,0,0,15,208,3,255,127,224,0,0,0,15,208,31,252,15,252,0,0,0,15,208,191,240,7,255,64,0,0,15,235,255,192,1,255,244,0,0,15,223,254,0,0,127,248,0,0,15,215,240,0,0,11,224,0,0,15,210,64,0,0,1,192,0,0,0,0,0,0,0,0,0, + // 0x653e 放 + 62,101,35,36,68,37,1,252,0,3,244,0,0,58,0,0,0,0,3,244,0,0,63,64,0,0,0,3,244,0,0,127,0,0,0,0,3,244,0,0,191,0,0,0,0,3,244,0,0,255,0,0,0,0,3,244,0,0,254,0,0,0,127,255,255,255,193,253,0,0,0,127,255,255,255,194,255,255,255,248,127,255,255,255,195,255,255,255,248,0,127,0,0,3,255,255,255,248,0,63,0,0,11,244,0,191,0,0,63,0,0,15,244,0,254,0,0,63,0,0,31,248,0,253,0,0,63,0,0,63,252,0,252,0,0,63,255,254,127,252,1,252,0,0,63,255,254,255,253,2,252,0,0,63,255,255,254,190,3,248,0,0,127,0,254,252,127,7,244,0,0,127,0,253,40,63,75,240,0,0,127,0,253,0,63,143,224,0,0,127,0,253,0,31,223,208,0,0,127,0,253,0,15,255,192,0,0,190,0,253,0,11,255,64,0,0,254,0,253,0,7,255,0,0,0,253,0,252,0,3,254,0,0,0,252,0,252,0,3,254,0,0,2,252,0,252,0,15,255,64,0,3,248,0,252,0,47,255,192,0,7,244,0,252,0,191,239,240,0,15,240,1,252,2,255,15,252,0,31,224,2,252,31,252,3,255,64,63,192,3,248,191,240,0,255,224,255,67,255,251,255,192,0,127,244,126,1,255,241,254,0,0,15,224,12,1,255,128,240,0,0,1,192,0,0,0,0,0,0,0,0,0, + // 0x6557 敗 + 87,101,35,35,59,37,1,253,0,0,0,0,0,126,0,0,0,7,255,255,253,0,191,0,0,0,11,255,255,254,0,255,0,0,0,11,255,255,254,0,254,0,0,0,11,224,0,254,1,253,0,0,0,11,224,0,254,2,252,0,0,0,11,224,0,254,3,252,0,0,0,11,224,0,254,3,255,255,255,248,11,250,170,254,11,255,255,255,248,11,255,255,254,15,255,255,255,248,11,255,255,254,31,245,85,255,80,11,224,0,254,47,240,0,253,0,11,224,0,254,127,244,1,253,0,11,224,0,254,255,248,2,252,0,11,224,0,255,255,252,2,252,0,11,250,170,255,254,252,3,248,0,11,255,255,255,248,253,3,244,0,11,255,255,254,240,254,11,240,0,11,224,0,254,0,127,15,240,0,11,224,0,254,0,63,95,208,0,11,224,0,254,0,63,239,192,0,11,224,0,254,0,31,255,128,0,11,255,255,254,0,15,255,64,0,11,255,255,254,0,7,255,0,0,11,255,255,254,0,3,253,0,0,0,0,0,64,0,11,254,0,0,0,190,7,208,0,31,255,64,0,0,254,11,240,0,127,255,208,0,2,252,3,252,1,255,175,244,0,3,248,1,253,11,254,11,253,0,15,240,0,191,127,248,3,255,128,31,224,0,63,255,240,0,255,244,127,192,0,38,255,128,0,63,244,63,64,0,0,252,0,0,11,208,9,0,0,0,96,0,0,1,128, + // 0x6574 整 + 116,101,34,34,50,37,2,254,0,2,240,0,0,41,0,0,0,0,3,240,0,0,63,64,0,0,85,87,245,85,64,127,0,0,0,255,255,255,255,192,254,0,0,0,255,255,255,255,193,255,170,170,128,0,3,240,0,3,255,255,255,192,63,255,255,255,75,255,255,255,192,63,255,255,255,111,240,3,244,0,63,3,244,47,255,252,3,240,0,63,3,240,31,255,189,11,224,0,63,3,240,31,108,63,31,192,0,63,255,255,255,68,31,255,128,0,63,255,255,255,64,15,255,0,0,0,47,254,0,0,7,253,0,0,0,191,255,208,0,31,255,64,0,2,255,255,253,0,191,255,224,0,31,243,241,255,75,255,95,254,0,255,195,240,46,191,252,3,255,208,190,3,240,4,127,208,0,191,192,52,3,240,0,45,0,0,11,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,10,170,170,175,254,170,170,168,0,0,0,0,3,240,0,0,0,0,0,31,192,3,240,0,0,0,0,0,31,192,3,255,255,255,64,0,0,31,192,3,255,255,255,64,0,0,31,192,3,250,170,170,0,0,0,31,192,3,240,0,0,0,0,0,31,192,3,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x6578 數 + 120,101,35,36,68,37,1,252,0,0,63,0,0,3,160,0,0,0,0,63,0,0,3,240,0,0,3,255,255,255,240,7,240,0,0,3,255,255,255,240,7,240,0,0,3,245,127,87,240,11,224,0,0,3,240,63,3,240,15,224,0,0,127,255,255,255,255,143,208,0,0,127,255,255,255,255,143,255,255,244,107,240,127,3,250,95,255,255,244,3,240,63,3,240,63,255,255,244,3,245,127,87,240,63,128,63,64,3,255,255,255,240,127,128,63,0,3,255,255,255,240,255,128,63,0,0,0,63,0,0,255,192,127,0,15,255,255,255,254,255,192,190,0,15,255,255,255,255,255,208,189,0,15,192,127,1,255,255,224,253,0,15,192,63,0,255,247,240,252,0,15,192,127,1,254,211,241,252,0,15,255,255,255,252,67,246,248,0,15,255,255,255,252,2,251,244,0,0,3,244,0,0,1,255,240,0,0,7,240,0,0,0,255,224,0,127,255,255,255,255,128,191,208,0,127,255,255,255,255,128,127,192,0,42,191,234,175,128,0,63,192,0,0,191,0,47,64,0,255,208,0,0,255,64,63,0,2,255,240,0,3,255,249,253,0,7,255,248,0,1,183,255,252,0,31,242,253,0,0,0,191,253,0,127,192,255,64,0,27,255,255,130,255,0,127,224,31,255,253,63,251,253,0,31,244,15,255,128,7,195,240,0,7,208,11,144,0,0,1,128,0,1,128,0,0,0,0,0,0,0,0,0, + // 0x6599 料 + 153,101,35,35,59,37,1,253,0,6,160,0,0,0,3,240,0,0,7,224,0,0,0,3,240,0,4,7,224,16,0,0,3,240,0,62,7,224,126,3,192,3,240,0,47,7,224,189,15,244,3,240,0,31,7,224,252,7,254,3,240,0,15,135,224,248,0,255,131,240,0,15,199,225,244,0,47,195,240,0,11,199,226,240,0,11,131,240,0,11,199,227,224,0,2,3,240,0,7,215,227,208,0,0,3,240,0,2,71,226,192,0,0,3,240,0,0,11,240,0,20,0,3,240,0,63,255,255,253,62,0,3,240,0,63,255,255,253,191,208,3,240,0,63,255,255,253,47,248,3,240,0,0,47,240,0,7,254,3,240,0,0,63,248,0,0,188,3,240,0,0,127,253,0,0,40,3,240,0,0,255,255,0,0,0,3,240,0,1,255,255,192,0,0,3,240,80,2,251,235,224,0,0,7,255,244,3,231,227,248,0,22,255,255,248,11,215,225,252,107,255,255,255,244,31,199,224,246,255,255,255,244,0,63,135,224,97,255,254,151,240,0,191,7,224,0,249,64,3,240,0,190,7,224,0,0,0,3,240,0,60,7,224,0,0,0,3,240,0,36,7,224,0,0,0,3,240,0,0,7,224,0,0,0,3,240,0,0,7,224,0,0,0,3,240,0,0,7,224,0,0,0,3,240,0,0,7,224,0,0,0,3,240,0,0,7,224,0,0,0,3,240,0, + // 0x659c 斜 + 156,101,35,35,59,37,1,253,0,1,254,0,0,0,0,252,0,0,3,255,128,0,0,0,252,0,0,7,255,224,0,0,0,252,0,0,15,255,252,0,60,0,252,0,0,31,211,255,0,255,0,252,0,0,63,192,255,192,127,192,252,0,0,255,0,63,224,31,240,252,0,2,253,0,31,244,7,253,252,0,11,248,0,7,224,1,253,252,0,47,240,0,2,128,0,160,252,0,191,255,255,255,0,0,0,252,0,255,255,255,255,0,0,0,252,0,61,255,255,255,0,208,0,252,0,0,0,190,0,3,248,0,252,0,0,0,190,0,3,255,0,252,0,0,0,190,0,0,255,192,252,0,0,0,190,0,0,47,240,252,0,63,255,255,255,240,11,244,252,0,63,255,255,255,240,2,208,252,0,63,255,255,255,240,0,0,252,0,0,0,190,0,0,0,0,252,16,0,0,190,0,0,0,1,255,244,2,224,190,47,0,1,111,255,248,3,240,190,47,65,191,255,255,248,7,240,190,31,207,255,255,253,0,11,224,190,15,219,255,229,252,0,15,192,190,7,247,228,0,252,0,31,192,190,3,240,0,0,252,0,63,64,190,2,244,0,0,252,0,191,0,190,1,244,0,0,252,0,61,0,190,0,0,0,0,252,0,4,0,190,0,0,0,0,252,0,0,127,253,0,0,0,0,252,0,0,63,252,0,0,0,0,252,0,0,47,224,0,0,0,0,252,0, + // 0x65b0 新 + 176,101,35,36,68,37,1,252,0,0,168,0,0,0,0,1,0,0,0,252,0,0,0,0,111,64,0,0,252,0,0,0,27,255,208,0,0,252,0,2,70,255,255,208,47,255,255,255,227,255,255,244,0,47,255,255,255,227,255,249,0,0,47,255,255,255,227,249,0,0,0,1,244,0,189,3,244,0,0,0,1,248,0,253,3,244,0,0,0,0,252,1,252,3,244,0,0,0,0,189,2,244,3,244,0,0,0,0,125,2,240,3,244,0,0,0,63,255,255,255,243,248,0,0,0,63,255,255,255,243,255,255,255,244,63,255,255,255,243,255,255,255,244,0,0,252,0,3,255,255,255,244,0,0,252,0,3,244,2,248,0,0,0,252,0,3,244,2,248,0,0,0,252,0,3,244,2,248,0,63,255,255,255,227,244,2,248,0,63,255,255,255,227,244,2,248,0,63,255,255,255,227,240,2,248,0,0,3,252,0,3,240,2,248,0,0,15,255,64,7,240,2,248,0,0,47,255,224,11,224,2,248,0,0,127,255,248,15,224,2,248,0,0,254,253,255,15,208,2,248,0,3,248,252,127,95,192,2,248,0,31,240,252,30,63,128,2,248,0,127,192,252,4,127,64,2,248,0,127,64,252,0,255,0,2,248,0,29,0,252,2,253,0,2,248,0,0,0,252,7,248,0,2,248,0,0,0,252,2,240,0,2,248,0,0,0,252,0,128,0,2,164,0,0,0,0,0,0,0,0,0,0, + // 0x65b7 斷 + 183,101,33,35,59,37,3,253,0,20,0,16,0,0,0,64,0,164,45,0,184,0,0,2,244,0,248,60,0,240,0,0,127,253,0,249,181,70,213,1,27,255,248,0,255,243,223,207,71,255,255,64,0,249,247,135,223,7,255,224,0,0,248,191,2,253,7,244,0,0,0,248,62,0,248,7,240,0,0,0,248,61,192,247,135,240,0,0,0,248,181,210,227,199,240,0,0,0,255,255,255,255,215,240,0,0,0,251,250,255,250,247,240,0,0,0,248,0,0,0,71,240,0,0,0,254,170,170,170,135,255,255,255,64,255,255,255,255,199,255,255,255,64,255,255,255,255,199,255,255,255,64,248,45,0,184,7,240,15,192,0,248,60,0,240,7,240,15,192,0,248,180,2,224,7,224,15,192,0,255,242,143,198,71,224,15,192,0,250,227,203,143,71,224,15,192,0,248,255,67,238,7,224,15,192,0,248,127,1,252,11,224,15,192,0,248,61,0,248,11,208,15,192,0,248,125,192,243,79,208,15,192,0,248,241,227,211,207,192,15,192,0,255,255,255,255,239,192,15,192,0,255,233,191,165,255,128,15,192,0,248,0,0,0,63,64,15,192,0,255,255,255,255,255,0,15,192,0,255,255,255,255,255,0,15,192,0,254,170,170,171,253,0,15,192,0,248,0,0,2,252,0,15,192,0,248,0,0,0,180,0,15,192,0,80,0,0,0,32,0,15,192,0, + // 0x65bc 於 + 188,101,35,36,68,37,1,252,0,3,244,0,0,7,244,0,0,0,3,244,0,0,11,252,0,0,0,3,244,0,0,15,253,0,0,0,3,244,0,0,31,254,0,0,0,3,244,0,0,63,191,0,0,0,3,244,0,0,127,47,128,0,127,255,255,255,64,254,31,208,0,127,255,255,255,65,253,15,240,0,127,255,255,255,67,252,7,248,0,0,191,0,0,11,240,2,253,0,0,127,0,0,31,224,0,255,0,0,191,0,0,127,192,0,191,192,0,191,0,0,255,64,0,63,240,0,191,0,3,254,0,0,15,248,0,191,255,254,248,0,0,3,240,0,191,255,252,224,31,64,0,224,0,191,255,252,64,63,224,0,0,0,254,1,252,0,31,252,0,0,0,253,1,252,0,3,255,0,0,0,253,1,252,0,0,191,192,0,0,253,1,252,0,0,47,192,0,0,252,2,248,0,0,11,0,0,0,252,2,248,0,0,0,0,0,1,252,2,248,0,0,0,0,0,2,248,2,248,1,64,0,0,0,3,248,2,248,7,244,0,0,0,3,244,2,248,15,255,0,0,0,7,240,3,248,11,255,224,0,0,11,240,3,244,0,191,253,0,0,15,208,3,244,0,11,255,128,0,47,192,3,244,0,1,255,244,0,63,192,11,240,0,0,47,253,0,191,71,255,240,0,0,7,255,0,62,3,255,208,0,0,0,252,0,12,3,255,64,0,0,0,36,0,0,0,0,0,0,0,0,0,0, + // 0x6607 昇 + 7,102,33,34,50,37,2,253,1,255,255,255,255,255,255,192,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,1,252,0,0,0,0,15,208,0,1,252,0,0,0,0,15,208,0,1,252,0,0,0,0,15,208,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,1,254,170,170,170,170,175,208,0,1,252,0,0,0,0,15,208,0,1,252,0,0,0,0,15,208,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,1,255,255,255,255,255,255,208,0,0,0,0,1,64,0,0,0,0,0,0,1,191,208,15,224,0,0,0,26,255,255,244,15,224,0,0,15,255,255,255,144,15,224,0,0,11,255,255,208,0,15,224,0,0,7,165,63,128,0,15,224,0,0,0,0,47,128,0,15,224,0,0,0,0,47,128,0,15,224,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,127,64,0,15,224,0,0,0,0,255,0,0,15,224,0,0,0,2,254,0,0,15,224,0,0,0,11,252,0,0,15,224,0,0,0,63,244,0,0,15,224,0,0,6,255,224,0,0,15,224,0,0,47,255,64,0,0,15,224,0,0,11,248,0,0,0,15,224,0,0,3,128,0,0,0,15,224,0,0, + // 0x660e 明 + 14,102,32,34,16,37,3,252,255,255,255,66,255,255,255,253,255,255,255,66,255,255,255,253,255,255,255,66,255,255,255,253,253,0,63,66,248,0,0,253,252,0,63,66,248,0,0,253,252,0,63,66,248,0,0,253,252,0,63,66,248,0,0,253,252,0,63,66,248,0,0,253,252,0,63,66,252,0,0,253,252,0,63,66,255,255,255,253,255,255,255,66,255,255,255,253,255,255,255,66,255,255,255,253,255,255,255,66,248,0,0,253,252,0,63,66,248,0,0,253,252,0,63,66,248,0,0,253,252,0,63,67,248,0,0,253,252,0,63,67,248,0,0,253,252,0,63,67,248,0,0,253,252,0,63,67,255,255,255,253,253,0,63,67,255,255,255,253,255,255,255,71,255,255,255,253,255,255,255,75,240,0,0,253,255,255,255,79,224,0,0,253,252,0,0,15,208,0,0,253,252,0,0,47,192,0,0,253,252,0,0,63,128,0,0,253,84,0,0,191,64,0,0,253,0,0,0,255,0,0,0,253,0,0,3,253,0,0,0,253,0,0,15,248,0,5,86,253,0,0,63,240,0,11,255,252,0,0,47,192,0,7,255,248,0,0,11,0,0,3,255,144,0,0,0,0,0,0,0,0, + // 0x662f 是 + 47,102,35,34,50,37,1,253,0,42,170,170,170,170,170,144,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,63,64,0,0,0,11,240,0,0,63,64,0,0,0,11,240,0,0,63,149,85,85,85,95,240,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,63,64,0,0,0,11,240,0,0,63,64,0,0,0,11,240,0,0,63,170,170,170,170,175,240,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,0,0,0,0,254,0,0,0,0,0,2,148,0,254,0,0,0,0,0,3,248,0,254,0,0,0,0,0,7,244,0,254,0,0,0,0,0,11,240,0,255,255,255,253,0,0,15,240,0,255,255,255,253,0,0,31,244,0,255,255,255,253,0,0,47,252,0,254,0,0,0,0,0,63,255,0,254,0,0,0,0,0,255,191,128,254,0,0,0,0,2,254,47,244,254,0,0,0,0,7,252,15,255,254,0,0,0,0,31,244,2,255,255,255,255,255,244,127,224,0,127,255,255,255,255,240,47,64,0,1,191,255,255,255,224,9,0,0,0,0,0,0,0,0, + // 0x6642 時 + 66,102,33,35,59,37,3,253,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,255,255,248,0,0,254,0,0,0,255,255,248,127,255,255,255,252,0,255,255,248,127,255,255,255,252,0,252,2,248,127,255,255,255,252,0,252,2,248,0,0,254,0,0,0,252,2,248,0,0,254,0,0,0,252,2,248,0,0,254,0,0,0,252,2,248,0,0,254,0,0,0,252,2,248,0,0,254,0,0,0,252,2,250,255,255,255,255,255,128,255,255,250,255,255,255,255,255,128,255,255,250,255,255,255,255,255,128,255,255,248,0,0,0,63,64,0,252,2,248,0,0,0,63,64,0,252,2,248,0,0,0,63,64,0,252,2,248,0,0,0,63,64,0,252,2,250,255,255,255,255,255,0,252,2,250,255,255,255,255,255,0,252,2,250,255,255,255,255,255,0,252,2,248,0,0,0,63,64,0,252,2,248,11,192,0,63,64,0,255,255,248,15,240,0,63,64,0,255,255,248,7,252,0,63,64,0,255,255,248,2,254,0,63,64,0,252,0,0,0,255,0,63,64,0,252,0,0,0,127,128,63,64,0,252,0,0,0,62,0,63,64,0,252,0,0,0,20,0,63,64,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,255,255,0,0,0,0,0,0,0,255,254,0,0,0,0,0,0,0,191,228,0,0, + // 0x66ab 暫 + 171,102,33,35,59,37,2,253,0,3,240,0,0,0,0,96,0,0,3,240,0,0,0,27,252,0,191,255,255,255,203,175,255,254,0,191,255,255,255,203,255,255,144,0,0,3,244,0,11,254,144,0,0,0,3,240,0,11,208,0,0,0,47,255,255,255,11,208,0,0,0,47,171,250,191,11,208,0,0,0,47,3,240,47,15,250,170,170,128,47,255,255,255,15,255,255,255,192,47,171,250,191,15,255,255,255,192,47,3,240,47,15,192,31,192,0,47,171,250,191,15,192,31,192,0,47,255,255,255,47,128,31,192,0,0,3,240,0,63,64,31,192,0,255,255,255,255,255,0,31,192,0,255,255,255,255,253,0,31,192,0,0,3,240,3,252,0,31,192,0,0,3,240,1,240,0,31,192,0,0,1,80,0,64,0,6,64,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,234,170,170,170,255,0,0,0,63,64,0,0,0,191,0,0,0,63,64,0,0,0,191,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,149,85,85,85,191,0,0,0,63,64,0,0,0,191,0,0,0,63,64,0,0,0,191,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,234,170,170,170,255,0,0,0,63,64,0,0,0,127,0,0, + // 0x66f4 更 + 244,102,34,33,41,37,2,253,127,255,255,255,255,255,255,255,128,127,255,255,255,255,255,255,255,128,127,255,255,255,255,255,255,255,128,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,252,0,3,248,0,3,240,0,0,252,0,3,248,0,3,240,0,0,252,0,3,248,0,3,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,254,170,171,254,170,171,240,0,0,252,0,3,248,0,3,240,0,0,252,0,3,248,0,3,240,0,0,252,0,3,248,0,3,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,11,0,15,240,0,0,0,0,0,63,192,31,208,0,0,0,0,0,31,240,63,192,0,0,0,0,0,11,253,191,128,0,0,0,0,0,2,255,255,0,0,0,0,0,0,0,191,253,0,0,0,0,0,0,1,255,255,228,0,0,0,0,0,111,255,255,255,249,84,0,0,175,255,253,31,255,255,255,255,224,191,255,144,0,191,255,255,255,192,63,244,0,0,0,107,255,255,128,9,0,0,0,0,0,0,21,0, + // 0x6700 最 + 0,103,33,34,50,37,2,253,0,127,255,255,255,255,255,128,0,0,127,255,255,255,255,255,128,0,0,127,85,85,85,85,127,128,0,0,127,0,0,0,0,63,128,0,0,127,0,0,0,0,63,128,0,0,127,255,255,255,255,255,128,0,0,127,255,255,255,255,255,128,0,0,127,0,0,0,0,63,128,0,0,127,0,0,0,0,63,128,0,0,127,255,255,255,255,255,128,0,0,127,255,255,255,255,255,128,0,0,21,85,85,85,85,85,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,2,244,0,190,0,0,0,0,0,2,244,0,190,0,0,0,0,0,2,249,85,254,42,170,170,164,0,2,255,255,254,127,255,255,253,0,2,255,255,254,127,255,255,252,0,2,244,0,190,7,192,3,248,0,2,244,0,190,11,224,7,240,0,2,255,255,254,3,244,15,224,0,2,255,255,254,2,252,63,192,0,2,249,85,254,0,255,191,64,0,2,244,0,190,0,63,254,0,0,2,244,0,254,0,47,252,0,0,3,255,255,254,0,63,253,0,0,255,255,255,254,2,255,255,192,0,255,255,255,254,111,253,127,253,0,254,148,0,191,255,224,11,255,192,0,0,0,190,127,64,1,191,64,0,0,0,189,32,0,0,6,0, + // 0x6709 有 + 9,103,33,36,68,37,2,252,0,0,0,228,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,63,128,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,255,255,255,255,255,64,0,0,15,255,255,255,255,255,64,0,0,63,255,255,255,255,255,64,0,0,255,248,0,0,0,63,64,0,2,255,248,0,0,0,63,64,0,11,255,248,0,0,0,63,64,0,63,243,255,255,255,255,255,64,0,255,211,255,255,255,255,255,64,0,255,67,255,255,255,255,255,64,0,60,3,248,0,0,0,63,64,0,16,3,248,0,0,0,63,64,0,0,3,248,0,0,0,63,64,0,0,3,248,0,0,0,63,64,0,0,3,255,255,255,255,255,64,0,0,3,255,255,255,255,255,64,0,0,3,255,255,255,255,255,64,0,0,3,248,0,0,0,63,64,0,0,3,248,0,0,0,63,64,0,0,3,248,0,0,0,63,64,0,0,3,248,0,0,80,127,64,0,0,3,248,0,1,255,255,64,0,0,3,248,0,0,255,255,0,0,0,3,248,0,0,255,248,0,0,0,0,0,0,0,0,0,0,0, + // 0x677f 板 + 127,103,35,36,68,37,1,252,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,1,255,255,255,255,240,0,15,208,1,255,255,255,255,240,0,15,208,1,255,255,255,255,240,0,15,208,1,252,0,0,0,0,0,15,208,1,252,0,0,0,0,0,15,208,1,252,0,0,0,0,63,255,255,241,252,0,0,0,0,63,255,255,241,252,0,0,0,0,63,255,255,241,252,0,0,0,0,0,31,224,1,252,0,0,0,0,0,47,208,1,255,255,255,255,208,0,63,208,1,255,255,255,255,208,0,63,240,1,255,255,255,255,192,0,127,248,1,255,240,0,47,192,0,255,253,1,255,240,0,63,128,0,255,255,1,254,248,0,63,64,1,255,255,194,253,252,0,127,0,3,255,223,226,248,253,0,254,0,7,223,211,242,248,191,0,253,0,15,207,210,227,248,63,66,252,0,31,143,208,195,244,63,199,244,0,63,79,208,3,240,15,223,240,0,191,15,208,7,240,11,255,208,0,189,15,208,11,240,3,255,192,0,60,15,208,15,224,2,255,64,0,16,15,208,15,208,2,255,64,0,0,15,208,47,192,15,255,208,0,0,15,208,63,128,63,255,248,0,0,15,208,191,65,255,199,255,0,0,15,208,255,15,255,1,255,224,0,15,210,252,47,248,0,127,244,0,15,208,184,15,208,0,11,224,0,11,208,32,2,0,0,1,192,0,0,0,0,0,0,0,0,0, + // 0x67f1 柱 + 241,103,35,36,68,37,1,252,0,7,240,0,0,52,0,0,0,0,7,240,0,0,254,0,0,0,0,7,240,0,1,255,192,0,0,0,7,240,0,0,127,244,0,0,0,7,240,0,0,15,253,0,0,0,7,240,0,0,2,255,0,0,0,7,240,0,0,0,191,0,0,0,7,240,0,0,0,125,0,0,63,255,255,253,255,255,255,255,240,63,255,255,253,255,255,255,255,240,63,255,255,253,255,255,255,255,240,21,95,245,80,0,3,248,0,0,0,15,240,0,0,3,248,0,0,0,31,240,0,0,3,248,0,0,0,47,240,0,0,3,248,0,0,0,63,252,0,0,3,248,0,0,0,127,254,0,0,3,248,0,0,0,191,255,64,0,3,248,0,0,0,255,255,208,0,3,248,0,0,2,251,251,240,191,255,255,255,224,3,247,243,252,191,255,255,255,224,11,215,240,252,191,255,255,255,224,15,199,240,176,0,3,248,0,0,47,135,240,16,0,3,248,0,0,127,7,240,0,0,3,248,0,0,190,7,240,0,0,3,248,0,0,60,7,240,0,0,3,248,0,0,40,7,240,0,0,3,248,0,0,0,7,240,0,0,3,248,0,0,0,7,240,0,0,3,248,0,0,0,7,240,0,0,3,248,0,0,0,7,240,31,255,255,255,255,248,0,7,240,31,255,255,255,255,248,0,7,240,31,255,255,255,255,248,0,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6821 校 + 33,104,35,36,68,37,1,252,0,15,208,0,0,15,224,0,0,0,15,208,0,0,15,224,0,0,0,15,208,0,0,15,224,0,0,0,15,208,0,0,15,224,0,0,0,15,208,0,0,15,224,0,0,0,15,208,0,0,15,224,0,0,0,15,208,15,255,255,255,255,240,0,15,208,15,255,255,255,255,240,63,255,255,234,170,170,170,170,160,63,255,255,224,0,0,0,64,0,63,255,255,224,15,128,7,224,0,0,31,208,0,47,192,7,248,0,0,47,208,0,63,128,2,253,0,0,63,208,0,255,0,0,255,64,0,63,240,2,253,0,0,63,192,0,127,248,7,248,0,0,31,224,0,255,253,31,241,0,6,91,240,0,255,255,47,239,192,11,243,244,2,255,239,139,15,192,15,225,128,3,239,223,192,11,224,31,208,0,7,223,215,240,7,240,47,192,0,15,207,211,208,3,252,127,128,0,31,143,209,128,1,253,255,0,0,63,79,208,0,0,255,253,0,0,191,15,208,0,0,63,252,0,0,125,15,208,0,0,47,244,0,0,60,15,208,0,0,47,248,0,0,16,15,208,0,0,191,254,0,0,0,15,208,0,3,255,255,192,0,0,15,208,0,31,252,127,244,0,0,15,208,0,255,240,31,254,0,0,15,208,27,255,128,3,255,224,0,15,208,127,253,0,0,255,244,0,15,208,63,208,0,0,31,208,0,15,208,13,0,0,0,2,128,0,0,0,0,0,0,0,0,0, + // 0x683c 格 + 60,104,35,35,59,37,1,253,0,15,208,0,0,228,0,0,0,0,15,208,0,1,253,0,0,0,0,15,208,0,2,252,0,0,0,0,15,208,0,7,244,0,0,0,0,15,208,0,15,255,255,253,0,0,15,208,0,31,255,255,255,0,0,15,208,0,63,255,255,253,0,0,15,208,0,255,64,2,252,0,63,255,255,242,255,192,3,248,0,63,255,255,251,255,208,11,240,0,63,255,255,255,251,240,31,208,0,0,31,224,127,195,252,63,128,0,0,31,224,31,1,254,255,0,0,0,63,244,5,0,127,253,0,0,0,63,252,0,0,47,248,0,0,0,127,255,0,0,127,252,0,0,0,191,255,128,2,255,255,128,0,0,255,223,208,15,254,191,244,0,1,255,215,240,191,244,31,255,64,3,255,211,219,255,192,3,255,248,7,223,209,255,254,0,0,127,244,15,207,208,191,255,255,255,255,224,31,143,208,62,255,255,255,255,64,63,79,208,0,255,255,255,254,0,191,15,208,0,252,0,0,190,0,125,15,208,0,252,0,0,190,0,56,15,208,0,252,0,0,190,0,16,15,208,0,252,0,0,190,0,0,15,208,0,252,0,0,190,0,0,15,208,0,252,0,0,190,0,0,15,208,0,255,255,255,254,0,0,15,208,0,255,255,255,254,0,0,15,208,0,255,255,255,254,0,0,15,208,0,252,0,0,190,0,0,10,144,0,168,0,0,105,0, + // 0x689d 條 + 157,104,35,36,68,37,1,252,0,2,64,0,0,228,0,0,0,0,3,244,0,2,252,0,0,0,0,7,240,0,3,244,0,0,0,0,15,224,0,11,240,0,0,0,0,15,213,64,31,255,255,255,240,0,47,203,208,63,255,255,255,240,0,63,75,208,191,255,255,255,240,0,127,11,210,255,64,2,252,0,0,254,11,219,255,192,7,244,0,1,254,11,255,251,240,15,240,0,3,254,11,223,195,252,63,192,0,11,254,11,210,0,255,255,64,0,15,254,11,208,0,63,253,0,0,63,254,11,208,0,63,253,0,0,191,254,11,208,2,255,255,208,0,255,190,11,208,111,254,191,254,64,189,190,11,223,255,244,11,255,248,56,190,11,219,255,65,80,191,240,32,190,11,211,224,7,240,6,208,0,190,11,208,0,7,240,0,0,0,190,11,208,0,7,240,0,0,0,190,11,215,255,255,255,255,240,0,190,11,215,255,255,255,255,240,0,190,11,215,255,255,255,255,240,0,190,11,208,0,63,253,0,0,0,190,11,208,0,255,255,0,0,0,190,11,208,2,255,255,192,0,0,190,11,208,15,251,251,240,0,0,190,11,192,63,215,243,252,0,0,190,0,1,255,71,240,255,64,0,190,0,31,253,7,240,63,224,0,190,0,127,244,7,240,31,248,0,190,0,47,192,7,240,3,240,0,190,0,9,0,7,240,0,128,0,190,0,0,0,7,240,0,0,0,0,0,0,0,0,0,0,0, + // 0x68c4 棄 + 196,104,33,35,59,37,2,253,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,170,170,191,250,170,191,234,170,128,0,0,63,192,0,127,224,0,0,0,0,255,0,0,11,254,0,0,15,255,255,255,255,255,255,208,0,15,255,255,255,255,255,255,252,0,15,255,255,255,170,165,86,253,0,0,0,0,1,80,0,0,116,0,0,31,192,3,240,0,253,0,0,0,31,192,3,240,0,253,0,0,106,175,234,171,250,170,255,170,128,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,0,31,192,3,240,0,253,0,0,0,31,192,3,240,0,253,0,0,0,31,234,171,250,170,253,0,0,0,31,255,255,255,255,253,0,0,0,31,255,255,255,255,253,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,128,0,0,11,255,255,248,0,0,0,0,0,127,215,242,255,64,0,0,0,7,255,71,240,127,248,0,0,1,191,248,7,240,11,255,208,0,111,255,192,7,240,0,255,255,128,255,249,0,7,240,0,11,255,192,63,128,0,7,240,0,0,191,0,20,0,0,7,240,0,0,1,0, + // 0x69fd 槽 + 253,105,35,36,68,37,1,252,0,31,192,0,3,240,63,0,0,0,31,192,0,3,240,63,0,0,0,31,192,0,3,240,63,0,0,0,31,192,191,255,255,255,255,248,0,31,192,191,255,255,255,255,248,0,31,192,106,171,250,255,170,164,0,31,192,0,3,240,63,0,0,0,31,192,0,3,240,63,0,0,63,255,255,159,255,255,255,255,208,63,255,255,159,255,255,255,255,208,63,255,255,159,150,245,126,91,208,0,63,192,31,66,240,61,7,208,0,63,192,31,130,240,126,11,208,0,63,192,31,255,255,255,255,208,0,127,208,31,255,255,255,255,208,0,255,240,31,66,240,61,7,208,0,255,248,31,66,240,61,7,208,1,255,252,31,150,245,126,91,208,3,255,255,31,255,255,255,255,208,3,255,223,95,255,255,255,255,208,11,223,207,192,0,0,0,0,0,15,159,199,2,170,170,170,170,0,31,95,193,3,255,255,255,255,0,63,31,192,3,255,255,255,255,0,190,31,192,3,244,0,0,127,0,188,31,192,3,244,0,0,127,0,60,31,192,3,249,85,85,191,0,32,31,192,3,255,255,255,255,0,0,31,192,3,255,255,255,255,0,0,31,192,3,244,0,0,127,0,0,31,192,3,244,0,0,127,0,0,31,192,3,250,170,170,191,0,0,31,192,3,255,255,255,255,0,0,31,192,3,255,255,255,255,0,0,31,192,3,244,0,0,127,0,0,0,0,0,0,0,0,0,0, + // 0x6a59 橙 + 89,106,35,35,59,37,1,253,0,15,192,0,0,0,20,0,0,0,15,192,10,170,208,252,20,0,0,15,192,31,255,244,252,125,0,0,15,192,31,255,240,191,254,0,0,15,192,0,7,240,63,244,0,0,15,192,4,11,224,63,192,128,0,15,192,47,79,192,31,194,240,0,15,192,63,255,128,15,219,244,63,255,255,203,255,64,11,255,192,63,255,255,194,255,0,3,253,0,63,255,255,193,255,255,255,253,0,0,47,208,7,255,255,255,255,64,0,47,192,15,246,170,170,63,224,0,63,192,127,192,0,0,15,252,0,127,225,255,64,0,0,3,240,0,191,244,254,170,170,170,169,144,0,255,252,34,255,255,255,253,0,0,255,255,2,255,255,255,253,0,2,255,239,130,248,0,0,253,0,3,255,207,210,248,0,0,253,0,7,223,199,194,248,0,0,253,0,15,207,195,66,248,0,0,253,0,31,143,192,2,255,255,255,253,0,63,15,192,2,255,255,255,253,0,191,15,192,1,170,170,171,169,0,189,15,192,0,26,0,7,224,0,60,15,192,0,63,0,11,240,0,16,15,192,0,47,128,15,208,0,0,15,192,0,31,192,31,192,0,0,15,192,0,15,192,47,64,0,0,15,192,0,15,64,47,0,0,0,15,192,255,255,255,255,255,248,0,15,192,255,255,255,255,255,248,0,15,192,255,255,255,255,255,244,0,15,192,0,0,0,0,0,0, + // 0x6a5f 機 + 95,106,35,35,59,37,1,253,0,47,64,1,0,63,0,64,0,0,47,64,3,240,63,1,244,0,0,47,64,7,224,63,3,240,0,0,47,64,11,192,63,3,224,0,0,47,64,15,69,63,11,194,0,0,47,64,255,15,191,127,75,208,0,47,65,253,47,127,255,15,192,0,47,64,254,62,63,127,111,0,63,255,255,47,252,63,15,254,0,63,255,255,11,244,63,3,252,0,63,255,255,3,240,47,66,244,64,0,63,128,11,223,47,67,227,208,0,127,64,31,79,111,75,194,240,0,191,192,63,31,223,175,255,240,0,255,225,255,255,223,255,255,244,0,255,240,255,255,239,255,229,184,1,255,248,165,67,223,193,224,80,2,255,189,0,0,15,195,252,0,3,255,127,0,0,15,192,191,0,7,255,95,234,170,175,234,191,160,15,239,78,255,255,255,255,255,240,15,111,68,255,255,255,255,255,240,47,47,64,11,208,7,224,32,0,63,47,64,15,208,3,240,127,0,189,47,64,15,244,3,240,254,0,124,47,64,15,254,2,246,252,0,52,47,64,31,255,193,255,244,0,16,47,64,47,175,240,255,224,0,0,47,64,63,7,208,255,128,80,0,47,64,191,1,66,255,0,184,0,47,64,253,0,15,255,128,188,0,47,67,252,0,191,239,224,248,0,47,79,240,11,255,11,255,244,0,47,67,208,7,244,2,255,240,0,47,65,0,2,64,0,111,128, + // 0x6aa2 檢 + 162,106,35,36,68,37,1,252,0,15,192,0,0,47,192,0,0,0,15,192,0,0,127,240,0,0,0,15,192,0,0,255,248,0,0,0,15,192,0,3,254,254,0,0,0,15,192,0,11,244,191,128,0,0,15,192,0,47,224,63,224,0,0,15,192,0,191,192,15,252,0,0,15,192,3,255,0,3,255,64,63,255,255,223,252,0,0,255,224,63,255,255,255,255,255,255,255,252,63,255,255,255,159,255,255,215,240,0,47,192,61,10,170,170,128,224,0,63,192,16,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,240,15,255,248,191,255,192,0,191,244,15,255,248,191,255,192,0,255,252,15,149,248,189,91,192,0,255,255,15,128,248,188,7,192,2,255,239,79,128,248,188,7,192,3,255,207,207,128,248,188,7,192,7,223,203,207,149,248,189,91,192,15,207,195,79,255,248,191,255,192,31,143,193,15,255,248,191,255,192,63,15,192,0,16,0,1,0,0,127,15,192,0,63,0,3,240,0,125,15,192,0,127,0,7,224,0,60,15,192,0,190,0,11,208,0,16,15,192,0,253,0,15,208,0,0,15,192,2,255,64,47,244,0,0,15,192,7,255,208,63,253,0,0,15,192,15,235,244,255,255,128,0,15,192,63,194,247,252,63,224,0,15,193,255,0,159,244,11,248,0,15,192,253,0,11,208,2,240,0,15,192,48,0,2,0,0,128,0,0,0,0,0,0,0,0,0, + // 0x6b62 止 + 98,107,33,33,41,37,2,255,0,0,0,0,190,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,42,0,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,255,85,85,84,0,0,63,64,0,255,255,255,253,0,0,63,64,0,255,255,255,253,0,0,63,64,0,255,255,255,253,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,85,191,149,85,255,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x6b63 正 + 99,107,33,32,32,37,2,254,21,85,85,85,85,85,85,85,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,21,0,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,254,85,85,80,0,0,63,64,1,255,255,255,244,0,0,63,64,1,255,255,255,244,0,0,63,64,1,255,255,255,244,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,0,63,64,1,253,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,85,85,85,85,85,85,85,85,64, + // 0x6b65 步 + 101,107,33,35,59,37,2,253,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,5,0,3,244,0,0,0,0,0,47,192,3,244,0,0,0,0,0,47,192,3,255,255,255,192,0,0,47,192,3,255,255,255,192,0,0,47,192,3,255,255,255,192,0,0,47,192,3,249,85,85,64,0,0,47,192,3,244,0,0,0,0,0,47,192,3,244,0,0,0,0,0,47,192,3,244,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,21,85,85,87,245,85,85,85,0,0,2,64,3,244,0,0,0,0,0,7,248,3,244,0,4,0,0,0,15,240,3,244,0,47,128,0,0,63,224,3,244,0,63,192,0,0,255,128,3,244,0,127,128,0,3,255,0,3,244,0,255,0,0,31,252,0,3,244,2,254,0,0,191,240,0,3,244,7,252,0,0,63,192,15,255,240,15,244,0,0,14,0,7,255,240,63,240,0,0,0,0,3,255,128,255,192,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,127,252,0,0,0,0,0,0,2,255,240,0,0,0,0,0,0,191,255,128,0,0,0,0,0,111,255,248,0,0,0,0,2,191,255,255,144,0,0,0,0,2,255,255,248,0,0,0,0,0,0,255,249,0,0,0,0,0,0,0,185,0,0,0,0,0,0,0, + // 0x6b78 歸 + 120,107,35,35,59,37,1,253,0,15,144,0,0,0,0,0,0,0,15,192,0,5,85,85,84,0,0,31,128,0,31,255,255,253,0,11,255,255,240,31,255,255,253,0,11,255,255,240,0,0,0,189,0,11,229,87,241,85,85,85,254,80,11,192,2,243,255,255,255,255,248,11,192,2,243,255,255,255,255,248,11,255,255,240,0,0,0,189,0,11,255,255,240,0,0,0,189,0,11,229,85,80,31,255,255,253,0,11,192,0,0,31,255,255,253,0,11,234,170,160,5,85,85,84,0,11,255,255,244,0,0,0,0,0,11,255,255,244,170,170,170,170,144,11,192,2,244,255,255,255,255,240,11,192,2,244,255,255,255,255,240,11,229,87,244,248,3,240,3,240,11,255,255,244,248,3,240,3,240,11,255,255,244,248,3,240,3,240,0,3,240,0,0,3,240,0,0,0,3,240,0,63,255,255,255,128,15,195,240,0,63,255,255,255,128,15,195,255,248,63,171,254,191,128,15,195,255,248,63,3,240,31,128,15,195,250,164,63,3,240,31,128,15,195,240,0,63,3,240,31,128,15,195,240,0,63,3,240,31,128,15,195,241,172,63,3,240,47,128,15,219,255,252,63,3,243,255,64,127,255,255,253,63,3,242,255,0,127,255,254,144,62,3,240,164,0,127,249,0,0,0,3,240,0,0,20,0,0,0,0,3,240,0,0,0,0,0,0,0,2,160,0,0, + // 0x6bbc 殼 + 188,107,34,36,68,37,2,252,0,7,224,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,3,255,255,224,0,255,255,255,255,67,255,255,224,0,255,255,255,255,67,255,255,224,0,170,171,250,170,3,240,11,224,0,0,7,240,0,3,240,11,224,0,0,7,240,0,3,240,11,224,0,63,255,255,252,3,240,11,225,0,63,255,255,252,7,240,11,225,224,21,85,85,84,11,224,11,226,240,0,0,0,0,15,208,11,226,240,255,255,255,255,127,192,7,255,224,255,255,255,255,255,64,3,255,208,253,85,85,127,190,0,0,170,0,252,0,0,47,24,0,0,0,0,252,0,0,47,0,0,0,0,0,254,255,255,239,47,255,255,254,0,2,255,255,192,47,255,255,254,0,0,0,0,0,47,255,255,253,0,0,0,0,0,2,224,1,252,0,2,170,170,144,3,240,3,248,0,3,255,255,208,3,248,7,244,0,3,255,255,208,1,252,15,240,0,3,240,11,208,0,255,47,208,0,3,240,11,208,0,127,191,128,0,3,240,11,208,0,47,255,0,0,7,240,11,209,64,15,252,0,0,11,224,11,255,192,47,253,0,0,15,208,47,255,192,255,255,128,0,47,192,127,254,11,255,191,244,0,127,128,63,145,255,248,31,255,128,255,0,20,11,255,208,3,255,208,60,0,0,3,253,0,0,127,128,0,0,0,1,208,0,0,7,0,0,0,0,0,0,0,0,0,0, + // 0x6bd4 比 + 212,107,34,35,59,37,2,253,0,106,0,0,6,144,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,124,0,0,191,0,0,15,224,3,255,0,0,191,85,85,15,224,47,255,64,0,191,255,254,15,226,255,248,0,0,191,255,254,15,255,255,128,0,0,191,255,254,15,255,248,0,0,0,191,0,0,15,255,128,0,0,0,191,0,0,15,244,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,7,128,0,191,0,0,15,224,0,11,240,0,191,0,27,143,224,0,11,224,0,191,27,255,143,224,0,11,224,0,255,255,255,207,240,0,15,208,175,255,255,254,75,240,0,31,192,255,255,254,64,7,255,255,255,192,255,254,64,0,3,255,255,255,64,190,64,0,0,1,255,255,254,0,0,0,0,0,0,5,85,64,0, + // 0x6c92 沒 + 146,108,33,35,59,37,2,253,1,0,0,0,164,0,0,0,0,7,208,0,1,253,0,0,0,0,15,253,0,1,252,0,0,0,0,15,255,128,2,252,0,0,0,0,1,255,240,3,255,255,255,253,0,0,47,224,3,255,255,255,252,0,0,3,192,7,255,255,255,252,0,0,0,0,15,240,0,1,252,0,0,0,0,15,224,0,1,252,0,0,0,0,47,208,0,2,252,0,16,0,0,63,192,0,2,248,0,125,0,0,191,64,0,3,248,0,255,208,1,255,0,0,7,244,0,191,253,7,252,0,47,255,240,0,11,255,31,248,0,31,255,224,0,0,253,11,240,0,15,255,64,0,0,44,1,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,248,0,0,0,1,255,255,255,255,252,0,0,1,1,255,255,255,255,248,0,0,7,128,7,224,0,11,244,0,0,15,224,11,244,0,31,224,0,0,31,208,3,252,0,63,192,0,0,63,192,1,255,0,255,64,0,0,127,64,0,191,195,254,0,0,0,255,0,0,47,255,252,0,0,2,253,0,0,15,255,240,0,0,3,252,0,0,7,255,208,0,0,11,244,0,0,127,255,253,0,0,31,240,0,27,255,255,255,208,0,63,208,27,255,255,66,255,255,128,63,128,47,255,244,0,47,255,192,11,0,15,254,0,0,2,255,64,0,0,6,64,0,0,0,26,0, + // 0x6d88 消 + 136,109,33,36,68,37,2,252,1,0,0,0,0,253,0,0,0,11,128,0,32,0,253,0,40,0,31,248,2,248,0,253,0,63,64,15,255,2,252,0,253,0,191,0,1,255,208,255,0,253,0,254,0,0,63,192,127,64,253,2,252,0,0,11,64,63,192,253,3,248,0,0,1,0,31,208,253,11,240,0,0,0,0,15,128,253,11,208,0,0,0,0,4,0,253,0,64,0,16,0,0,0,0,254,0,0,0,125,0,0,255,255,255,255,252,0,255,192,0,255,255,255,255,252,0,191,244,0,255,255,255,255,252,0,15,254,0,253,0,0,0,252,0,2,254,0,253,0,0,0,252,0,0,188,0,253,0,0,0,252,0,0,20,0,253,0,0,0,252,0,0,0,0,255,255,255,255,252,0,0,0,0,255,255,255,255,252,0,0,0,0,255,255,255,255,252,0,0,11,0,253,0,0,0,252,0,0,15,192,253,0,0,0,252,0,0,47,192,253,0,0,0,252,0,0,63,64,255,255,255,255,252,0,0,191,0,255,255,255,255,252,0,0,254,0,255,255,255,255,252,0,2,252,0,253,0,0,0,252,0,3,248,0,253,0,0,0,252,0,11,240,0,253,0,0,0,252,0,31,224,0,253,0,0,0,252,0,63,208,0,253,0,0,1,252,0,127,192,0,253,0,3,255,252,0,31,64,0,253,0,2,255,248,0,2,0,0,253,0,1,255,208,0,0,0,0,0,0,0,0,0,0, + // 0x6de1 淡 + 225,109,35,34,50,37,1,253,0,0,0,0,0,127,0,0,0,1,224,0,0,0,127,0,0,0,7,254,0,6,64,127,0,36,0,3,255,208,15,192,127,0,63,128,0,127,248,31,192,191,0,191,0,0,11,244,63,128,190,1,253,0,0,1,208,127,0,254,3,252,0,0,0,0,254,0,253,7,240,0,0,0,1,252,1,254,15,208,0,0,0,0,36,3,255,209,64,0,4,0,0,0,7,255,252,0,0,31,64,0,0,31,251,255,128,0,127,244,0,0,191,208,191,244,0,47,254,0,7,255,128,31,255,0,2,255,193,255,253,0,2,255,192,0,127,2,255,224,106,0,63,192,0,13,0,254,0,127,0,11,0,0,0,0,0,0,191,0,0,0,0,0,0,9,0,191,0,25,0,0,1,0,31,192,190,0,63,192,0,3,128,47,128,254,0,127,128,0,11,240,63,64,255,0,255,0,0,15,224,191,0,255,66,253,0,0,47,192,254,1,255,131,248,0,0,63,195,252,3,255,207,240,0,0,191,66,244,3,255,246,192,0,0,255,0,16,15,247,248,0,0,2,253,0,0,47,226,254,0,0,7,252,0,0,255,192,255,128,0,15,244,0,27,255,0,63,244,0,31,240,6,255,252,0,15,255,144,15,208,31,255,224,0,2,255,244,2,128,11,254,0,0,0,127,224,0,0,3,144,0,0,0,1,128, + // 0x6e05 清 + 5,110,34,36,68,37,2,252,2,0,0,0,1,252,0,0,0,15,224,0,0,1,252,0,0,0,31,254,1,85,86,253,85,85,0,7,255,195,255,255,255,255,255,64,0,191,211,255,255,255,255,255,64,0,31,192,0,1,252,0,0,0,0,3,64,0,1,252,0,0,0,0,0,1,255,255,255,255,253,0,0,0,1,255,255,255,255,253,0,0,0,0,85,86,253,85,84,0,16,0,0,0,1,252,0,0,0,125,0,10,170,170,254,170,170,144,255,224,31,255,255,255,255,255,224,191,253,31,255,255,255,255,255,224,11,255,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,0,40,0,63,255,255,255,248,0,0,0,0,63,255,255,255,248,0,0,0,0,63,170,170,171,248,0,0,0,0,63,0,0,2,248,0,0,1,0,63,0,0,2,248,0,0,11,128,63,255,255,255,248,0,0,15,208,63,255,255,255,248,0,0,47,192,63,85,85,86,248,0,0,63,128,63,0,0,2,248,0,0,191,0,63,85,85,86,248,0,0,254,0,63,255,255,255,248,0,2,252,0,63,255,255,255,248,0,7,248,0,63,0,0,2,248,0,15,240,0,63,0,0,2,248,0,31,224,0,63,0,0,2,248,0,63,192,0,63,0,0,2,248,0,63,128,0,63,0,3,255,248,0,15,0,0,63,0,2,255,244,0,1,0,0,63,0,1,255,144,0,0,0,0,0,0,0,0,0,0, + // 0x6e2c 測 + 44,110,33,36,68,37,1,252,0,64,0,0,0,0,0,15,192,3,224,0,0,0,0,0,15,192,11,254,7,255,255,208,0,15,192,3,255,199,255,255,208,0,15,192,0,127,215,255,255,208,248,15,192,0,15,135,208,11,208,252,15,192,0,2,7,208,11,208,252,15,192,0,0,7,208,11,208,252,15,192,0,0,7,208,11,208,252,15,192,0,0,7,255,255,208,252,15,192,4,0,7,255,255,208,252,15,192,47,128,7,255,255,208,252,15,192,127,248,7,208,11,208,252,15,192,47,255,7,208,11,208,252,15,192,2,255,7,208,11,208,252,15,192,0,124,7,208,11,208,252,15,192,0,4,7,255,255,208,252,15,192,0,0,7,255,255,208,252,15,192,0,0,7,255,255,208,252,15,192,0,0,7,208,11,208,252,15,192,0,0,7,208,11,208,252,15,192,0,30,7,208,11,208,252,15,192,0,47,135,208,11,208,252,15,192,0,63,71,255,255,208,252,15,192,0,127,7,255,255,208,252,15,192,0,254,7,255,255,208,248,15,192,0,253,0,0,1,0,0,15,192,2,252,2,248,31,64,0,15,192,3,248,3,244,47,192,0,15,192,7,240,11,240,15,240,0,15,192,15,240,31,208,3,248,0,15,192,31,208,63,192,2,252,16,31,192,47,192,255,0,0,248,63,255,192,7,129,253,0,0,80,47,255,128,0,0,52,0,0,0,31,249,0,0,0,0,0,0,0,0,0,0, + // 0x6e90 源 + 144,110,34,35,59,37,2,253,1,0,0,0,0,0,0,0,0,11,208,0,0,0,0,0,0,0,31,252,11,255,255,255,255,255,192,11,255,75,255,255,255,255,255,192,1,255,203,255,255,255,255,255,192,0,47,75,240,0,31,224,0,0,0,10,11,240,0,31,208,0,0,0,0,11,240,0,47,192,0,0,0,0,11,240,0,47,128,0,0,0,0,11,241,255,255,255,255,0,16,0,11,241,255,255,255,255,0,125,0,11,241,254,170,170,191,0,255,208,11,241,248,0,0,127,0,191,252,11,241,248,0,0,127,0,11,252,11,225,255,255,255,255,0,0,244,11,225,255,255,255,255,0,0,16,11,225,253,85,85,191,0,0,0,11,225,248,0,0,127,0,0,0,15,225,248,0,0,127,0,0,0,15,209,254,170,170,191,0,0,16,15,209,255,255,255,255,0,0,61,15,193,255,255,255,255,0,0,127,15,192,0,15,192,0,0,0,254,31,192,0,15,192,16,0,1,253,47,192,184,15,193,248,0,2,252,63,128,253,15,194,252,0,3,248,63,66,252,15,192,254,0,11,240,127,3,244,15,192,191,64,15,240,255,11,240,15,192,63,192,31,208,253,31,208,15,192,31,208,63,194,252,63,128,15,192,15,224,127,67,248,63,0,15,192,11,144,191,11,240,5,15,255,192,0,0,30,7,224,0,15,255,128,0,0,0,0,128,0,7,249,0,0,0, + // 0x6e96 準 + 150,110,33,35,59,37,2,253,0,128,0,14,64,10,64,0,0,3,248,0,31,208,31,224,0,0,11,255,128,63,192,47,192,0,0,1,255,224,191,64,63,64,0,0,0,31,192,255,170,255,170,169,0,0,2,3,255,255,255,255,254,0,16,0,15,255,255,255,255,254,0,126,0,47,252,0,190,0,0,0,255,224,191,252,0,190,0,0,0,127,254,255,254,170,255,170,160,0,7,244,254,255,255,255,255,244,0,0,96,53,255,255,255,255,244,0,0,0,1,252,0,190,0,0,0,0,3,129,252,0,190,0,0,0,0,15,209,255,255,255,255,244,0,0,63,193,255,255,255,255,244,0,0,255,65,254,170,255,170,160,0,2,253,1,252,0,190,0,0,0,11,248,1,252,0,190,0,0,0,63,240,1,255,255,255,255,255,64,63,192,1,255,255,255,255,255,64,31,0,0,170,170,170,170,170,64,4,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0, + // 0x6eab 溫 + 171,110,34,35,59,37,2,253,1,0,0,0,0,0,0,0,0,11,208,0,0,0,0,0,0,0,15,252,0,255,255,255,255,240,0,15,255,64,255,255,255,255,240,0,1,255,208,254,170,170,175,240,0,0,47,128,252,0,224,11,240,0,0,7,0,252,1,240,11,240,0,0,0,0,252,3,224,11,240,0,0,0,0,252,3,240,11,240,0,0,0,0,252,15,253,11,240,0,16,0,0,252,47,47,75,240,0,126,0,0,253,253,11,219,240,0,255,224,0,252,244,2,203,240,0,191,252,0,252,0,0,11,240,0,11,253,0,255,255,255,255,240,0,1,248,0,255,255,255,255,240,0,0,32,0,170,170,170,170,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,255,255,255,255,252,0,0,8,7,255,255,255,255,252,0,0,47,7,255,255,255,255,252,0,0,63,135,240,125,11,192,252,0,0,127,71,240,125,11,192,252,0,0,255,7,240,125,11,192,252,0,1,253,7,240,125,11,192,252,0,2,252,7,240,125,11,192,252,0,3,248,7,240,125,11,192,252,0,11,240,7,240,125,11,192,252,0,15,224,7,240,125,11,192,252,0,47,208,7,240,125,11,192,252,0,127,193,255,255,255,255,255,255,224,191,65,255,255,255,255,255,255,224,31,1,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x6fc0 激 + 192,111,34,36,68,37,2,252,0,0,0,46,64,2,228,0,0,15,128,0,63,192,2,248,0,0,47,244,0,63,64,3,244,0,0,31,254,0,127,0,3,240,0,0,3,255,127,255,255,131,240,0,0,0,127,63,255,255,135,240,0,0,0,28,63,85,111,139,224,0,0,0,0,63,0,31,143,255,255,224,0,0,63,85,111,143,255,255,224,0,0,63,255,255,159,255,255,224,0,0,63,255,255,175,192,127,0,125,0,63,0,31,191,192,126,0,255,128,63,0,31,255,192,190,0,255,244,63,85,111,255,192,189,0,31,252,63,255,255,255,208,253,0,2,244,63,255,255,255,208,252,0,0,96,0,63,64,247,224,252,0,0,0,0,63,64,114,241,252,0,0,0,0,63,64,1,242,248,0,0,1,255,255,255,241,247,244,0,0,1,255,255,255,240,251,240,0,0,53,255,255,255,224,255,240,0,0,190,2,244,0,0,127,224,0,0,254,2,244,0,0,63,208,0,1,252,2,255,255,64,63,192,0,3,252,3,255,255,64,63,128,0,3,244,3,255,255,64,127,192,0,11,240,7,240,63,64,255,240,0,15,224,11,224,63,2,255,244,0,31,208,15,192,63,7,246,252,0,63,192,63,128,63,31,240,255,0,127,64,191,0,127,127,192,127,192,191,2,253,47,255,255,64,47,224,46,7,248,31,253,253,0,11,192,0,1,208,10,144,48,0,2,0,0,0,0,0,0,0,0,0,0, + // 0x7121 無 + 33,113,34,35,59,37,2,253,0,3,144,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,191,255,255,255,255,255,254,0,1,255,255,255,255,255,255,254,0,7,255,255,255,255,255,255,254,0,31,255,65,248,15,192,127,0,0,191,255,1,248,15,192,63,0,0,255,191,1,248,15,192,63,0,0,62,63,1,248,15,192,63,0,0,8,63,1,248,15,192,63,0,0,0,63,1,248,15,192,63,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,63,65,248,15,192,127,0,0,0,63,1,248,15,192,63,0,0,0,63,1,248,15,192,63,0,0,0,63,1,248,15,192,63,0,0,0,63,1,248,15,192,63,0,0,0,63,1,248,15,192,63,0,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,144,0,0,0,0,1,128,0,1,253,2,160,10,208,31,224,0,2,252,3,240,11,240,15,244,0,3,244,3,240,7,240,3,252,0,15,240,3,244,3,248,1,254,0,31,224,3,248,2,252,0,255,64,127,192,3,248,1,252,0,127,192,255,64,2,248,0,253,0,47,208,29,0,1,64,0,144,0,13,0, + // 0x71b1 熱 + 177,113,34,35,59,37,2,253,0,3,224,0,0,63,0,0,0,0,3,240,0,0,63,0,0,0,5,87,245,84,0,63,0,0,0,31,255,255,252,0,63,0,0,0,31,255,255,252,0,63,0,0,0,0,3,240,0,63,255,255,240,0,0,3,240,0,63,255,255,240,0,85,91,245,85,63,255,255,240,0,191,255,255,255,64,126,7,240,0,191,255,255,255,64,126,7,240,0,0,252,31,0,0,189,7,240,0,0,248,31,6,24,189,7,240,0,3,240,31,79,191,253,7,240,0,111,224,31,255,191,252,7,240,0,255,66,155,254,31,253,7,240,0,56,3,240,0,3,255,71,240,0,0,3,240,0,1,255,215,240,0,63,255,255,253,3,255,251,240,64,63,255,255,253,3,247,247,240,240,26,171,250,168,7,240,215,240,240,0,3,240,0,15,208,7,241,240,0,3,240,5,47,192,7,241,240,1,91,255,255,191,64,7,242,240,255,255,255,255,255,0,7,255,224,255,255,255,165,252,0,3,255,208,186,148,0,0,112,0,0,170,64,0,0,0,0,0,0,0,0,0,0,228,0,0,0,64,6,192,0,2,252,7,240,15,208,31,240,0,3,248,7,240,11,240,11,248,0,11,240,3,240,3,244,3,253,0,31,224,3,244,3,248,0,255,0,63,192,3,244,2,252,0,191,128,255,64,3,248,1,252,0,63,192,25,0,1,64,0,64,0,25,0, + // 0x71c8 燈 + 200,113,35,35,59,37,1,253,0,10,64,0,0,6,208,16,0,0,15,192,10,170,147,240,184,0,0,15,192,15,255,247,242,252,0,0,15,192,15,255,241,255,240,0,0,15,192,0,3,224,255,128,0,0,15,194,5,11,208,191,3,208,0,15,199,255,143,192,63,79,240,5,15,203,239,255,64,31,255,128,15,79,207,195,255,0,15,253,0,15,79,239,65,253,0,3,252,0,15,79,254,3,255,255,255,255,0,15,15,252,15,255,255,255,191,208,31,15,212,127,207,255,255,47,248,47,15,195,255,0,0,0,11,248,62,31,195,248,0,0,0,1,240,61,31,193,210,170,170,170,168,0,188,31,192,3,255,255,255,252,0,4,31,128,3,255,255,255,252,0,0,31,128,3,240,0,0,252,0,0,47,128,3,240,0,0,252,0,0,47,64,3,240,0,0,252,0,0,63,128,3,240,0,0,252,0,0,63,208,3,255,255,255,252,0,0,63,240,3,255,255,255,252,0,0,127,252,2,170,170,170,168,0,0,190,254,0,29,0,11,144,0,0,252,127,64,127,0,15,208,0,2,252,63,192,63,64,31,192,0,3,248,15,192,31,128,47,128,0,11,240,11,64,15,192,63,0,0,15,224,1,0,15,64,46,0,0,63,192,0,255,255,255,255,255,240,127,64,0,255,255,255,255,255,240,46,0,0,255,255,255,255,255,240,8,0,0,0,0,0,0,0,0, + // 0x7247 片 + 71,114,32,36,32,37,1,252,0,0,0,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,192,0,3,248,0,0,0,31,234,170,171,254,170,170,0,31,255,255,255,255,255,255,0,31,255,255,255,255,255,255,0,31,255,255,255,255,255,255,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,234,170,170,171,252,0,0,127,64,0,0,2,252,0,0,191,0,0,0,2,252,0,0,255,0,0,0,2,252,0,0,254,0,0,0,2,252,0,2,253,0,0,0,2,252,0,3,252,0,0,0,2,252,0,11,248,0,0,0,2,252,0,31,240,0,0,0,2,252,0,63,224,0,0,0,2,252,0,127,192,0,0,0,2,252,0,31,64,0,0,0,2,252,0,6,0,0,0,0,2,252,0,0,0,0,0,0,0,0,0, + // 0x7269 物 + 105,114,34,35,59,37,1,253,0,3,244,0,11,128,0,0,0,0,3,244,0,15,208,0,0,0,6,67,244,0,15,192,0,0,0,11,211,244,0,31,192,0,0,0,15,195,244,0,47,64,0,0,0,15,195,244,0,63,0,0,0,0,15,195,244,0,127,255,255,255,240,15,195,244,0,255,255,255,255,240,31,255,255,225,255,255,255,255,240,31,255,255,227,248,47,71,247,240,47,255,255,231,240,63,11,211,240,63,3,244,15,224,126,15,199,240,63,3,244,47,192,189,15,199,240,190,3,244,127,128,252,31,135,240,188,3,244,127,2,248,47,135,240,44,3,244,13,3,240,63,71,240,0,3,244,0,7,240,63,11,224,0,3,250,244,15,208,190,11,224,0,3,255,244,47,192,253,11,224,0,111,255,248,63,65,252,15,208,27,255,255,144,255,3,248,15,208,127,255,244,2,252,3,240,15,208,63,251,244,7,248,11,240,15,208,61,3,244,31,240,15,208,15,192,0,3,244,47,192,47,192,15,192,0,3,244,3,0,127,64,31,192,0,3,244,0,0,255,0,47,192,0,3,244,0,2,253,0,47,128,0,3,244,0,7,248,0,63,128,0,3,244,0,31,240,0,127,64,0,3,244,0,127,192,0,255,0,0,3,244,1,255,65,255,255,0,0,3,244,0,189,0,255,252,0,0,3,244,0,36,0,255,244,0,0,3,244,0,0,0,20,0,0, + // 0x7387 率 + 135,115,33,36,68,37,2,252,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,0,0,0,47,192,0,0,0,0,1,0,0,63,64,0,0,224,0,15,192,0,254,2,64,3,253,0,47,248,10,252,7,240,15,248,0,7,255,47,240,15,208,63,208,0,0,255,239,240,63,129,255,64,0,0,47,7,253,190,0,188,0,0,0,4,0,255,252,0,0,0,0,0,0,0,63,242,208,0,0,0,0,1,128,31,199,240,244,0,0,0,31,208,63,2,255,255,64,0,2,255,224,253,85,254,255,224,0,127,255,191,255,255,255,31,253,0,191,228,127,255,255,255,130,255,128,62,0,63,170,164,15,192,127,64,16,0,0,7,240,10,0,28,0,0,0,0,7,240,0,0,0,0,0,0,0,7,244,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x7528 用 + 40,117,32,34,16,37,1,252,0,21,85,85,85,85,85,85,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,127,0,0,254,0,0,191,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,127,0,0,253,0,0,191,0,191,255,255,255,255,255,255,0,191,255,255,255,255,255,255,0,255,255,255,255,255,255,255,0,254,85,85,254,85,85,191,0,253,0,0,253,0,0,191,1,252,0,0,253,0,0,191,2,252,0,0,253,0,0,191,3,248,0,0,253,0,0,191,3,244,0,0,253,0,0,191,11,240,0,0,253,0,0,191,15,240,0,0,253,0,0,191,47,208,0,0,253,5,65,255,127,192,0,0,253,11,255,254,127,64,0,0,253,7,255,252,14,0,0,0,189,3,255,224,0,0,0,0,0,0,0,0, + // 0x754c 界 + 76,117,33,35,59,37,2,252,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,252,0,7,240,0,15,208,0,0,252,0,7,240,0,15,208,0,0,252,0,7,240,0,15,208,0,0,252,0,7,240,0,15,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,254,170,175,250,170,175,208,0,0,252,0,7,240,0,15,208,0,0,252,0,7,240,0,15,208,0,0,252,0,7,240,0,15,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,0,31,240,2,254,0,0,0,0,0,191,192,0,255,128,0,0,0,3,255,64,0,63,244,0,0,0,47,252,0,0,11,255,64,0,2,255,245,64,0,43,255,248,0,111,255,175,192,0,63,111,255,192,255,248,47,192,0,63,71,255,128,63,208,47,192,0,63,64,127,0,24,0,63,128,0,63,64,0,0,0,0,63,128,0,63,64,0,0,0,0,127,64,0,63,64,0,0,0,0,255,0,0,63,64,0,0,0,3,254,0,0,63,64,0,0,0,15,252,0,0,63,64,0,0,0,191,244,0,0,63,64,0,0,7,255,208,0,0,63,64,0,0,2,255,0,0,0,63,64,0,0,0,244,0,0,0,63,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x767d 白 + 125,118,27,36,252,37,5,252,0,0,3,228,0,0,0,0,0,7,252,0,0,0,0,0,11,248,0,0,0,0,0,15,240,0,0,0,0,0,31,240,0,0,0,0,0,47,208,0,0,0,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,85,85,85,85,87,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252,254,85,85,85,85,87,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,255,255,255,255,255,252,255,85,85,85,85,87,252,254,0,0,0,0,2,252,254,0,0,0,0,2,252,0,0,0,0,0,0,0, + // 0x7684 的 + 132,118,32,35,24,37,3,253,0,30,128,0,7,144,0,0,0,47,192,0,11,240,0,0,0,63,128,0,15,224,0,0,0,63,64,0,15,208,0,0,0,127,0,0,31,192,0,0,0,190,0,0,63,192,0,0,255,255,255,208,63,255,255,253,255,255,255,208,191,255,255,253,255,255,255,208,255,255,255,253,253,0,15,209,253,0,0,253,253,0,15,211,248,0,0,253,253,0,15,219,240,0,0,252,253,0,15,239,224,0,0,252,253,0,15,239,192,0,0,252,253,0,15,210,66,0,0,252,253,0,15,208,31,128,0,252,255,255,255,208,31,208,0,252,255,255,255,208,11,240,0,252,255,255,255,208,3,252,0,252,253,0,15,208,1,254,1,252,253,0,15,208,0,191,1,252,253,0,15,208,0,63,193,252,253,0,15,208,0,47,194,248,253,0,15,208,0,15,66,248,253,0,15,208,0,4,2,248,253,0,15,208,0,0,3,248,253,0,15,208,0,0,3,244,253,0,15,208,0,0,3,244,255,255,255,208,0,0,7,240,255,255,255,208,0,0,11,240,255,255,255,208,0,0,31,224,253,0,0,0,2,255,255,208,253,0,0,0,0,255,255,192,253,0,0,0,0,255,254,0,0,0,0,0,0,0,0,0, + // 0x76e3 監 + 227,118,33,34,50,37,2,254,0,0,0,0,0,57,0,0,0,42,170,170,170,64,127,0,0,0,63,255,255,255,128,190,0,0,0,63,255,255,255,128,252,0,0,0,63,0,248,0,1,252,0,0,0,63,0,248,0,2,248,0,0,0,63,85,253,85,3,255,255,255,128,63,255,255,255,7,255,255,255,128,63,255,255,255,15,255,255,255,128,63,0,0,63,47,192,0,0,0,63,0,0,63,127,64,0,0,0,63,85,85,127,191,0,0,0,0,63,255,255,255,28,0,0,0,0,63,255,255,255,0,0,0,0,0,63,0,248,0,0,0,0,0,0,63,0,248,0,2,255,255,255,0,63,0,248,0,2,255,255,255,0,63,255,255,255,194,255,255,255,0,63,255,255,255,192,0,0,0,0,42,170,170,170,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,255,171,254,175,250,191,208,0,0,252,3,244,7,224,15,208,0,0,252,3,244,7,224,15,208,0,0,252,3,244,7,224,15,208,0,0,252,3,244,7,224,15,208,0,0,252,3,244,7,224,15,208,0,0,252,3,244,7,224,15,208,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x76f4 直 + 244,118,33,35,59,37,2,253,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,7,244,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,26,175,250,170,170,64,0,5,80,63,255,255,255,255,128,0,15,224,63,255,255,255,255,128,0,15,224,63,64,0,0,47,128,0,15,224,63,64,0,0,47,128,0,15,224,63,149,85,85,127,128,0,15,224,63,255,255,255,255,128,0,15,224,63,255,255,255,255,128,0,15,224,63,64,0,0,47,128,0,15,224,63,64,0,0,47,128,0,15,224,63,149,85,85,127,128,0,15,224,63,255,255,255,255,128,0,15,224,63,255,255,255,255,128,0,15,224,63,64,0,0,47,128,0,15,224,63,64,0,0,47,128,0,15,224,63,170,170,170,191,128,0,15,224,63,255,255,255,255,128,0,15,224,63,255,255,255,255,128,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0, + // 0x7720 眠 + 32,119,34,33,41,37,2,253,127,255,253,11,255,255,255,255,64,127,255,253,11,255,255,255,255,64,127,255,253,11,255,255,255,255,64,127,0,189,11,224,0,0,63,64,127,0,189,11,224,0,0,63,64,127,0,189,11,224,0,0,63,64,127,0,189,11,224,0,0,63,64,127,0,189,11,240,0,0,63,64,127,255,253,11,255,255,255,255,64,127,255,253,11,255,255,255,255,64,127,255,253,11,255,255,255,255,64,127,0,189,11,224,7,240,0,0,127,0,189,11,224,3,240,0,0,127,0,189,11,224,3,240,0,0,127,0,189,11,224,3,240,0,0,127,0,189,11,240,7,244,0,0,127,255,253,11,255,255,255,255,208,127,255,253,11,255,255,255,255,208,127,255,253,11,255,255,255,255,208,127,0,189,11,224,2,248,0,0,127,0,189,11,224,1,252,0,0,127,0,189,11,224,1,252,0,0,127,0,189,11,224,0,252,0,0,127,0,189,11,224,0,253,0,0,127,255,253,11,224,0,190,0,0,127,255,253,11,224,0,127,1,208,127,255,253,11,224,0,63,2,240,127,0,0,11,224,107,127,130,240,127,0,0,11,255,255,95,195,240,63,0,2,255,255,255,79,247,240,0,0,2,255,255,249,7,255,208,0,0,1,255,228,0,2,255,192,0,0,0,144,0,0,0,127,0, + // 0x780d 砍 + 13,120,35,35,59,37,1,253,0,0,0,0,15,144,0,0,0,0,0,0,0,15,208,0,0,0,63,255,255,253,31,208,0,0,0,63,255,255,253,31,192,0,0,0,63,255,255,253,47,192,0,0,0,0,63,64,0,63,192,0,0,0,0,63,0,0,63,128,0,1,0,0,127,0,0,127,255,255,255,244,0,126,0,0,191,255,255,255,244,0,190,0,0,255,255,255,255,240,0,253,0,0,253,15,208,11,224,0,252,0,2,252,15,208,15,208,1,252,0,3,248,15,208,15,192,2,255,255,251,244,15,208,31,192,3,255,255,255,240,15,208,47,128,7,255,255,255,208,15,208,63,64,11,248,3,247,192,15,208,63,0,15,248,3,240,0,15,208,5,0,47,248,3,240,0,31,224,0,0,63,248,3,240,0,47,240,0,0,191,248,3,240,0,63,240,0,0,191,248,3,240,0,63,244,0,0,62,248,3,240,0,190,252,0,0,21,248,3,240,0,252,252,0,0,1,248,3,240,2,252,191,0,0,1,248,3,240,3,244,63,64,0,1,255,255,240,15,240,47,192,0,1,255,255,240,47,208,15,240,0,1,255,255,240,191,128,11,252,0,1,248,0,2,255,0,3,255,0,1,248,0,15,253,0,0,255,208,1,248,0,127,244,0,0,127,248,1,164,0,63,208,0,0,31,244,0,0,0,31,64,0,0,3,224,0,0,0,8,0,0,0,0,128, + // 0x78ba 確 + 186,120,35,35,59,37,1,253,0,0,0,0,0,6,144,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,15,208,0,0,63,255,255,240,0,31,192,0,0,63,255,255,255,255,255,255,255,244,63,255,255,255,255,255,255,255,244,0,63,0,15,255,255,255,255,244,0,127,0,15,192,254,0,3,244,0,127,0,15,193,252,11,147,244,0,190,0,15,195,248,15,211,244,0,253,0,10,75,240,31,193,160,0,252,0,0,15,208,47,64,0,1,252,0,0,63,255,255,255,208,2,252,0,0,191,255,255,255,208,3,255,255,210,255,255,255,255,208,3,255,255,219,255,0,253,0,0,11,255,255,255,255,0,253,0,0,15,244,11,223,255,0,253,0,0,31,244,11,210,127,170,254,170,64,63,244,11,208,127,255,255,255,192,127,244,11,208,127,255,255,255,192,255,244,11,208,127,0,253,0,0,191,244,11,208,127,0,253,0,0,61,244,11,208,127,0,253,0,0,17,244,11,208,127,170,254,170,64,1,244,11,208,127,255,255,255,192,1,244,11,208,127,255,255,255,192,1,255,255,208,127,0,253,0,0,1,255,255,208,127,0,253,0,0,1,255,255,208,127,0,253,0,0,1,244,0,0,127,255,255,255,244,1,244,0,0,127,255,255,255,244,1,244,0,0,127,255,255,255,244,0,0,0,0,127,0,0,0,0,0,0,0,0,126,0,0,0,0, + // 0x79fb 移 + 251,121,34,35,59,37,1,253,0,0,1,0,0,15,144,0,0,0,0,111,192,0,47,192,0,0,0,111,255,240,0,127,128,0,0,63,255,255,208,1,255,255,254,0,63,255,244,0,7,255,255,255,128,47,155,240,0,47,255,255,255,0,0,7,240,0,191,192,0,254,0,0,7,240,7,255,192,2,252,0,0,7,240,47,255,240,7,248,0,0,7,240,15,231,253,31,240,0,0,11,240,3,0,255,191,192,0,63,255,255,240,0,63,255,64,0,63,255,255,240,0,15,253,0,0,63,255,255,240,0,191,240,0,0,0,15,240,0,7,255,208,0,0,0,31,240,1,255,255,253,0,0,0,63,248,15,255,227,252,0,0,0,127,254,3,254,11,240,0,0,0,255,255,130,144,47,255,255,224,1,255,255,208,0,191,255,255,240,3,251,247,244,2,255,255,255,240,7,231,242,244,15,248,0,31,208,15,199,240,224,191,240,0,63,192,47,135,240,71,255,253,0,191,64,127,71,240,7,254,255,129,255,0,190,7,240,2,208,127,231,252,0,60,7,240,0,0,15,255,244,0,36,7,240,0,0,2,255,208,0,0,7,240,0,0,7,255,64,0,0,7,240,0,0,127,252,0,0,0,7,240,0,7,255,224,0,0,0,7,240,6,255,255,64,0,0,0,7,240,47,255,244,0,0,0,0,7,240,15,254,0,0,0,0,0,7,240,7,144,0,0,0,0, + // 0x7a4d 積 + 77,122,35,36,68,37,1,252,0,0,1,0,0,15,208,0,0,0,0,111,128,0,15,208,0,0,0,111,255,231,255,255,255,255,224,63,255,255,219,255,255,255,255,224,63,255,244,0,0,15,224,0,0,46,159,224,0,0,15,208,0,0,0,11,224,3,255,255,255,255,128,0,11,224,3,255,255,255,255,128,0,11,224,0,0,15,224,0,0,0,11,224,0,0,15,224,0,0,42,175,250,191,255,255,255,255,244,63,255,255,255,255,255,255,255,244,63,255,255,224,0,0,0,0,0,63,255,255,208,0,0,0,0,0,0,15,224,0,255,255,255,255,64,0,47,224,0,255,255,255,255,64,0,63,248,0,252,0,0,63,64,0,127,254,0,252,0,0,63,64,0,255,255,128,255,255,255,255,64,1,255,255,208,255,255,255,255,64,3,251,231,240,252,0,0,63,64,11,219,226,224,252,0,0,63,64,15,203,224,192,255,255,255,255,64,63,139,224,0,255,255,255,255,64,191,11,224,0,252,0,0,63,64,189,11,224,0,252,0,0,63,64,60,11,224,0,252,0,0,63,64,32,11,224,0,255,255,255,255,64,0,11,224,0,255,255,255,255,64,0,11,224,0,3,128,3,128,0,0,11,224,0,47,244,15,244,0,0,11,224,2,255,208,7,255,0,0,11,224,127,254,0,0,191,208,0,11,224,191,224,0,0,31,244,0,11,224,46,0,0,0,3,128,0,0,0,0,0,0,0,0,0, + // 0x7aef 端 + 239,122,35,35,59,37,1,253,0,5,0,0,0,15,192,0,0,0,47,64,0,0,15,192,0,0,0,47,64,11,224,15,192,15,192,0,47,64,11,224,15,192,15,192,0,47,64,11,224,15,192,15,192,0,47,64,11,224,15,192,15,192,0,47,64,11,224,15,192,15,192,0,47,64,11,224,15,192,15,192,63,255,255,139,255,255,255,255,192,63,255,255,139,255,255,255,255,192,63,255,255,139,255,255,255,255,192,0,0,0,0,0,0,0,0,0,6,0,57,0,0,0,0,0,0,31,64,127,0,0,0,0,0,0,15,128,126,63,255,255,255,255,244,15,128,189,63,255,255,255,255,244,15,192,189,63,255,255,255,255,244,11,192,252,0,0,47,192,0,0,11,192,252,0,0,63,192,0,0,7,208,252,0,0,63,64,0,0,7,209,248,15,255,255,255,255,224,3,225,244,15,255,255,255,255,224,3,226,240,15,255,255,255,255,224,3,211,240,15,193,244,63,7,224,0,3,246,223,193,244,63,7,224,0,7,255,223,193,244,63,7,224,27,255,255,239,193,244,63,7,224,191,255,254,79,193,244,63,7,224,127,254,64,15,193,244,63,7,224,62,64,0,15,193,244,63,7,224,0,0,0,15,193,244,63,7,224,0,0,0,15,193,244,63,7,224,0,0,0,15,193,244,63,111,224,0,0,0,15,193,244,63,127,208,0,0,0,10,128,80,0,63,64, + // 0x7b49 等 + 73,123,34,35,59,37,1,253,0,30,64,0,0,249,0,0,0,0,63,192,0,1,253,0,0,0,0,127,64,0,2,252,0,0,0,0,255,255,255,199,255,255,255,240,1,255,255,255,207,255,255,255,240,3,255,255,255,239,255,255,255,240,15,240,252,0,191,130,252,0,0,63,208,254,1,255,0,255,0,0,191,128,127,0,253,0,127,64,0,31,0,56,1,252,0,61,0,0,0,0,0,1,252,0,0,0,0,0,127,255,255,255,255,255,248,0,0,127,255,255,255,255,255,252,0,0,127,255,255,255,255,255,252,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,0,0,124,0,0,3,248,0,0,0,1,255,64,0,3,248,0,0,0,0,191,208,0,3,248,0,0,0,0,31,244,0,3,248,0,0,0,0,7,253,0,3,248,0,0,0,0,1,253,0,7,248,0,0,0,0,0,176,31,255,244,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,11,255,128,0,0, + // 0x7ba1 管 + 161,123,35,35,59,37,1,253,0,46,64,0,0,248,0,0,0,0,63,128,0,1,253,0,0,0,0,127,0,0,3,252,0,0,0,0,255,255,255,203,255,255,255,244,2,255,255,255,223,255,255,255,244,11,255,255,255,255,255,255,255,244,31,224,253,1,255,0,254,0,0,127,192,191,2,252,0,127,64,0,15,0,62,0,252,0,63,64,0,0,0,0,0,252,0,0,0,0,10,170,170,171,254,170,170,170,128,15,255,255,255,255,255,255,255,208,15,255,255,255,255,255,255,255,208,15,192,0,0,0,0,0,15,208,15,192,0,0,0,0,0,15,208,15,193,170,170,170,170,169,15,208,15,193,255,255,255,255,254,15,208,15,193,255,255,255,255,254,15,208,0,1,252,0,0,0,190,0,0,0,1,252,0,0,0,190,0,0,0,1,254,170,170,170,254,0,0,0,1,255,255,255,255,254,0,0,0,1,255,255,255,255,254,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,254,170,170,170,170,160,0,0,1,255,255,255,255,255,244,0,0,1,255,255,255,255,255,244,0,0,1,252,0,0,0,3,244,0,0,1,252,0,0,0,3,244,0,0,1,252,0,0,0,3,244,0,0,1,255,255,255,255,255,244,0,0,1,255,255,255,255,255,244,0,0,1,254,170,170,170,171,244,0,0,1,248,0,0,0,3,240,0, + // 0x7bb1 箱 + 177,123,34,35,59,37,1,253,0,30,0,0,0,228,0,0,0,0,47,192,0,0,254,0,0,0,0,63,128,0,1,252,0,0,0,0,127,64,0,3,252,0,0,0,0,255,255,255,199,255,255,255,240,1,255,255,255,207,255,255,255,240,3,255,255,255,239,255,255,255,240,11,244,253,0,127,194,252,0,0,31,224,191,0,255,0,255,0,0,127,192,63,2,253,0,63,64,0,47,64,62,0,116,0,46,64,0,5,1,252,0,0,0,0,0,0,0,1,252,0,47,255,255,255,192,0,1,252,0,47,255,255,255,192,0,2,252,0,47,255,255,255,192,47,255,255,255,111,128,0,47,192,47,255,255,255,111,128,0,47,192,47,255,255,255,111,128,0,47,192,0,7,252,0,47,234,170,191,192,0,15,253,0,47,255,255,255,192,0,31,255,64,47,255,255,255,192,0,63,255,208,47,128,0,47,192,0,127,255,244,47,128,0,47,192,0,255,254,254,47,128,0,47,192,2,253,252,255,111,234,170,191,192,7,245,252,63,47,255,255,255,192,31,225,252,28,47,255,255,255,192,63,193,252,0,47,128,0,47,192,127,65,252,0,47,128,0,47,192,46,1,252,0,47,128,0,47,192,8,1,252,0,47,255,255,255,192,0,1,252,0,47,255,255,255,192,0,1,252,0,47,255,255,255,192,0,1,252,0,47,128,0,47,192,0,1,252,0,26,64,0,21,64, + // 0x7cfb 系 + 251,124,35,35,59,37,1,253,0,0,0,0,0,0,0,64,0,0,0,0,0,0,21,191,240,0,0,1,85,170,255,255,255,248,0,11,255,255,255,255,255,255,252,0,7,255,255,255,255,255,165,0,0,3,255,255,255,212,0,0,0,0,0,0,0,255,64,1,0,0,0,0,0,3,254,0,11,208,0,0,0,0,15,248,0,47,240,0,0,0,24,63,224,0,191,208,0,0,0,127,255,128,2,255,64,0,0,0,255,254,0,11,253,0,0,0,0,47,253,0,47,240,0,0,0,0,3,255,128,255,192,0,0,0,0,0,191,247,255,0,32,0,0,0,0,47,255,248,2,253,0,0,0,0,7,255,208,1,255,64,0,0,0,1,255,64,0,127,224,0,0,0,7,252,0,0,31,248,0,0,0,47,255,255,255,255,254,0,63,255,255,255,255,255,255,255,128,63,255,255,255,255,255,255,255,208,47,255,255,255,254,85,0,31,244,5,85,0,1,252,0,0,11,224,0,0,80,1,252,0,96,2,64,0,1,254,1,252,2,252,0,0,0,3,254,1,252,7,255,64,0,0,15,252,1,252,0,255,208,0,0,127,240,1,252,0,63,248,0,1,255,192,1,252,0,11,254,0,11,255,0,1,252,0,2,255,192,127,252,0,1,252,0,0,191,240,47,224,0,1,252,0,0,31,208,7,64,0,1,252,0,0,11,0,0,0,0,1,252,0,0,0,0, + // 0x7d05 紅 + 5,125,35,35,59,37,1,253,0,3,64,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,63,65,64,255,255,255,255,240,0,254,3,244,255,255,255,255,240,30,252,11,244,255,255,255,255,240,63,244,15,224,85,87,249,85,80,63,240,63,192,0,3,248,0,0,11,248,191,64,0,3,248,0,0,2,254,254,0,0,3,248,0,0,0,191,248,0,0,3,248,0,0,0,47,240,180,0,3,248,0,0,0,47,193,252,0,3,248,0,0,0,127,64,254,0,3,248,0,0,0,254,0,127,64,3,248,0,0,191,255,255,255,192,3,248,0,0,127,255,255,255,208,3,248,0,0,127,255,255,255,240,3,248,0,0,16,2,248,3,240,3,248,0,0,0,2,248,1,64,3,248,0,0,0,2,248,4,0,3,248,0,0,7,226,248,252,0,3,248,0,0,11,226,248,190,0,3,248,0,0,15,210,248,63,0,3,248,0,0,15,194,248,63,64,3,248,0,0,31,194,248,31,192,3,248,0,0,47,130,248,15,192,3,248,0,0,63,66,248,15,208,3,248,0,0,127,2,248,10,64,3,248,0,0,126,2,248,7,255,255,255,255,248,4,2,248,7,255,255,255,255,248,0,2,248,7,255,255,255,255,248,0,2,248,1,85,85,85,85,80,0,2,164,0,0,0,0,0,0, + // 0x7d22 索 + 34,125,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,63,255,255,255,255,255,255,255,64,63,255,255,255,255,255,255,255,64,63,255,255,255,255,255,255,255,64,63,0,0,255,64,0,0,63,64,63,0,3,254,0,16,0,63,64,63,0,15,248,0,188,0,63,64,63,9,63,224,2,255,0,63,64,63,63,255,64,15,252,0,63,64,0,63,253,0,127,224,0,0,0,0,7,255,1,255,129,0,0,0,0,0,191,219,253,11,192,0,0,0,0,31,255,224,31,244,0,0,0,0,7,255,64,7,254,0,0,0,0,31,252,0,0,255,192,0,127,255,255,255,255,255,255,244,0,127,255,255,255,255,255,255,254,0,127,255,255,255,255,250,170,255,64,0,0,64,7,240,0,0,61,0,0,2,248,7,240,11,192,0,0,0,15,252,7,240,47,248,0,0,0,127,240,7,240,7,255,128,0,7,255,128,7,240,0,191,240,0,127,253,0,7,240,0,15,253,0,255,224,0,7,240,0,2,255,64,47,64,0,7,240,0,0,125,0,4,0,0,7,240,0,0,0,0, + // 0x7d2b 紫 + 43,125,34,35,59,37,1,253,0,0,63,0,3,244,0,0,0,0,0,63,0,3,244,0,0,0,0,0,63,0,3,244,0,24,0,3,240,63,0,3,244,1,254,0,3,240,63,255,211,244,111,255,128,3,240,63,255,211,255,255,253,0,3,240,63,255,211,255,254,64,0,3,240,63,0,3,254,64,0,0,3,240,63,0,3,244,0,2,0,3,240,63,0,83,244,0,3,240,3,240,127,255,227,248,0,7,240,27,255,255,255,227,255,255,255,240,127,255,255,255,65,255,255,255,208,127,255,164,31,144,127,255,255,64,41,64,0,127,192,0,0,0,0,0,0,1,255,0,30,0,0,0,0,7,75,252,0,191,208,0,0,0,31,255,224,2,255,64,0,0,0,47,255,128,15,252,0,0,0,0,2,255,224,127,224,40,0,0,0,0,47,254,255,65,255,0,0,0,0,7,255,252,0,191,192,0,0,0,0,255,208,0,31,244,0,63,255,255,255,255,255,255,253,0,63,255,255,255,255,255,255,255,64,63,255,255,255,255,255,255,255,208,21,64,0,1,253,0,0,15,240,0,0,16,1,252,0,16,7,128,0,1,254,1,252,2,253,0,0,0,11,254,1,252,7,255,128,0,0,127,244,1,252,0,127,244,0,7,255,192,1,252,0,11,255,0,47,254,0,1,252,0,1,255,208,11,240,0,1,252,0,0,47,128,2,64,0,1,252,0,0,5,0, + // 0x7d30 細 + 48,125,34,35,59,37,1,253,0,13,0,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,0,0,255,255,255,255,208,0,190,0,0,255,255,255,255,208,0,252,15,128,255,255,255,255,208,26,244,31,192,252,7,240,15,208,63,240,63,64,252,3,240,15,208,127,208,191,0,252,3,240,15,208,47,224,252,0,252,3,240,15,208,11,247,244,0,252,3,240,15,208,3,255,240,0,252,3,240,15,208,0,255,194,64,252,3,240,15,208,0,127,79,192,252,3,240,15,208,0,62,11,224,252,3,240,15,208,0,252,3,240,252,3,240,15,208,2,255,255,248,255,255,255,255,208,191,255,255,253,255,255,255,255,208,191,255,250,254,255,255,255,255,208,121,11,208,127,252,7,240,15,208,0,11,208,57,252,3,240,15,208,0,11,208,64,252,3,240,15,208,15,203,215,208,252,3,240,15,208,15,203,215,224,252,3,240,15,208,15,139,211,240,252,3,240,15,208,31,139,210,244,252,3,240,15,208,47,75,208,248,252,3,240,15,208,63,11,208,253,252,3,240,15,208,63,11,208,189,252,3,240,15,208,126,11,208,80,255,255,255,255,208,188,11,208,0,255,255,255,255,208,8,11,208,0,255,255,255,255,208,0,11,208,0,252,0,0,15,208,0,11,208,0,252,0,0,15,208,0,7,208,0,84,0,0,0,0, + // 0x7d42 終 + 66,125,35,36,68,37,1,252,0,9,0,0,0,169,0,0,0,0,31,192,0,0,253,0,0,0,0,63,128,0,2,252,0,0,0,0,63,0,0,3,244,0,0,0,0,189,0,0,15,255,255,253,0,0,252,15,64,31,255,255,255,0,6,244,63,128,127,255,255,254,0,63,240,127,0,255,128,1,252,0,127,192,253,3,255,208,3,248,0,47,209,252,15,255,240,11,240,0,11,247,240,63,211,248,47,208,0,3,255,208,47,64,254,127,128,0,0,255,133,9,0,127,255,0,0,0,127,47,0,0,47,252,0,0,0,125,15,128,0,47,252,0,0,0,248,11,192,1,255,255,64,0,3,250,255,224,11,255,191,224,0,191,255,255,240,191,248,31,253,0,191,255,255,251,255,192,7,255,224,127,255,208,255,254,0,0,191,248,0,15,192,147,224,61,0,31,240,4,15,193,65,0,255,208,1,192,15,207,207,192,0,127,252,0,0,15,207,203,208,0,7,255,128,0,31,143,195,224,0,0,191,192,0,31,79,195,240,0,0,15,0,0,47,79,194,244,0,0,0,0,0,63,15,193,248,63,144,0,0,0,63,15,192,228,191,253,0,0,0,190,15,192,0,111,255,224,0,0,252,15,192,0,1,191,255,64,0,24,15,192,0,0,11,255,244,0,0,15,192,0,0,0,127,254,0,0,15,192,0,0,0,7,252,0,0,15,192,0,0,0,0,116,0,0,0,0,0,0,0,0,0,0, + // 0x7d71 統 + 113,125,35,36,68,37,1,252,0,9,0,0,0,15,208,0,0,0,31,192,0,0,15,208,0,0,0,63,128,0,0,15,208,0,0,0,63,0,0,0,15,208,0,0,0,190,0,0,0,15,208,0,0,0,252,15,79,255,255,255,255,240,6,244,47,207,255,255,255,255,240,63,240,63,15,255,255,255,255,240,127,208,253,0,2,252,0,0,0,47,209,252,0,3,248,1,192,0,15,243,240,0,7,240,11,240,0,3,255,224,0,15,224,3,252,0,0,255,197,0,15,208,1,254,0,0,127,47,0,47,193,90,255,64,0,125,15,143,255,255,255,255,192,0,248,11,207,255,255,255,255,224,3,250,255,239,255,254,165,91,240,191,255,255,245,64,0,0,3,244,191,255,255,244,5,80,21,1,128,127,255,208,248,11,224,63,64,0,0,15,192,208,11,224,63,64,0,4,15,193,64,15,224,63,64,0,15,207,207,192,15,208,63,64,0,15,207,203,192,15,208,63,64,0,31,143,199,224,15,192,63,64,0,31,79,195,240,31,192,63,64,0,47,79,194,240,47,192,63,64,0,63,15,193,244,63,128,63,64,128,63,15,192,248,127,0,63,64,248,190,15,192,64,255,0,63,64,252,252,15,192,3,253,0,63,64,252,24,15,192,15,248,0,63,129,248,0,15,192,191,240,0,47,255,244,0,15,192,191,128,0,31,255,240,0,15,192,61,0,0,11,255,192,0,0,0,0,0,0,0,0,0, + // 0x7d72 絲 + 114,125,35,35,59,37,1,253,0,7,64,0,0,3,144,0,0,0,15,240,0,0,7,244,0,0,0,31,208,0,0,15,240,0,0,0,63,128,0,0,31,208,0,0,0,127,2,64,0,63,128,128,0,0,253,7,244,0,127,1,248,0,46,248,15,240,13,253,3,252,0,63,240,47,192,63,248,11,244,0,127,208,63,128,63,240,31,224,0,31,240,255,0,15,248,63,192,0,7,254,252,0,3,254,191,0,0,2,255,244,0,0,255,253,0,0,0,191,225,224,0,63,248,188,0,0,63,195,240,0,31,240,253,0,0,63,1,248,0,31,192,191,0,0,188,0,253,0,63,0,63,192,1,255,255,255,0,255,191,255,208,191,255,255,255,127,255,255,255,240,127,255,255,255,191,255,255,255,244,127,255,244,15,255,255,253,3,244,0,2,244,13,0,1,252,1,208,0,2,244,16,0,1,252,0,0,7,146,245,248,3,225,252,108,0,7,226,244,252,7,241,252,254,0,11,210,244,190,11,225,252,127,0,15,210,244,127,15,209,252,63,128,15,194,244,63,15,193,252,31,192,31,194,244,47,175,193,252,15,208,63,130,244,29,63,65,252,11,240,63,2,244,0,191,1,252,3,244,191,2,244,0,253,1,252,3,248,29,2,244,0,44,1,252,1,144,0,2,244,0,0,1,252,0,0,0,2,244,0,0,1,252,0,0,0,2,244,0,0,1,252,0,0, + // 0x7da0 綠 + 160,125,35,35,59,37,1,253,0,13,0,0,11,144,0,0,0,0,31,192,0,15,208,0,0,0,0,63,64,0,15,208,0,0,0,0,63,0,0,31,255,255,253,0,0,189,4,0,47,255,255,252,0,0,252,31,64,63,234,171,252,0,26,244,63,128,63,64,1,252,0,63,240,127,0,127,0,2,248,0,127,192,253,0,191,170,171,248,0,47,210,248,0,255,255,255,244,0,11,247,240,0,255,255,255,240,0,2,255,208,0,188,0,7,240,0,0,255,133,0,0,0,11,224,0,0,127,63,15,255,255,255,255,240,0,252,47,143,255,255,255,255,240,2,248,15,207,255,255,255,255,240,175,250,255,224,0,11,240,0,0,191,255,255,240,0,11,240,0,0,191,255,255,244,160,11,244,3,128,16,15,193,251,248,11,248,15,240,0,15,192,226,254,11,252,63,192,5,15,192,0,191,75,253,255,0,15,207,207,128,63,203,255,248,0,31,143,207,192,15,75,255,224,0,31,79,199,208,4,11,255,192,0,47,79,195,224,1,203,239,224,0,47,15,195,240,11,235,231,244,0,63,15,194,240,127,235,226,252,0,62,15,193,226,255,75,224,255,64,189,15,192,31,253,11,224,127,224,252,15,192,63,240,11,224,31,248,24,15,192,31,128,11,224,7,240,0,15,192,13,7,255,224,0,192,0,15,192,0,3,255,192,0,0,0,15,192,0,2,250,0,0,0, + // 0x7db2 網 + 178,125,34,35,59,37,1,253,0,9,0,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,63,128,15,255,255,255,255,224,0,63,0,15,255,255,255,255,224,0,190,0,15,255,255,255,255,224,0,252,31,79,208,0,0,11,224,6,244,63,143,209,128,10,75,224,63,240,127,15,211,208,15,203,224,127,208,253,15,210,240,31,75,224,63,193,252,15,209,240,47,11,224,15,243,240,15,208,244,61,11,224,3,255,208,15,208,224,60,11,224,1,255,193,15,219,255,255,203,224,0,191,63,15,219,255,255,203,224,0,189,47,79,214,175,234,139,224,2,248,15,207,208,15,192,11,224,175,250,255,223,208,15,192,11,224,191,255,255,255,208,15,192,11,224,191,255,255,255,219,255,255,219,224,16,15,193,255,219,255,255,219,224,0,15,192,239,215,254,170,139,224,0,15,192,15,209,248,0,11,224,15,143,207,143,209,248,0,11,224,15,143,207,207,209,248,0,11,224,31,79,199,223,209,248,0,11,224,47,79,195,239,209,248,0,11,224,47,15,195,255,208,255,171,139,224,63,15,194,255,208,255,255,203,224,62,15,193,223,208,63,255,203,224,189,15,192,15,208,0,0,11,224,252,15,192,15,208,0,0,11,224,24,15,192,15,208,0,0,11,208,0,15,192,15,208,0,15,255,208,0,15,192,15,208,0,7,255,192,0,15,192,15,208,0,3,254,0, + // 0x7dd2 緒 + 210,125,35,35,59,37,1,253,0,9,0,0,0,253,0,0,0,0,31,192,0,0,253,0,7,144,0,63,128,0,0,253,0,15,224,0,63,0,0,0,253,0,31,192,0,190,0,7,255,255,255,127,128,0,252,14,7,255,255,255,191,0,6,244,63,135,255,255,255,254,0,63,240,127,0,0,253,2,252,0,127,192,253,0,0,253,7,244,0,47,210,248,0,0,253,15,240,0,11,247,240,0,0,253,47,208,0,3,255,208,47,255,255,255,255,244,0,255,138,47,255,255,255,255,244,0,127,63,47,255,255,255,255,244,0,252,31,128,0,47,240,0,0,2,248,15,192,0,191,192,0,0,175,250,255,224,2,254,0,0,0,191,255,255,240,15,255,255,255,0,191,255,255,244,191,255,255,255,0,16,15,193,255,255,255,255,255,0,0,15,192,255,255,64,0,63,0,4,15,192,127,255,64,0,63,0,15,207,207,142,63,64,0,63,0,15,143,207,192,63,64,0,63,0,31,79,199,208,63,255,255,255,0,47,79,195,224,63,255,255,255,0,47,15,195,240,63,255,255,255,0,63,15,194,240,63,64,0,63,0,126,15,193,224,63,64,0,63,0,189,15,192,0,63,64,0,63,0,188,15,192,0,63,255,255,255,0,4,15,192,0,63,255,255,255,0,0,15,192,0,63,255,255,255,0,0,15,192,0,63,64,0,63,0,0,15,192,0,42,0,0,42,0, + // 0x7dda 線 + 218,125,35,35,59,37,1,253,0,13,0,0,0,11,144,0,0,0,31,192,0,0,15,240,0,0,0,63,64,0,0,31,224,0,0,0,63,0,0,0,47,192,0,0,0,189,4,2,255,255,255,255,192,0,252,31,66,255,255,255,255,192,26,244,63,130,254,170,170,191,192,63,240,127,2,244,0,0,31,192,127,192,253,2,244,0,0,31,192,47,210,248,2,250,170,170,175,192,11,247,240,2,255,255,255,255,192,2,255,208,2,255,255,255,255,192,0,255,133,2,244,0,0,31,192,0,127,63,2,244,0,0,31,192,0,252,47,130,244,0,0,31,192,2,248,15,194,255,255,255,255,192,175,250,255,226,255,255,255,255,192,191,255,255,242,170,175,250,170,128,191,255,255,244,0,7,240,0,0,16,15,193,248,0,7,240,2,64,0,15,192,239,255,215,244,11,224,5,15,193,79,255,247,252,47,240,15,207,207,143,255,231,253,191,128,15,143,203,192,15,215,255,254,0,31,79,199,208,15,199,255,244,0,47,79,195,224,47,135,255,208,0,47,15,195,240,127,7,235,240,0,63,15,194,240,254,7,227,248,0,62,15,193,147,252,7,225,254,0,189,15,192,15,244,7,224,191,208,252,15,192,127,224,7,224,63,248,40,15,192,63,128,11,224,11,244,0,15,192,29,3,255,224,1,224,0,15,192,0,3,255,208,0,0,0,15,192,0,2,254,64,0,0, + // 0x7de8 編 + 232,125,34,35,59,37,1,253,0,13,0,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,63,64,47,255,255,255,255,240,0,63,0,47,255,255,255,255,240,0,189,4,47,255,255,255,255,240,0,252,47,64,0,0,0,0,0,26,244,63,64,0,0,0,0,0,63,240,190,3,255,255,255,255,128,127,192,252,3,255,255,255,255,192,31,210,244,3,255,255,255,255,192,7,247,240,3,240,0,0,31,192,2,255,208,3,240,0,0,31,192,0,255,137,3,240,0,0,31,192,0,127,62,3,240,0,0,31,192,0,252,47,3,255,255,255,255,192,2,248,15,131,255,255,255,255,192,175,251,255,195,250,170,170,170,128,191,255,255,211,240,0,0,0,0,191,255,255,227,240,0,0,0,0,16,31,131,247,255,255,255,255,224,0,15,130,215,255,255,255,255,224,0,15,128,7,255,175,175,235,224,14,79,159,11,254,15,11,131,224,15,143,159,75,254,15,11,131,224,31,79,143,143,254,15,11,131,224,31,79,139,207,255,175,175,235,224,47,15,135,223,255,255,255,255,224,63,15,131,255,191,255,255,255,224,62,15,131,255,62,15,11,131,224,189,15,128,127,62,15,11,131,224,252,15,128,190,62,15,11,131,224,24,15,128,252,62,15,11,131,224,0,15,130,248,62,15,11,175,224,0,15,128,112,62,15,11,175,208,0,15,128,0,45,5,5,31,128, + // 0x7e2e 縮 + 46,126,34,35,59,37,1,253,0,9,0,0,0,15,208,0,0,0,31,192,0,0,15,208,0,0,0,47,64,0,0,15,208,0,0,0,63,0,0,0,15,208,0,0,0,189,0,31,255,255,255,255,240,0,252,30,31,255,255,255,255,240,6,244,63,95,255,255,255,255,240,63,240,127,31,128,0,0,7,240,127,208,252,31,128,0,0,7,240,47,210,248,31,174,0,0,2,160,11,247,240,0,63,255,255,255,240,3,255,208,0,63,191,255,255,240,0,255,138,0,190,191,255,255,240,0,127,63,0,252,0,47,128,0,0,252,31,65,252,0,63,64,0,2,248,15,194,248,0,63,0,0,175,251,255,195,244,0,63,0,0,191,255,255,235,244,63,255,255,208,191,255,255,255,244,63,255,255,208,16,31,130,255,244,63,255,255,208,0,15,128,191,244,63,0,11,208,0,15,129,62,244,63,0,11,208,15,143,159,21,244,63,0,11,208,15,143,143,65,244,63,170,175,208,31,79,143,129,244,63,255,255,208,47,15,139,193,244,63,255,255,208,47,15,135,209,244,63,0,11,208,63,15,131,209,244,63,0,11,208,62,15,131,209,244,63,0,11,208,189,15,128,1,244,63,0,11,208,252,15,128,1,244,63,170,175,208,24,15,128,1,244,63,255,255,208,0,15,128,1,244,63,255,255,208,0,15,128,1,244,63,0,11,208,0,15,128,1,244,42,0,5,64, + // 0x7e3d 總 + 61,126,35,35,59,37,1,253,0,13,0,0,0,11,224,0,0,0,31,192,0,0,15,240,0,0,0,63,64,0,0,15,208,0,0,0,63,0,2,170,191,234,170,128,0,189,4,7,255,255,255,255,192,0,252,47,71,255,255,255,255,192,26,244,63,71,208,7,128,11,192,63,240,190,7,208,11,128,11,192,127,192,252,7,208,15,255,203,192,31,210,244,7,215,191,255,203,192,7,247,240,7,219,253,15,139,192,2,255,208,7,210,255,95,11,192,0,255,137,7,219,239,254,11,192,0,127,62,7,219,130,253,11,192,0,252,47,7,209,7,255,139,192,2,248,15,135,208,47,219,203,192,175,251,255,199,209,255,2,11,192,191,255,255,215,208,244,0,11,192,191,255,255,231,255,255,255,255,192,16,31,131,247,255,255,255,255,192,0,15,130,214,170,190,170,170,128,0,15,129,0,0,254,0,0,0,15,143,159,0,0,191,208,0,0,15,143,143,64,0,31,248,0,0,31,79,143,193,3,242,253,44,0,47,15,139,195,243,240,180,127,0,47,15,135,195,227,240,0,63,64,63,15,131,215,227,240,0,31,192,62,15,131,155,211,240,0,15,208,189,15,128,15,195,240,3,71,240,252,15,128,31,195,240,3,227,244,20,15,128,63,67,240,7,225,248,0,15,128,127,3,255,255,208,248,0,15,128,8,2,255,255,192,128,0,15,128,0,0,111,254,0,0, + // 0x7e7c 繼 + 124,126,35,35,59,37,1,253,0,36,0,126,0,0,0,0,0,0,127,0,126,3,208,0,240,0,0,189,0,126,3,192,2,224,0,0,252,0,126,11,137,3,194,0,1,248,0,126,63,31,63,75,192,2,240,120,126,189,62,63,15,64,27,240,253,126,63,124,31,126,0,63,209,248,126,15,244,7,252,0,127,195,240,126,3,232,2,246,0,47,199,224,126,7,223,3,219,128,15,239,192,126,15,15,79,67,192,3,255,64,126,255,255,255,255,240,1,255,16,126,191,255,255,255,240,0,189,244,126,0,0,0,0,80,0,248,252,127,255,255,255,255,240,2,240,189,127,255,255,255,255,240,7,250,255,127,171,170,170,234,160,255,255,255,190,3,208,0,240,0,191,255,255,254,3,192,2,240,0,191,191,15,254,11,133,3,194,0,0,63,10,190,63,15,107,135,192,0,63,0,126,189,46,63,15,64,31,127,60,126,63,124,31,110,0,31,63,62,126,15,244,7,252,0,47,63,63,126,3,232,2,251,0,47,63,31,190,7,223,3,219,128,63,63,15,254,15,11,75,131,192,62,63,15,254,255,255,255,255,240,125,63,15,254,191,255,255,255,244,188,63,4,126,21,1,133,64,96,188,63,0,126,0,0,0,0,0,0,63,0,127,255,255,255,255,244,0,63,0,127,255,255,255,255,244,0,63,0,127,170,170,170,170,160,0,63,0,126,0,0,0,0,0, + // 0x7e8c 續 + 140,126,34,35,59,37,1,253,0,13,0,0,0,15,192,0,0,0,47,192,0,0,15,192,0,0,0,63,64,63,255,255,255,255,240,0,127,0,63,255,255,255,255,240,0,252,4,0,0,31,208,0,0,1,248,47,64,0,15,192,0,0,11,240,63,3,255,255,255,255,128,63,224,190,3,255,255,255,255,128,127,192,252,0,0,0,0,0,0,47,211,244,11,255,255,255,255,208,15,251,224,15,255,255,255,255,208,3,255,192,15,192,244,124,7,208,1,255,156,15,194,240,126,91,208,0,191,62,15,239,192,47,255,208,0,188,47,15,201,0,0,7,208,0,244,31,143,255,255,255,255,208,3,250,175,203,255,255,255,255,208,191,255,255,208,0,0,0,0,0,127,255,255,226,255,255,255,255,0,127,255,195,226,255,255,255,255,64,0,15,193,66,244,0,0,63,64,0,15,193,2,250,170,170,191,64,15,143,223,2,255,255,255,255,64,15,143,207,66,244,0,0,63,64,31,79,207,130,244,0,0,63,64,47,15,203,194,255,255,255,255,64,47,15,199,194,250,170,170,191,64,63,15,195,210,244,0,0,63,64,62,15,193,2,255,255,255,255,64,189,15,192,2,255,255,255,255,0,252,15,192,0,31,192,15,224,0,24,15,192,2,255,224,31,254,0,0,15,192,191,254,0,2,255,224,0,15,192,191,224,0,0,47,240,0,15,128,41,0,0,0,3,128, + // 0x7ea2 红 + 162,126,35,34,50,37,1,254,0,1,128,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,15,240,1,85,85,85,85,64,0,31,224,7,255,255,255,255,224,0,63,192,7,255,255,255,255,224,0,127,128,7,255,255,255,255,224,0,255,0,0,0,11,240,0,0,1,253,3,128,0,11,240,0,0,3,248,7,244,0,11,240,0,0,11,240,15,240,0,11,240,0,0,31,208,47,224,0,11,240,0,0,191,255,255,192,0,11,240,0,0,127,255,255,0,0,11,240,0,0,63,255,253,0,0,11,240,0,0,41,71,248,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,255,64,0,0,11,240,0,0,3,253,0,80,0,11,240,0,0,11,254,191,240,0,11,240,0,0,63,255,255,240,0,11,240,0,0,63,255,255,224,0,11,240,0,0,63,254,144,0,0,11,240,0,0,41,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,27,208,0,11,240,0,0,0,107,255,224,0,11,240,0,0,127,255,255,239,255,255,255,255,244,127,255,254,79,255,255,255,255,244,63,254,64,15,255,255,255,255,244,57,64,0,5,85,85,85,85,80,0,0,0,0,0,0,0,0,0, + // 0x7f6e 置 + 110,127,34,35,59,37,2,252,5,85,85,85,85,85,85,84,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,11,224,7,240,3,240,1,252,0,11,224,7,240,3,240,1,252,0,11,224,7,240,3,240,1,252,0,11,255,255,255,255,255,255,252,0,11,255,255,255,255,255,255,252,0,5,85,85,87,253,85,85,84,0,0,0,0,3,248,0,0,0,0,106,170,170,171,254,170,170,170,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,0,0,0,7,240,0,0,0,0,0,0,0,11,224,0,0,0,0,6,160,63,255,255,255,255,224,0,7,240,63,255,255,255,255,224,0,7,240,63,64,0,0,11,224,0,7,240,63,255,255,255,255,224,0,7,240,63,255,255,255,255,224,0,7,240,63,64,0,0,11,224,0,7,240,63,64,0,0,11,224,0,7,240,63,255,255,255,255,224,0,7,240,63,255,255,255,255,224,0,7,240,63,64,0,0,11,224,0,7,240,63,64,0,0,11,224,0,7,240,63,255,255,255,255,224,0,7,240,47,255,255,255,255,224,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,255,255,255,255,255,255,255,208,7,255,255,255,255,255,255,255,208,7,250,170,170,170,170,170,170,128,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x7f72 署 + 114,127,34,34,50,37,1,253,1,85,85,85,85,85,85,85,0,2,255,255,255,255,255,255,255,0,2,255,255,255,255,255,255,255,0,2,244,1,248,0,252,0,127,0,2,244,1,248,0,252,0,127,0,2,244,1,248,0,252,0,127,0,2,255,255,255,255,255,255,255,0,2,255,255,255,255,255,255,255,0,1,85,85,91,245,85,85,85,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,56,0,0,63,255,255,255,255,240,255,0,0,63,255,255,255,255,247,253,0,0,42,170,175,250,170,255,244,0,0,0,0,7,240,1,255,192,0,0,0,0,7,240,15,254,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,47,255,255,255,255,255,255,255,224,0,0,0,47,255,192,0,0,0,0,0,7,255,253,0,0,0,0,0,1,191,255,255,255,255,248,0,1,191,255,255,255,255,255,248,0,127,255,255,170,170,170,171,248,0,63,255,191,0,0,0,2,248,0,31,144,63,0,0,0,3,248,0,0,0,63,255,255,255,255,248,0,0,0,63,255,255,255,255,248,0,0,0,63,0,0,0,2,248,0,0,0,63,0,0,0,2,248,0,0,0,63,255,255,255,255,248,0,0,0,63,255,255,255,255,248,0,0,0,63,170,170,170,171,248,0,0,0,42,0,0,0,1,164,0, + // 0x8070 聰 + 112,128,35,36,68,37,1,252,0,0,0,0,0,7,224,0,0,0,0,0,0,0,11,240,0,0,63,255,255,253,0,15,224,0,0,63,255,255,254,170,175,234,170,128,63,255,255,255,255,255,255,255,192,3,240,15,209,255,255,255,255,192,3,240,15,209,244,3,192,11,192,3,240,15,209,244,7,192,11,192,3,240,15,209,244,15,255,203,192,3,255,255,209,245,255,175,203,192,3,255,255,209,245,254,15,75,192,3,255,255,209,246,255,175,11,192,3,240,15,209,246,199,252,11,192,3,240,15,209,244,1,253,11,192,3,240,15,209,244,7,255,75,192,3,240,15,209,244,63,135,11,192,3,240,15,209,244,189,0,11,192,3,255,255,209,250,186,170,175,192,3,255,255,209,255,255,255,255,192,3,255,255,209,255,255,255,255,192,3,240,15,208,0,47,128,0,0,3,240,15,208,0,63,240,0,0,3,240,15,208,0,11,253,0,0,3,240,15,208,0,165,255,0,0,3,240,15,208,81,248,61,29,0,3,246,255,208,253,248,4,127,0,111,255,255,208,248,248,0,63,64,127,255,255,209,244,248,0,31,192,127,254,95,210,240,248,0,15,208,57,64,15,211,240,248,2,231,240,0,0,15,219,224,248,2,243,240,0,0,15,239,192,248,3,242,248,0,0,15,239,128,255,255,225,248,0,0,15,210,0,255,255,192,128,0,0,15,208,0,26,170,64,0,0,0,0,0,0,0,0,0,0, + // 0x81ea 自 + 234,129,26,36,252,37,6,252,0,0,11,224,0,0,0,0,0,15,240,0,0,0,0,0,15,224,0,0,0,0,0,31,208,0,0,0,0,0,47,192,0,0,0,255,255,255,255,255,255,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,254,85,85,85,85,95,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,255,255,255,255,255,255,224,253,0,0,0,0,15,224,253,0,0,0,0,15,224,0,0,0,0,0,0,0, + // 0x85cd 藍 + 205,133,33,34,50,37,2,254,0,0,127,0,0,63,64,0,0,0,0,127,0,0,63,64,0,0,191,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,127,0,0,63,64,0,0,0,0,127,0,0,63,64,0,0,0,0,21,0,0,36,0,0,0,15,255,255,255,192,191,0,0,0,15,255,255,255,192,253,0,0,0,15,128,188,0,1,252,0,0,0,15,128,188,0,3,255,255,255,64,15,255,255,255,11,255,255,255,64,15,255,255,255,15,255,255,255,64,15,128,0,47,63,192,0,0,0,15,128,0,47,191,64,0,0,0,15,255,255,255,29,0,0,0,0,15,255,255,255,0,0,0,0,0,15,128,188,0,1,255,255,254,0,15,128,189,0,1,255,255,254,0,15,255,255,255,209,255,255,253,0,15,255,255,255,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,170,170,170,144,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,252,1,244,3,224,15,224,0,0,252,1,244,3,224,15,224,0,0,252,1,244,3,224,15,224,0,0,252,1,244,3,224,15,224,0,0,252,1,244,3,224,15,224,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x884c 行 + 76,136,34,36,68,37,1,252,0,0,180,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,7,252,2,255,255,255,255,192,0,31,240,2,255,255,255,255,192,0,127,208,2,255,255,255,255,192,2,255,64,0,85,85,85,85,64,11,253,0,0,0,0,0,0,0,63,244,0,0,0,0,0,0,0,127,208,14,0,0,0,0,0,0,47,0,63,192,0,0,0,0,0,8,0,127,128,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,3,253,5,85,85,85,85,80,0,11,248,31,255,255,255,255,240,0,47,240,31,255,255,255,255,240,0,127,208,31,255,255,255,255,240,1,255,208,0,0,0,47,192,0,11,255,208,0,0,0,47,192,0,47,255,208,0,0,0,47,192,0,255,239,208,0,0,0,47,192,0,127,143,208,0,0,0,47,192,0,30,15,208,0,0,0,47,192,0,4,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,0,0,47,192,0,0,15,208,0,1,85,127,192,0,0,15,208,0,2,255,255,128,0,0,15,208,0,1,255,255,64,0,0,15,208,0,0,255,248,0,0,0,0,0,0,0,0,0,0,0, + // 0x8868 表 + 104,136,35,35,59,37,1,253,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,7,255,255,255,255,255,255,255,64,7,255,255,255,255,255,255,255,64,7,255,255,255,255,255,255,255,64,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,127,255,255,255,255,255,252,0,0,191,255,255,255,255,255,252,0,0,191,255,255,255,255,255,252,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,47,255,255,255,255,255,255,255,224,0,0,0,127,239,192,0,0,0,0,0,2,255,143,224,0,28,0,0,0,31,253,7,240,0,191,0,0,0,255,240,3,244,2,255,64,0,27,255,192,2,252,31,253,0,1,255,255,128,1,253,191,224,0,111,255,255,128,0,255,255,64,0,127,254,63,128,0,127,248,0,0,47,208,63,128,0,47,224,0,0,9,0,63,128,0,15,244,0,0,0,0,63,128,0,71,253,0,0,0,0,63,128,111,210,255,128,0,0,0,63,239,255,208,191,244,0,0,0,127,255,255,208,47,254,64,0,127,255,255,249,0,7,255,244,0,191,255,249,0,0,0,255,240,0,127,249,0,0,0,0,31,208,0,57,0,0,0,0,0,1,128, + // 0x88ab 被 + 171,136,35,35,59,37,1,253,0,31,128,0,0,3,244,0,0,0,31,192,0,0,3,244,0,0,0,31,192,0,0,3,244,0,0,0,31,192,0,0,3,244,0,0,0,31,192,0,0,3,244,0,0,0,31,192,0,0,3,244,0,0,0,47,192,3,255,255,255,255,244,63,255,255,195,255,255,255,255,240,63,255,255,211,255,255,255,255,240,63,255,255,195,244,3,244,11,224,0,0,47,131,244,3,244,15,208,0,0,127,3,244,3,244,15,192,0,0,254,3,244,3,244,31,192,0,1,252,3,244,3,244,27,64,0,3,248,147,244,3,244,0,0,0,15,240,251,255,255,255,255,128,0,47,227,243,255,255,255,255,192,0,191,251,211,255,255,255,255,128,1,255,255,131,255,224,0,63,64,7,255,255,3,251,240,0,191,0,47,255,239,195,243,244,0,254,0,255,239,207,227,241,252,1,252,0,127,95,195,231,240,253,3,252,0,60,31,194,135,240,191,11,244,0,16,31,192,11,224,63,223,224,0,0,31,192,15,208,31,255,192,0,0,31,192,15,192,15,255,64,0,0,31,192,31,192,3,255,0,0,0,31,192,47,128,15,255,128,0,0,31,192,63,64,127,255,240,0,0,31,192,191,2,255,239,254,0,0,31,192,254,47,254,7,255,224,0,31,194,252,191,244,0,255,244,0,31,193,244,63,128,0,31,224,0,31,192,32,8,0,0,1,192, + // 0x88c5 装 + 197,136,35,36,68,37,1,252,0,0,42,0,0,10,144,0,0,0,0,127,0,0,15,208,0,0,2,0,127,0,0,15,208,0,0,15,208,127,0,0,15,208,0,0,15,248,127,0,0,15,208,0,0,3,254,127,31,255,255,255,255,240,0,189,127,31,255,255,255,255,240,0,36,127,31,255,255,255,255,240,0,0,127,0,0,15,208,0,0,0,0,127,0,0,15,208,0,0,0,7,127,0,0,15,208,0,0,1,191,191,0,0,15,208,0,0,31,255,191,0,0,15,208,0,0,127,248,127,7,255,255,255,255,192,63,64,127,7,255,255,255,255,192,20,0,127,7,255,255,255,255,192,0,0,127,0,0,0,0,0,0,0,0,42,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,42,170,170,255,255,234,170,170,160,0,0,2,255,95,192,0,56,0,0,0,47,248,11,224,1,255,0,0,7,255,208,3,248,31,253,0,6,255,255,64,1,253,191,224,0,127,255,255,64,0,191,254,0,0,31,244,63,64,0,47,244,0,0,9,0,63,64,1,11,254,0,0,0,0,63,171,255,2,255,208,0,0,26,255,255,255,64,127,255,128,0,63,255,255,250,0,11,255,244,0,63,255,148,0,0,0,191,224,0,21,0,0,0,0,0,6,192,0,0,0,0,0,0,0,0,0, + // 0x88dd 裝 + 221,136,35,36,68,37,1,252,1,80,11,208,0,11,224,0,0,3,240,15,208,0,11,240,0,0,3,240,15,208,0,11,240,0,0,3,240,15,208,0,11,240,0,0,3,240,15,208,0,11,240,0,0,3,255,255,211,255,255,255,255,224,3,255,255,211,255,255,255,255,224,3,250,175,211,255,255,255,255,224,1,80,15,208,0,11,240,0,0,0,0,15,208,0,11,240,0,0,63,255,255,208,0,11,240,0,0,63,255,255,208,0,11,240,0,0,43,254,175,208,0,11,240,0,0,2,248,15,208,0,11,240,0,0,3,244,15,209,255,255,255,255,192,7,240,15,209,255,255,255,255,192,15,224,15,209,255,255,255,255,192,127,192,15,208,0,0,0,0,0,63,0,15,208,253,0,0,0,0,4,0,0,0,253,0,0,0,0,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,240,42,170,170,255,255,234,170,170,160,0,0,7,255,31,192,0,56,0,0,0,127,248,11,224,1,255,0,0,27,255,192,3,248,31,253,0,27,255,255,64,1,254,191,224,0,63,255,191,64,0,191,254,0,0,31,224,63,64,0,47,244,0,0,4,0,63,64,22,75,254,0,0,0,0,63,175,255,130,255,224,0,0,107,255,255,255,128,127,255,128,0,127,255,255,233,0,11,255,244,0,127,250,80,0,0,0,191,224,0,16,0,0,0,0,0,6,192,0,0,0,0,0,0,0,0,0, + // 0x8907 複 + 7,137,35,36,68,37,1,252,0,26,64,0,26,64,0,0,0,0,47,64,0,47,192,0,0,0,0,47,64,0,63,64,0,0,0,0,47,64,0,191,0,0,0,0,0,47,64,0,255,255,255,255,240,0,47,64,2,255,255,255,255,240,0,47,64,3,255,255,255,255,240,0,47,64,15,224,0,0,0,0,63,255,255,47,208,0,0,0,0,63,255,255,255,255,255,255,255,0,63,255,255,46,255,255,255,255,0,0,0,125,4,252,0,0,63,0,0,0,252,0,252,0,0,63,0,0,2,244,0,255,255,255,255,0,0,3,240,192,255,255,255,255,0,0,15,210,240,253,0,0,127,0,0,47,215,208,252,0,0,63,0,0,127,255,128,255,255,255,255,0,0,255,255,0,255,255,255,255,0,3,255,254,0,1,254,0,0,0,11,255,191,0,3,252,0,0,0,47,255,95,192,11,248,0,0,0,127,239,79,192,31,255,255,253,0,191,47,71,64,191,255,255,255,0,61,47,65,2,255,170,171,252,0,20,47,64,31,255,192,7,248,0,0,47,64,191,239,240,31,240,0,0,47,64,47,3,253,191,192,0,0,47,64,4,0,255,255,0,0,0,47,64,0,0,191,252,0,0,0,47,64,0,27,255,255,208,0,0,47,64,26,255,254,255,255,144,0,47,64,255,255,224,31,255,248,0,47,64,127,249,0,1,255,240,0,47,64,46,0,0,0,6,192,0,0,0,0,0,0,0,0,0, + // 0x89d2 角 + 210,137,32,36,32,37,1,252,0,0,7,228,0,0,0,0,0,0,15,244,0,0,0,0,0,0,31,255,255,253,0,0,0,0,63,255,255,255,128,0,0,0,255,255,255,255,64,0,0,1,254,0,0,255,0,0,0,7,252,0,2,253,0,0,0,15,244,0,3,248,0,0,0,63,224,0,15,240,0,0,1,255,255,255,255,255,255,253,7,255,255,255,255,255,255,253,47,255,255,255,255,255,255,253,15,239,208,0,63,0,0,253,3,79,208,0,63,0,0,253,0,15,208,0,63,0,0,253,0,15,208,0,63,0,0,253,0,15,255,255,255,255,255,253,0,15,255,255,255,255,255,253,0,15,255,255,255,255,255,253,0,15,208,0,63,0,0,253,0,15,208,0,63,0,0,253,0,15,192,0,63,0,0,253,0,15,192,0,63,0,0,253,0,31,192,0,127,0,0,253,0,47,255,255,255,255,255,253,0,63,255,255,255,255,255,253,0,63,255,255,255,255,255,253,0,127,0,0,0,0,0,253,0,254,0,0,0,0,0,253,2,253,0,0,0,0,0,253,7,248,0,0,0,0,0,253,31,240,0,0,0,20,2,253,127,208,0,0,0,127,255,252,63,128,0,0,0,63,255,248,13,0,0,0,0,47,255,144,0,0,0,0,0,0,0,0, + // 0x8a08 計 + 8,138,35,35,59,37,1,253,0,0,0,0,0,1,248,0,0,6,170,170,160,0,2,252,0,0,11,255,255,240,0,2,252,0,0,11,255,255,240,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,106,170,170,168,0,2,252,0,0,191,255,255,252,0,2,252,0,0,191,255,255,252,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,10,170,170,160,0,2,252,0,0,15,255,255,240,0,2,252,0,0,15,255,255,243,255,255,255,255,252,0,0,0,3,255,255,255,255,252,0,0,0,3,255,255,255,255,252,10,170,170,161,85,87,253,85,84,15,255,255,240,0,2,252,0,0,15,255,255,240,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,15,255,255,224,0,2,252,0,0,15,255,255,224,0,2,252,0,0,15,255,255,224,0,2,252,0,0,15,192,7,224,0,2,252,0,0,15,192,7,224,0,2,252,0,0,15,192,7,224,0,2,252,0,0,15,192,7,224,0,2,252,0,0,15,192,7,224,0,2,252,0,0,15,255,255,224,0,2,252,0,0,15,255,255,224,0,2,252,0,0,15,255,255,224,0,2,252,0,0,15,192,0,0,0,2,252,0,0,5,64,0,0,0,2,252,0,0, + // 0x8a0a 訊 + 10,138,36,35,59,37,1,252,6,170,170,129,85,85,85,80,0,11,255,255,199,255,255,255,252,0,11,255,255,199,255,255,255,252,0,0,0,0,7,255,255,255,252,0,0,0,0,0,3,240,2,252,0,106,170,170,160,3,240,2,252,0,191,255,255,244,3,240,2,248,0,191,255,255,244,3,240,2,248,0,0,0,0,0,3,240,2,248,0,0,0,0,0,3,240,2,248,0,10,170,170,128,3,240,2,248,0,15,255,255,192,3,240,2,248,0,15,255,255,192,3,240,2,248,0,0,0,0,0,7,244,2,248,0,0,0,0,11,255,255,246,248,0,10,170,170,139,255,255,246,248,0,15,255,255,203,255,255,246,248,0,15,255,255,192,7,240,2,252,0,0,0,0,0,11,240,2,252,0,0,0,0,0,11,224,2,252,0,0,0,0,0,15,224,1,252,0,15,255,255,192,15,208,1,252,0,15,255,255,192,31,192,1,252,0,15,255,255,192,47,192,1,252,0,15,192,15,192,63,128,0,252,0,15,192,15,192,127,64,0,253,32,15,192,15,192,255,0,0,253,40,15,192,15,192,254,0,0,254,61,15,192,15,195,252,0,0,191,61,15,255,255,203,248,0,0,127,124,15,255,255,223,240,0,0,63,252,15,255,255,255,208,0,0,47,248,15,192,0,15,64,0,0,15,240,5,64,0,2,0,0,0,2,208,0,0,0,0,0,0,0,0,0, + // 0x8a18 記 + 24,138,35,34,50,37,1,253,6,170,170,160,0,0,0,0,0,11,255,255,240,63,255,255,255,128,11,255,255,240,63,255,255,255,128,0,0,0,0,63,255,255,255,128,0,0,0,0,21,85,85,127,128,106,170,170,168,0,0,0,63,128,191,255,255,252,0,0,0,63,128,191,255,255,252,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,10,170,170,160,0,0,0,63,128,15,255,255,240,0,0,0,63,128,15,255,255,240,0,0,0,63,128,0,0,0,0,63,255,255,255,128,0,0,0,0,63,255,255,255,128,10,170,170,160,63,255,255,255,128,15,255,255,240,63,149,85,127,128,15,255,255,240,63,128,0,63,128,0,0,0,0,63,128,0,5,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,15,255,255,224,63,128,0,0,0,15,255,255,224,63,128,0,0,0,15,255,255,224,63,128,0,0,0,15,192,7,224,63,128,0,1,64,15,192,7,224,63,128,0,2,244,15,192,7,224,63,128,0,3,248,15,192,7,224,63,128,0,3,244,15,192,7,224,63,128,0,3,244,15,255,255,224,63,192,0,11,240,15,255,255,224,47,255,255,255,240,15,255,255,224,15,255,255,255,208,15,192,0,0,7,255,255,255,64,5,64,0,0,0,5,85,64,0, + // 0x8a2d 設 + 45,138,35,34,50,37,1,253,6,170,170,128,63,255,255,192,0,11,255,255,192,63,255,255,192,0,11,255,255,192,63,255,255,192,0,0,0,0,0,63,64,31,192,0,0,0,0,0,63,64,15,192,0,106,170,170,164,63,64,15,192,0,191,255,255,248,63,64,15,192,128,191,255,255,248,63,0,15,192,248,0,0,0,0,127,0,15,192,248,0,0,0,0,255,0,15,193,244,10,170,170,130,253,0,15,255,244,15,255,255,219,252,0,15,255,240,15,255,255,255,244,0,3,255,192,0,0,0,15,224,0,0,0,0,0,0,0,3,128,0,0,0,0,10,170,170,131,255,255,255,254,0,15,255,255,211,255,255,255,255,64,15,255,255,211,255,255,255,255,0,0,0,0,0,7,0,0,255,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,128,2,252,0,15,255,255,208,31,208,3,248,0,15,255,255,208,15,240,15,240,0,15,255,255,208,7,248,47,224,0,15,192,11,208,2,254,127,192,0,15,192,11,208,0,255,255,0,0,15,192,11,208,0,63,253,0,0,15,192,11,208,0,127,253,0,0,15,192,11,208,2,255,255,128,0,15,255,255,208,111,255,191,249,0,15,255,255,235,255,244,31,255,224,15,255,255,223,255,128,2,255,240,15,192,0,11,248,0,0,47,208,5,64,0,2,64,0,0,1,128, + // 0x8a66 試 + 102,138,35,36,68,37,1,252,0,0,0,0,0,0,63,133,0,10,170,170,64,0,0,63,191,0,11,255,255,128,0,0,47,175,192,11,255,255,128,0,0,47,139,224,0,0,0,0,0,0,47,131,244,0,0,0,0,0,0,47,129,224,106,170,170,144,0,0,47,128,0,191,255,255,234,170,170,191,234,160,191,255,255,239,255,255,255,255,240,0,0,0,15,255,255,255,255,240,0,0,0,15,255,255,255,255,240,10,170,170,64,0,0,47,128,0,15,255,255,128,0,0,47,128,0,15,255,255,128,0,0,47,128,0,0,0,0,0,0,0,47,128,0,0,0,0,11,255,255,95,128,0,10,170,170,139,255,255,95,128,0,15,255,255,139,255,255,95,192,0,15,255,255,128,15,192,31,192,0,0,0,0,0,15,192,15,192,0,0,0,0,0,15,192,15,192,0,0,0,0,0,15,192,15,192,0,15,255,255,128,15,192,15,192,0,15,255,255,128,15,192,15,208,0,15,255,255,128,15,192,15,208,0,15,192,15,128,15,192,11,224,0,15,192,15,128,15,192,7,224,64,15,192,15,128,15,218,215,240,116,15,192,15,128,111,255,211,240,188,15,192,15,159,255,255,211,244,252,15,255,255,143,255,249,2,253,248,15,255,255,143,249,0,0,255,244,15,255,255,132,0,0,0,255,240,15,192,0,0,0,0,0,63,224,5,64,0,0,0,0,0,11,128,0,0,0,0,0,0,0,0,0, + // 0x8a8d 認 + 141,138,35,34,50,37,1,253,10,170,170,64,0,0,0,0,0,11,255,255,130,255,255,255,255,208,11,255,255,130,255,255,255,255,192,0,0,0,2,255,255,255,255,192,0,0,0,0,0,63,64,15,192,106,170,170,160,228,63,0,15,192,191,255,255,225,255,254,0,15,192,191,255,255,225,255,253,0,15,192,0,0,0,0,31,255,128,31,192,0,0,0,0,3,255,240,31,192,10,170,170,64,3,255,252,31,192,15,255,255,128,11,247,248,47,128,15,255,255,128,31,208,176,63,128,0,0,0,0,127,192,16,63,64,0,0,0,2,255,0,191,255,0,10,170,170,79,252,0,63,254,0,15,255,255,135,240,40,63,248,0,15,255,255,130,64,191,64,0,0,0,0,0,0,0,191,224,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,2,255,0,0,15,255,255,128,3,240,126,0,0,15,255,255,129,67,240,24,125,0,15,255,255,130,243,240,0,191,0,15,192,15,131,243,240,0,63,64,15,192,15,131,243,240,0,47,192,15,192,15,135,227,240,0,15,224,15,192,15,139,211,240,3,71,240,15,192,15,143,195,240,3,243,244,15,255,255,175,131,240,3,242,248,15,255,255,175,3,244,7,241,252,15,255,255,133,3,255,255,224,224,15,192,0,0,1,255,255,192,0,5,64,0,0,0,191,255,64,0, + // 0x8aa4 誤 + 164,138,35,34,50,37,1,253,6,170,170,0,0,127,255,255,128,11,255,255,0,0,127,255,255,192,11,255,255,0,0,127,255,255,192,0,0,0,3,240,126,0,31,192,0,0,0,3,240,126,0,31,192,106,170,170,131,240,126,0,31,192,191,255,255,195,240,126,0,31,192,191,255,255,195,240,126,0,31,192,0,0,0,3,240,127,255,255,192,0,0,0,3,240,127,255,255,192,10,170,170,3,240,127,255,255,192,15,255,255,3,240,0,0,0,0,15,255,255,3,240,0,0,0,0,0,0,0,3,240,0,0,0,0,0,0,0,3,255,255,255,254,0,10,170,170,3,255,255,255,254,0,15,255,255,3,255,255,255,254,0,15,255,255,3,240,0,0,190,0,0,0,0,3,240,0,0,190,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,190,0,15,255,255,31,255,255,255,255,248,15,255,255,31,255,255,255,255,248,15,255,255,31,255,255,255,255,248,15,192,47,0,0,0,0,0,0,15,192,47,0,3,128,1,192,0,15,192,47,0,15,240,15,240,0,15,192,47,0,47,224,7,252,0,15,192,47,0,191,192,1,255,0,15,255,255,2,255,0,0,191,192,15,255,255,15,252,0,0,47,224,15,234,170,63,240,0,0,15,244,15,192,0,31,192,0,0,3,244,5,64,0,6,0,0,0,1,64, + // 0x8abf 調 + 191,138,34,35,59,37,1,252,10,170,169,0,0,0,0,0,0,15,255,253,15,255,255,255,255,208,15,255,253,15,255,255,255,255,208,0,0,0,15,255,255,255,255,208,0,0,0,15,192,11,192,15,208,106,170,170,79,192,15,192,15,208,191,255,255,79,192,15,192,15,208,191,255,255,79,195,255,255,79,208,0,0,0,15,195,255,255,79,208,0,0,0,15,194,175,234,79,208,10,170,169,15,192,15,192,15,208,15,255,253,15,192,15,192,15,208,15,255,253,15,192,15,192,15,208,0,0,0,15,199,255,255,207,208,0,0,0,15,199,255,255,207,208,10,170,169,15,198,170,170,143,208,15,255,253,15,192,0,0,15,208,15,255,253,15,192,0,0,15,208,0,0,0,15,195,255,255,79,208,0,0,0,15,195,255,255,79,208,0,0,0,15,195,250,175,79,208,15,255,253,15,195,224,15,79,208,15,255,253,15,195,224,15,79,208,15,255,253,31,195,224,15,79,208,15,128,125,47,131,224,15,79,208,15,128,125,47,67,250,175,79,208,15,128,125,63,67,255,255,79,208,15,128,125,63,3,255,255,79,208,15,128,125,127,3,224,0,15,208,15,255,253,254,1,64,0,15,208,15,255,254,253,0,0,5,95,208,15,234,171,252,0,0,31,255,192,15,128,1,248,0,0,15,255,192,5,64,0,48,0,0,15,254,0,0,0,0,0,0,0,0,0,0, + // 0x8acb 請 + 203,138,35,35,59,37,1,253,0,0,0,0,0,7,240,0,0,6,170,170,128,0,7,240,0,0,11,255,255,193,170,171,250,170,144,11,255,255,195,255,255,255,255,224,0,0,0,3,255,255,255,255,224,0,0,0,0,0,7,240,0,0,106,170,170,160,0,7,240,0,0,191,255,255,244,255,255,255,255,192,191,255,255,244,255,255,255,255,192,0,0,0,0,85,91,245,85,64,0,0,0,0,0,7,240,0,0,10,170,170,134,170,171,250,170,160,15,255,255,207,255,255,255,255,244,15,255,255,207,255,255,255,255,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,170,170,128,63,255,255,255,0,15,255,255,192,63,255,255,255,0,15,255,255,192,63,170,170,191,0,0,0,0,0,63,0,0,63,0,0,0,0,0,63,85,85,127,0,0,0,0,0,63,255,255,255,0,15,255,255,192,63,255,255,255,0,15,255,255,192,63,0,0,63,0,15,255,255,192,63,0,0,63,0,15,192,15,192,63,85,85,127,0,15,192,15,192,63,255,255,255,0,15,192,15,192,63,255,255,255,0,15,192,15,192,63,0,0,63,0,15,192,15,192,63,0,0,63,0,15,255,255,192,63,0,0,63,0,15,255,255,192,63,0,0,63,0,15,255,255,192,63,0,63,255,0,15,192,0,0,63,0,31,254,0,5,64,0,0,63,0,10,164,0, + // 0x8b70 議 + 112,139,35,35,59,37,1,253,0,0,0,0,44,0,1,224,0,10,170,169,0,127,0,3,248,0,15,255,253,0,47,64,7,240,0,15,255,253,5,111,213,95,229,64,0,0,0,31,255,255,255,255,208,0,0,0,31,255,255,255,255,208,106,170,170,64,0,31,192,0,0,191,255,255,64,0,31,192,0,0,191,255,255,67,255,255,255,255,64,0,0,0,3,255,255,255,255,64,0,0,0,0,0,47,192,0,0,10,170,169,0,0,31,192,0,0,15,255,253,106,170,175,234,170,160,15,255,253,191,255,255,255,255,240,0,0,0,191,255,255,255,255,240,0,0,0,0,0,16,0,0,0,10,170,169,0,91,248,252,40,0,15,255,253,63,255,253,252,191,0,15,255,253,47,255,144,252,47,192,0,0,0,0,47,64,188,11,224,0,0,0,0,47,64,188,2,128,0,0,0,106,191,170,254,170,160,15,255,253,191,255,255,255,255,240,15,255,253,191,255,255,255,255,240,15,255,253,0,47,64,62,0,0,15,128,125,0,47,65,63,31,0,15,128,125,1,127,255,63,63,64,15,128,125,255,255,255,47,254,0,15,128,125,191,255,228,31,248,0,15,128,125,105,127,64,31,224,80,15,255,253,0,47,64,127,208,184,15,255,253,0,47,71,255,240,244,15,234,169,5,127,47,243,255,240,15,128,0,15,255,15,64,255,240,5,64,0,15,248,0,0,47,128, + // 0x8b80 讀 + 128,139,35,35,59,37,1,253,0,0,0,0,0,15,192,0,0,10,170,169,0,0,15,192,0,0,15,255,253,31,255,255,255,255,240,15,255,253,31,255,255,255,255,240,0,0,0,5,85,95,213,85,64,0,0,0,0,0,31,192,0,0,106,170,170,67,255,255,255,255,192,191,255,255,67,255,255,255,255,192,191,255,255,64,0,0,0,0,0,0,0,0,31,255,255,255,255,224,0,0,0,31,255,255,255,255,224,10,170,169,31,64,240,124,7,224,15,255,253,31,71,240,125,91,224,15,255,253,31,191,128,63,255,224,0,0,0,31,84,0,0,7,224,0,0,0,31,255,255,255,255,224,10,170,169,31,255,255,255,255,224,15,255,253,0,0,0,0,0,0,15,255,253,3,255,255,255,255,128,0,0,0,3,255,255,255,255,128,0,0,0,3,240,0,0,47,128,0,0,0,3,245,85,85,127,128,15,255,253,3,255,255,255,255,128,15,255,253,3,240,0,0,47,128,15,255,253,3,245,85,85,127,128,15,128,125,3,255,255,255,255,128,15,128,125,3,240,0,0,47,128,15,128,125,3,255,255,255,255,128,15,128,125,3,255,255,255,255,128,15,128,125,0,11,64,11,128,0,15,255,253,0,127,224,47,248,0,15,255,253,11,255,128,7,255,64,15,234,169,255,252,0,0,191,244,15,128,0,127,208,0,0,15,240,5,64,0,24,0,0,0,1,64, + // 0x8b8a 變 + 138,139,35,36,68,37,1,252,0,41,0,0,0,0,10,64,0,0,63,0,47,255,208,15,128,0,0,188,0,47,255,208,63,0,0,5,244,160,0,0,1,188,46,0,31,225,252,255,255,255,244,127,0,15,211,240,255,255,255,244,252,0,7,255,192,0,0,1,255,240,0,1,255,64,0,0,0,127,197,0,0,189,120,63,255,208,47,47,0,0,244,61,47,255,208,125,15,192,23,255,255,0,0,5,255,255,224,63,255,255,191,255,239,255,255,240,63,255,71,111,255,223,255,208,240,0,31,0,0,0,0,11,192,0,6,95,108,47,255,210,155,203,64,15,223,61,63,255,227,235,207,192,15,95,47,61,3,231,203,195,208,47,31,15,125,3,235,203,194,240,63,31,9,63,255,239,75,193,244,61,31,3,255,255,235,11,192,224,4,31,15,240,0,0,11,192,0,0,26,47,208,0,0,6,128,0,0,0,191,255,255,255,255,255,192,0,3,255,255,255,255,255,255,192,0,31,255,255,255,255,255,255,192,1,255,254,0,0,11,248,0,0,31,255,191,208,0,63,224,0,0,15,244,31,253,2,255,128,0,0,3,128,2,255,239,253,0,0,0,0,0,0,127,255,240,0,0,0,0,0,6,255,255,254,144,0,0,1,107,255,255,239,255,255,169,64,127,255,255,248,0,191,255,255,244,47,255,249,0,0,1,191,255,224,15,164,0,0,0,0,0,91,192,0,0,0,0,0,0,0,0,0, + // 0x8cc7 資 + 199,140,33,36,68,37,2,252,0,0,0,1,248,0,0,0,0,11,224,0,3,244,0,0,0,0,31,255,128,11,245,85,85,89,0,6,255,244,31,255,255,255,255,64,0,31,240,127,255,255,255,254,0,0,1,225,254,2,252,0,252,0,0,0,3,252,3,254,3,248,0,0,0,0,240,11,255,7,240,0,0,6,240,0,47,255,192,128,0,1,191,244,0,191,143,244,0,0,191,255,244,27,255,3,255,128,0,255,254,67,255,248,0,255,254,128,127,144,2,255,128,0,47,255,192,36,0,1,249,0,0,6,255,0,0,127,255,255,255,255,255,197,0,0,127,255,255,255,255,255,192,0,0,127,0,0,0,0,47,192,0,0,127,0,0,0,0,47,192,0,0,127,255,255,255,255,255,192,0,0,127,255,255,255,255,255,192,0,0,127,0,0,0,0,47,192,0,0,127,0,0,0,0,47,192,0,0,127,255,255,255,255,255,192,0,0,127,255,255,255,255,255,192,0,0,127,0,0,0,0,47,192,0,0,127,0,0,0,0,47,192,0,0,127,0,0,0,0,47,192,0,0,127,255,255,255,255,255,192,0,0,127,255,255,255,255,255,192,0,0,0,30,0,0,41,0,0,0,0,2,255,208,1,255,224,0,0,1,191,255,0,0,127,255,64,0,127,255,224,0,0,2,255,248,0,63,253,0,0,0,0,31,255,64,15,64,0,0,0,0,1,244,0,0,0,0,0,0,0,0,0,0, + // 0x8ddd 距 + 221,141,35,33,41,37,1,253,11,255,255,248,63,255,255,255,240,11,255,255,248,63,255,255,255,240,11,255,255,248,63,255,255,255,240,11,208,1,248,63,64,0,0,0,11,208,1,248,63,64,0,0,0,11,208,1,248,63,64,0,0,0,11,208,1,248,63,64,0,0,0,11,208,1,248,63,64,0,0,0,11,255,255,248,63,128,0,0,0,11,255,255,248,63,255,255,255,128,11,255,255,248,63,255,255,255,128,0,2,244,0,63,255,255,255,128,0,2,244,0,63,64,0,63,128,0,2,244,0,63,64,0,63,128,0,2,244,0,63,64,0,63,128,15,194,244,0,63,64,0,63,128,15,194,244,0,63,64,0,63,128,15,194,255,253,63,64,0,63,128,15,194,255,253,63,128,0,63,128,15,194,255,253,63,255,255,255,128,15,194,244,0,63,255,255,255,128,15,194,244,0,63,255,255,255,128,15,194,244,0,63,64,0,0,0,15,194,244,0,63,64,0,0,0,15,194,244,5,63,64,0,0,0,15,194,250,254,63,64,0,0,0,15,215,255,255,63,64,0,0,0,31,255,255,254,63,128,0,0,0,191,255,254,64,63,255,255,255,248,127,254,64,0,63,255,255,255,248,121,64,0,0,63,255,255,255,248,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0, + // 0x8eca 車 + 202,142,33,36,68,37,2,252,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,63,255,255,255,255,255,255,255,0,0,0,0,7,244,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,252,0,7,240,0,15,208,0,0,252,0,7,240,0,15,208,0,0,252,0,7,240,0,15,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,254,170,175,250,170,175,208,0,0,252,0,7,240,0,15,208,0,0,252,0,7,240,0,15,208,0,0,252,0,7,240,0,15,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,192,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x8edf 軟 + 223,142,35,36,68,37,1,252,0,1,244,0,0,249,0,0,0,0,2,248,0,0,253,0,0,0,0,2,248,0,0,252,0,0,0,0,2,248,0,1,252,0,0,0,63,255,255,255,194,252,0,0,0,63,255,255,255,194,248,0,0,0,63,255,255,255,195,244,0,0,0,0,2,248,0,3,255,255,255,224,0,2,248,0,7,255,255,255,240,5,87,253,85,15,255,255,255,240,31,255,255,255,79,210,248,11,224,31,255,255,255,95,194,248,15,208,31,65,240,31,127,130,248,15,192,31,65,240,31,191,66,248,15,192,31,65,240,31,255,2,248,31,128,31,255,255,255,253,2,248,47,64,31,255,255,255,188,2,248,63,0,31,150,245,111,64,2,252,6,0,31,65,240,31,64,3,252,0,0,31,65,240,31,64,3,252,0,0,31,170,250,191,64,3,252,0,0,31,255,255,255,64,7,253,0,0,31,255,255,255,64,15,255,0,0,0,2,248,0,0,15,175,0,0,0,2,248,0,0,47,95,128,0,0,2,248,0,0,63,15,192,0,127,255,255,255,208,190,15,224,0,127,255,255,255,209,252,7,240,0,127,255,255,255,211,252,3,252,0,0,2,248,0,15,240,1,254,0,0,2,248,0,63,208,0,191,128,0,2,248,1,255,128,0,63,240,0,2,248,7,254,0,0,15,248,0,2,248,3,248,0,0,3,240,0,2,248,0,208,0,0,0,144,0,0,0,0,0,0,0,0,0, + // 0x8ef8 軸 + 248,142,34,36,68,37,1,252,0,3,240,0,0,1,248,0,0,0,3,240,0,0,1,248,0,0,0,3,240,0,0,1,248,0,0,0,3,240,0,0,1,248,0,0,63,255,255,255,0,1,248,0,0,63,255,255,255,0,1,248,0,0,63,255,255,255,0,1,248,0,0,0,3,240,0,0,1,248,0,0,0,3,240,0,63,255,255,255,208,5,87,249,84,63,255,255,255,208,15,255,255,253,63,255,255,255,208,15,255,255,253,63,65,248,11,208,15,66,224,61,63,1,248,11,208,15,66,224,61,63,1,248,11,208,15,66,224,61,63,1,248,11,208,15,255,255,253,63,1,248,11,208,15,255,255,253,63,1,248,11,208,15,151,245,189,63,1,248,11,208,15,66,224,61,63,1,248,11,208,15,66,224,61,63,255,255,255,208,15,171,250,189,63,255,255,255,208,15,255,255,253,63,255,255,255,208,15,255,255,253,63,1,248,11,208,0,3,240,0,63,1,248,11,208,0,3,240,0,63,1,248,11,208,0,3,240,0,63,1,248,11,208,191,255,255,255,191,1,248,11,208,191,255,255,255,191,1,248,11,208,191,255,255,255,191,1,248,11,208,0,3,240,0,63,1,248,11,208,0,3,240,0,63,255,255,255,208,0,3,240,0,63,255,255,255,208,0,3,240,0,63,255,255,255,208,0,3,240,0,63,0,0,11,208,0,3,240,0,63,0,0,7,208,0,0,0,0,0,0,0,0,0, + // 0x8f09 載 + 9,143,34,36,68,37,2,252,0,0,253,0,1,252,1,0,0,0,0,253,0,1,252,15,64,0,0,0,253,0,1,252,63,208,0,31,255,255,255,225,252,15,244,0,31,255,255,255,225,252,3,253,0,10,170,255,170,145,252,0,255,0,0,0,253,0,1,252,0,60,0,0,0,253,0,1,252,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,252,0,0,253,0,0,0,0,0,252,0,0,253,0,0,0,21,85,254,85,80,253,0,164,0,63,255,255,255,244,253,0,254,0,63,255,255,255,244,254,1,252,0,0,0,252,0,0,190,2,252,0,0,0,252,0,0,191,3,244,0,15,255,255,255,224,127,7,240,0,15,255,255,255,224,127,15,224,0,15,64,188,3,224,63,31,192,0,15,255,255,255,224,63,191,128,0,15,255,255,255,224,63,255,0,0,15,64,188,3,224,47,254,0,0,15,64,188,3,224,31,252,0,0,15,255,255,255,224,15,244,0,0,15,255,255,255,224,31,240,7,64,0,0,252,0,0,63,240,7,224,0,0,252,0,0,255,244,7,208,127,255,255,255,247,255,252,11,208,127,255,255,255,255,250,253,15,192,106,170,254,170,255,224,255,159,192,0,0,252,2,255,128,127,255,128,0,0,252,0,253,0,31,255,0,0,0,252,0,48,0,2,248,0,0,0,0,0,0,0,0,0,0, + // 0x8f2f 輯 + 47,143,35,36,68,37,1,252,0,3,240,0,0,0,0,0,0,0,3,240,0,11,255,255,255,128,0,3,240,0,11,255,255,255,128,0,3,240,0,11,250,170,191,128,63,255,255,255,11,224,0,63,128,63,255,255,255,11,224,0,63,128,63,255,255,255,11,224,0,63,128,0,3,240,0,11,255,255,255,128,0,3,240,0,11,255,255,255,128,5,87,249,84,6,170,170,170,64,15,255,255,253,0,0,0,0,0,15,255,255,253,170,170,170,170,164,15,66,224,61,191,255,255,255,248,15,66,224,61,191,255,255,255,248,15,66,224,61,7,224,0,47,64,15,255,255,253,7,224,0,47,64,15,255,255,253,7,224,0,47,64,15,151,245,189,7,255,255,255,64,15,66,224,61,7,255,255,255,64,15,66,224,61,7,245,85,127,64,15,171,250,189,7,224,0,47,64,15,255,255,253,7,224,0,47,64,15,255,255,253,7,250,170,191,64,0,3,240,0,7,255,255,255,64,0,3,240,0,7,255,255,255,64,0,3,240,0,7,224,0,47,64,191,255,255,255,135,224,0,47,64,191,255,255,255,135,224,0,47,248,191,255,255,255,139,246,175,255,248,0,3,240,2,255,255,255,255,248,0,3,240,1,255,255,255,255,128,0,3,240,0,254,165,64,47,64,0,3,240,0,0,0,0,47,64,0,3,240,0,0,0,0,47,64,0,3,240,0,0,0,0,47,64,0,0,0,0,0,0,0,0,0, + // 0x8f38 輸 + 56,143,35,35,59,37,1,253,0,11,208,0,0,7,240,0,0,0,11,208,0,0,15,252,0,0,0,11,208,0,0,31,254,0,0,0,11,208,0,0,63,191,64,0,63,255,255,252,0,255,47,208,0,63,255,255,252,2,252,15,244,0,63,255,255,252,11,244,3,253,0,0,11,208,0,47,208,0,255,128,0,11,208,0,191,128,0,63,240,26,175,234,167,255,255,255,239,252,47,255,255,251,254,255,255,227,244,47,255,255,247,226,255,255,224,176,47,7,193,245,128,0,0,0,0,47,7,193,244,0,0,0,0,0,47,7,193,244,0,0,0,2,144,47,255,255,244,255,255,0,3,224,47,255,255,244,255,255,15,67,224,47,91,214,244,250,175,15,67,224,47,7,193,244,244,15,15,67,224,47,7,193,244,244,15,15,67,224,47,91,214,244,255,255,15,67,224,47,255,255,244,255,255,15,67,224,47,255,255,244,249,111,15,67,224,0,11,208,0,244,15,15,67,224,0,11,208,0,244,15,15,67,224,0,11,208,0,255,255,15,67,224,191,255,255,252,255,255,15,67,224,191,255,255,252,249,111,15,67,224,191,255,255,252,244,15,15,67,224,0,11,208,0,244,15,5,3,224,0,11,208,0,244,15,0,3,224,0,11,208,0,244,15,0,3,224,0,11,208,0,244,111,1,171,208,0,11,208,0,244,255,2,255,192,0,11,208,0,244,189,1,254,64, + // 0x8f49 轉 + 73,143,35,36,68,37,1,252,0,3,224,0,0,2,244,0,0,0,7,240,0,0,2,244,0,0,0,7,240,0,0,2,244,0,0,0,7,240,0,255,255,255,255,240,63,255,255,253,255,255,255,255,240,63,255,255,253,170,171,250,170,160,63,255,255,253,0,2,244,0,0,0,7,240,0,63,255,255,255,192,0,7,240,0,63,255,255,255,192,5,91,245,84,62,2,244,11,192,31,255,255,252,62,2,244,11,192,31,255,255,252,63,255,255,255,192,31,3,208,188,63,255,255,255,192,31,3,208,188,62,2,244,11,192,31,3,208,188,62,2,244,11,192,31,255,255,252,63,255,255,255,192,31,255,255,252,63,255,255,255,192,31,151,229,252,0,2,244,126,0,31,3,208,188,0,2,244,63,128,31,3,208,189,255,255,255,255,208,31,171,234,253,255,255,255,255,240,31,255,255,252,254,169,85,86,244,31,255,255,252,0,0,3,240,128,0,7,240,0,0,0,3,240,0,0,7,240,1,255,255,255,255,244,0,7,240,1,255,255,255,255,244,191,255,255,255,171,170,171,250,164,191,255,255,254,11,192,3,240,0,191,255,255,254,15,240,3,240,0,0,7,240,0,3,248,3,240,0,0,7,240,0,1,252,3,240,0,0,7,240,0,0,180,3,240,0,0,7,240,0,0,7,175,240,0,0,7,240,0,0,3,255,240,0,0,7,240,0,0,3,255,128,0,0,0,0,0,0,0,0,0,0, + // 0x8fd1 近 + 209,143,35,35,59,37,1,253,0,0,0,0,0,0,0,96,0,3,64,0,0,0,0,111,252,0,15,224,0,4,1,175,255,255,0,31,252,0,15,255,255,255,244,0,7,255,0,15,255,255,233,0,0,0,255,192,15,255,148,0,0,0,0,63,224,15,224,0,0,0,0,0,15,208,15,224,0,0,0,0,0,3,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,255,255,255,255,240,0,0,0,15,255,255,255,255,240,0,0,0,15,255,255,255,255,240,0,0,0,15,224,0,254,0,0,63,255,192,15,208,0,254,0,0,63,255,192,15,192,0,254,0,0,63,255,192,31,192,0,254,0,0,0,31,192,47,192,0,254,0,0,0,31,192,63,128,0,254,0,0,0,31,192,63,64,0,254,0,0,0,31,192,191,0,0,254,0,0,0,31,192,254,0,0,254,0,0,0,31,194,253,0,0,254,0,0,0,31,195,252,0,0,254,0,0,0,31,207,244,0,0,254,0,0,0,31,199,224,0,0,254,0,0,0,63,225,192,0,0,254,0,0,1,255,248,0,0,0,254,0,0,11,255,255,64,0,0,0,0,0,127,248,191,254,85,85,85,85,100,127,208,47,255,255,255,255,255,244,63,64,2,255,255,255,255,255,240,28,0,0,27,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x8fd4 返 + 212,143,35,34,50,37,1,253,3,64,0,0,0,0,0,0,0,31,208,0,63,255,255,255,255,192,31,248,0,63,255,255,255,255,192,7,254,0,63,255,255,255,255,192,1,255,128,63,64,0,0,0,0,0,127,208,63,64,0,0,0,0,0,31,192,63,64,0,0,0,0,0,11,0,63,64,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,255,255,255,254,0,0,0,0,63,255,255,255,255,0,0,0,0,63,255,255,255,254,0,0,0,0,63,127,64,1,252,0,0,0,0,63,111,192,3,252,0,63,255,128,63,79,208,7,244,0,63,255,128,63,11,240,15,240,0,63,255,128,127,7,244,31,208,0,0,47,128,127,2,252,63,192,0,0,47,128,190,0,255,255,64,0,0,47,128,253,0,127,254,0,0,0,47,129,252,0,47,252,0,0,0,47,130,252,0,63,252,0,0,0,47,131,248,1,255,255,64,0,0,47,135,240,11,255,255,240,0,0,47,143,224,191,248,47,255,64,0,47,159,195,255,208,7,255,240,0,127,211,129,254,0,0,191,224,2,255,244,0,224,0,0,11,192,11,255,255,64,0,0,0,0,0,127,244,255,250,84,0,5,85,84,127,208,63,255,255,255,255,255,240,63,0,7,255,255,255,255,255,240,28,0,0,27,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x9000 退 + 0,144,35,33,41,37,1,253,7,208,0,31,255,255,255,252,0,31,244,0,31,255,255,255,252,0,11,254,0,31,255,255,255,252,0,1,255,192,31,192,0,1,252,0,0,63,240,31,192,0,1,252,0,0,15,224,31,234,170,171,252,0,0,3,64,31,255,255,255,252,0,0,0,0,31,255,255,255,252,0,0,0,0,31,192,0,1,252,0,0,0,0,31,192,0,1,252,0,0,0,0,31,192,0,1,252,0,0,0,0,31,255,255,255,252,0,0,0,0,31,255,255,255,252,0,63,255,192,31,255,255,255,252,0,63,255,192,31,192,63,64,15,64,63,255,192,31,192,47,192,127,208,0,31,192,31,192,15,210,255,64,0,31,192,31,192,11,255,252,0,0,31,192,31,192,7,255,208,0,0,31,192,31,192,2,255,0,0,0,31,192,31,192,0,255,64,0,0,31,192,31,193,174,127,208,0,0,31,192,31,255,255,31,248,0,0,31,193,255,255,255,7,255,144,0,31,194,255,255,144,1,255,240,0,63,225,255,144,0,0,47,192,1,255,248,144,0,0,0,3,64,11,255,255,64,0,0,0,0,0,127,248,191,254,85,85,85,85,100,127,208,47,255,255,255,255,255,244,63,64,2,255,255,255,255,255,240,28,0,0,27,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x901f 速 + 31,144,35,35,59,37,1,253,0,0,0,0,0,190,0,0,0,2,64,0,0,0,190,0,0,0,15,208,0,0,0,190,0,0,0,47,248,0,0,0,190,0,0,0,7,254,3,255,255,255,255,255,240,1,255,131,255,255,255,255,255,240,0,63,227,255,255,255,255,255,224,0,15,208,0,0,190,0,0,0,0,3,0,0,0,190,0,0,0,0,0,0,106,170,255,170,170,0,0,0,0,191,255,255,255,255,64,0,0,0,191,255,255,255,255,64,0,0,0,189,0,190,0,63,64,0,0,0,189,0,190,0,63,64,0,0,0,189,0,190,0,63,64,63,255,192,189,0,190,0,63,64,63,255,192,191,170,255,170,191,64,63,255,192,191,255,255,255,255,64,0,31,192,191,255,255,255,255,64,0,31,192,0,11,255,224,0,0,0,31,192,0,47,255,248,0,0,0,31,192,0,127,255,254,0,0,0,31,192,2,253,190,127,128,0,0,31,192,11,248,190,31,244,0,0,31,192,127,224,190,7,254,0,0,31,199,255,128,190,1,255,224,0,31,199,253,0,190,0,63,208,0,63,226,240,0,190,0,11,128,1,255,248,64,0,190,0,1,0,11,255,255,64,0,85,0,0,0,127,248,191,254,85,85,85,85,100,127,208,47,255,255,255,255,255,244,63,64,2,255,255,255,255,255,240,28,0,0,27,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x9023 連 + 35,144,34,35,59,37,1,253,0,0,0,0,0,253,0,0,0,3,0,0,0,0,253,0,0,0,31,208,0,0,0,253,0,0,0,31,244,11,255,255,255,255,255,208,7,253,11,255,255,255,255,255,208,1,255,75,255,255,255,255,255,208,0,127,192,0,0,253,0,0,0,0,31,128,0,0,253,0,0,0,0,9,0,255,255,255,255,254,0,0,0,0,255,255,255,255,254,0,0,0,0,254,85,254,85,254,0,0,0,0,252,0,253,0,190,0,0,0,0,252,0,253,0,190,0,0,0,0,255,255,255,255,254,0,0,0,0,255,255,255,255,254,0,63,255,64,253,85,254,85,254,0,63,255,64,252,0,253,0,190,0,63,255,64,252,0,253,0,190,0,0,63,64,255,255,255,255,254,0,0,63,64,255,255,255,255,254,0,0,63,64,85,85,254,85,85,0,0,63,64,0,0,253,0,0,0,0,63,64,0,0,253,0,0,0,0,63,79,255,255,255,255,255,240,0,63,79,255,255,255,255,255,240,0,63,79,255,255,255,255,255,224,0,63,128,0,0,253,0,0,0,0,127,192,0,0,253,0,0,0,1,255,240,0,0,253,0,0,0,11,255,254,0,0,168,0,0,0,63,244,255,249,64,0,0,5,80,127,192,63,255,255,255,255,255,240,63,0,7,255,255,255,255,255,240,28,0,0,107,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x9032 進 + 50,144,34,35,59,37,1,253,0,0,0,0,144,0,64,0,0,2,0,0,2,253,0,254,0,0,15,192,0,3,252,1,253,0,0,47,244,0,7,244,2,252,0,0,11,253,0,15,240,3,248,0,0,2,255,0,47,224,7,240,0,0,0,191,192,63,255,255,255,255,192,0,47,192,255,255,255,255,255,192,0,15,3,255,255,255,255,255,192,0,0,11,255,64,15,208,0,0,0,0,47,255,64,15,208,0,0,0,0,191,255,64,15,208,0,0,0,0,255,127,255,255,255,255,0,0,0,61,63,255,255,255,255,0,0,0,4,63,255,255,255,255,0,63,255,64,63,64,15,208,0,0,63,255,64,63,64,15,208,0,0,63,255,64,63,64,15,208,0,0,0,63,64,63,255,255,255,255,0,0,63,64,63,255,255,255,255,0,0,63,64,63,255,255,255,255,0,0,63,64,63,64,15,208,0,0,0,63,64,63,64,15,208,0,0,0,63,64,63,64,15,208,0,0,0,63,64,63,64,15,208,0,0,0,63,64,63,255,255,255,255,224,0,63,128,63,255,255,255,255,224,0,127,192,63,255,255,255,255,224,1,255,240,0,0,0,0,0,0,11,255,254,0,0,0,0,0,0,63,244,255,249,64,0,0,5,80,127,192,63,255,255,255,255,255,240,63,0,7,255,255,255,255,255,240,28,0,0,107,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x904b 運 + 75,144,34,34,50,37,1,253,2,0,2,170,170,170,170,170,128,31,208,7,255,255,255,255,255,208,47,244,7,255,255,255,255,255,208,11,253,7,224,0,84,0,11,208,2,255,7,224,0,254,0,11,208,0,191,193,80,0,254,0,5,64,0,47,194,255,255,255,255,255,64,0,15,2,255,255,255,255,255,64,0,0,1,85,85,255,85,85,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,191,255,255,255,254,0,0,0,0,191,255,255,255,254,0,0,0,0,189,0,254,0,190,0,63,255,64,189,0,254,0,190,0,63,255,64,191,255,255,255,254,0,63,255,64,191,255,255,255,254,0,0,63,64,189,0,254,0,190,0,0,63,64,189,0,254,0,190,0,0,63,64,191,255,255,255,254,0,0,63,64,191,255,255,255,254,0,0,63,64,0,0,254,0,0,0,0,63,64,0,0,254,0,0,0,0,63,74,170,170,255,170,170,160,0,63,79,255,255,255,255,255,240,0,63,143,255,255,255,255,255,240,0,127,192,0,0,254,0,0,0,1,255,240,0,0,254,0,0,0,11,255,254,0,0,254,0,0,0,63,244,255,249,64,0,0,5,80,127,192,63,255,255,255,255,255,240,63,0,7,255,255,255,255,255,240,28,0,0,107,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x9054 達 + 84,144,34,35,59,37,1,253,0,0,0,0,0,254,0,0,0,3,64,0,0,0,254,0,0,0,31,208,0,21,85,255,85,85,0,31,248,0,191,255,255,255,254,0,7,254,0,191,255,255,255,254,0,0,255,64,0,0,254,0,0,0,0,127,192,0,0,254,0,0,0,0,31,138,170,170,255,170,170,160,0,10,15,255,255,255,255,255,240,0,0,15,255,255,255,255,255,240,0,0,0,3,240,0,31,192,0,0,0,0,3,244,0,47,192,0,0,0,0,2,252,0,63,64,0,0,0,0,0,252,0,127,0,0,0,0,7,255,255,255,255,255,224,63,255,71,255,255,255,255,255,224,63,255,66,170,170,255,170,170,144,63,255,64,0,0,254,0,0,0,0,63,64,85,85,255,85,85,0,0,63,64,255,255,255,255,255,0,0,63,64,255,255,255,255,255,0,0,63,64,0,0,254,0,0,0,0,63,64,0,0,254,0,0,0,0,63,70,170,170,255,170,170,144,0,63,75,255,255,255,255,255,224,0,63,75,255,255,255,255,255,224,0,63,128,0,0,254,0,0,0,0,127,192,0,0,254,0,0,0,1,255,240,0,0,254,0,0,0,11,255,254,0,0,0,0,0,0,63,244,255,249,64,0,0,5,80,127,192,63,255,255,255,255,255,240,63,0,7,255,255,255,255,255,240,28,0,0,107,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x9078 選 + 120,144,35,34,50,37,1,253,11,0,1,85,85,5,85,85,0,63,192,15,255,255,143,255,255,128,47,240,15,255,255,143,255,255,128,11,252,0,0,31,128,0,31,128,2,255,1,85,111,129,85,111,128,0,191,135,255,255,131,255,255,128,0,63,71,255,255,131,255,255,128,0,24,7,224,0,3,224,0,0,0,0,7,224,2,147,224,1,224,0,0,3,245,87,227,245,86,240,0,0,3,255,255,211,255,255,240,0,0,1,255,255,128,191,255,192,0,0,0,0,168,0,105,0,0,0,0,0,0,252,0,190,0,0,127,255,0,0,252,0,190,0,0,127,255,7,255,255,255,255,255,192,127,255,7,255,255,255,255,255,192,0,63,2,170,254,170,255,170,128,0,63,0,0,252,0,190,0,0,0,63,0,0,252,0,190,0,0,0,63,26,170,254,170,255,170,160,0,63,31,255,255,255,255,255,240,0,63,31,255,255,255,255,255,240,0,63,0,0,100,0,24,0,0,0,63,0,2,254,0,191,128,0,0,63,0,47,248,0,47,248,0,0,127,130,255,208,0,7,255,0,2,255,227,254,0,0,0,191,208,11,255,252,160,0,0,0,30,0,63,241,255,228,0,0,0,0,0,191,192,127,255,255,255,255,255,244,63,0,11,255,255,255,255,255,240,44,0,0,111,255,255,255,255,240,0,0,0,0,0,0,0,0,0, + // 0x9084 還 + 132,144,34,34,50,37,1,253,7,64,2,255,255,255,255,255,0,31,224,2,255,255,255,255,255,0,31,248,2,244,47,3,240,63,0,3,254,2,244,47,3,240,63,0,0,255,130,244,47,3,240,63,0,0,63,210,255,255,255,255,255,0,0,31,66,255,255,255,255,255,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,240,0,0,47,255,255,255,255,255,240,0,0,5,85,85,85,85,85,80,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,252,0,63,255,64,127,255,255,255,252,0,63,255,64,126,0,0,1,252,0,63,255,64,126,0,0,1,252,0,0,63,64,126,0,0,1,252,0,0,63,64,127,255,255,255,252,0,0,63,64,127,255,255,255,254,0,0,63,64,0,15,253,0,63,192,0,63,64,0,127,255,65,255,0,0,63,64,2,255,255,235,248,0,0,63,64,47,253,255,255,208,0,0,63,71,255,209,252,255,224,0,0,63,139,254,1,252,47,255,144,0,127,195,224,1,252,2,255,208,1,255,240,0,1,252,0,47,128,11,255,254,0,1,252,0,0,0,63,244,255,249,64,0,0,5,80,127,192,63,255,255,255,255,255,240,63,0,7,255,255,255,255,255,240,28,0,0,107,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x908a 邊 + 138,144,35,35,59,37,1,253,0,64,0,0,0,185,0,0,0,2,224,0,0,0,253,0,0,0,11,253,0,63,255,255,255,252,0,2,255,128,63,170,170,171,252,0,0,127,224,63,64,0,1,252,0,0,15,224,63,255,255,255,252,0,0,3,128,63,170,170,170,252,0,0,0,0,63,64,0,1,252,0,1,0,0,63,255,255,255,252,0,15,192,0,63,170,170,170,252,0,63,248,0,63,64,0,1,252,0,11,255,0,63,255,255,255,252,0,1,255,192,42,170,254,170,168,0,0,63,0,0,0,253,0,0,0,0,8,11,255,255,255,255,255,224,0,0,11,255,255,255,255,255,224,0,0,11,208,62,7,192,107,224,0,0,5,70,252,7,255,255,224,127,255,65,255,224,255,255,244,0,127,255,64,249,0,253,0,0,0,127,255,64,0,0,253,0,0,0,0,63,79,255,255,255,255,255,240,0,63,79,255,255,255,255,255,240,0,63,64,0,63,0,0,0,0,0,63,64,0,63,255,255,240,0,0,63,64,0,255,255,255,240,0,0,63,64,7,248,0,7,224,0,0,127,129,191,224,0,11,208,0,1,255,227,255,64,47,255,192,0,11,255,250,228,0,31,255,0,0,63,245,255,229,0,0,0,0,80,191,192,127,255,255,255,255,255,244,63,0,11,255,255,255,255,255,240,28,0,0,111,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x90e8 部 + 232,144,35,35,59,37,1,253,0,0,106,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,63,255,255,192,0,0,127,0,0,63,255,255,244,47,255,255,255,252,63,255,255,240,47,255,255,255,252,63,64,31,240,47,255,255,255,252,63,0,31,208,0,0,0,4,0,63,0,47,192,0,252,0,31,192,63,0,63,128,0,252,0,47,128,63,0,127,0,0,189,0,63,64,63,0,254,0,0,126,0,63,0,63,0,253,0,0,63,0,126,0,63,2,252,0,0,63,0,253,0,63,3,244,0,0,36,0,24,0,63,7,240,0,127,255,255,255,254,63,11,240,0,127,255,255,255,254,63,2,252,0,127,255,255,255,254,63,0,255,0,0,0,0,0,0,63,0,63,64,0,0,0,0,0,63,0,47,192,0,0,0,0,0,63,0,15,208,3,255,255,255,224,63,0,11,224,3,255,255,255,224,63,0,7,240,3,255,255,255,224,63,0,7,240,3,240,0,11,224,63,0,7,240,3,240,0,11,224,63,0,11,240,3,240,0,11,224,63,0,31,240,3,240,0,11,224,63,15,255,224,3,240,0,11,224,63,15,255,192,3,240,0,11,224,63,11,255,0,3,255,255,255,224,63,1,80,0,3,255,255,255,224,63,0,0,0,3,255,255,255,224,63,0,0,0,3,240,0,11,224,63,0,0,0,3,240,0,11,224,63,0,0,0, + // 0x91cb 釋 + 203,145,35,36,68,37,1,252,0,0,27,192,0,0,0,0,0,0,107,255,244,85,85,85,85,64,63,255,255,209,255,255,255,255,208,63,255,228,1,255,255,255,255,208,41,75,208,1,244,60,31,11,208,0,7,208,145,244,60,31,11,208,11,7,208,253,244,60,31,11,208,31,71,209,249,249,189,111,95,208,15,135,210,245,255,255,255,255,208,15,199,211,241,255,255,255,255,208,11,199,211,208,0,3,240,0,0,7,215,215,192,0,3,240,0,0,3,135,215,128,63,255,255,255,0,0,7,208,0,63,255,255,255,0,127,255,255,252,21,91,245,85,0,127,255,255,252,0,3,240,0,0,127,255,255,253,85,91,245,85,80,0,47,208,7,255,255,255,255,244,0,63,224,7,255,255,255,255,244,0,127,248,0,11,192,0,248,0,0,191,255,0,7,208,2,244,0,0,255,255,192,3,240,3,224,0,2,251,223,240,2,240,7,192,0,3,231,211,247,255,255,255,255,240,11,215,208,243,255,255,255,255,240,31,199,208,65,85,91,245,85,80,63,71,208,0,0,3,240,0,0,191,7,208,0,0,3,240,0,0,125,7,208,0,255,255,255,255,192,40,7,208,0,255,255,255,255,192,16,7,208,0,85,91,245,85,64,0,7,208,0,0,3,240,0,0,0,7,208,0,0,3,240,0,0,0,7,208,0,0,3,240,0,0,0,7,208,0,0,3,240,0,0,0,0,0,0,0,0,0,0,0, + // 0x91cd 重 + 205,145,33,34,50,37,2,254,0,0,0,0,0,0,90,0,0,0,0,0,5,106,255,255,64,0,2,191,255,255,255,255,255,192,0,2,255,255,255,255,255,233,0,0,1,255,169,91,244,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,170,170,170,175,254,170,170,170,128,0,0,0,7,240,0,0,0,0,0,85,85,91,245,85,85,64,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,253,0,7,240,0,15,208,0,0,253,0,7,240,0,15,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,253,0,11,240,0,31,208,0,0,253,0,7,240,0,15,208,0,0,253,0,7,240,0,15,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,85,85,91,245,85,85,64,0,0,0,0,7,240,0,0,0,0,2,170,170,175,250,170,170,164,0,3,255,255,255,255,255,255,248,0,3,255,255,255,255,255,255,248,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x91cf 量 + 207,145,33,33,41,37,2,254,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,0,0,0,0,63,64,0,0,127,0,0,0,0,63,64,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,127,0,0,0,0,63,64,0,0,127,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,170,170,170,170,170,170,170,170,128,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,252,0,3,240,0,15,208,0,0,252,0,3,240,0,15,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,252,0,3,240,0,15,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,0,0,3,240,0,0,0,0,0,0,0,3,240,0,0,0,0,3,255,255,255,255,255,255,240,0,3,255,255,255,255,255,255,240,0,1,85,85,87,245,85,85,80,0,0,0,0,3,240,0,0,0,0,170,170,170,171,250,170,170,170,128,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0x91dd 針 + 221,145,35,35,59,37,1,253,0,3,252,0,0,0,169,0,0,0,7,255,0,0,0,253,0,0,0,15,255,208,0,0,253,0,0,0,31,255,244,0,0,253,0,0,0,63,199,253,0,0,253,0,0,0,191,1,255,64,0,253,0,0,1,254,0,127,192,0,253,0,0,3,252,0,47,224,0,253,0,0,15,240,0,11,128,0,253,0,0,63,208,0,2,0,0,253,0,0,255,255,255,252,0,0,253,0,0,63,255,255,252,0,0,253,0,0,5,255,255,252,21,85,254,85,80,0,1,252,0,127,255,255,255,248,0,1,252,0,127,255,255,255,248,0,1,252,0,127,255,255,255,248,47,255,255,255,128,0,253,0,0,47,255,255,255,128,0,253,0,0,47,255,255,255,128,0,253,0,0,0,1,252,0,0,0,253,0,0,0,1,252,20,0,0,253,0,0,11,129,252,47,0,0,253,0,0,11,193,252,63,0,0,253,0,0,7,209,252,62,0,0,253,0,0,3,225,252,125,0,0,253,0,0,3,225,252,188,0,0,253,0,0,2,241,252,248,0,0,253,0,0,2,241,252,32,0,0,253,0,0,0,1,252,26,128,0,253,0,0,0,2,255,255,192,0,253,0,0,26,255,255,255,192,0,253,0,0,63,255,255,250,64,0,253,0,0,63,255,229,0,0,0,253,0,0,46,144,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0, + // 0x9215 鈕 + 21,146,35,35,59,37,1,253,0,11,224,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,47,255,0,127,255,255,255,0,0,127,127,192,127,255,255,254,0,0,254,31,224,127,255,255,254,0,2,252,7,248,21,191,85,190,0,7,244,1,253,0,191,0,190,0,31,224,0,191,0,190,0,190,0,127,192,0,60,0,190,0,190,0,191,255,255,244,0,190,0,190,0,47,255,255,224,0,253,0,254,0,7,255,255,224,0,253,0,254,0,0,7,224,0,0,253,0,253,0,0,7,224,0,0,253,0,253,0,0,7,224,0,0,252,0,253,0,0,7,224,0,85,253,85,254,80,63,255,255,249,255,255,255,255,248,63,255,255,249,255,255,255,255,248,63,255,255,249,255,255,255,255,248,0,7,224,0,2,248,0,253,0,1,7,224,144,2,248,0,252,0,15,7,224,248,2,248,0,252,0,15,135,225,240,3,244,0,252,0,11,199,226,240,3,244,1,252,0,7,199,227,224,3,240,1,252,0,7,215,227,208,3,240,1,252,0,3,215,231,192,3,240,1,252,0,3,135,225,64,7,240,1,252,0,0,7,224,20,7,240,2,252,0,0,7,251,253,11,224,2,252,0,5,191,255,254,91,229,87,253,80,63,255,255,255,255,255,255,255,248,63,255,228,15,255,255,255,255,248,46,144,0,15,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0x932f 錯 + 47,147,35,35,59,37,1,253,0,11,240,0,2,244,3,240,0,0,15,252,0,2,244,3,240,0,0,47,255,0,2,244,3,240,0,0,127,191,192,2,244,3,240,0,0,254,31,240,2,244,3,240,0,2,252,7,252,255,255,255,255,224,7,244,2,254,255,255,255,255,224,31,224,0,190,255,255,255,255,224,127,192,0,60,2,244,3,240,0,191,255,255,240,2,244,3,240,0,47,255,255,224,2,244,3,240,0,7,255,255,224,2,244,3,240,0,0,7,224,0,2,244,7,240,0,0,7,224,7,255,255,255,255,248,0,7,224,7,255,255,255,255,248,0,7,224,7,255,255,255,255,248,63,255,255,248,0,0,0,0,0,63,255,255,248,0,0,0,0,0,63,255,255,248,31,255,255,255,64,0,7,224,0,47,255,255,255,64,0,7,224,64,47,255,255,255,64,11,7,224,248,47,128,0,63,64,15,71,225,244,47,128,0,63,64,15,135,226,240,47,128,0,63,64,11,199,227,224,47,234,170,191,64,7,199,227,208,47,255,255,255,64,3,215,231,192,47,255,255,255,64,3,215,225,128,47,128,0,63,64,0,7,224,88,47,128,0,63,64,0,7,255,253,47,128,0,63,64,26,255,255,253,47,255,255,255,64,63,255,255,228,47,255,255,255,64,63,255,144,0,47,255,255,255,64,46,64,0,0,47,128,0,63,64,0,0,0,0,26,64,0,42,64, + // 0x9375 鍵 + 117,147,35,35,59,37,1,253,0,15,128,0,0,0,42,0,0,0,47,240,0,0,0,63,0,0,0,63,248,0,0,0,63,0,0,0,127,253,63,255,26,191,170,128,0,253,191,127,255,31,255,255,192,2,252,63,255,253,31,255,255,192,7,240,15,224,188,0,63,11,192,31,208,3,208,252,0,63,11,192,127,128,2,64,248,255,255,255,248,255,255,255,2,244,255,255,255,248,63,255,255,3,240,170,191,175,248,27,255,255,3,224,0,63,11,192,0,31,128,11,208,0,63,11,192,0,31,128,15,192,26,191,175,192,0,31,128,15,255,223,255,255,192,0,31,128,47,255,159,255,255,192,63,255,255,191,255,128,63,0,0,63,255,255,134,15,128,63,0,0,63,255,255,128,31,111,255,255,192,0,31,128,10,31,63,255,255,208,0,31,133,47,47,63,255,255,208,31,31,143,159,63,0,63,0,0,31,31,143,79,126,0,63,0,0,15,31,143,15,253,0,63,0,0,15,95,159,11,252,255,255,255,240,11,159,174,7,252,255,255,255,240,11,159,173,3,244,191,255,255,240,7,159,128,3,248,0,63,0,0,0,31,128,71,253,0,63,0,0,0,31,255,223,255,128,63,0,0,43,255,255,255,175,249,0,0,0,127,255,255,254,11,255,255,255,248,63,249,7,252,1,255,255,255,244,20,0,2,240,0,27,255,255,240,0,0,0,128,0,0,0,0,0, + // 0x9577 長 + 119,149,33,35,59,37,2,252,0,11,255,255,255,255,255,192,0,0,11,255,255,255,255,255,208,0,0,11,255,255,255,255,255,208,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,255,255,255,255,255,0,0,0,11,255,255,255,255,255,0,0,0,11,250,170,170,170,170,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,250,170,170,170,170,0,0,0,11,255,255,255,255,255,0,0,0,11,255,255,255,255,255,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,11,240,3,248,0,0,208,0,0,11,240,2,252,0,3,248,0,0,11,240,0,254,0,47,248,0,0,11,240,0,127,65,255,208,0,0,11,240,0,63,219,255,0,0,0,11,240,0,15,255,244,0,0,0,11,240,0,7,255,64,0,0,0,11,240,0,2,255,208,0,0,0,11,240,26,252,127,248,0,0,0,11,255,255,252,31,255,144,0,11,255,255,255,252,3,255,255,64,15,255,255,249,64,0,127,255,192,11,255,164,0,0,0,7,255,64,6,64,0,0,0,0,0,26,0,0,0,0,0,0,0,0,0,0, + // 0x9589 閉 + 137,149,31,34,16,37,3,253,106,170,170,160,42,170,170,168,191,255,255,240,63,255,255,252,191,255,255,240,63,255,255,252,190,0,7,240,63,0,2,252,190,0,7,240,63,0,2,252,190,0,7,240,63,0,2,252,191,255,255,240,63,255,255,252,191,255,255,240,63,255,255,252,191,85,91,240,63,149,87,252,190,0,7,240,63,0,2,252,190,0,7,240,63,0,2,252,191,255,255,240,63,170,171,252,191,255,255,240,63,255,255,252,191,170,170,160,63,255,255,252,190,0,0,0,84,0,2,252,190,0,0,0,189,0,2,252,190,0,0,0,189,0,2,252,190,0,0,0,189,0,2,252,190,11,255,255,255,255,130,252,190,11,255,255,255,255,130,252,190,11,255,255,255,255,130,252,190,0,0,11,253,0,2,252,190,0,0,47,253,0,2,252,190,0,0,191,253,0,2,252,190,0,3,253,189,0,2,252,190,0,31,244,189,0,2,252,190,0,191,208,189,0,2,252,190,7,255,0,189,0,2,252,190,31,252,0,189,0,2,252,190,11,208,0,189,0,2,252,190,2,0,127,253,21,87,252,190,0,0,63,252,47,255,248,190,0,0,47,224,15,255,240,190,0,0,0,0,15,255,128, + // 0x958b 開 + 139,149,31,35,24,37,3,252,106,170,170,160,42,170,170,164,191,255,255,240,63,255,255,252,191,255,255,240,63,255,255,252,190,0,3,240,63,0,2,252,190,0,3,240,63,0,2,252,191,85,87,240,63,85,86,252,191,255,255,240,63,255,255,252,191,255,255,240,63,255,255,252,190,0,3,240,63,0,2,252,190,0,3,240,63,0,2,252,190,0,3,240,63,0,2,252,191,255,255,240,63,255,255,252,191,255,255,240,63,255,255,252,191,170,170,160,42,170,171,252,190,0,0,0,0,0,2,252,190,0,0,0,0,0,2,252,190,7,255,255,255,255,66,252,190,7,255,255,255,255,66,252,190,6,175,250,191,234,66,252,190,0,15,192,31,128,2,252,190,0,15,192,31,128,2,252,190,0,15,192,31,128,2,252,190,15,255,255,255,255,194,252,190,15,255,255,255,255,194,252,190,15,255,255,255,255,194,252,190,0,15,192,31,128,2,252,190,0,31,192,31,128,2,252,190,0,47,128,31,128,2,252,190,0,63,0,31,128,2,252,190,0,254,0,31,128,2,252,190,2,252,0,31,129,87,252,190,11,248,0,31,135,255,248,190,3,224,0,31,131,255,244,190,0,128,0,0,2,255,128,0,0,0,0,0,0,0,0, + // 0x9593 間 + 147,149,31,34,16,37,3,253,106,170,170,160,42,170,170,168,191,255,255,240,63,255,255,252,191,255,255,240,63,255,255,252,190,0,7,240,63,0,2,252,190,0,7,240,63,0,2,252,190,0,7,240,63,0,2,252,191,255,255,240,63,255,255,252,191,255,255,240,63,255,255,252,191,85,91,240,63,149,87,252,190,0,7,240,63,0,2,252,190,0,7,240,63,0,2,252,191,255,255,240,63,170,171,252,191,255,255,240,63,255,255,252,191,170,170,160,63,255,255,252,190,0,0,0,0,0,2,252,190,0,0,0,0,0,2,252,190,0,106,170,170,160,2,252,190,0,127,255,255,244,2,252,190,0,127,255,255,244,2,252,190,0,126,0,3,244,2,252,190,0,126,0,3,244,2,252,190,0,126,0,3,244,2,252,190,0,127,255,255,244,2,252,190,0,127,255,255,244,2,252,190,0,127,170,171,244,2,252,190,0,126,0,3,244,2,252,190,0,126,0,3,244,2,252,190,0,126,0,3,244,2,252,190,0,127,255,255,244,2,252,190,0,127,255,255,244,2,252,190,0,127,170,170,169,87,252,190,0,126,0,0,15,255,248,190,0,21,0,0,11,255,240,190,0,0,0,0,7,255,128, + // 0x95dc 關 + 220,149,31,34,16,37,3,253,85,85,85,80,21,85,85,84,191,255,255,240,63,255,255,252,191,255,255,240,63,255,255,252,190,0,3,240,63,0,1,252,190,0,3,240,63,0,1,252,190,0,7,240,63,64,1,252,191,255,255,240,63,255,255,252,191,255,255,240,63,255,255,252,190,0,3,240,63,0,1,252,190,0,3,240,63,0,1,252,191,255,255,240,63,255,255,252,191,255,255,240,63,255,255,252,190,85,111,80,27,213,86,252,190,0,62,0,15,128,1,252,190,1,188,0,111,0,1,252,190,15,240,247,252,61,1,252,190,7,227,226,248,188,1,252,190,1,255,128,191,240,1,252,190,0,190,96,47,218,1,252,190,0,60,180,15,15,1,252,190,0,254,252,62,191,193,252,190,31,255,255,255,255,193,252,190,30,148,31,233,66,209,252,190,1,64,244,188,0,1,252,190,3,192,244,188,15,1,252,190,3,192,244,188,15,1,252,190,3,192,244,188,15,1,252,190,3,255,240,191,255,1,252,190,3,255,240,191,255,1,252,190,0,3,240,188,0,1,252,190,0,15,208,188,0,86,252,190,0,191,128,188,0,255,252,190,0,253,0,188,0,255,244,190,0,16,0,0,0,191,144, + // 0x964d 降 + 77,150,33,35,59,37,3,253,0,0,0,0,11,144,0,0,0,0,0,0,0,15,208,0,0,0,255,255,224,0,63,192,0,0,0,255,255,252,0,191,234,171,128,0,255,255,244,1,255,255,255,240,0,252,3,240,7,255,255,255,208,0,252,7,240,31,248,0,63,192,0,252,11,208,127,253,0,127,0,0,252,15,194,255,191,1,254,0,0,252,31,195,252,63,199,252,0,0,252,47,64,224,15,255,240,0,0,252,63,0,0,3,255,192,0,0,252,126,0,0,3,255,208,0,0,252,126,0,0,47,255,253,0,0,252,63,64,6,255,235,255,228,0,252,15,193,191,255,0,191,255,128,252,11,227,255,244,10,175,255,0,252,3,241,254,64,15,208,125,0,252,3,240,144,0,15,208,0,0,252,2,244,127,255,255,255,252,0,252,2,244,191,255,255,255,252,0,252,2,244,191,255,255,255,252,0,252,3,244,3,240,15,208,0,0,252,255,240,3,240,15,208,0,0,252,191,224,3,240,15,208,0,0,252,191,64,3,240,15,208,0,0,252,0,7,255,255,255,255,255,0,252,0,7,255,255,255,255,255,0,252,0,7,255,255,255,255,255,0,252,0,0,0,0,15,208,0,0,252,0,0,0,0,15,208,0,0,252,0,0,0,0,15,208,0,0,252,0,0,0,0,15,208,0,0,252,0,0,0,0,15,208,0,0,252,0,0,0,0,15,208,0,0, + // 0x9664 除 + 100,150,33,35,59,37,3,253,0,0,0,0,2,164,0,0,0,0,0,0,0,11,253,0,0,0,255,255,224,0,15,255,0,0,0,255,255,252,0,63,255,192,0,0,255,255,244,0,191,31,224,0,0,252,3,240,2,254,11,248,0,0,252,7,240,11,248,2,254,0,0,252,11,208,47,240,0,191,192,0,252,15,192,191,192,0,47,240,0,252,31,135,254,0,0,11,254,0,252,47,95,248,0,0,2,255,128,252,63,15,239,255,255,255,191,0,252,126,11,79,255,255,255,13,0,252,127,0,15,255,255,255,0,0,252,47,128,0,2,248,0,0,0,252,15,192,0,2,248,0,0,0,252,11,224,0,2,248,0,0,0,252,3,240,0,2,248,0,0,0,252,3,241,255,255,255,255,252,0,252,2,245,255,255,255,255,252,0,252,2,245,255,255,255,255,252,0,252,2,244,0,2,248,0,0,0,252,3,244,0,2,248,0,0,0,252,255,240,47,66,248,31,0,0,252,191,224,63,2,248,63,128,0,252,191,64,191,2,248,31,208,0,252,0,0,253,2,248,11,240,0,252,0,2,252,2,248,3,244,0,252,0,7,244,2,248,1,252,0,252,0,15,224,2,248,0,254,0,252,0,63,192,2,248,0,127,0,252,0,31,64,3,248,0,62,0,252,0,1,1,255,248,0,16,0,252,0,0,0,255,240,0,0,0,252,0,0,0,255,128,0,0,0, + // 0x968e 階 + 142,150,33,35,59,37,3,253,0,0,0,84,0,5,64,0,0,0,0,0,252,0,15,192,0,0,255,255,224,252,0,15,192,0,0,255,255,248,252,0,15,192,116,0,255,255,240,252,0,15,194,253,0,252,7,240,255,255,79,239,253,0,252,11,224,255,255,79,255,208,0,252,15,208,255,255,79,253,0,0,252,15,192,252,0,15,192,0,0,252,31,128,252,0,15,192,0,0,252,47,0,252,0,15,192,13,0,252,63,0,252,1,79,192,15,128,252,126,0,254,191,143,192,31,128,252,126,6,255,255,207,255,255,64,252,63,79,255,253,15,255,255,0,252,15,207,254,67,150,255,252,0,252,11,214,64,7,240,0,0,0,252,7,240,0,11,240,0,0,0,252,3,240,0,15,224,0,0,0,252,3,240,127,255,255,255,248,0,252,3,240,127,255,255,255,248,0,252,3,240,127,255,255,255,248,0,252,7,240,127,0,0,2,248,0,252,255,240,127,0,0,2,248,0,252,191,208,127,0,0,2,248,0,252,190,64,127,255,255,255,248,0,252,0,0,127,255,255,255,248,0,252,0,0,127,170,170,171,248,0,252,0,0,127,0,0,2,248,0,252,0,0,127,0,0,2,248,0,252,0,0,127,0,0,2,248,0,252,0,0,127,255,255,255,248,0,252,0,0,127,255,255,255,248,0,252,0,0,127,255,255,255,248,0,252,0,0,127,0,0,2,248,0, + // 0x96d9 雙 + 217,150,34,36,68,37,1,252,0,25,1,0,0,41,0,0,0,0,63,3,240,0,63,11,208,0,0,126,11,208,0,189,15,192,0,0,253,15,192,0,252,31,64,0,1,255,255,255,194,255,255,255,208,3,255,255,255,199,255,255,255,208,11,249,111,149,79,249,111,85,64,31,248,31,64,47,244,47,0,0,127,255,255,255,255,255,255,255,128,63,255,255,255,255,255,255,255,128,29,248,47,64,58,244,47,0,0,1,248,31,64,2,244,47,0,0,1,255,255,255,66,255,255,255,128,1,255,255,255,66,255,255,255,128,1,248,47,128,2,244,47,64,0,1,248,31,64,2,244,47,0,0,1,248,47,128,2,248,47,64,0,1,255,255,255,210,255,255,255,240,1,255,255,255,210,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,240,0,3,255,255,255,255,255,255,208,0,0,0,255,0,0,1,255,128,0,0,0,255,192,0,11,254,0,0,0,0,63,248,0,127,244,0,0,0,0,11,255,135,255,192,0,0,0,0,1,255,255,254,0,0,0,0,0,0,127,255,248,0,0,0,0,0,91,255,255,255,228,0,0,22,191,255,255,239,255,255,254,144,63,255,255,249,1,191,255,255,224,31,255,249,0,0,2,255,255,192,15,148,0,0,0,0,1,111,64,0,0,0,0,0,0,0,0,0, + // 0x96e2 離 + 226,150,35,35,59,37,1,253,0,0,252,0,0,10,64,16,0,0,0,252,0,0,15,208,127,0,0,0,252,0,0,31,192,190,0,127,255,255,255,244,47,128,252,0,127,255,255,255,248,63,65,252,0,127,255,255,255,248,127,2,244,0,0,0,0,0,0,190,3,240,0,6,64,11,203,128,255,255,255,240,11,202,15,139,194,255,255,255,240,11,207,255,11,195,255,255,255,240,11,195,254,11,199,253,3,240,0,11,192,255,75,207,252,3,240,0,11,195,255,219,239,252,3,240,0,11,207,211,219,255,252,3,240,0,11,223,64,75,255,252,3,240,0,11,218,85,95,221,255,255,255,240,11,255,255,255,192,255,255,255,240,11,255,255,255,192,255,255,255,224,0,0,252,0,0,252,3,240,0,0,0,248,0,0,252,3,240,0,47,255,255,255,240,252,3,240,0,47,255,255,255,240,252,3,240,0,47,171,250,171,240,255,255,255,224,47,3,224,3,240,255,255,255,240,47,3,227,131,240,255,255,255,240,47,3,211,195,240,252,3,240,0,47,7,194,227,240,252,3,240,0,47,127,255,243,240,252,3,240,0,47,63,255,247,240,252,3,240,0,47,21,80,187,240,253,3,240,0,47,0,0,87,240,255,255,255,248,47,0,0,3,240,255,255,255,248,47,0,2,171,224,255,255,255,248,47,0,2,255,208,252,0,0,0,47,0,1,255,64,252,0,0,0, + // 0x96fb 電 + 251,150,34,34,50,37,2,253,2,170,170,170,170,170,170,160,0,3,255,255,255,255,255,255,240,0,3,255,255,255,255,255,255,240,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,85,85,91,245,85,85,127,64,127,0,0,7,240,0,0,63,64,127,31,255,199,240,255,253,63,64,127,31,255,199,240,255,253,63,64,127,0,0,7,240,0,0,63,64,0,0,0,7,240,0,0,0,0,0,63,255,199,240,255,255,64,0,0,63,255,199,240,255,255,64,0,0,0,0,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,254,85,91,245,85,111,192,0,0,253,0,7,240,0,31,192,0,0,253,0,11,240,0,31,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,253,0,7,240,0,31,192,0,0,253,0,7,240,0,31,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,199,128,0,254,85,91,245,85,85,71,224,0,253,0,7,240,0,0,11,208,0,84,0,7,244,0,0,31,192,0,0,0,3,255,255,255,255,192,0,0,0,1,255,255,255,255,0,0,0,0,0,26,170,170,164,0, + // 0x9752 青 + 82,151,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,6,170,170,175,250,170,170,164,0,7,255,255,255,255,255,255,248,0,7,255,255,255,255,255,255,248,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,170,170,171,250,170,170,128,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,106,170,170,175,250,170,170,170,64,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,47,234,170,170,170,255,0,0,0,47,128,0,0,0,191,0,0,0,47,128,0,0,0,191,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,47,213,85,85,85,191,0,0,0,47,128,0,0,0,191,0,0,0,47,213,85,85,85,191,0,0,0,47,255,255,255,255,255,0,0,0,47,255,255,255,255,255,0,0,0,47,128,0,0,0,191,0,0,0,47,128,0,0,0,191,0,0,0,47,128,0,0,0,191,0,0,0,47,128,0,3,255,255,0,0,0,47,128,0,2,255,253,0,0,0,47,128,0,0,170,144,0,0, + // 0x975e 非 + 94,151,35,36,68,37,1,252,0,0,2,164,0,169,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,248,0,254,0,0,0,15,255,255,248,0,255,255,255,224,15,255,255,248,0,255,255,255,224,15,255,255,248,0,255,255,255,224,0,0,3,248,0,253,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,248,0,253,0,0,0,11,255,255,248,0,255,255,255,192,11,255,255,248,0,255,255,255,192,11,255,255,248,0,255,255,255,192,0,0,3,248,0,254,0,0,0,0,0,3,248,0,253,0,0,0,0,0,3,244,0,253,0,0,0,0,0,3,244,0,253,0,0,0,0,0,7,255,208,253,0,0,0,0,22,255,255,208,254,0,0,0,127,255,255,255,208,255,255,255,244,127,255,255,245,0,255,255,255,244,63,254,191,192,0,255,255,255,244,41,0,63,192,0,253,0,0,0,0,0,255,64,0,253,0,0,0,0,2,254,0,0,253,0,0,0,0,11,252,0,0,253,0,0,0,0,47,244,0,0,253,0,0,0,1,255,208,0,0,253,0,0,0,11,255,64,0,0,253,0,0,0,11,252,0,0,0,253,0,0,0,2,208,0,0,0,253,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9762 面 + 98,151,33,32,32,37,2,253,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,15,240,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,47,192,0,0,0,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,208,31,192,1,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,255,255,252,1,252,0,15,192,15,255,255,252,1,252,0,15,192,15,234,171,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,234,171,252,1,252,0,15,192,15,255,255,252,1,252,0,15,192,15,255,255,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,192,1,252,1,252,0,15,192,15,192,1,252,1,252,0,15,208,31,192,1,252,1,252,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,192,0,0,0,0,1,252,0,15,192,0,0,0,0,1,252,0, + // 0x9805 項 + 5,152,35,33,41,37,1,253,0,0,0,15,255,255,255,255,248,0,0,0,15,255,255,255,255,248,21,85,85,95,255,255,255,255,248,63,255,255,224,0,15,240,0,0,63,255,255,224,0,15,208,0,0,0,47,192,0,0,31,192,0,0,0,31,192,1,255,255,255,255,192,0,31,192,1,255,255,255,255,192,0,31,192,1,254,170,170,175,192,0,31,192,1,248,0,0,15,192,0,31,192,1,248,0,0,15,192,0,31,192,1,248,0,0,15,192,0,31,192,1,255,255,255,255,192,0,31,192,1,255,255,255,255,192,0,31,192,1,253,85,85,111,192,0,31,192,1,248,0,0,15,192,0,31,192,1,248,0,0,15,192,0,31,192,1,253,85,85,111,192,0,31,192,113,255,255,255,255,192,0,31,223,241,255,255,255,255,192,0,47,255,245,248,0,0,15,192,6,255,255,209,248,0,0,15,192,191,255,248,1,248,0,0,15,192,127,254,64,1,255,255,255,255,192,63,208,0,1,255,255,255,255,192,20,0,0,1,170,170,170,170,128,0,0,0,0,7,64,2,128,0,0,0,0,0,47,224,15,244,0,0,0,0,2,255,208,15,255,0,0,0,0,47,255,0,1,255,208,0,0,3,255,244,0,0,47,248,0,0,1,255,64,0,0,7,244,0,0,0,100,0,0,0,0,192, + // 0x9810 預 + 16,152,35,34,50,37,1,252,63,255,255,250,255,255,255,255,240,63,255,255,254,255,255,255,255,240,63,255,255,245,255,255,255,255,240,0,0,15,240,0,3,248,0,0,0,0,47,192,0,7,244,0,0,2,192,127,64,0,11,240,0,0,7,249,254,0,63,255,255,255,192,7,255,248,0,63,255,255,255,192,0,191,240,0,63,170,170,175,192,0,15,253,0,63,0,0,31,192,0,2,255,0,63,0,0,31,192,0,0,127,0,63,85,85,111,192,191,255,255,255,127,255,255,255,192,191,255,255,255,63,255,255,255,192,191,255,255,255,63,0,0,31,192,0,15,208,189,63,0,0,31,192,0,15,208,252,63,0,0,31,192,0,15,208,252,63,85,85,111,192,0,15,209,248,63,255,255,255,192,0,15,211,240,63,255,255,255,192,0,15,209,160,63,0,0,31,192,0,15,208,0,63,0,0,31,192,0,15,208,0,63,0,0,31,192,0,15,208,0,63,255,255,255,192,0,15,208,0,63,255,255,255,192,0,15,208,0,42,170,170,170,128,0,15,208,0,0,128,0,64,0,0,15,208,0,3,244,3,244,0,0,15,208,0,31,252,11,254,0,0,31,208,1,255,224,1,255,192,15,255,208,31,255,64,0,63,240,15,255,192,47,248,0,0,11,248,11,254,0,11,128,0,0,1,208,0,0,0,0,0,0,0,0,0, + // 0x984d 額 + 77,152,35,36,68,37,1,252,0,2,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,63,255,255,255,240,47,255,255,255,191,255,255,255,240,63,255,255,255,191,255,255,255,240,63,255,255,255,128,2,252,0,0,63,0,0,31,128,3,248,0,0,63,11,144,31,128,3,244,0,0,63,15,192,31,143,255,255,255,192,0,47,213,80,15,255,255,255,192,0,127,255,252,15,234,170,175,192,0,255,255,252,15,192,0,15,192,3,248,3,244,15,192,0,15,192,15,248,7,240,15,229,85,111,192,127,255,79,208,15,255,255,255,192,127,127,255,128,15,255,255,255,192,8,15,255,0,15,192,0,15,192,0,3,255,64,15,192,0,15,192,0,15,255,224,15,192,0,15,192,0,127,223,252,15,229,85,111,192,7,255,2,255,79,255,255,255,192,127,252,0,191,143,255,255,255,192,191,250,170,191,15,192,0,15,192,63,255,255,248,15,192,0,15,192,3,255,255,244,15,192,0,15,192,3,240,2,244,15,255,255,255,192,3,240,2,244,15,255,255,255,192,3,240,2,244,10,170,170,170,128,3,240,2,244,0,32,0,64,0,3,240,2,244,1,253,2,244,0,3,255,255,244,11,254,3,254,0,3,255,255,244,191,244,0,191,192,3,250,170,171,255,192,0,31,244,3,240,0,3,253,0,0,7,248,1,80,0,0,208,0,0,0,208,0,0,0,0,0,0,0,0,0, + // 0x985e 類 + 94,152,35,35,59,37,1,253,0,1,80,0,0,0,0,0,0,6,2,240,41,0,0,0,0,0,15,130,240,63,127,255,255,255,240,11,194,240,125,63,255,255,255,240,7,226,240,252,63,255,255,255,240,3,226,240,244,0,2,252,0,0,0,2,240,16,0,3,248,0,0,63,255,255,255,64,3,240,0,0,63,255,255,255,79,255,255,255,192,42,175,254,170,79,255,255,255,192,0,31,253,0,15,234,170,175,192,0,127,255,128,15,192,0,15,192,1,255,255,248,15,192,0,15,192,7,246,246,255,79,213,85,111,192,47,210,240,127,79,255,255,255,192,127,130,240,14,15,255,255,255,192,29,2,240,0,15,192,0,15,192,0,0,0,0,15,192,0,15,192,0,3,240,0,15,192,0,15,192,0,3,240,0,15,255,255,255,192,0,3,240,0,15,255,255,255,192,63,255,255,255,143,213,85,111,192,63,255,255,255,143,192,0,15,192,63,255,255,255,143,192,0,15,192,0,3,240,0,15,192,0,15,192,0,7,244,0,15,255,255,255,192,0,15,254,0,15,255,255,255,192,0,31,255,208,10,170,170,170,128,0,63,239,244,0,112,0,144,0,0,255,71,254,1,254,3,248,0,7,253,0,255,11,253,3,255,0,127,248,0,60,191,240,0,191,208,63,208,0,11,255,128,0,31,248,30,0,0,3,253,0,0,3,244,0,0,0,0,208,0,0,0,128, + // 0x98a8 風 + 168,152,35,34,50,37,1,252,0,127,255,255,255,255,255,244,0,0,127,255,255,255,255,255,244,0,0,127,255,255,255,255,255,244,0,0,127,0,0,0,0,7,244,0,0,127,0,0,0,5,3,244,0,0,127,0,1,107,255,67,244,0,0,127,43,255,255,255,211,244,0,0,127,63,255,255,249,3,244,0,0,127,46,81,248,0,3,244,0,0,127,0,1,248,0,3,244,0,0,127,0,1,248,0,3,244,0,0,127,26,171,254,170,131,244,0,0,191,31,255,255,255,195,244,0,0,191,31,255,255,255,195,244,0,0,190,31,1,248,15,195,244,0,0,190,31,1,248,15,195,244,0,0,190,31,1,248,15,195,244,0,0,190,31,1,248,15,195,244,0,0,254,31,1,248,15,195,244,0,0,253,31,171,254,175,195,244,0,0,253,31,255,255,255,194,244,0,0,252,31,255,255,255,194,248,0,1,252,0,1,248,1,2,248,0,2,252,0,1,248,63,1,248,0,3,248,0,1,248,47,129,252,16,3,244,0,1,248,15,192,252,48,7,240,5,90,254,175,240,252,60,11,241,255,255,255,255,244,252,124,15,209,255,255,255,255,248,190,120,47,192,255,234,149,0,252,127,248,127,128,0,0,0,0,189,63,244,63,0,0,0,0,0,80,31,240,9,0,0,0,0,0,0,11,192,0,0,0,0,0,0,0,0,0, + // 0x98fd 飽 + 253,152,35,35,59,37,1,253,0,3,248,0,1,228,0,0,0,0,11,254,0,2,252,0,0,0,0,15,255,192,3,244,0,0,0,0,47,239,240,7,240,0,0,0,0,127,75,248,11,240,0,0,0,0,254,2,254,15,255,255,255,224,3,252,0,191,95,255,255,255,208,11,244,252,62,63,255,255,255,208,63,208,252,8,127,0,0,11,208,255,128,252,0,254,0,0,11,208,127,255,255,255,252,0,0,15,208,27,255,255,255,255,255,252,15,208,3,250,170,253,239,255,252,15,208,3,240,0,252,79,255,252,15,208,3,240,0,252,0,0,252,15,208,3,255,255,252,0,0,252,15,208,3,255,255,252,0,0,252,15,192,3,245,85,252,0,0,252,15,192,3,240,0,252,0,0,252,15,192,3,240,0,252,31,255,252,15,192,3,255,255,252,31,255,252,31,192,3,255,255,252,31,255,252,47,192,3,250,170,168,31,128,15,255,128,3,240,0,0,31,128,15,255,64,3,240,11,128,31,128,11,253,0,3,240,31,192,31,128,0,0,0,3,240,11,240,31,128,0,0,0,3,240,3,244,31,128,0,0,128,3,240,111,252,31,128,0,1,248,3,255,255,253,31,128,0,1,248,47,255,255,255,31,128,0,2,248,63,255,228,127,31,192,0,3,244,63,249,0,63,95,255,255,255,240,41,0,0,24,15,255,255,255,224,0,0,0,0,1,255,255,255,64, + // 0x9918 餘 + 24,153,35,35,59,37,1,253,0,11,244,0,0,7,240,0,0,0,15,253,0,0,15,252,0,0,0,47,255,64,0,31,253,0,0,0,127,47,208,0,63,255,0,0,0,254,15,240,0,191,63,192,0,2,252,3,252,1,253,15,224,0,7,244,1,254,3,248,11,244,0,31,255,255,188,15,240,3,253,0,127,175,255,96,63,192,0,255,64,254,21,85,0,255,64,0,63,224,40,0,0,3,253,0,0,31,248,7,255,255,251,255,255,255,255,244,7,255,255,246,235,255,255,253,240,7,245,87,244,139,255,255,252,64,7,224,2,244,0,3,240,0,0,7,224,2,244,0,3,240,0,0,7,255,255,244,0,3,240,0,0,7,255,255,244,0,3,240,0,0,7,224,2,245,255,255,255,255,240,7,224,2,245,255,255,255,255,240,7,255,255,245,255,255,255,255,240,7,255,255,244,0,3,240,0,0,7,245,85,80,0,3,240,4,0,7,224,0,0,31,131,240,189,0,7,250,170,160,63,67,240,127,0,7,255,255,244,63,3,240,63,64,7,255,255,244,191,3,240,31,192,7,224,0,0,253,3,240,15,208,7,224,0,2,252,3,240,11,240,7,250,170,171,248,3,240,3,240,7,255,255,255,240,3,240,3,244,7,255,255,253,208,3,240,2,144,7,224,0,0,2,255,240,0,0,7,224,0,0,0,255,224,0,0,7,224,0,0,0,255,128,0,0, + // 0x99ac 馬 + 172,153,34,34,50,37,1,252,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,63,234,170,255,170,170,160,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,255,255,255,255,255,240,0,0,63,255,255,255,255,255,240,0,0,63,234,170,255,170,170,160,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,64,0,254,0,0,0,0,0,63,255,255,255,255,255,255,224,0,63,255,255,255,255,255,255,208,0,63,255,255,255,255,255,255,208,0,0,0,0,0,0,0,15,208,0,80,0,0,0,2,128,15,208,0,253,5,64,104,15,208,15,192,0,252,31,192,252,7,240,31,192,1,252,15,192,126,2,244,31,192,3,248,15,192,63,0,252,47,192,3,244,11,208,47,64,184,47,192,15,240,11,224,31,128,0,63,128,31,208,7,224,15,192,0,191,64,127,192,7,240,8,1,255,255,0,47,0,1,64,0,0,255,254,0,5,0,0,0,0,0,255,244,0,0,0,0,0,0,0,0,0,0, + // 0x9a45 驅 + 69,154,35,35,59,37,1,252,10,170,170,164,170,170,170,170,160,15,255,255,248,255,255,255,255,240,15,255,255,248,255,255,255,255,240,15,193,244,0,252,0,0,0,0,15,193,244,0,252,0,0,0,0,15,193,244,0,252,15,255,254,0,15,235,250,160,252,15,255,254,0,15,255,255,240,252,15,192,62,0,15,255,255,240,252,15,192,62,0,15,193,244,0,252,15,192,62,0,15,193,244,0,252,15,192,62,0,15,193,244,0,252,15,192,62,0,15,255,255,240,252,15,255,254,0,15,255,255,240,252,15,255,254,0,15,235,254,160,252,0,0,0,0,15,193,244,0,252,0,0,0,0,15,193,244,0,252,0,0,0,0,15,193,244,0,252,191,241,255,224,15,255,255,252,252,191,241,255,224,15,255,255,252,252,176,241,209,224,10,170,170,252,252,176,241,209,224,0,0,0,252,252,176,241,209,224,9,0,36,252,252,176,241,209,224,30,183,124,248,252,176,241,209,224,30,179,157,248,252,176,241,209,224,30,115,207,248,252,191,241,255,224,45,118,203,248,252,191,241,255,224,45,117,193,248,252,0,0,0,0,60,117,209,244,252,0,0,0,0,124,116,1,244,254,170,170,170,164,180,0,2,240,255,255,255,255,248,16,0,171,240,255,255,255,255,248,0,0,255,224,252,0,0,0,0,0,0,255,128,184,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9ad4 體 + 212,154,34,36,68,37,2,252,0,0,0,0,0,124,46,0,0,6,170,170,128,0,124,47,0,0,11,255,255,192,0,124,47,0,0,11,255,255,192,21,189,127,85,0,11,192,7,192,191,255,255,255,0,11,192,7,192,191,255,255,255,0,11,199,255,192,188,60,45,31,0,11,199,255,192,188,60,45,31,0,11,199,139,192,191,255,255,255,0,11,199,71,192,191,255,255,255,0,11,199,71,192,188,61,61,47,0,11,199,71,192,188,60,45,31,0,255,255,255,253,189,125,125,111,0,255,255,255,253,191,255,255,255,0,253,85,85,189,191,255,255,255,0,252,0,0,125,0,0,0,0,0,255,255,255,254,85,85,85,85,64,11,255,255,194,255,255,255,255,192,11,255,255,194,255,255,255,255,192,11,208,15,192,0,0,0,0,0,11,208,15,192,63,255,255,254,0,11,255,255,192,63,255,255,254,0,11,255,255,192,63,0,0,126,0,11,229,95,192,63,0,0,126,0,11,208,15,192,63,0,0,126,0,11,208,15,192,63,255,255,254,0,11,255,255,192,63,255,255,254,0,11,255,255,192,1,208,3,144,0,11,229,95,192,7,224,3,240,0,11,208,15,192,3,240,11,208,0,11,208,15,192,1,244,15,192,0,11,208,15,192,0,248,31,64,0,11,209,175,199,255,255,255,255,224,11,209,255,199,255,255,255,255,224,11,208,254,2,170,170,170,170,144,0,0,0,0,0,0,0,0,0, + // 0x9ad8 高 + 216,154,33,35,59,37,2,253,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,85,85,85,85,80,0,0,0,7,255,255,255,255,244,0,0,0,7,255,255,255,255,244,0,0,0,7,240,0,0,3,244,0,0,0,7,240,0,0,3,244,0,0,0,7,240,0,0,3,244,0,0,0,7,255,255,255,255,244,0,0,0,7,255,255,255,255,244,0,0,0,1,85,85,85,85,80,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,252,0,15,208,0,0,0,0,0,252,0,15,208,0,0,0,0,0,252,0,15,208,5,85,85,84,0,252,0,15,208,31,255,255,253,0,252,0,15,208,31,255,255,253,0,252,0,15,208,31,64,0,189,0,252,0,15,208,31,64,0,189,0,252,0,15,208,31,64,0,189,0,252,0,15,208,31,255,255,253,0,252,0,15,208,31,255,255,253,0,252,0,15,208,31,149,85,90,2,252,0,15,208,31,64,0,7,255,252,0,15,208,5,0,0,3,255,248,0,15,208,0,0,0,2,255,144,0, + // 0x9ec3 黃 + 195,158,33,36,68,37,2,252,0,0,126,0,0,47,128,0,0,0,0,191,0,0,47,192,0,0,0,0,191,0,0,47,192,0,0,15,255,255,255,255,255,255,253,0,15,255,255,255,255,255,255,253,0,10,170,255,170,170,191,234,169,0,0,0,191,0,0,47,192,0,0,0,0,191,85,85,127,192,0,0,0,0,191,255,255,255,192,0,0,0,0,191,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,0,0,0,7,240,0,0,0,0,0,85,85,91,245,85,85,64,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,253,0,7,240,0,31,192,0,0,253,0,7,240,0,31,192,0,0,254,85,91,245,85,95,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,253,0,7,240,0,31,192,0,0,253,0,7,240,0,31,192,0,0,254,85,91,245,85,111,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,0,126,0,0,63,128,0,0,0,11,255,192,0,255,254,0,0,2,255,254,0,0,27,255,244,0,191,255,208,0,0,0,127,255,128,191,248,0,0,0,0,2,255,64,46,64,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0, + // 0x9ede 點 + 222,158,35,35,59,37,1,253,0,0,0,0,0,1,252,0,0,5,85,85,85,64,1,252,0,0,15,255,255,255,128,1,252,0,0,15,255,255,255,128,1,252,0,0,15,64,244,15,128,1,252,0,0,15,148,244,143,128,1,252,0,0,15,184,244,255,128,1,252,0,0,15,124,245,223,128,1,252,0,0,15,108,246,207,128,1,255,255,248,15,93,247,143,128,1,255,255,248,15,93,251,79,128,1,255,255,248,15,64,245,15,128,1,252,0,0,15,149,249,95,128,1,252,0,0,15,255,255,255,128,1,252,0,0,15,255,255,255,128,1,252,0,0,0,1,248,0,0,1,252,0,0,0,1,248,0,0,1,252,0,0,10,171,254,170,128,1,252,0,0,31,255,255,255,199,255,255,255,192,31,255,255,255,199,255,255,255,192,0,1,248,0,7,255,255,255,192,0,1,248,0,7,224,0,15,192,0,1,254,191,215,224,0,15,192,63,255,255,255,215,224,0,15,192,63,255,255,255,215,224,0,15,192,63,165,80,0,7,224,0,15,192,0,0,5,62,7,224,0,15,192,6,79,31,31,7,224,0,15,192,11,207,79,15,199,224,0,15,192,15,143,139,135,215,224,0,15,192,15,75,135,195,231,255,255,255,192,31,75,195,193,235,255,255,255,192,63,7,195,128,7,255,255,255,192,189,1,64,0,7,224,0,31,192,24,0,0,0,7,224,0,10,128, + // 0x9f4a 齊 + 74,159,34,36,68,37,2,252,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,170,170,170,175,254,170,170,170,64,191,255,255,255,255,255,255,255,128,191,255,255,255,255,255,255,255,128,0,0,0,96,3,144,0,0,0,0,0,0,248,11,208,2,244,0,63,255,255,189,15,149,191,253,0,63,255,255,63,47,47,255,208,0,22,249,127,29,89,47,159,192,0,2,240,63,7,240,47,7,208,0,3,240,63,7,240,47,3,240,0,7,224,62,7,240,47,1,248,0,15,208,62,7,240,47,5,253,0,47,213,189,7,241,191,255,127,128,255,31,252,7,241,255,255,47,208,252,15,244,7,240,250,80,11,128,96,0,0,0,0,0,0,1,0,0,47,192,0,0,0,63,64,0,0,47,192,0,0,0,63,64,0,0,47,255,255,255,255,255,64,0,0,47,255,255,255,255,255,64,0,0,47,234,170,170,170,191,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,234,170,170,170,191,64,0,0,127,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,1,254,0,0,0,0,63,64,0,3,252,0,0,0,0,63,64,0,31,248,0,0,0,0,63,64,0,127,240,0,0,0,0,63,64,0,47,192,0,0,0,0,63,64,0,14,0,0,0,0,0,63,64,0,0,0,0,0,0,0,0,0,0, + // 0xff1a : + 26,255,7,24,48,37,15,2,31,208,63,240,191,248,127,244,63,240,31,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,208,63,240,191,248,191,244,63,240,31,208, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Vietnamese_27.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Vietnamese_27.cpp new file mode 100644 index 000000000000..6896d1544462 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_27px/NotoSans_Medium_Vietnamese_27.cpp @@ -0,0 +1,246 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Vietnamese 37pt, capital 'A' height: 27px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 +extern const uint8_t NotoSans_Medium_Vietnamese_27[18122] = { + 162,27,2,1,249,30,35,247, // unifont_t + // 0x0102 Ă + 2,1,24,34,204,24,0,0,0,10,0,0,160,0,0,15,128,2,240,0,0,11,249,111,224,0,0,3,255,255,192,0,0,0,255,254,0,0,0,0,6,144,0,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x0103 ă + 3,1,18,29,145,21,1,255,1,160,0,26,0,1,240,0,62,0,0,254,86,252,0,0,127,255,248,0,0,31,255,208,0,0,1,169,0,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x0110 Đ + 16,1,24,27,162,27,1,0,1,85,85,64,0,0,7,255,255,255,64,0,7,255,255,255,244,0,7,255,255,255,254,0,7,248,0,27,255,192,7,248,0,0,191,224,7,248,0,0,47,244,7,248,0,0,15,252,7,248,0,0,7,252,7,248,0,0,3,253,7,248,0,0,2,254,7,248,0,0,1,255,191,255,255,64,1,255,255,255,255,128,1,255,255,255,255,128,1,255,171,254,170,64,1,255,7,248,0,0,2,254,7,248,0,0,3,253,7,248,0,0,3,252,7,248,0,0,11,252,7,248,0,0,31,244,7,248,0,0,127,240,7,248,0,2,255,192,7,253,85,191,255,64,7,255,255,255,252,0,7,255,255,255,208,0,7,255,255,228,0,0, + // 0x0111 đ + 17,1,21,29,174,23,2,255,0,0,0,15,240,0,0,0,0,15,240,0,0,0,0,15,240,0,0,3,255,255,255,128,0,7,255,255,255,128,0,3,255,255,255,128,0,0,0,15,240,0,0,0,0,15,240,0,0,47,232,15,240,0,2,255,255,79,240,0,11,255,255,239,240,0,31,254,91,255,240,0,63,224,0,191,240,0,127,192,0,63,240,0,191,128,0,31,240,0,255,64,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,64,0,15,240,0,191,128,0,47,240,0,63,208,0,63,240,0,63,244,1,255,240,0,15,255,255,255,240,0,3,255,255,203,240,0,0,191,254,7,240,0,0,1,64,0,0,0, + // 0x0128 Ĩ + 40,1,14,34,136,13,0,0,1,64,1,64,47,248,3,208,127,255,155,192,254,191,255,128,240,11,255,0,144,0,100,0,0,0,0,0,21,85,85,0,47,255,254,0,47,255,254,0,2,255,224,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,191,128,0,11,255,249,0,47,255,254,0,47,255,254,0, + // 0x0129 ĩ + 41,1,14,28,112,10,254,0,1,64,0,80,15,253,1,240,63,255,215,224,126,191,255,192,248,7,255,64,160,0,100,0,0,0,0,0,0,0,0,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0, + // 0x0168 Ũ + 104,1,21,35,210,27,3,255,0,1,64,0,80,0,0,31,248,3,224,0,0,127,255,155,208,0,0,254,191,255,192,0,0,240,11,255,0,0,0,160,0,100,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,254,0,0,0,0,21,64,0,0, + // 0x0169 ũ + 105,1,17,29,145,23,3,255,0,20,0,5,0,1,255,128,62,0,7,255,249,188,0,15,235,255,252,0,15,0,191,240,0,10,0,6,64,0,0,0,0,0,0,0,0,0,0,0,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,0,0, + // 0x01a0 Ơ + 160,1,28,29,203,29,2,255,0,0,0,0,0,0,255,0,0,107,234,64,0,255,0,11,255,255,248,1,254,0,127,255,255,255,66,253,1,255,254,175,255,215,252,3,255,128,0,127,255,240,15,252,0,0,15,255,128,31,244,0,0,3,254,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,1,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x01a1 ơ + 161,1,23,24,144,24,2,255,0,0,0,0,11,248,0,0,0,0,11,244,0,0,16,0,15,240,0,47,255,208,15,240,2,255,255,252,63,208,11,255,255,255,255,128,31,248,1,255,253,0,63,208,0,63,224,0,127,192,0,15,240,0,191,64,0,15,240,0,255,0,0,11,244,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,11,244,0,191,64,0,15,240,0,127,192,0,15,240,0,63,208,0,63,224,0,31,248,0,255,192,0,11,255,255,255,0,0,1,255,255,252,0,0,0,47,255,208,0,0,0,0,84,0,0,0, + // 0x01af Ư + 175,1,28,29,203,30,3,255,0,0,0,0,0,0,255,85,0,0,0,21,65,255,191,64,0,0,63,194,253,191,64,0,0,63,195,252,191,64,0,0,63,203,248,191,64,0,0,63,255,224,191,64,0,0,63,255,128,191,64,0,0,63,228,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,127,192,0,0,127,128,0,63,208,0,0,255,64,0,47,240,0,2,255,0,0,15,254,64,31,253,0,0,3,255,255,255,248,0,0,0,255,255,255,208,0,0,0,31,255,254,0,0,0,0,0,21,64,0,0,0, + // 0x01b0 ư + 176,1,24,24,144,26,3,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,1,254,255,0,0,47,194,253,255,0,0,47,199,252,255,0,0,47,255,240,255,0,0,47,255,192,255,0,0,47,249,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,127,192,0,255,128,0,255,192,0,191,208,7,255,192,0,63,255,255,239,192,0,31,255,255,79,192,0,2,255,248,15,192,0,0,21,0,0,0,0, + // 0x0303 ̃ + 3,3,14,6,24,0,238,22,1,64,1,64,47,248,3,208,127,255,155,192,254,191,255,128,240,11,255,0,144,0,100,0, + // 0x0309 ̉ + 9,3,7,10,20,0,242,21,85,0,255,240,255,252,1,252,0,252,2,248,47,240,47,64,31,0,0,0, + // 0x0323 ̣ + 35,3,5,5,10,0,242,249,25,0,63,128,127,192,127,192,30,0, + // 0x0340 ̀ + 64,3,8,7,14,0,250,22,85,0,255,128,63,192,31,240,7,248,0,253,0,41, + // 0x0341 ́ + 65,3,8,7,14,0,254,22,0,85,2,255,3,253,15,244,47,208,127,0,104,0, + // 0x1ea0 Ạ + 160,30,24,34,204,24,0,249,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,128,0,0,0,0,15,240,0,0,0,0,15,244,0,0,0,0,15,240,0,0,0,0,3,208,0,0, + // 0x1ea1 ạ + 161,30,18,28,140,21,1,249,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0,0,0,0,0,0,0,0,100,0,0,0,1,254,0,0,0,2,255,0,0,0,1,254,0,0,0,0,184,0,0, + // 0x1ea2 Ả + 162,30,24,37,222,24,0,0,0,0,21,64,0,0,0,0,63,248,0,0,0,0,63,254,0,0,0,0,0,127,0,0,0,0,0,63,0,0,0,0,0,254,0,0,0,0,11,248,0,0,0,0,11,192,0,0,0,0,11,192,0,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x1ea3 ả + 163,30,18,32,160,21,1,255,0,1,84,0,0,0,11,255,64,0,0,11,255,192,0,0,0,15,224,0,0,0,11,208,0,0,0,31,192,0,0,0,255,64,0,0,0,248,0,0,0,0,244,0,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x1ea4 Ấ + 164,30,24,36,216,24,0,0,0,0,0,0,7,240,0,0,0,0,15,208,0,0,15,244,47,64,0,0,63,252,124,0,0,0,191,255,0,0,0,2,252,47,128,0,0,7,224,7,224,0,0,5,64,0,80,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x1ea5 ấ + 165,30,20,31,155,21,1,255,0,0,0,0,254,0,0,0,1,252,0,2,170,3,240,0,7,255,79,128,0,15,255,208,0,0,63,71,240,0,0,253,0,252,0,0,160,0,41,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x1ea6 Ầ + 166,30,24,36,216,24,0,0,15,224,0,0,0,0,3,240,0,0,0,0,1,252,15,244,0,0,0,61,63,252,0,0,0,0,191,255,0,0,0,2,248,47,128,0,0,7,224,7,224,0,0,5,64,0,80,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x1ea7 ầ + 167,30,19,31,155,21,0,255,191,0,0,0,0,47,128,0,0,0,11,208,106,128,0,2,241,255,224,0,0,3,255,244,0,0,15,225,252,0,0,63,64,63,0,0,40,0,10,64,0,0,0,0,0,0,0,5,0,0,0,27,255,249,0,0,255,255,255,128,0,255,255,255,208,0,121,0,63,240,0,0,0,15,240,0,0,0,11,240,0,0,0,11,244,0,0,0,11,244,0,6,255,255,244,0,191,255,255,244,3,255,234,95,244,11,253,0,11,244,15,240,0,11,244,15,240,0,15,244,31,224,0,15,244,15,240,0,47,244,15,248,0,191,244,11,255,175,251,244,3,255,255,211,244,0,191,255,2,244,0,1,80,0,0, + // 0x1ea8 Ẩ + 168,30,24,39,234,24,0,0,0,0,0,0,80,0,0,0,0,0,255,64,0,0,0,0,91,192,0,0,0,0,3,192,0,0,0,0,31,192,0,0,31,240,61,0,0,0,63,252,60,0,0,0,255,254,0,0,0,2,248,63,128,0,0,11,208,11,208,0,0,5,0,1,80,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x1ea9 ẩ + 169,30,19,33,165,21,1,255,0,0,0,15,240,0,0,0,10,248,0,0,0,0,124,0,0,0,1,248,0,1,170,7,208,0,7,255,135,128,0,15,255,208,0,0,63,135,240,0,0,189,0,252,0,0,160,0,25,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x1eaa Ẫ + 170,30,24,39,234,24,0,0,0,0,185,0,176,0,0,3,255,209,240,0,0,7,235,255,208,0,0,11,64,191,128,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,47,252,0,0,0,0,191,254,0,0,0,1,252,47,128,0,0,7,224,7,224,0,0,5,0,0,80,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x1eab ẫ + 171,30,18,34,170,21,1,255,0,26,64,13,0,0,127,248,61,0,0,254,255,252,0,0,240,47,244,0,0,64,1,64,0,0,1,169,0,0,0,3,255,64,0,0,15,255,192,0,0,63,135,240,0,0,253,0,252,0,0,160,0,25,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x1eac Ậ + 172,30,24,42,252,24,0,249,0,0,5,80,0,0,0,0,47,252,0,0,0,0,127,254,0,0,0,0,255,191,64,0,0,3,248,47,208,0,0,15,224,7,244,0,0,26,64,0,164,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,128,0,0,0,0,15,240,0,0,0,0,15,244,0,0,0,0,15,244,0,0,0,0,2,208,0,0, + // 0x1ead ậ + 173,30,18,36,180,21,1,249,0,0,85,0,0,0,3,255,64,0,0,15,255,192,0,0,47,239,240,0,0,191,67,252,0,1,252,0,190,0,2,160,0,26,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0,0,0,0,0,0,0,0,100,0,0,0,2,253,0,0,0,3,254,0,0,0,3,253,0,0,0,0,184,0,0, + // 0x1eae Ắ + 174,30,24,38,228,24,0,0,0,0,0,21,0,0,0,0,0,127,0,0,0,0,0,252,0,0,0,0,2,240,0,0,0,7,67,129,224,0,0,7,192,2,224,0,0,3,244,27,208,0,0,2,255,255,128,0,0,0,191,254,0,0,0,0,5,80,0,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x1eaf ắ + 175,30,18,32,160,21,1,255,0,0,15,224,0,0,0,47,128,0,0,0,62,0,0,0,160,184,40,0,0,244,0,124,0,0,189,1,252,0,0,63,255,244,0,0,31,255,208,0,0,1,169,0,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x1eb0 Ằ + 176,30,24,38,228,24,0,0,0,0,84,0,0,0,0,0,254,0,0,0,0,0,63,0,0,0,0,0,15,128,0,0,0,7,66,193,224,0,0,7,192,3,224,0,0,3,244,31,208,0,0,2,255,255,128,0,0,0,191,254,0,0,0,0,5,80,0,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x1eb1 ằ + 177,30,18,32,160,21,1,255,0,47,192,0,0,0,11,208,0,0,0,2,240,0,0,0,160,184,40,0,0,244,0,124,0,0,253,1,252,0,0,63,255,240,0,0,31,255,208,0,0,1,169,0,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x1eb2 Ẳ + 178,30,24,39,234,24,0,0,0,0,10,64,0,0,0,0,15,244,0,0,0,0,0,184,0,0,0,0,0,184,0,0,0,0,3,240,0,0,0,7,67,129,224,0,0,7,192,3,224,0,0,3,244,31,208,0,0,2,255,255,128,0,0,0,191,254,0,0,0,0,5,80,0,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x1eb3 ẳ + 179,30,18,34,170,21,1,255,0,1,80,0,0,0,2,254,0,0,0,0,31,0,0,0,0,15,0,0,0,0,190,0,0,0,160,180,40,0,0,244,0,60,0,0,189,1,252,0,0,63,255,244,0,0,15,255,208,0,0,1,169,0,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x1eb4 Ẵ + 180,30,24,39,234,24,0,0,0,0,169,0,176,0,0,3,255,209,240,0,0,7,235,255,208,0,0,11,64,191,128,0,0,0,0,0,0,0,0,5,0,0,80,0,0,11,192,2,224,0,0,7,228,27,208,0,0,2,255,255,128,0,0,0,191,254,0,0,0,0,5,80,0,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255, + // 0x1eb5 ẵ + 181,30,18,34,170,21,1,255,0,10,64,9,0,0,63,248,46,0,0,254,255,252,0,0,240,31,244,0,0,64,0,64,0,0,80,0,20,0,0,240,0,60,0,0,253,1,252,0,0,127,255,244,0,0,31,255,208,0,0,1,169,0,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0, + // 0x1eb6 Ặ + 182,30,24,41,246,24,0,249,0,10,64,0,160,0,0,11,192,1,240,0,0,7,249,111,240,0,0,3,255,255,192,0,0,0,191,255,0,0,0,0,6,144,0,0,0,0,0,0,0,0,0,0,10,160,0,0,0,0,31,248,0,0,0,0,47,252,0,0,0,0,63,253,0,0,0,0,127,254,0,0,0,0,254,191,0,0,0,1,253,63,64,0,0,2,252,63,192,0,0,3,252,47,192,0,0,7,244,15,224,0,0,15,240,15,240,0,0,15,224,11,244,0,0,47,208,3,248,0,0,63,192,3,252,0,0,127,128,1,253,0,0,191,64,0,255,0,0,255,255,255,255,0,1,255,255,255,255,128,3,255,255,255,255,192,3,253,85,85,127,208,11,248,0,0,31,224,15,240,0,0,15,240,31,240,0,0,11,244,47,208,0,0,7,252,63,192,0,0,3,252,127,128,0,0,2,254,255,64,0,0,0,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,128,0,0,0,0,15,240,0,0,0,0,15,244,0,0,0,0,15,244,0,0,0,0,2,208,0,0, + // 0x1eb7 ặ + 183,30,18,35,175,21,1,249,0,160,0,26,0,0,244,0,62,0,0,254,150,253,0,0,127,255,248,0,0,31,255,224,0,0,1,105,0,0,0,0,0,0,0,0,0,20,0,0,0,111,255,228,0,3,255,255,254,0,3,255,255,255,64,1,228,0,255,192,0,0,0,63,192,0,0,0,47,192,0,0,0,47,208,0,0,0,47,208,0,27,255,255,208,2,255,255,255,208,15,255,169,127,208,47,244,0,47,208,63,192,0,47,208,63,192,0,63,208,127,128,0,63,208,63,192,0,191,208,63,224,2,255,208,47,254,191,239,208,15,255,255,79,208,2,255,252,11,208,0,5,64,0,0,0,0,0,0,0,0,0,160,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,1,244,0,0, + // 0x1eb8 Ẹ + 184,30,16,34,136,21,3,249,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253,0,0,0,0,0,0,0,0,0,2,128,0,0,15,240,0,0,15,244,0,0,15,240,0,0,7,208,0, + // 0x1eb9 ẹ + 185,30,18,28,140,21,2,249,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0,0,0,0,0,0,0,0,160,0,0,0,3,252,0,0,0,3,253,0,0,0,3,252,0,0,0,1,244,0,0, + // 0x1eba Ẻ + 186,30,16,37,148,21,3,0,0,21,64,0,0,63,252,0,0,63,255,0,0,0,63,0,0,0,63,0,0,0,191,0,0,11,252,0,0,7,208,0,0,7,192,0,0,0,0,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x1ebb ẻ + 187,30,18,32,160,21,2,255,0,1,84,0,0,0,15,255,64,0,0,15,255,192,0,0,0,15,208,0,0,0,15,208,0,0,0,47,192,0,0,1,255,0,0,0,1,244,0,0,0,0,240,0,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x1ebc Ẽ + 188,30,16,34,136,21,3,0,0,16,0,20,3,255,64,124,15,255,245,252,31,239,255,244,47,1,255,224,24,0,21,0,0,0,0,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x1ebd ẽ + 189,30,18,29,145,21,2,255,0,20,0,5,0,1,255,128,62,0,7,255,249,188,0,15,235,255,252,0,15,0,191,240,0,10,0,6,64,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x1ebe Ế + 190,30,18,36,180,21,3,0,0,0,0,11,240,0,0,0,15,208,0,31,244,63,64,0,63,252,124,0,0,255,255,0,0,2,248,47,128,0,11,208,11,208,0,5,0,0,80,0,0,0,0,0,0,21,85,85,84,0,127,255,255,253,0,127,255,255,253,0,127,255,255,253,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,149,85,84,0,127,255,255,248,0,127,255,255,248,0,127,255,255,248,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,149,85,84,0,127,255,255,253,0,127,255,255,253,0,127,255,255,253,0, + // 0x1ebf ế + 191,30,19,31,155,21,2,255,0,0,0,2,252,0,0,0,3,244,0,6,168,15,208,0,15,255,47,0,0,63,255,128,0,0,190,15,208,0,2,248,2,244,0,2,144,0,100,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x1ec0 Ề + 192,30,18,36,180,21,1,0,254,0,0,0,0,63,0,0,0,0,15,192,255,64,0,3,211,255,192,0,0,11,255,240,0,0,47,194,248,0,0,126,0,126,0,0,84,0,5,0,0,0,0,0,0,1,85,85,85,64,7,255,255,255,208,7,255,255,255,208,7,255,255,255,208,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,249,85,85,64,7,255,255,255,128,7,255,255,255,128,7,255,255,255,128,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,249,85,85,64,7,255,255,255,208,7,255,255,255,208,7,255,255,255,208, + // 0x1ec1 ề + 193,30,19,31,155,21,1,255,253,0,0,0,0,127,0,0,0,0,31,128,170,0,0,7,211,255,192,0,0,11,255,224,0,0,47,195,248,0,0,126,0,189,0,0,164,0,26,0,0,0,0,0,0,0,0,20,0,0,0,11,255,224,0,0,191,255,253,0,2,255,255,255,64,7,253,0,127,192,15,240,0,47,224,31,224,0,15,240,47,208,0,11,240,63,192,0,11,244,63,255,255,255,244,63,255,255,255,244,63,255,255,255,244,63,192,0,0,0,63,192,0,0,0,47,208,0,0,0,31,240,0,0,0,15,248,0,0,0,7,254,0,2,208,2,255,255,255,208,0,191,255,255,208,0,11,255,254,64,0,0,21,64,0, + // 0x1ec2 Ể + 194,30,17,39,195,21,3,0,0,0,0,80,0,0,0,0,255,64,0,0,0,91,192,0,0,0,3,192,0,0,0,31,192,0,31,240,61,0,0,63,252,60,0,0,255,254,0,0,2,248,63,128,0,11,208,11,208,0,5,0,1,80,0,0,0,0,0,0,21,85,85,84,0,127,255,255,253,0,127,255,255,253,0,127,255,255,253,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,149,85,84,0,127,255,255,248,0,127,255,255,248,0,127,255,255,248,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,149,85,84,0,127,255,255,253,0,127,255,255,253,0,127,255,255,253,0, + // 0x1ec3 ể + 195,30,18,33,165,21,2,255,0,0,0,63,192,0,0,0,43,224,0,0,0,1,240,0,0,0,7,224,0,6,168,31,64,0,31,254,30,0,0,63,255,64,0,0,254,15,208,0,2,244,3,240,0,2,128,0,100,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x1ec4 Ễ + 196,30,16,39,156,21,3,0,0,185,0,240,3,255,210,224,11,239,255,208,15,0,191,128,0,0,0,0,0,10,160,0,0,63,252,0,0,191,254,0,2,248,63,64,7,208,11,208,5,0,0,80,0,0,0,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253, + // 0x1ec5 ễ + 197,30,18,34,170,21,2,255,0,42,0,40,0,0,255,224,184,0,2,251,255,240,0,3,192,127,208,0,1,64,1,0,0,0,2,168,0,0,0,15,254,0,0,0,47,255,64,0,0,190,31,208,0,2,248,2,240,0,2,128,0,100,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0, + // 0x1ec6 Ệ + 198,30,16,42,168,21,3,249,0,5,80,0,0,31,252,0,0,63,254,0,0,255,191,128,3,252,31,208,15,224,7,244,10,64,0,168,0,0,0,0,21,85,85,84,127,255,255,253,127,255,255,253,127,255,255,253,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,248,127,255,255,248,127,255,255,248,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,149,85,84,127,255,255,253,127,255,255,253,127,255,255,253,0,0,0,0,0,0,0,0,0,2,128,0,0,15,240,0,0,15,244,0,0,15,240,0,0,7,208,0, + // 0x1ec7 ệ + 199,30,18,36,180,21,2,249,0,1,84,0,0,0,15,253,0,0,0,63,255,0,0,0,191,191,192,0,1,253,15,240,0,7,240,2,252,0,10,128,0,104,0,0,0,0,0,0,0,0,80,0,0,0,47,255,128,0,2,255,255,244,0,11,255,255,253,0,31,244,1,255,0,63,192,0,191,128,127,128,0,63,192,191,64,0,47,192,255,0,0,47,208,255,255,255,255,208,255,255,255,255,208,255,255,255,255,208,255,0,0,0,0,255,0,0,0,0,191,64,0,0,0,127,192,0,0,0,63,224,0,0,0,31,248,0,11,64,11,255,255,255,64,2,255,255,255,64,0,47,255,249,0,0,0,85,0,0,0,0,0,0,0,0,0,160,0,0,0,3,252,0,0,0,3,253,0,0,0,3,252,0,0,0,1,244,0,0, + // 0x1ec8 Ỉ + 200,30,11,37,111,13,1,0,1,164,0,7,255,128,7,255,224,0,7,240,0,7,224,0,31,208,0,255,64,0,252,0,0,188,0,0,0,0,85,85,84,191,255,248,191,255,248,11,255,128,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,2,254,0,47,255,228,191,255,248,191,255,248, + // 0x1ec9 ỉ + 201,30,8,31,62,10,2,0,21,64,255,240,255,252,0,253,0,253,2,252,31,240,31,64,15,0,0,0,0,0,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192, + // 0x1eca Ị + 202,30,11,34,102,13,1,249,85,85,84,191,255,248,191,255,248,11,255,128,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,1,254,0,2,254,0,47,255,228,191,255,248,191,255,248,0,0,0,0,0,0,0,100,0,1,253,0,2,254,0,2,254,0,0,184,0, + // 0x1ecb ị + 203,30,5,35,70,10,3,249,20,0,255,0,255,0,255,0,125,0,0,0,0,0,0,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,0,0,0,0,40,0,255,0,255,64,255,0,125,0, + // 0x1ecc Ọ + 204,30,25,34,238,29,2,249,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0,0,0,0,0,0,0,0,0,0,1,144,0,0,0,0,0,7,244,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,2,224,0,0,0, + // 0x1ecd ọ + 205,30,19,28,140,23,2,249,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0,0,0,0,0,0,0,0,96,0,0,0,3,252,0,0,0,3,253,0,0,0,3,253,0,0,0,0,180,0,0, + // 0x1ece Ỏ + 206,30,25,38,10,29,2,255,0,0,6,144,0,0,0,0,0,31,254,0,0,0,0,0,31,255,128,0,0,0,0,0,31,192,0,0,0,0,0,31,128,0,0,0,0,0,127,64,0,0,0,0,3,253,0,0,0,0,0,3,240,0,0,0,0,0,2,224,0,0,0,0,0,0,0,0,0,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x1ecf ỏ + 207,30,19,32,160,23,2,255,0,1,84,0,0,0,11,255,64,0,0,11,255,192,0,0,0,15,208,0,0,0,11,208,0,0,0,31,192,0,0,0,255,64,0,0,0,248,0,0,0,0,244,0,0,0,0,0,0,0,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x1ed0 Ố + 208,30,25,37,3,29,2,255,0,0,0,0,3,248,0,0,0,0,0,11,224,0,0,0,11,248,31,128,0,0,0,47,254,62,0,0,0,0,127,191,64,0,0,0,0,253,31,192,0,0,0,3,240,3,240,0,0,0,1,64,0,80,0,0,0,0,0,0,0,0,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x1ed1 ố + 209,30,20,31,155,23,2,255,0,0,0,1,253,0,0,0,3,248,0,2,169,11,224,0,15,255,15,64,0,47,255,192,0,0,127,11,224,0,0,248,1,248,0,1,144,0,40,0,0,0,0,0,0,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x1ed2 Ồ + 210,30,25,37,3,29,2,255,11,240,0,0,0,0,0,2,248,0,0,0,0,0,0,189,11,248,0,0,0,0,47,31,254,0,0,0,0,0,127,191,64,0,0,0,0,253,31,192,0,0,0,3,240,3,240,0,0,0,1,64,0,80,0,0,0,0,0,0,0,0,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x1ed3 ồ + 211,30,20,31,155,23,1,255,254,0,0,0,0,63,64,0,0,0,15,192,170,64,0,3,226,255,192,0,0,7,255,240,0,0,31,194,252,0,0,63,0,126,0,0,100,0,10,0,0,0,0,0,0,0,0,4,0,0,0,11,255,244,0,0,191,255,255,0,2,255,255,255,192,7,254,0,127,240,15,244,0,15,244,31,240,0,7,252,47,208,0,3,252,63,192,0,2,253,63,192,0,1,254,63,192,0,1,254,63,192,0,1,254,63,192,0,1,254,63,192,0,2,253,47,208,0,3,252,31,240,0,7,252,15,244,0,15,248,7,254,0,127,240,2,255,255,255,192,0,127,255,255,0,0,11,255,244,0,0,0,21,0,0, + // 0x1ed4 Ổ + 212,30,25,40,24,29,2,255,0,0,0,0,20,0,0,0,0,0,0,127,128,0,0,0,0,0,23,208,0,0,0,0,0,2,224,0,0,0,0,0,7,208,0,0,0,11,248,47,0,0,0,0,47,253,45,0,0,0,0,127,191,64,0,0,0,0,253,31,192,0,0,0,3,240,3,240,0,0,0,1,64,0,80,0,0,0,0,0,0,0,0,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x1ed5 ổ + 213,30,19,33,165,23,2,255,0,0,0,47,208,0,0,0,26,240,0,0,0,0,244,0,0,0,2,240,0,2,169,15,128,0,15,255,15,0,0,47,255,192,0,0,127,11,224,0,0,248,1,248,0,1,144,0,40,0,0,0,0,0,0,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x1ed6 Ỗ + 214,30,25,40,24,29,2,255,0,0,110,0,116,0,0,0,1,255,224,244,0,0,0,3,235,255,240,0,0,0,7,128,127,192,0,0,0,1,0,0,0,0,0,0,0,6,164,0,0,0,0,0,31,253,0,0,0,0,0,63,255,0,0,0,0,0,253,31,192,0,0,0,3,240,3,240,0,0,0,1,64,0,80,0,0,0,0,0,0,0,0,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x1ed7 ỗ + 215,30,19,34,170,23,2,255,0,26,64,28,0,0,191,244,60,0,0,251,255,248,0,2,208,47,240,0,1,64,1,0,0,0,1,168,0,0,0,7,255,0,0,0,31,255,192,0,0,63,75,224,0,0,252,1,248,0,1,144,0,40,0,0,0,0,0,0,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x1ed8 Ộ + 216,30,25,42,38,29,2,249,0,0,1,84,0,0,0,0,0,15,253,0,0,0,0,0,63,255,0,0,0,0,0,191,191,192,0,0,0,2,253,15,224,0,0,0,7,240,3,248,0,0,0,10,128,0,104,0,0,0,0,0,0,0,0,0,0,0,107,250,64,0,0,0,11,255,255,248,0,0,0,127,255,255,255,64,0,1,255,254,175,255,208,0,3,255,128,0,127,240,0,15,252,0,0,15,252,0,31,244,0,0,3,253,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,2,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0,0,0,0,0,0,0,0,0,0,1,144,0,0,0,0,0,7,244,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,2,224,0,0,0, + // 0x1ed9 ộ + 217,30,19,36,180,23,2,249,0,1,84,0,0,0,7,255,0,0,0,15,255,128,0,0,63,239,224,0,0,255,7,248,0,2,248,1,253,0,2,144,0,42,0,0,0,0,0,0,0,0,16,0,0,0,47,255,208,0,2,255,255,252,0,11,255,255,255,0,31,248,1,255,192,63,208,0,63,208,127,192,0,31,240,191,64,0,15,240,255,0,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,0,0,11,244,191,64,0,15,240,127,192,0,31,240,63,208,0,63,224,31,248,1,255,192,11,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0,0,0,0,0,0,0,0,96,0,0,0,3,252,0,0,0,3,253,0,0,0,3,253,0,0,0,0,180,0,0, + // 0x1eda Ớ + 218,30,28,36,252,29,2,255,0,0,0,5,80,0,0,0,0,0,63,240,0,0,0,0,0,127,192,0,0,0,0,0,255,0,0,0,0,0,3,252,0,0,0,0,0,11,240,0,0,0,0,0,10,128,0,0,0,0,0,0,0,0,0,255,0,0,107,234,64,0,255,0,11,255,255,248,1,254,0,127,255,255,255,66,253,1,255,254,175,255,215,252,3,255,128,0,127,255,240,15,252,0,0,15,255,128,31,244,0,0,3,254,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,1,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x1edb ớ + 219,30,23,30,180,24,2,255,0,0,1,84,0,0,0,0,15,248,0,0,0,0,47,224,0,0,0,0,127,128,0,0,0,0,254,0,0,0,0,3,248,0,0,0,0,2,144,0,11,248,0,0,0,0,11,244,0,0,16,0,15,240,0,47,255,208,15,240,2,255,255,252,63,208,11,255,255,255,255,128,31,248,1,255,253,0,63,208,0,63,224,0,127,192,0,15,240,0,191,64,0,15,240,0,255,0,0,11,244,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,11,244,0,191,64,0,15,240,0,127,192,0,15,240,0,63,208,0,63,224,0,31,248,0,255,192,0,11,255,255,255,0,0,1,255,255,252,0,0,0,47,255,208,0,0,0,0,84,0,0,0, + // 0x1edc Ờ + 220,30,28,36,252,29,2,255,0,1,84,0,0,0,0,0,2,255,0,0,0,0,0,0,191,128,0,0,0,0,0,47,208,0,0,0,0,0,11,240,0,0,0,0,0,2,252,0,0,0,0,0,0,104,0,0,0,0,0,0,0,0,0,255,0,0,107,234,64,0,255,0,11,255,255,248,1,254,0,127,255,255,255,66,253,1,255,254,175,255,215,252,3,255,128,0,127,255,240,15,252,0,0,15,255,128,31,244,0,0,3,254,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,1,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x1edd ờ + 221,30,23,30,180,24,2,255,0,85,0,0,0,0,0,255,192,0,0,0,0,63,208,0,0,0,0,15,240,0,0,0,0,3,252,0,0,0,0,0,254,0,0,0,0,0,26,0,11,248,0,0,0,0,11,244,0,0,16,0,15,240,0,47,255,208,15,240,2,255,255,252,63,208,11,255,255,255,255,128,31,248,1,255,253,0,63,208,0,63,224,0,127,192,0,15,240,0,191,64,0,15,240,0,255,0,0,11,244,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,11,244,0,191,64,0,15,240,0,127,192,0,15,240,0,63,208,0,63,224,0,31,248,0,255,192,0,11,255,255,255,0,0,1,255,255,252,0,0,0,47,255,208,0,0,0,0,84,0,0,0, + // 0x1ede Ở + 222,30,28,38,10,29,2,255,0,0,5,80,0,0,0,0,0,47,253,0,0,0,0,0,47,255,0,0,0,0,0,0,63,64,0,0,0,0,0,47,64,0,0,0,0,0,127,0,0,0,0,0,7,253,0,0,0,0,0,3,224,0,0,0,0,0,3,208,0,0,0,0,0,0,0,0,0,255,0,0,107,234,64,0,255,0,11,255,255,248,1,254,0,127,255,255,255,66,253,1,255,254,175,255,215,252,3,255,128,0,127,255,240,15,252,0,0,15,255,128,31,244,0,0,3,254,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,1,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x1edf ở + 223,30,23,32,192,24,2,255,0,5,80,0,0,0,0,15,255,0,0,0,0,15,255,192,0,0,0,0,15,192,0,0,0,0,15,192,0,0,0,0,47,192,0,0,0,2,255,0,0,0,0,1,244,0,0,0,0,1,240,0,11,248,0,0,0,0,11,244,0,0,16,0,15,240,0,47,255,208,15,240,2,255,255,252,63,208,11,255,255,255,255,128,31,248,1,255,253,0,63,208,0,63,224,0,127,192,0,15,240,0,191,64,0,15,240,0,255,0,0,11,244,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,11,244,0,191,64,0,15,240,0,127,192,0,15,240,0,63,208,0,63,224,0,31,248,0,255,192,0,11,255,255,255,0,0,1,255,255,252,0,0,0,47,255,208,0,0,0,0,84,0,0,0, + // 0x1ee0 Ỡ + 224,30,28,35,245,29,2,255,0,0,20,0,20,0,0,0,2,255,128,61,0,0,0,11,255,249,252,0,0,0,15,235,255,248,0,0,0,31,0,191,240,0,0,0,25,0,6,64,0,0,0,0,0,0,0,0,255,0,0,107,234,64,0,255,0,11,255,255,248,1,254,0,127,255,255,255,66,253,1,255,254,175,255,215,252,3,255,128,0,127,255,240,15,252,0,0,15,255,128,31,244,0,0,3,254,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,1,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0, + // 0x1ee1 ỡ + 225,30,23,29,174,24,2,255,0,4,0,5,0,0,0,255,208,15,0,0,3,255,253,127,0,0,7,251,255,253,0,0,11,192,127,248,0,0,6,64,5,64,11,248,0,0,0,0,11,244,0,0,16,0,15,240,0,47,255,208,15,240,2,255,255,252,63,208,11,255,255,255,255,128,31,248,1,255,253,0,63,208,0,63,224,0,127,192,0,15,240,0,191,64,0,15,240,0,255,0,0,11,244,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,11,244,0,191,64,0,15,240,0,127,192,0,15,240,0,63,208,0,63,224,0,31,248,0,255,192,0,11,255,255,255,0,0,1,255,255,252,0,0,0,47,255,208,0,0,0,0,84,0,0,0, + // 0x1ee2 Ợ + 226,30,28,35,245,29,2,249,0,0,0,0,0,0,255,0,0,107,234,64,0,255,0,11,255,255,248,1,254,0,127,255,255,255,66,253,1,255,254,175,255,215,252,3,255,128,0,127,255,240,15,252,0,0,15,255,128,31,244,0,0,3,254,0,63,224,0,0,2,255,0,63,208,0,0,0,255,0,127,192,0,0,0,255,64,191,128,0,0,0,191,128,191,128,0,0,0,191,128,191,128,0,0,0,127,192,255,64,0,0,0,127,192,255,64,0,0,0,127,192,191,128,0,0,0,127,128,191,128,0,0,0,191,128,127,192,0,0,0,255,64,63,192,0,0,0,255,64,63,208,0,0,1,255,0,47,240,0,0,3,254,0,15,248,0,0,11,252,0,11,254,0,0,47,248,0,3,255,224,1,255,240,0,0,255,255,255,255,192,0,0,47,255,255,254,0,0,0,2,255,255,224,0,0,0,0,5,84,0,0,0,0,0,0,0,0,0,0,0,0,1,144,0,0,0,0,0,11,244,0,0,0,0,0,15,248,0,0,0,0,0,11,248,0,0,0,0,0,2,224,0,0,0, + // 0x1ee3 ợ + 227,30,23,30,180,24,2,249,0,0,0,0,11,248,0,0,0,0,11,244,0,0,16,0,15,240,0,47,255,208,15,240,2,255,255,252,63,208,11,255,255,255,255,128,31,248,1,255,253,0,63,208,0,63,224,0,127,192,0,15,240,0,191,64,0,15,240,0,255,0,0,11,244,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,11,244,0,191,64,0,15,240,0,127,192,0,15,240,0,63,208,0,63,224,0,31,248,0,255,192,0,11,255,255,255,0,0,1,255,255,252,0,0,0,47,255,208,0,0,0,0,84,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,2,252,0,0,0,0,3,253,0,0,0,0,3,253,0,0,0,0,0,180,0,0,0, + // 0x1ee4 Ụ + 228,30,21,34,204,27,3,249,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,254,0,0,0,0,21,64,0,0,0,0,0,0,0,0,0,0,25,0,0,0,0,0,127,128,0,0,0,0,191,192,0,0,0,0,127,128,0,0,0,0,46,0,0,0, + // 0x1ee5 ụ + 229,30,17,27,135,23,3,249,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,0,0,0,0,0,0,0,0,2,128,0,0,0,15,240,0,0,0,15,244,0,0,0,15,240,0,0,0,7,208,0,0, + // 0x1ee6 Ủ + 230,30,21,38,228,27,3,255,0,0,105,0,0,0,0,1,255,224,0,0,0,1,255,244,0,0,0,0,1,252,0,0,0,0,1,248,0,0,0,0,7,244,0,0,0,0,63,208,0,0,0,0,63,0,0,0,0,0,46,0,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,64,0,0,63,192,191,128,0,0,63,192,127,192,0,0,127,128,63,208,0,0,255,64,47,240,0,2,255,0,15,254,64,31,253,0,7,255,255,255,244,0,0,255,255,255,208,0,0,31,255,254,0,0,0,0,21,64,0,0, + // 0x1ee7 ủ + 231,30,17,32,160,23,3,255,0,5,80,0,0,0,31,254,0,0,0,31,255,64,0,0,0,47,128,0,0,0,31,128,0,0,0,127,64,0,0,3,253,0,0,0,3,240,0,0,0,3,224,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,47,192,255,0,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,128,0,255,192,191,208,7,255,192,63,255,255,239,192,31,255,255,79,192,2,255,248,15,192,0,21,0,0,0, + // 0x1ee8 Ứ + 232,30,28,36,252,30,3,255,0,0,0,85,0,0,0,0,0,2,255,0,0,0,0,0,7,252,0,0,0,0,0,15,240,0,0,0,0,0,47,192,0,0,0,0,0,127,0,0,0,0,0,0,104,0,0,0,0,0,0,0,0,0,0,255,85,0,0,0,21,65,255,191,64,0,0,63,194,253,191,64,0,0,63,195,252,191,64,0,0,63,203,248,191,64,0,0,63,255,224,191,64,0,0,63,255,128,191,64,0,0,63,228,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,127,192,0,0,127,128,0,63,208,0,0,255,64,0,47,240,0,2,255,0,0,15,254,64,31,253,0,0,3,255,255,255,248,0,0,0,255,255,255,208,0,0,0,31,255,254,0,0,0,0,0,21,64,0,0,0, + // 0x1ee9 ứ + 233,30,24,30,180,26,3,255,0,0,5,80,0,0,0,0,47,240,0,0,0,0,127,192,0,0,0,0,255,0,0,0,0,2,252,0,0,0,0,7,240,0,0,0,0,10,128,0,0,255,0,0,0,0,0,255,0,0,0,0,1,254,255,0,0,47,194,253,255,0,0,47,199,252,255,0,0,47,255,240,255,0,0,47,255,192,255,0,0,47,249,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,127,192,0,255,128,0,255,192,0,191,208,7,255,192,0,63,255,255,239,192,0,31,255,255,79,192,0,2,255,248,15,192,0,0,21,0,0,0,0, + // 0x1eea Ừ + 234,30,28,36,252,30,3,255,0,21,80,0,0,0,0,0,31,240,0,0,0,0,0,11,252,0,0,0,0,0,2,254,0,0,0,0,0,0,191,64,0,0,0,0,0,31,192,0,0,0,0,0,6,144,0,0,0,0,0,0,0,0,0,255,85,0,0,0,21,65,255,191,64,0,0,63,194,253,191,64,0,0,63,195,252,191,64,0,0,63,203,248,191,64,0,0,63,255,224,191,64,0,0,63,255,128,191,64,0,0,63,228,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,127,192,0,0,127,128,0,63,208,0,0,255,64,0,47,240,0,2,255,0,0,15,254,64,31,253,0,0,3,255,255,255,248,0,0,0,255,255,255,208,0,0,0,31,255,254,0,0,0,0,0,21,64,0,0,0, + // 0x1eeb ừ + 235,30,24,30,180,26,3,255,1,85,0,0,0,0,1,255,0,0,0,0,0,191,192,0,0,0,0,47,208,0,0,0,0,11,240,0,0,0,0,1,252,0,0,0,0,0,105,0,0,255,0,0,0,0,0,255,0,0,0,0,1,254,255,0,0,47,194,253,255,0,0,47,199,252,255,0,0,47,255,240,255,0,0,47,255,192,255,0,0,47,249,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,127,192,0,255,128,0,255,192,0,191,208,7,255,192,0,63,255,255,239,192,0,31,255,255,79,192,0,2,255,248,15,192,0,0,21,0,0,0,0, + // 0x1eec Ử + 236,30,28,38,10,30,3,255,0,0,105,64,0,0,0,0,0,255,240,0,0,0,0,0,255,248,0,0,0,0,0,1,252,0,0,0,0,0,0,252,0,0,0,0,0,7,248,0,0,0,0,0,63,224,0,0,0,0,0,47,0,0,0,0,0,0,47,0,0,0,0,0,0,0,0,0,0,255,85,0,0,0,21,65,255,191,64,0,0,63,194,253,191,64,0,0,63,195,252,191,64,0,0,63,203,248,191,64,0,0,63,255,224,191,64,0,0,63,255,128,191,64,0,0,63,228,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,127,192,0,0,127,128,0,63,208,0,0,255,64,0,47,240,0,2,255,0,0,15,254,64,31,253,0,0,3,255,255,255,248,0,0,0,255,255,255,208,0,0,0,31,255,254,0,0,0,0,0,21,64,0,0,0, + // 0x1eed ử + 237,30,24,32,192,26,3,255,0,5,80,0,0,0,0,31,254,0,0,0,0,31,255,64,0,0,0,0,47,128,0,0,0,0,31,128,0,0,0,0,127,64,0,0,0,3,254,0,0,0,0,3,240,0,0,0,0,3,224,0,0,255,0,0,0,0,0,255,0,0,0,0,1,254,255,0,0,47,194,253,255,0,0,47,199,252,255,0,0,47,255,240,255,0,0,47,255,192,255,0,0,47,249,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,127,192,0,255,128,0,255,192,0,191,208,7,255,192,0,63,255,255,239,192,0,31,255,255,79,192,0,2,255,248,15,192,0,0,21,0,0,0,0, + // 0x1eee Ữ + 238,30,28,35,245,30,3,255,0,1,64,0,80,0,0,0,31,248,3,224,0,0,0,127,255,155,192,0,0,0,254,191,255,192,0,0,0,240,11,255,0,0,0,0,160,0,100,0,0,0,0,0,0,0,0,0,255,85,0,0,0,21,65,255,191,64,0,0,63,194,253,191,64,0,0,63,195,252,191,64,0,0,63,203,248,191,64,0,0,63,255,224,191,64,0,0,63,255,128,191,64,0,0,63,228,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,127,192,0,0,127,128,0,63,208,0,0,255,64,0,47,240,0,2,255,0,0,15,254,64,31,253,0,0,3,255,255,255,248,0,0,0,255,255,255,208,0,0,0,31,255,254,0,0,0,0,0,21,64,0,0,0, + // 0x1eef ữ + 239,30,24,29,174,26,3,255,0,20,0,4,0,0,2,255,128,61,0,0,7,255,249,188,0,0,15,235,255,248,0,0,15,0,191,240,0,0,9,0,6,64,0,255,0,0,0,0,0,255,0,0,0,0,1,254,255,0,0,47,194,253,255,0,0,47,199,252,255,0,0,47,255,240,255,0,0,47,255,192,255,0,0,47,249,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,127,192,0,255,128,0,255,192,0,191,208,7,255,192,0,63,255,255,239,192,0,31,255,255,79,192,0,2,255,248,15,192,0,0,21,0,0,0,0, + // 0x1ef0 Ự + 240,30,28,35,245,30,3,249,0,0,0,0,0,0,255,85,0,0,0,21,65,255,191,64,0,0,63,194,253,191,64,0,0,63,195,252,191,64,0,0,63,203,248,191,64,0,0,63,255,224,191,64,0,0,63,255,128,191,64,0,0,63,228,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,191,64,0,0,63,192,0,127,192,0,0,127,128,0,63,208,0,0,255,64,0,47,240,0,2,255,0,0,15,254,64,31,253,0,0,3,255,255,255,248,0,0,0,255,255,255,208,0,0,0,31,255,254,0,0,0,0,0,21,64,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,0,0,0,127,128,0,0,0,0,0,127,192,0,0,0,0,0,127,192,0,0,0,0,0,46,0,0,0,0, + // 0x1ef1 ự + 241,30,24,30,180,26,3,249,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,1,254,255,0,0,47,194,253,255,0,0,47,199,252,255,0,0,47,255,240,255,0,0,47,255,192,255,0,0,47,249,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,47,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,127,192,0,255,128,0,255,192,0,191,208,7,255,192,0,63,255,255,239,192,0,31,255,255,79,192,0,2,255,248,15,192,0,0,21,0,0,0,0,0,0,0,0,0,0,0,2,128,0,0,0,0,15,240,0,0,0,0,15,244,0,0,0,0,15,240,0,0,0,0,7,208,0,0,0, + // 0x1ef2 Ỳ + 242,30,21,35,210,22,0,0,0,5,80,0,0,0,0,15,244,0,0,0,0,7,252,0,0,0,0,1,255,0,0,0,0,0,127,64,0,0,0,0,15,208,0,0,0,0,2,144,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,192,0,0,63,192,63,208,0,0,191,128,31,240,0,1,255,0,15,244,0,3,253,0,7,252,0,7,252,0,3,253,0,15,244,0,1,255,0,31,240,0,0,191,64,63,208,0,0,63,192,127,128,0,0,47,224,255,0,0,0,15,241,254,0,0,0,11,251,252,0,0,0,3,255,248,0,0,0,1,255,240,0,0,0,0,255,208,0,0,0,0,127,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x1ef3 ỳ + 243,30,20,38,190,20,0,247,0,21,64,0,0,0,63,208,0,0,0,31,240,0,0,0,7,252,0,0,0,1,253,0,0,0,0,127,0,0,0,0,10,64,0,0,0,0,0,0,0,0,0,0,0,191,64,0,3,253,127,192,0,3,252,63,192,0,11,248,47,224,0,15,240,15,240,0,31,240,15,240,0,47,208,7,248,0,63,192,3,252,0,127,128,2,253,0,191,64,0,254,0,255,0,0,255,1,254,0,0,127,66,252,0,0,63,195,252,0,0,47,199,244,0,0,15,219,240,0,0,15,239,224,0,0,7,255,208,0,0,3,255,192,0,0,2,255,128,0,0,0,255,0,0,0,0,255,0,0,0,2,253,0,0,0,3,252,0,0,0,7,248,0,0,0,31,240,0,0,21,191,224,0,0,127,255,128,0,0,127,254,0,0,0,47,224,0,0,0, + // 0x1ef4 Ỵ + 244,30,21,34,204,22,0,249,85,0,0,0,21,64,191,192,0,0,63,192,63,208,0,0,191,128,31,240,0,1,255,0,15,244,0,3,253,0,7,252,0,7,252,0,3,253,0,15,244,0,1,255,0,31,240,0,0,191,64,63,208,0,0,63,192,127,128,0,0,47,224,255,0,0,0,15,241,254,0,0,0,11,251,252,0,0,0,3,255,248,0,0,0,1,255,240,0,0,0,0,255,208,0,0,0,0,127,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,0,0,127,128,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,46,0,0,0, + // 0x1ef5 ỵ + 245,30,20,29,145,20,0,247,191,64,0,3,253,127,192,0,3,252,63,192,0,11,248,47,224,0,15,240,15,240,0,31,240,15,240,0,47,208,7,248,0,63,192,3,252,0,127,128,2,253,0,191,64,0,254,0,255,0,0,255,1,254,0,0,127,66,252,0,0,63,195,252,0,0,47,199,244,0,0,15,219,240,0,0,15,239,224,0,0,7,255,208,0,0,3,255,192,0,0,2,255,128,0,0,0,255,0,0,0,0,255,0,0,0,2,253,0,0,0,3,252,10,0,0,7,248,63,192,0,31,240,63,192,21,191,224,63,192,127,255,128,31,64,127,254,0,0,0,47,224,0,0,0, + // 0x1ef6 Ỷ + 246,30,21,37,222,22,0,0,0,0,105,64,0,0,0,0,255,240,0,0,0,0,255,248,0,0,0,0,1,252,0,0,0,0,0,252,0,0,0,0,7,248,0,0,0,0,63,224,0,0,0,0,47,0,0,0,0,0,47,0,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,192,0,0,63,192,63,208,0,0,191,128,31,240,0,1,255,0,15,244,0,3,253,0,7,252,0,7,252,0,3,253,0,15,244,0,1,255,0,31,240,0,0,191,64,63,208,0,0,63,192,127,128,0,0,47,224,255,0,0,0,15,241,254,0,0,0,11,251,252,0,0,0,3,255,248,0,0,0,1,255,240,0,0,0,0,255,208,0,0,0,0,127,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x1ef7 ỷ + 247,30,20,40,200,20,0,247,0,1,84,0,0,0,7,255,128,0,0,7,255,224,0,0,0,7,240,0,0,0,3,240,0,0,0,31,224,0,0,0,255,128,0,0,0,252,0,0,0,0,188,0,0,0,0,0,0,0,0,0,0,0,0,191,64,0,3,253,127,192,0,3,252,63,192,0,11,248,47,224,0,15,240,15,240,0,31,240,15,240,0,47,208,7,248,0,63,192,3,252,0,127,128,2,253,0,191,64,0,254,0,255,0,0,255,1,254,0,0,127,66,252,0,0,63,195,252,0,0,47,199,244,0,0,15,219,240,0,0,15,239,224,0,0,7,255,208,0,0,3,255,192,0,0,2,255,128,0,0,0,255,0,0,0,0,255,0,0,0,2,253,0,0,0,3,252,0,0,0,7,248,0,0,0,31,240,0,0,21,191,224,0,0,127,255,128,0,0,127,254,0,0,0,47,224,0,0,0, + // 0x1ef8 Ỹ + 248,30,21,34,204,22,0,0,0,1,64,0,80,0,0,31,248,2,224,0,0,127,255,155,208,0,0,254,191,255,192,0,0,244,11,255,0,0,0,160,0,100,0,0,0,0,0,0,0,0,85,0,0,0,21,64,191,192,0,0,63,192,63,208,0,0,191,128,31,240,0,1,255,0,15,244,0,3,253,0,7,252,0,7,252,0,3,253,0,15,244,0,1,255,0,31,240,0,0,191,64,63,208,0,0,63,192,127,128,0,0,47,224,255,0,0,0,15,241,254,0,0,0,11,251,252,0,0,0,3,255,248,0,0,0,1,255,240,0,0,0,0,255,208,0,0,0,0,127,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x1ef9 ỹ + 249,30,20,37,185,20,0,247,0,5,0,1,64,0,127,224,11,128,1,255,254,111,64,3,250,255,255,0,3,208,47,252,0,2,128,1,144,0,0,0,0,0,0,0,0,0,0,0,191,64,0,3,253,127,192,0,3,252,63,192,0,11,248,47,224,0,15,240,15,240,0,31,240,15,240,0,47,208,7,248,0,63,192,3,252,0,127,128,2,253,0,191,64,0,254,0,255,0,0,255,1,254,0,0,127,66,252,0,0,63,195,252,0,0,47,199,244,0,0,15,219,240,0,0,15,239,224,0,0,7,255,208,0,0,3,255,192,0,0,2,255,128,0,0,0,255,0,0,0,0,255,0,0,0,2,253,0,0,0,3,252,0,0,0,7,248,0,0,0,31,240,0,0,21,191,224,0,0,127,255,128,0,0,127,254,0,0,0,47,224,0,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_28.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_28.cpp new file mode 100644 index 000000000000..e2e797a26bf0 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_28.cpp @@ -0,0 +1,416 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium 38pt, capital 'A' height: 28px, width: 100%, range: 0x0020-0x00ff +extern const uint8_t NotoSans_Medium_28[25661] = { + 130,28,32,0,255,0,37,246, // unifont_t + // 0x0020 " " + 0,0,0,10,0,0, + // 0x0021 ! + 6,28,56,10,2,255,63,224,63,224,63,208,63,208,63,208,63,208,63,208,63,192,47,192,47,192,47,192,47,192,47,192,31,192,31,192,31,192,31,192,31,128,15,128,0,0,0,0,0,0,31,128,63,224,127,224,127,224,63,208,5,0, + // 0x0022 " + 12,10,30,16,2,17,127,65,254,127,64,254,127,64,254,127,64,253,63,0,253,63,0,253,63,0,252,63,0,188,63,0,188,42,0,104, + // 0x0023 # + 23,27,162,25,1,0,0,0,253,0,253,0,0,0,252,0,252,0,0,0,252,0,252,0,0,1,248,1,248,0,0,2,248,2,248,0,0,3,244,2,244,0,0,3,240,3,240,0,0,7,240,7,240,0,47,255,255,255,255,248,47,255,255,255,255,248,26,175,250,175,250,164,0,15,192,15,192,0,0,15,192,15,192,0,0,31,192,31,192,0,0,31,128,47,128,0,0,47,64,47,64,0,255,255,255,255,255,192,255,255,255,255,255,208,255,255,255,255,255,208,0,190,0,190,0,0,0,189,0,189,0,0,0,252,0,252,0,0,0,252,0,252,0,0,0,252,1,252,0,0,1,248,1,248,0,0,2,244,2,244,0,0,2,244,3,244,0,0, + // 0x0024 $ + 18,32,160,22,2,253,0,1,240,0,0,0,1,240,0,0,0,1,240,0,0,0,27,250,80,0,2,255,255,255,64,15,255,255,255,192,63,255,255,255,64,127,209,240,27,0,255,65,240,0,0,255,1,240,0,0,255,65,240,0,0,191,193,240,0,0,63,250,240,0,0,47,255,240,0,0,7,255,255,64,0,0,191,255,244,0,0,7,255,255,0,0,1,255,255,192,0,1,240,191,208,0,1,240,47,224,0,1,240,15,240,0,1,240,31,224,144,1,240,63,208,254,81,246,255,192,255,255,255,255,64,255,255,255,252,0,27,255,255,144,0,0,2,240,0,0,0,1,240,0,0,0,1,240,0,0,0,1,240,0,0,0,0,0,0,0, + // 0x0025 % + 30,29,232,32,1,255,0,21,0,0,0,0,0,0,2,255,224,0,0,127,0,0,11,255,248,0,0,253,0,0,31,230,253,0,1,252,0,0,47,128,190,0,3,244,0,0,63,64,127,0,11,240,0,0,63,0,63,0,15,208,0,0,127,0,63,64,47,128,0,0,127,0,63,64,63,0,0,0,127,0,63,64,254,0,0,0,127,0,63,65,252,0,0,0,63,0,63,3,244,6,144,0,63,64,127,7,240,191,252,0,47,128,190,15,210,255,255,0,15,230,253,47,195,248,127,128,11,255,248,63,71,240,31,192,2,255,224,190,11,224,15,208,0,21,0,252,15,208,15,224,0,0,3,248,15,208,11,224,0,0,7,240,15,208,11,224,0,0,15,224,15,208,11,224,0,0,31,192,15,208,11,224,0,0,63,64,15,224,15,208,0,0,191,0,11,224,15,208,0,0,253,0,7,240,47,192,0,2,248,0,3,254,191,128,0,3,240,0,0,255,255,0,0,15,224,0,0,127,248,0,0,0,0,0,0,1,64,0, + // 0x0026 & + 26,29,203,28,2,255,0,1,101,0,0,0,0,0,47,255,224,0,0,0,0,255,255,252,0,0,0,3,255,239,255,0,0,0,7,253,1,255,0,0,0,11,244,0,191,64,0,0,11,240,0,127,64,0,0,11,244,0,191,64,0,0,7,248,0,255,0,0,0,3,253,3,254,0,0,0,1,255,31,252,0,0,0,0,191,255,240,0,0,0,0,63,255,128,0,0,0,0,127,253,0,0,0,0,2,255,255,0,0,191,64,15,254,255,192,0,255,0,63,244,63,240,1,254,0,127,208,15,252,3,253,0,255,128,3,255,3,252,0,255,0,0,255,223,244,0,255,0,0,63,255,240,0,255,0,0,15,255,192,0,255,128,0,3,255,128,0,191,208,0,15,255,208,0,127,249,1,191,255,244,0,47,255,255,255,223,253,0,11,255,255,254,3,255,64,0,191,255,224,0,255,208,0,1,80,0,0,0,0, + // 0x0027 ' + 5,10,20,9,2,17,127,64,127,64,127,64,127,64,63,0,63,0,63,0,63,0,63,0,42,0, + // 0x0028 ( + 10,33,99,12,1,250,0,31,208,0,63,128,0,255,0,1,253,0,3,252,0,7,248,0,11,240,0,15,240,0,31,208,0,47,192,0,63,192,0,63,192,0,63,128,0,127,128,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,128,0,63,128,0,63,192,0,63,192,0,47,192,0,31,224,0,15,240,0,11,240,0,7,248,0,3,252,0,1,253,0,0,191,0,0,63,128,0,31,208, + // 0x0029 ) + 10,33,99,12,1,250,127,0,0,63,192,0,15,224,0,11,240,0,3,248,0,2,252,0,1,254,0,0,255,0,0,191,0,0,127,64,0,63,128,0,63,192,0,63,192,0,47,192,0,47,208,0,47,208,0,47,208,0,47,208,0,47,208,0,47,192,0,63,192,0,63,192,0,63,128,0,127,128,0,191,0,0,255,0,1,254,0,2,252,0,3,248,0,11,240,0,15,224,0,63,192,0,127,0,0, + // 0x002a * + 19,18,90,21,1,11,0,2,253,0,0,0,2,252,0,0,0,1,252,0,0,0,1,252,0,0,0,0,252,0,0,36,0,252,0,96,63,208,248,111,240,127,255,255,255,240,127,255,255,255,244,5,107,255,149,64,0,7,255,0,0,0,15,239,192,0,0,63,143,224,0,0,191,7,244,0,1,255,3,252,0,3,253,1,254,0,0,124,0,244,0,0,0,0,0,0, + // 0x002b + + 18,19,95,22,2,4,0,1,160,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,0,3,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0, + // 0x002c , + 7,10,20,10,1,251,5,80,15,248,15,240,15,240,31,224,47,192,63,192,63,64,63,0,126,0, + // 0x002d - + 10,4,12,12,1,8,191,255,224,191,255,240,191,255,240,106,170,144, + // 0x002e . + 6,6,12,10,2,255,31,128,63,224,127,224,127,224,63,208,5,0, + // 0x002f / + 14,27,108,15,0,0,0,0,15,240,0,0,15,224,0,0,47,208,0,0,63,192,0,0,127,128,0,0,191,0,0,0,255,0,0,1,253,0,0,3,252,0,0,3,248,0,0,11,244,0,0,15,240,0,0,31,224,0,0,47,192,0,0,63,192,0,0,127,64,0,0,191,0,0,0,254,0,0,1,253,0,0,3,252,0,0,3,248,0,0,11,240,0,0,15,240,0,0,31,208,0,0,47,192,0,0,63,128,0,0,127,64,0,0, + // 0x0030 0 + 19,29,145,22,1,255,0,1,101,0,0,0,47,255,240,0,0,255,255,253,0,3,255,255,255,64,7,254,0,191,192,15,244,0,63,208,31,240,0,15,240,47,224,0,15,240,63,208,0,11,244,63,192,0,7,248,63,192,0,7,252,63,192,0,3,252,63,192,0,3,252,127,192,0,3,252,127,128,0,3,252,127,192,0,3,252,63,192,0,3,252,63,192,0,3,252,63,192,0,7,252,63,192,0,7,248,47,208,0,11,244,31,224,0,15,240,15,240,0,31,240,11,248,0,63,208,3,254,1,255,192,1,255,255,255,64,0,191,255,253,0,0,27,255,224,0,0,0,20,0,0, + // 0x0031 1 + 11,27,81,22,3,0,0,3,252,0,31,252,0,191,252,2,255,252,15,255,252,127,227,252,191,131,252,45,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252, + // 0x0032 2 + 19,28,140,22,1,0,0,1,101,0,0,0,127,255,244,0,7,255,255,254,0,47,255,255,255,128,47,244,1,255,192,11,128,0,63,224,1,0,0,31,240,0,0,0,15,240,0,0,0,15,240,0,0,0,31,240,0,0,0,47,224,0,0,0,63,192,0,0,0,191,128,0,0,1,255,0,0,0,3,253,0,0,0,15,248,0,0,0,63,224,0,0,0,255,128,0,0,3,254,0,0,0,15,248,0,0,0,63,224,0,0,0,255,128,0,0,3,254,0,0,0,15,248,0,0,0,63,250,170,170,168,127,255,255,255,252,127,255,255,255,252,127,255,255,255,252, + // 0x0033 3 + 19,29,145,22,1,255,0,1,85,0,0,1,191,255,244,0,15,255,255,255,0,63,255,255,255,192,31,224,0,191,208,10,0,0,63,224,0,0,0,31,240,0,0,0,15,240,0,0,0,15,240,0,0,0,47,224,0,0,0,63,192,0,0,1,255,64,0,42,191,253,0,0,63,255,208,0,0,63,255,248,0,0,42,191,255,128,0,0,0,191,224,0,0,0,31,240,0,0,0,15,248,0,0,0,11,248,0,0,0,7,248,0,0,0,11,248,0,0,0,15,244,16,0,0,63,240,126,64,1,255,224,127,255,255,255,192,127,255,255,254,0,11,255,255,224,0,0,5,80,0,0, + // 0x0034 4 + 20,28,140,22,1,0,0,0,0,21,0,0,0,1,255,64,0,0,3,255,64,0,0,11,255,64,0,0,31,255,64,0,0,63,191,64,0,0,191,191,64,0,1,252,191,64,0,3,244,191,64,0,15,240,191,64,0,31,192,191,64,0,63,64,191,64,0,254,0,191,64,2,252,0,191,64,7,244,0,191,64,15,224,0,191,64,47,192,0,191,64,127,64,0,191,64,255,85,85,255,149,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64, + // 0x0035 5 + 18,28,140,22,2,255,15,255,255,255,0,31,255,255,255,0,31,255,255,255,0,31,229,85,85,0,31,208,0,0,0,47,192,0,0,0,47,192,0,0,0,47,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,235,249,0,0,63,255,255,240,0,63,255,255,253,0,31,234,175,255,64,0,0,1,255,192,0,0,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,224,0,0,0,31,224,0,0,0,47,208,0,0,0,63,192,64,0,0,255,192,254,64,27,255,0,255,255,255,253,0,255,255,255,244,0,31,255,255,64,0,0,21,64,0,0, + // 0x0036 6 + 18,29,145,22,2,255,0,0,5,85,0,0,2,255,255,0,0,47,255,255,0,0,255,255,255,0,3,255,128,0,0,11,252,0,0,0,15,240,0,0,0,47,208,0,0,0,63,192,0,0,0,127,128,0,0,0,191,64,0,0,0,255,6,255,224,0,255,47,255,253,0,255,191,255,255,64,255,249,1,255,192,255,208,0,63,208,255,128,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,191,0,0,15,240,127,128,0,15,240,63,192,0,31,224,47,224,0,63,208,15,253,1,255,192,7,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x0037 7 + 19,27,135,22,1,0,191,255,255,255,252,191,255,255,255,252,191,255,255,255,252,21,85,85,91,248,0,0,0,15,244,0,0,0,15,240,0,0,0,47,208,0,0,0,63,192,0,0,0,191,128,0,0,0,255,0,0,0,2,254,0,0,0,3,252,0,0,0,7,248,0,0,0,15,244,0,0,0,31,240,0,0,0,63,208,0,0,0,127,192,0,0,0,191,64,0,0,0,255,0,0,0,2,254,0,0,0,3,252,0,0,0,11,248,0,0,0,15,244,0,0,0,31,240,0,0,0,63,208,0,0,0,127,192,0,0,0,255,64,0,0, + // 0x0038 8 + 19,29,145,22,1,255,0,1,85,0,0,0,47,255,248,0,1,255,255,255,0,7,255,235,255,192,15,248,0,127,224,31,240,0,15,240,31,224,0,15,240,31,208,0,15,240,31,224,0,15,240,15,240,0,31,224,7,253,0,127,192,2,255,131,255,0,0,191,255,252,0,0,31,255,208,0,0,63,255,244,0,1,255,239,255,0,11,253,1,255,192,31,240,0,63,240,63,208,0,15,244,63,192,0,3,252,63,128,0,3,252,127,128,0,3,252,63,192,0,3,252,63,208,0,11,248,31,248,0,47,240,15,255,255,255,208,2,255,255,255,64,0,111,255,248,0,0,0,84,0,0, + // 0x0039 9 + 19,29,145,22,1,255,0,1,85,0,0,0,47,255,224,0,1,255,255,253,0,7,255,255,255,64,15,253,1,255,192,31,240,0,63,224,63,192,0,15,240,63,192,0,11,244,63,128,0,7,248,127,128,0,3,248,63,128,0,3,252,63,192,0,7,252,63,192,0,15,252,47,240,0,47,252,15,253,1,255,252,7,255,255,247,252,1,255,255,211,248,0,47,254,7,248,0,0,0,7,244,0,0,0,11,240,0,0,0,15,240,0,0,0,47,208,0,0,0,127,192,0,0,1,255,64,0,0,31,254,0,7,255,255,248,0,7,255,255,208,0,7,255,253,0,0,0,85,0,0,0, + // 0x003a : + 6,22,44,10,2,255,31,128,63,224,127,224,127,224,63,208,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,128,63,224,127,224,127,224,63,208,5,0, + // 0x003b ; + 7,26,52,10,1,251,7,224,15,244,31,248,31,248,15,240,1,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,80,15,244,15,240,31,224,47,208,63,192,63,128,63,0,126,0,189,0, + // 0x003c < + 18,19,95,22,2,4,0,0,0,0,176,0,0,0,11,240,0,0,0,191,240,0,0,11,255,144,0,0,191,248,0,0,11,255,128,0,0,191,248,0,0,11,255,128,0,0,191,244,0,0,0,255,128,0,0,0,255,244,0,0,0,47,255,128,0,0,1,255,249,0,0,0,31,255,208,0,0,0,191,254,0,0,0,11,255,224,0,0,0,127,240,0,0,0,6,240,0,0,0,0,32, + // 0x003d = + 18,11,55,22,2,8,170,170,170,170,144,255,255,255,255,224,255,255,255,255,224,85,85,85,85,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,224,255,255,255,255,224,255,255,255,255,224, + // 0x003e > + 18,19,95,22,2,4,208,0,0,0,0,253,0,0,0,0,255,208,0,0,0,127,253,0,0,0,7,255,208,0,0,0,127,253,0,0,0,2,255,208,0,0,0,47,253,0,0,0,2,255,208,0,0,0,63,240,0,0,1,255,240,0,0,47,255,64,0,7,255,244,0,0,191,254,0,0,27,255,224,0,0,255,253,0,0,0,255,144,0,0,0,248,0,0,0,0,64,0,0,0,0, + // 0x003f ? + 16,29,116,17,0,255,0,21,84,0,7,255,255,128,127,255,255,240,63,255,255,252,47,64,7,253,4,0,1,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,1,254,0,0,3,252,0,0,31,248,0,0,127,224,0,2,255,128,0,7,253,0,0,15,240,0,0,31,208,0,0,47,192,0,0,47,128,0,0,47,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,128,0,0,127,208,0,0,127,224,0,0,127,224,0,0,63,192,0,0,5,0,0, + // 0x0040 @ + 30,31,248,34,2,252,0,0,2,255,255,144,0,0,0,0,127,255,255,253,0,0,0,3,255,254,191,255,192,0,0,31,253,0,0,127,240,0,0,127,208,0,0,7,252,0,1,254,0,0,0,0,255,0,3,248,0,0,0,0,63,64,11,240,0,43,249,64,47,192,15,192,2,255,255,240,15,208,47,128,15,255,255,240,11,224,63,0,63,208,11,240,7,240,127,0,191,64,11,240,3,240,190,0,254,0,11,224,3,240,189,0,252,0,11,224,3,240,253,1,252,0,11,224,3,240,253,1,252,0,15,224,3,240,253,1,252,0,15,224,7,224,253,1,252,0,15,224,11,208,253,0,253,0,47,224,15,192,190,0,191,64,127,240,63,128,127,0,63,255,249,255,255,0,63,0,31,255,224,191,252,0,63,128,1,254,64,31,144,0,31,208,0,0,0,0,0,0,15,240,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,255,208,0,0,108,0,0,0,63,255,166,175,252,0,0,0,7,255,255,255,252,0,0,0,0,111,255,255,144,0,0,0,0,0,21,64,0,0,0, + // 0x0041 A + 25,28,196,25,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x0042 B + 20,27,135,25,3,0,127,255,255,228,0,127,255,255,255,128,127,255,255,255,224,127,213,86,255,244,127,128,0,31,252,127,128,0,11,252,127,128,0,3,252,127,128,0,3,252,127,128,0,7,252,127,128,0,15,244,127,128,0,127,240,127,255,255,255,128,127,255,255,248,0,127,255,255,255,64,127,234,170,255,240,127,128,0,31,252,127,128,0,3,253,127,128,0,2,254,127,128,0,1,255,127,128,0,1,255,127,128,0,2,255,127,128,0,3,254,127,128,0,15,252,127,213,86,255,248,127,255,255,255,240,127,255,255,255,64,127,255,255,228,0, + // 0x0043 C + 21,29,174,24,2,255,0,0,5,85,0,0,0,1,255,255,249,0,0,31,255,255,255,128,0,127,255,255,255,0,1,255,244,1,191,0,3,255,64,0,4,0,15,252,0,0,0,0,31,244,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,63,208,0,0,0,0,63,240,0,0,0,0,31,244,0,0,0,0,15,252,0,0,0,0,7,255,64,0,0,0,2,255,249,1,111,0,0,191,255,255,255,0,0,31,255,255,255,0,0,2,255,255,249,0,0,0,1,84,0,0, + // 0x0044 D + 23,27,162,28,3,0,127,255,255,228,0,0,127,255,255,255,64,0,127,255,255,255,240,0,127,213,86,255,252,0,127,128,0,31,255,0,127,128,0,2,255,128,127,128,0,0,191,192,127,128,0,0,63,224,127,128,0,0,47,240,127,128,0,0,15,240,127,128,0,0,15,244,127,128,0,0,15,244,127,128,0,0,15,248,127,128,0,0,11,248,127,128,0,0,15,244,127,128,0,0,15,244,127,128,0,0,15,244,127,128,0,0,31,240,127,128,0,0,47,240,127,128,0,0,63,208,127,128,0,0,255,192,127,128,0,3,255,64,127,128,0,47,254,0,127,213,107,255,248,0,127,255,255,255,208,0,127,255,255,254,0,0,127,255,255,144,0,0, + // 0x0045 E + 16,27,108,21,3,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x0046 F + 16,27,108,20,3,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0, + // 0x0047 G + 23,29,174,28,2,255,0,0,1,89,80,0,0,0,191,255,255,128,0,11,255,255,255,244,0,63,255,255,255,240,1,255,249,0,27,208,3,255,128,0,0,64,11,253,0,0,0,0,31,248,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,128,0,42,170,164,191,128,0,63,255,248,191,128,0,63,255,248,191,128,0,63,255,248,127,192,0,0,7,248,127,192,0,0,7,248,63,208,0,0,7,248,63,240,0,0,7,248,31,244,0,0,7,248,15,253,0,0,7,248,3,255,64,0,7,248,1,255,249,0,91,248,0,127,255,255,255,248,0,31,255,255,255,248,0,1,191,255,255,144,0,0,0,85,0,0, + // 0x0048 H + 22,27,162,28,3,0,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,255,255,255,255,240,127,255,255,255,255,240,127,255,255,255,255,240,127,234,170,170,175,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240, + // 0x0049 I + 11,27,81,13,1,0,191,255,252,191,255,252,47,255,228,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,47,255,244,191,255,252,191,255,252, + // 0x004a J + 11,35,105,11,253,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,244,0,15,244,0,31,240,64,127,240,255,255,208,255,255,64,255,252,0,21,64,0, + // 0x004b K + 21,27,162,24,3,0,127,128,0,2,255,0,127,128,0,7,253,0,127,128,0,31,244,0,127,128,0,63,224,0,127,128,0,255,128,0,127,128,3,255,0,0,127,128,11,252,0,0,127,128,47,240,0,0,127,128,127,192,0,0,127,129,255,64,0,0,127,131,253,0,0,0,127,143,248,0,0,0,127,255,252,0,0,0,127,255,254,0,0,0,127,255,255,64,0,0,127,240,255,192,0,0,127,192,63,224,0,0,127,128,31,244,0,0,127,128,15,252,0,0,127,128,3,255,0,0,127,128,1,255,64,0,127,128,0,191,192,0,127,128,0,63,240,0,127,128,0,15,248,0,127,128,0,11,253,0,127,128,0,3,255,0,127,128,0,0,255,128, + // 0x004c L + 17,27,135,20,3,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,234,170,170,0,127,255,255,255,64,127,255,255,255,64,127,255,255,255,64, + // 0x004d M + 29,27,216,35,3,0,127,248,0,0,0,15,255,64,127,252,0,0,0,15,255,64,127,253,0,0,0,47,255,64,127,255,0,0,0,63,255,64,127,191,0,0,0,127,191,64,127,127,64,0,0,191,191,64,127,63,192,0,0,253,191,64,127,47,192,0,1,252,191,64,127,79,224,0,3,248,191,64,127,79,240,0,3,244,191,64,127,71,244,0,7,240,191,64,127,67,248,0,15,224,191,64,127,66,252,0,15,208,191,64,127,65,253,0,47,192,191,64,127,64,254,0,63,128,191,64,127,64,191,0,127,0,191,64,127,64,127,64,191,0,191,64,127,64,63,192,253,0,191,64,127,64,47,193,252,0,191,64,127,64,15,211,248,0,191,64,127,64,15,243,244,0,191,64,127,64,11,255,240,0,191,64,127,64,3,255,224,0,191,64,127,64,3,255,192,0,191,64,127,64,1,255,192,0,191,64,127,64,0,255,128,0,191,64,127,64,0,255,0,0,191,64, + // 0x004e N + 23,27,162,29,3,0,127,240,0,0,3,252,127,248,0,0,3,252,127,252,0,0,3,252,127,255,0,0,3,252,127,255,64,0,3,252,127,191,192,0,3,252,127,63,224,0,3,252,127,31,244,0,3,252,127,11,252,0,3,252,127,3,254,0,3,252,127,65,255,0,3,252,127,64,255,192,3,252,127,64,63,208,3,252,127,64,47,240,3,252,127,64,15,248,3,252,127,64,7,253,3,252,127,64,2,255,3,252,127,64,0,255,131,252,127,64,0,127,195,252,127,64,0,63,243,252,127,64,0,15,246,252,127,64,0,11,255,252,127,64,0,3,255,252,127,64,0,1,255,252,127,64,0,0,191,252,127,64,0,0,63,252,127,64,0,0,31,252, + // 0x004f O + 26,29,203,30,2,255,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x0050 P + 19,27,135,23,3,0,127,255,255,144,0,127,255,255,253,0,127,255,255,255,64,127,213,91,255,192,127,128,0,127,224,127,128,0,47,240,127,128,0,15,244,127,128,0,15,244,127,128,0,15,244,127,128,0,15,244,127,128,0,31,240,127,128,0,63,224,127,128,1,255,192,127,255,255,255,128,127,255,255,253,0,127,255,255,224,0,127,234,169,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0, + // 0x0051 Q + 26,35,245,30,2,249,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,244,0,0,0,0,1,95,252,0,0,0,0,0,7,255,0,0,0,0,0,1,255,192,0,0,0,0,0,191,224,0,0,0,0,0,47,248,0,0,0,0,0,15,254,0,0,0,0,0,1,85,0, + // 0x0052 R + 21,27,162,24,3,0,127,255,255,144,0,0,127,255,255,253,0,0,127,255,255,255,128,0,127,213,91,255,208,0,127,128,0,127,240,0,127,128,0,31,240,0,127,128,0,15,244,0,127,128,0,15,244,0,127,128,0,15,244,0,127,128,0,15,240,0,127,128,0,47,240,0,127,128,0,127,208,0,127,213,91,255,128,0,127,255,255,254,0,0,127,255,255,240,0,0,127,255,255,208,0,0,127,128,31,240,0,0,127,128,11,248,0,0,127,128,3,253,0,0,127,128,2,255,0,0,127,128,0,255,128,0,127,128,0,127,192,0,127,128,0,47,240,0,127,128,0,15,244,0,127,128,0,11,252,0,127,128,0,3,254,0,127,128,0,1,255,64, + // 0x0053 S + 17,29,145,21,2,255,0,5,85,0,0,0,191,255,249,0,7,255,255,255,128,31,255,255,255,0,63,244,1,191,0,127,192,0,0,0,191,64,0,0,0,255,64,0,0,0,191,64,0,0,0,191,192,0,0,0,127,224,0,0,0,63,253,0,0,0,15,255,208,0,0,3,255,254,0,0,0,127,255,224,0,0,7,255,252,0,0,0,127,255,0,0,0,7,255,64,0,0,0,255,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,144,0,0,255,128,254,80,27,255,0,255,255,255,253,0,255,255,255,244,0,47,255,255,64,0,0,21,64,0,0, + // 0x0054 T + 21,27,162,21,0,0,191,255,255,255,255,192,191,255,255,255,255,192,191,255,255,255,255,192,21,85,191,213,85,64,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0, + // 0x0055 U + 22,28,168,28,3,255,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,224,0,0,27,255,254,64,0,0,0,21,64,0,0, + // 0x0056 V + 23,27,162,23,0,0,255,64,0,0,3,252,127,192,0,0,7,252,63,192,0,0,15,244,47,208,0,0,15,240,31,240,0,0,31,224,15,240,0,0,63,208,11,244,0,0,63,192,7,252,0,0,191,128,3,252,0,0,255,64,2,254,0,0,255,0,1,255,0,2,254,0,0,255,0,3,253,0,0,191,128,3,252,0,0,63,192,11,248,0,0,63,192,15,240,0,0,47,224,15,240,0,0,15,240,47,224,0,0,15,240,63,192,0,0,7,248,63,192,0,0,3,252,191,64,0,0,3,252,255,0,0,0,1,253,254,0,0,0,0,255,253,0,0,0,0,191,252,0,0,0,0,127,248,0,0,0,0,63,244,0,0,0,0,47,240,0,0, + // 0x0057 W + 36,27,243,36,0,0,191,128,0,1,255,0,0,3,253,127,192,0,2,255,64,0,3,252,63,192,0,3,255,128,0,7,248,63,208,0,7,255,192,0,11,244,31,224,0,11,255,192,0,15,240,15,240,0,15,239,208,0,15,240,15,240,0,15,223,240,0,31,224,11,244,0,31,203,240,0,47,208,7,248,0,47,199,244,0,63,192,3,252,0,63,131,248,0,63,192,3,252,0,127,67,252,0,127,128,2,253,0,191,2,252,0,191,64,1,254,0,255,0,254,0,255,0,0,255,0,254,0,255,0,255,0,0,255,1,253,0,191,1,254,0,0,191,66,252,0,127,66,253,0,0,127,131,248,0,63,131,252,0,0,63,195,244,0,63,195,252,0,0,63,199,240,0,47,199,248,0,0,47,219,240,0,15,219,240,0,0,31,223,224,0,15,235,240,0,0,15,239,208,0,11,239,224,0,0,15,255,192,0,7,255,208,0,0,11,255,192,0,3,255,192,0,0,7,255,64,0,3,255,192,0,0,3,255,0,0,2,255,128,0,0,2,255,0,0,0,255,64,0, + // 0x0058 X + 23,27,162,23,0,0,63,224,0,0,31,240,31,244,0,0,63,208,11,252,0,0,191,128,3,253,0,0,255,0,1,255,0,3,253,0,0,191,128,7,252,0,0,63,208,15,240,0,0,31,240,47,208,0,0,11,248,127,192,0,0,3,252,255,0,0,0,1,255,254,0,0,0,0,255,252,0,0,0,0,63,244,0,0,0,0,127,244,0,0,0,0,255,252,0,0,0,2,255,254,0,0,0,3,252,255,64,0,0,15,244,127,192,0,0,31,224,63,224,0,0,63,192,15,240,0,0,191,64,11,252,0,1,255,0,3,254,0,3,253,0,1,255,0,11,248,0,0,191,192,31,240,0,0,63,208,63,208,0,0,47,240,191,192,0,0,15,248, + // 0x0059 Y + 22,27,162,22,0,0,191,192,0,0,47,240,63,208,0,0,63,208,47,240,0,0,191,128,15,244,0,0,255,0,11,252,0,2,254,0,3,253,0,3,252,0,1,255,0,11,248,0,0,255,64,31,240,0,0,127,192,63,208,0,0,63,208,127,192,0,0,31,240,255,64,0,0,11,249,255,0,0,0,3,255,253,0,0,0,2,255,248,0,0,0,0,255,240,0,0,0,0,191,224,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x005a Z + 20,27,135,22,1,0,127,255,255,255,252,127,255,255,255,252,127,255,255,255,252,21,85,85,95,248,0,0,0,47,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,3,253,0,0,0,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,7,253,0,0,0,15,248,0,0,0,47,240,0,0,0,127,208,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,248,0,0,0,47,240,0,0,0,127,234,170,170,169,191,255,255,255,253,191,255,255,255,253,191,255,255,255,253, + // 0x005b [ + 9,33,99,13,3,250,255,255,128,255,255,128,255,255,128,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,255,255,128,255,255,128,255,255,128, + // 0x005c "\" + 14,27,108,15,0,0,127,64,0,0,63,128,0,0,47,192,0,0,31,208,0,0,15,240,0,0,11,240,0,0,3,248,0,0,3,252,0,0,1,253,0,0,0,254,0,0,0,191,0,0,0,127,64,0,0,63,192,0,0,47,192,0,0,15,224,0,0,15,240,0,0,7,244,0,0,3,248,0,0,2,252,0,0,1,253,0,0,0,255,0,0,0,191,0,0,0,63,128,0,0,63,192,0,0,31,208,0,0,15,224,0,0,11,240, + // 0x005d ] + 9,33,99,13,1,250,255,255,128,255,255,128,255,255,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,255,255,128,255,255,128,255,255,128, + // 0x005e ^ + 19,18,90,22,1,10,0,0,16,0,0,0,0,252,0,0,0,2,253,0,0,0,3,255,0,0,0,7,255,64,0,0,15,223,192,0,0,31,203,208,0,0,63,67,240,0,0,127,2,248,0,0,253,0,252,0,0,252,0,190,0,2,248,0,63,0,3,240,0,47,128,11,224,0,15,192,15,192,0,11,224,47,192,0,3,240,63,64,0,2,248,127,0,0,0,252, + // 0x005f _ + 17,3,15,16,0,250,170,170,170,170,64,255,255,255,255,128,255,255,255,255,128, + // 0x0060 ` + 9,6,18,12,1,23,127,224,0,31,240,0,7,252,0,1,254,0,0,127,64,0,31,192, + // 0x0061 a + 18,22,110,22,1,255,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x0062 b + 19,30,150,24,3,255,191,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,1,174,128,0,255,15,255,248,0,255,127,255,255,0,255,254,155,255,128,255,240,0,191,208,255,192,0,47,240,255,128,0,15,240,255,64,0,15,244,255,64,0,11,244,255,0,0,11,248,255,0,0,11,248,255,0,0,11,248,255,64,0,11,244,255,64,0,15,244,255,128,0,15,240,255,192,0,31,240,255,224,0,63,224,255,248,1,255,192,255,255,255,255,64,254,63,255,253,0,253,11,255,224,0,0,0,21,0,0, + // 0x0063 c + 15,22,88,19,2,255,0,6,254,144,0,191,255,252,3,255,255,252,15,255,171,248,47,244,0,16,63,208,0,0,127,192,0,0,191,128,0,0,255,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,0,191,128,0,0,127,192,0,0,63,240,0,0,31,253,0,124,11,255,255,252,2,255,255,252,0,47,255,244,0,0,84,0, + // 0x0064 d + 19,30,150,24,2,255,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,27,232,11,244,1,255,255,139,244,7,255,255,247,244,15,254,155,255,244,63,244,0,127,244,63,208,0,47,244,191,192,0,15,244,191,128,0,15,244,255,64,0,11,244,255,0,0,11,244,255,0,0,7,244,255,0,0,7,244,255,0,0,11,244,255,64,0,11,244,191,128,0,15,244,127,192,0,15,244,63,224,0,63,244,47,248,1,255,244,15,255,255,251,244,3,255,255,211,244,0,127,254,3,244,0,1,64,0,0, + // 0x0065 e + 18,22,110,22,2,255,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x0066 f + 15,29,116,14,0,0,0,1,255,248,0,15,255,252,0,63,255,248,0,127,228,96,0,191,128,0,0,255,64,0,0,255,0,0,0,255,0,0,1,255,149,64,47,255,255,192,127,255,255,192,42,255,170,128,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0, + // 0x0067 g + 19,31,155,24,2,246,0,27,232,1,80,1,255,255,131,244,7,255,255,243,244,15,255,171,255,244,47,244,0,191,244,63,208,0,47,244,127,192,0,15,244,191,128,0,15,244,255,64,0,11,244,255,0,0,11,244,255,0,0,7,244,255,0,0,7,244,255,0,0,7,244,255,64,0,11,244,191,128,0,15,244,127,192,0,15,244,63,224,0,47,244,47,248,0,191,244,15,255,255,251,244,3,255,255,219,244,0,191,254,11,244,0,1,80,11,244,0,0,0,11,244,0,0,0,15,240,0,0,0,31,240,16,0,0,63,224,47,148,2,255,192,47,255,255,255,64,47,255,255,253,0,2,191,255,144,0,0,0,0,0,0, + // 0x0068 h + 18,29,145,24,3,0,191,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,1,175,144,0,255,15,255,253,0,255,63,255,255,64,255,255,155,255,192,255,240,0,127,208,255,208,0,47,224,255,192,0,31,240,255,128,0,15,240,255,64,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240, + // 0x0069 i + 5,28,56,10,3,0,191,0,255,64,255,64,191,0,4,0,0,0,0,0,85,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, + // 0x006a j + 10,38,114,10,254,246,0,47,192,0,63,208,0,63,208,0,47,192,0,1,0,0,0,0,0,0,0,0,21,64,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,65,255,192,255,255,64,255,254,0,255,244,0,0,0,0, + // 0x006b k + 18,29,145,21,3,0,191,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,21,64,255,0,0,255,128,255,0,3,254,0,255,0,15,248,0,255,0,63,224,0,255,0,255,192,0,255,2,255,0,0,255,11,252,0,0,255,47,240,0,0,255,127,208,0,0,255,255,240,0,0,255,255,252,0,0,255,227,254,0,0,255,129,255,64,0,255,0,191,192,0,255,0,63,240,0,255,0,15,248,0,255,0,7,253,0,255,0,2,255,0,255,0,0,255,192,255,0,0,63,224, + // 0x006c l + 4,29,29,10,3,0,191,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x006d m + 30,21,168,36,3,0,84,1,190,128,0,111,224,0,254,31,255,248,7,255,254,0,255,127,255,254,47,255,255,128,255,254,155,255,191,166,255,208,255,240,0,255,252,0,63,224,255,192,0,127,240,0,31,240,255,192,0,63,224,0,15,240,255,64,0,63,208,0,15,240,255,64,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240, + // 0x006e n + 18,21,105,24,3,0,84,1,191,144,0,254,15,255,253,0,255,63,255,255,64,255,255,155,255,192,255,240,0,127,208,255,208,0,47,224,255,192,0,31,240,255,128,0,15,240,255,64,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240, + // 0x006f o + 19,22,110,23,2,255,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x0070 p + 19,31,155,24,3,246,84,1,191,128,0,254,15,255,248,0,255,63,255,255,0,255,254,155,255,192,255,240,0,191,208,255,192,0,47,240,255,128,0,15,240,255,64,0,15,244,255,64,0,11,244,255,0,0,11,248,255,0,0,11,248,255,0,0,11,248,255,64,0,11,244,255,64,0,15,244,255,128,0,15,240,255,192,0,47,240,255,224,0,63,224,255,248,1,255,192,255,255,255,255,64,255,63,255,253,0,255,7,255,224,0,255,0,21,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,0,0,0,0,0, + // 0x0071 q + 19,31,155,24,2,246,0,27,232,1,80,1,255,255,131,244,7,255,255,247,244,15,254,155,255,244,63,240,0,127,244,63,208,0,47,244,191,192,0,15,244,191,128,0,15,244,255,64,0,11,244,255,0,0,11,244,255,0,0,7,244,255,0,0,7,244,255,0,0,11,244,255,64,0,11,244,191,128,0,15,244,127,192,0,15,244,63,224,0,63,244,47,248,1,255,244,15,255,255,251,244,3,255,255,219,244,0,191,254,11,244,0,1,64,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,0,0, + // 0x0072 r + 13,21,84,16,3,0,84,0,191,64,253,11,255,64,254,47,255,64,255,127,255,0,255,253,0,0,255,240,0,0,255,192,0,0,255,128,0,0,255,64,0,0,255,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0, + // 0x0073 s + 15,22,88,18,2,255,0,111,233,0,11,255,255,240,63,255,255,240,191,229,111,224,255,0,0,64,255,0,0,0,255,0,0,0,255,208,0,0,127,253,0,0,31,255,224,0,2,255,254,0,0,47,255,208,0,1,255,240,0,0,47,248,0,0,11,248,0,0,3,248,0,0,7,248,244,0,31,244,255,251,255,240,255,255,255,192,111,255,253,0,0,85,0,0, + // 0x0074 t + 14,26,104,15,0,255,0,62,0,0,0,126,0,0,0,190,0,0,0,254,0,0,2,255,85,64,47,255,255,208,127,255,255,208,43,255,170,128,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,255,0,0,0,255,128,0,0,255,255,224,0,63,255,224,0,11,255,208,0,0,84,0, + // 0x0075 u + 18,22,110,24,3,255,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,11,240,0,5,64,0,0, + // 0x0076 v + 20,21,105,20,0,0,85,0,0,0,85,191,128,0,2,254,127,192,0,3,252,63,208,0,7,252,31,224,0,11,244,15,240,0,15,240,11,244,0,31,224,7,248,0,63,208,3,252,0,63,192,2,253,0,127,128,0,255,0,255,0,0,255,0,255,0,0,127,130,253,0,0,63,195,252,0,0,47,195,248,0,0,31,215,244,0,0,15,235,240,0,0,11,255,224,0,0,3,255,192,0,0,3,255,192,0,0,1,255,64,0, + // 0x0077 w + 30,21,168,31,0,0,106,64,0,26,144,0,6,160,127,192,0,63,240,0,15,240,63,192,0,127,240,0,31,224,47,208,0,255,244,0,47,208,31,224,0,255,248,0,63,192,15,240,1,253,252,0,63,192,15,240,2,248,253,0,127,128,11,244,3,244,254,0,191,64,7,248,3,240,191,0,255,0,3,252,11,240,127,0,254,0,3,252,15,224,63,65,253,0,2,253,15,208,63,130,252,0,1,254,31,192,47,195,252,0,0,255,47,192,15,211,248,0,0,191,63,64,15,231,244,0,0,127,127,0,11,235,240,0,0,63,191,0,7,255,240,0,0,63,254,0,3,255,208,0,0,47,253,0,3,255,192,0,0,31,252,0,2,255,192,0,0,15,248,0,0,255,128,0, + // 0x0078 x + 19,21,105,21,1,0,85,64,0,5,84,127,192,0,31,240,47,240,0,63,208,15,244,0,255,128,7,252,1,255,0,2,255,3,253,0,0,255,75,248,0,0,127,239,240,0,0,47,255,192,0,0,15,255,128,0,0,7,255,0,0,0,15,255,64,0,0,47,255,192,0,0,63,239,240,0,0,255,79,248,0,2,255,3,253,0,7,252,1,255,0,15,244,0,255,128,47,240,0,63,208,127,192,0,31,240,255,64,0,15,252, + // 0x0079 y + 20,31,155,20,0,246,85,0,0,0,85,191,128,0,2,254,63,192,0,3,253,63,208,0,7,252,31,240,0,11,248,15,240,0,15,240,11,248,0,31,240,3,252,0,47,208,3,253,0,63,192,1,254,0,127,128,0,255,0,255,64,0,191,64,255,0,0,63,129,254,0,0,63,195,252,0,0,31,211,252,0,0,15,231,244,0,0,11,251,240,0,0,3,255,224,0,0,3,255,192,0,0,1,255,192,0,0,0,255,64,0,0,0,255,0,0,0,1,254,0,0,0,2,253,0,0,0,3,252,0,0,0,15,244,0,0,16,127,240,0,0,127,255,192,0,0,127,255,64,0,0,127,248,0,0,0,0,0,0,0,0, + // 0x007a z + 16,21,84,18,1,0,21,85,85,84,63,255,255,253,63,255,255,253,42,170,171,252,0,0,11,248,0,0,31,240,0,0,63,192,0,0,255,64,0,2,254,0,0,7,252,0,0,15,244,0,0,47,224,0,0,127,192,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,208,0,0,191,255,255,254,191,255,255,254,191,255,255,254, + // 0x007b { + 13,33,132,15,1,250,0,0,191,64,0,11,255,64,0,47,255,64,0,63,244,0,0,127,192,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,191,64,0,0,255,0,0,27,254,0,0,255,244,0,0,255,128,0,0,255,248,0,0,7,254,0,0,0,255,0,0,0,191,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,192,0,0,63,245,0,0,47,255,64,0,11,255,64,0,0,111,64, + // 0x007c | + 3,38,38,21,9,247,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252, + // 0x007d } + 13,33,132,15,1,250,191,64,0,0,191,244,0,0,191,252,0,0,7,254,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,0,0,0,191,0,0,0,127,128,0,0,63,245,0,0,11,255,128,0,1,255,128,0,15,255,128,0,63,228,0,0,191,128,0,0,191,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,1,255,0,0,27,254,0,0,191,252,0,0,191,240,0,0,190,64,0,0, + // 0x007e ~ + 18,6,30,22,2,10,31,254,0,0,32,191,255,244,1,240,255,255,255,255,240,244,7,255,255,224,128,0,47,255,64,0,0,0,16,0, + // 0x007f - 0x009a Control Characters + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x00a0 "�" + 0,0,0,10,0,0, + // 0x00a1 ¡ + 6,28,56,10,2,249,10,64,63,208,127,224,127,224,63,208,10,64,0,0,0,0,0,0,31,128,31,128,31,128,31,192,47,192,47,192,47,192,47,192,47,192,63,192,63,192,63,192,63,192,63,208,63,208,63,208,63,208,63,208,63,208, + // 0x00a2 ¢ + 16,29,116,22,3,255,0,0,164,0,0,1,248,0,0,1,248,0,0,1,253,0,0,47,255,253,2,255,255,253,11,255,255,252,31,253,0,104,63,240,0,0,63,192,0,0,127,192,0,0,191,128,0,0,191,64,0,0,191,64,0,0,255,64,0,0,191,64,0,0,191,128,0,0,127,128,0,0,127,192,0,0,63,224,0,0,47,248,0,24,15,255,235,252,3,255,255,252,0,191,255,252,0,6,254,128,0,1,244,0,0,1,244,0,0,1,244,0,0,0,80,0, + // 0x00a3 £ + 20,28,140,22,1,0,0,0,5,80,0,0,1,255,255,144,0,15,255,255,244,0,63,255,255,240,0,127,224,2,224,0,191,128,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,191,255,255,253,0,191,255,255,253,0,191,255,255,253,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,1,254,0,0,0,2,253,0,0,0,11,244,0,0,0,127,250,170,170,169,191,255,255,255,254,191,255,255,255,254,191,255,255,255,254, + // 0x00a4 ¤ + 17,18,90,22,2,4,8,0,0,2,0,127,6,249,15,192,127,255,255,255,192,31,255,255,255,0,11,249,7,252,0,15,224,0,254,0,15,192,0,63,0,31,128,0,63,0,47,64,0,47,64,31,128,0,47,0,31,192,0,63,0,15,208,0,190,0,7,248,7,252,0,15,255,255,255,0,63,255,255,255,192,127,11,253,31,192,28,0,0,7,0,0,0,0,0,0, + // 0x00a5 ¥ + 21,27,162,22,0,0,127,192,0,0,63,192,47,208,0,0,191,64,15,240,0,0,255,0,11,244,0,2,253,0,3,252,0,3,252,0,2,253,0,11,244,0,0,255,0,15,224,0,0,191,64,47,192,0,0,63,192,63,128,0,0,47,208,191,0,0,0,15,240,254,0,0,0,11,246,252,0,0,0,3,255,248,0,0,0,1,255,240,0,0,2,255,255,255,240,0,2,255,255,255,240,0,1,170,191,234,160,0,0,0,63,192,0,0,0,0,63,192,0,0,0,85,127,213,80,0,2,255,255,255,240,0,2,255,255,255,240,0,0,85,127,213,80,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x00a6 ¦ + 3,38,38,21,9,247,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,0,0,0,0,0,0,0,0,168,252,252,252,252,252,252,252,252,252,252,252,252,252,252, + // 0x00a7 § + 15,30,120,19,2,255,0,191,254,64,11,255,255,244,47,255,255,240,63,128,1,224,127,0,0,0,127,64,0,0,63,192,0,0,47,248,0,0,11,255,208,0,3,255,253,0,15,251,255,128,63,128,191,240,127,0,11,244,126,0,3,252,127,0,1,252,127,64,1,252,63,224,3,248,31,254,11,240,3,255,255,208,0,127,255,128,0,2,255,224,0,0,47,244,0,0,7,248,0,0,3,252,0,0,3,248,228,0,11,244,255,234,191,240,255,255,255,192,31,255,249,0,0,0,0,0, + // 0x00a8 ¨ + 12,5,15,22,5,23,46,0,188,127,64,254,127,128,254,63,0,189,0,0,0, + // 0x00a9 © + 28,29,203,32,2,255,0,0,1,85,64,0,0,0,0,191,255,249,0,0,0,11,255,171,255,208,0,0,63,208,0,11,248,0,0,253,0,0,0,190,0,3,240,0,0,0,47,128,15,192,2,255,228,11,208,31,0,31,255,252,2,240,62,0,127,230,248,0,244,124,0,254,0,0,0,188,184,1,252,0,0,0,60,244,3,244,0,0,0,61,244,3,240,0,0,0,46,240,3,240,0,0,0,46,240,3,240,0,0,0,46,240,3,240,0,0,0,46,244,3,240,0,0,0,46,248,3,244,0,0,0,61,188,1,248,0,0,0,124,124,0,254,0,0,0,188,62,0,127,234,248,0,244,31,64,31,255,248,3,240,15,192,2,255,208,11,208,3,240,0,0,0,47,128,0,254,0,0,1,254,0,0,63,224,0,27,248,0,0,7,255,255,255,208,0,0,0,127,255,249,0,0,0,0,0,85,0,0,0, + // 0x00aa ª + 11,14,42,14,1,14,0,85,0,31,255,208,63,255,244,24,1,252,0,0,252,0,5,252,11,255,252,63,234,252,189,0,188,252,0,252,252,2,252,191,175,252,63,254,60,6,144,20, + // 0x00ab « + 18,16,80,21,1,2,0,11,64,7,64,0,31,224,31,224,0,63,192,63,192,0,255,0,255,64,3,253,3,253,0,11,248,11,248,0,47,224,31,240,0,127,192,127,192,0,63,192,63,208,0,31,240,31,240,0,11,252,7,252,0,2,254,2,254,0,0,255,64,191,128,0,63,208,63,208,0,15,224,15,224,0,6,0,3,0, + // 0x00ac ¬ + 18,11,55,22,2,4,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,0,0,0,7,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,0,0, + // 0x00ad ­ + 10,4,12,12,1,8,191,255,224,191,255,240,191,255,240,106,170,144, + // 0x00ae ® + 28,29,203,32,2,255,0,0,1,85,64,0,0,0,0,191,255,249,0,0,0,11,255,171,255,208,0,0,63,208,0,11,248,0,0,253,0,0,0,190,0,3,240,0,0,0,47,128,15,192,127,254,64,11,208,31,0,127,255,240,2,240,62,0,127,171,252,0,244,124,0,125,0,253,0,188,184,0,125,0,189,0,60,244,0,125,0,189,0,61,244,0,125,0,252,0,46,240,0,126,7,252,0,46,240,0,127,255,240,0,46,240,0,127,255,128,0,46,244,0,126,15,192,0,46,248,0,125,7,240,0,61,188,0,125,3,244,0,124,124,0,125,1,252,0,188,62,0,125,0,190,0,244,31,64,125,0,63,3,240,15,192,125,0,31,139,208,3,240,0,0,0,47,128,0,254,0,0,1,254,0,0,63,224,0,27,248,0,0,7,255,255,255,208,0,0,0,127,255,249,0,0,0,0,0,85,0,0,0, + // 0x00af ¯ + 19,4,20,19,0,28,170,170,170,170,168,255,255,255,255,252,255,255,255,255,252,0,0,0,0,0, + // 0x00b0 ° + 13,13,52,16,2,15,0,85,0,0,11,255,224,0,47,255,252,0,127,65,254,0,253,0,63,0,252,0,47,0,252,0,47,64,252,0,47,0,253,0,63,0,127,129,254,0,47,255,252,0,11,255,224,0,0,85,0,0, + // 0x00b1 ± + 18,23,115,22,2,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,85,87,249,85,80,255,255,255,255,240,255,255,255,255,240,170,171,254,170,160,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,1,80,0,0,0,0,0,0,0,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240, + // 0x00b2 ² + 11,18,54,14,1,15,0,84,0,31,255,192,191,255,240,126,71,248,16,1,252,0,1,252,0,1,248,0,3,244,0,11,224,0,47,192,0,191,0,2,252,0,11,240,0,47,192,0,191,170,168,255,255,252,255,255,252,0,0,0, + // 0x00b3 ³ + 12,18,54,14,1,15,0,84,0,31,255,192,255,255,240,125,7,248,16,1,252,0,1,252,0,2,244,5,95,224,11,255,64,11,255,224,0,7,248,0,0,252,0,0,253,0,0,253,228,3,252,255,255,244,191,255,208,5,84,0, + // 0x00b4 ´ + 9,6,18,12,1,23,0,255,192,2,255,0,7,252,0,15,240,0,47,192,0,126,0,0, + // 0x00b5 µ + 18,31,155,24,3,246,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,64,0,47,240,255,64,0,63,240,255,192,0,191,240,255,244,2,255,240,255,255,255,255,240,255,255,255,203,240,255,47,254,7,240,255,1,64,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,0,0,0,0,0, + // 0x00b6 ¶ + 19,34,170,25,2,251,0,27,255,255,252,2,255,255,255,252,15,255,255,234,252,47,255,255,192,124,63,255,255,192,124,127,255,255,192,124,191,255,255,192,124,255,255,255,192,124,255,255,255,192,124,255,255,255,192,124,255,255,255,192,124,255,255,255,192,124,191,255,255,192,124,127,255,255,192,124,63,255,255,192,124,63,255,255,192,124,15,255,255,192,124,3,255,255,192,124,0,111,255,192,124,0,0,7,192,124,0,0,7,192,124,0,0,7,192,124,0,0,7,192,124,0,0,7,192,124,0,0,7,192,124,0,0,7,192,124,0,0,7,192,124,0,0,7,192,124,0,0,7,192,124,0,0,7,192,124,0,0,7,192,124,0,0,7,192,124,0,0,7,192,124,0,0,7,192,124, + // 0x00b7 · + 6,6,12,10,2,10,31,128,63,224,127,224,127,224,63,208,5,0, + // 0x00b8 ¸ + 8,10,20,8,0,246,7,208,15,192,31,244,6,253,0,191,0,127,85,254,255,252,255,224,0,0, + // 0x00b9 ¹ + 8,17,34,14,2,15,1,254,11,254,63,254,255,190,248,190,16,190,0,190,0,190,0,190,0,190,0,190,0,190,0,190,0,190,0,190,0,190,0,0, + // 0x00ba º + 12,14,42,14,1,14,0,21,0,7,255,224,31,255,252,63,64,189,125,0,63,188,0,47,252,0,47,252,0,47,188,0,47,125,0,63,63,0,190,31,251,252,7,255,240,0,106,0, + // 0x00bb » + 17,16,80,21,2,2,44,0,44,0,0,255,0,255,0,0,191,128,127,128,0,63,208,47,224,0,15,244,15,244,0,3,252,3,252,0,1,255,1,255,0,0,191,128,127,192,0,191,128,191,128,2,254,1,255,0,7,252,7,252,0,15,240,15,240,0,63,208,63,208,0,255,64,191,128,0,254,0,254,0,0,24,0,24,0,0, + // 0x00bc ¼ + 28,27,189,29,1,0,0,191,64,0,0,252,0,3,255,64,0,2,248,0,31,255,64,0,7,240,0,191,127,64,0,15,208,0,61,63,64,0,47,192,0,16,63,64,0,63,0,0,0,63,64,0,190,0,0,0,63,64,1,252,0,0,0,63,64,3,244,0,0,0,63,64,7,240,0,0,0,63,64,15,192,5,64,0,63,64,47,128,15,224,0,63,64,127,0,63,224,0,63,64,253,0,191,224,0,63,65,252,1,255,224,0,63,67,244,3,235,224,0,0,11,224,11,203,224,0,0,15,192,31,75,224,0,0,63,64,62,11,224,0,0,127,0,188,11,224,0,0,253,1,240,11,224,0,2,248,3,255,255,255,0,3,240,3,255,255,255,0,15,224,2,170,175,250,0,31,192,0,0,11,224,0,63,64,0,0,11,224,0,190,0,0,0,11,224, + // 0x00bd ½ + 28,27,189,30,1,0,0,255,0,0,3,244,0,7,255,0,0,11,240,0,47,255,0,0,15,192,0,255,127,0,0,47,128,0,188,63,0,0,127,0,0,16,63,0,0,253,0,0,0,63,0,2,252,0,0,0,63,0,3,240,0,0,0,63,0,11,224,0,0,0,63,0,31,192,0,0,0,63,0,63,64,106,64,0,63,0,127,11,255,244,0,63,0,253,63,255,252,0,63,2,248,31,65,254,0,63,3,240,4,0,190,0,63,15,208,0,0,190,0,0,31,192,0,0,190,0,0,63,64,0,1,252,0,0,190,0,0,3,244,0,0,252,0,0,15,224,0,3,248,0,0,63,128,0,7,240,0,0,254,0,0,15,208,0,3,248,0,0,47,128,0,15,224,0,0,63,0,0,63,255,254,0,254,0,0,63,255,255,1,252,0,0,63,255,255, + // 0x00be ¾ + 29,28,224,30,1,0,0,85,0,0,0,0,0,0,31,255,208,0,0,47,192,0,255,255,244,0,0,63,0,0,125,3,252,0,0,254,0,0,0,0,252,0,1,252,0,0,0,0,252,0,3,244,0,0,0,2,248,0,11,240,0,0,5,95,240,0,15,192,0,0,11,255,128,0,47,128,0,0,11,255,240,0,127,0,0,0,0,2,252,0,253,0,0,0,0,0,253,2,252,0,84,0,0,0,189,3,240,3,248,0,0,0,253,11,224,15,248,0,228,6,252,31,192,47,248,0,255,255,244,63,64,63,248,0,191,255,208,127,0,250,248,0,1,84,0,253,2,242,248,0,0,0,2,248,7,210,248,0,0,0,7,240,15,130,248,0,0,0,15,208,47,2,248,0,0,0,31,192,125,2,248,0,0,0,63,64,255,255,255,192,0,0,190,0,255,255,255,192,0,0,252,0,170,171,254,128,0,3,248,0,0,2,248,0,0,7,240,0,0,2,248,0,0,15,208,0,0,2,248,0, + // 0x00bf ¿ + 15,29,116,17,1,248,0,1,160,0,0,7,252,0,0,11,253,0,0,11,253,0,0,7,252,0,0,1,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,248,0,0,2,248,0,0,3,248,0,0,11,244,0,0,31,240,0,0,191,192,0,2,255,64,0,15,252,0,0,47,240,0,0,127,192,0,0,191,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,20,127,228,6,252,63,255,255,252,15,255,255,252,1,255,255,128,0,1,64,0, + // 0x00c0 À + 25,36,252,25,0,0,0,3,255,0,0,0,0,0,0,255,128,0,0,0,0,0,63,192,0,0,0,0,0,15,240,0,0,0,0,0,3,248,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x00c1 Á + 25,36,252,25,0,0,0,0,0,31,244,0,0,0,0,0,63,224,0,0,0,0,0,191,128,0,0,0,0,1,254,0,0,0,0,0,3,248,0,0,0,0,0,11,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x00c2  + 25,36,252,25,0,0,0,0,15,252,0,0,0,0,0,63,254,0,0,0,0,0,255,255,64,0,0,0,2,253,47,208,0,0,0,11,244,11,244,0,0,0,31,128,1,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x00c3 à + 25,35,245,25,0,0,0,2,254,0,61,0,0,0,11,255,224,189,0,0,0,15,255,255,252,0,0,0,47,2,255,240,0,0,0,46,0,47,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x00c4 Ä + 25,35,245,25,0,0,0,2,240,7,208,0,0,0,3,248,15,240,0,0,0,3,252,15,240,0,0,0,2,244,7,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x00c5 Å + 25,34,238,25,0,0,0,0,0,64,0,0,0,0,0,31,252,0,0,0,0,0,127,255,0,0,0,0,0,252,15,64,0,0,0,0,244,11,128,0,0,0,0,244,15,128,0,0,0,0,190,127,64,0,0,0,0,63,254,0,0,0,0,0,47,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x00c6 Æ + 32,27,216,34,0,0,0,0,0,191,255,255,255,255,0,0,0,255,255,255,255,255,0,0,2,255,255,255,255,255,0,0,3,253,127,229,85,85,0,0,11,248,63,208,0,0,0,0,15,240,63,208,0,0,0,0,31,224,63,208,0,0,0,0,63,192,63,208,0,0,0,0,127,128,63,208,0,0,0,0,255,0,63,208,0,0,0,1,255,0,63,208,0,0,0,3,253,0,63,255,255,253,0,7,252,0,63,255,255,253,0,11,244,0,63,255,255,253,0,15,240,0,63,234,170,168,0,47,229,85,127,208,0,0,0,63,255,255,255,208,0,0,0,191,255,255,255,208,0,0,0,255,255,255,255,208,0,0,2,254,0,0,63,208,0,0,3,252,0,0,63,208,0,0,7,252,0,0,63,208,0,0,15,244,0,0,63,208,0,0,31,240,0,0,63,234,170,170,63,208,0,0,63,255,255,255,127,192,0,0,63,255,255,255,255,64,0,0,63,255,255,255, + // 0x00c7 Ç + 21,38,228,24,2,246,0,0,5,85,0,0,0,1,255,255,249,0,0,31,255,255,255,128,0,127,255,255,255,0,1,255,244,1,191,0,3,255,64,0,4,0,15,252,0,0,0,0,31,244,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,63,208,0,0,0,0,63,240,0,0,0,0,31,244,0,0,0,0,15,252,0,0,0,0,7,255,64,0,0,0,2,255,249,1,111,0,0,191,255,255,255,0,0,31,255,255,255,0,0,2,255,255,249,0,0,0,7,244,0,0,0,0,11,192,0,0,0,0,15,248,0,0,0,0,6,254,0,0,0,0,0,127,0,0,0,0,0,63,0,0,0,0,85,255,0,0,0,0,191,253,0,0,0,0,191,224,0,0,0,0,0,0,0,0, + // 0x00c8 È + 16,36,144,21,3,0,2,255,0,0,0,255,128,0,0,63,208,0,0,15,240,0,0,3,252,0,0,0,189,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x00c9 É + 16,36,144,21,3,0,0,0,15,248,0,0,63,240,0,0,127,192,0,0,255,0,0,3,248,0,0,11,224,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x00ca Ê + 16,36,144,21,3,0,0,15,252,0,0,63,255,0,0,191,255,128,2,253,47,224,7,244,7,244,15,192,0,253,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x00cb Ë + 16,35,140,21,3,0,1,244,3,208,3,252,15,240,3,252,15,240,2,244,7,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x00cc Ì + 11,36,108,13,1,0,191,208,0,47,240,0,11,248,0,2,252,0,0,191,0,0,47,128,0,0,0,0,0,0,0,0,0,191,255,252,191,255,252,47,255,228,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,47,255,244,191,255,252,191,255,252, + // 0x00cd Í + 12,36,108,13,1,0,0,3,255,0,11,252,0,31,240,0,63,192,0,191,0,1,248,0,0,0,0,0,0,0,0,0,0,191,255,252,191,255,252,47,255,228,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,47,255,244,191,255,252,191,255,252, + // 0x00ce Î + 14,36,144,13,0,0,0,255,208,0,2,255,240,0,7,255,252,0,31,225,254,0,63,128,63,128,253,0,11,208,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,0,47,255,255,0,11,255,249,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,11,255,253,0,47,255,255,0,47,255,255,0, + // 0x00cf Ï + 12,35,105,13,1,0,125,0,248,255,2,253,255,2,253,126,0,252,0,0,0,0,0,0,0,0,0,0,0,0,191,255,252,191,255,252,47,255,228,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,47,255,244,191,255,252,191,255,252, + // 0x00d0 Ð + 25,27,189,28,1,0,3,255,255,254,64,0,0,3,255,255,255,244,0,0,3,255,255,255,255,0,0,3,253,85,111,255,192,0,3,252,0,1,255,240,0,3,252,0,0,47,248,0,3,252,0,0,11,252,0,3,252,0,0,3,254,0,3,252,0,0,2,255,0,3,252,0,0,0,255,0,3,252,0,0,0,255,64,7,252,0,0,0,255,64,255,255,255,192,0,255,128,255,255,255,192,0,191,128,255,255,255,192,0,255,64,87,253,85,64,0,255,64,3,252,0,0,0,255,64,3,252,0,0,1,255,0,3,252,0,0,2,255,0,3,252,0,0,3,253,0,3,252,0,0,15,252,0,3,252,0,0,63,244,0,3,252,0,2,255,224,0,3,253,86,191,255,128,0,3,255,255,255,253,0,0,3,255,255,255,224,0,0,3,255,255,233,0,0,0, + // 0x00d1 Ñ + 23,35,210,29,3,0,0,7,253,0,124,0,0,15,255,209,248,0,0,63,255,255,240,0,0,61,7,255,224,0,0,124,0,127,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,240,0,0,3,252,127,248,0,0,3,252,127,252,0,0,3,252,127,255,0,0,3,252,127,255,64,0,3,252,127,191,192,0,3,252,127,63,224,0,3,252,127,31,244,0,3,252,127,11,252,0,3,252,127,3,254,0,3,252,127,65,255,0,3,252,127,64,255,192,3,252,127,64,63,208,3,252,127,64,47,240,3,252,127,64,15,248,3,252,127,64,7,253,3,252,127,64,2,255,3,252,127,64,0,255,131,252,127,64,0,127,195,252,127,64,0,63,243,252,127,64,0,15,246,252,127,64,0,11,255,252,127,64,0,3,255,252,127,64,0,1,255,252,127,64,0,0,191,252,127,64,0,0,63,252,127,64,0,0,31,252, + // 0x00d2 Ò + 26,37,3,30,2,255,0,1,255,64,0,0,0,0,0,191,192,0,0,0,0,0,47,224,0,0,0,0,0,11,244,0,0,0,0,0,1,252,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x00d3 Ó + 26,37,3,30,2,255,0,0,0,15,252,0,0,0,0,0,31,240,0,0,0,0,0,63,208,0,0,0,0,0,255,0,0,0,0,0,1,252,0,0,0,0,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x00d4 Ô + 26,37,3,30,2,255,0,0,11,253,0,0,0,0,0,31,255,0,0,0,0,0,127,255,192,0,0,0,0,255,15,240,0,0,0,3,248,3,252,0,0,0,15,208,0,190,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x00d5 Õ + 26,36,252,30,2,255,0,0,191,64,31,0,0,0,3,255,244,63,0,0,0,11,255,255,253,0,0,0,15,129,255,248,0,0,0,15,0,27,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x00d6 Ö + 26,36,252,30,2,255,0,0,248,2,224,0,0,0,2,253,7,244,0,0,0,2,253,7,248,0,0,0,0,252,3,240,0,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,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x00d7 × + 17,17,85,22,2,5,8,0,0,5,0,47,0,0,31,64,127,192,0,127,192,31,240,1,255,0,7,252,7,252,0,1,255,31,240,0,0,127,255,192,0,0,31,255,0,0,0,11,253,0,0,0,31,255,0,0,0,127,255,192,0,1,255,47,240,0,7,252,11,252,0,31,240,1,255,0,63,192,0,127,192,63,0,0,31,128,8,0,0,6,0, + // 0x00d8 Ø + 26,30,210,30,2,254,0,0,5,165,0,120,0,0,2,255,255,244,254,0,0,47,255,255,255,252,0,0,191,255,255,255,244,0,2,255,228,1,191,244,0,7,255,0,0,63,252,0,15,252,0,0,127,255,0,47,240,0,0,255,255,64,63,224,0,3,252,255,128,63,208,0,11,240,127,192,127,192,0,15,208,63,192,191,192,0,63,128,63,208,191,128,0,191,0,63,208,191,128,1,253,0,63,208,191,128,3,248,0,63,224,191,128,11,240,0,63,208,191,128,31,192,0,63,208,127,192,63,128,0,63,208,127,192,255,0,0,63,192,63,210,252,0,0,191,192,63,227,244,0,0,255,128,31,255,240,0,1,255,0,15,255,192,0,3,254,0,7,255,128,0,31,252,0,2,255,244,1,255,244,0,2,255,255,255,255,208,0,7,255,255,255,255,0,0,15,225,255,255,228,0,0,3,192,1,84,0,0,0,0,0,0,0,0,0,0, + // 0x00d9 Ù + 22,37,222,28,3,255,0,31,248,0,0,0,0,7,252,0,0,0,0,1,255,0,0,0,0,0,127,128,0,0,0,0,31,208,0,0,0,0,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,224,0,0,27,255,254,64,0,0,0,21,64,0,0, + // 0x00da Ú + 22,37,222,28,3,255,0,0,0,191,192,0,0,0,1,255,64,0,0,0,3,253,0,0,0,0,11,244,0,0,0,0,31,208,0,0,0,0,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,224,0,0,27,255,254,64,0,0,0,21,64,0,0, + // 0x00db Û + 22,37,222,28,3,255,0,0,191,224,0,0,0,1,255,244,0,0,0,3,255,252,0,0,0,15,240,255,0,0,0,63,192,63,192,0,0,190,0,11,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,224,0,0,27,255,254,64,0,0,0,21,64,0,0, + // 0x00dc Ü + 22,36,216,28,3,255,0,11,128,47,0,0,0,31,208,63,128,0,0,47,208,127,128,0,0,15,192,47,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,224,0,0,27,255,254,64,0,0,0,21,64,0,0, + // 0x00dd Ý + 22,36,216,22,0,0,0,0,0,191,192,0,0,0,1,255,64,0,0,0,3,253,0,0,0,0,11,244,0,0,0,0,31,208,0,0,0,0,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,192,0,0,47,240,63,208,0,0,63,208,47,240,0,0,191,128,15,244,0,0,255,0,11,252,0,2,254,0,3,253,0,3,252,0,1,255,0,11,248,0,0,255,64,31,240,0,0,127,192,63,208,0,0,63,208,127,192,0,0,31,240,255,64,0,0,11,249,255,0,0,0,3,255,253,0,0,0,2,255,248,0,0,0,0,255,240,0,0,0,0,191,224,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x00de Þ + 19,27,135,23,3,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,234,165,0,0,127,255,255,244,0,127,255,255,254,0,127,255,255,255,192,127,128,1,255,208,127,128,0,63,240,127,128,0,31,240,127,128,0,15,244,127,128,0,15,244,127,128,0,15,244,127,128,0,15,240,127,128,0,47,240,127,128,0,127,224,127,192,27,255,192,127,255,255,255,0,127,255,255,252,0,127,255,255,144,0,127,213,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0, + // 0x00df ß + 21,30,180,25,3,255,0,111,255,144,0,0,3,255,255,253,0,0,31,255,255,255,128,0,63,249,6,255,208,0,127,192,0,63,224,0,191,128,0,31,240,0,255,64,0,31,224,0,255,0,0,47,208,0,255,0,0,127,192,0,255,0,2,255,0,0,255,0,11,252,0,0,255,0,47,240,0,0,255,0,63,192,0,0,255,0,127,128,0,0,255,0,127,192,0,0,255,0,63,244,0,0,255,0,31,254,0,0,255,0,7,255,192,0,255,0,0,255,240,0,255,0,0,47,252,0,255,0,0,7,255,0,255,0,0,1,255,0,255,0,0,0,255,64,255,0,0,0,255,64,255,0,0,0,255,0,255,3,144,2,255,0,255,3,255,255,253,0,255,3,255,255,248,0,255,0,191,255,208,0,0,0,1,84,0,0, + // 0x00e0 à + 18,30,150,22,1,255,0,127,208,0,0,0,47,240,0,0,0,11,248,0,0,0,2,253,0,0,0,0,191,0,0,0,0,31,192,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x00e1 á + 18,30,150,22,1,255,0,0,3,255,0,0,0,7,252,0,0,0,15,244,0,0,0,63,192,0,0,0,191,0,0,0,0,252,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x00e2 â + 18,30,150,22,1,255,0,2,255,64,0,0,7,255,192,0,0,31,255,240,0,0,63,195,252,0,0,254,0,255,0,3,244,0,47,128,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x00e3 ã + 18,29,145,22,1,255,0,47,208,7,192,0,255,253,15,192,2,255,255,255,64,3,224,127,254,0,3,192,6,248,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x00e4 ä + 18,29,145,22,1,255,0,62,0,184,0,0,191,1,253,0,0,191,65,253,0,0,62,0,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x00e5 å + 18,33,165,22,1,255,0,0,16,0,0,0,2,255,64,0,0,15,255,224,0,0,15,66,240,0,0,31,0,240,0,0,31,1,240,0,0,15,135,240,0,0,11,255,208,0,0,1,254,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x00e6 æ + 31,22,176,33,1,255,0,6,254,64,1,191,144,0,2,255,255,244,31,255,252,0,7,255,255,253,127,255,255,0,3,254,87,255,255,149,255,192,1,128,0,127,252,0,47,224,0,0,0,63,244,0,15,240,0,0,0,47,240,0,15,244,0,0,0,47,224,0,11,244,0,0,21,127,229,85,91,248,0,111,255,255,255,255,255,248,3,255,255,255,255,255,255,248,15,254,84,63,250,170,170,164,47,240,0,47,224,0,0,0,63,208,0,63,224,0,0,0,63,192,0,63,240,0,0,0,127,192,0,63,244,0,0,0,63,192,0,255,252,0,0,0,63,224,3,254,255,64,6,224,31,255,255,240,255,255,255,224,11,255,255,192,63,255,255,224,1,255,254,0,7,255,255,64,0,5,64,0,0,21,64,0, + // 0x00e7 ç + 15,31,124,19,2,246,0,6,254,144,0,191,255,252,3,255,255,252,15,255,171,248,47,244,0,16,63,208,0,0,127,192,0,0,191,128,0,0,255,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,0,191,128,0,0,127,192,0,0,63,240,0,0,31,253,0,124,11,255,255,252,2,255,255,252,0,47,255,244,0,2,248,0,0,3,240,0,0,7,253,0,0,1,255,64,0,0,47,128,0,0,31,192,0,21,127,128,0,63,255,0,0,63,248,0,0,0,0,0, + // 0x00e8 è + 18,30,150,22,2,255,1,255,64,0,0,0,191,192,0,0,0,47,224,0,0,0,11,244,0,0,0,1,252,0,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x00e9 é + 18,30,150,22,2,255,0,0,15,252,0,0,0,31,240,0,0,0,63,208,0,0,0,191,64,0,0,1,252,0,0,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x00ea ê + 18,30,150,22,2,255,0,11,254,0,0,0,31,255,64,0,0,63,255,192,0,0,255,15,240,0,3,248,3,252,0,15,208,0,190,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x00eb ë + 18,29,145,22,2,255,0,248,2,224,0,2,253,7,248,0,2,253,7,248,0,0,252,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x00ec ì + 8,29,58,10,0,0,255,128,127,208,31,240,7,248,1,253,0,63,0,0,0,0,1,84,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252,3,252, + // 0x00ed í + 9,29,87,10,3,0,2,255,64,3,253,0,15,244,0,47,208,0,127,64,0,253,0,0,0,0,0,0,0,0,85,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, + // 0x00ee î + 14,29,116,10,254,0,0,127,224,0,0,255,244,0,3,255,253,0,15,240,255,0,47,192,47,192,190,0,7,240,0,0,0,0,0,0,0,0,0,21,64,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0, + // 0x00ef ï + 12,28,84,10,255,0,46,0,124,127,128,254,127,128,255,63,0,189,0,0,0,0,0,0,0,0,0,0,85,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0, + // 0x00f0 ð + 19,30,150,23,2,255,0,13,0,6,0,0,47,208,63,64,0,63,250,255,128,0,11,255,252,0,0,1,255,224,0,0,11,255,244,0,0,127,251,252,0,0,127,65,255,0,0,40,0,191,128,0,0,0,63,192,0,0,0,31,224,0,47,255,143,240,2,255,255,251,244,11,255,255,255,248,47,249,1,191,252,63,224,0,31,252,127,192,0,11,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,7,248,191,192,0,11,244,63,208,0,31,240,31,248,0,127,208,11,255,255,255,128,2,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x00f1 ñ + 18,28,140,24,3,0,0,191,64,31,0,3,255,244,63,0,11,255,255,253,0,15,129,255,252,0,15,0,27,224,0,0,0,0,0,0,0,0,0,0,0,84,1,191,144,0,254,15,255,253,0,255,63,255,255,64,255,255,155,255,192,255,240,0,127,208,255,208,0,47,224,255,192,0,31,240,255,128,0,15,240,255,64,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240, + // 0x00f2 ò + 19,30,150,23,2,255,0,191,192,0,0,0,63,224,0,0,0,15,244,0,0,0,3,252,0,0,0,0,255,0,0,0,0,47,64,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x00f3 ó + 19,30,150,23,2,255,0,0,3,254,0,0,0,15,252,0,0,0,31,240,0,0,0,63,192,0,0,0,254,0,0,0,2,248,0,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x00f4 ô + 19,30,150,23,2,255,0,3,255,0,0,0,15,255,192,0,0,47,255,224,0,0,127,135,248,0,1,253,1,253,0,3,240,0,63,64,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x00f5 õ + 19,29,145,23,2,255,0,127,208,11,128,1,255,253,31,64,3,255,255,255,0,7,208,127,253,0,11,128,7,244,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x00f6 ö + 19,29,145,23,2,255,0,125,0,248,0,0,255,2,252,0,0,255,2,252,0,0,125,1,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x00f7 ÷ + 18,19,95,22,2,4,0,0,64,0,0,0,3,248,0,0,0,7,252,0,0,0,7,252,0,0,0,3,248,0,0,0,0,144,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,3,248,0,0,0,7,252,0,0,0,7,252,0,0,0,3,248,0,0,0,0,80,0,0, + // 0x00f8 ø + 19,23,115,23,2,254,0,6,254,67,208,0,191,255,255,240,3,255,255,255,192,15,255,171,255,192,47,244,0,255,224,63,208,1,255,240,127,192,3,255,248,191,128,15,247,252,255,64,47,195,252,255,0,63,67,252,255,0,254,3,252,255,2,252,3,252,255,7,240,3,252,255,79,224,3,252,191,175,192,7,248,63,255,0,15,244,63,253,0,47,240,15,253,0,191,208,11,255,255,255,128,15,255,255,254,0,63,175,255,224,0,11,0,84,0,0,0,0,0,0,0, + // 0x00f9 ù + 18,30,150,24,3,255,1,255,64,0,0,0,127,192,0,0,0,47,240,0,0,0,11,244,0,0,0,1,252,0,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,11,240,0,5,64,0,0, + // 0x00fa ú + 18,30,150,24,3,255,0,0,15,252,0,0,0,31,244,0,0,0,63,208,0,0,0,191,64,0,0,1,253,0,0,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,11,240,0,5,64,0,0, + // 0x00fb û + 18,30,150,24,3,255,0,11,253,0,0,0,31,255,0,0,0,63,255,192,0,0,255,15,240,0,3,248,3,252,0,15,208,0,190,0,0,0,0,0,0,0,0,0,0,0,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,11,240,0,5,64,0,0, + // 0x00fc ü + 18,29,145,24,3,255,0,248,2,224,0,2,253,7,244,0,2,253,7,248,0,0,252,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,11,240,0,5,64,0,0, + // 0x00fd ý + 20,39,195,20,0,246,0,0,2,255,0,0,0,7,253,0,0,0,15,244,0,0,0,47,208,0,0,0,127,64,0,0,0,252,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,0,85,191,128,0,2,254,63,192,0,3,253,63,208,0,7,252,31,240,0,11,248,15,240,0,15,240,11,248,0,31,240,3,252,0,47,208,3,253,0,63,192,1,254,0,127,128,0,255,0,255,64,0,191,64,255,0,0,63,129,254,0,0,63,195,252,0,0,31,211,252,0,0,15,231,244,0,0,11,251,240,0,0,3,255,224,0,0,3,255,192,0,0,1,255,192,0,0,0,255,64,0,0,0,255,0,0,0,1,254,0,0,0,2,253,0,0,0,3,252,0,0,0,15,244,0,0,16,127,240,0,0,127,255,192,0,0,127,255,64,0,0,127,248,0,0,0,0,0,0,0,0, + // 0x00fe þ + 19,39,195,24,3,246,191,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,1,191,128,0,255,15,255,248,0,255,127,255,255,0,255,254,155,255,128,255,240,0,127,208,255,192,0,47,240,255,128,0,15,240,255,64,0,15,244,255,64,0,11,244,255,0,0,11,248,255,0,0,11,248,255,0,0,11,248,255,64,0,11,244,255,64,0,15,244,255,128,0,15,240,255,192,0,31,240,255,224,0,63,224,255,248,1,255,192,255,255,255,255,64,255,63,255,253,0,255,7,255,240,0,255,0,21,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,0,0,0,0,0, + // 0x00ff ÿ + 20,38,190,20,0,246,0,62,0,188,0,0,191,65,254,0,0,191,65,254,0,0,63,0,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,0,85,191,128,0,2,254,63,192,0,3,253,63,208,0,7,252,31,240,0,11,248,15,240,0,15,240,11,248,0,31,240,3,252,0,47,208,3,253,0,63,192,1,254,0,127,128,0,255,0,255,64,0,191,64,255,0,0,63,129,254,0,0,63,195,252,0,0,31,211,252,0,0,15,231,244,0,0,11,251,240,0,0,3,255,224,0,0,3,255,192,0,0,1,255,192,0,0,0,255,64,0,0,0,255,0,0,0,1,254,0,0,0,2,253,0,0,0,3,252,0,0,0,15,244,0,0,16,127,240,0,0,127,255,192,0,0,127,255,64,0,0,127,248,0,0,0,0,0,0,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_ASCII_28.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_ASCII_28.cpp new file mode 100644 index 000000000000..246f9fb60fb2 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_ASCII_28.cpp @@ -0,0 +1,222 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium ASCII 38pt, capital 'A' height: 28px, width: 100%, range: 0x0020-0x007e +extern const uint8_t NotoSans_Medium_ASCII_28[12031] = { + 130,28,32,0,126,0,37,246, // unifont_t + // 0x0020 " " + 0,0,0,10,0,0, + // 0x0021 ! + 6,28,56,10,2,255,63,224,63,224,63,208,63,208,63,208,63,208,63,208,63,192,47,192,47,192,47,192,47,192,47,192,31,192,31,192,31,192,31,192,31,128,15,128,0,0,0,0,0,0,31,128,63,224,127,224,127,224,63,208,5,0, + // 0x0022 " + 12,10,30,16,2,17,127,65,254,127,64,254,127,64,254,127,64,253,63,0,253,63,0,253,63,0,252,63,0,188,63,0,188,42,0,104, + // 0x0023 # + 23,27,162,25,1,0,0,0,253,0,253,0,0,0,252,0,252,0,0,0,252,0,252,0,0,1,248,1,248,0,0,2,248,2,248,0,0,3,244,2,244,0,0,3,240,3,240,0,0,7,240,7,240,0,47,255,255,255,255,248,47,255,255,255,255,248,26,175,250,175,250,164,0,15,192,15,192,0,0,15,192,15,192,0,0,31,192,31,192,0,0,31,128,47,128,0,0,47,64,47,64,0,255,255,255,255,255,192,255,255,255,255,255,208,255,255,255,255,255,208,0,190,0,190,0,0,0,189,0,189,0,0,0,252,0,252,0,0,0,252,0,252,0,0,0,252,1,252,0,0,1,248,1,248,0,0,2,244,2,244,0,0,2,244,3,244,0,0, + // 0x0024 $ + 18,32,160,22,2,253,0,1,240,0,0,0,1,240,0,0,0,1,240,0,0,0,27,250,80,0,2,255,255,255,64,15,255,255,255,192,63,255,255,255,64,127,209,240,27,0,255,65,240,0,0,255,1,240,0,0,255,65,240,0,0,191,193,240,0,0,63,250,240,0,0,47,255,240,0,0,7,255,255,64,0,0,191,255,244,0,0,7,255,255,0,0,1,255,255,192,0,1,240,191,208,0,1,240,47,224,0,1,240,15,240,0,1,240,31,224,144,1,240,63,208,254,81,246,255,192,255,255,255,255,64,255,255,255,252,0,27,255,255,144,0,0,2,240,0,0,0,1,240,0,0,0,1,240,0,0,0,1,240,0,0,0,0,0,0,0, + // 0x0025 % + 30,29,232,32,1,255,0,21,0,0,0,0,0,0,2,255,224,0,0,127,0,0,11,255,248,0,0,253,0,0,31,230,253,0,1,252,0,0,47,128,190,0,3,244,0,0,63,64,127,0,11,240,0,0,63,0,63,0,15,208,0,0,127,0,63,64,47,128,0,0,127,0,63,64,63,0,0,0,127,0,63,64,254,0,0,0,127,0,63,65,252,0,0,0,63,0,63,3,244,6,144,0,63,64,127,7,240,191,252,0,47,128,190,15,210,255,255,0,15,230,253,47,195,248,127,128,11,255,248,63,71,240,31,192,2,255,224,190,11,224,15,208,0,21,0,252,15,208,15,224,0,0,3,248,15,208,11,224,0,0,7,240,15,208,11,224,0,0,15,224,15,208,11,224,0,0,31,192,15,208,11,224,0,0,63,64,15,224,15,208,0,0,191,0,11,224,15,208,0,0,253,0,7,240,47,192,0,2,248,0,3,254,191,128,0,3,240,0,0,255,255,0,0,15,224,0,0,127,248,0,0,0,0,0,0,1,64,0, + // 0x0026 & + 26,29,203,28,2,255,0,1,101,0,0,0,0,0,47,255,224,0,0,0,0,255,255,252,0,0,0,3,255,239,255,0,0,0,7,253,1,255,0,0,0,11,244,0,191,64,0,0,11,240,0,127,64,0,0,11,244,0,191,64,0,0,7,248,0,255,0,0,0,3,253,3,254,0,0,0,1,255,31,252,0,0,0,0,191,255,240,0,0,0,0,63,255,128,0,0,0,0,127,253,0,0,0,0,2,255,255,0,0,191,64,15,254,255,192,0,255,0,63,244,63,240,1,254,0,127,208,15,252,3,253,0,255,128,3,255,3,252,0,255,0,0,255,223,244,0,255,0,0,63,255,240,0,255,0,0,15,255,192,0,255,128,0,3,255,128,0,191,208,0,15,255,208,0,127,249,1,191,255,244,0,47,255,255,255,223,253,0,11,255,255,254,3,255,64,0,191,255,224,0,255,208,0,1,80,0,0,0,0, + // 0x0027 ' + 5,10,20,9,2,17,127,64,127,64,127,64,127,64,63,0,63,0,63,0,63,0,63,0,42,0, + // 0x0028 ( + 10,33,99,12,1,250,0,31,208,0,63,128,0,255,0,1,253,0,3,252,0,7,248,0,11,240,0,15,240,0,31,208,0,47,192,0,63,192,0,63,192,0,63,128,0,127,128,0,127,64,0,127,64,0,127,64,0,127,64,0,127,64,0,127,128,0,63,128,0,63,192,0,63,192,0,47,192,0,31,224,0,15,240,0,11,240,0,7,248,0,3,252,0,1,253,0,0,191,0,0,63,128,0,31,208, + // 0x0029 ) + 10,33,99,12,1,250,127,0,0,63,192,0,15,224,0,11,240,0,3,248,0,2,252,0,1,254,0,0,255,0,0,191,0,0,127,64,0,63,128,0,63,192,0,63,192,0,47,192,0,47,208,0,47,208,0,47,208,0,47,208,0,47,208,0,47,192,0,63,192,0,63,192,0,63,128,0,127,128,0,191,0,0,255,0,1,254,0,2,252,0,3,248,0,11,240,0,15,224,0,63,192,0,127,0,0, + // 0x002a * + 19,18,90,21,1,11,0,2,253,0,0,0,2,252,0,0,0,1,252,0,0,0,1,252,0,0,0,0,252,0,0,36,0,252,0,96,63,208,248,111,240,127,255,255,255,240,127,255,255,255,244,5,107,255,149,64,0,7,255,0,0,0,15,239,192,0,0,63,143,224,0,0,191,7,244,0,1,255,3,252,0,3,253,1,254,0,0,124,0,244,0,0,0,0,0,0, + // 0x002b + + 18,19,95,22,2,4,0,1,160,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,0,3,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0,0,2,244,0,0, + // 0x002c , + 7,10,20,10,1,251,5,80,15,248,15,240,15,240,31,224,47,192,63,192,63,64,63,0,126,0, + // 0x002d - + 10,4,12,12,1,8,191,255,224,191,255,240,191,255,240,106,170,144, + // 0x002e . + 6,6,12,10,2,255,31,128,63,224,127,224,127,224,63,208,5,0, + // 0x002f / + 14,27,108,15,0,0,0,0,15,240,0,0,15,224,0,0,47,208,0,0,63,192,0,0,127,128,0,0,191,0,0,0,255,0,0,1,253,0,0,3,252,0,0,3,248,0,0,11,244,0,0,15,240,0,0,31,224,0,0,47,192,0,0,63,192,0,0,127,64,0,0,191,0,0,0,254,0,0,1,253,0,0,3,252,0,0,3,248,0,0,11,240,0,0,15,240,0,0,31,208,0,0,47,192,0,0,63,128,0,0,127,64,0,0, + // 0x0030 0 + 19,29,145,22,1,255,0,1,101,0,0,0,47,255,240,0,0,255,255,253,0,3,255,255,255,64,7,254,0,191,192,15,244,0,63,208,31,240,0,15,240,47,224,0,15,240,63,208,0,11,244,63,192,0,7,248,63,192,0,7,252,63,192,0,3,252,63,192,0,3,252,127,192,0,3,252,127,128,0,3,252,127,192,0,3,252,63,192,0,3,252,63,192,0,3,252,63,192,0,7,252,63,192,0,7,248,47,208,0,11,244,31,224,0,15,240,15,240,0,31,240,11,248,0,63,208,3,254,1,255,192,1,255,255,255,64,0,191,255,253,0,0,27,255,224,0,0,0,20,0,0, + // 0x0031 1 + 11,27,81,22,3,0,0,3,252,0,31,252,0,191,252,2,255,252,15,255,252,127,227,252,191,131,252,45,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252, + // 0x0032 2 + 19,28,140,22,1,0,0,1,101,0,0,0,127,255,244,0,7,255,255,254,0,47,255,255,255,128,47,244,1,255,192,11,128,0,63,224,1,0,0,31,240,0,0,0,15,240,0,0,0,15,240,0,0,0,31,240,0,0,0,47,224,0,0,0,63,192,0,0,0,191,128,0,0,1,255,0,0,0,3,253,0,0,0,15,248,0,0,0,63,224,0,0,0,255,128,0,0,3,254,0,0,0,15,248,0,0,0,63,224,0,0,0,255,128,0,0,3,254,0,0,0,15,248,0,0,0,63,250,170,170,168,127,255,255,255,252,127,255,255,255,252,127,255,255,255,252, + // 0x0033 3 + 19,29,145,22,1,255,0,1,85,0,0,1,191,255,244,0,15,255,255,255,0,63,255,255,255,192,31,224,0,191,208,10,0,0,63,224,0,0,0,31,240,0,0,0,15,240,0,0,0,15,240,0,0,0,47,224,0,0,0,63,192,0,0,1,255,64,0,42,191,253,0,0,63,255,208,0,0,63,255,248,0,0,42,191,255,128,0,0,0,191,224,0,0,0,31,240,0,0,0,15,248,0,0,0,11,248,0,0,0,7,248,0,0,0,11,248,0,0,0,15,244,16,0,0,63,240,126,64,1,255,224,127,255,255,255,192,127,255,255,254,0,11,255,255,224,0,0,5,80,0,0, + // 0x0034 4 + 20,28,140,22,1,0,0,0,0,21,0,0,0,1,255,64,0,0,3,255,64,0,0,11,255,64,0,0,31,255,64,0,0,63,191,64,0,0,191,191,64,0,1,252,191,64,0,3,244,191,64,0,15,240,191,64,0,31,192,191,64,0,63,64,191,64,0,254,0,191,64,2,252,0,191,64,7,244,0,191,64,15,224,0,191,64,47,192,0,191,64,127,64,0,191,64,255,85,85,255,149,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64, + // 0x0035 5 + 18,28,140,22,2,255,15,255,255,255,0,31,255,255,255,0,31,255,255,255,0,31,229,85,85,0,31,208,0,0,0,47,192,0,0,0,47,192,0,0,0,47,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,235,249,0,0,63,255,255,240,0,63,255,255,253,0,31,234,175,255,64,0,0,1,255,192,0,0,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,224,0,0,0,31,224,0,0,0,47,208,0,0,0,63,192,64,0,0,255,192,254,64,27,255,0,255,255,255,253,0,255,255,255,244,0,31,255,255,64,0,0,21,64,0,0, + // 0x0036 6 + 18,29,145,22,2,255,0,0,5,85,0,0,2,255,255,0,0,47,255,255,0,0,255,255,255,0,3,255,128,0,0,11,252,0,0,0,15,240,0,0,0,47,208,0,0,0,63,192,0,0,0,127,128,0,0,0,191,64,0,0,0,255,6,255,224,0,255,47,255,253,0,255,191,255,255,64,255,249,1,255,192,255,208,0,63,208,255,128,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,191,0,0,15,240,127,128,0,15,240,63,192,0,31,224,47,224,0,63,208,15,253,1,255,192,7,255,255,255,0,1,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x0037 7 + 19,27,135,22,1,0,191,255,255,255,252,191,255,255,255,252,191,255,255,255,252,21,85,85,91,248,0,0,0,15,244,0,0,0,15,240,0,0,0,47,208,0,0,0,63,192,0,0,0,191,128,0,0,0,255,0,0,0,2,254,0,0,0,3,252,0,0,0,7,248,0,0,0,15,244,0,0,0,31,240,0,0,0,63,208,0,0,0,127,192,0,0,0,191,64,0,0,0,255,0,0,0,2,254,0,0,0,3,252,0,0,0,11,248,0,0,0,15,244,0,0,0,31,240,0,0,0,63,208,0,0,0,127,192,0,0,0,255,64,0,0, + // 0x0038 8 + 19,29,145,22,1,255,0,1,85,0,0,0,47,255,248,0,1,255,255,255,0,7,255,235,255,192,15,248,0,127,224,31,240,0,15,240,31,224,0,15,240,31,208,0,15,240,31,224,0,15,240,15,240,0,31,224,7,253,0,127,192,2,255,131,255,0,0,191,255,252,0,0,31,255,208,0,0,63,255,244,0,1,255,239,255,0,11,253,1,255,192,31,240,0,63,240,63,208,0,15,244,63,192,0,3,252,63,128,0,3,252,127,128,0,3,252,63,192,0,3,252,63,208,0,11,248,31,248,0,47,240,15,255,255,255,208,2,255,255,255,64,0,111,255,248,0,0,0,84,0,0, + // 0x0039 9 + 19,29,145,22,1,255,0,1,85,0,0,0,47,255,224,0,1,255,255,253,0,7,255,255,255,64,15,253,1,255,192,31,240,0,63,224,63,192,0,15,240,63,192,0,11,244,63,128,0,7,248,127,128,0,3,248,63,128,0,3,252,63,192,0,7,252,63,192,0,15,252,47,240,0,47,252,15,253,1,255,252,7,255,255,247,252,1,255,255,211,248,0,47,254,7,248,0,0,0,7,244,0,0,0,11,240,0,0,0,15,240,0,0,0,47,208,0,0,0,127,192,0,0,1,255,64,0,0,31,254,0,7,255,255,248,0,7,255,255,208,0,7,255,253,0,0,0,85,0,0,0, + // 0x003a : + 6,22,44,10,2,255,31,128,63,224,127,224,127,224,63,208,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,128,63,224,127,224,127,224,63,208,5,0, + // 0x003b ; + 7,26,52,10,1,251,7,224,15,244,31,248,31,248,15,240,1,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,80,15,244,15,240,31,224,47,208,63,192,63,128,63,0,126,0,189,0, + // 0x003c < + 18,19,95,22,2,4,0,0,0,0,176,0,0,0,11,240,0,0,0,191,240,0,0,11,255,144,0,0,191,248,0,0,11,255,128,0,0,191,248,0,0,11,255,128,0,0,191,244,0,0,0,255,128,0,0,0,255,244,0,0,0,47,255,128,0,0,1,255,249,0,0,0,31,255,208,0,0,0,191,254,0,0,0,11,255,224,0,0,0,127,240,0,0,0,6,240,0,0,0,0,32, + // 0x003d = + 18,11,55,22,2,8,170,170,170,170,144,255,255,255,255,224,255,255,255,255,224,85,85,85,85,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,224,255,255,255,255,224,255,255,255,255,224, + // 0x003e > + 18,19,95,22,2,4,208,0,0,0,0,253,0,0,0,0,255,208,0,0,0,127,253,0,0,0,7,255,208,0,0,0,127,253,0,0,0,2,255,208,0,0,0,47,253,0,0,0,2,255,208,0,0,0,63,240,0,0,1,255,240,0,0,47,255,64,0,7,255,244,0,0,191,254,0,0,27,255,224,0,0,255,253,0,0,0,255,144,0,0,0,248,0,0,0,0,64,0,0,0,0, + // 0x003f ? + 16,29,116,17,0,255,0,21,84,0,7,255,255,128,127,255,255,240,63,255,255,252,47,64,7,253,4,0,1,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,1,254,0,0,3,252,0,0,31,248,0,0,127,224,0,2,255,128,0,7,253,0,0,15,240,0,0,31,208,0,0,47,192,0,0,47,128,0,0,47,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,128,0,0,127,208,0,0,127,224,0,0,127,224,0,0,63,192,0,0,5,0,0, + // 0x0040 @ + 30,31,248,34,2,252,0,0,2,255,255,144,0,0,0,0,127,255,255,253,0,0,0,3,255,254,191,255,192,0,0,31,253,0,0,127,240,0,0,127,208,0,0,7,252,0,1,254,0,0,0,0,255,0,3,248,0,0,0,0,63,64,11,240,0,43,249,64,47,192,15,192,2,255,255,240,15,208,47,128,15,255,255,240,11,224,63,0,63,208,11,240,7,240,127,0,191,64,11,240,3,240,190,0,254,0,11,224,3,240,189,0,252,0,11,224,3,240,253,1,252,0,11,224,3,240,253,1,252,0,15,224,3,240,253,1,252,0,15,224,7,224,253,1,252,0,15,224,11,208,253,0,253,0,47,224,15,192,190,0,191,64,127,240,63,128,127,0,63,255,249,255,255,0,63,0,31,255,224,191,252,0,63,128,1,254,64,31,144,0,31,208,0,0,0,0,0,0,15,240,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,255,208,0,0,108,0,0,0,63,255,166,175,252,0,0,0,7,255,255,255,252,0,0,0,0,111,255,255,144,0,0,0,0,0,21,64,0,0,0, + // 0x0041 A + 25,28,196,25,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x0042 B + 20,27,135,25,3,0,127,255,255,228,0,127,255,255,255,128,127,255,255,255,224,127,213,86,255,244,127,128,0,31,252,127,128,0,11,252,127,128,0,3,252,127,128,0,3,252,127,128,0,7,252,127,128,0,15,244,127,128,0,127,240,127,255,255,255,128,127,255,255,248,0,127,255,255,255,64,127,234,170,255,240,127,128,0,31,252,127,128,0,3,253,127,128,0,2,254,127,128,0,1,255,127,128,0,1,255,127,128,0,2,255,127,128,0,3,254,127,128,0,15,252,127,213,86,255,248,127,255,255,255,240,127,255,255,255,64,127,255,255,228,0, + // 0x0043 C + 21,29,174,24,2,255,0,0,5,85,0,0,0,1,255,255,249,0,0,31,255,255,255,128,0,127,255,255,255,0,1,255,244,1,191,0,3,255,64,0,4,0,15,252,0,0,0,0,31,244,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,63,208,0,0,0,0,63,240,0,0,0,0,31,244,0,0,0,0,15,252,0,0,0,0,7,255,64,0,0,0,2,255,249,1,111,0,0,191,255,255,255,0,0,31,255,255,255,0,0,2,255,255,249,0,0,0,1,84,0,0, + // 0x0044 D + 23,27,162,28,3,0,127,255,255,228,0,0,127,255,255,255,64,0,127,255,255,255,240,0,127,213,86,255,252,0,127,128,0,31,255,0,127,128,0,2,255,128,127,128,0,0,191,192,127,128,0,0,63,224,127,128,0,0,47,240,127,128,0,0,15,240,127,128,0,0,15,244,127,128,0,0,15,244,127,128,0,0,15,248,127,128,0,0,11,248,127,128,0,0,15,244,127,128,0,0,15,244,127,128,0,0,15,244,127,128,0,0,31,240,127,128,0,0,47,240,127,128,0,0,63,208,127,128,0,0,255,192,127,128,0,3,255,64,127,128,0,47,254,0,127,213,107,255,248,0,127,255,255,255,208,0,127,255,255,254,0,0,127,255,255,144,0,0, + // 0x0045 E + 16,27,108,21,3,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x0046 F + 16,27,108,20,3,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0, + // 0x0047 G + 23,29,174,28,2,255,0,0,1,89,80,0,0,0,191,255,255,128,0,11,255,255,255,244,0,63,255,255,255,240,1,255,249,0,27,208,3,255,128,0,0,64,11,253,0,0,0,0,31,248,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,128,0,42,170,164,191,128,0,63,255,248,191,128,0,63,255,248,191,128,0,63,255,248,127,192,0,0,7,248,127,192,0,0,7,248,63,208,0,0,7,248,63,240,0,0,7,248,31,244,0,0,7,248,15,253,0,0,7,248,3,255,64,0,7,248,1,255,249,0,91,248,0,127,255,255,255,248,0,31,255,255,255,248,0,1,191,255,255,144,0,0,0,85,0,0, + // 0x0048 H + 22,27,162,28,3,0,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,255,255,255,255,240,127,255,255,255,255,240,127,255,255,255,255,240,127,234,170,170,175,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240, + // 0x0049 I + 11,27,81,13,1,0,191,255,252,191,255,252,47,255,228,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,47,255,244,191,255,252,191,255,252, + // 0x004a J + 11,35,105,11,253,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,244,0,15,244,0,31,240,64,127,240,255,255,208,255,255,64,255,252,0,21,64,0, + // 0x004b K + 21,27,162,24,3,0,127,128,0,2,255,0,127,128,0,7,253,0,127,128,0,31,244,0,127,128,0,63,224,0,127,128,0,255,128,0,127,128,3,255,0,0,127,128,11,252,0,0,127,128,47,240,0,0,127,128,127,192,0,0,127,129,255,64,0,0,127,131,253,0,0,0,127,143,248,0,0,0,127,255,252,0,0,0,127,255,254,0,0,0,127,255,255,64,0,0,127,240,255,192,0,0,127,192,63,224,0,0,127,128,31,244,0,0,127,128,15,252,0,0,127,128,3,255,0,0,127,128,1,255,64,0,127,128,0,191,192,0,127,128,0,63,240,0,127,128,0,15,248,0,127,128,0,11,253,0,127,128,0,3,255,0,127,128,0,0,255,128, + // 0x004c L + 17,27,135,20,3,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,234,170,170,0,127,255,255,255,64,127,255,255,255,64,127,255,255,255,64, + // 0x004d M + 29,27,216,35,3,0,127,248,0,0,0,15,255,64,127,252,0,0,0,15,255,64,127,253,0,0,0,47,255,64,127,255,0,0,0,63,255,64,127,191,0,0,0,127,191,64,127,127,64,0,0,191,191,64,127,63,192,0,0,253,191,64,127,47,192,0,1,252,191,64,127,79,224,0,3,248,191,64,127,79,240,0,3,244,191,64,127,71,244,0,7,240,191,64,127,67,248,0,15,224,191,64,127,66,252,0,15,208,191,64,127,65,253,0,47,192,191,64,127,64,254,0,63,128,191,64,127,64,191,0,127,0,191,64,127,64,127,64,191,0,191,64,127,64,63,192,253,0,191,64,127,64,47,193,252,0,191,64,127,64,15,211,248,0,191,64,127,64,15,243,244,0,191,64,127,64,11,255,240,0,191,64,127,64,3,255,224,0,191,64,127,64,3,255,192,0,191,64,127,64,1,255,192,0,191,64,127,64,0,255,128,0,191,64,127,64,0,255,0,0,191,64, + // 0x004e N + 23,27,162,29,3,0,127,240,0,0,3,252,127,248,0,0,3,252,127,252,0,0,3,252,127,255,0,0,3,252,127,255,64,0,3,252,127,191,192,0,3,252,127,63,224,0,3,252,127,31,244,0,3,252,127,11,252,0,3,252,127,3,254,0,3,252,127,65,255,0,3,252,127,64,255,192,3,252,127,64,63,208,3,252,127,64,47,240,3,252,127,64,15,248,3,252,127,64,7,253,3,252,127,64,2,255,3,252,127,64,0,255,131,252,127,64,0,127,195,252,127,64,0,63,243,252,127,64,0,15,246,252,127,64,0,11,255,252,127,64,0,3,255,252,127,64,0,1,255,252,127,64,0,0,191,252,127,64,0,0,63,252,127,64,0,0,31,252, + // 0x004f O + 26,29,203,30,2,255,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x0050 P + 19,27,135,23,3,0,127,255,255,144,0,127,255,255,253,0,127,255,255,255,64,127,213,91,255,192,127,128,0,127,224,127,128,0,47,240,127,128,0,15,244,127,128,0,15,244,127,128,0,15,244,127,128,0,15,244,127,128,0,31,240,127,128,0,63,224,127,128,1,255,192,127,255,255,255,128,127,255,255,253,0,127,255,255,224,0,127,234,169,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0, + // 0x0051 Q + 26,35,245,30,2,249,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,244,0,0,0,0,1,95,252,0,0,0,0,0,7,255,0,0,0,0,0,1,255,192,0,0,0,0,0,191,224,0,0,0,0,0,47,248,0,0,0,0,0,15,254,0,0,0,0,0,1,85,0, + // 0x0052 R + 21,27,162,24,3,0,127,255,255,144,0,0,127,255,255,253,0,0,127,255,255,255,128,0,127,213,91,255,208,0,127,128,0,127,240,0,127,128,0,31,240,0,127,128,0,15,244,0,127,128,0,15,244,0,127,128,0,15,244,0,127,128,0,15,240,0,127,128,0,47,240,0,127,128,0,127,208,0,127,213,91,255,128,0,127,255,255,254,0,0,127,255,255,240,0,0,127,255,255,208,0,0,127,128,31,240,0,0,127,128,11,248,0,0,127,128,3,253,0,0,127,128,2,255,0,0,127,128,0,255,128,0,127,128,0,127,192,0,127,128,0,47,240,0,127,128,0,15,244,0,127,128,0,11,252,0,127,128,0,3,254,0,127,128,0,1,255,64, + // 0x0053 S + 17,29,145,21,2,255,0,5,85,0,0,0,191,255,249,0,7,255,255,255,128,31,255,255,255,0,63,244,1,191,0,127,192,0,0,0,191,64,0,0,0,255,64,0,0,0,191,64,0,0,0,191,192,0,0,0,127,224,0,0,0,63,253,0,0,0,15,255,208,0,0,3,255,254,0,0,0,127,255,224,0,0,7,255,252,0,0,0,127,255,0,0,0,7,255,64,0,0,0,255,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,144,0,0,255,128,254,80,27,255,0,255,255,255,253,0,255,255,255,244,0,47,255,255,64,0,0,21,64,0,0, + // 0x0054 T + 21,27,162,21,0,0,191,255,255,255,255,192,191,255,255,255,255,192,191,255,255,255,255,192,21,85,191,213,85,64,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0, + // 0x0055 U + 22,28,168,28,3,255,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,224,0,0,27,255,254,64,0,0,0,21,64,0,0, + // 0x0056 V + 23,27,162,23,0,0,255,64,0,0,3,252,127,192,0,0,7,252,63,192,0,0,15,244,47,208,0,0,15,240,31,240,0,0,31,224,15,240,0,0,63,208,11,244,0,0,63,192,7,252,0,0,191,128,3,252,0,0,255,64,2,254,0,0,255,0,1,255,0,2,254,0,0,255,0,3,253,0,0,191,128,3,252,0,0,63,192,11,248,0,0,63,192,15,240,0,0,47,224,15,240,0,0,15,240,47,224,0,0,15,240,63,192,0,0,7,248,63,192,0,0,3,252,191,64,0,0,3,252,255,0,0,0,1,253,254,0,0,0,0,255,253,0,0,0,0,191,252,0,0,0,0,127,248,0,0,0,0,63,244,0,0,0,0,47,240,0,0, + // 0x0057 W + 36,27,243,36,0,0,191,128,0,1,255,0,0,3,253,127,192,0,2,255,64,0,3,252,63,192,0,3,255,128,0,7,248,63,208,0,7,255,192,0,11,244,31,224,0,11,255,192,0,15,240,15,240,0,15,239,208,0,15,240,15,240,0,15,223,240,0,31,224,11,244,0,31,203,240,0,47,208,7,248,0,47,199,244,0,63,192,3,252,0,63,131,248,0,63,192,3,252,0,127,67,252,0,127,128,2,253,0,191,2,252,0,191,64,1,254,0,255,0,254,0,255,0,0,255,0,254,0,255,0,255,0,0,255,1,253,0,191,1,254,0,0,191,66,252,0,127,66,253,0,0,127,131,248,0,63,131,252,0,0,63,195,244,0,63,195,252,0,0,63,199,240,0,47,199,248,0,0,47,219,240,0,15,219,240,0,0,31,223,224,0,15,235,240,0,0,15,239,208,0,11,239,224,0,0,15,255,192,0,7,255,208,0,0,11,255,192,0,3,255,192,0,0,7,255,64,0,3,255,192,0,0,3,255,0,0,2,255,128,0,0,2,255,0,0,0,255,64,0, + // 0x0058 X + 23,27,162,23,0,0,63,224,0,0,31,240,31,244,0,0,63,208,11,252,0,0,191,128,3,253,0,0,255,0,1,255,0,3,253,0,0,191,128,7,252,0,0,63,208,15,240,0,0,31,240,47,208,0,0,11,248,127,192,0,0,3,252,255,0,0,0,1,255,254,0,0,0,0,255,252,0,0,0,0,63,244,0,0,0,0,127,244,0,0,0,0,255,252,0,0,0,2,255,254,0,0,0,3,252,255,64,0,0,15,244,127,192,0,0,31,224,63,224,0,0,63,192,15,240,0,0,191,64,11,252,0,1,255,0,3,254,0,3,253,0,1,255,0,11,248,0,0,191,192,31,240,0,0,63,208,63,208,0,0,47,240,191,192,0,0,15,248, + // 0x0059 Y + 22,27,162,22,0,0,191,192,0,0,47,240,63,208,0,0,63,208,47,240,0,0,191,128,15,244,0,0,255,0,11,252,0,2,254,0,3,253,0,3,252,0,1,255,0,11,248,0,0,255,64,31,240,0,0,127,192,63,208,0,0,63,208,127,192,0,0,31,240,255,64,0,0,11,249,255,0,0,0,3,255,253,0,0,0,2,255,248,0,0,0,0,255,240,0,0,0,0,191,224,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x005a Z + 20,27,135,22,1,0,127,255,255,255,252,127,255,255,255,252,127,255,255,255,252,21,85,85,95,248,0,0,0,47,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,3,253,0,0,0,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,7,253,0,0,0,15,248,0,0,0,47,240,0,0,0,127,208,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,248,0,0,0,47,240,0,0,0,127,234,170,170,169,191,255,255,255,253,191,255,255,255,253,191,255,255,255,253, + // 0x005b [ + 9,33,99,13,3,250,255,255,128,255,255,128,255,255,128,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,254,0,0,255,255,128,255,255,128,255,255,128, + // 0x005c "\" + 14,27,108,15,0,0,127,64,0,0,63,128,0,0,47,192,0,0,31,208,0,0,15,240,0,0,11,240,0,0,3,248,0,0,3,252,0,0,1,253,0,0,0,254,0,0,0,191,0,0,0,127,64,0,0,63,192,0,0,47,192,0,0,15,224,0,0,15,240,0,0,7,244,0,0,3,248,0,0,2,252,0,0,1,253,0,0,0,255,0,0,0,191,0,0,0,63,128,0,0,63,192,0,0,31,208,0,0,15,224,0,0,11,240, + // 0x005d ] + 9,33,99,13,1,250,255,255,128,255,255,128,255,255,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,0,63,128,255,255,128,255,255,128,255,255,128, + // 0x005e ^ + 19,18,90,22,1,10,0,0,16,0,0,0,0,252,0,0,0,2,253,0,0,0,3,255,0,0,0,7,255,64,0,0,15,223,192,0,0,31,203,208,0,0,63,67,240,0,0,127,2,248,0,0,253,0,252,0,0,252,0,190,0,2,248,0,63,0,3,240,0,47,128,11,224,0,15,192,15,192,0,11,224,47,192,0,3,240,63,64,0,2,248,127,0,0,0,252, + // 0x005f _ + 17,3,15,16,0,250,170,170,170,170,64,255,255,255,255,128,255,255,255,255,128, + // 0x0060 ` + 9,6,18,12,1,23,127,224,0,31,240,0,7,252,0,1,254,0,0,127,64,0,31,192, + // 0x0061 a + 18,22,110,22,1,255,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x0062 b + 19,30,150,24,3,255,191,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,1,174,128,0,255,15,255,248,0,255,127,255,255,0,255,254,155,255,128,255,240,0,191,208,255,192,0,47,240,255,128,0,15,240,255,64,0,15,244,255,64,0,11,244,255,0,0,11,248,255,0,0,11,248,255,0,0,11,248,255,64,0,11,244,255,64,0,15,244,255,128,0,15,240,255,192,0,31,240,255,224,0,63,224,255,248,1,255,192,255,255,255,255,64,254,63,255,253,0,253,11,255,224,0,0,0,21,0,0, + // 0x0063 c + 15,22,88,19,2,255,0,6,254,144,0,191,255,252,3,255,255,252,15,255,171,248,47,244,0,16,63,208,0,0,127,192,0,0,191,128,0,0,255,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,0,191,128,0,0,127,192,0,0,63,240,0,0,31,253,0,124,11,255,255,252,2,255,255,252,0,47,255,244,0,0,84,0, + // 0x0064 d + 19,30,150,24,2,255,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,27,232,11,244,1,255,255,139,244,7,255,255,247,244,15,254,155,255,244,63,244,0,127,244,63,208,0,47,244,191,192,0,15,244,191,128,0,15,244,255,64,0,11,244,255,0,0,11,244,255,0,0,7,244,255,0,0,7,244,255,0,0,11,244,255,64,0,11,244,191,128,0,15,244,127,192,0,15,244,63,224,0,63,244,47,248,1,255,244,15,255,255,251,244,3,255,255,211,244,0,127,254,3,244,0,1,64,0,0, + // 0x0065 e + 18,22,110,22,2,255,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x0066 f + 15,29,116,14,0,0,0,1,255,248,0,15,255,252,0,63,255,248,0,127,228,96,0,191,128,0,0,255,64,0,0,255,0,0,0,255,0,0,1,255,149,64,47,255,255,192,127,255,255,192,42,255,170,128,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0, + // 0x0067 g + 19,31,155,24,2,246,0,27,232,1,80,1,255,255,131,244,7,255,255,243,244,15,255,171,255,244,47,244,0,191,244,63,208,0,47,244,127,192,0,15,244,191,128,0,15,244,255,64,0,11,244,255,0,0,11,244,255,0,0,7,244,255,0,0,7,244,255,0,0,7,244,255,64,0,11,244,191,128,0,15,244,127,192,0,15,244,63,224,0,47,244,47,248,0,191,244,15,255,255,251,244,3,255,255,219,244,0,191,254,11,244,0,1,80,11,244,0,0,0,11,244,0,0,0,15,240,0,0,0,31,240,16,0,0,63,224,47,148,2,255,192,47,255,255,255,64,47,255,255,253,0,2,191,255,144,0,0,0,0,0,0, + // 0x0068 h + 18,29,145,24,3,0,191,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,1,175,144,0,255,15,255,253,0,255,63,255,255,64,255,255,155,255,192,255,240,0,127,208,255,208,0,47,224,255,192,0,31,240,255,128,0,15,240,255,64,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240, + // 0x0069 i + 5,28,56,10,3,0,191,0,255,64,255,64,191,0,4,0,0,0,0,0,85,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, + // 0x006a j + 10,38,114,10,254,246,0,47,192,0,63,208,0,63,208,0,47,192,0,1,0,0,0,0,0,0,0,0,21,64,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,65,255,192,255,255,64,255,254,0,255,244,0,0,0,0, + // 0x006b k + 18,29,145,21,3,0,191,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,21,64,255,0,0,255,128,255,0,3,254,0,255,0,15,248,0,255,0,63,224,0,255,0,255,192,0,255,2,255,0,0,255,11,252,0,0,255,47,240,0,0,255,127,208,0,0,255,255,240,0,0,255,255,252,0,0,255,227,254,0,0,255,129,255,64,0,255,0,191,192,0,255,0,63,240,0,255,0,15,248,0,255,0,7,253,0,255,0,2,255,0,255,0,0,255,192,255,0,0,63,224, + // 0x006c l + 4,29,29,10,3,0,191,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x006d m + 30,21,168,36,3,0,84,1,190,128,0,111,224,0,254,31,255,248,7,255,254,0,255,127,255,254,47,255,255,128,255,254,155,255,191,166,255,208,255,240,0,255,252,0,63,224,255,192,0,127,240,0,31,240,255,192,0,63,224,0,15,240,255,64,0,63,208,0,15,240,255,64,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240,255,0,0,63,192,0,15,240, + // 0x006e n + 18,21,105,24,3,0,84,1,191,144,0,254,15,255,253,0,255,63,255,255,64,255,255,155,255,192,255,240,0,127,208,255,208,0,47,224,255,192,0,31,240,255,128,0,15,240,255,64,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240, + // 0x006f o + 19,22,110,23,2,255,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x0070 p + 19,31,155,24,3,246,84,1,191,128,0,254,15,255,248,0,255,63,255,255,0,255,254,155,255,192,255,240,0,191,208,255,192,0,47,240,255,128,0,15,240,255,64,0,15,244,255,64,0,11,244,255,0,0,11,248,255,0,0,11,248,255,0,0,11,248,255,64,0,11,244,255,64,0,15,244,255,128,0,15,240,255,192,0,47,240,255,224,0,63,224,255,248,1,255,192,255,255,255,255,64,255,63,255,253,0,255,7,255,224,0,255,0,21,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,0,0,0,0,0, + // 0x0071 q + 19,31,155,24,2,246,0,27,232,1,80,1,255,255,131,244,7,255,255,247,244,15,254,155,255,244,63,240,0,127,244,63,208,0,47,244,191,192,0,15,244,191,128,0,15,244,255,64,0,11,244,255,0,0,11,244,255,0,0,7,244,255,0,0,7,244,255,0,0,11,244,255,64,0,11,244,191,128,0,15,244,127,192,0,15,244,63,224,0,63,244,47,248,1,255,244,15,255,255,251,244,3,255,255,219,244,0,191,254,11,244,0,1,64,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,0,0, + // 0x0072 r + 13,21,84,16,3,0,84,0,191,64,253,11,255,64,254,47,255,64,255,127,255,0,255,253,0,0,255,240,0,0,255,192,0,0,255,128,0,0,255,64,0,0,255,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0, + // 0x0073 s + 15,22,88,18,2,255,0,111,233,0,11,255,255,240,63,255,255,240,191,229,111,224,255,0,0,64,255,0,0,0,255,0,0,0,255,208,0,0,127,253,0,0,31,255,224,0,2,255,254,0,0,47,255,208,0,1,255,240,0,0,47,248,0,0,11,248,0,0,3,248,0,0,7,248,244,0,31,244,255,251,255,240,255,255,255,192,111,255,253,0,0,85,0,0, + // 0x0074 t + 14,26,104,15,0,255,0,62,0,0,0,126,0,0,0,190,0,0,0,254,0,0,2,255,85,64,47,255,255,208,127,255,255,208,43,255,170,128,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,255,0,0,0,255,128,0,0,255,255,224,0,63,255,224,0,11,255,208,0,0,84,0, + // 0x0075 u + 18,22,110,24,3,255,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,11,240,0,5,64,0,0, + // 0x0076 v + 20,21,105,20,0,0,85,0,0,0,85,191,128,0,2,254,127,192,0,3,252,63,208,0,7,252,31,224,0,11,244,15,240,0,15,240,11,244,0,31,224,7,248,0,63,208,3,252,0,63,192,2,253,0,127,128,0,255,0,255,0,0,255,0,255,0,0,127,130,253,0,0,63,195,252,0,0,47,195,248,0,0,31,215,244,0,0,15,235,240,0,0,11,255,224,0,0,3,255,192,0,0,3,255,192,0,0,1,255,64,0, + // 0x0077 w + 30,21,168,31,0,0,106,64,0,26,144,0,6,160,127,192,0,63,240,0,15,240,63,192,0,127,240,0,31,224,47,208,0,255,244,0,47,208,31,224,0,255,248,0,63,192,15,240,1,253,252,0,63,192,15,240,2,248,253,0,127,128,11,244,3,244,254,0,191,64,7,248,3,240,191,0,255,0,3,252,11,240,127,0,254,0,3,252,15,224,63,65,253,0,2,253,15,208,63,130,252,0,1,254,31,192,47,195,252,0,0,255,47,192,15,211,248,0,0,191,63,64,15,231,244,0,0,127,127,0,11,235,240,0,0,63,191,0,7,255,240,0,0,63,254,0,3,255,208,0,0,47,253,0,3,255,192,0,0,31,252,0,2,255,192,0,0,15,248,0,0,255,128,0, + // 0x0078 x + 19,21,105,21,1,0,85,64,0,5,84,127,192,0,31,240,47,240,0,63,208,15,244,0,255,128,7,252,1,255,0,2,255,3,253,0,0,255,75,248,0,0,127,239,240,0,0,47,255,192,0,0,15,255,128,0,0,7,255,0,0,0,15,255,64,0,0,47,255,192,0,0,63,239,240,0,0,255,79,248,0,2,255,3,253,0,7,252,1,255,0,15,244,0,255,128,47,240,0,63,208,127,192,0,31,240,255,64,0,15,252, + // 0x0079 y + 20,31,155,20,0,246,85,0,0,0,85,191,128,0,2,254,63,192,0,3,253,63,208,0,7,252,31,240,0,11,248,15,240,0,15,240,11,248,0,31,240,3,252,0,47,208,3,253,0,63,192,1,254,0,127,128,0,255,0,255,64,0,191,64,255,0,0,63,129,254,0,0,63,195,252,0,0,31,211,252,0,0,15,231,244,0,0,11,251,240,0,0,3,255,224,0,0,3,255,192,0,0,1,255,192,0,0,0,255,64,0,0,0,255,0,0,0,1,254,0,0,0,2,253,0,0,0,3,252,0,0,0,15,244,0,0,16,127,240,0,0,127,255,192,0,0,127,255,64,0,0,127,248,0,0,0,0,0,0,0,0, + // 0x007a z + 16,21,84,18,1,0,21,85,85,84,63,255,255,253,63,255,255,253,42,170,171,252,0,0,11,248,0,0,31,240,0,0,63,192,0,0,255,64,0,2,254,0,0,7,252,0,0,15,244,0,0,47,224,0,0,127,192,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,208,0,0,191,255,255,254,191,255,255,254,191,255,255,254, + // 0x007b { + 13,33,132,15,1,250,0,0,191,64,0,11,255,64,0,47,255,64,0,63,244,0,0,127,192,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,191,64,0,0,255,0,0,27,254,0,0,255,244,0,0,255,128,0,0,255,248,0,0,7,254,0,0,0,255,0,0,0,191,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,192,0,0,63,245,0,0,47,255,64,0,11,255,64,0,0,111,64, + // 0x007c | + 3,38,38,21,9,247,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252, + // 0x007d } + 13,33,132,15,1,250,191,64,0,0,191,244,0,0,191,252,0,0,7,254,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,191,0,0,0,191,0,0,0,127,128,0,0,63,245,0,0,11,255,128,0,1,255,128,0,15,255,128,0,63,228,0,0,191,128,0,0,191,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,1,255,0,0,27,254,0,0,191,252,0,0,191,240,0,0,190,64,0,0, + // 0x007e ~ + 18,6,30,22,2,10,31,254,0,0,32,191,255,244,1,240,255,255,255,255,240,244,7,255,255,224,128,0,47,255,64,0,0,0,16,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Cyrillic_28.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Cyrillic_28.cpp new file mode 100644 index 000000000000..00448f3064ad --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Cyrillic_28.cpp @@ -0,0 +1,322 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Cyrillic 38pt, capital 'A' height: 28px, width: 100%, range: 0x0401-0x0491, glyphs: 74 +extern const uint8_t NotoSans_Medium_Cyrillic_28[10988] = { + 130,28,1,4,145,4,37,246, // unifont_t + // 0x0401 Ё + 16,35,140,21,3,0,1,244,3,208,3,252,15,240,3,252,15,240,2,244,7,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x0402 Ђ + 255, + // 0x0403 Ѓ + 255, + // 0x0404 Є + 22,29,174,25,2,255,0,0,1,105,64,0,0,1,191,255,254,64,0,15,255,255,255,208,0,127,255,255,255,192,1,255,244,0,111,128,3,255,64,0,1,0,15,252,0,0,0,0,31,244,0,0,0,0,63,224,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,234,170,170,144,0,191,255,255,255,208,0,191,255,255,255,208,0,191,234,170,170,144,0,191,128,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,63,208,0,0,0,0,63,224,0,0,0,0,31,244,0,0,0,0,15,252,0,0,0,0,7,255,64,0,0,0,2,255,249,1,111,128,0,191,255,255,255,128,0,31,255,255,255,128,0,1,255,255,254,0,0,0,1,85,0,0, + // 0x0405 Ѕ + 255, + // 0x0406 І + 11,27,81,13,1,0,191,255,252,191,255,252,47,255,228,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,47,255,244,191,255,252,191,255,252, + // 0x0407 Ї + 12,35,105,13,1,0,125,0,248,255,2,253,255,2,253,126,0,252,0,0,0,0,0,0,0,0,0,0,0,0,191,255,252,191,255,252,47,255,228,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,47,255,244,191,255,252,191,255,252, + // 0x0408 Ј + 255, + // 0x0409 Љ + 255, + // 0x040a Њ + 255, + // 0x040b Ћ + 255, + // 0x040c Ќ + 255, + // 0x040d Ѝ + 255, + // 0x040e Ў + 255, + // 0x040f Џ + 255, + // 0x0410 А + 25,28,196,25,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x0411 Б + 19,27,135,24,3,0,127,255,255,255,192,127,255,255,255,192,127,255,255,255,192,127,213,85,85,64,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,255,254,144,0,127,255,255,253,0,127,255,255,255,128,127,234,171,255,224,127,128,0,127,240,127,128,0,15,244,127,128,0,11,248,127,128,0,7,248,127,128,0,7,248,127,128,0,11,248,127,128,0,15,244,127,128,0,127,240,127,213,107,255,224,127,255,255,255,128,127,255,255,253,0,127,255,255,144,0, + // 0x0412 В + 20,27,135,25,3,0,127,255,255,228,0,127,255,255,255,128,127,255,255,255,224,127,213,86,255,244,127,128,0,31,252,127,128,0,11,252,127,128,0,3,252,127,128,0,3,252,127,128,0,7,252,127,128,0,15,244,127,128,0,127,240,127,255,255,255,128,127,255,255,248,0,127,255,255,255,64,127,234,170,255,240,127,128,0,31,252,127,128,0,3,253,127,128,0,2,254,127,128,0,1,255,127,128,0,1,255,127,128,0,2,255,127,128,0,3,254,127,128,0,15,252,127,213,86,255,248,127,255,255,255,240,127,255,255,255,64,127,255,255,228,0, + // 0x0413 Г + 17,27,135,20,3,0,127,255,255,255,64,127,255,255,255,64,127,255,255,255,64,127,213,85,85,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0, + // 0x0414 Д + 27,35,245,27,0,248,0,0,63,255,255,252,0,0,0,63,255,255,252,0,0,0,63,255,255,252,0,0,0,63,213,91,252,0,0,0,127,128,7,252,0,0,0,127,64,7,252,0,0,0,191,64,7,252,0,0,0,255,0,7,252,0,0,0,255,0,7,252,0,0,1,254,0,7,252,0,0,2,253,0,7,252,0,0,3,252,0,7,252,0,0,3,252,0,7,252,0,0,7,248,0,7,252,0,0,15,244,0,7,252,0,0,15,240,0,7,252,0,0,47,224,0,7,252,0,0,63,192,0,7,252,0,0,127,192,0,7,252,0,0,255,64,0,7,252,0,0,255,0,0,7,252,0,2,254,0,0,7,252,0,3,252,0,0,7,252,0,111,254,170,170,171,254,160,255,255,255,255,255,255,244,255,255,255,255,255,255,244,255,255,255,255,255,255,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,85,0,0,0,0,5,80, + // 0x0415 Е + 16,27,108,21,3,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x0416 Ж + 33,27,243,33,0,0,63,208,0,3,248,0,0,255,128,31,240,0,3,248,0,2,254,0,11,252,0,3,248,0,7,252,0,2,254,0,3,248,0,15,240,0,0,255,64,3,248,0,63,208,0,0,63,192,3,248,0,191,128,0,0,31,240,3,248,1,255,0,0,0,11,248,3,248,3,252,0,0,0,3,253,3,248,15,244,0,0,0,0,255,3,248,47,224,0,0,0,0,127,195,248,127,192,0,0,0,0,47,227,248,255,0,0,0,0,0,15,251,251,253,0,0,0,0,0,15,255,255,253,0,0,0,0,0,47,247,249,255,0,0,0,0,0,127,195,248,191,192,0,0,0,0,255,67,248,63,224,0,0,0,3,254,3,248,15,244,0,0,0,11,252,3,248,7,252,0,0,0,31,240,3,248,2,255,0,0,0,63,208,3,248,0,255,128,0,0,255,128,3,248,0,127,208,0,2,255,0,3,248,0,47,240,0,7,252,0,3,248,0,15,252,0,15,244,0,3,248,0,3,254,0,63,224,0,3,248,0,1,255,64,191,192,0,3,248,0,0,191,192, + // 0x0417 З + 20,29,145,23,1,255,0,1,85,64,0,0,191,255,254,0,11,255,255,255,192,63,255,255,255,240,47,228,0,47,252,14,0,0,11,252,0,0,0,3,253,0,0,0,2,253,0,0,0,3,253,0,0,0,3,252,0,0,0,15,248,0,0,0,191,224,0,170,255,255,64,0,255,255,228,0,0,255,255,254,0,0,170,175,255,224,0,0,0,111,248,0,0,0,7,253,0,0,0,2,255,0,0,0,0,255,0,0,0,0,255,0,0,0,1,255,0,0,0,2,255,80,0,0,11,253,126,64,0,127,252,127,255,255,255,240,127,255,255,255,128,11,255,255,248,0,0,5,84,0,0, + // 0x0418 И + 23,27,162,30,3,0,127,64,0,0,15,252,127,64,0,0,47,252,127,64,0,0,63,252,127,64,0,0,255,252,127,64,0,1,255,252,127,64,0,3,254,252,127,64,0,15,249,252,127,64,0,31,241,252,127,64,0,63,209,252,127,64,0,191,129,252,127,64,1,255,2,252,127,64,3,253,2,252,127,64,11,248,2,252,127,64,31,240,2,252,127,64,63,208,2,252,127,64,191,192,2,252,127,65,255,0,2,252,127,67,253,0,2,252,127,75,252,0,2,252,127,79,240,0,2,252,127,63,224,0,2,252,127,191,192,0,2,252,127,255,64,0,2,252,127,254,0,0,2,252,127,252,0,0,2,252,127,244,0,0,2,252,127,224,0,0,2,252, + // 0x0419 Й + 23,36,216,30,3,0,0,42,64,0,106,0,0,63,128,0,255,0,0,63,192,1,254,0,0,31,249,91,252,0,0,11,255,255,244,0,0,1,255,255,128,0,0,0,1,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,64,0,0,15,252,127,64,0,0,47,252,127,64,0,0,63,252,127,64,0,0,255,252,127,64,0,1,255,252,127,64,0,3,254,252,127,64,0,15,249,252,127,64,0,31,241,252,127,64,0,63,209,252,127,64,0,191,129,252,127,64,1,255,2,252,127,64,3,253,2,252,127,64,11,248,2,252,127,64,31,240,2,252,127,64,63,208,2,252,127,64,191,192,2,252,127,65,255,0,2,252,127,67,253,0,2,252,127,75,252,0,2,252,127,79,240,0,2,252,127,63,224,0,2,252,127,191,192,0,2,252,127,255,64,0,2,252,127,254,0,0,2,252,127,252,0,0,2,252,127,244,0,0,2,252,127,224,0,0,2,252, + // 0x041a К + 21,27,162,24,3,0,127,128,0,2,255,0,127,128,0,7,252,0,127,128,0,31,244,0,127,128,0,63,208,0,127,128,0,255,128,0,127,128,3,254,0,0,127,128,11,252,0,0,127,128,47,240,0,0,127,128,127,192,0,0,127,129,255,64,0,0,127,131,253,0,0,0,127,143,248,0,0,0,127,255,240,0,0,0,127,255,224,0,0,0,127,159,248,0,0,0,127,135,253,0,0,0,127,130,255,64,0,0,127,128,191,192,0,0,127,128,63,240,0,0,127,128,15,252,0,0,127,128,3,254,0,0,127,128,1,255,64,0,127,128,0,191,208,0,127,128,0,47,240,0,127,128,0,15,252,0,127,128,0,3,255,0,127,128,0,0,255,128, + // 0x041b Л + 24,28,168,27,0,255,0,0,255,255,255,254,0,0,255,255,255,254,0,0,255,255,255,254,0,1,254,85,86,254,0,1,253,0,1,254,0,2,253,0,1,254,0,2,252,0,1,254,0,3,252,0,1,254,0,3,252,0,1,254,0,3,252,0,1,254,0,3,248,0,1,254,0,7,248,0,1,254,0,11,244,0,1,254,0,11,240,0,1,254,0,15,240,0,1,254,0,15,240,0,1,254,0,15,240,0,1,254,0,31,224,0,1,254,0,47,208,0,1,254,0,63,208,0,1,254,0,63,192,0,1,254,0,127,192,0,1,254,0,255,64,0,1,254,2,255,0,0,1,254,255,254,0,0,1,254,255,252,0,0,1,254,255,224,0,0,1,254,21,0,0,0,0,0, + // 0x041c М + 29,27,216,35,3,0,127,248,0,0,0,15,255,64,127,252,0,0,0,15,255,64,127,253,0,0,0,47,255,64,127,255,0,0,0,63,255,64,127,191,0,0,0,127,191,64,127,127,64,0,0,191,191,64,127,63,192,0,0,253,191,64,127,47,192,0,1,252,191,64,127,79,224,0,3,248,191,64,127,79,240,0,3,244,191,64,127,71,244,0,7,240,191,64,127,67,248,0,15,224,191,64,127,66,252,0,15,208,191,64,127,65,253,0,47,192,191,64,127,64,254,0,63,128,191,64,127,64,191,0,127,0,191,64,127,64,127,64,191,0,191,64,127,64,63,192,253,0,191,64,127,64,47,193,252,0,191,64,127,64,15,211,248,0,191,64,127,64,15,243,244,0,191,64,127,64,11,255,240,0,191,64,127,64,3,255,224,0,191,64,127,64,3,255,192,0,191,64,127,64,1,255,192,0,191,64,127,64,0,255,128,0,191,64,127,64,0,255,0,0,191,64, + // 0x041d Н + 22,27,162,28,3,0,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,255,255,255,255,240,127,255,255,255,255,240,127,255,255,255,255,240,127,234,170,170,175,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240, + // 0x041e О + 26,29,203,30,2,255,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x041f П + 22,27,162,28,3,0,127,255,255,255,255,208,127,255,255,255,255,208,127,255,255,255,255,208,127,213,85,85,127,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208,127,128,0,0,63,208, + // 0x0420 Р + 19,27,135,23,3,0,127,255,255,144,0,127,255,255,253,0,127,255,255,255,64,127,213,91,255,192,127,128,0,127,224,127,128,0,47,240,127,128,0,15,244,127,128,0,15,244,127,128,0,15,244,127,128,0,15,244,127,128,0,31,240,127,128,0,63,224,127,128,1,255,192,127,255,255,255,128,127,255,255,253,0,127,255,255,224,0,127,234,169,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0, + // 0x0421 С + 21,29,174,24,2,255,0,0,5,85,0,0,0,1,255,255,249,0,0,31,255,255,255,128,0,127,255,255,255,0,1,255,244,1,191,0,3,255,64,0,4,0,15,252,0,0,0,0,31,244,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,63,208,0,0,0,0,63,240,0,0,0,0,31,244,0,0,0,0,15,252,0,0,0,0,7,255,64,0,0,0,2,255,249,1,111,0,0,191,255,255,255,0,0,31,255,255,255,0,0,2,255,255,249,0,0,0,1,84,0,0, + // 0x0422 Т + 21,27,162,21,0,0,191,255,255,255,255,192,191,255,255,255,255,192,191,255,255,255,255,192,21,85,191,213,85,64,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0, + // 0x0423 У + 24,28,168,24,0,255,127,192,0,0,1,255,63,224,0,0,3,253,31,240,0,0,7,252,11,248,0,0,11,248,3,252,0,0,15,240,2,254,0,0,47,224,0,255,0,0,63,192,0,191,128,0,127,192,0,63,192,0,255,64,0,47,224,1,255,0,0,15,240,2,253,0,0,11,248,3,252,0,0,3,252,11,248,0,0,2,253,15,240,0,0,0,255,31,224,0,0,0,191,127,192,0,0,0,63,255,192,0,0,0,47,255,64,0,0,0,15,255,0,0,0,0,11,253,0,0,0,0,15,252,0,0,0,0,31,244,0,0,0,0,127,240,0,0,30,86,255,208,0,0,31,255,255,64,0,0,31,255,253,0,0,0,31,255,224,0,0,0,0,84,0,0,0,0, + // 0x0424 Ф + 28,29,203,31,2,255,0,0,0,169,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,6,255,255,254,64,0,0,191,255,255,255,248,0,3,255,255,255,255,255,64,15,255,150,254,91,255,192,47,248,1,254,0,127,240,63,208,1,254,0,15,244,191,128,1,254,0,11,252,255,64,1,254,0,3,252,255,0,1,254,0,3,252,255,0,1,254,0,3,253,255,0,1,254,0,3,253,255,0,1,254,0,3,252,255,64,1,254,0,3,252,191,128,1,254,0,11,248,63,208,1,254,0,31,244,47,248,1,254,0,127,240,15,255,145,254,27,255,192,3,255,255,255,255,255,0,0,127,255,255,255,248,0,0,6,255,255,254,64,0,0,0,2,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,0,84,0,0,0, + // 0x0425 Х + 23,27,162,23,0,0,63,224,0,0,31,240,31,244,0,0,63,208,11,252,0,0,191,128,3,253,0,0,255,0,1,255,0,3,253,0,0,191,128,7,252,0,0,63,208,15,240,0,0,31,240,47,208,0,0,11,248,127,192,0,0,3,252,255,0,0,0,1,255,254,0,0,0,0,255,252,0,0,0,0,63,244,0,0,0,0,127,244,0,0,0,0,255,252,0,0,0,2,255,254,0,0,0,3,252,255,64,0,0,15,244,127,192,0,0,31,224,63,224,0,0,63,192,15,240,0,0,191,64,11,252,0,1,255,0,3,254,0,3,253,0,1,255,0,11,248,0,0,191,192,31,240,0,0,63,208,63,208,0,0,47,240,191,192,0,0,15,248, + // 0x0426 Ц + 25,35,245,29,3,248,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,128,0,0,63,208,0,127,234,170,170,191,229,64,127,255,255,255,255,255,192,127,255,255,255,255,255,192,127,255,255,255,255,255,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,21,64, + // 0x0427 Ч + 22,27,162,27,2,0,127,192,0,0,63,208,127,192,0,0,63,208,127,192,0,0,63,208,127,192,0,0,63,208,127,192,0,0,63,208,127,192,0,0,63,208,127,192,0,0,63,208,127,192,0,0,63,208,127,192,0,0,63,208,127,192,0,0,63,208,127,192,0,0,63,208,63,192,0,0,63,208,63,208,0,0,63,208,63,244,0,7,255,208,31,255,255,255,255,208,11,255,255,255,255,208,1,255,255,254,127,208,0,26,170,64,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208, + // 0x0428 Ш + 33,27,243,40,3,0,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,128,0,3,252,0,0,63,192,127,234,170,171,254,170,170,191,192,127,255,255,255,255,255,255,255,192,127,255,255,255,255,255,255,255,192,127,255,255,255,255,255,255,255,192, + // 0x0429 Щ + 37,35,94,40,3,248,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,128,0,7,252,0,0,63,192,0,127,234,170,171,254,170,170,191,213,0,127,255,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,255,64,0,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,0,21,0, + // 0x042a Ъ + 25,27,189,27,0,0,255,255,252,0,0,0,0,255,255,252,0,0,0,0,255,255,252,0,0,0,0,85,91,252,0,0,0,0,0,7,252,0,0,0,0,0,7,252,0,0,0,0,0,7,252,0,0,0,0,0,7,252,0,0,0,0,0,7,252,0,0,0,0,0,7,252,0,0,0,0,0,7,252,0,0,0,0,0,7,255,255,233,0,0,0,7,255,255,255,208,0,0,7,255,255,255,248,0,0,7,254,170,191,254,0,0,7,252,0,7,255,0,0,7,252,0,0,255,64,0,7,252,0,0,191,128,0,7,252,0,0,127,192,0,7,252,0,0,127,192,0,7,252,0,0,191,128,0,7,252,0,0,255,64,0,7,252,0,7,255,0,0,7,253,86,191,253,0,0,7,255,255,255,248,0,0,7,255,255,255,208,0,0,7,255,255,249,0,0, + // 0x042b Ы + 27,27,189,33,3,0,127,128,0,0,0,11,248,127,128,0,0,0,11,248,127,128,0,0,0,11,248,127,128,0,0,0,11,248,127,128,0,0,0,11,248,127,128,0,0,0,11,248,127,128,0,0,0,11,248,127,128,0,0,0,11,248,127,128,0,0,0,11,248,127,128,0,0,0,11,248,127,128,0,0,0,11,248,127,255,254,64,0,11,248,127,255,255,252,0,11,248,127,255,255,255,64,11,248,127,234,175,255,192,11,248,127,128,0,127,240,11,248,127,128,0,31,240,11,248,127,128,0,15,244,11,248,127,128,0,11,244,11,248,127,128,0,15,244,11,248,127,128,0,15,244,11,248,127,128,0,31,240,11,248,127,128,0,127,240,11,248,127,213,91,255,192,11,248,127,255,255,255,64,11,248,127,255,255,252,0,11,248,127,255,254,128,0,11,248, + // 0x042c Ь + 20,27,135,24,3,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,255,255,144,0,127,255,255,254,0,127,255,255,255,208,127,234,171,255,240,127,128,0,31,252,127,128,0,7,252,127,128,0,3,253,127,128,0,3,253,127,128,0,3,253,127,128,0,3,253,127,128,0,7,252,127,128,0,47,248,127,213,90,255,240,127,255,255,255,208,127,255,255,255,0,127,255,255,160,0, + // 0x042d Э + 21,29,174,24,1,255,0,21,84,0,0,0,27,255,255,224,0,0,191,255,255,254,0,0,63,255,255,255,192,0,63,144,6,255,240,0,4,0,0,47,252,0,0,0,0,11,253,0,0,0,0,3,255,0,0,0,0,0,255,0,0,0,0,0,255,128,0,0,0,0,191,128,0,0,0,0,127,192,0,255,255,255,255,192,0,255,255,255,255,192,0,255,255,255,255,192,0,170,170,170,255,192,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,255,64,0,0,0,1,255,0,0,0,0,3,254,0,0,0,0,11,252,0,0,0,0,63,248,0,126,80,27,255,240,0,127,255,255,255,192,0,127,255,255,253,0,0,47,255,255,208,0,0,0,21,80,0,0,0, + // 0x042e Ю + 35,29,5,40,3,255,0,0,0,0,0,90,80,0,0,127,128,0,0,47,255,255,64,0,127,128,0,1,255,255,255,240,0,127,128,0,11,255,255,255,252,0,127,128,0,31,254,64,31,255,0,127,128,0,63,240,0,1,255,128,127,128,0,191,192,0,0,127,192,127,128,0,255,128,0,0,63,224,127,128,1,255,0,0,0,31,240,127,128,2,254,0,0,0,15,244,127,128,3,253,0,0,0,15,248,127,128,3,252,0,0,0,11,248,127,255,255,252,0,0,0,11,252,127,255,255,252,0,0,0,7,252,127,255,255,252,0,0,0,7,252,127,234,171,252,0,0,0,7,252,127,128,3,252,0,0,0,11,248,127,128,3,253,0,0,0,11,248,127,128,3,253,0,0,0,15,244,127,128,2,254,0,0,0,15,240,127,128,1,255,0,0,0,31,240,127,128,0,255,128,0,0,63,224,127,128,0,191,208,0,0,191,192,127,128,0,63,244,0,2,255,128,127,128,0,31,255,64,111,255,0,127,128,0,7,255,255,255,252,0,127,128,0,0,255,255,255,224,0,127,128,0,0,27,255,254,0,0,0,0,0,0,0,21,64,0,0, + // 0x042f Я + 20,27,135,25,1,0,0,2,255,255,255,0,63,255,255,255,1,255,255,255,255,3,255,229,85,255,11,253,0,0,255,15,248,0,0,255,15,240,0,0,255,15,240,0,0,255,15,240,0,0,255,15,244,0,0,255,11,252,0,0,255,7,254,0,0,255,2,255,233,85,255,0,191,255,255,255,0,31,255,255,255,0,3,255,255,255,0,11,248,0,255,0,31,240,0,255,0,63,208,0,255,0,191,192,0,255,1,255,64,0,255,3,254,0,0,255,11,252,0,0,255,15,244,0,0,255,63,240,0,0,255,191,192,0,0,255,255,128,0,0,255, + // 0x0430 а + 18,22,110,22,1,255,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x0431 б + 19,30,150,23,2,255,0,0,0,22,244,0,0,111,255,248,0,11,255,255,248,0,127,255,255,228,1,255,254,80,0,7,255,64,0,0,15,248,0,0,0,31,240,0,0,0,63,192,0,0,0,63,192,0,0,0,127,129,191,228,0,191,75,255,255,0,191,127,255,255,192,255,255,65,191,224,255,244,0,31,240,255,208,0,15,248,255,64,0,7,252,255,0,0,7,252,255,64,0,3,252,255,64,0,3,252,191,64,0,3,252,127,128,0,7,252,63,192,0,7,248,63,208,0,15,244,31,240,0,47,240,15,253,0,191,208,3,255,255,255,128,0,255,255,254,0,0,31,255,224,0,0,0,84,0,0, + // 0x0432 в + 18,21,105,23,3,0,85,85,85,0,0,255,255,255,244,0,255,255,255,255,0,255,170,175,255,128,255,0,0,191,192,255,0,0,63,192,255,0,0,63,192,255,0,0,127,192,255,64,22,255,0,255,255,255,248,0,255,255,255,228,0,255,255,255,255,0,255,0,0,191,192,255,0,0,47,224,255,0,0,31,224,255,0,0,31,224,255,0,0,63,224,255,0,1,255,192,255,255,255,255,128,255,255,255,253,0,255,255,255,144,0, + // 0x0433 г + 13,21,84,17,3,0,85,85,85,64,255,255,255,192,255,255,255,192,255,255,255,192,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0, + // 0x0434 д + 23,29,174,23,0,248,0,1,85,85,84,0,0,2,255,255,253,0,0,2,255,255,253,0,0,3,254,171,253,0,0,3,252,2,253,0,0,3,248,2,253,0,0,3,248,2,253,0,0,7,244,2,253,0,0,11,240,2,253,0,0,15,240,2,253,0,0,15,224,2,253,0,0,47,208,2,253,0,0,63,192,2,253,0,0,127,128,2,253,0,0,255,64,2,253,0,1,255,0,2,253,0,3,253,0,2,253,0,11,252,0,2,253,0,127,255,255,255,255,244,127,255,255,255,255,244,127,255,255,255,255,244,127,64,0,0,7,244,127,64,0,0,7,244,127,64,0,0,7,244,127,64,0,0,7,244,127,64,0,0,7,244,127,64,0,0,7,244,127,64,0,0,7,244,0,0,0,0,0,0, + // 0x0435 е + 18,22,110,22,2,255,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x0436 ж + 30,21,168,30,0,0,21,64,0,21,64,0,21,64,31,240,0,63,192,0,255,64,11,248,0,63,192,3,253,0,3,253,0,63,192,11,248,0,0,255,64,63,192,31,240,0,0,63,192,63,192,63,192,0,0,31,240,63,192,255,0,0,0,7,248,63,195,253,0,0,0,2,253,63,203,244,0,0,0,0,255,127,223,224,0,0,0,0,127,255,255,192,0,0,0,0,255,127,223,240,0,0,0,3,253,63,203,248,0,0,0,11,248,63,195,253,0,0,0,31,240,63,192,255,64,0,0,127,192,63,192,63,192,0,0,255,0,63,192,31,240,0,3,253,0,63,192,11,252,0,15,248,0,63,192,2,254,0,47,224,0,63,192,0,255,128,191,192,0,63,192,0,63,208, + // 0x0437 з + 17,22,110,19,1,255,1,175,249,0,0,63,255,255,224,0,63,255,255,252,0,47,229,91,254,0,4,0,0,255,0,0,0,0,191,0,0,0,0,191,0,0,0,1,254,0,0,0,91,252,0,0,191,255,224,0,0,191,255,128,0,0,191,255,248,0,0,0,7,255,0,0,0,0,255,64,0,0,0,127,128,0,0,0,127,128,0,0,0,191,128,185,0,6,255,0,191,255,255,254,0,191,255,255,248,0,47,255,255,128,0,0,21,80,0,0, + // 0x0438 и + 19,21,105,25,3,0,85,0,0,5,84,255,0,0,31,252,255,0,0,63,252,255,0,0,191,252,255,0,1,255,252,255,0,3,254,252,255,0,11,246,252,255,0,31,226,252,255,0,63,194,252,255,0,191,66,252,255,0,255,2,252,255,3,252,2,252,255,11,248,2,252,255,15,240,2,252,255,63,208,2,252,255,127,128,2,252,255,255,0,2,252,255,253,0,2,252,255,248,0,2,252,255,240,0,2,252,255,208,0,2,252, + // 0x0439 й + 19,29,145,25,3,0,11,240,0,15,224,7,244,0,31,208,3,252,0,127,192,2,255,171,255,64,0,191,255,253,0,0,11,255,144,0,0,0,0,0,0,0,0,0,0,0,85,0,0,5,84,255,0,0,31,252,255,0,0,63,252,255,0,0,191,252,255,0,1,255,252,255,0,3,254,252,255,0,11,246,252,255,0,31,226,252,255,0,63,194,252,255,0,191,66,252,255,0,255,2,252,255,3,252,2,252,255,11,248,2,252,255,15,240,2,252,255,63,208,2,252,255,127,128,2,252,255,255,0,2,252,255,253,0,2,252,255,248,0,2,252,255,240,0,2,252,255,208,0,2,252, + // 0x043a к + 18,21,105,21,3,0,85,0,0,85,64,255,0,0,255,0,255,0,3,253,0,255,0,15,244,0,255,0,47,224,0,255,0,191,128,0,255,1,255,0,0,255,7,252,0,0,255,15,240,0,0,255,127,208,0,0,255,255,128,0,0,255,127,224,0,0,255,15,244,0,0,255,7,253,0,0,255,1,255,0,0,255,0,191,192,0,255,0,47,240,0,255,0,15,248,0,255,0,3,254,0,255,0,0,255,64,255,0,0,127,208, + // 0x043b л + 20,22,110,23,0,255,0,5,85,85,85,0,15,255,255,254,0,15,255,255,254,0,15,255,255,254,0,15,224,2,254,0,15,224,2,254,0,15,208,2,254,0,31,208,2,254,0,31,208,2,254,0,47,192,2,254,0,63,192,2,254,0,63,192,2,254,0,63,128,2,254,0,127,64,2,254,0,191,0,2,254,0,255,0,2,254,2,254,0,2,254,7,253,0,2,254,255,252,0,2,254,255,240,0,2,254,255,192,0,2,254,4,0,0,0,0, + // 0x043c м + 24,21,126,29,3,0,85,80,0,0,5,84,255,240,0,0,47,253,255,244,0,0,63,253,255,252,0,0,127,253,255,252,0,0,191,253,254,254,0,0,254,253,255,191,0,1,253,253,255,63,64,3,249,253,255,63,128,7,241,253,255,31,192,11,241,253,255,15,208,15,209,253,255,11,240,31,193,253,255,3,244,63,129,253,255,3,248,63,65,253,255,1,252,191,1,253,255,0,253,253,1,253,255,0,191,252,1,253,255,0,127,248,1,253,255,0,63,244,1,253,255,0,47,240,1,253,255,0,15,208,1,253, + // 0x043d н + 19,21,105,24,3,0,85,0,0,5,80,255,0,0,11,244,255,0,0,11,244,255,0,0,11,244,255,0,0,11,244,255,0,0,11,244,255,0,0,11,244,255,0,0,11,244,255,64,0,11,244,255,255,255,255,244,255,255,255,255,244,255,255,255,255,244,255,0,0,11,244,255,0,0,11,244,255,0,0,11,244,255,0,0,11,244,255,0,0,11,244,255,0,0,11,244,255,0,0,11,244,255,0,0,11,244,255,0,0,11,244, + // 0x043e о + 19,22,110,23,2,255,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x043f п + 18,21,105,24,3,0,85,85,85,85,80,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240, + // 0x0440 р + 19,31,155,24,3,246,84,1,191,128,0,254,15,255,248,0,255,63,255,255,0,255,254,155,255,192,255,240,0,191,208,255,192,0,47,240,255,128,0,15,240,255,64,0,15,244,255,64,0,11,244,255,0,0,11,248,255,0,0,11,248,255,0,0,11,248,255,64,0,11,244,255,64,0,15,244,255,128,0,15,240,255,192,0,47,240,255,224,0,63,224,255,248,1,255,192,255,255,255,255,64,255,63,255,253,0,255,7,255,224,0,255,0,21,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,0,0,0,0,0, + // 0x0441 с + 15,22,88,19,2,255,0,6,254,144,0,191,255,252,3,255,255,252,15,255,171,248,47,244,0,16,63,208,0,0,127,192,0,0,191,128,0,0,255,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,0,191,128,0,0,127,192,0,0,63,240,0,0,31,253,0,124,11,255,255,252,2,255,255,252,0,47,255,244,0,0,84,0, + // 0x0442 т + 17,21,105,19,1,0,85,85,85,85,64,255,255,255,255,192,255,255,255,255,192,255,255,255,255,192,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0,0,11,244,0,0, + // 0x0443 у + 20,31,155,20,0,246,85,0,0,0,85,191,128,0,2,254,63,192,0,3,253,63,208,0,7,252,31,240,0,11,248,15,240,0,15,240,11,248,0,31,240,3,252,0,47,208,3,253,0,63,192,1,254,0,127,128,0,255,0,255,64,0,191,64,255,0,0,63,129,254,0,0,63,195,252,0,0,31,211,252,0,0,15,231,244,0,0,11,251,240,0,0,3,255,224,0,0,3,255,192,0,0,1,255,192,0,0,0,255,64,0,0,0,255,0,0,0,1,254,0,0,0,2,253,0,0,0,3,252,0,0,0,15,244,0,0,16,127,240,0,0,127,255,192,0,0,127,255,64,0,0,127,248,0,0,0,0,0,0,0,0, + // 0x0444 ф + 25,39,17,29,2,246,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,111,249,64,0,0,0,47,255,255,248,0,0,1,255,255,255,255,128,0,7,255,239,251,255,224,0,15,253,11,240,47,248,0,63,240,11,240,7,253,0,127,192,11,240,2,255,0,191,128,11,240,0,255,0,255,64,11,240,0,255,64,255,0,11,240,0,191,64,255,0,11,240,0,191,128,255,0,11,240,0,191,128,255,64,11,240,0,191,64,255,64,11,240,0,255,0,127,192,11,240,1,255,0,63,208,11,240,3,254,0,31,244,11,240,15,252,0,11,255,75,240,191,244,0,2,255,255,255,255,208,0,0,127,255,255,255,0,0,0,7,255,255,228,0,0,0,0,11,244,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,0,0,0,0,0, + // 0x0445 х + 19,21,105,21,1,0,85,64,0,5,84,127,192,0,31,240,47,240,0,63,208,15,244,0,255,128,7,252,1,255,0,2,255,3,253,0,0,255,75,248,0,0,127,239,240,0,0,47,255,192,0,0,15,255,128,0,0,7,255,0,0,0,15,255,64,0,0,47,255,192,0,0,63,239,240,0,0,255,79,248,0,2,255,3,253,0,7,252,1,255,0,15,244,0,255,128,47,240,0,63,208,127,192,0,31,240,255,64,0,15,252, + // 0x0446 ц + 21,29,174,25,3,248,85,0,0,5,80,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,0,0,15,240,0,255,64,0,15,244,0,255,255,255,255,255,192,255,255,255,255,255,192,255,255,255,255,255,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,0,0, + // 0x0447 ч + 19,21,105,24,2,0,21,64,0,1,84,127,128,0,7,248,127,128,0,7,248,127,128,0,7,248,127,128,0,7,248,127,128,0,7,248,127,128,0,7,248,127,128,0,7,248,127,192,0,7,248,63,192,0,11,248,63,224,1,191,248,47,255,255,255,248,15,255,255,251,248,1,255,254,71,248,0,5,64,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248, + // 0x0448 ш + 29,21,168,35,3,0,85,0,0,85,0,0,21,64,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,64,0,191,128,0,127,128,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,128, + // 0x0449 щ + 32,29,232,35,3,248,85,0,0,85,0,0,21,64,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,127,128,255,64,0,191,128,0,127,192,255,255,255,255,255,255,255,254,255,255,255,255,255,255,255,254,255,255,255,255,255,255,255,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0, + // 0x044a ъ + 25,21,147,27,0,0,21,85,84,0,0,0,0,191,255,252,0,0,0,0,191,255,252,0,0,0,0,127,255,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,253,0,0,0,0,0,3,255,255,255,144,0,0,3,255,255,255,252,0,0,3,255,255,255,255,0,0,3,252,0,2,255,64,0,3,252,0,0,191,128,0,3,252,0,0,127,192,0,3,252,0,0,127,128,0,3,252,0,0,191,128,0,3,252,0,7,255,0,0,3,255,255,255,253,0,0,3,255,255,255,244,0,0,3,255,255,254,64,0, + // 0x044b ы + 24,21,126,30,3,0,85,0,0,0,0,85,255,0,0,0,0,255,255,0,0,0,0,255,255,0,0,0,0,255,255,0,0,0,0,255,255,0,0,0,0,255,255,0,0,0,0,255,255,0,0,0,0,255,255,64,0,0,0,255,255,255,255,208,0,255,255,255,255,252,0,255,255,255,255,255,0,255,255,0,1,255,128,255,255,0,0,127,192,255,255,0,0,63,192,255,255,0,0,63,192,255,255,0,0,191,128,255,255,0,6,255,64,255,255,255,255,254,0,255,255,255,255,248,0,255,255,255,254,128,0,255, + // 0x044c ь + 18,21,105,23,3,0,85,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,64,0,0,0,255,255,255,244,0,255,255,255,255,0,255,255,255,255,192,255,0,0,127,224,255,0,0,31,240,255,0,0,15,240,255,0,0,15,240,255,0,0,47,224,255,0,1,191,208,255,255,255,255,128,255,255,255,254,0,255,255,255,160,0, + // 0x044d э + 16,22,88,19,1,255,6,191,144,0,127,255,254,0,63,255,255,208,63,150,255,240,0,0,15,248,0,0,3,252,0,0,2,253,0,0,1,254,0,0,1,255,11,255,255,255,11,255,255,255,11,255,255,255,0,0,0,255,0,0,1,254,0,0,2,254,0,0,3,252,0,0,15,252,228,0,127,240,255,255,255,208,255,255,255,64,127,255,248,0,0,85,0,0, + // 0x044e ю + 27,22,154,32,3,255,85,0,0,2,191,144,0,255,0,0,63,255,252,0,255,0,1,255,255,255,64,255,0,3,255,170,255,192,255,0,11,252,0,63,240,255,0,15,240,0,15,244,255,0,47,224,0,11,248,255,0,63,208,0,3,252,255,64,63,192,0,3,252,255,255,255,192,0,3,252,255,255,255,192,0,3,252,255,255,255,192,0,3,252,255,0,63,192,0,3,252,255,0,63,192,0,3,252,255,0,47,208,0,7,252,255,0,31,240,0,11,248,255,0,15,244,0,31,240,255,0,7,254,0,127,224,255,0,2,255,255,255,192,255,0,0,191,255,254,0,255,0,0,31,255,244,0,0,0,0,0,85,0,0, + // 0x044f я + 18,21,105,22,1,0,0,5,85,85,64,1,255,255,255,208,11,255,255,255,208,47,254,170,191,208,63,224,0,47,208,63,192,0,47,208,127,128,0,47,208,127,128,0,47,208,63,192,0,47,208,47,248,0,47,208,15,255,255,255,208,3,255,255,255,208,0,127,255,255,208,0,127,128,47,208,0,255,0,47,208,3,253,0,47,208,11,252,0,47,208,15,240,0,47,208,63,224,0,47,208,191,192,0,47,208,255,64,0,47,208, + // 0x0450 ѐ + 255, + // 0x0451 ё + 18,29,145,22,2,255,0,248,2,224,0,2,252,7,244,0,2,253,7,244,0,0,248,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x0452 ђ + 255, + // 0x0453 ѓ + 255, + // 0x0454 є + 16,22,88,19,2,255,0,6,255,144,0,191,255,254,3,255,255,253,15,255,150,252,47,244,0,4,63,208,0,0,127,192,0,0,191,64,0,0,255,0,0,0,255,255,255,224,255,255,255,224,255,255,255,224,255,0,0,0,255,64,0,0,191,128,0,0,127,192,0,0,63,224,0,0,31,253,0,29,11,255,255,253,2,255,255,253,0,47,255,248,0,0,85,0, + // 0x0455 ѕ + 255, + // 0x0456 і + 5,28,56,10,3,0,191,0,255,64,255,64,191,0,4,0,0,0,0,0,85,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, + // 0x0457 ї + 12,28,84,10,255,0,46,0,124,127,128,254,127,128,255,63,0,189,0,0,0,0,0,0,0,0,0,0,85,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0, + // 0x0458 ј + 255, + // 0x0459 љ + 255, + // 0x045a њ + 255, + // 0x045b ћ + 255, + // 0x045c ќ + 255, + // 0x045d ѝ + 255, + // 0x045e ў + 255, + // 0x045f џ + 255, + // 0x0460 Ѡ + 255, + // 0x0461 ѡ + 255, + // 0x0462 Ѣ + 255, + // 0x0463 ѣ + 255, + // 0x0464 Ѥ + 255, + // 0x0465 ѥ + 255, + // 0x0466 Ѧ + 255, + // 0x0467 ѧ + 255, + // 0x0468 Ѩ + 255, + // 0x0469 ѩ + 255, + // 0x046a Ѫ + 255, + // 0x046b ѫ + 255, + // 0x046c Ѭ + 255, + // 0x046d ѭ + 255, + // 0x046e Ѯ + 255, + // 0x046f ѯ + 255, + // 0x0470 Ѱ + 255, + // 0x0471 ѱ + 255, + // 0x0472 Ѳ + 255, + // 0x0473 ѳ + 255, + // 0x0474 Ѵ + 255, + // 0x0475 ѵ + 255, + // 0x0476 Ѷ + 255, + // 0x0477 ѷ + 255, + // 0x0478 Ѹ + 255, + // 0x0479 ѹ + 255, + // 0x047a Ѻ + 255, + // 0x047b ѻ + 255, + // 0x047c Ѽ + 255, + // 0x047d ѽ + 255, + // 0x047e Ѿ + 255, + // 0x047f ѿ + 255, + // 0x0480 Ҁ + 255, + // 0x0481 ҁ + 255, + // 0x0482 ҂ + 255, + // 0x0483 ҃ + 255, + // 0x0484 ҄ + 255, + // 0x0485 ҅ + 255, + // 0x0486 ҆ + 255, + // 0x0487 ҇ + 255, + // 0x0488 ҈ + 255, + // 0x0489 ҉ + 255, + // 0x048a Ҋ + 255, + // 0x048b ҋ + 255, + // 0x048c Ҍ + 255, + // 0x048d ҍ + 255, + // 0x048e Ҏ + 255, + // 0x048f ҏ + 255, + // 0x0490 Ґ + 17,33,165,21,3,0,0,0,0,47,128,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,127,255,255,255,192,127,255,255,255,192,127,255,255,255,192,127,213,85,85,64,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0, + // 0x0491 ґ + 14,27,108,17,3,0,0,0,5,64,0,0,31,208,0,0,31,208,0,0,31,208,0,0,31,208,0,0,31,208,85,85,111,208,255,255,255,208,255,255,255,208,255,170,170,144,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Greek_28.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Greek_28.cpp new file mode 100644 index 000000000000..015ed9f794a6 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Greek_28.cpp @@ -0,0 +1,178 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Greek 38pt, capital 'A' height: 28px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 +extern const uint8_t NotoSans_Medium_Greek_28[10071] = { + 130,28,134,3,206,3,37,246, // unifont_t + // 0x0386 Ά + 28,28,196,28,0,0,5,84,0,5,64,0,0,15,248,0,63,240,0,0,31,240,0,127,244,0,0,47,208,0,191,248,0,0,63,128,0,255,252,0,0,127,0,1,253,253,0,0,189,0,3,252,255,0,0,0,0,3,248,191,0,0,0,0,11,244,127,128,0,0,0,15,240,63,192,0,0,0,31,224,47,208,0,0,0,47,208,31,224,0,0,0,63,192,15,240,0,0,0,127,128,11,244,0,0,0,255,0,3,252,0,0,0,255,0,3,252,0,0,2,254,85,86,254,0,0,3,255,255,255,255,0,0,7,255,255,255,255,64,0,11,255,255,255,255,128,0,15,240,0,0,127,192,0,31,224,0,0,63,208,0,63,208,0,0,31,240,0,63,192,0,0,15,240,0,191,128,0,0,11,248,0,255,64,0,0,7,252,1,255,0,0,0,3,253,2,254,0,0,0,2,254, + // 0x0387 · + 255, + // 0x0388 Έ + 26,28,196,28,0,0,5,84,0,0,0,0,0,15,248,7,255,255,255,240,31,240,7,255,255,255,240,47,208,7,255,255,255,240,63,128,7,253,85,85,80,127,0,7,248,0,0,0,189,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,255,255,255,192,0,0,7,255,255,255,192,0,0,7,255,255,255,192,0,0,7,254,170,170,128,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,248,0,0,0,0,0,7,254,170,170,144,0,0,7,255,255,255,240,0,0,7,255,255,255,240,0,0,7,255,255,255,240, + // 0x0389 Ή + 32,28,224,35,0,0,5,84,0,0,0,0,0,0,15,248,7,248,0,0,1,254,31,240,7,248,0,0,1,254,47,208,7,248,0,0,1,254,63,128,7,248,0,0,1,254,127,0,7,248,0,0,1,254,189,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,255,255,255,255,254,0,0,7,255,255,255,255,254,0,0,7,255,255,255,255,254,0,0,7,254,170,170,171,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254,0,0,7,248,0,0,1,254, + // 0x038a Ί + 20,28,140,21,0,0,5,84,0,0,0,15,248,63,255,254,31,240,63,255,254,47,208,27,255,248,63,128,0,191,128,127,0,0,191,64,189,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,64,0,0,0,191,128,0,0,31,255,249,0,0,63,255,254,0,0,63,255,254, + // 0x038b ΋ + 255, + // 0x038c Ό + 33,29,5,35,0,255,5,84,0,0,22,148,0,0,0,15,248,0,11,255,255,224,0,0,31,240,0,191,255,255,253,0,0,47,208,2,255,255,255,255,128,0,63,128,11,255,144,6,255,224,0,127,0,31,252,0,0,63,244,0,189,0,63,240,0,0,15,252,0,0,0,127,192,0,0,7,253,0,0,0,255,128,0,0,3,254,0,0,0,255,64,0,0,1,255,0,0,1,255,0,0,0,0,255,0,0,2,255,0,0,0,0,255,64,0,2,254,0,0,0,0,255,64,0,2,254,0,0,0,0,255,128,0,2,254,0,0,0,0,255,128,0,2,254,0,0,0,0,255,128,0,2,254,0,0,0,0,255,64,0,1,255,0,0,0,0,255,64,0,1,255,0,0,0,0,255,0,0,0,255,64,0,0,2,255,0,0,0,255,192,0,0,3,254,0,0,0,127,208,0,0,7,252,0,0,0,63,240,0,0,15,252,0,0,0,31,253,0,0,127,240,0,0,0,11,255,144,7,255,208,0,0,0,2,255,255,255,255,64,0,0,0,0,127,255,255,252,0,0,0,0,0,7,255,255,144,0,0,0,0,0,0,5,80,0,0,0, + // 0x038d ΍ + 255, + // 0x038e Ύ + 31,28,224,31,0,0,5,84,0,0,0,0,0,0,15,248,63,224,0,0,15,248,31,240,31,240,0,0,31,240,47,208,15,248,0,0,63,224,63,128,3,252,0,0,127,192,127,0,2,254,0,0,255,64,189,0,0,255,0,1,255,0,0,0,0,191,128,3,253,0,0,0,0,63,208,7,252,0,0,0,0,47,240,15,244,0,0,0,0,15,244,31,224,0,0,0,0,7,252,63,192,0,0,0,0,3,253,191,128,0,0,0,0,1,255,255,0,0,0,0,0,0,255,254,0,0,0,0,0,0,127,252,0,0,0,0,0,0,47,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0, + // 0x038f Ώ + 32,28,224,33,0,0,5,84,0,0,90,80,0,0,15,248,0,31,255,255,128,0,31,240,1,255,255,255,248,0,47,208,7,255,255,255,255,0,63,128,31,254,64,11,255,192,127,0,63,244,0,0,191,224,189,0,191,208,0,0,47,244,0,0,255,128,0,0,15,248,0,2,255,0,0,0,7,252,0,3,254,0,0,0,3,253,0,3,253,0,0,0,3,254,0,3,252,0,0,0,2,254,0,7,252,0,0,0,2,255,0,7,252,0,0,0,1,255,0,3,252,0,0,0,1,254,0,3,252,0,0,0,2,254,0,3,253,0,0,0,2,253,0,2,254,0,0,0,3,252,0,1,255,0,0,0,7,252,0,0,255,0,0,0,11,244,0,0,127,192,0,0,15,240,0,0,47,224,0,0,63,192,0,0,15,244,0,0,255,64,0,0,2,254,0,3,253,0,0,6,170,255,128,31,250,170,0,11,255,255,192,31,255,255,0,11,255,255,192,31,255,255,0,11,255,255,192,31,255,255, + // 0x0390 ΐ + 255, + // 0x0391 Α + 25,28,196,25,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x0392 Β + 20,27,135,25,3,0,127,255,255,228,0,127,255,255,255,128,127,255,255,255,224,127,213,86,255,244,127,128,0,31,252,127,128,0,11,252,127,128,0,3,252,127,128,0,3,252,127,128,0,7,252,127,128,0,15,244,127,128,0,127,240,127,255,255,255,128,127,255,255,248,0,127,255,255,255,64,127,234,170,255,240,127,128,0,31,252,127,128,0,3,253,127,128,0,2,254,127,128,0,1,255,127,128,0,1,255,127,128,0,2,255,127,128,0,3,254,127,128,0,15,252,127,213,86,255,248,127,255,255,255,240,127,255,255,255,64,127,255,255,228,0, + // 0x0393 Γ + 15,27,108,19,3,0,127,255,255,252,127,255,255,252,127,255,255,252,127,213,85,84,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0, + // 0x0394 Δ + 25,28,196,25,0,0,0,0,1,80,0,0,0,0,0,15,248,0,0,0,0,0,47,252,0,0,0,0,0,63,254,0,0,0,0,0,127,255,0,0,0,0,0,191,127,64,0,0,0,0,254,63,128,0,0,0,1,253,47,192,0,0,0,3,252,31,208,0,0,0,3,248,15,240,0,0,0,11,244,11,244,0,0,0,15,240,7,248,0,0,0,31,224,3,252,0,0,0,63,192,2,253,0,0,0,63,192,0,255,0,0,0,191,64,0,255,0,0,0,255,0,0,127,128,0,1,254,0,0,63,192,0,3,253,0,0,47,208,0,3,252,0,0,31,240,0,11,248,0,0,15,240,0,15,240,0,0,11,248,0,31,240,0,0,3,252,0,47,208,0,0,3,253,0,63,234,170,170,171,254,0,191,255,255,255,255,255,0,191,255,255,255,255,255,64,191,255,255,255,255,255,64, + // 0x0395 Ε + 16,27,108,21,3,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x0396 Ζ + 20,27,135,22,1,0,127,255,255,255,252,127,255,255,255,252,127,255,255,255,252,21,85,85,95,248,0,0,0,47,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,3,253,0,0,0,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,7,253,0,0,0,15,248,0,0,0,47,240,0,0,0,127,208,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,248,0,0,0,47,240,0,0,0,127,234,170,170,169,191,255,255,255,253,191,255,255,255,253,191,255,255,255,253, + // 0x0397 Η + 22,27,162,28,3,0,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,255,255,255,255,240,127,255,255,255,255,240,127,255,255,255,255,240,127,234,170,170,175,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240, + // 0x0398 Θ + 26,29,203,30,2,255,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,129,170,170,160,63,208,191,130,255,255,244,63,224,191,130,255,255,244,63,224,191,130,255,255,244,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x0399 Ι + 11,27,81,13,1,0,191,255,252,191,255,252,47,255,228,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,47,255,244,191,255,252,191,255,252, + // 0x039a Κ + 21,27,162,24,3,0,127,128,0,2,255,0,127,128,0,7,253,0,127,128,0,31,244,0,127,128,0,63,224,0,127,128,0,255,128,0,127,128,3,255,0,0,127,128,11,252,0,0,127,128,47,240,0,0,127,128,127,192,0,0,127,129,255,64,0,0,127,131,253,0,0,0,127,143,248,0,0,0,127,255,252,0,0,0,127,255,254,0,0,0,127,255,255,64,0,0,127,240,255,192,0,0,127,192,63,224,0,0,127,128,31,244,0,0,127,128,15,252,0,0,127,128,3,255,0,0,127,128,1,255,64,0,127,128,0,191,192,0,127,128,0,63,240,0,127,128,0,15,248,0,127,128,0,11,253,0,127,128,0,3,255,0,127,128,0,0,255,128, + // 0x039b Λ + 24,28,168,24,0,0,0,0,5,80,0,0,0,0,31,244,0,0,0,0,63,248,0,0,0,0,63,252,0,0,0,0,191,253,0,0,0,0,254,254,0,0,0,1,253,191,0,0,0,2,252,127,64,0,0,3,252,63,192,0,0,7,244,47,192,0,0,11,240,31,224,0,0,15,240,15,240,0,0,31,208,11,240,0,0,63,192,7,248,0,0,63,192,3,252,0,0,191,64,2,253,0,0,255,0,1,254,0,0,255,0,0,255,0,2,253,0,0,191,64,3,252,0,0,127,128,7,252,0,0,63,192,11,244,0,0,47,208,15,240,0,0,31,240,31,240,0,0,15,240,47,208,0,0,11,248,63,192,0,0,7,252,127,192,0,0,3,252,255,64,0,0,2,254, + // 0x039c Μ + 29,27,216,35,3,0,127,248,0,0,0,15,255,64,127,252,0,0,0,15,255,64,127,253,0,0,0,47,255,64,127,255,0,0,0,63,255,64,127,191,0,0,0,127,191,64,127,127,64,0,0,191,191,64,127,63,192,0,0,253,191,64,127,47,192,0,1,252,191,64,127,79,224,0,3,248,191,64,127,79,240,0,3,244,191,64,127,71,244,0,7,240,191,64,127,67,248,0,15,224,191,64,127,66,252,0,15,208,191,64,127,65,253,0,47,192,191,64,127,64,254,0,63,128,191,64,127,64,191,0,127,0,191,64,127,64,127,64,191,0,191,64,127,64,63,192,253,0,191,64,127,64,47,193,252,0,191,64,127,64,15,211,248,0,191,64,127,64,15,243,244,0,191,64,127,64,11,255,240,0,191,64,127,64,3,255,224,0,191,64,127,64,3,255,192,0,191,64,127,64,1,255,192,0,191,64,127,64,0,255,128,0,191,64,127,64,0,255,0,0,191,64, + // 0x039d Ν + 23,27,162,29,3,0,127,240,0,0,3,252,127,248,0,0,3,252,127,252,0,0,3,252,127,255,0,0,3,252,127,255,64,0,3,252,127,191,192,0,3,252,127,63,224,0,3,252,127,31,244,0,3,252,127,11,252,0,3,252,127,3,254,0,3,252,127,65,255,0,3,252,127,64,255,192,3,252,127,64,63,208,3,252,127,64,47,240,3,252,127,64,15,248,3,252,127,64,7,253,3,252,127,64,2,255,3,252,127,64,0,255,131,252,127,64,0,127,195,252,127,64,0,63,243,252,127,64,0,15,246,252,127,64,0,11,255,252,127,64,0,3,255,252,127,64,0,1,255,252,127,64,0,0,191,252,127,64,0,0,63,252,127,64,0,0,31,252, + // 0x039e Ξ + 20,27,135,24,2,0,63,255,255,255,248,63,255,255,255,248,63,255,255,255,248,21,85,85,85,84,0,0,0,0,0,0,0,0,0,0,0,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,255,255,255,192,7,255,255,255,192,7,255,255,255,192,6,170,170,170,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,170,170,170,169,191,255,255,255,253,191,255,255,255,253,191,255,255,255,253, + // 0x039f Ο + 26,29,203,30,2,255,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x03a0 Π + 22,27,162,28,3,0,127,255,255,255,255,208,127,255,255,255,255,208,127,255,255,255,255,208,127,213,85,85,127,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208,127,128,0,0,47,208, + // 0x03a1 Ρ + 19,27,135,23,3,0,127,255,255,144,0,127,255,255,253,0,127,255,255,255,64,127,213,91,255,192,127,128,0,127,224,127,128,0,47,240,127,128,0,15,244,127,128,0,15,244,127,128,0,15,244,127,128,0,15,244,127,128,0,31,240,127,128,0,63,224,127,128,1,255,192,127,255,255,255,128,127,255,255,253,0,127,255,255,224,0,127,234,169,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0, + // 0x03a2 ΢ + 255, + // 0x03a3 Σ + 20,27,135,22,1,0,127,255,255,255,252,127,255,255,255,252,127,255,255,255,252,63,245,85,85,84,15,248,0,0,0,7,254,0,0,0,1,255,64,0,0,0,191,208,0,0,0,47,240,0,0,0,15,252,0,0,0,3,255,0,0,0,0,255,128,0,0,0,127,192,0,0,0,127,192,0,0,0,255,0,0,0,3,253,0,0,0,15,248,0,0,0,47,224,0,0,0,127,192,0,0,1,255,0,0,0,3,253,0,0,0,15,244,0,0,0,47,224,0,0,0,191,234,170,170,169,191,255,255,255,253,191,255,255,255,253,191,255,255,255,253, + // 0x03a4 Τ + 21,27,162,21,0,0,191,255,255,255,255,192,191,255,255,255,255,192,191,255,255,255,255,192,21,85,191,213,85,64,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0, + // 0x03a5 Υ + 22,27,162,22,0,0,191,192,0,0,47,240,63,208,0,0,63,208,47,240,0,0,191,128,15,244,0,0,255,0,11,252,0,2,254,0,3,253,0,3,252,0,1,255,0,11,248,0,0,255,64,31,240,0,0,127,192,63,208,0,0,63,208,127,192,0,0,31,240,255,64,0,0,11,249,255,0,0,0,3,255,253,0,0,0,2,255,248,0,0,0,0,255,240,0,0,0,0,191,224,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x03a6 Φ + 29,29,232,33,2,255,0,0,0,21,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,21,255,149,0,0,0,0,11,255,255,255,248,0,0,0,191,255,255,255,255,128,0,3,255,255,255,255,255,240,0,15,255,64,191,64,127,252,0,63,244,0,191,64,7,254,0,63,192,0,191,64,1,255,0,191,128,0,191,64,0,255,64,255,64,0,191,64,0,191,128,255,0,0,191,64,0,127,128,255,0,0,191,64,0,63,192,255,0,0,191,64,0,127,192,255,0,0,191,64,0,127,128,255,64,0,191,64,0,191,64,191,128,0,191,64,0,255,0,63,208,0,191,64,2,255,0,47,244,0,191,64,11,253,0,15,254,64,191,64,127,248,0,3,255,255,255,255,255,224,0,0,191,255,255,255,255,64,0,0,11,255,255,255,248,0,0,0,0,22,255,165,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x03a7 Χ + 23,27,162,23,0,0,63,224,0,0,31,240,31,244,0,0,63,208,11,252,0,0,191,128,3,253,0,0,255,0,1,255,0,3,253,0,0,191,128,7,252,0,0,63,208,15,240,0,0,31,240,47,208,0,0,11,248,127,192,0,0,3,252,255,0,0,0,1,255,254,0,0,0,0,255,252,0,0,0,0,63,244,0,0,0,0,127,244,0,0,0,0,255,252,0,0,0,2,255,254,0,0,0,3,252,255,64,0,0,15,244,127,192,0,0,31,224,63,224,0,0,63,192,15,240,0,0,191,64,11,252,0,1,255,0,3,254,0,3,253,0,1,255,0,11,248,0,0,191,192,31,240,0,0,63,208,63,208,0,0,47,240,191,192,0,0,15,248, + // 0x03a8 Ψ + 26,27,189,32,3,0,191,64,3,252,0,47,208,191,64,3,252,0,47,208,191,64,3,252,0,47,208,191,64,3,252,0,47,208,191,64,3,252,0,47,208,191,64,3,252,0,47,208,191,64,3,252,0,47,208,191,64,3,252,0,47,208,191,64,3,252,0,47,208,191,64,3,252,0,47,208,191,64,3,252,0,47,208,127,128,3,252,0,63,192,63,192,3,252,0,63,192,63,208,3,252,0,191,128,47,240,3,252,0,255,64,15,253,3,252,7,255,0,7,255,235,254,191,252,0,1,255,255,255,255,240,0,0,47,255,255,255,128,0,0,1,191,255,228,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0, + // 0x03a9 Ω + 26,28,196,28,1,0,0,0,5,165,0,0,0,0,2,255,255,244,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,3,255,228,1,191,248,0,11,255,0,0,31,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,127,192,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,192,63,192,0,0,0,127,192,47,208,0,0,0,191,64,31,240,0,0,0,255,0,11,244,0,0,2,253,0,3,252,0,0,7,252,0,0,255,0,0,31,240,0,0,127,192,0,127,192,0,106,175,244,2,255,170,144,255,255,248,3,255,255,224,255,255,248,3,255,255,224,255,255,248,3,255,255,224, + // 0x03aa Ϊ + 255, + // 0x03ab Ϋ + 255, + // 0x03ac ά + 21,31,186,24,2,255,0,0,5,84,0,0,0,0,31,244,0,0,0,0,47,224,0,0,0,0,63,192,0,0,0,0,63,64,0,0,0,0,191,0,0,0,0,0,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,232,1,80,0,1,255,255,131,244,0,7,255,255,247,244,0,15,254,155,255,244,0,63,240,0,127,244,0,63,208,0,47,244,0,191,192,0,15,244,0,191,64,0,15,244,0,255,64,0,11,244,0,255,0,0,11,244,0,255,0,0,7,244,0,255,0,0,7,244,0,255,0,0,11,244,0,255,64,0,11,244,0,191,128,0,15,244,0,127,192,0,15,244,0,63,224,0,63,244,0,47,248,1,255,252,0,15,255,255,247,255,192,3,255,255,210,255,192,0,191,254,0,255,192,0,1,64,0,5,0, + // 0x03ad έ + 16,31,124,18,1,255,0,0,5,84,0,0,31,240,0,0,47,224,0,0,63,192,0,0,127,64,0,0,190,0,0,0,252,0,0,0,0,0,0,0,0,0,0,27,254,144,1,255,255,254,11,255,255,254,15,254,86,253,31,240,0,8,47,208,0,0,47,208,0,0,31,224,0,0,11,253,0,0,2,255,255,0,0,127,255,0,7,255,255,0,47,244,0,0,63,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,63,244,0,30,31,255,255,254,7,255,255,254,0,191,255,248,0,1,85,0, + // 0x03ae ή + 18,40,200,24,3,246,0,1,85,0,0,0,3,255,0,0,0,3,252,0,0,0,7,248,0,0,0,11,240,0,0,0,15,208,0,0,0,15,128,0,0,0,0,0,0,0,0,0,0,0,0,84,1,191,144,0,254,31,255,252,0,255,127,255,255,0,255,254,155,255,128,255,240,0,191,192,255,208,0,63,208,255,192,0,47,208,255,128,0,47,224,255,64,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,0,0, + // 0x03af ί + 10,31,93,13,3,255,1,85,0,3,253,0,7,252,0,15,240,0,15,224,0,31,192,0,47,64,0,0,0,0,0,0,0,85,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,64,0,191,208,0,63,255,208,47,255,208,7,255,208,0,21,0, + // 0x03b0 ΰ + 255, + // 0x03b1 α + 21,22,132,24,2,255,0,27,232,1,80,0,1,255,255,131,244,0,7,255,255,247,244,0,15,254,155,255,244,0,63,240,0,127,244,0,63,208,0,47,244,0,191,192,0,15,244,0,191,64,0,15,244,0,255,64,0,11,244,0,255,0,0,11,244,0,255,0,0,7,244,0,255,0,0,7,244,0,255,0,0,11,244,0,255,64,0,11,244,0,191,128,0,15,244,0,127,192,0,15,244,0,63,224,0,63,244,0,47,248,1,255,252,0,15,255,255,247,255,192,3,255,255,210,255,192,0,191,254,0,255,192,0,1,64,0,5,0, + // 0x03b2 β + 19,39,195,24,3,246,0,31,255,128,0,2,255,255,248,0,11,255,255,254,0,47,253,23,255,64,63,224,0,255,192,127,192,0,63,192,191,64,0,63,192,255,64,0,63,192,255,0,0,63,192,255,0,0,63,192,255,0,0,191,64,255,0,2,254,0,255,6,175,248,0,255,7,255,128,0,255,7,255,248,0,255,1,91,255,64,255,0,0,127,192,255,0,0,47,240,255,0,0,15,240,255,0,0,11,244,255,0,0,11,244,255,0,0,11,248,255,0,0,15,244,255,0,0,15,244,255,64,0,47,240,255,228,1,255,208,255,255,255,255,128,255,255,255,254,0,255,111,255,224,0,255,0,84,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,0,0,0,0,0, + // 0x03b3 γ + 19,29,145,20,0,248,85,0,0,1,84,191,64,0,3,252,127,192,0,3,252,63,192,0,3,252,47,208,0,3,252,15,240,0,7,248,15,240,0,7,248,11,244,0,11,244,3,252,0,15,240,3,252,0,15,240,1,253,0,31,224,0,255,0,47,208,0,191,0,63,192,0,127,64,127,64,0,63,192,255,0,0,47,194,253,0,0,31,215,252,0,0,15,255,240,0,0,11,255,208,0,0,3,255,128,0,0,3,254,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0,0,2,253,0,0, + // 0x03b4 δ + 20,30,150,23,1,255,0,1,191,249,0,0,15,255,255,208,0,63,255,255,248,0,191,208,31,240,0,255,0,1,224,0,254,0,0,0,0,255,0,0,0,0,255,64,0,0,0,191,224,0,0,0,47,253,0,0,0,11,255,192,0,0,7,255,248,0,0,127,255,255,0,1,255,129,255,192,7,253,0,63,240,15,244,0,15,248,47,224,0,7,252,63,192,0,3,253,63,192,0,2,254,127,128,0,1,254,127,128,0,1,254,127,192,0,2,254,63,192,0,3,253,63,224,0,3,252,47,244,0,15,248,15,254,0,127,240,3,255,255,255,208,0,255,255,255,64,0,31,255,248,0,0,0,84,0,0, + // 0x03b5 ε + 16,22,88,18,1,255,0,27,254,144,1,255,255,254,11,255,255,254,15,254,86,253,31,240,0,8,47,208,0,0,47,208,0,0,31,224,0,0,11,253,0,0,2,255,255,0,0,127,255,0,7,255,255,0,47,244,0,0,63,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,63,244,0,30,31,255,255,254,7,255,255,254,0,191,255,248,0,1,85,0, + // 0x03b6 ζ + 16,37,148,18,2,248,63,255,255,254,63,255,255,254,63,255,255,254,0,0,7,252,0,0,15,240,0,0,63,208,0,0,191,128,0,1,255,0,0,3,252,0,0,15,244,0,0,47,224,0,0,127,192,0,0,255,0,0,3,253,0,0,11,248,0,0,15,240,0,0,47,224,0,0,63,192,0,0,127,128,0,0,255,64,0,0,255,0,0,0,255,0,0,0,255,64,0,0,255,192,0,0,127,240,0,0,63,254,64,0,15,255,254,0,2,255,255,240,0,47,255,252,0,0,111,253,0,0,3,254,0,0,2,254,0,0,1,253,0,0,2,252,0,0,3,252,0,0,11,244,0,0,10,160, + // 0x03b7 η + 18,31,155,24,3,246,84,1,191,144,0,254,31,255,252,0,255,127,255,255,0,255,254,155,255,128,255,240,0,191,192,255,208,0,63,208,255,192,0,47,208,255,128,0,47,224,255,64,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,31,224,0,0,0,0,0, + // 0x03b8 θ + 19,30,150,23,2,255,0,27,255,64,0,0,191,255,244,0,3,255,255,253,0,11,254,70,255,0,15,240,0,127,192,47,208,0,63,208,63,192,0,31,224,127,128,0,15,240,191,128,0,15,240,191,64,0,11,244,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,255,255,255,255,248,255,255,255,255,252,255,255,255,255,252,255,0,0,7,248,255,0,0,7,248,255,0,0,7,248,191,64,0,11,244,191,64,0,11,244,127,128,0,15,240,63,192,0,15,240,47,208,0,47,208,15,240,0,63,192,11,252,1,255,128,3,255,255,255,0,0,255,255,252,0,0,47,255,208,0,0,0,84,0,0, + // 0x03b9 ι + 10,22,66,13,3,255,85,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,64,0,191,208,0,63,255,208,47,255,208,7,255,208,0,21,0, + // 0x03ba κ + 18,21,105,21,3,0,85,0,0,21,64,255,64,0,255,128,255,64,3,254,0,255,64,11,252,0,255,64,47,240,0,255,64,127,192,0,255,65,255,64,0,255,67,253,0,0,255,15,248,0,0,255,63,240,0,0,255,191,240,0,0,255,255,252,0,0,255,247,254,0,0,255,192,255,64,0,255,64,127,192,0,255,64,47,240,0,255,64,15,248,0,255,64,7,253,0,255,64,2,255,0,255,64,0,255,192,255,64,0,63,224, + // 0x03bb λ + 21,30,180,20,0,255,191,228,0,0,0,0,255,255,0,0,0,0,255,255,192,0,0,0,81,191,224,0,0,0,0,31,240,0,0,0,0,11,248,0,0,0,0,3,252,0,0,0,0,2,253,0,0,0,0,1,254,0,0,0,0,2,255,0,0,0,0,3,255,64,0,0,0,7,255,192,0,0,0,11,255,192,0,0,0,15,223,224,0,0,0,31,207,240,0,0,0,63,203,244,0,0,0,63,67,248,0,0,0,191,3,252,0,0,0,255,2,253,0,0,1,254,0,255,0,0,2,253,0,255,0,0,3,252,0,127,128,0,7,248,0,63,192,0,15,244,0,63,208,0,15,240,0,31,240,0,31,224,0,15,244,0,63,208,0,11,255,64,63,192,0,7,255,64,191,192,0,2,255,64,0,0,0,0,20,0, + // 0x03bc μ + 21,31,186,24,3,246,85,0,0,5,80,0,255,0,0,31,240,0,255,0,0,31,240,0,255,0,0,31,240,0,255,0,0,31,240,0,255,0,0,31,240,0,255,0,0,31,240,0,255,0,0,31,240,0,255,0,0,31,240,0,255,0,0,31,240,0,255,0,0,31,240,0,255,0,0,31,240,0,255,0,0,31,240,0,255,0,0,47,240,0,255,64,0,63,240,0,255,128,0,63,240,0,255,192,0,191,240,0,255,244,7,255,244,0,255,255,255,239,255,64,255,255,255,199,255,64,255,47,254,2,255,64,255,1,64,0,20,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,0,0, + // 0x03bd ν + 19,21,105,20,0,0,85,0,0,1,84,191,64,0,3,252,127,192,0,3,252,63,192,0,3,252,47,208,0,3,252,15,240,0,7,248,15,240,0,7,248,11,244,0,11,244,3,252,0,15,240,3,252,0,15,240,1,253,0,31,224,0,255,0,47,208,0,255,0,63,192,0,127,64,127,64,0,63,192,255,0,0,47,194,253,0,0,31,215,252,0,0,15,255,240,0,0,11,255,208,0,0,7,255,128,0,0,3,254,0,0, + // 0x03be ξ + 16,37,148,19,2,248,47,255,255,254,63,255,255,255,63,255,255,255,0,111,228,0,2,253,0,0,15,240,0,0,31,208,0,0,47,192,0,0,47,192,0,0,47,208,0,0,31,240,0,0,15,252,0,0,3,255,234,168,0,127,255,252,0,191,255,252,7,255,149,84,31,244,0,0,63,192,0,0,191,128,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,0,255,192,0,0,127,224,0,0,63,254,64,0,15,255,254,64,2,255,255,240,0,47,255,252,0,0,111,253,0,0,3,254,0,0,1,254,0,0,1,254,0,0,2,253,0,0,3,252,0,0,7,248,0,0,10,160, + // 0x03bf ο + 19,22,110,23,2,255,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x03c0 π + 25,22,154,26,0,255,21,85,85,85,85,85,64,127,255,255,255,255,255,192,127,255,255,255,255,255,192,42,191,234,170,191,234,128,0,63,192,0,63,192,0,0,63,192,0,63,192,0,0,63,192,0,63,192,0,0,63,192,0,63,192,0,0,63,192,0,63,192,0,0,63,192,0,63,192,0,0,63,192,0,63,192,0,0,63,192,0,63,192,0,0,63,192,0,63,192,0,0,63,192,0,63,192,0,0,63,192,0,63,192,0,0,63,192,0,63,192,0,0,63,192,0,63,192,0,0,63,192,0,63,208,0,0,63,192,0,63,255,64,0,63,192,0,31,255,64,0,63,192,0,7,255,64,0,0,0,0,0,84,0, + // 0x03c1 ρ + 19,31,155,23,2,246,0,6,254,64,0,0,127,255,248,0,2,255,255,255,0,11,255,171,255,192,15,248,0,127,224,47,224,0,31,240,63,192,0,15,244,63,192,0,11,248,127,192,0,7,252,127,128,0,3,252,127,128,0,3,252,127,128,0,3,252,127,128,0,3,252,127,128,0,7,252,127,128,0,11,248,127,128,0,15,244,127,192,0,47,240,127,248,0,255,192,127,255,255,255,64,127,255,255,253,0,127,75,255,224,0,127,128,20,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,0,0,0,0,0, + // 0x03c2 ς + 16,29,116,19,2,248,0,6,254,144,0,191,255,252,3,255,255,252,15,255,171,248,47,244,0,16,63,208,0,0,127,192,0,0,191,128,0,0,255,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,0,255,64,0,0,191,192,0,0,127,208,0,0,63,244,0,0,31,255,64,0,7,255,254,0,1,255,255,224,0,31,255,252,0,0,111,253,0,0,3,254,0,0,2,254,0,0,1,253,0,0,2,252,0,0,3,252,0,0,11,244,0,0,10,160, + // 0x03c3 σ + 21,22,132,24,2,255,0,0,85,85,85,0,0,47,255,255,255,64,1,255,255,255,255,64,11,255,234,255,170,64,31,252,0,63,128,0,63,224,0,47,208,0,127,192,0,15,240,0,191,128,0,15,240,0,255,64,0,11,244,0,255,0,0,7,248,0,255,0,0,7,248,0,255,0,0,7,252,0,255,0,0,7,248,0,255,64,0,11,248,0,191,128,0,15,244,0,127,192,0,15,240,0,63,224,0,63,224,0,31,248,1,255,192,0,11,255,255,255,64,0,2,255,255,253,0,0,0,47,255,224,0,0,0,0,84,0,0,0, + // 0x03c4 τ + 18,22,110,19,0,255,21,85,85,85,80,127,255,255,255,240,127,255,255,255,240,42,175,250,170,160,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,244,0,0,0,11,253,0,0,0,3,255,255,192,0,1,255,255,192,0,0,127,255,128,0,0,1,84,0, + // 0x03c5 υ + 18,22,110,23,3,255,85,0,0,85,0,255,0,0,127,128,255,0,0,127,192,255,0,0,63,192,255,0,0,63,192,255,0,0,47,208,255,0,0,47,208,255,0,0,47,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,47,224,255,0,0,47,208,255,0,0,63,208,255,0,0,63,192,255,64,0,127,192,191,192,0,255,64,63,224,7,255,0,47,255,255,252,0,15,255,255,240,0,1,255,255,64,0,0,5,80,0,0, + // 0x03c6 φ + 25,39,17,29,2,246,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,111,250,64,0,0,0,47,255,255,248,0,0,1,255,255,255,255,128,0,7,255,239,250,255,224,0,15,252,11,240,47,248,0,63,240,11,240,7,253,0,127,192,11,240,2,255,0,191,128,11,240,0,255,0,255,64,11,240,0,255,64,255,0,11,240,0,191,64,255,0,11,240,0,191,128,255,0,11,240,0,191,128,255,64,11,240,0,191,64,191,128,11,240,0,255,64,127,192,11,240,1,255,0,63,208,11,240,3,254,0,31,244,11,240,11,252,0,11,254,11,240,127,244,0,2,255,255,255,255,208,0,0,127,255,255,255,0,0,0,6,255,255,228,0,0,0,0,11,244,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,0,0,0,0,0, + // 0x03c7 χ + 22,31,186,23,1,246,105,0,0,0,21,80,255,208,0,0,63,192,255,240,0,0,191,128,239,248,0,0,255,0,3,252,0,2,253,0,1,254,0,3,252,0,0,255,0,11,240,0,0,127,128,31,224,0,0,63,192,63,192,0,0,31,224,127,64,0,0,15,240,255,0,0,0,7,249,253,0,0,0,3,255,252,0,0,0,2,255,240,0,0,0,0,255,224,0,0,0,0,191,192,0,0,0,0,255,192,0,0,0,1,255,224,0,0,0,3,255,240,0,0,0,11,251,248,0,0,0,31,227,252,0,0,0,63,194,254,0,0,0,191,64,255,0,0,0,255,0,191,128,0,3,252,0,63,192,0,7,248,0,47,224,0,15,240,0,15,249,64,47,208,0,11,255,224,127,192,0,3,255,224,255,0,0,0,191,224,0,0,0,0,0,0, + // 0x03c8 ψ + 24,39,234,29,3,246,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,85,0,15,224,1,84,255,0,15,224,3,252,255,0,15,224,3,252,255,0,15,224,2,252,255,0,15,224,2,253,255,0,15,224,1,254,255,0,15,224,0,254,255,0,15,224,0,254,255,0,15,224,0,255,255,0,15,224,0,255,255,0,15,224,0,255,255,0,15,224,0,255,255,0,15,224,0,254,255,0,15,224,1,254,191,0,15,224,2,253,127,128,15,224,7,252,63,208,15,224,31,244,47,249,15,225,191,240,15,255,255,255,255,192,2,255,255,255,254,0,0,47,255,255,224,0,0,0,31,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,0,0,0,0, + // 0x03c9 ω + 27,22,154,31,2,255,0,85,0,0,0,84,0,3,252,0,0,0,255,0,11,244,0,0,0,63,128,15,240,0,0,0,47,192,47,208,0,0,0,15,224,63,192,0,0,0,15,240,63,192,0,0,0,11,244,127,128,0,169,0,7,248,127,64,1,253,0,7,248,191,64,1,253,0,3,248,191,64,1,253,0,3,252,191,64,1,253,0,3,252,191,64,1,253,0,3,248,127,64,1,253,0,7,248,127,128,1,254,0,7,244,63,192,2,255,0,15,240,47,208,3,255,0,31,240,31,244,11,239,192,127,208,11,255,255,207,255,255,192,3,255,255,67,255,255,0,0,191,253,0,255,248,0,0,1,64,0,5,64,0, + // 0x03ca ϊ + 255, + // 0x03cb ϋ + 255, + // 0x03cc ό + 19,31,155,23,2,255,0,0,5,84,0,0,0,15,248,0,0,0,15,240,0,0,0,47,208,0,0,0,63,192,0,0,0,63,0,0,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x03cd ύ + 18,31,155,23,3,255,0,0,21,80,0,0,0,127,192,0,0,0,191,128,0,0,0,255,0,0,0,1,253,0,0,0,2,248,0,0,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,85,0,255,0,0,127,128,255,0,0,127,192,255,0,0,63,192,255,0,0,63,192,255,0,0,47,208,255,0,0,47,208,255,0,0,47,224,255,0,0,31,224,255,0,0,31,224,255,0,0,31,224,255,0,0,47,224,255,0,0,47,208,255,0,0,63,208,255,0,0,63,192,255,64,0,127,192,191,192,0,255,64,63,224,7,255,0,47,255,255,252,0,15,255,255,240,0,1,255,255,64,0,0,5,80,0,0, + // 0x03ce ώ + 27,31,217,31,2,255,0,0,0,5,84,0,0,0,0,0,15,248,0,0,0,0,0,15,240,0,0,0,0,0,47,208,0,0,0,0,0,63,192,0,0,0,0,0,63,0,0,0,0,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,0,84,0,3,252,0,0,0,255,0,11,244,0,0,0,63,128,15,240,0,0,0,47,192,47,208,0,0,0,15,224,63,192,0,0,0,15,240,63,192,0,0,0,11,244,127,128,0,169,0,7,248,127,64,1,253,0,7,248,191,64,1,253,0,3,248,191,64,1,253,0,3,252,191,64,1,253,0,3,252,191,64,1,253,0,3,248,127,64,1,253,0,7,248,127,128,1,254,0,7,244,63,192,2,255,0,15,240,47,208,3,255,0,31,240,31,244,11,239,192,127,208,11,255,255,207,255,255,192,3,255,255,67,255,255,0,0,191,253,0,255,248,0,0,1,64,0,5,64,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Katakana_28.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Katakana_28.cpp new file mode 100644 index 000000000000..b04da12e00d6 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Katakana_28.cpp @@ -0,0 +1,238 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Katakana 38pt, capital 'A' height: 28px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 +extern const uint8_t NotoSans_Medium_Katakana_28[12298] = { + 162,28,160,48,104,136,37,246, // unifont_t + // 0x30a0 ゠ + 160,48,18,8,40,38,10,10,127,255,255,255,208,21,85,85,85,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,85,85,85,64,127,255,255,255,208, + // 0x30a1 ァ + 161,48,27,26,182,38,6,251,106,85,85,85,85,86,144,127,255,255,255,255,255,244,127,255,255,255,255,255,252,127,255,255,255,255,255,244,0,0,0,0,0,47,224,0,0,0,0,0,127,192,0,0,10,164,0,255,64,0,0,11,244,3,254,0,0,0,11,244,15,252,0,0,0,11,240,63,240,0,0,0,11,240,255,192,0,0,0,11,240,63,0,0,0,0,15,240,4,0,0,0,0,15,240,0,0,0,0,0,15,224,0,0,0,0,0,31,208,0,0,0,0,0,63,192,0,0,0,0,0,191,128,0,0,0,0,0,255,0,0,0,0,0,3,254,0,0,0,0,0,31,252,0,0,0,0,0,191,240,0,0,0,0,7,255,192,0,0,0,0,2,255,0,0,0,0,0,0,116,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30a2 ア + 162,48,32,31,248,38,4,253,127,170,170,170,170,170,170,224,127,255,255,255,255,255,255,252,127,255,255,255,255,255,255,254,127,255,255,255,255,255,255,252,0,0,0,0,0,0,31,240,0,0,0,0,0,0,63,224,0,0,0,0,0,0,255,192,0,0,0,85,0,2,255,0,0,0,0,255,64,11,253,0,0,0,0,255,64,47,248,0,0,0,0,191,64,191,224,0,0,0,0,191,67,255,192,0,0,0,0,255,71,255,0,0,0,0,0,255,1,248,0,0,0,0,0,255,0,16,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,2,254,0,0,0,0,0,0,3,253,0,0,0,0,0,0,7,252,0,0,0,0,0,0,15,248,0,0,0,0,0,0,47,240,0,0,0,0,0,0,127,224,0,0,0,0,0,1,255,192,0,0,0,0,0,11,255,0,0,0,0,0,0,127,253,0,0,0,0,0,3,255,244,0,0,0,0,0,2,255,192,0,0,0,0,0,0,126,0,0,0,0,0,0,0,16,0,0,0,0,0,0, + // 0x30a3 ィ + 163,48,26,27,189,38,4,252,0,0,0,0,0,2,0,0,0,0,0,0,15,192,0,0,0,0,0,63,240,0,0,0,0,0,255,224,0,0,0,0,7,255,128,0,0,0,0,47,253,0,0,0,0,0,255,244,0,0,0,0,7,255,192,0,0,0,0,63,254,0,0,0,0,2,255,244,0,0,0,0,127,255,224,0,0,0,7,255,255,224,0,0,1,191,255,239,224,0,0,127,255,253,31,224,0,0,63,255,128,31,224,0,0,47,244,0,31,224,0,0,14,0,0,31,224,0,0,0,0,0,31,224,0,0,0,0,0,31,224,0,0,0,0,0,31,224,0,0,0,0,0,31,224,0,0,0,0,0,31,224,0,0,0,0,0,31,224,0,0,0,0,0,31,224,0,0,0,0,0,31,224,0,0,0,0,0,31,224,0,0,0,0,0,31,224,0,0, + // 0x30a4 イ + 164,48,30,31,248,38,3,254,0,0,0,0,0,0,15,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,255,240,0,0,0,0,0,3,255,192,0,0,0,0,0,31,255,0,0,0,0,0,0,127,252,0,0,0,0,0,2,255,224,0,0,0,0,0,31,255,64,0,0,0,0,0,191,252,0,0,0,0,0,7,255,224,0,0,0,0,0,127,255,64,0,0,0,0,7,255,255,0,0,0,0,0,191,255,255,0,0,0,0,27,255,254,255,0,0,0,6,255,255,208,255,0,0,0,191,255,253,0,255,0,0,0,191,255,144,0,255,0,0,0,63,244,0,0,255,0,0,0,46,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,255,0,0,0, + // 0x30a5 ゥ + 165,48,25,29,203,38,7,251,0,0,5,80,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,224,0,0,0,0,0,15,224,0,0,0,149,85,95,245,85,104,0,255,255,255,255,255,255,128,255,255,255,255,255,255,192,255,255,255,255,255,255,128,254,0,0,0,0,255,64,254,0,0,0,0,255,0,254,0,0,0,0,255,0,254,0,0,0,1,254,0,254,0,0,0,3,253,0,254,0,0,0,3,252,0,254,0,0,0,11,252,0,0,0,0,0,15,244,0,0,0,0,0,47,240,0,0,0,0,0,127,208,0,0,0,0,1,255,192,0,0,0,0,7,255,0,0,0,0,0,47,253,0,0,0,0,1,255,244,0,0,0,0,47,255,208,0,0,0,27,255,255,0,0,0,0,15,255,244,0,0,0,0,3,255,64,0,0,0,0,1,224,0,0,0,0,0,0,0,0,0,0,0, + // 0x30a6 ウ + 166,48,29,34,16,38,5,253,0,0,1,170,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,255,0,0,0,0,255,255,255,255,255,255,254,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,128,255,170,170,170,170,170,255,64,254,0,0,0,0,0,255,0,254,0,0,0,0,1,255,0,254,0,0,0,0,2,255,0,254,0,0,0,0,3,254,0,254,0,0,0,0,3,253,0,254,0,0,0,0,7,252,0,254,0,0,0,0,15,248,0,255,0,0,0,0,15,244,0,169,0,0,0,0,47,240,0,0,0,0,0,0,63,224,0,0,0,0,0,0,191,192,0,0,0,0,0,2,255,128,0,0,0,0,0,7,255,0,0,0,0,0,0,31,252,0,0,0,0,0,0,191,244,0,0,0,0,0,3,255,224,0,0,0,0,0,47,255,64,0,0,0,0,2,255,253,0,0,0,0,1,191,255,244,0,0,0,0,3,255,255,64,0,0,0,0,1,255,248,0,0,0,0,0,0,191,64,0,0,0,0,0,0,16,0,0,0,0,0, + // 0x30a7 ェ + 167,48,28,22,154,38,5,254,6,149,85,85,85,86,144,7,255,255,255,255,255,224,7,255,255,255,255,255,224,7,255,255,255,255,255,224,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,58,170,170,255,170,170,173,127,255,255,255,255,255,253,127,255,255,255,255,255,253,127,255,255,255,255,255,253,0,0,0,0,0,0,0, + // 0x30a8 エ + 168,48,32,26,208,38,3,0,11,255,255,255,255,255,255,240,11,255,255,255,255,255,255,240,11,255,255,255,255,255,255,240,11,255,255,255,255,255,255,240,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0, + // 0x30a9 ォ + 169,48,27,27,189,38,6,252,0,0,0,3,252,0,0,0,0,0,2,252,0,0,0,0,0,2,252,0,0,0,0,0,2,252,0,0,0,0,0,2,252,0,0,25,85,85,86,253,85,84,47,255,255,255,255,255,252,47,255,255,255,255,255,252,47,255,255,255,255,255,252,0,0,0,31,252,0,0,0,0,0,63,252,0,0,0,0,0,255,252,0,0,0,0,3,255,252,0,0,0,0,15,249,252,0,0,0,0,127,241,252,0,0,0,1,255,193,252,0,0,0,11,255,1,252,0,0,0,127,248,1,252,0,0,2,255,224,1,253,0,0,47,255,64,1,253,0,0,127,252,0,1,253,0,0,47,224,0,1,253,0,0,15,0,4,2,253,0,0,0,0,11,255,253,0,0,0,0,11,255,252,0,0,0,0,11,255,244,0,0,0,0,0,5,64,0,0, + // 0x30aa オ + 170,48,32,32,0,38,3,254,0,0,0,0,15,244,0,0,0,0,0,0,11,244,0,0,0,0,0,0,11,244,0,0,0,0,0,0,11,244,0,0,0,0,0,0,11,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,31,255,255,255,255,255,255,253,31,255,255,255,255,255,255,253,31,255,255,255,255,255,255,253,26,170,170,170,191,254,170,168,0,0,0,0,191,244,0,0,0,0,0,1,255,244,0,0,0,0,0,7,255,244,0,0,0,0,0,15,255,244,0,0,0,0,0,63,231,244,0,0,0,0,0,255,199,244,0,0,0,0,7,255,3,248,0,0,0,0,31,252,3,248,0,0,0,0,191,240,3,248,0,0,0,3,255,192,3,248,0,0,0,31,255,0,3,248,0,0,0,255,248,0,3,248,0,0,11,255,208,0,3,248,0,0,127,255,0,0,3,248,0,0,191,248,0,0,3,248,0,0,63,208,0,0,3,248,0,0,14,0,0,0,7,248,0,0,0,0,0,191,255,248,0,0,0,0,0,191,255,248,0,0,0,0,0,191,255,240,0,0,0,0,0,127,255,128,0,0, + // 0x30ab カ + 171,48,29,33,8,38,4,253,0,0,2,254,0,0,0,0,0,0,2,254,0,0,0,0,0,0,2,254,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,127,255,255,255,255,255,254,0,127,255,255,255,255,255,255,128,127,255,255,255,255,255,255,128,106,170,171,254,170,170,191,64,0,0,3,252,0,0,127,64,0,0,7,248,0,0,127,64,0,0,11,244,0,0,127,64,0,0,11,244,0,0,127,64,0,0,15,240,0,0,191,0,0,0,31,240,0,0,191,0,0,0,47,224,0,0,191,0,0,0,63,192,0,0,191,0,0,0,127,192,0,0,255,0,0,0,255,128,0,0,255,0,0,1,255,0,0,0,254,0,0,3,254,0,0,0,254,0,0,11,252,0,0,1,253,0,0,31,248,0,0,2,253,0,0,127,240,0,0,3,252,0,1,255,208,0,0,3,252,0,7,255,64,1,64,15,252,0,47,254,0,2,255,255,244,0,255,248,0,2,255,255,240,0,63,224,0,1,255,255,208,0,11,64,0,0,170,250,0,0,0,0,0,0,0,0,0,0, + // 0x30ac ガ + 172,48,33,35,59,38,3,253,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,252,0,0,0,1,170,0,0,112,190,0,0,0,1,255,0,1,252,63,0,0,0,1,255,0,0,189,31,128,0,0,1,254,0,0,63,15,192,0,0,1,254,0,0,47,69,0,0,0,1,254,0,0,15,64,0,0,0,1,254,0,0,0,0,0,58,170,170,255,170,170,168,0,0,63,255,255,255,255,255,255,128,0,63,255,255,255,255,255,255,192,0,63,255,255,255,255,255,255,192,0,0,0,3,252,0,0,63,128,0,0,0,3,252,0,0,63,128,0,0,0,3,248,0,0,63,128,0,0,0,7,248,0,0,63,128,0,0,0,11,244,0,0,127,128,0,0,0,15,240,0,0,127,64,0,0,0,31,240,0,0,127,64,0,0,0,47,224,0,0,127,64,0,0,0,63,192,0,0,191,0,0,0,0,127,192,0,0,191,0,0,0,0,255,64,0,0,255,0,0,0,2,255,0,0,0,255,0,0,0,3,254,0,0,0,254,0,0,0,15,252,0,0,0,254,0,0,0,63,244,0,0,1,253,0,0,0,191,224,0,0,3,253,0,0,3,255,192,0,0,7,252,0,0,31,255,0,1,255,255,252,0,0,191,252,0,1,255,255,244,0,0,63,240,0,1,255,255,224,0,0,15,128,0,0,255,255,64,0,0,1,0,0,0,0,0,0,0,0, + // 0x30ad キ + 173,48,30,33,8,38,4,253,0,0,6,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,244,0,0,0,0,0,0,11,244,0,0,0,0,0,0,7,248,0,0,16,0,0,0,3,252,0,91,248,0,0,0,3,253,191,255,248,0,0,0,107,255,255,255,252,0,106,255,255,255,255,255,232,0,255,255,255,255,254,80,0,0,255,255,255,255,0,0,0,0,191,250,64,255,0,0,0,0,100,0,0,255,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,127,128,0,0,0,0,0,0,63,192,0,22,224,0,0,0,63,193,111,255,240,0,0,0,63,255,255,255,240,0,1,111,255,255,255,255,240,90,255,255,255,255,255,164,0,255,255,255,255,249,64,0,0,255,255,255,159,240,0,0,0,191,249,64,15,240,0,0,0,100,0,0,11,244,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,254,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,64,0,0,0, + // 0x30ae ギ + 174,48,33,35,59,38,3,253,0,0,0,0,0,0,0,184,0,0,0,0,0,0,0,32,252,0,0,0,0,16,0,1,244,127,0,0,0,11,244,0,0,252,47,64,0,0,11,248,0,0,126,15,192,0,0,7,248,0,0,63,10,0,0,0,3,252,0,0,31,64,0,0,0,3,252,0,0,108,0,0,0,0,2,252,5,191,252,0,0,0,0,2,255,255,255,252,0,0,0,22,191,255,255,255,253,0,0,191,255,255,255,255,254,80,0,0,191,255,255,255,229,0,0,0,0,127,255,250,255,0,0,0,0,0,63,164,0,191,64,0,0,0,0,16,0,0,127,128,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,16,0,0,0,0,63,192,0,111,240,0,0,0,0,47,230,191,255,244,0,0,0,1,127,255,255,255,248,0,0,22,255,255,255,255,255,164,0,191,255,255,255,255,249,64,0,0,191,255,255,255,244,0,0,0,0,127,255,249,75,244,0,0,0,0,63,148,0,7,248,0,0,0,0,16,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,249,0,0,0,0, + // 0x30af ク + 175,48,31,34,16,38,3,253,0,0,0,41,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,127,208,0,0,0,0,0,0,255,192,0,0,0,0,0,1,255,64,0,0,0,0,0,3,255,0,0,1,0,0,0,11,255,255,255,255,128,0,0,31,255,255,255,255,244,0,0,63,255,255,255,255,240,0,0,255,213,85,85,127,224,0,2,255,64,0,0,63,208,0,11,254,0,0,0,191,192,0,47,252,0,0,0,255,128,0,191,240,0,0,1,255,64,3,255,192,0,0,2,255,0,31,255,0,0,0,3,253,0,127,248,0,0,0,11,252,0,31,224,0,0,0,31,244,0,3,64,0,0,0,63,240,0,0,0,0,0,0,191,208,0,0,0,0,0,1,255,128,0,0,0,0,0,3,255,0,0,0,0,0,0,15,253,0,0,0,0,0,0,63,244,0,0,0,0,0,1,255,224,0,0,0,0,0,11,255,128,0,0,0,0,0,47,254,0,0,0,0,0,2,255,248,0,0,0,0,0,31,255,208,0,0,0,0,2,255,255,0,0,0,0,0,127,255,244,0,0,0,0,0,63,255,128,0,0,0,0,0,15,248,0,0,0,0,0,0,2,128,0,0,0,0,0, + // 0x30b0 グ + 176,48,35,36,68,38,2,252,0,0,0,0,0,0,0,31,0,0,0,0,0,0,0,5,31,192,0,0,0,56,0,0,63,11,208,0,0,0,127,208,0,47,131,240,0,0,0,191,192,0,15,194,244,0,0,0,255,64,0,7,224,224,0,0,2,255,0,0,3,240,0,0,0,7,253,0,0,5,128,0,0,0,15,255,255,255,255,128,0,0,0,47,255,255,255,255,240,0,0,0,127,255,255,255,255,240,0,0,0,255,213,85,85,191,208,0,0,3,255,0,0,0,191,192,0,0,15,252,0,0,0,255,128,0,0,63,244,0,0,0,255,64,0,0,255,208,0,0,2,255,0,0,7,255,128,0,0,3,253,0,0,47,253,0,0,0,11,252,0,0,191,244,0,0,0,15,248,0,0,47,192,0,0,0,47,240,0,0,6,0,0,0,0,127,208,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,2,255,64,0,0,0,0,0,0,11,254,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,191,240,0,0,0,0,0,0,2,255,192,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,127,253,0,0,0,0,0,0,7,255,240,0,0,0,0,0,0,47,255,192,0,0,0,0,0,7,255,254,0,0,0,0,0,0,191,255,240,0,0,0,0,0,0,127,255,64,0,0,0,0,0,0,31,244,0,0,0,0,0,0,0,2,64,0,0,0,0,0,0, + // 0x30b1 ケ + 177,48,33,33,41,38,2,253,0,0,47,224,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,2,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,192,0,15,255,255,255,255,255,255,192,0,31,255,255,255,255,255,255,192,0,63,224,0,3,252,0,0,0,0,255,192,0,3,252,0,0,0,2,255,64,0,3,252,0,0,0,11,255,0,0,7,252,0,0,0,47,252,0,0,11,248,0,0,0,191,244,0,0,15,244,0,0,0,47,208,0,0,15,240,0,0,0,3,64,0,0,31,240,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,11,254,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,191,240,0,0,0,0,0,0,2,255,208,0,0,0,0,0,0,15,255,128,0,0,0,0,0,0,191,254,0,0,0,0,0,0,0,127,248,0,0,0,0,0,0,0,11,208,0,0,0,0,0,0,0,1,0,0,0,0,0,0, + // 0x30b2 ゲ + 178,48,35,36,68,38,2,252,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,63,64,0,0,16,0,0,0,46,31,192,0,0,63,208,0,0,63,11,208,0,0,63,208,0,0,31,131,240,0,0,127,192,0,0,15,194,244,0,0,191,128,0,0,7,224,64,0,0,255,64,0,0,3,224,0,0,1,255,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,3,255,255,255,255,255,255,64,0,11,255,255,255,255,255,255,64,0,31,255,255,255,255,255,255,64,0,63,255,255,255,255,255,255,64,0,191,192,0,7,248,0,0,0,1,255,128,0,11,248,0,0,0,3,255,0,0,11,244,0,0,0,15,253,0,0,15,244,0,0,0,63,248,0,0,15,240,0,0,0,255,224,0,0,31,240,0,0,0,63,192,0,0,47,224,0,0,0,7,0,0,0,63,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,7,254,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,63,244,0,0,0,0,0,0,0,255,224,0,0,0,0,0,0,7,255,192,0,0,0,0,0,0,47,255,0,0,0,0,0,0,1,255,252,0,0,0,0,0,0,0,191,240,0,0,0,0,0,0,0,15,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30b3 コ + 179,48,27,28,196,38,6,254,191,255,255,255,255,255,248,191,255,255,255,255,255,248,191,255,255,255,255,255,248,191,255,255,255,255,255,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,0,0,0,0,0,11,248,0,0,0,0,0,11,248,0,0,0,0,0,0,0, + // 0x30b4 ゴ + 180,48,31,36,32,38,5,253,0,0,0,0,0,0,1,0,0,0,0,0,0,4,15,192,0,0,0,0,0,62,15,208,0,0,0,0,0,63,67,240,0,0,0,0,0,31,194,248,0,0,0,0,0,11,208,252,0,0,0,0,0,3,240,64,0,0,0,0,0,2,64,0,191,255,255,255,255,255,248,0,191,255,255,255,255,255,248,0,191,255,255,255,255,255,248,0,191,255,255,255,255,255,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,255,255,255,255,255,255,248,0,255,255,255,255,255,255,248,0,255,255,255,255,255,255,248,0,255,255,255,255,255,255,248,0,0,0,0,0,0,7,252,0,0,0,0,0,0,7,252,0,0,0,0,0,0,1,84,0, + // 0x30b5 サ + 181,48,33,33,41,38,2,253,0,0,170,0,0,15,240,0,0,0,0,255,0,0,15,240,0,0,0,0,255,0,0,15,240,0,0,0,0,255,0,0,15,240,0,0,0,0,255,0,0,15,240,0,0,0,0,255,0,0,15,240,0,0,0,0,255,0,0,15,240,0,0,0,0,255,0,0,15,240,0,0,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,191,255,255,255,255,255,255,255,192,186,170,255,170,170,175,250,170,192,0,0,255,0,0,15,240,0,0,0,0,255,0,0,15,240,0,0,0,0,255,0,0,15,224,0,0,0,0,255,0,0,15,224,0,0,0,0,255,0,0,15,224,0,0,0,0,255,0,0,31,224,0,0,0,0,255,0,0,31,208,0,0,0,0,255,0,0,47,208,0,0,0,0,255,0,0,63,192,0,0,0,0,85,0,0,63,192,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,11,253,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,255,240,0,0,0,0,0,0,11,255,192,0,0,0,0,0,0,191,255,0,0,0,0,0,0,0,191,248,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,9,0,0,0,0,0, + // 0x30b6 ザ + 182,48,36,34,50,38,1,252,0,0,0,0,0,0,0,1,240,0,0,170,64,0,15,244,177,240,0,0,191,64,0,15,240,244,248,0,0,191,64,0,15,240,248,124,0,0,191,64,0,15,240,124,61,0,0,191,0,0,11,240,61,40,0,0,191,0,0,11,240,45,0,0,0,191,0,0,11,240,0,0,0,0,191,0,0,11,240,0,0,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,58,170,255,234,170,175,250,170,144,0,0,191,0,0,11,240,0,0,0,0,191,0,0,15,240,0,0,0,0,191,0,0,15,240,0,0,0,0,191,0,0,15,240,0,0,0,0,191,0,0,15,240,0,0,0,0,191,64,0,15,240,0,0,0,0,191,64,0,15,240,0,0,0,0,191,64,0,31,224,0,0,0,0,191,64,0,47,208,0,0,0,0,21,0,0,63,192,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,7,254,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,255,240,0,0,0,0,0,0,11,255,208,0,0,0,0,0,0,191,255,0,0,0,0,0,0,0,63,248,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,1,0,0,0,0,0, + // 0x30b7 シ + 183,48,31,31,248,38,4,254,0,2,64,0,0,0,0,0,0,7,240,0,0,0,0,0,0,15,254,0,0,0,0,0,0,31,255,208,0,0,0,0,0,2,255,248,0,0,0,0,0,0,63,254,0,0,0,0,0,0,7,253,0,0,0,0,0,0,0,248,0,0,0,0,0,0,0,16,0,0,0,0,61,0,0,0,0,0,0,192,127,192,0,0,0,0,2,224,255,248,0,0,0,0,3,244,127,255,64,0,0,0,15,252,11,255,224,0,0,0,63,244,0,255,240,0,0,0,191,224,0,31,192,0,0,2,255,192,0,3,128,0,0,11,255,0,0,0,0,0,0,47,252,0,0,0,0,0,0,255,240,0,0,0,0,0,3,255,192,0,0,0,0,0,31,255,0,0,0,0,0,0,255,252,0,0,0,0,0,7,255,224,0,0,0,0,0,127,255,64,0,0,0,0,11,255,248,0,0,0,0,1,255,255,208,0,0,0,1,191,255,254,0,0,0,0,31,255,255,224,0,0,0,0,15,255,254,0,0,0,0,0,7,255,144,0,0,0,0,0,2,228,0,0,0,0,0,0, + // 0x30b8 ジ + 184,48,33,32,32,38,3,254,0,0,0,0,0,0,1,176,0,0,0,128,0,0,0,2,248,0,0,3,248,0,0,11,192,253,0,0,11,255,64,0,11,224,127,0,0,11,255,224,0,3,240,63,64,0,1,255,253,0,1,252,15,192,0,0,47,255,64,0,253,9,0,0,0,3,255,0,0,126,0,0,0,0,0,188,0,0,32,0,0,0,0,0,4,0,0,0,0,0,30,0,0,0,0,0,0,96,0,63,224,0,0,0,0,0,240,0,191,253,0,0,0,0,2,252,0,47,255,128,0,0,0,7,253,0,7,255,244,0,0,0,31,252,0,0,127,244,0,0,0,63,240,0,0,15,224,0,0,0,255,208,0,0,1,192,0,0,3,255,128,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,127,248,0,0,0,0,0,0,2,255,224,0,0,0,0,0,0,15,255,128,0,0,0,0,0,0,127,253,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,47,255,192,0,0,0,0,0,6,255,253,0,0,0,0,0,1,191,255,240,0,0,0,0,1,111,255,255,64,0,0,0,0,15,255,255,244,0,0,0,0,0,7,255,254,64,0,0,0,0,0,3,255,208,0,0,0,0,0,0,1,228,0,0,0,0,0,0,0, + // 0x30b9 ス + 185,48,30,30,240,38,4,253,3,255,255,255,255,255,208,0,3,255,255,255,255,255,248,0,3,255,255,255,255,255,244,0,3,255,255,255,255,255,240,0,0,0,0,0,0,63,208,0,0,0,0,0,0,191,192,0,0,0,0,0,0,255,128,0,0,0,0,0,1,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,11,252,0,0,0,0,0,0,15,244,0,0,0,0,0,0,63,224,0,0,0,0,0,0,191,192,0,0,0,0,0,1,255,64,0,0,0,0,0,7,255,0,0,0,0,0,0,15,255,64,0,0,0,0,0,63,255,224,0,0,0,0,0,255,255,248,0,0,0,0,7,255,95,254,0,0,0,0,31,253,7,255,128,0,0,0,191,244,1,255,224,0,0,3,255,208,0,127,244,0,0,47,255,0,0,31,253,0,1,255,252,0,0,7,255,64,31,255,224,0,0,2,255,192,255,255,64,0,0,0,191,240,255,252,0,0,0,0,63,240,63,208,0,0,0,0,15,192,13,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0, + // 0x30ba ズ + 186,48,34,36,68,38,3,253,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,188,0,0,0,0,0,0,0,180,127,0,0,0,0,0,0,0,252,47,64,0,0,0,0,0,0,190,15,192,0,0,0,0,0,0,63,11,208,0,0,0,0,0,0,95,131,64,3,255,255,255,255,255,255,64,0,3,255,255,255,255,255,252,0,0,3,255,255,255,255,255,248,0,0,3,255,255,255,255,255,240,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,1,255,128,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,15,255,192,0,0,0,0,0,0,63,255,240,0,0,0,0,0,0,255,255,252,0,0,0,0,0,7,255,79,255,0,0,0,0,0,31,253,3,255,192,0,0,0,0,191,244,0,255,240,0,0,0,7,255,208,0,63,252,0,0,0,47,255,64,0,15,254,0,0,1,255,252,0,0,3,255,128,0,31,255,224,0,0,0,255,208,0,255,255,64,0,0,0,127,244,0,127,248,0,0,0,0,47,240,0,47,208,0,0,0,0,11,192,0,9,0,0,0,0,0,2,0,0, + // 0x30bb セ + 187,48,32,32,0,38,2,254,0,0,42,128,0,0,0,0,0,0,63,208,0,0,0,0,0,0,63,208,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,96,0,0,63,192,0,0,111,248,0,0,63,192,1,191,255,255,0,0,63,214,255,255,255,253,0,0,63,255,255,255,255,252,1,111,255,255,255,254,79,244,191,255,255,255,249,0,47,240,191,255,255,228,0,0,63,192,191,255,191,192,0,0,255,128,127,144,63,192,0,2,255,0,0,0,63,192,0,7,253,0,0,0,63,192,0,15,248,0,0,0,63,192,0,63,240,0,0,0,63,192,0,255,192,0,0,0,63,192,0,47,64,0,0,0,63,192,0,5,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,244,0,0,5,176,0,0,31,255,235,255,255,240,0,0,15,255,255,255,255,240,0,0,3,255,255,255,255,240,0,0,0,111,255,255,234,80, + // 0x30bc ゼ + 188,48,36,35,59,38,1,253,0,0,0,0,0,0,0,7,192,0,0,0,0,0,0,1,11,224,0,0,0,0,0,0,15,195,240,0,0,31,240,0,0,11,209,248,0,0,31,240,0,0,3,240,253,0,0,31,224,0,0,2,244,120,0,0,31,224,0,0,0,252,0,0,0,31,224,0,0,0,96,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,1,180,0,0,0,31,224,0,1,191,254,0,0,0,31,224,6,255,255,255,64,0,0,31,251,255,255,255,255,0,0,0,111,255,255,255,255,252,0,5,191,255,255,255,249,11,248,0,127,255,255,255,228,0,15,240,0,63,255,255,244,0,0,63,208,0,63,254,175,224,0,0,191,192,0,62,64,31,224,0,0,255,0,0,0,0,31,224,0,3,254,0,0,0,0,31,224,0,15,252,0,0,0,0,31,224,0,47,240,0,0,0,0,31,224,0,127,208,0,0,0,0,31,224,0,11,64,0,0,0,0,31,224,0,1,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,253,0,0,90,248,0,0,0,15,255,255,255,255,248,0,0,0,7,255,255,255,255,248,0,0,0,1,255,255,255,255,248,0,0,0,0,6,170,170,149,0,0, + // 0x30bd ソ + 189,48,29,30,240,38,4,254,0,0,0,0,0,0,64,0,7,64,0,0,0,0,255,128,127,192,0,0,0,0,255,64,127,224,0,0,0,1,255,0,47,244,0,0,0,1,255,0,15,252,0,0,0,2,254,0,7,253,0,0,0,3,253,0,3,255,0,0,0,3,252,0,1,255,128,0,0,7,252,0,0,255,192,0,0,15,248,0,0,63,240,0,0,15,244,0,0,47,244,0,0,47,240,0,0,15,208,0,0,63,224,0,0,10,0,0,0,127,192,0,0,0,0,0,0,255,128,0,0,0,0,0,2,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,15,252,0,0,0,0,0,0,63,244,0,0,0,0,0,0,191,224,0,0,0,0,0,2,255,192,0,0,0,0,0,11,255,0,0,0,0,0,0,47,253,0,0,0,0,0,1,255,244,0,0,0,0,0,11,255,208,0,0,0,0,0,127,255,64,0,0,0,0,7,255,252,0,0,0,0,0,11,255,224,0,0,0,0,0,1,254,0,0,0,0,0,0,0,116,0,0,0,0,0, + // 0x30be ゾ + 190,48,32,35,24,38,4,253,0,0,0,0,0,0,0,160,0,0,0,0,0,1,131,240,0,0,0,0,0,15,193,252,0,0,0,0,0,7,240,189,0,0,0,0,0,3,244,63,0,0,0,0,0,0,252,45,11,0,0,0,0,0,184,0,191,128,0,0,0,2,144,0,255,192,0,0,0,3,254,0,127,224,0,0,0,3,253,0,47,244,0,0,0,7,252,0,15,252,0,0,0,11,252,0,7,253,0,0,0,15,248,0,3,255,0,0,0,15,240,0,1,255,128,0,0,31,240,0,0,255,192,0,0,63,224,0,0,63,224,0,0,63,208,0,0,47,64,0,0,191,192,0,0,8,0,0,0,255,64,0,0,0,0,0,2,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,15,252,0,0,0,0,0,0,47,244,0,0,0,0,0,0,127,240,0,0,0,0,0,1,255,192,0,0,0,0,0,7,255,64,0,0,0,0,0,31,254,0,0,0,0,0,0,191,248,0,0,0,0,0,3,255,224,0,0,0,0,0,31,255,128,0,0,0,0,1,255,253,0,0,0,0,0,31,255,240,0,0,0,0,0,15,255,128,0,0,0,0,0,3,253,0,0,0,0,0,0,0,144,0,0,0,0,0, + // 0x30bf タ + 191,48,31,34,16,38,3,253,0,0,0,46,64,0,0,0,0,0,0,63,224,0,0,0,0,0,0,127,192,0,0,0,0,0,0,255,128,0,0,0,0,0,2,255,0,0,0,0,0,0,3,255,85,85,90,0,0,0,15,255,255,255,255,224,0,0,47,255,255,255,255,244,0,0,127,255,255,255,255,240,0,0,255,192,0,0,63,224,0,3,255,0,0,0,127,192,0,15,253,0,0,0,191,192,0,63,244,0,0,0,255,64,0,255,224,0,0,1,255,0,3,255,128,176,0,3,254,0,31,254,2,254,0,11,252,0,191,244,7,255,192,15,248,0,63,208,1,255,248,63,240,0,11,0,0,63,255,191,208,0,0,0,0,7,255,255,192,0,0,0,0,0,255,255,0,0,0,0,0,0,47,255,64,0,0,0,0,0,47,255,224,0,0,0,0,0,191,255,248,0,0,0,0,2,255,239,254,0,0,0,0,15,255,11,252,0,0,0,0,127,252,1,244,0,0,0,3,255,240,0,80,0,0,0,47,255,128,0,0,0,0,6,255,253,0,0,0,0,0,191,255,224,0,0,0,0,0,191,255,64,0,0,0,0,0,47,244,0,0,0,0,0,0,6,64,0,0,0,0,0, + // 0x30c0 ダ + 192,48,35,37,77,38,2,252,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,47,64,0,0,0,0,0,0,10,15,192,0,0,0,63,128,0,63,11,224,0,0,0,127,208,0,31,195,240,0,0,0,255,192,0,11,209,244,0,0,1,255,64,0,3,240,64,0,0,3,254,0,0,3,224,0,0,0,11,255,255,255,255,192,0,0,0,15,255,255,255,255,244,0,0,0,63,255,255,255,255,240,0,0,0,191,213,85,85,127,224,0,0,2,255,64,0,0,63,192,0,0,7,254,0,0,0,191,192,0,0,31,252,0,0,0,255,128,0,0,127,240,0,0,1,255,0,0,2,255,192,0,0,3,254,0,0,11,255,0,248,0,7,253,0,0,63,252,3,255,64,15,248,0,0,191,240,7,255,224,31,240,0,0,31,128,0,191,252,63,224,0,0,5,0,0,31,255,255,192,0,0,0,0,0,3,255,255,64,0,0,0,0,0,0,191,255,0,0,0,0,0,0,0,47,255,128,0,0,0,0,0,0,63,255,240,0,0,0,0,0,0,255,255,252,0,0,0,0,0,7,255,175,254,0,0,0,0,0,47,254,7,252,0,0,0,0,0,255,248,0,240,0,0,0,0,11,255,208,0,0,0,0,0,0,127,255,64,0,0,0,0,0,7,255,252,0,0,0,0,0,0,191,255,208,0,0,0,0,0,0,191,254,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0, + // 0x30c1 チ + 193,48,32,32,0,38,3,253,0,0,0,0,0,6,244,0,0,0,0,0,22,255,252,0,1,85,90,175,255,255,254,0,2,255,255,255,255,255,249,0,1,255,255,255,255,228,0,0,0,255,255,239,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,175,254,170,170,170,0,0,0,11,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,47,224,0,0,0,0,0,0,63,208,0,0,0,0,0,0,191,192,0,0,0,0,0,0,255,128,0,0,0,0,0,3,255,0,0,0,0,0,0,11,253,0,0,0,0,0,0,63,248,0,0,0,0,0,1,255,240,0,0,0,0,0,11,255,192,0,0,0,0,0,31,255,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,64,0,0,0,0,0, + // 0x30c2 ヂ + 194,48,34,33,41,38,2,252,0,0,0,0,0,0,176,0,0,0,0,0,0,0,111,248,0,0,0,0,0,22,191,255,253,0,0,2,255,255,255,255,255,254,0,0,1,255,255,255,255,254,64,31,0,0,255,255,255,253,0,5,31,128,0,165,84,7,248,0,63,11,192,0,0,0,7,248,0,31,131,240,0,0,0,7,248,0,11,194,240,0,0,0,7,248,0,3,224,64,0,0,0,7,248,0,2,208,0,0,0,0,7,248,0,0,0,0,170,170,170,171,254,170,170,170,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,2,255,64,0,0,0,0,0,0,7,254,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,191,244,0,0,0,0,0,0,7,255,208,0,0,0,0,0,0,47,255,64,0,0,0,0,0,0,11,253,0,0,0,0,0,0,0,1,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30c3 ッ + 195,48,27,25,175,38,6,252,0,0,11,192,0,0,0,0,0,47,208,0,11,144,31,64,15,240,0,15,244,127,128,15,240,0,15,240,63,192,7,248,0,31,240,47,224,3,252,0,47,224,15,240,2,253,0,63,192,11,244,1,254,0,63,192,7,248,0,228,0,191,128,3,252,0,0,0,255,0,2,248,0,0,2,254,0,0,64,0,0,3,252,0,0,0,0,0,15,248,0,0,0,0,0,31,240,0,0,0,0,0,127,208,0,0,0,0,1,255,128,0,0,0,0,7,255,0,0,0,0,0,47,252,0,0,0,0,0,255,240,0,0,0,0,11,255,192,0,0,0,0,191,254,0,0,0,0,31,255,248,0,0,0,0,31,255,192,0,0,0,0,7,253,0,0,0,0,0,1,208,0,0,0,0, + // 0x30c4 ツ + 196,48,32,31,248,38,3,254,0,0,0,4,0,0,0,0,0,0,1,252,0,0,0,0,0,0,3,253,0,0,3,144,27,64,1,255,0,0,3,254,191,192,0,255,64,0,7,253,63,192,0,191,128,0,7,252,47,224,0,63,192,0,11,248,31,240,0,63,208,0,15,244,15,244,0,31,240,0,31,240,7,252,0,15,240,0,47,240,3,253,0,11,240,0,63,208,2,254,0,6,64,0,127,192,1,255,0,0,0,0,255,128,0,254,0,0,0,0,255,0,0,80,0,0,0,2,254,0,0,0,0,0,0,7,252,0,0,0,0,0,0,15,248,0,0,0,0,0,0,47,240,0,0,0,0,0,0,191,208,0,0,0,0,0,1,255,192,0,0,0,0,0,7,255,0,0,0,0,0,0,31,252,0,0,0,0,0,0,191,244,0,0,0,0,0,3,255,208,0,0,0,0,0,47,255,64,0,0,0,0,1,255,252,0,0,0,0,0,47,255,240,0,0,0,0,7,255,255,64,0,0,0,0,3,255,248,0,0,0,0,0,0,255,144,0,0,0,0,0,0,56,0,0,0,0,0, + // 0x30c5 ヅ + 197,48,34,35,59,38,3,253,0,0,0,0,0,0,0,108,0,0,0,0,0,0,0,176,190,0,0,0,0,0,0,2,248,63,64,0,0,0,0,0,0,252,31,192,0,0,0,16,0,0,127,11,208,0,0,6,244,0,0,63,67,64,0,0,7,252,0,0,30,0,0,46,0,3,252,0,0,0,0,0,255,0,2,254,0,0,14,64,0,255,128,0,255,0,0,15,244,0,127,192,0,255,64,0,31,240,0,63,208,0,127,128,0,47,240,0,47,240,0,63,192,0,63,208,0,15,240,0,47,208,0,63,192,0,11,248,0,31,224,0,191,192,0,7,252,0,9,0,0,255,64,0,3,253,0,0,0,1,255,0,0,2,253,0,0,0,3,254,0,0,0,64,0,0,0,7,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,127,224,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,15,253,0,0,0,0,0,0,0,63,244,0,0,0,0,0,0,1,255,224,0,0,0,0,0,0,11,255,128,0,0,0,0,0,0,127,254,0,0,0,0,0,0,7,255,244,0,0,0,0,0,0,127,255,208,0,0,0,0,0,11,255,254,0,0,0,0,0,0,11,255,244,0,0,0,0,0,0,2,255,64,0,0,0,0,0,0,0,180,0,0,0,0,0,0, + // 0x30c6 テ + 198,48,32,31,248,38,3,253,0,63,255,255,255,255,255,0,0,63,255,255,255,255,255,0,0,63,255,255,255,255,255,0,0,42,170,170,170,170,169,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,170,170,170,170,170,170,170,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,0,0,0,3,252,0,0,0,0,0,0,7,252,0,0,0,0,0,0,7,252,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,15,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,31,224,0,0,0,0,0,0,63,208,0,0,0,0,0,0,127,192,0,0,0,0,0,0,255,128,0,0,0,0,0,3,255,0,0,0,0,0,0,15,253,0,0,0,0,0,0,127,248,0,0,0,0,0,2,255,224,0,0,0,0,0,15,255,128,0,0,0,0,0,2,253,0,0,0,0,0,0,0,96,0,0,0,0,0, + // 0x30c7 デ + 199,48,34,37,77,38,3,252,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,45,31,128,0,0,0,0,0,0,63,15,208,0,0,0,0,0,0,47,131,240,0,191,255,255,255,255,207,194,240,0,191,255,255,255,255,199,224,64,0,191,255,255,255,255,195,144,0,0,106,170,170,170,170,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,254,0,255,255,255,255,255,255,255,254,0,255,255,255,255,255,255,255,254,0,234,170,170,175,254,170,170,169,0,0,0,0,11,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,1,255,64,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,15,253,0,0,0,0,0,0,0,127,248,0,0,0,0,0,0,2,255,224,0,0,0,0,0,0,31,255,128,0,0,0,0,0,0,15,253,0,0,0,0,0,0,0,2,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30c8 ト + 200,48,21,31,186,38,12,254,255,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,224,0,0,0,0,191,255,128,0,0,0,191,255,254,0,0,0,191,255,255,244,0,0,191,191,255,255,128,0,191,65,255,255,249,0,191,64,11,255,255,64,191,64,0,127,255,0,191,64,0,6,254,0,191,64,0,0,44,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,255,128,0,0,0,0, + // 0x30c9 ド + 201,48,23,32,192,38,11,253,85,0,0,0,9,0,255,64,0,0,63,0,255,64,0,40,47,192,255,64,0,253,15,208,255,64,0,127,7,240,255,64,0,47,130,244,255,64,0,15,192,128,255,64,0,11,224,0,255,64,0,2,64,0,255,64,0,0,0,0,255,64,0,0,0,0,255,248,0,0,0,0,255,255,224,0,0,0,255,255,255,64,0,0,255,255,255,249,0,0,255,95,255,255,208,0,255,64,191,255,254,0,255,64,6,255,255,0,255,64,0,47,254,0,255,64,0,1,252,0,255,64,0,0,24,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,170,64,0,0,0,0, + // 0x30ca ナ + 202,48,32,33,8,38,3,253,0,0,0,6,168,0,0,0,0,0,0,7,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,127,255,255,255,255,255,255,255,127,255,255,255,255,255,255,255,127,255,255,255,255,255,255,255,127,255,255,255,255,255,255,255,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,7,252,0,0,0,0,0,0,11,248,0,0,0,0,0,0,15,248,0,0,0,0,0,0,15,244,0,0,0,0,0,0,31,240,0,0,0,0,0,0,63,224,0,0,0,0,0,0,127,208,0,0,0,0,0,0,255,192,0,0,0,0,0,2,255,64,0,0,0,0,0,11,255,0,0,0,0,0,0,47,252,0,0,0,0,0,0,191,244,0,0,0,0,0,7,255,208,0,0,0,0,0,47,255,64,0,0,0,0,0,31,253,0,0,0,0,0,0,3,240,0,0,0,0,0,0,0,64,0,0,0,0,0, + // 0x30cb ニ + 203,48,31,25,200,38,3,0,1,255,255,255,255,255,254,0,1,255,255,255,255,255,254,0,1,255,255,255,255,255,254,0,1,255,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,0,0,0,0,0,0,84,191,255,255,255,255,255,255,252,191,255,255,255,255,255,255,252,191,255,255,255,255,255,255,252,191,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0x30cc ヌ + 204,48,27,30,210,38,5,253,15,234,170,170,170,191,128,15,255,255,255,255,255,240,15,255,255,255,255,255,244,15,255,255,255,255,255,240,0,0,0,0,0,63,208,0,0,0,0,0,127,192,0,0,0,0,0,191,192,0,0,0,0,0,255,64,0,0,0,0,1,255,0,0,46,0,0,3,254,0,0,191,208,0,7,252,0,0,255,252,0,15,248,0,0,47,255,128,31,240,0,0,7,255,240,63,224,0,0,0,127,254,191,192,0,0,0,15,255,255,128,0,0,0,2,255,255,0,0,0,0,0,127,254,0,0,0,0,0,63,255,192,0,0,0,1,255,255,244,0,0,0,7,255,255,254,0,0,0,47,254,15,255,128,0,0,255,248,2,255,240,0,11,255,224,0,191,244,0,191,255,64,0,31,224,11,255,252,0,0,7,192,255,255,224,0,0,1,0,191,254,0,0,0,0,0,47,244,0,0,0,0,0,10,0,0,0,0,0,0, + // 0x30cd ネ + 205,48,33,34,50,38,3,253,0,0,0,10,164,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,7,255,255,255,255,255,253,0,0,7,255,255,255,255,255,255,64,0,7,255,255,255,255,255,255,128,0,6,170,170,170,170,175,254,0,0,0,0,0,0,0,47,248,0,0,0,0,0,0,0,127,240,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,255,240,0,0,0,0,0,0,7,255,128,0,0,0,0,0,0,63,254,0,0,0,0,0,0,2,255,244,3,128,0,0,0,0,47,255,240,15,244,0,0,0,7,255,255,240,47,255,0,0,1,191,255,239,240,11,255,224,0,111,255,254,15,240,1,255,253,0,255,255,224,15,240,0,47,255,64,127,253,0,15,240,0,7,255,0,47,128,0,15,240,0,0,188,0,4,0,0,15,240,0,0,20,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,10,160,0,0,0,0, + // 0x30ce ノ + 206,48,26,30,210,38,5,254,0,0,0,0,0,41,0,0,0,0,0,0,63,240,0,0,0,0,0,127,208,0,0,0,0,0,191,192,0,0,0,0,0,255,192,0,0,0,0,0,255,64,0,0,0,0,2,255,0,0,0,0,0,3,254,0,0,0,0,0,7,252,0,0,0,0,0,15,252,0,0,0,0,0,31,244,0,0,0,0,0,47,240,0,0,0,0,0,127,208,0,0,0,0,0,255,192,0,0,0,0,2,255,64,0,0,0,0,7,255,0,0,0,0,0,15,252,0,0,0,0,0,63,244,0,0,0,0,0,255,224,0,0,0,0,3,255,192,0,0,0,0,15,255,0,0,0,0,0,127,252,0,0,0,0,2,255,240,0,0,0,0,31,255,192,0,0,0,1,255,254,0,0,0,0,31,255,244,0,0,0,0,255,255,192,0,0,0,0,63,254,0,0,0,0,0,15,224,0,0,0,0,0,2,0,0,0,0,0,0, + // 0x30cf ハ + 207,48,33,27,243,38,3,0,0,0,16,0,0,40,0,0,0,0,0,63,128,3,252,0,0,0,0,0,127,192,3,254,0,0,0,0,0,127,192,1,255,0,0,0,0,0,191,128,0,255,128,0,0,0,0,255,64,0,127,192,0,0,0,0,255,0,0,63,224,0,0,0,1,255,0,0,31,240,0,0,0,2,254,0,0,15,244,0,0,0,3,253,0,0,11,252,0,0,0,3,252,0,0,3,253,0,0,0,7,252,0,0,3,254,0,0,0,15,244,0,0,1,255,0,0,0,15,240,0,0,0,255,64,0,0,47,240,0,0,0,191,192,0,0,63,208,0,0,0,127,192,0,0,127,192,0,0,0,63,224,0,0,255,128,0,0,0,47,240,0,1,255,0,0,0,0,31,244,0,3,254,0,0,0,0,15,248,0,11,253,0,0,0,0,11,252,0,15,252,0,0,0,0,7,253,0,63,244,0,0,0,0,3,254,0,127,224,0,0,0,0,3,255,0,255,192,0,0,0,0,1,255,64,191,128,0,0,0,0,0,255,64,11,0,0,0,0,0,0,144,0, + // 0x30d0 バ + 208,48,35,32,32,38,2,255,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,31,128,0,0,0,0,0,0,47,15,208,0,0,0,0,0,0,47,131,240,0,0,0,0,0,0,15,194,244,0,0,0,0,0,24,7,224,224,0,0,47,208,2,254,3,240,0,0,0,47,224,1,255,1,128,0,0,0,63,208,0,255,128,0,0,0,0,63,192,0,127,192,0,0,0,0,127,192,0,63,224,0,0,0,0,191,128,0,31,240,0,0,0,0,255,64,0,15,248,0,0,0,0,255,0,0,11,252,0,0,0,1,255,0,0,3,253,0,0,0,2,254,0,0,2,255,0,0,0,3,253,0,0,1,255,0,0,0,7,252,0,0,0,255,128,0,0,11,248,0,0,0,127,192,0,0,15,244,0,0,0,63,208,0,0,31,240,0,0,0,63,240,0,0,63,224,0,0,0,31,240,0,0,127,192,0,0,0,15,244,0,0,255,128,0,0,0,15,252,0,1,255,64,0,0,0,7,252,0,3,255,0,0,0,0,3,253,0,11,253,0,0,0,0,3,255,0,15,252,0,0,0,0,2,255,0,63,244,0,0,0,0,0,255,64,191,224,0,0,0,0,0,255,192,127,192,0,0,0,0,0,191,128,6,64,0,0,0,0,0,100,0, + // 0x30d1 パ + 209,48,35,33,41,38,2,254,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,3,255,224,0,0,0,0,0,0,7,209,244,0,0,0,0,0,0,15,64,120,0,0,0,0,0,0,15,0,124,0,0,0,0,0,24,15,64,120,0,0,47,208,2,254,7,209,244,0,0,47,224,1,255,3,255,224,0,0,63,208,0,255,128,127,64,0,0,63,192,0,127,192,0,0,0,0,127,192,0,63,224,0,0,0,0,191,128,0,31,240,0,0,0,0,191,64,0,15,244,0,0,0,0,255,0,0,11,252,0,0,0,1,255,0,0,3,253,0,0,0,2,254,0,0,2,254,0,0,0,3,253,0,0,1,255,0,0,0,3,252,0,0,0,255,128,0,0,11,252,0,0,0,191,192,0,0,15,244,0,0,0,63,208,0,0,31,240,0,0,0,63,224,0,0,63,224,0,0,0,47,240,0,0,63,208,0,0,0,15,244,0,0,191,192,0,0,0,15,248,0,0,255,64,0,0,0,11,252,0,2,255,0,0,0,0,3,253,0,7,254,0,0,0,0,3,254,0,15,252,0,0,0,0,2,255,0,47,244,0,0,0,0,1,255,64,63,240,0,0,0,0,0,255,128,255,208,0,0,0,0,0,255,192,31,128,0,0,0,0,0,189,0,0,0,0,0,0,0,0,0,0, + // 0x30d2 ヒ + 210,48,25,31,217,38,8,255,85,64,0,0,0,0,0,255,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,184,0,191,64,0,0,7,252,0,191,64,0,1,191,253,0,191,64,0,47,255,254,0,191,64,27,255,255,208,0,191,70,255,255,249,0,0,191,255,255,255,64,0,0,191,255,255,208,0,0,0,191,255,228,0,0,0,0,191,249,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,128,0,0,0,0,0,127,228,0,0,1,107,128,63,255,255,255,255,255,128,47,255,255,255,255,255,128,11,255,255,255,255,255,128,0,107,255,255,254,165,0, + // 0x30d3 ビ + 211,48,29,34,16,38,6,254,0,0,0,0,0,0,36,0,0,0,0,0,0,0,252,0,0,0,0,0,0,180,190,0,106,128,0,0,1,252,63,0,127,192,0,0,0,189,31,128,63,192,0,0,0,63,15,192,63,192,0,0,0,47,129,0,63,192,0,0,0,15,64,0,63,192,0,0,0,4,0,0,63,192,0,0,0,124,0,0,63,192,0,0,7,252,0,0,63,192,0,1,191,254,0,0,63,192,0,47,255,254,0,0,63,192,27,255,255,224,0,0,63,198,255,255,253,0,0,0,63,255,255,255,128,0,0,0,63,255,255,224,0,0,0,0,63,255,244,0,0,0,0,0,63,249,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,244,0,0,0,91,208,0,47,255,255,255,255,255,208,0,15,255,255,255,255,255,208,0,3,255,255,255,255,255,208,0,0,107,255,255,255,169,64,0, + // 0x30d4 ピ + 212,48,30,33,8,38,6,254,0,0,0,0,0,1,253,0,0,0,0,0,0,11,255,128,42,128,0,0,0,31,71,208,127,192,0,0,0,61,1,224,63,192,0,0,0,60,0,240,63,192,0,0,0,61,1,224,63,192,0,0,0,31,71,208,63,192,0,0,0,15,255,128,63,192,0,0,0,125,253,0,63,192,0,0,7,252,0,0,63,192,0,0,191,254,0,0,63,192,0,31,255,255,0,0,63,192,11,255,255,224,0,0,63,198,255,255,253,0,0,0,63,255,255,255,128,0,0,0,63,255,255,228,0,0,0,0,63,255,248,0,0,0,0,0,63,249,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,244,0,0,0,91,208,0,47,255,255,255,255,255,208,0,15,255,255,255,255,255,208,0,3,255,255,255,255,255,208,0,0,107,255,255,255,169,64,0, + // 0x30d5 フ + 213,48,28,30,210,38,5,253,191,255,255,255,255,255,240,191,255,255,255,255,255,254,191,255,255,255,255,255,255,191,255,255,255,255,255,254,0,0,0,0,0,3,253,0,0,0,0,0,7,252,0,0,0,0,0,7,252,0,0,0,0,0,11,248,0,0,0,0,0,15,244,0,0,0,0,0,31,240,0,0,0,0,0,47,224,0,0,0,0,0,63,208,0,0,0,0,0,191,192,0,0,0,0,0,255,64,0,0,0,0,2,255,0,0,0,0,0,7,254,0,0,0,0,0,15,252,0,0,0,0,0,63,244,0,0,0,0,0,255,224,0,0,0,0,3,255,192,0,0,0,0,31,255,0,0,0,0,0,191,252,0,0,0,0,7,255,240,0,0,0,0,127,255,192,0,0,0,27,255,254,0,0,0,0,255,255,244,0,0,0,0,191,255,64,0,0,0,0,47,244,0,0,0,0,0,10,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x30d6 ブ + 214,48,33,36,68,38,4,253,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,129,248,0,0,0,0,0,0,11,208,252,0,0,0,0,0,0,3,240,127,0,0,0,0,0,0,2,248,63,64,0,0,0,0,0,0,252,31,128,0,0,0,0,0,0,190,9,0,191,255,255,255,255,255,248,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,11,252,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,7,254,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,63,244,0,0,0,0,0,0,0,255,224,0,0,0,0,0,0,7,255,128,0,0,0,0,0,0,31,255,0,0,0,0,0,0,0,255,252,0,0,0,0,0,0,11,255,224,0,0,0,0,0,1,191,255,128,0,0,0,0,0,111,255,253,0,0,0,0,0,0,255,255,224,0,0,0,0,0,0,63,254,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, + // 0x30d7 プ + 215,48,34,35,59,38,4,253,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,62,11,192,0,0,0,0,0,0,60,3,192,0,0,0,0,0,0,120,2,208,0,0,0,0,0,0,124,3,192,127,255,255,255,255,255,254,11,192,127,255,255,255,255,255,255,255,0,127,255,255,255,255,255,255,248,0,127,255,255,255,255,255,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,7,254,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,63,244,0,0,0,0,0,0,0,255,224,0,0,0,0,0,0,7,255,192,0,0,0,0,0,0,31,255,0,0,0,0,0,0,0,191,252,0,0,0,0,0,0,11,255,224,0,0,0,0,0,1,191,255,128,0,0,0,0,0,111,255,253,0,0,0,0,0,0,255,255,224,0,0,0,0,0,0,63,254,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, + // 0x30d8 ヘ + 216,48,34,24,216,38,2,0,0,0,0,189,0,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,63,255,252,0,0,0,0,0,0,191,255,255,0,0,0,0,0,1,255,130,255,192,0,0,0,0,7,254,0,191,240,0,0,0,0,15,252,0,47,252,0,0,0,0,63,240,0,15,254,0,0,0,0,255,208,0,3,255,128,0,0,2,255,128,0,0,255,224,0,0,11,255,0,0,0,63,248,0,0,47,252,0,0,0,31,253,0,0,191,244,0,0,0,7,255,64,0,63,224,0,0,0,2,255,208,0,15,192,0,0,0,0,191,240,0,7,64,0,0,0,0,63,252,0,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,1,255,240,0,0,0,0,0,0,0,127,224,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0, + // 0x30d9 ベ + 217,48,34,29,5,38,2,255,0,0,0,0,0,0,0,96,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,1,129,252,0,0,0,0,0,0,15,208,190,0,0,0,0,100,0,7,240,63,64,0,0,3,255,64,2,248,47,192,0,0,15,255,208,0,252,15,64,0,0,63,255,244,0,190,0,0,0,0,191,255,253,0,61,0,0,0,2,255,135,255,64,0,0,0,0,7,254,1,255,208,0,0,0,0,15,252,0,127,240,0,0,0,0,63,240,0,31,252,0,0,0,0,191,208,0,11,255,0,0,0,2,255,128,0,2,255,192,0,0,11,255,0,0,0,191,240,0,0,47,252,0,0,0,63,248,0,0,191,244,0,0,0,15,254,0,0,255,224,0,0,0,3,255,128,0,63,192,0,0,0,1,255,208,0,15,64,0,0,0,0,191,244,0,2,0,0,0,0,0,47,253,0,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,1,255,224,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,47,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0, + // 0x30da ペ + 218,48,34,29,5,38,2,255,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,191,252,0,0,0,0,0,0,1,248,126,0,0,0,0,0,0,3,224,15,0,0,0,0,184,0,3,192,15,64,0,0,3,255,64,3,192,15,64,0,0,15,255,208,3,208,15,0,0,0,63,255,244,1,244,127,0,0,0,191,255,253,0,191,252,0,0,2,255,135,255,64,31,224,0,0,7,254,1,255,208,0,0,0,0,15,252,0,127,240,0,0,0,0,63,240,0,31,252,0,0,0,0,191,208,0,11,255,0,0,0,2,255,128,0,2,255,192,0,0,11,255,0,0,0,191,240,0,0,47,252,0,0,0,63,248,0,0,191,244,0,0,0,15,254,0,0,255,224,0,0,0,3,255,128,0,63,192,0,0,0,1,255,208,0,15,64,0,0,0,0,191,244,0,2,0,0,0,0,0,47,253,0,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,1,255,224,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,47,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0, + // 0x30db ホ + 219,48,33,32,32,38,3,254,0,0,0,11,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,62,170,170,175,254,170,170,173,0,63,255,255,255,255,255,255,253,0,63,255,255,255,255,255,255,253,0,63,255,255,255,255,255,255,253,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,5,0,7,244,0,20,0,0,0,15,208,7,244,1,252,0,0,0,31,240,7,244,2,255,0,0,0,63,208,7,244,0,255,128,0,0,191,128,7,244,0,127,208,0,1,255,0,7,244,0,47,240,0,3,253,0,7,244,0,15,244,0,15,252,0,7,244,0,7,252,0,47,240,0,7,244,0,3,254,0,191,208,0,7,244,0,1,255,0,255,128,0,7,244,0,0,255,64,63,0,0,7,244,0,0,60,0,4,0,0,7,244,0,0,16,0,0,0,0,11,244,0,0,0,0,0,0,62,175,244,0,0,0,0,0,0,63,255,244,0,0,0,0,0,0,63,255,240,0,0,0,0,0,0,47,255,128,0,0,0,0, + // 0x30dc ボ + 220,48,35,34,50,38,2,253,0,0,0,0,0,0,0,47,0,0,0,0,2,168,0,125,31,128,0,0,0,3,252,0,63,11,208,0,0,0,3,252,0,47,131,240,0,0,0,3,252,0,15,194,244,0,0,0,3,252,0,7,224,128,0,0,0,3,252,0,2,64,0,0,0,0,3,252,0,0,0,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,26,170,170,171,254,170,170,170,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,3,64,3,252,0,44,0,0,0,11,244,3,252,1,255,0,0,0,31,240,3,252,0,255,128,0,0,63,208,3,252,0,127,192,0,0,191,192,3,252,0,47,240,0,1,255,0,3,252,0,15,244,0,3,254,0,3,252,0,7,252,0,15,252,0,3,252,0,3,254,0,47,240,0,3,252,0,1,255,0,191,224,0,3,252,0,0,191,192,127,192,0,3,252,0,0,63,64,15,0,0,3,252,0,0,40,0,0,0,0,3,252,0,0,0,0,0,0,16,7,252,0,0,0,0,0,0,47,255,252,0,0,0,0,0,0,47,255,248,0,0,0,0,0,0,47,255,240,0,0,0,0,0,0,5,170,64,0,0,0,0, + // 0x30dd ポ + 221,48,34,36,68,38,2,253,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,47,7,192,0,0,0,3,252,0,61,2,208,0,0,0,3,252,0,60,2,224,0,0,0,3,252,0,60,2,208,0,0,0,3,252,0,47,7,192,0,0,0,3,252,0,15,255,64,0,0,0,3,252,0,2,253,0,0,0,0,3,252,0,0,0,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,47,255,255,255,255,255,255,255,0,26,170,170,171,254,170,170,170,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,3,64,3,252,0,44,0,0,0,11,244,3,252,1,255,0,0,0,31,240,3,252,0,255,128,0,0,63,208,3,252,0,127,192,0,0,191,192,3,252,0,47,240,0,1,255,0,3,252,0,15,244,0,3,254,0,3,252,0,7,252,0,15,252,0,3,252,0,3,254,0,47,240,0,3,252,0,1,255,0,191,224,0,3,252,0,0,191,192,127,192,0,3,252,0,0,63,64,15,0,0,3,252,0,0,40,0,0,0,0,3,252,0,0,0,0,0,0,16,7,252,0,0,0,0,0,0,47,255,252,0,0,0,0,0,0,47,255,248,0,0,0,0,0,0,47,255,240,0,0,0,0,0,0,5,170,64,0,0,0,0, + // 0x30de マ + 222,48,33,30,14,38,3,253,0,0,0,0,0,0,0,16,0,127,255,255,255,255,255,255,248,0,127,255,255,255,255,255,255,255,0,127,255,255,255,255,255,255,255,64,127,170,170,170,170,170,175,254,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,191,224,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,15,253,0,0,0,0,64,0,0,47,248,0,0,0,2,224,0,0,191,240,0,0,0,15,252,0,2,255,192,0,0,0,31,255,0,11,255,0,0,0,0,3,255,208,47,252,0,0,0,0,0,191,244,255,240,0,0,0,0,0,47,255,255,192,0,0,0,0,0,11,255,255,0,0,0,0,0,0,1,255,252,0,0,0,0,0,0,0,127,248,0,0,0,0,0,0,0,31,253,0,0,0,0,0,0,0,7,255,64,0,0,0,0,0,0,2,255,208,0,0,0,0,0,0,0,191,240,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,0,248,0,0,0,0,0,0,0,0,80,0,0,0, + // 0x30df ミ + 223,48,25,31,217,38,6,254,0,126,64,0,0,0,0,0,191,255,144,0,0,0,0,255,255,255,228,0,0,1,191,255,255,255,228,0,0,0,111,255,255,255,128,0,0,0,91,255,255,128,0,0,0,0,27,255,64,0,0,0,0,0,47,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,144,0,0,0,0,0,7,255,228,0,0,0,0,15,255,255,249,0,0,0,15,255,255,255,248,0,0,0,27,255,255,255,224,0,0,0,22,255,255,244,0,0,0,0,6,255,240,0,0,0,0,0,27,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,57,64,0,0,0,0,0,127,254,64,0,0,0,0,255,255,255,144,0,0,0,255,255,255,255,128,0,0,6,191,255,255,254,64,0,0,1,191,255,255,253,0,0,0,0,191,255,255,0,0,0,0,1,191,253,0,0,0,0,0,1,252,0,0,0,0,0,0,0,0, + // 0x30e0 ム + 224,48,34,32,32,38,2,253,0,0,0,47,224,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,240,0,0,16,0,0,0,0,47,240,0,2,240,0,0,0,0,63,208,0,15,248,0,0,0,0,63,192,0,7,253,0,0,0,0,127,192,0,2,255,0,0,0,0,255,64,0,0,255,64,0,0,0,255,0,0,0,191,192,0,0,1,255,0,0,0,63,208,0,0,3,253,0,0,0,47,240,0,0,3,252,0,0,0,31,248,0,0,11,252,0,21,175,255,252,0,0,15,254,191,255,255,255,254,0,127,255,255,255,255,255,255,255,0,63,255,255,255,255,255,234,255,128,63,255,255,255,169,64,0,255,192,63,254,149,0,0,0,0,127,208,20,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,45,0,0,0,0,0,0,0,0,0,0, + // 0x30e1 メ + 225,48,30,31,248,38,4,254,0,0,0,0,0,2,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,11,252,0,0,0,0,0,0,15,244,0,0,0,0,0,0,31,240,0,0,0,0,0,0,63,224,0,0,10,0,0,0,63,208,0,0,47,208,0,0,191,192,0,0,127,248,0,0,255,64,0,0,47,255,64,2,255,0,0,0,7,255,224,3,253,0,0,0,0,191,252,11,252,0,0,0,0,31,255,95,244,0,0,0,0,3,255,255,224,0,0,0,0,0,191,255,192,0,0,0,0,0,31,255,128,0,0,0,0,0,7,255,208,0,0,0,0,0,15,255,248,0,0,0,0,0,63,255,254,0,0,0,0,0,255,215,255,192,0,0,0,3,255,129,255,240,0,0,0,15,254,0,127,252,0,0,0,127,248,0,15,255,0,0,2,255,224,0,3,255,192,0,15,255,128,0,0,255,208,0,127,254,0,0,0,127,128,7,255,244,0,0,0,30,0,63,255,192,0,0,0,4,0,127,254,0,0,0,0,0,0,31,224,0,0,0,0,0,0,3,64,0,0,0,0,0,0, + // 0x30e2 モ + 226,48,31,29,232,38,4,254,7,255,255,255,255,255,254,0,7,255,255,255,255,255,254,0,7,255,255,255,255,255,254,0,2,170,171,254,170,170,169,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,255,255,255,255,255,255,255,248,255,255,255,255,255,255,255,248,255,255,255,255,255,255,255,248,170,170,171,254,170,170,170,164,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,253,0,0,0,0,0,0,3,255,128,0,5,64,0,0,2,255,255,255,255,208,0,0,0,255,255,255,255,208,0,0,0,127,255,255,255,208,0,0,0,6,191,255,234,128, + // 0x30e3 ャ + 227,48,28,28,196,38,5,251,0,1,176,0,0,0,0,0,15,240,0,0,0,0,0,11,244,0,0,0,0,0,3,248,0,0,0,0,0,3,252,0,0,6,248,0,2,252,0,27,255,255,0,1,254,111,255,255,254,0,6,255,255,255,255,252,43,255,255,255,250,75,244,127,255,255,249,0,31,240,63,255,255,128,0,63,192,63,144,63,192,0,255,64,0,0,47,192,2,254,0,0,0,31,208,11,252,0,0,0,15,224,47,240,0,0,0,15,240,47,208,0,0,0,11,244,2,64,0,0,0,7,248,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,2,253,0,0,0,0,0,1,254,0,0,0,0,0,0,255,0,0,0,0,0,0,255,64,0,0,0,0,0,127,128,0,0,0,0,0,127,192,0,0,0,0,0,62,64,0,0,0,0,0,0,0,0,0, + // 0x30e4 ヤ + 228,48,33,33,41,38,2,253,0,0,109,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,0,255,0,0,0,0,4,0,0,0,191,128,0,0,6,254,0,0,0,127,192,0,91,255,255,192,0,0,63,193,175,255,255,255,128,0,0,63,255,255,255,255,255,0,0,27,255,255,255,255,147,254,0,191,255,255,255,254,64,11,252,0,191,255,255,249,0,0,31,240,0,127,255,239,244,0,0,63,224,0,63,144,11,248,0,0,255,192,0,0,0,3,252,0,2,255,0,0,0,0,3,253,0,11,253,0,0,0,0,2,254,0,47,248,0,0,0,0,1,255,0,191,224,0,0,0,0,0,255,0,127,192,0,0,0,0,0,255,64,7,0,0,0,0,0,0,191,128,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,1,64,0,0,0,0, + // 0x30e5 ュ + 229,48,28,20,140,38,5,255,0,255,255,255,255,244,0,0,255,255,255,255,252,0,0,255,255,255,255,252,0,0,170,170,170,175,252,0,0,0,0,0,7,252,0,0,0,0,0,7,248,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,31,240,0,0,0,0,0,31,224,0,0,0,0,0,47,208,0,0,0,0,0,47,208,0,0,0,0,0,63,192,0,127,255,255,255,255,255,254,127,255,255,255,255,255,254,127,255,255,255,255,255,254,106,170,170,170,170,170,169, + // 0x30e6 ユ + 230,48,32,26,208,38,3,0,0,255,255,255,255,255,208,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,248,0,0,0,0,0,0,15,248,0,0,0,0,0,0,15,244,0,0,0,0,0,0,15,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,47,224,0,0,0,0,0,0,47,224,0,0,0,0,0,0,63,208,0,0,0,0,0,0,63,208,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,191,128,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0, + // 0x30e7 ョ + 231,48,22,25,150,38,8,252,85,85,85,85,85,80,191,255,255,255,255,224,191,255,255,255,255,224,191,255,255,255,255,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,21,85,85,85,95,224,63,255,255,255,255,224,63,255,255,255,255,224,63,255,255,255,255,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,0,0,0,0,15,224,255,255,255,255,255,224,255,255,255,255,255,224,255,255,255,255,255,224,170,85,85,85,111,224,0,0,0,0,15,224,0,0,0,0,0,0, + // 0x30e8 ヨ + 232,48,27,29,203,38,5,254,42,170,170,170,170,170,168,63,255,255,255,255,255,252,63,255,255,255,255,255,252,63,255,255,255,255,255,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,10,170,170,170,170,171,252,11,255,255,255,255,255,252,11,255,255,255,255,255,252,11,255,255,255,255,255,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,126,170,170,170,170,175,252,127,255,255,255,255,255,252,127,255,255,255,255,255,252,127,255,255,255,255,255,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252, + // 0x30e9 ラ + 233,48,29,32,0,38,5,253,1,170,170,170,170,170,160,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,1,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,253,0,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,64,170,170,170,170,170,171,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,3,253,0,0,0,0,0,0,11,252,0,0,0,0,0,0,15,244,0,0,0,0,0,0,47,240,0,0,0,0,0,0,63,208,0,0,0,0,0,0,255,192,0,0,0,0,0,3,255,0,0,0,0,0,0,15,253,0,0,0,0,0,0,127,248,0,0,0,0,0,2,255,224,0,0,0,0,0,31,255,128,0,0,0,0,1,255,253,0,0,0,0,0,111,255,240,0,0,0,0,11,255,255,128,0,0,0,0,3,255,248,0,0,0,0,0,0,255,128,0,0,0,0,0,0,32,0,0,0,0,0, + // 0x30ea リ + 234,48,22,31,186,38,8,254,170,0,0,0,47,240,255,0,0,0,31,240,255,0,0,0,31,240,255,0,0,0,31,240,255,0,0,0,31,240,255,0,0,0,31,240,255,0,0,0,31,240,255,0,0,0,31,240,255,0,0,0,31,240,255,0,0,0,31,240,255,0,0,0,31,240,255,0,0,0,31,240,255,0,0,0,31,224,255,0,0,0,31,224,255,0,0,0,31,224,255,0,0,0,47,224,255,0,0,0,63,208,255,0,0,0,63,208,255,64,0,0,63,192,0,0,0,0,191,192,0,0,0,0,255,128,0,0,0,2,255,0,0,0,0,7,254,0,0,0,0,31,252,0,0,0,0,127,244,0,0,0,3,255,224,0,0,0,111,255,64,0,0,11,255,253,0,0,0,15,255,240,0,0,0,3,255,64,0,0,0,0,228,0,0,0, + // 0x30eb ル + 235,48,35,30,14,38,2,254,0,1,254,0,31,240,0,0,0,0,1,254,0,31,240,0,0,0,0,1,254,0,15,240,0,0,0,0,1,254,0,15,240,0,0,0,0,1,254,0,15,240,0,0,0,0,1,254,0,15,240,0,0,0,0,1,254,0,15,240,0,0,0,0,1,254,0,15,240,0,0,0,0,1,254,0,15,240,0,0,0,0,1,253,0,15,240,0,0,0,0,1,253,0,15,240,0,0,0,0,1,253,0,15,240,0,0,0,0,2,253,0,15,240,0,0,0,0,2,253,0,15,240,0,0,0,0,2,252,0,15,240,0,0,0,0,3,252,0,15,240,0,0,64,0,3,252,0,15,240,0,3,192,0,3,252,0,15,240,0,11,224,0,7,248,0,15,240,0,47,244,0,15,244,0,15,240,0,191,224,0,15,240,0,15,240,2,255,128,0,47,224,0,15,240,15,255,0,0,127,208,0,15,240,127,248,0,0,255,192,0,15,247,255,224,0,2,255,0,0,15,255,255,128,0,11,254,0,0,15,255,253,0,0,47,252,0,0,31,255,224,0,0,191,240,0,0,31,255,64,0,0,47,208,0,0,11,244,0,0,0,3,0,0,0,2,128,0,0,0, + // 0x30ec レ + 236,48,27,30,210,38,8,254,255,128,0,0,0,0,0,255,128,0,0,0,0,0,191,128,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,0,191,64,0,0,0,0,192,191,64,0,0,0,3,224,191,64,0,0,0,15,244,191,64,0,0,0,63,248,191,64,0,0,0,255,224,191,64,0,0,11,255,128,191,64,0,0,63,254,0,191,64,0,1,255,248,0,191,64,0,31,255,208,0,191,64,0,191,254,0,0,191,64,11,255,244,0,0,191,65,255,255,128,0,0,191,175,255,248,0,0,0,191,255,255,128,0,0,0,255,255,249,0,0,0,0,191,255,64,0,0,0,0,47,224,0,0,0,0,0,5,0,0,0,0,0,0, + // 0x30ed ロ + 237,48,28,28,196,38,5,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,255,255,255,255,255,255,64,0,0,0,0,255,255,64,0,0,0,0,255,0,0,0,0,0,0,0, + // 0x30ee ヮ + 238,48,25,26,182,38,7,251,149,85,85,85,85,168,0,255,255,255,255,255,255,64,255,255,255,255,255,255,128,255,255,255,255,255,255,64,255,0,0,0,0,255,0,255,0,0,0,0,255,0,255,0,0,0,1,255,0,255,0,0,0,1,254,0,255,0,0,0,2,253,0,255,0,0,0,3,252,0,255,0,0,0,7,252,0,255,0,0,0,11,248,0,0,0,0,0,15,240,0,0,0,0,0,47,240,0,0,0,0,0,127,208,0,0,0,0,0,255,128,0,0,0,0,3,255,0,0,0,0,0,15,253,0,0,0,0,0,127,244,0,0,0,0,2,255,224,0,0,0,0,47,255,64,0,0,0,7,255,253,0,0,0,0,31,255,224,0,0,0,0,7,255,64,0,0,0,0,1,244,0,0,0,0,0,0,0,0,0,0,0, + // 0x30ef ワ + 239,48,30,30,240,38,4,253,126,170,170,170,170,170,254,0,127,255,255,255,255,255,255,192,63,255,255,255,255,255,255,224,63,255,255,255,255,255,255,192,63,192,0,0,0,0,127,192,63,192,0,0,0,0,191,192,63,192,0,0,0,0,191,128,63,192,0,0,0,0,255,128,63,192,0,0,0,0,255,64,63,192,0,0,0,0,255,0,63,192,0,0,0,1,255,0,63,192,0,0,0,3,254,0,127,192,0,0,0,3,253,0,127,192,0,0,0,7,252,0,0,0,0,0,0,15,248,0,0,0,0,0,0,31,244,0,0,0,0,0,0,63,240,0,0,0,0,0,0,191,208,0,0,0,0,0,2,255,192,0,0,0,0,0,7,255,0,0,0,0,0,0,31,253,0,0,0,0,0,0,191,248,0,0,0,0,0,3,255,224,0,0,0,0,0,47,255,64,0,0,0,0,2,255,253,0,0,0,0,0,111,255,244,0,0,0,0,2,255,255,128,0,0,0,0,0,191,252,0,0,0,0,0,0,47,128,0,0,0,0,0,0,4,0,0,0,0,0, + // 0x30f0 ヰ + 240,48,32,33,8,38,3,253,0,0,0,0,0,85,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,26,170,170,170,170,255,170,168,31,255,255,255,255,255,255,252,31,255,255,255,255,255,255,252,31,255,255,255,255,255,255,252,0,0,255,0,0,255,0,0,0,0,255,0,0,255,0,0,0,0,255,0,0,255,0,0,0,0,255,0,0,255,0,0,0,0,255,0,0,255,0,0,0,0,255,0,0,255,0,0,0,0,255,0,0,255,0,0,0,0,255,0,0,255,0,0,0,0,255,0,0,255,0,0,0,0,255,0,0,255,0,0,186,170,255,170,170,255,170,175,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,85,0,0, + // 0x30f1 ヱ + 241,48,33,27,243,38,3,255,15,255,255,255,255,255,255,248,0,15,255,255,255,255,255,255,254,0,15,255,255,255,255,255,255,252,0,15,250,170,170,170,170,191,244,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,63,208,0,0,0,0,21,64,0,255,128,0,0,0,0,63,224,2,255,0,0,0,0,0,63,224,15,252,0,0,0,0,0,47,208,63,244,0,0,0,0,0,47,208,255,224,0,0,0,0,0,47,208,127,128,0,0,0,0,0,47,208,14,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0, + // 0x30f2 ヲ + 242,48,28,30,210,38,6,253,255,255,255,255,255,255,240,255,255,255,255,255,255,253,255,255,255,255,255,255,254,250,170,170,170,170,171,252,0,0,0,0,0,7,252,0,0,0,0,0,7,248,0,0,0,0,0,11,244,0,0,0,0,0,15,244,0,0,0,0,0,15,240,0,0,0,0,0,31,240,63,255,255,255,255,255,224,63,255,255,255,255,255,192,63,255,255,255,255,255,192,42,170,170,170,170,255,128,0,0,0,0,0,255,0,0,0,0,0,2,254,0,0,0,0,0,7,252,0,0,0,0,0,15,248,0,0,0,0,0,63,240,0,0,0,0,0,255,208,0,0,0,0,3,255,128,0,0,0,0,31,254,0,0,0,0,0,127,248,0,0,0,0,7,255,224,0,0,0,0,127,255,128,0,0,0,27,255,252,0,0,0,0,255,255,224,0,0,0,0,127,254,0,0,0,0,0,31,224,0,0,0,0,0,5,0,0,0,0,0, + // 0x30f3 ン + 243,48,30,30,240,38,5,254,2,128,0,0,0,0,0,0,11,240,0,0,0,0,0,0,31,253,0,0,0,0,0,0,31,255,64,0,0,0,0,0,3,255,224,0,0,0,0,0,0,191,252,0,0,0,0,0,0,31,255,0,0,0,1,64,0,7,255,192,0,0,3,192,0,0,255,192,0,0,11,224,0,0,63,0,0,0,15,240,0,0,12,0,0,0,63,240,0,0,0,0,0,0,191,208,0,0,0,0,0,1,255,128,0,0,0,0,0,7,255,0,0,0,0,0,0,31,253,0,0,0,0,0,0,127,244,0,0,0,0,0,1,255,224,0,0,0,0,0,11,255,128,0,0,0,0,0,63,254,0,0,0,0,0,1,255,248,0,0,0,0,0,11,255,208,0,0,0,0,0,191,255,0,0,0,0,0,11,255,248,0,0,0,0,1,255,255,208,0,0,0,1,191,255,254,0,0,0,0,191,255,255,224,0,0,0,0,127,255,254,0,0,0,0,0,47,255,144,0,0,0,0,0,15,228,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30f4 ヴ + 244,48,32,36,32,38,4,252,0,0,0,0,0,0,3,240,0,0,0,0,0,6,194,244,0,0,1,255,0,11,224,252,0,0,0,255,0,3,240,190,0,0,0,255,0,1,248,63,0,0,0,255,0,0,252,24,0,0,0,255,0,0,120,0,0,0,0,255,0,0,0,0,170,170,170,255,170,170,173,0,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,128,255,0,0,0,0,0,255,64,255,0,0,0,0,0,255,0,255,0,0,0,0,1,255,0,255,0,0,0,0,2,255,0,255,0,0,0,0,3,254,0,255,0,0,0,0,3,253,0,255,0,0,0,0,7,252,0,255,0,0,0,0,15,248,0,255,0,0,0,0,15,244,0,0,0,0,0,0,47,240,0,0,0,0,0,0,127,208,0,0,0,0,0,0,255,192,0,0,0,0,0,3,255,64,0,0,0,0,0,11,254,0,0,0,0,0,0,63,252,0,0,0,0,0,0,255,240,0,0,0,0,0,11,255,192,0,0,0,0,0,191,255,0,0,0,0,0,27,255,252,0,0,0,0,3,255,255,208,0,0,0,0,2,255,254,0,0,0,0,0,0,191,224,0,0,0,0,0,0,61,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30f5 ヵ + 245,48,25,28,196,38,6,252,0,0,5,64,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,208,0,0,0,0,0,31,192,0,0,0,41,85,111,229,85,100,0,127,255,255,255,255,255,64,127,255,255,255,255,255,64,127,255,255,255,255,255,64,0,0,63,192,0,63,64,0,0,63,128,0,63,64,0,0,63,64,0,127,64,0,0,127,0,0,127,0,0,0,191,0,0,127,0,0,0,254,0,0,127,0,0,1,253,0,0,191,0,0,3,252,0,0,191,0,0,11,248,0,0,255,0,0,15,240,0,0,254,0,0,63,224,0,0,254,0,0,191,192,0,1,253,0,2,255,0,0,2,252,0,15,253,0,58,155,252,0,191,248,0,63,255,248,0,127,224,0,63,255,240,0,15,64,0,47,255,128,0,0,0,0,0,0,0,0, + // 0x30f6 ヶ + 246,48,28,28,196,38,5,251,0,2,232,0,0,0,0,0,2,254,0,0,0,0,0,3,252,0,0,0,0,0,7,252,0,0,0,0,0,11,244,0,0,0,0,0,15,240,0,0,0,0,0,47,255,255,255,255,254,0,63,255,255,255,255,254,0,191,255,255,255,255,254,1,255,85,86,254,85,85,3,253,0,2,252,0,0,15,248,0,2,252,0,0,63,240,0,3,252,0,0,255,192,0,3,248,0,0,255,64,0,7,248,0,0,29,0,0,15,244,0,0,0,0,0,15,240,0,0,0,0,0,47,208,0,0,0,0,0,63,192,0,0,0,0,0,255,128,0,0,0,0,2,255,0,0,0,0,0,11,253,0,0,0,0,0,47,248,0,0,0,0,0,255,240,0,0,0,0,11,255,192,0,0,0,0,3,255,0,0,0,0,0,0,184,0,0,0,0,0,0,0,0,0,0,0, + // 0x30f7 ヷ + 247,48,32,37,40,38,4,252,0,0,0,0,0,0,0,144,0,0,0,0,0,6,67,240,0,0,0,0,0,31,194,248,0,0,0,0,0,15,208,252,0,0,0,0,0,3,240,190,0,0,0,0,0,2,244,36,0,0,0,0,0,0,128,0,250,170,170,170,170,170,248,0,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,64,255,0,0,0,0,0,255,0,255,0,0,0,0,1,255,0,255,0,0,0,0,1,255,0,255,0,0,0,0,2,254,0,255,0,0,0,0,3,254,0,255,0,0,0,0,3,253,0,255,0,0,0,0,7,252,0,255,0,0,0,0,11,252,0,255,0,0,0,0,15,248,0,255,0,0,0,0,31,240,0,0,0,0,0,0,47,240,0,0,0,0,0,0,63,208,0,0,0,0,0,0,191,192,0,0,0,0,0,2,255,64,0,0,0,0,0,7,255,0,0,0,0,0,0,15,253,0,0,0,0,0,0,127,244,0,0,0,0,0,1,255,224,0,0,0,0,0,11,255,192,0,0,0,0,0,127,254,0,0,0,0,0,7,255,248,0,0,0,0,1,191,255,208,0,0,0,0,7,255,254,0,0,0,0,0,1,255,244,0,0,0,0,0,0,191,64,0,0,0,0,0,0,16,0,0,0,0,0, + // 0x30f8 ヸ + 248,48,33,35,59,38,3,253,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,5,47,0,0,0,0,0,0,85,31,15,64,0,0,0,0,1,254,15,75,192,0,0,0,0,1,254,11,199,192,0,0,0,0,1,254,3,195,128,0,0,0,0,1,254,3,208,0,0,0,0,0,1,254,0,0,0,42,170,170,170,170,255,170,164,0,47,255,255,255,255,255,255,248,0,47,255,255,255,255,255,255,248,0,47,255,255,255,255,255,255,248,0,0,1,253,0,1,254,0,0,0,0,1,253,0,1,254,0,0,0,0,1,253,0,1,254,0,0,0,0,1,253,0,1,254,0,0,0,0,1,253,0,1,254,0,0,0,0,1,253,0,1,254,0,0,0,0,1,253,0,1,254,0,0,0,0,1,253,0,1,254,0,0,0,0,1,253,0,1,254,0,0,0,0,1,253,0,1,254,0,0,0,0,1,253,0,1,254,0,0,0,255,255,255,255,255,255,255,254,0,255,255,255,255,255,255,255,254,0,255,255,255,255,255,255,255,254,0,234,170,170,170,171,255,170,169,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,169,0,0,0, + // 0x30f9 ヹ + 249,48,34,34,50,38,2,254,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,184,63,64,0,0,0,0,0,0,252,15,192,0,0,0,0,0,0,127,15,208,0,0,0,0,0,0,63,7,208,0,0,0,0,0,0,31,64,0,0,0,0,0,0,0,4,16,0,7,255,255,255,255,255,255,252,0,7,255,255,255,255,255,255,255,0,7,255,255,255,255,255,255,254,0,7,250,170,170,170,170,175,252,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,47,240,0,0,0,0,5,80,0,127,192,0,0,0,0,31,240,1,255,64,0,0,0,0,15,240,7,254,0,0,0,0,0,15,240,31,252,0,0,0,0,0,15,240,127,240,0,0,0,0,0,15,240,63,192,0,0,0,0,0,15,240,11,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,127,255,255,255,255,255,255,255,192,127,255,255,255,255,255,255,255,192,127,255,255,255,255,255,255,255,192,127,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0, + // 0x30fa ヺ + 250,48,32,37,40,38,4,252,0,0,0,0,0,0,0,144,0,0,0,0,0,6,67,240,0,0,0,0,0,31,194,248,0,0,0,0,0,15,208,252,0,0,0,0,0,7,240,190,0,0,0,0,0,3,244,36,0,0,0,0,0,1,144,0,191,255,255,255,255,255,248,0,191,255,255,255,255,255,255,0,191,255,255,255,255,255,255,0,126,170,170,170,170,171,255,0,0,0,0,0,0,2,254,0,0,0,0,0,0,3,253,0,0,0,0,0,0,3,252,0,0,0,0,0,0,7,252,0,0,0,0,0,0,11,248,0,0,0,0,0,0,15,244,0,47,255,255,255,255,255,240,0,47,255,255,255,255,255,240,0,47,255,255,255,255,255,224,0,26,170,170,170,170,191,192,0,0,0,0,0,0,191,192,0,0,0,0,0,0,255,64,0,0,0,0,0,2,255,0,0,0,0,0,0,11,253,0,0,0,0,0,0,31,248,0,0,0,0,0,0,63,240,0,0,0,0,0,1,255,192,0,0,0,0,0,11,255,64,0,0,0,0,0,47,253,0,0,0,0,0,2,255,244,0,0,0,0,0,31,255,208,0,0,0,0,6,255,254,0,0,0,0,0,127,255,244,0,0,0,0,0,63,255,128,0,0,0,0,0,15,248,0,0,0,0,0,0,2,64,0,0,0,0,0, + // 0x30fb ・ + 251,48,10,9,27,38,14,10,1,164,0,15,255,0,63,255,192,63,255,192,127,255,208,63,255,192,63,255,192,31,255,0,2,248,0, + // 0x30fc ー + 252,48,32,6,48,38,3,11,21,85,85,85,85,85,85,84,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,0,0,0,0,0,0,0,0, + // 0x30fd ヽ + 253,48,18,19,95,38,11,3,10,0,0,0,0,63,128,0,0,0,255,224,0,0,0,127,248,0,0,0,31,254,0,0,0,7,255,128,0,0,1,255,224,0,0,0,127,248,0,0,0,31,254,0,0,0,7,255,64,0,0,1,255,208,0,0,0,191,240,0,0,0,47,252,0,0,0,15,255,0,0,0,3,255,128,0,0,1,255,208,0,0,0,191,208,0,0,0,63,0,0,0,0,8,0, + // 0x30fe ヾ + 254,48,21,24,144,38,10,3,0,0,0,2,240,0,0,0,1,66,248,0,0,0,15,192,252,0,0,0,11,240,127,0,0,0,3,244,63,64,5,0,1,252,31,64,47,128,0,254,4,0,255,224,0,56,0,0,191,248,0,0,0,0,31,254,0,0,0,0,7,255,128,0,0,0,1,255,224,0,0,0,0,127,248,0,0,0,0,31,253,0,0,0,0,7,255,64,0,0,0,2,255,208,0,0,0,0,191,240,0,0,0,0,63,252,0,0,0,0,15,255,0,0,0,0,3,255,128,0,0,0,1,255,208,0,0,0,0,191,208,0,0,0,0,63,0,0,0,0,0,8,0,0, + // 0x30ff ヿ + 255,48,23,33,198,38,7,253,106,170,170,170,170,168,191,255,255,255,255,252,191,255,255,255,255,252,191,255,255,255,255,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252, + // 0x4eee 仮 + 238,78,36,36,68,38,1,252,0,0,36,0,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,255,15,255,255,255,255,248,0,1,254,15,255,255,255,255,248,0,2,252,15,255,255,255,255,248,0,7,248,15,245,85,85,85,80,0,15,240,15,224,0,0,0,0,0,31,224,15,224,0,0,0,0,0,63,192,15,224,0,0,0,0,0,255,192,15,224,0,0,0,0,2,255,192,15,224,0,0,0,0,7,255,192,15,224,0,0,0,0,15,255,192,15,255,255,255,255,224,63,255,192,15,255,255,255,255,240,255,239,192,15,255,255,255,255,240,191,111,192,15,255,213,85,95,224,61,47,192,15,255,208,0,31,208,40,47,192,15,239,224,0,47,192,0,47,192,15,231,240,0,63,128,0,47,192,15,211,244,0,127,64,0,47,192,15,210,252,0,191,0,0,47,192,15,208,254,1,254,0,0,47,192,31,192,255,3,252,0,0,47,192,31,192,63,135,248,0,0,47,192,47,192,47,223,240,0,0,47,192,63,128,15,255,208,0,0,47,192,63,128,7,255,192,0,0,47,192,127,0,3,255,64,0,0,47,192,191,0,7,255,192,0,0,47,192,254,0,47,255,244,0,0,47,193,253,0,255,239,254,0,0,47,195,252,11,255,131,255,208,0,47,199,248,127,253,0,255,253,0,47,207,240,191,244,0,47,253,0,47,195,224,63,128,0,2,248,0,31,128,128,24,0,0,0,96, + // 0x540d 名 + 13,84,33,36,68,38,1,252,0,0,0,122,64,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,15,255,255,255,248,0,0,0,0,63,255,255,255,254,0,0,0,0,255,255,255,255,252,0,0,0,3,255,64,0,7,248,0,0,0,15,252,0,0,15,240,0,0,0,127,244,0,0,47,224,0,0,2,255,253,0,0,63,192,0,0,31,255,255,128,0,255,64,0,0,127,248,255,224,2,255,0,0,0,47,208,47,252,11,252,0,0,0,11,0,11,255,31,244,0,0,0,0,0,1,255,255,208,0,0,0,0,0,0,127,255,128,0,0,0,0,0,0,31,254,0,0,0,0,0,0,0,63,248,0,0,0,0,0,0,1,255,255,255,255,255,128,0,0,11,255,255,255,255,255,128,0,0,191,255,255,255,255,255,128,0,11,255,252,0,0,0,63,128,0,191,255,248,0,0,0,63,128,31,255,247,248,0,0,0,63,128,127,255,67,248,0,0,0,63,128,47,248,3,248,0,0,0,63,128,14,64,3,248,0,0,0,63,128,0,0,3,248,0,0,0,63,128,0,0,3,248,0,0,0,63,128,0,0,3,248,0,0,0,63,128,0,0,3,255,255,255,255,255,128,0,0,3,255,255,255,255,255,128,0,0,3,255,255,255,255,255,128,0,0,3,252,0,0,0,63,128,0,0,2,248,0,0,0,63,128, + // 0x5b9a 定 + 154,91,35,37,77,38,1,251,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,5,85,85,85,255,85,85,85,80,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,224,0,0,0,0,0,11,240,15,224,0,0,0,0,0,11,240,15,224,0,0,0,0,0,11,240,15,224,0,0,0,0,0,11,240,15,226,255,255,255,255,255,139,240,5,66,255,255,255,255,255,133,80,0,2,255,255,255,255,255,128,0,0,1,85,85,255,85,85,64,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,2,164,0,255,0,0,0,0,0,3,248,0,255,0,0,0,0,0,3,244,0,255,0,0,0,0,0,7,244,0,255,255,255,248,0,0,11,240,0,255,255,255,248,0,0,15,240,0,255,255,255,248,0,0,15,244,0,255,85,85,80,0,0,31,252,0,255,0,0,0,0,0,63,253,0,255,0,0,0,0,0,63,255,0,255,0,0,0,0,0,191,191,192,255,0,0,0,0,0,255,31,244,255,0,0,0,0,3,253,11,255,255,0,0,0,0,11,252,2,255,255,64,0,0,0,47,244,0,191,255,255,255,255,252,127,224,0,11,255,255,255,255,248,47,192,0,0,127,255,255,255,244,11,0,0,0,0,85,85,85,80,0,0,0,0,0,0,0,0,0, + // 0x7247 片 + 71,114,32,37,40,38,2,251,0,0,0,0,7,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,234,170,170,170,170,170,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,0,0,0,0,0,0,0,191,170,170,170,170,168,0,0,191,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,254,0,0,0,3,252,0,1,254,0,0,0,3,252,0,2,253,0,0,0,3,252,0,3,252,0,0,0,3,252,0,7,252,0,0,0,3,252,0,11,244,0,0,0,3,252,0,15,240,0,0,0,3,252,0,47,224,0,0,0,3,252,0,127,192,0,0,0,3,252,0,255,128,0,0,0,3,252,0,255,0,0,0,0,3,252,0,61,0,0,0,0,3,252,0,24,0,0,0,0,3,252,0,0,0,0,0,0,0,0,0, + // 0x793a 示 + 58,121,34,33,41,38,2,252,1,255,255,255,255,255,255,240,0,1,255,255,255,255,255,255,240,0,1,255,255,255,255,255,255,240,0,0,85,85,85,85,85,85,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,85,85,85,87,253,85,85,85,80,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,15,128,3,252,0,29,0,0,0,31,240,3,252,0,255,0,0,0,47,208,3,252,0,191,128,0,0,63,192,3,252,0,63,208,0,0,191,128,3,252,0,31,240,0,1,255,0,3,252,0,11,248,0,3,253,0,3,252,0,3,252,0,11,252,0,3,252,0,2,254,0,31,244,0,3,252,0,0,255,0,63,224,0,3,252,0,0,191,128,255,192,0,3,252,0,0,63,192,255,0,0,3,252,0,0,47,208,45,0,0,3,252,0,0,30,0,0,0,63,255,252,0,0,0,0,0,0,63,255,248,0,0,0,0,0,0,31,255,240,0,0,0,0,0,0,10,169,0,0,0,0,0, + // 0x7fa9 義 + 169,127,35,36,68,38,2,252,0,0,40,0,0,3,144,0,0,0,1,254,0,0,7,248,0,0,0,0,255,0,0,15,240,0,0,0,0,63,128,0,47,192,0,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,10,170,170,171,254,170,170,170,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,170,170,171,254,170,170,160,0,0,0,0,3,248,0,0,0,0,191,255,255,255,255,255,255,255,224,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,25,0,0,16,0,0,0,5,175,255,15,224,62,0,0,63,255,255,255,139,224,255,224,0,47,234,255,144,7,240,47,253,0,0,0,253,0,7,240,2,253,0,0,0,253,0,3,240,0,36,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,170,170,255,170,171,254,170,170,160,0,0,253,0,0,253,1,224,0,0,0,253,1,80,255,7,252,0,90,175,255,255,224,191,95,240,0,255,255,255,255,224,63,255,192,0,191,255,254,84,0,47,255,0,64,16,0,253,0,0,127,248,1,224,0,0,253,0,7,255,253,1,244,0,0,253,1,191,255,255,151,240,2,171,253,15,255,224,191,255,240,2,255,252,11,254,0,31,255,208,1,255,224,3,128,0,1,255,64, + // 0x8868 表 + 104,136,36,36,68,38,1,252,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,127,255,255,255,255,255,255,0,0,127,255,255,255,255,255,255,0,0,127,255,255,255,255,255,254,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,47,255,255,255,255,255,255,255,244,47,255,255,255,255,255,255,255,244,47,255,255,255,255,255,255,255,244,0,0,0,47,255,240,0,0,0,0,0,1,255,199,240,0,10,0,0,0,11,255,3,248,0,47,192,0,0,191,244,2,252,0,255,208,0,11,255,192,0,254,7,255,0,1,255,255,192,0,191,47,248,0,111,255,255,192,0,127,255,208,0,127,254,47,192,0,47,254,0,0,31,224,47,192,0,15,244,0,0,9,0,47,192,0,7,252,0,0,0,0,47,192,0,18,255,64,0,0,0,47,192,27,240,255,208,0,0,0,47,239,255,240,63,252,0,0,0,127,255,255,240,15,255,128,0,111,255,255,249,0,2,255,253,0,191,255,249,0,0,0,127,252,0,63,249,0,0,0,0,11,244,0,41,0,0,0,0,0,0,96, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Korean_28.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Korean_28.cpp new file mode 100644 index 000000000000..462639e540a2 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Korean_28.cpp @@ -0,0 +1,252 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Korean 38pt, capital 'A' height: 28px, width: 100%, range: 0xac70-0xd788, glyphs: 110 +extern const uint8_t NotoSans_Medium_Korean_28[14631] = { + 162,28,112,172,136,215,37,246, // unifont_t + // 0xac70 거 + 112,172,29,36,32,35,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,47,255,255,255,192,0,191,64,47,255,255,255,192,0,191,64,47,255,255,255,192,0,191,64,0,0,0,63,192,0,191,64,0,0,0,63,192,0,191,64,0,0,0,63,192,0,191,64,0,0,0,127,128,0,191,64,0,0,0,127,64,0,191,64,0,0,0,191,0,0,191,64,0,0,0,255,0,0,191,64,0,0,1,254,0,0,191,64,0,0,3,253,63,255,255,64,0,0,7,252,63,255,255,64,0,0,15,244,63,255,255,64,0,0,47,240,0,0,191,64,0,0,127,208,0,0,191,64,0,0,255,128,0,0,191,64,0,3,255,0,0,0,191,64,0,31,252,0,0,0,191,64,0,127,240,0,0,0,191,64,3,255,208,0,0,0,191,64,47,255,0,0,0,0,191,64,255,248,0,0,0,0,191,64,191,208,0,0,0,0,191,64,62,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64, + // 0xace0 고 + 224,172,31,28,224,35,2,0,3,255,255,255,255,255,254,0,3,255,255,255,255,255,254,0,3,255,255,255,255,255,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,253,0,0,0,0,0,0,2,253,0,0,0,0,84,0,2,253,0,0,0,2,253,0,2,252,0,0,0,2,253,0,3,252,0,0,0,2,253,0,3,252,0,0,0,2,253,0,3,252,0,0,0,2,253,0,3,252,0,0,0,2,253,0,7,248,0,0,0,2,253,0,11,244,0,0,0,2,253,0,6,244,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xadf8 그 + 248,173,31,27,216,35,2,1,3,255,255,255,255,255,252,0,3,255,255,255,255,255,252,0,3,255,255,255,255,255,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,244,0,0,0,0,0,0,11,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252, + // 0xae09 급 + 9,174,31,34,16,35,2,252,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,11,244,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,254,0,0,0,3,252,0,0,254,0,0,0,3,252,0,0,254,0,0,0,3,252,0,0,254,0,0,0,3,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,254,0,0,0,3,252,0,0,254,0,0,0,3,252,0,0,254,0,0,0,3,252,0,0,254,0,0,0,3,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0, + // 0xae30 기 + 48,174,28,36,252,35,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,15,255,255,255,240,0,191,15,255,255,255,240,0,191,15,255,255,255,240,0,191,0,0,0,15,240,0,191,0,0,0,15,240,0,191,0,0,0,15,224,0,191,0,0,0,31,208,0,191,0,0,0,47,208,0,191,0,0,0,63,192,0,191,0,0,0,127,128,0,191,0,0,0,191,64,0,191,0,0,0,255,0,0,191,0,0,3,254,0,0,191,0,0,7,252,0,0,191,0,0,15,248,0,0,191,0,0,63,240,0,0,191,0,0,255,192,0,0,191,0,3,255,64,0,0,191,0,15,254,0,0,0,191,0,127,248,0,0,0,191,2,255,224,0,0,0,191,47,255,64,0,0,0,191,191,252,0,0,0,0,191,63,224,0,0,0,0,191,30,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191, + // 0xae45 깅 + 69,174,29,36,32,35,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,15,255,255,255,240,0,255,0,15,255,255,255,224,0,255,0,15,255,255,255,224,0,255,0,0,0,0,47,224,0,255,0,0,0,0,47,192,0,255,0,0,0,0,63,192,0,255,0,0,0,0,127,128,0,255,0,0,0,0,255,0,0,255,0,0,0,1,254,0,0,255,0,0,0,7,252,0,0,255,0,0,0,31,244,0,0,255,0,0,0,127,224,0,0,255,0,0,2,255,128,0,0,255,0,0,47,254,0,0,0,255,0,2,255,244,0,0,0,255,0,127,255,192,0,0,0,255,0,127,253,0,0,0,0,255,0,63,208,0,0,0,0,255,0,24,0,0,0,0,0,106,0,0,0,2,191,255,228,0,0,0,0,127,255,255,255,128,0,0,2,255,255,255,255,244,0,0,11,255,144,0,127,252,0,0,31,244,0,0,3,254,0,0,47,208,0,0,0,255,0,0,63,192,0,0,0,191,64,0,63,192,0,0,0,191,0,0,47,208,0,0,0,255,0,0,31,248,0,0,7,254,0,0,11,255,148,5,191,252,0,0,2,255,255,255,255,240,0,0,0,127,255,255,255,64,0,0,0,1,191,255,164,0,0, + // 0xb044 끄 + 68,176,31,27,216,35,2,1,11,255,255,224,255,255,254,0,11,255,255,224,255,255,254,0,11,255,255,224,255,255,254,0,0,0,31,224,0,1,254,0,0,0,31,224,0,1,254,0,0,0,31,224,0,1,254,0,0,0,31,208,0,1,254,0,0,0,31,208,0,1,254,0,0,0,47,208,0,1,253,0,0,0,47,192,0,1,253,0,0,0,63,192,0,2,253,0,0,0,63,192,0,2,253,0,0,0,63,192,0,2,252,0,0,0,127,128,0,3,252,0,0,0,127,64,0,3,252,0,0,0,191,64,0,3,252,0,0,0,255,0,0,3,248,0,0,0,255,0,0,7,248,0,0,1,254,0,0,11,244,0,0,1,253,0,0,11,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252, + // 0xb0b4 내 + 180,176,28,36,252,35,3,252,0,0,0,0,0,0,21,0,0,0,0,42,0,191,0,0,0,0,127,64,191,0,0,0,0,127,64,191,21,0,0,0,127,64,191,191,64,0,0,127,64,191,191,64,0,0,127,64,191,191,64,0,0,127,64,191,191,64,0,0,127,64,191,191,64,0,0,127,64,191,191,64,0,0,127,64,191,191,64,0,0,127,64,191,191,64,0,0,127,64,191,191,64,0,0,127,64,191,191,64,0,0,127,64,191,191,64,0,0,127,255,255,191,64,0,0,127,255,255,191,64,0,0,127,255,255,191,64,0,0,127,64,191,191,64,0,0,127,64,191,191,64,0,0,127,64,191,191,64,0,0,127,64,191,191,64,0,16,127,64,191,191,150,175,248,127,64,191,191,255,255,248,127,64,191,191,255,255,252,127,64,191,191,255,233,64,127,64,191,0,0,0,0,127,64,191,0,0,0,0,127,64,191,0,0,0,0,127,64,191,0,0,0,0,127,64,191,0,0,0,0,127,64,191,0,0,0,0,127,64,191,0,0,0,0,127,64,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191, + // 0xb178 노 + 120,177,31,29,232,35,2,0,1,169,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,255,255,255,255,254,0,1,255,255,255,255,255,254,0,1,255,255,255,255,255,254,0,0,0,0,47,224,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xb204 누 + 4,178,31,34,16,35,2,252,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,255,255,255,255,255,254,0,0,255,255,255,255,255,254,0,0,255,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0, + // 0xb274 뉴 + 116,178,31,34,16,35,2,252,0,170,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,2,254,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0,0,1,253,0,2,253,0,0, + // 0xb2c8 니 + 200,178,27,36,252,35,4,252,0,0,0,0,0,1,80,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,254,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,0,0,11,244,255,0,0,1,172,11,244,255,86,171,255,253,11,244,255,255,255,255,254,11,244,255,255,255,255,249,11,244,255,255,234,80,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,240, + // 0xb2e4 다 + 228,178,31,36,32,35,3,252,0,0,0,0,0,5,64,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,191,255,255,255,0,31,208,0,191,255,255,255,0,31,208,0,191,255,255,255,0,31,208,0,191,64,0,0,0,31,208,0,191,0,0,0,0,31,208,0,191,0,0,0,0,31,208,0,191,0,0,0,0,31,208,0,191,0,0,0,0,31,208,0,191,0,0,0,0,31,208,0,191,0,0,0,0,31,208,0,191,0,0,0,0,31,255,252,191,0,0,0,0,31,255,252,191,0,0,0,0,31,255,252,191,0,0,0,0,31,224,0,191,0,0,0,0,31,208,0,191,0,0,0,0,31,208,0,191,0,0,0,0,31,208,0,191,0,0,0,0,31,208,0,191,0,0,0,0,31,208,0,191,0,1,91,252,31,208,0,191,255,255,255,252,31,208,0,191,255,255,255,252,31,208,0,191,255,255,250,80,31,208,0,21,80,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0, + // 0xb2f9 당 + 249,178,31,36,32,35,3,252,0,0,0,0,0,5,80,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,191,255,255,254,0,15,240,0,191,255,255,254,0,15,240,0,191,255,255,254,0,15,240,0,191,64,0,0,0,15,240,0,191,0,0,0,0,15,240,0,191,0,0,0,0,15,240,0,191,0,0,0,0,15,240,0,191,0,0,0,0,15,255,248,191,0,0,0,0,15,255,248,191,0,0,0,0,15,255,248,191,0,0,0,0,15,240,0,191,0,0,0,0,15,240,0,191,64,21,107,248,15,240,0,191,255,255,255,252,15,240,0,191,255,255,255,252,15,240,0,191,255,255,169,64,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,5,64,0,0,0,27,255,249,0,0,0,0,6,255,255,255,244,0,0,0,47,255,255,255,255,0,0,0,191,249,64,91,255,192,0,0,255,128,0,0,127,208,0,2,254,0,0,0,31,240,0,2,252,0,0,0,15,240,0,2,252,0,0,0,15,240,0,2,254,0,0,0,31,240,0,0,255,128,0,0,127,208,0,0,191,249,81,91,255,192,0,0,47,255,255,255,255,0,0,0,2,255,255,255,244,0,0,0,0,27,255,249,0,0,0, + // 0xb3c4 도 + 196,179,31,29,232,35,2,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,255,255,255,255,254,0,1,255,255,255,255,255,254,0,1,255,255,255,255,255,254,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xb3cc 돌 + 204,179,31,34,16,35,2,252,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,255,255,255,255,255,0,1,255,255,255,255,255,255,0,1,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0, + // 0xb3d9 동 + 217,179,31,34,16,35,2,252,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,47,224,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,255,254,144,0,0,0,2,255,255,255,254,0,0,0,31,255,255,255,255,208,0,0,127,249,0,1,191,240,0,0,255,128,0,0,15,248,0,1,255,0,0,0,3,252,0,1,254,0,0,0,3,252,0,1,255,0,0,0,3,252,0,0,255,128,0,0,15,248,0,0,127,249,0,1,191,240,0,0,31,255,255,255,255,208,0,0,2,255,255,255,254,0,0,0,0,26,255,254,144,0,0, + // 0xb418 되 + 24,180,28,36,252,35,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,11,255,255,255,255,0,255,11,255,255,255,255,0,255,11,255,255,255,255,0,255,11,244,0,0,0,0,255,11,244,0,0,0,0,255,11,244,0,0,0,0,255,11,244,0,0,0,0,255,11,244,0,0,0,0,255,11,244,0,0,0,0,255,11,244,0,0,0,0,255,11,244,0,0,0,0,255,11,244,0,0,0,0,255,11,255,255,255,255,0,255,11,255,255,255,255,0,255,11,255,255,255,255,0,255,0,0,47,192,0,0,255,0,0,47,192,0,0,255,0,0,47,192,0,0,255,0,0,47,192,0,0,255,0,0,47,192,0,0,255,0,0,47,213,106,176,255,255,255,255,255,255,244,255,191,255,255,255,255,244,255,191,255,255,255,165,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,191, + // 0xb41c 된 + 28,180,30,36,32,35,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,3,255,255,255,253,0,191,0,3,255,255,255,253,0,191,0,3,255,255,255,253,0,191,0,3,252,0,0,0,0,191,0,3,252,0,0,0,0,191,0,3,252,0,0,0,0,191,0,3,252,0,0,0,0,191,0,3,252,0,0,0,0,191,0,3,252,0,0,0,0,191,0,3,255,255,255,254,0,191,0,3,255,255,255,254,0,191,0,3,255,255,255,254,0,191,0,0,0,47,208,0,0,191,0,0,0,47,208,0,0,191,0,0,0,47,208,0,0,191,0,0,0,47,208,0,0,191,0,0,1,127,234,191,240,191,0,255,255,255,255,255,240,191,0,191,255,255,255,255,240,191,0,191,255,255,169,80,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,10,144,0,0,0,191,0,0,31,208,0,0,0,191,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,255,255,255,255,255,208,0,31,255,255,255,255,255,208,0,31,255,255,255,255,255,208,0,0,0,0,0,0,0,0, + // 0xb428 됨 + 40,180,29,35,24,35,2,252,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,3,255,255,255,254,0,191,64,3,255,255,255,254,0,191,64,3,255,255,255,254,0,191,64,3,252,0,0,0,0,191,64,3,252,0,0,0,0,191,64,3,252,0,0,0,0,191,64,3,252,0,0,0,0,191,64,3,252,0,0,0,0,191,64,3,255,255,255,255,0,191,64,3,255,255,255,255,0,191,64,3,255,255,255,255,0,191,64,0,0,47,208,0,0,191,64,0,0,47,208,0,0,191,64,0,0,47,208,0,0,191,64,0,0,47,234,191,240,191,64,255,255,255,255,255,240,191,64,191,255,255,255,255,224,191,64,127,255,254,169,64,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,255,64,0,31,255,255,255,255,255,64,0,31,255,255,255,255,255,64,0,31,208,0,0,0,191,64,0,31,208,0,0,0,191,64,0,31,208,0,0,0,191,64,0,31,208,0,0,0,191,64,0,31,208,0,0,0,191,64,0,31,255,255,255,255,255,64,0,31,255,255,255,255,255,64,0,31,255,255,255,255,255,64,0,0,0,0,0,0,0,0, + // 0xb4a4 뒤 + 164,180,29,35,24,35,2,252,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,3,255,255,255,253,0,191,64,3,255,255,255,253,0,191,64,3,255,255,255,253,0,191,64,3,252,0,0,0,0,191,64,3,252,0,0,0,0,191,64,3,252,0,0,0,0,191,64,3,252,0,0,0,0,191,64,3,252,0,0,0,0,191,64,3,252,0,0,0,0,191,64,3,255,255,255,255,0,191,64,3,255,255,255,255,0,191,64,3,255,255,255,255,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,21,107,244,191,64,255,255,255,255,255,244,191,64,255,255,255,255,255,244,191,64,255,255,255,254,165,0,191,64,0,0,63,192,0,0,191,64,0,0,63,192,0,0,191,64,0,0,63,192,0,0,191,64,0,0,63,192,0,0,191,64,0,0,63,192,0,0,191,64,0,0,63,192,0,0,191,64,0,0,63,192,0,0,191,64,0,0,63,192,0,0,191,64,0,0,63,192,0,0,191,64,0,0,63,192,0,0,191,64,0,0,63,192,0,0,191,64,0,0,42,128,0,0,191,64,0,0,0,0,0,0,191,64, + // 0xb4dc 드 + 220,180,31,28,224,35,2,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,255,255,255,255,254,0,1,255,255,255,255,255,254,0,1,255,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xb514 디 + 20,181,26,36,252,35,4,252,0,0,0,0,0,5,80,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,255,255,255,255,64,15,240,255,255,255,255,64,15,240,255,255,255,255,64,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,0,0,15,240,255,0,0,90,252,15,240,255,255,255,255,252,15,240,255,255,255,255,253,15,240,255,255,255,254,148,15,240,85,84,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,11,240, + // 0xb77c 라 + 124,183,31,36,32,35,3,252,0,0,0,0,0,5,64,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,255,255,255,255,0,31,224,0,255,255,255,255,0,31,224,0,255,255,255,255,0,31,224,0,0,0,0,255,0,31,224,0,0,0,0,255,0,31,224,0,0,0,0,255,0,31,224,0,0,0,0,255,0,31,224,0,0,0,0,255,0,31,224,0,0,0,0,255,0,31,224,0,0,0,0,255,0,31,224,0,191,255,255,255,0,31,255,252,191,255,255,255,0,31,255,252,191,255,255,255,0,31,255,252,191,0,0,0,0,31,229,80,191,0,0,0,0,31,224,0,191,0,0,0,0,31,224,0,191,0,0,0,0,31,224,0,191,0,0,0,0,31,224,0,191,0,0,0,0,31,224,0,191,0,0,90,252,31,224,0,191,255,255,255,252,31,224,0,191,255,255,255,253,31,224,0,191,255,255,250,80,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,208,0, + // 0xb7ec 러 + 236,183,28,36,252,35,3,252,0,0,0,0,0,0,84,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,255,255,255,253,0,2,253,255,255,255,253,0,2,253,255,255,255,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,0,0,1,253,0,2,253,255,255,255,253,0,2,253,255,255,255,253,47,255,253,255,255,255,253,47,255,253,255,0,0,0,47,255,253,255,0,0,0,0,2,253,255,0,0,0,0,2,253,255,0,0,0,0,2,253,255,0,0,0,0,2,253,255,0,0,0,0,2,253,255,0,0,0,0,2,253,255,0,1,106,240,2,253,255,255,255,255,240,2,253,255,255,255,255,244,2,253,255,255,255,234,80,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,1,253, + // 0xb808 레 + 8,184,28,36,252,35,3,252,0,0,0,0,0,0,85,0,0,0,0,31,192,191,0,0,0,0,31,192,191,0,0,0,0,31,192,191,255,255,255,0,31,192,191,255,255,255,0,31,192,191,255,255,255,0,31,192,191,0,0,191,0,31,192,191,0,0,191,0,31,192,191,0,0,191,0,31,192,191,0,0,191,0,31,192,191,0,0,191,0,31,192,191,0,0,191,0,31,192,191,0,0,191,31,255,192,191,255,255,255,31,255,192,191,255,255,255,31,255,192,191,255,255,255,0,47,192,191,254,0,0,0,31,192,191,254,0,0,0,31,192,191,254,0,0,0,31,192,191,254,0,0,0,31,192,191,254,0,0,0,31,192,191,254,0,0,0,31,192,191,255,0,22,184,31,192,191,255,255,255,252,31,192,191,255,255,255,252,31,192,191,255,255,254,164,31,192,191,0,0,0,0,31,192,191,0,0,0,0,31,192,191,0,0,0,0,31,192,191,0,0,0,0,31,192,191,0,0,0,0,31,192,191,0,0,0,0,31,192,191,0,0,0,0,31,192,191,0,0,0,0,0,0,191,0,0,0,0,0,0,127, + // 0xb825 력 + 37,184,28,36,252,35,3,252,0,0,0,0,0,0,84,0,0,0,0,0,2,253,0,0,0,0,0,2,253,255,255,255,252,0,2,253,255,255,255,252,0,2,253,255,255,255,252,0,2,253,0,0,3,252,47,255,253,0,0,3,252,47,255,253,0,0,3,252,47,255,253,0,0,3,252,0,2,253,191,255,255,252,0,2,253,191,255,255,252,0,2,253,191,255,255,252,0,2,253,191,0,0,0,47,255,253,191,0,0,0,47,255,253,191,0,0,0,47,255,253,191,0,0,0,0,2,253,191,64,21,175,192,2,253,191,255,255,255,192,2,253,191,255,255,255,192,2,253,191,255,255,165,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,0,84,0,0,0,0,0,0,0,0,255,255,255,255,255,253,0,255,255,255,255,255,253,0,255,255,255,255,255,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253, + // 0xb85c 로 + 92,184,31,29,232,35,2,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,255,255,255,255,255,0,1,255,255,255,255,255,255,0,1,255,255,255,255,255,255,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,224,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252, + // 0xb8cc 료 + 204,184,31,29,232,35,2,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,255,255,255,255,255,0,1,255,255,255,255,255,255,0,1,255,255,255,255,255,255,0,0,0,255,64,3,252,0,0,0,0,191,0,3,252,0,0,0,0,191,0,3,252,0,0,0,0,191,0,3,252,0,0,0,0,191,0,3,252,0,0,0,0,191,0,3,252,0,0,0,0,255,64,3,252,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252, + // 0xb974 르 + 116,185,31,29,232,35,2,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,0,0,0,0,0,2,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,255,255,255,255,255,253,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,255,255,255,255,255,0,1,255,255,255,255,255,255,0,1,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xb9ac 리 + 172,185,26,36,252,35,4,252,0,0,0,0,0,5,80,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,255,255,255,255,0,11,240,255,255,255,255,0,11,240,255,255,255,255,0,11,240,0,0,0,255,0,11,240,0,0,0,255,0,11,240,0,0,0,255,0,11,240,0,0,0,255,0,11,240,0,0,0,255,0,11,240,0,0,0,255,0,11,240,0,0,1,255,0,11,240,255,255,255,255,0,11,240,255,255,255,255,0,11,240,255,255,255,255,0,11,240,255,0,0,0,0,11,240,255,0,0,0,0,11,240,255,0,0,0,0,11,240,255,0,0,0,0,11,240,255,0,0,0,0,11,240,255,0,0,0,0,11,240,255,0,1,90,254,11,240,255,255,255,255,254,11,240,255,255,255,255,255,11,240,255,255,255,250,144,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240,0,0,0,0,0,11,240, + // 0xb9b0 린 + 176,185,28,36,252,35,3,252,0,0,0,0,0,1,84,0,0,0,0,0,2,252,0,0,0,0,0,2,252,127,255,255,255,64,2,252,127,255,255,255,64,2,252,127,255,255,255,64,2,252,0,0,0,191,64,2,252,0,0,0,191,64,2,252,0,0,0,191,64,2,252,0,0,0,191,64,2,252,0,0,0,191,64,2,252,127,255,255,255,64,2,252,127,255,255,255,64,2,252,127,255,255,255,64,2,252,127,128,0,0,0,2,252,127,128,0,0,0,2,252,127,128,0,0,0,2,252,127,128,0,0,0,2,252,127,128,21,107,255,2,252,127,255,255,255,255,2,252,127,255,255,255,255,2,252,127,255,255,233,64,2,252,0,0,0,0,0,2,252,0,0,0,0,0,2,252,0,21,0,0,0,2,252,0,127,64,0,0,2,252,0,127,64,0,0,2,168,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,127,64,0,0,0,0,0,127,255,255,255,255,255,0,127,255,255,255,255,255,0,127,255,255,255,255,255,0,0,0,0,0,0,0, + // 0xb9bd 립 + 189,185,27,36,252,35,3,252,0,0,0,0,0,1,168,0,0,0,0,0,2,252,127,255,255,255,64,2,252,127,255,255,255,64,2,252,127,255,255,255,64,2,252,0,0,0,191,64,2,252,0,0,0,191,64,2,252,0,0,0,191,64,2,252,0,0,0,191,64,2,252,127,255,255,255,64,2,252,127,255,255,255,64,2,252,127,255,255,255,64,2,252,127,128,0,0,0,2,252,127,128,0,0,0,2,252,127,128,0,0,0,2,252,127,128,0,22,191,2,252,127,255,255,255,255,2,252,127,255,255,255,255,2,252,127,255,255,254,148,2,252,0,0,0,0,0,2,252,0,0,0,0,0,0,0,0,42,64,0,0,1,168,0,127,128,0,0,2,252,0,127,128,0,0,2,252,0,127,128,0,0,2,252,0,127,255,255,255,255,252,0,127,255,255,255,255,252,0,127,255,255,255,255,252,0,127,128,0,0,2,252,0,127,128,0,0,2,252,0,127,128,0,0,2,252,0,127,128,0,0,2,252,0,127,255,255,255,255,252,0,127,255,255,255,255,252,0,127,255,255,255,255,252,0,0,0,0,0,0,0, + // 0xb9c1 링 + 193,185,28,36,252,35,3,252,0,0,0,0,0,0,84,0,0,0,0,0,2,252,0,0,0,0,0,2,252,127,255,255,255,64,2,252,127,255,255,255,64,2,252,127,255,255,255,64,2,252,0,0,0,191,64,2,252,0,0,0,191,64,2,252,0,0,0,191,64,2,252,0,0,0,191,64,2,252,127,255,255,255,64,2,252,127,255,255,255,64,2,252,127,255,255,255,64,2,252,127,128,0,0,0,2,252,127,128,0,0,0,2,252,127,128,0,0,0,2,252,127,128,0,22,191,2,252,127,255,255,255,255,2,252,127,255,255,255,255,2,252,127,255,255,254,148,2,252,0,0,0,0,0,2,252,0,0,0,0,0,2,252,0,0,0,0,0,0,0,0,0,10,255,255,144,0,0,1,255,255,255,254,0,0,15,255,255,255,255,224,0,63,254,64,1,191,244,0,127,208,0,0,11,252,0,191,64,0,0,2,253,0,191,0,0,0,2,253,0,191,64,0,0,3,253,0,127,208,0,0,11,252,0,63,254,80,5,191,244,0,11,255,255,255,255,208,0,1,255,255,255,254,0,0,0,6,255,254,144,0, + // 0xba48 멈 + 72,186,28,36,252,35,3,252,0,0,0,0,0,0,84,0,0,0,0,0,2,253,0,0,0,0,0,2,253,191,255,255,255,64,2,253,191,255,255,255,64,2,253,191,255,255,255,64,2,253,191,64,0,191,64,2,253,191,0,0,127,64,2,253,191,0,0,127,64,2,253,191,0,0,127,255,255,253,191,0,0,127,255,255,253,191,0,0,127,255,255,253,191,0,0,127,64,2,253,191,0,0,127,64,2,253,191,0,0,127,64,2,253,191,64,0,191,64,2,253,191,255,255,255,64,2,253,191,255,255,255,64,2,253,191,255,255,255,64,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,253,0,63,255,255,255,255,253,0,63,255,255,255,255,253,0,63,128,0,0,1,253,0,63,128,0,0,1,253,0,63,128,0,0,1,253,0,63,128,0,0,1,253,0,63,128,0,0,1,253,0,63,128,0,0,1,253,0,63,255,255,255,255,253,0,63,255,255,255,255,253,0,63,255,255,255,255,253,0,0,0,0,0,0,0, + // 0xba54 메 + 84,186,28,35,245,35,3,252,0,0,0,0,10,128,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,255,255,255,208,31,208,127,255,255,255,208,31,208,127,255,255,255,208,31,208,127,254,0,31,208,31,208,127,254,0,31,208,31,208,127,254,0,31,208,31,208,127,254,0,31,208,31,208,127,254,0,31,208,31,208,127,254,0,31,208,31,208,127,254,0,31,255,255,208,127,254,0,31,255,255,208,127,254,0,31,255,255,208,127,254,0,31,208,31,208,127,254,0,31,208,31,208,127,254,0,31,208,31,208,127,254,0,31,208,31,208,127,254,0,31,208,31,208,127,254,0,31,208,31,208,127,254,0,31,208,31,208,127,255,255,255,208,31,208,127,255,255,255,208,31,208,127,255,255,255,208,31,208,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,0,0,0,0,5,64,127,0,0,0,0,0,0,127, + // 0xba74 면 + 116,186,28,36,252,35,3,252,0,0,0,0,0,0,84,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,191,255,255,255,64,2,253,191,255,255,255,64,2,253,191,255,255,255,64,2,253,191,0,0,127,255,255,253,191,0,0,127,255,255,253,191,0,0,127,255,255,253,191,0,0,127,64,2,253,191,0,0,127,64,2,253,191,0,0,127,64,2,253,191,0,0,127,64,2,253,191,0,0,127,255,255,253,191,0,0,127,255,255,253,191,0,0,127,255,255,253,191,255,255,255,64,2,253,191,255,255,255,64,2,253,191,255,255,255,64,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,63,192,0,0,2,253,0,63,192,0,0,2,253,0,63,192,0,0,0,84,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,255,255,255,255,255,0,63,255,255,255,255,255,0,63,255,255,255,255,255,0,0,0,0,0,0,0, + // 0xbaa8 모 + 168,186,31,28,224,35,2,0,2,255,255,255,255,255,253,0,2,255,255,255,255,255,253,0,2,255,255,255,255,255,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,255,255,255,255,255,253,0,2,255,255,255,255,255,253,0,2,255,255,255,255,255,253,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xbabb 못 + 187,186,31,34,16,35,2,252,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,254,0,0,0,3,252,0,0,254,0,0,0,3,252,0,0,254,0,0,0,3,252,0,0,254,0,0,0,3,252,0,0,254,0,0,0,3,252,0,0,254,0,0,0,3,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,63,224,0,0,0,0,0,0,63,240,0,0,0,0,0,0,255,248,0,0,0,0,0,2,255,253,0,0,0,0,0,11,252,255,128,0,0,0,0,127,240,127,244,0,0,0,27,255,208,31,255,64,0,7,255,254,0,3,255,254,64,7,255,244,0,0,127,255,64,3,254,64,0,0,7,255,0,1,64,0,0,0,0,4,0, + // 0xbbf8 미 + 248,187,26,36,252,35,4,252,0,0,0,0,0,5,80,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,255,255,255,255,0,15,240,255,255,255,255,0,15,240,255,255,255,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,254,0,0,255,0,15,240,255,255,255,255,0,15,240,255,255,255,255,0,15,240,255,255,255,255,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,11,240, + // 0xbc00 밀 + 0,188,28,35,245,35,3,252,0,0,0,0,0,2,252,0,0,0,0,0,2,252,127,255,255,255,192,2,252,127,255,255,255,192,2,252,127,255,255,255,192,2,252,127,128,0,63,192,2,252,127,128,0,63,192,2,252,127,128,0,63,192,2,252,127,128,0,63,192,2,252,127,128,0,63,192,2,252,127,128,0,63,192,2,252,127,128,0,63,192,2,252,127,128,0,63,192,2,252,127,255,255,255,192,2,252,127,255,255,255,192,2,252,127,255,255,255,192,2,252,0,0,0,0,0,2,252,0,0,0,0,0,1,84,0,0,0,0,0,0,0,0,127,255,255,255,255,252,0,127,255,255,255,255,252,0,127,255,255,255,255,252,0,0,0,0,0,2,252,0,0,0,0,0,2,252,0,0,0,0,0,2,252,0,63,255,255,255,255,252,0,63,255,255,255,255,252,0,63,255,255,255,255,252,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,63,128,0,0,0,0,0,63,255,255,255,255,255,0,63,255,255,255,255,255,0,63,255,255,255,255,255,0,0,0,0,0,0,0, + // 0xbc14 바 + 20,188,31,36,32,35,3,252,0,0,0,0,0,5,64,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,85,0,0,21,0,31,208,0,255,0,0,127,64,31,208,0,255,0,0,127,64,31,208,0,255,0,0,127,64,31,208,0,255,0,0,127,64,31,208,0,255,0,0,127,64,31,208,0,255,0,0,127,64,31,208,0,255,0,0,127,64,31,208,0,255,0,0,127,64,31,208,0,255,0,0,191,64,31,208,0,255,255,255,255,64,31,208,0,255,255,255,255,64,31,255,252,255,255,255,255,64,31,255,252,255,0,0,127,64,31,255,252,255,0,0,127,64,31,229,80,255,0,0,127,64,31,208,0,255,0,0,127,64,31,208,0,255,0,0,127,64,31,208,0,255,0,0,127,64,31,208,0,255,0,0,127,64,31,208,0,255,0,0,127,64,31,208,0,255,255,255,255,64,31,208,0,255,255,255,255,64,31,208,0,255,255,255,255,64,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0, + // 0xbc84 버 + 132,188,28,36,252,35,3,252,0,0,0,0,0,1,84,0,0,0,0,0,2,253,0,0,0,0,0,2,253,170,0,0,106,0,2,253,255,0,0,191,64,2,253,255,0,0,191,64,2,253,255,0,0,191,64,2,253,255,0,0,191,64,2,253,255,0,0,191,64,2,253,255,0,0,191,64,2,253,255,0,0,191,64,2,253,255,0,0,191,64,2,253,255,255,255,255,64,2,253,255,255,255,255,255,255,253,255,255,255,255,255,255,253,255,0,0,191,255,255,253,255,0,0,191,64,2,253,255,0,0,191,64,2,253,255,0,0,191,64,2,253,255,0,0,191,64,2,253,255,0,0,191,64,2,253,255,0,0,191,64,2,253,255,0,0,191,64,2,253,255,0,0,191,64,2,253,255,255,255,255,64,2,253,255,255,255,255,64,2,253,255,255,255,255,64,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,1,253, + // 0xbca0 베 + 160,188,28,36,252,35,3,252,0,0,0,0,0,0,21,0,0,0,0,26,128,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,254,0,15,208,31,208,127,254,0,15,208,31,208,127,254,0,15,208,31,208,127,254,0,15,208,31,208,127,254,0,15,208,31,208,127,254,0,15,208,31,208,127,254,0,15,208,31,208,127,254,0,15,208,31,208,127,255,255,255,208,31,208,127,255,255,255,224,47,208,127,255,255,255,255,255,208,127,255,0,31,255,255,208,127,254,0,15,255,255,208,127,254,0,15,208,31,208,127,254,0,15,208,31,208,127,254,0,15,208,31,208,127,254,0,15,208,31,208,127,254,0,15,208,31,208,127,254,0,15,208,31,208,127,254,0,15,208,31,208,127,255,255,255,208,31,208,127,255,255,255,208,31,208,127,255,255,255,208,31,208,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,0,0,0,0,31,208,127,0,0,0,0,0,0,127,0,0,0,0,0,0,127, + // 0xbca8 벨 + 168,188,29,36,32,35,3,252,0,0,0,0,0,0,85,0,0,0,0,0,31,192,255,0,21,0,6,144,47,192,255,0,191,0,15,224,47,192,255,0,191,0,15,224,47,192,255,0,191,0,15,224,47,192,255,0,191,0,15,224,47,192,255,0,191,255,255,224,47,192,255,0,191,255,255,255,255,192,255,0,191,255,255,255,255,192,255,0,191,0,15,255,255,192,255,0,191,0,15,224,47,192,255,0,191,0,15,224,47,192,255,0,191,0,15,224,47,192,255,0,191,0,15,224,47,192,255,0,191,255,255,224,47,192,255,0,191,255,255,224,47,192,255,0,191,255,255,224,47,192,255,0,0,0,0,0,47,192,255,0,0,0,0,0,0,0,85,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,0,0,63,255,255,255,255,255,0,0,63,255,255,255,255,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,63,255,255,255,255,255,0,0,63,255,255,255,255,255,0,0,63,255,255,255,255,255,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,255,255,255,255,255,192,0,63,255,255,255,255,255,192,0,63,255,255,255,255,255,192,0,0,0,0,0,0,0,0, + // 0xbcf8 본 + 248,188,31,34,16,35,2,252,0,254,0,0,0,3,252,0,0,255,0,0,0,3,252,0,0,255,0,0,0,3,252,0,0,255,0,0,0,3,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,0,0,0,3,252,0,0,255,0,0,0,3,252,0,0,255,0,0,0,3,252,0,0,255,0,0,0,3,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,169,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0, + // 0xbe44 비 + 68,190,26,36,252,35,4,252,0,0,0,0,0,5,80,0,0,0,0,0,15,240,0,0,0,0,0,15,240,84,0,0,21,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,255,255,255,255,0,15,240,255,255,255,255,0,15,240,255,255,255,255,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,254,0,0,191,0,15,240,255,255,255,255,0,15,240,255,255,255,255,0,15,240,255,255,255,255,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,15,240,0,0,0,0,0,11,240, + // 0xc0ac 사 + 172,192,33,36,68,35,1,252,0,0,0,0,0,0,84,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,21,64,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,127,192,0,1,253,0,0,0,0,127,208,0,1,253,0,0,0,0,191,224,0,1,254,0,0,0,0,255,240,0,1,255,255,192,0,1,255,244,0,1,255,255,192,0,2,255,248,0,1,255,255,192,0,3,250,252,0,1,253,0,0,0,15,240,255,0,1,253,0,0,0,47,240,255,128,1,253,0,0,0,127,208,63,208,1,253,0,0,0,255,128,47,244,1,253,0,0,3,255,0,15,253,1,253,0,0,31,253,0,3,255,193,253,0,0,127,244,0,0,255,129,253,0,0,47,208,0,0,63,1,253,0,0,15,0,0,0,8,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0, + // 0xc0bd 삽 + 189,192,32,36,32,35,2,252,0,0,0,0,0,1,84,0,0,0,0,0,0,3,248,0,0,0,170,0,0,3,248,0,0,0,255,0,0,3,248,0,0,0,255,0,0,3,248,0,0,0,255,0,0,3,248,0,0,0,255,0,0,3,248,0,0,0,255,0,0,3,248,0,0,1,255,64,0,3,252,0,0,2,255,192,0,3,255,254,0,3,255,208,0,3,255,254,0,11,255,240,0,3,255,254,0,31,251,252,0,3,248,0,0,127,195,255,0,3,248,0,1,255,129,255,208,3,248,0,11,255,0,127,253,3,248,0,191,252,0,31,254,3,248,0,255,224,0,3,252,3,248,0,63,64,0,0,116,3,248,0,20,0,0,0,0,3,248,0,0,0,0,0,0,0,0,0,0,42,64,0,0,2,164,0,0,63,128,0,0,3,248,0,0,63,128,0,0,3,248,0,0,63,128,0,0,3,248,0,0,63,255,255,255,255,248,0,0,63,255,255,255,255,248,0,0,63,255,255,255,255,248,0,0,63,128,0,0,3,248,0,0,63,128,0,0,3,248,0,0,63,128,0,0,3,248,0,0,63,128,0,0,3,248,0,0,63,255,255,255,255,248,0,0,63,255,255,255,255,248,0,0,63,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0xc0c8 새 + 200,192,30,36,32,35,1,252,0,0,0,0,0,0,1,80,0,0,0,0,2,164,7,240,0,0,0,0,3,248,7,240,0,0,0,0,3,248,7,240,0,1,253,0,3,248,7,240,0,1,253,0,3,248,7,240,0,1,253,0,3,248,7,240,0,1,253,0,3,248,7,240,0,1,253,0,3,248,7,240,0,1,253,0,3,248,7,240,0,1,254,0,3,248,7,240,0,1,254,0,3,248,7,240,0,1,254,0,3,248,7,240,0,2,255,0,3,248,7,240,0,2,255,0,3,248,11,240,0,3,255,0,3,255,255,240,0,3,255,128,3,255,255,240,0,11,255,192,3,255,255,240,0,15,255,192,3,248,7,240,0,31,223,240,3,248,7,240,0,63,203,244,3,248,7,240,0,191,135,252,3,248,7,240,0,255,2,255,3,248,7,240,3,254,0,255,195,248,7,240,15,252,0,127,243,248,7,240,127,240,0,47,227,248,7,240,63,208,0,7,195,248,7,240,15,64,0,0,3,248,7,240,0,0,0,0,3,248,7,240,0,0,0,0,3,248,7,240,0,0,0,0,3,248,7,240,0,0,0,0,3,248,7,240,0,0,0,0,3,248,7,240,0,0,0,0,3,248,7,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,7,240, + // 0xc124 설 + 36,193,30,36,32,35,2,252,0,0,0,0,0,0,21,0,0,0,0,0,0,0,191,64,0,0,255,0,0,0,191,64,0,0,255,0,0,0,191,64,0,0,255,0,0,0,191,64,0,0,255,0,0,0,191,64,0,0,255,0,0,0,191,64,0,0,255,64,47,255,255,64,0,1,255,192,47,255,255,64,0,3,255,208,47,255,255,64,0,7,255,240,0,0,191,64,0,15,251,248,0,0,191,64,0,63,211,255,0,0,191,64,0,255,193,255,208,0,191,64,11,255,0,127,253,0,191,64,191,252,0,31,255,0,191,64,191,224,0,2,252,0,191,64,63,64,0,0,36,0,191,64,4,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,64,0,15,255,255,255,255,255,64,0,15,255,255,255,255,255,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,15,255,255,255,255,255,64,0,15,255,255,255,255,255,64,0,15,255,255,255,255,255,64,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,255,255,255,255,255,224,0,15,255,255,255,255,255,224,0,15,255,255,255,255,255,224,0,0,0,0,0,0,0,0, + // 0xc18c 소 + 140,193,31,30,240,35,2,0,0,0,0,5,64,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,63,208,0,0,0,0,0,0,63,224,0,0,0,0,0,0,63,224,0,0,0,0,0,0,127,240,0,0,0,0,0,0,255,244,0,0,0,0,0,1,255,252,0,0,0,0,0,3,254,255,0,0,0,0,0,15,248,255,128,0,0,0,0,63,240,63,224,0,0,0,1,255,192,31,252,0,0,0,31,255,0,7,255,128,0,1,255,252,0,1,255,249,0,63,255,224,0,0,63,255,208,31,255,0,0,0,7,255,192,15,228,0,0,0,0,111,128,0,0,0,47,192,0,1,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,47,192,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xc18d 속 + 141,193,31,35,24,35,2,252,0,0,0,31,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,63,224,0,0,0,0,0,0,63,240,0,0,0,0,0,0,127,240,0,0,0,0,0,0,255,252,0,0,0,0,0,3,255,254,0,0,0,0,0,15,248,255,128,0,0,0,0,191,240,63,244,0,0,0,11,255,192,31,255,64,0,6,255,254,0,3,255,250,64,15,255,244,0,0,127,255,192,11,254,64,47,208,7,255,64,3,144,0,47,208,0,27,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,255,252,0,2,255,255,255,255,255,252,0,2,255,255,255,255,255,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,2,252,0, + // 0xc2a4 스 + 164,194,31,29,232,35,2,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,63,224,0,0,0,0,0,0,63,224,0,0,0,0,0,0,127,240,0,0,0,0,0,0,191,244,0,0,0,0,0,0,255,252,0,0,0,0,0,3,255,253,0,0,0,0,0,11,248,255,64,0,0,0,0,47,240,127,208,0,0,0,0,191,208,63,244,0,0,0,7,255,128,15,254,0,0,0,111,253,0,3,255,224,0,27,255,244,0,0,191,254,64,47,255,128,0,0,31,255,208,15,253,0,0,0,2,255,192,11,128,0,0,0,0,27,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xc2ac 슬 + 172,194,31,35,24,35,2,252,0,0,0,47,208,0,0,0,0,0,0,47,224,0,0,0,0,0,0,63,240,0,0,0,0,0,0,127,240,0,0,0,0,0,0,255,252,0,0,0,0,0,3,254,255,0,0,0,0,0,31,248,191,208,0,0,0,1,255,224,63,253,0,0,1,191,255,64,11,255,233,0,31,255,252,0,0,255,255,192,15,255,128,0,0,27,255,128,7,228,0,0,0,0,111,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,170,170,170,170,168,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,255,255,255,255,255,0,1,255,255,255,255,255,255,0,1,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0, + // 0xc2dc 시 + 220,194,28,35,245,35,2,252,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,127,128,0,0,255,0,0,127,128,0,0,255,0,0,127,128,0,0,255,0,0,127,128,0,0,255,0,0,127,128,0,0,255,0,0,127,128,0,0,255,0,0,127,128,0,0,255,0,0,127,128,0,0,255,0,0,191,192,0,0,255,0,0,255,192,0,0,255,0,0,255,208,0,0,255,0,1,255,224,0,0,255,0,2,255,240,0,0,255,0,3,255,248,0,0,255,0,11,243,252,0,0,255,0,15,241,255,0,0,255,0,63,208,255,128,0,255,0,191,192,127,208,0,255,2,255,0,47,244,0,255,11,254,0,15,254,0,255,127,252,0,3,255,192,255,255,240,0,0,255,192,255,127,192,0,0,47,0,255,45,0,0,0,5,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,85, + // 0xc2dd 식 + 221,194,28,36,252,35,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,191,0,0,106,64,0,0,191,0,0,191,64,0,0,191,0,0,191,64,0,0,191,0,0,191,64,0,0,191,0,0,191,64,0,0,191,0,0,191,128,0,0,191,0,0,255,192,0,0,191,0,0,255,192,0,0,191,0,2,255,208,0,0,191,0,3,255,240,0,0,191,0,11,255,248,0,0,191,0,31,243,254,0,0,191,0,127,209,255,128,0,191,1,255,128,191,240,0,191,15,255,0,47,254,0,191,191,252,0,11,255,64,191,127,240,0,1,255,0,191,63,128,0,0,44,0,191,8,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,0,63,255,255,255,255,255,0,63,255,255,255,255,255,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191, + // 0xc5b4 어 + 180,197,29,36,32,35,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,7,254,0,0,0,191,64,0,127,255,224,0,0,191,64,1,255,255,248,0,0,191,64,3,255,175,253,0,0,191,64,11,248,1,255,0,0,191,64,15,240,0,191,128,0,191,64,47,208,0,63,192,0,191,64,63,192,0,47,192,0,191,64,63,128,0,31,208,0,191,64,127,128,0,15,224,0,191,64,127,64,0,15,240,0,191,64,127,64,0,15,255,255,255,64,127,0,0,15,255,255,255,64,127,64,0,15,255,255,255,64,127,64,0,15,240,0,191,64,127,64,0,15,224,0,191,64,63,128,0,31,208,0,191,64,63,192,0,47,192,0,191,64,47,208,0,63,192,0,191,64,15,240,0,127,128,0,191,64,15,248,1,255,0,0,191,64,3,255,175,253,0,0,191,64,1,255,255,248,0,0,191,64,0,127,255,224,0,0,191,64,0,7,254,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,127,64, + // 0xc5c6 없 + 198,197,32,36,32,35,2,252,0,0,0,0,0,0,21,0,0,0,0,0,0,0,191,64,0,27,254,64,0,0,191,64,0,255,255,248,0,0,191,64,7,255,255,254,0,0,191,64,15,254,86,255,128,0,191,64,47,240,0,127,192,0,191,64,63,192,0,31,224,0,191,64,127,128,0,15,240,0,191,64,191,64,0,11,255,255,255,64,191,0,0,11,255,255,255,64,191,64,0,11,255,255,255,64,127,128,0,15,240,0,191,64,63,208,0,47,208,0,191,64,31,249,1,255,192,0,191,64,11,255,255,255,0,0,191,64,1,255,255,252,0,0,191,64,0,47,255,144,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,169,0,170,0,15,240,0,0,253,0,191,0,15,240,0,0,253,0,191,0,15,240,0,0,253,0,191,0,15,240,0,0,255,255,255,0,31,240,0,0,255,255,255,0,47,244,0,0,255,255,255,0,63,248,0,0,253,0,191,0,127,252,0,0,253,0,191,1,255,255,0,0,253,0,191,3,252,191,192,0,253,0,191,47,248,63,244,0,255,255,255,255,240,15,254,0,255,255,255,127,128,3,252,0,255,255,255,46,0,0,184,0,0,0,0,0,0,0,0, + // 0xc5d1 엑 + 209,197,29,36,32,35,2,252,0,0,0,0,0,0,21,64,0,0,0,0,7,240,63,192,0,1,0,0,7,244,63,192,0,127,253,0,7,244,63,192,3,255,255,128,7,244,63,192,15,255,255,240,7,244,63,192,31,244,31,248,7,244,63,192,63,192,3,252,7,244,63,192,127,64,1,253,7,244,63,192,191,0,0,254,7,244,63,192,255,0,0,255,255,244,63,192,254,0,0,255,255,244,63,192,255,0,0,255,255,244,63,192,191,0,0,253,7,244,63,192,127,64,2,252,7,244,63,192,63,208,7,252,7,244,63,192,31,249,111,244,7,244,63,192,11,255,255,224,7,244,63,192,2,255,255,64,7,244,63,192,0,47,232,0,7,244,63,192,0,0,0,0,7,244,63,192,0,0,0,0,1,80,26,128,0,0,0,0,0,0,0,0,0,31,255,255,255,255,255,192,0,31,255,255,255,255,255,192,0,31,255,255,255,255,255,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192, + // 0xc5d4 엔 + 212,197,30,36,32,35,2,252,0,0,0,0,0,0,21,64,0,0,0,0,7,244,63,192,0,0,0,0,7,244,63,192,0,47,248,0,7,244,63,192,2,255,255,64,7,244,63,192,11,255,255,208,7,244,63,192,31,249,127,240,7,244,63,192,63,208,11,252,7,244,63,192,127,128,2,252,7,244,63,192,191,0,1,253,7,244,63,192,191,0,0,254,7,244,63,192,255,0,0,255,255,244,63,192,254,0,0,255,255,244,63,192,191,0,0,255,255,244,63,192,191,0,0,253,7,244,63,192,63,128,3,252,7,244,63,192,47,244,31,248,7,244,63,192,15,255,255,240,7,244,63,192,3,255,255,192,7,244,63,192,0,191,253,0,7,244,63,192,0,1,0,0,7,244,63,192,0,0,0,0,7,244,63,192,0,0,0,0,7,244,63,192,0,10,160,0,7,244,63,192,0,11,240,0,7,244,63,192,0,11,240,0,7,240,63,192,0,11,240,0,0,0,47,192,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,11,255,255,255,255,255,240,0,11,255,255,255,255,255,240,0,11,255,255,255,255,255,240,0,0,0,0,0,0,0,0, + // 0xc5f4 열 + 244,197,30,36,32,35,2,252,0,0,0,0,0,0,21,0,0,0,0,0,0,0,191,64,0,47,255,144,0,0,191,64,1,255,255,248,0,0,191,64,11,255,255,255,0,0,191,64,31,253,1,255,255,255,255,64,63,224,0,63,255,255,255,64,63,192,0,15,255,255,255,64,127,64,0,15,240,0,191,64,191,0,0,11,240,0,191,64,191,0,0,11,240,0,191,64,127,64,0,15,240,0,191,64,63,192,0,31,255,255,255,64,63,224,0,63,255,255,255,64,15,254,86,255,255,255,255,64,7,255,255,255,0,0,191,64,0,255,255,244,0,0,191,64,0,27,254,64,0,0,191,64,0,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,64,0,15,255,255,255,255,255,64,0,15,255,255,255,255,255,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,15,255,255,255,255,255,64,0,15,255,255,255,255,255,64,0,15,255,255,255,255,255,64,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,255,255,255,255,255,208,0,15,255,255,255,255,255,208,0,15,255,255,255,255,255,208,0,0,0,0,0,0,0,0, + // 0xc608 예 + 8,198,29,36,32,35,2,252,0,0,0,0,0,0,5,64,0,0,0,0,2,164,31,192,0,0,0,0,7,244,31,192,0,10,144,0,7,244,31,192,0,191,252,0,7,244,31,192,3,255,255,0,7,244,31,192,11,255,255,192,7,244,31,192,15,244,63,208,7,244,31,192,47,208,15,240,7,244,31,192,63,192,11,255,255,244,31,192,63,64,3,255,255,244,31,192,127,0,3,255,255,244,31,192,191,0,3,252,7,244,31,192,191,0,2,252,7,244,31,192,191,0,2,252,7,244,31,192,191,0,2,252,7,244,31,192,191,0,2,252,7,244,31,192,191,0,2,252,7,244,31,192,191,0,2,252,7,244,31,192,127,0,3,252,7,244,31,192,127,64,3,255,255,244,31,192,63,128,7,255,255,244,31,192,63,192,11,255,255,244,31,192,31,224,31,224,7,244,31,192,15,254,255,192,7,244,31,192,3,255,255,64,7,244,31,192,1,255,254,0,7,244,31,192,0,47,224,0,7,244,31,192,0,0,0,0,7,244,31,192,0,0,0,0,7,244,31,192,0,0,0,0,7,244,31,192,0,0,0,0,7,244,31,192,0,0,0,0,7,244,31,192,0,0,0,0,7,244,31,192,0,0,0,0,0,0,31,192,0,0,0,0,0,0,26,128, + // 0xc624 오 + 36,198,31,29,232,35,2,0,0,0,6,255,254,64,0,0,0,1,255,255,255,248,0,0,0,11,255,255,255,255,128,0,0,63,254,64,6,255,224,0,0,191,208,0,0,47,248,0,1,255,0,0,0,7,252,0,2,253,0,0,0,2,254,0,3,252,0,0,0,0,255,0,3,248,0,0,0,0,255,0,3,248,0,0,0,0,255,0,3,252,0,0,0,0,255,0,2,253,0,0,0,2,254,0,1,255,0,0,0,7,252,0,0,191,208,0,0,47,248,0,0,63,254,64,6,255,224,0,0,11,255,255,255,255,128,0,0,1,255,255,255,253,0,0,0,0,11,255,254,64,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xc628 온 + 40,198,31,34,16,35,2,252,0,0,27,255,255,144,0,0,0,2,255,255,255,254,0,0,0,47,255,255,255,255,208,0,0,191,249,0,1,255,244,0,0,255,128,0,0,15,252,0,2,254,0,0,0,3,253,0,2,253,0,0,0,1,254,0,2,253,0,0,0,1,254,0,2,254,0,0,0,3,253,0,0,255,128,0,0,15,252,0,0,127,253,64,6,255,244,0,0,31,255,255,255,255,208,0,0,2,255,255,255,254,0,0,0,0,26,255,254,80,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0, + // 0xc644 완 + 68,198,32,36,32,35,2,252,0,0,0,0,0,1,84,0,0,0,0,0,0,3,252,0,0,6,191,144,0,3,252,0,0,127,255,253,0,3,252,0,1,255,255,255,192,3,252,0,3,254,64,127,224,3,252,0,15,244,0,15,240,3,252,0,15,224,0,7,248,3,252,0,15,208,0,3,248,3,252,0,15,208,0,3,248,3,252,0,15,224,0,7,244,3,252,0,11,244,0,15,240,3,252,0,3,254,64,127,224,3,255,253,1,255,255,255,192,3,255,253,0,63,255,254,0,3,255,253,0,6,255,208,0,3,252,0,0,0,191,0,0,3,252,0,0,0,191,0,0,3,252,0,0,0,191,0,1,67,252,0,0,5,255,175,255,195,252,0,255,255,255,255,255,195,252,0,255,255,255,255,255,131,252,0,191,255,254,165,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,21,0,0,0,3,252,0,0,127,128,0,0,3,252,0,0,127,128,0,0,3,248,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,0,0,0,0,0,0,0, + // 0xc6d0 원 + 208,198,29,36,32,35,2,252,0,0,0,0,0,0,21,0,0,0,0,0,0,0,191,64,0,2,191,228,0,0,191,64,0,47,255,255,128,0,191,64,1,255,255,255,240,0,191,64,3,254,64,31,248,0,191,64,7,248,0,3,252,0,191,64,11,240,0,2,253,0,191,64,11,240,0,2,253,0,191,64,7,248,0,3,252,0,191,64,3,254,64,31,248,0,191,64,1,255,255,255,240,0,191,64,0,47,255,255,128,0,191,64,0,2,191,228,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,80,191,64,0,21,85,171,255,240,191,64,255,255,255,255,255,240,191,64,255,255,255,255,255,240,191,64,255,255,255,250,80,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,10,170,255,64,0,0,47,192,31,255,255,64,0,0,47,192,31,255,255,64,0,85,47,192,0,0,191,64,0,191,111,192,0,0,191,64,0,191,64,0,0,0,191,64,0,191,64,0,0,0,21,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,255,255,255,255,255,192,0,191,255,255,255,255,255,192,0,191,255,255,255,255,255,192,0,0,0,0,0,0,0,0, + // 0xc704 위 + 4,199,29,36,32,35,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,0,191,64,0,1,191,228,0,0,191,64,0,31,255,255,64,0,191,64,0,191,255,255,240,0,191,64,2,255,213,111,248,0,191,64,3,253,0,7,253,0,191,64,7,248,0,1,254,0,191,64,11,240,0,0,255,0,191,64,11,240,0,0,255,0,191,64,11,240,0,0,255,0,191,64,7,248,0,1,254,0,191,64,3,253,0,7,253,0,191,64,2,255,213,111,248,0,191,64,0,191,255,255,240,0,191,64,0,31,255,255,64,0,191,64,0,1,191,228,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,80,191,64,0,85,85,171,255,240,191,64,255,255,255,255,255,244,191,64,255,255,255,255,255,224,191,64,191,255,255,233,64,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,0,0,0,0,191,64, + // 0xc73c 으 + 60,199,31,29,232,35,2,0,0,0,10,255,254,64,0,0,0,0,255,255,255,248,0,0,0,11,255,255,255,255,64,0,0,47,254,80,22,255,224,0,0,191,224,0,0,47,244,0,0,255,64,0,0,7,252,0,2,253,0,0,0,2,253,0,3,252,0,0,0,0,255,0,3,248,0,0,0,0,255,0,3,248,0,0,0,0,255,0,3,248,0,0,0,0,255,0,3,252,0,0,0,0,255,0,2,253,0,0,0,2,253,0,0,255,64,0,0,7,252,0,0,191,224,0,0,47,244,0,0,47,254,64,22,255,224,0,0,11,255,255,255,255,64,0,0,0,255,255,255,248,0,0,0,0,11,255,254,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xc74c 음 + 76,199,31,35,24,35,2,252,0,0,26,255,254,144,0,0,0,2,255,255,255,254,0,0,0,31,255,255,255,255,208,0,0,191,253,64,6,255,244,0,0,255,128,0,0,15,252,0,2,254,0,0,0,3,253,0,2,253,0,0,0,1,254,0,2,253,0,0,0,1,254,0,2,254,0,0,0,3,253,0,0,255,128,0,0,15,252,0,0,191,253,64,6,255,244,0,0,31,255,255,255,255,208,0,0,2,255,255,255,254,0,0,0,0,26,255,254,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,253,0,0,0,2,252,0,1,253,0,0,0,2,252,0,1,253,0,0,0,2,252,0,1,253,0,0,0,2,252,0,1,253,0,0,0,2,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0, + // 0xc774 이 + 116,199,27,36,252,35,3,252,0,0,0,0,0,1,84,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,11,253,0,0,3,252,0,191,255,208,0,3,252,2,255,255,244,0,3,252,11,255,175,253,0,3,252,15,244,2,255,0,3,252,47,224,0,191,64,3,252,63,192,0,63,192,3,252,127,128,0,63,192,3,252,191,64,0,31,208,3,252,191,0,0,31,224,3,252,255,0,0,15,224,3,252,255,0,0,15,224,3,252,255,0,0,15,224,3,252,255,0,0,15,224,3,252,255,0,0,15,224,3,252,191,0,0,31,224,3,252,191,64,0,31,208,3,252,127,128,0,63,192,3,252,63,192,0,63,192,3,252,47,224,0,191,64,3,252,15,244,2,255,0,3,252,11,255,175,253,0,3,252,2,255,255,244,0,3,252,0,191,255,208,0,3,252,0,11,253,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,2,252, + // 0xc77c 일 + 124,199,29,36,32,35,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,0,191,0,0,31,255,208,0,0,191,0,1,255,255,253,0,0,191,0,7,255,255,255,128,0,191,0,15,253,1,255,208,0,191,0,63,224,0,47,240,0,191,0,63,192,0,15,244,0,191,0,127,128,0,7,244,0,191,0,127,64,0,7,248,0,191,0,127,128,0,7,244,0,191,0,63,192,0,15,244,0,191,0,63,224,0,47,240,0,191,0,15,253,1,255,208,0,191,0,7,255,255,255,128,0,191,0,1,255,255,253,0,0,191,0,0,31,255,208,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,255,0,0,31,255,255,255,255,255,0,0,31,255,255,255,255,255,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,191,0,0,15,255,255,255,255,255,0,0,15,255,255,255,255,255,0,0,15,255,255,255,255,255,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,255,255,255,255,255,192,0,15,255,255,255,255,255,192,0,15,255,255,255,255,255,192,0,0,0,0,0,0,0,0, + // 0xc77d 읽 + 125,199,28,36,252,35,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,191,0,11,255,128,0,0,191,0,191,255,248,0,0,191,3,255,255,255,64,0,191,15,254,70,255,192,0,191,47,240,0,63,224,0,191,63,192,0,15,240,0,191,127,128,0,11,244,0,191,127,64,0,7,248,0,191,127,64,0,7,248,0,191,127,128,0,11,244,0,191,63,192,0,15,240,0,191,47,240,0,47,240,0,191,15,254,70,255,192,0,191,3,255,255,255,64,0,191,0,191,255,248,0,0,191,0,11,255,128,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,254,63,255,255,0,255,255,254,63,255,255,0,255,255,254,63,255,255,0,0,0,254,0,0,191,0,0,0,254,0,0,191,0,191,255,254,0,0,191,0,255,255,254,0,0,191,0,255,255,254,0,0,191,0,255,0,0,0,0,191,0,255,0,0,0,0,191,0,255,0,5,144,0,191,0,255,255,255,240,0,191,0,255,255,255,240,0,191,0,255,255,250,80,0,191,0,0,0,0,0,0,21, + // 0xc785 입 + 133,199,28,36,252,35,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,191,0,11,255,144,0,0,191,0,191,255,253,0,0,191,3,255,255,255,64,0,191,15,254,86,255,208,0,191,47,240,0,47,240,0,191,63,192,0,15,244,0,191,63,128,0,7,248,0,191,127,128,0,3,248,0,191,127,64,0,3,248,0,191,127,128,0,7,248,0,191,63,192,0,11,244,0,191,47,240,0,31,240,0,191,15,253,1,191,208,0,191,7,255,255,255,128,0,191,0,255,255,254,0,0,191,0,31,255,224,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,224,0,0,0,191,0,15,224,0,0,0,191,0,15,224,0,0,0,191,0,15,224,0,0,0,191,0,15,255,255,255,255,255,0,15,255,255,255,255,255,0,15,255,255,255,255,255,0,15,224,0,0,0,191,0,15,224,0,0,0,191,0,15,224,0,0,0,191,0,15,224,0,0,0,191,0,15,255,255,255,255,255,0,15,255,255,255,255,255,0,15,255,255,255,255,255,0,0,0,0,0,0,0, + // 0xc790 자 + 144,199,33,36,68,35,1,252,0,0,0,0,0,0,84,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,31,255,255,255,255,1,253,0,0,31,255,255,255,255,1,253,0,0,31,255,255,255,255,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,127,208,0,1,254,0,0,0,0,191,224,0,1,255,255,192,0,0,255,240,0,1,255,255,192,0,1,255,244,0,1,255,255,192,0,3,255,252,0,1,253,0,0,0,7,249,254,0,1,253,0,0,0,15,240,255,64,1,253,0,0,0,47,224,127,192,1,253,0,0,0,127,192,63,240,1,253,0,0,1,255,64,15,252,1,253,0,0,7,255,0,7,255,65,253,0,0,47,252,0,1,255,209,253,0,0,127,240,0,0,127,129,253,0,0,47,192,0,0,15,1,253,0,0,14,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0, + // 0xc791 작 + 145,199,32,36,32,35,2,252,0,0,0,0,0,1,84,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,127,255,255,255,252,3,248,0,127,255,255,255,252,3,248,0,127,255,255,255,252,3,248,0,0,0,255,0,0,3,248,0,0,0,255,0,0,3,248,0,0,0,255,0,0,3,248,0,0,1,255,64,0,3,252,0,0,2,255,128,0,3,255,254,0,3,255,192,0,3,255,254,0,7,255,224,0,3,255,254,0,15,255,244,0,3,248,0,0,63,215,253,0,3,248,0,0,255,194,255,64,3,248,0,7,255,0,255,244,3,248,0,127,253,0,63,255,3,248,0,255,244,0,11,253,3,248,0,191,192,0,1,252,3,248,0,61,0,0,0,16,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,248,0,0,255,255,255,255,255,248,0,0,255,255,255,255,255,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0, + // 0xc798 잘 + 152,199,32,35,24,35,2,252,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,127,255,255,255,252,3,248,0,127,255,255,255,252,3,248,0,127,255,255,255,252,3,248,0,0,0,255,0,0,3,248,0,0,0,255,0,0,3,248,0,0,1,255,64,0,3,255,254,0,3,255,192,0,3,255,254,0,7,255,208,0,3,255,254,0,15,255,244,0,3,252,0,0,63,215,253,0,3,248,0,0,255,194,255,128,3,248,0,11,255,0,191,249,3,248,0,191,252,0,47,255,3,248,0,255,240,0,7,253,3,248,0,191,128,0,0,104,3,248,0,36,0,0,0,0,2,164,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,248,0,0,127,255,255,255,255,248,0,0,127,255,255,255,255,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,127,255,255,255,255,248,0,0,127,255,255,255,255,248,0,0,127,255,255,255,255,248,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,127,255,255,255,255,255,0,0,0,0,0,0,0,0,0, + // 0xc7a5 장 + 165,199,32,36,32,35,2,252,0,0,0,0,0,1,84,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,127,255,255,255,252,3,248,0,127,255,255,255,252,3,248,0,127,255,255,255,252,3,248,0,0,0,255,0,0,3,248,0,0,0,255,0,0,3,248,0,0,0,255,0,0,3,248,0,0,1,255,64,0,3,255,254,0,2,255,128,0,3,255,254,0,3,255,192,0,3,255,254,0,7,255,240,0,3,252,0,0,15,251,248,0,3,248,0,0,63,211,254,0,3,248,0,0,255,194,255,128,3,248,0,3,255,64,191,248,3,248,0,47,253,0,63,255,3,248,0,255,248,0,11,253,3,248,0,191,208,0,1,252,3,248,0,63,64,0,0,16,3,248,0,20,0,0,0,0,3,248,0,0,0,0,0,0,0,0,0,0,0,10,255,255,144,0,0,0,1,255,255,255,254,0,0,0,15,255,255,255,255,208,0,0,63,253,0,1,191,240,0,0,127,208,0,0,15,248,0,0,191,64,0,0,3,252,0,0,191,0,0,0,3,252,0,0,191,64,0,0,3,252,0,0,127,208,0,0,15,248,0,0,47,254,64,5,191,240,0,0,11,255,255,255,255,192,0,0,1,255,255,255,254,0,0,0,0,6,255,254,144,0,0, + // 0xc7ac 재 + 172,199,30,36,32,35,2,252,0,0,0,0,0,0,5,64,0,0,0,0,6,160,31,208,0,0,0,0,15,240,31,208,0,0,0,0,15,240,31,208,0,0,0,0,15,240,31,208,191,255,255,255,15,240,31,208,191,255,255,255,15,240,31,208,191,255,255,255,15,240,31,208,0,7,244,0,15,240,31,208,0,7,244,0,15,240,31,208,0,7,244,0,15,240,31,208,0,11,248,0,15,240,31,208,0,11,248,0,15,240,31,208,0,11,248,0,15,240,31,208,0,15,252,0,15,240,31,208,0,15,252,0,15,255,255,208,0,31,253,0,15,255,255,208,0,47,254,0,15,255,255,208,0,63,255,0,15,240,31,208,0,63,191,128,15,240,31,208,0,255,47,192,15,240,31,208,1,254,31,240,15,240,31,208,3,253,15,248,15,240,31,208,11,248,3,254,15,240,31,208,47,240,1,255,207,240,31,208,255,208,0,191,207,240,31,208,255,128,0,31,15,240,31,208,126,0,0,1,15,240,31,208,20,0,0,0,15,240,31,208,0,0,0,0,15,240,31,208,0,0,0,0,15,240,31,208,0,0,0,0,15,240,31,208,0,0,0,0,15,240,31,208,0,0,0,0,15,240,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208, + // 0xc800 저 + 0,200,29,36,32,35,2,252,0,0,0,0,0,0,21,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,63,255,255,255,254,0,191,64,63,255,255,255,254,0,191,64,63,255,255,255,254,0,191,64,0,0,255,64,0,0,191,64,0,0,191,0,0,0,191,64,0,0,191,0,0,0,191,64,0,0,191,64,0,0,191,64,0,0,255,64,0,0,191,64,0,0,255,64,0,0,191,64,0,0,255,128,31,255,255,64,0,1,255,192,31,255,255,64,0,2,255,192,31,255,255,64,0,3,255,224,0,0,191,64,0,7,255,240,0,0,191,64,0,11,247,244,0,0,191,64,0,31,227,252,0,0,191,64,0,63,193,255,0,0,191,64,0,191,128,255,128,0,191,64,1,255,0,127,208,0,191,64,7,254,0,47,248,0,191,64,31,252,0,15,255,0,191,64,255,240,0,3,255,128,191,64,255,192,0,0,255,0,191,64,63,0,0,0,29,0,191,64,40,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,127,64, + // 0xc804 전 + 4,200,29,36,32,35,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,63,255,255,255,253,0,191,64,63,255,255,255,253,0,191,64,63,255,255,255,253,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,255,64,0,0,191,64,0,0,255,128,0,0,191,64,0,0,255,192,15,255,255,64,0,1,255,192,15,255,255,64,0,3,255,224,15,255,255,64,0,7,255,240,0,0,191,64,0,15,247,252,0,0,191,64,0,63,210,255,0,0,191,64,0,255,192,255,208,0,191,64,7,255,0,63,252,0,191,64,127,253,0,31,255,0,191,64,255,244,0,3,254,0,191,64,63,192,0,0,124,0,191,64,45,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,11,240,0,0,0,191,64,0,15,240,0,0,0,191,64,0,15,240,0,0,0,21,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,255,255,255,255,255,192,0,15,255,255,255,255,255,192,0,15,255,255,255,255,255,192,0,0,0,0,0,0,0,0, + // 0xc815 정 + 21,200,29,36,32,35,2,252,0,0,0,0,0,0,21,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,63,255,255,255,253,0,191,64,63,255,255,255,253,0,191,64,63,255,255,255,253,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,191,64,0,0,255,64,0,0,191,64,0,0,255,128,0,0,191,64,0,1,255,192,11,255,255,64,0,2,255,224,11,255,255,64,0,3,255,240,11,255,255,64,0,11,251,248,0,0,191,64,0,47,243,254,0,0,191,64,0,127,209,255,128,0,191,64,1,255,128,191,244,0,191,64,31,255,0,47,255,0,191,64,191,252,0,11,255,0,191,64,127,240,0,1,252,0,191,64,63,128,0,0,24,0,191,64,24,0,0,0,0,0,191,64,0,0,0,0,0,0,0,0,0,0,1,191,255,228,0,0,0,0,127,255,255,255,128,0,0,2,255,255,255,255,248,0,0,11,255,144,0,111,253,0,0,15,244,0,0,2,255,0,0,47,224,0,0,0,191,64,0,47,208,0,0,0,127,64,0,47,224,0,0,0,191,64,0,15,244,0,0,2,255,0,0,11,255,144,0,111,253,0,0,2,255,255,255,255,248,0,0,0,127,255,255,255,128,0,0,0,1,191,255,164,0,0, + // 0xc81c 제 + 28,200,29,36,32,35,2,252,0,0,0,0,0,0,5,64,0,0,0,0,6,160,47,192,0,0,0,0,7,240,47,192,0,0,0,0,7,240,47,192,0,0,0,0,7,240,47,192,127,255,255,255,7,240,47,192,127,255,255,255,7,240,47,192,127,255,255,255,7,240,47,192,0,7,244,0,7,240,47,192,0,7,244,0,7,240,47,192,0,7,244,0,7,240,47,192,0,11,244,0,7,240,47,192,0,11,248,0,7,240,47,192,0,11,248,31,255,240,47,192,0,15,248,31,255,240,47,192,0,15,252,31,255,240,47,192,0,31,253,0,11,240,47,192,0,47,254,0,7,240,47,192,0,63,255,0,7,240,47,192,0,127,127,64,7,240,47,192,0,255,63,192,7,240,47,192,1,253,31,224,7,240,47,192,3,252,15,244,7,240,47,192,15,244,7,252,7,240,47,192,47,240,2,255,71,240,47,192,255,208,0,255,199,240,47,192,255,64,0,63,71,240,47,192,126,0,0,10,7,240,47,192,36,0,0,0,7,240,47,192,0,0,0,0,7,240,47,192,0,0,0,0,7,240,47,192,0,0,0,0,7,240,47,192,0,0,0,0,7,240,47,192,0,0,0,0,7,240,47,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,31,192, + // 0xc8fd 죽 + 253,200,31,34,16,35,2,252,3,255,255,255,255,255,255,0,3,255,255,255,255,255,255,0,3,255,255,255,255,255,255,0,0,0,0,127,244,0,0,0,0,0,0,191,248,0,0,0,0,0,1,255,252,0,0,0,0,0,7,254,255,0,0,0,0,0,47,248,191,224,0,0,0,2,255,224,63,253,0,0,1,191,255,64,11,255,249,0,31,255,252,0,1,255,255,192,15,255,144,0,0,31,255,128,7,228,0,0,0,0,111,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,2,255,255,255,255,255,252,0,2,255,255,255,255,255,252,0,2,255,255,255,255,255,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,2,252,0, + // 0xc900 준 + 0,201,31,34,16,35,2,252,3,255,255,255,255,255,255,0,3,255,255,255,255,255,255,0,3,255,255,255,255,255,255,0,0,0,0,127,244,0,0,0,0,0,0,191,244,0,0,0,0,0,0,255,252,0,0,0,0,0,2,255,254,0,0,0,0,0,11,252,255,64,0,0,0,0,47,240,127,224,0,0,0,2,255,224,47,253,0,0,0,111,255,64,11,255,228,0,15,255,253,0,1,255,255,192,15,255,208,0,0,47,255,128,7,253,0,0,0,2,255,64,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,1,254,0,15,224,0,0,0,1,254,0,15,224,0,0,0,1,254,0,15,224,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,255,255,255,255,254,0,1,255,255,255,255,255,254,0,1,255,255,255,255,255,254,0,0,0,0,0,0,0,0,0, + // 0xc911 중 + 17,201,31,34,16,35,2,252,3,255,255,255,255,255,255,0,3,255,255,255,255,255,255,0,3,255,255,255,255,255,255,0,0,0,0,127,244,0,0,0,0,0,0,255,248,0,0,0,0,0,1,255,253,0,0,0,0,0,7,254,255,64,0,0,0,0,47,248,191,224,0,0,0,6,255,224,63,254,0,0,6,255,255,64,11,255,250,64,31,255,252,0,1,255,255,192,15,255,128,0,0,27,255,128,7,164,0,0,0,0,111,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,27,255,254,144,0,0,0,7,255,255,255,254,0,0,0,47,255,255,255,255,208,0,0,127,249,0,1,191,240,0,0,255,128,0,0,15,252,0,1,255,0,0,0,3,252,0,1,254,0,0,0,3,252,0,1,255,0,0,0,3,252,0,0,255,128,0,0,15,252,0,0,127,249,0,1,191,240,0,0,47,255,255,255,255,208,0,0,2,255,255,255,254,0,0,0,0,26,255,254,144,0,0, + // 0xc990 즐 + 144,201,31,34,16,35,2,252,3,255,255,255,255,255,255,0,3,255,255,255,255,255,255,0,3,255,255,255,255,255,255,0,0,0,0,63,240,0,0,0,0,0,0,191,248,0,0,0,0,0,2,255,253,0,0,0,0,0,15,253,255,128,0,0,0,1,191,240,127,248,0,0,1,175,255,192,31,255,229,0,31,255,253,0,2,255,255,192,15,255,208,0,0,31,255,192,7,164,0,0,0,0,107,64,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,255,255,255,255,255,0,1,255,255,255,255,255,255,0,1,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0, + // 0xc9c0 지 + 192,201,28,36,252,35,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,63,255,255,255,255,0,255,63,255,255,255,255,0,255,63,255,255,255,255,0,255,0,0,191,128,0,0,255,0,0,127,128,0,0,255,0,0,127,128,0,0,255,0,0,127,128,0,0,255,0,0,127,128,0,0,255,0,0,191,128,0,0,255,0,0,191,192,0,0,255,0,0,255,192,0,0,255,0,0,255,208,0,0,255,0,1,255,224,0,0,255,0,3,255,240,0,0,255,0,7,251,248,0,0,255,0,15,242,253,0,0,255,0,47,224,255,0,0,255,0,127,192,191,192,0,255,0,255,128,63,224,0,255,3,255,0,31,252,0,255,15,253,0,11,255,128,255,191,244,0,1,255,192,255,255,208,0,0,127,64,255,63,64,0,0,11,0,255,24,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,191, + // 0xcc98 처 + 152,204,29,36,32,35,2,252,0,0,0,0,0,0,21,0,0,0,106,0,0,0,191,64,0,0,191,0,0,0,191,64,0,0,191,0,0,0,191,64,0,0,191,0,0,0,191,64,0,0,191,0,0,0,191,64,0,0,255,64,0,0,191,64,63,255,255,255,253,0,191,64,63,255,255,255,253,0,191,64,63,255,255,255,253,0,191,64,0,0,191,0,0,0,191,64,0,0,191,0,0,0,191,64,0,0,191,0,0,0,191,64,0,0,255,64,0,0,191,64,0,0,255,64,0,0,191,64,0,0,255,128,31,255,255,64,0,1,255,192,31,255,255,64,0,2,255,208,31,255,255,64,0,3,255,224,0,0,191,64,0,11,251,240,0,0,191,64,0,15,227,252,0,0,191,64,0,63,210,254,0,0,191,64,0,191,192,255,128,0,191,64,1,255,0,127,208,0,191,64,7,254,0,47,248,0,191,64,47,248,0,11,255,64,191,64,255,240,0,2,255,0,191,64,127,128,0,0,125,0,191,64,45,0,0,0,4,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,127,64, + // 0xcd08 초 + 8,205,31,31,248,35,2,0,0,0,0,26,144,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,47,224,0,0,0,7,255,255,255,255,255,255,0,7,255,255,255,255,255,255,0,7,255,255,255,255,255,255,0,0,0,0,47,224,0,0,0,0,0,0,63,224,0,0,0,0,0,0,63,240,0,0,0,0,0,0,191,248,0,0,0,0,0,1,255,253,0,0,0,0,0,7,254,255,0,0,0,0,0,31,248,191,208,0,0,0,0,255,224,63,248,0,0,0,31,255,128,11,255,144,0,27,255,253,0,1,255,255,128,31,255,224,0,0,47,255,192,15,254,0,5,64,2,255,128,6,64,0,31,208,0,6,64,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,0,0,0,31,208,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xcd95 축 + 149,205,31,36,32,35,2,252,0,0,0,21,64,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,3,255,255,255,255,255,255,0,3,255,255,255,255,255,255,0,3,255,255,255,255,255,255,0,0,0,0,63,240,0,0,0,0,0,0,127,240,0,0,0,0,0,0,255,252,0,0,0,0,0,7,255,255,64,0,0,0,0,127,244,191,244,0,0,0,111,255,208,47,255,148,0,31,255,254,0,3,255,255,192,15,255,224,0,0,111,255,128,7,164,0,0,0,0,111,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,2,255,255,255,255,255,252,0,2,255,255,255,255,255,252,0,2,255,255,255,255,255,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,2,252,0, + // 0xcd9c 출 + 156,205,31,36,32,35,2,252,0,0,0,5,64,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,3,255,255,255,255,255,255,0,3,255,255,255,255,255,255,0,3,255,255,255,255,255,255,0,0,0,0,63,240,0,0,0,0,0,0,255,248,0,0,0,0,0,3,255,255,0,0,0,0,0,111,248,255,228,0,0,1,111,255,224,63,255,165,0,31,255,255,64,7,255,255,192,15,255,228,0,0,111,255,192,11,164,0,0,0,0,107,64,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,170,170,170,170,168,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,254,0,0,0,0,0,0,1,255,255,255,255,255,255,0,1,255,255,255,255,255,255,0,1,255,255,255,255,255,255,0, + // 0xcda4 춤 + 164,205,31,36,32,35,2,252,0,0,0,5,64,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,3,255,255,255,255,255,255,0,3,255,255,255,255,255,255,0,3,255,255,255,255,255,255,0,0,0,0,63,240,0,0,0,0,0,0,127,240,0,0,0,0,0,0,255,252,0,0,0,0,0,7,255,255,64,0,0,0,0,127,244,191,244,0,0,0,111,255,208,47,255,148,0,31,255,254,0,3,255,255,192,15,255,224,0,0,111,255,192,11,164,0,0,0,0,111,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,254,0,0,0,2,252,0,1,253,0,0,0,2,252,0,1,253,0,0,0,2,252,0,1,253,0,0,0,2,252,0,1,253,0,0,0,2,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0, + // 0xcde8 취 + 232,205,29,36,32,35,2,252,0,0,21,64,0,0,106,0,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,15,255,255,255,255,64,191,64,15,255,255,255,255,64,191,64,15,255,255,255,255,64,191,64,0,0,63,208,0,0,191,64,0,0,63,208,0,0,191,64,0,0,127,240,0,0,191,64,0,0,255,248,0,0,191,64,0,2,255,253,0,0,191,64,0,11,253,255,128,0,191,64,0,127,244,127,249,0,191,64,11,255,208,31,255,192,191,64,31,255,64,7,255,64,191,64,15,248,0,0,127,0,191,64,6,64,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,85,171,240,191,64,255,255,255,255,255,244,191,64,255,255,255,255,255,244,191,64,191,255,255,254,148,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,47,192,0,0,191,64,0,0,42,128,0,0,191,64,0,0,0,0,0,0,191,64, + // 0xce58 치 + 88,206,28,36,252,35,2,252,0,0,0,0,0,0,85,0,0,42,128,0,0,191,0,0,63,192,0,0,191,0,0,63,192,0,0,191,0,0,63,192,0,0,191,0,0,63,192,0,0,191,0,0,63,192,0,0,191,47,255,255,255,255,64,191,47,255,255,255,255,64,191,47,255,255,255,255,64,191,0,0,63,192,0,0,191,0,0,63,192,0,0,191,0,0,63,192,0,0,191,0,0,63,192,0,0,191,0,0,127,192,0,0,191,0,0,127,208,0,0,191,0,0,191,224,0,0,191,0,0,255,240,0,0,191,0,1,255,244,0,0,191,0,3,251,252,0,0,191,0,7,245,254,0,0,191,0,31,240,255,128,0,191,0,63,208,127,208,0,191,0,255,128,47,244,0,191,3,255,0,15,254,0,191,31,253,0,3,255,208,191,127,244,0,0,255,192,191,47,208,0,0,31,0,191,14,0,0,0,1,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191,0,0,0,0,0,0,191, + // 0xce68 침 + 104,206,28,35,245,35,2,252,0,0,63,128,0,0,191,0,0,63,128,0,0,191,0,0,63,128,0,0,191,0,0,127,192,0,0,191,47,255,255,255,255,0,191,47,255,255,255,255,0,191,47,255,255,255,255,0,191,0,0,63,192,0,0,191,0,0,127,192,0,0,191,0,0,191,192,0,0,191,0,0,255,224,0,0,191,0,1,255,240,0,0,191,0,3,255,252,0,0,191,0,15,246,255,0,0,191,0,63,240,255,208,0,191,1,255,192,63,253,0,191,47,255,0,15,255,192,191,127,252,0,2,255,64,191,47,224,0,0,47,0,191,14,0,0,0,0,0,191,0,0,0,0,0,0,85,0,0,0,0,0,0,0,0,15,255,255,255,255,255,0,15,255,255,255,255,255,0,15,255,255,255,255,255,0,15,224,0,0,0,191,0,15,224,0,0,0,191,0,15,224,0,0,0,191,0,15,224,0,0,0,191,0,15,224,0,0,0,191,0,15,224,0,0,0,191,0,15,255,255,255,255,255,0,15,255,255,255,255,255,0,15,255,255,255,255,255,0,0,0,0,0,0,0, + // 0xce74 카 + 116,206,32,36,32,35,2,252,0,0,0,0,0,1,80,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,15,255,255,255,224,7,244,0,15,255,255,255,224,7,244,0,15,255,255,255,224,7,244,0,0,0,0,31,224,7,244,0,0,0,0,31,208,7,244,0,0,0,0,47,208,7,244,0,0,0,0,63,192,7,244,0,0,0,0,63,192,7,244,0,0,0,0,63,192,7,244,0,1,90,175,255,128,7,244,0,191,255,255,255,64,7,249,84,127,255,255,255,0,7,255,254,127,254,166,254,0,7,255,254,16,0,3,252,0,7,255,254,0,0,11,248,0,7,244,0,0,0,31,240,0,7,244,0,0,0,63,224,0,7,244,0,0,0,255,192,0,7,244,0,0,3,255,0,0,7,244,0,0,31,253,0,0,7,244,0,0,127,244,0,0,7,244,0,3,255,208,0,0,7,244,0,47,255,0,0,0,7,244,0,191,248,0,0,0,7,244,0,63,208,0,0,0,7,244,0,30,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0, + // 0xcf1c 켜 + 28,207,29,36,32,35,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,15,255,255,255,208,0,191,64,15,255,255,255,192,0,191,64,15,255,255,255,192,0,191,64,0,0,0,47,192,0,191,64,0,0,0,63,192,0,191,64,0,0,0,63,192,0,191,64,0,0,0,63,255,255,255,64,0,0,0,127,255,255,255,64,0,0,1,191,255,255,255,64,171,255,255,255,0,0,191,64,255,255,255,255,0,0,191,64,191,255,255,254,0,0,191,64,191,169,67,252,0,0,191,64,0,0,11,248,0,0,191,64,0,0,15,244,0,0,191,64,0,0,47,224,0,0,191,64,0,0,191,192,255,255,255,64,0,1,255,64,255,255,255,64,0,7,254,0,255,255,255,64,0,47,252,0,0,0,191,64,0,191,240,0,0,0,191,64,7,255,192,0,0,0,191,64,63,254,0,0,0,0,191,64,255,244,0,0,0,0,191,64,127,192,0,0,0,0,191,64,45,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,127,64, + // 0xd0d1 탑 + 209,208,31,35,24,35,3,252,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,191,255,255,255,0,15,224,0,191,255,255,255,0,15,224,0,191,255,255,255,0,15,224,0,191,0,0,0,0,15,224,0,191,0,0,0,0,15,224,0,191,0,0,0,0,15,240,0,191,255,255,254,0,15,255,248,191,255,255,254,0,15,255,248,191,255,255,254,0,15,255,248,191,64,0,0,0,15,224,0,191,0,0,0,0,15,224,0,191,0,0,0,0,15,224,0,191,64,0,90,244,15,224,0,191,255,255,255,244,15,224,0,191,255,255,255,248,15,224,0,191,255,255,250,80,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,0,0,0,85,0,0,0,5,80,0,0,254,0,0,0,15,224,0,0,254,0,0,0,15,224,0,0,254,0,0,0,15,224,0,0,255,255,255,255,255,224,0,0,255,255,255,255,255,224,0,0,255,255,255,255,255,224,0,0,254,0,0,0,15,224,0,0,254,0,0,0,15,224,0,0,254,0,0,0,15,224,0,0,254,0,0,0,15,224,0,0,255,255,255,255,255,224,0,0,255,255,255,255,255,224,0,0,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0xd130 터 + 48,209,28,36,252,35,3,252,0,0,0,0,0,0,84,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,191,255,255,255,64,2,253,191,255,255,255,64,2,253,191,255,255,255,64,2,253,191,64,0,0,0,2,253,191,64,0,0,0,2,253,191,64,0,0,0,2,253,191,64,0,0,0,2,253,191,64,0,0,0,2,253,191,64,0,0,0,2,253,191,64,0,0,0,2,253,191,255,255,252,63,255,253,191,255,255,252,63,255,253,191,255,255,252,63,255,253,191,64,0,0,0,2,253,191,64,0,0,0,2,253,191,64,0,0,0,2,253,191,64,0,0,0,2,253,191,64,0,0,0,2,253,191,64,0,0,0,2,253,191,64,0,90,180,2,253,191,255,255,255,244,2,253,191,255,255,255,248,2,253,191,255,255,250,80,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,1,253, + // 0xd14c 테 + 76,209,28,36,252,35,3,252,0,0,0,0,0,0,21,0,0,0,0,26,128,191,0,0,0,0,47,192,191,0,0,0,0,47,192,191,0,0,0,0,47,192,191,255,255,255,192,47,192,191,255,255,255,192,47,192,191,255,255,255,192,47,192,191,255,0,0,0,47,192,191,255,0,0,0,47,192,191,255,0,0,0,47,192,191,255,0,0,0,47,192,191,255,0,0,0,47,192,191,255,0,0,0,47,192,191,255,255,253,63,255,192,191,255,255,253,63,255,192,191,255,255,253,63,255,192,191,255,0,0,0,47,192,191,255,0,0,0,47,192,191,255,0,0,0,47,192,191,255,0,0,0,47,192,191,255,0,0,0,47,192,191,255,0,0,0,47,192,191,255,0,0,0,47,192,191,255,1,90,244,47,192,191,255,255,255,244,47,192,191,255,255,255,248,47,192,191,255,255,250,80,47,192,191,0,0,0,0,47,192,191,0,0,0,0,47,192,191,0,0,0,0,47,192,191,0,0,0,0,47,192,191,0,0,0,0,47,192,191,0,0,0,0,47,192,191,0,0,0,0,5,64,191,0,0,0,0,0,0,127, + // 0xd1a0 토 + 160,209,31,29,232,35,2,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,255,255,255,255,244,0,0,255,255,255,255,255,244,0,0,255,255,255,255,255,244,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,255,255,255,255,254,0,0,255,255,255,255,255,254,0,0,255,255,255,255,255,254,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,224,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252, + // 0xd2b8 트 + 184,210,31,28,224,35,2,0,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,255,255,255,255,255,248,0,0,255,255,255,255,255,248,0,0,255,255,255,255,255,248,0,0,255,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,255,255,255,255,255,254,0,0,255,255,255,255,255,254,0,0,255,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xd39c 펜 + 156,211,30,36,32,35,2,252,0,0,0,0,0,0,21,64,0,0,0,0,2,164,47,192,0,0,0,0,3,248,47,192,0,0,0,0,3,248,47,192,191,255,255,255,3,248,47,192,191,255,255,255,3,248,47,192,191,255,255,255,3,248,47,192,3,244,15,208,3,248,47,192,3,244,15,208,3,248,47,192,3,244,15,208,3,248,47,192,3,244,15,208,3,248,47,192,3,244,15,211,255,248,47,192,3,244,15,211,255,248,47,192,3,244,15,211,255,248,47,192,3,244,15,208,3,248,47,192,3,244,15,208,3,248,47,192,3,244,15,208,3,248,47,192,3,244,15,230,67,248,47,192,255,255,255,255,195,248,47,192,255,255,255,255,195,248,47,192,255,255,255,233,3,248,47,192,0,0,0,0,3,248,47,192,0,0,0,0,3,248,47,192,0,0,0,0,3,248,47,192,0,7,244,0,3,248,47,192,0,7,244,0,3,248,47,192,0,7,244,0,0,0,47,192,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,244,0,0,0,0,0,0,7,255,255,255,255,255,240,0,7,255,255,255,255,255,240,0,7,255,255,255,255,255,240,0,0,0,0,0,0,0,0, + // 0xd504 프 + 4,213,31,28,224,35,2,0,11,255,255,255,255,255,255,64,11,255,255,255,255,255,255,64,11,255,255,255,255,255,255,64,0,2,254,0,2,253,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,1,253,0,2,252,0,0,0,2,254,0,2,253,0,0,7,255,255,255,255,255,255,0,7,255,255,255,255,255,255,0,7,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xd558 하 + 88,213,33,36,68,35,1,252,0,0,0,0,0,0,84,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,254,0,0,127,255,255,255,255,193,254,0,0,127,255,255,255,255,193,254,0,0,127,255,255,255,255,193,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,2,255,248,0,1,254,0,0,0,31,255,255,64,1,254,0,0,0,191,255,255,208,1,254,85,0,1,255,144,127,240,1,255,255,192,3,253,0,11,248,1,255,255,192,3,252,0,3,252,1,255,255,192,7,244,0,2,253,1,254,0,0,11,240,0,1,253,1,254,0,0,11,240,0,1,253,1,254,0,0,7,244,0,2,253,1,254,0,0,3,252,0,3,252,1,254,0,0,3,253,0,11,248,1,254,0,0,1,255,144,127,240,1,254,0,0,0,191,255,255,208,1,254,0,0,0,47,255,255,64,1,254,0,0,0,2,255,248,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,253,0,0, + // 0xd569 합 + 105,213,32,36,32,35,2,252,0,0,170,0,0,1,84,0,0,0,255,0,0,3,248,0,0,0,255,0,0,3,248,0,0,0,255,0,0,3,248,0,255,255,255,255,255,3,248,0,255,255,255,255,255,3,248,0,255,255,255,255,255,3,248,0,0,0,0,0,0,3,248,0,0,6,190,144,0,3,248,0,0,127,255,253,0,3,252,0,2,255,255,255,192,3,255,254,7,254,0,191,224,3,255,254,15,244,0,15,240,3,255,254,15,224,0,11,244,3,248,0,15,224,0,7,244,3,248,0,15,224,0,11,244,3,248,0,15,244,0,15,240,3,248,0,7,254,0,127,224,3,248,0,2,255,255,255,192,3,248,0,0,127,255,254,0,3,248,0,0,6,191,144,0,3,248,0,0,0,0,0,0,1,84,0,0,21,0,0,0,0,16,0,0,63,128,0,0,3,248,0,0,63,128,0,0,3,248,0,0,63,128,0,0,3,248,0,0,63,255,255,255,255,248,0,0,63,255,255,255,255,248,0,0,63,255,255,255,255,248,0,0,63,128,0,0,3,248,0,0,63,128,0,0,3,248,0,0,63,128,0,0,3,248,0,0,63,255,255,255,255,248,0,0,63,255,255,255,255,248,0,0,63,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0xd648 홈 + 72,214,31,35,24,35,2,253,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,47,255,255,255,255,255,255,192,47,255,255,255,255,255,255,192,47,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,5,170,169,64,0,0,0,2,255,255,255,253,0,0,0,31,255,255,255,255,208,0,0,127,249,0,1,191,240,0,0,191,192,0,0,15,248,0,0,255,64,0,0,11,248,0,0,191,192,0,0,15,248,0,0,127,249,0,1,191,240,0,0,31,255,255,255,255,208,0,0,2,255,255,255,254,0,0,0,0,6,191,249,64,0,0,0,0,0,47,208,0,0,0,0,0,0,47,208,0,0,0,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,253,0,0,0,2,252,0,1,253,0,0,0,2,252,0,1,253,0,0,0,2,252,0,1,253,0,0,0,2,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0,1,255,255,255,255,255,252,0, + // 0xd654 화 + 84,214,33,35,59,35,1,252,0,0,47,208,0,0,254,0,0,0,0,47,208,0,0,254,0,0,0,0,47,208,0,0,254,0,0,0,0,47,208,0,0,254,0,0,63,255,255,255,255,224,254,0,0,63,255,255,255,255,224,254,0,0,63,255,255,255,255,224,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,1,175,232,0,0,254,0,0,0,31,255,255,128,0,254,0,0,0,127,255,255,240,0,254,0,0,0,255,128,27,252,0,254,0,0,2,253,0,2,253,0,254,0,0,3,252,0,0,254,0,255,255,128,3,252,0,0,253,0,255,255,128,2,252,0,2,253,0,255,255,128,1,255,0,3,252,0,255,0,0,0,255,208,47,248,0,254,0,0,0,63,255,255,240,0,254,0,0,0,15,255,255,128,0,254,0,0,0,1,191,244,0,0,254,0,0,0,0,47,208,0,0,254,0,0,0,0,47,208,0,0,254,0,0,0,0,47,213,106,240,254,0,0,127,255,255,255,255,240,254,0,0,63,255,255,255,255,240,254,0,0,63,255,255,254,164,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0, + // 0xd788 히 + 136,215,28,36,252,35,2,252,0,0,0,0,0,0,85,0,0,63,192,0,0,255,0,0,63,192,0,0,255,0,0,63,192,0,0,255,0,0,63,192,0,0,255,0,0,63,192,0,0,255,127,255,255,255,255,192,255,127,255,255,255,255,192,255,127,255,255,255,255,192,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,2,255,248,0,0,255,0,31,255,255,64,0,255,0,191,255,255,224,0,255,1,255,144,127,244,0,255,3,253,0,11,252,0,255,7,248,0,3,252,0,255,11,244,0,1,253,0,255,11,240,0,1,254,0,255,11,240,0,1,254,0,255,11,244,0,1,253,0,255,7,248,0,3,252,0,255,3,253,0,11,252,0,255,1,255,144,111,244,0,255,0,191,255,255,224,0,255,0,47,255,255,64,0,255,0,2,255,248,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,191, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Latin_Extended_A_28.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Latin_Extended_A_28.cpp new file mode 100644 index 000000000000..d3e85b6375a8 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Latin_Extended_A_28.cpp @@ -0,0 +1,288 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Latin Extended-A 38pt, capital 'A' height: 28px, width: 100%, range: 0x0100-0x017f +extern const uint8_t NotoSans_Medium_Latin_Extended_A_28[21187] = { + 130,28,0,1,127,1,37,246, // unifont_t + // 0x0100 Ā + 25,33,231,25,0,0,0,7,255,255,240,0,0,0,7,255,255,240,0,0,0,7,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x0101 ā + 18,27,135,22,1,255,0,255,255,254,0,0,255,255,254,0,0,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x0102 Ă + 25,36,252,25,0,0,0,5,0,0,84,0,0,0,15,128,0,248,0,0,0,11,228,7,240,0,0,0,3,255,255,224,0,0,0,1,255,255,128,0,0,0,0,47,249,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x0103 ă + 18,30,150,22,1,255,0,80,0,5,0,1,240,0,47,0,0,253,1,190,0,0,127,255,252,0,0,47,255,244,0,0,6,255,128,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x0104 Ą + 25,37,3,25,0,247,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128,0,0,0,0,0,188,0,0,0,0,0,2,244,0,0,0,0,0,7,224,0,0,0,0,0,15,192,0,0,0,0,0,15,192,0,0,0,0,0,15,224,0,0,0,0,0,11,255,128,0,0,0,0,3,255,128,0,0,0,0,0,105,0, + // 0x0105 ą + 19,30,150,22,1,247,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,11,192,0,0,0,47,64,0,0,0,126,0,0,0,0,252,0,0,0,0,252,0,0,0,0,253,0,0,0,0,191,248,0,0,0,63,248,0,0,0,6,144, + // 0x0106 Ć + 21,37,222,24,2,255,0,0,0,31,248,0,0,0,0,63,224,0,0,0,0,191,128,0,0,0,1,254,0,0,0,0,3,248,0,0,0,0,11,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,85,0,0,0,1,255,255,249,0,0,31,255,255,255,128,0,127,255,255,255,0,1,255,244,1,191,0,3,255,64,0,4,0,15,252,0,0,0,0,31,244,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,63,208,0,0,0,0,63,240,0,0,0,0,31,244,0,0,0,0,15,252,0,0,0,0,7,255,64,0,0,0,2,255,249,1,111,0,0,191,255,255,255,0,0,31,255,255,255,0,0,2,255,255,249,0,0,0,1,84,0,0, + // 0x0107 ć + 15,30,120,19,2,255,0,0,15,252,0,0,47,240,0,0,63,192,0,0,255,0,0,2,252,0,0,7,240,0,0,0,0,0,0,0,0,0,0,6,254,144,0,191,255,252,3,255,255,252,15,255,171,248,47,244,0,16,63,208,0,0,127,192,0,0,191,128,0,0,255,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,0,191,128,0,0,127,192,0,0,63,240,0,0,31,253,0,124,11,255,255,252,2,255,255,252,0,47,255,244,0,0,84,0, + // 0x0108 Ĉ + 21,37,222,24,2,255,0,0,15,252,0,0,0,0,63,254,0,0,0,0,255,255,64,0,0,2,253,47,208,0,0,11,244,11,244,0,0,31,128,1,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,85,0,0,0,1,255,255,249,0,0,31,255,255,255,128,0,127,255,255,255,0,1,255,244,1,191,0,3,255,64,0,4,0,15,252,0,0,0,0,31,244,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,63,208,0,0,0,0,63,240,0,0,0,0,31,244,0,0,0,0,15,252,0,0,0,0,7,255,64,0,0,0,2,255,249,1,111,0,0,191,255,255,255,0,0,31,255,255,255,0,0,2,255,255,249,0,0,0,1,84,0,0, + // 0x0109 ĉ + 16,30,120,19,2,255,0,15,253,0,0,47,255,0,0,127,255,192,0,254,31,240,3,248,3,248,15,208,0,190,0,0,0,0,0,0,0,0,0,6,254,144,0,191,255,252,3,255,255,252,15,255,171,248,47,244,0,16,63,208,0,0,127,192,0,0,191,128,0,0,255,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,0,191,128,0,0,127,192,0,0,63,240,0,0,31,253,0,124,11,255,255,252,2,255,255,252,0,47,255,244,0,0,84,0, + // 0x010a Ċ + 21,36,216,24,2,255,0,0,7,240,0,0,0,0,15,248,0,0,0,0,15,248,0,0,0,0,7,240,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,85,0,0,0,1,255,255,249,0,0,31,255,255,255,128,0,127,255,255,255,0,1,255,244,1,191,0,3,255,64,0,4,0,15,252,0,0,0,0,31,244,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,63,208,0,0,0,0,63,240,0,0,0,0,31,244,0,0,0,0,15,252,0,0,0,0,7,255,64,0,0,0,2,255,249,1,111,0,0,191,255,255,255,0,0,31,255,255,255,0,0,2,255,255,249,0,0,0,1,84,0,0, + // 0x010b ċ + 15,29,116,19,2,255,0,3,248,0,0,7,252,0,0,7,252,0,0,3,248,0,0,0,64,0,0,0,0,0,0,0,0,0,0,6,254,144,0,191,255,252,3,255,255,252,15,255,171,248,47,244,0,16,63,208,0,0,127,192,0,0,191,128,0,0,255,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,0,191,128,0,0,127,192,0,0,63,240,0,0,31,253,0,124,11,255,255,252,2,255,255,252,0,47,255,244,0,0,84,0, + // 0x010c Č + 21,37,222,24,2,255,0,31,192,1,252,0,0,7,244,11,240,0,0,2,253,47,208,0,0,0,191,255,64,0,0,0,63,254,0,0,0,0,15,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,85,0,0,0,1,255,255,249,0,0,31,255,255,255,128,0,127,255,255,255,0,1,255,244,1,191,0,3,255,64,0,4,0,15,252,0,0,0,0,31,244,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,63,208,0,0,0,0,63,240,0,0,0,0,31,244,0,0,0,0,15,252,0,0,0,0,7,255,64,0,0,0,2,255,249,1,111,0,0,191,255,255,255,0,0,31,255,255,255,0,0,2,255,255,249,0,0,0,1,84,0,0, + // 0x010d č + 16,30,120,19,2,255,15,208,0,254,3,248,7,248,0,255,31,224,0,127,255,192,0,31,255,0,0,11,253,0,0,0,0,0,0,0,0,0,0,6,254,144,0,191,255,252,3,255,255,252,15,255,171,248,47,244,0,16,63,208,0,0,127,192,0,0,191,128,0,0,255,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,64,0,0,191,128,0,0,127,192,0,0,63,240,0,0,31,253,0,124,11,255,255,252,2,255,255,252,0,47,255,244,0,0,84,0, + // 0x010e Ď + 23,36,216,28,3,0,0,253,0,15,224,0,0,63,128,127,128,0,0,15,241,254,0,0,0,7,255,252,0,0,0,1,255,240,0,0,0,0,191,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,228,0,0,127,255,255,255,64,0,127,255,255,255,240,0,127,213,86,255,252,0,127,128,0,31,255,0,127,128,0,2,255,128,127,128,0,0,191,192,127,128,0,0,63,224,127,128,0,0,47,240,127,128,0,0,15,240,127,128,0,0,15,244,127,128,0,0,15,244,127,128,0,0,15,248,127,128,0,0,11,248,127,128,0,0,15,244,127,128,0,0,15,244,127,128,0,0,15,244,127,128,0,0,31,240,127,128,0,0,47,240,127,128,0,0,63,208,127,128,0,0,255,192,127,128,0,3,255,64,127,128,0,47,254,0,127,213,107,255,248,0,127,255,255,255,208,0,127,255,255,254,0,0,127,255,255,144,0,0, + // 0x010f ď + 25,30,210,24,2,255,0,0,0,11,244,63,128,0,0,0,11,244,63,128,0,0,0,11,244,127,0,0,0,0,11,244,190,0,0,0,0,11,244,252,0,0,0,0,11,244,248,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,27,232,11,244,0,0,1,255,255,139,244,0,0,7,255,255,247,244,0,0,15,254,155,255,244,0,0,63,244,0,127,244,0,0,63,208,0,47,244,0,0,191,192,0,15,244,0,0,191,128,0,15,244,0,0,255,64,0,11,244,0,0,255,0,0,11,244,0,0,255,0,0,7,244,0,0,255,0,0,7,244,0,0,255,0,0,11,244,0,0,255,64,0,11,244,0,0,191,128,0,15,244,0,0,127,192,0,15,244,0,0,63,224,0,63,244,0,0,47,248,1,255,244,0,0,15,255,255,251,244,0,0,3,255,255,211,244,0,0,0,127,254,3,244,0,0,0,1,64,0,0,0,0, + // 0x0110 Đ + 25,27,189,28,1,0,3,255,255,254,64,0,0,3,255,255,255,244,0,0,3,255,255,255,255,0,0,3,253,85,111,255,192,0,3,252,0,1,255,240,0,3,252,0,0,47,248,0,3,252,0,0,11,252,0,3,252,0,0,3,254,0,3,252,0,0,2,255,0,3,252,0,0,0,255,0,3,252,0,0,0,255,64,7,252,0,0,0,255,64,255,255,255,192,0,255,128,255,255,255,192,0,191,128,255,255,255,192,0,255,64,87,253,85,64,0,255,64,3,252,0,0,0,255,64,3,252,0,0,1,255,0,3,252,0,0,2,255,0,3,252,0,0,3,253,0,3,252,0,0,15,252,0,3,252,0,0,63,244,0,3,252,0,2,255,224,0,3,253,86,191,255,128,0,3,255,255,255,253,0,0,3,255,255,255,224,0,0,3,255,255,233,0,0,0, + // 0x0111 đ + 22,30,180,24,2,255,0,0,0,11,244,0,0,0,0,11,244,0,0,0,0,11,244,0,0,2,170,175,254,128,0,3,255,255,255,208,0,3,255,255,255,208,0,0,0,11,248,0,0,0,0,11,244,0,0,5,80,11,244,0,0,191,255,75,244,0,3,255,255,215,244,0,15,255,255,255,244,0,47,248,1,255,244,0,63,224,0,63,244,0,127,192,0,15,244,0,191,128,0,15,244,0,255,64,0,11,244,0,255,0,0,11,244,0,255,0,0,7,244,0,255,0,0,7,244,0,255,0,0,11,244,0,255,64,0,11,244,0,191,128,0,15,244,0,127,192,0,15,244,0,63,224,0,47,244,0,47,248,1,255,244,0,15,255,255,251,244,0,3,255,255,211,244,0,0,191,254,3,244,0,0,1,64,0,0,0, + // 0x0112 Ē + 16,33,132,21,3,0,7,255,255,244,7,255,255,244,7,255,255,244,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x0113 ē + 18,27,135,22,2,255,3,255,255,252,0,3,255,255,252,0,3,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x0114 Ĕ + 16,36,144,21,3,0,5,64,0,84,11,192,0,248,7,228,7,244,3,255,255,240,0,255,255,192,0,31,249,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x0115 ĕ + 18,30,150,22,2,255,1,64,0,20,0,3,208,0,124,0,3,244,6,252,0,1,255,255,240,0,0,191,255,208,0,0,27,254,0,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x0116 Ė + 16,35,140,21,3,0,0,3,244,0,0,11,248,0,0,11,252,0,0,7,244,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x0117 ė + 18,29,145,22,2,255,0,3,248,0,0,0,7,252,0,0,0,7,252,0,0,0,3,248,0,0,0,0,80,0,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x0118 Ę + 16,36,144,21,3,247,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255,0,0,2,244,0,0,7,208,0,0,15,192,0,0,47,64,0,0,63,0,0,0,63,128,0,0,47,255,0,0,15,255,0,0,1,164, + // 0x0119 ę + 18,30,150,22,2,247,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,255,64,0,0,85,253,0,0,0,2,244,0,0,0,7,224,0,0,0,15,192,0,0,0,15,192,0,0,0,15,224,0,0,0,11,255,128,0,0,3,255,128,0,0,0,105,0, + // 0x011a Ě + 16,36,144,21,3,0,15,208,1,253,7,248,11,244,1,254,47,208,0,191,255,128,0,47,254,0,0,15,252,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x011b ě + 18,30,150,22,2,255,15,224,0,190,0,3,252,3,252,0,0,255,31,240,0,0,63,255,192,0,0,31,255,0,0,0,11,253,0,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x011c Ĝ + 23,37,222,28,2,255,0,0,7,255,0,0,0,0,15,255,128,0,0,0,63,255,208,0,0,0,191,75,244,0,0,2,253,2,253,0,0,7,224,0,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,89,80,0,0,0,191,255,255,128,0,11,255,255,255,244,0,63,255,255,255,240,1,255,249,0,27,208,3,255,128,0,0,64,11,253,0,0,0,0,31,248,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,128,0,42,170,164,191,128,0,63,255,248,191,128,0,63,255,248,191,128,0,63,255,248,127,192,0,0,7,248,127,192,0,0,7,248,63,208,0,0,7,248,63,240,0,0,7,248,31,244,0,0,7,248,15,253,0,0,7,248,3,255,64,0,7,248,1,255,249,0,91,248,0,127,255,255,255,248,0,31,255,255,255,248,0,1,191,255,255,144,0,0,0,85,0,0, + // 0x011d ĝ + 19,39,195,24,2,246,0,3,255,0,0,0,15,255,128,0,0,47,255,224,0,0,191,75,244,0,1,253,1,253,0,7,240,0,63,0,0,0,0,0,0,0,0,0,0,0,0,27,232,1,80,1,255,255,131,244,7,255,255,243,244,15,255,171,255,244,47,244,0,191,244,63,208,0,47,244,127,192,0,15,244,191,128,0,15,244,255,64,0,11,244,255,0,0,11,244,255,0,0,7,244,255,0,0,7,244,255,0,0,7,244,255,64,0,11,244,191,128,0,15,244,127,192,0,15,244,63,224,0,47,244,47,248,0,191,244,15,255,255,251,244,3,255,255,219,244,0,191,254,11,244,0,1,80,11,244,0,0,0,11,244,0,0,0,15,240,0,0,0,31,240,16,0,0,63,224,47,148,2,255,192,47,255,255,255,64,47,255,255,253,0,2,191,255,144,0,0,0,0,0,0, + // 0x011e Ğ + 23,37,222,28,2,255,0,1,64,0,21,0,0,3,224,0,61,0,0,2,249,1,252,0,0,0,255,255,248,0,0,0,127,255,224,0,0,0,11,254,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,89,80,0,0,0,191,255,255,128,0,11,255,255,255,244,0,63,255,255,255,240,1,255,249,0,27,208,3,255,128,0,0,64,11,253,0,0,0,0,31,248,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,128,0,42,170,164,191,128,0,63,255,248,191,128,0,63,255,248,191,128,0,63,255,248,127,192,0,0,7,248,127,192,0,0,7,248,63,208,0,0,7,248,63,240,0,0,7,248,31,244,0,0,7,248,15,253,0,0,7,248,3,255,64,0,7,248,1,255,249,0,91,248,0,127,255,255,255,248,0,31,255,255,255,248,0,1,191,255,255,144,0,0,0,85,0,0, + // 0x011f ğ + 19,39,195,24,2,246,1,80,0,21,0,2,240,0,62,0,1,249,1,253,0,0,255,255,248,0,0,63,255,224,0,0,7,254,64,0,0,0,0,0,0,0,0,0,0,0,0,27,232,1,80,1,255,255,131,244,7,255,255,243,244,15,255,171,255,244,47,244,0,191,244,63,208,0,47,244,127,192,0,15,244,191,128,0,15,244,255,64,0,11,244,255,0,0,11,244,255,0,0,7,244,255,0,0,7,244,255,0,0,7,244,255,64,0,11,244,191,128,0,15,244,127,192,0,15,244,63,224,0,47,244,47,248,0,191,244,15,255,255,251,244,3,255,255,219,244,0,191,254,11,244,0,1,80,11,244,0,0,0,11,244,0,0,0,15,240,0,0,0,31,240,16,0,0,63,224,47,148,2,255,192,47,255,255,255,64,47,255,255,253,0,2,191,255,144,0,0,0,0,0,0, + // 0x0120 Ġ + 23,36,216,28,2,255,0,0,1,252,0,0,0,0,3,254,0,0,0,0,3,254,0,0,0,0,1,252,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,89,80,0,0,0,191,255,255,128,0,11,255,255,255,244,0,63,255,255,255,240,1,255,249,0,27,208,3,255,128,0,0,64,11,253,0,0,0,0,31,248,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,128,0,42,170,164,191,128,0,63,255,248,191,128,0,63,255,248,191,128,0,63,255,248,127,192,0,0,7,248,127,192,0,0,7,248,63,208,0,0,7,248,63,240,0,0,7,248,31,244,0,0,7,248,15,253,0,0,7,248,3,255,64,0,7,248,1,255,249,0,91,248,0,127,255,255,255,248,0,31,255,255,255,248,0,1,191,255,255,144,0,0,0,85,0,0, + // 0x0121 ġ + 19,38,190,24,2,246,0,1,252,0,0,0,2,254,0,0,0,2,254,0,0,0,1,253,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,27,232,1,80,1,255,255,131,244,7,255,255,243,244,15,255,171,255,244,47,244,0,191,244,63,208,0,47,244,127,192,0,15,244,191,128,0,15,244,255,64,0,11,244,255,0,0,11,244,255,0,0,7,244,255,0,0,7,244,255,0,0,7,244,255,64,0,11,244,191,128,0,15,244,127,192,0,15,244,63,224,0,47,244,47,248,0,191,244,15,255,255,251,244,3,255,255,219,244,0,191,254,11,244,0,1,80,11,244,0,0,0,11,244,0,0,0,15,240,0,0,0,31,240,16,0,0,63,224,47,148,2,255,192,47,255,255,255,64,47,255,255,253,0,2,191,255,144,0,0,0,0,0,0, + // 0x0122 Ģ + 23,37,222,28,2,247,0,0,1,89,80,0,0,0,191,255,255,128,0,11,255,255,255,244,0,63,255,255,255,240,1,255,249,0,27,208,3,255,128,0,0,64,11,253,0,0,0,0,31,248,0,0,0,0,47,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,128,0,0,0,0,191,128,0,42,170,164,191,128,0,63,255,248,191,128,0,63,255,248,191,128,0,63,255,248,127,192,0,0,7,248,127,192,0,0,7,248,63,208,0,0,7,248,63,240,0,0,7,248,31,244,0,0,7,248,15,253,0,0,7,248,3,255,64,0,7,248,1,255,249,0,91,248,0,127,255,255,255,248,0,31,255,255,255,248,0,1,191,255,255,144,0,0,0,85,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,0,1,253,0,0,0,0,2,252,0,0,0,0,3,248,0,0,0,0,3,240,0,0,0,0,7,208,0,0,0,0,1,64,0,0, + // 0x0123 ģ + 19,39,195,24,2,246,0,0,47,0,0,0,0,62,0,0,0,0,253,0,0,0,1,252,0,0,0,3,252,0,0,0,3,248,0,0,0,0,0,0,0,0,0,0,0,0,0,27,232,1,80,1,255,255,131,244,7,255,255,243,244,15,255,171,255,244,47,244,0,191,244,63,208,0,47,244,127,192,0,15,244,191,128,0,15,244,255,64,0,11,244,255,0,0,11,244,255,0,0,7,244,255,0,0,7,244,255,0,0,7,244,255,64,0,11,244,191,128,0,15,244,127,192,0,15,244,63,224,0,47,244,47,248,0,191,244,15,255,255,251,244,3,255,255,219,244,0,191,254,11,244,0,1,80,11,244,0,0,0,11,244,0,0,0,15,240,0,0,0,31,240,16,0,0,63,224,47,148,2,255,192,47,255,255,255,64,47,255,255,253,0,2,191,255,144,0,0,0,0,0,0, + // 0x0124 Ĥ + 22,36,216,28,3,0,0,0,127,240,0,0,0,0,255,248,0,0,0,3,255,253,0,0,0,15,240,255,0,0,0,47,192,47,192,0,0,190,0,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,255,255,255,255,240,127,255,255,255,255,240,127,255,255,255,255,240,127,234,170,170,175,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240,127,128,0,0,31,240, + // 0x0125 ĥ + 23,37,222,24,254,0,0,127,240,0,0,0,0,255,248,0,0,0,3,255,253,0,0,0,15,240,255,0,0,0,47,192,47,192,0,0,190,0,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,107,228,0,0,63,195,255,255,64,0,63,207,255,255,208,0,63,255,230,255,240,0,63,252,0,31,244,0,63,244,0,11,248,0,63,240,0,7,252,0,63,224,0,3,252,0,63,208,0,3,252,0,63,192,0,3,252,0,63,192,0,3,252,0,63,192,0,3,252,0,63,192,0,3,252,0,63,192,0,3,252,0,63,192,0,3,252,0,63,192,0,3,252,0,63,192,0,3,252,0,63,192,0,3,252,0,63,192,0,3,252,0,63,192,0,3,252,0,63,192,0,3,252, + // 0x0126 Ħ + 29,27,216,28,0,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,64,1,255,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,255,255,255,255,255,192,0,1,255,255,255,255,255,192,0,1,255,255,255,255,255,192,0,1,255,170,170,170,191,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0,1,254,0,0,0,127,192,0, + // 0x0127 ħ + 21,29,174,24,0,0,2,252,0,0,0,0,3,252,0,0,0,0,3,252,0,0,0,0,107,254,170,164,0,0,191,255,255,248,0,0,191,255,255,248,0,0,23,253,85,80,0,0,3,252,0,0,0,0,3,252,0,0,0,0,3,252,6,255,128,0,3,252,127,255,248,0,3,253,255,255,254,0,3,255,249,91,255,0,3,255,192,0,255,128,3,255,0,0,191,128,3,255,0,0,127,192,3,253,0,0,63,192,3,253,0,0,63,192,3,252,0,0,63,192,3,252,0,0,63,192,3,252,0,0,63,192,3,252,0,0,63,192,3,252,0,0,63,192,3,252,0,0,63,192,3,252,0,0,63,192,3,252,0,0,63,192,3,252,0,0,63,192,3,252,0,0,63,192,3,252,0,0,63,192, + // 0x0128 Ĩ + 15,35,140,13,255,0,7,253,0,124,15,255,209,248,63,255,255,240,61,7,255,224,124,0,127,64,0,0,0,0,0,0,0,0,0,0,0,0,11,255,255,192,11,255,255,192,2,255,254,64,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,2,255,255,64,11,255,255,192,11,255,255,192, + // 0x0129 ĩ + 15,28,112,10,254,0,11,248,0,244,63,255,130,240,127,255,255,224,188,11,255,192,244,0,190,0,0,0,0,0,0,0,0,0,0,21,64,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0, + // 0x012a Ī + 12,33,99,13,1,0,255,255,254,255,255,254,255,255,254,0,0,0,0,0,0,0,0,0,191,255,252,191,255,252,47,255,228,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,47,255,244,191,255,252,191,255,252, + // 0x012b ī + 12,26,78,10,255,0,191,255,255,191,255,255,191,255,255,0,0,0,0,0,0,0,85,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0, + // 0x012c Ĭ + 13,36,144,13,0,0,84,0,1,64,124,0,11,192,63,64,111,128,47,255,255,0,15,255,252,0,1,191,208,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,0,47,255,255,0,11,255,249,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,0,127,192,0,11,255,253,0,47,255,255,0,47,255,255,0, + // 0x012d ĭ + 13,29,116,10,255,0,80,0,5,0,244,0,31,64,253,0,191,0,127,255,253,0,31,255,244,0,2,255,128,0,0,0,0,0,0,0,0,0,0,85,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0, + // 0x012e Į + 11,36,108,13,1,247,191,255,252,191,255,252,47,255,228,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,47,255,244,191,255,252,191,255,252,0,7,208,0,31,128,0,63,0,0,189,0,0,189,0,0,190,0,0,127,252,0,47,252,0,6,148, + // 0x012f į + 7,37,74,10,1,247,11,240,15,244,15,244,11,240,0,64,0,0,0,0,5,80,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,15,240,7,208,31,128,63,0,189,0,189,0,190,0,127,252,47,252,6,148, + // 0x0130 İ + 11,35,105,13,1,0,0,254,0,1,255,0,1,255,0,0,254,0,0,16,0,0,0,0,0,0,0,0,0,0,191,255,252,191,255,252,47,255,228,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,47,255,244,191,255,252,191,255,252, + // 0x0131 ı + 4,21,21,10,3,0,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x0132 IJ + 20,35,175,24,1,248,191,255,252,0,255,191,255,252,0,255,47,255,228,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,1,255,0,0,255,47,255,244,0,255,191,255,252,0,255,191,255,252,0,255,0,0,0,0,255,0,0,0,1,255,0,0,0,3,254,0,0,4,31,252,0,0,31,255,248,0,0,31,255,240,0,0,31,255,128,0,0,1,80,0, + // 0x0133 ij + 15,38,152,21,3,246,191,0,7,244,255,64,11,248,255,64,11,252,191,0,7,244,4,0,0,64,0,0,0,0,0,0,0,0,85,0,1,84,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,255,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,244,0,0,15,244,0,20,111,240,0,63,255,224,0,63,255,192,0,47,254,0,0,0,0,0, + // 0x0134 Ĵ + 16,44,176,11,253,248,0,15,252,0,0,63,255,0,0,191,255,128,2,253,47,224,7,244,7,244,15,192,0,253,0,0,0,0,0,0,0,0,0,0,0,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,244,0,0,15,244,0,0,31,240,0,64,127,240,0,255,255,208,0,255,255,64,0,255,252,0,0,21,64,0,0, + // 0x0135 ĵ + 14,39,156,10,254,246,0,127,224,0,0,255,244,0,3,255,253,0,15,240,255,0,47,192,47,192,190,0,7,240,0,0,0,0,0,0,0,0,0,21,64,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,65,255,192,0,255,255,64,0,255,254,0,0,255,244,0,0,0,0,0,0, + // 0x0136 Ķ + 21,36,216,24,3,247,127,128,0,2,255,0,127,128,0,7,253,0,127,128,0,31,244,0,127,128,0,63,224,0,127,128,0,255,128,0,127,128,3,255,0,0,127,128,11,252,0,0,127,128,47,240,0,0,127,128,127,192,0,0,127,129,255,64,0,0,127,131,253,0,0,0,127,143,248,0,0,0,127,255,252,0,0,0,127,255,254,0,0,0,127,255,255,64,0,0,127,240,255,192,0,0,127,192,63,224,0,0,127,128,31,244,0,0,127,128,15,252,0,0,127,128,3,255,0,0,127,128,1,255,64,0,127,128,0,191,192,0,127,128,0,63,240,0,127,128,0,15,248,0,127,128,0,11,253,0,127,128,0,3,255,0,127,128,0,0,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,0,0,0,0,0,191,0,0,0,0,0,254,0,0,0,0,0,252,0,0,0,0,1,248,0,0,0,0,3,240,0,0,0,0,1,64,0,0,0, + // 0x0137 ķ + 18,38,190,21,3,247,191,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,21,64,255,0,0,255,128,255,0,3,254,0,255,0,15,248,0,255,0,63,224,0,255,0,255,192,0,255,2,255,0,0,255,11,252,0,0,255,47,240,0,0,255,127,208,0,0,255,255,240,0,0,255,255,252,0,0,255,227,254,0,0,255,129,255,64,0,255,0,191,192,0,255,0,63,240,0,255,0,15,248,0,255,0,7,253,0,255,0,2,255,0,255,0,0,255,192,255,0,0,63,224,0,0,0,0,0,0,0,0,0,0,0,6,160,0,0,0,15,240,0,0,0,15,224,0,0,0,31,192,0,0,0,47,64,0,0,0,63,0,0,0,0,20,0,0,0, + // 0x0138 ĸ + 18,21,105,21,3,0,85,0,0,21,64,255,64,0,255,128,255,64,3,254,0,255,64,11,252,0,255,64,47,240,0,255,64,127,192,0,255,65,255,64,0,255,67,253,0,0,255,15,248,0,0,255,63,240,0,0,255,191,240,0,0,255,255,252,0,0,255,247,254,0,0,255,192,255,64,0,255,64,127,192,0,255,64,47,240,0,255,64,15,248,0,255,64,7,253,0,255,64,2,255,0,255,64,0,255,192,255,64,0,63,224, + // 0x0139 Ĺ + 17,36,180,20,3,0,0,255,128,0,0,3,255,0,0,0,7,252,0,0,0,15,240,0,0,0,63,128,0,0,0,190,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,234,170,170,0,127,255,255,255,64,127,255,255,255,64,127,255,255,255,64, + // 0x013a ĺ + 9,37,111,10,3,0,2,255,64,3,253,0,15,244,0,47,208,0,127,64,0,253,0,0,0,0,0,0,0,0,191,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, + // 0x013b Ļ + 17,36,180,20,3,247,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,234,170,170,0,127,255,255,255,64,127,255,255,255,64,127,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,2,168,0,0,0,3,252,0,0,0,3,244,0,0,0,7,240,0,0,0,11,208,0,0,0,15,128,0,0,0,5,0,0,0, + // 0x013c ļ + 6,38,76,10,2,247,47,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,0,0,0,0,10,160,31,224,31,192,47,128,63,0,125,0,20,0, + // 0x013d Ľ + 17,27,135,20,3,0,127,128,0,127,128,127,128,0,127,0,127,128,0,190,0,127,128,0,252,0,127,128,0,248,0,127,128,1,240,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,234,170,170,0,127,255,255,255,64,127,255,255,255,64,127,255,255,255,64, + // 0x013e ľ + 11,29,87,10,3,0,191,3,248,255,7,244,255,11,240,255,15,208,255,15,192,255,31,64,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, + // 0x013f Ŀ + 17,27,135,20,3,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,11,240,0,127,128,15,244,0,127,128,15,244,0,127,128,11,240,0,127,128,0,64,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,234,170,170,0,127,255,255,255,64,127,255,255,255,64,127,255,255,255,64, + // 0x0140 ŀ + 10,29,87,11,3,0,191,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,15,208,255,31,240,255,31,240,255,15,224,255,1,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, + // 0x0141 Ł + 20,27,135,20,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,2,64,0,1,254,31,192,0,1,255,255,224,0,1,255,255,64,0,1,255,248,0,0,7,255,192,0,0,47,255,0,0,0,127,254,0,0,0,63,254,0,0,0,5,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,255,170,170,168,1,255,255,255,253,1,255,255,255,253,1,255,255,255,253, + // 0x0142 ł + 11,29,87,10,0,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,144,3,255,240,3,255,244,3,255,224,11,255,0,127,252,0,255,252,0,191,252,0,35,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0,3,252,0, + // 0x0143 Ń + 23,36,216,29,3,0,0,0,0,63,240,0,0,0,0,191,192,0,0,0,1,255,0,0,0,0,3,252,0,0,0,0,11,240,0,0,0,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,240,0,0,3,252,127,248,0,0,3,252,127,252,0,0,3,252,127,255,0,0,3,252,127,255,64,0,3,252,127,191,192,0,3,252,127,63,224,0,3,252,127,31,244,0,3,252,127,11,252,0,3,252,127,3,254,0,3,252,127,65,255,0,3,252,127,64,255,192,3,252,127,64,63,208,3,252,127,64,47,240,3,252,127,64,15,248,3,252,127,64,7,253,3,252,127,64,2,255,3,252,127,64,0,255,131,252,127,64,0,127,195,252,127,64,0,63,243,252,127,64,0,15,246,252,127,64,0,11,255,252,127,64,0,3,255,252,127,64,0,1,255,252,127,64,0,0,191,252,127,64,0,0,63,252,127,64,0,0,31,252, + // 0x0144 ń + 18,29,145,24,3,0,0,0,15,252,0,0,0,31,244,0,0,0,63,208,0,0,0,191,64,0,0,1,253,0,0,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,84,1,191,144,0,254,15,255,253,0,255,63,255,255,64,255,255,155,255,192,255,240,0,127,208,255,208,0,47,224,255,192,0,31,240,255,128,0,15,240,255,64,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240, + // 0x0145 Ņ + 23,36,216,29,3,247,127,240,0,0,3,252,127,248,0,0,3,252,127,252,0,0,3,252,127,255,0,0,3,252,127,255,64,0,3,252,127,191,192,0,3,252,127,63,224,0,3,252,127,31,244,0,3,252,127,11,252,0,3,252,127,3,254,0,3,252,127,65,255,0,3,252,127,64,255,192,3,252,127,64,63,208,3,252,127,64,47,240,3,252,127,64,15,248,3,252,127,64,7,253,3,252,127,64,2,255,3,252,127,64,0,255,131,252,127,64,0,127,195,252,127,64,0,63,243,252,127,64,0,15,246,252,127,64,0,11,255,252,127,64,0,3,255,252,127,64,0,1,255,252,127,64,0,0,191,252,127,64,0,0,63,252,127,64,0,0,31,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,164,0,0,0,0,11,240,0,0,0,0,15,224,0,0,0,0,15,192,0,0,0,0,31,128,0,0,0,0,47,0,0,0,0,0,20,0,0,0, + // 0x0146 ņ + 18,30,150,24,3,247,84,1,191,144,0,254,15,255,253,0,255,63,255,255,64,255,255,155,255,192,255,240,0,127,208,255,208,0,47,224,255,192,0,31,240,255,128,0,15,240,255,64,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,0,0,0,0,0,0,0,0,0,0,0,0,169,0,0,0,1,253,0,0,0,2,252,0,0,0,3,244,0,0,0,3,240,0,0,0,11,192,0,0,0,5,64,0,0, + // 0x0147 Ň + 23,36,216,29,3,0,0,63,64,3,244,0,0,15,224,31,224,0,0,3,252,127,128,0,0,1,255,254,0,0,0,0,127,252,0,0,0,0,47,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,240,0,0,3,252,127,248,0,0,3,252,127,252,0,0,3,252,127,255,0,0,3,252,127,255,64,0,3,252,127,191,192,0,3,252,127,63,224,0,3,252,127,31,244,0,3,252,127,11,252,0,3,252,127,3,254,0,3,252,127,65,255,0,3,252,127,64,255,192,3,252,127,64,63,208,3,252,127,64,47,240,3,252,127,64,15,248,3,252,127,64,7,253,3,252,127,64,2,255,3,252,127,64,0,255,131,252,127,64,0,127,195,252,127,64,0,63,243,252,127,64,0,15,246,252,127,64,0,11,255,252,127,64,0,3,255,252,127,64,0,1,255,252,127,64,0,0,191,252,127,64,0,0,63,252,127,64,0,0,31,252, + // 0x0148 ň + 18,29,145,24,3,0,15,224,0,190,0,3,252,3,248,0,0,255,31,240,0,0,63,255,192,0,0,31,255,0,0,0,11,253,0,0,0,0,0,0,0,0,0,0,0,0,84,1,191,144,0,254,15,255,253,0,255,63,255,255,64,255,255,155,255,192,255,240,0,127,208,255,208,0,47,224,255,192,0,31,240,255,128,0,15,240,255,64,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240, + // 0x0149 ʼn + 24,27,162,27,0,0,15,240,0,0,0,0,31,240,0,0,0,0,47,224,0,0,0,0,47,192,0,0,0,0,63,192,0,0,0,0,63,128,0,0,0,0,127,5,80,10,249,0,190,11,224,255,255,224,252,11,243,255,255,248,0,11,255,249,111,252,0,11,255,64,3,254,0,11,253,0,1,255,0,11,252,0,0,255,0,11,248,0,0,255,0,11,244,0,0,255,0,11,244,0,0,255,0,11,244,0,0,255,0,11,244,0,0,255,0,11,244,0,0,255,0,11,244,0,0,255,0,11,244,0,0,255,0,11,244,0,0,255,0,11,244,0,0,255,0,11,244,0,0,255,0,11,244,0,0,255,0,11,244,0,0,255,0,11,244,0,0,255, + // 0x014a Ŋ + 23,35,210,29,3,248,127,240,0,0,3,252,127,248,0,0,3,252,127,253,0,0,3,252,127,255,0,0,3,252,127,255,128,0,3,252,127,191,208,0,3,252,127,63,240,0,3,252,127,15,248,0,3,252,127,7,253,0,3,252,127,67,255,0,3,252,127,64,255,128,3,252,127,64,127,208,3,252,127,64,47,240,3,252,127,64,15,248,3,252,127,64,7,253,3,252,127,64,2,255,3,252,127,64,0,255,195,252,127,64,0,127,211,252,127,64,0,47,242,252,127,64,0,15,254,252,127,64,0,7,255,252,127,64,0,2,255,252,127,64,0,0,255,252,127,64,0,0,63,252,127,64,0,0,47,252,127,64,0,0,15,252,127,64,0,0,3,252,0,0,0,0,3,252,0,0,0,0,3,248,0,0,0,0,11,248,0,0,0,64,47,240,0,0,0,255,255,224,0,0,0,255,255,192,0,0,0,255,253,0,0,0,0,21,64,0, + // 0x014b ŋ + 18,31,155,24,3,246,84,1,191,144,0,254,15,255,253,0,255,63,255,255,64,255,255,154,255,192,255,244,0,127,224,255,208,0,47,224,255,192,0,31,240,255,128,0,15,240,255,64,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,31,240,0,0,20,127,224,0,0,63,255,192,0,0,63,255,64,0,0,47,249,0,0,0,0,0,0, + // 0x014c Ō + 26,34,238,30,2,255,0,3,255,255,252,0,0,0,3,255,255,252,0,0,0,3,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x014d ō + 19,27,135,23,2,255,1,255,255,253,0,1,255,255,253,0,1,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x014e Ŏ + 26,37,3,30,2,255,0,1,64,0,20,0,0,0,7,192,0,188,0,0,0,3,244,6,248,0,0,0,2,255,255,240,0,0,0,0,191,255,208,0,0,0,0,27,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x014f ŏ + 19,30,150,23,2,255,1,80,0,21,0,2,240,0,62,0,1,249,1,253,0,0,255,255,252,0,0,63,255,240,0,0,7,254,64,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x0150 Ő + 26,37,3,30,2,255,0,0,127,193,255,0,0,0,0,255,67,253,0,0,0,1,253,7,244,0,0,0,3,248,15,208,0,0,0,11,224,47,64,0,0,0,15,64,125,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x0151 ő + 19,30,150,23,2,255,0,47,240,191,128,0,63,192,255,0,0,191,3,252,0,1,252,7,240,0,3,244,15,192,0,11,192,47,0,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x0152 Œ + 32,29,232,36,2,255,0,0,5,149,0,0,0,0,0,2,255,255,255,255,255,254,0,47,255,255,255,255,255,254,0,255,255,255,255,255,255,254,3,255,228,1,191,213,85,84,11,254,0,0,127,128,0,0,15,252,0,0,127,128,0,0,47,240,0,0,127,128,0,0,63,224,0,0,127,128,0,0,63,192,0,0,127,128,0,0,127,192,0,0,127,128,0,0,191,192,0,0,127,128,0,0,191,128,0,0,127,255,255,248,191,128,0,0,127,255,255,252,191,128,0,0,127,255,255,252,191,128,0,0,127,234,170,164,191,128,0,0,127,128,0,0,127,192,0,0,127,128,0,0,127,192,0,0,127,128,0,0,63,208,0,0,127,128,0,0,63,224,0,0,127,128,0,0,31,240,0,0,127,128,0,0,15,252,0,0,127,128,0,0,7,255,0,0,127,128,0,0,2,255,228,5,255,234,170,169,0,191,255,255,255,255,255,254,0,31,255,255,255,255,255,254,0,1,255,255,255,255,255,254,0,0,1,84,0,0,0,0, + // 0x0153 œ + 33,22,198,36,2,255,0,6,186,64,0,43,228,0,0,0,191,255,244,2,255,255,128,0,3,255,255,253,15,255,255,240,0,15,255,171,255,127,245,111,248,0,47,240,0,127,255,128,3,253,0,63,208,0,31,255,0,1,255,0,127,192,0,15,253,0,0,255,0,191,64,0,11,252,0,0,191,64,255,64,0,7,253,85,85,255,64,255,0,0,7,255,255,255,255,64,255,0,0,7,255,255,255,255,64,255,0,0,7,254,170,170,170,64,255,0,0,7,252,0,0,0,0,255,64,0,11,252,0,0,0,0,191,128,0,15,253,0,0,0,0,127,192,0,15,254,0,0,0,0,63,224,0,63,255,64,0,0,0,15,248,1,255,255,224,0,109,0,7,255,255,255,31,255,255,253,0,1,255,255,252,7,255,255,253,0,0,47,255,208,0,191,255,228,0,0,0,84,0,0,1,84,0,0, + // 0x0154 Ŕ + 21,36,216,24,3,0,0,0,11,252,0,0,0,0,15,244,0,0,0,0,63,208,0,0,0,0,191,64,0,0,0,1,253,0,0,0,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,144,0,0,127,255,255,253,0,0,127,255,255,255,128,0,127,213,91,255,208,0,127,128,0,127,240,0,127,128,0,31,240,0,127,128,0,15,244,0,127,128,0,15,244,0,127,128,0,15,244,0,127,128,0,15,240,0,127,128,0,47,240,0,127,128,0,127,208,0,127,213,91,255,128,0,127,255,255,254,0,0,127,255,255,240,0,0,127,255,255,208,0,0,127,128,31,240,0,0,127,128,11,248,0,0,127,128,3,253,0,0,127,128,2,255,0,0,127,128,0,255,128,0,127,128,0,127,192,0,127,128,0,47,240,0,127,128,0,15,244,0,127,128,0,11,252,0,127,128,0,3,254,0,127,128,0,1,255,64, + // 0x0155 ŕ + 13,29,116,16,3,0,0,1,255,64,0,3,254,0,0,11,248,0,0,31,224,0,0,63,64,0,0,253,0,0,0,0,0,0,0,0,0,0,84,0,191,64,253,11,255,64,254,47,255,64,255,127,255,0,255,253,0,0,255,240,0,0,255,192,0,0,255,128,0,0,255,64,0,0,255,64,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0, + // 0x0156 Ŗ + 21,36,216,24,3,247,127,255,255,144,0,0,127,255,255,253,0,0,127,255,255,255,128,0,127,213,91,255,208,0,127,128,0,127,240,0,127,128,0,31,240,0,127,128,0,15,244,0,127,128,0,15,244,0,127,128,0,15,244,0,127,128,0,15,240,0,127,128,0,47,240,0,127,128,0,127,208,0,127,213,91,255,128,0,127,255,255,254,0,0,127,255,255,240,0,0,127,255,255,208,0,0,127,128,31,240,0,0,127,128,11,248,0,0,127,128,3,253,0,0,127,128,2,255,0,0,127,128,0,255,128,0,127,128,0,127,192,0,127,128,0,47,240,0,127,128,0,15,244,0,127,128,0,11,252,0,127,128,0,3,254,0,127,128,0,1,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,0,0,0,191,0,0,0,0,0,254,0,0,0,0,0,252,0,0,0,0,1,248,0,0,0,0,2,240,0,0,0,0,1,64,0,0,0, + // 0x0157 ŗ + 14,30,120,16,2,247,21,0,47,208,63,66,255,208,63,139,255,208,63,223,255,192,63,255,64,0,63,252,0,0,63,240,0,0,63,224,0,0,63,208,0,0,63,208,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,0,0,0,0,0,0,0,0,10,160,0,0,31,208,0,0,47,192,0,0,63,128,0,0,63,0,0,0,125,0,0,0,20,0,0,0, + // 0x0158 Ř + 21,36,216,24,3,0,11,224,0,191,0,0,2,252,3,252,0,0,0,255,15,240,0,0,0,63,255,192,0,0,0,15,255,64,0,0,0,7,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,144,0,0,127,255,255,253,0,0,127,255,255,255,128,0,127,213,91,255,208,0,127,128,0,127,240,0,127,128,0,31,240,0,127,128,0,15,244,0,127,128,0,15,244,0,127,128,0,15,244,0,127,128,0,15,240,0,127,128,0,47,240,0,127,128,0,127,208,0,127,213,91,255,128,0,127,255,255,254,0,0,127,255,255,240,0,0,127,255,255,208,0,0,127,128,31,240,0,0,127,128,11,248,0,0,127,128,3,253,0,0,127,128,2,255,0,0,127,128,0,255,128,0,127,128,0,127,192,0,127,128,0,47,240,0,127,128,0,15,244,0,127,128,0,11,252,0,127,128,0,3,254,0,127,128,0,1,255,64, + // 0x0159 ř + 14,29,116,16,2,0,127,0,7,240,47,208,47,192,11,244,255,0,3,255,253,0,0,255,244,0,0,63,224,0,0,0,0,0,0,0,0,0,21,0,47,208,63,66,255,208,63,139,255,208,63,223,255,192,63,255,64,0,63,252,0,0,63,240,0,0,63,224,0,0,63,208,0,0,63,208,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0, + // 0x015a Ś + 17,37,185,21,2,255,0,0,15,252,0,0,0,47,240,0,0,0,63,192,0,0,0,255,0,0,0,2,252,0,0,0,7,224,0,0,0,0,0,0,0,0,0,0,0,0,0,5,85,0,0,0,191,255,249,0,7,255,255,255,128,31,255,255,255,0,63,244,1,191,0,127,192,0,0,0,191,64,0,0,0,255,64,0,0,0,191,64,0,0,0,191,192,0,0,0,127,224,0,0,0,63,253,0,0,0,15,255,208,0,0,3,255,254,0,0,0,127,255,224,0,0,7,255,252,0,0,0,127,255,0,0,0,7,255,64,0,0,0,255,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,144,0,0,255,128,254,80,27,255,0,255,255,255,253,0,255,255,255,244,0,47,255,255,64,0,0,21,64,0,0, + // 0x015b ś + 15,30,120,18,2,255,0,0,191,208,0,0,255,64,0,3,253,0,0,11,244,0,0,15,208,0,0,63,64,0,0,0,0,0,0,0,0,0,0,111,233,0,11,255,255,240,63,255,255,240,191,229,111,224,255,0,0,64,255,0,0,0,255,0,0,0,255,208,0,0,127,253,0,0,31,255,224,0,2,255,254,0,0,47,255,208,0,1,255,240,0,0,47,248,0,0,11,248,0,0,3,248,0,0,7,248,244,0,31,244,255,251,255,240,255,255,255,192,111,255,253,0,0,85,0,0, + // 0x015c Ŝ + 17,37,185,21,2,255,0,15,253,0,0,0,47,255,0,0,0,127,255,192,0,0,254,31,240,0,3,248,3,248,0,15,208,0,190,0,0,0,0,0,0,0,0,0,0,0,0,5,85,0,0,0,191,255,249,0,7,255,255,255,128,31,255,255,255,0,63,244,1,191,0,127,192,0,0,0,191,64,0,0,0,255,64,0,0,0,191,64,0,0,0,191,192,0,0,0,127,224,0,0,0,63,253,0,0,0,15,255,208,0,0,3,255,254,0,0,0,127,255,224,0,0,7,255,252,0,0,0,127,255,0,0,0,7,255,64,0,0,0,255,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,144,0,0,255,128,254,80,27,255,0,255,255,255,253,0,255,255,255,244,0,47,255,255,64,0,0,21,64,0,0, + // 0x015d ŝ + 15,30,120,18,2,255,0,127,240,0,0,255,244,0,3,255,253,0,15,240,255,0,47,192,47,192,190,0,7,240,0,0,0,0,0,0,0,0,0,111,233,0,11,255,255,240,63,255,255,240,191,229,111,224,255,0,0,64,255,0,0,0,255,0,0,0,255,208,0,0,127,253,0,0,31,255,224,0,2,255,254,0,0,47,255,208,0,1,255,240,0,0,47,248,0,0,11,248,0,0,3,248,0,0,7,248,244,0,31,244,255,251,255,240,255,255,255,192,111,255,253,0,0,85,0,0, + // 0x015e Ş + 17,38,190,21,2,246,0,5,85,0,0,0,191,255,249,0,7,255,255,255,128,31,255,255,255,0,63,244,1,191,0,127,192,0,0,0,191,64,0,0,0,255,64,0,0,0,191,64,0,0,0,191,192,0,0,0,127,224,0,0,0,63,253,0,0,0,15,255,208,0,0,3,255,254,0,0,0,127,255,224,0,0,7,255,252,0,0,0,127,255,0,0,0,7,255,64,0,0,0,255,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,144,0,0,255,128,254,80,27,255,0,255,255,255,253,0,255,255,255,244,0,47,255,255,64,0,0,31,208,0,0,0,15,192,0,0,0,31,244,0,0,0,7,253,0,0,0,0,190,0,0,0,0,191,0,0,0,85,254,0,0,0,255,252,0,0,0,255,224,0,0,0,0,0,0,0, + // 0x015f ş + 15,31,124,18,2,246,0,111,233,0,11,255,255,240,63,255,255,240,191,229,111,224,255,0,0,64,255,0,0,0,255,0,0,0,255,208,0,0,127,253,0,0,31,255,224,0,2,255,254,0,0,47,255,208,0,1,255,240,0,0,47,248,0,0,11,248,0,0,3,248,0,0,7,248,244,0,31,244,255,251,255,240,255,255,255,192,111,255,253,0,0,95,192,0,0,47,0,0,0,63,224,0,0,27,248,0,0,1,252,0,0,0,252,0,1,87,252,0,2,255,244,0,2,255,128,0,0,0,0,0, + // 0x0160 Š + 17,37,185,21,2,255,15,208,0,254,0,3,248,7,248,0,0,255,31,224,0,0,127,255,192,0,0,31,255,0,0,0,11,253,0,0,0,0,0,0,0,0,0,0,0,0,0,5,85,0,0,0,191,255,249,0,7,255,255,255,128,31,255,255,255,0,63,244,1,191,0,127,192,0,0,0,191,64,0,0,0,255,64,0,0,0,191,64,0,0,0,191,192,0,0,0,127,224,0,0,0,63,253,0,0,0,15,255,208,0,0,3,255,254,0,0,0,127,255,224,0,0,7,255,252,0,0,0,127,255,0,0,0,7,255,64,0,0,0,255,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,144,0,0,255,128,254,80,27,255,0,255,255,255,253,0,255,255,255,244,0,47,255,255,64,0,0,21,64,0,0, + // 0x0161 š + 15,30,120,18,2,255,191,0,7,240,47,208,47,192,11,244,255,0,3,255,252,0,0,255,244,0,0,127,224,0,0,0,0,0,0,0,0,0,0,111,233,0,11,255,255,240,63,255,255,240,191,229,111,224,255,0,0,64,255,0,0,0,255,0,0,0,255,208,0,0,127,253,0,0,31,255,224,0,2,255,254,0,0,47,255,208,0,1,255,240,0,0,47,248,0,0,11,248,0,0,3,248,0,0,7,248,244,0,31,244,255,251,255,240,255,255,255,192,111,255,253,0,0,85,0,0, + // 0x0162 Ţ + 21,37,222,21,0,246,191,255,255,255,255,192,191,255,255,255,255,192,191,255,255,255,255,192,21,85,191,213,85,64,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,47,0,0,0,0,0,62,0,0,0,0,0,191,208,0,0,0,0,31,240,0,0,0,0,3,248,0,0,0,0,2,248,0,0,0,1,87,244,0,0,0,3,255,240,0,0,0,3,255,128,0,0,0,0,0,0,0,0, + // 0x0163 ţ + 14,35,140,15,0,246,0,62,0,0,0,126,0,0,0,190,0,0,0,254,0,0,2,255,85,64,47,255,255,208,127,255,255,208,43,255,170,128,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,255,0,0,0,255,128,0,0,255,255,224,0,63,255,224,0,11,255,208,0,3,244,0,0,7,208,0,0,15,248,0,0,6,255,0,0,0,63,64,0,0,63,64,0,21,191,0,0,127,254,0,0,127,244,0,0,0,0,0, + // 0x0164 Ť + 21,36,216,21,0,0,0,253,0,15,208,0,0,63,128,127,128,0,0,31,225,254,0,0,0,7,255,248,0,0,0,2,255,240,0,0,0,0,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,192,191,255,255,255,255,192,191,255,255,255,255,192,21,85,191,213,85,64,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0, + // 0x0165 ť + 19,30,150,15,0,255,0,0,0,3,252,0,0,0,3,248,0,0,0,7,240,0,0,0,11,224,0,62,0,15,192,0,126,0,15,128,0,190,0,0,0,0,254,0,0,0,2,255,85,64,0,47,255,255,208,0,127,255,255,208,0,43,255,170,128,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,254,0,0,0,1,255,0,0,0,0,255,128,0,0,0,255,255,224,0,0,63,255,224,0,0,11,255,208,0,0,0,84,0,0, + // 0x0166 Ŧ + 21,27,162,21,0,0,191,255,255,255,255,192,191,255,255,255,255,192,191,255,255,255,255,192,21,85,191,213,85,64,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,1,85,191,213,80,0,2,255,255,255,240,0,2,255,255,255,240,0,2,255,255,255,240,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0,0,0,127,128,0,0, + // 0x0167 ŧ + 14,26,104,15,0,255,0,62,0,0,0,126,0,0,0,190,0,0,0,254,0,0,2,255,85,64,47,255,255,208,127,255,255,208,43,255,170,128,1,254,0,0,1,254,0,0,1,254,0,0,2,254,0,0,63,255,255,192,63,255,255,192,63,255,255,192,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,254,0,0,1,255,0,0,0,255,128,0,0,255,255,224,0,63,255,224,0,11,255,208,0,0,84,0, + // 0x0168 Ũ + 22,36,216,28,3,255,0,11,248,0,240,0,0,63,255,67,240,0,0,191,255,255,224,0,0,248,11,255,192,0,0,240,1,190,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,224,0,0,27,255,254,64,0,0,0,21,64,0,0, + // 0x0169 ũ + 18,29,145,24,3,255,0,191,64,31,0,3,255,244,63,0,11,255,255,253,0,15,129,255,252,0,15,0,27,224,0,0,0,0,0,0,0,0,0,0,0,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,11,240,0,5,64,0,0, + // 0x016a Ū + 22,34,204,28,3,255,0,63,255,255,192,0,0,63,255,255,192,0,0,63,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,224,0,0,27,255,254,64,0,0,0,21,64,0,0, + // 0x016b ū + 18,27,135,24,3,255,3,255,255,252,0,3,255,255,252,0,3,255,255,252,0,0,0,0,0,0,0,0,0,0,0,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,11,240,0,5,64,0,0, + // 0x016c Ŭ + 22,37,222,28,3,255,0,20,0,1,64,0,0,61,0,7,192,0,0,63,64,111,192,0,0,31,255,255,64,0,0,11,255,253,0,0,0,0,191,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,224,0,0,27,255,254,64,0,0,0,21,64,0,0, + // 0x016d ŭ + 18,30,150,24,3,255,1,64,0,20,0,3,208,0,124,0,3,244,6,252,0,1,255,255,240,0,0,191,255,208,0,0,27,254,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,11,240,0,5,64,0,0, + // 0x016e Ů + 22,39,234,28,3,255,0,0,191,224,0,0,0,2,255,248,0,0,0,3,208,188,0,0,0,7,192,61,0,0,0,3,192,61,0,0,0,3,224,188,0,0,0,1,255,244,0,0,0,0,127,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,224,0,0,27,255,254,64,0,0,0,21,64,0,0, + // 0x016f ů + 18,32,160,24,3,255,0,11,254,0,0,0,47,255,128,0,0,61,11,192,0,0,124,3,192,0,0,124,3,192,0,0,62,15,192,0,0,47,255,64,0,0,7,249,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,11,240,0,5,64,0,0, + // 0x0170 Ű + 22,37,222,28,3,255,0,3,252,31,240,0,0,11,244,63,208,0,0,31,224,127,64,0,0,63,128,254,0,0,0,190,2,248,0,0,0,248,7,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,224,0,0,27,255,254,64,0,0,0,21,64,0,0, + // 0x0171 ű + 18,30,150,24,3,255,0,63,193,255,0,0,255,67,253,0,1,254,7,244,0,3,248,15,208,0,11,224,47,64,0,15,128,125,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,11,240,0,5,64,0,0, + // 0x0172 Ų + 22,36,216,28,3,247,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,240,0,0,27,255,255,192,0,0,0,21,111,64,0,0,0,0,62,0,0,0,0,0,188,0,0,0,0,0,252,0,0,0,0,0,252,0,0,0,0,0,253,0,0,0,0,0,255,244,0,0,0,0,63,244,0,0,0,0,6,144,0, + // 0x0173 ų + 18,30,150,24,3,247,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,15,240,0,5,64,31,64,0,0,0,126,0,0,0,0,252,0,0,0,2,244,0,0,0,2,244,0,0,0,2,248,0,0,0,1,255,240,0,0,0,191,240,0,0,0,26,80, + // 0x0174 Ŵ + 36,36,68,36,0,0,0,0,0,2,255,64,0,0,0,0,0,0,7,255,192,0,0,0,0,0,0,31,255,240,0,0,0,0,0,0,63,195,252,0,0,0,0,0,0,254,0,255,0,0,0,0,0,3,244,0,47,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,128,0,1,255,0,0,3,253,127,192,0,2,255,64,0,3,252,63,192,0,3,255,128,0,7,248,63,208,0,7,255,192,0,11,244,31,224,0,11,255,192,0,15,240,15,240,0,15,239,208,0,15,240,15,240,0,15,223,240,0,31,224,11,244,0,31,203,240,0,47,208,7,248,0,47,199,244,0,63,192,3,252,0,63,131,248,0,63,192,3,252,0,127,67,252,0,127,128,2,253,0,191,2,252,0,191,64,1,254,0,255,0,254,0,255,0,0,255,0,254,0,255,0,255,0,0,255,1,253,0,191,1,254,0,0,191,66,252,0,127,66,253,0,0,127,131,248,0,63,131,252,0,0,63,195,244,0,63,195,252,0,0,63,199,240,0,47,199,248,0,0,47,219,240,0,15,219,240,0,0,31,223,224,0,15,235,240,0,0,15,239,208,0,11,239,224,0,0,15,255,192,0,7,255,208,0,0,11,255,192,0,3,255,192,0,0,7,255,64,0,3,255,192,0,0,3,255,0,0,2,255,128,0,0,2,255,0,0,0,255,64,0, + // 0x0175 ŵ + 30,29,232,31,0,0,0,0,0,127,240,0,0,0,0,0,0,255,248,0,0,0,0,0,3,255,253,0,0,0,0,0,11,244,191,64,0,0,0,0,47,208,47,208,0,0,0,0,126,0,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,26,144,0,6,160,127,192,0,63,240,0,15,240,63,192,0,127,240,0,31,224,47,208,0,255,244,0,47,208,31,224,0,255,248,0,63,192,15,240,1,253,252,0,63,192,15,240,2,248,253,0,127,128,11,244,3,244,254,0,191,64,7,248,3,240,191,0,255,0,3,252,11,240,127,0,254,0,3,252,15,224,63,65,253,0,2,253,15,208,63,130,252,0,1,254,31,192,47,195,252,0,0,255,47,192,15,211,248,0,0,191,63,64,15,231,244,0,0,127,127,0,11,235,240,0,0,63,191,0,7,255,240,0,0,63,254,0,3,255,208,0,0,47,253,0,3,255,192,0,0,31,252,0,2,255,192,0,0,15,248,0,0,255,128,0, + // 0x0176 Ŷ + 22,36,216,22,0,0,0,0,191,224,0,0,0,1,255,244,0,0,0,3,255,252,0,0,0,15,240,255,0,0,0,63,192,63,192,0,0,190,0,11,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,192,0,0,47,240,63,208,0,0,63,208,47,240,0,0,191,128,15,244,0,0,255,0,11,252,0,2,254,0,3,253,0,3,252,0,1,255,0,11,248,0,0,255,64,31,240,0,0,127,192,63,208,0,0,63,208,127,192,0,0,31,240,255,64,0,0,11,249,255,0,0,0,3,255,253,0,0,0,2,255,248,0,0,0,0,255,240,0,0,0,0,191,224,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x0177 ŷ + 20,39,195,20,0,246,0,2,255,128,0,0,7,255,208,0,0,15,255,240,0,0,63,195,252,0,0,255,0,255,0,2,244,0,47,128,0,0,0,0,0,0,0,0,0,0,85,0,0,0,85,191,128,0,2,254,63,192,0,3,253,63,208,0,7,252,31,240,0,11,248,15,240,0,15,240,11,248,0,31,240,3,252,0,47,208,3,253,0,63,192,1,254,0,127,128,0,255,0,255,64,0,191,64,255,0,0,63,129,254,0,0,63,195,252,0,0,31,211,252,0,0,15,231,244,0,0,11,251,240,0,0,3,255,224,0,0,3,255,192,0,0,1,255,192,0,0,0,255,64,0,0,0,255,0,0,0,1,254,0,0,0,2,253,0,0,0,3,252,0,0,0,15,244,0,0,16,127,240,0,0,127,255,192,0,0,127,255,64,0,0,127,248,0,0,0,0,0,0,0,0, + // 0x0178 Ÿ + 22,35,210,22,0,0,0,11,128,47,0,0,0,31,208,63,128,0,0,31,208,63,128,0,0,15,192,47,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,192,0,0,47,240,63,208,0,0,63,208,47,240,0,0,191,128,15,244,0,0,255,0,11,252,0,2,254,0,3,253,0,3,252,0,1,255,0,11,248,0,0,255,64,31,240,0,0,127,192,63,208,0,0,63,208,127,192,0,0,31,240,255,64,0,0,11,249,255,0,0,0,3,255,253,0,0,0,2,255,248,0,0,0,0,255,240,0,0,0,0,191,224,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x0179 Ź + 20,36,180,22,1,0,0,0,2,255,0,0,0,7,253,0,0,0,15,244,0,0,0,47,208,0,0,0,127,64,0,0,0,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,252,127,255,255,255,252,127,255,255,255,252,21,85,85,95,248,0,0,0,47,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,3,253,0,0,0,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,7,253,0,0,0,15,248,0,0,0,47,240,0,0,0,127,208,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,248,0,0,0,47,240,0,0,0,127,234,170,170,169,191,255,255,255,253,191,255,255,255,253,191,255,255,255,253, + // 0x017a ź + 16,29,116,18,1,0,0,0,47,240,0,0,127,208,0,0,255,64,0,2,253,0,0,7,244,0,0,15,192,0,0,0,0,0,0,0,0,0,21,85,85,84,63,255,255,253,63,255,255,253,42,170,171,252,0,0,11,248,0,0,31,240,0,0,63,192,0,0,255,64,0,2,254,0,0,7,252,0,0,15,244,0,0,47,224,0,0,127,192,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,208,0,0,191,255,255,254,191,255,255,254,191,255,255,254, + // 0x017b Ż + 20,35,175,22,1,0,0,0,191,0,0,0,0,255,64,0,0,0,255,64,0,0,0,191,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,252,127,255,255,255,252,127,255,255,255,252,21,85,85,95,248,0,0,0,47,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,3,253,0,0,0,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,7,253,0,0,0,15,248,0,0,0,47,240,0,0,0,127,208,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,248,0,0,0,47,240,0,0,0,127,234,170,170,169,191,255,255,255,253,191,255,255,255,253,191,255,255,255,253, + // 0x017c ż + 16,28,112,18,1,0,0,11,240,0,0,15,240,0,0,15,244,0,0,15,240,0,0,1,64,0,0,0,0,0,0,0,0,0,21,85,85,84,63,255,255,253,63,255,255,253,42,170,171,252,0,0,11,248,0,0,31,240,0,0,63,192,0,0,255,64,0,2,254,0,0,7,252,0,0,15,244,0,0,47,224,0,0,127,192,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,208,0,0,191,255,255,254,191,255,255,254,191,255,255,254, + // 0x017d Ž + 20,36,180,22,1,0,2,248,0,47,192,0,191,0,255,0,0,63,195,252,0,0,15,255,240,0,0,3,255,208,0,0,1,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,252,127,255,255,255,252,127,255,255,255,252,21,85,85,95,248,0,0,0,47,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,3,253,0,0,0,15,248,0,0,0,47,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,7,253,0,0,0,15,248,0,0,0,47,240,0,0,0,127,208,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,248,0,0,0,47,240,0,0,0,127,234,170,170,169,191,255,255,255,253,191,255,255,255,253,191,255,255,255,253, + // 0x017e ž + 16,29,116,18,1,0,47,128,2,248,15,240,15,240,3,252,63,192,0,255,255,0,0,63,252,0,0,31,244,0,0,0,0,0,0,0,0,0,21,85,85,84,63,255,255,253,63,255,255,253,42,170,171,252,0,0,11,248,0,0,31,240,0,0,63,192,0,0,255,64,0,2,254,0,0,7,252,0,0,15,244,0,0,47,224,0,0,127,192,0,0,255,0,0,3,253,0,0,11,248,0,0,31,240,0,0,63,208,0,0,191,255,255,254,191,255,255,254,191,255,255,254, + // 0x017f ſ + 11,29,87,13,3,0,1,191,248,15,255,252,63,255,248,127,228,100,191,128,0,191,64,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Simplified_Chinese_28.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Simplified_Chinese_28.cpp new file mode 100644 index 000000000000..844852751ec7 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Simplified_Chinese_28.cpp @@ -0,0 +1,778 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Simplified Chinese 38pt, capital 'A' height: 28px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 +extern const uint8_t NotoSans_Medium_Simplified_Chinese_28[27451] = { + 162,28,28,32,26,255,37,246, // unifont_t + // 0x201c “ + 28,32,14,10,40,15,0,17,2,248,3,240,3,244,11,240,7,240,15,224,15,240,31,208,15,224,47,192,47,208,63,192,63,192,127,128,63,192,191,128,127,192,255,64,0,0,0,0, + // 0x201d ” + 29,32,14,10,40,15,0,17,15,248,31,240,15,244,31,240,15,240,47,208,31,224,63,192,47,208,63,192,47,192,63,64,63,128,127,0,63,0,190,0,126,0,252,0,0,0,0,0, + // 0x22bf ⊿ + 191,34,29,31,248,38,4,255,0,0,0,0,0,0,0,128,0,0,0,0,0,0,2,192,0,0,0,0,0,0,11,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,191,192,0,0,0,0,0,2,255,192,0,0,0,0,0,11,255,192,0,0,0,0,0,47,255,192,0,0,0,0,0,191,223,192,0,0,0,0,2,255,31,192,0,0,0,0,11,252,31,192,0,0,0,0,31,240,31,192,0,0,0,0,127,192,31,192,0,0,0,1,255,0,31,192,0,0,0,7,252,0,31,192,0,0,0,31,240,0,31,192,0,0,0,127,192,0,31,192,0,0,1,255,0,0,31,192,0,0,7,252,0,0,31,192,0,0,31,240,0,0,31,192,0,0,127,192,0,0,31,192,0,1,255,0,0,0,31,192,0,7,252,0,0,0,31,192,0,31,240,0,0,0,31,192,0,127,192,0,0,0,31,192,1,255,0,0,0,0,31,192,7,252,0,0,0,0,31,192,15,255,255,255,255,255,255,192,63,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0, + // 0x4e00 一 + 0,78,35,4,36,38,2,12,255,255,255,255,255,255,255,255,244,255,255,255,255,255,255,255,255,244,255,255,255,255,255,255,255,255,244,255,255,255,255,255,255,255,255,244, + // 0x4e09 三 + 9,78,34,29,5,38,2,255,3,255,255,255,255,255,255,253,0,3,255,255,255,255,255,255,253,0,3,255,255,255,255,255,255,253,0,2,170,170,170,170,170,170,168,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,170,170,170,170,170,0,0,0,47,255,255,255,255,255,64,0,0,47,255,255,255,255,255,64,0,0,47,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,170,170,170,170,170,170,170,128,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208, + // 0x4e0a 上 + 10,78,34,34,50,38,2,254,0,0,0,5,64,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,250,170,170,168,0,0,0,0,15,255,255,255,253,0,0,0,0,15,255,255,255,253,0,0,0,0,15,255,255,255,253,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,170,170,170,175,250,170,170,170,160,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x4e0b 下 + 11,78,34,33,41,38,2,252,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,106,170,170,175,250,170,170,170,144,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,255,128,0,0,0,0,0,0,11,255,248,0,0,0,0,0,0,11,255,255,64,0,0,0,0,0,11,251,255,244,0,0,0,0,0,11,240,191,254,0,0,0,0,0,11,240,31,255,208,0,0,0,0,11,240,2,255,248,0,0,0,0,11,240,0,63,254,0,0,0,0,11,240,0,11,252,0,0,0,0,11,240,0,1,244,0,0,0,0,11,240,0,0,16,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0, + // 0x4e0d 不 + 13,78,34,33,41,38,2,252,127,255,255,255,255,255,255,255,192,127,255,255,255,255,255,255,255,192,127,255,255,255,255,255,255,255,192,42,170,170,170,255,234,170,170,128,0,0,0,0,255,192,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,191,252,0,0,0,0,0,0,1,255,252,124,0,0,0,0,0,7,255,254,255,64,0,0,0,0,31,255,252,255,240,0,0,0,0,127,243,252,47,253,0,0,0,2,255,195,252,7,255,64,0,0,11,255,3,252,1,255,224,0,0,63,252,3,252,0,63,252,0,2,255,240,3,252,0,11,255,0,31,255,128,3,252,0,2,255,192,191,253,0,3,252,0,0,191,240,191,240,0,3,252,0,0,31,224,63,128,0,3,252,0,0,7,128,8,0,0,3,252,0,0,1,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0, + // 0x4e13 专 + 19,78,34,37,77,38,2,251,0,0,0,31,128,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,128,0,0,0,0,2,255,255,255,255,255,255,248,0,2,255,255,255,255,255,255,248,0,2,255,255,255,255,255,255,248,0,1,85,86,254,85,85,85,80,0,0,0,2,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,248,0,0,0,0,0,85,85,91,249,85,85,85,85,64,255,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,255,208,0,0,47,192,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,255,255,255,255,255,208,0,0,1,255,255,255,255,255,248,0,0,2,255,255,255,255,255,240,0,0,1,85,85,85,85,255,192,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,63,240,0,0,0,0,41,0,0,255,192,0,0,0,0,127,228,3,255,0,0,0,0,0,255,255,159,252,0,0,0,0,0,31,255,255,240,0,0,0,0,0,0,127,255,244,0,0,0,0,0,0,2,255,255,64,0,0,0,0,0,0,31,255,244,0,0,0,0,0,0,0,191,252,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,0,144,0,0,0,0,0,0,0,0,0,0,0, + // 0x4e1d 丝 + 29,78,34,34,50,38,2,254,0,0,16,0,0,0,80,0,0,0,0,190,0,0,0,254,0,0,0,0,255,0,0,1,253,0,0,0,1,253,0,0,2,252,0,0,0,3,252,0,0,3,244,0,0,0,7,244,0,0,11,240,0,0,0,11,240,0,0,15,208,0,0,0,15,208,8,0,47,192,9,0,0,47,192,31,64,127,64,47,128,0,63,64,63,192,254,0,63,192,0,191,0,191,129,252,0,255,64,1,253,0,255,3,244,1,254,0,3,248,2,253,15,240,3,252,0,11,240,3,248,63,255,255,240,0,47,255,255,240,63,255,255,224,0,47,255,255,208,47,255,255,192,0,15,255,255,128,25,64,255,0,0,9,64,255,0,0,2,253,0,0,0,2,252,0,0,7,248,0,0,0,11,244,0,0,15,240,0,0,0,31,208,0,0,63,192,0,0,0,127,128,0,0,255,0,0,0,1,254,0,0,3,252,0,0,0,7,254,191,255,31,255,255,255,192,31,255,255,255,63,255,255,255,192,15,255,255,255,31,255,255,255,128,11,254,149,64,15,234,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,64,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x4e2a 个 + 42,78,36,35,59,38,1,252,0,0,0,2,255,0,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,15,255,208,0,0,0,0,0,0,47,255,244,0,0,0,0,0,0,191,219,252,0,0,0,0,0,1,255,130,255,0,0,0,0,0,7,254,0,255,192,0,0,0,0,31,252,0,63,244,0,0,0,0,127,240,0,15,253,0,0,0,2,255,192,0,3,255,128,0,0,11,255,0,0,0,255,240,0,0,63,248,0,0,0,47,253,0,1,255,224,0,85,0,7,255,128,11,255,64,0,254,0,1,255,248,127,252,0,0,254,0,0,63,255,191,224,0,0,254,0,0,7,254,63,64,0,0,254,0,0,0,252,8,0,0,0,254,0,0,0,16,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0, + // 0x4e2d 中 + 45,78,32,36,32,38,3,252,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,149,85,95,245,85,86,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,149,85,95,245,85,86,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,0,168,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0, + // 0x4e3a 为 + 58,78,32,36,32,38,2,252,0,0,0,42,128,0,0,0,0,8,0,63,192,0,0,0,0,191,0,63,192,0,0,0,0,127,128,63,192,0,0,0,0,63,208,63,192,0,0,0,0,15,240,63,192,0,0,0,0,7,248,63,192,0,0,0,0,3,224,63,128,0,0,0,0,0,0,63,128,0,0,0,26,170,170,191,234,170,170,170,63,255,255,255,255,255,255,255,63,255,255,255,255,255,255,255,63,255,255,255,255,255,255,255,0,0,0,127,64,0,0,191,0,0,0,191,0,0,0,191,0,0,0,255,0,0,0,191,0,0,0,254,0,0,0,191,0,0,1,253,2,0,0,191,0,0,2,252,47,128,0,255,0,0,3,252,63,208,0,255,0,0,7,248,15,240,0,255,0,0,15,240,7,252,0,255,0,0,31,240,2,253,0,254,0,0,63,208,0,255,0,254,0,0,191,192,0,127,64,254,0,0,255,64,0,56,1,253,0,3,254,0,0,0,1,253,0,15,252,0,0,0,1,253,0,47,244,0,0,0,2,252,0,191,208,0,0,0,3,252,3,255,128,0,0,0,3,252,31,254,0,0,0,0,11,248,127,248,0,0,2,255,255,244,63,208,0,0,0,255,255,240,15,0,0,0,0,255,255,192,0,0,0,0,0,106,164,0, + // 0x4e3b 主 + 59,78,34,35,59,38,2,253,0,0,0,9,0,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,191,224,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,0,63,208,0,0,0,5,85,85,85,111,149,85,85,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,255,255,255,255,255,255,244,0,0,255,255,255,255,255,255,244,0,0,255,255,255,255,255,255,244,0,0,85,85,87,253,85,85,80,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,85,85,85,85,85,85,80, + // 0x4e49 义 + 73,78,34,36,68,38,2,252,0,0,0,6,128,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,11,240,0,1,224,0,0,0,0,3,244,0,3,252,0,0,188,0,2,252,0,3,252,0,1,253,0,1,253,0,11,244,0,0,255,0,0,254,0,15,240,0,0,127,64,0,191,0,31,224,0,0,63,128,0,61,0,63,208,0,0,47,208,0,0,0,127,192,0,0,15,240,0,0,0,255,64,0,0,11,244,0,0,1,255,0,0,0,3,252,0,0,3,253,0,0,0,2,254,0,0,7,252,0,0,0,0,255,64,0,15,240,0,0,0,0,127,192,0,63,224,0,0,0,0,47,224,0,127,192,0,0,0,0,15,248,1,255,0,0,0,0,0,7,253,3,254,0,0,0,0,0,2,255,79,248,0,0,0,0,0,0,191,255,240,0,0,0,0,0,0,63,255,192,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,31,255,128,0,0,0,0,0,0,191,255,240,0,0,0,0,0,3,255,255,253,0,0,0,0,0,47,254,11,255,128,0,0,0,1,255,244,1,255,248,0,0,0,31,255,128,0,63,255,128,0,2,255,253,0,0,11,255,249,0,127,255,224,0,0,0,191,255,224,255,254,0,0,0,0,11,255,240,191,208,0,0,0,0,0,191,192,56,0,0,0,0,0,0,6,64,0,0,0,0,0,0,0,0,0, + // 0x4e4b 之 + 75,78,35,36,68,38,1,252,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,1,85,85,85,255,85,85,89,0,3,255,255,255,255,255,255,255,128,3,255,255,255,255,255,255,255,192,3,255,255,255,255,255,255,255,128,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,11,253,0,0,0,0,0,0,0,31,244,0,0,0,0,0,0,0,127,224,0,0,0,1,0,0,1,255,128,0,0,0,3,224,0,7,254,0,0,0,0,11,244,0,47,248,0,0,0,0,15,240,0,191,224,0,0,0,0,31,224,2,255,128,0,0,0,0,63,240,15,253,0,0,0,0,0,127,252,127,244,0,0,0,0,0,255,255,255,192,0,0,0,0,2,254,255,254,0,0,0,0,0,3,252,63,252,0,0,0,0,0,11,248,15,255,144,0,0,0,0,31,240,3,255,255,250,165,85,88,63,208,0,127,255,255,255,255,252,191,192,0,6,255,255,255,255,248,31,64,0,0,6,191,255,255,244,1,0,0,0,0,0,0,0,0, + // 0x4e86 了 + 134,78,30,33,8,38,4,252,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,208,170,170,170,170,170,171,255,64,0,0,0,0,0,11,254,0,0,0,0,0,0,63,248,0,0,0,0,0,0,255,224,0,0,0,0,0,3,255,128,0,0,0,0,0,31,253,0,0,0,0,0,0,191,244,0,0,0,0,0,43,255,192,0,0,0,0,0,63,254,0,0,0,0,0,0,63,244,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,26,170,191,192,0,0,0,0,15,255,255,128,0,0,0,0,11,255,255,0,0,0,0,0,7,255,228,0,0,0,0, + // 0x4e8c 二 + 140,78,34,28,252,38,2,255,1,255,255,255,255,255,255,244,0,2,255,255,255,255,255,255,248,0,2,255,255,255,255,255,255,248,0,2,255,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0, + // 0x4e8e 于 + 142,78,34,33,41,38,2,252,3,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,252,0,1,85,85,86,254,85,85,84,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,85,85,85,86,254,85,85,85,80,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,255,255,252,0,0,0,0,0,0,191,255,252,0,0,0,0,0,0,127,255,240,0,0,0,0,0,0,42,169,0,0,0,0,0, + // 0x4ea4 交 + 164,78,34,37,77,38,2,251,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,85,85,85,85,85,85,85,85,80,0,0,20,0,0,2,128,0,0,0,0,63,128,0,15,240,0,0,0,0,255,192,0,47,253,0,0,0,3,255,0,0,7,255,128,0,0,15,252,0,0,0,255,240,0,0,127,240,0,0,0,47,252,0,2,255,192,0,0,0,11,255,0,31,255,6,64,0,30,65,255,192,191,248,63,192,0,47,224,127,224,63,224,47,208,0,63,192,31,128,15,0,15,240,0,191,128,9,0,0,0,11,244,0,255,0,0,0,0,0,3,252,3,254,0,0,0,0,0,2,255,11,252,0,0,0,0,0,0,255,175,240,0,0,0,0,0,0,63,255,208,0,0,0,0,0,0,31,255,128,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,127,255,208,0,0,0,0,0,2,255,255,248,0,0,0,0,0,47,255,95,255,128,0,0,0,7,255,252,3,255,249,0,0,1,191,255,208,0,191,255,228,0,191,255,253,0,0,11,255,255,240,255,255,208,0,0,0,191,255,240,63,248,0,0,0,0,6,255,192,46,0,0,0,0,0,0,6,64,0,0,0,0,0,0,0,0,0, + // 0x4eae 亮 + 174,78,34,37,77,38,2,251,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,85,85,85,85,85,64,0,0,47,255,255,255,255,255,128,0,0,47,255,255,255,255,255,128,0,0,47,192,0,0,0,63,128,0,0,47,192,0,0,0,63,128,0,0,47,192,0,0,0,63,128,0,0,47,255,255,255,255,255,128,0,0,47,255,255,255,255,255,128,0,0,5,85,85,85,85,85,64,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,0,0,0,0,0,0,15,208,127,0,0,0,0,0,0,15,208,127,0,15,224,3,252,0,15,208,127,0,15,224,3,252,0,15,208,127,0,31,208,3,252,0,15,208,0,0,47,192,3,252,0,0,0,0,0,63,192,3,252,0,0,0,0,0,127,128,3,252,0,0,0,0,0,255,64,3,252,0,7,128,0,3,254,0,3,252,0,7,240,0,47,252,0,3,252,0,11,240,6,255,240,0,2,253,0,15,224,255,255,128,0,2,255,255,255,208,191,249,0,0,0,255,255,255,192,62,64,0,0,0,47,255,254,0,0,0,0,0,0,0,0,0,0, + // 0x4ece 从 + 206,78,34,34,50,38,2,252,0,1,253,0,0,47,192,0,0,0,2,253,0,0,47,192,0,0,0,2,253,0,0,47,192,0,0,0,2,253,0,0,47,192,0,0,0,2,252,0,0,63,192,0,0,0,2,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,208,0,0,0,3,248,0,0,127,208,0,0,0,7,248,0,0,127,224,0,0,0,7,244,0,0,191,240,0,0,0,11,244,0,0,255,240,0,0,0,11,252,0,0,255,240,0,0,0,15,255,0,0,255,244,0,0,0,15,255,192,1,255,252,0,0,0,31,255,224,2,255,252,0,0,0,31,255,244,3,253,253,0,0,0,47,203,252,7,248,254,0,0,0,63,195,255,11,244,255,0,0,0,127,128,255,79,240,191,64,0,0,191,64,191,111,224,63,192,0,0,255,0,62,63,192,47,208,0,1,255,0,28,191,192,31,240,0,3,253,0,1,255,64,15,248,0,7,252,0,3,255,0,7,253,0,15,248,0,11,252,0,3,255,0,47,240,0,47,248,0,0,255,192,127,224,0,191,240,0,0,191,240,255,192,2,255,192,0,0,63,240,255,64,0,191,0,0,0,15,208,46,0,0,44,0,0,0,3,128,4,0,0,0,0,0,0,0,0, + // 0x4ee4 令 + 228,78,36,36,68,38,1,252,0,0,0,1,254,0,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,11,255,208,0,0,0,0,0,0,47,255,240,0,0,0,0,0,0,127,219,252,0,0,0,0,0,1,255,131,255,0,0,0,0,0,7,254,0,255,192,0,0,0,0,31,252,0,63,244,0,0,0,0,127,240,0,15,253,0,0,0,2,255,192,0,3,255,128,0,0,11,255,0,0,0,255,240,0,0,63,253,0,0,0,127,253,0,1,255,223,255,255,255,247,255,208,15,255,79,255,255,255,240,255,248,127,252,15,255,255,255,240,47,253,63,208,0,0,0,0,0,7,248,15,0,0,0,0,0,0,0,176,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,0,0,47,208,0,2,252,0,0,0,0,31,192,0,2,252,0,0,0,0,31,192,0,2,252,0,0,0,0,31,192,0,2,252,0,0,0,0,31,192,0,2,252,0,0,0,0,31,192,0,2,252,0,0,0,0,31,192,0,2,252,0,0,0,0,31,192,0,2,252,0,0,0,0,31,192,15,255,252,0,0,0,0,31,192,11,255,248,0,0,0,0,31,192,7,255,224,0,0,0,0,31,192,1,84,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0, + // 0x4ee5 以 + 229,78,36,33,41,38,1,252,0,63,64,0,0,0,0,249,0,0,63,128,0,0,0,1,254,0,0,63,128,0,0,0,1,253,0,0,63,128,11,128,0,2,253,0,0,63,128,63,208,0,2,252,0,0,63,128,31,240,0,3,252,0,0,63,128,11,252,0,3,252,0,0,63,128,3,254,0,3,248,0,0,63,128,0,255,0,7,248,0,0,63,192,0,191,192,11,244,0,0,63,192,0,63,208,15,240,0,0,63,192,0,31,224,15,240,0,0,63,192,0,15,64,31,224,0,0,63,192,0,0,0,47,208,0,0,47,192,0,0,0,63,192,0,0,47,192,0,0,0,127,128,0,0,47,192,0,0,0,255,64,0,0,47,192,0,0,0,255,0,0,0,47,192,0,0,2,254,0,0,0,47,192,31,0,7,252,0,0,0,47,193,255,0,15,254,0,0,0,47,239,255,64,47,255,128,0,0,31,255,254,0,127,255,208,0,0,191,255,224,1,255,175,244,0,31,255,253,0,7,255,15,253,0,127,255,144,0,31,252,3,255,0,63,248,0,0,191,244,0,255,192,63,64,0,7,255,192,0,127,240,20,0,0,127,255,0,0,31,248,0,0,7,255,248,0,0,11,253,0,0,11,255,208,0,0,3,253,0,0,2,254,0,0,0,0,240,0,0,0,160,0,0,0,0,64, + // 0x4ef6 件 + 246,78,35,36,68,38,1,252,0,0,32,0,0,5,64,0,0,0,0,191,0,0,31,192,0,0,0,0,254,2,144,31,192,0,0,0,1,253,3,244,31,192,0,0,0,3,252,7,240,31,192,0,0,0,7,248,11,240,31,192,0,0,0,15,240,15,224,31,192,0,0,0,31,224,15,208,31,192,0,0,0,63,192,31,255,255,255,255,224,0,127,128,47,255,255,255,255,224,0,255,64,63,255,255,255,255,224,3,255,64,127,149,111,229,85,64,7,255,64,255,0,31,192,0,0,31,255,65,253,0,31,192,0,0,63,255,67,252,0,31,192,0,0,191,255,66,244,0,31,192,0,0,63,63,64,32,0,31,192,0,0,44,63,64,0,0,31,192,0,0,4,63,64,0,0,31,192,0,0,0,63,67,255,255,255,255,255,252,0,63,67,255,255,255,255,255,252,0,63,67,255,255,255,255,255,252,0,63,65,85,85,111,229,85,84,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,47,64,0,0,31,192,0,0, + // 0x4efd 份 + 253,78,36,36,68,38,1,252,0,0,100,0,0,0,0,0,0,0,0,255,0,15,255,255,128,0,0,1,253,0,15,255,255,192,0,0,2,252,0,15,255,255,208,0,0,3,248,1,64,0,15,224,0,0,11,240,3,248,0,15,240,0,0,15,224,3,244,0,7,240,0,0,47,192,11,240,0,3,248,0,0,63,128,15,224,0,3,252,0,0,255,64,47,192,0,1,254,0,1,255,64,63,128,0,0,255,0,3,255,64,191,0,0,0,127,192,15,255,64,254,0,0,0,63,224,47,255,67,252,0,0,0,31,248,127,255,75,244,0,0,0,11,254,255,191,95,240,0,0,0,7,253,190,63,111,239,255,255,255,253,248,60,63,71,95,255,255,255,252,32,32,63,64,31,255,255,255,252,0,0,63,64,0,11,224,1,252,0,0,63,64,0,15,224,1,252,0,0,63,64,0,15,208,1,252,0,0,63,64,0,15,208,1,252,0,0,63,64,0,31,192,2,252,0,0,63,64,0,47,192,2,252,0,0,63,64,0,63,64,2,252,0,0,63,64,0,127,0,2,252,0,0,63,64,0,255,0,3,252,0,0,63,64,1,253,0,3,248,0,0,63,64,3,252,0,3,248,0,0,63,64,15,244,0,3,248,0,0,63,64,63,224,0,11,244,0,0,63,66,255,128,15,255,240,0,0,63,67,254,0,11,255,240,0,0,63,64,244,0,7,255,192,0,0,42,0,64,0,1,84,0,0, + // 0x4f11 休 + 17,79,36,36,68,38,1,252,0,0,4,0,0,0,0,0,0,0,0,47,128,0,63,128,0,0,0,0,63,192,0,63,128,0,0,0,0,191,64,0,63,128,0,0,0,0,255,0,0,63,128,0,0,0,1,254,0,0,63,128,0,0,0,3,252,0,0,63,128,0,0,0,11,248,0,0,63,128,0,0,0,15,240,0,0,63,128,0,0,0,63,224,0,0,63,128,0,0,0,191,211,255,255,255,255,255,252,1,255,211,255,255,255,255,255,252,3,255,211,255,255,255,255,255,252,15,255,209,85,87,255,253,85,84,63,255,208,0,3,255,252,0,0,255,239,208,0,7,255,253,0,0,191,143,208,0,15,255,255,0,0,63,15,208,0,31,255,255,0,0,44,15,208,0,63,255,175,192,0,0,15,208,0,127,127,159,208,0,0,15,208,0,255,63,143,240,0,0,15,208,2,253,63,135,248,0,0,15,208,7,252,63,130,252,0,0,15,208,15,240,63,128,255,0,0,15,208,47,224,63,128,191,128,0,15,208,191,192,63,128,63,208,0,15,209,255,0,63,128,31,244,0,15,219,253,0,63,128,11,253,0,15,239,248,0,63,128,3,255,0,15,219,240,0,63,128,0,252,0,15,210,192,0,63,128,0,48,0,15,208,0,0,63,128,0,0,0,15,208,0,0,63,128,0,0,0,15,208,0,0,63,128,0,0,0,15,208,0,0,63,128,0,0,0,15,192,0,0,63,128,0,0, + // 0x4f20 传 + 32,79,35,36,68,38,1,252,0,0,16,0,0,80,0,0,0,0,0,190,0,0,255,0,0,0,0,0,254,0,0,254,0,0,0,0,1,253,0,1,253,0,0,0,0,3,252,0,2,253,0,0,0,0,7,244,191,255,255,255,255,208,0,15,240,191,255,255,255,255,208,0,31,208,191,255,255,255,255,208,0,63,192,0,11,240,0,0,0,0,191,64,0,15,224,0,0,0,1,255,64,0,15,208,0,0,0,3,255,65,85,111,213,85,85,84,15,255,79,255,255,255,255,255,252,47,255,79,255,255,255,255,255,252,191,255,79,255,255,255,255,255,252,255,191,64,0,191,0,0,0,0,126,63,64,0,255,0,0,0,0,60,63,64,0,253,0,0,0,0,16,63,64,1,252,0,0,0,0,0,63,64,3,255,255,255,255,64,0,63,64,3,255,255,255,255,208,0,63,64,7,255,255,255,255,128,0,63,64,1,85,85,87,254,0,0,63,64,0,0,0,11,252,0,0,63,64,0,0,0,47,240,0,0,63,64,0,0,0,127,192,0,0,63,64,0,15,65,255,0,0,0,63,64,0,63,231,253,0,0,0,63,64,0,47,255,244,0,0,0,63,64,0,7,255,224,0,0,0,63,64,0,0,191,240,0,0,0,63,64,0,0,31,253,0,0,0,63,64,0,0,7,255,64,0,0,63,64,0,0,0,255,192,0,0,63,64,0,0,0,63,0,0,0,63,64,0,0,0,8,0,0, + // 0x4f4d 位 + 77,79,36,36,68,38,1,252,0,0,36,0,0,21,64,0,0,0,0,127,64,0,63,128,0,0,0,0,191,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,2,252,0,0,63,128,0,0,0,3,252,0,0,63,128,0,0,0,11,244,0,0,63,128,0,0,0,31,224,85,85,127,213,85,80,0,63,192,255,255,255,255,255,248,0,191,192,255,255,255,255,255,248,1,255,192,255,255,255,255,255,248,3,255,192,0,0,0,0,0,0,11,255,192,0,0,0,0,0,0,47,255,192,1,96,0,0,249,0,191,255,192,3,240,0,1,254,0,255,175,192,3,244,0,1,253,0,127,47,192,2,248,0,2,252,0,60,47,192,1,252,0,3,252,0,16,47,192,1,252,0,3,248,0,0,47,192,0,253,0,7,244,0,0,47,192,0,254,0,11,240,0,0,47,192,0,190,0,15,240,0,0,47,192,0,191,0,15,224,0,0,47,192,0,127,0,15,208,0,0,47,192,0,127,0,47,192,0,0,47,192,0,63,64,63,192,0,0,47,192,0,63,128,63,64,0,0,47,192,0,63,128,127,0,0,0,47,192,0,63,128,191,0,0,0,47,192,0,16,0,254,0,0,0,47,193,85,85,85,253,85,84,0,47,195,255,255,255,255,255,254,0,47,195,255,255,255,255,255,254,0,47,195,255,255,255,255,255,254,0,47,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0, + // 0x4f4e 低 + 78,79,36,36,68,38,1,252,0,0,80,0,0,0,0,0,0,0,0,254,0,0,0,0,4,0,0,0,254,0,0,0,6,255,0,0,2,252,0,0,22,255,255,192,0,3,252,53,111,255,255,255,128,0,7,244,63,255,255,255,144,0,0,15,240,63,255,255,248,0,0,0,47,208,63,229,3,248,0,0,0,63,192,63,64,3,248,0,0,0,191,64,63,64,3,252,0,0,1,255,64,63,64,2,252,0,0,3,255,64,63,64,2,252,0,0,11,255,64,63,64,2,252,0,0,31,255,64,63,64,2,252,0,0,127,255,64,63,255,255,255,255,253,255,255,64,63,255,255,255,255,253,255,63,64,63,255,255,255,255,253,60,63,64,63,64,0,253,0,0,36,63,64,63,64,0,254,0,0,0,63,64,63,64,0,254,0,0,0,63,64,63,64,0,191,0,0,0,63,64,63,64,0,191,0,0,0,63,64,63,64,0,127,0,0,0,63,64,63,64,0,63,64,0,0,63,64,63,64,5,63,128,0,0,63,64,63,155,255,111,192,0,0,63,65,191,255,255,95,208,32,0,63,71,255,255,255,79,224,46,0,63,67,255,250,64,11,240,63,0,63,67,229,0,0,7,248,63,0,63,64,0,0,0,3,253,127,0,63,64,0,0,0,1,255,254,0,63,65,255,255,255,252,191,252,0,63,65,255,255,255,252,47,248,0,63,65,255,255,255,252,6,144,0,63,64,0,0,0,0,0,0, + // 0x4f53 体 + 83,79,36,36,68,38,1,252,0,0,144,0,0,42,0,0,0,0,1,253,0,0,63,64,0,0,0,2,252,0,0,63,64,0,0,0,3,248,0,0,63,64,0,0,0,7,244,0,0,63,64,0,0,0,15,240,0,0,63,64,0,0,0,31,208,0,0,63,64,0,0,0,63,193,85,85,127,149,85,84,0,127,135,255,255,255,255,255,252,0,255,71,255,255,255,255,255,252,1,255,71,255,255,255,255,255,252,3,255,64,0,7,255,244,0,0,11,255,64,0,11,255,252,0,0,31,255,64,0,15,255,252,0,0,127,255,64,0,31,255,190,0,0,191,255,64,0,63,127,127,0,0,63,63,64,0,127,63,111,128,0,44,63,64,0,253,63,95,192,0,4,63,64,1,252,63,79,224,0,0,63,64,3,244,63,71,240,0,0,63,64,11,240,63,67,248,0,0,63,64,31,208,63,65,253,0,0,63,64,63,192,63,64,255,0,0,63,64,191,64,63,64,127,192,0,63,65,254,0,63,64,47,224,0,63,71,253,0,127,64,31,244,0,63,95,247,255,255,255,247,254,0,63,111,227,255,255,255,242,253,0,63,75,131,255,255,255,240,244,0,63,66,0,0,63,64,0,16,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,64,0,0,63,64,0,0,0,63,0,0,0,42,0,0,0, + // 0x4f59 余 + 89,79,36,37,77,38,1,251,0,0,0,1,254,0,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,15,255,208,0,0,0,0,0,0,47,255,244,0,0,0,0,0,0,191,199,253,0,0,0,0,0,2,255,1,255,128,0,0,0,0,15,253,0,127,224,0,0,0,0,63,244,0,31,252,0,0,0,1,255,192,0,7,255,64,0,0,11,255,0,0,0,255,224,0,0,63,248,0,0,0,47,253,0,2,255,224,0,0,0,11,255,208,47,255,255,255,255,255,255,255,253,127,248,255,255,255,255,254,47,252,31,208,255,255,255,255,254,7,244,9,0,0,0,254,0,0,0,96,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,1,85,85,85,255,85,85,85,64,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,180,0,254,0,60,0,0,0,1,254,0,254,1,255,64,0,0,7,252,0,254,0,191,224,0,0,31,240,0,254,0,31,248,0,0,191,208,0,254,0,7,254,0,2,255,64,0,254,0,1,255,192,31,253,0,0,254,0,0,127,240,63,240,1,85,254,0,0,31,244,15,192,3,255,254,0,0,7,208,1,0,3,255,252,0,0,1,0,0,0,1,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x4f5c 作 + 92,79,36,36,68,38,1,252,0,0,20,0,0,0,0,0,0,0,0,63,64,11,224,0,0,0,0,0,191,64,15,240,0,0,0,0,0,255,0,31,208,0,0,0,0,1,253,0,47,192,0,0,0,0,3,252,0,63,128,0,0,0,0,7,248,0,191,149,85,85,84,0,15,240,0,255,255,255,255,253,0,31,224,2,255,255,255,255,253,0,63,192,3,255,255,255,255,253,0,255,192,15,240,127,64,0,0,1,255,192,31,224,127,64,0,0,3,255,192,63,192,127,64,0,0,15,255,192,255,64,127,64,0,0,63,255,194,255,0,127,64,0,0,127,255,195,252,0,127,255,255,248,63,111,192,244,0,127,255,255,248,30,47,192,16,0,127,255,255,248,8,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,85,85,84,0,47,192,0,0,127,255,255,252,0,47,192,0,0,127,255,255,252,0,47,192,0,0,127,255,255,252,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,31,192,0,0,127,0,0,0, + // 0x4f7f 使 + 127,79,36,37,77,38,1,251,0,0,57,0,0,26,128,0,0,0,0,127,64,0,47,192,0,0,0,0,255,0,0,47,192,0,0,0,1,253,0,0,47,192,0,0,0,2,254,255,255,255,255,255,253,0,7,250,255,255,255,255,255,253,0,15,242,255,255,255,255,255,253,0,31,224,0,0,47,192,0,0,0,63,192,0,0,47,192,0,0,0,191,192,0,0,47,192,0,0,1,255,192,0,0,47,192,0,0,3,255,192,191,255,255,255,255,244,15,255,192,191,255,255,255,255,244,47,255,192,191,255,255,255,255,244,191,255,192,190,0,47,192,3,244,255,175,192,190,0,47,192,3,244,127,47,192,190,0,47,192,3,244,60,47,192,190,0,47,192,3,244,16,47,192,190,0,47,192,3,244,0,47,192,191,255,255,255,255,244,0,47,192,191,255,255,255,255,244,0,47,192,191,255,255,255,255,244,0,47,192,0,0,63,128,0,0,0,47,192,127,0,63,64,0,0,0,47,192,63,128,127,0,0,0,0,47,192,15,224,191,0,0,0,0,47,192,11,248,254,0,0,0,0,47,192,2,255,252,0,0,0,0,47,192,0,191,248,0,0,0,0,47,192,0,63,253,0,0,0,0,47,192,0,255,255,228,0,0,0,47,192,11,255,191,255,144,0,0,47,193,255,253,11,255,255,229,0,47,203,255,224,0,191,255,253,0,47,195,254,0,0,6,255,248,0,47,192,224,0,0,0,6,176,0,0,0,0,0,0,0,0,0, + // 0x4f9b 供 + 155,79,36,36,68,38,1,252,0,0,36,0,105,0,6,160,0,0,0,191,0,191,0,11,240,0,0,0,254,0,191,0,11,240,0,0,1,253,0,191,0,11,240,0,0,3,252,0,191,0,11,240,0,0,7,244,0,191,0,11,240,0,0,15,240,0,191,0,11,240,0,0,47,208,0,191,0,11,240,0,0,63,192,255,255,255,255,255,252,0,191,64,255,255,255,255,255,252,1,255,64,255,255,255,255,255,252,3,255,64,85,191,85,91,245,84,15,255,64,0,191,0,11,240,0,47,255,64,0,191,0,11,240,0,127,255,64,0,191,0,11,240,0,255,191,64,0,191,0,11,240,0,127,63,64,0,191,0,11,240,0,60,63,64,0,191,0,11,240,0,20,63,64,0,191,0,11,240,0,0,63,64,0,191,0,11,240,0,0,63,65,85,255,85,95,245,84,0,63,67,255,255,255,255,255,253,0,63,67,255,255,255,255,255,253,0,63,67,255,255,255,255,255,253,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,61,0,1,192,0,0,63,64,0,191,64,15,240,0,0,63,64,1,254,0,7,252,0,0,63,64,7,252,0,2,254,0,0,63,64,15,244,0,0,191,128,0,63,64,63,208,0,0,63,208,0,63,65,255,128,0,0,15,240,0,63,67,254,0,0,0,7,252,0,63,65,248,0,0,0,2,244,0,63,64,32,0,0,0,0,128, + // 0x4fb5 侵 + 181,79,36,36,68,38,1,251,0,0,190,0,0,0,0,0,0,0,0,254,47,255,255,255,255,128,0,2,252,47,255,255,255,255,128,0,3,252,26,170,170,170,191,128,0,7,244,0,0,0,0,63,128,0,15,240,0,0,0,0,63,128,0,47,208,15,255,255,255,255,128,0,63,192,15,255,255,255,255,128,0,191,64,6,170,170,170,191,128,1,255,64,0,0,0,0,63,128,3,255,64,0,0,0,0,63,128,15,255,64,63,255,255,255,255,128,47,255,64,63,255,255,255,255,128,191,255,64,42,170,170,170,170,64,255,191,64,0,0,0,0,0,0,126,63,66,170,170,170,170,170,168,56,63,67,255,255,255,255,255,252,0,63,67,255,255,255,255,255,252,0,63,67,240,0,0,0,1,252,0,63,67,240,0,0,0,1,252,0,63,67,240,0,0,0,1,252,0,63,67,255,255,255,255,255,252,0,63,64,15,255,255,255,255,0,0,63,64,15,255,255,255,252,0,0,63,64,1,253,0,3,248,0,0,63,64,0,255,0,15,240,0,0,63,64,0,63,208,63,208,0,0,63,64,0,31,249,255,64,0,0,63,64,0,7,255,253,0,0,0,63,64,0,2,255,248,0,0,0,63,64,0,111,255,255,208,0,0,63,64,111,255,254,255,255,164,0,63,67,255,255,128,47,255,253,0,63,66,255,244,0,1,191,248,0,63,0,228,0,0,0,1,176,0,0,0,0,0,0,0,0,0, + // 0x4fdd 保 + 221,79,36,36,68,38,1,252,0,0,36,0,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,191,31,255,255,255,255,192,0,0,254,31,255,255,255,255,192,0,2,252,31,255,255,255,255,192,0,3,248,31,192,0,0,31,192,0,15,240,31,192,0,0,31,192,0,31,224,31,192,0,0,31,192,0,63,192,31,192,0,0,31,192,0,191,192,31,192,0,0,31,192,1,255,192,31,192,0,0,31,192,3,255,192,31,255,255,255,255,192,15,255,192,31,255,255,255,255,192,63,255,192,31,255,255,255,255,192,191,239,192,0,0,47,192,0,0,191,111,192,0,0,47,192,0,0,62,47,192,0,0,47,192,0,0,44,47,192,0,0,47,192,0,0,0,47,192,0,0,47,192,0,0,0,47,195,255,255,255,255,255,252,0,47,195,255,255,255,255,255,252,0,47,195,255,255,255,255,255,252,0,47,192,0,3,255,252,0,0,0,47,192,0,11,255,255,0,0,0,47,192,0,31,255,255,128,0,0,47,192,0,63,239,223,208,0,0,47,192,0,255,47,207,244,0,0,47,192,3,253,47,195,253,0,0,47,192,31,248,47,193,255,64,0,47,192,127,224,47,192,127,208,0,47,195,255,128,47,192,47,248,0,47,207,254,0,47,192,11,255,0,47,199,248,0,47,192,2,253,0,47,193,208,0,47,192,0,116,0,47,192,0,0,47,192,0,0,0,31,128,0,0,47,192,0,0, + // 0x4fe1 信 + 225,79,36,36,68,38,1,252,0,0,36,0,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,191,7,255,255,255,255,0,0,0,254,7,255,255,255,255,0,0,2,252,3,255,255,255,255,0,0,3,248,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,31,227,255,255,255,255,255,253,0,63,195,255,255,255,255,255,253,0,191,195,255,255,255,255,255,253,0,255,192,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,11,255,192,0,0,0,0,0,0,47,255,192,15,255,255,255,255,128,127,255,192,15,255,255,255,255,128,255,175,192,11,255,255,255,255,128,191,47,192,0,0,0,0,0,0,60,47,192,0,0,0,0,0,0,16,47,192,11,255,255,255,255,64,0,47,192,15,255,255,255,255,128,0,47,192,15,255,255,255,255,128,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,15,255,255,255,255,192,0,47,192,31,255,255,255,255,192,0,47,192,31,255,255,255,255,192,0,47,192,31,192,0,0,31,192,0,47,192,31,192,0,0,31,192,0,47,192,31,192,0,0,31,192,0,47,192,31,192,0,0,31,192,0,47,192,31,192,0,0,31,192,0,47,192,31,255,255,255,255,192,0,47,192,31,255,255,255,255,192,0,47,192,31,255,255,255,255,192,0,47,192,31,192,0,0,31,192,0,26,128,15,192,0,0,26,128, + // 0x503c 值 + 60,80,36,36,68,38,1,252,0,0,96,0,0,30,128,0,0,0,0,254,0,0,47,192,0,0,0,0,253,0,0,63,192,0,0,0,2,252,0,0,63,128,0,0,0,3,249,255,255,255,255,255,244,0,7,241,255,255,255,255,255,244,0,15,241,255,255,255,255,255,244,0,31,208,0,0,127,0,0,0,0,63,192,0,0,190,0,0,0,0,191,64,0,0,253,0,0,0,0,255,0,26,170,254,170,170,0,3,255,0,31,255,255,255,255,0,11,255,0,31,255,255,255,255,0,31,255,0,31,128,0,0,63,0,63,255,0,31,128,0,0,63,0,191,255,0,31,128,0,0,63,0,63,127,0,31,255,255,255,255,0,45,63,0,31,255,255,255,255,0,8,63,0,31,234,170,170,191,0,0,63,0,31,128,0,0,63,0,0,63,0,31,128,0,0,63,0,0,63,0,31,255,255,255,255,0,0,63,0,31,255,255,255,255,0,0,63,0,31,213,85,85,191,0,0,63,0,31,128,0,0,63,0,0,63,0,31,128,0,0,63,0,0,63,0,31,213,85,85,191,0,0,63,0,31,255,255,255,255,0,0,63,0,31,255,255,255,255,0,0,63,0,31,128,0,0,63,0,0,63,0,31,128,0,0,63,0,0,63,0,31,128,0,0,63,0,0,63,15,255,255,255,255,255,253,0,63,15,255,255,255,255,255,253,0,63,15,255,255,255,255,255,253,0,63,0,0,0,0,0,0,0, + // 0x503e 倾 + 62,80,36,37,77,38,1,251,0,7,144,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,15,208,0,15,255,255,255,253,0,31,192,0,15,255,255,255,253,0,47,199,224,15,255,255,255,253,0,63,71,224,0,0,63,64,0,0,127,7,224,0,0,127,0,0,0,254,7,224,0,0,190,0,0,1,253,7,224,0,0,253,0,0,3,253,7,224,2,255,255,255,224,7,253,7,224,2,255,255,255,224,15,253,7,224,2,255,255,255,224,31,253,7,255,242,248,0,11,224,63,253,7,255,242,248,20,11,224,191,253,7,255,242,248,63,11,224,255,189,7,224,2,248,63,11,224,188,189,7,224,2,248,63,11,224,56,189,7,224,2,248,63,11,224,32,189,7,224,2,248,63,11,224,0,189,7,224,2,248,63,11,224,0,189,7,224,2,248,63,11,224,0,189,7,224,2,248,63,11,224,0,189,7,224,18,248,62,11,224,0,189,7,225,242,248,62,11,224,0,189,7,255,242,248,62,11,224,0,189,7,255,226,248,126,11,224,0,189,15,255,66,248,253,11,224,0,189,15,244,0,0,252,0,0,0,189,11,128,0,2,248,224,0,0,189,5,0,0,7,247,252,0,0,189,0,0,0,31,226,255,64,0,189,0,0,0,127,192,127,208,0,189,0,0,2,255,0,15,248,0,189,0,0,47,252,0,3,252,0,189,0,0,47,224,0,0,248,0,189,0,0,14,0,0,0,32,0,0,0,0,0,0,0,0,0, + // 0x504f 偏 + 79,80,36,36,68,38,1,252,0,1,128,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,246,255,255,255,255,255,253,0,11,243,255,255,255,255,255,253,0,15,227,255,255,255,255,255,253,0,31,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,64,42,170,170,170,170,160,0,191,0,127,255,255,255,255,240,0,255,0,127,255,255,255,255,240,3,255,0,127,0,0,0,11,240,7,255,0,127,0,0,0,11,240,15,255,0,127,0,0,0,11,240,47,255,0,127,0,0,0,11,240,127,255,0,127,255,255,255,255,240,255,255,0,127,255,255,255,255,240,255,127,0,127,170,170,170,170,160,124,127,0,127,0,0,0,0,0,52,127,0,127,0,0,0,0,0,0,127,0,191,255,255,255,255,248,0,127,0,191,255,255,255,255,248,0,127,0,255,255,255,255,255,248,0,127,0,255,240,124,15,66,248,0,127,0,255,240,124,15,66,248,0,127,1,255,240,124,15,66,248,0,127,2,255,240,124,15,66,248,0,127,3,251,255,255,255,255,248,0,127,3,247,255,255,255,255,248,0,127,7,243,250,255,191,235,248,0,127,15,227,240,124,15,66,248,0,127,31,211,240,124,15,66,248,0,127,63,195,240,124,15,66,248,0,127,127,67,240,124,15,66,248,0,127,30,3,240,124,15,127,244,0,127,0,3,240,124,15,95,240,0,127,0,3,240,124,15,79,208, + // 0x505c 停 + 92,80,36,36,68,38,1,252,0,0,80,0,0,42,128,0,0,0,0,255,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,2,252,0,0,63,192,0,0,0,3,251,255,255,255,255,255,252,0,11,243,255,255,255,255,255,252,0,15,243,255,255,255,255,255,252,0,47,192,0,0,0,0,0,0,0,63,128,5,85,85,85,85,0,0,255,64,15,255,255,255,255,64,2,255,64,15,255,255,255,255,64,7,255,64,15,192,0,0,63,64,15,255,64,15,192,0,0,63,64,63,255,64,15,192,0,0,63,64,191,255,64,15,255,255,255,255,64,255,127,64,15,255,255,255,255,64,125,63,64,5,85,85,85,85,0,56,63,64,0,0,0,0,0,0,16,63,71,255,255,255,255,255,254,0,63,75,255,255,255,255,255,254,0,63,75,255,255,255,255,255,254,0,63,75,224,0,0,0,0,190,0,63,75,224,0,0,0,0,190,0,63,75,226,255,255,255,252,190,0,63,75,227,255,255,255,252,190,0,63,75,227,255,255,255,252,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,255,255,128,0,0,0,63,64,0,191,255,64,0,0,0,63,0,0,127,249,0,0,0, + // 0x50a8 储 + 168,80,36,36,68,38,1,252,0,7,144,0,0,11,224,0,0,0,11,224,0,0,11,224,0,228,0,15,193,128,0,11,224,2,252,0,31,203,224,0,11,224,3,244,0,47,135,244,15,255,255,235,240,0,63,2,253,15,255,255,255,208,0,127,0,255,15,255,255,255,192,0,190,0,63,64,11,224,63,128,0,252,0,29,0,11,224,255,0,2,252,0,4,0,11,225,253,0,3,252,0,0,0,11,227,252,0,11,252,0,0,0,11,235,244,0,15,252,21,84,63,255,255,255,253,47,252,191,252,63,255,255,255,253,127,252,191,252,63,255,255,255,253,255,252,191,252,0,3,253,0,0,189,252,0,252,0,15,248,0,0,56,252,0,252,0,63,224,0,0,32,252,0,252,1,255,192,0,0,0,252,0,252,11,255,255,255,240,0,252,0,252,127,255,255,255,240,0,252,0,252,255,255,255,255,240,0,252,0,252,63,253,0,7,240,0,252,0,252,24,189,0,7,240,0,252,0,252,0,189,0,7,240,0,252,0,252,0,191,255,255,240,0,252,0,252,0,191,255,255,240,0,252,0,252,36,191,170,171,240,0,252,0,254,248,189,0,7,240,0,252,0,255,252,189,0,7,240,0,252,2,255,224,189,0,7,240,0,252,7,255,64,191,255,255,240,0,252,3,248,0,191,255,255,240,0,252,1,208,0,191,255,255,240,0,252,0,0,0,189,0,7,240,0,168,0,0,0,105,0,2,144, + // 0x50cf 像 + 207,80,36,36,68,38,1,252,0,1,144,0,121,0,0,0,0,0,3,248,0,254,0,0,0,0,0,3,244,2,254,170,168,0,0,0,11,240,7,255,255,255,0,0,0,15,224,15,255,255,255,0,0,0,31,208,63,192,1,253,0,0,0,63,192,255,64,3,252,0,0,0,63,130,254,0,11,244,0,0,0,191,15,255,255,255,255,255,240,0,255,63,255,255,255,255,255,240,3,255,15,254,85,127,149,91,240,7,255,2,252,0,63,64,7,240,15,255,0,252,0,63,64,7,240,47,255,0,252,0,63,64,7,240,127,255,0,255,255,255,255,255,240,255,191,0,255,255,255,255,255,240,190,127,0,85,111,250,253,85,80,60,127,0,0,191,208,252,0,0,48,127,0,11,255,192,189,1,240,0,127,1,255,255,240,126,7,252,0,127,15,255,131,248,63,31,244,0,127,7,248,7,253,63,255,192,0,127,2,64,47,255,47,254,0,0,127,0,1,255,127,79,244,0,0,127,0,47,248,31,203,224,0,0,127,6,255,208,47,199,240,0,0,127,11,253,0,255,211,252,0,0,127,3,208,7,255,225,254,0,0,127,0,0,63,251,224,191,64,0,127,0,2,255,139,224,63,208,0,127,0,47,253,11,224,31,244,0,127,6,255,224,15,208,11,253,0,127,31,255,64,63,192,2,252,0,127,15,244,127,255,128,0,176,0,127,2,0,63,255,0,0,0,0,127,0,0,63,228,0,0,0, + // 0x5145 充 + 69,81,35,36,68,38,2,252,0,0,0,2,164,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,21,85,85,87,253,85,85,85,64,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,0,0,7,248,0,1,0,0,0,0,0,15,240,0,31,128,0,0,0,0,15,224,0,63,224,0,0,0,0,47,192,0,15,252,0,0,0,0,63,128,0,3,255,0,0,0,0,191,0,0,0,255,192,0,0,0,255,170,191,255,255,240,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,255,0,15,255,255,255,234,149,80,255,128,14,149,0,0,0,0,0,63,128,0,0,10,160,0,254,0,28,0,0,0,15,240,0,254,0,0,0,0,0,15,224,0,254,0,0,0,0,0,15,224,0,254,0,0,0,0,0,31,208,0,254,0,0,0,0,0,47,192,0,254,0,0,0,0,0,63,192,0,254,0,0,0,0,0,127,128,0,254,0,3,144,0,0,255,64,0,254,0,3,244,0,2,255,0,0,254,0,3,244,0,11,252,0,0,254,0,3,244,0,127,244,0,0,254,0,3,240,7,255,224,0,0,255,0,11,240,191,255,64,0,0,255,255,255,224,191,248,0,0,0,127,255,255,208,63,128,0,0,0,47,255,255,128,20,0,0,0,0,0,85,80,0, + // 0x5148 先 + 72,81,34,37,77,38,2,251,0,0,0,2,248,0,0,0,0,0,3,160,3,252,0,0,0,0,0,7,244,3,252,0,0,0,0,0,11,240,3,252,0,0,0,0,0,15,240,3,252,0,0,0,0,0,31,208,3,252,0,0,0,0,0,47,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,127,255,255,255,255,255,252,0,0,255,85,87,253,85,85,84,0,1,253,0,3,252,0,0,0,0,3,252,0,3,252,0,0,0,0,11,244,0,3,252,0,0,0,0,11,240,0,3,252,0,0,0,0,1,208,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,21,85,85,87,253,85,85,85,80,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,15,208,0,254,0,0,0,0,0,31,208,0,254,0,0,0,0,0,47,192,0,254,0,0,0,0,0,63,192,0,254,0,0,0,0,0,63,128,0,254,0,0,0,0,0,127,128,0,254,0,0,0,0,0,255,0,0,254,0,1,0,0,1,255,0,0,254,0,3,208,0,3,253,0,0,254,0,3,240,0,15,252,0,0,254,0,7,240,0,63,240,0,0,254,0,7,240,2,255,208,0,0,254,0,15,224,47,255,64,0,0,255,255,255,208,191,252,0,0,0,191,255,255,192,63,224,0,0,0,47,255,255,64,30,0,0,0,0,1,85,80,0,0,0,0,0,0,0,0,0,0, + // 0x5149 光 + 73,81,36,37,77,38,1,251,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,30,0,0,254,0,0,189,0,0,191,0,0,254,0,0,255,0,0,63,128,0,254,0,1,254,0,0,47,208,0,254,0,3,252,0,0,15,240,0,254,0,7,248,0,0,11,244,0,254,0,15,240,0,0,3,248,0,254,0,31,224,0,0,3,252,0,254,0,63,192,0,0,1,253,0,254,0,127,64,0,0,0,253,0,254,0,127,0,0,0,0,80,0,254,0,4,0,0,0,0,0,0,254,0,0,0,0,21,85,85,85,255,85,85,85,84,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,3,248,0,63,64,0,0,0,0,7,244,0,63,64,0,0,0,0,7,244,0,63,64,0,0,0,0,11,240,0,63,64,0,0,0,0,11,240,0,63,64,0,0,0,0,15,240,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,47,208,0,63,64,0,0,0,0,63,192,0,63,64,0,64,0,0,191,128,0,63,64,0,248,0,1,255,0,0,63,64,0,253,0,7,254,0,0,63,64,0,253,0,31,252,0,0,63,64,0,252,0,255,240,0,0,63,128,1,252,31,255,192,0,0,63,213,87,252,127,254,0,0,0,63,255,255,248,47,244,0,0,0,31,255,255,240,14,64,0,0,0,7,255,255,128,0,0,0,0,0,0,0,0,0, + // 0x5165 入 + 101,81,35,34,50,38,2,252,0,2,170,170,168,0,0,0,0,0,3,255,255,253,0,0,0,0,0,3,255,255,253,0,0,0,0,0,3,255,255,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,5,255,0,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,31,255,128,0,0,0,0,0,0,47,255,192,0,0,0,0,0,0,63,255,192,0,0,0,0,0,0,127,223,208,0,0,0,0,0,0,191,79,240,0,0,0,0,0,0,255,11,244,0,0,0,0,0,2,254,7,248,0,0,0,0,0,3,253,3,252,0,0,0,0,0,7,252,2,254,0,0,0,0,0,15,244,0,255,64,0,0,0,0,47,240,0,191,192,0,0,0,0,127,192,0,63,224,0,0,0,0,255,128,0,31,244,0,0,0,3,255,0,0,15,253,0,0,0,11,253,0,0,3,255,0,0,0,47,248,0,0,1,255,192,0,0,191,224,0,0,0,127,244,0,3,255,192,0,0,0,47,254,0,31,255,0,0,0,0,11,255,192,255,252,0,0,0,0,1,255,244,255,224,0,0,0,0,0,127,224,47,64,0,0,0,0,0,15,192,8,0,0,0,0,0,0,1,0, + // 0x5168 全 + 104,81,36,35,59,38,1,253,0,0,0,1,255,0,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,15,255,224,0,0,0,0,0,0,47,255,244,0,0,0,0,0,0,191,199,253,0,0,0,0,0,2,255,66,255,64,0,0,0,0,7,254,0,191,208,0,0,0,0,31,248,0,47,244,0,0,0,0,191,224,0,11,254,0,0,0,2,255,128,0,2,255,192,0,0,15,254,0,0,0,191,244,0,0,127,244,0,0,0,31,254,0,2,255,208,0,0,0,3,255,208,31,255,0,0,0,0,0,255,253,127,251,255,255,255,255,255,239,252,47,211,255,255,255,255,255,195,244,14,3,255,255,255,255,255,192,176,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240, + // 0x5171 共 + 113,81,34,36,68,38,2,252,0,0,106,0,0,10,144,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,21,85,191,85,85,95,245,85,64,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,85,85,85,85,85,85,80,0,0,0,0,0,0,0,0,0,0,0,4,0,0,5,0,0,0,0,0,63,144,0,63,128,0,0,0,0,191,208,0,191,240,0,0,0,3,255,64,0,31,253,0,0,0,15,253,0,0,3,255,128,0,0,127,244,0,0,0,255,240,0,2,255,208,0,0,0,47,252,0,31,255,0,0,0,0,7,255,0,127,248,0,0,0,0,1,255,192,31,208,0,0,0,0,0,127,64,6,0,0,0,0,0,0,24,0, + // 0x5173 关 + 115,81,27,36,252,38,5,252,0,0,0,0,0,160,0,0,47,0,0,0,255,0,0,127,64,0,2,254,0,0,63,192,0,3,252,0,0,15,240,0,11,244,0,0,11,244,0,15,224,0,0,3,252,0,47,192,0,0,2,240,0,31,64,0,1,86,149,85,86,85,64,3,255,255,255,255,255,192,3,255,255,255,255,255,192,3,255,255,255,255,255,192,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,31,255,255,255,255,255,248,31,255,255,255,255,255,248,31,255,255,255,255,255,248,5,85,86,255,149,85,80,0,0,2,255,192,0,0,0,0,3,255,208,0,0,0,0,7,255,240,0,0,0,0,15,251,244,0,0,0,0,31,227,252,0,0,0,0,63,193,255,0,0,0,0,255,64,191,192,0,0,7,254,0,63,240,0,0,47,252,0,15,253,0,1,255,240,0,7,255,208,31,255,128,0,1,255,252,127,253,0,0,0,63,252,47,224,0,0,0,7,240,10,0,0,0,0,0,80, + // 0x5177 具 + 119,81,34,34,50,38,2,252,0,31,255,255,255,255,255,128,0,0,31,255,255,255,255,255,128,0,0,31,250,170,170,170,191,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,234,170,170,170,191,128,0,0,31,255,255,255,255,255,128,0,0,31,255,255,255,255,255,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,234,170,170,170,191,128,0,0,31,255,255,255,255,255,128,0,0,31,255,255,255,255,255,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,255,255,255,255,255,128,0,0,31,255,255,255,255,255,128,0,0,31,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,21,85,85,85,85,85,85,85,64,0,0,11,0,0,9,0,0,0,0,0,127,208,0,63,224,0,0,0,11,255,240,0,255,255,64,0,0,191,255,64,0,31,255,244,0,47,255,244,0,0,1,191,255,128,191,255,64,0,0,0,11,255,240,47,228,0,0,0,0,0,191,128,9,0,0,0,0,0,0,9,0, + // 0x5197 冗 + 151,81,35,34,50,38,2,252,21,85,85,85,85,85,85,85,64,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,128,0,0,0,0,0,47,192,63,128,0,0,0,0,0,47,192,63,128,0,0,0,0,0,47,192,63,128,0,0,0,0,0,47,192,63,128,0,0,0,0,0,47,192,63,128,0,0,0,0,0,47,192,63,128,21,85,85,85,64,47,192,0,0,127,255,255,255,208,0,0,0,0,127,255,255,255,208,0,0,0,0,127,255,255,255,208,0,0,0,0,127,64,0,31,208,0,0,0,0,127,64,0,31,208,0,0,0,0,127,64,0,31,208,0,0,0,0,127,64,0,31,208,0,0,0,0,127,64,0,31,208,0,0,0,0,191,0,0,31,208,0,0,0,0,191,0,0,31,208,0,0,0,0,191,0,0,31,208,0,0,0,0,255,0,0,31,208,0,0,0,0,254,0,0,31,208,1,0,0,2,253,0,0,31,208,3,208,0,3,252,0,0,31,208,3,244,0,15,248,0,0,31,208,3,244,0,63,240,0,0,31,208,3,244,1,255,208,0,0,31,208,3,240,11,255,64,0,0,31,224,11,240,191,253,0,0,0,31,255,255,240,255,244,0,0,0,15,255,255,208,63,128,0,0,0,7,255,255,128,40,0,0,0,0,0,85,84,0, + // 0x51b7 冷 + 183,81,36,36,68,38,1,252,0,0,0,0,0,169,0,0,0,0,0,0,0,3,255,64,0,0,2,0,0,0,7,255,192,0,0,15,192,0,0,15,255,224,0,0,47,244,0,0,63,223,248,0,0,31,254,0,0,191,131,254,0,0,3,255,128,1,255,1,255,64,0,0,191,224,7,253,0,127,208,0,0,47,208,31,244,0,47,248,0,0,11,64,127,224,0,11,254,0,0,1,1,255,128,0,2,255,192,0,0,11,255,85,85,85,191,248,0,0,63,250,255,255,255,95,254,0,0,255,226,255,255,255,67,252,0,0,191,66,255,255,255,64,180,0,0,60,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,85,85,85,85,85,0,0,3,129,255,255,255,255,255,128,0,7,241,255,255,255,255,255,128,0,15,241,255,255,255,255,255,128,0,47,224,0,15,224,0,63,128,0,63,192,0,15,224,0,63,128,0,191,64,0,15,224,0,63,128,1,255,0,0,15,224,0,63,128,3,253,0,0,15,224,0,63,128,11,252,0,0,15,224,0,63,128,15,244,0,0,15,224,0,63,128,63,224,0,0,15,224,127,255,128,127,192,0,0,15,224,63,255,64,31,64,0,0,15,224,47,254,0,2,0,0,0,15,224,5,64,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,11,224,0,0,0, + // 0x51c6 准 + 198,81,36,36,68,38,1,252,0,0,0,0,36,0,5,0,0,0,0,0,0,191,0,15,224,0,0,0,0,0,255,0,31,208,0,3,192,0,1,253,0,47,192,0,15,244,0,2,252,0,63,128,0,15,254,0,3,248,0,127,0,0,2,255,192,11,240,0,191,0,0,0,127,240,15,240,0,254,0,0,0,31,240,47,255,255,255,255,248,0,3,208,127,255,255,255,255,248,0,0,64,255,255,255,255,255,248,0,0,2,255,192,2,248,0,0,0,0,11,255,192,2,248,0,0,0,0,31,255,192,2,248,0,0,0,0,127,239,192,2,248,0,0,0,0,63,143,255,255,255,255,224,0,0,15,15,255,255,255,255,224,0,0,0,15,255,255,255,255,224,0,0,0,15,208,3,248,0,0,0,1,0,15,192,2,248,0,0,0,3,128,15,192,2,248,0,0,0,15,224,15,192,2,248,0,0,0,31,240,15,192,2,248,0,0,0,63,192,15,255,255,255,255,224,0,191,128,15,255,255,255,255,224,0,255,0,15,255,255,255,255,224,3,253,0,15,208,3,248,0,0,7,252,0,15,192,2,248,0,0,15,240,0,15,192,2,248,0,0,63,224,0,15,192,2,248,0,0,127,192,0,15,213,87,253,85,84,31,64,0,15,255,255,255,255,253,6,0,0,15,255,255,255,255,253,0,0,0,15,255,255,255,255,253,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0, + // 0x51fa 出 + 250,81,30,36,32,38,4,252,0,0,0,42,64,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,255,255,255,255,255,255,64,31,255,255,255,255,255,255,64,31,255,255,255,255,255,255,64,5,85,85,127,213,85,85,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,255,255,255,255,255,255,240,191,255,255,255,255,255,255,240,191,255,255,255,255,255,255,240,191,85,85,85,85,85,95,240,191,0,0,0,0,0,11,240,190,0,0,0,0,0,11,224, + // 0x51fb 击 + 251,81,34,36,68,38,2,252,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,3,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,252,0,1,85,85,87,253,85,85,84,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,85,85,85,87,253,85,85,85,80,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,1,168,0,2,252,0,3,244,0,1,253,0,2,252,0,3,244,0,1,253,0,2,252,0,3,244,0,1,253,0,2,252,0,3,244,0,1,253,0,2,252,0,3,244,0,1,253,0,2,252,0,3,244,0,1,253,0,2,252,0,3,244,0,1,253,0,2,252,0,3,244,0,1,253,0,2,252,0,3,244,0,1,254,85,87,253,85,91,244,0,1,255,255,255,255,255,255,244,0,1,255,255,255,255,255,255,244,0,1,255,255,255,255,255,255,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0, + // 0x5206 分 + 6,82,36,35,59,38,1,252,0,0,3,224,0,7,192,0,0,0,0,11,248,0,31,224,0,0,0,0,15,240,0,15,244,0,0,0,0,47,224,0,7,252,0,0,0,0,63,192,0,3,254,0,0,0,0,255,128,0,0,255,64,0,0,2,255,0,0,0,191,192,0,0,3,253,0,0,0,63,240,0,0,15,252,0,0,0,15,248,0,0,63,240,0,0,0,7,254,0,0,255,208,0,0,0,3,255,128,2,255,128,0,0,0,0,255,224,15,254,0,0,0,0,0,63,248,63,254,85,85,85,85,85,111,254,191,235,255,255,255,255,255,247,252,47,139,255,255,255,255,255,241,240,10,11,255,255,255,255,255,240,80,0,0,0,47,192,0,15,224,0,0,0,0,63,192,0,15,224,0,0,0,0,63,192,0,15,224,0,0,0,0,127,128,0,15,224,0,0,0,0,127,64,0,15,224,0,0,0,0,255,0,0,15,208,0,0,0,0,255,0,0,31,208,0,0,0,3,253,0,0,31,208,0,0,0,7,252,0,0,31,192,0,0,0,15,244,0,0,47,192,0,0,0,63,240,0,0,47,192,0,0,0,255,192,0,0,63,192,0,0,11,255,64,0,0,63,128,0,0,127,253,0,0,0,191,64,0,11,255,244,0,31,255,255,0,0,7,255,128,0,15,255,254,0,0,2,253,0,0,11,255,248,0,0,0,128,0,0,1,85,64,0,0, + // 0x5207 切 + 7,82,35,36,68,38,1,251,0,127,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,15,255,255,255,255,248,0,127,0,15,255,255,255,255,248,0,127,0,15,255,255,255,255,248,0,127,0,5,85,191,85,87,248,0,127,0,0,0,191,0,3,248,0,127,0,0,0,191,0,3,248,0,127,1,191,0,191,0,3,248,0,127,191,255,64,191,0,3,248,6,255,255,255,128,254,0,3,248,191,255,255,233,0,254,0,3,244,191,255,228,0,0,254,0,3,244,127,255,0,0,0,254,0,3,244,16,127,0,0,0,254,0,3,244,0,127,0,0,0,253,0,7,244,0,127,0,0,0,253,0,7,244,0,127,0,0,1,252,0,7,244,0,127,0,0,2,252,0,7,240,0,127,0,52,3,252,0,7,240,0,127,0,63,3,248,0,7,240,0,127,0,63,7,244,0,11,240,0,127,0,127,11,240,0,11,240,0,127,0,190,15,240,0,11,240,0,127,255,253,31,208,0,15,240,0,63,255,252,63,192,0,15,240,0,31,255,244,127,128,0,15,224,0,1,85,64,255,0,0,15,224,0,0,0,3,254,0,0,31,208,0,0,0,15,252,0,0,47,208,0,0,0,63,244,0,0,127,192,0,0,1,255,208,3,255,255,192,0,0,3,255,128,2,255,255,64,0,0,0,253,0,1,255,253,0,0,0,0,48,0,0,106,80,0,0,0,0,0,0,0,0,0,0, + // 0x521b 创 + 27,82,34,36,68,38,1,252,0,0,6,64,0,0,0,0,0,0,0,15,240,0,0,0,15,224,0,0,31,208,0,0,0,15,224,0,0,63,240,0,0,0,15,224,0,0,191,252,0,1,80,15,224,0,1,255,254,0,3,244,15,224,0,3,252,191,128,3,244,15,224,0,11,244,63,224,3,244,15,224,0,47,224,15,244,3,244,15,224,0,127,192,3,252,3,244,15,224,1,255,64,1,255,3,244,15,224,7,253,0,0,191,195,244,15,224,47,244,0,0,63,211,244,15,224,191,224,0,0,15,195,244,15,224,63,255,255,255,255,3,244,15,224,13,191,255,255,248,3,244,15,224,0,191,255,255,244,3,244,15,224,0,191,0,3,244,3,244,15,224,0,191,0,3,244,3,244,15,224,0,191,0,3,244,3,244,15,224,0,191,0,3,240,3,244,15,224,0,191,0,7,240,3,244,15,224,0,191,0,11,240,3,244,15,224,0,191,0,15,240,3,244,15,224,0,191,15,255,224,3,244,15,224,0,191,7,255,192,3,244,15,224,0,191,3,254,0,0,0,15,224,0,191,0,0,13,0,0,15,224,0,191,0,0,15,192,0,15,224,0,191,0,0,15,192,0,15,224,0,191,0,0,31,192,0,15,224,0,191,0,0,63,128,0,15,224,0,127,255,255,255,64,85,95,224,0,63,255,255,255,0,255,255,208,0,11,255,255,248,0,191,255,192,0,0,0,0,0,0,127,249,0, + // 0x521d 初 + 29,82,35,36,68,38,1,252,0,11,224,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,1,85,85,85,85,80,0,11,240,3,255,255,255,255,248,0,11,240,3,255,255,255,255,248,0,11,240,3,255,255,255,255,248,63,255,255,240,0,127,64,3,248,63,255,255,248,0,127,64,3,248,63,255,255,244,0,127,0,3,248,0,0,15,240,0,127,0,3,248,0,0,15,208,0,127,0,3,248,0,0,63,192,0,191,0,3,248,0,0,127,64,0,191,0,3,244,0,0,255,0,0,191,0,3,244,0,2,253,29,0,191,0,3,244,0,7,248,63,0,254,0,3,244,0,15,244,254,0,254,0,7,244,0,63,254,248,0,253,0,7,244,0,255,255,224,1,253,0,7,244,3,255,255,208,2,252,0,7,240,15,255,251,240,2,252,0,7,240,127,255,243,252,3,248,0,7,240,191,203,240,253,7,244,0,11,240,63,11,240,120,11,240,0,11,240,44,11,240,16,15,240,0,11,240,0,11,240,0,47,208,0,15,240,0,11,240,0,63,192,0,15,240,0,11,240,0,191,64,0,15,224,0,11,240,1,255,0,0,15,224,0,11,240,7,253,0,0,31,208,0,11,240,31,248,0,0,63,192,0,11,240,127,240,3,255,255,192,0,11,240,191,192,2,255,255,64,0,11,240,47,0,1,255,254,0,0,11,224,8,0,0,106,80,0, + // 0x522b 别 + 43,82,34,36,68,38,1,251,0,0,0,0,0,0,0,15,224,11,255,255,255,240,0,0,15,224,11,255,255,255,240,0,0,15,224,11,255,255,255,240,1,64,15,224,11,224,0,11,240,11,224,15,224,11,224,0,11,240,11,224,15,224,11,224,0,11,240,11,224,15,224,11,224,0,11,240,11,224,15,224,11,224,0,11,240,11,224,15,224,11,224,0,11,240,11,224,15,224,11,240,0,11,240,11,224,15,224,11,255,255,255,240,11,224,15,224,11,255,255,255,240,11,224,15,224,11,255,255,255,240,11,224,15,224,0,0,0,0,0,11,224,15,224,0,1,252,0,0,11,224,15,224,0,2,252,0,0,11,224,15,224,0,2,252,0,0,11,224,15,224,47,255,255,255,248,11,224,15,224,47,255,255,255,244,11,224,15,224,47,255,255,255,244,11,224,15,224,0,3,244,3,244,11,224,15,224,0,3,240,3,244,11,224,15,224,0,7,240,3,244,11,224,15,224,0,11,240,3,240,11,224,15,224,0,15,224,7,240,1,64,15,224,0,31,192,7,240,0,0,15,224,0,63,192,7,240,0,0,15,224,0,127,64,11,240,0,0,15,224,0,255,0,15,240,0,0,15,224,3,253,0,31,224,0,0,15,224,31,248,47,255,208,0,106,175,224,127,240,15,255,192,0,127,255,208,63,128,15,255,0,0,63,255,192,13,0,0,0,0,0,63,249,0,0,0,0,0,0,0,0,0,0, + // 0x5230 到 + 48,82,34,35,59,38,1,252,0,0,0,0,0,0,0,6,160,0,0,0,0,0,0,0,11,240,63,255,255,255,255,0,0,11,240,63,255,255,255,255,0,0,11,240,63,255,255,255,255,31,192,11,240,0,11,244,0,0,31,192,11,240,0,15,240,1,0,31,192,11,240,0,15,208,47,0,31,192,11,240,0,47,192,47,192,31,192,11,240,0,63,128,15,240,31,192,11,240,0,127,0,3,248,31,192,11,240,21,255,175,255,253,31,192,11,240,63,255,255,255,255,31,192,11,240,63,255,255,255,255,95,192,11,240,63,250,165,64,47,223,192,11,240,0,0,42,0,14,31,192,11,240,0,0,63,64,0,31,192,11,240,0,0,63,64,0,31,192,11,240,0,0,63,64,0,31,192,11,240,0,0,63,64,0,31,192,11,240,15,255,255,255,252,31,192,11,240,15,255,255,255,252,31,192,11,240,15,255,255,255,252,31,192,11,240,0,0,127,64,0,31,192,11,240,0,0,63,64,0,31,192,11,240,0,0,63,64,0,5,64,11,240,0,0,63,64,0,0,0,11,240,0,0,63,64,0,0,0,11,240,0,0,63,70,191,64,0,11,240,0,5,191,255,255,64,0,11,240,111,255,255,255,255,64,0,11,240,127,255,255,255,233,0,106,175,240,63,255,250,80,0,0,127,255,224,62,148,0,0,0,0,63,255,192,0,0,0,0,0,0,63,250,0, + // 0x5236 制 + 54,82,34,36,68,38,1,252,0,0,10,128,0,0,0,1,80,0,228,31,192,0,0,0,3,240,1,252,31,192,0,0,0,3,240,2,252,31,192,0,0,0,3,240,3,248,31,192,0,0,253,3,240,3,248,31,192,0,0,253,3,240,7,255,255,255,255,64,253,3,240,11,255,255,255,255,64,253,3,240,15,255,255,255,255,64,253,3,240,47,192,31,192,0,0,253,3,240,63,128,31,192,0,0,253,3,240,127,0,31,192,0,0,253,3,240,11,0,31,208,0,0,253,3,240,63,255,255,255,255,240,253,3,240,63,255,255,255,255,240,253,3,240,63,255,255,255,255,240,253,3,240,0,0,31,192,0,0,253,3,240,0,0,31,192,0,0,253,3,240,0,0,31,192,0,0,253,3,240,11,255,255,255,255,128,253,3,240,11,255,255,255,255,128,253,3,240,11,255,255,255,255,128,253,3,240,11,224,31,192,47,128,253,3,240,11,224,31,192,47,128,253,3,240,11,224,31,192,47,128,253,3,240,11,224,31,192,47,128,0,3,240,11,224,31,192,47,128,0,3,240,11,224,31,192,47,128,0,3,240,11,224,31,192,47,128,0,3,240,11,224,31,192,47,128,0,3,240,11,224,31,203,255,128,0,3,240,11,224,31,199,255,64,0,7,240,11,224,31,195,249,0,47,255,240,0,0,31,192,0,0,15,255,240,0,0,31,192,0,0,15,255,192,0,0,31,192,0,0,6,148,0, + // 0x5237 刷 + 55,82,34,36,68,38,1,252,0,0,0,0,0,0,0,1,80,0,0,0,0,0,0,0,7,240,3,255,255,255,255,192,0,7,240,3,255,255,255,255,192,0,7,240,3,255,255,255,255,195,244,7,240,3,240,0,0,47,195,244,7,240,3,240,0,0,47,195,244,7,240,3,240,0,0,47,195,244,7,240,3,240,0,0,47,195,244,7,240,3,240,0,0,47,195,244,7,240,3,255,255,255,255,195,244,7,240,3,255,255,255,255,195,244,7,240,3,255,255,255,255,195,244,7,240,3,240,0,252,0,3,244,7,240,3,240,0,252,0,3,244,7,240,3,240,0,252,0,3,244,7,240,3,240,0,252,0,3,244,7,240,3,251,255,255,255,195,244,7,240,3,251,255,255,255,195,244,7,240,3,251,255,255,255,195,244,7,240,3,251,192,252,15,195,244,7,240,7,251,192,252,15,195,244,7,240,7,235,192,252,15,195,244,7,240,7,235,192,252,15,195,244,7,240,11,235,192,252,15,195,244,7,240,11,219,192,252,15,194,244,7,240,15,219,192,252,15,192,0,7,240,15,203,192,252,15,192,0,7,240,31,203,192,253,255,192,0,7,240,47,139,192,252,255,128,0,7,240,63,75,192,252,254,0,0,7,240,127,1,64,252,0,0,0,7,240,190,0,0,252,0,0,63,255,240,61,0,0,252,0,0,31,255,224,8,0,0,252,0,0,15,255,192,0,0,0,168,0,0,10,148,0, + // 0x5272 割 + 114,82,33,36,68,38,2,252,0,0,169,0,0,0,0,0,0,0,0,254,0,0,0,0,31,192,0,0,254,0,0,0,0,31,192,0,0,254,0,0,0,0,31,192,255,255,255,255,255,10,128,31,192,255,255,255,255,255,15,192,31,192,255,255,255,255,255,15,192,31,192,252,0,20,0,127,15,192,31,192,252,0,254,0,127,15,192,31,192,252,0,254,0,127,15,192,31,192,15,255,255,255,240,15,192,31,192,15,255,255,255,240,15,192,31,192,10,170,255,170,144,15,192,31,192,0,0,254,0,0,15,192,31,192,5,85,254,85,64,15,192,31,192,11,255,255,255,208,15,192,31,192,11,255,255,255,208,15,192,31,192,0,0,254,0,0,15,192,31,192,0,0,254,0,0,15,192,31,192,170,170,255,170,169,15,192,31,192,255,255,255,255,253,15,192,31,192,255,255,255,255,253,15,192,31,192,0,0,0,0,0,15,192,31,192,0,0,0,0,0,15,192,31,192,11,255,255,255,240,15,192,31,192,11,255,255,255,240,10,128,31,192,11,250,170,175,240,0,0,31,192,11,208,0,11,240,0,0,31,192,11,208,0,11,240,0,0,31,192,11,208,0,11,240,0,0,31,192,11,208,0,11,240,0,0,31,192,11,250,170,175,240,0,0,47,192,11,255,255,255,240,0,255,255,192,11,255,255,255,240,0,255,255,128,11,208,0,11,240,0,191,255,0,11,208,0,1,80,0,42,144,0, + // 0x529b 力 + 155,82,33,37,77,38,2,251,0,0,0,47,128,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,26,170,170,191,234,170,170,170,64,63,255,255,255,255,255,255,255,64,63,255,255,255,255,255,255,255,64,63,255,255,255,255,255,255,255,64,0,0,0,63,128,0,0,127,0,0,0,0,63,128,0,0,127,0,0,0,0,127,64,0,0,191,0,0,0,0,191,64,0,0,191,0,0,0,0,191,0,0,0,191,0,0,0,0,255,0,0,0,191,0,0,0,0,254,0,0,0,255,0,0,0,2,253,0,0,0,255,0,0,0,3,252,0,0,0,254,0,0,0,7,252,0,0,0,254,0,0,0,15,244,0,0,0,254,0,0,0,31,240,0,0,0,253,0,0,0,63,224,0,0,1,253,0,0,0,191,192,0,0,1,253,0,0,1,255,64,0,0,2,252,0,0,3,255,0,0,0,3,252,0,0,15,252,0,0,0,3,252,0,0,63,244,0,0,0,3,248,0,1,255,224,0,0,0,11,244,0,11,255,128,0,0,0,31,240,0,63,253,0,0,7,255,255,240,0,191,244,0,0,3,255,255,192,0,47,192,0,0,2,255,255,64,0,10,0,0,0,0,90,80,0,0,0,0,0,0,0,0,0,0,0, + // 0x529f 功 + 159,82,35,35,59,38,1,252,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,21,85,85,84,0,63,192,0,0,63,255,255,252,0,63,128,0,0,63,255,255,252,0,63,128,0,0,63,255,255,252,0,63,128,0,0,0,15,224,1,85,127,213,85,80,0,15,224,2,255,255,255,255,248,0,15,224,2,255,255,255,255,248,0,15,224,2,255,255,255,255,248,0,15,224,0,0,63,64,3,244,0,15,224,0,0,63,64,3,244,0,15,224,0,0,127,0,3,244,0,15,224,0,0,127,0,3,244,0,15,224,0,0,191,0,3,244,0,15,224,0,0,191,0,3,244,0,15,224,0,0,255,0,7,240,0,15,224,0,0,254,0,7,240,0,15,224,0,0,253,0,7,240,0,15,224,5,1,252,0,7,240,0,15,230,254,3,252,0,7,240,0,15,255,254,3,248,0,11,240,1,191,255,254,11,244,0,11,240,127,255,255,144,15,240,0,11,240,127,255,228,0,47,224,0,15,224,63,244,0,0,63,192,0,15,224,41,0,0,0,255,128,0,15,224,0,0,0,3,255,0,0,31,208,0,0,0,15,252,0,0,47,192,0,0,0,63,244,0,0,127,192,0,0,2,255,208,7,255,255,128,0,0,2,255,64,3,255,255,0,0,0,0,189,0,2,255,252,0,0,0,0,32,0,0,85,64,0, + // 0x52a0 加 + 160,82,34,36,68,38,1,252,0,1,64,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,21,85,85,80,0,15,224,0,0,127,255,255,224,0,15,224,0,0,127,255,255,224,21,95,245,85,80,127,255,255,224,63,255,255,255,240,127,0,15,224,63,255,255,255,240,127,0,15,224,63,255,255,255,240,127,0,15,224,0,15,208,11,240,127,0,15,224,0,15,208,11,224,127,0,15,224,0,15,208,11,224,127,0,15,224,0,15,192,11,224,127,0,15,224,0,31,192,11,224,127,0,15,224,0,31,192,15,224,127,0,15,224,0,31,192,15,224,127,0,15,224,0,47,192,15,224,127,0,15,224,0,47,192,15,224,127,0,15,224,0,63,128,15,224,127,0,15,224,0,63,64,15,208,127,0,15,224,0,63,64,15,208,127,0,15,224,0,127,0,15,208,127,0,15,224,0,191,0,15,208,127,0,15,224,0,255,0,15,208,127,0,15,224,1,253,0,15,208,127,0,15,224,2,252,0,31,192,127,0,15,224,3,252,0,31,192,127,0,15,224,7,244,0,47,192,127,255,255,224,15,240,0,63,192,127,255,255,224,47,224,85,191,128,127,255,255,224,127,192,191,255,64,127,85,95,224,127,128,127,255,0,127,0,15,224,31,0,63,248,0,127,0,15,224,4,0,0,0,0,0,0,0,0, + // 0x52a8 动 + 168,82,34,36,68,38,2,252,0,0,0,0,0,5,64,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,47,255,255,255,0,15,224,0,0,47,255,255,255,0,15,224,0,0,47,255,255,255,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,63,255,255,255,240,0,0,0,0,63,255,255,255,240,0,0,0,0,63,255,255,255,240,255,255,255,255,149,95,229,95,224,255,255,255,255,128,15,208,15,224,255,255,255,255,128,15,192,15,224,0,63,128,0,0,31,192,15,224,0,63,64,0,0,31,192,15,224,0,127,0,0,0,31,192,15,224,0,191,0,96,0,47,192,15,224,0,254,3,244,0,63,128,15,208,0,253,1,252,0,63,128,15,208,2,252,0,252,0,63,64,15,208,3,248,0,190,0,127,0,15,208,3,244,0,127,0,191,0,15,208,7,240,0,127,64,254,0,15,192,15,224,107,255,128,254,0,31,192,31,239,255,255,194,252,0,31,192,63,255,255,255,195,252,0,47,192,127,255,249,15,215,248,0,47,192,63,249,0,11,79,240,0,63,192,46,64,0,0,47,224,0,63,128,0,0,0,0,127,192,0,191,64,0,0,0,0,255,67,255,255,0,0,0,0,1,255,3,255,254,0,0,0,0,0,124,2,255,248,0,0,0,0,0,16,0,85,64,0, + // 0x5316 化 + 22,83,36,35,59,38,1,252,0,0,15,144,47,192,0,0,0,0,0,31,224,47,192,0,0,0,0,0,63,192,47,192,0,0,0,0,0,127,128,47,192,0,0,0,0,0,255,64,47,192,0,0,0,0,1,255,0,47,192,0,0,0,0,3,252,0,47,192,0,0,0,0,11,248,0,47,192,0,11,64,0,31,240,0,47,192,0,63,192,0,63,240,0,47,192,1,255,224,0,255,240,0,47,192,11,255,128,2,255,240,0,47,192,127,253,0,11,255,240,0,47,194,255,240,0,47,255,240,0,47,223,255,64,0,191,251,240,0,47,255,248,0,0,255,203,240,0,47,255,128,0,0,127,75,240,0,47,253,0,0,0,61,11,240,0,47,208,0,0,0,20,11,240,0,47,192,0,0,0,0,11,240,0,47,192,0,0,0,0,11,240,0,47,192,0,0,0,0,11,240,0,47,192,0,0,0,0,11,240,0,47,192,0,0,0,0,11,240,0,47,192,0,0,0,0,11,240,0,47,192,0,0,80,0,11,240,0,47,192,0,0,189,0,11,240,0,47,192,0,0,254,0,11,240,0,47,192,0,0,254,0,11,240,0,47,192,0,0,253,0,11,240,0,47,192,0,1,252,0,11,240,0,47,208,0,3,252,0,11,240,0,31,255,255,255,248,0,11,240,0,15,255,255,255,240,0,11,240,0,2,255,255,255,208,0,11,224,0,0,5,85,84,0, + // 0x5347 升 + 71,83,34,36,68,38,2,252,0,0,0,0,64,0,0,0,0,0,0,0,7,208,7,240,0,0,0,0,0,127,244,7,240,0,0,0,0,27,255,248,7,240,0,0,0,2,255,255,208,7,240,0,0,1,191,255,248,0,7,240,0,0,127,255,255,64,0,7,240,0,0,63,255,255,0,0,7,240,0,0,63,144,191,0,0,7,240,0,0,0,0,191,0,0,7,240,0,0,0,0,191,0,0,7,240,0,0,0,0,191,0,0,7,240,0,0,0,0,191,0,0,7,240,0,0,0,0,191,0,0,7,240,0,0,0,0,191,0,0,7,240,0,0,85,85,255,85,85,91,245,85,80,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,254,0,0,7,240,0,0,0,0,254,0,0,7,240,0,0,0,0,253,0,0,7,240,0,0,0,1,253,0,0,7,240,0,0,0,1,252,0,0,7,240,0,0,0,3,252,0,0,7,240,0,0,0,3,248,0,0,7,240,0,0,0,11,244,0,0,7,240,0,0,0,31,240,0,0,7,240,0,0,0,63,224,0,0,7,240,0,0,0,191,192,0,0,7,240,0,0,2,255,64,0,0,7,240,0,0,15,253,0,0,0,7,240,0,0,127,248,0,0,0,7,240,0,0,255,224,0,0,0,7,240,0,0,63,64,0,0,0,7,240,0,0,8,0,0,0,0,7,240,0,0, + // 0x534a 半 + 74,83,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,24,0,3,248,0,3,144,0,1,253,0,3,248,0,11,248,0,0,255,0,3,248,0,15,240,0,0,127,128,3,248,0,47,224,0,0,63,192,3,248,0,63,192,0,0,31,224,3,248,0,127,128,0,0,15,240,3,248,0,255,0,0,0,7,248,3,248,2,253,0,0,0,3,248,3,248,3,252,0,0,0,2,128,3,248,0,112,0,0,0,0,0,3,248,0,0,0,0,5,85,85,87,253,85,85,85,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,106,170,170,171,254,170,170,170,144,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0, + // 0x534f 协 + 79,83,35,36,68,38,2,252,0,252,0,0,5,80,0,0,0,0,252,0,0,11,240,0,0,0,0,252,0,0,11,240,0,0,0,0,252,0,0,11,240,0,0,0,0,252,0,0,11,240,0,0,0,0,252,0,0,11,240,0,0,0,0,252,0,0,11,240,0,0,0,0,252,0,85,91,245,85,80,0,0,252,0,255,255,255,255,224,0,255,255,252,255,255,255,255,224,0,255,255,252,255,255,255,255,224,0,255,255,252,0,11,224,15,224,0,85,253,84,0,11,224,15,224,0,0,252,0,0,15,224,15,224,0,0,252,0,164,15,208,15,230,64,0,252,0,253,15,208,15,255,128,0,252,1,252,15,208,15,239,192,0,252,2,248,31,192,15,223,192,0,252,3,244,47,192,15,223,208,0,252,3,240,47,192,15,219,224,0,252,11,240,63,128,15,215,240,0,252,15,208,127,64,15,211,240,0,252,47,192,191,0,15,195,244,0,252,63,128,254,0,15,194,248,0,252,15,2,253,0,31,193,252,0,252,0,3,252,0,31,193,228,0,252,0,11,244,0,31,192,0,0,252,0,15,240,0,31,192,0,0,252,0,63,208,0,47,192,0,0,252,0,191,192,0,63,128,0,0,252,1,255,0,0,63,128,0,0,252,7,253,0,0,191,64,0,0,252,47,248,3,255,255,0,0,0,252,63,224,3,255,254,0,0,0,252,15,128,2,255,248,0,0,0,168,2,0,0,20,0,0,0, + // 0x5355 单 + 85,83,34,36,68,38,2,252,0,0,32,0,0,0,80,0,0,0,2,248,0,0,0,254,0,0,0,3,253,0,0,2,255,0,0,0,0,255,0,0,3,252,0,0,0,0,127,192,0,11,248,0,0,0,0,47,208,0,15,240,0,0,0,0,15,192,0,63,192,0,0,1,255,255,255,255,255,255,252,0,1,255,255,255,255,255,255,252,0,1,255,255,255,255,255,255,252,0,1,252,0,3,248,0,3,252,0,1,252,0,3,248,0,3,252,0,1,252,0,3,248,0,3,252,0,1,255,255,255,255,255,255,252,0,1,255,255,255,255,255,255,252,0,1,255,255,255,255,255,255,252,0,1,252,0,3,248,0,3,252,0,1,252,0,3,248,0,3,252,0,1,252,0,3,248,0,3,252,0,1,252,0,3,248,0,3,252,0,1,255,255,255,255,255,255,252,0,1,255,255,255,255,255,255,252,0,1,255,255,255,255,255,255,248,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,21,85,85,87,253,85,85,85,64,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0, + // 0x5361 卡 + 97,83,34,36,68,38,2,252,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,245,85,85,80,0,0,0,0,11,255,255,255,240,0,0,0,0,11,255,255,255,240,0,0,0,0,11,255,255,255,240,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,85,95,249,85,85,85,80,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,246,64,0,0,0,0,0,0,11,255,249,0,0,0,0,0,0,11,255,255,224,0,0,0,0,0,11,251,255,255,64,0,0,0,0,11,240,111,255,248,0,0,0,0,11,240,1,255,252,0,0,0,0,11,240,0,11,248,0,0,0,0,11,240,0,0,176,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0, + // 0x5370 印 + 112,83,31,36,32,38,4,252,0,0,6,0,0,0,0,0,0,0,127,128,0,0,0,0,0,7,255,224,0,0,0,0,0,191,255,145,255,255,255,252,255,255,248,1,255,255,255,252,255,255,64,1,255,255,255,252,255,208,0,1,254,85,87,252,254,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,254,85,85,65,253,0,2,252,255,255,255,209,253,0,2,252,255,255,255,209,253,0,2,252,255,255,255,209,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,254,85,85,65,253,0,2,252,255,255,255,225,253,10,171,252,255,255,255,225,253,7,255,248,255,255,255,225,253,3,255,244,253,0,0,1,253,2,255,128,253,0,0,1,253,0,0,0,253,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,168,0,0,0, + // 0x5371 危 + 113,83,36,36,68,38,1,252,0,0,6,80,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,63,255,255,255,0,0,0,0,0,255,255,255,255,208,0,0,0,2,255,255,255,255,192,0,0,0,7,253,0,0,255,64,0,0,0,15,244,0,2,254,0,0,0,0,63,224,0,3,252,0,0,0,0,255,255,255,255,255,255,255,248,7,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,127,255,192,0,0,0,0,0,0,47,239,192,0,0,0,0,0,0,15,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,191,255,255,255,240,0,0,47,192,191,255,255,255,240,0,0,47,192,191,255,255,255,224,0,0,47,128,190,0,0,15,224,0,0,63,128,190,0,0,15,224,0,0,63,128,190,0,0,15,224,0,0,63,64,190,0,0,15,208,0,0,63,64,190,0,0,31,208,0,0,127,0,190,0,0,47,192,0,0,191,0,190,0,127,255,192,0,0,255,0,190,0,63,255,64,0,0,253,0,190,0,63,249,0,208,2,252,0,190,0,0,0,0,253,3,252,0,190,0,0,0,0,252,11,244,0,190,0,0,0,1,252,15,240,0,191,64,0,0,7,252,63,208,0,127,255,255,255,255,244,127,192,0,63,255,255,255,255,240,31,0,0,11,255,255,255,255,128,4,0,0,0,0,0,0,0,0, + // 0x5374 却 + 116,83,34,36,68,38,1,252,0,0,190,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,21,85,85,80,0,0,191,0,0,127,255,255,240,0,0,191,0,0,127,255,255,240,0,0,191,0,0,127,255,255,240,15,255,255,255,240,127,0,11,240,15,255,255,255,240,127,0,11,240,15,255,255,255,240,127,0,11,240,0,0,191,0,0,127,0,11,240,0,0,191,0,0,127,0,11,240,0,0,191,0,0,127,0,11,240,0,0,191,0,0,127,0,11,240,0,0,191,0,0,127,0,11,240,0,0,191,0,0,127,0,11,240,127,255,255,255,252,127,0,11,240,127,255,255,255,252,127,0,11,240,127,255,255,255,252,127,0,11,240,21,95,245,85,84,127,0,11,240,0,15,240,0,0,127,0,11,240,0,15,224,0,0,127,0,11,240,0,31,208,0,0,127,0,11,240,0,63,192,124,0,127,0,11,240,0,63,128,254,0,127,0,11,240,0,127,0,127,0,127,0,11,240,0,191,0,63,128,127,0,11,240,0,253,0,31,208,127,15,255,224,1,252,0,31,240,127,7,255,224,3,254,255,255,240,127,3,255,128,127,255,255,255,248,127,2,164,0,127,255,255,255,252,127,0,0,0,63,254,148,0,253,127,0,0,0,16,0,0,0,253,127,0,0,0,0,0,0,0,80,127,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0, + // 0x5378 卸 + 120,83,34,36,68,38,1,252,0,30,64,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,64,0,0,21,85,85,80,0,191,0,0,0,127,255,255,240,0,255,255,255,248,127,255,255,240,1,255,255,255,248,127,255,255,240,3,255,255,255,248,127,0,7,240,11,240,63,64,0,127,0,7,240,31,224,63,64,0,127,0,7,240,63,192,63,64,0,127,0,7,240,15,64,63,64,0,127,0,7,240,1,0,63,64,0,127,0,7,240,63,255,255,255,253,127,0,7,240,63,255,255,255,253,127,0,7,240,63,255,255,255,253,127,0,7,240,0,0,63,64,0,127,0,7,240,0,0,63,64,0,127,0,7,240,0,0,63,64,0,127,0,7,240,3,240,63,64,0,127,0,7,240,3,240,63,64,0,127,0,7,240,3,240,63,255,240,127,0,7,240,3,240,63,255,240,127,0,7,240,3,240,63,255,240,127,0,7,240,3,240,63,64,0,127,0,7,240,3,240,63,64,0,127,0,7,240,3,240,63,64,0,127,0,7,240,3,240,63,64,0,127,6,175,240,3,240,63,64,4,127,7,255,240,3,240,63,171,253,127,3,255,208,3,246,255,255,253,127,2,254,64,111,255,255,255,253,127,0,0,0,191,255,255,249,64,127,0,0,0,127,255,164,0,0,127,0,0,0,58,64,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0, + // 0x538b 压 + 139,83,36,34,50,38,1,252,2,255,255,255,255,255,255,255,253,2,255,255,255,255,255,255,255,253,2,255,255,255,255,255,255,255,253,2,253,85,85,85,85,85,85,84,2,248,0,0,0,0,0,0,0,2,248,0,0,3,244,0,0,0,2,248,0,0,3,244,0,0,0,2,248,0,0,3,244,0,0,0,2,248,0,0,3,244,0,0,0,2,248,0,0,3,244,0,0,0,2,248,0,0,3,244,0,0,0,2,248,0,0,3,244,0,0,0,2,248,0,0,3,244,0,0,0,2,248,63,255,255,255,255,255,208,2,248,63,255,255,255,255,255,208,2,248,63,255,255,255,255,255,208,2,248,21,85,87,249,85,85,64,2,248,0,0,3,244,0,0,0,3,244,0,0,3,244,0,0,0,3,244,0,0,3,244,15,64,0,3,244,0,0,3,244,63,208,0,3,240,0,0,3,244,15,244,0,3,240,0,0,3,244,3,253,0,7,240,0,0,3,244,0,255,0,11,240,0,0,3,244,0,127,64,11,224,0,0,3,244,0,45,0,15,208,0,0,3,244,0,0,0,15,208,0,0,3,244,0,0,0,31,192,0,0,3,244,0,0,0,63,199,255,255,255,255,255,255,252,63,135,255,255,255,255,255,255,252,191,7,255,255,255,255,255,255,252,47,1,85,85,85,85,85,85,84,5,0,0,0,0,0,0,0,0, + // 0x539f 原 + 159,83,35,34,50,38,1,252,0,255,255,255,255,255,255,255,252,0,255,255,255,255,255,255,255,252,0,255,255,255,255,255,255,255,252,0,253,0,0,11,252,0,0,0,0,253,0,0,11,248,0,0,0,0,253,0,0,11,244,0,0,0,0,253,0,0,15,240,0,0,0,0,253,11,255,255,255,255,255,0,0,253,11,255,255,255,255,255,0,0,253,11,250,170,170,170,255,0,0,253,11,240,0,0,0,255,0,0,253,11,240,0,0,0,255,0,0,253,11,250,170,170,170,255,0,0,253,11,255,255,255,255,255,0,0,253,11,255,255,255,255,255,0,1,252,11,240,0,0,0,255,0,1,252,11,240,0,0,0,255,0,1,252,11,240,0,0,0,255,0,1,252,11,255,255,255,255,255,0,2,252,11,255,255,255,255,255,0,2,252,6,170,171,254,170,170,0,2,248,0,0,2,248,0,0,0,3,248,0,16,2,248,1,64,0,3,244,0,191,2,248,11,208,0,7,244,1,254,2,248,15,244,0,7,240,3,252,2,248,3,253,0,11,240,15,244,2,248,0,255,64,15,224,63,224,2,248,0,63,208,15,208,255,192,2,248,0,31,240,47,199,255,0,2,248,0,7,252,63,203,252,0,3,248,0,2,252,127,65,240,11,255,248,0,0,208,47,0,0,3,255,240,0,0,0,5,0,0,3,255,128,0,0,0, + // 0x53cc 双 + 204,83,34,33,41,38,2,252,127,255,255,248,127,255,255,255,128,127,255,255,252,127,255,255,255,192,127,255,255,252,127,255,255,255,128,21,85,86,252,47,213,85,127,128,0,0,2,252,47,192,0,63,64,0,0,3,248,31,192,0,127,0,0,0,3,248,15,208,0,127,0,6,0,3,244,15,208,0,191,0,47,64,7,240,15,224,0,254,0,63,208,11,240,11,240,0,253,0,31,240,15,240,7,240,1,252,0,7,252,15,224,3,244,3,252,0,2,254,31,208,3,248,3,248,0,0,255,111,192,2,252,7,244,0,0,63,255,192,1,252,15,240,0,0,31,255,64,0,254,31,224,0,0,15,255,0,0,191,47,192,0,0,3,255,0,0,127,127,192,0,0,2,255,0,0,63,255,64,0,0,3,255,128,0,47,255,0,0,0,7,255,208,0,15,253,0,0,0,15,255,240,0,15,252,0,0,0,31,239,248,0,31,252,0,0,0,63,195,252,0,63,254,0,0,0,191,130,254,0,255,255,0,0,1,255,0,254,3,255,191,192,0,3,253,0,184,15,252,63,240,0,15,252,0,16,127,244,15,252,0,63,240,0,2,255,208,7,255,64,255,192,0,31,255,64,1,255,224,255,64,0,15,252,0,0,127,224,61,0,0,7,224,0,0,15,192,20,0,0,2,0,0,0,2,0, + // 0x53cd 反 + 205,83,34,34,50,38,2,252,0,85,85,85,85,85,85,85,0,0,191,255,255,255,255,255,255,64,0,191,255,255,255,255,255,255,64,0,191,255,255,255,255,255,255,64,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,255,255,255,255,255,224,0,0,191,255,255,255,255,255,244,0,0,191,255,255,255,255,255,240,0,0,191,95,245,85,85,111,224,0,0,191,11,240,0,0,63,208,0,0,190,7,248,0,0,127,192,0,0,254,3,252,0,0,255,64,0,0,254,1,254,0,0,255,0,0,0,254,0,255,0,2,254,0,0,0,253,0,127,192,7,252,0,0,1,252,0,63,224,31,244,0,0,1,252,0,15,244,63,224,0,0,2,252,0,11,253,255,192,0,0,3,252,0,3,255,255,64,0,0,3,248,0,0,255,253,0,0,0,7,244,0,0,127,252,0,0,0,11,240,0,2,255,255,0,0,0,15,224,0,31,255,255,224,0,0,31,208,1,255,253,191,254,0,0,63,192,111,255,224,31,255,244,0,191,135,255,255,0,2,255,255,208,255,3,255,244,0,0,127,255,192,46,1,254,0,0,0,2,255,64,4,0,144,0,0,0,0,26,0, + // 0x53d6 取 + 214,83,36,34,50,38,1,252,21,85,85,85,84,0,0,0,0,63,255,255,255,254,0,0,0,0,63,255,255,255,254,0,0,0,0,63,255,255,255,255,170,170,170,144,1,252,0,31,199,255,255,255,244,1,252,0,31,199,255,255,255,240,1,252,0,31,199,255,255,255,240,1,252,0,31,194,180,0,11,240,1,255,255,255,195,252,0,15,240,1,255,255,255,193,252,0,15,224,1,255,255,255,192,253,0,31,208,1,252,0,47,192,254,0,31,192,1,252,0,31,192,191,0,47,192,1,252,0,31,192,127,0,63,128,1,252,0,31,192,63,64,127,64,1,252,0,31,192,63,192,191,0,1,255,255,255,192,47,192,254,0,1,255,255,255,192,15,225,253,0,1,255,255,255,192,15,243,252,0,1,253,0,47,192,7,255,248,0,1,252,0,31,192,3,255,240,0,1,252,0,31,192,2,255,224,0,1,252,0,31,192,0,255,192,0,1,252,0,111,192,0,255,192,0,1,254,191,255,192,1,255,224,0,175,255,255,255,192,7,255,244,0,191,255,255,255,192,15,255,252,0,191,255,229,31,192,127,243,255,0,126,144,0,31,193,255,192,255,208,0,0,0,31,203,255,0,63,248,0,0,0,31,255,252,0,31,254,0,0,0,31,207,224,0,3,252,0,0,0,31,199,64,0,0,180,0,0,0,31,192,0,0,0,0, + // 0x53d8 变 + 216,83,34,37,77,38,2,251,0,0,0,6,240,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,1,254,0,0,0,0,127,255,255,255,255,255,255,255,192,127,255,255,255,255,255,255,255,192,127,255,255,255,255,255,255,255,192,0,0,7,244,1,252,0,0,0,0,4,3,244,1,252,0,0,0,0,31,195,244,1,252,45,0,0,0,63,131,244,1,252,255,64,0,0,191,3,244,1,252,63,208,0,0,254,3,244,1,252,15,244,0,3,252,3,244,1,252,3,252,0,11,244,3,244,1,252,0,255,0,47,224,3,244,1,252,0,127,128,15,192,3,244,1,252,0,47,0,2,0,3,244,1,252,0,8,0,0,0,3,244,1,252,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,255,255,255,64,0,3,255,255,255,255,255,255,208,0,3,255,255,255,255,255,255,128,0,0,11,244,0,0,1,255,0,0,0,2,253,0,0,7,253,0,0,0,0,255,128,0,31,244,0,0,0,0,63,240,0,191,208,0,0,0,0,11,254,7,255,0,0,0,0,0,1,255,255,248,0,0,0,0,0,0,127,255,208,0,0,0,0,0,6,255,255,248,0,0,0,0,1,191,255,255,255,228,0,0,26,255,255,253,11,255,255,249,64,191,255,255,128,0,111,255,255,240,63,255,144,0,0,1,175,255,192,46,64,0,0,0,0,0,91,64,0,0,0,0,0,0,0,0,0, + // 0x53f0 台 + 240,83,34,36,68,38,2,252,0,0,0,228,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,244,0,0,64,0,0,0,0,31,240,0,11,208,0,0,0,0,63,208,0,31,244,0,0,0,0,191,192,0,11,254,0,0,0,0,255,0,0,2,255,128,0,0,2,254,0,0,0,191,224,0,0,7,252,0,0,0,63,244,0,106,175,254,255,255,255,255,253,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,192,127,255,254,170,149,84,0,63,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,11,128,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,149,85,85,85,111,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,149,85,85,85,111,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,64,0,0,0,47,192,0,0,42,64,0,0,0,26,128,0, + // 0x5403 吃 + 3,84,34,36,68,38,3,252,0,0,0,0,57,0,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,255,0,0,0,0,85,85,80,0,254,0,0,0,0,255,255,244,2,252,0,0,0,0,255,255,244,3,253,85,85,85,0,255,255,244,11,255,255,255,255,192,252,3,244,15,255,255,255,255,192,252,3,244,47,255,255,255,255,192,252,3,244,127,192,0,0,0,0,252,3,244,255,64,0,0,0,0,252,3,246,254,0,0,0,0,0,252,3,255,252,0,0,0,0,0,252,3,245,244,0,0,0,0,0,252,3,244,99,255,255,255,240,0,252,3,244,3,255,255,255,252,0,252,3,244,3,255,255,255,240,0,252,3,244,1,85,87,255,128,0,252,3,244,0,0,11,254,0,0,252,3,244,0,0,63,244,0,0,252,3,244,0,0,255,208,0,0,252,3,244,0,3,255,0,0,0,252,3,244,0,15,252,0,0,0,255,255,244,0,63,240,0,0,0,255,255,244,0,255,128,0,0,0,255,255,244,3,254,0,0,0,0,254,85,80,11,248,0,0,5,0,252,0,0,31,224,0,0,11,208,252,0,0,63,192,0,0,11,224,168,0,0,127,64,0,0,11,208,0,0,0,191,0,0,0,15,208,0,0,0,191,128,0,0,31,192,0,0,0,127,255,255,255,255,192,0,0,0,63,255,255,255,255,64,0,0,0,11,255,255,255,254,0,0,0,0,0,21,85,85,80,0, + // 0x5408 合 + 8,84,36,36,68,38,1,252,0,0,0,1,254,0,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,11,255,208,0,0,0,0,0,0,31,255,244,0,0,0,0,0,0,127,219,252,0,0,0,0,0,1,255,131,255,0,0,0,0,0,3,255,0,255,208,0,0,0,0,15,252,0,63,244,0,0,0,0,127,240,0,15,254,0,0,0,1,255,192,0,3,255,192,0,0,11,255,0,0,0,255,244,0,0,63,252,0,0,0,47,254,0,2,255,240,0,0,0,11,255,224,31,254,191,255,255,255,254,191,253,127,244,127,255,255,255,253,31,253,63,192,127,255,255,255,253,2,248,13,0,0,0,0,0,0,0,32,0,0,0,0,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,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,240,0,0,11,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,240,0,0,0,15,240,0,0,7,224,0,0,0,11,224,0, + // 0x540d 名 + 13,84,33,36,68,38,1,252,0,0,0,122,64,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,15,255,255,255,248,0,0,0,0,63,255,255,255,254,0,0,0,0,255,255,255,255,252,0,0,0,3,255,64,0,7,248,0,0,0,15,252,0,0,15,240,0,0,0,127,244,0,0,47,224,0,0,2,255,253,0,0,63,192,0,0,31,255,255,128,0,255,64,0,0,127,248,255,224,2,255,0,0,0,47,208,47,252,11,252,0,0,0,11,0,11,255,31,244,0,0,0,0,0,1,255,255,208,0,0,0,0,0,0,127,255,128,0,0,0,0,0,0,31,254,0,0,0,0,0,0,0,63,248,0,0,0,0,0,0,1,255,255,255,255,255,128,0,0,11,255,255,255,255,255,128,0,0,191,255,255,255,255,255,128,0,11,255,252,0,0,0,63,128,0,191,255,248,0,0,0,63,128,31,255,247,248,0,0,0,63,128,127,255,67,248,0,0,0,63,128,47,248,3,248,0,0,0,63,128,14,64,3,248,0,0,0,63,128,0,0,3,248,0,0,0,63,128,0,0,3,248,0,0,0,63,128,0,0,3,248,0,0,0,63,128,0,0,3,255,255,255,255,255,128,0,0,3,255,255,255,255,255,128,0,0,3,255,255,255,255,255,128,0,0,3,252,0,0,0,63,128,0,0,2,248,0,0,0,63,128, + // 0x540e 后 + 14,84,36,36,68,38,1,252,0,0,0,0,0,0,0,80,0,0,0,0,0,0,1,111,248,0,0,0,0,0,90,255,255,254,0,0,121,106,255,255,255,255,250,0,0,127,255,255,255,255,249,0,0,0,127,255,255,254,148,0,0,0,0,127,250,80,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,253,0,127,149,85,85,85,85,85,84,0,127,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,3,255,255,255,255,255,64,0,191,3,255,255,255,255,255,64,0,254,3,255,255,255,255,255,64,0,254,3,249,85,85,85,127,64,0,253,3,244,0,0,0,127,64,1,253,3,244,0,0,0,127,64,2,252,3,244,0,0,0,127,64,3,252,3,244,0,0,0,127,64,3,248,3,244,0,0,0,127,64,7,244,3,244,0,0,0,127,64,11,240,3,244,0,0,0,127,64,15,240,3,249,85,85,85,127,64,47,208,3,255,255,255,255,255,64,63,192,3,255,255,255,255,255,64,127,64,3,255,255,255,255,255,64,31,0,3,244,0,0,0,127,64,5,0,3,244,0,0,0,63,0, + // 0x5411 向 + 17,84,32,36,32,38,3,252,0,0,0,62,64,0,0,0,0,0,0,63,208,0,0,0,0,0,0,127,192,0,0,0,0,0,0,255,128,0,0,0,0,0,0,255,0,0,0,0,0,0,2,254,0,0,0,0,21,85,87,254,85,85,85,84,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,0,0,0,0,0,0,253,127,0,0,0,0,0,0,253,127,0,0,0,0,0,0,253,127,0,0,0,0,0,0,253,127,0,0,0,0,0,0,253,127,0,127,255,255,253,0,253,127,0,127,255,255,253,0,253,127,0,127,255,255,253,0,253,127,0,127,0,0,253,0,253,127,0,127,0,0,253,0,253,127,0,127,0,0,253,0,253,127,0,127,0,0,253,0,253,127,0,127,0,0,253,0,253,127,0,127,0,0,253,0,253,127,0,127,0,0,253,0,253,127,0,127,255,255,253,0,253,127,0,127,255,255,253,0,253,127,0,127,255,255,253,0,253,127,0,127,0,0,0,0,253,127,0,127,0,0,0,0,253,127,0,106,0,0,0,0,253,127,0,0,0,0,0,0,253,127,0,0,0,0,26,170,253,127,0,0,0,0,31,255,252,127,0,0,0,0,15,255,248,127,0,0,0,0,15,255,144, + // 0x5426 否 + 38,84,35,34,50,38,1,252,31,255,255,255,255,255,255,255,244,31,255,255,255,255,255,255,255,244,31,255,255,255,255,255,255,255,244,5,85,85,85,127,245,85,85,80,0,0,0,0,255,208,0,0,0,0,0,0,3,255,64,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,191,254,7,208,0,0,0,0,3,255,254,31,253,0,0,0,0,47,255,254,31,255,192,0,0,2,255,248,254,1,255,248,0,0,47,255,192,254,0,31,255,64,7,255,254,0,254,0,2,255,240,127,255,224,0,254,0,0,127,252,63,254,0,0,254,0,0,11,248,15,224,0,0,254,0,0,1,224,6,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,255,248,0,0,31,255,255,255,255,255,248,0,0,31,255,255,255,255,255,248,0,0,31,208,0,0,0,7,248,0,0,31,208,0,0,0,3,248,0,0,31,208,0,0,0,3,248,0,0,31,208,0,0,0,3,248,0,0,31,208,0,0,0,3,248,0,0,31,208,0,0,0,3,248,0,0,31,208,0,0,0,3,248,0,0,31,255,255,255,255,255,248,0,0,31,255,255,255,255,255,248,0,0,31,255,255,255,255,255,248,0,0,31,208,0,0,0,7,248,0,0,31,192,0,0,0,3,248,0, + // 0x542f 启 + 47,84,32,36,32,38,2,252,0,0,0,0,0,0,26,0,0,0,0,0,1,107,255,192,0,0,1,106,255,255,255,240,2,175,255,255,255,255,249,0,2,255,255,255,255,164,0,0,2,255,254,149,0,0,0,0,2,252,0,0,0,0,0,0,2,252,0,0,0,0,0,0,2,255,255,255,255,255,255,252,2,255,255,255,255,255,255,252,2,255,255,255,255,255,255,252,2,252,0,0,0,0,1,252,2,252,0,0,0,0,1,252,2,252,0,0,0,0,1,252,2,252,0,0,0,0,1,252,2,252,0,0,0,0,1,252,2,255,255,255,255,255,255,252,2,255,255,255,255,255,255,252,2,255,255,255,255,255,255,252,3,252,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,244,255,255,255,255,255,254,3,244,255,255,255,255,255,254,7,240,255,255,255,255,255,254,11,240,254,0,0,0,0,254,15,240,254,0,0,0,0,254,15,224,254,0,0,0,0,254,31,208,254,0,0,0,0,254,63,192,254,0,0,0,0,254,63,128,254,0,0,0,0,254,191,64,255,255,255,255,255,254,255,0,255,255,255,255,255,254,189,0,255,255,255,255,255,254,44,0,254,0,0,0,0,254,0,0,169,0,0,0,0,169, + // 0x544a 告 + 74,84,34,37,77,38,2,251,0,1,0,0,190,0,0,0,0,0,7,244,0,255,0,0,0,0,0,11,240,0,255,0,0,0,0,0,15,240,0,255,0,0,0,0,0,31,208,0,255,0,0,0,0,0,63,208,0,255,0,0,0,0,0,127,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,2,255,255,255,255,255,255,252,0,7,252,0,0,255,0,0,0,0,31,240,0,0,255,0,0,0,0,63,208,0,0,255,0,0,0,0,11,128,0,0,255,0,0,0,0,1,0,0,0,255,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,21,85,85,85,85,85,85,85,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,149,85,85,85,95,224,0,0,63,128,0,0,0,15,224,0,0,63,128,0,0,0,15,224,0,0,63,128,0,0,0,15,224,0,0,63,128,0,0,0,15,224,0,0,63,128,0,0,0,15,224,0,0,63,149,85,85,85,95,224,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,128,0,0,0,15,224,0,0,63,128,0,0,0,15,224,0,0,0,0,0,0,0,0,0,0, + // 0x5468 周 + 104,84,33,35,59,38,1,251,0,191,255,255,255,255,255,255,128,0,191,255,255,255,255,255,255,128,0,191,255,255,255,255,255,255,128,0,191,85,85,85,85,85,127,128,0,191,0,0,191,0,0,63,128,0,191,0,0,191,0,0,63,128,0,191,0,0,191,0,0,63,128,0,191,15,255,255,255,244,63,128,0,191,15,255,255,255,244,63,128,0,191,11,255,255,255,244,63,128,0,191,0,0,191,0,0,63,128,0,191,0,0,191,0,0,63,128,0,191,0,0,191,0,0,63,128,0,191,47,255,255,255,252,63,128,0,191,47,255,255,255,253,63,128,0,191,47,255,255,255,253,63,128,0,191,0,0,0,0,0,63,128,0,191,0,0,0,0,0,63,128,0,254,0,0,0,0,0,63,128,0,254,3,255,255,255,224,63,128,0,253,3,255,255,255,224,63,128,0,253,3,254,170,175,224,63,128,1,252,3,240,0,11,224,63,128,1,252,3,240,0,11,224,63,128,2,252,3,240,0,11,224,63,128,3,248,3,240,0,11,224,63,128,7,244,3,255,255,255,224,63,128,11,240,3,255,255,255,224,63,128,15,240,3,255,255,255,224,63,128,31,224,3,240,0,0,0,63,128,63,192,3,240,0,0,0,127,128,127,128,1,80,0,2,255,255,64,63,0,0,0,0,1,255,255,0,10,0,0,0,0,0,255,248,0,0,0,0,0,0,0,0,0,0, + // 0x547d 命 + 125,84,36,37,77,38,1,251,0,0,0,2,255,0,0,0,0,0,0,0,7,255,192,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,63,255,248,0,0,0,0,0,1,255,199,255,0,0,0,0,0,7,255,1,255,192,0,0,0,0,31,252,0,127,244,0,0,0,0,191,240,0,15,254,0,0,0,7,255,128,0,3,255,208,0,0,47,254,0,0,0,191,248,0,1,255,255,255,255,255,255,255,128,31,255,139,255,255,255,226,255,248,255,253,11,255,255,255,224,127,255,127,224,0,0,0,0,0,7,252,46,0,0,0,0,0,0,0,116,0,0,0,0,0,0,0,0,0,0,255,255,255,3,255,255,255,64,0,255,255,255,3,255,255,255,64,0,255,255,255,3,255,255,255,64,0,253,0,63,3,244,0,63,64,0,253,0,63,3,244,0,63,64,0,253,0,63,3,244,0,63,64,0,253,0,63,3,244,0,63,64,0,253,0,63,3,244,0,63,64,0,253,0,63,3,244,0,63,64,0,253,0,63,3,244,0,63,64,0,253,0,63,3,244,0,63,64,0,255,255,255,3,244,0,63,64,0,255,255,255,3,244,0,127,64,0,255,255,255,3,244,127,255,0,0,253,0,0,3,244,63,255,0,0,253,0,0,3,244,63,248,0,0,253,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x548c 和 + 140,84,34,36,68,38,1,252,0,0,0,5,0,0,0,0,0,0,0,1,191,0,0,0,0,0,0,5,191,255,192,0,0,0,0,26,255,255,255,129,85,85,85,64,31,255,255,144,3,255,255,255,208,15,254,254,0,3,255,255,255,208,4,0,254,0,3,255,255,255,208,0,0,254,0,3,244,0,15,208,0,0,254,0,3,244,0,15,208,0,0,254,0,3,244,0,15,208,0,0,254,0,3,244,0,15,208,21,85,254,85,67,244,0,15,208,63,255,255,255,227,244,0,15,208,63,255,255,255,227,244,0,15,208,63,255,255,255,227,244,0,15,208,0,3,254,0,3,244,0,15,208,0,7,255,0,3,244,0,15,208,0,15,255,192,3,244,0,15,208,0,15,255,240,3,244,0,15,208,0,47,255,252,3,244,0,15,208,0,63,254,254,3,244,0,15,208,0,189,254,127,67,244,0,15,208,1,252,254,47,211,244,0,15,208,3,248,254,15,211,244,0,15,208,11,240,254,7,131,244,0,15,208,31,224,254,2,3,244,0,15,208,63,192,254,0,3,244,0,15,208,191,64,254,0,3,249,85,111,208,126,0,254,0,3,255,255,255,208,44,0,254,0,3,255,255,255,208,0,0,254,0,3,255,255,255,208,0,0,254,0,3,244,0,15,208,0,0,254,0,3,244,0,15,208,0,0,254,0,3,244,0,15,208,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0, + // 0x54cd 响 + 205,84,33,37,77,38,3,251,0,0,0,0,0,164,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,255,0,0,0,85,85,64,0,2,253,0,0,0,255,255,224,0,3,252,0,0,0,255,255,224,0,7,248,0,0,0,255,255,224,0,11,240,0,0,0,252,7,224,255,255,255,255,255,64,252,7,224,255,255,255,255,255,64,252,7,224,255,255,255,255,255,64,252,7,224,253,0,0,0,63,64,252,7,224,253,0,0,0,63,64,252,7,224,253,0,0,0,63,64,252,7,224,253,6,170,160,63,64,252,7,224,253,15,255,244,63,64,252,7,224,253,15,255,244,63,64,252,7,224,253,15,128,244,63,64,252,7,224,253,15,128,244,63,64,252,7,224,253,15,128,244,63,64,252,7,224,253,15,128,244,63,64,252,7,224,253,15,128,244,63,64,252,7,224,253,15,128,244,63,64,253,87,224,253,15,128,244,63,64,255,255,224,253,15,128,244,63,64,255,255,224,253,15,255,244,63,64,255,255,224,253,15,255,244,63,64,252,0,0,253,15,234,164,63,64,252,0,0,253,15,128,0,63,64,252,0,0,253,15,64,0,63,64,168,0,0,253,0,0,0,63,64,0,0,0,253,0,0,0,63,64,0,0,0,253,0,0,0,63,64,0,0,0,253,0,0,0,63,64,0,0,0,253,0,0,63,255,64,0,0,0,253,0,0,31,255,0,0,0,0,253,0,0,15,248,0,0,0,0,0,0,0,0,0,0, + // 0x55b7 喷 + 183,85,35,36,68,38,2,252,0,0,0,0,0,42,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,21,85,64,127,255,255,255,255,128,127,255,224,191,255,255,255,255,128,127,255,224,191,255,255,255,255,128,127,255,224,0,0,63,0,0,0,125,3,224,0,0,63,0,0,0,125,3,224,3,244,63,7,240,0,125,3,224,3,244,0,7,240,0,125,3,227,255,255,255,255,255,240,125,3,227,255,255,255,255,255,240,125,3,227,255,255,255,255,255,240,125,3,224,3,244,0,7,240,0,125,3,224,3,244,0,7,240,0,125,3,224,0,80,0,1,64,0,125,3,224,31,255,255,255,254,0,125,3,224,31,255,255,255,254,0,125,3,224,31,255,255,255,254,0,125,3,224,31,128,0,0,190,0,125,3,224,31,128,0,0,190,0,125,3,224,31,128,0,0,190,0,126,87,224,31,128,63,0,190,0,127,255,224,31,128,63,0,190,0,127,255,224,31,128,63,0,190,0,127,255,224,31,128,63,0,190,0,125,0,0,31,128,127,0,190,0,125,0,0,31,128,127,0,190,0,125,0,0,31,128,254,0,190,0,41,0,0,5,2,252,56,0,0,0,0,0,0,15,248,255,144,0,0,0,0,1,191,224,47,253,0,0,0,0,111,255,64,2,255,208,0,0,31,255,244,0,0,63,248,0,0,11,254,64,0,0,7,240,0,0,2,64,0,0,0,0,96, + // 0x5634 嘴 + 52,86,34,37,77,38,3,251,0,0,0,2,224,11,208,0,0,0,0,0,3,240,11,208,0,0,0,0,0,3,240,11,208,24,0,255,255,131,195,240,11,209,255,0,255,255,131,195,250,155,239,253,0,255,255,131,195,255,235,255,208,0,248,31,131,195,255,235,253,0,0,244,15,131,195,240,11,224,0,0,244,15,131,195,240,11,208,1,0,244,15,131,195,240,11,208,3,208,244,15,131,195,251,235,208,7,208,244,15,155,255,255,247,250,175,192,244,15,191,255,255,147,255,255,128,244,15,191,255,252,1,255,254,0,244,15,153,3,253,85,64,0,0,244,15,128,11,255,255,224,0,0,244,15,128,47,255,255,240,0,0,244,15,128,191,64,31,192,0,0,244,15,130,255,85,127,149,84,0,244,15,159,255,255,255,255,253,0,244,15,255,255,255,255,255,253,0,255,255,159,254,0,252,0,253,0,255,255,128,190,0,252,0,253,0,255,255,128,191,255,255,255,253,0,248,0,0,191,255,255,255,253,0,244,0,0,190,0,252,0,253,0,244,0,0,253,0,252,0,253,0,244,0,0,253,0,252,0,253,0,0,0,0,255,255,255,255,253,0,0,0,2,255,255,255,255,253,0,0,0,3,249,85,85,85,253,0,0,0,11,240,0,0,0,253,0,0,0,47,224,0,0,0,253,0,0,0,191,192,0,1,170,253,0,0,0,255,0,0,1,255,252,0,0,0,44,0,0,0,255,224,0,0,0,0,0,0,0,0,0,0, + // 0x5668 器 + 104,86,36,35,59,38,1,251,1,255,255,255,0,255,255,255,64,1,255,255,255,0,255,255,255,64,1,255,255,255,0,255,255,255,64,1,252,0,127,0,252,0,63,64,1,252,0,127,0,252,0,63,64,1,252,0,127,0,252,0,63,64,1,252,0,127,0,252,0,63,64,1,252,0,127,0,252,0,63,64,1,255,255,255,0,255,255,255,64,1,255,255,255,64,255,255,255,64,1,255,255,255,248,255,255,255,64,0,0,0,7,252,0,0,0,0,0,0,0,15,240,0,0,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,31,252,0,63,224,0,0,0,0,191,240,0,15,252,0,0,0,3,255,192,0,3,255,64,0,0,47,254,0,0,0,255,240,0,6,255,244,0,0,0,47,255,64,127,255,255,255,65,255,255,255,249,191,255,255,255,65,255,255,255,254,63,255,255,255,65,255,255,255,252,30,253,0,63,65,248,0,127,112,0,253,0,63,65,248,0,127,0,0,253,0,63,65,248,0,127,0,0,253,0,63,65,248,0,127,0,0,253,0,63,65,248,0,127,0,0,253,0,63,65,248,0,127,0,0,255,255,255,65,255,255,255,0,0,255,255,255,65,255,255,255,0,0,255,255,255,65,255,255,255,0,0,253,0,63,65,248,0,127,0,0,0,0,0,0,0,0,0,0, + // 0x5674 噴 + 116,86,34,37,77,38,3,251,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,1,255,255,255,255,255,0,255,255,225,255,255,255,255,255,0,255,255,224,85,85,254,85,85,0,255,255,224,6,144,253,10,128,0,252,11,224,11,208,253,15,192,0,252,11,224,11,208,0,15,192,0,252,11,239,255,255,255,255,255,208,252,11,239,255,255,255,255,255,208,252,11,229,95,229,85,111,213,64,252,11,224,11,208,0,15,192,0,252,11,224,5,64,0,5,64,0,252,11,224,191,255,255,255,252,0,252,11,224,191,255,255,255,252,0,252,11,224,190,0,0,1,252,0,252,11,224,190,0,0,1,252,0,252,11,224,190,0,0,1,252,0,252,11,224,191,255,255,255,252,0,252,11,224,191,255,255,255,252,0,252,11,224,190,0,0,1,252,0,255,255,224,190,0,0,1,252,0,255,255,224,191,255,255,255,252,0,255,255,224,191,255,255,255,252,0,252,0,0,190,0,0,1,252,0,252,0,0,190,0,0,1,252,0,252,0,0,190,0,0,1,252,0,84,0,0,191,255,255,255,252,0,0,0,0,191,255,255,255,252,0,0,0,0,2,228,0,125,0,0,0,0,0,47,252,1,255,208,0,0,0,6,255,224,0,47,253,0,0,0,191,255,0,0,3,255,128,0,0,127,224,0,0,0,127,192,0,0,29,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0, + // 0x56de 回 + 222,86,32,35,24,38,3,252,170,170,170,170,170,170,170,170,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,191,255,255,253,0,255,255,0,191,255,255,253,0,255,255,0,191,255,255,253,0,255,255,0,190,0,0,253,0,255,255,0,190,0,0,253,0,255,255,0,190,0,0,253,0,255,255,0,190,0,0,253,0,255,255,0,190,0,0,253,0,255,255,0,190,0,0,253,0,255,255,0,190,0,0,253,0,255,255,0,191,0,0,253,0,255,255,0,191,255,255,253,0,255,255,0,191,255,255,253,0,255,255,0,191,255,255,253,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,85,85,85,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255, + // 0x56e0 因 + 224,86,32,34,16,38,3,252,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,85,85,85,255,254,0,0,5,64,0,0,191,254,0,0,15,208,0,0,191,254,0,0,15,208,0,0,191,254,0,0,15,208,0,0,191,254,0,0,15,208,0,0,191,254,0,0,15,208,0,0,191,254,47,255,255,255,255,248,191,254,47,255,255,255,255,248,191,254,47,255,255,255,255,248,191,254,0,0,47,244,0,0,191,254,0,0,63,244,0,0,191,254,0,0,63,252,0,0,191,254,0,0,127,252,0,0,191,254,0,0,255,190,0,0,191,254,0,1,253,63,64,0,191,254,0,3,252,63,192,0,191,254,0,11,248,31,224,0,191,254,0,47,240,11,252,0,191,254,0,191,208,3,255,64,191,254,7,255,64,0,255,224,191,254,63,252,0,0,63,248,191,254,15,224,0,0,11,224,191,254,7,0,0,0,1,192,191,254,0,0,0,0,0,0,191,255,85,85,85,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,0,0,0,0,0,0,191,190,0,0,0,0,0,0,190, + // 0x56fa 固 + 250,86,32,35,24,38,3,251,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,85,85,85,85,85,85,255,191,0,0,0,0,0,0,255,191,0,0,11,224,0,0,255,191,0,0,11,224,0,0,255,191,0,0,11,224,0,0,255,191,0,0,11,224,0,0,255,191,15,255,255,255,255,244,255,191,15,255,255,255,255,244,255,191,15,255,255,255,255,240,255,191,0,0,11,224,0,0,255,191,0,0,11,224,0,0,255,191,0,0,11,224,0,0,255,191,0,170,175,250,170,0,255,191,0,255,255,255,255,0,255,191,0,255,255,255,255,0,255,191,0,252,0,0,63,0,255,191,0,252,0,0,63,0,255,191,0,252,0,0,63,0,255,191,0,252,0,0,63,0,255,191,0,252,0,0,63,0,255,191,0,255,255,255,255,0,255,191,0,255,255,255,255,0,255,191,0,170,170,170,170,0,255,191,0,0,0,0,0,0,255,191,0,0,0,0,0,0,255,191,0,0,0,0,0,0,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,85,85,85,85,85,85,255,191,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0, + // 0x56fe 图 + 254,86,32,34,16,38,3,252,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,0,0,80,0,0,0,191,254,0,0,252,0,0,0,191,254,0,3,248,0,0,0,191,254,0,15,254,170,170,64,191,254,0,63,255,255,255,208,191,254,0,255,255,255,255,192,191,254,7,255,64,0,191,0,191,254,47,255,208,3,252,0,191,254,63,199,248,47,240,0,191,254,14,1,255,255,128,0,191,254,0,0,63,254,0,0,191,254,0,2,255,255,144,0,191,254,0,127,255,255,254,64,191,254,111,255,244,11,255,254,191,254,255,255,64,0,191,253,191,254,63,224,249,0,2,248,191,254,36,2,255,248,0,0,191,254,0,0,111,255,192,0,191,254,0,0,0,191,192,0,191,254,0,20,0,6,64,0,191,254,0,191,250,64,0,0,191,254,1,255,255,254,64,0,191,254,0,5,191,255,254,0,191,254,0,0,1,191,255,0,191,254,0,0,0,1,188,0,191,254,0,0,0,0,0,0,191,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,0,0,0,0,0,0,191,189,0,0,0,0,0,0,190, + // 0x5728 在 + 40,87,35,36,68,38,1,252,0,0,0,25,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,5,85,95,245,85,85,85,85,80,0,0,31,224,0,0,0,0,0,0,0,63,192,0,31,192,0,0,0,0,191,64,0,47,192,0,0,0,1,255,0,0,47,192,0,0,0,3,253,0,0,47,192,0,0,0,11,248,0,0,47,192,0,0,0,47,240,0,0,47,192,0,0,0,191,224,0,0,47,192,0,0,1,255,224,47,255,255,255,255,192,11,255,224,47,255,255,255,255,192,63,255,224,47,255,255,255,255,192,127,239,224,5,85,111,213,85,64,63,79,224,0,0,47,192,0,0,29,15,224,0,0,47,192,0,0,4,15,224,0,0,47,192,0,0,0,15,224,0,0,47,192,0,0,0,15,224,0,0,47,192,0,0,0,15,224,0,0,47,192,0,0,0,15,224,0,0,47,192,0,0,0,15,224,0,0,47,192,0,0,0,15,224,0,0,47,192,0,0,0,15,224,85,85,111,213,85,80,0,15,224,255,255,255,255,255,248,0,15,224,255,255,255,255,255,248,0,15,224,255,255,255,255,255,248,0,15,224,0,0,0,0,0,0, + // 0x574f 坏 + 79,87,36,35,59,38,1,252,0,47,128,0,0,0,0,0,0,0,47,128,21,85,85,85,85,84,0,47,128,191,255,255,255,255,253,0,47,128,191,255,255,255,255,253,0,47,128,191,255,255,255,255,253,0,47,128,0,0,2,253,0,0,0,47,128,0,0,3,252,0,0,0,47,128,0,0,15,244,0,0,21,111,213,0,0,31,240,0,0,63,255,255,128,0,63,192,0,0,63,255,255,128,0,255,192,0,0,63,255,255,128,3,255,203,0,0,0,47,128,0,11,255,239,208,0,0,47,128,0,47,255,239,244,0,0,47,128,0,255,255,203,254,0,0,47,128,3,255,95,193,255,128,0,47,128,31,253,31,192,127,240,0,47,128,255,244,31,192,15,252,0,47,131,255,192,31,192,3,254,0,47,128,254,0,31,192,0,252,0,47,128,52,0,31,192,0,48,0,47,129,128,0,31,192,0,0,0,47,239,192,0,31,192,0,0,0,47,255,208,0,31,192,0,0,1,255,255,208,0,31,192,0,0,127,255,253,0,0,31,192,0,0,127,255,128,0,0,31,192,0,0,63,228,0,0,0,31,192,0,0,61,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0, + // 0x5757 块 + 87,87,35,36,68,38,1,252,0,21,64,0,0,21,0,0,0,0,47,128,0,0,127,0,0,0,0,47,128,0,0,127,0,0,0,0,47,128,0,0,127,0,0,0,0,47,128,0,0,127,0,0,0,0,47,128,0,0,127,0,0,0,0,47,128,1,85,191,85,85,0,0,47,128,11,255,255,255,255,64,0,47,128,11,255,255,255,255,64,63,255,255,139,255,255,255,255,64,63,255,255,128,0,127,0,63,64,63,255,255,128,0,127,0,63,64,21,127,213,0,0,127,0,63,64,0,47,128,0,0,127,0,63,64,0,47,128,0,0,127,0,63,64,0,47,128,0,0,127,0,63,64,0,47,128,0,0,191,0,63,64,0,47,128,21,85,191,85,127,148,0,47,128,63,255,255,255,255,252,0,47,128,63,255,255,255,255,252,0,47,128,63,255,255,255,255,252,0,47,135,128,0,255,240,0,0,0,47,255,192,2,255,244,0,0,0,47,255,192,3,254,252,0,0,1,255,255,64,7,244,253,0,0,47,255,244,0,15,240,255,0,0,127,255,64,0,31,240,127,128,0,63,244,0,0,63,192,63,192,0,46,64,0,0,255,128,31,240,0,0,0,0,3,255,0,11,252,0,0,0,0,15,253,0,3,255,0,0,0,0,127,244,0,0,255,208,0,0,3,255,208,0,0,127,252,0,0,15,255,0,0,0,31,252,0,0,3,248,0,0,0,3,240,0,0,0,128,0,0,0,0,80, + // 0x578b 型 + 139,87,34,35,59,38,2,253,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,0,127,0,15,255,255,255,252,5,64,127,0,15,255,255,255,252,31,192,127,0,15,255,255,255,252,31,192,127,0,0,63,64,190,0,31,192,127,0,0,63,64,190,0,31,192,127,0,0,63,64,190,0,31,192,127,0,0,63,64,190,0,31,192,127,0,0,63,64,191,0,31,192,127,0,127,255,255,255,254,31,192,127,0,127,255,255,255,254,31,192,127,0,127,255,255,255,254,31,192,127,0,0,127,0,190,0,31,192,127,0,0,191,0,190,0,31,192,127,0,0,253,0,190,0,5,64,127,0,3,252,0,190,0,0,0,127,0,11,248,0,190,0,0,0,127,0,63,240,0,190,0,0,255,255,0,191,192,0,190,0,0,255,254,0,47,0,0,107,252,0,191,248,0,4,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,85,85,85,85,85,85,80, + // 0x57ab 垫 + 171,87,35,35,59,38,2,253,0,15,192,0,1,248,0,0,0,0,15,192,0,2,252,0,0,0,0,15,192,0,2,248,0,0,0,0,15,192,0,2,248,0,0,0,191,255,255,215,255,255,255,244,0,191,255,255,215,255,255,255,244,0,191,255,255,215,255,255,255,244,0,0,31,208,0,3,244,3,244,0,0,15,192,0,3,244,3,240,0,0,15,192,1,211,240,3,240,0,0,15,219,227,255,240,3,240,0,1,111,255,247,255,240,3,240,0,191,255,255,240,191,240,3,240,0,255,255,249,0,31,253,3,240,0,191,255,192,0,47,255,131,240,0,100,15,192,0,63,255,243,244,64,0,15,192,0,255,15,242,244,184,0,15,192,3,253,2,193,248,252,0,31,192,31,248,0,0,252,248,31,255,192,63,224,0,0,255,244,15,255,128,31,128,0,0,127,240,11,254,0,7,248,0,0,31,192,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,1,255,255,255,255,255,255,244,0,1,255,255,255,255,255,255,244,0,1,255,255,255,255,255,255,244,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x586b 填 + 107,88,36,36,68,38,1,252,0,5,0,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,191,255,255,255,255,252,0,63,64,255,255,255,255,255,252,0,63,64,255,255,255,255,255,252,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,31,208,0,0,21,127,149,3,255,255,255,255,0,63,255,255,3,255,255,255,255,0,63,255,255,3,244,0,0,63,0,63,255,255,3,244,0,0,127,0,0,63,64,3,255,255,255,255,0,0,63,64,3,255,255,255,255,0,0,63,64,3,244,0,0,63,0,0,63,64,3,244,0,0,63,0,0,63,64,3,255,255,255,255,0,0,63,64,3,255,255,255,255,0,0,63,64,3,244,0,0,127,0,0,63,64,3,244,0,0,63,0,0,63,64,3,245,85,85,127,0,0,63,75,131,255,255,255,255,0,0,63,255,195,255,255,255,255,0,0,127,255,192,0,0,0,0,0,11,255,253,0,0,0,0,0,0,127,255,211,255,255,255,255,255,253,127,253,3,255,255,255,255,255,253,63,128,3,255,255,255,255,255,253,24,0,0,0,30,0,3,128,0,0,0,0,0,191,192,31,244,0,0,0,0,7,255,0,11,255,0,0,0,0,191,248,0,0,255,208,0,0,11,255,208,0,0,47,248,0,0,3,254,0,0,0,7,253,0,0,0,160,0,0,0,0,144, + // 0x58f3 壳 + 243,88,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,106,170,170,171,254,170,170,170,144,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,1,255,255,255,255,255,255,248,0,1,255,255,255,255,255,255,248,0,1,170,170,170,170,170,170,164,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,234,170,170,170,170,170,191,192,63,64,0,0,0,0,0,47,192,63,69,85,85,85,85,85,47,192,63,75,255,255,255,255,254,47,192,0,11,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,208,0,0,0,1,255,255,255,255,208,0,0,0,1,255,255,255,255,208,0,0,0,1,252,0,0,31,208,0,0,0,1,252,0,0,31,208,0,0,0,2,252,0,0,31,208,0,0,0,3,252,0,0,31,208,6,0,0,11,244,0,0,31,208,7,224,0,47,240,0,0,31,208,11,224,1,255,192,0,0,15,208,15,208,111,255,64,0,0,15,255,255,208,127,252,0,0,0,15,255,255,192,47,208,0,0,0,3,255,255,0,9,0,0,0,0,0,0,0,0, + // 0x5907 备 + 7,89,36,37,77,38,1,251,0,0,0,190,64,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,15,255,255,255,255,128,0,0,0,63,255,255,255,255,224,0,0,1,255,255,255,255,255,192,0,0,11,255,0,0,1,255,64,0,0,127,255,192,0,7,253,0,0,2,255,255,244,0,47,248,0,0,15,255,11,254,1,255,208,0,0,3,248,2,255,219,255,0,0,0,0,192,0,127,255,252,0,0,0,0,0,0,31,255,244,0,0,0,0,0,6,255,255,255,224,0,0,0,1,191,255,239,255,255,148,0,6,255,255,254,0,191,255,255,249,191,255,255,208,0,6,255,255,253,63,255,244,0,0,0,27,255,248,47,249,0,0,0,0,0,26,240,4,47,255,255,255,255,255,244,0,0,47,255,255,255,255,255,244,0,0,47,255,255,255,255,255,244,0,0,47,192,0,254,0,7,244,0,0,47,192,0,254,0,7,244,0,0,47,192,0,254,0,7,244,0,0,47,255,255,255,255,255,244,0,0,47,255,255,255,255,255,244,0,0,47,255,255,255,255,255,244,0,0,47,192,0,254,0,7,244,0,0,47,192,0,254,0,7,244,0,0,47,192,0,254,0,7,244,0,0,47,192,0,254,0,7,244,0,0,47,255,255,255,255,255,244,0,0,47,255,255,255,255,255,244,0,0,47,255,255,255,255,255,244,0,0,47,192,0,0,0,7,244,0,0,0,0,0,0,0,0,0,0, + // 0x590d 复 + 13,89,25,37,3,38,6,251,0,3,64,0,0,0,0,0,11,240,0,0,0,0,0,15,240,0,0,0,0,0,47,208,0,0,0,0,0,63,255,255,255,253,0,0,255,255,255,255,253,0,2,255,255,255,255,253,0,7,252,0,0,0,0,0,31,244,0,0,0,0,0,127,255,255,255,255,224,0,191,255,255,255,255,224,0,46,63,85,85,95,224,0,4,63,0,0,15,224,0,0,63,64,0,15,224,0,0,63,255,255,255,224,0,0,63,255,255,255,224,0,0,63,0,0,15,224,0,0,63,0,0,15,224,0,0,63,255,255,255,224,0,0,63,255,255,255,224,0,0,21,191,149,85,64,0,0,0,255,0,0,0,0,0,3,255,170,170,64,0,0,15,255,255,255,240,0,0,63,255,255,255,208,0,2,255,208,0,63,128,0,31,255,244,0,255,0,0,127,245,254,7,253,0,0,47,128,127,239,244,0,0,9,0,31,255,192,0,0,0,0,31,255,128,0,0,0,2,255,255,254,0,0,1,191,255,159,255,254,64,63,255,248,1,255,255,192,31,254,64,0,27,255,0,14,64,0,0,0,29,0,0,0,0,0,0,0,0, + // 0x5916 外 + 22,89,36,36,68,38,1,252,0,0,57,0,0,0,191,0,0,0,0,127,64,0,0,191,0,0,0,0,191,0,0,0,191,0,0,0,0,254,0,0,0,191,0,0,0,1,253,0,0,0,191,0,0,0,2,252,0,0,0,191,0,0,0,3,255,255,254,0,191,0,0,0,11,255,255,255,0,191,0,0,0,15,255,255,255,0,191,0,0,0,31,229,85,255,64,191,0,0,0,63,192,0,255,224,191,0,0,0,191,64,1,255,244,191,0,0,0,255,0,2,255,252,191,0,0,2,253,0,3,252,254,191,0,0,7,253,0,3,244,191,255,0,0,31,255,128,7,240,63,255,0,0,63,255,244,11,240,15,255,0,0,191,223,254,15,224,7,255,0,0,47,2,255,239,192,1,255,64,0,5,0,127,255,192,0,255,224,0,0,0,15,255,64,0,191,252,0,0,0,3,255,0,0,191,255,64,0,0,1,253,0,0,191,255,224,0,0,3,252,0,0,191,127,254,0,0,15,244,0,0,191,15,254,0,0,31,240,0,0,191,2,252,0,0,127,192,0,0,191,0,48,0,0,255,128,0,0,191,0,0,0,3,255,0,0,0,191,0,0,0,15,252,0,0,0,191,0,0,0,127,240,0,0,0,191,0,0,2,255,192,0,0,0,191,0,0,31,255,0,0,0,0,191,0,0,31,252,0,0,0,0,191,0,0,7,224,0,0,0,0,191,0,0,1,0,0,0,0,0,190,0,0, + // 0x591a 多 + 26,89,33,36,68,38,3,252,0,0,0,46,64,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,15,255,255,255,240,0,0,0,0,127,255,255,255,252,0,0,0,3,255,255,255,255,244,0,0,0,47,253,0,0,31,240,0,0,6,255,244,0,0,127,192,0,0,127,255,254,0,1,255,64,0,0,191,250,255,208,7,253,0,0,0,47,64,47,252,47,244,0,0,0,4,0,7,255,255,208,0,0,0,0,0,0,255,255,64,0,0,0,0,0,0,127,249,144,0,0,0,0,0,7,255,215,254,0,0,0,0,0,191,254,15,248,0,0,0,0,47,255,224,127,224,0,0,0,91,255,254,2,255,255,255,253,0,255,255,208,15,255,255,255,255,64,191,248,0,191,255,255,255,255,0,57,0,11,255,128,0,3,252,0,0,0,191,253,0,0,11,248,0,0,31,255,255,0,0,31,240,0,0,255,254,255,224,0,63,208,0,0,127,208,63,252,1,255,128,0,0,45,0,7,255,75,254,0,0,0,0,0,0,255,255,248,0,0,0,0,0,0,47,255,224,0,0,0,0,0,0,31,255,64,0,0,0,0,0,2,255,248,0,0,0,0,0,0,127,255,208,0,0,0,0,0,111,255,253,0,0,0,0,2,191,255,255,144,0,0,0,0,3,255,255,244,0,0,0,0,0,2,255,249,0,0,0,0,0,0,0,229,0,0,0,0,0,0,0, + // 0x5927 大 + 39,89,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,106,170,170,175,255,170,170,170,144,0,0,0,31,255,0,0,0,0,0,0,0,47,255,128,0,0,0,0,0,0,63,255,192,0,0,0,0,0,0,63,239,208,0,0,0,0,0,0,191,79,240,0,0,0,0,0,0,255,15,240,0,0,0,0,0,1,254,7,252,0,0,0,0,0,3,253,3,253,0,0,0,0,0,11,252,1,255,0,0,0,0,0,15,244,0,255,192,0,0,0,0,63,240,0,63,208,0,0,0,0,191,192,0,47,244,0,0,0,2,255,128,0,15,252,0,0,0,11,254,0,0,7,255,64,0,0,47,252,0,0,1,255,208,0,1,255,240,0,0,0,127,248,0,11,255,192,0,0,0,31,255,128,191,254,0,0,0,0,7,255,240,191,244,0,0,0,0,0,255,208,47,128,0,0,0,0,0,47,128,8,0,0,0,0,0,0,2,0, + // 0x5929 天 + 41,89,35,33,41,38,2,252,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,106,170,170,171,254,170,170,170,144,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,31,255,255,255,255,255,255,255,128,31,255,255,255,255,255,255,255,128,31,255,255,255,255,255,255,255,128,26,170,170,175,255,170,170,170,64,0,0,0,15,255,0,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,47,255,192,0,0,0,0,0,0,63,255,208,0,0,0,0,0,0,127,223,240,0,0,0,0,0,0,255,75,248,0,0,0,0,0,3,255,3,253,0,0,0,0,0,11,253,2,255,0,0,0,0,0,47,248,0,255,192,0,0,0,0,255,224,0,63,244,0,0,0,7,255,192,0,31,254,0,0,0,127,254,0,0,7,255,208,0,7,255,248,0,0,1,255,253,0,191,255,192,0,0,0,47,255,244,255,253,0,0,0,0,7,255,240,63,208,0,0,0,0,0,191,192,41,0,0,0,0,0,0,6,128, + // 0x592a 太 + 42,89,35,36,68,38,2,252,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,106,170,170,175,255,170,170,170,160,0,0,0,31,255,64,0,0,0,0,0,0,47,255,192,0,0,0,0,0,0,63,239,192,0,0,0,0,0,0,63,143,224,0,0,0,0,0,0,127,79,240,0,0,0,0,0,0,255,7,244,0,0,0,0,0,1,255,3,252,0,0,0,0,0,2,253,2,254,0,0,0,0,0,7,252,1,255,0,0,0,0,0,15,248,0,191,128,0,0,0,0,31,240,0,63,208,0,0,0,0,127,210,0,47,240,0,0,0,0,255,223,192,15,252,0,0,0,3,255,127,240,7,254,0,0,0,15,253,31,252,2,255,128,0,0,127,248,7,255,0,255,240,0,2,255,224,1,255,192,63,253,0,31,255,128,0,127,240,15,255,128,255,253,0,0,47,244,3,255,244,255,240,0,0,11,224,0,191,240,63,64,0,0,3,64,0,31,192,24,0,0,0,0,0,0,2,64, + // 0x5931 失 + 49,89,35,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,11,240,3,248,0,0,0,0,0,15,240,3,248,0,0,0,0,0,31,224,3,248,0,0,0,0,0,47,192,3,248,0,0,0,0,0,63,192,3,248,0,0,0,0,0,191,234,171,254,170,170,164,0,0,255,255,255,255,255,255,248,0,1,255,255,255,255,255,255,248,0,3,255,255,255,255,255,255,248,0,7,248,0,3,248,0,0,0,0,15,240,0,3,248,0,0,0,0,63,224,0,3,248,0,0,0,0,191,192,0,3,248,0,0,0,0,47,128,0,3,248,0,0,0,0,6,0,0,3,244,0,0,0,0,0,0,0,7,244,0,0,0,0,106,170,170,171,250,170,170,170,144,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,47,255,64,0,0,0,0,0,0,63,255,192,0,0,0,0,0,0,191,239,224,0,0,0,0,0,0,255,79,240,0,0,0,0,0,3,255,7,252,0,0,0,0,0,11,253,3,255,0,0,0,0,0,47,248,0,255,192,0,0,0,0,255,224,0,127,240,0,0,0,7,255,192,0,31,254,0,0,0,127,254,0,0,7,255,208,0,7,255,248,0,0,1,255,254,0,191,255,192,0,0,0,47,255,244,255,253,0,0,0,0,7,255,240,63,208,0,0,0,0,0,127,208,24,0,0,0,0,0,0,6,128, + // 0x5934 头 + 52,89,34,36,68,38,2,252,0,0,0,0,10,144,0,0,0,0,0,0,0,15,208,0,0,0,0,11,144,0,15,208,0,0,0,0,31,253,0,15,208,0,0,0,0,31,255,208,15,208,0,0,0,0,1,255,252,15,208,0,0,0,0,0,31,253,15,208,0,0,0,0,0,1,248,15,208,0,0,0,0,0,0,48,31,208,0,0,0,2,208,0,0,31,208,0,0,0,11,253,0,0,31,208,0,0,0,15,255,208,0,31,192,0,0,0,1,255,252,0,31,192,0,0,0,0,31,255,0,47,192,0,0,0,0,1,255,0,47,192,0,0,0,0,0,60,0,63,192,0,0,0,0,0,0,0,63,128,0,0,0,21,85,85,85,127,149,85,85,64,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,1,254,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,244,128,0,0,0,0,0,0,47,242,248,0,0,0,0,0,0,191,199,255,128,0,0,0,0,2,255,65,255,248,0,0,0,0,15,254,0,31,255,64,0,0,0,127,248,0,2,255,224,0,0,7,255,208,0,0,63,253,0,1,191,255,0,0,0,7,255,128,111,255,244,0,0,0,0,255,224,127,255,128,0,0,0,0,47,192,47,244,0,0,0,0,0,7,64,9,0,0,0,0,0,0,0,0, + // 0x597d 好 + 125,89,36,37,77,38,1,251,0,15,144,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,31,192,0,255,255,255,255,208,0,31,192,0,255,255,255,255,244,0,47,128,0,255,255,255,255,240,0,63,128,0,85,85,85,127,208,0,63,64,0,0,0,0,255,128,0,63,0,0,0,0,2,254,0,127,255,255,252,0,0,7,252,0,127,255,255,252,0,0,31,240,0,127,255,255,252,0,0,127,192,0,21,253,86,252,0,2,255,0,0,0,252,2,252,0,2,252,0,0,1,252,2,248,0,2,252,0,0,2,248,3,244,0,2,252,0,0,3,244,3,245,85,87,253,85,84,3,240,3,247,255,255,255,255,254,7,240,7,243,255,255,255,255,254,11,224,11,243,255,255,255,255,254,15,208,15,224,0,2,252,0,0,15,208,15,208,0,2,252,0,0,15,244,47,192,0,2,252,0,0,31,255,63,192,0,2,252,0,0,63,255,255,64,0,2,252,0,0,11,127,255,0,0,2,252,0,0,1,11,255,0,0,2,252,0,0,0,2,255,192,0,2,252,0,0,0,3,255,240,0,2,252,0,0,0,15,255,252,0,2,252,0,0,0,47,227,254,0,2,252,0,0,0,127,192,253,0,2,252,0,0,1,255,64,56,0,2,252,0,0,11,253,0,0,5,87,252,0,0,47,248,0,0,15,255,248,0,0,15,208,0,0,11,255,240,0,0,7,0,0,0,7,255,128,0,0,0,0,0,0,0,0,0,0,0, + // 0x59cb 始 + 203,89,35,36,68,38,2,252,0,62,64,0,0,57,0,0,0,0,63,64,0,0,127,192,0,0,0,127,0,0,0,127,64,0,0,0,127,0,0,0,255,0,0,0,0,190,0,0,0,254,0,0,0,0,254,0,0,1,253,0,0,0,0,253,0,0,2,252,0,144,0,0,252,0,0,3,248,7,240,0,255,255,255,240,7,244,3,248,0,255,255,255,240,11,240,1,253,0,255,255,255,240,15,224,0,255,0,87,245,91,240,31,192,0,63,128,7,240,11,224,47,213,170,191,192,11,240,15,239,255,255,255,255,240,15,224,15,223,255,255,255,255,244,15,208,15,203,255,255,234,151,248,15,192,31,197,80,0,0,2,248,31,192,31,192,0,0,0,1,128,47,128,47,128,0,0,0,0,0,63,64,63,64,0,0,0,0,0,63,64,127,0,127,255,255,255,192,127,224,191,0,127,255,255,255,192,191,253,254,0,127,255,255,255,192,255,255,253,0,127,0,0,47,192,44,191,252,0,127,0,0,47,192,0,31,252,0,127,0,0,47,192,0,15,255,64,127,0,0,47,192,0,31,255,208,127,0,0,47,192,0,63,255,240,127,0,0,47,192,0,255,139,252,127,0,0,47,192,2,255,2,240,127,0,0,47,192,11,252,0,208,127,255,255,255,192,127,244,0,0,127,255,255,255,192,191,192,0,0,127,255,255,255,192,63,0,0,0,127,0,0,47,192,8,0,0,0,127,0,0,26,128, + // 0x5b50 子 + 80,91,34,35,59,38,2,251,0,85,85,85,85,85,85,128,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,240,0,0,0,0,0,0,2,255,192,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,127,244,0,0,0,0,0,0,2,255,208,0,0,0,0,0,0,31,254,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,170,170,170,171,254,170,170,170,160,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,170,171,252,0,0,0,0,0,0,255,255,248,0,0,0,0,0,0,127,255,240,0,0,0,0,0,0,63,254,64,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5b58 存 + 88,91,35,36,68,38,1,252,0,0,0,41,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,255,0,0,0,0,0,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,5,85,95,249,85,85,85,85,84,0,0,15,240,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,191,128,0,0,0,4,0,0,1,255,3,255,255,255,255,0,0,3,253,3,255,255,255,255,128,0,11,252,3,255,255,255,255,0,0,47,240,0,0,0,11,252,0,0,127,224,0,0,0,47,224,0,1,255,224,0,0,0,255,128,0,7,255,224,0,0,15,253,0,0,47,255,224,0,0,15,240,0,0,191,239,224,0,0,15,224,0,0,63,143,224,255,255,255,255,255,252,29,15,224,255,255,255,255,255,252,0,15,224,255,255,255,255,255,252,0,15,224,85,85,95,245,85,84,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,85,95,224,0,0,0,15,224,0,127,255,224,0,0,0,15,224,0,63,255,192,0,0,0,15,224,0,63,254,0,0,0, + // 0x5b89 安 + 137,91,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,213,85,85,85,85,85,127,192,63,192,0,0,0,0,0,63,192,63,192,0,63,128,0,0,63,192,63,192,0,127,192,0,0,63,192,63,192,0,255,64,0,0,63,192,21,64,0,255,0,0,0,21,64,0,0,2,253,0,0,0,0,0,85,85,87,253,85,85,85,85,80,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,63,192,0,3,252,0,0,0,0,255,64,0,7,248,0,0,0,1,255,0,0,11,244,0,0,0,3,253,0,0,15,240,0,0,0,7,252,0,0,47,208,0,0,0,15,248,0,0,127,192,0,0,0,31,255,144,0,255,64,0,0,0,63,255,254,67,254,0,0,0,0,191,175,255,255,252,0,0,0,0,11,1,255,255,240,0,0,0,0,0,0,11,255,254,0,0,0,0,0,0,47,255,255,224,0,0,0,0,6,255,250,255,254,0,0,0,6,191,255,192,47,255,224,0,26,255,255,253,0,2,255,253,0,15,255,255,128,0,0,47,254,0,11,255,228,0,0,0,2,248,0,3,148,0,0,0,0,0,96,0, + // 0x5b8c 完 + 140,91,34,36,68,38,2,252,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,213,85,85,85,85,85,127,192,63,128,0,0,0,0,0,63,192,63,128,0,0,0,0,0,63,192,63,128,0,0,0,0,0,63,192,63,131,255,255,255,255,252,63,192,21,67,255,255,255,255,252,21,64,0,3,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,224,255,255,255,255,255,255,255,255,224,255,255,255,255,255,255,255,255,224,85,85,111,229,87,253,85,85,80,0,0,47,208,2,252,0,0,0,0,0,47,192,2,252,0,0,0,0,0,63,192,2,252,0,0,0,0,0,63,128,2,252,0,0,0,0,0,191,64,2,252,0,0,0,0,0,255,0,2,252,0,3,64,0,3,254,0,2,252,0,3,240,0,11,252,0,2,252,0,3,240,0,63,244,0,2,252,0,3,240,2,255,224,0,2,252,0,11,240,191,255,128,0,1,255,255,255,224,255,253,0,0,0,255,255,255,192,127,208,0,0,0,127,255,255,64,57,0,0,0,0,1,85,80,0, + // 0x5b9a 定 + 154,91,35,37,77,38,1,251,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,5,85,85,85,255,85,85,85,80,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,224,0,0,0,0,0,11,240,15,224,0,0,0,0,0,11,240,15,224,0,0,0,0,0,11,240,15,224,0,0,0,0,0,11,240,15,226,255,255,255,255,255,139,240,5,66,255,255,255,255,255,133,80,0,2,255,255,255,255,255,128,0,0,1,85,85,255,85,85,64,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,2,164,0,255,0,0,0,0,0,3,248,0,255,0,0,0,0,0,3,244,0,255,0,0,0,0,0,7,244,0,255,255,255,248,0,0,11,240,0,255,255,255,248,0,0,15,240,0,255,255,255,248,0,0,15,244,0,255,85,85,80,0,0,31,252,0,255,0,0,0,0,0,63,253,0,255,0,0,0,0,0,63,255,0,255,0,0,0,0,0,191,191,192,255,0,0,0,0,0,255,31,244,255,0,0,0,0,3,253,11,255,255,0,0,0,0,11,252,2,255,255,64,0,0,0,47,244,0,191,255,255,255,255,252,127,224,0,11,255,255,255,255,248,47,192,0,0,127,255,255,255,244,11,0,0,0,0,85,85,85,80,0,0,0,0,0,0,0,0,0, + // 0x5ba2 客 + 162,91,35,37,77,38,1,251,0,0,0,0,190,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,208,0,36,0,0,0,11,240,15,208,0,191,128,0,0,11,240,15,208,1,255,0,0,0,11,240,15,208,7,255,255,255,253,11,240,0,0,47,255,255,255,255,0,0,0,0,255,234,170,171,253,0,0,0,7,255,208,0,11,248,0,0,0,127,255,248,0,47,240,0,0,3,255,231,254,0,255,192,0,0,1,255,0,255,215,255,0,0,0,0,180,0,63,255,248,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,127,255,254,64,0,0,0,0,11,255,255,255,249,0,0,0,1,255,255,65,255,255,250,64,1,191,255,248,0,31,255,255,252,127,255,255,64,0,0,191,255,248,63,255,255,255,255,255,255,255,240,31,230,255,255,255,255,255,129,80,4,1,255,255,255,255,255,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,255,255,255,255,255,128,0,0,1,255,255,255,255,255,128,0,0,1,255,255,255,255,255,128,0,0,1,252,0,0,0,63,128,0,0,0,0,0,0,0,0,0,0, + // 0x5bab 宫 + 171,91,32,36,32,38,3,252,0,0,0,27,128,0,0,0,0,0,0,63,192,0,0,0,0,0,0,47,224,0,0,0,0,0,0,15,240,0,0,0,85,85,85,95,249,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,0,0,0,0,0,0,191,254,0,0,0,0,0,0,191,254,0,0,0,0,0,0,191,254,63,255,255,255,255,252,191,190,63,255,255,255,255,252,191,0,63,255,255,255,255,252,0,0,63,64,0,0,2,252,0,0,63,64,0,0,2,252,0,0,63,64,0,0,2,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,0,63,255,255,255,255,252,0,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,255,255,255,255,255,255,208,3,255,255,255,255,255,255,208,3,255,255,255,255,255,255,208,3,244,0,0,0,0,15,208,3,244,0,0,0,0,15,208,3,244,0,0,0,0,15,208,3,244,0,0,0,0,15,208,3,244,0,0,0,0,15,208,3,255,255,255,255,255,255,208,3,255,255,255,255,255,255,208,3,255,255,255,255,255,255,208,3,244,0,0,0,0,15,208,2,160,0,0,0,0,10,128, + // 0x5bf9 对 + 249,91,35,36,68,38,2,252,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,63,255,255,253,0,0,7,240,0,63,255,255,254,0,0,7,240,0,63,255,255,253,0,0,7,240,0,21,85,85,253,0,0,7,240,0,0,0,1,252,191,255,255,255,244,0,0,2,252,191,255,255,255,244,0,0,3,252,191,255,255,255,244,0,0,3,248,85,85,91,245,80,3,64,3,244,0,0,7,240,0,15,208,7,240,0,0,7,240,0,31,244,11,240,0,0,7,240,0,11,253,15,224,6,0,7,240,0,1,255,95,208,63,64,7,240,0,0,127,255,192,63,192,7,240,0,0,47,255,192,15,224,7,240,0,0,11,255,128,11,240,7,240,0,0,2,255,64,3,248,7,240,0,0,0,255,192,2,252,7,240,0,0,2,255,240,0,253,7,240,0,0,3,255,248,0,253,7,240,0,0,11,251,253,0,160,7,240,0,0,31,242,255,0,0,7,240,0,0,63,208,255,128,0,7,240,0,0,255,128,63,192,0,7,240,0,2,255,0,47,0,0,7,240,0,11,253,0,8,0,0,7,240,0,47,248,0,0,0,0,11,240,0,255,224,0,0,0,63,255,240,0,191,128,0,0,0,47,255,224,0,46,0,0,0,0,31,255,192,0,4,0,0,0,0,10,165,0,0, + // 0x5c06 将 + 6,92,36,36,68,38,1,252,0,2,248,0,0,0,0,29,0,0,2,248,0,0,0,107,255,0,0,2,248,0,5,191,255,255,192,0,2,248,175,255,255,255,249,0,0,2,248,255,255,255,249,0,0,10,2,248,127,254,148,0,0,0,127,2,248,20,0,25,0,3,128,63,130,248,1,0,190,0,7,244,47,210,248,47,64,127,0,15,240,15,242,248,47,128,63,64,47,208,7,242,248,15,192,47,128,63,192,3,250,248,15,224,47,192,255,0,2,255,248,7,240,31,194,253,0,1,251,248,3,244,14,71,248,0,0,130,248,3,244,0,15,240,0,0,2,248,1,64,0,31,208,0,0,2,248,0,0,0,3,244,0,0,2,248,0,0,0,3,244,0,0,2,248,21,85,85,87,249,84,0,2,248,255,255,255,255,255,253,0,2,248,255,255,255,255,255,253,0,7,248,255,255,255,255,255,253,0,63,248,0,0,0,3,244,0,2,255,248,0,112,0,3,244,0,31,255,248,3,252,0,3,244,0,191,251,248,1,254,0,3,244,0,127,210,248,0,191,128,3,244,0,63,2,248,0,63,208,3,244,0,40,2,248,0,15,240,3,244,0,0,2,248,0,11,244,3,244,0,0,2,248,0,3,208,3,244,0,0,2,248,0,1,0,3,244,0,0,2,248,0,0,21,91,244,0,0,2,248,0,0,31,255,240,0,0,2,248,0,0,15,255,240,0,0,2,248,0,0,15,254,64,0, + // 0x5c0f 小 + 15,92,36,36,68,38,1,252,0,0,0,0,85,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,4,0,0,255,0,1,128,0,0,15,240,0,255,0,31,208,0,0,15,240,0,255,0,15,240,0,0,31,240,0,255,0,11,244,0,0,31,224,0,255,0,3,252,0,0,63,208,0,255,0,2,254,0,0,63,192,0,255,0,0,255,0,0,127,128,0,255,0,0,255,64,0,191,64,0,255,0,0,127,192,0,255,0,0,255,0,0,63,208,1,254,0,0,255,0,0,47,224,3,253,0,0,255,0,0,15,240,7,252,0,0,255,0,0,15,248,15,244,0,0,255,0,0,7,252,47,240,0,0,255,0,0,3,252,63,208,0,0,255,0,0,2,253,127,192,0,0,255,0,0,1,254,11,0,0,0,255,0,0,0,254,0,0,0,0,255,0,0,0,208,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,63,255,255,0,0,0,0,0,0,31,255,254,0,0,0,0,0,0,15,255,248,0,0,0,0,0,0,6,170,64,0,0,0,0, + // 0x5c31 就 + 49,92,36,36,68,38,1,252,0,0,190,0,0,0,252,0,0,0,0,191,0,0,0,252,8,0,0,0,191,0,0,0,252,191,0,0,0,191,0,0,0,252,63,192,0,0,191,0,0,0,252,31,224,63,255,255,255,252,0,252,11,240,63,255,255,255,252,0,252,3,248,63,255,255,255,252,0,252,1,248,0,0,0,0,0,0,252,0,128,0,0,0,0,0,0,252,0,0,0,0,0,0,3,255,255,255,253,3,255,255,255,211,255,255,255,253,3,255,255,255,211,255,255,255,253,3,255,255,255,209,86,253,85,84,3,240,0,15,208,1,252,0,0,3,240,0,15,208,2,255,208,0,3,240,0,15,208,2,255,208,0,3,240,0,15,208,3,255,208,0,3,255,255,255,208,3,255,208,0,3,255,255,255,208,3,255,208,0,3,255,255,255,208,7,255,208,0,0,0,127,0,0,11,255,208,0,0,0,127,0,0,15,255,208,0,2,228,127,31,128,15,223,208,0,3,244,127,15,192,31,207,208,0,7,240,127,15,208,63,207,208,0,11,240,127,7,240,127,79,208,16,15,208,127,3,240,255,15,208,61,31,192,127,2,249,254,15,208,62,63,192,127,1,247,252,15,208,62,127,64,127,0,75,248,15,208,62,127,0,127,0,31,240,15,224,126,13,0,191,0,127,208,15,255,253,0,63,255,0,255,128,11,255,252,0,47,253,0,126,0,3,255,244,0,31,228,0,8,0,0,85,64, + // 0x5c4f 屏 + 79,92,35,35,59,38,1,251,0,191,255,255,255,255,255,255,128,0,191,255,255,255,255,255,255,128,0,191,255,255,255,255,255,255,128,0,191,0,0,0,0,0,63,128,0,191,0,0,0,0,0,63,128,0,191,0,0,0,0,0,63,128,0,191,0,0,0,0,0,63,128,0,191,255,255,255,255,255,255,128,0,191,255,255,255,255,255,255,128,0,191,255,255,255,255,255,255,128,0,191,0,111,0,0,15,224,0,0,191,0,63,128,0,31,224,0,0,191,0,31,192,0,63,192,0,0,191,0,15,224,0,127,0,0,0,255,63,255,255,255,255,255,240,0,254,63,255,255,255,255,255,240,0,254,63,255,255,255,255,255,240,0,254,0,11,240,0,190,0,0,0,254,0,11,240,0,190,0,0,0,253,0,11,240,0,190,0,0,0,253,0,11,240,0,190,0,0,1,252,0,11,240,0,190,0,0,1,252,255,255,255,255,255,255,252,2,252,255,255,255,255,255,255,252,3,248,255,255,255,255,255,255,252,3,244,0,31,208,0,191,0,0,7,240,0,63,192,0,190,0,0,11,240,0,127,128,0,190,0,0,15,224,1,255,0,0,190,0,0,31,208,7,254,0,0,190,0,0,63,192,47,248,0,0,190,0,0,127,128,255,224,0,0,190,0,0,47,0,127,128,0,0,190,0,0,6,0,24,0,0,0,190,0,0,0,0,0,0,0,0,0,0,0, + // 0x5de5 工 + 229,93,34,29,5,38,2,255,10,170,170,170,170,170,170,170,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,170,170,170,171,254,170,170,170,160,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x5dee 差 + 238,93,35,36,68,38,1,252,0,0,8,0,0,0,164,0,0,0,0,191,0,0,0,255,0,0,0,0,127,128,0,1,254,0,0,0,0,47,192,0,3,252,0,0,0,0,15,224,0,11,240,0,0,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,63,255,255,255,255,255,253,0,0,63,255,255,255,255,255,253,0,0,63,255,255,255,255,255,253,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,0,0,191,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,253,255,255,255,255,253,0,0,3,252,255,255,255,255,253,0,0,7,248,255,255,255,255,253,0,0,15,240,0,2,252,0,0,0,0,31,224,0,2,252,0,0,0,0,63,208,0,2,252,0,0,0,0,191,192,0,2,252,0,0,0,1,255,0,0,2,252,0,0,0,7,253,0,0,2,252,0,0,0,47,248,191,255,255,255,255,255,240,127,240,191,255,255,255,255,255,240,31,192,191,255,255,255,255,255,240,2,0,0,0,0,0,0,0,0, + // 0x5df2 已 + 242,93,33,33,41,38,3,253,21,85,85,85,85,85,85,0,0,127,255,255,255,255,255,255,64,0,127,255,255,255,255,255,255,64,0,127,255,255,255,255,255,255,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,5,80,0,0,0,0,127,64,0,11,240,0,0,0,0,127,64,0,11,240,0,0,0,0,127,64,0,11,240,0,0,0,0,127,64,0,11,240,0,0,0,0,127,64,0,11,240,0,0,0,0,127,64,0,11,245,85,85,85,85,191,64,0,11,255,255,255,255,255,255,64,0,11,255,255,255,255,255,255,64,0,11,255,255,255,255,255,255,64,0,11,240,0,0,0,0,127,64,0,11,240,0,0,0,0,127,64,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,20,0,11,240,0,0,0,0,0,47,128,11,240,0,0,0,0,0,47,192,11,240,0,0,0,0,0,63,192,11,240,0,0,0,0,0,63,192,11,240,0,0,0,0,0,127,128,7,248,0,0,0,0,0,255,64,3,255,165,85,85,85,107,255,0,3,255,255,255,255,255,255,253,0,0,255,255,255,255,255,255,244,0,0,27,255,255,255,255,255,128,0, + // 0x5e73 平 + 115,94,34,34,50,38,2,252,5,85,85,85,85,85,85,85,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,4,0,0,0,47,0,3,252,0,15,208,0,0,63,128,3,252,0,47,208,0,0,47,192,3,252,0,63,192,0,0,31,208,3,252,0,127,128,0,0,15,240,3,252,0,191,0,0,0,7,240,3,252,0,254,0,0,0,3,248,3,252,2,252,0,0,0,3,252,3,252,3,248,0,0,0,2,228,3,252,3,240,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,170,170,170,171,254,170,170,170,160,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,248,0,0,0,0, + // 0x5e76 并 + 118,94,34,37,77,38,2,251,0,0,160,0,0,0,228,0,0,0,11,244,0,0,1,255,0,0,0,3,252,0,0,2,254,0,0,0,1,254,0,0,3,252,0,0,0,0,255,0,0,15,244,0,0,0,0,127,128,0,31,224,0,0,0,0,63,192,0,63,192,0,0,0,0,30,0,0,11,0,0,0,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,5,85,191,85,85,95,229,85,64,0,0,127,0,0,15,208,0,0,0,0,127,0,0,15,208,0,0,0,0,127,0,0,15,208,0,0,0,0,127,0,0,15,208,0,0,0,0,127,0,0,15,208,0,0,0,0,127,0,0,15,208,0,0,0,0,127,0,0,15,208,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,255,85,85,111,229,85,80,0,0,254,0,0,15,208,0,0,0,0,254,0,0,15,208,0,0,0,2,253,0,0,15,208,0,0,0,3,252,0,0,15,208,0,0,0,11,248,0,0,15,208,0,0,0,15,240,0,0,15,208,0,0,0,63,224,0,0,15,208,0,0,0,255,192,0,0,15,208,0,0,3,255,64,0,0,15,208,0,0,31,253,0,0,0,15,208,0,0,191,244,0,0,0,15,208,0,0,63,208,0,0,0,15,208,0,0,14,0,0,0,0,15,208,0,0,0,0,0,0,0,0,0,0,0, + // 0x5e8a 床 + 138,94,36,36,68,38,1,252,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,1,255,255,255,255,255,255,255,252,1,255,255,255,255,255,255,255,252,1,255,255,255,255,255,255,255,252,1,253,85,85,85,85,85,85,84,1,252,0,0,0,84,0,0,0,1,252,0,0,1,252,0,0,0,1,252,0,0,1,252,0,0,0,1,252,0,0,1,252,0,0,0,1,252,0,0,1,252,0,0,0,1,252,0,0,1,252,0,0,0,1,252,63,255,255,255,255,255,252,1,252,63,255,255,255,255,255,252,1,252,63,255,255,255,255,255,252,1,252,21,85,95,255,149,85,84,2,252,0,0,47,255,192,0,0,2,252,0,0,127,255,240,0,0,2,252,0,0,255,255,244,0,0,3,248,0,2,255,255,253,0,0,3,248,0,7,249,252,255,0,0,3,248,0,15,241,252,127,192,0,3,244,0,63,209,252,47,240,0,7,240,0,255,129,252,11,253,0,11,240,3,255,1,252,3,255,64,15,240,31,252,1,252,0,255,224,15,224,191,240,1,252,0,63,253,31,210,255,192,1,252,0,15,253,63,192,254,0,1,252,0,2,244,63,128,56,0,1,252,0,0,96,191,0,0,0,1,252,0,0,0,47,0,0,0,1,252,0,0,0,5,0,0,0,1,252,0,0,0, + // 0x5e94 应 + 148,94,35,37,77,38,1,251,0,0,0,0,47,64,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,15,240,0,0,0,1,255,255,255,255,255,255,255,252,1,255,255,255,255,255,255,255,252,1,255,255,255,255,255,255,255,252,1,253,85,85,85,85,85,85,84,1,252,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,0,47,64,0,47,64,1,252,0,0,63,128,0,63,192,1,252,31,64,47,192,0,63,192,1,252,47,192,31,192,0,127,64,1,252,31,192,15,208,0,191,0,1,252,15,224,15,240,0,255,0,1,252,11,240,11,240,1,253,0,2,252,7,244,7,244,2,252,0,2,252,3,248,3,248,3,248,0,2,252,2,252,3,248,7,244,0,2,252,1,252,2,252,15,240,0,3,252,0,254,1,252,15,208,0,3,248,0,255,1,253,47,192,0,3,248,0,191,0,144,63,128,0,3,248,0,127,0,0,191,0,0,7,244,0,52,0,0,254,0,0,7,240,0,0,0,2,252,0,0,11,240,0,0,0,3,248,0,0,15,224,0,0,0,11,240,0,0,15,225,85,85,85,95,229,85,84,47,211,255,255,255,255,255,255,252,63,195,255,255,255,255,255,255,252,127,131,255,255,255,255,255,255,252,47,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5e9f 废 + 159,94,35,37,77,38,1,251,0,0,0,0,43,128,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,47,224,0,0,0,0,85,85,85,95,245,85,85,84,2,255,255,255,255,255,255,255,252,2,255,255,255,255,255,255,255,252,2,255,255,255,255,255,255,255,252,2,252,0,0,1,0,0,0,0,2,252,1,232,3,244,2,0,0,2,252,3,252,7,240,31,192,0,2,252,3,248,11,240,15,240,0,2,252,7,244,15,240,7,252,0,2,252,15,240,15,224,1,254,0,2,252,31,224,31,208,0,180,0,2,252,63,255,255,255,255,255,240,2,252,63,255,255,255,255,255,240,2,252,47,255,255,255,255,255,240,2,252,21,0,191,0,0,0,0,2,252,0,0,254,0,0,0,0,3,252,0,1,253,0,0,0,0,3,248,0,3,252,0,0,0,0,3,248,0,7,255,255,255,248,0,3,248,0,15,255,255,255,253,0,3,244,0,47,255,255,255,252,0,3,244,0,127,240,0,15,244,0,7,244,0,255,252,0,63,224,0,11,240,3,254,255,64,191,192,0,11,240,15,248,63,211,255,0,0,15,224,127,240,15,255,252,0,0,15,226,255,192,3,255,240,0,0,31,223,255,0,7,255,248,0,0,47,199,248,0,191,255,255,208,0,63,129,208,47,255,230,255,255,144,127,64,2,255,254,0,47,255,248,47,0,0,255,224,0,1,191,240,6,0,0,121,0,0,0,6,192,0,0,0,0,0,0,0,0,0, + // 0x5ea6 度 + 166,94,35,36,68,38,1,252,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,63,192,0,0,0,1,255,255,255,255,255,255,255,252,1,255,255,255,255,255,255,255,252,1,255,255,255,255,255,255,255,252,1,252,0,0,0,0,0,0,0,1,252,0,31,192,0,47,128,0,1,252,0,31,192,0,47,128,0,1,252,0,31,192,0,47,128,0,1,252,255,255,255,255,255,255,248,1,252,255,255,255,255,255,255,248,1,252,255,255,255,255,255,255,244,1,252,0,31,192,0,47,128,0,1,252,0,31,192,0,47,128,0,1,252,0,31,192,0,47,128,0,1,252,0,31,234,170,191,128,0,1,252,0,31,255,255,255,128,0,2,252,0,31,255,255,255,128,0,2,252,0,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,3,248,127,255,255,255,255,248,0,3,244,191,255,255,255,255,255,0,3,244,191,255,255,255,255,253,0,3,244,0,47,64,0,7,252,0,7,240,0,47,224,0,31,240,0,11,240,0,15,248,0,191,192,0,15,224,0,3,255,71,255,0,0,15,208,0,0,191,255,248,0,0,31,192,0,0,47,255,224,0,0,63,192,0,6,255,255,254,64,0,63,64,91,255,255,255,255,254,148,191,2,255,255,249,1,255,255,252,46,0,255,254,64,0,11,255,244,5,0,185,0,0,0,0,6,224, + // 0x5f00 开 + 0,95,34,35,59,38,2,251,5,85,85,85,85,85,85,85,64,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,0,0,63,64,0,15,240,0,0,0,0,63,64,0,15,240,0,0,0,0,63,64,0,15,240,0,0,0,0,63,64,0,15,240,0,0,0,0,63,64,0,15,240,0,0,0,0,63,64,0,15,240,0,0,0,0,63,64,0,15,240,0,0,0,0,63,64,0,15,240,0,0,0,0,63,64,0,15,240,0,0,0,0,63,64,0,15,240,0,0,85,85,127,149,85,95,245,85,80,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,191,0,0,15,240,0,0,0,0,191,0,0,15,240,0,0,0,0,255,0,0,15,240,0,0,0,0,254,0,0,15,240,0,0,0,2,253,0,0,15,240,0,0,0,3,252,0,0,15,240,0,0,0,7,252,0,0,15,240,0,0,0,15,244,0,0,15,240,0,0,0,47,240,0,0,15,240,0,0,0,127,208,0,0,15,240,0,0,1,255,128,0,0,15,240,0,0,7,255,0,0,0,15,240,0,0,47,252,0,0,0,15,240,0,0,191,240,0,0,0,15,240,0,0,47,192,0,0,0,15,240,0,0,10,0,0,0,0,15,240,0,0,0,0,0,0,0,0,0,0,0, + // 0x5f03 弃 + 3,95,35,37,77,38,1,251,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,63,255,255,255,255,255,255,255,248,63,255,255,255,255,255,255,255,248,63,255,255,255,255,255,255,255,248,0,0,0,255,0,0,0,0,0,0,0,2,253,0,1,224,0,0,0,0,3,252,0,11,253,0,0,0,0,11,240,0,2,255,128,0,0,0,31,208,0,0,127,240,0,5,85,127,234,171,255,255,253,0,15,255,255,255,255,255,255,255,64,11,255,255,255,255,255,255,255,224,11,255,250,170,149,84,0,31,244,0,0,0,0,0,1,80,7,208,0,0,31,192,0,3,244,1,0,0,0,31,192,0,3,244,0,0,0,0,31,192,0,3,244,0,0,0,0,31,192,0,3,244,0,0,0,0,31,192,0,3,244,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,127,128,0,7,244,0,0,0,0,127,64,0,3,244,0,0,0,0,255,0,0,3,244,0,0,0,2,254,0,0,3,244,0,0,0,7,252,0,0,3,244,0,0,0,31,248,0,0,3,244,0,0,0,255,224,0,0,3,244,0,0,27,255,128,0,0,3,244,0,0,127,253,0,0,0,3,244,0,0,31,224,0,0,0,3,244,0,0,10,0,0,0,0,3,244,0,0,0,0,0,0,0,0,0,0,0, + // 0x5f0f 式 + 15,95,35,36,68,38,2,252,0,0,0,0,2,168,1,0,0,0,0,0,0,3,252,15,128,0,0,0,0,0,3,252,47,240,0,0,0,0,0,3,252,11,253,0,0,0,0,0,3,252,1,255,0,0,0,0,0,3,252,0,126,0,0,0,0,0,3,252,0,24,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,85,85,86,254,85,85,80,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,31,255,255,255,240,255,0,0,0,31,255,255,255,240,255,0,0,0,31,255,255,255,240,191,0,0,0,5,85,254,85,80,191,0,0,0,0,0,253,0,0,127,64,0,0,0,0,253,0,0,63,128,0,0,0,0,253,0,0,63,192,0,0,0,0,253,0,0,63,192,0,0,0,0,253,0,0,47,192,0,0,0,0,253,0,0,31,208,1,0,0,0,253,0,0,15,240,2,208,0,0,253,0,4,15,240,2,248,0,0,253,22,252,7,248,2,248,0,0,255,255,252,3,252,3,244,1,111,255,255,252,2,254,3,244,127,255,255,254,80,0,255,71,240,127,255,254,64,0,0,191,255,240,63,250,64,0,0,0,63,255,208,41,0,0,0,0,0,11,255,192,0,0,0,0,0,0,1,254,0, + // 0x5f15 引 + 21,95,30,37,40,38,3,251,0,0,0,0,0,0,5,64,21,85,85,85,0,0,31,208,63,255,255,255,0,0,31,208,63,255,255,255,0,0,31,208,63,255,255,255,0,0,31,208,0,0,0,127,0,0,31,208,0,0,0,127,0,0,31,208,0,0,0,127,0,0,31,208,0,0,0,127,0,0,31,208,0,0,0,127,0,0,31,208,5,85,85,127,0,0,31,208,15,255,255,255,0,0,31,208,31,255,255,255,0,0,31,208,47,255,255,255,0,0,31,208,47,192,0,0,0,0,31,208,63,128,0,0,0,0,31,208,63,128,0,0,0,0,31,208,63,64,0,0,0,0,31,208,127,85,85,85,0,0,31,208,191,255,255,255,64,0,31,208,191,255,255,255,64,0,31,208,255,255,255,255,0,0,31,208,253,0,0,127,0,0,31,208,109,0,0,191,0,0,31,208,0,0,0,191,0,0,31,208,0,0,0,255,0,0,31,208,0,0,0,255,0,0,31,208,0,0,0,254,0,0,31,208,0,0,0,254,0,0,31,208,0,0,1,253,0,0,31,208,0,0,2,252,0,0,31,208,0,0,3,252,0,0,31,208,2,170,175,248,0,0,31,208,1,255,255,244,0,0,31,208,0,255,255,224,0,0,31,208,0,191,254,64,0,0,31,208,0,0,0,0,0,0,0,0, + // 0x5f39 弹 + 57,95,35,36,68,38,2,252,0,0,0,0,16,0,0,144,0,0,0,0,1,248,0,2,253,0,191,255,252,1,253,0,3,252,0,191,255,252,0,255,0,7,244,0,191,255,252,0,63,128,15,240,0,0,1,252,0,47,192,31,192,0,0,0,252,0,15,192,63,128,0,0,0,252,0,5,0,191,0,0,0,0,252,31,255,255,255,255,128,0,0,252,31,255,255,255,255,192,63,255,252,31,255,255,255,255,192,63,255,252,31,192,47,192,31,192,63,255,252,31,192,47,192,31,192,63,0,0,31,192,47,192,31,192,63,0,0,31,234,191,234,191,192,63,0,0,31,255,255,255,255,192,63,0,0,31,255,255,255,255,192,126,0,0,31,192,47,192,31,192,126,0,0,31,192,47,192,31,192,127,255,252,31,192,47,192,31,192,127,255,252,31,255,255,255,255,192,127,255,252,31,255,255,255,255,192,0,1,252,31,255,255,255,255,192,0,1,252,0,0,47,192,0,0,0,1,252,0,0,47,192,0,0,0,1,252,0,0,47,192,0,0,0,2,249,255,255,255,255,255,244,0,2,249,255,255,255,255,255,244,0,3,249,255,255,255,255,255,244,0,3,244,0,0,47,192,0,0,0,3,244,0,0,47,192,0,0,0,11,240,0,0,47,192,0,0,63,255,240,0,0,47,192,0,0,31,255,208,0,0,47,192,0,0,15,255,64,0,0,47,192,0,0,5,80,0,0,0,47,192,0,0, + // 0x5f52 归 + 82,95,32,37,40,38,3,251,0,0,168,0,0,0,0,0,0,0,252,0,0,0,0,0,0,0,252,0,0,0,0,0,0,0,252,5,85,85,85,85,0,0,252,15,255,255,255,254,190,0,252,15,255,255,255,254,190,0,252,15,255,255,255,254,190,0,252,0,0,0,0,254,190,0,252,0,0,0,0,254,190,0,252,0,0,0,0,254,190,0,252,0,0,0,0,254,190,0,252,0,0,0,0,254,190,0,252,0,0,0,0,254,190,0,252,0,0,0,0,254,190,0,252,0,0,0,0,254,190,1,252,0,0,0,0,254,190,1,252,3,255,255,255,254,190,1,252,3,255,255,255,254,190,1,252,3,255,255,255,254,190,1,252,1,85,85,85,254,190,1,252,0,0,0,0,254,190,2,252,0,0,0,0,254,190,3,252,0,0,0,0,254,190,3,248,0,0,0,0,254,0,3,248,0,0,0,0,254,0,7,244,0,0,0,0,254,0,15,240,0,0,0,0,254,0,15,224,0,0,0,0,254,0,47,208,0,0,0,0,254,0,127,192,63,255,255,255,254,0,255,64,63,255,255,255,254,3,255,0,63,255,255,255,254,15,252,0,21,85,85,85,254,47,244,0,0,0,0,0,254,11,224,0,0,0,0,0,254,2,64,0,0,0,0,0,84,0,0,0,0,0,0,0,0, + // 0x5f84 径 + 132,95,36,36,68,38,1,252,0,0,144,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,7,252,31,255,255,255,255,128,0,15,244,31,255,255,255,255,208,0,63,224,31,255,255,255,255,192,1,255,128,0,108,0,0,127,64,7,254,0,0,255,0,0,255,0,47,248,0,0,63,128,3,252,0,127,208,45,0,47,208,11,248,0,47,64,127,192,15,244,47,240,0,12,0,255,0,3,253,191,192,0,0,2,254,0,0,255,255,0,0,0,11,252,0,0,127,252,0,0,0,31,240,0,0,191,254,0,0,0,127,208,0,31,255,255,224,0,1,255,208,1,255,253,127,255,64,11,255,208,127,255,208,11,255,254,47,255,208,255,253,0,0,191,253,255,239,208,191,128,10,144,7,248,127,143,208,36,0,15,208,0,16,61,15,208,0,0,15,208,0,0,4,15,208,0,0,15,208,0,0,0,15,208,0,0,15,208,0,0,0,15,208,15,255,255,255,255,208,0,15,208,15,255,255,255,255,208,0,15,208,15,255,255,255,255,208,0,15,208,0,0,15,208,0,0,0,15,208,0,0,15,208,0,0,0,15,208,0,0,15,208,0,0,0,15,208,0,0,15,208,0,0,0,15,208,0,0,15,208,0,0,0,15,208,0,0,15,224,0,0,0,15,209,255,255,255,255,255,253,0,15,209,255,255,255,255,255,253,0,15,209,255,255,255,255,255,253,0,15,208,0,0,0,0,0,0, + // 0x5f85 待 + 133,95,36,36,68,38,1,252,0,0,144,0,0,10,128,0,0,0,1,253,0,0,31,192,0,0,0,3,252,0,0,31,192,0,0,0,15,244,0,0,31,192,0,0,0,63,224,0,0,31,192,0,0,0,255,128,31,255,255,255,255,224,7,255,0,31,255,255,255,255,224,47,252,0,31,255,255,255,255,224,63,224,0,0,0,31,208,0,0,31,128,56,0,0,31,192,0,0,13,0,255,0,0,31,192,0,0,0,1,253,0,0,31,192,0,0,0,3,252,0,0,31,208,0,0,0,15,241,255,255,255,255,255,253,0,47,225,255,255,255,255,255,253,0,191,209,255,255,255,255,255,253,2,255,192,0,0,0,3,244,0,11,255,192,0,0,0,3,244,0,63,255,192,0,0,0,3,244,0,191,239,192,0,0,0,7,248,0,63,79,192,255,255,255,255,255,252,45,15,192,255,255,255,255,255,252,4,15,192,255,255,255,255,255,252,0,15,192,0,0,0,3,244,0,0,15,192,1,240,0,3,244,0,0,15,192,7,248,0,3,244,0,0,15,192,2,253,0,3,244,0,0,15,192,0,255,0,3,244,0,0,15,192,0,127,192,3,244,0,0,15,192,0,47,208,3,244,0,0,15,192,0,15,208,3,244,0,0,15,192,0,10,0,3,244,0,0,15,192,0,0,5,87,244,0,0,15,192,0,0,15,255,244,0,0,15,192,0,0,15,255,240,0,0,15,192,0,0,11,254,64,0, + // 0x5faa 循 + 170,95,36,36,68,38,1,252,0,1,144,0,0,0,0,0,0,0,3,252,0,0,0,1,191,0,0,11,244,0,0,90,255,255,192,0,47,224,62,191,255,255,254,64,0,191,128,63,255,255,254,64,0,2,255,0,63,254,148,253,0,0,11,252,0,63,0,0,253,0,0,63,240,0,63,0,0,253,0,0,127,192,96,63,0,0,253,0,0,46,0,254,63,255,255,255,255,253,4,2,252,63,255,255,255,255,253,0,7,248,63,255,255,255,255,253,0,15,240,63,0,0,252,0,0,0,47,208,63,0,0,252,0,0,0,191,192,63,0,0,252,0,0,1,255,192,63,0,1,252,0,0,7,255,192,63,15,255,255,255,240,31,255,192,63,15,255,255,255,240,191,255,192,63,15,255,255,255,240,191,159,192,63,15,192,0,11,240,62,31,192,127,15,192,0,11,240,24,31,192,127,15,229,85,91,240,0,31,192,127,15,255,255,255,240,0,31,192,190,15,255,255,255,240,0,31,192,190,15,192,0,11,240,0,31,192,254,15,192,0,11,240,0,31,192,253,15,229,85,91,240,0,31,192,252,15,255,255,255,240,0,31,193,252,15,255,255,255,240,0,31,194,248,15,192,0,11,240,0,31,195,244,15,192,0,11,240,0,31,199,240,15,192,0,11,240,0,31,207,240,15,255,255,255,240,0,31,207,208,15,255,255,255,240,0,31,194,192,15,229,85,95,240,0,31,192,64,15,192,0,6,160, + // 0x5fae 微 + 174,95,36,36,68,38,1,252,0,9,0,3,208,0,26,64,0,0,31,208,3,208,0,31,192,0,0,63,192,3,208,0,47,128,0,0,255,69,67,208,80,63,64,0,2,254,15,131,208,244,63,64,0,7,252,15,131,208,244,63,0,0,31,240,15,131,208,244,127,0,0,127,192,15,131,208,244,190,0,0,127,66,15,131,208,244,255,255,253,61,7,255,131,208,244,255,255,253,4,15,239,131,208,245,255,255,253,0,47,207,255,255,247,248,7,240,0,63,143,255,255,251,252,7,224,0,255,11,255,255,255,252,11,224,2,254,0,0,0,15,252,11,208,7,254,0,0,0,63,253,15,192,15,254,0,0,0,47,126,15,192,63,254,31,255,255,254,63,15,192,255,254,31,255,255,248,47,31,128,190,190,31,255,255,248,31,111,64,60,126,0,252,31,128,31,191,0,16,126,0,252,31,128,15,255,0,0,126,0,252,31,128,15,254,0,0,126,0,252,31,128,7,253,0,0,126,0,248,31,128,3,252,0,0,126,1,248,31,128,3,248,0,0,126,2,244,31,138,7,248,0,0,126,3,244,31,255,15,252,0,0,126,3,240,127,255,47,255,0,0,126,11,224,191,244,127,191,64,0,126,15,208,126,0,255,47,208,0,126,47,192,16,3,252,15,244,0,126,63,64,0,31,244,7,253,0,126,30,0,0,63,208,2,254,0,126,8,0,0,31,0,0,184,0,126,0,0,0,4,0,0,16, + // 0x5fc3 心 + 195,95,36,36,68,38,1,252,0,0,0,32,0,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,1,255,255,64,0,0,0,0,0,0,11,255,244,0,0,0,0,0,0,0,191,254,0,0,0,0,0,0,0,11,255,208,0,0,0,0,0,0,1,255,208,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,2,224,0,0,248,7,240,0,0,15,244,0,0,253,7,240,0,0,7,252,0,1,252,7,240,0,0,2,254,0,1,252,7,240,0,0,0,255,0,2,252,7,240,0,0,0,127,192,3,252,7,240,0,0,0,63,208,3,248,7,240,0,0,0,31,240,7,244,7,240,0,0,0,15,240,11,240,7,240,0,0,0,11,248,15,240,7,240,0,0,0,3,252,31,224,7,240,0,0,16,2,253,63,192,7,240,0,0,46,1,254,127,192,7,240,0,0,47,128,255,255,64,7,240,0,0,63,128,244,47,0,7,240,0,0,63,64,0,0,0,7,240,0,0,63,64,0,0,0,7,240,0,0,127,0,0,0,0,7,248,0,0,255,0,0,0,0,3,255,255,255,254,0,0,0,0,2,255,255,255,252,0,0,0,0,0,191,255,255,240,0,0,0,0,0,0,0,0,0,0,0, + // 0x5ffd 忽 + 253,95,35,36,68,38,2,252,0,0,57,0,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,7,255,255,255,255,255,253,0,0,15,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,255,128,191,64,191,2,252,0,3,254,0,255,0,254,1,252,0,15,252,3,252,2,252,2,252,0,127,240,7,248,3,248,2,252,0,191,192,31,240,11,240,2,252,0,47,0,127,192,31,224,3,252,0,4,1,255,64,63,192,3,248,0,0,7,253,0,191,64,3,248,0,0,47,244,1,254,0,3,244,0,0,255,208,7,252,0,7,244,0,11,255,64,31,240,0,11,240,0,11,252,0,127,208,0,31,240,0,2,224,3,255,64,63,255,224,0,0,64,31,253,0,47,255,192,0,0,0,15,240,0,47,254,0,0,0,0,3,199,208,0,0,0,0,0,0,0,31,252,0,0,0,0,0,16,5,71,255,64,7,0,0,0,189,31,192,191,224,63,192,0,0,253,31,192,31,208,31,240,0,2,252,31,192,3,64,7,252,0,3,248,31,192,0,2,66,255,0,11,244,31,192,0,2,244,191,128,31,240,31,192,0,3,244,63,208,127,192,31,208,0,7,244,31,240,255,64,31,255,255,255,240,11,244,61,0,15,255,255,255,224,3,128,4,0,2,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0, + // 0x6027 性 + 39,96,35,36,68,38,1,252,0,47,192,0,0,7,224,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,253,11,240,0,0,0,47,192,1,253,11,240,0,0,0,47,192,1,252,11,240,0,0,0,47,192,2,252,11,240,0,0,0,47,196,3,248,11,240,0,0,9,47,254,3,244,11,240,0,0,15,111,255,7,255,255,255,255,240,31,111,223,139,255,255,255,255,240,31,111,207,207,255,255,255,255,240,47,47,203,239,229,95,245,85,80,47,47,199,255,192,11,240,0,0,63,47,194,127,128,11,240,0,0,62,47,192,191,64,11,240,0,0,125,47,192,255,0,11,240,0,0,189,47,192,29,0,11,240,0,0,188,47,192,0,0,11,240,0,0,4,47,192,0,0,11,240,0,0,0,47,192,7,255,255,255,255,208,0,47,192,7,255,255,255,255,208,0,47,192,7,255,255,255,255,208,0,47,192,1,85,95,245,85,64,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,255,255,255,255,255,252,0,47,192,255,255,255,255,255,252,0,47,192,255,255,255,255,255,252,0,47,192,85,85,85,85,85,84,0,42,128,0,0,0,0,0,0, + // 0x603b 总 + 59,96,34,36,68,38,2,252,0,0,24,0,0,2,64,0,0,0,0,253,0,0,3,248,0,0,0,0,255,0,0,11,248,0,0,0,0,63,192,0,15,240,0,0,0,0,47,208,0,47,208,0,0,0,0,15,240,0,63,192,0,0,0,0,11,244,0,191,64,0,0,0,21,87,213,85,255,85,64,0,0,63,255,255,255,255,255,208,0,0,63,255,255,255,255,255,208,0,0,63,255,255,255,255,255,208,0,0,63,128,0,0,0,47,208,0,0,63,128,0,0,0,47,208,0,0,63,128,0,0,0,47,208,0,0,63,128,0,0,0,47,208,0,0,63,128,0,0,0,47,208,0,0,63,128,0,0,0,47,208,0,0,63,255,255,255,255,255,208,0,0,63,255,255,255,255,255,208,0,0,63,255,255,255,255,255,208,0,0,21,85,85,213,85,85,64,0,0,0,0,7,224,0,0,0,0,0,0,0,15,252,0,0,0,0,1,0,127,66,255,64,1,240,0,7,240,127,64,191,208,7,248,0,11,240,127,64,47,244,2,253,0,15,224,127,64,11,248,0,255,0,15,208,127,64,2,208,0,127,128,47,192,127,64,0,64,16,47,208,63,192,127,64,0,0,126,15,240,127,64,127,64,0,0,191,7,240,255,0,127,128,0,0,255,3,224,125,0,63,255,255,255,253,1,64,4,0,47,255,255,255,252,0,0,0,0,11,255,255,255,224,0,0,0,0,0,0,0,0,0,0,0, + // 0x6062 恢 + 98,96,36,36,68,38,1,252,0,47,128,11,208,0,0,0,0,0,47,128,11,208,0,0,0,0,0,47,128,11,208,0,0,0,0,0,47,128,11,208,0,0,0,0,0,47,130,255,255,255,255,255,253,0,47,130,255,255,255,255,255,253,0,47,150,255,255,255,255,255,253,5,47,253,95,229,85,85,85,84,15,47,189,11,208,0,105,0,0,15,47,175,11,208,0,190,0,0,31,47,159,11,208,0,190,0,0,31,47,143,139,208,0,190,0,0,31,47,139,203,208,0,190,0,80,47,47,135,203,211,208,190,0,252,62,47,129,15,211,224,190,1,248,61,47,128,15,211,224,190,2,244,188,47,128,15,211,208,190,3,240,184,47,128,15,199,208,190,7,224,0,47,128,15,203,192,190,11,192,0,47,128,15,207,192,190,15,192,0,47,128,15,207,128,255,31,64,0,47,128,31,223,0,255,27,0,0,47,128,31,129,0,255,0,0,0,47,128,47,128,2,255,128,0,0,47,128,63,64,3,255,192,0,0,47,128,63,64,7,235,208,0,0,47,128,63,0,15,215,240,0,0,47,128,191,0,47,195,244,0,0,47,128,254,0,127,65,252,0,0,47,129,252,0,255,0,255,0,0,47,130,252,3,252,0,127,192,0,47,131,244,31,248,0,47,240,0,47,139,240,191,224,0,15,253,0,47,143,225,255,128,0,3,254,0,47,135,192,190,0,0,0,252,0,47,128,64,32,0,0,0,32, + // 0x606f 息 + 111,96,36,36,68,38,1,252,0,0,0,0,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,2,253,0,0,0,0,0,7,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,240,0,0,0,11,240,0,0,11,240,0,0,0,11,240,0,0,11,250,170,170,170,175,240,0,0,11,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,240,0,0,0,11,240,0,0,11,240,0,0,0,11,240,0,0,11,240,0,0,0,11,240,0,0,11,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,250,170,170,170,175,240,0,0,11,240,0,0,0,11,240,0,0,11,240,0,0,0,11,240,0,0,11,250,170,170,170,175,240,0,0,11,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,0,0,0,144,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,7,254,0,0,0,0,0,120,5,81,255,128,1,240,0,0,191,15,224,63,208,7,252,0,0,254,15,224,15,240,3,255,0,2,252,15,224,7,224,0,255,128,3,252,15,224,2,64,64,63,224,11,244,15,224,0,0,248,15,244,31,240,15,224,0,0,252,7,252,127,208,11,244,0,2,252,2,253,47,128,11,255,255,255,248,0,252,6,0,3,255,255,255,240,0,144,0,0,0,191,255,255,128,0,0, + // 0x611f 感 + 31,97,36,36,68,38,1,252,0,0,0,0,1,248,14,64,0,0,0,0,0,1,252,63,244,0,0,0,0,0,1,252,27,254,0,0,0,0,0,1,252,1,252,0,0,255,255,255,255,255,255,255,248,0,255,255,255,255,255,255,255,248,0,255,255,255,255,255,255,255,244,0,252,0,0,0,190,0,0,0,0,252,0,0,0,127,0,80,0,0,252,255,255,254,63,0,253,0,0,252,255,255,254,63,66,252,0,1,252,85,85,84,47,131,248,0,1,252,0,0,0,31,199,240,0,1,252,0,0,0,15,223,240,0,2,248,127,255,252,11,255,192,0,2,248,127,255,252,7,255,128,0,3,244,126,85,252,3,255,0,16,3,240,125,0,252,3,253,0,120,7,240,125,0,252,15,255,0,125,15,224,126,85,252,63,255,128,189,31,208,127,255,253,255,239,240,252,63,192,127,255,255,255,15,255,252,127,64,0,2,65,248,3,255,244,63,0,0,11,224,96,0,127,208,12,0,0,15,253,0,0,0,0,0,16,6,162,255,128,0,160,0,0,62,11,240,127,224,7,248,0,0,127,11,240,15,192,3,254,0,0,255,11,240,3,0,128,255,128,1,253,11,240,0,0,248,63,208,3,252,11,240,0,0,252,15,240,15,244,11,240,0,2,252,7,248,63,224,11,255,255,255,248,3,253,47,192,3,255,255,255,240,0,244,6,0,1,255,255,255,208,0,64,0,0,0,0,0,0,0,0,0, + // 0x620f 戏 + 15,98,36,37,77,38,1,251,0,0,0,0,1,168,0,0,0,0,0,0,0,1,252,3,192,0,0,0,0,0,1,252,15,240,0,0,0,0,0,1,253,7,252,0,0,0,0,0,1,253,1,255,0,63,255,255,252,1,253,0,191,192,63,255,255,252,1,253,0,47,128,63,255,255,252,0,253,0,13,0,0,0,2,252,0,253,0,0,0,0,0,2,252,0,254,0,22,180,2,0,3,248,0,255,191,255,248,15,128,3,245,255,255,255,255,252,47,208,7,242,255,255,255,255,164,15,244,11,241,255,255,165,0,0,3,252,15,224,148,191,0,4,0,1,254,31,208,0,191,0,15,128,0,191,111,192,0,127,64,31,192,0,63,255,128,0,127,64,63,192,0,31,255,64,0,63,128,127,64,0,11,255,0,0,63,128,255,0,0,3,254,0,0,63,194,253,0,0,3,255,0,0,47,199,252,0,0,7,255,128,0,31,223,240,0,0,15,255,208,0,31,255,208,0,0,47,255,240,0,15,255,128,0,0,127,203,248,0,15,255,0,0,0,255,131,252,0,11,253,0,160,3,255,1,255,0,31,252,0,252,15,252,0,253,0,191,253,0,253,63,244,0,112,2,255,255,0,252,191,208,0,0,31,254,255,129,252,47,128,0,0,191,248,127,247,248,13,0,0,2,255,208,63,255,244,0,0,0,0,191,0,15,255,240,0,0,0,0,36,0,2,255,208,0,0,0,0,0,0,0,111,64,0,0,0,0,0,0,0,0,0, + // 0x6210 成 + 16,98,36,37,77,38,1,251,0,0,0,0,2,248,9,0,0,0,0,0,0,3,252,63,128,0,0,0,0,0,3,252,127,244,0,0,0,0,0,3,252,11,254,0,0,0,0,0,2,252,1,255,192,0,0,0,0,2,252,0,63,0,0,85,85,85,87,253,85,110,84,1,255,255,255,255,255,255,255,252,1,255,255,255,255,255,255,255,252,1,255,255,255,255,255,255,255,252,1,253,0,0,1,252,0,0,0,1,253,0,0,1,253,0,0,0,1,253,0,0,0,253,0,0,0,1,253,0,0,0,254,0,63,64,1,254,0,0,0,254,0,127,128,1,255,255,255,192,255,0,191,0,1,255,255,255,192,191,0,254,0,1,255,255,255,192,191,1,253,0,1,253,0,47,192,127,3,252,0,1,253,0,47,192,127,75,244,0,1,253,0,47,192,63,143,240,0,1,252,0,47,192,63,239,208,0,1,252,0,47,128,47,255,192,0,2,252,0,47,128,31,255,0,0,2,252,0,63,128,15,254,0,0,3,252,0,63,128,15,252,0,128,3,248,0,127,64,31,244,0,248,3,248,255,255,0,127,248,0,253,7,244,127,255,1,255,252,0,252,11,240,127,248,7,255,255,0,252,15,240,0,0,47,252,255,65,252,47,224,0,1,255,240,127,210,248,63,192,0,11,255,192,47,255,244,127,128,0,7,254,0,15,255,240,47,0,0,1,244,0,2,255,208,6,0,0,0,64,0,0,25,0,0,0,0,0,0,0,0,0,0, + // 0x6237 户 + 55,98,32,37,40,38,1,251,0,0,0,0,108,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,128,0,0,0,63,255,255,255,255,255,253,0,63,255,255,255,255,255,253,0,63,255,255,255,255,255,253,0,63,213,85,85,85,86,253,0,63,192,0,0,0,1,253,0,63,192,0,0,0,1,253,0,63,192,0,0,0,1,253,0,63,192,0,0,0,1,253,0,63,192,0,0,0,1,253,0,63,192,0,0,0,1,253,0,63,213,85,85,85,85,253,0,63,255,255,255,255,255,253,0,63,255,255,255,255,255,253,0,63,255,255,255,255,255,253,0,63,128,0,0,0,1,253,0,63,64,0,0,0,1,253,0,127,64,0,0,0,0,84,0,127,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,254,0,0,0,0,0,0,1,253,0,0,0,0,0,0,2,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,11,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,47,224,0,0,0,0,0,0,127,192,0,0,0,0,0,0,47,64,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6240 所 + 64,98,36,36,68,38,1,252,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,31,192,47,255,255,255,240,0,2,255,244,47,255,255,255,241,1,191,255,244,47,255,255,255,242,255,255,254,0,0,0,0,0,2,255,255,144,0,0,0,0,0,2,255,208,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,248,0,0,0,7,255,255,255,194,248,0,0,0,7,255,255,255,194,248,0,0,0,7,255,255,255,194,248,0,0,0,7,240,0,47,194,248,0,0,0,7,240,0,47,194,255,255,255,254,7,240,0,47,195,255,255,255,254,7,240,0,47,195,255,255,255,254,7,240,0,47,195,253,85,255,84,7,240,0,47,195,248,0,191,0,7,255,255,255,195,244,0,191,0,7,255,255,255,195,244,0,191,0,7,255,255,255,195,244,0,191,0,7,240,0,0,7,240,0,191,0,7,240,0,0,7,240,0,191,0,7,240,0,0,11,240,0,191,0,11,240,0,0,15,224,0,191,0,11,224,0,0,15,208,0,191,0,15,224,0,0,47,192,0,191,0,15,208,0,0,63,192,0,191,0,15,192,0,0,127,64,0,191,0,31,192,0,0,255,0,0,191,0,47,192,0,1,254,0,0,191,0,63,64,0,3,252,0,0,191,0,191,0,0,15,244,0,0,191,0,255,0,0,15,240,0,0,191,0,61,0,0,3,192,0,0,191,0,8,0,0,0,64,0,0,190,0, + // 0x6247 扇 + 71,98,34,34,50,38,1,252,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,170,170,170,170,170,170,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,0,0,0,0,127,0,0,191,0,0,0,0,0,127,0,0,191,0,0,0,0,0,127,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,170,170,170,170,170,170,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,191,255,252,127,255,255,128,0,190,191,255,252,127,255,255,128,0,254,106,171,252,42,170,191,128,0,254,5,0,252,2,0,47,128,0,253,63,64,252,31,192,47,128,0,252,31,208,252,11,240,47,128,1,252,11,240,252,3,248,47,128,2,252,3,240,252,0,244,47,128,3,248,0,64,252,0,64,47,128,3,244,0,44,252,0,27,111,128,11,240,6,253,252,2,255,175,128,15,241,191,253,252,127,254,47,128,31,211,255,208,252,255,224,47,128,63,194,249,0,252,126,0,47,128,127,128,128,0,252,16,0,63,128,191,0,0,255,252,0,31,255,128,29,0,0,127,248,0,15,255,0,0,0,0,62,144,0,11,232,0, + // 0x624b 手 + 75,98,34,37,77,38,2,251,0,0,0,0,0,0,27,64,0,0,0,0,0,5,175,255,208,0,0,5,106,191,255,255,255,240,0,7,255,255,255,255,255,249,64,0,3,255,255,255,255,164,0,0,0,3,255,250,151,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,7,255,255,255,255,255,255,255,0,7,255,255,255,255,255,255,255,0,7,255,255,255,255,255,255,255,0,1,85,85,87,253,85,85,85,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,85,87,253,85,85,85,80,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,1,85,91,252,0,0,0,0,0,1,255,255,248,0,0,0,0,0,0,255,255,240,0,0,0,0,0,0,191,254,64,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6253 打 + 83,98,36,36,68,38,1,252,0,11,224,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,2,170,170,170,170,168,0,11,240,3,255,255,255,255,253,0,11,240,3,255,255,255,255,253,0,11,240,3,255,255,255,255,253,21,95,245,80,0,0,63,192,0,63,255,255,248,0,0,63,192,0,63,255,255,248,0,0,63,192,0,63,255,255,248,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,4,0,0,63,192,0,0,11,246,252,0,0,63,192,0,0,15,255,252,0,0,63,192,0,6,255,255,252,0,0,63,192,0,127,255,255,64,0,0,63,192,0,63,255,240,0,0,0,63,192,0,47,239,240,0,0,0,63,192,0,20,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,15,240,0,0,0,63,192,0,15,255,224,0,11,255,255,192,0,11,255,208,0,3,255,255,128,0,7,255,64,0,3,255,254,0,0,1,64,0,0,1,234,144,0,0, + // 0x6267 执 + 103,98,36,37,77,38,1,251,0,47,128,0,7,240,0,0,0,0,47,128,0,7,240,0,0,0,0,47,128,0,7,240,0,0,0,0,47,128,0,7,240,0,0,0,0,47,128,0,7,240,0,0,0,0,47,128,0,7,240,0,0,0,0,47,128,0,7,240,0,0,0,0,47,128,0,7,240,0,0,0,63,255,255,127,255,255,255,244,0,63,255,255,127,255,255,255,244,0,63,255,255,127,255,255,255,244,0,0,47,192,0,11,240,7,244,0,0,47,128,0,11,240,3,244,0,0,47,128,0,11,240,3,244,0,0,47,128,0,11,224,3,244,0,0,47,128,0,15,224,3,240,0,0,47,128,11,15,224,3,240,0,0,47,223,159,239,208,3,240,0,0,47,255,191,255,208,3,240,0,2,255,255,199,255,208,3,240,0,127,255,253,0,191,248,3,240,0,127,255,192,0,47,255,3,240,0,63,255,128,0,63,255,211,240,0,40,47,128,0,127,191,255,240,0,0,47,128,0,191,11,247,240,0,0,47,128,0,254,1,211,240,0,0,47,128,1,253,0,3,240,0,0,47,128,3,252,0,3,244,0,0,47,128,11,244,0,3,244,116,0,47,128,31,240,0,3,244,126,0,47,128,63,208,0,2,248,125,0,47,128,255,128,0,1,252,189,5,127,135,255,0,0,0,254,252,31,255,143,252,0,0,0,255,252,15,255,7,240,0,0,0,127,244,11,248,1,192,0,0,0,31,208,0,0,0,0,0,0,0,0,0, + // 0x6279 批 + 121,98,36,36,68,38,1,252,0,63,64,5,64,0,168,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,21,127,149,15,208,0,253,0,0,127,255,255,15,208,0,253,0,0,127,255,255,15,208,0,253,0,128,127,255,255,15,208,0,253,2,240,0,63,64,15,208,0,253,11,248,0,63,64,15,229,80,253,63,244,0,63,64,15,255,248,254,255,208,0,63,64,15,255,248,255,255,0,0,63,64,15,255,248,255,244,0,0,63,64,15,208,0,255,192,0,0,63,175,15,208,0,254,0,0,0,63,255,15,208,0,253,0,0,27,255,255,15,208,0,253,0,0,191,255,248,15,208,0,253,0,0,127,255,64,15,208,0,253,0,0,62,127,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,64,0,63,64,15,208,0,253,0,184,0,63,64,15,208,0,253,0,190,0,63,64,15,208,20,253,0,189,0,63,64,15,235,252,253,0,253,0,63,70,255,255,252,254,0,252,0,127,75,255,255,228,255,255,252,47,255,3,255,228,0,127,255,248,31,254,3,148,0,0,47,255,224,15,244,0,0,0,0,0,0,0, + // 0x6296 抖 + 150,98,36,36,68,38,1,252,0,15,192,0,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,15,0,3,244,0,0,15,192,0,63,224,3,244,0,0,15,192,0,47,252,3,244,0,0,15,192,0,7,255,67,244,0,21,95,213,64,0,191,195,244,0,63,255,255,240,0,31,67,244,0,63,255,255,240,0,6,3,244,0,63,255,255,240,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,144,0,3,244,0,0,15,192,1,253,0,3,244,0,0,15,192,3,255,192,3,244,0,0,15,192,0,191,248,3,244,0,0,15,192,16,15,254,3,244,0,0,15,235,240,1,252,3,244,0,0,31,255,240,0,52,3,244,0,27,255,255,240,0,0,3,244,0,127,255,254,64,0,0,3,244,0,63,255,208,0,0,0,3,250,252,63,159,192,0,0,1,175,255,253,16,15,192,0,26,255,255,255,254,0,15,192,15,255,255,255,254,144,0,15,192,15,255,255,235,244,0,0,15,192,15,254,144,3,244,0,0,15,192,5,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,31,192,0,0,0,3,244,0,31,255,192,0,0,0,3,244,0,15,255,192,0,0,0,3,244,0,15,254,0,0,0,0,3,244,0,0,0,0,0,0,0,1,80,0, + // 0x62a5 报 + 165,98,36,36,68,38,1,252,0,10,144,0,0,0,0,0,0,0,15,224,1,85,85,85,85,64,0,15,224,3,255,255,255,255,192,0,15,224,3,255,255,255,255,192,0,15,224,3,255,255,255,255,192,0,15,224,3,244,0,0,31,192,0,15,224,3,244,0,0,47,192,21,95,229,67,244,0,0,47,192,63,255,255,211,244,0,0,63,192,63,255,255,211,244,0,0,127,128,63,255,255,211,244,15,255,255,64,0,15,224,3,244,11,255,255,0,0,15,224,3,244,2,255,228,0,0,15,224,3,244,0,0,0,0,0,15,224,3,248,0,0,0,0,0,15,224,3,255,255,255,255,240,0,15,224,3,255,255,255,255,240,0,15,235,211,255,255,255,255,240,0,15,255,227,246,252,0,15,224,6,255,255,227,244,252,0,31,208,191,255,255,147,244,254,0,47,192,127,255,224,3,244,127,0,63,128,63,255,224,3,244,63,128,191,0,57,15,224,3,244,47,208,255,0,0,15,224,3,244,15,242,253,0,0,15,224,3,244,7,255,252,0,0,15,224,3,244,3,255,240,0,0,15,224,3,244,0,255,224,0,0,15,224,3,244,0,191,208,0,0,15,224,3,244,1,255,248,0,0,15,224,3,244,11,255,255,0,0,15,224,3,244,127,246,255,224,21,111,208,3,250,255,208,127,253,63,255,208,3,255,255,0,31,248,47,255,192,3,245,248,0,2,240,31,249,0,2,160,128,0,0,0, + // 0x62ac 抬 + 172,98,36,37,77,38,1,251,0,15,208,0,0,164,0,0,0,0,15,208,0,0,255,64,0,0,0,15,208,0,0,255,0,0,0,0,15,208,0,2,253,0,0,0,0,15,208,0,3,252,0,0,0,0,15,208,0,3,248,0,0,0,0,15,208,0,11,244,0,144,0,21,95,229,64,15,240,7,240,0,127,255,255,208,31,208,3,252,0,127,255,255,208,47,192,1,254,0,127,255,255,208,63,128,0,191,64,0,15,208,0,127,0,0,63,192,0,15,208,0,255,106,175,255,224,0,15,208,63,255,255,255,255,244,0,15,208,63,255,255,255,255,252,0,15,208,63,255,255,169,86,253,0,15,208,101,80,0,0,0,254,0,15,239,224,0,0,0,0,180,0,31,255,224,0,0,0,0,0,7,255,255,240,0,0,0,0,0,191,255,254,67,255,255,255,255,192,127,255,208,3,255,255,255,255,192,63,159,208,3,255,255,255,255,192,16,15,208,3,253,85,85,127,192,0,15,208,3,248,0,0,47,192,0,15,208,3,248,0,0,47,192,0,15,208,3,248,0,0,47,192,0,15,208,3,248,0,0,47,192,0,15,208,3,248,0,0,47,192,0,15,208,3,248,0,0,47,192,0,15,208,3,248,0,0,47,192,0,15,208,3,255,255,255,255,192,0,31,208,3,255,255,255,255,192,15,255,192,3,255,255,255,255,192,15,255,192,3,248,0,0,63,192,11,254,0,2,248,0,0,42,128,0,0,0,0,0,0,0,0,0, + // 0x62bd 抽 + 189,98,35,37,77,38,1,251,0,31,192,0,0,7,224,0,0,0,31,192,0,0,7,240,0,0,0,31,192,0,0,7,240,0,0,0,31,192,0,0,7,240,0,0,0,31,192,0,0,7,240,0,0,0,31,192,0,0,7,240,0,0,0,31,192,0,0,7,240,0,0,21,111,213,64,0,7,240,0,0,127,255,255,192,0,7,240,0,0,127,255,255,207,255,255,255,255,248,127,255,255,207,255,255,255,255,248,0,31,192,15,255,255,255,255,248,0,31,192,15,229,91,245,87,248,0,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,219,207,208,7,240,3,248,0,31,255,207,208,7,240,3,248,2,255,255,223,255,255,255,255,248,191,255,254,79,255,255,255,255,248,191,255,208,15,255,255,255,255,248,127,255,192,15,229,91,245,87,248,52,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,192,15,229,91,245,87,248,0,31,192,15,255,255,255,255,248,0,31,192,15,255,255,255,255,248,0,47,192,15,255,255,255,255,248,31,255,192,15,208,0,0,3,248,15,255,64,15,208,0,0,3,248,15,249,0,11,208,0,0,1,164,0,0,0,0,0,0,0,0,0, + // 0x62d4 拔 + 212,98,36,37,77,38,1,251,0,31,192,0,7,240,1,0,0,0,31,192,0,7,240,15,128,0,0,31,192,0,7,240,47,244,0,0,31,192,0,7,240,11,255,0,0,31,192,0,7,240,0,255,208,0,31,192,0,7,240,0,47,224,0,31,192,0,7,240,0,7,192,21,111,213,64,7,240,0,1,0,127,255,255,218,175,250,170,170,168,127,255,255,223,255,255,255,255,252,127,255,255,223,255,255,255,255,252,0,31,192,0,11,240,0,0,0,0,31,192,0,11,240,0,0,0,0,31,192,0,15,240,0,0,0,0,31,192,0,15,244,0,42,0,0,31,192,0,15,248,0,63,0,0,31,192,0,15,252,0,127,0,0,31,199,192,15,252,0,191,0,0,31,255,192,31,253,0,254,0,2,255,255,208,47,255,0,253,0,191,255,254,64,63,191,65,252,0,191,255,208,0,63,111,194,252,0,127,255,192,0,127,15,195,244,0,56,31,192,0,191,11,231,240,0,0,31,192,0,254,7,255,240,0,0,31,192,1,252,2,255,208,0,0,31,192,3,252,0,255,192,0,0,31,192,3,244,0,255,128,0,0,31,192,15,240,1,255,208,0,0,31,192,31,224,7,255,244,0,0,31,192,63,192,15,255,253,0,0,31,192,191,64,127,226,255,128,0,47,194,255,2,255,128,191,244,31,255,203,252,15,254,0,31,254,15,255,67,240,7,248,0,3,252,15,249,0,208,1,208,0,0,112,0,0,0,0,0,0,0,0,0, + // 0x62e9 择 + 233,98,36,37,77,38,1,251,0,31,128,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,15,255,255,255,255,128,0,47,192,15,255,255,255,255,208,0,47,192,15,255,255,255,255,192,0,47,192,0,127,64,0,191,0,0,47,192,0,47,192,1,254,0,21,111,213,64,15,224,7,252,0,63,255,255,192,7,248,31,240,0,63,255,255,192,1,255,191,192,0,63,255,255,192,0,191,255,0,0,0,47,192,0,0,63,252,0,0,0,47,192,0,1,255,255,128,0,0,47,192,0,31,255,255,248,0,0,47,192,6,255,244,47,255,224,0,47,192,127,255,128,2,255,254,0,47,192,127,248,0,0,111,252,0,47,239,206,64,15,224,1,244,0,47,255,192,0,15,224,0,0,7,255,255,192,0,15,224,0,0,127,255,249,3,255,255,255,255,128,127,255,192,3,255,255,255,255,128,63,175,192,3,255,255,255,255,128,16,47,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,0,47,192,63,255,255,255,255,252,0,47,192,63,255,255,255,255,252,0,47,192,63,255,255,255,255,252,0,47,192,0,0,15,224,0,0,0,47,192,0,0,15,224,0,0,5,127,192,0,0,15,224,0,0,15,255,192,0,0,15,224,0,0,15,255,64,0,0,15,224,0,0,11,249,0,0,0,15,224,0,0,0,0,0,0,0,0,0,0,0, + // 0x6309 按 + 9,99,36,37,77,38,1,251,0,31,192,0,0,15,224,0,0,0,31,192,0,0,15,224,0,0,0,31,192,0,0,15,224,0,0,0,31,192,0,0,15,224,0,0,0,31,192,0,0,15,224,0,0,0,31,192,31,255,255,255,255,252,0,31,192,31,255,255,255,255,252,21,111,213,95,255,255,255,255,252,127,255,255,223,192,0,0,1,252,127,255,255,223,192,16,0,1,252,127,255,255,223,192,127,64,1,252,0,31,192,31,192,191,0,1,252,0,31,192,31,192,255,0,1,252,0,31,192,0,0,253,0,0,0,0,31,192,0,1,252,0,0,0,0,31,192,0,3,252,0,0,0,0,31,192,47,255,255,255,255,253,0,31,198,239,255,255,255,255,253,0,31,255,255,255,255,255,255,253,1,191,255,208,15,208,0,255,0,127,255,255,128,31,192,0,254,0,191,255,208,0,63,128,1,253,0,127,255,192,0,63,64,2,252,0,57,31,192,0,191,0,3,248,0,0,31,192,0,255,128,11,244,0,0,31,192,1,255,249,15,240,0,0,31,192,2,255,255,255,208,0,0,31,192,1,185,255,255,192,0,0,31,192,0,0,31,255,192,0,0,31,192,0,0,11,255,248,0,0,31,192,0,0,127,255,255,64,0,31,192,0,27,255,194,255,224,0,47,192,22,255,254,0,127,252,31,255,192,191,255,224,0,11,252,15,255,64,63,253,0,0,1,244,15,249,0,46,64,0,0,0,96,0,0,0,0,0,0,0,0,0, + // 0x6321 挡 + 33,99,34,36,68,38,1,252,0,31,192,0,0,6,160,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,7,208,11,240,7,224,0,47,192,11,240,11,240,11,240,0,47,192,7,240,11,240,15,224,0,47,192,3,248,11,240,15,208,21,111,213,66,252,11,240,47,192,63,255,255,192,252,11,240,63,128,63,255,255,192,254,11,240,63,0,63,255,255,192,191,11,240,190,0,0,47,192,0,126,11,240,253,0,0,47,192,0,16,11,240,108,0,0,47,192,0,0,11,240,0,0,0,47,192,5,85,95,245,85,80,0,47,192,15,255,255,255,255,224,0,47,192,15,255,255,255,255,224,0,47,198,207,255,255,255,255,224,0,47,255,192,0,0,0,11,224,6,255,255,192,0,0,0,11,224,191,255,254,64,0,0,0,11,224,191,255,192,0,0,0,0,11,224,127,175,192,11,255,255,255,255,224,16,47,192,11,255,255,255,255,224,0,47,192,11,255,255,255,255,224,0,47,192,0,0,0,0,15,224,0,47,192,0,0,0,0,11,224,0,47,192,0,0,0,0,11,224,0,47,192,0,0,0,0,11,224,0,47,192,0,0,0,0,11,224,0,47,192,63,255,255,255,255,224,0,47,192,63,255,255,255,255,224,47,255,192,63,255,255,255,255,224,15,255,64,21,85,85,85,95,224,15,253,0,0,0,0,0,11,224,0,0,0,0,0,0,0,5,80, + // 0x6324 挤 + 36,99,36,36,68,38,1,252,0,63,0,0,0,47,0,0,0,0,63,0,0,0,127,64,0,0,0,63,0,0,0,63,192,0,0,0,63,0,0,0,31,192,0,0,0,63,0,255,255,255,255,255,252,0,63,0,255,255,255,255,255,252,0,63,0,255,255,255,255,255,252,21,127,84,0,253,0,2,253,0,63,255,254,0,191,0,3,252,0,63,255,254,0,63,128,11,244,0,63,255,254,0,31,208,15,240,0,0,63,0,0,15,244,63,192,0,0,63,0,0,3,254,255,64,0,0,63,0,0,0,255,253,0,0,0,63,0,0,0,191,252,0,0,0,63,0,0,27,255,255,208,0,0,63,8,26,255,255,255,255,164,0,63,253,255,255,224,47,255,253,0,63,253,191,253,0,2,255,248,7,255,254,62,64,0,0,6,240,127,255,224,0,127,0,7,240,0,127,255,0,0,127,0,7,240,0,63,191,0,0,127,0,7,240,0,16,63,0,0,127,0,7,240,0,0,63,0,0,127,0,7,240,0,0,63,0,0,127,0,7,240,0,0,63,0,0,127,0,7,240,0,0,63,0,0,255,0,7,240,0,0,63,0,0,254,0,7,240,0,0,63,0,2,252,0,7,240,0,0,63,0,11,252,0,7,240,0,0,63,0,47,240,0,7,240,0,47,255,1,255,208,0,7,240,0,31,255,3,255,64,0,7,240,0,15,252,0,184,0,0,7,240,0,5,64,0,0,0,0,1,80,0, + // 0x635f 损 + 95,99,36,36,68,38,1,252,0,47,128,0,0,0,0,0,0,0,63,128,1,170,170,170,170,0,0,63,128,2,255,255,255,255,0,0,63,128,2,255,255,255,255,0,0,63,128,2,252,0,0,191,0,0,63,128,2,252,0,0,191,0,0,63,128,2,252,0,0,191,0,21,127,149,2,252,0,0,191,0,127,255,255,194,254,170,170,255,0,127,255,255,194,255,255,255,255,0,127,255,255,194,255,255,255,255,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,11,255,255,255,255,192,0,63,128,11,255,255,255,255,192,0,63,128,11,255,255,255,255,192,0,63,129,75,224,0,0,31,192,0,63,255,203,224,0,0,31,192,0,127,255,203,224,10,144,31,192,27,255,255,139,224,15,208,31,192,191,255,228,11,224,15,208,31,192,191,255,128,11,224,15,208,31,192,126,63,128,11,224,15,208,31,192,0,63,128,11,224,31,208,31,192,0,63,128,11,224,31,192,31,192,0,63,128,11,224,63,192,31,192,0,63,128,11,224,191,128,26,128,0,63,128,0,1,255,11,64,0,0,63,128,0,11,253,47,240,0,0,63,128,0,127,244,31,254,0,0,63,128,11,255,208,2,255,192,63,255,130,255,255,0,0,127,248,31,255,65,255,244,0,0,11,253,15,253,0,190,64,0,0,1,248,5,80,0,16,0,0,0,0,32, + // 0x6362 换 + 98,99,36,36,68,38,1,252,0,42,64,0,2,64,0,0,0,0,63,64,0,7,248,0,0,0,0,63,64,0,15,240,0,0,0,0,63,64,0,31,224,0,0,0,0,63,64,0,63,255,255,248,0,0,63,64,0,191,255,255,254,0,0,63,64,2,255,255,255,252,0,21,127,148,7,252,0,11,244,0,63,255,255,31,244,0,31,224,0,63,255,255,191,208,0,127,128,0,63,255,255,191,255,255,255,255,128,0,63,64,47,255,255,255,255,128,0,63,64,15,255,255,255,255,128,0,63,64,11,224,15,208,63,128,0,63,64,11,224,15,208,63,128,0,63,64,11,224,15,208,63,128,0,63,64,11,224,15,208,63,128,0,63,175,11,224,15,208,63,128,0,63,255,11,224,15,208,63,128,27,255,255,75,224,15,192,63,128,191,255,248,11,224,31,192,63,128,127,255,64,255,255,255,255,255,252,62,127,64,255,255,255,255,255,252,0,63,64,255,255,255,255,255,252,0,63,64,0,0,255,240,0,0,0,63,64,0,1,255,244,0,0,0,63,64,0,3,254,252,0,0,0,63,64,0,15,240,255,0,0,0,63,64,0,63,224,63,192,0,0,63,64,0,255,128,31,244,0,0,63,64,7,254,0,7,254,0,0,63,64,63,248,0,2,255,208,47,255,66,255,208,0,0,127,253,15,255,15,255,0,0,0,15,252,15,253,3,244,0,0,0,1,244,5,64,0,64,0,0,0,0,0, + // 0x6389 掉 + 137,99,36,37,77,38,1,251,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,255,255,252,0,63,128,0,0,31,255,255,252,0,63,128,0,0,31,255,255,252,0,63,128,0,0,31,192,0,0,21,127,149,0,0,31,192,0,0,127,255,255,64,0,31,192,0,0,127,255,255,95,255,255,255,255,192,127,255,255,95,255,255,255,255,192,0,63,128,31,255,255,255,255,192,0,63,128,31,192,0,0,31,192,0,63,128,31,192,0,0,31,192,0,63,128,31,192,0,0,31,192,0,63,128,31,255,255,255,255,192,0,63,128,31,255,255,255,255,192,0,63,175,95,234,170,170,191,192,0,63,255,159,192,0,0,31,192,6,255,255,159,192,0,0,31,192,127,255,254,31,192,0,0,31,192,127,255,208,31,255,255,255,255,192,63,255,128,31,255,255,255,255,192,36,63,128,31,255,255,255,255,192,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,130,255,255,255,255,255,253,0,63,130,255,255,255,255,255,253,0,63,130,255,255,255,255,255,253,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,127,128,0,0,31,192,0,0,63,255,64,0,0,31,192,0,0,47,255,0,0,0,31,192,0,0,31,248,0,0,0,31,192,0,0,0,0,0,0,0,0,0,0,0, + // 0x63a2 探 + 162,99,36,36,68,38,1,252,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,63,255,255,255,255,248,0,63,64,63,255,255,255,255,248,0,63,64,63,255,255,255,255,248,0,63,64,63,0,0,0,1,248,0,63,64,63,2,160,63,1,248,21,127,149,63,3,240,63,1,248,127,255,255,63,7,240,63,1,248,127,255,255,42,7,240,63,0,0,127,255,255,0,15,224,63,0,80,0,63,64,0,31,208,63,0,125,0,63,64,0,127,192,63,64,189,0,63,64,6,255,0,63,255,252,0,63,64,127,253,0,47,255,248,0,63,64,63,224,0,11,255,224,0,63,91,14,0,15,208,0,0,0,63,255,0,0,15,208,0,0,0,127,255,0,0,15,208,0,0,111,255,255,0,0,15,208,0,0,191,255,224,127,255,255,255,255,252,127,255,64,127,255,255,255,255,252,57,63,64,127,255,255,255,255,252,0,63,64,0,2,255,255,0,0,0,63,64,0,3,255,255,64,0,0,63,64,0,15,255,255,192,0,0,63,64,0,47,223,223,240,0,0,63,64,0,191,143,215,252,0,0,63,64,2,255,15,210,255,0,0,63,64,15,252,15,208,191,192,0,63,64,127,240,15,208,63,244,0,63,67,255,192,15,208,15,254,0,127,67,255,0,15,208,3,252,47,255,0,244,0,15,208,0,180,31,254,0,0,0,15,208,0,0,15,244,0,0,0,15,208,0,0, + // 0x63a5 接 + 165,99,36,37,77,38,1,251,0,31,192,0,0,15,208,0,0,0,31,192,0,0,15,208,0,0,0,31,192,0,0,15,208,0,0,0,31,192,0,0,15,208,0,0,0,31,192,63,255,255,255,255,244,0,31,192,63,255,255,255,255,244,0,31,192,63,255,255,255,255,244,21,111,213,0,63,0,2,252,0,63,255,255,64,63,64,3,248,0,63,255,255,64,47,128,3,240,0,63,255,255,64,31,192,7,240,0,0,31,192,0,15,192,15,208,0,0,31,192,0,15,192,15,192,0,0,31,192,255,255,255,255,255,253,0,31,192,255,255,255,255,255,253,0,31,192,255,255,255,255,255,253,0,31,192,0,0,254,0,0,0,0,31,219,64,2,252,0,0,0,0,47,255,128,3,248,0,0,0,27,255,255,255,255,255,255,255,252,255,255,248,255,255,255,255,255,252,191,255,192,255,255,255,255,255,252,127,111,192,0,63,128,3,252,0,16,31,192,0,127,0,3,244,0,0,31,192,0,254,0,7,240,0,0,31,192,1,253,0,15,240,0,0,31,192,3,255,144,47,208,0,0,31,192,7,255,253,127,192,0,0,31,192,7,255,255,255,64,0,0,31,192,0,81,255,255,0,0,0,31,192,0,0,47,255,224,0,0,31,192,0,6,255,255,254,0,21,111,192,6,191,255,75,255,208,31,255,194,255,255,244,0,191,244,15,255,64,255,254,64,0,15,224,15,249,0,250,64,0,0,1,192,0,0,0,0,0,0,0,0,0, + // 0x63a7 控 + 167,99,36,36,68,38,1,252,0,47,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,191,255,255,255,255,252,0,63,64,191,255,255,255,255,252,0,63,64,191,255,255,255,255,252,21,127,149,190,3,240,63,0,252,127,255,255,190,7,240,63,0,252,127,255,255,190,7,240,63,0,252,127,255,255,190,11,224,63,0,168,0,63,64,0,15,224,63,0,0,0,63,64,0,15,208,63,0,160,0,63,64,0,47,192,63,0,188,0,63,64,0,191,64,63,64,252,0,63,64,7,255,0,63,255,252,0,63,91,127,252,0,47,255,244,0,63,255,63,208,0,11,255,208,1,191,255,29,0,0,0,0,0,47,255,253,0,0,0,0,0,0,191,255,128,0,0,0,0,0,0,127,255,64,15,255,255,255,255,224,57,63,64,15,255,255,255,255,224,0,63,64,15,255,255,255,255,224,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,31,208,0,0,0,127,65,255,255,255,255,255,253,47,255,1,255,255,255,255,255,253,31,254,1,255,255,255,255,255,253,15,244,0,0,0,0,0,0,0, + // 0x63d0 提 + 208,99,36,36,68,38,1,252,0,63,0,0,0,0,0,0,0,0,63,0,6,170,170,170,170,64,0,63,0,7,255,255,255,255,128,0,63,0,7,255,255,255,255,128,0,63,0,7,240,0,0,47,128,0,63,0,7,240,0,0,47,128,0,63,0,7,245,85,85,127,128,21,127,85,7,255,255,255,255,128,127,255,255,7,255,255,255,255,128,127,255,255,7,240,0,0,47,128,127,255,255,7,240,0,0,47,128,0,63,0,7,250,170,170,191,128,0,63,0,7,255,255,255,255,128,0,63,0,7,255,255,255,255,128,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,6,63,255,255,255,255,248,0,63,255,127,255,255,255,255,248,1,191,255,127,255,255,255,255,248,127,255,254,0,0,15,192,0,0,191,255,144,1,80,15,192,0,0,127,255,0,3,244,15,192,0,0,57,63,0,3,240,15,192,0,0,0,63,0,7,240,15,255,255,192,0,63,0,11,224,15,255,255,192,0,63,0,15,240,15,255,255,128,0,63,0,15,244,15,192,0,0,0,63,0,47,252,15,192,0,0,0,63,0,63,191,15,192,0,0,0,63,0,191,47,223,192,0,0,0,63,1,253,15,255,208,0,0,63,255,7,252,3,255,255,255,254,31,255,15,240,0,191,255,255,252,15,248,3,208,0,6,255,255,252,0,0,0,64,0,0,0,0,0, + // 0x63d2 插 + 210,99,35,36,68,38,1,252,0,47,64,0,0,0,0,0,0,0,63,64,0,0,0,1,111,64,0,63,64,0,1,90,255,255,192,0,63,64,47,255,255,255,255,224,0,63,64,31,255,255,255,164,0,0,63,64,15,250,175,208,0,0,0,63,64,0,0,15,208,0,0,21,127,149,0,0,15,208,0,0,127,255,255,0,0,15,208,0,0,127,255,255,191,255,255,255,255,252,127,255,255,191,255,255,255,255,252,0,63,64,191,255,255,255,255,252,0,63,64,0,0,15,208,0,0,0,63,64,0,0,15,208,0,0,0,63,64,0,1,15,208,0,0,0,63,64,0,15,143,208,0,0,0,63,64,57,191,255,215,255,240,0,63,175,63,255,239,215,255,240,0,63,255,63,249,15,215,255,240,11,255,255,63,128,15,208,3,240,191,255,248,63,64,15,208,3,240,191,255,64,63,64,15,208,3,240,127,127,64,63,64,15,208,3,240,16,63,64,63,255,143,211,255,240,0,63,64,63,255,143,211,255,240,0,63,64,63,255,143,211,255,240,0,63,64,63,64,15,208,3,240,0,63,64,63,64,15,208,3,240,0,63,64,63,64,15,208,3,240,0,63,64,63,64,15,208,3,240,0,63,64,63,64,15,208,3,240,0,63,64,63,255,255,255,255,240,0,127,64,63,255,255,255,255,240,47,255,0,63,255,255,255,255,240,31,254,0,63,64,0,0,3,240,15,244,0,47,64,0,0,3,240, + // 0x6536 收 + 54,101,36,36,68,38,1,252,0,0,6,160,0,169,0,0,0,0,0,11,240,0,254,0,0,0,0,0,11,240,1,253,0,0,0,0,0,11,240,2,252,0,0,0,1,80,11,240,3,252,0,0,0,3,240,11,240,3,248,0,0,0,3,240,11,240,11,244,0,0,0,3,240,11,240,15,255,255,255,254,3,240,11,240,31,255,255,255,254,3,240,11,240,47,255,255,255,254,3,240,11,240,63,229,85,111,228,3,240,11,240,191,208,0,47,192,3,240,11,240,255,240,0,63,192,3,240,11,243,255,240,0,63,128,3,240,11,251,255,244,0,127,64,3,240,11,255,247,248,0,191,0,3,240,11,255,226,252,0,254,0,3,240,11,247,192,253,1,253,0,3,240,11,241,64,254,3,252,0,3,240,11,240,0,191,3,248,0,3,240,11,240,0,63,139,240,0,3,240,11,240,0,63,207,240,0,3,240,111,240,0,31,255,208,0,3,255,255,240,0,15,255,192,0,47,255,255,240,0,7,255,64,0,127,255,255,240,0,3,254,0,0,63,253,11,240,0,11,255,0,0,63,64,11,240,0,47,255,192,0,0,0,11,240,0,191,255,240,0,0,0,11,240,2,255,143,252,0,0,0,11,240,31,253,7,255,64,0,0,11,240,191,244,1,255,224,0,0,11,251,255,208,0,127,253,0,0,11,251,255,0,0,31,253,0,0,11,243,248,0,0,2,248,0,0,11,225,128,0,0,0,96, + // 0x653e 放 + 62,101,36,37,77,38,1,251,0,2,248,0,0,30,128,0,0,0,2,252,0,0,47,192,0,0,0,2,252,0,0,63,192,0,0,0,2,252,0,0,63,128,0,0,0,2,252,0,0,63,64,0,0,0,2,252,0,0,127,0,0,0,63,255,255,255,208,191,0,0,0,63,255,255,255,208,255,255,255,253,63,255,255,255,209,255,255,255,253,21,127,85,85,66,255,255,255,253,0,63,0,0,3,253,85,127,212,0,63,0,0,7,252,0,63,128,0,63,0,0,15,252,0,63,64,0,63,0,0,15,253,0,127,0,0,63,255,255,63,254,0,191,0,0,63,255,255,127,255,0,254,0,0,63,255,255,255,191,0,253,0,0,63,64,191,191,63,65,252,0,0,63,0,127,45,47,195,252,0,0,63,0,127,4,31,195,248,0,0,63,0,191,0,15,231,240,0,0,127,0,191,0,11,255,240,0,0,127,0,191,0,7,255,208,0,0,191,0,190,0,3,255,192,0,0,190,0,190,0,1,255,128,0,0,253,0,190,0,0,255,0,0,0,253,0,190,0,2,255,128,0,1,252,0,254,0,7,255,208,0,3,252,0,254,0,31,255,240,0,7,248,0,253,0,127,239,252,0,15,240,0,253,2,255,131,255,0,31,224,0,253,15,254,1,255,208,63,192,2,252,191,248,0,127,252,255,130,255,254,255,224,0,31,253,63,1,255,244,255,0,0,3,244,12,0,255,208,116,0,0,0,160,0,0,0,0,0,0,0,0,0, + // 0x6570 数 + 112,101,36,36,68,38,1,252,0,0,190,0,0,7,160,0,0,2,192,190,3,208,11,240,0,0,11,224,190,7,240,15,240,0,0,3,240,190,15,208,15,224,0,0,2,248,190,47,192,15,208,0,0,1,252,190,63,0,31,192,0,0,0,224,190,9,0,63,192,0,0,63,255,255,255,252,63,255,255,253,63,255,255,255,252,127,255,255,253,63,255,255,255,252,191,255,255,253,0,3,255,128,0,255,85,111,212,0,15,255,248,1,255,0,47,192,0,127,255,255,67,255,64,63,192,2,254,190,63,247,255,128,63,128,31,248,190,11,223,255,192,63,64,127,224,190,1,159,255,192,127,0,47,64,190,0,63,223,208,191,0,8,2,253,0,63,143,224,254,0,0,3,244,0,15,11,241,253,0,0,11,240,0,1,7,246,252,0,127,255,255,255,252,3,251,252,0,127,255,255,255,252,2,255,244,0,127,255,255,255,252,1,255,240,0,0,191,0,127,0,0,255,224,0,0,253,0,254,0,0,191,192,0,2,252,0,253,0,0,191,192,0,3,255,66,252,0,1,255,224,0,15,255,251,248,0,7,255,240,0,11,239,255,240,0,15,255,252,0,0,66,255,240,0,127,243,255,0,0,1,255,254,1,255,192,255,192,0,31,255,255,223,255,0,127,244,27,255,244,191,255,252,0,47,253,63,255,128,31,255,240,0,7,252,31,248,0,2,47,128,0,1,240,10,0,0,0,8,0,0,0,16, + // 0x6572 敲 + 114,101,36,36,68,38,1,252,0,0,253,0,0,1,252,0,0,0,0,253,0,0,1,252,0,0,0,0,253,0,0,1,252,0,0,0,0,253,0,0,1,252,0,0,63,255,255,255,252,1,252,0,0,127,255,255,255,252,1,255,255,252,127,255,255,255,252,1,255,255,252,0,0,0,0,0,1,255,255,252,0,0,0,0,0,1,253,0,0,0,255,255,255,0,1,252,0,0,0,255,255,255,0,1,252,0,0,0,253,85,191,0,1,252,0,0,0,252,0,127,0,1,252,0,0,0,252,0,127,15,255,255,255,224,0,253,85,191,15,255,255,255,240,0,255,255,255,15,255,255,255,240,0,255,255,255,0,24,0,15,224,0,0,0,0,0,252,0,15,208,0,0,0,0,0,253,0,47,192,31,255,255,255,240,190,0,63,192,31,255,255,255,240,63,0,63,64,31,234,170,171,240,63,128,191,0,31,128,0,3,240,31,192,254,0,31,139,255,195,240,15,227,252,0,31,139,255,195,240,7,251,252,0,31,139,67,195,240,3,255,240,0,31,139,67,195,240,1,255,224,0,31,139,67,195,240,0,255,192,0,31,139,67,195,240,1,255,208,0,31,139,255,195,240,11,255,248,0,31,139,255,195,240,47,255,254,0,31,139,64,3,241,255,226,255,208,31,134,0,3,255,255,64,127,253,31,128,0,255,251,253,0,31,252,31,128,0,255,211,224,0,2,244,10,64,0,85,1,0,0,0,16, + // 0x6574 整 + 116,101,34,35,59,38,2,253,0,2,244,0,0,14,64,0,0,0,2,244,0,0,31,192,0,0,85,87,249,85,80,63,128,0,0,191,255,255,255,224,63,64,0,0,191,255,255,255,224,191,255,255,240,0,2,244,0,0,255,255,255,240,0,2,248,0,2,255,255,255,240,47,255,255,255,199,252,0,253,0,47,255,255,255,223,253,1,252,0,47,2,244,15,255,255,2,248,0,47,2,244,15,255,127,67,240,0,47,66,248,31,206,31,207,240,0,47,255,255,255,192,11,255,192,0,47,255,255,255,192,3,255,64,0,0,47,255,64,0,2,255,0,0,0,255,255,244,0,31,255,224,0,7,254,250,255,64,191,239,253,0,111,226,244,127,159,255,67,255,224,255,130,244,11,63,248,0,191,240,60,2,244,0,31,128,0,11,208,0,0,80,0,4,0,0,0,64,11,255,255,255,255,255,255,254,0,11,255,255,255,255,255,255,254,0,11,255,255,255,255,255,255,254,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,15,192,3,248,0,0,0,0,0,15,192,3,255,255,255,192,0,0,15,192,3,255,255,255,192,0,0,15,192,3,254,170,170,128,0,0,15,192,3,248,0,0,0,0,0,15,192,3,248,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x6599 料 + 153,101,36,36,68,38,1,252,0,2,160,0,0,0,1,252,0,0,7,240,0,0,0,1,252,0,0,7,240,20,0,0,1,252,0,63,7,240,63,2,208,1,252,0,47,7,240,126,3,252,1,252,0,31,71,240,189,3,255,65,252,0,15,135,240,252,0,191,209,252,0,15,199,240,252,0,31,241,252,0,11,199,241,244,0,3,209,252,0,7,215,242,240,0,0,129,252,0,7,215,243,224,0,0,1,252,0,3,71,241,208,0,0,1,252,0,0,7,240,0,8,0,1,252,0,63,255,255,255,47,64,1,252,0,63,255,255,255,127,240,1,252,0,63,255,255,255,31,253,1,252,0,21,111,245,85,2,255,65,252,0,0,63,248,0,0,127,1,252,0,0,63,253,0,0,29,1,252,0,0,191,255,64,0,0,1,252,0,0,255,255,192,0,0,1,252,0,1,251,251,240,0,0,1,253,188,3,247,243,248,0,0,27,255,253,7,231,241,253,0,111,255,255,254,15,215,240,253,191,255,255,255,228,31,199,240,116,255,255,255,252,0,63,71,240,16,255,249,65,252,0,191,7,240,0,164,0,1,252,0,126,7,240,0,0,0,1,252,0,60,7,240,0,0,0,1,252,0,20,7,240,0,0,0,1,252,0,0,7,240,0,0,0,1,252,0,0,7,240,0,0,0,1,252,0,0,7,240,0,0,0,1,252,0,0,7,240,0,0,0,1,252,0,0,7,240,0,0,0,1,252,0, + // 0x659c 斜 + 156,101,36,36,68,38,1,252,0,0,255,0,0,0,0,127,0,0,2,255,192,0,0,0,127,0,0,3,255,240,0,0,0,127,0,0,11,255,253,0,30,0,127,0,0,31,227,255,64,191,128,127,0,0,63,192,255,208,63,240,127,0,0,191,64,63,240,11,252,127,0,2,254,0,15,252,2,254,127,0,7,252,0,3,240,0,190,191,0,31,240,0,1,208,0,56,127,0,127,255,255,255,128,0,0,127,0,255,255,255,255,128,0,0,127,0,61,255,255,255,128,112,0,127,0,20,0,127,0,1,253,0,127,0,0,0,127,0,2,255,64,127,0,0,0,127,0,0,127,208,127,0,0,0,127,0,0,31,244,127,0,63,255,255,255,248,7,252,127,0,63,255,255,255,248,1,240,127,0,63,255,255,255,248,0,64,127,0,0,0,127,0,0,0,0,127,0,0,0,127,0,0,0,0,127,253,1,144,127,7,64,0,6,255,254,3,248,127,31,192,27,255,255,254,3,240,127,15,199,255,255,255,228,7,240,127,11,227,255,255,255,0,11,224,127,3,243,255,144,127,0,15,208,127,3,246,144,0,127,0,47,192,127,2,252,0,0,127,0,63,64,127,0,252,0,0,127,0,191,0,127,0,244,0,0,127,0,45,0,127,0,0,0,0,127,0,4,0,191,0,0,0,0,127,0,0,63,255,0,0,0,0,127,0,0,63,253,0,0,0,0,127,0,0,47,228,0,0,0,0,127,0, + // 0x65ad 断 + 173,101,34,37,77,38,3,251,0,0,21,0,0,0,0,0,0,168,0,63,0,0,0,0,125,0,252,0,63,0,0,0,27,255,64,252,120,63,15,133,11,255,255,128,252,188,63,15,203,255,255,228,0,252,61,63,31,75,255,249,0,0,252,62,63,47,11,249,0,0,0,252,47,63,62,11,224,0,0,0,252,47,63,124,11,224,0,0,0,252,30,63,120,11,224,0,0,0,252,0,63,0,11,224,0,0,0,252,0,63,0,11,224,0,0,0,252,255,255,255,203,224,0,0,0,252,255,255,255,203,255,255,255,224,252,255,255,255,203,255,255,255,224,252,0,191,0,11,255,255,255,224,252,0,255,64,11,245,91,245,64,252,2,255,208,11,224,11,240,0,252,3,255,248,15,224,11,240,0,252,11,255,254,15,224,11,240,0,252,31,127,63,143,224,11,240,0,252,63,63,31,79,208,11,240,0,252,253,63,10,15,208,11,240,0,254,252,63,0,15,192,11,240,0,253,240,63,0,31,192,11,240,0,252,144,63,0,31,192,11,240,0,252,0,63,0,47,192,11,240,0,252,0,63,0,63,128,11,240,0,252,0,0,0,127,0,11,240,0,255,255,255,255,255,0,11,240,0,255,255,255,255,254,0,11,240,0,255,255,255,255,252,0,11,240,0,252,0,0,7,248,0,11,240,0,252,0,0,15,240,0,11,240,0,252,0,0,11,208,0,11,240,0,0,0,0,2,128,0,11,240,0,0,0,0,0,0,0,0,0,0, + // 0x65b0 新 + 176,101,36,36,68,38,1,252,0,0,169,0,0,0,0,0,0,0,0,253,0,0,0,0,27,208,0,0,253,0,0,0,6,255,244,0,0,253,0,0,145,191,255,244,47,255,255,255,241,255,255,254,0,47,255,255,255,241,255,254,64,0,47,255,255,255,241,254,64,0,0,0,180,0,57,1,252,0,0,0,1,248,0,127,1,252,0,0,0,0,252,0,189,1,252,0,0,0,0,189,0,252,1,252,0,0,0,0,126,1,248,1,252,0,0,0,0,121,1,180,1,252,0,0,0,63,255,255,255,249,255,255,255,253,63,255,255,255,249,255,255,255,253,63,255,255,255,249,255,255,255,253,0,0,253,0,1,253,85,254,84,0,0,253,0,1,252,0,253,0,0,0,253,0,1,252,0,253,0,63,255,255,255,241,252,0,253,0,63,255,255,255,241,252,0,253,0,63,255,255,255,242,252,0,253,0,0,3,254,0,2,248,0,253,0,0,11,255,64,3,248,0,253,0,0,15,255,224,3,244,0,253,0,0,63,255,252,3,240,0,253,0,0,255,255,255,7,240,0,253,0,2,252,253,127,207,240,0,253,0,11,244,253,31,79,208,0,253,0,47,240,253,10,47,192,0,253,0,191,192,253,0,63,128,0,253,0,63,0,253,0,255,0,0,253,0,12,0,253,2,254,0,0,253,0,0,0,253,3,252,0,0,253,0,0,0,253,0,244,0,0,253,0,0,0,253,0,32,0,0,169,0, + // 0x65b9 方 + 185,101,34,37,77,38,2,251,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,85,85,85,87,253,85,85,85,80,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,2,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,255,255,255,255,224,0,0,0,7,255,255,255,255,208,0,0,0,11,255,255,255,255,208,0,0,0,15,245,85,85,111,208,0,0,0,15,240,0,0,31,208,0,0,0,31,224,0,0,31,192,0,0,0,47,208,0,0,47,192,0,0,0,63,192,0,0,47,192,0,0,0,127,128,0,0,47,192,0,0,0,255,64,0,0,63,192,0,0,2,255,0,0,0,63,128,0,0,7,253,0,0,0,63,128,0,0,15,252,0,0,0,63,64,0,0,63,240,0,0,0,127,64,0,0,255,208,0,0,0,191,0,0,7,255,128,0,0,0,255,0,0,47,254,0,1,84,7,254,0,0,255,244,0,0,255,255,252,0,0,127,208,0,0,255,255,248,0,0,46,0,0,0,191,255,208,0,0,0,0,0,0,0,0,0,0,0, + // 0x65e0 无 + 224,101,35,34,50,38,2,252,1,85,85,85,85,85,85,85,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,85,111,229,85,85,85,80,0,0,0,31,192,0,0,0,0,0,0,0,47,239,192,0,0,0,0,0,0,63,239,192,0,0,0,0,0,0,127,111,192,0,0,0,0,0,0,191,47,192,0,0,0,0,0,0,255,47,192,0,0,0,0,0,2,253,47,192,0,0,0,0,0,7,252,47,192,0,0,0,0,0,15,244,47,192,0,2,64,0,0,63,240,47,192,0,3,244,0,0,255,192,47,192,0,3,248,0,7,255,0,47,192,0,3,244,0,47,253,0,47,192,0,3,244,2,255,240,0,47,208,0,11,240,127,255,192,0,31,255,255,255,240,255,253,0,0,15,255,255,255,208,63,208,0,0,7,255,255,255,128,25,0,0,0,0,85,85,84,0, + // 0x65f6 时 + 246,101,34,36,68,38,3,252,0,0,0,0,0,0,10,128,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,255,255,255,64,0,0,31,192,0,255,255,255,64,0,0,31,192,0,255,255,255,64,0,0,31,192,0,253,0,63,64,0,0,31,192,0,253,0,63,69,85,85,111,229,64,253,0,63,79,255,255,255,255,208,253,0,63,79,255,255,255,255,208,253,0,63,79,255,255,255,255,208,253,0,63,64,0,0,31,192,0,253,0,63,64,0,0,31,192,0,253,0,63,64,0,0,31,192,0,255,255,255,64,176,0,31,192,0,255,255,255,67,252,0,31,192,0,255,255,255,65,254,0,31,192,0,253,0,63,64,255,0,31,192,0,253,0,63,64,127,192,31,192,0,253,0,63,64,47,208,31,192,0,253,0,63,64,15,240,31,192,0,253,0,63,64,11,248,31,192,0,253,0,63,64,3,252,31,192,0,253,0,63,64,1,248,31,192,0,253,0,63,64,0,208,31,192,0,253,0,63,64,0,0,31,192,0,255,255,255,64,0,0,31,192,0,255,255,255,64,0,0,31,192,0,255,255,255,64,0,0,31,192,0,253,0,0,0,0,0,31,192,0,253,0,0,0,0,0,31,192,0,253,0,0,0,0,0,47,192,0,0,0,0,0,11,255,255,192,0,0,0,0,0,3,255,255,192,0,0,0,0,0,3,255,254,0,0,0,0,0,0,1,85,80,0,0, + // 0x660e 明 + 14,102,33,36,68,38,3,251,0,0,0,0,85,85,85,85,0,0,0,0,0,255,255,255,255,64,255,255,255,128,255,255,255,255,64,255,255,255,128,255,255,255,255,64,255,255,255,128,253,0,0,63,64,253,0,47,128,253,0,0,63,64,253,0,47,128,253,0,0,63,64,253,0,47,128,253,0,0,63,64,253,0,47,128,253,0,0,63,64,253,0,47,128,253,0,0,63,64,253,0,47,128,255,255,255,255,64,255,255,255,128,255,255,255,255,64,255,255,255,128,255,255,255,255,64,255,255,255,128,253,0,0,127,64,253,0,47,128,253,0,0,63,64,253,0,47,128,253,0,0,63,64,253,0,47,128,252,0,0,63,64,253,0,47,129,252,0,0,63,64,253,0,47,129,252,0,0,63,64,253,0,47,129,255,255,255,255,64,253,0,47,130,255,255,255,255,64,255,255,255,130,255,255,255,255,64,255,255,255,131,248,0,0,127,64,255,255,255,131,244,0,0,63,64,254,85,85,7,240,0,0,63,64,253,0,0,15,240,0,0,63,64,253,0,0,15,208,0,0,63,64,253,0,0,63,192,0,0,63,64,0,0,0,127,128,0,0,63,64,0,0,0,255,64,0,0,63,64,0,0,2,254,0,0,0,63,64,0,0,11,252,0,1,85,191,0,0,0,47,244,0,3,255,255,0,0,0,31,208,0,2,255,254,0,0,0,7,64,0,1,255,228,0,0,0,0,0,0,0,0,0,0, + // 0x662f 是 + 47,102,36,36,68,38,1,251,0,42,170,170,170,170,170,164,0,0,63,255,255,255,255,255,248,0,0,63,255,255,255,255,255,248,0,0,63,128,0,0,0,3,248,0,0,63,128,0,0,0,3,248,0,0,63,128,0,0,0,3,248,0,0,63,255,255,255,255,255,248,0,0,63,255,255,255,255,255,248,0,0,63,213,85,85,85,87,248,0,0,63,128,0,0,0,3,248,0,0,63,128,0,0,0,3,248,0,0,63,255,255,255,255,255,248,0,0,63,255,255,255,255,255,248,0,0,42,170,170,170,170,170,164,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,0,0,0,0,127,0,0,0,0,0,1,164,0,127,0,0,0,0,0,3,252,0,127,0,0,0,0,0,3,248,0,127,0,0,0,0,0,7,244,0,127,255,255,255,0,0,11,240,0,127,255,255,255,0,0,15,248,0,127,255,255,255,0,0,47,253,0,127,0,0,0,0,0,63,255,0,127,0,0,0,0,0,191,191,208,127,0,0,0,0,1,255,31,248,127,0,0,0,0,7,252,11,255,255,0,0,0,0,31,248,1,255,255,255,255,255,253,127,224,0,47,255,255,255,255,252,47,128,0,1,191,255,255,255,248,10,0,0,0,0,5,85,85,80,0,0,0,0,0,0,0,0,0, + // 0x6682 暂 + 130,102,34,37,77,38,2,251,0,11,144,0,0,0,0,5,0,0,15,240,0,0,0,22,255,0,170,191,250,170,145,191,255,255,192,255,255,255,255,226,255,255,249,0,255,255,255,255,226,254,148,0,0,1,252,0,0,2,244,0,0,0,3,244,42,0,2,244,0,0,0,11,224,63,0,2,244,0,0,0,47,192,63,0,2,244,0,0,0,127,255,255,255,242,255,255,255,240,63,255,255,255,242,255,255,255,240,63,255,255,255,226,255,255,255,240,0,0,63,0,3,244,7,240,0,0,0,63,0,3,240,7,240,0,0,5,191,255,215,240,7,240,0,191,255,255,255,219,224,7,240,0,191,255,255,250,79,208,7,240,0,191,169,127,0,47,192,7,240,0,0,0,63,0,63,128,7,240,0,0,0,63,0,31,0,7,240,0,0,0,21,0,1,0,1,80,0,0,106,170,170,170,170,170,144,0,0,127,255,255,255,255,255,224,0,0,127,255,255,255,255,255,224,0,0,127,0,0,0,0,15,224,0,0,127,0,0,0,0,15,224,0,0,127,85,85,85,85,95,224,0,0,127,255,255,255,255,255,224,0,0,127,255,255,255,255,255,224,0,0,127,0,0,0,0,15,224,0,0,127,0,0,0,0,15,224,0,0,127,0,0,0,0,15,224,0,0,127,255,255,255,255,255,224,0,0,127,255,255,255,255,255,224,0,0,127,255,255,255,255,255,224,0,0,127,0,0,0,0,15,224,0,0,0,0,0,0,0,0,0,0, + // 0x66ab 暫 + 171,102,34,36,68,38,2,252,0,1,244,0,0,0,0,4,0,0,2,244,0,0,0,6,254,0,0,2,248,0,3,150,255,255,128,191,255,255,255,211,255,255,253,0,191,255,255,255,211,255,250,64,0,0,2,244,0,3,245,0,0,0,47,255,255,255,131,240,0,0,0,47,171,254,175,131,240,0,0,0,47,2,244,15,131,240,0,0,0,47,171,254,175,131,255,255,255,240,47,255,255,255,135,255,255,255,240,47,2,244,15,135,255,255,255,240,47,171,254,191,139,224,11,224,0,47,255,255,255,143,208,11,224,0,0,2,244,0,15,192,11,224,0,0,2,248,0,47,192,11,224,0,255,255,255,255,255,64,11,224,0,255,255,255,255,255,0,11,224,0,0,2,244,2,253,0,11,224,0,0,2,244,0,180,0,11,224,0,0,1,80,0,16,0,1,80,0,0,42,170,170,170,170,170,128,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,128,0,0,0,63,192,0,0,47,128,0,0,0,63,192,0,0,47,213,85,85,85,127,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,128,0,0,0,63,192,0,0,47,128,0,0,0,63,192,0,0,47,128,0,0,0,63,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,128,0,0,0,47,128,0, + // 0x66f4 更 + 244,102,35,34,50,38,2,252,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,0,0,0,2,253,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,253,0,2,252,0,1,252,0,0,253,0,2,252,0,1,252,0,0,253,0,2,252,0,1,252,0,0,255,170,171,255,170,171,252,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,253,0,2,252,0,1,252,0,0,253,0,2,252,0,1,252,0,0,253,0,2,252,0,1,252,0,0,253,0,2,252,0,1,252,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,7,64,7,244,0,0,0,0,0,63,192,15,240,0,0,0,0,0,15,244,31,224,0,0,0,0,0,7,253,127,192,0,0,0,0,0,1,255,255,64,0,0,0,0,0,0,127,255,0,0,0,0,0,0,1,191,255,228,0,0,0,0,0,111,255,255,255,250,84,0,0,111,255,254,27,255,255,255,255,244,191,255,208,0,111,255,255,255,240,63,249,0,0,0,107,255,255,224,9,0,0,0,0,0,0,85,64, + // 0x6700 最 + 0,103,34,35,59,38,2,252,0,21,85,85,85,85,85,64,0,0,63,255,255,255,255,255,208,0,0,63,255,255,255,255,255,208,0,0,63,0,0,0,0,15,208,0,0,63,0,0,0,0,15,208,0,0,63,255,255,255,255,255,208,0,0,63,255,255,255,255,255,208,0,0,63,64,0,0,0,31,208,0,0,63,0,0,0,0,15,208,0,0,63,85,85,85,85,95,208,0,0,63,255,255,255,255,255,208,0,0,63,255,255,255,255,255,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,2,248,0,127,0,0,0,0,0,2,248,0,127,0,0,0,0,0,2,255,255,255,63,255,255,254,0,2,255,255,255,63,255,255,255,0,2,254,170,191,43,250,170,255,0,2,248,0,127,3,240,0,253,0,2,248,0,127,3,244,3,252,0,2,255,255,255,1,252,7,244,0,2,255,255,255,0,255,31,240,0,2,254,170,191,0,63,191,192,0,2,248,0,127,0,47,255,64,0,2,248,0,191,0,15,254,0,0,6,255,255,255,0,47,255,64,0,255,255,255,255,1,255,255,224,0,255,255,255,255,31,255,111,254,64,254,148,0,127,255,248,3,255,240,0,0,0,127,63,128,0,127,208,0,0,0,127,24,0,0,6,128, + // 0x6709 有 + 9,103,34,37,77,38,2,251,0,0,0,164,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,21,85,127,213,85,85,85,85,64,0,0,127,128,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,3,255,255,255,255,255,208,0,0,15,255,255,255,255,255,208,0,0,31,255,255,255,255,255,208,0,0,63,252,0,0,0,31,208,0,0,255,252,0,0,0,15,208,0,3,255,252,0,0,0,15,208,0,15,254,252,0,0,0,15,208,0,63,242,255,255,255,255,255,208,0,255,210,255,255,255,255,255,208,0,255,2,255,255,255,255,255,208,0,60,2,252,0,0,0,15,208,0,0,2,252,0,0,0,15,208,0,0,2,252,0,0,0,15,208,0,0,2,255,255,255,255,255,208,0,0,2,255,255,255,255,255,208,0,0,2,255,255,255,255,255,208,0,0,2,252,0,0,0,15,208,0,0,2,252,0,0,0,15,208,0,0,2,252,0,0,0,15,208,0,0,2,252,0,0,0,15,208,0,0,2,252,0,0,85,111,192,0,0,2,252,0,0,255,255,192,0,0,2,252,0,0,127,255,128,0,0,2,252,0,0,63,249,0,0,0,0,0,0,0,0,0,0,0, + // 0x671f 期 + 31,103,34,37,77,38,1,251,0,84,0,21,0,0,0,0,0,0,253,0,63,64,0,0,0,0,0,253,0,63,64,63,255,255,240,0,253,0,63,64,63,255,255,240,0,253,0,63,64,63,255,255,240,63,255,255,255,252,63,64,7,240,63,255,255,255,252,63,0,3,240,63,255,255,255,252,63,0,3,240,0,253,0,63,128,63,0,3,240,0,253,0,63,64,63,0,3,240,0,253,0,63,64,63,0,7,240,0,255,255,255,64,63,255,255,240,0,255,255,255,64,63,255,255,240,0,255,255,255,64,63,255,255,240,0,253,0,63,64,63,0,3,240,0,253,0,63,64,63,0,3,240,0,253,0,63,64,63,0,3,240,0,255,255,255,64,127,0,3,240,0,255,255,255,64,127,0,3,240,0,255,255,255,64,127,0,7,240,0,253,0,63,64,127,255,255,240,0,253,0,63,64,127,255,255,240,0,253,0,63,64,127,255,255,240,127,255,255,255,252,190,0,3,240,127,255,255,255,252,190,0,3,240,127,255,255,255,252,254,0,3,240,0,0,0,16,0,253,0,3,240,0,62,64,180,0,252,0,3,240,0,127,66,252,1,252,0,3,240,0,255,0,255,2,252,0,3,240,2,253,0,127,131,248,0,3,240,7,248,0,47,199,244,0,3,240,31,240,0,15,239,240,5,91,240,127,208,0,11,95,224,15,255,240,31,128,0,0,11,192,11,255,224,2,0,0,0,2,128,7,254,64,0,0,0,0,0,0,0,0,0, + // 0x673a 机 + 58,103,36,36,68,38,1,252,0,2,164,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,5,85,85,80,0,0,3,244,0,31,255,255,248,0,0,3,244,0,31,255,255,248,0,0,3,244,0,31,255,255,248,0,0,3,244,0,31,192,2,248,0,0,3,244,0,31,192,2,248,0,63,255,255,254,31,192,2,248,0,63,255,255,254,31,192,2,248,0,63,255,255,254,31,192,2,248,0,21,91,249,84,31,192,2,248,0,0,15,244,0,31,192,2,248,0,0,15,244,0,31,192,2,248,0,0,31,248,0,31,192,2,248,0,0,47,253,0,31,192,2,248,0,0,63,255,64,31,192,2,248,0,0,191,255,192,31,192,2,248,0,0,255,255,240,31,192,2,248,0,1,251,247,252,31,192,2,248,0,3,243,244,254,47,192,2,248,0,7,227,244,190,63,128,2,248,0,15,211,244,60,63,128,2,248,0,47,195,244,16,63,64,2,248,0,127,67,244,0,63,0,2,248,0,191,3,244,0,191,0,2,248,20,61,3,244,0,255,0,2,248,31,40,3,244,0,254,0,2,248,47,0,3,244,2,252,0,2,248,47,0,3,244,3,252,0,2,248,47,0,3,244,11,244,0,2,248,47,0,3,244,31,240,0,2,252,63,0,3,244,63,208,0,2,255,254,0,3,244,127,128,0,1,255,253,0,3,244,31,0,0,0,191,248,0,2,164,4,0,0,0,0,0, + // 0x6740 杀 + 64,103,34,36,68,38,2,252,0,0,0,0,0,0,13,0,0,0,36,0,0,0,0,127,128,0,0,255,128,0,0,2,255,192,0,1,255,249,0,0,31,254,0,0,0,47,255,208,0,191,244,0,0,0,1,255,254,7,255,192,0,0,0,0,31,255,255,253,0,0,0,0,0,1,191,255,240,0,0,0,0,0,0,127,255,240,0,0,0,0,0,7,255,255,254,0,0,0,0,0,191,255,139,255,224,0,0,0,27,255,248,0,191,254,0,0,6,255,255,64,0,15,255,224,0,127,255,244,0,0,1,255,252,0,47,254,64,1,84,0,31,244,0,15,208,0,3,252,0,2,208,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,3,228,3,252,0,180,0,0,0,11,248,3,252,3,253,0,0,0,31,240,3,252,1,255,64,0,0,127,192,3,252,0,127,224,0,1,255,64,3,252,0,31,248,0,7,253,0,3,252,0,3,254,0,47,248,0,3,252,0,0,255,64,255,208,0,3,252,0,0,127,208,191,64,5,87,252,0,0,31,208,45,0,7,255,252,0,0,10,0,0,0,3,255,244,0,0,0,0,0,0,2,255,128,0,0,0,0, + // 0x675f 束 + 95,103,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,21,85,85,87,253,85,85,85,64,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,1,255,255,255,255,255,255,248,0,1,255,255,255,255,255,255,248,0,1,255,255,255,255,255,255,248,0,1,252,0,3,252,0,3,248,0,1,252,0,3,252,0,3,248,0,1,252,0,3,252,0,3,248,0,1,252,0,3,252,0,3,248,0,1,252,0,3,252,0,3,248,0,1,252,0,3,252,0,3,248,0,1,255,255,255,255,255,255,248,0,1,255,255,255,255,255,255,248,0,1,255,255,255,255,255,255,248,0,0,0,0,127,255,208,0,0,0,0,0,1,255,255,244,0,0,0,0,0,7,255,255,253,0,0,0,0,0,47,247,252,255,128,0,0,0,1,255,211,252,63,244,0,0,0,11,255,3,252,15,254,0,0,0,127,252,3,252,3,255,224,0,7,255,224,3,252,0,191,254,0,191,255,64,3,252,0,31,255,224,255,248,0,3,252,0,2,255,240,63,128,0,3,252,0,0,47,192,24,0,0,3,252,0,0,2,64,0,0,0,3,248,0,0,0,0, + // 0x6761 条 + 97,103,34,36,68,38,2,252,0,0,0,164,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,63,255,255,255,248,0,0,0,0,255,255,255,255,254,0,0,0,3,255,255,255,255,252,0,0,0,31,255,0,0,15,244,0,0,0,191,255,192,0,63,224,0,0,7,255,175,240,0,255,192,0,0,63,253,11,253,7,255,0,0,0,15,240,2,255,175,248,0,0,0,7,64,0,127,255,224,0,0,0,0,0,0,47,255,192,0,0,0,0,0,1,255,255,253,0,0,0,0,0,111,255,255,255,244,0,0,0,91,255,253,2,255,255,249,64,111,255,255,208,0,47,255,255,240,127,255,248,2,248,1,191,255,208,63,254,64,3,248,0,1,191,128,30,64,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,1,255,255,244,0,0,0,0,0,7,255,255,253,0,0,0,0,0,47,243,248,255,128,0,0,0,1,255,195,248,63,244,0,0,0,11,254,3,248,15,255,64,0,0,191,248,3,248,2,255,244,0,27,255,208,3,248,0,127,255,128,255,254,0,3,248,0,7,255,240,191,224,0,3,248,0,0,191,208,62,0,0,3,248,0,0,7,128,0,0,0,3,248,0,0,0,0, + // 0x6765 来 + 101,103,36,36,68,38,1,252,0,0,0,0,170,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,1,85,85,85,255,85,85,85,64,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,0,0,64,0,255,0,1,64,0,0,11,224,0,255,0,3,248,0,0,11,240,0,255,0,11,244,0,0,3,248,0,255,0,15,240,0,0,2,252,0,255,0,47,208,0,0,0,254,0,255,0,63,192,0,0,0,191,0,255,0,191,0,0,0,0,127,0,255,0,254,0,0,0,0,36,0,255,0,44,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,21,85,85,111,255,249,85,85,84,0,0,0,63,255,252,0,0,0,0,0,0,255,255,255,0,0,0,0,0,2,253,255,127,192,0,0,0,0,15,248,255,47,240,0,0,0,0,63,240,255,15,252,0,0,0,0,255,192,255,3,255,0,0,0,7,255,0,255,0,255,208,0,0,47,252,0,255,0,63,248,0,1,255,224,0,255,0,15,255,64,31,255,128,0,255,0,2,255,244,127,253,0,0,255,0,0,127,253,47,224,0,0,255,0,0,15,248,15,64,0,0,255,0,0,1,240,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0, + // 0x677f 板 + 127,103,36,36,68,38,1,252,0,7,224,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,11,224,0,21,85,85,85,80,0,11,224,0,255,255,255,255,252,0,11,224,0,255,255,255,255,252,0,11,224,0,255,255,255,255,252,0,11,224,0,254,0,0,0,0,0,11,224,0,254,0,0,0,0,63,255,255,244,254,0,0,0,0,63,255,255,244,254,0,0,0,0,63,255,255,244,254,0,0,0,0,21,95,245,80,254,0,0,0,0,0,31,224,0,255,255,255,255,224,0,47,224,0,255,255,255,255,244,0,63,240,0,255,255,255,255,240,0,63,252,0,255,248,0,11,240,0,191,254,0,255,252,0,15,224,0,255,255,64,254,252,0,31,208,1,255,255,192,253,254,0,47,192,2,251,235,240,253,127,0,63,128,3,235,227,249,252,63,64,127,64,11,219,225,245,252,47,192,255,0,15,203,224,225,252,31,209,254,0,47,139,224,66,252,15,243,252,0,127,11,224,3,248,7,251,248,0,190,11,224,3,244,3,255,240,0,60,11,224,7,240,0,255,208,0,40,11,224,11,240,0,255,192,0,0,11,224,15,224,2,255,224,0,0,11,224,31,208,11,255,248,0,0,11,224,63,192,47,251,254,0,0,11,224,127,129,255,209,255,208,0,11,224,255,11,255,64,127,253,0,11,225,254,15,253,0,31,253,0,11,224,124,7,224,0,2,244,0,11,224,4,2,64,0,0,96, + // 0x6797 林 + 151,103,36,36,68,38,1,252,0,1,252,0,0,0,190,0,0,0,1,252,0,0,0,254,0,0,0,1,252,0,0,0,254,0,0,0,1,252,0,0,0,254,0,0,0,1,252,0,0,0,254,0,0,0,1,252,0,0,0,254,0,0,0,1,252,0,0,0,254,0,0,0,1,252,0,0,0,254,0,0,21,86,253,85,5,85,255,85,80,63,255,255,255,31,255,255,255,248,63,255,255,255,31,255,255,255,248,63,255,255,255,31,255,255,255,248,0,3,252,0,0,2,255,128,0,0,7,254,0,0,3,255,192,0,0,15,255,128,0,7,255,208,0,0,15,255,224,0,15,255,224,0,0,47,255,244,0,15,255,240,0,0,63,254,253,0,47,255,248,0,0,127,252,255,0,63,255,252,0,0,254,252,127,192,191,254,253,0,1,249,252,47,64,253,254,127,0,3,245,252,14,3,252,254,63,64,11,241,252,4,7,244,254,47,192,15,209,252,0,15,240,254,15,208,63,193,252,0,63,208,254,15,240,191,65,252,0,191,128,254,7,252,127,1,252,2,255,0,254,3,254,44,1,252,3,253,0,254,0,252,20,1,252,0,248,0,254,0,176,0,1,252,0,160,0,254,0,0,0,1,252,0,0,0,254,0,0,0,1,252,0,0,0,254,0,0,0,1,252,0,0,0,254,0,0,0,1,252,0,0,0,254,0,0,0,1,252,0,0,0,254,0,0,0,1,252,0,0,0,190,0,0, + // 0x67f1 柱 + 241,103,36,36,68,38,1,252,0,3,240,0,0,28,0,0,0,0,3,240,0,0,191,64,0,0,0,3,240,0,0,255,224,0,0,0,3,240,0,0,47,252,0,0,0,3,240,0,0,7,255,0,0,0,3,240,0,0,0,255,192,0,0,3,240,0,0,0,63,128,0,0,3,240,0,85,85,95,85,84,63,255,255,252,255,255,255,255,252,63,255,255,252,255,255,255,255,252,63,255,255,252,255,255,255,255,252,21,95,245,84,0,1,253,0,0,0,15,240,0,0,1,253,0,0,0,15,240,0,0,1,253,0,0,0,47,244,0,0,1,253,0,0,0,63,252,0,0,1,253,0,0,0,63,255,0,0,1,253,0,0,0,191,255,192,0,1,253,0,0,0,255,255,224,0,1,253,0,0,1,251,247,244,63,255,255,255,248,3,243,242,253,63,255,255,255,248,7,227,240,253,63,255,255,255,248,15,211,240,120,21,86,254,85,80,47,195,240,32,0,1,253,0,0,63,67,240,0,0,1,253,0,0,191,3,240,0,0,1,253,0,0,61,3,240,0,0,1,253,0,0,40,3,240,0,0,1,253,0,0,0,3,240,0,0,1,253,0,0,0,3,240,0,0,1,253,0,0,0,3,240,0,0,1,253,0,0,0,3,240,15,255,255,255,255,254,0,3,240,15,255,255,255,255,254,0,3,240,15,255,255,255,255,254,0,3,240,5,85,85,85,85,84,0,2,160,0,0,0,0,0,0, + // 0x6821 校 + 33,104,36,36,68,38,1,252,0,6,144,0,0,2,160,0,0,0,11,224,0,0,3,244,0,0,0,11,224,0,0,3,244,0,0,0,11,224,0,0,3,244,0,0,0,11,224,0,0,3,244,0,0,0,11,224,1,85,87,249,85,84,0,11,224,11,255,255,255,255,252,0,11,224,11,255,255,255,255,252,63,255,250,171,255,255,255,255,252,63,255,255,240,0,0,0,0,0,63,255,255,240,7,128,0,180,0,21,95,229,80,15,240,3,252,0,0,31,224,0,31,208,0,255,0,0,47,224,0,63,192,0,127,192,0,63,240,0,255,64,0,47,224,0,63,248,2,254,0,0,15,244,0,191,253,11,252,0,1,67,252,0,255,255,31,251,192,3,253,253,1,255,255,139,207,224,3,248,248,2,255,239,210,7,240,7,244,64,3,235,231,240,3,248,15,240,0,11,219,226,240,2,252,31,224,0,15,203,224,208,0,254,63,192,0,47,139,224,64,0,191,191,64,0,63,11,224,0,0,63,255,0,0,190,11,224,0,0,31,253,0,0,61,11,224,0,0,15,252,0,0,40,11,224,0,0,47,254,0,0,0,11,224,0,0,191,255,128,0,0,11,224,0,2,255,191,240,0,0,11,224,0,31,253,31,253,0,0,11,224,0,191,244,7,255,208,0,11,224,27,255,192,1,255,253,0,11,224,63,253,0,0,63,252,0,11,224,31,224,0,0,11,244,0,11,208,10,0,0,0,0,160, + // 0x683c 格 + 60,104,36,36,68,38,1,252,0,11,224,0,0,121,0,0,0,0,11,224,0,0,255,0,0,0,0,11,224,0,0,254,0,0,0,0,11,224,0,3,252,0,0,0,0,11,224,0,7,255,255,255,64,0,11,224,0,15,255,255,255,128,0,11,224,0,47,255,255,255,64,0,11,224,0,127,192,0,255,0,63,255,255,245,255,208,1,253,0,63,255,255,251,255,240,3,252,0,63,255,255,255,251,248,7,244,0,21,95,245,127,225,253,31,240,0,0,31,224,15,192,255,63,192,0,0,47,244,3,0,63,255,64,0,0,63,252,0,0,31,254,0,0,0,63,255,0,0,15,253,0,0,0,127,255,128,0,127,255,128,0,0,191,255,208,2,255,255,240,0,0,255,231,240,15,255,47,254,0,1,255,227,240,191,248,7,255,224,3,251,225,219,255,208,0,255,254,7,235,224,255,255,0,0,47,252,15,203,224,127,255,255,255,255,248,31,203,224,47,191,255,255,255,144,63,75,224,0,127,255,255,255,128,191,11,224,0,127,0,0,63,128,125,11,224,0,127,0,0,63,128,56,11,224,0,127,0,0,63,128,16,11,224,0,127,0,0,63,128,0,11,224,0,127,0,0,63,128,0,11,224,0,127,0,0,63,128,0,11,224,0,127,255,255,255,128,0,11,224,0,127,255,255,255,128,0,11,224,0,127,255,255,255,128,0,11,224,0,127,0,0,63,128,0,6,144,0,106,0,0,42,64, + // 0x68af 梯 + 175,104,35,36,68,38,1,252,0,11,208,0,1,0,0,36,0,0,11,224,0,63,0,0,127,64,0,11,224,0,63,128,0,255,0,0,11,224,0,31,192,0,254,0,0,11,224,0,15,208,2,252,0,0,11,224,0,11,240,3,248,0,0,11,224,0,7,208,2,240,0,0,11,224,7,255,255,255,255,240,21,95,229,87,255,255,255,255,240,63,255,255,247,255,255,255,255,240,63,255,255,240,0,7,240,7,240,63,255,255,240,0,7,240,7,240,0,15,224,0,0,7,240,7,240,0,31,224,0,0,7,240,7,240,0,63,240,2,255,255,255,255,240,0,63,248,2,255,255,255,255,240,0,127,253,3,255,255,255,255,240,0,191,255,3,244,7,240,0,0,0,255,255,131,240,7,240,0,0,1,255,239,199,240,7,240,0,0,3,255,231,251,240,7,240,0,0,7,219,227,235,255,255,255,255,252,15,203,225,207,255,255,255,255,252,31,139,224,15,255,255,255,255,252,63,75,224,31,192,63,240,2,252,191,11,224,0,0,255,240,2,248,125,11,224,0,2,255,240,2,248,60,11,224,0,11,255,240,3,248,16,11,224,0,63,215,240,3,244,0,11,224,1,255,135,240,7,244,0,11,224,11,254,7,242,255,240,0,11,224,191,248,7,241,255,224,0,11,224,191,208,7,241,255,128,0,11,224,46,0,7,240,0,0,0,11,224,4,0,7,240,0,0,0,11,208,0,0,7,240,0,0, + // 0x68c0 检 + 192,104,36,36,68,38,1,252,0,31,128,0,0,15,128,0,0,0,31,192,0,0,47,192,0,0,0,31,192,0,0,63,192,0,0,0,31,192,0,0,255,240,0,0,0,31,192,0,2,255,248,0,0,0,31,192,0,7,250,254,0,0,0,31,192,0,15,240,191,192,0,63,255,255,64,63,192,47,240,0,63,255,255,64,255,64,11,253,0,63,255,255,67,253,0,2,255,64,21,127,213,31,248,0,0,191,224,0,63,192,191,224,0,0,47,253,0,63,211,255,255,255,255,251,253,0,127,243,254,63,255,255,241,252,0,191,248,244,63,255,255,240,52,0,255,252,64,0,0,0,0,0,1,255,254,0,0,0,0,0,0,2,255,239,64,0,1,0,5,0,3,255,207,193,128,47,0,15,208,7,239,207,79,192,31,64,15,192,15,223,198,11,208,15,128,31,128,31,159,192,3,240,15,192,63,64,63,95,192,3,240,15,192,63,0,127,31,192,2,244,11,192,190,0,126,31,192,1,248,11,208,252,0,60,31,192,0,252,7,225,248,0,24,31,192,0,252,7,227,240,0,0,31,192,0,252,0,3,240,0,0,31,192,0,0,0,11,208,0,0,31,192,0,0,0,15,192,0,0,31,192,0,0,0,47,64,0,0,31,192,255,255,255,255,255,244,0,31,192,255,255,255,255,255,244,0,31,192,255,255,255,255,255,244,0,31,192,0,0,0,0,0,0,0,31,128,0,0,0,0,0,0, + // 0x69fd 槽 + 253,105,36,36,68,38,1,252,0,15,192,0,1,248,31,128,0,0,15,192,0,1,248,31,128,0,0,15,192,0,1,248,31,128,0,0,15,192,63,255,255,255,255,253,0,15,192,63,255,255,255,255,253,0,15,192,63,255,255,255,255,253,0,15,192,0,1,248,31,128,0,0,15,192,0,1,248,31,128,0,21,95,213,15,255,255,255,255,244,63,255,255,207,255,255,255,255,244,63,255,255,207,213,253,111,151,244,63,255,255,207,192,248,31,2,244,0,47,192,15,192,248,31,2,244,0,63,192,15,255,255,255,255,244,0,63,192,15,255,255,255,255,244,0,127,224,15,213,249,111,87,244,0,191,244,15,192,248,31,2,244,0,255,252,15,192,248,31,2,244,1,255,254,15,255,255,255,255,244,3,255,239,79,255,255,255,255,244,3,239,207,197,85,85,85,85,80,11,223,199,192,0,0,0,0,0,15,207,195,1,255,255,255,255,192,47,79,192,1,255,255,255,255,192,63,15,192,1,254,170,170,191,192,190,15,192,1,252,0,0,47,192,60,15,192,1,252,0,0,47,192,40,15,192,1,255,255,255,255,192,0,15,192,1,255,255,255,255,192,0,15,192,1,253,85,85,127,192,0,15,192,1,252,0,0,47,192,0,15,192,1,252,0,0,47,192,0,15,192,1,255,255,255,255,192,0,15,192,1,255,255,255,255,192,0,15,192,1,254,170,170,191,192,0,15,192,1,252,0,0,31,192, + // 0x6a21 模 + 33,106,36,37,77,38,1,251,0,47,128,0,15,208,7,240,0,0,47,128,0,15,208,7,240,0,0,47,128,0,15,208,7,240,0,0,47,128,63,255,255,255,255,248,0,47,128,63,255,255,255,255,248,0,47,128,63,255,255,255,255,248,0,47,128,0,15,208,7,240,0,21,111,213,0,15,208,7,240,0,63,255,255,64,15,208,7,240,0,63,255,255,70,170,170,170,170,128,63,255,255,75,255,255,255,255,192,0,47,128,11,255,255,255,255,192,0,63,192,11,224,0,0,31,192,0,63,208,11,224,0,0,31,192,0,127,240,11,245,85,85,111,192,0,191,248,11,255,255,255,255,192,0,255,253,11,255,255,255,255,192,1,255,255,11,224,0,0,31,192,2,255,175,139,224,0,0,31,192,3,255,143,203,255,255,255,255,192,7,255,139,139,255,255,255,255,192,15,239,130,6,170,175,234,170,128,31,175,128,0,0,31,192,0,0,63,111,128,0,0,47,192,0,0,127,47,128,0,0,47,192,0,0,190,47,128,255,255,255,255,255,252,60,47,128,255,255,255,255,255,252,40,47,128,255,255,255,255,255,252,0,47,128,0,0,255,254,0,0,0,47,128,0,3,252,127,64,0,0,47,128,0,15,248,63,224,0,0,47,128,0,191,224,15,253,0,0,47,128,27,255,128,3,255,228,0,47,130,255,253,0,0,191,253,0,47,128,255,208,0,0,15,248,0,47,128,120,0,0,0,0,176,0,0,0,0,0,0,0,0,0, + // 0x6a59 橙 + 89,106,36,36,68,38,1,252,0,15,208,0,0,0,25,0,0,0,15,208,11,255,244,126,5,0,0,15,208,15,255,252,63,31,64,0,15,208,15,255,252,63,191,128,0,15,208,0,2,244,47,253,0,0,15,208,4,3,240,15,224,32,0,15,208,15,75,240,15,224,248,0,15,208,47,255,208,7,247,253,63,255,255,219,255,192,3,255,244,63,255,255,209,255,64,1,255,192,63,255,255,208,255,255,255,255,0,21,95,229,66,255,255,255,255,128,0,47,208,11,255,255,255,239,224,0,63,208,47,240,0,0,15,252,0,63,224,255,192,0,0,3,255,0,127,244,255,0,0,0,0,252,0,191,252,61,255,255,255,255,96,0,255,255,0,255,255,255,255,64,1,255,255,128,254,170,170,191,64,2,255,223,208,252,0,0,63,64,3,239,215,240,252,0,0,63,64,11,223,210,192,252,0,0,63,64,15,207,208,64,254,170,170,191,64,47,143,208,0,255,255,255,255,64,127,15,208,0,255,255,255,255,64,190,15,208,0,1,0,1,144,0,60,15,208,0,47,64,2,252,0,40,15,208,0,31,192,3,248,0,0,15,208,0,15,192,7,240,0,0,15,208,0,15,208,11,224,0,0,15,208,0,11,224,15,192,0,0,15,208,0,7,128,11,128,0,0,15,208,127,255,255,255,255,253,0,15,208,127,255,255,255,255,253,0,15,208,127,255,255,255,255,253,0,15,208,0,0,0,0,0,0, + // 0x6b62 止 + 98,107,34,34,50,38,2,254,0,0,0,0,106,0,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,21,0,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,255,255,255,0,0,63,128,0,127,255,255,255,0,0,63,128,0,127,255,255,255,0,0,63,128,0,127,170,170,170,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,170,191,234,170,191,170,170,170,160,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x6b63 正 + 99,107,34,32,32,38,2,253,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,21,85,85,85,255,85,85,85,64,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,255,255,252,0,0,63,128,0,255,255,255,252,0,0,63,128,0,255,255,255,252,0,0,63,128,0,255,85,85,84,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,85,85,85,85,85,85,80, + // 0x6b65 步 + 101,107,34,36,68,38,2,252,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,5,64,2,252,0,0,0,0,0,31,192,2,252,0,0,0,0,0,31,192,2,255,255,255,240,0,0,31,192,2,255,255,255,240,0,0,31,192,2,255,255,255,240,0,0,31,192,2,253,85,85,80,0,0,31,192,2,252,0,0,0,0,0,31,192,2,252,0,0,0,0,0,31,192,2,252,0,0,0,0,85,111,213,87,253,85,85,85,80,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,2,252,0,0,0,0,0,2,144,2,252,0,0,0,0,0,7,252,2,252,0,6,0,0,0,15,244,2,252,0,15,240,0,0,63,224,2,252,0,31,224,0,0,255,192,2,252,0,63,208,0,7,255,0,2,252,0,127,192,0,47,252,0,2,252,0,255,64,0,191,240,0,3,252,2,254,0,0,47,192,7,255,248,11,252,0,0,10,0,3,255,244,47,244,0,0,0,0,2,255,144,191,224,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,47,254,0,0,0,0,0,0,2,255,244,0,0,0,0,0,0,127,255,192,0,0,0,0,0,111,255,253,0,0,0,0,2,191,255,255,208,0,0,0,0,2,255,255,249,0,0,0,0,0,0,255,254,64,0,0,0,0,0,0,185,64,0,0,0,0,0,0, + // 0x6bd4 比 + 212,107,36,35,59,38,1,253,0,26,128,0,0,168,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,7,128,0,47,192,0,1,253,0,47,208,0,47,192,0,1,253,1,255,244,0,47,255,255,193,253,31,255,208,0,47,255,255,193,254,255,254,0,0,47,255,255,193,255,255,224,0,0,47,229,85,65,255,253,0,0,0,47,192,0,1,255,144,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,160,0,47,192,0,1,253,0,0,190,0,47,192,0,17,253,0,0,190,0,47,192,91,241,253,0,0,254,0,47,239,255,245,253,0,0,253,1,191,255,255,244,253,0,0,253,127,255,255,254,64,255,85,87,252,63,255,254,64,0,255,255,255,248,63,254,64,0,0,127,255,255,240,25,0,0,0,0,11,255,255,128, + // 0x6ca1 没 + 161,108,35,36,68,38,2,252,1,0,0,0,0,0,0,0,0,3,208,0,1,85,85,85,0,0,15,253,0,15,255,255,255,0,0,11,255,192,15,255,255,255,0,0,1,255,240,15,255,255,255,0,0,0,31,240,15,224,0,127,0,0,0,2,192,15,224,0,127,0,0,0,0,64,15,224,0,127,0,0,0,0,0,15,208,0,127,1,208,0,0,0,31,192,0,127,1,248,0,0,0,63,192,0,127,1,244,61,0,0,191,128,0,127,2,244,255,208,2,255,0,0,127,255,240,255,252,11,253,0,0,63,255,240,31,255,31,248,0,0,11,255,128,1,255,3,208,0,0,0,0,0,0,60,1,64,0,0,0,0,0,0,4,3,255,255,255,255,248,0,0,0,3,255,255,255,255,253,0,0,0,3,255,255,255,255,252,0,0,0,1,87,213,85,91,248,0,0,3,128,15,240,0,15,240,0,0,7,224,7,244,0,47,224,0,0,15,240,3,252,0,127,192,0,0,47,208,1,255,0,255,64,0,0,63,192,0,191,195,254,0,0,0,191,64,0,63,255,252,0,0,0,255,0,0,15,255,240,0,0,2,253,0,0,7,255,192,0,0,3,252,0,0,47,255,244,0,0,11,244,0,2,255,255,255,64,0,31,240,1,191,255,199,255,249,0,63,208,111,255,253,0,191,255,244,47,192,63,255,208,0,31,255,240,7,0,47,248,0,0,0,191,208,0,0,13,0,0,0,0,2,128, + // 0x6ce2 波 + 226,108,35,36,68,38,1,252,0,0,0,0,0,47,128,0,0,0,244,0,0,0,47,192,0,0,3,255,0,0,0,47,192,0,0,3,255,224,0,0,47,192,0,0,0,127,252,0,0,47,192,0,0,0,11,248,21,85,111,213,85,64,0,1,240,191,255,255,255,255,252,0,0,0,191,255,255,255,255,252,0,0,0,191,255,255,255,255,248,0,0,0,191,0,47,192,7,240,0,0,0,191,0,47,192,15,240,14,0,0,191,0,47,192,15,208,63,224,0,191,0,47,192,47,192,127,254,0,191,0,47,192,7,64,11,255,192,191,0,47,192,0,0,0,191,128,191,255,255,255,255,64,0,31,0,191,255,255,255,255,128,0,0,0,191,255,255,255,255,64,0,0,0,191,191,0,0,191,0,0,0,0,190,63,0,0,254,0,0,0,0,254,63,128,2,253,0,0,3,64,254,31,192,3,252,0,0,7,224,253,15,240,7,244,0,0,15,240,253,7,248,15,240,0,0,15,224,252,2,253,63,208,0,0,47,193,252,0,255,191,128,0,0,63,130,252,0,127,255,0,0,0,191,3,248,0,47,253,0,0,0,255,7,244,0,47,253,0,0,2,253,11,240,0,255,255,128,0,3,252,15,224,7,255,255,244,0,11,244,31,208,127,253,47,255,64,31,240,63,203,255,240,7,255,248,31,208,191,79,255,128,0,191,252,3,192,127,7,248,0,0,11,240,0,0,5,2,128,0,0,0,160, + // 0x6ce8 注 + 232,108,36,36,68,38,1,252,0,64,0,0,6,0,0,0,0,0,253,0,0,31,208,0,0,0,3,255,192,0,63,252,0,0,0,1,255,248,0,31,255,128,0,0,0,47,254,0,2,255,240,0,0,0,2,252,0,0,127,252,0,0,0,0,120,0,0,15,253,0,0,0,0,0,0,0,2,248,0,0,0,0,0,85,85,85,245,85,80,0,0,0,255,255,255,255,255,248,0,0,0,255,255,255,255,255,248,14,0,0,255,255,255,255,255,248,63,244,0,0,0,47,192,0,0,127,255,0,0,0,47,192,0,0,11,255,208,0,0,47,192,0,0,0,191,192,0,0,47,192,0,0,0,15,64,0,0,47,192,0,0,0,1,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,5,85,111,213,85,64,0,0,0,31,255,255,255,255,208,0,0,112,31,255,255,255,255,208,0,0,252,31,255,255,255,255,208,0,1,253,0,0,47,192,0,0,0,3,252,0,0,47,192,0,0,0,11,244,0,0,47,192,0,0,0,15,240,0,0,47,192,0,0,0,47,208,0,0,47,192,0,0,0,127,192,0,0,47,192,0,0,0,255,64,0,0,47,192,0,0,2,254,0,0,0,47,192,0,0,3,252,3,255,255,255,255,255,253,15,248,3,255,255,255,255,255,253,3,240,3,255,255,255,255,255,253,0,208,1,85,85,85,85,85,84,0,0,0,0,0,0,0,0,0, + // 0x6d17 洗 + 23,109,35,36,68,38,2,252,1,0,0,0,0,127,0,0,0,11,208,0,15,224,127,0,0,0,31,248,0,15,224,127,0,0,0,11,255,64,31,208,127,0,0,0,1,255,208,47,192,127,0,0,0,0,47,208,63,192,127,0,0,0,0,7,64,63,255,255,255,255,192,0,0,0,127,255,255,255,255,192,0,0,0,255,255,255,255,255,192,0,0,1,254,85,191,85,85,64,16,0,2,252,0,127,0,0,0,125,0,7,248,0,127,0,0,0,255,192,15,244,0,127,0,0,0,255,244,15,240,0,127,0,0,0,47,254,1,192,0,127,0,0,0,3,255,0,0,0,127,0,0,0,0,188,15,255,255,255,255,255,244,0,20,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,5,85,255,85,254,85,80,0,0,0,0,254,0,252,0,0,0,14,0,0,253,0,252,0,0,0,15,192,0,253,0,252,0,0,0,47,192,1,252,0,252,0,0,0,63,128,2,252,0,252,0,0,0,191,0,3,252,0,252,0,0,0,254,0,3,248,0,252,0,64,2,252,0,11,240,0,252,0,244,3,252,0,15,240,0,252,0,252,11,244,0,63,208,0,252,0,252,15,240,0,255,192,0,253,1,252,47,208,7,255,0,0,253,2,248,63,192,127,252,0,0,255,255,244,47,64,127,240,0,0,191,255,240,7,0,47,128,0,0,47,255,192,0,0,8,0,0,0,0,0,0, + // 0x6d3b 活 + 59,109,35,36,68,38,2,252,0,0,0,0,0,0,0,36,0,3,192,0,0,0,0,27,253,0,15,248,0,0,1,107,255,255,0,15,255,128,26,255,255,255,254,0,2,255,240,255,255,255,254,64,0,0,47,240,127,255,255,64,0,0,0,7,208,62,148,63,0,0,0,0,0,64,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,16,0,1,85,85,127,149,85,80,62,0,11,255,255,255,255,255,244,255,224,11,255,255,255,255,255,244,127,253,11,255,255,255,255,255,244,11,255,64,0,0,63,0,0,0,0,254,0,0,0,63,0,0,0,0,28,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,127,64,0,0,0,3,64,63,255,255,255,255,0,0,7,208,63,255,255,255,255,0,0,15,240,63,255,255,255,255,0,0,31,208,63,0,0,0,127,0,0,63,192,63,0,0,0,127,0,0,191,64,63,0,0,0,127,0,0,255,0,63,0,0,0,127,0,2,253,0,63,0,0,0,127,0,7,252,0,63,0,0,0,127,0,15,244,0,63,0,0,0,127,0,47,224,0,63,255,255,255,255,0,127,192,0,63,255,255,255,255,0,63,128,0,63,255,255,255,255,0,11,0,0,63,64,0,0,127,0,0,0,0,63,0,0,0,42,0, + // 0x6d41 流 + 65,109,35,36,68,38,2,252,1,0,0,0,0,253,0,0,0,7,224,0,0,0,253,0,0,0,15,254,0,0,0,253,0,0,0,11,255,192,0,0,253,0,0,0,0,191,240,0,0,253,0,0,0,0,31,235,255,255,255,255,255,240,0,2,203,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,0,0,63,208,0,0,0,0,0,0,0,63,192,7,0,0,0,0,0,0,127,0,47,208,0,125,0,0,0,254,0,15,240,0,255,208,0,1,252,0,3,252,0,255,253,0,3,254,171,255,255,0,31,255,7,255,255,255,255,255,192,1,254,7,255,255,255,255,255,224,0,44,3,255,250,149,80,15,240,0,0,1,0,0,0,0,3,208,0,0,0,26,64,84,6,145,0,0,0,0,47,128,252,11,224,0,0,1,0,47,128,252,11,224,0,0,7,128,47,128,252,11,224,0,0,15,224,47,128,252,11,224,0,0,31,224,47,128,252,11,224,0,0,63,192,47,64,252,11,224,0,0,127,128,63,64,252,11,224,0,0,255,0,63,64,252,11,224,0,1,254,0,127,0,252,11,224,64,3,252,0,191,0,252,11,224,180,7,248,0,254,0,252,11,224,184,15,240,2,252,0,252,11,224,248,47,224,11,248,0,252,11,224,248,63,192,31,240,0,252,11,255,244,47,128,63,208,0,252,3,255,240,7,0,31,64,0,0,1,255,208,0,0,5,0,0,0,0,0,0, + // 0x6d4b 测 + 75,109,34,36,68,38,2,252,1,0,0,0,0,0,0,1,64,15,208,0,0,0,0,0,11,208,47,252,10,170,170,164,0,11,208,11,255,143,255,255,252,5,11,208,1,255,223,255,255,252,47,11,208,0,47,79,128,0,252,47,11,208,0,9,15,128,0,252,47,11,208,0,0,15,129,64,252,47,11,208,0,0,15,131,208,252,47,11,208,0,0,15,131,208,252,47,11,208,0,0,15,131,208,252,47,11,208,61,0,15,131,208,252,47,11,208,255,128,15,131,208,252,47,11,208,255,244,15,131,208,252,47,11,208,31,253,15,131,208,252,47,11,208,2,252,15,131,208,252,47,11,208,0,112,15,131,208,252,47,11,208,0,0,15,131,208,252,47,11,208,0,0,15,131,208,252,47,11,208,0,0,15,131,208,252,47,11,208,0,0,15,131,208,252,47,11,208,0,32,15,131,208,252,47,11,208,0,125,15,135,208,252,47,11,208,0,255,15,135,208,252,47,11,208,0,253,15,135,208,252,47,11,208,1,252,15,135,192,252,47,11,208,3,252,15,139,192,252,47,11,208,3,244,0,15,192,0,0,11,208,11,240,0,31,72,0,0,11,208,15,224,0,63,127,0,0,11,208,31,208,0,190,47,128,0,11,208,63,192,2,252,15,224,0,11,208,127,128,11,240,3,244,0,11,208,191,0,127,208,0,252,31,255,192,30,0,127,0,0,125,15,255,128,0,0,36,0,0,32,11,249,0, + // 0x6d88 消 + 136,109,34,37,77,38,2,251,1,0,0,0,0,127,0,0,0,7,192,0,20,0,127,0,9,0,31,248,1,252,0,127,0,31,208,15,255,64,254,0,127,0,63,192,1,255,208,191,64,127,0,63,128,0,63,224,63,192,127,0,191,0,0,11,128,47,208,127,1,254,0,0,1,0,15,240,127,3,252,0,0,0,0,11,224,127,3,244,0,0,0,0,2,0,127,0,96,0,0,0,0,0,0,127,0,0,0,56,0,0,191,255,255,255,255,0,255,128,0,191,255,255,255,255,0,255,244,0,191,255,255,255,255,0,31,254,0,191,85,85,85,191,0,2,255,0,191,0,0,0,127,0,0,125,0,191,0,0,0,127,0,0,24,0,191,0,0,0,127,0,0,0,0,191,255,255,255,255,0,0,0,0,191,255,255,255,255,0,0,0,0,191,255,255,255,255,0,0,7,0,191,0,0,0,127,0,0,15,192,191,0,0,0,127,0,0,15,208,191,0,0,0,127,0,0,47,192,191,0,0,0,127,0,0,63,128,191,255,255,255,255,0,0,191,0,191,255,255,255,255,0,0,254,0,191,255,255,255,255,0,2,253,0,191,0,0,0,127,0,3,252,0,191,0,0,0,127,0,11,244,0,191,0,0,0,127,0,15,240,0,191,0,0,0,127,0,63,208,0,191,0,0,80,191,0,63,192,0,191,0,1,255,255,0,15,64,0,191,0,0,255,254,0,2,0,0,191,0,0,191,228,0,0,0,0,0,0,0,0,0,0, + // 0x6de1 淡 + 225,109,36,35,59,38,1,253,0,0,0,0,0,47,128,0,0,0,224,0,0,0,47,128,0,0,3,254,0,1,0,63,128,4,0,7,255,208,11,240,63,128,31,208,0,191,248,15,208,63,128,63,192,0,15,252,31,192,63,64,127,128,0,1,240,47,128,63,64,255,0,0,0,64,127,64,127,2,252,0,0,0,0,255,0,191,3,244,0,0,0,0,124,0,255,209,224,0,0,0,0,0,2,255,252,0,0,14,0,0,0,7,255,255,128,0,63,208,0,0,31,244,255,248,0,127,253,0,0,191,224,31,255,0,11,255,128,31,255,128,2,255,224,0,255,194,255,253,0,0,63,240,0,31,0,255,208,63,128,11,208,0,0,0,121,0,63,128,1,128,0,0,0,0,0,63,128,0,0,0,0,0,11,144,63,64,15,144,0,2,0,15,208,63,64,31,240,0,3,208,31,192,63,64,63,192,0,11,240,63,128,127,192,127,128,0,15,240,127,64,191,192,255,0,0,47,208,255,0,255,226,253,0,0,63,194,253,1,255,247,248,0,0,191,64,184,3,255,252,160,0,0,255,0,0,11,250,254,0,0,2,254,0,0,31,240,255,64,0,7,252,0,0,191,208,127,224,0,15,244,0,11,255,128,31,253,0,31,240,6,255,253,0,7,255,228,15,208,15,255,240,0,0,255,253,2,192,7,255,64,0,0,31,244,0,0,2,144,0,0,0,0,160, + // 0x6df7 混 + 247,109,35,36,68,38,2,252,1,0,0,0,0,0,0,0,0,7,208,0,0,0,0,0,0,0,15,252,2,255,255,255,255,254,0,31,255,130,255,255,255,255,254,0,1,255,226,255,255,255,255,254,0,0,47,194,248,0,0,0,190,0,0,3,66,248,0,0,0,190,0,0,0,2,254,170,170,170,254,0,0,0,2,255,255,255,255,254,0,0,0,2,255,255,255,255,254,0,16,0,2,248,0,0,0,190,0,126,0,2,248,0,0,0,190,0,255,224,2,248,0,0,0,190,0,255,252,2,255,255,255,255,254,0,31,254,2,255,255,255,255,254,0,1,252,2,255,255,255,255,254,0,0,52,0,0,0,0,0,0,0,0,0,0,84,0,1,80,0,0,0,0,1,252,0,11,240,0,0,0,0,1,252,0,11,240,0,0,0,0,1,252,0,11,240,7,0,0,14,1,252,0,11,240,47,192,0,31,193,255,255,219,242,255,224,0,47,193,255,255,219,255,255,64,0,63,129,255,255,219,255,244,0,0,191,1,252,0,11,255,64,0,0,254,1,252,0,11,244,0,0,2,253,1,252,0,11,240,0,0,3,252,1,252,0,11,240,1,208,11,244,1,252,0,75,240,1,248,15,240,1,254,191,219,240,2,244,47,208,91,255,255,219,240,3,244,63,192,191,255,255,215,255,255,240,63,128,127,255,148,3,255,255,224,11,0,58,64,0,1,255,255,128,0,0,0,0,0,0,0,0,0, + // 0x6e05 清 + 5,110,36,37,77,38,1,251,0,128,0,0,0,47,128,0,0,2,253,0,0,0,63,128,0,0,7,255,192,106,170,191,234,170,160,0,255,244,255,255,255,255,255,240,0,31,252,255,255,255,255,255,240,0,3,240,0,0,63,128,0,0,0,0,160,0,0,63,128,0,0,0,0,0,63,255,255,255,255,208,0,0,0,63,255,255,255,255,208,0,0,0,21,85,127,213,85,64,0,0,0,0,0,63,128,0,0,14,0,0,0,0,63,128,0,0,63,224,3,255,255,255,255,255,253,127,254,3,255,255,255,255,255,253,11,255,194,170,170,170,170,170,169,0,191,192,0,0,0,0,0,0,0,31,0,6,170,170,170,170,64,0,1,0,11,255,255,255,255,128,0,0,0,11,255,255,255,255,128,0,0,0,11,224,0,0,47,128,0,0,0,11,224,0,0,47,128,0,0,208,11,229,85,85,127,128,0,2,244,11,255,255,255,255,128,0,3,248,11,255,255,255,255,128,0,11,244,11,224,0,0,47,128,0,15,240,11,224,0,0,47,128,0,47,208,11,229,85,85,127,128,0,63,192,11,255,255,255,255,128,0,191,64,11,255,255,255,255,128,0,255,0,11,224,0,0,47,128,2,253,0,11,224,0,0,47,128,7,252,0,11,224,0,0,47,128,15,244,0,11,224,0,0,63,128,15,240,0,11,224,0,127,255,128,3,208,0,11,224,0,63,255,0,0,64,0,11,224,0,47,249,0,0,0,0,0,0,0,0,0,0, + // 0x6e29 温 + 41,110,35,35,59,38,2,252,3,208,0,0,0,0,0,0,0,11,253,0,191,255,255,255,252,0,11,255,192,191,255,255,255,252,0,1,255,244,191,255,255,255,252,0,0,31,240,190,0,0,2,252,0,0,2,208,190,0,0,2,252,0,0,0,0,190,0,0,2,252,0,0,0,0,191,255,255,255,252,0,0,0,0,191,255,255,255,252,0,0,0,0,191,255,255,255,252,0,36,0,0,190,0,0,2,252,0,191,64,0,190,0,0,2,252,0,255,240,0,190,0,0,2,252,0,127,254,0,191,255,255,255,252,0,7,255,0,191,255,255,255,252,0,0,189,0,191,255,255,255,252,0,0,24,0,0,0,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,255,255,255,255,255,0,0,6,3,255,255,255,255,255,0,0,15,195,255,255,255,255,255,0,0,31,211,244,47,3,224,63,0,0,63,195,244,47,3,224,63,0,0,127,67,244,47,3,224,63,0,0,255,3,244,47,3,224,63,0,1,253,3,244,47,3,224,63,0,3,252,3,244,47,3,224,63,0,11,244,3,244,47,3,224,63,0,15,240,3,244,47,3,224,63,0,47,208,3,244,47,3,240,127,0,127,192,255,255,255,255,255,255,244,63,64,255,255,255,255,255,255,244,11,0,255,255,255,255,255,255,244,0,0,0,0,0,0,0,0,0, + // 0x6e38 游 + 56,110,35,37,77,38,2,251,0,0,0,63,64,1,164,0,0,15,128,0,63,64,2,252,0,0,47,244,0,63,64,3,248,0,0,31,255,0,63,64,3,244,0,0,2,255,128,63,64,7,240,0,0,0,127,0,63,64,11,255,255,244,0,13,255,255,255,207,255,255,244,0,0,255,255,255,239,255,255,244,0,0,255,255,255,255,213,85,80,0,0,87,249,85,191,64,0,0,0,0,3,244,0,255,0,0,0,61,0,3,244,1,254,0,0,0,255,208,3,240,0,127,255,255,208,255,248,3,240,0,11,255,255,240,31,253,3,244,0,7,255,255,224,2,248,3,255,255,64,0,63,192,0,48,3,255,255,64,0,191,0,0,0,7,255,255,64,6,253,0,0,0,7,240,63,64,15,244,0,0,0,11,240,63,0,15,224,0,0,0,11,224,63,0,15,208,0,0,160,11,224,63,63,255,255,244,0,253,15,208,63,63,255,255,244,0,253,15,192,63,63,255,255,244,2,252,15,192,63,0,15,224,0,3,248,31,192,63,0,15,208,0,7,244,47,128,63,0,15,208,0,11,240,63,64,127,0,15,208,0,15,224,127,0,127,0,15,208,0,31,208,254,0,127,0,15,208,0,47,193,252,0,190,0,15,208,0,63,131,252,0,254,0,15,208,0,191,71,244,1,253,0,15,208,0,255,15,224,255,252,15,255,208,0,46,7,192,191,248,15,255,192,0,0,1,64,127,224,11,254,0,0,0,0,0,0,0,0,0,0,0, + // 0x6e90 源 + 144,110,35,37,77,38,2,251,1,0,0,0,0,0,0,0,0,11,208,0,0,0,0,0,0,0,31,253,3,255,255,255,255,255,240,11,255,131,255,255,255,255,255,240,1,255,211,255,255,255,255,255,240,0,47,131,244,0,11,244,0,0,0,7,3,240,0,11,240,0,0,0,0,3,240,0,15,240,0,0,0,0,3,240,0,15,208,0,0,0,0,3,240,255,255,255,255,192,0,0,3,240,255,255,255,255,192,61,0,3,240,254,170,170,191,192,255,192,3,240,252,0,0,47,192,255,248,7,240,252,0,0,47,192,31,254,7,240,254,85,85,127,192,2,252,7,240,255,255,255,255,192,0,116,7,240,255,255,255,255,192,0,0,7,240,252,0,0,47,192,0,0,7,240,252,0,0,47,192,0,0,11,240,252,0,0,47,192,0,0,11,240,255,255,255,255,192,0,40,15,224,255,255,255,255,192,0,63,15,224,170,175,250,170,64,0,127,15,208,0,11,240,0,0,0,255,15,208,16,11,240,24,0,1,253,31,192,127,11,240,254,0,2,252,47,192,254,11,240,191,0,3,248,63,129,252,11,240,63,192,11,244,63,67,252,11,240,47,208,15,240,191,7,244,11,240,15,240,31,208,255,15,224,11,240,11,244,63,193,253,63,192,11,240,3,248,127,131,252,31,64,11,240,2,224,191,11,244,2,11,255,224,0,0,14,7,240,0,3,255,208,0,0,0,0,80,0,3,254,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x6ea2 溢 + 162,110,35,36,68,38,2,252,2,0,0,0,0,0,0,0,0,11,224,0,0,15,255,253,0,0,31,253,0,5,15,255,255,0,0,11,255,128,15,223,255,255,64,0,0,255,192,47,192,0,63,192,0,0,47,64,127,128,0,31,224,0,0,6,0,255,0,0,11,248,0,0,0,3,253,0,0,3,255,0,0,0,15,251,255,255,255,255,224,0,0,63,227,255,255,254,63,224,0,0,31,131,255,255,253,11,128,61,0,6,0,0,0,0,1,0,255,208,0,0,0,0,0,0,0,255,248,0,0,15,255,255,0,0,31,254,0,0,15,255,255,64,0,2,252,0,10,79,255,255,192,0,0,112,0,31,208,0,31,208,0,0,0,0,63,192,0,15,240,0,0,0,0,255,0,0,11,248,0,0,0,2,254,0,0,3,254,0,0,0,7,252,0,0,0,255,192,0,0,31,240,0,0,0,127,244,0,56,191,255,255,255,255,255,240,0,127,127,255,255,255,255,255,192,0,255,29,255,255,255,255,252,0,0,254,0,248,47,7,192,252,0,2,252,0,248,47,7,192,252,0,3,252,0,248,47,7,192,252,0,7,244,0,248,47,7,192,252,0,15,240,0,248,47,7,192,252,0,31,224,0,248,47,7,192,252,0,47,192,1,248,47,7,208,252,0,63,192,255,255,255,255,255,255,244,191,64,255,255,255,255,255,255,244,31,0,255,255,255,255,255,255,244,0,0,0,0,0,0,0,0,0, + // 0x6ed1 滑 + 209,110,35,36,68,38,1,252,0,144,0,0,0,0,0,0,0,2,253,0,7,255,255,255,253,0,3,255,192,11,255,255,255,253,0,0,255,248,11,255,255,255,253,0,0,31,252,11,224,0,0,253,0,0,3,244,11,224,0,0,253,0,0,0,176,11,224,21,85,253,0,0,0,0,11,224,63,255,253,0,0,0,0,11,224,63,255,253,0,0,0,0,11,224,62,0,253,0,0,0,0,11,224,62,0,253,0,14,0,0,11,224,62,0,253,0,63,224,7,255,255,255,255,255,252,127,254,7,255,255,255,255,255,252,11,255,199,250,170,170,170,171,252,0,191,135,240,0,0,0,1,252,0,15,7,240,0,0,0,1,252,0,0,7,251,255,255,255,254,252,0,0,2,171,255,255,255,254,168,0,0,0,11,255,255,255,253,0,0,0,0,11,224,0,0,253,0,0,0,208,11,224,0,0,253,0,0,2,248,11,255,255,255,253,0,0,7,248,11,255,255,255,253,0,0,15,240,11,250,170,170,253,0,0,31,224,11,224,0,0,253,0,0,63,192,11,224,0,0,253,0,0,127,128,11,255,255,255,253,0,0,255,0,11,255,255,255,253,0,1,254,0,11,250,170,170,253,0,3,252,0,11,224,0,0,253,0,11,248,0,11,224,0,0,253,0,15,240,0,11,224,0,0,253,0,11,224,0,11,224,1,255,253,0,1,192,0,11,224,0,255,252,0,0,0,0,10,144,0,170,144,0, + // 0x6f0f 漏 + 15,111,34,36,68,38,2,252,6,0,0,0,0,0,0,0,0,15,208,11,255,255,255,255,255,128,63,252,15,255,255,255,255,255,128,11,255,143,255,255,255,255,255,128,1,255,207,208,0,0,0,47,128,0,63,15,208,0,0,0,47,128,0,14,15,208,0,0,0,47,128,0,0,15,208,0,0,0,47,128,0,0,15,255,255,255,255,255,128,0,0,15,255,255,255,255,255,128,0,0,15,255,255,255,255,255,128,36,0,15,208,0,0,0,0,0,191,64,15,208,0,0,0,0,0,255,244,15,255,255,255,255,255,240,47,255,15,255,255,255,255,255,240,3,253,15,255,255,255,255,255,224,0,120,15,208,0,15,128,0,0,0,0,15,208,0,15,128,0,0,0,0,15,234,170,191,234,170,128,0,0,15,255,255,255,255,255,208,0,0,15,255,255,255,255,255,208,0,112,31,239,0,15,128,11,208,0,189,31,239,4,15,136,11,208,0,254,47,175,126,15,175,75,208,1,252,47,175,47,223,159,219,208,3,252,63,111,11,223,131,219,208,3,248,63,47,1,79,128,139,208,7,240,127,47,0,15,132,11,208,15,240,190,47,60,15,174,11,208,31,208,253,47,127,15,175,139,208,47,193,252,47,31,223,139,219,208,63,130,252,47,7,223,130,139,208,191,67,244,47,0,15,128,11,208,255,11,240,47,0,15,129,95,208,45,2,208,47,0,15,130,255,192,0,0,64,47,0,15,129,254,64, + // 0x6fc0 激 + 192,111,35,37,77,38,2,251,0,0,0,14,128,0,248,0,0,11,128,0,31,208,0,253,0,0,31,244,0,47,192,0,252,0,0,31,254,0,63,128,1,252,0,0,2,255,175,255,255,194,252,0,0,0,127,47,255,255,194,248,0,0,0,13,47,170,175,195,244,0,0,0,0,47,0,15,195,255,255,248,0,0,47,0,15,199,255,255,248,0,0,47,255,255,203,255,255,248,0,0,47,255,255,207,224,47,192,61,0,47,149,95,223,224,47,128,255,192,47,0,15,255,224,47,64,255,244,47,0,15,255,240,63,64,31,252,47,255,255,255,240,63,0,2,248,47,255,255,255,240,63,0,0,112,26,191,234,254,244,63,0,0,0,0,31,192,56,248,126,0,0,0,0,31,192,0,252,190,0,0,0,255,255,255,244,188,253,0,0,0,255,255,255,244,125,252,0,0,52,255,255,255,244,63,252,0,0,126,0,252,0,0,63,248,0,0,191,0,252,0,0,47,240,0,0,253,1,255,255,192,15,240,0,2,252,1,255,255,192,15,208,0,3,252,2,255,255,192,31,240,0,7,244,3,244,15,192,63,244,0,11,240,3,240,31,192,191,252,0,15,224,11,240,31,129,254,254,0,47,208,15,208,31,135,252,191,64,63,192,63,192,47,159,244,63,208,127,128,191,64,63,191,224,31,240,191,2,254,31,255,255,192,11,248,14,3,252,15,255,191,0,2,240,0,0,224,10,164,28,0,0,128,0,0,0,0,0,0,0,0,0, + // 0x706f 灯 + 111,112,35,36,68,38,2,252,0,10,144,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,3,255,255,255,255,244,0,15,208,3,255,255,255,255,244,0,15,208,3,255,255,255,255,244,0,15,208,1,85,85,255,149,80,0,15,208,144,0,0,191,0,0,47,15,208,252,0,0,191,0,0,47,15,209,248,0,0,191,0,0,47,15,210,244,0,0,191,0,0,63,15,211,240,0,0,191,0,0,63,15,215,224,0,0,191,0,0,63,15,219,192,0,0,191,0,0,126,15,223,128,0,0,191,0,0,125,15,235,0,0,0,191,0,0,188,15,208,0,0,0,191,0,0,252,15,208,0,0,0,191,0,0,20,15,192,0,0,0,191,0,0,0,31,192,0,0,0,191,0,0,0,31,192,0,0,0,191,0,0,0,47,192,0,0,0,191,0,0,0,63,224,0,0,0,191,0,0,0,63,248,0,0,0,191,0,0,0,127,254,0,0,0,191,0,0,0,191,191,128,0,0,191,0,0,0,255,47,224,0,0,191,0,0,1,254,15,248,0,0,191,0,0,3,252,3,252,0,0,191,0,0,7,248,1,240,0,0,191,0,0,15,240,0,144,0,0,191,0,0,63,224,0,0,0,0,191,0,0,191,192,0,0,31,255,255,0,0,255,64,0,0,15,255,255,0,0,61,0,0,0,11,255,252,0,0,8,0,0,0,6,170,64,0,0, + // 0x70b9 点 + 185,112,34,36,68,38,2,252,0,0,0,3,244,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,255,255,255,255,64,0,0,0,3,255,255,255,255,64,0,0,0,3,255,255,255,255,64,0,0,0,3,249,85,85,85,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,21,85,87,249,85,85,64,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,254,0,0,0,0,15,240,0,0,254,0,0,0,0,15,240,0,0,254,0,0,0,0,15,240,0,0,254,0,0,0,0,15,240,0,0,254,0,0,0,0,15,240,0,0,254,0,0,0,0,15,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,21,85,85,85,85,85,64,0,0,0,0,0,0,0,0,0,0,0,80,0,0,0,0,1,160,0,0,254,2,160,6,240,11,240,0,2,253,3,240,7,244,3,252,0,3,252,3,244,3,248,1,254,0,11,244,3,248,1,252,0,255,0,31,240,3,248,0,254,0,63,192,63,208,2,252,0,255,0,47,208,255,128,2,252,0,127,0,15,240,191,0,2,252,0,62,0,11,208,8,0,1,64,0,16,0,1,0, + // 0x70ed 热 + 237,112,35,37,77,38,2,251,0,10,128,0,3,244,0,0,0,0,15,192,0,3,244,0,0,0,0,15,192,0,3,244,0,0,0,0,15,192,0,3,244,0,0,0,0,15,192,0,3,244,0,0,0,21,95,213,64,3,244,0,0,0,127,255,255,223,255,255,255,240,0,127,255,255,223,255,255,255,240,0,127,255,255,223,255,255,255,240,0,0,15,192,0,3,240,7,240,0,0,15,192,0,3,240,7,240,0,0,15,192,0,7,240,7,240,0,0,15,192,80,7,240,7,240,0,0,15,255,210,11,224,7,240,0,1,191,255,231,239,224,7,224,0,191,255,255,223,255,208,7,224,0,255,255,228,3,255,208,7,224,0,255,239,192,0,127,244,7,240,0,184,15,192,0,63,255,7,240,0,0,15,192,0,191,255,211,240,128,0,15,192,0,255,63,227,240,248,0,15,192,3,253,11,195,240,248,0,15,192,15,248,1,66,249,248,31,255,192,127,240,0,1,255,244,15,255,192,191,192,0,0,255,240,11,254,0,46,0,0,0,47,192,0,0,0,4,0,0,0,0,0,0,164,0,0,0,0,0,176,0,1,254,2,240,7,240,7,244,0,3,252,3,244,3,248,3,252,0,7,244,3,248,2,252,1,255,0,15,240,2,248,1,253,0,191,128,47,208,2,252,0,254,0,63,192,127,192,2,252,0,255,0,31,240,255,0,1,252,0,191,0,15,240,29,0,1,144,0,16,0,7,64,0,0,0,0,0,0,0,0,0, + // 0x7247 片 + 71,114,32,37,40,38,2,251,0,0,0,0,7,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,234,170,170,170,170,170,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,0,0,0,0,0,0,0,191,170,170,170,170,168,0,0,191,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,254,0,0,0,3,252,0,1,254,0,0,0,3,252,0,2,253,0,0,0,3,252,0,3,252,0,0,0,3,252,0,7,252,0,0,0,3,252,0,11,244,0,0,0,3,252,0,15,240,0,0,0,3,252,0,47,224,0,0,0,3,252,0,127,192,0,0,0,3,252,0,255,128,0,0,0,3,252,0,255,0,0,0,0,3,252,0,61,0,0,0,0,3,252,0,24,0,0,0,0,3,252,0,0,0,0,0,0,0,0,0, + // 0x7269 物 + 105,114,35,36,68,38,1,252,0,2,244,0,2,144,0,0,0,0,2,248,0,7,240,0,0,0,5,66,248,0,11,240,0,0,0,11,210,248,0,15,224,0,0,0,11,210,248,0,15,192,0,0,0,15,194,248,0,31,192,0,0,0,15,194,248,0,63,213,85,85,84,15,194,248,0,63,255,255,255,252,15,255,255,240,191,255,255,255,252,31,255,255,240,255,255,255,255,252,47,255,255,242,252,15,194,249,252,63,87,249,83,248,31,131,245,252,63,2,248,11,240,63,3,241,252,126,2,248,31,224,63,7,241,252,189,2,248,63,192,190,11,226,252,124,2,248,47,64,252,15,210,248,4,2,248,6,2,252,15,194,248,0,2,248,4,3,244,47,130,248,0,2,254,248,7,240,63,67,248,0,7,255,252,15,208,127,3,244,1,191,255,248,63,192,190,3,244,127,255,254,64,127,64,252,3,244,127,255,248,0,254,2,252,3,240,63,230,248,3,252,3,244,3,240,40,2,248,15,244,11,240,7,240,0,2,248,15,224,15,224,7,240,0,2,248,2,128,47,192,11,240,0,2,248,0,0,127,128,11,224,0,2,248,0,0,255,0,15,224,0,2,248,0,3,253,0,15,208,0,2,248,0,15,248,0,31,192,0,2,248,0,47,240,0,63,192,0,2,248,0,255,192,191,255,128,0,2,248,0,127,0,127,255,0,0,2,248,0,12,0,63,253,0,0,2,248,0,0,0,21,64,0, + // 0x7279 特 + 121,114,36,36,68,38,1,252,0,2,248,0,0,3,244,0,0,0,2,248,0,0,3,244,0,0,6,66,248,0,0,3,244,0,0,11,210,248,0,0,3,244,0,0,15,210,248,0,255,255,255,255,224,15,194,248,0,255,255,255,255,224,15,194,248,0,255,255,255,255,224,15,195,248,0,0,7,244,0,0,31,255,255,240,0,3,244,0,0,31,255,255,240,0,3,244,0,0,47,255,255,240,0,3,244,0,0,63,2,248,5,85,87,249,85,84,63,2,248,31,255,255,255,255,253,126,2,248,31,255,255,255,255,253,189,2,248,31,255,255,255,255,253,60,2,248,0,0,0,2,252,0,4,2,248,0,0,0,2,252,0,0,2,248,120,0,0,2,252,0,0,2,255,252,0,0,2,252,0,0,47,255,255,255,255,255,255,252,27,255,255,239,255,255,255,255,252,127,255,248,15,255,255,255,255,252,63,255,248,1,85,85,86,253,84,62,66,248,0,28,0,2,252,0,0,2,248,0,191,0,2,252,0,0,2,248,0,127,192,2,252,0,0,2,248,0,47,224,2,252,0,0,2,248,0,15,244,2,252,0,0,2,248,0,3,252,2,252,0,0,2,248,0,1,248,2,252,0,0,2,248,0,0,208,2,252,0,0,2,248,0,0,0,2,252,0,0,2,248,0,0,9,87,252,0,0,2,248,0,0,11,255,252,0,0,2,248,0,0,7,255,244,0,0,2,248,0,0,3,255,144,0, + // 0x7387 率 + 135,115,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,0,0,0,31,208,0,0,0,0,1,0,0,47,192,0,0,52,0,11,208,0,127,0,64,0,255,0,47,248,5,253,2,244,3,254,0,7,255,31,248,7,240,31,244,0,0,191,239,240,31,208,191,192,0,0,31,67,253,63,128,62,0,0,0,5,0,191,254,0,0,0,0,0,0,0,31,248,96,0,0,0,0,0,144,15,243,244,56,0,0,0,31,224,63,192,253,255,64,0,2,255,240,191,0,191,255,244,0,127,255,191,255,255,255,159,254,0,191,244,63,255,255,255,194,255,192,63,64,63,255,250,159,224,63,208,20,0,0,3,248,3,208,11,64,0,0,0,3,248,1,0,0,0,0,0,0,3,248,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,21,85,85,87,253,85,85,85,80,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0, + // 0x73af 环 + 175,115,35,34,50,38,1,252,0,0,0,5,85,85,85,85,84,127,255,255,15,255,255,255,255,252,127,255,255,15,255,255,255,255,252,127,255,255,15,255,255,255,255,252,0,63,0,0,0,3,248,0,0,0,63,0,0,0,11,244,0,0,0,63,0,0,0,15,240,0,0,0,63,0,0,0,31,224,0,0,0,63,0,0,0,63,192,0,0,0,63,0,0,0,127,192,0,0,0,63,0,0,0,255,198,0,0,5,127,84,0,2,255,239,64,0,63,255,253,0,3,255,255,208,0,63,255,253,0,15,255,223,240,0,63,255,253,0,47,255,199,252,0,0,63,0,0,127,239,194,254,0,0,63,0,0,255,159,192,255,64,0,63,0,3,255,31,192,63,192,0,63,0,15,252,31,192,31,240,0,63,0,63,244,31,192,15,248,0,63,0,127,208,31,192,3,248,0,63,0,31,128,31,192,2,208,0,63,1,6,0,31,192,0,0,0,63,175,0,0,31,192,0,0,0,63,255,0,0,31,192,0,0,6,255,255,0,0,31,192,0,0,127,255,244,0,0,31,192,0,0,127,253,0,0,0,31,192,0,0,63,128,0,0,0,31,192,0,0,16,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0, + // 0x7528 用 + 40,117,33,34,50,38,1,252,0,21,85,85,85,85,85,85,64,0,63,255,255,255,255,255,255,192,0,63,255,255,255,255,255,255,192,0,63,255,255,255,255,255,255,192,0,63,64,0,127,0,0,63,192,0,63,64,0,127,0,0,63,192,0,63,64,0,127,0,0,63,192,0,63,64,0,127,0,0,63,192,0,63,64,0,127,0,0,63,192,0,63,85,85,191,85,85,127,192,0,63,255,255,255,255,255,255,192,0,63,255,255,255,255,255,255,192,0,63,255,255,255,255,255,255,192,0,63,64,0,127,0,0,63,192,0,63,64,0,127,0,0,63,192,0,127,0,0,127,0,0,63,192,0,127,0,0,127,0,0,63,192,0,127,0,0,127,0,0,63,192,0,127,0,0,127,0,0,63,192,0,127,255,255,255,255,255,255,192,0,191,255,255,255,255,255,255,192,0,191,255,255,255,255,255,255,192,0,255,85,85,191,85,85,127,192,0,254,0,0,127,0,0,63,192,1,253,0,0,127,0,0,63,192,2,252,0,0,127,0,0,63,192,3,252,0,0,127,0,0,63,192,7,248,0,0,127,0,0,63,192,11,240,0,0,127,0,0,63,192,31,224,0,0,127,0,0,63,128,63,192,0,0,127,3,255,255,128,127,128,0,0,127,2,255,255,64,31,0,0,0,127,1,255,253,0,5,0,0,0,0,0,85,0,0, + // 0x7535 电 + 53,117,33,36,68,38,4,252,0,0,0,63,64,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,21,85,85,191,213,85,85,64,0,127,255,255,255,255,255,255,192,0,127,255,255,255,255,255,255,192,0,127,255,255,255,255,255,255,192,0,127,64,0,63,128,0,47,192,0,127,64,0,63,128,0,47,192,0,127,64,0,63,128,0,47,192,0,127,64,0,63,128,0,47,192,0,127,64,0,63,128,0,47,192,0,127,255,255,255,255,255,255,192,0,127,255,255,255,255,255,255,192,0,127,255,255,255,255,255,255,192,0,127,64,0,127,128,0,63,192,0,127,64,0,63,128,0,47,192,0,127,64,0,63,128,0,47,192,0,127,64,0,63,128,0,47,192,0,127,64,0,63,128,0,47,192,0,127,255,255,255,255,255,255,192,0,127,255,255,255,255,255,255,192,0,127,255,255,255,255,255,255,192,0,127,149,85,191,213,85,85,64,0,127,64,0,63,128,0,0,56,0,127,64,0,63,128,0,0,63,64,0,0,0,63,128,0,0,63,64,0,0,0,63,128,0,0,127,64,0,0,0,63,128,0,0,191,0,0,0,0,63,208,0,1,255,0,0,0,0,63,255,255,255,254,0,0,0,0,31,255,255,255,252,0,0,0,0,11,255,255,255,244,0,0,0,0,0,90,170,169,64,0, + // 0x7565 略 + 101,117,34,36,68,38,3,252,0,0,0,0,1,224,0,0,0,0,0,0,0,3,252,0,0,0,255,255,255,128,7,244,0,0,0,255,255,255,128,15,240,0,0,0,255,255,255,128,47,255,255,248,0,248,61,15,128,63,255,255,254,0,248,61,15,128,255,255,255,253,0,248,61,15,130,254,0,3,252,0,248,61,15,139,255,0,11,244,0,248,61,15,175,255,192,15,240,0,248,61,15,255,223,224,63,192,0,248,61,15,255,7,244,191,64,0,248,61,15,173,3,254,254,0,0,255,255,255,128,0,255,252,0,0,255,255,255,128,0,63,240,0,0,255,255,255,128,0,255,244,0,0,248,61,15,128,7,255,254,0,0,248,61,15,128,31,253,255,192,0,248,61,15,128,255,240,127,248,0,248,61,15,139,255,128,15,255,128,248,61,15,255,253,0,2,255,240,248,61,15,255,244,0,0,191,208,248,61,15,255,255,255,255,255,128,248,61,15,151,255,255,255,253,0,248,61,15,131,255,255,255,253,0,255,255,255,131,248,0,0,253,0,255,255,255,131,248,0,0,253,0,255,255,255,131,248,0,0,253,0,248,0,0,3,248,0,0,253,0,248,0,0,3,248,0,0,253,0,248,0,0,3,248,0,0,253,0,0,0,0,3,255,255,255,253,0,0,0,0,3,255,255,255,253,0,0,0,0,3,255,255,255,253,0,0,0,0,3,248,0,1,253,0,0,0,0,1,164,0,0,84,0, + // 0x767d 白 + 125,118,28,36,252,38,5,252,0,0,2,233,0,0,0,0,0,3,254,0,0,0,0,0,3,252,0,0,0,0,0,11,248,0,0,0,0,0,15,244,0,0,0,0,0,15,240,0,0,0,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,170,170,170,170,170,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,85,85,85,85,85,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,170,170,170,170,170,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,190,0,0,0,0,0,170, + // 0x7684 的 + 132,118,33,36,68,38,3,252,0,31,144,0,2,228,0,0,0,0,31,208,0,3,248,0,0,0,0,47,192,0,3,244,0,0,0,0,63,128,0,7,240,0,0,0,0,63,64,0,15,240,0,0,0,0,127,0,0,15,208,0,0,0,191,255,255,240,47,255,255,255,64,191,255,255,240,63,255,255,255,64,191,255,255,240,127,255,255,255,64,190,0,7,240,255,0,0,127,0,189,0,7,241,253,0,0,63,0,189,0,7,243,252,0,0,63,0,189,0,7,251,248,0,0,63,0,189,0,7,255,240,0,0,63,0,189,0,7,247,208,0,0,63,0,189,0,7,240,129,128,0,127,0,190,0,7,240,15,208,0,127,0,191,255,255,240,15,240,0,127,0,191,255,255,240,3,252,0,127,0,191,255,255,240,1,254,0,127,0,189,0,7,240,0,191,64,191,0,189,0,7,240,0,63,192,190,0,189,0,7,240,0,31,224,190,0,189,0,7,240,0,15,240,190,0,189,0,7,240,0,7,192,254,0,189,0,7,240,0,1,0,253,0,189,0,7,240,0,0,0,253,0,189,0,7,240,0,0,0,253,0,190,0,7,240,0,0,1,252,0,191,255,255,240,0,0,1,252,0,191,255,255,240,0,0,3,252,0,191,255,255,240,0,0,7,248,0,189,0,0,0,0,255,255,244,0,189,0,0,0,0,191,255,224,0,189,0,0,0,0,127,255,128,0,0,0,0,0,0,5,80,0,0, + // 0x76d1 监 + 209,118,34,35,59,38,2,253,0,0,10,144,0,36,0,0,0,1,80,15,208,0,127,64,0,0,7,240,15,208,0,191,0,0,0,7,240,15,208,0,254,0,0,0,7,240,15,208,0,253,0,0,0,7,240,15,208,2,253,0,0,0,7,240,15,208,3,255,255,255,240,7,240,15,208,7,255,255,255,240,7,240,15,208,11,255,255,255,240,7,240,15,208,15,224,0,0,0,7,240,15,208,63,192,0,0,0,7,240,15,208,127,128,208,0,0,7,240,15,208,255,7,248,0,0,7,240,15,210,254,7,255,0,0,7,240,15,215,252,0,255,192,0,7,240,15,210,240,0,47,244,0,7,240,15,208,80,0,11,253,0,7,240,15,208,0,0,2,253,0,0,0,15,208,0,0,0,180,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,244,0,0,255,255,255,255,255,255,244,0,0,255,255,255,255,255,255,244,0,0,253,1,252,3,244,3,244,0,0,253,1,252,3,244,3,244,0,0,253,1,252,3,244,3,244,0,0,253,1,252,3,244,3,244,0,0,253,1,252,3,244,3,244,0,0,253,1,252,3,244,3,244,0,0,253,1,252,3,244,3,244,0,0,253,1,252,3,248,7,244,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x76f4 直 + 244,118,34,36,68,38,2,252,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,21,85,85,86,254,85,85,85,64,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,0,3,252,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,26,171,254,170,170,144,0,5,80,31,255,255,255,255,224,0,11,240,31,255,255,255,255,224,0,11,240,31,192,0,0,15,224,0,11,240,31,192,0,0,15,224,0,11,240,31,192,0,0,15,224,0,11,240,31,255,255,255,255,224,0,11,240,31,255,255,255,255,224,0,11,240,31,213,85,85,95,224,0,11,240,31,192,0,0,15,224,0,11,240,31,192,0,0,15,224,0,11,240,31,255,255,255,255,224,0,11,240,31,255,255,255,255,224,0,11,240,31,213,85,85,95,224,0,11,240,31,192,0,0,15,224,0,11,240,31,192,0,0,15,224,0,11,240,31,255,255,255,255,224,0,11,240,31,255,255,255,255,224,0,11,240,26,170,170,170,170,144,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,245,85,85,85,85,85,85,80,11,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,240,11,240,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0, + // 0x7701 省 + 1,119,34,37,77,38,2,251,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,1,228,3,248,0,124,0,0,0,7,252,3,248,1,255,64,0,0,15,244,3,248,0,127,224,0,0,63,224,3,248,0,31,252,0,1,255,128,3,248,0,3,255,0,11,254,0,3,248,1,208,255,192,127,248,0,3,248,7,252,47,240,191,208,15,255,248,47,248,15,208,31,64,11,255,244,255,208,2,0,4,0,7,255,155,255,64,0,0,0,0,0,1,191,252,0,0,0,0,0,0,31,255,208,0,0,0,0,0,27,255,254,0,0,0,0,0,22,255,255,208,0,0,0,0,111,255,255,255,255,255,255,224,0,255,255,255,255,255,255,255,224,0,127,255,254,170,170,170,175,224,0,46,67,248,0,0,0,15,224,0,0,3,248,0,0,0,15,224,0,0,3,253,85,85,85,95,224,0,0,3,255,255,255,255,255,224,0,0,3,255,255,255,255,255,224,0,0,3,248,0,0,0,15,224,0,0,3,248,0,0,0,15,224,0,0,3,253,85,85,85,111,224,0,0,3,255,255,255,255,255,224,0,0,3,255,255,255,255,255,224,0,0,3,248,0,0,0,15,224,0,0,3,248,0,0,0,15,224,0,0,3,248,0,0,0,15,224,0,0,3,255,255,255,255,255,224,0,0,3,255,255,255,255,255,224,0,0,3,254,170,170,170,175,224,0,0,3,248,0,0,0,15,208,0,0,0,0,0,0,0,0,0,0, + // 0x7720 眠 + 32,119,34,34,50,38,3,252,255,255,252,15,255,255,255,255,0,255,255,252,15,255,255,255,255,0,255,255,252,15,255,255,255,255,0,252,2,252,15,208,0,0,63,0,252,1,252,15,208,0,0,63,0,252,1,252,15,208,0,0,63,0,252,1,252,15,208,0,0,63,0,252,1,252,15,208,0,0,63,0,255,255,252,15,255,255,255,255,0,255,255,252,15,255,255,255,255,0,255,255,252,15,255,255,255,255,0,252,1,252,15,208,11,224,0,0,252,1,252,15,208,11,224,0,0,252,1,252,15,208,11,240,0,0,252,1,252,15,208,7,240,0,0,252,1,252,15,208,7,240,0,0,255,255,252,15,255,255,255,255,208,255,255,252,15,255,255,255,255,208,255,255,252,15,255,255,255,255,208,252,1,252,15,229,87,249,85,64,252,1,252,15,208,3,248,0,0,252,1,252,15,208,2,248,0,0,252,1,252,15,208,2,252,0,0,252,1,252,15,208,1,252,0,0,255,255,252,15,208,0,252,0,0,255,255,252,15,208,0,253,1,64,255,255,252,15,208,0,191,2,224,253,0,0,15,208,0,127,2,240,252,0,0,15,209,191,63,67,240,252,0,0,31,255,255,47,195,240,84,0,7,255,255,255,15,251,224,0,0,7,255,255,228,11,255,208,0,0,3,255,144,0,2,255,192,0,0,1,64,0,0,0,190,0, + // 0x786e 确 + 110,120,34,37,77,38,1,251,0,0,0,0,0,164,0,0,0,0,0,0,0,0,253,0,0,0,63,255,255,252,2,252,0,0,0,63,255,255,252,3,255,255,208,0,63,255,255,252,7,255,255,244,0,0,63,192,0,15,255,255,240,0,0,63,128,0,47,192,15,224,0,0,63,64,0,63,128,47,192,0,0,63,0,0,255,0,63,128,0,0,127,0,2,254,0,191,0,0,0,191,0,7,255,255,255,255,240,0,254,0,15,255,255,255,255,240,0,253,0,7,255,255,255,255,240,1,253,0,1,255,1,248,3,240,2,255,255,240,191,1,248,3,240,3,255,255,240,127,1,248,3,240,3,255,255,240,127,1,248,3,240,11,252,3,240,127,255,255,255,240,15,252,3,240,127,255,255,255,240,47,252,3,240,127,255,255,255,240,63,252,3,240,191,1,248,3,240,191,252,3,240,190,1,248,3,240,127,252,3,240,190,1,248,3,240,45,252,3,240,191,255,255,255,240,5,252,3,240,255,255,255,255,240,1,252,3,240,255,255,255,255,240,1,252,3,240,252,0,0,3,240,1,252,3,241,252,0,0,3,240,1,255,255,242,252,0,0,3,240,1,255,255,243,248,0,0,3,240,1,255,255,247,240,0,0,3,240,1,252,0,15,240,0,0,3,240,1,252,0,31,208,0,5,91,240,1,252,0,63,192,0,11,255,240,0,0,0,47,64,0,7,255,224,0,0,0,6,0,0,3,255,64,0,0,0,0,0,0,0,0,0, + // 0x79bb 离 + 187,121,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,0,0,0,64,0,0,0,0,42,0,64,1,248,10,128,0,0,63,2,249,11,240,15,208,0,0,63,3,255,255,208,15,208,0,0,63,0,127,255,64,15,208,0,0,63,0,15,255,192,15,208,0,0,63,1,255,255,248,15,208,0,0,63,31,254,7,252,15,208,0,0,63,15,224,0,180,15,208,0,0,63,2,0,0,16,15,208,0,0,63,255,255,255,255,255,208,0,0,63,255,255,255,255,255,208,0,0,63,255,255,255,255,255,208,0,0,0,0,31,224,0,0,0,0,0,0,0,31,208,0,0,0,0,11,255,255,255,255,255,255,254,0,11,255,255,255,255,255,255,254,0,11,255,255,255,255,255,255,254,0,11,240,0,127,0,104,0,254,0,11,240,0,191,0,253,0,254,0,11,240,0,253,0,127,0,254,0,11,240,0,253,21,127,192,254,0,11,242,255,255,255,255,208,254,0,11,243,255,255,255,255,240,254,0,11,242,255,250,149,3,244,254,0,11,240,0,0,0,1,208,254,0,11,240,0,0,0,0,0,254,0,11,240,0,0,0,2,255,254,0,11,240,0,0,0,0,255,252,0,6,160,0,0,0,0,255,224,0, + // 0x79fb 移 + 251,121,35,36,68,38,1,252,0,0,0,64,0,7,224,0,0,0,0,111,208,0,15,240,0,0,0,111,255,244,0,63,192,0,0,63,255,255,208,0,255,255,255,128,63,255,244,0,2,255,255,255,208,47,151,240,0,15,255,255,255,192,0,3,240,0,127,224,0,127,128,0,3,240,2,255,208,0,255,0,0,3,240,15,255,248,2,253,0,0,3,240,11,247,254,7,252,0,0,3,240,3,192,191,223,240,0,63,255,255,248,0,47,255,192,0,63,255,255,248,0,11,255,64,0,63,255,255,248,0,47,253,0,0,21,95,245,80,2,255,240,0,0,0,15,240,0,127,255,255,0,0,0,47,248,7,255,245,254,0,0,0,63,254,2,255,67,252,0,0,0,191,255,128,224,15,255,255,248,0,255,255,224,0,63,255,255,252,2,251,247,248,0,255,255,255,252,3,247,241,252,7,254,0,7,244,11,211,240,240,47,248,0,15,240,31,195,240,18,255,253,0,47,208,63,131,240,7,255,255,192,127,192,191,3,240,1,244,127,240,255,64,125,3,240,0,128,11,255,253,0,60,3,240,0,0,2,255,248,0,16,3,240,0,0,0,255,224,0,0,3,240,0,0,7,255,128,0,0,3,240,0,0,127,253,0,0,0,3,240,0,27,255,240,0,0,0,3,240,11,255,255,64,0,0,0,3,240,15,255,244,0,0,0,0,3,240,7,254,64,0,0,0,0,3,240,2,144,0,0,0,0, + // 0x7a7a 空 + 122,122,34,35,59,38,2,253,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,128,7,248,3,252,0,47,192,63,128,7,244,2,252,0,47,192,63,128,11,240,2,252,0,47,192,63,128,15,240,2,252,0,47,192,63,128,15,224,2,252,0,0,0,0,0,63,192,2,252,0,8,0,0,0,191,192,2,252,0,15,128,0,7,255,0,2,252,0,47,128,0,127,253,0,2,255,255,255,128,47,255,240,0,0,255,255,255,0,47,255,128,0,0,127,255,253,0,15,244,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,244,0,0,191,255,255,255,255,255,244,0,0,191,255,255,255,255,255,244,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,252,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224, + // 0x7aef 端 + 239,122,36,36,68,38,1,252,0,5,0,0,0,7,240,0,0,0,31,128,0,0,7,240,0,0,0,31,128,3,240,7,240,7,240,0,31,128,3,240,7,240,7,240,0,31,128,3,240,7,240,7,240,0,31,128,3,240,7,240,7,240,0,31,128,3,240,7,240,7,240,0,47,128,3,240,7,240,7,240,63,255,255,195,255,255,255,255,240,63,255,255,195,255,255,255,255,240,63,255,255,195,255,255,255,255,240,0,0,0,0,0,0,0,0,0,6,64,58,0,0,0,0,0,0,15,128,63,0,0,0,0,0,0,15,128,63,47,255,255,255,255,253,15,192,127,47,255,255,255,255,253,11,192,126,47,255,255,255,255,253,11,192,189,0,0,15,240,0,0,7,208,189,0,0,15,224,0,0,7,224,252,0,0,31,192,0,0,3,224,252,11,255,255,255,255,248,3,224,248,11,255,255,255,255,248,3,241,244,11,255,255,255,255,248,3,226,244,11,224,188,15,130,248,1,2,240,91,224,188,15,130,248,0,2,255,235,224,188,15,130,248,1,191,255,251,224,188,15,130,248,127,255,255,235,224,188,15,130,248,127,255,248,11,224,188,15,130,248,127,249,0,11,224,188,15,130,248,57,0,0,11,224,188,15,130,248,0,0,0,11,224,188,15,130,248,0,0,0,11,224,188,15,130,248,0,0,0,11,224,188,15,191,248,0,0,0,11,224,188,15,159,240,0,0,0,6,144,20,0,14,128, + // 0x7b2c 第 + 44,123,35,36,68,38,1,252,0,30,64,0,0,126,0,0,0,0,63,192,0,0,255,0,0,0,0,63,64,0,0,254,0,0,0,0,255,255,255,211,255,255,255,252,1,255,255,255,219,255,255,255,252,3,255,255,255,239,255,255,255,252,11,244,253,0,63,192,255,0,0,47,224,255,0,255,128,127,64,0,127,192,127,2,255,0,63,192,0,63,64,63,0,188,0,31,192,0,10,0,36,0,32,0,9,0,0,0,255,255,255,255,255,255,254,0,0,255,255,255,255,255,255,254,0,0,255,255,255,255,255,255,254,0,0,0,0,0,254,0,0,254,0,0,0,0,0,254,0,0,254,0,0,0,0,0,254,0,0,254,0,0,31,255,255,255,255,255,254,0,0,47,255,255,255,255,255,254,0,0,63,255,255,255,255,255,254,0,0,63,64,0,254,0,0,0,0,0,127,64,0,254,0,0,0,0,0,191,0,0,254,0,0,0,0,0,255,255,255,255,255,255,255,240,0,255,255,255,255,255,255,255,240,1,255,255,255,255,255,255,255,224,1,252,0,127,254,0,0,15,224,0,0,2,255,254,0,0,15,208,0,0,31,252,254,0,0,15,208,0,0,255,224,254,0,0,31,192,0,31,255,64,254,0,0,63,192,1,255,248,0,254,0,255,255,128,47,255,208,0,254,0,255,255,0,15,253,0,0,254,0,191,252,0,7,144,0,0,254,0,0,0,0,0,0,0,0,190,0,0,0,0, + // 0x7b49 等 + 73,123,35,36,68,38,1,252,0,14,64,0,0,126,0,0,0,0,47,192,0,0,255,0,0,0,0,63,128,0,0,254,0,0,0,0,255,255,255,227,255,255,255,252,1,255,255,255,231,255,255,255,252,3,255,255,255,255,255,255,255,252,15,244,253,0,63,208,255,0,0,63,224,191,0,255,128,63,128,0,127,192,63,64,191,0,47,192,0,31,0,57,0,255,0,15,64,0,0,0,0,0,255,0,0,0,0,0,127,255,255,255,255,255,254,0,0,127,255,255,255,255,255,254,0,0,127,255,255,255,255,255,254,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,0,0,61,0,0,1,253,0,0,0,0,255,64,0,1,253,0,0,0,0,255,208,0,1,253,0,0,0,0,47,244,0,1,253,0,0,0,0,11,252,0,1,253,0,0,0,0,2,255,0,1,253,0,0,0,0,0,254,5,6,253,0,0,0,0,0,52,15,255,252,0,0,0,0,0,0,11,255,248,0,0,0,0,0,0,3,255,144,0,0, + // 0x7bb1 箱 + 177,123,35,36,68,38,1,252,0,14,64,0,0,57,0,0,0,0,31,192,0,0,191,0,0,0,0,63,192,0,0,255,0,0,0,0,127,128,0,1,254,0,0,0,0,191,255,255,227,255,255,255,252,0,255,255,255,231,255,255,255,252,3,255,255,255,239,255,255,255,252,7,248,254,0,47,224,254,0,0,15,240,127,0,127,192,127,64,0,63,208,63,129,255,64,47,192,0,47,64,47,64,190,0,15,208,0,6,0,252,0,24,0,10,64,0,0,0,252,0,0,0,0,0,0,0,0,252,0,15,255,255,255,224,0,0,252,0,15,255,255,255,224,47,255,255,255,207,255,255,255,224,47,255,255,255,207,192,0,15,224,47,255,255,255,207,192,0,15,224,0,7,253,0,15,192,0,15,224,0,7,253,0,15,255,255,255,224,0,15,255,64,15,255,255,255,224,0,31,255,208,15,250,170,175,224,0,63,255,244,15,192,0,15,224,0,191,255,253,15,192,0,15,224,1,254,252,255,143,192,0,15,224,3,252,252,63,207,255,255,255,224,11,240,252,31,15,255,255,255,224,47,224,252,9,15,250,170,175,224,127,192,252,0,15,192,0,15,224,63,64,252,0,15,192,0,15,224,30,0,252,0,15,192,0,15,224,4,0,252,0,15,255,255,255,224,0,0,252,0,15,255,255,255,224,0,0,252,0,15,255,255,255,224,0,0,252,0,15,192,0,15,224,0,0,252,0,10,128,0,5,80, + // 0x7c7b 类 + 123,124,35,36,68,38,2,252,0,0,0,2,248,0,0,0,0,0,6,0,3,248,0,30,64,0,0,63,192,3,248,0,63,208,0,0,47,224,3,248,0,191,128,0,0,11,248,3,248,1,255,0,0,0,3,252,3,248,3,252,0,0,0,1,254,3,248,11,244,0,0,21,85,249,87,253,91,229,85,64,63,255,255,255,255,255,255,255,208,63,255,255,255,255,255,255,255,208,63,255,255,255,255,255,255,255,208,0,0,1,255,255,244,0,0,0,0,0,11,255,255,254,0,0,0,0,0,127,243,248,255,208,0,0,0,3,255,195,248,63,253,0,0,0,127,254,3,248,11,255,224,0,27,255,244,3,248,0,255,255,144,191,255,64,3,248,0,31,255,208,63,248,0,0,80,5,0,191,128,14,64,0,3,252,47,208,6,0,0,0,0,3,248,31,254,0,0,0,0,0,3,248,1,255,128,0,21,85,85,87,249,85,111,85,64,127,255,255,255,255,255,255,255,224,127,255,255,255,255,255,255,255,224,127,255,255,255,255,255,255,255,224,0,0,0,63,255,128,0,0,0,0,0,0,191,255,224,0,0,0,0,0,2,255,15,248,0,0,0,0,0,31,253,7,255,64,0,0,0,1,255,248,1,255,228,0,0,0,111,255,208,0,127,255,144,0,191,255,255,0,0,11,255,255,244,191,255,244,0,0,1,191,255,224,63,253,0,0,0,0,11,255,192,42,64,0,0,0,0,0,26,64, + // 0x7d22 索 + 34,125,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,208,63,255,255,255,255,255,255,255,208,63,255,255,255,255,255,255,255,208,63,0,0,127,128,0,0,15,208,63,0,1,255,0,4,0,15,208,63,0,11,252,0,127,64,15,208,63,10,47,224,2,255,128,15,208,0,47,255,64,15,253,0,0,0,0,47,254,0,127,240,0,0,0,0,7,255,210,255,129,192,0,0,0,0,191,255,252,11,248,0,0,0,0,31,255,208,3,255,0,0,0,0,3,254,0,0,191,224,0,0,0,31,254,170,170,255,252,0,127,255,255,255,255,255,255,255,0,127,255,255,255,255,255,255,255,192,63,255,255,255,248,0,0,31,128,0,0,0,3,248,1,208,5,0,0,1,249,3,248,11,248,0,0,0,11,253,3,248,7,255,64,0,0,127,244,3,248,0,191,240,0,2,255,192,3,248,0,31,253,0,47,254,0,3,248,0,2,255,128,191,244,0,3,248,0,0,127,208,47,64,0,3,248,0,0,15,0,4,0,0,3,248,0,0,0,0, + // 0x7d2b 紫 + 43,125,35,36,68,38,1,252,0,0,47,64,2,252,0,0,0,0,0,63,64,2,252,0,0,0,0,0,63,64,2,252,0,6,0,3,240,63,64,2,252,0,191,128,3,240,63,255,242,252,31,255,224,3,240,63,255,242,255,255,255,64,3,240,63,255,242,255,255,208,0,3,240,63,64,2,255,228,0,0,3,240,63,64,2,252,0,0,0,3,240,63,64,2,252,0,0,228,3,240,63,65,162,252,0,0,252,3,240,127,255,241,253,0,2,252,27,255,255,255,241,255,255,255,248,127,255,255,255,144,255,255,255,240,63,255,165,15,208,47,255,255,208,41,64,0,63,224,0,0,0,0,0,0,0,255,128,11,128,0,0,0,3,135,253,0,63,240,0,0,0,31,255,240,1,255,192,0,0,0,31,255,192,11,254,0,0,0,0,1,255,244,63,244,30,0,0,0,0,31,255,255,128,191,192,0,0,0,2,255,253,0,47,240,0,0,0,0,255,224,0,11,253,0,63,255,255,255,255,255,255,255,64,63,255,255,255,255,255,255,255,224,63,255,255,255,255,255,255,175,248,4,0,0,0,254,0,0,7,252,0,0,32,0,254,0,36,1,208,0,0,255,64,254,1,255,0,0,0,11,254,0,254,1,255,224,0,0,127,248,0,254,0,47,253,0,7,255,208,0,254,0,3,255,192,47,254,0,0,254,0,0,127,244,11,244,0,0,254,0,0,15,224,1,64,0,0,254,0,0,2,0, + // 0x7ea2 红 + 162,126,35,34,50,38,1,254,0,1,144,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,11,244,1,170,170,170,170,160,0,15,240,3,255,255,255,255,244,0,47,208,3,255,255,255,255,244,0,63,192,3,255,255,255,255,244,0,191,0,0,0,3,248,0,0,1,254,1,192,0,3,248,0,0,3,252,3,248,0,3,248,0,0,11,244,11,248,0,3,248,0,0,31,224,31,240,0,3,248,0,0,127,255,255,208,0,3,248,0,0,127,255,255,128,0,3,248,0,0,63,255,255,0,0,3,248,0,0,62,87,252,0,0,3,248,0,0,0,15,244,0,0,3,248,0,0,0,47,224,0,0,3,248,0,0,0,127,192,0,0,3,248,0,0,1,255,0,0,0,3,248,0,0,7,253,26,240,0,3,248,0,0,31,255,255,240,0,3,248,0,0,127,255,255,244,0,3,248,0,0,63,255,254,80,0,3,248,0,0,47,229,0,0,0,3,248,0,0,20,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,16,0,3,248,0,0,0,0,107,240,0,3,248,0,0,0,111,255,240,0,3,248,0,0,127,255,255,251,255,255,255,255,252,127,255,254,71,255,255,255,255,252,63,254,64,7,255,255,255,255,252,57,0,0,6,170,170,170,170,168, + // 0x7ea7 级 + 167,126,35,37,77,38,1,251,0,2,128,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,7,244,1,85,85,85,84,0,0,15,240,11,255,255,255,252,0,0,15,208,11,255,255,255,248,0,0,47,192,11,255,255,255,244,0,0,63,64,0,15,224,7,240,0,0,191,0,0,15,224,11,240,0,0,253,2,0,15,224,15,224,0,2,248,7,208,15,224,15,208,0,7,240,15,240,15,208,31,192,0,15,224,47,208,15,208,47,192,0,47,213,191,128,15,208,63,128,0,191,255,255,0,31,192,63,255,224,127,255,253,0,31,208,191,255,240,63,235,252,0,31,224,255,255,240,16,11,240,0,47,240,0,15,224,0,31,208,0,47,244,0,15,208,0,63,128,0,63,252,0,47,192,0,255,6,224,63,253,0,63,128,2,254,191,224,63,255,0,63,64,11,255,255,224,127,127,64,191,0,47,255,254,64,191,47,192,254,0,127,255,128,0,254,15,227,252,0,63,208,0,0,253,11,251,248,0,40,0,0,17,252,3,255,240,0,0,0,7,243,252,1,255,208,0,0,0,191,243,248,0,255,192,0,0,31,255,251,244,1,255,224,0,7,255,254,79,240,11,255,248,0,63,255,224,47,208,47,251,255,0,63,253,0,63,192,255,209,255,208,47,128,0,255,139,255,64,127,252,20,0,1,255,31,253,0,15,252,0,0,0,189,11,224,0,2,244,0,0,0,24,2,64,0,0,80,0,0,0,0,0,0,0,0,0, + // 0x7ebf 线 + 191,126,35,36,68,38,2,252,0,1,0,0,0,253,0,0,0,0,11,208,0,0,253,15,0,0,0,15,240,0,0,253,63,224,0,0,31,208,0,0,254,15,253,0,0,47,192,0,0,254,1,253,0,0,63,64,0,0,254,0,56,0,0,191,0,0,0,254,0,1,0,0,254,0,0,0,254,26,255,64,2,252,5,0,5,255,255,255,128,3,244,15,135,255,255,255,255,128,15,224,47,215,255,255,254,80,0,31,192,63,131,255,255,0,0,0,127,150,255,2,64,191,0,0,0,255,255,254,0,0,127,0,0,0,255,255,252,0,0,127,0,22,208,127,239,244,0,0,127,107,255,224,16,15,224,0,1,191,255,255,224,0,63,192,6,255,255,255,254,64,0,191,0,15,255,255,249,0,0,1,253,0,15,255,255,128,1,0,7,248,6,142,144,47,192,11,224,15,251,255,128,0,31,192,31,208,127,255,255,128,0,15,208,63,128,191,255,250,0,0,15,209,255,0,127,249,0,0,0,15,231,253,0,57,0,0,0,0,11,255,244,0,0,0,0,0,0,7,255,208,0,0,0,7,192,0,3,255,64,0,0,6,255,192,0,47,253,0,0,1,191,255,192,1,255,253,0,208,127,255,253,0,31,255,255,0,244,191,255,64,6,255,248,127,129,244,127,208,0,63,255,208,63,247,240,36,0,0,47,253,0,15,255,240,0,0,0,15,128,0,7,255,208,0,0,0,0,0,0,0,191,64, + // 0x7ec6 细 + 198,126,35,36,68,38,1,252,0,0,224,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,3,252,2,255,255,255,255,244,0,7,248,2,255,255,255,255,244,0,15,240,2,255,255,255,255,244,0,31,224,2,254,171,250,171,244,0,63,192,2,248,3,244,3,244,0,127,64,2,248,3,244,3,244,0,255,0,2,248,3,244,3,244,2,252,0,210,248,3,244,3,244,7,244,3,250,248,3,244,3,244,15,240,7,250,248,3,244,3,244,127,234,255,242,248,3,244,3,244,127,255,255,194,248,3,244,3,244,63,255,255,66,248,3,244,3,244,63,166,254,2,248,3,244,3,244,0,3,252,2,255,255,255,255,244,0,15,240,2,255,255,255,255,244,0,63,192,2,255,255,255,255,244,0,255,0,2,249,87,249,87,244,3,253,22,182,248,3,244,3,244,15,255,255,246,248,3,244,3,244,127,255,255,246,248,3,244,3,244,63,255,254,146,248,3,244,3,244,47,249,0,2,248,3,244,3,244,24,0,0,2,248,3,244,3,244,0,0,0,2,248,3,244,3,244,0,0,0,2,248,3,244,3,244,0,0,1,182,248,3,244,3,244,0,26,255,246,249,87,249,87,244,47,255,255,246,255,255,255,255,244,127,255,255,146,255,255,255,255,244,63,254,80,2,255,255,255,255,244,57,0,0,2,248,0,0,3,244,0,0,0,2,248,0,0,3,244,0,0,0,0,80,0,0,0,0, + // 0x7ec8 终 + 200,126,36,36,68,38,1,252,0,2,64,0,0,105,0,0,0,0,3,244,0,0,255,0,0,0,0,11,244,0,1,254,0,0,0,0,15,240,0,3,252,0,0,0,0,31,208,0,7,255,255,255,64,0,63,192,0,15,255,255,255,192,0,127,64,0,63,255,255,255,192,0,255,0,0,191,208,0,191,64,1,253,1,1,255,240,0,254,0,3,252,7,199,255,244,3,252,0,7,244,15,255,250,252,7,248,0,15,224,31,255,224,255,31,240,0,47,192,63,203,128,127,255,192,0,191,255,255,1,0,47,255,64,0,127,255,254,0,0,15,254,0,0,63,255,252,0,0,47,255,64,0,37,11,240,0,1,255,255,224,0,0,31,208,0,11,255,111,253,0,0,63,128,0,191,248,7,255,208,0,255,0,31,255,208,0,255,254,2,252,0,95,254,0,0,31,253,11,250,255,211,224,30,64,2,248,63,255,255,209,0,127,244,0,16,63,255,255,208,0,47,255,64,0,63,254,80,0,0,2,255,224,0,41,0,0,0,0,0,47,240,0,0,0,0,0,0,0,3,192,0,0,0,0,0,9,0,0,0,0,0,0,6,240,63,228,0,0,0,0,91,255,240,191,255,144,0,0,127,255,255,244,27,255,253,0,0,127,255,254,64,0,111,255,224,0,127,249,64,0,0,1,255,254,0,37,0,0,0,0,0,11,255,64,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,8,0, + // 0x7ed3 结 + 211,126,35,36,68,38,1,252,0,2,64,0,0,3,248,0,0,0,3,244,0,0,3,248,0,0,0,11,248,0,0,3,248,0,0,0,15,240,0,0,3,248,0,0,0,31,224,0,0,3,248,0,0,0,63,192,7,255,255,255,255,252,0,127,128,7,255,255,255,255,252,0,255,0,7,255,255,255,255,252,2,253,3,129,85,87,253,85,84,3,252,7,244,0,3,248,0,0,11,240,15,244,0,3,248,0,0,31,224,31,224,0,3,248,0,0,127,234,255,192,0,3,248,0,0,191,255,255,64,0,3,248,0,0,127,255,255,1,255,255,255,255,240,63,235,252,1,255,255,255,255,240,0,11,244,1,255,255,255,255,240,0,47,224,0,85,85,85,85,80,0,127,192,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,3,253,26,244,0,0,0,0,0,15,255,255,244,127,255,255,255,208,127,255,255,244,127,255,255,255,208,63,255,254,64,127,255,255,255,208,63,233,0,0,127,0,0,31,208,20,0,0,0,127,0,0,31,208,0,0,0,0,127,0,0,31,208,0,0,0,0,127,0,0,31,208,0,0,27,248,127,0,0,31,208,0,111,255,248,127,0,0,31,208,127,255,255,248,127,0,0,31,208,127,255,255,144,127,255,255,255,208,127,254,64,0,127,255,255,255,208,57,64,0,0,127,255,255,255,208,0,0,0,0,127,0,0,31,208,0,0,0,0,127,0,0,10,128, + // 0x7ed9 给 + 217,126,35,36,68,38,1,252,0,2,64,0,0,6,64,0,0,0,3,244,0,0,15,240,0,0,0,11,244,0,0,31,240,0,0,0,15,240,0,0,47,240,0,0,0,31,208,0,0,63,252,0,0,0,63,192,0,0,191,253,0,0,0,127,64,0,1,255,191,0,0,0,255,0,0,3,252,63,192,0,1,253,3,0,11,248,31,224,0,3,252,11,224,31,240,11,248,0,7,240,15,240,63,208,3,254,0,15,224,47,208,255,128,0,255,128,63,214,191,131,255,0,0,191,240,191,255,255,31,255,255,255,255,252,63,255,253,63,255,255,255,247,248,63,235,252,31,207,255,255,241,224,16,15,240,6,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,3,252,22,224,255,255,255,254,0,15,255,255,208,255,255,255,254,0,63,255,255,208,255,255,255,254,0,63,255,249,0,253,0,0,254,0,47,228,0,0,253,0,0,254,0,24,0,0,0,253,0,0,254,0,0,0,0,0,253,0,0,254,0,0,0,0,0,253,0,0,254,0,0,0,111,224,253,0,0,254,0,0,111,255,240,253,0,0,254,0,63,255,255,224,253,0,0,254,0,63,255,249,0,255,255,255,254,0,63,249,0,0,255,255,255,254,0,41,0,0,0,255,255,255,254,0,0,0,0,0,253,0,0,254,0,0,0,0,0,253,0,0,254,0, + // 0x7edf 统 + 223,126,36,36,68,38,1,252,0,2,64,0,0,6,128,0,0,0,3,248,0,0,31,192,0,0,0,7,248,0,0,15,224,0,0,0,15,240,0,0,11,240,0,0,0,31,224,0,0,7,248,0,0,0,63,192,0,0,3,228,0,0,0,63,192,11,255,255,255,255,252,0,191,64,11,255,255,255,255,252,0,254,1,11,255,255,255,255,252,3,252,11,208,0,191,128,0,0,7,244,15,240,1,255,0,32,0,15,240,47,208,3,252,2,248,0,63,230,191,128,15,244,2,252,0,191,255,255,0,47,224,0,255,0,63,255,253,0,191,192,0,127,128,63,255,252,2,255,154,191,255,208,20,15,240,31,255,255,255,255,240,0,47,208,15,255,255,255,251,244,0,127,128,11,255,165,64,3,252,0,255,0,69,10,144,42,65,224,3,253,111,192,15,208,63,128,0,15,255,255,192,15,208,63,128,0,63,255,255,192,15,208,63,128,0,63,255,228,0,15,208,63,128,0,47,228,0,0,31,192,63,128,0,20,0,0,0,47,192,63,128,0,0,0,0,64,63,192,63,128,0,0,0,31,208,63,128,63,128,180,0,7,255,224,191,0,63,128,189,6,255,255,208,255,0,63,128,189,63,255,248,3,253,0,63,128,252,63,254,64,31,252,0,63,128,252,63,208,1,255,240,0,47,255,252,20,0,0,255,192,0,31,255,244,0,0,0,126,0,0,7,255,224,0,0,0,32,0,0,0,0,0, + // 0x7ee7 继 + 231,126,35,34,50,38,1,254,0,3,64,0,0,0,42,0,0,0,7,240,1,64,0,63,0,0,0,15,240,7,224,0,63,0,0,0,15,208,7,225,224,63,2,224,0,47,192,7,226,240,63,3,240,0,63,128,7,224,244,63,3,224,0,127,0,7,224,248,63,11,192,0,255,0,7,224,188,63,15,128,1,252,1,7,224,125,63,31,64,2,248,11,135,224,62,63,47,0,3,240,15,231,224,16,63,4,0,15,224,47,199,224,0,63,0,0,47,192,63,71,231,255,255,255,252,127,255,255,7,231,255,255,255,252,127,255,253,7,231,255,255,255,252,63,255,248,7,224,0,255,192,0,21,11,240,7,224,2,255,224,0,0,31,208,7,224,3,255,244,0,0,63,128,7,224,11,255,252,0,0,255,0,7,224,15,191,127,0,2,252,5,135,224,47,63,47,128,11,254,255,199,224,126,63,15,224,47,255,255,199,224,252,63,3,244,63,255,250,71,227,248,63,2,248,63,249,0,7,227,240,63,0,240,25,0,0,7,226,208,63,0,64,0,0,0,7,224,64,63,0,0,0,0,1,135,224,0,63,0,0,0,1,191,215,224,0,63,0,0,1,191,255,215,224,0,42,0,0,127,255,255,135,224,0,0,0,0,63,255,144,7,255,255,255,255,252,63,144,0,7,255,255,255,255,252,16,0,0,7,255,255,255,255,252, + // 0x7eea 绪 + 234,126,36,36,68,38,1,252,0,2,0,0,0,47,64,0,0,0,3,224,0,0,63,64,0,0,0,7,240,0,0,63,64,1,64,0,15,224,0,0,63,64,3,244,0,15,208,0,0,63,64,11,240,0,47,192,2,255,255,255,223,224,0,63,64,2,255,255,255,255,192,0,191,0,2,255,255,255,255,128,0,253,0,0,0,63,64,255,0,2,252,3,128,0,63,67,252,0,3,240,15,240,0,63,75,244,0,15,224,31,208,0,63,95,224,0,47,213,191,175,255,255,255,255,253,127,255,255,47,255,255,255,255,253,63,255,253,47,255,255,255,255,253,63,235,252,0,0,47,244,0,0,16,11,240,0,0,191,208,0,0,0,15,208,0,3,255,64,0,0,0,63,128,0,31,254,0,0,0,0,191,0,0,191,255,255,255,208,1,252,1,11,255,255,255,255,208,7,254,255,191,255,255,255,255,208,31,255,255,191,255,192,0,15,208,63,255,250,15,95,192,0,15,208,47,229,0,0,31,192,0,15,208,20,0,0,0,31,255,255,255,208,0,0,0,0,31,255,255,255,208,0,0,0,80,31,255,255,255,208,0,1,175,240,31,192,0,15,208,1,191,255,240,31,192,0,15,208,63,255,255,144,31,192,0,15,208,63,255,144,0,31,255,255,255,208,63,144,0,0,31,255,255,255,208,20,0,0,0,31,255,255,255,208,0,0,0,0,31,192,0,15,208,0,0,0,0,10,128,0,5,64, + // 0x7eed 续 + 237,126,35,37,77,38,1,251,0,1,64,0,0,11,224,0,0,0,3,240,0,0,11,224,0,0,0,7,240,0,0,11,224,0,0,0,11,224,1,255,255,255,255,128,0,15,208,1,255,255,255,255,128,0,47,192,1,255,255,255,255,128,0,63,64,0,0,11,224,0,0,0,127,0,0,0,11,224,0,0,0,253,4,0,0,11,224,0,0,1,252,15,128,0,11,224,0,0,3,240,31,203,255,255,255,255,244,11,224,63,139,255,255,255,255,244,31,193,127,11,255,255,255,255,240,127,255,253,0,0,0,0,7,224,127,255,252,0,13,2,244,11,208,63,255,244,0,63,131,244,15,192,20,11,224,0,15,243,244,31,128,0,31,192,1,2,251,244,11,64,0,63,64,7,208,115,244,0,0,0,190,0,7,252,3,244,0,0,1,253,111,64,255,3,244,0,0,7,255,255,64,47,3,244,0,0,31,255,255,64,4,3,240,0,0,63,255,144,47,255,255,255,255,244,63,228,0,47,255,255,255,255,244,24,0,0,47,255,255,255,255,244,0,0,2,64,0,47,192,0,0,0,0,127,128,0,127,134,0,0,0,31,255,192,0,255,31,192,0,6,255,254,0,3,253,31,244,0,63,255,208,0,31,248,3,254,0,63,248,0,0,191,224,0,191,192,63,64,0,11,255,64,0,47,240,16,0,0,63,253,0,0,7,252,0,0,0,31,224,0,0,1,248,0,0,0,10,0,0,0,0,96,0,0,0,0,0,0,0,0,0, + // 0x7eff 绿 + 255,126,36,35,59,38,1,252,0,11,128,0,0,0,0,0,0,0,15,240,1,255,255,255,255,192,0,31,224,1,255,255,255,255,192,0,47,192,1,255,255,255,255,192,0,63,128,0,0,0,0,47,192,0,191,0,0,0,0,0,47,128,0,254,0,0,106,170,170,191,128,1,252,9,0,191,255,255,255,128,3,248,15,128,191,255,255,255,128,11,240,47,192,0,0,0,63,128,15,224,63,64,0,0,0,63,64,47,192,191,0,0,0,0,63,64,127,255,252,7,255,255,255,255,253,127,255,248,7,255,255,255,255,253,63,255,240,7,255,255,255,255,253,41,15,208,0,0,3,244,0,0,0,47,128,0,0,3,240,0,0,0,63,0,1,240,3,240,0,64,0,253,0,3,252,3,240,3,248,2,248,5,0,255,3,240,11,240,7,255,255,64,63,195,244,63,128,31,255,255,64,31,211,252,254,0,63,255,254,0,7,71,255,244,0,63,254,64,0,0,63,255,192,0,45,0,0,0,1,255,255,208,0,0,0,0,0,11,255,255,244,0,0,0,6,64,127,243,247,253,0,0,1,191,66,255,131,240,255,128,0,127,255,159,253,3,240,63,244,47,255,254,31,240,3,240,15,254,63,255,144,15,128,3,240,2,252,63,228,0,1,0,3,240,0,112,41,0,0,0,2,255,240,0,0,0,0,0,0,1,255,240,0,0,0,0,0,0,0,255,128,0,0, + // 0x7f16 编 + 22,127,35,36,68,38,1,252,0,6,64,0,0,6,208,0,0,0,11,240,0,0,15,240,0,0,0,15,224,0,0,11,244,0,0,0,31,192,0,0,3,248,0,0,0,47,192,7,255,255,255,255,240,0,63,64,7,255,255,255,255,240,0,127,0,7,255,255,255,255,240,0,253,0,7,240,0,0,7,240,1,252,12,7,240,0,0,7,240,3,248,31,135,240,0,0,7,240,3,240,63,135,240,0,0,7,240,15,208,127,7,255,255,255,255,240,31,193,254,7,255,255,255,255,240,127,255,252,7,255,255,255,255,240,127,255,248,7,240,0,0,0,0,63,255,240,7,240,0,0,0,0,41,15,208,11,224,0,0,0,0,0,47,192,11,255,255,255,255,244,0,63,0,11,255,255,255,255,244,0,254,0,11,255,255,255,255,244,2,252,22,15,255,7,195,209,244,11,255,255,15,255,7,195,209,244,63,255,255,15,255,7,195,209,244,63,255,144,15,239,7,195,209,244,47,144,0,31,239,255,255,255,244,0,0,0,47,175,255,255,255,244,0,0,46,63,111,255,255,255,244,0,6,255,63,47,7,195,209,244,0,127,255,127,47,7,195,209,244,27,255,244,190,47,7,195,209,244,127,254,0,253,47,7,195,209,244,63,224,1,252,47,7,195,209,244,62,0,3,248,47,7,195,209,244,16,0,3,244,47,7,195,223,244,0,0,0,176,47,2,130,143,240,0,0,0,0,26,0,0,6,64, + // 0x7f3a 缺 + 58,127,36,36,68,38,1,252,2,228,0,0,0,7,240,0,0,3,248,0,0,0,7,240,0,0,3,248,0,0,0,7,240,0,0,3,244,0,0,0,7,240,0,0,7,244,0,0,0,7,240,0,0,11,255,255,255,0,7,240,0,0,15,255,255,255,47,255,255,255,192,15,255,255,255,47,255,255,255,192,47,195,244,0,47,255,255,255,192,63,131,244,0,5,91,245,111,192,127,67,244,0,0,7,240,31,192,127,3,244,0,0,7,240,31,192,5,3,244,0,0,7,240,31,192,127,255,255,255,128,7,240,31,192,127,255,255,255,128,7,240,31,192,127,255,255,255,128,7,240,31,192,0,3,248,0,0,7,240,31,192,0,3,244,0,63,255,255,255,253,5,3,244,0,63,255,255,255,253,31,131,244,63,63,255,255,255,253,31,131,244,63,21,95,254,85,84,31,131,244,63,0,15,255,0,0,31,131,244,63,0,31,255,0,0,31,131,244,63,0,47,255,128,0,31,131,244,63,0,63,175,192,0,31,131,244,63,0,127,79,224,0,31,131,244,63,0,255,15,240,0,31,255,255,255,1,254,7,248,0,31,255,255,255,3,252,3,253,0,31,255,255,255,15,248,1,255,0,31,128,0,63,47,240,0,191,192,31,128,0,63,191,208,0,63,240,31,128,0,23,255,64,0,31,253,10,64,0,11,254,0,0,7,253,0,0,0,3,244,0,0,1,244,0,0,0,0,128,0,0,0,96, + // 0x7f51 网 + 81,127,32,34,16,38,3,252,21,85,85,85,85,85,85,85,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,190,0,11,224,0,253,0,191,190,0,11,224,0,253,0,191,190,0,11,208,0,253,0,191,190,0,11,208,0,253,0,191,190,0,15,208,0,252,0,191,190,0,15,208,128,252,0,191,190,29,15,194,240,252,0,191,190,63,79,195,253,252,0,191,190,63,239,193,255,252,0,191,190,11,255,192,127,252,0,191,190,2,255,128,31,248,0,191,190,0,255,128,7,252,0,191,190,0,63,192,3,254,0,191,190,0,63,240,3,255,128,191,190,0,63,252,3,255,208,191,190,0,127,254,7,255,240,191,190,0,190,191,11,227,252,191,190,0,253,63,15,209,248,191,190,0,252,12,31,192,176,191,190,2,248,0,47,192,0,191,190,3,244,0,63,64,0,191,190,11,240,0,191,0,0,191,190,15,224,0,254,0,0,191,190,63,192,3,252,0,0,191,190,63,128,7,248,0,0,191,190,15,0,1,240,0,0,191,190,0,0,0,64,1,85,255,190,0,0,0,0,3,255,254,190,0,0,0,0,2,255,252,190,0,0,0,0,1,255,224, + // 0x7f6e 置 + 110,127,35,35,59,38,2,252,5,85,85,85,85,85,85,85,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,0,11,224,3,240,1,252,0,191,0,11,224,3,240,1,252,0,191,0,11,224,3,240,1,252,0,191,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,0,5,85,85,86,254,85,85,85,0,0,0,0,1,252,0,0,0,0,42,170,170,171,254,170,170,170,128,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,1,80,31,255,255,255,255,244,0,7,240,31,255,255,255,255,244,0,7,240,31,192,0,0,3,244,0,7,240,31,192,0,0,3,244,0,7,240,31,255,255,255,255,244,0,7,240,31,255,255,255,255,244,0,7,240,31,192,0,0,3,244,0,7,240,31,192,0,0,3,244,0,7,240,31,255,255,255,255,244,0,7,240,31,255,255,255,255,244,0,7,240,31,192,0,0,3,244,0,7,240,31,192,0,0,3,244,0,7,240,31,255,255,255,255,244,0,7,240,31,255,255,255,255,244,0,7,240,0,0,0,0,0,0,0,7,255,255,255,255,255,255,255,240,7,255,255,255,255,255,255,255,244,7,255,255,255,255,255,255,255,244,7,240,0,0,0,0,0,0,0,2,160,0,0,0,0,0,0,0, + // 0x7f72 署 + 114,127,35,35,59,38,1,252,1,85,85,85,85,85,85,85,64,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,248,0,252,0,127,0,47,192,2,248,0,252,0,127,0,47,192,2,248,0,252,0,127,0,47,192,2,253,86,254,85,191,85,127,192,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,13,0,0,47,255,255,255,255,248,127,128,0,63,255,255,255,255,249,255,128,0,63,255,255,255,255,255,253,0,0,0,0,3,248,0,127,244,0,0,0,0,3,248,3,255,128,0,47,255,255,255,255,255,255,255,248,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,0,7,255,244,0,0,0,0,0,1,191,255,64,0,0,0,0,0,47,255,254,170,170,169,0,0,27,255,255,255,255,255,253,0,27,255,255,255,255,255,255,253,0,127,255,255,64,0,0,0,253,0,47,254,63,64,0,0,0,253,0,14,64,63,149,85,85,85,253,0,0,0,63,255,255,255,255,253,0,0,0,63,255,255,255,255,253,0,0,0,63,64,0,0,0,253,0,0,0,63,64,0,0,0,253,0,0,0,63,255,255,255,255,253,0,0,0,63,255,255,255,255,253,0,0,0,63,170,170,170,170,253,0,0,0,63,0,0,0,0,169,0, + // 0x8005 者 + 5,128,35,37,77,38,1,251,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,4,0,0,0,0,31,192,0,0,47,0,0,0,0,31,192,0,0,127,192,0,0,0,31,208,0,0,255,0,0,191,255,255,255,255,243,253,0,0,191,255,255,255,255,255,248,0,0,191,255,255,255,255,255,224,0,0,0,0,31,192,0,255,128,0,0,0,0,31,192,7,254,0,0,0,0,0,31,192,31,248,0,0,0,0,0,31,192,191,208,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,0,11,255,64,0,0,0,0,0,0,63,252,0,0,0,0,0,0,2,255,224,0,0,0,0,0,0,31,255,64,0,0,0,0,0,1,255,255,255,255,255,244,0,0,47,255,255,255,255,255,244,0,6,255,255,255,255,255,255,244,0,127,255,255,64,0,0,7,244,0,63,249,63,64,0,0,7,244,0,31,128,63,64,0,0,7,244,0,4,0,63,255,255,255,255,244,0,0,0,63,255,255,255,255,244,0,0,0,63,255,255,255,255,244,0,0,0,63,64,0,0,7,244,0,0,0,63,64,0,0,7,244,0,0,0,63,64,0,0,7,244,0,0,0,63,64,0,0,7,244,0,0,0,63,255,255,255,255,244,0,0,0,63,255,255,255,255,244,0,0,0,63,255,255,255,255,244,0,0,0,63,64,0,0,7,244,0,0,0,0,0,0,0,0,0,0, + // 0x806a 聪 + 106,128,36,36,68,38,1,252,0,0,0,0,1,64,0,36,0,0,0,0,0,15,192,0,127,0,63,255,255,252,15,224,0,255,0,63,255,255,252,7,244,0,253,0,63,255,255,252,3,252,2,252,0,3,224,15,192,1,252,3,244,0,3,224,15,192,0,253,7,240,0,3,224,15,192,0,164,15,208,0,3,224,15,192,191,255,255,255,224,3,224,15,192,191,255,255,255,224,3,255,255,192,191,255,255,255,224,3,255,255,192,190,0,0,11,224,3,255,255,192,190,0,0,11,224,3,224,15,192,190,0,0,11,224,3,224,15,192,190,0,0,11,224,3,224,15,192,190,0,0,11,224,3,224,15,192,190,0,0,11,224,3,224,15,192,191,255,255,255,224,3,255,255,192,191,255,255,255,224,3,255,255,192,191,255,255,255,224,3,255,255,192,0,0,64,0,0,3,224,15,192,0,7,208,0,0,3,224,15,192,0,3,240,0,0,3,224,15,192,1,245,252,1,0,3,224,15,232,229,244,190,15,192,3,224,111,252,249,244,63,75,208,7,255,255,253,245,244,31,131,240,127,255,255,230,241,244,8,3,244,127,255,239,194,241,244,0,1,248,63,144,15,195,241,244,0,124,252,16,0,15,199,225,244,0,124,189,0,0,15,207,209,244,0,188,62,0,0,15,203,193,255,255,252,36,0,0,15,192,64,255,255,244,0,0,0,15,192,0,127,255,224,0,0,0,15,192,0,0,0,0,0, + // 0x80fd 能 + 253,128,36,37,77,38,1,251,0,10,64,0,0,253,0,0,0,0,15,240,0,0,253,0,0,0,0,31,224,0,0,253,0,0,0,0,47,192,108,0,253,0,31,0,0,63,193,253,0,253,1,255,128,0,127,64,191,0,253,47,255,192,0,255,0,63,128,255,255,253,0,1,253,0,47,192,255,255,128,0,127,255,255,255,224,255,224,0,0,127,255,255,255,240,253,0,0,0,63,255,255,255,248,253,0,0,224,21,85,80,2,252,253,0,0,253,0,0,0,0,208,253,0,0,252,0,0,0,0,0,254,0,2,252,3,255,255,255,128,255,255,255,252,3,255,255,255,128,191,255,255,244,3,255,255,255,128,47,255,255,208,3,240,0,63,128,0,0,0,0,3,240,0,63,128,253,0,0,0,3,240,0,63,128,253,0,0,0,3,255,255,255,128,253,0,7,0,3,255,255,255,128,253,0,111,192,3,250,170,191,128,253,7,255,224,3,240,0,63,128,254,191,255,64,3,240,0,63,128,255,255,228,0,3,250,170,191,128,255,249,0,0,3,255,255,255,128,255,64,0,0,3,255,255,255,128,253,0,0,80,3,240,0,63,128,253,0,0,125,3,240,0,63,128,253,0,0,190,3,240,0,63,128,253,0,0,190,3,240,0,63,128,254,0,1,253,3,240,0,63,128,255,255,255,252,3,240,63,255,64,191,255,255,248,3,240,31,255,0,31,255,255,208,3,240,15,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x81ea 自 + 234,129,27,37,3,38,6,251,0,0,3,164,0,0,0,0,0,7,252,0,0,0,0,0,11,244,0,0,0,0,0,15,240,0,0,0,0,0,15,224,0,0,0,85,85,111,229,85,85,80,255,255,255,255,255,255,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,85,85,85,85,87,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,254,85,85,85,85,87,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,85,85,85,85,87,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,254,0,0,0,0,3,248,254,0,0,0,0,3,244,0,0,0,0,0,0,0, + // 0x81f3 至 + 243,129,34,33,41,38,2,253,63,255,255,255,255,255,255,255,208,63,255,255,255,255,255,255,255,208,63,255,255,255,255,255,255,255,208,21,85,87,253,85,85,85,85,64,0,0,11,252,0,11,0,0,0,0,0,15,244,0,63,192,0,0,0,0,47,240,0,127,244,0,0,0,0,63,208,0,15,253,0,0,0,0,127,128,0,3,255,128,0,0,0,255,0,0,0,255,224,0,26,171,255,171,255,255,255,248,0,31,255,255,255,255,255,255,254,0,31,255,255,255,255,255,255,255,128,31,255,254,170,165,85,0,191,192,0,0,0,0,0,0,0,47,0,0,0,0,3,248,0,0,8,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,1,255,255,255,255,255,255,248,0,1,255,255,255,255,255,255,248,0,1,255,255,255,255,255,255,248,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,21,85,85,85,85,85,85,85,80, + // 0x83dc 菜 + 220,131,34,36,68,38,2,252,0,0,63,64,0,31,192,0,0,0,0,63,64,0,31,192,0,0,0,0,63,128,0,47,192,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,63,64,0,31,192,0,0,0,0,63,64,0,31,192,0,0,0,0,42,64,0,22,255,208,0,0,1,85,170,191,255,255,244,0,31,255,255,255,255,255,255,248,0,15,255,255,255,255,254,148,0,0,15,255,254,169,80,0,0,128,0,0,0,0,6,192,0,2,253,0,1,184,0,15,208,0,3,252,0,2,253,0,11,240,0,11,244,0,0,255,0,7,244,0,15,240,0,0,63,128,3,248,0,47,192,0,0,47,192,2,224,0,127,64,0,0,15,128,3,248,0,190,0,0,0,4,0,3,248,0,8,0,0,0,0,0,3,248,0,0,0,0,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,0,0,2,255,255,244,0,0,0,0,0,11,255,255,253,0,0,0,0,0,127,243,248,255,128,0,0,0,2,255,195,248,63,248,0,0,0,47,254,3,248,15,255,128,0,6,255,244,3,248,2,255,249,0,191,255,192,3,248,0,63,255,224,255,253,0,3,248,0,7,255,224,127,208,0,3,248,0,0,127,192,41,0,0,3,248,0,0,6,64,0,0,0,3,248,0,0,0,0, + // 0x84dd 蓝 + 221,132,34,35,59,38,2,253,0,0,42,0,0,10,144,0,0,0,0,127,0,0,15,208,0,0,0,0,127,0,0,15,208,0,0,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,0,0,127,0,0,15,208,0,0,0,0,127,0,0,15,208,0,0,0,0,0,0,1,232,0,0,0,0,0,15,208,2,252,0,0,0,3,240,15,208,3,248,0,0,0,3,240,15,208,7,255,255,255,64,3,240,15,208,11,255,255,255,64,3,240,15,208,15,255,255,255,64,3,240,15,208,47,192,16,0,0,3,240,15,208,63,130,244,0,0,3,240,15,208,255,3,252,0,0,3,240,15,210,254,0,255,0,0,3,240,15,210,252,0,127,64,0,3,240,15,208,116,0,47,192,0,3,240,15,208,0,0,15,208,0,0,0,15,208,0,0,11,64,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,244,0,0,255,255,255,255,255,255,244,0,0,255,255,255,255,255,255,244,0,0,253,0,248,2,244,3,244,0,0,253,0,248,2,244,3,244,0,0,253,0,248,2,244,3,244,0,0,253,0,248,2,244,3,244,0,0,253,0,248,2,244,3,244,0,0,253,0,252,2,244,3,244,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x86c7 蛇 + 199,134,35,36,68,38,1,252,0,1,80,0,0,1,168,0,0,0,7,240,0,0,1,252,0,0,0,7,240,0,0,1,252,0,0,0,7,240,0,0,1,252,0,0,0,7,240,0,0,1,252,0,0,0,7,240,0,0,2,252,0,0,0,7,240,0,255,255,255,255,252,15,255,255,248,255,255,255,255,252,31,255,255,252,255,255,255,255,252,31,255,255,252,252,0,0,1,252,31,67,208,252,252,0,0,1,252,31,67,208,252,252,0,0,1,252,31,67,208,252,255,240,0,1,252,31,67,208,252,7,240,0,0,0,31,67,208,252,3,240,0,0,0,31,67,208,252,3,240,0,15,0,31,67,208,252,3,240,0,191,192,31,67,208,252,3,240,11,255,208,31,255,255,252,3,240,191,254,0,31,255,255,252,3,255,255,224,0,31,255,255,252,3,255,253,0,0,31,71,224,0,3,255,144,0,0,31,71,224,0,3,248,0,0,0,0,7,224,96,3,240,0,0,0,0,7,225,248,3,240,0,0,0,0,7,224,252,3,240,0,0,0,0,7,224,252,3,240,0,0,64,0,7,224,125,3,240,0,0,248,0,7,245,191,3,240,0,0,252,0,111,255,255,3,240,0,0,252,127,255,255,255,67,240,0,0,252,127,255,255,175,67,244,0,2,248,63,254,64,31,131,255,255,255,244,37,0,0,15,66,255,255,255,240,0,0,0,0,0,127,255,255,128,0,0,0,0,0,0,0,0,0, + // 0x884c 行 + 76,136,35,36,68,38,1,252,0,0,32,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,2,254,0,85,85,85,85,80,0,11,252,1,255,255,255,255,240,0,47,240,1,255,255,255,255,240,0,191,192,1,255,255,255,255,240,3,255,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,127,240,4,0,0,0,0,0,0,63,192,15,144,0,0,0,0,0,14,0,63,208,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,3,253,15,255,255,255,255,252,0,15,248,15,255,255,255,255,252,0,63,240,15,255,255,255,255,252,0,255,224,5,85,85,95,245,84,3,255,224,0,0,0,15,224,0,31,255,224,0,0,0,15,224,0,127,255,224,0,0,0,15,224,0,191,207,224,0,0,0,15,224,0,47,15,224,0,0,0,15,224,0,12,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,1,255,255,224,0,0,15,224,0,0,255,255,208,0,0,15,224,0,0,191,255,128,0,0,10,160,0,0,21,84,0,0, + // 0x88ab 被 + 171,136,36,36,68,38,1,252,0,15,192,0,0,1,252,0,0,0,31,192,0,0,1,252,0,0,0,31,192,0,0,1,252,0,0,0,31,192,0,0,1,252,0,0,0,31,192,0,0,1,252,0,0,0,31,192,0,0,1,252,0,0,0,31,192,1,255,255,255,255,252,63,255,255,193,255,255,255,255,252,63,255,255,241,255,255,255,255,252,63,255,255,209,252,2,252,3,248,0,0,47,193,252,1,252,3,244,0,0,63,129,252,1,252,3,240,0,0,127,1,252,1,252,11,240,0,0,253,1,252,1,252,6,208,0,3,252,33,252,1,252,0,0,0,11,244,189,255,255,255,255,208,0,31,241,249,255,255,255,255,240,0,127,251,225,255,255,255,255,208,0,255,255,193,255,244,0,31,192,3,255,255,66,255,248,0,63,192,31,255,239,194,249,252,0,63,128,191,255,207,226,248,253,0,191,0,191,143,195,243,244,191,0,255,0,62,15,193,211,244,63,130,253,0,40,15,192,67,240,47,199,252,0,0,15,192,7,240,15,255,244,0,0,15,192,11,240,7,255,224,0,0,15,192,15,224,3,255,192,0,0,15,192,15,208,2,255,128,0,0,15,192,31,192,15,255,240,0,0,15,192,63,128,127,255,253,0,0,15,192,127,66,255,215,255,208,0,15,192,255,47,255,1,255,253,0,15,194,253,63,248,0,63,253,0,15,192,188,31,208,0,7,244,0,15,192,20,9,0,0,0,96, + // 0x88c5 装 + 197,136,36,37,77,38,1,251,0,0,63,0,0,7,240,0,0,0,0,63,0,0,7,240,0,0,3,64,63,0,0,7,240,0,0,15,224,63,0,0,7,240,0,0,15,252,63,0,0,7,240,0,0,2,255,63,15,255,255,255,255,252,0,190,63,15,255,255,255,255,252,0,40,63,15,255,255,255,255,252,0,0,63,0,0,7,240,0,0,0,0,63,0,0,7,240,0,0,0,1,63,0,0,7,240,0,0,0,31,127,0,0,7,240,0,0,2,255,191,0,0,7,240,0,0,47,255,191,0,0,7,240,0,0,127,248,63,3,255,255,255,255,240,63,64,63,3,255,255,255,255,240,20,0,63,3,255,255,255,255,240,0,0,63,0,0,0,0,0,0,0,0,42,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,47,255,255,255,255,255,255,255,252,0,0,1,255,143,224,0,29,0,0,0,31,253,3,244,0,191,128,0,6,255,224,2,252,7,255,64,6,255,255,128,0,255,127,244,0,127,255,255,128,0,63,255,128,0,31,249,47,128,0,15,252,0,0,9,0,47,128,1,67,255,64,0,0,0,47,218,255,192,255,244,0,0,26,255,255,255,192,47,255,144,0,63,255,255,254,128,3,255,253,0,63,255,165,0,0,0,111,248,0,25,64,0,0,0,0,1,176,0,0,0,0,0,0,0,0,0, + // 0x8981 要 + 129,137,34,35,59,38,2,251,127,255,255,255,255,255,255,255,192,127,255,255,255,255,255,255,255,192,127,255,255,255,255,255,255,255,192,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,0,0,3,240,2,252,0,0,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,0,11,240,3,240,2,252,0,191,0,11,240,3,240,2,252,0,191,0,11,240,3,240,2,252,0,191,0,11,240,3,240,2,252,0,191,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,0,0,0,0,255,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,248,0,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,255,0,0,7,248,0,0,0,3,253,0,0,15,240,0,0,0,7,248,0,0,63,208,0,0,0,15,255,144,0,255,128,0,0,0,63,255,255,151,255,0,0,0,0,47,239,255,255,252,0,0,0,0,0,0,111,255,255,144,0,0,0,0,1,191,255,255,254,64,0,1,90,255,255,245,191,255,249,0,63,255,255,254,64,2,255,255,128,47,255,254,64,0,0,11,255,0,31,169,0,0,0,0,0,45,0,0,0,0,0,0,0,0,0,0, + // 0x89d2 角 + 210,137,32,37,40,38,1,251,0,0,3,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,15,255,255,255,64,0,0,0,63,255,255,255,208,0,0,0,191,255,255,255,192,0,0,0,255,0,0,191,128,0,0,3,253,0,0,255,0,0,0,15,248,0,2,253,0,0,0,63,240,0,3,248,0,0,0,255,255,255,255,255,255,255,3,255,255,255,255,255,255,255,31,255,255,255,255,255,255,255,15,255,224,0,63,128,0,127,3,139,224,0,63,128,0,127,0,11,224,0,63,128,0,127,0,11,224,0,63,128,0,127,0,11,224,0,63,128,0,127,0,11,255,255,255,255,255,255,0,15,255,255,255,255,255,255,0,15,255,255,255,255,255,255,0,15,224,0,63,128,0,127,0,15,224,0,63,128,0,127,0,15,208,0,63,128,0,127,0,15,208,0,63,128,0,127,0,31,255,255,255,255,255,255,0,47,255,255,255,255,255,255,0,63,255,255,255,255,255,255,0,63,64,0,0,0,0,127,0,191,0,0,0,0,0,127,0,254,0,0,0,0,0,127,3,253,0,0,0,0,0,127,11,248,0,0,0,0,0,127,31,240,0,0,0,21,85,191,127,208,0,0,0,47,255,255,47,128,0,0,0,15,255,253,10,0,0,0,0,15,255,224,0,0,0,0,0,0,0,0, + // 0x8ba1 计 + 161,139,35,36,68,38,2,252,0,0,0,0,0,26,128,0,0,0,176,0,0,0,47,192,0,0,1,253,0,0,0,47,192,0,0,2,255,64,0,0,47,192,0,0,0,191,208,0,0,47,192,0,0,0,31,244,0,0,47,192,0,0,0,7,252,0,0,47,192,0,0,0,2,248,0,0,47,192,0,0,0,0,160,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,255,255,192,0,0,47,192,0,0,255,255,192,255,255,255,255,255,244,255,255,192,255,255,255,255,255,244,85,111,192,255,255,255,255,255,244,0,31,192,170,170,191,234,170,164,0,31,192,0,0,47,192,0,0,0,31,192,0,0,47,192,0,0,0,31,192,0,0,47,192,0,0,0,31,192,0,0,47,192,0,0,0,31,192,0,0,47,192,0,0,0,31,192,0,0,47,192,0,0,0,31,192,0,0,47,192,0,0,0,31,192,0,0,47,192,0,0,0,31,192,96,0,47,192,0,0,0,31,194,240,0,47,192,0,0,0,31,223,244,0,47,192,0,0,0,31,255,240,0,47,192,0,0,0,47,255,128,0,47,192,0,0,0,63,253,0,0,47,192,0,0,0,255,240,0,0,47,192,0,0,0,255,128,0,0,47,192,0,0,0,125,0,0,0,47,192,0,0,0,52,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0, + // 0x8bae 议 + 174,139,35,36,68,38,2,251,0,192,0,0,2,240,0,0,0,7,240,0,0,7,244,0,16,0,7,252,0,173,3,252,0,63,128,2,254,0,254,1,253,0,127,64,0,255,64,190,0,255,0,191,0,0,63,192,127,0,191,0,191,0,0,31,128,63,0,63,128,255,0,0,9,0,63,64,47,192,254,0,0,0,0,63,128,29,1,253,0,0,0,0,47,192,0,2,252,0,0,0,0,31,192,0,3,252,0,255,255,0,15,208,0,3,248,0,255,255,0,11,240,0,7,240,0,255,255,0,7,240,0,15,240,0,85,191,0,3,248,0,15,224,0,0,63,0,2,252,0,47,208,0,0,63,0,1,253,0,63,192,0,0,63,0,0,255,0,127,64,0,0,63,0,0,191,64,255,0,0,0,63,0,0,63,193,254,0,0,0,63,0,0,47,227,252,0,0,0,63,0,0,15,251,248,0,0,0,63,0,0,7,255,240,0,0,0,63,0,0,3,255,208,0,0,0,63,1,128,1,255,192,0,0,0,63,11,192,2,255,208,0,0,0,63,127,208,11,255,244,0,0,0,63,255,192,47,255,253,0,0,0,127,254,0,255,211,255,128,0,0,191,244,7,255,64,255,244,0,0,255,208,47,253,0,63,255,64,3,255,2,255,240,0,11,255,244,0,248,15,255,128,0,1,255,244,0,96,3,253,0,0,0,47,224,0,0,1,208,0,0,0,2,192,0,0,0,0,0,0,0,0,0, + // 0x8bbe 设 + 190,139,35,36,68,38,1,251,0,52,0,0,5,85,85,64,0,0,253,0,0,47,255,255,240,0,0,255,128,0,47,255,255,240,0,0,63,224,0,47,255,255,240,0,0,15,248,0,47,128,7,240,0,0,3,253,0,47,128,7,240,0,0,1,252,0,63,64,7,240,0,0,0,112,0,63,64,7,240,0,0,0,0,0,127,0,7,240,0,0,0,0,0,255,0,7,240,0,0,0,0,2,253,0,7,240,0,127,255,192,15,252,0,3,255,252,127,255,192,127,240,0,3,255,252,127,255,192,191,192,0,0,191,252,21,111,192,46,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,31,255,255,255,255,64,0,31,192,31,255,255,255,255,192,0,31,192,31,255,255,255,255,128,0,31,192,7,249,85,85,191,64,0,31,192,2,252,0,0,255,0,0,31,192,0,254,0,2,253,0,0,31,192,0,191,0,3,252,0,0,31,192,0,63,192,15,240,0,0,31,192,192,31,240,63,208,0,0,31,195,208,11,252,255,128,0,0,31,223,240,2,255,255,0,0,0,31,255,208,0,255,252,0,0,0,31,255,64,1,255,253,0,0,0,63,252,0,31,255,255,192,0,0,191,224,1,255,254,255,253,0,0,255,128,191,255,208,47,255,248,0,125,0,255,254,0,3,255,252,0,36,0,127,208,0,0,111,240,0,0,0,36,0,0,0,1,160,0,0,0,0,0,0,0,0,0, + // 0x8bd5 试 + 213,139,35,36,68,38,2,252,0,0,0,0,0,2,168,0,0,0,208,0,0,0,3,252,184,0,3,248,0,0,0,2,252,254,0,3,254,0,0,0,2,252,127,64,0,255,128,0,0,2,252,47,192,0,63,224,0,0,2,252,15,224,0,15,240,0,0,2,252,7,192,0,3,208,0,0,2,252,1,0,0,1,66,255,255,255,255,255,244,0,0,2,255,255,255,255,255,244,0,0,2,255,255,255,255,255,244,0,0,1,85,85,86,253,85,80,255,255,64,0,0,1,252,0,0,255,255,64,0,0,1,252,0,0,255,255,64,0,0,1,252,0,0,85,127,64,0,0,0,253,0,0,0,63,64,21,85,80,253,0,0,0,63,64,191,255,244,253,0,0,0,63,64,191,255,244,254,0,0,0,63,64,191,255,244,254,0,0,0,63,64,0,253,0,254,0,0,0,63,64,0,253,0,191,0,0,0,63,64,0,253,0,191,0,0,0,63,64,0,253,0,127,0,0,0,63,64,0,253,0,127,64,0,0,63,64,0,253,0,63,64,0,0,63,65,0,253,0,63,128,208,0,63,79,128,253,45,63,192,248,0,63,255,192,255,254,47,193,248,0,63,255,155,255,255,31,210,244,0,191,253,255,255,248,15,243,240,1,255,224,255,249,0,11,255,240,2,255,64,190,64,0,3,255,224,0,248,0,0,0,0,2,255,192,0,80,0,0,0,0,0,191,128,0,0,0,0,0,0,0,25,0, + // 0x8bef 误 + 239,139,36,36,68,38,1,251,0,96,0,0,0,0,0,0,0,1,248,0,3,255,255,255,255,192,3,255,0,3,255,255,255,255,192,0,255,192,3,255,255,255,255,192,0,63,240,3,240,0,0,31,192,0,15,252,3,240,0,0,31,192,0,3,248,3,240,0,0,31,192,0,1,224,3,240,0,0,31,192,0,0,64,3,244,0,0,31,192,0,0,0,3,255,255,255,255,192,0,0,0,3,255,255,255,255,192,127,255,192,3,255,255,255,255,192,127,255,192,0,0,0,0,0,0,127,255,192,0,0,0,0,0,0,21,111,192,0,0,0,0,0,0,0,15,192,15,255,255,255,255,240,0,15,192,15,255,255,255,255,240,0,15,192,15,255,255,255,255,240,0,15,192,0,0,15,208,0,0,0,15,192,0,0,15,208,0,0,0,15,192,0,0,15,208,0,0,0,15,192,0,0,15,208,0,0,0,15,192,63,255,255,255,255,253,0,15,192,63,255,255,255,255,253,0,15,192,63,255,255,255,255,253,0,15,192,64,0,63,248,0,0,0,15,195,192,0,255,253,0,0,0,15,239,208,1,254,255,0,0,0,31,255,208,7,252,127,192,0,0,47,255,0,31,244,47,244,0,0,127,248,1,255,224,11,254,0,0,127,208,31,255,128,2,255,244,0,47,0,191,253,0,0,191,253,0,8,0,63,224,0,0,15,244,0,0,0,29,0,0,0,0,176,0,0,0,0,0,0,0,0,0, + // 0x8bf7 请 + 247,139,36,37,77,38,1,251,0,0,0,0,0,15,208,0,0,0,160,0,0,0,15,208,0,0,2,252,0,0,0,15,208,0,0,2,255,0,31,255,255,255,255,240,0,191,192,31,255,255,255,255,240,0,47,240,26,170,175,250,170,160,0,11,248,0,0,15,208,0,0,0,2,240,5,85,95,229,85,64,0,0,128,11,255,255,255,255,192,0,0,0,11,255,255,255,255,192,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,127,255,192,106,170,175,250,170,168,127,255,192,191,255,255,255,255,253,127,255,192,191,255,255,255,255,253,21,95,192,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,15,192,3,255,255,255,255,128,0,15,192,3,255,255,255,255,128,0,15,192,3,254,170,170,191,128,0,15,192,3,240,0,0,63,128,0,15,192,3,240,0,0,63,128,0,15,192,3,249,85,85,127,128,0,15,192,3,255,255,255,255,128,0,15,192,3,255,255,255,255,128,0,15,192,67,240,0,0,63,128,0,15,194,195,240,0,0,63,128,0,15,223,227,249,85,85,127,128,0,15,255,227,255,255,255,255,128,0,15,255,131,255,255,255,255,128,0,47,253,3,240,0,0,63,128,0,63,244,3,240,0,0,63,128,0,255,192,3,240,0,0,63,128,0,127,0,3,240,0,127,255,64,0,40,0,3,240,0,63,255,0,0,0,0,3,240,0,47,248,0,0,0,0,0,0,0,0,0,0, + // 0x8bfb 读 + 251,139,35,37,77,38,1,251,0,0,0,0,0,15,208,0,0,0,240,0,0,0,15,208,0,0,3,253,0,0,0,15,208,0,0,1,255,128,15,255,255,255,255,192,0,127,224,15,255,255,255,255,192,0,31,248,15,255,255,255,255,192,0,11,248,0,0,15,208,0,0,0,2,240,0,0,15,208,0,0,0,0,208,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,63,255,255,255,255,244,0,0,0,63,255,255,255,255,244,127,255,192,63,255,255,255,255,240,127,255,192,0,0,0,0,7,224,127,255,192,0,96,3,240,11,208,21,111,192,0,254,3,240,15,192,0,15,192,0,127,211,240,31,128,0,15,192,13,11,251,240,11,64,0,15,192,63,129,247,240,0,0,0,15,192,31,244,3,240,0,0,0,15,192,2,253,7,240,0,0,0,15,192,0,191,7,240,0,0,0,15,192,0,28,11,240,0,0,0,15,192,255,255,255,255,255,252,0,15,192,255,255,255,255,255,252,0,15,192,255,255,255,255,255,252,0,15,199,64,0,63,128,0,0,0,15,239,128,0,255,10,0,0,0,15,255,192,3,254,47,192,0,0,31,255,0,15,252,47,244,0,0,31,252,0,127,240,7,254,0,0,63,224,2,255,192,0,255,192,0,191,128,47,255,0,0,47,240,0,190,1,255,248,0,0,7,252,0,56,0,191,192,0,0,1,248,0,0,0,57,0,0,0,0,96,0,0,0,0,0,0,0,0,0, + // 0x8c03 调 + 3,140,34,36,68,38,1,251,0,96,0,0,0,0,0,0,0,2,248,0,47,255,255,255,255,240,3,255,0,47,255,255,255,255,240,0,255,192,47,255,255,255,255,240,0,63,240,47,128,0,0,3,240,0,15,248,47,128,11,192,3,240,0,3,244,47,128,11,192,3,240,0,0,208,47,128,11,192,3,240,0,0,0,47,135,255,255,195,240,0,0,0,47,135,255,255,195,240,0,0,0,47,130,175,234,131,240,21,85,64,47,128,11,192,3,240,127,255,192,47,128,11,192,3,240,127,255,192,47,128,11,192,3,240,127,255,192,47,143,255,255,227,240,0,31,192,47,143,255,255,227,240,0,31,192,47,138,170,170,147,240,0,31,192,47,64,0,0,3,240,0,31,192,47,64,0,0,3,240,0,31,192,47,70,170,170,67,240,0,31,192,47,75,255,255,131,240,0,31,192,63,75,255,255,131,240,0,31,192,63,11,192,15,131,240,0,31,192,63,11,192,15,131,240,0,31,192,63,11,192,15,131,240,0,31,203,127,11,192,15,131,240,0,31,255,254,11,255,255,131,240,0,31,255,253,11,255,255,131,240,0,47,254,252,11,234,170,67,240,0,63,249,252,11,192,0,3,240,0,127,211,248,5,64,0,3,240,0,255,71,240,0,0,0,7,240,0,253,15,240,0,0,11,255,240,0,52,11,208,0,0,3,255,224,0,0,1,128,0,0,3,255,64,0,0,0,0,0,0,0,0,0, + // 0x8d25 败 + 37,141,35,36,68,38,2,252,0,0,0,0,0,16,0,0,0,0,0,0,0,0,63,64,0,0,47,255,255,253,0,63,64,0,0,47,255,255,253,0,127,0,0,0,47,255,255,253,0,190,0,0,0,47,64,0,253,0,253,0,0,0,47,0,0,189,0,252,0,0,0,47,1,80,189,1,255,255,255,240,47,3,240,189,3,255,255,255,240,47,3,240,189,3,255,255,255,240,47,3,240,189,11,240,0,189,0,47,3,240,189,15,208,0,189,0,47,3,240,189,31,192,0,252,0,47,3,240,189,63,192,0,252,0,47,3,240,189,191,208,0,252,0,47,3,240,189,255,224,1,248,0,47,3,240,189,255,240,2,244,0,47,3,240,189,123,240,3,240,0,47,7,240,189,34,248,3,240,0,47,7,240,189,0,252,7,224,0,47,7,224,189,0,253,11,208,0,47,7,224,189,0,127,15,192,0,47,11,224,189,0,63,95,192,0,47,11,208,189,0,31,255,64,0,47,15,192,189,0,15,255,0,0,26,15,192,84,0,7,254,0,0,0,31,129,0,0,3,252,0,0,0,63,95,64,0,3,255,0,0,0,127,47,192,0,15,255,128,0,0,254,15,224,0,63,255,224,0,3,252,3,244,0,255,143,248,0,11,244,2,252,3,254,3,255,0,63,224,0,254,47,248,0,255,224,255,128,0,126,191,224,0,63,244,126,0,0,36,47,64,0,11,208,36,0,0,0,8,0,0,0,128, + // 0x8d2a 贪 + 42,141,35,37,77,38,2,251,0,0,0,0,116,0,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,191,255,224,0,0,0,0,0,11,255,159,254,0,0,0,0,0,191,253,2,255,228,0,0,0,31,255,226,192,127,255,144,0,6,255,254,11,244,7,255,254,64,191,255,224,3,253,0,127,255,244,255,254,0,0,255,0,2,255,224,63,208,0,0,61,0,0,27,192,20,63,255,255,255,255,253,0,0,0,63,255,255,255,255,255,64,0,0,63,255,255,255,255,253,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,191,64,0,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,0,0,0,0,31,192,0,0,63,0,2,164,0,31,192,0,0,63,0,3,248,0,31,192,0,0,63,0,3,248,0,31,192,0,0,63,0,3,248,0,31,192,0,0,63,0,3,248,0,31,192,0,0,63,0,7,244,0,31,192,0,0,63,0,15,240,0,31,192,0,0,63,0,63,227,224,26,128,0,0,0,1,255,203,255,128,0,0,0,0,31,255,11,255,253,0,0,0,6,255,248,0,111,255,224,0,1,191,255,208,0,1,255,254,0,47,255,253,0,0,0,27,255,128,11,255,128,0,0,0,0,191,0,3,224,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0, + // 0x8d77 起 + 119,141,36,37,77,38,1,251,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,2,255,255,255,208,0,0,253,0,2,255,255,255,208,15,255,255,255,194,255,255,255,208,15,255,255,255,192,0,0,15,208,15,255,255,255,192,0,0,15,208,0,0,253,0,0,0,0,15,208,0,0,253,0,0,0,0,15,208,0,0,253,0,0,0,0,15,208,0,0,253,0,0,0,0,15,208,0,0,253,0,0,0,0,15,208,63,255,255,255,240,170,170,175,208,63,255,255,255,241,255,255,255,208,63,255,255,255,241,255,255,255,208,0,0,127,0,1,252,0,15,208,0,0,127,0,1,252,0,0,0,0,0,127,0,1,252,0,0,0,7,240,127,0,1,252,0,0,0,7,240,127,0,1,252,0,0,0,11,240,127,255,225,252,0,0,0,11,224,127,255,225,252,0,0,164,11,224,127,255,225,252,0,0,189,11,240,127,0,1,252,0,0,253,15,240,127,0,1,252,0,0,252,15,248,127,0,0,253,0,1,252,15,252,127,0,0,255,255,255,252,15,255,127,0,0,191,255,255,244,15,255,255,0,0,47,255,255,208,31,239,255,0,0,0,0,0,0,47,143,255,64,0,0,0,0,0,63,67,255,254,165,85,85,85,85,63,64,191,255,255,255,255,255,253,191,0,27,255,255,255,255,255,252,254,0,0,27,255,255,255,255,248,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x8d85 超 + 133,141,36,36,68,38,1,252,0,1,248,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,1,252,0,15,255,255,255,244,0,1,252,0,15,255,255,255,240,0,1,252,0,15,255,255,255,240,15,255,255,255,128,11,224,3,240,15,255,255,255,128,15,208,7,240,15,255,255,255,128,15,192,7,240,0,1,252,0,0,47,192,7,240,0,1,252,0,0,63,128,11,240,0,1,252,0,0,191,0,15,224,0,1,252,0,2,254,0,15,224,63,255,255,255,219,248,31,255,208,63,255,255,255,255,240,15,255,192,63,255,255,255,255,128,11,254,0,0,0,253,0,5,0,0,0,0,0,0,253,0,3,255,255,255,208,7,208,253,0,3,255,255,255,208,11,224,253,0,3,255,255,255,208,11,224,253,0,3,240,0,15,208,11,224,255,255,195,240,0,15,208,11,224,255,255,195,240,0,15,208,11,208,255,255,195,240,0,15,208,11,224,253,0,3,240,0,15,208,15,240,253,0,3,240,0,15,208,15,240,253,0,3,240,0,15,208,15,248,253,0,3,255,255,255,208,15,253,253,0,3,255,255,255,208,31,255,253,0,3,255,255,255,208,31,255,253,0,0,0,0,0,0,47,143,254,0,0,0,0,0,0,63,71,255,254,165,85,85,85,85,127,0,255,255,255,255,255,255,253,191,0,31,255,255,255,255,255,252,189,0,0,107,255,255,255,255,248,8,0,0,0,0,0,0,0,0, + // 0x8ddd 距 + 221,141,36,35,59,38,1,252,0,0,0,0,5,85,85,85,84,11,255,255,252,31,255,255,255,252,11,255,255,252,31,255,255,255,252,11,255,255,252,31,255,255,255,252,11,208,0,252,31,192,0,0,0,11,208,0,252,31,192,0,0,0,11,208,0,252,31,192,0,0,0,11,208,0,252,31,192,0,0,0,11,208,0,252,31,192,0,0,0,11,224,0,252,31,213,85,85,64,11,255,255,252,31,255,255,255,208,11,255,255,252,31,255,255,255,208,11,255,255,252,31,255,255,255,208,0,1,248,0,31,192,0,15,208,0,1,248,0,31,192,0,15,208,0,1,248,0,31,192,0,15,208,11,193,248,0,31,192,0,15,208,11,193,248,0,31,192,0,15,208,11,193,255,255,31,192,0,15,208,11,193,255,255,31,192,0,15,208,11,193,255,255,31,213,85,95,208,11,193,248,0,31,255,255,255,208,11,193,248,0,31,255,255,255,208,11,193,248,0,31,255,255,255,208,11,193,248,0,31,192,0,0,0,11,193,248,0,31,192,0,0,0,11,193,248,6,31,192,0,0,0,11,193,254,255,31,192,0,0,0,11,219,255,255,95,192,0,0,0,47,255,255,254,31,213,85,85,84,191,255,254,64,31,255,255,255,253,127,254,64,0,31,255,255,255,253,58,64,0,0,31,255,255,255,253,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0, + // 0x8f6c 转 + 108,143,36,37,77,38,1,251,0,6,64,0,0,0,164,0,0,0,11,240,0,0,0,253,0,0,0,15,224,0,0,1,253,0,0,0,15,208,0,0,2,252,0,0,0,31,208,0,0,3,252,0,0,127,255,255,252,127,255,255,255,240,127,255,255,252,127,255,255,255,240,127,255,255,252,127,255,255,255,240,0,63,0,0,0,15,224,0,0,0,190,0,0,0,15,208,0,0,0,252,0,0,0,31,192,0,0,0,252,253,0,85,111,213,85,84,1,248,253,3,255,255,255,255,253,3,240,253,3,255,255,255,255,253,3,240,253,3,255,255,255,255,253,11,208,253,0,0,255,0,0,0,15,208,254,0,0,254,0,0,0,47,255,255,252,1,253,0,0,0,47,255,255,252,2,252,0,0,0,15,255,255,252,3,255,255,255,208,4,0,253,0,7,255,255,255,240,0,0,253,0,11,255,255,255,192,0,0,253,0,5,85,85,255,64,0,0,253,6,0,0,1,255,0,0,0,255,255,0,0,3,252,0,1,111,255,255,0,0,11,244,0,127,255,255,255,0,248,31,224,0,63,255,255,80,3,255,127,192,0,63,249,253,0,1,255,255,0,0,20,0,253,0,0,47,254,0,0,0,0,253,0,0,7,255,128,0,0,0,253,0,0,0,255,224,0,0,0,253,0,0,0,47,252,0,0,0,253,0,0,0,7,254,0,0,0,253,0,0,0,1,248,0,0,0,253,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0, + // 0x8f6f 软 + 111,143,35,36,68,38,1,252,0,0,144,0,0,57,0,0,0,0,1,252,0,0,63,64,0,0,0,2,252,0,0,127,0,0,0,0,3,248,0,0,127,0,0,0,21,87,249,85,64,191,0,0,0,63,255,255,255,192,254,0,0,0,63,255,255,255,192,255,255,255,248,63,255,255,255,193,255,255,255,252,0,31,192,0,2,255,255,255,252,0,47,128,0,3,248,0,2,252,0,63,64,0,7,244,0,2,248,0,127,47,128,11,240,0,3,244,0,190,47,128,15,224,0,3,240,0,253,47,128,47,208,252,7,240,2,252,47,128,63,192,252,7,224,3,244,47,128,191,64,252,11,208,11,244,47,128,31,0,252,11,192,31,255,255,255,193,1,252,0,64,15,255,255,255,192,1,252,0,0,15,255,255,255,192,1,253,0,0,0,0,47,128,0,2,254,0,0,0,0,47,128,0,2,255,0,0,0,0,47,128,0,3,255,0,0,0,0,47,128,0,7,255,64,0,0,0,47,239,192,11,255,192,0,1,107,255,255,208,15,255,208,0,127,255,255,255,208,31,219,240,0,63,255,255,229,0,63,199,244,0,63,254,191,128,0,191,67,252,0,37,0,47,128,1,255,1,254,0,0,0,47,128,3,253,0,255,128,0,0,47,128,15,248,0,63,224,0,0,47,128,127,224,0,31,252,0,0,47,128,255,192,0,11,252,0,0,47,128,126,0,0,1,244,0,0,31,64,24,0,0,0,96, + // 0x8f74 轴 + 116,143,35,37,77,38,1,251,0,10,64,0,0,1,252,0,0,0,15,224,0,0,1,252,0,0,0,15,208,0,0,1,252,0,0,0,15,192,0,0,1,252,0,0,21,95,213,80,0,1,252,0,0,63,255,255,252,0,1,252,0,0,63,255,255,252,0,1,252,0,0,63,255,255,252,0,1,252,0,0,0,127,0,0,0,2,253,0,0,0,190,0,0,191,255,255,255,244,0,253,0,0,191,255,255,255,244,0,252,190,0,191,255,255,255,244,1,252,190,0,190,0,252,3,244,2,244,190,0,190,0,252,3,244,3,240,190,0,190,0,252,3,244,7,224,190,0,190,0,252,3,244,15,208,190,0,190,0,252,3,244,47,255,255,252,190,0,252,3,244,31,255,255,252,190,0,252,3,244,15,255,255,252,191,255,255,255,244,4,0,190,0,191,255,255,255,244,0,0,190,0,191,255,255,255,244,0,0,190,0,190,1,252,3,244,0,0,190,20,190,0,252,3,244,0,0,191,252,190,0,252,3,244,0,107,255,252,190,0,252,3,244,127,255,255,252,190,0,252,3,244,63,255,255,144,190,0,252,3,244,63,254,254,0,190,0,252,3,244,41,0,190,0,190,0,252,3,244,0,0,190,0,190,1,252,3,244,0,0,190,0,191,255,255,255,244,0,0,190,0,191,255,255,255,244,0,0,190,0,191,255,255,255,244,0,0,190,0,190,0,0,3,244,0,0,125,0,190,0,0,3,244,0,0,0,0,0,0,0,0,0, + // 0x8f7d 载 + 125,143,35,36,68,38,2,252,0,0,63,0,0,42,0,0,0,0,0,63,0,0,63,66,192,0,0,0,63,0,0,63,79,244,0,15,255,255,255,248,63,67,252,0,15,255,255,255,248,63,64,255,0,15,255,255,255,248,63,64,127,128,0,0,63,0,0,63,64,47,0,0,0,63,0,0,63,64,8,0,0,0,63,0,0,63,64,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,0,3,228,0,0,63,128,0,0,0,11,240,0,0,47,128,16,0,0,15,224,0,0,47,192,63,64,127,255,255,255,255,47,192,63,0,127,255,255,255,255,31,192,191,0,127,255,255,255,254,31,192,253,0,0,254,0,0,0,31,192,252,0,1,252,11,224,0,15,210,252,0,3,248,11,224,0,15,211,244,0,11,240,11,224,0,15,231,240,0,31,255,255,255,253,11,239,224,0,15,255,255,255,252,11,255,192,0,15,255,255,255,252,7,255,128,0,4,0,11,224,0,3,255,0,0,0,0,11,224,0,3,254,0,0,0,0,11,224,21,3,252,1,208,21,171,255,255,255,11,252,1,244,127,255,255,255,255,31,254,1,244,127,255,255,254,80,127,255,2,240,62,149,11,224,1,255,127,211,240,0,0,11,224,11,253,47,255,240,0,0,11,224,47,244,11,255,208,0,0,11,224,11,208,2,255,128,0,0,5,80,2,0,0,20,0, + // 0x8f91 辑 + 145,143,36,36,68,38,1,252,0,10,64,0,0,0,0,0,0,0,15,224,0,42,170,170,170,64,0,15,208,0,63,255,255,255,192,0,31,192,0,63,255,255,255,192,21,111,213,80,63,64,0,47,192,63,255,255,248,63,64,0,47,192,63,255,255,248,63,64,0,47,192,63,255,255,248,63,255,255,255,192,0,127,0,0,63,255,255,255,192,0,190,0,0,42,170,170,170,128,0,252,84,0,0,0,0,0,0,0,252,253,0,0,0,0,0,0,2,248,253,3,255,255,255,255,252,3,244,253,3,255,255,255,255,252,3,240,253,3,255,255,255,255,252,11,224,253,0,47,128,0,47,128,15,208,253,0,47,128,0,47,128,47,255,255,244,47,234,170,191,128,47,255,255,244,47,255,255,255,128,15,255,255,244,47,255,255,255,128,4,0,253,0,47,128,0,47,128,0,0,253,0,47,128,0,47,128,0,0,253,0,47,128,0,47,128,0,0,253,0,47,255,255,255,128,0,1,255,252,47,255,255,255,128,26,255,255,252,47,234,170,191,128,127,255,255,252,47,128,0,47,128,63,255,253,0,47,128,0,47,128,62,144,253,0,63,150,171,255,253,0,0,253,11,255,255,255,255,253,0,0,253,11,255,255,255,255,253,0,0,253,7,255,234,80,47,128,0,0,253,0,0,0,0,47,128,0,0,253,0,0,0,0,47,128,0,0,253,0,0,0,0,47,128,0,0,169,0,0,0,0,47,128, + // 0x8f93 输 + 147,143,36,36,68,38,1,252,0,41,0,0,0,2,208,0,0,0,63,0,0,0,7,244,0,0,0,63,0,0,0,15,240,0,0,0,127,0,0,0,63,252,0,0,0,191,0,0,0,255,255,0,0,63,255,255,192,7,252,63,192,0,63,255,255,192,47,240,15,244,0,63,255,255,192,255,192,2,254,0,0,252,0,11,254,0,0,127,224,1,248,0,127,255,255,255,255,254,2,244,0,63,255,255,255,255,252,3,242,240,31,127,255,255,253,180,3,243,240,0,0,0,0,0,0,7,211,240,0,0,0,0,0,80,11,195,240,0,0,0,0,2,240,15,195,240,7,255,255,199,194,240,31,131,244,7,255,255,199,210,240,63,255,255,199,255,255,199,210,240,63,255,255,199,208,15,199,210,240,47,255,255,199,208,15,199,210,240,4,3,240,7,255,255,199,210,240,0,3,240,7,255,255,199,210,240,0,3,240,7,250,175,199,210,240,0,3,245,135,208,15,199,210,240,0,3,255,199,208,15,199,210,240,6,255,255,199,250,175,199,210,240,127,255,255,135,255,255,199,210,240,63,255,240,7,255,255,199,210,240,63,147,240,7,208,15,199,210,240,0,3,240,7,208,15,199,194,240,0,3,240,7,208,15,192,2,240,0,3,240,7,208,15,192,2,240,0,3,240,7,208,15,192,2,240,0,3,240,7,210,255,130,255,240,0,3,240,7,209,255,65,255,224,0,2,240,7,208,233,0,250,64, + // 0x8fb9 边 + 185,143,36,37,77,38,1,251,0,0,0,0,0,84,0,0,0,1,224,0,0,1,253,0,0,0,11,248,0,0,1,253,0,0,0,3,254,0,0,1,253,0,0,0,0,255,128,0,1,253,0,0,0,0,127,208,0,1,252,0,0,0,0,31,240,0,2,252,0,0,0,0,11,240,255,255,255,255,255,240,0,3,192,255,255,255,255,255,240,0,0,0,255,255,255,255,255,240,0,0,0,85,87,253,85,95,240,0,0,0,0,3,248,0,11,240,0,0,0,0,3,248,0,11,240,127,255,192,0,7,244,0,15,240,127,255,192,0,7,244,0,15,224,127,255,192,0,11,240,0,15,224,21,127,192,0,15,240,0,15,224,0,47,192,0,31,224,0,15,224,0,47,192,0,47,192,0,15,224,0,47,192,0,63,192,0,15,208,0,47,192,0,127,128,0,31,208,0,47,192,0,255,0,0,31,208,0,47,192,2,254,0,0,47,192,0,47,192,7,252,0,0,47,192,0,47,192,15,244,0,0,63,192,0,47,192,127,240,0,0,127,128,0,47,193,255,192,11,255,255,64,0,47,194,255,0,3,255,255,0,0,127,192,184,0,3,255,252,0,3,255,244,16,0,1,85,64,0,15,255,255,64,0,0,0,0,0,63,245,255,249,64,0,0,21,106,255,192,47,255,255,255,255,255,253,127,64,3,255,255,255,255,255,252,46,0,0,47,255,255,255,255,252,8,0,0,0,21,85,85,85,0,0,0,0,0,0,0,0,0,0, + // 0x8fc1 迁 + 193,143,36,36,68,38,1,252,0,0,0,0,0,0,0,4,0,0,244,0,0,0,0,6,253,0,3,254,0,0,0,22,255,255,64,1,255,192,1,175,255,255,255,64,0,63,244,255,255,255,255,144,0,0,11,252,191,255,255,144,0,0,0,2,240,127,165,63,64,0,0,0,0,128,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,7,192,0,0,0,63,64,0,0,31,248,0,0,0,63,64,0,0,15,255,0,0,0,63,64,0,0,1,255,208,0,0,63,64,0,0,0,63,240,0,0,63,128,0,0,0,11,195,255,255,255,255,255,252,0,2,3,255,255,255,255,255,252,0,0,3,255,255,255,255,255,252,0,0,0,0,0,63,64,0,0,63,255,208,0,0,63,64,0,0,63,255,208,0,0,63,64,0,0,63,255,208,0,0,63,64,0,0,21,95,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,15,208,0,0,63,64,0,0,0,63,240,0,0,63,64,0,0,1,255,253,0,0,63,64,0,0,11,255,255,144,0,0,0,0,0,63,248,127,254,149,85,85,85,89,127,224,15,255,255,255,255,255,252,63,64,1,255,255,255,255,255,252,28,0,0,10,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0x8fd0 运 + 208,143,36,36,68,38,1,252,0,64,0,0,0,0,0,0,0,1,248,0,0,0,0,0,0,0,3,255,64,31,255,255,255,255,192,1,255,224,31,255,255,255,255,192,0,47,248,31,255,255,255,255,192,0,7,244,5,85,85,85,85,64,0,1,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,64,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,47,253,0,0,0,0,0,0,0,7,255,130,255,255,255,255,255,253,0,191,226,255,255,255,255,255,253,0,47,194,255,255,255,255,255,253,0,7,0,85,95,249,85,85,84,0,0,0,0,15,240,0,0,0,0,0,0,0,31,224,1,64,0,0,0,0,0,47,192,15,208,0,63,255,192,0,63,192,15,240,0,63,255,192,0,127,64,3,248,0,63,255,192,0,191,0,1,253,0,21,111,192,0,254,0,0,255,0,0,31,192,1,252,0,0,63,128,0,31,192,3,248,5,106,255,208,0,31,192,171,255,255,255,255,240,0,31,193,255,255,255,255,255,244,0,31,192,255,255,255,234,87,252,0,31,192,254,165,0,0,2,252,0,127,240,0,0,0,0,0,208,1,255,248,0,0,0,0,0,0,11,255,255,64,0,0,0,0,0,127,244,191,254,85,0,1,85,85,127,208,47,255,255,255,255,255,252,63,64,2,255,255,255,255,255,252,28,0,0,27,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0x8fd1 近 + 209,143,36,36,68,38,1,252,0,0,0,0,0,0,0,40,0,2,64,0,0,0,0,27,254,0,15,224,0,0,0,111,255,255,192,31,252,0,7,255,255,255,249,0,3,255,0,7,255,255,249,0,0,0,255,192,7,255,164,0,0,0,0,63,240,7,240,0,0,0,0,0,15,224,7,240,0,0,0,0,0,3,64,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,255,255,255,255,252,0,0,0,7,255,255,255,255,252,0,0,0,7,255,255,255,255,252,0,0,0,11,245,85,127,149,84,63,255,208,11,240,0,63,64,0,63,255,208,15,224,0,63,64,0,63,255,208,15,224,0,63,64,0,21,95,208,15,208,0,63,64,0,0,15,208,31,192,0,63,64,0,0,15,208,47,192,0,63,64,0,0,15,208,63,128,0,63,64,0,0,15,208,127,64,0,63,64,0,0,15,208,255,0,0,63,64,0,0,15,209,254,0,0,63,64,0,0,15,211,252,0,0,63,64,0,0,15,219,244,0,0,63,64,0,0,31,210,240,0,0,63,64,0,0,127,240,128,0,0,63,64,0,2,255,253,0,0,0,63,64,0,15,255,255,144,0,0,0,0,0,127,248,127,254,149,85,85,85,169,127,224,31,255,255,255,255,255,252,63,64,2,255,255,255,255,255,252,28,0,0,26,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0x8fd4 返 + 212,143,36,35,59,38,1,252,2,64,0,0,0,0,0,0,0,15,208,0,31,255,255,255,255,240,31,248,0,31,255,255,255,255,240,7,254,0,31,255,255,255,255,240,1,255,128,31,213,85,85,85,80,0,127,208,31,192,0,0,0,0,0,31,224,31,192,0,0,0,0,0,11,64,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,47,255,255,255,255,128,0,0,0,47,255,255,255,255,128,0,0,0,47,255,255,255,255,64,0,0,0,47,239,192,0,191,0,0,0,0,47,207,208,0,254,0,63,255,192,47,139,240,1,253,0,63,255,192,63,135,244,3,252,0,63,255,192,63,131,252,11,244,0,21,111,192,63,65,254,31,240,0,0,47,192,127,0,191,127,208,0,0,47,192,191,0,63,255,128,0,0,47,192,255,0,31,255,0,0,0,47,192,253,0,15,253,0,0,0,47,193,252,0,63,255,64,0,0,47,195,252,1,255,255,240,0,0,47,199,244,27,255,127,254,0,0,47,207,241,255,252,11,255,228,0,47,203,210,255,224,1,255,252,0,127,241,192,255,0,0,47,244,2,255,252,0,52,0,0,1,224,15,255,255,128,0,0,0,0,0,127,244,191,254,149,85,85,85,105,127,208,47,255,255,255,255,255,252,63,64,2,255,255,255,255,255,252,28,0,0,27,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0x8fd8 还 + 216,143,36,37,77,38,1,251,0,64,0,0,0,0,0,0,0,2,240,0,0,0,0,0,0,0,11,252,0,85,85,85,85,85,80,3,255,1,255,255,255,255,255,240,0,255,193,255,255,255,255,255,240,0,63,225,255,255,255,255,255,240,0,15,244,0,0,15,240,0,0,0,7,224,0,0,47,208,0,0,0,2,64,0,0,127,192,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,15,255,5,0,0,127,255,192,0,63,255,31,64,0,127,255,192,0,191,255,127,208,0,127,255,192,2,255,191,31,244,0,21,127,192,11,253,127,7,253,0,0,47,192,47,244,127,2,255,64,0,47,192,255,224,127,0,191,208,0,47,199,255,128,127,0,47,240,0,47,207,253,0,127,0,15,252,0,47,199,244,0,127,0,3,240,0,47,193,192,0,127,0,0,192,0,47,192,0,0,127,0,0,0,0,47,192,0,0,127,0,0,0,0,47,192,0,0,127,0,0,0,0,47,192,0,0,127,0,0,0,0,47,192,0,0,127,0,0,0,0,191,208,0,0,127,0,0,0,3,255,248,0,0,127,0,0,0,15,255,255,64,0,0,0,0,0,63,245,255,249,64,0,0,21,170,255,192,47,255,255,255,255,255,253,127,64,3,255,255,255,255,255,252,46,0,0,47,255,255,255,255,252,8,0,0,0,21,85,85,85,0,0,0,0,0,0,0,0,0,0, + // 0x8fdb 进 + 219,143,36,35,59,38,1,252,1,192,0,0,63,128,15,208,0,11,240,0,0,63,128,15,208,0,11,252,0,0,63,128,15,208,0,2,255,0,0,63,128,15,208,0,0,191,192,0,63,128,15,208,0,0,47,240,0,63,128,15,208,0,0,15,240,255,255,255,255,255,240,0,3,128,255,255,255,255,255,240,0,0,0,255,255,255,255,255,240,0,0,0,85,127,149,95,229,80,0,0,0,0,63,128,15,208,0,0,0,0,0,63,128,15,208,0,0,0,0,0,63,128,15,208,0,63,255,208,0,63,128,15,208,0,63,255,208,0,63,64,15,208,0,63,255,208,85,127,149,95,229,84,21,95,209,255,255,255,255,255,252,0,15,209,255,255,255,255,255,252,0,15,209,255,255,255,255,255,252,0,15,208,0,191,0,15,208,0,0,15,208,0,254,0,15,208,0,0,15,208,1,253,0,15,208,0,0,15,208,2,252,0,15,208,0,0,15,208,7,248,0,15,208,0,0,15,208,15,244,0,15,208,0,0,15,208,63,224,0,15,208,0,0,15,208,127,192,0,15,208,0,0,127,224,31,64,0,15,208,0,2,255,253,9,0,0,10,144,0,11,255,255,208,0,0,0,0,0,47,240,63,255,149,85,85,106,253,127,192,11,255,255,255,255,255,252,47,64,0,191,255,255,255,255,252,14,0,0,6,191,255,255,255,164,0,0,0,0,0,0,0,0,0, + // 0x8fde 连 + 222,143,36,37,77,38,1,251,0,64,0,0,10,64,0,0,0,2,224,0,0,15,240,0,0,0,11,248,0,0,15,240,0,0,0,3,253,0,0,47,208,0,0,0,0,255,66,255,255,255,255,255,240,0,127,194,255,255,255,255,255,240,0,31,226,255,255,255,255,255,240,0,15,224,0,254,0,0,0,0,0,3,64,2,252,0,0,0,0,0,0,0,3,252,11,240,0,0,0,0,0,7,244,11,240,0,0,0,0,0,15,240,11,240,0,0,0,0,0,47,192,11,240,0,0,63,255,192,191,255,255,255,255,192,63,255,192,127,255,255,255,255,192,63,255,192,63,255,255,255,255,192,21,111,192,37,85,91,245,85,64,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,195,255,255,255,255,255,248,0,47,195,255,255,255,255,255,248,0,47,195,255,255,255,255,255,248,0,47,193,85,85,91,245,85,80,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,191,208,0,0,11,240,0,0,3,255,248,0,0,11,240,0,0,15,255,255,64,0,11,240,0,0,63,244,255,249,64,0,0,21,170,191,192,47,255,255,255,255,255,253,127,64,3,255,255,255,255,255,252,46,0,0,47,255,255,255,255,252,8,0,0,0,21,85,85,85,0,0,0,0,0,0,0,0,0,0, + // 0x8ff7 迷 + 247,143,36,36,68,38,1,252,0,0,0,0,0,21,0,0,0,2,64,0,0,0,63,64,0,0,15,224,0,29,0,63,64,15,128,31,252,0,191,0,63,64,31,224,7,255,0,63,64,63,64,63,192,0,255,192,47,192,63,64,63,64,0,63,240,15,208,63,64,191,0,0,15,224,15,240,63,64,253,0,0,3,64,7,240,63,66,252,0,0,0,0,3,224,63,66,240,0,0,0,0,1,0,63,64,16,0,0,0,0,0,0,63,64,0,0,0,0,3,255,255,255,255,255,248,0,0,3,255,255,255,255,255,248,0,0,3,255,255,255,255,255,248,63,255,209,85,87,255,249,85,80,63,255,208,0,11,255,252,0,0,63,255,208,0,31,255,254,0,0,21,95,208,0,63,255,191,64,0,0,15,208,0,255,127,111,192,0,0,15,208,2,253,63,79,240,0,0,15,208,7,248,63,71,252,0,0,15,208,31,240,63,66,255,0,0,15,208,191,208,63,64,255,208,0,15,211,255,64,63,64,63,248,0,15,219,253,0,63,64,15,252,0,15,210,244,0,63,64,3,240,0,31,208,208,0,63,64,0,128,0,127,240,0,0,63,64,0,0,2,255,253,0,0,63,64,0,0,15,255,255,144,0,0,0,0,0,127,248,127,254,149,85,85,85,169,127,224,31,255,255,255,255,255,252,63,64,2,255,255,255,255,255,252,28,0,0,26,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0x9000 退 + 0,144,36,34,50,38,1,252,3,208,0,15,255,255,255,254,0,15,248,0,15,255,255,255,254,0,7,255,0,15,255,255,255,254,0,0,255,192,15,224,0,0,190,0,0,47,240,15,224,0,0,190,0,0,11,240,15,250,170,170,254,0,0,3,128,15,255,255,255,254,0,0,0,0,15,255,255,255,254,0,0,0,0,15,224,0,0,190,0,0,0,0,15,224,0,0,190,0,0,0,0,15,224,0,0,190,0,0,0,0,15,255,255,255,254,0,0,0,0,15,255,255,255,254,0,63,255,208,15,255,255,255,255,0,63,255,208,15,224,31,192,3,192,63,255,208,15,224,15,208,31,244,21,95,208,15,224,11,240,191,224,0,15,208,15,224,3,247,255,64,0,15,208,15,224,3,255,248,0,0,15,208,15,224,0,255,208,0,0,15,208,15,224,0,191,128,0,0,15,208,15,224,6,127,224,0,0,15,208,15,230,255,95,252,0,0,15,208,31,255,255,135,255,128,0,15,209,255,255,254,65,255,248,0,31,208,255,255,144,0,127,248,0,127,240,255,144,0,0,11,240,2,255,253,80,0,0,0,0,128,15,255,255,144,0,0,0,0,0,127,248,127,254,149,85,85,85,169,127,224,31,255,255,255,255,255,252,63,64,2,255,255,255,255,255,252,28,0,0,26,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0x9009 选 + 9,144,35,36,68,38,2,252,0,0,0,0,0,127,0,0,0,5,0,0,6,64,127,0,0,0,47,64,0,15,224,127,0,0,0,127,208,0,15,208,127,0,0,0,31,248,0,47,192,127,0,0,0,7,253,0,63,255,255,255,255,64,1,255,64,191,255,255,255,255,64,0,191,128,255,255,255,255,255,64,0,61,3,253,0,127,0,0,0,0,0,7,248,0,127,0,0,0,0,0,7,240,0,127,0,0,0,0,0,0,224,0,127,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0,0,0,15,255,255,255,255,255,240,255,255,15,255,255,255,255,255,240,255,255,15,255,255,255,255,255,240,255,255,0,0,127,1,252,0,0,21,191,0,0,191,1,252,0,0,0,127,0,0,255,1,252,0,0,0,127,0,0,254,1,252,0,0,0,127,0,2,253,1,252,0,0,0,127,0,3,252,1,252,2,128,0,127,0,11,244,1,252,2,244,0,127,0,47,240,1,252,3,244,0,127,1,255,192,1,252,3,240,0,127,31,255,64,1,255,255,240,0,127,15,252,0,0,255,255,224,0,127,199,224,0,0,127,255,192,1,255,245,0,0,0,1,84,0,15,255,254,0,0,0,0,0,0,63,248,191,249,0,0,0,21,164,255,208,31,255,255,255,255,255,240,191,64,2,255,255,255,255,255,240,61,0,0,27,255,255,255,255,224,20,0,0,0,1,85,64,0,0, + // 0x901f 速 + 31,144,36,36,68,38,1,252,0,0,0,0,0,63,64,0,0,2,64,0,0,0,63,64,0,0,15,224,0,0,0,63,64,0,0,31,248,0,0,0,63,64,0,0,7,255,3,255,255,255,255,255,248,1,255,195,255,255,255,255,255,248,0,63,243,255,255,255,255,255,248,0,15,240,0,0,63,64,0,0,0,7,128,0,0,63,64,0,0,0,1,0,0,0,63,64,0,0,0,0,0,127,255,255,255,255,192,0,0,0,127,255,255,255,255,192,0,0,0,127,170,255,234,191,192,0,0,0,127,0,63,64,15,192,0,0,0,127,0,63,64,15,192,63,255,208,127,0,63,64,15,192,63,255,208,127,0,63,64,15,192,63,255,208,127,255,255,255,255,192,21,95,208,127,255,255,255,255,192,0,15,208,127,255,255,255,255,192,0,15,208,0,7,255,244,0,0,0,15,208,0,31,255,253,0,0,0,15,208,0,127,191,255,128,0,0,15,208,1,255,63,95,240,0,0,15,208,11,252,63,71,253,0,0,15,208,127,240,63,65,255,192,0,15,211,255,192,63,64,127,248,0,31,211,254,0,63,64,31,240,0,127,240,244,0,63,64,2,208,2,255,253,0,0,63,64,0,0,15,255,255,144,0,21,0,0,0,127,248,127,254,149,85,85,85,169,127,224,31,255,255,255,255,255,252,63,64,2,255,255,255,255,255,252,28,0,0,26,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0x90e8 部 + 232,144,36,36,68,38,1,252,0,0,42,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,5,85,85,64,0,0,63,0,0,47,255,255,244,31,255,255,255,254,47,255,255,253,31,255,255,255,254,47,255,255,252,31,255,255,255,254,47,192,3,248,0,4,0,5,0,47,192,11,240,0,252,0,15,208,47,192,15,224,0,253,0,15,192,47,192,31,208,0,190,0,31,192,47,192,47,192,0,127,0,63,64,47,192,63,64,0,63,0,63,0,47,192,127,0,0,63,64,126,0,47,192,254,0,0,37,0,25,0,47,193,252,0,127,255,255,255,255,47,194,252,0,127,255,255,255,255,47,194,253,0,127,255,255,255,255,47,192,191,0,0,0,0,0,0,47,192,47,192,0,0,0,0,0,47,192,15,224,0,0,0,0,0,47,192,7,240,3,255,255,255,240,47,192,3,244,3,255,255,255,240,47,192,2,248,3,255,255,255,240,47,192,2,252,3,244,0,7,240,47,192,2,252,3,244,0,7,240,47,192,2,252,3,244,0,7,240,47,192,3,252,3,244,0,7,240,47,193,111,248,3,244,0,7,240,47,195,255,240,3,244,0,7,240,47,195,255,224,3,244,0,7,240,47,194,254,64,3,255,255,255,240,47,192,0,0,3,255,255,255,240,47,192,0,0,3,255,255,255,240,47,192,0,0,3,244,0,7,240,47,192,0,0,3,244,0,3,240,31,192,0,0, + // 0x914d 配 + 77,145,35,34,50,38,2,252,255,255,255,255,199,255,255,255,192,255,255,255,255,199,255,255,255,192,255,255,255,255,199,255,255,255,192,0,47,31,0,1,85,85,95,192,0,47,31,0,0,0,0,15,192,0,47,31,0,0,0,0,15,192,0,47,31,0,0,0,0,15,192,63,255,255,255,64,0,0,15,192,63,255,255,255,64,0,0,15,192,63,255,255,255,64,0,0,15,192,62,14,44,47,64,0,0,15,192,62,14,44,47,64,0,0,15,192,62,14,44,47,67,255,255,255,192,62,14,44,47,67,255,255,255,192,62,14,44,47,67,255,255,255,192,62,29,44,47,67,249,85,95,192,62,60,45,47,67,244,0,15,192,62,60,31,255,67,244,0,15,192,63,244,15,255,67,244,0,0,0,62,160,0,47,67,244,0,0,0,62,0,0,47,67,244,0,0,0,62,0,0,47,67,244,0,0,0,63,170,170,191,67,244,0,0,0,63,255,255,255,67,244,0,0,0,63,255,255,255,67,244,0,2,208,62,0,0,47,67,244,0,2,248,62,0,0,47,67,244,0,2,248,62,0,0,47,67,244,0,3,244,63,255,255,255,67,244,0,3,244,63,255,255,255,67,248,0,11,240,63,255,255,255,67,255,255,255,240,62,0,0,47,66,255,255,255,208,62,0,0,47,64,191,255,255,128,41,0,0,0,0,1,85,80,0, + // 0x91ca 释 + 202,145,36,36,68,38,1,252,0,0,0,80,0,0,0,0,0,0,5,175,248,0,0,0,0,0,47,255,255,252,127,255,255,255,240,63,255,255,248,127,255,255,255,248,47,171,244,0,127,255,255,255,240,0,3,240,0,11,224,0,31,224,6,3,240,61,3,244,0,63,192,47,3,240,126,1,252,0,255,0,15,131,240,252,0,191,3,253,0,11,195,241,248,0,63,223,244,0,7,227,243,240,0,15,255,208,0,3,227,243,224,0,7,255,64,0,1,67,240,0,0,47,255,208,0,0,3,240,0,2,255,255,253,0,63,255,255,252,127,255,7,255,228,63,255,255,255,255,244,0,191,255,63,255,255,254,255,64,0,27,252,0,15,244,0,224,2,252,0,120,0,31,253,0,0,2,252,0,0,0,63,255,64,0,2,252,0,0,0,127,255,208,63,255,255,255,208,0,255,251,244,63,255,255,255,208,2,251,243,253,63,255,255,255,208,3,247,240,252,0,2,252,0,0,15,227,240,116,0,2,252,0,0,47,195,240,0,0,2,252,0,0,127,131,240,0,0,2,252,0,0,127,3,240,2,255,255,255,255,252,61,3,240,2,255,255,255,255,252,24,3,240,2,255,255,255,255,252,0,3,240,0,0,2,252,0,0,0,3,240,0,0,2,252,0,0,0,3,240,0,0,2,252,0,0,0,3,240,0,0,2,252,0,0,0,3,240,0,0,2,252,0,0,0,3,240,0,0,2,252,0,0, + // 0x91cd 重 + 205,145,34,35,59,38,2,253,0,0,0,0,0,0,22,128,0,0,0,0,5,106,255,255,192,0,2,255,255,255,255,255,255,240,0,1,255,255,255,255,255,233,64,0,1,255,170,151,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,254,85,87,253,85,91,240,0,0,254,0,3,248,0,7,240,0,0,254,0,3,248,0,11,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,254,0,3,248,0,7,240,0,0,254,0,3,248,0,7,240,0,0,255,85,87,253,85,91,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,3,255,255,255,255,255,255,253,0,3,255,255,255,255,255,255,254,0,3,255,255,255,255,255,255,254,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x91cf 量 + 207,145,34,34,50,38,2,253,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,0,0,0,0,31,192,0,0,63,0,0,0,0,31,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,0,0,0,0,31,192,0,0,63,0,0,0,0,31,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,170,170,170,170,170,170,170,170,160,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,253,0,3,248,0,7,240,0,0,253,0,3,248,0,7,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,253,0,3,248,0,7,240,0,0,253,0,3,248,0,7,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,3,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,252,0,1,85,85,87,253,85,85,84,0,0,0,0,3,248,0,0,0,0,170,170,170,171,254,170,170,170,160,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x9488 针 + 136,148,35,36,68,38,1,252,0,8,0,0,0,0,84,0,0,0,47,192,0,0,1,253,0,0,0,63,128,0,0,1,253,0,0,0,127,0,0,0,1,253,0,0,0,255,85,84,0,1,253,0,0,2,255,255,252,0,1,253,0,0,3,255,255,252,0,1,253,0,0,15,255,255,252,0,1,253,0,0,63,208,0,0,0,1,253,0,0,191,128,0,0,0,1,253,0,0,126,0,0,0,0,1,253,0,0,63,255,255,240,0,1,253,0,0,23,255,255,240,0,1,253,0,0,3,255,255,243,255,255,255,255,252,2,175,254,163,255,255,255,255,252,0,3,240,3,255,255,255,255,252,0,3,240,1,85,86,254,85,84,0,3,240,0,0,1,253,0,0,0,3,240,0,0,1,253,0,0,47,255,255,252,0,1,253,0,0,47,255,255,252,0,1,253,0,0,47,255,255,252,0,1,253,0,0,0,7,244,0,0,1,253,0,0,0,3,240,0,0,1,253,0,0,0,3,240,0,0,1,253,0,0,0,3,240,0,0,1,253,0,0,0,3,240,0,0,1,253,0,0,0,3,240,4,0,1,253,0,0,0,3,240,125,0,1,253,0,0,0,7,247,254,0,1,253,0,0,0,7,255,254,0,1,253,0,0,0,15,255,224,0,1,253,0,0,0,63,255,64,0,1,253,0,0,0,47,244,0,0,1,253,0,0,0,15,128,0,0,1,253,0,0,0,4,0,0,0,1,252,0,0, + // 0x94ae 钮 + 174,148,36,36,68,38,1,252,0,100,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,253,0,2,255,255,255,255,240,1,252,0,2,255,255,255,255,240,3,255,255,246,255,255,255,255,224,3,255,255,244,0,47,192,15,224,15,255,255,244,0,47,192,15,224,31,213,85,80,0,47,192,15,224,63,128,0,0,0,63,128,15,208,191,0,0,0,0,63,128,15,208,190,0,0,0,0,63,64,15,208,63,255,255,224,0,63,64,15,208,43,255,255,224,0,63,64,15,192,3,255,255,224,0,127,0,31,192,0,15,224,0,0,127,0,31,192,0,11,208,1,255,255,255,255,192,0,11,208,1,255,255,255,255,192,0,11,208,1,255,255,255,255,192,0,11,208,0,85,254,85,127,128,63,255,255,248,0,253,0,63,128,63,255,255,248,0,253,0,63,128,63,255,255,248,0,252,0,63,64,0,15,224,0,1,252,0,63,64,0,11,208,0,1,252,0,63,64,0,11,208,0,2,252,0,63,64,0,11,208,0,2,248,0,127,0,0,11,208,0,3,248,0,127,0,0,11,208,96,3,244,0,191,0,0,11,211,240,3,244,0,191,0,0,15,255,244,3,240,0,191,0,0,15,255,224,7,240,0,254,0,0,15,255,85,91,245,85,255,84,0,63,248,63,255,255,255,255,253,0,191,208,63,255,255,255,255,253,0,62,0,63,255,255,255,255,253,0,20,0,0,0,0,0,0,0, + // 0x9519 错 + 25,149,36,36,68,38,1,252,0,24,0,0,2,244,3,240,0,0,63,64,0,2,244,3,244,0,0,127,0,0,2,244,3,244,0,0,191,0,0,2,244,3,244,0,1,254,85,80,2,244,3,244,0,3,255,255,244,255,255,255,255,244,11,255,255,244,255,255,255,255,244,31,255,255,244,255,255,255,255,244,63,192,0,0,2,248,3,244,0,127,64,0,0,2,244,3,244,0,62,0,0,0,2,244,3,244,0,27,255,255,240,2,244,3,244,0,3,255,255,240,3,248,3,244,0,3,255,255,243,255,255,255,255,253,0,11,224,3,255,255,255,255,253,0,11,224,3,255,255,255,255,253,0,11,224,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,47,255,255,248,63,255,255,255,192,47,255,255,248,63,255,255,255,192,47,255,255,248,63,255,255,255,192,0,11,224,0,63,64,0,31,192,0,11,224,0,63,64,0,31,192,0,11,224,0,63,64,0,31,192,0,11,224,0,63,255,255,255,192,0,11,224,0,63,255,255,255,192,0,11,224,16,63,255,255,255,192,0,11,225,240,63,64,0,31,192,0,11,255,240,63,64,0,31,192,0,15,255,240,63,64,0,31,192,0,31,255,128,63,255,255,255,192,0,63,248,0,63,255,255,255,192,0,63,208,0,63,255,255,255,192,0,30,0,0,63,64,0,31,192,0,0,0,0,42,0,0,5,64, + // 0x955c 镜 + 92,149,36,37,77,38,1,251,0,41,0,0,0,1,176,0,0,0,63,128,0,0,3,244,0,0,0,127,0,0,0,2,252,0,0,0,254,0,0,255,255,255,255,240,1,255,255,224,255,255,255,255,240,3,255,255,224,255,255,255,255,240,11,255,255,224,2,240,0,168,0,31,224,0,0,3,244,0,253,0,127,192,0,0,2,248,1,252,0,127,64,0,0,1,248,3,244,0,62,0,0,3,255,255,255,255,252,31,255,255,195,255,255,255,255,252,3,255,255,195,255,255,255,255,252,3,255,255,192,0,0,0,0,0,0,15,224,0,21,85,85,85,64,0,15,208,0,127,255,255,255,224,0,15,208,0,127,255,255,255,224,0,15,208,0,126,0,0,11,224,0,15,208,0,126,0,0,11,224,47,255,255,240,127,255,255,255,224,47,255,255,240,127,255,255,255,224,47,255,255,240,126,0,0,15,224,0,15,224,0,126,0,0,11,224,0,15,208,0,126,85,85,95,224,0,15,208,0,127,255,255,255,224,0,15,208,0,127,255,255,255,224,0,15,208,0,0,252,15,208,0,0,15,208,176,1,252,15,208,0,0,15,215,240,2,252,15,208,0,0,15,255,244,3,248,15,208,16,0,31,255,208,11,244,15,208,61,0,63,254,0,31,240,15,208,62,0,255,244,1,255,192,15,208,125,0,127,128,47,255,0,15,255,252,0,45,0,47,248,0,7,255,252,0,0,0,15,128,0,1,170,144,0,0,0,0,0,0,0,0,0, + // 0x957f 长 + 127,149,35,36,68,38,2,252,0,2,168,0,0,0,0,0,0,0,3,252,0,0,0,15,64,0,0,3,252,0,0,0,63,240,0,0,3,252,0,0,0,255,208,0,0,3,252,0,0,3,255,64,0,0,3,252,0,0,31,253,0,0,0,3,252,0,0,191,244,0,0,0,3,252,0,11,255,192,0,0,0,3,252,0,127,254,0,0,0,0,3,252,7,255,244,0,0,0,0,3,252,47,255,128,0,0,0,0,3,252,11,252,0,0,0,0,0,3,252,2,208,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,87,253,85,255,149,85,85,80,0,3,252,0,127,64,0,0,0,0,3,252,0,63,192,0,0,0,0,3,252,0,31,224,0,0,0,0,3,252,0,15,240,0,0,0,0,3,252,0,7,252,0,0,0,0,3,252,0,3,255,0,0,0,0,3,252,0,0,255,128,0,0,0,3,252,0,0,127,224,0,0,0,3,252,0,0,31,252,0,0,0,3,252,0,25,11,255,128,0,0,3,252,27,253,2,255,244,0,0,3,255,255,254,0,191,255,128,0,7,255,255,254,0,31,255,244,0,31,255,255,144,0,2,255,224,0,15,255,144,0,0,0,47,192,0,11,228,0,0,0,0,1,64,0,1,0,0,0,0,0,0,0, + // 0x95ed 闭 + 237,149,32,37,40,38,3,251,1,0,0,0,0,0,0,0,31,128,0,0,0,0,0,0,63,224,11,255,255,255,255,255,15,248,11,255,255,255,255,255,3,253,11,255,255,255,255,255,0,255,1,85,85,85,85,191,0,126,0,0,0,0,0,191,0,32,0,0,10,144,0,191,0,0,0,0,15,224,0,191,254,0,0,0,15,224,0,191,254,0,0,0,15,224,0,191,254,0,0,0,15,224,0,191,254,1,85,85,95,245,80,191,254,11,255,255,255,255,248,191,254,11,255,255,255,255,248,191,254,11,255,255,255,255,248,191,254,0,0,1,255,224,0,191,254,0,0,3,255,224,0,191,254,0,0,15,255,224,0,191,254,0,0,47,239,224,0,191,254,0,0,191,207,224,0,191,254,0,2,255,15,224,0,191,254,0,15,252,15,224,0,191,254,0,63,244,15,224,0,191,254,1,255,208,15,224,0,191,254,15,255,0,15,224,0,191,254,63,252,0,15,224,0,191,254,31,208,0,15,224,0,191,254,11,0,0,15,224,0,191,254,0,0,127,255,224,0,191,254,0,0,63,255,192,0,191,254,0,0,47,255,64,0,191,254,0,0,5,64,0,0,255,254,0,0,0,0,0,255,254,254,0,0,0,0,0,191,253,254,0,0,0,0,0,127,228,0,0,0,0,0,0,0,0, + // 0x95f2 闲 + 242,149,32,36,32,38,3,252,1,0,0,0,0,0,0,0,11,192,1,85,85,85,85,84,31,240,7,255,255,255,255,255,7,252,7,255,255,255,255,255,2,254,7,255,255,255,255,255,0,191,64,0,0,0,0,191,0,63,192,0,0,0,0,191,0,31,224,0,0,0,0,191,0,11,64,0,0,0,0,191,253,0,0,11,224,0,0,191,253,0,0,11,224,0,0,191,253,0,0,11,224,0,0,191,253,0,0,11,224,0,0,191,253,0,0,11,224,0,0,191,253,15,255,255,255,255,244,191,253,15,255,255,255,255,244,191,253,15,255,255,255,255,244,191,253,0,0,63,252,0,0,191,253,0,0,255,255,0,0,191,253,0,1,255,255,192,0,191,253,0,3,255,239,240,0,191,253,0,15,235,231,252,0,191,253,0,63,203,225,255,0,191,253,0,255,11,224,127,128,191,253,3,253,11,224,47,208,191,253,31,248,11,224,15,240,191,253,47,224,11,224,3,208,191,253,11,128,11,224,1,0,191,253,1,0,11,224,0,0,191,253,0,0,11,224,0,0,191,253,0,0,11,224,0,0,191,253,0,0,11,224,0,0,191,253,0,0,5,64,15,255,254,253,0,0,0,0,11,255,253,253,0,0,0,0,7,255,244,253,0,0,0,0,1,85,0, + // 0x95f4 间 + 244,149,32,37,40,38,3,251,1,0,0,0,0,0,0,0,31,128,0,0,0,0,0,0,63,224,15,255,255,255,255,255,15,248,15,255,255,255,255,255,3,253,15,255,255,255,255,255,1,255,1,85,85,85,85,255,0,189,0,0,0,0,0,255,0,32,0,0,0,0,0,255,0,0,0,0,0,0,0,255,191,0,0,0,0,0,0,255,191,0,0,0,0,0,0,255,191,0,127,255,255,253,0,255,191,0,127,255,255,253,0,255,191,0,127,255,255,253,0,255,191,0,127,0,0,253,0,255,191,0,127,0,0,253,0,255,191,0,127,0,0,253,0,255,191,0,127,0,0,253,0,255,191,0,127,0,0,253,0,255,191,0,127,255,255,253,0,255,191,0,127,255,255,253,0,255,191,0,127,255,255,253,0,255,191,0,127,0,0,253,0,255,191,0,127,0,0,253,0,255,191,0,127,0,0,253,0,255,191,0,127,0,0,253,0,255,191,0,127,255,255,253,0,255,191,0,127,255,255,253,0,255,191,0,127,255,255,253,0,255,191,0,0,0,0,0,0,255,191,0,0,0,0,0,0,255,191,0,0,0,0,0,0,255,191,0,0,0,0,0,0,255,191,0,0,0,0,0,127,254,191,0,0,0,0,0,63,253,191,0,0,0,0,0,63,228,0,0,0,0,0,0,0,0, + // 0x9608 阈 + 8,150,32,37,40,38,3,251,0,128,0,0,0,0,0,0,7,224,0,0,0,0,0,0,15,248,7,255,255,255,255,254,3,253,7,255,255,255,255,254,0,255,7,255,255,255,255,254,0,127,192,0,0,0,0,254,0,47,224,0,125,0,0,254,0,15,192,0,125,125,0,254,191,2,0,0,125,63,64,254,191,0,0,0,125,15,192,254,191,0,0,0,125,2,0,254,191,31,255,255,255,255,244,254,191,31,255,255,255,255,244,254,191,15,255,255,255,255,244,254,191,0,0,0,62,0,0,254,191,0,0,0,63,2,64,254,191,7,255,252,63,11,208,254,191,7,255,252,63,15,192,254,191,7,192,60,47,15,128,254,191,7,192,60,47,95,64,254,191,7,192,60,31,127,0,254,191,7,192,60,15,190,0,254,191,7,255,252,15,252,0,254,191,7,255,252,15,252,0,254,191,0,0,0,11,244,16,254,191,0,0,1,7,240,56,254,191,0,26,255,15,240,60,254,191,47,255,255,63,244,124,254,191,47,255,249,191,253,248,254,191,31,148,2,252,191,244,254,191,0,0,15,240,63,240,254,191,0,0,11,192,11,192,254,191,0,0,1,0,0,0,254,191,0,0,0,0,11,255,253,191,0,0,0,0,3,255,252,191,0,0,0,0,3,255,208,0,0,0,0,0,0,0,0, + // 0x964d 降 + 77,150,34,36,68,38,3,252,0,0,0,0,3,160,0,0,0,0,0,0,0,11,240,0,0,0,255,255,244,0,31,208,0,0,0,255,255,252,0,63,255,255,224,0,255,255,252,0,255,255,255,248,0,252,3,244,2,255,255,255,240,0,252,3,240,11,252,0,15,224,0,252,7,240,47,255,0,47,192,0,252,11,224,255,255,128,127,128,0,252,15,195,254,31,209,255,0,0,252,31,192,248,11,251,252,0,0,252,47,64,16,3,255,240,0,0,252,63,0,0,0,255,224,0,0,252,63,0,0,7,255,248,0,0,252,63,64,0,127,255,255,144,0,252,31,192,11,255,225,255,254,64,252,11,225,255,255,0,47,255,208,252,3,241,255,244,7,242,255,128,252,3,244,254,64,7,240,11,0,252,2,248,80,0,7,240,0,0,252,1,252,63,255,255,255,255,0,252,1,252,63,255,255,255,255,0,252,1,252,63,255,255,255,255,0,252,3,248,2,244,7,240,0,0,252,255,244,2,244,7,240,0,0,252,191,240,2,244,7,240,0,0,252,127,128,2,244,7,240,0,0,252,0,3,255,255,255,255,255,192,252,0,3,255,255,255,255,255,192,252,0,3,255,255,255,255,255,192,252,0,0,0,0,7,240,0,0,252,0,0,0,0,7,240,0,0,252,0,0,0,0,7,240,0,0,252,0,0,0,0,7,240,0,0,252,0,0,0,0,7,240,0,0,252,0,0,0,0,7,240,0,0, + // 0x9650 限 + 80,150,34,34,50,38,3,252,255,255,253,15,255,255,255,252,0,255,255,255,15,255,255,255,252,0,255,255,254,15,255,255,255,252,0,253,0,253,15,192,0,1,252,0,253,1,252,15,192,0,1,252,0,253,2,248,15,192,0,1,252,0,253,3,244,15,192,0,1,252,0,253,7,240,15,255,255,255,252,0,253,11,224,15,255,255,255,252,0,253,15,192,15,255,255,255,252,0,253,31,128,15,192,0,1,252,0,253,47,64,15,192,0,1,252,0,253,31,192,15,192,0,1,252,0,253,7,240,15,192,0,1,252,0,253,3,244,15,255,255,255,252,0,253,1,252,15,255,255,255,252,0,253,0,253,15,255,255,255,252,0,253,0,190,15,192,63,0,0,0,253,0,190,15,192,63,64,44,0,253,0,190,15,192,47,128,191,64,253,0,190,15,192,31,194,255,0,253,1,254,15,192,15,219,248,0,253,127,253,15,192,11,255,224,0,253,63,252,15,192,3,255,64,0,253,63,224,15,192,2,253,0,0,253,0,0,15,192,0,254,0,0,253,0,0,15,192,0,255,128,0,253,0,0,15,192,106,63,208,0,253,0,0,15,255,255,31,244,0,253,0,6,255,255,255,11,254,0,253,0,15,255,255,249,3,255,208,253,0,11,255,249,0,0,255,192,253,0,7,228,0,0,0,47,0,253,0,0,0,0,0,0,1,0, + // 0x9664 除 + 100,150,34,36,68,38,3,252,0,0,0,0,1,252,0,0,0,0,0,0,0,3,255,0,0,0,255,255,244,0,11,255,128,0,0,255,255,252,0,31,255,224,0,0,255,255,252,0,63,203,244,0,0,252,3,244,0,255,3,253,0,0,252,3,240,3,253,0,255,128,0,252,7,240,15,244,0,63,224,0,252,11,208,127,208,0,15,252,0,252,15,194,255,64,0,3,255,128,252,31,143,253,0,0,0,191,224,252,47,79,251,255,255,255,239,192,252,63,3,139,255,255,255,199,64,252,63,0,11,255,255,255,192,0,252,47,128,0,0,253,0,0,0,252,15,192,0,0,253,0,0,0,252,11,224,0,0,253,0,0,0,252,3,240,0,0,253,0,0,0,252,3,244,0,0,253,0,0,0,252,2,248,255,255,255,255,255,0,252,1,252,255,255,255,255,255,0,252,1,252,255,255,255,255,255,0,252,1,252,0,0,253,0,0,0,252,3,248,0,0,253,0,0,0,252,255,244,31,128,253,11,192,0,252,191,240,47,128,253,15,208,0,252,127,128,63,64,253,11,240,0,252,0,0,191,0,253,3,252,0,252,0,1,253,0,253,1,253,0,252,0,3,252,0,253,0,191,0,252,0,15,240,0,253,0,63,64,252,0,47,224,0,253,0,47,192,252,0,11,128,85,253,0,15,64,252,0,2,0,255,252,0,4,0,252,0,0,0,191,252,0,0,0,252,0,0,0,63,160,0,0,0, + // 0x9669 险 + 105,150,34,36,68,38,3,252,0,0,0,0,0,120,0,0,0,0,0,0,0,0,254,0,0,0,255,255,244,0,2,254,0,0,0,255,255,252,0,3,255,64,0,0,255,255,252,0,15,255,192,0,0,253,3,244,0,47,223,240,0,0,253,3,240,0,191,135,252,0,0,253,7,240,1,255,1,255,0,0,253,11,208,7,252,0,127,208,0,253,15,192,31,240,0,31,248,0,253,31,128,191,208,0,7,255,0,253,47,67,255,64,0,1,255,224,253,63,15,255,255,255,255,127,224,253,63,11,247,255,255,255,15,192,253,47,195,195,255,255,255,2,128,253,15,209,0,0,0,0,0,0,253,7,240,0,0,0,0,0,0,253,3,244,0,0,0,0,0,0,253,2,248,1,0,252,0,126,0,253,1,248,63,0,188,0,190,0,253,1,252,47,0,189,0,253,0,253,1,252,31,128,126,1,252,0,253,1,252,15,192,63,2,244,0,253,3,248,15,192,63,3,240,0,253,255,244,11,208,63,7,224,0,253,127,240,7,224,47,15,192,0,253,127,128,3,240,47,95,192,0,253,0,0,3,240,0,47,64,0,253,0,0,1,0,0,63,0,0,253,0,0,0,0,0,189,0,0,253,0,0,0,0,0,252,0,0,253,0,3,255,255,255,255,255,192,253,0,3,255,255,255,255,255,192,253,0,3,255,255,255,255,255,192,253,0,0,0,0,0,0,0,0,188,0,0,0,0,0,0,0,0, + // 0x96f6 零 + 246,150,35,35,59,38,2,252,2,170,170,170,170,170,170,164,0,3,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,252,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,85,85,87,249,85,85,95,192,63,0,0,3,248,0,0,15,192,63,26,170,147,248,170,170,79,192,63,31,255,227,248,255,255,79,192,63,0,0,3,248,0,0,15,192,0,0,0,3,248,0,0,0,0,0,63,255,225,80,255,255,208,0,0,63,255,231,252,255,255,208,0,0,0,0,47,255,64,0,0,0,0,0,1,255,255,224,0,0,0,0,0,11,254,15,254,0,0,0,0,0,191,244,1,255,224,0,0,0,27,255,128,0,47,255,64,0,2,255,255,255,255,255,255,249,0,191,255,159,255,255,255,111,255,244,255,248,5,85,85,85,2,255,240,190,64,0,0,0,0,0,11,208,16,85,85,85,85,85,85,64,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,0,0,127,0,0,47,192,0,0,0,0,127,0,0,47,192,0,0,0,0,127,0,0,47,192,0,0,0,0,127,0,42,191,192,0,0,0,0,127,0,47,255,128,0,0,0,0,127,0,15,249,0,0,0,0,0,127,0,0,0,0,0,0,0,0,63,0,0,0,0,0, + // 0x9700 需 + 0,151,34,35,59,38,2,252,2,255,255,255,255,255,255,248,0,3,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,252,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,21,85,85,87,253,85,85,85,64,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,0,0,3,248,0,0,15,192,63,0,0,3,248,0,0,15,192,63,31,255,227,248,191,255,79,192,63,31,255,227,248,191,255,79,192,63,0,0,3,248,0,0,15,192,0,0,0,3,248,0,0,0,0,0,63,255,227,248,191,255,192,0,0,63,255,227,248,191,255,192,0,0,0,0,3,248,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,255,255,224,127,255,255,255,255,255,255,255,224,127,255,255,255,255,255,255,255,208,0,0,0,7,240,0,0,0,0,0,0,0,11,240,0,0,0,0,2,255,255,255,255,255,255,253,0,2,255,255,255,255,255,255,253,0,2,255,255,255,255,255,255,253,0,2,248,1,248,0,252,0,253,0,2,248,1,248,0,252,0,253,0,2,248,1,248,0,252,0,253,0,2,248,1,248,0,252,0,253,0,2,248,1,248,0,252,0,253,0,2,248,1,248,0,252,0,253,0,2,248,1,248,0,252,63,253,0,2,248,1,248,0,252,63,252,0,2,248,1,164,0,168,31,224,0, + // 0x9752 青 + 82,151,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,2,170,170,171,254,170,170,169,0,7,255,255,255,255,255,255,254,0,7,255,255,255,255,255,255,254,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,170,170,171,254,170,170,160,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,106,170,170,171,254,170,170,170,144,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,170,170,170,170,170,128,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,192,0,0,0,63,192,0,0,47,192,0,0,0,63,192,0,0,47,213,85,85,85,127,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,192,0,0,0,63,192,0,0,47,192,0,0,0,63,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,213,85,85,85,127,192,0,0,47,192,0,0,0,63,192,0,0,47,192,0,0,0,63,192,0,0,47,192,0,0,0,63,192,0,0,47,192,0,1,255,255,128,0,0,47,192,0,0,255,255,0,0,0,31,192,0,0,191,164,0,0, + // 0x975e 非 + 94,151,36,37,77,38,1,251,0,0,1,168,0,106,0,0,0,0,0,1,252,0,127,0,0,0,0,0,1,252,0,127,0,0,0,0,0,1,252,0,127,0,0,0,0,0,1,252,0,127,0,0,0,5,85,86,252,0,127,85,85,80,15,255,255,252,0,127,255,255,248,15,255,255,252,0,127,255,255,248,15,255,255,252,0,127,255,255,248,0,0,1,252,0,127,0,0,0,0,0,1,252,0,127,0,0,0,0,0,1,252,0,127,0,0,0,0,0,1,252,0,127,0,0,0,0,0,1,252,0,127,0,0,0,1,85,86,252,0,127,85,85,64,11,255,255,252,0,127,255,255,240,11,255,255,252,0,127,255,255,240,11,255,255,252,0,127,255,255,240,0,0,2,252,0,127,0,0,0,0,0,2,252,0,127,0,0,0,0,0,2,252,0,127,0,0,0,0,0,2,252,0,127,0,0,0,0,0,3,255,240,127,0,0,0,0,90,255,255,240,127,85,85,84,127,255,255,255,240,127,255,255,253,127,255,255,249,0,127,255,255,253,63,254,175,224,0,127,255,255,253,41,0,63,192,0,127,0,0,0,0,0,191,128,0,127,0,0,0,0,1,255,0,0,127,0,0,0,0,7,253,0,0,127,0,0,0,0,47,248,0,0,127,0,0,0,0,255,224,0,0,127,0,0,0,11,255,128,0,0,127,0,0,0,7,253,0,0,0,127,0,0,0,1,224,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9760 靠 + 96,151,35,37,77,38,2,251,0,5,64,2,244,0,0,0,0,0,15,208,3,248,0,0,0,0,0,47,213,87,249,85,85,80,0,0,127,255,255,255,255,255,248,0,0,255,255,255,255,255,255,248,0,3,252,0,3,248,0,0,0,0,3,244,0,3,248,0,0,0,0,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,42,170,170,171,254,170,170,170,128,0,0,0,1,84,0,0,0,0,0,191,255,255,255,255,255,244,0,0,191,255,255,255,255,255,244,0,0,191,85,85,85,85,91,244,0,0,191,0,0,0,0,7,244,0,0,191,0,0,0,0,7,244,0,0,191,255,255,255,255,255,244,0,0,191,255,255,255,255,255,244,0,0,0,7,244,2,253,0,0,0,0,0,3,240,1,252,0,0,0,63,255,255,240,1,255,255,255,192,63,255,255,240,1,255,255,255,192,21,85,87,240,1,253,0,0,0,0,0,3,240,1,252,0,0,0,31,255,255,240,1,255,255,255,64,31,255,255,240,1,255,255,255,64,0,0,7,240,1,253,0,0,0,0,0,7,240,1,252,0,0,0,170,191,255,240,1,253,85,85,80,255,255,255,224,1,255,255,255,244,250,165,127,192,1,255,255,255,244,0,0,255,128,1,252,0,0,0,0,31,254,0,1,252,0,0,0,3,255,244,0,1,252,0,0,0,2,255,128,0,1,252,0,0,0,0,244,0,0,1,168,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9762 面 + 98,151,34,34,50,38,2,252,21,85,85,85,85,85,85,85,80,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,0,0,0,11,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,31,208,0,0,0,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,208,15,208,0,254,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,255,255,253,0,191,0,15,208,15,255,255,253,0,191,0,15,208,15,255,255,253,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,255,255,253,0,191,0,15,208,15,255,255,253,0,191,0,15,208,15,255,255,253,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,192,0,189,0,191,0,15,229,95,213,85,254,85,191,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,208,0,0,0,0,0,191,0,15,208,0,0,0,0,0,191,0, + // 0x9875 页 + 117,152,34,35,59,38,2,251,63,255,255,255,255,255,255,255,208,63,255,255,255,255,255,255,255,208,63,255,255,255,255,255,255,255,208,21,85,85,95,249,85,85,85,64,0,0,0,15,240,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,47,192,0,0,0,0,0,21,85,127,213,85,85,80,0,0,191,255,255,255,255,255,240,0,0,191,255,255,255,255,255,240,0,0,191,255,255,255,255,255,240,0,0,191,0,0,0,0,11,240,0,0,191,0,0,0,0,11,240,0,0,191,0,2,252,0,11,240,0,0,191,0,2,252,0,11,240,0,0,191,0,2,252,0,11,240,0,0,191,0,2,252,0,11,240,0,0,191,0,2,252,0,11,240,0,0,191,0,2,252,0,11,240,0,0,191,0,2,252,0,11,240,0,0,191,0,3,252,0,11,240,0,0,191,0,3,252,0,11,240,0,0,191,0,3,248,0,11,240,0,0,191,0,7,244,0,11,240,0,0,191,0,15,240,144,11,240,0,0,106,0,63,225,253,6,160,0,0,0,0,255,195,255,208,0,0,0,0,11,255,0,191,253,0,0,0,0,191,252,0,11,255,208,0,0,31,255,224,0,0,255,252,0,27,255,255,64,0,0,31,255,128,191,255,228,0,0,0,1,255,208,63,253,0,0,0,0,0,47,128,14,64,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0, + // 0x9879 项 + 121,152,36,34,50,38,1,252,0,0,0,31,255,255,255,255,253,0,0,0,31,255,255,255,255,253,21,85,85,95,255,255,255,255,253,63,255,255,192,0,31,224,0,0,63,255,255,192,0,47,192,0,0,63,255,255,192,0,63,192,0,0,0,47,192,0,0,127,64,0,0,0,47,192,3,255,255,255,255,192,0,47,192,3,255,255,255,255,192,0,47,192,3,255,255,255,255,192,0,47,192,3,240,0,0,47,192,0,47,192,3,240,0,0,47,192,0,47,192,3,240,15,224,47,192,0,47,192,3,240,15,224,47,192,0,47,192,3,240,15,224,47,192,0,47,192,3,240,15,224,47,192,0,47,192,3,240,15,224,47,192,0,47,192,3,240,15,224,47,192,0,47,192,3,240,15,224,47,192,0,47,192,3,240,15,224,47,192,0,47,219,211,240,15,224,47,192,0,47,255,211,240,15,224,47,192,6,255,255,211,240,15,208,47,192,191,255,249,3,240,31,208,47,192,191,255,64,3,240,63,192,26,128,127,208,0,0,0,127,129,0,0,56,0,0,0,1,255,15,192,0,0,0,0,0,7,253,47,248,0,0,0,0,0,47,244,11,255,0,0,0,0,2,255,224,1,255,208,0,0,0,111,255,64,0,47,248,0,0,2,255,248,0,0,7,253,0,0,0,255,128,0,0,1,244,0,0,0,36,0,0,0,0,16, + // 0x9884 预 + 132,152,36,35,59,38,1,251,47,255,255,252,127,255,255,255,253,47,255,255,253,127,255,255,255,253,47,255,255,252,127,255,255,255,253,0,0,11,240,0,0,255,0,0,0,0,31,208,0,0,253,0,0,1,128,127,128,0,1,252,0,0,3,245,254,0,15,255,255,255,240,7,255,248,0,15,255,255,255,240,0,255,240,0,15,255,255,255,240,0,47,248,0,15,192,0,11,240,0,11,255,0,15,192,0,11,240,0,2,255,128,15,192,0,11,240,0,0,191,64,15,192,189,11,240,191,255,255,255,143,192,253,11,240,191,255,255,255,143,192,253,11,240,191,255,255,255,15,192,253,11,240,0,11,240,63,15,192,253,11,240,0,11,240,126,15,192,253,11,240,0,11,240,188,15,192,253,11,240,0,11,240,252,15,192,253,11,240,0,11,241,248,15,192,253,11,240,0,11,241,176,15,192,252,11,240,0,11,240,0,15,192,252,11,240,0,11,240,0,15,193,252,11,240,0,11,240,0,15,195,252,11,240,0,11,240,0,0,7,244,0,0,0,11,240,0,0,15,240,224,0,0,11,240,0,0,63,211,248,0,0,11,240,0,0,255,131,255,0,0,11,240,0,7,255,0,191,192,5,95,240,0,127,248,0,47,244,15,255,224,3,255,208,0,11,252,11,255,208,1,254,0,0,1,248,7,254,0,0,160,0,0,0,160,0,0,0,0,0,0,0,0,0, + // 0x9891 频 + 145,152,36,37,77,38,1,251,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,7,255,255,255,252,0,0,63,0,7,255,255,255,252,3,240,63,0,7,255,255,255,252,3,240,63,255,192,0,47,128,0,3,240,63,255,192,0,63,64,0,3,240,63,255,192,0,63,0,0,3,240,63,0,0,0,190,0,0,3,240,63,0,1,170,255,170,160,3,240,63,0,2,255,255,255,240,3,240,63,0,2,255,255,255,240,127,255,255,255,242,244,0,3,240,127,255,255,255,242,244,5,3,240,127,255,255,255,242,244,47,3,240,0,0,253,0,2,244,47,3,240,0,0,253,0,2,244,47,3,240,1,144,253,0,2,244,63,3,240,2,244,253,7,226,244,63,3,240,3,240,253,11,226,244,63,3,240,7,240,253,15,210,244,63,3,240,15,208,253,31,194,244,63,3,240,31,192,253,47,130,244,63,3,240,63,128,253,127,66,244,63,3,240,127,0,253,255,2,244,62,3,240,29,0,254,253,2,244,126,3,240,0,0,175,252,2,244,189,3,240,0,0,15,240,0,80,252,0,0,0,0,63,208,0,2,254,224,0,0,0,255,128,0,3,251,252,0,0,7,254,0,0,15,241,255,0,0,127,248,0,0,127,192,127,208,7,255,208,0,7,255,64,15,244,63,254,0,0,191,253,0,3,253,31,244,0,0,63,224,0,0,252,14,0,0,0,45,0,0,0,32,0,0,0,0,0,0,0,0,0, + // 0x989d 额 + 157,152,36,37,77,38,1,251,0,0,96,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,1,252,0,7,255,255,255,252,0,0,254,0,7,255,255,255,252,63,255,255,255,247,255,255,255,252,63,255,255,255,240,0,63,0,0,63,255,255,255,240,0,127,0,0,63,64,0,7,240,0,190,0,0,63,75,224,7,240,0,252,0,0,63,79,208,7,242,255,255,255,224,0,63,234,169,3,255,255,255,240,0,191,255,255,131,255,255,255,240,2,255,255,255,67,240,0,3,240,11,248,0,255,3,240,0,3,240,47,224,3,252,3,240,63,3,240,127,143,75,248,3,240,63,3,240,30,63,255,224,3,240,63,3,240,4,47,255,192,3,240,63,3,240,0,7,255,224,3,240,63,3,240,0,47,255,253,3,240,63,3,240,6,255,235,255,195,240,63,3,240,63,255,64,191,243,240,126,3,240,63,248,0,31,211,240,126,3,240,47,192,0,2,67,240,190,3,240,25,255,255,255,3,240,189,3,240,0,255,255,255,3,240,252,3,240,0,255,255,255,3,240,252,3,240,0,252,0,127,2,161,248,2,144,0,252,0,127,0,3,244,160,0,0,252,0,127,0,11,242,252,0,0,252,0,127,0,31,210,255,64,0,252,0,127,0,127,192,127,208,0,255,255,255,2,255,0,31,248,0,255,255,255,47,252,0,3,254,0,255,255,255,127,224,0,0,253,0,248,0,127,46,64,0,0,56,0,0,0,0,0,0,0,0,0, + // 0x98ce 风 + 206,152,36,36,68,38,1,251,0,21,85,85,85,85,85,84,0,0,63,255,255,255,255,255,248,0,0,63,255,255,255,255,255,248,0,0,63,255,255,255,255,255,248,0,0,63,128,0,0,0,3,248,0,0,63,128,0,0,0,3,248,0,0,63,128,0,0,0,3,248,0,0,63,128,0,0,47,67,248,0,0,63,129,128,0,63,67,248,0,0,63,143,240,0,127,3,248,0,0,63,139,248,0,190,3,248,0,0,63,131,253,0,253,3,248,0,0,63,128,255,2,252,3,248,0,0,63,128,127,195,248,3,248,0,0,63,128,47,231,240,2,248,0,0,63,128,15,255,224,2,248,0,0,63,64,3,255,192,2,248,0,0,63,64,1,255,192,2,248,0,0,127,64,0,255,128,2,248,0,0,127,0,1,255,208,2,248,0,0,191,0,3,255,240,2,252,0,0,191,0,11,255,248,2,252,0,0,255,0,31,243,253,1,252,0,0,254,0,63,193,255,1,252,0,0,254,0,255,64,255,129,252,0,1,253,3,255,0,63,192,252,0,2,252,15,252,0,47,240,252,24,3,252,127,240,0,15,244,253,30,7,248,127,208,0,7,240,253,47,11,240,31,64,0,3,64,190,46,15,240,4,0,0,0,0,127,62,47,208,0,0,0,0,0,63,253,127,192,0,0,0,0,0,47,252,47,64,0,0,0,0,0,15,248,7,0,0,0,0,0,0,1,160,0,0,0,0,0,0,0,0,0, + // 0x9971 饱 + 113,153,36,36,68,38,1,252,0,100,0,0,2,0,0,0,0,0,190,0,0,7,240,0,0,0,0,253,0,0,11,224,0,0,0,0,253,0,0,15,208,0,0,0,0,252,0,0,47,192,0,0,0,1,252,0,0,63,255,255,255,208,2,255,255,224,127,255,255,255,208,3,255,255,240,255,255,255,255,208,3,255,255,226,252,0,0,15,208,11,240,15,215,244,0,0,15,208,15,208,15,207,240,0,0,15,208,31,192,47,255,255,255,252,15,208,63,128,63,127,255,255,252,15,208,127,69,127,30,255,255,252,15,208,191,47,128,8,253,0,252,15,208,61,47,128,0,253,0,252,15,208,8,47,128,0,253,0,252,15,208,0,47,128,0,253,0,252,15,208,0,47,128,0,253,0,252,15,208,0,47,128,0,253,0,252,15,192,0,47,128,0,255,255,252,15,192,0,47,128,0,255,255,252,31,192,0,47,128,0,255,255,252,47,192,0,47,128,0,253,0,63,255,192,0,47,128,0,253,0,47,255,64,0,47,128,64,253,0,31,253,0,0,47,131,192,253,0,0,0,0,0,47,159,192,253,0,0,0,64,0,47,255,208,253,0,0,0,184,0,47,255,64,253,0,0,0,253,0,63,253,0,253,0,0,0,252,0,63,240,0,255,0,0,2,252,0,191,192,0,191,255,255,255,248,0,254,0,0,63,255,255,255,240,0,56,0,0,11,255,255,255,128,0,16,0,0,0,0,0,0,0, + // 0x9a6c 马 + 108,154,33,35,59,38,2,251,1,85,85,85,85,85,101,0,0,3,255,255,255,255,255,255,0,0,3,255,255,255,255,255,255,0,0,3,255,255,255,255,255,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,253,0,0,0,6,80,0,0,0,253,0,0,0,11,240,0,0,0,253,0,0,0,11,240,0,0,1,252,0,0,0,15,224,0,0,1,252,0,0,0,15,224,0,0,2,252,0,0,0,15,224,0,0,2,252,0,0,0,15,208,0,0,3,248,0,0,0,15,208,0,0,3,248,0,0,0,31,192,0,0,3,248,0,0,0,31,255,255,255,255,255,255,192,0,47,255,255,255,255,255,255,192,0,47,255,255,255,255,255,255,192,0,21,85,85,85,85,85,127,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,64,85,85,85,85,85,85,64,127,64,191,255,255,255,255,255,192,127,0,191,255,255,255,255,255,192,191,0,191,255,255,255,255,255,192,191,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,64,11,252,0,0,0,0,0,1,255,255,244,0,0,0,0,0,0,255,255,224,0,0,0,0,0,0,191,255,64,0,0,0,0,0,0,0,0,0,0, + // 0x9a71 驱 + 113,154,36,34,50,38,1,252,31,255,255,192,255,255,255,255,248,31,255,255,192,255,255,255,255,248,31,255,255,192,255,255,255,255,248,0,0,15,192,254,0,0,0,0,0,0,15,192,254,0,0,0,0,2,144,15,192,254,0,0,9,0,7,224,15,192,254,8,0,15,208,7,224,31,128,254,63,0,47,192,7,224,31,128,254,63,128,63,128,7,224,31,128,254,31,208,127,64,11,208,47,64,254,15,240,191,0,11,208,47,64,254,3,248,254,0,11,208,47,64,254,1,254,252,0,15,192,63,0,254,0,255,252,0,15,192,63,0,254,0,63,244,0,15,192,63,0,254,0,31,240,0,15,255,255,248,254,0,15,240,0,15,255,255,248,254,0,47,248,0,31,255,255,248,254,0,127,252,0,0,0,2,244,254,0,255,255,0,0,0,2,244,254,1,253,127,64,0,0,2,244,254,3,248,63,192,0,0,99,244,254,15,240,31,208,0,111,243,240,254,47,224,11,240,111,255,243,240,254,127,192,3,244,191,254,67,240,254,191,0,3,224,126,64,3,240,254,29,0,0,0,0,0,7,240,254,4,0,0,0,0,0,7,224,254,0,0,0,0,0,0,11,208,255,255,255,255,253,0,0,31,208,255,255,255,255,253,0,127,255,192,255,255,255,255,253,0,63,255,64,0,0,0,0,0,0,43,232,0,0,0,0,0,0, + // 0x9ad8 高 + 216,154,34,36,68,38,2,252,0,0,0,3,244,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,0,0,0,0,0,0,0,0,0,0,1,85,85,85,85,84,0,0,0,3,255,255,255,255,252,0,0,0,3,255,255,255,255,252,0,0,0,3,240,0,0,1,252,0,0,0,3,240,0,0,1,252,0,0,0,3,240,0,0,1,252,0,0,0,3,249,85,85,86,252,0,0,0,3,255,255,255,255,252,0,0,0,3,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,224,0,0,0,0,0,127,0,15,224,0,0,0,0,0,127,0,15,224,15,255,255,255,0,127,0,15,224,15,255,255,255,0,127,0,15,224,15,234,170,191,0,127,0,15,224,15,192,0,63,0,127,0,15,224,15,192,0,63,0,127,0,15,224,15,192,0,63,0,127,0,15,224,15,255,255,255,0,127,0,15,224,15,255,255,255,0,127,0,15,224,15,213,85,87,65,191,0,15,224,15,192,0,2,255,255,0,15,224,5,64,0,1,255,254,0,15,224,0,0,0,0,255,228,0, + // 0x9ec4 黄 + 196,158,34,36,68,38,2,252,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,3,255,255,255,255,255,255,253,0,3,255,255,255,255,255,255,253,0,3,255,255,255,255,255,255,253,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,106,170,171,254,170,170,160,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,254,0,3,252,0,7,240,0,0,254,0,3,252,0,7,240,0,0,254,0,3,252,0,7,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,254,85,87,253,85,91,240,0,0,254,0,3,252,0,7,240,0,0,254,0,3,252,0,7,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,106,170,170,170,170,170,160,0,0,0,11,64,0,30,64,0,0,0,0,191,224,0,127,248,0,0,0,31,255,208,0,111,255,208,0,6,255,254,0,0,1,255,254,0,127,255,224,0,0,0,27,255,208,47,249,0,0,0,0,0,191,128,10,64,0,0,0,0,0,9,0, + // 0x9ede 點 + 222,158,36,36,68,38,1,252,0,0,0,0,0,0,190,0,0,5,85,85,85,64,0,190,0,0,15,255,255,255,192,0,190,0,0,15,255,255,255,192,0,190,0,0,15,128,184,11,192,0,190,0,0,15,148,184,91,192,0,190,0,0,15,188,184,251,192,0,190,0,0,15,172,184,251,192,0,190,0,0,15,157,185,219,192,0,191,85,84,15,142,186,203,192,0,191,255,253,15,142,187,203,192,0,191,255,253,15,132,185,75,192,0,191,255,253,15,128,184,11,192,0,190,0,0,15,255,255,255,192,0,190,0,0,15,255,255,255,192,0,190,0,0,5,86,254,85,64,0,190,0,0,0,0,252,0,0,0,190,0,0,0,0,252,0,0,0,190,0,0,15,255,255,255,208,0,255,0,0,15,255,255,255,211,255,255,255,240,10,171,255,170,147,255,255,255,240,0,0,252,0,3,255,255,255,240,0,0,254,170,163,240,0,7,240,47,255,255,255,243,240,0,7,240,63,255,255,255,243,240,0,7,240,63,254,169,80,3,240,0,7,240,0,0,0,0,3,240,0,7,240,0,0,5,31,3,240,0,7,240,7,207,79,15,131,240,0,7,240,11,203,143,135,211,240,0,7,240,15,203,199,195,243,240,0,7,240,15,135,195,193,243,255,255,255,240,47,71,195,208,247,255,255,255,240,63,7,194,208,3,255,255,255,240,125,2,64,0,3,244,0,7,240,24,0,0,0,3,240,0,2,160, + // 0x9f50 齐 + 80,159,35,37,77,38,2,251,0,0,0,3,248,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,3,252,0,0,3,252,0,0,0,0,255,0,0,15,244,0,0,0,0,127,192,0,63,224,0,0,0,0,31,240,0,255,192,0,0,0,0,7,254,7,255,0,0,0,0,0,1,255,239,248,0,0,0,0,0,0,63,255,224,0,0,0,0,0,0,47,255,224,0,0,0,0,0,6,255,255,255,64,0,0,0,6,255,255,159,255,254,80,0,91,255,255,248,1,191,255,255,228,255,255,254,64,0,7,255,255,240,127,255,228,0,0,0,111,255,208,62,145,252,0,0,2,252,22,128,0,1,252,0,0,2,252,0,0,0,1,252,0,0,2,252,0,0,0,1,252,0,0,2,252,0,0,0,1,252,0,0,2,252,0,0,0,1,252,0,0,2,252,0,0,0,2,252,0,0,2,252,0,0,0,3,252,0,0,2,252,0,0,0,7,248,0,0,2,252,0,0,0,11,244,0,0,2,252,0,0,0,31,240,0,0,2,252,0,0,0,127,224,0,0,2,252,0,0,2,255,192,0,0,2,252,0,0,31,255,0,0,0,2,252,0,0,11,252,0,0,0,2,252,0,0,1,224,0,0,0,2,252,0,0,0,0,0,0,0,0,0,0,0, + // 0xff1a : + 26,255,6,25,50,38,16,1,63,192,255,240,255,240,255,240,191,224,47,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,192,255,240,255,240,255,240,191,224,47,128, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Symbols_28.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Symbols_28.cpp new file mode 100644 index 000000000000..8bbd87b0b51f --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Symbols_28.cpp @@ -0,0 +1,38 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium_Symbols 38pt, capital 'A' height: 28px, width: 100% +extern const uint8_t NotoSans_Medium_Symbols_28[140] = { + 130,28,8,0,10,0,37,246, // unifont_t + // 0x08 - LCD_STR_THERMOMETER a.k.a 0x1f321 🌡 + 22,46,20,25,2,248,0,7,255,253,0,0,0,31,255,255,64,0,0,47,255,255,128,0,0,63,0,31,128,0,0,63,0,15,128,0,0,63,240,15,128,0,0,63,0,15,128,0,0,63,0,15,128,0,0,63,0,15,128,0,0,63,0,15,128,0,0,63,240,15,128,0,0,63,0,15,128,0,0,63,0,15,128,0,0,63,47,79,128,0,0,63,191,79,128,0,0,63,191,79,128,0,0,63,63,79,128,0,0,63,63,79,128,0,0,63,63,79,128,0,0,63,255,79,128,0,0,63,63,79,128,0,0,63,63,79,128,0,0,63,63,79,128,0,0,63,191,79,128,0,0,63,191,79,128,0,0,63,63,79,128,0,0,63,63,79,128,0,0,63,63,79,192,0,0,255,255,79,224,0,3,253,63,75,252,0,15,224,63,64,255,0,47,129,255,224,63,128,63,7,255,253,15,192,189,31,255,255,11,208,252,63,255,255,131,224,252,63,255,255,195,240,252,63,255,255,195,240,252,63,255,255,195,224,189,47,255,255,75,208,127,15,255,255,15,192,63,131,255,252,63,128,15,240,111,144,255,0,7,254,0,27,252,0,1,255,255,255,240,0,0,47,255,255,128,0,0,1,191,228,0,0, + // 0x09 - LCD_STR_DEGREE a.k.a 0x00b0 ° + 13,13,52,16,2,15,0,85,0,0,11,255,224,0,47,255,252,0,127,65,254,0,253,0,63,0,252,0,47,0,252,0,47,64,252,0,47,0,253,0,63,0,127,129,254,0,47,255,252,0,11,255,224,0,0,85,0,0, + // 0x0a - replacement for 0x2026 used in Greek language files … + 26,6,42,31,2,255,31,128,0,248,0,11,192,63,224,3,255,0,63,240,127,224,3,255,0,63,240,127,224,3,255,0,63,240,63,208,2,253,0,47,224,5,0,0,84,0,5,64, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Traditional_Chinese_28.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Traditional_Chinese_28.cpp new file mode 100644 index 000000000000..a88c195cbf1b --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Traditional_Chinese_28.cpp @@ -0,0 +1,646 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Traditional Chinese 38pt, capital 'A' height: 28px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 +extern const uint8_t NotoSans_Medium_Traditional_Chinese_28[22554] = { + 162,28,191,34,26,255,37,246, // unifont_t + // 0x22bf ⊿ + 191,34,29,31,248,38,4,255,0,0,0,0,0,0,0,128,0,0,0,0,0,0,2,192,0,0,0,0,0,0,11,192,0,0,0,0,0,0,47,192,0,0,0,0,0,0,191,192,0,0,0,0,0,2,255,192,0,0,0,0,0,11,255,192,0,0,0,0,0,47,255,192,0,0,0,0,0,191,223,192,0,0,0,0,2,255,31,192,0,0,0,0,11,252,31,192,0,0,0,0,31,240,31,192,0,0,0,0,127,192,31,192,0,0,0,1,255,0,31,192,0,0,0,7,252,0,31,192,0,0,0,31,240,0,31,192,0,0,0,127,192,0,31,192,0,0,1,255,0,0,31,192,0,0,7,252,0,0,31,192,0,0,31,240,0,0,31,192,0,0,127,192,0,0,31,192,0,1,255,0,0,0,31,192,0,7,252,0,0,0,31,192,0,31,240,0,0,0,31,192,0,127,192,0,0,0,31,192,1,255,0,0,0,0,31,192,7,252,0,0,0,0,31,192,15,255,255,255,255,255,255,192,63,255,255,255,255,255,255,192,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0, + // 0x4e00 一 + 0,78,35,4,36,38,2,12,255,255,255,255,255,255,255,255,244,255,255,255,255,255,255,255,255,244,255,255,255,255,255,255,255,255,244,255,255,255,255,255,255,255,255,244, + // 0x4e09 三 + 9,78,34,29,5,38,2,255,3,255,255,255,255,255,255,253,0,3,255,255,255,255,255,255,253,0,3,255,255,255,255,255,255,253,0,2,170,170,170,170,170,170,168,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,170,170,170,170,170,0,0,0,47,255,255,255,255,255,64,0,0,47,255,255,255,255,255,64,0,0,47,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,170,170,170,170,170,170,170,128,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208, + // 0x4e0a 上 + 10,78,34,34,50,38,2,254,0,0,0,5,64,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,250,170,170,168,0,0,0,0,15,255,255,255,253,0,0,0,0,15,255,255,255,253,0,0,0,0,15,255,255,255,253,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,170,170,170,175,250,170,170,170,160,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x4e0b 下 + 11,78,34,33,41,38,2,252,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,106,170,170,175,250,170,170,170,144,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,255,128,0,0,0,0,0,0,11,255,248,0,0,0,0,0,0,11,255,255,64,0,0,0,0,0,11,251,255,244,0,0,0,0,0,11,240,191,254,0,0,0,0,0,11,240,31,255,208,0,0,0,0,11,240,2,255,248,0,0,0,0,11,240,0,63,254,0,0,0,0,11,240,0,11,252,0,0,0,0,11,240,0,1,244,0,0,0,0,11,240,0,0,16,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0, + // 0x4e0d 不 + 13,78,34,33,41,38,2,252,127,255,255,255,255,255,255,255,192,127,255,255,255,255,255,255,255,192,127,255,255,255,255,255,255,255,192,42,170,170,170,255,234,170,170,128,0,0,0,0,255,192,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,191,252,0,0,0,0,0,0,1,255,252,124,0,0,0,0,0,7,255,254,255,64,0,0,0,0,31,255,252,255,240,0,0,0,0,127,243,252,47,253,0,0,0,2,255,195,252,7,255,64,0,0,11,255,3,252,1,255,224,0,0,63,252,3,252,0,63,252,0,2,255,240,3,252,0,11,255,0,31,255,128,3,252,0,2,255,192,191,253,0,3,252,0,0,191,240,191,240,0,3,252,0,0,31,224,63,128,0,3,252,0,0,7,128,8,0,0,3,252,0,0,1,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0, + // 0x4e26 並 + 38,78,34,34,50,38,2,254,0,0,144,0,0,0,100,0,0,0,11,240,0,0,0,255,64,0,0,7,248,0,0,1,255,0,0,0,2,253,0,0,2,253,0,0,0,0,255,0,0,7,252,0,0,0,0,191,64,0,15,240,0,0,0,0,63,128,0,31,224,0,0,21,85,126,85,85,127,229,85,64,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,3,248,3,248,0,0,0,0,0,3,248,3,248,0,0,0,0,0,3,248,3,248,0,0,0,0,96,3,248,3,248,0,228,0,3,244,3,248,3,248,1,253,0,3,248,3,248,3,248,2,252,0,1,252,3,248,3,248,3,252,0,0,253,3,248,3,248,7,244,0,0,191,3,248,3,248,11,240,0,0,127,3,248,3,248,15,240,0,0,63,67,248,3,248,15,208,0,0,63,131,248,3,248,47,192,0,0,47,195,248,3,248,63,128,0,0,31,195,248,3,248,127,64,0,0,15,211,248,3,248,191,0,0,0,15,131,248,3,248,109,0,0,0,0,3,248,3,248,0,0,0,0,0,3,248,3,248,0,0,0,0,0,3,248,3,248,0,0,0,170,170,171,254,171,254,170,170,160,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x4e2d 中 + 45,78,32,36,32,38,3,252,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,149,85,95,245,85,86,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,1,253,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,255,255,255,255,255,255,253,127,149,85,95,245,85,86,253,127,0,0,15,224,0,1,253,127,0,0,15,224,0,0,168,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0, + // 0x4e3b 主 + 59,78,34,35,59,38,2,253,0,0,0,9,0,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,191,224,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,0,63,208,0,0,0,5,85,85,85,111,149,85,85,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,255,255,255,255,255,255,244,0,0,255,255,255,255,255,255,244,0,0,255,255,255,255,255,255,244,0,0,85,85,87,253,85,85,80,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,85,85,85,85,85,85,80, + // 0x4e4b 之 + 75,78,35,36,68,38,1,252,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,1,85,85,85,255,85,85,89,0,3,255,255,255,255,255,255,255,128,3,255,255,255,255,255,255,255,192,3,255,255,255,255,255,255,255,128,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,11,253,0,0,0,0,0,0,0,31,244,0,0,0,0,0,0,0,127,224,0,0,0,1,0,0,1,255,128,0,0,0,3,224,0,7,254,0,0,0,0,11,244,0,47,248,0,0,0,0,15,240,0,191,224,0,0,0,0,31,224,2,255,128,0,0,0,0,63,240,15,253,0,0,0,0,0,127,252,127,244,0,0,0,0,0,255,255,255,192,0,0,0,0,2,254,255,254,0,0,0,0,0,3,252,63,252,0,0,0,0,0,11,248,15,255,144,0,0,0,0,31,240,3,255,255,250,165,85,88,63,208,0,127,255,255,255,255,252,191,192,0,6,255,255,255,255,248,31,64,0,0,6,191,255,255,244,1,0,0,0,0,0,0,0,0, + // 0x4ea4 交 + 164,78,34,37,77,38,2,251,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,85,85,85,85,85,85,85,85,80,0,0,20,0,0,2,128,0,0,0,0,63,128,0,15,240,0,0,0,0,255,192,0,47,253,0,0,0,3,255,0,0,7,255,128,0,0,15,252,0,0,0,255,240,0,0,127,240,0,0,0,47,252,0,2,255,192,0,0,0,11,255,0,31,255,6,64,0,30,65,255,192,191,248,63,192,0,47,224,127,224,63,224,47,208,0,63,192,31,128,15,0,15,240,0,191,128,9,0,0,0,11,244,0,255,0,0,0,0,0,3,252,3,254,0,0,0,0,0,2,255,11,252,0,0,0,0,0,0,255,175,240,0,0,0,0,0,0,63,255,208,0,0,0,0,0,0,31,255,128,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,127,255,208,0,0,0,0,0,2,255,255,248,0,0,0,0,0,47,255,95,255,128,0,0,0,7,255,252,3,255,249,0,0,1,191,255,208,0,191,255,228,0,191,255,253,0,0,11,255,255,240,255,255,208,0,0,0,191,255,240,63,248,0,0,0,0,6,255,192,46,0,0,0,0,0,0,6,64,0,0,0,0,0,0,0,0,0, + // 0x4eae 亮 + 174,78,34,37,77,38,2,251,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,85,85,85,85,85,64,0,0,47,255,255,255,255,255,128,0,0,47,255,255,255,255,255,128,0,0,47,192,0,0,0,63,128,0,0,47,192,0,0,0,63,128,0,0,47,192,0,0,0,63,128,0,0,47,255,255,255,255,255,128,0,0,47,255,255,255,255,255,128,0,0,5,85,85,85,85,85,64,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,0,0,0,0,0,0,15,208,127,0,0,0,0,0,0,15,208,127,0,15,224,3,252,0,15,208,127,0,15,224,3,252,0,15,208,127,0,31,208,3,252,0,15,208,0,0,47,192,3,252,0,0,0,0,0,63,192,3,252,0,0,0,0,0,127,128,3,252,0,0,0,0,0,255,64,3,252,0,7,128,0,3,254,0,3,252,0,7,240,0,47,252,0,3,252,0,11,240,6,255,240,0,2,253,0,15,224,255,255,128,0,2,255,255,255,208,191,249,0,0,0,255,255,255,192,62,64,0,0,0,47,255,254,0,0,0,0,0,0,0,0,0,0, + // 0x4ee4 令 + 228,78,36,36,68,38,1,252,0,0,0,1,254,0,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,11,255,208,0,0,0,0,0,0,47,255,240,0,0,0,0,0,0,127,219,252,0,0,0,0,0,1,255,131,255,0,0,0,0,0,7,254,0,255,192,0,0,0,0,31,252,0,63,244,0,0,0,0,127,240,0,15,253,0,0,0,2,255,192,0,3,255,128,0,0,11,255,0,0,0,255,240,0,0,63,253,0,0,0,127,253,0,1,255,223,255,255,255,247,255,208,15,255,79,255,255,255,240,255,248,127,252,15,255,255,255,240,47,253,63,208,0,0,0,0,0,7,248,15,0,0,0,0,0,0,0,176,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,0,0,47,208,0,2,252,0,0,0,0,31,192,0,2,252,0,0,0,0,31,192,0,2,252,0,0,0,0,31,192,0,2,252,0,0,0,0,31,192,0,2,252,0,0,0,0,31,192,0,2,252,0,0,0,0,31,192,0,2,252,0,0,0,0,31,192,0,2,252,0,0,0,0,31,192,15,255,252,0,0,0,0,31,192,11,255,248,0,0,0,0,31,192,7,255,224,0,0,0,0,31,192,1,84,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0, + // 0x4ef6 件 + 246,78,35,36,68,38,1,252,0,0,32,0,0,5,64,0,0,0,0,191,0,0,31,192,0,0,0,0,254,2,144,31,192,0,0,0,1,253,3,244,31,192,0,0,0,3,252,7,240,31,192,0,0,0,7,248,11,240,31,192,0,0,0,15,240,15,224,31,192,0,0,0,31,224,15,208,31,192,0,0,0,63,192,31,255,255,255,255,224,0,127,128,47,255,255,255,255,224,0,255,64,63,255,255,255,255,224,3,255,64,127,149,111,229,85,64,7,255,64,255,0,31,192,0,0,31,255,65,253,0,31,192,0,0,63,255,67,252,0,31,192,0,0,191,255,66,244,0,31,192,0,0,63,63,64,32,0,31,192,0,0,44,63,64,0,0,31,192,0,0,4,63,64,0,0,31,192,0,0,0,63,67,255,255,255,255,255,252,0,63,67,255,255,255,255,255,252,0,63,67,255,255,255,255,255,252,0,63,65,85,85,111,229,85,84,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,47,64,0,0,31,192,0,0, + // 0x4efd 份 + 253,78,36,36,68,38,1,252,0,0,100,0,0,0,0,0,0,0,0,255,0,15,255,255,128,0,0,1,253,0,15,255,255,192,0,0,2,252,0,15,255,255,208,0,0,3,248,1,64,0,15,224,0,0,11,240,3,248,0,15,240,0,0,15,224,3,244,0,7,240,0,0,47,192,11,240,0,3,248,0,0,63,128,15,224,0,3,252,0,0,255,64,47,192,0,1,254,0,1,255,64,63,128,0,0,255,0,3,255,64,191,0,0,0,127,192,15,255,64,254,0,0,0,63,224,47,255,67,252,0,0,0,31,248,127,255,75,244,0,0,0,11,254,255,191,95,240,0,0,0,7,253,190,63,111,239,255,255,255,253,248,60,63,71,95,255,255,255,252,32,32,63,64,31,255,255,255,252,0,0,63,64,0,11,224,1,252,0,0,63,64,0,15,224,1,252,0,0,63,64,0,15,208,1,252,0,0,63,64,0,15,208,1,252,0,0,63,64,0,31,192,2,252,0,0,63,64,0,47,192,2,252,0,0,63,64,0,63,64,2,252,0,0,63,64,0,127,0,2,252,0,0,63,64,0,255,0,3,252,0,0,63,64,1,253,0,3,248,0,0,63,64,3,252,0,3,248,0,0,63,64,15,244,0,3,248,0,0,63,64,63,224,0,11,244,0,0,63,66,255,128,15,255,240,0,0,63,67,254,0,11,255,240,0,0,63,64,244,0,7,255,192,0,0,42,0,64,0,1,84,0,0, + // 0x4f11 休 + 17,79,36,36,68,38,1,252,0,0,4,0,0,0,0,0,0,0,0,47,128,0,63,128,0,0,0,0,63,192,0,63,128,0,0,0,0,191,64,0,63,128,0,0,0,0,255,0,0,63,128,0,0,0,1,254,0,0,63,128,0,0,0,3,252,0,0,63,128,0,0,0,11,248,0,0,63,128,0,0,0,15,240,0,0,63,128,0,0,0,63,224,0,0,63,128,0,0,0,191,211,255,255,255,255,255,252,1,255,211,255,255,255,255,255,252,3,255,211,255,255,255,255,255,252,15,255,209,85,87,255,253,85,84,63,255,208,0,3,255,252,0,0,255,239,208,0,7,255,253,0,0,191,143,208,0,15,255,255,0,0,63,15,208,0,31,255,255,0,0,44,15,208,0,63,255,175,192,0,0,15,208,0,127,127,159,208,0,0,15,208,0,255,63,143,240,0,0,15,208,2,253,63,135,248,0,0,15,208,7,252,63,130,252,0,0,15,208,15,240,63,128,255,0,0,15,208,47,224,63,128,191,128,0,15,208,191,192,63,128,63,208,0,15,209,255,0,63,128,31,244,0,15,219,253,0,63,128,11,253,0,15,239,248,0,63,128,3,255,0,15,219,240,0,63,128,0,252,0,15,210,192,0,63,128,0,48,0,15,208,0,0,63,128,0,0,0,15,208,0,0,63,128,0,0,0,15,208,0,0,63,128,0,0,0,15,208,0,0,63,128,0,0,0,15,192,0,0,63,128,0,0, + // 0x4f4d 位 + 77,79,36,36,68,38,1,252,0,0,36,0,0,21,64,0,0,0,0,127,64,0,63,128,0,0,0,0,191,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,2,252,0,0,63,128,0,0,0,3,252,0,0,63,128,0,0,0,11,244,0,0,63,128,0,0,0,31,224,85,85,127,213,85,80,0,63,192,255,255,255,255,255,248,0,191,192,255,255,255,255,255,248,1,255,192,255,255,255,255,255,248,3,255,192,0,0,0,0,0,0,11,255,192,0,0,0,0,0,0,47,255,192,1,96,0,0,249,0,191,255,192,3,240,0,1,254,0,255,175,192,3,244,0,1,253,0,127,47,192,2,248,0,2,252,0,60,47,192,1,252,0,3,252,0,16,47,192,1,252,0,3,248,0,0,47,192,0,253,0,7,244,0,0,47,192,0,254,0,11,240,0,0,47,192,0,190,0,15,240,0,0,47,192,0,191,0,15,224,0,0,47,192,0,127,0,15,208,0,0,47,192,0,127,0,47,192,0,0,47,192,0,63,64,63,192,0,0,47,192,0,63,128,63,64,0,0,47,192,0,63,128,127,0,0,0,47,192,0,63,128,191,0,0,0,47,192,0,16,0,254,0,0,0,47,193,85,85,85,253,85,84,0,47,195,255,255,255,255,255,254,0,47,195,255,255,255,255,255,254,0,47,195,255,255,255,255,255,254,0,47,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0, + // 0x4f4e 低 + 78,79,36,36,68,38,1,252,0,0,80,0,0,0,0,0,0,0,0,254,0,0,0,0,4,0,0,0,254,0,0,0,6,255,0,0,2,252,0,0,22,255,255,192,0,3,252,53,111,255,255,255,128,0,7,244,63,255,255,255,144,0,0,15,240,63,255,255,248,0,0,0,47,208,63,229,3,248,0,0,0,63,192,63,64,3,248,0,0,0,191,64,63,64,3,252,0,0,1,255,64,63,64,2,252,0,0,3,255,64,63,64,2,252,0,0,11,255,64,63,64,2,252,0,0,31,255,64,63,64,2,252,0,0,127,255,64,63,255,255,255,255,253,255,255,64,63,255,255,255,255,253,255,63,64,63,255,255,255,255,253,60,63,64,63,64,0,253,0,0,36,63,64,63,64,0,254,0,0,0,63,64,63,64,0,254,0,0,0,63,64,63,64,0,191,0,0,0,63,64,63,64,0,191,0,0,0,63,64,63,64,0,127,0,0,0,63,64,63,64,0,63,64,0,0,63,64,63,64,5,63,128,0,0,63,64,63,155,255,111,192,0,0,63,65,191,255,255,95,208,32,0,63,71,255,255,255,79,224,46,0,63,67,255,250,64,11,240,63,0,63,67,229,0,0,7,248,63,0,63,64,0,0,0,3,253,127,0,63,64,0,0,0,1,255,254,0,63,65,255,255,255,252,191,252,0,63,65,255,255,255,252,47,248,0,63,65,255,255,255,252,6,144,0,63,64,0,0,0,0,0,0, + // 0x4f5c 作 + 92,79,36,36,68,38,1,252,0,0,20,0,0,0,0,0,0,0,0,63,64,11,224,0,0,0,0,0,191,64,15,240,0,0,0,0,0,255,0,31,208,0,0,0,0,1,253,0,47,192,0,0,0,0,3,252,0,63,128,0,0,0,0,7,248,0,191,149,85,85,84,0,15,240,0,255,255,255,255,253,0,31,224,2,255,255,255,255,253,0,63,192,3,255,255,255,255,253,0,255,192,15,240,127,64,0,0,1,255,192,31,224,127,64,0,0,3,255,192,63,192,127,64,0,0,15,255,192,255,64,127,64,0,0,63,255,194,255,0,127,64,0,0,127,255,195,252,0,127,255,255,248,63,111,192,244,0,127,255,255,248,30,47,192,16,0,127,255,255,248,8,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,85,85,84,0,47,192,0,0,127,255,255,252,0,47,192,0,0,127,255,255,252,0,47,192,0,0,127,255,255,252,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,47,192,0,0,127,64,0,0,0,31,192,0,0,127,0,0,0, + // 0x4f9b 供 + 155,79,36,36,68,38,1,252,0,0,36,0,105,0,6,160,0,0,0,191,0,191,0,11,240,0,0,0,254,0,191,0,11,240,0,0,1,253,0,191,0,11,240,0,0,3,252,0,191,0,11,240,0,0,7,244,0,191,0,11,240,0,0,15,240,0,191,0,11,240,0,0,47,208,0,191,0,11,240,0,0,63,192,255,255,255,255,255,252,0,191,64,255,255,255,255,255,252,1,255,64,255,255,255,255,255,252,3,255,64,85,191,85,91,245,84,15,255,64,0,191,0,11,240,0,47,255,64,0,191,0,11,240,0,127,255,64,0,191,0,11,240,0,255,191,64,0,191,0,11,240,0,127,63,64,0,191,0,11,240,0,60,63,64,0,191,0,11,240,0,20,63,64,0,191,0,11,240,0,0,63,64,0,191,0,11,240,0,0,63,65,85,255,85,95,245,84,0,63,67,255,255,255,255,255,253,0,63,67,255,255,255,255,255,253,0,63,67,255,255,255,255,255,253,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,61,0,1,192,0,0,63,64,0,191,64,15,240,0,0,63,64,1,254,0,7,252,0,0,63,64,7,252,0,2,254,0,0,63,64,15,244,0,0,191,128,0,63,64,63,208,0,0,63,208,0,63,65,255,128,0,0,15,240,0,63,67,254,0,0,0,7,252,0,63,65,248,0,0,0,2,244,0,63,64,32,0,0,0,0,128, + // 0x4fdd 保 + 221,79,36,36,68,38,1,252,0,0,36,0,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,191,31,255,255,255,255,192,0,0,254,31,255,255,255,255,192,0,2,252,31,255,255,255,255,192,0,3,248,31,192,0,0,31,192,0,15,240,31,192,0,0,31,192,0,31,224,31,192,0,0,31,192,0,63,192,31,192,0,0,31,192,0,191,192,31,192,0,0,31,192,1,255,192,31,192,0,0,31,192,3,255,192,31,255,255,255,255,192,15,255,192,31,255,255,255,255,192,63,255,192,31,255,255,255,255,192,191,239,192,0,0,47,192,0,0,191,111,192,0,0,47,192,0,0,62,47,192,0,0,47,192,0,0,44,47,192,0,0,47,192,0,0,0,47,192,0,0,47,192,0,0,0,47,195,255,255,255,255,255,252,0,47,195,255,255,255,255,255,252,0,47,195,255,255,255,255,255,252,0,47,192,0,3,255,252,0,0,0,47,192,0,11,255,255,0,0,0,47,192,0,31,255,255,128,0,0,47,192,0,63,239,223,208,0,0,47,192,0,255,47,207,244,0,0,47,192,3,253,47,195,253,0,0,47,192,31,248,47,193,255,64,0,47,192,127,224,47,192,127,208,0,47,195,255,128,47,192,47,248,0,47,207,254,0,47,192,11,255,0,47,199,248,0,47,192,2,253,0,47,193,208,0,47,192,0,116,0,47,192,0,0,47,192,0,0,0,31,128,0,0,47,192,0,0, + // 0x4fe1 信 + 225,79,36,36,68,38,1,252,0,0,36,0,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,191,7,255,255,255,255,0,0,0,254,7,255,255,255,255,0,0,2,252,3,255,255,255,255,0,0,3,248,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,31,227,255,255,255,255,255,253,0,63,195,255,255,255,255,255,253,0,191,195,255,255,255,255,255,253,0,255,192,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,11,255,192,0,0,0,0,0,0,47,255,192,15,255,255,255,255,128,127,255,192,15,255,255,255,255,128,255,175,192,11,255,255,255,255,128,191,47,192,0,0,0,0,0,0,60,47,192,0,0,0,0,0,0,16,47,192,11,255,255,255,255,64,0,47,192,15,255,255,255,255,128,0,47,192,15,255,255,255,255,128,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,15,255,255,255,255,192,0,47,192,31,255,255,255,255,192,0,47,192,31,255,255,255,255,192,0,47,192,31,192,0,0,31,192,0,47,192,31,192,0,0,31,192,0,47,192,31,192,0,0,31,192,0,47,192,31,192,0,0,31,192,0,47,192,31,192,0,0,31,192,0,47,192,31,255,255,255,255,192,0,47,192,31,255,255,255,255,192,0,47,192,31,255,255,255,255,192,0,47,192,31,192,0,0,31,192,0,26,128,15,192,0,0,26,128, + // 0x500b 個 + 11,80,34,36,68,38,1,252,0,1,144,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,3,244,255,255,255,255,255,240,0,7,240,255,255,255,255,255,240,0,15,240,255,255,255,255,255,240,0,31,208,253,0,0,0,3,240,0,63,192,252,0,10,64,3,240,0,63,128,252,0,31,64,3,240,0,191,0,252,0,31,64,3,240,0,255,0,252,0,31,64,3,240,3,255,0,252,0,31,64,3,240,7,255,0,252,127,255,255,243,240,15,255,0,252,127,255,255,243,240,47,255,0,252,106,175,234,147,240,127,255,0,252,0,31,64,3,240,255,191,0,252,0,31,64,3,240,190,127,0,252,0,31,64,3,240,124,127,0,252,10,175,234,67,240,48,127,0,252,15,255,255,131,240,0,127,0,252,15,255,255,131,240,0,127,0,252,15,64,15,131,240,0,127,0,252,15,64,15,131,240,0,127,0,252,15,64,15,131,240,0,127,0,252,15,64,15,131,240,0,127,0,252,15,64,15,131,240,0,127,0,252,15,255,255,131,240,0,127,0,252,15,255,255,131,240,0,127,0,252,10,170,170,67,240,0,127,0,252,0,0,0,3,240,0,127,0,252,0,0,0,3,240,0,127,0,255,255,255,255,255,240,0,127,0,255,255,255,255,255,240,0,127,0,255,255,255,255,255,240,0,127,0,253,0,0,0,3,240,0,127,0,252,0,0,0,3,240,0,127,0,168,0,0,0,1,80, + // 0x503c 值 + 60,80,36,36,68,38,1,252,0,0,96,0,0,30,128,0,0,0,0,254,0,0,47,192,0,0,0,0,253,0,0,63,192,0,0,0,2,252,0,0,63,128,0,0,0,3,249,255,255,255,255,255,244,0,7,241,255,255,255,255,255,244,0,15,241,255,255,255,255,255,244,0,31,208,0,0,127,0,0,0,0,63,192,0,0,190,0,0,0,0,191,64,0,0,253,0,0,0,0,255,0,26,170,254,170,170,0,3,255,0,31,255,255,255,255,0,11,255,0,31,255,255,255,255,0,31,255,0,31,128,0,0,63,0,63,255,0,31,128,0,0,63,0,191,255,0,31,128,0,0,63,0,63,127,0,31,255,255,255,255,0,45,63,0,31,255,255,255,255,0,8,63,0,31,234,170,170,191,0,0,63,0,31,128,0,0,63,0,0,63,0,31,128,0,0,63,0,0,63,0,31,255,255,255,255,0,0,63,0,31,255,255,255,255,0,0,63,0,31,213,85,85,191,0,0,63,0,31,128,0,0,63,0,0,63,0,31,128,0,0,63,0,0,63,0,31,213,85,85,191,0,0,63,0,31,255,255,255,255,0,0,63,0,31,255,255,255,255,0,0,63,0,31,128,0,0,63,0,0,63,0,31,128,0,0,63,0,0,63,0,31,128,0,0,63,0,0,63,15,255,255,255,255,255,253,0,63,15,255,255,255,255,255,253,0,63,15,255,255,255,255,255,253,0,63,0,0,0,0,0,0,0, + // 0x504f 偏 + 79,80,36,36,68,38,1,252,0,1,128,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,246,255,255,255,255,255,253,0,11,243,255,255,255,255,255,253,0,15,227,255,255,255,255,255,253,0,31,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,64,42,170,170,170,170,160,0,191,0,127,255,255,255,255,240,0,255,0,127,255,255,255,255,240,3,255,0,127,0,0,0,11,240,7,255,0,127,0,0,0,11,240,15,255,0,127,0,0,0,11,240,47,255,0,127,0,0,0,11,240,127,255,0,127,255,255,255,255,240,255,255,0,127,255,255,255,255,240,255,127,0,127,170,170,170,170,160,124,127,0,127,0,0,0,0,0,52,127,0,127,0,0,0,0,0,0,127,0,191,255,255,255,255,248,0,127,0,191,255,255,255,255,248,0,127,0,255,255,255,255,255,248,0,127,0,255,240,124,15,66,248,0,127,0,255,240,124,15,66,248,0,127,1,255,240,124,15,66,248,0,127,2,255,240,124,15,66,248,0,127,3,251,255,255,255,255,248,0,127,3,247,255,255,255,255,248,0,127,7,243,250,255,191,235,248,0,127,15,227,240,124,15,66,248,0,127,31,211,240,124,15,66,248,0,127,63,195,240,124,15,66,248,0,127,127,67,240,124,15,66,248,0,127,30,3,240,124,15,127,244,0,127,0,3,240,124,15,95,240,0,127,0,3,240,124,15,79,208, + // 0x505c 停 + 92,80,36,36,68,38,1,252,0,0,80,0,0,42,128,0,0,0,0,255,0,0,63,128,0,0,0,0,254,0,0,63,128,0,0,0,2,252,0,0,63,192,0,0,0,3,251,255,255,255,255,255,252,0,11,243,255,255,255,255,255,252,0,15,243,255,255,255,255,255,252,0,47,192,0,0,0,0,0,0,0,63,128,5,85,85,85,85,0,0,255,64,15,255,255,255,255,64,2,255,64,15,255,255,255,255,64,7,255,64,15,192,0,0,63,64,15,255,64,15,192,0,0,63,64,63,255,64,15,192,0,0,63,64,191,255,64,15,255,255,255,255,64,255,127,64,15,255,255,255,255,64,125,63,64,5,85,85,85,85,0,56,63,64,0,0,0,0,0,0,16,63,71,255,255,255,255,255,254,0,63,75,255,255,255,255,255,254,0,63,75,255,255,255,255,255,254,0,63,75,224,0,0,0,0,190,0,63,75,224,0,0,0,0,190,0,63,75,226,255,255,255,252,190,0,63,75,227,255,255,255,252,190,0,63,75,227,255,255,255,252,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,0,63,128,0,0,0,63,64,0,255,255,128,0,0,0,63,64,0,191,255,64,0,0,0,63,0,0,127,249,0,0,0, + // 0x5075 偵 + 117,80,35,37,77,38,1,251,0,0,36,0,0,63,128,0,0,0,0,127,64,0,63,128,0,0,0,0,255,0,0,63,128,0,0,0,0,254,0,0,63,255,255,248,0,2,252,0,0,63,255,255,248,0,7,248,0,0,63,255,255,248,0,15,240,0,0,63,128,0,0,0,31,224,0,0,63,128,0,0,0,63,192,0,0,63,128,0,0,0,191,192,42,170,191,234,170,128,1,255,192,47,255,255,255,255,192,3,255,192,47,255,255,255,255,192,15,255,192,47,128,0,0,47,192,63,255,192,47,128,0,0,47,192,191,239,192,47,234,170,170,191,192,255,111,192,47,255,255,255,255,192,126,47,192,47,255,255,255,255,192,56,47,192,47,128,0,0,47,192,0,47,192,47,128,0,0,47,192,0,47,192,47,128,0,0,47,192,0,47,192,47,255,255,255,255,192,0,47,192,47,255,255,255,255,192,0,47,192,47,234,170,170,191,192,0,47,192,47,128,0,0,47,192,0,47,192,47,128,0,0,47,192,0,47,192,47,234,170,170,191,192,0,47,192,47,255,255,255,255,192,0,47,192,47,255,255,255,255,192,0,47,192,0,0,0,0,0,0,0,47,192,0,62,64,7,208,0,0,47,192,1,255,192,47,252,0,0,47,192,11,255,0,11,255,64,0,47,192,191,248,0,0,255,224,0,47,199,255,208,0,0,47,252,0,47,194,255,0,0,0,7,248,0,31,128,116,0,0,0,1,192,0,0,0,0,0,0,0,0,0, + // 0x5099 備 + 153,80,36,37,77,38,1,251,0,1,64,0,21,0,5,80,0,0,3,248,0,127,0,11,224,0,0,3,248,0,127,0,11,224,0,0,7,240,0,127,0,11,240,0,0,15,243,255,255,255,255,255,253,0,15,211,255,255,255,255,255,253,0,47,195,255,255,255,255,255,253,0,63,128,0,127,0,11,224,0,0,191,0,0,127,0,11,224,0,0,255,0,0,127,0,11,224,0,2,255,0,0,0,0,0,0,0,3,255,2,255,255,255,255,255,253,11,255,2,255,255,255,255,255,253,31,255,2,255,255,255,255,255,253,63,255,2,248,0,0,0,0,0,255,255,2,248,0,0,0,0,0,255,127,2,248,106,170,170,170,164,124,127,2,248,127,255,255,255,248,52,127,2,248,127,255,255,255,248,16,127,2,248,125,0,252,1,248,0,127,2,248,125,0,252,1,248,0,127,2,248,125,0,252,1,248,0,127,2,248,127,255,255,255,248,0,127,3,244,127,255,255,255,248,0,127,3,244,126,85,253,86,248,0,127,3,240,125,0,252,1,248,0,127,3,240,125,0,252,1,248,0,127,7,240,127,255,255,255,248,0,127,11,240,127,255,255,255,248,0,127,15,224,126,85,253,86,248,0,127,15,208,125,0,252,1,248,0,127,31,192,125,0,252,1,248,0,127,63,128,125,0,252,1,248,0,127,127,0,125,0,252,171,244,0,127,46,0,125,0,252,127,240,0,127,9,0,105,0,164,63,144,0,0,0,0,0,0,0,0,0, + // 0x50b3 傳 + 179,80,36,36,68,38,1,252,0,0,80,0,0,26,64,0,0,0,0,255,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,2,255,255,255,255,255,255,252,0,3,254,255,255,255,255,255,252,0,11,245,170,170,191,234,170,168,0,15,240,0,0,47,192,0,0,0,47,208,0,0,47,192,0,0,0,63,192,63,255,255,255,255,224,0,191,64,63,255,255,255,255,224,1,255,64,63,0,47,192,11,224,3,255,64,63,0,47,192,11,224,15,255,64,63,255,255,255,255,224,47,255,64,63,255,255,255,255,224,191,255,64,63,0,47,192,11,224,255,191,64,63,0,47,192,11,224,190,63,64,63,255,255,255,255,224,60,63,64,63,255,255,255,255,224,32,63,64,0,0,47,192,255,0,0,63,64,0,0,47,192,63,192,0,63,67,255,255,255,255,255,240,0,63,67,255,255,255,255,255,252,0,63,66,254,170,165,87,249,253,0,63,64,0,0,0,3,244,32,0,63,64,0,0,0,3,244,0,0,63,75,255,255,255,255,255,253,0,63,75,255,255,255,255,255,253,0,63,75,255,255,255,255,255,253,0,63,64,7,240,0,3,244,0,0,63,64,11,252,0,3,244,0,0,63,64,2,255,0,3,244,0,0,63,64,0,191,128,3,244,0,0,63,64,0,47,192,3,244,0,0,63,64,0,14,15,255,244,0,0,63,64,0,0,15,255,240,0,0,63,0,0,0,7,255,128,0, + // 0x50be 傾 + 190,80,36,37,77,38,1,251,0,1,0,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,15,224,0,63,255,255,255,253,0,15,208,0,63,255,255,255,253,0,31,202,128,63,255,255,255,253,0,63,143,208,0,0,127,0,0,0,63,15,208,0,0,191,0,0,0,191,15,208,0,0,254,0,0,0,254,15,208,3,255,255,255,240,2,253,15,208,3,255,255,255,240,3,253,15,208,227,250,170,171,240,11,253,15,211,251,240,0,3,240,15,253,15,223,247,240,0,3,240,47,253,15,255,195,240,0,3,240,127,253,15,255,3,255,255,255,240,255,253,15,252,3,255,255,255,240,253,189,15,240,3,250,170,171,240,124,189,15,208,3,240,0,3,240,48,189,15,208,3,240,0,3,240,0,189,15,208,3,250,170,171,240,0,189,15,208,3,255,255,255,240,0,189,15,208,3,255,255,255,240,0,189,15,208,183,240,0,3,240,0,189,15,208,191,240,0,3,240,0,189,15,208,255,240,0,3,240,0,189,15,208,255,250,170,171,240,0,189,15,208,255,255,255,255,240,0,189,11,255,251,255,255,255,240,0,189,7,255,240,0,0,0,0,0,189,2,255,208,28,0,24,0,0,189,0,0,0,191,128,191,0,0,189,0,0,3,255,64,191,208,0,189,0,0,47,252,0,31,244,0,189,0,2,255,224,0,7,253,0,189,0,1,255,64,0,0,253,0,189,0,0,116,0,0,0,48,0,0,0,0,0,0,0,0,0, + // 0x5132 儲 + 50,81,36,36,68,38,1,252,0,1,0,0,0,0,252,0,0,0,7,224,0,0,0,252,0,228,0,11,231,255,252,0,252,0,252,0,15,215,255,252,0,252,2,248,0,31,195,255,252,0,252,3,240,0,63,128,0,0,63,255,247,240,0,63,0,0,0,63,255,255,208,0,191,47,255,255,111,255,255,192,0,254,47,255,255,64,252,47,128,2,253,47,255,255,64,252,63,0,3,253,0,0,0,0,252,190,0,15,253,0,0,0,0,253,252,0,31,253,7,255,253,191,255,255,253,63,253,7,255,253,191,255,255,253,255,253,6,170,169,191,255,255,253,255,189,0,0,0,0,127,142,0,124,189,0,0,0,0,254,47,192,52,189,6,170,169,3,252,11,224,16,189,7,255,253,31,240,2,192,0,189,7,255,253,191,255,255,240,0,189,0,0,3,255,255,255,240,0,189,0,0,1,255,255,255,240,0,189,11,255,254,99,240,3,240,0,189,15,255,255,3,240,3,240,0,189,15,255,255,3,240,3,240,0,189,15,192,63,3,250,171,240,0,189,15,192,63,3,255,255,240,0,189,15,192,63,3,255,255,240,0,189,15,192,63,3,240,3,240,0,189,15,192,63,3,240,3,240,0,189,15,192,63,3,240,3,240,0,189,15,255,255,3,255,255,240,0,189,15,255,255,3,255,255,240,0,189,15,255,255,3,255,255,240,0,189,15,192,0,3,240,3,240,0,189,10,128,0,1,160,1,80, + // 0x5145 充 + 69,81,35,36,68,38,2,252,0,0,0,2,164,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,21,85,85,87,253,85,85,85,64,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,0,0,7,248,0,1,0,0,0,0,0,15,240,0,31,128,0,0,0,0,15,224,0,63,224,0,0,0,0,47,192,0,15,252,0,0,0,0,63,128,0,3,255,0,0,0,0,191,0,0,0,255,192,0,0,0,255,170,191,255,255,240,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,255,0,15,255,255,255,234,149,80,255,128,14,149,0,0,0,0,0,63,128,0,0,10,160,0,254,0,28,0,0,0,15,240,0,254,0,0,0,0,0,15,224,0,254,0,0,0,0,0,15,224,0,254,0,0,0,0,0,31,208,0,254,0,0,0,0,0,47,192,0,254,0,0,0,0,0,63,192,0,254,0,0,0,0,0,127,128,0,254,0,3,144,0,0,255,64,0,254,0,3,244,0,2,255,0,0,254,0,3,244,0,11,252,0,0,254,0,3,244,0,127,244,0,0,254,0,3,240,7,255,224,0,0,255,0,11,240,191,255,64,0,0,255,255,255,224,191,248,0,0,0,127,255,255,208,63,128,0,0,0,47,255,255,128,20,0,0,0,0,0,85,80,0, + // 0x5148 先 + 72,81,34,37,77,38,2,251,0,0,0,2,248,0,0,0,0,0,3,160,3,252,0,0,0,0,0,7,244,3,252,0,0,0,0,0,11,240,3,252,0,0,0,0,0,15,240,3,252,0,0,0,0,0,31,208,3,252,0,0,0,0,0,47,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,127,255,255,255,255,255,252,0,0,255,85,87,253,85,85,84,0,1,253,0,3,252,0,0,0,0,3,252,0,3,252,0,0,0,0,11,244,0,3,252,0,0,0,0,11,240,0,3,252,0,0,0,0,1,208,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,21,85,85,87,253,85,85,85,80,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,15,208,0,254,0,0,0,0,0,31,208,0,254,0,0,0,0,0,47,192,0,254,0,0,0,0,0,63,192,0,254,0,0,0,0,0,63,128,0,254,0,0,0,0,0,127,128,0,254,0,0,0,0,0,255,0,0,254,0,1,0,0,1,255,0,0,254,0,3,208,0,3,253,0,0,254,0,3,240,0,15,252,0,0,254,0,7,240,0,63,240,0,0,254,0,7,240,2,255,208,0,0,254,0,15,224,47,255,64,0,0,255,255,255,208,191,252,0,0,0,191,255,255,192,63,224,0,0,0,47,255,255,64,30,0,0,0,0,1,85,80,0,0,0,0,0,0,0,0,0,0, + // 0x5149 光 + 73,81,36,37,77,38,1,251,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,30,0,0,254,0,0,189,0,0,191,0,0,254,0,0,255,0,0,63,128,0,254,0,1,254,0,0,47,208,0,254,0,3,252,0,0,15,240,0,254,0,7,248,0,0,11,244,0,254,0,15,240,0,0,3,248,0,254,0,31,224,0,0,3,252,0,254,0,63,192,0,0,1,253,0,254,0,127,64,0,0,0,253,0,254,0,127,0,0,0,0,80,0,254,0,4,0,0,0,0,0,0,254,0,0,0,0,21,85,85,85,255,85,85,85,84,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,3,248,0,63,64,0,0,0,0,7,244,0,63,64,0,0,0,0,7,244,0,63,64,0,0,0,0,11,240,0,63,64,0,0,0,0,11,240,0,63,64,0,0,0,0,15,240,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,47,208,0,63,64,0,0,0,0,63,192,0,63,64,0,64,0,0,191,128,0,63,64,0,248,0,1,255,0,0,63,64,0,253,0,7,254,0,0,63,64,0,253,0,31,252,0,0,63,64,0,252,0,255,240,0,0,63,128,1,252,31,255,192,0,0,63,213,87,252,127,254,0,0,0,63,255,255,248,47,244,0,0,0,31,255,255,240,14,64,0,0,0,7,255,255,128,0,0,0,0,0,0,0,0,0, + // 0x5165 入 + 101,81,35,34,50,38,2,252,0,2,170,170,168,0,0,0,0,0,3,255,255,253,0,0,0,0,0,3,255,255,253,0,0,0,0,0,3,255,255,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,5,255,0,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,31,255,128,0,0,0,0,0,0,47,255,192,0,0,0,0,0,0,63,255,192,0,0,0,0,0,0,127,223,208,0,0,0,0,0,0,191,79,240,0,0,0,0,0,0,255,11,244,0,0,0,0,0,2,254,7,248,0,0,0,0,0,3,253,3,252,0,0,0,0,0,7,252,2,254,0,0,0,0,0,15,244,0,255,64,0,0,0,0,47,240,0,191,192,0,0,0,0,127,192,0,63,224,0,0,0,0,255,128,0,31,244,0,0,0,3,255,0,0,15,253,0,0,0,11,253,0,0,3,255,0,0,0,47,248,0,0,1,255,192,0,0,191,224,0,0,0,127,244,0,3,255,192,0,0,0,47,254,0,31,255,0,0,0,0,11,255,192,255,252,0,0,0,0,1,255,244,255,224,0,0,0,0,0,127,224,47,64,0,0,0,0,0,15,192,8,0,0,0,0,0,0,1,0, + // 0x5168 全 + 104,81,36,35,59,38,1,253,0,0,0,1,255,0,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,15,255,224,0,0,0,0,0,0,47,255,244,0,0,0,0,0,0,191,199,253,0,0,0,0,0,2,255,66,255,64,0,0,0,0,7,254,0,191,208,0,0,0,0,31,248,0,47,244,0,0,0,0,191,224,0,11,254,0,0,0,2,255,128,0,2,255,192,0,0,15,254,0,0,0,191,244,0,0,127,244,0,0,0,31,254,0,2,255,208,0,0,0,3,255,208,31,255,0,0,0,0,0,255,253,127,251,255,255,255,255,255,239,252,47,211,255,255,255,255,255,195,244,14,3,255,255,255,255,255,192,176,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240, + // 0x5171 共 + 113,81,34,36,68,38,2,252,0,0,106,0,0,10,144,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,21,85,191,85,85,95,245,85,64,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,0,0,191,0,0,15,224,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,85,85,85,85,85,85,80,0,0,0,0,0,0,0,0,0,0,0,4,0,0,5,0,0,0,0,0,63,144,0,63,128,0,0,0,0,191,208,0,191,240,0,0,0,3,255,64,0,31,253,0,0,0,15,253,0,0,3,255,128,0,0,127,244,0,0,0,255,240,0,2,255,208,0,0,0,47,252,0,31,255,0,0,0,0,7,255,0,127,248,0,0,0,0,1,255,192,31,208,0,0,0,0,0,127,64,6,0,0,0,0,0,0,24,0, + // 0x5177 具 + 119,81,34,34,50,38,2,252,0,31,255,255,255,255,255,128,0,0,31,255,255,255,255,255,128,0,0,31,250,170,170,170,191,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,234,170,170,170,191,128,0,0,31,255,255,255,255,255,128,0,0,31,255,255,255,255,255,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,234,170,170,170,191,128,0,0,31,255,255,255,255,255,128,0,0,31,255,255,255,255,255,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,255,255,255,255,255,128,0,0,31,255,255,255,255,255,128,0,0,31,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,21,85,85,85,85,85,85,85,64,0,0,11,0,0,9,0,0,0,0,0,127,208,0,63,224,0,0,0,11,255,240,0,255,255,64,0,0,191,255,64,0,31,255,244,0,47,255,244,0,0,1,191,255,128,191,255,64,0,0,0,11,255,240,47,228,0,0,0,0,0,191,128,9,0,0,0,0,0,0,9,0, + // 0x5197 冗 + 151,81,35,34,50,38,2,252,21,85,85,85,85,85,85,85,64,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,128,0,0,0,0,0,47,192,63,128,0,0,0,0,0,47,192,63,128,0,0,0,0,0,47,192,63,128,0,0,0,0,0,47,192,63,128,0,0,0,0,0,47,192,63,128,0,0,0,0,0,47,192,63,128,21,85,85,85,64,47,192,0,0,127,255,255,255,208,0,0,0,0,127,255,255,255,208,0,0,0,0,127,255,255,255,208,0,0,0,0,127,64,0,31,208,0,0,0,0,127,64,0,31,208,0,0,0,0,127,64,0,31,208,0,0,0,0,127,64,0,31,208,0,0,0,0,127,64,0,31,208,0,0,0,0,191,0,0,31,208,0,0,0,0,191,0,0,31,208,0,0,0,0,191,0,0,31,208,0,0,0,0,255,0,0,31,208,0,0,0,0,254,0,0,31,208,1,0,0,2,253,0,0,31,208,3,208,0,3,252,0,0,31,208,3,244,0,15,248,0,0,31,208,3,244,0,63,240,0,0,31,208,3,244,1,255,208,0,0,31,208,3,240,11,255,64,0,0,31,224,11,240,191,253,0,0,0,31,255,255,240,255,244,0,0,0,15,255,255,208,63,128,0,0,0,7,255,255,128,40,0,0,0,0,0,85,84,0, + // 0x51b7 冷 + 183,81,36,36,68,38,1,252,0,0,0,0,0,169,0,0,0,0,0,0,0,3,255,64,0,0,2,0,0,0,7,255,192,0,0,15,192,0,0,15,255,224,0,0,47,244,0,0,63,223,248,0,0,31,254,0,0,191,131,254,0,0,3,255,128,1,255,1,255,64,0,0,191,224,7,253,0,127,208,0,0,47,208,31,244,0,47,248,0,0,11,64,127,224,0,11,254,0,0,1,1,255,128,0,2,255,192,0,0,11,255,85,85,85,191,248,0,0,63,250,255,255,255,95,254,0,0,255,226,255,255,255,67,252,0,0,191,66,255,255,255,64,180,0,0,60,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,85,85,85,85,85,0,0,3,129,255,255,255,255,255,128,0,7,241,255,255,255,255,255,128,0,15,241,255,255,255,255,255,128,0,47,224,0,15,224,0,63,128,0,63,192,0,15,224,0,63,128,0,191,64,0,15,224,0,63,128,1,255,0,0,15,224,0,63,128,3,253,0,0,15,224,0,63,128,11,252,0,0,15,224,0,63,128,15,244,0,0,15,224,0,63,128,63,224,0,0,15,224,127,255,128,127,192,0,0,15,224,63,255,64,31,64,0,0,15,224,47,254,0,2,0,0,0,15,224,5,64,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,11,224,0,0,0, + // 0x51c6 准 + 198,81,36,36,68,38,1,252,0,0,0,0,36,0,5,0,0,0,0,0,0,191,0,15,224,0,0,0,0,0,255,0,31,208,0,3,192,0,1,253,0,47,192,0,15,244,0,2,252,0,63,128,0,15,254,0,3,248,0,127,0,0,2,255,192,11,240,0,191,0,0,0,127,240,15,240,0,254,0,0,0,31,240,47,255,255,255,255,248,0,3,208,127,255,255,255,255,248,0,0,64,255,255,255,255,255,248,0,0,2,255,192,2,248,0,0,0,0,11,255,192,2,248,0,0,0,0,31,255,192,2,248,0,0,0,0,127,239,192,2,248,0,0,0,0,63,143,255,255,255,255,224,0,0,15,15,255,255,255,255,224,0,0,0,15,255,255,255,255,224,0,0,0,15,208,3,248,0,0,0,1,0,15,192,2,248,0,0,0,3,128,15,192,2,248,0,0,0,15,224,15,192,2,248,0,0,0,31,240,15,192,2,248,0,0,0,63,192,15,255,255,255,255,224,0,191,128,15,255,255,255,255,224,0,255,0,15,255,255,255,255,224,3,253,0,15,208,3,248,0,0,7,252,0,15,192,2,248,0,0,15,240,0,15,192,2,248,0,0,63,224,0,15,192,2,248,0,0,127,192,0,15,213,87,253,85,84,31,64,0,15,255,255,255,255,253,6,0,0,15,255,255,255,255,253,0,0,0,15,255,255,255,255,253,0,0,0,15,192,0,0,0,0,0,0,0,15,192,0,0,0,0, + // 0x51fa 出 + 250,81,30,36,32,38,4,252,0,0,0,42,64,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,192,0,63,128,0,127,64,31,255,255,255,255,255,255,64,31,255,255,255,255,255,255,64,31,255,255,255,255,255,255,64,5,85,85,127,213,85,85,0,0,0,0,63,128,0,0,0,0,0,0,63,128,0,0,0,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,0,0,63,128,0,11,240,191,255,255,255,255,255,255,240,191,255,255,255,255,255,255,240,191,255,255,255,255,255,255,240,191,85,85,85,85,85,95,240,191,0,0,0,0,0,11,240,190,0,0,0,0,0,11,224, + // 0x5206 分 + 6,82,36,35,59,38,1,252,0,0,3,224,0,7,192,0,0,0,0,11,248,0,31,224,0,0,0,0,15,240,0,15,244,0,0,0,0,47,224,0,7,252,0,0,0,0,63,192,0,3,254,0,0,0,0,255,128,0,0,255,64,0,0,2,255,0,0,0,191,192,0,0,3,253,0,0,0,63,240,0,0,15,252,0,0,0,15,248,0,0,63,240,0,0,0,7,254,0,0,255,208,0,0,0,3,255,128,2,255,128,0,0,0,0,255,224,15,254,0,0,0,0,0,63,248,63,254,85,85,85,85,85,111,254,191,235,255,255,255,255,255,247,252,47,139,255,255,255,255,255,241,240,10,11,255,255,255,255,255,240,80,0,0,0,47,192,0,15,224,0,0,0,0,63,192,0,15,224,0,0,0,0,63,192,0,15,224,0,0,0,0,127,128,0,15,224,0,0,0,0,127,64,0,15,224,0,0,0,0,255,0,0,15,208,0,0,0,0,255,0,0,31,208,0,0,0,3,253,0,0,31,208,0,0,0,7,252,0,0,31,192,0,0,0,15,244,0,0,47,192,0,0,0,63,240,0,0,47,192,0,0,0,255,192,0,0,63,192,0,0,11,255,64,0,0,63,128,0,0,127,253,0,0,0,191,64,0,11,255,244,0,31,255,255,0,0,7,255,128,0,15,255,254,0,0,2,253,0,0,11,255,248,0,0,0,128,0,0,1,85,64,0,0, + // 0x5217 列 + 23,82,34,37,77,38,1,251,0,0,0,0,0,0,0,1,64,0,0,0,0,0,0,0,11,240,47,255,255,255,255,0,0,11,240,47,255,255,255,255,0,0,11,240,47,255,255,255,255,47,128,11,240,5,86,253,85,85,47,128,11,240,0,3,252,0,0,47,128,11,240,0,3,248,0,0,47,128,11,240,0,7,244,0,0,47,128,11,240,0,11,240,0,0,47,128,11,240,0,15,240,0,64,47,128,11,240,0,31,255,255,252,47,128,11,240,0,63,255,255,252,47,128,11,240,0,63,255,255,248,47,128,11,240,0,191,0,3,244,47,128,11,240,0,254,0,7,240,47,128,11,240,3,252,0,11,240,47,128,11,240,7,252,0,15,224,47,128,11,240,15,255,64,15,208,47,128,11,240,63,255,240,31,192,47,128,11,240,191,159,253,63,192,47,128,11,240,127,3,255,255,64,47,128,11,240,28,0,191,255,0,47,128,11,240,0,0,31,254,0,47,128,11,240,0,0,3,252,0,47,128,11,240,0,0,7,248,0,47,128,11,240,0,0,15,240,0,0,0,11,240,0,0,47,208,0,0,0,11,240,0,0,191,192,0,0,0,11,240,0,2,255,0,0,0,0,11,240,0,11,253,0,0,0,0,11,240,0,47,244,0,0,0,0,11,240,1,255,224,0,0,0,149,111,224,7,255,64,0,0,0,191,255,224,2,253,0,0,0,0,127,255,192,0,160,0,0,0,0,63,249,0,0,0,0,0,0,0,0,0,0, + // 0x521d 初 + 29,82,35,36,68,38,1,252,0,11,224,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,1,85,85,85,85,80,0,11,240,3,255,255,255,255,248,0,11,240,3,255,255,255,255,248,0,11,240,3,255,255,255,255,248,63,255,255,240,0,127,64,3,248,63,255,255,248,0,127,64,3,248,63,255,255,244,0,127,0,3,248,0,0,15,240,0,127,0,3,248,0,0,15,208,0,127,0,3,248,0,0,63,192,0,191,0,3,248,0,0,127,64,0,191,0,3,244,0,0,255,0,0,191,0,3,244,0,2,253,29,0,191,0,3,244,0,7,248,63,0,254,0,3,244,0,15,244,254,0,254,0,7,244,0,63,254,248,0,253,0,7,244,0,255,255,224,1,253,0,7,244,3,255,255,208,2,252,0,7,240,15,255,251,240,2,252,0,7,240,127,255,243,252,3,248,0,7,240,191,203,240,253,7,244,0,11,240,63,11,240,120,11,240,0,11,240,44,11,240,16,15,240,0,11,240,0,11,240,0,47,208,0,15,240,0,11,240,0,63,192,0,15,240,0,11,240,0,191,64,0,15,224,0,11,240,1,255,0,0,15,224,0,11,240,7,253,0,0,31,208,0,11,240,31,248,0,0,63,192,0,11,240,127,240,3,255,255,192,0,11,240,191,192,2,255,255,64,0,11,240,47,0,1,255,254,0,0,11,224,8,0,0,106,80,0, + // 0x5230 到 + 48,82,34,35,59,38,1,252,0,0,0,0,0,0,0,6,160,0,0,0,0,0,0,0,11,240,63,255,255,255,255,0,0,11,240,63,255,255,255,255,0,0,11,240,63,255,255,255,255,31,192,11,240,0,11,244,0,0,31,192,11,240,0,15,240,1,0,31,192,11,240,0,15,208,47,0,31,192,11,240,0,47,192,47,192,31,192,11,240,0,63,128,15,240,31,192,11,240,0,127,0,3,248,31,192,11,240,21,255,175,255,253,31,192,11,240,63,255,255,255,255,31,192,11,240,63,255,255,255,255,95,192,11,240,63,250,165,64,47,223,192,11,240,0,0,42,0,14,31,192,11,240,0,0,63,64,0,31,192,11,240,0,0,63,64,0,31,192,11,240,0,0,63,64,0,31,192,11,240,0,0,63,64,0,31,192,11,240,15,255,255,255,252,31,192,11,240,15,255,255,255,252,31,192,11,240,15,255,255,255,252,31,192,11,240,0,0,127,64,0,31,192,11,240,0,0,63,64,0,31,192,11,240,0,0,63,64,0,5,64,11,240,0,0,63,64,0,0,0,11,240,0,0,63,64,0,0,0,11,240,0,0,63,70,191,64,0,11,240,0,5,191,255,255,64,0,11,240,111,255,255,255,255,64,0,11,240,127,255,255,255,233,0,106,175,240,63,255,250,80,0,0,127,255,224,62,148,0,0,0,0,63,255,192,0,0,0,0,0,0,63,250,0, + // 0x5236 制 + 54,82,34,36,68,38,1,252,0,0,10,128,0,0,0,1,80,0,228,31,192,0,0,0,3,240,1,252,31,192,0,0,0,3,240,2,252,31,192,0,0,0,3,240,3,248,31,192,0,0,253,3,240,3,248,31,192,0,0,253,3,240,7,255,255,255,255,64,253,3,240,11,255,255,255,255,64,253,3,240,15,255,255,255,255,64,253,3,240,47,192,31,192,0,0,253,3,240,63,128,31,192,0,0,253,3,240,127,0,31,192,0,0,253,3,240,11,0,31,208,0,0,253,3,240,63,255,255,255,255,240,253,3,240,63,255,255,255,255,240,253,3,240,63,255,255,255,255,240,253,3,240,0,0,31,192,0,0,253,3,240,0,0,31,192,0,0,253,3,240,0,0,31,192,0,0,253,3,240,11,255,255,255,255,128,253,3,240,11,255,255,255,255,128,253,3,240,11,255,255,255,255,128,253,3,240,11,224,31,192,47,128,253,3,240,11,224,31,192,47,128,253,3,240,11,224,31,192,47,128,253,3,240,11,224,31,192,47,128,0,3,240,11,224,31,192,47,128,0,3,240,11,224,31,192,47,128,0,3,240,11,224,31,192,47,128,0,3,240,11,224,31,192,47,128,0,3,240,11,224,31,203,255,128,0,3,240,11,224,31,199,255,64,0,7,240,11,224,31,195,249,0,47,255,240,0,0,31,192,0,0,15,255,240,0,0,31,192,0,0,15,255,192,0,0,31,192,0,0,6,148,0, + // 0x5237 刷 + 55,82,34,36,68,38,1,252,0,0,0,0,0,0,0,1,80,0,0,0,0,0,0,0,7,240,3,255,255,255,255,192,0,7,240,3,255,255,255,255,192,0,7,240,3,255,255,255,255,195,244,7,240,3,240,0,0,47,195,244,7,240,3,240,0,0,47,195,244,7,240,3,240,0,0,47,195,244,7,240,3,240,0,0,47,195,244,7,240,3,240,0,0,47,195,244,7,240,3,255,255,255,255,195,244,7,240,3,255,255,255,255,195,244,7,240,3,255,255,255,255,195,244,7,240,3,240,0,252,0,3,244,7,240,3,240,0,252,0,3,244,7,240,3,240,0,252,0,3,244,7,240,3,240,0,252,0,3,244,7,240,3,251,255,255,255,195,244,7,240,3,251,255,255,255,195,244,7,240,3,251,255,255,255,195,244,7,240,3,251,192,252,15,195,244,7,240,7,251,192,252,15,195,244,7,240,7,235,192,252,15,195,244,7,240,7,235,192,252,15,195,244,7,240,11,235,192,252,15,195,244,7,240,11,219,192,252,15,194,244,7,240,15,219,192,252,15,192,0,7,240,15,203,192,252,15,192,0,7,240,31,203,192,253,255,192,0,7,240,47,139,192,252,255,128,0,7,240,63,75,192,252,254,0,0,7,240,127,1,64,252,0,0,0,7,240,190,0,0,252,0,0,63,255,240,61,0,0,252,0,0,31,255,224,8,0,0,252,0,0,15,255,192,0,0,0,168,0,0,10,148,0, + // 0x5275 創 + 117,82,34,37,77,38,1,251,0,0,5,64,0,0,0,0,0,0,0,47,244,0,0,0,11,240,0,0,127,254,0,0,0,11,240,0,0,255,255,128,0,0,11,240,0,3,253,63,240,0,0,11,240,0,15,248,15,252,15,208,11,240,0,63,224,3,255,15,208,11,240,0,255,213,86,255,207,208,11,240,7,255,255,255,255,143,208,11,240,47,249,255,255,143,15,208,11,240,127,224,0,0,0,15,208,11,240,47,64,0,0,0,15,208,11,240,8,255,255,255,253,15,208,11,240,0,255,255,255,253,15,208,11,240,0,254,170,170,253,15,208,11,240,0,252,0,0,253,15,208,11,240,0,255,255,255,253,15,208,11,240,0,255,255,255,253,15,208,11,240,0,253,0,0,253,15,208,11,240,0,252,0,0,253,15,208,11,240,0,254,170,170,253,15,208,11,240,0,255,255,255,253,15,208,11,240,0,255,255,255,253,15,208,11,240,0,252,0,0,0,15,208,11,240,1,252,0,0,0,15,208,11,240,2,254,170,170,170,15,208,11,240,3,255,255,255,255,0,0,11,240,3,255,255,255,255,0,0,11,240,7,255,192,0,63,0,0,11,240,15,239,192,0,63,0,0,11,240,31,207,192,0,63,0,0,11,240,63,207,192,0,63,0,0,11,240,127,79,255,255,255,0,105,111,240,62,15,255,255,255,0,127,255,224,12,15,234,170,191,0,63,255,192,0,15,192,0,42,0,63,254,0,0,0,0,0,0,0,0,0,0, + // 0x529b 力 + 155,82,33,37,77,38,2,251,0,0,0,47,128,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,26,170,170,191,234,170,170,170,64,63,255,255,255,255,255,255,255,64,63,255,255,255,255,255,255,255,64,63,255,255,255,255,255,255,255,64,0,0,0,63,128,0,0,127,0,0,0,0,63,128,0,0,127,0,0,0,0,127,64,0,0,191,0,0,0,0,191,64,0,0,191,0,0,0,0,191,0,0,0,191,0,0,0,0,255,0,0,0,191,0,0,0,0,254,0,0,0,255,0,0,0,2,253,0,0,0,255,0,0,0,3,252,0,0,0,254,0,0,0,7,252,0,0,0,254,0,0,0,15,244,0,0,0,254,0,0,0,31,240,0,0,0,253,0,0,0,63,224,0,0,1,253,0,0,0,191,192,0,0,1,253,0,0,1,255,64,0,0,2,252,0,0,3,255,0,0,0,3,252,0,0,15,252,0,0,0,3,252,0,0,63,244,0,0,0,3,248,0,1,255,224,0,0,0,11,244,0,11,255,128,0,0,0,31,240,0,63,253,0,0,7,255,255,240,0,191,244,0,0,3,255,255,192,0,47,192,0,0,2,255,255,64,0,10,0,0,0,0,90,80,0,0,0,0,0,0,0,0,0,0,0, + // 0x52a0 加 + 160,82,34,36,68,38,1,252,0,1,64,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,21,85,85,80,0,15,224,0,0,127,255,255,224,0,15,224,0,0,127,255,255,224,21,95,245,85,80,127,255,255,224,63,255,255,255,240,127,0,15,224,63,255,255,255,240,127,0,15,224,63,255,255,255,240,127,0,15,224,0,15,208,11,240,127,0,15,224,0,15,208,11,224,127,0,15,224,0,15,208,11,224,127,0,15,224,0,15,192,11,224,127,0,15,224,0,31,192,11,224,127,0,15,224,0,31,192,15,224,127,0,15,224,0,31,192,15,224,127,0,15,224,0,47,192,15,224,127,0,15,224,0,47,192,15,224,127,0,15,224,0,63,128,15,224,127,0,15,224,0,63,64,15,208,127,0,15,224,0,63,64,15,208,127,0,15,224,0,127,0,15,208,127,0,15,224,0,191,0,15,208,127,0,15,224,0,255,0,15,208,127,0,15,224,1,253,0,15,208,127,0,15,224,2,252,0,31,192,127,0,15,224,3,252,0,31,192,127,0,15,224,7,244,0,47,192,127,255,255,224,15,240,0,63,192,127,255,255,224,47,224,85,191,128,127,255,255,224,127,192,191,255,64,127,85,95,224,127,128,127,255,0,127,0,15,224,31,0,63,248,0,127,0,15,224,4,0,0,0,0,0,0,0,0, + // 0x52d5 動 + 213,82,35,37,77,38,1,251,0,0,0,0,64,0,84,0,0,0,0,22,191,240,2,252,0,0,43,255,255,255,244,2,252,0,0,47,255,255,255,164,2,252,0,0,31,250,255,0,0,2,252,0,0,0,0,127,0,0,2,252,0,0,0,0,127,0,0,2,252,0,0,127,255,255,255,253,2,252,0,0,127,255,255,255,253,2,252,0,0,42,170,255,85,87,255,255,255,248,0,0,127,0,2,255,255,255,248,5,85,191,255,250,255,255,255,248,31,255,255,255,252,2,249,87,248,31,255,255,255,252,3,248,3,248,31,128,127,0,252,3,244,3,244,31,128,127,0,252,3,244,3,244,31,255,255,255,252,3,244,3,244,31,255,255,255,252,3,240,3,244,31,128,191,1,252,7,240,3,244,31,128,127,0,252,7,240,3,244,31,149,191,85,252,11,240,3,244,31,255,255,255,252,11,224,3,244,31,255,255,255,252,15,208,3,240,0,0,127,0,0,31,192,3,240,0,0,127,0,0,47,192,7,240,10,170,255,170,168,63,128,7,240,31,255,255,255,252,63,64,7,240,31,255,255,255,252,255,0,7,240,0,0,127,0,1,254,0,11,240,0,0,127,0,3,252,0,11,240,0,21,191,107,255,244,0,15,224,127,255,255,255,255,240,0,15,208,63,255,255,234,255,192,16,47,208,63,165,64,0,255,64,127,255,192,0,0,0,0,61,0,63,255,64,0,0,0,0,20,0,63,253,0,0,0,0,0,0,0,0,0,0, + // 0x5316 化 + 22,83,36,35,59,38,1,252,0,0,15,144,47,192,0,0,0,0,0,31,224,47,192,0,0,0,0,0,63,192,47,192,0,0,0,0,0,127,128,47,192,0,0,0,0,0,255,64,47,192,0,0,0,0,1,255,0,47,192,0,0,0,0,3,252,0,47,192,0,0,0,0,11,248,0,47,192,0,11,64,0,31,240,0,47,192,0,63,192,0,63,240,0,47,192,1,255,224,0,255,240,0,47,192,11,255,128,2,255,240,0,47,192,127,253,0,11,255,240,0,47,194,255,240,0,47,255,240,0,47,223,255,64,0,191,251,240,0,47,255,248,0,0,255,203,240,0,47,255,128,0,0,127,75,240,0,47,253,0,0,0,61,11,240,0,47,208,0,0,0,20,11,240,0,47,192,0,0,0,0,11,240,0,47,192,0,0,0,0,11,240,0,47,192,0,0,0,0,11,240,0,47,192,0,0,0,0,11,240,0,47,192,0,0,0,0,11,240,0,47,192,0,0,0,0,11,240,0,47,192,0,0,80,0,11,240,0,47,192,0,0,189,0,11,240,0,47,192,0,0,254,0,11,240,0,47,192,0,0,254,0,11,240,0,47,192,0,0,253,0,11,240,0,47,192,0,1,252,0,11,240,0,47,208,0,3,252,0,11,240,0,31,255,255,255,248,0,11,240,0,15,255,255,255,240,0,11,240,0,2,255,255,255,208,0,11,224,0,0,5,85,84,0, + // 0x534a 半 + 74,83,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,24,0,3,248,0,3,144,0,1,253,0,3,248,0,11,248,0,0,255,0,3,248,0,15,240,0,0,127,128,3,248,0,47,224,0,0,63,192,3,248,0,63,192,0,0,31,224,3,248,0,127,128,0,0,15,240,3,248,0,255,0,0,0,7,248,3,248,2,253,0,0,0,3,248,3,248,3,252,0,0,0,2,128,3,248,0,112,0,0,0,0,0,3,248,0,0,0,0,5,85,85,87,253,85,85,85,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,106,170,170,171,254,170,170,170,144,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0, + // 0x5354 協 + 84,83,35,36,68,38,1,252,0,63,64,0,0,31,128,0,0,0,63,64,0,0,47,128,0,0,0,63,64,0,0,47,128,0,0,0,63,64,0,0,63,64,0,0,0,63,64,15,255,255,255,255,208,0,63,64,15,255,255,255,255,208,0,63,64,15,255,255,255,255,208,0,63,64,0,0,253,0,15,208,0,63,64,0,2,252,0,15,192,0,63,64,0,3,248,0,15,192,127,255,255,128,15,240,0,31,192,127,255,255,128,127,192,0,47,192,127,255,255,130,255,64,0,63,128,0,63,128,111,252,0,191,255,64,0,63,64,63,224,0,63,254,0,0,63,64,14,0,0,63,244,0,0,63,64,10,128,0,6,144,0,0,63,64,15,192,0,11,224,0,0,63,64,15,192,0,11,224,0,0,63,64,15,192,0,11,224,0,0,63,70,175,234,162,175,250,168,0,63,71,255,255,243,255,255,252,0,63,71,255,255,243,255,255,252,0,63,64,15,131,240,15,192,252,0,63,64,31,131,240,15,192,252,0,63,64,47,67,240,15,192,252,0,63,64,47,3,240,31,128,248,0,63,64,63,3,240,63,64,248,0,63,64,126,3,240,63,1,248,0,63,64,189,3,240,126,1,248,0,63,64,252,3,224,253,1,244,0,63,66,248,7,226,252,2,244,0,63,75,240,11,215,244,3,244,0,63,95,209,255,223,224,255,240,0,63,75,128,255,199,128,191,224,0,42,66,0,249,1,0,122,64, + // 0x5361 卡 + 97,83,34,36,68,38,2,252,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,245,85,85,80,0,0,0,0,11,255,255,255,240,0,0,0,0,11,255,255,255,240,0,0,0,0,11,255,255,255,240,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,85,95,249,85,85,85,80,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,246,64,0,0,0,0,0,0,11,255,249,0,0,0,0,0,0,11,255,255,224,0,0,0,0,0,11,251,255,255,64,0,0,0,0,11,240,111,255,248,0,0,0,0,11,240,1,255,252,0,0,0,0,11,240,0,11,248,0,0,0,0,11,240,0,0,176,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0, + // 0x5370 印 + 112,83,31,36,32,38,4,252,0,0,6,0,0,0,0,0,0,0,127,128,0,0,0,0,0,7,255,224,0,0,0,0,0,191,255,145,255,255,255,252,255,255,248,1,255,255,255,252,255,255,64,1,255,255,255,252,255,208,0,1,254,85,87,252,254,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,254,85,85,65,253,0,2,252,255,255,255,209,253,0,2,252,255,255,255,209,253,0,2,252,255,255,255,209,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,253,0,0,1,253,0,2,252,254,85,85,65,253,0,2,252,255,255,255,225,253,10,171,252,255,255,255,225,253,7,255,248,255,255,255,225,253,3,255,244,253,0,0,1,253,2,255,128,253,0,0,1,253,0,0,0,253,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,168,0,0,0, + // 0x5378 卸 + 120,83,34,36,68,38,1,252,0,30,64,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,64,0,0,21,85,85,80,0,191,0,0,0,127,255,255,240,0,255,255,255,248,127,255,255,240,1,255,255,255,248,127,255,255,240,3,255,255,255,248,127,0,7,240,11,240,63,64,0,127,0,7,240,31,224,63,64,0,127,0,7,240,63,192,63,64,0,127,0,7,240,15,64,63,64,0,127,0,7,240,1,0,63,64,0,127,0,7,240,63,255,255,255,253,127,0,7,240,63,255,255,255,253,127,0,7,240,63,255,255,255,253,127,0,7,240,0,0,63,64,0,127,0,7,240,0,0,63,64,0,127,0,7,240,0,0,63,64,0,127,0,7,240,3,240,63,64,0,127,0,7,240,3,240,63,64,0,127,0,7,240,3,240,63,255,240,127,0,7,240,3,240,63,255,240,127,0,7,240,3,240,63,255,240,127,0,7,240,3,240,63,64,0,127,0,7,240,3,240,63,64,0,127,0,7,240,3,240,63,64,0,127,0,7,240,3,240,63,64,0,127,6,175,240,3,240,63,64,4,127,7,255,240,3,240,63,171,253,127,3,255,208,3,246,255,255,253,127,2,254,64,111,255,255,255,253,127,0,0,0,191,255,255,249,64,127,0,0,0,127,255,164,0,0,127,0,0,0,58,64,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0,0, + // 0x537b 卻 + 123,83,34,36,68,38,1,252,0,0,21,0,0,0,0,0,0,0,0,127,208,0,0,0,0,0,0,0,255,248,0,127,255,255,240,0,3,255,255,0,127,255,255,240,0,11,248,255,192,127,255,255,240,0,47,224,63,240,127,85,91,240,0,255,192,15,252,127,0,7,240,7,255,0,3,254,127,0,7,240,47,248,0,0,252,127,0,7,240,31,224,0,0,48,127,0,7,240,7,64,63,192,0,127,0,7,240,0,0,255,240,0,127,0,7,240,0,1,255,252,0,127,0,7,240,0,3,254,255,0,127,0,7,240,0,15,240,127,192,127,0,7,240,0,63,208,47,240,127,0,7,240,0,255,128,11,248,127,0,7,240,3,254,0,2,253,127,0,7,240,15,248,0,0,255,127,0,7,240,127,224,0,0,60,127,0,7,240,127,255,255,255,244,127,0,7,240,46,255,255,255,208,127,0,7,240,4,255,255,255,208,127,0,7,240,0,253,0,15,208,127,0,7,240,0,253,0,15,208,127,0,7,240,0,253,0,15,208,127,6,175,240,0,253,0,15,208,127,7,255,240,0,253,0,15,208,127,3,255,208,0,253,0,15,208,127,3,254,64,0,253,0,15,208,127,0,0,0,0,255,255,255,208,127,0,0,0,0,255,255,255,208,127,0,0,0,0,255,255,255,208,127,0,0,0,0,253,0,15,208,127,0,0,0,0,253,0,11,208,127,0,0,0,0,20,0,0,0,63,0,0,0, + // 0x539f 原 + 159,83,35,34,50,38,1,252,0,255,255,255,255,255,255,255,252,0,255,255,255,255,255,255,255,252,0,255,255,255,255,255,255,255,252,0,253,0,0,11,252,0,0,0,0,253,0,0,11,248,0,0,0,0,253,0,0,11,244,0,0,0,0,253,0,0,15,240,0,0,0,0,253,11,255,255,255,255,255,0,0,253,11,255,255,255,255,255,0,0,253,11,250,170,170,170,255,0,0,253,11,240,0,0,0,255,0,0,253,11,240,0,0,0,255,0,0,253,11,250,170,170,170,255,0,0,253,11,255,255,255,255,255,0,0,253,11,255,255,255,255,255,0,1,252,11,240,0,0,0,255,0,1,252,11,240,0,0,0,255,0,1,252,11,240,0,0,0,255,0,1,252,11,255,255,255,255,255,0,2,252,11,255,255,255,255,255,0,2,252,6,170,171,254,170,170,0,2,248,0,0,2,248,0,0,0,3,248,0,16,2,248,1,64,0,3,244,0,191,2,248,11,208,0,7,244,1,254,2,248,15,244,0,7,240,3,252,2,248,3,253,0,11,240,15,244,2,248,0,255,64,15,224,63,224,2,248,0,63,208,15,208,255,192,2,248,0,31,240,47,199,255,0,2,248,0,7,252,63,203,252,0,3,248,0,2,252,127,65,240,11,255,248,0,0,208,47,0,0,3,255,240,0,0,0,5,0,0,3,255,128,0,0,0, + // 0x53cd 反 + 205,83,34,34,50,38,2,252,0,85,85,85,85,85,85,85,0,0,191,255,255,255,255,255,255,64,0,191,255,255,255,255,255,255,64,0,191,255,255,255,255,255,255,64,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,255,255,255,255,255,224,0,0,191,255,255,255,255,255,244,0,0,191,255,255,255,255,255,240,0,0,191,95,245,85,85,111,224,0,0,191,11,240,0,0,63,208,0,0,190,7,248,0,0,127,192,0,0,254,3,252,0,0,255,64,0,0,254,1,254,0,0,255,0,0,0,254,0,255,0,2,254,0,0,0,253,0,127,192,7,252,0,0,1,252,0,63,224,31,244,0,0,1,252,0,15,244,63,224,0,0,2,252,0,11,253,255,192,0,0,3,252,0,3,255,255,64,0,0,3,248,0,0,255,253,0,0,0,7,244,0,0,127,252,0,0,0,11,240,0,2,255,255,0,0,0,15,224,0,31,255,255,224,0,0,31,208,1,255,253,191,254,0,0,63,192,111,255,224,31,255,244,0,191,135,255,255,0,2,255,255,208,255,3,255,244,0,0,127,255,192,46,1,254,0,0,0,2,255,64,4,0,144,0,0,0,0,26,0, + // 0x53d6 取 + 214,83,36,34,50,38,1,252,21,85,85,85,84,0,0,0,0,63,255,255,255,254,0,0,0,0,63,255,255,255,254,0,0,0,0,63,255,255,255,255,170,170,170,144,1,252,0,31,199,255,255,255,244,1,252,0,31,199,255,255,255,240,1,252,0,31,199,255,255,255,240,1,252,0,31,194,180,0,11,240,1,255,255,255,195,252,0,15,240,1,255,255,255,193,252,0,15,224,1,255,255,255,192,253,0,31,208,1,252,0,47,192,254,0,31,192,1,252,0,31,192,191,0,47,192,1,252,0,31,192,127,0,63,128,1,252,0,31,192,63,64,127,64,1,252,0,31,192,63,192,191,0,1,255,255,255,192,47,192,254,0,1,255,255,255,192,15,225,253,0,1,255,255,255,192,15,243,252,0,1,253,0,47,192,7,255,248,0,1,252,0,31,192,3,255,240,0,1,252,0,31,192,2,255,224,0,1,252,0,31,192,0,255,192,0,1,252,0,111,192,0,255,192,0,1,254,191,255,192,1,255,224,0,175,255,255,255,192,7,255,244,0,191,255,255,255,192,15,255,252,0,191,255,229,31,192,127,243,255,0,126,144,0,31,193,255,192,255,208,0,0,0,31,203,255,0,63,248,0,0,0,31,255,252,0,31,254,0,0,0,31,207,224,0,3,252,0,0,0,31,199,64,0,0,180,0,0,0,31,192,0,0,0,0, + // 0x53f0 台 + 240,83,34,36,68,38,2,252,0,0,0,228,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,244,0,0,64,0,0,0,0,31,240,0,11,208,0,0,0,0,63,208,0,31,244,0,0,0,0,191,192,0,11,254,0,0,0,0,255,0,0,2,255,128,0,0,2,254,0,0,0,191,224,0,0,7,252,0,0,0,63,244,0,106,175,254,255,255,255,255,253,0,127,255,255,255,255,255,255,255,64,127,255,255,255,255,255,255,255,192,127,255,254,170,149,84,0,63,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,11,128,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,149,85,85,85,111,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,64,0,0,0,47,192,0,0,63,149,85,85,85,111,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,64,0,0,0,47,192,0,0,42,64,0,0,0,26,128,0, + // 0x5408 合 + 8,84,36,36,68,38,1,252,0,0,0,1,254,0,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,11,255,208,0,0,0,0,0,0,31,255,244,0,0,0,0,0,0,127,219,252,0,0,0,0,0,1,255,131,255,0,0,0,0,0,3,255,0,255,208,0,0,0,0,15,252,0,63,244,0,0,0,0,127,240,0,15,254,0,0,0,1,255,192,0,3,255,192,0,0,11,255,0,0,0,255,244,0,0,63,252,0,0,0,47,254,0,2,255,240,0,0,0,11,255,224,31,254,191,255,255,255,254,191,253,127,244,127,255,255,255,253,31,253,63,192,127,255,255,255,253,2,248,13,0,0,0,0,0,0,0,32,0,0,0,0,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,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,240,0,0,11,240,0,0,0,15,240,0,0,11,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,240,0,0,0,15,240,0,0,7,224,0,0,0,11,224,0, + // 0x5426 否 + 38,84,35,34,50,38,1,252,31,255,255,255,255,255,255,255,244,31,255,255,255,255,255,255,255,244,31,255,255,255,255,255,255,255,244,5,85,85,85,127,245,85,85,80,0,0,0,0,255,208,0,0,0,0,0,0,3,255,64,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,191,254,7,208,0,0,0,0,3,255,254,31,253,0,0,0,0,47,255,254,31,255,192,0,0,2,255,248,254,1,255,248,0,0,47,255,192,254,0,31,255,64,7,255,254,0,254,0,2,255,240,127,255,224,0,254,0,0,127,252,63,254,0,0,254,0,0,11,248,15,224,0,0,254,0,0,1,224,6,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,255,248,0,0,31,255,255,255,255,255,248,0,0,31,255,255,255,255,255,248,0,0,31,208,0,0,0,7,248,0,0,31,208,0,0,0,3,248,0,0,31,208,0,0,0,3,248,0,0,31,208,0,0,0,3,248,0,0,31,208,0,0,0,3,248,0,0,31,208,0,0,0,3,248,0,0,31,208,0,0,0,3,248,0,0,31,255,255,255,255,255,248,0,0,31,255,255,255,255,255,248,0,0,31,255,255,255,255,255,248,0,0,31,208,0,0,0,7,248,0,0,31,192,0,0,0,3,248,0, + // 0x544a 告 + 74,84,34,37,77,38,2,251,0,1,0,0,190,0,0,0,0,0,7,244,0,255,0,0,0,0,0,11,240,0,255,0,0,0,0,0,15,240,0,255,0,0,0,0,0,31,208,0,255,0,0,0,0,0,63,208,0,255,0,0,0,0,0,127,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,2,255,255,255,255,255,255,252,0,7,252,0,0,255,0,0,0,0,31,240,0,0,255,0,0,0,0,63,208,0,0,255,0,0,0,0,11,128,0,0,255,0,0,0,0,1,0,0,0,255,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,21,85,85,85,85,85,85,85,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,149,85,85,85,95,224,0,0,63,128,0,0,0,15,224,0,0,63,128,0,0,0,15,224,0,0,63,128,0,0,0,15,224,0,0,63,128,0,0,0,15,224,0,0,63,128,0,0,0,15,224,0,0,63,149,85,85,85,95,224,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,128,0,0,0,15,224,0,0,63,128,0,0,0,15,224,0,0,0,0,0,0,0,0,0,0, + // 0x547d 命 + 125,84,36,37,77,38,1,251,0,0,0,2,255,0,0,0,0,0,0,0,7,255,192,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,63,255,248,0,0,0,0,0,1,255,199,255,0,0,0,0,0,7,255,1,255,192,0,0,0,0,31,252,0,127,244,0,0,0,0,191,240,0,15,254,0,0,0,7,255,128,0,3,255,208,0,0,47,254,0,0,0,191,248,0,1,255,255,255,255,255,255,255,128,31,255,139,255,255,255,226,255,248,255,253,11,255,255,255,224,127,255,127,224,0,0,0,0,0,7,252,46,0,0,0,0,0,0,0,116,0,0,0,0,0,0,0,0,0,0,255,255,255,3,255,255,255,64,0,255,255,255,3,255,255,255,64,0,255,255,255,3,255,255,255,64,0,253,0,63,3,244,0,63,64,0,253,0,63,3,244,0,63,64,0,253,0,63,3,244,0,63,64,0,253,0,63,3,244,0,63,64,0,253,0,63,3,244,0,63,64,0,253,0,63,3,244,0,63,64,0,253,0,63,3,244,0,63,64,0,253,0,63,3,244,0,63,64,0,255,255,255,3,244,0,63,64,0,255,255,255,3,244,0,127,64,0,255,255,255,3,244,127,255,0,0,253,0,0,3,244,63,255,0,0,253,0,0,3,244,63,248,0,0,253,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x548c 和 + 140,84,34,36,68,38,1,252,0,0,0,5,0,0,0,0,0,0,0,1,191,0,0,0,0,0,0,5,191,255,192,0,0,0,0,26,255,255,255,129,85,85,85,64,31,255,255,144,3,255,255,255,208,15,254,254,0,3,255,255,255,208,4,0,254,0,3,255,255,255,208,0,0,254,0,3,244,0,15,208,0,0,254,0,3,244,0,15,208,0,0,254,0,3,244,0,15,208,0,0,254,0,3,244,0,15,208,21,85,254,85,67,244,0,15,208,63,255,255,255,227,244,0,15,208,63,255,255,255,227,244,0,15,208,63,255,255,255,227,244,0,15,208,0,3,254,0,3,244,0,15,208,0,7,255,0,3,244,0,15,208,0,15,255,192,3,244,0,15,208,0,15,255,240,3,244,0,15,208,0,47,255,252,3,244,0,15,208,0,63,254,254,3,244,0,15,208,0,189,254,127,67,244,0,15,208,1,252,254,47,211,244,0,15,208,3,248,254,15,211,244,0,15,208,11,240,254,7,131,244,0,15,208,31,224,254,2,3,244,0,15,208,63,192,254,0,3,244,0,15,208,191,64,254,0,3,249,85,111,208,126,0,254,0,3,255,255,255,208,44,0,254,0,3,255,255,255,208,0,0,254,0,3,255,255,255,208,0,0,254,0,3,244,0,15,208,0,0,254,0,3,244,0,15,208,0,0,254,0,3,244,0,15,208,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0, + // 0x555f 啟 + 95,85,36,36,68,38,1,252,0,0,108,0,0,0,164,0,0,0,0,254,0,0,0,253,0,0,0,0,191,0,0,0,252,0,0,0,0,63,64,0,1,252,0,0,0,0,63,128,0,2,252,0,0,3,255,255,255,240,2,248,0,0,3,255,255,255,240,3,244,0,0,3,255,255,255,240,3,245,85,84,3,244,0,3,240,11,255,255,253,3,244,0,3,240,15,255,255,253,3,244,0,3,240,15,255,255,253,3,244,0,3,240,47,192,15,208,3,244,0,3,240,63,192,15,208,3,244,0,3,240,127,208,15,192,3,255,255,255,240,255,224,31,192,3,255,255,255,241,255,240,47,192,3,255,255,255,247,255,240,47,128,3,244,0,0,2,247,240,63,64,3,244,0,0,0,178,248,63,0,3,240,0,0,0,0,252,127,0,3,240,0,0,0,0,252,190,0,3,247,255,255,248,0,190,253,0,7,247,255,255,248,0,127,252,0,7,247,255,255,248,0,63,248,0,11,231,224,1,248,0,47,244,0,11,231,224,1,248,0,31,240,0,15,215,224,1,248,0,31,240,0,15,199,224,1,248,0,63,244,0,31,199,224,1,248,0,255,252,0,47,199,224,1,248,2,255,255,0,63,135,255,255,248,11,252,127,128,127,7,255,255,248,47,240,47,224,191,7,255,255,249,255,208,15,252,45,7,224,1,249,255,64,3,253,4,7,224,1,164,188,0,0,244,0,1,80,0,0,32,0,0,16, + // 0x55ae 單 + 174,85,34,35,59,38,2,252,1,85,85,84,1,85,85,84,0,3,255,255,254,11,255,255,253,0,3,255,255,254,11,255,255,253,0,3,240,0,190,11,224,0,253,0,3,240,0,190,11,224,0,253,0,3,240,0,190,11,224,0,253,0,3,255,255,254,11,255,255,253,0,3,255,255,254,11,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,244,0,0,255,255,255,255,255,255,244,0,0,255,255,255,255,255,255,244,0,0,253,0,3,248,0,3,244,0,0,253,0,3,248,0,3,244,0,0,255,170,171,254,170,171,244,0,0,255,255,255,255,255,255,244,0,0,255,255,255,255,255,255,244,0,0,253,0,3,248,0,3,244,0,0,253,0,3,248,0,3,244,0,0,253,0,3,248,0,3,244,0,0,255,255,255,255,255,255,244,0,0,255,255,255,255,255,255,244,0,0,255,255,255,255,255,255,244,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0, + // 0x5634 嘴 + 52,86,34,37,77,38,3,251,0,0,0,2,224,11,208,0,0,0,0,0,3,240,11,208,0,0,0,0,0,3,240,11,208,24,0,255,255,131,195,240,11,209,255,0,255,255,131,195,250,155,239,253,0,255,255,131,195,255,235,255,208,0,248,31,131,195,255,235,253,0,0,244,15,131,195,240,11,224,0,0,244,15,131,195,240,11,208,1,0,244,15,131,195,240,11,208,3,208,244,15,131,195,251,235,208,7,208,244,15,155,255,255,247,250,175,192,244,15,191,255,255,147,255,255,128,244,15,191,255,252,1,255,254,0,244,15,153,3,253,85,64,0,0,244,15,128,11,255,255,224,0,0,244,15,128,47,255,255,240,0,0,244,15,128,191,64,31,192,0,0,244,15,130,255,85,127,149,84,0,244,15,159,255,255,255,255,253,0,244,15,255,255,255,255,255,253,0,255,255,159,254,0,252,0,253,0,255,255,128,190,0,252,0,253,0,255,255,128,191,255,255,255,253,0,248,0,0,191,255,255,255,253,0,244,0,0,190,0,252,0,253,0,244,0,0,253,0,252,0,253,0,244,0,0,253,0,252,0,253,0,0,0,0,255,255,255,255,253,0,0,0,2,255,255,255,255,253,0,0,0,3,249,85,85,85,253,0,0,0,11,240,0,0,0,253,0,0,0,47,224,0,0,0,253,0,0,0,191,192,0,1,170,253,0,0,0,255,0,0,1,255,252,0,0,0,44,0,0,0,255,224,0,0,0,0,0,0,0,0,0,0, + // 0x5668 器 + 104,86,36,35,59,38,1,251,1,255,255,255,0,255,255,255,64,1,255,255,255,0,255,255,255,64,1,255,255,255,0,255,255,255,64,1,252,0,127,0,252,0,63,64,1,252,0,127,0,252,0,63,64,1,252,0,127,0,252,0,63,64,1,252,0,127,0,252,0,63,64,1,252,0,127,0,252,0,63,64,1,255,255,255,0,255,255,255,64,1,255,255,255,64,255,255,255,64,1,255,255,255,248,255,255,255,64,0,0,0,7,252,0,0,0,0,0,0,0,15,240,0,0,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,31,252,0,63,224,0,0,0,0,191,240,0,15,252,0,0,0,3,255,192,0,3,255,64,0,0,47,254,0,0,0,255,240,0,6,255,244,0,0,0,47,255,64,127,255,255,255,65,255,255,255,249,191,255,255,255,65,255,255,255,254,63,255,255,255,65,255,255,255,252,30,253,0,63,65,248,0,127,112,0,253,0,63,65,248,0,127,0,0,253,0,63,65,248,0,127,0,0,253,0,63,65,248,0,127,0,0,253,0,63,65,248,0,127,0,0,253,0,63,65,248,0,127,0,0,255,255,255,65,255,255,255,0,0,255,255,255,65,255,255,255,0,0,255,255,255,65,255,255,255,0,0,253,0,63,65,248,0,127,0,0,0,0,0,0,0,0,0,0, + // 0x5674 噴 + 116,86,34,37,77,38,3,251,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,253,0,0,0,0,0,1,255,255,255,255,255,0,255,255,225,255,255,255,255,255,0,255,255,224,85,85,254,85,85,0,255,255,224,6,144,253,10,128,0,252,11,224,11,208,253,15,192,0,252,11,224,11,208,0,15,192,0,252,11,239,255,255,255,255,255,208,252,11,239,255,255,255,255,255,208,252,11,229,95,229,85,111,213,64,252,11,224,11,208,0,15,192,0,252,11,224,5,64,0,5,64,0,252,11,224,191,255,255,255,252,0,252,11,224,191,255,255,255,252,0,252,11,224,190,0,0,1,252,0,252,11,224,190,0,0,1,252,0,252,11,224,190,0,0,1,252,0,252,11,224,191,255,255,255,252,0,252,11,224,191,255,255,255,252,0,252,11,224,190,0,0,1,252,0,255,255,224,190,0,0,1,252,0,255,255,224,191,255,255,255,252,0,255,255,224,191,255,255,255,252,0,252,0,0,190,0,0,1,252,0,252,0,0,190,0,0,1,252,0,252,0,0,190,0,0,1,252,0,84,0,0,191,255,255,255,252,0,0,0,0,191,255,255,255,252,0,0,0,0,2,228,0,125,0,0,0,0,0,47,252,1,255,208,0,0,0,6,255,224,0,47,253,0,0,0,191,255,0,0,3,255,128,0,0,127,224,0,0,0,127,192,0,0,29,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0, + // 0x56de 回 + 222,86,32,35,24,38,3,252,170,170,170,170,170,170,170,170,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,191,255,255,253,0,255,255,0,191,255,255,253,0,255,255,0,191,255,255,253,0,255,255,0,190,0,0,253,0,255,255,0,190,0,0,253,0,255,255,0,190,0,0,253,0,255,255,0,190,0,0,253,0,255,255,0,190,0,0,253,0,255,255,0,190,0,0,253,0,255,255,0,190,0,0,253,0,255,255,0,191,0,0,253,0,255,255,0,191,255,255,253,0,255,255,0,191,255,255,253,0,255,255,0,191,255,255,253,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255,255,85,85,85,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,255,255,0,0,0,0,0,0,255, + // 0x56e0 因 + 224,86,32,34,16,38,3,252,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,85,85,85,255,254,0,0,5,64,0,0,191,254,0,0,15,208,0,0,191,254,0,0,15,208,0,0,191,254,0,0,15,208,0,0,191,254,0,0,15,208,0,0,191,254,0,0,15,208,0,0,191,254,47,255,255,255,255,248,191,254,47,255,255,255,255,248,191,254,47,255,255,255,255,248,191,254,0,0,47,244,0,0,191,254,0,0,63,244,0,0,191,254,0,0,63,252,0,0,191,254,0,0,127,252,0,0,191,254,0,0,255,190,0,0,191,254,0,1,253,63,64,0,191,254,0,3,252,63,192,0,191,254,0,11,248,31,224,0,191,254,0,47,240,11,252,0,191,254,0,191,208,3,255,64,191,254,7,255,64,0,255,224,191,254,63,252,0,0,63,248,191,254,15,224,0,0,11,224,191,254,7,0,0,0,1,192,191,254,0,0,0,0,0,0,191,255,85,85,85,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,0,0,0,0,0,0,191,190,0,0,0,0,0,0,190, + // 0x56fa 固 + 250,86,32,35,24,38,3,251,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,85,85,85,85,85,85,255,191,0,0,0,0,0,0,255,191,0,0,11,224,0,0,255,191,0,0,11,224,0,0,255,191,0,0,11,224,0,0,255,191,0,0,11,224,0,0,255,191,15,255,255,255,255,244,255,191,15,255,255,255,255,244,255,191,15,255,255,255,255,240,255,191,0,0,11,224,0,0,255,191,0,0,11,224,0,0,255,191,0,0,11,224,0,0,255,191,0,170,175,250,170,0,255,191,0,255,255,255,255,0,255,191,0,255,255,255,255,0,255,191,0,252,0,0,63,0,255,191,0,252,0,0,63,0,255,191,0,252,0,0,63,0,255,191,0,252,0,0,63,0,255,191,0,252,0,0,63,0,255,191,0,255,255,255,255,0,255,191,0,255,255,255,255,0,255,191,0,170,170,170,170,0,255,191,0,0,0,0,0,0,255,191,0,0,0,0,0,0,255,191,0,0,0,0,0,0,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,191,85,85,85,85,85,85,255,191,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0, + // 0x5716 圖 + 22,87,32,34,16,38,3,252,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,253,0,0,0,0,0,0,127,253,0,191,255,255,253,0,127,253,0,191,255,255,253,0,127,253,0,189,0,0,189,0,127,253,0,189,0,0,189,0,127,253,0,191,255,255,253,0,127,253,0,191,255,255,253,0,127,253,0,0,11,208,0,0,127,253,0,0,11,208,0,0,127,253,63,255,255,255,255,252,127,253,63,255,255,255,255,252,127,253,0,0,0,0,0,0,127,253,3,255,255,255,255,128,127,253,3,255,255,255,255,128,127,253,3,240,0,0,15,128,127,253,3,240,0,0,15,128,127,253,3,240,255,255,15,128,127,253,3,240,250,191,15,128,127,253,3,240,240,31,15,128,127,253,3,240,250,191,15,128,127,253,3,240,255,255,15,128,127,253,3,240,0,0,15,128,127,253,3,240,0,0,15,128,127,253,3,255,255,255,255,128,127,253,3,255,255,255,255,128,127,253,0,0,0,0,0,0,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,253,0,0,0,0,0,0,127,169,0,0,0,0,0,0,106, + // 0x5728 在 + 40,87,35,36,68,38,1,252,0,0,0,25,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,5,85,95,245,85,85,85,85,80,0,0,31,224,0,0,0,0,0,0,0,63,192,0,31,192,0,0,0,0,191,64,0,47,192,0,0,0,1,255,0,0,47,192,0,0,0,3,253,0,0,47,192,0,0,0,11,248,0,0,47,192,0,0,0,47,240,0,0,47,192,0,0,0,191,224,0,0,47,192,0,0,1,255,224,47,255,255,255,255,192,11,255,224,47,255,255,255,255,192,63,255,224,47,255,255,255,255,192,127,239,224,5,85,111,213,85,64,63,79,224,0,0,47,192,0,0,29,15,224,0,0,47,192,0,0,4,15,224,0,0,47,192,0,0,0,15,224,0,0,47,192,0,0,0,15,224,0,0,47,192,0,0,0,15,224,0,0,47,192,0,0,0,15,224,0,0,47,192,0,0,0,15,224,0,0,47,192,0,0,0,15,224,0,0,47,192,0,0,0,15,224,85,85,111,213,85,80,0,15,224,255,255,255,255,255,248,0,15,224,255,255,255,255,255,248,0,15,224,255,255,255,255,255,248,0,15,224,0,0,0,0,0,0, + // 0x578b 型 + 139,87,34,35,59,38,2,253,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,0,127,0,15,255,255,255,252,5,64,127,0,15,255,255,255,252,31,192,127,0,15,255,255,255,252,31,192,127,0,0,63,64,190,0,31,192,127,0,0,63,64,190,0,31,192,127,0,0,63,64,190,0,31,192,127,0,0,63,64,190,0,31,192,127,0,0,63,64,191,0,31,192,127,0,127,255,255,255,254,31,192,127,0,127,255,255,255,254,31,192,127,0,127,255,255,255,254,31,192,127,0,0,127,0,190,0,31,192,127,0,0,191,0,190,0,31,192,127,0,0,253,0,190,0,5,64,127,0,3,252,0,190,0,0,0,127,0,11,248,0,190,0,0,0,127,0,63,240,0,190,0,0,255,255,0,191,192,0,190,0,0,255,254,0,47,0,0,107,252,0,191,248,0,4,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,85,85,85,85,85,85,80, + // 0x57f7 執 + 247,87,36,37,77,38,1,251,0,1,252,0,0,15,192,0,0,0,1,252,0,0,15,192,0,0,0,1,252,0,0,15,192,0,0,0,1,252,0,0,15,192,0,0,15,255,255,255,0,15,192,0,0,15,255,255,255,0,15,192,0,0,15,255,255,255,0,15,192,0,0,0,1,252,0,21,95,213,85,0,0,1,252,0,63,255,255,255,0,0,1,252,0,63,255,255,255,0,127,255,255,255,255,255,255,255,0,127,255,255,255,224,15,192,63,0,127,255,255,255,224,15,192,63,0,2,240,0,189,0,31,192,63,0,2,244,0,253,0,31,192,63,0,1,248,0,252,0,31,192,63,0,0,252,1,248,12,31,192,63,0,0,188,2,240,47,159,192,63,0,0,189,3,240,127,255,128,63,0,63,255,255,255,223,255,128,63,0,63,255,255,255,194,255,192,63,0,63,255,255,255,192,127,240,63,0,0,1,252,0,0,127,252,63,0,0,1,252,0,0,191,255,127,0,0,1,252,0,0,254,191,191,0,31,255,255,255,65,252,31,63,0,31,255,255,255,67,252,4,63,8,31,255,255,255,71,244,0,63,78,0,1,252,0,15,240,0,63,79,0,1,252,0,47,208,0,47,79,0,1,252,0,127,192,0,31,143,0,1,252,1,255,0,0,31,223,0,1,252,7,253,0,0,15,254,0,1,252,31,248,0,0,11,253,0,1,252,11,224,0,0,3,252,0,1,248,1,128,0,0,0,244,0,0,0,0,0,0,0,0,0, + // 0x584a 塊 + 74,88,36,36,68,38,1,252,0,26,64,0,0,46,144,0,0,0,47,128,0,0,63,192,0,0,0,47,128,0,0,127,128,0,0,0,47,128,0,0,191,0,0,0,0,47,128,47,255,255,255,255,240,0,47,128,47,255,255,255,255,240,0,47,128,47,255,255,255,255,240,0,47,128,47,128,31,192,11,240,21,127,149,47,128,31,192,11,240,63,255,255,47,128,31,192,11,240,63,255,255,47,234,191,234,175,240,63,255,255,47,255,255,255,255,240,0,47,128,47,255,255,255,255,240,0,47,128,47,128,31,192,11,240,0,47,128,47,128,31,192,11,240,0,47,128,47,128,31,192,11,240,0,47,128,47,128,31,192,11,240,0,47,128,47,255,255,255,255,240,0,47,128,47,255,255,255,255,240,0,47,128,47,255,255,255,255,240,0,47,128,64,127,11,224,80,0,0,47,159,128,127,11,224,248,0,0,47,255,192,127,11,224,244,64,0,127,255,192,191,11,225,242,224,27,255,254,0,254,11,226,225,240,191,255,208,0,254,11,227,225,248,127,249,0,1,253,11,239,255,252,63,128,0,2,252,11,239,255,252,36,0,0,7,248,11,230,80,36,0,0,0,15,244,11,224,0,16,0,0,0,63,224,11,224,0,125,0,0,2,255,192,11,240,0,189,0,0,47,255,0,7,255,255,253,0,0,63,252,0,3,255,255,252,0,0,31,208,0,1,255,255,240,0,0,9,0,0,0,0,0,0, + // 0x586b 填 + 107,88,36,36,68,38,1,252,0,5,0,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,191,255,255,255,255,252,0,63,64,255,255,255,255,255,252,0,63,64,255,255,255,255,255,252,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,31,208,0,0,21,127,149,3,255,255,255,255,0,63,255,255,3,255,255,255,255,0,63,255,255,3,244,0,0,63,0,63,255,255,3,244,0,0,127,0,0,63,64,3,255,255,255,255,0,0,63,64,3,255,255,255,255,0,0,63,64,3,244,0,0,63,0,0,63,64,3,244,0,0,63,0,0,63,64,3,255,255,255,255,0,0,63,64,3,255,255,255,255,0,0,63,64,3,244,0,0,127,0,0,63,64,3,244,0,0,63,0,0,63,64,3,245,85,85,127,0,0,63,75,131,255,255,255,255,0,0,63,255,195,255,255,255,255,0,0,127,255,192,0,0,0,0,0,11,255,253,0,0,0,0,0,0,127,255,211,255,255,255,255,255,253,127,253,3,255,255,255,255,255,253,63,128,3,255,255,255,255,255,253,24,0,0,0,30,0,3,128,0,0,0,0,0,191,192,31,244,0,0,0,0,7,255,0,11,255,0,0,0,0,191,248,0,0,255,208,0,0,11,255,208,0,0,47,248,0,0,3,254,0,0,0,7,253,0,0,0,160,0,0,0,0,144, + // 0x588a 墊 + 138,88,36,35,59,38,1,253,0,1,252,0,0,6,144,0,0,0,1,252,0,0,11,208,0,0,5,86,253,85,0,11,208,0,0,15,255,255,255,64,11,208,0,0,15,255,255,255,64,11,208,0,0,0,1,252,0,11,255,255,255,0,0,1,252,0,11,255,255,255,0,21,86,255,255,245,95,255,255,0,127,255,255,255,240,11,208,126,0,127,255,255,255,240,15,208,126,0,1,244,0,252,2,15,192,126,0,0,252,2,244,15,239,192,126,0,21,254,87,245,111,255,192,126,0,63,255,255,255,242,255,192,127,0,63,255,255,255,240,63,244,127,0,0,1,252,0,0,127,253,63,0,0,1,252,0,0,255,255,127,4,5,86,253,85,65,252,62,63,13,15,255,255,255,131,248,8,63,31,15,255,255,255,143,240,0,63,30,0,1,252,0,63,208,0,47,174,0,1,252,0,191,64,0,15,253,0,1,252,0,126,0,0,11,252,0,1,252,0,254,0,0,2,244,0,0,0,0,254,0,0,0,0,0,127,255,255,255,255,255,253,0,0,127,255,255,255,255,255,253,0,0,127,255,255,255,255,255,253,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252, + // 0x5916 外 + 22,89,36,36,68,38,1,252,0,0,57,0,0,0,191,0,0,0,0,127,64,0,0,191,0,0,0,0,191,0,0,0,191,0,0,0,0,254,0,0,0,191,0,0,0,1,253,0,0,0,191,0,0,0,2,252,0,0,0,191,0,0,0,3,255,255,254,0,191,0,0,0,11,255,255,255,0,191,0,0,0,15,255,255,255,0,191,0,0,0,31,229,85,255,64,191,0,0,0,63,192,0,255,224,191,0,0,0,191,64,1,255,244,191,0,0,0,255,0,2,255,252,191,0,0,2,253,0,3,252,254,191,0,0,7,253,0,3,244,191,255,0,0,31,255,128,7,240,63,255,0,0,63,255,244,11,240,15,255,0,0,191,223,254,15,224,7,255,0,0,47,2,255,239,192,1,255,64,0,5,0,127,255,192,0,255,224,0,0,0,15,255,64,0,191,252,0,0,0,3,255,0,0,191,255,64,0,0,1,253,0,0,191,255,224,0,0,3,252,0,0,191,127,254,0,0,15,244,0,0,191,15,254,0,0,31,240,0,0,191,2,252,0,0,127,192,0,0,191,0,48,0,0,255,128,0,0,191,0,0,0,3,255,0,0,0,191,0,0,0,15,252,0,0,0,191,0,0,0,127,240,0,0,0,191,0,0,2,255,192,0,0,0,191,0,0,31,255,0,0,0,0,191,0,0,31,252,0,0,0,0,191,0,0,7,224,0,0,0,0,191,0,0,1,0,0,0,0,0,190,0,0, + // 0x591a 多 + 26,89,33,36,68,38,3,252,0,0,0,46,64,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,15,255,255,255,240,0,0,0,0,127,255,255,255,252,0,0,0,3,255,255,255,255,244,0,0,0,47,253,0,0,31,240,0,0,6,255,244,0,0,127,192,0,0,127,255,254,0,1,255,64,0,0,191,250,255,208,7,253,0,0,0,47,64,47,252,47,244,0,0,0,4,0,7,255,255,208,0,0,0,0,0,0,255,255,64,0,0,0,0,0,0,127,249,144,0,0,0,0,0,7,255,215,254,0,0,0,0,0,191,254,15,248,0,0,0,0,47,255,224,127,224,0,0,0,91,255,254,2,255,255,255,253,0,255,255,208,15,255,255,255,255,64,191,248,0,191,255,255,255,255,0,57,0,11,255,128,0,3,252,0,0,0,191,253,0,0,11,248,0,0,31,255,255,0,0,31,240,0,0,255,254,255,224,0,63,208,0,0,127,208,63,252,1,255,128,0,0,45,0,7,255,75,254,0,0,0,0,0,0,255,255,248,0,0,0,0,0,0,47,255,224,0,0,0,0,0,0,31,255,64,0,0,0,0,0,2,255,248,0,0,0,0,0,0,127,255,208,0,0,0,0,0,111,255,253,0,0,0,0,2,191,255,255,144,0,0,0,0,3,255,255,244,0,0,0,0,0,2,255,249,0,0,0,0,0,0,0,229,0,0,0,0,0,0,0, + // 0x5920 夠 + 32,89,34,36,68,38,2,252,0,6,64,0,0,100,0,0,0,0,15,224,0,0,254,0,0,0,0,31,192,0,0,252,0,0,0,0,63,128,0,2,252,0,0,0,0,191,255,248,3,248,0,0,0,2,255,255,253,7,244,0,0,0,7,255,255,252,15,255,255,255,208,31,224,2,248,15,255,255,255,208,191,128,7,240,63,255,255,255,208,255,16,15,224,127,64,0,15,208,56,252,47,192,255,0,0,15,208,0,255,255,66,253,0,0,15,208,0,63,254,7,248,0,0,15,208,0,15,248,11,251,255,255,15,208,0,127,224,2,219,255,255,15,208,2,255,254,0,11,255,255,15,192,47,254,253,0,11,208,63,15,192,191,243,248,0,11,208,63,15,192,63,75,255,255,75,208,63,15,192,20,47,255,255,203,208,63,15,192,0,127,255,255,139,208,63,15,192,2,254,0,63,11,208,63,15,192,11,248,0,191,11,208,63,15,192,127,224,0,253,11,208,63,15,192,255,74,2,252,11,255,255,15,192,124,63,199,244,11,255,255,31,192,16,31,255,224,11,255,254,31,192,0,3,255,192,11,208,0,31,192,0,1,255,0,11,208,0,47,128,0,11,253,0,6,128,0,47,128,0,63,244,0,0,0,0,63,64,6,255,192,0,0,0,0,127,64,191,254,0,0,0,1,255,255,0,255,244,0,0,0,0,255,254,0,127,64,0,0,0,0,255,248,0,36,0,0,0,0,0,0,0,0, + // 0x5927 大 + 39,89,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,106,170,170,175,255,170,170,170,144,0,0,0,31,255,0,0,0,0,0,0,0,47,255,128,0,0,0,0,0,0,63,255,192,0,0,0,0,0,0,63,239,208,0,0,0,0,0,0,191,79,240,0,0,0,0,0,0,255,15,240,0,0,0,0,0,1,254,7,252,0,0,0,0,0,3,253,3,253,0,0,0,0,0,11,252,1,255,0,0,0,0,0,15,244,0,255,192,0,0,0,0,63,240,0,63,208,0,0,0,0,191,192,0,47,244,0,0,0,2,255,128,0,15,252,0,0,0,11,254,0,0,7,255,64,0,0,47,252,0,0,1,255,208,0,1,255,240,0,0,0,127,248,0,11,255,192,0,0,0,31,255,128,191,254,0,0,0,0,7,255,240,191,244,0,0,0,0,0,255,208,47,128,0,0,0,0,0,47,128,8,0,0,0,0,0,0,2,0, + // 0x5929 天 + 41,89,35,33,41,38,2,252,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,106,170,170,171,254,170,170,170,144,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,31,255,255,255,255,255,255,255,128,31,255,255,255,255,255,255,255,128,31,255,255,255,255,255,255,255,128,26,170,170,175,255,170,170,170,64,0,0,0,15,255,0,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,47,255,192,0,0,0,0,0,0,63,255,208,0,0,0,0,0,0,127,223,240,0,0,0,0,0,0,255,75,248,0,0,0,0,0,3,255,3,253,0,0,0,0,0,11,253,2,255,0,0,0,0,0,47,248,0,255,192,0,0,0,0,255,224,0,63,244,0,0,0,7,255,192,0,31,254,0,0,0,127,254,0,0,7,255,208,0,7,255,248,0,0,1,255,253,0,191,255,192,0,0,0,47,255,244,255,253,0,0,0,0,7,255,240,63,208,0,0,0,0,0,191,192,41,0,0,0,0,0,0,6,128, + // 0x5931 失 + 49,89,35,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,11,240,3,248,0,0,0,0,0,15,240,3,248,0,0,0,0,0,31,224,3,248,0,0,0,0,0,47,192,3,248,0,0,0,0,0,63,192,3,248,0,0,0,0,0,191,234,171,254,170,170,164,0,0,255,255,255,255,255,255,248,0,1,255,255,255,255,255,255,248,0,3,255,255,255,255,255,255,248,0,7,248,0,3,248,0,0,0,0,15,240,0,3,248,0,0,0,0,63,224,0,3,248,0,0,0,0,191,192,0,3,248,0,0,0,0,47,128,0,3,248,0,0,0,0,6,0,0,3,244,0,0,0,0,0,0,0,7,244,0,0,0,0,106,170,170,171,250,170,170,170,144,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,47,255,64,0,0,0,0,0,0,63,255,192,0,0,0,0,0,0,191,239,224,0,0,0,0,0,0,255,79,240,0,0,0,0,0,3,255,7,252,0,0,0,0,0,11,253,3,255,0,0,0,0,0,47,248,0,255,192,0,0,0,0,255,224,0,127,240,0,0,0,7,255,192,0,31,254,0,0,0,127,254,0,0,7,255,208,0,7,255,248,0,0,1,255,254,0,191,255,192,0,0,0,47,255,244,255,253,0,0,0,0,7,255,240,63,208,0,0,0,0,0,127,208,24,0,0,0,0,0,0,6,128, + // 0x59cb 始 + 203,89,35,36,68,38,2,252,0,62,64,0,0,57,0,0,0,0,63,64,0,0,127,192,0,0,0,127,0,0,0,127,64,0,0,0,127,0,0,0,255,0,0,0,0,190,0,0,0,254,0,0,0,0,254,0,0,1,253,0,0,0,0,253,0,0,2,252,0,144,0,0,252,0,0,3,248,7,240,0,255,255,255,240,7,244,3,248,0,255,255,255,240,11,240,1,253,0,255,255,255,240,15,224,0,255,0,87,245,91,240,31,192,0,63,128,7,240,11,224,47,213,170,191,192,11,240,15,239,255,255,255,255,240,15,224,15,223,255,255,255,255,244,15,208,15,203,255,255,234,151,248,15,192,31,197,80,0,0,2,248,31,192,31,192,0,0,0,1,128,47,128,47,128,0,0,0,0,0,63,64,63,64,0,0,0,0,0,63,64,127,0,127,255,255,255,192,127,224,191,0,127,255,255,255,192,191,253,254,0,127,255,255,255,192,255,255,253,0,127,0,0,47,192,44,191,252,0,127,0,0,47,192,0,31,252,0,127,0,0,47,192,0,15,255,64,127,0,0,47,192,0,31,255,208,127,0,0,47,192,0,63,255,240,127,0,0,47,192,0,255,139,252,127,0,0,47,192,2,255,2,240,127,0,0,47,192,11,252,0,208,127,255,255,255,192,127,244,0,0,127,255,255,255,192,191,192,0,0,127,255,255,255,192,63,0,0,0,127,0,0,47,192,8,0,0,0,127,0,0,26,128, + // 0x5a92 媒 + 146,90,36,36,68,38,1,252,0,46,64,0,63,0,0,254,0,0,63,128,0,63,0,0,254,0,0,63,64,0,63,0,0,254,0,0,63,0,0,63,0,0,254,0,0,127,0,47,255,255,255,255,252,0,127,0,47,255,255,255,255,252,0,190,0,47,255,255,255,255,252,0,254,0,0,63,0,0,254,0,127,255,255,224,63,0,0,254,0,127,255,255,224,63,0,0,254,0,127,255,255,224,63,170,170,254,0,22,253,95,208,63,255,255,254,0,3,248,15,208,63,255,255,254,0,3,244,15,208,63,0,0,254,0,3,240,15,192,63,0,0,254,0,7,240,15,192,63,0,0,254,0,11,224,31,192,63,255,255,254,0,11,224,31,192,63,255,255,254,0,15,208,47,128,63,255,255,254,0,15,192,63,64,0,7,240,0,0,31,192,127,0,0,7,240,0,0,47,240,191,0,0,7,240,0,0,63,253,254,47,255,255,255,255,252,63,255,253,47,255,255,255,255,252,11,127,252,47,255,255,255,255,252,0,15,252,0,0,255,255,0,0,0,7,254,0,2,255,255,192,0,0,15,255,128,11,255,255,240,0,0,47,255,208,47,231,243,252,0,0,127,207,224,191,199,240,255,0,0,255,3,195,255,7,240,127,208,3,254,1,111,252,7,240,47,252,31,248,0,255,240,7,240,11,253,63,224,0,63,128,7,240,1,244,15,128,0,13,0,7,240,0,32,5,0,0,0,0,7,240,0,0, + // 0x5b50 子 + 80,91,34,35,59,38,2,251,0,85,85,85,85,85,85,128,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,240,0,0,0,0,0,0,2,255,192,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,127,244,0,0,0,0,0,0,2,255,208,0,0,0,0,0,0,31,254,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,170,170,170,171,254,170,170,170,160,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,170,171,252,0,0,0,0,0,0,255,255,248,0,0,0,0,0,0,127,255,240,0,0,0,0,0,0,63,254,64,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5b58 存 + 88,91,35,36,68,38,1,252,0,0,0,41,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,255,0,0,0,0,0,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,5,85,95,249,85,85,85,85,84,0,0,15,240,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,191,128,0,0,0,4,0,0,1,255,3,255,255,255,255,0,0,3,253,3,255,255,255,255,128,0,11,252,3,255,255,255,255,0,0,47,240,0,0,0,11,252,0,0,127,224,0,0,0,47,224,0,1,255,224,0,0,0,255,128,0,7,255,224,0,0,15,253,0,0,47,255,224,0,0,15,240,0,0,191,239,224,0,0,15,224,0,0,63,143,224,255,255,255,255,255,252,29,15,224,255,255,255,255,255,252,0,15,224,255,255,255,255,255,252,0,15,224,85,85,95,245,85,84,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,85,95,224,0,0,0,15,224,0,127,255,224,0,0,0,15,224,0,63,255,192,0,0,0,15,224,0,63,254,0,0,0, + // 0x5b89 安 + 137,91,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,213,85,85,85,85,85,127,192,63,192,0,0,0,0,0,63,192,63,192,0,63,128,0,0,63,192,63,192,0,127,192,0,0,63,192,63,192,0,255,64,0,0,63,192,21,64,0,255,0,0,0,21,64,0,0,2,253,0,0,0,0,0,85,85,87,253,85,85,85,85,80,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,63,192,0,3,252,0,0,0,0,255,64,0,7,248,0,0,0,1,255,0,0,11,244,0,0,0,3,253,0,0,15,240,0,0,0,7,252,0,0,47,208,0,0,0,15,248,0,0,127,192,0,0,0,31,255,144,0,255,64,0,0,0,63,255,254,67,254,0,0,0,0,191,175,255,255,252,0,0,0,0,11,1,255,255,240,0,0,0,0,0,0,11,255,254,0,0,0,0,0,0,47,255,255,224,0,0,0,0,6,255,250,255,254,0,0,0,6,191,255,192,47,255,224,0,26,255,255,253,0,2,255,253,0,15,255,255,128,0,0,47,254,0,11,255,228,0,0,0,2,248,0,3,148,0,0,0,0,0,96,0, + // 0x5b8c 完 + 140,91,34,36,68,38,2,252,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,213,85,85,85,85,85,127,192,63,128,0,0,0,0,0,63,192,63,128,0,0,0,0,0,63,192,63,128,0,0,0,0,0,63,192,63,131,255,255,255,255,252,63,192,21,67,255,255,255,255,252,21,64,0,3,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,224,255,255,255,255,255,255,255,255,224,255,255,255,255,255,255,255,255,224,85,85,111,229,87,253,85,85,80,0,0,47,208,2,252,0,0,0,0,0,47,192,2,252,0,0,0,0,0,63,192,2,252,0,0,0,0,0,63,128,2,252,0,0,0,0,0,191,64,2,252,0,0,0,0,0,255,0,2,252,0,3,64,0,3,254,0,2,252,0,3,240,0,11,252,0,2,252,0,3,240,0,63,244,0,2,252,0,3,240,2,255,224,0,2,252,0,11,240,191,255,128,0,1,255,255,255,224,255,253,0,0,0,255,255,255,192,127,208,0,0,0,127,255,255,64,57,0,0,0,0,1,85,80,0, + // 0x5b9a 定 + 154,91,35,37,77,38,1,251,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,5,85,85,85,255,85,85,85,80,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,224,0,0,0,0,0,11,240,15,224,0,0,0,0,0,11,240,15,224,0,0,0,0,0,11,240,15,224,0,0,0,0,0,11,240,15,226,255,255,255,255,255,139,240,5,66,255,255,255,255,255,133,80,0,2,255,255,255,255,255,128,0,0,1,85,85,255,85,85,64,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,2,164,0,255,0,0,0,0,0,3,248,0,255,0,0,0,0,0,3,244,0,255,0,0,0,0,0,7,244,0,255,255,255,248,0,0,11,240,0,255,255,255,248,0,0,15,240,0,255,255,255,248,0,0,15,244,0,255,85,85,80,0,0,31,252,0,255,0,0,0,0,0,63,253,0,255,0,0,0,0,0,63,255,0,255,0,0,0,0,0,191,191,192,255,0,0,0,0,0,255,31,244,255,0,0,0,0,3,253,11,255,255,0,0,0,0,11,252,2,255,255,64,0,0,0,47,244,0,191,255,255,255,255,252,127,224,0,11,255,255,255,255,248,47,192,0,0,127,255,255,255,244,11,0,0,0,0,85,85,85,80,0,0,0,0,0,0,0,0,0, + // 0x5ba2 客 + 162,91,35,37,77,38,1,251,0,0,0,0,190,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,208,0,36,0,0,0,11,240,15,208,0,191,128,0,0,11,240,15,208,1,255,0,0,0,11,240,15,208,7,255,255,255,253,11,240,0,0,47,255,255,255,255,0,0,0,0,255,234,170,171,253,0,0,0,7,255,208,0,11,248,0,0,0,127,255,248,0,47,240,0,0,3,255,231,254,0,255,192,0,0,1,255,0,255,215,255,0,0,0,0,180,0,63,255,248,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,127,255,254,64,0,0,0,0,11,255,255,255,249,0,0,0,1,255,255,65,255,255,250,64,1,191,255,248,0,31,255,255,252,127,255,255,64,0,0,191,255,248,63,255,255,255,255,255,255,255,240,31,230,255,255,255,255,255,129,80,4,1,255,255,255,255,255,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,252,0,0,0,63,128,0,0,1,255,255,255,255,255,128,0,0,1,255,255,255,255,255,128,0,0,1,255,255,255,255,255,128,0,0,1,252,0,0,0,63,128,0,0,0,0,0,0,0,0,0,0, + // 0x5bb9 容 + 185,91,35,37,77,38,2,251,0,0,0,2,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,252,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,128,0,0,0,0,0,47,192,63,128,9,0,0,8,0,47,192,63,128,47,208,0,127,64,47,192,63,128,191,192,0,191,240,47,192,0,2,255,0,0,31,253,0,0,0,15,252,1,84,3,255,128,0,0,127,240,11,254,0,191,240,0,7,255,192,31,255,64,31,252,0,15,254,0,63,255,208,3,254,0,3,244,0,255,175,244,0,252,0,1,192,7,255,11,254,0,32,0,0,0,31,252,2,255,128,0,0,0,0,191,240,0,191,240,0,0,0,3,255,128,0,31,254,0,0,0,31,254,0,0,3,255,208,0,0,191,248,0,0,0,255,249,0,11,255,255,255,255,255,255,255,208,191,255,255,255,255,255,255,255,244,191,251,255,255,255,255,254,127,224,63,71,240,0,0,0,254,7,192,24,7,240,0,0,0,254,0,64,0,7,240,0,0,0,254,0,0,0,7,240,0,0,0,254,0,0,0,7,240,0,0,0,254,0,0,0,7,240,0,0,0,254,0,0,0,7,255,255,255,255,254,0,0,0,7,255,255,255,255,254,0,0,0,7,255,255,255,255,254,0,0,0,7,240,0,0,0,254,0,0,0,0,0,0,0,0,0,0,0, + // 0x5c0d 對 + 13,92,36,37,77,38,1,251,0,6,129,164,0,0,0,169,0,10,11,193,244,41,0,0,254,0,63,11,193,244,63,64,0,254,0,31,139,193,244,191,0,0,254,0,15,203,193,244,252,0,0,254,0,7,235,193,246,248,0,0,254,0,3,251,193,251,240,0,0,254,0,2,75,193,244,144,0,0,254,0,127,255,255,255,255,0,0,254,0,127,255,255,255,255,0,0,254,0,127,255,255,255,255,255,255,255,253,0,120,0,15,129,255,255,255,253,0,252,0,31,193,255,255,255,253,0,190,0,47,128,85,85,254,84,0,127,0,63,0,0,0,254,0,0,63,0,127,0,0,0,254,0,0,46,0,125,0,1,0,254,0,15,255,255,255,248,47,0,254,0,15,255,255,255,248,63,128,254,0,15,255,255,255,248,31,192,254,0,0,0,63,0,0,15,224,254,0,0,0,63,0,0,11,240,254,0,0,0,63,0,0,3,244,254,0,3,255,255,255,240,3,248,254,0,3,255,255,255,240,2,252,254,0,3,255,255,255,240,1,144,254,0,0,0,63,0,0,0,0,254,0,0,0,63,0,0,0,0,254,0,0,0,63,0,0,0,0,254,0,0,0,63,107,254,0,0,254,0,1,107,255,255,254,0,0,254,0,63,255,255,255,255,0,0,254,0,63,255,255,250,80,1,85,254,0,63,254,148,0,0,3,255,253,0,20,0,0,0,0,2,255,252,0,0,0,0,0,0,1,255,224,0,0,0,0,0,0,0,0,0,0, + // 0x5c0f 小 + 15,92,36,36,68,38,1,252,0,0,0,0,85,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,4,0,0,255,0,1,128,0,0,15,240,0,255,0,31,208,0,0,15,240,0,255,0,15,240,0,0,31,240,0,255,0,11,244,0,0,31,224,0,255,0,3,252,0,0,63,208,0,255,0,2,254,0,0,63,192,0,255,0,0,255,0,0,127,128,0,255,0,0,255,64,0,191,64,0,255,0,0,127,192,0,255,0,0,255,0,0,63,208,1,254,0,0,255,0,0,47,224,3,253,0,0,255,0,0,15,240,7,252,0,0,255,0,0,15,248,15,244,0,0,255,0,0,7,252,47,240,0,0,255,0,0,3,252,63,208,0,0,255,0,0,2,253,127,192,0,0,255,0,0,1,254,11,0,0,0,255,0,0,0,254,0,0,0,0,255,0,0,0,208,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,63,255,255,0,0,0,0,0,0,31,255,254,0,0,0,0,0,0,15,255,248,0,0,0,0,0,0,6,170,64,0,0,0,0, + // 0x5c31 就 + 49,92,36,36,68,38,1,252,0,0,190,0,0,0,252,0,0,0,0,191,0,0,0,252,8,0,0,0,191,0,0,0,252,191,0,0,0,191,0,0,0,252,63,192,0,0,191,0,0,0,252,31,224,63,255,255,255,252,0,252,11,240,63,255,255,255,252,0,252,3,248,63,255,255,255,252,0,252,1,248,0,0,0,0,0,0,252,0,128,0,0,0,0,0,0,252,0,0,0,0,0,0,3,255,255,255,253,3,255,255,255,211,255,255,255,253,3,255,255,255,211,255,255,255,253,3,255,255,255,209,86,253,85,84,3,240,0,15,208,1,252,0,0,3,240,0,15,208,2,255,208,0,3,240,0,15,208,2,255,208,0,3,240,0,15,208,3,255,208,0,3,255,255,255,208,3,255,208,0,3,255,255,255,208,3,255,208,0,3,255,255,255,208,7,255,208,0,0,0,127,0,0,11,255,208,0,0,0,127,0,0,15,255,208,0,2,228,127,31,128,15,223,208,0,3,244,127,15,192,31,207,208,0,7,240,127,15,208,63,207,208,0,11,240,127,7,240,127,79,208,16,15,208,127,3,240,255,15,208,61,31,192,127,2,249,254,15,208,62,63,192,127,1,247,252,15,208,62,127,64,127,0,75,248,15,208,62,127,0,127,0,31,240,15,224,126,13,0,191,0,127,208,15,255,253,0,63,255,0,255,128,11,255,252,0,47,253,0,126,0,3,255,244,0,31,228,0,8,0,0,85,64, + // 0x5de5 工 + 229,93,34,29,5,38,2,255,10,170,170,170,170,170,170,170,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,170,170,170,171,254,170,170,170,160,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x5dee 差 + 238,93,35,36,68,38,1,252,0,0,8,0,0,0,164,0,0,0,0,191,0,0,0,255,0,0,0,0,127,128,0,1,254,0,0,0,0,47,192,0,3,252,0,0,0,0,15,224,0,11,240,0,0,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,63,255,255,255,255,255,253,0,0,63,255,255,255,255,255,253,0,0,63,255,255,255,255,255,253,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,0,0,191,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,253,255,255,255,255,253,0,0,3,252,255,255,255,255,253,0,0,7,248,255,255,255,255,253,0,0,15,240,0,2,252,0,0,0,0,31,224,0,2,252,0,0,0,0,63,208,0,2,252,0,0,0,0,191,192,0,2,252,0,0,0,1,255,0,0,2,252,0,0,0,7,253,0,0,2,252,0,0,0,47,248,191,255,255,255,255,255,240,127,240,191,255,255,255,255,255,240,31,192,191,255,255,255,255,255,240,2,0,0,0,0,0,0,0,0, + // 0x5df2 已 + 242,93,33,33,41,38,3,253,21,85,85,85,85,85,85,0,0,127,255,255,255,255,255,255,64,0,127,255,255,255,255,255,255,64,0,127,255,255,255,255,255,255,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,5,80,0,0,0,0,127,64,0,11,240,0,0,0,0,127,64,0,11,240,0,0,0,0,127,64,0,11,240,0,0,0,0,127,64,0,11,240,0,0,0,0,127,64,0,11,240,0,0,0,0,127,64,0,11,245,85,85,85,85,191,64,0,11,255,255,255,255,255,255,64,0,11,255,255,255,255,255,255,64,0,11,255,255,255,255,255,255,64,0,11,240,0,0,0,0,127,64,0,11,240,0,0,0,0,127,64,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,20,0,11,240,0,0,0,0,0,47,128,11,240,0,0,0,0,0,47,192,11,240,0,0,0,0,0,63,192,11,240,0,0,0,0,0,63,192,11,240,0,0,0,0,0,127,128,7,248,0,0,0,0,0,255,64,3,255,165,85,85,85,107,255,0,3,255,255,255,255,255,255,253,0,0,255,255,255,255,255,255,244,0,0,27,255,255,255,255,255,128,0, + // 0x5e73 平 + 115,94,34,34,50,38,2,252,5,85,85,85,85,85,85,85,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,4,0,0,0,47,0,3,252,0,15,208,0,0,63,128,3,252,0,47,208,0,0,47,192,3,252,0,63,192,0,0,31,208,3,252,0,127,128,0,0,15,240,3,252,0,191,0,0,0,7,240,3,252,0,254,0,0,0,3,248,3,252,2,252,0,0,0,3,252,3,252,3,248,0,0,0,2,228,3,252,3,240,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,170,170,170,171,254,170,170,170,160,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,248,0,0,0,0, + // 0x5e8a 床 + 138,94,36,36,68,38,1,252,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,1,255,255,255,255,255,255,255,252,1,255,255,255,255,255,255,255,252,1,255,255,255,255,255,255,255,252,1,253,85,85,85,85,85,85,84,1,252,0,0,0,84,0,0,0,1,252,0,0,1,252,0,0,0,1,252,0,0,1,252,0,0,0,1,252,0,0,1,252,0,0,0,1,252,0,0,1,252,0,0,0,1,252,0,0,1,252,0,0,0,1,252,63,255,255,255,255,255,252,1,252,63,255,255,255,255,255,252,1,252,63,255,255,255,255,255,252,1,252,21,85,95,255,149,85,84,2,252,0,0,47,255,192,0,0,2,252,0,0,127,255,240,0,0,2,252,0,0,255,255,244,0,0,3,248,0,2,255,255,253,0,0,3,248,0,7,249,252,255,0,0,3,248,0,15,241,252,127,192,0,3,244,0,63,209,252,47,240,0,7,240,0,255,129,252,11,253,0,11,240,3,255,1,252,3,255,64,15,240,31,252,1,252,0,255,224,15,224,191,240,1,252,0,63,253,31,210,255,192,1,252,0,15,253,63,192,254,0,1,252,0,2,244,63,128,56,0,1,252,0,0,96,191,0,0,0,1,252,0,0,0,47,0,0,0,1,252,0,0,0,5,0,0,0,1,252,0,0,0, + // 0x5ea6 度 + 166,94,35,36,68,38,1,252,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,63,192,0,0,0,1,255,255,255,255,255,255,255,252,1,255,255,255,255,255,255,255,252,1,255,255,255,255,255,255,255,252,1,252,0,0,0,0,0,0,0,1,252,0,31,192,0,47,128,0,1,252,0,31,192,0,47,128,0,1,252,0,31,192,0,47,128,0,1,252,255,255,255,255,255,255,248,1,252,255,255,255,255,255,255,248,1,252,255,255,255,255,255,255,244,1,252,0,31,192,0,47,128,0,1,252,0,31,192,0,47,128,0,1,252,0,31,192,0,47,128,0,1,252,0,31,234,170,191,128,0,1,252,0,31,255,255,255,128,0,2,252,0,31,255,255,255,128,0,2,252,0,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,3,248,127,255,255,255,255,248,0,3,244,191,255,255,255,255,255,0,3,244,191,255,255,255,255,253,0,3,244,0,47,64,0,7,252,0,7,240,0,47,224,0,31,240,0,11,240,0,15,248,0,191,192,0,15,224,0,3,255,71,255,0,0,15,208,0,0,191,255,248,0,0,31,192,0,0,47,255,224,0,0,63,192,0,6,255,255,254,64,0,63,64,91,255,255,255,255,254,148,191,2,255,255,249,1,255,255,252,46,0,255,254,64,0,11,255,244,5,0,185,0,0,0,0,6,224, + // 0x5ee2 廢 + 226,94,36,37,77,38,1,251,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,3,255,255,255,255,255,255,255,252,3,255,255,255,255,255,255,255,252,3,255,255,255,255,255,255,255,252,3,244,0,0,0,0,0,0,0,3,244,0,0,0,27,0,64,0,3,244,63,255,253,31,130,244,0,3,244,63,255,253,15,223,240,0,3,244,21,86,252,3,255,128,0,3,244,24,3,244,2,253,2,224,3,244,191,79,224,0,255,31,240,3,244,47,255,192,0,63,255,64,3,244,7,255,0,0,15,252,0,3,244,15,253,80,21,91,255,128,3,245,191,255,240,127,255,255,253,3,255,255,255,240,127,255,219,252,3,247,228,2,240,124,11,192,180,3,241,0,2,240,188,11,193,64,3,240,21,87,240,252,11,194,224,3,240,63,255,247,248,7,231,208,3,240,63,255,251,240,7,255,192,7,240,125,0,2,192,2,255,64,7,240,188,0,1,85,85,84,0,11,224,253,85,83,255,255,255,0,11,224,255,255,243,255,255,253,0,15,209,255,255,240,108,0,252,0,15,193,160,3,240,126,2,248,0,31,192,0,7,224,63,139,240,0,47,128,0,7,224,15,255,192,0,63,128,0,11,208,3,255,64,0,127,0,0,15,208,31,255,228,0,191,0,41,111,198,255,255,255,228,125,0,47,255,143,254,2,255,244,12,0,31,254,7,144,0,27,224,0,0,0,0,0,0,0,0,0, + // 0x5efa 建 + 250,94,36,37,77,38,1,251,0,0,0,0,0,42,0,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,127,255,248,31,255,255,255,255,128,127,255,244,31,255,255,255,255,128,127,255,240,31,255,255,255,255,128,0,15,208,0,0,63,64,63,128,0,31,192,0,0,63,64,63,128,0,63,131,255,255,255,255,255,253,0,127,3,255,255,255,255,255,253,0,254,3,255,255,255,255,255,253,1,252,0,0,0,63,64,63,128,3,248,0,0,0,63,64,63,128,7,255,254,31,255,255,255,255,128,15,255,255,47,255,255,255,255,128,31,255,255,47,255,255,255,255,128,63,128,190,0,0,63,64,0,0,2,0,254,0,0,63,64,0,0,0,0,253,42,170,191,234,170,128,1,64,253,63,255,255,255,255,192,31,193,252,63,255,255,255,255,192,15,193,252,0,0,63,64,0,0,11,211,248,0,0,63,64,0,0,7,243,244,0,0,63,64,0,0,3,251,241,255,255,255,255,255,248,1,255,241,255,255,255,255,255,248,0,255,225,255,255,255,255,255,244,0,127,192,0,0,63,64,0,0,0,63,244,0,0,63,64,0,0,0,255,254,0,0,63,64,0,0,1,255,255,244,0,21,0,0,0,7,252,127,255,250,85,85,85,84,31,244,11,255,255,255,255,255,252,127,224,0,127,255,255,255,255,252,47,128,0,1,111,255,255,255,244,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5f15 引 + 21,95,30,37,40,38,3,251,0,0,0,0,0,0,5,64,21,85,85,85,0,0,31,208,63,255,255,255,0,0,31,208,63,255,255,255,0,0,31,208,63,255,255,255,0,0,31,208,0,0,0,127,0,0,31,208,0,0,0,127,0,0,31,208,0,0,0,127,0,0,31,208,0,0,0,127,0,0,31,208,0,0,0,127,0,0,31,208,5,85,85,127,0,0,31,208,15,255,255,255,0,0,31,208,31,255,255,255,0,0,31,208,47,255,255,255,0,0,31,208,47,192,0,0,0,0,31,208,63,128,0,0,0,0,31,208,63,128,0,0,0,0,31,208,63,64,0,0,0,0,31,208,127,85,85,85,0,0,31,208,191,255,255,255,64,0,31,208,191,255,255,255,64,0,31,208,255,255,255,255,0,0,31,208,253,0,0,127,0,0,31,208,109,0,0,191,0,0,31,208,0,0,0,191,0,0,31,208,0,0,0,255,0,0,31,208,0,0,0,255,0,0,31,208,0,0,0,254,0,0,31,208,0,0,0,254,0,0,31,208,0,0,1,253,0,0,31,208,0,0,2,252,0,0,31,208,0,0,3,252,0,0,31,208,2,170,175,248,0,0,31,208,1,255,255,244,0,0,31,208,0,255,255,224,0,0,31,208,0,191,254,64,0,0,31,208,0,0,0,0,0,0,0,0, + // 0x5f85 待 + 133,95,36,36,68,38,1,252,0,0,144,0,0,10,128,0,0,0,1,253,0,0,31,192,0,0,0,3,252,0,0,31,192,0,0,0,15,244,0,0,31,192,0,0,0,63,224,0,0,31,192,0,0,0,255,128,31,255,255,255,255,224,7,255,0,31,255,255,255,255,224,47,252,0,31,255,255,255,255,224,63,224,0,0,0,31,208,0,0,31,128,56,0,0,31,192,0,0,13,0,255,0,0,31,192,0,0,0,1,253,0,0,31,192,0,0,0,3,252,0,0,31,208,0,0,0,15,241,255,255,255,255,255,253,0,47,225,255,255,255,255,255,253,0,191,209,255,255,255,255,255,253,2,255,192,0,0,0,3,244,0,11,255,192,0,0,0,3,244,0,63,255,192,0,0,0,3,244,0,191,239,192,0,0,0,7,248,0,63,79,192,255,255,255,255,255,252,45,15,192,255,255,255,255,255,252,4,15,192,255,255,255,255,255,252,0,15,192,0,0,0,3,244,0,0,15,192,1,240,0,3,244,0,0,15,192,7,248,0,3,244,0,0,15,192,2,253,0,3,244,0,0,15,192,0,255,0,3,244,0,0,15,192,0,127,192,3,244,0,0,15,192,0,47,208,3,244,0,0,15,192,0,15,208,3,244,0,0,15,192,0,10,0,3,244,0,0,15,192,0,0,5,87,244,0,0,15,192,0,0,15,255,244,0,0,15,192,0,0,15,255,240,0,0,15,192,0,0,11,254,64,0, + // 0x5f8c 後 + 140,95,36,37,77,38,1,251,0,1,144,0,0,208,0,0,0,0,3,252,0,2,252,0,0,0,0,11,244,0,7,252,0,0,0,0,47,224,0,15,240,3,128,0,0,191,128,16,63,192,11,244,0,2,255,0,125,191,0,47,240,0,11,252,0,255,253,0,127,192,0,63,240,0,127,248,1,255,0,0,127,192,96,31,253,7,252,0,0,46,0,254,3,255,95,240,0,0,4,2,252,0,255,255,192,184,0,0,7,248,0,63,255,2,253,0,0,15,240,0,15,252,0,255,0,0,63,208,0,15,224,0,63,192,0,191,192,0,63,234,171,255,224,2,255,199,255,255,255,255,255,244,11,255,195,255,255,255,255,255,252,63,255,195,255,255,253,64,1,254,255,255,192,0,7,244,0,0,253,191,95,192,0,15,224,0,0,96,61,31,192,0,63,250,170,168,0,20,31,192,1,255,255,255,255,0,0,31,192,7,255,255,255,253,0,0,31,192,47,252,0,3,252,0,0,31,193,255,255,0,11,244,0,0,31,203,255,127,128,47,224,0,0,31,195,252,31,224,191,192,0,0,31,192,208,11,255,255,0,0,0,31,192,0,2,255,252,0,0,0,31,192,0,0,255,244,0,0,0,31,192,0,31,255,255,64,0,0,31,192,1,255,255,255,248,0,0,31,193,191,255,208,127,255,228,0,31,203,255,253,0,7,255,253,0,31,195,255,144,0,0,111,248,0,31,193,224,0,0,0,1,176,0,0,0,0,0,0,0,0,0, + // 0x5f91 徑 + 145,95,36,36,68,38,1,252,0,1,144,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,11,244,127,255,255,255,255,252,0,47,224,127,255,255,255,255,252,0,191,128,127,255,255,255,255,252,2,254,0,0,0,0,0,0,0,15,252,0,0,144,2,64,9,0,63,224,0,2,252,11,240,31,192,127,128,96,3,244,15,208,63,128,45,0,254,11,240,47,128,191,0,0,2,253,15,192,127,0,253,0,0,7,248,63,128,253,3,248,0,0,15,240,127,2,252,11,240,0,0,63,208,190,3,248,15,224,0,0,255,192,63,65,253,3,244,0,3,255,192,31,192,191,1,252,0,15,255,192,15,224,63,128,191,0,63,255,192,3,244,15,208,63,192,255,239,192,2,252,11,240,15,224,127,31,192,0,253,3,248,11,240,44,31,192,0,164,1,144,2,64,0,31,192,0,0,0,0,0,0,0,31,192,63,255,255,255,255,224,0,31,192,63,255,255,255,255,224,0,31,192,63,255,255,255,255,224,0,31,192,0,0,47,192,0,0,0,31,192,0,0,31,192,0,0,0,31,192,0,0,31,192,0,0,0,31,192,0,0,31,192,0,0,0,31,192,0,0,31,192,0,0,0,31,192,0,0,31,192,0,0,0,31,192,0,0,47,192,0,0,0,31,199,255,255,255,255,255,253,0,31,199,255,255,255,255,255,253,0,31,199,255,255,255,255,255,253,0,31,192,0,0,0,0,0,0, + // 0x5f9e 從 + 158,95,36,36,68,38,1,252,0,1,144,0,41,64,1,164,0,0,3,252,0,63,128,2,248,0,0,11,244,0,63,64,3,248,0,0,47,224,0,127,0,3,244,0,0,127,192,0,191,0,7,240,0,1,255,0,0,254,0,11,240,0,11,252,0,1,253,0,15,224,0,47,240,0,2,255,64,31,240,0,127,192,16,3,255,224,63,252,0,47,0,254,11,255,248,127,255,0,8,1,253,31,227,252,255,191,192,0,3,248,63,192,246,253,47,224,0,15,240,191,128,39,252,11,248,0,47,210,255,0,31,244,3,253,0,127,195,252,0,47,208,0,252,1,255,192,244,0,11,128,0,48,7,255,192,16,0,15,208,0,0,31,255,192,0,0,15,208,0,0,191,255,192,1,64,15,208,0,0,191,159,192,7,240,15,208,0,0,63,31,192,7,240,15,208,0,0,40,31,192,11,240,15,208,0,0,0,31,192,11,240,15,255,255,208,0,31,192,11,224,15,255,255,208,0,31,192,15,224,15,255,255,208,0,31,192,15,240,15,208,0,0,0,31,192,31,244,15,208,0,0,0,31,192,47,252,15,208,0,0,0,31,192,63,254,15,208,0,0,0,31,192,191,127,143,208,0,0,0,31,192,254,47,239,208,0,0,0,31,195,252,15,255,224,0,0,0,31,207,248,2,255,255,255,252,0,31,207,240,0,127,255,255,252,0,31,195,192,0,2,255,255,248,0,31,128,0,0,0,0,0,0, + // 0x5fa9 復 + 169,95,36,36,68,38,1,252,0,0,128,0,100,0,0,0,0,0,3,252,0,255,0,0,0,0,0,11,244,1,254,0,0,0,0,0,47,224,3,252,0,0,0,0,0,127,192,3,255,255,255,255,252,2,255,0,11,255,255,255,255,252,11,252,0,31,255,255,255,255,252,63,240,0,63,192,0,0,0,0,127,192,100,255,64,0,0,0,0,46,0,255,255,255,255,255,255,128,4,2,255,255,255,255,255,255,128,0,7,248,182,249,85,85,127,128,0,15,240,2,244,0,0,47,128,0,63,208,2,248,0,0,63,128,0,255,192,2,255,255,255,255,128,2,255,192,2,255,255,255,255,128,11,255,192,2,244,0,0,47,128,63,255,192,2,244,0,0,47,128,255,239,192,2,255,255,255,255,128,127,31,192,2,255,255,255,255,128,60,31,192,0,87,249,85,85,0,16,31,192,0,15,240,0,0,0,0,31,192,0,47,208,0,0,0,0,31,192,0,191,255,255,254,0,0,31,192,2,255,255,255,255,64,0,31,192,11,255,85,86,254,0,0,31,192,63,255,128,3,252,0,0,31,194,255,159,224,15,244,0,0,31,192,253,7,252,127,208,0,0,31,192,32,1,255,255,64,0,0,31,192,0,0,191,253,0,0,0,31,192,0,31,255,255,224,0,0,31,192,107,255,254,255,255,228,0,31,195,255,255,208,31,255,253,0,31,193,255,248,0,0,191,248,0,31,192,164,0,0,0,1,160, + // 0x5fae 微 + 174,95,36,36,68,38,1,252,0,9,0,3,208,0,26,64,0,0,31,208,3,208,0,31,192,0,0,63,192,3,208,0,47,128,0,0,255,69,67,208,80,63,64,0,2,254,15,131,208,244,63,64,0,7,252,15,131,208,244,63,0,0,31,240,15,131,208,244,127,0,0,127,192,15,131,208,244,190,0,0,127,66,15,131,208,244,255,255,253,61,7,255,131,208,244,255,255,253,4,15,239,131,208,245,255,255,253,0,47,207,255,255,247,248,7,240,0,63,143,255,255,251,252,7,224,0,255,11,255,255,255,252,11,224,2,254,0,0,0,15,252,11,208,7,254,0,0,0,63,253,15,192,15,254,0,0,0,47,126,15,192,63,254,31,255,255,254,63,15,192,255,254,31,255,255,248,47,31,128,190,190,31,255,255,248,31,111,64,60,126,0,252,31,128,31,191,0,16,126,0,252,31,128,15,255,0,0,126,0,252,31,128,15,254,0,0,126,0,252,31,128,7,253,0,0,126,0,248,31,128,3,252,0,0,126,1,248,31,128,3,248,0,0,126,2,244,31,138,7,248,0,0,126,3,244,31,255,15,252,0,0,126,3,240,127,255,47,255,0,0,126,11,224,191,244,127,191,64,0,126,15,208,126,0,255,47,208,0,126,47,192,16,3,252,15,244,0,126,63,64,0,31,244,7,253,0,126,30,0,0,63,208,2,254,0,126,8,0,0,31,0,0,184,0,126,0,0,0,4,0,0,16, + // 0x5fc3 心 + 195,95,36,36,68,38,1,252,0,0,0,32,0,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,1,255,255,64,0,0,0,0,0,0,11,255,244,0,0,0,0,0,0,0,191,254,0,0,0,0,0,0,0,11,255,208,0,0,0,0,0,0,1,255,208,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,2,224,0,0,248,7,240,0,0,15,244,0,0,253,7,240,0,0,7,252,0,1,252,7,240,0,0,2,254,0,1,252,7,240,0,0,0,255,0,2,252,7,240,0,0,0,127,192,3,252,7,240,0,0,0,63,208,3,248,7,240,0,0,0,31,240,7,244,7,240,0,0,0,15,240,11,240,7,240,0,0,0,11,248,15,240,7,240,0,0,0,3,252,31,224,7,240,0,0,16,2,253,63,192,7,240,0,0,46,1,254,127,192,7,240,0,0,47,128,255,255,64,7,240,0,0,63,128,244,47,0,7,240,0,0,63,64,0,0,0,7,240,0,0,63,64,0,0,0,7,240,0,0,127,0,0,0,0,7,248,0,0,255,0,0,0,0,3,255,255,255,254,0,0,0,0,2,255,255,255,252,0,0,0,0,0,191,255,255,240,0,0,0,0,0,0,0,0,0,0,0, + // 0x6027 性 + 39,96,35,36,68,38,1,252,0,47,192,0,0,7,224,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,253,11,240,0,0,0,47,192,1,253,11,240,0,0,0,47,192,1,252,11,240,0,0,0,47,192,2,252,11,240,0,0,0,47,196,3,248,11,240,0,0,9,47,254,3,244,11,240,0,0,15,111,255,7,255,255,255,255,240,31,111,223,139,255,255,255,255,240,31,111,207,207,255,255,255,255,240,47,47,203,239,229,95,245,85,80,47,47,199,255,192,11,240,0,0,63,47,194,127,128,11,240,0,0,62,47,192,191,64,11,240,0,0,125,47,192,255,0,11,240,0,0,189,47,192,29,0,11,240,0,0,188,47,192,0,0,11,240,0,0,4,47,192,0,0,11,240,0,0,0,47,192,7,255,255,255,255,208,0,47,192,7,255,255,255,255,208,0,47,192,7,255,255,255,255,208,0,47,192,1,85,95,245,85,64,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,47,192,255,255,255,255,255,252,0,47,192,255,255,255,255,255,252,0,47,192,255,255,255,255,255,252,0,47,192,85,85,85,85,85,84,0,42,128,0,0,0,0,0,0, + // 0x6062 恢 + 98,96,36,36,68,38,1,252,0,47,128,11,208,0,0,0,0,0,47,128,11,208,0,0,0,0,0,47,128,11,208,0,0,0,0,0,47,128,11,208,0,0,0,0,0,47,130,255,255,255,255,255,253,0,47,130,255,255,255,255,255,253,0,47,150,255,255,255,255,255,253,5,47,253,95,229,85,85,85,84,15,47,189,11,208,0,105,0,0,15,47,175,11,208,0,190,0,0,31,47,159,11,208,0,190,0,0,31,47,143,139,208,0,190,0,0,31,47,139,203,208,0,190,0,80,47,47,135,203,211,208,190,0,252,62,47,129,15,211,224,190,1,248,61,47,128,15,211,224,190,2,244,188,47,128,15,211,208,190,3,240,184,47,128,15,199,208,190,7,224,0,47,128,15,203,192,190,11,192,0,47,128,15,207,192,190,15,192,0,47,128,15,207,128,255,31,64,0,47,128,31,223,0,255,27,0,0,47,128,31,129,0,255,0,0,0,47,128,47,128,2,255,128,0,0,47,128,63,64,3,255,192,0,0,47,128,63,64,7,235,208,0,0,47,128,63,0,15,215,240,0,0,47,128,191,0,47,195,244,0,0,47,128,254,0,127,65,252,0,0,47,129,252,0,255,0,255,0,0,47,130,252,3,252,0,127,192,0,47,131,244,31,248,0,47,240,0,47,139,240,191,224,0,15,253,0,47,143,225,255,128,0,3,254,0,47,135,192,190,0,0,0,252,0,47,128,64,32,0,0,0,32, + // 0x606f 息 + 111,96,36,36,68,38,1,252,0,0,0,0,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,2,253,0,0,0,0,0,7,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,240,0,0,0,11,240,0,0,11,240,0,0,0,11,240,0,0,11,250,170,170,170,175,240,0,0,11,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,240,0,0,0,11,240,0,0,11,240,0,0,0,11,240,0,0,11,240,0,0,0,11,240,0,0,11,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,250,170,170,170,175,240,0,0,11,240,0,0,0,11,240,0,0,11,240,0,0,0,11,240,0,0,11,250,170,170,170,175,240,0,0,11,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,0,0,0,144,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,7,254,0,0,0,0,0,120,5,81,255,128,1,240,0,0,191,15,224,63,208,7,252,0,0,254,15,224,15,240,3,255,0,2,252,15,224,7,224,0,255,128,3,252,15,224,2,64,64,63,224,11,244,15,224,0,0,248,15,244,31,240,15,224,0,0,252,7,252,127,208,11,244,0,2,252,2,253,47,128,11,255,255,255,248,0,252,6,0,3,255,255,255,240,0,144,0,0,0,191,255,255,128,0,0, + // 0x61b6 憶 + 182,97,36,36,68,38,1,252,0,47,128,0,0,15,208,0,0,0,47,128,0,0,15,224,0,0,0,47,128,0,0,15,224,0,0,0,47,128,47,255,255,255,255,240,0,47,128,47,255,255,255,255,240,0,47,128,26,191,170,171,254,160,0,47,132,0,63,0,2,248,0,4,47,252,0,47,128,3,240,0,15,47,190,0,15,192,7,224,0,15,47,175,127,255,255,255,255,253,31,47,159,255,255,255,255,255,253,31,47,143,255,255,255,255,255,253,31,47,139,192,0,0,0,0,0,47,47,135,192,0,0,0,0,0,62,47,129,3,255,255,255,255,208,61,47,128,3,255,255,255,255,208,124,47,128,3,240,0,0,15,208,188,47,128,3,240,0,0,15,208,0,47,128,3,255,255,255,255,208,0,47,128,3,255,255,255,255,208,0,47,128,3,240,0,0,15,208,0,47,128,3,240,0,0,15,208,0,47,128,3,255,255,255,255,208,0,47,128,3,255,255,255,255,208,0,47,128,0,0,127,64,0,0,0,47,128,0,0,191,128,0,0,0,47,128,0,0,47,240,4,0,0,47,128,30,75,215,248,62,0,0,47,128,47,139,208,244,127,64,0,47,128,63,75,208,16,47,192,0,47,128,127,11,208,0,79,240,0,47,128,254,11,208,0,247,248,0,47,130,252,11,224,2,245,252,0,47,135,248,11,255,255,244,253,0,47,129,240,7,255,255,240,116,0,47,128,0,1,191,255,128,0, + // 0x61c9 應 + 201,97,35,36,68,38,1,252,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,0,3,255,255,255,255,255,255,255,252,3,255,255,255,255,255,255,255,252,3,255,255,255,255,255,255,255,252,3,244,0,164,3,144,9,0,0,3,244,1,252,7,240,31,192,0,3,244,3,244,15,224,63,128,0,3,244,11,240,31,208,127,64,0,3,244,15,208,63,255,255,255,240,3,244,63,192,255,255,255,255,240,3,244,255,194,255,64,189,0,0,3,247,255,203,255,255,255,255,192,3,255,255,223,255,255,255,255,192,3,255,239,195,175,64,189,0,0,3,247,143,192,47,64,189,0,0,3,244,15,192,47,255,255,255,192,3,240,15,192,47,255,255,255,192,3,240,15,192,47,64,189,0,0,3,240,15,192,47,64,189,0,0,3,240,15,192,47,255,255,255,244,3,240,15,192,47,255,255,255,244,7,240,15,192,14,85,85,85,80,7,240,0,0,47,208,0,0,0,11,224,0,0,47,248,0,0,0,11,224,0,0,7,255,64,16,0,15,208,31,71,240,191,193,252,0,15,192,47,71,240,31,0,255,0,31,192,63,7,240,0,0,127,128,47,128,190,7,240,0,13,47,208,63,65,253,7,240,0,15,143,240,127,3,252,7,240,0,47,131,248,191,15,240,3,255,255,255,66,252,45,2,208,3,255,255,255,0,244,8,0,0,0,111,255,248,0,0, + // 0x6210 成 + 16,98,36,37,77,38,1,251,0,0,0,0,2,248,9,0,0,0,0,0,0,3,252,63,128,0,0,0,0,0,3,252,127,244,0,0,0,0,0,3,252,11,254,0,0,0,0,0,2,252,1,255,192,0,0,0,0,2,252,0,63,0,0,85,85,85,87,253,85,110,84,1,255,255,255,255,255,255,255,252,1,255,255,255,255,255,255,255,252,1,255,255,255,255,255,255,255,252,1,253,0,0,1,252,0,0,0,1,253,0,0,1,253,0,0,0,1,253,0,0,0,253,0,0,0,1,253,0,0,0,254,0,63,64,1,254,0,0,0,254,0,127,128,1,255,255,255,192,255,0,191,0,1,255,255,255,192,191,0,254,0,1,255,255,255,192,191,1,253,0,1,253,0,47,192,127,3,252,0,1,253,0,47,192,127,75,244,0,1,253,0,47,192,63,143,240,0,1,252,0,47,192,63,239,208,0,1,252,0,47,128,47,255,192,0,2,252,0,47,128,31,255,0,0,2,252,0,63,128,15,254,0,0,3,252,0,63,128,15,252,0,128,3,248,0,127,64,31,244,0,248,3,248,255,255,0,127,248,0,253,7,244,127,255,1,255,252,0,252,11,240,127,248,7,255,255,0,252,15,240,0,0,47,252,255,65,252,47,224,0,1,255,240,127,210,248,63,192,0,11,255,192,47,255,244,127,128,0,7,254,0,15,255,240,47,0,0,1,244,0,2,255,208,6,0,0,0,64,0,0,25,0,0,0,0,0,0,0,0,0,0, + // 0x6236 戶 + 54,98,30,36,32,38,2,252,0,0,0,0,0,0,100,0,0,0,0,0,0,111,254,0,0,0,0,1,111,255,255,128,0,16,22,255,255,255,228,0,0,127,255,255,255,229,0,0,0,127,255,255,148,0,0,0,0,127,233,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,255,255,255,255,255,240,0,127,255,255,255,255,255,240,0,127,255,255,255,255,255,240,0,127,149,85,85,85,91,240,0,127,64,0,0,0,11,240,0,127,64,0,0,0,11,240,0,127,64,0,0,0,11,240,0,127,64,0,0,0,11,240,0,127,0,0,0,0,11,240,0,127,0,0,0,0,11,240,0,191,85,85,85,85,91,240,0,191,255,255,255,255,255,240,0,255,255,255,255,255,255,240,0,255,255,255,255,255,255,240,0,254,0,0,0,0,11,240,1,253,0,0,0,0,11,240,2,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,7,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,63,192,0,0,0,0,0,0,191,128,0,0,0,0,0,0,255,0,0,0,0,0,0,0,61,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0, + // 0x6240 所 + 64,98,36,36,68,38,1,252,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,31,192,47,255,255,255,240,0,2,255,244,47,255,255,255,241,1,191,255,244,47,255,255,255,242,255,255,254,0,0,0,0,0,2,255,255,144,0,0,0,0,0,2,255,208,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,248,0,0,0,7,255,255,255,194,248,0,0,0,7,255,255,255,194,248,0,0,0,7,255,255,255,194,248,0,0,0,7,240,0,47,194,248,0,0,0,7,240,0,47,194,255,255,255,254,7,240,0,47,195,255,255,255,254,7,240,0,47,195,255,255,255,254,7,240,0,47,195,253,85,255,84,7,240,0,47,195,248,0,191,0,7,255,255,255,195,244,0,191,0,7,255,255,255,195,244,0,191,0,7,255,255,255,195,244,0,191,0,7,240,0,0,7,240,0,191,0,7,240,0,0,7,240,0,191,0,7,240,0,0,11,240,0,191,0,11,240,0,0,15,224,0,191,0,11,224,0,0,15,208,0,191,0,15,224,0,0,47,192,0,191,0,15,208,0,0,63,192,0,191,0,15,192,0,0,127,64,0,191,0,31,192,0,0,255,0,0,191,0,47,192,0,1,254,0,0,191,0,63,64,0,3,252,0,0,191,0,191,0,0,15,244,0,0,191,0,255,0,0,15,240,0,0,191,0,61,0,0,3,192,0,0,191,0,8,0,0,0,64,0,0,190,0, + // 0x6247 扇 + 71,98,34,34,50,38,1,252,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,170,170,170,170,170,170,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,0,0,0,0,127,0,0,191,0,0,0,0,0,127,0,0,191,0,0,0,0,0,127,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,170,170,170,170,170,170,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,191,255,252,127,255,255,128,0,190,191,255,252,127,255,255,128,0,254,106,171,252,42,170,191,128,0,254,5,0,252,2,0,47,128,0,253,63,64,252,31,192,47,128,0,252,31,208,252,11,240,47,128,1,252,11,240,252,3,248,47,128,2,252,3,240,252,0,244,47,128,3,248,0,64,252,0,64,47,128,3,244,0,44,252,0,27,111,128,11,240,6,253,252,2,255,175,128,15,241,191,253,252,127,254,47,128,31,211,255,208,252,255,224,47,128,63,194,249,0,252,126,0,47,128,127,128,128,0,252,16,0,63,128,191,0,0,255,252,0,31,255,128,29,0,0,127,248,0,15,255,0,0,0,0,62,144,0,11,232,0, + // 0x624b 手 + 75,98,34,37,77,38,2,251,0,0,0,0,0,0,27,64,0,0,0,0,0,5,175,255,208,0,0,5,106,191,255,255,255,240,0,7,255,255,255,255,255,249,64,0,3,255,255,255,255,164,0,0,0,3,255,250,151,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,7,255,255,255,255,255,255,255,0,7,255,255,255,255,255,255,255,0,7,255,255,255,255,255,255,255,0,1,85,85,87,253,85,85,85,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,85,87,253,85,85,85,80,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,1,85,91,252,0,0,0,0,0,1,255,255,248,0,0,0,0,0,0,255,255,240,0,0,0,0,0,0,191,254,64,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6253 打 + 83,98,36,36,68,38,1,252,0,11,224,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,2,170,170,170,170,168,0,11,240,3,255,255,255,255,253,0,11,240,3,255,255,255,255,253,0,11,240,3,255,255,255,255,253,21,95,245,80,0,0,63,192,0,63,255,255,248,0,0,63,192,0,63,255,255,248,0,0,63,192,0,63,255,255,248,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,4,0,0,63,192,0,0,11,246,252,0,0,63,192,0,0,15,255,252,0,0,63,192,0,6,255,255,252,0,0,63,192,0,127,255,255,64,0,0,63,192,0,63,255,240,0,0,0,63,192,0,47,239,240,0,0,0,63,192,0,20,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,11,240,0,0,0,63,192,0,0,15,240,0,0,0,63,192,0,15,255,224,0,11,255,255,192,0,11,255,208,0,3,255,255,128,0,7,255,64,0,3,255,254,0,0,1,64,0,0,1,234,144,0,0, + // 0x6279 批 + 121,98,36,36,68,38,1,252,0,63,64,5,64,0,168,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,21,127,149,15,208,0,253,0,0,127,255,255,15,208,0,253,0,0,127,255,255,15,208,0,253,0,128,127,255,255,15,208,0,253,2,240,0,63,64,15,208,0,253,11,248,0,63,64,15,229,80,253,63,244,0,63,64,15,255,248,254,255,208,0,63,64,15,255,248,255,255,0,0,63,64,15,255,248,255,244,0,0,63,64,15,208,0,255,192,0,0,63,175,15,208,0,254,0,0,0,63,255,15,208,0,253,0,0,27,255,255,15,208,0,253,0,0,191,255,248,15,208,0,253,0,0,127,255,64,15,208,0,253,0,0,62,127,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,0,0,63,64,15,208,0,253,0,64,0,63,64,15,208,0,253,0,184,0,63,64,15,208,0,253,0,190,0,63,64,15,208,20,253,0,189,0,63,64,15,235,252,253,0,253,0,63,70,255,255,252,254,0,252,0,127,75,255,255,228,255,255,252,47,255,3,255,228,0,127,255,248,31,254,3,148,0,0,47,255,224,15,244,0,0,0,0,0,0,0, + // 0x6296 抖 + 150,98,36,36,68,38,1,252,0,15,192,0,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,15,0,3,244,0,0,15,192,0,63,224,3,244,0,0,15,192,0,47,252,3,244,0,0,15,192,0,7,255,67,244,0,21,95,213,64,0,191,195,244,0,63,255,255,240,0,31,67,244,0,63,255,255,240,0,6,3,244,0,63,255,255,240,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,144,0,3,244,0,0,15,192,1,253,0,3,244,0,0,15,192,3,255,192,3,244,0,0,15,192,0,191,248,3,244,0,0,15,192,16,15,254,3,244,0,0,15,235,240,1,252,3,244,0,0,31,255,240,0,52,3,244,0,27,255,255,240,0,0,3,244,0,127,255,254,64,0,0,3,244,0,63,255,208,0,0,0,3,250,252,63,159,192,0,0,1,175,255,253,16,15,192,0,26,255,255,255,254,0,15,192,15,255,255,255,254,144,0,15,192,15,255,255,235,244,0,0,15,192,15,254,144,3,244,0,0,15,192,5,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,15,192,0,0,0,3,244,0,0,31,192,0,0,0,3,244,0,31,255,192,0,0,0,3,244,0,15,255,192,0,0,0,3,244,0,15,254,0,0,0,0,3,244,0,0,0,0,0,0,0,1,80,0, + // 0x62bd 抽 + 189,98,35,37,77,38,1,251,0,31,192,0,0,7,224,0,0,0,31,192,0,0,7,240,0,0,0,31,192,0,0,7,240,0,0,0,31,192,0,0,7,240,0,0,0,31,192,0,0,7,240,0,0,0,31,192,0,0,7,240,0,0,0,31,192,0,0,7,240,0,0,21,111,213,64,0,7,240,0,0,127,255,255,192,0,7,240,0,0,127,255,255,207,255,255,255,255,248,127,255,255,207,255,255,255,255,248,0,31,192,15,255,255,255,255,248,0,31,192,15,229,91,245,87,248,0,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,219,207,208,7,240,3,248,0,31,255,207,208,7,240,3,248,2,255,255,223,255,255,255,255,248,191,255,254,79,255,255,255,255,248,191,255,208,15,255,255,255,255,248,127,255,192,15,229,91,245,87,248,52,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,192,15,208,7,240,3,248,0,31,192,15,229,91,245,87,248,0,31,192,15,255,255,255,255,248,0,31,192,15,255,255,255,255,248,0,47,192,15,255,255,255,255,248,31,255,192,15,208,0,0,3,248,15,255,64,15,208,0,0,3,248,15,249,0,11,208,0,0,1,164,0,0,0,0,0,0,0,0,0, + // 0x62d4 拔 + 212,98,36,37,77,38,1,251,0,31,192,0,7,240,1,0,0,0,31,192,0,7,240,15,128,0,0,31,192,0,7,240,47,244,0,0,31,192,0,7,240,11,255,0,0,31,192,0,7,240,0,255,208,0,31,192,0,7,240,0,47,224,0,31,192,0,7,240,0,7,192,21,111,213,64,7,240,0,1,0,127,255,255,218,175,250,170,170,168,127,255,255,223,255,255,255,255,252,127,255,255,223,255,255,255,255,252,0,31,192,0,11,240,0,0,0,0,31,192,0,11,240,0,0,0,0,31,192,0,15,240,0,0,0,0,31,192,0,15,244,0,42,0,0,31,192,0,15,248,0,63,0,0,31,192,0,15,252,0,127,0,0,31,199,192,15,252,0,191,0,0,31,255,192,31,253,0,254,0,2,255,255,208,47,255,0,253,0,191,255,254,64,63,191,65,252,0,191,255,208,0,63,111,194,252,0,127,255,192,0,127,15,195,244,0,56,31,192,0,191,11,231,240,0,0,31,192,0,254,7,255,240,0,0,31,192,1,252,2,255,208,0,0,31,192,3,252,0,255,192,0,0,31,192,3,244,0,255,128,0,0,31,192,15,240,1,255,208,0,0,31,192,31,224,7,255,244,0,0,31,192,63,192,15,255,253,0,0,31,192,191,64,127,226,255,128,0,47,194,255,2,255,128,191,244,31,255,203,252,15,254,0,31,254,15,255,67,240,7,248,0,3,252,15,249,0,208,1,208,0,0,112,0,0,0,0,0,0,0,0,0, + // 0x6309 按 + 9,99,36,37,77,38,1,251,0,31,192,0,0,15,224,0,0,0,31,192,0,0,15,224,0,0,0,31,192,0,0,15,224,0,0,0,31,192,0,0,15,224,0,0,0,31,192,0,0,15,224,0,0,0,31,192,31,255,255,255,255,252,0,31,192,31,255,255,255,255,252,21,111,213,95,255,255,255,255,252,127,255,255,223,192,0,0,1,252,127,255,255,223,192,16,0,1,252,127,255,255,223,192,127,64,1,252,0,31,192,31,192,191,0,1,252,0,31,192,31,192,255,0,1,252,0,31,192,0,0,253,0,0,0,0,31,192,0,1,252,0,0,0,0,31,192,0,3,252,0,0,0,0,31,192,47,255,255,255,255,253,0,31,198,239,255,255,255,255,253,0,31,255,255,255,255,255,255,253,1,191,255,208,15,208,0,255,0,127,255,255,128,31,192,0,254,0,191,255,208,0,63,128,1,253,0,127,255,192,0,63,64,2,252,0,57,31,192,0,191,0,3,248,0,0,31,192,0,255,128,11,244,0,0,31,192,1,255,249,15,240,0,0,31,192,2,255,255,255,208,0,0,31,192,1,185,255,255,192,0,0,31,192,0,0,31,255,192,0,0,31,192,0,0,11,255,248,0,0,31,192,0,0,127,255,255,64,0,31,192,0,27,255,194,255,224,0,47,192,22,255,254,0,127,252,31,255,192,191,255,224,0,11,252,15,255,64,63,253,0,0,1,244,15,249,0,46,64,0,0,0,96,0,0,0,0,0,0,0,0,0, + // 0x6389 掉 + 137,99,36,37,77,38,1,251,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,255,255,252,0,63,128,0,0,31,255,255,252,0,63,128,0,0,31,255,255,252,0,63,128,0,0,31,192,0,0,21,127,149,0,0,31,192,0,0,127,255,255,64,0,31,192,0,0,127,255,255,95,255,255,255,255,192,127,255,255,95,255,255,255,255,192,0,63,128,31,255,255,255,255,192,0,63,128,31,192,0,0,31,192,0,63,128,31,192,0,0,31,192,0,63,128,31,192,0,0,31,192,0,63,128,31,255,255,255,255,192,0,63,128,31,255,255,255,255,192,0,63,175,95,234,170,170,191,192,0,63,255,159,192,0,0,31,192,6,255,255,159,192,0,0,31,192,127,255,254,31,192,0,0,31,192,127,255,208,31,255,255,255,255,192,63,255,128,31,255,255,255,255,192,36,63,128,31,255,255,255,255,192,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,63,130,255,255,255,255,255,253,0,63,130,255,255,255,255,255,253,0,63,130,255,255,255,255,255,253,0,63,128,0,0,31,192,0,0,0,63,128,0,0,31,192,0,0,0,127,128,0,0,31,192,0,0,63,255,64,0,0,31,192,0,0,47,255,0,0,0,31,192,0,0,31,248,0,0,0,31,192,0,0,0,0,0,0,0,0,0,0,0, + // 0x63a2 探 + 162,99,36,36,68,38,1,252,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,63,255,255,255,255,248,0,63,64,63,255,255,255,255,248,0,63,64,63,255,255,255,255,248,0,63,64,63,0,0,0,1,248,0,63,64,63,2,160,63,1,248,21,127,149,63,3,240,63,1,248,127,255,255,63,7,240,63,1,248,127,255,255,42,7,240,63,0,0,127,255,255,0,15,224,63,0,80,0,63,64,0,31,208,63,0,125,0,63,64,0,127,192,63,64,189,0,63,64,6,255,0,63,255,252,0,63,64,127,253,0,47,255,248,0,63,64,63,224,0,11,255,224,0,63,91,14,0,15,208,0,0,0,63,255,0,0,15,208,0,0,0,127,255,0,0,15,208,0,0,111,255,255,0,0,15,208,0,0,191,255,224,127,255,255,255,255,252,127,255,64,127,255,255,255,255,252,57,63,64,127,255,255,255,255,252,0,63,64,0,2,255,255,0,0,0,63,64,0,3,255,255,64,0,0,63,64,0,15,255,255,192,0,0,63,64,0,47,223,223,240,0,0,63,64,0,191,143,215,252,0,0,63,64,2,255,15,210,255,0,0,63,64,15,252,15,208,191,192,0,63,64,127,240,15,208,63,244,0,63,67,255,192,15,208,15,254,0,127,67,255,0,15,208,3,252,47,255,0,244,0,15,208,0,180,31,254,0,0,0,15,208,0,0,15,244,0,0,0,15,208,0,0, + // 0x63a5 接 + 165,99,36,37,77,38,1,251,0,31,192,0,0,15,208,0,0,0,31,192,0,0,15,208,0,0,0,31,192,0,0,15,208,0,0,0,31,192,0,0,15,208,0,0,0,31,192,63,255,255,255,255,244,0,31,192,63,255,255,255,255,244,0,31,192,63,255,255,255,255,244,21,111,213,0,63,0,2,252,0,63,255,255,64,63,64,3,248,0,63,255,255,64,47,128,3,240,0,63,255,255,64,31,192,7,240,0,0,31,192,0,15,192,15,208,0,0,31,192,0,15,192,15,192,0,0,31,192,255,255,255,255,255,253,0,31,192,255,255,255,255,255,253,0,31,192,255,255,255,255,255,253,0,31,192,0,0,254,0,0,0,0,31,219,64,2,252,0,0,0,0,47,255,128,3,248,0,0,0,27,255,255,255,255,255,255,255,252,255,255,248,255,255,255,255,255,252,191,255,192,255,255,255,255,255,252,127,111,192,0,63,128,3,252,0,16,31,192,0,127,0,3,244,0,0,31,192,0,254,0,7,240,0,0,31,192,1,253,0,15,240,0,0,31,192,3,255,144,47,208,0,0,31,192,7,255,253,127,192,0,0,31,192,7,255,255,255,64,0,0,31,192,0,81,255,255,0,0,0,31,192,0,0,47,255,224,0,0,31,192,0,6,255,255,254,0,21,111,192,6,191,255,75,255,208,31,255,194,255,255,244,0,191,244,15,255,64,255,254,64,0,15,224,15,249,0,250,64,0,0,1,192,0,0,0,0,0,0,0,0,0, + // 0x63a7 控 + 167,99,36,36,68,38,1,252,0,47,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,191,255,255,255,255,252,0,63,64,191,255,255,255,255,252,0,63,64,191,255,255,255,255,252,21,127,149,190,3,240,63,0,252,127,255,255,190,7,240,63,0,252,127,255,255,190,7,240,63,0,252,127,255,255,190,11,224,63,0,168,0,63,64,0,15,224,63,0,0,0,63,64,0,15,208,63,0,160,0,63,64,0,47,192,63,0,188,0,63,64,0,191,64,63,64,252,0,63,64,7,255,0,63,255,252,0,63,91,127,252,0,47,255,244,0,63,255,63,208,0,11,255,208,1,191,255,29,0,0,0,0,0,47,255,253,0,0,0,0,0,0,191,255,128,0,0,0,0,0,0,127,255,64,15,255,255,255,255,224,57,63,64,15,255,255,255,255,224,0,63,64,15,255,255,255,255,224,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,15,192,0,0,0,63,64,0,0,31,208,0,0,0,127,65,255,255,255,255,255,253,47,255,1,255,255,255,255,255,253,31,254,1,255,255,255,255,255,253,15,244,0,0,0,0,0,0,0, + // 0x63d0 提 + 208,99,36,36,68,38,1,252,0,63,0,0,0,0,0,0,0,0,63,0,6,170,170,170,170,64,0,63,0,7,255,255,255,255,128,0,63,0,7,255,255,255,255,128,0,63,0,7,240,0,0,47,128,0,63,0,7,240,0,0,47,128,0,63,0,7,245,85,85,127,128,21,127,85,7,255,255,255,255,128,127,255,255,7,255,255,255,255,128,127,255,255,7,240,0,0,47,128,127,255,255,7,240,0,0,47,128,0,63,0,7,250,170,170,191,128,0,63,0,7,255,255,255,255,128,0,63,0,7,255,255,255,255,128,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,6,63,255,255,255,255,248,0,63,255,127,255,255,255,255,248,1,191,255,127,255,255,255,255,248,127,255,254,0,0,15,192,0,0,191,255,144,1,80,15,192,0,0,127,255,0,3,244,15,192,0,0,57,63,0,3,240,15,192,0,0,0,63,0,7,240,15,255,255,192,0,63,0,11,224,15,255,255,192,0,63,0,15,240,15,255,255,128,0,63,0,15,244,15,192,0,0,0,63,0,47,252,15,192,0,0,0,63,0,63,191,15,192,0,0,0,63,0,191,47,223,192,0,0,0,63,1,253,15,255,208,0,0,63,255,7,252,3,255,255,255,254,31,255,15,240,0,191,255,255,252,15,248,3,208,0,6,255,255,252,0,0,0,64,0,0,0,0,0, + // 0x63d2 插 + 210,99,35,36,68,38,1,252,0,47,64,0,0,0,0,0,0,0,63,64,0,0,0,1,111,64,0,63,64,0,1,90,255,255,192,0,63,64,47,255,255,255,255,224,0,63,64,31,255,255,255,164,0,0,63,64,15,250,175,208,0,0,0,63,64,0,0,15,208,0,0,21,127,149,0,0,15,208,0,0,127,255,255,0,0,15,208,0,0,127,255,255,191,255,255,255,255,252,127,255,255,191,255,255,255,255,252,0,63,64,191,255,255,255,255,252,0,63,64,0,0,15,208,0,0,0,63,64,0,0,15,208,0,0,0,63,64,0,1,15,208,0,0,0,63,64,0,15,143,208,0,0,0,63,64,57,191,255,215,255,240,0,63,175,63,255,239,215,255,240,0,63,255,63,249,15,215,255,240,11,255,255,63,128,15,208,3,240,191,255,248,63,64,15,208,3,240,191,255,64,63,64,15,208,3,240,127,127,64,63,64,15,208,3,240,16,63,64,63,255,143,211,255,240,0,63,64,63,255,143,211,255,240,0,63,64,63,255,143,211,255,240,0,63,64,63,64,15,208,3,240,0,63,64,63,64,15,208,3,240,0,63,64,63,64,15,208,3,240,0,63,64,63,64,15,208,3,240,0,63,64,63,64,15,208,3,240,0,63,64,63,255,255,255,255,240,0,127,64,63,255,255,255,255,240,47,255,0,63,255,255,255,255,240,31,254,0,63,64,0,0,3,240,15,244,0,47,64,0,0,3,240, + // 0x63db 換 + 219,99,35,37,77,38,1,251,0,47,64,0,15,144,0,0,0,0,63,64,0,31,192,0,0,0,0,63,64,0,63,192,0,0,0,0,63,64,0,127,255,254,0,0,0,63,64,0,255,255,255,128,0,0,63,64,2,255,255,255,64,0,0,63,64,7,244,0,255,0,0,21,127,149,31,224,1,253,0,0,127,255,255,191,192,3,248,0,0,127,255,255,255,255,255,255,255,224,127,255,255,255,255,255,255,255,224,0,63,64,63,255,255,255,255,224,0,63,64,31,129,244,188,7,224,0,63,64,31,129,240,188,7,224,0,63,64,31,131,240,188,7,224,0,63,64,31,135,224,124,7,224,0,63,65,31,143,192,127,255,224,0,63,191,31,255,64,63,255,224,0,127,255,31,173,0,1,91,224,111,255,255,31,128,0,0,7,224,191,255,224,31,128,31,192,7,224,127,255,64,15,128,31,192,6,144,57,63,64,0,0,47,128,0,0,0,63,64,255,255,255,255,255,252,0,63,64,255,255,255,255,255,252,0,63,64,255,255,255,255,255,252,0,63,64,0,0,191,244,0,0,0,63,64,0,0,255,252,0,0,0,63,64,0,2,253,254,0,0,0,63,64,0,11,248,191,128,0,0,63,64,0,47,240,63,224,0,0,63,64,1,255,192,31,253,0,0,127,64,47,255,0,7,255,228,47,255,7,255,248,0,0,255,252,31,254,3,255,128,0,0,31,244,15,244,1,228,0,0,0,0,160,0,0,0,0,0,0,0,0,0, + // 0x64c7 擇 + 199,100,36,37,77,38,1,251,0,63,64,0,0,0,0,0,0,0,63,64,5,85,85,85,85,80,0,63,64,31,255,255,255,255,244,0,63,64,31,255,255,255,255,244,0,63,64,31,129,244,47,2,244,0,63,64,31,129,244,47,2,244,0,63,64,31,129,244,47,2,244,21,127,149,31,214,249,111,151,244,127,255,255,31,255,255,255,255,244,127,255,255,31,255,255,255,255,244,127,255,255,0,0,15,208,0,0,0,63,64,0,0,15,208,0,0,0,63,64,15,255,255,255,255,224,0,63,64,15,255,255,255,255,224,0,63,64,6,170,175,250,170,144,0,63,64,0,0,15,208,0,0,0,63,65,0,0,15,208,0,0,0,63,255,191,255,255,255,255,253,0,127,255,255,255,255,255,255,253,111,255,255,170,255,234,171,255,169,191,255,224,0,63,64,2,252,0,127,255,64,0,47,128,3,244,0,62,127,64,0,31,192,7,240,0,16,63,64,42,175,234,175,250,168,0,63,64,127,255,255,255,255,252,0,63,64,127,255,255,255,255,252,0,63,64,0,0,15,208,0,0,0,63,64,0,0,15,208,0,0,0,63,64,26,170,175,250,170,160,0,63,64,31,255,255,255,255,240,0,63,64,31,255,255,255,255,240,0,63,64,0,0,15,208,0,0,0,127,64,0,0,15,208,0,0,47,255,0,0,0,15,208,0,0,31,254,0,0,0,15,208,0,0,15,244,0,0,0,15,208,0,0,0,0,0,0,0,0,0,0,0, + // 0x64ca 擊 + 202,100,34,36,68,38,2,252,0,3,240,0,0,0,0,0,0,0,3,240,0,2,255,255,208,0,127,255,255,255,194,255,255,208,0,127,255,255,255,194,249,95,208,0,0,3,240,0,2,244,11,208,224,31,255,255,254,3,240,11,225,240,31,87,245,126,11,240,7,255,240,31,87,245,126,63,208,3,255,208,31,255,255,254,47,128,0,105,64,31,3,240,62,14,85,85,84,0,31,255,255,254,31,255,255,255,0,5,87,245,85,31,255,255,253,0,0,3,240,0,1,244,1,252,0,255,255,255,255,192,253,7,240,0,255,255,255,255,192,127,175,192,0,15,67,240,61,0,31,255,0,0,15,67,240,61,6,191,255,128,0,15,255,255,253,63,255,255,254,64,15,255,255,253,31,228,11,255,240,0,0,0,0,26,106,252,111,208,0,255,255,255,255,255,255,0,64,0,255,255,255,254,165,64,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,7,255,255,255,255,255,255,254,0,7,255,255,255,255,255,255,254,0,0,0,0,3,252,0,0,0,0,0,0,0,3,248,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,85,85,85,87,253,85,85,85,80,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,10,171,248,0,0,0,0,0,0,15,255,244,0,0,0,0,0,0,7,255,144,0,0,0,0, + // 0x64cb 擋 + 203,100,35,36,68,38,1,252,0,63,64,0,64,15,192,4,0,0,63,64,7,224,15,192,31,192,0,63,64,3,244,15,192,63,128,0,63,64,2,252,15,192,127,0,0,63,64,0,252,15,192,254,0,0,63,64,0,253,15,192,252,0,0,63,64,63,255,255,255,255,248,21,127,149,63,255,255,255,255,252,127,255,255,127,255,255,255,255,252,127,255,255,127,0,0,0,1,252,127,255,255,127,0,0,0,1,252,0,63,64,63,85,85,85,86,252,0,63,64,63,255,255,255,255,252,0,63,64,0,255,255,255,253,0,0,63,64,0,253,0,0,253,0,0,63,64,0,253,0,0,253,0,0,63,65,0,253,0,0,253,0,0,63,255,0,255,255,255,253,0,0,127,255,0,255,255,255,253,0,47,255,255,0,85,85,85,84,0,191,255,228,0,0,0,0,0,0,127,255,64,10,170,170,170,170,144,61,63,64,15,255,255,255,255,224,0,63,64,15,255,255,255,255,224,0,63,64,15,192,15,192,11,224,0,63,64,15,192,15,192,11,224,0,63,64,15,229,95,229,95,224,0,63,64,15,255,255,255,255,224,0,63,64,15,255,255,255,255,224,0,63,64,15,192,15,192,11,224,0,63,64,15,192,15,192,11,224,0,63,64,15,192,15,192,11,224,0,127,64,15,255,255,255,255,224,47,255,0,15,255,255,255,255,224,31,254,0,15,234,170,170,175,224,15,244,0,15,192,0,0,11,224, + // 0x64e0 擠 + 224,100,36,37,77,38,1,251,0,63,0,0,0,15,192,0,0,0,63,0,0,0,15,192,0,0,0,63,0,0,0,15,192,0,0,0,63,1,255,255,255,255,255,252,0,63,1,255,255,255,255,255,252,0,63,1,255,255,255,255,255,252,0,63,0,0,2,208,30,0,0,21,127,84,0,2,240,63,0,0,127,255,253,0,0,244,61,2,240,127,255,253,255,255,248,190,47,244,127,255,253,255,255,224,119,255,192,0,63,0,95,159,143,135,215,192,0,63,0,31,15,79,135,195,208,0,63,0,47,15,79,135,194,240,0,63,0,62,15,79,135,193,240,0,63,0,125,31,79,135,234,252,0,63,94,249,255,15,159,254,126,0,63,255,240,254,15,143,228,44,2,255,254,128,80,10,64,0,0,127,255,248,7,240,0,0,47,128,191,255,64,7,240,0,0,47,128,127,255,0,7,255,255,255,255,128,56,63,0,7,255,255,255,255,128,0,63,0,7,255,255,255,255,128,0,63,0,7,240,0,0,47,128,0,63,0,7,240,0,0,47,128,0,63,0,11,240,0,0,47,128,0,63,0,11,255,255,255,255,128,0,63,0,15,255,255,255,255,128,0,63,0,15,255,255,255,255,128,0,63,0,47,192,0,0,47,128,0,63,0,63,128,0,0,47,128,0,127,0,191,0,0,0,47,128,63,255,2,254,0,0,0,47,128,31,254,2,252,0,0,0,47,128,15,228,0,112,0,0,0,47,128,0,0,0,0,0,0,0,0,0, + // 0x6536 收 + 54,101,36,36,68,38,1,252,0,0,6,160,0,169,0,0,0,0,0,11,240,0,254,0,0,0,0,0,11,240,1,253,0,0,0,0,0,11,240,2,252,0,0,0,1,80,11,240,3,252,0,0,0,3,240,11,240,3,248,0,0,0,3,240,11,240,11,244,0,0,0,3,240,11,240,15,255,255,255,254,3,240,11,240,31,255,255,255,254,3,240,11,240,47,255,255,255,254,3,240,11,240,63,229,85,111,228,3,240,11,240,191,208,0,47,192,3,240,11,240,255,240,0,63,192,3,240,11,243,255,240,0,63,128,3,240,11,251,255,244,0,127,64,3,240,11,255,247,248,0,191,0,3,240,11,255,226,252,0,254,0,3,240,11,247,192,253,1,253,0,3,240,11,241,64,254,3,252,0,3,240,11,240,0,191,3,248,0,3,240,11,240,0,63,139,240,0,3,240,11,240,0,63,207,240,0,3,240,111,240,0,31,255,208,0,3,255,255,240,0,15,255,192,0,47,255,255,240,0,7,255,64,0,127,255,255,240,0,3,254,0,0,63,253,11,240,0,11,255,0,0,63,64,11,240,0,47,255,192,0,0,0,11,240,0,191,255,240,0,0,0,11,240,2,255,143,252,0,0,0,11,240,31,253,7,255,64,0,0,11,240,191,244,1,255,224,0,0,11,251,255,208,0,127,253,0,0,11,251,255,0,0,31,253,0,0,11,243,248,0,0,2,248,0,0,11,225,128,0,0,0,96, + // 0x653e 放 + 62,101,36,37,77,38,1,251,0,2,248,0,0,30,128,0,0,0,2,252,0,0,47,192,0,0,0,2,252,0,0,63,192,0,0,0,2,252,0,0,63,128,0,0,0,2,252,0,0,63,64,0,0,0,2,252,0,0,127,0,0,0,63,255,255,255,208,191,0,0,0,63,255,255,255,208,255,255,255,253,63,255,255,255,209,255,255,255,253,21,127,85,85,66,255,255,255,253,0,63,0,0,3,253,85,127,212,0,63,0,0,7,252,0,63,128,0,63,0,0,15,252,0,63,64,0,63,0,0,15,253,0,127,0,0,63,255,255,63,254,0,191,0,0,63,255,255,127,255,0,254,0,0,63,255,255,255,191,0,253,0,0,63,64,191,191,63,65,252,0,0,63,0,127,45,47,195,252,0,0,63,0,127,4,31,195,248,0,0,63,0,191,0,15,231,240,0,0,127,0,191,0,11,255,240,0,0,127,0,191,0,7,255,208,0,0,191,0,190,0,3,255,192,0,0,190,0,190,0,1,255,128,0,0,253,0,190,0,0,255,0,0,0,253,0,190,0,2,255,128,0,1,252,0,254,0,7,255,208,0,3,252,0,254,0,31,255,240,0,7,248,0,253,0,127,239,252,0,15,240,0,253,2,255,131,255,0,31,224,0,253,15,254,1,255,208,63,192,2,252,191,248,0,127,252,255,130,255,254,255,224,0,31,253,63,1,255,244,255,0,0,3,244,12,0,255,208,116,0,0,0,160,0,0,0,0,0,0,0,0,0, + // 0x6557 敗 + 87,101,36,36,68,38,1,252,0,0,0,0,0,21,0,0,0,0,0,0,0,0,63,192,0,0,11,255,255,255,0,63,128,0,0,11,255,255,255,0,127,64,0,0,11,255,255,255,0,191,0,0,0,11,240,0,127,0,255,0,0,0,11,240,0,127,0,254,0,0,0,11,240,0,127,2,255,255,255,253,11,240,0,127,3,255,255,255,253,11,255,255,255,7,255,255,255,253,11,255,255,255,11,249,85,127,148,11,250,170,255,15,248,0,127,64,11,240,0,127,47,252,0,127,0,11,240,0,127,127,252,0,191,0,11,240,0,127,255,253,0,255,0,11,240,0,127,255,254,0,254,0,11,255,255,255,253,191,1,253,0,11,255,255,255,248,127,2,252,0,11,250,170,255,32,63,131,252,0,11,240,0,127,0,63,199,248,0,11,240,0,127,0,31,219,240,0,11,240,0,127,0,15,239,240,0,11,240,0,127,0,11,255,208,0,11,255,255,255,0,3,255,192,0,11,255,255,255,0,3,255,64,0,7,255,255,255,0,1,255,0,0,0,16,0,64,0,3,255,128,0,0,191,7,240,0,15,255,208,0,0,255,7,248,0,63,255,244,0,1,253,2,253,0,255,223,253,0,3,252,0,255,7,255,67,255,64,11,244,0,127,175,253,0,255,224,31,224,0,47,255,244,0,63,254,127,192,0,9,255,208,0,15,252,47,64,0,0,126,0,0,2,244,5,0,0,0,36,0,0,0,96, + // 0x6574 整 + 116,101,34,35,59,38,2,253,0,2,244,0,0,14,64,0,0,0,2,244,0,0,31,192,0,0,85,87,249,85,80,63,128,0,0,191,255,255,255,224,63,64,0,0,191,255,255,255,224,191,255,255,240,0,2,244,0,0,255,255,255,240,0,2,248,0,2,255,255,255,240,47,255,255,255,199,252,0,253,0,47,255,255,255,223,253,1,252,0,47,2,244,15,255,255,2,248,0,47,2,244,15,255,127,67,240,0,47,66,248,31,206,31,207,240,0,47,255,255,255,192,11,255,192,0,47,255,255,255,192,3,255,64,0,0,47,255,64,0,2,255,0,0,0,255,255,244,0,31,255,224,0,7,254,250,255,64,191,239,253,0,111,226,244,127,159,255,67,255,224,255,130,244,11,63,248,0,191,240,60,2,244,0,31,128,0,11,208,0,0,80,0,4,0,0,0,64,11,255,255,255,255,255,255,254,0,11,255,255,255,255,255,255,254,0,11,255,255,255,255,255,255,254,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,15,192,3,248,0,0,0,0,0,15,192,3,255,255,255,192,0,0,15,192,3,255,255,255,192,0,0,15,192,3,254,170,170,128,0,0,15,192,3,248,0,0,0,0,0,15,192,3,248,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x6578 數 + 120,101,36,36,68,38,1,252,0,0,63,0,0,1,232,0,0,0,0,63,0,0,2,252,0,0,3,255,255,255,248,2,252,0,0,3,255,255,255,248,3,248,0,0,3,245,127,86,248,3,244,0,0,3,240,63,2,248,7,240,0,0,107,240,63,66,254,135,240,0,0,127,255,255,255,255,203,255,255,253,127,255,255,255,255,207,255,255,253,3,240,63,2,248,15,255,255,253,3,245,127,86,248,31,213,95,212,3,255,255,255,248,47,192,15,192,3,255,255,255,248,63,208,31,192,0,0,63,0,0,127,224,31,192,1,85,127,85,84,255,224,47,128,15,255,255,255,254,255,240,63,128,15,255,255,255,255,255,240,63,64,15,192,63,0,191,251,244,127,0,15,192,63,0,190,242,248,191,0,15,255,255,255,253,81,252,254,0,15,255,255,255,253,0,253,253,0,1,86,253,85,84,0,255,252,0,0,3,244,0,0,0,127,248,0,106,175,250,170,170,128,63,240,0,127,255,255,255,255,192,63,240,0,127,255,255,255,255,192,31,208,0,0,63,0,15,192,0,63,240,0,0,191,0,47,192,0,127,244,0,1,255,224,127,64,0,255,252,0,3,255,255,254,0,3,254,255,0,0,97,255,252,0,15,244,191,128,0,0,191,255,64,127,208,63,224,0,111,255,255,226,255,128,31,252,15,255,248,31,247,254,0,7,252,11,255,128,2,209,244,0,1,244,7,144,0,0,0,144,0,0,16, + // 0x6599 料 + 153,101,36,36,68,38,1,252,0,2,160,0,0,0,1,252,0,0,7,240,0,0,0,1,252,0,0,7,240,20,0,0,1,252,0,63,7,240,63,2,208,1,252,0,47,7,240,126,3,252,1,252,0,31,71,240,189,3,255,65,252,0,15,135,240,252,0,191,209,252,0,15,199,240,252,0,31,241,252,0,11,199,241,244,0,3,209,252,0,7,215,242,240,0,0,129,252,0,7,215,243,224,0,0,1,252,0,3,71,241,208,0,0,1,252,0,0,7,240,0,8,0,1,252,0,63,255,255,255,47,64,1,252,0,63,255,255,255,127,240,1,252,0,63,255,255,255,31,253,1,252,0,21,111,245,85,2,255,65,252,0,0,63,248,0,0,127,1,252,0,0,63,253,0,0,29,1,252,0,0,191,255,64,0,0,1,252,0,0,255,255,192,0,0,1,252,0,1,251,251,240,0,0,1,253,188,3,247,243,248,0,0,27,255,253,7,231,241,253,0,111,255,255,254,15,215,240,253,191,255,255,255,228,31,199,240,116,255,255,255,252,0,63,71,240,16,255,249,65,252,0,191,7,240,0,164,0,1,252,0,126,7,240,0,0,0,1,252,0,60,7,240,0,0,0,1,252,0,20,7,240,0,0,0,1,252,0,0,7,240,0,0,0,1,252,0,0,7,240,0,0,0,1,252,0,0,7,240,0,0,0,1,252,0,0,7,240,0,0,0,1,252,0,0,7,240,0,0,0,1,252,0, + // 0x659c 斜 + 156,101,36,36,68,38,1,252,0,0,255,0,0,0,0,127,0,0,2,255,192,0,0,0,127,0,0,3,255,240,0,0,0,127,0,0,11,255,253,0,30,0,127,0,0,31,227,255,64,191,128,127,0,0,63,192,255,208,63,240,127,0,0,191,64,63,240,11,252,127,0,2,254,0,15,252,2,254,127,0,7,252,0,3,240,0,190,191,0,31,240,0,1,208,0,56,127,0,127,255,255,255,128,0,0,127,0,255,255,255,255,128,0,0,127,0,61,255,255,255,128,112,0,127,0,20,0,127,0,1,253,0,127,0,0,0,127,0,2,255,64,127,0,0,0,127,0,0,127,208,127,0,0,0,127,0,0,31,244,127,0,63,255,255,255,248,7,252,127,0,63,255,255,255,248,1,240,127,0,63,255,255,255,248,0,64,127,0,0,0,127,0,0,0,0,127,0,0,0,127,0,0,0,0,127,253,1,144,127,7,64,0,6,255,254,3,248,127,31,192,27,255,255,254,3,240,127,15,199,255,255,255,228,7,240,127,11,227,255,255,255,0,11,224,127,3,243,255,144,127,0,15,208,127,3,246,144,0,127,0,47,192,127,2,252,0,0,127,0,63,64,127,0,252,0,0,127,0,191,0,127,0,244,0,0,127,0,45,0,127,0,0,0,0,127,0,4,0,191,0,0,0,0,127,0,0,63,255,0,0,0,0,127,0,0,63,253,0,0,0,0,127,0,0,47,228,0,0,0,0,127,0, + // 0x65b0 新 + 176,101,36,36,68,38,1,252,0,0,169,0,0,0,0,0,0,0,0,253,0,0,0,0,27,208,0,0,253,0,0,0,6,255,244,0,0,253,0,0,145,191,255,244,47,255,255,255,241,255,255,254,0,47,255,255,255,241,255,254,64,0,47,255,255,255,241,254,64,0,0,0,180,0,57,1,252,0,0,0,1,248,0,127,1,252,0,0,0,0,252,0,189,1,252,0,0,0,0,189,0,252,1,252,0,0,0,0,126,1,248,1,252,0,0,0,0,121,1,180,1,252,0,0,0,63,255,255,255,249,255,255,255,253,63,255,255,255,249,255,255,255,253,63,255,255,255,249,255,255,255,253,0,0,253,0,1,253,85,254,84,0,0,253,0,1,252,0,253,0,0,0,253,0,1,252,0,253,0,63,255,255,255,241,252,0,253,0,63,255,255,255,241,252,0,253,0,63,255,255,255,242,252,0,253,0,0,3,254,0,2,248,0,253,0,0,11,255,64,3,248,0,253,0,0,15,255,224,3,244,0,253,0,0,63,255,252,3,240,0,253,0,0,255,255,255,7,240,0,253,0,2,252,253,127,207,240,0,253,0,11,244,253,31,79,208,0,253,0,47,240,253,10,47,192,0,253,0,191,192,253,0,63,128,0,253,0,63,0,253,0,255,0,0,253,0,12,0,253,2,254,0,0,253,0,0,0,253,3,252,0,0,253,0,0,0,253,0,244,0,0,253,0,0,0,253,0,32,0,0,169,0, + // 0x65b7 斷 + 183,101,34,36,68,38,3,252,0,4,0,16,0,0,0,16,0,164,30,0,60,0,0,1,252,0,252,60,0,184,0,0,31,255,64,252,184,65,241,1,7,255,254,0,254,242,231,211,194,255,255,208,0,254,243,199,203,130,255,248,0,0,252,255,130,255,2,253,0,0,0,252,63,0,253,2,244,0,0,0,252,45,64,125,130,244,0,0,0,252,60,224,178,210,244,0,0,0,252,186,240,246,242,244,0,0,0,255,255,255,255,242,244,0,0,0,254,148,59,148,114,244,0,0,0,252,0,0,0,2,255,255,255,208,255,255,255,255,226,255,255,255,208,255,255,255,255,226,255,255,255,208,254,175,170,190,146,248,7,240,0,252,45,0,124,3,244,7,240,0,252,60,0,244,3,244,7,240,0,253,244,67,226,67,244,7,240,0,255,243,219,199,195,244,7,240,0,252,251,195,239,67,244,7,240,0,252,127,64,254,3,240,7,240,0,252,46,0,124,3,240,7,240,0,252,61,208,182,199,240,7,240,0,252,180,241,241,231,240,7,240,0,255,255,255,255,251,240,7,240,0,255,250,127,233,191,224,7,240,0,252,0,0,0,127,208,7,240,0,252,0,0,0,31,192,7,240,0,255,255,255,255,255,128,7,240,0,255,255,255,255,255,64,7,240,0,255,255,255,255,255,0,7,240,0,252,0,0,0,254,0,7,240,0,252,0,0,0,124,0,7,240,0,84,0,0,0,20,0,7,240,0, + // 0x65bc 於 + 188,101,36,37,77,38,1,251,0,3,248,0,0,2,252,0,0,0,3,248,0,0,3,254,0,0,0,3,248,0,0,7,255,0,0,0,3,248,0,0,11,255,64,0,0,3,248,0,0,15,239,192,0,0,3,248,0,0,47,207,208,0,63,255,255,255,192,63,75,240,0,63,255,255,255,192,191,3,248,0,63,255,255,255,193,254,2,252,0,21,191,85,85,67,252,0,255,0,0,127,0,0,11,244,0,191,128,0,127,0,0,31,240,0,63,208,0,127,0,0,63,208,0,31,244,0,127,0,0,255,128,0,11,253,0,127,0,2,255,0,0,3,253,0,127,255,253,252,2,0,0,252,0,191,255,253,176,15,208,0,52,0,191,255,253,0,47,248,0,0,0,191,0,253,0,7,255,0,0,0,254,0,252,0,1,255,192,0,0,254,0,252,0,0,63,240,0,0,254,0,252,0,0,15,240,0,0,253,0,252,0,0,3,192,0,0,253,0,252,0,0,0,0,0,1,252,0,252,0,0,0,0,0,2,252,1,252,0,128,0,0,0,2,248,1,252,3,249,0,0,0,3,248,1,252,11,255,128,0,0,7,244,1,252,2,255,248,0,0,11,240,2,252,0,47,255,64,0,15,224,2,252,0,7,255,224,0,31,208,3,248,0,0,127,253,0,63,192,7,248,0,0,15,255,64,191,67,255,244,0,0,2,255,128,63,3,255,240,0,0,0,63,0,12,2,255,128,0,0,0,12,0,0,0,0,0,0,0,0,0,0, + // 0x6607 昇 + 7,102,34,34,50,38,2,252,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,253,0,0,0,0,11,240,0,0,253,0,0,0,0,11,240,0,0,254,170,170,170,170,175,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,253,0,0,0,0,11,240,0,0,253,0,0,0,0,11,240,0,0,253,0,0,0,0,11,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,0,1,128,0,0,0,0,0,0,1,191,240,7,244,0,0,0,91,255,255,252,7,244,0,0,15,255,255,255,144,7,244,0,0,11,255,255,208,0,7,244,0,0,7,165,31,192,0,7,244,0,0,0,0,31,192,0,7,244,0,0,0,0,31,192,0,7,244,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,63,128,0,7,244,0,0,0,0,191,64,0,7,244,0,0,0,1,255,0,0,7,244,0,0,0,7,254,0,0,7,244,0,0,0,47,252,0,0,7,244,0,0,2,255,240,0,0,7,244,0,0,31,255,128,0,0,7,244,0,0,11,248,0,0,0,7,244,0,0,3,128,0,0,0,7,244,0,0, + // 0x660e 明 + 14,102,33,36,68,38,3,251,0,0,0,0,85,85,85,85,0,0,0,0,0,255,255,255,255,64,255,255,255,128,255,255,255,255,64,255,255,255,128,255,255,255,255,64,255,255,255,128,253,0,0,63,64,253,0,47,128,253,0,0,63,64,253,0,47,128,253,0,0,63,64,253,0,47,128,253,0,0,63,64,253,0,47,128,253,0,0,63,64,253,0,47,128,253,0,0,63,64,253,0,47,128,255,255,255,255,64,255,255,255,128,255,255,255,255,64,255,255,255,128,255,255,255,255,64,255,255,255,128,253,0,0,127,64,253,0,47,128,253,0,0,63,64,253,0,47,128,253,0,0,63,64,253,0,47,128,252,0,0,63,64,253,0,47,129,252,0,0,63,64,253,0,47,129,252,0,0,63,64,253,0,47,129,255,255,255,255,64,253,0,47,130,255,255,255,255,64,255,255,255,130,255,255,255,255,64,255,255,255,131,248,0,0,127,64,255,255,255,131,244,0,0,63,64,254,85,85,7,240,0,0,63,64,253,0,0,15,240,0,0,63,64,253,0,0,15,208,0,0,63,64,253,0,0,63,192,0,0,63,64,0,0,0,127,128,0,0,63,64,0,0,0,255,64,0,0,63,64,0,0,2,254,0,0,0,63,64,0,0,11,252,0,1,85,191,0,0,0,47,244,0,3,255,255,0,0,0,31,208,0,2,255,254,0,0,0,7,64,0,1,255,228,0,0,0,0,0,0,0,0,0,0, + // 0x662f 是 + 47,102,36,36,68,38,1,251,0,42,170,170,170,170,170,164,0,0,63,255,255,255,255,255,248,0,0,63,255,255,255,255,255,248,0,0,63,128,0,0,0,3,248,0,0,63,128,0,0,0,3,248,0,0,63,128,0,0,0,3,248,0,0,63,255,255,255,255,255,248,0,0,63,255,255,255,255,255,248,0,0,63,213,85,85,85,87,248,0,0,63,128,0,0,0,3,248,0,0,63,128,0,0,0,3,248,0,0,63,255,255,255,255,255,248,0,0,63,255,255,255,255,255,248,0,0,42,170,170,170,170,170,164,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,0,0,0,0,127,0,0,0,0,0,1,164,0,127,0,0,0,0,0,3,252,0,127,0,0,0,0,0,3,248,0,127,0,0,0,0,0,7,244,0,127,255,255,255,0,0,11,240,0,127,255,255,255,0,0,15,248,0,127,255,255,255,0,0,47,253,0,127,0,0,0,0,0,63,255,0,127,0,0,0,0,0,191,191,208,127,0,0,0,0,1,255,31,248,127,0,0,0,0,7,252,11,255,255,0,0,0,0,31,248,1,255,255,255,255,255,253,127,224,0,47,255,255,255,255,252,47,128,0,1,191,255,255,255,248,10,0,0,0,0,5,85,85,80,0,0,0,0,0,0,0,0,0, + // 0x6642 時 + 66,102,34,36,68,38,3,252,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,255,255,252,0,0,127,64,0,0,255,255,252,0,0,127,64,0,0,255,255,252,63,255,255,255,255,0,252,1,252,63,255,255,255,255,0,252,1,252,63,255,255,255,255,0,252,1,252,0,0,127,64,0,0,252,1,252,0,0,127,64,0,0,252,1,252,0,0,127,64,0,0,252,1,252,0,0,127,64,0,0,252,1,253,255,255,255,255,255,208,252,1,253,255,255,255,255,255,208,255,255,253,255,255,255,255,255,208,255,255,252,0,0,0,31,192,0,255,255,252,0,0,0,31,192,0,252,1,252,0,0,0,31,192,0,252,1,252,0,0,0,31,192,0,252,1,252,255,255,255,255,255,192,252,1,252,255,255,255,255,255,192,252,1,252,255,255,255,255,255,192,252,1,252,0,0,0,31,192,0,252,1,252,0,128,0,31,192,0,252,1,252,11,240,0,31,192,0,255,255,252,11,248,0,31,192,0,255,255,252,3,253,0,31,192,0,255,255,252,0,255,0,31,192,0,253,0,0,0,127,192,31,192,0,252,0,0,0,63,192,31,192,0,252,0,0,0,15,64,31,192,0,252,0,0,0,4,0,31,192,0,0,0,0,0,0,80,47,192,0,0,0,0,0,0,191,255,192,0,0,0,0,0,0,63,255,128,0,0,0,0,0,0,63,249,0,0, + // 0x66ab 暫 + 171,102,34,36,68,38,2,252,0,1,244,0,0,0,0,4,0,0,2,244,0,0,0,6,254,0,0,2,248,0,3,150,255,255,128,191,255,255,255,211,255,255,253,0,191,255,255,255,211,255,250,64,0,0,2,244,0,3,245,0,0,0,47,255,255,255,131,240,0,0,0,47,171,254,175,131,240,0,0,0,47,2,244,15,131,240,0,0,0,47,171,254,175,131,255,255,255,240,47,255,255,255,135,255,255,255,240,47,2,244,15,135,255,255,255,240,47,171,254,191,139,224,11,224,0,47,255,255,255,143,208,11,224,0,0,2,244,0,15,192,11,224,0,0,2,248,0,47,192,11,224,0,255,255,255,255,255,64,11,224,0,255,255,255,255,255,0,11,224,0,0,2,244,2,253,0,11,224,0,0,2,244,0,180,0,11,224,0,0,1,80,0,16,0,1,80,0,0,42,170,170,170,170,170,128,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,128,0,0,0,63,192,0,0,47,128,0,0,0,63,192,0,0,47,213,85,85,85,127,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,128,0,0,0,63,192,0,0,47,128,0,0,0,63,192,0,0,47,128,0,0,0,63,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,128,0,0,0,47,128,0, + // 0x66f4 更 + 244,102,35,34,50,38,2,252,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,0,0,0,2,253,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,253,0,2,252,0,1,252,0,0,253,0,2,252,0,1,252,0,0,253,0,2,252,0,1,252,0,0,255,170,171,255,170,171,252,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,253,0,2,252,0,1,252,0,0,253,0,2,252,0,1,252,0,0,253,0,2,252,0,1,252,0,0,253,0,2,252,0,1,252,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,252,0,0,7,64,7,244,0,0,0,0,0,63,192,15,240,0,0,0,0,0,15,244,31,224,0,0,0,0,0,7,253,127,192,0,0,0,0,0,1,255,255,64,0,0,0,0,0,0,127,255,0,0,0,0,0,0,1,191,255,228,0,0,0,0,0,111,255,255,255,250,84,0,0,111,255,254,27,255,255,255,255,244,191,255,208,0,111,255,255,255,240,63,249,0,0,0,107,255,255,224,9,0,0,0,0,0,0,85,64, + // 0x6700 最 + 0,103,34,35,59,38,2,252,0,21,85,85,85,85,85,64,0,0,63,255,255,255,255,255,208,0,0,63,255,255,255,255,255,208,0,0,63,0,0,0,0,15,208,0,0,63,0,0,0,0,15,208,0,0,63,255,255,255,255,255,208,0,0,63,255,255,255,255,255,208,0,0,63,64,0,0,0,31,208,0,0,63,0,0,0,0,15,208,0,0,63,85,85,85,85,95,208,0,0,63,255,255,255,255,255,208,0,0,63,255,255,255,255,255,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,2,248,0,127,0,0,0,0,0,2,248,0,127,0,0,0,0,0,2,255,255,255,63,255,255,254,0,2,255,255,255,63,255,255,255,0,2,254,170,191,43,250,170,255,0,2,248,0,127,3,240,0,253,0,2,248,0,127,3,244,3,252,0,2,255,255,255,1,252,7,244,0,2,255,255,255,0,255,31,240,0,2,254,170,191,0,63,191,192,0,2,248,0,127,0,47,255,64,0,2,248,0,191,0,15,254,0,0,6,255,255,255,0,47,255,64,0,255,255,255,255,1,255,255,224,0,255,255,255,255,31,255,111,254,64,254,148,0,127,255,248,3,255,240,0,0,0,127,63,128,0,127,208,0,0,0,127,24,0,0,6,128, + // 0x6709 有 + 9,103,34,37,77,38,2,251,0,0,0,164,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,21,85,127,213,85,85,85,85,64,0,0,127,128,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,3,255,255,255,255,255,208,0,0,15,255,255,255,255,255,208,0,0,31,255,255,255,255,255,208,0,0,63,252,0,0,0,31,208,0,0,255,252,0,0,0,15,208,0,3,255,252,0,0,0,15,208,0,15,254,252,0,0,0,15,208,0,63,242,255,255,255,255,255,208,0,255,210,255,255,255,255,255,208,0,255,2,255,255,255,255,255,208,0,60,2,252,0,0,0,15,208,0,0,2,252,0,0,0,15,208,0,0,2,252,0,0,0,15,208,0,0,2,255,255,255,255,255,208,0,0,2,255,255,255,255,255,208,0,0,2,255,255,255,255,255,208,0,0,2,252,0,0,0,15,208,0,0,2,252,0,0,0,15,208,0,0,2,252,0,0,0,15,208,0,0,2,252,0,0,0,15,208,0,0,2,252,0,0,85,111,192,0,0,2,252,0,0,255,255,192,0,0,2,252,0,0,127,255,128,0,0,2,252,0,0,63,249,0,0,0,0,0,0,0,0,0,0,0, + // 0x677f 板 + 127,103,36,36,68,38,1,252,0,7,224,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,11,224,0,21,85,85,85,80,0,11,224,0,255,255,255,255,252,0,11,224,0,255,255,255,255,252,0,11,224,0,255,255,255,255,252,0,11,224,0,254,0,0,0,0,0,11,224,0,254,0,0,0,0,63,255,255,244,254,0,0,0,0,63,255,255,244,254,0,0,0,0,63,255,255,244,254,0,0,0,0,21,95,245,80,254,0,0,0,0,0,31,224,0,255,255,255,255,224,0,47,224,0,255,255,255,255,244,0,63,240,0,255,255,255,255,240,0,63,252,0,255,248,0,11,240,0,191,254,0,255,252,0,15,224,0,255,255,64,254,252,0,31,208,1,255,255,192,253,254,0,47,192,2,251,235,240,253,127,0,63,128,3,235,227,249,252,63,64,127,64,11,219,225,245,252,47,192,255,0,15,203,224,225,252,31,209,254,0,47,139,224,66,252,15,243,252,0,127,11,224,3,248,7,251,248,0,190,11,224,3,244,3,255,240,0,60,11,224,7,240,0,255,208,0,40,11,224,11,240,0,255,192,0,0,11,224,15,224,2,255,224,0,0,11,224,31,208,11,255,248,0,0,11,224,63,192,47,251,254,0,0,11,224,127,129,255,209,255,208,0,11,224,255,11,255,64,127,253,0,11,225,254,15,253,0,31,253,0,11,224,124,7,224,0,2,244,0,11,224,4,2,64,0,0,96, + // 0x67f1 柱 + 241,103,36,36,68,38,1,252,0,3,240,0,0,28,0,0,0,0,3,240,0,0,191,64,0,0,0,3,240,0,0,255,224,0,0,0,3,240,0,0,47,252,0,0,0,3,240,0,0,7,255,0,0,0,3,240,0,0,0,255,192,0,0,3,240,0,0,0,63,128,0,0,3,240,0,85,85,95,85,84,63,255,255,252,255,255,255,255,252,63,255,255,252,255,255,255,255,252,63,255,255,252,255,255,255,255,252,21,95,245,84,0,1,253,0,0,0,15,240,0,0,1,253,0,0,0,15,240,0,0,1,253,0,0,0,47,244,0,0,1,253,0,0,0,63,252,0,0,1,253,0,0,0,63,255,0,0,1,253,0,0,0,191,255,192,0,1,253,0,0,0,255,255,224,0,1,253,0,0,1,251,247,244,63,255,255,255,248,3,243,242,253,63,255,255,255,248,7,227,240,253,63,255,255,255,248,15,211,240,120,21,86,254,85,80,47,195,240,32,0,1,253,0,0,63,67,240,0,0,1,253,0,0,191,3,240,0,0,1,253,0,0,61,3,240,0,0,1,253,0,0,40,3,240,0,0,1,253,0,0,0,3,240,0,0,1,253,0,0,0,3,240,0,0,1,253,0,0,0,3,240,0,0,1,253,0,0,0,3,240,15,255,255,255,255,254,0,3,240,15,255,255,255,255,254,0,3,240,15,255,255,255,255,254,0,3,240,5,85,85,85,85,84,0,2,160,0,0,0,0,0,0, + // 0x6821 校 + 33,104,36,36,68,38,1,252,0,6,144,0,0,2,160,0,0,0,11,224,0,0,3,244,0,0,0,11,224,0,0,3,244,0,0,0,11,224,0,0,3,244,0,0,0,11,224,0,0,3,244,0,0,0,11,224,1,85,87,249,85,84,0,11,224,11,255,255,255,255,252,0,11,224,11,255,255,255,255,252,63,255,250,171,255,255,255,255,252,63,255,255,240,0,0,0,0,0,63,255,255,240,7,128,0,180,0,21,95,229,80,15,240,3,252,0,0,31,224,0,31,208,0,255,0,0,47,224,0,63,192,0,127,192,0,63,240,0,255,64,0,47,224,0,63,248,2,254,0,0,15,244,0,191,253,11,252,0,1,67,252,0,255,255,31,251,192,3,253,253,1,255,255,139,207,224,3,248,248,2,255,239,210,7,240,7,244,64,3,235,231,240,3,248,15,240,0,11,219,226,240,2,252,31,224,0,15,203,224,208,0,254,63,192,0,47,139,224,64,0,191,191,64,0,63,11,224,0,0,63,255,0,0,190,11,224,0,0,31,253,0,0,61,11,224,0,0,15,252,0,0,40,11,224,0,0,47,254,0,0,0,11,224,0,0,191,255,128,0,0,11,224,0,2,255,191,240,0,0,11,224,0,31,253,31,253,0,0,11,224,0,191,244,7,255,208,0,11,224,27,255,192,1,255,253,0,11,224,63,253,0,0,63,252,0,11,224,31,224,0,0,11,244,0,11,208,10,0,0,0,0,160, + // 0x683c 格 + 60,104,36,36,68,38,1,252,0,11,224,0,0,121,0,0,0,0,11,224,0,0,255,0,0,0,0,11,224,0,0,254,0,0,0,0,11,224,0,3,252,0,0,0,0,11,224,0,7,255,255,255,64,0,11,224,0,15,255,255,255,128,0,11,224,0,47,255,255,255,64,0,11,224,0,127,192,0,255,0,63,255,255,245,255,208,1,253,0,63,255,255,251,255,240,3,252,0,63,255,255,255,251,248,7,244,0,21,95,245,127,225,253,31,240,0,0,31,224,15,192,255,63,192,0,0,47,244,3,0,63,255,64,0,0,63,252,0,0,31,254,0,0,0,63,255,0,0,15,253,0,0,0,127,255,128,0,127,255,128,0,0,191,255,208,2,255,255,240,0,0,255,231,240,15,255,47,254,0,1,255,227,240,191,248,7,255,224,3,251,225,219,255,208,0,255,254,7,235,224,255,255,0,0,47,252,15,203,224,127,255,255,255,255,248,31,203,224,47,191,255,255,255,144,63,75,224,0,127,255,255,255,128,191,11,224,0,127,0,0,63,128,125,11,224,0,127,0,0,63,128,56,11,224,0,127,0,0,63,128,16,11,224,0,127,0,0,63,128,0,11,224,0,127,0,0,63,128,0,11,224,0,127,0,0,63,128,0,11,224,0,127,255,255,255,128,0,11,224,0,127,255,255,255,128,0,11,224,0,127,255,255,255,128,0,11,224,0,127,0,0,63,128,0,6,144,0,106,0,0,42,64, + // 0x689d 條 + 157,104,36,36,68,38,1,252,0,1,64,0,0,164,0,0,0,0,3,248,0,0,254,0,0,0,0,3,244,0,1,252,0,0,0,0,11,240,0,3,248,0,0,0,0,15,224,0,11,255,255,255,252,0,31,199,224,31,255,255,255,252,0,63,199,224,63,255,255,255,252,0,127,71,224,255,192,0,255,0,0,191,7,227,255,224,1,253,0,1,255,7,255,255,244,3,248,0,3,255,7,235,226,253,15,240,0,7,255,7,226,128,191,191,192,0,15,255,7,224,0,47,255,64,0,63,255,7,224,0,15,254,0,0,191,255,7,224,1,191,255,224,0,255,191,7,224,31,255,191,255,64,190,127,7,235,255,248,7,255,253,60,127,7,231,255,128,0,127,252,32,127,7,225,244,3,248,1,244,0,127,7,224,0,3,248,0,0,0,127,7,224,0,3,248,0,0,0,127,7,227,255,255,255,255,252,0,127,7,227,255,255,255,255,252,0,127,7,227,255,255,255,255,252,0,127,7,224,0,31,255,0,0,0,127,7,224,0,63,255,192,0,0,127,7,224,0,255,255,224,0,0,127,7,224,3,255,255,248,0,0,127,7,224,15,247,249,253,0,0,127,0,0,127,211,248,191,128,0,127,0,2,255,67,248,63,224,0,127,0,31,253,3,248,15,253,0,127,0,47,244,3,248,3,253,0,127,0,15,192,3,248,0,184,0,127,0,1,0,3,248,0,16,0,126,0,0,0,3,244,0,0, + // 0x68c4 棄 + 196,104,34,36,68,38,2,252,0,0,0,2,248,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,127,255,255,255,255,255,255,255,224,0,0,47,208,0,47,240,0,0,0,0,63,128,0,15,254,0,0,0,0,255,0,5,86,255,208,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,255,64,15,255,170,169,85,80,0,127,0,0,5,64,2,164,0,21,8,0,0,15,192,3,248,0,127,0,0,0,15,192,3,248,0,127,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,106,175,234,171,254,170,255,170,160,0,15,192,3,248,0,127,0,0,0,15,192,3,248,0,127,0,0,0,15,255,255,255,255,255,0,0,0,15,255,255,255,255,255,0,0,0,10,170,171,254,170,170,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,7,255,255,253,0,0,0,0,0,47,243,249,255,144,0,0,0,7,255,131,248,47,253,0,0,0,191,252,3,248,7,255,228,0,111,255,208,3,248,0,127,255,224,255,253,0,3,248,0,7,255,240,63,144,0,3,248,0,0,47,192,20,0,0,3,248,0,0,1,64, + // 0x69fd 槽 + 253,105,36,36,68,38,1,252,0,15,192,0,1,248,31,128,0,0,15,192,0,1,248,31,128,0,0,15,192,0,1,248,31,128,0,0,15,192,63,255,255,255,255,253,0,15,192,63,255,255,255,255,253,0,15,192,63,255,255,255,255,253,0,15,192,0,1,248,31,128,0,0,15,192,0,1,248,31,128,0,21,95,213,15,255,255,255,255,244,63,255,255,207,255,255,255,255,244,63,255,255,207,213,253,111,151,244,63,255,255,207,192,248,31,2,244,0,47,192,15,192,248,31,2,244,0,63,192,15,255,255,255,255,244,0,63,192,15,255,255,255,255,244,0,127,224,15,213,249,111,87,244,0,191,244,15,192,248,31,2,244,0,255,252,15,192,248,31,2,244,1,255,254,15,255,255,255,255,244,3,255,239,79,255,255,255,255,244,3,239,207,197,85,85,85,85,80,11,223,199,192,0,0,0,0,0,15,207,195,1,255,255,255,255,192,47,79,192,1,255,255,255,255,192,63,15,192,1,254,170,170,191,192,190,15,192,1,252,0,0,47,192,60,15,192,1,252,0,0,47,192,40,15,192,1,255,255,255,255,192,0,15,192,1,255,255,255,255,192,0,15,192,1,253,85,85,127,192,0,15,192,1,252,0,0,47,192,0,15,192,1,252,0,0,47,192,0,15,192,1,255,255,255,255,192,0,15,192,1,255,255,255,255,192,0,15,192,1,254,170,170,191,192,0,15,192,1,252,0,0,31,192, + // 0x6a59 橙 + 89,106,36,36,68,38,1,252,0,15,208,0,0,0,25,0,0,0,15,208,11,255,244,126,5,0,0,15,208,15,255,252,63,31,64,0,15,208,15,255,252,63,191,128,0,15,208,0,2,244,47,253,0,0,15,208,4,3,240,15,224,32,0,15,208,15,75,240,15,224,248,0,15,208,47,255,208,7,247,253,63,255,255,219,255,192,3,255,244,63,255,255,209,255,64,1,255,192,63,255,255,208,255,255,255,255,0,21,95,229,66,255,255,255,255,128,0,47,208,11,255,255,255,239,224,0,63,208,47,240,0,0,15,252,0,63,224,255,192,0,0,3,255,0,127,244,255,0,0,0,0,252,0,191,252,61,255,255,255,255,96,0,255,255,0,255,255,255,255,64,1,255,255,128,254,170,170,191,64,2,255,223,208,252,0,0,63,64,3,239,215,240,252,0,0,63,64,11,223,210,192,252,0,0,63,64,15,207,208,64,254,170,170,191,64,47,143,208,0,255,255,255,255,64,127,15,208,0,255,255,255,255,64,190,15,208,0,1,0,1,144,0,60,15,208,0,47,64,2,252,0,40,15,208,0,31,192,3,248,0,0,15,208,0,15,192,7,240,0,0,15,208,0,15,208,11,224,0,0,15,208,0,11,224,15,192,0,0,15,208,0,7,128,11,128,0,0,15,208,127,255,255,255,255,253,0,15,208,127,255,255,255,255,253,0,15,208,127,255,255,255,255,253,0,15,208,0,0,0,0,0,0, + // 0x6a5f 機 + 95,106,36,36,68,38,1,252,0,31,128,0,64,31,128,16,0,0,47,128,2,244,31,128,189,0,0,47,128,3,240,31,128,252,0,0,47,128,7,208,31,129,244,0,0,47,128,15,194,31,131,240,128,0,47,128,127,75,239,175,195,240,0,47,128,255,15,223,255,135,224,0,47,128,191,47,15,239,207,192,63,255,255,95,254,15,199,255,128,63,255,255,71,252,15,193,255,0,63,255,255,66,244,15,192,253,16,0,63,192,3,231,79,192,248,240,0,63,128,11,203,207,195,240,248,0,127,192,31,71,223,199,225,252,0,191,208,191,255,239,255,255,253,0,255,240,255,255,255,255,255,254,0,255,248,255,166,251,233,180,46,1,255,252,0,0,75,208,252,0,2,255,190,0,0,7,224,191,0,3,255,159,64,0,7,224,47,128,7,239,143,255,255,255,255,255,252,11,239,139,191,255,255,255,255,252,15,175,128,191,255,255,255,255,252,47,47,128,7,240,2,244,9,0,63,47,128,7,240,1,248,47,192,189,47,128,11,248,0,252,63,64,124,47,128,11,255,64,252,254,0,56,47,128,15,255,224,191,252,0,16,47,128,31,207,244,127,244,0,0,47,128,47,130,240,63,208,20,0,47,128,127,64,128,255,192,46,0,47,128,255,0,7,255,208,62,0,47,131,253,0,127,251,244,126,0,47,139,248,7,255,131,255,252,0,47,131,224,3,253,0,255,252,0,31,128,128,0,144,0,31,224, + // 0x6aa2 檢 + 162,106,36,37,77,38,1,251,0,15,192,0,0,15,224,0,0,0,15,208,0,0,47,248,0,0,0,15,208,0,0,63,253,0,0,0,15,208,0,0,255,255,64,0,0,15,208,0,3,252,63,192,0,0,15,208,0,11,244,31,240,0,0,15,208,0,47,224,7,253,0,0,15,208,0,191,128,1,255,128,5,95,213,67,254,0,0,127,240,63,255,255,223,255,255,255,255,254,63,255,255,255,239,255,255,247,253,63,255,255,255,79,255,255,240,252,0,31,208,28,0,0,0,0,32,0,47,208,0,0,0,0,0,0,0,63,224,5,85,84,21,85,80,0,63,240,11,255,253,63,255,240,0,191,252,11,255,253,63,255,240,0,255,254,11,192,125,62,2,240,1,255,255,75,192,125,62,2,240,2,255,223,203,192,125,62,2,240,3,239,215,235,192,125,62,2,240,11,207,211,203,255,253,63,255,240,15,207,209,75,255,253,63,255,240,47,143,208,6,170,168,42,170,160,63,15,208,0,25,0,1,164,0,190,15,208,0,63,128,2,248,0,60,15,208,0,63,64,3,244,0,40,15,208,0,127,0,3,240,0,0,15,208,0,255,0,11,244,0,0,15,208,1,255,208,15,253,0,0,15,208,3,255,244,47,255,128,0,15,208,15,242,252,191,191,224,0,15,208,63,208,250,254,15,252,0,15,208,255,128,43,252,2,254,0,15,208,189,0,3,224,0,188,0,15,192,36,0,0,64,0,32,0,0,0,0,0,0,0,0,0, + // 0x6b62 止 + 98,107,34,34,50,38,2,254,0,0,0,0,106,0,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,21,0,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,255,255,255,0,0,63,128,0,127,255,255,255,0,0,63,128,0,127,255,255,255,0,0,63,128,0,127,170,170,170,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,0,63,128,0,127,64,0,0,0,170,191,234,170,191,170,170,170,160,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x6b63 正 + 99,107,34,32,32,38,2,253,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,21,85,85,85,255,85,85,85,64,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,255,255,252,0,0,63,128,0,255,255,255,252,0,0,63,128,0,255,255,255,252,0,0,63,128,0,255,85,85,84,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,0,63,128,0,255,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,85,85,85,85,85,85,85,85,80, + // 0x6b65 步 + 101,107,34,36,68,38,2,252,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,5,64,2,252,0,0,0,0,0,31,192,2,252,0,0,0,0,0,31,192,2,255,255,255,240,0,0,31,192,2,255,255,255,240,0,0,31,192,2,255,255,255,240,0,0,31,192,2,253,85,85,80,0,0,31,192,2,252,0,0,0,0,0,31,192,2,252,0,0,0,0,0,31,192,2,252,0,0,0,0,85,111,213,87,253,85,85,85,80,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,2,252,0,0,0,0,0,2,144,2,252,0,0,0,0,0,7,252,2,252,0,6,0,0,0,15,244,2,252,0,15,240,0,0,63,224,2,252,0,31,224,0,0,255,192,2,252,0,63,208,0,7,255,0,2,252,0,127,192,0,47,252,0,2,252,0,255,64,0,191,240,0,3,252,2,254,0,0,47,192,7,255,248,11,252,0,0,10,0,3,255,244,47,244,0,0,0,0,2,255,144,191,224,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,47,254,0,0,0,0,0,0,2,255,244,0,0,0,0,0,0,127,255,192,0,0,0,0,0,111,255,253,0,0,0,0,2,191,255,255,208,0,0,0,0,2,255,255,249,0,0,0,0,0,0,255,254,64,0,0,0,0,0,0,185,64,0,0,0,0,0,0, + // 0x6b78 歸 + 120,107,36,36,68,38,1,252,0,10,144,0,0,0,0,0,0,0,15,224,0,6,170,170,170,0,0,15,192,0,15,255,255,255,64,6,175,234,164,15,255,255,255,64,11,255,255,248,0,0,0,63,64,11,255,255,248,0,0,0,63,64,11,208,1,249,255,255,255,255,253,11,208,1,249,255,255,255,255,253,11,229,86,248,170,170,170,191,168,11,255,255,248,0,0,0,63,64,11,255,255,248,5,85,85,127,64,11,208,0,0,15,255,255,255,64,11,234,170,164,15,255,255,255,64,11,255,255,252,0,0,0,0,0,11,255,255,252,170,170,170,170,164,11,208,0,252,255,255,255,255,248,11,208,0,252,255,255,255,255,248,11,234,170,252,252,1,252,1,248,11,255,255,252,252,1,252,1,248,11,255,255,252,188,1,252,1,248,0,3,240,0,0,1,252,0,0,0,3,240,0,47,255,255,255,208,11,195,240,0,47,255,255,255,208,15,195,255,252,47,255,255,255,208,15,195,255,252,47,65,252,11,208,15,195,255,252,47,65,252,11,208,15,195,240,0,47,65,252,11,208,15,195,240,0,47,65,252,11,208,15,195,240,0,47,65,252,11,208,15,195,245,174,47,65,252,11,208,15,219,255,254,47,65,252,255,208,127,255,255,254,47,65,252,255,192,127,255,255,148,31,65,252,105,0,63,249,64,0,0,1,252,0,0,36,0,0,0,0,1,252,0,0,0,0,0,0,0,0,168,0,0, + // 0x6bbc 殼 + 188,107,35,36,68,38,2,252,0,3,240,0,0,0,0,0,0,0,3,240,0,0,0,0,0,0,0,3,240,0,1,255,255,244,0,255,255,255,255,193,255,255,244,0,255,255,255,255,193,255,255,244,0,170,171,250,170,65,248,3,244,0,0,3,240,0,1,248,3,244,0,0,3,240,0,1,248,3,244,0,47,255,255,254,1,248,3,244,0,47,255,255,254,2,248,3,244,180,26,170,170,169,3,244,3,244,188,0,0,0,0,7,240,3,244,188,106,170,170,170,79,240,3,255,248,255,255,255,255,255,208,2,255,244,255,255,255,255,255,192,0,191,224,252,0,0,15,239,0,0,0,0,252,0,0,15,136,0,0,0,0,254,255,255,239,143,255,255,255,64,22,255,255,229,15,255,255,255,128,1,170,170,144,15,255,255,255,64,0,0,0,0,1,180,0,127,0,0,0,0,0,3,248,0,255,0,3,255,255,240,1,252,1,253,0,3,255,255,240,0,253,2,252,0,3,250,175,240,0,191,7,244,0,3,240,7,240,0,63,143,240,0,3,240,7,240,0,31,255,208,0,3,240,7,240,0,15,255,128,0,7,240,7,241,128,7,255,0,0,7,240,7,255,208,31,255,64,0,15,224,47,255,208,191,255,224,0,47,192,63,254,11,255,175,254,0,127,128,47,145,255,253,7,255,224,255,0,4,3,255,224,0,255,244,60,0,0,1,254,0,0,31,208,4,0,0,0,208,0,0,1,128, + // 0x6bd4 比 + 212,107,36,35,59,38,1,253,0,26,128,0,0,168,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,7,128,0,47,192,0,1,253,0,47,208,0,47,192,0,1,253,1,255,244,0,47,255,255,193,253,31,255,208,0,47,255,255,193,254,255,254,0,0,47,255,255,193,255,255,224,0,0,47,229,85,65,255,253,0,0,0,47,192,0,1,255,144,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,0,0,47,192,0,1,253,0,0,160,0,47,192,0,1,253,0,0,190,0,47,192,0,17,253,0,0,190,0,47,192,91,241,253,0,0,254,0,47,239,255,245,253,0,0,253,1,191,255,255,244,253,0,0,253,127,255,255,254,64,255,85,87,252,63,255,254,64,0,255,255,255,248,63,254,64,0,0,127,255,255,240,25,0,0,0,0,11,255,255,128, + // 0x6c92 沒 + 146,108,35,36,68,38,2,252,1,0,0,0,169,0,0,0,0,3,224,0,0,255,0,0,0,0,15,253,0,0,254,0,0,0,0,11,255,192,0,254,0,0,0,0,1,255,240,1,255,255,255,255,0,0,31,240,2,255,255,255,255,0,0,3,192,3,255,255,255,255,0,0,0,64,7,248,0,0,191,0,0,0,0,11,240,0,0,191,0,0,0,0,15,240,0,0,254,0,16,0,0,47,208,0,0,254,0,125,0,0,127,192,0,0,253,0,255,224,0,255,64,0,2,252,0,191,253,3,254,0,15,255,252,0,11,255,15,252,0,11,255,244,0,0,254,7,244,0,7,255,208,0,0,44,0,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,0,0,0,0,255,255,255,255,255,0,0,0,0,255,255,255,255,254,0,0,3,128,6,244,0,3,252,0,0,11,224,7,248,0,7,248,0,0,15,240,2,253,0,15,240,0,0,47,208,0,255,0,63,224,0,0,63,192,0,127,192,255,192,0,0,191,64,0,47,247,255,0,0,0,255,0,0,11,255,252,0,0,2,253,0,0,3,255,240,0,0,3,252,0,0,11,255,244,0,0,15,244,0,0,191,255,255,128,0,31,240,0,111,255,247,255,249,0,63,208,31,255,255,64,127,255,244,47,192,15,255,244,0,11,255,240,7,0,11,254,0,0,0,127,192,0,0,2,64,0,0,0,2,128, + // 0x6d88 消 + 136,109,34,37,77,38,2,251,1,0,0,0,0,127,0,0,0,7,192,0,20,0,127,0,9,0,31,248,1,252,0,127,0,31,208,15,255,64,254,0,127,0,63,192,1,255,208,191,64,127,0,63,128,0,63,224,63,192,127,0,191,0,0,11,128,47,208,127,1,254,0,0,1,0,15,240,127,3,252,0,0,0,0,11,224,127,3,244,0,0,0,0,2,0,127,0,96,0,0,0,0,0,0,127,0,0,0,56,0,0,191,255,255,255,255,0,255,128,0,191,255,255,255,255,0,255,244,0,191,255,255,255,255,0,31,254,0,191,85,85,85,191,0,2,255,0,191,0,0,0,127,0,0,125,0,191,0,0,0,127,0,0,24,0,191,0,0,0,127,0,0,0,0,191,255,255,255,255,0,0,0,0,191,255,255,255,255,0,0,0,0,191,255,255,255,255,0,0,7,0,191,0,0,0,127,0,0,15,192,191,0,0,0,127,0,0,15,208,191,0,0,0,127,0,0,47,192,191,0,0,0,127,0,0,63,128,191,255,255,255,255,0,0,191,0,191,255,255,255,255,0,0,254,0,191,255,255,255,255,0,2,253,0,191,0,0,0,127,0,3,252,0,191,0,0,0,127,0,11,244,0,191,0,0,0,127,0,15,240,0,191,0,0,0,127,0,63,208,0,191,0,0,80,191,0,63,192,0,191,0,1,255,255,0,15,64,0,191,0,0,255,254,0,2,0,0,191,0,0,191,228,0,0,0,0,0,0,0,0,0,0, + // 0x6de1 淡 + 225,109,36,35,59,38,1,253,0,0,0,0,0,47,128,0,0,0,224,0,0,0,47,128,0,0,3,254,0,1,0,63,128,4,0,7,255,208,11,240,63,128,31,208,0,191,248,15,208,63,128,63,192,0,15,252,31,192,63,64,127,128,0,1,240,47,128,63,64,255,0,0,0,64,127,64,127,2,252,0,0,0,0,255,0,191,3,244,0,0,0,0,124,0,255,209,224,0,0,0,0,0,2,255,252,0,0,14,0,0,0,7,255,255,128,0,63,208,0,0,31,244,255,248,0,127,253,0,0,191,224,31,255,0,11,255,128,31,255,128,2,255,224,0,255,194,255,253,0,0,63,240,0,31,0,255,208,63,128,11,208,0,0,0,121,0,63,128,1,128,0,0,0,0,0,63,128,0,0,0,0,0,11,144,63,64,15,144,0,2,0,15,208,63,64,31,240,0,3,208,31,192,63,64,63,192,0,11,240,63,128,127,192,127,128,0,15,240,127,64,191,192,255,0,0,47,208,255,0,255,226,253,0,0,63,194,253,1,255,247,248,0,0,191,64,184,3,255,252,160,0,0,255,0,0,11,250,254,0,0,2,254,0,0,31,240,255,64,0,7,252,0,0,191,208,127,224,0,15,244,0,11,255,128,31,253,0,31,240,6,255,253,0,7,255,228,15,208,15,255,240,0,0,255,253,2,192,7,255,64,0,0,31,244,0,0,2,144,0,0,0,0,160, + // 0x6e05 清 + 5,110,36,37,77,38,1,251,0,128,0,0,0,47,128,0,0,2,253,0,0,0,63,128,0,0,7,255,192,106,170,191,234,170,160,0,255,244,255,255,255,255,255,240,0,31,252,255,255,255,255,255,240,0,3,240,0,0,63,128,0,0,0,0,160,0,0,63,128,0,0,0,0,0,63,255,255,255,255,208,0,0,0,63,255,255,255,255,208,0,0,0,21,85,127,213,85,64,0,0,0,0,0,63,128,0,0,14,0,0,0,0,63,128,0,0,63,224,3,255,255,255,255,255,253,127,254,3,255,255,255,255,255,253,11,255,194,170,170,170,170,170,169,0,191,192,0,0,0,0,0,0,0,31,0,6,170,170,170,170,64,0,1,0,11,255,255,255,255,128,0,0,0,11,255,255,255,255,128,0,0,0,11,224,0,0,47,128,0,0,0,11,224,0,0,47,128,0,0,208,11,229,85,85,127,128,0,2,244,11,255,255,255,255,128,0,3,248,11,255,255,255,255,128,0,11,244,11,224,0,0,47,128,0,15,240,11,224,0,0,47,128,0,47,208,11,229,85,85,127,128,0,63,192,11,255,255,255,255,128,0,191,64,11,255,255,255,255,128,0,255,0,11,224,0,0,47,128,2,253,0,11,224,0,0,47,128,7,252,0,11,224,0,0,47,128,15,244,0,11,224,0,0,63,128,15,240,0,11,224,0,127,255,128,3,208,0,11,224,0,63,255,0,0,64,0,11,224,0,47,249,0,0,0,0,0,0,0,0,0,0, + // 0x6e2c 測 + 44,110,34,37,77,38,1,251,0,0,0,0,0,0,0,3,240,2,224,0,0,0,0,0,3,240,7,253,3,255,255,240,0,3,240,11,255,131,255,255,240,0,3,240,0,255,243,255,255,240,125,3,240,0,31,211,240,3,240,190,3,240,0,3,131,240,3,240,190,3,240,0,0,3,240,3,240,190,3,240,0,0,3,240,3,240,190,3,240,0,0,3,255,255,240,190,3,240,0,0,3,255,255,240,190,3,240,14,0,3,255,255,240,190,3,240,47,224,3,240,3,240,190,3,240,127,253,3,240,3,240,190,3,240,11,255,67,240,3,240,190,3,240,0,255,3,240,3,240,190,3,240,0,44,3,255,255,240,190,3,240,0,0,3,255,255,240,190,3,240,0,0,3,255,255,240,190,3,240,0,0,3,240,3,240,190,3,240,0,0,3,240,3,240,190,3,240,0,4,3,240,3,240,190,3,240,0,15,67,240,3,240,190,3,240,0,47,195,255,255,240,190,3,240,0,63,131,255,255,240,190,3,240,0,127,67,255,255,240,189,3,240,0,191,0,0,1,0,0,3,240,0,254,0,248,7,128,0,3,240,2,252,2,252,31,208,0,3,240,3,252,3,248,15,240,0,3,240,7,244,11,240,3,252,0,3,240,15,240,31,224,1,253,0,3,240,31,224,63,192,0,255,5,91,240,47,192,255,64,0,125,31,255,240,7,128,254,0,0,16,15,255,208,0,0,40,0,0,0,11,254,64,0,0,0,0,0,0,0,0,0, + // 0x6e90 源 + 144,110,35,37,77,38,2,251,1,0,0,0,0,0,0,0,0,11,208,0,0,0,0,0,0,0,31,253,3,255,255,255,255,255,240,11,255,131,255,255,255,255,255,240,1,255,211,255,255,255,255,255,240,0,47,131,244,0,11,244,0,0,0,7,3,240,0,11,240,0,0,0,0,3,240,0,15,240,0,0,0,0,3,240,0,15,208,0,0,0,0,3,240,255,255,255,255,192,0,0,3,240,255,255,255,255,192,61,0,3,240,254,170,170,191,192,255,192,3,240,252,0,0,47,192,255,248,7,240,252,0,0,47,192,31,254,7,240,254,85,85,127,192,2,252,7,240,255,255,255,255,192,0,116,7,240,255,255,255,255,192,0,0,7,240,252,0,0,47,192,0,0,7,240,252,0,0,47,192,0,0,11,240,252,0,0,47,192,0,0,11,240,255,255,255,255,192,0,40,15,224,255,255,255,255,192,0,63,15,224,170,175,250,170,64,0,127,15,208,0,11,240,0,0,0,255,15,208,16,11,240,24,0,1,253,31,192,127,11,240,254,0,2,252,47,192,254,11,240,191,0,3,248,63,129,252,11,240,63,192,11,244,63,67,252,11,240,47,208,15,240,191,7,244,11,240,15,240,31,208,255,15,224,11,240,11,244,63,193,253,63,192,11,240,3,248,127,131,252,31,64,11,240,2,224,191,11,244,2,11,255,224,0,0,14,7,240,0,3,255,208,0,0,0,0,80,0,3,254,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x6e96 準 + 150,110,34,36,68,38,2,252,0,128,0,7,144,7,144,0,0,3,253,0,15,240,11,244,0,0,7,255,208,47,208,15,224,0,0,1,191,240,63,192,47,192,0,0,0,15,192,255,255,255,255,255,64,0,1,66,255,255,255,255,255,64,16,0,11,255,255,255,255,255,64,126,64,31,253,0,63,0,0,0,255,244,127,253,0,63,0,0,0,127,254,255,255,170,191,170,168,0,7,244,254,255,255,255,255,252,0,0,96,40,255,255,255,255,252,0,0,0,0,253,0,63,0,0,0,0,2,128,253,0,63,0,0,0,0,11,208,255,170,191,170,168,0,0,31,224,255,255,255,255,253,0,0,127,192,255,255,255,255,253,0,1,255,0,253,0,63,0,0,0,7,252,0,253,0,63,0,0,0,31,244,0,255,255,255,255,255,208,63,208,0,255,255,255,255,255,208,47,128,0,255,255,255,255,255,208,11,0,0,0,0,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0, + // 0x6eab 溫 + 171,110,35,36,68,38,2,252,1,0,0,0,0,0,0,0,0,7,208,0,0,0,0,0,0,0,15,253,0,191,255,255,255,248,0,15,255,128,191,255,255,255,248,0,1,255,224,191,170,170,171,248,0,0,47,192,190,0,104,2,248,0,0,7,64,190,0,248,2,248,0,0,0,0,190,0,244,2,248,0,0,0,0,190,2,248,2,248,0,0,0,0,190,3,254,2,248,0,0,0,0,190,15,223,194,248,0,61,0,0,190,127,7,242,248,0,255,208,0,190,189,1,242,248,0,255,252,0,190,16,0,66,248,0,31,254,0,191,170,170,171,248,0,1,252,0,191,255,255,255,248,0,0,52,0,191,255,255,255,248,0,0,0,0,0,0,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,255,255,255,255,255,0,0,8,3,255,255,255,255,255,0,0,31,67,255,255,255,255,255,0,0,63,195,240,63,3,224,127,0,0,63,131,240,63,3,224,127,0,0,191,3,240,63,3,224,127,0,0,254,3,240,63,3,224,127,0,2,253,3,240,63,3,224,127,0,3,252,3,240,63,3,224,127,0,11,244,3,240,63,3,224,127,0,15,240,3,240,63,3,224,127,0,47,208,3,244,63,3,224,127,0,63,192,255,255,255,255,255,255,248,191,64,255,255,255,255,255,255,248,31,0,255,255,255,255,255,255,248,1,0,0,0,0,0,0,0,0, + // 0x6fc0 激 + 192,111,35,37,77,38,2,251,0,0,0,14,128,0,248,0,0,11,128,0,31,208,0,253,0,0,31,244,0,47,192,0,252,0,0,31,254,0,63,128,1,252,0,0,2,255,175,255,255,194,252,0,0,0,127,47,255,255,194,248,0,0,0,13,47,170,175,195,244,0,0,0,0,47,0,15,195,255,255,248,0,0,47,0,15,199,255,255,248,0,0,47,255,255,203,255,255,248,0,0,47,255,255,207,224,47,192,61,0,47,149,95,223,224,47,128,255,192,47,0,15,255,224,47,64,255,244,47,0,15,255,240,63,64,31,252,47,255,255,255,240,63,0,2,248,47,255,255,255,240,63,0,0,112,26,191,234,254,244,63,0,0,0,0,31,192,56,248,126,0,0,0,0,31,192,0,252,190,0,0,0,255,255,255,244,188,253,0,0,0,255,255,255,244,125,252,0,0,52,255,255,255,244,63,252,0,0,126,0,252,0,0,63,248,0,0,191,0,252,0,0,47,240,0,0,253,1,255,255,192,15,240,0,2,252,1,255,255,192,15,208,0,3,252,2,255,255,192,31,240,0,7,244,3,244,15,192,63,244,0,11,240,3,240,31,192,191,252,0,15,224,11,240,31,129,254,254,0,47,208,15,208,31,135,252,191,64,63,192,63,192,47,159,244,63,208,127,128,191,64,63,191,224,31,240,191,2,254,31,255,255,192,11,248,14,3,252,15,255,191,0,2,240,0,0,224,10,164,28,0,0,128,0,0,0,0,0,0,0,0,0, + // 0x7121 無 + 33,113,34,36,68,38,2,252,0,3,144,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,127,255,255,255,255,255,255,64,1,255,255,255,255,255,255,255,64,3,255,255,255,255,255,255,255,64,15,255,128,252,7,224,47,192,0,63,255,128,252,7,224,47,192,0,255,255,128,252,7,224,47,192,0,191,47,128,252,7,224,47,192,0,29,47,128,252,7,224,47,192,0,0,47,128,252,7,224,47,192,0,0,47,128,252,7,240,47,192,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,47,128,252,7,224,47,192,0,0,47,128,252,7,224,47,192,0,0,47,128,252,7,224,47,192,0,0,47,128,252,7,224,47,192,0,0,47,128,252,7,224,47,192,0,0,47,128,252,7,240,47,192,0,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,0,0,0,0,0,0,0,0,0,0,144,0,0,0,0,0,160,0,0,254,2,244,2,240,11,244,0,2,252,3,244,3,244,3,252,0,3,248,2,248,2,252,1,255,0,11,240,2,252,1,252,0,191,128,31,224,1,252,0,254,0,63,192,63,192,1,252,0,255,0,31,240,255,64,1,252,0,191,0,15,240,26,0,0,80,0,16,0,7,64, + // 0x71b1 熱 + 177,113,35,37,77,38,2,251,0,2,240,0,0,47,128,0,0,0,3,240,0,0,47,128,0,0,5,87,249,85,0,47,128,0,0,15,255,255,254,0,47,128,0,0,15,255,255,254,0,47,128,0,0,0,3,240,0,31,255,255,248,0,0,3,240,0,31,255,255,248,0,106,171,250,170,95,255,255,248,0,191,255,255,255,223,255,66,248,0,191,255,255,255,192,63,66,248,0,0,188,15,64,0,63,2,248,0,0,252,15,66,0,63,2,248,0,3,248,15,71,206,63,2,248,0,31,240,15,255,239,255,2,248,0,255,192,11,255,111,255,2,248,0,125,3,240,84,3,255,130,248,0,0,3,240,0,0,255,242,248,0,26,171,250,169,0,255,254,248,16,47,255,255,255,1,254,254,248,120,47,255,255,255,3,248,182,248,124,0,3,240,0,3,244,18,248,124,0,3,240,0,11,240,2,248,124,0,3,245,171,159,208,2,248,184,106,255,255,255,255,128,2,255,248,255,255,255,255,255,0,1,255,244,255,255,233,64,189,0,0,127,224,85,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,253,0,0,0,80,2,240,0,2,253,3,244,7,240,11,252,0,3,252,3,244,3,248,3,253,0,11,244,3,248,2,252,0,255,0,31,240,2,252,1,252,0,127,192,63,192,2,252,0,254,0,63,208,191,64,2,252,0,255,0,15,240,9,0,1,148,0,80,0,11,64,0,0,0,0,0,0,0,0,0, + // 0x71c8 燈 + 200,113,36,36,68,38,1,252,0,0,0,0,0,0,96,0,0,0,15,192,0,0,2,244,24,0,0,15,192,15,255,249,248,127,0,0,15,192,15,255,252,253,254,0,0,15,192,10,171,248,191,244,0,0,15,192,0,3,240,63,192,80,0,15,194,135,71,240,47,129,248,0,15,195,255,239,208,15,215,244,10,79,203,231,255,192,11,255,208,15,143,207,193,255,64,3,255,0,15,143,223,64,255,0,1,255,0,15,79,255,3,255,255,255,255,192,15,79,253,15,251,255,255,239,244,31,15,196,127,199,255,255,203,255,47,15,195,255,0,0,0,2,253,63,15,194,252,0,0,0,0,56,125,15,192,210,255,255,255,255,0,124,15,192,2,255,255,255,255,0,0,15,192,2,254,170,170,255,0,0,31,192,2,248,0,0,127,0,0,31,192,2,248,0,0,127,0,0,47,128,2,248,0,0,127,0,0,47,192,2,254,170,170,255,0,0,63,224,2,255,255,255,255,0,0,63,244,2,255,255,255,255,0,0,127,252,0,1,0,2,64,0,0,191,255,0,63,0,3,244,0,0,253,63,128,47,128,7,240,0,1,252,31,208,31,192,11,224,0,3,248,15,224,15,208,15,208,0,11,240,3,128,11,224,31,192,0,15,224,1,0,7,128,27,64,0,63,192,0,255,255,255,255,255,252,127,128,0,255,255,255,255,255,252,30,0,0,255,255,255,255,255,252,4,0,0,0,0,0,0,0,0, + // 0x7247 片 + 71,114,32,37,40,38,2,251,0,0,0,0,7,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,64,0,11,240,0,0,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,234,170,170,170,170,170,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,64,0,0,0,0,0,0,127,0,0,0,0,0,0,0,191,170,170,170,170,168,0,0,191,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,255,255,255,255,255,252,0,0,254,0,0,0,3,252,0,1,254,0,0,0,3,252,0,2,253,0,0,0,3,252,0,3,252,0,0,0,3,252,0,7,252,0,0,0,3,252,0,11,244,0,0,0,3,252,0,15,240,0,0,0,3,252,0,47,224,0,0,0,3,252,0,127,192,0,0,0,3,252,0,255,128,0,0,0,3,252,0,255,0,0,0,0,3,252,0,61,0,0,0,0,3,252,0,24,0,0,0,0,3,252,0,0,0,0,0,0,0,0,0, + // 0x7269 物 + 105,114,35,36,68,38,1,252,0,2,244,0,2,144,0,0,0,0,2,248,0,7,240,0,0,0,5,66,248,0,11,240,0,0,0,11,210,248,0,15,224,0,0,0,11,210,248,0,15,192,0,0,0,15,194,248,0,31,192,0,0,0,15,194,248,0,63,213,85,85,84,15,194,248,0,63,255,255,255,252,15,255,255,240,191,255,255,255,252,31,255,255,240,255,255,255,255,252,47,255,255,242,252,15,194,249,252,63,87,249,83,248,31,131,245,252,63,2,248,11,240,63,3,241,252,126,2,248,31,224,63,7,241,252,189,2,248,63,192,190,11,226,252,124,2,248,47,64,252,15,210,248,4,2,248,6,2,252,15,194,248,0,2,248,4,3,244,47,130,248,0,2,254,248,7,240,63,67,248,0,7,255,252,15,208,127,3,244,1,191,255,248,63,192,190,3,244,127,255,254,64,127,64,252,3,244,127,255,248,0,254,2,252,3,240,63,230,248,3,252,3,244,3,240,40,2,248,15,244,11,240,7,240,0,2,248,15,224,15,224,7,240,0,2,248,2,128,47,192,11,240,0,2,248,0,0,127,128,11,224,0,2,248,0,0,255,0,15,224,0,2,248,0,3,253,0,15,208,0,2,248,0,15,248,0,31,192,0,2,248,0,47,240,0,63,192,0,2,248,0,255,192,191,255,128,0,2,248,0,127,0,127,255,0,0,2,248,0,12,0,63,253,0,0,2,248,0,0,0,21,64,0, + // 0x7387 率 + 135,115,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,192,0,0,0,31,208,0,0,0,0,1,0,0,47,192,0,0,52,0,11,208,0,127,0,64,0,255,0,47,248,5,253,2,244,3,254,0,7,255,31,248,7,240,31,244,0,0,191,239,240,31,208,191,192,0,0,31,67,253,63,128,62,0,0,0,5,0,191,254,0,0,0,0,0,0,0,31,248,96,0,0,0,0,0,144,15,243,244,56,0,0,0,31,224,63,192,253,255,64,0,2,255,240,191,0,191,255,244,0,127,255,191,255,255,255,159,254,0,191,244,63,255,255,255,194,255,192,63,64,63,255,250,159,224,63,208,20,0,0,3,248,3,208,11,64,0,0,0,3,248,1,0,0,0,0,0,0,3,248,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,21,85,85,87,253,85,85,85,80,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0, + // 0x7528 用 + 40,117,33,34,50,38,1,252,0,21,85,85,85,85,85,85,64,0,63,255,255,255,255,255,255,192,0,63,255,255,255,255,255,255,192,0,63,255,255,255,255,255,255,192,0,63,64,0,127,0,0,63,192,0,63,64,0,127,0,0,63,192,0,63,64,0,127,0,0,63,192,0,63,64,0,127,0,0,63,192,0,63,64,0,127,0,0,63,192,0,63,85,85,191,85,85,127,192,0,63,255,255,255,255,255,255,192,0,63,255,255,255,255,255,255,192,0,63,255,255,255,255,255,255,192,0,63,64,0,127,0,0,63,192,0,63,64,0,127,0,0,63,192,0,127,0,0,127,0,0,63,192,0,127,0,0,127,0,0,63,192,0,127,0,0,127,0,0,63,192,0,127,0,0,127,0,0,63,192,0,127,255,255,255,255,255,255,192,0,191,255,255,255,255,255,255,192,0,191,255,255,255,255,255,255,192,0,255,85,85,191,85,85,127,192,0,254,0,0,127,0,0,63,192,1,253,0,0,127,0,0,63,192,2,252,0,0,127,0,0,63,192,3,252,0,0,127,0,0,63,192,7,248,0,0,127,0,0,63,192,11,240,0,0,127,0,0,63,192,31,224,0,0,127,0,0,63,128,63,192,0,0,127,3,255,255,128,127,128,0,0,127,2,255,255,64,31,0,0,0,127,1,255,253,0,5,0,0,0,0,0,85,0,0, + // 0x754c 界 + 76,117,34,36,68,38,2,251,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,253,0,3,248,0,7,240,0,0,253,0,3,248,0,7,240,0,0,253,0,3,248,0,7,240,0,0,253,0,3,248,0,7,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,170,171,254,170,175,240,0,0,253,0,3,248,0,7,240,0,0,253,0,3,248,0,7,240,0,0,253,0,3,248,0,7,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,11,248,1,255,0,0,0,0,0,63,240,0,191,192,0,0,0,1,255,192,0,63,244,0,0,0,11,254,0,0,15,254,0,0,0,191,248,0,0,2,255,224,0,27,255,239,192,0,26,255,254,0,255,254,31,192,0,47,223,255,240,127,244,31,192,0,47,193,255,224,47,64,31,192,0,47,192,31,192,0,0,47,192,0,47,192,1,0,0,0,63,192,0,47,192,0,0,0,0,127,128,0,47,192,0,0,0,0,255,64,0,47,192,0,0,0,3,255,0,0,47,192,0,0,0,31,252,0,0,47,192,0,0,1,255,244,0,0,47,192,0,0,3,255,208,0,0,47,192,0,0,1,255,0,0,0,47,192,0,0,0,180,0,0,0,47,192,0,0,0,0,0,0,0,0,0,0,0, + // 0x767d 白 + 125,118,28,36,252,38,5,252,0,0,2,233,0,0,0,0,0,3,254,0,0,0,0,0,3,252,0,0,0,0,0,11,248,0,0,0,0,0,15,244,0,0,0,0,0,15,240,0,0,0,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,170,170,170,170,170,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,85,85,85,85,85,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,191,170,170,170,170,170,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,0,0,0,0,0,255,191,0,0,0,0,0,255,190,0,0,0,0,0,170, + // 0x7684 的 + 132,118,33,36,68,38,3,252,0,31,144,0,2,228,0,0,0,0,31,208,0,3,248,0,0,0,0,47,192,0,3,244,0,0,0,0,63,128,0,7,240,0,0,0,0,63,64,0,15,240,0,0,0,0,127,0,0,15,208,0,0,0,191,255,255,240,47,255,255,255,64,191,255,255,240,63,255,255,255,64,191,255,255,240,127,255,255,255,64,190,0,7,240,255,0,0,127,0,189,0,7,241,253,0,0,63,0,189,0,7,243,252,0,0,63,0,189,0,7,251,248,0,0,63,0,189,0,7,255,240,0,0,63,0,189,0,7,247,208,0,0,63,0,189,0,7,240,129,128,0,127,0,190,0,7,240,15,208,0,127,0,191,255,255,240,15,240,0,127,0,191,255,255,240,3,252,0,127,0,191,255,255,240,1,254,0,127,0,189,0,7,240,0,191,64,191,0,189,0,7,240,0,63,192,190,0,189,0,7,240,0,31,224,190,0,189,0,7,240,0,15,240,190,0,189,0,7,240,0,7,192,254,0,189,0,7,240,0,1,0,253,0,189,0,7,240,0,0,0,253,0,189,0,7,240,0,0,0,253,0,190,0,7,240,0,0,1,252,0,191,255,255,240,0,0,1,252,0,191,255,255,240,0,0,3,252,0,191,255,255,240,0,0,7,248,0,189,0,0,0,0,255,255,244,0,189,0,0,0,0,191,255,224,0,189,0,0,0,0,127,255,128,0,0,0,0,0,0,5,80,0,0, + // 0x76e3 監 + 227,118,34,35,59,38,2,253,0,0,0,0,0,26,64,0,0,42,170,170,170,128,63,64,0,0,63,255,255,255,192,63,0,0,0,63,255,255,255,192,127,0,0,0,63,0,252,0,0,190,0,0,0,63,0,252,0,0,253,0,0,0,63,85,253,85,1,255,255,255,224,63,255,255,255,67,255,255,255,224,63,255,255,255,71,255,255,255,224,63,0,0,47,79,224,0,0,0,63,0,0,47,111,192,0,0,0,63,0,0,47,191,128,0,0,0,63,255,255,255,95,0,0,0,0,63,255,255,255,64,0,0,0,0,63,85,253,85,0,0,0,0,0,63,0,252,0,0,255,255,255,128,63,0,252,0,0,255,255,255,128,63,255,255,255,208,255,255,255,128,63,255,255,255,208,0,0,0,0,63,255,255,255,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,253,1,252,3,244,7,240,0,0,253,1,252,3,244,7,240,0,0,253,1,252,3,244,7,240,0,0,253,1,252,3,244,7,240,0,0,253,1,252,3,244,7,240,0,0,253,1,252,3,244,7,240,0,0,253,2,252,3,244,7,244,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x76f4 直 + 244,118,34,36,68,38,2,252,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,21,85,85,86,254,85,85,85,64,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,0,3,252,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,26,171,254,170,170,144,0,5,80,31,255,255,255,255,224,0,11,240,31,255,255,255,255,224,0,11,240,31,192,0,0,15,224,0,11,240,31,192,0,0,15,224,0,11,240,31,192,0,0,15,224,0,11,240,31,255,255,255,255,224,0,11,240,31,255,255,255,255,224,0,11,240,31,213,85,85,95,224,0,11,240,31,192,0,0,15,224,0,11,240,31,192,0,0,15,224,0,11,240,31,255,255,255,255,224,0,11,240,31,255,255,255,255,224,0,11,240,31,213,85,85,95,224,0,11,240,31,192,0,0,15,224,0,11,240,31,192,0,0,15,224,0,11,240,31,255,255,255,255,224,0,11,240,31,255,255,255,255,224,0,11,240,26,170,170,170,170,144,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,245,85,85,85,85,85,85,80,11,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,240,11,240,0,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0, + // 0x7720 眠 + 32,119,34,34,50,38,3,252,255,255,252,15,255,255,255,255,0,255,255,252,15,255,255,255,255,0,255,255,252,15,255,255,255,255,0,252,2,252,15,208,0,0,63,0,252,1,252,15,208,0,0,63,0,252,1,252,15,208,0,0,63,0,252,1,252,15,208,0,0,63,0,252,1,252,15,208,0,0,63,0,255,255,252,15,255,255,255,255,0,255,255,252,15,255,255,255,255,0,255,255,252,15,255,255,255,255,0,252,1,252,15,208,11,224,0,0,252,1,252,15,208,11,224,0,0,252,1,252,15,208,11,240,0,0,252,1,252,15,208,7,240,0,0,252,1,252,15,208,7,240,0,0,255,255,252,15,255,255,255,255,208,255,255,252,15,255,255,255,255,208,255,255,252,15,255,255,255,255,208,252,1,252,15,229,87,249,85,64,252,1,252,15,208,3,248,0,0,252,1,252,15,208,2,248,0,0,252,1,252,15,208,2,252,0,0,252,1,252,15,208,1,252,0,0,255,255,252,15,208,0,252,0,0,255,255,252,15,208,0,253,1,64,255,255,252,15,208,0,191,2,224,253,0,0,15,208,0,127,2,240,252,0,0,15,209,191,63,67,240,252,0,0,31,255,255,47,195,240,84,0,7,255,255,255,15,251,224,0,0,7,255,255,228,11,255,208,0,0,3,255,144,0,2,255,192,0,0,1,64,0,0,0,190,0, + // 0x780d 砍 + 13,120,36,36,68,38,1,252,0,0,0,0,6,80,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,63,255,255,254,15,240,0,0,0,63,255,255,254,15,224,0,0,0,63,255,255,254,15,208,0,0,0,0,63,128,0,31,192,0,0,0,0,63,64,0,47,255,255,255,248,0,63,0,0,63,255,255,255,253,0,127,0,0,63,255,255,255,252,0,190,0,0,191,91,245,87,252,0,254,0,0,255,7,240,3,248,0,253,0,0,254,7,240,3,244,0,252,0,2,252,7,240,7,240,2,255,255,247,252,7,240,11,240,3,255,255,255,244,7,240,15,224,7,255,255,255,240,7,240,15,192,11,248,3,246,208,11,240,31,192,15,248,3,240,64,11,240,1,64,47,248,3,240,0,15,244,0,0,63,248,3,240,0,15,248,0,0,191,248,3,240,0,31,252,0,0,191,248,3,240,0,47,252,0,0,61,248,3,240,0,63,190,0,0,5,248,3,240,0,126,63,0,0,1,248,3,240,0,253,63,128,0,1,248,3,240,2,252,31,192,0,1,255,255,240,7,248,15,240,0,1,255,255,240,15,240,7,248,0,1,255,255,240,63,208,3,254,0,1,252,0,0,255,128,0,255,128,1,248,0,7,255,0,0,127,240,1,248,0,63,252,0,0,47,254,0,164,0,63,240,0,0,7,252,0,0,0,15,128,0,0,1,248,0,0,0,5,0,0,0,0,32, + // 0x78ba 確 + 186,120,36,36,68,38,1,252,0,0,0,0,0,2,144,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,7,240,0,0,63,255,255,244,0,11,240,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,63,64,11,255,255,255,255,252,0,63,0,11,208,127,64,0,252,0,127,0,11,208,254,3,160,252,0,127,0,11,209,252,3,240,252,0,190,0,6,147,248,11,224,168,0,253,0,0,11,240,15,192,0,0,252,0,0,31,255,255,255,244,1,252,0,0,127,255,255,255,244,2,255,255,225,255,255,255,255,244,3,255,255,231,255,64,63,0,0,7,255,255,255,255,64,63,0,0,11,248,7,255,255,64,63,0,0,15,248,7,231,191,64,63,0,0,31,248,7,224,63,255,255,255,224,63,248,7,224,63,255,255,255,224,191,248,7,224,63,234,191,170,144,255,248,7,224,63,64,63,0,0,126,248,7,224,63,64,63,0,0,61,248,7,224,63,64,63,0,0,17,248,7,224,63,255,255,255,224,1,248,7,224,63,255,255,255,224,1,248,7,224,63,234,191,170,144,1,255,255,224,63,64,63,0,0,1,255,255,224,63,64,63,0,0,1,255,255,224,63,64,63,0,0,1,248,0,0,63,255,255,255,253,1,248,0,0,63,255,255,255,253,1,248,0,0,63,255,255,255,253,0,0,0,0,63,64,0,0,0,0,0,0,0,47,64,0,0,0, + // 0x79fb 移 + 251,121,35,36,68,38,1,252,0,0,0,64,0,7,224,0,0,0,0,111,208,0,15,240,0,0,0,111,255,244,0,63,192,0,0,63,255,255,208,0,255,255,255,128,63,255,244,0,2,255,255,255,208,47,151,240,0,15,255,255,255,192,0,3,240,0,127,224,0,127,128,0,3,240,2,255,208,0,255,0,0,3,240,15,255,248,2,253,0,0,3,240,11,247,254,7,252,0,0,3,240,3,192,191,223,240,0,63,255,255,248,0,47,255,192,0,63,255,255,248,0,11,255,64,0,63,255,255,248,0,47,253,0,0,21,95,245,80,2,255,240,0,0,0,15,240,0,127,255,255,0,0,0,47,248,7,255,245,254,0,0,0,63,254,2,255,67,252,0,0,0,191,255,128,224,15,255,255,248,0,255,255,224,0,63,255,255,252,2,251,247,248,0,255,255,255,252,3,247,241,252,7,254,0,7,244,11,211,240,240,47,248,0,15,240,31,195,240,18,255,253,0,47,208,63,131,240,7,255,255,192,127,192,191,3,240,1,244,127,240,255,64,125,3,240,0,128,11,255,253,0,60,3,240,0,0,2,255,248,0,16,3,240,0,0,0,255,224,0,0,3,240,0,0,7,255,128,0,0,3,240,0,0,127,253,0,0,0,3,240,0,27,255,240,0,0,0,3,240,11,255,255,64,0,0,0,3,240,15,255,244,0,0,0,0,3,240,7,254,64,0,0,0,0,3,240,2,144,0,0,0,0, + // 0x7a4d 積 + 77,122,36,36,68,38,1,252,0,0,0,0,0,7,240,0,0,0,0,111,192,0,7,240,0,0,0,111,255,243,255,255,255,255,244,63,255,255,231,255,255,255,255,244,63,255,249,1,85,91,245,85,80,47,239,240,0,0,7,240,0,0,0,11,240,1,255,255,255,255,224,0,11,240,1,255,255,255,255,224,0,11,240,0,0,7,244,0,0,0,11,240,0,0,7,240,0,0,0,11,240,31,255,255,255,255,253,63,255,255,255,255,255,255,255,253,63,255,255,245,85,85,85,85,84,63,255,255,240,0,0,0,0,0,0,15,240,0,255,255,255,255,208,0,31,240,0,255,255,255,255,208,0,47,244,0,254,85,85,95,208,0,63,253,0,253,0,0,15,208,0,191,255,64,253,0,0,15,208,0,255,255,192,255,255,255,255,208,1,255,251,240,255,255,255,255,208,3,251,243,248,253,0,0,15,208,11,235,241,240,253,0,0,15,208,15,203,240,128,255,255,255,255,208,63,139,240,0,255,255,255,255,208,191,11,240,0,253,0,0,15,208,190,11,240,0,253,0,0,15,208,60,11,240,0,255,255,255,255,208,36,11,240,0,255,255,255,255,208,0,11,240,0,21,213,85,213,64,0,11,240,0,7,244,3,244,0,0,11,240,0,127,248,7,255,0,0,11,240,7,255,208,0,191,224,0,11,240,191,254,0,0,31,252,0,11,240,63,224,0,0,3,252,0,7,240,14,0,0,0,0,144, + // 0x7aef 端 + 239,122,36,36,68,38,1,252,0,5,0,0,0,7,240,0,0,0,31,128,0,0,7,240,0,0,0,31,128,3,240,7,240,7,240,0,31,128,3,240,7,240,7,240,0,31,128,3,240,7,240,7,240,0,31,128,3,240,7,240,7,240,0,31,128,3,240,7,240,7,240,0,47,128,3,240,7,240,7,240,63,255,255,195,255,255,255,255,240,63,255,255,195,255,255,255,255,240,63,255,255,195,255,255,255,255,240,0,0,0,0,0,0,0,0,0,6,64,58,0,0,0,0,0,0,15,128,63,0,0,0,0,0,0,15,128,63,47,255,255,255,255,253,15,192,127,47,255,255,255,255,253,11,192,126,47,255,255,255,255,253,11,192,189,0,0,15,240,0,0,7,208,189,0,0,15,224,0,0,7,224,252,0,0,31,192,0,0,3,224,252,11,255,255,255,255,248,3,224,248,11,255,255,255,255,248,3,241,244,11,255,255,255,255,248,3,226,244,11,224,188,15,130,248,1,2,240,91,224,188,15,130,248,0,2,255,235,224,188,15,130,248,1,191,255,251,224,188,15,130,248,127,255,255,235,224,188,15,130,248,127,255,248,11,224,188,15,130,248,127,249,0,11,224,188,15,130,248,57,0,0,11,224,188,15,130,248,0,0,0,11,224,188,15,130,248,0,0,0,11,224,188,15,130,248,0,0,0,11,224,188,15,191,248,0,0,0,11,224,188,15,159,240,0,0,0,6,144,20,0,14,128, + // 0x7b49 等 + 73,123,35,36,68,38,1,252,0,14,64,0,0,126,0,0,0,0,47,192,0,0,255,0,0,0,0,63,128,0,0,254,0,0,0,0,255,255,255,227,255,255,255,252,1,255,255,255,231,255,255,255,252,3,255,255,255,255,255,255,255,252,15,244,253,0,63,208,255,0,0,63,224,191,0,255,128,63,128,0,127,192,63,64,191,0,47,192,0,31,0,57,0,255,0,15,64,0,0,0,0,0,255,0,0,0,0,0,127,255,255,255,255,255,254,0,0,127,255,255,255,255,255,254,0,0,127,255,255,255,255,255,254,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,0,0,61,0,0,1,253,0,0,0,0,255,64,0,1,253,0,0,0,0,255,208,0,1,253,0,0,0,0,47,244,0,1,253,0,0,0,0,11,252,0,1,253,0,0,0,0,2,255,0,1,253,0,0,0,0,0,254,5,6,253,0,0,0,0,0,52,15,255,252,0,0,0,0,0,0,11,255,248,0,0,0,0,0,0,3,255,144,0,0, + // 0x7ba1 管 + 161,123,35,36,68,38,2,252,0,121,0,0,1,228,0,0,0,0,255,0,0,3,252,0,0,0,1,253,0,0,7,248,0,0,0,3,255,255,255,79,255,255,255,244,11,255,255,255,127,255,255,255,244,31,255,255,255,255,255,255,255,244,63,195,248,2,255,2,253,0,0,255,66,252,7,252,0,255,0,0,190,0,253,3,248,0,127,64,0,24,0,160,3,248,0,41,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,64,0,0,0,0,0,15,192,63,64,0,0,0,0,0,15,192,63,71,255,255,255,255,254,15,192,63,71,255,255,255,255,254,15,192,26,7,250,170,170,170,254,10,128,0,7,240,0,0,0,254,0,0,0,7,240,0,0,0,254,0,0,0,7,250,170,170,170,254,0,0,0,7,255,255,255,255,254,0,0,0,7,255,255,255,255,254,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,250,170,170,170,170,160,0,0,7,255,255,255,255,255,240,0,0,7,255,255,255,255,255,240,0,0,7,240,0,0,0,7,240,0,0,7,240,0,0,0,7,240,0,0,7,240,0,0,0,7,240,0,0,7,255,255,255,255,255,240,0,0,7,255,255,255,255,255,240,0,0,7,250,170,170,170,175,240,0,0,3,240,0,0,0,7,240,0, + // 0x7bb1 箱 + 177,123,35,36,68,38,1,252,0,14,64,0,0,57,0,0,0,0,31,192,0,0,191,0,0,0,0,63,192,0,0,255,0,0,0,0,127,128,0,1,254,0,0,0,0,191,255,255,227,255,255,255,252,0,255,255,255,231,255,255,255,252,3,255,255,255,239,255,255,255,252,7,248,254,0,47,224,254,0,0,15,240,127,0,127,192,127,64,0,63,208,63,129,255,64,47,192,0,47,64,47,64,190,0,15,208,0,6,0,252,0,24,0,10,64,0,0,0,252,0,0,0,0,0,0,0,0,252,0,15,255,255,255,224,0,0,252,0,15,255,255,255,224,47,255,255,255,207,255,255,255,224,47,255,255,255,207,192,0,15,224,47,255,255,255,207,192,0,15,224,0,7,253,0,15,192,0,15,224,0,7,253,0,15,255,255,255,224,0,15,255,64,15,255,255,255,224,0,31,255,208,15,250,170,175,224,0,63,255,244,15,192,0,15,224,0,191,255,253,15,192,0,15,224,1,254,252,255,143,192,0,15,224,3,252,252,63,207,255,255,255,224,11,240,252,31,15,255,255,255,224,47,224,252,9,15,250,170,175,224,127,192,252,0,15,192,0,15,224,63,64,252,0,15,192,0,15,224,30,0,252,0,15,192,0,15,224,4,0,252,0,15,255,255,255,224,0,0,252,0,15,255,255,255,224,0,0,252,0,15,255,255,255,224,0,0,252,0,15,192,0,15,224,0,0,252,0,10,128,0,5,80, + // 0x7cfb 系 + 251,124,34,36,68,38,2,252,0,0,0,0,0,0,0,64,0,0,0,0,0,0,22,191,224,0,0,5,86,170,255,255,255,248,0,47,255,255,255,255,255,255,252,0,15,255,255,255,255,255,165,0,0,15,255,255,255,212,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,7,252,0,15,128,0,0,0,0,31,244,0,63,240,0,0,0,16,63,208,0,191,208,0,0,0,189,255,64,2,255,64,0,0,2,255,253,0,11,253,0,0,0,0,191,248,0,47,244,0,0,0,0,31,253,0,191,208,0,0,0,0,2,255,131,255,64,0,0,0,0,0,127,255,252,0,180,0,0,0,0,15,255,240,3,253,0,0,0,0,3,255,192,2,255,64,0,0,0,15,254,0,0,191,224,0,0,0,127,244,0,0,31,248,0,255,255,255,251,255,255,255,254,0,191,255,255,255,255,255,255,255,64,191,255,255,255,255,255,255,255,208,106,149,85,83,253,85,80,47,240,0,0,0,3,252,0,0,15,224,0,0,64,3,252,0,80,3,64,0,3,248,3,252,3,244,0,0,0,15,252,3,252,11,254,0,0,0,63,240,3,252,2,255,192,0,0,255,208,3,252,0,127,244,0,7,255,64,3,252,0,15,254,0,47,253,0,3,252,0,3,255,128,255,240,0,3,252,0,0,191,224,191,192,0,3,252,0,0,47,208,30,0,0,3,252,0,0,10,0,0,0,0,3,248,0,0,0,0, + // 0x7d05 紅 + 5,125,36,36,68,38,1,252,0,3,64,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,63,128,64,127,255,255,255,252,0,191,1,244,127,255,255,255,252,13,253,3,252,127,255,255,255,252,63,248,11,244,21,86,254,85,84,63,240,31,224,0,1,253,0,0,15,244,63,192,0,1,253,0,0,3,253,191,0,0,1,253,0,0,0,255,253,0,0,1,253,0,0,0,63,248,20,0,1,253,0,0,0,31,240,188,0,1,253,0,0,0,47,208,254,0,1,253,0,0,0,127,128,127,64,1,253,0,0,1,255,0,63,192,1,253,0,0,191,255,255,255,208,1,253,0,0,127,255,255,255,240,1,253,0,0,127,255,255,251,244,1,253,0,0,0,1,252,2,248,1,253,0,0,0,1,252,0,128,1,253,0,0,1,1,252,4,0,1,253,0,0,7,241,252,126,0,1,253,0,0,11,241,252,127,0,1,253,0,0,15,225,252,63,128,1,253,0,0,15,209,252,31,192,1,253,0,0,15,193,252,15,208,1,253,0,0,47,193,252,11,224,1,253,0,0,63,129,252,7,240,1,253,0,0,127,1,252,3,64,1,253,0,0,127,1,252,3,255,255,255,255,253,5,1,252,3,255,255,255,255,253,0,1,252,3,255,255,255,255,253,0,1,252,1,85,85,85,85,84,0,1,248,0,0,0,0,0,0, + // 0x7d22 索 + 34,125,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,63,255,255,255,255,255,255,255,208,63,255,255,255,255,255,255,255,208,63,255,255,255,255,255,255,255,208,63,0,0,127,128,0,0,15,208,63,0,1,255,0,4,0,15,208,63,0,11,252,0,127,64,15,208,63,10,47,224,2,255,128,15,208,0,47,255,64,15,253,0,0,0,0,47,254,0,127,240,0,0,0,0,7,255,210,255,129,192,0,0,0,0,191,255,252,11,248,0,0,0,0,31,255,208,3,255,0,0,0,0,3,254,0,0,191,224,0,0,0,31,254,170,170,255,252,0,127,255,255,255,255,255,255,255,0,127,255,255,255,255,255,255,255,192,63,255,255,255,248,0,0,31,128,0,0,0,3,248,1,208,5,0,0,1,249,3,248,11,248,0,0,0,11,253,3,248,7,255,64,0,0,127,244,3,248,0,191,240,0,2,255,192,3,248,0,31,253,0,47,254,0,3,248,0,2,255,128,191,244,0,3,248,0,0,127,208,47,64,0,3,248,0,0,15,0,4,0,0,3,248,0,0,0,0, + // 0x7d2b 紫 + 43,125,35,36,68,38,1,252,0,0,47,64,2,252,0,0,0,0,0,63,64,2,252,0,0,0,0,0,63,64,2,252,0,6,0,3,240,63,64,2,252,0,191,128,3,240,63,255,242,252,31,255,224,3,240,63,255,242,255,255,255,64,3,240,63,255,242,255,255,208,0,3,240,63,64,2,255,228,0,0,3,240,63,64,2,252,0,0,0,3,240,63,64,2,252,0,0,228,3,240,63,65,162,252,0,0,252,3,240,127,255,241,253,0,2,252,27,255,255,255,241,255,255,255,248,127,255,255,255,144,255,255,255,240,63,255,165,15,208,47,255,255,208,41,64,0,63,224,0,0,0,0,0,0,0,255,128,11,128,0,0,0,3,135,253,0,63,240,0,0,0,31,255,240,1,255,192,0,0,0,31,255,192,11,254,0,0,0,0,1,255,244,63,244,30,0,0,0,0,31,255,255,128,191,192,0,0,0,2,255,253,0,47,240,0,0,0,0,255,224,0,11,253,0,63,255,255,255,255,255,255,255,64,63,255,255,255,255,255,255,255,224,63,255,255,255,255,255,255,175,248,4,0,0,0,254,0,0,7,252,0,0,32,0,254,0,36,1,208,0,0,255,64,254,1,255,0,0,0,11,254,0,254,1,255,224,0,0,127,248,0,254,0,47,253,0,7,255,208,0,254,0,3,255,192,47,254,0,0,254,0,0,127,244,11,244,0,0,254,0,0,15,224,1,64,0,0,254,0,0,2,0, + // 0x7d30 細 + 48,125,35,36,68,38,1,252,0,10,0,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,63,64,0,255,255,255,255,244,0,191,0,0,255,255,255,255,244,0,253,11,128,255,255,255,255,244,5,248,15,224,254,86,249,87,244,63,240,47,192,253,1,248,3,244,127,224,63,64,253,1,248,3,244,47,224,254,0,253,1,248,3,244,15,245,252,0,253,1,248,3,244,3,255,244,0,253,1,248,3,244,0,255,224,64,253,1,248,3,244,0,127,203,208,253,1,248,3,244,0,63,7,240,253,1,248,3,244,0,189,3,244,253,1,248,3,244,1,254,175,252,254,2,248,3,244,191,255,255,253,255,255,255,255,244,191,255,255,254,255,255,255,255,244,127,255,240,63,255,255,255,255,244,16,7,240,62,253,1,248,3,244,0,7,240,16,253,1,248,3,244,0,7,240,64,253,1,248,3,244,15,199,243,224,253,1,248,3,244,15,199,243,240,253,1,248,3,244,15,199,242,244,253,1,248,3,244,31,135,240,252,253,1,248,3,244,47,71,240,252,253,1,248,3,244,63,71,240,189,253,1,248,3,244,63,7,240,126,253,1,248,3,244,126,7,240,32,255,255,255,255,244,189,7,240,0,255,255,255,255,244,8,7,240,0,255,255,255,255,244,0,7,240,0,254,85,85,87,244,0,7,240,0,253,0,0,3,244,0,7,224,0,84,0,0,0,0, + // 0x7d42 終 + 66,125,36,37,77,38,1,251,0,9,0,0,0,57,0,0,0,0,31,192,0,0,191,0,0,0,0,47,192,0,0,254,0,0,0,0,63,64,0,2,252,0,0,0,0,191,0,0,7,255,255,255,64,0,252,15,64,15,255,255,255,192,6,248,31,192,47,255,255,255,128,47,240,63,128,127,192,0,191,0,127,208,127,1,255,224,0,254,0,47,208,253,7,255,244,3,252,0,15,246,248,31,246,252,11,248,0,3,255,240,63,208,255,31,224,0,0,255,208,15,64,63,191,192,0,0,127,139,1,0,31,255,0,0,0,63,31,128,0,15,253,0,0,0,253,15,192,0,47,255,0,0,2,248,7,224,0,255,255,208,0,127,255,255,240,7,255,127,248,0,191,255,255,244,127,252,11,255,64,127,255,255,255,255,224,1,255,248,16,11,224,255,255,64,0,63,254,0,11,224,83,244,31,64,7,252,4,11,225,128,64,127,244,0,112,15,203,235,208,0,47,254,0,0,15,203,227,224,0,2,255,208,0,15,203,227,240,0,0,47,224,0,31,139,226,244,0,0,7,192,0,47,75,224,248,4,0,0,0,0,63,11,224,252,47,208,0,0,0,63,11,224,180,127,254,64,0,0,190,11,224,0,31,255,248,0,0,189,11,224,0,0,127,255,144,0,24,11,224,0,0,6,255,253,0,0,11,224,0,0,0,47,255,64,0,11,224,0,0,0,1,255,0,0,11,208,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0, + // 0x7d71 統 + 113,125,36,37,77,38,1,251,0,9,0,0,0,7,240,0,0,0,31,192,0,0,11,240,0,0,0,47,192,0,0,11,240,0,0,0,63,64,0,0,11,240,0,0,0,127,0,0,0,11,240,0,0,0,252,15,75,255,255,255,255,252,5,248,31,203,255,255,255,255,252,47,240,63,139,255,255,255,255,252,127,208,127,0,1,255,0,0,0,47,208,253,0,1,253,0,32,0,15,246,248,0,3,252,2,248,0,3,255,240,0,3,248,2,253,0,0,255,208,0,7,240,0,255,0,0,127,139,0,15,224,0,63,128,0,63,31,128,31,234,175,255,208,0,253,15,203,255,255,255,255,240,2,248,7,231,255,255,255,255,248,127,255,255,247,255,250,165,66,252,191,255,255,249,0,0,0,0,252,127,255,255,252,1,80,5,64,144,16,11,224,252,3,240,15,192,0,0,11,224,160,3,240,15,192,0,4,11,225,128,3,240,15,192,0,15,203,235,192,7,240,15,192,0,15,203,231,224,7,240,15,192,0,15,203,227,240,11,240,15,192,0,31,139,226,244,15,224,15,192,0,47,75,225,248,15,208,15,192,0,63,11,224,252,31,192,15,192,32,63,11,224,188,63,192,15,192,62,190,11,224,0,191,64,15,192,63,189,11,224,1,255,0,15,192,126,24,11,224,11,252,0,15,208,190,0,11,224,127,244,0,15,255,253,0,11,224,127,192,0,11,255,252,0,11,208,30,0,0,2,255,240,0,0,0,0,0,0,0,0,0, + // 0x7d72 絲 + 114,125,36,36,68,38,1,252,0,3,64,0,0,0,208,0,0,0,11,240,0,0,2,252,0,0,0,15,224,0,0,3,248,0,0,0,31,192,0,0,11,240,0,0,0,63,64,0,0,15,208,16,0,0,191,3,244,0,47,192,125,0,8,252,7,248,5,127,0,255,0,63,248,15,240,15,254,2,253,0,127,240,47,208,47,252,7,248,0,47,240,63,128,11,248,15,240,0,11,248,255,0,2,254,47,208,0,2,255,252,0,0,191,255,128,0,0,191,244,0,0,47,255,8,0,0,47,225,240,0,11,252,127,0,0,47,194,248,0,11,240,63,64,0,191,0,252,0,47,208,47,192,1,253,0,191,0,127,128,31,240,191,255,255,255,111,255,255,255,244,127,255,255,255,159,255,255,255,252,127,255,255,255,223,255,255,255,252,20,2,248,15,213,64,254,0,253,0,1,248,6,0,0,254,0,112,2,65,248,4,0,0,254,0,0,7,241,248,252,2,248,254,47,0,11,225,248,254,3,248,254,63,64,11,225,248,127,3,244,254,47,192,15,209,248,63,71,240,254,15,208,15,193,248,47,139,224,254,11,240,47,193,248,15,207,208,254,3,244,63,129,248,14,47,192,254,2,252,127,1,248,0,127,128,254,1,253,191,1,248,0,191,0,254,0,254,9,1,248,0,29,0,254,0,160,0,1,248,0,0,0,254,0,0,0,1,248,0,0,0,254,0,0,0,1,248,0,0,0,189,0,0, + // 0x7da0 綠 + 160,125,36,36,68,38,1,252,0,9,0,0,3,160,0,0,0,0,15,192,0,7,240,0,0,0,0,47,192,0,11,240,0,0,0,0,63,64,0,11,255,255,255,0,0,127,0,0,15,255,255,255,0,0,253,15,64,15,250,170,255,0,5,248,31,192,31,192,0,191,0,47,240,63,128,47,128,0,190,0,127,224,127,0,63,64,0,253,0,63,208,253,0,63,255,255,253,0,15,242,248,0,127,255,255,252,0,3,255,240,0,255,170,171,252,0,1,255,208,0,105,0,2,248,0,0,191,155,0,0,0,3,244,0,0,127,47,139,255,255,255,255,252,0,252,15,203,255,255,255,255,252,3,248,11,235,255,255,255,255,252,191,255,255,240,0,3,244,0,0,191,255,255,244,0,3,248,0,64,191,255,255,252,116,3,252,2,224,0,15,208,254,253,3,253,7,248,0,15,208,160,255,67,254,31,240,5,15,208,64,63,195,255,191,128,15,207,219,192,15,227,255,254,0,15,207,215,208,7,131,255,244,0,31,143,211,224,1,3,255,224,0,31,79,211,240,0,179,247,244,0,47,79,210,244,7,247,246,253,0,63,15,209,248,63,247,244,255,0,63,15,208,230,255,195,244,127,192,190,15,208,31,254,3,244,47,248,252,15,208,47,244,3,244,11,254,24,15,208,15,192,3,244,2,252,0,15,208,6,2,255,240,0,112,0,15,208,0,1,255,240,0,0,0,11,192,0,0,254,128,0,0, + // 0x7db2 網 + 178,125,35,37,77,38,1,251,0,9,0,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,47,192,7,255,255,255,255,244,0,63,0,7,255,255,255,255,244,0,190,0,7,255,255,255,255,244,0,252,15,135,240,0,0,2,244,9,248,47,199,240,80,3,146,244,63,240,63,71,242,240,7,226,244,127,208,191,7,240,244,11,194,244,47,208,252,7,240,248,15,130,244,15,243,244,7,240,188,31,2,244,3,255,240,7,240,120,31,2,244,0,255,193,7,243,255,255,242,244,0,127,175,7,243,255,255,242,244,0,127,31,199,242,171,250,162,244,0,252,15,215,240,3,240,2,244,3,248,11,231,240,3,240,2,244,191,255,255,251,240,3,240,2,244,191,255,255,255,242,175,250,162,244,191,255,255,255,243,255,255,242,244,0,15,208,255,243,255,255,242,244,0,15,208,171,240,252,0,2,244,10,79,209,135,240,252,0,2,244,15,207,219,199,240,252,0,2,244,15,207,215,231,240,252,0,2,244,31,143,211,247,240,252,0,2,244,47,79,210,247,240,189,0,2,244,47,15,209,251,240,191,255,226,244,63,15,209,255,240,127,255,226,244,63,15,208,235,240,31,255,226,244,190,15,208,7,240,0,0,2,244,252,15,208,7,240,0,0,2,244,24,15,208,7,240,0,0,3,244,0,15,208,7,240,0,3,255,244,0,15,208,7,240,0,2,255,240,0,15,208,7,240,0,1,255,128,0,0,0,0,0,0,0,0,0, + // 0x7dd2 緒 + 210,125,36,36,68,38,1,252,0,9,0,0,0,63,0,0,0,0,15,192,0,0,63,0,2,228,0,47,192,0,0,63,0,3,248,0,63,64,0,0,63,0,7,240,0,127,0,3,255,255,255,207,224,0,253,15,67,255,255,255,239,192,5,248,31,195,255,255,255,255,128,47,240,63,128,0,63,0,191,0,127,224,127,0,0,63,1,254,0,63,192,253,0,0,63,3,252,0,15,242,248,0,0,63,7,248,0,7,251,240,0,0,63,15,240,0,2,255,208,31,255,255,255,255,253,0,255,139,31,255,255,255,255,253,0,127,47,95,255,255,255,255,253,0,253,15,192,0,15,248,0,0,2,248,11,224,0,127,208,0,0,191,255,255,240,1,255,64,0,0,191,255,255,244,11,255,255,255,192,191,255,255,252,127,255,255,255,192,0,15,208,255,255,255,255,255,192,0,15,208,191,255,192,0,31,192,4,15,208,95,255,192,0,31,192,15,207,219,202,31,192,0,31,192,15,207,215,208,31,192,0,31,192,31,143,211,224,31,255,255,255,192,31,143,211,240,31,255,255,255,192,47,79,210,244,31,255,255,255,192,63,15,209,248,31,192,0,31,192,63,15,208,228,31,192,0,31,192,189,15,208,0,31,192,0,31,192,188,15,208,0,31,255,255,255,192,4,15,208,0,31,255,255,255,192,0,15,208,0,31,255,255,255,192,0,15,208,0,31,192,0,31,192,0,11,192,0,10,128,0,10,128, + // 0x7dda 線 + 218,125,36,36,68,38,1,252,0,9,0,0,0,3,164,0,0,0,15,192,0,0,7,252,0,0,0,47,192,0,0,11,240,0,0,0,63,64,0,0,15,224,0,0,0,127,0,1,255,255,255,255,240,0,253,15,65,255,255,255,255,240,5,248,31,193,255,255,255,255,240,47,240,63,129,252,0,0,11,240,127,224,127,1,252,0,0,11,240,63,208,253,1,254,170,170,175,240,15,242,248,1,255,255,255,255,240,3,255,240,1,255,255,255,255,240,1,255,208,1,252,0,0,11,240,0,191,155,1,252,0,0,11,240,0,127,47,129,252,0,0,11,240,0,252,15,193,255,255,255,255,240,3,248,11,225,255,255,255,255,240,191,255,255,241,255,255,255,255,240,191,255,255,244,0,3,244,0,0,191,255,255,252,0,3,248,0,64,0,15,208,252,0,3,252,2,240,0,15,208,171,255,231,253,7,252,5,15,209,71,255,251,255,31,244,15,207,219,199,255,243,255,191,192,15,207,215,208,3,243,255,255,0,31,143,211,240,11,227,255,248,0,31,79,210,240,15,195,251,240,0,47,79,210,244,63,131,247,252,0,63,15,209,248,191,3,245,255,0,63,15,208,145,254,3,244,191,128,190,15,208,7,252,3,244,63,244,252,15,208,63,240,3,244,15,254,24,15,208,47,192,3,244,3,253,0,15,208,15,2,255,240,0,184,0,15,208,0,1,255,240,0,0,0,11,192,0,0,255,128,0,0, + // 0x7de8 編 + 232,125,35,36,68,38,1,252,0,9,0,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0,47,128,15,255,255,255,255,252,0,63,0,15,255,255,255,255,252,0,126,0,15,255,255,255,255,252,0,252,14,0,0,0,0,0,0,5,248,47,192,0,0,0,0,0,47,240,63,64,0,0,0,0,0,127,224,190,2,255,255,255,255,240,63,208,252,2,255,255,255,255,240,15,242,244,2,255,255,255,255,240,3,255,240,2,244,0,0,11,240,0,255,208,2,244,0,0,11,240,0,127,159,2,244,0,0,11,240,0,127,47,2,255,255,255,255,240,0,253,15,130,255,255,255,255,240,2,248,15,195,255,255,255,255,240,191,255,255,227,244,0,0,0,0,191,255,255,243,244,0,0,0,0,191,255,255,243,254,170,170,170,164,0,15,193,247,255,255,255,255,248,0,15,192,211,255,255,255,255,248,5,15,194,3,255,11,131,208,248,15,207,207,131,255,11,131,208,248,15,143,207,199,255,11,131,208,248,31,79,203,203,255,11,131,208,248,47,79,195,219,255,255,255,255,248,47,15,195,239,239,255,255,255,248,63,15,195,255,223,175,235,234,248,62,15,194,255,159,11,131,208,248,189,15,192,63,95,11,131,208,248,188,15,192,127,31,11,131,208,248,4,15,192,254,31,11,131,209,248,0,15,193,252,31,11,131,223,248,0,15,192,56,31,11,131,223,244,0,15,192,0,31,5,65,70,144, + // 0x7e2e 縮 + 46,126,35,36,68,38,1,252,0,9,0,0,0,7,240,0,0,0,15,192,0,0,11,240,0,0,0,47,128,0,0,11,240,0,0,0,63,0,0,0,11,240,0,0,0,126,0,15,255,255,255,255,252,0,252,14,79,255,255,255,255,252,5,248,47,207,255,255,255,255,252,63,240,63,15,192,0,0,1,252,127,208,190,15,192,0,0,1,252,47,209,252,15,206,64,0,1,168,11,247,244,5,95,192,0,0,0,3,255,240,0,47,191,255,255,252,0,255,193,0,63,127,255,255,252,0,127,111,0,63,63,255,255,252,0,127,31,128,190,0,15,208,0,0,252,15,192,253,0,15,192,0,2,248,11,209,252,0,31,192,0,191,255,255,227,252,31,255,255,240,191,255,255,247,252,31,255,255,244,191,255,255,255,252,31,255,255,244,0,15,193,255,252,31,128,3,244,0,15,192,63,252,31,128,3,244,9,15,193,46,252,31,128,3,244,15,207,207,72,252,31,128,3,244,15,143,207,192,252,31,255,255,244,31,79,203,192,252,31,255,255,244,47,79,199,208,252,31,255,255,244,47,15,195,224,252,31,128,3,244,63,15,195,240,252,31,128,3,244,62,15,194,224,252,31,128,3,244,189,15,192,0,252,31,128,3,244,188,15,192,0,252,31,255,255,244,4,15,192,0,252,31,255,255,244,0,15,192,0,252,31,255,255,244,0,15,192,0,252,31,128,3,244,0,15,192,0,252,26,64,1,80, + // 0x7e3d 總 + 61,126,36,36,68,38,1,252,0,9,0,0,0,3,164,0,0,0,15,192,0,0,3,252,0,0,0,47,128,0,0,7,244,0,0,0,63,0,0,0,15,240,0,0,0,126,0,3,255,255,255,255,240,0,252,14,3,255,255,255,255,240,5,248,47,195,250,171,234,171,240,47,240,63,67,240,3,224,3,240,127,224,190,3,240,7,255,227,240,63,208,252,3,242,223,255,243,240,15,242,244,3,247,255,3,227,240,3,255,240,3,240,255,139,195,240,0,255,208,3,242,255,255,67,240,0,127,159,3,247,209,255,3,240,0,127,47,3,241,65,255,195,240,0,253,15,131,240,11,251,243,240,2,248,15,195,240,127,193,195,240,191,255,255,227,240,190,0,3,240,191,255,255,243,250,190,170,171,240,191,255,255,243,255,255,255,255,240,0,15,193,247,255,255,255,255,240,0,15,192,208,0,63,0,0,0,0,15,193,0,0,191,208,0,0,15,207,207,64,0,31,248,0,0,15,143,207,192,0,3,254,0,0,31,143,203,192,65,248,191,11,0,31,79,199,209,245,248,40,47,128,47,15,195,226,245,248,0,15,208,63,15,195,243,241,248,0,11,240,62,15,194,227,241,248,0,3,244,189,15,192,7,225,248,0,209,252,252,15,192,15,209,248,1,244,253,24,15,192,47,193,248,2,244,190,0,15,192,63,65,255,255,240,126,0,15,192,10,0,255,255,224,32,0,15,192,0,0,47,255,128,0, + // 0x7e7c 繼 + 124,126,35,37,77,38,1,251,0,36,0,63,0,0,0,0,0,0,63,0,63,0,240,0,124,0,0,126,0,63,2,224,0,248,0,0,253,0,63,3,194,1,240,128,0,252,0,63,47,139,207,210,240,2,244,57,63,63,15,47,135,192,27,240,190,63,31,126,11,223,64,63,208,252,63,7,252,2,254,0,127,194,244,63,2,246,0,253,128,47,195,240,63,3,219,65,243,208,11,251,208,63,11,131,195,208,240,3,255,192,63,127,255,255,255,248,1,255,0,63,127,255,255,255,252,0,190,184,63,0,0,128,0,20,0,252,252,63,234,170,170,170,168,2,244,126,63,255,255,255,255,252,3,240,63,63,255,255,255,255,252,255,255,255,127,0,208,0,52,0,191,255,255,191,1,240,0,188,0,191,255,239,255,3,208,0,244,0,0,47,75,255,7,195,133,240,224,0,47,69,63,63,75,159,195,224,9,47,68,63,63,31,31,135,192,31,111,126,63,15,189,7,223,64,31,111,127,63,3,252,1,254,0,47,47,95,127,1,247,0,254,192,47,47,79,191,3,219,128,243,224,63,47,79,255,11,131,195,208,240,62,47,75,255,127,255,255,255,248,125,47,75,255,127,255,255,255,252,188,47,64,63,20,0,149,0,40,188,47,64,63,0,0,0,0,0,4,47,64,63,255,255,255,255,252,0,47,64,63,255,255,255,255,252,0,47,64,63,234,170,170,170,168,0,47,64,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x7e8c 續 + 140,126,35,36,68,38,1,252,0,9,0,0,0,11,240,0,0,0,31,192,0,0,11,240,0,0,0,47,128,31,255,255,255,255,252,0,63,0,31,255,255,255,255,252,0,190,0,5,85,91,245,85,84,0,252,31,64,0,11,240,0,0,6,244,63,130,255,255,255,255,224,47,240,127,2,255,255,255,255,224,127,208,253,0,0,0,0,0,0,63,209,252,0,0,0,0,0,0,15,243,244,7,255,255,255,255,244,3,255,224,7,255,255,255,255,244,1,255,192,7,208,124,47,2,244,0,191,126,7,219,244,31,255,244,0,127,47,7,223,128,5,87,244,0,252,31,135,255,255,255,255,244,2,244,15,199,255,255,255,255,244,111,255,255,208,0,0,0,0,0,127,255,255,240,0,0,0,0,0,127,255,251,240,255,255,255,255,192,16,15,194,240,255,255,255,255,192,0,15,192,0,252,0,0,15,192,14,79,193,0,254,170,170,175,192,15,207,207,64,255,255,255,255,192,31,143,207,192,252,0,0,15,192,31,79,203,192,254,170,170,175,192,47,79,195,208,255,255,255,255,192,47,15,195,224,252,0,0,15,192,63,15,195,224,252,0,0,15,192,126,15,193,0,255,255,255,255,192,189,15,192,0,255,255,255,255,192,188,15,192,0,11,224,7,244,0,4,15,192,1,191,244,11,255,64,0,15,192,111,255,64,0,191,244,0,15,192,127,228,0,0,11,252,0,15,192,29,0,0,0,1,208, + // 0x7ea2 红 + 162,126,35,34,50,38,1,254,0,1,144,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,11,244,1,170,170,170,170,160,0,15,240,3,255,255,255,255,244,0,47,208,3,255,255,255,255,244,0,63,192,3,255,255,255,255,244,0,191,0,0,0,3,248,0,0,1,254,1,192,0,3,248,0,0,3,252,3,248,0,3,248,0,0,11,244,11,248,0,3,248,0,0,31,224,31,240,0,3,248,0,0,127,255,255,208,0,3,248,0,0,127,255,255,128,0,3,248,0,0,63,255,255,0,0,3,248,0,0,62,87,252,0,0,3,248,0,0,0,15,244,0,0,3,248,0,0,0,47,224,0,0,3,248,0,0,0,127,192,0,0,3,248,0,0,1,255,0,0,0,3,248,0,0,7,253,26,240,0,3,248,0,0,31,255,255,240,0,3,248,0,0,127,255,255,244,0,3,248,0,0,63,255,254,80,0,3,248,0,0,47,229,0,0,0,3,248,0,0,20,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,16,0,3,248,0,0,0,0,107,240,0,3,248,0,0,0,111,255,240,0,3,248,0,0,127,255,255,251,255,255,255,255,252,127,255,254,71,255,255,255,255,252,63,254,64,7,255,255,255,255,252,57,0,0,6,170,170,170,170,168, + // 0x7f6e 置 + 110,127,35,35,59,38,2,252,5,85,85,85,85,85,85,85,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,0,11,224,3,240,1,252,0,191,0,11,224,3,240,1,252,0,191,0,11,224,3,240,1,252,0,191,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,0,5,85,85,86,254,85,85,85,0,0,0,0,1,252,0,0,0,0,42,170,170,171,254,170,170,170,128,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,0,0,0,3,244,0,0,0,0,0,0,0,3,244,0,0,0,0,1,80,31,255,255,255,255,244,0,7,240,31,255,255,255,255,244,0,7,240,31,192,0,0,3,244,0,7,240,31,192,0,0,3,244,0,7,240,31,255,255,255,255,244,0,7,240,31,255,255,255,255,244,0,7,240,31,192,0,0,3,244,0,7,240,31,192,0,0,3,244,0,7,240,31,255,255,255,255,244,0,7,240,31,255,255,255,255,244,0,7,240,31,192,0,0,3,244,0,7,240,31,192,0,0,3,244,0,7,240,31,255,255,255,255,244,0,7,240,31,255,255,255,255,244,0,7,240,0,0,0,0,0,0,0,7,255,255,255,255,255,255,255,240,7,255,255,255,255,255,255,255,244,7,255,255,255,255,255,255,255,244,7,240,0,0,0,0,0,0,0,2,160,0,0,0,0,0,0,0, + // 0x7f72 署 + 114,127,35,35,59,38,1,252,1,85,85,85,85,85,85,85,64,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,248,0,252,0,127,0,47,192,2,248,0,252,0,127,0,47,192,2,248,0,252,0,127,0,47,192,2,253,86,254,85,191,85,127,192,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,13,0,0,47,255,255,255,255,248,127,128,0,63,255,255,255,255,249,255,128,0,63,255,255,255,255,255,253,0,0,0,0,3,248,0,127,244,0,0,0,0,3,248,3,255,128,0,47,255,255,255,255,255,255,255,248,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,0,7,255,244,0,0,0,0,0,1,191,255,64,0,0,0,0,0,47,255,254,170,170,169,0,0,27,255,255,255,255,255,253,0,27,255,255,255,255,255,255,253,0,127,255,255,64,0,0,0,253,0,47,254,63,64,0,0,0,253,0,14,64,63,149,85,85,85,253,0,0,0,63,255,255,255,255,253,0,0,0,63,255,255,255,255,253,0,0,0,63,64,0,0,0,253,0,0,0,63,64,0,0,0,253,0,0,0,63,255,255,255,255,253,0,0,0,63,255,255,255,255,253,0,0,0,63,170,170,170,170,253,0,0,0,63,0,0,0,0,169,0, + // 0x8070 聰 + 112,128,36,37,77,38,1,251,0,0,0,0,0,1,148,0,0,0,0,0,0,0,3,252,0,0,63,255,255,255,0,3,248,0,0,63,255,255,255,0,7,240,0,0,63,255,255,255,255,255,255,255,240,3,240,7,224,255,255,255,255,240,3,240,7,224,254,171,250,171,240,3,240,7,224,252,1,224,3,240,3,240,7,224,252,3,250,163,240,3,240,7,224,252,175,255,227,240,3,255,255,224,252,255,3,211,240,3,255,255,224,252,191,199,195,240,3,255,255,224,253,247,255,3,240,3,240,7,224,252,128,191,3,240,3,240,7,224,252,0,255,195,240,3,240,7,224,252,7,231,211,240,3,240,7,224,252,63,129,131,240,3,240,7,224,252,61,0,3,240,3,255,255,224,255,255,255,255,240,3,255,255,224,255,255,255,255,240,3,255,255,224,170,175,234,170,160,3,240,7,224,0,31,224,0,0,3,240,7,224,0,31,253,0,0,3,240,7,224,0,2,255,64,0,3,240,7,224,0,189,127,129,0,3,240,31,224,125,189,15,31,64,3,255,255,224,189,189,0,31,192,191,255,255,224,252,189,0,15,208,127,255,255,224,252,189,0,7,240,63,250,75,225,248,189,0,67,244,41,0,7,226,244,189,0,249,252,0,0,7,227,240,189,0,252,252,0,0,7,239,224,189,0,248,253,0,0,7,235,192,191,255,244,126,0,0,7,225,64,63,255,240,32,0,0,7,224,0,10,255,128,0,0,0,0,0,0,0,0,0,0, + // 0x81ea 自 + 234,129,27,37,3,38,6,251,0,0,3,164,0,0,0,0,0,7,252,0,0,0,0,0,11,244,0,0,0,0,0,15,240,0,0,0,0,0,15,224,0,0,0,85,85,111,229,85,85,80,255,255,255,255,255,255,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,85,85,85,85,87,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,254,85,85,85,85,87,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,0,0,0,0,3,248,254,85,85,85,85,87,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,255,255,255,255,255,255,248,254,0,0,0,0,3,248,254,0,0,0,0,3,244,0,0,0,0,0,0,0, + // 0x85cd 藍 + 205,133,34,35,59,38,2,253,0,0,63,64,0,47,192,0,0,0,0,63,64,0,47,192,0,0,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,0,0,63,64,0,47,192,0,0,0,0,63,64,0,47,192,0,0,0,0,0,0,0,20,0,0,0,15,255,255,255,224,63,64,0,0,15,255,255,255,224,127,0,0,0,15,192,190,0,0,191,0,0,0,15,192,126,0,1,255,255,255,208,15,255,255,255,131,255,255,255,208,15,255,255,255,139,255,255,255,208,15,192,0,15,159,224,0,0,0,15,192,0,15,191,192,0,0,0,15,255,255,255,143,0,0,0,0,15,255,255,255,128,0,0,0,0,15,192,126,0,0,191,255,255,64,15,192,126,0,0,255,255,255,64,15,255,255,255,240,255,255,255,64,15,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,244,0,0,255,255,255,255,255,255,244,0,0,255,170,254,171,254,171,244,0,0,253,0,252,2,244,3,244,0,0,253,0,252,2,244,3,244,0,0,253,0,252,2,244,3,244,0,0,253,0,252,2,244,3,244,0,0,253,0,252,2,244,3,244,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x884c 行 + 76,136,35,36,68,38,1,252,0,0,32,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,2,254,0,85,85,85,85,80,0,11,252,1,255,255,255,255,240,0,47,240,1,255,255,255,255,240,0,191,192,1,255,255,255,255,240,3,255,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,127,240,4,0,0,0,0,0,0,63,192,15,144,0,0,0,0,0,14,0,63,208,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,3,253,15,255,255,255,255,252,0,15,248,15,255,255,255,255,252,0,63,240,15,255,255,255,255,252,0,255,224,5,85,85,95,245,84,3,255,224,0,0,0,15,224,0,31,255,224,0,0,0,15,224,0,127,255,224,0,0,0,15,224,0,191,207,224,0,0,0,15,224,0,47,15,224,0,0,0,15,224,0,12,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,0,0,15,224,0,0,15,224,0,1,255,255,224,0,0,15,224,0,0,255,255,208,0,0,15,224,0,0,191,255,128,0,0,10,160,0,0,21,84,0,0, + // 0x8868 表 + 104,136,36,36,68,38,1,252,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,127,255,255,255,255,255,255,0,0,127,255,255,255,255,255,255,0,0,127,255,255,255,255,255,254,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,47,255,255,255,255,255,255,255,244,47,255,255,255,255,255,255,255,244,47,255,255,255,255,255,255,255,244,0,0,0,47,255,240,0,0,0,0,0,1,255,199,240,0,10,0,0,0,11,255,3,248,0,47,192,0,0,191,244,2,252,0,255,208,0,11,255,192,0,254,7,255,0,1,255,255,192,0,191,47,248,0,111,255,255,192,0,127,255,208,0,127,254,47,192,0,47,254,0,0,31,224,47,192,0,15,244,0,0,9,0,47,192,0,7,252,0,0,0,0,47,192,0,18,255,64,0,0,0,47,192,27,240,255,208,0,0,0,47,239,255,240,63,252,0,0,0,127,255,255,240,15,255,128,0,111,255,255,249,0,2,255,253,0,191,255,249,0,0,0,127,252,0,63,249,0,0,0,0,11,244,0,41,0,0,0,0,0,0,96, + // 0x88ab 被 + 171,136,36,36,68,38,1,252,0,15,192,0,0,1,252,0,0,0,31,192,0,0,1,252,0,0,0,31,192,0,0,1,252,0,0,0,31,192,0,0,1,252,0,0,0,31,192,0,0,1,252,0,0,0,31,192,0,0,1,252,0,0,0,31,192,1,255,255,255,255,252,63,255,255,193,255,255,255,255,252,63,255,255,241,255,255,255,255,252,63,255,255,209,252,2,252,3,248,0,0,47,193,252,1,252,3,244,0,0,63,129,252,1,252,3,240,0,0,127,1,252,1,252,11,240,0,0,253,1,252,1,252,6,208,0,3,252,33,252,1,252,0,0,0,11,244,189,255,255,255,255,208,0,31,241,249,255,255,255,255,240,0,127,251,225,255,255,255,255,208,0,255,255,193,255,244,0,31,192,3,255,255,66,255,248,0,63,192,31,255,239,194,249,252,0,63,128,191,255,207,226,248,253,0,191,0,191,143,195,243,244,191,0,255,0,62,15,193,211,244,63,130,253,0,40,15,192,67,240,47,199,252,0,0,15,192,7,240,15,255,244,0,0,15,192,11,240,7,255,224,0,0,15,192,15,224,3,255,192,0,0,15,192,15,208,2,255,128,0,0,15,192,31,192,15,255,240,0,0,15,192,63,128,127,255,253,0,0,15,192,127,66,255,215,255,208,0,15,192,255,47,255,1,255,253,0,15,194,253,63,248,0,63,253,0,15,192,188,31,208,0,7,244,0,15,192,20,9,0,0,0,96, + // 0x88c5 装 + 197,136,36,37,77,38,1,251,0,0,63,0,0,7,240,0,0,0,0,63,0,0,7,240,0,0,3,64,63,0,0,7,240,0,0,15,224,63,0,0,7,240,0,0,15,252,63,0,0,7,240,0,0,2,255,63,15,255,255,255,255,252,0,190,63,15,255,255,255,255,252,0,40,63,15,255,255,255,255,252,0,0,63,0,0,7,240,0,0,0,0,63,0,0,7,240,0,0,0,1,63,0,0,7,240,0,0,0,31,127,0,0,7,240,0,0,2,255,191,0,0,7,240,0,0,47,255,191,0,0,7,240,0,0,127,248,63,3,255,255,255,255,240,63,64,63,3,255,255,255,255,240,20,0,63,3,255,255,255,255,240,0,0,63,0,0,0,0,0,0,0,0,42,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,47,255,255,255,255,255,255,255,252,0,0,1,255,143,224,0,29,0,0,0,31,253,3,244,0,191,128,0,6,255,224,2,252,7,255,64,6,255,255,128,0,255,127,244,0,127,255,255,128,0,63,255,128,0,31,249,47,128,0,15,252,0,0,9,0,47,128,1,67,255,64,0,0,0,47,218,255,192,255,244,0,0,26,255,255,255,192,47,255,144,0,63,255,255,254,128,3,255,253,0,63,255,165,0,0,0,111,248,0,25,64,0,0,0,0,1,176,0,0,0,0,0,0,0,0,0, + // 0x88dd 裝 + 221,136,35,37,77,38,2,251,5,64,31,128,0,15,208,0,0,15,192,31,192,0,15,224,0,0,15,192,31,192,0,15,224,0,0,15,192,31,192,0,15,224,0,0,15,192,31,192,0,15,224,0,0,15,255,255,207,255,255,255,255,224,15,255,255,207,255,255,255,255,224,15,255,255,207,255,255,255,255,224,10,128,31,192,0,15,224,0,0,0,0,31,192,0,15,224,0,0,170,170,191,192,0,15,224,0,0,255,255,255,192,0,15,224,0,0,255,255,255,192,0,15,224,0,0,7,240,31,192,0,15,224,0,0,11,224,31,195,255,255,255,255,128,15,208,31,195,255,255,255,255,128,63,192,31,195,255,255,255,255,128,255,64,31,192,0,0,0,0,0,254,0,31,194,252,0,0,0,0,116,0,5,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,0,0,11,254,63,128,0,52,0,0,1,191,244,15,208,2,254,0,0,111,255,64,11,240,31,253,0,111,255,254,0,3,253,255,224,0,255,254,254,0,0,255,254,0,0,127,144,190,0,0,63,240,0,0,16,0,190,0,22,15,253,0,0,0,0,255,191,255,3,255,208,0,0,175,255,255,255,0,191,254,64,1,255,255,255,229,0,15,255,244,0,255,233,64,0,0,1,191,224,0,80,0,0,0,0,0,6,192,0,0,0,0,0,0,0,0,0, + // 0x8907 複 + 7,137,36,36,68,38,1,252,0,26,64,0,10,64,0,0,0,0,47,128,0,15,208,0,0,0,0,47,128,0,47,192,0,0,0,0,47,128,0,63,128,0,0,0,0,47,128,0,191,255,255,255,252,0,47,128,0,255,255,255,255,252,0,47,128,3,255,255,255,255,252,0,47,128,7,244,0,0,0,0,63,255,255,79,224,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,95,191,255,255,255,192,0,0,63,5,127,85,85,111,192,0,0,190,0,126,0,0,31,192,0,0,252,0,127,0,0,47,192,0,2,248,0,127,255,255,255,192,0,7,240,224,127,255,255,255,192,0,15,225,244,126,0,0,31,192,0,47,227,224,126,0,0,31,192,0,127,255,192,127,255,255,255,192,0,255,255,64,127,255,255,255,192,3,255,255,0,21,255,85,85,64,15,255,175,128,1,254,0,0,0,63,255,143,208,7,254,170,169,0,191,159,135,192,31,255,255,255,192,62,31,130,0,191,255,255,255,64,40,31,128,7,255,192,0,254,0,0,31,128,47,255,240,3,252,0,0,31,128,63,211,252,31,244,0,0,31,128,14,0,255,191,208,0,0,31,128,0,0,127,255,64,0,0,31,128,0,0,127,255,64,0,0,31,128,0,31,255,255,249,0,0,31,128,27,255,254,127,255,249,0,31,128,127,255,224,7,255,253,0,31,128,63,249,0,0,111,248,0,31,128,30,64,0,0,0,176, + // 0x89d2 角 + 210,137,32,37,40,38,1,251,0,0,3,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,15,255,255,255,64,0,0,0,63,255,255,255,208,0,0,0,191,255,255,255,192,0,0,0,255,0,0,191,128,0,0,3,253,0,0,255,0,0,0,15,248,0,2,253,0,0,0,63,240,0,3,248,0,0,0,255,255,255,255,255,255,255,3,255,255,255,255,255,255,255,31,255,255,255,255,255,255,255,15,255,224,0,63,128,0,127,3,139,224,0,63,128,0,127,0,11,224,0,63,128,0,127,0,11,224,0,63,128,0,127,0,11,224,0,63,128,0,127,0,11,255,255,255,255,255,255,0,15,255,255,255,255,255,255,0,15,255,255,255,255,255,255,0,15,224,0,63,128,0,127,0,15,224,0,63,128,0,127,0,15,208,0,63,128,0,127,0,15,208,0,63,128,0,127,0,31,255,255,255,255,255,255,0,47,255,255,255,255,255,255,0,63,255,255,255,255,255,255,0,63,64,0,0,0,0,127,0,191,0,0,0,0,0,127,0,254,0,0,0,0,0,127,3,253,0,0,0,0,0,127,11,248,0,0,0,0,0,127,31,240,0,0,0,21,85,191,127,208,0,0,0,47,255,255,47,128,0,0,0,15,255,253,10,0,0,0,0,15,255,224,0,0,0,0,0,0,0,0, + // 0x8a08 計 + 8,138,36,36,68,38,1,252,0,0,0,0,0,0,253,0,0,7,255,255,240,0,0,254,0,0,7,255,255,244,0,0,254,0,0,7,255,255,244,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,127,255,255,254,0,0,254,0,0,127,255,255,254,0,0,254,0,0,127,255,255,254,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,11,255,255,240,0,0,254,0,0,11,255,255,241,255,255,255,255,255,10,170,170,161,255,255,255,255,255,0,0,0,1,255,255,255,255,255,0,0,0,0,85,85,255,85,85,11,255,255,240,0,0,254,0,0,11,255,255,240,0,0,254,0,0,11,255,255,240,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,11,255,255,240,0,0,254,0,0,15,255,255,240,0,0,254,0,0,15,255,255,240,0,0,254,0,0,15,208,3,240,0,0,254,0,0,15,208,3,240,0,0,254,0,0,15,208,3,240,0,0,254,0,0,15,208,3,240,0,0,254,0,0,15,208,3,240,0,0,254,0,0,15,208,3,240,0,0,254,0,0,15,255,255,240,0,0,254,0,0,15,255,255,240,0,0,254,0,0,15,255,255,240,0,0,254,0,0,15,208,0,0,0,0,254,0,0,5,64,0,0,0,0,254,0,0, + // 0x8a0a 訊 + 10,138,37,36,104,38,1,251,7,255,255,192,0,0,0,0,0,0,11,255,255,211,255,255,255,254,0,0,11,255,255,211,255,255,255,254,0,0,0,0,0,3,255,255,255,254,0,0,0,0,0,1,87,253,85,254,0,0,127,255,255,248,2,248,0,254,0,0,127,255,255,248,2,248,0,254,0,0,127,255,255,248,2,248,0,254,0,0,0,0,0,0,2,248,0,254,0,0,0,0,0,0,2,248,0,254,0,0,0,0,0,0,2,248,0,254,0,0,11,255,255,208,2,248,0,254,0,0,11,255,255,208,2,248,0,254,0,0,10,170,170,144,2,248,0,254,0,0,0,0,0,7,255,255,252,254,0,0,0,0,0,7,255,255,252,254,0,0,11,255,255,215,255,255,252,254,0,0,11,255,255,209,87,249,84,254,0,0,11,255,255,208,3,244,0,254,0,0,0,0,0,0,3,244,0,254,0,0,0,0,0,0,3,240,0,254,0,0,11,255,255,208,7,240,0,190,0,0,15,255,255,208,11,240,0,191,0,0,15,255,255,208,15,224,0,191,0,0,15,208,11,208,15,208,0,127,0,0,15,208,11,208,47,192,0,127,0,0,15,208,11,208,63,192,0,63,8,0,15,208,11,208,127,128,0,63,79,0,15,208,11,208,255,0,0,63,79,64,15,208,11,210,254,0,0,47,143,0,15,255,255,215,252,0,0,31,223,0,15,255,255,239,244,0,0,15,255,0,15,255,255,255,240,0,0,15,254,0,15,208,0,11,192,0,0,3,252,0,5,64,0,2,0,0,0,1,244,0,0,0,0,0,0,0,0,0,0,0, + // 0x8a18 記 + 24,138,36,35,59,38,1,252,7,255,255,244,0,0,0,0,0,7,255,255,244,47,255,255,255,224,7,255,255,244,47,255,255,255,224,0,0,0,0,47,255,255,255,224,0,0,0,0,21,85,85,95,224,127,255,255,254,0,0,0,15,224,127,255,255,254,0,0,0,15,224,127,255,255,254,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,11,255,255,240,0,0,0,15,224,11,255,255,240,0,0,0,15,224,10,170,170,160,5,85,85,95,224,0,0,0,0,31,255,255,255,224,0,0,0,0,31,255,255,255,224,11,255,255,240,31,255,255,255,224,11,255,255,240,31,192,0,15,224,11,255,255,240,31,192,0,15,224,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,11,255,255,240,31,192,0,0,0,15,255,255,240,31,192,0,0,0,15,255,255,240,31,192,0,0,0,15,208,3,240,31,192,0,0,0,15,208,3,240,31,192,0,0,144,15,208,3,240,31,192,0,0,253,15,208,3,240,31,192,0,0,253,15,208,3,240,31,192,0,0,253,15,208,3,240,31,192,0,0,252,15,255,255,240,31,224,0,3,252,15,255,255,240,15,255,255,255,248,15,255,255,240,11,255,255,255,240,15,208,0,0,2,255,255,255,208,5,64,0,0,0,21,85,84,0, + // 0x8a2d 設 + 45,138,36,35,59,38,1,252,7,255,255,208,31,255,255,240,0,11,255,255,224,31,255,255,240,0,11,255,255,224,31,255,255,240,0,0,0,0,0,31,192,11,240,0,0,0,0,0,31,192,7,240,0,127,255,255,252,31,192,7,240,0,127,255,255,252,31,192,7,240,0,127,255,255,252,47,192,7,240,120,0,0,0,0,63,128,7,240,126,0,0,0,0,127,64,7,240,126,0,0,0,0,255,0,7,240,189,11,255,255,225,253,0,7,255,252,11,255,255,231,252,0,3,255,252,10,170,170,171,244,0,1,255,240,0,0,0,2,208,0,0,0,0,0,0,0,0,64,0,0,0,0,11,255,255,226,255,255,255,255,208,11,255,255,226,255,255,255,255,192,11,255,255,226,255,255,255,255,192,0,0,0,0,6,128,0,63,128,0,0,0,0,47,192,0,191,0,11,255,255,224,15,224,1,254,0,15,255,255,224,7,244,3,252,0,15,255,255,224,3,252,11,248,0,15,208,7,224,1,255,31,240,0,15,208,7,224,0,191,255,208,0,15,208,7,224,0,63,255,128,0,15,208,7,224,0,15,255,0,0,15,208,7,224,0,63,255,64,0,15,208,7,224,2,255,255,240,0,15,255,255,224,47,255,191,254,64,15,255,255,231,255,252,11,255,248,15,255,255,239,255,208,0,255,252,15,208,0,3,253,0,0,27,244,5,64,0,2,128,0,0,0,160, + // 0x8a66 試 + 102,138,36,37,77,38,1,251,0,0,0,0,0,0,15,209,0,11,255,255,128,0,0,15,223,192,11,255,255,192,0,0,15,219,240,11,255,255,192,0,0,15,211,248,0,0,0,0,0,0,15,208,252,0,0,0,0,0,0,15,208,188,127,255,255,240,0,0,15,208,16,127,255,255,240,0,0,15,208,0,127,255,255,247,255,255,255,255,252,106,170,170,167,255,255,255,255,252,0,0,0,7,255,255,255,255,252,0,0,0,0,0,0,15,208,0,15,255,255,192,0,0,15,208,0,15,255,255,192,0,0,15,208,0,10,170,170,128,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,7,255,255,203,224,0,15,255,255,199,255,255,203,224,0,15,255,255,199,255,255,203,224,0,11,255,255,192,11,224,11,224,0,0,0,0,0,11,224,7,224,0,0,0,0,0,11,224,7,240,0,11,255,255,192,11,224,7,240,0,15,255,255,192,11,224,3,240,0,15,255,255,192,11,224,3,240,0,15,192,15,192,11,224,3,240,0,15,192,15,192,11,224,3,244,0,15,192,15,192,11,224,2,248,36,15,192,15,192,11,230,242,252,46,15,192,15,192,31,255,241,252,47,15,192,15,207,255,255,240,253,63,15,255,255,203,255,254,64,255,190,15,255,255,199,249,0,0,127,253,15,255,255,193,0,0,0,63,252,15,192,0,0,0,0,0,31,244,5,64,0,0,0,0,0,7,224,0,0,0,0,0,0,0,0,0, + // 0x8a8d 認 + 141,138,36,35,59,38,1,252,11,255,255,128,0,0,0,0,0,11,255,255,192,255,255,255,255,240,11,255,255,192,255,255,255,255,240,0,0,0,0,255,255,255,255,240,0,0,0,0,0,15,192,3,240,127,255,255,240,16,31,128,7,240,127,255,255,240,189,47,64,7,240,127,255,255,241,255,255,64,7,240,0,0,0,0,127,255,64,7,240,0,0,0,0,6,255,240,11,240,0,0,0,0,1,255,254,11,224,15,255,255,192,3,254,254,15,224,15,255,255,192,15,240,124,15,208,10,170,170,128,63,208,4,31,208,0,0,0,1,255,128,63,255,192,0,0,0,11,254,0,31,255,128,15,255,255,195,244,13,31,253,0,15,255,255,192,128,63,128,0,0,11,255,255,192,0,63,244,0,0,0,0,0,0,0,11,254,0,0,0,0,0,0,0,1,255,128,0,11,255,255,192,0,84,63,128,0,15,255,255,192,65,252,14,2,0,15,255,255,192,249,252,0,47,64,15,192,15,193,249,252,0,47,192,15,192,15,194,245,252,0,15,224,15,192,15,195,241,252,0,11,240,15,192,15,195,241,252,0,3,248,15,192,15,199,241,252,0,226,252,15,192,15,207,209,252,0,252,253,15,255,255,223,193,252,1,248,254,15,255,255,223,129,252,2,248,191,15,255,255,194,0,255,255,244,116,15,192,0,0,0,255,255,240,0,5,64,0,0,0,47,255,192,0, + // 0x8aa4 誤 + 164,138,36,35,59,38,1,252,7,255,255,64,0,63,255,255,224,11,255,255,64,0,63,255,255,224,11,255,255,64,0,63,255,255,224,0,0,0,2,248,63,64,11,224,0,0,0,2,248,63,64,11,224,127,255,255,210,248,63,64,11,224,127,255,255,226,248,63,64,11,224,127,255,255,226,248,63,64,11,224,0,0,0,2,248,63,64,11,224,0,0,0,2,248,63,255,255,224,0,0,0,2,248,63,255,255,224,15,255,255,66,248,63,255,255,224,15,255,255,66,248,0,0,0,0,10,170,170,66,248,0,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,2,255,255,255,255,128,15,255,255,66,255,255,255,255,128,15,255,255,66,255,255,255,255,128,11,255,255,66,248,0,0,63,128,0,0,0,0,80,0,0,63,128,0,0,0,0,0,0,0,63,128,15,255,255,64,0,0,0,63,128,15,255,255,79,255,255,255,255,254,15,255,255,79,255,255,255,255,254,15,192,31,79,255,255,255,255,254,15,192,31,64,0,64,0,16,0,15,192,31,64,3,240,1,244,0,15,192,31,64,11,252,3,253,0,15,192,31,64,31,240,1,255,0,15,192,31,64,127,208,0,127,192,15,255,255,65,255,128,0,47,240,15,255,255,75,254,0,0,15,248,15,255,255,111,248,0,0,3,253,15,192,0,15,208,0,0,1,253,5,64,0,2,0,0,0,0,144, + // 0x8abf 調 + 191,138,35,36,68,38,1,251,11,255,254,0,0,0,0,0,0,11,255,255,7,255,255,255,255,244,11,255,255,7,255,255,255,255,244,0,0,0,7,255,255,255,255,244,0,0,0,7,224,2,144,3,244,127,255,255,135,224,3,224,3,244,127,255,255,199,224,3,224,3,244,127,255,255,199,225,171,250,131,244,0,0,0,7,226,255,255,211,244,0,0,0,7,226,255,255,211,244,0,0,0,7,224,3,224,3,244,15,255,255,7,224,3,224,3,244,15,255,255,7,224,3,224,3,244,10,170,170,7,226,171,250,147,244,0,0,0,7,227,255,255,227,244,0,0,0,7,227,255,255,227,244,15,255,255,11,224,0,0,3,244,15,255,255,11,224,0,0,3,244,11,255,254,11,225,170,170,131,244,0,0,0,11,225,255,255,195,244,0,0,0,11,225,255,255,195,244,15,255,254,11,209,240,11,195,244,15,255,255,15,209,240,11,195,244,15,255,255,15,209,240,11,195,244,15,192,63,15,193,240,11,195,244,15,192,63,15,193,240,11,195,244,15,192,63,31,193,255,255,195,244,15,192,63,47,129,255,255,195,244,15,192,63,63,65,250,170,131,244,15,192,63,63,65,240,0,3,244,15,255,255,127,0,0,0,3,244,15,255,255,254,0,0,5,91,244,15,255,255,253,0,0,11,255,240,15,192,0,252,0,0,7,255,224,5,64,0,40,0,0,3,255,64,0,0,0,0,0,0,0,0,0, + // 0x8acb 請 + 203,138,36,36,68,38,1,252,0,0,0,0,0,2,248,0,0,7,255,255,192,0,3,248,0,0,11,255,255,209,170,171,254,170,164,11,255,255,209,255,255,255,255,248,0,0,0,1,255,255,255,255,248,0,0,0,0,0,3,248,0,0,127,255,255,248,0,3,248,0,0,127,255,255,248,127,255,255,255,240,127,255,255,248,127,255,255,255,240,0,0,0,0,21,87,253,85,80,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,11,255,255,215,255,255,255,255,253,11,255,255,215,255,255,255,255,253,10,170,170,146,170,170,170,170,168,0,0,0,0,0,0,0,0,0,0,0,0,0,26,170,170,170,128,11,255,255,208,47,255,255,255,192,11,255,255,208,47,255,255,255,192,11,255,255,208,47,128,0,15,192,0,0,0,0,47,128,0,15,192,0,0,0,0,47,213,85,95,192,11,255,255,208,47,255,255,255,192,15,255,255,208,47,255,255,255,192,15,255,255,208,47,128,0,15,192,15,208,11,208,47,128,0,15,192,15,208,11,208,47,255,255,255,192,15,208,11,208,47,255,255,255,192,15,208,11,208,47,213,85,111,192,15,208,11,208,47,128,0,15,192,15,208,11,208,47,128,0,15,192,15,255,255,208,47,128,0,15,192,15,255,255,208,47,128,0,31,192,15,255,255,208,47,128,15,255,192,15,208,0,0,47,128,15,255,128,5,64,0,0,47,128,7,249,0, + // 0x8b70 議 + 112,139,36,36,68,38,1,252,0,0,0,0,9,0,0,100,0,11,255,254,0,63,0,0,254,0,11,255,255,0,31,192,1,252,0,11,255,255,0,15,208,3,240,0,0,0,0,15,255,255,255,255,244,0,0,0,15,255,255,255,255,244,127,255,255,134,170,175,250,170,160,127,255,255,192,0,11,224,0,0,127,255,255,192,85,95,229,85,64,0,0,0,3,255,255,255,255,192,0,0,0,3,255,255,255,255,192,0,0,0,0,0,11,224,0,0,15,255,255,0,0,11,224,0,0,15,255,255,63,255,255,255,255,252,10,170,170,63,255,255,255,255,252,0,0,0,42,170,170,170,170,168,0,0,0,0,0,24,42,4,0,15,255,255,1,111,255,127,47,0,15,255,255,47,255,249,63,47,208,11,255,254,31,255,192,63,7,244,0,0,0,0,15,192,63,1,244,0,0,0,0,15,192,63,0,64,15,255,254,127,255,255,255,255,252,15,255,255,127,255,255,255,255,252,15,255,255,42,175,234,191,170,168,15,192,63,0,15,192,47,66,0,15,192,63,0,15,214,95,139,208,15,192,63,22,191,255,143,223,192,15,192,63,127,255,255,143,255,64,15,192,63,127,255,212,11,253,0,15,192,63,37,31,192,11,244,20,15,255,255,0,15,192,47,240,46,15,255,255,0,15,194,255,252,61,15,255,254,10,175,207,248,255,252,15,192,0,15,255,135,128,127,248,5,64,0,7,254,0,0,11,224, + // 0x8b80 讀 + 128,139,36,36,68,38,1,252,0,0,0,0,0,11,224,0,0,11,255,254,0,0,11,240,0,0,11,255,255,15,255,255,255,255,252,11,255,255,15,255,255,255,255,252,0,0,0,5,85,95,245,85,84,0,0,0,0,0,11,240,0,0,106,170,170,131,255,255,255,255,240,127,255,255,195,255,255,255,255,240,127,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,248,0,0,0,15,255,255,255,255,248,15,255,255,15,193,188,62,1,248,15,255,255,15,255,240,47,255,248,10,170,170,15,222,64,5,86,248,0,0,0,15,192,0,0,1,248,0,0,0,15,255,255,255,255,248,15,255,255,15,255,255,255,255,248,15,255,255,0,0,0,0,0,0,11,255,254,2,255,255,255,255,224,0,0,0,2,255,255,255,255,224,0,0,0,2,244,0,0,11,224,15,255,254,2,255,255,255,255,224,15,255,255,2,250,170,170,175,224,15,255,255,2,244,0,0,11,224,15,192,63,2,255,255,255,255,224,15,192,63,2,249,85,85,95,224,15,192,63,2,244,0,0,11,224,15,192,63,2,255,255,255,255,224,15,192,63,2,255,255,255,255,224,15,192,63,0,7,192,3,224,0,15,255,255,0,47,240,15,253,0,15,255,255,7,255,208,2,255,208,15,255,254,191,254,0,0,47,253,15,192,0,63,224,0,0,7,248,5,64,0,9,0,0,0,0,144, + // 0x8b8a 變 + 138,139,35,37,77,38,2,251,0,100,0,0,0,0,14,64,0,0,252,0,127,255,192,31,64,0,1,244,0,127,255,192,62,0,0,3,240,64,0,0,1,252,46,0,63,195,243,255,255,255,240,127,0,127,71,227,255,255,255,241,252,0,31,223,192,0,0,7,255,240,0,7,255,0,0,0,0,255,208,0,1,252,96,127,255,192,63,110,0,3,241,244,127,255,192,126,31,64,95,229,252,0,0,22,253,95,192,255,255,254,127,255,239,255,255,240,255,255,255,191,255,223,255,255,244,0,125,9,0,0,0,15,192,224,0,125,0,0,0,0,15,193,0,46,125,244,191,255,195,207,207,64,63,125,188,191,255,199,207,207,192,62,125,61,188,7,203,207,199,208,188,125,62,188,7,223,143,195,240,252,125,4,191,255,255,15,193,240,180,125,15,255,255,218,15,192,208,16,125,47,208,0,0,15,192,0,0,0,191,128,0,0,0,0,0,0,2,255,255,255,255,255,255,192,0,15,255,255,255,255,255,255,192,0,191,255,255,255,255,255,255,192,7,255,253,0,0,31,244,0,0,127,253,255,128,0,191,208,0,0,47,208,47,248,7,255,64,0,0,10,0,7,255,255,252,0,0,0,0,0,0,191,255,224,0,0,0,0,0,91,255,255,255,144,0,0,5,175,255,255,175,255,255,233,64,255,255,255,228,1,191,255,255,240,191,255,228,0,0,1,191,255,224,62,144,0,0,0,0,0,91,192,0,0,0,0,0,0,0,0,0, + // 0x8cc7 資 + 199,140,34,36,68,38,2,252,0,0,0,0,164,0,0,0,0,7,144,0,1,252,0,0,0,0,15,254,0,3,248,0,0,0,0,15,255,244,11,255,255,255,255,192,0,191,248,31,255,255,255,255,192,0,6,240,127,170,255,170,191,64,0,0,18,255,1,255,0,190,0,0,0,1,252,3,255,129,252,0,0,0,100,32,11,255,209,180,0,0,111,248,0,47,235,248,0,0,111,255,248,2,255,130,255,128,0,255,255,145,191,254,0,191,254,64,191,228,1,255,224,0,31,255,240,57,0,0,249,0,0,1,255,192,0,63,255,255,255,255,255,230,128,0,63,255,255,255,255,255,224,0,0,63,64,0,0,0,15,224,0,0,63,64,0,0,0,15,224,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,64,0,0,0,15,224,0,0,63,64,0,0,0,15,224,0,0,63,64,0,0,0,15,224,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,64,0,0,0,15,224,0,0,63,64,0,0,0,15,224,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,0,26,64,0,25,64,0,0,0,0,127,208,0,63,208,0,0,0,27,255,208,0,191,254,64,0,11,255,253,0,0,7,255,244,0,191,255,208,0,0,0,111,255,128,47,249,0,0,0,0,2,255,208,10,64,0,0,0,0,0,40,0, + // 0x8ddd 距 + 221,141,36,35,59,38,1,252,0,0,0,0,5,85,85,85,84,11,255,255,252,31,255,255,255,252,11,255,255,252,31,255,255,255,252,11,255,255,252,31,255,255,255,252,11,208,0,252,31,192,0,0,0,11,208,0,252,31,192,0,0,0,11,208,0,252,31,192,0,0,0,11,208,0,252,31,192,0,0,0,11,208,0,252,31,192,0,0,0,11,224,0,252,31,213,85,85,64,11,255,255,252,31,255,255,255,208,11,255,255,252,31,255,255,255,208,11,255,255,252,31,255,255,255,208,0,1,248,0,31,192,0,15,208,0,1,248,0,31,192,0,15,208,0,1,248,0,31,192,0,15,208,11,193,248,0,31,192,0,15,208,11,193,248,0,31,192,0,15,208,11,193,255,255,31,192,0,15,208,11,193,255,255,31,192,0,15,208,11,193,255,255,31,213,85,95,208,11,193,248,0,31,255,255,255,208,11,193,248,0,31,255,255,255,208,11,193,248,0,31,255,255,255,208,11,193,248,0,31,192,0,0,0,11,193,248,0,31,192,0,0,0,11,193,248,6,31,192,0,0,0,11,193,254,255,31,192,0,0,0,11,219,255,255,95,192,0,0,0,47,255,255,254,31,213,85,85,84,191,255,254,64,31,255,255,255,253,127,254,64,0,31,255,255,255,253,58,64,0,0,31,255,255,255,253,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0, + // 0x8eca 車 + 202,142,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,252,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,253,0,3,248,0,7,240,0,0,253,0,3,248,0,7,240,0,0,253,0,3,248,0,7,240,0,0,255,170,171,254,170,175,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,253,0,3,248,0,7,240,0,0,253,0,3,248,0,7,240,0,0,253,0,3,248,0,7,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,3,252,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0, + // 0x8edf 軟 + 223,142,36,36,68,38,1,252,0,1,252,0,0,122,0,0,0,0,1,252,0,0,127,0,0,0,0,1,252,0,0,191,0,0,0,0,1,252,0,0,254,0,0,0,63,255,255,255,208,253,0,0,0,63,255,255,255,208,253,0,0,0,63,255,255,255,209,252,0,0,0,0,1,252,0,2,255,255,255,248,0,1,252,0,3,255,255,255,252,0,1,252,0,3,255,255,255,248,15,255,255,255,203,240,254,3,248,15,255,255,255,207,224,253,3,244,15,234,254,175,223,208,253,3,240,15,128,248,15,239,192,253,7,240,15,128,248,15,255,128,253,7,224,15,149,249,95,255,0,253,11,208,15,255,255,255,254,0,253,15,192,15,255,255,255,204,0,253,15,192,15,128,248,15,192,0,254,0,64,15,128,248,15,192,0,254,0,0,15,128,248,15,192,1,255,0,0,15,255,255,255,192,2,255,0,0,15,255,255,255,192,3,255,64,0,10,171,254,170,64,7,255,192,0,0,1,252,0,0,15,223,192,0,0,1,252,0,0,31,203,224,0,127,255,255,255,240,63,131,240,0,127,255,255,255,240,191,3,252,0,127,255,255,255,241,254,1,253,0,0,1,252,0,3,252,0,255,64,0,1,252,0,15,244,0,63,208,0,1,252,0,127,224,0,47,244,0,1,252,2,255,192,0,15,254,0,1,252,3,254,0,0,3,253,0,1,252,0,248,0,0,0,248,0,1,248,0,80,0,0,0,32, + // 0x8ef8 軸 + 248,142,35,37,77,38,1,251,0,2,244,0,0,0,189,0,0,0,3,244,0,0,0,253,0,0,0,3,244,0,0,0,253,0,0,0,3,244,0,0,0,253,0,0,63,255,255,255,128,0,253,0,0,63,255,255,255,128,0,253,0,0,63,255,255,255,128,0,253,0,0,0,3,244,0,0,0,253,0,0,0,3,244,0,0,0,254,0,0,0,3,244,0,31,255,255,255,244,15,255,255,255,31,255,255,255,244,15,255,255,255,31,255,255,255,244,15,235,250,191,31,192,189,3,244,15,65,240,63,31,192,189,3,244,15,65,240,63,31,192,189,3,244,15,150,245,127,31,192,189,3,244,15,255,255,255,31,192,189,3,244,15,255,255,255,31,192,189,3,244,15,65,240,63,31,192,189,3,244,15,65,240,63,31,255,255,255,244,15,65,240,63,31,255,255,255,244,15,255,255,255,31,255,255,255,244,15,255,255,255,31,192,189,3,244,10,171,250,170,31,192,189,3,244,0,3,244,0,31,192,189,3,244,0,3,244,0,31,192,189,3,244,127,255,255,255,223,192,189,3,244,127,255,255,255,223,192,189,3,244,127,255,255,255,223,192,189,3,244,0,3,244,0,31,192,189,3,244,0,3,244,0,31,192,189,3,244,0,3,244,0,31,255,255,255,244,0,3,244,0,31,255,255,255,244,0,3,244,0,31,255,255,255,244,0,3,244,0,31,192,0,3,244,0,2,244,0,31,192,0,2,244,0,0,0,0,0,0,0,0,0, + // 0x8f09 載 + 9,143,35,36,68,38,2,252,0,0,190,0,0,190,0,0,0,0,0,190,0,0,254,7,208,0,0,0,190,0,0,254,15,244,0,15,255,255,255,240,254,3,253,0,15,255,255,255,240,254,0,255,64,15,255,255,255,240,254,0,127,192,0,0,190,0,0,254,0,47,64,0,0,190,0,0,190,0,13,0,0,0,190,0,0,190,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,190,0,0,127,0,0,0,0,0,190,0,0,127,0,0,0,63,255,255,255,252,127,0,62,64,63,255,255,255,252,63,0,127,0,26,170,255,170,164,63,64,191,0,0,0,190,0,0,63,64,253,0,15,255,255,255,240,63,129,252,0,15,255,255,255,240,63,131,248,0,15,128,125,2,240,47,199,244,0,15,128,125,2,240,47,207,240,0,15,255,255,255,240,31,239,208,0,15,255,255,255,240,15,255,192,0,15,128,125,2,240,15,255,0,0,15,128,125,2,240,11,254,0,0,15,255,255,255,240,11,252,1,64,15,255,255,255,240,15,248,1,224,0,0,190,0,0,63,248,1,244,106,170,255,170,168,255,252,2,244,127,255,255,255,255,255,254,2,244,127,255,255,255,255,252,191,67,240,0,0,190,0,191,240,63,235,240,0,0,190,0,255,192,31,255,224,0,0,190,0,62,0,11,255,192,0,0,189,0,20,0,1,190,0, + // 0x8f2f 輯 + 47,143,36,36,68,38,1,252,0,2,244,0,0,0,0,0,0,0,3,244,0,2,170,170,170,144,0,3,244,0,3,255,255,255,224,0,3,244,0,3,255,255,255,224,63,255,255,255,131,240,0,15,224,63,255,255,255,131,240,0,15,224,63,255,255,255,131,240,0,15,224,0,3,244,0,3,255,255,255,224,0,3,244,0,3,255,255,255,224,0,3,244,0,2,170,170,170,144,15,255,255,255,0,0,0,0,0,15,255,255,255,0,0,0,0,0,15,235,250,191,127,255,255,255,253,15,65,240,63,127,255,255,255,253,15,65,240,63,63,255,255,255,253,15,150,245,127,3,244,0,15,208,15,255,255,255,3,244,0,15,208,15,255,255,255,3,250,170,175,208,15,65,240,63,3,255,255,255,208,15,65,240,63,3,255,255,255,208,15,65,240,63,3,244,0,15,208,15,255,255,255,3,244,0,15,208,15,255,255,255,3,244,0,15,208,10,171,250,170,3,255,255,255,208,0,3,244,0,3,255,255,255,208,0,3,244,0,3,250,170,175,208,127,255,255,255,195,244,0,15,208,127,255,255,255,195,244,0,15,208,127,255,255,255,195,249,171,255,253,0,3,244,1,255,255,255,255,253,0,3,244,0,255,255,255,255,253,0,3,244,0,255,250,148,15,208,0,3,244,0,0,0,0,15,208,0,3,244,0,0,0,0,15,208,0,3,244,0,0,0,0,15,208,0,2,244,0,0,0,0,15,208, + // 0x8f38 輸 + 56,143,36,36,68,38,1,252,0,11,224,0,0,1,168,0,0,0,11,224,0,0,3,254,0,0,0,11,224,0,0,11,255,0,0,0,11,224,0,0,31,255,192,0,63,255,255,253,0,63,143,240,0,63,255,255,253,0,255,7,248,0,63,255,255,253,3,253,2,254,0,0,11,224,0,15,248,0,255,128,0,11,224,0,63,240,0,63,240,0,11,224,0,255,192,0,15,253,31,255,255,255,255,255,255,251,255,31,255,255,251,252,255,255,244,253,31,171,234,248,224,255,255,244,40,31,3,192,248,0,0,0,0,0,31,3,192,248,0,0,0,0,80,31,87,229,248,106,170,64,1,244,31,255,255,248,191,255,194,129,244,31,255,255,248,191,255,199,193,244,31,3,192,248,188,11,199,193,244,31,3,192,248,188,11,199,193,244,31,3,192,248,189,95,199,193,244,31,255,255,248,191,255,199,193,244,31,255,255,248,191,255,199,193,244,26,175,250,164,188,11,199,193,244,0,11,224,0,188,11,199,193,244,0,11,224,0,188,11,199,193,244,127,255,255,253,191,255,199,193,244,127,255,255,253,191,255,199,193,244,127,255,255,253,190,175,199,193,244,0,11,224,0,188,11,199,193,244,0,11,224,0,188,11,192,1,244,0,11,224,0,188,11,192,1,244,0,11,224,0,188,11,192,1,244,0,11,224,0,188,31,192,255,244,0,11,224,0,188,127,128,191,240,0,7,208,0,188,62,0,105,64, + // 0x8f49 轉 + 73,143,36,36,68,38,1,252,0,3,240,0,0,0,252,0,0,0,3,240,0,0,0,252,0,0,0,3,240,0,0,0,252,0,0,0,3,240,0,191,255,255,255,252,63,255,255,254,191,255,255,255,252,63,255,255,254,106,170,254,170,168,63,255,255,254,0,0,252,0,0,0,3,240,0,63,255,255,255,240,0,3,240,0,63,255,255,255,240,0,3,240,0,63,0,252,3,240,15,255,255,253,63,0,252,3,240,15,255,255,253,63,255,255,255,240,15,171,250,189,63,255,255,255,240,15,66,224,125,63,0,252,3,240,15,66,224,125,63,0,252,3,240,15,151,245,189,63,0,252,3,240,15,255,255,253,63,255,255,255,240,15,255,255,253,63,255,255,255,240,15,66,224,125,0,0,252,31,64,15,66,224,125,0,0,253,95,208,15,66,224,125,255,255,255,255,244,15,255,255,253,255,255,255,255,252,15,255,255,253,170,170,86,253,189,10,171,250,168,0,0,1,252,32,0,3,240,0,170,170,171,254,169,0,3,240,0,255,255,255,255,253,191,255,255,255,255,255,255,255,253,191,255,255,255,1,192,1,252,0,191,255,255,255,11,240,1,252,0,0,3,240,0,3,252,1,252,0,0,3,240,0,1,253,1,252,0,0,3,240,0,0,191,1,252,0,0,3,240,0,0,60,1,252,0,0,3,240,0,0,2,255,252,0,0,3,240,0,0,1,255,248,0,0,3,240,0,0,0,255,144,0, + // 0x8fd1 近 + 209,143,36,36,68,38,1,252,0,0,0,0,0,0,0,40,0,2,64,0,0,0,0,27,254,0,15,224,0,0,0,111,255,255,192,31,252,0,7,255,255,255,249,0,3,255,0,7,255,255,249,0,0,0,255,192,7,255,164,0,0,0,0,63,240,7,240,0,0,0,0,0,15,224,7,240,0,0,0,0,0,3,64,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,255,255,255,255,252,0,0,0,7,255,255,255,255,252,0,0,0,7,255,255,255,255,252,0,0,0,11,245,85,127,149,84,63,255,208,11,240,0,63,64,0,63,255,208,15,224,0,63,64,0,63,255,208,15,224,0,63,64,0,21,95,208,15,208,0,63,64,0,0,15,208,31,192,0,63,64,0,0,15,208,47,192,0,63,64,0,0,15,208,63,128,0,63,64,0,0,15,208,127,64,0,63,64,0,0,15,208,255,0,0,63,64,0,0,15,209,254,0,0,63,64,0,0,15,211,252,0,0,63,64,0,0,15,219,244,0,0,63,64,0,0,31,210,240,0,0,63,64,0,0,127,240,128,0,0,63,64,0,2,255,253,0,0,0,63,64,0,15,255,255,144,0,0,0,0,0,127,248,127,254,149,85,85,85,169,127,224,31,255,255,255,255,255,252,63,64,2,255,255,255,255,255,252,28,0,0,26,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0x8fd4 返 + 212,143,36,35,59,38,1,252,2,64,0,0,0,0,0,0,0,15,208,0,31,255,255,255,255,240,31,248,0,31,255,255,255,255,240,7,254,0,31,255,255,255,255,240,1,255,128,31,213,85,85,85,80,0,127,208,31,192,0,0,0,0,0,31,224,31,192,0,0,0,0,0,11,64,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,47,255,255,255,255,128,0,0,0,47,255,255,255,255,128,0,0,0,47,255,255,255,255,64,0,0,0,47,239,192,0,191,0,0,0,0,47,207,208,0,254,0,63,255,192,47,139,240,1,253,0,63,255,192,63,135,244,3,252,0,63,255,192,63,131,252,11,244,0,21,111,192,63,65,254,31,240,0,0,47,192,127,0,191,127,208,0,0,47,192,191,0,63,255,128,0,0,47,192,255,0,31,255,0,0,0,47,192,253,0,15,253,0,0,0,47,193,252,0,63,255,64,0,0,47,195,252,1,255,255,240,0,0,47,199,244,27,255,127,254,0,0,47,207,241,255,252,11,255,228,0,47,203,210,255,224,1,255,252,0,127,241,192,255,0,0,47,244,2,255,252,0,52,0,0,1,224,15,255,255,128,0,0,0,0,0,127,244,191,254,149,85,85,85,105,127,208,47,255,255,255,255,255,252,63,64,2,255,255,255,255,255,252,28,0,0,27,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0x9000 退 + 0,144,36,34,50,38,1,252,3,208,0,15,255,255,255,254,0,15,248,0,15,255,255,255,254,0,7,255,0,15,255,255,255,254,0,0,255,192,15,224,0,0,190,0,0,47,240,15,224,0,0,190,0,0,11,240,15,250,170,170,254,0,0,3,128,15,255,255,255,254,0,0,0,0,15,255,255,255,254,0,0,0,0,15,224,0,0,190,0,0,0,0,15,224,0,0,190,0,0,0,0,15,224,0,0,190,0,0,0,0,15,255,255,255,254,0,0,0,0,15,255,255,255,254,0,63,255,208,15,255,255,255,255,0,63,255,208,15,224,31,192,3,192,63,255,208,15,224,15,208,31,244,21,95,208,15,224,11,240,191,224,0,15,208,15,224,3,247,255,64,0,15,208,15,224,3,255,248,0,0,15,208,15,224,0,255,208,0,0,15,208,15,224,0,191,128,0,0,15,208,15,224,6,127,224,0,0,15,208,15,230,255,95,252,0,0,15,208,31,255,255,135,255,128,0,15,209,255,255,254,65,255,248,0,31,208,255,255,144,0,127,248,0,127,240,255,144,0,0,11,240,2,255,253,80,0,0,0,0,128,15,255,255,144,0,0,0,0,0,127,248,127,254,149,85,85,85,169,127,224,31,255,255,255,255,255,252,63,64,2,255,255,255,255,255,252,28,0,0,26,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0x901f 速 + 31,144,36,36,68,38,1,252,0,0,0,0,0,63,64,0,0,2,64,0,0,0,63,64,0,0,15,224,0,0,0,63,64,0,0,31,248,0,0,0,63,64,0,0,7,255,3,255,255,255,255,255,248,1,255,195,255,255,255,255,255,248,0,63,243,255,255,255,255,255,248,0,15,240,0,0,63,64,0,0,0,7,128,0,0,63,64,0,0,0,1,0,0,0,63,64,0,0,0,0,0,127,255,255,255,255,192,0,0,0,127,255,255,255,255,192,0,0,0,127,170,255,234,191,192,0,0,0,127,0,63,64,15,192,0,0,0,127,0,63,64,15,192,63,255,208,127,0,63,64,15,192,63,255,208,127,0,63,64,15,192,63,255,208,127,255,255,255,255,192,21,95,208,127,255,255,255,255,192,0,15,208,127,255,255,255,255,192,0,15,208,0,7,255,244,0,0,0,15,208,0,31,255,253,0,0,0,15,208,0,127,191,255,128,0,0,15,208,1,255,63,95,240,0,0,15,208,11,252,63,71,253,0,0,15,208,127,240,63,65,255,192,0,15,211,255,192,63,64,127,248,0,31,211,254,0,63,64,31,240,0,127,240,244,0,63,64,2,208,2,255,253,0,0,63,64,0,0,15,255,255,144,0,21,0,0,0,127,248,127,254,149,85,85,85,169,127,224,31,255,255,255,255,255,252,63,64,2,255,255,255,255,255,252,28,0,0,26,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0x9023 連 + 35,144,35,36,68,38,1,252,0,0,0,0,0,127,0,0,0,3,64,0,0,0,127,0,0,0,31,224,0,0,0,127,0,0,0,31,248,7,255,255,255,255,255,244,3,254,7,255,255,255,255,255,244,0,255,135,255,255,255,255,255,244,0,127,208,0,0,127,0,0,0,0,31,208,0,0,127,0,0,0,0,15,64,85,85,191,85,85,0,0,0,0,191,255,255,255,255,64,0,0,0,191,255,255,255,255,64,0,0,0,190,0,127,0,63,64,0,0,0,190,0,127,0,63,64,0,0,0,191,85,191,85,127,64,0,0,0,191,255,255,255,255,64,63,255,128,191,255,255,255,255,64,63,255,128,190,0,127,0,63,64,63,255,128,190,0,127,0,63,64,21,111,128,191,170,191,170,191,64,0,47,128,191,255,255,255,255,64,0,47,128,191,255,255,255,255,64,0,47,128,0,0,127,0,0,0,0,47,128,0,0,127,0,0,0,0,47,128,0,0,127,0,0,0,0,47,143,255,255,255,255,255,252,0,47,143,255,255,255,255,255,252,0,47,143,255,255,255,255,255,252,0,47,192,0,0,127,0,0,0,0,127,224,0,0,127,0,0,0,2,255,248,0,0,127,0,0,0,11,255,255,64,0,127,0,0,0,63,244,255,250,84,0,1,85,84,127,208,47,255,255,255,255,255,252,63,0,7,255,255,255,255,255,252,28,0,0,27,255,255,255,255,244,0,0,0,0,0,0,0,0,0, + // 0x9032 進 + 50,144,35,36,68,38,1,252,0,0,0,0,80,0,16,0,0,2,64,0,0,255,0,127,64,0,15,208,0,2,253,0,191,0,0,47,244,0,3,252,0,254,0,0,11,253,0,11,248,1,253,0,0,1,255,64,15,240,3,252,0,0,0,127,192,63,255,255,255,255,240,0,47,208,191,255,255,255,255,240,0,15,65,255,255,255,255,255,240,0,0,7,255,192,7,240,0,0,0,0,31,255,192,7,240,0,0,0,0,127,255,192,7,240,0,0,0,0,191,255,255,255,255,255,192,0,0,47,47,255,255,255,255,192,0,0,8,47,255,255,255,255,192,63,255,128,47,192,7,240,0,0,63,255,128,47,192,7,240,0,0,63,255,128,47,192,7,240,0,0,21,111,128,47,192,7,240,0,0,0,47,128,47,255,255,255,255,192,0,47,128,47,255,255,255,255,192,0,47,128,47,255,255,255,255,192,0,47,128,47,192,7,240,0,0,0,47,128,47,192,7,240,0,0,0,47,128,47,192,7,240,0,0,0,47,128,47,255,255,255,255,248,0,47,128,47,255,255,255,255,248,0,47,192,47,255,255,255,255,248,0,127,224,0,0,0,0,0,0,2,255,248,0,0,0,0,0,0,11,255,255,64,0,0,0,0,0,63,244,255,250,84,0,1,85,84,127,208,47,255,255,255,255,255,252,63,0,7,255,255,255,255,255,252,28,0,0,27,255,255,255,255,244,0,0,0,0,0,0,0,0,0, + // 0x904b 運 + 75,144,35,35,59,38,1,252,2,64,2,170,170,170,170,170,160,15,208,3,255,255,255,255,255,244,47,244,3,255,255,255,255,255,244,11,253,3,240,0,0,0,3,244,2,255,67,240,0,63,0,3,244,0,191,193,80,0,63,0,1,80,0,47,224,170,170,191,170,170,128,0,15,64,255,255,255,255,255,208,0,1,0,255,255,255,255,255,208,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,63,255,255,255,255,64,0,0,0,63,255,255,255,255,64,0,0,0,63,85,127,85,127,64,63,255,128,63,0,63,0,47,64,63,255,128,63,255,255,255,255,64,63,255,128,63,255,255,255,255,64,21,111,128,63,0,127,64,63,64,0,47,128,63,0,63,0,47,64,0,47,128,63,85,127,85,127,64,0,47,128,63,255,255,255,255,64,0,47,128,63,255,255,255,255,64,0,47,128,0,0,63,0,0,0,0,47,128,0,0,63,0,0,0,0,47,139,255,255,255,255,255,252,0,47,139,255,255,255,255,255,252,0,47,198,170,170,191,170,170,168,0,127,224,0,0,63,0,0,0,2,255,248,0,0,63,0,0,0,11,255,255,64,0,63,0,0,0,63,244,255,250,84,0,1,85,84,127,208,47,255,255,255,255,255,252,63,0,7,255,255,255,255,255,252,28,0,0,27,255,255,255,255,244,0,0,0,0,0,0,0,0,0, + // 0x9054 達 + 84,144,35,36,68,38,1,252,0,0,0,0,0,63,0,0,0,2,0,0,0,0,63,0,0,0,15,192,0,0,0,63,0,0,0,47,244,0,63,255,255,255,255,64,11,253,0,63,255,255,255,255,64,2,255,64,42,170,191,170,170,0,0,191,192,0,0,63,0,0,0,0,47,224,0,0,63,0,0,0,0,15,75,255,255,255,255,255,252,0,1,11,255,255,255,255,255,252,0,0,6,171,250,170,175,250,168,0,0,0,3,248,0,15,240,0,0,0,0,1,252,0,15,208,0,0,0,0,0,254,0,47,192,0,0,0,2,170,254,170,191,170,164,63,255,131,255,255,255,255,255,244,63,255,131,255,255,255,255,255,244,63,255,128,0,0,63,0,0,0,21,111,128,0,0,63,0,0,0,0,47,128,106,170,191,170,170,128,0,47,128,127,255,255,255,255,192,0,47,128,127,255,255,255,255,192,0,47,128,0,0,63,0,0,0,0,47,128,0,0,63,0,0,0,0,47,130,170,170,191,170,170,164,0,47,131,255,255,255,255,255,248,0,47,131,255,255,255,255,255,248,0,47,192,0,0,63,0,0,0,0,127,208,0,0,63,0,0,0,1,255,244,0,0,63,0,0,0,11,255,255,64,0,0,0,0,0,63,244,255,250,84,0,1,85,84,127,208,47,255,255,255,255,255,252,63,0,7,255,255,255,255,255,252,28,0,0,27,255,255,255,255,244,0,0,0,0,0,0,0,0,0, + // 0x9078 選 + 120,144,36,35,59,38,1,252,7,0,1,85,85,65,85,85,64,47,192,11,255,255,199,255,255,208,47,240,11,255,255,199,255,255,208,11,252,0,0,15,192,0,11,208,2,255,0,0,15,192,0,11,208,0,255,131,255,255,194,255,255,208,0,63,195,255,255,194,255,255,208,0,30,3,245,85,66,249,85,64,0,0,3,240,0,130,244,0,96,0,0,3,240,1,246,248,0,188,0,0,3,255,255,241,255,255,252,0,0,1,255,255,224,255,255,244,0,0,0,21,170,64,26,149,64,0,0,0,0,190,0,63,64,0,63,255,64,0,190,0,63,64,0,63,255,66,170,255,170,191,234,160,63,255,67,255,255,255,255,255,240,21,127,67,255,255,255,255,255,240,0,63,64,0,190,0,63,64,0,0,63,64,0,190,0,63,64,0,0,63,64,0,190,0,63,64,0,0,63,79,255,255,255,255,255,252,0,63,79,255,255,255,255,255,252,0,63,74,170,186,170,170,170,168,0,63,64,0,126,0,15,64,0,0,63,64,2,255,0,63,240,0,0,63,64,47,252,0,11,254,0,0,191,194,255,208,0,1,255,208,2,255,241,254,0,0,0,47,244,11,255,254,96,0,0,0,7,64,63,240,255,229,0,0,0,0,20,127,192,63,255,255,255,255,255,253,63,0,7,255,255,255,255,255,252,28,0,0,47,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0x9084 還 + 132,144,35,35,59,38,1,252,3,64,1,255,255,255,255,255,192,31,224,1,255,255,255,255,255,192,31,248,1,252,31,129,248,15,192,7,254,1,248,15,128,248,15,192,1,255,65,248,15,128,248,15,192,0,191,193,248,15,128,248,15,192,0,47,225,255,255,255,255,255,192,0,15,129,255,255,255,255,255,192,0,5,0,0,0,0,0,0,0,0,0,5,85,85,85,85,85,84,0,0,15,255,255,255,255,255,252,0,0,15,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,128,63,255,255,255,255,0,63,255,128,63,255,255,255,255,0,63,255,128,63,0,0,0,191,0,21,111,128,63,0,0,0,191,0,0,47,128,63,255,255,255,255,0,0,47,128,63,255,255,255,255,64,0,47,128,0,7,255,0,31,224,0,47,128,0,31,255,192,127,192,0,47,128,0,255,255,245,254,0,0,47,128,11,254,255,255,244,0,0,47,129,255,244,254,191,224,0,0,47,139,255,192,254,31,255,64,0,47,195,253,0,254,2,255,248,0,127,224,208,0,254,0,111,240,2,255,248,0,0,254,0,1,192,11,255,255,64,0,169,0,0,0,63,244,255,250,84,0,1,85,84,127,208,47,255,255,255,255,255,252,63,0,7,255,255,255,255,255,252,28,0,0,27,255,255,255,255,244,0,0,0,0,0,0,0,0,0, + // 0x908a 邊 + 138,144,35,36,68,38,1,252,0,64,0,0,0,62,0,0,0,1,240,0,0,0,191,0,0,0,7,254,0,47,255,255,255,255,0,2,255,128,47,234,170,170,255,0,0,127,240,47,128,0,0,191,0,0,15,240,47,255,255,255,255,0,0,3,192,47,234,170,170,255,0,0,0,0,47,128,0,0,191,0,1,0,0,47,255,255,255,255,0,15,208,0,47,234,170,170,255,0,63,248,0,47,128,0,0,191,0,11,255,0,47,255,255,255,255,0,0,255,192,26,170,191,170,169,0,0,47,64,0,0,127,0,0,0,0,10,7,255,255,255,255,255,248,0,0,7,255,255,255,255,255,248,0,0,7,224,31,3,240,2,248,0,0,7,224,127,3,240,47,248,127,255,128,6,252,2,255,253,0,127,255,128,255,224,127,255,248,0,127,255,128,126,0,127,0,0,0,21,127,135,255,255,255,255,255,252,0,63,135,255,255,255,255,255,252,0,63,128,0,31,192,0,0,0,0,63,128,0,47,128,0,0,0,0,63,128,0,127,255,255,252,0,0,63,128,1,255,255,255,252,0,0,63,128,31,252,0,2,248,0,0,63,211,255,244,0,3,240,0,1,255,245,255,128,15,255,240,0,11,255,255,228,0,11,255,128,0,63,244,255,249,80,0,84,1,84,127,208,63,255,255,255,255,255,252,63,64,7,255,255,255,255,255,252,28,0,0,27,255,255,255,255,248,0,0,0,0,0,0,0,0,0, + // 0x90e8 部 + 232,144,36,36,68,38,1,252,0,0,42,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,63,0,0,5,85,85,64,0,0,63,0,0,47,255,255,244,31,255,255,255,254,47,255,255,253,31,255,255,255,254,47,255,255,252,31,255,255,255,254,47,192,3,248,0,4,0,5,0,47,192,11,240,0,252,0,15,208,47,192,15,224,0,253,0,15,192,47,192,31,208,0,190,0,31,192,47,192,47,192,0,127,0,63,64,47,192,63,64,0,63,0,63,0,47,192,127,0,0,63,64,126,0,47,192,254,0,0,37,0,25,0,47,193,252,0,127,255,255,255,255,47,194,252,0,127,255,255,255,255,47,194,253,0,127,255,255,255,255,47,192,191,0,0,0,0,0,0,47,192,47,192,0,0,0,0,0,47,192,15,224,0,0,0,0,0,47,192,7,240,3,255,255,255,240,47,192,3,244,3,255,255,255,240,47,192,2,248,3,255,255,255,240,47,192,2,252,3,244,0,7,240,47,192,2,252,3,244,0,7,240,47,192,2,252,3,244,0,7,240,47,192,3,252,3,244,0,7,240,47,193,111,248,3,244,0,7,240,47,195,255,240,3,244,0,7,240,47,195,255,224,3,244,0,7,240,47,194,254,64,3,255,255,255,240,47,192,0,0,3,255,255,255,240,47,192,0,0,3,255,255,255,240,47,192,0,0,3,244,0,7,240,47,192,0,0,3,244,0,3,240,31,192,0,0, + // 0x91cb 釋 + 203,145,36,36,68,38,1,252,0,0,0,64,0,0,0,0,0,0,0,27,240,85,85,85,85,80,1,111,255,248,255,255,255,255,240,63,255,255,224,255,255,255,255,240,63,255,240,0,252,46,11,130,240,21,7,224,0,252,46,11,130,240,6,7,224,188,252,46,11,130,240,31,71,224,252,252,46,11,130,240,15,135,224,252,255,255,255,255,240,15,199,225,244,255,255,255,255,240,11,199,226,240,85,87,253,85,80,7,215,227,224,0,2,248,0,0,3,215,231,208,21,87,253,85,64,1,7,224,128,63,255,255,255,192,127,255,255,253,63,255,255,255,192,127,255,255,253,0,2,248,0,0,127,255,255,253,0,2,248,0,0,0,31,224,3,255,255,255,255,253,0,47,240,3,255,255,255,255,253,0,63,248,1,91,229,85,190,84,0,127,255,0,3,224,0,189,0,0,255,255,192,3,240,0,252,0,1,255,255,240,1,248,2,244,0,3,247,227,252,0,248,2,240,0,7,231,224,249,255,255,255,255,248,15,199,224,113,255,255,255,255,248,31,199,224,0,170,171,254,170,164,63,71,224,0,0,2,248,0,0,191,7,224,0,106,171,254,170,144,61,7,224,0,127,255,255,255,240,40,7,224,0,127,255,255,255,240,0,7,224,0,0,2,248,0,0,0,7,224,0,0,2,248,0,0,0,7,224,0,0,2,248,0,0,0,7,224,0,0,2,248,0,0,0,7,224,0,0,2,248,0,0, + // 0x91cd 重 + 205,145,34,35,59,38,2,253,0,0,0,0,0,0,22,128,0,0,0,0,5,106,255,255,192,0,2,255,255,255,255,255,255,240,0,1,255,255,255,255,255,233,64,0,1,255,170,151,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,254,85,87,253,85,91,240,0,0,254,0,3,248,0,7,240,0,0,254,0,3,248,0,11,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,254,0,3,248,0,7,240,0,0,254,0,3,248,0,7,240,0,0,255,85,87,253,85,91,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,3,255,255,255,255,255,255,253,0,3,255,255,255,255,255,255,254,0,3,255,255,255,255,255,255,254,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x91cf 量 + 207,145,34,34,50,38,2,253,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,0,0,0,0,31,192,0,0,63,0,0,0,0,31,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,63,0,0,0,0,31,192,0,0,63,0,0,0,0,31,192,0,0,63,255,255,255,255,255,192,0,0,63,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,170,170,170,170,170,170,170,170,160,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,253,0,3,248,0,7,240,0,0,253,0,3,248,0,7,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,253,0,3,248,0,7,240,0,0,253,0,3,248,0,7,240,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,3,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,252,0,1,85,85,87,253,85,85,84,0,0,0,0,3,248,0,0,0,0,170,170,170,171,254,170,170,170,160,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x91dd 針 + 221,145,36,36,68,38,1,252,0,2,253,0,0,0,106,0,0,0,3,255,64,0,0,127,0,0,0,11,255,208,0,0,127,0,0,0,15,255,248,0,0,127,0,0,0,63,199,254,0,0,127,0,0,0,191,65,255,64,0,127,0,0,1,255,0,127,208,0,127,0,0,3,252,0,31,240,0,127,0,0,15,244,0,11,224,0,127,0,0,63,208,0,3,128,0,127,0,0,255,255,255,254,0,0,127,0,0,63,255,255,253,0,0,127,0,0,5,255,255,253,21,85,191,149,85,0,0,252,0,63,255,255,255,254,0,0,252,0,63,255,255,255,254,0,0,252,0,63,255,255,255,254,0,1,252,0,0,0,127,0,0,47,255,255,255,192,0,127,0,0,47,255,255,255,192,0,127,0,0,47,255,255,255,192,0,127,0,0,0,0,252,0,0,0,127,0,0,0,0,252,4,0,0,127,0,0,11,192,252,31,128,0,127,0,0,11,192,252,47,64,0,127,0,0,7,208,252,63,0,0,127,0,0,3,224,252,62,0,0,127,0,0,3,240,252,125,0,0,127,0,0,2,240,252,188,0,0,127,0,0,1,240,252,20,0,0,127,0,0,0,0,252,22,208,0,127,0,0,0,1,255,255,208,0,127,0,0,26,255,255,255,208,0,127,0,0,63,255,255,254,64,0,127,0,0,47,255,233,0,0,0,127,0,0,30,144,0,0,0,0,127,0,0,0,0,0,0,0,0,127,0,0, + // 0x9215 鈕 + 21,146,36,36,68,38,1,252,0,7,240,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,31,255,0,21,85,85,85,0,0,63,255,208,63,255,255,255,128,0,127,111,240,63,255,255,255,128,0,254,11,252,63,255,255,255,128,3,252,3,255,0,63,128,63,128,11,244,0,255,0,63,64,63,128,31,224,0,61,0,63,64,63,128,127,192,0,40,0,63,64,63,64,191,255,255,240,0,63,0,63,64,47,255,255,240,0,127,0,63,64,3,255,255,240,0,127,0,63,64,0,3,240,0,0,127,0,63,64,0,3,240,0,0,127,0,63,64,0,3,240,0,0,191,0,63,64,63,255,255,252,255,255,255,255,254,63,255,255,252,255,255,255,255,254,63,255,255,252,255,255,255,255,254,0,3,240,0,85,254,85,191,84,0,3,240,0,0,253,0,127,0,11,3,240,252,0,252,0,127,0,15,131,240,252,0,252,0,127,0,15,195,240,248,1,252,0,127,0,11,195,241,240,1,252,0,191,0,7,211,242,240,2,252,0,191,0,3,211,243,224,2,248,0,191,0,3,227,243,208,2,248,0,191,0,2,67,240,0,3,248,0,190,0,0,3,240,26,3,244,0,254,0,0,7,255,255,3,244,0,254,0,6,191,255,255,87,249,85,255,84,63,255,255,255,255,255,255,255,254,63,255,228,11,255,255,255,255,254,46,144,0,11,255,255,255,255,254,0,0,0,0,0,0,0,0,0, + // 0x932f 錯 + 47,147,36,36,68,38,1,252,0,7,240,0,0,252,1,248,0,0,15,252,0,0,252,2,248,0,0,31,255,0,0,252,2,248,0,0,63,255,192,0,252,2,248,0,0,127,111,240,0,252,2,248,0,0,254,11,252,191,255,255,255,248,3,252,2,254,191,255,255,255,248,11,244,0,255,255,255,255,255,248,31,224,0,62,0,252,2,248,0,127,192,0,24,0,252,2,248,0,191,255,255,240,0,252,2,248,0,47,255,255,240,0,252,2,248,0,3,255,255,240,0,252,2,248,0,0,3,240,3,255,255,255,255,253,0,3,240,3,255,255,255,255,253,0,3,240,3,255,255,255,255,253,63,255,255,253,0,0,0,0,0,63,255,255,252,0,0,0,0,0,63,255,255,252,0,0,0,0,0,0,3,240,0,15,255,255,255,208,0,3,240,0,15,255,255,255,208,6,3,240,184,15,255,255,255,208,15,67,240,252,15,192,0,15,208,15,195,240,248,15,192,0,15,208,11,195,241,244,15,192,0,15,208,7,211,242,240,15,234,170,175,208,3,211,243,224,15,255,255,255,208,3,227,243,208,15,255,255,255,208,2,131,240,64,15,192,0,15,208,0,3,241,190,15,192,0,15,208,0,27,255,255,15,192,0,15,208,47,255,255,255,15,255,255,255,208,63,255,255,144,15,255,255,255,208,63,254,80,0,15,255,255,255,208,25,64,0,0,15,192,0,15,208,0,0,0,0,10,128,0,10,128, + // 0x9375 鍵 + 117,147,36,36,68,38,1,252,0,15,208,0,0,0,10,128,0,0,31,240,0,0,0,15,128,0,0,63,252,0,0,0,15,128,0,0,127,255,31,255,138,175,234,160,0,254,127,175,255,79,255,255,240,1,252,47,255,255,15,255,255,240,3,248,15,240,63,0,15,130,240,15,240,3,240,125,0,15,130,240,47,192,2,192,252,106,191,235,254,191,64,0,64,252,191,255,255,254,255,255,255,129,248,191,255,255,254,63,255,255,130,240,0,15,130,240,7,255,255,131,240,0,15,130,240,0,15,192,7,224,10,175,235,240,0,15,192,11,255,223,255,255,240,0,15,192,15,255,223,255,255,240,63,255,255,239,255,192,15,128,0,63,255,255,219,75,192,15,128,0,63,255,255,192,11,192,15,128,0,0,15,192,1,15,223,255,255,240,0,15,192,15,15,159,255,255,240,10,15,199,207,79,159,255,255,240,31,15,203,143,159,64,15,128,0,15,79,203,139,239,0,15,128,0,15,79,207,71,255,63,255,255,252,11,143,207,3,254,63,255,255,252,11,207,223,3,252,63,255,255,252,7,207,201,1,252,0,15,128,0,6,79,192,2,253,0,15,128,0,0,15,198,147,255,0,15,128,0,0,31,255,239,255,224,15,128,0,47,255,255,255,207,254,64,0,0,63,255,254,255,3,255,255,255,254,63,249,3,253,0,191,255,255,253,20,0,1,244,0,6,255,255,252,0,0,0,80,0,0,0,0,0, + // 0x9577 長 + 119,149,34,35,59,38,2,251,0,7,255,255,255,255,255,240,0,0,7,255,255,255,255,255,240,0,0,7,255,255,255,255,255,240,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,255,255,255,255,255,192,0,0,7,255,255,255,255,255,192,0,0,7,255,255,255,255,255,192,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,255,255,255,255,255,192,0,0,7,255,255,255,255,255,192,0,0,7,255,255,255,255,255,192,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,7,240,2,252,0,0,52,0,0,7,240,0,254,0,1,254,0,0,7,240,0,191,64,15,254,0,0,7,240,0,63,192,191,244,0,0,7,240,0,31,247,255,128,0,0,7,240,0,11,255,248,0,0,0,7,240,0,3,255,208,0,0,0,7,240,0,0,255,224,0,0,0,7,240,26,253,63,254,0,0,0,11,255,255,253,11,255,228,0,11,255,255,255,253,1,255,255,208,15,255,255,250,64,0,31,255,240,11,255,164,0,0,0,1,255,208,6,64,0,0,0,0,0,7,128,0,0,0,0,0,0,0,0,0, + // 0x9589 閉 + 137,149,32,34,16,38,3,252,191,255,255,244,47,255,255,255,191,255,255,244,47,255,255,255,191,170,171,244,47,234,170,255,191,0,3,244,47,192,0,255,191,0,3,244,47,192,0,255,191,255,255,244,47,255,255,255,191,255,255,244,47,255,255,255,191,170,171,244,47,234,170,255,191,0,3,244,47,192,0,255,191,0,3,244,47,192,0,255,191,170,171,244,47,234,170,255,191,255,255,244,47,255,255,255,191,255,255,244,47,255,255,255,191,0,0,0,0,0,0,255,191,0,0,0,63,0,0,255,191,0,0,0,63,0,0,255,191,0,0,0,63,0,0,255,191,7,255,255,255,255,208,255,191,7,255,255,255,255,208,255,191,7,255,255,255,255,208,255,191,0,0,3,255,0,0,255,191,0,0,15,255,0,0,255,191,0,0,63,255,0,0,255,191,0,0,255,127,0,0,255,191,0,3,253,63,0,0,255,191,0,31,244,63,0,0,255,191,0,255,208,63,0,0,255,191,11,255,0,63,0,0,255,191,15,252,0,63,0,0,255,191,3,208,0,63,0,0,255,191,1,0,63,255,10,170,254,191,0,0,47,254,15,255,254,191,0,0,15,228,7,255,252,191,0,0,0,0,3,255,224, + // 0x958b 開 + 139,149,32,35,24,38,3,251,191,255,255,244,47,255,255,255,191,255,255,244,47,255,255,255,191,170,171,244,47,234,170,255,191,0,3,244,47,192,0,191,191,0,3,244,47,192,0,191,191,255,255,244,47,255,255,255,191,255,255,244,47,255,255,255,191,85,87,244,47,213,85,255,191,0,3,244,47,192,0,191,191,0,3,244,47,192,0,191,191,170,171,244,47,234,170,255,191,255,255,244,47,255,255,255,191,255,255,244,47,255,255,255,191,0,0,0,0,0,0,191,191,0,0,0,0,0,0,191,191,3,255,255,255,255,192,191,191,3,255,255,255,255,192,191,191,3,255,255,255,255,192,191,191,0,7,224,15,192,0,191,191,0,7,224,15,192,0,191,191,0,7,224,15,192,0,191,191,0,7,224,15,192,0,191,191,15,255,255,255,255,240,191,191,15,255,255,255,255,240,191,191,15,255,255,255,255,240,191,191,0,11,208,15,192,0,191,191,0,15,192,15,192,0,191,191,0,31,192,15,192,0,191,191,0,63,128,15,192,0,191,191,0,127,0,15,192,0,191,191,1,254,0,15,193,85,254,191,7,252,0,15,194,255,254,191,2,240,0,15,192,255,252,191,0,128,0,0,0,255,224,0,0,0,0,0,0,0,0, + // 0x9593 間 + 147,149,32,34,16,38,3,252,191,255,255,244,47,255,255,255,191,255,255,244,47,255,255,255,191,170,171,244,47,234,170,255,191,0,3,244,47,192,0,255,191,0,3,244,47,192,0,255,191,255,255,244,47,255,255,255,191,255,255,244,47,255,255,255,191,170,171,244,47,234,170,255,191,0,3,244,47,192,0,255,191,0,3,244,47,192,0,255,191,170,171,244,47,234,170,255,191,255,255,244,47,255,255,255,191,255,255,244,47,255,255,255,191,0,0,0,0,0,0,255,191,0,0,0,0,0,0,255,191,0,0,0,0,0,0,255,191,0,63,255,255,252,0,255,191,0,63,255,255,252,0,255,191,0,63,170,171,252,0,255,191,0,63,0,0,252,0,255,191,0,63,0,0,252,0,255,191,0,63,0,0,252,0,255,191,0,63,255,255,252,0,255,191,0,63,255,255,252,0,255,191,0,63,170,170,252,0,255,191,0,63,0,0,252,0,255,191,0,63,0,0,252,0,255,191,0,63,170,170,252,0,255,191,0,63,255,255,252,0,255,191,0,63,255,255,252,0,255,191,0,63,0,0,10,170,254,191,0,63,0,0,7,255,254,191,0,0,0,0,3,255,252,191,0,0,0,0,2,255,224, + // 0x95dc 關 + 220,149,32,35,24,38,3,252,85,85,85,80,21,85,85,85,191,255,255,244,47,255,255,255,191,255,255,244,47,255,255,255,190,0,3,244,47,192,0,191,190,0,3,244,47,192,0,191,191,0,3,244,47,192,0,191,191,255,255,244,47,255,255,255,191,255,255,244,47,255,255,255,190,0,3,244,47,192,0,191,190,0,3,244,47,192,0,191,191,85,87,244,47,213,85,255,191,255,255,244,47,255,255,255,191,255,255,244,47,255,255,255,190,0,15,64,3,224,0,191,190,0,62,0,11,192,0,191,190,3,188,32,239,4,0,191,190,11,240,249,253,47,0,191,190,1,246,224,125,124,0,191,190,0,127,192,31,244,0,191,190,0,63,116,11,215,64,191,190,0,188,60,31,67,192,191,190,15,255,254,255,255,224,191,190,15,255,255,255,255,240,191,190,0,0,9,0,0,160,191,190,2,128,188,61,7,128,191,190,3,208,188,61,7,192,191,190,3,208,188,61,7,192,191,190,3,208,188,61,11,192,191,190,3,255,248,63,255,192,191,190,3,255,248,63,255,192,191,190,0,2,240,61,0,0,191,190,0,11,240,61,0,191,255,190,0,191,192,61,0,63,254,190,0,126,0,61,0,63,248,190,0,16,0,0,0,21,64, + // 0x964d 降 + 77,150,34,36,68,38,3,252,0,0,0,0,3,160,0,0,0,0,0,0,0,11,240,0,0,0,255,255,244,0,31,208,0,0,0,255,255,252,0,63,255,255,224,0,255,255,252,0,255,255,255,248,0,252,3,244,2,255,255,255,240,0,252,3,240,11,252,0,15,224,0,252,7,240,47,255,0,47,192,0,252,11,224,255,255,128,127,128,0,252,15,195,254,31,209,255,0,0,252,31,192,248,11,251,252,0,0,252,47,64,16,3,255,240,0,0,252,63,0,0,0,255,224,0,0,252,63,0,0,7,255,248,0,0,252,63,64,0,127,255,255,144,0,252,31,192,11,255,225,255,254,64,252,11,225,255,255,0,47,255,208,252,3,241,255,244,7,242,255,128,252,3,244,254,64,7,240,11,0,252,2,248,80,0,7,240,0,0,252,1,252,63,255,255,255,255,0,252,1,252,63,255,255,255,255,0,252,1,252,63,255,255,255,255,0,252,3,248,2,244,7,240,0,0,252,255,244,2,244,7,240,0,0,252,191,240,2,244,7,240,0,0,252,127,128,2,244,7,240,0,0,252,0,3,255,255,255,255,255,192,252,0,3,255,255,255,255,255,192,252,0,3,255,255,255,255,255,192,252,0,0,0,0,7,240,0,0,252,0,0,0,0,7,240,0,0,252,0,0,0,0,7,240,0,0,252,0,0,0,0,7,240,0,0,252,0,0,0,0,7,240,0,0,252,0,0,0,0,7,240,0,0, + // 0x9664 除 + 100,150,34,36,68,38,3,252,0,0,0,0,1,252,0,0,0,0,0,0,0,3,255,0,0,0,255,255,244,0,11,255,128,0,0,255,255,252,0,31,255,224,0,0,255,255,252,0,63,203,244,0,0,252,3,244,0,255,3,253,0,0,252,3,240,3,253,0,255,128,0,252,7,240,15,244,0,63,224,0,252,11,208,127,208,0,15,252,0,252,15,194,255,64,0,3,255,128,252,31,143,253,0,0,0,191,224,252,47,79,251,255,255,255,239,192,252,63,3,139,255,255,255,199,64,252,63,0,11,255,255,255,192,0,252,47,128,0,0,253,0,0,0,252,15,192,0,0,253,0,0,0,252,11,224,0,0,253,0,0,0,252,3,240,0,0,253,0,0,0,252,3,244,0,0,253,0,0,0,252,2,248,255,255,255,255,255,0,252,1,252,255,255,255,255,255,0,252,1,252,255,255,255,255,255,0,252,1,252,0,0,253,0,0,0,252,3,248,0,0,253,0,0,0,252,255,244,31,128,253,11,192,0,252,191,240,47,128,253,15,208,0,252,127,128,63,64,253,11,240,0,252,0,0,191,0,253,3,252,0,252,0,1,253,0,253,1,253,0,252,0,3,252,0,253,0,191,0,252,0,15,240,0,253,0,63,64,252,0,47,224,0,253,0,47,192,252,0,11,128,85,253,0,15,64,252,0,2,0,255,252,0,4,0,252,0,0,0,191,252,0,0,0,252,0,0,0,63,160,0,0,0, + // 0x968e 階 + 142,150,34,36,68,38,3,252,0,0,0,20,0,1,80,0,0,0,0,0,190,0,11,224,0,0,255,255,244,190,0,11,224,0,0,255,255,252,190,0,11,224,29,0,255,255,248,190,0,11,225,255,64,253,3,244,191,255,203,255,255,64,253,7,240,191,255,203,255,244,0,253,11,224,191,255,203,254,64,0,253,15,208,190,0,11,240,0,0,253,15,192,190,0,11,224,0,0,253,31,128,190,0,11,224,3,64,253,47,64,190,0,11,224,7,224,253,63,0,190,27,219,224,11,208,253,127,1,255,255,215,255,255,192,253,63,79,255,255,131,255,255,192,253,15,199,255,145,165,255,254,0,253,11,211,144,2,252,0,0,0,253,3,240,0,3,248,0,0,0,253,3,240,0,3,240,0,0,0,253,2,244,63,255,255,255,254,0,253,2,248,63,255,255,255,254,0,253,2,248,63,255,255,255,254,0,253,2,248,63,64,0,0,254,0,253,3,244,63,64,0,0,254,0,253,255,240,63,64,0,0,254,0,253,191,224,63,234,170,170,254,0,253,127,64,63,255,255,255,254,0,253,0,0,63,255,255,255,254,0,253,0,0,63,64,0,0,254,0,253,0,0,63,64,0,0,254,0,253,0,0,63,64,0,0,254,0,253,0,0,63,255,255,255,254,0,253,0,0,63,255,255,255,254,0,253,0,0,63,255,255,255,254,0,253,0,0,63,64,0,0,254,0,253,0,0,21,0,0,0,84,0, + // 0x96d9 雙 + 217,150,35,36,68,38,1,252,0,25,0,0,0,13,0,0,0,0,47,67,244,0,47,131,240,0,0,63,3,240,0,63,7,224,0,0,190,11,192,0,190,11,192,0,0,255,255,255,224,255,255,255,244,2,255,255,255,226,255,255,255,244,7,253,95,213,71,253,95,213,80,15,252,15,128,15,252,15,192,0,63,252,31,192,47,252,15,192,0,127,255,255,255,255,255,255,255,208,63,255,255,255,255,255,255,255,208,8,252,15,128,28,252,15,192,0,0,252,31,192,0,252,15,192,0,0,255,255,255,192,255,255,255,208,0,255,255,255,192,255,255,255,208,0,252,15,128,0,252,15,192,0,0,252,15,128,0,252,15,192,0,0,255,255,255,240,255,255,255,252,0,255,255,255,240,255,255,255,252,0,85,85,85,80,85,85,85,84,0,0,0,0,0,0,0,0,0,3,255,255,255,255,255,255,224,0,3,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,244,0,0,0,127,0,0,0,127,224,0,0,0,255,192,0,2,255,128,0,0,0,63,244,0,15,254,0,0,0,0,15,255,64,191,244,0,0,0,0,2,255,251,255,208,0,0,0,0,0,127,255,254,0,0,0,0,0,1,191,255,254,64,0,0,0,1,191,255,255,255,254,144,0,43,255,255,255,235,255,255,255,248,47,255,255,248,0,31,255,255,244,15,255,233,0,0,0,111,255,224,10,144,0,0,0,0,0,26,192, + // 0x96e2 離 + 226,150,36,36,68,38,1,252,0,0,253,0,0,2,64,0,0,0,0,253,0,0,7,240,47,128,0,0,253,0,0,11,240,63,128,127,255,255,255,252,15,208,63,64,127,255,255,255,252,15,192,127,0,127,255,255,255,252,47,192,190,0,0,0,0,0,0,63,128,252,0,1,64,3,208,0,127,65,252,0,11,199,15,199,208,191,255,255,252,11,207,239,71,208,255,255,255,252,11,194,255,7,210,255,255,255,252,11,192,255,135,211,255,1,248,0,11,195,255,231,223,255,1,248,0,11,207,226,231,255,255,1,248,0,11,223,128,135,255,255,1,248,0,11,193,0,7,239,191,255,255,248,11,255,255,255,210,127,255,255,248,11,255,255,255,208,127,255,255,248,5,85,254,85,64,127,1,248,0,0,0,252,0,0,127,1,248,0,0,0,252,0,0,127,1,248,0,47,255,255,255,244,127,1,248,0,47,255,255,255,244,127,1,248,0,47,235,250,171,244,127,255,255,248,47,66,240,2,244,127,255,255,248,47,67,242,194,244,127,255,255,248,47,67,226,226,244,127,1,248,0,47,67,209,242,244,127,1,248,0,47,127,255,246,244,127,1,248,0,47,127,255,250,244,127,1,248,0,47,85,80,126,244,127,1,248,0,47,64,0,18,244,127,255,255,253,47,64,0,2,244,127,255,255,253,47,64,1,255,240,127,255,255,253,47,64,0,255,224,127,0,0,0,47,64,0,170,64,127,0,0,0, + // 0x96fb 電 + 251,150,34,34,50,38,3,252,15,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,240,0,10,170,170,175,250,170,170,160,0,0,0,0,15,224,0,0,0,0,85,85,85,95,245,85,85,85,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,0,252,0,0,15,224,0,0,63,0,252,0,0,15,224,0,0,63,0,252,63,255,79,226,255,252,63,0,252,63,255,79,226,255,252,63,0,252,0,0,15,224,0,0,63,0,0,0,0,15,224,0,0,0,0,0,255,255,79,226,255,255,0,0,0,255,255,79,226,255,255,0,0,0,0,0,0,0,0,0,0,0,1,85,85,85,85,85,85,64,0,3,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,192,0,3,248,0,15,208,0,47,192,0,3,248,0,15,208,0,47,192,0,3,248,0,15,208,0,47,192,0,3,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,192,0,3,248,0,15,208,0,47,192,0,3,248,0,15,208,0,47,192,0,3,255,255,255,255,255,255,192,0,3,255,255,255,255,255,255,199,128,3,254,170,175,234,170,170,75,208,3,248,0,15,208,0,0,15,208,1,164,0,15,224,0,0,31,192,0,0,0,11,255,255,255,255,192,0,0,0,3,255,255,255,255,0,0,0,0,0,106,170,170,164,0, + // 0x9752 青 + 82,151,34,36,68,38,2,252,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,2,170,170,171,254,170,170,169,0,7,255,255,255,255,255,255,254,0,7,255,255,255,255,255,255,254,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,170,170,171,254,170,170,160,0,0,255,255,255,255,255,255,240,0,0,255,255,255,255,255,255,240,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,106,170,170,171,254,170,170,170,144,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,170,170,170,170,170,128,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,192,0,0,0,63,192,0,0,47,192,0,0,0,63,192,0,0,47,213,85,85,85,127,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,192,0,0,0,63,192,0,0,47,192,0,0,0,63,192,0,0,47,255,255,255,255,255,192,0,0,47,255,255,255,255,255,192,0,0,47,213,85,85,85,127,192,0,0,47,192,0,0,0,63,192,0,0,47,192,0,0,0,63,192,0,0,47,192,0,0,0,63,192,0,0,47,192,0,1,255,255,128,0,0,47,192,0,0,255,255,0,0,0,31,192,0,0,191,164,0,0, + // 0x975e 非 + 94,151,36,37,77,38,1,251,0,0,1,168,0,106,0,0,0,0,0,1,252,0,127,0,0,0,0,0,1,252,0,127,0,0,0,0,0,1,252,0,127,0,0,0,0,0,1,252,0,127,0,0,0,5,85,86,252,0,127,85,85,80,15,255,255,252,0,127,255,255,248,15,255,255,252,0,127,255,255,248,15,255,255,252,0,127,255,255,248,0,0,1,252,0,127,0,0,0,0,0,1,252,0,127,0,0,0,0,0,1,252,0,127,0,0,0,0,0,1,252,0,127,0,0,0,0,0,1,252,0,127,0,0,0,1,85,86,252,0,127,85,85,64,11,255,255,252,0,127,255,255,240,11,255,255,252,0,127,255,255,240,11,255,255,252,0,127,255,255,240,0,0,2,252,0,127,0,0,0,0,0,2,252,0,127,0,0,0,0,0,2,252,0,127,0,0,0,0,0,2,252,0,127,0,0,0,0,0,3,255,240,127,0,0,0,0,90,255,255,240,127,85,85,84,127,255,255,255,240,127,255,255,253,127,255,255,249,0,127,255,255,253,63,254,175,224,0,127,255,255,253,41,0,63,192,0,127,0,0,0,0,0,191,128,0,127,0,0,0,0,1,255,0,0,127,0,0,0,0,7,253,0,0,127,0,0,0,0,47,248,0,0,127,0,0,0,0,255,224,0,0,127,0,0,0,11,255,128,0,0,127,0,0,0,7,253,0,0,0,127,0,0,0,1,224,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9762 面 + 98,151,34,34,50,38,2,252,21,85,85,85,85,85,85,85,80,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,0,0,0,11,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,31,208,0,0,0,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,208,15,208,0,254,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,255,255,253,0,191,0,15,208,15,255,255,253,0,191,0,15,208,15,255,255,253,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,255,255,253,0,191,0,15,208,15,255,255,253,0,191,0,15,208,15,255,255,253,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,192,0,189,0,191,0,15,208,15,192,0,189,0,191,0,15,229,95,213,85,254,85,191,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,208,0,0,0,0,0,191,0,15,208,0,0,0,0,0,191,0, + // 0x9805 項 + 5,152,36,34,50,38,1,252,0,0,0,15,255,255,255,255,253,0,0,0,15,255,255,255,255,253,21,85,85,95,255,255,255,255,253,63,255,255,240,0,7,248,0,0,63,255,255,240,0,11,240,0,0,63,255,255,240,0,15,240,0,0,0,31,192,0,170,175,250,170,160,0,31,192,0,255,255,255,255,240,0,31,192,0,255,255,255,255,240,0,31,192,0,252,0,0,7,240,0,31,192,0,252,0,0,7,240,0,31,192,0,252,0,0,7,240,0,31,192,0,255,255,255,255,240,0,31,192,0,255,255,255,255,240,0,31,192,0,254,85,85,91,240,0,31,192,0,252,0,0,7,240,0,31,192,0,252,0,0,7,240,0,31,192,0,252,0,0,7,240,0,31,192,0,255,255,255,255,240,0,31,193,184,255,255,255,255,240,0,31,255,248,254,85,85,91,240,0,31,255,252,252,0,0,7,240,6,255,255,208,252,0,0,7,240,191,255,248,0,252,0,0,7,240,127,254,64,0,255,255,255,255,240,63,208,0,0,255,255,255,255,240,20,0,0,0,170,170,170,170,160,0,0,0,0,3,192,0,208,0,0,0,0,0,31,244,7,253,0,0,0,0,1,255,240,7,255,128,0,0,0,31,255,128,0,191,244,0,0,2,255,248,0,0,15,254,0,0,0,255,128,0,0,2,253,0,0,0,52,0,0,0,0,96, + // 0x9810 預 + 16,152,36,35,59,38,1,251,47,255,255,253,255,255,255,255,252,47,255,255,254,255,255,255,255,252,47,255,255,252,255,255,255,255,252,0,0,11,240,0,2,253,0,0,0,0,31,224,0,2,252,0,0,2,208,63,128,0,3,248,0,0,7,253,255,0,47,255,255,255,240,7,255,252,0,47,255,255,255,240,0,191,244,0,47,234,170,175,240,0,15,253,0,47,128,0,7,240,0,2,255,128,47,128,0,7,240,0,0,127,64,47,128,0,7,240,191,255,255,255,175,255,255,255,240,191,255,255,255,175,255,255,255,240,191,255,255,255,111,213,85,91,240,0,11,240,63,47,128,0,7,240,0,11,240,126,47,128,0,7,240,0,11,240,189,47,128,0,7,240,0,11,240,252,47,255,255,255,240,0,11,241,248,47,255,255,255,240,0,11,241,244,47,213,85,91,240,0,11,240,16,47,128,0,7,240,0,11,240,0,47,128,0,7,240,0,11,240,0,47,128,0,7,240,0,11,240,0,47,255,255,255,240,0,11,240,0,47,255,255,255,240,0,11,240,0,26,170,170,170,160,0,11,240,0,0,160,0,32,0,0,11,240,0,2,253,1,253,0,0,11,240,0,31,253,2,255,128,5,95,240,0,191,244,0,127,240,15,255,224,27,255,128,0,15,252,11,255,208,31,253,0,0,2,253,7,254,0,3,208,0,0,0,176,0,0,0,0,0,0,0,0,0, + // 0x984d 額 + 77,152,36,37,77,38,1,251,0,2,248,0,0,0,0,0,0,0,2,248,0,0,0,0,0,0,0,2,248,0,47,255,255,255,252,47,255,255,255,239,255,255,255,252,63,255,255,255,239,255,255,255,252,63,255,255,255,192,0,254,0,0,63,0,0,15,192,0,253,0,0,63,2,64,15,192,1,252,0,0,63,11,224,15,198,171,254,170,160,0,15,192,0,7,255,255,255,240,0,63,255,253,7,255,255,255,240,0,191,255,253,7,240,0,7,240,1,254,86,252,7,240,0,7,240,7,248,3,248,7,240,0,7,240,47,254,7,240,7,255,255,255,240,191,255,223,208,7,255,255,255,240,46,47,255,192,7,250,170,171,240,4,7,255,0,7,240,0,7,240,0,3,255,192,7,240,0,7,240,0,31,255,244,7,240,0,7,240,0,127,215,254,7,255,255,255,240,7,255,65,255,135,255,255,255,240,127,252,0,63,199,250,170,171,240,127,254,170,191,71,240,0,7,240,63,255,255,253,7,240,0,7,240,3,255,255,252,7,240,0,7,240,3,240,0,252,7,255,255,255,240,3,240,0,252,7,255,255,255,240,3,240,0,252,6,170,170,170,160,3,240,0,252,0,36,0,16,0,3,240,0,252,0,190,0,253,0,3,255,255,252,7,255,1,255,128,3,255,255,252,47,252,0,63,240,3,254,170,174,255,224,0,11,252,3,240,0,2,254,0,0,1,254,1,80,0,0,160,0,0,0,116,0,0,0,0,0,0,0,0,0, + // 0x985e 類 + 94,152,36,36,68,38,1,252,0,0,80,0,0,0,0,0,0,6,2,248,30,0,0,0,0,0,15,194,248,47,111,255,255,255,252,11,210,248,63,47,255,255,255,252,3,226,248,189,47,255,255,255,252,3,226,248,252,0,0,254,0,0,0,2,248,0,0,1,253,0,0,63,255,255,255,192,2,252,0,0,63,255,255,255,203,255,255,255,240,47,255,255,255,203,255,255,255,240,0,15,253,0,11,250,170,175,240,0,63,255,128,11,224,0,7,240,0,255,255,244,11,224,0,7,240,3,254,250,255,11,224,0,7,240,15,242,248,127,203,255,255,255,240,127,194,248,31,75,255,255,255,240,47,2,248,2,11,250,170,171,240,8,1,244,0,11,224,0,7,240,0,0,0,0,11,224,0,7,240,0,2,248,0,11,224,0,7,240,0,2,248,0,11,255,255,255,240,0,2,248,0,11,255,255,255,240,63,255,255,255,203,250,170,171,240,63,255,255,255,203,224,0,7,240,63,255,255,255,203,224,0,7,240,0,3,244,0,11,250,170,175,240,0,3,248,0,11,255,255,255,240,0,11,255,64,11,255,255,255,240,0,15,255,224,0,0,0,0,0,0,63,223,252,0,40,0,36,0,0,255,131,255,64,255,65,254,0,7,254,0,191,71,255,0,255,192,127,248,0,30,127,248,0,47,244,63,208,0,7,255,208,0,7,253,30,0,0,1,254,0,0,1,253,0,0,0,0,96,0,0,0,32, + // 0x98a8 風 + 168,152,36,34,50,38,1,252,0,127,255,255,255,255,255,252,0,0,127,255,255,255,255,255,252,0,0,127,255,255,255,255,255,252,0,0,127,85,85,85,85,86,252,0,0,127,0,0,0,6,1,252,0,0,127,0,0,91,255,193,252,0,0,127,47,255,255,255,241,252,0,0,127,47,255,255,250,65,252,0,0,127,31,255,253,0,1,252,0,0,127,0,0,252,0,1,252,0,0,127,0,0,252,0,1,252,0,0,127,0,0,252,0,1,252,0,0,127,15,255,255,255,225,252,0,0,127,15,255,255,255,225,252,0,0,127,15,255,255,255,224,252,0,0,127,15,128,252,7,224,252,0,0,127,15,128,252,7,224,252,0,0,127,15,128,252,7,224,252,0,0,191,15,128,252,7,224,252,0,0,190,15,128,252,7,224,253,0,0,254,15,255,255,255,224,253,0,0,253,15,255,255,255,224,253,0,0,253,10,170,255,170,144,253,0,0,252,0,0,252,2,64,253,0,2,252,0,0,252,31,192,190,0,3,248,0,0,252,11,224,190,8,3,244,0,0,252,3,240,127,29,7,240,21,106,255,255,248,63,31,15,240,255,255,255,255,252,63,30,15,224,255,255,255,255,254,63,174,63,192,255,169,80,0,127,31,253,127,128,0,0,0,0,63,15,252,47,0,0,0,0,0,16,11,248,5,0,0,0,0,0,0,1,224, + // 0x98fd 飽 + 253,152,36,36,68,38,1,252,0,3,252,0,0,168,0,0,0,0,7,255,0,0,253,0,0,0,0,15,255,192,1,252,0,0,0,0,47,223,244,3,252,0,0,0,0,63,135,252,3,244,0,0,0,0,255,1,255,7,255,255,255,244,2,253,0,127,207,255,255,255,244,7,248,252,47,95,255,255,255,244,31,240,252,9,63,192,0,3,244,127,192,252,0,127,64,0,3,244,255,170,254,169,255,0,0,3,244,63,255,255,255,254,0,0,3,244,7,255,255,255,255,255,254,3,244,3,240,0,254,187,255,254,3,244,3,240,0,253,7,255,254,3,240,3,245,85,253,0,0,126,3,240,3,255,255,253,0,0,126,3,240,3,255,255,253,0,0,126,3,240,3,240,0,253,0,0,126,3,240,3,240,0,253,15,255,254,7,240,3,250,170,253,15,255,254,7,240,3,255,255,253,15,255,254,11,240,3,255,255,253,15,208,0,15,224,3,240,0,0,15,208,7,255,224,3,240,2,128,15,208,3,255,192,3,240,15,208,15,208,3,254,0,3,240,15,240,15,208,0,0,0,3,240,3,244,15,208,0,0,0,3,240,3,252,15,208,0,0,116,3,240,127,253,15,208,0,0,126,3,255,255,255,15,208,0,0,190,47,255,255,255,79,208,0,0,189,63,255,228,63,143,224,0,1,253,63,249,0,31,203,255,255,255,252,41,0,0,9,3,255,255,255,244,0,0,0,0,0,191,255,255,208, + // 0x9918 餘 + 24,153,36,36,68,38,1,252,0,7,244,0,0,2,252,0,0,0,15,253,0,0,7,253,0,0,0,31,255,64,0,15,255,0,0,0,63,175,208,0,31,255,128,0,0,191,11,244,0,63,223,208,0,1,253,3,252,0,255,79,240,0,7,248,0,255,2,254,3,252,0,31,255,255,254,11,252,2,255,0,127,239,255,172,31,244,0,191,192,255,5,85,64,191,224,0,63,240,60,0,0,2,255,128,0,15,252,5,85,85,87,255,0,0,7,254,3,255,255,249,247,255,255,255,252,3,255,255,248,147,255,255,255,120,3,240,1,248,3,255,255,255,0,3,240,1,248,0,1,252,0,0,3,255,255,248,0,1,252,0,0,3,255,255,248,0,1,252,0,0,3,245,85,248,255,255,255,255,248,3,240,1,248,255,255,255,255,248,3,245,86,248,255,255,255,255,248,3,255,255,248,0,1,252,0,0,3,255,255,248,0,1,252,1,0,3,240,0,0,10,129,252,47,0,3,240,0,0,15,193,252,47,128,3,250,170,168,31,129,252,15,192,3,255,255,252,47,65,252,15,224,3,255,255,252,63,1,252,7,240,3,240,0,0,190,1,252,3,244,3,240,0,0,252,1,252,2,252,3,255,255,255,248,1,252,1,252,3,255,255,254,240,1,252,0,253,3,255,255,253,16,1,252,0,160,3,240,0,0,0,255,252,0,0,3,240,0,0,0,191,244,0,0,3,224,0,0,0,127,144,0,0, + // 0x99ac 馬 + 172,153,35,35,59,38,1,251,0,47,255,255,255,255,255,255,0,0,47,255,255,255,255,255,255,0,0,47,255,255,255,255,255,255,0,0,47,128,0,127,0,0,0,0,0,47,128,0,127,0,0,0,0,0,47,128,0,127,0,0,0,0,0,47,255,255,255,255,255,248,0,0,47,255,255,255,255,255,248,0,0,47,255,255,255,255,255,248,0,0,47,128,0,127,0,0,0,0,0,47,128,0,127,0,0,0,0,0,47,128,0,127,0,0,0,0,0,47,255,255,255,255,255,248,0,0,47,255,255,255,255,255,248,0,0,47,255,255,255,255,255,248,0,0,47,128,0,127,0,0,0,0,0,47,128,0,127,0,0,0,0,0,47,128,0,127,0,0,0,0,0,47,255,255,255,255,255,255,244,0,47,255,255,255,255,255,255,244,0,47,255,255,255,255,255,255,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,64,7,240,0,189,0,0,24,7,224,7,240,0,253,15,192,126,3,244,7,240,0,252,15,208,63,1,252,11,240,1,252,11,208,63,64,253,11,240,3,248,7,224,31,128,127,15,240,7,244,7,240,15,192,61,15,224,15,240,3,240,15,192,0,15,208,31,224,3,240,11,208,0,63,208,127,192,3,240,5,0,191,255,192,47,64,1,64,0,0,127,255,64,5,0,0,0,0,0,63,253,0,0,0,0,0,0,0,0,0,0, + // 0x9a45 驅 + 69,154,36,36,68,38,1,251,10,170,170,168,106,170,170,170,168,15,255,255,252,127,255,255,255,248,15,255,255,252,127,255,255,255,248,15,255,255,252,125,0,0,0,0,15,192,248,0,125,0,0,0,0,15,192,248,0,125,0,0,0,0,15,234,254,160,125,3,255,255,64,15,255,255,244,125,3,255,255,64,15,255,255,244,125,3,208,15,64,15,192,248,0,125,3,208,15,64,15,192,248,0,125,3,208,15,64,15,192,248,0,125,3,208,15,64,15,234,254,164,125,3,224,31,64,15,255,255,244,125,3,255,255,64,15,255,255,244,125,3,255,255,64,15,192,248,0,125,0,0,0,0,15,192,248,0,125,0,0,0,0,15,192,248,0,125,63,252,191,248,15,255,255,252,125,63,252,191,248,15,255,255,253,125,60,60,180,184,15,255,255,253,125,56,60,176,120,0,0,0,188,125,56,60,176,120,0,0,0,188,125,56,60,176,120,14,2,108,188,125,56,60,176,120,15,115,157,188,125,56,60,176,120,30,118,207,188,125,60,124,180,184,30,117,199,252,125,63,252,191,248,46,56,211,252,125,63,252,191,248,45,56,224,252,125,0,0,0,0,60,56,144,252,125,0,0,0,0,124,52,0,248,127,170,170,170,169,184,0,1,248,127,255,255,255,253,16,0,171,244,127,255,255,255,253,0,0,191,240,125,0,0,0,0,0,0,191,128,125,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9ad4 體 + 212,154,35,36,68,38,2,252,0,0,0,0,0,46,15,128,0,6,170,170,144,0,47,15,128,0,11,255,255,224,0,47,15,128,0,11,255,255,224,21,127,95,149,64,11,192,3,224,63,255,255,255,192,11,192,3,224,63,255,255,255,192,11,199,255,224,62,31,15,11,192,11,199,255,224,62,31,15,11,192,11,199,195,224,63,255,255,255,192,11,199,195,224,63,255,255,255,192,11,199,195,224,62,31,15,75,192,11,199,195,224,62,31,15,11,192,91,219,215,245,62,111,95,95,192,191,255,255,255,63,255,255,255,192,191,255,255,255,63,255,255,255,192,188,0,0,63,0,0,0,0,0,188,0,0,63,0,0,0,0,0,191,255,255,255,255,255,255,255,240,7,255,255,208,255,255,255,255,240,7,250,175,208,170,170,170,170,160,7,208,11,208,0,0,0,0,0,7,208,11,208,31,255,255,255,128,7,255,255,208,31,255,255,255,128,7,255,255,208,31,128,0,47,128,7,229,91,208,31,64,0,47,128,7,208,11,208,31,64,0,47,128,7,229,95,208,31,255,255,255,128,7,255,255,208,31,255,255,255,128,7,255,255,208,1,176,1,228,0,7,208,11,208,2,244,1,248,0,7,208,11,208,0,248,3,240,0,7,208,11,208,0,252,7,208,0,7,208,11,209,170,254,175,234,164,7,209,255,211,255,255,255,255,244,7,208,255,195,255,255,255,255,244,6,144,105,0,0,0,0,0,0, + // 0x9ad8 高 + 216,154,34,36,68,38,2,252,0,0,0,3,244,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,127,255,255,255,255,255,255,255,208,0,0,0,0,0,0,0,0,0,0,1,85,85,85,85,84,0,0,0,3,255,255,255,255,252,0,0,0,3,255,255,255,255,252,0,0,0,3,240,0,0,1,252,0,0,0,3,240,0,0,1,252,0,0,0,3,240,0,0,1,252,0,0,0,3,249,85,85,86,252,0,0,0,3,255,255,255,255,252,0,0,0,3,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,224,0,0,0,0,0,127,0,15,224,0,0,0,0,0,127,0,15,224,15,255,255,255,0,127,0,15,224,15,255,255,255,0,127,0,15,224,15,234,170,191,0,127,0,15,224,15,192,0,63,0,127,0,15,224,15,192,0,63,0,127,0,15,224,15,192,0,63,0,127,0,15,224,15,255,255,255,0,127,0,15,224,15,255,255,255,0,127,0,15,224,15,213,85,87,65,191,0,15,224,15,192,0,2,255,255,0,15,224,5,64,0,1,255,254,0,15,224,0,0,0,0,255,228,0, + // 0x9ec3 黃 + 195,158,34,36,68,38,2,252,0,0,127,0,0,15,208,0,0,0,0,127,0,0,15,208,0,0,0,0,127,0,0,15,208,0,0,15,255,255,255,255,255,255,255,64,15,255,255,255,255,255,255,255,64,10,170,255,234,170,175,250,170,0,0,0,127,0,0,15,208,0,0,0,0,127,0,0,15,208,0,0,0,0,127,255,255,255,208,0,0,0,0,127,255,255,255,208,0,0,0,0,21,85,85,85,64,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,191,255,255,255,255,255,240,0,0,191,255,255,255,255,255,240,0,0,191,170,171,254,170,175,240,0,0,190,0,3,248,0,11,240,0,0,190,0,3,248,0,11,240,0,0,191,255,255,255,255,255,240,0,0,191,255,255,255,255,255,240,0,0,191,85,87,253,85,91,240,0,0,190,0,3,248,0,11,240,0,0,190,0,3,248,0,11,240,0,0,191,255,255,255,255,255,240,0,0,191,255,255,255,255,255,240,0,0,106,175,170,170,175,234,160,0,0,1,191,128,0,47,248,0,0,0,31,255,192,0,127,255,224,0,7,255,253,0,0,2,255,254,64,255,255,144,0,0,0,27,255,240,127,244,0,0,0,0,0,191,192,29,0,0,0,0,0,0,6,0, + // 0x9ede 點 + 222,158,36,36,68,38,1,252,0,0,0,0,0,0,190,0,0,5,85,85,85,64,0,190,0,0,15,255,255,255,192,0,190,0,0,15,255,255,255,192,0,190,0,0,15,128,184,11,192,0,190,0,0,15,148,184,91,192,0,190,0,0,15,188,184,251,192,0,190,0,0,15,172,184,251,192,0,190,0,0,15,157,185,219,192,0,191,85,84,15,142,186,203,192,0,191,255,253,15,142,187,203,192,0,191,255,253,15,132,185,75,192,0,191,255,253,15,128,184,11,192,0,190,0,0,15,255,255,255,192,0,190,0,0,15,255,255,255,192,0,190,0,0,5,86,254,85,64,0,190,0,0,0,0,252,0,0,0,190,0,0,0,0,252,0,0,0,190,0,0,15,255,255,255,208,0,255,0,0,15,255,255,255,211,255,255,255,240,10,171,255,170,147,255,255,255,240,0,0,252,0,3,255,255,255,240,0,0,254,170,163,240,0,7,240,47,255,255,255,243,240,0,7,240,63,255,255,255,243,240,0,7,240,63,254,169,80,3,240,0,7,240,0,0,0,0,3,240,0,7,240,0,0,5,31,3,240,0,7,240,7,207,79,15,131,240,0,7,240,11,203,143,135,211,240,0,7,240,15,203,199,195,243,240,0,7,240,15,135,195,193,243,255,255,255,240,47,71,195,208,247,255,255,255,240,63,7,194,208,3,255,255,255,240,125,2,64,0,3,244,0,7,240,24,0,0,0,3,240,0,2,160, + // 0x9f4a 齊 + 74,159,36,37,77,38,1,251,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,47,255,255,255,255,255,255,255,244,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,0,0,0,5,0,180,0,0,0,0,0,0,63,0,252,0,10,0,5,85,85,111,130,248,6,255,192,15,255,255,219,195,243,255,255,64,15,255,255,211,130,211,255,248,0,0,126,7,208,253,3,240,252,0,0,189,7,208,253,3,224,125,0,0,252,11,192,253,3,224,63,0,1,248,11,192,253,3,224,47,128,3,244,15,192,253,3,245,175,224,31,227,255,128,253,63,255,247,248,127,131,255,0,253,63,255,226,253,46,1,84,0,253,42,80,0,116,0,7,240,0,0,0,7,240,0,0,7,240,0,0,0,7,240,0,0,7,250,170,170,170,175,240,0,0,7,255,255,255,255,255,240,0,0,11,255,255,255,255,255,240,0,0,11,240,0,0,0,7,240,0,0,11,240,0,0,0,7,240,0,0,15,240,0,0,0,7,240,0,0,15,255,255,255,255,255,240,0,0,31,255,255,255,255,255,240,0,0,63,250,170,170,170,175,240,0,0,127,192,0,0,0,7,240,0,1,255,64,0,0,0,7,240,0,7,255,0,0,0,0,7,240,0,31,252,0,0,0,0,7,240,0,11,240,0,0,0,0,7,240,0,3,192,0,0,0,0,7,240,0,0,0,0,0,0,0,0,0,0, + // 0xff1a : + 26,255,6,25,50,38,16,1,63,192,255,240,255,240,255,240,191,224,47,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,192,255,240,255,240,255,240,191,224,47,128, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Vietnamese_28.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Vietnamese_28.cpp new file mode 100644 index 000000000000..8ebd4d7e83f0 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_28px/NotoSans_Medium_Vietnamese_28.cpp @@ -0,0 +1,246 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Vietnamese 38pt, capital 'A' height: 28px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 +extern const uint8_t NotoSans_Medium_Vietnamese_28[15066] = { + 162,28,2,1,249,30,37,246, // unifont_t + // 0x0102 Ă + 2,1,25,36,252,25,0,0,0,5,0,0,84,0,0,0,15,128,0,248,0,0,0,11,228,7,240,0,0,0,3,255,255,224,0,0,0,1,255,255,128,0,0,0,0,47,249,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x0103 ă + 3,1,18,30,150,22,1,255,0,80,0,5,0,1,240,0,47,0,0,253,1,190,0,0,127,255,252,0,0,47,255,244,0,0,6,255,128,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x0110 Đ + 16,1,25,27,189,28,1,0,3,255,255,254,64,0,0,3,255,255,255,244,0,0,3,255,255,255,255,0,0,3,253,85,111,255,192,0,3,252,0,1,255,240,0,3,252,0,0,47,248,0,3,252,0,0,11,252,0,3,252,0,0,3,254,0,3,252,0,0,2,255,0,3,252,0,0,0,255,0,3,252,0,0,0,255,64,7,252,0,0,0,255,64,255,255,255,192,0,255,128,255,255,255,192,0,191,128,255,255,255,192,0,255,64,87,253,85,64,0,255,64,3,252,0,0,0,255,64,3,252,0,0,1,255,0,3,252,0,0,2,255,0,3,252,0,0,3,253,0,3,252,0,0,15,252,0,3,252,0,0,63,244,0,3,252,0,2,255,224,0,3,253,86,191,255,128,0,3,255,255,255,253,0,0,3,255,255,255,224,0,0,3,255,255,233,0,0,0, + // 0x0111 đ + 17,1,22,30,180,24,2,255,0,0,0,11,244,0,0,0,0,11,244,0,0,0,0,11,244,0,0,2,170,175,254,128,0,3,255,255,255,208,0,3,255,255,255,208,0,0,0,11,248,0,0,0,0,11,244,0,0,5,80,11,244,0,0,191,255,75,244,0,3,255,255,215,244,0,15,255,255,255,244,0,47,248,1,255,244,0,63,224,0,63,244,0,127,192,0,15,244,0,191,128,0,15,244,0,255,64,0,11,244,0,255,0,0,11,244,0,255,0,0,7,244,0,255,0,0,7,244,0,255,0,0,11,244,0,255,64,0,11,244,0,191,128,0,15,244,0,127,192,0,15,244,0,63,224,0,47,244,0,47,248,1,255,244,0,15,255,255,251,244,0,3,255,255,211,244,0,0,191,254,3,244,0,0,1,64,0,0,0, + // 0x0128 Ĩ + 40,1,15,35,140,13,255,0,7,253,0,124,15,255,209,248,63,255,255,240,61,7,255,224,124,0,127,64,0,0,0,0,0,0,0,0,0,0,0,0,11,255,255,192,11,255,255,192,2,255,254,64,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,0,31,240,0,2,255,255,64,11,255,255,192,11,255,255,192, + // 0x0129 ĩ + 41,1,15,28,112,10,254,0,11,248,0,244,63,255,130,240,127,255,255,224,188,11,255,192,244,0,190,0,0,0,0,0,0,0,0,0,0,21,64,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0, + // 0x0168 Ũ + 104,1,22,36,216,28,3,255,0,11,248,0,240,0,0,63,255,67,240,0,0,191,255,255,224,0,0,248,11,255,192,0,0,240,1,190,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,224,0,0,27,255,254,64,0,0,0,21,64,0,0, + // 0x0169 ũ + 105,1,18,29,145,24,3,255,0,191,64,31,0,3,255,244,63,0,11,255,255,253,0,15,129,255,252,0,15,0,27,224,0,0,0,0,0,0,0,0,0,0,0,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,11,240,0,5,64,0,0, + // 0x01a0 Ơ + 160,1,29,30,240,30,2,255,0,0,0,0,0,0,127,192,0,0,5,165,0,0,127,192,0,2,255,255,244,0,191,128,0,47,255,255,255,64,255,0,0,255,255,255,255,225,254,0,2,255,228,1,191,255,252,0,7,255,0,0,15,255,240,0,15,252,0,0,3,255,128,0,47,240,0,0,1,255,64,0,63,224,0,0,0,255,128,0,63,208,0,0,0,127,192,0,127,192,0,0,0,63,192,0,191,192,0,0,0,63,208,0,191,128,0,0,0,63,208,0,191,128,0,0,0,63,224,0,191,128,0,0,0,63,224,0,191,128,0,0,0,63,208,0,191,128,0,0,0,63,208,0,127,192,0,0,0,63,208,0,127,192,0,0,0,63,192,0,63,208,0,0,0,191,192,0,63,224,0,0,0,255,128,0,31,244,0,0,1,255,0,0,15,252,0,0,3,254,0,0,7,255,0,0,31,252,0,0,2,255,228,1,255,244,0,0,0,191,255,255,255,208,0,0,0,31,255,255,255,0,0,0,0,1,255,255,228,0,0,0,0,0,1,84,0,0,0,0, + // 0x01a1 ơ + 161,1,23,25,150,24,2,255,0,0,0,0,2,168,0,0,0,0,3,252,0,0,0,0,3,252,0,6,254,64,7,248,0,191,255,248,15,240,3,255,255,255,127,224,15,255,171,255,255,128,47,244,0,63,253,0,63,208,0,15,240,0,127,192,0,11,248,0,191,64,0,7,252,0,255,64,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,64,0,3,252,0,191,128,0,7,248,0,63,192,0,15,244,0,63,224,0,31,240,0,15,249,0,191,208,0,7,255,255,255,128,0,1,255,255,254,0,0,0,47,255,224,0,0,0,0,84,0,0,0, + // 0x01af Ư + 175,1,29,30,240,31,3,255,0,0,0,0,0,0,127,192,0,0,0,0,0,0,191,128,191,64,0,0,31,224,191,64,191,64,0,0,31,224,255,0,191,64,0,0,31,226,254,0,191,64,0,0,31,255,252,0,191,64,0,0,31,255,240,0,191,64,0,0,31,254,64,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,128,0,0,31,224,0,0,127,128,0,0,47,208,0,0,63,192,0,0,63,208,0,0,63,224,0,0,127,192,0,0,31,248,0,1,255,128,0,0,15,255,64,27,255,0,0,0,3,255,255,255,252,0,0,0,0,191,255,255,240,0,0,0,0,11,255,254,64,0,0,0,0,0,21,64,0,0,0,0, + // 0x01b0 ư + 176,1,25,25,175,27,3,255,0,0,0,0,0,106,128,0,0,0,0,0,127,192,0,0,0,0,0,191,128,85,0,0,5,80,255,0,255,0,0,15,241,255,0,255,0,0,15,247,252,0,255,0,0,15,255,244,0,255,0,0,15,255,128,0,255,0,0,15,244,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,31,240,0,0,255,0,0,31,240,0,0,255,0,0,31,240,0,0,255,0,0,47,240,0,0,255,64,0,63,240,0,0,191,192,0,191,240,0,0,127,224,7,255,240,0,0,63,255,255,239,240,0,0,15,255,255,143,240,0,0,2,255,253,11,240,0,0,0,5,64,0,0,0,0, + // 0x0303 ̃ + 3,3,15,5,20,0,237,23,11,248,0,244,47,255,130,240,127,255,255,224,188,11,255,192,244,0,190,0, + // 0x0309 ̉ + 9,3,8,10,20,0,241,22,5,0,127,244,127,253,0,191,0,127,0,190,11,252,15,208,15,192,6,64, + // 0x0323 ̣ + 35,3,5,6,12,0,242,248,25,0,191,64,255,128,191,128,63,0,0,0, + // 0x0340 ̀ + 64,3,9,6,18,0,249,23,127,208,0,47,240,0,11,248,0,2,253,0,0,191,0,0,31,128, + // 0x0341 ́ + 65,3,9,6,18,0,254,23,1,255,64,3,254,0,11,248,0,31,224,0,63,128,0,189,0,0, + // 0x1ea0 Ạ + 160,30,25,36,252,25,0,248,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,144,0,0,0,0,0,7,244,0,0,0,0,0,15,248,0,0,0,0,0,11,248,0,0,0,0,0,3,240,0,0,0,0,0,0,0,0,0,0, + // 0x1ea1 ạ + 161,30,18,29,145,22,1,248,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0,0,0,0,0,0,0,0,36,0,0,0,0,255,0,0,0,1,255,0,0,0,1,255,0,0,0,0,189,0,0,0,0,0,0,0, + // 0x1ea2 Ả + 162,30,25,39,17,25,0,0,0,0,5,64,0,0,0,0,0,63,248,0,0,0,0,0,63,255,0,0,0,0,0,0,127,64,0,0,0,0,0,63,64,0,0,0,0,0,127,0,0,0,0,0,7,254,0,0,0,0,0,7,228,0,0,0,0,0,7,208,0,0,0,0,0,2,128,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x1ea3 ả + 163,30,18,33,165,22,1,255,0,0,80,0,0,0,7,255,64,0,0,7,255,208,0,0,0,11,240,0,0,0,3,240,0,0,0,11,224,0,0,0,191,192,0,0,0,254,0,0,0,0,252,0,0,0,0,100,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x1ea4 Ấ + 164,30,25,37,3,25,0,0,0,0,0,0,3,252,0,0,0,0,0,11,240,0,0,0,10,168,15,192,0,0,0,47,253,63,0,0,0,0,127,255,0,0,0,0,1,253,47,192,0,0,0,3,240,7,240,0,0,0,6,128,0,164,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x1ea5 ấ + 165,30,21,32,192,22,1,255,0,0,0,0,127,64,0,0,0,0,254,0,0,0,85,2,248,0,0,3,255,135,224,0,0,15,255,209,64,0,0,47,199,240,0,0,0,127,1,252,0,0,0,248,0,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,1,255,255,253,0,0,3,255,255,255,64,0,1,254,86,255,192,0,0,144,0,63,208,0,0,0,0,31,224,0,0,0,0,31,224,0,0,0,0,15,240,0,0,0,21,111,240,0,0,111,255,255,240,0,3,255,255,255,240,0,15,255,148,31,240,0,47,240,0,15,240,0,63,208,0,31,240,0,63,192,0,31,240,0,127,192,0,47,240,0,63,192,0,127,240,0,63,240,2,255,240,0,47,255,255,239,240,0,15,255,255,139,240,0,1,255,253,3,240,0,0,5,64,0,0,0, + // 0x1ea6 Ầ + 166,30,25,37,3,25,0,0,15,224,0,0,0,0,0,3,240,0,0,0,0,0,1,252,10,168,0,0,0,0,62,47,253,0,0,0,0,0,127,255,0,0,0,0,1,253,47,192,0,0,0,3,240,7,240,0,0,0,10,128,0,164,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x1ea7 ầ + 167,30,19,32,160,22,0,255,191,0,0,0,0,63,128,0,0,0,15,208,21,64,0,3,240,255,224,0,0,82,255,244,0,0,7,241,253,0,0,31,192,127,0,0,62,0,11,192,0,0,0,0,0,0,0,0,0,0,0,1,191,228,0,0,127,255,255,64,0,255,255,255,208,0,127,149,191,240,0,36,0,15,244,0,0,0,7,248,0,0,0,7,248,0,0,0,3,252,0,0,5,91,252,0,27,255,255,252,0,255,255,255,252,3,255,229,7,252,11,252,0,3,252,15,244,0,7,252,15,240,0,7,252,31,240,0,11,252,15,240,0,31,252,15,252,0,191,252,11,255,255,251,252,3,255,255,226,252,0,127,255,64,252,0,1,80,0,0, + // 0x1ea8 Ẩ + 168,30,25,40,24,25,0,0,0,0,0,0,20,0,0,0,0,0,0,191,192,0,0,0,0,0,91,224,0,0,0,0,0,2,224,0,0,0,0,0,7,208,0,0,0,10,164,47,64,0,0,0,63,253,45,0,0,0,0,191,255,0,0,0,0,1,253,47,192,0,0,0,3,240,7,224,0,0,0,10,128,0,160,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x1ea9 ẩ + 169,30,20,34,170,22,1,255,0,0,0,15,244,0,0,0,10,252,0,0,0,0,61,0,0,0,0,124,0,0,85,3,244,0,3,255,131,192,0,11,255,225,64,0,31,215,244,0,0,127,0,252,0,0,248,0,47,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x1eaa Ẫ + 170,30,25,40,24,25,0,0,0,0,190,0,120,0,0,0,2,255,229,244,0,0,0,3,235,255,240,0,0,0,11,64,191,192,0,0,0,1,0,0,0,0,0,0,0,6,164,0,0,0,0,0,31,252,0,0,0,0,0,63,255,0,0,0,0,0,253,47,192,0,0,0,3,244,7,240,0,0,0,6,128,0,164,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x1eab ẫ + 171,30,18,35,175,22,1,255,0,6,64,10,0,0,63,248,31,0,0,191,255,253,0,0,240,47,252,0,0,144,1,144,0,0,0,85,0,0,0,2,255,64,0,0,11,255,208,0,0,31,219,240,0,0,127,1,252,0,0,248,0,47,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x1eac Ậ + 172,30,25,44,52,25,0,248,0,0,15,252,0,0,0,0,0,63,254,0,0,0,0,0,191,255,128,0,0,0,2,253,47,208,0,0,0,7,244,7,244,0,0,0,31,192,1,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,144,0,0,0,0,0,7,244,0,0,0,0,0,11,252,0,0,0,0,0,11,248,0,0,0,0,0,3,240,0,0,0,0,0,0,0,0,0,0, + // 0x1ead ậ + 173,30,18,37,185,22,1,248,0,2,255,128,0,0,7,255,208,0,0,15,255,240,0,0,63,195,252,0,0,254,0,255,0,3,244,0,47,128,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0,0,0,0,0,0,0,0,100,0,0,0,1,254,0,0,0,2,255,0,0,0,2,254,0,0,0,0,252,0,0,0,0,0,0,0, + // 0x1eae Ắ + 174,30,25,39,17,25,0,0,0,0,0,21,64,0,0,0,0,0,63,64,0,0,0,0,0,190,0,0,0,0,0,1,248,0,0,0,0,6,131,208,160,0,0,0,7,192,1,240,0,0,0,3,244,7,240,0,0,0,1,255,255,208,0,0,0,0,191,255,64,0,0,0,0,6,164,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x1eaf ắ + 175,30,18,33,165,22,1,255,0,0,11,240,0,0,0,15,192,0,0,0,63,64,0,0,80,124,5,0,0,244,0,46,0,0,188,0,189,0,0,127,255,252,0,0,31,255,240,0,0,2,255,64,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x1eb0 Ằ + 176,30,25,39,17,25,0,0,0,0,84,0,0,0,0,0,0,191,0,0,0,0,0,0,63,64,0,0,0,0,0,15,192,0,0,0,0,6,130,224,160,0,0,0,7,192,1,240,0,0,0,3,244,7,240,0,0,0,2,255,255,208,0,0,0,0,191,255,64,0,0,0,0,6,164,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x1eb1 ằ + 177,30,18,33,165,22,1,255,0,47,192,0,0,0,11,224,0,0,0,2,244,0,0,0,80,188,5,0,0,244,0,62,0,0,188,0,189,0,0,127,255,252,0,0,47,255,240,0,0,6,255,64,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x1eb2 Ẳ + 178,30,25,40,24,25,0,0,0,0,10,144,0,0,0,0,0,15,248,0,0,0,0,0,0,124,0,0,0,0,0,0,60,0,0,0,0,0,3,248,0,0,0,0,6,131,192,160,0,0,0,7,192,1,240,0,0,0,3,244,7,240,0,0,0,2,255,255,208,0,0,0,0,191,255,64,0,0,0,0,6,164,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x1eb3 ẳ + 179,30,18,35,175,22,1,255,0,0,80,0,0,0,1,255,0,0,0,0,95,128,0,0,0,11,128,0,0,0,47,64,0,0,80,124,5,0,0,248,16,46,0,0,189,0,125,0,0,63,255,252,0,0,31,255,240,0,0,2,255,128,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x1eb4 Ẵ + 180,30,25,40,24,25,0,0,0,0,126,0,120,0,0,0,2,255,224,244,0,0,0,3,235,255,240,0,0,0,11,128,191,208,0,0,0,1,0,0,0,0,0,0,1,64,0,80,0,0,0,7,192,1,240,0,0,0,3,224,7,240,0,0,0,2,255,255,208,0,0,0,0,191,255,64,0,0,0,0,10,164,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128, + // 0x1eb5 ẵ + 181,30,18,35,175,22,1,255,0,6,64,6,0,0,63,248,15,0,0,191,255,254,0,0,240,47,252,0,0,144,1,144,0,0,0,0,0,0,0,244,0,46,0,0,252,0,125,0,0,127,239,252,0,0,47,255,244,0,0,6,255,128,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0, + // 0x1eb6 Ặ + 182,30,25,44,52,25,0,248,0,5,64,0,84,0,0,0,11,192,0,248,0,0,0,7,228,7,244,0,0,0,3,255,255,240,0,0,0,0,255,255,192,0,0,0,0,31,249,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,80,0,0,0,0,0,15,252,0,0,0,0,0,31,252,0,0,0,0,0,47,254,0,0,0,0,0,63,255,0,0,0,0,0,191,127,64,0,0,0,0,255,63,128,0,0,0,1,254,47,192,0,0,0,2,252,31,208,0,0,0,3,252,15,240,0,0,0,7,248,11,240,0,0,0,15,240,7,248,0,0,0,15,240,3,252,0,0,0,47,208,2,253,0,0,0,63,192,1,254,0,0,0,127,192,0,255,0,0,0,191,149,85,255,64,0,0,255,255,255,255,192,0,1,255,255,255,255,192,0,3,255,255,255,255,224,0,3,252,0,0,31,240,0,11,248,0,0,15,244,0,15,244,0,0,11,248,0,31,240,0,0,3,252,0,47,224,0,0,3,253,0,63,192,0,0,1,255,0,127,192,0,0,0,255,0,255,64,0,0,0,191,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,144,0,0,0,0,0,7,244,0,0,0,0,0,11,252,0,0,0,0,0,11,248,0,0,0,0,0,3,240,0,0,0,0,0,0,0,0,0,0, + // 0x1eb7 ặ + 183,30,18,37,185,22,1,248,0,80,0,5,0,0,244,0,31,0,0,253,1,191,0,0,127,255,253,0,0,31,255,244,0,0,2,255,128,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,1,255,255,253,0,3,255,255,255,64,1,254,86,255,192,0,144,0,63,208,0,0,0,31,224,0,0,0,31,224,0,0,0,15,240,0,0,21,111,240,0,111,255,255,240,3,255,255,255,240,15,255,148,31,240,47,240,0,15,240,63,208,0,31,240,63,192,0,31,240,127,192,0,47,240,63,192,0,127,240,63,240,2,255,240,47,255,255,239,240,15,255,255,139,240,1,255,253,3,240,0,5,64,0,0,0,0,0,0,0,0,0,96,0,0,0,2,252,0,0,0,3,253,0,0,0,3,253,0,0,0,1,248,0,0,0,0,0,0,0, + // 0x1eb8 Ẹ + 184,30,16,35,140,21,3,248,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255,0,0,0,0,0,0,0,0,0,1,144,0,0,11,244,0,0,15,248,0,0,15,248,0,0,3,240,0,0,0,0,0, + // 0x1eb9 ẹ + 185,30,18,29,145,22,2,248,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0,0,0,0,0,0,0,0,100,0,0,0,2,253,0,0,0,3,254,0,0,0,3,254,0,0,0,1,252,0,0,0,0,0,0,0, + // 0x1eba Ẻ + 186,30,16,39,156,21,3,0,0,1,64,0,0,47,253,0,0,47,255,0,0,0,127,128,0,0,47,128,0,0,63,64,0,3,254,0,0,3,244,0,0,3,208,0,0,2,128,0,0,0,0,0,0,0,0,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x1ebb ẻ + 187,30,18,33,165,22,2,255,0,0,80,0,0,0,11,255,64,0,0,11,255,208,0,0,0,15,224,0,0,0,7,224,0,0,0,15,224,0,0,0,191,192,0,0,0,253,0,0,0,0,248,0,0,0,0,164,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x1ebc Ẽ + 188,30,16,35,140,21,3,0,1,254,64,46,7,255,228,125,15,255,255,252,31,65,255,244,46,0,47,144,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x1ebd ẽ + 189,30,18,29,145,22,2,255,0,191,64,31,0,3,255,244,63,0,11,255,255,253,0,15,129,255,248,0,15,0,27,224,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x1ebe Ế + 190,30,19,37,185,21,3,0,0,0,0,3,248,0,0,0,11,240,0,10,164,31,192,0,47,253,62,0,0,191,255,0,0,1,253,47,192,0,3,240,7,224,0,10,128,0,164,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,0,127,255,255,255,0,127,255,255,255,0,127,213,85,85,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,255,255,252,0,127,255,255,252,0,127,255,255,252,0,127,234,170,168,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,234,170,169,0,127,255,255,255,0,127,255,255,255,0,127,255,255,255,0, + // 0x1ebf ế + 191,30,20,32,160,22,2,255,0,0,0,0,254,0,0,0,2,252,0,1,84,3,240,0,11,255,15,192,0,31,255,133,0,0,127,79,224,0,0,253,3,244,0,3,240,0,188,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x1ec0 Ề + 192,30,18,37,185,21,1,0,254,0,0,0,0,63,64,0,0,0,31,192,170,128,0,3,226,255,208,0,0,7,255,240,0,0,15,210,252,0,0,63,0,127,0,0,104,0,10,64,0,0,0,0,0,0,0,0,0,0,7,255,255,255,240,7,255,255,255,240,7,255,255,255,240,7,253,85,85,80,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,255,255,255,192,7,255,255,255,192,7,255,255,255,192,7,254,170,170,128,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,248,0,0,0,7,254,170,170,144,7,255,255,255,240,7,255,255,255,240,7,255,255,255,240, + // 0x1ec1 ề + 193,30,19,32,160,22,1,255,253,0,0,0,0,127,0,0,0,0,47,128,85,0,0,7,210,255,192,0,0,87,255,240,0,0,15,227,248,0,0,63,64,190,0,0,188,0,31,64,0,0,0,0,0,0,0,0,0,0,0,1,191,144,0,0,47,255,253,0,0,255,255,255,64,3,255,149,255,192,11,252,0,47,240,15,240,0,15,240,31,224,0,7,248,47,208,0,7,248,63,213,85,87,252,63,255,255,255,252,63,255,255,255,252,63,234,170,170,168,63,192,0,0,0,63,208,0,0,0,47,224,0,0,0,31,240,0,0,0,15,252,0,0,0,7,255,64,1,240,1,255,255,255,240,0,127,255,255,240,0,11,255,255,128,0,0,21,64,0, + // 0x1ec2 Ể + 194,30,18,40,200,21,3,0,0,0,0,20,0,0,0,0,191,192,0,0,0,91,224,0,0,0,2,224,0,0,0,7,208,0,10,164,47,64,0,63,253,45,0,0,191,255,0,0,1,253,47,192,0,7,240,7,224,0,10,128,0,160,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,0,127,255,255,255,0,127,255,255,255,0,127,213,85,85,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,255,255,252,0,127,255,255,252,0,127,255,255,252,0,127,234,170,168,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,128,0,0,0,127,234,170,169,0,127,255,255,255,0,127,255,255,255,0,127,255,255,255,0, + // 0x1ec3 ể + 195,30,19,34,170,22,2,255,0,0,0,63,208,0,0,0,43,240,0,0,0,0,244,0,0,0,1,244,0,1,84,15,208,0,15,255,15,0,0,47,255,133,0,0,127,95,208,0,0,252,3,244,0,3,224,0,188,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x1ec4 Ễ + 196,30,16,40,160,21,3,0,0,189,0,116,3,255,225,240,7,235,255,224,11,64,191,192,5,0,0,0,0,10,160,0,0,31,252,0,0,127,255,0,1,253,47,128,3,240,7,224,10,128,0,160,0,0,0,0,0,0,0,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255, + // 0x1ec5 ễ + 197,30,18,35,175,22,2,255,0,25,0,24,0,0,255,224,60,0,1,255,255,248,0,3,208,127,240,0,2,128,6,64,0,0,1,84,0,0,0,7,254,0,0,0,31,255,128,0,0,63,95,208,0,0,253,3,244,0,3,224,0,188,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0, + // 0x1ec6 Ệ + 198,30,16,44,176,21,3,248,0,15,252,0,0,47,255,0,0,191,255,128,1,254,31,224,7,244,7,248,15,192,0,253,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,127,255,255,255,127,255,255,255,127,213,85,85,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,255,255,252,127,255,255,252,127,255,255,252,127,234,170,168,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,234,170,169,127,255,255,255,127,255,255,255,127,255,255,255,0,0,0,0,0,0,0,0,0,1,144,0,0,11,244,0,0,15,248,0,0,15,248,0,0,3,240,0,0,0,0,0, + // 0x1ec7 ệ + 199,30,18,37,185,22,2,248,0,11,254,0,0,0,31,255,64,0,0,63,255,192,0,0,255,15,240,0,3,252,3,252,0,11,208,0,190,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,244,0,3,255,255,253,0,15,254,87,255,0,47,240,0,191,192,63,192,0,63,192,127,128,0,31,224,191,64,0,31,224,255,85,85,95,240,255,255,255,255,240,255,255,255,255,240,255,170,170,170,160,255,0,0,0,0,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,240,0,0,0,31,253,0,7,192,7,255,255,255,192,1,255,255,255,192,0,47,255,254,0,0,0,85,0,0,0,0,0,0,0,0,0,100,0,0,0,2,253,0,0,0,3,254,0,0,0,3,254,0,0,0,1,252,0,0,0,0,0,0,0, + // 0x1ec8 Ỉ + 200,30,11,38,114,13,1,0,1,165,0,3,255,192,3,255,240,0,7,240,0,3,240,0,11,240,0,191,192,0,189,0,0,188,0,0,16,0,0,0,0,191,255,252,191,255,252,47,255,228,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,47,255,244,191,255,252,191,255,252, + // 0x1ec9 ỉ + 201,30,8,32,64,10,2,0,5,0,255,240,255,252,1,253,0,190,0,253,15,248,31,208,15,64,10,0,0,0,21,64,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192,63,192, + // 0x1eca Ị + 202,30,11,35,105,13,1,248,191,255,252,191,255,252,47,255,228,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,47,255,244,191,255,252,191,255,252,0,0,0,0,0,0,0,100,0,1,254,0,2,255,0,1,255,0,0,253,0,0,0,0, + // 0x1ecb ị + 203,30,5,36,72,10,3,248,191,0,255,64,255,64,191,0,4,0,0,0,0,0,85,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,0,0,0,0,24,0,255,0,255,64,255,64,126,0,0,0, + // 0x1ecc Ọ + 204,30,26,36,252,30,2,248,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0,0,0,0,0,0,0,0,0,0,0,80,0,0,0,0,0,3,252,0,0,0,0,0,7,252,0,0,0,0,0,3,252,0,0,0,0,0,2,244,0,0,0,0,0,0,0,0,0,0, + // 0x1ecd ọ + 205,30,19,29,145,23,2,248,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0,0,0,0,0,0,0,0,100,0,0,0,1,253,0,0,0,2,254,0,0,0,2,254,0,0,0,0,252,0,0,0,0,0,0,0, + // 0x1ece Ỏ + 206,30,26,39,17,30,2,255,0,0,6,164,0,0,0,0,0,15,255,64,0,0,0,0,15,255,192,0,0,0,0,0,15,208,0,0,0,0,0,15,208,0,0,0,0,0,47,192,0,0,0,0,2,255,64,0,0,0,0,1,248,0,0,0,0,0,1,240,0,0,0,0,0,0,80,0,0,0,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x1ecf ỏ + 207,30,19,33,165,23,2,255,0,0,80,0,0,0,7,255,64,0,0,7,255,208,0,0,0,11,240,0,0,0,3,240,0,0,0,11,224,0,0,0,191,192,0,0,0,254,0,0,0,0,252,0,0,0,0,100,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x1ed0 Ố + 208,30,26,38,10,30,2,255,0,0,0,0,1,253,0,0,0,0,0,3,244,0,0,0,6,168,11,208,0,0,0,15,255,31,64,0,0,0,63,255,128,0,0,0,0,190,15,208,0,0,0,2,248,3,244,0,0,0,2,144,0,104,0,0,0,0,0,0,0,0,0,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x1ed1 ố + 209,30,20,32,160,23,2,255,0,0,0,0,191,0,0,0,0,253,0,1,85,3,244,0,7,255,75,208,0,15,255,197,0,0,63,139,240,0,0,190,2,248,0,1,244,0,125,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x1ed2 Ồ + 210,30,26,38,10,30,2,255,7,244,0,0,0,0,0,2,252,0,0,0,0,0,0,190,6,168,0,0,0,0,31,15,255,0,0,0,0,0,63,255,128,0,0,0,0,191,15,224,0,0,0,2,248,2,244,0,0,0,2,144,0,104,0,0,0,0,0,0,0,0,0,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x1ed3 ồ + 211,30,20,32,160,23,1,255,254,0,0,0,0,127,64,0,0,0,31,192,85,64,0,3,225,255,208,0,0,83,255,240,0,0,15,242,252,0,0,47,128,127,0,0,125,0,31,128,0,0,0,0,0,0,0,0,0,0,0,1,191,144,0,0,47,255,254,0,0,255,255,255,192,3,255,234,255,240,11,253,0,31,248,15,244,0,3,252,31,240,0,2,254,47,224,0,1,255,63,208,0,0,255,63,192,0,0,255,63,192,0,0,255,63,192,0,0,255,63,192,0,0,255,63,208,0,0,255,47,224,0,1,254,15,240,0,3,253,15,248,0,11,252,3,255,64,47,244,1,255,255,255,224,0,127,255,255,128,0,11,255,248,0,0,0,21,0,0, + // 0x1ed4 Ổ + 212,30,26,41,31,30,2,255,0,0,0,0,21,0,0,0,0,0,0,63,208,0,0,0,0,0,22,240,0,0,0,0,0,0,240,0,0,0,0,0,6,240,0,0,0,6,168,15,128,0,0,0,15,255,15,0,0,0,0,63,255,128,0,0,0,0,254,15,208,0,0,0,2,248,3,244,0,0,0,2,144,0,168,0,0,0,0,0,0,0,0,0,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x1ed5 ổ + 213,30,19,34,170,23,2,255,0,0,0,31,224,0,0,0,10,248,0,0,0,0,124,0,0,0,0,184,0,1,85,7,224,0,7,255,71,128,0,15,255,193,0,0,63,139,240,0,0,190,2,248,0,1,244,0,125,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x1ed6 Ỗ + 214,30,26,41,31,30,2,255,0,0,110,64,60,0,0,0,0,255,244,188,0,0,0,3,251,255,244,0,0,0,3,192,127,224,0,0,0,1,0,1,0,0,0,0,0,2,168,0,0,0,0,0,15,254,0,0,0,0,0,47,255,128,0,0,0,0,191,15,208,0,0,0,2,248,2,244,0,0,0,2,144,0,104,0,0,0,0,0,0,0,0,0,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0, + // 0x1ed7 ỗ + 215,30,19,35,175,23,2,255,0,10,64,9,0,0,127,244,46,0,0,255,255,252,0,1,240,111,248,0,1,128,1,144,0,0,0,84,0,0,0,3,255,0,0,0,15,255,192,0,0,47,207,240,0,0,190,2,248,0,1,244,0,62,0,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0, + // 0x1ed8 Ộ + 216,30,26,44,52,30,2,248,0,0,11,254,0,0,0,0,0,31,255,64,0,0,0,0,63,255,192,0,0,0,0,255,15,240,0,0,0,3,252,3,252,0,0,0,11,208,0,190,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,165,0,0,0,0,2,255,255,248,0,0,0,47,255,255,255,64,0,0,191,255,255,255,224,0,2,255,228,1,191,248,0,7,255,0,0,15,253,0,15,252,0,0,3,255,0,47,240,0,0,1,255,64,63,224,0,0,0,255,128,63,208,0,0,0,127,192,127,192,0,0,0,63,192,191,192,0,0,0,63,208,191,128,0,0,0,63,208,191,128,0,0,0,63,224,191,128,0,0,0,63,224,191,128,0,0,0,63,208,191,128,0,0,0,63,208,127,192,0,0,0,63,208,127,192,0,0,0,63,192,63,208,0,0,0,191,192,63,240,0,0,0,255,128,31,244,0,0,1,255,0,15,252,0,0,3,254,0,7,255,0,0,31,252,0,2,255,228,1,255,244,0,0,191,255,255,255,208,0,0,31,255,255,255,0,0,0,1,255,255,228,0,0,0,0,1,84,0,0,0,0,0,0,0,0,0,0,0,0,0,80,0,0,0,0,0,3,252,0,0,0,0,0,7,252,0,0,0,0,0,3,252,0,0,0,0,0,2,244,0,0,0,0,0,0,0,0,0,0, + // 0x1ed9 ộ + 217,30,19,37,185,23,2,248,0,3,255,0,0,0,11,255,192,0,0,47,255,224,0,0,127,135,248,0,1,253,1,254,0,3,240,0,63,64,0,0,0,0,0,0,0,0,0,0,0,6,254,64,0,0,191,255,248,0,3,255,255,255,0,15,255,171,255,192,47,244,0,127,224,63,208,0,15,240,127,192,0,11,248,191,128,0,7,252,255,64,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,3,252,191,128,0,7,248,63,192,0,15,244,63,224,0,47,240,15,253,0,191,208,7,255,255,255,128,1,255,255,254,0,0,47,255,224,0,0,0,84,0,0,0,0,0,0,0,0,0,100,0,0,0,1,253,0,0,0,2,254,0,0,0,2,254,0,0,0,0,252,0,0,0,0,0,0,0, + // 0x1eda Ớ + 218,30,29,37,40,30,2,255,0,0,0,15,248,0,0,0,0,0,0,63,224,0,0,0,0,0,0,127,192,0,0,0,0,0,0,255,0,0,0,0,0,0,3,248,0,0,0,0,0,0,11,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,192,0,0,5,165,0,0,127,192,0,2,255,255,244,0,191,128,0,47,255,255,255,64,255,0,0,255,255,255,255,225,254,0,2,255,228,1,191,255,252,0,7,255,0,0,15,255,240,0,15,252,0,0,3,255,128,0,47,240,0,0,1,255,64,0,63,224,0,0,0,255,128,0,63,208,0,0,0,127,192,0,127,192,0,0,0,63,192,0,191,192,0,0,0,63,208,0,191,128,0,0,0,63,208,0,191,128,0,0,0,63,224,0,191,128,0,0,0,63,224,0,191,128,0,0,0,63,208,0,191,128,0,0,0,63,208,0,127,192,0,0,0,63,208,0,127,192,0,0,0,63,192,0,63,208,0,0,0,191,192,0,63,224,0,0,0,255,128,0,31,244,0,0,1,255,0,0,15,252,0,0,3,254,0,0,7,255,0,0,31,252,0,0,2,255,228,1,255,244,0,0,0,191,255,255,255,208,0,0,0,31,255,255,255,0,0,0,0,1,255,255,228,0,0,0,0,0,1,84,0,0,0,0, + // 0x1edb ớ + 219,30,23,30,180,24,2,255,0,0,11,253,0,0,0,0,15,244,0,0,0,0,63,208,0,0,0,0,191,64,0,0,0,1,253,0,0,0,0,3,244,0,2,168,0,0,0,0,3,252,0,0,0,0,3,252,0,6,254,64,7,248,0,191,255,248,15,240,3,255,255,255,127,224,15,255,171,255,255,128,47,244,0,63,253,0,63,208,0,15,240,0,127,192,0,11,248,0,191,64,0,7,252,0,255,64,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,64,0,3,252,0,191,128,0,7,248,0,63,192,0,15,244,0,63,224,0,31,240,0,15,249,0,191,208,0,7,255,255,255,128,0,1,255,255,254,0,0,0,47,255,224,0,0,0,0,84,0,0,0, + // 0x1edc Ờ + 220,30,29,37,40,30,2,255,0,2,255,64,0,0,0,0,0,0,191,192,0,0,0,0,0,0,47,224,0,0,0,0,0,0,11,244,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,192,0,0,5,165,0,0,127,192,0,2,255,255,244,0,191,128,0,47,255,255,255,64,255,0,0,255,255,255,255,225,254,0,2,255,228,1,191,255,252,0,7,255,0,0,15,255,240,0,15,252,0,0,3,255,128,0,47,240,0,0,1,255,64,0,63,224,0,0,0,255,128,0,63,208,0,0,0,127,192,0,127,192,0,0,0,63,192,0,191,192,0,0,0,63,208,0,191,128,0,0,0,63,208,0,191,128,0,0,0,63,224,0,191,128,0,0,0,63,224,0,191,128,0,0,0,63,208,0,191,128,0,0,0,63,208,0,127,192,0,0,0,63,208,0,127,192,0,0,0,63,192,0,63,208,0,0,0,191,192,0,63,224,0,0,0,255,128,0,31,244,0,0,1,255,0,0,15,252,0,0,3,254,0,0,7,255,0,0,31,252,0,0,2,255,228,1,255,244,0,0,0,191,255,255,255,208,0,0,0,31,255,255,255,0,0,0,0,1,255,255,228,0,0,0,0,0,1,84,0,0,0,0, + // 0x1edd ờ + 221,30,23,30,180,24,2,255,0,255,192,0,0,0,0,63,224,0,0,0,0,15,240,0,0,0,0,3,252,0,0,0,0,0,254,0,0,0,0,0,47,64,2,168,0,0,0,0,3,252,0,0,0,0,3,252,0,6,254,64,7,248,0,191,255,248,15,240,3,255,255,255,127,224,15,255,171,255,255,128,47,244,0,63,253,0,63,208,0,15,240,0,127,192,0,11,248,0,191,64,0,7,252,0,255,64,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,64,0,3,252,0,191,128,0,7,248,0,63,192,0,15,244,0,63,224,0,31,240,0,15,249,0,191,208,0,7,255,255,255,128,0,1,255,255,254,0,0,0,47,255,224,0,0,0,0,84,0,0,0, + // 0x1ede Ở + 222,30,29,40,64,30,2,255,0,0,1,64,0,0,0,0,0,0,31,254,0,0,0,0,0,0,31,255,128,0,0,0,0,0,0,47,192,0,0,0,0,0,0,15,192,0,0,0,0,0,0,47,192,0,0,0,0,0,2,255,0,0,0,0,0,0,3,248,0,0,0,0,0,0,3,240,0,0,0,0,0,0,1,144,0,0,0,0,0,0,0,0,0,0,127,192,0,0,5,165,0,0,127,192,0,2,255,255,244,0,191,128,0,47,255,255,255,64,255,0,0,255,255,255,255,225,254,0,2,255,228,1,191,255,252,0,7,255,0,0,15,255,240,0,15,252,0,0,3,255,128,0,47,240,0,0,1,255,64,0,63,224,0,0,0,255,128,0,63,208,0,0,0,127,192,0,127,192,0,0,0,63,192,0,191,192,0,0,0,63,208,0,191,128,0,0,0,63,208,0,191,128,0,0,0,63,224,0,191,128,0,0,0,63,224,0,191,128,0,0,0,63,208,0,191,128,0,0,0,63,208,0,127,192,0,0,0,63,208,0,127,192,0,0,0,63,192,0,63,208,0,0,0,191,192,0,63,224,0,0,0,255,128,0,31,244,0,0,1,255,0,0,15,252,0,0,3,254,0,0,7,255,0,0,31,252,0,0,2,255,228,1,255,244,0,0,0,191,255,255,255,208,0,0,0,31,255,255,255,0,0,0,0,1,255,255,228,0,0,0,0,0,1,84,0,0,0,0, + // 0x1edf ở + 223,30,23,33,198,24,2,255,0,0,80,0,0,0,0,11,255,64,0,0,0,11,255,192,0,0,0,0,31,224,0,0,0,0,11,224,0,0,0,0,15,208,0,0,0,0,255,128,0,0,0,0,253,0,0,0,0,0,244,0,2,168,0,0,160,0,3,252,0,0,0,0,3,252,0,6,254,64,7,248,0,191,255,248,15,240,3,255,255,255,127,224,15,255,171,255,255,128,47,244,0,63,253,0,63,208,0,15,240,0,127,192,0,11,248,0,191,64,0,7,252,0,255,64,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,64,0,3,252,0,191,128,0,7,248,0,63,192,0,15,244,0,63,224,0,31,240,0,15,249,0,191,208,0,7,255,255,255,128,0,1,255,255,254,0,0,0,47,255,224,0,0,0,0,84,0,0,0, + // 0x1ee0 Ỡ + 224,30,29,36,32,30,2,255,0,0,255,64,31,0,0,0,0,3,255,244,63,0,0,0,0,11,255,255,253,0,0,0,0,15,129,255,248,0,0,0,0,15,0,27,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,192,0,0,5,165,0,0,127,192,0,2,255,255,244,0,191,128,0,47,255,255,255,64,255,0,0,255,255,255,255,225,254,0,2,255,228,1,191,255,252,0,7,255,0,0,15,255,240,0,15,252,0,0,3,255,128,0,47,240,0,0,1,255,64,0,63,224,0,0,0,255,128,0,63,208,0,0,0,127,192,0,127,192,0,0,0,63,192,0,191,192,0,0,0,63,208,0,191,128,0,0,0,63,208,0,191,128,0,0,0,63,224,0,191,128,0,0,0,63,224,0,191,128,0,0,0,63,208,0,191,128,0,0,0,63,208,0,127,192,0,0,0,63,208,0,127,192,0,0,0,63,192,0,63,208,0,0,0,191,192,0,63,224,0,0,0,255,128,0,31,244,0,0,1,255,0,0,15,252,0,0,3,254,0,0,7,255,0,0,31,252,0,0,2,255,228,1,255,244,0,0,0,191,255,255,255,208,0,0,0,31,255,255,255,0,0,0,0,1,255,255,228,0,0,0,0,0,1,84,0,0,0,0, + // 0x1ee1 ỡ + 225,30,23,29,174,24,2,255,0,127,208,11,128,0,1,255,249,31,64,0,3,255,255,255,0,0,7,208,127,253,0,0,11,128,11,244,2,168,0,0,0,0,3,252,0,0,0,0,3,252,0,6,254,64,7,248,0,191,255,248,15,240,3,255,255,255,127,224,15,255,171,255,255,128,47,244,0,63,253,0,63,208,0,15,240,0,127,192,0,11,248,0,191,64,0,7,252,0,255,64,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,64,0,3,252,0,191,128,0,7,248,0,63,192,0,15,244,0,63,224,0,31,240,0,15,249,0,191,208,0,7,255,255,255,128,0,1,255,255,254,0,0,0,47,255,224,0,0,0,0,84,0,0,0, + // 0x1ee2 Ợ + 226,30,29,37,40,30,2,248,0,0,0,0,0,0,127,192,0,0,5,165,0,0,127,192,0,2,255,255,244,0,191,128,0,47,255,255,255,64,255,0,0,255,255,255,255,225,254,0,2,255,228,1,191,255,252,0,7,255,0,0,15,255,240,0,15,252,0,0,3,255,128,0,47,240,0,0,1,255,64,0,63,224,0,0,0,255,128,0,63,208,0,0,0,127,192,0,127,192,0,0,0,63,192,0,191,192,0,0,0,63,208,0,191,128,0,0,0,63,208,0,191,128,0,0,0,63,224,0,191,128,0,0,0,63,224,0,191,128,0,0,0,63,208,0,191,128,0,0,0,63,208,0,127,192,0,0,0,63,208,0,127,192,0,0,0,63,192,0,63,208,0,0,0,191,192,0,63,224,0,0,0,255,128,0,31,244,0,0,1,255,0,0,15,252,0,0,3,254,0,0,7,255,0,0,31,252,0,0,2,255,228,1,255,244,0,0,0,191,255,255,255,208,0,0,0,31,255,255,255,0,0,0,0,1,255,255,228,0,0,0,0,0,1,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,0,0,0,0,0,0,3,252,0,0,0,0,0,0,7,252,0,0,0,0,0,0,7,252,0,0,0,0,0,0,2,244,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x1ee3 ợ + 227,30,23,32,192,24,2,248,0,0,0,0,2,168,0,0,0,0,3,252,0,0,0,0,3,252,0,6,254,64,7,248,0,191,255,248,15,240,3,255,255,255,127,224,15,255,171,255,255,128,47,244,0,63,253,0,63,208,0,15,240,0,127,192,0,11,248,0,191,64,0,7,252,0,255,64,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,0,0,3,252,0,255,64,0,3,252,0,191,128,0,7,248,0,63,192,0,15,244,0,63,224,0,31,240,0,15,249,0,191,208,0,7,255,255,255,128,0,1,255,255,254,0,0,0,47,255,224,0,0,0,0,84,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,1,253,0,0,0,0,2,255,0,0,0,0,2,254,0,0,0,0,0,252,0,0,0,0,0,0,0,0,0, + // 0x1ee4 Ụ + 228,30,22,35,210,28,3,248,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,224,0,0,27,255,254,64,0,0,0,21,64,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,63,192,0,0,0,0,127,192,0,0,0,0,63,192,0,0,0,0,47,64,0,0,0,0,0,0,0,0, + // 0x1ee5 ụ + 229,30,18,29,145,24,3,248,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,11,240,0,5,64,0,0,0,0,0,0,0,0,1,144,0,0,0,11,244,0,0,0,15,248,0,0,0,15,248,0,0,0,3,240,0,0,0,0,0,0,0, + // 0x1ee6 Ủ + 230,30,22,39,234,28,3,255,0,0,106,64,0,0,0,0,255,240,0,0,0,0,255,252,0,0,0,0,0,252,0,0,0,0,0,252,0,0,0,0,2,252,0,0,0,0,47,240,0,0,0,0,47,64,0,0,0,0,31,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,64,0,0,31,224,191,128,0,0,31,224,191,128,0,0,47,224,127,192,0,0,47,208,63,192,0,0,63,192,63,224,0,0,191,192,31,248,0,1,255,64,15,255,64,31,255,0,3,255,255,255,252,0,0,255,255,255,224,0,0,27,255,254,64,0,0,0,21,64,0,0, + // 0x1ee7 ủ + 231,30,18,33,165,24,3,255,0,1,64,0,0,0,15,254,0,0,0,15,255,128,0,0,0,47,192,0,0,0,15,192,0,0,0,47,192,0,0,2,255,64,0,0,3,248,0,0,0,2,240,0,0,0,1,144,0,0,0,0,0,0,0,85,0,0,5,80,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,15,240,255,0,0,31,240,255,0,0,31,240,255,0,0,31,240,255,0,0,47,240,255,64,0,63,240,191,192,0,191,240,127,224,7,255,240,63,255,255,239,240,15,255,255,143,240,2,255,253,11,240,0,5,64,0,0, + // 0x1ee8 Ứ + 232,30,29,37,40,31,3,255,0,0,0,255,192,0,0,0,0,0,2,255,0,0,0,0,0,0,7,252,0,0,0,0,0,0,15,240,0,0,0,0,0,0,63,192,0,0,0,0,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,191,128,191,64,0,0,31,224,191,64,191,64,0,0,31,224,255,0,191,64,0,0,31,226,254,0,191,64,0,0,31,255,252,0,191,64,0,0,31,255,240,0,191,64,0,0,31,254,64,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,128,0,0,31,224,0,0,127,128,0,0,47,208,0,0,63,192,0,0,63,208,0,0,63,224,0,0,127,192,0,0,31,248,0,1,255,128,0,0,15,255,64,27,255,0,0,0,3,255,255,255,252,0,0,0,0,191,255,255,240,0,0,0,0,11,255,254,64,0,0,0,0,0,21,64,0,0,0,0, + // 0x1ee9 ứ + 233,30,25,30,210,27,3,255,0,0,15,248,0,0,0,0,0,63,240,0,0,0,0,0,127,192,0,0,0,0,0,255,0,0,0,0,0,3,248,0,0,0,0,0,11,224,0,0,106,128,0,0,0,0,0,127,192,0,0,0,0,0,191,128,85,0,0,5,80,255,0,255,0,0,15,241,255,0,255,0,0,15,247,252,0,255,0,0,15,255,244,0,255,0,0,15,255,128,0,255,0,0,15,244,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,31,240,0,0,255,0,0,31,240,0,0,255,0,0,31,240,0,0,255,0,0,47,240,0,0,255,64,0,63,240,0,0,191,192,0,191,240,0,0,127,224,7,255,240,0,0,63,255,255,239,240,0,0,15,255,255,143,240,0,0,2,255,253,11,240,0,0,0,5,64,0,0,0,0, + // 0x1eea Ừ + 234,30,29,37,40,31,3,255,0,31,244,0,0,0,0,0,0,11,252,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,47,192,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,191,128,191,64,0,0,31,224,191,64,191,64,0,0,31,224,255,0,191,64,0,0,31,226,254,0,191,64,0,0,31,255,252,0,191,64,0,0,31,255,240,0,191,64,0,0,31,254,64,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,128,0,0,31,224,0,0,127,128,0,0,47,208,0,0,63,192,0,0,63,208,0,0,63,224,0,0,127,192,0,0,31,248,0,1,255,128,0,0,15,255,64,27,255,0,0,0,3,255,255,255,252,0,0,0,0,191,255,255,240,0,0,0,0,11,255,254,64,0,0,0,0,0,21,64,0,0,0,0, + // 0x1eeb ừ + 235,30,25,30,210,27,3,255,1,255,64,0,0,0,0,0,191,192,0,0,0,0,0,47,224,0,0,0,0,0,11,244,0,0,0,0,0,2,252,0,0,0,0,0,0,126,0,0,106,128,0,0,0,0,0,127,192,0,0,0,0,0,191,128,85,0,0,5,80,255,0,255,0,0,15,241,255,0,255,0,0,15,247,252,0,255,0,0,15,255,244,0,255,0,0,15,255,128,0,255,0,0,15,244,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,31,240,0,0,255,0,0,31,240,0,0,255,0,0,31,240,0,0,255,0,0,47,240,0,0,255,64,0,63,240,0,0,191,192,0,191,240,0,0,127,224,7,255,240,0,0,63,255,255,239,240,0,0,15,255,255,143,240,0,0,2,255,253,11,240,0,0,0,5,64,0,0,0,0, + // 0x1eec Ử + 236,30,29,39,56,31,3,255,0,0,106,64,0,0,0,0,0,0,255,244,0,0,0,0,0,0,255,252,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,189,0,0,0,0,0,0,1,252,0,0,0,0,0,0,31,244,0,0,0,0,0,0,31,128,0,0,0,0,0,0,15,64,0,0,0,0,0,0,5,0,0,0,127,192,0,0,0,0,0,0,191,128,191,64,0,0,31,224,191,64,191,64,0,0,31,224,255,0,191,64,0,0,31,226,254,0,191,64,0,0,31,255,252,0,191,64,0,0,31,255,240,0,191,64,0,0,31,254,64,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,128,0,0,31,224,0,0,127,128,0,0,47,208,0,0,63,192,0,0,63,208,0,0,63,224,0,0,127,192,0,0,31,248,0,1,255,128,0,0,15,255,64,27,255,0,0,0,3,255,255,255,252,0,0,0,0,191,255,255,240,0,0,0,0,11,255,254,64,0,0,0,0,0,21,64,0,0,0,0, + // 0x1eed ử + 237,30,25,33,231,27,3,255,0,1,64,0,0,0,0,0,15,254,0,0,0,0,0,15,255,128,0,0,0,0,0,31,192,0,0,0,0,0,15,192,0,0,0,0,0,31,192,0,0,0,0,1,255,64,0,0,0,0,2,248,0,0,0,0,0,2,240,0,0,106,128,0,1,160,0,0,127,192,0,0,0,0,0,191,128,85,0,0,5,80,255,0,255,0,0,15,241,255,0,255,0,0,15,247,252,0,255,0,0,15,255,244,0,255,0,0,15,255,128,0,255,0,0,15,244,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,31,240,0,0,255,0,0,31,240,0,0,255,0,0,31,240,0,0,255,0,0,47,240,0,0,255,64,0,63,240,0,0,191,192,0,191,240,0,0,127,224,7,255,240,0,0,63,255,255,239,240,0,0,15,255,255,143,240,0,0,2,255,253,11,240,0,0,0,5,64,0,0,0,0, + // 0x1eee Ữ + 238,30,29,36,32,31,3,255,0,11,248,0,240,0,0,0,0,63,255,67,240,0,0,0,0,191,255,255,208,0,0,0,0,248,11,255,192,0,0,0,0,240,1,190,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,191,128,191,64,0,0,31,224,191,64,191,64,0,0,31,224,255,0,191,64,0,0,31,226,254,0,191,64,0,0,31,255,252,0,191,64,0,0,31,255,240,0,191,64,0,0,31,254,64,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,128,0,0,31,224,0,0,127,128,0,0,47,208,0,0,63,192,0,0,63,208,0,0,63,224,0,0,127,192,0,0,31,248,0,1,255,128,0,0,15,255,64,27,255,0,0,0,3,255,255,255,252,0,0,0,0,191,255,255,240,0,0,0,0,11,255,254,64,0,0,0,0,0,21,64,0,0,0,0, + // 0x1eef ữ + 239,30,25,29,203,27,3,255,0,191,64,31,0,0,0,3,255,244,63,0,0,0,11,255,255,253,0,0,0,15,129,255,248,0,0,0,15,0,27,224,0,106,128,0,0,0,0,0,127,192,0,0,0,0,0,191,128,85,0,0,5,80,255,0,255,0,0,15,241,255,0,255,0,0,15,247,252,0,255,0,0,15,255,244,0,255,0,0,15,255,128,0,255,0,0,15,244,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,31,240,0,0,255,0,0,31,240,0,0,255,0,0,31,240,0,0,255,0,0,47,240,0,0,255,64,0,63,240,0,0,191,192,0,191,240,0,0,127,224,7,255,240,0,0,63,255,255,239,240,0,0,15,255,255,143,240,0,0,2,255,253,11,240,0,0,0,5,64,0,0,0,0, + // 0x1ef0 Ự + 240,30,29,37,40,31,3,248,0,0,0,0,0,0,127,192,0,0,0,0,0,0,191,128,191,64,0,0,31,224,191,64,191,64,0,0,31,224,255,0,191,64,0,0,31,226,254,0,191,64,0,0,31,255,252,0,191,64,0,0,31,255,240,0,191,64,0,0,31,254,64,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,64,0,0,31,224,0,0,191,128,0,0,31,224,0,0,127,128,0,0,47,208,0,0,63,192,0,0,63,208,0,0,63,224,0,0,127,192,0,0,31,248,0,1,255,128,0,0,15,255,64,27,255,0,0,0,3,255,255,255,252,0,0,0,0,191,255,255,240,0,0,0,0,11,255,254,64,0,0,0,0,0,21,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,208,0,0,0,0,0,0,63,192,0,0,0,0,0,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x1ef1 ự + 241,30,25,32,224,27,3,248,0,0,0,0,0,106,128,0,0,0,0,0,127,192,0,0,0,0,0,191,128,85,0,0,5,80,255,0,255,0,0,15,241,255,0,255,0,0,15,247,252,0,255,0,0,15,255,244,0,255,0,0,15,255,128,0,255,0,0,15,244,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,15,240,0,0,255,0,0,31,240,0,0,255,0,0,31,240,0,0,255,0,0,31,240,0,0,255,0,0,47,240,0,0,255,64,0,63,240,0,0,191,192,0,191,240,0,0,127,224,7,255,240,0,0,63,255,255,239,240,0,0,15,255,255,143,240,0,0,2,255,253,11,240,0,0,0,5,64,0,0,0,0,0,0,0,0,0,0,0,0,1,144,0,0,0,0,0,11,244,0,0,0,0,0,15,248,0,0,0,0,0,15,248,0,0,0,0,0,3,240,0,0,0,0,0,0,0,0,0,0,0, + // 0x1ef2 Ỳ + 242,30,22,36,216,22,0,0,0,15,248,0,0,0,0,7,252,0,0,0,0,1,255,0,0,0,0,0,127,128,0,0,0,0,31,208,0,0,0,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,192,0,0,47,240,63,208,0,0,63,208,47,240,0,0,191,128,15,244,0,0,255,0,11,252,0,2,254,0,3,253,0,3,252,0,1,255,0,11,248,0,0,255,64,31,240,0,0,127,192,63,208,0,0,63,208,127,192,0,0,31,240,255,64,0,0,11,249,255,0,0,0,3,255,253,0,0,0,2,255,248,0,0,0,0,255,240,0,0,0,0,191,224,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x1ef3 ỳ + 243,30,20,39,195,20,0,246,0,127,224,0,0,0,31,240,0,0,0,7,252,0,0,0,1,254,0,0,0,0,127,64,0,0,0,31,192,0,0,0,0,0,0,0,0,0,0,0,85,0,0,0,85,191,128,0,2,254,63,192,0,3,253,63,208,0,7,252,31,240,0,11,248,15,240,0,15,240,11,248,0,31,240,3,252,0,47,208,3,253,0,63,192,1,254,0,127,128,0,255,0,255,64,0,191,64,255,0,0,63,129,254,0,0,63,195,252,0,0,31,211,252,0,0,15,231,244,0,0,11,251,240,0,0,3,255,224,0,0,3,255,192,0,0,1,255,192,0,0,0,255,64,0,0,0,255,0,0,0,1,254,0,0,0,2,253,0,0,0,3,252,0,0,0,15,244,0,0,16,127,240,0,0,127,255,192,0,0,127,255,64,0,0,127,248,0,0,0,0,0,0,0,0, + // 0x1ef4 Ỵ + 244,30,22,35,210,22,0,248,191,192,0,0,47,240,63,208,0,0,63,208,47,240,0,0,191,128,15,244,0,0,255,0,11,252,0,2,254,0,3,253,0,3,252,0,1,255,0,11,248,0,0,255,64,31,240,0,0,127,192,63,208,0,0,63,208,127,192,0,0,31,240,255,64,0,0,11,249,255,0,0,0,3,255,253,0,0,0,2,255,248,0,0,0,0,255,240,0,0,0,0,191,224,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,47,128,0,0,0,0,0,0,0,0, + // 0x1ef5 ỵ + 245,30,20,31,155,20,0,246,85,0,0,0,85,191,128,0,2,254,63,192,0,3,253,63,208,0,7,252,31,240,0,11,248,15,240,0,15,240,11,248,0,31,240,3,252,0,47,208,3,253,0,63,192,1,254,0,127,128,0,255,0,255,64,0,191,64,255,0,0,63,129,254,0,0,63,195,252,0,0,31,211,252,0,0,15,231,244,0,0,11,251,240,0,0,3,255,224,0,0,3,255,192,0,0,1,255,192,0,0,0,255,64,0,0,0,255,0,0,0,1,254,0,0,0,2,253,6,64,0,3,252,47,208,0,15,244,63,224,16,127,240,63,224,127,255,192,15,192,127,255,64,0,0,127,248,0,0,0,0,0,0,0,0, + // 0x1ef6 Ỷ + 246,30,22,38,228,22,0,0,0,0,106,64,0,0,0,0,255,244,0,0,0,0,255,252,0,0,0,0,0,253,0,0,0,0,0,253,0,0,0,0,2,252,0,0,0,0,31,244,0,0,0,0,31,128,0,0,0,0,31,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,191,192,0,0,47,240,63,208,0,0,63,208,47,240,0,0,191,128,15,244,0,0,255,0,11,252,0,2,254,0,3,253,0,3,252,0,1,255,0,11,248,0,0,255,64,31,240,0,0,127,192,63,208,0,0,63,208,127,192,0,0,31,240,255,64,0,0,11,249,255,0,0,0,3,255,253,0,0,0,2,255,248,0,0,0,0,255,240,0,0,0,0,191,224,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x1ef7 ỷ + 247,30,20,42,210,20,0,246,0,0,80,0,0,0,3,255,128,0,0,3,255,240,0,0,0,7,240,0,0,0,3,240,0,0,0,7,240,0,0,0,127,208,0,0,0,190,0,0,0,0,124,0,0,0,0,40,0,0,0,0,0,0,0,85,0,0,0,85,191,128,0,2,254,63,192,0,3,253,63,208,0,7,252,31,240,0,11,248,15,240,0,15,240,11,248,0,31,240,3,252,0,47,208,3,253,0,63,192,1,254,0,127,128,0,255,0,255,64,0,191,64,255,0,0,63,129,254,0,0,63,195,252,0,0,31,211,252,0,0,15,231,244,0,0,11,251,240,0,0,3,255,224,0,0,3,255,192,0,0,1,255,192,0,0,0,255,64,0,0,0,255,0,0,0,1,254,0,0,0,2,253,0,0,0,3,252,0,0,0,15,244,0,0,16,127,240,0,0,127,255,192,0,0,127,255,64,0,0,127,248,0,0,0,0,0,0,0,0, + // 0x1ef8 Ỹ + 248,30,22,35,210,22,0,0,0,11,248,0,240,0,0,63,255,67,240,0,0,191,255,255,224,0,0,248,11,255,192,0,0,240,1,190,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,192,0,0,47,240,63,208,0,0,63,208,47,240,0,0,191,128,15,244,0,0,255,0,11,252,0,2,254,0,3,253,0,3,252,0,1,255,0,11,248,0,0,255,64,31,240,0,0,127,192,63,208,0,0,63,208,127,192,0,0,31,240,255,64,0,0,11,249,255,0,0,0,3,255,253,0,0,0,2,255,248,0,0,0,0,255,240,0,0,0,0,191,224,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0, + // 0x1ef9 ỹ + 249,30,20,38,190,20,0,246,0,47,224,3,192,0,255,253,15,192,2,255,255,255,64,3,224,63,255,0,3,192,6,248,0,0,0,0,0,0,0,0,0,0,0,85,0,0,0,85,191,128,0,2,254,63,192,0,3,253,63,208,0,7,252,31,240,0,11,248,15,240,0,15,240,11,248,0,31,240,3,252,0,47,208,3,253,0,63,192,1,254,0,127,128,0,255,0,255,64,0,191,64,255,0,0,63,129,254,0,0,63,195,252,0,0,31,211,252,0,0,15,231,244,0,0,11,251,240,0,0,3,255,224,0,0,3,255,192,0,0,1,255,192,0,0,0,255,64,0,0,0,255,0,0,0,1,254,0,0,0,2,253,0,0,0,3,252,0,0,0,15,244,0,0,16,127,240,0,0,127,255,192,0,0,127,255,64,0,0,127,248,0,0,0,0,0,0,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_29.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_29.cpp new file mode 100644 index 000000000000..ff7b51c9ee25 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_29.cpp @@ -0,0 +1,416 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium 40pt, capital 'A' height: 29px, width: 100%, range: 0x0020-0x00ff +extern const uint8_t NotoSans_Medium_29[25485] = { + 130,29,32,0,255,0,38,246, // unifont_t + // 0x0020 " " + 0,0,0,10,0,0, + // 0x0021 ! + 5,30,60,11,3,255,170,128,255,192,255,192,255,192,255,192,255,128,191,128,191,128,191,128,191,128,191,64,127,64,127,64,127,64,127,64,127,0,63,0,63,0,63,0,63,0,42,0,0,0,0,0,0,0,127,64,255,192,255,192,255,192,191,128,25,0, + // 0x0022 " + 13,11,44,17,2,18,42,64,106,64,127,192,191,64,63,128,191,64,63,128,191,0,63,128,127,0,63,64,127,0,63,64,127,0,63,64,127,0,63,64,63,0,47,0,63,0,31,0,62,0, + // 0x0023 # + 24,29,174,26,1,0,0,0,42,0,26,0,0,0,127,0,63,64,0,0,190,0,63,0,0,0,253,0,127,0,0,0,253,0,126,0,0,0,252,0,190,0,0,1,252,0,253,0,0,2,248,0,252,0,0,3,248,1,252,0,47,255,255,255,255,255,47,255,255,255,255,255,31,255,255,255,255,254,0,7,224,3,240,0,0,11,224,7,240,0,0,15,208,7,240,0,0,15,192,11,224,0,0,31,192,15,208,0,85,111,213,95,213,80,255,255,255,255,255,244,255,255,255,255,255,244,255,255,255,255,255,244,0,127,0,63,64,0,0,127,0,63,0,0,0,190,0,127,0,0,0,253,0,127,0,0,0,252,0,190,0,0,0,252,0,253,0,0,1,252,0,252,0,0,2,248,0,252,0,0, + // 0x0024 $ + 19,34,170,23,2,253,0,0,84,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,47,255,233,0,2,255,255,255,224,15,255,255,255,224,63,254,254,255,208,127,208,248,6,192,191,128,248,0,0,191,64,248,0,0,191,128,248,0,0,191,192,248,0,0,63,248,248,0,0,47,255,248,0,0,7,255,255,64,0,0,191,255,248,0,0,11,255,255,128,0,0,255,255,224,0,0,249,191,240,0,0,248,15,248,0,0,248,11,252,0,0,248,7,252,0,0,248,11,248,164,0,248,31,244,191,233,254,255,240,191,255,255,255,192,191,255,255,254,0,6,255,255,144,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,80,0,0, + // 0x0025 % + 31,30,240,34,2,255,2,254,64,0,0,42,64,0,15,255,224,0,0,127,0,0,63,255,248,0,0,254,0,0,127,131,252,0,2,252,0,0,191,0,253,0,3,244,0,0,254,0,254,0,11,240,0,0,253,0,191,0,15,208,0,0,253,0,127,0,63,192,0,0,252,0,127,0,127,0,0,0,252,0,127,0,254,0,0,0,253,0,127,1,252,0,0,0,253,0,191,3,248,5,80,0,254,0,254,11,240,127,253,0,191,0,253,15,209,255,255,64,63,131,252,47,195,254,191,192,47,255,248,63,71,244,15,224,15,255,224,255,11,240,11,240,1,254,65,253,15,224,7,240,0,0,3,248,15,224,7,240,0,0,7,240,15,224,3,244,0,0,15,224,15,208,3,244,0,0,47,192,15,224,3,244,0,0,63,64,15,224,7,240,0,0,191,0,15,224,7,240,0,0,253,0,11,240,11,240,0,2,252,0,3,244,31,224,0,7,244,0,2,254,191,192,0,15,224,0,0,255,255,64,0,31,192,0,0,63,253,0,0,0,0,0,0,1,64,0, + // 0x0026 & + 27,30,210,29,2,255,0,6,255,144,0,0,0,0,63,255,253,0,0,0,0,255,255,255,64,0,0,3,255,150,255,192,0,0,3,253,0,127,208,0,0,7,252,0,63,208,0,0,7,248,0,47,208,0,0,7,252,0,63,208,0,0,3,252,0,127,192,0,0,2,254,0,255,128,0,0,0,255,71,255,0,0,0,0,127,255,252,0,0,0,0,47,255,224,0,0,0,0,47,255,64,0,0,0,1,255,255,64,0,26,144,7,255,255,224,0,63,224,31,253,63,248,0,63,192,63,240,15,254,0,127,192,191,192,3,255,128,255,64,255,128,0,255,225,255,0,255,64,0,47,251,253,0,255,64,0,11,255,252,0,255,128,0,2,255,240,0,255,192,0,0,255,240,0,191,240,0,11,255,252,0,63,254,85,191,255,255,0,31,255,255,255,242,255,192,7,255,255,255,128,191,240,0,127,255,248,0,47,252,0,1,84,0,0,0,0, + // 0x0027 ' + 5,11,22,9,2,18,42,64,127,192,63,128,63,128,63,128,63,64,63,64,63,64,63,64,47,0,31,0, + // 0x0028 ( + 10,36,108,12,1,249,0,6,160,0,31,224,0,63,192,0,191,64,0,255,0,2,253,0,3,252,0,11,248,0,15,240,0,15,240,0,31,224,0,47,208,0,63,192,0,63,192,0,63,192,0,127,128,0,127,128,0,127,128,0,127,128,0,127,128,0,127,192,0,63,192,0,63,192,0,63,192,0,47,208,0,31,224,0,15,240,0,15,240,0,11,248,0,3,252,0,2,253,0,0,255,0,0,191,64,0,63,192,0,15,224,0,1,80, + // 0x0029 ) + 10,36,108,12,1,249,106,0,0,63,192,0,31,224,0,15,240,0,7,248,0,3,252,0,1,254,0,0,255,0,0,191,64,0,127,128,0,63,192,0,63,192,0,47,208,0,47,224,0,31,224,0,31,240,0,31,240,0,15,240,0,15,240,0,31,240,0,31,240,0,31,224,0,47,224,0,47,208,0,63,192,0,63,192,0,127,128,0,191,64,0,255,0,1,254,0,3,252,0,7,248,0,15,240,0,47,208,0,63,128,0,21,0,0, + // 0x002a * + 20,19,95,22,1,12,0,0,85,0,0,0,0,255,0,0,0,0,255,0,0,0,0,254,0,0,0,0,254,0,0,0,0,190,0,0,57,0,189,0,108,63,244,125,47,252,63,255,255,255,252,127,255,255,255,253,1,91,255,165,64,0,3,255,192,0,0,15,239,224,0,0,47,199,244,0,0,127,195,252,0,0,255,65,255,0,2,255,0,255,128,0,189,0,126,0,0,8,0,32,0, + // 0x002b + + 19,20,100,23,2,4,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,170,171,254,170,168,255,255,255,255,252,255,255,255,255,252,170,170,254,170,164,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,168,0,0, + // 0x002c , + 7,11,22,11,1,250,6,168,11,252,15,248,15,240,15,240,31,224,47,192,63,128,63,64,127,0,0,0, + // 0x002d - + 11,5,15,13,1,8,106,170,160,191,255,244,191,255,244,191,255,244,0,0,0, + // 0x002e . + 5,6,12,11,3,255,127,64,255,192,255,192,255,192,191,128,25,0, + // 0x002f / + 15,29,116,15,0,0,0,0,2,168,0,0,7,248,0,0,15,244,0,0,15,240,0,0,47,224,0,0,63,192,0,0,127,192,0,0,191,64,0,0,255,0,0,1,254,0,0,3,253,0,0,3,252,0,0,7,248,0,0,15,240,0,0,15,240,0,0,47,208,0,0,63,192,0,0,127,128,0,0,191,64,0,0,255,0,0,1,254,0,0,3,252,0,0,3,252,0,0,11,244,0,0,15,240,0,0,31,224,0,0,47,208,0,0,63,192,0,0,127,128,0,0, + // 0x0030 0 + 19,30,150,23,2,255,0,11,255,64,0,0,191,255,244,0,3,255,255,254,0,11,255,171,255,64,31,248,0,255,192,63,224,0,63,208,63,192,0,31,240,127,192,0,15,240,191,128,0,15,244,255,64,0,11,248,255,64,0,7,252,255,0,0,7,252,255,0,0,7,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,7,252,255,0,0,7,252,255,0,0,7,252,255,64,0,11,248,191,128,0,11,248,127,128,0,15,244,63,192,0,31,240,63,208,0,47,240,31,240,0,127,208,15,254,70,255,192,3,255,255,255,0,0,255,255,252,0,0,47,255,224,0,0,0,84,0,0, + // 0x0031 1 + 12,29,87,23,3,0,0,0,169,0,3,255,0,31,255,0,191,255,2,255,255,15,253,255,127,240,255,127,193,255,30,1,255,4,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255, + // 0x0032 2 + 19,29,145,23,2,0,0,27,254,128,0,2,255,255,248,0,31,255,255,255,0,191,255,175,255,192,127,208,0,255,208,30,0,0,63,224,0,0,0,47,240,0,0,0,31,240,0,0,0,31,240,0,0,0,31,240,0,0,0,63,224,0,0,0,63,192,0,0,0,255,128,0,0,1,255,0,0,0,7,253,0,0,0,15,248,0,0,0,63,224,0,0,0,255,192,0,0,3,255,0,0,0,15,252,0,0,0,63,240,0,0,0,255,192,0,0,3,254,0,0,0,15,248,0,0,0,63,224,0,0,0,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252, + // 0x0033 3 + 20,30,150,23,1,255,0,27,255,160,0,2,255,255,254,0,31,255,255,255,192,63,255,171,255,240,15,208,0,47,244,6,0,0,15,248,0,0,0,11,252,0,0,0,7,252,0,0,0,7,252,0,0,0,15,248,0,0,0,31,240,0,0,0,191,208,0,21,175,255,64,0,63,255,244,0,0,63,255,249,0,0,63,255,255,192,0,0,1,191,244,0,0,0,15,252,0,0,0,3,253,0,0,0,3,254,0,0,0,2,255,0,0,0,2,255,0,0,0,3,254,0,0,0,7,253,96,0,0,31,252,127,148,5,255,244,127,255,255,255,224,127,255,255,255,64,11,255,255,244,0,0,5,84,0,0, + // 0x0034 4 + 21,29,174,23,1,0,0,0,0,42,128,0,0,0,0,255,192,0,0,0,2,255,192,0,0,0,7,255,192,0,0,0,15,255,192,0,0,0,47,255,192,0,0,0,127,127,192,0,0,0,255,63,192,0,0,2,252,63,192,0,0,7,244,63,192,0,0,15,224,63,192,0,0,63,192,63,192,0,0,127,64,63,192,0,0,254,0,63,192,0,3,252,0,63,192,0,11,244,0,63,192,0,31,224,0,63,192,0,63,192,0,63,192,0,191,0,0,63,192,0,255,255,255,255,255,192,255,255,255,255,255,192,255,255,255,255,255,192,170,170,170,191,234,128,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0, + // 0x0035 5 + 19,30,150,23,2,255,10,170,170,170,64,15,255,255,255,192,15,255,255,255,192,15,255,255,255,192,15,240,0,0,0,31,224,0,0,0,31,224,0,0,0,31,208,0,0,0,47,208,0,0,0,47,208,0,0,0,47,192,0,0,0,63,218,170,64,0,63,255,255,248,0,63,255,255,255,0,47,255,255,255,192,1,0,1,255,224,0,0,0,63,240,0,0,0,15,244,0,0,0,15,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,15,244,0,0,0,47,240,144,0,0,191,224,191,144,27,255,192,191,255,255,255,0,191,255,255,252,0,27,255,255,144,0,0,21,80,0,0, + // 0x0036 6 + 19,30,150,23,2,255,0,0,27,255,128,0,7,255,255,192,0,47,255,255,192,0,255,254,170,192,3,255,128,0,0,11,253,0,0,0,15,244,0,0,0,47,224,0,0,0,63,192,0,0,0,63,192,0,0,0,127,128,0,0,0,191,65,255,228,0,255,79,255,255,0,255,127,255,255,192,255,255,85,255,240,255,244,0,47,244,255,192,0,15,248,255,128,0,7,252,255,64,0,3,252,255,64,0,3,252,191,64,0,3,252,191,128,0,3,252,127,192,0,7,252,63,224,0,15,248,31,244,0,47,240,15,254,65,255,224,3,255,255,255,192,0,255,255,255,0,0,31,255,244,0,0,0,85,0,0, + // 0x0037 7 + 20,29,145,23,1,0,42,170,170,170,170,127,255,255,255,255,127,255,255,255,255,127,255,255,255,255,0,0,0,2,254,0,0,0,3,252,0,0,0,7,252,0,0,0,15,244,0,0,0,31,240,0,0,0,63,208,0,0,0,127,192,0,0,0,255,128,0,0,1,255,0,0,0,2,254,0,0,0,3,252,0,0,0,11,252,0,0,0,15,244,0,0,0,47,240,0,0,0,63,208,0,0,0,127,192,0,0,0,255,128,0,0,1,255,0,0,0,3,254,0,0,0,7,252,0,0,0,15,252,0,0,0,15,244,0,0,0,47,240,0,0,0,63,208,0,0,0,191,192,0,0, + // 0x0038 8 + 19,30,150,23,2,255,0,27,255,144,0,1,255,255,253,0,7,255,255,255,64,31,254,90,255,192,63,240,0,127,224,63,192,0,31,240,127,192,0,15,240,63,192,0,15,240,63,192,0,15,240,63,224,0,47,224,31,248,0,191,192,11,255,71,255,0,2,255,255,252,0,0,127,255,208,0,0,127,255,224,0,2,255,255,253,0,15,254,11,255,128,63,240,0,191,224,127,192,0,31,244,255,64,0,11,248,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,7,252,191,192,0,15,248,127,244,0,127,240,47,255,255,255,192,7,255,255,255,0,0,191,255,244,0,0,1,84,0,0, + // 0x0039 9 + 19,30,150,23,2,255,0,27,254,64,0,1,255,255,244,0,7,255,255,253,0,31,255,175,255,64,63,240,0,255,192,127,192,0,63,224,255,128,0,31,240,255,0,0,15,244,255,0,0,11,248,255,0,0,7,252,255,0,0,7,252,255,0,0,7,252,255,64,0,15,252,191,192,0,47,252,63,244,1,255,252,47,255,255,251,252,11,255,255,215,252,1,255,255,71,248,0,6,148,11,244,0,0,0,15,244,0,0,0,15,240,0,0,0,31,224,0,0,0,63,192,0,0,0,255,128,0,0,3,255,0,4,0,111,253,0,15,255,255,244,0,15,255,255,192,0,15,255,249,0,0,1,85,0,0,0, + // 0x003a : + 5,23,46,11,3,255,127,64,255,192,255,192,255,192,255,128,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,64,255,192,255,192,255,192,191,128,25,0, + // 0x003b ; + 7,28,56,11,1,250,7,240,15,252,31,252,31,252,15,248,2,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,164,15,248,15,244,31,240,31,224,47,208,63,192,63,64,127,0,190,0,0,0, + // 0x003c < + 19,21,105,23,2,4,0,0,0,0,4,0,0,0,0,124,0,0,0,7,252,0,0,0,127,252,0,0,7,255,224,0,0,127,254,0,0,7,255,224,0,0,127,254,0,0,7,255,208,0,0,127,253,0,0,0,255,208,0,0,0,255,224,0,0,0,127,255,64,0,0,7,255,248,0,0,0,47,255,144,0,0,2,255,253,0,0,0,31,255,224,0,0,1,191,252,0,0,0,11,252,0,0,0,0,124,0,0,0,0,4, + // 0x003d = + 19,12,60,23,2,8,170,170,170,170,164,255,255,255,255,248,255,255,255,255,248,170,170,170,170,164,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,248,255,255,255,255,248,255,255,255,255,248,85,85,85,85,84, + // 0x003e > + 19,20,100,23,2,4,224,0,0,0,0,254,0,0,0,0,255,224,0,0,0,127,254,0,0,0,6,255,224,0,0,0,47,254,0,0,0,2,255,224,0,0,0,47,255,64,0,0,2,255,244,0,0,0,31,252,0,0,0,47,252,0,0,7,255,244,0,0,191,254,64,0,27,255,224,0,1,255,253,0,0,47,255,208,0,0,255,248,0,0,0,255,128,0,0,0,244,0,0,0,0,64,0,0,0,0, + // 0x003f ? + 17,30,150,18,0,255,0,111,254,64,0,31,255,255,240,0,127,255,255,252,0,63,254,175,255,0,46,64,1,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,127,128,0,0,0,255,64,0,0,2,255,0,0,0,11,253,0,0,0,47,244,0,0,0,255,208,0,0,3,255,64,0,0,11,252,0,0,0,15,240,0,0,0,31,208,0,0,0,31,192,0,0,0,31,192,0,0,0,10,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,208,0,0,0,63,240,0,0,0,63,240,0,0,0,63,240,0,0,0,47,224,0,0,0,6,64,0,0, + // 0x0040 @ + 32,33,8,36,2,252,0,0,0,5,165,0,0,0,0,0,6,255,255,249,0,0,0,0,127,255,255,255,208,0,0,3,255,250,86,255,248,0,0,31,253,0,0,11,255,0,0,127,208,0,0,0,191,128,0,255,0,0,0,0,47,208,3,252,0,0,0,0,11,240,7,240,0,27,254,144,3,248,15,224,0,255,255,252,2,252,31,192,7,255,255,252,0,252,63,128,15,244,2,252,0,253,63,0,63,192,1,252,0,190,127,0,127,64,1,252,0,190,191,0,191,0,2,252,0,190,190,0,254,0,2,252,0,190,190,0,254,0,2,252,0,190,254,0,254,0,3,252,0,253,190,0,254,0,3,252,0,252,190,0,191,0,7,252,1,252,191,0,127,64,15,252,3,244,127,0,63,224,127,190,31,240,63,0,31,255,253,63,255,208,63,128,7,255,244,31,255,64,47,192,0,106,64,2,164,0,15,240,0,0,0,0,0,0,7,248,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,255,224,0,0,27,0,0,0,47,255,169,107,255,0,0,0,7,255,255,255,255,0,0,0,0,111,255,255,228,0,0,0,0,0,86,84,0,0,0, + // 0x0041 A + 26,29,203,26,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x0042 B + 20,29,145,26,4,0,170,170,165,0,0,255,255,255,249,0,255,255,255,255,192,255,255,255,255,240,255,0,1,191,248,255,0,0,31,252,255,0,0,11,252,255,0,0,7,252,255,0,0,7,252,255,0,0,7,252,255,0,0,15,248,255,0,0,47,240,255,170,171,255,192,255,255,255,249,0,255,255,255,254,0,255,255,255,255,224,255,0,0,111,248,255,0,0,11,253,255,0,0,3,255,255,0,0,2,255,255,0,0,1,255,255,0,0,2,255,255,0,0,3,255,255,0,0,7,254,255,0,0,31,253,255,170,171,255,248,255,255,255,255,224,255,255,255,255,64,255,255,255,228,0, + // 0x0043 C + 22,30,180,25,2,255,0,0,27,255,228,0,0,2,255,255,255,208,0,31,255,255,255,224,0,127,255,255,255,208,1,255,244,0,27,192,3,255,128,0,0,0,11,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,63,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,127,208,0,0,0,0,63,224,0,0,0,0,63,240,0,0,0,0,47,244,0,0,0,0,15,252,0,0,0,0,11,255,0,0,0,0,3,255,208,0,0,64,1,255,254,85,175,192,0,127,255,255,255,192,0,15,255,255,255,192,0,1,191,255,254,64,0,0,1,85,0,0, + // 0x0044 D + 23,29,174,29,4,0,170,170,165,0,0,0,255,255,255,248,0,0,255,255,255,255,192,0,255,255,255,255,244,0,255,0,1,191,253,0,255,0,0,11,255,64,255,0,0,1,255,192,255,0,0,0,191,224,255,0,0,0,63,240,255,0,0,0,31,244,255,0,0,0,15,248,255,0,0,0,15,248,255,0,0,0,11,252,255,0,0,0,11,252,255,0,0,0,11,252,255,0,0,0,11,252,255,0,0,0,11,252,255,0,0,0,15,248,255,0,0,0,15,248,255,0,0,0,31,244,255,0,0,0,63,240,255,0,0,0,127,224,255,0,0,0,255,192,255,0,0,7,255,64,255,0,0,127,254,0,255,170,191,255,248,0,255,255,255,255,208,0,255,255,255,253,0,0,255,255,254,64,0,0, + // 0x0045 E + 16,29,116,22,4,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x0046 F + 16,29,116,21,4,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,170,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0, + // 0x0047 G + 24,30,180,29,2,255,0,0,6,255,250,64,0,1,191,255,255,249,0,11,255,255,255,253,0,63,255,255,255,252,0,255,249,0,1,184,3,255,192,0,0,0,11,255,0,0,0,0,15,252,0,0,0,0,47,244,0,0,0,0,63,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,5,85,85,191,192,0,31,255,255,191,192,0,31,255,255,127,192,0,31,255,255,127,192,0,5,86,255,127,208,0,0,0,255,63,224,0,0,0,255,63,240,0,0,0,255,31,244,0,0,0,255,15,252,0,0,0,255,11,255,0,0,0,255,3,255,208,0,0,255,0,255,254,85,91,255,0,63,255,255,255,255,0,11,255,255,255,255,0,0,191,255,255,228,0,0,0,85,64,0, + // 0x0048 H + 22,29,174,30,4,0,170,0,0,0,10,160,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,234,170,170,191,240,255,255,255,255,255,240,255,255,255,255,255,240,255,255,255,255,255,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240, + // 0x0049 I + 12,29,87,14,1,0,106,170,169,127,255,254,127,255,254,11,255,228,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,1,255,128,127,255,253,127,255,254,127,255,254, + // 0x004a J + 11,37,111,12,253,248,0,2,168,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,11,252,0,15,248,0,63,240,255,255,224,255,255,192,255,254,0,111,160,0, + // 0x004b K + 21,29,174,25,4,0,170,0,0,0,170,64,255,0,0,3,255,0,255,0,0,15,252,0,255,0,0,47,244,0,255,0,0,127,208,0,255,0,1,255,128,0,255,0,3,254,0,0,255,0,15,252,0,0,255,0,63,240,0,0,255,0,255,192,0,0,255,2,255,0,0,0,255,11,253,0,0,0,255,31,244,0,0,0,255,127,244,0,0,0,255,255,252,0,0,0,255,255,255,0,0,0,255,242,255,128,0,0,255,192,255,208,0,0,255,0,63,240,0,0,255,0,31,248,0,0,255,0,15,253,0,0,255,0,3,255,0,0,255,0,1,255,128,0,255,0,0,191,208,0,255,0,0,63,240,0,255,0,0,15,252,0,255,0,0,11,254,0,255,0,0,3,255,0,255,0,0,0,255,192, + // 0x004c L + 17,29,145,21,4,0,170,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,234,170,170,0,255,255,255,255,64,255,255,255,255,64,255,255,255,255,64, + // 0x004d M + 29,29,232,37,4,0,170,160,0,0,0,2,170,128,255,244,0,0,0,11,255,192,255,248,0,0,0,15,255,192,255,252,0,0,0,31,255,192,255,253,0,0,0,47,255,192,254,255,0,0,0,63,191,192,254,255,0,0,0,127,127,192,254,127,64,0,0,255,63,192,254,63,192,0,0,253,63,192,254,47,192,0,2,252,63,192,254,31,224,0,3,248,63,192,254,15,240,0,7,244,127,192,254,11,244,0,11,240,127,192,254,7,248,0,15,224,127,192,254,3,252,0,31,208,127,192,254,2,253,0,63,192,127,192,254,0,254,0,63,128,127,192,254,0,255,0,191,0,127,192,254,0,191,64,255,0,127,192,254,0,63,193,253,0,127,192,254,0,63,194,252,0,127,192,254,0,31,211,248,0,127,192,254,0,15,247,244,0,127,192,254,0,11,255,240,0,127,192,254,0,7,255,224,0,127,192,254,0,3,255,192,0,127,192,254,0,2,255,192,0,127,192,254,0,1,255,128,0,127,192,254,0,0,255,0,0,127,192, + // 0x004e N + 23,29,174,31,4,0,170,128,0,0,1,168,255,224,0,0,3,252,255,244,0,0,3,252,255,252,0,0,3,252,255,254,0,0,3,252,255,255,0,0,3,252,254,255,192,0,3,252,253,127,208,0,3,252,254,63,240,0,3,252,254,15,248,0,3,252,254,11,253,0,3,252,254,3,255,0,3,252,254,1,255,128,3,252,254,0,191,192,3,252,254,0,63,240,3,252,254,0,31,244,3,252,254,0,15,252,2,252,254,0,3,254,2,252,254,0,2,255,66,252,254,0,0,255,194,252,254,0,0,127,226,252,254,0,0,47,242,252,254,0,0,15,254,252,254,0,0,7,255,252,254,0,0,3,255,252,254,0,0,0,255,252,254,0,0,0,191,252,254,0,0,0,63,252,254,0,0,0,31,252, + // 0x004f O + 27,30,210,31,2,255,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x0050 P + 19,29,145,24,4,0,170,170,148,0,0,255,255,255,224,0,255,255,255,254,0,255,255,255,255,128,255,0,7,255,208,255,0,0,127,240,255,0,0,47,240,255,0,0,15,244,255,0,0,15,244,255,0,0,15,244,255,0,0,15,244,255,0,0,31,240,255,0,0,63,240,255,0,1,255,208,255,150,175,255,192,255,255,255,255,0,255,255,255,248,0,255,255,254,64,0,255,64,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0, + // 0x0051 Q + 27,36,252,31,2,249,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,248,0,0,11,255,255,255,208,0,0,0,191,255,253,0,0,0,0,1,87,255,0,0,0,0,0,1,255,192,0,0,0,0,0,191,240,0,0,0,0,0,63,252,0,0,0,0,0,15,254,0,0,0,0,0,3,255,128,0,0,0,0,1,255,208, + // 0x0052 R + 21,29,174,25,4,0,170,170,148,0,0,0,255,255,255,228,0,0,255,255,255,254,0,0,255,255,255,255,192,0,255,0,22,255,224,0,255,0,0,127,240,0,255,0,0,31,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,47,240,0,255,0,0,127,224,0,255,64,23,255,192,0,255,255,255,255,0,0,255,255,255,248,0,0,255,255,255,192,0,0,255,149,127,224,0,0,255,0,31,244,0,0,255,0,11,252,0,0,255,0,3,254,0,0,255,0,2,255,0,0,255,0,0,255,192,0,255,0,0,127,208,0,255,0,0,47,240,0,255,0,0,15,248,0,255,0,0,11,253,0,255,0,0,3,255,0,255,0,0,1,255,128, + // 0x0053 S + 18,30,150,22,2,255,0,27,255,164,0,1,255,255,255,128,11,255,255,255,208,31,255,255,255,192,63,244,0,27,128,127,208,0,0,0,191,192,0,0,0,191,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,240,0,0,0,47,253,0,0,0,15,255,224,0,0,3,255,254,0,0,0,191,255,224,0,0,11,255,253,0,0,0,127,255,64,0,0,7,255,192,0,0,0,191,224,0,0,0,47,240,0,0,0,31,240,0,0,0,15,240,0,0,0,15,240,0,0,0,47,240,224,0,0,127,224,255,165,91,255,192,255,255,255,255,0,255,255,255,252,0,47,255,255,144,0,0,21,80,0,0, + // 0x0054 T + 22,29,174,23,0,0,106,170,170,170,170,160,127,255,255,255,255,240,127,255,255,255,255,240,127,255,255,255,255,240,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0, + // 0x0055 U + 23,30,180,30,3,255,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,248,0,0,11,255,255,144,0,0,0,21,80,0,0, + // 0x0056 V + 25,29,203,25,0,0,170,64,0,0,0,170,64,191,192,0,0,0,255,0,127,192,0,0,2,255,0,63,208,0,0,3,254,0,47,240,0,0,7,252,0,15,240,0,0,11,252,0,15,248,0,0,15,244,0,11,252,0,0,31,240,0,3,252,0,0,47,224,0,3,254,0,0,63,208,0,1,255,0,0,127,192,0,0,255,0,0,191,128,0,0,255,128,0,255,64,0,0,127,192,1,255,0,0,0,63,192,2,254,0,0,0,47,224,3,253,0,0,0,31,240,7,252,0,0,0,15,244,11,248,0,0,0,11,248,15,240,0,0,0,7,252,31,240,0,0,0,3,253,47,224,0,0,0,2,254,63,192,0,0,0,0,255,127,192,0,0,0,0,255,191,64,0,0,0,0,191,255,0,0,0,0,0,63,254,0,0,0,0,0,63,253,0,0,0,0,0,31,252,0,0,0,0,0,15,248,0,0,0, + // 0x0057 W + 37,29,34,38,0,0,106,64,0,0,106,128,0,0,42,128,127,192,0,0,191,192,0,0,127,192,63,208,0,0,255,208,0,0,191,128,63,224,0,1,255,240,0,0,255,64,47,240,0,2,255,240,0,0,255,0,31,240,0,3,255,244,0,1,255,0,15,244,0,3,251,248,0,2,254,0,15,248,0,7,247,252,0,3,253,0,11,252,0,11,242,252,0,3,252,0,7,252,0,15,241,254,0,7,252,0,3,253,0,31,224,255,0,11,248,0,3,254,0,47,208,255,0,15,244,0,2,255,0,63,192,191,64,15,240,0,1,255,0,63,192,127,128,31,240,0,0,255,64,127,128,63,192,47,224,0,0,191,128,191,0,47,192,63,208,0,0,127,192,255,0,31,224,63,192,0,0,63,193,254,0,15,240,127,192,0,0,63,194,253,0,15,240,191,128,0,0,47,211,252,0,11,244,255,64,0,0,31,227,252,0,7,248,255,0,0,0,15,243,248,0,3,252,254,0,0,0,15,247,240,0,2,253,253,0,0,0,11,255,240,0,1,254,252,0,0,0,7,255,224,0,0,255,252,0,0,0,3,255,208,0,0,255,248,0,0,0,3,255,192,0,0,191,244,0,0,0,2,255,192,0,0,127,240,0,0,0,1,255,128,0,0,63,240,0,0, + // 0x0058 X + 24,29,174,24,0,0,42,144,0,0,2,168,47,240,0,0,11,252,15,252,0,0,31,244,7,253,0,0,63,224,2,255,0,0,191,192,0,255,128,0,255,64,0,127,192,3,254,0,0,47,240,7,252,0,0,15,244,15,244,0,0,7,252,47,224,0,0,3,254,63,192,0,0,0,255,255,64,0,0,0,127,255,0,0,0,0,63,252,0,0,0,0,47,252,0,0,0,0,127,254,0,0,0,0,255,255,0,0,0,2,255,191,192,0,0,3,252,63,208,0,0,15,248,31,240,0,0,31,240,15,252,0,0,63,208,3,253,0,0,191,128,2,255,0,1,255,0,0,255,128,3,253,0,0,127,208,11,252,0,0,63,240,31,244,0,0,15,248,63,224,0,0,11,253,191,192,0,0,3,255, + // 0x0059 Y + 23,29,174,23,0,0,106,64,0,0,6,168,127,192,0,0,15,248,63,240,0,0,31,240,31,244,0,0,63,224,15,252,0,0,127,192,7,253,0,0,255,128,2,255,0,1,255,0,0,255,64,3,253,0,0,191,192,11,252,0,0,63,208,15,244,0,0,47,240,47,240,0,0,15,244,63,208,0,0,7,252,191,128,0,0,3,254,255,0,0,0,1,255,254,0,0,0,0,255,252,0,0,0,0,127,248,0,0,0,0,63,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0, + // 0x005a Z + 21,29,174,23,1,0,42,170,170,170,170,0,63,255,255,255,255,0,63,255,255,255,255,0,63,255,255,255,255,0,0,0,0,7,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,224,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,208,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,253,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,208,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,253,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,250,170,170,170,64,191,255,255,255,255,128,191,255,255,255,255,128,191,255,255,255,255,128, + // 0x005b [ + 9,36,108,13,3,249,170,170,128,255,255,192,255,255,192,255,170,128,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,255,192,255,255,192,255,255,192,85,85,64, + // 0x005c "\" + 15,29,116,15,0,0,106,64,0,0,63,192,0,0,63,192,0,0,47,224,0,0,15,240,0,0,15,244,0,0,7,248,0,0,3,252,0,0,2,253,0,0,1,254,0,0,0,255,0,0,0,191,64,0,0,63,192,0,0,63,192,0,0,31,224,0,0,15,240,0,0,11,244,0,0,7,248,0,0,3,252,0,0,2,253,0,0,0,255,0,0,0,255,0,0,0,127,128,0,0,63,192,0,0,47,208,0,0,31,224,0,0,15,240,0,0,11,244,0,0,3,252, + // 0x005d ] + 9,36,108,13,1,249,170,170,128,255,255,192,255,255,192,170,191,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,255,255,192,255,255,192,255,255,192,85,85,64, + // 0x005e ^ + 20,19,95,23,1,10,0,0,124,0,0,0,0,190,0,0,0,0,255,0,0,0,2,255,192,0,0,3,255,208,0,0,11,235,240,0,0,15,195,244,0,0,47,194,252,0,0,63,64,253,0,0,127,0,191,0,0,253,0,63,64,1,252,0,47,192,3,248,0,15,208,7,240,0,11,240,15,224,0,3,244,31,192,0,2,252,47,192,0,0,253,63,64,0,0,191,85,0,0,0,21, + // 0x005f _ + 18,4,20,17,0,249,85,85,85,85,64,255,255,255,255,208,255,255,255,255,208,0,0,0,0,0, + // 0x0060 ` + 9,7,21,12,2,24,170,64,0,255,192,0,63,240,0,15,248,0,3,252,0,0,191,0,0,47,64, + // 0x0061 a + 18,23,115,23,2,255,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x0062 b + 20,32,160,25,3,255,85,0,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,191,224,0,191,75,255,254,0,191,127,255,255,192,191,255,170,255,224,191,248,0,63,244,191,224,0,15,252,191,192,0,7,252,191,192,0,3,253,191,128,0,3,254,191,128,0,2,254,191,128,0,2,254,191,128,0,2,254,191,128,0,2,254,191,128,0,3,254,191,192,0,3,253,191,192,0,7,252,191,224,0,15,252,191,240,0,31,248,191,254,65,191,240,191,191,255,255,208,191,31,255,255,64,190,2,255,248,0,0,0,21,64,0, + // 0x0063 c + 16,23,92,20,2,255,0,6,255,228,0,127,255,255,2,255,255,255,11,255,234,253,31,253,0,8,63,240,0,0,127,208,0,0,191,192,0,0,191,128,0,0,255,128,0,0,255,64,0,0,255,64,0,0,255,64,0,0,255,128,0,0,191,192,0,0,127,192,0,0,63,224,0,0,47,244,0,1,15,254,64,111,7,255,255,255,1,255,255,255,0,47,255,248,0,0,85,0, + // 0x0064 d + 20,32,160,25,2,255,0,0,0,1,84,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,27,254,2,253,0,255,255,226,253,3,255,255,250,253,15,255,170,255,253,47,248,0,47,253,63,240,0,15,253,127,208,0,7,253,191,192,0,3,253,191,128,0,3,253,255,128,0,2,253,255,64,0,2,253,255,64,0,2,253,255,64,0,2,253,255,128,0,2,253,191,192,0,3,253,127,192,0,3,253,63,224,0,7,253,63,244,0,15,253,31,254,1,191,253,11,255,255,254,253,2,255,255,240,253,0,127,255,128,253,0,1,80,0,0, + // 0x0065 e + 19,23,115,23,2,255,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x0066 f + 16,31,124,14,0,0,0,0,26,84,0,2,255,255,0,15,255,254,0,63,255,252,0,63,224,4,0,127,192,0,0,191,128,0,0,191,128,0,0,191,128,0,1,255,234,144,47,255,255,240,127,255,255,240,42,255,234,160,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0, + // 0x0067 g + 20,32,160,25,2,246,0,27,254,0,169,0,255,255,224,253,3,255,255,249,253,15,255,171,255,253,31,248,0,63,253,63,240,0,15,253,127,208,0,7,253,191,192,0,3,253,191,128,0,3,253,255,128,0,2,253,255,64,0,2,253,255,64,0,2,253,255,64,0,2,253,255,128,0,2,253,191,192,0,3,253,127,192,0,3,253,63,208,0,7,253,63,240,0,15,253,15,253,0,191,253,11,255,255,254,253,2,255,255,242,253,0,127,255,130,253,0,1,80,2,253,0,0,0,3,253,0,0,0,3,253,0,0,0,7,252,0,0,0,15,252,30,64,0,127,244,31,255,255,255,224,31,255,255,255,128,11,255,255,253,0,0,22,169,64,0, + // 0x0068 h + 19,31,155,25,3,0,85,0,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,111,228,0,191,75,255,255,64,191,111,255,255,208,191,255,170,255,240,191,248,0,47,244,191,240,0,15,248,191,208,0,7,252,191,192,0,7,252,191,192,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252, + // 0x0069 i + 5,30,60,11,3,0,42,0,191,128,255,192,255,128,127,0,0,0,0,0,0,0,106,64,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128, + // 0x006a j + 11,40,120,11,253,246,0,2,160,0,11,248,0,15,252,0,15,248,0,7,240,0,0,0,0,0,0,0,0,0,0,6,164,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,15,244,0,47,240,127,255,240,127,255,192,127,255,64,22,148,0, + // 0x006b k + 19,31,155,22,3,0,85,0,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,26,160,191,128,0,127,224,191,128,1,255,128,191,128,3,254,0,191,128,15,248,0,191,128,63,240,0,191,128,255,192,0,191,67,255,0,0,191,79,252,0,0,191,111,240,0,0,191,191,244,0,0,191,255,252,0,0,191,255,255,0,0,191,224,255,128,0,191,128,127,208,0,191,128,47,244,0,191,128,15,252,0,191,128,3,254,0,191,128,1,255,64,191,128,0,191,208,191,128,0,63,240,191,128,0,31,248, + // 0x006c l + 5,31,62,11,3,0,85,0,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128, + // 0x006d m + 32,22,176,38,3,0,105,0,191,228,0,27,254,0,191,11,255,254,1,255,255,208,191,63,255,255,135,255,255,244,191,255,171,255,239,250,191,252,191,248,0,127,255,64,11,253,191,224,0,47,253,0,3,254,191,208,0,31,252,0,2,254,191,192,0,15,244,0,2,255,191,192,0,15,244,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255, + // 0x006e n + 19,22,110,25,3,0,105,0,191,228,0,191,11,255,255,64,191,63,255,255,208,191,255,170,255,240,191,248,0,47,248,191,240,0,15,252,191,208,0,7,252,191,192,0,7,252,191,192,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252, + // 0x006f o + 21,23,138,24,2,255,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x0070 p + 20,32,160,25,3,246,105,0,191,228,0,191,11,255,254,0,191,47,255,255,192,191,255,170,255,240,191,248,0,63,244,191,224,0,15,252,191,192,0,7,252,191,192,0,3,253,191,128,0,3,254,191,128,0,2,254,191,128,0,2,254,191,128,0,2,254,191,128,0,2,254,191,128,0,3,254,191,192,0,3,253,191,192,0,7,252,191,224,0,15,252,191,244,0,47,248,191,254,65,191,240,191,191,255,255,208,191,95,255,255,64,191,130,255,248,0,191,128,21,64,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,106,64,0,0,0, + // 0x0071 q + 20,32,160,25,2,246,0,27,254,0,169,0,255,255,224,253,3,255,255,249,253,15,255,170,255,253,47,248,0,47,253,63,240,0,15,253,127,208,0,7,253,191,192,0,3,253,191,128,0,3,253,255,128,0,2,253,255,64,0,2,253,255,64,0,2,253,255,64,0,2,253,255,128,0,2,253,191,192,0,3,253,127,192,0,3,253,63,208,0,11,253,63,240,0,15,253,31,254,0,191,253,11,255,255,254,253,2,255,255,242,253,0,127,255,130,253,0,1,80,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,1,169, + // 0x0072 r + 13,22,88,17,3,0,105,0,127,192,191,3,255,192,191,15,255,192,191,63,255,192,191,255,64,0,191,248,0,0,191,240,0,0,191,192,0,0,191,192,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0, + // 0x0073 s + 16,23,92,19,2,255,0,111,254,64,11,255,255,248,63,255,255,252,191,249,91,244,255,128,0,96,255,0,0,0,255,64,0,0,255,208,0,0,127,253,0,0,47,255,208,0,7,255,254,0,0,191,255,208,0,7,255,244,0,0,127,252,0,0,7,253,0,0,2,254,0,0,2,254,64,0,3,253,249,0,11,252,255,255,255,248,255,255,255,224,111,255,254,0,0,85,64,0, + // 0x0074 t + 15,28,112,15,0,255,0,21,0,0,0,63,0,0,0,127,0,0,0,191,0,0,0,255,0,0,2,255,170,160,47,255,255,240,127,255,255,240,43,255,170,160,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,0,255,0,0,0,255,64,0,0,255,208,16,0,191,255,244,0,63,255,244,0,11,255,240,0,0,21,0, + // 0x0075 u + 19,23,115,25,3,255,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,2,252,0,5,80,0,0, + // 0x0076 v + 21,22,132,21,0,0,170,64,0,0,106,128,191,192,0,0,255,128,63,192,0,0,255,64,63,224,0,2,255,0,31,240,0,3,254,0,15,244,0,3,252,0,11,248,0,11,248,0,7,252,0,15,244,0,3,253,0,31,240,0,2,254,0,47,224,0,0,255,0,63,192,0,0,255,64,127,192,0,0,127,192,191,64,0,0,63,192,255,0,0,0,47,209,254,0,0,0,31,226,253,0,0,0,15,243,252,0,0,0,11,251,248,0,0,0,3,255,240,0,0,0,3,255,240,0,0,0,1,255,208,0,0,0,0,255,192,0,0, + // 0x0077 w + 32,22,176,32,0,0,106,64,0,10,164,0,1,169,127,192,0,31,252,0,2,254,63,208,0,63,252,0,3,253,47,224,0,63,253,0,7,252,31,240,0,127,254,0,11,248,15,240,0,191,191,0,15,244,15,244,0,254,127,0,15,240,11,248,1,253,63,128,31,240,7,252,2,252,63,192,47,224,3,252,3,252,47,192,63,208,3,253,3,248,31,208,63,192,1,254,7,240,15,224,127,128,0,255,11,240,15,240,191,64,0,255,15,224,7,240,255,0,0,191,79,208,3,244,255,0,0,127,95,192,3,249,254,0,0,63,175,128,2,253,253,0,0,63,255,64,1,254,252,0,0,47,255,0,0,255,252,0,0,31,255,0,0,255,244,0,0,15,254,0,0,127,240,0,0,11,253,0,0,63,240,0, + // 0x0078 x + 20,22,110,22,1,0,106,128,0,2,169,127,208,0,11,252,47,240,0,31,244,15,252,0,63,224,7,253,0,191,192,2,255,1,255,64,0,255,131,254,0,0,63,219,252,0,0,31,255,240,0,0,15,255,224,0,0,3,255,192,0,0,3,255,192,0,0,15,255,224,0,0,47,255,240,0,0,63,219,252,0,0,255,131,254,0,2,255,1,255,64,7,253,0,191,192,15,248,0,63,224,47,240,0,31,244,127,208,0,11,252,255,128,0,3,255, + // 0x0079 y + 21,32,192,21,0,246,106,64,0,0,106,128,191,192,0,0,255,128,63,208,0,0,255,64,47,224,0,2,255,0,31,240,0,3,254,0,15,244,0,3,252,0,11,252,0,11,252,0,3,252,0,15,244,0,2,254,0,31,240,0,1,255,0,47,224,0,0,255,64,63,208,0,0,191,128,127,192,0,0,63,192,191,128,0,0,47,208,255,0,0,0,31,225,255,0,0,0,15,242,253,0,0,0,11,243,252,0,0,0,3,251,248,0,0,0,2,255,244,0,0,0,1,255,240,0,0,0,0,255,224,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,255,64,0,0,0,1,255,0,0,0,0,3,254,0,0,0,0,7,252,0,0,0,0,47,248,0,0,0,127,255,240,0,0,0,127,255,192,0,0,0,127,254,0,0,0,0,26,144,0,0,0,0, + // 0x007a z + 17,22,110,19,1,0,42,170,170,170,0,63,255,255,255,0,63,255,255,255,0,42,170,171,255,0,0,0,3,253,0,0,0,11,252,0,0,0,31,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,192,0,0,0,255,64,0,0,3,254,0,0,0,11,252,0,0,0,31,240,0,0,0,63,229,85,85,0,191,255,255,255,128,191,255,255,255,128,191,255,255,255,128, + // 0x007b { + 13,36,144,15,1,249,0,0,5,128,0,1,255,192,0,11,255,192,0,31,255,192,0,63,244,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,191,128,0,2,255,0,0,255,253,0,0,255,208,0,0,255,244,0,0,175,254,0,0,1,255,64,0,0,191,128,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,208,0,0,63,248,0,0,31,255,192,0,7,255,192,0,0,191,192,0,0,0,64, + // 0x007c | + 4,41,41,22,9,246,20,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,85, + // 0x007d } + 14,36,144,15,1,249,84,0,0,0,191,224,0,0,191,252,0,0,191,255,0,0,2,255,0,0,0,255,64,0,0,191,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,128,0,0,127,192,0,0,63,244,0,0,15,255,208,0,1,191,208,0,2,255,208,0,31,255,128,0,63,224,0,0,127,192,0,0,127,128,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,191,64,0,0,255,64,0,7,255,0,0,191,254,0,0,191,248,0,0,191,144,0,0,16,0,0,0, + // 0x007e ~ + 19,6,30,23,2,11,11,250,64,0,4,127,255,244,0,60,255,255,255,235,252,254,107,255,255,252,208,0,111,255,224,0,0,1,170,0, + // 0x007f - 0x009a Control Characters + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x00a0 "�" + 0,0,0,10,0,0, + // 0x00a1 ¡ + 5,30,60,11,3,248,46,0,255,192,255,192,255,192,255,192,46,0,0,0,0,0,0,0,63,0,63,0,63,0,63,0,127,0,127,0,127,64,127,64,127,64,191,64,191,64,191,128,191,128,191,128,255,128,255,128,255,192,255,192,255,192,255,192,0,0, + // 0x00a2 ¢ + 17,30,150,23,3,255,0,0,188,0,0,0,0,188,0,0,0,0,188,0,0,0,1,255,164,0,0,63,255,255,64,1,255,255,255,64,7,255,255,255,0,15,254,0,25,0,47,244,0,0,0,63,224,0,0,0,63,208,0,0,0,127,192,0,0,0,191,192,0,0,0,191,192,0,0,0,191,128,0,0,0,191,192,0,0,0,127,192,0,0,0,127,192,0,0,0,63,208,0,0,0,63,224,0,0,0,47,248,0,0,0,15,255,64,27,0,7,255,255,255,0,1,255,255,255,0,0,47,255,254,0,0,1,254,80,0,0,0,188,0,0,0,0,188,0,0,0,0,188,0,0,0,0,84,0,0, + // 0x00a3 £ + 21,29,174,23,1,0,0,0,43,254,64,0,0,2,255,255,253,0,0,15,255,255,253,0,0,47,254,175,252,0,0,63,224,0,100,0,0,191,192,0,0,0,0,191,128,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,127,255,255,255,64,0,191,255,255,255,64,0,191,255,255,255,64,0,0,255,128,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,0,0,0,0,2,254,0,0,0,0,11,248,0,0,0,0,127,255,255,255,255,64,191,255,255,255,255,128,191,255,255,255,255,128,191,255,255,255,255,128, + // 0x00a4 ¤ + 18,18,90,23,2,5,13,0,0,1,192,63,70,254,7,240,63,255,255,255,240,15,255,255,255,192,7,254,2,255,0,11,240,0,127,64,15,208,0,31,192,15,192,0,15,192,31,192,0,15,192,31,192,0,15,192,15,192,0,15,192,15,224,0,47,192,7,244,0,191,64,7,255,155,255,64,31,255,255,255,192,127,239,255,239,240,63,1,169,3,224,8,0,0,0,128, + // 0x00a5 ¥ + 21,29,174,23,1,0,170,0,0,0,42,128,255,64,0,0,191,192,127,192,0,0,255,64,63,208,0,2,254,0,31,240,0,3,252,0,15,244,0,11,248,0,7,252,0,15,240,0,3,253,0,47,224,0,1,255,0,63,192,0,0,255,64,191,128,0,0,127,192,255,0,0,0,63,209,254,0,0,0,31,243,252,0,0,0,11,251,244,0,0,0,3,255,240,0,0,2,171,255,250,160,0,7,255,255,255,240,0,7,255,255,255,240,0,0,0,191,128,0,0,0,0,191,64,0,0,0,0,191,64,0,0,3,255,255,255,240,0,7,255,255,255,240,0,7,255,255,255,240,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0,0,0,191,64,0,0, + // 0x00a6 ¦ + 4,41,41,22,9,246,20,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,0,0,0,0,0,0,0,0,0,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,85, + // 0x00a7 § + 16,32,128,20,2,255,0,22,165,0,2,255,255,244,15,255,255,252,63,249,91,252,63,192,0,36,127,64,0,0,63,128,0,0,63,224,0,0,31,253,0,0,7,255,228,0,3,255,255,0,15,251,255,224,47,192,127,248,63,64,7,253,127,0,1,254,127,0,0,254,127,128,0,190,63,224,0,254,31,253,2,252,7,255,235,244,0,191,255,224,0,11,255,224,0,0,127,248,0,0,7,253,0,0,1,254,0,0,0,254,0,0,1,254,185,0,7,253,191,254,255,248,191,255,255,224,27,255,254,0,0,0,0,0, + // 0x00a8 ¨ + 12,5,15,24,6,25,20,0,16,254,0,253,255,2,254,255,1,254,124,0,184, + // 0x00a9 © + 30,30,240,33,2,255,0,0,6,255,228,0,0,0,0,0,191,255,255,208,0,0,0,11,254,85,111,248,0,0,0,63,208,0,1,255,0,0,0,253,0,0,0,31,208,0,3,240,0,1,0,3,240,0,11,192,1,255,253,0,252,0,15,64,11,255,255,0,125,0,47,0,47,249,190,0,47,0,61,0,127,64,0,0,15,64,124,0,254,0,0,0,15,128,184,0,252,0,0,0,11,192,248,1,248,0,0,0,7,192,244,2,248,0,0,0,3,208,244,2,248,0,0,0,3,208,244,2,248,0,0,0,3,208,244,2,248,0,0,0,7,192,248,1,252,0,0,0,7,192,188,0,252,0,0,0,11,192,124,0,254,0,0,0,15,128,62,0,127,128,5,0,31,64,47,0,31,255,254,0,63,0,15,192,7,255,254,0,188,0,7,224,0,106,144,2,248,0,2,252,0,0,0,11,240,0,0,191,64,0,0,127,192,0,0,31,248,0,11,254,0,0,0,2,255,255,255,244,0,0,0,0,47,255,254,64,0,0,0,0,0,85,64,0,0,0, + // 0x00aa ª + 12,14,42,15,1,15,1,191,128,47,255,244,47,171,252,4,0,190,0,0,126,0,22,190,11,255,254,63,233,190,190,0,126,252,0,126,253,0,254,191,155,254,63,255,110,6,248,25, + // 0x00ab « + 19,17,85,22,1,2,0,3,128,2,208,0,15,240,7,248,0,47,224,31,240,0,191,192,63,208,1,255,0,255,128,7,253,2,255,0,15,244,11,252,0,63,224,31,240,0,127,192,63,224,0,47,240,15,244,0,15,248,7,253,0,3,254,1,255,0,0,255,64,191,192,0,127,192,63,224,0,31,240,15,248,0,11,224,3,244,0,2,64,1,128, + // 0x00ac ¬ + 19,11,55,23,2,5,170,170,170,170,168,255,255,255,255,252,255,255,255,255,252,170,170,170,170,252,0,0,0,1,252,0,0,0,1,252,0,0,0,1,252,0,0,0,1,252,0,0,0,1,252,0,0,0,1,252,0,0,0,1,252, + // 0x00ad ­ + 11,5,15,13,1,8,106,170,160,191,255,244,191,255,244,191,255,244,0,0,0, + // 0x00ae ® + 30,30,240,33,2,255,0,0,6,255,228,0,0,0,0,0,191,255,255,208,0,0,0,11,254,85,111,248,0,0,0,63,208,0,1,255,0,0,0,253,0,0,0,31,208,0,3,240,0,0,0,3,240,0,11,192,63,255,224,0,252,0,15,64,63,255,253,0,125,0,47,0,63,170,255,0,47,0,61,0,63,0,63,64,15,64,124,0,63,0,47,128,15,128,184,0,63,0,47,128,11,192,248,0,63,0,63,64,7,192,244,0,63,0,191,0,3,208,244,0,63,255,253,0,3,208,244,0,63,255,240,0,3,208,244,0,63,171,240,0,7,192,248,0,63,3,248,0,7,192,188,0,63,0,252,0,11,192,124,0,63,0,190,0,15,128,62,0,63,0,63,64,31,64,47,0,63,0,47,192,63,0,15,192,63,0,15,224,188,0,7,224,21,0,1,82,248,0,2,252,0,0,0,11,240,0,0,191,64,0,0,127,192,0,0,31,248,0,11,254,0,0,0,2,255,255,255,244,0,0,0,0,47,255,254,64,0,0,0,0,0,85,64,0,0,0, + // 0x00af ¯ + 20,4,20,20,0,30,85,85,85,85,85,255,255,255,255,255,255,255,255,255,255,170,170,170,170,170, + // 0x00b0 ° + 13,13,52,17,2,16,1,191,144,0,11,255,252,0,63,255,255,0,127,64,127,64,189,0,31,192,252,0,15,192,252,0,15,192,252,0,15,192,190,0,47,128,63,144,191,64,47,255,254,0,7,255,248,0,0,106,64,0, + // 0x00b1 ± + 19,24,120,23,2,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,1,252,0,0,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,0,1,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,0,0,0,85,85,85,85,84,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252, + // 0x00b2 ² + 12,18,54,14,1,16,6,255,128,63,255,244,191,235,252,60,1,253,0,0,254,0,0,253,0,0,252,0,2,252,0,11,240,0,47,208,0,191,64,2,253,0,11,244,0,47,192,0,191,170,169,255,255,254,255,255,254,85,85,84, + // 0x00b3 ³ + 12,18,54,14,1,16,11,255,128,191,255,244,191,171,252,52,0,253,0,0,253,0,0,253,0,2,252,6,175,240,11,255,192,7,255,248,0,1,253,0,0,127,0,0,127,0,0,191,228,1,254,255,255,252,255,255,240,6,169,0, + // 0x00b4 ´ + 10,7,21,12,1,24,0,106,144,0,255,192,2,255,0,7,252,0,15,240,0,63,192,0,126,0,0, + // 0x00b5 µ + 19,32,160,25,3,246,106,64,0,2,168,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,7,252,191,128,0,7,252,191,128,0,11,252,191,128,0,15,252,191,192,0,15,252,191,224,0,63,252,191,249,1,255,252,191,255,255,251,252,191,255,255,226,252,191,95,255,65,252,191,65,80,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,106,64,0,0,0, + // 0x00b6 ¶ + 20,37,185,26,2,250,0,1,85,85,85,0,127,255,255,255,3,255,255,255,255,15,255,255,245,111,47,255,255,240,31,63,255,255,240,31,127,255,255,240,31,191,255,255,240,31,191,255,255,240,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,31,191,255,255,240,31,191,255,255,240,31,127,255,255,240,31,63,255,255,240,31,47,255,255,240,31,15,255,255,240,31,7,255,255,240,31,0,191,255,240,31,0,1,83,240,31,0,0,3,240,31,0,0,3,240,31,0,0,3,240,31,0,0,3,240,31,0,0,3,240,31,0,0,3,240,31,0,0,3,240,31,0,0,3,240,31,0,0,3,240,31,0,0,3,240,31,0,0,3,240,31,0,0,3,240,31,0,0,3,240,31,0,0,3,240,31,0,0,3,240,31,0,0,0,0,0, + // 0x00b7 · + 5,6,12,11,3,11,127,64,255,192,255,192,255,192,191,128,25,0, + // 0x00b8 ¸ + 9,10,30,9,0,246,3,224,0,11,192,0,15,248,0,11,255,0,0,127,64,0,63,64,0,127,0,255,255,0,255,248,0,106,64,0, + // 0x00b9 ¹ + 8,18,36,14,2,16,0,127,2,255,15,255,127,255,254,63,116,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,21, + // 0x00ba º + 13,14,56,15,1,15,0,191,144,0,11,255,248,0,47,234,254,0,63,0,63,64,126,0,31,128,189,0,15,192,188,0,15,192,188,0,15,192,189,0,15,192,126,0,31,128,63,0,63,0,31,234,254,0,7,255,248,0,0,191,144,0, + // 0x00bb » + 18,17,85,22,2,2,44,0,30,0,0,255,0,191,128,0,191,192,63,208,0,63,224,31,240,0,15,248,7,252,0,3,253,2,255,0,1,255,0,255,128,0,191,192,63,224,0,63,208,47,240,0,255,128,127,208,2,255,0,255,64,7,252,3,254,0,31,244,11,248,0,63,208,47,240,0,255,128,127,192,0,190,0,127,0,0,24,0,9,0,0, + // 0x00bc ¼ + 30,29,232,31,1,0,0,26,64,0,0,26,64,0,0,191,192,0,0,127,0,0,7,255,192,0,0,254,0,0,47,255,192,0,1,252,0,0,191,111,192,0,3,244,0,0,61,47,192,0,11,240,0,0,0,47,192,0,15,192,0,0,0,47,192,0,63,128,0,0,0,47,192,0,127,0,0,0,0,47,192,0,253,0,0,0,0,47,192,2,252,0,0,0,0,47,192,3,244,0,0,0,0,47,192,15,224,3,252,0,0,47,192,31,192,11,252,0,0,47,192,63,64,31,252,0,0,47,192,191,0,63,252,0,0,47,192,253,0,189,252,0,0,26,67,248,1,245,252,0,0,0,7,240,3,225,252,0,0,0,15,224,11,193,252,0,0,0,47,192,31,65,252,0,0,0,63,64,62,1,252,0,0,0,190,0,253,2,252,0,0,1,252,0,255,255,255,208,0,3,248,0,255,255,255,208,0,11,240,0,85,86,253,64,0,15,208,0,0,1,252,0,0,47,192,0,0,1,252,0,0,127,0,0,0,1,252,0, + // 0x00bd ½ + 30,29,232,32,1,0,0,42,0,0,0,105,0,0,1,255,64,0,0,253,0,0,11,255,64,0,2,252,0,0,63,255,64,0,7,240,0,0,255,63,64,0,15,224,0,0,124,63,64,0,31,192,0,0,16,63,64,0,63,64,0,0,0,63,64,0,191,0,0,0,0,63,64,1,252,0,0,0,0,63,64,3,248,0,0,0,0,63,64,7,240,0,0,0,0,63,64,15,208,5,80,0,0,63,64,47,193,255,253,0,0,63,64,63,11,255,255,64,0,63,64,254,11,229,127,192,0,63,65,252,2,64,31,192,0,63,67,244,0,0,15,208,0,42,11,240,0,0,31,192,0,0,15,208,0,0,47,192,0,0,63,128,0,0,127,64,0,0,127,0,0,0,254,0,0,0,253,0,0,3,248,0,0,2,252,0,0,15,224,0,0,3,244,0,0,127,128,0,0,15,224,0,1,254,0,0,0,31,192,0,7,248,0,0,0,63,128,0,15,255,255,208,0,191,0,0,31,255,255,208,0,253,0,0,31,255,255,208, + // 0x00be ¾ + 31,29,232,32,1,0,6,255,128,0,0,2,160,0,63,255,244,0,0,11,240,0,191,239,252,0,0,15,208,0,56,0,253,0,0,63,128,0,0,0,190,0,0,127,0,0,0,0,253,0,0,254,0,0,0,1,252,0,2,252,0,0,1,107,244,0,3,244,0,0,7,255,192,0,15,224,0,0,7,255,244,0,31,192,0,0,0,1,253,0,63,128,0,0,0,0,127,0,191,0,0,0,0,0,63,0,253,0,191,0,0,0,127,3,252,1,255,0,208,0,255,7,240,3,255,0,255,239,253,15,224,15,255,0,255,255,244,47,192,31,127,0,27,254,64,63,64,62,127,0,0,0,0,191,0,252,127,0,0,0,1,252,2,244,127,0,0,0,3,248,3,224,127,0,0,0,11,240,15,192,127,0,0,0,15,208,47,64,127,64,0,0,47,192,63,255,255,248,0,0,127,0,63,255,255,248,0,0,254,0,21,85,191,148,0,1,252,0,0,0,127,0,0,3,244,0,0,0,127,0,0,11,240,0,0,0,127,0, + // 0x00bf ¿ + 17,30,150,18,1,248,0,0,184,0,0,0,3,255,0,0,0,7,255,0,0,0,7,255,0,0,0,3,255,0,0,0,1,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,0,0,0,0,253,0,0,0,1,252,0,0,0,3,252,0,0,0,11,248,0,0,0,47,240,0,0,0,191,208,0,0,3,255,64,0,0,15,253,0,0,0,47,240,0,0,0,127,192,0,0,0,191,64,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,128,0,4,0,127,224,1,189,0,63,255,255,255,0,15,255,255,255,64,2,255,255,244,0,0,26,169,0,0, + // 0x00c0 À + 26,38,10,26,0,0,0,1,170,0,0,0,0,0,0,255,192,0,0,0,0,0,127,208,0,0,0,0,0,31,240,0,0,0,0,0,7,252,0,0,0,0,0,0,254,0,0,0,0,0,0,47,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x00c1 Á + 26,38,10,26,0,0,0,0,0,6,169,0,0,0,0,0,15,252,0,0,0,0,0,47,240,0,0,0,0,0,63,192,0,0,0,0,0,255,0,0,0,0,0,2,252,0,0,0,0,0,3,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x00c2  + 26,38,10,26,0,0,0,0,6,169,0,0,0,0,0,15,255,0,0,0,0,0,63,255,192,0,0,0,0,191,175,224,0,0,0,2,254,11,248,0,0,0,7,244,1,254,0,0,0,15,128,0,47,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x00c3 à + 26,37,3,26,0,0,0,0,105,0,10,64,0,0,2,255,208,15,64,0,0,11,255,254,127,0,0,0,15,235,255,254,0,0,0,31,64,127,252,0,0,0,30,0,6,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x00c4 Ä + 26,37,3,26,0,0,0,0,80,0,80,0,0,0,2,252,3,248,0,0,0,3,253,3,252,0,0,0,2,252,3,252,0,0,0,0,180,1,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x00c5 Å + 26,35,245,26,0,0,0,0,6,249,0,0,0,0,0,31,255,64,0,0,0,0,63,95,192,0,0,0,0,124,3,208,0,0,0,0,188,3,224,0,0,0,0,124,3,208,0,0,0,0,63,255,192,0,0,0,0,31,255,64,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x00c6 Æ + 34,29,5,36,0,0,0,0,0,26,170,170,170,170,144,0,0,0,63,255,255,255,255,224,0,0,0,191,255,255,255,255,224,0,0,0,255,255,255,255,255,224,0,0,2,254,15,248,0,0,0,0,0,3,252,15,244,0,0,0,0,0,11,248,15,244,0,0,0,0,0,15,244,15,244,0,0,0,0,0,31,240,15,244,0,0,0,0,0,63,208,15,244,0,0,0,0,0,127,192,15,244,0,0,0,0,0,255,64,15,244,0,0,0,0,1,255,0,15,254,170,170,128,0,3,254,0,15,255,255,255,192,0,7,252,0,15,255,255,255,192,0,11,248,0,15,255,255,255,192,0,15,240,0,15,244,0,0,0,0,47,255,255,255,244,0,0,0,0,63,255,255,255,244,0,0,0,0,191,255,255,255,244,0,0,0,0,255,255,255,255,244,0,0,0,2,255,0,0,15,244,0,0,0,3,253,0,0,15,244,0,0,0,7,252,0,0,15,244,0,0,0,15,248,0,0,15,244,0,0,0,31,240,0,0,15,254,170,170,144,63,224,0,0,15,255,255,255,224,127,192,0,0,15,255,255,255,224,255,128,0,0,15,255,255,255,224, + // 0x00c7 Ç + 22,39,234,25,2,246,0,0,27,255,228,0,0,2,255,255,255,208,0,31,255,255,255,224,0,127,255,255,255,208,1,255,244,0,27,192,3,255,128,0,0,0,11,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,63,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,127,208,0,0,0,0,63,224,0,0,0,0,63,240,0,0,0,0,47,244,0,0,0,0,15,252,0,0,0,0,11,255,0,0,0,0,3,255,208,0,0,64,1,255,254,85,175,192,0,127,255,255,255,192,0,15,255,255,255,192,0,1,191,255,254,64,0,0,2,249,0,0,0,0,3,240,0,0,0,0,7,253,0,0,0,0,6,255,64,0,0,0,0,47,192,0,0,0,0,31,192,0,0,0,0,47,192,0,0,0,63,255,64,0,0,0,63,254,0,0,0,0,26,144,0,0, + // 0x00c8 È + 16,38,152,22,4,0,6,169,0,0,3,255,0,0,0,255,128,0,0,63,208,0,0,15,240,0,0,3,248,0,0,0,188,0,0,0,0,0,0,0,0,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x00c9 É + 16,38,152,22,4,0,0,0,10,168,0,0,63,240,0,0,127,208,0,0,255,64,0,3,253,0,0,11,240,0,0,15,128,0,0,0,0,0,0,0,0,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x00ca Ê + 16,38,152,22,4,0,0,10,164,0,0,63,252,0,0,191,255,0,2,254,191,192,7,248,31,224,31,224,7,248,62,0,0,189,0,0,0,0,0,0,0,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x00cb Ë + 16,37,148,22,4,0,1,64,1,64,7,240,15,224,15,244,15,240,11,244,15,240,2,224,7,208,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x00cc Ì + 12,38,114,14,1,0,106,144,0,63,240,0,15,248,0,3,252,0,0,255,0,0,63,128,0,11,192,0,0,0,0,0,0,106,170,169,127,255,254,127,255,254,11,255,228,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,1,255,128,127,255,253,127,255,254,127,255,254, + // 0x00cd Í + 13,38,152,14,1,0,0,1,170,64,0,3,255,0,0,11,252,0,0,15,240,0,0,63,192,0,0,191,0,0,0,248,0,0,0,0,0,0,0,0,0,0,106,170,169,0,127,255,254,0,127,255,254,0,11,255,228,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,1,255,128,0,127,255,253,0,127,255,254,0,127,255,254,0, + // 0x00ce Î + 14,38,152,14,0,0,0,106,144,0,0,255,240,0,3,255,252,0,11,250,255,0,31,224,191,128,127,64,31,224,248,0,2,240,0,0,0,0,0,0,0,0,26,170,170,64,31,255,255,128,31,255,255,128,2,255,249,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,127,224,0,31,255,255,64,31,255,255,128,31,255,255,128, + // 0x00cf Ï + 12,37,111,14,1,0,20,0,20,191,0,254,255,64,255,191,64,255,45,0,124,0,0,0,0,0,0,0,0,0,106,170,169,127,255,254,127,255,254,11,255,228,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,1,255,128,127,255,253,127,255,254,127,255,254, + // 0x00d0 Ð + 26,29,203,29,1,0,2,170,170,148,0,0,0,3,255,255,255,224,0,0,3,255,255,255,255,0,0,3,255,255,255,255,208,0,3,253,0,6,255,244,0,3,253,0,0,47,253,0,3,253,0,0,7,255,0,3,253,0,0,2,255,128,3,253,0,0,0,255,192,3,253,0,0,0,127,208,3,253,0,0,0,63,224,3,253,0,0,0,63,224,3,253,0,0,0,47,240,255,255,255,224,0,47,240,255,255,255,224,0,47,240,255,255,255,224,0,47,240,171,255,170,160,0,47,240,3,253,0,0,0,63,224,3,253,0,0,0,63,224,3,253,0,0,0,127,192,3,253,0,0,0,255,192,3,253,0,0,1,255,128,3,253,0,0,3,255,0,3,253,0,0,31,253,0,3,253,0,1,255,248,0,3,255,170,255,255,224,0,3,255,255,255,255,64,0,3,255,255,255,244,0,0,3,255,255,249,0,0,0, + // 0x00d1 Ñ + 23,37,222,31,4,0,0,1,144,0,40,0,0,31,254,0,188,0,0,63,255,230,248,0,0,191,191,255,240,0,0,252,3,255,208,0,0,244,0,106,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,128,0,0,1,168,255,224,0,0,3,252,255,244,0,0,3,252,255,252,0,0,3,252,255,254,0,0,3,252,255,255,0,0,3,252,254,255,192,0,3,252,253,127,208,0,3,252,254,63,240,0,3,252,254,15,248,0,3,252,254,11,253,0,3,252,254,3,255,0,3,252,254,1,255,128,3,252,254,0,191,192,3,252,254,0,63,240,3,252,254,0,31,244,3,252,254,0,15,252,2,252,254,0,3,254,2,252,254,0,2,255,66,252,254,0,0,255,194,252,254,0,0,127,226,252,254,0,0,47,242,252,254,0,0,15,254,252,254,0,0,7,255,252,254,0,0,3,255,252,254,0,0,0,255,252,254,0,0,0,191,252,254,0,0,0,63,252,254,0,0,0,31,252, + // 0x00d2 Ò + 27,39,17,31,2,255,0,0,170,128,0,0,0,0,0,127,224,0,0,0,0,0,47,240,0,0,0,0,0,11,252,0,0,0,0,0,2,254,0,0,0,0,0,0,127,64,0,0,0,0,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x00d3 Ó + 27,39,17,31,2,255,0,0,0,1,170,0,0,0,0,0,7,254,0,0,0,0,0,15,252,0,0,0,0,0,47,240,0,0,0,0,0,127,192,0,0,0,0,0,254,0,0,0,0,0,1,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x00d4 Ô + 27,39,17,31,2,255,0,0,2,170,0,0,0,0,0,7,255,128,0,0,0,0,15,255,224,0,0,0,0,63,223,244,0,0,0,0,255,67,253,0,0,0,3,252,0,191,0,0,0,7,224,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x00d5 Õ + 27,38,10,31,2,255,0,0,26,0,2,128,0,0,0,255,240,7,192,0,0,3,255,254,111,192,0,0,7,250,255,255,64,0,0,11,192,47,254,0,0,0,11,64,2,164,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x00d6 Ö + 27,38,10,31,2,255,0,0,20,0,16,0,0,0,0,254,0,253,0,0,0,0,255,2,254,0,0,0,0,255,1,254,0,0,0,0,124,0,184,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x00d7 × + 17,18,90,23,3,5,36,0,0,5,0,189,0,0,47,64,255,64,0,191,192,127,208,2,255,0,31,244,11,252,0,7,253,47,240,0,1,255,191,192,0,0,127,255,0,0,0,31,252,0,0,0,47,253,0,0,0,191,255,64,0,2,255,191,208,0,11,252,31,244,0,47,240,7,253,0,191,192,1,255,64,255,0,0,127,192,124,0,0,31,0,16,0,0,4,0, + // 0x00d8 Ø + 27,32,224,31,2,254,0,0,0,0,0,9,0,0,0,27,255,228,31,128,0,7,255,255,255,127,128,0,47,255,255,255,255,0,0,191,255,239,255,253,0,2,255,224,0,31,255,0,7,255,64,0,15,255,128,15,252,0,0,47,255,192,31,248,0,0,127,191,224,47,240,0,0,255,47,240,63,224,0,2,252,31,244,63,208,0,7,244,15,248,127,192,0,15,240,15,252,127,192,0,47,192,11,252,191,192,0,127,64,11,252,191,192,0,254,0,11,252,191,192,3,252,0,11,252,127,192,11,244,0,11,252,127,192,15,224,0,15,252,127,208,63,192,0,15,248,63,224,191,64,0,15,244,63,241,254,0,0,47,240,31,247,252,0,0,63,240,15,255,240,0,0,191,208,11,255,208,0,1,255,192,3,255,208,0,11,255,64,0,255,254,85,191,254,0,1,255,255,255,255,244,0,3,255,255,255,255,208,0,11,240,191,255,249,0,0,2,208,1,85,0,0,0,0,0,0,0,0,0,0, + // 0x00d9 Ù + 23,39,234,30,3,255,0,10,168,0,0,0,0,7,254,0,0,0,0,2,255,0,0,0,0,0,191,192,0,0,0,0,31,224,0,0,0,0,7,244,0,0,0,0,1,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,248,0,0,11,255,255,144,0,0,0,21,80,0,0, + // 0x00da Ú + 23,39,234,30,3,255,0,0,0,26,164,0,0,0,0,63,240,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,3,252,0,0,0,0,15,224,0,0,0,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,248,0,0,11,255,255,144,0,0,0,21,80,0,0, + // 0x00db Û + 23,39,234,30,3,255,0,0,26,160,0,0,0,0,127,252,0,0,0,0,255,254,0,0,0,3,253,255,64,0,0,15,244,63,208,0,0,47,192,11,244,0,0,126,0,1,248,0,0,0,0,0,0,0,0,0,0,0,0,0,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,248,0,0,11,255,255,144,0,0,0,21,80,0,0, + // 0x00dc Ü + 23,38,228,30,3,255,0,1,64,1,0,0,0,15,240,15,208,0,0,15,240,31,224,0,0,15,240,31,224,0,0,7,208,11,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,248,0,0,11,255,255,144,0,0,0,21,80,0,0, + // 0x00dd Ý + 23,38,228,23,0,0,0,0,0,42,160,0,0,0,0,127,224,0,0,0,0,255,128,0,0,0,2,254,0,0,0,0,7,248,0,0,0,0,15,224,0,0,0,0,31,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,0,6,168,127,192,0,0,15,248,63,240,0,0,31,240,31,244,0,0,63,224,15,252,0,0,127,192,7,253,0,0,255,128,2,255,0,1,255,0,0,255,64,3,253,0,0,191,192,11,252,0,0,63,208,15,244,0,0,47,240,47,240,0,0,15,244,63,208,0,0,7,252,191,128,0,0,3,254,255,0,0,0,1,255,254,0,0,0,0,255,252,0,0,0,0,127,248,0,0,0,0,63,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0, + // 0x00de Þ + 19,29,145,24,4,0,170,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,255,169,0,0,255,255,255,244,0,255,255,255,255,0,255,255,255,255,192,255,0,2,255,208,255,0,0,63,240,255,0,0,31,240,255,0,0,15,244,255,0,0,15,244,255,0,0,15,244,255,0,0,15,244,255,0,0,31,240,255,0,0,63,240,255,0,1,255,208,255,170,191,255,128,255,255,255,254,0,255,255,255,244,0,255,255,250,64,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0, + // 0x00df ß + 22,32,192,26,3,255,0,1,169,64,0,0,0,191,255,253,0,0,7,255,255,255,192,0,31,255,255,255,240,0,63,248,0,127,248,0,127,208,0,15,252,0,191,192,0,7,252,0,191,128,0,7,252,0,191,128,0,15,248,0,191,128,0,47,240,0,191,128,0,255,192,0,191,128,3,255,0,0,191,128,15,248,0,0,191,128,47,240,0,0,191,128,63,208,0,0,191,128,63,224,0,0,191,128,47,248,0,0,191,128,15,255,0,0,191,128,3,255,224,0,191,128,0,255,252,0,191,128,0,31,255,0,191,128,0,3,255,128,191,128,0,0,191,192,191,128,0,0,63,208,191,128,0,0,63,208,191,128,0,0,63,208,191,128,0,0,63,208,191,128,228,0,255,192,191,128,255,255,255,128,191,128,255,255,254,0,191,128,127,255,244,0,0,0,1,85,0,0, + // 0x00e0 à + 18,32,160,23,2,255,0,170,128,0,0,0,191,208,0,0,0,63,240,0,0,0,15,248,0,0,0,2,253,0,0,0,0,191,0,0,0,0,31,64,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x00e1 á + 18,32,160,23,2,255,0,0,2,170,0,0,0,7,254,0,0,0,15,248,0,0,0,63,224,0,0,0,191,128,0,0,1,254,0,0,0,2,244,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x00e2 â + 18,32,160,23,2,255,0,2,170,0,0,0,11,255,128,0,0,31,255,208,0,0,127,223,240,0,0,255,3,252,0,3,252,0,255,0,11,208,0,47,128,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x00e3 ã + 18,31,155,23,2,255,0,25,0,2,128,1,255,224,11,192,3,255,254,111,128,11,251,255,255,0,15,192,63,253,0,15,64,6,160,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x00e4 ä + 18,31,155,23,2,255,0,20,0,80,0,0,253,1,252,0,1,255,3,253,0,1,254,2,253,0,0,184,0,184,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x00e5 å + 18,34,170,23,2,255,0,2,253,0,0,0,15,255,192,0,0,47,155,224,0,0,61,2,240,0,0,61,1,240,0,0,62,3,240,0,0,47,155,224,0,0,15,255,128,0,0,1,169,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x00e6 æ + 31,23,184,35,2,255,0,27,254,64,1,191,208,0,7,255,255,244,31,255,253,0,15,255,255,253,127,255,255,128,11,249,91,255,255,149,255,208,3,64,0,255,253,0,47,240,0,0,0,63,244,0,15,248,0,0,0,63,240,0,7,252,0,0,0,63,224,0,3,252,0,0,0,63,224,0,3,252,0,43,255,255,255,255,255,252,7,255,255,255,255,255,255,252,31,255,250,191,255,255,255,252,127,244,0,63,224,0,0,0,255,192,0,63,224,0,0,0,255,64,0,63,224,0,0,0,255,0,0,63,240,0,0,0,255,0,0,191,244,0,0,0,255,128,1,255,253,0,0,16,191,208,11,250,255,144,6,240,127,255,255,224,255,255,255,240,47,255,255,128,63,255,255,240,7,255,253,0,7,255,255,128,0,21,64,0,0,21,80,0, + // 0x00e7 ç + 16,32,128,20,2,246,0,6,255,228,0,127,255,255,2,255,255,255,11,255,234,253,31,253,0,8,63,240,0,0,127,208,0,0,191,192,0,0,191,128,0,0,255,128,0,0,255,64,0,0,255,64,0,0,255,64,0,0,255,128,0,0,191,192,0,0,127,192,0,0,63,224,0,0,47,244,0,1,15,254,64,111,7,255,255,255,1,255,255,255,0,47,255,248,0,0,253,0,0,1,244,0,0,3,254,0,0,1,191,192,0,0,31,208,0,0,15,224,0,0,31,208,0,47,255,192,0,47,255,0,0,10,144,0, + // 0x00e8 è + 19,32,160,23,2,255,0,170,128,0,0,0,191,208,0,0,0,47,240,0,0,0,11,248,0,0,0,2,253,0,0,0,0,191,0,0,0,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x00e9 é + 19,32,160,23,2,255,0,0,2,170,0,0,0,7,254,0,0,0,15,248,0,0,0,63,224,0,0,0,127,128,0,0,0,254,0,0,0,2,244,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x00ea ê + 19,32,160,23,2,255,0,2,170,0,0,0,11,255,128,0,0,31,255,208,0,0,63,223,244,0,0,255,3,252,0,3,252,0,255,0,11,224,0,47,128,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x00eb ë + 19,31,155,23,2,255,0,20,0,16,0,0,254,1,252,0,1,255,2,253,0,0,254,2,253,0,0,120,0,184,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x00ec ì + 9,31,93,11,0,0,170,64,0,191,208,0,63,240,0,15,248,0,3,253,0,0,191,0,0,47,64,0,0,0,0,0,0,1,169,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0,2,254,0, + // 0x00ed í + 9,31,93,11,3,0,0,170,128,2,255,64,3,254,0,15,248,0,47,224,0,127,64,0,189,0,0,0,0,0,0,0,0,106,64,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0, + // 0x00ee î + 15,31,124,11,254,0,0,42,160,0,0,191,244,0,1,255,253,0,7,253,255,0,15,240,127,192,63,128,15,240,189,0,2,244,0,0,0,0,0,0,0,0,0,26,144,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0, + // 0x00ef ï + 13,30,120,11,255,0,4,0,20,0,63,64,191,0,127,128,255,64,127,128,191,0,46,0,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0, + // 0x00f0 ð + 21,31,186,24,2,255,0,15,128,7,192,0,0,31,248,63,224,0,0,31,255,255,192,0,0,2,255,253,0,0,0,1,255,248,0,0,0,11,255,253,0,0,0,127,246,255,64,0,0,63,128,191,192,0,0,24,0,63,224,0,0,0,0,15,240,0,0,0,0,7,248,0,0,27,255,147,252,0,0,255,255,250,253,0,7,255,255,255,254,0,15,254,85,191,255,0,63,244,0,15,255,0,63,208,0,3,255,0,191,192,0,1,255,0,191,128,0,0,255,64,255,64,0,0,255,64,255,64,0,0,255,0,255,64,0,0,255,0,255,128,0,1,255,0,191,192,0,2,254,0,127,208,0,3,253,0,63,240,0,11,252,0,15,253,0,127,244,0,7,255,255,255,224,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x00f1 ñ + 19,30,150,25,3,0,0,25,0,2,128,0,255,224,11,192,3,255,254,111,128,7,250,255,255,0,15,192,47,253,0,11,64,2,160,0,0,0,0,0,0,0,0,0,0,0,105,0,191,228,0,191,11,255,255,64,191,63,255,255,208,191,255,170,255,240,191,248,0,47,248,191,240,0,15,252,191,208,0,7,252,191,192,0,7,252,191,192,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252, + // 0x00f2 ò + 21,32,192,24,2,255,0,106,144,0,0,0,0,63,240,0,0,0,0,15,248,0,0,0,0,3,253,0,0,0,0,0,255,0,0,0,0,0,63,128,0,0,0,0,11,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x00f3 ó + 21,32,192,24,2,255,0,0,0,170,128,0,0,0,3,255,64,0,0,0,7,253,0,0,0,0,15,244,0,0,0,0,63,208,0,0,0,0,191,64,0,0,0,0,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x00f4 ô + 21,32,192,24,2,255,0,0,170,64,0,0,0,3,255,192,0,0,0,11,255,240,0,0,0,47,235,252,0,0,0,127,129,254,0,0,1,254,0,127,128,0,2,244,0,11,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x00f5 õ + 21,31,186,24,2,255,0,6,64,1,144,0,0,191,248,3,224,0,1,255,255,159,208,0,3,250,255,255,192,0,3,208,31,255,0,0,3,192,1,164,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x00f6 ö + 21,31,186,24,2,255,0,4,0,20,0,0,0,127,0,191,0,0,0,191,128,255,0,0,0,191,64,255,0,0,0,46,0,125,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x00f7 ÷ + 19,20,100,23,2,4,0,0,80,0,0,0,2,253,0,0,0,3,254,0,0,0,3,254,0,0,0,2,253,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,170,168,255,255,255,255,252,255,255,255,255,252,170,170,170,170,164,0,0,0,0,0,0,0,0,0,0,0,0,184,0,0,0,3,254,0,0,0,3,254,0,0,0,3,254,0,0,0,1,252,0,0,0,0,16,0,0, + // 0x00f8 ø + 21,25,150,24,2,254,0,0,0,0,64,0,0,6,255,144,248,0,0,127,255,255,252,0,2,255,255,255,244,0,11,255,234,255,240,0,31,252,0,63,248,0,63,240,0,191,252,0,63,208,1,255,254,0,127,192,3,254,255,0,191,128,11,241,255,0,255,128,31,208,255,0,255,64,63,128,255,64,255,64,255,0,255,64,255,129,253,0,255,0,191,131,248,0,255,0,191,207,240,1,255,0,127,239,192,2,254,0,63,255,64,3,253,0,31,254,0,15,252,0,15,254,64,127,244,0,7,255,255,255,208,0,15,255,255,255,64,0,47,223,255,248,0,0,11,0,85,0,0,0,0,0,0,0,0,0, + // 0x00f9 ù + 19,32,160,25,3,255,0,170,128,0,0,0,191,208,0,0,0,47,240,0,0,0,11,248,0,0,0,2,253,0,0,0,0,191,0,0,0,0,31,128,0,0,0,0,0,0,0,0,0,0,0,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,2,252,0,5,80,0,0, + // 0x00fa ú + 19,32,160,25,3,255,0,0,2,170,0,0,0,7,254,0,0,0,15,248,0,0,0,47,224,0,0,0,127,128,0,0,0,254,0,0,0,2,244,0,0,0,0,0,0,0,0,0,0,0,0,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,2,252,0,5,80,0,0, + // 0x00fb û + 19,32,160,25,3,255,0,2,170,0,0,0,11,255,128,0,0,31,255,208,0,0,63,223,244,0,0,255,3,252,0,3,252,0,255,0,7,224,0,31,128,0,0,0,0,0,0,0,0,0,0,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,2,252,0,5,80,0,0, + // 0x00fc ü + 19,31,155,25,3,255,0,20,0,16,0,0,254,1,252,0,1,255,2,253,0,0,255,2,253,0,0,120,0,184,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,2,252,0,5,80,0,0, + // 0x00fd ý + 21,41,246,21,0,246,0,0,0,170,128,0,0,0,1,255,128,0,0,0,3,254,0,0,0,0,11,248,0,0,0,0,31,224,0,0,0,0,63,128,0,0,0,0,189,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,0,106,128,191,192,0,0,255,128,63,208,0,0,255,64,47,224,0,2,255,0,31,240,0,3,254,0,15,244,0,3,252,0,11,252,0,11,252,0,3,252,0,15,244,0,2,254,0,31,240,0,1,255,0,47,224,0,0,255,64,63,208,0,0,191,128,127,192,0,0,63,192,191,128,0,0,47,208,255,0,0,0,31,225,255,0,0,0,15,242,253,0,0,0,11,243,252,0,0,0,3,251,248,0,0,0,2,255,244,0,0,0,1,255,240,0,0,0,0,255,224,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,255,64,0,0,0,1,255,0,0,0,0,3,254,0,0,0,0,7,252,0,0,0,0,47,248,0,0,0,127,255,240,0,0,0,127,255,192,0,0,0,127,254,0,0,0,0,26,144,0,0,0,0, + // 0x00fe þ + 20,41,205,25,3,246,85,0,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,191,224,0,191,139,255,254,0,191,111,255,255,192,191,255,170,255,224,191,248,0,47,244,191,224,0,15,252,191,192,0,7,252,191,192,0,3,253,191,128,0,3,254,191,128,0,2,254,191,128,0,2,254,191,128,0,2,254,191,128,0,2,254,191,128,0,3,254,191,192,0,3,253,191,192,0,7,252,191,224,0,11,252,191,244,0,31,248,191,254,65,191,240,191,191,255,255,208,191,95,255,255,64,191,130,255,248,0,191,128,21,64,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,106,64,0,0,0, + // 0x00ff ÿ + 21,40,240,21,0,246,0,5,0,4,0,0,0,63,128,127,0,0,0,127,192,191,64,0,0,63,128,191,64,0,0,30,0,46,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,0,106,128,191,192,0,0,255,128,63,208,0,0,255,64,47,224,0,2,255,0,31,240,0,3,254,0,15,244,0,3,252,0,11,252,0,11,252,0,3,252,0,15,244,0,2,254,0,31,240,0,1,255,0,47,224,0,0,255,64,63,208,0,0,191,128,127,192,0,0,63,192,191,128,0,0,47,208,255,0,0,0,31,225,255,0,0,0,15,242,253,0,0,0,11,243,252,0,0,0,3,251,248,0,0,0,2,255,244,0,0,0,1,255,240,0,0,0,0,255,224,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,255,64,0,0,0,1,255,0,0,0,0,3,254,0,0,0,0,7,252,0,0,0,0,47,248,0,0,0,127,255,240,0,0,0,127,255,192,0,0,0,127,254,0,0,0,0,26,144,0,0,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_ASCII_29.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_ASCII_29.cpp new file mode 100644 index 000000000000..fddcecf829b1 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_ASCII_29.cpp @@ -0,0 +1,222 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium ASCII 40pt, capital 'A' height: 29px, width: 100%, range: 0x0020-0x007e +extern const uint8_t NotoSans_Medium_ASCII_29[12481] = { + 130,29,32,0,126,0,38,246, // unifont_t + // 0x0020 " " + 0,0,0,10,0,0, + // 0x0021 ! + 5,30,60,11,3,255,170,128,255,192,255,192,255,192,255,192,255,128,191,128,191,128,191,128,191,128,191,64,127,64,127,64,127,64,127,64,127,0,63,0,63,0,63,0,63,0,42,0,0,0,0,0,0,0,127,64,255,192,255,192,255,192,191,128,25,0, + // 0x0022 " + 13,11,44,17,2,18,42,64,106,64,127,192,191,64,63,128,191,64,63,128,191,0,63,128,127,0,63,64,127,0,63,64,127,0,63,64,127,0,63,64,63,0,47,0,63,0,31,0,62,0, + // 0x0023 # + 24,29,174,26,1,0,0,0,42,0,26,0,0,0,127,0,63,64,0,0,190,0,63,0,0,0,253,0,127,0,0,0,253,0,126,0,0,0,252,0,190,0,0,1,252,0,253,0,0,2,248,0,252,0,0,3,248,1,252,0,47,255,255,255,255,255,47,255,255,255,255,255,31,255,255,255,255,254,0,7,224,3,240,0,0,11,224,7,240,0,0,15,208,7,240,0,0,15,192,11,224,0,0,31,192,15,208,0,85,111,213,95,213,80,255,255,255,255,255,244,255,255,255,255,255,244,255,255,255,255,255,244,0,127,0,63,64,0,0,127,0,63,0,0,0,190,0,127,0,0,0,253,0,127,0,0,0,252,0,190,0,0,0,252,0,253,0,0,1,252,0,252,0,0,2,248,0,252,0,0, + // 0x0024 $ + 19,34,170,23,2,253,0,0,84,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,47,255,233,0,2,255,255,255,224,15,255,255,255,224,63,254,254,255,208,127,208,248,6,192,191,128,248,0,0,191,64,248,0,0,191,128,248,0,0,191,192,248,0,0,63,248,248,0,0,47,255,248,0,0,7,255,255,64,0,0,191,255,248,0,0,11,255,255,128,0,0,255,255,224,0,0,249,191,240,0,0,248,15,248,0,0,248,11,252,0,0,248,7,252,0,0,248,11,248,164,0,248,31,244,191,233,254,255,240,191,255,255,255,192,191,255,255,254,0,6,255,255,144,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,248,0,0,0,0,80,0,0, + // 0x0025 % + 31,30,240,34,2,255,2,254,64,0,0,42,64,0,15,255,224,0,0,127,0,0,63,255,248,0,0,254,0,0,127,131,252,0,2,252,0,0,191,0,253,0,3,244,0,0,254,0,254,0,11,240,0,0,253,0,191,0,15,208,0,0,253,0,127,0,63,192,0,0,252,0,127,0,127,0,0,0,252,0,127,0,254,0,0,0,253,0,127,1,252,0,0,0,253,0,191,3,248,5,80,0,254,0,254,11,240,127,253,0,191,0,253,15,209,255,255,64,63,131,252,47,195,254,191,192,47,255,248,63,71,244,15,224,15,255,224,255,11,240,11,240,1,254,65,253,15,224,7,240,0,0,3,248,15,224,7,240,0,0,7,240,15,224,3,244,0,0,15,224,15,208,3,244,0,0,47,192,15,224,3,244,0,0,63,64,15,224,7,240,0,0,191,0,15,224,7,240,0,0,253,0,11,240,11,240,0,2,252,0,3,244,31,224,0,7,244,0,2,254,191,192,0,15,224,0,0,255,255,64,0,31,192,0,0,63,253,0,0,0,0,0,0,1,64,0, + // 0x0026 & + 27,30,210,29,2,255,0,6,255,144,0,0,0,0,63,255,253,0,0,0,0,255,255,255,64,0,0,3,255,150,255,192,0,0,3,253,0,127,208,0,0,7,252,0,63,208,0,0,7,248,0,47,208,0,0,7,252,0,63,208,0,0,3,252,0,127,192,0,0,2,254,0,255,128,0,0,0,255,71,255,0,0,0,0,127,255,252,0,0,0,0,47,255,224,0,0,0,0,47,255,64,0,0,0,1,255,255,64,0,26,144,7,255,255,224,0,63,224,31,253,63,248,0,63,192,63,240,15,254,0,127,192,191,192,3,255,128,255,64,255,128,0,255,225,255,0,255,64,0,47,251,253,0,255,64,0,11,255,252,0,255,128,0,2,255,240,0,255,192,0,0,255,240,0,191,240,0,11,255,252,0,63,254,85,191,255,255,0,31,255,255,255,242,255,192,7,255,255,255,128,191,240,0,127,255,248,0,47,252,0,1,84,0,0,0,0, + // 0x0027 ' + 5,11,22,9,2,18,42,64,127,192,63,128,63,128,63,128,63,64,63,64,63,64,63,64,47,0,31,0, + // 0x0028 ( + 10,36,108,12,1,249,0,6,160,0,31,224,0,63,192,0,191,64,0,255,0,2,253,0,3,252,0,11,248,0,15,240,0,15,240,0,31,224,0,47,208,0,63,192,0,63,192,0,63,192,0,127,128,0,127,128,0,127,128,0,127,128,0,127,128,0,127,192,0,63,192,0,63,192,0,63,192,0,47,208,0,31,224,0,15,240,0,15,240,0,11,248,0,3,252,0,2,253,0,0,255,0,0,191,64,0,63,192,0,15,224,0,1,80, + // 0x0029 ) + 10,36,108,12,1,249,106,0,0,63,192,0,31,224,0,15,240,0,7,248,0,3,252,0,1,254,0,0,255,0,0,191,64,0,127,128,0,63,192,0,63,192,0,47,208,0,47,224,0,31,224,0,31,240,0,31,240,0,15,240,0,15,240,0,31,240,0,31,240,0,31,224,0,47,224,0,47,208,0,63,192,0,63,192,0,127,128,0,191,64,0,255,0,1,254,0,3,252,0,7,248,0,15,240,0,47,208,0,63,128,0,21,0,0, + // 0x002a * + 20,19,95,22,1,12,0,0,85,0,0,0,0,255,0,0,0,0,255,0,0,0,0,254,0,0,0,0,254,0,0,0,0,190,0,0,57,0,189,0,108,63,244,125,47,252,63,255,255,255,252,127,255,255,255,253,1,91,255,165,64,0,3,255,192,0,0,15,239,224,0,0,47,199,244,0,0,127,195,252,0,0,255,65,255,0,2,255,0,255,128,0,189,0,126,0,0,8,0,32,0, + // 0x002b + + 19,20,100,23,2,4,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,170,171,254,170,168,255,255,255,255,252,255,255,255,255,252,170,170,254,170,164,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,168,0,0, + // 0x002c , + 7,11,22,11,1,250,6,168,11,252,15,248,15,240,15,240,31,224,47,192,63,128,63,64,127,0,0,0, + // 0x002d - + 11,5,15,13,1,8,106,170,160,191,255,244,191,255,244,191,255,244,0,0,0, + // 0x002e . + 5,6,12,11,3,255,127,64,255,192,255,192,255,192,191,128,25,0, + // 0x002f / + 15,29,116,15,0,0,0,0,2,168,0,0,7,248,0,0,15,244,0,0,15,240,0,0,47,224,0,0,63,192,0,0,127,192,0,0,191,64,0,0,255,0,0,1,254,0,0,3,253,0,0,3,252,0,0,7,248,0,0,15,240,0,0,15,240,0,0,47,208,0,0,63,192,0,0,127,128,0,0,191,64,0,0,255,0,0,1,254,0,0,3,252,0,0,3,252,0,0,11,244,0,0,15,240,0,0,31,224,0,0,47,208,0,0,63,192,0,0,127,128,0,0, + // 0x0030 0 + 19,30,150,23,2,255,0,11,255,64,0,0,191,255,244,0,3,255,255,254,0,11,255,171,255,64,31,248,0,255,192,63,224,0,63,208,63,192,0,31,240,127,192,0,15,240,191,128,0,15,244,255,64,0,11,248,255,64,0,7,252,255,0,0,7,252,255,0,0,7,252,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,0,0,7,252,255,0,0,7,252,255,0,0,7,252,255,64,0,11,248,191,128,0,11,248,127,128,0,15,244,63,192,0,31,240,63,208,0,47,240,31,240,0,127,208,15,254,70,255,192,3,255,255,255,0,0,255,255,252,0,0,47,255,224,0,0,0,84,0,0, + // 0x0031 1 + 12,29,87,23,3,0,0,0,169,0,3,255,0,31,255,0,191,255,2,255,255,15,253,255,127,240,255,127,193,255,30,1,255,4,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255,0,1,255, + // 0x0032 2 + 19,29,145,23,2,0,0,27,254,128,0,2,255,255,248,0,31,255,255,255,0,191,255,175,255,192,127,208,0,255,208,30,0,0,63,224,0,0,0,47,240,0,0,0,31,240,0,0,0,31,240,0,0,0,31,240,0,0,0,63,224,0,0,0,63,192,0,0,0,255,128,0,0,1,255,0,0,0,7,253,0,0,0,15,248,0,0,0,63,224,0,0,0,255,192,0,0,3,255,0,0,0,15,252,0,0,0,63,240,0,0,0,255,192,0,0,3,254,0,0,0,15,248,0,0,0,63,224,0,0,0,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252, + // 0x0033 3 + 20,30,150,23,1,255,0,27,255,160,0,2,255,255,254,0,31,255,255,255,192,63,255,171,255,240,15,208,0,47,244,6,0,0,15,248,0,0,0,11,252,0,0,0,7,252,0,0,0,7,252,0,0,0,15,248,0,0,0,31,240,0,0,0,191,208,0,21,175,255,64,0,63,255,244,0,0,63,255,249,0,0,63,255,255,192,0,0,1,191,244,0,0,0,15,252,0,0,0,3,253,0,0,0,3,254,0,0,0,2,255,0,0,0,2,255,0,0,0,3,254,0,0,0,7,253,96,0,0,31,252,127,148,5,255,244,127,255,255,255,224,127,255,255,255,64,11,255,255,244,0,0,5,84,0,0, + // 0x0034 4 + 21,29,174,23,1,0,0,0,0,42,128,0,0,0,0,255,192,0,0,0,2,255,192,0,0,0,7,255,192,0,0,0,15,255,192,0,0,0,47,255,192,0,0,0,127,127,192,0,0,0,255,63,192,0,0,2,252,63,192,0,0,7,244,63,192,0,0,15,224,63,192,0,0,63,192,63,192,0,0,127,64,63,192,0,0,254,0,63,192,0,3,252,0,63,192,0,11,244,0,63,192,0,31,224,0,63,192,0,63,192,0,63,192,0,191,0,0,63,192,0,255,255,255,255,255,192,255,255,255,255,255,192,255,255,255,255,255,192,170,170,170,191,234,128,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0, + // 0x0035 5 + 19,30,150,23,2,255,10,170,170,170,64,15,255,255,255,192,15,255,255,255,192,15,255,255,255,192,15,240,0,0,0,31,224,0,0,0,31,224,0,0,0,31,208,0,0,0,47,208,0,0,0,47,208,0,0,0,47,192,0,0,0,63,218,170,64,0,63,255,255,248,0,63,255,255,255,0,47,255,255,255,192,1,0,1,255,224,0,0,0,63,240,0,0,0,15,244,0,0,0,15,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,15,244,0,0,0,47,240,144,0,0,191,224,191,144,27,255,192,191,255,255,255,0,191,255,255,252,0,27,255,255,144,0,0,21,80,0,0, + // 0x0036 6 + 19,30,150,23,2,255,0,0,27,255,128,0,7,255,255,192,0,47,255,255,192,0,255,254,170,192,3,255,128,0,0,11,253,0,0,0,15,244,0,0,0,47,224,0,0,0,63,192,0,0,0,63,192,0,0,0,127,128,0,0,0,191,65,255,228,0,255,79,255,255,0,255,127,255,255,192,255,255,85,255,240,255,244,0,47,244,255,192,0,15,248,255,128,0,7,252,255,64,0,3,252,255,64,0,3,252,191,64,0,3,252,191,128,0,3,252,127,192,0,7,252,63,224,0,15,248,31,244,0,47,240,15,254,65,255,224,3,255,255,255,192,0,255,255,255,0,0,31,255,244,0,0,0,85,0,0, + // 0x0037 7 + 20,29,145,23,1,0,42,170,170,170,170,127,255,255,255,255,127,255,255,255,255,127,255,255,255,255,0,0,0,2,254,0,0,0,3,252,0,0,0,7,252,0,0,0,15,244,0,0,0,31,240,0,0,0,63,208,0,0,0,127,192,0,0,0,255,128,0,0,1,255,0,0,0,2,254,0,0,0,3,252,0,0,0,11,252,0,0,0,15,244,0,0,0,47,240,0,0,0,63,208,0,0,0,127,192,0,0,0,255,128,0,0,1,255,0,0,0,3,254,0,0,0,7,252,0,0,0,15,252,0,0,0,15,244,0,0,0,47,240,0,0,0,63,208,0,0,0,191,192,0,0, + // 0x0038 8 + 19,30,150,23,2,255,0,27,255,144,0,1,255,255,253,0,7,255,255,255,64,31,254,90,255,192,63,240,0,127,224,63,192,0,31,240,127,192,0,15,240,63,192,0,15,240,63,192,0,15,240,63,224,0,47,224,31,248,0,191,192,11,255,71,255,0,2,255,255,252,0,0,127,255,208,0,0,127,255,224,0,2,255,255,253,0,15,254,11,255,128,63,240,0,191,224,127,192,0,31,244,255,64,0,11,248,255,0,0,3,252,255,0,0,3,252,255,0,0,3,252,255,64,0,7,252,191,192,0,15,248,127,244,0,127,240,47,255,255,255,192,7,255,255,255,0,0,191,255,244,0,0,1,84,0,0, + // 0x0039 9 + 19,30,150,23,2,255,0,27,254,64,0,1,255,255,244,0,7,255,255,253,0,31,255,175,255,64,63,240,0,255,192,127,192,0,63,224,255,128,0,31,240,255,0,0,15,244,255,0,0,11,248,255,0,0,7,252,255,0,0,7,252,255,0,0,7,252,255,64,0,15,252,191,192,0,47,252,63,244,1,255,252,47,255,255,251,252,11,255,255,215,252,1,255,255,71,248,0,6,148,11,244,0,0,0,15,244,0,0,0,15,240,0,0,0,31,224,0,0,0,63,192,0,0,0,255,128,0,0,3,255,0,4,0,111,253,0,15,255,255,244,0,15,255,255,192,0,15,255,249,0,0,1,85,0,0,0, + // 0x003a : + 5,23,46,11,3,255,127,64,255,192,255,192,255,192,255,128,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,64,255,192,255,192,255,192,191,128,25,0, + // 0x003b ; + 7,28,56,11,1,250,7,240,15,252,31,252,31,252,15,248,2,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,164,15,248,15,244,31,240,31,224,47,208,63,192,63,64,127,0,190,0,0,0, + // 0x003c < + 19,21,105,23,2,4,0,0,0,0,4,0,0,0,0,124,0,0,0,7,252,0,0,0,127,252,0,0,7,255,224,0,0,127,254,0,0,7,255,224,0,0,127,254,0,0,7,255,208,0,0,127,253,0,0,0,255,208,0,0,0,255,224,0,0,0,127,255,64,0,0,7,255,248,0,0,0,47,255,144,0,0,2,255,253,0,0,0,31,255,224,0,0,1,191,252,0,0,0,11,252,0,0,0,0,124,0,0,0,0,4, + // 0x003d = + 19,12,60,23,2,8,170,170,170,170,164,255,255,255,255,248,255,255,255,255,248,170,170,170,170,164,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,248,255,255,255,255,248,255,255,255,255,248,85,85,85,85,84, + // 0x003e > + 19,20,100,23,2,4,224,0,0,0,0,254,0,0,0,0,255,224,0,0,0,127,254,0,0,0,6,255,224,0,0,0,47,254,0,0,0,2,255,224,0,0,0,47,255,64,0,0,2,255,244,0,0,0,31,252,0,0,0,47,252,0,0,7,255,244,0,0,191,254,64,0,27,255,224,0,1,255,253,0,0,47,255,208,0,0,255,248,0,0,0,255,128,0,0,0,244,0,0,0,0,64,0,0,0,0, + // 0x003f ? + 17,30,150,18,0,255,0,111,254,64,0,31,255,255,240,0,127,255,255,252,0,63,254,175,255,0,46,64,1,255,64,0,0,0,191,128,0,0,0,127,192,0,0,0,63,192,0,0,0,127,128,0,0,0,255,64,0,0,2,255,0,0,0,11,253,0,0,0,47,244,0,0,0,255,208,0,0,3,255,64,0,0,11,252,0,0,0,15,240,0,0,0,31,208,0,0,0,31,192,0,0,0,31,192,0,0,0,10,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,208,0,0,0,63,240,0,0,0,63,240,0,0,0,63,240,0,0,0,47,224,0,0,0,6,64,0,0, + // 0x0040 @ + 32,33,8,36,2,252,0,0,0,5,165,0,0,0,0,0,6,255,255,249,0,0,0,0,127,255,255,255,208,0,0,3,255,250,86,255,248,0,0,31,253,0,0,11,255,0,0,127,208,0,0,0,191,128,0,255,0,0,0,0,47,208,3,252,0,0,0,0,11,240,7,240,0,27,254,144,3,248,15,224,0,255,255,252,2,252,31,192,7,255,255,252,0,252,63,128,15,244,2,252,0,253,63,0,63,192,1,252,0,190,127,0,127,64,1,252,0,190,191,0,191,0,2,252,0,190,190,0,254,0,2,252,0,190,190,0,254,0,2,252,0,190,254,0,254,0,3,252,0,253,190,0,254,0,3,252,0,252,190,0,191,0,7,252,1,252,191,0,127,64,15,252,3,244,127,0,63,224,127,190,31,240,63,0,31,255,253,63,255,208,63,128,7,255,244,31,255,64,47,192,0,106,64,2,164,0,15,240,0,0,0,0,0,0,7,248,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,255,224,0,0,27,0,0,0,47,255,169,107,255,0,0,0,7,255,255,255,255,0,0,0,0,111,255,255,228,0,0,0,0,0,86,84,0,0,0, + // 0x0041 A + 26,29,203,26,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x0042 B + 20,29,145,26,4,0,170,170,165,0,0,255,255,255,249,0,255,255,255,255,192,255,255,255,255,240,255,0,1,191,248,255,0,0,31,252,255,0,0,11,252,255,0,0,7,252,255,0,0,7,252,255,0,0,7,252,255,0,0,15,248,255,0,0,47,240,255,170,171,255,192,255,255,255,249,0,255,255,255,254,0,255,255,255,255,224,255,0,0,111,248,255,0,0,11,253,255,0,0,3,255,255,0,0,2,255,255,0,0,1,255,255,0,0,2,255,255,0,0,3,255,255,0,0,7,254,255,0,0,31,253,255,170,171,255,248,255,255,255,255,224,255,255,255,255,64,255,255,255,228,0, + // 0x0043 C + 22,30,180,25,2,255,0,0,27,255,228,0,0,2,255,255,255,208,0,31,255,255,255,224,0,127,255,255,255,208,1,255,244,0,27,192,3,255,128,0,0,0,11,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,63,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,127,208,0,0,0,0,63,224,0,0,0,0,63,240,0,0,0,0,47,244,0,0,0,0,15,252,0,0,0,0,11,255,0,0,0,0,3,255,208,0,0,64,1,255,254,85,175,192,0,127,255,255,255,192,0,15,255,255,255,192,0,1,191,255,254,64,0,0,1,85,0,0, + // 0x0044 D + 23,29,174,29,4,0,170,170,165,0,0,0,255,255,255,248,0,0,255,255,255,255,192,0,255,255,255,255,244,0,255,0,1,191,253,0,255,0,0,11,255,64,255,0,0,1,255,192,255,0,0,0,191,224,255,0,0,0,63,240,255,0,0,0,31,244,255,0,0,0,15,248,255,0,0,0,15,248,255,0,0,0,11,252,255,0,0,0,11,252,255,0,0,0,11,252,255,0,0,0,11,252,255,0,0,0,11,252,255,0,0,0,15,248,255,0,0,0,15,248,255,0,0,0,31,244,255,0,0,0,63,240,255,0,0,0,127,224,255,0,0,0,255,192,255,0,0,7,255,64,255,0,0,127,254,0,255,170,191,255,248,0,255,255,255,255,208,0,255,255,255,253,0,0,255,255,254,64,0,0, + // 0x0045 E + 16,29,116,22,4,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x0046 F + 16,29,116,21,4,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,170,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0, + // 0x0047 G + 24,30,180,29,2,255,0,0,6,255,250,64,0,1,191,255,255,249,0,11,255,255,255,253,0,63,255,255,255,252,0,255,249,0,1,184,3,255,192,0,0,0,11,255,0,0,0,0,15,252,0,0,0,0,47,244,0,0,0,0,63,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,5,85,85,191,192,0,31,255,255,191,192,0,31,255,255,127,192,0,31,255,255,127,192,0,5,86,255,127,208,0,0,0,255,63,224,0,0,0,255,63,240,0,0,0,255,31,244,0,0,0,255,15,252,0,0,0,255,11,255,0,0,0,255,3,255,208,0,0,255,0,255,254,85,91,255,0,63,255,255,255,255,0,11,255,255,255,255,0,0,191,255,255,228,0,0,0,85,64,0, + // 0x0048 H + 22,29,174,30,4,0,170,0,0,0,10,160,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,234,170,170,191,240,255,255,255,255,255,240,255,255,255,255,255,240,255,255,255,255,255,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240, + // 0x0049 I + 12,29,87,14,1,0,106,170,169,127,255,254,127,255,254,11,255,228,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,1,255,128,127,255,253,127,255,254,127,255,254, + // 0x004a J + 11,37,111,12,253,248,0,2,168,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,7,252,0,11,252,0,15,248,0,63,240,255,255,224,255,255,192,255,254,0,111,160,0, + // 0x004b K + 21,29,174,25,4,0,170,0,0,0,170,64,255,0,0,3,255,0,255,0,0,15,252,0,255,0,0,47,244,0,255,0,0,127,208,0,255,0,1,255,128,0,255,0,3,254,0,0,255,0,15,252,0,0,255,0,63,240,0,0,255,0,255,192,0,0,255,2,255,0,0,0,255,11,253,0,0,0,255,31,244,0,0,0,255,127,244,0,0,0,255,255,252,0,0,0,255,255,255,0,0,0,255,242,255,128,0,0,255,192,255,208,0,0,255,0,63,240,0,0,255,0,31,248,0,0,255,0,15,253,0,0,255,0,3,255,0,0,255,0,1,255,128,0,255,0,0,191,208,0,255,0,0,63,240,0,255,0,0,15,252,0,255,0,0,11,254,0,255,0,0,3,255,0,255,0,0,0,255,192, + // 0x004c L + 17,29,145,21,4,0,170,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,234,170,170,0,255,255,255,255,64,255,255,255,255,64,255,255,255,255,64, + // 0x004d M + 29,29,232,37,4,0,170,160,0,0,0,2,170,128,255,244,0,0,0,11,255,192,255,248,0,0,0,15,255,192,255,252,0,0,0,31,255,192,255,253,0,0,0,47,255,192,254,255,0,0,0,63,191,192,254,255,0,0,0,127,127,192,254,127,64,0,0,255,63,192,254,63,192,0,0,253,63,192,254,47,192,0,2,252,63,192,254,31,224,0,3,248,63,192,254,15,240,0,7,244,127,192,254,11,244,0,11,240,127,192,254,7,248,0,15,224,127,192,254,3,252,0,31,208,127,192,254,2,253,0,63,192,127,192,254,0,254,0,63,128,127,192,254,0,255,0,191,0,127,192,254,0,191,64,255,0,127,192,254,0,63,193,253,0,127,192,254,0,63,194,252,0,127,192,254,0,31,211,248,0,127,192,254,0,15,247,244,0,127,192,254,0,11,255,240,0,127,192,254,0,7,255,224,0,127,192,254,0,3,255,192,0,127,192,254,0,2,255,192,0,127,192,254,0,1,255,128,0,127,192,254,0,0,255,0,0,127,192, + // 0x004e N + 23,29,174,31,4,0,170,128,0,0,1,168,255,224,0,0,3,252,255,244,0,0,3,252,255,252,0,0,3,252,255,254,0,0,3,252,255,255,0,0,3,252,254,255,192,0,3,252,253,127,208,0,3,252,254,63,240,0,3,252,254,15,248,0,3,252,254,11,253,0,3,252,254,3,255,0,3,252,254,1,255,128,3,252,254,0,191,192,3,252,254,0,63,240,3,252,254,0,31,244,3,252,254,0,15,252,2,252,254,0,3,254,2,252,254,0,2,255,66,252,254,0,0,255,194,252,254,0,0,127,226,252,254,0,0,47,242,252,254,0,0,15,254,252,254,0,0,7,255,252,254,0,0,3,255,252,254,0,0,0,255,252,254,0,0,0,191,252,254,0,0,0,63,252,254,0,0,0,31,252, + // 0x004f O + 27,30,210,31,2,255,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x0050 P + 19,29,145,24,4,0,170,170,148,0,0,255,255,255,224,0,255,255,255,254,0,255,255,255,255,128,255,0,7,255,208,255,0,0,127,240,255,0,0,47,240,255,0,0,15,244,255,0,0,15,244,255,0,0,15,244,255,0,0,15,244,255,0,0,31,240,255,0,0,63,240,255,0,1,255,208,255,150,175,255,192,255,255,255,255,0,255,255,255,248,0,255,255,254,64,0,255,64,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0, + // 0x0051 Q + 27,36,252,31,2,249,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,248,0,0,11,255,255,255,208,0,0,0,191,255,253,0,0,0,0,1,87,255,0,0,0,0,0,1,255,192,0,0,0,0,0,191,240,0,0,0,0,0,63,252,0,0,0,0,0,15,254,0,0,0,0,0,3,255,128,0,0,0,0,1,255,208, + // 0x0052 R + 21,29,174,25,4,0,170,170,148,0,0,0,255,255,255,228,0,0,255,255,255,254,0,0,255,255,255,255,192,0,255,0,22,255,224,0,255,0,0,127,240,0,255,0,0,31,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,47,240,0,255,0,0,127,224,0,255,64,23,255,192,0,255,255,255,255,0,0,255,255,255,248,0,0,255,255,255,192,0,0,255,149,127,224,0,0,255,0,31,244,0,0,255,0,11,252,0,0,255,0,3,254,0,0,255,0,2,255,0,0,255,0,0,255,192,0,255,0,0,127,208,0,255,0,0,47,240,0,255,0,0,15,248,0,255,0,0,11,253,0,255,0,0,3,255,0,255,0,0,1,255,128, + // 0x0053 S + 18,30,150,22,2,255,0,27,255,164,0,1,255,255,255,128,11,255,255,255,208,31,255,255,255,192,63,244,0,27,128,127,208,0,0,0,191,192,0,0,0,191,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,240,0,0,0,47,253,0,0,0,15,255,224,0,0,3,255,254,0,0,0,191,255,224,0,0,11,255,253,0,0,0,127,255,64,0,0,7,255,192,0,0,0,191,224,0,0,0,47,240,0,0,0,31,240,0,0,0,15,240,0,0,0,15,240,0,0,0,47,240,224,0,0,127,224,255,165,91,255,192,255,255,255,255,0,255,255,255,252,0,47,255,255,144,0,0,21,80,0,0, + // 0x0054 T + 22,29,174,23,0,0,106,170,170,170,170,160,127,255,255,255,255,240,127,255,255,255,255,240,127,255,255,255,255,240,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0, + // 0x0055 U + 23,30,180,30,3,255,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,248,0,0,11,255,255,144,0,0,0,21,80,0,0, + // 0x0056 V + 25,29,203,25,0,0,170,64,0,0,0,170,64,191,192,0,0,0,255,0,127,192,0,0,2,255,0,63,208,0,0,3,254,0,47,240,0,0,7,252,0,15,240,0,0,11,252,0,15,248,0,0,15,244,0,11,252,0,0,31,240,0,3,252,0,0,47,224,0,3,254,0,0,63,208,0,1,255,0,0,127,192,0,0,255,0,0,191,128,0,0,255,128,0,255,64,0,0,127,192,1,255,0,0,0,63,192,2,254,0,0,0,47,224,3,253,0,0,0,31,240,7,252,0,0,0,15,244,11,248,0,0,0,11,248,15,240,0,0,0,7,252,31,240,0,0,0,3,253,47,224,0,0,0,2,254,63,192,0,0,0,0,255,127,192,0,0,0,0,255,191,64,0,0,0,0,191,255,0,0,0,0,0,63,254,0,0,0,0,0,63,253,0,0,0,0,0,31,252,0,0,0,0,0,15,248,0,0,0, + // 0x0057 W + 37,29,34,38,0,0,106,64,0,0,106,128,0,0,42,128,127,192,0,0,191,192,0,0,127,192,63,208,0,0,255,208,0,0,191,128,63,224,0,1,255,240,0,0,255,64,47,240,0,2,255,240,0,0,255,0,31,240,0,3,255,244,0,1,255,0,15,244,0,3,251,248,0,2,254,0,15,248,0,7,247,252,0,3,253,0,11,252,0,11,242,252,0,3,252,0,7,252,0,15,241,254,0,7,252,0,3,253,0,31,224,255,0,11,248,0,3,254,0,47,208,255,0,15,244,0,2,255,0,63,192,191,64,15,240,0,1,255,0,63,192,127,128,31,240,0,0,255,64,127,128,63,192,47,224,0,0,191,128,191,0,47,192,63,208,0,0,127,192,255,0,31,224,63,192,0,0,63,193,254,0,15,240,127,192,0,0,63,194,253,0,15,240,191,128,0,0,47,211,252,0,11,244,255,64,0,0,31,227,252,0,7,248,255,0,0,0,15,243,248,0,3,252,254,0,0,0,15,247,240,0,2,253,253,0,0,0,11,255,240,0,1,254,252,0,0,0,7,255,224,0,0,255,252,0,0,0,3,255,208,0,0,255,248,0,0,0,3,255,192,0,0,191,244,0,0,0,2,255,192,0,0,127,240,0,0,0,1,255,128,0,0,63,240,0,0, + // 0x0058 X + 24,29,174,24,0,0,42,144,0,0,2,168,47,240,0,0,11,252,15,252,0,0,31,244,7,253,0,0,63,224,2,255,0,0,191,192,0,255,128,0,255,64,0,127,192,3,254,0,0,47,240,7,252,0,0,15,244,15,244,0,0,7,252,47,224,0,0,3,254,63,192,0,0,0,255,255,64,0,0,0,127,255,0,0,0,0,63,252,0,0,0,0,47,252,0,0,0,0,127,254,0,0,0,0,255,255,0,0,0,2,255,191,192,0,0,3,252,63,208,0,0,15,248,31,240,0,0,31,240,15,252,0,0,63,208,3,253,0,0,191,128,2,255,0,1,255,0,0,255,128,3,253,0,0,127,208,11,252,0,0,63,240,31,244,0,0,15,248,63,224,0,0,11,253,191,192,0,0,3,255, + // 0x0059 Y + 23,29,174,23,0,0,106,64,0,0,6,168,127,192,0,0,15,248,63,240,0,0,31,240,31,244,0,0,63,224,15,252,0,0,127,192,7,253,0,0,255,128,2,255,0,1,255,0,0,255,64,3,253,0,0,191,192,11,252,0,0,63,208,15,244,0,0,47,240,47,240,0,0,15,244,63,208,0,0,7,252,191,128,0,0,3,254,255,0,0,0,1,255,254,0,0,0,0,255,252,0,0,0,0,127,248,0,0,0,0,63,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0, + // 0x005a Z + 21,29,174,23,1,0,42,170,170,170,170,0,63,255,255,255,255,0,63,255,255,255,255,0,63,255,255,255,255,0,0,0,0,7,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,224,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,208,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,253,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,208,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,253,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,250,170,170,170,64,191,255,255,255,255,128,191,255,255,255,255,128,191,255,255,255,255,128, + // 0x005b [ + 9,36,108,13,3,249,170,170,128,255,255,192,255,255,192,255,170,128,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,255,192,255,255,192,255,255,192,85,85,64, + // 0x005c "\" + 15,29,116,15,0,0,106,64,0,0,63,192,0,0,63,192,0,0,47,224,0,0,15,240,0,0,15,244,0,0,7,248,0,0,3,252,0,0,2,253,0,0,1,254,0,0,0,255,0,0,0,191,64,0,0,63,192,0,0,63,192,0,0,31,224,0,0,15,240,0,0,11,244,0,0,7,248,0,0,3,252,0,0,2,253,0,0,0,255,0,0,0,255,0,0,0,127,128,0,0,63,192,0,0,47,208,0,0,31,224,0,0,15,240,0,0,11,244,0,0,3,252, + // 0x005d ] + 9,36,108,13,1,249,170,170,128,255,255,192,255,255,192,170,191,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,255,255,192,255,255,192,255,255,192,85,85,64, + // 0x005e ^ + 20,19,95,23,1,10,0,0,124,0,0,0,0,190,0,0,0,0,255,0,0,0,2,255,192,0,0,3,255,208,0,0,11,235,240,0,0,15,195,244,0,0,47,194,252,0,0,63,64,253,0,0,127,0,191,0,0,253,0,63,64,1,252,0,47,192,3,248,0,15,208,7,240,0,11,240,15,224,0,3,244,31,192,0,2,252,47,192,0,0,253,63,64,0,0,191,85,0,0,0,21, + // 0x005f _ + 18,4,20,17,0,249,85,85,85,85,64,255,255,255,255,208,255,255,255,255,208,0,0,0,0,0, + // 0x0060 ` + 9,7,21,12,2,24,170,64,0,255,192,0,63,240,0,15,248,0,3,252,0,0,191,0,0,47,64, + // 0x0061 a + 18,23,115,23,2,255,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x0062 b + 20,32,160,25,3,255,85,0,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,191,224,0,191,75,255,254,0,191,127,255,255,192,191,255,170,255,224,191,248,0,63,244,191,224,0,15,252,191,192,0,7,252,191,192,0,3,253,191,128,0,3,254,191,128,0,2,254,191,128,0,2,254,191,128,0,2,254,191,128,0,2,254,191,128,0,3,254,191,192,0,3,253,191,192,0,7,252,191,224,0,15,252,191,240,0,31,248,191,254,65,191,240,191,191,255,255,208,191,31,255,255,64,190,2,255,248,0,0,0,21,64,0, + // 0x0063 c + 16,23,92,20,2,255,0,6,255,228,0,127,255,255,2,255,255,255,11,255,234,253,31,253,0,8,63,240,0,0,127,208,0,0,191,192,0,0,191,128,0,0,255,128,0,0,255,64,0,0,255,64,0,0,255,64,0,0,255,128,0,0,191,192,0,0,127,192,0,0,63,224,0,0,47,244,0,1,15,254,64,111,7,255,255,255,1,255,255,255,0,47,255,248,0,0,85,0, + // 0x0064 d + 20,32,160,25,2,255,0,0,0,1,84,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,27,254,2,253,0,255,255,226,253,3,255,255,250,253,15,255,170,255,253,47,248,0,47,253,63,240,0,15,253,127,208,0,7,253,191,192,0,3,253,191,128,0,3,253,255,128,0,2,253,255,64,0,2,253,255,64,0,2,253,255,64,0,2,253,255,128,0,2,253,191,192,0,3,253,127,192,0,3,253,63,224,0,7,253,63,244,0,15,253,31,254,1,191,253,11,255,255,254,253,2,255,255,240,253,0,127,255,128,253,0,1,80,0,0, + // 0x0065 e + 19,23,115,23,2,255,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x0066 f + 16,31,124,14,0,0,0,0,26,84,0,2,255,255,0,15,255,254,0,63,255,252,0,63,224,4,0,127,192,0,0,191,128,0,0,191,128,0,0,191,128,0,1,255,234,144,47,255,255,240,127,255,255,240,42,255,234,160,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0, + // 0x0067 g + 20,32,160,25,2,246,0,27,254,0,169,0,255,255,224,253,3,255,255,249,253,15,255,171,255,253,31,248,0,63,253,63,240,0,15,253,127,208,0,7,253,191,192,0,3,253,191,128,0,3,253,255,128,0,2,253,255,64,0,2,253,255,64,0,2,253,255,64,0,2,253,255,128,0,2,253,191,192,0,3,253,127,192,0,3,253,63,208,0,7,253,63,240,0,15,253,15,253,0,191,253,11,255,255,254,253,2,255,255,242,253,0,127,255,130,253,0,1,80,2,253,0,0,0,3,253,0,0,0,3,253,0,0,0,7,252,0,0,0,15,252,30,64,0,127,244,31,255,255,255,224,31,255,255,255,128,11,255,255,253,0,0,22,169,64,0, + // 0x0068 h + 19,31,155,25,3,0,85,0,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,111,228,0,191,75,255,255,64,191,111,255,255,208,191,255,170,255,240,191,248,0,47,244,191,240,0,15,248,191,208,0,7,252,191,192,0,7,252,191,192,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252, + // 0x0069 i + 5,30,60,11,3,0,42,0,191,128,255,192,255,128,127,0,0,0,0,0,0,0,106,64,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128, + // 0x006a j + 11,40,120,11,253,246,0,2,160,0,11,248,0,15,252,0,15,248,0,7,240,0,0,0,0,0,0,0,0,0,0,6,164,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,11,248,0,15,244,0,47,240,127,255,240,127,255,192,127,255,64,22,148,0, + // 0x006b k + 19,31,155,22,3,0,85,0,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,26,160,191,128,0,127,224,191,128,1,255,128,191,128,3,254,0,191,128,15,248,0,191,128,63,240,0,191,128,255,192,0,191,67,255,0,0,191,79,252,0,0,191,111,240,0,0,191,191,244,0,0,191,255,252,0,0,191,255,255,0,0,191,224,255,128,0,191,128,127,208,0,191,128,47,244,0,191,128,15,252,0,191,128,3,254,0,191,128,1,255,64,191,128,0,191,208,191,128,0,63,240,191,128,0,31,248, + // 0x006c l + 5,31,62,11,3,0,85,0,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128, + // 0x006d m + 32,22,176,38,3,0,105,0,191,228,0,27,254,0,191,11,255,254,1,255,255,208,191,63,255,255,135,255,255,244,191,255,171,255,239,250,191,252,191,248,0,127,255,64,11,253,191,224,0,47,253,0,3,254,191,208,0,31,252,0,2,254,191,192,0,15,244,0,2,255,191,192,0,15,244,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255,191,128,0,15,240,0,1,255, + // 0x006e n + 19,22,110,25,3,0,105,0,191,228,0,191,11,255,255,64,191,63,255,255,208,191,255,170,255,240,191,248,0,47,248,191,240,0,15,252,191,208,0,7,252,191,192,0,7,252,191,192,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252, + // 0x006f o + 21,23,138,24,2,255,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x0070 p + 20,32,160,25,3,246,105,0,191,228,0,191,11,255,254,0,191,47,255,255,192,191,255,170,255,240,191,248,0,63,244,191,224,0,15,252,191,192,0,7,252,191,192,0,3,253,191,128,0,3,254,191,128,0,2,254,191,128,0,2,254,191,128,0,2,254,191,128,0,2,254,191,128,0,3,254,191,192,0,3,253,191,192,0,7,252,191,224,0,15,252,191,244,0,47,248,191,254,65,191,240,191,191,255,255,208,191,95,255,255,64,191,130,255,248,0,191,128,21,64,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,106,64,0,0,0, + // 0x0071 q + 20,32,160,25,2,246,0,27,254,0,169,0,255,255,224,253,3,255,255,249,253,15,255,170,255,253,47,248,0,47,253,63,240,0,15,253,127,208,0,7,253,191,192,0,3,253,191,128,0,3,253,255,128,0,2,253,255,64,0,2,253,255,64,0,2,253,255,64,0,2,253,255,128,0,2,253,191,192,0,3,253,127,192,0,3,253,63,208,0,11,253,63,240,0,15,253,31,254,0,191,253,11,255,255,254,253,2,255,255,242,253,0,127,255,130,253,0,1,80,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,3,253,0,0,0,1,169, + // 0x0072 r + 13,22,88,17,3,0,105,0,127,192,191,3,255,192,191,15,255,192,191,63,255,192,191,255,64,0,191,248,0,0,191,240,0,0,191,192,0,0,191,192,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0, + // 0x0073 s + 16,23,92,19,2,255,0,111,254,64,11,255,255,248,63,255,255,252,191,249,91,244,255,128,0,96,255,0,0,0,255,64,0,0,255,208,0,0,127,253,0,0,47,255,208,0,7,255,254,0,0,191,255,208,0,7,255,244,0,0,127,252,0,0,7,253,0,0,2,254,0,0,2,254,64,0,3,253,249,0,11,252,255,255,255,248,255,255,255,224,111,255,254,0,0,85,64,0, + // 0x0074 t + 15,28,112,15,0,255,0,21,0,0,0,63,0,0,0,127,0,0,0,191,0,0,0,255,0,0,2,255,170,160,47,255,255,240,127,255,255,240,43,255,170,160,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,0,255,0,0,0,255,64,0,0,255,208,16,0,191,255,244,0,63,255,244,0,11,255,240,0,0,21,0, + // 0x0075 u + 19,23,115,25,3,255,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,2,252,0,5,80,0,0, + // 0x0076 v + 21,22,132,21,0,0,170,64,0,0,106,128,191,192,0,0,255,128,63,192,0,0,255,64,63,224,0,2,255,0,31,240,0,3,254,0,15,244,0,3,252,0,11,248,0,11,248,0,7,252,0,15,244,0,3,253,0,31,240,0,2,254,0,47,224,0,0,255,0,63,192,0,0,255,64,127,192,0,0,127,192,191,64,0,0,63,192,255,0,0,0,47,209,254,0,0,0,31,226,253,0,0,0,15,243,252,0,0,0,11,251,248,0,0,0,3,255,240,0,0,0,3,255,240,0,0,0,1,255,208,0,0,0,0,255,192,0,0, + // 0x0077 w + 32,22,176,32,0,0,106,64,0,10,164,0,1,169,127,192,0,31,252,0,2,254,63,208,0,63,252,0,3,253,47,224,0,63,253,0,7,252,31,240,0,127,254,0,11,248,15,240,0,191,191,0,15,244,15,244,0,254,127,0,15,240,11,248,1,253,63,128,31,240,7,252,2,252,63,192,47,224,3,252,3,252,47,192,63,208,3,253,3,248,31,208,63,192,1,254,7,240,15,224,127,128,0,255,11,240,15,240,191,64,0,255,15,224,7,240,255,0,0,191,79,208,3,244,255,0,0,127,95,192,3,249,254,0,0,63,175,128,2,253,253,0,0,63,255,64,1,254,252,0,0,47,255,0,0,255,252,0,0,31,255,0,0,255,244,0,0,15,254,0,0,127,240,0,0,11,253,0,0,63,240,0, + // 0x0078 x + 20,22,110,22,1,0,106,128,0,2,169,127,208,0,11,252,47,240,0,31,244,15,252,0,63,224,7,253,0,191,192,2,255,1,255,64,0,255,131,254,0,0,63,219,252,0,0,31,255,240,0,0,15,255,224,0,0,3,255,192,0,0,3,255,192,0,0,15,255,224,0,0,47,255,240,0,0,63,219,252,0,0,255,131,254,0,2,255,1,255,64,7,253,0,191,192,15,248,0,63,224,47,240,0,31,244,127,208,0,11,252,255,128,0,3,255, + // 0x0079 y + 21,32,192,21,0,246,106,64,0,0,106,128,191,192,0,0,255,128,63,208,0,0,255,64,47,224,0,2,255,0,31,240,0,3,254,0,15,244,0,3,252,0,11,252,0,11,252,0,3,252,0,15,244,0,2,254,0,31,240,0,1,255,0,47,224,0,0,255,64,63,208,0,0,191,128,127,192,0,0,63,192,191,128,0,0,47,208,255,0,0,0,31,225,255,0,0,0,15,242,253,0,0,0,11,243,252,0,0,0,3,251,248,0,0,0,2,255,244,0,0,0,1,255,240,0,0,0,0,255,224,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,255,64,0,0,0,1,255,0,0,0,0,3,254,0,0,0,0,7,252,0,0,0,0,47,248,0,0,0,127,255,240,0,0,0,127,255,192,0,0,0,127,254,0,0,0,0,26,144,0,0,0,0, + // 0x007a z + 17,22,110,19,1,0,42,170,170,170,0,63,255,255,255,0,63,255,255,255,0,42,170,171,255,0,0,0,3,253,0,0,0,11,252,0,0,0,31,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,192,0,0,0,255,64,0,0,3,254,0,0,0,11,252,0,0,0,31,240,0,0,0,63,229,85,85,0,191,255,255,255,128,191,255,255,255,128,191,255,255,255,128, + // 0x007b { + 13,36,144,15,1,249,0,0,5,128,0,1,255,192,0,11,255,192,0,31,255,192,0,63,244,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,191,128,0,2,255,0,0,255,253,0,0,255,208,0,0,255,244,0,0,175,254,0,0,1,255,64,0,0,191,128,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,208,0,0,63,248,0,0,31,255,192,0,7,255,192,0,0,191,192,0,0,0,64, + // 0x007c | + 4,41,41,22,9,246,20,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,85, + // 0x007d } + 14,36,144,15,1,249,84,0,0,0,191,224,0,0,191,252,0,0,191,255,0,0,2,255,0,0,0,255,64,0,0,191,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,128,0,0,127,192,0,0,63,244,0,0,15,255,208,0,1,191,208,0,2,255,208,0,31,255,128,0,63,224,0,0,127,192,0,0,127,128,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,127,64,0,0,191,64,0,0,255,64,0,7,255,0,0,191,254,0,0,191,248,0,0,191,144,0,0,16,0,0,0, + // 0x007e ~ + 19,6,30,23,2,11,11,250,64,0,4,127,255,244,0,60,255,255,255,235,252,254,107,255,255,252,208,0,111,255,224,0,0,1,170,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Cyrillic_29.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Cyrillic_29.cpp new file mode 100644 index 000000000000..68aa80e8b7f9 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Cyrillic_29.cpp @@ -0,0 +1,322 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Cyrillic 40pt, capital 'A' height: 29px, width: 100%, range: 0x0401-0x0491, glyphs: 74 +extern const uint8_t NotoSans_Medium_Cyrillic_29[10751] = { + 130,29,1,4,145,4,38,246, // unifont_t + // 0x0401 Ё + 16,37,148,22,4,0,1,64,1,64,7,240,15,224,15,244,15,240,11,244,15,240,2,224,7,208,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x0402 Ђ + 255, + // 0x0403 Ѓ + 255, + // 0x0404 Є + 23,30,180,26,2,255,0,0,26,255,249,0,0,1,255,255,255,228,0,31,255,255,255,248,0,127,255,255,255,240,1,255,244,0,7,224,3,255,128,0,0,0,11,253,0,0,0,0,15,248,0,0,0,0,47,240,0,0,0,0,63,224,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,234,170,170,164,0,191,255,255,255,244,0,191,255,255,255,244,0,191,255,255,255,244,0,191,192,0,0,0,0,127,192,0,0,0,0,127,208,0,0,0,0,63,224,0,0,0,0,63,240,0,0,0,0,47,244,0,0,0,0,15,252,0,0,0,0,11,255,0,0,0,0,3,255,208,0,0,16,0,255,254,85,111,240,0,127,255,255,255,240,0,11,255,255,255,240,0,0,191,255,255,128,0,0,1,85,64,0, + // 0x0405 Ѕ + 255, + // 0x0406 І + 12,29,87,14,1,0,106,170,169,127,255,254,127,255,254,11,255,228,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,1,255,128,127,255,253,127,255,254,127,255,254, + // 0x0407 Ї + 12,37,111,14,1,0,20,0,20,191,0,254,255,64,255,191,64,255,45,0,124,0,0,0,0,0,0,0,0,0,106,170,169,127,255,254,127,255,254,11,255,228,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,1,255,128,127,255,253,127,255,254,127,255,254, + // 0x0408 Ј + 255, + // 0x0409 Љ + 255, + // 0x040a Њ + 255, + // 0x040b Ћ + 255, + // 0x040c Ќ + 255, + // 0x040d Ѝ + 255, + // 0x040e Ў + 255, + // 0x040f Џ + 255, + // 0x0410 А + 26,29,203,26,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x0411 Б + 19,29,145,25,4,0,170,170,170,170,128,255,255,255,255,192,255,255,255,255,192,255,255,255,255,192,255,64,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,255,234,64,0,255,255,255,248,0,255,255,255,255,64,255,255,255,255,208,255,0,1,191,240,255,0,0,47,244,255,0,0,15,248,255,0,0,11,252,255,0,0,11,252,255,0,0,11,252,255,0,0,15,248,255,0,0,31,244,255,0,0,191,240,255,170,175,255,208,255,255,255,255,128,255,255,255,253,0,255,255,254,144,0, + // 0x0412 В + 20,29,145,26,4,0,170,170,165,0,0,255,255,255,249,0,255,255,255,255,192,255,255,255,255,240,255,0,1,191,248,255,0,0,31,252,255,0,0,11,252,255,0,0,7,252,255,0,0,7,252,255,0,0,7,252,255,0,0,15,248,255,0,0,47,240,255,170,171,255,192,255,255,255,249,0,255,255,255,254,0,255,255,255,255,224,255,0,0,111,248,255,0,0,11,253,255,0,0,3,255,255,0,0,2,255,255,0,0,1,255,255,0,0,2,255,255,0,0,3,255,255,0,0,7,254,255,0,0,31,253,255,170,171,255,248,255,255,255,255,224,255,255,255,255,64,255,255,255,228,0, + // 0x0413 Г + 17,29,145,21,4,0,170,170,170,170,64,255,255,255,255,64,255,255,255,255,64,255,255,255,255,64,255,64,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0, + // 0x0414 Д + 28,37,3,29,0,248,0,0,10,170,170,170,0,0,0,31,255,255,255,0,0,0,31,255,255,255,0,0,0,47,255,255,255,0,0,0,47,208,1,255,0,0,0,63,192,1,255,0,0,0,63,192,1,255,0,0,0,127,192,1,255,0,0,0,127,192,1,255,0,0,0,191,128,1,255,0,0,0,255,64,1,255,0,0,0,255,0,1,255,0,0,1,255,0,1,255,0,0,2,254,0,1,255,0,0,3,253,0,1,255,0,0,7,252,0,1,255,0,0,11,248,0,1,255,0,0,15,240,0,1,255,0,0,31,240,0,1,255,0,0,63,224,0,1,255,0,0,127,192,0,1,255,0,0,191,192,0,1,255,0,0,255,64,0,1,255,0,2,255,0,0,1,255,0,3,253,0,0,1,255,0,191,255,255,255,255,255,253,255,255,255,255,255,255,254,255,255,255,255,255,255,254,255,255,255,255,255,255,254,255,64,0,0,0,2,254,255,64,0,0,0,2,254,255,64,0,0,0,2,254,255,64,0,0,0,2,254,255,64,0,0,0,2,254,255,64,0,0,0,2,254,255,64,0,0,0,2,254,191,64,0,0,0,1,253, + // 0x0415 Е + 16,29,116,22,4,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x0416 Ж + 35,29,5,35,0,0,42,128,0,0,169,0,0,10,164,47,240,0,1,254,0,0,47,240,15,248,0,1,254,0,0,127,192,3,253,0,1,254,0,0,255,64,1,255,0,1,254,0,3,254,0,0,191,192,1,254,0,11,252,0,0,63,224,1,254,0,31,240,0,0,15,244,1,254,0,127,208,0,0,7,252,1,254,0,255,64,0,0,2,255,1,254,2,254,0,0,0,0,255,129,254,11,252,0,0,0,0,63,209,254,31,240,0,0,0,0,31,241,254,63,208,0,0,0,0,7,254,254,255,128,0,0,0,0,3,255,255,255,64,0,0,0,0,15,253,254,191,192,0,0,0,0,47,241,254,63,240,0,0,0,0,127,209,254,15,248,0,0,0,0,255,129,254,7,253,0,0,0,3,255,1,254,2,255,0,0,0,11,252,1,254,0,255,192,0,0,31,244,1,254,0,63,224,0,0,63,224,1,254,0,31,244,0,0,255,192,1,254,0,11,252,0,2,255,0,1,254,0,3,255,0,7,253,0,1,254,0,1,255,128,15,248,0,1,254,0,0,191,208,63,240,0,1,254,0,0,63,240,191,192,0,1,254,0,0,15,252, + // 0x0417 З + 21,30,180,24,1,255,0,6,255,233,0,0,1,255,255,255,208,0,31,255,255,255,244,0,63,255,170,255,253,0,31,224,0,11,255,0,9,0,0,2,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,1,255,0,0,0,0,3,254,0,0,0,0,47,252,0,0,106,171,255,224,0,0,255,255,249,0,0,0,255,255,254,64,0,0,255,255,255,244,0,0,0,0,127,253,0,0,0,0,3,255,0,0,0,0,0,255,128,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,0,0,0,255,128,96,0,0,3,255,64,127,148,1,111,254,0,127,255,255,255,252,0,127,255,255,255,224,0,11,255,255,253,0,0,0,5,85,0,0,0, + // 0x0418 И + 24,29,174,31,4,0,169,0,0,0,6,169,255,0,0,0,15,254,255,0,0,0,47,254,255,0,0,0,127,254,255,0,0,0,255,254,255,0,0,2,255,254,255,0,0,7,253,254,255,0,0,15,248,254,255,0,0,47,240,254,255,0,0,63,208,254,255,0,0,255,193,254,255,0,2,255,1,254,255,0,3,253,1,254,255,0,15,252,1,254,255,0,31,240,1,254,255,0,63,224,1,254,255,0,255,192,1,254,255,1,255,0,1,254,254,3,254,0,1,254,254,11,252,0,1,254,254,31,244,0,1,254,254,63,224,0,1,254,254,191,192,0,1,254,255,255,64,0,1,254,255,254,0,0,1,254,255,252,0,0,1,254,255,244,0,0,1,254,255,240,0,0,1,254,255,192,0,0,1,254, + // 0x0419 Й + 24,38,228,31,4,0,0,106,0,0,106,0,0,191,64,0,255,0,0,127,128,1,255,0,0,63,224,7,253,0,0,31,255,255,248,0,0,7,255,255,224,0,0,0,106,169,0,0,0,0,0,0,0,0,0,0,0,0,0,0,169,0,0,0,6,169,255,0,0,0,15,254,255,0,0,0,47,254,255,0,0,0,127,254,255,0,0,0,255,254,255,0,0,2,255,254,255,0,0,7,253,254,255,0,0,15,248,254,255,0,0,47,240,254,255,0,0,63,208,254,255,0,0,255,193,254,255,0,2,255,1,254,255,0,3,253,1,254,255,0,15,252,1,254,255,0,31,240,1,254,255,0,63,224,1,254,255,0,255,192,1,254,255,1,255,0,1,254,254,3,254,0,1,254,254,11,252,0,1,254,254,31,244,0,1,254,254,63,224,0,1,254,254,191,192,0,1,254,255,255,64,0,1,254,255,254,0,0,1,254,255,252,0,0,1,254,255,244,0,0,1,254,255,240,0,0,1,254,255,192,0,0,1,254, + // 0x041a К + 21,29,174,25,4,0,170,0,0,0,170,64,255,0,0,3,255,0,255,0,0,11,252,0,255,0,0,47,240,0,255,0,0,127,208,0,255,0,1,255,64,0,255,0,3,254,0,0,255,0,15,252,0,0,255,0,63,240,0,0,255,0,191,192,0,0,255,2,255,0,0,0,255,7,253,0,0,0,255,31,248,0,0,0,255,127,224,0,0,0,255,255,192,0,0,0,255,127,240,0,0,0,255,15,252,0,0,0,255,7,254,0,0,0,255,2,255,128,0,0,255,0,191,208,0,0,255,0,63,240,0,0,255,0,15,252,0,0,255,0,3,255,0,0,255,0,1,255,128,0,255,0,0,127,224,0,255,0,0,47,244,0,255,0,0,15,253,0,255,0,0,3,255,0,255,0,0,0,255,192, + // 0x041b Л + 25,30,210,29,0,255,0,0,42,170,170,170,128,0,0,191,255,255,255,192,0,0,191,255,255,255,192,0,0,255,255,255,255,192,0,0,255,64,0,127,192,0,0,255,0,0,127,192,0,0,255,0,0,127,192,0,1,255,0,0,127,192,0,1,254,0,0,127,192,0,2,254,0,0,127,192,0,2,253,0,0,127,192,0,3,252,0,0,127,192,0,3,252,0,0,127,192,0,3,252,0,0,127,192,0,7,252,0,0,127,192,0,7,248,0,0,127,192,0,11,248,0,0,127,192,0,15,244,0,0,127,192,0,15,240,0,0,127,192,0,15,240,0,0,127,192,0,31,240,0,0,127,192,0,47,224,0,0,127,192,0,63,208,0,0,127,192,0,63,192,0,0,127,192,0,191,192,0,0,127,192,66,255,64,0,0,127,192,255,255,0,0,0,127,192,255,253,0,0,0,127,192,255,244,0,0,0,127,192,21,0,0,0,0,0,0, + // 0x041c М + 29,29,232,37,4,0,170,160,0,0,0,2,170,128,255,244,0,0,0,11,255,192,255,248,0,0,0,15,255,192,255,252,0,0,0,31,255,192,255,253,0,0,0,47,255,192,254,255,0,0,0,63,191,192,254,255,0,0,0,127,127,192,254,127,64,0,0,255,63,192,254,63,192,0,0,253,63,192,254,47,192,0,2,252,63,192,254,31,224,0,3,248,63,192,254,15,240,0,7,244,127,192,254,11,244,0,11,240,127,192,254,7,248,0,15,224,127,192,254,3,252,0,31,208,127,192,254,2,253,0,63,192,127,192,254,0,254,0,63,128,127,192,254,0,255,0,191,0,127,192,254,0,191,64,255,0,127,192,254,0,63,193,253,0,127,192,254,0,63,194,252,0,127,192,254,0,31,211,248,0,127,192,254,0,15,247,244,0,127,192,254,0,11,255,240,0,127,192,254,0,7,255,224,0,127,192,254,0,3,255,192,0,127,192,254,0,2,255,192,0,127,192,254,0,1,255,128,0,127,192,254,0,0,255,0,0,127,192, + // 0x041d Н + 22,29,174,30,4,0,170,0,0,0,10,160,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,234,170,170,191,240,255,255,255,255,255,240,255,255,255,255,255,240,255,255,255,255,255,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240, + // 0x041e О + 27,30,210,31,2,255,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x041f П + 22,29,174,29,4,0,170,170,170,170,170,144,255,255,255,255,255,224,255,255,255,255,255,224,255,255,255,255,255,224,255,64,0,0,63,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224, + // 0x0420 Р + 19,29,145,24,4,0,170,170,148,0,0,255,255,255,224,0,255,255,255,254,0,255,255,255,255,128,255,0,7,255,208,255,0,0,127,240,255,0,0,47,240,255,0,0,15,244,255,0,0,15,244,255,0,0,15,244,255,0,0,15,244,255,0,0,31,240,255,0,0,63,240,255,0,1,255,208,255,150,175,255,192,255,255,255,255,0,255,255,255,248,0,255,255,254,64,0,255,64,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0, + // 0x0421 С + 22,30,180,25,2,255,0,0,27,255,228,0,0,2,255,255,255,208,0,31,255,255,255,224,0,127,255,255,255,208,1,255,244,0,27,192,3,255,128,0,0,0,11,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,63,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,127,208,0,0,0,0,63,224,0,0,0,0,63,240,0,0,0,0,47,244,0,0,0,0,15,252,0,0,0,0,11,255,0,0,0,0,3,255,208,0,0,64,1,255,254,85,175,192,0,127,255,255,255,192,0,15,255,255,255,192,0,1,191,255,254,64,0,0,1,85,0,0, + // 0x0422 Т + 22,29,174,23,0,0,106,170,170,170,170,160,127,255,255,255,255,240,127,255,255,255,255,240,127,255,255,255,255,240,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0, + // 0x0423 У + 24,30,180,25,1,255,170,0,0,0,0,170,255,128,0,0,2,255,191,192,0,0,3,254,63,224,0,0,7,252,47,240,0,0,15,248,15,248,0,0,31,240,11,252,0,0,47,224,3,254,0,0,63,208,1,255,0,0,191,192,0,255,128,0,255,64,0,127,192,1,255,0,0,63,224,3,254,0,0,31,240,7,252,0,0,15,244,11,248,0,0,7,252,15,240,0,0,3,253,47,240,0,0,1,255,63,208,0,0,0,255,191,192,0,0,0,127,255,64,0,0,0,63,255,0,0,0,0,31,254,0,0,0,0,15,252,0,0,0,0,31,248,0,0,0,0,63,240,0,0,0,0,255,208,0,0,58,175,255,192,0,0,63,255,255,0,0,0,63,255,252,0,0,0,63,255,208,0,0,0,1,84,0,0,0,0, + // 0x0424 Ф + 29,30,240,33,2,255,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,5,255,148,0,0,0,0,11,255,255,255,244,0,0,0,191,255,255,255,255,64,0,3,255,255,255,255,255,224,0,15,255,148,191,69,255,248,0,47,252,0,191,64,15,253,0,63,240,0,191,64,3,255,0,127,192,0,191,64,0,255,64,191,128,0,191,64,0,255,128,255,64,0,191,64,0,191,128,255,64,0,191,64,0,127,192,255,0,0,191,64,0,127,192,255,64,0,191,64,0,191,128,255,128,0,191,64,0,191,128,191,192,0,191,64,0,255,64,63,208,0,191,64,2,255,0,63,244,0,191,64,7,254,0,15,254,0,191,64,47,252,0,7,255,250,255,171,255,240,0,1,255,255,255,255,255,192,0,0,47,255,255,255,253,0,0,0,1,191,255,254,144,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,191,64,0,0,0,0,0,0,85,0,0,0,0, + // 0x0425 Х + 24,29,174,24,0,0,42,144,0,0,2,168,47,240,0,0,11,252,15,252,0,0,31,244,7,253,0,0,63,224,2,255,0,0,191,192,0,255,128,0,255,64,0,127,192,3,254,0,0,47,240,7,252,0,0,15,244,15,244,0,0,7,252,47,224,0,0,3,254,63,192,0,0,0,255,255,64,0,0,0,127,255,0,0,0,0,63,252,0,0,0,0,47,252,0,0,0,0,127,254,0,0,0,0,255,255,0,0,0,2,255,191,192,0,0,3,252,63,208,0,0,15,248,31,240,0,0,31,240,15,252,0,0,63,208,3,253,0,0,191,128,2,255,0,1,255,0,0,255,128,3,253,0,0,127,208,11,252,0,0,63,240,31,244,0,0,15,248,63,224,0,0,11,253,191,192,0,0,3,255, + // 0x0426 Ц + 26,37,3,30,4,248,170,0,0,0,26,144,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,0,0,0,47,224,0,255,255,255,255,255,250,128,255,255,255,255,255,255,208,255,255,255,255,255,255,208,255,255,255,255,255,255,208,0,0,0,0,0,63,208,0,0,0,0,0,63,208,0,0,0,0,0,63,208,0,0,0,0,0,63,208,0,0,0,0,0,63,208,0,0,0,0,0,63,208,0,0,0,0,0,63,208,0,0,0,0,0,47,192, + // 0x0427 Ч + 22,29,174,28,3,0,170,0,0,0,26,144,255,0,0,0,63,208,255,0,0,0,63,208,255,0,0,0,63,208,255,0,0,0,63,208,255,0,0,0,63,208,255,0,0,0,63,208,255,0,0,0,63,208,255,0,0,0,63,208,255,0,0,0,63,208,255,0,0,0,63,208,255,0,0,0,63,208,255,64,0,0,63,208,255,128,0,0,63,208,191,208,0,2,255,208,127,254,90,255,255,208,47,255,255,255,255,208,11,255,255,255,191,208,1,191,255,228,63,208,0,0,64,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208, + // 0x0428 Ш + 34,29,5,42,4,0,170,0,0,2,168,0,0,10,160,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,0,0,3,252,0,0,15,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x0429 Щ + 38,37,114,43,4,248,170,0,0,2,168,0,0,26,144,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,0,0,7,252,0,0,47,240,0,255,255,255,255,255,255,255,255,250,144,255,255,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,255,255,208,0,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,0,47,208, + // 0x042a Ъ + 26,29,203,28,0,0,106,170,168,0,0,0,0,255,255,253,0,0,0,0,255,255,253,0,0,0,0,255,255,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,255,255,169,0,0,0,3,255,255,255,224,0,0,3,255,255,255,254,0,0,3,255,255,255,255,128,0,3,253,0,6,255,192,0,3,253,0,0,127,224,0,3,253,0,0,47,240,0,3,253,0,0,31,240,0,3,253,0,0,31,240,0,3,253,0,0,31,240,0,3,253,0,0,47,240,0,3,253,0,0,127,224,0,3,253,0,1,255,192,0,3,255,170,191,255,128,0,3,255,255,255,254,0,0,3,255,255,255,244,0,0,3,255,255,254,64,0, + // 0x042b Ы + 27,29,203,35,4,0,170,0,0,0,0,2,168,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,0,0,0,0,3,252,255,255,233,64,0,3,252,255,255,255,244,0,3,252,255,255,255,255,0,3,252,255,255,255,255,192,3,252,255,0,1,255,224,3,252,255,0,0,63,240,3,252,255,0,0,15,244,3,252,255,0,0,15,248,3,252,255,0,0,15,248,3,252,255,0,0,15,248,3,252,255,0,0,15,244,3,252,255,0,0,47,240,3,252,255,0,0,255,224,3,252,255,170,175,255,192,3,252,255,255,255,255,64,3,252,255,255,255,248,0,3,252,255,255,254,64,0,3,252, + // 0x042c Ь + 20,29,145,26,4,0,170,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,255,250,64,0,255,255,255,253,0,255,255,255,255,192,255,255,255,255,240,255,0,0,127,248,255,0,0,15,252,255,0,0,3,253,255,0,0,3,254,255,0,0,3,254,255,0,0,3,254,255,0,0,3,253,255,0,0,11,252,255,0,0,127,248,255,170,175,255,240,255,255,255,255,208,255,255,255,254,0,255,255,255,144,0, + // 0x042d Э + 22,30,180,26,1,255,1,175,254,144,0,0,111,255,255,254,0,0,127,255,255,255,192,0,63,255,255,255,244,0,46,64,0,127,252,0,0,0,0,11,255,0,0,0,0,2,255,64,0,0,0,0,255,192,0,0,0,0,127,208,0,0,0,0,63,224,0,0,0,0,47,240,0,0,0,0,31,240,0,106,170,170,191,240,0,255,255,255,255,240,0,255,255,255,255,240,0,255,255,255,255,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,47,240,0,0,0,0,63,224,0,0,0,0,63,208,0,0,0,0,191,192,0,0,0,1,255,128,0,0,0,7,255,0,16,0,0,47,253,0,127,149,91,255,248,0,127,255,255,255,224,0,127,255,255,255,64,0,27,255,255,228,0,0,0,21,84,0,0,0, + // 0x042e Ю + 36,30,14,42,4,255,170,0,0,0,6,255,249,0,0,255,0,0,0,127,255,255,224,0,255,0,0,2,255,255,255,252,0,255,0,0,15,255,255,255,255,0,255,0,0,47,253,0,7,255,192,255,0,0,127,240,0,0,191,224,255,0,0,255,192,0,0,47,240,255,0,1,255,64,0,0,15,248,255,0,2,255,0,0,0,11,252,255,0,3,254,0,0,0,7,252,255,0,3,253,0,0,0,3,253,255,0,7,252,0,0,0,3,254,255,234,175,252,0,0,0,3,254,255,255,255,252,0,0,0,2,255,255,255,255,252,0,0,0,2,255,255,255,255,252,0,0,0,2,255,255,0,7,252,0,0,0,2,255,255,0,7,252,0,0,0,3,254,255,0,3,253,0,0,0,3,254,255,0,3,254,0,0,0,3,253,255,0,3,255,0,0,0,11,252,255,0,1,255,64,0,0,15,252,255,0,0,255,192,0,0,31,244,255,0,0,191,224,0,0,127,240,255,0,0,63,248,0,1,255,208,255,0,0,15,255,149,111,255,128,255,0,0,7,255,255,255,254,0,255,0,0,0,255,255,255,244,0,255,0,0,0,27,255,255,64,0,0,0,0,0,0,21,64,0,0, + // 0x042f Я + 21,29,174,26,1,0,0,0,21,170,170,128,0,7,255,255,255,192,0,127,255,255,255,192,1,255,255,255,255,192,3,255,228,0,127,192,11,254,0,0,63,192,15,252,0,0,63,192,15,248,0,0,63,192,15,244,0,0,63,192,15,244,0,0,63,192,15,248,0,0,63,192,11,252,0,0,63,192,3,255,0,0,63,192,2,255,228,0,127,192,0,191,255,255,255,192,0,31,255,255,255,192,0,2,255,255,255,192,0,3,254,85,191,192,0,11,252,0,63,192,0,31,244,0,63,192,0,63,240,0,63,192,0,191,192,0,63,192,1,255,128,0,63,192,3,255,0,0,63,192,11,253,0,0,63,192,15,248,0,0,63,192,63,240,0,0,63,192,127,208,0,0,63,192,255,192,0,0,63,192, + // 0x0430 а + 18,23,115,23,2,255,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x0431 б + 20,32,160,24,2,255,0,0,0,0,21,0,0,1,111,254,0,1,191,255,254,0,15,255,255,255,0,127,255,255,148,1,255,249,64,0,3,255,64,0,0,15,252,0,0,0,31,240,0,0,0,47,224,0,0,0,63,192,0,0,0,63,192,127,249,0,127,199,255,255,192,191,159,255,255,240,191,255,213,191,248,255,253,0,15,252,255,240,0,3,254,255,192,0,2,255,255,128,0,1,255,255,128,0,1,255,191,128,0,1,255,191,128,0,1,255,127,192,0,1,255,127,192,0,1,255,63,224,0,2,254,47,240,0,3,253,15,252,0,15,252,7,255,64,127,244,2,255,255,255,224,0,191,255,255,64,0,11,255,248,0,0,0,85,0,0, + // 0x0432 в + 19,22,110,24,3,0,106,170,169,64,0,191,255,255,253,0,191,255,255,255,192,191,234,175,255,224,191,128,0,63,240,191,128,0,31,240,191,128,0,15,240,191,128,0,31,240,191,128,0,127,208,191,255,255,255,64,191,255,255,244,0,191,255,255,255,64,191,149,86,255,224,191,128,0,31,244,191,128,0,11,248,191,128,0,11,252,191,128,0,11,252,191,128,0,15,248,191,128,5,191,240,191,255,255,255,208,191,255,255,255,64,191,255,255,228,0, + // 0x0433 г + 14,22,88,18,3,0,106,170,170,160,191,255,255,240,191,255,255,240,191,255,255,240,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0, + // 0x0434 д + 24,30,180,24,0,248,0,0,170,170,170,0,0,0,255,255,255,64,0,1,255,255,255,64,0,1,255,170,255,64,0,2,253,0,255,64,0,2,253,0,255,64,0,3,252,0,255,64,0,3,252,0,255,64,0,3,252,0,255,64,0,7,248,0,255,64,0,15,244,0,255,64,0,15,240,0,255,64,0,31,224,0,255,64,0,63,208,0,255,64,0,63,192,0,255,64,0,191,128,0,255,64,0,255,0,0,255,64,3,254,0,0,255,64,27,253,85,85,255,148,127,255,255,255,255,253,127,255,255,255,255,253,127,255,255,255,255,253,127,128,0,0,1,253,127,128,0,0,1,253,127,128,0,0,1,253,127,128,0,0,1,253,127,128,0,0,1,253,127,128,0,0,1,253,127,128,0,0,1,253,42,64,0,0,1,169, + // 0x0435 е + 19,23,115,23,2,255,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x0436 ж + 31,22,176,31,0,0,42,144,0,10,144,0,10,160,31,240,0,31,224,0,47,224,11,252,0,31,224,0,191,192,2,254,0,31,224,1,255,0,0,255,128,31,224,3,253,0,0,63,208,31,224,15,244,0,0,15,240,31,224,47,224,0,0,7,252,31,224,191,192,0,0,2,255,31,225,255,0,0,0,0,191,159,227,252,0,0,0,0,63,239,255,244,0,0,0,0,63,239,255,248,0,0,0,0,255,159,227,253,0,0,0,3,254,31,225,255,0,0,0,11,252,31,224,127,192,0,0,31,240,31,224,47,240,0,0,127,208,31,224,15,248,0,0,255,64,31,224,3,254,0,3,254,0,31,224,0,255,64,15,252,0,31,224,0,127,208,47,240,0,31,224,0,47,240,191,192,0,31,224,0,11,252, + // 0x0437 з + 18,23,115,20,1,255,1,175,254,64,0,63,255,255,248,0,63,255,255,254,0,47,233,91,255,64,8,0,0,191,192,0,0,0,63,192,0,0,0,63,192,0,0,0,127,128,0,0,2,255,0,0,127,255,252,0,0,127,255,208,0,0,127,255,248,0,0,21,107,255,64,0,0,0,191,192,0,0,0,63,208,0,0,0,47,224,0,0,0,47,224,64,0,0,63,208,190,64,6,255,192,191,255,255,255,64,191,255,255,253,0,31,255,255,224,0,0,21,84,0,0, + // 0x0438 и + 21,22,132,27,3,0,106,0,0,2,170,0,191,64,0,11,255,64,191,64,0,15,255,64,191,64,0,63,255,64,191,64,0,127,255,64,191,64,0,255,191,64,191,64,3,253,191,64,191,64,7,252,191,64,191,64,15,240,191,64,191,64,47,224,191,64,191,64,127,192,191,64,191,64,255,64,191,64,191,66,254,0,191,64,191,71,252,0,191,64,191,79,244,0,191,64,191,47,224,0,191,64,191,127,192,0,191,64,191,255,64,0,191,64,191,255,0,0,191,64,191,252,0,0,191,64,191,244,0,0,191,64,191,240,0,0,191,64, + // 0x0439 й + 21,31,186,27,3,0,2,164,0,2,164,0,3,248,0,7,248,0,3,252,0,15,244,0,2,255,64,127,240,0,0,255,255,255,192,0,0,47,255,255,0,0,0,1,174,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,0,0,2,170,0,191,64,0,11,255,64,191,64,0,15,255,64,191,64,0,63,255,64,191,64,0,127,255,64,191,64,0,255,191,64,191,64,3,253,191,64,191,64,7,252,191,64,191,64,15,240,191,64,191,64,47,224,191,64,191,64,127,192,191,64,191,64,255,64,191,64,191,66,254,0,191,64,191,71,252,0,191,64,191,79,244,0,191,64,191,47,224,0,191,64,191,127,192,0,191,64,191,255,64,0,191,64,191,255,0,0,191,64,191,252,0,0,191,64,191,244,0,0,191,64,191,240,0,0,191,64, + // 0x043a к + 19,22,110,22,3,0,106,64,0,26,144,191,128,0,127,192,191,128,1,255,64,191,128,3,253,0,191,128,15,248,0,191,128,63,224,0,191,128,191,192,0,191,130,255,0,0,191,135,252,0,0,191,159,244,0,0,191,191,208,0,0,191,191,224,0,0,191,143,248,0,0,191,135,253,0,0,191,129,255,64,0,191,128,191,192,0,191,128,47,240,0,191,128,15,252,0,191,128,3,255,0,191,128,0,255,128,191,128,0,127,224,191,128,0,31,244, + // 0x043b л + 21,23,138,24,0,255,0,2,170,170,170,64,0,7,255,255,255,128,0,11,255,255,255,128,0,11,255,255,255,128,0,11,240,0,191,128,0,15,240,0,191,128,0,15,240,0,191,128,0,15,240,0,191,128,0,15,240,0,191,128,0,31,224,0,191,128,0,31,224,0,191,128,0,47,208,0,191,128,0,63,192,0,191,128,0,63,192,0,191,128,0,127,192,0,191,128,0,191,128,0,191,128,0,255,64,0,191,128,2,255,0,0,191,128,7,254,0,0,191,128,255,252,0,0,191,128,255,244,0,0,191,128,255,208,0,0,191,128,4,0,0,0,0,0, + // 0x043c м + 25,22,154,31,3,0,106,160,0,0,2,170,64,191,248,0,0,7,255,128,191,252,0,0,15,255,128,191,253,0,0,15,255,128,191,254,0,0,47,255,128,191,191,0,0,63,191,128,191,127,64,0,127,127,128,191,63,192,0,255,63,128,191,31,192,0,253,63,128,191,15,224,2,252,63,128,191,11,240,3,248,63,128,191,7,244,7,244,63,128,191,3,252,15,240,63,128,191,2,252,15,208,63,128,191,0,254,47,192,63,128,191,0,255,63,128,63,128,191,0,127,191,64,63,128,191,0,63,255,0,63,128,191,0,47,254,0,63,128,191,0,15,252,0,63,128,191,0,15,248,0,63,128,191,0,7,244,0,63,128, + // 0x043d н + 20,22,110,26,3,0,106,64,0,1,168,191,128,0,3,253,191,128,0,3,253,191,128,0,3,253,191,128,0,3,253,191,128,0,3,253,191,128,0,3,253,191,128,0,3,253,191,128,0,3,253,191,255,255,255,253,191,255,255,255,253,191,255,255,255,253,191,234,170,171,253,191,128,0,3,253,191,128,0,3,253,191,128,0,3,253,191,128,0,3,253,191,128,0,3,253,191,128,0,3,253,191,128,0,3,253,191,128,0,3,253,191,128,0,3,253, + // 0x043e о + 21,23,138,24,2,255,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x043f п + 19,22,110,25,3,0,106,170,170,170,168,191,255,255,255,252,191,255,255,255,252,191,255,255,255,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252,191,128,0,7,252, + // 0x0440 р + 20,32,160,25,3,246,105,0,191,228,0,191,11,255,254,0,191,47,255,255,192,191,255,170,255,240,191,248,0,63,244,191,224,0,15,252,191,192,0,7,252,191,192,0,3,253,191,128,0,3,254,191,128,0,2,254,191,128,0,2,254,191,128,0,2,254,191,128,0,2,254,191,128,0,3,254,191,192,0,3,253,191,192,0,7,252,191,224,0,15,252,191,244,0,47,248,191,254,65,191,240,191,191,255,255,208,191,95,255,255,64,191,130,255,248,0,191,128,21,64,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,106,64,0,0,0, + // 0x0441 с + 16,23,92,20,2,255,0,6,255,228,0,127,255,255,2,255,255,255,11,255,234,253,31,253,0,8,63,240,0,0,127,208,0,0,191,192,0,0,191,128,0,0,255,128,0,0,255,64,0,0,255,64,0,0,255,64,0,0,255,128,0,0,191,192,0,0,127,192,0,0,63,224,0,0,47,244,0,1,15,254,64,111,7,255,255,255,1,255,255,255,0,47,255,248,0,0,85,0, + // 0x0442 т + 18,22,110,20,1,0,170,170,170,170,160,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0, + // 0x0443 у + 21,32,192,21,0,246,106,64,0,0,106,128,191,192,0,0,255,128,63,208,0,0,255,64,47,224,0,2,255,0,31,240,0,3,254,0,15,244,0,3,252,0,11,252,0,11,252,0,3,252,0,15,244,0,2,254,0,31,240,0,1,255,0,47,224,0,0,255,64,63,208,0,0,191,128,127,192,0,0,63,192,191,128,0,0,47,208,255,0,0,0,31,225,255,0,0,0,15,242,253,0,0,0,11,243,252,0,0,0,3,251,248,0,0,0,2,255,244,0,0,0,1,255,240,0,0,0,0,255,224,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,255,64,0,0,0,1,255,0,0,0,0,3,254,0,0,0,0,7,252,0,0,0,0,47,248,0,0,0,127,255,240,0,0,0,127,255,192,0,0,0,127,254,0,0,0,0,26,144,0,0,0,0, + // 0x0444 ф + 26,41,31,30,2,246,0,0,1,84,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,107,254,144,0,0,0,31,255,255,254,0,0,0,255,255,255,255,224,0,3,255,251,254,255,252,0,15,254,3,252,15,255,0,47,248,3,252,2,255,64,63,224,3,252,0,191,192,127,192,3,252,0,63,208,191,192,3,252,0,63,224,255,128,3,252,0,47,240,255,64,3,252,0,31,240,255,64,3,252,0,31,240,255,128,3,252,0,31,240,191,128,3,252,0,47,240,191,192,3,252,0,63,224,63,208,3,252,0,127,192,63,240,3,252,0,255,192,15,252,3,252,3,255,0,7,255,147,252,111,253,0,1,255,255,255,255,244,0,0,47,255,255,255,192,0,0,2,255,255,249,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,2,168,0,0,0, + // 0x0445 х + 20,22,110,22,1,0,106,128,0,2,169,127,208,0,11,252,47,240,0,31,244,15,252,0,63,224,7,253,0,191,192,2,255,1,255,64,0,255,131,254,0,0,63,219,252,0,0,31,255,240,0,0,15,255,224,0,0,3,255,192,0,0,3,255,192,0,0,15,255,224,0,0,47,255,240,0,0,63,219,252,0,0,255,131,254,0,2,255,1,255,64,7,253,0,191,192,15,248,0,63,224,47,240,0,31,244,127,208,0,11,252,255,128,0,3,255, + // 0x0446 ц + 23,30,180,26,3,248,106,64,0,2,168,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,128,0,3,252,0,191,149,85,87,253,80,191,255,255,255,255,244,191,255,255,255,255,244,191,255,255,255,255,244,0,0,0,0,11,244,0,0,0,0,11,244,0,0,0,0,11,244,0,0,0,0,11,244,0,0,0,0,11,244,0,0,0,0,11,244,0,0,0,0,11,244,0,0,0,0,6,160, + // 0x0447 ч + 19,22,110,25,3,0,170,0,0,6,164,255,0,0,11,248,255,0,0,11,248,255,0,0,11,248,255,0,0,11,248,255,0,0,11,248,255,0,0,11,248,255,0,0,11,248,255,0,0,11,248,255,0,0,11,248,255,128,0,127,248,191,245,91,255,248,63,255,255,255,248,15,255,255,203,248,1,255,248,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248, + // 0x0448 ш + 31,22,176,37,3,0,106,64,0,26,144,0,6,160,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,128,0,63,208,0,15,244,191,149,85,127,229,85,95,244,191,255,255,255,255,255,255,244,191,255,255,255,255,255,255,244,191,255,255,255,255,255,255,244, + // 0x0449 щ + 34,30,14,37,3,248,106,64,0,26,144,0,6,160,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,128,0,63,208,0,15,244,0,191,149,85,127,229,85,95,249,64,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,26,144, + // 0x044a ъ + 26,22,154,28,0,0,106,170,169,0,0,0,0,127,255,254,0,0,0,0,127,255,254,0,0,0,0,127,255,254,0,0,0,0,0,2,254,0,0,0,0,0,2,254,0,0,0,0,0,2,254,0,0,0,0,0,2,254,0,0,0,0,0,2,254,0,0,0,0,0,2,255,255,254,144,0,0,2,255,255,255,254,0,0,2,255,255,255,255,128,0,2,255,85,90,255,208,0,2,254,0,0,63,240,0,2,254,0,0,31,240,0,2,254,0,0,15,240,0,2,254,0,0,31,240,0,2,254,0,0,63,224,0,2,254,0,6,255,208,0,2,255,255,255,255,128,0,2,255,255,255,253,0,0,2,255,255,255,144,0, + // 0x044b ы + 26,22,154,32,3,0,106,64,0,0,0,26,144,191,128,0,0,0,47,224,191,128,0,0,0,47,224,191,128,0,0,0,47,224,191,128,0,0,0,47,224,191,128,0,0,0,47,224,191,128,0,0,0,47,224,191,128,0,0,0,47,224,191,128,0,0,0,47,224,191,255,254,144,0,47,224,191,255,255,254,0,47,224,191,255,255,255,128,47,224,191,149,90,255,208,47,224,191,128,0,63,224,47,224,191,128,0,31,240,47,224,191,128,0,31,240,47,224,191,128,0,31,240,47,224,191,128,0,63,224,47,224,191,128,22,255,192,47,224,191,255,255,255,128,47,224,191,255,255,253,0,47,224,191,255,255,144,0,47,224, + // 0x044c ь + 19,22,110,24,3,0,106,64,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,255,255,164,0,191,255,255,255,128,191,255,255,255,224,191,149,86,191,244,191,128,0,15,252,191,128,0,7,252,191,128,0,3,252,191,128,0,7,252,191,128,0,15,248,191,128,1,191,244,191,255,255,255,224,191,255,255,255,64,191,255,255,228,0, + // 0x044d э + 17,23,115,20,1,255,6,255,228,0,0,127,255,255,128,0,63,255,255,240,0,63,170,191,252,0,20,0,11,253,0,0,0,2,255,0,0,0,0,255,64,0,0,0,255,128,0,0,0,191,128,2,170,170,255,192,7,255,255,255,192,7,255,255,255,192,2,170,170,255,192,0,0,0,191,128,0,0,0,255,128,0,0,0,255,64,0,0,2,255,0,0,0,7,254,0,249,0,127,252,0,255,255,255,240,0,255,255,255,192,0,111,255,249,0,0,0,85,0,0,0, + // 0x044e ю + 29,23,184,34,3,255,106,64,0,1,191,228,0,0,191,128,0,31,255,255,64,0,191,128,0,127,255,255,224,0,191,128,1,255,250,191,248,0,191,128,3,255,0,11,253,0,191,128,7,252,0,3,255,0,191,128,15,248,0,1,255,0,191,128,15,244,0,0,255,64,191,128,31,240,0,0,191,128,191,255,255,240,0,0,191,192,191,255,255,240,0,0,191,192,191,255,255,240,0,0,191,192,191,234,191,240,0,0,191,192,191,128,31,240,0,0,191,128,191,128,15,240,0,0,255,128,191,128,15,244,0,0,255,64,191,128,11,252,0,2,255,0,191,128,3,254,0,3,254,0,191,128,2,255,208,47,252,0,191,128,0,255,255,255,240,0,191,128,0,47,255,255,192,0,191,128,0,7,255,253,0,0,0,0,0,0,21,64,0,0, + // 0x044f я + 19,22,110,23,1,0,0,5,170,170,160,1,255,255,255,244,11,255,255,255,244,31,255,170,175,244,63,240,0,15,244,63,192,0,15,244,63,192,0,15,244,63,192,0,15,244,63,192,0,15,244,63,244,0,15,244,31,255,234,175,244,7,255,255,255,244,0,191,255,255,244,0,63,250,175,244,0,127,192,15,244,0,255,64,15,244,3,254,0,15,244,7,252,0,15,244,15,244,0,15,244,63,240,0,15,244,191,192,0,15,244,255,128,0,15,244, + // 0x0450 ѐ + 255, + // 0x0451 ё + 19,31,155,23,2,255,0,20,0,80,0,0,253,1,252,0,1,255,3,253,0,1,254,2,253,0,0,184,0,184,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x0452 ђ + 255, + // 0x0453 ѓ + 255, + // 0x0454 є + 17,23,115,20,2,255,0,6,255,228,0,0,127,255,255,128,2,255,255,255,64,11,255,170,191,0,31,248,0,5,0,63,240,0,0,0,127,192,0,0,0,191,192,0,0,0,191,128,0,0,0,255,234,170,160,0,255,255,255,244,0,255,255,255,244,0,255,234,170,160,0,255,128,0,0,0,191,128,0,0,0,127,192,0,0,0,63,224,0,0,0,47,244,0,0,0,15,254,64,27,64,7,255,255,255,64,1,255,255,255,64,0,31,255,254,0,0,0,85,64,0, + // 0x0455 ѕ + 255, + // 0x0456 і + 5,30,60,11,3,0,42,0,191,128,255,192,255,128,127,0,0,0,0,0,0,0,106,64,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128, + // 0x0457 ї + 13,30,120,11,255,0,4,0,20,0,63,64,191,0,127,128,255,64,127,128,191,0,46,0,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0, + // 0x0458 ј + 255, + // 0x0459 љ + 255, + // 0x045a њ + 255, + // 0x045b ћ + 255, + // 0x045c ќ + 255, + // 0x045d ѝ + 255, + // 0x045e ў + 255, + // 0x045f џ + 255, + // 0x0460 Ѡ + 255, + // 0x0461 ѡ + 255, + // 0x0462 Ѣ + 255, + // 0x0463 ѣ + 255, + // 0x0464 Ѥ + 255, + // 0x0465 ѥ + 255, + // 0x0466 Ѧ + 255, + // 0x0467 ѧ + 255, + // 0x0468 Ѩ + 255, + // 0x0469 ѩ + 255, + // 0x046a Ѫ + 255, + // 0x046b ѫ + 255, + // 0x046c Ѭ + 255, + // 0x046d ѭ + 255, + // 0x046e Ѯ + 255, + // 0x046f ѯ + 255, + // 0x0470 Ѱ + 255, + // 0x0471 ѱ + 255, + // 0x0472 Ѳ + 255, + // 0x0473 ѳ + 255, + // 0x0474 Ѵ + 255, + // 0x0475 ѵ + 255, + // 0x0476 Ѷ + 255, + // 0x0477 ѷ + 255, + // 0x0478 Ѹ + 255, + // 0x0479 ѹ + 255, + // 0x047a Ѻ + 255, + // 0x047b ѻ + 255, + // 0x047c Ѽ + 255, + // 0x047d ѽ + 255, + // 0x047e Ѿ + 255, + // 0x047f ѿ + 255, + // 0x0480 Ҁ + 255, + // 0x0481 ҁ + 255, + // 0x0482 ҂ + 255, + // 0x0483 ҃ + 255, + // 0x0484 ҄ + 255, + // 0x0485 ҅ + 255, + // 0x0486 ҆ + 255, + // 0x0487 ҇ + 255, + // 0x0488 ҈ + 255, + // 0x0489 ҉ + 255, + // 0x048a Ҋ + 255, + // 0x048b ҋ + 255, + // 0x048c Ҍ + 255, + // 0x048d ҍ + 255, + // 0x048e Ҏ + 255, + // 0x048f ҏ + 255, + // 0x0490 Ґ + 17,35,175,22,4,0,0,0,0,21,64,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,170,170,170,191,192,255,255,255,255,192,255,255,255,255,192,255,255,255,255,192,255,64,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0, + // 0x0491 ґ + 15,28,112,18,3,0,0,0,10,160,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,0,0,11,244,106,170,175,244,191,255,255,244,191,255,255,244,191,234,170,160,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Greek_29.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Greek_29.cpp new file mode 100644 index 000000000000..ffdd5c0b8338 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Greek_29.cpp @@ -0,0 +1,178 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Greek 40pt, capital 'A' height: 29px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 +extern const uint8_t NotoSans_Medium_Greek_29[10140] = { + 130,29,134,3,206,3,38,246, // unifont_t + // 0x0386 Ά + 29,29,232,29,0,0,15,252,0,10,164,0,0,0,15,248,0,31,252,0,0,0,31,240,0,63,253,0,0,0,63,208,0,63,254,0,0,0,63,128,0,191,255,0,0,0,127,0,0,255,127,128,0,0,125,0,1,254,63,192,0,0,0,0,2,253,47,208,0,0,0,0,3,252,31,224,0,0,0,0,7,248,15,240,0,0,0,0,15,244,11,244,0,0,0,0,15,240,7,252,0,0,0,0,47,224,3,252,0,0,0,0,63,208,2,254,0,0,0,0,127,192,1,255,0,0,0,0,191,128,0,255,64,0,0,0,255,0,0,191,128,0,0,1,255,255,255,255,192,0,0,3,255,255,255,255,208,0,0,3,255,255,255,255,240,0,0,11,255,255,255,255,240,0,0,15,244,0,0,15,248,0,0,31,240,0,0,11,252,0,0,47,224,0,0,3,253,0,0,63,208,0,0,3,254,0,0,127,192,0,0,1,255,0,0,255,128,0,0,0,255,64,0,255,64,0,0,0,191,192,2,255,0,0,0,0,127,192, + // 0x0387 · + 255, + // 0x0388 Έ + 27,29,203,30,0,0,15,252,2,170,170,170,168,15,248,3,255,255,255,252,31,240,3,255,255,255,252,63,208,3,255,255,255,252,63,128,3,253,0,0,0,127,0,3,253,0,0,0,125,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,255,170,170,164,0,0,3,255,255,255,244,0,0,3,255,255,255,244,0,0,3,255,255,255,244,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,255,170,170,168,0,0,3,255,255,255,252,0,0,3,255,255,255,252,0,0,3,255,255,255,252, + // 0x0389 Ή + 34,29,5,37,0,0,15,252,2,168,0,0,0,42,128,15,248,3,253,0,0,0,63,208,31,240,3,253,0,0,0,63,208,63,208,3,253,0,0,0,63,208,63,128,3,253,0,0,0,63,208,127,0,3,253,0,0,0,63,208,125,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,255,170,170,170,191,208,0,0,3,255,255,255,255,255,208,0,0,3,255,255,255,255,255,208,0,0,3,255,255,255,255,255,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208,0,0,3,253,0,0,0,63,208, + // 0x038a Ί + 21,29,174,22,0,0,15,252,10,170,170,64,15,248,31,255,255,128,31,240,31,255,255,128,63,208,2,255,249,0,63,128,0,63,208,0,127,0,0,63,208,0,125,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,127,224,0,0,0,11,255,255,64,0,0,31,255,255,128,0,0,31,255,255,128, + // 0x038b ΋ + 255, + // 0x038c Ό + 35,30,14,37,0,255,15,252,0,0,111,255,144,0,0,15,248,0,11,255,255,254,0,0,31,240,0,127,255,255,255,208,0,63,208,1,255,255,255,255,244,0,63,128,7,255,208,0,127,253,0,127,0,15,253,0,0,7,255,0,125,0,47,248,0,0,1,255,128,0,0,63,240,0,0,0,255,192,0,0,127,208,0,0,0,127,208,0,0,191,192,0,0,0,63,224,0,0,255,128,0,0,0,47,240,0,0,255,128,0,0,0,47,240,0,0,255,64,0,0,0,31,240,0,1,255,64,0,0,0,31,240,0,1,255,0,0,0,0,31,244,0,1,255,64,0,0,0,31,240,0,0,255,64,0,0,0,31,240,0,0,255,64,0,0,0,31,240,0,0,255,128,0,0,0,47,240,0,0,255,192,0,0,0,63,224,0,0,191,192,0,0,0,63,208,0,0,63,224,0,0,0,191,192,0,0,63,240,0,0,0,255,128,0,0,31,252,0,0,3,255,0,0,0,11,255,64,0,31,254,0,0,0,3,255,249,86,255,252,0,0,0,0,255,255,255,255,224,0,0,0,0,47,255,255,255,64,0,0,0,0,2,255,255,244,0,0,0,0,0,0,1,84,0,0,0, + // 0x038d ΍ + 255, + // 0x038e Ύ + 32,29,232,33,0,0,15,252,26,160,0,0,0,170,15,248,15,248,0,0,2,255,31,240,11,252,0,0,3,253,63,208,3,254,0,0,11,252,63,128,2,255,0,0,15,244,127,0,0,255,128,0,47,240,125,0,0,127,192,0,63,208,0,0,0,63,224,0,191,128,0,0,0,31,240,1,255,0,0,0,0,15,248,3,254,0,0,0,0,7,252,7,252,0,0,0,0,3,255,15,248,0,0,0,0,0,255,95,240,0,0,0,0,0,191,255,208,0,0,0,0,0,63,255,192,0,0,0,0,0,47,255,64,0,0,0,0,0,15,255,0,0,0,0,0,0,11,253,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0, + // 0x038f Ώ + 34,29,5,35,0,0,15,252,0,1,191,254,64,0,0,15,248,0,31,255,255,248,0,0,31,240,0,255,255,255,255,128,0,63,208,3,255,255,191,255,224,0,63,128,15,255,64,0,191,248,0,127,0,63,252,0,0,31,253,0,125,0,127,240,0,0,7,255,0,0,0,255,192,0,0,2,255,64,0,0,255,128,0,0,0,255,192,0,1,255,0,0,0,0,191,192,0,2,255,0,0,0,0,127,208,0,3,255,0,0,0,0,63,208,0,3,254,0,0,0,0,63,208,0,3,254,0,0,0,0,63,224,0,3,254,0,0,0,0,63,208,0,3,254,0,0,0,0,63,208,0,2,255,0,0,0,0,63,192,0,1,255,0,0,0,0,127,192,0,0,255,64,0,0,0,191,128,0,0,191,128,0,0,0,255,64,0,0,63,192,0,0,2,255,0,0,0,47,224,0,0,3,252,0,0,0,15,248,0,0,15,244,0,0,0,3,253,0,0,63,224,0,0,0,0,255,128,0,255,128,0,0,2,170,255,224,3,255,170,160,0,3,255,255,240,7,255,255,240,0,3,255,255,240,7,255,255,240,0,3,255,255,240,7,255,255,240, + // 0x0390 ΐ + 255, + // 0x0391 Α + 26,29,203,26,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x0392 Β + 20,29,145,26,4,0,170,170,165,0,0,255,255,255,249,0,255,255,255,255,192,255,255,255,255,240,255,0,1,191,248,255,0,0,31,252,255,0,0,11,252,255,0,0,7,252,255,0,0,7,252,255,0,0,7,252,255,0,0,15,248,255,0,0,47,240,255,170,171,255,192,255,255,255,249,0,255,255,255,254,0,255,255,255,255,224,255,0,0,111,248,255,0,0,11,253,255,0,0,3,255,255,0,0,2,255,255,0,0,1,255,255,0,0,2,255,255,0,0,3,255,255,0,0,7,254,255,0,0,31,253,255,170,171,255,248,255,255,255,255,224,255,255,255,255,64,255,255,255,228,0, + // 0x0393 Γ + 15,29,116,20,4,0,170,170,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0, + // 0x0394 Δ + 26,29,203,26,0,0,0,0,6,168,0,0,0,0,0,11,254,0,0,0,0,0,15,255,0,0,0,0,0,47,255,64,0,0,0,0,63,255,192,0,0,0,0,127,175,192,0,0,0,0,191,95,224,0,0,0,0,255,15,240,0,0,0,1,254,11,244,0,0,0,3,252,7,252,0,0,0,7,252,3,252,0,0,0,11,244,2,254,0,0,0,15,240,0,255,0,0,0,31,224,0,255,64,0,0,63,208,0,127,192,0,0,63,192,0,63,192,0,0,191,128,0,47,224,0,0,255,0,0,31,240,0,1,255,0,0,15,244,0,3,253,0,0,11,248,0,3,252,0,0,3,252,0,11,248,0,0,3,253,0,15,244,0,0,1,255,0,31,240,0,0,0,255,64,63,224,0,0,0,191,128,63,255,255,255,255,255,192,191,255,255,255,255,255,208,191,255,255,255,255,255,224,191,255,255,255,255,255,224, + // 0x0395 Ε + 16,29,116,22,4,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x0396 Ζ + 21,29,174,23,1,0,42,170,170,170,170,0,63,255,255,255,255,0,63,255,255,255,255,0,63,255,255,255,255,0,0,0,0,7,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,224,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,208,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,253,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,208,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,253,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,250,170,170,170,64,191,255,255,255,255,128,191,255,255,255,255,128,191,255,255,255,255,128, + // 0x0397 Η + 22,29,174,30,4,0,170,0,0,0,10,160,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,234,170,170,191,240,255,255,255,255,255,240,255,255,255,255,255,240,255,255,255,255,255,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240, + // 0x0398 Θ + 27,30,210,31,2,255,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,85,85,84,11,252,191,192,255,255,253,11,252,191,192,255,255,253,11,252,191,192,255,255,253,11,252,191,192,85,85,84,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x0399 Ι + 12,29,87,14,1,0,106,170,169,127,255,254,127,255,254,11,255,228,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,1,255,128,127,255,253,127,255,254,127,255,254, + // 0x039a Κ + 21,29,174,25,4,0,170,0,0,0,170,64,255,0,0,3,255,0,255,0,0,15,252,0,255,0,0,47,244,0,255,0,0,127,208,0,255,0,1,255,128,0,255,0,3,254,0,0,255,0,15,252,0,0,255,0,63,240,0,0,255,0,255,192,0,0,255,2,255,0,0,0,255,11,253,0,0,0,255,31,244,0,0,0,255,127,244,0,0,0,255,255,252,0,0,0,255,255,255,0,0,0,255,242,255,128,0,0,255,192,255,208,0,0,255,0,63,240,0,0,255,0,31,248,0,0,255,0,15,253,0,0,255,0,3,255,0,0,255,0,1,255,128,0,255,0,0,191,208,0,255,0,0,63,240,0,255,0,0,15,252,0,255,0,0,11,254,0,255,0,0,3,255,0,255,0,0,0,255,192, + // 0x039b Λ + 25,29,203,25,0,0,0,0,10,168,0,0,0,0,0,15,252,0,0,0,0,0,31,254,0,0,0,0,0,63,255,0,0,0,0,0,63,255,64,0,0,0,0,191,127,128,0,0,0,0,255,63,192,0,0,0,1,254,47,208,0,0,0,2,253,15,224,0,0,0,3,252,15,240,0,0,0,7,248,11,244,0,0,0,11,244,3,252,0,0,0,15,240,3,252,0,0,0,31,224,2,253,0,0,0,63,208,1,255,0,0,0,63,192,0,255,0,0,0,191,128,0,191,128,0,0,255,64,0,127,192,0,0,255,0,0,63,208,0,2,254,0,0,47,224,0,3,253,0,0,31,240,0,7,252,0,0,15,244,0,11,248,0,0,11,248,0,15,244,0,0,7,252,0,31,240,0,0,3,253,0,47,224,0,0,2,255,0,63,208,0,0,1,255,0,127,192,0,0,0,255,128,255,128,0,0,0,191,192, + // 0x039c Μ + 29,29,232,37,4,0,170,160,0,0,0,2,170,128,255,244,0,0,0,11,255,192,255,248,0,0,0,15,255,192,255,252,0,0,0,31,255,192,255,253,0,0,0,47,255,192,254,255,0,0,0,63,191,192,254,255,0,0,0,127,127,192,254,127,64,0,0,255,63,192,254,63,192,0,0,253,63,192,254,47,192,0,2,252,63,192,254,31,224,0,3,248,63,192,254,15,240,0,7,244,127,192,254,11,244,0,11,240,127,192,254,7,248,0,15,224,127,192,254,3,252,0,31,208,127,192,254,2,253,0,63,192,127,192,254,0,254,0,63,128,127,192,254,0,255,0,191,0,127,192,254,0,191,64,255,0,127,192,254,0,63,193,253,0,127,192,254,0,63,194,252,0,127,192,254,0,31,211,248,0,127,192,254,0,15,247,244,0,127,192,254,0,11,255,240,0,127,192,254,0,7,255,224,0,127,192,254,0,3,255,192,0,127,192,254,0,2,255,192,0,127,192,254,0,1,255,128,0,127,192,254,0,0,255,0,0,127,192, + // 0x039d Ν + 23,29,174,31,4,0,170,128,0,0,1,168,255,224,0,0,3,252,255,244,0,0,3,252,255,252,0,0,3,252,255,254,0,0,3,252,255,255,0,0,3,252,254,255,192,0,3,252,253,127,208,0,3,252,254,63,240,0,3,252,254,15,248,0,3,252,254,11,253,0,3,252,254,3,255,0,3,252,254,1,255,128,3,252,254,0,191,192,3,252,254,0,63,240,3,252,254,0,31,244,3,252,254,0,15,252,2,252,254,0,3,254,2,252,254,0,2,255,66,252,254,0,0,255,194,252,254,0,0,127,226,252,254,0,0,47,242,252,254,0,0,15,254,252,254,0,0,7,255,252,254,0,0,3,255,252,254,0,0,0,255,252,254,0,0,0,191,252,254,0,0,0,63,252,254,0,0,0,31,252, + // 0x039e Ξ + 21,29,174,25,2,0,26,170,170,170,169,0,63,255,255,255,255,0,63,255,255,255,255,0,63,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,255,255,255,240,0,3,255,255,255,240,0,3,255,255,255,240,0,3,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,64,191,255,255,255,255,128,191,255,255,255,255,128,191,255,255,255,255,128, + // 0x039f Ο + 27,30,210,31,2,255,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x03a0 Π + 22,29,174,30,4,0,170,170,170,170,170,144,255,255,255,255,255,224,255,255,255,255,255,224,255,255,255,255,255,224,255,64,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224,255,0,0,0,47,224, + // 0x03a1 Ρ + 19,29,145,24,4,0,170,170,148,0,0,255,255,255,224,0,255,255,255,254,0,255,255,255,255,128,255,0,7,255,208,255,0,0,127,240,255,0,0,47,240,255,0,0,15,244,255,0,0,15,244,255,0,0,15,244,255,0,0,15,244,255,0,0,31,240,255,0,0,63,240,255,0,1,255,208,255,150,175,255,192,255,255,255,255,0,255,255,255,248,0,255,255,254,64,0,255,64,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0, + // 0x03a2 ΢ + 255, + // 0x03a3 Σ + 21,29,174,23,1,0,42,170,170,170,170,0,63,255,255,255,255,0,63,255,255,255,255,0,63,255,255,255,255,0,47,248,0,0,0,0,15,253,0,0,0,0,3,255,0,0,0,0,0,255,192,0,0,0,0,127,240,0,0,0,0,31,248,0,0,0,0,11,254,0,0,0,0,2,255,64,0,0,0,0,255,208,0,0,0,0,63,240,0,0,0,0,47,240,0,0,0,0,127,192,0,0,0,1,255,64,0,0,0,3,254,0,0,0,0,15,248,0,0,0,0,47,240,0,0,0,0,191,192,0,0,0,1,255,64,0,0,0,3,253,0,0,0,0,15,248,0,0,0,0,63,240,0,0,0,0,191,250,175,255,255,64,191,255,255,255,255,128,191,255,255,255,255,128,191,255,255,255,255,128, + // 0x03a4 Τ + 22,29,174,23,0,0,106,170,170,170,170,160,127,255,255,255,255,240,127,255,255,255,255,240,127,255,255,255,255,240,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0, + // 0x03a5 Υ + 23,29,174,23,0,0,106,64,0,0,6,168,127,192,0,0,15,248,63,240,0,0,31,240,31,244,0,0,63,224,15,252,0,0,127,192,7,253,0,0,255,128,2,255,0,1,255,0,0,255,64,3,253,0,0,191,192,11,252,0,0,63,208,15,244,0,0,47,240,47,240,0,0,15,244,63,208,0,0,7,252,191,128,0,0,3,254,255,0,0,0,1,255,254,0,0,0,0,255,252,0,0,0,0,127,248,0,0,0,0,63,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0, + // 0x03a6 Φ + 31,30,240,34,2,255,0,0,0,42,128,0,0,0,0,0,0,63,208,0,0,0,0,0,0,63,208,0,0,0,0,0,107,255,254,144,0,0,0,27,255,255,255,255,64,0,0,191,255,255,255,255,244,0,3,255,255,191,255,255,254,0,15,255,64,63,208,27,255,64,47,248,0,63,208,1,255,192,63,224,0,63,208,0,63,224,127,192,0,63,208,0,47,240,191,128,0,63,208,0,15,240,255,64,0,63,208,0,15,244,255,64,0,63,208,0,15,244,255,64,0,63,208,0,15,244,255,64,0,63,208,0,15,244,255,128,0,63,208,0,15,240,191,192,0,63,208,0,31,240,63,208,0,63,208,0,63,224,63,240,0,63,208,0,191,192,15,253,0,63,208,3,255,128,7,255,228,63,209,111,255,0,1,255,255,255,255,255,252,0,0,47,255,255,255,255,208,0,0,2,255,255,255,249,0,0,0,0,1,127,229,0,0,0,0,0,0,63,208,0,0,0,0,0,0,63,208,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,0,0,0,0, + // 0x03a7 Χ + 24,29,174,24,0,0,42,144,0,0,2,168,47,240,0,0,11,252,15,252,0,0,31,244,7,253,0,0,63,224,2,255,0,0,191,192,0,255,128,0,255,64,0,127,192,3,254,0,0,47,240,7,252,0,0,15,244,15,244,0,0,7,252,47,224,0,0,3,254,63,192,0,0,0,255,255,64,0,0,0,127,255,0,0,0,0,63,252,0,0,0,0,47,252,0,0,0,0,127,254,0,0,0,0,255,255,0,0,0,2,255,191,192,0,0,3,252,63,208,0,0,15,248,31,240,0,0,31,240,15,252,0,0,63,208,3,253,0,0,191,128,2,255,0,1,255,0,0,255,128,3,253,0,0,127,208,11,252,0,0,63,240,31,244,0,0,15,248,63,224,0,0,11,253,191,192,0,0,3,255, + // 0x03a8 Ψ + 27,29,203,34,3,0,42,64,0,169,0,2,168,127,192,1,255,0,7,252,127,192,1,255,0,7,252,127,192,1,255,0,7,252,127,192,1,255,0,7,252,127,192,1,255,0,7,252,127,192,1,255,0,7,252,127,192,1,255,0,7,252,127,192,1,255,0,7,252,127,192,1,255,0,7,252,127,192,1,255,0,7,252,127,192,1,255,0,7,252,63,192,1,255,0,11,248,63,192,1,255,0,15,248,63,224,1,255,0,15,244,31,240,1,255,0,47,240,15,252,1,255,0,191,208,7,255,145,255,7,255,192,2,255,255,255,255,255,0,0,127,255,255,255,248,0,0,11,255,255,255,128,0,0,0,22,255,80,0,0,0,0,1,255,0,0,0,0,0,1,255,0,0,0,0,0,1,255,0,0,0,0,0,1,255,0,0,0,0,0,1,255,0,0,0,0,0,1,255,0,0,0,0,0,1,255,0,0,0, + // 0x03a9 Ω + 27,29,203,29,1,0,0,0,27,255,160,0,0,0,7,255,255,255,64,0,0,47,255,255,255,224,0,0,255,255,239,255,252,0,2,255,224,0,47,255,0,7,255,0,0,3,255,128,15,252,0,0,0,255,208,47,244,0,0,0,127,224,63,240,0,0,0,47,240,63,224,0,0,0,31,244,127,208,0,0,0,15,248,191,192,0,0,0,15,248,191,192,0,0,0,15,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,11,248,127,192,0,0,0,15,248,63,208,0,0,0,15,244,63,224,0,0,0,31,240,31,240,0,0,0,47,224,15,244,0,0,0,63,192,7,252,0,0,0,255,64,2,255,0,0,2,255,0,0,191,128,0,11,252,0,0,47,240,0,47,224,0,170,175,252,0,255,234,168,255,255,252,0,255,255,252,255,255,252,0,255,255,252,255,255,252,0,255,255,252, + // 0x03aa Ϊ + 255, + // 0x03ab Ϋ + 255, + // 0x03ac ά + 23,32,192,25,2,255,0,0,11,253,0,0,0,0,15,252,0,0,0,0,15,244,0,0,0,0,31,224,0,0,0,0,47,192,0,0,0,0,63,64,0,0,0,0,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,253,0,169,0,0,255,255,208,253,0,3,255,255,249,253,0,15,255,170,255,253,0,47,248,0,47,253,0,63,240,0,15,253,0,127,192,0,7,253,0,191,192,0,3,253,0,191,128,0,3,253,0,255,128,0,2,253,0,255,64,0,2,253,0,255,64,0,2,253,0,255,64,0,2,253,0,255,128,0,2,253,0,191,128,0,3,253,0,127,192,0,3,253,0,63,208,0,11,253,0,63,240,0,15,254,0,31,254,0,191,255,64,11,255,255,253,255,244,2,255,255,240,191,244,0,127,255,128,63,244,0,1,80,0,1,64, + // 0x03ad έ + 17,32,160,19,1,255,0,0,11,253,0,0,0,15,248,0,0,0,31,240,0,0,0,47,208,0,0,0,63,192,0,0,0,63,0,0,0,0,125,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,164,0,1,255,255,255,64,7,255,255,255,128,15,254,86,255,0,31,244,0,6,0,31,224,0,0,0,31,224,0,0,0,31,240,0,0,0,15,248,0,0,0,3,255,255,128,0,0,127,255,192,0,1,255,255,192,0,15,254,149,64,0,47,240,0,0,0,63,208,0,0,0,127,192,0,0,0,127,192,0,0,0,63,224,0,0,0,63,249,0,27,64,15,255,255,255,64,7,255,255,255,64,0,191,255,254,0,0,1,85,0,0, + // 0x03ae ή + 19,41,205,25,3,246,0,0,255,192,0,0,1,255,64,0,0,2,254,0,0,0,3,252,0,0,0,7,244,0,0,0,11,240,0,0,0,11,192,0,0,0,0,0,0,0,0,0,0,0,0,105,0,191,228,0,191,11,255,255,0,191,63,255,255,192,191,255,170,255,224,191,248,0,63,240,191,240,0,15,244,191,208,0,15,244,191,192,0,11,248,191,192,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,6,164, + // 0x03af ί + 10,32,96,14,3,255,2,255,64,3,254,0,7,252,0,11,244,0,15,240,0,31,192,0,31,64,0,0,0,0,0,0,0,106,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,191,128,0,191,192,0,127,224,16,63,255,240,31,255,240,3,255,240,0,21,64, + // 0x03b0 ΰ + 255, + // 0x03b1 α + 23,23,138,25,2,255,0,27,253,0,169,0,0,255,255,208,253,0,3,255,255,249,253,0,15,255,170,255,253,0,47,248,0,47,253,0,63,240,0,15,253,0,127,192,0,7,253,0,191,192,0,3,253,0,191,128,0,3,253,0,255,128,0,2,253,0,255,64,0,2,253,0,255,64,0,2,253,0,255,64,0,2,253,0,255,128,0,2,253,0,191,128,0,3,253,0,127,192,0,3,253,0,63,208,0,11,253,0,63,240,0,15,254,0,31,254,0,191,255,64,11,255,255,253,255,244,2,255,255,240,191,244,0,127,255,128,63,244,0,1,80,0,1,64, + // 0x03b2 β + 20,41,205,25,3,246,0,1,105,64,0,0,127,255,248,0,3,255,255,255,0,15,255,255,255,192,31,252,0,255,224,63,240,0,63,240,127,192,0,31,240,127,192,0,15,244,191,128,0,15,244,191,128,0,15,240,191,128,0,31,240,191,128,0,63,208,191,128,0,191,192,191,130,171,254,0,191,131,255,224,0,191,131,255,249,0,191,130,175,255,128,191,128,0,127,240,191,128,0,15,248,191,128,0,7,252,191,128,0,3,253,191,128,0,2,254,191,128,0,2,254,191,128,0,2,254,191,128,0,3,254,191,128,0,7,253,191,192,0,15,252,191,249,0,191,244,191,255,255,255,224,191,255,255,255,64,191,159,255,248,0,191,128,85,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,106,64,0,0,0, + // 0x03b3 γ + 20,31,155,21,0,247,170,64,0,0,170,191,128,0,1,255,127,192,0,1,255,63,208,0,1,255,47,224,0,1,255,15,240,0,2,254,15,244,0,2,254,7,248,0,3,253,3,252,0,3,252,3,253,0,3,252,1,254,0,7,248,0,255,0,11,244,0,191,64,15,240,0,127,128,47,224,0,63,192,63,192,0,47,208,191,128,0,31,224,255,0,0,15,243,253,0,0,11,255,252,0,0,3,255,240,0,0,3,255,192,0,0,2,255,64,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,0,85,0,0, + // 0x03b4 δ + 21,32,192,24,1,255,0,0,22,148,0,0,0,2,255,255,208,0,0,15,255,255,252,0,0,63,255,255,254,0,0,191,208,2,252,0,0,255,64,0,36,0,0,255,0,0,0,0,0,255,64,0,0,0,0,191,192,0,0,0,0,127,244,0,0,0,0,31,254,0,0,0,0,7,255,224,0,0,0,2,255,253,0,0,0,47,255,255,128,0,0,255,224,255,240,0,3,255,0,47,248,0,15,252,0,7,253,0,31,240,0,2,255,0,63,224,0,0,255,0,63,208,0,0,255,64,63,192,0,0,191,128,127,192,0,0,191,128,127,192,0,0,191,128,63,192,0,0,191,128,63,224,0,0,255,64,47,240,0,2,255,0,31,252,0,7,254,0,11,255,64,111,252,0,3,255,255,255,244,0,0,191,255,255,192,0,0,11,255,253,0,0,0,0,21,64,0,0, + // 0x03b5 ε + 17,23,115,19,1,255,0,27,255,164,0,1,255,255,255,64,7,255,255,255,128,15,254,86,255,0,31,244,0,6,0,31,224,0,0,0,31,224,0,0,0,31,240,0,0,0,15,248,0,0,0,3,255,255,128,0,0,127,255,192,0,1,255,255,192,0,15,254,149,64,0,47,240,0,0,0,63,208,0,0,0,127,192,0,0,0,127,192,0,0,0,63,224,0,0,0,63,249,0,27,64,15,255,255,255,64,7,255,255,255,64,0,191,255,254,0,0,1,85,0,0, + // 0x03b6 ζ + 17,40,200,19,2,247,21,85,85,85,0,63,255,255,255,128,63,255,255,255,128,47,255,251,255,64,0,0,3,254,0,0,0,11,252,0,0,0,31,240,0,0,0,63,208,0,0,0,255,128,0,0,3,255,0,0,0,11,252,0,0,0,31,244,0,0,0,63,224,0,0,0,255,192,0,0,2,255,0,0,0,3,253,0,0,0,15,248,0,0,0,31,240,0,0,0,63,224,0,0,0,127,192,0,0,0,191,192,0,0,0,255,128,0,0,0,255,64,0,0,0,255,128,0,0,0,255,192,0,0,0,191,208,0,0,0,63,248,0,0,0,47,255,144,0,0,11,255,255,144,0,1,255,255,252,0,0,31,255,255,0,0,0,111,255,64,0,0,1,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,0,0,0,1,255,0,0,0,2,253,0,0,0,3,252,0,0,0,0,0,0, + // 0x03b7 η + 19,32,160,25,3,246,105,0,191,228,0,191,11,255,255,0,191,63,255,255,192,191,255,170,255,224,191,248,0,63,240,191,240,0,15,244,191,208,0,15,244,191,192,0,11,248,191,192,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,191,128,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,6,164, + // 0x03b8 θ + 20,32,160,24,2,255,0,1,105,64,0,0,47,255,244,0,0,255,255,255,0,3,255,255,255,128,11,253,0,191,208,15,244,0,31,240,47,240,0,15,244,63,208,0,7,248,63,192,0,3,252,127,192,0,3,253,191,128,0,2,253,191,128,0,2,254,255,64,0,2,254,255,64,0,1,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,128,0,2,255,255,64,0,1,255,191,64,0,2,254,191,128,0,2,254,127,128,0,2,253,127,192,0,3,253,63,192,0,3,252,47,208,0,7,252,31,240,0,15,244,15,244,0,47,240,7,254,0,191,208,2,255,255,255,128,0,191,255,254,0,0,31,255,244,0,0,0,85,0,0, + // 0x03b9 ι + 10,23,69,14,3,255,106,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,255,64,0,191,128,0,191,192,0,127,224,16,63,255,240,31,255,240,3,255,240,0,21,64, + // 0x03ba κ + 19,22,110,22,3,0,106,64,0,26,160,191,128,0,127,224,191,128,0,255,128,191,128,3,255,0,191,128,15,252,0,191,128,47,240,0,191,128,191,208,0,191,129,255,64,0,191,131,254,0,0,191,143,248,0,0,191,191,248,0,0,191,255,253,0,0,191,255,255,0,0,191,244,255,192,0,191,192,127,224,0,191,128,47,244,0,191,128,15,252,0,191,128,3,255,0,191,128,1,255,128,191,128,0,191,208,191,128,0,63,240,191,128,0,15,248, + // 0x03bb λ + 22,32,192,21,0,255,106,80,0,0,0,0,255,254,0,0,0,0,255,255,192,0,0,0,255,255,224,0,0,0,0,47,244,0,0,0,0,11,252,0,0,0,0,3,252,0,0,0,0,2,254,0,0,0,0,0,255,0,0,0,0,0,255,64,0,0,0,1,255,192,0,0,0,2,255,192,0,0,0,3,255,224,0,0,0,7,255,240,0,0,0,11,251,244,0,0,0,15,231,248,0,0,0,31,211,252,0,0,0,63,195,253,0,0,0,63,129,255,0,0,0,191,64,255,0,0,0,255,0,191,128,0,1,255,0,127,192,0,2,254,0,63,208,0,3,252,0,47,224,0,7,252,0,31,240,0,15,248,0,15,244,0,15,244,0,11,252,0,31,240,0,7,253,0,63,224,0,3,255,208,63,208,0,1,255,208,191,192,0,0,191,208,0,0,0,0,5,0, + // 0x03bc μ + 22,32,192,26,3,246,106,64,0,2,164,0,191,128,0,7,252,0,191,128,0,7,252,0,191,128,0,7,252,0,191,128,0,7,252,0,191,128,0,7,252,0,191,128,0,7,252,0,191,128,0,7,252,0,191,128,0,7,252,0,191,128,0,7,252,0,191,128,0,7,252,0,191,128,0,7,252,0,191,128,0,7,252,0,191,128,0,11,252,0,191,128,0,11,252,0,191,128,0,15,252,0,191,192,0,31,252,0,191,224,0,63,252,0,191,249,2,255,254,0,191,255,255,247,255,224,191,255,255,225,255,224,191,95,255,64,191,224,191,64,80,0,5,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,191,128,0,0,0,0,106,64,0,0,0,0, + // 0x03bd ν + 20,22,110,21,0,0,170,64,0,0,170,191,128,0,1,255,127,192,0,1,255,63,208,0,1,255,47,224,0,1,255,15,240,0,2,254,15,244,0,2,254,7,248,0,3,253,3,252,0,3,252,3,253,0,3,252,1,254,0,7,248,0,255,0,11,244,0,191,64,15,240,0,127,128,47,224,0,63,192,63,192,0,47,208,191,128,0,31,224,255,0,0,15,243,254,0,0,11,255,252,0,0,3,255,240,0,0,3,255,208,0,0,2,255,64,0, + // 0x03be ξ + 17,40,200,20,2,247,21,85,85,85,64,47,255,255,255,128,47,255,255,255,128,47,239,255,234,64,0,127,144,0,0,2,253,0,0,0,11,240,0,0,0,31,240,0,0,0,31,224,0,0,0,47,224,0,0,0,47,224,0,0,0,31,244,0,0,0,15,253,0,0,0,3,255,234,170,0,0,127,255,255,0,0,47,255,255,0,2,255,254,170,0,15,253,0,0,0,47,240,0,0,0,63,192,0,0,0,191,128,0,0,0,255,64,0,0,0,255,64,0,0,0,255,128,0,0,0,255,192,0,0,0,191,208,0,0,0,63,248,0,0,0,47,255,144,0,0,11,255,255,144,0,1,255,255,252,0,0,27,255,255,0,0,0,111,255,64,0,0,1,255,128,0,0,0,191,128,0,0,0,191,64,0,0,0,255,0,0,0,0,255,0,0,0,2,254,0,0,0,3,252,0,0,0,0,0,0, + // 0x03bf ο + 21,23,138,24,2,255,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x03c0 π + 26,23,161,27,0,255,42,170,170,170,170,170,160,127,255,255,255,255,255,240,127,255,255,255,255,255,240,42,191,250,170,191,250,160,0,63,208,0,31,240,0,0,63,208,0,31,240,0,0,63,208,0,31,240,0,0,63,208,0,31,240,0,0,63,208,0,31,240,0,0,63,208,0,31,240,0,0,63,208,0,31,240,0,0,63,208,0,31,240,0,0,63,208,0,31,240,0,0,63,208,0,31,240,0,0,63,208,0,31,240,0,0,63,208,0,31,240,0,0,63,208,0,31,240,0,0,63,208,0,15,240,0,0,63,208,0,15,248,0,0,63,208,0,15,255,224,0,63,208,0,7,255,224,0,63,208,0,1,255,224,0,0,0,0,0,21,0, + // 0x03c1 ρ + 20,32,160,24,2,246,0,6,255,144,0,0,63,255,254,0,1,255,255,255,192,3,255,235,255,240,15,252,0,47,248,31,240,0,11,252,47,224,0,3,253,63,208,0,2,254,63,192,0,2,255,63,192,0,1,255,127,192,0,1,255,127,192,0,0,255,127,192,0,1,255,127,192,0,1,255,127,192,0,2,255,127,192,0,3,254,127,192,0,7,252,127,224,0,15,248,127,254,64,191,240,127,255,255,255,208,127,255,255,255,64,127,203,255,248,0,127,192,21,0,0,127,192,0,0,0,127,192,0,0,0,127,192,0,0,0,127,192,0,0,0,127,192,0,0,0,127,192,0,0,0,127,192,0,0,0,127,192,0,0,0,42,128,0,0,0, + // 0x03c2 ς + 17,31,155,20,2,247,0,6,255,228,0,0,127,255,255,0,2,255,255,255,0,11,255,234,253,0,31,252,0,8,0,63,240,0,0,0,63,208,0,0,0,127,192,0,0,0,191,128,0,0,0,255,128,0,0,0,255,64,0,0,0,255,64,0,0,0,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,208,0,0,0,63,240,0,0,0,47,252,0,0,0,15,255,208,0,0,3,255,255,128,0,0,191,255,248,0,0,11,255,255,0,0,0,111,255,0,0,0,1,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,0,0,0,1,255,0,0,0,2,253,0,0,0,3,252,0,0,0,0,0,0, + // 0x03c3 σ + 22,23,138,25,2,255,0,0,90,170,170,144,0,31,255,255,255,224,0,255,255,255,255,224,7,255,254,191,234,144,15,254,0,47,208,0,47,244,0,15,240,0,63,208,0,7,248,0,127,192,0,3,252,0,191,128,0,3,253,0,255,128,0,2,254,0,255,64,0,1,255,0,255,64,0,1,255,0,255,64,0,1,255,0,255,128,0,2,254,0,191,128,0,3,254,0,127,192,0,3,253,0,63,208,0,11,252,0,47,244,0,31,248,0,15,254,65,191,240,0,7,255,255,255,192,0,1,255,255,255,0,0,0,31,255,244,0,0,0,0,85,0,0,0, + // 0x03c4 τ + 19,23,115,20,0,255,42,170,170,170,164,127,255,255,255,252,127,255,255,255,252,42,175,254,170,168,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,248,0,0,0,11,252,0,0,0,7,252,0,0,0,3,255,64,16,0,3,255,255,224,0,0,255,255,224,0,0,47,255,224,0,0,1,84,0, + // 0x03c5 υ + 19,23,115,24,3,255,106,0,0,26,144,255,64,0,47,224,255,64,0,31,240,255,64,0,15,240,255,64,0,15,244,255,64,0,15,244,255,64,0,15,248,255,64,0,11,248,255,64,0,11,248,255,64,0,11,248,255,64,0,11,248,255,64,0,11,248,255,64,0,11,248,255,64,0,15,244,255,64,0,15,244,191,128,0,31,240,191,192,0,63,224,127,208,0,191,208,63,248,6,255,128,31,255,255,255,0,11,255,255,252,0,1,255,255,208,0,0,5,84,0,0, + // 0x03c6 φ + 26,41,31,30,2,246,0,0,1,84,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,107,254,144,0,0,0,31,255,255,255,64,0,0,255,255,255,255,224,0,3,255,235,254,255,252,0,15,254,3,252,11,255,0,47,244,3,252,1,255,128,63,224,3,252,0,191,192,127,192,3,252,0,63,208,191,192,3,252,0,47,224,255,128,3,252,0,47,240,255,128,3,252,0,31,240,255,128,3,252,0,31,240,255,128,3,252,0,31,240,191,128,3,252,0,47,240,127,192,3,252,0,63,224,63,208,3,252,0,127,208,47,240,3,252,0,255,192,15,252,3,252,3,255,64,7,255,131,252,47,253,0,1,255,255,255,255,244,0,0,47,255,255,255,192,0,0,2,255,255,249,0,0,0,0,3,253,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,2,168,0,0,0, + // 0x03c7 χ + 23,32,192,24,1,246,106,0,0,0,6,164,255,224,0,0,15,244,255,244,0,0,47,224,255,252,0,0,63,192,3,254,0,0,191,128,1,255,0,0,255,0,0,255,128,3,253,0,0,127,192,7,252,0,0,63,224,15,240,0,0,31,240,31,224,0,0,15,248,63,192,0,0,7,252,191,64,0,0,3,254,255,0,0,0,1,255,253,0,0,0,0,255,248,0,0,0,0,127,240,0,0,0,0,63,224,0,0,0,0,191,240,0,0,0,0,255,244,0,0,0,3,255,252,0,0,0,7,251,253,0,0,0,15,241,255,0,0,0,47,208,255,64,0,0,127,192,191,192,0,0,255,64,63,208,0,2,254,0,47,240,0,3,252,0,15,244,0,15,244,0,11,253,0,31,240,0,3,255,252,63,208,0,1,255,252,191,128,0,0,127,252,170,0,0,0,6,148, + // 0x03c8 ψ + 25,41,31,31,3,246,0,0,1,80,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,106,0,11,244,0,170,0,255,0,11,244,0,255,0,255,0,11,244,0,191,64,255,0,11,244,0,191,128,255,0,11,244,0,127,128,255,0,11,244,0,63,192,255,0,11,244,0,63,192,255,0,11,244,0,63,192,255,0,11,244,0,63,192,255,0,11,244,0,63,192,255,0,11,244,0,63,192,255,0,11,244,0,63,192,255,0,11,244,0,63,192,255,64,11,244,0,63,192,191,64,11,244,0,127,192,127,128,11,244,0,191,128,63,208,11,244,1,255,0,63,240,11,244,7,254,0,15,254,75,248,127,252,0,7,255,255,255,255,240,0,1,255,255,255,255,128,0,0,27,255,255,248,0,0,0,0,27,248,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,6,164,0,0,0, + // 0x03c9 ω + 29,23,184,33,2,255,0,170,0,0,0,42,64,0,2,253,0,0,0,47,208,0,7,252,0,0,0,15,240,0,15,244,0,0,0,11,248,0,31,240,0,0,0,3,252,0,47,208,0,0,0,2,253,0,63,192,0,0,0,1,254,0,63,192,0,21,0,0,255,0,127,192,0,191,64,0,255,0,127,128,0,191,64,0,255,0,127,128,0,191,64,0,255,64,191,128,0,191,64,0,255,64,127,128,0,191,64,0,255,0,127,128,0,191,64,0,255,0,127,192,0,191,64,0,255,0,63,192,0,255,128,1,255,0,63,208,0,255,192,2,254,0,31,240,1,255,192,3,253,0,15,253,7,247,244,31,252,0,7,255,255,227,255,255,240,0,2,255,255,193,255,255,208,0,0,127,254,0,127,254,0,0,0,1,80,0,1,80,0,0, + // 0x03ca ϊ + 255, + // 0x03cb ϋ + 255, + // 0x03cc ό + 21,32,192,24,2,255,0,0,3,255,0,0,0,0,7,253,0,0,0,0,11,248,0,0,0,0,15,240,0,0,0,0,31,208,0,0,0,0,47,128,0,0,0,0,47,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x03cd ύ + 19,32,160,24,3,255,0,0,47,244,0,0,0,63,224,0,0,0,127,192,0,0,0,191,64,0,0,0,255,0,0,0,0,252,0,0,0,1,244,0,0,0,0,0,0,0,0,0,0,0,0,106,0,0,26,144,255,64,0,47,224,255,64,0,31,240,255,64,0,15,240,255,64,0,15,244,255,64,0,15,244,255,64,0,15,248,255,64,0,11,248,255,64,0,11,248,255,64,0,11,248,255,64,0,11,248,255,64,0,11,248,255,64,0,11,248,255,64,0,15,244,255,64,0,15,244,191,128,0,31,240,191,192,0,63,224,127,208,0,191,208,63,248,6,255,128,31,255,255,255,0,11,255,255,252,0,1,255,255,208,0,0,5,84,0,0, + // 0x03ce ώ + 29,32,0,33,2,255,0,0,0,3,255,0,0,0,0,0,0,3,253,0,0,0,0,0,0,11,252,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,224,0,0,0,0,0,0,31,192,0,0,0,0,0,0,47,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,42,64,0,2,253,0,0,0,47,208,0,7,252,0,0,0,15,240,0,15,244,0,0,0,11,248,0,31,240,0,0,0,3,252,0,47,208,0,0,0,2,253,0,63,192,0,0,0,1,254,0,63,192,0,21,0,0,255,0,127,192,0,191,64,0,255,0,127,128,0,191,64,0,255,0,127,128,0,191,64,0,255,64,191,128,0,191,64,0,255,64,127,128,0,191,64,0,255,0,127,128,0,191,64,0,255,0,127,192,0,191,64,0,255,0,63,192,0,255,128,1,255,0,63,208,0,255,192,2,254,0,31,240,1,255,192,3,253,0,15,253,7,247,244,31,252,0,7,255,255,227,255,255,240,0,2,255,255,193,255,255,208,0,0,127,254,0,127,254,0,0,0,1,80,0,1,80,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Katakana_29.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Katakana_29.cpp new file mode 100644 index 000000000000..5ecf0161d9c3 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Katakana_29.cpp @@ -0,0 +1,238 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Katakana 40pt, capital 'A' height: 29px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 +extern const uint8_t NotoSans_Medium_Katakana_29[11808] = { + 162,29,160,48,104,136,38,246, // unifont_t + // 0x30a0 ゠ + 160,48,18,8,40,40,11,11,191,255,255,255,224,106,170,170,170,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,170,170,170,144,191,255,255,255,224, + // 0x30a1 ァ + 161,48,28,27,189,40,7,251,255,255,255,255,255,255,244,255,255,255,255,255,255,254,255,255,255,255,255,255,254,250,170,170,170,170,175,252,0,0,0,0,0,31,240,0,0,0,0,0,63,224,0,0,15,244,0,255,192,0,0,15,244,2,255,0,0,0,11,244,11,253,0,0,0,11,244,47,244,0,0,0,11,240,255,224,0,0,0,15,240,63,128,0,0,0,15,240,9,0,0,0,0,15,240,0,0,0,0,0,31,240,0,0,0,0,0,47,224,0,0,0,0,0,63,192,0,0,0,0,0,127,192,0,0,0,0,0,255,64,0,0,0,0,3,255,0,0,0,0,0,15,253,0,0,0,0,0,127,248,0,0,0,0,2,255,224,0,0,0,0,15,255,128,0,0,0,0,3,253,0,0,0,0,0,0,176,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30a2 ア + 162,48,33,33,41,40,5,253,64,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,252,0,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,254,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,127,224,0,0,0,0,170,64,1,255,192,0,0,0,0,255,64,3,255,0,0,0,0,0,255,64,31,253,0,0,0,0,0,255,64,127,244,0,0,0,0,0,255,66,255,208,0,0,0,0,0,255,71,255,64,0,0,0,0,0,255,65,253,0,0,0,0,0,0,255,64,48,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,31,244,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,255,208,0,0,0,0,0,0,7,255,128,0,0,0,0,0,0,47,255,0,0,0,0,0,0,1,255,252,0,0,0,0,0,0,15,255,224,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,0,188,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0, + // 0x30a3 ィ + 163,48,27,29,203,40,5,252,0,0,0,0,0,2,64,0,0,0,0,0,11,208,0,0,0,0,0,47,244,0,0,0,0,0,191,244,0,0,0,0,3,255,208,0,0,0,0,15,255,64,0,0,0,0,127,252,0,0,0,0,2,255,224,0,0,0,0,31,255,64,0,0,0,1,255,252,0,0,0,0,31,255,240,0,0,0,1,255,255,240,0,0,0,111,255,255,240,0,0,27,255,255,95,240,0,0,255,255,244,31,240,0,0,191,254,64,31,240,0,0,63,208,0,31,240,0,0,40,0,0,31,240,0,0,0,0,0,31,240,0,0,0,0,0,31,240,0,0,0,0,0,31,240,0,0,0,0,0,31,240,0,0,0,0,0,31,240,0,0,0,0,0,31,240,0,0,0,0,0,31,240,0,0,0,0,0,31,240,0,0,0,0,0,47,240,0,0,0,0,0,47,240,0,0,0,0,0,5,80,0,0, + // 0x30a4 イ + 164,48,32,33,8,40,3,254,0,0,0,0,0,0,0,208,0,0,0,0,0,0,3,244,0,0,0,0,0,0,15,253,0,0,0,0,0,0,63,253,0,0,0,0,0,0,255,244,0,0,0,0,0,7,255,192,0,0,0,0,0,47,255,0,0,0,0,0,0,255,252,0,0,0,0,0,7,255,224,0,0,0,0,0,63,255,64,0,0,0,0,2,255,248,0,0,0,0,0,47,255,224,0,0,0,0,2,255,255,192,0,0,0,0,111,255,255,192,0,0,0,7,255,255,191,192,0,0,1,255,255,248,63,192,0,0,127,255,255,64,63,192,0,0,191,255,244,0,63,192,0,0,63,254,0,0,63,192,0,0,47,144,0,0,63,192,0,0,4,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,208,0,0,0,0,0,0,127,208,0,0, + // 0x30a5 ゥ + 165,48,27,29,203,40,7,252,0,0,7,252,0,0,0,0,0,7,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,0,0,3,252,0,0,0,255,255,255,255,255,255,208,191,255,255,255,255,255,248,191,255,255,255,255,255,244,191,170,170,170,170,191,240,191,0,0,0,0,31,240,191,0,0,0,0,47,240,191,0,0,0,0,63,224,191,0,0,0,0,63,208,191,0,0,0,0,127,192,191,0,0,0,0,255,128,255,0,0,0,0,255,64,21,0,0,0,2,255,0,0,0,0,0,3,254,0,0,0,0,0,15,252,0,0,0,0,0,47,248,0,0,0,0,0,191,240,0,0,0,0,3,255,192,0,0,0,0,47,255,64,0,0,0,1,255,252,0,0,0,0,111,255,240,0,0,0,15,255,255,128,0,0,0,3,255,252,0,0,0,0,1,255,144,0,0,0,0,0,116,0,0,0,0, + // 0x30a6 ウ + 166,48,31,36,32,40,5,253,0,0,0,106,128,0,0,0,0,0,0,191,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,192,0,0,0,254,170,170,255,234,170,175,192,255,255,255,255,255,255,255,244,255,255,255,255,255,255,255,244,255,255,255,255,255,255,255,240,255,0,0,0,0,0,47,240,255,0,0,0,0,0,63,240,255,0,0,0,0,0,63,224,255,0,0,0,0,0,63,208,255,0,0,0,0,0,127,192,255,0,0,0,0,0,191,192,255,0,0,0,0,0,255,128,255,0,0,0,0,1,255,64,255,64,0,0,0,2,255,0,85,0,0,0,0,3,254,0,0,0,0,0,0,11,252,0,0,0,0,0,0,31,248,0,0,0,0,0,0,63,240,0,0,0,0,0,0,255,208,0,0,0,0,0,3,255,192,0,0,0,0,0,15,255,0,0,0,0,0,0,127,253,0,0,0,0,0,2,255,244,0,0,0,0,0,47,255,208,0,0,0,0,7,255,255,0,0,0,0,2,255,255,248,0,0,0,0,1,255,255,192,0,0,0,0,0,127,253,0,0,0,0,0,0,47,128,0,0,0,0,0,0,4,0,0,0,0,0, + // 0x30a7 ェ + 167,48,28,23,161,40,6,254,14,170,170,170,170,170,176,15,255,255,255,255,255,244,15,255,255,255,255,255,244,15,255,255,255,255,255,244,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0, + // 0x30a8 エ + 168,48,34,27,243,40,3,0,7,255,255,255,255,255,255,254,0,7,255,255,255,255,255,255,254,0,7,255,255,255,255,255,255,254,0,7,255,255,255,255,255,255,254,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,80,0,0,7,252,0,0,0,80,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0, + // 0x30a9 ォ + 169,48,28,29,203,40,7,252,0,0,0,1,169,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,0,0,0,1,253,0,0,58,170,170,170,254,170,169,63,255,255,255,255,255,254,63,255,255,255,255,255,254,63,255,255,255,255,255,254,0,0,0,31,253,0,0,0,0,0,63,253,0,0,0,0,0,255,253,0,0,0,0,3,255,253,0,0,0,0,15,253,253,0,0,0,0,63,240,253,0,0,0,1,255,208,254,0,0,0,7,255,64,254,0,0,0,47,253,0,254,0,0,1,255,244,0,254,0,0,11,255,192,0,254,0,0,191,254,0,0,254,0,0,255,248,0,0,254,0,0,63,192,0,0,254,0,0,29,0,4,1,254,0,0,0,0,15,255,254,0,0,0,0,15,255,253,0,0,0,0,11,255,248,0,0,0,0,1,85,80,0,0, + // 0x30aa オ + 170,48,33,34,50,40,3,254,0,0,0,0,2,254,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,0,0,0,0,31,254,0,0,0,0,0,0,0,63,254,0,0,0,0,0,0,0,255,254,0,0,0,0,0,0,2,255,255,0,0,0,0,0,0,11,254,255,0,0,0,0,0,0,31,248,255,0,0,0,0,0,0,127,240,255,0,0,0,0,0,2,255,192,255,0,0,0,0,0,11,255,0,255,0,0,0,0,0,63,252,0,255,0,0,0,0,1,255,240,0,255,0,0,0,0,11,255,192,0,255,0,0,0,0,63,254,0,0,255,0,0,0,2,255,248,0,0,255,0,0,0,31,255,208,0,0,255,0,0,0,191,255,0,0,0,255,0,0,0,63,248,0,0,0,255,0,0,0,31,192,0,0,0,255,0,0,0,6,0,0,16,1,255,0,0,0,0,0,0,63,255,255,0,0,0,0,0,0,63,255,255,0,0,0,0,0,0,63,255,253,0,0,0,0,0,0,47,255,244,0,0,0, + // 0x30ab カ + 171,48,31,34,16,40,4,254,0,0,0,255,128,0,0,0,0,0,0,255,128,0,0,0,0,0,0,191,128,0,0,0,0,0,0,191,128,0,0,0,0,0,0,191,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,63,250,170,255,234,170,255,128,63,255,255,255,255,255,255,244,63,255,255,255,255,255,255,244,63,255,255,255,255,255,255,240,0,0,1,255,0,0,15,240,0,0,1,254,0,0,15,240,0,0,2,253,0,0,15,240,0,0,3,253,0,0,15,240,0,0,3,252,0,0,15,240,0,0,7,252,0,0,15,240,0,0,11,248,0,0,15,240,0,0,15,244,0,0,15,240,0,0,31,240,0,0,31,224,0,0,63,224,0,0,31,224,0,0,127,208,0,0,31,224,0,0,255,192,0,0,47,208,0,1,255,64,0,0,63,208,0,3,255,0,0,0,63,192,0,15,253,0,0,0,63,192,0,63,248,0,0,0,127,192,0,255,240,0,0,0,191,128,3,255,192,0,80,2,255,64,31,255,64,0,191,255,255,0,191,253,0,0,191,255,254,0,63,244,0,0,127,255,252,0,11,192,0,0,127,255,224,0,1,0,0,0,0,0,0,0, + // 0x30ac ガ + 172,48,35,37,77,40,3,253,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,31,128,0,0,0,106,64,0,6,15,192,0,0,0,191,192,0,63,7,240,0,0,0,191,192,0,31,195,244,0,0,0,191,128,0,15,209,252,0,0,0,127,128,0,7,240,180,0,0,0,191,128,0,3,244,0,0,0,0,191,128,0,0,144,0,0,0,0,191,128,0,0,0,0,63,255,255,255,255,255,255,208,0,63,255,255,255,255,255,255,248,0,63,255,255,255,255,255,255,248,0,63,255,255,255,255,255,255,244,0,0,0,0,255,0,0,11,244,0,0,0,1,255,0,0,11,244,0,0,0,2,254,0,0,11,244,0,0,0,2,253,0,0,15,240,0,0,0,3,253,0,0,15,240,0,0,0,3,252,0,0,15,240,0,0,0,11,252,0,0,15,240,0,0,0,15,248,0,0,15,240,0,0,0,15,240,0,0,15,240,0,0,0,47,240,0,0,15,240,0,0,0,63,208,0,0,31,224,0,0,0,255,192,0,0,31,224,0,0,1,255,128,0,0,47,208,0,0,3,255,0,0,0,47,208,0,0,15,253,0,0,0,63,192,0,0,47,252,0,0,0,63,192,0,0,191,240,0,0,0,191,192,0,3,255,208,0,80,1,255,128,0,31,255,64,0,127,255,255,64,0,191,253,0,0,127,255,255,0,0,47,244,0,0,127,255,253,0,0,11,208,0,0,63,255,224,0,0,1,0,0,0,0,0,0,0,0, + // 0x30ad キ + 173,48,32,35,24,40,4,253,0,0,1,188,0,0,0,0,0,0,7,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,253,0,0,0,0,0,0,2,254,0,0,0,0,0,0,1,255,0,1,111,0,0,0,0,255,22,255,255,64,0,0,1,255,255,255,255,64,0,90,255,255,255,255,255,128,255,255,255,255,255,254,144,0,191,255,255,255,229,0,0,0,127,255,250,191,192,0,0,0,127,164,0,63,192,0,0,0,16,0,0,63,208,0,0,0,0,0,0,47,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,240,0,6,253,0,0,0,15,240,107,255,254,0,0,0,15,255,255,255,255,0,0,107,255,255,255,255,255,90,255,255,255,255,255,249,64,255,255,255,255,255,148,0,0,191,255,255,235,252,0,0,0,127,254,144,3,253,0,0,0,57,64,0,2,253,0,0,0,0,0,0,2,254,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,191,128,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,208,0,0,0,0,0,0,62,64,0,0,0,0,0,0,0,0,0,0, + // 0x30ae ギ + 174,48,35,37,77,40,3,253,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,47,15,208,0,0,1,189,0,0,63,67,240,0,0,3,253,0,0,15,194,248,0,0,3,254,0,0,11,224,244,0,0,1,254,0,0,3,240,0,0,0,1,255,0,0,2,208,0,0,0,0,255,0,1,175,64,0,0,0,0,255,86,255,255,128,0,0,0,1,255,255,255,255,192,0,1,107,255,255,255,255,255,192,0,191,255,255,255,255,254,80,0,0,127,255,255,255,229,0,0,0,0,63,255,250,127,208,0,0,0,0,63,164,0,47,208,0,0,0,0,16,0,0,47,224,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,15,240,0,0,1,0,0,0,0,15,240,0,6,255,0,0,0,0,11,244,107,255,255,0,0,0,0,11,255,255,255,255,0,0,1,107,255,255,255,255,255,64,90,255,255,255,255,255,233,64,0,127,255,255,255,255,144,0,0,0,127,255,255,235,253,0,0,0,0,63,254,144,2,254,0,0,0,0,41,64,0,1,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,62,64,0,0,0, + // 0x30af ク + 175,48,31,36,32,40,4,253,0,0,0,40,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,127,224,0,0,0,0,0,0,255,192,0,0,0,0,0,1,255,64,0,0,0,0,0,3,255,0,0,0,0,0,0,11,255,170,170,171,128,0,0,31,255,255,255,255,248,0,0,63,255,255,255,255,252,0,0,191,255,255,255,255,248,0,2,255,128,0,0,47,240,0,7,255,0,0,0,63,240,0,31,252,0,0,0,63,224,0,127,244,0,0,0,191,192,2,255,208,0,0,0,255,192,15,255,64,0,0,1,255,64,127,253,0,0,0,3,255,0,255,244,0,0,0,7,253,0,63,192,0,0,0,15,252,0,10,0,0,0,0,47,244,0,0,0,0,0,0,127,240,0,0,0,0,0,0,255,192,0,0,0,0,0,3,255,128,0,0,0,0,0,15,255,0,0,0,0,0,0,47,252,0,0,0,0,0,0,191,240,0,0,0,0,0,3,255,208,0,0,0,0,0,31,255,64,0,0,0,0,0,191,253,0,0,0,0,0,11,255,240,0,0,0,0,0,191,255,192,0,0,0,0,27,255,253,0,0,0,0,0,255,255,224,0,0,0,0,0,127,255,64,0,0,0,0,0,31,228,0,0,0,0,0,0,2,0,0,0,0,0,0, + // 0x30b0 グ + 176,48,37,38,124,40,2,252,0,0,0,0,0,0,0,1,240,0,0,0,0,0,0,0,0,67,248,0,0,0,0,9,0,0,7,208,252,0,0,0,0,31,224,0,3,240,190,0,0,0,0,63,240,0,2,248,63,0,0,0,0,127,224,0,0,252,31,64,0,0,0,255,192,0,0,126,4,0,0,0,1,255,64,0,0,61,0,0,0,0,3,255,170,170,171,224,0,0,0,0,11,255,255,255,255,252,0,0,0,0,31,255,255,255,255,254,0,0,0,0,63,255,255,255,255,252,0,0,0,0,255,208,0,0,15,252,0,0,0,3,255,64,0,0,31,244,0,0,0,15,254,0,0,0,47,240,0,0,0,63,252,0,0,0,63,240,0,0,0,255,240,0,0,0,127,208,0,0,7,255,192,0,0,0,255,192,0,0,47,255,0,0,0,1,255,128,0,0,191,248,0,0,0,3,255,0,0,0,47,224,0,0,0,7,254,0,0,0,7,64,0,0,0,15,252,0,0,0,0,0,0,0,0,63,244,0,0,0,0,0,0,0,0,127,240,0,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,0,7,255,64,0,0,0,0,0,0,0,31,254,0,0,0,0,0,0,0,0,127,248,0,0,0,0,0,0,0,2,255,240,0,0,0,0,0,0,0,11,255,192,0,0,0,0,0,0,0,127,255,0,0,0,0,0,0,0,7,255,248,0,0,0,0,0,0,0,127,255,208,0,0,0,0,0,0,7,255,255,0,0,0,0,0,0,0,191,255,244,0,0,0,0,0,0,0,47,255,128,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,0,2,64,0,0,0,0,0,0,0, + // 0x30b1 ケ + 177,48,35,35,59,40,2,253,0,0,15,232,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,31,244,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,255,255,255,255,255,255,248,0,2,255,255,255,255,255,255,248,0,3,255,255,255,255,255,255,248,0,15,255,255,255,255,255,255,248,0,47,244,0,0,255,64,0,0,0,127,240,0,0,255,64,0,0,0,255,208,0,0,255,64,0,0,3,255,128,0,0,255,0,0,0,11,255,0,0,1,255,0,0,0,47,252,0,0,2,255,0,0,0,127,244,0,0,3,254,0,0,0,15,224,0,0,3,253,0,0,0,1,128,0,0,7,252,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,127,224,0,0,0,0,0,0,0,255,208,0,0,0,0,0,0,2,255,192,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,31,254,0,0,0,0,0,0,0,127,252,0,0,0,0,0,0,2,255,240,0,0,0,0,0,0,15,255,192,0,0,0,0,0,0,127,255,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,2,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30b2 ゲ + 178,48,36,38,86,40,2,252,0,0,0,0,0,0,0,0,144,0,0,0,0,0,0,0,3,240,0,0,4,0,0,0,6,194,248,0,0,31,228,0,0,11,224,253,0,0,47,240,0,0,3,244,127,0,0,63,240,0,0,1,252,63,0,0,63,208,0,0,0,253,4,0,0,127,192,0,0,0,125,0,0,0,255,128,0,0,0,16,0,0,0,255,64,0,0,0,0,0,0,2,255,255,255,255,255,255,240,0,3,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,240,0,31,255,255,255,255,255,255,240,0,63,240,0,1,255,0,0,0,0,255,208,0,1,255,0,0,0,2,255,192,0,2,255,0,0,0,7,255,0,0,2,254,0,0,0,31,253,0,0,3,254,0,0,0,127,248,0,0,3,253,0,0,0,255,240,0,0,7,252,0,0,0,31,192,0,0,11,252,0,0,0,2,0,0,0,15,248,0,0,0,0,0,0,0,31,244,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,1,255,128,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,63,252,0,0,0,0,0,0,0,255,244,0,0,0,0,0,0,7,255,208,0,0,0,0,0,0,47,255,128,0,0,0,0,0,0,255,254,0,0,0,0,0,0,0,47,244,0,0,0,0,0,0,0,7,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30b3 コ + 179,48,29,30,240,40,6,254,127,255,255,255,255,255,255,64,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,80,0,0,0,0,0,255,0,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,0, + // 0x30b4 ゴ + 180,48,33,38,86,40,5,253,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,244,0,0,0,0,0,0,7,193,252,0,0,0,0,0,0,11,224,190,0,0,0,0,0,0,3,244,63,0,0,0,0,0,0,2,252,47,128,0,0,0,0,0,0,253,15,64,0,0,0,0,0,0,189,0,0,0,0,0,0,0,0,16,0,0,63,255,255,255,255,255,255,64,0,63,255,255,255,255,255,255,64,0,63,255,255,255,255,255,255,64,0,63,255,255,255,255,255,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,191,255,255,255,255,255,255,64,0,191,255,255,255,255,255,255,64,0,191,255,255,255,255,255,255,64,0,191,255,255,255,255,255,255,64,0,16,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,85,0,0, + // 0x30b5 サ + 181,48,35,35,59,40,2,253,0,0,0,0,0,2,169,0,0,0,0,191,192,0,3,253,0,0,0,0,191,128,0,3,253,0,0,0,0,127,128,0,3,253,0,0,0,0,127,128,0,3,253,0,0,0,0,127,128,0,3,253,0,0,0,0,127,128,0,3,253,0,0,0,0,127,128,0,3,253,0,0,0,0,127,128,0,3,253,0,0,127,255,255,255,255,255,255,255,252,127,255,255,255,255,255,255,255,252,127,255,255,255,255,255,255,255,252,127,255,255,255,255,255,255,255,252,0,0,127,128,0,3,253,0,0,0,0,127,128,0,3,253,0,0,0,0,127,128,0,3,252,0,0,0,0,127,128,0,3,252,0,0,0,0,127,128,0,3,252,0,0,0,0,127,128,0,3,252,0,0,0,0,127,128,0,3,252,0,0,0,0,127,128,0,7,252,0,0,0,0,191,128,0,11,248,0,0,0,0,191,128,0,15,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,127,252,0,0,0,0,0,0,7,255,240,0,0,0,0,0,0,127,255,192,0,0,0,0,0,0,63,254,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,2,64,0,0,0,0, + // 0x30b6 ザ + 182,48,37,36,104,40,2,252,0,0,0,0,0,0,0,0,184,0,0,0,170,0,0,11,248,116,188,0,0,1,255,0,0,11,248,188,62,0,0,0,255,0,0,11,248,125,47,0,0,0,255,0,0,11,248,62,31,64,0,0,255,0,0,11,248,31,14,0,0,0,255,0,0,11,248,15,0,0,0,0,255,0,0,11,248,0,0,0,0,0,255,0,0,11,248,0,0,0,255,255,255,255,255,255,255,255,244,0,255,255,255,255,255,255,255,255,244,0,255,255,255,255,255,255,255,255,244,0,255,255,255,255,255,255,255,255,244,0,0,0,255,0,0,11,248,0,0,0,0,0,255,0,0,11,248,0,0,0,0,0,255,0,0,11,248,0,0,0,0,0,255,0,0,11,248,0,0,0,0,0,255,0,0,11,244,0,0,0,0,0,255,0,0,11,244,0,0,0,0,0,255,0,0,15,244,0,0,0,0,0,255,0,0,15,240,0,0,0,0,0,255,0,0,15,240,0,0,0,0,1,255,0,0,31,240,0,0,0,0,0,85,0,0,63,224,0,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,1,255,128,0,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,0,15,253,0,0,0,0,0,0,0,0,127,252,0,0,0,0,0,0,0,3,255,240,0,0,0,0,0,0,0,111,255,192,0,0,0,0,0,0,0,255,254,0,0,0,0,0,0,0,0,63,244,0,0,0,0,0,0,0,0,15,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30b7 シ + 183,48,33,33,41,40,4,254,0,0,192,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,7,255,64,0,0,0,0,0,0,15,255,224,0,0,0,0,0,0,1,255,253,0,0,0,0,0,0,0,47,255,128,0,0,0,0,0,0,7,255,128,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,28,0,0,0,0,0,8,0,0,0,0,0,0,4,0,63,128,0,0,0,0,0,44,0,191,244,0,0,0,0,0,63,0,255,254,0,0,0,0,0,255,64,47,255,208,0,0,0,2,255,128,2,255,248,0,0,0,11,255,0,0,127,244,0,0,0,31,252,0,0,11,240,0,0,0,127,244,0,0,1,192,0,0,1,255,224,0,0,0,0,0,0,7,255,128,0,0,0,0,0,0,47,254,0,0,0,0,0,0,0,191,248,0,0,0,0,0,0,7,255,224,0,0,0,0,0,0,47,255,64,0,0,0,0,0,1,255,253,0,0,0,0,0,0,31,255,240,0,0,0,0,0,1,255,255,128,0,0,0,0,0,47,255,252,0,0,0,0,0,27,255,255,208,0,0,0,0,11,255,255,254,0,0,0,0,0,15,255,255,224,0,0,0,0,0,7,255,253,0,0,0,0,0,0,2,254,64,0,0,0,0,0,0,0,144,0,0,0,0,0,0,0, + // 0x30b8 ジ + 184,48,35,34,50,40,3,254,0,0,0,0,0,0,0,26,0,0,0,80,0,0,0,0,127,64,0,0,248,0,0,0,116,47,192,0,3,255,64,0,2,252,15,224,0,7,255,240,0,0,254,7,240,0,1,255,253,0,0,127,3,248,0,0,47,255,128,0,47,128,244,0,0,7,255,192,0,15,192,0,0,0,0,191,64,0,11,128,0,0,0,0,31,0,0,0,0,0,4,0,0,0,0,0,0,0,0,15,128,0,0,0,0,0,14,0,63,244,0,0,0,0,0,47,0,127,255,0,0,0,0,0,63,128,31,255,224,0,0,0,0,255,192,2,255,252,0,0,0,3,255,128,0,127,252,0,0,0,11,255,0,0,11,244,0,0,0,47,252,0,0,0,224,0,0,0,191,244,0,0,0,0,0,0,2,255,208,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,63,253,0,0,0,0,0,0,1,255,244,0,0,0,0,0,0,11,255,208,0,0,0,0,0,0,127,255,0,0,0,0,0,0,7,255,248,0,0,0,0,0,0,127,255,208,0,0,0,0,0,11,255,255,0,0,0,0,0,2,255,255,244,0,0,0,0,6,191,255,255,128,0,0,0,0,11,255,255,248,0,0,0,0,0,3,255,255,64,0,0,0,0,0,1,255,208,0,0,0,0,0,0,0,164,0,0,0,0,0,0,0, + // 0x30b9 ス + 185,48,32,32,0,40,4,254,0,0,0,0,0,0,16,0,2,255,255,255,255,255,253,0,2,255,255,255,255,255,255,64,2,255,255,255,255,255,255,0,2,255,255,255,255,255,253,0,0,0,0,0,0,15,252,0,0,0,0,0,0,15,248,0,0,0,0,0,0,47,240,0,0,0,0,0,0,63,224,0,0,0,0,0,0,191,192,0,0,0,0,0,0,255,128,0,0,0,0,0,3,255,0,0,0,0,0,0,7,253,0,0,0,0,0,0,15,248,0,0,0,0,0,0,63,240,0,0,0,0,0,0,191,208,0,0,0,0,0,1,255,192,0,0,0,0,0,7,255,240,0,0,0,0,0,31,255,252,0,0,0,0,0,127,255,255,0,0,0,0,1,255,211,255,192,0,0,0,11,255,128,255,240,0,0,0,47,254,0,127,252,0,0,1,255,248,0,31,255,0,0,11,255,208,0,7,255,128,0,127,255,64,0,1,255,224,2,255,252,0,0,0,191,244,47,255,224,0,0,0,47,253,255,255,64,0,0,0,15,255,127,248,0,0,0,0,3,253,31,208,0,0,0,0,1,244,5,0,0,0,0,0,0,144, + // 0x30ba ズ + 186,48,36,38,86,40,3,253,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,31,11,224,0,0,0,0,0,0,47,131,240,0,0,0,0,0,0,15,193,252,0,0,0,0,0,0,11,224,253,0,0,0,0,0,0,19,244,100,1,255,255,255,255,255,255,244,0,1,255,255,255,255,255,255,128,0,1,255,255,255,255,255,255,0,0,1,255,255,255,255,255,254,0,0,0,0,0,0,0,11,252,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,31,244,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,127,208,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,47,244,0,0,0,0,0,0,0,127,224,0,0,0,0,0,0,1,255,208,0,0,0,0,0,0,7,255,240,0,0,0,0,0,0,15,255,253,0,0,0,0,0,0,127,255,255,64,0,0,0,0,1,255,227,255,208,0,0,0,0,11,255,128,255,244,0,0,0,0,47,254,0,63,252,0,0,0,0,255,248,0,15,255,0,0,0,11,255,208,0,3,255,192,0,0,63,255,64,0,0,255,240,0,2,255,252,0,0,0,127,248,0,47,255,224,0,0,0,31,254,0,255,255,64,0,0,0,11,255,64,63,248,0,0,0,0,3,254,0,15,192,0,0,0,0,0,244,0,1,0,0,0,0,0,0,80,0, + // 0x30bb セ + 187,48,34,34,50,40,2,254,0,0,5,80,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,110,0,0,0,15,240,0,1,191,255,192,0,0,15,240,6,191,255,255,224,0,0,15,246,255,255,255,255,192,0,0,111,255,255,255,255,255,128,5,191,255,255,255,254,82,255,0,191,255,255,255,250,64,3,253,0,191,255,255,249,0,0,15,252,0,127,255,239,240,0,0,31,240,0,63,144,15,240,0,0,63,224,0,16,0,15,240,0,0,255,192,0,0,0,15,240,0,2,255,0,0,0,0,15,240,0,11,253,0,0,0,0,15,240,0,47,248,0,0,0,0,15,240,0,31,240,0,0,0,0,15,240,0,2,192,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,254,0,0,86,191,0,0,0,15,255,255,255,255,255,0,0,0,7,255,255,255,255,255,0,0,0,1,255,255,255,255,255,0,0,0,0,26,255,255,170,84,0, + // 0x30bc ゼ + 188,48,36,36,68,40,2,254,0,0,0,0,0,0,0,1,224,0,0,0,0,0,0,0,67,244,0,0,0,0,0,0,7,209,252,0,0,42,144,0,0,7,240,190,0,0,63,224,0,0,3,244,63,0,0,63,224,0,0,0,252,47,0,0,63,208,0,0,0,190,0,0,0,47,208,0,0,0,57,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,24,0,0,0,47,208,0,0,27,255,0,0,0,47,208,0,107,255,255,192,0,0,47,209,175,255,255,255,192,0,0,63,255,255,255,255,255,0,0,27,255,255,255,255,231,254,0,175,255,255,255,255,144,7,252,0,255,255,255,254,64,0,15,244,0,255,255,255,208,0,0,47,240,0,255,229,47,208,0,0,127,192,0,100,0,47,208,0,0,255,128,0,0,0,47,208,0,3,255,0,0,0,0,47,208,0,15,252,0,0,0,0,47,208,0,63,244,0,0,0,0,47,208,0,63,224,0,0,0,0,47,208,0,7,128,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,47,248,0,0,22,189,0,0,0,31,255,255,255,255,253,0,0,0,15,255,255,255,255,253,0,0,0,3,255,255,255,255,253,0,0,0,0,43,255,255,250,84,0, + // 0x30bd ソ + 189,48,31,31,248,40,4,254,0,64,0,0,0,0,46,144,11,192,0,0,0,0,47,244,127,240,0,0,0,0,63,240,63,244,0,0,0,0,63,224,15,252,0,0,0,0,63,208,11,254,0,0,0,0,127,208,3,255,0,0,0,0,191,192,1,255,192,0,0,0,255,192,0,255,208,0,0,0,255,128,0,127,240,0,0,1,255,0,0,47,248,0,0,3,255,0,0,15,252,0,0,3,254,0,0,11,244,0,0,11,252,0,0,3,64,0,0,15,248,0,0,0,0,0,0,47,244,0,0,0,0,0,0,63,240,0,0,0,0,0,0,255,208,0,0,0,0,0,2,255,128,0,0,0,0,0,7,255,0,0,0,0,0,0,15,253,0,0,0,0,0,0,63,248,0,0,0,0,0,0,255,240,0,0,0,0,0,3,255,192,0,0,0,0,0,31,255,0,0,0,0,0,0,255,252,0,0,0,0,0,7,255,240,0,0,0,0,0,127,255,192,0,0,0,0,7,255,254,0,0,0,0,0,3,255,244,0,0,0,0,0,0,191,128,0,0,0,0,0,0,40,0,0,0,0,0, + // 0x30be ゾ + 190,48,34,37,77,40,4,253,0,0,0,0,0,0,0,29,0,0,0,0,0,0,0,32,127,0,0,0,0,0,0,2,248,63,128,0,0,0,0,0,0,253,15,192,0,0,0,0,0,0,127,11,240,0,0,0,0,0,0,63,67,224,2,0,0,0,0,0,31,128,0,47,128,0,0,0,0,8,0,0,255,208,0,0,0,0,191,128,0,127,240,0,0,0,0,191,192,0,47,248,0,0,0,0,255,192,0,15,252,0,0,0,0,255,128,0,7,254,0,0,0,1,255,64,0,3,255,64,0,0,2,255,0,0,1,255,192,0,0,3,255,0,0,0,255,208,0,0,3,253,0,0,0,63,240,0,0,11,252,0,0,0,47,244,0,0,15,252,0,0,0,15,192,0,0,31,244,0,0,0,9,0,0,0,63,240,0,0,0,0,0,0,0,127,224,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,2,255,64,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,15,253,0,0,0,0,0,0,0,63,248,0,0,0,0,0,0,0,255,240,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,127,253,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,31,255,208,0,0,0,0,0,1,255,255,0,0,0,0,0,0,15,255,248,0,0,0,0,0,0,7,255,208,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0, + // 0x30bf タ + 191,48,32,36,32,40,3,253,0,0,0,15,64,0,0,0,0,0,0,15,248,0,0,0,0,0,0,47,244,0,0,0,0,0,0,63,240,0,0,0,0,0,0,191,208,0,0,0,0,0,0,255,128,0,0,64,0,0,3,255,255,255,255,248,0,0,7,255,255,255,255,255,0,0,15,255,255,255,255,255,0,0,63,250,170,170,175,254,0,0,191,208,0,0,11,252,0,2,255,128,0,0,15,248,0,11,255,0,0,0,31,244,0,47,252,0,0,0,47,240,0,191,240,0,0,0,63,224,3,255,192,60,0,0,191,192,31,255,0,255,128,0,255,128,191,252,2,255,244,3,255,0,47,224,0,191,254,7,254,0,7,128,0,31,255,223,252,0,0,0,0,2,255,255,244,0,0,0,0,0,127,255,224,0,0,0,0,0,15,255,208,0,0,0,0,0,7,255,248,0,0,0,0,0,31,255,255,0,0,0,0,0,127,255,255,208,0,0,0,2,255,226,255,192,0,0,0,15,255,128,191,64,0,0,0,127,254,0,29,0,0,0,7,255,244,0,0,0,0,0,47,255,192,0,0,0,0,7,255,254,0,0,0,0,0,191,255,244,0,0,0,0,0,63,255,128,0,0,0,0,0,15,244,0,0,0,0,0,0,2,64,0,0,0,0,0, + // 0x30c0 ダ + 192,48,37,38,124,40,2,252,0,0,0,0,0,0,0,2,240,0,0,0,0,0,0,0,0,66,248,0,0,0,0,14,64,0,7,224,252,0,0,0,0,15,248,0,3,240,190,0,0,0,0,47,240,0,2,248,63,0,0,0,0,63,224,0,0,252,31,64,0,0,0,191,192,0,0,126,4,0,0,0,1,255,128,0,0,125,0,0,0,0,3,255,255,255,255,244,0,0,0,0,11,255,255,255,255,255,0,0,0,0,31,255,255,255,255,255,0,0,0,0,63,250,170,170,175,253,0,0,0,0,255,208,0,0,11,252,0,0,0,3,255,64,0,0,15,248,0,0,0,15,254,0,0,0,31,244,0,0,0,47,252,0,0,0,63,240,0,0,0,255,240,0,0,0,127,208,0,0,3,255,192,56,0,0,255,192,0,0,31,255,0,255,64,1,255,64,0,0,191,252,3,255,240,3,255,0,0,0,63,224,0,191,254,7,253,0,0,0,11,64,0,31,255,223,252,0,0,0,0,0,0,2,255,255,240,0,0,0,0,0,0,0,127,255,224,0,0,0,0,0,0,0,15,255,208,0,0,0,0,0,0,0,7,255,248,0,0,0,0,0,0,0,47,255,255,0,0,0,0,0,0,0,191,255,255,192,0,0,0,0,0,2,255,211,255,192,0,0,0,0,0,15,255,64,191,0,0,0,0,0,0,191,253,0,45,0,0,0,0,0,7,255,244,0,0,0,0,0,0,0,127,255,192,0,0,0,0,0,0,7,255,254,0,0,0,0,0,0,0,191,255,240,0,0,0,0,0,0,0,63,255,64,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,0,2,64,0,0,0,0,0,0,0, + // 0x30c1 チ + 193,48,34,34,50,40,3,253,0,0,0,0,0,1,191,0,0,0,0,0,0,5,191,255,128,0,0,85,85,171,255,255,255,208,0,1,255,255,255,255,255,254,64,0,0,255,255,255,255,254,64,0,0,0,255,255,255,255,0,0,0,0,0,21,64,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,0,2,254,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,11,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,191,208,0,0,0,0,0,0,2,255,192,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,47,253,0,0,0,0,0,0,1,255,248,0,0,0,0,0,0,11,255,224,0,0,0,0,0,0,11,255,64,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0, + // 0x30c2 ヂ + 194,48,36,35,59,40,2,252,0,0,0,0,0,0,46,0,0,0,0,0,0,0,111,255,64,0,0,0,1,86,191,255,255,192,0,1,255,255,255,255,255,255,144,0,0,255,255,255,255,255,144,2,224,0,255,255,255,255,64,0,130,244,0,106,85,1,254,0,7,224,252,0,0,0,1,254,0,3,240,190,0,0,0,1,254,0,1,248,63,0,0,0,1,254,0,0,252,24,0,0,0,1,254,0,0,126,0,0,0,0,1,254,0,0,32,0,0,0,0,1,254,0,0,0,0,191,170,170,171,255,170,170,175,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,0,0,0,2,254,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,31,244,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,127,208,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,3,255,64,0,0,0,0,0,0,31,254,0,0,0,0,0,0,0,191,252,0,0,0,0,0,0,7,255,240,0,0,0,0,0,0,15,255,192,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,0,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30c3 ッ + 195,48,27,27,189,40,7,252,0,0,6,192,0,0,0,0,0,63,208,0,2,64,10,0,47,224,0,7,248,255,0,15,240,0,11,252,255,64,11,244,0,11,248,127,192,7,252,0,15,244,63,208,3,252,0,31,240,47,224,2,254,0,47,240,15,240,1,254,0,63,208,15,244,0,224,0,127,192,7,252,0,0,0,255,128,3,228,0,0,1,255,64,1,0,0,0,3,254,0,0,0,0,0,11,252,0,0,0,0,0,15,248,0,0,0,0,0,63,240,0,0,0,0,0,255,208,0,0,0,0,3,255,64,0,0,0,0,31,254,0,0,0,0,0,191,248,0,0,0,0,7,255,224,0,0,0,0,127,255,64,0,0,0,7,255,253,0,0,0,0,63,255,224,0,0,0,0,31,255,64,0,0,0,0,7,244,0,0,0,0,0,1,64,0,0,0,0, + // 0x30c4 ツ + 196,48,34,32,32,40,3,254,0,0,0,31,0,0,0,0,0,0,0,0,255,0,0,0,16,0,1,64,0,255,128,0,0,127,128,47,192,0,127,192,0,0,191,208,127,208,0,63,208,0,0,255,192,63,240,0,47,240,0,0,255,128,31,240,0,15,240,0,0,255,64,15,248,0,15,248,0,2,255,0,11,252,0,11,252,0,3,255,0,3,253,0,3,253,0,3,253,0,2,255,0,3,253,0,7,252,0,1,255,0,1,128,0,15,248,0,0,255,128,0,0,0,31,244,0,0,191,128,0,0,0,63,240,0,0,36,0,0,0,0,127,208,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,2,255,64,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,63,248,0,0,0,0,0,0,0,255,240,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,127,253,0,0,0,0,0,0,2,255,244,0,0,0,0,0,0,31,255,192,0,0,0,0,0,1,255,255,0,0,0,0,0,0,47,255,248,0,0,0,0,0,2,255,255,208,0,0,0,0,0,0,255,254,0,0,0,0,0,0,0,127,224,0,0,0,0,0,0,0,29,0,0,0,0,0,0, + // 0x30c5 ヅ + 197,48,35,37,77,40,3,253,0,0,0,0,0,0,0,6,128,0,0,0,0,0,0,9,15,208,0,0,0,0,0,0,127,7,240,0,0,0,0,0,0,47,131,248,0,0,0,0,0,0,15,192,252,0,0,0,108,0,0,11,224,184,0,0,3,254,0,0,3,240,0,1,0,1,255,0,0,1,64,0,191,0,0,255,64,0,0,0,0,255,128,0,191,128,0,1,249,0,127,192,0,127,192,0,2,255,0,63,224,0,63,208,0,3,255,0,47,240,0,47,240,0,3,253,0,15,244,0,15,240,0,7,252,0,15,252,0,15,248,0,15,252,0,7,252,0,7,248,0,15,244,0,3,254,0,2,64,0,47,240,0,2,255,0,0,0,0,63,224,0,0,254,0,0,0,0,127,208,0,0,144,0,0,0,0,255,192,0,0,0,0,0,0,2,255,64,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,47,248,0,0,0,0,0,0,0,191,240,0,0,0,0,0,0,2,255,192,0,0,0,0,0,0,11,255,64,0,0,0,0,0,0,47,253,0,0,0,0,0,0,0,255,244,0,0,0,0,0,0,7,255,224,0,0,0,0,0,0,127,255,64,0,0,0,0,0,3,255,252,0,0,0,0,0,0,127,255,240,0,0,0,0,0,7,255,255,64,0,0,0,0,0,3,255,248,0,0,0,0,0,0,0,255,144,0,0,0,0,0,0,0,56,0,0,0,0,0,0, + // 0x30c6 テ + 198,48,34,33,41,40,3,253,0,47,255,255,255,255,255,208,0,0,47,255,255,255,255,255,208,0,0,47,255,255,255,255,255,208,0,0,47,170,170,170,170,175,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,255,255,240,127,255,255,255,255,255,255,255,240,127,255,255,255,255,255,255,255,240,127,255,255,255,255,255,255,255,240,0,0,0,0,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,31,244,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,255,208,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,127,252,0,0,0,0,0,0,2,255,244,0,0,0,0,0,0,7,255,192,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0, + // 0x30c7 デ + 199,48,36,39,95,40,3,252,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,2,131,244,0,0,0,0,0,0,15,208,252,0,0,0,0,0,0,3,240,190,0,63,170,170,170,171,246,248,63,0,63,255,255,255,255,244,252,24,0,63,255,255,255,255,244,189,0,0,63,255,255,255,255,244,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,255,208,0,0,0,2,254,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,255,208,0,0,0,0,0,0,2,255,128,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,63,252,0,0,0,0,0,0,1,255,244,0,0,0,0,0,0,15,255,208,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,0,184,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30c8 ト + 200,48,21,33,198,40,13,254,255,128,0,0,0,0,255,128,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,249,0,0,0,0,255,255,224,0,0,0,255,255,255,64,0,0,255,255,255,249,0,0,255,175,255,255,224,0,255,65,191,255,254,0,255,64,7,255,255,192,255,64,0,111,255,128,255,64,0,2,255,64,255,64,0,0,47,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,64,0,0,0,0,255,128,0,0,0,0,170,64,0,0,0,0, + // 0x30c9 ド + 201,48,24,34,204,40,11,253,21,64,0,0,1,192,127,208,0,0,11,224,127,192,0,6,3,244,63,192,0,63,129,252,63,192,0,15,208,254,63,192,0,11,240,127,63,192,0,3,244,45,63,192,0,1,252,0,63,192,0,0,244,0,63,192,0,0,0,0,63,192,0,0,0,0,63,228,0,0,0,0,63,255,144,0,0,0,63,255,254,0,0,0,63,255,255,244,0,0,63,255,255,255,144,0,63,198,255,255,253,0,63,192,31,255,255,224,63,192,0,191,255,224,63,192,0,7,255,192,63,192,0,0,47,192,63,192,0,0,2,64,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,63,192,0,0,0,0,127,192,0,0,0,0,127,208,0,0,0,0,127,208,0,0,0,0,21,64,0,0,0,0, + // 0x30ca ナ + 202,48,34,35,59,40,3,253,0,0,0,0,85,0,0,0,0,0,0,0,1,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,127,255,255,255,255,255,255,255,240,127,255,255,255,255,255,255,255,240,127,255,255,255,255,255,255,255,240,127,255,255,255,255,255,255,255,240,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,31,248,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,191,224,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,7,255,64,0,0,0,0,0,0,31,255,0,0,0,0,0,0,0,191,252,0,0,0,0,0,0,7,255,240,0,0,0,0,0,0,47,255,192,0,0,0,0,0,0,11,254,0,0,0,0,0,0,0,1,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30cb ニ + 203,48,33,26,234,40,3,1,0,85,0,0,0,0,5,64,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,255,255,255,255,255,255,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,255,255,128,127,255,255,255,255,255,255,255,128,127,255,255,255,255,255,255,255,128,127,255,255,255,255,255,255,255,128,105,85,85,85,85,85,85,86,64, + // 0x30cc ヌ + 204,48,28,32,224,40,5,253,0,0,0,0,0,0,80,15,255,255,255,255,255,248,15,255,255,255,255,255,255,15,255,255,255,255,255,255,15,255,255,255,255,255,253,0,0,0,0,0,11,252,0,0,0,0,0,15,248,0,0,0,0,0,31,244,0,0,0,0,0,47,240,0,0,0,0,0,63,224,0,15,64,0,0,191,192,0,63,224,0,0,255,128,0,191,254,0,2,255,64,0,47,255,208,3,254,0,0,3,255,248,11,252,0,0,0,127,255,95,248,0,0,0,11,255,255,240,0,0,0,1,255,255,208,0,0,0,0,63,255,192,0,0,0,0,15,255,224,0,0,0,0,47,255,252,0,0,0,0,255,255,255,64,0,0,3,255,215,255,224,0,0,47,255,65,255,248,0,0,255,253,0,63,255,0,11,255,244,0,11,255,0,191,255,192,0,2,252,27,255,254,0,0,0,180,255,255,240,0,0,0,0,63,255,64,0,0,0,0,15,244,0,0,0,0,0,2,64,0,0,0,0,0, + // 0x30cd ネ + 205,48,34,36,68,40,3,253,0,0,0,2,169,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,253,0,0,0,0,3,255,170,171,255,170,191,128,0,3,255,255,255,255,255,255,224,0,3,255,255,255,255,255,255,244,0,3,255,255,255,255,255,255,224,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,191,240,0,0,0,0,0,0,2,255,192,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,127,252,0,0,0,0,0,0,2,255,224,0,0,0,0,0,0,31,255,128,0,0,0,0,0,1,255,254,0,180,0,0,0,0,31,255,252,2,254,0,0,0,2,255,255,252,7,255,224,0,0,111,255,255,252,2,255,253,0,31,255,255,131,252,0,63,255,128,255,255,248,3,252,0,7,255,240,127,255,128,3,252,0,0,255,240,47,228,0,3,252,0,0,47,208,9,0,0,3,252,0,0,7,128,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,2,168,0,0,0,0, + // 0x30ce ノ + 206,48,28,32,224,40,5,254,0,0,0,0,0,7,144,0,0,0,0,0,11,253,0,0,0,0,0,15,252,0,0,0,0,0,15,252,0,0,0,0,0,31,244,0,0,0,0,0,63,240,0,0,0,0,0,63,224,0,0,0,0,0,127,208,0,0,0,0,0,255,192,0,0,0,0,1,255,64,0,0,0,0,3,255,0,0,0,0,0,7,254,0,0,0,0,0,15,252,0,0,0,0,0,31,248,0,0,0,0,0,63,240,0,0,0,0,0,191,224,0,0,0,0,1,255,192,0,0,0,0,3,255,64,0,0,0,0,15,254,0,0,0,0,0,63,252,0,0,0,0,0,255,240,0,0,0,0,7,255,192,0,0,0,0,47,255,64,0,0,0,0,191,253,0,0,0,0,7,255,240,0,0,0,0,127,255,192,0,0,0,7,255,254,0,0,0,0,127,255,244,0,0,0,0,63,255,192,0,0,0,0,15,253,0,0,0,0,0,3,208,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30cf ハ + 207,48,34,29,5,40,3,255,0,0,4,0,0,11,0,0,0,0,0,47,224,0,255,128,0,0,0,0,47,240,0,191,192,0,0,0,0,63,224,0,63,224,0,0,0,0,63,208,0,47,240,0,0,0,0,63,192,0,15,244,0,0,0,0,127,192,0,15,252,0,0,0,0,191,128,0,7,253,0,0,0,0,255,64,0,3,255,0,0,0,0,255,0,0,1,255,64,0,0,2,255,0,0,0,255,128,0,0,3,254,0,0,0,191,192,0,0,3,253,0,0,0,63,224,0,0,11,252,0,0,0,63,240,0,0,15,248,0,0,0,31,244,0,0,31,244,0,0,0,15,248,0,0,47,240,0,0,0,11,252,0,0,63,224,0,0,0,7,253,0,0,191,192,0,0,0,3,255,0,0,255,128,0,0,0,2,255,0,2,255,0,0,0,0,1,255,64,7,255,0,0,0,0,0,255,192,15,253,0,0,0,0,0,255,192,47,252,0,0,0,0,0,127,208,63,240,0,0,0,0,0,63,240,255,224,0,0,0,0,0,63,240,255,192,0,0,0,0,0,47,240,27,64,0,0,0,0,0,30,64,0,0,0,0,0,0,0,0,0, + // 0x30d0 バ + 208,48,37,34,84,40,2,255,0,0,0,0,0,0,0,0,160,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,2,209,252,0,0,0,0,0,0,0,7,240,190,0,0,0,0,0,0,0,2,248,63,0,0,0,0,0,0,0,0,252,47,64,0,0,14,144,0,47,192,190,4,0,0,0,15,248,0,127,208,61,0,0,0,0,15,244,0,63,240,0,0,0,0,0,31,240,0,31,244,0,0,0,0,0,47,240,0,15,252,0,0,0,0,0,63,224,0,11,252,0,0,0,0,0,63,208,0,3,254,0,0,0,0,0,127,192,0,2,255,0,0,0,0,0,191,192,0,0,255,128,0,0,0,0,255,128,0,0,191,192,0,0,0,0,255,64,0,0,127,208,0,0,0,1,255,0,0,0,63,240,0,0,0,3,254,0,0,0,47,240,0,0,0,3,253,0,0,0,15,248,0,0,0,11,252,0,0,0,15,252,0,0,0,15,248,0,0,0,7,253,0,0,0,31,244,0,0,0,3,254,0,0,0,63,240,0,0,0,2,255,0,0,0,127,224,0,0,0,1,255,64,0,0,255,192,0,0,0,0,255,192,0,1,255,128,0,0,0,0,191,192,0,3,255,0,0,0,0,0,127,208,0,11,254,0,0,0,0,0,63,240,0,15,252,0,0,0,0,0,63,240,0,63,244,0,0,0,0,0,47,244,0,191,240,0,0,0,0,0,31,248,0,47,208,0,0,0,0,0,15,228,0,1,128,0,0,0,0,0,5,0,0, + // 0x30d1 パ + 209,48,37,35,94,40,2,254,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,0,127,254,0,0,0,0,0,0,0,0,248,47,0,0,0,0,0,0,0,1,240,11,128,0,0,0,0,0,0,1,224,7,128,0,0,4,0,0,6,65,240,11,128,0,0,15,228,0,127,192,248,31,0,0,0,15,244,0,127,224,127,254,0,0,0,31,240,0,63,240,15,244,0,0,0,31,240,0,31,244,0,0,0,0,0,47,224,0,15,252,0,0,0,0,0,63,224,0,7,253,0,0,0,0,0,63,208,0,3,255,0,0,0,0,0,127,192,0,1,255,0,0,0,0,0,191,192,0,0,255,128,0,0,0,0,255,128,0,0,191,192,0,0,0,0,255,64,0,0,63,208,0,0,0,2,255,0,0,0,63,240,0,0,0,3,254,0,0,0,31,244,0,0,0,3,253,0,0,0,15,248,0,0,0,11,252,0,0,0,11,252,0,0,0,15,248,0,0,0,7,253,0,0,0,31,244,0,0,0,3,254,0,0,0,63,240,0,0,0,2,255,0,0,0,127,224,0,0,0,1,255,64,0,0,255,192,0,0,0,0,255,128,0,1,255,128,0,0,0,0,191,192,0,3,255,0,0,0,0,0,127,208,0,7,254,0,0,0,0,0,63,224,0,15,252,0,0,0,0,0,63,240,0,47,248,0,0,0,0,0,47,244,0,127,240,0,0,0,0,0,31,248,0,127,208,0,0,0,0,0,15,248,0,7,192,0,0,0,0,0,14,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x30d2 ヒ + 210,48,27,33,231,40,8,255,21,64,0,0,0,0,0,127,192,0,0,0,0,0,127,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,2,0,63,192,0,0,0,47,64,63,192,0,0,6,255,192,63,192,0,0,127,255,192,63,192,0,31,255,255,128,63,192,7,255,255,248,0,63,198,255,255,254,64,0,63,255,255,255,208,0,0,63,255,255,248,0,0,0,63,255,253,0,0,0,0,63,254,64,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,192,0,0,0,0,0,63,208,0,0,0,0,16,63,249,64,0,21,175,244,47,255,255,255,255,255,244,15,255,255,255,255,255,244,3,255,255,255,255,255,244,0,26,255,255,255,170,80, + // 0x30d3 ビ + 211,48,30,36,32,40,7,254,0,0,0,0,0,0,8,0,0,0,0,0,0,0,126,0,0,0,0,0,0,40,63,0,85,64,0,0,0,252,31,192,255,128,0,0,0,127,15,208,255,128,0,0,0,63,71,240,255,64,0,0,0,31,195,128,255,64,0,0,0,15,208,0,255,64,0,0,0,6,0,0,255,64,0,0,0,8,0,0,255,64,0,0,0,189,0,0,255,64,0,0,11,255,0,0,255,64,0,1,255,255,64,0,255,64,0,127,255,255,64,0,255,64,31,255,255,224,0,0,255,91,255,255,253,0,0,0,255,255,255,255,128,0,0,0,255,255,255,224,0,0,0,0,255,255,248,0,0,0,0,0,255,249,0,0,0,0,0,0,255,128,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,191,192,0,0,0,0,16,0,191,249,0,0,21,175,240,0,127,255,255,255,255,255,240,0,47,255,255,255,255,255,240,0,11,255,255,255,255,255,240,0,0,107,255,255,255,169,64,0, + // 0x30d4 ピ + 212,48,31,35,24,40,7,254,0,0,0,0,0,0,190,0,0,0,0,0,0,7,255,208,170,64,0,0,0,15,146,240,255,128,0,0,0,31,0,180,255,64,0,0,0,30,0,120,255,64,0,0,0,31,0,184,255,64,0,0,0,15,129,240,255,64,0,0,0,7,255,224,255,64,0,0,0,45,255,64,255,64,0,0,2,254,0,0,255,64,0,0,111,255,0,0,255,64,0,11,255,255,64,0,255,64,1,255,255,253,0,0,255,64,191,255,255,144,0,0,255,175,255,255,244,0,0,0,255,255,255,254,0,0,0,0,255,255,255,144,0,0,0,0,255,255,224,0,0,0,0,0,255,228,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,64,0,0,0,0,0,0,191,192,0,0,0,0,16,0,191,249,0,0,21,175,240,0,63,255,255,255,255,255,240,0,47,255,255,255,255,255,240,0,11,255,255,255,255,255,240,0,0,107,255,255,255,169,64,0, + // 0x30d5 フ + 213,48,30,30,240,40,5,254,127,255,255,255,255,255,255,0,127,255,255,255,255,255,255,224,127,255,255,255,255,255,255,224,127,255,255,255,255,255,255,208,0,0,0,0,0,0,191,192,0,0,0,0,0,0,255,192,0,0,0,0,0,0,255,128,0,0,0,0,0,1,255,64,0,0,0,0,0,2,255,0,0,0,0,0,0,3,254,0,0,0,0,0,0,7,253,0,0,0,0,0,0,11,252,0,0,0,0,0,0,15,248,0,0,0,0,0,0,47,240,0,0,0,0,0,0,63,240,0,0,0,0,0,0,255,208,0,0,0,0,0,2,255,128,0,0,0,0,0,7,255,0,0,0,0,0,0,31,253,0,0,0,0,0,0,127,248,0,0,0,0,0,2,255,240,0,0,0,0,0,11,255,192,0,0,0,0,0,127,255,0,0,0,0,0,7,255,252,0,0,0,0,0,127,255,224,0,0,0,0,27,255,255,64,0,0,0,0,191,255,248,0,0,0,0,0,63,255,192,0,0,0,0,0,15,248,0,0,0,0,0,0,3,64,0,0,0,0,0, + // 0x30d6 ブ + 214,48,35,38,86,40,4,253,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,20,63,64,0,0,0,0,0,0,252,31,192,0,0,0,0,0,0,190,11,224,0,0,0,0,0,0,63,3,240,0,0,0,0,0,0,47,194,248,0,0,0,0,0,0,15,192,128,127,255,255,255,255,255,255,64,0,127,255,255,255,255,255,255,224,0,127,255,255,255,255,255,255,240,0,127,255,255,255,255,255,255,224,0,0,0,0,0,0,0,127,208,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,7,253,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,31,244,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,191,224,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,3,255,64,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,63,252,0,0,0,0,0,0,0,255,244,0,0,0,0,0,0,7,255,208,0,0,0,0,0,0,47,255,128,0,0,0,0,0,1,255,253,0,0,0,0,0,0,31,255,244,0,0,0,0,0,2,255,255,192,0,0,0,0,0,127,255,254,0,0,0,0,0,0,63,255,224,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,7,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30d7 プ + 215,48,35,37,77,40,5,253,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,11,255,192,0,0,0,0,0,0,31,71,224,0,0,0,0,0,0,45,0,240,0,0,0,0,0,0,60,0,244,0,0,0,0,0,0,61,0,240,255,255,255,255,255,255,255,67,240,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,254,0,255,255,255,255,255,255,255,64,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,11,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,127,208,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,2,255,128,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,15,253,0,0,0,0,0,0,0,63,252,0,0,0,0,0,0,0,191,240,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,31,255,64,0,0,0,0,0,0,127,254,0,0,0,0,0,0,7,255,244,0,0,0,0,0,0,127,255,208,0,0,0,0,0,11,255,255,0,0,0,0,0,1,255,255,248,0,0,0,0,0,0,255,255,192,0,0,0,0,0,0,63,253,0,0,0,0,0,0,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30d8 ヘ + 216,48,36,26,234,40,2,0,0,0,0,47,64,0,0,0,0,0,0,0,255,224,0,0,0,0,0,0,3,255,248,0,0,0,0,0,0,15,255,255,0,0,0,0,0,0,63,255,255,192,0,0,0,0,0,191,225,255,224,0,0,0,0,1,255,192,63,248,0,0,0,0,7,255,0,15,254,0,0,0,0,15,253,0,7,255,128,0,0,0,63,248,0,1,255,224,0,0,0,255,240,0,0,127,244,0,0,2,255,192,0,0,47,253,0,0,11,255,64,0,0,11,255,64,0,47,254,0,0,0,3,255,192,0,191,252,0,0,0,0,255,240,0,63,240,0,0,0,0,63,252,0,15,208,0,0,0,0,31,255,0,3,128,0,0,0,0,7,255,128,0,0,0,0,0,0,2,255,224,0,0,0,0,0,0,0,255,248,0,0,0,0,0,0,0,63,253,0,0,0,0,0,0,0,15,255,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,2,240,0,0,0,0,0,0,0,0,144,0,0,0,0,0,0,0,0,0, + // 0x30d9 ベ + 217,48,36,29,5,40,2,0,0,0,0,0,0,0,0,47,0,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,180,47,192,0,0,0,0,0,2,252,15,224,0,0,0,126,0,0,254,7,244,0,0,2,255,208,0,127,66,252,0,0,11,255,244,0,47,192,224,0,0,31,255,254,0,15,208,0,0,0,63,255,255,128,11,128,0,0,0,255,209,255,208,0,0,0,0,3,255,64,127,244,0,0,0,0,11,254,0,31,253,0,0,0,0,31,252,0,7,255,64,0,0,0,127,240,0,2,255,208,0,0,0,255,208,0,0,191,240,0,0,3,255,128,0,0,47,252,0,0,15,255,0,0,0,15,255,0,0,63,252,0,0,0,3,255,192,0,255,244,0,0,0,0,255,240,0,63,224,0,0,0,0,127,248,0,31,192,0,0,0,0,31,254,0,7,0,0,0,0,0,11,255,128,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,0,255,244,0,0,0,0,0,0,0,63,253,0,0,0,0,0,0,0,31,253,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,2,224,0,0,0,0,0,0,0,0,128, + // 0x30da ペ + 218,48,36,29,5,40,2,0,0,0,0,0,0,0,7,254,0,0,0,0,0,0,0,31,255,192,0,0,0,0,0,0,62,7,224,0,0,0,0,0,0,124,1,240,0,0,0,127,0,0,184,0,240,0,0,2,255,208,0,184,0,240,0,0,11,255,244,0,124,2,240,0,0,31,255,254,0,63,91,208,0,0,63,255,255,128,31,255,128,0,0,255,209,255,208,2,253,0,0,3,255,64,127,244,0,0,0,0,11,254,0,31,253,0,0,0,0,31,252,0,7,255,64,0,0,0,127,240,0,2,255,208,0,0,0,255,208,0,0,191,240,0,0,3,255,128,0,0,47,252,0,0,15,255,0,0,0,15,255,0,0,63,252,0,0,0,3,255,192,0,255,244,0,0,0,0,255,240,0,127,224,0,0,0,0,127,248,0,31,192,0,0,0,0,31,254,0,7,64,0,0,0,0,11,255,128,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,0,255,244,0,0,0,0,0,0,0,63,253,0,0,0,0,0,0,0,31,253,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,2,224,0,0,0,0,0,0,0,0,128, + // 0x30db ホ + 219,48,35,34,50,40,3,254,0,0,0,2,255,0,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,192,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,1,0,1,254,0,1,0,0,0,7,224,1,254,0,31,128,0,0,15,248,1,254,0,127,208,0,0,31,240,1,254,0,63,240,0,0,63,224,1,254,0,15,248,0,0,191,192,1,254,0,7,253,0,1,255,64,1,254,0,3,255,0,3,254,0,1,254,0,0,255,128,15,252,0,1,254,0,0,191,192,63,244,0,1,254,0,0,63,224,191,224,0,1,254,0,0,31,244,191,192,0,1,254,0,0,15,240,31,0,0,1,254,0,0,7,64,0,0,0,2,254,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,31,255,254,0,0,0,0,0,0,31,255,253,0,0,0,0,0,0,31,255,252,0,0,0,0,0,0,11,255,224,0,0,0,0, + // 0x30dc ボ + 220,48,36,36,68,40,2,253,0,0,0,0,0,0,0,1,224,0,0,0,0,0,0,2,131,244,0,0,0,1,255,0,15,193,252,0,0,0,0,255,0,7,240,189,0,0,0,0,255,0,3,244,63,0,0,0,0,255,0,1,252,47,0,0,0,0,255,0,0,252,0,0,0,0,0,255,0,0,80,0,0,0,0,0,255,0,0,0,0,31,255,255,255,255,255,255,255,224,31,255,255,255,255,255,255,255,224,31,255,255,255,255,255,255,255,224,31,255,255,255,255,255,255,255,208,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,1,64,0,255,0,1,64,0,0,3,244,0,255,0,31,192,0,0,11,252,0,255,0,63,240,0,0,15,244,0,255,0,31,244,0,0,63,240,0,255,0,11,252,0,0,191,192,0,255,0,3,255,0,0,255,128,0,255,0,1,255,64,3,255,0,0,255,0,0,191,192,11,252,0,0,255,0,0,63,224,47,244,0,0,255,0,0,47,240,191,240,0,0,255,0,0,15,248,63,192,0,0,255,0,0,11,240,11,0,0,0,255,0,0,3,64,0,0,0,0,255,0,0,0,0,0,0,4,2,255,0,0,0,0,0,0,15,255,255,0,0,0,0,0,0,15,255,255,0,0,0,0,0,0,15,255,253,0,0,0,0,0,0,6,191,224,0,0,0,0, + // 0x30dd ポ + 221,48,36,37,77,40,2,253,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,1,255,244,0,0,0,0,0,0,3,224,188,0,0,0,1,255,0,7,192,60,0,0,0,0,255,0,11,128,45,0,0,0,0,255,0,7,192,60,0,0,0,0,255,0,3,224,188,0,0,0,0,255,0,1,255,240,0,0,0,0,255,0,0,47,128,0,0,0,0,255,0,0,0,0,31,255,255,255,255,255,255,255,224,31,255,255,255,255,255,255,255,224,31,255,255,255,255,255,255,255,224,31,255,255,255,255,255,255,255,208,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,1,64,0,255,0,1,64,0,0,3,244,0,255,0,31,192,0,0,11,252,0,255,0,63,240,0,0,15,244,0,255,0,31,244,0,0,63,240,0,255,0,11,252,0,0,191,192,0,255,0,3,255,0,0,255,128,0,255,0,1,255,64,3,255,0,0,255,0,0,191,192,11,252,0,0,255,0,0,63,224,47,244,0,0,255,0,0,47,240,191,240,0,0,255,0,0,15,248,63,192,0,0,255,0,0,11,240,11,0,0,0,255,0,0,3,64,0,0,0,0,255,0,0,0,0,0,0,4,2,255,0,0,0,0,0,0,15,255,255,0,0,0,0,0,0,15,255,255,0,0,0,0,0,0,15,255,253,0,0,0,0,0,0,6,191,224,0,0,0,0, + // 0x30de マ + 222,48,34,31,23,40,4,253,255,255,255,255,255,255,255,253,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,255,128,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,63,248,0,0,0,0,0,0,0,191,240,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,3,255,64,0,0,0,0,0,0,15,254,0,0,0,1,64,0,0,47,252,0,0,0,7,224,0,0,191,240,0,0,0,47,252,0,2,255,192,0,0,0,47,255,0,11,255,64,0,0,0,7,255,192,47,253,0,0,0,0,1,255,244,255,244,0,0,0,0,0,63,255,255,208,0,0,0,0,0,15,255,255,64,0,0,0,0,0,3,255,252,0,0,0,0,0,0,0,255,248,0,0,0,0,0,0,0,63,253,0,0,0,0,0,0,0,15,255,64,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,0,255,240,0,0,0,0,0,0,0,63,252,0,0,0,0,0,0,0,31,255,0,0,0,0,0,0,0,7,255,128,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,0,248,0,0,0,0,0,0,0,0,16,0,0,0, + // 0x30df ミ + 223,48,27,32,224,40,6,254,0,63,148,0,0,0,0,0,63,255,229,0,0,0,0,191,255,255,249,0,0,0,191,255,255,255,249,0,0,0,111,255,255,255,244,0,0,0,27,255,255,244,0,0,0,0,27,255,240,0,0,0,0,0,27,224,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,64,0,0,0,0,0,2,254,144,0,0,0,0,3,255,255,144,0,0,0,11,255,255,255,144,0,0,6,255,255,255,255,144,0,0,1,191,255,255,255,0,0,0,0,111,255,254,0,0,0,0,0,111,253,0,0,0,0,0,1,188,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,64,0,0,0,0,0,63,255,144,0,0,0,0,127,255,255,144,0,0,0,255,255,255,255,144,0,0,22,255,255,255,255,144,0,0,5,191,255,255,254,64,0,0,1,191,255,255,208,0,0,0,1,191,255,192,0,0,0,0,1,255,128,0,0,0,0,0,7,0, + // 0x30e0 ム + 224,48,35,34,50,40,3,253,0,0,0,47,144,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,127,208,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,11,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,47,240,0,0,32,0,0,0,0,63,224,0,2,248,0,0,0,0,127,192,0,11,252,0,0,0,0,191,192,0,3,255,0,0,0,0,255,128,0,1,255,64,0,0,1,255,0,0,0,255,192,0,0,2,255,0,0,0,127,224,0,0,3,254,0,0,0,47,240,0,0,7,252,0,0,0,15,248,0,0,11,252,0,0,0,11,252,0,0,15,248,0,0,90,255,254,0,0,31,245,107,255,255,255,255,0,170,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,192,255,255,255,255,255,233,64,127,224,255,255,255,165,0,0,0,63,240,186,84,0,0,0,0,0,47,244,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0, + // 0x30e1 メ + 225,48,30,32,0,40,5,254,0,0,0,0,0,3,228,0,0,0,0,0,0,3,254,0,0,0,0,0,0,7,253,0,0,0,0,0,0,15,252,0,0,0,0,0,0,15,244,0,0,4,0,0,0,47,240,0,0,31,0,0,0,63,224,0,0,63,208,0,0,127,192,0,0,255,252,0,0,255,192,0,0,63,255,64,1,255,64,0,0,11,255,224,3,255,0,0,0,0,255,253,11,252,0,0,0,0,47,255,143,248,0,0,0,0,7,255,255,240,0,0,0,0,0,255,255,224,0,0,0,0,0,47,255,192,0,0,0,0,0,7,255,224,0,0,0,0,0,15,255,248,0,0,0,0,0,63,255,255,0,0,0,0,0,191,251,255,192,0,0,0,2,255,194,255,240,0,0,0,15,255,0,191,252,0,0,0,63,253,0,31,255,0,0,0,255,244,0,7,255,192,0,11,255,208,0,1,255,240,0,63,255,0,0,0,127,240,1,255,252,0,0,0,31,192,31,255,224,0,0,0,11,0,255,255,64,0,0,0,0,0,255,248,0,0,0,0,0,0,63,208,0,0,0,0,0,0,10,0,0,0,0,0,0,0, + // 0x30e2 モ + 226,48,33,31,23,40,4,254,3,250,170,170,170,170,170,208,0,3,255,255,255,255,255,255,208,0,3,255,255,255,255,255,255,208,0,3,255,255,255,255,255,255,208,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,191,255,255,255,255,255,255,255,64,191,255,255,255,255,255,255,255,64,191,255,255,255,255,255,255,255,64,191,255,255,255,255,255,255,255,64,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,224,0,0,84,0,0,0,0,255,255,255,255,252,0,0,0,0,127,255,255,255,252,0,0,0,0,31,255,255,255,252,0,0,0,0,1,255,255,255,252,0,0,0,0,0,0,0,0,0,0, + // 0x30e3 ャ + 227,48,29,29,232,40,6,252,0,0,80,0,0,0,0,0,0,31,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,11,244,0,0,0,0,0,0,7,248,0,0,0,24,0,0,3,252,0,0,107,255,0,0,3,252,1,175,255,255,128,0,2,255,255,255,255,255,0,0,91,255,255,255,251,254,0,191,255,255,255,233,7,252,0,255,255,255,228,0,15,240,0,255,255,255,128,0,63,224,0,190,64,63,192,0,191,192,0,0,0,63,192,1,255,0,0,0,0,47,208,7,253,0,0,0,0,31,224,31,248,0,0,0,0,15,240,47,224,0,0,0,0,15,240,2,192,0,0,0,0,11,248,0,0,0,0,0,0,7,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,253,0,0,0,0,0,0,2,254,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,57,0,0,0,0, + // 0x30e4 ヤ + 228,48,35,35,59,40,2,253,0,0,27,0,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,63,192,0,0,0,27,208,0,0,63,208,0,1,111,255,248,0,0,47,224,6,191,255,255,248,0,0,31,250,255,255,255,255,240,0,0,111,255,255,255,255,191,224,22,191,255,255,255,254,64,191,192,191,255,255,255,249,0,1,255,64,127,255,255,253,0,0,3,254,0,63,255,147,253,0,0,15,252,0,62,64,3,254,0,0,47,244,0,0,0,1,255,0,0,191,208,0,0,0,0,255,0,1,255,128,0,0,0,0,255,128,7,255,0,0,0,0,0,191,192,31,252,0,0,0,0,0,127,192,31,244,0,0,0,0,0,63,208,1,208,0,0,0,0,0,63,224,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,11,252,0,0,0,0,0,0,0,7,253,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,0,185,64,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30e5 ュ + 229,48,29,21,168,40,6,255,1,255,255,255,255,244,0,0,1,255,255,255,255,254,0,0,1,255,255,255,255,254,0,0,1,255,255,255,255,253,0,0,0,0,0,0,3,253,0,0,0,0,0,0,3,252,0,0,0,0,0,0,7,252,0,0,0,0,0,0,7,252,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,15,244,0,0,0,0,0,0,15,244,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,47,224,0,0,0,0,0,0,47,224,0,0,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,64, + // 0x30e6 ユ + 230,48,34,27,243,40,3,1,0,0,0,0,0,0,16,0,0,0,191,255,255,255,255,253,0,0,0,191,255,255,255,255,255,128,0,0,191,255,255,255,255,255,64,0,0,191,255,255,255,255,255,64,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,7,253,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,11,252,0,0,0,0,0,0,0,11,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,63,224,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,80,0,0,0,0,0,0,0,16, + // 0x30e7 ョ + 231,48,23,26,156,40,8,252,127,255,255,255,255,252,127,255,255,255,255,252,127,255,255,255,255,252,42,170,170,170,171,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,10,170,170,170,171,252,31,255,255,255,255,252,31,255,255,255,255,252,31,255,255,255,255,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,0,0,0,0,2,252,191,255,255,255,255,252,191,255,255,255,255,252,191,255,255,255,255,252,186,170,170,170,171,252,0,0,0,0,2,252,0,0,0,0,0,84, + // 0x30e8 ヨ + 232,48,28,30,210,40,6,254,127,255,255,255,255,255,254,127,255,255,255,255,255,254,127,255,255,255,255,255,253,127,255,255,255,255,255,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,31,255,255,255,255,255,253,31,255,255,255,255,255,253,31,255,255,255,255,255,253,31,255,255,255,255,255,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,0,0,0,0,0,2,253,255,255,255,255,255,255,253,255,255,255,255,255,255,253,255,255,255,255,255,255,253,255,255,255,255,255,255,254,0,0,0,0,0,2,254,0,0,0,0,0,2,253, + // 0x30e9 ラ + 233,48,31,33,8,40,5,253,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,170,170,170,170,170,175,128,191,255,255,255,255,255,255,244,191,255,255,255,255,255,255,240,191,255,255,255,255,255,255,240,0,0,0,0,0,0,63,208,0,0,0,0,0,0,127,192,0,0,0,0,0,0,255,192,0,0,0,0,0,0,255,64,0,0,0,0,0,2,255,0,0,0,0,0,0,7,253,0,0,0,0,0,0,15,252,0,0,0,0,0,0,47,244,0,0,0,0,0,0,191,224,0,0,0,0,0,2,255,192,0,0,0,0,0,11,255,0,0,0,0,0,0,127,253,0,0,0,0,0,2,255,244,0,0,0,0,0,47,255,192,0,0,0,0,6,255,255,0,0,0,0,1,191,255,244,0,0,0,0,3,255,255,128,0,0,0,0,0,255,248,0,0,0,0,0,0,63,128,0,0,0,0,0,0,20,0,0,0,0,0, + // 0x30ea リ + 234,48,24,33,198,40,8,254,0,0,0,0,2,169,191,192,0,0,3,253,191,192,0,0,3,253,127,192,0,0,3,253,127,192,0,0,3,253,127,192,0,0,3,253,127,192,0,0,3,253,127,192,0,0,3,253,127,192,0,0,3,253,127,192,0,0,3,253,127,192,0,0,3,253,127,192,0,0,3,253,127,192,0,0,3,253,127,192,0,0,3,253,127,192,0,0,3,253,127,192,0,0,3,252,127,192,0,0,7,252,127,192,0,0,7,252,191,192,0,0,11,252,191,192,0,0,15,248,21,64,0,0,15,244,0,0,0,0,31,240,0,0,0,0,63,240,0,0,0,0,191,208,0,0,0,2,255,192,0,0,0,11,255,0,0,0,0,63,253,0,0,0,2,255,248,0,0,0,47,255,224,0,0,7,255,255,64,0,0,3,255,248,0,0,0,0,255,144,0,0,0,0,56,0,0,0, + // 0x30eb ル + 235,48,36,32,32,40,2,254,0,0,255,64,7,252,0,0,0,0,0,255,64,3,252,0,0,0,0,0,255,64,3,252,0,0,0,0,0,255,64,3,252,0,0,0,0,0,255,64,3,252,0,0,0,0,0,255,64,3,252,0,0,0,0,0,255,64,3,252,0,0,0,0,0,255,64,3,252,0,0,0,0,0,255,64,3,252,0,0,0,0,0,255,0,3,252,0,0,0,0,0,255,0,3,252,0,0,0,0,0,255,0,3,252,0,0,0,0,0,255,0,3,252,0,0,0,0,0,255,0,3,252,0,0,0,0,0,255,0,3,252,0,0,0,0,0,255,0,3,252,0,0,0,0,1,255,0,3,252,0,0,16,0,1,254,0,3,252,0,0,60,0,2,253,0,3,252,0,0,254,0,3,253,0,3,252,0,3,255,0,7,252,0,3,252,0,15,254,0,15,248,0,3,252,0,63,248,0,31,244,0,3,252,1,255,240,0,63,240,0,3,252,11,255,128,0,127,208,0,3,252,127,254,0,0,255,192,0,3,255,255,244,0,3,255,64,0,3,255,255,208,0,15,254,0,0,3,255,254,0,0,127,252,0,0,7,255,244,0,0,127,240,0,0,3,255,128,0,0,11,192,0,0,0,252,0,0,0,1,0,0,0,0,16,0,0,0, + // 0x30ec レ + 236,48,29,32,0,40,8,254,127,208,0,0,0,0,0,0,127,208,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,44,0,63,192,0,0,0,0,126,0,63,192,0,0,0,1,255,64,63,192,0,0,0,11,255,0,63,192,0,0,0,47,253,0,63,192,0,0,1,255,244,0,63,192,0,0,11,255,208,0,63,192,0,0,63,255,0,0,63,192,0,2,255,248,0,0,63,192,0,47,255,208,0,0,63,192,2,255,255,0,0,0,63,192,47,255,248,0,0,0,63,219,255,255,128,0,0,0,63,255,255,248,0,0,0,0,127,255,255,128,0,0,0,0,127,255,244,0,0,0,0,0,47,254,0,0,0,0,0,0,7,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30ed ロ + 237,48,30,30,240,40,5,254,191,255,255,255,255,255,255,224,127,255,255,255,255,255,255,224,127,255,255,255,255,255,255,224,127,255,255,255,255,255,255,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,128,0,0,0,0,47,224,127,255,255,255,255,255,255,224,127,255,255,255,255,255,255,224,127,255,255,255,255,255,255,224,127,255,255,255,255,255,255,224,191,128,0,0,0,0,47,224,191,192,0,0,0,0,47,224,0,0,0,0,0,0,0,0, + // 0x30ee ヮ + 238,48,27,27,189,40,7,251,170,170,170,170,170,175,64,191,255,255,255,255,255,240,191,255,255,255,255,255,244,191,255,255,255,255,255,240,191,64,0,0,0,47,240,191,64,0,0,0,47,224,191,64,0,0,0,63,208,191,64,0,0,0,63,208,191,64,0,0,0,127,192,191,64,0,0,0,191,192,191,64,0,0,0,255,128,255,64,0,0,1,255,0,85,0,0,0,2,255,0,0,0,0,0,3,253,0,0,0,0,0,15,252,0,0,0,0,0,47,244,0,0,0,0,0,127,240,0,0,0,0,1,255,208,0,0,0,0,11,255,64,0,0,0,0,63,254,0,0,0,0,2,255,248,0,0,0,0,31,255,208,0,0,0,6,255,255,64,0,0,0,7,255,248,0,0,0,0,2,255,192,0,0,0,0,0,184,0,0,0,0,0,0,0,0,0,0,0, + // 0x30ef ワ + 239,48,31,32,0,40,5,253,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,244,255,255,255,255,255,255,255,240,255,64,0,0,0,0,63,240,255,64,0,0,0,0,63,224,255,64,0,0,0,0,63,208,255,64,0,0,0,0,127,208,255,64,0,0,0,0,127,192,255,64,0,0,0,0,191,192,255,64,0,0,0,0,255,128,255,64,0,0,0,0,255,64,255,64,0,0,0,1,255,0,255,64,0,0,0,3,255,0,170,64,0,0,0,3,254,0,0,0,0,0,0,11,252,0,0,0,0,0,0,15,252,0,0,0,0,0,0,47,244,0,0,0,0,0,0,127,240,0,0,0,0,0,1,255,208,0,0,0,0,0,3,255,128,0,0,0,0,0,15,255,0,0,0,0,0,0,127,252,0,0,0,0,0,2,255,244,0,0,0,0,0,31,255,192,0,0,0,0,0,191,255,0,0,0,0,0,27,255,252,0,0,0,0,2,255,255,224,0,0,0,0,2,255,255,0,0,0,0,0,0,191,244,0,0,0,0,0,0,46,64,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30f0 ヰ + 240,48,34,35,59,40,3,253,0,0,0,0,0,21,64,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,255,255,255,255,255,255,255,192,15,234,255,234,170,191,250,171,192,0,0,127,128,0,47,208,0,0,0,0,127,128,0,47,208,0,0,0,0,127,128,0,47,208,0,0,0,0,127,128,0,47,208,0,0,0,0,127,128,0,47,208,0,0,0,0,127,128,0,47,208,0,0,0,0,127,128,0,47,208,0,0,0,0,127,128,0,47,208,0,0,0,0,127,128,0,47,208,0,0,0,0,127,128,0,47,208,0,0,0,0,127,128,0,47,208,0,0,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,21,64,0,0, + // 0x30f1 ヱ + 241,48,34,28,252,40,3,0,11,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,208,11,255,255,255,255,255,255,255,192,11,255,255,255,255,255,255,255,64,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,31,248,0,0,0,0,15,248,0,63,240,0,0,0,0,15,248,0,255,192,0,0,0,0,15,248,3,255,64,0,0,0,0,15,244,15,254,0,0,0,0,0,15,244,63,248,0,0,0,0,0,15,244,11,224,0,0,0,0,0,15,244,1,128,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,84,0,0,0,0,0,0,0,16, + // 0x30f2 ヲ + 242,48,30,32,0,40,6,253,255,255,255,255,255,255,253,0,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,192,0,0,0,0,0,0,191,192,0,0,0,0,0,0,255,128,0,0,0,0,0,0,255,64,0,0,0,0,0,0,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,2,254,0,0,0,0,0,0,3,253,0,63,255,255,255,255,255,252,0,63,255,255,255,255,255,252,0,63,255,255,255,255,255,248,0,47,234,170,170,170,191,240,0,0,0,0,0,0,47,240,0,0,0,0,0,0,63,208,0,0,0,0,0,0,255,192,0,0,0,0,0,2,255,64,0,0,0,0,0,7,255,0,0,0,0,0,0,31,252,0,0,0,0,0,0,127,244,0,0,0,0,0,2,255,224,0,0,0,0,0,11,255,128,0,0,0,0,0,127,254,0,0,0,0,0,7,255,244,0,0,0,0,0,127,255,208,0,0,0,0,27,255,254,0,0,0,0,0,191,255,244,0,0,0,0,0,47,255,64,0,0,0,0,0,11,244,0,0,0,0,0,0,2,0,0,0,0,0,0, + // 0x30f3 ン + 243,48,32,31,248,40,5,255,0,128,0,0,0,0,0,0,3,244,0,0,0,0,0,0,15,254,0,0,0,0,0,0,31,255,128,0,0,0,0,0,3,255,240,0,0,0,0,0,0,191,253,0,0,0,0,0,0,31,255,64,0,0,0,16,0,7,255,208,0,0,0,52,0,0,255,244,0,0,0,188,0,0,63,224,0,0,0,254,0,0,15,128,0,0,3,255,0,0,1,0,0,0,11,254,0,0,0,0,0,0,31,252,0,0,0,0,0,0,63,244,0,0,0,0,0,0,255,224,0,0,0,0,0,3,255,192,0,0,0,0,0,15,255,0,0,0,0,0,0,63,252,0,0,0,0,0,1,255,244,0,0,0,0,0,11,255,192,0,0,0,0,0,63,255,0,0,0,0,0,1,255,252,0,0,0,0,0,31,255,224,0,0,0,0,1,255,255,64,0,0,0,0,47,255,252,0,0,0,0,27,255,255,208,0,0,0,27,255,255,254,0,0,0,0,127,255,255,224,0,0,0,0,63,255,253,0,0,0,0,0,15,255,128,0,0,0,0,0,7,144,0,0,0,0,0,0, + // 0x30f4 ヴ + 244,48,34,38,86,40,4,253,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,125,0,0,0,0,0,0,0,116,63,0,0,0,0,191,192,1,252,47,128,0,0,0,127,192,0,190,15,208,0,0,0,127,192,0,63,7,240,0,0,0,127,192,0,47,131,224,0,0,0,127,192,0,15,192,0,0,0,0,127,192,0,5,0,0,0,0,0,127,192,0,0,0,0,255,255,255,255,255,255,255,224,0,255,255,255,255,255,255,255,248,0,191,255,255,255,255,255,255,248,0,191,234,170,170,170,170,191,244,0,191,64,0,0,0,0,47,240,0,191,64,0,0,0,0,47,240,0,191,64,0,0,0,0,63,224,0,191,64,0,0,0,0,63,208,0,191,64,0,0,0,0,127,192,0,191,64,0,0,0,0,191,192,0,191,64,0,0,0,0,255,128,0,255,64,0,0,0,1,255,64,0,255,64,0,0,0,3,255,0,0,0,0,0,0,0,7,254,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,31,248,0,0,0,0,0,0,0,127,240,0,0,0,0,0,0,0,255,208,0,0,0,0,0,0,7,255,128,0,0,0,0,0,0,31,255,0,0,0,0,0,0,0,191,252,0,0,0,0,0,0,7,255,240,0,0,0,0,0,0,191,255,192,0,0,0,0,0,111,255,254,0,0,0,0,0,2,255,255,240,0,0,0,0,0,0,255,255,64,0,0,0,0,0,0,63,244,0,0,0,0,0,0,0,14,0,0,0,0,0,0, + // 0x30f5 ヵ + 245,48,26,29,203,40,6,252,0,0,6,164,0,0,0,0,0,11,244,0,0,0,0,0,11,244,0,0,0,0,0,7,244,0,0,0,0,0,11,244,0,0,0,0,0,11,240,0,0,0,58,170,175,250,170,170,64,63,255,255,255,255,255,240,63,255,255,255,255,255,240,63,255,255,255,255,255,240,0,0,15,224,0,15,240,0,0,15,224,0,15,240,0,0,31,208,0,15,240,0,0,47,192,0,15,240,0,0,63,192,0,15,240,0,0,63,128,0,15,224,0,0,191,64,0,15,224,0,0,255,0,0,15,224,0,2,254,0,0,31,208,0,3,253,0,0,31,208,0,11,252,0,0,47,192,0,47,240,0,0,63,192,0,191,224,0,0,63,192,2,255,192,0,0,191,128,11,255,0,15,235,255,64,127,252,0,15,255,255,0,63,240,0,15,255,253,0,11,128,0,11,255,244,0,1,0,0,0,0,0,0, + // 0x30f6 ヶ + 246,48,30,30,240,40,5,251,0,0,164,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,255,0,0,0,0,0,0,2,255,0,0,0,0,0,0,3,253,0,0,0,0,0,0,3,252,0,0,0,0,0,0,11,254,170,170,170,170,128,0,31,255,255,255,255,255,208,0,63,255,255,255,255,255,208,0,191,255,255,255,255,255,208,1,255,64,0,127,128,0,0,3,255,0,0,191,64,0,0,15,252,0,0,191,64,0,0,63,244,0,0,255,0,0,0,255,224,0,0,255,0,0,0,191,192,0,1,255,0,0,0,15,0,0,2,254,0,0,0,0,0,0,3,252,0,0,0,0,0,0,11,252,0,0,0,0,0,0,15,248,0,0,0,0,0,0,63,240,0,0,0,0,0,0,127,224,0,0,0,0,0,1,255,192,0,0,0,0,0,7,255,64,0,0,0,0,0,31,254,0,0,0,0,0,0,191,248,0,0,0,0,0,3,255,224,0,0,0,0,0,0,255,128,0,0,0,0,0,0,45,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x30f7 ヷ + 247,48,34,39,95,40,4,252,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,80,190,0,0,0,0,0,0,3,244,63,64,0,0,0,0,0,2,252,47,192,0,0,0,0,0,0,253,15,208,0,0,0,0,0,0,191,11,208,0,0,0,0,0,0,62,0,0,0,0,0,0,0,0,16,0,0,255,255,255,255,255,255,255,128,0,255,255,255,255,255,255,255,244,0,255,255,255,255,255,255,255,244,0,255,255,255,255,255,255,255,240,0,255,128,0,0,0,0,63,240,0,255,128,0,0,0,0,63,240,0,255,128,0,0,0,0,63,224,0,255,128,0,0,0,0,63,208,0,255,128,0,0,0,0,127,192,0,255,128,0,0,0,0,191,192,0,255,128,0,0,0,0,255,192,0,255,128,0,0,0,0,255,128,0,255,128,0,0,0,1,255,0,0,255,128,0,0,0,3,255,0,0,85,0,0,0,0,3,254,0,0,0,0,0,0,0,11,252,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,191,224,0,0,0,0,0,0,2,255,192,0,0,0,0,0,0,7,255,64,0,0,0,0,0,0,47,254,0,0,0,0,0,0,0,255,248,0,0,0,0,0,0,7,255,224,0,0,0,0,0,0,127,255,128,0,0,0,0,0,6,255,254,0,0,0,0,0,1,191,255,244,0,0,0,0,0,2,255,255,128,0,0,0,0,0,0,191,252,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,4,0,0,0,0,0,0, + // 0x30f8 ヸ + 248,48,36,37,77,40,3,253,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,3,224,0,0,0,0,0,0,3,210,240,0,0,0,0,0,63,194,240,248,0,0,0,0,0,63,193,244,188,0,0,0,0,0,63,192,248,125,0,0,0,0,0,63,192,188,32,0,0,0,0,0,63,192,52,0,0,0,0,0,0,63,192,0,0,47,234,170,170,170,191,234,191,64,47,255,255,255,255,255,255,255,64,47,255,255,255,255,255,255,255,64,47,255,255,255,255,255,255,255,64,0,0,255,0,0,63,192,0,0,0,0,255,0,0,63,192,0,0,0,0,255,0,0,63,192,0,0,0,0,255,0,0,63,192,0,0,0,0,255,0,0,63,192,0,0,0,0,255,0,0,63,192,0,0,0,0,255,0,0,63,192,0,0,0,0,255,0,0,63,192,0,0,0,0,255,0,0,63,192,0,0,0,0,255,0,0,63,192,0,0,0,0,255,0,0,63,192,0,0,255,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,255,208,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,21,64,0,0, + // 0x30f9 ヹ + 249,48,36,36,68,40,2,255,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,7,224,0,0,0,0,0,0,31,3,240,0,0,0,0,0,0,47,130,248,0,0,0,0,0,0,15,208,252,0,0,0,0,0,0,7,240,189,0,0,0,0,0,0,3,240,0,0,0,0,0,0,0,1,64,0,3,255,255,255,255,255,255,255,128,3,255,255,255,255,255,255,255,240,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,192,0,0,0,0,0,0,1,255,64,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,11,252,0,0,0,0,7,252,0,47,244,0,0,0,0,7,252,0,191,224,0,0,0,0,7,252,2,255,192,0,0,0,0,7,252,11,255,0,0,0,0,0,7,252,31,252,0,0,0,0,0,7,252,3,240,0,0,0,0,0,7,252,0,128,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,7,252,0,0,0,0,127,255,255,255,255,255,255,255,248,127,255,255,255,255,255,255,255,248,127,255,255,255,255,255,255,255,248,127,255,255,255,255,255,255,255,248,21,0,0,0,0,0,0,0,20, + // 0x30fa ヺ + 250,48,34,39,95,40,4,252,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,96,191,0,0,0,0,0,0,3,244,63,64,0,0,0,0,0,1,252,31,192,0,0,0,0,0,0,253,15,208,0,0,0,0,0,0,127,7,64,0,0,0,0,0,0,56,0,0,127,255,255,255,255,255,255,0,0,127,255,255,255,255,255,255,224,0,127,255,255,255,255,255,255,240,0,127,255,255,255,255,255,255,224,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,255,0,0,15,255,255,255,255,255,254,0,0,15,255,255,255,255,255,253,0,0,15,255,255,255,255,255,252,0,0,15,234,170,170,170,175,248,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,3,255,64,0,0,0,0,0,0,11,254,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,255,240,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,47,255,0,0,0,0,0,0,1,255,252,0,0,0,0,0,0,31,255,240,0,0,0,0,0,6,255,255,64,0,0,0,0,0,63,255,248,0,0,0,0,0,0,31,255,208,0,0,0,0,0,0,7,253,0,0,0,0,0,0,0,1,128,0,0,0,0,0,0, + // 0x30fb ・ + 251,48,10,10,30,40,15,10,2,248,0,31,255,64,63,255,192,127,255,208,191,255,224,127,255,208,63,255,192,47,255,128,7,253,0,0,0,0, + // 0x30fc ー + 252,48,32,6,48,40,4,12,170,170,170,170,170,170,170,170,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0, + // 0x30fd ヽ + 253,48,19,20,100,40,11,4,2,0,0,0,0,15,208,0,0,0,127,244,0,0,0,127,253,0,0,0,15,255,64,0,0,3,255,208,0,0,0,255,244,0,0,0,63,253,0,0,0,15,255,0,0,0,3,255,192,0,0,0,255,240,0,0,0,63,252,0,0,0,31,254,0,0,0,11,255,128,0,0,2,255,208,0,0,0,255,240,0,0,0,63,252,0,0,0,31,248,0,0,0,11,208,0,0,0,2,0, + // 0x30fe ヾ + 254,48,22,26,156,40,10,3,0,0,0,0,28,0,0,0,0,0,191,0,0,0,1,240,63,64,0,0,3,248,31,192,0,0,0,253,15,224,0,0,0,191,7,240,7,128,0,63,66,208,47,224,0,31,192,0,191,248,0,13,0,0,47,254,0,0,0,0,11,255,128,0,0,0,2,255,224,0,0,0,0,191,248,0,0,0,0,47,254,0,0,0,0,11,255,128,0,0,0,2,255,208,0,0,0,0,191,244,0,0,0,0,63,252,0,0,0,0,15,255,0,0,0,0,3,255,192,0,0,0,1,255,224,0,0,0,0,191,244,0,0,0,0,47,252,0,0,0,0,15,244,0,0,0,0,7,192,0,0,0,0,1,0,0, + // 0x30ff ヿ + 255,48,25,34,238,40,7,253,127,255,255,255,255,255,128,127,255,255,255,255,255,128,127,255,255,255,255,255,128,63,255,255,255,255,255,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,127,128,0,0,0,0,0,106,128, + // 0x4eee 仮 + 238,78,38,38,124,40,1,252,0,0,4,0,0,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,0,63,193,170,170,170,170,170,64,0,0,191,67,255,255,255,255,255,128,0,0,255,3,255,255,255,255,255,128,0,2,254,3,255,255,255,255,255,128,0,3,252,3,248,0,0,0,0,0,0,11,248,3,248,0,0,0,0,0,0,31,240,3,248,0,0,0,0,0,0,63,208,3,248,0,0,0,0,0,0,191,208,3,248,0,0,0,0,0,1,255,208,3,248,0,0,0,0,0,3,255,208,3,248,0,0,0,0,0,15,255,208,3,255,255,255,255,253,0,63,255,208,3,255,255,255,255,255,0,255,239,208,3,255,255,255,255,254,0,191,143,208,3,255,245,85,86,253,0,63,15,208,3,255,244,0,2,252,0,44,15,208,3,251,248,0,3,252,0,0,15,208,3,250,252,0,7,248,0,0,15,208,3,244,254,0,11,240,0,0,15,208,7,244,191,0,15,240,0,0,15,208,7,244,127,128,47,208,0,0,15,208,11,240,63,192,63,192,0,0,15,208,11,240,31,240,191,64,0,0,15,208,15,240,11,245,255,0,0,0,15,208,15,224,3,255,253,0,0,0,15,208,31,224,2,255,252,0,0,0,15,208,47,208,0,255,240,0,0,0,15,208,63,192,0,191,240,0,0,0,15,208,63,128,2,255,252,0,0,0,15,208,127,64,15,255,255,64,0,0,15,208,255,0,127,250,255,224,0,0,15,209,255,2,255,224,127,254,0,0,15,211,253,47,255,64,15,255,224,0,15,215,252,47,253,0,2,255,192,0,15,208,244,15,224,0,0,63,64,0,10,128,32,2,0,0,0,6,0, + // 0x540d 名 + 13,84,35,38,86,40,1,252,0,0,0,46,144,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,7,255,255,255,255,0,0,0,0,31,255,255,255,255,192,0,0,0,63,255,255,255,255,128,0,0,1,255,213,85,85,255,0,0,0,7,255,0,0,2,255,0,0,0,31,252,0,0,3,253,0,0,0,191,253,0,0,15,248,0,0,7,255,255,128,0,31,240,0,0,47,255,255,240,0,63,208,0,0,63,248,63,252,0,255,192,0,0,15,208,11,255,3,255,0,0,0,6,0,2,255,203,253,0,0,0,0,0,0,127,255,244,0,0,0,0,0,0,31,255,224,0,0,0,0,0,0,11,255,128,0,0,0,0,0,0,31,254,0,0,0,0,0,0,0,191,255,255,255,255,244,0,0,7,255,255,255,255,255,244,0,0,63,255,255,255,255,255,244,0,2,255,254,85,85,85,91,244,0,111,255,254,0,0,0,7,244,11,255,254,254,0,0,0,7,244,127,255,224,254,0,0,0,7,244,47,254,0,254,0,0,0,7,244,15,208,0,254,0,0,0,7,244,5,0,0,254,0,0,0,7,244,0,0,0,254,0,0,0,7,244,0,0,0,254,0,0,0,7,244,0,0,0,254,85,85,85,91,244,0,0,0,255,255,255,255,255,244,0,0,0,255,255,255,255,255,244,0,0,0,255,255,255,255,255,244,0,0,0,254,0,0,0,7,244,0,0,0,169,0,0,0,7,244, + // 0x5b9a 定 + 154,91,37,38,124,40,1,252,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,6,170,170,170,191,234,170,170,169,0,11,255,255,255,255,255,255,255,254,0,11,255,255,255,255,255,255,255,254,0,11,255,255,255,255,255,255,255,254,0,11,240,0,0,0,0,0,0,254,0,11,240,0,0,0,0,0,0,254,0,11,240,0,0,0,0,0,0,254,0,11,240,0,0,0,0,0,0,254,0,11,240,170,170,170,170,170,160,254,0,11,240,255,255,255,255,255,244,254,0,0,0,255,255,255,255,255,244,0,0,0,0,255,255,255,255,255,244,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,1,253,0,63,192,0,0,0,0,0,2,253,0,63,192,0,0,0,0,0,3,252,0,63,192,0,0,0,0,0,3,252,0,63,255,255,255,64,0,0,3,248,0,63,255,255,255,64,0,0,7,248,0,63,255,255,255,64,0,0,11,252,0,63,213,85,85,0,0,0,15,253,0,63,192,0,0,0,0,0,31,255,0,63,192,0,0,0,0,0,47,255,128,63,192,0,0,0,0,0,127,255,224,63,192,0,0,0,0,0,255,143,248,63,192,0,0,0,0,1,255,7,255,127,192,0,0,0,0,3,254,1,255,255,192,0,0,0,0,15,252,0,127,255,255,234,170,170,128,63,244,0,15,255,255,255,255,255,128,127,208,0,0,191,255,255,255,255,0,15,128,0,0,5,175,255,255,255,0,2,0,0,0,0,0,0,0,0,0, + // 0x7247 片 + 71,114,34,38,86,40,2,252,0,0,0,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,255,255,255,255,255,255,224,0,63,255,255,255,255,255,255,240,0,63,255,255,255,255,255,255,240,0,63,255,255,255,255,255,255,240,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,191,255,255,255,255,255,64,0,0,191,255,255,255,255,255,64,0,0,255,0,0,0,0,191,64,0,0,255,0,0,0,0,191,64,0,0,255,0,0,0,0,191,64,0,2,254,0,0,0,0,191,64,0,3,253,0,0,0,0,191,64,0,7,252,0,0,0,0,191,64,0,11,248,0,0,0,0,191,64,0,15,244,0,0,0,0,191,64,0,63,240,0,0,0,0,191,64,0,191,208,0,0,0,0,191,64,0,255,192,0,0,0,0,191,64,0,191,0,0,0,0,0,191,64,0,45,0,0,0,0,0,191,64,0,8,0,0,0,0,0,191,64,0, + // 0x793a 示 + 58,121,36,35,59,40,2,252,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,170,170,170,170,170,170,170,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,106,170,170,170,255,170,170,170,169,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,2,64,0,255,0,1,128,0,0,11,244,0,255,0,31,208,0,0,15,240,0,255,0,31,240,0,0,47,240,0,255,0,15,248,0,0,63,208,0,255,0,3,253,0,0,191,192,0,255,0,2,255,0,0,255,64,0,255,0,0,255,128,3,255,0,0,255,0,0,127,192,11,252,0,0,255,0,0,63,224,31,248,0,0,255,0,0,31,240,63,240,0,0,255,0,0,15,248,255,192,0,0,255,0,0,7,252,191,64,0,0,255,0,0,3,252,30,0,0,0,255,0,0,2,224,0,0,47,255,255,0,0,0,0,0,0,31,255,255,0,0,0,0,0,0,15,255,252,0,0,0,0,0,0,11,254,144,0,0,0,0, + // 0x7fa9 義 + 169,127,37,38,124,40,2,252,0,0,25,0,0,0,165,0,0,0,0,0,255,0,0,0,255,0,0,0,0,0,127,192,0,2,254,0,0,0,0,0,47,208,0,3,252,0,0,0,11,255,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,255,240,0,15,255,255,255,255,255,255,255,240,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,170,170,170,255,170,170,170,0,0,0,255,255,255,255,255,255,255,0,0,0,255,255,255,255,255,255,255,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,191,255,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,255,254,0,0,0,0,26,0,0,1,0,0,0,0,21,175,255,194,252,11,208,0,0,63,255,255,255,226,252,47,253,0,0,47,255,255,229,2,252,7,255,192,0,0,0,191,0,1,252,0,127,208,0,0,0,191,0,0,253,0,7,64,0,191,255,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,255,255,0,191,255,255,255,255,255,255,255,255,0,0,0,191,0,0,63,128,20,0,0,0,0,191,0,0,63,192,63,128,0,0,0,191,171,248,47,208,255,0,0,106,255,255,255,248,15,231,252,0,0,191,255,255,255,228,11,255,244,0,0,191,255,255,0,0,7,255,192,24,0,0,0,191,0,0,47,255,0,47,64,0,0,191,0,6,255,255,192,63,64,0,0,191,1,191,255,191,249,191,0,3,255,255,7,255,248,15,255,255,0,1,255,254,2,255,64,2,255,253,0,0,255,164,0,224,0,0,47,244,0, + // 0x8868 表 + 104,136,38,38,124,40,1,252,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,3,255,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,255,252,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,63,255,255,255,255,255,255,224,0,0,63,255,255,255,255,255,255,224,0,0,63,255,255,255,255,255,255,224,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,192,0,0,0,0,31,255,255,255,255,255,255,255,255,64,31,255,255,255,255,255,255,255,255,64,31,255,255,255,255,255,255,255,255,64,0,0,0,15,255,252,0,0,0,0,0,0,0,127,241,253,0,0,144,0,0,0,7,255,192,254,0,3,248,0,0,0,47,254,0,191,0,31,253,0,0,2,255,244,0,63,128,191,240,0,0,127,255,224,0,47,195,255,128,0,27,255,255,224,0,31,255,253,0,0,127,255,223,224,0,15,255,224,0,0,47,248,15,224,0,3,255,0,0,0,15,128,15,224,0,2,255,0,0,0,0,0,15,224,0,0,255,192,0,0,0,0,15,224,0,108,63,244,0,0,0,0,15,224,111,252,31,254,0,0,0,0,15,255,255,253,7,255,208,0,0,1,191,255,255,248,0,255,253,0,0,127,255,255,249,0,0,63,255,208,0,63,255,249,0,0,0,7,255,128,0,63,249,0,0,0,0,0,191,0,0,25,0,0,0,0,0,0,5,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Korean_29.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Korean_29.cpp new file mode 100644 index 000000000000..75fec1e45f41 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Korean_29.cpp @@ -0,0 +1,252 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Korean 40pt, capital 'A' height: 29px, width: 100%, range: 0xac70-0xd788, glyphs: 110 +extern const uint8_t NotoSans_Medium_Korean_29[6128] = { + 162,29,112,172,136,215,38,246, // unifont_t + // 0xac70 거 + 112,172,30,38,48,37,2,252,0,0,0,0,0,0,5,80,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,5,85,85,85,80,0,15,240,47,255,255,255,240,0,15,240,47,255,255,255,240,0,15,240,47,255,255,255,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,31,224,0,15,240,0,0,0,47,224,0,15,240,0,0,0,63,208,0,15,240,0,0,0,63,192,0,15,240,0,0,0,127,192,0,15,240,0,0,0,191,133,85,111,240,0,0,0,255,15,255,255,240,0,0,2,254,15,255,255,240,0,0,7,253,15,255,255,240,0,0,15,252,0,0,15,240,0,0,47,240,0,0,15,240,0,0,127,224,0,0,15,240,0,1,255,192,0,0,15,240,0,11,255,0,0,0,15,240,0,47,252,0,0,0,15,240,1,255,240,0,0,0,15,240,11,255,192,0,0,0,15,240,127,254,0,0,0,0,15,240,191,244,0,0,0,0,15,240,63,128,0,0,0,0,15,240,29,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240, + // 0xace0 고 + 224,172,33,29,5,37,2,1,2,255,255,255,255,255,255,192,0,2,255,255,255,255,255,255,192,0,2,255,255,255,255,255,255,192,0,0,85,85,85,85,85,127,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,170,0,0,127,192,0,0,0,0,255,64,0,127,192,0,0,0,0,255,64,0,191,128,0,0,0,0,255,64,0,191,128,0,0,0,0,255,64,0,191,64,0,0,0,0,255,64,0,255,64,0,0,0,0,255,64,0,255,0,0,0,0,0,255,64,0,255,0,0,0,0,0,255,64,1,255,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,85,85,85,255,149,85,85,85,64,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128, + // 0xadf8 그 + 248,173,33,29,5,37,2,1,0,85,85,85,85,85,85,0,0,1,255,255,255,255,255,255,64,0,1,255,255,255,255,255,255,64,0,1,255,255,255,255,255,255,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,253,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,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,85,85,85,85,85,64, + // 0xae09 급 + 9,174,33,36,68,37,2,252,0,85,85,85,85,85,85,0,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,85,85,85,85,85,86,255,85,64,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,64,0,0,0,191,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,85,85,85,85,85,85,0,0, + // 0xae30 기 + 48,174,30,38,48,37,2,252,0,0,0,0,0,0,5,64,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,5,85,85,85,84,0,31,240,15,255,255,255,252,0,31,240,15,255,255,255,252,0,31,240,15,255,255,255,252,0,31,240,0,0,0,3,252,0,31,240,0,0,0,7,252,0,31,240,0,0,0,7,248,0,31,240,0,0,0,11,244,0,31,240,0,0,0,15,244,0,31,240,0,0,0,15,240,0,31,240,0,0,0,47,224,0,31,240,0,0,0,63,208,0,31,240,0,0,0,127,192,0,31,240,0,0,0,255,128,0,31,240,0,0,2,255,0,0,31,240,0,0,7,254,0,0,31,240,0,0,15,252,0,0,31,240,0,0,63,240,0,0,31,240,0,0,255,224,0,0,31,240,0,3,255,128,0,0,31,240,0,31,254,0,0,0,31,240,0,191,248,0,0,0,31,240,7,255,224,0,0,0,31,240,127,255,64,0,0,0,31,240,127,252,0,0,0,0,31,240,47,208,0,0,0,0,31,240,14,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,10,160, + // 0xae45 깅 + 69,174,30,37,40,37,2,252,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,1,85,85,85,84,0,31,224,11,255,255,255,252,0,31,224,11,255,255,255,248,0,31,224,11,255,255,255,248,0,31,224,0,0,0,11,244,0,31,224,0,0,0,15,240,0,31,224,0,0,0,15,240,0,31,224,0,0,0,47,224,0,31,224,0,0,0,63,192,0,31,224,0,0,0,255,128,0,31,224,0,0,2,255,0,0,31,224,0,0,11,252,0,0,31,224,0,0,63,244,0,0,31,224,0,1,255,208,0,0,31,224,0,31,255,64,0,0,31,224,1,255,252,0,0,0,31,224,111,255,224,0,0,0,31,224,127,254,0,0,0,0,31,224,63,224,0,0,0,0,31,224,25,0,0,0,0,0,26,144,0,0,0,111,255,233,0,0,0,0,31,255,255,255,224,0,0,0,255,255,255,255,253,0,0,3,255,249,85,175,255,64,0,15,254,0,0,1,255,192,0,15,244,0,0,0,63,224,0,31,224,0,0,0,31,240,0,47,224,0,0,0,31,240,0,31,224,0,0,0,31,240,0,15,244,0,0,0,63,224,0,15,254,0,0,1,255,192,0,3,255,249,85,111,255,64,0,0,255,255,255,255,253,0,0,0,31,255,255,255,224,0,0,0,0,111,255,233,0,0, + // 0xb044 끄 + 68,176,33,29,5,37,2,1,1,85,85,80,21,85,85,64,0,11,255,255,244,63,255,255,192,0,11,255,255,244,63,255,255,192,0,11,255,255,244,63,255,255,192,0,0,0,11,244,0,0,63,192,0,0,0,11,244,0,0,63,192,0,0,0,11,244,0,0,63,192,0,0,0,15,244,0,0,63,192,0,0,0,15,240,0,0,63,192,0,0,0,15,240,0,0,63,192,0,0,0,15,240,0,0,63,192,0,0,0,15,240,0,0,63,192,0,0,0,31,240,0,0,127,192,0,0,0,47,224,0,0,127,128,0,0,0,47,208,0,0,127,128,0,0,0,63,192,0,0,191,128,0,0,0,63,192,0,0,191,64,0,0,0,127,192,0,0,255,0,0,0,0,191,128,0,0,255,0,0,0,0,255,64,0,1,255,0,0,0,0,255,0,0,1,254,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,85,85,85,85,85,64, + // 0xb0b4 내 + 180,176,30,38,48,37,3,252,0,0,0,0,0,0,5,64,0,0,0,0,10,144,15,224,0,0,0,0,31,224,15,224,0,0,0,0,31,224,15,224,0,0,0,0,31,224,15,224,127,128,0,0,31,224,15,224,127,128,0,0,31,224,15,224,127,128,0,0,31,224,15,224,127,128,0,0,31,224,15,224,127,128,0,0,31,224,15,224,127,128,0,0,31,224,15,224,127,128,0,0,31,224,15,224,127,128,0,0,31,224,15,224,127,128,0,0,31,224,15,224,127,128,0,0,31,224,15,224,127,128,0,0,31,229,95,224,127,128,0,0,31,255,255,224,127,128,0,0,31,255,255,224,127,128,0,0,31,255,255,224,127,128,0,0,31,224,15,224,127,128,0,0,31,224,15,224,127,128,0,0,31,224,15,224,127,128,0,0,31,224,15,224,127,128,0,0,31,224,15,224,127,192,22,189,31,224,15,224,127,255,255,254,31,224,15,224,127,255,255,254,31,224,15,224,127,255,255,233,31,224,15,224,42,85,80,0,31,224,15,224,0,0,0,0,31,224,15,224,0,0,0,0,31,224,15,224,0,0,0,0,31,224,15,224,0,0,0,0,31,224,15,224,0,0,0,0,31,224,15,224,0,0,0,0,31,224,15,224,0,0,0,0,31,224,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224, + // 0xb178 노 + 120,177,33,31,23,37,2,0,0,85,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,85,85,95,249,85,85,64,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,85,85,85,85,85,64, + // 0xb204 누 + 4,178,33,36,68,37,2,252,0,106,0,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,85,85,85,85,85,64,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,95,249,85,85,85,64,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,11,240,0,0,0,0, + // 0xb274 뉴 + 116,178,33,36,68,37,2,252,0,85,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,85,85,85,85,85,85,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,255,85,85,191,213,85,64,0,0,255,0,0,127,128,0,0,0,0,255,0,0,127,128,0,0,0,0,255,0,0,127,128,0,0,0,0,255,0,0,127,128,0,0,0,0,255,0,0,127,128,0,0,0,0,255,0,0,127,128,0,0,0,0,255,0,0,127,128,0,0,0,0,255,0,0,127,128,0,0,0,0,255,0,0,127,128,0,0,0,0,255,0,0,127,128,0,0,0,0,255,0,0,127,128,0,0,0,0,255,0,0,127,128,0,0,0,0,255,0,0,127,128,0,0, + // 0xb2c8 니 + 200,178,28,37,3,37,4,252,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,170,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,0,0,255,255,0,0,0,6,64,255,255,0,21,107,255,128,255,255,255,255,255,255,128,255,255,255,255,255,255,128,255,255,255,255,254,144,0,255,106,85,80,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,255,0,0,0,0,0,0,254, + // 0xb2e4 다 + 228,178,33,38,86,37,3,252,0,0,0,0,0,1,84,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,191,255,255,255,208,3,252,0,0,191,255,255,255,208,3,252,0,0,191,255,255,255,208,3,252,0,0,191,149,85,85,64,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,255,255,128,191,128,0,0,0,3,255,255,128,191,128,0,0,0,3,255,255,128,191,128,0,0,0,3,253,85,64,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,86,191,3,252,0,0,191,255,255,255,255,3,252,0,0,191,255,255,255,255,3,252,0,0,191,255,255,255,233,3,252,0,0,21,85,85,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,2,168,0,0, + // 0xb2f9 당 + 249,178,33,37,77,37,3,252,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,253,0,0,21,85,85,85,0,3,253,0,0,191,255,255,255,128,3,253,0,0,191,255,255,255,128,3,253,0,0,191,255,255,255,128,3,253,0,0,191,128,0,0,0,3,253,0,0,191,128,0,0,0,3,253,0,0,191,128,0,0,0,3,253,0,0,191,128,0,0,0,3,255,255,64,191,128,0,0,0,3,255,255,64,191,128,0,0,0,3,255,255,64,191,128,0,0,0,3,254,85,0,191,128,0,0,0,3,253,0,0,191,128,0,0,5,3,253,0,0,191,149,86,175,255,3,253,0,0,191,255,255,255,255,3,253,0,0,191,255,255,255,255,3,253,0,0,191,255,255,234,80,3,253,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,1,84,0,0,0,0,6,255,254,128,0,0,0,0,1,255,255,255,253,0,0,0,0,15,255,255,255,255,192,0,0,0,63,255,149,91,255,240,0,0,0,191,224,0,0,31,252,0,0,0,255,64,0,0,3,253,0,0,1,255,0,0,0,2,253,0,0,1,254,0,0,0,1,254,0,0,1,255,0,0,0,2,253,0,0,0,255,64,0,0,3,253,0,0,0,191,224,0,0,47,252,0,0,0,63,255,165,107,255,240,0,0,0,15,255,255,255,255,192,0,0,0,1,255,255,255,253,0,0,0,0,0,6,255,254,128,0,0,0, + // 0xb3c4 도 + 196,179,33,31,23,37,2,0,0,85,85,85,85,85,85,0,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,85,85,85,85,85,64,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,85,85,85,85,85,64, + // 0xb3cc 돌 + 204,179,33,36,68,37,2,252,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,255,149,85,85,85,85,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,21,85,95,249,85,85,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,85,85,85,95,249,85,85,85,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0, + // 0xb3d9 동 + 217,179,33,36,68,37,2,252,0,21,85,85,85,85,85,0,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,85,85,85,85,85,64,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,85,85,85,95,249,85,85,85,64,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,191,255,164,0,0,0,0,1,255,255,255,255,128,0,0,0,15,255,255,255,255,244,0,0,0,63,255,148,21,191,253,0,0,0,191,224,0,0,3,255,0,0,0,255,128,0,0,0,255,64,0,0,255,0,0,0,0,191,128,0,0,255,0,0,0,0,191,128,0,0,255,128,0,0,0,255,64,0,0,191,224,0,0,3,255,0,0,0,63,255,148,21,191,253,0,0,0,15,255,255,255,255,244,0,0,0,1,255,255,255,255,128,0,0,0,0,6,255,255,164,0,0,0, + // 0xb418 되 + 24,180,30,38,48,37,2,252,0,0,0,0,0,0,5,80,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,7,255,255,255,255,192,31,224,7,255,255,255,255,192,31,224,7,255,255,255,255,192,31,224,7,253,85,85,85,64,31,224,7,252,0,0,0,0,31,224,7,252,0,0,0,0,31,224,7,252,0,0,0,0,31,224,7,252,0,0,0,0,31,224,7,252,0,0,0,0,31,224,7,252,0,0,0,0,31,224,7,252,0,0,0,0,31,224,7,252,0,0,0,0,31,224,7,255,255,255,255,208,31,224,7,255,255,255,255,208,31,224,7,255,255,255,255,208,31,224,1,85,95,245,85,64,31,224,0,0,15,240,0,0,31,224,0,0,15,240,0,0,31,224,0,0,15,240,0,0,31,224,0,0,15,240,0,0,31,224,0,0,15,240,0,0,31,224,0,0,15,240,0,20,31,224,85,85,111,251,255,253,31,224,191,255,255,255,255,254,31,224,191,255,255,255,255,253,31,224,127,255,255,234,148,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224, + // 0xb41c 된 + 28,180,31,37,40,37,2,253,0,0,0,0,0,0,5,80,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,2,255,255,255,255,128,31,240,2,255,255,255,255,128,31,240,2,255,255,255,255,128,31,240,2,254,85,85,85,0,31,240,2,253,0,0,0,0,31,240,2,253,0,0,0,0,31,240,2,253,0,0,0,0,31,240,2,253,0,0,0,0,31,240,2,253,0,0,0,0,31,240,2,254,85,85,85,64,31,240,2,255,255,255,255,192,31,240,2,255,255,255,255,192,31,240,2,255,255,255,255,192,31,240,0,0,15,240,0,0,31,240,0,0,15,240,0,0,31,240,0,0,15,240,0,0,31,240,0,0,15,240,0,0,31,240,85,85,95,250,255,252,31,240,191,255,255,255,255,253,31,240,191,255,255,255,255,253,31,240,127,255,255,170,84,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,5,80,0,0,0,31,240,0,15,240,0,0,0,31,240,0,15,240,0,0,0,10,144,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,245,85,85,85,85,84,0,15,255,255,255,255,255,252,0,15,255,255,255,255,255,252,0,15,255,255,255,255,255,252, + // 0xb428 됨 + 40,180,30,38,48,37,2,252,0,0,0,0,0,0,5,80,0,0,0,0,0,0,15,240,0,85,85,85,85,64,15,240,2,255,255,255,255,128,15,240,2,255,255,255,255,128,15,240,2,255,255,255,255,128,15,240,2,253,0,0,0,0,15,240,2,253,0,0,0,0,15,240,2,253,0,0,0,0,15,240,2,253,0,0,0,0,15,240,2,253,0,0,0,0,15,240,2,255,255,255,255,192,15,240,2,255,255,255,255,192,15,240,2,255,255,255,255,192,15,240,0,85,95,245,85,64,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,20,15,240,0,21,95,250,255,253,15,240,191,255,255,255,255,253,15,240,127,255,255,255,255,249,15,240,127,255,255,169,80,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,5,80,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,240,0,15,255,255,255,255,255,240,0,15,255,255,255,255,255,240,0,15,245,85,85,85,95,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,15,240,0,15,255,255,255,255,255,240,0,15,255,255,255,255,255,240,0,15,255,255,255,255,255,240,0,5,85,85,85,85,85,80, + // 0xb4a4 뒤 + 164,180,30,38,48,37,2,252,0,0,0,0,0,0,5,80,0,0,0,0,0,0,15,240,1,85,85,85,85,0,15,240,3,255,255,255,255,128,15,240,3,255,255,255,255,128,15,240,3,255,255,255,255,128,15,240,3,253,0,0,0,0,15,240,3,253,0,0,0,0,15,240,3,253,0,0,0,0,15,240,3,253,0,0,0,0,15,240,3,253,0,0,0,0,15,240,3,253,0,0,0,0,15,240,3,253,0,0,0,0,15,240,3,255,255,255,255,192,15,240,3,255,255,255,255,192,15,240,3,255,255,255,255,192,15,240,1,85,85,85,85,64,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,85,106,254,15,240,255,255,255,255,255,254,15,240,255,255,255,255,255,254,15,240,191,255,255,255,169,64,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,10,160,0,0,15,240,0,0,0,0,0,0,15,224, + // 0xb4dc 드 + 220,180,33,29,5,37,2,1,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,85,85,85,85,85,64,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,85,85,85,85,85,85,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0xb514 디 + 20,181,28,38,10,37,4,252,0,0,0,0,0,0,85,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,191,255,255,255,208,1,254,191,255,255,255,208,1,254,191,255,255,255,208,1,254,191,149,85,85,64,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,0,0,1,254,191,64,0,22,191,65,254,191,255,255,255,255,65,254,191,255,255,255,255,129,254,191,255,255,255,249,1,254,85,85,85,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254, + // 0xb77c 라 + 124,183,33,38,86,37,3,252,0,0,0,0,0,1,84,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,191,255,255,255,192,3,252,0,0,191,255,255,255,192,3,252,0,0,191,255,255,255,192,3,252,0,0,21,85,85,127,192,3,252,0,0,0,0,0,63,192,3,252,0,0,0,0,0,63,192,3,252,0,0,0,0,0,63,192,3,252,0,0,0,0,0,63,192,3,252,0,0,0,0,0,63,192,3,252,0,0,0,0,0,63,192,3,252,0,0,21,85,85,127,192,3,252,0,0,191,255,255,255,192,3,255,255,128,191,255,255,255,192,3,255,255,128,191,255,255,255,192,3,255,255,128,191,128,0,0,0,3,253,85,64,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,0,0,3,252,0,0,191,128,0,0,22,3,252,0,0,191,149,106,191,255,3,252,0,0,191,255,255,255,255,67,252,0,0,191,255,255,255,255,67,252,0,0,191,255,255,169,64,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0, + // 0xb7ec 러 + 236,183,29,38,48,37,3,252,0,0,0,0,0,0,21,64,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,255,255,255,255,64,0,63,192,255,255,255,255,64,0,63,192,255,255,255,255,64,0,63,192,85,85,85,191,64,0,63,192,0,0,0,191,64,0,63,192,0,0,0,191,64,0,63,192,0,0,0,191,64,0,63,192,0,0,0,191,64,0,63,192,0,0,0,191,64,0,63,192,0,0,0,191,64,0,63,192,191,255,255,255,65,85,127,192,191,255,255,255,71,255,255,192,191,255,255,255,71,255,255,192,191,149,85,85,7,255,255,192,191,64,0,0,0,0,63,192,191,64,0,0,0,0,63,192,191,64,0,0,0,0,63,192,191,64,0,0,0,0,63,192,191,64,0,0,0,0,63,192,191,64,0,0,0,0,63,192,191,64,0,0,20,0,63,192,191,149,106,191,253,0,63,192,191,255,255,255,253,0,63,192,191,255,255,255,253,0,63,192,191,255,255,165,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,128, + // 0xb808 레 + 8,184,30,37,40,37,3,252,0,0,0,0,1,80,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,85,85,85,64,7,244,15,240,255,255,255,192,7,244,15,240,255,255,255,192,7,244,15,240,255,255,255,192,7,244,15,240,0,0,63,192,7,244,15,240,0,0,63,192,7,244,15,240,0,0,63,192,7,244,15,240,0,0,63,192,7,244,15,240,0,0,63,192,7,244,15,240,0,0,63,193,91,244,15,240,85,85,127,199,255,244,15,240,255,255,255,199,255,244,15,240,255,255,255,199,255,244,15,240,255,255,255,192,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,5,7,244,15,240,255,86,171,255,7,244,15,240,255,255,255,255,7,244,15,240,255,255,255,255,7,244,15,240,255,255,250,80,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,224, + // 0xb825 력 + 37,184,29,38,48,37,3,252,0,0,0,0,0,0,1,64,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,191,255,255,255,0,0,63,192,191,255,255,255,0,0,63,192,191,255,255,255,0,0,63,192,21,85,85,255,11,255,255,192,0,0,0,255,11,255,255,192,0,0,0,255,11,255,255,192,0,0,0,255,1,85,127,192,0,0,0,255,0,0,63,192,191,255,255,255,0,0,63,192,191,255,255,255,0,0,63,192,191,255,255,255,1,85,127,192,191,128,0,0,11,255,255,192,191,128,0,0,11,255,255,192,191,128,0,0,11,255,255,192,191,128,0,0,0,0,63,192,191,149,86,175,240,0,63,192,191,255,255,255,240,0,63,192,191,255,255,255,240,0,63,192,191,255,255,234,64,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,42,128,0,0,0,0,0,0,0,0,0,21,85,85,85,85,85,64,0,127,255,255,255,255,255,192,0,127,255,255,255,255,255,192,0,127,255,255,255,255,255,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192, + // 0xb85c 로 + 92,184,33,31,23,37,2,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,85,85,85,85,85,127,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,85,85,85,85,85,127,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,85,85,95,249,85,85,64,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,85,85,85,85,85,64, + // 0xb8cc 료 + 204,184,33,31,23,37,2,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,85,85,85,85,85,127,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,85,85,85,85,85,127,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,85,127,213,85,255,149,64,0,0,0,63,192,0,191,64,0,0,0,0,63,192,0,191,64,0,0,0,0,63,192,0,191,64,0,0,0,0,63,192,0,191,64,0,0,0,0,63,192,0,191,64,0,0,0,0,63,192,0,191,64,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,85,85,85,85,85,64, + // 0xb974 르 + 116,185,33,31,23,37,2,0,0,85,85,85,85,85,85,64,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,85,85,85,85,85,127,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,85,85,85,85,85,85,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,85,85,85,85,85,64, + // 0xb9ac 리 + 172,185,28,38,10,37,4,252,0,0,0,0,0,0,85,0,0,0,0,0,1,255,0,0,0,0,0,1,255,0,0,0,0,0,1,255,255,255,255,255,192,1,255,255,255,255,255,192,1,255,255,255,255,255,192,1,255,85,85,85,191,192,1,255,0,0,0,127,192,1,255,0,0,0,127,192,1,255,0,0,0,127,192,1,255,0,0,0,127,192,1,255,0,0,0,127,192,1,255,0,0,0,127,192,1,255,85,85,85,191,192,1,255,255,255,255,255,192,1,255,255,255,255,255,192,1,255,255,255,255,255,192,1,255,255,0,0,0,0,1,255,255,0,0,0,0,1,255,255,0,0,0,0,1,255,255,0,0,0,0,1,255,255,0,0,0,0,1,255,255,0,0,0,0,1,255,255,0,0,0,21,65,255,255,150,170,191,255,193,255,255,255,255,255,255,193,255,255,255,255,255,255,193,255,255,255,255,169,80,1,255,0,0,0,0,0,1,255,0,0,0,0,0,1,255,0,0,0,0,0,1,255,0,0,0,0,0,1,255,0,0,0,0,0,1,255,0,0,0,0,0,1,255,0,0,0,0,0,1,255,0,0,0,0,0,1,255,0,0,0,0,0,1,254, + // 0xb9b0 린 + 176,185,29,37,40,37,4,253,0,0,0,0,0,0,85,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,255,0,255,255,255,255,64,1,255,0,255,255,255,255,64,1,255,0,255,255,255,255,64,1,255,0,85,85,85,255,64,1,255,0,0,0,0,191,64,1,255,0,0,0,0,191,64,1,255,0,0,0,0,191,64,1,255,0,0,0,0,191,64,1,255,0,255,255,255,255,64,1,255,0,255,255,255,255,64,1,255,0,255,255,255,255,64,1,255,0,255,0,0,0,0,1,255,0,255,0,0,0,0,1,255,0,255,0,0,0,0,1,255,0,255,0,0,0,0,1,255,0,255,0,0,0,6,1,255,0,255,85,90,175,255,1,255,0,255,255,255,255,255,1,255,0,255,255,255,255,255,65,255,0,255,255,255,234,80,1,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,255,0,0,255,0,0,0,1,255,0,0,255,0,0,0,1,255,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,85,85,85,85,85,64,0,255,255,255,255,255,255,128,0,255,255,255,255,255,255,128,0,255,255,255,255,255,255,128, + // 0xb9bd 립 + 189,185,28,37,3,37,4,252,0,0,0,0,0,1,255,85,85,85,85,0,1,255,255,255,255,255,64,1,255,255,255,255,255,64,1,255,255,255,255,255,64,1,255,0,0,0,191,64,1,255,0,0,0,191,64,1,255,0,0,0,191,64,1,255,0,0,0,255,64,1,255,255,255,255,255,64,1,255,255,255,255,255,64,1,255,255,255,255,255,64,1,255,255,0,0,0,0,1,255,255,0,0,0,0,1,255,255,0,0,0,0,1,255,255,0,0,22,191,1,255,255,255,255,255,255,1,255,255,255,255,255,255,65,255,255,255,255,255,165,1,255,85,85,80,0,0,1,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0,0,1,255,0,255,0,0,0,1,255,0,255,0,0,0,1,255,0,255,64,0,0,1,255,0,255,255,255,255,255,255,0,255,255,255,255,255,255,0,255,255,255,255,255,255,0,255,0,0,0,1,255,0,255,0,0,0,1,255,0,255,0,0,0,1,255,0,255,0,0,0,1,255,0,255,255,255,255,255,255,0,255,255,255,255,255,255,0,255,255,255,255,255,255,0,85,85,85,85,85,85, + // 0xb9c1 링 + 193,185,28,38,10,37,4,252,0,0,0,0,0,0,84,0,0,0,0,0,1,255,0,0,0,0,0,1,255,255,255,255,255,64,1,255,255,255,255,255,64,1,255,255,255,255,255,64,1,255,85,85,85,255,64,1,255,0,0,0,191,64,1,255,0,0,0,191,64,1,255,0,0,0,191,64,1,255,0,0,0,255,64,1,255,255,255,255,255,64,1,255,255,255,255,255,64,1,255,255,255,255,255,64,1,255,255,0,0,0,0,1,255,255,0,0,0,0,1,255,255,0,0,0,0,1,255,255,0,0,22,191,1,255,255,255,255,255,255,1,255,255,255,255,255,255,65,255,255,255,255,255,165,1,255,85,85,80,0,0,1,255,0,0,0,0,0,1,255,0,0,0,0,0,0,84,0,0,6,255,254,144,0,0,1,255,255,255,254,64,0,15,255,255,255,255,224,0,63,254,85,86,255,248,0,255,208,0,0,11,253,0,255,0,0,0,2,255,1,255,0,0,0,0,255,1,255,0,0,0,0,255,0,255,0,0,0,2,255,0,255,208,0,0,11,253,0,63,254,149,86,255,248,0,15,255,255,255,255,224,0,1,255,255,255,255,64,0,0,6,255,254,144,0, + // 0xba48 멈 + 72,186,29,38,48,37,3,252,0,0,0,0,0,0,21,64,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,127,255,255,255,208,0,63,192,127,255,255,255,208,0,63,192,127,255,255,255,208,0,63,192,127,149,85,127,208,0,63,192,127,128,0,47,208,0,63,192,127,128,0,47,208,0,63,192,127,128,0,47,229,85,127,192,127,128,0,47,255,255,255,192,127,128,0,47,255,255,255,192,127,128,0,47,255,255,255,192,127,128,0,47,208,0,63,192,127,128,0,47,208,0,63,192,127,128,0,47,208,0,63,192,127,149,85,127,208,0,63,192,127,255,255,255,208,0,63,192,127,255,255,255,208,0,63,192,127,255,255,255,208,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,0,5,85,85,85,85,85,64,0,63,255,255,255,255,255,192,0,63,255,255,255,255,255,192,0,63,255,255,255,255,255,192,0,63,208,0,0,0,63,192,0,63,208,0,0,0,63,192,0,63,208,0,0,0,63,192,0,63,208,0,0,0,63,192,0,63,208,0,0,0,63,192,0,63,208,0,0,0,63,192,0,63,208,0,0,0,63,192,0,63,255,255,255,255,255,192,0,63,255,255,255,255,255,192,0,63,255,255,255,255,255,192,0,5,85,85,85,85,85,64, + // 0xba54 메 + 84,186,30,38,48,37,3,252,0,0,0,0,0,0,5,80,0,0,0,0,2,164,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,248,15,240,21,85,85,80,7,248,15,240,255,255,255,240,7,248,15,240,255,255,255,240,7,248,15,240,255,255,255,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,245,91,248,15,240,255,0,11,255,255,248,15,240,255,0,11,255,255,248,15,240,255,0,11,255,255,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,85,95,240,7,248,15,240,255,255,255,240,7,248,15,240,255,255,255,240,7,248,15,240,255,255,255,240,7,248,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,248,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,10,160, + // 0xba74 면 + 116,186,30,36,32,37,3,253,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,21,85,85,85,64,0,63,192,127,255,255,255,208,0,63,192,127,255,255,255,208,0,63,192,127,255,255,255,208,0,63,192,127,128,0,47,255,255,255,192,127,128,0,47,255,255,255,192,127,128,0,47,255,255,255,192,127,128,0,47,229,85,127,192,127,128,0,47,208,0,63,192,127,128,0,47,208,0,63,192,127,128,0,47,208,0,63,192,127,128,0,47,208,0,63,192,127,128,0,47,255,255,255,192,127,128,0,47,255,255,255,192,127,128,0,47,255,255,255,192,127,255,255,255,229,85,127,192,127,255,255,255,208,0,63,192,127,255,255,255,208,0,63,192,21,85,85,85,64,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,26,144,0,0,0,63,192,0,47,224,0,0,0,63,192,0,47,224,0,0,0,63,192,0,47,224,0,0,0,0,0,0,47,224,0,0,0,0,0,0,47,224,0,0,0,0,0,0,47,224,0,0,0,0,0,0,47,224,0,0,0,0,0,0,47,229,85,85,85,85,80,0,47,255,255,255,255,255,240,0,47,255,255,255,255,255,240,0,47,255,255,255,255,255,240, + // 0xbaa8 모 + 168,186,33,30,14,37,2,1,0,85,85,85,85,85,85,64,0,1,255,255,255,255,255,255,192,0,1,255,255,255,255,255,255,192,0,1,255,255,255,255,255,255,192,0,1,254,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,255,255,255,255,255,255,192,0,1,255,255,255,255,255,255,192,0,1,255,255,255,255,255,255,192,0,0,85,85,95,249,85,85,64,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,85,85,85,95,249,85,85,85,64,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128, + // 0xbabb 못 + 187,186,33,36,68,37,2,252,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,255,85,85,85,85,191,64,0,0,255,0,0,0,0,191,64,0,0,255,0,0,0,0,191,64,0,0,255,0,0,0,0,191,64,0,0,255,0,0,0,0,191,64,0,0,255,0,0,0,0,191,64,0,0,255,85,85,85,85,191,64,0,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,85,85,85,95,249,85,85,85,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,63,253,0,0,0,0,0,0,0,191,255,0,0,0,0,0,0,2,255,191,192,0,0,0,0,0,11,253,63,244,0,0,0,0,0,191,248,15,255,64,0,0,0,27,255,224,3,255,249,0,0,7,255,255,64,0,127,255,240,0,3,255,244,0,0,11,255,224,0,2,254,64,0,0,0,127,208,0,0,64,0,0,0,0,0,64,0, + // 0xbbf8 미 + 248,187,28,38,10,37,4,252,0,0,0,0,0,0,85,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,255,255,255,255,192,1,254,255,255,255,255,192,1,254,255,255,255,255,192,1,254,255,85,85,127,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,0,0,63,192,1,254,255,255,255,255,192,1,254,255,255,255,255,192,1,254,255,255,255,255,192,1,254,85,85,85,85,64,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254, + // 0xbc00 밀 + 0,188,29,38,48,37,4,252,0,0,0,0,0,0,84,0,0,0,0,0,0,1,255,0,85,85,85,85,64,1,255,0,255,255,255,255,192,1,255,0,255,255,255,255,192,1,255,0,255,255,255,255,192,1,255,0,255,0,0,63,192,1,255,0,255,0,0,63,192,1,255,0,255,0,0,63,192,1,255,0,255,0,0,63,192,1,255,0,255,0,0,63,192,1,255,0,255,0,0,63,192,1,255,0,255,0,0,63,192,1,255,0,255,0,0,63,192,1,255,0,255,85,85,127,192,1,255,0,255,255,255,255,192,1,255,0,255,255,255,255,192,1,255,0,255,255,255,255,192,1,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,0,0,255,255,255,255,255,255,0,0,255,255,255,255,255,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,255,0,0,0,0,0,0,1,255,0,0,255,255,255,255,255,255,0,0,255,255,255,255,255,255,0,0,255,255,255,255,255,255,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,255,255,255,255,255,255,192,0,255,255,255,255,255,255,192,0,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0, + // 0xbc14 바 + 20,188,33,38,86,37,3,252,0,0,0,0,0,1,84,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,21,0,0,5,64,3,252,0,0,191,64,0,47,208,3,252,0,0,191,64,0,47,208,3,252,0,0,191,64,0,47,208,3,252,0,0,191,64,0,47,208,3,252,0,0,191,64,0,47,208,3,252,0,0,191,64,0,47,208,3,252,0,0,191,64,0,47,208,3,252,0,0,191,64,0,47,208,3,252,0,0,191,64,0,47,208,3,252,0,0,191,255,255,255,208,3,252,0,0,191,255,255,255,208,3,252,0,0,191,255,255,255,208,3,255,255,128,191,149,85,127,208,3,255,255,128,191,64,0,47,208,3,255,255,128,191,64,0,47,208,3,253,85,64,191,64,0,47,208,3,252,0,0,191,64,0,47,208,3,252,0,0,191,64,0,47,208,3,252,0,0,191,64,0,47,208,3,252,0,0,191,64,0,47,208,3,252,0,0,191,64,0,47,208,3,252,0,0,191,149,85,127,208,3,252,0,0,191,255,255,255,208,3,252,0,0,191,255,255,255,208,3,252,0,0,191,255,255,255,208,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0, + // 0xbc84 버 + 132,188,29,38,48,37,3,252,0,0,0,0,0,0,21,64,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,21,0,0,21,64,0,63,192,191,64,0,47,208,0,63,192,191,64,0,47,208,0,63,192,191,64,0,47,208,0,63,192,191,64,0,47,208,0,63,192,191,64,0,47,208,0,63,192,191,64,0,47,208,0,63,192,191,64,0,47,208,0,63,192,191,64,0,47,208,0,63,192,191,64,0,47,208,0,63,192,191,255,255,255,208,0,63,192,191,255,255,255,255,255,255,192,191,255,255,255,255,255,255,192,191,128,0,63,255,255,255,192,191,64,0,47,229,85,127,192,191,64,0,47,208,0,63,192,191,64,0,47,208,0,63,192,191,64,0,47,208,0,63,192,191,64,0,47,208,0,63,192,191,64,0,47,208,0,63,192,191,64,0,47,208,0,63,192,191,64,0,47,208,0,63,192,191,149,85,127,208,0,63,192,191,255,255,255,208,0,63,192,191,255,255,255,208,0,63,192,191,255,255,255,208,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192, + // 0xbca0 베 + 160,188,30,38,48,37,3,252,0,0,0,0,0,0,5,64,0,0,0,0,2,164,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,248,15,240,170,0,6,160,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,255,255,240,7,248,15,240,255,255,255,249,91,248,15,240,255,255,255,255,255,248,15,240,255,85,91,255,255,248,15,240,255,0,11,255,255,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,0,11,240,7,248,15,240,255,255,255,240,7,248,15,240,255,255,255,240,7,248,15,240,255,255,255,240,7,248,15,240,85,85,85,80,7,248,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,248,15,240,0,0,0,0,7,244,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,10,160, + // 0xbca8 벨 + 168,188,31,38,48,37,3,252,0,0,0,0,0,0,5,64,0,0,0,0,6,160,31,224,21,0,0,0,7,244,31,224,191,64,3,248,7,244,31,224,191,64,3,248,7,244,31,224,191,64,3,248,7,244,31,224,191,64,3,248,7,244,31,224,191,255,255,248,7,244,31,224,191,255,255,249,91,244,31,224,191,255,255,255,255,244,31,224,191,64,7,255,255,244,31,224,191,64,3,255,255,244,31,224,191,64,3,248,7,244,31,224,191,64,3,248,7,244,31,224,191,64,3,248,7,244,31,224,191,255,255,248,7,244,31,224,191,255,255,248,7,244,31,224,191,255,255,248,7,244,31,224,0,0,0,0,7,244,31,224,0,0,0,0,6,164,31,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,224,0,47,255,255,255,255,255,224,0,47,255,255,255,255,255,224,0,0,0,0,0,0,47,224,0,0,0,0,0,0,47,224,0,0,0,0,0,0,47,224,0,31,255,255,255,255,255,224,0,31,255,255,255,255,255,224,0,31,255,255,255,255,255,224,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,255,255,255,255,255,252,0,31,255,255,255,255,255,252,0,31,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xbcf8 본 + 248,188,33,35,59,37,2,253,0,255,64,0,0,0,191,64,0,0,255,64,0,0,0,191,64,0,0,255,64,0,0,0,191,64,0,0,255,64,0,0,0,191,64,0,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,255,64,0,0,0,191,64,0,0,255,64,0,0,0,191,64,0,0,255,64,0,0,0,191,64,0,0,255,64,0,0,0,191,64,0,0,255,85,85,85,85,191,64,0,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,64,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,85,85,85,95,249,85,85,85,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,0,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,149,85,85,85,85,64,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0, + // 0xbe44 비 + 68,190,28,38,10,37,4,252,0,0,0,0,0,0,85,0,0,0,0,0,1,254,0,0,0,0,0,1,254,85,0,0,21,64,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,255,255,255,208,1,254,255,255,255,255,208,1,254,255,255,255,255,208,1,254,255,85,85,127,208,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,0,0,63,208,1,254,255,85,85,127,208,1,254,255,255,255,255,208,1,254,255,255,255,255,208,1,254,255,255,255,255,208,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254,0,0,0,0,0,1,254, + // 0xc0ac 사 + 172,192,35,37,77,37,1,252,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,31,224,0,0,63,192,0,0,0,31,224,0,0,63,192,0,0,0,31,224,0,0,63,192,0,0,0,31,224,0,0,63,192,0,0,0,31,224,0,0,63,192,0,0,0,31,224,0,0,63,192,0,0,0,31,224,0,0,63,192,0,0,0,47,240,0,0,63,192,0,0,0,47,240,0,0,63,192,0,0,0,63,240,0,0,63,192,0,0,0,63,240,0,0,63,192,0,0,0,63,244,0,0,63,213,80,0,0,191,252,0,0,63,255,248,0,0,255,252,0,0,63,255,248,0,1,255,254,0,0,63,255,248,0,3,253,255,0,0,63,192,0,0,7,252,191,192,0,63,192,0,0,15,244,63,224,0,63,192,0,0,47,240,47,240,0,63,192,0,0,191,208,15,252,0,63,192,0,2,255,128,7,255,64,63,192,0,11,255,0,2,255,224,63,192,0,127,252,0,0,191,240,63,192,0,63,244,0,0,47,208,63,192,0,15,192,0,0,7,128,63,192,0,6,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,42,128,0, + // 0xc0bd 삽 + 189,192,34,38,86,37,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,0,0,255,0,0,0,0,106,64,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,191,192,0,0,255,0,0,0,0,191,192,0,0,255,0,0,0,0,255,192,0,0,255,0,0,0,0,255,208,0,0,255,255,208,0,1,255,240,0,0,255,255,208,0,3,255,244,0,0,255,255,208,0,11,251,252,0,0,255,149,64,0,31,242,255,0,0,255,0,0,0,63,224,255,192,0,255,0,0,1,255,192,127,248,0,255,0,0,15,255,0,31,255,128,255,0,0,191,253,0,7,255,192,255,0,0,191,244,0,0,255,0,255,0,0,63,192,0,0,29,0,255,0,0,29,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,192,0,0,0,255,0,0,0,63,192,0,0,0,255,0,0,0,63,192,0,0,0,255,0,0,0,63,208,0,0,0,255,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,192,0,0,0,255,0,0,0,63,192,0,0,0,255,0,0,0,63,192,0,0,0,255,0,0,0,63,192,0,0,0,255,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,21,85,85,85,85,85,0,0, + // 0xc0c8 새 + 200,192,31,37,40,37,2,252,0,0,0,0,2,164,3,252,0,0,0,0,3,252,3,252,0,0,0,0,3,252,3,252,0,2,252,0,3,252,3,252,0,3,252,0,3,252,3,252,0,3,252,0,3,252,3,252,0,3,252,0,3,252,3,252,0,3,252,0,3,252,3,252,0,3,252,0,3,252,3,252,0,3,252,0,3,252,3,252,0,3,252,0,3,252,3,252,0,3,253,0,3,252,3,252,0,3,253,0,3,252,3,252,0,3,254,0,3,252,3,252,0,7,254,0,3,253,87,252,0,11,255,0,3,255,255,252,0,15,255,64,3,255,255,252,0,15,255,128,3,255,255,252,0,31,255,192,3,252,3,252,0,63,239,224,3,252,3,252,0,191,143,240,3,252,3,252,0,255,11,252,3,252,3,252,3,254,3,254,3,252,3,252,11,252,2,255,131,252,3,252,47,248,0,255,243,252,3,252,191,240,0,63,243,252,3,252,255,192,0,15,195,252,3,252,127,0,0,2,67,252,3,252,28,0,0,0,3,252,3,252,0,0,0,0,3,252,3,252,0,0,0,0,3,252,3,252,0,0,0,0,3,252,3,252,0,0,0,0,3,252,3,252,0,0,0,0,3,252,3,252,0,0,0,0,3,252,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,248, + // 0xc124 설 + 36,193,31,38,48,37,2,252,0,0,0,0,0,0,5,80,0,0,0,0,0,0,15,240,0,0,127,192,0,0,15,240,0,0,127,192,0,0,15,240,0,0,127,192,0,0,15,240,0,0,127,192,0,0,15,240,0,0,127,192,0,0,15,240,0,0,191,192,7,255,255,240,0,0,255,208,7,255,255,240,0,0,255,240,7,255,255,240,0,2,255,244,1,85,95,240,0,3,255,252,0,0,15,240,0,15,246,255,0,0,15,240,0,63,240,255,192,0,15,240,0,255,208,127,244,0,15,240,11,255,128,47,255,64,15,240,191,254,0,11,255,192,15,240,191,248,0,1,255,64,15,240,63,208,0,0,46,0,15,240,29,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,255,255,255,255,255,240,0,11,255,255,255,255,255,240,0,11,255,255,255,255,255,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,7,255,255,255,255,255,240,0,7,255,255,255,255,255,240,0,7,255,255,255,255,255,240,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,255,255,255,255,255,252,0,7,255,255,255,255,255,252,0,7,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xc18c 소 + 140,193,33,30,14,37,2,1,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,63,253,0,0,0,0,0,0,0,127,255,0,0,0,0,0,0,0,255,255,64,0,0,0,0,0,2,255,127,192,0,0,0,0,0,11,252,47,240,0,0,0,0,0,47,248,15,253,0,0,0,0,1,255,240,7,255,128,0,0,0,11,255,128,1,255,244,0,0,1,255,254,0,0,63,255,144,0,47,255,244,0,0,11,255,252,0,15,255,128,0,0,1,255,248,0,11,248,0,0,0,0,27,240,0,2,0,0,15,244,0,0,80,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,85,85,85,95,249,85,85,85,64,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128, + // 0xc18d 속 + 141,193,33,37,77,37,2,252,0,0,0,10,164,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,63,254,0,0,0,0,0,0,0,255,255,64,0,0,0,0,0,3,255,127,208,0,0,0,0,0,15,252,47,248,0,0,0,0,0,191,244,15,255,64,0,0,0,27,255,208,2,255,248,0,0,11,255,255,0,0,127,255,244,0,11,255,244,0,0,11,255,244,0,3,254,64,15,244,0,127,240,0,2,64,0,15,244,0,1,144,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,85,85,85,85,85,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,0,0,1,255,255,255,255,255,255,128,0,1,255,255,255,255,255,255,128,0,1,255,255,255,255,255,255,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0, + // 0xc2a4 스 + 164,194,33,30,14,37,2,1,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,47,252,0,0,0,0,0,0,0,63,254,0,0,0,0,0,0,0,191,255,0,0,0,0,0,0,1,255,191,192,0,0,0,0,0,3,253,63,224,0,0,0,0,0,31,252,31,248,0,0,0,0,0,127,240,11,255,0,0,0,0,2,255,192,2,255,208,0,0,0,47,255,0,0,191,253,0,0,7,255,252,0,0,47,255,228,0,47,255,224,0,0,7,255,252,0,15,255,0,0,0,0,127,248,0,11,224,0,0,0,0,6,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,64,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128, + // 0xc2ac 슬 + 172,194,33,37,77,37,2,252,0,0,0,15,244,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,63,254,0,0,0,0,0,0,0,255,255,128,0,0,0,0,0,3,255,63,224,0,0,0,0,0,47,252,31,253,0,0,0,0,2,255,240,7,255,208,0,0,5,191,255,128,0,255,255,148,0,15,255,253,0,0,47,255,248,0,11,255,144,0,0,1,255,244,0,3,164,0,0,0,0,6,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,85,85,85,85,85,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0, + // 0xc2dc 시 + 220,194,30,37,40,37,2,252,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,47,208,0,0,31,224,0,0,63,208,0,0,31,224,0,0,63,208,0,0,31,224,0,0,63,208,0,0,31,224,0,0,63,208,0,0,31,224,0,0,63,208,0,0,31,224,0,0,63,208,0,0,31,224,0,0,63,208,0,0,31,224,0,0,63,224,0,0,31,224,0,0,63,224,0,0,31,224,0,0,127,240,0,0,31,224,0,0,191,240,0,0,31,224,0,0,255,248,0,0,31,224,0,1,255,252,0,0,31,224,0,2,255,253,0,0,31,224,0,3,252,255,0,0,31,224,0,15,244,191,128,0,31,224,0,31,240,63,208,0,31,224,0,127,208,47,244,0,31,224,0,255,192,15,253,0,31,224,7,255,0,7,255,64,31,224,47,254,0,1,255,244,31,224,255,248,0,0,127,240,31,224,191,224,0,0,31,208,31,224,63,64,0,0,2,128,31,224,8,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,0, + // 0xc2dd 식 + 221,194,30,38,48,37,2,252,0,0,0,0,0,0,5,64,0,0,0,0,0,0,31,240,0,0,42,128,0,0,31,240,0,0,63,192,0,0,31,240,0,0,63,192,0,0,31,240,0,0,63,192,0,0,31,240,0,0,63,192,0,0,31,240,0,0,63,208,0,0,31,240,0,0,127,208,0,0,31,240,0,0,191,224,0,0,31,240,0,0,255,240,0,0,31,240,0,1,255,248,0,0,31,240,0,3,255,252,0,0,31,240,0,11,253,255,0,0,31,240,0,31,244,255,192,0,31,240,0,127,224,127,240,0,31,240,2,255,192,31,254,0,31,240,31,255,0,11,255,224,31,240,191,252,0,1,255,208,31,240,63,240,0,0,47,128,31,240,31,64,0,0,2,0,31,240,4,0,0,0,0,0,31,240,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,0,0,5,85,85,85,85,85,64,0,47,255,255,255,255,255,240,0,47,255,255,255,255,255,240,0,47,255,255,255,255,255,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,10,160, + // 0xc5b4 어 + 180,197,30,38,48,37,2,252,0,0,0,0,0,0,5,80,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,1,169,0,0,0,15,240,0,31,255,224,0,0,15,240,0,191,255,252,0,0,15,240,2,255,255,255,0,0,15,240,3,255,65,255,128,0,15,240,11,248,0,127,192,0,15,240,15,240,0,47,224,0,15,240,47,224,0,15,240,0,15,240,63,192,0,11,244,0,15,240,63,192,0,7,248,0,15,240,63,192,0,7,248,0,15,240,127,128,0,3,253,85,95,240,127,128,0,3,255,255,255,240,127,128,0,3,255,255,255,240,127,128,0,3,255,255,255,240,127,128,0,3,252,0,15,240,63,192,0,7,248,0,15,240,63,192,0,7,248,0,15,240,63,192,0,11,244,0,15,240,47,224,0,15,240,0,15,240,15,240,0,31,224,0,15,240,15,248,0,63,208,0,15,240,3,255,1,255,128,0,15,240,2,255,255,255,0,0,15,240,0,191,255,252,0,0,15,240,0,31,255,224,0,0,15,240,0,1,169,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240, + // 0xc5c6 없 + 198,197,34,37,77,37,2,252,0,0,0,0,0,0,15,240,0,0,0,84,0,0,0,15,240,0,0,31,255,244,0,0,15,240,0,1,255,255,255,0,0,15,240,0,7,255,255,255,192,0,15,240,0,15,253,0,191,240,0,15,240,0,47,240,0,15,248,0,15,240,0,63,192,0,7,252,0,15,240,0,127,128,0,3,255,255,255,240,0,127,128,0,2,255,255,255,240,0,127,128,0,3,255,255,255,240,0,127,192,0,3,253,85,111,240,0,63,208,0,7,252,0,15,240,0,47,240,0,31,244,0,15,240,0,15,254,1,191,240,0,15,240,0,7,255,255,255,192,0,15,240,0,1,255,255,255,0,0,15,240,0,0,31,255,244,0,0,15,240,0,0,0,84,0,0,0,15,240,0,0,0,0,0,0,0,5,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,84,0,0,0,255,0,63,192,3,253,0,0,0,255,0,63,192,3,253,0,0,0,255,0,63,192,3,253,0,0,0,255,0,63,192,3,253,0,0,0,255,255,255,192,3,254,0,0,0,255,255,255,192,7,255,0,0,0,255,255,255,192,15,255,64,0,0,255,0,63,192,31,255,128,0,0,255,0,63,192,63,255,224,0,0,255,0,63,192,255,143,244,0,0,255,0,63,203,255,11,254,0,0,255,255,255,255,252,2,255,208,0,255,255,255,223,240,0,191,192,0,255,255,255,203,128,0,31,64,0,0,0,0,1,0,0,1,0, + // 0xc5d1 엑 + 209,197,31,38,48,37,2,252,0,0,0,0,0,0,1,80,0,0,0,0,0,169,7,248,0,0,0,0,0,254,7,248,0,31,249,0,0,254,7,248,1,255,255,208,0,254,7,248,7,255,255,244,0,254,7,248,15,254,175,252,0,254,7,248,63,224,2,255,0,254,7,248,63,192,0,255,0,254,7,248,127,64,0,127,64,254,7,248,191,0,0,63,255,254,7,248,191,0,0,63,255,254,7,248,191,0,0,63,255,254,7,248,191,0,0,63,150,254,7,248,127,128,0,191,64,254,7,248,63,192,0,255,0,254,7,248,47,240,3,254,0,254,7,248,15,254,111,252,0,254,7,248,7,255,255,240,0,254,7,248,1,255,255,192,0,254,7,248,0,31,249,0,0,254,7,248,0,0,0,0,0,254,7,248,0,0,0,0,0,253,7,248,0,0,0,0,0,0,0,0,0,5,85,85,85,85,85,80,0,15,255,255,255,255,255,248,0,15,255,255,255,255,255,248,0,15,255,255,255,255,255,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,7,248, + // 0xc5d4 엔 + 212,197,32,37,40,37,2,253,0,0,0,0,0,0,1,80,0,0,0,0,0,169,7,248,0,0,0,0,0,254,7,248,0,5,80,0,0,254,7,248,0,127,255,64,0,254,7,248,3,255,255,224,0,254,7,248,15,255,255,248,0,254,7,248,31,248,11,253,0,254,7,248,63,208,1,255,0,254,7,248,127,128,0,255,0,254,7,248,191,64,0,127,64,254,7,248,191,0,0,63,255,254,7,248,191,0,0,63,255,254,7,248,191,0,0,63,255,254,7,248,191,0,0,127,150,254,7,248,127,128,0,191,0,254,7,248,63,208,1,255,0,254,7,248,47,248,11,253,0,254,7,248,15,255,255,248,0,254,7,248,3,255,255,240,0,254,7,248,0,127,255,64,0,254,7,248,0,5,148,0,0,254,7,248,0,0,0,0,0,254,7,248,0,0,0,0,0,254,7,248,0,1,84,0,0,254,7,248,0,7,252,0,0,254,7,248,0,7,252,0,0,254,7,248,0,7,252,0,0,0,7,248,0,7,252,0,0,0,1,80,0,7,252,0,0,0,0,0,0,7,252,0,0,0,0,0,0,7,252,0,0,0,0,0,0,7,252,0,0,0,0,0,0,7,253,85,85,85,85,84,0,7,255,255,255,255,255,254,0,7,255,255,255,255,255,254,0,7,255,255,255,255,255,254, + // 0xc5f4 열 + 244,197,31,38,48,37,2,252,0,0,0,0,0,0,5,80,0,0,0,0,0,0,15,240,0,6,255,144,0,0,15,240,0,191,255,254,0,0,15,240,3,255,255,255,208,0,31,240,15,255,154,255,255,255,255,240,31,248,0,47,255,255,255,240,63,208,0,11,255,255,255,240,63,192,0,3,252,0,15,240,127,128,0,3,252,0,15,240,127,64,0,2,253,0,15,240,127,128,0,3,252,0,15,240,63,192,0,3,253,0,31,240,63,208,0,11,255,255,255,240,31,244,0,47,255,255,255,240,15,255,150,255,255,255,255,240,3,255,255,255,128,0,15,240,0,191,255,253,0,0,15,240,0,6,255,144,0,0,15,240,0,0,0,0,0,0,5,80,0,0,0,0,0,0,0,0,0,11,255,255,255,255,255,240,0,11,255,255,255,255,255,240,0,11,255,255,255,255,255,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,11,255,255,255,255,255,240,0,11,255,255,255,255,255,240,0,11,255,255,255,255,255,240,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,11,255,255,255,255,255,252,0,11,255,255,255,255,255,252,0,11,255,255,255,255,255,252,0,0,0,0,0,0,0,0, + // 0xc608 예 + 8,198,31,37,40,37,2,252,0,0,0,0,0,84,3,252,0,0,0,0,0,254,3,252,0,0,0,0,0,254,3,252,0,27,244,0,0,254,3,252,0,191,255,0,0,254,3,252,3,255,255,192,0,254,3,252,7,255,255,240,0,254,3,252,15,248,31,244,0,254,3,252,31,224,7,253,86,254,3,252,63,192,3,255,255,254,3,252,63,192,1,255,255,254,3,252,63,128,0,255,255,254,3,252,127,64,0,254,0,254,3,252,127,64,0,254,0,254,3,252,191,0,0,255,0,254,3,252,191,0,0,255,0,254,3,252,191,0,0,255,0,254,3,252,191,0,0,255,0,254,3,252,127,64,0,254,0,254,3,252,127,64,0,255,85,254,3,252,63,128,1,255,255,254,3,252,63,192,2,255,255,254,3,252,47,192,3,255,255,254,3,252,31,224,7,248,0,254,3,252,15,248,31,240,0,254,3,252,7,255,255,224,0,254,3,252,2,255,255,192,0,254,3,252,0,191,255,0,0,254,3,252,0,11,228,0,0,254,3,252,0,0,0,0,0,254,3,252,0,0,0,0,0,254,3,252,0,0,0,0,0,254,3,252,0,0,0,0,0,254,3,252,0,0,0,0,0,254,3,252,0,0,0,0,0,254,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,2,168, + // 0xc624 오 + 36,198,33,30,14,37,2,1,0,0,1,191,254,144,0,0,0,0,0,111,255,255,254,0,0,0,0,2,255,255,255,255,224,0,0,0,15,255,233,90,255,248,0,0,0,63,249,0,0,31,254,0,0,0,191,208,0,0,2,255,64,0,0,255,64,0,0,0,191,192,0,2,254,0,0,0,0,63,192,0,2,253,0,0,0,0,47,208,0,3,252,0,0,0,0,31,224,0,3,252,0,0,0,0,31,224,0,3,253,0,0,0,0,47,208,0,2,254,0,0,0,0,63,208,0,0,255,64,0,0,0,191,192,0,0,191,192,0,0,2,255,64,0,0,63,248,0,0,31,255,0,0,0,15,255,229,90,255,252,0,0,0,3,255,255,255,255,224,0,0,0,0,127,255,255,254,0,0,0,0,0,2,191,255,144,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,85,85,85,95,249,85,85,85,64,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128, + // 0xc628 온 + 40,198,33,36,68,37,2,253,0,0,0,1,80,0,0,0,0,0,0,27,255,255,249,0,0,0,0,2,255,255,255,255,208,0,0,0,15,255,255,255,255,248,0,0,0,63,254,64,1,127,255,0,0,0,255,208,0,0,2,255,64,0,0,255,64,0,0,0,191,192,0,1,255,0,0,0,0,63,192,0,1,254,0,0,0,0,63,192,0,1,255,0,0,0,0,127,192,0,0,255,128,0,0,0,255,192,0,0,191,224,0,0,7,255,64,0,0,63,255,149,85,191,254,0,0,0,15,255,255,255,255,248,0,0,0,1,255,255,255,255,128,0,0,0,0,6,255,255,228,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,15,244,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,85,85,85,85,85,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,149,85,85,85,85,64,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0, + // 0xc644 완 + 68,198,34,37,77,37,2,253,0,0,0,0,0,0,85,0,0,0,0,0,0,0,0,255,64,0,0,2,255,228,0,0,255,64,0,0,47,255,255,64,0,255,64,0,0,255,255,255,224,0,255,64,0,3,255,144,127,248,0,255,64,0,7,252,0,7,252,0,255,64,0,15,244,0,2,253,0,255,64,0,15,240,0,1,254,0,255,64,0,15,240,0,0,254,0,255,64,0,15,240,0,0,254,0,255,64,0,15,240,0,1,253,0,255,64,0,7,252,0,3,252,0,255,64,0,3,255,64,47,248,0,255,255,208,0,255,255,255,240,0,255,255,208,0,63,255,255,128,0,255,255,208,0,6,255,248,0,0,255,149,64,0,0,63,192,0,0,255,64,0,0,0,63,192,0,0,255,64,0,0,0,63,192,1,96,255,64,0,85,85,191,239,255,240,255,64,0,255,255,255,255,255,244,255,64,0,255,255,255,255,255,224,255,64,0,191,255,254,165,64,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,63,192,0,0,0,255,64,0,0,63,192,0,0,0,255,64,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,213,85,85,85,85,64,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0,0,63,255,255,255,255,255,224,0, + // 0xc6d0 원 + 208,198,31,37,40,37,2,253,0,0,0,0,0,0,5,80,0,0,0,0,0,0,15,240,0,1,175,233,0,0,15,240,0,31,255,255,208,0,15,240,0,191,255,255,248,0,15,240,2,255,144,27,254,0,15,240,3,253,0,1,255,0,15,240,7,252,0,0,191,64,15,240,7,248,0,0,191,64,15,240,7,252,0,0,191,64,15,240,3,253,0,1,255,0,15,240,2,255,144,27,254,0,15,240,0,191,255,255,252,0,15,240,0,31,255,255,224,0,15,240,0,1,191,249,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,88,15,240,85,85,106,175,255,252,15,240,255,255,255,255,255,252,15,240,255,255,255,255,255,252,15,240,191,255,255,255,169,64,15,240,0,0,15,240,0,0,15,240,0,0,15,240,3,255,255,240,0,0,15,240,3,255,255,240,0,0,15,240,3,255,255,240,0,0,15,240,0,0,15,240,0,127,207,240,0,0,15,240,0,127,202,160,0,0,15,240,0,127,192,0,0,0,10,160,0,127,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,213,85,85,85,85,84,0,127,255,255,255,255,255,252,0,127,255,255,255,255,255,252,0,127,255,255,255,255,255,252, + // 0xc704 위 + 4,199,30,37,40,37,2,252,0,0,0,0,0,0,15,240,0,0,5,80,0,0,15,240,0,2,255,255,64,0,15,240,0,31,255,255,240,0,15,240,0,191,255,255,253,0,15,240,1,255,208,11,255,0,15,240,3,254,0,0,255,128,15,240,7,252,0,0,127,192,15,240,7,248,0,0,63,192,15,240,11,248,0,0,63,192,15,240,7,248,0,0,63,192,15,240,3,252,0,0,191,128,15,240,3,255,64,2,255,64,15,240,0,255,249,111,254,0,15,240,0,127,255,255,252,0,15,240,0,11,255,255,208,0,15,240,0,0,191,249,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,89,15,240,85,85,170,175,255,254,15,240,255,255,255,255,255,254,15,240,191,255,255,255,255,233,15,240,191,255,255,249,80,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,10,160,0,0,15,240,0,0,0,0,0,0,15,224, + // 0xc73c 으 + 60,199,33,30,14,37,2,1,0,0,1,191,254,80,0,0,0,0,0,47,255,255,254,0,0,0,0,2,255,255,255,255,208,0,0,0,15,255,250,107,255,248,0,0,0,63,253,0,0,47,254,0,0,0,191,208,0,0,2,255,0,0,0,255,64,0,0,0,191,192,0,1,254,0,0,0,0,63,192,0,2,253,0,0,0,0,47,208,0,3,252,0,0,0,0,31,224,0,3,252,0,0,0,0,31,224,0,3,252,0,0,0,0,47,208,0,2,254,0,0,0,0,63,208,0,1,255,0,0,0,0,127,192,0,0,255,192,0,0,1,255,128,0,0,63,244,0,0,11,255,0,0,0,31,255,144,5,191,252,0,0,0,7,255,255,255,255,240,0,0,0,0,191,255,255,255,64,0,0,0,0,7,255,255,228,0,0,0,0,0,0,5,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,64,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128, + // 0xc74c 음 + 76,199,33,36,68,37,2,252,0,0,27,255,255,228,0,0,0,0,2,255,255,255,255,208,0,0,0,31,255,255,255,255,252,0,0,0,127,254,64,0,111,255,0,0,0,255,208,0,0,2,255,128,0,1,255,0,0,0,0,191,192,0,1,255,0,0,0,0,63,192,0,1,255,0,0,0,0,63,192,0,1,255,64,0,0,0,191,192,0,0,255,224,0,0,2,255,128,0,0,63,255,149,85,191,255,0,0,0,15,255,255,255,255,248,0,0,0,1,255,255,255,255,128,0,0,0,0,6,191,255,164,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,85,85,85,85,191,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,85,85,85,85,85,85,0,0, + // 0xc774 이 + 116,199,29,38,48,37,3,252,0,0,0,0,0,0,21,64,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,1,169,0,0,0,127,128,0,47,255,224,0,0,127,128,0,255,255,252,0,0,127,128,3,255,255,255,0,0,127,128,11,254,2,255,128,0,127,128,15,244,0,127,192,0,127,128,47,224,0,47,224,0,127,128,63,192,0,15,240,0,127,128,63,192,0,15,240,0,127,128,127,128,0,11,244,0,127,128,191,64,0,7,248,0,127,128,191,64,0,7,248,0,127,128,191,64,0,3,252,0,127,128,255,0,0,3,252,0,127,128,191,64,0,3,252,0,127,128,191,64,0,7,248,0,127,128,191,64,0,7,248,0,127,128,127,128,0,11,244,0,127,128,63,192,0,15,240,0,127,128,63,192,0,15,240,0,127,128,47,224,0,47,224,0,127,128,15,244,0,127,192,0,127,128,11,254,2,255,128,0,127,128,3,255,255,255,0,0,127,128,0,255,255,252,0,0,127,128,0,47,255,224,0,0,127,128,0,1,169,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128, + // 0xc77c 일 + 124,199,30,37,40,37,3,252,0,0,0,0,0,0,127,192,0,27,254,128,0,0,127,192,1,255,255,248,0,0,127,192,11,255,255,255,0,0,127,192,47,254,155,255,192,0,127,192,127,224,0,127,224,0,127,192,255,128,0,31,240,0,127,192,255,0,0,11,244,0,127,192,255,0,0,7,248,0,127,192,255,0,0,7,248,0,127,192,255,0,0,11,248,0,127,192,255,64,0,15,244,0,127,192,191,192,0,47,240,0,127,192,63,249,1,255,208,0,127,192,15,255,255,255,128,0,127,192,3,255,255,253,0,0,127,192,0,127,255,224,0,0,127,192,0,0,84,0,0,0,127,192,0,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,192,0,63,255,255,255,255,255,192,0,63,255,255,255,255,255,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,127,192,0,63,255,255,255,255,255,192,0,63,255,255,255,255,255,192,0,63,255,255,255,255,255,192,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,255,255,255,255,255,240,0,63,255,255,255,255,255,240,0,63,255,255,255,255,255,240,0,0,0,0,0,0,0,0, + // 0xc77d 읽 + 125,199,29,37,40,37,3,252,0,0,0,0,0,0,127,192,0,0,84,0,0,0,127,192,0,127,255,224,0,0,127,192,3,255,255,253,0,0,127,192,15,255,255,255,64,0,127,192,63,249,1,255,208,0,127,192,191,192,0,63,240,0,127,192,255,64,0,15,244,0,127,192,255,0,0,11,248,0,127,192,255,0,0,7,248,0,127,192,255,0,0,7,248,0,127,192,255,0,0,11,244,0,127,192,255,128,0,31,240,0,127,192,127,224,0,127,224,0,127,192,47,254,91,255,192,0,127,192,11,255,255,255,0,0,127,192,1,255,255,248,0,0,127,192,0,27,255,128,0,0,127,192,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,0,0,85,85,84,21,85,85,0,2,255,255,254,63,255,255,192,2,255,255,254,63,255,255,192,2,255,255,254,63,255,255,192,0,0,1,254,0,0,127,192,0,0,1,254,0,0,127,192,0,0,1,254,0,0,127,192,2,255,255,254,0,0,127,192,2,255,255,254,0,0,127,192,2,255,255,253,0,0,127,192,2,253,0,0,0,0,127,192,2,253,0,0,0,0,127,192,2,253,0,5,160,0,127,192,2,255,255,255,240,0,127,192,2,255,255,255,240,0,127,192,2,255,255,254,144,0,127,192,0,0,0,0,0,0,21,64, + // 0xc785 입 + 133,199,29,37,40,37,3,252,0,0,0,0,0,0,127,192,0,0,84,0,0,0,127,192,0,127,255,224,0,0,127,192,3,255,255,254,0,0,127,192,15,255,255,255,128,0,127,192,63,249,1,255,208,0,127,192,127,208,0,47,240,0,127,192,255,64,0,15,244,0,127,192,255,0,0,7,248,0,127,192,255,0,0,3,252,0,127,192,255,0,0,3,252,0,127,192,255,0,0,7,248,0,127,192,255,64,0,15,244,0,127,192,127,208,0,47,240,0,127,192,63,249,1,255,224,0,127,192,15,255,255,255,128,0,127,192,3,255,255,254,0,0,127,192,0,127,255,224,0,0,127,192,0,1,84,0,0,0,127,192,0,0,0,0,0,0,21,64,0,0,0,0,0,0,0,0,0,42,128,0,0,0,42,128,0,63,208,0,0,0,127,192,0,63,208,0,0,0,127,192,0,63,208,0,0,0,127,192,0,63,208,0,0,0,127,192,0,63,255,255,255,255,255,192,0,63,255,255,255,255,255,192,0,63,255,255,255,255,255,192,0,63,208,0,0,0,127,192,0,63,208,0,0,0,127,192,0,63,208,0,0,0,127,192,0,63,208,0,0,0,127,192,0,63,255,255,255,255,255,192,0,63,255,255,255,255,255,192,0,63,255,255,255,255,255,192,0,21,85,85,85,85,85,64, + // 0xc790 자 + 144,199,35,37,77,37,1,252,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,5,85,85,85,85,64,63,192,0,31,255,255,255,255,208,63,192,0,31,255,255,255,255,208,63,192,0,31,255,255,255,255,208,63,192,0,0,0,31,224,0,0,63,192,0,0,0,31,224,0,0,63,192,0,0,0,31,224,0,0,63,192,0,0,0,31,224,0,0,63,192,0,0,0,47,224,0,0,63,192,0,0,0,47,240,0,0,63,192,0,0,0,47,240,0,0,63,192,0,0,0,63,240,0,0,63,213,80,0,0,63,244,0,0,63,255,248,0,0,191,252,0,0,63,255,248,0,0,255,252,0,0,63,255,248,0,1,254,254,0,0,63,192,0,0,3,252,255,64,0,63,192,0,0,7,248,127,192,0,63,192,0,0,15,244,63,240,0,63,192,0,0,63,240,15,248,0,63,192,0,0,191,192,11,254,0,63,192,0,2,255,128,3,255,192,63,192,0,15,255,0,0,255,244,63,192,0,127,252,0,0,63,240,63,192,0,63,240,0,0,11,208,63,192,0,15,128,0,0,1,128,63,192,0,5,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0, + // 0xc791 작 + 145,199,34,38,86,37,2,252,0,0,0,0,0,0,85,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,63,255,255,255,255,64,255,0,0,63,255,255,255,255,64,255,0,0,63,255,255,255,255,64,255,0,0,21,85,191,213,85,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,191,192,0,0,255,0,0,0,0,191,192,0,0,255,0,0,0,0,255,208,0,0,255,255,208,0,1,255,224,0,0,255,255,208,0,3,255,240,0,0,255,255,208,0,7,255,252,0,0,255,149,64,0,15,243,254,0,0,255,0,0,0,63,225,255,128,0,255,0,0,0,255,192,191,240,0,255,0,0,7,255,64,63,254,0,255,0,0,127,254,0,15,255,192,255,0,0,255,248,0,2,255,64,255,0,0,127,208,0,0,127,0,255,0,0,46,0,0,0,4,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,0,0,0,191,255,255,255,255,255,0,0,0,191,255,255,255,255,255,0,0,0,21,85,85,85,85,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,191,0,0, + // 0xc798 잘 + 152,199,34,37,77,37,2,252,0,0,0,0,0,0,255,0,0,21,85,85,85,85,0,255,0,0,63,255,255,255,255,0,255,0,0,63,255,255,255,255,0,255,0,0,63,255,255,255,255,0,255,0,0,0,0,191,128,0,0,255,0,0,0,0,191,192,0,0,255,0,0,0,0,255,192,0,0,255,149,64,0,0,255,208,0,0,255,255,208,0,2,255,240,0,0,255,255,208,0,3,255,248,0,0,255,255,208,0,15,251,253,0,0,255,0,0,0,47,242,255,64,0,255,0,0,0,255,208,255,244,0,255,0,0,11,255,64,63,255,64,255,0,0,191,254,0,11,255,192,255,0,0,255,244,0,1,255,64,255,0,0,127,128,0,0,26,0,255,0,0,36,0,0,0,0,0,85,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,255,255,255,255,255,208,0,0,63,255,255,255,255,255,208,0,0,63,255,255,255,255,255,208,0,0,0,0,0,0,0,0,0,0, + // 0xc7a5 장 + 165,199,34,37,77,37,2,252,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,21,85,85,85,85,0,255,0,0,63,255,255,255,255,64,255,0,0,63,255,255,255,255,64,255,0,0,63,255,255,255,255,64,255,0,0,0,0,127,128,0,0,255,0,0,0,0,191,192,0,0,255,0,0,0,0,191,192,0,0,255,149,64,0,0,255,192,0,0,255,255,208,0,0,255,224,0,0,255,255,208,0,2,255,240,0,0,255,255,208,0,3,255,248,0,0,255,0,0,0,15,247,254,0,0,255,0,0,0,47,241,255,128,0,255,0,0,0,191,208,191,244,0,255,0,0,7,255,128,47,255,64,255,0,0,47,255,0,11,255,192,255,0,0,255,252,0,1,255,64,255,0,0,191,224,0,0,47,0,255,0,0,63,64,0,0,0,0,255,0,0,4,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,255,248,0,0,0,0,0,191,255,255,255,208,0,0,0,7,255,255,255,255,248,0,0,0,31,255,64,0,111,254,0,0,0,63,240,0,0,3,255,0,0,0,127,192,0,0,0,255,64,0,0,127,128,0,0,0,191,128,0,0,127,128,0,0,0,191,128,0,0,63,192,0,0,0,255,64,0,0,63,244,0,0,7,255,0,0,0,15,255,149,85,191,253,0,0,0,3,255,255,255,255,244,0,0,0,0,127,255,255,255,128,0,0,0,0,2,191,255,164,0,0,0, + // 0xc7ac 재 + 172,199,31,37,40,37,2,252,0,0,0,0,1,168,3,252,0,0,0,0,2,252,3,252,0,0,0,0,2,252,3,252,0,0,0,0,2,252,3,252,127,255,255,255,194,252,3,252,127,255,255,255,194,252,3,252,127,255,255,255,194,252,3,252,21,87,253,85,66,252,3,252,0,3,252,0,2,252,3,252,0,3,252,0,2,252,3,252,0,3,252,0,2,252,3,252,0,3,252,0,2,252,3,252,0,3,253,0,2,252,3,252,0,7,253,0,2,252,3,252,0,7,254,0,2,253,87,252,0,11,255,0,2,255,255,252,0,15,255,0,2,255,255,252,0,15,255,64,2,255,255,252,0,31,255,192,2,252,3,252,0,63,239,192,2,252,3,252,0,127,143,240,2,252,3,252,0,255,79,248,2,252,3,252,1,255,7,253,2,252,3,252,3,253,2,255,66,252,3,252,15,252,0,255,226,252,3,252,127,240,0,63,242,252,3,252,255,208,0,15,210,252,3,252,191,64,0,2,130,252,3,252,45,0,0,0,2,252,3,252,0,0,0,0,2,252,3,252,0,0,0,0,2,252,3,252,0,0,0,0,2,252,3,252,0,0,0,0,2,252,3,252,0,0,0,0,2,252,3,252,0,0,0,0,2,252,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,2,252, + // 0xc800 저 + 0,200,30,37,40,37,2,252,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,21,85,85,85,85,64,15,240,63,255,255,255,255,192,15,240,63,255,255,255,255,192,15,240,63,255,255,255,255,192,15,240,0,0,63,192,0,0,15,240,0,0,63,192,0,0,15,240,0,0,63,192,0,0,15,240,0,0,63,192,0,0,15,240,0,0,127,192,0,0,15,240,0,0,127,192,0,0,15,240,0,0,191,208,3,255,255,240,0,0,191,224,3,255,255,240,0,0,255,240,3,255,255,240,0,1,255,244,1,85,95,240,0,2,255,248,0,0,15,240,0,3,250,252,0,0,15,240,0,11,245,255,0,0,15,240,0,31,240,255,128,0,15,240,0,63,208,127,208,0,15,240,0,191,192,63,240,0,15,240,2,255,64,15,252,0,15,240,11,254,0,7,255,64,15,240,63,252,0,2,255,240,15,240,255,240,0,0,191,224,15,240,191,192,0,0,31,192,15,240,62,0,0,0,2,0,15,240,4,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240, + // 0xc804 전 + 4,200,31,36,32,37,2,253,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,5,85,85,85,85,0,15,240,63,255,255,255,255,128,15,240,63,255,255,255,255,128,15,240,63,255,255,255,255,128,15,240,0,0,63,192,0,0,15,240,0,0,63,192,0,0,15,240,0,0,63,192,0,0,15,240,0,0,127,208,1,85,95,240,0,0,191,224,2,255,255,240,0,0,255,240,2,255,255,240,0,1,255,248,2,255,255,240,0,3,255,252,0,0,15,240,0,11,249,255,0,0,15,240,0,47,240,255,192,0,15,240,0,191,208,127,244,0,15,240,7,255,128,31,255,64,15,240,127,255,0,7,255,208,15,240,191,248,0,1,255,128,15,240,63,224,0,0,47,0,15,240,30,0,0,0,1,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,2,164,0,0,0,15,240,0,7,248,0,0,0,15,240,0,7,248,0,0,0,15,240,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,248,0,0,0,0,0,0,7,253,85,85,85,85,84,0,7,255,255,255,255,255,252,0,7,255,255,255,255,255,252,0,7,255,255,255,255,255,252, + // 0xc815 정 + 21,200,30,38,48,37,2,252,0,0,0,0,0,0,5,80,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,63,255,255,255,255,128,15,240,63,255,255,255,255,128,15,240,63,255,255,255,255,128,15,240,21,85,127,213,85,0,15,240,0,0,63,192,0,0,15,240,0,0,127,192,0,0,15,240,0,0,127,208,0,0,15,240,0,0,191,224,2,255,255,240,0,0,255,240,2,255,255,240,0,1,255,248,2,255,255,240,0,3,255,252,0,85,95,240,0,11,249,255,0,0,15,240,0,31,240,255,192,0,15,240,0,191,224,127,244,0,15,240,2,255,192,31,255,64,15,240,47,255,0,11,255,208,15,240,191,252,0,1,255,128,15,240,63,240,0,0,47,0,15,240,47,64,0,0,1,0,15,240,4,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,0,0,1,191,255,254,64,0,0,0,47,255,255,255,244,0,0,0,255,255,255,255,255,0,0,3,255,228,0,27,255,192,0,11,253,0,0,0,127,224,0,15,244,0,0,0,31,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,15,240,0,15,244,0,0,0,47,240,0,11,253,0,0,0,191,208,0,3,255,229,65,95,255,192,0,0,255,255,255,255,254,0,0,0,31,255,255,255,244,0,0,0,0,111,255,249,0,0, + // 0xc81c 제 + 28,200,32,38,48,37,1,252,0,0,0,0,0,0,0,85,0,0,0,0,0,42,64,255,0,0,0,0,0,127,128,255,0,0,0,0,0,127,128,255,5,85,85,85,80,127,128,255,31,255,255,255,240,127,128,255,31,255,255,255,240,127,128,255,31,255,255,255,240,127,128,255,0,0,255,0,0,127,128,255,0,0,255,0,0,127,128,255,0,0,255,0,0,127,128,255,0,0,255,0,0,127,128,255,0,0,255,0,0,127,128,255,0,1,255,0,85,191,128,255,0,1,255,66,255,255,128,255,0,1,255,66,255,255,128,255,0,2,255,130,255,255,128,255,0,3,255,192,0,127,128,255,0,7,255,208,0,127,128,255,0,11,255,224,0,127,128,255,0,15,235,240,0,127,128,255,0,47,211,252,0,127,128,255,0,63,195,253,0,127,128,255,0,191,129,255,0,127,128,255,1,255,0,255,192,127,128,255,7,254,0,63,240,127,128,255,31,252,0,31,252,127,128,255,127,240,0,11,248,127,128,255,47,208,0,1,240,127,128,255,15,0,0,0,64,127,128,255,0,0,0,0,0,127,128,255,0,0,0,0,0,127,128,255,0,0,0,0,0,127,128,255,0,0,0,0,0,127,128,255,0,0,0,0,0,127,128,255,0,0,0,0,0,127,64,255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,170, + // 0xc8fd 죽 + 253,200,33,36,68,37,2,252,3,255,255,255,255,255,255,224,0,3,255,255,255,255,255,255,224,0,3,255,255,255,255,255,255,224,0,1,85,85,111,253,85,85,64,0,0,0,0,63,254,0,0,0,0,0,0,0,127,255,0,0,0,0,0,0,1,255,255,192,0,0,0,0,0,7,255,63,240,0,0,0,0,0,127,252,31,254,0,0,0,0,7,255,240,7,255,228,0,0,11,255,255,128,0,255,255,228,0,15,255,253,0,0,47,255,248,0,11,255,144,0,0,1,255,240,0,3,164,0,0,0,0,6,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,95,249,85,85,85,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,85,85,95,249,85,85,0,0,1,255,255,255,255,255,255,128,0,1,255,255,255,255,255,255,128,0,1,255,255,255,255,255,255,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0, + // 0xc900 준 + 0,201,33,35,59,37,2,253,1,85,85,85,85,85,85,64,0,3,255,255,255,255,255,255,224,0,3,255,255,255,255,255,255,224,0,3,255,255,255,255,255,255,224,0,0,0,0,47,252,0,0,0,0,0,0,0,63,254,0,0,0,0,0,0,0,127,255,0,0,0,0,0,0,0,255,255,192,0,0,0,0,0,3,255,63,224,0,0,0,0,0,47,252,31,253,0,0,0,0,1,255,240,11,255,208,0,0,1,191,255,192,1,255,254,144,0,15,255,254,0,0,63,255,248,0,11,255,224,0,0,7,255,244,0,3,249,0,0,0,0,47,240,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,85,0,7,248,0,0,0,0,0,255,0,7,248,0,0,0,0,0,255,0,7,248,0,0,0,0,0,255,0,7,248,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,85,85,85,85,85,64,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0, + // 0xc911 중 + 17,201,33,36,68,37,2,252,1,85,85,85,85,85,85,64,0,3,255,255,255,255,255,255,224,0,3,255,255,255,255,255,255,224,0,3,255,255,255,255,255,255,224,0,0,0,0,47,253,0,0,0,0,0,0,0,63,255,0,0,0,0,0,0,0,255,255,128,0,0,0,0,0,3,255,127,224,0,0,0,0,0,47,253,47,253,0,0,0,0,6,255,244,11,255,224,0,0,6,255,255,192,1,255,255,228,0,15,255,253,0,0,47,255,248,0,11,255,144,0,0,1,255,240,0,3,148,0,0,0,0,6,160,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,27,255,255,232,0,0,0,0,2,255,255,255,255,208,0,0,0,31,255,255,255,255,248,0,0,0,63,254,64,0,111,254,0,0,0,255,192,0,0,2,255,64,0,0,255,64,0,0,0,191,128,0,0,255,0,0,0,0,127,128,0,0,255,64,0,0,0,255,128,0,0,191,208,0,0,2,255,0,0,0,63,254,84,5,191,254,0,0,0,15,255,255,255,255,248,0,0,0,1,255,255,255,255,128,0,0,0,0,6,255,255,164,0,0,0, + // 0xc990 즐 + 144,201,33,36,68,37,2,252,3,255,255,255,255,255,255,224,0,3,255,255,255,255,255,255,224,0,3,255,255,255,255,255,255,224,0,0,0,0,31,253,0,0,0,0,0,0,0,47,253,0,0,0,0,0,0,0,127,255,0,0,0,0,0,0,1,255,255,192,0,0,0,0,0,11,254,63,248,0,0,0,0,1,191,252,15,255,128,0,0,5,191,255,224,2,255,254,144,0,15,255,255,0,0,127,255,252,0,11,255,224,0,0,6,255,244,0,7,229,0,0,0,0,22,240,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,85,85,85,85,85,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0, + // 0xc9c0 지 + 192,201,30,37,40,37,2,252,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,21,85,85,85,85,64,31,224,63,255,255,255,255,208,31,224,63,255,255,255,255,208,31,224,63,255,255,255,255,208,31,224,0,0,63,208,0,0,31,224,0,0,63,208,0,0,31,224,0,0,63,208,0,0,31,224,0,0,63,208,0,0,31,224,0,0,63,208,0,0,31,224,0,0,63,208,0,0,31,224,0,0,63,224,0,0,31,224,0,0,127,240,0,0,31,224,0,0,191,240,0,0,31,224,0,0,255,248,0,0,31,224,0,1,255,252,0,0,31,224,0,2,254,253,0,0,31,224,0,3,248,255,0,0,31,224,0,15,244,191,128,0,31,224,0,47,240,63,208,0,31,224,0,127,208,31,244,0,31,224,0,255,128,15,254,0,31,224,7,255,0,3,255,192,31,224,47,253,0,0,255,244,31,224,255,244,0,0,63,240,31,224,127,208,0,0,11,208,31,224,47,0,0,0,0,64,31,224,4,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,31,224,0,0,0,0,0,0,26,160, + // 0xcc98 처 + 152,204,30,38,48,37,2,252,0,0,0,0,0,0,5,80,0,0,42,128,0,0,15,240,0,0,63,192,0,0,15,240,0,0,63,192,0,0,15,240,0,0,63,192,0,0,15,240,0,0,63,192,0,0,15,240,0,0,63,192,0,0,15,240,63,255,255,255,255,128,15,240,63,255,255,255,255,128,15,240,63,255,255,255,255,128,15,240,21,85,127,213,85,0,15,240,0,0,63,192,0,0,15,240,0,0,63,192,0,0,15,240,0,0,63,192,0,0,15,240,0,0,127,192,0,0,15,240,0,0,127,208,7,255,255,240,0,0,191,224,7,255,255,240,0,0,255,240,7,255,255,240,0,1,255,244,1,85,95,240,0,3,255,252,0,0,15,240,0,7,250,253,0,0,15,240,0,15,240,255,0,0,15,240,0,47,224,191,192,0,15,240,0,127,192,63,224,0,15,240,1,255,128,31,248,0,15,240,7,255,0,15,255,0,15,240,47,253,0,3,255,208,15,240,255,244,0,0,255,208,15,240,63,208,0,0,47,128,15,240,47,0,0,0,2,0,15,240,4,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240, + // 0xcd08 초 + 8,205,33,33,41,37,2,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,3,255,255,255,255,255,255,224,0,3,255,255,255,255,255,255,224,0,3,255,255,255,255,255,255,224,0,1,85,85,95,249,85,85,80,0,0,0,0,15,248,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,47,253,0,0,0,0,0,0,0,63,255,0,0,0,0,0,0,0,255,255,128,0,0,0,0,0,2,255,127,208,0,0,0,0,0,15,253,47,248,0,0,0,0,0,127,248,15,255,64,0,0,0,11,255,224,2,255,244,0,0,6,255,255,64,0,191,255,164,0,15,255,248,0,0,31,255,252,0,15,255,128,0,0,1,255,248,0,7,228,0,11,244,0,6,240,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,85,85,85,85,85,64, + // 0xcd95 축 + 149,205,33,38,86,37,2,252,0,0,0,5,80,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,3,255,255,255,255,255,255,208,0,3,255,255,255,255,255,255,208,0,3,255,255,255,255,255,255,208,0,0,0,0,31,252,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,63,254,0,0,0,0,0,0,0,255,255,128,0,0,0,0,0,7,255,127,240,0,0,0,0,0,127,252,31,254,64,0,0,0,111,255,240,7,255,249,64,0,15,255,255,64,0,191,255,248,0,11,255,244,0,0,11,255,244,0,7,233,0,0,0,0,27,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,95,249,85,85,85,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,1,255,255,255,255,255,255,128,0,1,255,255,255,255,255,255,128,0,1,255,255,255,255,255,255,128,0,0,85,85,85,85,85,191,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,106,64,0, + // 0xcd9c 출 + 156,205,33,38,86,37,2,252,0,0,0,5,80,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,15,244,0,0,0,0,2,255,255,255,255,255,255,208,0,2,255,255,255,255,255,255,208,0,2,255,255,255,255,255,255,208,0,0,0,0,31,252,0,0,0,0,0,0,0,63,254,0,0,0,0,0,0,0,255,255,128,0,0,0,0,0,7,254,63,244,0,0,0,0,1,191,248,15,255,144,0,0,10,255,255,128,1,255,255,164,0,15,255,248,0,0,27,255,248,0,11,233,0,0,0,0,107,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,255,255,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0, + // 0xcda4 춤 + 164,205,33,38,86,37,2,252,0,0,0,5,80,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,2,255,255,255,255,255,255,208,0,2,255,255,255,255,255,255,208,0,2,255,255,255,255,255,255,208,0,0,0,0,31,252,0,0,0,0,0,0,0,31,252,0,0,0,0,0,0,0,63,254,0,0,0,0,0,0,0,255,255,128,0,0,0,0,0,7,255,127,240,0,0,0,0,0,191,252,31,255,64,0,0,1,111,255,240,7,255,254,80,0,15,255,255,64,0,191,255,248,0,11,255,228,0,0,7,255,244,0,7,229,0,0,0,0,26,240,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,85,85,95,249,85,85,0,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,85,85,85,85,85,85,0,0, + // 0xcde8 취 + 232,205,30,37,40,37,2,252,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,31,244,0,0,15,240,11,255,255,255,255,224,15,240,11,255,255,255,255,224,15,240,11,255,255,255,255,224,15,240,0,0,15,240,0,0,15,240,0,0,31,244,0,0,15,240,0,0,47,248,0,0,15,240,0,0,63,253,0,0,15,240,0,0,255,255,0,0,15,240,0,3,255,191,224,0,15,240,0,31,252,63,253,0,15,240,2,255,244,15,255,240,15,240,31,255,208,2,255,240,15,240,15,254,0,0,127,208,15,240,7,224,0,0,1,128,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,85,15,240,85,85,106,175,255,254,15,240,255,255,255,255,255,254,15,240,191,255,255,255,255,249,15,240,191,255,255,249,80,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,10,160,0,0,15,240,0,0,0,0,0,0,15,224, + // 0xce58 치 + 88,206,30,38,48,37,2,252,0,0,0,0,0,0,5,64,0,0,10,144,0,0,31,240,0,0,31,224,0,0,31,240,0,0,31,224,0,0,31,240,0,0,31,224,0,0,31,240,0,0,31,224,0,0,31,240,0,0,31,224,0,0,31,240,31,255,255,255,255,224,31,240,31,255,255,255,255,224,31,240,31,255,255,255,255,224,31,240,5,85,111,245,85,64,31,240,0,0,31,224,0,0,31,240,0,0,31,224,0,0,31,240,0,0,47,224,0,0,31,240,0,0,47,240,0,0,31,240,0,0,63,240,0,0,31,240,0,0,63,240,0,0,31,240,0,0,127,248,0,0,31,240,0,0,191,252,0,0,31,240,0,0,255,253,0,0,31,240,0,1,253,255,0,0,31,240,0,3,252,191,128,0,31,240,0,11,248,63,208,0,31,240,0,31,240,47,244,0,31,240,0,127,208,15,253,0,31,240,2,255,128,3,255,64,31,240,11,255,0,1,255,244,31,240,127,252,0,0,127,244,31,240,63,240,0,0,15,224,31,240,15,128,0,0,1,192,31,240,4,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,31,240,0,0,0,0,0,0,26,160, + // 0xce68 침 + 104,206,30,38,48,37,2,252,0,0,5,64,0,0,0,0,0,0,47,224,0,0,31,240,0,0,47,224,0,0,31,240,0,0,47,224,0,0,31,240,5,85,111,229,85,64,31,240,31,255,255,255,255,208,31,240,31,255,255,255,255,208,31,240,31,255,255,255,255,208,31,240,0,0,47,224,0,0,31,240,0,0,47,224,0,0,31,240,0,0,63,240,0,0,31,240,0,0,63,240,0,0,31,240,0,0,191,248,0,0,31,240,0,0,255,253,0,0,31,240,0,3,255,255,0,0,31,240,0,11,252,255,192,0,31,240,0,47,244,63,244,0,31,240,1,255,224,31,255,64,31,240,31,255,128,7,255,240,31,240,127,254,0,0,255,240,31,240,47,244,0,0,47,192,31,240,15,128,0,0,1,128,31,240,4,0,0,0,0,0,31,224,0,0,0,0,0,0,0,0,0,1,85,85,85,85,85,64,0,15,255,255,255,255,255,240,0,15,255,255,255,255,255,240,0,15,255,255,255,255,255,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,15,240,0,15,255,255,255,255,255,240,0,15,255,255,255,255,255,240,0,15,255,255,255,255,255,240,0,1,85,85,85,85,85,64, + // 0xce74 카 + 116,206,34,37,77,37,2,252,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,5,85,85,85,80,0,255,0,0,15,255,255,255,248,0,255,0,0,15,255,255,255,248,0,255,0,0,15,255,255,255,248,0,255,0,0,0,0,0,7,248,0,255,0,0,0,0,0,11,244,0,255,0,0,0,0,0,15,244,0,255,0,0,0,0,0,15,240,0,255,0,0,0,0,0,15,240,0,255,0,0,0,0,0,31,224,0,255,0,0,21,170,255,255,208,0,255,0,0,127,255,255,255,192,0,255,85,64,127,255,255,255,192,0,255,255,208,63,254,149,255,128,0,255,255,208,16,0,1,255,0,0,255,255,208,0,0,3,254,0,0,255,0,0,0,0,11,252,0,0,255,0,0,0,0,31,244,0,0,255,0,0,0,0,127,240,0,0,255,0,0,0,1,255,192,0,0,255,0,0,0,7,255,64,0,0,255,0,0,0,47,253,0,0,0,255,0,0,0,255,244,0,0,0,255,0,0,11,255,192,0,0,0,255,0,0,127,255,0,0,0,0,255,0,0,127,248,0,0,0,0,255,0,0,47,128,0,0,0,0,255,0,0,13,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,170,0,0, + // 0xcf1c 켜 + 28,207,30,37,40,37,2,252,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,5,85,85,85,80,0,15,240,15,255,255,255,244,0,15,240,15,255,255,255,240,0,15,240,15,255,255,255,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,15,240,0,15,240,0,0,0,31,255,255,255,240,0,0,0,31,255,255,255,240,0,0,0,63,255,255,255,240,90,175,255,255,213,85,95,240,255,255,255,255,192,0,15,240,191,255,255,255,64,0,15,240,127,169,81,255,0,0,15,240,0,0,3,254,0,0,15,240,0,0,11,252,0,0,15,240,0,0,15,248,21,85,95,240,0,0,63,240,127,255,255,240,0,0,255,208,127,255,255,240,0,3,255,128,127,255,255,240,0,15,254,0,0,0,15,240,0,127,248,0,0,0,15,240,2,255,224,0,0,0,15,240,31,255,128,0,0,0,15,240,255,253,0,0,0,0,15,240,127,240,0,0,0,0,15,240,47,64,0,0,0,0,15,240,8,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,10,160, + // 0xd0d1 탑 + 209,208,33,38,86,37,3,252,0,0,0,0,0,1,84,0,0,0,0,0,0,0,3,252,0,0,21,85,85,85,64,3,252,0,0,127,255,255,255,192,3,252,0,0,127,255,255,255,192,3,252,0,0,127,255,255,255,192,3,252,0,0,127,128,0,0,0,3,252,0,0,127,128,0,0,0,3,252,0,0,127,128,0,0,0,3,252,0,0,127,149,85,85,0,3,255,255,64,127,255,255,255,128,3,255,255,64,127,255,255,255,128,3,255,255,64,127,255,255,255,128,3,254,85,0,127,128,0,0,0,3,252,0,0,127,128,0,0,0,3,252,0,0,127,128,0,0,0,3,252,0,0,127,128,0,22,189,3,252,0,0,127,255,255,255,254,3,252,0,0,127,255,255,255,254,3,252,0,0,127,255,255,255,165,3,252,0,0,21,85,80,0,0,3,252,0,0,0,0,0,0,0,1,84,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0,0,3,252,0,0,0,255,0,0,0,3,252,0,0,0,255,0,0,0,3,252,0,0,0,255,64,0,0,3,252,0,0,0,255,255,255,255,255,252,0,0,0,255,255,255,255,255,252,0,0,0,255,255,255,255,255,252,0,0,0,255,0,0,0,3,252,0,0,0,255,0,0,0,3,252,0,0,0,255,0,0,0,3,252,0,0,0,255,0,0,0,3,252,0,0,0,255,255,255,255,255,252,0,0,0,255,255,255,255,255,252,0,0,0,255,255,255,255,255,252,0,0,0,85,85,85,85,85,84,0,0, + // 0xd130 터 + 48,209,29,38,48,37,3,252,0,0,0,0,0,0,21,64,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,127,255,255,255,208,0,63,192,127,255,255,255,208,0,63,192,127,255,255,255,208,0,63,192,127,213,85,85,64,0,63,192,127,128,0,0,0,0,63,192,127,128,0,0,0,0,63,192,127,128,0,0,0,0,63,192,127,128,0,0,0,0,63,192,127,128,0,0,0,0,63,192,127,128,0,0,0,0,63,192,127,213,85,85,15,255,255,192,127,255,255,255,15,255,255,192,127,255,255,255,15,255,255,192,127,255,255,255,15,255,255,192,127,128,0,0,0,0,63,192,127,128,0,0,0,0,63,192,127,128,0,0,0,0,63,192,127,128,0,0,0,0,63,192,127,128,0,0,0,0,63,192,127,128,0,0,0,0,63,192,127,128,0,0,4,0,63,192,127,213,86,175,253,0,63,192,127,255,255,255,254,0,63,192,127,255,255,255,254,0,63,192,127,255,255,233,64,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192, + // 0xd14c 테 + 76,209,30,38,48,37,3,252,0,0,0,0,0,0,5,80,0,0,0,0,1,80,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,255,255,255,224,7,244,15,240,255,255,255,224,7,244,15,240,255,255,255,224,7,244,15,240,255,85,85,64,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,5,91,244,15,240,255,255,255,15,255,244,15,240,255,255,255,15,255,244,15,240,255,255,255,15,255,244,15,240,255,64,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,0,0,0,7,244,15,240,255,85,106,253,7,244,15,240,255,255,255,253,7,244,15,240,255,255,255,254,7,244,15,240,255,255,254,148,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,7,244,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,10,160, + // 0xd1a0 토 + 160,209,33,31,23,37,2,0,0,85,85,85,85,85,85,64,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,255,255,255,255,255,0,0,0,255,255,255,255,255,255,0,0,0,255,255,255,255,255,255,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,85,85,85,85,85,64,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,85,85,85,85,85,85,85,85,64, + // 0xd2b8 트 + 184,210,33,30,14,37,2,1,0,85,85,85,85,85,85,64,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,255,255,255,255,255,0,0,0,255,255,255,255,255,255,0,0,0,255,255,255,255,255,255,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,192,0,0,85,85,85,85,85,85,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0xd39c 펜 + 156,211,32,37,40,37,2,253,0,0,0,0,0,0,1,84,0,0,0,0,0,170,3,248,0,0,0,0,0,255,3,248,0,0,0,0,0,255,3,248,191,255,255,255,192,255,3,248,191,255,255,255,192,255,3,248,191,255,255,255,192,255,3,248,23,253,91,249,64,255,3,248,3,252,7,244,0,255,3,248,3,252,7,244,0,255,3,248,3,252,7,244,0,255,3,248,3,252,7,244,255,255,3,248,3,252,7,244,255,255,3,248,3,252,7,244,255,255,3,248,3,252,7,244,85,255,3,248,3,252,7,244,0,255,3,248,3,252,7,244,0,255,3,248,3,252,7,244,0,255,3,248,3,252,7,250,160,255,3,248,255,255,255,255,240,255,3,248,255,255,255,255,240,255,3,248,255,255,255,254,80,255,3,248,85,85,0,0,0,255,3,248,0,0,0,0,0,255,3,248,0,0,0,0,0,255,3,248,0,3,252,0,0,255,3,248,0,3,252,0,0,255,3,248,0,3,252,0,0,105,3,248,0,3,252,0,0,0,1,80,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,252,0,0,0,0,0,0,3,253,85,85,85,85,85,0,3,255,255,255,255,255,254,0,3,255,255,255,255,255,254,0,3,255,255,255,255,255,254, + // 0xd504 프 + 4,213,33,29,5,37,2,1,7,255,255,255,255,255,255,240,0,7,255,255,255,255,255,255,240,0,7,255,255,255,255,255,255,240,0,1,85,255,85,85,191,149,80,0,0,0,255,0,0,191,128,0,0,0,0,255,0,0,191,128,0,0,0,0,255,0,0,191,128,0,0,0,0,255,0,0,191,128,0,0,0,0,255,0,0,191,128,0,0,0,0,255,0,0,191,128,0,0,0,0,255,0,0,191,128,0,0,0,0,255,0,0,191,128,0,0,0,0,255,0,0,191,128,0,0,0,0,255,0,0,191,128,0,0,0,0,255,0,0,191,128,0,0,1,85,255,85,85,191,149,80,0,3,255,255,255,255,255,255,240,0,3,255,255,255,255,255,255,240,0,3,255,255,255,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,64,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192,255,255,255,255,255,255,255,255,192, + // 0xd558 하 + 88,213,34,37,77,37,2,252,0,0,21,0,0,0,255,0,0,0,0,191,128,0,0,255,0,0,0,0,191,128,0,0,255,0,0,0,0,191,128,0,0,255,0,0,0,0,191,128,0,0,255,0,0,85,85,191,149,85,64,255,0,0,255,255,255,255,255,192,255,0,0,255,255,255,255,255,192,255,0,0,255,255,255,255,255,192,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,21,0,0,0,255,0,0,0,11,255,248,0,0,255,0,0,0,127,255,255,64,0,255,0,0,1,255,255,255,208,0,255,85,80,3,255,64,127,240,0,255,255,224,11,252,0,15,248,0,255,255,224,15,244,0,3,252,0,255,255,224,15,240,0,2,253,0,255,0,0,31,224,0,2,253,0,255,0,0,31,224,0,1,253,0,255,0,0,31,224,0,2,253,0,255,0,0,15,240,0,3,252,0,255,0,0,15,248,0,7,252,0,255,0,0,7,253,0,31,244,0,255,0,0,3,255,230,255,240,0,255,0,0,0,255,255,255,192,0,255,0,0,0,47,255,254,0,0,255,0,0,0,2,255,224,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0, + // 0xd569 합 + 105,213,34,38,86,37,2,252,0,0,42,128,0,0,0,0,0,0,0,127,192,0,0,255,0,0,0,0,127,192,0,0,255,0,0,0,0,127,192,0,0,255,0,0,255,255,255,255,255,208,255,0,0,255,255,255,255,255,208,255,0,0,255,255,255,255,255,208,255,0,0,85,85,85,85,85,64,255,0,0,0,0,0,0,0,0,255,0,0,0,2,191,228,0,0,255,0,0,0,127,255,255,64,0,255,255,208,1,255,255,255,240,0,255,255,208,3,255,64,111,248,0,255,255,208,11,248,0,7,252,0,255,149,64,15,240,0,2,253,0,255,0,0,15,240,0,2,253,0,255,0,0,15,240,0,2,253,0,255,0,0,11,248,0,7,252,0,255,0,0,3,255,64,111,248,0,255,0,0,1,255,255,255,240,0,255,0,0,0,127,255,255,64,0,255,0,0,0,2,191,228,0,0,255,0,0,0,0,0,0,0,0,85,0,0,0,21,64,0,0,0,85,0,0,0,63,192,0,0,0,255,0,0,0,63,192,0,0,0,255,0,0,0,63,192,0,0,0,255,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,208,0,0,0,255,0,0,0,63,192,0,0,0,255,0,0,0,63,192,0,0,0,255,0,0,0,63,192,0,0,0,255,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,63,255,255,255,255,255,0,0,0,5,85,85,85,85,85,0,0, + // 0xd648 홈 + 72,214,33,38,86,37,2,252,0,0,0,6,164,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,15,248,0,0,0,0,31,255,255,255,255,255,255,252,0,31,255,255,255,255,255,255,252,0,31,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,26,255,255,228,0,0,0,0,2,255,255,255,255,208,0,0,0,15,255,255,255,255,252,0,0,0,63,249,0,0,31,254,0,0,0,127,208,0,0,2,255,0,0,0,127,192,0,0,1,255,0,0,0,127,208,0,0,2,255,0,0,0,63,253,64,0,111,254,0,0,0,15,255,255,255,255,248,0,0,0,1,255,255,255,255,144,0,0,0,0,6,175,254,148,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,11,244,0,0,0,0,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,255,255,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,0,0,0,0,127,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,255,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0, + // 0xd654 화 + 84,214,35,37,77,37,1,252,0,0,15,240,0,0,63,208,0,0,0,15,240,0,0,63,208,0,0,0,15,240,0,0,63,208,0,0,0,15,240,0,0,63,208,0,63,255,255,255,255,248,63,208,0,63,255,255,255,255,248,63,208,0,63,255,255,255,255,248,63,208,0,21,85,85,85,85,80,63,208,0,0,0,0,0,0,0,63,208,0,0,0,111,249,0,0,63,208,0,0,7,255,255,224,0,63,208,0,0,63,255,255,252,0,63,208,0,0,191,228,27,254,0,63,208,0,0,255,64,1,255,0,63,208,0,1,254,0,0,191,64,63,208,0,2,253,0,0,127,128,63,255,244,2,253,0,0,127,128,63,255,244,1,254,0,0,191,64,63,255,244,0,255,64,1,255,0,63,229,80,0,191,224,11,254,0,63,208,0,0,63,255,255,252,0,63,208,0,0,11,255,255,224,0,63,208,0,0,0,191,254,64,0,63,208,0,0,0,15,240,0,0,63,208,0,0,0,15,240,0,0,63,208,0,0,0,15,240,0,20,63,208,0,21,85,111,251,255,252,63,208,0,127,255,255,255,255,253,63,208,0,63,255,255,255,255,248,63,208,0,63,255,255,170,80,0,63,208,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,42,128,0, + // 0xd788 히 + 136,215,29,37,40,37,3,252,0,0,21,64,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127,128,85,85,191,213,85,64,127,128,255,255,255,255,255,208,127,128,255,255,255,255,255,208,127,128,255,255,255,255,255,208,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,21,0,0,0,127,128,0,11,255,248,0,0,127,128,0,127,255,255,64,0,127,128,1,255,255,255,224,0,127,128,3,255,64,127,244,0,127,128,11,252,0,11,252,0,127,128,15,244,0,3,252,0,127,128,31,240,0,2,254,0,127,128,31,224,0,1,254,0,127,128,31,224,0,1,254,0,127,128,31,224,0,1,254,0,127,128,15,240,0,2,253,0,127,128,15,248,0,7,252,0,127,128,7,253,0,31,248,0,127,128,3,255,230,255,240,0,127,128,0,255,255,255,192,0,127,128,0,47,255,255,0,0,127,128,0,2,255,228,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128,0,0,0,0,0,0,127,128, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Latin_Extended_A_29.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Latin_Extended_A_29.cpp new file mode 100644 index 000000000000..24b1d05c0ea6 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Latin_Extended_A_29.cpp @@ -0,0 +1,288 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Latin Extended-A 40pt, capital 'A' height: 29px, width: 100%, range: 0x0100-0x017f +extern const uint8_t NotoSans_Medium_Latin_Extended_A_29[22499] = { + 130,29,0,1,127,1,38,246, // unifont_t + // 0x0100 Ā + 26,35,245,26,0,0,0,1,85,85,84,0,0,0,3,255,255,252,0,0,0,3,255,255,252,0,0,0,3,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x0101 ā + 18,29,145,23,2,255,1,85,85,85,0,2,255,255,254,0,2,255,255,254,0,2,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x0102 Ă + 26,37,3,26,0,0,0,11,192,0,62,0,0,0,7,208,0,189,0,0,0,3,254,171,252,0,0,0,1,255,255,244,0,0,0,0,127,255,208,0,0,0,0,6,169,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x0103 ă + 18,31,155,23,2,255,3,208,0,47,0,3,240,0,63,0,2,254,171,253,0,0,255,255,252,0,0,63,255,224,0,0,6,170,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x0104 Ą + 26,39,17,26,0,246,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240,0,0,0,0,0,47,64,0,0,0,0,0,190,0,0,0,0,0,1,252,0,0,0,0,0,3,244,0,0,0,0,0,3,240,0,0,0,0,0,3,244,0,0,0,0,0,3,255,176,0,0,0,0,1,255,240,0,0,0,0,0,127,224,0,0,0,0,0,0,0, + // 0x0105 ą + 19,32,160,23,2,246,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,15,192,0,0,0,63,64,0,0,0,190,0,0,0,0,252,0,0,0,1,252,0,0,0,1,252,0,0,0,0,255,184,0,0,0,191,248,0,0,0,31,244,0,0,0,0,0, + // 0x0106 Ć + 22,39,234,25,2,255,0,0,0,2,170,0,0,0,0,15,252,0,0,0,0,31,244,0,0,0,0,63,208,0,0,0,0,255,64,0,0,0,2,252,0,0,0,0,3,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,2,255,255,255,208,0,31,255,255,255,224,0,127,255,255,255,208,1,255,244,0,27,192,3,255,128,0,0,0,11,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,63,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,127,208,0,0,0,0,63,224,0,0,0,0,63,240,0,0,0,0,47,244,0,0,0,0,15,252,0,0,0,0,11,255,0,0,0,0,3,255,208,0,0,64,1,255,254,85,175,192,0,127,255,255,255,192,0,15,255,255,255,192,0,1,191,255,254,64,0,0,1,85,0,0, + // 0x0107 ć + 16,32,128,20,2,255,0,0,2,170,0,0,11,253,0,0,15,248,0,0,63,224,0,0,191,128,0,1,253,0,0,2,244,0,0,0,0,0,0,0,0,0,0,6,255,228,0,127,255,255,2,255,255,255,11,255,234,253,31,253,0,8,63,240,0,0,127,208,0,0,191,192,0,0,191,128,0,0,255,128,0,0,255,64,0,0,255,64,0,0,255,64,0,0,255,128,0,0,191,192,0,0,127,192,0,0,63,224,0,0,47,244,0,1,15,254,64,111,7,255,255,255,1,255,255,255,0,47,255,248,0,0,85,0, + // 0x0108 Ĉ + 22,39,234,25,2,255,0,0,2,169,0,0,0,0,15,255,0,0,0,0,47,255,192,0,0,0,191,175,240,0,0,1,254,7,248,0,0,7,248,1,254,0,0,15,128,0,47,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,2,255,255,255,208,0,31,255,255,255,224,0,127,255,255,255,208,1,255,244,0,27,192,3,255,128,0,0,0,11,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,63,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,127,208,0,0,0,0,63,224,0,0,0,0,63,240,0,0,0,0,47,244,0,0,0,0,15,252,0,0,0,0,11,255,0,0,0,0,3,255,208,0,0,64,1,255,254,85,175,192,0,127,255,255,255,192,0,15,255,255,255,192,0,1,191,255,254,64,0,0,1,85,0,0, + // 0x0109 ĉ + 17,32,160,20,2,255,0,2,170,0,0,0,11,255,64,0,0,47,255,192,0,0,127,223,240,0,0,255,7,252,0,3,248,0,255,0,11,208,0,47,64,0,0,0,0,0,0,0,0,0,0,0,6,255,228,0,0,127,255,255,0,2,255,255,255,0,11,255,234,253,0,31,253,0,8,0,63,240,0,0,0,127,208,0,0,0,191,192,0,0,0,191,128,0,0,0,255,128,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,244,0,1,0,15,254,64,111,0,7,255,255,255,0,1,255,255,255,0,0,47,255,248,0,0,0,85,0,0, + // 0x010a Ċ + 22,38,228,25,2,255,0,0,0,164,0,0,0,0,3,253,0,0,0,0,3,254,0,0,0,0,3,253,0,0,0,0,1,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,2,255,255,255,208,0,31,255,255,255,224,0,127,255,255,255,208,1,255,244,0,27,192,3,255,128,0,0,0,11,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,63,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,127,208,0,0,0,0,63,224,0,0,0,0,63,240,0,0,0,0,47,244,0,0,0,0,15,252,0,0,0,0,11,255,0,0,0,0,3,255,208,0,0,64,1,255,254,85,175,192,0,127,255,255,255,192,0,15,255,255,255,192,0,1,191,255,254,64,0,0,1,85,0,0, + // 0x010b ċ + 16,31,124,20,2,255,0,0,168,0,0,2,254,0,0,3,255,0,0,3,254,0,0,1,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,228,0,127,255,255,2,255,255,255,11,255,234,253,31,253,0,8,63,240,0,0,127,208,0,0,191,192,0,0,191,128,0,0,255,128,0,0,255,64,0,0,255,64,0,0,255,64,0,0,255,128,0,0,191,192,0,0,127,192,0,0,63,224,0,0,47,244,0,1,15,254,64,111,7,255,255,255,1,255,255,255,0,47,255,248,0,0,85,0, + // 0x010c Č + 22,39,234,25,2,255,0,10,128,0,42,64,0,11,244,0,255,0,0,2,254,7,252,0,0,0,191,159,240,0,0,0,63,255,192,0,0,0,15,255,64,0,0,0,7,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,2,255,255,255,208,0,31,255,255,255,224,0,127,255,255,255,208,1,255,244,0,27,192,3,255,128,0,0,0,11,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,63,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,127,208,0,0,0,0,63,224,0,0,0,0,63,240,0,0,0,0,47,244,0,0,0,0,15,252,0,0,0,0,11,255,0,0,0,0,3,255,208,0,0,64,1,255,254,85,175,192,0,127,255,255,255,192,0,15,255,255,255,192,0,1,191,255,254,64,0,0,1,85,0,0, + // 0x010d č + 17,32,160,20,2,255,10,144,0,26,64,7,248,0,191,0,1,254,3,252,0,0,127,223,240,0,0,47,255,208,0,0,15,255,64,0,0,3,254,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,228,0,0,127,255,255,0,2,255,255,255,0,11,255,234,253,0,31,253,0,8,0,63,240,0,0,0,127,208,0,0,0,191,192,0,0,0,191,128,0,0,0,255,128,0,0,0,255,64,0,0,0,255,64,0,0,0,255,64,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,244,0,1,0,15,254,64,111,0,7,255,255,255,0,1,255,255,255,0,0,47,255,248,0,0,0,85,0,0, + // 0x010e Ď + 23,38,228,29,4,0,1,164,0,6,160,0,0,254,0,47,208,0,0,63,192,255,64,0,0,31,247,253,0,0,0,7,255,244,0,0,0,2,255,224,0,0,0,0,191,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,170,165,0,0,0,255,255,255,248,0,0,255,255,255,255,192,0,255,255,255,255,244,0,255,0,1,191,253,0,255,0,0,11,255,64,255,0,0,1,255,192,255,0,0,0,191,224,255,0,0,0,63,240,255,0,0,0,31,244,255,0,0,0,15,248,255,0,0,0,15,248,255,0,0,0,11,252,255,0,0,0,11,252,255,0,0,0,11,252,255,0,0,0,11,252,255,0,0,0,11,252,255,0,0,0,15,248,255,0,0,0,15,248,255,0,0,0,31,244,255,0,0,0,63,240,255,0,0,0,127,224,255,0,0,0,255,192,255,0,0,7,255,64,255,0,0,127,254,0,255,170,191,255,248,0,255,255,255,255,208,0,255,255,255,253,0,0,255,255,254,64,0,0, + // 0x010f ď + 26,32,224,25,2,255,0,0,0,1,84,5,80,0,0,0,3,253,15,240,0,0,0,3,253,15,224,0,0,0,3,253,15,208,0,0,0,3,253,31,192,0,0,0,3,253,47,64,0,0,0,3,253,62,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,27,254,2,253,0,0,0,255,255,226,253,0,0,3,255,255,250,253,0,0,15,255,170,255,253,0,0,47,248,0,47,253,0,0,63,240,0,15,253,0,0,127,208,0,7,253,0,0,191,192,0,3,253,0,0,191,128,0,3,253,0,0,255,128,0,2,253,0,0,255,64,0,2,253,0,0,255,64,0,2,253,0,0,255,64,0,2,253,0,0,255,128,0,2,253,0,0,191,192,0,3,253,0,0,127,192,0,3,253,0,0,63,224,0,7,253,0,0,63,244,0,15,253,0,0,31,254,1,191,253,0,0,11,255,255,254,253,0,0,2,255,255,240,253,0,0,0,127,255,128,253,0,0,0,1,80,0,0,0,0, + // 0x0110 Đ + 26,29,203,29,1,0,2,170,170,148,0,0,0,3,255,255,255,224,0,0,3,255,255,255,255,0,0,3,255,255,255,255,208,0,3,253,0,6,255,244,0,3,253,0,0,47,253,0,3,253,0,0,7,255,0,3,253,0,0,2,255,128,3,253,0,0,0,255,192,3,253,0,0,0,127,208,3,253,0,0,0,63,224,3,253,0,0,0,63,224,3,253,0,0,0,47,240,255,255,255,224,0,47,240,255,255,255,224,0,47,240,255,255,255,224,0,47,240,171,255,170,160,0,47,240,3,253,0,0,0,63,224,3,253,0,0,0,63,224,3,253,0,0,0,127,192,3,253,0,0,0,255,192,3,253,0,0,1,255,128,3,253,0,0,3,255,0,3,253,0,0,31,253,0,3,253,0,1,255,248,0,3,255,170,255,255,224,0,3,255,255,255,255,64,0,3,255,255,255,244,0,0,3,255,255,249,0,0,0, + // 0x0111 đ + 23,32,192,25,2,255,0,0,0,1,84,0,0,0,0,3,253,0,0,0,0,3,253,0,0,0,0,3,253,0,0,2,255,255,255,244,0,2,255,255,255,248,0,2,255,255,255,248,0,0,0,3,254,0,0,0,0,3,253,0,0,1,84,3,253,0,0,127,255,130,253,0,2,255,255,246,253,0,11,255,255,254,253,0,31,253,0,191,253,0,63,240,0,15,253,0,127,208,0,11,253,0,127,192,0,3,253,0,191,192,0,3,253,0,255,128,0,2,253,0,255,64,0,2,253,0,255,64,0,2,253,0,255,64,0,2,253,0,255,128,0,2,253,0,191,128,0,3,253,0,127,192,0,3,253,0,63,208,0,7,253,0,63,240,0,15,253,0,31,254,1,191,253,0,11,255,255,254,253,0,2,255,255,241,253,0,0,127,255,128,253,0,0,1,80,0,0,0, + // 0x0112 Ē + 16,35,140,22,4,0,5,85,85,80,15,255,255,244,15,255,255,244,15,255,255,240,0,0,0,0,0,0,0,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x0113 ē + 19,29,145,23,2,255,1,85,85,85,0,2,255,255,254,0,2,255,255,254,0,1,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x0114 Ĕ + 16,37,148,22,4,0,31,0,0,248,31,128,1,244,15,250,175,240,7,255,255,208,1,255,255,64,0,26,164,0,0,0,0,0,0,0,0,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x0115 ĕ + 19,31,155,23,2,255,3,208,0,31,0,3,240,0,63,0,2,254,170,253,0,0,255,255,252,0,0,63,255,224,0,0,6,170,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x0116 Ė + 16,37,148,22,4,0,0,2,144,0,0,15,244,0,0,15,248,0,0,15,244,0,0,7,224,0,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x0117 ė + 19,31,155,23,2,255,0,0,168,0,0,0,2,254,0,0,0,3,255,0,0,0,2,255,0,0,0,0,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x0118 Ę + 16,39,156,22,4,246,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255,0,0,2,244,0,0,11,208,0,0,31,128,0,0,63,0,0,0,63,0,0,0,63,64,0,0,63,234,0,0,47,255,0,0,7,254,0,0,0,0, + // 0x0119 ę + 19,32,160,23,2,246,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,208,0,0,21,127,0,0,0,0,252,0,0,0,2,244,0,0,0,3,240,0,0,0,7,240,0,0,0,7,240,0,0,0,3,254,224,0,0,2,255,224,0,0,0,191,208,0,0,0,0,0, + // 0x011a Ě + 16,38,152,22,4,0,42,0,0,169,47,208,3,252,11,248,31,240,2,254,127,192,0,255,255,0,0,63,253,0,0,31,244,0,0,0,0,0,0,0,0,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x011b ě + 19,32,160,23,2,255,6,144,0,26,128,3,248,0,191,64,0,255,3,253,0,0,127,223,244,0,0,31,255,208,0,0,11,255,128,0,0,2,254,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x011c Ĝ + 24,39,234,29,2,255,0,0,0,170,64,0,0,0,3,255,192,0,0,0,11,255,240,0,0,0,47,235,252,0,0,0,127,129,254,0,0,1,254,0,127,128,0,3,224,0,11,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,250,64,0,1,191,255,255,249,0,11,255,255,255,253,0,63,255,255,255,252,0,255,249,0,1,184,3,255,192,0,0,0,11,255,0,0,0,0,15,252,0,0,0,0,47,244,0,0,0,0,63,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,5,85,85,191,192,0,31,255,255,191,192,0,31,255,255,127,192,0,31,255,255,127,192,0,5,86,255,127,208,0,0,0,255,63,224,0,0,0,255,63,240,0,0,0,255,31,244,0,0,0,255,15,252,0,0,0,255,11,255,0,0,0,255,3,255,208,0,0,255,0,255,254,85,91,255,0,63,255,255,255,255,0,11,255,255,255,255,0,0,191,255,255,228,0,0,0,85,64,0, + // 0x011d ĝ + 20,41,205,25,2,246,0,1,170,64,0,0,3,255,192,0,0,15,255,240,0,0,47,235,248,0,0,191,130,254,0,1,253,0,127,128,3,224,0,11,192,0,0,0,0,0,0,0,0,0,0,0,27,254,0,169,0,255,255,224,253,3,255,255,249,253,15,255,171,255,253,31,248,0,63,253,63,240,0,15,253,127,208,0,7,253,191,192,0,3,253,191,128,0,3,253,255,128,0,2,253,255,64,0,2,253,255,64,0,2,253,255,64,0,2,253,255,128,0,2,253,191,192,0,3,253,127,192,0,3,253,63,208,0,7,253,63,240,0,15,253,15,253,0,191,253,11,255,255,254,253,2,255,255,242,253,0,127,255,130,253,0,1,80,2,253,0,0,0,3,253,0,0,0,3,253,0,0,0,7,252,0,0,0,15,252,30,64,0,127,244,31,255,255,255,224,31,255,255,255,128,11,255,255,253,0,0,22,169,64,0, + // 0x011e Ğ + 24,38,228,29,2,255,0,1,240,0,15,128,0,1,248,0,31,64,0,0,255,170,255,0,0,0,127,255,253,0,0,0,31,255,244,0,0,0,1,170,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,250,64,0,1,191,255,255,249,0,11,255,255,255,253,0,63,255,255,255,252,0,255,249,0,1,184,3,255,192,0,0,0,11,255,0,0,0,0,15,252,0,0,0,0,47,244,0,0,0,0,63,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,5,85,85,191,192,0,31,255,255,191,192,0,31,255,255,127,192,0,31,255,255,127,192,0,5,86,255,127,208,0,0,0,255,63,224,0,0,0,255,63,240,0,0,0,255,31,244,0,0,0,255,15,252,0,0,0,255,11,255,0,0,0,255,3,255,208,0,0,255,0,255,254,85,91,255,0,63,255,255,255,255,0,11,255,255,255,255,0,0,191,255,255,228,0,0,0,85,64,0, + // 0x011f ğ + 20,40,200,25,2,246,2,240,0,15,128,1,244,0,47,64,0,255,170,255,0,0,127,255,253,0,0,31,255,244,0,0,1,170,64,0,0,0,0,0,0,0,0,0,0,0,0,27,254,0,169,0,255,255,224,253,3,255,255,249,253,15,255,171,255,253,31,248,0,63,253,63,240,0,15,253,127,208,0,7,253,191,192,0,3,253,191,128,0,3,253,255,128,0,2,253,255,64,0,2,253,255,64,0,2,253,255,64,0,2,253,255,128,0,2,253,191,192,0,3,253,127,192,0,3,253,63,208,0,7,253,63,240,0,15,253,15,253,0,191,253,11,255,255,254,253,2,255,255,242,253,0,127,255,130,253,0,1,80,2,253,0,0,0,3,253,0,0,0,3,253,0,0,0,7,252,0,0,0,15,252,30,64,0,127,244,31,255,255,255,224,31,255,255,255,128,11,255,255,253,0,0,22,169,64,0, + // 0x0120 Ġ + 24,38,228,29,2,255,0,0,0,41,0,0,0,0,0,255,64,0,0,0,0,255,128,0,0,0,0,255,64,0,0,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,250,64,0,1,191,255,255,249,0,11,255,255,255,253,0,63,255,255,255,252,0,255,249,0,1,184,3,255,192,0,0,0,11,255,0,0,0,0,15,252,0,0,0,0,47,244,0,0,0,0,63,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,5,85,85,191,192,0,31,255,255,191,192,0,31,255,255,127,192,0,31,255,255,127,192,0,5,86,255,127,208,0,0,0,255,63,224,0,0,0,255,63,240,0,0,0,255,31,244,0,0,0,255,15,252,0,0,0,255,11,255,0,0,0,255,3,255,208,0,0,255,0,255,254,85,91,255,0,63,255,255,255,255,0,11,255,255,255,255,0,0,191,255,255,228,0,0,0,85,64,0, + // 0x0121 ġ + 20,40,200,25,2,246,0,0,41,0,0,0,0,255,0,0,0,1,255,64,0,0,0,255,64,0,0,0,190,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,254,0,169,0,255,255,224,253,3,255,255,249,253,15,255,171,255,253,31,248,0,63,253,63,240,0,15,253,127,208,0,7,253,191,192,0,3,253,191,128,0,3,253,255,128,0,2,253,255,64,0,2,253,255,64,0,2,253,255,64,0,2,253,255,128,0,2,253,191,192,0,3,253,127,192,0,3,253,63,208,0,7,253,63,240,0,15,253,15,253,0,191,253,11,255,255,254,253,2,255,255,242,253,0,127,255,130,253,0,1,80,2,253,0,0,0,3,253,0,0,0,3,253,0,0,0,7,252,0,0,0,15,252,30,64,0,127,244,31,255,255,255,224,31,255,255,255,128,11,255,255,253,0,0,22,169,64,0, + // 0x0122 Ģ + 24,38,228,29,2,247,0,0,6,255,250,64,0,1,191,255,255,249,0,11,255,255,255,253,0,63,255,255,255,252,0,255,249,0,1,184,3,255,192,0,0,0,11,255,0,0,0,0,15,252,0,0,0,0,47,244,0,0,0,0,63,240,0,0,0,0,63,208,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,191,192,0,5,85,85,191,192,0,31,255,255,191,192,0,31,255,255,127,192,0,31,255,255,127,192,0,5,86,255,127,208,0,0,0,255,63,224,0,0,0,255,63,240,0,0,0,255,31,244,0,0,0,255,15,252,0,0,0,255,11,255,0,0,0,255,3,255,208,0,0,255,0,255,254,85,91,255,0,63,255,255,255,255,0,11,255,255,255,255,0,0,191,255,255,228,0,0,0,85,64,0,0,0,0,0,0,0,0,0,0,42,64,0,0,0,0,191,64,0,0,0,0,191,0,0,0,0,0,254,0,0,0,0,1,252,0,0,0,0,2,244,0,0,0,0,2,224,0,0, + // 0x0123 ģ + 20,41,205,25,2,246,0,0,6,128,0,0,0,31,128,0,0,0,63,64,0,0,0,127,0,0,0,0,255,0,0,0,1,254,0,0,0,2,253,0,0,0,0,0,0,0,0,0,0,0,0,0,27,254,0,169,0,255,255,224,253,3,255,255,249,253,15,255,171,255,253,31,248,0,63,253,63,240,0,15,253,127,208,0,7,253,191,192,0,3,253,191,128,0,3,253,255,128,0,2,253,255,64,0,2,253,255,64,0,2,253,255,64,0,2,253,255,128,0,2,253,191,192,0,3,253,127,192,0,3,253,63,208,0,7,253,63,240,0,15,253,15,253,0,191,253,11,255,255,254,253,2,255,255,242,253,0,127,255,130,253,0,1,80,2,253,0,0,0,3,253,0,0,0,3,253,0,0,0,7,252,0,0,0,15,252,30,64,0,127,244,31,255,255,255,224,31,255,255,255,128,11,255,255,253,0,0,22,169,64,0, + // 0x0124 Ĥ + 22,38,228,30,4,0,0,0,106,144,0,0,0,0,255,240,0,0,0,3,255,252,0,0,0,11,250,254,0,0,0,47,224,191,128,0,0,191,64,31,208,0,0,248,0,2,240,0,0,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,10,160,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,234,170,170,191,240,255,255,255,255,255,240,255,255,255,255,255,240,255,255,255,255,255,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240,255,0,0,0,15,240, + // 0x0125 ĥ + 24,40,240,25,254,0,0,42,160,0,0,0,0,191,248,0,0,0,1,255,253,0,0,0,7,253,255,0,0,0,15,240,63,192,0,0,63,192,15,240,0,0,189,0,2,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,64,0,0,0,0,47,224,0,0,0,0,47,224,0,0,0,0,47,224,0,0,0,0,47,224,0,0,0,0,47,224,0,0,0,0,47,224,0,0,0,0,47,224,0,0,0,0,47,224,0,0,0,0,47,224,27,249,0,0,47,210,255,255,208,0,47,219,255,255,244,0,47,255,234,191,252,0,47,254,0,11,253,0,47,252,0,3,254,0,47,244,0,1,255,0,47,240,0,1,255,0,47,240,0,0,255,0,47,224,0,0,255,0,47,224,0,0,255,0,47,224,0,0,255,0,47,224,0,0,255,0,47,224,0,0,255,0,47,224,0,0,255,0,47,224,0,0,255,0,47,224,0,0,255,0,47,224,0,0,255,0,47,224,0,0,255,0,47,224,0,0,255,0,47,224,0,0,255,0,47,224,0,0,255, + // 0x0126 Ħ + 30,29,232,30,0,0,0,170,0,0,0,10,160,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,1,255,0,0,0,31,240,0,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,240,1,255,0,0,0,31,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,0,255,234,170,170,191,240,0,0,255,255,255,255,255,240,0,0,255,255,255,255,255,240,0,0,255,255,255,255,255,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0,0,255,0,0,0,15,240,0, + // 0x0127 ħ + 22,31,186,25,0,0,1,84,0,0,0,0,2,254,0,0,0,0,2,254,0,0,0,0,2,254,0,0,0,0,191,255,255,253,0,0,191,255,255,253,0,0,191,255,255,253,0,0,2,254,0,0,0,0,2,254,0,0,0,0,2,254,0,0,0,0,2,254,2,255,224,0,2,253,47,255,254,0,2,253,255,255,255,128,2,255,254,155,255,192,2,255,224,0,191,224,2,255,192,0,63,240,2,255,64,0,31,240,2,255,0,0,31,240,2,255,0,0,15,240,2,254,0,0,15,240,2,254,0,0,15,240,2,254,0,0,15,240,2,254,0,0,15,240,2,254,0,0,15,240,2,254,0,0,15,240,2,254,0,0,15,240,2,254,0,0,15,240,2,254,0,0,15,240,2,254,0,0,15,240,2,254,0,0,15,240,2,254,0,0,15,240, + // 0x0128 Ĩ + 16,37,148,14,255,0,0,164,0,25,11,255,64,61,31,255,249,252,63,175,255,248,61,1,255,240,120,0,26,64,0,0,0,0,0,0,0,0,6,170,170,144,7,255,255,224,7,255,255,224,0,191,254,64,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,31,248,0,7,255,255,208,7,255,255,224,7,255,255,224, + // 0x0129 ĩ + 15,30,120,11,254,0,1,144,0,104,31,254,0,188,63,255,230,248,191,191,255,240,248,7,255,208,240,0,106,0,0,0,0,0,0,0,0,0,0,26,144,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0, + // 0x012a Ī + 12,35,105,14,1,0,85,85,85,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,106,170,169,127,255,254,127,255,254,11,255,228,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,1,255,128,127,255,253,127,255,254,127,255,254, + // 0x012b ī + 13,28,112,11,255,0,85,85,85,0,191,255,255,128,191,255,255,128,191,255,255,64,0,0,0,0,0,0,0,0,0,106,64,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0, + // 0x012c Ĭ + 14,37,148,14,0,0,124,0,3,224,125,0,7,208,63,234,191,192,31,255,255,64,7,255,253,0,0,106,144,0,0,0,0,0,0,0,0,0,26,170,170,64,31,255,255,128,31,255,255,128,2,255,249,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,127,224,0,31,255,255,64,31,255,255,128,31,255,255,128, + // 0x012d ĭ + 13,30,120,11,255,0,244,0,11,192,252,0,15,192,191,170,255,64,63,255,254,0,15,255,248,0,1,170,64,0,0,0,0,0,0,0,0,0,0,106,64,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0, + // 0x012e Į + 12,39,117,14,1,246,106,170,169,127,255,254,127,255,254,11,255,228,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,1,255,128,127,255,253,127,255,254,127,255,254,0,3,240,0,15,192,0,47,64,0,63,0,0,127,0,0,127,0,0,127,237,0,63,254,0,11,253,0,0,0, + // 0x012f į + 8,40,80,11,1,246,2,160,11,248,15,252,15,248,7,240,0,0,0,0,0,0,6,164,11,248,11,248,11,248,11,248,11,248,11,248,11,248,11,248,11,248,11,248,11,248,11,248,11,248,11,248,11,248,11,248,11,248,11,248,11,248,11,248,11,248,7,240,15,192,63,0,126,0,190,0,191,0,127,237,63,253,11,252,0,0, + // 0x0130 İ + 12,37,111,14,1,0,0,41,0,0,255,64,0,255,64,0,255,64,0,190,0,0,0,0,0,0,0,0,0,0,106,170,169,127,255,254,127,255,254,11,255,228,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,1,255,128,127,255,253,127,255,254,127,255,254, + // 0x0131 ı + 5,22,44,11,3,0,106,64,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128, + // 0x0132 IJ + 21,37,222,26,1,248,106,170,169,0,42,128,127,255,254,0,63,192,127,255,254,0,63,192,11,255,228,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,0,255,0,0,63,192,1,255,128,0,63,192,127,255,253,0,63,192,127,255,254,0,63,192,127,255,254,0,63,192,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,255,128,0,0,0,3,255,64,0,0,15,255,255,0,0,0,15,255,252,0,0,0,15,255,240,0,0,0,6,250,64,0, + // 0x0133 ij + 16,40,160,22,3,246,42,0,0,164,191,128,3,253,255,192,3,254,255,128,3,254,127,0,1,252,0,0,0,0,0,0,0,0,0,0,0,0,106,64,1,168,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,191,128,3,253,0,0,3,253,0,0,3,253,0,0,3,253,0,0,3,253,0,0,3,253,0,0,11,252,0,31,255,248,0,31,255,240,0,31,255,192,0,5,164,0, + // 0x0134 Ĵ + 16,46,184,12,253,248,0,6,168,0,0,31,255,0,0,63,255,128,0,255,127,208,2,253,15,244,11,244,2,253,31,128,0,126,0,0,0,0,0,0,0,0,0,2,168,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,7,252,0,0,11,252,0,0,15,248,0,0,63,240,0,255,255,224,0,255,255,192,0,255,254,0,0,111,160,0,0, + // 0x0135 ĵ + 16,41,164,11,253,246,0,10,168,0,0,47,253,0,0,127,255,64,1,255,127,192,3,252,31,240,15,224,3,252,47,64,0,189,0,0,0,0,0,0,0,0,0,6,164,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,11,248,0,0,15,244,0,0,47,240,0,127,255,240,0,127,255,192,0,127,255,64,0,22,148,0,0, + // 0x0136 Ķ + 21,38,228,25,4,247,170,0,0,0,170,64,255,0,0,3,255,0,255,0,0,15,252,0,255,0,0,47,244,0,255,0,0,127,208,0,255,0,1,255,128,0,255,0,3,254,0,0,255,0,15,252,0,0,255,0,63,240,0,0,255,0,255,192,0,0,255,2,255,0,0,0,255,11,253,0,0,0,255,31,244,0,0,0,255,127,244,0,0,0,255,255,252,0,0,0,255,255,255,0,0,0,255,242,255,128,0,0,255,192,255,208,0,0,255,0,63,240,0,0,255,0,31,248,0,0,255,0,15,253,0,0,255,0,3,255,0,0,255,0,1,255,128,0,255,0,0,191,208,0,255,0,0,63,240,0,255,0,0,15,252,0,255,0,0,11,254,0,255,0,0,3,255,0,255,0,0,0,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,0,0,255,0,0,0,0,1,254,0,0,0,0,2,252,0,0,0,0,3,244,0,0,0,0,3,240,0,0,0,0,7,192,0,0,0, + // 0x0137 ķ + 19,40,200,22,3,247,85,0,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,0,0,191,128,0,26,160,191,128,0,127,224,191,128,1,255,128,191,128,3,254,0,191,128,15,248,0,191,128,63,240,0,191,128,255,192,0,191,67,255,0,0,191,79,252,0,0,191,111,240,0,0,191,191,244,0,0,191,255,252,0,0,191,255,255,0,0,191,224,255,128,0,191,128,127,208,0,191,128,47,244,0,191,128,15,252,0,191,128,3,254,0,191,128,1,255,64,191,128,0,191,208,191,128,0,63,240,191,128,0,31,248,0,0,0,0,0,0,0,0,0,0,0,2,168,0,0,0,7,248,0,0,0,7,244,0,0,0,11,240,0,0,0,15,208,0,0,0,31,128,0,0,0,31,0,0,0, + // 0x0138 ĸ + 19,22,110,22,3,0,106,64,0,26,160,191,128,0,127,224,191,128,0,255,128,191,128,3,255,0,191,128,15,252,0,191,128,47,240,0,191,128,191,208,0,191,129,255,64,0,191,131,254,0,0,191,143,248,0,0,191,191,248,0,0,191,255,253,0,0,191,255,255,0,0,191,244,255,192,0,191,192,127,224,0,191,128,47,244,0,191,128,15,252,0,191,128,3,255,0,191,128,1,255,128,191,128,0,191,208,191,128,0,63,240,191,128,0,15,248, + // 0x0139 Ĺ + 18,38,190,21,3,0,0,106,144,0,0,0,255,192,0,0,2,255,0,0,0,7,252,0,0,0,15,240,0,0,0,63,192,0,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,128,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,192,0,0,0,63,250,170,170,128,63,255,255,255,208,63,255,255,255,208,63,255,255,255,208, + // 0x013a ĺ + 9,40,120,11,3,0,0,170,128,2,255,64,3,254,0,15,248,0,47,224,0,127,64,0,189,0,0,0,0,0,0,0,0,85,0,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0, + // 0x013b Ļ + 17,38,190,21,4,247,170,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,234,170,170,0,255,255,255,255,64,255,255,255,255,64,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,2,164,0,0,0,7,248,0,0,0,11,240,0,0,0,15,224,0,0,0,15,192,0,0,0,31,128,0,0,0,47,0,0,0, + // 0x013c ļ + 6,40,80,11,2,247,21,64,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,0,0,0,0,10,160,15,240,15,224,31,192,63,128,63,0,125,0, + // 0x013d Ľ + 17,29,145,21,4,0,170,0,0,106,64,255,0,0,191,64,255,0,0,255,0,255,0,0,254,0,255,0,0,252,0,255,0,1,244,0,255,0,2,240,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,234,170,170,0,255,255,255,255,64,255,255,255,255,64,255,255,255,255,64, + // 0x013e ľ + 12,31,93,11,3,0,85,1,84,191,130,253,191,131,252,191,131,244,191,135,240,191,139,208,191,143,192,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0, + // 0x013f Ŀ + 17,29,145,21,4,0,170,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,6,144,0,255,0,15,240,0,255,0,31,244,0,255,0,31,240,0,255,0,11,224,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,234,170,170,0,255,255,255,255,64,255,255,255,255,64,255,255,255,255,64, + // 0x0140 ŀ + 11,31,93,12,3,0,85,0,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,130,144,191,143,244,191,143,248,191,143,248,191,135,240,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0, + // 0x0141 Ł + 21,29,174,21,0,0,0,170,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,192,0,0,0,255,11,224,0,0,0,255,191,240,0,0,0,255,255,208,0,0,0,255,254,0,0,0,2,255,240,0,0,0,31,255,64,0,0,0,127,255,0,0,0,0,63,255,0,0,0,0,30,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,0,0,0,0,0,255,234,170,170,0,0,255,255,255,255,64,0,255,255,255,255,64,0,255,255,255,255,64, + // 0x0142 ł + 11,31,93,11,0,0,1,84,0,3,253,0,3,253,0,3,253,0,3,253,0,3,253,0,3,253,0,3,253,0,3,253,0,3,253,0,3,253,0,3,253,0,3,253,32,3,254,244,3,255,252,3,255,244,7,255,192,47,254,0,255,253,0,255,253,0,59,253,0,3,253,0,3,253,0,3,253,0,3,253,0,3,253,0,3,253,0,3,253,0,3,253,0,3,253,0,3,253,0, + // 0x0143 Ń + 23,38,228,31,4,0,0,0,0,42,160,0,0,0,0,127,224,0,0,0,0,255,128,0,0,0,3,254,0,0,0,0,7,248,0,0,0,0,15,224,0,0,0,0,47,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,128,0,0,1,168,255,224,0,0,3,252,255,244,0,0,3,252,255,252,0,0,3,252,255,254,0,0,3,252,255,255,0,0,3,252,254,255,192,0,3,252,253,127,208,0,3,252,254,63,240,0,3,252,254,15,248,0,3,252,254,11,253,0,3,252,254,3,255,0,3,252,254,1,255,128,3,252,254,0,191,192,3,252,254,0,63,240,3,252,254,0,31,244,3,252,254,0,15,252,2,252,254,0,3,254,2,252,254,0,2,255,66,252,254,0,0,255,194,252,254,0,0,127,226,252,254,0,0,47,242,252,254,0,0,15,254,252,254,0,0,7,255,252,254,0,0,3,255,252,254,0,0,0,255,252,254,0,0,0,191,252,254,0,0,0,63,252,254,0,0,0,31,252, + // 0x0144 ń + 19,31,155,25,3,0,0,0,2,170,0,0,0,7,254,0,0,0,15,248,0,0,0,47,224,0,0,0,127,128,0,0,0,254,0,0,0,2,244,0,0,0,0,0,0,0,0,0,0,0,0,105,0,191,228,0,191,11,255,255,64,191,63,255,255,208,191,255,170,255,240,191,248,0,47,248,191,240,0,15,252,191,208,0,7,252,191,192,0,7,252,191,192,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252, + // 0x0145 Ņ + 23,38,228,31,4,247,170,128,0,0,1,168,255,224,0,0,3,252,255,244,0,0,3,252,255,252,0,0,3,252,255,254,0,0,3,252,255,255,0,0,3,252,254,255,192,0,3,252,253,127,208,0,3,252,254,63,240,0,3,252,254,15,248,0,3,252,254,11,253,0,3,252,254,3,255,0,3,252,254,1,255,128,3,252,254,0,191,192,3,252,254,0,63,240,3,252,254,0,31,244,3,252,254,0,15,252,2,252,254,0,3,254,2,252,254,0,2,255,66,252,254,0,0,255,194,252,254,0,0,127,226,252,254,0,0,47,242,252,254,0,0,15,254,252,254,0,0,7,255,252,254,0,0,3,255,252,254,0,0,0,255,252,254,0,0,0,191,252,254,0,0,0,63,252,254,0,0,0,31,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,160,0,0,0,0,15,240,0,0,0,0,15,224,0,0,0,0,31,192,0,0,0,0,47,128,0,0,0,0,63,0,0,0,0,0,61,0,0,0, + // 0x0146 ņ + 19,31,155,25,3,247,105,0,191,228,0,191,11,255,255,64,191,63,255,255,208,191,255,170,255,240,191,248,0,47,248,191,240,0,15,252,191,208,0,7,252,191,192,0,7,252,191,192,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,0,0,0,0,0,0,0,0,0,0,0,0,106,0,0,0,0,255,0,0,0,0,254,0,0,0,1,252,0,0,0,2,248,0,0,0,3,240,0,0,0,3,208,0,0, + // 0x0147 Ň + 23,38,228,31,4,0,0,105,0,1,164,0,0,63,128,11,240,0,0,31,240,63,208,0,0,7,253,255,64,0,0,1,255,253,0,0,0,0,191,248,0,0,0,0,47,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,128,0,0,1,168,255,224,0,0,3,252,255,244,0,0,3,252,255,252,0,0,3,252,255,254,0,0,3,252,255,255,0,0,3,252,254,255,192,0,3,252,253,127,208,0,3,252,254,63,240,0,3,252,254,15,248,0,3,252,254,11,253,0,3,252,254,3,255,0,3,252,254,1,255,128,3,252,254,0,191,192,3,252,254,0,63,240,3,252,254,0,31,244,3,252,254,0,15,252,2,252,254,0,3,254,2,252,254,0,2,255,66,252,254,0,0,255,194,252,254,0,0,127,226,252,254,0,0,47,242,252,254,0,0,15,254,252,254,0,0,7,255,252,254,0,0,3,255,252,254,0,0,0,255,252,254,0,0,0,191,252,254,0,0,0,63,252,254,0,0,0,31,252, + // 0x0148 ň + 19,31,155,25,3,0,6,144,0,26,128,3,248,0,191,64,0,255,3,253,0,0,127,223,244,0,0,31,255,208,0,0,11,255,128,0,0,2,254,0,0,0,0,0,0,0,0,0,0,0,0,105,0,191,228,0,191,11,255,255,64,191,63,255,255,208,191,255,170,255,240,191,248,0,47,248,191,240,0,15,252,191,208,0,7,252,191,192,0,7,252,191,192,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252, + // 0x0149 ʼn + 26,29,203,28,0,0,10,164,0,0,0,0,0,15,244,0,0,0,0,0,31,240,0,0,0,0,0,47,240,0,0,0,0,0,47,208,0,0,0,0,0,63,192,0,0,0,0,0,63,128,0,0,0,0,0,127,66,160,6,255,128,0,191,7,240,127,255,248,0,253,7,245,255,255,255,0,0,7,255,254,175,255,64,0,7,255,192,1,255,192,0,7,255,0,0,191,192,0,7,254,0,0,63,192,0,7,253,0,0,63,208,0,7,252,0,0,63,208,0,7,252,0,0,63,208,0,7,252,0,0,63,208,0,7,252,0,0,63,208,0,7,252,0,0,63,208,0,7,252,0,0,63,208,0,7,252,0,0,63,208,0,7,252,0,0,63,208,0,7,252,0,0,63,208,0,7,252,0,0,63,208,0,7,252,0,0,63,208,0,7,252,0,0,63,208,0,7,252,0,0,63,208,0,7,252,0,0,63,208, + // 0x014a Ŋ + 23,37,222,31,4,248,170,128,0,0,1,168,255,224,0,0,3,252,255,244,0,0,3,252,255,252,0,0,3,252,255,254,0,0,3,252,255,255,64,0,3,252,254,255,192,0,3,252,254,127,240,0,3,252,254,47,244,0,3,252,254,15,252,0,3,252,254,7,255,0,3,252,254,2,255,64,3,252,254,0,255,192,3,252,254,0,127,240,3,252,254,0,47,244,3,252,254,0,15,252,2,252,254,0,3,255,2,252,254,0,2,255,130,252,254,0,0,255,194,252,254,0,0,63,242,252,254,0,0,31,250,252,254,0,0,15,254,252,254,0,0,3,255,252,254,0,0,1,255,252,254,0,0,0,191,252,254,0,0,0,63,252,254,0,0,0,31,252,254,0,0,0,11,252,254,0,0,0,3,252,0,0,0,0,2,252,0,0,0,0,3,252,0,0,0,0,7,252,0,0,0,0,31,248,0,0,0,255,255,240,0,0,0,255,255,208,0,0,0,255,255,64,0,0,0,111,228,0, + // 0x014b ŋ + 19,32,160,25,3,246,105,0,191,228,0,191,11,255,255,64,191,47,255,255,224,191,255,234,255,240,191,248,0,47,248,191,240,0,15,252,191,208,0,7,252,191,192,0,7,252,191,192,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,191,128,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,7,252,0,0,0,7,252,0,0,0,15,248,0,0,15,255,244,0,0,15,255,224,0,0,15,255,128,0,0,5,164,0, + // 0x014c Ō + 27,36,252,31,2,255,0,0,85,85,85,0,0,0,1,255,255,255,0,0,0,1,255,255,255,0,0,0,1,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x014d ō + 21,29,174,24,2,255,0,85,85,85,0,0,0,255,255,255,64,0,0,255,255,255,64,0,0,191,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x014e Ŏ + 27,38,10,31,2,255,0,3,224,0,31,64,0,0,2,240,0,63,0,0,0,1,254,170,254,0,0,0,0,191,255,252,0,0,0,0,47,255,240,0,0,0,0,2,170,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x014f ŏ + 21,31,186,24,2,255,1,240,0,15,128,0,0,248,0,31,128,0,0,255,170,255,0,0,0,127,255,253,0,0,0,31,255,244,0,0,0,1,170,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x0150 Ő + 27,39,17,31,2,255,0,0,26,160,42,128,0,0,0,63,224,191,192,0,0,0,191,128,255,0,0,0,0,255,3,252,0,0,0,2,252,7,240,0,0,0,7,240,15,192,0,0,0,11,128,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x0151 ő + 21,32,192,24,2,255,0,10,164,42,160,0,0,31,240,63,208,0,0,63,208,255,64,0,0,191,65,254,0,0,1,253,3,248,0,0,3,244,11,224,0,0,7,208,15,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x0152 Œ + 34,30,14,38,2,255,0,0,107,255,170,170,170,170,128,0,7,255,255,255,255,255,255,208,0,47,255,255,255,255,255,255,208,0,255,255,239,255,255,255,255,208,2,255,224,0,47,240,0,0,0,7,255,0,0,31,240,0,0,0,15,252,0,0,31,240,0,0,0,31,244,0,0,31,240,0,0,0,47,240,0,0,31,240,0,0,0,63,224,0,0,31,240,0,0,0,63,208,0,0,31,240,0,0,0,127,192,0,0,31,240,0,0,0,127,192,0,0,31,250,170,170,64,191,192,0,0,31,255,255,255,128,191,192,0,0,31,255,255,255,128,191,192,0,0,31,255,255,255,64,191,192,0,0,31,240,0,0,0,127,192,0,0,31,240,0,0,0,127,208,0,0,31,240,0,0,0,63,208,0,0,31,240,0,0,0,63,240,0,0,31,240,0,0,0,47,244,0,0,31,240,0,0,0,15,252,0,0,31,240,0,0,0,11,254,0,0,31,240,0,0,0,3,255,128,0,31,240,0,0,0,1,255,253,85,191,250,170,170,128,0,127,255,255,255,255,255,255,208,0,11,255,255,255,255,255,255,208,0,1,191,255,255,255,255,255,208,0,0,1,85,0,0,0,0,0, + // 0x0153 œ + 34,23,207,38,2,255,0,6,255,144,0,10,254,64,0,0,127,255,252,0,191,255,244,0,2,255,255,255,67,255,255,254,0,11,255,171,255,223,254,91,255,64,31,248,0,47,255,240,0,191,192,63,240,0,15,255,192,0,63,208,127,192,0,3,255,128,0,31,240,191,192,0,3,255,0,0,15,240,191,128,0,2,255,0,0,15,240,255,128,0,2,255,255,255,255,240,255,64,0,1,255,255,255,255,240,255,64,0,1,255,255,255,255,240,255,64,0,1,255,0,0,0,0,255,128,0,2,255,0,0,0,0,191,192,0,2,255,0,0,0,0,127,192,0,3,255,128,0,0,0,63,224,0,7,255,192,0,0,0,47,244,0,15,255,240,0,0,64,15,254,64,191,255,254,0,27,192,3,255,255,255,199,255,255,255,192,0,255,255,254,0,255,255,255,192,0,31,255,244,0,31,255,254,0,0,0,85,0,0,0,85,64,0, + // 0x0154 Ŕ + 21,38,228,25,4,0,0,0,6,169,0,0,0,0,15,252,0,0,0,0,63,240,0,0,0,0,191,192,0,0,0,0,255,0,0,0,0,3,248,0,0,0,0,7,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,170,148,0,0,0,255,255,255,228,0,0,255,255,255,254,0,0,255,255,255,255,192,0,255,0,22,255,224,0,255,0,0,127,240,0,255,0,0,31,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,47,240,0,255,0,0,127,224,0,255,64,23,255,192,0,255,255,255,255,0,0,255,255,255,248,0,0,255,255,255,192,0,0,255,149,127,224,0,0,255,0,31,244,0,0,255,0,11,252,0,0,255,0,3,254,0,0,255,0,2,255,0,0,255,0,0,255,192,0,255,0,0,127,208,0,255,0,0,47,240,0,255,0,0,15,248,0,255,0,0,11,253,0,255,0,0,3,255,0,255,0,0,1,255,128, + // 0x0155 ŕ + 14,31,124,17,3,0,0,0,106,144,0,0,255,192,0,3,255,0,0,11,252,0,0,15,240,0,0,63,128,0,0,126,0,0,0,0,0,0,0,0,0,0,105,0,127,192,191,3,255,192,191,15,255,192,191,63,255,192,191,255,64,0,191,248,0,0,191,240,0,0,191,192,0,0,191,192,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0,191,128,0,0, + // 0x0156 Ŗ + 21,38,228,25,4,247,170,170,148,0,0,0,255,255,255,228,0,0,255,255,255,254,0,0,255,255,255,255,192,0,255,0,22,255,224,0,255,0,0,127,240,0,255,0,0,31,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,47,240,0,255,0,0,127,224,0,255,64,23,255,192,0,255,255,255,255,0,0,255,255,255,248,0,0,255,255,255,192,0,0,255,149,127,224,0,0,255,0,31,244,0,0,255,0,11,252,0,0,255,0,3,254,0,0,255,0,2,255,0,0,255,0,0,255,192,0,255,0,0,127,208,0,255,0,0,47,240,0,255,0,0,15,248,0,255,0,0,11,253,0,255,0,0,3,255,0,255,0,0,1,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,0,0,0,0,0,255,0,0,0,0,0,254,0,0,0,0,1,252,0,0,0,0,2,248,0,0,0,0,3,240,0,0,0,0,3,208,0,0,0, + // 0x0157 ŗ + 14,31,124,17,2,247,26,64,31,240,47,192,255,240,47,195,255,240,47,207,255,240,47,255,208,0,47,254,0,0,47,252,0,0,47,240,0,0,47,240,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,0,0,0,0,0,0,0,0,10,160,0,0,15,240,0,0,31,224,0,0,47,192,0,0,63,64,0,0,63,0,0,0,124,0,0,0, + // 0x0158 Ř + 21,38,228,25,4,0,26,64,0,42,0,0,15,240,1,253,0,0,3,252,11,244,0,0,0,255,127,224,0,0,0,127,255,128,0,0,0,31,255,0,0,0,0,11,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,170,148,0,0,0,255,255,255,228,0,0,255,255,255,254,0,0,255,255,255,255,192,0,255,0,22,255,224,0,255,0,0,127,240,0,255,0,0,31,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,15,244,0,255,0,0,47,240,0,255,0,0,127,224,0,255,64,23,255,192,0,255,255,255,255,0,0,255,255,255,248,0,0,255,255,255,192,0,0,255,149,127,224,0,0,255,0,31,244,0,0,255,0,11,252,0,0,255,0,3,254,0,0,255,0,2,255,0,0,255,0,0,255,192,0,255,0,0,127,208,0,255,0,0,47,240,0,255,0,0,15,248,0,255,0,0,11,253,0,255,0,0,3,255,0,255,0,0,1,255,128, + // 0x0159 ř + 15,31,124,17,2,0,105,0,0,168,63,192,7,244,15,240,47,208,3,253,255,128,1,255,254,0,0,127,252,0,0,47,240,0,0,0,0,0,0,0,0,0,26,64,31,240,47,192,255,240,47,195,255,240,47,207,255,240,47,255,208,0,47,254,0,0,47,252,0,0,47,240,0,0,47,240,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0, + // 0x015a Ś + 18,39,195,22,2,255,0,0,2,170,0,0,0,11,253,0,0,0,15,244,0,0,0,63,208,0,0,0,191,64,0,0,1,253,0,0,0,2,244,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,164,0,1,255,255,255,128,11,255,255,255,208,31,255,255,255,192,63,244,0,27,128,127,208,0,0,0,191,192,0,0,0,191,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,240,0,0,0,47,253,0,0,0,15,255,224,0,0,3,255,254,0,0,0,191,255,224,0,0,11,255,253,0,0,0,127,255,64,0,0,7,255,192,0,0,0,191,224,0,0,0,47,240,0,0,0,31,240,0,0,0,15,240,0,0,0,15,240,0,0,0,47,240,224,0,0,127,224,255,165,91,255,192,255,255,255,255,0,255,255,255,252,0,47,255,255,144,0,0,21,80,0,0, + // 0x015b ś + 16,32,128,19,2,255,0,0,42,160,0,0,127,224,0,0,255,192,0,2,255,0,0,7,248,0,0,15,224,0,0,31,64,0,0,0,0,0,0,0,0,0,0,111,254,64,11,255,255,248,63,255,255,252,191,249,91,244,255,128,0,96,255,0,0,0,255,64,0,0,255,208,0,0,127,253,0,0,47,255,208,0,7,255,254,0,0,191,255,208,0,7,255,244,0,0,127,252,0,0,7,253,0,0,2,254,0,0,2,254,64,0,3,253,249,0,11,252,255,255,255,248,255,255,255,224,111,255,254,0,0,85,64,0, + // 0x015c Ŝ + 18,39,195,22,2,255,0,2,170,0,0,0,11,255,64,0,0,47,255,192,0,0,127,223,240,0,0,255,7,252,0,3,248,0,255,0,11,208,0,47,64,0,0,0,0,0,0,0,0,0,0,0,27,255,164,0,1,255,255,255,128,11,255,255,255,208,31,255,255,255,192,63,244,0,27,128,127,208,0,0,0,191,192,0,0,0,191,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,240,0,0,0,47,253,0,0,0,15,255,224,0,0,3,255,254,0,0,0,191,255,224,0,0,11,255,253,0,0,0,127,255,64,0,0,7,255,192,0,0,0,191,224,0,0,0,47,240,0,0,0,31,240,0,0,0,15,240,0,0,0,15,240,0,0,0,47,240,224,0,0,127,224,255,165,91,255,192,255,255,255,255,0,255,255,255,252,0,47,255,255,144,0,0,21,80,0,0, + // 0x015d ŝ + 16,32,128,19,2,255,0,42,160,0,0,127,248,0,0,255,254,0,3,253,255,64,15,244,63,208,63,192,11,240,126,0,1,248,0,0,0,0,0,0,0,0,0,111,254,64,11,255,255,248,63,255,255,252,191,249,91,244,255,128,0,96,255,0,0,0,255,64,0,0,255,208,0,0,127,253,0,0,47,255,208,0,7,255,254,0,0,191,255,208,0,7,255,244,0,0,127,252,0,0,7,253,0,0,2,254,0,0,2,254,64,0,3,253,249,0,11,252,255,255,255,248,255,255,255,224,111,255,254,0,0,85,64,0, + // 0x015e Ş + 18,39,195,22,2,246,0,27,255,164,0,1,255,255,255,128,11,255,255,255,208,31,255,255,255,192,63,244,0,27,128,127,208,0,0,0,191,192,0,0,0,191,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,240,0,0,0,47,253,0,0,0,15,255,224,0,0,3,255,254,0,0,0,191,255,224,0,0,11,255,253,0,0,0,127,255,64,0,0,7,255,192,0,0,0,191,224,0,0,0,47,240,0,0,0,31,240,0,0,0,15,240,0,0,0,15,240,0,0,0,47,240,224,0,0,127,224,255,165,91,255,192,255,255,255,255,0,255,255,255,252,0,47,255,255,144,0,0,23,240,0,0,0,7,208,0,0,0,15,248,0,0,0,7,255,0,0,0,0,127,64,0,0,0,63,128,0,0,0,127,64,0,0,191,255,0,0,0,191,252,0,0,0,106,64,0,0, + // 0x015f ş + 16,32,128,19,2,246,0,111,254,64,11,255,255,248,63,255,255,252,191,249,91,244,255,128,0,96,255,0,0,0,255,64,0,0,255,208,0,0,127,253,0,0,47,255,208,0,7,255,254,0,0,191,255,208,0,7,255,244,0,0,127,252,0,0,7,253,0,0,2,254,0,0,2,254,64,0,3,253,249,0,11,252,255,255,255,248,255,255,255,224,111,255,254,0,0,95,208,0,0,15,128,0,0,47,224,0,0,27,252,0,0,0,254,0,0,0,191,0,0,0,254,0,1,255,253,0,1,255,244,0,0,169,64,0, + // 0x0160 Š + 18,39,195,22,2,255,10,144,0,26,64,7,248,0,191,0,1,254,3,252,0,0,127,223,240,0,0,47,255,208,0,0,15,255,64,0,0,3,254,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,164,0,1,255,255,255,128,11,255,255,255,208,31,255,255,255,192,63,244,0,27,128,127,208,0,0,0,191,192,0,0,0,191,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,240,0,0,0,47,253,0,0,0,15,255,224,0,0,3,255,254,0,0,0,191,255,224,0,0,11,255,253,0,0,0,127,255,64,0,0,7,255,192,0,0,0,191,224,0,0,0,47,240,0,0,0,31,240,0,0,0,15,240,0,0,0,15,240,0,0,0,47,240,224,0,0,127,224,255,165,91,255,192,255,255,255,255,0,255,255,255,252,0,47,255,255,144,0,0,21,80,0,0, + // 0x0161 š + 16,32,128,19,2,255,105,0,0,168,63,192,11,244,15,240,47,208,3,253,255,128,1,255,254,0,0,127,252,0,0,47,240,0,0,0,0,0,0,0,0,0,0,111,254,64,11,255,255,248,63,255,255,252,191,249,91,244,255,128,0,96,255,0,0,0,255,64,0,0,255,208,0,0,127,253,0,0,47,255,208,0,7,255,254,0,0,191,255,208,0,7,255,244,0,0,127,252,0,0,7,253,0,0,2,254,0,0,2,254,64,0,3,253,249,0,11,252,255,255,255,248,255,255,255,224,111,255,254,0,0,85,64,0, + // 0x0162 Ţ + 22,39,234,23,0,246,106,170,170,170,170,160,127,255,255,255,255,240,127,255,255,255,255,240,127,255,255,255,255,240,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,15,128,0,0,0,0,47,64,0,0,0,0,63,224,0,0,0,0,31,252,0,0,0,0,1,253,0,0,0,0,0,253,0,0,0,0,1,253,0,0,0,2,255,252,0,0,0,2,255,240,0,0,0,1,169,0,0,0, + // 0x0163 ţ + 15,37,148,15,0,246,0,21,0,0,0,63,0,0,0,127,0,0,0,191,0,0,0,255,0,0,2,255,170,160,47,255,255,240,127,255,255,240,43,255,170,160,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,0,255,0,0,0,255,64,0,0,255,208,16,0,191,255,244,0,63,255,244,0,11,255,240,0,1,249,0,0,3,240,0,0,7,253,0,0,6,255,128,0,0,47,192,0,0,31,192,0,0,47,192,0,63,255,128,0,63,254,0,0,26,144,0, + // 0x0164 Ť + 22,38,228,23,0,0,0,168,0,2,164,0,0,127,64,15,240,0,0,31,224,63,192,0,0,11,249,255,0,0,0,2,255,252,0,0,0,0,255,244,0,0,0,0,63,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,170,170,170,170,160,127,255,255,255,255,240,127,255,255,255,255,240,127,255,255,255,255,240,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0, + // 0x0165 ť + 20,32,160,15,0,255,0,0,0,0,85,0,0,0,0,255,0,0,0,1,253,0,0,0,2,252,0,21,0,3,244,0,63,0,3,240,0,127,0,7,208,0,191,0,0,0,0,255,0,0,0,2,255,170,160,0,47,255,255,240,0,127,255,255,240,0,43,255,170,160,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,0,255,0,0,0,0,255,64,0,0,0,255,208,16,0,0,191,255,244,0,0,63,255,244,0,0,11,255,240,0,0,0,21,0,0, + // 0x0166 Ŧ + 22,29,174,23,0,0,106,170,170,170,170,160,127,255,255,255,255,240,127,255,255,255,255,240,127,255,255,255,255,240,0,0,63,224,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,2,255,255,255,252,0,2,255,255,255,252,0,2,255,255,255,252,0,0,85,127,229,84,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0,0,0,63,208,0,0, + // 0x0167 ŧ + 15,28,112,15,0,255,0,21,0,0,0,63,0,0,0,127,0,0,0,191,0,0,0,255,0,0,2,255,170,160,47,255,255,240,127,255,255,240,43,255,170,160,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,47,255,255,224,63,255,255,224,63,255,255,224,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,0,255,0,0,0,255,64,0,0,255,208,16,0,191,255,244,0,63,255,244,0,11,255,240,0,0,21,0, + // 0x0168 Ũ + 23,38,228,30,3,255,0,1,164,0,40,0,0,15,255,64,124,0,0,63,255,246,252,0,0,63,175,255,244,0,0,188,2,255,224,0,0,180,0,42,64,0,0,0,0,0,0,0,0,0,0,0,0,0,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,248,0,0,11,255,255,144,0,0,0,21,80,0,0, + // 0x0169 ũ + 19,31,155,25,3,255,0,25,0,2,128,0,255,224,11,192,3,255,254,111,128,7,250,255,255,0,15,192,47,253,0,11,64,2,160,0,0,0,0,0,0,0,0,0,0,0,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,2,252,0,5,80,0,0, + // 0x016a Ū + 23,36,216,30,3,255,0,5,85,85,80,0,0,31,255,255,240,0,0,31,255,255,240,0,0,31,255,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,248,0,0,11,255,255,144,0,0,0,21,80,0,0, + // 0x016b ū + 19,29,145,25,3,255,0,85,85,85,0,2,255,255,254,0,2,255,255,254,0,1,255,255,254,0,0,0,0,0,0,0,0,0,0,0,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,2,252,0,5,80,0,0, + // 0x016c Ŭ + 23,38,228,30,3,255,0,62,0,0,244,0,0,47,0,2,240,0,0,31,234,175,224,0,0,11,255,255,192,0,0,2,255,255,0,0,0,0,42,164,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,248,0,0,11,255,255,144,0,0,0,21,80,0,0, + // 0x016d ŭ + 19,31,155,25,3,255,3,224,0,31,0,3,240,0,63,0,1,254,170,254,0,0,255,255,252,0,0,63,255,224,0,0,6,170,0,0,0,0,0,0,0,0,0,0,0,0,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,2,252,0,5,80,0,0, + // 0x016e Ů + 23,41,246,30,3,255,0,0,31,224,0,0,0,0,191,253,0,0,0,1,249,127,0,0,0,2,240,31,0,0,0,2,224,15,64,0,0,2,240,31,0,0,0,1,253,191,0,0,0,0,191,252,0,0,0,0,26,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,248,0,0,11,255,255,144,0,0,0,21,80,0,0, + // 0x016f ů + 19,34,170,25,3,255,0,2,254,0,0,0,15,255,192,0,0,47,155,224,0,0,62,2,240,0,0,61,1,240,0,0,62,2,240,0,0,47,155,224,0,0,15,255,192,0,0,1,169,0,0,0,0,0,0,0,0,0,0,0,0,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,2,252,0,5,80,0,0, + // 0x0170 Ű + 23,39,234,30,3,255,0,1,170,2,168,0,0,3,254,11,252,0,0,7,252,15,240,0,0,15,240,63,192,0,0,47,192,127,0,0,0,127,0,252,0,0,0,184,1,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,248,0,0,11,255,255,144,0,0,0,21,80,0,0, + // 0x0171 ű + 19,32,160,25,3,255,0,26,160,42,128,0,63,208,255,128,0,191,129,255,0,0,254,3,252,0,3,248,11,240,0,11,224,31,192,0,15,128,46,0,0,0,0,0,0,0,0,0,0,0,0,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,2,252,0,5,80,0,0, + // 0x0172 Ų + 23,39,234,30,3,246,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,252,0,0,11,255,255,240,0,0,0,21,91,208,0,0,0,0,31,128,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,0,127,0,0,0,0,0,127,0,0,0,0,0,63,238,0,0,0,0,47,254,0,0,0,0,7,253,0,0,0,0,0,0,0, + // 0x0173 ų + 19,32,160,25,3,246,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,3,252,0,5,80,11,224,0,0,0,31,128,0,0,0,63,0,0,0,0,189,0,0,0,0,253,0,0,0,0,254,0,0,0,0,255,236,0,0,0,127,252,0,0,0,31,252,0,0,0,0,0, + // 0x0174 Ŵ + 37,38,124,38,0,0,0,0,0,0,106,128,0,0,0,0,0,0,0,1,255,240,0,0,0,0,0,0,0,3,255,248,0,0,0,0,0,0,0,15,247,253,0,0,0,0,0,0,0,47,208,255,64,0,0,0,0,0,0,191,64,47,208,0,0,0,0,0,1,248,0,7,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,0,106,128,0,0,42,128,127,192,0,0,191,192,0,0,127,192,63,208,0,0,255,208,0,0,191,128,63,224,0,1,255,240,0,0,255,64,47,240,0,2,255,240,0,0,255,0,31,240,0,3,255,244,0,1,255,0,15,244,0,3,251,248,0,2,254,0,15,248,0,7,247,252,0,3,253,0,11,252,0,11,242,252,0,3,252,0,7,252,0,15,241,254,0,7,252,0,3,253,0,31,224,255,0,11,248,0,3,254,0,47,208,255,0,15,244,0,2,255,0,63,192,191,64,15,240,0,1,255,0,63,192,127,128,31,240,0,0,255,64,127,128,63,192,47,224,0,0,191,128,191,0,47,192,63,208,0,0,127,192,255,0,31,224,63,192,0,0,63,193,254,0,15,240,127,192,0,0,63,194,253,0,15,240,191,128,0,0,47,211,252,0,11,244,255,64,0,0,31,227,252,0,7,248,255,0,0,0,15,243,248,0,3,252,254,0,0,0,15,247,240,0,2,253,253,0,0,0,11,255,240,0,1,254,252,0,0,0,7,255,224,0,0,255,252,0,0,0,3,255,208,0,0,255,248,0,0,0,3,255,192,0,0,191,244,0,0,0,2,255,192,0,0,127,240,0,0,0,1,255,128,0,0,63,240,0,0, + // 0x0175 ŵ + 32,31,248,32,0,0,0,0,0,10,164,0,0,0,0,0,0,63,252,0,0,0,0,0,0,191,255,0,0,0,0,0,2,254,191,192,0,0,0,0,7,248,31,224,0,0,0,0,31,224,7,248,0,0,0,0,62,0,0,189,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,10,164,0,1,169,127,192,0,31,252,0,2,254,63,208,0,63,252,0,3,253,47,224,0,63,253,0,7,252,31,240,0,127,254,0,11,248,15,240,0,191,191,0,15,244,15,244,0,254,127,0,15,240,11,248,1,253,63,128,31,240,7,252,2,252,63,192,47,224,3,252,3,252,47,192,63,208,3,253,3,248,31,208,63,192,1,254,7,240,15,224,127,128,0,255,11,240,15,240,191,64,0,255,15,224,7,240,255,0,0,191,79,208,3,244,255,0,0,127,95,192,3,249,254,0,0,63,175,128,2,253,253,0,0,63,255,64,1,254,252,0,0,47,255,0,0,255,252,0,0,31,255,0,0,255,244,0,0,15,254,0,0,127,240,0,0,11,253,0,0,63,240,0, + // 0x0176 Ŷ + 23,38,228,23,0,0,0,0,42,160,0,0,0,0,127,248,0,0,0,1,255,253,0,0,0,3,253,255,64,0,0,15,240,63,208,0,0,63,192,11,240,0,0,126,0,1,248,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,0,6,168,127,192,0,0,15,248,63,240,0,0,31,240,31,244,0,0,63,224,15,252,0,0,127,192,7,253,0,0,255,128,2,255,0,1,255,0,0,255,64,3,253,0,0,191,192,11,252,0,0,63,208,15,244,0,0,47,240,47,240,0,0,15,244,63,208,0,0,7,252,191,128,0,0,3,254,255,0,0,0,1,255,254,0,0,0,0,255,252,0,0,0,0,127,248,0,0,0,0,63,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0, + // 0x0177 ŷ + 21,41,246,21,0,246,0,0,170,128,0,0,0,2,255,224,0,0,0,7,255,244,0,0,0,15,247,253,0,0,0,63,192,255,0,0,0,255,0,63,192,0,2,248,0,11,224,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,0,106,128,191,192,0,0,255,128,63,208,0,0,255,64,47,224,0,2,255,0,31,240,0,3,254,0,15,244,0,3,252,0,11,252,0,11,252,0,3,252,0,15,244,0,2,254,0,31,240,0,1,255,0,47,224,0,0,255,64,63,208,0,0,191,128,127,192,0,0,63,192,191,128,0,0,47,208,255,0,0,0,31,225,255,0,0,0,15,242,253,0,0,0,11,243,252,0,0,0,3,251,248,0,0,0,2,255,244,0,0,0,1,255,240,0,0,0,0,255,224,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,255,64,0,0,0,1,255,0,0,0,0,3,254,0,0,0,0,7,252,0,0,0,0,47,248,0,0,0,127,255,240,0,0,0,127,255,192,0,0,0,127,254,0,0,0,0,26,144,0,0,0,0, + // 0x0178 Ÿ + 23,37,222,23,0,0,0,1,64,1,0,0,0,15,224,31,208,0,0,15,240,47,224,0,0,15,240,31,208,0,0,7,128,11,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,0,6,168,127,192,0,0,15,248,63,240,0,0,31,240,31,244,0,0,63,224,15,252,0,0,127,192,7,253,0,0,255,128,2,255,0,1,255,0,0,255,64,3,253,0,0,191,192,11,252,0,0,63,208,15,244,0,0,47,240,47,240,0,0,15,244,63,208,0,0,7,252,191,128,0,0,3,254,255,0,0,0,1,255,254,0,0,0,0,255,252,0,0,0,0,127,248,0,0,0,0,63,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0, + // 0x0179 Ź + 21,38,228,23,1,0,0,0,0,170,128,0,0,0,1,255,128,0,0,0,3,254,0,0,0,0,11,248,0,0,0,0,31,224,0,0,0,0,63,128,0,0,0,0,125,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,170,170,170,170,0,63,255,255,255,255,0,63,255,255,255,255,0,63,255,255,255,255,0,0,0,0,7,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,224,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,208,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,253,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,208,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,253,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,250,170,170,170,64,191,255,255,255,255,128,191,255,255,255,255,128,191,255,255,255,255,128, + // 0x017a ź + 17,31,155,19,1,0,0,0,10,168,0,0,0,31,248,0,0,0,63,224,0,0,0,255,128,0,0,2,254,0,0,0,7,248,0,0,0,11,208,0,0,0,0,0,0,0,0,0,0,0,0,42,170,170,170,0,63,255,255,255,0,63,255,255,255,0,42,170,171,255,0,0,0,3,253,0,0,0,11,252,0,0,0,31,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,192,0,0,0,255,64,0,0,3,254,0,0,0,11,252,0,0,0,31,240,0,0,0,63,229,85,85,0,191,255,255,255,128,191,255,255,255,128,191,255,255,255,128, + // 0x017b Ż + 21,37,222,23,1,0,0,0,26,0,0,0,0,0,127,192,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,63,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,170,170,170,170,0,63,255,255,255,255,0,63,255,255,255,255,0,63,255,255,255,255,0,0,0,0,7,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,224,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,208,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,253,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,208,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,253,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,250,170,170,170,64,191,255,255,255,255,128,191,255,255,255,255,128,191,255,255,255,255,128, + // 0x017c ż + 17,30,150,19,1,0,0,2,160,0,0,0,11,248,0,0,0,15,252,0,0,0,11,252,0,0,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,170,170,170,0,63,255,255,255,0,63,255,255,255,0,42,170,171,255,0,0,0,3,253,0,0,0,11,252,0,0,0,31,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,192,0,0,0,255,64,0,0,3,254,0,0,0,11,252,0,0,0,31,240,0,0,0,63,229,85,85,0,191,255,255,255,128,191,255,255,255,128,191,255,255,255,128, + // 0x017d Ž + 21,38,228,23,1,0,1,164,0,6,160,0,0,254,0,47,208,0,0,63,192,191,64,0,0,15,247,253,0,0,0,7,255,248,0,0,0,2,255,240,0,0,0,0,191,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,170,170,170,170,0,63,255,255,255,255,0,63,255,255,255,255,0,63,255,255,255,255,0,0,0,0,7,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,224,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,254,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,208,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,253,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,208,0,0,0,0,255,192,0,0,0,2,255,0,0,0,0,7,253,0,0,0,0,15,252,0,0,0,0,47,240,0,0,0,0,127,250,170,170,170,64,191,255,255,255,255,128,191,255,255,255,255,128,191,255,255,255,255,128, + // 0x017e ž + 17,31,155,19,1,0,26,64,0,105,0,15,224,2,252,0,7,252,15,244,0,1,255,127,208,0,0,127,255,64,0,0,47,254,0,0,0,11,248,0,0,0,0,0,0,0,0,0,0,0,0,42,170,170,170,0,63,255,255,255,0,63,255,255,255,0,42,170,171,255,0,0,0,3,253,0,0,0,11,252,0,0,0,31,240,0,0,0,63,208,0,0,0,255,128,0,0,2,255,0,0,0,7,252,0,0,0,15,244,0,0,0,47,240,0,0,0,127,192,0,0,0,255,64,0,0,3,254,0,0,0,11,252,0,0,0,31,240,0,0,0,63,229,85,85,0,191,255,255,255,128,191,255,255,255,128,191,255,255,255,128, + // 0x017f ſ + 12,31,93,14,3,0,0,26,148,2,255,255,15,255,254,63,255,252,63,224,4,127,192,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0,191,128,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Simplified_Chinese_29.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Simplified_Chinese_29.cpp new file mode 100644 index 000000000000..9d035f24540c --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Simplified_Chinese_29.cpp @@ -0,0 +1,778 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Simplified Chinese 40pt, capital 'A' height: 29px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 +extern const uint8_t NotoSans_Medium_Simplified_Chinese_29[41075] = { + 162,29,28,32,26,255,38,246, // unifont_t + // 0x201c “ + 28,32,15,11,44,15,0,18,0,168,0,164,2,248,2,248,3,248,3,244,7,244,11,240,15,240,15,240,15,240,31,224,31,224,47,224,63,208,63,208,63,208,127,192,127,192,191,192,0,0,0,0, + // 0x201d ” + 29,32,15,11,44,15,0,18,6,164,6,164,11,252,15,248,15,248,15,244,15,240,15,240,31,240,31,240,31,208,47,208,47,192,63,192,63,128,63,128,63,64,127,0,127,0,191,0,0,0,0,0, + // 0x22bf ⊿ + 191,34,31,32,0,40,4,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,184,0,0,0,0,0,0,2,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,47,248,0,0,0,0,0,0,191,248,0,0,0,0,0,2,255,248,0,0,0,0,0,11,255,248,0,0,0,0,0,47,242,248,0,0,0,0,0,191,194,248,0,0,0,0,2,255,2,248,0,0,0,0,11,252,2,248,0,0,0,0,47,240,2,248,0,0,0,0,191,192,2,248,0,0,0,1,255,0,2,248,0,0,0,7,252,0,2,248,0,0,0,31,240,0,2,248,0,0,0,127,192,0,2,248,0,0,1,255,64,0,2,248,0,0,7,253,0,0,2,248,0,0,31,244,0,0,2,248,0,0,127,208,0,0,2,248,0,1,255,64,0,0,2,248,0,7,253,0,0,0,2,248,0,31,244,0,0,0,2,248,0,127,208,0,0,0,2,248,1,255,64,0,0,0,2,248,3,254,85,85,85,85,87,248,15,255,255,255,255,255,255,248,63,255,255,255,255,255,255,248,255,255,255,255,255,255,255,248, + // 0x4e00 一 + 0,78,37,4,40,40,2,13,255,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,255,64, + // 0x4e09 三 + 9,78,34,31,23,40,3,255,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,128,0,0,127,255,255,255,255,255,192,0,0,127,255,255,255,255,255,192,0,0,127,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,170,170,170,170,170,160,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x4e0a 上 + 10,78,36,35,59,40,2,254,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,255,255,255,255,192,0,0,0,7,255,255,255,255,192,0,0,0,7,255,255,255,255,192,0,0,0,7,254,170,170,170,128,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,254, + // 0x4e0b 下 + 11,78,36,35,59,40,2,252,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,254,128,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,3,255,255,64,0,0,0,0,0,3,255,255,240,0,0,0,0,0,3,253,255,254,0,0,0,0,0,3,252,47,255,208,0,0,0,0,3,252,3,255,252,0,0,0,0,3,252,0,127,255,64,0,0,0,3,252,0,11,255,208,0,0,0,3,252,0,1,255,192,0,0,0,3,252,0,0,63,0,0,0,0,3,252,0,0,9,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,2,168,0,0,0,0, + // 0x4e0d 不 + 13,78,36,35,59,40,2,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,0,0,47,240,0,0,0,0,0,0,0,127,224,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,2,255,64,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,31,255,0,0,0,0,0,0,0,63,255,10,0,0,0,0,0,0,255,255,47,192,0,0,0,0,3,255,255,191,244,0,0,0,0,15,254,255,47,254,0,0,0,0,63,248,255,7,255,192,0,0,1,255,240,255,0,255,244,0,0,11,255,192,255,0,47,253,0,0,47,254,0,255,0,11,255,128,1,255,248,0,255,0,1,255,240,15,255,208,0,255,0,0,127,252,191,255,0,0,255,0,0,15,255,191,248,0,0,255,0,0,3,255,63,208,0,0,255,0,0,0,248,14,0,0,0,255,0,0,0,32,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0, + // 0x4e13 专 + 19,78,35,38,86,40,2,252,0,0,0,11,160,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,31,224,0,0,0,0,0,170,170,191,234,170,170,170,0,1,255,255,255,255,255,255,255,64,1,255,255,255,255,255,255,255,64,1,255,255,255,255,255,255,255,64,0,0,0,191,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,2,253,0,0,0,0,0,106,170,171,254,170,170,170,170,168,191,255,255,255,255,255,255,255,252,191,255,255,255,255,255,255,255,252,191,255,255,255,255,255,255,255,252,0,0,15,240,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,255,255,255,255,252,0,0,0,191,255,255,255,255,255,64,0,0,255,255,255,255,255,254,0,0,0,85,85,85,85,127,252,0,0,0,0,0,0,0,127,240,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,7,255,0,0,0,0,4,0,0,31,252,0,0,0,0,31,208,0,127,240,0,0,0,0,63,255,129,255,192,0,0,0,0,127,255,255,255,0,0,0,0,0,1,255,255,252,0,0,0,0,0,0,11,255,255,64,0,0,0,0,0,0,111,255,244,0,0,0,0,0,0,2,255,255,64,0,0,0,0,0,0,31,255,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,24,0,0, + // 0x4e1d 丝 + 29,78,36,36,68,40,2,254,0,0,20,0,0,0,8,0,0,0,0,63,64,0,0,31,128,0,0,0,191,64,0,0,63,192,0,0,0,255,0,0,0,127,128,0,0,1,254,0,0,0,191,0,0,0,3,252,0,0,0,254,0,0,0,7,248,0,0,2,252,0,0,0,15,240,1,0,3,248,0,0,0,31,224,11,208,11,240,1,224,0,63,192,15,240,31,224,3,252,0,127,64,63,224,63,192,11,248,0,255,0,127,192,127,64,31,240,2,252,0,255,0,254,0,63,208,7,244,2,254,3,252,0,191,128,47,255,255,252,15,255,255,255,0,31,255,255,244,15,255,255,252,0,15,255,255,224,11,255,255,244,0,10,149,127,192,7,149,47,224,0,0,0,255,0,0,0,63,192,0,0,2,253,0,0,0,255,0,0,0,11,248,0,0,3,253,0,0,0,31,224,0,0,11,244,0,0,0,127,192,0,0,47,208,0,0,0,255,0,0,0,191,128,0,0,7,255,255,255,195,255,255,255,248,15,255,255,255,207,255,255,255,248,11,255,255,255,199,255,255,255,248,7,255,169,80,3,255,170,84,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,85,85,85,85,85,85, + // 0x4e2a 个 + 42,78,38,37,114,40,1,252,0,0,0,0,191,192,0,0,0,0,0,0,0,1,255,240,0,0,0,0,0,0,0,3,255,248,0,0,0,0,0,0,0,11,255,253,0,0,0,0,0,0,0,47,246,255,0,0,0,0,0,0,0,191,224,255,192,0,0,0,0,0,1,255,192,63,240,0,0,0,0,0,7,255,0,15,253,0,0,0,0,0,31,252,0,7,255,64,0,0,0,0,191,240,0,0,255,208,0,0,0,2,255,192,0,0,63,248,0,0,0,15,255,0,0,0,15,255,0,0,0,63,252,0,0,0,3,255,208,0,2,255,224,0,63,128,0,191,253,0,31,255,64,0,63,192,0,31,255,192,191,253,0,0,63,192,0,3,255,240,191,224,0,0,63,192,0,0,191,208,47,64,0,0,63,192,0,0,15,128,8,0,0,0,63,192,0,0,1,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,42,128,0,0,0,0, + // 0x4e2d 中 + 45,78,32,38,48,40,4,252,0,0,0,15,224,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,170,170,170,175,250,170,170,170,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,175,250,170,170,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,191,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,224,0,0,0, + // 0x4e3a 为 + 58,78,34,38,86,40,2,252,0,0,0,10,160,0,0,0,0,0,5,0,15,240,0,0,0,0,0,127,64,15,240,0,0,0,0,0,127,192,15,240,0,0,0,0,0,47,240,15,240,0,0,0,0,0,15,244,15,240,0,0,0,0,0,7,252,15,240,0,0,0,0,0,2,253,15,224,0,0,0,0,0,0,208,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,47,255,255,255,255,255,255,255,240,47,255,255,255,255,255,255,255,240,47,255,255,255,255,255,255,255,240,42,170,170,191,250,170,170,175,240,0,0,0,47,192,0,0,15,240,0,0,0,63,192,0,0,15,240,0,0,0,63,192,0,0,15,240,0,0,0,127,128,0,0,15,240,0,0,0,191,64,128,0,15,240,0,0,0,255,11,224,0,15,224,0,0,1,255,15,244,0,15,224,0,0,2,254,3,252,0,31,224,0,0,3,252,2,255,0,31,224,0,0,11,252,0,255,128,31,208,0,0,15,244,0,63,192,31,208,0,0,47,240,0,47,224,47,208,0,0,127,208,0,15,208,47,208,0,0,255,192,0,5,0,47,192,0,3,255,0,0,0,0,63,192,0,11,253,0,0,0,0,63,192,0,47,248,0,0,0,0,63,192,0,191,240,0,0,0,0,127,192,2,255,192,0,0,0,0,191,128,15,255,0,0,0,0,1,255,64,127,252,0,0,0,191,255,255,0,47,224,0,0,0,63,255,254,0,11,128,0,0,0,63,255,248,0,0,0,0,0,0,26,250,64,0, + // 0x4e3b 主 + 59,78,36,37,77,40,2,253,0,0,0,2,0,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,63,248,0,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,2,255,192,0,0,0,0,0,0,0,191,240,0,0,0,0,0,0,0,47,248,0,0,0,0,0,0,0,11,224,0,0,0,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,10,170,170,170,255,170,170,170,160,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,170,170,170,255,170,170,170,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,106,170,170,170,170,170,170,170,170, + // 0x4e49 义 + 73,78,36,37,77,40,2,253,0,0,0,0,144,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,3,252,0,0,36,0,0,0,0,1,253,0,0,63,192,0,25,0,0,255,0,0,191,128,0,255,0,0,191,64,0,255,64,0,191,0,0,63,128,0,255,0,0,127,128,0,63,192,2,254,0,0,63,192,0,31,208,3,252,0,0,31,208,0,13,0,11,248,0,0,15,240,0,0,0,15,240,0,0,11,248,0,0,0,47,224,0,0,3,252,0,0,0,63,192,0,0,1,254,0,0,0,191,128,0,0,0,255,64,0,0,255,0,0,0,0,127,192,0,3,254,0,0,0,0,63,240,0,11,252,0,0,0,0,15,244,0,15,244,0,0,0,0,7,253,0,63,224,0,0,0,0,2,255,0,255,192,0,0,0,0,0,255,195,255,0,0,0,0,0,0,63,251,253,0,0,0,0,0,0,31,255,244,0,0,0,0,0,0,7,255,224,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,31,255,248,0,0,0,0,0,0,127,255,255,0,0,0,0,0,3,255,215,255,208,0,0,0,0,47,255,0,255,252,0,0,0,2,255,248,0,63,255,128,0,0,47,255,208,0,7,255,248,0,6,255,254,0,0,0,191,255,208,191,255,224,0,0,0,31,255,255,255,254,0,0,0,0,1,255,254,127,208,0,0,0,0,0,27,252,40,0,0,0,0,0,0,0,112, + // 0x4e4b 之 + 75,78,37,38,124,40,1,252,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,3,255,255,255,255,255,255,255,224,0,3,255,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,255,248,0,2,170,170,170,170,170,170,191,240,0,0,0,0,0,0,0,0,127,208,0,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,0,11,253,0,0,0,0,0,0,0,0,47,244,0,0,0,0,0,0,0,0,127,224,0,0,0,0,0,0,0,1,255,128,0,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,0,63,240,0,0,0,0,2,224,0,0,255,192,0,0,0,0,3,252,0,7,255,0,0,0,0,0,11,248,0,31,252,0,0,0,0,0,15,244,0,127,240,0,0,0,0,0,31,248,2,255,192,0,0,0,0,0,63,252,15,255,0,0,0,0,0,0,127,255,127,248,0,0,0,0,0,0,255,255,255,224,0,0,0,0,0,1,255,63,255,64,0,0,0,0,0,3,253,15,255,64,0,0,0,0,0,11,252,3,255,249,0,0,0,0,0,31,244,0,255,255,255,170,170,170,128,63,240,0,31,255,255,255,255,255,192,127,192,0,1,191,255,255,255,255,128,15,128,0,0,5,175,255,255,255,0,1,0,0,0,0,0,0,0,0,0, + // 0x4e86 了 + 134,78,32,35,24,40,4,252,170,170,170,170,170,170,170,208,255,255,255,255,255,255,255,248,255,255,255,255,255,255,255,253,255,255,255,255,255,255,255,248,0,0,0,0,0,0,255,224,0,0,0,0,0,3,255,128,0,0,0,0,0,15,254,0,0,0,0,0,0,63,248,0,0,0,0,0,1,255,224,0,0,0,0,0,11,255,128,0,0,0,0,0,47,253,0,0,0,0,0,15,255,240,0,0,0,0,0,15,255,128,0,0,0,0,0,15,253,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,15,255,255,240,0,0,0,0,7,255,255,224,0,0,0,0,3,255,255,128,0,0,0,0,2,170,164,0,0,0,0, + // 0x4e8c 二 + 140,78,36,28,252,40,2,0,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254, + // 0x4e8e 于 + 142,78,36,35,59,40,2,252,3,255,255,255,255,255,255,255,192,3,255,255,255,255,255,255,255,192,3,255,255,255,255,255,255,255,192,2,170,170,170,255,234,170,170,128,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,106,170,170,170,255,234,170,170,169,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,255,64,0,0,0,0,0,191,255,255,0,0,0,0,0,0,63,255,255,0,0,0,0,0,0,63,255,252,0,0,0,0,0,0,31,254,144,0,0,0,0, + // 0x4ea4 交 + 164,78,36,38,86,40,2,252,0,0,0,0,170,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,106,170,170,170,255,170,170,170,169,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0,0,0,15,64,0,0,248,0,0,0,0,63,240,0,7,255,0,0,0,0,255,208,0,3,255,208,0,0,3,255,64,0,0,191,248,0,0,15,254,0,0,0,31,254,0,0,127,248,0,0,0,3,255,192,2,255,224,0,0,0,0,255,240,31,255,66,192,0,3,224,63,252,191,253,31,224,0,11,252,11,254,47,240,15,240,0,15,244,3,248,11,128,11,248,0,31,240,0,208,0,0,3,252,0,63,208,0,0,0,0,2,255,0,191,192,0,0,0,0,0,255,130,255,64,0,0,0,0,0,127,215,254,0,0,0,0,0,0,47,255,252,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,11,255,224,0,0,0,0,0,0,127,255,253,0,0,0,0,0,7,255,255,255,208,0,0,0,0,127,255,130,255,253,0,0,0,27,255,253,0,127,255,228,0,6,255,255,224,0,11,255,255,144,255,255,254,0,0,0,255,255,255,191,255,208,0,0,0,11,255,253,63,248,0,0,0,0,0,111,252,30,0,0,0,0,0,0,0,96, + // 0x4eae 亮 + 174,78,36,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,250,170,170,170,175,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,10,170,170,170,170,170,160,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,0,0,0,0,0,0,0,252,63,0,1,80,0,0,0,0,252,63,0,7,244,0,191,64,0,252,63,0,11,244,0,191,64,0,252,63,0,11,240,0,191,64,0,252,0,0,15,240,0,191,64,0,0,0,0,31,240,0,191,64,0,0,0,0,47,208,0,191,64,0,0,0,0,127,192,0,191,64,0,184,0,1,255,128,0,191,64,0,191,0,15,255,0,0,191,64,0,254,2,255,252,0,0,191,128,1,254,255,255,224,0,0,127,255,255,253,191,255,64,0,0,63,255,255,252,63,224,0,0,0,31,255,255,240,20,0,0,0,0,0,21,84,0, + // 0x4ece 从 + 206,78,38,36,104,40,1,252,0,0,63,192,0,1,254,0,0,0,0,0,63,192,0,1,254,0,0,0,0,0,63,192,0,1,254,0,0,0,0,0,63,192,0,2,253,0,0,0,0,0,63,192,0,2,253,0,0,0,0,0,63,192,0,2,253,0,0,0,0,0,127,192,0,2,253,0,0,0,0,0,127,128,0,2,253,0,0,0,0,0,127,128,0,3,253,0,0,0,0,0,191,64,0,3,254,0,0,0,0,0,191,64,0,3,255,0,0,0,0,0,255,64,0,3,255,0,0,0,0,0,255,0,0,7,255,0,0,0,0,0,255,0,0,7,255,64,0,0,0,0,255,0,0,11,255,64,0,0,0,1,255,192,0,15,255,192,0,0,0,1,255,240,0,15,255,192,0,0,0,2,255,248,0,31,255,208,0,0,0,3,255,253,0,47,255,224,0,0,0,3,255,255,64,63,223,240,0,0,0,7,252,255,192,63,203,240,0,0,0,11,248,127,224,191,135,248,0,0,0,15,244,47,240,255,67,252,0,0,0,15,240,15,250,255,3,253,0,0,0,47,240,7,243,254,1,255,0,0,0,63,208,2,199,252,0,255,64,0,0,127,192,0,15,248,0,191,192,0,0,255,128,0,63,240,0,63,224,0,1,255,64,0,191,224,0,47,248,0,3,255,0,1,255,192,0,15,253,0,11,253,0,7,255,64,0,7,255,64,47,252,0,31,254,0,0,2,255,208,127,240,0,63,248,0,0,0,255,128,31,208,0,11,224,0,0,0,63,0,3,192,0,1,192,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0, + // 0x4ee4 令 + 228,78,37,38,124,40,2,252,0,0,0,1,254,0,0,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,0,15,255,208,0,0,0,0,0,0,0,47,255,244,0,0,0,0,0,0,0,191,219,252,0,0,0,0,0,0,2,255,131,255,64,0,0,0,0,0,11,254,0,255,208,0,0,0,0,0,47,252,0,63,244,0,0,0,0,0,191,240,0,15,253,0,0,0,0,2,255,192,0,3,255,128,0,0,0,15,254,0,0,0,191,244,0,0,0,127,248,0,0,0,47,254,0,0,2,255,255,255,255,255,255,255,208,0,31,255,95,255,255,255,245,255,248,0,255,252,31,255,255,255,244,63,255,64,255,224,5,85,85,85,80,11,255,0,127,64,0,0,0,0,0,1,253,0,40,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,255,255,254,0,0,2,255,255,255,255,255,255,254,0,0,2,255,255,255,255,255,255,254,0,0,1,85,85,127,213,85,85,254,0,0,0,0,0,47,192,0,0,254,0,0,0,0,0,47,192,0,0,254,0,0,0,0,0,47,192,0,0,254,0,0,0,0,0,47,192,0,0,254,0,0,0,0,0,47,192,0,0,254,0,0,0,0,0,47,192,0,0,254,0,0,0,0,0,47,192,0,0,254,0,0,0,0,0,47,192,10,170,254,0,0,0,0,0,47,192,11,255,253,0,0,0,0,0,47,192,3,255,252,0,0,0,0,0,47,192,3,255,144,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0, + // 0x4ee5 以 + 229,78,38,35,94,40,1,252,0,47,192,0,0,0,0,47,144,0,0,63,192,0,0,0,0,63,208,0,0,63,192,0,0,0,0,63,192,0,0,63,192,2,208,0,0,63,192,0,0,63,192,31,240,0,0,63,192,0,0,47,192,11,252,0,0,127,192,0,0,47,192,3,254,0,0,127,128,0,0,47,192,1,255,64,0,191,64,0,0,47,192,0,191,192,0,255,64,0,0,47,208,0,63,224,0,255,0,0,0,47,208,0,31,240,0,255,0,0,0,47,208,0,15,248,1,254,0,0,0,31,208,0,7,248,2,253,0,0,0,31,208,0,3,128,3,252,0,0,0,31,208,0,0,0,7,252,0,0,0,31,208,0,0,0,11,248,0,0,0,31,208,0,0,0,15,240,0,0,0,31,224,0,0,0,47,240,0,0,0,31,224,0,0,0,63,208,0,0,0,31,224,0,0,0,127,192,0,0,0,15,224,7,192,0,255,128,0,0,0,15,224,191,192,2,255,192,0,0,0,15,251,255,208,7,255,240,0,0,0,15,255,255,128,15,255,252,0,0,0,111,255,248,0,63,251,255,0,0,7,255,255,128,0,255,210,255,128,0,127,255,244,0,3,255,128,255,224,0,63,254,64,0,31,255,0,63,248,0,63,224,0,0,191,252,0,15,253,0,29,0,0,7,255,224,0,3,255,0,0,0,0,191,255,128,0,1,255,192,0,0,7,255,252,0,0,0,191,224,0,0,2,255,224,0,0,0,63,128,0,0,0,190,0,0,0,0,14,0,0,0,0,32,0,0,0,0,0,0, + // 0x4ef6 件 + 246,78,37,38,124,40,1,252,0,0,20,0,0,1,80,0,0,0,0,0,63,128,0,3,248,0,0,0,0,0,127,64,144,3,248,0,0,0,0,0,255,0,254,3,248,0,0,0,0,1,254,1,253,3,248,0,0,0,0,2,253,2,252,3,248,0,0,0,0,7,252,3,252,3,248,0,0,0,0,15,244,3,248,3,248,0,0,0,0,31,240,7,254,171,254,170,168,0,0,63,208,11,255,255,255,255,253,0,0,191,192,15,255,255,255,255,253,0,0,255,192,31,255,255,255,255,253,0,3,255,192,63,192,3,248,0,0,0,11,255,192,127,128,3,248,0,0,0,31,255,192,255,0,3,248,0,0,0,63,255,193,254,0,3,248,0,0,0,191,239,192,188,0,3,248,0,0,0,63,111,192,24,0,3,248,0,0,0,30,47,192,0,0,3,248,0,0,0,12,47,192,0,0,3,248,0,0,0,0,47,192,170,170,171,254,170,170,128,0,47,192,255,255,255,255,255,255,192,0,47,192,255,255,255,255,255,255,192,0,47,192,255,255,255,255,255,255,192,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,31,128,0,0,3,244,0,0,0, + // 0x4efd 份 + 253,78,38,38,124,40,1,252,0,0,36,0,0,0,0,0,0,0,0,0,127,128,3,255,255,244,0,0,0,0,191,0,3,255,255,248,0,0,0,0,254,0,3,255,255,252,0,0,0,2,253,0,65,85,87,252,0,0,0,3,252,0,254,0,1,253,0,0,0,11,244,1,254,0,0,254,0,0,0,15,240,2,252,0,0,255,0,0,0,47,208,3,248,0,0,127,128,0,0,127,192,11,244,0,0,63,192,0,0,255,128,15,240,0,0,47,224,0,2,255,128,31,208,0,0,15,240,0,3,255,128,63,192,0,0,11,252,0,15,255,128,191,64,0,0,3,254,0,63,255,129,254,0,0,0,2,255,64,191,255,131,252,0,0,0,0,255,224,255,191,143,249,85,85,85,85,191,208,191,63,143,235,255,255,255,255,223,64,60,63,131,203,255,255,255,255,198,0,20,63,128,11,255,255,255,255,192,0,0,63,128,0,2,252,0,63,192,0,0,63,128,0,3,252,0,63,192,0,0,63,128,0,3,248,0,63,192,0,0,63,128,0,3,244,0,63,128,0,0,63,128,0,7,244,0,63,128,0,0,63,128,0,11,240,0,63,128,0,0,63,128,0,15,240,0,63,128,0,0,63,128,0,15,224,0,63,128,0,0,63,128,0,47,192,0,63,128,0,0,63,128,0,63,192,0,127,64,0,0,63,128,0,191,64,0,127,64,0,0,63,128,1,255,0,0,191,64,0,0,63,128,7,252,0,0,191,0,0,0,63,128,47,244,0,0,255,0,0,0,63,128,255,224,3,255,255,0,0,0,63,129,255,128,1,255,253,0,0,0,63,128,125,0,0,255,248,0,0,0,47,128,32,0,0,106,64,0,0, + // 0x4f11 休 + 17,79,38,38,124,40,1,252,0,0,4,0,0,0,0,0,0,0,0,0,15,224,0,11,240,0,0,0,0,0,47,224,0,11,240,0,0,0,0,0,63,192,0,11,240,0,0,0,0,0,127,192,0,11,240,0,0,0,0,0,255,64,0,11,240,0,0,0,0,1,255,0,0,11,240,0,0,0,0,3,253,0,0,11,240,0,0,0,0,11,252,0,0,11,240,0,0,0,0,31,244,0,0,11,240,0,0,0,0,63,241,170,170,175,250,170,170,128,0,191,241,255,255,255,255,255,255,192,1,255,241,255,255,255,255,255,255,192,7,255,241,255,255,255,255,255,255,192,31,255,240,0,0,191,255,0,0,0,127,255,240,0,0,255,255,128,0,0,255,239,240,0,2,255,255,192,0,0,127,143,240,0,3,255,255,208,0,0,63,15,240,0,7,255,251,240,0,0,28,15,240,0,15,255,247,244,0,0,0,15,240,0,47,219,243,252,0,0,0,15,240,0,63,203,241,254,0,0,0,15,240,0,191,75,240,255,0,0,0,15,240,1,255,11,240,127,192,0,0,15,240,3,253,11,240,63,224,0,0,15,240,15,248,11,240,15,244,0,0,15,240,47,240,11,240,11,252,0,0,15,240,127,208,11,240,3,255,0,0,15,242,255,128,11,240,1,255,192,0,15,251,255,0,11,240,0,191,240,0,15,251,252,0,11,240,0,47,208,0,15,242,240,0,11,240,0,15,64,0,15,240,128,0,11,240,0,1,0,0,15,240,0,0,11,240,0,0,0,0,15,240,0,0,11,240,0,0,0,0,15,240,0,0,11,240,0,0,0,0,15,240,0,0,11,240,0,0,0,0,10,160,0,0,11,240,0,0,0, + // 0x4f20 传 + 32,79,37,38,124,40,1,252,0,0,20,0,0,21,0,0,0,0,0,0,63,128,0,63,192,0,0,0,0,0,191,64,0,63,192,0,0,0,0,0,255,0,0,127,128,0,0,0,0,1,253,21,85,191,149,85,84,0,0,3,252,63,255,255,255,255,252,0,0,7,248,63,255,255,255,255,252,0,0,15,240,63,255,255,255,255,252,0,0,47,224,0,2,252,0,0,0,0,0,63,192,0,3,252,0,0,0,0,0,255,192,0,3,252,0,0,0,0,1,255,192,0,7,248,0,0,0,0,3,255,193,85,91,249,85,85,85,64,15,255,195,255,255,255,255,255,255,192,47,255,195,255,255,255,255,255,255,192,191,255,195,255,255,255,255,255,255,192,255,191,192,0,47,192,0,0,0,0,127,63,192,0,63,192,0,0,0,0,60,63,192,0,127,128,0,0,0,0,16,63,192,0,191,64,0,0,0,0,0,63,192,0,255,255,255,255,224,0,0,63,192,1,255,255,255,255,252,0,0,63,192,2,255,255,255,255,244,0,0,63,192,1,85,85,85,191,224,0,0,63,192,0,0,0,0,255,128,0,0,63,192,0,0,0,3,255,0,0,0,63,192,0,0,0,11,252,0,0,0,63,192,0,1,128,47,240,0,0,0,63,192,0,11,244,191,192,0,0,0,63,192,0,31,255,255,64,0,0,0,63,192,0,3,255,253,0,0,0,0,63,192,0,0,127,252,0,0,0,0,63,192,0,0,15,255,0,0,0,0,63,192,0,0,3,255,192,0,0,0,63,192,0,0,0,191,240,0,0,0,63,192,0,0,0,31,240,0,0,0,63,192,0,0,0,7,208,0,0,0,47,128,0,0,0,1,64,0,0, + // 0x4f4d 位 + 77,79,38,38,124,40,1,252,0,0,4,0,0,1,80,0,0,0,0,0,47,192,0,11,240,0,0,0,0,0,63,192,0,11,240,0,0,0,0,0,191,64,0,11,240,0,0,0,0,0,255,0,0,11,240,0,0,0,0,2,254,0,0,11,240,0,0,0,0,3,252,0,0,11,240,0,0,0,0,11,244,0,0,11,240,0,0,0,0,31,240,191,255,255,255,255,255,128,0,63,208,191,255,255,255,255,255,128,0,191,208,191,255,255,255,255,255,128,1,255,208,106,170,170,170,170,170,64,3,255,208,0,0,0,0,0,0,0,15,255,208,0,0,0,0,0,0,0,63,255,208,0,188,0,0,47,208,0,191,239,208,1,253,0,0,63,192,0,255,207,208,0,253,0,0,63,192,0,127,15,208,0,254,0,0,63,128,0,60,15,208,0,191,0,0,127,64,0,20,15,208,0,127,0,0,191,64,0,0,15,208,0,63,64,0,255,0,0,0,15,208,0,63,128,0,255,0,0,0,15,208,0,63,192,1,254,0,0,0,15,208,0,47,192,2,253,0,0,0,15,208,0,47,192,3,252,0,0,0,15,208,0,31,208,3,248,0,0,0,15,208,0,31,208,7,244,0,0,0,15,208,0,15,224,11,240,0,0,0,15,208,0,15,224,15,240,0,0,0,15,208,0,15,240,15,224,0,0,0,15,208,0,15,144,31,208,0,0,0,15,208,0,0,0,47,192,0,0,0,15,208,170,170,170,191,234,170,144,0,15,209,255,255,255,255,255,255,224,0,15,209,255,255,255,255,255,255,224,0,15,209,255,255,255,255,255,255,224,0,15,208,0,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0, + // 0x4f4e 低 + 78,79,38,38,124,40,1,252,0,0,36,0,0,0,0,0,0,0,0,0,127,64,0,0,0,0,64,0,0,0,191,0,0,0,0,111,240,0,0,0,255,0,0,1,175,255,248,0,0,2,253,25,26,255,255,255,248,0,0,3,252,31,255,255,255,249,0,0,0,11,244,31,255,255,255,0,0,0,0,15,240,31,250,80,191,0,0,0,0,47,208,31,192,0,191,0,0,0,0,127,192,31,192,0,191,0,0,0,0,255,128,31,192,0,127,64,0,0,2,255,128,31,192,0,127,64,0,0,7,255,128,31,192,0,127,64,0,0,15,255,128,31,192,0,127,64,0,0,63,255,128,31,255,255,255,255,255,208,255,255,128,31,255,255,255,255,255,208,255,127,128,31,255,255,255,255,255,208,126,63,128,31,229,85,127,213,85,64,60,63,128,31,192,0,47,192,0,0,16,63,128,31,192,0,47,192,0,0,0,63,128,31,192,0,31,192,0,0,0,63,128,31,192,0,31,208,0,0,0,63,128,31,192,0,15,224,0,0,0,63,128,31,192,0,15,240,0,0,0,63,128,31,192,0,11,240,0,0,0,63,128,31,192,0,71,244,0,0,0,63,128,31,209,175,227,248,0,0,0,63,128,47,255,255,227,252,2,0,0,63,131,255,255,255,226,252,3,224,0,63,130,255,255,250,65,254,3,240,0,63,130,255,228,0,0,255,3,240,0,63,128,144,0,0,0,127,135,224,0,63,128,0,0,0,0,63,255,224,0,63,128,21,85,85,85,31,255,192,0,63,128,255,255,255,255,135,255,128,0,63,128,255,255,255,255,129,190,0,0,63,128,255,255,255,255,128,0,0,0,63,128,0,0,0,0,0,0,0, + // 0x4f53 体 + 83,79,38,38,124,40,1,252,0,0,80,0,0,10,144,0,0,0,0,0,254,0,0,15,224,0,0,0,0,0,254,0,0,15,224,0,0,0,0,2,253,0,0,15,224,0,0,0,0,3,252,0,0,15,224,0,0,0,0,7,248,0,0,15,224,0,0,0,0,15,240,0,0,15,224,0,0,0,0,31,224,0,0,15,224,0,0,0,0,63,211,255,255,255,255,255,255,192,0,127,195,255,255,255,255,255,255,192,0,255,131,255,255,255,255,255,255,192,2,255,129,170,170,255,255,170,170,128,3,255,128,0,1,255,255,0,0,0,15,255,128,0,3,255,255,64,0,0,47,255,128,0,3,255,255,192,0,0,127,255,128,0,11,239,239,208,0,0,191,191,128,0,15,223,235,224,0,0,63,63,128,0,47,207,227,240,0,0,29,63,128,0,63,79,227,252,0,0,4,63,128,0,191,15,225,253,0,0,0,63,128,0,253,15,224,255,0,0,0,63,128,3,252,15,224,127,64,0,0,63,128,7,244,15,224,63,192,0,0,63,128,15,240,15,224,31,240,0,0,63,128,63,208,15,224,15,248,0,0,63,128,191,128,15,224,3,253,0,0,63,130,255,0,15,224,2,255,0,0,63,135,253,255,255,255,254,255,192,0,63,159,248,255,255,255,253,63,224,0,63,135,224,255,255,255,253,31,128,0,63,130,192,85,95,229,84,6,0,0,63,128,0,0,15,224,0,0,0,0,63,128,0,0,15,224,0,0,0,0,63,128,0,0,15,224,0,0,0,0,63,128,0,0,15,224,0,0,0,0,63,128,0,0,15,224,0,0,0,0,63,128,0,0,15,224,0,0,0,0,42,128,0,0,10,144,0,0,0, + // 0x4f59 余 + 89,79,38,39,134,40,1,251,0,0,0,0,106,128,0,0,0,0,0,0,0,0,255,224,0,0,0,0,0,0,0,3,255,248,0,0,0,0,0,0,0,15,255,253,0,0,0,0,0,0,0,63,246,255,64,0,0,0,0,0,0,255,208,255,224,0,0,0,0,0,3,255,128,63,248,0,0,0,0,0,31,254,0,15,255,0,0,0,0,0,191,248,0,2,255,208,0,0,0,3,255,208,0,0,191,248,0,0,0,31,255,64,0,0,31,255,64,0,1,255,252,0,0,0,3,255,244,0,11,255,245,85,85,85,85,255,255,64,127,254,191,255,255,255,255,223,255,208,47,244,127,255,255,255,255,194,255,128,15,128,127,255,255,255,255,192,47,0,0,0,0,0,63,192,0,0,1,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,1,170,170,170,191,234,170,170,168,0,3,255,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,255,252,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,36,0,63,192,7,64,0,0,0,0,255,64,63,192,47,224,0,0,0,2,255,0,63,192,47,248,0,0,0,11,252,0,63,192,11,255,0,0,0,47,244,0,63,192,2,255,192,0,0,191,208,0,63,192,0,127,240,0,3,255,64,0,63,192,0,31,252,0,47,253,0,0,63,192,0,7,255,0,63,244,2,170,191,192,0,1,255,64,11,192,2,255,255,128,0,0,188,0,1,0,0,255,255,0,0,0,16,0,0,0,0,255,228,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x4f5c 作 + 92,79,38,38,124,40,1,252,0,0,4,0,0,0,0,0,0,0,0,0,47,192,1,248,0,0,0,0,0,0,63,192,3,252,0,0,0,0,0,0,127,128,3,248,0,0,0,0,0,0,255,64,11,244,0,0,0,0,0,0,255,0,15,240,0,0,0,0,0,3,253,0,31,224,0,0,0,0,0,7,252,0,63,255,255,255,255,208,0,15,244,0,127,255,255,255,255,208,0,31,240,0,255,255,255,255,255,208,0,63,224,2,254,175,250,170,170,128,0,191,224,3,252,15,224,0,0,0,1,255,224,15,244,15,224,0,0,0,3,255,224,31,240,15,224,0,0,0,15,255,224,127,208,15,224,0,0,0,63,255,224,255,128,15,224,0,0,0,127,255,226,255,0,15,255,255,255,64,63,207,224,125,0,15,255,255,255,64,31,15,224,20,0,15,255,255,255,64,12,15,224,0,0,15,245,85,85,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,245,85,85,64,0,15,224,0,0,15,255,255,255,192,0,15,224,0,0,15,255,255,255,192,0,15,224,0,0,15,255,255,255,192,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,10,144,0,0,10,144,0,0,0, + // 0x4f7f 使 + 127,79,38,38,124,40,1,252,0,0,25,0,0,2,160,0,0,0,0,0,63,192,0,7,244,0,0,0,0,0,63,192,0,7,244,0,0,0,0,0,191,64,0,7,244,0,0,0,0,0,255,85,85,91,249,85,85,64,0,2,253,255,255,255,255,255,255,208,0,3,252,255,255,255,255,255,255,208,0,11,244,255,255,255,255,255,255,208,0,15,240,0,0,7,244,0,0,0,0,63,208,0,0,7,244,0,0,0,0,191,208,0,0,7,244,0,0,0,0,255,208,0,0,7,244,0,0,0,3,255,208,63,255,255,255,255,255,0,11,255,208,63,255,255,255,255,255,0,47,255,208,63,255,255,255,255,255,0,191,255,208,63,128,7,244,0,127,0,255,207,208,63,128,7,244,0,127,0,63,15,208,63,128,7,244,0,127,0,44,15,208,63,128,7,244,0,127,0,0,15,208,63,128,7,244,0,127,0,0,15,208,63,255,255,255,255,255,0,0,15,208,63,255,255,255,255,255,0,0,15,208,63,255,255,255,255,255,0,0,15,208,0,0,11,240,0,0,0,0,15,208,31,128,15,240,0,0,0,0,15,208,31,208,15,224,0,0,0,0,15,208,11,244,31,208,0,0,0,0,15,208,3,253,63,192,0,0,0,0,15,208,0,255,191,128,0,0,0,0,15,208,0,63,255,0,0,0,0,0,15,208,0,15,255,0,0,0,0,0,15,208,0,31,255,224,0,0,0,0,15,208,0,191,255,255,128,0,0,0,15,208,11,255,219,255,254,64,0,0,15,210,255,255,1,255,255,255,144,0,15,211,255,244,0,11,255,255,192,0,15,208,255,64,0,0,111,255,64,0,15,208,100,0,0,0,0,90,0, + // 0x4f9b 供 + 155,79,38,38,124,40,1,252,0,0,20,0,21,64,0,84,0,0,0,0,63,128,47,192,0,253,0,0,0,0,191,64,47,192,0,253,0,0,0,0,255,0,47,192,0,253,0,0,0,1,254,0,47,192,0,253,0,0,0,3,252,0,47,192,0,253,0,0,0,7,248,0,47,192,0,253,0,0,0,15,240,0,47,192,0,253,0,0,0,47,224,42,191,234,170,255,170,128,0,63,192,127,255,255,255,255,255,192,0,255,192,127,255,255,255,255,255,192,1,255,192,127,255,255,255,255,255,192,3,255,192,0,47,192,0,253,0,0,15,255,192,0,47,192,0,253,0,0,63,255,192,0,47,192,0,253,0,0,191,255,192,0,47,192,0,253,0,0,191,175,192,0,47,192,0,253,0,0,63,47,192,0,47,192,0,253,0,0,44,47,192,0,47,192,0,253,0,0,4,47,192,0,47,192,0,253,0,0,0,47,192,0,47,192,0,253,0,0,0,47,193,170,191,234,170,255,170,128,0,47,193,255,255,255,255,255,255,208,0,47,193,255,255,255,255,255,255,208,0,47,193,255,255,255,255,255,255,208,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,14,64,0,36,0,0,0,47,192,0,47,224,1,253,0,0,0,47,192,0,127,192,1,255,64,0,0,47,192,0,255,64,0,127,192,0,0,47,192,3,254,0,0,47,240,0,0,47,192,15,252,0,0,11,248,0,0,47,192,63,240,0,0,3,254,0,0,47,192,255,192,0,0,1,255,0,0,47,194,255,64,0,0,0,191,192,0,47,192,125,0,0,0,0,62,0,0,47,128,4,0,0,0,0,20,0, + // 0x4fb5 侵 + 181,79,38,38,124,40,1,252,0,0,16,0,0,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,0,191,79,255,255,255,255,244,0,0,0,255,15,255,255,255,255,244,0,0,1,253,15,255,255,255,255,244,0,0,3,252,0,0,0,0,3,244,0,0,11,248,0,0,0,0,3,244,0,0,15,240,2,170,170,170,175,244,0,0,47,224,3,255,255,255,255,244,0,0,127,192,3,255,255,255,255,244,0,0,255,192,0,0,0,0,3,244,0,2,255,128,0,0,0,0,3,244,0,7,255,128,31,255,255,255,255,244,0,31,255,128,31,255,255,255,255,244,0,63,255,128,31,255,255,255,255,244,0,255,255,128,0,0,0,0,0,0,0,255,127,128,0,0,0,0,0,0,0,61,63,129,255,255,255,255,255,255,192,40,63,129,255,255,255,255,255,255,192,0,63,129,255,255,255,255,255,255,192,0,63,129,252,0,0,0,0,47,192,0,63,129,252,0,0,0,0,47,192,0,63,129,252,0,0,0,0,47,192,0,63,129,255,255,255,255,255,255,192,0,63,128,171,255,255,255,255,250,64,0,63,128,7,255,255,255,255,208,0,0,63,128,0,111,0,0,127,192,0,0,63,128,0,127,192,1,255,0,0,0,63,128,0,47,240,7,253,0,0,0,63,128,0,11,253,47,244,0,0,0,63,128,0,2,255,255,208,0,0,0,63,128,0,0,191,255,64,0,0,0,63,128,0,1,255,255,144,0,0,0,63,128,0,127,255,255,254,64,0,0,63,129,191,255,254,111,255,255,144,0,63,129,255,255,208,2,255,255,192,0,63,128,255,248,0,0,27,255,64,0,42,128,121,0,0,0,0,26,0, + // 0x4fdd 保 + 221,79,38,38,124,40,1,252,0,0,20,0,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,63,203,255,255,255,255,252,0,0,0,191,75,255,255,255,255,252,0,0,0,255,11,255,255,255,255,252,0,0,2,253,11,245,85,85,87,252,0,0,3,252,11,240,0,0,2,252,0,0,11,244,11,240,0,0,2,252,0,0,15,240,11,240,0,0,2,252,0,0,63,208,11,240,0,0,2,252,0,0,191,208,11,240,0,0,2,252,0,1,255,208,11,240,0,0,2,252,0,3,255,208,11,255,255,255,255,252,0,15,255,208,11,255,255,255,255,252,0,47,255,208,11,255,255,255,255,252,0,191,255,208,1,85,91,249,85,84,0,191,207,208,0,0,7,244,0,0,0,63,15,208,0,0,7,244,0,0,0,45,15,208,0,0,7,244,0,0,0,4,15,208,0,0,7,244,0,0,0,0,15,209,255,255,255,255,255,255,192,0,15,209,255,255,255,255,255,255,192,0,15,209,255,255,255,255,255,255,192,0,15,208,85,85,255,255,149,85,64,0,15,208,0,0,255,255,192,0,0,0,15,208,0,3,255,255,240,0,0,0,15,208,0,11,255,251,248,0,0,0,15,208,0,47,231,246,253,0,0,0,15,208,0,191,199,244,255,64,0,0,15,208,2,255,7,244,127,208,0,0,15,208,15,253,7,244,31,244,0,0,15,208,127,244,7,244,11,254,0,0,15,210,255,208,7,244,2,255,208,0,15,215,255,64,7,244,0,191,240,0,15,209,252,0,7,244,0,47,192,0,15,208,160,0,7,244,0,7,0,0,15,208,0,0,7,244,0,0,0,0,10,144,0,0,7,244,0,0,0, + // 0x4fe1 信 + 225,79,38,38,124,40,1,252,0,0,4,0,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,63,193,255,255,255,255,240,0,0,0,191,65,255,255,255,255,240,0,0,0,255,1,255,255,255,255,240,0,0,2,254,0,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,0,31,240,255,255,255,255,255,255,208,0,63,224,255,255,255,255,255,255,208,0,191,208,255,255,255,255,255,255,208,1,255,208,0,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,0,15,255,208,3,255,255,255,255,244,0,63,255,208,3,255,255,255,255,244,0,255,223,208,3,255,255,255,255,244,0,191,79,208,0,0,0,0,0,0,0,62,15,208,0,0,0,0,0,0,0,44,15,208,0,0,0,0,0,0,0,0,15,208,3,255,255,255,255,244,0,0,15,208,3,255,255,255,255,244,0,0,15,208,3,255,255,255,255,244,0,0,15,208,0,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,0,15,208,7,255,255,255,255,252,0,0,15,208,7,255,255,255,255,252,0,0,15,208,7,255,255,255,255,252,0,0,15,208,7,240,0,0,3,252,0,0,15,208,7,240,0,0,3,252,0,0,15,208,7,240,0,0,3,252,0,0,15,208,7,240,0,0,3,252,0,0,15,208,7,240,0,0,3,252,0,0,15,208,7,255,255,255,255,252,0,0,15,208,7,255,255,255,255,252,0,0,15,208,7,255,255,255,255,252,0,0,15,208,7,240,0,0,3,252,0,0,10,128,7,240,0,0,2,168,0, + // 0x503c 值 + 60,80,37,38,124,40,1,252,0,0,36,0,0,7,164,0,0,0,0,0,127,64,0,7,244,0,0,0,0,0,191,0,0,11,240,0,0,0,0,0,254,0,0,11,240,0,0,0,0,2,253,191,255,255,255,255,255,0,0,3,252,191,255,255,255,255,255,0,0,7,244,191,255,255,255,255,255,0,0,15,240,0,0,31,208,0,0,0,0,31,224,0,0,31,192,0,0,0,0,63,192,0,0,47,192,0,0,0,0,191,128,0,0,63,128,0,0,0,1,255,128,11,255,255,255,255,240,0,3,255,128,11,255,255,255,255,240,0,11,255,128,11,255,255,255,255,240,0,47,255,128,11,224,0,0,7,240,0,127,255,128,11,224,0,0,7,240,0,127,191,128,11,250,170,170,175,240,0,47,63,128,11,255,255,255,255,240,0,28,63,128,11,255,255,255,255,240,0,4,63,128,11,224,0,0,7,240,0,0,63,128,11,224,0,0,7,240,0,0,63,128,11,224,0,0,7,240,0,0,63,128,11,250,170,170,175,240,0,0,63,128,11,255,255,255,255,240,0,0,63,128,11,255,255,255,255,240,0,0,63,128,11,224,0,0,7,240,0,0,63,128,11,224,0,0,7,240,0,0,63,128,11,224,0,0,7,240,0,0,63,128,11,255,255,255,255,240,0,0,63,128,11,255,255,255,255,240,0,0,63,128,11,250,170,170,175,240,0,0,63,128,11,224,0,0,7,240,0,0,63,128,11,224,0,0,7,240,0,0,63,128,15,224,0,0,11,240,0,0,63,135,255,255,255,255,255,255,192,0,63,135,255,255,255,255,255,255,192,0,63,135,255,255,255,255,255,255,192,0,63,128,0,0,0,0,0,0,0, + // 0x503e 倾 + 62,80,37,38,124,40,1,252,0,1,0,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,0,11,240,0,3,255,255,255,255,192,0,15,224,0,3,255,255,255,255,192,0,31,194,244,3,255,255,255,255,192,0,63,194,244,0,0,15,240,0,0,0,63,66,244,0,0,15,224,0,0,0,191,2,244,0,0,31,192,0,0,0,255,2,244,0,0,47,192,0,0,2,255,2,244,0,127,255,255,253,0,3,255,2,244,0,127,255,255,253,0,11,255,2,255,252,127,255,255,253,0,31,255,2,255,252,126,0,0,253,0,63,255,2,255,252,126,1,64,253,0,191,255,2,248,0,126,11,208,253,0,255,191,2,244,0,126,11,208,253,0,190,127,2,244,0,126,11,208,253,0,60,127,2,244,0,126,11,208,253,0,48,127,2,244,0,126,11,208,253,0,0,127,2,244,0,126,11,208,253,0,0,127,2,244,0,126,11,208,253,0,0,127,2,244,0,126,11,208,253,0,0,127,2,244,0,126,11,208,253,0,0,127,2,244,44,126,11,192,253,0,0,127,2,250,252,126,15,192,253,0,0,127,3,255,252,126,15,192,253,0,0,127,7,255,244,126,31,192,253,0,0,127,15,255,64,106,47,128,169,0,0,127,7,244,0,0,63,68,0,0,0,127,3,128,0,0,191,62,0,0,0,127,0,0,0,1,253,191,192,0,0,127,0,0,0,7,252,47,244,0,0,127,0,0,0,47,240,11,254,0,0,127,0,0,1,255,192,1,255,128,0,127,0,0,15,255,0,0,63,192,0,127,0,0,11,248,0,0,15,64,0,127,0,0,2,128,0,0,1,0, + // 0x504f 偏 + 79,80,38,39,134,40,1,251,0,0,144,0,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,0,2,252,255,255,255,255,255,255,208,0,3,248,255,255,255,255,255,255,208,0,7,244,255,255,255,255,255,255,208,0,15,240,0,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,47,255,255,255,255,254,0,0,255,64,47,255,255,255,255,254,0,1,255,64,47,255,255,255,255,254,0,3,255,64,47,192,0,0,0,254,0,7,255,64,47,192,0,0,0,254,0,15,255,64,47,192,0,0,0,254,0,63,255,64,47,255,255,255,255,254,0,191,255,64,47,255,255,255,255,254,0,255,127,64,47,255,255,255,255,254,0,190,63,64,47,128,0,0,0,0,0,60,63,64,47,128,0,0,0,0,0,36,63,64,63,128,0,0,0,0,0,0,63,64,63,255,255,255,255,255,64,0,63,64,63,255,255,255,255,255,64,0,63,64,63,255,255,255,255,255,64,0,63,64,63,248,31,66,240,63,64,0,63,64,127,248,31,66,240,63,64,0,63,64,191,248,31,66,240,63,64,0,63,64,255,248,31,66,240,63,64,0,63,64,255,255,255,255,255,255,64,0,63,65,253,255,255,255,255,255,64,0,63,67,253,255,255,255,255,255,64,0,63,67,249,248,31,66,240,63,64,0,63,75,245,248,31,66,240,63,64,0,63,79,241,248,31,66,240,63,64,0,63,127,209,248,31,66,240,63,64,0,63,95,193,248,31,66,240,63,64,0,63,71,1,248,31,66,247,255,64,0,63,64,1,248,31,66,243,255,0,0,63,64,1,248,31,66,242,248,0,0,0,0,0,0,0,0,0,0,0, + // 0x505c 停 + 92,80,38,38,124,40,1,252,0,0,36,0,0,6,160,0,0,0,0,0,127,64,0,11,240,0,0,0,0,0,191,0,0,11,240,0,0,0,0,0,255,0,0,11,240,0,0,0,0,2,254,255,255,255,255,255,255,192,0,3,252,255,255,255,255,255,255,192,0,11,244,255,255,255,255,255,255,192,0,15,240,0,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,0,127,192,7,255,255,255,255,244,0,0,255,128,7,255,255,255,255,244,0,2,255,128,7,250,170,170,171,244,0,7,255,128,7,240,0,0,7,244,0,15,255,128,7,240,0,0,7,244,0,63,255,128,7,240,0,0,7,244,0,191,255,128,7,255,255,255,255,244,0,255,191,128,7,255,255,255,255,244,0,127,63,128,2,170,170,170,170,160,0,60,63,128,0,0,0,0,0,0,0,20,63,131,255,255,255,255,255,255,224,0,63,131,255,255,255,255,255,255,224,0,63,131,255,255,255,255,255,255,224,0,63,131,244,0,0,0,0,15,224,0,63,131,244,0,0,0,0,15,224,0,63,131,244,0,0,0,0,15,224,0,63,131,244,255,255,255,255,207,224,0,63,131,244,255,255,255,255,207,224,0,63,128,0,255,255,255,255,192,0,0,63,128,0,0,11,240,0,0,0,0,63,128,0,0,11,240,0,0,0,0,63,128,0,0,11,240,0,0,0,0,63,128,0,0,11,240,0,0,0,0,63,128,0,0,11,240,0,0,0,0,63,128,0,0,11,240,0,0,0,0,63,128,0,21,95,240,0,0,0,0,63,128,0,63,255,240,0,0,0,0,63,128,0,47,255,224,0,0,0,0,47,128,0,31,254,64,0,0,0, + // 0x50a8 储 + 168,80,38,38,124,40,1,252,0,2,64,0,0,0,168,0,0,0,0,3,240,0,0,1,252,0,4,0,0,7,240,0,0,1,252,0,47,128,0,15,224,224,0,1,252,0,63,128,0,15,215,248,0,1,252,0,191,0,0,31,194,253,3,255,255,253,254,0,0,63,128,255,67,255,255,255,252,0,0,63,64,63,195,255,255,255,248,0,0,191,0,15,208,1,252,11,240,0,0,254,0,7,0,1,252,31,208,0,2,254,0,0,0,1,252,63,192,0,3,254,0,0,0,1,252,255,0,0,11,254,0,0,15,255,255,255,255,208,31,254,63,255,15,255,255,255,255,208,63,254,63,255,15,255,255,255,255,208,191,254,63,255,5,85,191,213,85,64,191,190,42,191,0,1,255,64,0,0,125,190,0,127,0,7,254,0,0,0,60,190,0,127,0,31,252,0,0,0,16,190,0,127,0,191,240,0,0,0,0,190,0,127,7,255,255,255,254,0,0,190,0,127,47,255,255,255,254,0,0,190,0,127,63,255,255,255,254,0,0,190,0,127,31,255,128,0,190,0,0,190,0,127,11,111,128,0,190,0,0,190,0,127,0,47,128,0,190,0,0,190,0,127,0,47,234,170,254,0,0,190,0,127,0,47,255,255,254,0,0,190,0,127,5,47,255,255,254,0,0,190,0,127,46,47,128,0,190,0,0,190,0,127,255,47,128,0,190,0,0,190,0,191,255,47,128,0,190,0,0,190,0,255,248,47,128,0,190,0,0,190,2,255,192,47,255,255,254,0,0,190,1,253,0,47,255,255,254,0,0,190,0,176,0,47,255,255,254,0,0,190,0,0,0,47,128,0,190,0,0,189,0,0,0,31,128,0,105,0, + // 0x50cf 像 + 207,80,38,38,124,40,1,252,0,0,64,0,21,0,0,0,0,0,0,1,252,0,63,192,0,0,0,0,0,2,252,0,191,64,0,0,0,0,0,3,248,0,255,255,255,128,0,0,0,7,244,3,255,255,255,240,0,0,0,11,240,11,255,255,255,208,0,0,0,15,224,47,224,0,127,128,0,0,0,47,192,191,192,0,255,0,0,0,0,63,194,255,170,171,255,170,170,0,0,191,79,255,255,255,255,255,255,0,0,255,79,255,255,255,255,255,255,0,2,255,66,255,0,15,224,0,191,0,7,255,64,191,0,15,224,0,191,0,15,255,64,191,0,15,224,0,191,0,47,255,64,191,0,15,224,0,191,0,127,255,64,191,255,255,255,255,255,0,255,191,64,191,255,255,255,255,255,0,191,63,64,106,171,255,191,170,169,0,61,63,64,0,31,252,47,64,0,0,56,63,64,1,255,240,31,192,30,0,0,63,64,47,255,252,15,192,127,128,0,63,71,255,245,254,15,209,255,128,0,63,67,255,64,191,75,251,253,0,0,63,65,228,3,255,199,255,240,0,0,63,64,0,47,255,227,255,128,0,0,63,64,2,255,135,242,253,0,0,0,63,64,111,252,3,244,254,0,0,0,63,67,255,208,31,248,191,0,0,0,63,66,253,0,127,252,63,192,0,0,63,64,208,2,255,252,47,224,0,0,63,64,0,31,249,252,15,244,0,0,63,64,1,255,209,252,7,253,0,0,63,64,31,255,1,252,2,255,64,0,63,66,255,244,3,252,0,255,208,0,63,79,255,128,11,244,0,63,128,0,63,67,248,31,255,240,0,11,0,0,63,65,128,15,255,192,0,0,0,0,63,64,0,15,254,0,0,0,0, + // 0x5145 充 + 69,81,37,38,124,40,2,252,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,63,255,255,255,255,255,255,255,253,0,63,255,255,255,255,255,255,255,253,0,63,255,255,255,255,255,255,255,253,0,42,170,171,255,170,170,170,170,168,0,0,0,3,253,0,0,208,0,0,0,0,0,7,252,0,11,244,0,0,0,0,0,11,244,0,11,254,0,0,0,0,0,15,240,0,2,255,128,0,0,0,0,47,208,0,0,191,224,0,0,0,0,63,128,0,0,31,248,0,0,0,0,127,170,175,255,255,254,0,0,15,255,255,255,255,255,255,255,128,0,15,255,255,255,255,255,255,255,224,0,15,255,255,255,255,234,165,111,244,0,15,234,85,0,0,0,0,15,248,0,0,0,1,84,0,42,128,3,208,0,0,0,7,248,0,63,192,0,0,0,0,0,7,248,0,63,192,0,0,0,0,0,7,244,0,63,192,0,0,0,0,0,11,244,0,63,192,0,0,0,0,0,15,240,0,63,192,0,0,0,0,0,15,240,0,63,192,0,0,0,0,0,31,224,0,63,192,0,32,0,0,0,63,208,0,63,192,0,62,0,0,0,191,192,0,63,192,0,63,64,0,1,255,64,0,63,192,0,63,64,0,7,255,0,0,63,192,0,127,0,0,63,252,0,0,63,192,0,127,0,6,255,240,0,0,47,192,0,255,0,191,255,192,0,0,47,255,255,254,0,191,253,0,0,0,31,255,255,252,0,63,224,0,0,0,11,255,255,248,0,24,0,0,0,0,0,106,170,64,0, + // 0x5148 先 + 72,81,36,38,86,40,2,252,0,0,0,0,191,0,0,0,0,0,2,228,0,255,0,0,0,0,0,3,252,0,255,0,0,0,0,0,3,248,0,255,0,0,0,0,0,7,244,0,255,0,0,0,0,0,15,240,0,255,0,0,0,0,0,15,255,255,255,255,255,255,128,0,47,255,255,255,255,255,255,128,0,63,255,255,255,255,255,255,128,0,127,170,170,255,170,170,170,64,0,255,0,0,255,0,0,0,0,2,254,0,0,255,0,0,0,0,3,252,0,0,255,0,0,0,0,15,248,0,0,255,0,0,0,0,2,240,0,0,255,0,0,0,0,0,80,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,106,170,170,170,255,170,170,170,169,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,0,0,11,244,0,63,192,0,0,0,0,15,240,0,63,192,0,0,0,0,15,240,0,63,192,0,0,0,0,15,224,0,63,192,0,0,0,0,31,224,0,63,192,0,0,0,0,47,208,0,63,192,0,0,0,0,63,192,0,63,192,0,0,0,0,191,128,0,63,192,0,116,0,1,255,0,0,63,192,0,127,0,3,254,0,0,63,192,0,191,0,31,252,0,0,63,192,0,191,0,191,244,0,0,63,192,0,254,7,255,208,0,0,63,234,170,253,191,255,64,0,0,47,255,255,252,127,252,0,0,0,15,255,255,248,47,208,0,0,0,2,255,255,224,13,0,0,0,0,0,0,0,0, + // 0x5149 光 + 73,81,38,38,124,40,1,252,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,7,0,0,63,128,0,15,64,0,0,127,128,0,63,128,0,31,240,0,0,63,192,0,63,128,0,63,208,0,0,47,224,0,63,128,0,127,192,0,0,15,240,0,63,128,0,191,64,0,0,11,248,0,63,128,0,255,0,0,0,3,252,0,63,128,2,253,0,0,0,2,254,0,63,128,3,252,0,0,0,0,255,0,63,128,11,244,0,0,0,0,255,64,63,128,31,224,0,0,0,0,125,0,63,128,7,192,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,26,170,170,170,191,234,170,170,170,64,47,255,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,255,192,0,0,2,253,0,15,240,0,0,0,0,0,2,252,0,15,240,0,0,0,0,0,3,252,0,15,240,0,0,0,0,0,3,252,0,15,240,0,0,0,0,0,3,252,0,15,240,0,0,0,0,0,7,248,0,15,240,0,0,0,0,0,11,244,0,15,240,0,0,0,0,0,15,240,0,15,240,0,0,0,0,0,31,240,0,15,240,0,4,0,0,0,63,208,0,15,240,0,14,64,0,0,191,192,0,15,240,0,15,208,0,2,255,64,0,15,240,0,31,192,0,11,254,0,0,15,240,0,31,192,0,127,252,0,0,15,240,0,47,192,7,255,240,0,0,15,240,0,63,192,127,255,128,0,0,11,255,255,255,128,47,253,0,0,0,7,255,255,255,0,15,208,0,0,0,2,255,255,253,0,5,0,0,0,0,0,21,85,80,0, + // 0x5165 入 + 101,81,37,36,104,40,2,252,0,2,170,170,170,64,0,0,0,0,0,3,255,255,255,64,0,0,0,0,0,3,255,255,255,64,0,0,0,0,0,3,255,255,255,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,1,63,192,0,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,0,7,255,224,0,0,0,0,0,0,0,11,255,240,0,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,0,31,251,244,0,0,0,0,0,0,0,47,231,252,0,0,0,0,0,0,0,63,211,252,0,0,0,0,0,0,0,127,194,254,0,0,0,0,0,0,0,255,128,255,0,0,0,0,0,0,1,255,0,255,128,0,0,0,0,0,3,255,0,127,192,0,0,0,0,0,7,253,0,63,224,0,0,0,0,0,15,252,0,31,244,0,0,0,0,0,47,244,0,15,252,0,0,0,0,0,127,224,0,7,254,0,0,0,0,0,255,192,0,2,255,128,0,0,0,3,255,64,0,0,255,208,0,0,0,15,254,0,0,0,127,244,0,0,0,47,252,0,0,0,47,253,0,0,0,255,240,0,0,0,11,255,128,0,7,255,192,0,0,0,2,255,240,0,47,255,64,0,0,0,0,191,253,0,255,252,0,0,0,0,0,47,255,64,127,224,0,0,0,0,0,7,253,0,31,64,0,0,0,0,0,0,248,0,5,0,0,0,0,0,0,0,16,0, + // 0x5168 全 + 104,81,37,37,114,40,1,253,0,0,0,0,191,192,0,0,0,0,0,0,0,0,255,224,0,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,0,11,255,253,0,0,0,0,0,0,0,31,246,255,0,0,0,0,0,0,0,127,224,255,192,0,0,0,0,0,1,255,192,63,240,0,0,0,0,0,7,255,0,15,253,0,0,0,0,0,31,252,0,3,255,64,0,0,0,0,191,240,0,0,255,224,0,0,0,2,255,192,0,0,63,248,0,0,0,15,255,0,0,0,15,255,64,0,0,127,252,0,0,0,3,255,224,0,2,255,224,0,0,0,0,191,253,0,31,255,64,0,0,0,0,31,255,192,127,255,255,255,255,255,255,255,255,192,47,226,255,255,255,255,255,252,127,64,15,2,255,255,255,255,255,252,10,0,0,0,85,85,127,213,85,80,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,47,255,255,255,255,255,255,64,0,0,47,255,255,255,255,255,255,64,0,0,47,255,255,255,255,255,255,64,0,0,0,0,0,127,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,5,85,85,85,127,213,85,85,85,0,15,255,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,255,0, + // 0x5171 共 + 113,81,36,38,86,40,2,252,0,0,21,64,0,1,84,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,10,170,191,234,170,171,254,170,164,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,170,170,170,170,170,170,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,15,128,0,7,224,0,0,0,0,63,244,0,31,252,0,0,0,0,255,224,0,11,255,64,0,0,3,255,128,0,1,255,224,0,0,15,254,0,0,0,63,248,0,0,127,248,0,0,0,15,255,0,2,255,208,0,0,0,2,255,208,31,255,64,0,0,0,0,191,244,63,252,0,0,0,0,0,47,252,15,208,0,0,0,0,0,7,240,2,0,0,0,0,0,0,1,64, + // 0x5173 关 + 115,81,28,38,10,40,6,252,0,0,0,0,0,96,0,0,45,0,0,0,191,64,0,255,0,0,0,255,0,0,191,128,0,2,254,0,0,63,208,0,3,252,0,0,31,240,0,11,248,0,0,11,244,0,15,240,0,0,3,248,0,47,208,0,0,3,208,0,7,128,0,6,170,170,170,170,170,144,15,255,255,255,255,255,240,15,255,255,255,255,255,240,15,255,255,255,255,255,240,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,0,0,0,254,0,0,0,63,255,255,255,255,255,252,63,255,255,255,255,255,252,63,255,255,255,255,255,252,42,170,171,255,234,170,168,0,0,3,255,192,0,0,0,0,3,255,208,0,0,0,0,7,255,240,0,0,0,0,15,255,244,0,0,0,0,31,243,252,0,0,0,0,63,209,255,0,0,0,0,255,192,255,128,0,0,3,255,0,127,224,0,0,31,253,0,47,252,0,0,191,244,0,11,255,64,7,255,208,0,2,255,244,191,255,0,0,0,191,255,255,248,0,0,0,31,253,63,128,0,0,0,2,248,24,0,0,0,0,0,32, + // 0x5177 具 + 119,81,36,36,68,40,2,252,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,250,170,170,170,175,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,250,170,170,170,175,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,85,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,11,208,0,3,208,0,0,0,0,127,248,0,31,254,0,0,0,11,255,248,0,47,255,244,0,1,191,255,128,0,2,255,255,128,47,255,248,0,0,0,31,255,248,127,255,128,0,0,0,0,191,254,31,244,0,0,0,0,0,11,244,10,0,0,0,0,0,0,1,128, + // 0x5197 冗 + 151,81,37,35,94,40,2,252,47,255,255,255,255,255,255,255,252,0,47,255,255,255,255,255,255,255,252,0,47,255,255,255,255,255,255,255,252,0,47,234,170,170,170,170,170,171,252,0,47,192,0,0,0,0,0,3,252,0,47,192,0,0,0,0,0,3,252,0,47,192,0,0,0,0,0,3,252,0,47,192,0,0,0,0,0,3,252,0,47,192,0,0,0,0,0,3,252,0,47,192,0,0,0,0,0,3,252,0,21,64,63,255,255,255,248,1,84,0,0,0,63,255,255,255,248,0,0,0,0,0,63,255,255,255,248,0,0,0,0,0,63,229,85,91,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,127,128,0,3,248,0,0,0,0,0,191,64,0,3,248,0,16,0,0,0,255,0,0,3,248,0,61,0,0,2,254,0,0,3,248,0,63,64,0,7,253,0,0,3,248,0,127,64,0,31,248,0,0,3,248,0,127,0,0,127,240,0,0,3,248,0,127,0,3,255,208,0,0,3,252,0,191,0,47,255,64,0,0,3,255,170,255,0,255,253,0,0,0,3,255,255,253,0,127,224,0,0,0,1,255,255,252,0,47,64,0,0,0,0,127,255,224,0,4,0,0,0,0,0,0,0,0,0, + // 0x51b7 冷 + 183,81,37,38,124,40,2,252,0,0,0,0,0,170,0,0,0,0,0,0,0,0,2,255,64,0,0,0,4,0,0,0,7,255,192,0,0,0,31,0,0,0,15,255,240,0,0,0,127,208,0,0,47,255,248,0,0,0,191,248,0,0,191,195,254,0,0,0,31,254,0,1,255,65,255,128,0,0,7,255,128,7,255,0,191,208,0,0,0,255,208,31,252,0,47,248,0,0,0,63,128,127,240,0,11,254,0,0,0,14,1,255,208,0,3,255,192,0,0,0,7,255,64,0,0,191,244,0,0,0,47,254,85,85,85,111,254,0,0,1,255,243,255,255,255,203,255,128,0,2,255,195,255,255,255,193,255,0,0,0,254,3,255,255,255,192,61,0,0,0,116,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,0,0,0,0,0,0,0,0,0,0,0,7,66,255,255,255,255,255,208,0,0,15,210,255,255,255,255,255,208,0,0,47,226,255,255,255,255,255,208,0,0,63,193,85,95,245,85,111,208,0,0,191,128,0,15,240,0,15,208,0,1,255,0,0,15,240,0,15,208,0,3,254,0,0,15,240,0,15,208,0,11,252,0,0,15,240,0,15,208,0,15,244,0,0,15,240,0,15,208,0,63,240,0,0,15,240,0,15,208,0,127,208,0,0,15,240,42,175,208,0,255,128,0,0,15,240,63,255,208,0,255,0,0,0,15,240,31,255,192,0,45,0,0,0,15,240,15,253,0,0,4,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,10,160,0,0,0,0, + // 0x51c6 准 + 198,81,37,38,124,40,2,252,0,0,0,0,36,0,5,0,0,0,0,0,0,0,191,64,11,240,0,0,0,0,0,0,255,0,15,240,0,0,15,64,0,1,254,0,15,224,0,0,63,224,0,3,252,0,47,192,0,0,63,252,0,7,248,0,63,192,0,0,11,255,64,15,244,0,63,64,0,0,1,255,208,31,240,0,191,0,0,0,0,63,240,63,255,255,255,255,253,0,0,15,192,127,255,255,255,255,253,0,0,3,0,255,255,255,255,255,253,0,0,0,2,255,213,86,253,85,84,0,0,0,7,255,192,1,252,0,0,0,0,0,15,255,192,1,252,0,0,0,0,0,63,255,192,1,252,0,0,0,0,0,255,239,192,1,252,0,0,0,0,0,127,159,255,255,255,255,244,0,0,0,30,31,255,255,255,255,244,0,0,0,4,31,255,255,255,255,244,0,0,0,0,31,213,86,253,85,80,0,0,0,0,31,192,1,252,0,0,0,0,11,0,31,192,1,252,0,0,0,0,31,208,31,192,1,252,0,0,0,0,63,208,31,192,1,252,0,0,0,0,127,192,31,255,255,255,255,244,0,0,255,0,31,255,255,255,255,244,0,2,254,0,31,255,255,255,255,244,0,7,252,0,31,213,86,253,85,80,0,15,248,0,31,192,1,252,0,0,0,47,240,0,31,192,1,252,0,0,0,127,208,0,31,192,1,252,0,0,0,255,128,0,31,192,1,252,0,0,0,255,0,0,31,229,86,254,85,85,0,61,0,0,31,255,255,255,255,255,64,8,0,0,31,255,255,255,255,255,64,0,0,0,31,255,255,255,255,255,64,0,0,0,31,192,0,0,0,0,0,0,0,0,31,192,0,0,0,0,0, + // 0x51fa 出 + 250,81,32,38,48,40,4,252,0,0,0,10,144,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,250,170,175,250,170,175,240,15,255,255,255,255,255,255,240,15,255,255,255,255,255,255,240,15,255,255,255,255,255,255,240,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,106,0,0,15,224,0,0,169,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,170,170,175,250,170,170,254,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,191,0,0,0,0,0,0,254,191,0,0,0,0,0,0,254,106,0,0,0,0,0,0,169, + // 0x51fb 击 + 251,81,36,38,86,40,2,252,0,0,0,0,170,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,1,170,170,170,255,170,170,170,128,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,192,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,106,170,170,170,255,170,170,170,169,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,85,0,0,255,0,0,106,0,0,254,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,170,170,170,170,170,170,255,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0, + // 0x5206 分 + 6,82,38,37,114,40,1,252,0,0,1,228,0,0,180,0,0,0,0,0,3,254,0,7,252,0,0,0,0,0,7,252,0,3,254,0,0,0,0,0,15,248,0,1,255,0,0,0,0,0,31,240,0,0,255,192,0,0,0,0,63,224,0,0,63,224,0,0,0,0,255,192,0,0,47,244,0,0,0,1,255,64,0,0,15,252,0,0,0,3,255,0,0,0,3,255,0,0,0,15,252,0,0,0,1,255,192,0,0,63,244,0,0,0,0,255,224,0,0,191,224,0,0,0,0,63,248,0,2,255,192,0,0,0,0,15,254,0,15,255,0,0,0,0,0,7,255,192,63,255,170,170,170,170,170,171,255,224,191,251,255,255,255,255,255,253,191,192,47,195,255,255,255,255,255,253,47,0,11,3,255,255,255,255,255,253,4,0,0,0,0,15,240,0,2,253,0,0,0,0,0,15,240,0,2,253,0,0,0,0,0,31,240,0,2,253,0,0,0,0,0,31,224,0,2,252,0,0,0,0,0,47,208,0,2,252,0,0,0,0,0,63,192,0,3,252,0,0,0,0,0,127,192,0,3,252,0,0,0,0,0,255,128,0,3,252,0,0,0,0,1,255,0,0,3,252,0,0,0,0,3,254,0,0,3,252,0,0,0,0,15,252,0,0,3,248,0,0,0,0,47,248,0,0,7,248,0,0,0,0,255,224,0,0,11,244,0,0,0,7,255,192,0,0,15,244,0,0,0,127,255,0,0,0,47,240,0,0,7,255,248,0,7,255,255,224,0,0,3,255,208,0,3,255,255,208,0,0,1,254,0,0,2,255,255,64,0,0,0,224,0,0,0,170,148,0,0,0, + // 0x5207 切 + 7,82,37,38,124,40,1,251,0,42,64,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,2,170,170,170,170,170,64,0,63,128,3,255,255,255,255,255,128,0,63,128,3,255,255,255,255,255,128,0,63,128,3,255,255,255,255,255,128,0,63,128,0,0,31,208,0,127,64,0,63,128,0,0,31,192,0,127,64,0,63,128,1,128,47,192,0,127,64,0,63,133,191,192,47,192,0,127,64,0,63,255,255,208,47,192,0,127,64,27,255,255,255,224,47,192,0,127,64,191,255,255,249,0,47,192,0,127,64,191,255,228,0,0,47,192,0,127,64,127,191,128,0,0,63,192,0,191,64,16,63,128,0,0,63,192,0,191,0,0,63,128,0,0,63,128,0,191,0,0,63,128,0,0,63,128,0,191,0,0,63,128,0,0,63,64,0,191,0,0,63,128,0,0,127,64,0,191,0,0,63,128,24,0,191,0,0,255,0,0,63,128,31,128,255,0,0,255,0,0,63,128,31,192,254,0,0,255,0,0,63,128,47,193,253,0,0,255,0,0,63,128,47,131,252,0,0,255,0,0,63,234,191,67,252,0,0,255,0,0,63,255,255,11,244,0,0,254,0,0,31,255,254,15,240,0,1,254,0,0,7,255,248,47,224,0,1,254,0,0,0,0,0,127,192,0,2,253,0,0,0,0,1,255,128,0,3,253,0,0,0,0,3,255,0,0,3,252,0,0,0,0,31,252,0,0,11,252,0,0,0,0,191,244,0,255,255,248,0,0,0,1,255,208,0,127,255,240,0,0,0,0,127,64,0,63,255,208,0,0,0,0,28,0,0,42,169,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x521b 创 + 27,82,36,38,86,40,1,252,0,0,2,64,0,0,0,0,0,0,0,7,248,0,0,0,0,254,0,0,15,240,0,0,0,0,254,0,0,31,244,0,0,0,0,254,0,0,63,253,0,0,0,0,254,0,0,191,255,0,0,254,0,254,0,0,255,127,192,0,254,0,254,0,3,253,47,240,0,254,0,254,0,11,248,11,252,0,254,0,254,0,47,240,3,254,0,254,0,254,0,127,208,0,255,128,254,0,254,1,255,128,0,127,208,254,0,254,11,254,0,0,31,240,254,0,254,47,248,0,0,11,248,254,0,254,191,240,0,0,3,240,254,0,254,63,255,255,255,255,192,254,0,254,14,127,255,255,254,0,254,0,254,0,127,255,255,254,0,254,0,254,0,127,64,1,253,0,254,0,254,0,127,64,0,253,0,254,0,254,0,127,64,1,253,0,254,0,254,0,127,64,1,252,0,254,0,254,0,127,64,1,252,0,254,0,254,0,127,64,2,252,0,254,0,254,0,127,64,3,252,0,254,0,254,0,127,71,255,248,0,254,0,254,0,127,67,255,240,0,254,0,254,0,127,66,255,128,0,20,0,254,0,127,64,0,2,0,0,0,254,0,127,64,0,3,224,0,0,254,0,127,64,0,3,240,0,0,254,0,127,64,0,3,240,0,0,254,0,127,64,0,7,240,0,0,254,0,63,128,0,15,240,0,1,254,0,63,255,255,255,208,63,255,253,0,47,255,255,255,192,47,255,252,0,7,255,255,255,0,31,255,244,0,0,0,0,0,0,10,165,0, + // 0x521d 初 + 29,82,37,39,134,40,1,251,0,3,244,0,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,0,7,244,0,170,170,170,170,170,64,0,7,244,1,255,255,255,255,255,128,0,7,244,1,255,255,255,255,255,128,0,7,244,1,255,255,255,255,255,128,21,91,249,80,0,15,224,0,127,64,63,255,255,253,0,15,224,0,127,64,63,255,255,253,0,15,224,0,127,64,63,255,255,252,0,31,224,0,127,64,0,0,3,248,0,31,208,0,127,64,0,0,11,240,0,31,208,0,127,64,0,0,31,224,0,31,208,0,127,64,0,0,63,192,0,31,208,0,127,64,0,0,191,70,0,47,192,0,191,64,0,1,255,15,128,47,192,0,191,64,0,3,252,47,192,47,192,0,191,0,0,11,252,127,0,63,192,0,191,0,0,47,255,252,0,63,192,0,191,0,0,191,255,244,0,63,128,0,191,0,1,255,255,240,0,127,64,0,191,0,11,255,251,252,0,191,0,0,255,0,47,255,245,255,0,255,0,0,255,0,191,231,244,191,64,255,0,0,255,0,63,199,244,62,2,253,0,0,255,0,46,7,244,12,3,252,0,0,255,0,8,7,244,0,7,252,0,0,255,0,0,7,244,0,15,244,0,0,254,0,0,7,244,0,31,240,0,1,254,0,0,7,244,0,63,208,0,1,253,0,0,7,244,0,191,192,0,2,253,0,0,7,244,2,255,64,0,3,252,0,0,7,244,11,254,0,0,11,252,0,0,7,244,47,252,0,191,255,248,0,0,7,244,63,240,0,63,255,240,0,0,7,244,15,192,0,63,255,208,0,0,3,244,2,0,0,42,169,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x522b 别 + 43,82,36,37,77,40,1,252,0,0,0,0,0,0,0,0,254,7,255,255,255,248,0,0,0,254,7,255,255,255,248,0,0,0,254,7,255,255,255,248,0,0,0,254,7,245,85,87,248,1,252,0,254,7,240,0,3,248,1,252,0,254,7,240,0,3,248,1,252,0,254,7,240,0,3,248,1,252,0,254,7,240,0,3,248,1,252,0,254,7,240,0,3,248,1,252,0,254,7,240,0,3,248,1,252,0,254,7,255,255,255,248,1,252,0,254,7,255,255,255,248,1,252,0,254,7,255,255,255,248,1,252,0,254,1,85,85,85,80,1,252,0,254,0,0,169,0,0,1,252,0,254,0,0,253,0,0,1,252,0,254,0,0,253,0,0,1,252,0,254,5,85,254,85,84,1,252,0,254,47,255,255,255,254,1,252,0,254,47,255,255,255,253,1,252,0,254,47,255,255,255,253,1,252,0,254,0,2,252,0,253,1,252,0,254,0,3,252,0,253,1,252,0,254,0,3,248,1,253,1,252,0,254,0,3,244,1,253,1,252,0,254,0,7,240,1,252,1,168,0,254,0,15,240,1,252,0,0,0,254,0,31,208,2,252,0,0,0,254,0,63,192,2,252,0,0,0,254,0,191,128,3,252,0,0,0,254,1,255,0,3,248,0,0,0,254,7,254,0,11,248,0,0,1,254,47,248,15,255,244,0,31,255,253,127,224,11,255,240,0,15,255,252,31,128,7,255,192,0,11,255,244,9,0,1,84,0,0,6,170,64, + // 0x5230 到 + 48,82,36,37,77,40,1,252,0,0,0,0,0,0,0,0,170,0,0,0,0,0,0,0,0,254,63,255,255,255,255,208,0,0,254,63,255,255,255,255,208,0,0,254,63,255,255,255,255,211,244,0,254,21,87,253,85,85,67,244,0,254,0,7,248,0,0,3,244,0,254,0,11,244,7,192,3,244,0,254,0,15,240,31,224,3,244,0,254,0,31,208,11,244,3,244,0,254,0,47,192,3,252,3,244,0,254,0,63,128,0,255,3,244,0,254,42,255,255,255,255,67,244,0,254,63,255,255,255,255,195,244,0,254,63,255,255,255,255,227,244,0,254,63,254,170,85,11,243,244,0,254,0,0,21,64,3,131,244,0,254,0,0,47,192,0,3,244,0,254,0,0,47,192,0,3,244,0,254,0,0,47,192,0,3,244,0,254,0,0,47,192,0,3,244,0,254,11,255,255,255,255,3,244,0,254,11,255,255,255,255,3,244,0,254,11,255,255,255,255,3,244,0,254,1,85,111,213,85,3,244,0,254,0,0,47,192,0,3,244,0,254,0,0,47,192,0,2,164,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,5,144,0,0,254,0,0,47,239,255,208,0,0,254,5,175,255,255,255,208,0,0,254,127,255,255,255,255,208,0,0,254,63,255,255,254,148,0,31,255,254,63,255,165,0,0,0,15,255,253,41,0,0,0,0,0,11,255,248,0,0,0,0,0,0,7,170,64, + // 0x5236 制 + 54,82,36,38,86,40,1,252,0,0,6,144,0,0,0,0,0,0,164,11,240,0,0,0,0,191,0,254,11,240,0,0,0,0,191,1,253,11,240,0,0,0,0,191,2,252,11,240,0,0,47,192,191,3,252,11,240,0,0,47,192,191,3,255,255,255,255,208,47,192,191,7,255,255,255,255,208,47,192,191,15,255,255,255,255,208,47,192,191,31,229,95,245,85,64,47,192,191,63,192,11,240,0,0,47,192,191,127,128,11,240,0,0,47,192,191,7,0,11,240,0,0,47,192,191,63,255,255,255,255,252,47,192,191,63,255,255,255,255,252,47,192,191,63,255,255,255,255,252,47,192,191,21,85,95,245,85,84,47,192,191,0,0,11,240,0,0,47,192,191,0,0,11,240,0,0,47,192,191,0,0,11,240,0,0,47,192,191,7,255,255,255,255,240,47,192,191,7,255,255,255,255,240,47,192,191,7,255,255,255,255,240,47,192,191,7,245,95,245,91,240,47,192,191,7,240,11,240,11,240,47,192,191,7,240,11,240,11,240,47,192,191,7,240,11,240,11,240,21,64,191,7,240,11,240,11,240,0,0,191,7,240,11,240,11,240,0,0,191,7,240,11,240,11,240,0,0,191,7,240,11,240,11,240,0,0,191,7,240,11,240,11,240,0,0,191,7,240,11,243,255,224,0,0,191,7,240,11,241,255,208,0,0,191,7,224,11,240,254,64,7,255,255,0,0,11,240,0,0,3,255,254,0,0,11,240,0,0,2,255,252,0,0,11,240,0,0,1,250,144, + // 0x5237 刷 + 55,82,36,37,77,40,1,252,0,0,0,0,0,0,0,0,190,1,85,85,85,85,80,0,0,191,3,255,255,255,255,240,0,0,191,3,255,255,255,255,240,21,0,191,3,255,255,255,255,240,191,0,191,3,244,0,0,11,240,191,0,191,3,244,0,0,11,240,191,0,191,3,244,0,0,11,240,191,0,191,3,244,0,0,11,240,191,0,191,3,255,255,255,255,240,191,0,191,3,255,255,255,255,240,191,0,191,3,255,255,255,255,240,191,0,191,3,249,85,191,85,80,191,0,191,3,244,0,127,0,0,191,0,191,3,244,0,127,0,0,191,0,191,3,244,0,127,0,0,191,0,191,3,244,0,127,0,0,191,0,191,3,251,255,255,255,240,191,0,191,3,251,255,255,255,240,191,0,191,3,251,255,255,255,240,191,0,191,3,251,224,127,3,240,191,0,191,3,247,224,127,3,240,191,0,191,3,247,224,127,3,240,191,0,191,3,247,224,127,3,240,191,0,191,7,243,224,127,3,240,191,0,191,7,243,224,127,3,240,191,0,191,11,227,224,127,3,240,21,0,191,15,227,224,127,3,240,0,0,191,15,211,224,127,3,240,0,0,191,15,195,224,127,191,240,0,0,191,47,195,224,127,63,224,0,0,191,63,131,224,127,63,128,0,0,191,63,65,64,127,0,0,0,0,255,191,0,0,127,0,0,7,255,255,62,0,0,127,0,0,3,255,254,8,0,0,127,0,0,2,255,252,0,0,0,126,0,0,1,234,80, + // 0x5272 割 + 114,82,35,38,86,40,2,252,0,0,42,0,0,0,0,0,0,0,0,127,64,0,0,0,2,252,0,0,127,64,0,0,0,2,252,0,0,127,64,0,0,0,2,252,255,255,255,255,255,192,0,2,252,255,255,255,255,255,195,248,2,252,255,255,255,255,255,195,248,2,252,253,0,0,0,31,195,248,2,252,253,0,63,0,31,195,248,2,252,253,0,63,0,31,195,248,2,252,111,170,255,234,190,131,248,2,252,15,255,255,255,252,3,248,2,252,15,255,255,255,252,3,248,2,252,0,0,63,0,0,3,248,2,252,0,0,63,0,0,3,248,2,252,6,170,191,170,160,3,248,2,252,7,255,255,255,244,3,248,2,252,7,255,255,255,244,3,248,2,252,0,0,63,0,0,3,248,2,252,0,0,63,0,0,3,248,2,252,191,255,255,255,255,131,248,2,252,255,255,255,255,255,131,248,2,252,255,255,255,255,255,131,248,2,252,0,0,0,0,0,3,248,2,252,0,0,0,0,0,3,248,2,252,7,255,255,255,248,3,248,2,252,11,255,255,255,252,3,248,2,252,11,255,255,255,252,0,0,2,252,11,240,0,2,252,0,0,2,252,11,240,0,2,252,0,0,2,252,11,240,0,2,252,0,0,2,252,11,240,0,2,252,0,0,2,252,11,240,0,2,252,0,0,2,252,11,255,255,255,252,0,0,3,252,11,255,255,255,252,0,63,255,252,11,255,255,255,252,0,31,255,248,11,240,0,2,252,0,15,255,240,7,224,0,0,84,0,15,250,64, + // 0x529b 力 + 155,82,34,39,95,40,2,251,0,0,0,10,160,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,47,255,255,255,255,255,255,255,240,47,255,255,255,255,255,255,255,240,47,255,255,255,255,255,255,255,240,47,255,255,255,255,255,255,255,240,0,0,0,31,224,0,0,15,240,0,0,0,31,224,0,0,15,240,0,0,0,47,208,0,0,15,240,0,0,0,47,208,0,0,15,240,0,0,0,63,192,0,0,15,240,0,0,0,63,192,0,0,15,224,0,0,0,127,128,0,0,15,224,0,0,0,255,64,0,0,15,224,0,0,0,255,0,0,0,31,224,0,0,1,255,0,0,0,31,208,0,0,3,253,0,0,0,31,208,0,0,7,252,0,0,0,47,208,0,0,15,248,0,0,0,47,192,0,0,47,240,0,0,0,63,192,0,0,63,224,0,0,0,63,192,0,0,255,192,0,0,0,63,192,0,3,255,64,0,0,0,127,128,0,11,254,0,0,0,0,127,128,0,63,252,0,0,0,0,191,64,0,255,240,0,0,0,0,255,0,7,255,192,0,0,0,3,255,0,47,255,0,0,0,255,255,254,0,127,252,0,0,0,255,255,252,0,31,208,0,0,0,127,255,240,0,11,0,0,0,0,42,170,64,0,0,0,0,0,0,0,0,0,0, + // 0x529f 功 + 159,82,37,37,114,40,1,252,0,0,0,0,0,11,240,0,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,0,11,240,0,0,0,63,255,255,254,0,11,240,0,0,0,63,255,255,254,0,11,240,0,0,0,63,255,255,254,0,11,240,0,0,0,42,171,250,169,0,11,240,0,0,0,0,7,244,0,106,175,250,170,170,0,0,7,244,0,255,255,255,255,255,64,0,7,244,0,255,255,255,255,255,64,0,7,244,0,255,255,255,255,255,64,0,7,244,0,0,15,240,0,127,64,0,7,244,0,0,15,224,0,127,64,0,7,244,0,0,15,224,0,127,64,0,7,244,0,0,31,208,0,127,0,0,7,244,0,0,31,208,0,127,0,0,7,244,0,0,31,208,0,191,0,0,7,244,0,0,47,192,0,191,0,0,7,244,0,0,63,192,0,191,0,0,7,244,0,0,63,192,0,191,0,0,7,244,0,0,63,128,0,191,0,0,7,244,111,64,191,64,0,255,0,0,7,255,255,128,255,0,0,255,0,0,31,255,255,128,255,0,0,255,0,27,255,255,254,66,253,0,0,254,0,127,255,255,144,3,252,0,0,254,0,63,255,144,0,11,248,0,0,254,0,63,228,0,0,31,240,0,1,253,0,20,0,0,0,63,224,0,1,253,0,0,0,0,0,255,192,0,2,252,0,0,0,0,3,255,0,0,3,252,0,0,0,0,31,253,0,0,11,252,0,0,0,0,255,244,0,255,255,244,0,0,0,0,255,208,0,191,255,240,0,0,0,0,63,64,0,127,255,192,0,0,0,0,24,0,0,22,148,0,0, + // 0x52a0 加 + 160,82,36,37,77,40,1,252,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,31,255,255,253,0,11,240,0,0,31,255,255,253,0,11,240,0,0,31,255,255,253,47,255,255,255,252,31,234,170,253,47,255,255,255,252,31,192,0,253,47,255,255,255,252,31,192,0,253,26,175,250,171,248,31,192,0,253,0,11,240,3,248,31,192,0,253,0,15,240,3,248,31,192,0,253,0,15,240,3,248,31,192,0,253,0,15,224,3,248,31,192,0,253,0,15,224,3,248,31,192,0,253,0,15,224,3,248,31,192,0,253,0,15,224,3,248,31,192,0,253,0,15,208,3,248,31,192,0,253,0,31,208,3,248,31,192,0,253,0,31,192,3,248,31,192,0,253,0,47,192,3,244,31,192,0,253,0,63,192,3,244,31,192,0,253,0,63,128,3,244,31,192,0,253,0,63,128,7,244,31,192,0,253,0,127,64,7,244,31,192,0,253,0,191,0,7,244,31,192,0,253,0,255,0,7,240,31,192,0,253,1,254,0,11,240,31,192,0,253,3,252,0,11,240,31,234,170,253,7,248,0,15,240,31,255,255,253,15,244,0,15,240,31,255,255,253,47,240,106,191,224,31,255,255,253,127,208,63,255,208,31,192,0,253,127,128,63,255,128,31,192,0,253,15,0,47,253,0,31,192,0,169,4,0,0,0,0,0,0,0,0, + // 0x52a8 动 + 168,82,36,37,77,40,2,252,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,5,85,85,85,64,2,252,0,0,31,255,255,255,192,2,252,0,0,31,255,255,255,192,2,252,0,0,31,255,255,255,192,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,6,171,254,170,169,0,0,0,0,15,255,255,255,254,0,0,0,0,15,255,255,255,254,0,0,0,0,15,255,255,255,254,255,255,255,255,224,3,252,0,254,255,255,255,255,224,3,248,0,254,255,255,255,255,224,3,248,0,254,85,127,229,85,80,3,248,0,254,0,63,192,0,0,3,244,0,253,0,63,128,0,0,7,244,0,253,0,127,64,4,0,7,244,0,253,0,191,0,252,0,11,240,1,253,0,255,0,254,0,11,240,1,253,0,254,0,127,0,15,240,1,253,1,252,0,63,64,15,224,1,252,2,252,0,47,128,31,208,1,252,3,248,0,31,192,47,192,2,252,7,240,0,111,208,63,192,2,252,15,240,111,255,224,63,128,2,252,31,255,255,255,240,191,64,3,252,63,255,255,251,244,255,0,3,252,63,255,249,3,249,254,0,3,248,63,249,0,2,147,252,0,3,248,46,64,0,0,11,252,0,7,244,0,0,0,0,31,244,0,15,240,0,0,0,0,127,224,255,255,240,0,0,0,0,191,192,191,255,208,0,0,0,0,31,0,127,255,128,0,0,0,0,9,0,26,164,0, + // 0x5316 化 + 22,83,38,37,114,40,1,252,0,0,3,144,11,240,0,0,0,0,0,0,11,248,11,240,0,0,0,0,0,0,15,240,11,240,0,0,0,0,0,0,47,224,11,240,0,0,0,0,0,0,63,192,11,240,0,0,0,0,0,0,255,128,11,240,0,0,0,0,0,1,255,0,11,240,0,0,0,0,0,3,254,0,11,240,0,0,160,0,0,11,252,0,11,240,0,2,244,0,0,31,244,0,11,240,0,15,253,0,0,63,244,0,11,240,0,127,253,0,0,255,244,0,11,240,2,255,240,0,2,255,244,0,11,240,31,255,128,0,11,255,244,0,11,240,255,252,0,0,47,255,244,0,11,251,255,208,0,0,191,247,244,0,11,255,254,0,0,0,255,215,244,0,11,255,224,0,0,0,63,71,244,0,11,255,64,0,0,0,45,7,244,0,11,244,0,0,0,0,4,7,244,0,11,240,0,0,0,0,0,7,244,0,11,240,0,0,0,0,0,7,244,0,11,240,0,0,0,0,0,7,244,0,11,240,0,0,0,0,0,7,244,0,11,240,0,0,0,0,0,7,244,0,11,240,0,0,0,0,0,7,244,0,11,240,0,0,4,0,0,7,244,0,11,240,0,0,15,128,0,7,244,0,11,240,0,0,15,224,0,7,244,0,11,240,0,0,15,208,0,7,244,0,11,240,0,0,15,208,0,7,244,0,11,240,0,0,31,192,0,7,244,0,11,244,0,0,63,192,0,7,244,0,7,254,85,86,255,128,0,7,244,0,3,255,255,255,255,64,0,7,244,0,2,255,255,255,254,0,0,7,244,0,0,111,255,255,244,0,0,2,160,0,0,0,0,0,0,0, + // 0x5347 升 + 71,83,36,37,77,40,2,252,0,0,0,1,244,0,254,0,0,0,0,0,31,252,0,254,0,0,0,0,2,255,255,0,254,0,0,0,0,127,255,248,0,254,0,0,0,31,255,255,128,0,254,0,0,27,255,255,228,0,0,254,0,0,127,255,255,128,0,0,254,0,0,63,254,127,128,0,0,254,0,0,30,64,63,128,0,0,254,0,0,0,0,63,128,0,0,254,0,0,0,0,63,128,0,0,254,0,0,0,0,63,128,0,0,254,0,0,0,0,63,128,0,0,254,0,0,0,0,63,128,0,0,254,0,0,0,0,63,128,0,0,254,0,0,170,170,191,234,170,170,255,170,170,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,127,64,0,0,254,0,0,0,0,127,64,0,0,254,0,0,0,0,191,0,0,0,254,0,0,0,0,191,0,0,0,254,0,0,0,0,255,0,0,0,254,0,0,0,0,255,0,0,0,254,0,0,0,2,253,0,0,0,254,0,0,0,3,252,0,0,0,254,0,0,0,11,252,0,0,0,254,0,0,0,15,244,0,0,0,254,0,0,0,63,240,0,0,0,254,0,0,0,255,192,0,0,0,254,0,0,3,255,128,0,0,0,254,0,0,15,254,0,0,0,0,254,0,0,191,248,0,0,0,0,254,0,0,191,224,0,0,0,0,254,0,0,47,64,0,0,0,0,254,0,0,8,0,0,0,0,0,253,0,0, + // 0x534a 半 + 74,83,36,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,9,0,0,255,0,0,164,0,0,191,0,0,255,0,0,255,64,0,255,64,0,255,0,1,255,0,0,127,192,0,255,0,3,253,0,0,47,224,0,255,0,7,252,0,0,15,240,0,255,0,15,244,0,0,11,248,0,255,0,31,240,0,0,3,252,0,255,0,63,208,0,0,3,253,0,255,0,191,128,0,0,1,253,0,255,0,191,0,0,0,0,128,0,255,0,5,0,0,0,0,0,0,255,0,0,0,0,2,170,170,170,255,170,170,170,144,7,255,255,255,255,255,255,255,224,7,255,255,255,255,255,255,255,224,7,255,255,255,255,255,255,255,224,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,171,255,170,170,170,170,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0, + // 0x534f 协 + 79,83,37,38,124,40,2,252,0,190,0,0,0,84,0,0,0,0,0,254,0,0,1,252,0,0,0,0,0,254,0,0,1,252,0,0,0,0,0,254,0,0,1,252,0,0,0,0,0,254,0,0,1,252,0,0,0,0,0,254,0,0,1,252,0,0,0,0,0,254,0,0,1,252,0,0,0,0,0,254,0,0,1,252,0,0,0,0,0,254,0,63,255,255,255,253,0,0,85,255,85,63,255,255,255,253,0,0,255,255,255,63,255,255,255,253,0,0,255,255,255,42,171,254,170,253,0,0,255,255,255,0,2,252,1,252,0,0,0,254,0,0,2,252,1,252,0,0,0,254,0,0,3,248,1,252,0,0,0,254,0,62,3,248,1,254,176,0,0,254,0,127,3,248,1,255,244,0,0,254,0,191,3,244,1,254,252,0,0,254,0,254,7,244,1,253,252,0,0,254,0,253,7,240,2,252,253,0,0,254,1,252,11,240,2,252,254,0,0,254,3,252,15,240,2,252,191,0,0,254,3,244,31,224,2,252,127,0,0,254,11,240,47,192,2,252,63,0,0,254,31,224,63,192,2,252,63,64,0,254,15,192,127,128,3,252,63,128,0,254,2,128,255,0,3,248,47,128,0,254,0,1,255,0,3,248,24,0,0,254,0,3,253,0,3,248,0,0,0,254,0,11,252,0,3,248,0,0,0,254,0,31,244,0,3,244,0,0,0,254,0,63,224,0,7,244,0,0,0,254,0,255,192,0,11,240,0,0,0,254,3,255,64,0,31,240,0,0,0,254,15,253,0,255,255,224,0,0,0,254,31,248,0,191,255,192,0,0,0,254,7,224,0,127,255,64,0,0,0,190,1,128,0,21,80,0,0,0, + // 0x5355 单 + 85,83,36,38,86,40,2,252,0,0,20,0,0,0,4,0,0,0,1,253,0,0,0,47,208,0,0,1,255,0,0,0,63,208,0,0,0,191,192,0,0,255,128,0,0,0,63,224,0,1,255,0,0,0,0,15,240,0,3,253,0,0,0,0,11,224,0,11,248,0,0,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,254,0,0,255,0,0,127,64,0,254,0,0,255,0,0,127,64,0,254,0,0,255,0,0,127,64,0,254,0,0,255,0,0,127,64,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,254,0,0,255,0,0,127,64,0,254,0,0,255,0,0,127,64,0,254,0,0,255,0,0,127,64,0,254,0,0,255,0,0,127,64,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,85,255,85,85,85,85,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,170,0,0,0,0, + // 0x5361 卡 + 97,83,36,38,86,40,2,252,0,0,0,2,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,254,170,170,169,0,0,0,0,3,255,255,255,254,0,0,0,0,3,255,255,255,254,0,0,0,0,3,255,255,255,254,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,171,254,170,170,170,170,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,64,0,0,0,0,0,0,3,255,249,0,0,0,0,0,0,3,255,255,228,0,0,0,0,0,3,255,255,255,144,0,0,0,0,3,252,111,255,253,0,0,0,0,3,252,1,255,255,192,0,0,0,3,252,0,11,255,128,0,0,0,3,252,0,0,127,0,0,0,0,3,252,0,0,5,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,2,252,0,0,0,0, + // 0x5370 印 + 112,83,33,38,86,40,4,252,0,0,1,64,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,2,255,244,0,0,0,0,0,0,127,255,248,63,255,255,255,192,251,255,255,128,63,255,255,255,192,255,255,228,0,63,255,255,255,192,255,249,0,0,63,234,170,191,192,255,64,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,255,255,244,63,128,0,63,192,255,255,255,244,63,128,0,63,192,255,255,255,244,63,128,0,63,192,255,170,170,160,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,255,255,244,63,128,0,63,192,255,255,255,244,63,129,255,255,128,255,255,255,244,63,128,255,255,128,255,170,170,164,63,128,191,255,0,255,0,0,0,63,128,63,228,0,255,0,0,0,63,128,0,0,0,255,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,42,64,0,0,0, + // 0x5371 危 + 113,83,37,38,124,40,1,252,0,0,3,148,0,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,0,15,248,0,0,0,0,0,0,0,0,47,255,255,255,208,0,0,0,0,0,63,255,255,255,248,0,0,0,0,0,255,255,255,255,244,0,0,0,0,2,255,0,0,47,240,0,0,0,0,7,253,0,0,63,192,0,0,0,0,31,248,0,0,255,128,0,0,0,0,127,245,85,86,255,85,85,85,0,1,255,255,255,255,255,255,255,255,64,11,255,255,255,255,255,255,255,255,64,47,255,255,255,255,255,255,255,255,64,127,255,208,0,0,0,0,0,0,0,31,223,208,0,0,0,0,0,0,0,7,31,208,0,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,0,31,208,63,255,255,255,253,0,0,0,31,208,63,255,255,255,253,0,0,0,31,208,63,255,255,255,253,0,0,0,31,208,63,128,0,1,253,0,0,0,31,192,63,128,0,1,252,0,0,0,47,192,63,128,0,2,252,0,0,0,47,192,63,128,0,2,252,0,0,0,63,192,63,128,0,3,252,0,0,0,63,128,63,128,0,7,248,0,0,0,63,64,63,128,31,255,244,0,0,0,127,64,63,128,15,255,240,0,0,0,191,0,63,128,15,255,128,8,0,0,255,0,63,128,0,0,0,31,192,2,253,0,63,128,0,0,0,31,192,3,252,0,63,128,0,0,0,47,192,11,248,0,63,128,0,0,0,63,192,15,240,0,63,208,0,0,0,191,128,63,224,0,47,255,255,255,255,255,64,127,192,0,15,255,255,255,255,255,0,15,64,0,7,255,255,255,255,248,0,1,0,0,0,21,85,85,85,64,0, + // 0x5374 却 + 116,83,36,38,86,40,1,252,0,0,42,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,10,170,170,169,0,0,63,64,0,31,255,255,254,0,0,63,64,0,31,255,255,254,0,0,63,64,0,31,255,255,254,5,85,127,149,84,31,192,0,254,15,255,255,255,252,31,192,0,254,15,255,255,255,252,31,192,0,254,15,255,255,255,252,31,192,0,254,0,0,63,64,0,31,192,0,254,0,0,63,64,0,31,192,0,254,0,0,63,64,0,31,192,0,254,0,0,63,64,0,31,192,0,254,0,0,63,64,0,31,192,0,254,0,0,63,64,0,31,192,0,254,127,255,255,255,255,95,192,0,254,127,255,255,255,255,95,192,0,254,127,255,255,255,255,95,192,0,254,21,91,253,85,85,31,192,0,254,0,11,248,0,0,31,192,0,254,0,15,240,0,0,31,192,0,254,0,15,240,0,0,31,192,0,254,0,31,224,27,0,31,192,0,254,0,47,192,127,64,31,192,0,254,0,63,192,63,192,31,192,0,254,0,127,64,31,224,31,192,0,254,0,191,0,11,240,31,193,255,254,0,254,0,3,248,31,192,255,253,1,254,106,255,252,31,192,255,252,127,255,255,255,254,31,192,191,208,63,255,255,255,255,31,192,0,0,63,255,255,165,191,95,192,0,0,62,165,0,0,63,159,192,0,0,0,0,0,0,46,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0,0,0,0,0,0,31,192,0,0, + // 0x5378 卸 + 120,83,36,38,86,40,1,252,0,10,64,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,47,192,0,0,5,85,85,85,0,63,128,0,0,15,255,255,255,0,127,149,85,84,15,255,255,255,0,255,255,255,254,15,255,255,255,1,255,255,255,254,15,208,0,191,3,255,255,255,254,15,208,0,191,11,244,31,192,0,15,208,0,191,31,240,31,192,0,15,208,0,191,63,208,31,192,0,15,208,0,191,11,128,31,192,0,15,208,0,191,1,0,31,192,0,15,208,0,191,63,255,255,255,255,79,208,0,191,63,255,255,255,255,79,208,0,191,63,255,255,255,255,79,208,0,191,21,85,111,213,85,15,208,0,191,0,0,31,192,0,15,208,0,191,0,0,31,192,0,15,208,0,191,2,244,31,192,0,15,208,0,191,3,244,31,192,0,15,208,0,191,3,244,31,255,252,15,208,0,191,3,244,31,255,252,15,208,0,191,3,244,31,255,252,15,208,0,191,3,244,31,192,0,15,208,0,191,3,244,31,192,0,15,208,0,191,3,244,31,192,0,15,208,0,191,3,244,31,192,0,15,208,0,255,3,244,31,192,0,15,208,255,255,3,244,31,192,26,79,208,191,254,3,244,31,255,255,79,208,127,252,3,255,255,255,255,79,208,62,144,127,255,255,255,255,79,208,0,0,127,255,255,249,64,15,208,0,0,127,255,148,0,0,15,208,0,0,57,64,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0, + // 0x538b 压 + 139,83,37,36,104,40,1,252,1,255,255,255,255,255,255,255,255,192,1,255,255,255,255,255,255,255,255,192,1,255,255,255,255,255,255,255,255,192,1,254,170,170,170,170,170,170,170,128,1,252,0,0,0,0,0,0,0,0,1,252,0,0,0,85,0,0,0,0,1,252,0,0,0,254,0,0,0,0,1,252,0,0,0,254,0,0,0,0,1,252,0,0,0,254,0,0,0,0,1,252,0,0,0,254,0,0,0,0,1,252,0,0,0,254,0,0,0,0,1,252,0,0,0,254,0,0,0,0,1,252,0,0,0,254,0,0,0,0,1,252,0,0,0,254,0,0,0,0,1,252,47,255,255,255,255,255,252,0,1,252,47,255,255,255,255,255,252,0,1,252,47,255,255,255,255,255,252,0,1,252,26,170,170,255,170,170,168,0,2,252,0,0,0,254,0,0,0,0,2,252,0,0,0,254,0,0,0,0,2,252,0,0,0,254,1,224,0,0,2,248,0,0,0,254,7,248,0,0,3,248,0,0,0,254,3,254,0,0,3,248,0,0,0,254,0,255,128,0,3,244,0,0,0,254,0,63,224,0,7,244,0,0,0,254,0,15,244,0,7,240,0,0,0,254,0,3,224,0,11,240,0,0,0,254,0,1,64,0,15,224,0,0,0,254,0,0,0,0,15,224,0,0,0,254,0,0,0,0,47,210,170,170,170,255,170,170,170,64,63,195,255,255,255,255,255,255,255,192,127,131,255,255,255,255,255,255,255,192,127,67,255,255,255,255,255,255,255,192,31,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0, + // 0x539f 原 + 159,83,37,36,104,40,1,252,0,255,255,255,255,255,255,255,255,128,0,255,255,255,255,255,255,255,255,128,0,255,255,255,255,255,255,255,255,128,0,255,85,85,86,255,85,85,85,64,0,254,0,0,1,255,0,0,0,0,0,254,0,0,2,254,0,0,0,0,0,254,0,0,3,253,0,0,0,0,0,254,3,255,255,255,255,255,224,0,0,254,3,255,255,255,255,255,224,0,0,254,3,255,255,255,255,255,224,0,0,254,3,248,0,0,0,15,224,0,0,254,3,248,0,0,0,15,224,0,0,254,3,248,0,0,0,15,224,0,0,254,3,254,170,170,170,191,224,0,0,254,3,255,255,255,255,255,224,0,0,254,3,255,255,255,255,255,224,0,0,254,3,248,0,0,0,15,224,0,0,254,3,248,0,0,0,15,224,0,0,254,3,248,0,0,0,15,224,0,0,253,3,255,255,255,255,255,224,0,1,253,3,255,255,255,255,255,224,0,1,253,3,255,255,255,255,255,224,0,1,252,0,0,0,191,0,0,0,0,2,252,0,0,0,191,0,0,0,0,3,252,0,62,64,191,0,184,0,0,3,248,0,127,192,191,3,254,0,0,3,248,0,255,0,191,1,255,128,0,7,244,3,254,0,191,0,63,224,0,11,240,11,252,0,191,0,31,248,0,15,240,47,240,0,191,0,7,253,0,15,224,191,208,0,191,0,1,255,0,47,211,255,64,0,191,0,0,191,192,63,195,253,1,65,255,0,0,63,128,127,128,180,3,255,255,0,0,13,0,47,0,0,1,255,253,0,0,0,0,2,0,0,0,255,228,0,0,0,0, + // 0x53cc 双 + 204,83,37,35,94,40,1,252,10,170,170,169,2,170,170,170,164,0,31,255,255,255,199,255,255,255,255,0,31,255,255,255,199,255,255,255,254,0,31,255,255,255,199,255,255,255,253,0,0,0,0,63,194,252,0,1,253,0,0,0,0,63,129,252,0,2,252,0,0,0,0,63,128,253,0,2,252,0,0,0,0,127,64,254,0,3,252,0,1,192,0,191,0,255,0,3,248,0,11,240,0,191,0,191,0,7,244,0,15,248,0,255,0,127,0,11,240,0,3,254,0,254,0,63,64,15,240,0,1,255,65,253,0,63,128,15,224,0,0,127,195,252,0,63,192,47,208,0,0,47,243,252,0,47,192,63,192,0,0,15,255,248,0,15,208,127,128,0,0,3,255,244,0,15,240,191,64,0,0,1,255,240,0,11,240,255,0,0,0,0,255,224,0,7,250,254,0,0,0,0,63,224,0,3,255,252,0,0,0,0,127,240,0,2,255,248,0,0,0,0,191,252,0,0,255,240,0,0,0,0,255,254,0,0,191,224,0,0,0,2,255,255,0,0,191,192,0,0,0,7,252,255,128,1,255,224,0,0,0,15,248,63,208,7,255,244,0,0,0,47,240,47,240,31,255,252,0,0,0,127,208,15,192,127,247,255,0,0,1,255,128,11,1,255,208,255,192,0,3,255,0,0,11,255,64,127,240,0,15,253,0,0,127,253,0,47,254,0,127,244,0,2,255,244,0,11,255,192,63,224,0,0,255,128,0,1,255,64,15,64,0,0,125,0,0,0,62,0,1,0,0,0,32,0,0,0,8,0, + // 0x53cd 反 + 205,83,36,36,68,40,2,252,0,42,170,170,170,170,170,170,160,0,127,255,255,255,255,255,255,240,0,127,255,255,255,255,255,255,240,0,127,255,255,255,255,255,255,240,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,255,255,255,255,255,253,0,0,127,255,255,255,255,255,255,0,0,127,255,255,255,255,255,254,0,0,127,239,254,170,170,171,253,0,0,127,67,252,0,0,3,252,0,0,127,66,253,0,0,11,248,0,0,127,1,255,0,0,15,240,0,0,191,0,255,64,0,47,224,0,0,191,0,127,192,0,63,208,0,0,255,0,63,208,0,255,192,0,0,255,0,31,244,2,255,0,0,0,254,0,11,252,11,254,0,0,0,253,0,3,255,31,252,0,0,1,253,0,1,255,255,240,0,0,2,252,0,0,191,255,208,0,0,3,252,0,0,47,255,64,0,0,3,248,0,0,47,255,64,0,0,11,244,0,1,255,255,240,0,0,15,240,0,15,255,255,254,0,0,31,224,1,255,254,31,255,228,0,63,208,111,255,244,3,255,255,144,127,195,255,255,128,0,127,255,253,191,65,255,248,0,0,7,255,252,31,0,191,64,0,0,0,111,240,0,0,32,0,0,0,0,1,144, + // 0x53d6 取 + 214,83,38,36,104,40,1,252,21,85,85,85,85,64,0,0,0,0,63,255,255,255,255,128,0,0,0,0,63,255,255,255,255,128,0,0,0,0,63,255,255,255,255,234,170,170,169,0,0,254,0,11,241,255,255,255,255,64,0,254,0,11,241,255,255,255,255,0,0,254,0,11,241,255,255,255,255,0,0,254,0,11,240,26,0,0,255,0,0,254,0,11,240,255,0,0,254,0,0,255,255,255,240,191,0,0,254,0,0,255,255,255,240,127,64,1,253,0,0,255,255,255,240,63,128,2,252,0,0,254,85,95,240,63,192,3,252,0,0,254,0,11,240,47,192,3,248,0,0,254,0,11,240,31,208,7,244,0,0,254,0,11,240,15,224,11,240,0,0,254,0,11,240,15,240,15,240,0,0,254,85,95,240,11,244,31,224,0,0,255,255,255,240,3,248,47,192,0,0,255,255,255,240,3,252,63,192,0,0,255,255,255,240,1,253,191,128,0,0,254,0,11,240,0,255,255,0,0,0,254,0,11,240,0,191,254,0,0,0,254,0,11,240,0,63,252,0,0,0,254,0,11,240,0,47,248,0,0,0,254,0,111,240,0,47,244,0,0,0,255,255,255,240,0,127,253,0,0,191,255,255,255,240,0,255,255,0,0,191,255,255,255,240,3,255,255,192,0,127,255,229,11,240,15,252,127,240,0,62,80,0,11,240,127,240,31,252,0,0,0,0,11,242,255,192,11,255,128,0,0,0,11,255,255,64,2,255,224,0,0,0,11,243,248,0,0,127,192,0,0,0,11,241,208,0,0,15,0,0,0,0,11,224,0,0,0,0,0, + // 0x53d8 变 + 216,83,36,38,86,40,2,252,0,0,0,1,188,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,191,192,0,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,21,85,86,253,85,127,149,85,84,0,0,2,252,0,127,64,0,0,0,15,146,252,0,127,66,128,0,0,31,210,252,0,127,95,224,0,0,63,194,252,0,127,79,248,0,0,191,66,252,0,127,67,254,0,0,255,2,252,0,127,64,255,128,3,253,2,252,0,127,64,63,208,15,248,2,252,0,127,64,31,240,31,240,2,252,0,127,64,7,248,7,192,2,252,0,127,64,2,208,0,0,2,252,0,127,64,0,0,0,0,1,168,0,42,64,0,0,0,0,0,0,0,0,0,64,0,2,255,255,255,255,255,255,244,0,2,255,255,255,255,255,255,252,0,2,255,255,255,255,255,255,244,0,0,3,252,0,0,0,63,224,0,0,1,255,0,0,0,255,192,0,0,0,127,192,0,3,255,0,0,0,0,47,244,0,31,252,0,0,0,0,11,255,0,191,240,0,0,0,0,1,255,235,255,128,0,0,0,0,0,63,255,253,0,0,0,0,0,0,31,255,244,0,0,0,0,0,27,255,255,255,208,0,0,0,26,255,255,235,255,255,148,0,111,255,255,253,0,191,255,255,249,127,255,255,64,0,6,255,255,253,63,254,144,0,0,0,6,255,252,30,64,0,0,0,0,0,5,176, + // 0x53f0 台 + 240,83,36,38,86,40,2,252,0,0,0,120,0,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,253,0,0,16,0,0,0,0,11,252,0,0,184,0,0,0,0,15,244,0,3,254,0,0,0,0,47,224,0,2,255,192,0,0,0,63,192,0,0,191,240,0,0,0,255,64,0,0,31,252,0,0,1,255,0,0,0,7,255,0,0,3,254,86,170,191,255,255,128,127,255,255,255,255,255,255,255,224,127,255,255,255,255,255,255,255,244,63,255,255,255,255,255,234,175,252,63,250,169,85,0,0,0,3,255,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,0,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,170,170,170,170,170,164,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,234,170,170,170,171,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,192,0,0,0,3,252,0,0,42,128,0,0,0,2,168,0, + // 0x5403 吃 + 3,84,36,37,77,40,3,253,0,0,0,0,9,64,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,255,255,252,0,191,64,0,0,0,255,255,252,0,255,0,0,0,0,255,255,252,1,255,255,255,255,248,255,170,252,3,255,255,255,255,248,253,1,252,7,255,255,255,255,248,253,1,252,15,249,85,85,85,84,253,1,252,47,224,0,0,0,0,253,1,252,127,192,0,0,0,0,253,1,253,255,128,0,0,0,0,253,1,254,255,0,0,0,0,0,253,1,252,189,85,85,85,84,0,253,1,252,20,255,255,255,255,64,253,1,252,0,255,255,255,255,64,253,1,252,0,255,255,255,253,0,253,1,252,0,0,0,191,240,0,253,1,252,0,0,2,255,192,0,253,1,252,0,0,11,254,0,0,253,1,252,0,0,63,248,0,0,253,1,252,0,0,255,208,0,0,253,1,252,0,3,255,64,0,0,255,255,252,0,15,252,0,0,0,255,255,252,0,63,240,0,0,0,255,255,252,0,255,192,0,0,0,255,170,168,2,255,0,0,0,64,253,0,0,7,252,0,0,0,249,253,0,0,15,240,0,0,0,254,253,0,0,31,208,0,0,0,253,0,0,0,47,192,0,0,0,253,0,0,0,63,192,0,0,1,252,0,0,0,47,254,170,170,171,252,0,0,0,31,255,255,255,255,248,0,0,0,7,255,255,255,255,240,0,0,0,0,191,255,255,255,128, + // 0x5408 合 + 8,84,38,38,124,40,1,252,0,0,0,0,106,128,0,0,0,0,0,0,0,0,255,224,0,0,0,0,0,0,0,2,255,244,0,0,0,0,0,0,0,7,255,252,0,0,0,0,0,0,0,31,251,255,0,0,0,0,0,0,0,63,240,255,192,0,0,0,0,0,0,255,192,127,240,0,0,0,0,0,3,255,64,31,252,0,0,0,0,0,15,253,0,7,255,64,0,0,0,0,127,244,0,1,255,208,0,0,0,1,255,208,0,0,127,248,0,0,0,11,255,64,0,0,15,255,64,0,0,63,253,0,0,0,3,255,224,0,2,255,249,85,85,85,85,255,254,0,31,255,127,255,255,255,255,223,255,208,127,252,63,255,255,255,255,195,255,208,47,208,63,255,255,255,255,192,127,128,15,0,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,0,0,0,0,0,0,0,0,0,0,1,85,85,85,85,85,84,0,0,0,3,255,255,255,255,255,253,0,0,0,3,255,255,255,255,255,253,0,0,0,3,255,255,255,255,255,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,255,255,255,255,255,253,0,0,0,3,255,255,255,255,255,253,0,0,0,3,255,255,255,255,255,253,0,0,0,3,249,85,85,85,86,253,0,0,0,3,244,0,0,0,1,253,0,0, + // 0x540d 名 + 13,84,35,38,86,40,1,252,0,0,0,46,144,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,7,255,255,255,255,0,0,0,0,31,255,255,255,255,192,0,0,0,63,255,255,255,255,128,0,0,1,255,213,85,85,255,0,0,0,7,255,0,0,2,255,0,0,0,31,252,0,0,3,253,0,0,0,191,253,0,0,15,248,0,0,7,255,255,128,0,31,240,0,0,47,255,255,240,0,63,208,0,0,63,248,63,252,0,255,192,0,0,15,208,11,255,3,255,0,0,0,6,0,2,255,203,253,0,0,0,0,0,0,127,255,244,0,0,0,0,0,0,31,255,224,0,0,0,0,0,0,11,255,128,0,0,0,0,0,0,31,254,0,0,0,0,0,0,0,191,255,255,255,255,244,0,0,7,255,255,255,255,255,244,0,0,63,255,255,255,255,255,244,0,2,255,254,85,85,85,91,244,0,111,255,254,0,0,0,7,244,11,255,254,254,0,0,0,7,244,127,255,224,254,0,0,0,7,244,47,254,0,254,0,0,0,7,244,15,208,0,254,0,0,0,7,244,5,0,0,254,0,0,0,7,244,0,0,0,254,0,0,0,7,244,0,0,0,254,0,0,0,7,244,0,0,0,254,85,85,85,91,244,0,0,0,255,255,255,255,255,244,0,0,0,255,255,255,255,255,244,0,0,0,255,255,255,255,255,244,0,0,0,254,0,0,0,7,244,0,0,0,169,0,0,0,7,244, + // 0x540e 后 + 14,84,38,38,124,40,1,252,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,26,255,64,0,0,0,0,0,5,175,255,255,208,0,0,41,21,175,255,255,255,255,224,0,0,63,255,255,255,255,255,228,0,0,0,63,255,255,255,250,80,0,0,0,0,63,255,233,80,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,234,170,170,170,170,170,170,144,0,63,255,255,255,255,255,255,255,208,0,63,255,255,255,255,255,255,255,208,0,63,255,255,255,255,255,255,255,208,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,0,127,64,85,85,85,85,85,80,0,0,127,65,255,255,255,255,255,240,0,0,191,1,255,255,255,255,255,240,0,0,191,1,255,255,255,255,255,240,0,0,255,1,252,0,0,0,11,240,0,0,255,1,252,0,0,0,11,240,0,0,254,1,252,0,0,0,11,240,0,1,254,1,252,0,0,0,11,240,0,2,253,1,252,0,0,0,11,240,0,3,252,1,252,0,0,0,11,240,0,3,248,1,252,0,0,0,11,240,0,11,244,1,252,0,0,0,11,240,0,15,240,1,254,85,85,85,95,240,0,47,224,1,255,255,255,255,255,240,0,63,192,1,255,255,255,255,255,240,0,127,128,1,255,255,255,255,255,240,0,31,0,1,252,0,0,0,11,240,0,5,0,1,252,0,0,0,11,240,0, + // 0x5411 向 + 17,84,33,38,86,40,4,252,0,0,0,58,64,0,0,0,0,0,0,0,127,224,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,3,252,0,0,0,0,0,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,64,255,170,170,170,170,170,170,255,64,254,0,0,0,0,0,0,127,64,254,0,0,0,0,0,0,127,64,254,0,0,0,0,0,0,127,64,254,0,0,0,0,0,0,127,64,254,0,21,85,85,84,0,127,64,254,0,255,255,255,254,0,127,64,254,0,255,255,255,254,0,127,64,254,0,255,255,255,254,0,127,64,254,0,254,0,0,190,0,127,64,254,0,254,0,0,190,0,127,64,254,0,254,0,0,190,0,127,64,254,0,254,0,0,190,0,127,64,254,0,254,0,0,190,0,127,64,254,0,254,0,0,190,0,127,64,254,0,254,0,0,190,0,127,64,254,0,255,255,255,254,0,127,64,254,0,255,255,255,254,0,127,64,254,0,255,255,255,254,0,127,64,254,0,254,85,85,84,0,127,64,254,0,254,0,0,0,0,127,64,254,0,254,0,0,0,0,127,64,254,0,0,0,0,0,0,127,64,254,0,0,0,0,0,0,191,0,254,0,0,0,0,31,255,255,0,254,0,0,0,0,15,255,255,0,254,0,0,0,0,11,255,253,0,253,0,0,0,0,7,250,144,0, + // 0x5426 否 + 38,84,37,36,104,40,1,252,5,85,85,85,85,85,85,85,85,0,15,255,255,255,255,255,255,255,255,64,15,255,255,255,255,255,255,255,255,64,15,255,255,255,255,255,255,255,255,64,0,0,0,0,15,252,0,0,0,0,0,0,0,0,127,244,0,0,0,0,0,0,0,1,255,208,0,0,0,0,0,0,0,11,255,192,0,0,0,0,0,0,0,127,255,193,253,0,0,0,0,0,2,255,255,199,255,208,0,0,0,0,47,255,191,194,255,248,0,0,0,2,255,252,63,192,47,255,128,0,0,47,255,224,63,192,2,255,244,0,7,255,255,0,63,192,0,63,255,0,127,255,244,0,63,192,0,7,255,192,47,255,64,0,63,192,0,0,191,64,15,244,0,0,63,192,0,0,29,0,2,0,0,0,63,192,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,255,64,0,0,15,255,255,255,255,255,255,64,0,0,15,255,255,255,255,255,255,64,0,0,15,240,0,0,0,0,255,64,0,0,15,240,0,0,0,0,191,64,0,0,15,240,0,0,0,0,191,64,0,0,15,240,0,0,0,0,191,64,0,0,15,240,0,0,0,0,191,64,0,0,15,240,0,0,0,0,191,64,0,0,15,240,0,0,0,0,191,64,0,0,15,240,0,0,0,0,255,64,0,0,15,255,255,255,255,255,255,64,0,0,15,255,255,255,255,255,255,64,0,0,15,255,255,255,255,255,255,64,0,0,15,240,0,0,0,0,191,64,0,0,15,224,0,0,0,0,170,0,0, + // 0x542f 启 + 47,84,34,38,86,40,2,252,0,0,0,0,0,0,0,80,0,0,0,0,0,0,5,191,244,0,0,0,0,1,107,255,255,253,0,0,69,175,255,255,255,255,249,0,1,255,255,255,255,255,228,0,0,1,255,255,255,234,80,0,0,0,1,255,169,64,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,255,255,255,255,255,255,255,192,1,255,255,255,255,255,255,255,192,1,255,255,255,255,255,255,255,192,1,253,0,0,0,0,0,63,192,1,253,0,0,0,0,0,63,192,1,253,0,0,0,0,0,63,192,1,253,0,0,0,0,0,63,192,1,253,0,0,0,0,0,63,192,1,255,255,255,255,255,255,255,192,1,255,255,255,255,255,255,255,192,1,255,255,255,255,255,255,255,192,1,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,63,255,255,255,255,255,208,3,248,63,255,255,255,255,255,208,3,248,63,255,255,255,255,255,208,7,244,63,64,0,0,0,31,208,11,240,63,64,0,0,0,31,208,15,240,63,64,0,0,0,31,208,15,224,63,64,0,0,0,31,208,47,208,63,64,0,0,0,31,208,63,192,63,64,0,0,0,31,208,191,128,63,255,255,255,255,255,208,255,0,63,255,255,255,255,255,208,190,0,63,255,255,255,255,255,208,28,0,63,64,0,0,0,31,208,4,0,63,64,0,0,0,26,144, + // 0x544a 告 + 74,84,36,39,95,40,2,251,0,0,0,0,42,128,0,0,0,0,3,248,0,63,192,0,0,0,0,3,252,0,63,192,0,0,0,0,11,248,0,63,192,0,0,0,0,15,240,0,63,192,0,0,0,0,31,224,0,63,192,0,0,0,0,63,255,255,255,255,255,255,128,0,191,255,255,255,255,255,255,128,0,255,255,255,255,255,255,255,128,3,254,85,85,127,213,85,85,64,11,252,0,0,63,192,0,0,0,31,244,0,0,63,192,0,0,0,63,224,0,0,63,192,0,0,0,7,192,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,21,85,85,85,85,85,85,85,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,252,0,0,47,255,255,255,255,255,252,0,0,47,255,255,255,255,255,252,0,0,47,229,85,85,85,87,252,0,0,47,192,0,0,0,2,252,0,0,47,192,0,0,0,2,252,0,0,47,192,0,0,0,2,252,0,0,47,192,0,0,0,2,252,0,0,47,192,0,0,0,2,252,0,0,47,192,0,0,0,2,252,0,0,47,213,85,85,85,87,252,0,0,47,255,255,255,255,255,252,0,0,47,255,255,255,255,255,252,0,0,47,255,255,255,255,255,252,0,0,47,192,0,0,0,2,252,0,0,47,192,0,0,0,2,252,0,0,0,0,0,0,0,0,0,0, + // 0x5468 周 + 104,84,35,37,77,40,1,251,0,127,255,255,255,255,255,255,244,0,127,255,255,255,255,255,255,244,0,127,255,255,255,255,255,255,244,0,127,149,85,85,85,85,91,244,0,127,64,0,26,128,0,7,244,0,127,64,0,47,192,0,7,244,0,127,64,0,47,192,0,7,244,0,127,64,0,47,192,0,7,244,0,127,67,255,255,255,255,7,244,0,127,67,255,255,255,255,7,244,0,127,67,255,255,255,255,7,244,0,127,64,0,47,192,0,7,244,0,127,64,0,47,192,0,7,244,0,127,64,0,47,192,0,7,244,0,127,79,255,255,255,255,135,244,0,127,79,255,255,255,255,135,244,0,127,79,255,255,255,255,135,244,0,127,64,0,0,0,0,7,244,0,127,0,0,0,0,0,7,244,0,127,0,0,0,0,0,7,244,0,191,1,255,255,255,252,7,244,0,191,1,255,255,255,252,7,244,0,255,1,255,255,255,252,7,244,0,254,1,252,0,1,252,7,244,0,254,1,252,0,1,252,7,244,1,253,1,252,0,1,252,7,244,2,252,1,252,0,1,252,7,244,3,252,1,252,0,1,252,7,244,3,248,1,255,255,255,252,7,244,7,244,1,255,255,255,252,7,244,15,240,1,255,255,255,252,7,244,31,240,1,252,0,0,0,7,244,63,208,1,252,0,0,85,95,244,127,192,0,84,0,0,127,255,240,47,64,0,0,0,0,63,255,224,11,0,0,0,0,0,47,254,64,0,0,0,0,0,0,0,0,0, + // 0x547d 命 + 125,84,38,38,124,40,1,252,0,0,0,0,191,192,0,0,0,0,0,0,0,1,255,240,0,0,0,0,0,0,0,3,255,252,0,0,0,0,0,0,0,15,255,255,0,0,0,0,0,0,0,63,241,255,192,0,0,0,0,0,1,255,208,191,240,0,0,0,0,0,7,255,64,47,253,0,0,0,0,0,47,253,0,7,255,128,0,0,0,0,255,240,0,1,255,244,0,0,0,7,255,192,0,0,63,254,0,0,0,47,255,85,85,85,95,255,208,0,2,255,247,255,255,255,253,255,253,0,47,255,131,255,255,255,252,47,255,224,255,253,3,255,255,255,252,3,255,224,63,224,0,0,0,0,0,0,127,192,30,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,192,255,255,255,240,0,0,191,255,255,192,255,255,255,240,0,0,191,255,255,192,255,255,255,240,0,0,191,0,47,192,254,85,91,240,0,0,190,0,31,192,254,0,7,240,0,0,190,0,31,192,254,0,7,240,0,0,190,0,31,192,254,0,7,240,0,0,190,0,31,192,254,0,7,240,0,0,190,0,31,192,254,0,7,240,0,0,190,0,31,192,254,0,7,240,0,0,190,0,31,192,254,0,7,240,0,0,191,255,255,192,254,0,7,240,0,0,191,255,255,192,254,0,11,240,0,0,191,255,255,192,254,15,255,240,0,0,191,0,0,0,254,15,255,240,0,0,190,0,0,0,254,11,255,192,0,0,190,0,0,0,254,1,80,0,0,0,106,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0, + // 0x548c 和 + 140,84,35,37,77,40,1,252,0,0,0,31,192,0,0,0,0,0,0,27,255,240,0,0,0,0,1,175,255,255,244,0,0,0,0,31,255,255,254,64,255,255,255,252,15,255,255,64,0,255,255,255,252,11,164,191,64,0,255,255,255,252,0,0,127,64,0,255,170,171,252,0,0,127,64,0,254,0,2,252,0,0,127,64,0,254,0,2,252,0,0,127,64,0,254,0,2,252,0,0,127,64,0,254,0,2,252,63,255,255,255,248,254,0,2,252,63,255,255,255,248,254,0,2,252,63,255,255,255,248,254,0,2,252,21,86,255,149,84,254,0,2,252,0,3,255,64,0,254,0,2,252,0,3,255,208,0,254,0,2,252,0,11,255,240,0,254,0,2,252,0,15,255,252,0,254,0,2,252,0,31,255,255,0,254,0,2,252,0,63,255,191,128,254,0,2,252,0,127,127,111,208,254,0,2,252,0,253,127,79,240,254,0,2,252,2,252,127,71,244,254,0,2,252,7,248,127,66,224,254,0,2,252,15,240,127,64,192,254,0,2,252,47,208,127,64,0,254,0,2,252,191,192,127,64,0,254,0,2,252,127,64,127,64,0,255,255,255,252,62,0,127,64,0,255,255,255,252,28,0,127,64,0,255,255,255,252,0,0,127,64,0,255,170,171,252,0,0,127,64,0,254,0,2,252,0,0,127,64,0,254,0,2,252,0,0,127,64,0,254,0,1,168,0,0,127,64,0,0,0,0,0,0,0,106,0,0,0,0,0,0, + // 0x54cd 响 + 205,84,35,39,95,40,3,251,0,0,0,0,0,41,64,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,192,0,0,255,255,244,0,0,255,64,0,0,255,255,244,0,0,255,0,0,0,255,255,244,0,1,253,0,0,0,254,87,244,63,255,255,255,255,244,253,3,244,63,255,255,255,255,244,253,3,244,63,255,255,255,255,244,253,3,244,63,128,0,0,7,244,253,3,244,63,64,0,0,3,244,253,3,244,63,64,0,0,3,244,253,3,244,63,64,0,0,3,244,253,3,244,63,66,170,170,3,244,253,3,244,63,67,255,255,3,244,253,3,244,63,67,255,255,3,244,253,3,244,63,67,224,31,3,244,253,3,244,63,67,224,31,3,244,253,3,244,63,67,224,31,3,244,253,3,244,63,67,224,31,3,244,253,3,244,63,67,224,31,3,244,253,3,244,63,67,224,31,3,244,254,87,244,63,67,224,31,3,244,255,255,244,63,67,224,31,3,244,255,255,244,63,67,250,191,3,244,255,255,244,63,67,255,255,3,244,253,0,0,63,67,255,255,3,244,253,0,0,63,67,224,0,3,244,253,0,0,63,67,224,0,3,244,253,0,0,63,65,80,0,3,244,0,0,0,63,64,0,0,3,244,0,0,0,63,64,0,0,3,244,0,0,0,63,64,0,0,7,244,0,0,0,63,64,0,1,91,244,0,0,0,63,64,0,7,255,240,0,0,0,63,64,0,3,255,240,0,0,0,63,64,0,2,254,64,0,0,0,0,0,0,0,0,0, + // 0x55b7 喷 + 183,85,36,38,86,40,3,252,0,0,0,0,0,21,0,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,63,64,0,0,255,255,208,255,255,255,255,255,208,255,255,208,255,255,255,255,255,208,255,255,208,255,255,255,255,255,208,253,95,208,0,0,63,64,0,0,252,11,208,3,244,63,66,244,0,252,11,208,3,244,0,3,248,0,252,11,208,3,244,0,3,248,0,252,11,215,255,255,255,255,255,252,252,11,215,255,255,255,255,255,252,252,11,215,255,255,255,255,255,252,252,11,208,3,244,0,3,248,0,252,11,208,3,244,0,3,248,0,252,11,208,1,80,0,1,80,0,252,11,208,47,255,255,255,255,64,252,11,208,47,255,255,255,255,64,252,11,208,47,255,255,255,255,64,252,11,208,47,128,0,0,63,64,252,11,208,47,128,0,0,63,64,252,11,208,47,128,21,0,63,64,253,95,208,47,128,63,64,63,64,255,255,208,47,128,63,64,63,64,255,255,208,47,128,63,64,63,64,255,255,208,47,128,63,64,63,64,252,0,0,47,128,63,64,63,64,252,0,0,47,128,63,64,63,64,252,0,0,47,128,191,0,63,64,248,0,0,26,65,254,24,42,0,0,0,0,0,7,252,63,128,0,0,0,0,0,127,244,127,249,0,0,0,0,11,255,208,7,255,208,0,0,6,255,254,0,0,191,253,0,0,47,255,224,0,0,11,254,0,0,11,249,0,0,0,0,252,0,0,1,0,0,0,0,0,20, + // 0x5634 嘴 + 52,86,36,38,86,40,3,252,0,0,0,0,252,0,248,0,0,0,0,0,0,252,0,252,0,0,0,0,0,80,252,0,252,0,0,85,85,65,240,252,0,252,11,192,255,255,209,240,254,168,252,127,240,255,255,209,240,255,252,255,255,64,255,255,209,240,255,252,255,248,0,248,11,209,240,252,0,255,64,0,248,11,209,240,252,0,252,0,0,248,11,209,240,252,0,252,0,116,248,11,209,240,253,188,252,0,125,248,11,210,251,255,252,252,0,188,248,11,239,255,255,252,255,255,252,248,11,239,255,255,64,191,255,244,248,11,223,148,255,0,26,170,144,248,11,208,2,255,255,248,0,0,248,11,208,7,255,255,254,0,0,248,11,208,15,245,87,252,0,0,248,11,208,63,192,7,244,0,0,248,11,209,255,213,95,245,85,64,248,11,219,255,255,255,255,255,192,248,11,255,255,255,255,255,255,192,253,91,239,255,128,47,64,31,192,255,255,215,127,128,47,64,31,192,255,255,208,63,128,47,128,31,192,255,255,208,63,255,255,255,255,192,248,0,0,63,255,255,255,255,192,248,0,0,63,64,47,64,31,192,248,0,0,63,64,47,64,31,192,84,0,0,127,149,127,149,111,192,0,0,0,191,255,255,255,255,192,0,0,0,255,255,255,255,255,192,0,0,1,253,0,0,0,31,192,0,0,7,252,0,0,0,31,192,0,0,31,244,0,0,0,31,192,0,0,191,224,0,0,127,255,192,0,0,63,128,0,0,63,255,128,0,0,9,0,0,0,31,169,0, + // 0x5668 器 + 104,86,38,36,104,40,1,252,0,255,255,255,192,63,255,255,244,0,0,255,255,255,192,63,255,255,244,0,0,255,255,255,192,63,255,255,244,0,0,252,0,47,192,63,64,7,244,0,0,252,0,47,192,63,64,7,244,0,0,252,0,47,192,63,64,7,244,0,0,252,0,47,192,63,64,7,244,0,0,252,0,47,192,63,64,7,244,0,0,255,255,255,192,63,255,255,244,0,0,255,255,255,192,63,255,255,244,0,0,255,255,255,253,63,255,255,244,0,0,0,0,0,255,0,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,0,7,252,0,0,0,0,0,63,255,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,255,192,5,85,91,255,85,95,253,85,85,64,0,0,47,252,0,3,255,64,0,0,0,0,255,240,0,1,255,224,0,0,0,11,255,208,0,0,127,253,0,0,1,191,255,0,0,0,15,255,224,0,31,255,248,0,0,0,3,255,255,64,191,255,255,255,192,127,255,255,255,224,47,255,255,255,192,127,255,255,255,192,14,191,255,255,192,127,255,255,235,0,0,190,0,15,192,127,0,15,224,0,0,190,0,15,192,127,0,15,224,0,0,190,0,15,192,127,0,15,224,0,0,190,0,15,192,127,0,15,224,0,0,190,0,15,192,127,0,15,224,0,0,191,255,255,192,127,255,255,224,0,0,191,255,255,192,127,255,255,224,0,0,191,255,255,192,127,255,255,224,0,0,190,0,31,192,127,0,15,224,0,0,106,0,15,192,127,0,10,144,0, + // 0x5674 噴 + 116,86,36,38,86,40,3,252,0,0,0,0,0,47,128,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,47,128,0,0,0,0,0,191,255,255,255,255,224,85,85,80,191,255,255,255,255,224,255,255,240,106,170,191,234,170,144,255,255,240,0,0,47,128,0,0,255,255,240,2,248,47,130,244,0,252,3,240,2,248,47,130,244,0,252,3,246,171,254,170,171,254,168,252,3,247,255,255,255,255,255,253,252,3,247,255,255,255,255,255,253,252,3,240,2,248,0,2,244,0,252,3,240,2,248,0,2,244,0,252,3,240,0,0,0,0,0,0,252,3,240,63,255,255,255,255,128,252,3,240,63,255,255,255,255,128,252,3,240,63,128,0,0,63,128,252,3,240,63,128,0,0,63,128,252,3,240,63,128,0,0,63,128,252,3,240,63,255,255,255,255,128,252,3,240,63,255,255,255,255,128,252,3,240,63,128,0,0,63,128,255,255,240,63,128,0,0,63,128,255,255,240,63,128,0,0,63,128,255,255,240,63,255,255,255,255,128,253,85,80,63,255,255,255,255,128,252,0,0,63,128,0,0,63,128,252,0,0,63,128,0,0,63,128,168,0,0,63,255,255,255,255,128,0,0,0,63,255,255,255,255,128,0,0,0,0,185,0,31,144,0,0,0,0,2,255,64,63,244,0,0,0,0,111,253,0,31,255,0,0,0,27,255,240,0,1,255,224,0,0,127,255,64,0,0,47,253,0,0,31,228,0,0,0,7,248,0,0,10,0,0,0,0,0,128, + // 0x56de 回 + 222,86,34,36,68,40,3,252,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,63,255,255,255,128,31,224,191,0,63,255,255,255,128,31,224,191,0,63,255,255,255,128,31,224,191,0,63,149,85,127,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,255,255,255,128,31,224,191,0,63,255,255,255,128,31,224,191,0,63,255,255,255,128,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,149,85,85,85,85,85,111,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,15,224, + // 0x56e0 因 + 224,86,34,36,68,40,3,252,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,170,170,170,170,170,170,175,240,191,0,0,0,0,0,0,15,240,191,0,0,3,248,0,0,15,240,191,0,0,3,248,0,0,15,240,191,0,0,3,244,0,0,15,240,191,0,0,3,244,0,0,15,240,191,0,0,3,244,0,0,15,240,191,0,0,3,244,0,0,15,240,191,15,255,255,255,255,255,15,240,191,15,255,255,255,255,255,15,240,191,15,255,255,255,255,255,15,240,191,5,85,95,254,85,85,15,240,191,0,0,15,254,0,0,15,240,191,0,0,15,255,0,0,15,240,191,0,0,31,255,0,0,15,240,191,0,0,63,255,128,0,15,240,191,0,0,127,159,208,0,15,240,191,0,0,255,15,240,0,15,240,191,0,1,255,11,248,0,15,240,191,0,7,252,3,254,0,15,240,191,0,31,244,0,255,128,15,240,191,0,255,224,0,191,244,15,240,191,11,255,128,0,47,255,15,240,191,15,254,0,0,7,254,15,240,191,7,224,0,0,0,252,15,240,191,2,64,0,0,0,20,15,240,191,0,0,0,0,0,0,15,240,191,170,170,170,170,170,170,175,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,0,0,0,0,0,0,15,240,191,0,0,0,0,0,0,15,224, + // 0x56fa 固 + 250,86,34,36,68,40,3,252,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,149,85,85,85,85,85,111,224,191,0,0,0,0,0,0,15,224,191,0,0,3,248,0,0,15,224,191,0,0,3,248,0,0,15,224,191,0,0,3,248,0,0,15,224,191,0,0,3,248,0,0,15,224,191,11,255,255,255,255,255,15,224,191,11,255,255,255,255,255,15,224,191,11,255,255,255,255,255,15,224,191,0,0,3,248,0,0,15,224,191,0,0,3,248,0,0,15,224,191,0,0,3,248,0,0,15,224,191,0,0,3,248,0,0,15,224,191,0,0,3,248,0,0,15,224,191,0,127,255,255,255,224,15,224,191,0,127,255,255,255,224,15,224,191,0,127,255,255,255,224,15,224,191,0,127,0,0,15,224,15,224,191,0,127,0,0,15,224,15,224,191,0,127,0,0,15,224,15,224,191,0,127,0,0,15,224,15,224,191,0,127,255,255,255,224,15,224,191,0,127,255,255,255,224,15,224,191,0,127,255,255,255,224,15,224,191,0,0,0,0,0,0,15,224,191,0,0,0,0,0,0,15,224,191,0,0,0,0,0,0,15,224,191,149,85,85,85,85,85,111,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,0,0,0,0,0,0,15,224,127,0,0,0,0,0,0,15,224, + // 0x56fe 图 + 254,86,34,36,68,40,3,252,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,85,85,85,85,85,85,95,224,191,0,0,61,0,0,0,15,224,191,0,0,255,0,0,0,15,224,191,0,2,253,0,0,0,15,224,191,0,11,255,255,255,244,15,224,191,0,47,255,255,255,252,15,224,191,0,191,255,255,255,244,15,224,191,3,255,208,0,47,208,15,224,191,31,255,244,0,255,128,15,224,191,47,226,254,7,253,0,15,224,191,7,64,191,255,240,0,15,224,191,0,0,31,255,192,0,15,224,191,0,0,127,255,224,0,15,224,191,0,27,255,255,255,64,15,224,191,7,255,254,7,255,254,79,224,191,191,255,224,0,127,255,223,224,191,63,254,41,0,2,255,79,224,191,31,64,191,228,0,6,15,224,191,0,0,191,255,208,0,15,224,191,0,0,1,255,248,0,15,224,191,0,0,0,7,240,0,15,224,191,0,46,144,0,80,0,15,224,191,0,127,255,228,0,0,15,224,191,0,191,255,255,228,0,15,224,191,0,0,107,255,255,208,15,224,191,0,0,0,27,255,192,15,224,191,0,0,0,0,31,128,15,224,191,0,0,0,0,0,0,15,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,85,85,85,85,85,85,95,224,191,0,0,0,0,0,0,15,224, + // 0x5728 在 + 40,87,37,38,124,40,1,252,0,0,0,10,64,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,127,128,0,0,0,0,0,31,255,255,255,255,255,255,255,255,64,31,255,255,255,255,255,255,255,255,64,31,255,255,255,255,255,255,255,255,64,26,170,171,254,170,170,170,170,170,64,0,0,15,244,0,0,0,0,0,0,0,0,31,240,0,1,80,0,0,0,0,0,63,208,0,7,244,0,0,0,0,0,127,192,0,7,244,0,0,0,0,0,255,64,0,7,244,0,0,0,0,3,254,0,0,7,244,0,0,0,0,11,252,0,0,7,244,0,0,0,0,31,244,0,0,7,244,0,0,0,0,127,240,0,0,7,244,0,0,0,1,255,240,15,255,255,255,255,252,0,7,255,240,15,255,255,255,255,252,0,47,255,240,15,255,255,255,255,252,0,127,251,240,5,85,91,249,85,84,0,63,203,240,0,0,7,244,0,0,0,31,11,240,0,0,7,244,0,0,0,8,11,240,0,0,7,244,0,0,0,0,11,240,0,0,7,244,0,0,0,0,11,240,0,0,7,244,0,0,0,0,11,240,0,0,7,244,0,0,0,0,11,240,0,0,7,244,0,0,0,0,11,240,0,0,7,244,0,0,0,0,11,240,0,0,7,244,0,0,0,0,11,240,0,0,7,244,0,0,0,0,11,240,21,85,91,249,85,85,0,0,11,240,127,255,255,255,255,255,64,0,11,240,127,255,255,255,255,255,64,0,11,240,127,255,255,255,255,255,64,0,11,240,0,0,0,0,0,0,0, + // 0x574f 坏 + 79,87,38,38,124,40,1,252,0,5,64,0,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,0,15,208,26,170,170,170,170,170,128,0,15,208,63,255,255,255,255,255,192,0,15,208,63,255,255,255,255,255,192,0,15,208,63,255,255,255,255,255,192,0,15,208,0,0,0,127,192,0,0,0,15,208,0,0,0,255,64,0,0,0,15,208,0,0,2,255,0,0,0,0,15,208,0,0,3,253,0,0,0,63,255,255,208,0,11,252,0,0,0,63,255,255,208,0,47,244,0,0,0,63,255,255,208,0,127,244,64,0,0,26,175,234,128,0,255,246,240,0,0,0,15,208,0,3,255,255,253,0,0,0,15,208,0,31,255,251,255,128,0,0,15,208,0,127,251,244,191,224,0,0,15,208,2,255,195,244,47,248,0,0,15,208,15,255,3,244,7,255,0,0,15,208,191,252,3,244,1,255,192,0,15,209,255,240,3,244,0,127,224,0,15,208,127,128,3,244,0,31,192,0,15,208,29,0,3,244,0,7,0,0,15,208,80,0,3,244,0,0,0,0,15,219,240,0,3,244,0,0,0,0,15,255,240,0,3,244,0,0,0,0,127,255,240,0,3,244,0,0,0,31,255,255,128,0,3,244,0,0,0,127,255,244,0,0,3,244,0,0,0,63,254,0,0,0,3,244,0,0,0,63,144,0,0,0,3,244,0,0,0,20,0,0,0,0,3,244,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,2,164,0,0,0, + // 0x5757 块 + 87,87,37,38,124,40,1,252,0,0,0,0,0,5,64,0,0,0,0,31,192,0,0,31,208,0,0,0,0,31,192,0,0,31,208,0,0,0,0,31,192,0,0,31,208,0,0,0,0,31,192,0,0,31,208,0,0,0,0,31,192,0,0,31,208,0,0,0,0,31,192,0,0,31,208,0,0,0,0,31,192,3,255,255,255,255,240,0,0,31,192,3,255,255,255,255,240,0,0,31,192,3,255,255,255,255,240,0,63,255,255,209,85,111,229,91,240,0,63,255,255,208,0,31,208,7,240,0,63,255,255,208,0,31,208,7,240,0,26,175,234,128,0,31,208,7,240,0,0,31,192,0,0,31,208,7,240,0,0,31,192,0,0,31,208,7,240,0,0,31,192,0,0,31,192,7,240,0,0,31,192,0,0,31,192,7,240,0,0,31,192,10,170,175,234,171,250,64,0,31,192,15,255,255,255,255,255,192,0,31,192,15,255,255,255,255,255,192,0,31,192,15,255,255,255,255,255,192,0,31,193,208,0,63,253,0,0,0,0,31,239,224,0,127,255,0,0,0,0,31,255,240,0,255,127,64,0,0,0,127,255,208,0,255,63,128,0,0,11,255,253,0,2,253,47,192,0,0,127,255,208,0,7,252,15,240,0,0,63,253,0,0,15,248,11,248,0,0,47,208,0,0,47,240,3,252,0,0,13,0,0,0,127,208,2,255,0,0,0,0,0,2,255,192,0,255,192,0,0,0,0,11,255,0,0,127,244,0,0,0,0,127,252,0,0,31,255,0,0,0,2,255,240,0,0,7,255,192,0,0,3,255,128,0,0,1,255,128,0,0,0,253,0,0,0,0,63,0,0,0,0,80,0,0,0,0,8,0, + // 0x578b 型 + 139,87,36,37,77,40,2,253,0,0,0,0,0,0,0,5,80,5,85,85,85,85,0,0,11,240,15,255,255,255,255,2,160,11,240,15,255,255,255,255,3,244,11,240,15,255,255,255,255,3,244,11,240,0,31,192,63,128,3,244,11,240,0,31,192,63,128,3,244,11,240,0,31,192,63,128,3,244,11,240,0,31,192,63,128,3,244,11,240,0,31,192,63,128,3,244,11,240,127,255,255,255,255,195,244,11,240,127,255,255,255,255,195,244,11,240,127,255,255,255,255,195,244,11,240,21,127,149,127,213,67,244,11,240,0,63,64,63,128,3,244,11,240,0,191,0,63,128,3,244,11,240,0,255,0,63,128,0,0,11,240,2,253,0,63,128,0,0,11,240,11,252,0,63,128,0,0,15,240,47,244,0,63,128,0,63,255,224,191,224,0,63,128,0,31,255,208,47,64,0,63,234,0,15,255,64,9,0,0,0,255,0,5,64,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,85,85,85,255,85,85,85,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,85,85,85,85,85,85, + // 0x57ab 垫 + 171,87,37,37,114,40,2,253,0,11,224,0,0,127,0,0,0,0,0,15,224,0,0,127,0,0,0,0,0,15,224,0,0,127,0,0,0,0,0,15,224,0,0,127,0,0,0,0,191,255,255,245,255,255,255,255,0,0,191,255,255,245,255,255,255,255,0,0,191,255,255,245,255,255,255,255,0,0,21,95,245,80,0,255,0,191,0,0,0,15,224,0,0,254,0,127,0,0,0,15,224,0,16,254,0,127,0,0,0,15,224,100,253,253,0,127,0,0,0,15,255,249,255,252,0,127,0,0,6,255,255,248,255,252,0,127,0,0,255,255,255,228,31,254,0,127,0,0,191,255,244,0,7,255,192,127,0,0,191,159,224,0,11,255,244,127,0,0,16,15,224,0,15,255,254,63,13,0,0,15,224,0,63,194,253,63,15,192,0,15,224,0,255,128,120,63,79,192,0,15,224,7,255,0,16,47,239,128,15,255,224,31,252,0,0,31,255,64,15,255,208,11,240,0,0,11,255,0,11,255,64,3,233,0,0,2,248,0,1,64,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,255,255,255,255,255,255,255,0,0,0,255,255,255,255,255,255,255,0,0,0,255,255,255,255,255,255,255,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,191,255,255,255,255,255,255,255,255,0,191,255,255,255,255,255,255,255,255,0,191,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0, + // 0x586b 填 + 107,88,38,38,124,40,1,252,0,0,0,0,0,3,248,0,0,0,0,31,192,0,0,3,248,0,0,0,0,31,192,0,0,3,248,0,0,0,0,31,192,63,255,255,255,255,255,192,0,31,192,63,255,255,255,255,255,192,0,31,192,63,255,255,255,255,255,192,0,31,192,0,0,3,248,0,0,0,0,31,192,0,0,3,248,0,0,0,0,31,192,0,0,3,248,0,0,0,0,31,192,0,255,255,255,255,240,0,63,255,255,192,255,255,255,255,240,0,63,255,255,192,254,85,85,95,240,0,63,255,255,192,253,0,0,11,240,0,26,175,234,128,253,85,85,91,240,0,0,31,192,0,255,255,255,255,240,0,0,31,192,0,255,255,255,255,240,0,0,31,192,0,253,0,0,11,240,0,0,31,192,0,253,0,0,11,240,0,0,31,192,0,255,255,255,255,240,0,0,31,192,0,255,255,255,255,240,0,0,31,192,0,254,85,85,95,240,0,0,31,192,0,253,0,0,11,240,0,0,31,192,0,254,85,85,95,240,0,0,31,199,208,255,255,255,255,240,0,0,31,255,224,255,255,255,255,240,0,0,47,255,240,0,0,0,0,0,0,2,255,255,128,0,0,0,0,0,0,127,255,249,255,255,255,255,255,255,208,127,255,64,255,255,255,255,255,255,208,63,244,0,255,255,255,255,255,255,208,46,64,0,0,1,0,0,96,0,0,0,0,0,0,15,228,1,252,0,0,0,0,0,0,127,240,3,255,128,0,0,0,0,7,255,128,0,191,244,0,0,0,0,191,253,0,0,15,254,0,0,0,3,255,224,0,0,2,255,192,0,0,0,255,64,0,0,0,127,128,0,0,0,36,0,0,0,0,8,0, + // 0x58f3 壳 + 243,88,36,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,255,255,248,63,255,255,255,255,255,255,255,248,63,255,255,255,255,255,255,255,248,63,128,0,0,0,0,0,3,248,63,128,0,0,0,0,0,3,248,63,130,170,170,170,170,170,131,248,63,135,255,255,255,255,255,195,248,0,7,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,248,0,0,0,0,255,255,255,255,248,0,0,0,0,255,255,255,255,248,0,0,0,0,255,0,0,3,248,0,0,0,0,255,0,0,3,248,0,0,0,0,254,0,0,3,248,0,0,0,1,254,0,0,3,248,0,64,0,3,252,0,0,3,248,0,185,0,15,252,0,0,3,248,0,190,0,127,240,0,0,3,248,0,253,6,255,208,0,0,3,253,86,253,127,255,64,0,0,3,255,255,252,63,252,0,0,0,1,255,255,248,31,208,0,0,0,0,127,255,224,9,0,0,0,0,0,0,0,0, + // 0x5907 备 + 7,89,38,38,124,40,1,252,0,0,0,41,64,0,0,0,0,0,0,0,0,127,208,0,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,3,255,64,0,0,64,0,0,0,0,15,255,255,255,255,248,0,0,0,0,63,255,255,255,255,253,0,0,0,0,255,255,255,255,255,248,0,0,0,7,255,128,0,0,63,240,0,0,0,63,255,240,0,1,255,192,0,0,2,255,255,252,0,11,255,0,0,0,11,255,67,255,128,127,248,0,0,0,2,252,0,255,250,255,208,0,0,0,0,144,0,47,255,255,0,0,0,0,0,0,0,11,255,254,0,0,0,0,0,0,1,255,255,255,249,0,0,0,0,1,191,255,251,255,255,249,64,0,6,191,255,255,128,47,255,255,255,144,191,255,255,228,0,1,191,255,255,192,63,255,249,0,0,0,6,255,255,64,47,249,0,0,0,0,0,1,191,0,5,31,255,255,255,255,255,255,0,0,0,31,255,255,255,255,255,255,0,0,0,31,255,255,255,255,255,255,0,0,0,31,224,0,63,192,0,255,0,0,0,31,208,0,63,192,0,255,0,0,0,31,208,0,63,192,0,255,0,0,0,31,208,0,63,192,0,255,0,0,0,31,255,255,255,255,255,255,0,0,0,31,255,255,255,255,255,255,0,0,0,31,255,255,255,255,255,255,0,0,0,31,208,0,63,192,0,255,0,0,0,31,208,0,63,192,0,255,0,0,0,31,208,0,63,192,0,255,0,0,0,31,255,255,255,255,255,255,0,0,0,31,255,255,255,255,255,255,0,0,0,31,255,255,255,255,255,255,0,0,0,31,224,0,0,0,0,255,0,0,0,26,144,0,0,0,0,106,0,0, + // 0x590d 复 + 13,89,27,38,10,40,6,252,0,1,144,0,0,0,0,0,3,252,0,0,0,0,0,7,248,0,0,0,0,0,15,240,0,0,0,0,0,47,255,255,255,255,192,0,63,255,255,255,255,192,0,255,255,255,255,255,192,2,255,0,0,0,0,0,11,252,0,0,0,0,0,47,253,85,85,85,84,0,127,255,255,255,255,252,0,47,239,255,255,255,252,0,10,47,192,0,2,252,0,0,47,192,0,2,252,0,0,47,255,255,255,252,0,0,47,255,255,255,252,0,0,47,213,85,86,252,0,0,47,192,0,2,252,0,0,47,192,0,2,252,0,0,47,255,255,255,252,0,0,47,255,255,255,252,0,0,21,127,229,85,84,0,0,0,127,192,0,0,0,0,0,255,234,170,160,0,0,7,255,255,255,253,0,0,31,255,255,255,248,0,0,255,240,0,15,240,0,7,255,252,0,63,208,0,63,253,255,64,255,192,0,31,224,63,227,255,0,0,7,64,15,255,248,0,0,0,0,3,255,240,0,0,0,0,47,255,254,0,0,0,7,255,255,255,245,0,6,255,255,146,255,255,248,47,255,248,0,31,255,240,15,254,64,0,1,191,224,6,64,0,0,0,1,128, + // 0x5916 外 + 22,89,38,38,124,40,1,252,0,0,25,0,0,0,26,144,0,0,0,0,63,192,0,0,31,208,0,0,0,0,63,192,0,0,31,208,0,0,0,0,127,64,0,0,31,208,0,0,0,0,191,0,0,0,31,208,0,0,0,0,255,0,0,0,31,208,0,0,0,1,255,170,169,0,31,208,0,0,0,3,255,255,255,192,31,208,0,0,0,7,255,255,255,192,31,208,0,0,0,11,255,255,255,192,31,208,0,0,0,15,240,0,63,228,31,208,0,0,0,63,208,0,127,252,31,208,0,0,0,127,192,0,127,254,31,208,0,0,0,255,64,0,191,191,95,208,0,0,2,255,0,0,255,63,239,208,0,0,7,255,0,0,253,31,255,208,0,0,15,255,208,2,252,11,255,208,0,0,63,255,252,3,252,3,255,208,0,0,191,223,255,71,248,0,255,208,0,0,47,66,255,235,240,0,127,240,0,0,6,0,63,255,240,0,31,252,0,0,0,0,11,255,208,0,31,255,64,0,0,0,2,255,192,0,31,255,224,0,0,0,0,255,64,0,31,255,252,0,0,0,1,255,0,0,31,239,255,128,0,0,3,253,0,0,31,211,255,240,0,0,11,252,0,0,31,208,191,192,0,0,31,244,0,0,31,208,15,64,0,0,63,224,0,0,31,208,1,0,0,0,255,192,0,0,31,208,0,0,0,3,255,0,0,0,31,208,0,0,0,31,253,0,0,0,31,208,0,0,0,127,244,0,0,0,31,208,0,0,3,255,208,0,0,0,31,208,0,0,31,255,64,0,0,0,31,208,0,0,15,252,0,0,0,0,31,208,0,0,3,224,0,0,0,0,31,208,0,0,0,64,0,0,0,0,26,144,0,0, + // 0x591a 多 + 26,89,34,38,86,40,3,252,0,0,0,6,64,0,0,0,0,0,0,0,31,248,0,0,0,0,0,0,0,127,240,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,11,255,255,255,254,0,0,0,0,63,255,255,255,255,128,0,0,2,255,255,255,255,255,0,0,0,47,255,0,0,3,252,0,0,2,255,252,0,0,15,248,0,0,127,255,255,128,0,63,224,0,0,127,249,191,244,1,255,128,0,0,31,128,31,255,11,254,0,0,0,4,0,2,255,255,248,0,0,0,0,0,0,63,255,208,0,0,0,0,0,0,47,255,121,0,0,0,0,0,7,255,244,255,192,0,0,0,0,191,255,131,255,0,0,0,0,111,255,248,31,253,0,0,0,111,255,255,128,191,255,255,255,208,255,255,228,7,255,255,255,255,240,127,249,0,63,255,255,255,255,224,62,64,2,255,224,0,0,127,192,0,0,111,255,64,0,0,255,128,0,7,255,255,128,0,2,255,0,0,191,255,255,244,0,11,252,0,0,63,248,31,254,0,47,244,0,0,31,128,3,255,192,191,224,0,0,4,0,0,127,247,255,128,0,0,0,0,0,15,255,253,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,31,255,192,0,0,0,0,0,2,255,253,0,0,0,0,0,1,191,255,224,0,0,0,0,1,191,255,254,0,0,0,0,3,255,255,255,208,0,0,0,0,2,255,255,248,0,0,0,0,0,0,255,249,0,0,0,0,0,0,0,165,0,0,0,0,0,0,0, + // 0x5927 大 + 39,89,36,38,86,40,2,252,0,0,0,0,170,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,253,0,0,0,0,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,253,0,0,0,7,255,192,0,0,0,0,0,0,11,255,224,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,31,255,244,0,0,0,0,0,0,47,231,252,0,0,0,0,0,0,63,211,253,0,0,0,0,0,0,127,193,255,0,0,0,0,0,0,255,128,255,128,0,0,0,0,2,255,0,191,192,0,0,0,0,3,254,0,63,240,0,0,0,0,15,252,0,31,244,0,0,0,0,47,244,0,11,253,0,0,0,0,127,224,0,3,255,0,0,0,1,255,192,0,1,255,192,0,0,11,255,0,0,0,191,244,0,0,47,253,0,0,0,63,253,0,1,255,244,0,0,0,15,255,192,31,255,208,0,0,0,3,255,248,191,255,0,0,0,0,0,191,255,127,248,0,0,0,0,0,31,252,31,128,0,0,0,0,0,2,244,5,0,0,0,0,0,0,0,32, + // 0x5929 天 + 41,89,37,35,94,40,2,252,127,255,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,255,253,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,31,255,255,255,255,255,255,255,244,0,31,255,255,255,255,255,255,255,244,0,31,255,255,255,255,255,255,255,244,0,15,255,255,255,255,255,255,255,244,0,0,0,0,3,255,192,0,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,0,11,255,240,0,0,0,0,0,0,0,15,255,244,0,0,0,0,0,0,0,31,247,252,0,0,0,0,0,0,0,63,227,253,0,0,0,0,0,0,0,191,193,255,0,0,0,0,0,0,2,255,128,255,192,0,0,0,0,0,11,255,0,63,240,0,0,0,0,0,47,252,0,31,252,0,0,0,0,0,255,244,0,11,255,64,0,0,0,7,255,208,0,2,255,224,0,0,0,127,255,0,0,0,255,254,0,0,11,255,248,0,0,0,47,255,228,0,255,255,208,0,0,0,7,255,255,64,191,254,0,0,0,0,0,191,254,0,63,224,0,0,0,0,0,11,252,0,25,0,0,0,0,0,0,0,100,0, + // 0x592a 太 + 42,89,37,38,124,40,2,252,0,0,0,1,253,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,0,3,252,0,0,0,0,0,127,255,255,255,255,255,255,255,254,0,127,255,255,255,255,255,255,255,254,0,127,255,255,255,255,255,255,255,254,0,127,255,255,255,255,255,255,255,254,0,0,0,0,11,255,224,0,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,0,15,255,244,0,0,0,0,0,0,0,31,247,248,0,0,0,0,0,0,0,47,227,252,0,0,0,0,0,0,0,63,194,254,0,0,0,0,0,0,0,127,192,255,0,0,0,0,0,0,0,255,128,191,128,0,0,0,0,0,1,255,0,127,192,0,0,0,0,0,3,254,0,63,240,0,0,0,0,0,11,252,0,31,244,0,0,0,0,0,15,248,0,15,252,0,0,0,0,0,63,242,192,3,255,0,0,0,0,0,255,239,244,1,255,128,0,0,0,3,255,159,253,0,255,224,0,0,0,15,255,7,255,64,63,248,0,0,0,127,252,1,255,208,15,255,0,0,2,255,240,0,127,244,7,255,208,0,31,255,192,0,31,253,1,255,253,0,255,254,0,0,7,254,0,63,255,64,191,244,0,0,2,248,0,15,254,0,47,128,0,0,0,144,0,1,252,0,8,0,0,0,0,0,0,0,32,0, + // 0x5931 失 + 49,89,37,38,124,40,2,252,0,0,0,0,254,0,0,0,0,0,0,3,228,0,254,0,0,0,0,0,0,11,248,0,254,0,0,0,0,0,0,15,244,0,254,0,0,0,0,0,0,15,240,0,254,0,0,0,0,0,0,47,224,0,254,0,0,0,0,0,0,63,208,0,254,0,0,0,0,0,0,127,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,255,64,0,1,255,255,255,255,255,255,255,64,0,3,255,255,255,255,255,255,255,64,0,7,252,0,0,254,0,0,0,0,0,15,248,0,0,254,0,0,0,0,0,63,240,0,0,254,0,0,0,0,0,127,208,0,0,254,0,0,0,0,0,31,128,0,1,254,0,0,0,0,0,2,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,170,170,170,171,255,170,170,170,170,0,255,255,255,255,255,255,255,255,254,0,255,255,255,255,255,255,255,255,254,0,255,255,255,255,255,255,255,255,254,0,0,0,0,11,255,208,0,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,0,47,251,248,0,0,0,0,0,0,0,63,211,252,0,0,0,0,0,0,0,255,193,255,0,0,0,0,0,0,2,255,64,255,192,0,0,0,0,0,11,254,0,127,240,0,0,0,0,0,63,252,0,47,252,0,0,0,0,1,255,240,0,11,255,64,0,0,0,11,255,192,0,2,255,224,0,0,0,191,255,0,0,0,255,254,0,0,27,255,248,0,0,0,31,255,248,0,255,255,208,0,0,0,3,255,255,64,191,253,0,0,0,0,0,127,255,0,63,208,0,0,0,0,0,7,252,0,8,0,0,0,0,0,0,0,36,0, + // 0x5934 头 + 52,89,36,38,86,40,2,252,0,0,0,0,1,84,0,0,0,0,0,0,0,3,248,0,0,0,0,3,208,0,3,248,0,0,0,0,15,254,0,3,248,0,0,0,0,15,255,224,3,248,0,0,0,0,1,255,253,3,248,0,0,0,0,0,31,255,67,248,0,0,0,0,0,1,255,3,248,0,0,0,0,0,0,44,3,248,0,0,0,0,128,0,0,3,248,0,0,0,3,248,0,0,7,248,0,0,0,11,255,128,0,7,244,0,0,0,7,255,248,0,7,244,0,0,0,0,127,255,64,7,244,0,0,0,0,7,255,192,11,244,0,0,0,0,0,127,64,11,240,0,0,0,0,0,13,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,85,85,85,85,95,245,85,85,85,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,0,0,0,0,127,128,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,3,253,16,0,0,0,0,0,0,11,252,126,0,0,0,0,0,0,31,244,255,224,0,0,0,0,0,127,224,191,253,0,0,0,0,2,255,192,15,255,192,0,0,0,15,255,0,1,255,248,0,0,0,191,252,0,0,47,255,64,0,27,255,224,0,0,3,255,224,2,255,255,64,0,0,0,127,248,127,255,248,0,0,0,0,15,254,63,255,128,0,0,0,0,2,252,31,228,0,0,0,0,0,0,176,9,0,0,0,0,0,0,0,0, + // 0x597d 好 + 125,89,37,38,124,40,2,252,0,46,128,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,63,128,0,255,255,255,255,240,0,0,63,64,0,255,255,255,255,253,0,0,127,64,0,255,255,255,255,252,0,0,127,0,0,85,85,85,111,244,0,0,191,0,0,0,0,0,63,224,0,0,254,0,0,0,0,0,191,192,0,85,255,85,80,0,0,1,255,0,0,255,255,255,252,0,0,7,252,0,0,255,255,255,252,0,0,31,244,0,0,255,255,255,248,0,1,191,208,0,0,3,248,3,248,0,1,255,64,0,0,3,244,3,248,0,1,253,0,0,0,3,240,3,244,0,1,253,0,0,0,7,240,3,244,0,1,253,0,0,0,11,240,7,246,170,170,254,170,170,0,15,224,11,247,255,255,255,255,255,64,15,208,15,247,255,255,255,255,255,64,31,192,15,231,255,255,255,255,255,64,47,192,31,208,0,1,253,0,0,0,63,128,47,192,0,1,253,0,0,0,63,224,63,192,0,1,253,0,0,0,127,253,63,128,0,1,253,0,0,0,191,255,255,0,0,1,253,0,0,0,126,255,255,0,0,1,253,0,0,0,5,47,254,0,0,1,253,0,0,0,0,7,255,64,0,1,253,0,0,0,0,11,255,224,0,1,253,0,0,0,0,15,255,248,0,1,253,0,0,0,0,63,219,253,0,1,253,0,0,0,0,255,194,253,0,1,253,0,0,0,2,255,0,184,0,1,253,0,0,0,15,253,0,32,0,2,252,0,0,0,127,244,0,0,15,255,252,0,0,0,127,208,0,0,15,255,252,0,0,0,31,64,0,0,7,255,240,0,0,0,8,0,0,0,2,169,0,0,0,0, + // 0x59cb 始 + 203,89,37,38,124,40,2,252,0,26,64,0,0,10,64,0,0,0,0,47,192,0,0,15,240,0,0,0,0,63,128,0,0,31,240,0,0,0,0,63,128,0,0,47,224,0,0,0,0,63,64,0,0,63,192,0,0,0,0,127,0,0,0,63,192,0,0,0,0,191,0,0,0,127,128,0,0,0,0,254,0,0,0,191,0,125,0,0,85,254,85,144,0,255,0,255,0,0,255,255,255,252,1,253,0,127,192,0,255,255,255,252,2,252,0,47,208,0,255,255,255,248,3,248,0,15,240,0,3,248,3,248,7,244,0,7,248,0,3,244,3,244,11,245,170,255,252,0,7,240,3,247,255,255,255,255,254,0,11,240,7,243,255,255,255,255,255,0,15,224,7,243,255,255,255,234,191,128,15,208,11,241,165,64,0,0,63,128,31,192,15,224,0,0,0,0,44,0,47,192,15,208,0,0,0,0,0,0,63,128,31,192,0,0,0,0,0,0,63,128,47,192,31,255,255,255,248,0,127,240,63,192,31,255,255,255,248,0,191,253,127,64,31,255,255,255,248,0,255,255,255,0,31,213,85,87,248,0,45,191,255,0,31,192,0,3,248,0,4,31,254,0,31,192,0,3,248,0,0,7,255,128,31,192,0,3,248,0,0,11,255,224,31,192,0,3,248,0,0,31,255,248,31,192,0,3,248,0,0,63,219,253,31,192,0,3,248,0,0,255,194,253,31,192,0,3,248,0,3,255,0,184,31,213,85,87,248,0,15,253,0,32,31,255,255,255,248,0,127,244,0,0,31,255,255,255,248,0,127,208,0,0,31,255,255,255,248,0,47,64,0,0,31,192,0,3,248,0,8,0,0,0,31,192,0,2,164,0, + // 0x5b50 子 + 80,91,36,35,59,40,2,252,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,170,170,170,170,170,191,252,0,0,0,0,0,0,0,191,240,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,31,254,0,0,0,0,0,0,0,191,244,0,0,0,0,0,0,87,255,192,0,0,0,0,0,0,255,254,0,0,0,0,0,0,0,255,244,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,170,170,170,170,255,170,170,170,170,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,191,255,255,0,0,0,0,0,0,63,255,254,0,0,0,0,0,0,47,255,248,0,0,0,0,0,0,31,234,64,0,0,0,0, + // 0x5b58 存 + 88,91,37,38,124,40,1,252,0,0,0,10,64,0,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,26,170,170,255,234,170,170,170,170,64,31,255,255,255,255,255,255,255,255,64,31,255,255,255,255,255,255,255,255,64,31,255,255,255,255,255,255,255,255,64,0,0,7,252,0,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,0,191,192,255,255,255,255,208,0,0,0,255,64,255,255,255,255,248,0,0,3,254,0,255,255,255,255,240,0,0,11,252,0,85,85,85,255,192,0,0,31,244,0,0,0,2,255,0,0,0,127,240,0,0,0,11,252,0,0,0,255,240,0,0,0,63,240,0,0,7,255,240,0,0,2,255,128,0,0,31,255,240,0,0,2,254,0,0,0,127,255,240,0,0,2,252,0,0,0,63,219,240,42,170,171,254,170,170,128,47,75,240,127,255,255,255,255,255,192,12,11,240,127,255,255,255,255,255,192,0,11,240,127,255,255,255,255,255,192,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,47,255,252,0,0,0,0,11,240,0,31,255,252,0,0,0,0,11,240,0,15,255,240,0,0,0,0,5,80,0,5,85,0,0,0,0, + // 0x5b89 安 + 137,91,36,38,86,40,2,252,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,47,229,85,85,85,85,85,91,248,47,192,0,0,0,0,0,3,248,47,192,0,10,80,0,0,3,248,47,192,0,31,240,0,0,3,248,47,192,0,47,224,0,0,3,248,47,192,0,63,192,0,0,3,248,0,0,0,191,128,0,0,0,0,0,0,0,255,0,0,0,0,0,106,170,171,255,170,170,170,170,169,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,47,224,0,0,191,64,0,0,0,63,192,0,0,255,0,0,0,0,191,128,0,1,255,0,0,0,0,255,0,0,3,253,0,0,0,3,254,0,0,7,252,0,0,0,7,252,0,0,15,244,0,0,0,15,255,144,0,47,240,0,0,0,31,255,254,64,127,208,0,0,0,63,255,255,249,255,128,0,0,0,47,198,255,255,255,0,0,0,0,0,0,27,255,254,0,0,0,0,0,0,2,255,255,224,0,0,0,0,0,47,255,255,254,64,0,0,0,7,255,253,47,255,244,0,0,22,255,255,224,2,255,254,0,31,255,255,254,0,0,47,255,208,15,255,255,144,0,0,2,255,192,3,255,228,0,0,0,0,127,0,2,148,0,0,0,0,0,9,0, + // 0x5b8c 完 + 140,91,37,38,124,40,1,252,0,0,0,0,42,128,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,6,170,170,170,191,234,170,170,169,0,15,255,255,255,255,255,255,255,254,0,15,255,255,255,255,255,255,255,254,0,15,255,255,255,255,255,255,255,254,0,15,240,0,0,0,0,0,0,254,0,15,240,0,0,0,0,0,0,254,0,15,240,0,0,0,0,0,0,254,0,15,240,0,0,0,0,0,0,254,0,15,240,191,255,255,255,255,208,254,0,6,160,191,255,255,255,255,208,169,0,0,0,191,255,255,255,255,208,0,0,0,0,21,85,85,85,85,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,170,170,170,170,170,170,170,170,64,47,255,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,255,128,0,0,3,252,0,31,208,0,0,0,0,0,3,252,0,31,208,0,0,0,0,0,3,252,0,31,208,0,0,0,0,0,7,248,0,31,208,0,0,0,0,0,15,244,0,31,208,0,0,0,0,0,15,240,0,31,208,0,0,0,0,0,63,224,0,31,208,0,30,64,0,0,191,192,0,31,208,0,31,192,0,2,255,128,0,31,208,0,31,192,0,31,255,0,0,31,208,0,47,192,1,255,252,0,0,31,245,85,191,128,127,255,224,0,0,15,255,255,255,64,63,255,64,0,0,11,255,255,255,0,15,244,0,0,0,1,255,255,248,0,5,0,0,0,0,0,0,0,0,0, + // 0x5b9a 定 + 154,91,37,38,124,40,1,252,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,6,170,170,170,191,234,170,170,169,0,11,255,255,255,255,255,255,255,254,0,11,255,255,255,255,255,255,255,254,0,11,255,255,255,255,255,255,255,254,0,11,240,0,0,0,0,0,0,254,0,11,240,0,0,0,0,0,0,254,0,11,240,0,0,0,0,0,0,254,0,11,240,0,0,0,0,0,0,254,0,11,240,170,170,170,170,170,160,254,0,11,240,255,255,255,255,255,244,254,0,0,0,255,255,255,255,255,244,0,0,0,0,255,255,255,255,255,244,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,1,253,0,63,192,0,0,0,0,0,2,253,0,63,192,0,0,0,0,0,3,252,0,63,192,0,0,0,0,0,3,252,0,63,255,255,255,64,0,0,3,248,0,63,255,255,255,64,0,0,7,248,0,63,255,255,255,64,0,0,11,252,0,63,213,85,85,0,0,0,15,253,0,63,192,0,0,0,0,0,31,255,0,63,192,0,0,0,0,0,47,255,128,63,192,0,0,0,0,0,127,255,224,63,192,0,0,0,0,0,255,143,248,63,192,0,0,0,0,1,255,7,255,127,192,0,0,0,0,3,254,1,255,255,192,0,0,0,0,15,252,0,127,255,255,234,170,170,128,63,244,0,15,255,255,255,255,255,128,127,208,0,0,191,255,255,255,255,0,15,128,0,0,5,175,255,255,255,0,2,0,0,0,0,0,0,0,0,0, + // 0x5ba2 客 + 162,91,36,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,21,85,85,85,255,85,85,85,84,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,192,0,36,0,0,0,3,252,63,192,0,255,128,0,0,3,252,63,192,2,255,0,0,0,3,252,63,192,11,255,255,255,253,3,252,63,192,47,255,255,255,255,131,252,0,0,255,255,255,255,255,64,0,0,11,255,192,0,3,254,0,0,0,127,255,240,0,15,248,0,0,7,255,239,252,0,127,240,0,0,11,255,67,255,66,255,128,0,0,3,248,0,255,255,254,0,0,0,0,128,0,47,255,244,0,0,0,0,0,0,15,255,244,0,0,0,0,0,1,191,255,255,144,0,0,0,0,47,255,255,255,254,64,0,0,6,255,255,65,255,255,255,148,6,255,255,244,0,27,255,255,255,255,255,254,0,0,0,127,255,253,191,255,255,255,255,255,255,255,252,63,231,255,255,255,255,255,208,96,20,3,255,255,255,255,255,208,0,0,3,248,0,0,0,47,208,0,0,3,248,0,0,0,47,208,0,0,3,248,0,0,0,47,208,0,0,3,248,0,0,0,47,208,0,0,3,248,0,0,0,47,208,0,0,3,255,255,255,255,255,208,0,0,3,255,255,255,255,255,208,0,0,3,255,255,255,255,255,208,0,0,3,248,0,0,0,47,208,0,0,2,164,0,0,0,21,64,0, + // 0x5bab 宫 + 171,91,34,38,86,40,3,252,0,0,0,6,224,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,7,252,0,0,0,0,106,170,170,171,255,170,170,170,144,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,0,0,0,0,0,0,15,224,191,0,0,0,0,0,0,15,224,191,0,0,0,0,0,0,15,224,191,31,255,255,255,255,255,79,224,191,31,255,255,255,255,255,79,224,0,31,255,255,255,255,255,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,192,0,0,0,63,64,0,0,31,255,255,255,255,255,64,0,0,31,255,255,255,255,255,64,0,0,31,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,255,255,252,0,2,255,255,255,255,255,255,252,0,2,255,255,255,255,255,255,252,0,2,252,0,0,0,0,2,252,0,2,252,0,0,0,0,2,252,0,2,252,0,0,0,0,2,252,0,2,252,0,0,0,0,2,252,0,2,252,0,0,0,0,2,252,0,2,255,255,255,255,255,255,252,0,2,255,255,255,255,255,255,252,0,2,255,255,255,255,255,255,252,0,2,252,0,0,0,0,2,252,0,2,168,0,0,0,0,1,168,0, + // 0x5bf9 对 + 249,91,37,38,124,40,2,252,0,0,0,0,0,0,0,170,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,42,170,170,169,0,0,0,254,0,0,63,255,255,255,128,0,0,254,0,0,63,255,255,255,64,0,0,254,0,0,63,255,255,255,64,0,0,254,0,0,0,0,0,191,0,0,0,254,0,0,0,0,0,191,47,255,255,255,255,64,0,0,0,255,47,255,255,255,255,64,0,0,0,254,47,255,255,255,255,64,0,0,1,253,26,170,170,255,170,0,2,128,1,253,0,0,0,254,0,0,11,224,2,252,0,0,0,254,0,0,31,248,3,252,0,0,0,254,0,0,7,254,7,248,0,128,0,254,0,0,1,255,139,244,11,208,0,254,0,0,0,127,239,240,15,240,0,254,0,0,0,31,255,224,7,248,0,254,0,0,0,7,255,208,3,252,0,254,0,0,0,2,255,192,0,254,0,254,0,0,0,0,191,208,0,191,0,254,0,0,0,0,255,240,0,127,128,254,0,0,0,1,255,252,0,63,192,254,0,0,0,3,255,255,0,47,64,254,0,0,0,11,253,255,128,4,0,254,0,0,0,15,244,191,192,0,0,254,0,0,0,63,240,63,240,0,0,254,0,0,0,191,192,15,224,0,0,254,0,0,2,255,64,11,128,0,0,254,0,0,7,254,0,2,0,0,0,254,0,0,47,252,0,0,0,0,0,254,0,0,191,240,0,0,0,15,255,254,0,0,191,192,0,0,0,11,255,253,0,0,47,0,0,0,0,3,255,248,0,0,8,0,0,0,0,3,254,144,0,0, + // 0x5c06 将 + 6,92,38,38,124,40,1,252,0,0,253,0,0,0,0,2,128,0,0,1,253,0,0,0,6,191,224,0,0,1,253,0,0,90,255,255,248,0,0,1,253,22,255,255,255,255,228,0,0,1,253,63,255,255,255,164,0,0,1,1,253,63,255,250,80,0,0,0,63,1,253,30,80,0,0,0,36,0,63,193,253,0,0,31,192,0,191,0,47,209,253,6,192,31,192,0,255,0,15,241,253,15,208,15,224,2,254,0,11,245,253,11,240,11,240,7,252,0,3,253,253,3,244,7,240,15,240,0,2,254,253,3,252,3,244,47,224,0,0,255,253,1,252,3,244,127,192,0,0,245,253,0,253,2,64,255,0,0,0,1,253,0,249,0,3,253,0,0,0,1,253,0,64,0,2,253,0,0,0,1,253,0,0,0,0,191,0,0,0,1,253,0,0,0,0,191,0,0,0,1,253,21,85,85,85,255,85,64,0,1,253,63,255,255,255,255,255,208,0,1,253,63,255,255,255,255,255,208,0,7,253,63,255,255,255,255,255,208,0,47,253,0,0,0,0,191,0,0,1,255,253,0,24,0,0,191,0,0,15,255,253,0,191,0,0,191,0,0,191,254,253,0,191,128,0,191,0,0,127,241,253,0,63,224,0,191,0,0,63,129,253,0,15,244,0,191,0,0,45,1,253,0,7,252,0,191,0,0,0,1,253,0,2,254,0,191,0,0,0,1,253,0,0,253,0,191,0,0,0,1,253,0,0,144,0,191,0,0,0,1,253,0,0,0,0,191,0,0,0,1,253,0,0,7,255,255,0,0,0,1,253,0,0,3,255,254,0,0,0,1,253,0,0,3,255,252,0,0,0,0,168,0,0,1,170,64,0,0, + // 0x5c0f 小 + 15,92,38,37,114,40,1,252,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,6,80,0,63,192,0,120,0,0,0,11,252,0,63,192,3,252,0,0,0,11,248,0,63,192,2,254,0,0,0,15,244,0,63,192,0,255,0,0,0,15,240,0,63,192,0,191,192,0,0,31,240,0,63,192,0,63,192,0,0,63,224,0,63,192,0,47,224,0,0,63,192,0,63,192,0,31,240,0,0,127,192,0,63,192,0,15,248,0,0,191,128,0,63,192,0,7,252,0,0,255,64,0,63,192,0,3,253,0,2,255,0,0,63,192,0,2,255,0,3,253,0,0,63,192,0,1,255,0,7,252,0,0,63,192,0,0,255,128,15,248,0,0,63,192,0,0,191,192,47,240,0,0,63,192,0,0,63,192,127,208,0,0,63,192,0,0,63,224,47,192,0,0,63,192,0,0,47,240,3,64,0,0,63,192,0,0,31,144,0,0,0,0,63,192,0,0,8,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,31,255,255,192,0,0,0,0,0,0,15,255,255,128,0,0,0,0,0,0,7,255,255,0,0,0,0,0,0,0,3,255,164,0,0,0,0,0, + // 0x5c31 就 + 49,92,38,38,124,40,1,252,0,0,63,128,0,0,63,128,0,0,0,0,63,128,0,0,63,129,128,0,0,0,63,128,0,0,63,143,224,0,0,0,63,128,0,0,63,139,244,0,0,0,63,128,0,0,63,131,253,0,63,255,255,255,255,0,63,128,255,0,63,255,255,255,255,0,63,128,127,64,63,255,255,255,255,0,63,128,63,192,21,85,85,85,85,0,63,128,29,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,170,191,234,170,128,3,255,255,255,244,255,255,255,255,192,3,255,255,255,244,255,255,255,255,192,3,255,255,255,244,255,255,255,255,192,3,248,0,7,244,0,63,128,0,0,3,248,0,3,244,0,63,128,0,0,3,248,0,3,244,0,127,252,0,0,3,248,0,3,244,0,127,252,0,0,3,248,0,3,244,0,191,252,0,0,3,255,255,255,244,0,191,252,0,0,3,255,255,255,244,0,255,252,0,0,3,255,255,255,244,0,255,252,0,0,0,0,63,128,0,1,255,252,0,0,0,0,63,128,0,2,254,252,0,0,1,228,63,135,208,3,253,252,0,0,2,252,63,139,240,3,249,252,0,0,3,248,63,131,244,11,245,252,0,0,7,244,63,130,252,15,241,252,0,0,11,240,63,129,252,31,225,252,2,0,15,224,63,128,254,63,209,252,3,208,31,208,63,128,190,191,193,252,3,224,63,192,63,128,80,255,65,252,3,224,191,64,63,128,3,254,1,252,3,224,47,0,63,128,11,252,1,252,11,208,9,63,255,64,47,244,1,255,255,208,0,31,255,64,127,224,0,255,255,192,0,15,254,0,31,128,0,191,255,64,0,5,64,0,2,0,0,22,164,0, + // 0x5c4f 屏 + 79,92,37,36,104,40,1,252,0,127,255,255,255,255,255,255,244,0,0,127,255,255,255,255,255,255,244,0,0,127,255,255,255,255,255,255,244,0,0,127,64,0,0,0,0,7,244,0,0,127,64,0,0,0,0,7,244,0,0,127,64,0,0,0,0,7,244,0,0,127,64,0,0,0,0,7,244,0,0,127,255,255,255,255,255,255,244,0,0,127,255,255,255,255,255,255,244,0,0,127,255,255,255,255,255,255,244,0,0,127,64,27,128,0,1,253,0,0,0,127,64,47,208,0,2,253,0,0,0,127,64,15,240,0,7,252,0,0,0,127,64,7,244,0,15,240,0,0,0,127,64,3,248,0,15,208,0,0,0,127,31,255,255,255,255,255,254,0,0,191,31,255,255,255,255,255,254,0,0,191,31,255,255,255,255,255,254,0,0,191,0,3,252,0,31,208,0,0,0,191,0,3,252,0,31,208,0,0,0,255,0,3,252,0,31,208,0,0,0,255,0,3,252,0,31,208,0,0,0,254,0,3,252,0,31,208,0,0,0,254,191,255,255,255,255,255,255,192,1,253,191,255,255,255,255,255,255,192,2,252,191,255,255,255,255,255,255,192,3,252,0,11,244,0,31,208,0,0,3,248,0,15,240,0,31,208,0,0,7,244,0,31,240,0,31,208,0,0,11,240,0,63,208,0,31,208,0,0,15,240,0,255,128,0,31,208,0,0,47,224,7,255,0,0,31,208,0,0,63,192,127,252,0,0,31,208,0,0,127,192,127,240,0,0,31,208,0,0,31,64,47,192,0,0,31,208,0,0,2,0,9,0,0,0,31,192,0,0, + // 0x5de5 工 + 229,93,36,30,14,40,2,255,11,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,224,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,170,170,170,170,170,170, + // 0x5dee 差 + 238,93,36,38,86,40,2,252,0,0,4,0,0,0,36,0,0,0,0,189,0,0,0,191,128,0,0,0,255,0,0,0,255,64,0,0,0,191,128,0,1,254,0,0,0,0,63,192,0,3,252,0,0,0,0,47,224,0,11,248,0,0,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,21,85,255,85,85,85,85,85,84,0,1,254,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,3,253,255,255,255,255,255,0,0,7,252,255,255,255,255,255,0,0,11,244,255,255,255,255,255,0,0,15,240,0,2,253,0,0,0,0,47,224,0,2,252,0,0,0,0,127,192,0,2,252,0,0,0,0,255,128,0,2,252,0,0,0,2,255,0,0,2,252,0,0,0,7,253,0,0,2,252,0,0,0,31,248,85,85,86,253,85,85,80,191,240,255,255,255,255,255,255,252,255,192,255,255,255,255,255,255,252,63,0,255,255,255,255,255,255,252,8,0,0,0,0,0,0,0,0, + // 0x5df2 已 + 242,93,34,34,50,40,4,253,255,255,255,255,255,255,255,192,0,255,255,255,255,255,255,255,192,0,255,255,255,255,255,255,255,192,0,170,170,170,170,170,170,191,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,10,144,0,0,0,0,63,192,0,31,224,0,0,0,0,63,192,0,31,224,0,0,0,0,63,192,0,31,224,0,0,0,0,63,192,0,31,224,0,0,0,0,63,192,0,31,224,0,0,0,0,63,192,0,31,250,170,170,170,170,191,192,0,31,255,255,255,255,255,255,192,0,31,255,255,255,255,255,255,192,0,31,255,255,255,255,255,255,192,0,31,224,0,0,0,0,63,192,0,31,224,0,0,0,0,63,192,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,4,0,31,224,0,0,0,0,0,15,128,31,224,0,0,0,0,0,15,240,31,224,0,0,0,0,0,15,240,31,224,0,0,0,0,0,15,240,15,224,0,0,0,0,0,47,224,15,240,0,0,0,0,0,63,208,15,249,0,0,0,0,1,255,192,11,255,255,255,255,255,255,255,128,3,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,248,0,0,6,170,170,170,170,170,64,0, + // 0x5e73 平 + 115,94,36,35,59,40,2,252,11,255,255,255,255,255,255,255,224,11,255,255,255,255,255,255,255,224,11,255,255,255,255,255,255,255,224,6,170,170,170,255,170,170,170,144,0,0,0,0,255,0,0,0,0,0,1,64,0,255,0,1,144,0,0,63,192,0,255,0,3,253,0,0,47,192,0,255,0,7,252,0,0,15,224,0,255,0,11,248,0,0,15,240,0,255,0,15,240,0,0,7,248,0,255,0,31,224,0,0,3,252,0,255,0,63,192,0,0,2,253,0,255,0,127,128,0,0,1,254,0,255,0,255,0,0,0,0,248,0,255,0,189,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,254,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0, + // 0x5e76 并 + 118,94,36,39,95,40,2,251,0,0,96,0,0,0,29,0,0,0,3,252,0,0,0,63,240,0,0,2,253,0,0,0,127,208,0,0,0,255,0,0,0,255,128,0,0,0,191,128,0,1,255,0,0,0,0,63,208,0,3,253,0,0,0,0,31,224,0,11,248,0,0,0,0,15,208,0,7,240,0,0,10,170,175,170,170,170,170,170,164,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,106,170,191,234,170,171,254,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,127,128,0,3,252,0,0,0,0,191,64,0,3,252,0,0,0,0,255,0,0,3,252,0,0,0,0,255,0,0,3,252,0,0,0,2,254,0,0,3,252,0,0,0,3,252,0,0,3,252,0,0,0,15,252,0,0,3,252,0,0,0,47,240,0,0,3,252,0,0,0,191,224,0,0,3,252,0,0,3,255,128,0,0,3,252,0,0,31,255,0,0,0,3,252,0,0,127,248,0,0,0,3,252,0,0,47,208,0,0,0,3,252,0,0,10,0,0,0,0,2,248,0,0,0,0,0,0,0,0,0,0,0, + // 0x5e8a 床 + 138,94,38,38,124,40,1,252,0,0,0,0,5,80,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,170,170,170,175,250,170,170,170,128,0,255,255,255,255,255,255,255,255,192,0,255,255,255,255,255,255,255,255,192,0,255,255,255,255,255,255,255,255,192,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,127,64,0,0,0,0,254,0,0,0,127,64,0,0,0,0,254,0,0,0,127,64,0,0,0,0,254,0,0,0,127,64,0,0,0,0,254,0,0,0,127,64,0,0,0,0,254,26,170,170,191,170,170,170,64,0,254,47,255,255,255,255,255,255,192,0,254,47,255,255,255,255,255,255,192,0,253,47,255,255,255,255,255,255,192,1,253,0,0,3,255,240,0,0,0,1,253,0,0,15,255,248,0,0,0,1,253,0,0,31,255,253,0,0,0,1,252,0,0,63,255,255,0,0,0,2,252,0,0,255,255,191,192,0,0,2,252,0,2,255,127,111,224,0,0,2,252,0,7,252,127,79,248,0,0,3,252,0,31,244,127,71,254,0,0,3,248,0,127,224,127,65,255,128,0,7,244,1,255,192,127,64,191,224,0,11,240,7,255,0,127,64,47,252,0,11,240,47,252,0,127,64,11,255,64,15,240,255,240,0,127,64,2,255,208,31,224,255,192,0,127,64,0,191,128,47,192,63,0,0,127,64,0,31,0,63,192,8,0,0,127,64,0,4,0,127,128,0,0,0,127,64,0,0,0,31,0,0,0,0,127,64,0,0,0,1,0,0,0,0,127,0,0,0,0, + // 0x5e94 应 + 148,94,37,39,134,40,1,251,0,0,0,0,11,224,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,0,3,253,0,0,0,0,0,255,255,255,255,255,255,255,255,128,0,255,255,255,255,255,255,255,255,128,0,255,255,255,255,255,255,255,255,128,0,255,170,170,170,170,170,170,170,64,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,2,208,0,3,144,0,0,254,0,0,15,224,0,3,252,0,0,254,1,192,11,240,0,7,248,0,0,254,31,208,7,240,0,11,244,0,0,254,15,224,3,244,0,15,240,0,0,254,11,240,3,252,0,31,240,0,0,254,7,244,2,252,0,47,208,0,1,253,3,252,1,253,0,63,192,0,1,253,2,252,0,254,0,127,128,0,1,253,1,253,0,254,0,191,64,0,1,253,0,254,0,255,0,255,0,0,1,253,0,255,0,191,1,254,0,0,2,252,0,127,64,127,66,252,0,0,2,252,0,63,128,63,131,248,0,0,2,252,0,63,192,57,11,244,0,0,3,252,0,47,192,0,15,240,0,0,3,252,0,31,64,0,31,208,0,0,3,248,0,4,0,0,63,192,0,0,7,244,0,0,0,0,127,64,0,0,11,240,0,0,0,0,255,0,0,0,15,240,0,0,0,2,253,0,0,0,15,240,170,170,170,171,254,170,170,128,47,225,255,255,255,255,255,255,255,192,63,193,255,255,255,255,255,255,255,192,127,193,255,255,255,255,255,255,255,192,47,64,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, + // 0x5e9f 废 + 159,94,37,39,134,40,1,251,0,0,0,0,6,224,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,0,3,252,0,0,0,0,1,255,255,255,255,255,255,255,255,192,1,255,255,255,255,255,255,255,255,192,1,255,255,255,255,255,255,255,255,192,1,254,170,170,170,170,170,170,170,128,1,253,0,0,0,164,0,0,0,0,1,253,0,255,0,254,0,240,0,0,1,253,0,255,1,253,3,252,0,0,1,253,2,253,2,252,2,255,0,0,1,253,3,252,3,252,0,191,128,0,1,253,7,248,3,248,0,63,208,0,1,253,15,244,7,244,0,15,0,0,1,253,47,255,255,255,255,255,255,0,1,253,31,255,255,255,255,255,255,0,1,253,15,255,255,255,255,255,255,0,2,253,10,85,127,213,85,85,85,0,2,252,0,0,63,192,0,0,0,0,2,252,0,0,191,64,0,0,0,0,2,252,0,0,255,0,0,0,0,0,2,252,0,1,255,255,255,255,64,0,3,252,0,3,255,255,255,255,192,0,3,252,0,11,255,255,255,255,128,0,3,252,0,31,253,0,2,255,0,0,3,248,0,63,255,0,3,253,0,0,7,248,0,255,255,192,15,252,0,0,7,244,3,255,47,240,63,240,0,0,11,240,15,252,11,254,255,192,0,0,15,240,127,240,2,255,255,0,0,0,15,242,255,208,0,255,253,0,0,0,31,231,255,0,7,255,255,208,0,0,47,210,248,0,127,255,255,254,64,0,63,192,224,111,255,248,47,255,254,64,127,128,0,255,255,128,2,255,255,64,31,64,0,63,244,0,0,27,254,0,2,0,0,46,0,0,0,0,108,0,0,0,0,0,0,0,0,0,0,0, + // 0x5ea6 度 + 166,94,37,38,124,40,1,252,0,0,0,0,11,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,255,255,255,255,255,255,255,255,128,0,255,255,255,255,255,255,255,255,128,0,255,255,255,255,255,255,255,255,128,0,254,85,85,85,85,85,85,85,0,0,253,0,6,160,0,2,160,0,0,0,253,0,11,240,0,7,244,0,0,0,253,0,11,240,0,7,244,0,0,0,253,0,11,240,0,7,244,0,0,0,253,127,255,255,255,255,255,255,64,0,253,127,255,255,255,255,255,255,64,0,253,127,255,255,255,255,255,255,64,0,253,0,11,240,0,7,244,0,0,0,253,0,11,240,0,7,244,0,0,0,253,0,11,240,0,7,244,0,0,0,253,0,11,255,255,255,244,0,0,1,253,0,11,255,255,255,244,0,0,1,253,0,11,255,255,255,244,0,0,1,252,0,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,0,2,252,63,255,255,255,255,255,128,0,2,252,63,255,255,255,255,255,224,0,2,252,63,255,255,255,255,255,192,0,3,248,0,11,208,0,0,255,128,0,3,244,0,15,244,0,3,255,0,0,7,244,0,3,253,0,15,252,0,0,11,240,0,1,255,192,191,240,0,0,11,240,0,0,127,251,255,192,0,0,15,224,0,0,15,255,254,0,0,0,31,208,0,0,31,255,254,0,0,0,47,192,0,27,255,255,255,249,64,0,63,129,191,255,255,230,255,255,255,128,127,64,255,255,254,0,31,255,255,128,31,0,191,254,64,0,0,111,255,0,1,0,41,0,0,0,0,0,105,0, + // 0x5f00 开 + 0,95,36,35,59,40,2,252,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,10,170,191,234,170,171,254,170,164,0,0,47,192,0,2,253,0,0,0,0,47,192,0,2,253,0,0,0,0,47,192,0,2,253,0,0,0,0,47,192,0,2,253,0,0,0,0,47,192,0,2,253,0,0,0,0,47,192,0,2,253,0,0,0,0,47,192,0,2,253,0,0,0,0,47,192,0,2,253,0,0,0,0,47,192,0,2,253,0,0,0,0,47,192,0,2,253,0,0,106,170,191,234,170,171,254,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,63,192,0,2,253,0,0,0,0,63,128,0,2,253,0,0,0,0,127,128,0,2,253,0,0,0,0,191,64,0,2,253,0,0,0,0,255,0,0,2,253,0,0,0,1,255,0,0,2,253,0,0,0,3,254,0,0,2,253,0,0,0,3,252,0,0,2,253,0,0,0,15,252,0,0,2,253,0,0,0,47,244,0,0,2,253,0,0,0,127,224,0,0,2,253,0,0,1,255,192,0,0,2,253,0,0,11,255,64,0,0,2,253,0,0,47,253,0,0,0,2,253,0,0,127,244,0,0,0,2,253,0,0,31,208,0,0,0,2,253,0,0,6,0,0,0,0,1,253,0,0, + // 0x5f03 弃 + 3,95,36,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,21,85,85,85,255,85,85,85,84,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,1,255,0,0,0,0,0,0,0,3,253,0,0,244,0,0,0,0,11,248,0,7,254,0,0,0,0,15,240,0,1,255,208,0,0,0,63,192,0,0,47,248,0,26,170,191,234,255,255,255,255,0,47,255,255,255,255,255,255,255,208,47,255,255,255,255,255,255,255,244,31,255,254,170,169,85,80,11,252,0,0,0,0,0,1,84,2,244,0,0,63,128,0,3,248,0,128,0,0,63,128,0,3,248,0,0,0,0,63,128,0,3,248,0,0,0,0,63,128,0,3,248,0,0,0,0,63,128,0,3,248,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,191,149,85,87,253,85,85,0,0,255,0,0,3,248,0,0,0,0,255,0,0,3,248,0,0,0,3,254,0,0,3,248,0,0,0,11,252,0,0,3,248,0,0,0,47,248,0,0,3,248,0,0,0,191,240,0,0,3,248,0,0,7,255,192,0,0,3,248,0,0,191,254,0,0,0,3,248,0,0,255,248,0,0,0,3,248,0,0,63,128,0,0,0,3,248,0,0,24,0,0,0,0,2,168,0,0, + // 0x5f0f 式 + 15,95,37,38,124,40,2,252,0,0,0,0,0,170,0,64,0,0,0,0,0,0,0,255,2,244,0,0,0,0,0,0,0,255,7,254,0,0,0,0,0,0,0,191,1,255,192,0,0,0,0,0,0,191,0,63,240,0,0,0,0,0,0,191,0,15,240,0,0,0,0,0,0,191,64,3,128,0,106,170,170,170,170,255,170,171,169,0,191,255,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,255,254,0,191,255,255,255,255,255,255,255,254,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,15,255,255,255,252,63,192,0,0,0,15,255,255,255,252,47,208,0,0,0,15,255,255,255,252,47,208,0,0,0,10,170,255,170,168,31,224,0,0,0,0,0,191,0,0,15,224,0,0,0,0,0,191,0,0,15,240,0,0,0,0,0,191,0,0,15,240,0,0,0,0,0,191,0,0,11,244,0,0,0,0,0,191,0,0,7,248,0,0,0,0,0,191,0,0,3,252,0,0,0,0,0,191,0,0,3,252,0,40,0,0,0,191,0,0,2,253,0,63,64,0,0,191,0,27,1,255,0,63,128,0,0,191,111,255,64,255,0,63,64,0,1,255,255,255,64,191,192,63,64,6,255,255,255,254,0,63,208,127,0,127,255,255,254,64,0,47,244,191,0,63,255,254,64,0,0,15,255,254,0,63,249,0,0,0,0,3,255,252,0,25,0,0,0,0,0,0,255,248,0,0,0,0,0,0,0,0,47,144,0, + // 0x5f15 引 + 21,95,31,37,40,40,3,252,0,0,0,0,0,0,3,252,63,255,255,255,192,0,3,252,63,255,255,255,192,0,3,252,63,255,255,255,192,0,3,252,21,85,85,111,192,0,3,252,0,0,0,31,192,0,3,252,0,0,0,31,192,0,3,252,0,0,0,31,192,0,3,252,0,0,0,31,192,0,3,252,0,0,0,31,192,0,3,252,15,255,255,255,192,0,3,252,15,255,255,255,192,0,3,252,15,255,255,255,192,0,3,252,31,229,85,85,64,0,3,252,31,192,0,0,0,0,3,252,47,192,0,0,0,0,3,252,63,192,0,0,0,0,3,252,63,192,0,0,0,0,3,252,63,128,0,0,0,0,3,252,127,255,255,255,208,0,3,252,191,255,255,255,208,0,3,252,191,255,255,255,192,0,3,252,255,85,85,127,192,0,3,252,254,0,0,47,192,0,3,252,0,0,0,63,192,0,3,252,0,0,0,63,192,0,3,252,0,0,0,63,192,0,3,252,0,0,0,63,128,0,3,252,0,0,0,127,128,0,3,252,0,0,0,127,64,0,3,252,0,0,0,191,0,0,3,252,0,0,0,255,0,0,3,252,0,0,2,255,0,0,3,252,0,255,255,253,0,0,3,252,0,191,255,252,0,0,3,252,0,127,255,240,0,0,3,252,0,42,170,64,0,0,2,252, + // 0x5f39 弹 + 57,95,37,38,124,40,2,252,0,0,0,0,4,0,0,20,0,0,0,0,0,0,126,0,0,63,192,0,191,255,255,0,191,64,0,127,192,0,191,255,255,0,63,192,0,255,64,0,191,255,255,0,31,224,0,254,0,0,21,85,255,0,11,240,2,252,0,0,0,0,191,0,3,248,3,248,0,0,0,0,191,0,2,208,11,240,0,0,0,0,191,0,0,0,31,208,0,0,0,0,191,11,255,255,255,255,252,0,0,0,191,11,255,255,255,255,252,0,63,255,255,11,255,255,255,255,252,0,63,255,255,11,240,7,244,3,252,0,63,255,255,11,240,7,244,3,252,0,63,85,85,11,240,7,244,3,252,0,63,0,0,11,255,255,255,255,252,0,63,0,0,11,255,255,255,255,252,0,63,0,0,11,255,255,255,255,252,0,63,0,0,11,240,7,244,3,252,0,63,0,0,11,240,7,244,3,252,0,63,255,255,11,240,7,244,3,252,0,127,255,255,11,255,255,255,255,252,0,127,255,254,11,255,255,255,255,252,0,0,0,254,11,255,255,255,255,252,0,0,0,254,0,0,7,244,0,0,0,0,0,254,0,0,7,244,0,0,0,0,0,253,0,0,7,244,0,0,0,0,0,253,255,255,255,255,255,255,64,0,0,253,255,255,255,255,255,255,64,0,0,253,255,255,255,255,255,255,64,0,1,252,21,85,91,249,85,85,0,0,1,252,0,0,7,244,0,0,0,0,2,252,0,0,7,244,0,0,0,0,7,248,0,0,7,244,0,0,0,47,255,244,0,0,7,244,0,0,0,15,255,240,0,0,7,244,0,0,0,15,255,208,0,0,7,244,0,0,0,5,149,0,0,0,7,244,0,0,0, + // 0x5f52 归 + 82,95,34,39,95,40,3,251,0,0,170,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,191,2,170,170,170,170,144,0,0,191,3,255,255,255,255,224,191,0,191,3,255,255,255,255,224,191,0,191,3,255,255,255,255,224,191,0,191,0,0,0,0,15,224,191,0,191,0,0,0,0,15,224,191,0,191,0,0,0,0,15,224,191,0,191,0,0,0,0,15,224,191,0,191,0,0,0,0,15,224,191,0,191,0,0,0,0,15,224,191,0,191,0,0,0,0,15,224,191,0,191,0,0,0,0,15,224,191,0,191,0,0,0,0,15,224,191,0,191,0,0,0,0,15,224,191,0,191,0,255,255,255,255,224,191,0,255,0,255,255,255,255,224,191,0,255,0,255,255,255,255,224,191,0,255,0,170,170,170,191,224,191,0,255,0,0,0,0,15,224,191,0,255,0,0,0,0,15,224,191,0,254,0,0,0,0,15,224,191,1,254,0,0,0,0,15,224,85,1,253,0,0,0,0,15,224,0,2,252,0,0,0,0,15,224,0,3,252,0,0,0,0,15,224,0,7,248,0,0,0,0,15,224,0,15,244,0,0,0,0,15,224,0,31,240,0,0,0,0,15,224,0,63,224,15,255,255,255,255,224,0,191,192,15,255,255,255,255,224,2,255,64,15,255,255,255,255,224,11,254,0,10,170,170,170,175,224,31,252,0,0,0,0,0,15,224,7,240,0,0,0,0,0,15,224,1,192,0,0,0,0,0,5,64,0,0,0,0,0,0,0,0,0, + // 0x5f84 径 + 132,95,38,38,124,40,1,252,0,0,36,0,0,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,3,255,11,255,255,255,255,248,0,0,11,252,11,255,255,255,255,252,0,0,47,240,11,255,255,255,255,248,0,0,255,208,0,27,64,0,15,244,0,3,255,64,0,63,192,0,31,224,0,31,253,0,0,31,208,0,63,192,0,127,244,9,0,15,240,0,255,128,0,63,208,31,208,7,252,2,255,0,0,15,0,63,192,2,255,11,252,0,0,4,0,191,128,0,191,239,244,0,0,0,2,255,0,0,63,255,208,0,0,0,7,253,0,0,15,255,64,0,0,0,15,248,0,0,127,255,224,0,0,0,63,240,0,7,255,255,254,0,0,0,255,240,0,111,255,95,255,228,0,3,255,240,27,255,248,2,255,255,144,31,255,240,191,255,128,0,47,255,208,191,255,240,63,248,1,84,2,255,128,191,219,240,46,64,2,252,0,27,0,63,75,240,0,0,2,252,0,0,0,29,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,3,252,0,0,0,0,11,240,7,255,255,255,255,252,0,0,11,240,7,255,255,255,255,252,0,0,11,240,7,255,255,255,255,252,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,255,255,255,255,255,255,208,0,11,240,255,255,255,255,255,255,208,0,11,240,255,255,255,255,255,255,208,0,11,240,21,85,85,85,85,85,64,0,11,240,0,0,0,0,0,0,0, + // 0x5f85 待 + 133,95,38,38,124,40,1,252,0,0,96,0,0,2,164,0,0,0,0,0,254,0,0,3,248,0,0,0,0,2,255,0,0,3,248,0,0,0,0,11,252,0,0,3,248,0,0,0,0,47,244,0,0,3,248,0,0,0,0,191,208,11,255,255,255,255,253,0,3,255,64,11,255,255,255,255,253,0,31,253,0,11,255,255,255,255,253,0,63,244,0,1,85,87,253,85,84,0,31,192,41,0,0,3,248,0,0,0,15,0,63,128,0,3,248,0,0,0,0,0,255,64,0,3,248,0,0,0,0,2,254,0,0,3,248,0,0,0,0,7,252,255,255,255,255,255,255,208,0,15,244,255,255,255,255,255,255,208,0,63,240,255,255,255,255,255,255,208,0,255,240,85,85,85,85,255,85,64,3,255,240,0,0,0,0,191,0,0,15,255,240,0,0,0,0,191,0,0,127,255,240,0,0,0,0,191,0,0,191,239,240,21,85,85,85,255,85,64,63,143,240,127,255,255,255,255,255,192,46,15,240,127,255,255,255,255,255,192,4,15,240,127,255,255,255,255,255,192,0,15,240,0,0,0,0,191,0,0,0,15,240,0,124,0,0,191,0,0,0,15,240,1,254,0,0,191,0,0,0,15,240,0,255,64,0,191,0,0,0,15,240,0,63,192,0,191,0,0,0,15,240,0,31,240,0,191,0,0,0,15,240,0,15,244,0,191,0,0,0,15,240,0,3,252,0,191,0,0,0,15,240,0,2,224,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,0,3,255,255,0,0,0,15,240,0,0,3,255,254,0,0,0,15,240,0,0,2,255,252,0,0,0,6,144,0,0,0,169,64,0,0, + // 0x5faa 循 + 170,95,38,38,124,40,1,252,0,0,144,0,0,0,0,0,0,0,0,1,253,0,0,0,0,27,224,0,0,3,252,0,0,0,91,255,248,0,0,15,244,25,22,255,255,255,252,0,0,63,224,31,255,255,255,250,64,0,0,255,192,31,255,255,255,192,0,0,3,255,0,31,233,64,47,192,0,0,15,252,0,31,192,0,47,192,0,0,127,240,0,31,192,0,47,192,0,0,63,192,56,31,192,0,47,192,0,0,30,0,191,95,255,255,255,255,255,208,4,1,255,31,255,255,255,255,255,208,0,3,252,31,255,255,255,255,255,208,0,15,244,31,192,0,63,128,0,0,0,63,224,31,192,0,63,64,0,0,0,255,208,31,192,0,63,64,0,0,3,255,208,31,195,255,255,255,254,0,15,255,208,31,195,255,255,255,254,0,127,255,208,31,195,255,255,255,254,0,255,223,208,31,195,244,0,0,254,0,127,79,208,31,195,244,0,0,254,0,62,15,208,47,195,244,0,0,254,0,24,15,208,47,195,250,170,170,254,0,0,15,208,47,131,255,255,255,254,0,0,15,208,63,131,255,255,255,254,0,0,15,208,63,131,244,0,0,254,0,0,15,208,63,67,244,0,0,254,0,0,15,208,127,3,244,0,0,254,0,0,15,208,191,3,255,255,255,254,0,0,15,208,191,3,255,255,255,254,0,0,15,208,254,3,250,170,170,254,0,0,15,209,253,3,244,0,0,254,0,0,15,210,252,3,244,0,0,254,0,0,15,211,252,3,250,170,170,254,0,0,15,215,244,3,255,255,255,254,0,0,15,211,240,3,255,255,255,254,0,0,15,208,160,3,244,0,0,254,0,0,10,144,0,2,160,0,0,85,0, + // 0x5fae 微 + 174,95,38,38,124,40,1,252,0,6,64,1,244,0,2,144,0,0,0,15,240,1,244,0,3,244,0,0,0,47,208,1,244,0,7,240,0,0,0,191,193,65,244,20,7,240,0,0,1,255,3,209,244,62,11,240,0,0,7,252,3,209,244,62,15,224,0,0,31,244,3,209,244,62,15,208,0,0,127,224,3,209,244,62,15,192,0,0,127,129,67,209,244,62,47,255,255,208,46,3,251,209,244,62,63,255,255,208,4,11,247,209,244,62,63,255,255,208,0,15,227,255,255,254,127,64,190,0,0,47,195,255,255,254,255,64,190,0,0,127,131,255,255,255,255,64,253,0,0,255,0,0,0,3,255,128,253,0,2,255,0,0,0,7,255,128,252,0,7,255,0,0,0,15,255,192,252,0,31,255,0,0,0,3,235,193,252,0,63,255,15,255,255,255,199,210,248,0,255,255,15,255,255,255,7,227,244,0,191,127,15,255,255,255,3,243,240,0,60,63,0,127,11,224,3,247,240,0,20,63,0,126,7,224,2,255,224,0,0,63,0,126,7,224,1,255,208,0,0,63,0,126,7,224,0,255,192,0,0,63,0,126,7,224,0,255,192,0,0,63,0,189,7,224,0,191,64,0,0,63,0,253,7,224,64,191,0,0,0,63,0,252,7,251,192,255,128,0,0,63,1,252,11,255,211,255,192,0,0,63,2,248,63,255,139,255,240,0,0,63,3,244,47,248,15,247,248,0,0,63,11,240,14,64,63,195,253,0,0,63,31,208,0,1,255,64,255,64,0,63,47,192,0,11,254,0,191,224,0,63,11,0,0,11,244,0,47,208,0,63,1,0,0,3,208,0,11,128,0,63,0,0,0,1,64,0,1,0, + // 0x5fc3 心 + 195,95,38,38,124,40,1,252,0,0,0,20,0,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,255,248,0,0,0,0,0,0,0,0,255,255,128,0,0,0,0,0,0,0,11,255,248,0,0,0,0,0,0,0,0,191,255,64,0,0,0,0,0,0,0,11,255,240,0,0,0,0,0,0,0,0,255,252,0,0,0,0,0,0,0,0,31,244,0,0,0,0,0,0,0,0,2,224,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,1,84,0,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,0,3,252,0,0,0,4,0,0,0,0,3,252,0,0,0,189,0,0,0,249,3,252,0,0,1,255,0,0,0,255,3,252,0,0,0,255,128,0,0,254,3,252,0,0,0,63,208,0,0,254,3,252,0,0,0,47,240,0,1,253,3,252,0,0,0,15,244,0,2,252,3,252,0,0,0,11,252,0,3,252,3,252,0,0,0,3,253,0,3,252,3,252,0,0,0,1,255,0,7,248,3,252,0,0,0,0,255,64,11,244,3,252,0,0,0,0,191,192,15,240,3,252,0,0,0,0,63,192,31,224,3,252,0,0,6,0,63,208,63,208,3,252,0,0,7,240,47,224,127,192,3,252,0,0,7,240,15,224,191,128,3,252,0,0,7,240,14,0,31,0,3,252,0,0,11,240,0,0,0,0,3,252,0,0,11,240,0,0,0,0,3,252,0,0,15,224,0,0,0,0,2,254,0,0,47,208,0,0,0,0,2,255,255,255,255,192,0,0,0,0,0,255,255,255,255,128,0,0,0,0,0,127,255,255,254,0,0,0,0,0,0,1,85,85,80,0,0,0, + // 0x5ffd 忽 + 253,95,36,38,86,40,2,252,0,0,9,0,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,2,255,85,85,85,85,85,64,0,7,255,255,255,255,255,255,192,0,15,255,255,255,255,255,255,192,0,63,255,255,255,255,255,255,192,0,255,192,63,208,31,208,63,192,3,255,0,127,128,63,192,63,192,15,252,0,255,0,127,64,63,128,127,244,3,253,0,255,0,63,128,191,208,15,248,2,253,0,63,128,31,0,63,240,7,252,0,127,64,0,0,191,192,15,240,0,127,64,0,3,255,0,47,224,0,127,64,0,31,252,0,191,192,0,191,0,0,191,240,2,255,0,0,255,0,7,255,192,11,253,0,0,255,0,11,254,0,47,244,0,2,254,0,2,244,0,255,208,15,255,253,0,0,64,11,255,64,11,255,248,0,0,0,11,253,0,7,255,224,0,0,0,2,240,224,0,16,0,0,0,0,0,71,254,0,0,0,0,0,0,0,7,255,192,0,80,0,0,57,11,224,191,244,2,244,0,0,191,15,240,15,252,7,253,0,0,255,15,240,2,240,2,255,64,1,253,15,240,0,128,0,191,192,3,252,15,240,0,0,116,47,240,11,248,15,240,0,0,127,15,248,31,240,15,240,0,0,191,3,253,127,208,15,240,0,0,255,2,255,255,192,11,255,255,255,254,0,255,63,0,7,255,255,255,252,0,120,4,0,1,255,255,255,240,0,0,0,0,0,5,85,85,0,0,0, + // 0x6027 性 + 39,96,37,38,124,40,1,252,0,31,208,0,0,1,168,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,62,65,253,0,0,0,0,31,208,0,127,65,253,0,0,0,0,31,208,0,191,1,253,0,0,0,0,31,208,0,191,1,253,0,0,0,0,31,208,0,255,1,253,0,0,0,0,31,239,0,254,1,253,0,0,0,15,159,255,129,254,170,254,170,169,0,15,159,223,194,255,255,255,255,255,0,15,159,219,211,255,255,255,255,255,0,31,159,215,247,255,255,255,255,255,0,31,95,211,255,240,1,253,0,0,0,47,31,210,255,240,1,253,0,0,0,63,31,208,95,208,1,253,0,0,0,63,31,208,63,192,1,253,0,0,0,126,31,208,63,128,1,253,0,0,0,189,31,208,7,0,1,253,0,0,0,188,31,208,0,0,1,253,0,0,0,4,31,208,0,0,1,253,0,0,0,0,31,208,2,255,255,255,255,252,0,0,31,208,2,255,255,255,255,252,0,0,31,208,2,255,255,255,255,252,0,0,31,208,1,85,86,254,85,84,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,191,255,255,255,255,255,192,0,31,208,191,255,255,255,255,255,192,0,31,208,191,255,255,255,255,255,192,0,31,208,106,170,170,170,170,170,128,0,31,208,0,0,0,0,0,0,0, + // 0x603b 总 + 59,96,36,38,86,40,2,252,0,0,4,0,0,0,80,0,0,0,0,127,0,0,0,190,0,0,0,0,191,128,0,0,255,64,0,0,0,63,208,0,2,255,0,0,0,0,31,240,0,3,252,0,0,0,0,11,248,0,11,248,0,0,0,0,3,252,0,15,240,0,0,0,0,2,252,0,47,224,0,0,0,21,86,245,85,127,229,84,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,21,85,85,165,85,85,84,0,0,0,0,0,244,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,21,65,255,192,0,8,0,3,228,63,192,63,240,0,127,0,3,248,63,192,15,252,0,191,128,7,244,63,192,3,255,0,63,208,15,240,63,192,0,253,0,15,240,15,240,63,192,0,52,0,7,248,31,224,63,192,0,0,9,3,253,63,192,63,192,0,0,15,208,254,127,192,63,192,0,0,15,224,191,255,64,63,208,0,0,47,208,62,127,0,47,255,255,255,255,192,36,4,0,15,255,255,255,255,128,0,0,0,7,255,255,255,254,0,0,0,0,0,21,85,85,64,0,0, + // 0x6062 恢 + 98,96,38,38,124,40,1,252,0,10,128,1,160,0,0,0,0,0,0,31,192,3,244,0,0,0,0,0,0,31,192,3,244,0,0,0,0,0,0,31,192,3,244,0,0,0,0,0,0,31,192,87,249,85,85,85,85,64,0,31,192,255,255,255,255,255,255,192,0,31,192,255,255,255,255,255,255,192,0,31,233,255,255,255,255,255,255,192,10,95,255,3,244,0,0,0,0,0,15,159,239,3,244,0,15,192,0,0,15,95,207,131,244,0,15,192,0,0,15,95,203,195,244,0,15,192,0,0,31,95,199,211,244,0,15,192,0,0,31,31,195,227,244,0,15,192,9,0,47,31,195,227,244,184,15,192,31,192,63,31,194,67,244,252,15,192,47,128,62,31,192,3,244,248,15,192,63,64,125,31,192,3,240,248,15,192,63,0,188,31,192,3,240,244,15,192,190,0,20,31,192,3,241,244,31,192,252,0,0,31,192,3,242,240,31,193,248,0,0,31,192,7,243,240,31,210,244,0,0,31,192,7,251,208,47,211,240,0,0,31,192,11,225,192,63,224,0,0,0,31,192,11,224,0,63,240,0,0,0,31,192,15,208,0,127,244,0,0,0,31,192,15,208,0,254,248,0,0,0,31,192,31,192,1,252,252,0,0,0,31,192,47,192,3,248,190,0,0,0,31,192,63,128,11,240,63,64,0,0,31,192,127,64,31,224,63,192,0,0,31,192,191,0,127,192,31,240,0,0,31,192,254,1,255,64,11,252,0,0,31,194,252,11,254,0,3,255,0,0,31,199,248,63,248,0,1,255,208,0,31,203,240,127,224,0,0,127,208,0,31,193,224,47,64,0,0,31,128,0,31,192,64,8,0,0,0,2,0, + // 0x606f 息 + 111,96,37,39,134,40,2,252,0,0,0,0,64,0,0,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,15,255,255,255,255,255,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,250,170,170,170,171,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,250,170,170,170,175,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,255,255,255,255,255,248,0,0,0,0,0,0,144,0,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,0,7,254,0,0,16,0,0,0,228,10,129,255,128,0,248,0,0,1,253,15,208,127,224,3,254,0,0,3,252,15,208,31,244,1,255,128,0,3,248,15,208,7,240,0,127,224,0,15,244,15,208,2,128,64,31,244,0,31,240,15,208,0,0,185,11,252,0,63,208,15,208,0,0,254,3,255,0,255,128,15,224,0,1,254,0,255,64,255,0,15,255,255,255,252,0,127,0,28,0,11,255,255,255,252,0,56,0,0,0,2,255,255,255,224,0,0,0,0,0,0,5,85,84,0,0,0,0, + // 0x611f 感 + 31,97,38,38,124,40,1,252,0,0,0,0,0,127,2,224,0,0,0,0,0,0,0,127,11,254,0,0,0,0,0,0,0,127,2,255,208,0,0,0,0,0,0,63,64,47,192,0,0,255,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,255,64,0,253,0,0,0,47,192,0,0,0,0,253,0,0,0,31,192,4,0,0,0,253,21,85,85,79,208,31,192,0,0,253,127,255,255,143,224,63,192,0,0,253,127,255,255,139,240,127,64,0,0,253,0,0,0,7,240,255,0,0,0,253,0,0,0,3,249,254,0,0,0,252,26,170,170,3,255,252,0,0,1,252,63,255,255,1,255,248,0,0,2,252,63,255,255,0,255,240,0,0,2,248,63,0,63,0,191,208,5,0,3,248,63,0,63,0,255,192,11,192,7,240,63,0,63,3,255,224,11,208,11,240,63,170,191,15,255,244,15,192,15,224,63,255,255,127,251,254,31,192,47,208,63,255,255,255,193,255,255,192,127,192,0,0,128,127,0,127,255,64,63,64,0,2,248,24,0,15,253,0,14,0,0,7,255,64,0,0,80,0,0,0,0,1,255,208,0,4,0,0,0,29,3,248,47,248,0,126,0,0,0,63,195,248,7,248,0,255,128,0,0,63,131,248,1,224,0,63,224,0,0,255,3,248,0,0,36,15,244,0,1,255,3,248,0,0,47,135,253,0,3,253,3,248,0,0,63,130,255,0,15,248,3,252,0,0,127,64,255,128,63,240,3,255,255,255,255,0,63,192,47,208,2,255,255,255,255,0,47,64,3,64,0,191,255,255,248,0,4,0,0,0,0,1,85,85,0,0,0,0, + // 0x620f 戏 + 15,98,37,39,134,40,1,251,0,0,0,0,0,42,0,16,0,0,0,0,0,0,0,127,64,188,0,0,0,0,0,0,0,127,130,255,0,0,0,0,0,0,0,127,128,255,192,0,5,85,85,80,0,127,128,63,240,0,63,255,255,255,0,63,128,15,252,0,63,255,255,255,0,63,128,3,244,0,63,255,255,255,0,63,192,0,192,0,0,0,0,255,0,63,192,0,0,0,0,0,0,254,0,63,192,0,90,64,2,0,1,253,0,63,218,255,255,128,11,192,1,252,107,255,255,255,255,128,47,224,2,252,255,255,255,255,255,128,15,244,3,252,191,255,255,165,0,0,3,252,7,248,127,191,208,0,0,0,1,255,11,240,0,31,208,0,224,0,0,255,143,240,0,31,224,2,252,0,0,63,223,224,0,31,224,3,252,0,0,31,255,208,0,15,240,7,244,0,0,11,255,192,0,15,240,15,240,0,0,3,255,128,0,15,240,47,224,0,0,1,255,64,0,11,244,63,192,0,0,1,255,128,0,11,248,255,64,0,0,3,255,208,0,7,250,255,0,0,0,11,255,240,0,3,255,252,0,0,0,15,255,248,0,3,255,244,0,0,0,63,243,253,0,2,255,224,0,0,0,191,194,255,0,1,255,192,8,0,1,255,128,255,64,2,255,64,15,64,7,255,0,127,64,11,255,128,15,192,31,252,0,61,0,63,255,192,31,192,127,244,0,20,0,255,255,224,31,192,63,208,0,0,11,255,159,248,63,128,15,64,0,0,127,253,15,255,191,64,5,0,0,0,191,244,7,255,255,0,0,0,0,0,31,128,1,255,254,0,0,0,0,0,9,0,0,127,252,0,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,0,0,0,0, + // 0x6210 成 + 16,98,37,39,134,40,1,251,0,0,0,0,0,170,1,64,0,0,0,0,0,0,0,255,7,244,0,0,0,0,0,0,0,191,15,254,0,0,0,0,0,0,0,191,2,255,192,0,0,0,0,0,0,191,0,127,244,0,0,0,0,0,0,191,0,15,244,0,0,0,0,0,0,191,0,2,208,0,0,255,255,255,255,255,255,255,255,192,0,255,255,255,255,255,255,255,255,192,0,255,255,255,255,255,255,255,255,192,0,255,170,170,170,255,234,170,170,128,0,255,0,0,0,127,128,0,0,0,0,255,0,0,0,63,128,0,0,0,0,255,0,0,0,63,128,1,0,0,0,255,0,0,0,63,192,7,244,0,0,255,85,85,80,63,192,15,240,0,0,255,255,255,240,63,192,15,240,0,0,255,255,255,240,47,192,47,208,0,0,255,255,255,240,31,208,63,192,0,0,255,0,15,240,31,224,127,128,0,0,255,0,15,240,15,240,255,0,0,0,254,0,15,224,15,242,255,0,0,0,254,0,15,224,15,247,253,0,0,0,254,0,15,224,11,255,248,0,0,1,254,0,15,224,7,255,240,0,0,1,253,0,15,224,3,255,224,0,0,2,253,0,15,224,3,255,192,0,0,2,252,0,31,208,2,255,0,13,0,3,252,85,127,208,7,255,0,15,192,3,252,127,255,192,31,255,64,15,192,7,248,63,255,128,127,255,192,15,192,11,244,47,253,2,255,255,208,31,192,15,240,0,0,15,255,31,240,47,192,31,240,0,0,127,252,15,253,63,128,63,208,0,2,255,240,7,255,255,64,127,192,0,2,255,192,1,255,255,0,47,128,0,0,189,0,0,127,253,0,7,0,0,0,32,0,0,10,160,0,0,0,0,0,0,0,0,0,0,0, + // 0x6237 户 + 55,98,33,39,95,40,1,251,0,0,0,0,27,0,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,15,240,0,0,0,0,5,85,85,95,229,85,85,64,0,31,255,255,255,255,255,255,192,0,31,255,255,255,255,255,255,192,0,31,255,255,255,255,255,255,192,0,31,208,0,0,0,0,63,192,0,31,208,0,0,0,0,63,192,0,31,208,0,0,0,0,63,192,0,31,208,0,0,0,0,63,192,0,31,208,0,0,0,0,63,192,0,31,208,0,0,0,0,63,192,0,47,208,0,0,0,0,63,192,0,47,229,85,85,85,85,127,192,0,47,255,255,255,255,255,255,192,0,47,255,255,255,255,255,255,192,0,47,255,255,255,255,255,255,192,0,63,192,0,0,0,0,63,192,0,63,192,0,0,0,0,63,192,0,63,192,0,0,0,0,21,64,0,63,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,47,240,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,31,128,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, + // 0x6240 所 + 64,98,38,37,114,40,1,252,0,0,0,0,0,0,0,0,180,0,5,85,85,85,84,0,0,11,254,0,31,255,255,255,252,0,1,255,255,128,31,255,255,255,252,80,191,255,253,0,31,255,255,255,252,191,255,255,128,0,0,0,0,0,0,191,255,228,0,0,0,0,0,0,0,191,228,0,0,0,0,0,0,0,0,191,0,0,0,0,1,85,85,85,80,191,0,0,0,0,3,255,255,255,240,191,0,0,0,0,3,255,255,255,240,191,0,0,0,0,3,255,255,255,240,191,0,0,0,0,3,244,0,15,240,191,0,0,0,0,3,244,0,15,240,191,255,255,255,208,3,244,0,15,240,191,255,255,255,208,3,244,0,15,240,191,255,255,255,208,3,244,0,15,240,255,170,175,250,144,3,244,0,15,240,255,0,15,208,0,3,255,255,255,240,254,0,15,208,0,3,255,255,255,240,254,0,15,208,0,3,255,255,255,240,254,0,15,208,0,3,249,85,85,81,253,0,15,208,0,3,244,0,0,1,253,0,15,208,0,7,240,0,0,2,252,0,15,208,0,7,240,0,0,3,252,0,15,208,0,7,240,0,0,3,248,0,15,208,0,11,240,0,0,7,244,0,15,208,0,11,240,0,0,15,240,0,15,208,0,15,224,0,0,15,240,0,15,208,0,15,208,0,0,47,208,0,15,208,0,31,192,0,0,63,192,0,15,208,0,63,192,0,0,255,128,0,15,208,0,63,128,0,2,255,0,0,15,208,0,191,64,0,7,253,0,0,15,208,0,255,0,0,7,248,0,0,15,208,0,45,0,0,0,240,0,0,15,208,0,4,0,0,0,0,0,0,15,208,0, + // 0x6247 扇 + 71,98,36,36,68,40,1,252,15,255,255,255,255,255,255,255,255,15,255,255,255,255,255,255,255,255,15,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,255,224,0,63,255,255,255,255,255,255,224,0,63,255,255,255,255,255,255,224,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,15,224,0,63,255,255,255,255,255,255,224,0,127,255,255,255,255,255,255,224,0,127,255,255,255,255,255,255,224,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,127,255,255,15,255,255,244,0,127,127,255,255,15,255,255,244,0,191,63,255,255,15,255,255,244,0,191,1,0,127,0,80,3,244,0,255,15,192,127,3,244,3,244,0,254,15,224,127,3,253,3,244,0,254,7,248,127,0,255,3,244,1,253,1,252,127,0,63,67,244,2,252,0,240,127,0,28,3,244,3,252,0,0,127,0,0,99,244,3,248,0,47,127,0,11,243,244,7,244,7,255,127,1,191,243,244,15,241,191,254,127,47,255,131,244,31,241,255,224,127,47,248,3,244,63,208,253,0,127,31,128,3,244,127,192,144,0,127,4,0,3,244,191,64,0,63,255,0,3,255,244,31,0,0,47,254,0,2,255,240,0,0,0,31,228,0,1,255,128, + // 0x624b 手 + 75,98,36,38,86,40,2,252,0,0,0,0,0,0,0,96,0,0,0,0,0,0,1,175,248,0,0,0,0,1,90,255,255,253,0,1,86,175,255,255,255,255,254,0,3,255,255,255,255,255,254,64,0,3,255,255,255,255,165,0,0,0,2,255,170,85,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,2,170,170,170,255,170,170,170,144,3,255,255,255,255,255,255,255,224,3,255,255,255,255,255,255,255,224,3,255,255,255,255,255,255,255,224,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,170,255,170,170,170,170,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,255,255,255,0,0,0,0,0,0,191,255,253,0,0,0,0,0,0,63,255,248,0,0,0,0,0,0,42,169,0,0,0,0,0, + // 0x6253 打 + 83,98,37,38,124,40,2,252,0,31,208,0,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,0,31,208,2,170,170,170,170,170,64,0,31,208,3,255,255,255,255,255,64,0,31,208,3,255,255,255,255,255,64,0,31,208,3,255,255,255,255,255,64,0,31,208,0,0,0,31,224,0,0,255,255,255,244,0,0,31,224,0,0,255,255,255,244,0,0,31,224,0,0,255,255,255,244,0,0,31,224,0,0,170,175,234,160,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,20,0,0,31,224,0,0,0,31,235,248,0,0,31,224,0,0,0,47,255,248,0,0,31,224,0,0,27,255,255,252,0,0,31,224,0,0,255,255,255,144,0,0,31,224,0,0,255,255,224,0,0,0,31,224,0,0,191,255,208,0,0,0,31,224,0,0,120,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,47,208,0,0,0,47,224,0,0,63,255,208,0,11,255,255,208,0,0,31,255,192,0,3,255,255,192,0,0,15,255,64,0,3,255,255,64,0,0,5,80,0,0,2,255,228,0,0,0, + // 0x6267 执 + 103,98,38,38,124,40,1,252,0,15,192,0,1,252,0,0,0,0,0,31,192,0,1,252,0,0,0,0,0,31,192,0,1,252,0,0,0,0,0,31,192,0,1,252,0,0,0,0,0,31,192,0,1,252,0,0,0,0,0,31,192,0,1,252,0,0,0,0,0,31,192,0,1,252,0,0,0,0,0,31,192,0,1,252,0,0,0,0,21,111,229,69,86,254,85,85,0,0,63,255,255,207,255,255,255,255,0,0,63,255,255,207,255,255,255,255,0,0,63,255,255,207,255,255,255,255,0,0,0,31,192,0,1,252,0,191,0,0,0,31,192,0,1,252,0,191,0,0,0,31,192,0,2,252,0,191,0,0,0,31,192,0,2,252,0,191,0,0,0,31,192,0,2,252,0,191,0,0,0,31,192,67,195,248,0,191,0,0,0,31,235,219,251,248,0,255,0,0,0,31,255,239,255,244,0,255,0,0,1,191,255,226,255,244,0,191,0,0,127,255,254,64,47,254,0,191,0,0,127,255,224,0,15,255,208,191,0,0,63,255,192,0,15,255,248,191,0,0,57,31,192,0,31,239,255,255,0,0,0,31,192,0,47,195,255,255,0,0,0,31,192,0,63,192,188,191,0,0,0,31,192,0,191,64,20,191,0,0,0,31,192,0,255,0,0,191,0,0,0,31,192,2,254,0,0,127,4,0,0,31,192,7,252,0,0,127,11,128,0,31,192,15,248,0,0,127,11,208,0,31,192,63,240,0,0,63,75,208,0,31,193,255,192,0,0,63,143,192,31,255,199,255,64,0,0,47,239,192,15,255,195,253,0,0,0,15,255,128,11,255,1,244,0,0,0,11,255,0,6,144,0,64,0,0,0,2,252,0, + // 0x6279 批 + 121,98,38,38,124,40,1,252,0,31,128,1,80,0,21,64,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,63,255,255,199,240,0,47,192,0,0,63,255,255,199,240,0,47,192,4,0,63,255,255,199,240,0,47,192,45,0,21,127,213,71,240,0,47,192,191,64,0,47,192,7,240,0,47,194,255,128,0,47,192,7,255,255,47,207,254,0,0,47,192,7,255,255,47,255,244,0,0,47,192,7,255,255,47,255,192,0,0,47,192,7,250,169,47,253,0,0,0,47,193,71,240,0,47,240,0,0,0,47,255,135,240,0,47,192,0,0,0,127,255,199,240,0,47,192,0,0,27,255,255,199,240,0,47,192,0,0,191,255,249,7,240,0,47,192,0,0,127,255,192,7,240,0,47,192,0,0,63,175,192,7,240,0,47,192,0,0,16,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,9,0,0,47,192,7,240,0,47,192,15,208,0,47,192,7,240,0,47,192,15,208,0,47,192,7,240,27,47,192,15,208,0,47,192,7,255,255,47,192,15,192,0,47,194,255,255,255,47,192,31,192,21,127,195,255,255,254,31,255,255,192,31,255,130,255,249,0,15,255,255,64,15,255,1,249,0,0,7,255,254,0,15,248,0,0,0,0,0,21,80,0, + // 0x6296 抖 + 150,98,38,38,124,40,1,252,0,11,224,0,0,0,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,3,128,0,191,0,0,0,15,240,0,15,248,0,191,0,0,0,15,240,0,15,255,0,191,0,0,0,15,240,0,1,255,208,191,0,0,0,15,240,0,0,63,244,191,0,0,63,255,255,248,0,11,240,191,0,0,63,255,255,248,0,1,192,191,0,0,63,255,255,248,0,0,0,191,0,0,21,95,245,80,0,0,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,61,0,0,191,0,0,0,15,240,0,191,208,0,191,0,0,0,15,240,0,255,248,0,191,0,0,0,15,240,0,31,255,64,191,0,0,0,15,240,20,2,255,192,191,0,0,0,15,251,248,0,127,64,191,0,0,0,15,255,248,0,14,0,191,0,0,6,255,255,252,0,0,0,191,0,0,127,255,255,144,0,0,0,191,0,0,63,255,240,0,0,0,0,191,107,192,63,239,240,0,0,0,6,255,255,192,24,15,240,0,0,107,255,255,255,208,0,15,240,2,191,255,255,255,255,144,0,15,240,7,255,255,255,255,64,0,0,15,240,3,255,255,164,191,0,0,0,15,240,3,250,64,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,0,0,0,191,0,0,31,255,224,0,0,0,0,191,0,0,15,255,208,0,0,0,0,191,0,0,11,255,64,0,0,0,0,191,0,0,1,80,0,0,0,0,0,106,0,0, + // 0x62a5 报 + 165,98,37,38,124,40,1,252,0,11,240,0,0,0,0,0,0,0,0,11,240,0,85,85,85,85,84,0,0,11,240,0,255,255,255,255,252,0,0,11,240,0,255,255,255,255,252,0,0,11,240,0,255,255,255,255,252,0,0,11,240,0,253,0,0,3,252,0,0,11,240,0,253,0,0,3,252,0,0,11,240,0,253,0,0,3,248,0,42,175,250,160,253,0,0,3,248,0,63,255,255,244,253,0,0,11,244,0,63,255,255,244,253,3,255,255,240,0,63,255,255,244,253,1,255,255,224,0,0,11,240,0,253,0,255,255,128,0,0,11,240,0,253,0,0,0,0,0,0,11,240,0,253,0,0,0,0,0,0,11,240,0,254,85,85,85,84,0,0,11,240,0,255,255,255,255,255,0,0,11,240,0,255,255,255,255,255,0,0,11,246,244,255,255,255,255,254,0,0,15,255,244,253,191,0,1,253,0,1,191,255,248,253,63,64,2,252,0,127,255,255,228,253,47,192,3,252,0,127,255,249,0,253,31,208,7,244,0,63,255,240,0,253,15,240,15,240,0,62,75,240,0,253,11,248,31,224,0,0,11,240,0,253,3,252,63,192,0,0,11,240,0,253,1,255,127,128,0,0,11,240,0,253,0,255,255,0,0,0,11,240,0,253,0,63,254,0,0,0,11,240,0,253,0,47,252,0,0,0,11,240,0,253,0,31,253,0,0,0,11,240,0,253,0,191,255,128,0,0,11,240,0,253,2,255,255,224,0,0,15,240,0,253,31,254,63,254,0,41,111,240,0,254,191,248,15,255,192,63,255,240,0,255,255,208,2,255,128,47,255,208,0,253,127,0,0,127,0,15,254,0,0,169,36,0,0,4,0, + // 0x62ac 抬 + 172,98,38,39,134,40,1,251,0,11,224,0,0,25,0,0,0,0,0,15,240,0,0,63,224,0,0,0,0,15,240,0,0,63,208,0,0,0,0,15,240,0,0,127,192,0,0,0,0,15,240,0,0,191,64,0,0,0,0,15,240,0,0,255,0,0,0,0,0,15,240,0,1,254,0,8,0,0,0,15,240,0,2,253,0,190,0,0,63,255,255,240,3,252,0,255,64,0,63,255,255,240,7,244,0,127,192,0,63,255,255,240,15,240,0,47,224,0,21,95,245,80,15,224,0,15,244,0,0,15,240,0,47,192,0,7,252,0,0,15,240,0,63,214,171,255,254,0,0,15,240,31,255,255,255,255,255,64,0,15,240,15,255,255,255,255,255,192,0,15,240,15,255,255,255,169,127,208,0,15,240,30,149,64,0,0,31,224,0,15,247,244,0,0,0,0,15,64,0,15,255,248,0,0,0,0,0,0,6,255,255,248,0,0,0,0,0,0,191,255,255,64,255,255,255,255,248,0,127,255,240,0,255,255,255,255,248,0,63,223,240,0,255,255,255,255,248,0,36,15,240,0,255,85,85,91,248,0,0,15,240,0,254,0,0,3,248,0,0,15,240,0,254,0,0,3,248,0,0,15,240,0,254,0,0,3,248,0,0,15,240,0,254,0,0,3,248,0,0,15,240,0,254,0,0,3,248,0,0,15,240,0,254,0,0,3,248,0,0,15,240,0,254,0,0,3,248,0,0,15,240,0,255,85,85,87,248,0,0,15,240,0,255,255,255,255,248,0,5,95,240,0,255,255,255,255,248,0,15,255,224,0,255,255,255,255,248,0,11,255,208,0,254,0,0,3,248,0,7,254,0,0,190,0,0,2,164,0,0,0,0,0,0,0,0,0,0,0, + // 0x62bd 抽 + 189,98,37,39,134,40,1,251,0,15,208,0,0,0,168,0,0,0,0,15,224,0,0,0,253,0,0,0,0,15,224,0,0,0,253,0,0,0,0,15,224,0,0,0,253,0,0,0,0,15,224,0,0,0,253,0,0,0,0,15,224,0,0,0,253,0,0,0,0,15,224,0,0,0,253,0,0,0,0,15,224,0,0,0,253,0,0,0,63,255,255,224,0,0,253,0,0,0,63,255,255,226,170,170,254,170,170,64,63,255,255,227,255,255,255,255,255,128,21,95,245,83,255,255,255,255,255,128,0,15,224,3,255,255,255,255,255,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,231,243,244,0,253,0,63,128,0,15,255,243,244,0,253,0,63,128,1,191,255,243,255,255,255,255,255,128,127,255,255,147,255,255,255,255,255,128,127,255,244,3,255,255,255,255,255,128,127,255,224,3,249,86,254,85,191,128,61,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,250,170,254,170,191,128,0,15,224,3,255,255,255,255,255,128,0,15,224,3,255,255,255,255,255,128,5,95,224,3,255,255,255,255,255,128,31,255,208,3,244,0,0,0,63,128,15,255,192,3,244,0,0,0,63,128,11,254,0,3,244,0,0,0,42,64,0,0,0,0,0,0,0,0,0,0, + // 0x62d4 拔 + 212,98,38,39,134,40,1,251,0,15,208,0,0,253,0,0,0,0,0,15,224,0,1,253,0,244,0,0,0,15,224,0,1,253,3,254,0,0,0,15,224,0,1,253,2,255,208,0,0,15,224,0,1,253,0,127,244,0,0,15,224,0,1,252,0,11,254,0,0,15,224,0,1,252,0,1,252,0,0,15,224,0,1,252,0,0,116,0,63,255,255,224,1,252,0,0,0,0,63,255,255,235,255,255,255,255,255,192,63,255,255,235,255,255,255,255,255,192,63,255,255,235,255,255,255,255,255,192,0,15,224,0,2,252,0,0,0,0,0,15,224,0,2,252,0,0,0,0,0,15,224,0,3,253,0,0,0,0,0,15,224,0,3,254,0,6,160,0,0,15,224,0,3,255,0,11,240,0,0,15,224,0,3,255,0,15,240,0,0,15,225,160,3,255,64,15,224,0,0,15,255,240,7,255,128,31,208,0,0,111,255,240,11,255,192,31,192,0,111,255,255,224,15,239,224,47,192,0,191,255,248,0,15,231,240,63,128,0,127,255,224,0,31,211,244,127,64,0,62,79,224,0,47,194,252,255,0,0,0,15,224,0,63,192,254,254,0,0,0,15,224,0,127,64,191,252,0,0,0,15,224,0,191,0,63,248,0,0,0,15,224,0,254,0,47,240,0,0,0,15,224,2,253,0,47,244,0,0,0,15,224,3,252,0,127,253,0,0,0,15,224,15,244,1,255,255,64,0,0,15,224,31,240,3,254,255,208,0,0,15,224,127,192,31,248,63,248,0,5,95,224,255,128,191,240,11,255,64,31,255,211,255,3,255,192,2,255,224,15,255,193,252,1,254,0,0,127,128,11,254,0,112,0,116,0,0,7,0,0,0,0,0,0,0,0,0,0,0, + // 0x62e9 择 + 233,98,38,38,124,40,1,252,0,15,208,0,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,0,15,208,3,255,255,255,255,244,0,0,15,208,3,255,255,255,255,252,0,0,15,208,3,255,255,255,255,248,0,0,15,208,1,111,213,85,95,240,0,0,15,208,0,15,240,0,47,208,0,0,15,208,0,3,248,0,191,128,0,63,255,255,240,2,254,2,255,0,0,63,255,255,240,0,191,143,252,0,0,63,255,255,240,0,47,255,240,0,0,21,111,229,80,0,15,255,192,0,0,0,15,208,0,0,31,255,208,0,0,0,15,208,0,1,255,255,253,0,0,0,15,208,0,31,255,159,255,208,0,0,15,208,7,255,253,2,255,255,64,0,15,208,47,255,208,0,47,255,224,0,15,208,95,253,1,84,2,255,128,0,15,255,231,128,2,252,0,27,0,0,31,255,224,0,2,252,0,0,0,6,255,255,224,0,2,252,0,0,0,127,255,254,65,255,255,255,255,244,0,63,255,224,1,255,255,255,255,244,0,63,239,208,1,255,255,255,255,244,0,20,15,208,0,85,86,253,85,80,0,0,15,208,0,0,2,252,0,0,0,0,15,208,0,0,2,252,0,0,0,0,15,208,0,0,2,252,0,0,0,0,15,208,31,255,255,255,255,255,192,0,15,208,31,255,255,255,255,255,192,0,15,208,31,255,255,255,255,255,192,0,15,208,5,85,86,253,85,85,64,0,15,208,0,0,2,252,0,0,0,0,31,208,0,0,2,252,0,0,0,15,255,208,0,0,2,252,0,0,0,15,255,192,0,0,2,252,0,0,0,11,255,64,0,0,2,252,0,0,0,1,80,0,0,0,1,168,0,0,0, + // 0x6309 按 + 9,99,38,39,134,40,1,251,0,15,208,0,0,1,168,0,0,0,0,15,224,0,0,2,252,0,0,0,0,15,224,0,0,2,252,0,0,0,0,15,224,0,0,2,252,0,0,0,0,15,224,0,0,2,252,0,0,0,0,15,224,1,85,87,253,85,85,64,0,15,224,11,255,255,255,255,255,192,0,15,224,11,255,255,255,255,255,192,63,255,255,235,255,255,255,255,255,192,63,255,255,235,240,0,0,0,47,192,63,255,255,235,240,15,144,0,47,192,21,95,245,91,240,31,224,0,47,192,0,15,224,11,240,47,208,0,47,192,0,15,224,11,240,63,192,0,47,192,0,15,224,0,0,63,128,0,0,0,0,15,224,0,0,127,64,0,0,0,0,15,224,5,85,255,85,85,85,64,0,15,224,15,255,255,255,255,255,208,0,15,225,175,255,255,255,255,255,208,0,15,255,255,255,255,255,255,255,208,1,191,255,240,3,248,0,31,224,0,111,255,255,224,7,244,0,47,208,0,191,255,244,0,15,240,0,63,192,0,127,255,224,0,15,224,0,63,192,0,62,79,224,0,31,192,0,127,64,0,0,15,224,0,63,208,0,255,0,0,0,15,224,0,63,253,2,254,0,0,0,15,224,0,191,255,227,252,0,0,0,15,224,0,255,255,255,248,0,0,0,15,224,0,9,31,255,240,0,0,0,15,224,0,0,1,255,253,0,0,0,15,224,0,0,7,255,255,192,0,0,15,224,0,0,111,254,255,244,0,0,15,224,0,11,255,240,63,254,0,5,95,224,22,255,255,128,7,255,192,31,255,208,63,255,248,0,0,255,192,15,255,192,31,254,64,0,0,47,0,11,254,0,15,144,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0, + // 0x6321 挡 + 33,99,36,38,86,40,1,252,0,15,208,0,0,1,168,0,0,0,15,208,0,0,1,252,0,0,0,15,208,0,0,1,252,0,0,0,15,208,1,180,1,252,0,185,0,15,208,3,248,1,252,0,255,0,15,208,2,252,1,252,0,254,0,15,208,0,253,1,252,1,252,0,15,208,0,255,1,252,3,252,63,255,255,240,127,1,252,3,244,63,255,255,240,63,129,252,7,240,63,255,255,240,63,193,252,15,224,42,175,250,144,47,193,252,15,208,0,15,208,0,30,1,252,31,192,0,15,208,0,0,1,252,1,64,0,15,208,0,0,1,252,0,0,0,15,208,2,170,170,254,170,169,0,15,208,7,255,255,255,255,254,0,15,208,7,255,255,255,255,254,0,15,230,231,255,255,255,255,254,0,15,255,240,0,0,0,0,254,1,191,255,240,0,0,0,0,254,127,255,255,224,0,0,0,0,254,191,255,248,0,0,0,0,0,254,127,255,208,1,85,85,85,85,254,62,95,208,3,255,255,255,255,254,0,15,208,3,255,255,255,255,254,0,15,208,3,255,255,255,255,254,0,15,208,0,0,0,0,0,254,0,15,208,0,0,0,0,0,254,0,15,208,0,0,0,0,0,254,0,15,208,0,0,0,0,0,254,0,15,208,10,170,170,170,170,254,0,15,208,15,255,255,255,255,254,0,31,208,15,255,255,255,255,254,31,255,208,15,255,255,255,255,254,15,255,192,0,0,0,0,0,254,15,255,64,0,0,0,0,0,254,1,80,0,0,0,0,0,0,84, + // 0x6324 挤 + 36,99,38,38,124,40,1,252,0,47,128,0,0,6,192,0,0,0,0,63,128,0,0,31,208,0,0,0,0,63,128,0,0,15,240,0,0,0,0,63,128,0,0,11,244,0,0,0,0,63,128,21,85,87,253,85,85,0,0,63,128,63,255,255,255,255,255,128,0,63,128,63,255,255,255,255,255,128,0,63,128,63,255,255,255,255,255,128,63,255,255,64,63,64,0,63,192,0,63,255,255,64,47,192,0,191,128,0,63,255,255,64,15,224,0,255,0,0,21,127,213,0,11,244,2,253,0,0,0,63,128,0,3,253,11,252,0,0,0,63,128,0,0,255,175,240,0,0,0,63,128,0,0,127,255,192,0,0,0,63,128,0,0,31,255,64,0,0,0,63,128,0,1,255,255,244,0,0,0,63,129,1,111,255,255,255,164,0,0,63,239,127,255,254,31,255,255,208,0,63,255,63,255,208,1,191,255,192,6,255,255,47,249,0,0,6,255,64,127,255,248,9,31,192,0,190,5,0,127,255,192,0,31,192,0,254,0,0,63,255,128,0,31,192,0,254,0,0,41,63,128,0,31,192,0,254,0,0,0,63,128,0,31,192,0,254,0,0,0,63,128,0,31,192,0,254,0,0,0,63,128,0,47,192,0,254,0,0,0,63,128,0,47,192,0,254,0,0,0,63,128,0,63,192,0,254,0,0,0,63,128,0,127,128,0,254,0,0,0,63,128,0,255,0,0,254,0,0,0,63,128,3,255,0,0,254,0,0,0,63,128,15,252,0,0,254,0,0,47,255,128,127,244,0,0,254,0,0,31,255,65,255,208,0,0,254,0,0,15,254,0,126,0,0,0,254,0,0,10,144,0,0,0,0,0,105,0,0, + // 0x635f 损 + 95,99,38,39,134,40,1,251,0,31,192,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,255,255,255,255,224,0,0,47,192,0,255,255,255,255,224,0,0,47,192,0,255,255,255,255,224,0,0,47,192,0,255,0,0,15,224,0,0,47,192,0,255,0,0,15,224,0,0,47,192,0,255,0,0,15,224,0,63,255,255,224,255,0,0,15,224,0,63,255,255,224,255,255,255,255,224,0,63,255,255,224,255,255,255,255,224,0,21,111,229,64,255,255,255,255,224,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,3,255,255,255,255,252,0,0,47,192,3,255,255,255,255,252,0,0,47,192,3,255,255,255,255,252,0,0,47,192,67,248,0,0,3,252,0,0,47,219,227,248,0,0,3,252,0,0,47,255,227,248,1,84,3,252,0,6,255,255,243,248,3,252,3,252,0,191,255,254,67,248,3,252,3,252,0,191,255,208,3,248,3,252,3,252,0,127,255,192,3,248,3,252,3,252,0,36,47,192,3,248,3,248,3,252,0,0,47,192,3,248,3,248,3,252,0,0,47,192,3,248,7,244,3,252,0,0,47,192,3,248,15,240,3,252,0,0,47,192,2,164,47,240,65,84,0,0,47,192,0,0,191,193,244,0,0,0,47,192,0,2,255,71,254,0,0,0,47,192,0,47,254,2,255,208,0,0,47,192,6,255,244,0,127,252,0,47,255,192,191,255,192,0,11,255,64,31,255,192,191,253,0,0,1,255,208,15,255,0,63,144,0,0,0,47,128,10,164,0,20,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0, + // 0x6362 换 + 98,99,38,38,124,40,1,252,0,26,128,0,0,164,0,0,0,0,0,47,192,0,1,255,0,0,0,0,0,47,192,0,3,253,0,0,0,0,0,47,192,0,7,252,0,0,0,0,0,47,192,0,15,255,255,255,64,0,0,47,192,0,47,255,255,255,208,0,0,47,192,0,127,255,255,255,192,0,0,47,192,0,255,0,0,255,0,0,63,255,255,67,253,0,3,253,0,0,63,255,255,79,244,0,15,244,0,0,63,255,255,191,255,255,255,255,244,0,21,127,213,127,255,255,255,255,244,0,0,47,192,15,255,255,255,255,244,0,0,47,192,7,248,3,248,3,244,0,0,47,192,3,248,3,248,3,244,0,0,47,192,3,248,3,248,3,244,0,0,47,192,3,248,3,248,3,244,0,0,47,192,3,248,3,248,3,244,0,0,47,199,131,248,3,248,3,244,0,0,47,255,131,248,3,248,3,244,0,1,191,255,195,248,3,248,3,244,0,111,255,255,195,248,3,248,3,244,0,127,255,244,3,252,7,248,7,248,0,63,255,192,191,255,255,255,255,255,192,62,111,192,191,255,255,255,255,255,192,0,47,192,191,255,255,255,255,255,192,0,47,192,0,0,47,252,0,0,0,0,47,192,0,0,127,255,0,0,0,0,47,192,0,0,255,127,128,0,0,0,47,192,0,3,253,31,224,0,0,0,47,192,0,15,252,15,248,0,0,0,47,192,0,127,240,3,254,0,0,0,47,192,2,255,192,0,255,208,0,0,63,192,31,254,0,0,63,249,0,31,255,193,255,244,0,0,11,255,208,15,255,135,255,192,0,0,1,255,192,15,254,1,253,0,0,0,0,47,0,6,144,0,80,0,0,0,0,1,0, + // 0x6389 掉 + 137,99,38,38,124,40,1,252,0,26,128,0,0,2,160,0,0,0,0,47,192,0,0,3,244,0,0,0,0,47,192,0,0,3,244,0,0,0,0,47,192,0,0,3,244,0,0,0,0,47,192,0,0,3,255,255,255,128,0,47,192,0,0,3,255,255,255,128,0,47,192,0,0,3,255,255,255,128,0,47,192,0,0,3,244,0,0,0,63,255,255,192,0,3,244,0,0,0,63,255,255,192,0,3,244,0,0,0,63,255,255,203,255,255,255,255,252,0,21,127,229,75,255,255,255,255,252,0,0,47,192,11,255,255,255,255,252,0,0,47,192,11,240,0,0,3,252,0,0,47,192,11,240,0,0,3,252,0,0,47,192,11,240,0,0,3,252,0,0,47,192,11,255,255,255,255,252,0,0,47,192,11,255,255,255,255,252,0,0,47,219,203,255,255,255,255,252,0,0,47,255,203,240,0,0,3,252,0,1,255,255,219,240,0,0,3,252,0,127,255,255,139,240,0,0,3,252,0,63,255,224,11,255,255,255,255,252,0,63,255,192,11,255,255,255,255,252,0,41,47,192,11,255,255,255,255,252,0,0,47,192,0,0,3,244,0,0,0,0,47,192,0,0,3,244,0,0,0,0,47,192,0,0,3,244,0,0,0,0,47,192,255,255,255,255,255,255,208,0,47,192,255,255,255,255,255,255,208,0,47,192,255,255,255,255,255,255,208,0,47,192,85,85,87,249,85,85,64,0,47,192,0,0,3,244,0,0,0,0,47,192,0,0,3,244,0,0,0,63,255,192,0,0,3,244,0,0,0,47,255,128,0,0,3,244,0,0,0,31,254,0,0,0,3,244,0,0,0,5,64,0,0,0,2,164,0,0,0, + // 0x63a2 探 + 162,99,38,38,124,40,1,252,0,47,128,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,15,255,255,255,255,255,128,0,47,192,15,255,255,255,255,255,128,0,47,192,15,255,255,255,255,255,128,0,47,192,15,192,0,0,0,47,128,0,47,192,15,192,84,0,0,47,128,0,47,192,15,192,253,11,224,47,128,63,255,255,207,192,253,11,224,47,128,63,255,255,207,193,252,11,224,47,128,63,255,255,192,2,252,11,224,0,0,21,127,213,64,3,248,11,224,9,0,0,47,192,0,11,244,11,224,11,208,0,47,192,0,47,240,11,240,15,192,0,47,192,2,255,192,11,255,255,192,0,47,192,47,255,0,3,255,255,128,0,47,192,15,248,0,1,255,254,0,0,47,198,135,64,3,252,0,0,0,0,47,255,128,0,3,252,0,0,0,0,127,255,192,0,3,252,0,0,0,47,255,255,128,0,3,252,0,0,0,191,255,244,47,255,255,255,255,255,192,127,255,192,47,255,255,255,255,255,192,62,111,192,47,255,255,255,255,255,192,0,47,192,5,85,191,255,213,85,64,0,47,192,0,0,255,255,240,0,0,0,47,192,0,2,255,255,244,0,0,0,47,192,0,7,251,255,253,0,0,0,47,192,0,31,243,252,255,0,0,0,47,192,0,63,211,252,127,192,0,0,47,192,1,255,131,252,47,244,0,0,47,192,11,254,3,252,15,253,0,0,47,192,63,252,3,252,3,255,128,0,47,194,255,224,3,252,0,255,224,21,127,192,255,128,3,252,0,63,192,31,255,128,124,0,3,252,0,11,0,15,255,0,16,0,3,252,0,0,0,15,248,0,0,0,3,252,0,0,0, + // 0x63a5 接 + 165,99,37,38,124,40,1,252,0,15,208,0,0,3,252,0,0,0,0,15,224,0,0,3,252,0,0,0,0,15,224,0,0,3,252,0,0,0,0,15,224,0,0,3,252,0,0,0,0,15,224,15,255,255,255,255,255,0,0,15,224,15,255,255,255,255,255,0,0,15,224,15,255,255,255,255,255,0,0,15,224,0,11,208,0,63,128,0,63,255,255,192,15,208,0,127,64,0,63,255,255,192,15,224,0,191,0,0,63,255,255,192,11,240,0,254,0,0,21,95,245,64,7,240,0,253,0,0,0,15,224,0,3,244,1,252,0,0,0,15,224,0,7,248,3,248,0,0,0,15,224,127,255,255,255,255,255,192,0,15,224,127,255,255,255,255,255,192,0,15,224,127,255,255,255,255,255,192,0,15,224,0,0,63,192,0,0,0,0,15,226,192,0,127,128,0,0,0,0,15,255,192,0,255,0,0,0,0,0,111,255,208,1,255,0,0,0,0,27,255,255,255,255,255,255,255,255,192,191,255,249,127,255,255,255,255,255,192,127,255,224,63,255,255,255,255,255,192,62,79,224,0,15,240,0,127,64,0,16,15,224,0,47,208,0,191,0,0,0,15,224,0,63,192,0,254,0,0,0,15,224,0,191,64,2,253,0,0,0,15,224,0,255,249,7,252,0,0,0,15,224,2,255,255,239,240,0,0,0,15,224,1,186,255,255,224,0,0,0,15,224,0,0,27,255,244,0,0,0,15,224,0,0,47,255,255,128,0,0,15,224,0,27,255,251,255,244,0,31,255,208,175,255,255,128,127,255,0,15,255,192,255,255,244,0,7,255,0,11,255,64,127,249,0,0,0,188,0,6,148,0,36,0,0,0,0,0,0, + // 0x63a7 控 + 167,99,38,38,124,40,1,252,0,31,128,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,63,255,255,255,255,255,192,0,47,192,63,255,255,255,255,255,192,0,47,192,63,255,255,255,255,255,192,0,47,192,63,65,253,11,240,31,192,63,255,255,191,64,252,11,240,31,192,63,255,255,191,65,252,11,240,31,192,63,255,255,191,65,252,11,240,31,192,21,127,213,64,2,252,11,240,0,0,0,47,192,0,3,248,11,240,4,0,0,47,192,0,7,244,11,240,15,64,0,47,192,0,15,240,11,240,15,192,0,47,192,0,63,208,11,240,15,192,0,47,192,1,255,192,11,255,255,128,0,47,199,175,255,0,3,255,255,64,0,47,255,143,248,0,1,255,253,0,0,127,255,203,128,0,0,0,0,0,27,255,255,64,0,0,0,0,0,0,191,255,224,0,0,0,0,0,0,0,127,255,192,7,255,255,255,255,253,0,62,111,192,7,255,255,255,255,253,0,16,47,192,7,255,255,255,255,253,0,0,47,192,1,85,87,253,85,84,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,255,255,255,255,255,255,208,21,127,192,255,255,255,255,255,255,208,31,255,128,255,255,255,255,255,255,208,15,255,0,85,85,85,85,85,85,64,15,248,0,0,0,0,0,0,0,0, + // 0x63d0 提 + 208,99,38,38,124,40,1,252,0,47,128,0,0,0,0,0,0,0,0,47,128,1,170,170,170,170,164,0,0,47,128,2,255,255,255,255,244,0,0,47,128,2,255,255,255,255,244,0,0,47,128,2,252,0,0,3,244,0,0,47,128,2,252,0,0,3,244,0,0,47,128,2,252,0,0,3,244,0,0,47,128,2,255,255,255,255,244,0,127,255,255,194,255,255,255,255,244,0,127,255,255,194,254,170,170,171,244,0,127,255,255,194,252,0,0,3,244,0,21,127,213,66,252,0,0,3,244,0,0,47,128,2,254,170,170,175,244,0,0,47,128,2,255,255,255,255,244,0,0,47,128,2,255,255,255,255,244,0,0,47,128,0,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,0,47,134,95,255,255,255,255,255,128,0,47,255,223,255,255,255,255,255,128,1,191,255,223,255,255,255,255,255,128,111,255,255,128,0,3,248,0,0,0,191,255,224,0,80,3,248,0,0,0,127,255,128,0,253,3,248,0,0,0,57,47,128,1,252,3,248,0,0,0,0,47,128,1,252,3,255,255,248,0,0,47,128,2,248,3,255,255,248,0,0,47,128,3,252,3,255,255,248,0,0,47,128,7,253,3,248,0,0,0,0,47,128,11,255,3,248,0,0,0,0,47,128,15,255,67,248,0,0,0,0,47,128,47,223,211,248,0,0,0,0,47,128,63,139,251,248,0,0,0,0,63,128,255,2,255,248,0,0,0,47,255,131,254,0,191,255,255,255,224,31,255,71,252,0,31,255,255,255,192,15,253,1,240,0,1,191,255,255,192,5,64,0,64,0,0,0,0,0,0, + // 0x63d2 插 + 210,99,37,38,124,40,1,252,0,31,128,0,0,0,0,0,0,0,0,47,192,0,0,0,0,91,240,0,0,47,192,0,5,106,255,255,252,0,0,47,192,15,255,255,255,255,253,0,0,47,192,11,255,255,255,233,64,0,0,47,192,7,254,171,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,63,255,255,192,0,3,248,0,0,0,63,255,255,213,85,87,253,85,85,64,63,255,255,255,255,255,255,255,255,192,21,127,213,63,255,255,255,255,255,192,0,47,192,63,255,255,255,255,255,192,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,67,248,0,0,0,0,47,192,0,7,243,248,0,0,0,0,47,192,15,191,255,248,255,255,0,0,47,223,143,255,251,248,255,255,0,0,47,255,143,254,3,248,255,255,0,6,255,255,207,208,3,248,0,127,0,191,255,253,15,208,3,248,0,127,0,127,255,192,15,208,3,248,0,127,0,63,175,192,15,208,3,248,0,127,0,16,47,192,15,255,227,248,191,255,0,0,47,192,15,255,227,248,191,255,0,0,47,192,15,255,227,248,191,255,0,0,47,192,15,208,3,248,0,127,0,0,47,192,15,208,3,248,0,127,0,0,47,192,15,208,3,248,0,127,0,0,47,192,15,208,3,248,0,127,0,0,47,192,15,208,3,248,0,127,0,0,47,192,15,208,3,248,0,127,0,0,47,192,15,255,255,255,255,255,0,21,127,192,15,255,255,255,255,255,0,31,255,128,15,255,255,255,255,255,0,15,255,0,15,208,0,0,0,127,0,15,248,0,15,208,0,0,0,127,0, + // 0x6536 收 + 54,101,38,38,124,40,1,252,0,0,2,164,0,41,0,0,0,0,0,0,3,248,0,63,192,0,0,0,0,0,3,248,0,63,192,0,0,0,0,0,3,248,0,127,128,0,0,0,0,0,3,248,0,191,0,0,0,0,3,248,3,248,0,255,0,0,0,0,3,248,3,248,1,254,0,0,0,0,3,248,3,248,2,254,170,170,170,144,3,248,3,248,3,255,255,255,255,208,3,248,3,248,7,255,255,255,255,208,3,248,3,248,15,255,255,255,255,208,3,248,3,248,31,244,0,3,252,0,3,248,3,248,63,252,0,3,252,0,3,248,3,248,127,252,0,3,248,0,3,248,3,248,255,253,0,7,244,0,3,248,3,251,255,254,0,15,240,0,3,248,3,255,253,255,0,15,240,0,3,248,3,255,248,127,0,31,208,0,3,248,3,249,240,63,128,63,192,0,3,248,3,248,144,63,192,63,192,0,3,248,3,248,0,31,208,191,64,0,3,248,3,248,0,15,240,255,0,0,3,248,3,248,0,11,246,254,0,0,3,248,27,248,0,3,255,252,0,0,3,254,255,248,0,3,255,248,0,0,7,255,255,248,0,1,255,240,0,0,127,255,255,248,0,0,255,208,0,0,63,255,211,248,0,0,255,208,0,0,63,228,3,248,0,3,255,240,0,0,25,0,3,248,0,15,255,252,0,0,0,0,3,248,0,63,251,255,0,0,0,0,3,248,1,255,209,255,192,0,0,0,3,248,11,255,64,127,244,0,0,0,3,248,191,253,0,47,254,0,0,0,3,251,255,244,0,11,255,224,0,0,3,250,255,128,0,1,255,192,0,0,3,248,253,0,0,0,63,64,0,0,3,244,96,0,0,0,6,0, + // 0x653e 放 + 62,101,38,38,124,40,1,252,0,0,253,0,0,3,144,0,0,0,0,1,253,0,0,7,248,0,0,0,0,1,253,0,0,11,244,0,0,0,0,1,253,0,0,15,240,0,0,0,0,1,253,0,0,15,240,0,0,0,0,1,253,0,0,15,224,0,0,0,21,86,254,85,80,31,208,0,0,0,63,255,255,255,244,47,229,85,85,64,63,255,255,255,244,63,255,255,255,208,63,255,255,255,244,127,255,255,255,208,0,63,128,0,0,191,255,255,255,208,0,63,128,0,0,255,0,7,244,0,0,63,128,0,1,255,64,7,240,0,0,63,128,0,3,255,64,11,240,0,0,63,128,0,7,255,128,15,240,0,0,63,255,255,207,255,192,15,224,0,0,63,255,255,223,255,192,31,208,0,0,63,255,255,255,239,208,47,192,0,0,63,213,127,255,207,240,63,192,0,0,63,128,63,203,71,240,63,128,0,0,63,128,63,129,3,248,127,64,0,0,63,128,63,128,3,252,255,0,0,0,63,128,63,128,2,254,254,0,0,0,63,64,63,128,0,255,252,0,0,0,127,64,63,128,0,191,248,0,0,0,127,0,63,128,0,63,240,0,0,0,191,0,63,128,0,63,240,0,0,0,255,0,63,128,0,127,240,0,0,0,254,0,63,64,0,255,252,0,0,2,253,0,63,64,3,255,254,0,0,3,252,0,63,64,15,254,255,128,0,11,248,0,127,0,127,240,191,224,0,15,240,0,191,2,255,208,47,252,0,63,224,0,255,47,255,0,15,255,128,191,192,255,255,191,252,0,3,255,208,127,64,255,253,63,224,0,0,191,64,13,0,191,244,47,0,0,0,30,0,0,0,21,0,4,0,0,0,0,0, + // 0x6570 数 + 112,101,38,38,124,40,1,252,0,0,63,0,0,0,228,0,0,0,1,192,63,64,228,1,253,0,0,0,11,240,63,66,252,2,252,0,0,0,3,244,63,67,244,3,252,0,0,0,1,252,63,75,224,3,252,0,0,0,0,253,63,95,192,3,248,0,0,0,0,164,63,70,0,7,244,0,0,0,63,255,255,255,255,11,250,170,170,128,63,255,255,255,255,15,255,255,255,208,63,255,255,255,255,31,255,255,255,208,0,2,255,208,0,47,255,255,255,208,0,7,255,248,0,63,208,3,252,0,0,31,255,255,64,127,208,3,248,0,0,127,255,191,224,255,224,7,248,0,2,255,127,95,252,255,240,7,244,0,31,252,63,67,250,255,240,11,240,0,127,240,63,64,247,255,244,15,240,0,63,128,63,64,15,251,248,15,240,0,13,0,191,64,31,243,252,31,224,0,0,2,252,0,11,226,252,47,208,0,0,3,252,0,2,192,253,63,192,0,0,7,244,0,0,0,255,127,128,0,127,255,255,255,255,64,191,191,64,0,127,255,255,255,255,64,127,255,0,0,127,255,255,255,255,64,63,254,0,0,0,127,64,47,192,0,47,252,0,0,0,255,0,63,128,0,15,248,0,0,1,253,0,127,64,0,31,248,0,0,3,255,128,255,0,0,63,252,0,0,11,255,250,253,0,0,255,255,0,0,11,255,255,252,0,3,255,255,128,0,0,65,255,252,0,15,253,127,224,0,0,0,255,255,128,127,248,47,248,0,0,31,255,255,247,255,224,11,255,0,27,255,252,63,255,255,64,3,255,208,63,255,208,7,255,252,0,0,191,192,15,249,0,0,139,224,0,0,47,0,10,64,0,0,3,0,0,0,5,0, + // 0x6572 敲 + 114,101,37,38,124,40,2,252,0,1,252,0,0,0,253,0,0,0,0,1,252,0,0,0,254,0,0,0,0,1,252,0,0,0,254,0,0,0,0,1,252,0,0,0,254,0,0,0,0,1,252,0,0,0,254,0,0,0,255,255,255,255,252,0,254,85,85,0,255,255,255,255,252,0,255,255,255,0,255,255,255,255,252,0,255,255,255,0,0,0,0,0,0,0,255,255,255,0,1,170,170,169,0,0,254,0,0,0,3,255,255,255,0,0,254,0,0,0,3,255,255,255,0,0,254,0,0,0,3,244,0,191,0,0,254,0,0,0,3,244,0,191,0,0,254,0,0,0,3,244,0,191,15,255,255,255,248,0,3,250,170,255,15,255,255,255,252,0,3,255,255,255,15,255,255,255,248,0,3,255,255,255,5,89,85,91,244,0,0,0,0,0,0,253,0,11,240,0,0,0,0,0,0,254,0,15,240,0,63,255,255,255,240,127,0,31,224,0,63,255,255,255,240,63,64,47,208,0,63,170,170,175,240,63,128,63,192,0,63,0,0,3,240,31,192,127,128,0,63,0,0,3,240,15,224,255,0,0,63,15,255,195,240,11,241,255,0,0,63,15,255,195,240,3,255,253,0,0,63,15,3,195,240,2,255,252,0,0,63,15,3,195,240,0,255,240,0,0,63,15,3,195,240,0,191,224,0,0,63,15,3,195,240,1,255,240,0,0,63,15,255,195,240,7,255,253,0,0,63,15,255,195,240,31,255,255,64,0,63,15,0,3,241,255,240,255,244,0,63,10,0,7,255,255,192,63,255,64,63,0,2,255,251,254,0,11,255,0,63,0,0,255,211,224,0,0,252,0,63,0,0,169,1,64,0,0,20,0, + // 0x6574 整 + 116,101,36,37,77,40,2,253,0,0,252,0,0,2,64,0,0,0,0,252,0,0,3,244,0,0,106,170,254,170,164,7,240,0,0,191,255,255,255,248,15,240,0,0,191,255,255,255,248,31,224,0,0,0,0,252,0,0,63,255,255,255,0,0,252,0,0,191,255,255,255,47,255,255,255,240,255,255,255,255,47,255,255,255,243,255,0,31,192,47,149,253,87,255,255,192,63,128,47,64,252,3,255,255,208,127,0,47,64,252,3,243,195,244,254,0,47,255,255,255,240,2,255,252,0,47,255,255,255,240,0,255,244,0,5,95,255,149,80,0,127,224,0,0,47,255,240,0,0,255,244,0,0,255,255,254,0,7,255,254,0,7,253,253,191,224,47,254,255,208,47,240,252,31,231,255,224,127,253,255,192,252,3,223,255,64,31,255,127,0,252,0,11,248,0,2,253,40,0,252,0,3,128,0,0,44,0,0,0,0,0,0,0,0,0,7,255,255,255,255,255,255,255,208,7,255,255,255,255,255,255,255,208,7,255,255,255,255,255,255,255,208,0,0,0,0,254,0,0,0,0,0,6,144,0,254,0,0,0,0,0,11,240,0,255,255,255,248,0,0,11,240,0,255,255,255,248,0,0,11,240,0,255,255,255,248,0,0,11,240,0,254,0,0,0,0,0,11,240,0,254,0,0,0,0,0,15,240,0,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x6599 料 + 153,101,38,38,124,40,1,252,0,2,164,0,0,0,0,42,64,0,0,3,248,0,0,0,0,63,128,0,0,3,248,0,0,0,0,63,128,0,47,3,248,31,192,52,0,63,128,0,47,3,248,31,128,254,0,63,128,0,31,131,248,47,65,255,192,63,128,0,15,195,248,63,0,127,240,63,128,0,15,195,248,63,0,15,252,63,128,0,11,211,248,125,0,2,252,63,128,0,7,227,248,188,0,0,184,63,128,0,7,227,248,252,0,0,32,63,128,0,3,243,249,244,0,0,0,63,128,0,3,67,248,96,0,0,0,63,128,0,0,3,248,0,2,0,0,63,128,0,63,255,255,255,203,208,0,63,128,0,63,255,255,255,223,252,0,63,128,0,63,255,255,255,203,255,64,63,128,0,21,111,253,85,64,255,224,63,128,0,0,31,252,0,0,47,208,63,128,0,0,47,255,0,0,7,192,63,128,0,0,63,255,128,0,1,0,63,128,0,0,191,255,208,0,0,0,63,128,0,0,255,255,244,0,0,0,63,134,128,1,251,250,252,0,0,0,63,255,192,3,243,248,255,0,1,111,255,255,208,7,243,248,127,70,255,255,255,255,208,15,211,248,62,63,255,255,255,208,0,47,195,248,28,63,255,250,127,128,0,127,131,248,0,63,229,0,63,128,0,191,3,248,0,16,0,0,63,128,0,62,3,248,0,0,0,0,63,128,0,44,3,248,0,0,0,0,63,128,0,4,3,248,0,0,0,0,63,128,0,0,3,248,0,0,0,0,63,128,0,0,3,248,0,0,0,0,63,128,0,0,3,248,0,0,0,0,63,128,0,0,3,248,0,0,0,0,63,128,0,0,2,244,0,0,0,0,47,128,0, + // 0x659c 斜 + 156,101,38,38,124,40,1,252,0,0,127,64,0,0,0,11,224,0,0,0,255,224,0,0,0,15,224,0,0,1,255,248,0,0,0,15,224,0,0,3,255,254,0,2,64,15,224,0,0,11,250,255,128,15,208,15,224,0,0,31,240,191,224,31,248,15,224,0,0,63,208,47,248,7,254,15,224,0,0,191,128,15,253,0,255,143,224,0,2,255,0,3,255,0,63,223,224,0,7,252,0,0,252,0,15,207,224,0,31,244,0,0,112,0,7,15,224,0,127,255,255,255,224,0,0,15,224,0,255,255,255,255,224,0,0,15,224,0,62,255,255,255,224,8,0,15,224,0,8,21,127,213,64,127,64,15,224,0,0,0,63,128,0,191,224,15,224,0,0,0,63,128,0,31,248,15,224,0,0,0,63,128,0,7,255,15,224,0,63,255,255,255,254,0,255,143,224,0,63,255,255,255,254,0,62,15,224,0,63,255,255,255,254,0,8,15,224,0,21,85,127,213,84,0,0,15,224,0,0,0,63,128,0,0,0,15,251,192,0,64,63,128,128,0,0,95,255,208,2,252,63,139,224,0,111,255,255,224,3,248,63,135,240,111,255,255,255,144,3,244,63,131,244,255,255,255,240,0,7,240,63,130,252,255,255,159,224,0,11,240,63,128,252,254,64,15,224,0,15,208,63,128,254,0,0,15,224,0,47,192,63,128,191,0,0,15,224,0,63,128,63,128,63,0,0,15,224,0,127,0,63,128,52,0,0,15,224,0,30,0,63,128,0,0,0,15,224,0,0,21,127,128,0,0,0,15,224,0,0,63,255,128,0,0,0,15,224,0,0,31,255,0,0,0,0,15,224,0,0,15,248,0,0,0,0,15,224,0, + // 0x65ad 断 + 173,101,36,38,86,40,3,252,0,0,5,64,0,0,0,0,0,84,0,31,128,0,0,0,11,192,253,0,31,128,0,0,1,191,240,253,44,31,131,144,0,191,255,248,253,61,31,131,242,255,255,255,128,253,62,31,135,226,255,255,224,0,253,47,31,139,194,255,148,0,0,253,31,95,143,130,252,0,0,0,253,15,95,159,66,252,0,0,0,253,15,159,175,2,252,0,0,0,253,9,31,137,2,252,0,0,0,253,0,31,128,2,252,0,0,0,253,191,255,255,242,252,0,0,0,253,191,255,255,242,253,85,85,85,253,191,255,255,242,255,255,255,254,253,0,63,128,2,255,255,255,254,253,0,127,192,2,255,255,255,254,253,0,255,240,2,252,0,254,0,253,1,255,252,2,252,0,254,0,253,3,255,255,2,252,0,254,0,253,11,255,175,194,252,0,254,0,253,31,223,143,226,252,0,254,0,253,63,95,131,195,252,0,254,0,254,255,31,129,67,248,0,254,0,254,252,31,128,3,244,0,254,0,253,180,31,128,3,244,0,254,0,253,96,31,128,7,240,0,254,0,253,0,31,128,11,240,0,254,0,253,0,31,128,15,240,0,254,0,253,0,0,0,31,208,0,254,0,255,255,255,255,255,192,0,254,0,255,255,255,255,255,192,0,254,0,255,255,255,255,255,64,0,254,0,254,0,0,2,255,0,0,254,0,253,0,0,3,253,0,0,254,0,253,0,0,7,252,0,0,254,0,84,0,0,0,240,0,0,254,0,0,0,0,0,80,0,0,169,0, + // 0x65b0 新 + 176,101,38,38,124,40,1,252,0,0,106,0,0,0,0,0,16,0,0,0,127,0,0,0,0,1,252,0,0,0,127,0,0,0,0,127,255,64,0,0,127,0,0,36,111,255,254,64,31,255,255,255,252,63,255,255,144,0,31,255,255,255,252,63,255,228,0,0,31,255,255,255,252,63,208,0,0,0,0,104,0,30,64,63,64,0,0,0,0,252,0,47,192,63,64,0,0,0,0,253,0,63,64,63,64,0,0,0,0,190,0,63,0,63,64,0,0,0,0,127,0,191,0,63,64,0,0,0,0,63,0,253,0,63,64,0,0,0,0,62,0,108,0,63,64,0,0,0,63,255,255,255,254,63,255,255,255,208,63,255,255,255,254,63,255,255,255,208,63,255,255,255,254,63,255,255,255,208,0,0,127,0,0,63,149,111,229,64,0,0,127,0,0,63,64,31,192,0,0,0,127,0,0,63,64,31,192,0,0,0,191,0,0,127,64,31,192,0,63,255,255,255,252,127,0,31,192,0,63,255,255,255,252,127,0,31,192,0,63,255,255,255,252,191,0,31,192,0,0,2,255,0,0,191,0,31,192,0,0,3,255,208,0,255,0,31,192,0,0,15,255,244,0,254,0,31,192,0,0,47,255,254,0,253,0,31,192,0,0,191,255,191,193,252,0,31,192,0,1,254,127,47,243,252,0,31,192,0,7,252,127,11,211,248,0,31,192,0,47,240,127,2,139,240,0,31,192,0,191,208,127,0,31,240,0,31,192,0,63,64,127,0,63,208,0,31,192,0,13,0,127,0,191,192,0,31,192,0,0,0,127,0,255,0,0,31,192,0,0,0,127,0,61,0,0,31,192,0,0,0,127,0,24,0,0,26,128,0, + // 0x65b9 方 + 185,101,36,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,106,170,170,255,170,170,170,170,169,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,2,255,255,255,255,252,0,0,0,2,255,255,255,255,252,0,0,0,3,255,255,255,255,252,0,0,0,3,254,170,170,171,252,0,0,0,7,248,0,0,3,252,0,0,0,11,244,0,0,3,252,0,0,0,15,240,0,0,3,248,0,0,0,31,240,0,0,3,248,0,0,0,63,224,0,0,3,248,0,0,0,127,192,0,0,7,244,0,0,0,255,128,0,0,7,244,0,0,2,255,0,0,0,11,240,0,0,7,254,0,0,0,15,240,0,0,31,252,0,0,0,15,240,0,0,127,240,0,0,0,15,224,0,2,255,208,0,0,0,47,208,0,31,255,64,0,0,0,127,192,0,255,253,0,0,127,255,255,192,0,191,240,0,0,63,255,255,64,0,47,128,0,0,47,255,253,0,0,8,0,0,0,5,85,64,0,0, + // 0x65e0 无 + 224,101,37,36,104,40,2,251,7,255,255,255,255,255,255,255,224,0,7,255,255,255,255,255,255,255,224,0,7,255,255,255,255,255,255,255,224,0,2,170,170,171,254,170,170,170,144,0,0,0,0,2,252,0,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,0,3,252,0,0,0,0,0,106,170,170,171,254,170,170,170,169,0,255,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,255,0,0,0,0,7,244,0,0,0,0,0,0,0,0,11,245,80,0,0,0,0,0,0,0,15,251,240,0,0,0,0,0,0,0,15,235,240,0,0,0,0,0,0,0,47,219,240,0,0,0,0,0,0,0,63,203,240,0,0,0,0,0,0,0,127,203,240,0,0,0,0,0,0,0,255,75,240,0,0,0,0,0,0,1,255,11,240,0,0,0,0,0,0,3,254,11,240,0,0,0,0,0,0,15,252,11,240,0,0,56,0,0,0,63,244,11,240,0,0,63,64,0,0,255,224,11,240,0,0,63,64,0,7,255,128,11,240,0,0,127,64,0,47,255,0,11,244,0,0,191,0,2,255,248,0,11,248,0,0,255,0,127,255,208,0,7,255,255,255,254,0,255,254,0,0,3,255,255,255,253,0,63,224,0,0,1,255,255,255,248,0,30,0,0,0,0,26,170,170,128,0,0,0,0,0,0,0,0,0,0,0, + // 0x65f6 时 + 246,101,36,38,86,40,3,252,0,0,0,0,0,0,1,168,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,85,85,85,64,0,0,3,252,0,255,255,255,192,0,0,3,252,0,255,255,255,192,0,0,3,252,0,255,255,255,192,0,0,3,252,0,254,0,31,192,0,0,3,252,0,254,0,31,195,255,255,255,255,253,254,0,31,195,255,255,255,255,253,254,0,31,195,255,255,255,255,253,254,0,31,194,170,170,171,254,169,254,0,31,192,0,0,3,252,0,254,0,31,192,0,0,3,252,0,254,0,31,192,0,0,3,252,0,255,255,255,192,44,0,3,252,0,255,255,255,192,255,0,3,252,0,255,255,255,192,191,128,3,252,0,255,85,111,192,63,208,3,252,0,254,0,31,192,31,240,3,252,0,254,0,31,192,11,248,3,252,0,254,0,31,192,3,252,3,252,0,254,0,31,192,1,255,3,252,0,254,0,31,192,0,255,67,252,0,254,0,31,192,0,127,67,252,0,254,0,31,192,0,56,3,252,0,254,0,31,192,0,0,3,252,0,255,255,255,192,0,0,3,252,0,255,255,255,192,0,0,3,252,0,255,255,255,192,0,0,3,252,0,255,85,85,64,0,0,3,252,0,254,0,0,0,0,0,3,252,0,254,0,0,0,0,0,3,252,0,84,0,0,0,1,170,175,252,0,0,0,0,0,0,255,255,248,0,0,0,0,0,0,255,255,240,0,0,0,0,0,0,191,254,64,0,0,0,0,0,0,0,0,0,0, + // 0x660e 明 + 14,102,34,36,68,40,3,252,85,85,85,64,63,255,255,255,240,255,255,255,224,63,255,255,255,240,255,255,255,224,63,255,255,255,240,255,255,255,224,63,149,85,91,240,254,0,15,224,63,64,0,11,240,254,0,15,224,63,64,0,11,240,254,0,15,224,63,64,0,11,240,254,0,15,224,63,64,0,11,240,254,0,15,224,63,64,0,11,240,254,0,15,224,63,149,85,91,240,254,0,15,224,63,255,255,255,240,255,255,255,224,63,255,255,255,240,255,255,255,224,63,255,255,255,240,255,255,255,224,63,64,0,11,240,255,85,95,224,63,64,0,11,240,254,0,15,224,63,64,0,11,240,254,0,15,224,127,64,0,11,240,254,0,15,224,127,64,0,11,240,254,0,15,224,127,64,0,11,240,254,0,15,224,127,149,85,91,240,254,0,15,224,191,255,255,255,240,255,85,95,224,191,255,255,255,240,255,255,255,224,255,255,255,255,240,255,255,255,224,254,0,0,11,240,255,255,255,225,253,0,0,11,240,254,0,0,3,252,0,0,11,240,254,0,0,3,252,0,0,11,240,254,0,0,11,244,0,0,11,240,169,0,0,15,240,0,0,11,240,0,0,0,63,224,0,0,11,240,0,0,0,191,192,0,0,11,240,0,0,1,255,64,0,0,11,240,0,0,11,254,0,0,255,255,240,0,0,15,252,0,0,127,255,224,0,0,3,224,0,0,63,255,128,0,0,0,128,0,0,26,148,0, + // 0x662f 是 + 47,102,36,36,68,40,2,252,0,191,255,255,255,255,255,253,0,0,191,255,255,255,255,255,253,0,0,191,255,255,255,255,255,253,0,0,191,0,0,0,0,1,253,0,0,191,0,0,0,0,1,253,0,0,191,170,170,170,170,170,253,0,0,191,255,255,255,255,255,253,0,0,191,255,255,255,255,255,253,0,0,191,0,0,0,0,1,253,0,0,191,0,0,0,0,1,253,0,0,191,0,0,0,0,1,253,0,0,191,255,255,255,255,255,253,0,0,191,255,255,255,255,255,253,0,0,127,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,21,85,85,85,191,85,85,85,84,0,2,80,0,127,0,0,0,0,0,7,248,0,127,0,0,0,0,0,11,244,0,127,0,0,0,0,0,15,240,0,127,255,255,255,192,0,15,240,0,127,255,255,255,192,0,47,240,0,127,255,255,255,192,0,63,252,0,127,64,0,0,0,0,127,254,0,127,0,0,0,0,0,255,255,64,127,0,0,0,0,3,254,127,240,127,0,0,0,0,11,252,31,254,191,0,0,0,0,47,244,7,255,255,170,85,85,85,191,224,0,255,255,255,255,255,255,255,128,0,31,255,255,255,255,254,62,0,0,0,27,255,255,255,253,8,0,0,0,0,0,0,0,0, + // 0x6682 暂 + 130,102,36,39,95,40,2,251,0,2,64,0,0,0,0,0,0,0,7,248,0,0,0,0,6,224,0,15,240,0,0,1,107,255,244,255,255,255,255,248,127,255,255,252,255,255,255,255,248,127,255,254,64,191,255,255,255,248,127,148,0,0,0,254,0,0,0,127,0,0,0,3,252,26,128,0,127,0,0,0,11,240,47,192,0,127,0,0,0,31,208,47,192,0,191,255,255,255,127,255,255,255,252,191,255,255,255,63,255,255,255,252,191,255,255,255,47,255,255,255,252,190,0,254,0,0,0,47,192,0,253,0,254,0,0,0,47,192,0,253,0,254,0,0,1,111,255,245,252,0,254,0,127,255,255,255,246,252,0,254,0,191,255,255,255,167,248,0,254,0,191,250,175,192,11,240,0,254,0,16,0,47,192,15,224,0,254,0,0,0,47,192,2,192,0,254,0,0,0,26,128,0,0,0,20,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,64,0,0,0,1,252,0,0,63,64,0,0,0,1,252,0,0,63,64,0,0,0,1,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,234,170,170,170,171,252,0,0,63,64,0,0,0,1,252,0,0,63,64,0,0,0,1,252,0,0,63,64,0,0,0,1,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,64,0,0,0,1,252,0,0,0,0,0,0,0,0,0,0, + // 0x66ab 暫 + 171,102,36,38,86,40,2,252,0,0,252,0,0,0,0,1,64,0,0,252,0,0,0,0,111,208,21,85,253,85,80,229,175,255,244,127,255,255,255,244,255,255,255,144,127,255,255,255,244,255,255,144,0,0,0,252,0,0,254,64,0,0,26,171,255,170,144,252,0,0,0,31,255,255,255,224,252,0,0,0,31,64,252,7,224,252,0,0,0,31,64,252,7,224,255,255,255,255,31,255,255,255,224,255,255,255,255,31,234,254,175,225,255,255,255,255,31,64,252,7,225,252,0,253,0,31,255,255,255,226,252,0,253,0,31,255,255,255,227,248,0,253,0,0,0,252,0,3,244,0,253,0,0,1,253,0,11,240,0,253,0,255,255,255,255,255,224,0,253,0,255,255,255,255,255,192,0,253,0,0,0,252,0,191,64,0,253,0,0,0,252,0,62,0,0,253,0,0,0,168,0,8,0,0,84,0,0,31,255,255,255,255,255,244,0,0,31,255,255,255,255,255,244,0,0,31,255,255,255,255,255,244,0,0,31,208,0,0,0,7,244,0,0,31,208,0,0,0,7,244,0,0,31,208,0,0,0,7,244,0,0,31,255,255,255,255,255,244,0,0,31,255,255,255,255,255,244,0,0,31,234,170,170,170,175,244,0,0,31,208,0,0,0,7,244,0,0,31,208,0,0,0,7,244,0,0,31,255,255,255,255,255,244,0,0,31,255,255,255,255,255,244,0,0,31,255,255,255,255,255,244,0,0,31,208,0,0,0,7,244,0,0,10,128,0,0,0,2,164,0, + // 0x66f4 更 + 244,102,37,36,104,40,2,252,127,255,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,255,253,0,21,85,85,85,255,149,85,85,84,0,0,0,0,0,191,0,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,0,191,64,0,0,0,0,0,255,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,255,192,0,0,254,0,0,191,0,0,63,192,0,0,254,0,0,191,0,0,63,192,0,0,254,0,0,191,0,0,63,192,0,0,255,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,255,192,0,0,254,0,0,191,0,0,63,192,0,0,254,0,0,191,0,0,63,192,0,0,254,0,0,191,0,0,63,192,0,0,255,0,0,191,0,0,63,192,0,0,255,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,255,192,0,0,1,128,1,254,0,0,0,0,0,0,31,224,3,252,0,0,0,0,0,0,15,244,7,252,0,0,0,0,0,0,7,254,15,244,0,0,0,0,0,0,1,255,191,240,0,0,0,0,0,0,0,127,255,192,0,0,0,0,0,0,0,47,255,192,0,0,0,0,0,0,1,191,255,254,64,0,0,0,0,0,111,255,255,255,255,165,64,0,0,111,255,255,71,255,255,255,255,255,64,127,255,244,0,47,255,255,255,255,0,47,254,0,0,0,27,255,255,254,0,14,64,0,0,0,0,0,86,168,0, + // 0x6700 最 + 0,103,36,37,77,40,2,252,0,26,170,170,170,170,170,168,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,128,0,0,0,2,252,0,0,63,128,0,0,0,2,252,0,0,63,213,85,85,85,87,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,128,0,0,0,2,252,0,0,63,128,0,0,0,2,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,21,85,85,85,85,85,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,253,191,255,255,255,255,255,255,255,253,191,255,255,255,255,255,255,255,253,1,252,0,47,192,0,0,0,0,1,252,0,47,192,0,0,0,0,1,255,255,255,207,255,255,255,224,1,255,255,255,207,255,255,255,240,1,254,170,191,203,255,255,255,224,1,252,0,47,192,188,0,47,208,1,252,0,47,192,254,0,63,192,1,254,170,191,192,127,0,255,64,1,255,255,255,192,63,194,255,0,1,255,255,255,192,31,231,252,0,1,252,0,47,192,11,255,244,0,1,252,0,47,192,3,255,224,0,1,252,21,191,192,2,255,192,0,191,255,255,255,192,31,255,244,0,255,255,255,255,193,255,255,254,0,191,255,165,111,239,255,210,255,248,84,0,0,47,239,254,0,127,255,0,0,0,47,207,224,0,11,252,0,0,0,47,198,0,0,0,104, + // 0x6709 有 + 9,103,36,38,86,40,2,252,0,0,0,36,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,0,0,0,0,0,21,85,86,255,85,85,85,85,84,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,0,0,31,240,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,2,255,255,255,255,255,252,0,0,7,255,255,255,255,255,252,0,0,15,255,255,255,255,255,252,0,0,63,254,0,0,0,3,252,0,0,255,254,0,0,0,2,252,0,2,255,254,0,0,0,2,252,0,11,254,254,0,0,0,3,252,0,63,248,255,255,255,255,255,252,0,255,224,255,255,255,255,255,252,0,255,128,255,255,255,255,255,252,0,61,0,254,0,0,0,2,252,0,20,0,254,0,0,0,2,252,0,0,0,254,0,0,0,2,252,0,0,0,254,0,0,0,3,252,0,0,0,255,255,255,255,255,252,0,0,0,255,255,255,255,255,252,0,0,0,255,255,255,255,255,252,0,0,0,254,0,0,0,2,252,0,0,0,254,0,0,0,2,252,0,0,0,254,0,0,0,2,252,0,0,0,254,0,0,0,3,252,0,0,0,254,0,0,63,255,252,0,0,0,254,0,0,31,255,248,0,0,0,254,0,0,15,255,224,0,0,0,169,0,0,10,149,0,0, + // 0x671f 期 + 31,103,36,37,77,40,1,252,0,190,0,15,208,0,0,0,0,0,190,0,15,208,15,255,255,255,0,190,0,15,208,15,255,255,255,0,190,0,15,208,15,255,255,255,0,191,0,31,224,15,229,85,191,63,255,255,255,255,79,208,0,191,63,255,255,255,255,79,208,0,191,63,255,255,255,255,79,208,0,191,0,190,0,15,208,15,208,0,191,0,190,0,15,208,15,208,0,191,0,190,0,15,208,15,229,85,191,0,191,255,255,208,15,255,255,255,0,191,255,255,208,15,255,255,255,0,191,255,255,208,15,255,255,255,0,190,0,15,208,15,208,0,191,0,190,0,15,208,15,208,0,191,0,190,0,15,208,15,208,0,191,0,191,255,255,208,15,208,0,191,0,191,255,255,208,15,208,0,191,0,191,255,255,208,15,229,85,191,0,190,0,15,208,15,255,255,255,0,190,0,15,208,31,255,255,255,0,190,0,15,208,31,255,255,255,0,191,0,31,224,31,192,0,191,127,255,255,255,255,47,192,0,191,127,255,255,255,255,47,192,0,191,127,255,255,255,255,63,128,0,191,0,0,0,0,0,63,128,0,191,0,47,128,124,0,127,64,0,191,0,63,192,255,0,127,0,0,191,0,255,64,127,192,191,0,0,191,1,255,0,47,224,254,0,0,191,7,252,0,15,242,253,0,0,191,31,244,0,7,251,252,2,255,255,63,224,0,2,215,248,0,255,254,31,192,0,0,1,240,0,255,248,2,0,0,0,0,16,0,85,64, + // 0x673a 机 + 58,103,38,38,124,40,1,252,0,1,252,0,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,0,2,252,0,2,170,170,170,0,0,0,2,252,0,7,255,255,255,64,0,0,2,252,0,7,255,255,255,64,0,0,2,252,0,7,255,255,255,64,0,0,2,252,0,7,244,0,63,64,0,0,2,252,0,7,244,0,63,64,0,0,2,252,0,7,244,0,63,64,0,63,255,255,255,135,244,0,63,64,0,63,255,255,255,135,244,0,63,64,0,63,255,255,255,135,244,0,63,64,0,26,171,254,170,71,244,0,63,64,0,0,7,252,0,7,244,0,63,64,0,0,11,252,0,7,244,0,63,64,0,0,15,252,0,7,244,0,63,64,0,0,31,254,0,7,244,0,63,64,0,0,47,255,128,7,244,0,63,64,0,0,63,255,224,7,240,0,63,64,0,0,127,255,244,7,240,0,63,64,0,0,254,254,253,7,240,0,63,64,0,1,250,252,255,11,240,0,63,64,0,3,246,252,63,139,240,0,63,64,0,7,242,252,47,15,240,0,63,64,0,15,210,252,13,15,224,0,63,64,0,47,194,252,0,15,208,0,63,64,0,127,130,252,0,31,208,0,63,64,0,191,2,252,0,47,192,0,63,66,128,61,2,252,0,63,192,0,63,66,240,28,2,252,0,127,128,0,63,66,240,0,2,252,0,255,0,0,63,66,240,0,2,252,1,255,0,0,63,67,240,0,2,252,3,253,0,0,63,67,240,0,2,252,11,252,0,0,63,131,240,0,2,252,31,244,0,0,63,255,224,0,2,252,63,224,0,0,63,255,208,0,2,252,11,192,0,0,31,255,128,0,1,252,1,0,0,0,1,84,0, + // 0x6740 杀 + 64,103,36,38,86,40,2,252,0,0,0,0,0,0,2,128,0,0,20,0,0,0,0,15,244,0,0,127,128,0,0,0,127,248,0,0,255,253,0,0,2,255,224,0,0,47,255,224,0,31,255,64,0,0,2,255,254,0,191,248,0,0,0,0,31,255,235,255,208,0,0,0,0,1,191,255,254,0,0,0,0,0,0,15,255,248,0,0,0,0,0,0,191,255,255,64,0,0,0,0,11,255,251,255,244,0,0,0,1,255,255,128,191,255,64,0,0,111,255,244,0,11,255,244,0,27,255,255,64,0,0,191,255,0,127,255,228,0,0,0,31,255,128,31,254,0,0,191,0,1,254,0,7,144,0,0,255,0,0,44,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,21,85,85,85,255,85,85,85,84,191,255,255,255,255,255,255,255,253,191,255,255,255,255,255,255,255,253,191,255,255,255,255,255,255,255,253,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,228,0,255,0,29,0,0,0,3,254,0,255,0,191,128,0,0,11,252,0,255,0,127,224,0,0,47,240,0,255,0,31,248,0,0,191,208,0,255,0,7,255,0,2,255,64,0,255,0,1,255,192,11,254,0,0,255,0,0,127,224,63,248,0,0,255,0,0,31,248,255,224,0,0,255,0,0,7,253,127,128,2,170,255,0,0,2,248,29,0,2,255,255,0,0,0,144,0,0,1,255,253,0,0,0,0,0,0,0,255,224,0,0,0,0, + // 0x675f 束 + 95,103,36,38,86,40,2,252,0,0,0,0,170,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,21,85,85,85,255,85,85,85,84,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,85,85,85,255,85,85,85,0,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,253,0,0,255,0,0,127,64,0,253,0,0,255,0,0,127,64,0,253,0,0,255,0,0,127,64,0,253,0,0,255,0,0,127,64,0,253,0,0,255,0,0,127,64,0,254,85,85,255,85,85,191,64,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,0,0,31,255,244,0,0,0,0,0,0,191,255,254,0,0,0,0,0,2,255,255,255,128,0,0,0,0,11,253,255,127,240,0,0,0,0,127,244,255,31,253,0,0,0,2,255,208,255,7,255,128,0,0,31,255,0,255,0,255,244,0,1,255,252,0,255,0,63,255,64,31,255,224,0,255,0,11,255,248,255,255,0,0,255,0,0,255,255,127,244,0,0,255,0,0,31,253,47,128,0,0,255,0,0,2,248,4,0,0,0,255,0,0,0,32,0,0,0,0,254,0,0,0,0, + // 0x6761 条 + 97,103,36,38,86,40,2,252,0,0,0,105,0,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,11,253,0,0,4,0,0,0,0,47,255,255,255,255,64,0,0,0,127,255,255,255,255,192,0,0,2,255,255,255,255,255,128,0,0,15,255,128,0,2,255,0,0,0,127,255,224,0,11,253,0,0,3,255,239,248,0,47,244,0,0,47,255,3,255,0,255,208,0,0,15,248,1,255,215,255,64,0,0,3,208,0,63,255,253,0,0,0,0,0,0,11,255,240,0,0,0,0,0,0,47,255,253,0,0,0,0,0,6,255,255,255,228,0,0,0,1,191,255,210,255,255,229,0,1,191,255,253,0,47,255,255,250,127,255,255,144,0,1,255,255,254,63,255,248,0,255,0,6,255,252,31,249,0,0,255,0,0,6,244,9,0,0,0,255,0,0,0,0,21,85,85,85,255,85,85,85,84,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,0,127,255,253,0,0,0,0,0,2,255,255,255,128,0,0,0,0,11,252,255,63,224,0,0,0,0,127,240,255,15,253,0,0,0,2,255,192,255,3,255,192,0,0,47,254,0,255,0,191,248,0,1,255,244,0,255,0,31,255,144,111,255,192,0,255,0,3,255,254,255,253,0,0,255,0,0,127,255,63,224,0,0,255,0,0,7,252,30,0,0,0,255,0,0,0,116,0,0,0,0,254,0,0,0,0, + // 0x6765 来 + 101,103,36,38,86,40,2,252,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,6,170,170,170,255,170,170,170,160,0,2,128,0,255,0,1,224,0,0,47,208,0,255,0,3,253,0,0,15,240,0,255,0,7,252,0,0,11,244,0,255,0,15,244,0,0,3,252,0,255,0,15,240,0,0,2,253,0,255,0,47,208,0,0,0,255,0,255,0,127,128,0,0,0,254,0,255,0,255,0,0,0,0,96,0,255,0,25,0,0,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,106,170,170,191,255,254,170,170,169,0,0,0,63,255,252,0,0,0,0,0,0,255,255,255,0,0,0,0,0,3,254,255,191,192,0,0,0,0,15,248,255,47,240,0,0,0,0,63,240,255,15,252,0,0,0,0,255,192,255,3,255,0,0,0,7,255,0,255,0,255,208,0,0,47,252,0,255,0,63,248,0,0,255,240,0,255,0,15,255,0,11,255,192,0,255,0,3,255,224,191,254,0,0,255,0,0,191,254,255,244,0,0,255,0,0,31,255,63,128,0,0,255,0,0,3,253,29,0,0,0,255,0,0,0,120,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0, + // 0x677f 板 + 127,103,38,38,124,40,1,252,0,3,240,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,3,244,0,21,85,85,85,85,64,0,3,244,0,63,255,255,255,255,128,0,3,244,0,63,255,255,255,255,128,0,3,244,0,63,255,255,255,255,128,0,3,244,0,63,128,0,0,0,0,0,3,244,0,63,128,0,0,0,0,0,3,244,0,63,128,0,0,0,0,63,255,255,252,63,128,0,0,0,0,63,255,255,252,63,128,0,0,0,0,63,255,255,252,63,128,0,0,0,0,21,95,249,84,63,128,0,0,0,0,0,15,244,0,63,255,255,255,254,0,0,15,244,0,63,255,255,255,255,0,0,31,248,0,63,255,255,255,255,0,0,63,253,0,63,255,85,85,254,0,0,63,255,0,63,255,0,0,253,0,0,191,255,192,63,191,64,2,252,0,0,255,255,224,63,127,128,3,252,0,1,255,247,244,63,95,192,3,248,0,3,247,246,252,127,79,208,11,240,0,7,243,244,253,127,11,240,15,240,0,11,211,244,124,191,7,244,47,208,0,31,195,244,48,191,3,252,63,192,0,63,131,244,0,254,1,254,191,128,0,191,3,244,0,254,0,255,255,0,0,126,3,244,1,253,0,127,253,0,0,60,3,244,2,252,0,47,248,0,0,24,3,244,3,252,0,47,248,0,0,0,3,244,7,244,0,191,254,0,0,0,3,244,11,240,2,255,255,128,0,0,3,244,15,240,11,254,191,224,0,0,3,244,47,208,127,248,47,254,0,0,3,244,127,195,255,208,11,255,208,0,3,244,191,67,255,64,2,255,192,0,3,244,31,0,248,0,0,63,0,0,3,240,4,0,80,0,0,5,0, + // 0x6797 林 + 151,103,38,38,124,40,1,252,0,0,254,0,0,0,31,192,0,0,0,0,254,0,0,0,31,192,0,0,0,0,254,0,0,0,31,192,0,0,0,0,254,0,0,0,31,192,0,0,0,0,254,0,0,0,31,192,0,0,0,0,254,0,0,0,31,192,0,0,0,0,254,0,0,0,31,192,0,0,0,0,254,0,0,0,31,192,0,0,0,0,254,0,0,0,31,192,0,0,47,255,255,255,199,255,255,255,255,128,47,255,255,255,199,255,255,255,255,128,47,255,255,255,199,255,255,255,255,128,26,171,255,170,130,170,191,250,170,64,0,3,255,0,0,0,191,244,0,0,0,3,255,128,0,0,255,252,0,0,0,11,255,224,0,1,255,252,0,0,0,15,255,248,0,2,255,253,0,0,0,31,255,253,0,3,255,255,0,0,0,47,254,255,64,11,255,255,0,0,0,63,254,127,192,15,255,255,128,0,0,190,254,47,240,47,239,239,192,0,0,252,254,15,208,63,159,223,224,0,2,248,254,3,128,191,31,203,240,0,7,244,254,1,1,254,31,195,248,0,15,240,254,0,3,252,31,194,252,0,47,208,254,0,11,248,31,193,255,0,127,192,254,0,31,240,31,192,255,128,127,64,254,0,127,208,31,192,127,208,62,0,254,0,255,128,31,192,47,208,28,0,254,0,191,0,31,192,15,64,0,0,254,0,60,0,31,192,5,0,0,0,254,0,20,0,31,192,0,0,0,0,254,0,0,0,31,192,0,0,0,0,254,0,0,0,31,192,0,0,0,0,254,0,0,0,31,192,0,0,0,0,254,0,0,0,31,192,0,0,0,0,254,0,0,0,31,192,0,0,0,0,170,0,0,0,26,128,0,0, + // 0x67f1 柱 + 241,103,38,38,124,40,1,252,0,2,248,0,0,2,0,0,0,0,0,2,252,0,0,15,208,0,0,0,0,2,252,0,0,63,248,0,0,0,0,2,252,0,0,15,255,0,0,0,0,2,252,0,0,2,255,192,0,0,0,2,252,0,0,0,127,240,0,0,0,2,252,0,0,0,31,248,0,0,0,2,252,0,0,0,7,240,0,0,0,2,252,0,42,170,171,234,170,64,63,255,255,255,63,255,255,255,255,192,63,255,255,255,63,255,255,255,255,192,63,255,255,255,63,255,255,255,255,192,26,171,254,170,0,0,63,192,0,0,0,7,252,0,0,0,63,192,0,0,0,15,252,0,0,0,63,192,0,0,0,15,252,0,0,0,63,192,0,0,0,31,254,0,0,0,63,192,0,0,0,63,255,128,0,0,63,192,0,0,0,63,255,208,0,0,63,192,0,0,0,191,255,244,0,0,63,192,0,0,0,254,254,252,15,255,255,255,255,64,2,250,252,255,15,255,255,255,255,64,3,242,252,127,79,255,255,255,255,64,11,226,252,46,5,85,191,213,85,0,15,210,252,12,0,0,63,192,0,0,63,194,252,0,0,0,63,192,0,0,127,66,252,0,0,0,63,192,0,0,127,2,252,0,0,0,63,192,0,0,61,2,252,0,0,0,63,192,0,0,24,2,252,0,0,0,63,192,0,0,0,2,252,0,0,0,63,192,0,0,0,2,252,0,0,0,63,192,0,0,0,2,252,0,0,0,63,192,0,0,0,2,252,3,255,255,255,255,255,224,0,2,252,3,255,255,255,255,255,224,0,2,252,3,255,255,255,255,255,224,0,2,252,2,170,170,170,170,170,144,0,2,248,0,0,0,0,0,0,0, + // 0x6821 校 + 33,104,38,38,124,40,1,252,0,7,240,0,0,0,255,0,0,0,0,7,240,0,0,0,255,0,0,0,0,7,240,0,0,0,255,0,0,0,0,7,240,0,0,0,255,0,0,0,0,7,240,0,0,0,255,0,0,0,0,7,240,0,0,0,255,0,0,0,0,7,240,3,255,255,255,255,255,192,0,7,240,3,255,255,255,255,255,192,0,7,240,3,255,255,255,255,255,192,63,255,255,250,255,255,255,255,255,128,63,255,255,248,0,0,0,0,0,0,63,255,255,248,1,244,0,47,0,0,21,95,249,84,3,252,0,127,192,0,0,15,240,0,11,248,0,47,224,0,0,31,240,0,15,240,0,15,248,0,0,47,244,0,63,208,0,3,253,0,0,63,252,0,191,128,0,0,255,0,0,63,255,2,255,0,0,0,127,128,0,191,255,139,253,176,0,62,127,208,0,255,255,195,247,248,0,191,79,128,1,255,251,240,210,252,0,255,9,0,2,251,243,244,0,254,0,254,0,0,3,247,241,252,0,191,2,253,0,0,11,215,240,244,0,127,131,252,0,0,15,199,240,96,0,47,219,244,0,0,47,135,240,0,0,15,255,240,0,0,127,71,240,0,0,11,255,192,0,0,127,7,240,0,0,3,255,128,0,0,61,7,240,0,0,2,255,128,0,0,24,7,240,0,0,11,255,224,0,0,0,7,240,0,0,47,255,248,0,0,0,7,240,0,0,255,223,255,0,0,0,7,240,0,11,255,66,255,208,0,0,7,240,0,127,253,0,191,253,0,0,7,240,11,255,224,0,47,255,208,0,7,240,15,255,64,0,7,255,192,0,7,240,7,248,0,0,0,191,0,0,7,240,3,64,0,0,0,9,0, + // 0x683c 格 + 60,104,38,38,124,40,1,252,0,2,160,0,0,9,0,0,0,0,0,3,244,0,0,31,208,0,0,0,0,3,244,0,0,63,192,0,0,0,0,3,244,0,0,127,128,0,0,0,0,3,244,0,0,255,64,0,64,0,0,3,244,0,1,255,255,255,244,0,0,3,244,0,3,255,255,255,244,0,0,3,244,0,15,255,255,255,240,0,0,3,244,0,31,240,0,31,224,0,63,255,255,252,127,244,0,63,192,0,63,255,255,253,255,252,0,127,128,0,63,255,255,255,255,255,0,255,0,0,21,95,249,111,252,127,131,253,0,0,0,15,244,11,240,63,219,248,0,0,0,15,252,1,192,15,255,240,0,0,0,31,254,0,0,3,255,192,0,0,0,47,255,128,0,3,255,192,0,0,0,63,255,208,0,31,255,244,0,0,0,127,251,240,0,191,255,254,0,0,0,255,247,252,3,255,195,255,208,0,0,255,244,248,127,254,0,191,254,64,2,247,244,183,255,244,0,31,255,224,3,243,244,63,255,208,0,3,255,192,11,211,244,31,255,255,255,255,255,64,15,195,244,15,175,255,255,255,245,0,63,131,244,0,47,255,255,255,244,0,127,3,244,0,47,192,0,3,244,0,127,3,244,0,47,192,0,3,244,0,60,3,244,0,47,192,0,3,244,0,24,3,244,0,47,192,0,3,244,0,0,3,244,0,47,192,0,3,244,0,0,3,244,0,47,192,0,3,244,0,0,3,244,0,47,192,0,3,244,0,0,3,244,0,47,255,255,255,244,0,0,3,244,0,47,255,255,255,244,0,0,3,244,0,47,255,255,255,244,0,0,3,244,0,47,192,0,7,244,0,0,3,240,0,31,128,0,2,160,0, + // 0x68af 梯 + 175,104,37,38,124,40,1,252,0,7,240,0,0,64,0,5,0,0,0,7,240,0,15,208,0,15,240,0,0,7,240,0,15,240,0,15,240,0,0,7,240,0,7,244,0,47,208,0,0,7,240,0,3,248,0,63,192,0,0,7,240,0,2,252,0,127,0,0,0,7,240,0,1,244,0,110,0,0,0,7,240,1,255,255,255,255,254,0,0,7,240,1,255,255,255,255,254,0,63,255,255,249,255,255,255,255,254,0,63,255,255,248,0,1,253,0,254,0,63,255,255,248,0,0,253,0,190,0,21,95,249,84,0,0,253,0,190,0,0,15,240,0,0,0,253,0,190,0,0,15,240,0,21,85,253,85,254,0,0,47,248,0,191,255,255,255,254,0,0,63,253,0,255,255,255,255,254,0,0,63,255,0,255,255,255,255,254,0,0,191,255,128,253,0,253,0,0,0,0,255,255,209,252,0,253,0,0,0,1,255,247,242,252,0,253,0,0,0,2,251,242,250,252,1,253,0,0,0,3,247,240,247,255,255,255,255,255,192,11,215,240,163,255,255,255,255,255,192,15,199,240,7,255,255,255,255,255,192,63,135,240,11,240,15,253,0,63,128,127,7,240,0,0,47,253,0,63,128,126,7,240,0,0,127,253,0,63,128,60,7,240,0,1,255,253,0,63,64,24,7,240,0,11,253,253,0,63,64,0,7,240,0,47,240,253,0,127,64,0,7,240,1,255,192,253,17,255,0,0,7,240,11,255,0,253,63,255,0,0,7,240,63,252,0,253,63,253,0,0,7,240,31,224,0,253,47,244,0,0,7,240,11,64,0,253,0,0,0,0,7,240,0,0,0,253,0,0,0,0,7,240,0,0,0,252,0,0,0, + // 0x68c0 检 + 192,104,38,38,124,40,1,252,0,10,128,0,0,2,208,0,0,0,0,15,208,0,0,7,248,0,0,0,0,15,208,0,0,15,244,0,0,0,0,15,208,0,0,47,252,0,0,0,0,15,208,0,0,127,254,0,0,0,0,15,208,0,0,255,255,128,0,0,0,15,208,0,3,254,63,224,0,0,0,15,208,0,11,252,15,248,0,0,63,255,255,192,47,240,7,254,0,0,63,255,255,192,191,208,1,255,192,0,63,255,255,195,255,64,0,127,244,0,21,111,229,79,253,0,0,15,254,0,0,47,208,127,248,0,0,7,255,208,0,63,225,255,239,255,255,253,191,192,0,63,244,255,31,255,255,253,31,128,0,127,252,56,31,255,255,253,3,0,0,191,254,16,0,0,0,0,0,0,0,255,255,0,0,0,0,0,0,0,1,255,239,192,0,0,64,0,0,0,2,255,223,208,16,7,224,0,248,0,3,255,215,211,240,3,240,1,252,0,11,239,211,131,244,3,240,2,248,0,15,207,209,2,248,3,240,3,244,0,31,207,208,0,252,2,244,7,240,0,63,79,208,0,252,2,248,15,208,0,127,15,208,0,189,1,248,15,192,0,62,15,208,0,126,0,252,47,128,0,44,15,208,0,63,0,252,63,0,0,8,15,208,0,63,0,144,126,0,0,0,15,208,0,57,0,0,252,0,0,0,15,208,0,0,0,1,248,0,0,0,15,208,0,0,0,3,240,0,0,0,15,208,21,85,85,87,245,85,0,0,15,208,63,255,255,255,255,255,64,0,15,208,63,255,255,255,255,255,64,0,15,208,63,255,255,255,255,255,64,0,15,208,0,0,0,0,0,0,0,0,15,192,0,0,0,0,0,0,0, + // 0x69fd 槽 + 253,105,38,38,124,40,1,252,0,15,224,0,0,127,3,240,0,0,0,15,224,0,0,127,3,240,0,0,0,15,224,0,0,127,3,240,0,0,0,15,224,31,255,255,255,255,255,208,0,15,224,31,255,255,255,255,255,208,0,15,224,31,255,255,255,255,255,208,0,15,224,0,0,127,3,240,0,0,0,15,224,0,0,127,3,240,0,0,0,15,224,2,170,191,171,250,170,0,63,255,255,227,255,255,255,255,255,0,63,255,255,227,255,255,255,255,255,0,63,255,255,227,240,63,3,224,63,0,21,111,245,83,240,63,3,224,63,0,0,31,224,3,240,63,3,224,63,0,0,47,224,3,255,255,255,255,255,0,0,63,240,3,255,255,255,255,255,0,0,63,244,3,245,127,87,245,127,0,0,191,252,3,240,63,3,224,63,0,0,255,255,3,240,63,3,224,63,0,0,255,255,67,255,255,255,255,255,0,2,255,239,195,255,255,255,255,255,0,3,255,231,226,170,170,170,170,170,0,7,223,227,240,0,0,0,0,0,0,15,207,225,192,127,255,255,255,248,0,31,207,224,64,191,255,255,255,248,0,63,79,224,0,191,255,255,255,248,0,127,15,224,0,191,0,0,3,248,0,126,15,224,0,191,0,0,3,248,0,60,15,224,0,191,170,170,171,248,0,20,15,224,0,191,255,255,255,248,0,0,15,224,0,191,255,255,255,248,0,0,15,224,0,191,0,0,3,248,0,0,15,224,0,191,0,0,3,248,0,0,15,224,0,191,0,0,3,248,0,0,15,224,0,191,255,255,255,248,0,0,15,224,0,191,255,255,255,248,0,0,15,224,0,191,255,255,255,248,0,0,15,208,0,191,0,0,3,248,0, + // 0x6a21 模 + 33,106,38,38,124,40,1,252,0,15,192,0,3,244,0,253,0,0,0,15,208,0,3,248,0,254,0,0,0,15,208,0,3,248,0,254,0,0,0,15,208,31,255,255,255,255,255,128,0,15,208,31,255,255,255,255,255,128,0,15,208,31,255,255,255,255,255,128,0,15,208,0,3,248,0,254,0,0,0,15,208,0,3,248,0,254,0,0,63,255,255,192,3,248,0,254,0,0,63,255,255,192,0,0,0,0,0,0,63,255,255,195,255,255,255,255,248,0,21,111,229,67,255,255,255,255,248,0,0,31,208,3,254,170,170,171,248,0,0,47,224,3,248,0,0,3,248,0,0,63,240,3,248,0,0,3,248,0,0,63,252,3,255,255,255,255,248,0,0,127,253,3,255,255,255,255,248,0,0,255,255,3,254,170,170,171,248,0,0,255,239,131,248,0,0,3,248,0,1,255,223,195,248,0,0,3,248,0,3,255,219,243,254,170,170,171,248,0,7,255,211,227,255,255,255,255,248,0,11,239,210,131,255,255,255,255,248,0,15,223,208,0,0,3,248,0,0,0,47,143,208,0,0,7,244,0,0,0,127,79,208,0,0,11,244,0,0,0,191,15,208,63,255,255,255,255,255,128,61,15,208,63,255,255,255,255,255,128,28,15,208,63,255,255,255,255,255,128,4,15,208,0,0,63,255,192,0,0,0,15,208,0,0,191,143,240,0,0,0,15,208,0,2,255,11,252,0,0,0,15,208,0,31,253,3,255,64,0,0,15,208,1,255,244,0,255,244,0,0,15,208,111,255,208,0,63,255,144,0,15,208,255,254,0,0,11,255,192,0,15,208,63,224,0,0,0,191,0,0,15,192,41,0,0,0,0,5,0, + // 0x6a59 橙 + 89,106,38,38,124,40,1,252,0,6,160,0,0,0,0,0,0,0,0,11,240,0,0,0,11,192,0,0,0,11,240,3,255,254,15,192,208,0,0,11,240,3,255,255,75,227,240,0,0,11,240,3,255,255,7,255,244,0,0,11,240,0,0,190,3,255,128,0,0,11,240,1,0,253,2,253,2,0,0,11,240,7,226,252,1,252,15,128,0,11,240,15,255,244,0,255,127,192,63,255,255,242,255,240,0,127,254,0,63,255,255,240,127,224,0,63,244,0,63,255,255,240,63,255,255,255,240,0,21,95,245,80,255,255,255,255,252,0,0,15,240,3,254,191,255,247,255,0,0,31,240,15,248,0,0,0,255,208,0,47,240,127,240,0,0,0,63,224,0,63,252,63,192,0,0,0,15,128,0,127,254,30,127,255,255,255,242,0,0,191,255,68,127,255,255,255,240,0,0,255,255,192,127,234,170,175,240,0,1,255,251,240,127,0,0,7,240,0,3,251,243,248,127,0,0,7,240,0,3,251,241,240,127,0,0,7,240,0,11,219,240,208,127,0,0,7,240,0,15,203,240,0,127,255,255,255,240,0,47,139,240,0,127,255,255,255,240,0,127,75,240,0,63,255,255,255,240,0,191,11,240,0,1,144,0,61,0,0,61,11,240,0,15,224,0,127,128,0,28,11,240,0,7,240,0,191,0,0,0,11,240,0,3,244,0,254,0,0,0,11,240,0,3,248,1,252,0,0,0,11,240,0,2,252,2,248,0,0,0,11,240,0,1,228,1,244,0,0,0,11,240,47,255,255,255,255,255,208,0,11,240,47,255,255,255,255,255,208,0,11,240,47,255,255,255,255,255,208,0,11,240,0,0,0,0,0,0,0, + // 0x6b62 止 + 98,107,36,36,68,40,2,254,0,0,0,0,26,144,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,250,170,170,160,0,47,192,0,31,255,255,255,240,0,47,192,0,31,255,255,255,240,0,47,192,0,31,255,255,255,240,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,170,170,170,170,170,170, + // 0x6b63 正 + 99,107,36,33,41,40,2,254,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,26,170,170,170,191,234,170,170,164,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,255,255,255,192,0,47,192,0,63,255,255,255,192,0,47,192,0,63,255,255,255,192,0,47,192,0,63,234,170,170,128,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,170,191,234,170,191,234,170,170,170,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x6b65 步 + 101,107,36,38,86,40,2,252,0,0,0,0,191,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,15,224,0,255,0,0,0,0,0,15,224,0,255,170,170,169,0,0,15,224,0,255,255,255,254,0,0,15,224,0,255,255,255,254,0,0,15,224,0,255,255,255,254,0,0,15,224,0,255,0,0,0,0,0,15,224,0,255,0,0,0,0,0,15,224,0,255,0,0,0,0,0,15,224,0,255,0,0,0,0,255,255,255,255,255,255,255,255,254,255,255,255,255,255,255,255,255,254,255,255,255,255,255,255,255,255,254,106,170,170,170,255,170,170,170,169,0,0,0,0,255,0,0,0,0,0,1,248,0,255,0,0,0,0,0,3,254,0,255,0,0,228,0,0,15,252,0,255,0,2,254,0,0,63,240,0,255,0,3,253,0,0,255,208,0,255,0,7,252,0,3,255,64,0,255,0,15,244,0,31,254,0,0,255,0,47,240,0,191,248,0,0,255,0,127,208,0,63,208,3,255,255,0,255,128,0,11,64,1,255,254,3,255,0,0,0,0,0,255,248,15,253,0,0,0,0,0,85,0,127,244,0,0,0,0,0,0,2,255,208,0,0,0,0,0,0,47,255,64,0,0,0,0,0,6,255,252,0,0,0,0,0,1,191,255,224,0,0,0,0,5,191,255,254,0,0,0,0,2,255,255,255,224,0,0,0,0,0,255,255,249,0,0,0,0,0,0,191,254,64,0,0,0,0,0,0,57,0,0,0,0,0,0,0, + // 0x6bd4 比 + 212,107,37,37,114,40,2,253,0,21,64,0,0,85,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,192,0,0,63,128,0,0,254,0,11,240,0,0,63,128,0,0,254,0,127,252,0,0,63,234,170,128,254,7,255,248,0,0,63,255,255,192,254,63,255,208,0,0,63,255,255,192,255,255,253,0,0,0,63,255,255,192,255,255,144,0,0,0,63,128,0,0,255,248,0,0,0,0,63,128,0,0,255,128,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,32,0,0,63,128,0,0,254,0,0,62,0,0,63,128,0,0,254,0,0,63,128,0,63,128,1,176,254,0,0,63,128,0,63,134,255,240,254,0,0,63,64,0,63,255,255,244,254,0,0,127,64,27,255,255,255,244,255,0,0,191,0,255,255,255,249,0,255,234,170,255,0,255,255,249,0,0,191,255,255,254,0,191,249,0,0,0,63,255,255,252,0,101,0,0,0,0,11,255,255,224,0, + // 0x6ca1 没 + 161,108,37,38,124,40,2,252,0,64,0,0,0,0,0,0,0,0,3,244,0,1,85,85,85,80,0,0,11,255,0,3,255,255,255,224,0,0,11,255,224,3,255,255,255,224,0,0,0,191,252,3,255,255,255,224,0,0,0,15,248,3,248,0,15,224,0,0,0,2,240,3,248,0,15,224,0,0,0,0,80,3,248,0,15,224,0,0,0,0,0,3,244,0,15,224,36,0,0,0,0,7,244,0,15,224,47,64,0,0,0,15,240,0,15,224,47,64,16,0,0,31,224,0,15,224,47,64,126,0,0,63,208,0,15,240,127,64,255,224,0,255,192,0,15,255,255,0,191,254,7,255,0,0,11,255,254,0,15,255,139,253,0,0,1,255,248,0,1,255,66,244,0,0,0,0,0,0,0,46,0,128,0,0,0,0,0,0,0,4,0,255,255,255,255,255,64,0,0,0,0,255,255,255,255,255,192,0,0,0,0,255,255,255,255,255,192,0,0,0,0,86,249,85,85,255,64,0,0,1,128,3,248,0,1,255,0,0,0,3,240,3,253,0,3,253,0,0,0,7,248,0,255,0,11,252,0,0,0,15,240,0,191,128,31,244,0,0,0,31,224,0,63,224,127,224,0,0,0,63,192,0,15,249,255,192,0,0,0,127,128,0,7,255,255,0,0,0,0,255,0,0,2,255,252,0,0,0,2,254,0,0,2,255,248,0,0,0,3,252,0,0,31,255,255,128,0,0,11,248,0,2,255,255,255,248,0,0,31,240,1,191,255,224,191,255,228,0,63,224,63,255,254,0,15,255,255,64,31,192,47,255,224,0,1,255,255,0,3,128,15,249,0,0,0,11,252,0,0,0,6,64,0,0,0,0,36,0, + // 0x6ce2 波 + 226,108,36,38,86,40,2,252,0,0,0,0,0,31,192,0,0,3,208,0,0,0,31,192,0,0,11,253,0,0,0,31,192,0,0,15,255,128,0,0,31,192,0,0,1,255,244,0,0,31,192,0,0,0,47,244,0,0,31,192,0,0,0,7,224,255,255,255,255,255,254,0,0,128,255,255,255,255,255,255,0,0,0,255,255,255,255,255,254,0,0,0,255,85,111,229,87,252,0,0,0,254,0,31,192,3,252,0,0,0,254,0,31,192,3,244,61,0,0,254,0,31,192,11,240,255,208,0,254,0,31,192,15,224,255,253,0,254,0,31,192,1,192,31,255,64,254,0,31,192,0,0,2,255,0,255,255,255,255,255,128,0,61,0,255,255,255,255,255,208,0,4,0,255,255,255,255,255,192,0,0,0,254,255,85,85,127,192,0,0,0,254,127,0,0,127,128,0,0,0,253,63,128,0,255,0,0,6,0,253,31,192,1,254,0,0,11,129,253,15,224,3,252,0,0,15,225,252,11,244,7,248,0,0,47,210,252,3,252,15,240,0,0,63,194,252,1,255,63,224,0,0,191,67,248,0,191,255,192,0,0,255,3,248,0,63,255,0,0,2,254,7,244,0,15,253,0,0,3,252,15,240,0,63,255,64,0,11,248,15,224,1,255,255,224,0,15,240,47,208,15,255,191,253,0,47,224,63,193,191,252,15,255,224,127,192,191,159,255,224,1,255,255,63,128,255,15,255,64,0,63,254,7,0,125,7,244,0,0,2,252,0,0,8,2,64,0,0,0,36, + // 0x6ce8 注 + 232,108,37,38,124,40,2,252,0,64,0,0,6,0,0,0,0,0,3,244,0,0,15,224,0,0,0,0,7,255,64,0,63,253,0,0,0,0,7,255,240,0,47,255,128,0,0,0,0,191,253,0,3,255,240,0,0,0,0,11,252,0,0,127,253,0,0,0,0,1,244,0,0,15,255,0,0,0,0,0,16,0,0,2,253,0,0,0,0,0,0,0,0,0,184,0,0,0,0,0,0,255,255,255,255,255,254,0,0,0,0,255,255,255,255,255,254,0,16,0,0,255,255,255,255,255,254,0,127,64,0,170,170,175,234,170,169,0,255,244,0,0,0,31,208,0,0,0,191,255,64,0,0,31,208,0,0,0,11,255,192,0,0,31,208,0,0,0,0,191,64,0,0,31,208,0,0,0,0,30,0,0,0,31,208,0,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,26,170,175,234,170,160,0,0,0,0,47,255,255,255,255,240,0,0,0,208,47,255,255,255,255,240,0,0,1,248,47,255,255,255,255,240,0,0,3,252,0,0,31,208,0,0,0,0,7,248,0,0,31,208,0,0,0,0,15,240,0,0,31,208,0,0,0,0,31,224,0,0,31,208,0,0,0,0,63,192,0,0,31,208,0,0,0,0,191,128,0,0,31,208,0,0,0,0,255,0,0,0,31,208,0,0,0,3,254,0,0,0,31,208,0,0,0,7,252,0,0,0,31,208,0,0,0,15,248,7,255,255,255,255,255,255,64,47,240,7,255,255,255,255,255,255,64,15,208,7,255,255,255,255,255,255,64,2,128,6,170,170,170,170,170,170,0,0,0,0,0,0,0,0,0,0,0, + // 0x6d17 洗 + 23,109,37,38,124,40,2,252,0,0,0,0,0,15,208,0,0,0,3,208,0,3,248,15,208,0,0,0,15,248,0,3,248,15,208,0,0,0,15,255,64,7,244,15,208,0,0,0,1,255,224,11,240,15,208,0,0,0,0,63,240,15,240,15,208,0,0,0,0,11,208,15,245,111,229,85,84,0,0,1,128,47,255,255,255,255,248,0,0,0,0,63,255,255,255,255,248,0,0,0,0,127,255,255,255,255,248,0,0,0,0,191,64,15,208,0,0,0,20,0,0,255,0,15,208,0,0,0,126,0,3,254,0,15,208,0,0,0,255,224,7,252,0,15,208,0,0,0,191,252,3,248,0,15,208,0,0,0,31,255,64,176,0,15,208,0,0,0,2,255,64,0,0,15,208,0,0,0,0,126,7,255,255,255,255,255,255,64,0,8,7,255,255,255,255,255,255,64,0,0,7,255,255,255,255,255,255,64,0,0,6,170,191,234,191,234,170,0,0,0,0,0,63,128,63,192,0,0,0,2,0,0,63,128,63,192,0,0,0,11,192,0,63,64,63,192,0,0,0,15,224,0,127,64,63,192,0,0,0,47,208,0,127,0,63,192,0,0,0,63,192,0,191,0,63,192,0,0,0,127,64,0,255,0,63,192,0,0,0,255,0,1,254,0,63,192,24,0,1,254,0,3,252,0,63,192,31,128,3,252,0,7,252,0,63,192,31,192,7,248,0,31,244,0,63,192,31,192,15,244,0,127,224,0,63,192,47,128,31,240,2,255,192,0,47,192,63,128,63,208,47,255,0,0,47,255,255,64,47,192,63,248,0,0,31,255,255,0,7,64,15,208,0,0,11,255,253,0,0,0,5,0,0,0,0,21,64,0, + // 0x6d3b 活 + 59,109,36,38,86,40,2,252,0,0,0,0,0,0,0,6,0,3,208,0,0,0,0,1,191,192,11,253,0,0,0,22,255,255,240,15,255,128,1,175,255,255,255,224,2,255,248,63,255,255,255,248,0,0,47,248,47,255,255,244,0,0,0,7,240,31,250,95,224,0,0,0,0,144,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,45,0,3,255,255,255,255,255,255,127,208,3,255,255,255,255,255,255,255,252,3,255,255,255,255,255,255,47,255,130,170,170,175,250,170,170,2,255,128,0,0,15,224,0,0,0,127,0,0,0,15,224,0,0,0,9,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,128,31,255,255,255,255,240,0,3,224,31,255,255,255,255,240,0,7,248,31,255,255,255,255,240,0,15,240,31,213,85,85,95,240,0,31,224,31,192,0,0,11,240,0,63,192,31,192,0,0,11,240,0,191,128,31,192,0,0,11,240,0,255,0,31,192,0,0,11,240,2,254,0,31,192,0,0,11,240,7,252,0,31,192,0,0,11,240,15,244,0,31,213,85,85,95,240,47,240,0,31,255,255,255,255,240,63,208,0,31,255,255,255,255,240,47,128,0,31,255,255,255,255,240,7,0,0,31,192,0,0,11,240,0,0,0,10,128,0,0,6,144, + // 0x6d41 流 + 65,109,37,38,124,40,2,252,0,0,0,0,0,42,128,0,0,0,3,224,0,0,0,63,192,0,0,0,11,253,0,0,0,63,192,0,0,0,15,255,192,0,0,63,192,0,0,0,1,255,244,0,0,63,192,0,0,0,0,47,249,85,85,127,213,85,85,0,0,7,243,255,255,255,255,255,255,0,0,0,195,255,255,255,255,255,255,0,0,0,3,255,255,255,255,255,255,0,0,0,0,0,15,244,0,0,0,0,0,0,0,0,15,240,1,240,0,0,16,0,0,0,47,208,7,252,0,0,62,0,0,0,63,128,1,255,0,0,255,240,0,0,191,0,0,127,192,0,191,254,1,170,255,175,255,255,240,0,11,255,130,255,255,255,255,255,248,0,0,255,2,255,255,255,255,255,253,0,0,45,1,255,250,170,85,64,255,0,0,0,0,0,0,0,0,0,190,0,0,0,0,6,144,0,0,168,32,0,0,0,0,15,224,63,64,253,0,0,0,0,0,15,224,63,64,253,0,0,0,2,128,15,224,63,64,253,0,0,0,3,240,15,224,63,64,253,0,0,0,11,244,15,224,63,64,253,0,0,0,15,240,15,208,63,64,253,0,0,0,47,208,15,208,63,64,253,0,0,0,63,192,15,208,63,64,253,0,0,0,191,64,31,192,63,64,253,0,0,0,255,0,47,192,63,64,253,13,0,3,253,0,63,128,63,64,253,15,128,7,252,0,191,64,63,64,253,15,128,15,244,1,255,0,63,64,253,15,128,31,240,3,253,0,63,64,253,15,64,63,208,15,248,0,63,64,255,255,64,31,192,47,240,0,63,64,191,255,0,3,64,7,192,0,0,0,47,248,0,0,0,1,0,0,0,0,0,0,0, + // 0x6d4b 测 + 75,109,35,39,95,40,2,251,0,0,0,0,0,0,0,0,84,3,128,0,0,0,0,0,0,252,15,244,6,170,170,170,0,0,252,47,254,11,255,255,255,1,64,252,7,255,219,255,255,255,7,224,252,0,191,235,208,0,63,7,224,252,0,31,203,208,0,63,7,224,252,0,3,11,208,80,63,7,224,252,0,0,11,209,244,63,7,224,252,0,0,11,209,244,63,7,224,252,0,0,11,209,244,63,7,224,252,0,0,11,209,244,63,7,224,252,60,0,11,209,244,63,7,224,252,191,128,11,209,244,63,7,224,252,255,248,11,209,244,63,7,224,252,47,255,11,209,244,63,7,224,252,3,254,11,209,244,63,7,224,252,0,188,11,209,244,63,7,224,252,0,16,11,209,244,63,7,224,252,0,0,11,209,244,63,7,224,252,0,0,11,209,244,63,7,224,252,0,0,11,209,244,63,7,224,252,0,0,11,209,244,63,7,224,252,0,60,11,209,244,63,7,224,252,0,63,75,209,244,63,7,224,252,0,191,11,209,244,63,7,224,252,0,255,11,210,240,63,7,224,252,1,253,11,210,240,63,7,224,252,2,252,6,131,240,26,3,208,252,3,252,0,7,224,0,0,0,252,11,244,0,15,215,64,0,0,252,15,240,0,31,223,192,0,0,252,31,224,0,63,75,240,0,0,252,63,192,0,254,2,252,0,0,252,127,192,7,252,0,254,0,0,252,127,64,63,240,0,63,67,255,252,11,0,63,128,0,31,130,255,248,0,0,13,0,0,9,0,255,144,0,0,0,0,0,0,0,0,0, + // 0x6d88 消 + 136,109,35,38,86,40,2,252,0,0,0,0,0,15,208,0,0,3,208,0,0,0,15,224,0,128,15,248,0,127,0,15,224,2,252,15,255,64,191,64,15,224,3,252,2,255,224,63,192,15,224,7,248,0,63,244,31,224,15,224,15,240,0,11,224,15,240,15,224,47,224,0,1,128,7,248,15,224,63,192,0,0,0,3,252,15,224,191,64,0,0,0,2,224,15,224,30,0,0,0,0,0,0,15,224,0,0,20,0,0,21,85,111,245,85,80,127,0,0,63,255,255,255,255,240,255,224,0,63,255,255,255,255,240,127,253,0,63,255,255,255,255,240,11,255,64,63,192,0,0,11,240,1,255,64,63,192,0,0,11,240,0,62,0,63,192,0,0,11,240,0,8,0,63,192,0,0,11,240,0,0,0,63,255,255,255,255,240,0,0,0,63,255,255,255,255,240,0,0,0,63,255,255,255,255,240,0,2,64,63,192,0,0,11,240,0,7,208,63,192,0,0,11,240,0,11,240,63,192,0,0,11,240,0,15,224,63,192,0,0,11,240,0,47,192,63,255,255,255,255,240,0,63,192,63,255,255,255,255,240,0,191,64,63,255,255,255,255,240,0,255,0,63,192,0,0,11,240,2,253,0,63,192,0,0,11,240,7,252,0,63,192,0,0,11,240,15,244,0,63,192,0,0,11,240,31,240,0,63,192,0,0,15,240,63,224,0,63,192,0,63,255,240,47,192,0,63,192,0,47,255,224,7,64,0,63,192,0,31,255,128,0,0,0,42,128,0,10,84,0, + // 0x6de1 淡 + 225,109,37,37,114,40,2,253,0,0,0,0,0,26,128,0,0,0,2,128,0,0,0,47,192,0,0,0,11,248,0,0,0,47,192,0,0,0,15,255,64,11,224,47,192,11,208,0,2,255,224,15,224,47,192,15,240,0,0,127,248,31,192,63,192,47,224,0,0,11,240,47,192,63,128,63,192,0,0,1,192,127,64,63,128,191,0,0,0,0,0,255,0,127,65,254,0,0,0,0,1,253,0,191,131,252,0,0,0,0,0,40,0,255,244,96,0,0,0,0,0,0,2,255,255,0,0,0,61,0,0,0,11,255,255,224,0,0,255,208,0,0,47,244,127,253,0,0,255,248,0,1,255,224,11,255,192,0,31,255,64,111,255,128,0,255,244,0,2,255,67,255,253,0,0,31,252,0,0,126,0,255,208,47,192,3,244,0,0,4,0,185,0,47,192,0,144,0,0,0,0,0,0,63,192,0,0,0,0,0,0,14,64,63,192,3,208,0,0,1,0,15,208,63,128,11,252,0,0,11,128,47,192,63,128,15,240,0,0,15,224,63,128,63,192,47,224,0,0,47,224,127,64,127,208,63,192,0,0,63,192,255,0,191,240,255,64,0,0,191,130,253,0,255,241,254,0,0,0,255,3,252,1,255,253,252,0,0,2,255,0,116,3,255,254,0,0,0,3,253,0,0,15,248,255,64,0,0,11,252,0,0,63,240,127,208,0,0,15,244,0,1,255,208,47,248,0,0,63,240,0,47,255,64,11,255,128,0,127,208,27,255,253,0,2,255,254,64,47,128,31,255,224,0,0,127,255,0,7,0,11,254,0,0,0,11,253,0,0,0,3,144,0,0,0,0,40,0, + // 0x6df7 混 + 247,109,37,37,114,40,2,252,3,224,0,0,0,0,0,0,0,0,15,253,0,255,255,255,255,255,208,0,15,255,192,255,255,255,255,255,208,0,1,255,240,255,255,255,255,255,208,0,0,47,240,254,0,0,0,15,208,0,0,7,192,254,0,0,0,15,208,0,0,0,64,254,0,0,0,15,208,0,0,0,0,255,255,255,255,255,208,0,0,0,0,255,255,255,255,255,208,0,0,0,0,255,255,255,255,255,208,0,20,0,0,254,0,0,0,15,208,0,127,64,0,254,0,0,0,15,208,0,255,240,0,254,0,0,0,15,208,0,191,254,0,255,255,255,255,255,208,0,11,255,0,255,255,255,255,255,208,0,0,254,0,255,255,255,255,255,208,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,0,1,253,0,0,0,0,0,0,191,0,1,253,0,0,0,0,0,0,191,0,1,253,0,0,0,0,7,0,191,0,1,253,1,240,0,0,11,192,191,85,81,253,11,252,0,0,15,224,191,255,249,253,191,253,0,0,47,208,191,255,249,255,255,224,0,0,63,192,191,255,249,255,254,0,0,0,191,64,191,0,1,255,208,0,0,0,255,0,191,0,1,253,0,0,0,1,254,0,191,0,1,253,0,16,0,3,252,0,191,0,1,253,0,46,0,11,248,0,191,1,101,253,0,47,64,15,240,0,191,255,249,253,0,63,64,47,240,47,255,255,248,254,85,127,0,63,208,63,255,255,228,255,255,255,0,47,192,63,255,148,0,191,255,253,0,7,64,26,64,0,0,47,255,244,0,0,0,0,0,0,0,0,0,0,0, + // 0x6e05 清 + 5,110,37,38,124,40,2,252,0,0,0,0,0,47,192,0,0,0,3,208,0,0,0,47,192,0,0,0,11,253,0,170,170,191,234,170,168,0,15,255,128,255,255,255,255,255,252,0,2,255,240,255,255,255,255,255,252,0,0,47,244,0,0,47,192,0,0,0,0,3,224,0,0,47,192,0,0,0,0,0,64,42,170,191,234,170,160,0,0,0,0,63,255,255,255,255,240,0,0,0,0,63,255,255,255,255,240,0,0,0,0,0,0,47,192,0,0,0,36,0,0,0,0,47,192,0,0,0,127,64,6,170,170,191,234,170,170,64,255,244,7,255,255,255,255,255,255,64,127,255,7,255,255,255,255,255,255,64,11,255,128,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,45,0,11,255,255,255,255,208,0,0,0,0,15,255,255,255,255,208,0,0,0,0,15,255,255,255,255,208,0,0,0,0,15,224,0,0,15,208,0,0,0,0,15,224,0,0,15,208,0,0,2,192,15,229,85,85,111,208,0,0,3,240,15,255,255,255,255,208,0,0,11,244,15,255,255,255,255,208,0,0,15,240,15,224,0,0,15,208,0,0,47,208,15,224,0,0,15,208,0,0,63,192,15,224,0,0,15,208,0,0,191,64,15,255,255,255,255,208,0,0,255,0,15,255,255,255,255,208,0,3,253,0,15,250,170,170,175,208,0,7,252,0,15,224,0,0,15,208,0,15,244,0,15,224,0,0,15,208,0,47,240,0,15,224,0,0,15,208,0,63,208,0,15,224,0,63,255,192,0,15,128,0,15,224,0,47,255,192,0,2,0,0,15,224,0,31,254,0,0,0,0,0,5,64,0,0,0,0,0, + // 0x6e29 温 + 41,110,37,37,114,40,2,252,2,224,0,0,0,0,0,0,0,0,7,254,0,63,255,255,255,255,128,0,11,255,208,63,255,255,255,255,128,0,0,191,252,63,255,255,255,255,128,0,0,15,248,63,128,0,0,63,128,0,0,1,240,63,128,0,0,63,128,0,0,0,0,63,128,0,0,63,128,0,0,0,0,63,255,255,255,255,128,0,0,0,0,63,255,255,255,255,128,0,0,0,0,63,255,255,255,255,128,0,16,0,0,63,128,0,0,63,128,0,61,0,0,63,128,0,0,63,128,0,191,208,0,63,128,0,0,63,128,0,255,248,0,63,128,0,0,63,128,0,47,255,64,63,255,255,255,255,128,0,3,255,128,63,255,255,255,255,128,0,0,127,0,63,255,255,255,255,128,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,240,0,0,3,64,255,255,255,255,255,240,0,0,7,224,255,255,255,255,255,240,0,0,15,240,252,11,192,188,11,240,0,0,31,208,252,11,192,188,11,240,0,0,63,192,252,11,192,188,11,240,0,0,127,128,252,11,192,188,11,240,0,0,255,0,252,11,192,188,11,240,0,2,254,0,252,11,192,188,11,240,0,3,252,0,252,11,192,188,11,240,0,11,248,0,252,11,192,188,11,240,0,15,240,0,252,11,192,188,11,240,0,63,224,127,255,255,255,255,255,255,64,127,192,127,255,255,255,255,255,255,64,31,128,127,255,255,255,255,255,255,64,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6e38 游 + 56,110,37,39,134,40,2,251,0,0,0,15,208,0,37,0,0,0,7,128,0,15,208,0,127,64,0,0,15,248,0,15,208,0,191,0,0,0,47,255,0,15,208,0,191,0,0,0,7,255,192,15,208,0,255,0,0,0,0,191,192,15,208,0,255,170,170,0,0,47,170,175,234,162,255,255,255,64,0,6,191,255,255,247,255,255,255,64,0,0,191,255,255,251,255,255,255,64,0,0,191,255,255,255,240,0,0,0,0,0,1,252,0,15,224,0,0,0,0,0,1,252,0,63,208,0,0,0,62,0,1,252,0,63,192,0,16,0,255,224,1,252,0,11,255,255,253,0,191,253,1,252,0,1,255,255,255,0,15,255,1,253,85,64,255,255,253,0,1,252,1,255,255,224,0,7,248,0,0,52,2,255,255,224,0,15,240,0,0,0,2,255,255,208,0,63,208,0,0,0,2,248,15,208,1,255,64,0,0,0,3,248,15,208,1,254,0,0,0,0,3,244,15,208,1,252,0,0,0,0,3,244,15,213,86,253,85,0,0,120,3,240,15,223,255,255,255,64,0,191,7,240,15,223,255,255,255,64,0,254,11,240,15,207,255,255,255,64,1,253,11,224,15,192,1,252,0,0,2,252,15,208,15,192,1,252,0,0,3,248,15,192,31,192,1,252,0,0,7,244,47,192,31,192,1,252,0,0,15,240,63,128,31,192,1,252,0,0,15,224,127,0,47,192,1,252,0,0,47,208,255,0,47,192,1,252,0,0,63,193,253,0,63,128,1,252,0,0,127,131,252,16,191,65,86,252,0,0,191,11,244,63,255,3,255,252,0,0,31,2,224,63,254,2,255,248,0,0,0,0,128,47,248,1,255,144,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6e90 源 + 144,110,37,39,134,40,2,251,1,0,0,0,0,0,0,0,0,0,7,224,0,0,0,0,0,0,0,0,15,254,2,255,255,255,255,255,255,0,11,255,194,255,255,255,255,255,255,0,0,255,242,255,255,255,255,255,255,0,0,47,226,253,85,86,255,85,85,0,0,7,194,252,0,1,254,0,0,0,0,1,2,252,0,2,253,0,0,0,0,0,2,252,0,2,252,0,0,0,0,0,2,252,0,3,252,0,0,0,0,0,2,252,63,255,255,255,248,0,0,0,2,252,63,255,255,255,248,0,61,0,2,252,63,255,255,255,248,0,255,208,2,252,63,64,0,3,248,0,255,252,2,252,63,64,0,3,248,0,31,255,2,252,63,170,170,171,248,0,1,253,2,252,63,255,255,255,248,0,0,56,2,252,63,255,255,255,248,0,0,0,2,252,63,64,0,3,248,0,0,0,2,252,63,64,0,3,248,0,0,0,3,252,63,64,0,3,248,0,0,0,3,248,63,234,170,171,248,0,0,8,3,248,63,255,255,255,248,0,0,31,3,244,63,255,255,255,248,0,0,63,199,244,0,0,253,0,0,0,0,127,135,240,0,0,253,0,0,0,0,191,11,240,14,64,253,11,192,0,0,255,15,240,47,192,253,31,224,0,2,253,15,224,63,128,253,15,240,0,3,252,31,208,191,0,253,7,252,0,7,248,47,192,254,0,253,2,253,0,15,240,63,131,252,0,253,0,255,0,31,224,191,75,248,0,253,0,191,64,63,208,255,15,240,0,253,0,127,128,127,194,254,7,208,1,253,0,61,0,127,67,252,0,65,255,252,0,0,0,11,1,248,0,0,255,252,0,0,0,0,0,32,0,0,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6ea2 溢 + 162,110,37,37,114,40,2,253,1,0,0,0,0,0,0,0,0,0,7,224,0,0,3,255,255,192,0,0,31,254,0,1,67,255,255,208,0,0,11,255,192,3,247,255,255,240,0,0,1,255,240,11,240,0,11,244,0,0,0,47,208,31,240,0,3,252,0,0,0,11,128,63,208,0,2,255,0,0,0,2,0,191,128,0,0,255,192,0,0,0,1,255,0,0,0,127,244,0,0,0,7,254,255,255,255,223,254,0,0,0,31,249,255,255,255,199,253,0,0,0,11,225,255,255,255,192,244,0,61,0,2,128,0,0,0,0,0,0,191,208,0,0,0,0,0,0,0,0,255,252,0,0,3,255,255,224,0,0,31,255,0,1,3,255,255,240,0,0,2,253,0,7,247,255,255,244,0,0,0,56,0,15,240,0,3,252,0,0,0,0,0,47,224,0,1,254,0,0,0,0,0,127,192,0,0,255,64,0,0,0,0,255,64,0,0,127,192,0,0,0,3,254,0,0,0,31,244,0,0,0,15,252,0,0,0,11,254,0,0,45,63,255,255,255,255,255,255,64,0,63,175,255,255,255,255,255,254,0,0,127,75,191,255,255,255,255,216,0,0,255,0,126,11,192,248,47,128,0,1,254,0,126,11,192,248,31,128,0,2,253,0,126,11,192,248,31,128,0,3,252,0,126,11,192,248,31,128,0,11,244,0,126,11,192,248,31,128,0,15,240,0,126,11,192,248,31,128,0,31,224,0,126,11,192,248,31,128,0,63,192,127,255,255,255,255,255,255,64,127,192,127,255,255,255,255,255,255,64,47,64,127,255,255,255,255,255,255,64,2,0,21,85,85,85,85,85,85,0, + // 0x6ed1 滑 + 209,110,36,37,77,40,2,252,3,208,0,0,0,0,0,0,0,11,253,0,15,255,255,255,255,0,15,255,128,15,255,255,255,255,0,1,255,244,15,255,255,255,255,0,0,47,248,15,224,0,0,127,0,0,3,240,15,224,0,0,127,0,0,0,64,15,224,63,255,255,0,0,0,0,15,224,63,255,255,0,0,0,0,15,224,63,85,191,0,0,0,0,15,224,63,0,127,0,0,0,0,15,224,63,0,127,0,61,0,0,15,224,63,0,127,0,191,208,11,255,255,255,255,255,255,255,252,11,255,255,255,255,255,255,47,255,75,255,255,255,255,255,255,2,255,75,224,0,0,0,0,191,0,46,11,224,0,0,0,0,191,0,4,11,239,255,255,255,255,191,0,0,6,159,255,255,255,255,106,0,0,0,15,255,255,255,255,0,0,0,0,15,224,0,0,127,0,0,2,128,15,224,0,0,127,0,0,3,240,15,250,170,170,255,0,0,11,244,15,255,255,255,255,0,0,15,240,15,255,255,255,255,0,0,47,208,15,224,0,0,127,0,0,63,192,15,224,0,0,127,0,0,191,64,15,250,170,170,255,0,1,255,0,15,255,255,255,255,0,3,253,0,15,255,255,255,255,0,7,252,0,15,224,0,0,127,0,15,244,0,15,224,0,0,127,0,31,240,0,15,224,0,0,127,0,63,208,0,15,224,0,0,127,0,47,192,0,15,224,0,255,255,0,7,64,0,15,224,0,191,254,0,0,0,0,15,208,0,127,228,0, + // 0x6f0f 漏 + 15,111,36,37,77,40,2,252,7,64,0,0,0,0,0,0,0,15,240,3,255,255,255,255,255,248,47,254,3,255,255,255,255,255,248,7,255,211,255,255,255,255,255,248,0,191,195,240,0,0,0,3,248,0,31,67,240,0,0,0,3,248,0,1,3,240,0,0,0,3,248,0,0,3,255,255,255,255,255,248,0,0,3,255,255,255,255,255,248,0,0,3,255,255,255,255,255,248,0,0,3,240,0,0,0,0,0,61,0,3,240,0,0,0,0,0,191,208,3,240,0,0,0,0,0,255,248,3,255,255,255,255,255,254,47,255,67,255,255,255,255,255,254,2,255,3,255,255,255,255,255,254,0,124,7,240,0,3,240,0,0,0,0,7,240,0,3,240,0,0,0,0,7,255,255,255,255,255,252,0,0,7,255,255,255,255,255,252,0,0,11,255,255,255,255,255,252,0,52,11,255,192,3,240,0,252,0,126,11,239,193,3,241,64,252,0,191,15,223,207,131,243,224,252,0,255,15,223,223,243,243,248,252,1,253,31,207,195,247,240,189,252,2,252,31,207,192,179,240,40,252,3,252,47,207,192,3,240,0,252,7,244,63,143,197,3,243,64,252,15,240,63,79,223,131,251,224,252,31,224,191,15,223,227,243,252,252,47,208,254,15,195,247,240,188,252,63,193,253,15,192,243,240,32,252,191,131,252,15,192,3,240,0,252,255,3,244,15,192,3,240,42,252,30,0,240,15,192,3,240,63,252,0,0,16,15,192,2,240,63,224, + // 0x6fc0 激 + 192,111,37,38,124,40,2,252,1,0,0,6,144,0,25,64,0,0,7,208,0,11,244,0,47,192,0,0,31,248,0,15,240,0,63,128,0,0,31,255,64,15,224,0,63,128,0,0,2,255,218,175,250,164,63,64,0,0,0,63,207,255,255,244,127,0,0,0,0,11,15,255,255,244,127,0,0,0,0,0,15,192,2,244,191,0,0,0,0,0,15,192,2,244,255,255,255,64,0,0,15,234,171,244,255,255,255,64,0,0,15,255,255,245,255,255,255,64,40,0,15,255,255,246,253,87,249,0,127,64,15,192,2,247,252,3,244,0,255,244,15,192,2,255,252,3,244,0,127,253,15,192,2,255,252,3,240,0,7,254,15,255,255,255,253,7,240,0,0,252,15,255,255,255,254,7,240,0,0,32,10,175,250,191,190,11,224,0,0,0,0,11,224,15,47,11,224,0,0,0,0,11,224,1,31,15,208,0,0,0,191,255,255,255,31,143,192,0,0,0,191,255,255,255,15,223,192,0,0,36,191,255,255,255,15,239,128,0,0,62,0,190,0,0,7,255,64,0,0,63,64,126,0,0,3,255,0,0,0,191,0,190,0,0,3,254,0,0,0,255,0,191,255,240,2,253,0,0,1,253,0,191,255,240,2,252,0,0,2,252,0,255,255,240,3,254,0,0,3,252,1,252,3,240,11,255,64,0,11,244,2,252,7,240,31,255,192,0,15,240,3,248,7,240,63,223,224,0,31,224,15,240,7,240,255,11,248,0,63,192,47,224,11,227,253,3,254,0,127,192,191,203,255,239,248,1,255,128,127,66,255,3,255,239,224,0,127,0,11,0,252,3,255,75,128,0,28,0,0,0,32,0,0,1,0,0,0,0, + // 0x706f 灯 + 111,112,37,39,134,40,2,251,0,2,160,0,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,0,7,240,0,170,170,170,170,170,0,0,7,240,0,255,255,255,255,255,64,0,7,240,0,255,255,255,255,255,64,0,7,240,0,255,255,255,255,255,64,0,7,240,0,0,0,15,240,0,0,4,7,240,57,0,0,15,240,0,0,31,71,240,127,0,0,15,240,0,0,31,71,240,189,0,0,15,240,0,0,47,71,240,252,0,0,15,240,0,0,47,71,241,248,0,0,15,240,0,0,63,7,242,244,0,0,15,240,0,0,63,11,243,240,0,0,15,240,0,0,63,11,247,208,0,0,15,240,0,0,126,11,247,192,0,0,15,240,0,0,190,11,240,0,0,0,15,240,0,0,253,11,240,0,0,0,15,240,0,0,28,11,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,240,0,0,0,15,224,0,0,0,15,240,0,0,0,15,224,0,0,0,15,240,0,0,0,31,240,0,0,0,15,240,0,0,0,31,252,0,0,0,15,240,0,0,0,47,255,0,0,0,15,240,0,0,0,63,255,192,0,0,15,240,0,0,0,127,175,240,0,0,15,240,0,0,0,191,79,248,0,0,15,240,0,0,0,255,3,254,0,0,15,240,0,0,2,254,1,254,0,0,15,240,0,0,7,252,0,124,0,0,15,240,0,0,15,248,0,32,0,0,15,240,0,0,47,240,0,0,0,0,31,224,0,0,191,208,0,0,7,255,255,224,0,0,255,128,0,0,3,255,255,208,0,0,63,0,0,0,2,255,255,128,0,0,12,0,0,0,1,255,232,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x70b9 点 + 185,112,36,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,255,255,255,255,244,0,0,0,0,255,255,255,255,244,0,0,0,0,255,255,255,255,244,0,0,0,0,255,85,85,85,80,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,21,85,86,255,85,85,84,0,0,127,255,255,255,255,255,253,0,0,127,255,255,255,255,255,253,0,0,127,255,255,255,255,255,253,0,0,127,0,0,0,0,1,253,0,0,127,0,0,0,0,1,253,0,0,127,0,0,0,0,1,253,0,0,127,0,0,0,0,1,253,0,0,127,0,0,0,0,1,253,0,0,127,0,0,0,0,1,253,0,0,127,85,85,85,85,86,253,0,0,127,255,255,255,255,255,253,0,0,127,255,255,255,255,255,253,0,0,127,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,0,0,0,4,0,109,0,0,255,1,252,1,252,0,255,0,1,254,2,252,0,254,0,127,192,3,252,1,253,0,191,0,63,208,7,248,0,253,0,127,128,15,240,15,240,0,254,0,63,192,11,248,63,224,0,254,0,47,208,3,253,255,192,0,255,0,15,224,1,255,127,0,0,255,0,15,208,0,249,5,0,0,80,0,0,0,0,64, + // 0x70ed 热 + 237,112,37,39,134,40,2,251,0,6,160,0,0,190,0,0,0,0,0,11,224,0,0,254,0,0,0,0,0,11,224,0,0,254,0,0,0,0,0,11,224,0,0,254,0,0,0,0,0,11,224,0,0,254,0,0,0,0,0,11,224,0,0,254,0,0,0,0,127,255,255,243,255,255,255,254,0,0,127,255,255,243,255,255,255,254,0,0,127,255,255,243,255,255,255,254,0,0,21,95,245,80,0,254,0,254,0,0,0,11,224,0,0,253,0,253,0,0,0,11,224,0,0,252,0,253,0,0,0,11,224,0,1,252,0,253,0,0,0,11,246,244,1,252,0,253,0,0,0,11,255,244,226,252,0,253,0,0,6,255,255,251,255,248,0,253,0,0,255,255,255,147,255,248,0,253,0,0,255,255,240,0,191,248,0,253,0,0,191,239,224,0,15,255,64,253,0,0,100,11,224,0,15,255,224,253,0,0,0,11,224,0,47,255,252,190,4,0,0,11,224,0,127,203,252,190,14,0,0,11,224,0,255,65,244,190,15,128,0,15,224,3,254,0,32,127,31,128,15,255,224,31,252,0,0,63,175,64,11,255,208,63,240,0,0,47,255,0,7,255,64,15,192,0,0,15,254,0,1,64,0,6,0,0,0,3,248,0,0,16,0,0,0,0,0,8,0,0,0,255,0,104,0,173,0,191,0,0,1,254,1,252,0,254,0,191,128,0,3,252,0,253,0,191,0,63,208,0,7,248,0,253,0,127,64,31,240,0,15,240,0,254,0,63,128,11,248,0,63,224,0,255,0,63,192,3,252,0,191,192,0,255,0,47,208,2,255,0,191,64,0,191,0,31,208,0,254,0,10,0,0,80,0,4,0,0,96,0,0,0,0,0,0,0,0,0,0,0, + // 0x7247 片 + 71,114,34,38,86,40,2,252,0,0,0,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,255,255,255,255,255,255,224,0,63,255,255,255,255,255,255,240,0,63,255,255,255,255,255,255,240,0,63,255,255,255,255,255,255,240,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,191,255,255,255,255,255,64,0,0,191,255,255,255,255,255,64,0,0,255,0,0,0,0,191,64,0,0,255,0,0,0,0,191,64,0,0,255,0,0,0,0,191,64,0,2,254,0,0,0,0,191,64,0,3,253,0,0,0,0,191,64,0,7,252,0,0,0,0,191,64,0,11,248,0,0,0,0,191,64,0,15,244,0,0,0,0,191,64,0,63,240,0,0,0,0,191,64,0,191,208,0,0,0,0,191,64,0,255,192,0,0,0,0,191,64,0,191,0,0,0,0,0,191,64,0,45,0,0,0,0,0,191,64,0,8,0,0,0,0,0,191,64,0, + // 0x7269 物 + 105,114,37,38,124,40,1,252,0,0,252,0,0,148,0,0,0,0,0,0,252,0,1,253,0,0,0,0,1,0,252,0,2,252,0,0,0,0,7,240,252,0,3,248,0,0,0,0,11,224,252,0,3,244,0,0,0,0,11,224,252,0,7,240,0,0,0,0,15,208,252,0,11,240,0,0,0,0,15,208,252,0,15,255,255,255,255,192,15,234,254,164,31,255,255,255,255,192,15,255,255,252,63,255,255,255,255,192,31,255,255,252,127,151,249,127,191,192,47,255,255,252,255,3,240,63,47,192,47,64,252,1,253,7,224,127,47,192,63,0,252,3,252,15,208,190,47,192,127,0,252,15,244,15,192,253,63,128,190,0,252,31,240,47,193,252,63,128,45,0,252,11,192,63,66,252,63,128,4,0,252,2,64,127,3,248,63,128,0,0,252,5,0,254,3,244,63,64,0,0,254,254,1,252,11,240,63,64,0,1,255,254,3,248,15,224,63,64,0,127,255,254,11,240,31,192,63,64,47,255,255,144,31,224,47,192,127,0,63,255,252,0,63,192,63,64,127,0,63,250,252,0,255,64,191,0,127,0,46,64,252,3,254,0,254,0,191,0,0,0,252,11,252,2,252,0,191,0,0,0,252,2,240,3,248,0,255,0,0,0,252,0,64,15,240,0,254,0,0,0,252,0,0,31,224,0,254,0,0,0,252,0,0,63,192,1,253,0,0,0,252,0,0,255,64,2,252,0,0,0,252,0,3,254,0,3,252,0,0,0,252,0,15,252,0,11,252,0,0,0,252,0,63,240,31,255,244,0,0,0,252,0,47,208,15,255,240,0,0,0,252,0,7,0,15,255,192,0,0,0,252,0,0,0,6,164,0,0, + // 0x7279 特 + 121,114,38,38,124,40,1,252,0,0,252,0,0,0,254,0,0,0,0,0,252,0,0,0,255,0,0,0,6,144,252,0,0,0,255,0,0,0,7,240,252,0,0,0,255,0,0,0,11,224,252,0,127,255,255,255,253,0,11,208,252,0,127,255,255,255,253,0,15,208,252,0,127,255,255,255,253,0,15,192,252,0,21,85,255,85,84,0,15,255,255,252,0,0,255,0,0,0,15,255,255,252,0,0,255,0,0,0,31,255,255,252,0,0,255,0,0,0,47,170,254,164,0,0,255,0,0,0,63,64,252,11,255,255,255,255,255,208,63,0,252,11,255,255,255,255,255,208,191,0,252,11,255,255,255,255,255,208,189,0,252,5,85,85,85,127,213,64,28,0,252,0,0,0,0,63,128,0,0,0,252,0,0,0,0,63,128,0,0,0,253,126,0,0,0,63,128,0,0,1,255,254,0,0,0,63,128,0,0,27,255,255,255,255,255,255,255,192,27,255,255,247,255,255,255,255,255,192,127,255,254,3,255,255,255,255,255,192,63,255,252,1,85,85,85,127,213,64,63,144,252,0,2,0,0,63,128,0,20,0,252,0,47,192,0,63,128,0,0,0,252,0,47,224,0,63,128,0,0,0,252,0,15,248,0,63,128,0,0,0,252,0,3,253,0,63,128,0,0,0,252,0,1,255,0,63,128,0,0,0,252,0,0,191,64,63,128,0,0,0,252,0,0,60,0,63,128,0,0,0,252,0,0,0,0,63,128,0,0,0,252,0,0,0,0,63,128,0,0,0,252,0,0,2,255,255,128,0,0,0,252,0,0,1,255,255,64,0,0,0,252,0,0,0,255,254,0,0,0,0,168,0,0,0,170,144,0,0, + // 0x7387 率 + 135,115,36,38,86,40,2,252,0,0,0,0,169,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,5,85,85,85,255,85,85,85,80,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,0,0,0,7,244,0,0,0,0,1,0,0,15,224,0,0,7,64,11,224,0,47,192,36,0,31,240,31,252,2,127,0,191,0,127,208,7,255,75,253,1,253,2,255,64,0,191,239,252,7,244,15,252,0,0,31,210,255,79,224,31,224,0,0,7,0,127,255,128,1,64,0,0,0,0,31,255,28,0,0,0,0,0,0,3,252,191,11,64,0,0,1,240,7,240,63,191,240,0,0,31,244,31,192,31,255,254,0,6,255,248,127,255,255,242,255,208,191,255,175,255,255,255,244,127,248,127,248,31,255,255,234,252,11,253,63,64,30,149,64,0,252,1,244,4,0,0,0,255,0,80,0,16,0,0,0,0,255,0,0,0,0,85,85,85,85,255,85,85,85,85,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0, + // 0x73af 环 + 175,115,37,36,104,40,1,252,0,0,0,2,170,170,170,170,170,64,127,255,255,199,255,255,255,255,255,192,127,255,255,199,255,255,255,255,255,192,127,255,255,199,255,255,255,255,255,192,21,127,213,64,0,0,255,0,0,0,0,63,128,0,0,1,255,0,0,0,0,63,128,0,0,2,253,0,0,0,0,63,128,0,0,3,252,0,0,0,0,63,128,0,0,11,248,0,0,0,0,63,128,0,0,15,244,0,0,0,0,63,128,0,0,47,244,0,0,0,0,63,128,0,0,63,244,208,0,0,21,127,213,0,0,191,255,240,0,0,47,255,255,0,0,255,255,252,0,0,47,255,255,0,3,255,246,255,0,0,47,255,255,0,11,255,244,255,128,0,0,63,128,0,31,251,244,63,208,0,0,63,128,0,63,231,244,31,240,0,0,63,128,0,255,195,244,11,252,0,0,63,128,3,255,67,244,3,254,0,0,63,128,15,254,3,244,1,255,64,0,63,128,47,248,3,244,0,191,128,0,63,128,11,224,3,244,0,62,0,0,63,128,3,192,3,244,0,20,0,0,63,139,128,0,3,244,0,0,0,0,63,255,128,0,3,244,0,0,0,0,127,255,192,0,3,244,0,0,0,31,255,255,64,0,3,244,0,0,0,127,255,224,0,0,3,244,0,0,0,63,249,0,0,0,3,244,0,0,0,62,64,0,0,0,3,244,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,2,164,0,0,0, + // 0x7528 用 + 40,117,35,35,59,40,1,252,0,63,255,255,255,255,255,255,248,0,63,255,255,255,255,255,255,248,0,63,255,255,255,255,255,255,248,0,63,234,170,191,234,170,171,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,213,85,127,229,85,91,248,0,63,255,255,255,255,255,255,248,0,63,255,255,255,255,255,255,248,0,63,255,255,255,255,255,255,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,255,255,255,255,255,255,248,0,63,255,255,255,255,255,255,248,0,127,255,255,255,255,255,255,248,0,127,170,170,191,234,170,171,248,0,191,0,0,47,192,0,3,248,0,255,0,0,47,192,0,3,248,0,254,0,0,47,192,0,3,248,1,253,0,0,47,192,0,3,248,3,252,0,0,47,192,0,3,248,3,252,0,0,47,192,0,3,248,11,244,0,0,47,192,0,3,248,15,240,0,0,47,192,0,7,248,63,224,0,0,47,192,255,255,244,127,192,0,0,47,192,127,255,240,31,64,0,0,47,192,63,255,208,6,0,0,0,5,64,42,84,0, + // 0x7535 电 + 53,117,34,37,77,40,5,253,0,0,0,42,64,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,127,128,0,0,0,0,255,255,255,255,255,255,255,224,0,255,255,255,255,255,255,255,224,0,255,255,255,255,255,255,255,224,0,255,170,170,191,234,170,175,224,0,255,0,0,127,128,0,15,224,0,255,0,0,127,128,0,15,224,0,255,0,0,127,128,0,15,224,0,255,0,0,127,128,0,15,224,0,255,0,0,127,128,0,15,224,0,255,255,255,255,255,255,255,224,0,255,255,255,255,255,255,255,224,0,255,255,255,255,255,255,255,224,0,255,85,85,191,213,85,111,224,0,255,0,0,127,128,0,15,224,0,255,0,0,127,128,0,15,224,0,255,0,0,127,128,0,15,224,0,255,0,0,127,128,0,15,224,0,255,170,170,191,234,170,175,224,0,255,255,255,255,255,255,255,224,0,255,255,255,255,255,255,255,224,0,255,255,255,255,255,255,255,224,0,255,0,0,127,128,0,0,8,0,255,0,0,127,128,0,0,31,128,85,0,0,127,128,0,0,31,208,0,0,0,127,128,0,0,47,208,0,0,0,127,128,0,0,63,192,0,0,0,63,192,0,0,127,192,0,0,0,63,254,170,171,255,128,0,0,0,47,255,255,255,255,0,0,0,0,15,255,255,255,254,0,0,0,0,2,255,255,255,228,0, + // 0x7565 略 + 101,117,36,38,86,40,3,252,0,0,0,0,0,121,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,255,255,255,224,3,252,0,0,0,255,255,255,224,7,255,255,255,128,255,255,255,224,15,255,255,255,224,252,31,7,224,63,255,255,255,192,252,31,7,224,191,192,0,127,128,252,31,7,226,255,192,0,255,0,252,31,7,235,255,240,2,254,0,252,31,7,255,255,248,3,252,0,252,31,7,255,243,253,15,244,0,252,31,7,255,193,255,127,224,0,252,31,7,235,0,191,255,192,0,255,255,255,224,0,47,255,0,0,255,255,255,224,0,15,253,0,0,255,255,255,224,0,47,255,64,0,252,47,7,224,0,255,255,224,0,252,31,7,224,7,255,191,252,0,252,31,7,224,47,253,15,255,128,252,31,7,226,255,240,2,255,248,252,31,7,255,255,128,0,127,255,252,31,7,255,253,0,0,15,252,252,31,7,239,255,255,255,255,244,252,31,7,229,255,255,255,255,192,252,31,7,224,255,255,255,255,192,255,255,255,224,255,85,85,111,192,255,255,255,224,254,0,0,47,192,255,255,255,224,254,0,0,47,192,252,0,0,0,254,0,0,47,192,252,0,0,0,254,0,0,47,192,252,0,0,0,254,0,0,47,192,252,0,0,0,254,0,0,47,192,0,0,0,0,255,255,255,255,192,0,0,0,0,255,255,255,255,192,0,0,0,0,255,255,255,255,192,0,0,0,0,255,85,85,111,192,0,0,0,0,169,0,0,26,128, + // 0x767d 白 + 125,118,30,38,48,40,5,252,0,0,0,249,64,0,0,0,0,0,0,255,192,0,0,0,0,0,1,255,64,0,0,0,0,0,2,255,0,0,0,0,0,0,3,253,0,0,0,0,0,0,7,252,0,0,0,0,106,170,175,254,170,170,170,144,127,255,255,255,255,255,255,208,127,255,255,255,255,255,255,208,127,255,255,255,255,255,255,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,255,255,255,255,255,255,208,127,255,255,255,255,255,255,208,127,255,255,255,255,255,255,208,127,234,170,170,170,170,191,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,234,170,170,170,170,191,208,127,255,255,255,255,255,255,208,127,255,255,255,255,255,255,208,127,255,255,255,255,255,255,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,0,0,0,0,0,26,144, + // 0x7684 的 + 132,118,34,38,86,40,3,252,0,10,144,0,0,100,0,0,0,0,15,240,0,0,191,0,0,0,0,15,240,0,0,255,0,0,0,0,31,208,0,1,253,0,0,0,0,47,192,0,2,252,0,0,0,0,63,128,0,3,252,0,0,0,0,127,128,0,7,253,85,85,80,191,255,255,248,11,255,255,255,240,191,255,255,248,15,255,255,255,240,191,255,255,248,31,255,255,255,240,191,0,2,248,63,192,0,7,240,191,0,2,248,127,128,0,7,240,191,0,2,248,255,0,0,7,240,191,0,2,250,254,0,0,7,240,191,0,2,255,252,0,0,7,240,191,0,2,249,244,0,0,11,240,191,0,2,248,48,112,0,11,240,191,0,2,248,2,248,0,11,240,191,255,255,248,2,253,0,11,240,191,255,255,248,0,255,0,11,224,191,255,255,248,0,127,192,15,224,191,0,3,248,0,47,224,15,224,191,0,2,248,0,15,240,15,224,191,0,2,248,0,7,252,15,224,191,0,2,248,0,3,253,15,208,191,0,2,248,0,1,253,15,208,191,0,2,248,0,0,224,15,208,191,0,2,248,0,0,0,31,208,191,0,2,248,0,0,0,31,192,191,0,2,248,0,0,0,47,192,191,255,255,248,0,0,0,47,192,191,255,255,248,0,0,0,63,192,191,255,255,248,0,0,0,63,128,191,85,85,80,0,0,0,255,64,191,0,0,0,0,63,255,255,0,191,0,0,0,0,31,255,253,0,105,0,0,0,0,15,255,244,0,0,0,0,0,0,5,85,0,0, + // 0x76d1 监 + 209,118,36,37,77,40,2,253,0,0,6,160,0,5,0,0,0,0,0,7,240,0,15,224,0,0,3,244,7,240,0,31,208,0,0,3,244,7,240,0,47,192,0,0,3,244,7,240,0,63,192,0,0,3,244,7,240,0,127,128,0,0,3,244,7,240,0,191,255,255,254,3,244,7,240,0,255,255,255,254,3,244,7,240,1,255,255,255,254,3,244,7,240,3,253,85,85,85,3,244,7,240,11,244,0,0,0,3,244,7,240,15,240,4,0,0,3,244,7,240,47,208,125,0,0,3,244,7,240,127,193,255,128,0,3,244,7,240,255,64,127,240,0,3,244,7,241,254,0,31,252,0,3,244,7,240,124,0,3,255,64,3,244,7,240,0,0,0,255,192,2,164,7,240,0,0,0,63,192,0,0,7,240,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,191,0,191,0,191,0,0,191,0,190,0,190,0,191,0,0,191,0,190,0,190,0,191,0,0,191,0,190,0,190,0,191,0,0,191,0,190,0,190,0,191,0,0,191,0,190,0,190,0,191,0,0,191,0,190,0,190,0,191,0,0,191,0,190,0,190,0,191,0,85,255,85,255,85,255,85,191,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x76f4 直 + 244,118,36,38,86,40,2,252,0,0,0,0,127,192,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,127,128,0,0,0,21,85,85,85,191,213,85,85,84,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,15,255,255,255,255,252,0,7,240,15,255,255,255,255,252,0,7,240,15,250,170,170,171,252,0,7,240,15,224,0,0,1,252,0,7,240,15,224,0,0,1,252,0,7,240,15,250,170,170,171,252,0,7,240,15,255,255,255,255,252,0,7,240,15,255,255,255,255,252,0,7,240,15,224,0,0,1,252,0,7,240,15,224,0,0,1,252,0,7,240,15,224,0,0,1,252,0,7,240,15,255,255,255,255,252,0,7,240,15,255,255,255,255,252,0,7,240,15,250,170,170,170,252,0,7,240,15,224,0,0,1,252,0,7,240,15,224,0,0,1,252,0,7,240,15,250,170,170,171,252,0,7,240,15,255,255,255,255,252,0,7,240,15,255,255,255,255,252,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,249,85,85,85,85,85,85,85,7,255,255,255,255,255,255,255,255,7,255,255,255,255,255,255,255,255,7,255,255,255,255,255,255,255,255,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0, + // 0x7701 省 + 1,119,36,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,160,0,255,0,11,64,0,0,2,255,0,255,0,63,224,0,0,7,253,0,255,0,31,252,0,0,31,248,0,255,0,7,255,0,0,127,224,0,255,0,0,255,208,2,255,192,0,255,0,0,63,244,11,255,0,0,255,0,126,15,253,127,248,0,0,255,1,255,131,255,63,224,7,255,254,11,254,0,248,15,64,3,255,253,127,248,0,16,0,0,2,255,231,255,208,0,0,0,0,0,0,127,255,0,0,0,0,0,0,27,255,244,0,0,0,0,0,6,255,255,128,0,0,0,0,22,255,255,244,0,0,0,0,107,255,255,255,255,255,255,252,0,255,255,255,255,255,255,255,252,0,63,255,255,255,255,255,255,252,0,46,145,252,0,0,0,2,252,0,0,1,252,0,0,0,2,252,0,0,1,254,170,170,170,171,252,0,0,1,255,255,255,255,255,252,0,0,1,255,255,255,255,255,252,0,0,1,252,0,0,0,2,252,0,0,1,252,0,0,0,2,252,0,0,1,252,0,0,0,2,252,0,0,1,255,255,255,255,255,252,0,0,1,255,255,255,255,255,252,0,0,1,254,170,170,170,171,252,0,0,1,252,0,0,0,2,252,0,0,1,252,0,0,0,2,252,0,0,1,255,255,255,255,255,252,0,0,1,255,255,255,255,255,252,0,0,1,255,255,255,255,255,252,0,0,1,252,0,0,0,2,252,0,0,0,168,0,0,0,0,84,0, + // 0x7720 眠 + 32,119,36,36,68,40,3,252,255,255,254,3,255,255,255,255,240,255,255,254,3,255,255,255,255,240,255,255,254,3,255,255,255,255,240,254,85,254,3,249,85,85,91,240,253,0,254,3,244,0,0,7,240,253,0,254,3,244,0,0,7,240,253,0,254,3,244,0,0,7,240,253,0,254,3,244,0,0,7,240,253,0,254,3,249,85,85,91,240,255,255,254,3,255,255,255,255,240,255,255,254,3,255,255,255,255,240,255,255,254,3,255,255,255,255,240,253,0,254,3,244,1,252,0,0,253,0,254,3,244,0,253,0,0,253,0,254,3,244,0,253,0,0,253,0,254,3,244,0,253,0,0,253,0,254,3,244,0,253,0,0,255,255,254,3,255,255,255,255,252,255,255,254,3,255,255,255,255,252,255,255,254,3,255,255,255,255,252,253,0,254,3,249,85,255,85,84,253,0,254,3,244,0,127,0,0,253,0,254,3,244,0,127,0,0,253,0,254,3,244,0,63,64,0,253,0,254,3,244,0,63,128,0,254,85,254,3,244,0,63,192,0,255,255,254,3,244,0,47,192,16,255,255,254,3,244,0,31,208,61,255,255,254,3,244,0,15,224,63,253,0,0,3,244,22,219,240,63,253,0,0,3,255,255,211,244,63,253,0,1,191,255,255,227,253,126,84,0,2,255,255,255,144,255,253,0,0,1,255,254,64,0,191,252,0,0,0,249,64,0,0,47,244,0,0,0,0,0,0,0,1,64, + // 0x786e 确 + 110,120,36,39,95,40,1,251,0,0,0,0,0,20,0,0,0,0,0,0,0,0,63,192,0,0,21,85,85,85,0,127,128,0,0,63,255,255,255,0,191,64,0,0,63,255,255,255,0,255,255,252,0,63,255,255,255,2,255,255,255,0,0,31,192,0,3,255,255,255,0,0,47,192,0,11,244,2,252,0,0,47,192,0,31,224,3,248,0,0,63,128,0,63,192,15,240,0,0,63,64,0,191,128,31,224,0,0,127,0,2,255,255,255,255,255,0,191,0,7,255,255,255,255,255,0,255,0,1,255,255,255,255,255,0,254,85,80,127,192,63,0,127,1,255,255,252,47,192,63,0,127,2,255,255,252,47,192,63,0,127,3,255,255,252,47,192,63,0,127,7,253,2,252,47,255,255,255,255,11,253,2,252,47,255,255,255,255,15,253,2,252,47,255,255,255,255,63,253,2,252,47,192,63,0,127,127,253,2,252,47,192,63,0,127,191,253,2,252,47,192,63,0,127,63,253,2,252,47,192,63,64,191,28,253,2,252,63,255,255,255,255,4,253,2,252,63,255,255,255,255,0,253,2,252,63,255,255,255,255,0,253,2,252,63,0,0,0,127,0,255,255,252,191,0,0,0,127,0,255,255,252,255,0,0,0,127,0,255,255,252,254,0,0,0,127,0,253,0,2,252,0,0,0,127,0,253,0,3,252,0,0,0,191,0,253,0,15,244,0,0,85,255,0,168,0,31,240,0,0,255,255,0,0,0,11,192,0,0,255,253,0,0,0,2,64,0,0,191,228,0,0,0,0,0,0,0,0,0, + // 0x79bb 离 + 187,121,36,38,86,40,2,252,0,0,0,0,170,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,0,0,0,16,0,0,0,0,42,64,100,0,191,1,168,0,0,63,128,255,130,253,2,252,0,0,63,128,191,255,240,2,252,0,0,63,128,7,255,224,2,252,0,0,63,128,31,255,253,2,252,0,0,63,134,255,210,255,66,252,0,0,63,139,253,0,63,2,252,0,0,63,129,128,0,4,2,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,0,0,7,252,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,11,244,0,0,0,0,7,255,255,255,255,255,255,255,208,7,255,255,255,255,255,255,255,208,7,255,255,255,255,255,255,255,208,7,244,0,47,192,11,0,47,208,7,244,0,63,192,63,128,31,208,7,244,0,63,128,31,208,31,208,7,244,0,127,0,11,240,31,208,7,244,1,191,171,255,248,31,208,7,245,255,255,255,255,252,31,208,7,244,255,255,255,255,254,31,208,7,244,254,165,80,0,127,31,208,7,244,0,0,0,0,32,31,208,7,244,0,0,0,0,20,111,208,7,244,0,0,0,0,63,255,208,7,244,0,0,0,0,47,255,192,7,244,0,0,0,0,31,254,0, + // 0x79fb 移 + 251,121,37,38,124,40,1,252,0,0,0,0,0,0,148,0,0,0,0,0,2,224,0,2,254,0,0,0,0,1,191,248,0,3,252,0,0,0,1,191,255,253,0,15,244,0,0,0,63,255,255,228,0,63,255,255,248,0,63,255,252,0,0,255,255,255,252,0,31,151,248,0,7,255,255,255,248,0,0,3,248,0,47,248,0,15,240,0,0,3,248,1,255,248,0,47,224,0,0,3,248,7,255,255,64,127,192,0,0,3,248,2,252,191,209,255,64,0,42,171,254,168,144,31,255,253,0,0,63,255,255,253,0,3,255,244,0,0,63,255,255,253,0,1,255,208,0,0,63,255,255,253,0,11,255,64,0,0,0,11,248,0,0,191,253,0,0,0,0,15,252,0,111,255,255,224,0,0,0,31,253,2,255,253,63,192,0,0,0,63,255,128,255,208,255,64,0,0,0,127,255,224,120,2,255,255,255,64,0,255,255,244,0,11,255,255,255,192,1,255,250,253,0,63,255,255,255,192,3,247,248,255,1,255,192,0,191,64,7,243,248,60,11,255,0,0,255,0,15,211,248,36,127,255,64,3,253,0,63,195,248,2,255,255,224,11,252,0,127,131,248,0,255,31,252,31,240,0,127,3,248,0,52,3,255,127,224,0,61,3,248,0,0,0,255,255,128,0,24,3,248,0,0,0,47,255,0,0,0,3,248,0,0,0,63,248,0,0,0,3,248,0,0,2,255,224,0,0,0,3,248,0,0,111,255,64,0,0,0,3,248,0,27,255,252,0,0,0,0,3,248,7,255,255,208,0,0,0,0,3,248,3,255,253,0,0,0,0,0,3,248,1,255,128,0,0,0,0,0,2,168,0,144,0,0,0,0,0, + // 0x7a7a 空 + 122,122,36,37,77,40,2,253,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,213,86,254,85,191,85,87,252,63,192,2,253,0,191,0,3,252,63,192,3,252,0,191,0,3,252,63,192,3,252,0,191,0,3,252,63,192,7,248,0,191,0,3,252,21,64,15,244,0,191,0,0,0,0,0,47,240,0,191,0,1,128,0,0,127,208,0,191,0,2,248,0,2,255,128,0,191,64,3,248,0,111,255,0,0,127,255,255,244,47,255,248,0,0,63,255,255,240,47,255,208,0,0,31,255,255,192,15,253,0,0,0,0,0,0,0,11,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,85,85,85,85,85,85,0,0,63,255,255,255,255,255,255,0,0,63,255,255,255,255,255,255,0,0,63,255,255,255,255,255,255,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,21,85,85,85,85,85,85,85,84, + // 0x7aef 端 + 239,122,38,38,124,40,1,252,0,5,64,0,0,0,169,0,0,0,0,15,192,0,0,0,253,0,0,0,0,15,192,0,168,0,253,0,106,0,0,15,192,1,252,0,253,0,191,0,0,15,192,1,252,0,253,0,191,0,0,15,192,1,252,0,253,0,191,0,0,15,192,1,252,0,253,0,191,0,0,15,192,1,252,0,253,0,191,0,63,255,255,225,253,1,253,0,191,0,63,255,255,225,255,255,255,255,255,0,63,255,255,225,255,255,255,255,255,0,21,85,85,81,255,255,255,255,255,0,0,0,4,0,0,0,0,0,0,0,15,128,31,192,0,0,0,0,0,0,15,192,47,193,85,85,85,85,85,64,15,192,47,143,255,255,255,255,255,208,11,208,63,143,255,255,255,255,255,208,11,208,63,79,255,255,255,255,255,208,7,224,63,0,0,2,253,0,0,0,7,224,63,0,0,3,252,0,0,0,3,240,127,0,0,3,248,0,0,0,3,240,126,0,0,7,248,0,0,0,3,240,189,3,255,255,255,255,255,64,3,240,253,3,255,255,255,255,255,64,3,240,252,3,255,255,255,255,255,64,3,240,252,3,248,47,2,240,63,64,0,1,248,99,248,47,2,240,63,64,0,1,255,247,248,47,2,240,63,64,1,175,255,251,248,47,2,240,63,64,127,255,255,247,248,47,2,240,63,64,127,255,249,3,248,47,2,240,63,64,63,249,0,3,248,47,2,240,63,64,57,0,0,3,248,47,2,240,63,64,0,0,0,3,248,47,2,240,63,64,0,0,0,3,248,47,2,240,63,64,0,0,0,3,248,47,2,247,255,64,0,0,0,3,248,47,2,243,255,0,0,0,0,2,244,21,1,82,248,0, + // 0x7b2c 第 + 44,123,37,38,124,40,1,252,0,10,64,0,0,14,64,0,0,0,0,31,224,0,0,31,224,0,0,0,0,47,208,0,0,63,192,0,0,0,0,63,192,0,0,127,128,0,0,0,0,191,255,255,244,255,255,255,255,192,1,255,255,255,246,255,255,255,255,192,3,255,255,255,251,255,255,255,255,192,15,248,191,0,31,244,47,208,0,0,63,224,63,128,127,208,15,240,0,0,127,192,47,192,127,64,3,252,0,0,11,0,9,0,9,0,1,144,0,0,0,191,255,255,255,255,255,255,208,0,0,191,255,255,255,255,255,255,208,0,0,191,255,255,255,255,255,255,208,0,0,0,0,0,63,192,0,31,208,0,0,0,0,0,63,128,0,15,208,0,0,0,0,0,63,128,0,15,208,0,0,0,0,0,63,192,0,31,208,0,0,15,255,255,255,255,255,255,208,0,0,31,255,255,255,255,255,255,208,0,0,47,255,255,255,255,255,255,208,0,0,63,192,0,63,128,0,0,0,0,0,63,128,0,63,128,0,0,0,0,0,63,128,0,63,128,0,0,0,0,0,127,255,255,255,255,255,255,254,0,0,255,255,255,255,255,255,255,254,0,0,255,255,255,255,255,255,255,254,0,1,254,0,47,255,192,0,1,253,0,0,4,0,191,255,128,0,1,253,0,0,0,3,255,127,128,0,2,252,0,0,0,47,252,63,128,0,2,252,0,0,1,255,240,63,128,0,3,252,0,0,31,255,128,63,128,20,11,248,0,2,255,252,0,63,128,63,255,244,0,47,255,208,0,63,128,31,255,240,0,15,253,0,0,63,128,15,255,128,0,3,208,0,0,63,128,0,0,0,0,0,0,0,0,47,128,0,0,0,0, + // 0x7b49 等 + 73,123,37,38,124,40,1,252,0,15,144,0,0,15,144,0,0,0,0,31,224,0,0,47,208,0,0,0,0,63,192,0,0,63,192,0,0,0,0,127,255,255,248,191,255,255,255,128,0,255,255,255,249,255,255,255,255,128,3,255,255,255,251,255,255,255,255,128,11,252,191,0,15,248,47,208,0,0,31,240,63,64,63,240,15,240,0,0,127,224,63,192,63,192,7,244,0,0,63,192,31,192,47,192,3,248,0,0,11,0,8,0,63,192,1,128,0,0,0,0,0,0,63,192,0,0,0,0,0,63,255,255,255,255,255,255,208,0,0,63,255,255,255,255,255,255,208,0,0,63,255,255,255,255,255,255,208,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,63,255,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,255,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,11,255,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,255,0,0,0,47,0,0,0,63,192,0,0,0,0,191,192,0,0,63,192,0,0,0,0,127,244,0,0,63,192,0,0,0,0,15,253,0,0,63,192,0,0,0,0,3,255,0,0,63,192,0,0,0,0,0,255,192,0,63,192,0,0,0,0,0,63,65,85,191,192,0,0,0,0,0,28,3,255,255,128,0,0,0,0,0,0,1,255,255,0,0,0,0,0,0,0,0,255,232,0,0,0, + // 0x7bb1 箱 + 177,123,37,38,124,40,1,252,0,10,64,0,0,14,64,0,0,0,0,15,240,0,0,31,224,0,0,0,0,31,208,0,0,63,192,0,0,0,0,63,192,0,0,63,192,0,0,0,0,127,255,255,248,191,255,255,255,192,0,255,255,255,249,255,255,255,255,192,1,255,255,255,251,255,255,255,255,192,3,252,191,64,11,252,63,208,0,0,15,244,63,128,31,240,15,240,0,0,47,240,47,192,127,208,7,244,0,0,127,192,15,208,63,128,3,252,0,0,15,64,15,64,11,0,1,224,0,0,1,0,191,0,0,0,0,0,0,0,0,0,191,0,3,255,255,255,254,0,0,0,191,0,3,255,255,255,254,0,0,0,191,0,3,255,255,255,254,0,31,255,255,255,227,249,85,85,254,0,31,255,255,255,227,244,0,0,254,0,31,255,255,255,227,244,0,0,254,0,5,87,255,85,83,244,0,0,254,0,0,3,255,0,3,255,255,255,254,0,0,7,255,128,3,255,255,255,254,0,0,15,255,240,3,255,255,255,254,0,0,47,255,252,3,244,0,0,254,0,0,63,255,255,3,244,0,0,254,0,0,191,255,191,195,244,0,0,254,0,1,254,191,47,243,255,255,255,254,0,3,252,191,15,211,255,255,255,254,0,15,244,191,3,131,255,255,255,254,0,63,224,191,1,3,244,0,0,254,0,127,192,191,0,3,244,0,0,254,0,47,64,191,0,3,244,0,0,254,0,13,0,191,0,3,244,0,0,254,0,0,0,191,0,3,255,255,255,254,0,0,0,191,0,3,255,255,255,254,0,0,0,191,0,3,255,255,255,254,0,0,0,191,0,3,244,0,0,254,0,0,0,190,0,2,164,0,0,85,0, + // 0x7c7b 类 + 123,124,36,38,86,40,2,252,0,0,0,0,190,0,0,0,0,0,1,64,0,255,0,3,144,0,0,31,208,0,255,0,11,252,0,0,31,244,0,255,0,15,244,0,0,7,252,0,255,0,63,224,0,0,2,255,0,255,0,191,192,0,0,0,255,64,255,1,255,0,0,0,0,126,0,255,1,252,0,0,63,255,255,255,255,255,255,255,253,63,255,255,255,255,255,255,255,253,63,255,255,255,255,255,255,255,253,21,85,85,191,255,254,85,85,84,0,0,1,255,255,255,64,0,0,0,0,11,254,255,191,224,0,0,0,0,127,244,255,31,253,0,0,0,7,255,208,255,7,255,208,0,0,127,255,0,255,0,191,254,64,31,255,248,0,255,0,31,255,254,191,255,128,0,255,0,1,255,253,47,248,0,0,0,1,64,31,248,15,64,0,0,255,7,248,0,96,0,0,0,0,255,7,255,128,0,0,0,0,0,254,0,127,244,0,0,0,0,1,254,0,7,224,0,63,255,255,255,255,255,255,255,254,63,255,255,255,255,255,255,255,254,63,255,255,255,255,255,255,255,254,21,85,85,95,255,245,85,85,84,0,0,0,47,255,244,0,0,0,0,0,0,127,231,253,0,0,0,0,0,2,255,194,255,128,0,0,0,0,31,255,0,255,244,0,0,0,1,255,252,0,63,255,128,0,1,191,255,240,0,11,255,254,80,255,255,255,64,0,1,255,255,255,127,255,244,0,0,0,31,255,253,63,253,0,0,0,0,0,191,252,25,64,0,0,0,0,0,1,164, + // 0x7d22 索 + 34,125,35,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,5,85,85,85,255,85,85,85,80,63,255,255,255,255,255,255,255,248,63,255,255,255,255,255,255,255,248,63,255,255,255,255,255,255,255,248,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,128,0,47,224,0,0,2,252,63,128,0,127,208,0,0,2,252,63,128,1,255,64,7,64,2,252,63,129,11,253,0,47,240,2,252,63,139,239,240,0,191,224,2,252,0,47,255,192,3,255,64,0,0,0,11,255,64,31,253,0,0,0,0,1,255,224,191,240,36,0,0,0,0,47,254,255,128,254,0,0,0,0,7,255,253,1,255,192,0,0,0,1,255,224,0,63,244,0,0,0,11,255,64,0,11,254,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,252,21,85,16,0,255,0,0,2,244,0,0,121,0,254,0,56,0,64,0,2,255,64,254,2,255,64,0,0,15,253,0,254,1,255,244,0,0,191,244,0,254,0,31,254,0,11,255,192,0,254,0,2,255,208,191,254,0,0,254,0,0,127,248,127,240,0,0,254,0,0,11,252,15,64,0,0,254,0,0,1,224,0,0,0,0,254,0,0,0,0, + // 0x7d2b 紫 + 43,125,36,38,86,40,2,252,0,0,127,0,1,168,0,0,0,0,0,127,0,1,252,0,0,0,0,0,127,0,1,252,0,2,64,11,208,127,0,1,252,0,111,208,11,224,127,255,241,252,27,255,244,11,224,127,255,241,255,255,255,208,11,224,127,255,241,255,255,244,0,11,224,127,0,1,255,249,0,0,11,224,127,0,1,253,0,0,0,11,224,127,0,1,252,0,0,120,11,224,127,0,81,252,0,0,127,11,224,191,255,241,253,0,0,255,95,255,255,255,241,255,255,255,254,255,255,255,255,160,255,255,255,252,255,255,233,79,144,47,255,255,244,250,80,0,63,240,0,0,0,0,0,0,0,255,192,2,64,0,0,0,1,3,254,0,31,244,0,0,0,31,239,248,0,127,240,0,0,0,127,255,208,2,255,128,0,0,0,31,255,192,15,253,0,0,0,0,1,255,244,127,240,31,64,0,0,0,31,255,255,128,127,224,0,0,0,2,255,252,0,15,252,0,0,0,1,255,224,0,3,255,0,255,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,255,244,255,255,255,255,255,255,255,255,253,85,85,80,0,255,0,0,2,255,0,0,0,0,255,0,4,0,248,0,1,253,0,255,0,127,0,0,0,7,255,0,255,1,255,224,0,0,63,248,0,255,0,63,253,0,2,255,224,0,255,0,7,255,128,47,255,64,0,255,0,0,191,244,127,248,0,0,255,0,0,31,253,31,192,0,0,255,0,0,3,240,1,0,0,0,254,0,0,0,64, + // 0x7ea2 红 + 162,126,37,36,104,40,1,254,0,0,144,0,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,0,7,248,0,255,255,255,255,255,64,0,15,240,0,255,255,255,255,255,64,0,31,224,0,255,255,255,255,255,64,0,63,192,0,170,170,255,234,170,0,0,191,128,0,0,0,255,0,0,0,0,255,0,244,0,0,255,0,0,0,3,253,2,254,0,0,255,0,0,0,7,248,3,253,0,0,255,0,0,0,15,240,11,248,0,0,255,0,0,0,127,255,255,240,0,0,255,0,0,0,127,255,255,208,0,0,255,0,0,0,63,255,255,128,0,0,255,0,0,0,47,167,255,0,0,0,255,0,0,0,0,7,252,0,0,0,255,0,0,0,0,15,244,0,0,0,255,0,0,0,0,63,224,0,0,0,255,0,0,0,0,191,128,0,0,0,255,0,0,0,2,255,0,88,0,0,255,0,0,0,11,254,191,252,0,0,255,0,0,0,63,255,255,252,0,0,255,0,0,0,63,255,255,252,0,0,255,0,0,0,63,255,233,0,0,0,255,0,0,0,31,144,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,20,0,0,255,0,0,0,0,0,107,248,0,0,255,0,0,0,0,111,255,253,170,170,255,234,170,128,127,255,255,254,255,255,255,255,255,192,127,255,255,146,255,255,255,255,255,192,63,254,64,2,255,255,255,255,255,192,58,64,0,0,0,0,0,0,0,0, + // 0x7ea7 级 + 167,126,38,38,124,40,1,252,0,0,128,0,0,0,0,0,0,0,0,1,248,0,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,0,3,248,3,255,255,255,255,128,0,0,11,240,3,255,255,255,255,64,0,0,15,224,3,255,255,255,255,0,0,0,47,192,1,87,253,85,255,0,0,0,63,128,0,3,252,0,254,0,0,0,191,0,0,3,252,1,253,0,0,0,254,1,208,3,252,2,252,0,0,2,252,3,248,3,248,3,252,0,0,7,244,11,248,3,248,3,248,0,0,15,224,15,240,3,248,7,244,0,0,63,234,191,208,3,244,11,240,16,0,191,255,255,128,7,244,15,255,254,0,63,255,255,0,7,248,15,255,255,0,63,235,253,0,7,252,47,255,254,0,16,7,248,0,11,253,0,0,253,0,0,15,240,0,11,254,0,2,252,0,0,47,192,0,15,255,0,3,252,0,0,127,64,180,15,255,128,3,248,0,1,255,111,244,15,255,192,11,240,0,7,255,255,244,31,223,224,15,240,0,31,255,255,224,47,203,240,47,208,0,127,255,228,0,63,195,252,63,192,0,63,249,0,0,63,130,253,191,64,0,46,64,0,0,127,64,255,255,0,0,0,0,0,116,191,0,127,253,0,0,0,0,27,248,255,0,63,248,0,0,0,2,255,253,253,0,47,248,0,0,0,127,255,247,252,0,191,254,0,0,27,255,254,7,248,2,255,255,192,0,63,255,208,15,244,15,254,191,240,0,63,249,0,47,240,127,248,47,254,0,47,64,0,63,211,255,208,7,255,208,4,0,0,255,199,255,64,1,255,192,0,0,0,47,1,248,0,0,47,0,0,0,0,5,0,144,0,0,5,0, + // 0x7ebf 线 + 191,126,37,38,124,40,2,252,0,1,0,0,0,63,128,0,0,0,0,3,224,0,0,63,193,208,0,0,0,7,248,0,0,63,203,253,0,0,0,15,240,0,0,63,194,255,128,0,0,15,224,0,0,63,192,127,208,0,0,47,192,0,0,63,192,15,128,0,0,63,128,0,0,63,192,1,0,0,0,191,0,0,0,47,192,90,240,0,0,254,0,0,0,47,255,255,244,0,2,252,3,128,107,255,255,255,244,0,3,244,11,242,255,255,255,255,144,0,15,240,15,241,255,255,233,0,0,0,47,192,47,208,254,111,192,0,0,0,191,239,255,128,0,31,208,0,0,0,255,255,255,0,0,31,208,0,4,0,191,255,253,0,0,15,224,26,253,0,63,171,252,0,0,15,251,255,253,0,0,15,240,0,1,191,255,255,254,0,0,47,208,2,255,255,255,254,144,0,0,127,128,7,255,255,250,64,0,0,0,255,0,3,255,239,240,0,80,0,3,252,6,211,148,7,244,0,253,0,15,255,255,208,0,3,248,3,253,0,127,255,255,208,0,3,248,11,248,0,191,255,254,64,0,3,252,47,240,0,63,254,64,0,0,2,252,191,192,0,57,0,0,0,0,1,255,255,0,0,0,0,0,0,0,0,255,252,0,0,0,0,1,160,0,0,255,240,0,0,0,0,127,240,0,3,255,192,0,0,0,111,255,240,0,47,255,192,24,0,27,255,255,144,2,255,255,208,31,0,191,255,228,0,111,255,159,240,47,64,127,249,0,11,255,253,11,252,63,0,62,64,0,31,255,208,3,255,255,0,16,0,0,11,253,0,1,255,254,0,0,0,0,3,128,0,0,127,252,0,0,0,0,0,0,0,0,6,144,0, + // 0x7ec6 细 + 198,126,36,38,86,40,1,252,0,0,96,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,1,255,0,170,170,170,170,170,0,3,253,0,255,255,255,255,255,0,7,252,0,255,255,255,255,255,0,15,244,0,255,255,255,255,255,0,31,240,0,254,0,191,0,127,0,63,192,0,254,0,191,0,127,0,127,128,0,254,0,191,0,127,0,255,0,16,254,0,191,0,127,2,253,0,248,254,0,191,0,127,7,248,1,255,254,0,191,0,127,15,240,3,253,254,0,191,0,127,127,255,255,248,254,0,191,0,127,127,255,255,240,254,0,191,0,127,63,255,255,192,254,0,191,0,127,47,165,255,64,254,0,191,0,127,0,2,254,0,255,255,255,255,255,0,11,248,0,255,255,255,255,255,0,31,224,0,255,255,255,255,255,0,127,192,0,255,85,255,85,191,1,255,1,104,254,0,191,0,127,7,255,255,252,254,0,191,0,127,63,255,255,252,254,0,191,0,127,63,255,255,232,254,0,191,0,127,47,254,144,0,254,0,191,0,127,30,64,0,0,254,0,191,0,127,0,0,0,0,254,0,191,0,127,0,0,0,0,254,0,191,0,127,0,0,0,24,254,0,191,0,127,0,1,111,252,254,0,191,0,127,22,255,255,253,255,255,255,255,255,127,255,255,252,255,255,255,255,255,63,255,249,0,255,255,255,255,255,63,228,0,0,255,85,85,85,191,16,0,0,0,254,0,0,0,127,0,0,0,0,254,0,0,0,106,0,0,0,0,0,0,0,0,0, + // 0x7ec8 终 + 200,126,38,38,124,40,1,252,0,1,144,0,0,14,80,0,0,0,0,3,252,0,0,47,208,0,0,0,0,3,252,0,0,63,192,0,0,0,0,11,244,0,0,255,64,0,0,0,0,15,240,0,1,255,255,255,240,0,0,31,208,0,3,255,255,255,252,0,0,63,192,0,15,255,255,255,248,0,0,127,64,0,47,249,85,95,240,0,0,255,0,0,191,252,0,47,224,0,2,253,2,209,255,254,0,63,192,0,3,252,7,255,254,191,64,255,64,0,15,240,15,255,248,63,195,254,0,0,47,224,31,227,224,15,251,252,0,0,127,255,255,192,128,7,255,240,0,0,127,255,255,64,0,2,255,192,0,0,63,255,254,0,0,7,255,224,0,0,42,67,252,0,0,47,255,252,0,0,0,11,244,0,1,255,251,255,128,0,0,31,224,0,31,255,129,255,244,0,0,63,128,1,255,253,0,63,255,64,0,255,0,11,255,224,0,11,255,224,3,252,5,179,255,65,0,0,255,192,15,255,255,240,244,7,228,0,31,0,63,255,255,240,0,31,255,64,0,0,63,255,255,224,0,7,255,240,0,0,47,254,80,0,0,0,127,254,0,0,25,0,0,0,0,0,7,253,0,0,0,0,0,0,0,0,0,184,0,0,0,0,0,0,1,0,0,16,0,0,0,0,1,108,11,248,0,0,0,0,0,5,191,252,31,255,208,0,0,0,26,255,255,252,27,255,254,64,0,0,127,255,255,248,0,111,255,244,0,0,127,255,229,0,0,1,255,255,64,0,63,228,0,0,0,0,11,255,244,0,16,0,0,0,0,0,0,191,240,0,0,0,0,0,0,0,0,11,208,0,0,0,0,0,0,0,0,0,64,0, + // 0x7ed3 结 + 211,126,37,38,124,40,1,252,0,1,64,0,0,0,191,0,0,0,0,2,244,0,0,0,255,0,0,0,0,3,252,0,0,0,255,0,0,0,0,11,248,0,0,0,255,0,0,0,0,15,240,0,0,0,255,0,0,0,0,31,224,1,170,170,255,170,170,64,0,63,192,2,255,255,255,255,255,128,0,127,128,2,255,255,255,255,255,128,0,255,0,66,255,255,255,255,255,128,2,254,1,240,0,0,255,0,0,0,3,252,3,253,0,0,255,0,0,0,15,244,11,252,0,0,255,0,0,0,47,224,95,244,0,0,255,0,0,0,191,255,255,224,0,0,255,0,0,0,127,255,255,192,106,170,255,170,169,0,63,255,255,64,191,255,255,255,255,0,42,83,254,0,191,255,255,255,255,0,0,11,252,0,191,255,255,255,255,0,0,31,240,0,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,3,254,5,188,0,0,0,0,0,0,11,255,255,252,47,255,255,255,252,0,63,255,255,252,47,255,255,255,252,0,63,255,255,228,47,255,255,255,252,0,63,255,144,0,47,213,85,87,252,0,30,64,0,0,47,192,0,2,252,0,0,0,0,0,47,192,0,2,252,0,0,0,0,0,47,192,0,2,252,0,0,0,0,105,47,192,0,2,252,0,0,1,175,253,47,192,0,2,252,0,6,191,255,253,47,192,0,2,252,0,127,255,255,253,47,213,85,87,252,0,127,255,254,64,47,255,255,255,252,0,63,249,0,0,47,255,255,255,252,0,41,0,0,0,47,255,255,255,252,0,0,0,0,0,47,192,0,2,252,0,0,0,0,0,31,192,0,1,168,0, + // 0x7ed9 给 + 217,126,37,38,124,40,1,252,0,1,64,0,0,0,144,0,0,0,0,2,244,0,0,2,253,0,0,0,0,3,252,0,0,3,252,0,0,0,0,7,248,0,0,7,254,0,0,0,0,15,240,0,0,15,255,0,0,0,0,31,224,0,0,31,255,128,0,0,0,63,192,0,0,63,239,208,0,0,0,63,128,0,0,191,143,240,0,0,0,191,0,0,1,255,7,248,0,0,0,254,2,208,3,254,2,254,0,0,3,252,3,248,15,252,0,255,128,0,7,244,11,244,63,240,0,127,224,0,15,240,31,240,255,208,0,31,248,0,63,234,255,195,255,213,85,95,255,0,127,255,255,159,255,255,255,255,255,192,63,255,255,15,247,255,255,254,191,64,47,235,253,3,211,255,255,254,46,0,0,11,248,0,0,0,0,0,4,0,0,15,240,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,191,64,0,0,0,0,0,0,0,2,254,1,176,63,255,255,255,208,0,11,255,255,240,63,255,255,255,208,0,47,255,255,240,63,255,255,255,208,0,63,255,255,144,63,149,85,111,208,0,47,254,64,0,63,64,0,31,208,0,30,64,0,0,63,64,0,31,208,0,0,0,0,0,63,64,0,31,208,0,0,0,0,0,63,64,0,31,208,0,0,0,0,100,63,64,0,31,208,0,0,1,111,244,63,64,0,31,208,0,1,191,255,248,63,64,0,31,208,0,63,255,255,244,63,149,85,111,208,0,63,255,249,0,63,255,255,255,208,0,63,249,0,0,63,255,255,255,208,0,41,0,0,0,63,255,255,255,208,0,0,0,0,0,63,64,0,31,208,0,0,0,0,0,63,64,0,31,208,0, + // 0x7edf 统 + 223,126,38,38,124,40,1,252,0,1,128,0,0,0,96,0,0,0,0,2,248,0,0,7,248,0,0,0,0,3,253,0,0,3,252,0,0,0,0,7,252,0,0,2,253,0,0,0,0,15,244,0,0,0,255,0,0,0,0,31,240,0,0,0,249,0,0,0,0,63,208,3,255,255,255,255,255,192,0,127,192,3,255,255,255,255,255,192,0,255,64,3,255,255,255,255,255,192,1,254,3,209,85,111,245,85,85,64,3,252,7,248,0,63,208,0,0,0,11,244,15,244,0,191,128,31,0,0,31,240,31,240,1,255,0,127,128,0,127,255,255,192,3,253,0,63,192,0,127,255,255,128,15,248,0,15,240,0,63,255,255,0,63,240,0,27,248,0,47,235,253,1,255,235,255,255,252,0,0,11,248,11,255,255,255,255,255,0,0,31,240,3,255,255,255,254,255,64,0,63,192,3,255,233,80,0,63,192,0,255,64,1,66,164,6,160,46,0,2,254,27,240,3,248,7,240,0,0,11,255,255,240,3,248,7,240,0,0,47,255,255,240,3,248,7,240,0,0,63,255,254,64,3,244,7,240,0,0,47,254,64,0,7,244,7,240,0,0,30,64,0,0,7,240,7,240,0,0,0,0,0,0,11,240,7,240,0,0,0,0,1,176,15,240,7,240,8,0,0,0,111,240,31,224,7,240,15,192,0,27,255,244,63,192,7,240,15,208,11,255,255,208,191,192,7,240,15,192,63,255,248,2,255,64,7,240,15,192,63,254,64,11,254,0,7,244,31,192,47,208,0,191,252,0,7,255,255,128,20,0,0,127,224,0,3,255,255,64,0,0,0,47,128,0,0,191,253,0,0,0,0,8,0,0,0,0,0,0, + // 0x7ee7 继 + 231,126,37,36,104,40,1,254,0,2,64,0,0,0,1,80,0,0,0,3,244,0,80,0,7,224,0,0,0,7,244,2,248,0,7,224,0,0,0,15,240,2,248,40,7,224,41,0,0,15,224,2,248,188,7,224,63,0,0,47,192,2,248,125,7,224,126,0,0,63,128,2,248,63,7,224,188,0,0,127,64,2,248,47,7,224,252,0,0,254,0,2,248,31,71,225,244,0,1,252,3,210,248,15,135,227,240,0,3,248,7,246,248,15,135,227,208,0,11,240,15,242,248,0,7,224,64,0,31,208,47,210,248,0,11,224,0,0,127,239,255,130,249,255,255,255,255,128,127,255,255,2,249,255,255,255,255,128,63,255,254,2,249,255,255,255,255,128,46,83,252,2,248,0,63,244,0,0,0,11,240,2,248,0,127,252,0,0,0,31,208,2,248,0,255,255,0,0,0,63,128,2,248,1,255,255,128,0,0,255,0,2,248,3,251,239,224,0,2,253,6,162,248,7,231,227,244,0,7,255,255,226,248,15,199,225,252,0,47,255,255,226,248,63,135,224,255,0,63,255,255,146,248,191,7,224,63,64,47,254,64,2,248,254,7,224,47,0,30,64,0,2,248,188,7,224,13,0,0,0,0,2,248,112,7,224,0,0,0,0,0,2,248,0,7,224,0,0,0,0,1,178,248,0,7,224,0,0,0,6,255,242,248,0,7,224,0,0,6,255,255,242,248,0,1,80,0,0,63,255,255,146,252,0,0,0,0,0,63,255,144,2,255,255,255,255,255,192,63,144,0,2,255,255,255,255,255,192,0,0,0,2,255,255,255,255,255,192, + // 0x7eea 绪 + 234,126,38,38,124,40,1,252,0,1,64,0,0,11,224,0,0,0,0,3,244,0,0,15,224,0,0,0,0,3,248,0,0,15,224,0,36,0,0,7,244,0,0,15,224,0,127,64,0,15,240,0,0,15,240,0,255,0,0,31,208,0,255,255,255,254,253,0,0,47,192,0,255,255,255,255,252,0,0,63,64,0,255,255,255,255,244,0,0,191,0,0,0,15,224,31,240,0,0,253,1,208,0,15,224,63,192,0,2,248,3,248,0,15,224,255,64,0,7,240,11,244,0,15,226,255,0,0,15,224,15,229,85,95,247,253,85,64,47,234,255,207,255,255,255,255,255,208,127,255,255,79,255,255,255,255,255,208,63,255,255,15,255,255,255,255,255,208,47,167,253,0,0,11,254,0,0,0,0,3,248,0,0,47,248,0,0,0,0,15,240,0,0,255,224,0,0,0,0,47,192,0,7,255,192,0,0,0,0,127,64,0,47,255,255,255,252,0,0,254,0,66,255,255,255,255,252,0,3,254,191,239,255,255,255,255,252,0,31,255,255,239,255,240,0,1,252,0,63,255,254,135,215,240,0,1,252,0,47,249,64,1,7,240,0,1,252,0,25,0,0,0,7,255,255,255,252,0,0,0,0,0,7,255,255,255,252,0,0,0,0,16,7,255,255,255,252,0,0,0,6,248,7,240,0,1,252,0,0,6,255,248,7,240,0,1,252,0,6,255,255,252,7,240,0,1,252,0,63,255,255,144,7,240,0,1,252,0,63,255,208,0,7,255,255,255,252,0,47,228,0,0,7,255,255,255,252,0,20,0,0,0,7,255,255,255,252,0,0,0,0,0,7,244,0,2,252,0,0,0,0,0,2,160,0,0,84,0, + // 0x7eed 续 + 237,126,37,38,124,40,1,252,0,0,64,0,0,1,168,0,0,0,0,2,248,0,0,2,252,0,0,0,0,3,252,0,0,2,252,0,0,0,0,7,244,0,0,2,252,0,0,0,0,11,240,0,127,255,255,255,244,0,0,15,208,0,127,255,255,255,244,0,0,47,192,0,127,255,255,255,244,0,0,63,128,0,0,2,252,0,0,0,0,191,0,0,0,2,252,0,0,0,0,253,3,128,0,2,252,0,0,0,2,252,11,243,255,255,255,255,255,64,3,240,15,227,255,255,255,255,255,0,15,224,47,195,255,255,255,255,255,0,47,234,255,64,0,0,0,0,254,0,127,255,255,0,2,0,21,0,253,0,63,255,253,0,11,208,127,1,252,0,47,235,248,0,11,248,127,2,248,0,0,11,240,0,1,255,191,3,244,0,0,15,208,0,224,62,127,0,16,0,0,63,128,3,253,4,127,0,0,0,0,191,0,64,255,64,191,0,0,0,1,254,191,192,47,208,191,0,0,0,3,255,255,192,7,192,190,0,0,0,15,255,255,192,1,0,254,0,0,0,63,255,228,15,255,255,255,255,255,64,47,249,0,15,255,255,255,255,255,64,29,0,0,15,255,255,255,255,255,64,0,0,0,64,0,11,248,0,0,0,0,0,27,208,0,15,240,64,0,0,0,6,255,208,0,47,226,244,0,0,0,191,255,208,0,191,199,253,0,0,31,255,249,0,2,255,1,255,128,0,63,255,128,0,15,253,0,63,240,0,63,228,0,0,191,244,0,11,252,0,46,0,0,7,255,208,0,2,255,0,0,0,0,31,255,0,0,0,191,192,0,0,0,7,244,0,0,0,31,64,0,0,0,2,64,0,0,0,9,0, + // 0x7eff 绿 + 255,126,38,38,124,40,1,252,0,1,0,0,0,0,0,0,0,0,0,3,224,0,0,0,0,0,64,0,0,11,248,0,127,255,255,255,248,0,0,15,240,0,127,255,255,255,248,0,0,31,224,0,127,255,255,255,248,0,0,47,192,0,0,0,0,3,248,0,0,63,192,0,0,0,0,3,248,0,0,191,64,0,0,0,0,3,244,0,0,255,0,0,47,255,255,255,244,0,1,253,7,64,47,255,255,255,244,0,3,248,15,224,47,255,255,255,244,0,11,240,31,224,0,0,0,3,244,0,31,208,63,192,0,0,0,7,240,0,127,255,255,64,0,0,0,7,240,0,127,255,255,2,255,255,255,255,255,208,63,255,253,2,255,255,255,255,255,208,46,87,248,2,255,255,255,255,255,208,0,15,240,0,85,85,255,85,85,64,0,47,208,0,0,0,254,0,0,0,0,127,128,0,60,0,254,0,45,0,0,255,0,0,255,0,254,0,191,128,2,253,6,128,191,192,254,2,255,0,11,255,255,192,47,240,255,11,252,0,47,255,255,192,11,244,255,111,240,0,63,255,255,128,3,240,255,255,128,0,47,254,64,0,0,131,255,253,0,0,30,64,0,0,0,31,255,248,0,0,0,0,0,0,0,255,255,253,0,0,0,0,0,64,7,255,254,255,64,0,0,0,31,192,63,248,254,63,224,0,0,11,255,210,255,208,254,15,252,0,6,255,255,223,255,0,254,7,255,128,63,255,253,7,248,0,254,0,255,208,63,255,128,3,208,0,254,0,47,128,63,224,0,0,0,0,254,0,6,0,41,0,0,0,0,191,254,0,0,0,0,0,0,0,0,63,252,0,0,0,0,0,0,0,0,63,224,0,0,0, + // 0x7f16 编 + 22,127,36,38,86,40,1,252,0,2,64,0,0,0,104,0,0,0,3,244,0,0,3,252,0,0,0,7,244,0,0,2,254,0,0,0,15,240,0,0,0,255,0,0,0,15,208,0,0,0,255,64,0,0,47,192,2,255,255,255,255,254,0,63,128,2,255,255,255,255,254,0,127,0,2,255,255,255,255,254,0,254,0,2,252,0,0,0,190,1,252,11,66,252,0,0,0,190,3,244,15,226,252,0,0,0,190,11,240,47,194,255,255,255,255,254,31,208,127,130,255,255,255,255,254,127,255,255,2,255,255,255,255,254,127,255,254,2,252,0,0,0,0,63,255,252,2,252,0,0,0,0,47,251,244,2,248,0,0,0,0,20,11,240,2,248,0,0,0,0,0,31,208,2,255,255,255,255,255,0,63,128,3,255,255,255,255,255,0,191,0,3,255,255,255,255,255,1,253,1,3,255,208,244,124,47,3,254,191,67,255,208,244,124,47,15,255,255,131,255,208,244,124,47,63,255,254,71,251,208,244,124,47,47,254,64,11,251,208,244,124,47,30,64,0,11,235,255,255,255,255,0,0,0,15,235,255,255,255,255,0,0,31,79,219,255,255,255,255,0,2,255,159,203,208,244,124,47,0,127,255,175,203,208,244,124,47,27,255,248,63,139,208,244,124,47,127,255,64,127,11,208,244,124,47,63,228,0,255,11,208,244,124,47,62,0,1,254,11,208,244,124,47,0,0,0,252,11,208,244,125,255,0,0,0,40,11,208,240,104,255,0,0,0,0,6,128,0,0,164, + // 0x7f3a 缺 + 58,127,38,38,124,40,1,252,1,228,0,0,0,0,253,0,0,0,2,252,0,0,0,0,253,0,0,0,3,252,0,0,0,0,253,0,0,0,3,252,0,0,0,0,253,0,0,0,3,248,0,0,0,0,253,0,0,0,7,255,255,255,192,0,253,0,0,0,11,255,255,255,197,86,254,85,84,0,15,255,255,255,203,255,255,255,248,0,15,230,253,85,75,255,255,255,248,0,47,193,252,0,11,255,255,255,248,0,63,193,252,0,0,0,253,3,248,0,127,65,252,0,0,0,253,3,248,0,47,1,252,0,0,0,253,3,248,0,6,1,252,0,0,0,253,3,248,0,127,255,255,255,224,0,253,3,248,0,127,255,255,255,224,0,253,3,248,0,127,255,255,255,224,0,253,3,248,0,21,86,253,85,64,0,253,3,248,0,0,1,252,0,15,255,255,255,255,208,5,65,252,0,15,255,255,255,255,208,15,193,252,15,207,255,255,255,255,208,15,193,252,15,197,87,255,213,85,64,15,193,252,15,192,3,255,208,0,0,15,193,252,15,192,3,255,224,0,0,15,193,252,15,192,7,255,240,0,0,15,193,252,15,192,11,251,244,0,0,15,193,252,15,192,15,243,252,0,0,15,193,252,15,192,31,226,253,0,0,15,214,253,95,192,63,192,255,0,0,15,255,255,255,192,191,128,191,128,0,15,255,255,255,193,255,0,63,208,0,15,255,255,255,195,254,0,47,240,0,15,192,0,15,207,252,0,15,252,0,15,192,0,15,255,240,0,7,255,64,15,192,0,1,255,208,0,1,255,208,5,64,0,3,255,64,0,0,191,192,0,0,0,0,189,0,0,0,31,0,0,0,0,0,32,0,0,0,5,0, + // 0x7f51 网 + 81,127,34,36,68,40,3,252,42,170,170,170,170,170,170,170,144,127,255,255,255,255,255,255,255,224,127,255,255,255,255,255,255,255,224,127,255,255,255,255,255,255,255,224,127,0,3,244,0,47,192,15,224,127,0,3,244,0,47,192,15,224,127,0,3,244,0,47,128,15,224,127,0,3,244,0,47,128,15,224,127,0,3,240,0,47,128,15,224,127,0,3,240,0,63,128,15,224,127,9,3,240,120,63,64,15,224,127,31,135,240,254,63,64,15,224,127,47,231,240,191,255,64,15,224,127,11,255,224,47,255,0,15,224,127,2,255,224,11,255,0,15,224,127,0,255,224,3,255,0,15,224,127,0,63,224,0,255,128,15,224,127,0,15,244,0,191,208,15,224,127,0,31,252,0,255,244,15,224,127,0,31,255,0,255,252,15,224,127,0,47,255,129,254,255,15,224,127,0,63,111,194,252,191,79,224,127,0,127,15,131,248,63,15,224,127,0,191,3,3,244,13,15,224,127,0,254,0,11,240,4,15,224,127,1,252,0,15,224,0,15,224,127,3,252,0,47,208,0,15,224,127,11,244,0,63,192,0,15,224,127,15,240,0,255,64,0,15,224,127,63,208,2,255,0,0,15,224,127,15,128,0,252,0,0,15,224,127,2,0,0,36,0,0,15,224,127,0,0,0,0,0,255,255,224,127,0,0,0,0,0,127,255,208,127,0,0,0,0,0,63,255,64,106,0,0,0,0,0,42,84,0, + // 0x7f6e 置 + 110,127,35,36,68,40,3,252,31,255,255,255,255,255,255,255,128,31,255,255,255,255,255,255,255,128,31,234,175,250,170,254,170,191,128,31,192,7,240,0,252,0,63,128,31,192,7,240,0,252,0,63,128,31,234,171,250,170,254,170,191,128,31,255,255,255,255,255,255,255,128,31,255,255,255,255,255,255,255,128,0,0,0,2,253,0,0,0,0,0,0,0,2,252,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,3,244,0,0,0,0,0,0,0,7,244,0,0,0,0,5,80,63,255,255,255,255,252,0,15,224,63,255,255,255,255,252,0,15,224,63,128,0,0,2,252,0,15,224,63,128,0,0,1,252,0,15,224,63,255,255,255,255,252,0,15,224,63,255,255,255,255,252,0,15,224,63,128,0,0,1,252,0,15,224,63,128,0,0,1,252,0,15,224,63,255,255,255,255,252,0,15,224,63,255,255,255,255,252,0,15,224,63,128,0,0,1,252,0,15,224,63,128,0,0,1,252,0,15,224,63,255,255,255,255,252,0,15,224,63,255,255,255,255,252,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,255,255,255,255,255,255,255,252,15,255,255,255,255,255,255,255,252,15,255,255,255,255,255,255,255,252,15,224,0,0,0,0,0,0,0,10,144,0,0,0,0,0,0,0, + // 0x7f72 署 + 114,127,37,36,104,40,1,252,1,255,255,255,255,255,255,255,248,0,1,255,255,255,255,255,255,255,248,0,1,254,170,255,170,175,234,171,248,0,1,252,0,127,0,15,192,3,248,0,1,252,0,127,0,15,192,3,248,0,1,252,0,127,0,15,192,3,248,0,1,255,255,255,255,255,255,255,248,0,1,255,255,255,255,255,255,255,248,0,1,170,170,170,255,170,170,170,164,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,2,208,0,0,47,255,255,255,255,255,15,248,0,0,47,255,255,255,255,255,127,240,0,0,31,255,255,255,255,255,255,192,0,0,0,0,0,254,0,15,254,0,0,0,0,0,0,254,0,191,240,0,0,47,255,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,255,128,0,0,0,1,255,254,0,0,0,0,0,0,0,111,255,240,0,0,0,0,0,0,11,255,255,64,0,0,0,0,0,6,255,255,255,255,255,255,192,0,1,255,255,255,255,255,255,255,192,0,127,255,255,234,170,170,170,191,192,0,63,255,255,192,0,0,0,31,192,0,31,248,31,192,0,0,0,31,192,0,9,0,31,255,255,255,255,255,192,0,0,0,31,255,255,255,255,255,192,0,0,0,31,213,85,85,85,111,192,0,0,0,31,192,0,0,0,31,192,0,0,0,31,192,0,0,0,31,192,0,0,0,31,255,255,255,255,255,192,0,0,0,31,255,255,255,255,255,192,0,0,0,31,234,170,170,170,191,192,0,0,0,31,192,0,0,0,26,128,0, + // 0x8005 者 + 5,128,37,38,124,40,1,252,0,0,0,7,240,0,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,0,7,240,0,0,3,224,0,0,0,0,7,240,0,0,11,252,0,0,0,0,7,240,0,0,31,240,0,0,63,255,255,255,255,253,127,192,0,0,63,255,255,255,255,255,255,64,0,0,63,255,255,255,255,255,254,0,0,0,0,0,11,244,0,47,248,0,0,0,0,0,7,240,0,127,224,0,0,0,0,0,7,240,1,255,128,0,0,0,0,0,7,240,11,254,0,0,0,0,0,0,7,240,47,248,0,0,0,47,255,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,255,128,5,85,85,87,255,229,85,85,85,0,0,0,0,31,255,64,0,0,0,0,0,0,1,255,248,0,0,0,0,0,0,0,15,255,208,0,0,0,0,0,0,0,191,255,255,255,255,255,0,0,0,31,255,255,255,255,255,255,0,0,2,255,255,255,255,255,255,255,0,0,127,255,255,192,0,0,0,255,0,0,63,255,111,192,0,0,0,255,0,0,47,244,47,192,0,0,0,255,0,0,15,64,47,192,0,0,0,255,0,0,0,0,47,255,255,255,255,255,0,0,0,0,47,255,255,255,255,255,0,0,0,0,47,255,255,255,255,255,0,0,0,0,47,192,0,0,0,255,0,0,0,0,47,192,0,0,0,255,0,0,0,0,47,192,0,0,0,255,0,0,0,0,47,255,255,255,255,255,0,0,0,0,47,255,255,255,255,255,0,0,0,0,47,255,255,255,255,255,0,0,0,0,47,192,0,0,0,255,0,0,0,0,26,128,0,0,0,85,0,0, + // 0x806a 聪 + 106,128,38,38,124,40,1,252,0,0,0,0,0,80,0,6,0,0,0,0,0,0,3,244,0,15,224,0,63,255,255,255,3,252,0,31,224,0,63,255,255,255,1,253,0,47,192,0,63,255,255,255,0,191,0,63,128,0,7,244,11,224,0,63,64,191,0,0,3,240,11,224,0,63,192,254,0,0,3,240,11,224,0,29,1,252,0,0,3,240,11,224,47,255,255,255,253,0,3,240,11,224,47,255,255,255,253,0,3,255,255,224,47,255,255,255,253,0,3,255,255,224,47,128,0,0,253,0,3,255,255,224,47,128,0,0,253,0,3,240,11,224,47,128,0,0,253,0,3,240,11,224,47,128,0,0,253,0,3,240,11,224,47,128,0,0,253,0,3,240,11,224,47,128,0,0,253,0,3,240,11,224,47,128,0,0,253,0,3,240,11,224,47,255,255,255,253,0,3,255,255,224,47,255,255,255,253,0,3,255,255,224,47,255,255,255,253,0,3,255,255,224,0,0,16,0,0,0,3,240,11,224,0,1,248,0,0,0,3,240,11,224,0,0,253,0,0,0,3,240,11,224,0,126,127,64,16,0,3,240,11,249,57,126,47,193,248,0,3,240,31,254,62,126,15,224,252,0,3,251,255,254,125,126,3,240,189,0,47,255,255,253,189,126,2,208,63,0,127,255,255,224,252,126,0,0,63,64,63,254,75,224,252,126,0,14,31,192,62,64,11,225,248,126,0,15,207,192,0,0,11,226,244,126,0,15,203,208,0,0,11,227,240,127,0,31,135,208,0,0,11,225,224,63,255,255,130,0,0,0,11,224,0,63,255,255,0,0,0,0,11,224,0,11,255,248,0,0,0,0,7,224,0,0,0,0,0,0, + // 0x80fd 能 + 253,128,38,38,124,40,1,252,0,3,144,0,0,42,64,0,0,0,0,11,248,0,0,63,128,0,0,0,0,15,240,0,0,63,128,0,0,0,0,15,224,30,0,63,128,0,144,0,0,47,208,191,0,63,128,31,244,0,0,63,192,63,192,63,129,255,252,0,0,191,64,31,224,63,239,255,224,0,0,255,0,15,240,63,255,253,0,0,42,255,255,255,248,63,255,64,0,0,127,255,255,255,252,63,208,0,0,0,63,255,255,255,254,63,128,0,4,0,63,234,149,64,255,63,128,0,15,128,0,0,0,0,121,63,128,0,31,192,0,0,0,0,0,63,128,0,31,192,0,0,0,0,0,63,213,85,127,192,3,255,255,255,224,63,255,255,255,128,3,255,255,255,224,31,255,255,255,0,3,255,255,255,224,6,255,255,248,0,3,244,0,15,224,0,0,0,0,0,3,244,0,15,224,63,128,0,0,0,3,244,0,15,224,63,128,0,0,0,3,255,255,255,224,63,128,0,96,0,3,255,255,255,224,63,128,7,248,0,3,255,255,255,224,63,128,127,253,0,3,244,0,15,224,63,139,255,244,0,3,244,0,15,224,63,255,255,64,0,3,244,0,15,224,63,255,228,0,0,3,255,255,255,224,63,249,0,0,0,3,255,255,255,224,63,128,0,0,0,3,255,255,255,224,63,128,0,10,0,3,244,0,15,224,63,128,0,11,224,3,244,0,15,224,63,128,0,15,224,3,244,0,15,224,63,128,0,15,208,3,244,0,31,224,63,192,0,47,192,3,244,31,255,208,63,255,255,255,192,3,244,15,255,192,31,255,255,255,64,3,244,11,255,64,7,255,255,253,0,1,80,1,64,0,0,0,0,0,0, + // 0x81ea 自 + 234,129,28,38,10,40,6,252,0,0,1,233,0,0,0,0,0,2,255,0,0,0,0,0,3,253,0,0,0,0,0,3,252,0,0,0,0,0,7,248,0,0,0,106,170,175,250,170,170,170,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,85,85,85,85,85,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,85,85,85,85,85,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,85,85,85,85,85,255,191,0,0,0,0,0,191,191,0,0,0,0,0,106, + // 0x81f3 至 + 243,129,36,34,50,40,2,254,21,85,85,85,85,85,85,85,84,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,2,255,0,0,0,0,0,0,0,3,253,0,2,224,0,0,0,0,11,252,0,15,248,0,0,0,0,15,244,0,11,255,0,0,0,0,47,240,0,1,255,208,0,0,0,63,208,0,0,127,244,0,0,0,191,192,0,0,31,254,0,15,255,255,255,255,255,255,255,128,15,255,255,255,255,255,255,255,224,15,255,255,255,255,255,255,255,248,15,255,255,170,165,85,0,15,252,0,0,0,0,0,0,0,3,240,0,0,0,0,254,0,0,1,128,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,85,85,85,255,85,85,85,0,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,85,85,85,85,255,85,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x83dc 菜 + 220,131,36,38,86,40,2,252,0,0,26,128,0,2,164,0,0,0,0,31,208,0,3,244,0,0,0,0,31,208,0,3,244,0,0,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,21,85,111,213,85,87,249,85,84,0,0,31,208,0,3,244,0,0,0,0,31,208,0,2,165,100,0,0,0,0,0,0,90,255,253,0,0,85,90,175,255,255,255,255,64,15,255,255,255,255,255,255,254,64,15,255,255,255,255,255,165,0,0,11,255,254,169,84,0,0,20,0,0,0,0,1,176,0,0,63,192,0,124,0,7,244,0,0,127,192,1,254,0,3,252,0,0,255,64,0,191,64,1,253,0,1,254,0,0,63,192,0,254,0,3,252,0,0,31,224,0,254,0,11,244,0,0,15,240,0,165,0,15,224,0,0,11,64,0,255,0,7,192,0,0,0,0,0,255,0,0,0,0,21,85,85,85,255,85,85,85,84,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,0,255,255,254,0,0,0,0,0,7,255,255,255,192,0,0,0,0,47,252,255,63,244,0,0,0,2,255,224,255,11,255,64,0,0,47,255,64,255,2,255,244,0,6,255,252,0,255,0,63,255,144,191,255,208,0,255,0,11,255,254,255,254,0,0,255,0,0,191,254,63,224,0,0,255,0,0,11,252,29,0,0,0,255,0,0,0,96,0,0,0,0,254,0,0,0,0, + // 0x84dd 蓝 + 221,132,36,37,77,40,2,253,0,0,47,128,0,2,248,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,5,64,0,17,84,0,0,0,0,6,160,0,127,64,0,0,1,84,7,240,0,191,0,0,0,3,248,7,240,0,255,0,0,0,3,248,7,240,1,255,255,255,240,3,248,7,240,2,255,255,255,240,3,248,7,240,3,255,255,255,240,3,248,7,240,11,244,8,0,0,3,248,7,240,15,240,126,0,0,3,248,7,240,47,208,191,64,0,3,248,7,240,127,192,63,192,0,3,248,7,240,255,0,15,240,0,3,248,7,240,46,0,7,244,0,3,248,7,240,4,0,3,252,0,0,0,7,240,0,0,1,248,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,190,0,126,0,190,0,191,0,0,190,0,126,0,190,0,191,0,0,190,0,126,0,190,0,191,0,0,190,0,126,0,190,0,191,0,0,190,0,126,0,190,0,191,0,0,191,0,190,0,190,0,191,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x86c7 蛇 + 199,134,37,37,114,40,1,253,0,0,80,0,0,0,42,64,0,0,0,3,244,0,0,0,63,64,0,0,0,3,244,0,0,0,63,64,0,0,0,3,244,0,0,0,63,64,0,0,0,3,244,0,0,0,63,64,0,0,0,3,244,0,0,0,63,64,0,0,0,3,244,0,63,255,255,255,255,192,0,3,244,0,63,255,255,255,255,192,15,255,255,254,63,255,255,255,255,192,15,255,255,254,63,64,0,0,47,192,15,255,255,254,63,0,0,0,47,192,15,130,240,62,63,0,0,0,47,192,15,130,240,62,63,0,0,0,47,192,15,130,240,62,63,253,0,0,47,192,15,130,240,62,0,253,0,0,0,0,15,130,240,62,0,253,0,0,0,0,15,130,240,62,0,253,0,0,224,0,15,130,240,62,0,253,0,7,244,0,15,130,240,62,0,253,0,63,252,0,15,130,240,126,0,253,2,255,248,0,15,255,255,254,0,253,111,255,192,0,15,255,255,254,0,255,255,248,0,0,15,255,255,254,0,255,255,128,0,0,15,131,244,0,0,255,228,0,0,0,15,131,244,0,0,254,0,0,0,0,0,3,244,44,0,253,0,0,0,0,0,3,244,189,0,253,0,0,0,0,0,3,244,126,0,253,0,0,0,0,0,3,244,63,0,253,0,0,8,0,0,3,244,47,64,253,0,0,15,128,0,3,250,191,128,253,0,0,15,192,5,175,255,255,192,253,0,0,31,192,127,255,255,255,192,253,0,0,47,192,63,255,254,155,208,255,85,85,127,128,63,249,0,7,224,255,255,255,255,0,20,0,0,7,128,127,255,255,254,0,0,0,0,0,0,11,255,255,248,0, + // 0x884c 行 + 76,136,37,38,124,40,1,252,0,0,40,0,0,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,0,1,255,64,42,170,170,170,170,0,0,7,254,0,127,255,255,255,255,0,0,31,248,0,127,255,255,255,255,0,0,127,224,0,127,255,255,255,255,0,2,255,192,0,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,0,63,248,0,0,0,0,0,0,0,0,63,224,7,128,0,0,0,0,0,0,31,128,15,244,0,0,0,0,0,0,13,0,47,240,0,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,3,255,3,255,255,255,255,255,192,0,11,252,3,255,255,255,255,255,192,0,47,244,3,255,255,255,255,255,192,0,191,244,2,170,170,171,254,170,128,2,255,244,0,0,0,1,253,0,0,11,255,244,0,0,0,1,253,0,0,63,255,244,0,0,0,1,253,0,0,191,251,244,0,0,0,1,253,0,0,63,199,244,0,0,0,1,253,0,0,14,7,244,0,0,0,1,253,0,0,4,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,2,253,0,0,0,7,244,0,0,63,255,252,0,0,0,7,244,0,0,63,255,252,0,0,0,7,244,0,0,47,255,244,0,0,0,7,240,0,0,10,169,64,0,0, + // 0x88ab 被 + 171,136,38,38,124,40,1,252,0,10,144,0,0,0,63,64,0,0,0,15,224,0,0,0,63,64,0,0,0,15,224,0,0,0,63,64,0,0,0,15,224,0,0,0,63,64,0,0,0,15,224,0,0,0,63,64,0,0,0,15,224,0,0,0,63,64,0,0,0,15,224,0,127,255,255,255,255,128,21,95,245,64,127,255,255,255,255,192,63,255,255,244,127,255,255,255,255,192,63,255,255,248,127,85,127,149,127,128,63,255,255,240,127,0,63,64,63,64,0,0,15,224,127,0,63,64,127,0,0,0,31,192,127,0,63,64,191,0,0,0,63,128,127,0,63,64,253,0,0,0,191,0,127,0,63,64,108,0,0,1,253,24,127,0,63,64,0,0,0,3,252,63,191,255,255,255,253,0,0,15,244,189,191,255,255,255,254,0,0,63,253,248,191,255,255,255,253,0,0,191,255,240,191,254,85,87,252,0,2,255,255,192,191,254,0,3,252,0,15,255,255,208,190,127,0,11,244,0,63,255,231,244,254,63,128,15,240,0,191,223,226,252,254,47,192,31,224,0,63,79,224,248,253,31,224,63,192,0,45,15,224,96,253,15,244,191,128,0,0,15,224,1,252,3,253,255,0,0,0,15,224,2,252,2,255,254,0,0,0,15,224,3,248,0,255,252,0,0,0,15,224,3,244,0,127,240,0,0,0,15,224,7,240,0,191,248,0,0,0,15,224,15,240,3,255,255,0,0,0,15,224,31,224,31,255,255,208,0,0,15,224,63,193,255,244,191,254,0,0,15,224,127,143,255,192,31,255,208,0,15,224,255,15,254,0,3,255,192,0,15,224,62,3,240,0,0,127,64,0,11,224,4,1,64,0,0,6,0, + // 0x88c5 装 + 197,136,36,38,86,40,2,252,0,0,191,0,0,3,244,0,0,0,0,191,0,0,3,244,0,0,9,0,191,0,0,3,244,0,0,47,128,191,0,0,3,244,0,0,63,240,191,0,0,3,244,0,0,11,252,191,0,0,7,248,0,0,2,253,191,15,255,255,255,255,255,0,116,191,15,255,255,255,255,255,0,0,191,15,255,255,255,255,255,0,0,191,0,0,3,244,0,0,0,0,191,0,0,3,244,0,0,0,10,191,0,0,3,244,0,0,0,191,191,0,0,3,244,0,0,11,255,191,0,0,3,244,0,0,255,254,191,0,0,7,248,0,0,255,224,191,3,255,255,255,255,248,190,0,191,3,255,255,255,255,248,80,0,191,3,255,255,255,255,248,0,0,191,0,0,0,0,0,0,0,0,106,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,1,255,207,224,0,6,0,0,0,31,254,7,244,0,47,192,0,2,255,240,2,252,1,255,208,1,191,255,128,0,255,15,254,0,191,255,255,64,0,127,255,244,0,191,254,127,64,0,31,255,64,0,63,128,63,64,0,11,254,0,0,0,0,63,64,90,194,255,224,0,0,0,127,255,255,192,127,254,64,0,191,255,255,255,192,11,255,249,0,191,255,255,249,64,1,255,255,0,127,254,80,0,0,0,27,253,0,20,0,0,0,0,0,0,104, + // 0x8981 要 + 129,137,36,38,86,40,2,251,21,85,85,85,85,85,85,85,84,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,2,252,0,127,0,0,0,0,0,2,252,0,127,0,0,0,0,0,2,252,0,127,0,0,0,7,255,255,255,255,255,255,255,224,7,255,255,255,255,255,255,255,224,7,255,255,255,255,255,255,255,224,7,240,2,252,0,127,0,15,224,7,240,2,252,0,127,0,15,224,7,240,2,252,0,127,0,15,224,7,240,2,252,0,127,0,15,224,7,240,2,252,0,127,0,15,224,7,255,255,255,255,255,255,255,224,7,255,255,255,255,255,255,255,224,7,255,255,255,255,255,255,255,224,0,0,0,127,192,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,3,253,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,191,192,0,0,255,0,0,0,0,255,0,0,3,254,0,0,0,3,254,0,0,11,252,0,0,0,7,255,144,0,31,244,0,0,0,15,255,255,144,191,224,0,0,0,63,255,255,255,255,128,0,0,0,6,198,255,255,255,64,0,0,0,0,0,15,255,255,253,0,0,0,0,6,255,255,255,255,244,0,21,171,255,255,249,27,255,255,208,63,255,255,255,128,0,111,255,244,47,255,255,144,0,0,1,191,240,15,169,64,0,0,0,0,6,192,0,0,0,0,0,0,0,0,0, + // 0x89d2 角 + 210,137,34,39,95,40,1,251,0,0,0,164,0,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,15,255,255,255,224,0,0,0,0,31,255,255,255,252,0,0,0,0,63,255,255,255,244,0,0,0,0,255,128,0,31,240,0,0,0,3,255,0,0,63,192,0,0,0,15,252,0,0,191,64,0,0,0,47,249,85,85,255,85,85,80,0,255,255,255,255,255,255,255,240,7,255,255,255,255,255,255,255,240,31,255,255,255,255,255,255,255,240,15,251,240,0,15,224,0,11,240,3,199,240,0,15,224,0,11,240,0,7,240,0,15,224,0,11,240,0,7,240,0,15,224,0,11,240,0,7,244,0,15,240,0,15,240,0,7,255,255,255,255,255,255,240,0,7,255,255,255,255,255,255,240,0,7,255,255,255,255,255,255,240,0,7,240,0,15,224,0,11,240,0,7,240,0,15,224,0,11,240,0,11,240,0,15,224,0,11,240,0,11,240,0,15,224,0,11,240,0,15,245,85,95,245,85,95,240,0,15,255,255,255,255,255,255,240,0,31,255,255,255,255,255,255,240,0,47,255,255,255,255,255,255,240,0,63,192,0,0,0,0,11,240,0,127,64,0,0,0,0,11,240,0,255,0,0,0,0,0,11,240,2,254,0,0,0,0,0,11,240,11,252,0,0,0,0,0,15,240,47,244,0,0,0,6,149,111,240,127,224,0,0,0,7,255,255,224,47,192,0,0,0,3,255,255,192,10,0,0,0,0,2,255,249,0,0,0,0,0,0,0,0,0,0, + // 0x8ba1 计 + 161,139,37,38,124,40,2,252,0,0,0,0,0,2,164,0,0,0,0,56,0,0,0,7,248,0,0,0,0,254,0,0,0,7,248,0,0,0,1,255,192,0,0,7,248,0,0,0,0,127,240,0,0,7,248,0,0,0,0,15,252,0,0,7,248,0,0,0,0,3,255,0,0,7,248,0,0,0,0,0,253,0,0,7,248,0,0,0,0,0,52,0,0,7,248,0,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,0,7,248,0,0,0,255,255,224,63,255,255,255,255,255,64,255,255,224,63,255,255,255,255,255,64,255,255,224,63,255,255,255,255,255,64,170,175,224,63,255,255,255,255,255,64,0,15,224,0,0,7,248,0,0,0,0,15,224,0,0,7,248,0,0,0,0,15,224,0,0,7,248,0,0,0,0,15,224,0,0,7,248,0,0,0,0,15,224,0,0,7,248,0,0,0,0,15,224,0,0,7,248,0,0,0,0,15,224,0,0,7,248,0,0,0,0,15,224,0,0,7,248,0,0,0,0,15,224,0,0,7,248,0,0,0,0,15,224,0,0,7,248,0,0,0,0,15,224,120,0,7,248,0,0,0,0,15,227,252,0,7,248,0,0,0,0,15,255,253,0,7,248,0,0,0,0,15,255,244,0,7,248,0,0,0,0,31,255,192,0,7,248,0,0,0,0,63,254,0,0,7,248,0,0,0,0,191,244,0,0,7,248,0,0,0,0,191,192,0,0,7,248,0,0,0,0,62,0,0,0,7,248,0,0,0,0,40,0,0,0,7,248,0,0,0,0,0,0,0,0,7,244,0,0,0, + // 0x8bae 议 + 174,139,37,38,124,40,2,251,0,80,0,0,0,124,0,0,0,0,2,240,0,0,1,253,0,0,0,0,7,252,0,22,0,255,0,7,224,0,2,255,0,63,64,127,64,11,244,0,0,255,128,63,128,63,192,15,240,0,0,63,192,63,128,47,208,15,240,0,0,31,224,47,192,15,224,15,224,0,0,15,128,31,192,15,240,31,208,0,0,2,0,15,208,7,240,47,208,0,0,0,0,15,224,3,64,63,192,0,0,0,0,11,240,0,0,63,192,0,0,0,0,7,240,0,0,127,128,0,255,255,128,3,248,0,0,191,0,0,255,255,128,3,252,0,0,255,0,0,255,255,128,2,252,0,1,254,0,0,170,191,128,0,254,0,2,253,0,0,0,63,128,0,255,0,3,252,0,0,0,63,128,0,127,64,7,248,0,0,0,63,128,0,63,192,15,240,0,0,0,63,128,0,47,208,31,224,0,0,0,63,128,0,15,240,63,208,0,0,0,63,128,0,15,248,127,192,0,0,0,63,128,0,7,252,255,64,0,0,0,63,128,0,2,255,254,0,0,0,0,63,128,0,0,255,252,0,0,0,0,63,128,0,0,127,244,0,0,0,0,63,128,224,0,63,240,0,0,0,0,63,135,240,0,255,252,0,0,0,0,63,255,240,3,255,255,64,0,0,0,63,255,208,15,254,255,208,0,0,0,63,255,0,127,244,191,248,0,0,0,127,248,2,255,208,31,255,64,0,0,255,208,31,255,64,7,255,244,0,1,255,1,255,252,0,0,255,255,64,0,188,3,255,208,0,0,31,255,64,0,32,1,255,0,0,0,2,253,0,0,0,0,180,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0, + // 0x8bbe 设 + 190,139,36,37,77,40,2,252,0,176,0,0,21,85,85,80,0,2,252,0,0,47,255,255,248,0,3,255,0,0,47,255,255,248,0,0,255,192,0,47,255,255,248,0,0,47,240,0,47,128,3,248,0,0,11,252,0,63,128,3,248,0,0,2,248,0,63,128,3,248,0,0,0,224,0,63,64,3,248,0,0,0,0,0,191,0,3,248,0,0,0,0,0,255,0,3,248,0,0,0,0,3,254,0,3,248,0,0,0,0,15,252,0,3,255,254,255,255,128,191,244,0,1,255,255,255,255,128,255,208,0,0,191,255,255,255,128,127,64,0,0,0,0,170,191,128,40,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,47,255,255,255,255,208,0,63,128,47,255,255,255,255,240,0,63,128,47,255,255,255,255,208,0,63,128,27,249,85,85,127,192,0,63,128,3,252,0,0,127,128,0,63,128,1,253,0,0,255,0,0,63,128,0,255,0,2,254,0,0,63,128,0,127,128,3,252,0,0,63,128,64,47,224,15,244,0,0,63,131,192,15,248,63,224,0,0,63,159,208,3,254,255,192,0,0,63,255,224,0,255,255,0,0,0,63,255,128,0,127,252,0,0,0,63,253,0,2,255,255,64,0,0,191,244,0,47,255,255,244,0,2,255,192,7,255,253,191,255,144,2,254,1,255,255,208,15,255,254,0,248,0,255,253,0,1,255,254,0,96,0,191,144,0,0,27,252,0,0,0,36,0,0,0,0,100, + // 0x8bd5 试 + 213,139,37,38,124,40,2,252,0,0,0,0,0,0,106,1,0,0,0,240,0,0,0,0,127,79,64,0,3,252,0,0,0,0,127,95,208,0,3,255,0,0,0,0,127,79,240,0,0,255,192,0,0,0,127,67,252,0,0,63,240,0,0,0,127,65,253,0,0,15,252,0,0,0,127,64,189,0,0,3,244,0,0,0,127,64,48,0,0,1,208,170,170,170,191,170,170,0,0,0,0,255,255,255,255,255,255,64,0,0,0,255,255,255,255,255,255,64,0,0,0,255,255,255,255,255,255,64,0,0,0,0,0,0,63,128,0,0,255,255,192,0,0,0,63,128,0,0,255,255,192,0,0,0,63,128,0,0,255,255,192,0,0,0,63,192,0,0,106,191,192,0,0,0,63,192,0,0,0,47,192,21,85,85,63,192,0,0,0,47,192,63,255,255,47,192,0,0,0,47,192,63,255,255,47,192,0,0,0,47,192,63,255,255,47,192,0,0,0,47,192,0,63,64,31,208,0,0,0,47,192,0,63,64,31,208,0,0,0,47,192,0,63,64,15,208,0,0,0,47,192,0,63,64,15,224,0,0,0,47,192,0,63,64,15,240,0,0,0,47,192,0,63,64,15,240,0,0,0,47,192,64,63,64,11,240,20,0,0,47,194,192,63,65,71,244,30,0,0,47,223,208,63,175,199,248,47,128,0,47,255,224,127,255,195,252,47,64,0,63,255,239,255,255,195,252,63,64,0,191,253,127,255,248,1,255,63,0,1,255,224,63,249,0,0,255,255,0,0,255,64,46,64,0,0,191,253,0,0,124,0,0,0,0,0,63,252,0,0,32,0,0,0,0,0,31,248,0,0,0,0,0,0,0,0,6,224,0, + // 0x8bef 误 + 239,139,37,37,114,40,2,252,0,128,0,0,0,0,0,0,0,0,3,240,0,3,255,255,255,255,240,0,11,253,0,3,255,255,255,255,240,0,3,255,64,3,255,255,255,255,240,0,0,191,208,3,244,0,0,15,240,0,0,47,244,3,244,0,0,15,240,0,0,15,244,3,244,0,0,15,240,0,0,3,208,3,244,0,0,15,240,0,0,0,64,3,244,0,0,15,240,0,0,0,0,3,255,255,255,255,240,0,0,0,0,3,255,255,255,255,240,0,0,0,0,3,255,255,255,255,240,0,255,255,128,0,0,0,0,0,0,0,255,255,128,0,0,0,0,0,0,0,255,255,128,0,0,0,0,0,0,0,170,191,128,5,85,85,85,85,80,0,0,63,128,15,255,255,255,255,252,0,0,63,128,15,255,255,255,255,252,0,0,63,128,15,255,255,255,255,252,0,0,63,128,0,0,11,240,0,0,0,0,63,128,0,0,11,240,0,0,0,0,63,128,0,0,15,224,0,0,0,0,63,128,0,0,15,224,0,0,0,0,63,128,127,255,255,255,255,255,64,0,63,128,127,255,255,255,255,255,64,0,63,128,127,255,255,255,255,255,64,0,63,128,85,85,127,253,85,85,0,0,63,130,192,0,127,253,0,0,0,0,63,223,192,0,255,255,0,0,0,0,63,255,208,3,254,127,192,0,0,0,63,255,128,11,252,47,240,0,0,0,191,253,0,127,244,15,254,0,0,1,255,224,2,255,208,3,255,208,0,0,255,64,191,255,64,0,255,254,64,0,60,0,255,248,0,0,47,255,0,0,32,0,63,208,0,0,3,252,0,0,0,0,40,0,0,0,0,40,0, + // 0x8bf7 请 + 247,139,37,39,134,40,2,251,0,0,0,0,0,11,224,0,0,0,0,192,0,0,0,15,240,0,0,0,3,240,0,0,0,15,240,0,0,0,11,252,0,42,170,175,250,170,168,0,2,255,64,47,255,255,255,255,252,0,0,191,192,47,255,255,255,255,252,0,0,47,240,0,0,15,240,0,0,0,0,15,240,0,0,15,240,0,0,0,0,3,208,6,170,175,250,170,160,0,0,1,64,11,255,255,255,255,240,0,0,0,0,11,255,255,255,255,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,255,255,192,170,170,175,250,170,170,0,255,255,192,255,255,255,255,255,255,64,255,255,192,255,255,255,255,255,255,64,170,191,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,3,255,255,255,255,208,0,0,63,192,3,255,255,255,255,208,0,0,63,192,3,255,255,255,255,208,0,0,63,192,3,244,0,0,15,208,0,0,63,192,3,244,0,0,15,208,0,0,63,192,3,250,170,170,175,208,0,0,63,192,3,255,255,255,255,208,0,0,63,192,3,255,255,255,255,208,0,0,63,192,3,244,0,0,15,208,0,0,63,194,195,244,0,0,15,208,0,0,63,207,195,244,0,0,15,208,0,0,63,255,227,255,255,255,255,208,0,0,63,255,195,255,255,255,255,208,0,0,63,255,3,250,170,170,175,208,0,0,127,248,3,244,0,0,15,208,0,0,255,224,3,244,0,0,15,208,0,2,255,64,3,244,0,0,31,208,0,0,253,0,3,244,0,63,255,192,0,0,112,0,3,244,0,47,255,192,0,0,0,0,3,244,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x8bfb 读 + 251,139,37,39,134,40,1,251,0,0,0,0,0,2,164,0,0,0,0,32,0,0,0,3,248,0,0,0,0,252,0,0,0,3,248,0,0,0,3,255,0,0,0,3,248,0,0,0,0,255,208,3,255,255,255,255,248,0,0,63,244,3,255,255,255,255,248,0,0,15,253,3,255,255,255,255,248,0,0,3,253,0,0,3,248,0,0,0,0,0,244,0,0,3,248,0,0,0,0,0,16,0,0,3,248,0,0,0,0,0,0,31,255,255,255,255,255,64,0,0,0,31,255,255,255,255,255,0,0,0,0,31,255,255,255,255,255,0,127,255,224,0,0,0,0,0,254,0,127,255,224,0,4,0,0,0,253,0,127,255,224,0,63,64,254,1,252,0,42,175,224,0,63,224,254,2,248,0,0,15,224,0,11,252,254,3,244,0,0,15,224,2,0,254,254,0,80,0,0,15,224,15,224,44,254,0,0,0,0,15,224,11,252,0,254,0,0,0,0,15,224,1,255,64,253,0,0,0,0,15,224,0,47,192,253,0,0,0,0,15,224,0,7,1,253,0,0,0,0,15,224,63,255,255,255,255,255,128,0,15,224,63,255,255,255,255,255,128,0,15,224,127,255,255,255,255,255,128,0,15,225,192,0,31,244,0,0,0,0,15,235,208,0,47,224,128,0,0,0,15,255,240,0,127,195,244,0,0,0,15,255,208,1,255,139,254,0,0,0,15,255,64,7,254,1,255,192,0,0,31,252,0,63,252,0,63,240,0,0,63,240,2,255,240,0,11,253,0,0,191,128,47,255,128,0,2,255,64,0,62,0,191,253,0,0,0,127,192,0,24,0,47,224,0,0,0,31,64,0,0,0,14,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0, + // 0x8c03 调 + 3,140,35,38,86,40,2,251,0,128,0,0,0,0,0,0,0,3,240,0,63,255,255,255,255,252,11,252,0,63,255,255,255,255,252,2,255,0,63,255,255,255,255,252,0,191,192,63,128,0,0,2,252,0,47,240,63,64,6,144,1,252,0,11,240,63,64,11,208,1,252,0,3,192,63,64,11,208,1,252,0,0,0,63,66,175,250,145,252,0,0,0,63,71,255,255,209,252,0,0,0,63,71,255,255,209,252,0,0,0,63,64,11,208,1,252,255,255,128,63,64,11,208,1,252,255,255,128,63,64,11,208,1,252,255,255,128,63,64,11,208,1,252,170,191,128,63,79,255,255,245,252,0,63,128,63,79,255,255,245,252,0,63,128,63,79,255,255,245,252,0,63,128,63,64,0,0,1,252,0,63,128,63,64,0,0,1,252,0,63,128,63,70,170,170,129,252,0,63,128,63,75,255,255,193,252,0,63,128,63,11,255,255,193,252,0,63,128,63,11,208,11,193,252,0,63,128,127,11,208,11,193,252,0,63,128,127,11,208,11,193,252,0,63,137,190,11,208,11,193,252,0,63,191,254,11,250,175,193,252,0,63,255,253,11,255,255,193,252,0,63,255,252,11,255,255,193,252,0,127,250,252,11,208,0,1,252,0,255,227,248,11,208,0,1,252,1,255,135,244,0,0,0,1,252,3,254,15,240,0,0,1,86,252,2,248,31,208,0,0,3,255,248,0,160,15,192,0,0,2,255,244,0,0,2,64,0,0,1,255,128,0,0,0,0,0,0,0,0,0, + // 0x8d25 败 + 37,141,36,38,86,40,2,252,0,0,0,0,0,1,0,0,0,0,0,0,0,0,11,240,0,0,31,255,255,255,0,15,224,0,0,31,255,255,255,0,15,208,0,0,31,255,255,255,0,31,192,0,0,31,149,85,127,0,47,192,0,0,31,128,0,63,0,63,128,0,0,31,128,0,63,0,63,149,85,84,31,130,164,63,0,127,255,255,255,31,131,244,63,0,255,255,255,255,31,131,244,63,0,255,255,255,255,31,131,244,63,2,252,0,15,192,31,131,244,63,3,248,0,15,192,31,131,244,63,7,244,0,31,192,31,131,244,63,15,240,0,31,128,31,131,244,63,47,244,0,47,128,31,131,244,63,127,252,0,63,64,31,131,244,63,127,252,0,63,0,31,131,244,63,31,253,0,63,0,31,131,244,63,12,127,0,126,0,31,131,244,63,0,63,0,253,0,31,131,244,63,0,47,128,252,0,31,131,244,63,0,31,193,252,0,31,131,240,63,0,15,227,248,0,31,131,240,63,0,7,247,240,0,31,135,240,63,0,3,255,240,0,31,139,224,63,0,1,255,208,0,0,15,208,0,0,0,255,192,0,0,31,194,128,0,0,191,192,0,0,47,207,208,0,0,255,240,0,0,127,75,240,0,3,255,248,0,0,255,3,252,0,15,251,254,0,3,252,1,253,0,63,224,255,128,15,248,0,191,1,255,192,63,240,127,224,0,63,203,255,0,31,254,255,192,0,31,95,248,0,3,255,62,0,0,8,11,208,0,0,188,20,0,0,0,2,0,0,0,20, + // 0x8d2a 贪 + 42,141,37,38,124,40,2,252,0,0,0,0,29,0,0,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,7,255,208,0,0,0,0,0,0,0,127,255,252,0,0,0,0,0,0,3,255,231,255,208,0,0,0,0,0,127,255,0,191,254,0,0,0,0,11,255,244,176,11,255,248,0,0,6,255,255,131,253,0,191,255,228,0,191,255,248,1,255,64,11,255,255,64,255,255,64,0,63,192,0,127,254,0,63,224,0,0,31,128,0,2,252,0,24,47,255,255,255,255,255,192,0,0,0,47,255,255,255,255,255,240,0,0,0,47,255,255,255,255,255,208,0,0,0,0,0,0,0,1,255,64,0,0,0,0,0,0,0,7,254,0,0,0,0,0,0,0,0,31,248,0,0,0,0,0,0,0,0,31,224,0,0,0,0,63,255,255,255,255,255,248,0,0,0,63,255,255,255,255,255,248,0,0,0,63,255,255,255,255,255,248,0,0,0,63,213,85,85,85,87,248,0,0,0,63,128,0,85,0,3,248,0,0,0,63,128,0,255,0,3,248,0,0,0,63,128,0,255,0,3,248,0,0,0,63,128,0,255,0,3,248,0,0,0,63,128,0,255,0,3,248,0,0,0,63,128,1,254,0,3,248,0,0,0,63,128,3,253,0,3,248,0,0,0,63,128,11,252,80,3,248,0,0,0,21,64,47,244,254,64,0,0,0,0,0,1,255,226,255,249,0,0,0,0,0,31,255,65,191,255,224,0,0,0,6,255,253,0,6,255,254,64,0,6,255,255,208,0,0,47,255,244,0,31,255,253,0,0,0,1,255,240,0,7,255,144,0,0,0,0,11,224,0,2,224,0,0,0,0,0,0,128,0, + // 0x8d77 起 + 119,141,38,39,134,40,1,251,0,0,85,0,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,0,191,0,0,191,255,255,252,0,0,0,191,0,0,191,255,255,252,0,1,85,191,85,80,191,255,255,252,0,15,255,255,255,240,21,85,86,252,0,15,255,255,255,240,0,0,1,252,0,15,255,255,255,240,0,0,1,252,0,0,0,191,0,0,0,0,1,252,0,0,0,191,0,0,0,0,1,252,0,0,0,191,0,0,0,0,1,252,0,0,0,191,0,0,0,0,1,252,0,21,85,191,85,84,0,0,1,252,0,63,255,255,255,252,63,255,255,252,0,63,255,255,255,252,63,255,255,252,0,63,255,255,255,252,63,255,255,252,0,0,0,63,128,0,63,149,86,252,0,0,0,63,128,0,63,64,0,84,0,1,0,63,128,0,63,64,0,0,0,7,240,63,128,0,63,64,0,0,0,7,240,63,128,0,63,64,0,0,0,7,240,63,255,248,63,64,0,0,0,7,240,63,255,248,63,64,0,14,0,7,240,63,255,248,63,64,0,15,208,7,240,63,128,0,63,64,0,15,208,11,244,63,128,0,63,64,0,15,192,11,252,63,128,0,63,64,0,31,192,11,252,63,128,0,63,213,85,127,192,15,255,63,128,0,63,255,255,255,128,15,255,127,128,0,31,255,255,255,0,15,255,255,128,0,6,255,255,248,0,31,223,255,128,0,0,0,0,0,0,47,199,255,233,0,0,0,0,0,0,63,128,255,255,255,255,255,255,255,208,63,64,47,255,255,255,255,255,255,192,191,0,1,255,255,255,255,255,255,128,191,0,0,1,106,170,170,170,170,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x8d85 超 + 133,141,38,38,124,40,1,252,0,0,189,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,3,255,255,255,255,0,0,0,254,0,3,255,255,255,255,0,0,0,254,0,3,255,255,255,255,0,15,255,255,255,224,1,252,0,191,0,15,255,255,255,224,2,252,0,191,0,15,255,255,255,224,3,248,0,191,0,0,0,254,0,0,3,244,0,255,0,0,0,254,0,0,11,240,0,254,0,0,0,254,0,0,15,224,0,254,0,0,0,254,0,0,63,192,2,253,0,21,85,254,85,80,191,67,255,252,0,63,255,255,255,247,254,2,255,248,0,63,255,255,255,255,252,1,255,224,0,63,255,255,255,251,240,0,0,0,0,0,0,127,0,1,128,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,0,127,0,0,255,255,255,253,0,7,240,127,0,0,255,255,255,253,0,7,240,127,0,0,255,255,255,253,0,7,240,127,64,0,253,0,1,253,0,7,240,127,255,240,253,0,1,253,0,7,240,127,255,240,253,0,1,253,0,11,240,127,255,240,253,0,1,253,0,11,240,127,0,0,253,0,1,253,0,11,248,127,0,0,253,0,1,253,0,15,252,127,0,0,255,255,255,253,0,15,255,127,0,0,255,255,255,253,0,15,255,255,0,0,255,255,255,253,0,15,255,255,0,0,0,0,0,0,0,31,207,255,0,0,0,0,0,0,0,47,135,255,249,0,0,0,0,0,0,63,129,255,255,255,255,255,255,255,208,127,64,47,255,255,255,255,255,255,192,255,0,1,255,255,255,255,255,255,128,46,0,0,1,106,170,170,170,170,0,4,0,0,0,0,0,0,0,0,0, + // 0x8ddd 距 + 221,141,38,36,104,40,1,252,7,255,255,255,7,255,255,255,255,192,7,255,255,255,7,255,255,255,255,192,7,255,255,255,7,255,255,255,255,192,7,240,0,127,7,249,85,85,85,64,7,240,0,127,7,240,0,0,0,0,7,240,0,127,7,240,0,0,0,0,7,240,0,127,7,240,0,0,0,0,7,240,0,127,7,240,0,0,0,0,7,240,0,127,7,240,0,0,0,0,7,240,0,191,7,249,85,85,84,0,7,255,255,255,7,255,255,255,253,0,7,255,255,255,7,255,255,255,253,0,7,255,255,255,7,255,255,255,253,0,0,0,253,0,7,240,0,1,253,0,0,0,253,0,7,240,0,1,253,0,0,0,253,0,7,240,0,1,253,0,7,208,253,0,7,240,0,1,253,0,11,224,253,0,7,240,0,1,253,0,11,224,255,255,135,240,0,1,253,0,11,224,255,255,135,240,0,1,253,0,11,224,255,255,135,249,85,86,253,0,11,224,253,85,7,255,255,255,253,0,11,224,253,0,7,255,255,255,253,0,11,224,253,0,7,255,255,255,253,0,11,224,253,0,7,240,0,0,0,0,11,224,253,0,7,240,0,0,0,0,11,224,253,0,71,240,0,0,0,0,11,224,253,111,199,240,0,0,0,0,11,224,255,255,199,240,0,0,0,0,11,255,255,255,199,240,0,0,0,0,111,255,255,254,71,249,85,85,85,64,191,255,254,64,7,255,255,255,255,208,127,254,64,0,7,255,255,255,255,208,62,64,0,0,7,255,255,255,255,208,0,0,0,0,7,240,0,0,0,0,0,0,0,0,7,240,0,0,0,0, + // 0x8f6c 转 + 108,143,36,38,86,40,2,252,0,10,64,0,0,0,101,0,0,0,31,208,0,0,0,255,0,0,0,31,192,0,0,0,255,0,0,0,47,192,0,0,0,254,0,0,85,127,213,84,0,1,253,0,0,255,255,255,252,127,255,255,255,252,255,255,255,252,127,255,255,255,252,255,255,255,252,127,255,255,255,252,0,253,0,0,21,91,249,85,84,0,252,0,0,0,11,240,0,0,1,252,0,0,0,15,224,0,0,2,249,168,0,0,31,208,0,0,3,241,252,1,85,111,229,85,85,7,241,252,3,255,255,255,255,255,11,209,252,3,255,255,255,255,255,15,193,252,3,255,255,255,255,255,31,129,252,0,0,191,0,0,0,63,150,253,80,0,255,0,0,0,191,255,255,248,1,254,0,0,0,127,255,255,248,2,253,0,0,0,63,255,255,248,3,255,255,255,224,16,1,252,0,7,255,255,255,252,0,1,252,0,11,255,255,255,240,0,1,252,0,5,85,85,191,208,0,1,252,1,0,0,0,191,128,0,1,254,255,0,0,1,255,0,0,27,255,255,0,0,3,253,0,191,255,255,255,0,180,15,248,0,255,255,255,229,2,254,31,224,0,255,255,252,0,3,255,255,192,0,250,65,252,0,0,127,255,64,0,0,1,252,0,0,15,255,64,0,0,1,252,0,0,2,255,224,0,0,1,252,0,0,0,127,252,0,0,1,252,0,0,0,15,255,0,0,1,252,0,0,0,2,255,0,0,1,252,0,0,0,0,189,0,0,1,252,0,0,0,0,20,0, + // 0x8f6f 软 + 111,143,37,38,124,40,2,252,0,1,64,0,0,42,64,0,0,0,0,3,252,0,0,63,128,0,0,0,0,3,248,0,0,63,64,0,0,0,0,7,244,0,0,127,64,0,0,0,0,11,240,0,0,127,0,0,0,0,255,255,255,255,192,191,0,0,0,0,255,255,255,255,192,255,255,255,254,0,255,255,255,255,192,255,255,255,255,0,170,191,234,170,129,255,255,255,255,0,0,63,64,0,2,253,85,85,254,0,0,127,0,0,3,248,0,0,254,0,0,254,42,0,7,244,0,0,253,0,0,253,63,64,15,240,0,1,252,0,2,252,63,64,31,224,20,1,252,0,3,248,63,64,63,208,254,2,248,0,7,240,63,64,127,192,254,3,244,0,15,240,63,64,191,64,254,3,240,0,31,229,127,149,95,0,254,2,240,0,63,255,255,255,192,0,254,0,0,0,63,255,255,255,192,0,254,0,0,0,47,255,255,255,192,0,255,0,0,0,4,0,63,64,0,1,255,0,0,0,0,0,63,64,0,1,255,64,0,0,0,0,63,64,0,2,255,128,0,0,0,0,63,64,0,3,255,192,0,0,0,0,63,171,192,7,255,208,0,0,0,26,255,255,192,11,255,240,0,0,191,255,255,255,208,15,247,240,0,0,255,255,255,254,128,47,211,248,0,0,255,255,255,64,0,63,194,253,0,0,254,144,63,64,0,255,64,255,0,0,0,0,63,64,2,255,0,191,192,0,0,0,63,64,11,253,0,63,224,0,0,0,63,64,47,244,0,31,248,0,0,0,63,64,191,224,0,11,255,64,0,0,63,65,255,128,0,2,255,0,0,0,63,64,62,0,0,0,188,0,0,0,42,0,8,0,0,0,20,0, + // 0x8f74 轴 + 116,143,35,38,86,40,2,252,0,26,64,0,0,0,253,0,0,0,31,192,0,0,0,254,0,0,0,47,192,0,0,0,254,0,0,0,63,128,0,0,0,254,0,0,85,127,213,84,0,0,254,0,0,255,255,255,248,0,0,254,0,0,255,255,255,248,0,0,254,0,0,255,255,255,248,0,0,254,0,0,0,253,0,0,0,0,254,0,0,0,252,0,0,191,255,255,255,252,1,252,0,0,191,255,255,255,252,3,248,252,0,191,255,255,255,252,3,244,252,0,191,85,254,86,252,7,240,252,0,190,0,253,0,252,11,224,252,0,190,0,253,0,252,15,208,252,0,190,0,253,0,252,31,192,252,0,190,0,253,0,252,63,213,254,84,190,0,253,0,252,191,255,255,248,190,0,253,0,252,127,255,255,248,190,0,253,0,252,63,255,255,248,191,255,255,255,252,16,0,252,0,191,255,255,255,252,0,0,252,0,191,255,255,255,252,0,0,252,0,191,85,254,85,252,0,0,252,4,190,0,253,0,252,0,0,255,252,190,0,253,0,252,0,107,255,252,190,0,253,0,252,255,255,255,252,190,0,253,0,252,255,255,255,148,190,0,253,0,252,255,254,252,0,190,0,253,0,252,185,0,252,0,190,0,253,0,252,0,0,252,0,190,0,253,0,252,0,0,252,0,191,255,255,255,252,0,0,252,0,191,255,255,255,252,0,0,252,0,191,255,255,255,252,0,0,252,0,191,85,85,85,252,0,0,252,0,190,0,0,0,252,0,0,168,0,190,0,0,0,84, + // 0x8f7d 载 + 125,143,37,39,134,40,2,251,0,0,47,192,0,15,224,0,0,0,0,0,47,192,0,15,224,120,0,0,0,0,47,192,0,15,225,255,0,0,11,255,255,255,254,15,224,191,192,0,15,255,255,255,254,15,224,47,224,0,15,255,255,255,254,15,224,15,248,0,0,0,47,192,0,15,240,3,240,0,0,0,47,192,0,15,240,1,128,0,0,0,47,192,0,15,240,0,0,0,255,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,255,0,0,2,228,0,0,11,240,0,0,0,0,3,252,0,0,11,240,0,0,0,0,7,248,0,0,7,240,2,64,0,0,11,244,0,0,7,240,7,240,0,63,255,255,255,255,199,240,11,240,0,63,255,255,255,255,195,244,15,224,0,63,255,255,255,255,195,244,31,192,0,0,127,0,0,0,3,248,47,192,0,0,254,3,244,0,3,248,63,128,0,2,252,3,244,0,3,252,191,0,0,7,244,3,244,0,2,252,255,0,0,31,255,255,255,255,65,254,253,0,0,15,255,255,255,255,65,255,252,0,0,11,255,255,255,255,64,255,244,0,0,5,0,3,244,0,0,255,240,0,0,0,0,3,244,0,0,191,208,0,0,0,0,3,244,0,0,127,192,24,0,0,0,3,255,255,192,255,128,47,64,21,106,255,255,255,195,255,192,47,64,127,255,255,255,255,203,255,208,63,0,63,255,255,249,0,47,255,240,63,0,63,234,87,244,0,191,199,252,127,0,0,0,3,244,2,255,67,255,254,0,0,0,3,244,11,254,0,255,252,0,0,0,3,244,2,244,0,63,248,0,0,0,3,244,0,208,0,6,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x8f91 辑 + 145,143,38,38,124,40,1,252,0,6,64,0,0,0,0,0,0,0,0,11,240,0,10,170,170,170,164,0,0,15,240,0,15,255,255,255,248,0,0,15,224,0,15,255,255,255,248,0,0,15,224,0,15,208,0,3,248,0,63,255,255,254,15,208,0,3,248,0,63,255,255,254,15,208,0,3,248,0,63,255,255,254,15,250,170,171,248,0,42,191,170,169,15,255,255,255,248,0,0,127,0,0,15,255,255,255,248,0,0,191,0,0,0,0,0,0,0,0,0,254,127,0,0,0,0,0,0,0,0,253,127,0,0,0,0,0,0,0,1,252,127,0,255,255,255,255,255,192,2,248,127,0,255,255,255,255,255,192,3,244,127,0,255,255,255,255,255,192,7,240,127,0,15,224,0,3,244,0,15,229,191,84,15,224,0,3,244,0,47,255,255,252,15,250,170,175,244,0,31,255,255,252,15,255,255,255,244,0,15,255,255,252,15,255,255,255,244,0,4,0,127,0,15,224,0,3,244,0,0,0,127,0,15,224,0,3,244,0,0,0,127,0,15,224,0,3,244,0,0,0,127,0,15,250,170,171,244,0,0,0,127,111,15,255,255,255,244,0,0,91,255,255,15,255,255,255,244,0,127,255,255,255,15,224,0,3,244,0,63,255,255,229,15,224,0,3,244,0,63,255,255,0,15,224,0,3,244,0,46,80,127,0,15,246,175,255,255,208,0,0,127,3,255,255,255,255,255,208,0,0,127,3,255,255,255,255,255,192,0,0,127,2,255,250,149,3,244,0,0,0,127,0,64,0,0,3,244,0,0,0,127,0,0,0,0,3,244,0,0,0,127,0,0,0,0,3,244,0,0,0,106,0,0,0,0,3,240,0, + // 0x8f93 输 + 147,143,37,39,134,40,2,251,0,100,0,0,0,0,208,0,0,0,0,254,0,0,0,3,252,0,0,0,0,254,0,0,0,11,248,0,0,0,0,253,0,0,0,47,252,0,0,0,0,252,0,0,0,191,255,64,0,0,255,255,255,128,3,255,127,208,0,0,255,255,255,128,31,252,15,248,0,0,255,255,255,128,191,240,3,255,128,0,87,249,85,7,255,192,0,191,248,0,3,240,0,63,254,0,0,47,255,64,7,240,0,255,255,255,255,255,255,64,11,225,80,63,255,255,255,255,125,0,11,215,240,12,63,255,255,255,4,0,15,199,240,0,0,0,0,0,0,0,15,135,240,0,0,0,0,0,84,0,47,71,240,11,255,255,192,0,252,0,63,7,240,11,255,255,194,224,252,0,127,91,245,11,255,255,195,240,252,0,255,255,255,139,208,15,195,240,252,0,255,255,255,139,208,15,195,240,252,0,127,255,255,139,208,15,195,240,252,0,16,7,240,11,250,175,195,240,252,0,0,7,240,11,255,255,195,240,252,0,0,7,240,11,255,255,195,240,252,0,0,7,240,11,208,15,195,240,252,0,0,7,255,139,208,15,195,240,252,0,0,111,255,203,208,15,195,240,252,0,175,255,255,203,255,255,195,240,252,0,255,255,249,11,255,255,195,240,252,0,255,255,240,11,255,255,195,240,252,0,185,7,240,11,208,15,195,224,252,0,0,7,240,11,208,15,192,0,252,0,0,7,240,11,208,15,192,0,252,0,0,7,240,11,208,15,192,0,252,0,0,7,240,11,208,15,192,255,252,0,0,7,240,11,210,255,192,255,248,0,0,7,240,11,209,255,192,191,144,0,0,7,224,11,208,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x8fb9 边 + 185,143,38,38,124,40,1,251,0,240,0,0,0,127,128,0,0,0,7,252,0,0,0,127,128,0,0,0,3,255,0,0,0,127,128,0,0,0,0,255,192,0,0,127,128,0,0,0,0,127,224,0,0,127,128,0,0,0,0,31,244,0,0,127,64,0,0,0,0,11,252,42,170,255,234,170,170,0,0,3,240,127,255,255,255,255,255,0,0,0,128,127,255,255,255,255,255,0,0,0,0,127,255,255,255,255,255,0,0,0,0,0,0,255,0,0,254,0,0,0,0,0,0,255,0,0,254,0,0,0,0,0,0,255,0,0,254,0,127,255,208,0,1,254,0,0,254,0,127,255,208,0,1,253,0,0,254,0,127,255,208,0,2,253,0,1,254,0,42,191,208,0,3,252,0,1,253,0,0,31,208,0,7,252,0,1,253,0,0,31,208,0,11,248,0,1,253,0,0,31,208,0,15,240,0,2,253,0,0,31,208,0,31,240,0,2,252,0,0,31,208,0,63,208,0,2,252,0,0,31,208,0,127,192,0,3,252,0,0,31,208,0,255,64,0,3,252,0,0,31,208,3,255,0,0,3,252,0,0,31,208,15,252,0,0,11,248,0,0,31,208,127,244,1,170,175,244,0,0,31,208,255,208,0,255,255,240,0,0,47,208,127,64,0,255,255,208,0,0,191,244,28,0,0,191,254,0,0,3,255,254,0,0,0,0,0,0,0,15,255,255,208,0,0,0,0,0,0,63,244,127,254,80,0,0,5,106,224,255,208,15,255,255,255,255,255,255,208,127,128,2,255,255,255,255,255,255,192,47,0,0,31,255,255,255,255,255,192,12,0,0,0,90,170,170,169,85,0,0,0,0,0,0,0,0,0,0,0, + // 0x8fc1 迁 + 193,143,38,37,114,40,1,252,0,184,0,0,0,0,0,111,192,0,2,255,64,0,0,1,175,255,240,0,1,255,224,0,91,255,255,255,244,0,0,63,248,63,255,255,255,249,0,0,0,11,254,63,255,255,245,0,0,0,0,1,248,47,250,95,240,0,0,0,0,0,96,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,3,192,0,0,0,15,240,0,0,0,15,248,0,0,0,15,240,0,0,0,15,255,64,0,0,15,240,0,0,0,1,255,224,0,0,15,240,0,0,0,0,63,244,0,0,15,240,0,0,0,0,11,225,255,255,255,255,255,255,192,0,1,129,255,255,255,255,255,255,192,0,0,1,255,255,255,255,255,255,192,0,0,0,85,85,95,245,85,85,64,0,0,0,0,0,15,240,0,0,0,63,255,240,0,0,15,240,0,0,0,63,255,240,0,0,15,240,0,0,0,63,255,240,0,0,15,240,0,0,0,21,95,240,0,0,15,240,0,0,0,0,11,240,0,0,15,240,0,0,0,0,11,240,0,0,15,240,0,0,0,0,11,240,0,0,15,240,0,0,0,0,11,240,0,0,15,240,0,0,0,0,11,240,0,0,15,240,0,0,0,0,11,240,0,0,15,240,0,0,0,0,15,244,0,0,15,240,0,0,0,0,63,252,0,0,15,240,0,0,0,1,255,255,64,0,15,240,0,0,0,11,255,191,244,0,0,0,0,0,0,127,252,47,255,234,85,85,90,170,144,63,240,7,255,255,255,255,255,255,192,47,128,0,191,255,255,255,255,255,128,13,0,0,2,191,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0, + // 0x8fd0 运 + 208,143,38,37,114,40,1,252,0,180,0,0,0,0,0,0,0,0,2,255,0,1,85,85,85,85,84,0,2,255,208,7,255,255,255,255,248,0,0,127,248,7,255,255,255,255,248,0,0,11,253,7,255,255,255,255,248,0,0,2,248,0,0,0,0,0,0,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,128,0,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,0,47,254,0,85,85,85,85,85,85,64,7,255,192,255,255,255,255,255,255,208,0,191,240,255,255,255,255,255,255,208,0,31,224,255,255,255,255,255,255,208,0,3,128,0,3,254,0,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,0,7,248,0,32,0,0,0,0,0,0,11,244,2,252,0,0,63,255,224,0,15,240,2,254,0,0,63,255,224,0,31,224,0,255,64,0,63,255,224,0,47,192,0,63,192,0,21,111,224,0,63,128,0,31,224,0,0,15,224,0,127,64,0,15,244,0,0,15,224,0,255,0,0,27,252,0,0,15,224,0,254,107,255,255,253,0,0,15,224,191,255,255,255,255,255,0,0,15,224,191,255,255,255,255,255,64,0,15,224,127,255,255,233,80,63,192,0,15,224,122,148,0,0,0,47,128,0,127,248,0,0,0,0,0,24,0,1,255,254,0,0,0,0,0,0,0,15,255,255,224,0,0,0,0,0,0,127,248,63,255,169,85,85,85,170,144,63,224,11,255,255,255,255,255,255,192,47,64,1,255,255,255,255,255,255,128,13,0,0,6,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0, + // 0x8fd1 近 + 209,143,38,38,124,40,1,252,0,0,0,0,0,0,0,2,0,0,1,64,0,0,0,0,1,191,208,0,11,224,0,0,0,5,191,255,244,0,31,252,0,2,234,255,255,255,228,0,7,255,0,2,255,255,255,249,0,0,1,255,192,2,255,255,229,0,0,0,0,63,240,2,254,80,0,0,0,0,0,15,248,2,252,0,0,0,0,0,0,3,224,2,252,0,0,0,0,0,0,1,128,2,252,0,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,0,2,255,255,255,255,255,192,0,0,0,2,255,255,255,255,255,192,0,0,0,2,255,255,255,255,255,192,0,0,0,2,253,85,95,245,85,64,63,255,240,3,252,0,15,240,0,0,63,255,240,3,248,0,15,240,0,0,63,255,240,3,248,0,15,240,0,0,21,95,240,3,244,0,15,240,0,0,0,15,240,7,240,0,15,240,0,0,0,15,240,11,240,0,15,240,0,0,0,15,240,15,224,0,15,240,0,0,0,15,240,31,208,0,15,240,0,0,0,15,240,63,192,0,15,240,0,0,0,15,240,127,128,0,15,240,0,0,0,15,240,255,0,0,15,240,0,0,0,15,243,254,0,0,15,240,0,0,0,15,242,252,0,0,15,240,0,0,0,15,240,180,0,0,15,240,0,0,0,127,252,16,0,0,15,240,0,0,2,255,255,64,0,0,6,144,0,0,15,255,191,244,0,0,0,0,0,0,127,252,47,255,250,170,170,170,171,208,63,224,11,255,255,255,255,255,255,192,47,128,0,191,255,255,255,255,255,128,13,0,0,6,191,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0, + // 0x8fd4 返 + 212,143,38,37,114,40,1,252,1,64,0,0,0,0,0,0,0,0,11,224,0,11,255,255,255,255,255,0,31,252,0,11,255,255,255,255,255,0,7,255,0,11,255,255,255,255,255,0,1,255,192,11,245,85,85,85,85,0,0,127,224,11,240,0,0,0,0,0,0,31,244,11,240,0,0,0,0,0,0,11,224,11,240,0,0,0,0,0,0,3,64,11,240,0,0,0,0,0,0,0,0,11,245,85,85,85,64,0,0,0,0,11,255,255,255,255,248,0,0,0,0,15,255,255,255,255,244,0,0,0,0,15,255,255,255,255,240,0,0,0,0,15,251,240,0,15,240,0,0,0,0,15,243,248,0,31,208,0,63,255,208,15,226,252,0,63,192,0,63,255,208,15,225,253,0,127,128,0,63,255,208,15,208,255,0,255,0,0,21,111,208,31,208,127,194,254,0,0,0,15,208,31,192,47,215,252,0,0,0,15,208,63,192,15,255,244,0,0,0,15,208,63,192,7,255,224,0,0,0,15,208,127,64,3,255,192,0,0,0,15,208,191,0,7,255,208,0,0,0,15,208,255,0,47,255,248,0,0,0,15,209,253,0,255,255,255,64,0,0,15,211,252,27,255,195,255,248,0,0,15,219,244,255,254,0,191,255,128,0,31,242,240,127,244,0,31,255,128,0,191,248,80,47,64,0,1,255,0,2,255,255,0,4,0,0,0,29,0,15,254,255,228,0,0,0,0,0,0,127,248,63,255,234,149,86,170,170,208,63,224,11,255,255,255,255,255,255,192,47,64,1,255,255,255,255,255,255,128,13,0,0,6,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0, + // 0x8fd8 还 + 216,143,38,38,124,40,1,251,0,240,0,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,0,3,255,0,255,255,255,255,255,255,0,1,255,192,255,255,255,255,255,255,0,0,127,224,255,255,255,255,255,255,0,0,31,248,170,170,171,255,170,170,0,0,11,252,0,0,3,252,0,0,0,0,3,240,0,0,11,248,0,0,0,0,0,128,0,0,15,240,0,0,0,0,0,0,0,0,63,224,0,0,0,0,0,0,0,0,127,208,0,0,0,0,0,0,0,1,255,208,0,0,0,0,0,0,0,3,255,208,128,0,0,127,255,208,0,15,255,211,240,0,0,127,255,208,0,47,255,223,252,0,0,127,255,208,0,191,255,211,255,0,0,42,191,208,2,255,159,208,255,192,0,0,31,208,11,254,31,208,127,240,0,0,31,208,63,248,31,208,31,252,0,0,31,209,255,240,31,208,7,254,0,0,31,219,255,128,31,208,2,255,128,0,31,211,254,0,31,208,0,191,64,0,31,208,244,0,31,208,0,61,0,0,31,208,80,0,31,208,0,4,0,0,31,208,0,0,31,208,0,0,0,0,31,208,0,0,31,208,0,0,0,0,31,208,0,0,31,208,0,0,0,0,31,208,0,0,31,208,0,0,0,0,31,208,0,0,31,208,0,0,0,0,191,240,0,0,31,208,0,0,0,3,255,253,0,0,31,208,0,0,0,15,255,255,208,0,0,0,0,0,0,63,244,127,254,80,0,0,1,90,224,255,208,15,255,255,255,255,255,255,208,127,128,2,255,255,255,255,255,255,192,47,0,0,31,255,255,255,255,255,192,12,0,0,0,90,170,170,170,85,0,0,0,0,0,0,0,0,0,0,0, + // 0x8fdb 进 + 219,143,36,37,77,40,2,252,2,64,0,0,63,128,11,240,0,15,208,0,0,63,128,11,240,0,47,244,0,0,63,128,11,240,0,11,253,0,0,63,128,11,240,0,2,255,0,0,63,128,11,240,0,0,191,192,0,63,128,11,240,0,0,63,224,170,191,234,175,250,164,0,15,193,255,255,255,255,255,252,0,2,1,255,255,255,255,255,252,0,0,1,255,255,255,255,255,252,0,0,0,0,63,128,11,240,0,0,0,0,0,63,128,11,240,0,0,0,0,0,63,128,11,240,0,0,0,0,0,63,128,11,240,0,255,255,192,0,63,128,11,240,0,255,255,192,0,63,128,11,240,0,255,255,193,170,191,234,175,250,169,85,127,194,255,255,255,255,255,254,0,63,194,255,255,255,255,255,254,0,63,194,255,255,255,255,255,254,0,63,192,0,191,0,11,240,0,0,63,192,0,255,0,11,240,0,0,63,192,1,254,0,11,240,0,0,63,192,3,253,0,11,240,0,0,63,192,7,252,0,11,240,0,0,63,192,15,248,0,11,240,0,0,63,192,47,240,0,11,240,0,0,63,192,191,208,0,11,240,0,0,63,192,127,128,0,11,240,0,1,255,224,31,0,0,11,240,0,11,255,253,4,0,0,1,80,0,63,250,255,208,0,0,0,0,0,255,208,127,255,234,85,170,175,255,255,64,11,255,255,255,255,255,255,125,0,0,191,255,255,255,255,254,56,0,0,6,191,255,255,255,169,0,0,0,0,0,0,0,0,0, + // 0x8fde 连 + 222,143,38,39,134,40,1,251,0,0,0,0,2,144,0,0,0,0,1,240,0,0,3,253,0,0,0,0,7,252,0,0,3,252,0,0,0,0,2,255,0,0,11,248,0,0,0,0,0,255,128,255,255,255,255,255,255,0,0,63,208,255,255,255,255,255,255,0,0,31,240,255,255,255,255,255,255,0,0,11,244,0,127,192,0,0,0,0,0,3,208,0,127,64,0,0,0,0,0,1,0,0,255,1,253,0,0,0,0,0,0,1,254,1,253,0,0,0,0,0,0,3,252,1,253,0,0,0,0,0,0,7,248,1,253,0,0,0,0,0,0,15,240,1,253,0,0,0,63,255,208,63,255,255,255,255,248,0,63,255,208,63,255,255,255,255,248,0,63,255,208,31,255,255,255,255,248,0,21,111,208,14,149,86,254,85,84,0,0,15,208,0,0,1,253,0,0,0,0,15,208,0,0,1,253,0,0,0,0,15,208,0,0,1,253,0,0,0,0,15,208,0,0,1,253,0,0,0,0,15,208,170,170,170,254,170,170,64,0,15,209,255,255,255,255,255,255,64,0,15,209,255,255,255,255,255,255,64,0,15,209,255,255,255,255,255,255,64,0,15,208,0,0,1,253,0,0,0,0,15,208,0,0,1,253,0,0,0,0,15,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,191,240,0,0,1,253,0,0,0,3,255,253,0,0,1,253,0,0,0,15,255,255,208,0,1,253,0,0,0,63,244,127,254,80,0,0,5,90,224,191,208,15,255,255,255,255,255,255,208,127,128,2,255,255,255,255,255,255,192,31,0,0,31,255,255,255,255,255,192,9,0,0,0,90,170,170,170,85,0,0,0,0,0,0,0,0,0,0,0, + // 0x8ff7 迷 + 247,143,38,37,114,40,1,252,1,64,0,0,0,15,224,0,0,0,7,224,0,6,0,15,224,0,224,0,31,252,0,63,128,15,224,2,253,0,11,255,0,47,192,15,224,3,252,0,1,255,192,15,224,15,224,7,244,0,0,63,240,11,240,15,224,15,240,0,0,15,248,3,248,15,224,31,208,0,0,7,224,3,252,15,224,63,192,0,0,1,128,1,253,15,224,127,64,0,0,0,0,0,244,15,224,126,0,0,0,0,0,0,64,15,224,0,0,0,0,0,0,0,0,15,224,0,0,0,0,0,2,255,255,255,255,255,255,128,0,0,2,255,255,255,255,255,255,128,0,0,2,255,255,255,255,255,255,128,63,255,240,85,86,255,255,85,85,0,63,255,240,0,2,255,255,64,0,0,63,255,240,0,3,255,255,192,0,0,21,95,240,0,15,255,255,224,0,0,0,15,240,0,47,223,231,244,0,0,0,15,240,0,127,143,227,253,0,0,0,15,240,1,255,15,224,255,0,0,0,15,240,7,253,15,224,127,208,0,0,15,240,31,248,15,224,47,244,0,0,15,240,191,240,15,224,15,254,0,0,15,243,255,192,15,224,3,255,192,0,15,242,255,0,15,224,0,255,64,0,15,240,184,0,15,224,0,45,0,0,15,240,32,0,15,224,0,4,0,0,127,252,0,0,15,224,0,0,0,2,255,255,64,0,15,224,0,0,0,15,255,191,244,0,0,0,0,0,0,127,252,47,255,250,170,170,170,171,208,63,224,11,255,255,255,255,255,255,192,47,128,0,191,255,255,255,255,255,128,13,0,0,6,191,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0, + // 0x9000 退 + 0,144,38,37,114,40,1,252,0,64,0,0,0,0,0,0,0,0,3,224,0,3,255,255,255,255,208,0,15,252,0,3,255,255,255,255,208,0,7,255,64,3,255,255,255,255,208,0,0,255,208,3,248,0,0,15,208,0,0,63,244,3,248,0,0,15,208,0,0,15,252,3,248,0,0,15,208,0,0,3,240,3,255,255,255,255,208,0,0,0,128,3,255,255,255,255,208,0,0,0,0,3,255,255,255,255,208,0,0,0,0,3,248,0,0,15,208,0,0,0,0,3,248,0,0,15,208,0,0,0,0,3,248,0,0,15,208,0,0,0,0,3,255,255,255,255,208,0,0,0,0,3,255,255,255,255,208,0,63,255,240,3,255,255,255,255,224,0,63,255,240,3,248,7,244,0,120,0,63,255,240,3,248,3,248,1,255,0,21,95,240,3,248,1,252,11,255,0,0,15,240,3,248,0,254,63,244,0,0,15,240,3,248,0,191,255,192,0,0,15,240,3,248,0,63,253,0,0,0,15,240,3,248,0,47,240,0,0,0,15,240,3,248,0,15,248,0,0,0,15,240,3,248,27,231,255,0,0,0,15,240,3,255,255,241,255,208,0,0,15,240,111,255,255,240,127,253,0,0,15,240,191,255,254,64,31,255,192,0,15,240,127,254,64,0,7,255,0,0,127,252,62,64,0,0,0,125,0,2,255,255,64,0,0,0,0,4,0,15,255,191,244,0,0,0,0,0,0,127,252,47,255,250,170,170,170,171,208,63,224,11,255,255,255,255,255,255,192,47,128,0,191,255,255,255,255,255,128,13,0,0,6,191,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0, + // 0x9009 选 + 9,144,37,39,134,40,2,251,0,0,0,0,0,10,144,0,0,0,0,0,0,0,0,15,224,0,0,0,15,0,0,3,248,15,224,0,0,0,127,208,0,3,248,15,224,0,0,0,63,244,0,7,244,15,224,0,0,0,15,253,0,15,240,31,224,0,0,0,3,255,0,31,255,255,255,255,244,0,0,255,192,63,255,255,255,255,244,0,0,63,192,127,255,255,255,255,244,0,0,30,0,255,0,15,224,0,0,0,0,0,3,253,0,15,224,0,0,0,0,0,1,252,0,15,224,0,0,0,0,0,0,32,0,15,224,0,0,0,0,0,0,0,0,15,224,0,0,0,0,0,3,255,255,255,255,255,255,0,0,0,3,255,255,255,255,255,255,0,255,255,67,255,255,255,255,255,255,0,255,255,64,0,47,224,127,128,0,0,255,255,64,0,47,192,63,128,0,0,85,191,64,0,63,192,63,128,0,0,0,63,64,0,63,192,63,128,0,0,0,63,64,0,127,128,63,128,0,0,0,63,64,0,191,64,63,128,0,0,0,63,64,0,255,0,63,128,52,0,0,63,64,3,254,0,63,128,63,64,0,63,64,11,252,0,63,128,63,64,0,63,64,47,244,0,63,128,63,0,0,63,65,255,224,0,63,213,191,0,0,63,79,255,128,0,63,255,254,0,0,63,67,253,0,0,47,255,253,0,0,63,225,224,0,0,11,255,244,0,0,255,253,0,0,0,0,0,0,0,11,255,255,128,0,0,0,0,0,0,47,253,127,254,64,0,0,5,90,64,255,224,11,255,255,255,255,255,255,0,191,128,1,255,255,255,255,255,255,0,62,0,0,27,255,255,255,255,254,0,8,0,0,0,5,85,85,85,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x901f 速 + 31,144,38,38,124,40,1,252,0,0,0,0,0,11,224,0,0,0,1,128,0,0,0,15,224,0,0,0,11,240,0,0,0,15,224,0,0,0,31,253,0,0,0,15,224,0,0,0,7,255,64,255,255,255,255,255,255,128,0,255,208,255,255,255,255,255,255,128,0,63,244,255,255,255,255,255,255,128,0,15,248,0,0,15,240,0,0,0,0,3,208,0,0,15,224,0,0,0,0,1,64,0,0,15,224,0,0,0,0,0,0,47,255,255,255,255,252,0,0,0,0,47,255,255,255,255,252,0,0,0,0,47,255,255,255,255,252,0,0,0,0,47,128,15,224,2,252,0,0,0,0,47,128,15,224,2,252,0,0,0,0,47,128,15,224,2,252,0,63,255,240,47,128,15,224,2,252,0,63,255,240,47,128,15,224,2,252,0,63,255,240,47,255,255,255,255,252,0,21,95,240,47,255,255,255,255,252,0,0,15,240,47,255,255,255,255,252,0,0,15,240,0,0,255,254,0,0,0,0,15,240,0,3,255,255,128,0,0,0,15,240,0,15,255,255,224,0,0,0,15,240,0,63,223,231,252,0,0,0,15,240,1,255,79,225,255,64,0,0,15,240,11,253,15,224,127,240,0,0,15,240,127,244,15,224,31,254,0,0,15,242,255,208,15,224,7,255,128,0,15,240,255,0,15,224,0,254,0,0,127,252,52,0,15,224,0,28,0,2,255,255,64,0,15,224,0,0,0,15,255,191,244,0,0,0,0,0,0,127,252,47,255,250,170,170,170,171,208,63,224,11,255,255,255,255,255,255,192,47,128,0,191,255,255,255,255,255,128,13,0,0,6,191,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0, + // 0x90e8 部 + 232,144,38,38,124,40,1,252,0,0,21,64,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,1,85,85,88,0,0,0,47,192,0,7,255,255,255,128,0,0,47,192,0,7,255,255,255,208,31,255,255,255,255,135,255,255,255,192,31,255,255,255,255,135,244,0,191,64,31,255,255,255,255,135,244,0,255,0,0,4,0,1,64,7,244,1,254,0,0,189,0,3,244,7,244,2,252,0,0,191,0,7,240,7,244,3,252,0,0,63,0,15,224,7,244,7,244,0,0,63,64,15,208,7,244,15,240,0,0,47,128,31,192,7,244,15,224,0,0,47,128,47,64,7,244,47,192,0,21,105,85,86,85,71,244,63,128,0,127,255,255,255,255,199,244,127,128,0,127,255,255,255,255,199,244,63,208,0,127,255,255,255,255,199,244,15,240,0,0,0,0,0,0,7,244,3,252,0,0,0,0,0,0,7,244,1,253,0,0,0,0,0,0,7,244,0,255,0,0,85,85,85,84,7,244,0,127,0,3,255,255,255,252,7,244,0,63,128,3,255,255,255,252,7,244,0,63,128,3,255,255,255,252,7,244,0,63,192,3,248,0,1,252,7,244,0,63,192,3,248,0,1,252,7,244,0,63,128,3,248,0,1,252,7,244,0,255,128,3,248,0,1,252,7,244,255,255,64,3,248,0,1,252,7,244,191,255,0,3,248,0,1,252,7,244,127,252,0,3,255,255,255,252,7,244,42,144,0,3,255,255,255,252,7,244,0,0,0,3,255,255,255,252,7,244,0,0,0,3,252,0,2,252,7,244,0,0,0,3,248,0,1,252,7,244,0,0,0,2,164,0,0,84,7,240,0,0,0, + // 0x914d 配 + 77,145,37,37,114,40,2,252,21,85,85,85,80,0,0,0,0,0,255,255,255,255,240,255,255,255,252,0,255,255,255,255,240,255,255,255,252,0,255,255,255,255,240,255,255,255,252,0,0,15,75,192,0,170,170,171,252,0,0,15,75,192,0,0,0,1,252,0,0,15,75,192,0,0,0,1,252,0,0,15,75,192,0,0,0,1,252,0,63,255,255,255,208,0,0,1,252,0,63,255,255,255,208,0,0,1,252,0,63,255,255,255,208,0,0,1,252,0,63,11,79,15,208,0,0,1,252,0,63,11,15,11,208,0,0,1,252,0,63,11,15,11,208,170,170,171,252,0,63,11,15,11,208,255,255,255,252,0,63,11,15,11,208,255,255,255,252,0,63,15,15,11,208,255,255,255,252,0,63,15,15,11,208,254,0,1,252,0,63,30,15,11,208,254,0,1,252,0,63,60,15,255,208,254,0,1,252,0,63,184,7,255,208,254,0,0,0,0,63,112,0,11,208,254,0,0,0,0,63,0,0,11,208,254,0,0,0,0,63,0,0,11,208,254,0,0,0,0,63,170,170,175,208,254,0,0,0,0,63,255,255,255,208,254,0,0,0,0,63,255,255,255,208,254,0,0,16,0,63,0,0,11,208,254,0,0,62,0,63,0,0,11,208,254,0,0,63,128,63,0,0,11,208,254,0,0,63,64,63,0,0,11,208,254,0,0,63,64,63,255,255,255,208,254,0,0,127,0,63,255,255,255,208,255,0,0,255,0,63,255,255,255,208,255,255,255,254,0,63,0,0,11,208,127,255,255,253,0,63,0,0,11,208,47,255,255,248,0,42,0,0,0,0,1,85,85,64,0, + // 0x91ca 释 + 202,145,38,37,114,40,1,252,0,0,5,189,0,0,0,0,0,0,1,107,255,255,47,255,255,255,254,0,63,255,255,254,47,255,255,255,255,128,63,255,253,0,47,255,255,255,255,0,26,151,248,0,6,253,85,86,254,0,0,3,248,0,0,253,0,7,252,0,11,3,248,31,64,127,0,15,240,0,31,131,248,63,64,63,192,63,208,0,15,195,248,63,0,15,241,255,64,0,7,227,248,189,0,7,255,253,0,0,3,243,248,252,0,2,255,248,0,0,2,243,249,240,0,1,255,240,0,0,0,3,248,0,0,31,255,253,0,0,0,3,248,0,1,255,255,255,208,0,63,255,255,254,111,255,208,255,254,64,63,255,255,255,255,253,0,31,255,224,63,255,255,254,255,208,0,2,255,192,0,11,252,0,56,0,127,64,27,64,0,15,255,0,0,0,127,64,0,0,0,47,255,192,0,0,127,64,0,0,0,63,255,240,15,255,255,255,252,0,0,191,251,252,15,255,255,255,252,0,1,255,249,255,15,255,255,255,252,0,3,247,248,127,5,85,127,149,84,0,11,243,248,44,0,0,127,64,0,0,31,211,248,4,0,0,127,64,0,0,63,195,248,0,0,0,127,64,0,0,127,67,248,0,255,255,255,255,255,192,63,3,248,0,255,255,255,255,255,192,28,3,248,0,255,255,255,255,255,192,4,3,248,0,85,85,191,149,85,64,0,3,248,0,0,0,127,64,0,0,0,3,248,0,0,0,127,64,0,0,0,3,248,0,0,0,127,64,0,0,0,3,248,0,0,0,127,64,0,0,0,3,248,0,0,0,127,64,0,0,0,2,248,0,0,0,127,64,0,0, + // 0x91cd 重 + 205,145,36,37,77,40,2,253,0,0,0,0,0,0,21,180,0,0,0,0,85,170,255,255,252,0,1,255,255,255,255,255,255,254,0,0,255,255,255,255,255,250,80,0,0,255,255,255,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,106,170,170,255,170,170,169,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,0,254,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,85,85,255,85,85,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,0,254,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,170,170,255,170,170,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x91cf 量 + 207,145,36,36,68,40,2,253,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,192,0,0,0,3,252,0,0,63,128,0,0,0,3,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,128,0,0,0,3,252,0,0,63,128,0,0,0,3,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,170,170,170,170,170,170,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,0,255,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,0,255,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,1,170,170,170,255,170,170,170,64,2,255,255,255,255,255,255,255,128,2,255,255,255,255,255,255,255,128,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x9488 针 + 136,148,37,38,124,40,1,252,0,9,0,0,0,0,42,64,0,0,0,15,208,0,0,0,63,128,0,0,0,47,192,0,0,0,63,128,0,0,0,63,128,0,0,0,63,128,0,0,0,191,149,85,0,0,63,128,0,0,1,255,255,255,0,0,63,128,0,0,3,255,255,255,0,0,63,128,0,0,15,255,255,255,0,0,63,128,0,0,47,240,0,0,0,0,63,128,0,0,127,192,0,0,0,0,63,128,0,0,127,128,0,0,0,0,63,128,0,0,63,0,0,0,0,0,63,128,0,0,30,255,255,252,0,0,63,128,0,0,2,255,255,252,255,255,255,255,255,192,2,255,255,252,255,255,255,255,255,192,0,3,248,0,255,255,255,255,255,192,0,3,248,0,255,255,255,255,255,192,0,3,248,0,0,0,63,128,0,0,0,3,248,0,0,0,63,128,0,0,0,3,248,0,0,0,63,128,0,0,31,255,255,254,0,0,63,128,0,0,31,255,255,254,0,0,63,128,0,0,31,255,255,254,0,0,63,128,0,0,5,87,253,84,0,0,63,128,0,0,0,3,248,0,0,0,63,128,0,0,0,3,248,0,0,0,63,128,0,0,0,3,248,0,0,0,63,128,0,0,0,3,248,0,0,0,63,128,0,0,0,3,248,0,0,0,63,128,0,0,0,3,248,7,64,0,63,128,0,0,0,3,248,127,64,0,63,128,0,0,0,3,255,255,128,0,63,128,0,0,0,3,255,255,0,0,63,128,0,0,0,15,255,244,0,0,63,128,0,0,0,47,255,64,0,0,63,128,0,0,0,15,244,0,0,0,63,128,0,0,0,11,128,0,0,0,63,128,0,0,0,1,0,0,0,0,42,128,0,0, + // 0x94ae 钮 + 174,148,38,38,124,40,1,252,0,36,0,0,0,0,0,0,0,0,0,63,64,0,0,0,0,0,0,0,0,191,0,0,191,255,255,255,254,0,0,255,0,0,191,255,255,255,254,0,1,253,0,0,191,255,255,255,254,0,2,255,255,253,85,91,249,85,253,0,3,255,255,253,0,7,244,0,253,0,11,255,255,253,0,7,240,0,253,0,31,208,0,0,0,11,240,1,253,0,63,192,0,0,0,11,240,1,252,0,191,64,0,0,0,15,240,1,252,0,127,0,0,0,0,15,240,2,252,0,63,255,255,244,0,15,224,2,252,0,23,255,255,244,0,15,224,2,252,0,3,255,255,244,0,15,208,2,252,0,1,91,245,80,0,15,208,3,252,0,0,7,240,0,127,255,255,255,248,0,0,7,240,0,127,255,255,255,248,0,0,7,240,0,127,255,255,255,248,0,0,7,240,0,106,191,234,171,248,0,63,255,255,253,0,63,192,3,244,0,63,255,255,253,0,63,128,3,244,0,63,255,255,253,0,63,128,7,244,0,21,91,245,84,0,63,64,7,240,0,0,7,240,0,0,127,64,11,240,0,0,7,240,0,0,127,0,11,240,0,0,7,240,0,0,191,0,11,240,0,0,7,240,0,0,191,0,15,240,0,0,7,240,4,0,255,0,15,224,0,0,7,240,184,0,254,0,15,224,0,0,7,247,252,0,253,0,15,224,0,0,7,255,252,1,253,0,15,208,0,0,11,255,224,1,252,0,31,208,0,0,15,255,95,255,255,255,255,255,208,0,63,248,31,255,255,255,255,255,208,0,127,192,31,255,255,255,255,255,208,0,30,0,26,170,170,170,170,170,128,0,4,0,0,0,0,0,0,0,0, + // 0x9519 错 + 25,149,37,38,124,40,1,252,0,8,0,0,0,190,0,127,0,0,0,31,192,0,0,190,0,127,0,0,0,63,128,0,0,190,0,127,0,0,0,127,64,0,0,190,0,127,0,0,0,255,0,0,0,190,0,127,0,0,1,255,255,252,127,255,255,255,255,64,3,255,255,252,127,255,255,255,255,64,11,255,255,252,127,255,255,255,255,64,31,250,170,168,0,191,0,191,0,0,127,192,0,0,0,190,0,127,0,0,127,64,0,0,0,190,0,127,0,0,47,0,0,0,0,190,0,127,0,0,30,255,255,248,0,190,0,127,0,0,2,255,255,248,85,255,85,191,85,64,2,255,255,249,255,255,255,255,255,192,0,91,245,81,255,255,255,255,255,192,0,3,240,1,255,255,255,255,255,192,0,3,240,0,0,0,0,0,0,0,0,3,240,0,0,0,0,0,0,0,0,3,240,0,0,0,0,0,0,0,31,255,255,253,15,255,255,255,248,0,31,255,255,253,15,255,255,255,248,0,31,255,255,253,15,255,255,255,248,0,5,87,245,84,15,208,0,2,248,0,0,3,240,0,15,208,0,2,248,0,0,3,240,0,15,208,0,2,248,0,0,3,240,0,15,255,255,255,248,0,0,3,240,0,15,255,255,255,248,0,0,3,240,0,15,255,255,255,248,0,0,3,240,40,15,208,0,2,248,0,0,3,246,252,15,208,0,2,248,0,0,7,255,252,15,208,0,2,248,0,0,11,255,248,15,208,0,2,248,0,0,31,255,128,15,255,255,255,248,0,0,63,252,0,15,255,255,255,248,0,0,31,208,0,15,255,255,255,248,0,0,14,0,0,15,208,0,2,248,0,0,0,0,0,10,144,0,1,84,0, + // 0x955c 镜 + 92,149,38,38,124,40,1,252,0,4,0,0,0,0,109,0,0,0,0,47,192,0,0,0,255,0,0,0,0,63,192,0,0,0,127,64,0,0,0,127,64,0,63,255,255,255,255,0,0,255,85,80,63,255,255,255,255,0,1,255,255,248,63,255,255,255,255,0,3,255,255,248,0,108,0,10,64,0,11,255,255,248,0,253,0,47,192,0,31,240,0,0,0,191,0,63,128,0,127,192,0,0,0,63,0,127,0,0,127,128,0,1,255,255,255,255,255,192,63,0,0,1,255,255,255,255,255,192,31,255,255,241,255,255,255,255,255,192,2,255,255,240,0,0,0,0,0,0,2,255,255,240,0,0,0,0,0,0,0,91,245,80,47,255,255,255,253,0,0,11,240,0,47,255,255,255,253,0,0,11,240,0,47,213,85,85,253,0,0,11,240,0,47,128,0,0,253,0,0,11,240,0,47,128,0,0,253,0,47,255,255,252,47,255,255,255,253,0,47,255,255,252,47,255,255,255,253,0,47,255,255,252,47,213,85,85,253,0,5,91,245,84,47,128,0,0,253,0,0,11,240,0,47,213,85,85,253,0,0,11,240,0,47,255,255,255,253,0,0,11,240,0,47,255,255,255,253,0,0,11,240,0,0,63,65,252,0,0,0,11,240,24,0,127,1,252,0,0,0,11,241,252,0,127,1,252,0,0,0,11,251,252,0,255,1,252,0,0,0,15,255,252,1,254,1,252,7,208,0,31,255,208,7,252,1,252,7,224,0,63,254,0,47,244,1,252,11,208,0,127,244,11,255,224,1,255,191,192,0,63,128,15,255,64,0,255,255,192,0,29,0,7,248,0,0,127,255,0,0,0,0,2,64,0,0,0,0,0, + // 0x957f 长 + 127,149,36,38,86,40,2,252,0,0,169,0,0,0,0,0,0,0,1,253,0,0,0,0,208,0,0,1,253,0,0,0,3,253,0,0,1,253,0,0,0,15,253,0,0,1,253,0,0,0,127,244,0,0,1,253,0,0,2,255,208,0,0,1,253,0,0,15,255,64,0,0,1,253,0,0,191,252,0,0,0,1,253,0,7,255,224,0,0,0,1,253,0,127,255,64,0,0,0,1,253,7,255,252,0,0,0,0,1,253,11,255,208,0,0,0,0,1,253,2,254,0,0,0,0,0,1,253,0,160,0,0,0,0,0,1,253,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,106,171,255,170,191,234,170,170,169,0,1,253,0,31,208,0,0,0,0,1,253,0,15,240,0,0,0,0,1,253,0,7,248,0,0,0,0,1,253,0,3,252,0,0,0,0,1,253,0,1,255,0,0,0,0,1,253,0,0,255,128,0,0,0,1,253,0,0,127,224,0,0,0,1,253,0,0,47,248,0,0,0,1,253,0,0,15,254,0,0,0,1,253,0,0,3,255,208,0,0,1,253,0,27,128,255,248,0,0,1,253,27,255,128,63,255,128,0,2,255,255,255,192,11,255,253,0,7,255,255,255,128,1,255,255,0,15,255,255,144,0,0,47,253,0,7,255,144,0,0,0,2,248,0,3,228,0,0,0,0,0,16,0,1,0,0,0,0,0,0,0, + // 0x95ed 闭 + 237,149,34,37,77,40,3,252,7,128,0,0,0,0,0,0,0,47,224,1,85,85,85,85,85,80,15,248,3,255,255,255,255,255,224,7,253,3,255,255,255,255,255,224,1,255,3,255,255,255,255,255,224,0,191,128,0,0,0,0,15,224,0,62,0,0,0,0,0,15,224,0,4,0,0,2,252,0,15,224,21,0,0,0,3,252,0,15,224,191,0,0,0,3,252,0,15,224,191,0,0,0,3,252,0,15,224,191,0,0,0,3,252,0,15,224,191,2,170,170,171,254,170,15,224,191,3,255,255,255,255,255,15,224,191,3,255,255,255,255,255,15,224,191,3,255,255,255,255,255,15,224,191,0,0,0,127,252,0,15,224,191,0,0,0,255,252,0,15,224,191,0,0,3,255,252,0,15,224,191,0,0,15,255,252,0,15,224,191,0,0,63,243,252,0,15,224,191,0,0,255,195,252,0,15,224,191,0,3,255,67,252,0,15,224,191,0,31,253,3,252,0,15,224,191,0,191,244,3,252,0,15,224,191,7,255,192,3,252,0,15,224,191,47,254,0,3,252,0,15,224,191,15,244,0,3,252,0,15,224,191,3,128,0,3,252,0,15,224,191,0,0,26,171,252,0,15,224,191,0,0,31,255,248,0,15,224,191,0,0,15,255,244,0,15,224,191,0,0,11,254,128,0,15,224,191,0,0,0,0,0,47,255,224,191,0,0,0,0,0,31,255,208,191,0,0,0,0,0,15,255,64,106,0,0,0,0,0,5,80,0, + // 0x95f2 闲 + 242,149,34,37,77,40,3,252,3,208,0,0,0,0,0,0,0,15,240,2,255,255,255,255,255,224,7,252,2,255,255,255,255,255,224,2,255,2,255,255,255,255,255,224,0,191,193,85,85,85,85,95,224,0,63,224,0,0,0,0,15,224,0,15,240,0,0,0,0,15,224,0,7,208,0,0,0,0,15,224,170,2,0,2,248,0,0,15,224,254,0,0,2,248,0,0,15,224,254,0,0,2,248,0,0,15,224,254,0,0,2,248,0,0,15,224,254,0,0,2,248,0,0,15,224,254,7,255,255,255,255,255,15,224,254,7,255,255,255,255,255,15,224,254,7,255,255,255,255,255,15,224,254,0,0,31,255,64,0,15,224,254,0,0,63,255,192,0,15,224,254,0,0,127,255,240,0,15,224,254,0,0,255,255,252,0,15,224,254,0,2,255,250,254,0,15,224,254,0,7,246,248,255,128,15,224,254,0,31,226,248,63,208,15,224,254,0,127,194,248,15,240,15,224,254,1,255,66,248,7,252,15,224,254,7,254,2,248,2,254,15,224,254,31,248,2,248,0,252,15,224,254,11,224,2,248,0,112,15,224,254,3,128,2,248,0,0,15,224,254,0,0,2,248,0,0,15,224,254,0,0,2,248,0,0,15,224,254,0,0,2,248,0,0,15,224,254,0,0,2,248,0,0,15,224,254,0,0,1,84,2,255,255,224,254,0,0,0,0,1,255,255,192,254,0,0,0,0,0,255,255,64,254,0,0,0,0,0,106,148,0, + // 0x95f4 间 + 244,149,34,37,77,40,3,252,7,128,0,0,0,0,0,0,0,47,224,1,85,85,85,85,85,80,15,248,3,255,255,255,255,255,224,7,253,3,255,255,255,255,255,224,1,255,3,255,255,255,255,255,224,0,191,128,0,0,0,0,15,224,0,62,0,0,0,0,0,15,224,0,20,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,191,64,0,0,0,0,0,15,224,191,64,0,0,0,0,0,15,224,191,64,47,255,255,255,192,15,224,191,64,47,255,255,255,192,15,224,191,64,47,255,255,255,192,15,224,191,64,47,128,0,47,192,15,224,191,64,47,128,0,47,192,15,224,191,64,47,128,0,47,192,15,224,191,64,47,128,0,47,192,15,224,191,64,47,128,0,47,192,15,224,191,64,47,255,255,255,192,15,224,191,64,47,255,255,255,192,15,224,191,64,47,255,255,255,192,15,224,191,64,47,128,0,47,192,15,224,191,64,47,128,0,47,192,15,224,191,64,47,128,0,47,192,15,224,191,64,47,128,0,47,192,15,224,191,64,47,128,0,47,192,15,224,191,64,47,255,255,255,192,15,224,191,64,47,255,255,255,192,15,224,191,64,47,255,255,255,192,15,224,191,64,0,0,0,0,0,15,224,191,64,0,0,0,0,0,15,224,191,64,0,0,0,0,0,15,224,191,64,0,0,0,0,15,255,224,191,64,0,0,0,0,11,255,208,191,64,0,0,0,0,7,255,64,106,0,0,0,0,0,1,64,0, + // 0x9608 阈 + 8,150,34,38,86,40,3,252,0,144,0,0,0,0,0,0,0,3,240,0,85,85,85,85,85,64,7,252,2,255,255,255,255,255,208,2,255,2,255,255,255,255,255,208,0,255,130,255,255,255,255,255,208,0,63,208,0,0,0,0,15,208,0,31,240,0,0,0,0,15,208,0,11,244,0,31,130,0,15,208,0,3,192,0,31,143,192,15,208,191,0,0,0,31,139,240,15,208,191,0,0,0,31,130,244,15,208,191,0,0,0,15,128,128,15,208,191,15,255,255,255,255,255,15,208,191,15,255,255,255,255,255,15,208,191,15,255,255,255,255,255,15,208,191,0,0,0,15,192,0,15,208,191,0,0,0,15,192,144,15,208,191,3,255,255,15,192,252,15,208,191,3,255,255,11,193,248,15,208,191,3,224,31,11,210,240,15,208,191,3,224,31,7,211,240,15,208,191,3,224,31,7,231,224,15,208,191,3,224,31,3,255,192,15,208,191,3,255,255,3,255,128,15,208,191,3,255,255,3,255,0,15,208,191,0,0,0,2,254,0,15,208,191,0,0,0,1,253,11,15,208,191,0,0,107,194,252,11,143,208,191,6,255,255,199,254,15,143,208,191,15,255,255,223,255,79,79,208,191,15,255,144,127,175,255,15,208,191,10,64,1,254,15,254,15,208,191,0,0,3,248,3,252,15,208,191,0,0,0,224,0,80,31,208,191,0,0,0,0,1,255,255,208,191,0,0,0,0,0,255,255,192,191,0,0,0,0,0,191,254,0,106,0,0,0,0,0,20,0,0, + // 0x964d 降 + 77,150,36,38,86,40,3,252,0,0,0,0,0,148,0,0,0,0,0,0,0,1,254,0,0,0,191,255,248,0,3,252,0,0,0,191,255,255,0,7,248,0,0,0,191,255,254,0,15,255,255,254,0,190,86,253,0,63,255,255,255,64,190,1,252,0,255,255,255,255,0,190,3,248,3,255,64,1,253,0,190,3,244,15,255,192,3,252,0,190,7,240,127,255,240,15,244,0,190,11,224,255,135,248,63,208,0,190,15,208,61,1,255,255,128,0,190,31,192,4,0,191,254,0,0,190,47,128,0,0,63,252,0,0,190,63,64,0,1,255,255,128,0,190,31,192,0,31,255,255,248,0,190,11,240,6,255,248,47,255,228,190,3,244,191,255,192,7,255,253,190,2,252,191,253,0,254,111,248,190,0,252,63,128,0,254,1,176,190,0,253,20,0,0,254,0,0,190,0,253,31,255,255,255,255,224,190,0,254,31,255,255,255,255,224,190,0,253,31,255,255,255,255,224,190,1,253,0,254,0,254,0,0,190,191,252,0,254,0,254,0,0,190,63,248,0,254,0,254,0,0,190,63,208,0,254,0,254,0,0,190,0,0,0,254,0,254,0,0,190,0,1,255,255,255,255,255,252,190,0,1,255,255,255,255,255,252,190,0,1,255,255,255,255,255,252,190,0,0,0,0,0,254,0,0,190,0,0,0,0,0,254,0,0,190,0,0,0,0,0,254,0,0,190,0,0,0,0,0,254,0,0,190,0,0,0,0,0,254,0,0,189,0,0,0,0,0,254,0,0, + // 0x9650 限 + 80,150,35,36,68,40,3,252,191,255,254,7,255,255,255,255,192,191,255,255,199,255,255,255,255,192,191,255,255,135,255,255,255,255,192,191,85,191,7,244,0,0,63,192,191,0,191,7,244,0,0,63,192,191,0,254,7,244,0,0,63,192,191,1,252,7,244,0,0,63,192,191,2,252,7,244,0,0,63,192,191,3,244,7,255,255,255,255,192,191,3,240,7,255,255,255,255,192,191,11,224,7,255,255,255,255,192,191,15,208,7,244,0,0,63,192,191,31,192,7,244,0,0,63,192,191,15,240,7,244,0,0,63,192,191,3,248,7,244,0,0,63,192,191,1,252,7,255,255,255,255,192,191,0,254,7,255,255,255,255,192,191,0,127,7,255,255,255,255,192,191,0,63,7,244,15,208,0,0,191,0,63,71,244,11,224,3,64,191,0,63,71,244,7,240,15,224,191,0,63,71,244,3,244,47,240,191,0,127,71,244,2,248,255,192,191,21,255,7,244,1,255,255,0,191,63,255,7,244,0,255,248,0,191,47,253,7,244,0,191,208,0,191,31,224,7,244,0,63,192,0,191,0,0,7,244,0,47,224,0,191,0,0,7,244,0,15,248,0,191,0,0,7,245,111,199,253,0,191,0,0,11,255,255,195,255,64,191,0,6,255,255,255,208,255,224,191,0,7,255,255,249,0,63,252,191,0,3,255,249,0,0,15,248,191,0,2,249,0,0,0,2,240,190,0,0,0,0,0,0,0,64, + // 0x9664 除 + 100,150,36,38,86,40,3,252,0,0,0,0,0,42,64,0,0,0,0,0,0,0,191,208,0,0,191,255,248,0,1,255,240,0,0,191,255,255,0,3,255,252,0,0,191,255,254,0,15,246,254,0,0,190,86,253,0,47,224,255,128,0,190,1,252,0,191,192,63,224,0,190,3,248,2,255,0,15,248,0,190,3,244,11,252,0,7,255,0,190,7,240,47,240,0,0,255,208,190,11,225,255,192,0,0,63,248,190,15,219,255,0,0,0,15,254,190,31,195,255,255,255,255,255,252,190,47,129,226,255,255,255,248,116,190,63,128,66,255,255,255,248,0,190,31,192,0,0,63,128,0,0,190,11,240,0,0,63,128,0,0,190,3,244,0,0,63,128,0,0,190,2,252,0,0,63,128,0,0,190,0,252,0,0,63,192,0,0,190,0,253,63,255,255,255,255,224,190,0,253,63,255,255,255,255,224,190,0,254,63,255,255,255,255,224,190,0,253,0,0,63,128,0,0,190,1,253,0,0,63,128,0,0,190,191,252,7,224,63,129,244,0,190,63,248,15,240,63,130,252,0,190,63,208,15,208,63,128,255,0,190,0,0,63,192,63,128,127,64,190,0,0,127,64,63,128,63,192,190,0,0,255,0,63,128,31,224,190,0,2,253,0,63,128,11,240,190,0,7,252,0,63,128,3,248,190,0,15,240,0,63,128,3,252,190,0,3,208,21,127,128,1,224,190,0,0,64,63,255,128,0,0,190,0,0,0,31,255,0,0,0,190,0,0,0,15,248,0,0,0, + // 0x9669 险 + 105,150,36,38,86,40,3,252,0,0,0,0,0,14,0,0,0,0,0,0,0,0,47,192,0,0,191,255,248,0,0,127,192,0,0,191,255,255,0,0,255,208,0,0,191,255,254,0,2,255,244,0,0,190,86,253,0,7,255,253,0,0,190,1,252,0,15,241,255,64,0,190,3,248,0,63,208,127,208,0,190,3,244,0,255,128,47,244,0,190,7,240,2,255,0,11,254,0,190,11,224,11,252,0,2,255,128,190,15,208,63,240,0,0,191,244,190,31,193,255,208,0,0,47,254,190,47,135,255,255,255,255,231,254,190,47,131,252,255,255,255,224,252,190,15,209,240,255,255,255,224,40,190,7,240,64,0,0,0,0,0,190,3,248,0,0,0,0,0,0,190,1,252,0,0,0,0,0,0,190,0,252,0,64,47,64,11,208,190,0,253,15,192,31,128,15,224,190,0,190,15,192,31,128,31,192,190,0,190,11,224,15,192,47,128,190,0,254,7,240,15,192,63,64,190,1,253,3,240,11,208,127,0,190,127,252,2,244,11,208,253,0,190,63,248,2,248,7,224,252,0,190,63,224,1,252,7,242,248,0,190,0,0,0,252,2,67,240,0,190,0,0,0,224,0,7,224,0,190,0,0,0,0,0,15,192,0,190,0,0,0,0,0,31,128,0,190,0,0,85,85,85,127,85,84,190,0,0,255,255,255,255,255,252,190,0,0,255,255,255,255,255,252,190,0,0,255,255,255,255,255,252,190,0,0,0,0,0,0,0,0,105,0,0,0,0,0,0,0,0, + // 0x96f6 零 + 246,150,37,36,104,40,2,252,2,255,255,255,255,255,255,255,64,0,2,255,255,255,255,255,255,255,64,0,1,255,255,255,255,255,255,255,64,0,0,0,0,0,254,0,0,0,0,0,21,85,85,85,255,85,85,85,84,0,63,255,255,255,255,255,255,255,252,0,63,255,255,255,255,255,255,255,252,0,63,64,0,0,254,0,0,1,252,0,63,64,0,0,254,0,0,1,252,0,63,79,255,244,254,47,255,241,252,0,63,79,255,244,254,47,255,241,252,0,63,0,0,0,254,0,0,1,252,0,0,0,0,0,254,0,0,0,0,0,0,63,255,244,84,47,255,252,0,0,0,63,255,251,255,111,255,252,0,0,0,0,0,31,255,224,0,0,0,0,0,0,0,191,255,253,0,0,0,0,0,0,7,255,131,255,208,0,0,0,0,0,127,253,0,191,253,0,0,0,0,11,255,240,0,15,255,228,0,0,1,255,255,234,170,171,255,255,144,0,191,255,231,255,255,255,219,255,255,64,255,253,3,255,255,255,208,127,255,0,127,144,0,0,0,0,0,1,253,0,36,0,0,0,0,0,0,0,4,0,0,255,255,255,255,255,255,248,0,0,0,255,255,255,255,255,255,248,0,0,0,106,170,191,234,170,171,248,0,0,0,0,0,31,192,0,3,248,0,0,0,0,0,31,192,0,3,248,0,0,0,0,0,31,192,0,3,248,0,0,0,0,0,31,192,11,255,244,0,0,0,0,0,31,192,7,255,240,0,0,0,0,0,31,192,3,254,64,0,0,0,0,0,31,192,0,0,0,0,0,0,0,0,31,192,0,0,0,0,0, + // 0x9700 需 + 0,151,36,36,68,40,2,252,2,255,255,255,255,255,255,255,64,2,255,255,255,255,255,255,255,64,2,255,255,255,255,255,255,255,64,0,0,0,0,254,0,0,0,0,42,170,170,170,255,170,170,170,168,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,64,0,0,254,0,0,1,252,63,64,0,0,254,0,0,1,252,63,79,255,244,254,47,255,241,252,63,79,255,244,254,47,255,241,252,63,69,85,80,254,5,85,81,252,21,0,0,0,254,0,0,0,84,0,21,85,80,254,5,85,84,0,0,63,255,244,254,47,255,252,0,0,63,255,244,254,47,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,0,0,0,1,253,0,0,0,0,0,0,0,2,252,0,0,0,0,1,255,255,255,255,255,255,255,208,1,255,255,255,255,255,255,255,208,1,255,255,255,255,255,255,255,208,1,252,0,254,0,63,64,31,208,1,252,0,254,0,63,64,31,208,1,252,0,254,0,63,64,31,208,1,252,0,254,0,63,64,31,208,1,252,0,254,0,63,64,31,208,1,252,0,254,0,63,64,31,208,1,252,0,254,0,63,64,31,208,1,252,0,254,0,63,79,255,192,1,252,0,254,0,63,71,255,192,1,252,0,169,0,42,3,254,0, + // 0x9752 青 + 82,151,36,39,95,40,2,251,0,0,0,0,170,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,191,255,255,255,255,255,254,0,0,191,255,255,255,255,255,254,0,0,106,170,170,255,170,170,170,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,224,0,0,0,7,244,0,0,15,224,0,0,0,7,244,0,0,15,250,170,170,170,171,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,224,0,0,0,7,244,0,0,15,224,0,0,0,7,244,0,0,15,224,0,0,0,7,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,250,170,170,170,171,244,0,0,15,224,0,0,0,7,244,0,0,15,224,0,0,0,7,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,127,255,244,0,0,15,224,0,0,63,255,240,0,0,15,224,0,0,47,254,64,0,0,0,0,0,0,0,0,0,0, + // 0x975e 非 + 94,151,38,39,134,40,1,251,0,0,0,170,0,10,144,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,15,255,255,255,0,31,255,255,255,128,15,255,255,255,0,31,255,255,255,128,15,255,255,255,0,31,255,255,255,128,5,85,85,255,0,31,229,85,85,64,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,7,255,255,255,0,31,255,255,254,0,7,255,255,255,0,31,255,255,254,0,7,255,255,255,0,31,255,255,254,0,1,85,85,255,0,31,229,85,85,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,254,0,31,208,0,0,0,0,0,0,254,84,31,208,0,0,0,0,0,6,255,252,31,208,0,0,0,0,107,255,255,252,31,229,85,85,64,127,255,255,255,252,31,255,255,255,208,63,255,255,253,0,31,255,255,255,208,63,255,159,244,0,31,255,255,255,208,41,64,31,240,0,31,208,0,0,0,0,0,63,208,0,31,208,0,0,0,0,0,191,192,0,31,208,0,0,0,0,2,255,0,0,31,208,0,0,0,0,11,254,0,0,31,208,0,0,0,0,63,248,0,0,31,208,0,0,0,2,255,224,0,0,31,208,0,0,0,15,255,128,0,0,31,208,0,0,0,3,253,0,0,0,31,208,0,0,0,0,224,0,0,0,15,208,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9760 靠 + 96,151,36,39,95,40,2,251,0,2,80,0,254,0,0,0,0,0,11,240,0,254,0,0,0,0,0,31,245,85,255,85,85,85,0,0,63,255,255,255,255,255,255,64,0,191,255,255,255,255,255,255,64,2,254,0,0,254,0,0,0,0,3,252,0,0,254,0,0,0,0,42,254,170,170,255,170,170,170,168,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,0,0,0,0,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,255,0,0,63,255,255,255,255,255,255,0,0,63,149,85,85,85,85,255,0,0,63,64,0,0,0,0,255,0,0,63,64,0,0,0,0,255,0,0,63,255,255,255,255,255,255,0,0,63,255,255,255,255,255,255,0,0,21,86,253,85,191,149,85,0,0,0,1,252,0,63,64,0,0,63,255,255,252,0,63,255,255,252,63,255,255,252,0,63,255,255,252,21,85,86,252,0,63,149,85,84,0,0,1,252,0,63,64,0,0,5,85,86,252,0,63,149,85,80,15,255,255,252,0,63,255,255,244,15,255,255,252,0,63,255,255,244,0,0,2,252,0,63,64,0,0,0,0,6,252,0,63,64,0,0,255,255,255,248,0,63,255,255,255,255,255,255,244,0,63,255,255,255,169,84,31,240,0,63,234,170,170,0,0,191,192,0,63,64,0,0,0,31,255,64,0,63,64,0,0,3,255,252,0,0,63,64,0,0,1,255,208,0,0,63,64,0,0,0,184,0,0,0,42,64,0,0,0,0,0,0,0,0,0,0,0, + // 0x9762 面 + 98,151,36,35,59,40,2,252,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,106,170,170,171,255,170,170,170,169,0,0,0,3,253,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,244,0,0,0,0,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,245,91,245,85,111,213,95,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,255,255,255,192,15,240,15,224,7,255,255,255,192,15,240,15,224,7,255,255,255,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,255,255,255,192,15,240,15,224,7,255,255,255,192,15,240,15,224,7,255,255,255,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,245,85,85,85,85,85,95,240,15,224,0,0,0,0,0,15,240,10,160,0,0,0,0,0,10,160, + // 0x9875 页 + 117,152,36,36,68,40,2,252,21,85,85,85,85,85,85,85,84,63,255,255,255,255,255,255,255,253,63,255,255,255,255,255,255,255,253,63,255,255,255,255,255,255,255,253,0,0,0,3,253,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,15,240,0,0,0,0,0,127,255,255,255,255,255,255,0,0,127,255,255,255,255,255,255,0,0,127,255,255,255,255,255,255,0,0,127,149,85,85,85,86,255,0,0,127,64,0,0,0,0,255,0,0,127,64,0,85,0,0,255,0,0,127,64,0,255,0,0,255,0,0,127,64,0,255,0,0,255,0,0,127,64,0,255,0,0,255,0,0,127,64,0,255,0,0,255,0,0,127,64,0,255,0,0,255,0,0,127,64,0,255,0,0,255,0,0,127,64,0,255,0,0,255,0,0,127,64,0,255,0,0,255,0,0,127,64,0,255,0,0,255,0,0,127,64,0,255,0,0,255,0,0,127,64,1,254,0,0,255,0,0,127,64,3,253,0,0,255,0,0,127,64,15,252,62,0,255,0,0,0,0,47,244,255,240,0,0,0,0,0,255,224,191,254,0,0,0,0,11,255,128,11,255,224,0,0,1,191,253,0,0,191,254,0,0,111,255,244,0,0,11,255,208,111,255,255,64,0,0,1,255,248,127,255,244,0,0,0,0,31,252,47,253,0,0,0,0,0,3,240,10,64,0,0,0,0,0,0,80, + // 0x9879 项 + 121,152,37,36,104,40,1,252,0,0,0,11,255,255,255,255,255,192,0,0,0,11,255,255,255,255,255,192,0,0,0,11,255,255,255,255,255,192,63,255,255,230,170,171,253,85,85,64,63,255,255,224,0,7,252,0,0,0,63,255,255,224,0,15,244,0,0,0,0,31,208,0,0,15,240,0,0,0,0,31,208,1,255,255,255,255,252,0,0,31,208,1,255,255,255,255,252,0,0,31,208,1,255,255,255,255,252,0,0,31,208,1,253,85,85,87,252,0,0,31,208,1,252,0,0,3,252,0,0,31,208,1,252,1,168,3,252,0,0,31,208,1,252,2,252,3,252,0,0,31,208,1,252,2,252,3,252,0,0,31,208,1,252,2,252,3,252,0,0,31,208,1,252,2,252,3,252,0,0,31,208,1,252,2,252,3,252,0,0,31,208,1,252,2,252,3,252,0,0,31,208,1,252,2,252,3,252,0,0,31,208,17,252,2,252,3,252,0,0,31,231,241,252,2,252,3,252,0,0,31,255,241,252,3,252,3,252,0,1,191,255,245,252,3,252,3,252,0,127,255,255,65,252,3,248,3,252,0,191,255,224,1,252,11,244,3,252,0,127,248,0,0,0,15,240,0,0,0,62,64,0,0,0,47,224,240,0,0,16,0,0,0,0,191,195,253,0,0,0,0,0,0,3,255,67,255,192,0,0,0,0,0,47,253,0,191,244,0,0,0,0,2,255,244,0,15,254,0,0,0,0,127,255,192,0,2,255,192,0,0,0,255,253,0,0,0,127,192,0,0,0,63,208,0,0,0,31,0,0,0,0,24,0,0,0,0,0,0, + // 0x9884 预 + 132,152,38,36,104,40,1,252,47,255,255,253,47,255,255,255,255,208,47,255,255,255,111,255,255,255,255,208,47,255,255,255,47,255,255,255,255,208,0,0,7,253,5,85,111,229,85,64,0,0,7,248,0,0,47,192,0,0,0,0,15,240,0,0,63,192,0,0,0,208,63,192,0,0,63,128,0,0,3,248,255,64,3,255,255,255,254,0,7,255,253,0,3,255,255,255,254,0,0,191,248,0,3,255,255,255,254,0,0,31,253,0,3,245,85,85,254,0,0,2,255,192,3,240,0,0,254,0,0,0,127,192,3,240,26,64,254,0,127,255,255,255,211,240,47,192,254,0,127,255,255,255,211,240,47,192,254,0,127,255,255,255,195,240,47,192,254,0,21,87,249,111,195,240,47,192,254,0,0,3,244,47,131,240,47,192,254,0,0,3,244,63,3,240,47,192,254,0,0,3,244,63,3,240,47,192,254,0,0,3,244,190,3,240,47,192,254,0,0,3,244,252,3,240,47,192,254,0,0,3,244,20,3,240,63,128,254,0,0,3,244,0,3,240,63,128,254,0,0,3,244,0,3,240,63,64,254,0,0,3,244,0,3,240,191,0,254,0,0,3,244,0,0,0,255,0,0,0,0,3,244,0,0,2,253,44,0,0,0,3,244,0,0,11,252,191,64,0,0,3,244,0,0,47,240,191,224,0,0,3,244,0,0,255,208,31,248,0,0,7,244,0,11,255,64,7,254,0,15,255,244,0,191,252,0,1,255,192,11,255,240,0,255,224,0,0,127,192,7,255,208,0,62,0,0,0,31,0,2,149,0,0,0,0,0,0,4,0, + // 0x9891 频 + 145,152,38,38,124,40,1,252,0,0,31,128,0,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,0,47,128,1,255,255,255,255,192,2,244,47,128,1,255,255,255,255,192,2,244,47,255,241,255,255,255,255,192,2,244,47,255,240,0,3,240,0,0,2,244,47,255,240,0,11,240,0,0,2,244,47,128,0,0,15,208,0,0,2,244,47,128,0,0,31,192,0,0,2,244,47,128,0,127,255,255,255,0,2,244,47,128,0,127,255,255,255,0,22,245,111,213,84,127,255,255,255,0,127,255,255,255,252,126,0,0,127,0,127,255,255,255,252,126,1,80,127,0,127,255,255,255,252,126,7,224,127,0,0,0,127,0,0,126,7,224,127,0,0,0,127,0,0,126,7,224,127,0,0,144,127,0,0,126,7,224,127,0,1,252,127,2,248,126,7,224,127,0,3,248,127,3,248,126,7,224,127,0,3,240,127,3,244,126,7,224,127,0,7,240,127,7,240,126,11,224,127,0,15,208,127,15,224,126,11,208,127,0,47,192,127,31,208,126,11,208,127,0,63,128,127,63,192,126,15,192,127,0,47,0,127,191,64,126,15,192,127,0,5,0,127,255,0,126,31,192,127,0,0,0,3,253,0,105,47,128,42,0,0,0,15,248,0,0,63,104,0,0,0,0,63,240,0,0,191,191,0,0,0,1,255,192,0,1,254,191,192,0,0,11,255,0,0,7,252,31,244,0,0,191,248,0,0,47,244,7,254,0,27,255,208,0,6,255,208,0,255,128,63,254,0,0,63,255,0,0,63,208,15,244,0,0,15,244,0,0,15,128,10,0,0,0,10,64,0,0,2,0, + // 0x989d 额 + 157,152,37,38,124,40,2,252,0,0,96,0,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,0,2,253,0,7,255,255,255,255,0,191,255,255,255,247,255,255,255,255,0,191,255,255,255,247,255,255,255,255,0,191,255,255,255,240,0,47,128,0,0,190,0,0,7,240,0,63,64,0,0,190,10,64,7,240,0,127,0,0,0,190,31,208,7,240,0,190,0,0,0,189,63,128,7,243,255,255,255,248,0,0,191,255,254,3,255,255,255,248,0,2,255,255,255,131,255,255,255,248,0,7,255,255,255,3,240,0,1,248,0,47,240,1,254,3,240,5,1,248,0,191,192,3,252,3,240,47,129,248,0,255,46,15,244,3,240,47,129,248,0,56,191,255,208,3,240,47,129,248,0,0,127,255,128,3,240,47,65,248,0,0,15,255,224,3,240,47,65,248,0,0,191,255,253,3,240,63,65,248,0,11,255,219,255,195,240,63,65,248,0,255,254,1,255,243,240,63,1,248,0,255,244,0,31,211,240,63,1,248,0,191,64,0,3,67,240,63,1,248,0,55,255,255,255,3,240,127,1,248,0,3,255,255,255,3,240,190,1,248,0,3,255,255,255,3,240,253,1,248,0,3,244,0,191,2,240,252,1,168,0,3,244,0,191,0,2,252,48,0,0,3,244,0,191,0,3,244,253,0,0,3,244,0,191,0,15,241,255,128,0,3,244,0,191,0,63,208,63,240,0,3,255,255,255,2,255,128,11,253,0,3,255,255,255,47,254,0,1,255,64,3,255,255,255,127,244,0,0,127,0,3,244,0,191,47,128,0,0,29,0,1,80,0,0,8,0,0,0,0,0, + // 0x98ce 风 + 206,152,37,36,104,40,2,252,0,191,255,255,255,255,255,253,0,0,0,191,255,255,255,255,255,253,0,0,0,191,255,255,255,255,255,253,0,0,0,191,170,170,170,170,170,253,0,0,0,191,0,0,0,0,1,253,0,0,0,191,0,0,0,0,1,253,0,0,0,191,0,0,0,9,1,253,0,0,0,191,0,0,0,47,193,253,0,0,0,191,7,192,0,63,129,253,0,0,0,191,31,240,0,127,65,253,0,0,0,191,11,248,0,191,1,253,0,0,0,191,3,253,0,254,1,253,0,0,0,255,0,255,66,252,1,253,0,0,0,255,0,127,195,248,1,253,0,0,0,255,0,47,251,244,1,253,0,0,0,255,0,15,255,240,0,253,0,0,0,255,0,3,255,208,0,253,0,0,0,255,0,1,255,192,0,253,0,0,0,255,0,0,255,192,0,253,0,0,0,254,0,2,255,224,0,253,0,0,1,254,0,3,255,240,0,253,0,0,1,253,0,15,255,252,0,253,0,0,1,253,0,47,243,254,0,254,0,0,2,252,0,191,193,255,64,254,0,0,3,252,1,255,64,191,192,254,0,0,3,252,7,254,0,63,224,190,4,0,7,248,31,252,0,31,240,191,10,0,11,244,191,240,0,15,252,127,11,64,15,240,191,192,0,3,248,127,11,192,31,224,47,0,0,2,128,63,79,128,63,208,8,0,0,0,0,63,207,128,191,192,0,0,0,0,0,31,255,64,255,64,0,0,0,0,0,15,255,0,191,0,0,0,0,0,0,7,254,0,29,0,0,0,0,0,0,1,248,0,4,0,0,0,0,0,0,0,0,0, + // 0x9971 饱 + 113,153,37,38,124,40,1,252,0,37,0,0,0,144,0,0,0,0,0,127,0,0,1,252,0,0,0,0,0,191,0,0,2,252,0,0,0,0,0,190,0,0,3,244,0,0,0,0,0,253,0,0,11,244,0,0,0,0,0,253,0,0,15,255,255,255,252,0,1,255,255,248,31,255,255,255,252,0,2,255,255,252,63,255,255,255,252,0,3,255,255,248,191,0,0,1,252,0,3,244,3,244,254,0,0,1,252,0,11,240,7,243,252,0,0,1,252,0,15,224,11,235,248,0,0,1,252,0,15,208,15,239,255,255,255,129,252,0,47,192,31,207,255,255,255,129,252,0,63,133,111,75,191,255,255,129,252,0,191,31,193,2,63,128,47,129,252,0,62,31,192,0,63,128,47,129,252,0,12,31,192,0,63,128,47,129,252,0,0,31,192,0,63,128,47,129,252,0,0,31,192,0,63,128,47,129,252,0,0,31,192,0,63,128,47,129,252,0,0,31,192,0,63,128,47,129,252,0,0,31,192,0,63,255,255,130,252,0,0,31,192,0,63,255,255,130,252,0,0,31,192,0,63,255,255,135,252,0,0,31,192,0,63,128,11,255,248,0,0,31,192,0,63,128,3,255,240,0,0,31,192,64,63,128,3,255,128,0,0,31,193,224,63,128,0,0,0,0,0,31,203,240,63,128,0,0,8,0,0,31,255,240,63,128,0,0,15,128,0,31,255,192,63,128,0,0,15,192,0,47,254,0,63,128,0,0,31,192,0,63,244,0,63,212,0,1,127,192,0,191,208,0,47,255,255,255,255,128,0,191,0,0,15,255,255,255,255,0,0,60,0,0,2,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0, + // 0x9a6c 马 + 108,154,35,37,77,40,2,251,1,170,170,170,170,170,170,128,0,2,255,255,255,255,255,255,208,0,2,255,255,255,255,255,255,208,0,2,255,255,255,255,255,255,208,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,47,192,0,0,1,64,0,0,0,63,192,0,0,3,248,0,0,0,63,192,0,0,3,244,0,0,0,63,192,0,0,7,244,0,0,0,63,128,0,0,7,244,0,0,0,63,128,0,0,11,240,0,0,0,127,64,0,0,11,240,0,0,0,127,64,0,0,11,240,0,0,0,127,0,0,0,15,240,0,0,0,191,0,0,0,15,240,0,0,0,191,0,0,0,15,255,255,255,255,255,255,252,0,15,255,255,255,255,255,255,248,0,31,255,255,255,255,255,255,248,0,5,85,85,85,85,85,91,248,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,191,255,255,255,255,255,244,15,240,191,255,255,255,255,255,244,15,240,191,255,255,255,255,255,244,15,240,106,170,170,170,170,170,160,15,224,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,192,0,0,0,0,0,101,85,255,64,0,0,0,0,0,63,255,255,0,0,0,0,0,0,47,255,253,0,0,0,0,0,0,47,255,224,0,0,0,0,0,0,0,0,0,0, + // 0x9a71 驱 + 113,154,38,36,104,40,1,252,31,255,255,240,21,85,85,85,85,0,31,255,255,240,63,255,255,255,255,128,31,255,255,240,63,255,255,255,255,128,0,0,11,240,63,255,255,255,255,128,0,0,11,224,63,128,0,0,0,0,0,0,11,224,63,128,0,0,0,0,3,240,11,224,63,128,0,1,228,0,3,240,11,208,63,130,128,2,252,0,3,240,15,208,63,143,208,3,248,0,3,240,15,208,63,143,240,7,244,0,7,240,15,192,63,131,252,15,240,0,7,240,15,192,63,129,254,15,224,0,7,224,15,192,63,128,191,95,192,0,11,224,15,192,63,128,63,255,192,0,11,208,31,192,63,128,31,255,64,0,11,208,31,192,63,128,11,255,0,0,15,208,47,128,63,128,3,254,0,0,15,255,255,253,63,128,3,254,0,0,15,255,255,253,63,128,7,255,64,0,15,255,255,253,63,128,15,255,192,0,0,0,0,253,63,128,47,255,208,0,0,0,0,252,63,128,63,207,240,0,0,0,0,252,63,128,191,71,248,0,0,0,16,252,63,130,254,3,252,0,0,27,244,252,63,135,252,0,255,0,27,255,249,252,63,143,244,0,191,0,191,255,229,252,63,175,240,0,127,0,127,244,2,248,63,139,192,0,56,0,121,0,2,248,63,130,64,0,0,0,0,0,3,244,63,128,0,0,0,0,0,0,3,244,63,213,85,85,85,64,0,0,11,240,63,255,255,255,255,208,0,63,255,224,63,255,255,255,255,208,0,47,255,192,63,255,255,255,255,208,0,47,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9ad8 高 + 216,154,35,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,254,0,0,0,0,127,255,255,255,255,255,255,255,252,127,255,255,255,255,255,255,255,252,127,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,255,255,128,0,0,3,255,255,255,255,255,128,0,0,3,254,170,170,170,191,128,0,0,3,252,0,0,0,63,128,0,0,3,252,0,0,0,63,128,0,0,3,252,0,0,0,63,128,0,0,3,255,255,255,255,255,128,0,0,3,255,255,255,255,255,128,0,0,1,170,170,170,170,170,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,240,11,240,0,0,0,0,0,15,240,11,240,0,0,0,0,0,15,240,11,240,6,170,170,170,144,15,240,11,240,11,255,255,255,224,15,240,11,240,11,255,255,255,224,15,240,11,240,11,224,0,15,224,15,240,11,240,11,224,0,15,224,15,240,11,240,11,224,0,15,224,15,240,11,240,11,250,170,175,224,15,240,11,240,11,255,255,255,224,15,240,11,240,11,255,255,255,224,15,240,11,240,11,224,0,0,127,255,240,11,240,11,224,0,0,63,255,208,11,240,0,0,0,0,63,255,128,7,240,0,0,0,0,21,84,0, + // 0x9ec4 黄 + 196,158,36,38,86,40,2,252,0,0,10,144,0,6,160,0,0,0,0,15,224,0,11,240,0,0,0,0,15,224,0,11,240,0,0,0,85,95,245,85,91,245,85,64,3,255,255,255,255,255,255,255,192,3,255,255,255,255,255,255,255,192,3,255,255,255,255,255,255,255,192,0,0,15,224,0,11,240,0,0,0,0,15,224,0,11,240,0,0,0,0,15,224,0,11,240,0,0,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,85,85,85,85,255,85,85,85,85,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,106,170,170,255,170,170,170,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,0,255,0,0,255,0,0,191,0,0,255,0,0,255,0,0,191,0,0,255,0,0,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,170,170,255,170,170,255,0,0,191,0,0,255,0,0,255,0,0,191,0,0,255,0,0,255,0,0,191,170,170,255,170,170,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,0,1,64,0,2,64,0,0,0,0,31,224,0,11,248,0,0,0,1,255,252,0,31,255,208,0,0,47,255,224,0,2,255,254,0,11,255,254,0,0,0,31,255,244,127,255,224,0,0,0,0,191,252,31,249,0,0,0,0,0,11,240,6,64,0,0,0,0,0,0,128, + // 0x9ede 點 + 222,158,38,38,124,40,1,252,0,0,0,0,0,0,26,128,0,0,10,170,170,170,160,0,31,192,0,0,15,255,255,255,240,0,31,192,0,0,15,255,255,255,240,0,31,192,0,0,15,192,60,2,240,0,31,192,0,0,15,196,60,18,240,0,31,192,0,0,15,236,60,63,240,0,31,192,0,0,15,221,60,122,240,0,31,192,0,0,15,206,60,182,240,0,31,192,0,0,15,207,60,242,240,0,31,255,255,208,15,207,125,226,240,0,31,255,255,208,15,202,125,210,240,0,31,255,255,208,15,192,60,2,240,0,31,229,85,64,15,234,190,171,240,0,31,192,0,0,15,255,255,255,240,0,31,192,0,0,15,255,255,255,240,0,31,192,0,0,0,0,190,0,0,0,31,192,0,0,0,0,190,0,0,0,31,192,0,0,0,0,190,0,0,0,31,192,0,0,15,255,255,255,244,85,111,229,85,0,15,255,255,255,244,255,255,255,255,0,15,255,255,255,244,255,255,255,255,0,0,0,190,0,0,255,255,255,255,0,0,0,190,0,0,253,0,0,191,0,1,85,255,175,252,253,0,0,191,0,63,255,255,255,252,253,0,0,191,0,63,255,255,255,252,253,0,0,191,0,63,250,165,80,0,253,0,0,191,0,0,0,0,7,128,253,0,0,191,0,2,6,139,203,208,253,0,0,191,0,7,215,199,195,240,253,0,0,191,0,11,199,195,209,248,253,0,0,191,0,11,195,210,240,252,254,85,85,255,0,15,195,225,240,125,255,255,255,255,0,31,131,224,244,52,255,255,255,255,0,63,3,224,144,0,255,255,255,255,0,126,1,64,0,0,253,0,0,191,0,8,0,0,0,0,189,0,0,106,0, + // 0x9f50 齐 + 80,159,37,39,134,40,2,251,0,0,0,0,254,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,127,255,255,255,255,255,255,255,254,0,127,255,255,255,255,255,255,255,254,0,127,255,255,255,255,255,255,255,254,0,0,2,254,0,0,0,255,192,0,0,0,0,255,64,0,1,255,0,0,0,0,0,63,208,0,7,253,0,0,0,0,0,15,244,0,31,248,0,0,0,0,0,7,255,0,191,240,0,0,0,0,0,0,255,211,255,128,0,0,0,0,0,0,63,255,254,0,0,0,0,0,0,0,11,255,244,0,0,0,0,0,0,0,47,255,254,0,0,0,0,0,0,11,255,255,255,249,0,0,0,0,22,255,255,210,255,255,250,64,0,111,255,255,249,0,31,255,255,255,64,255,255,255,64,0,1,191,255,255,0,63,255,229,0,0,0,22,255,252,0,47,144,255,0,0,0,127,65,104,0,0,0,255,0,0,0,127,64,0,0,0,0,255,0,0,0,127,64,0,0,0,0,255,0,0,0,127,64,0,0,0,0,255,0,0,0,127,64,0,0,0,0,255,0,0,0,127,64,0,0,0,0,255,0,0,0,127,64,0,0,0,1,254,0,0,0,127,64,0,0,0,2,254,0,0,0,127,64,0,0,0,3,253,0,0,0,127,64,0,0,0,11,252,0,0,0,127,64,0,0,0,31,248,0,0,0,127,64,0,0,0,191,240,0,0,0,127,64,0,0,3,255,192,0,0,0,127,64,0,0,15,255,64,0,0,0,127,64,0,0,3,253,0,0,0,0,127,64,0,0,0,224,0,0,0,0,127,64,0,0,0,0,0,0,0,0,0,0,0,0, + // 0xff1a : + 26,255,8,27,54,40,16,1,11,224,47,248,63,252,127,253,63,252,47,248,6,144,0,0,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,224,63,248,63,252,127,253,63,252,47,244,6,128, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Symbols_29.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Symbols_29.cpp new file mode 100644 index 000000000000..de4a74bba280 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Symbols_29.cpp @@ -0,0 +1,38 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium_Symbols 40pt, capital 'A' height: 29px, width: 100% +extern const uint8_t NotoSans_Medium_Symbols_29[158] = { + 130,29,8,0,10,0,38,246, // unifont_t + // 0x08 - LCD_STR_THERMOMETER a.k.a 0x1f321 🌡 + 23,49,38,27,2,247,0,7,255,255,0,0,0,31,255,255,192,0,0,47,255,255,208,0,0,47,64,11,208,0,0,47,0,7,208,0,0,47,144,7,208,0,0,47,244,7,208,0,0,47,0,7,208,0,0,47,0,7,208,0,0,47,0,7,208,0,0,47,244,7,208,0,0,47,144,7,208,0,0,47,0,7,208,0,0,47,5,71,208,0,0,47,31,199,208,0,0,47,255,199,208,0,0,47,175,199,208,0,0,47,31,199,208,0,0,47,31,199,208,0,0,47,95,199,208,0,0,47,255,199,208,0,0,47,95,199,208,0,0,47,31,199,208,0,0,47,31,199,208,0,0,47,175,199,208,0,0,47,255,199,208,0,0,47,31,199,208,0,0,47,31,199,208,0,0,47,31,199,208,0,0,127,191,199,240,0,2,255,191,199,253,0,11,248,31,192,255,64,31,208,47,208,47,192,63,66,255,253,11,224,127,11,255,255,67,240,189,31,255,255,194,244,252,47,255,255,208,248,252,63,255,255,224,252,252,63,255,255,224,252,252,63,255,255,224,248,189,31,255,255,193,248,126,15,255,255,131,240,63,67,255,254,11,240,31,208,111,224,31,192,11,248,0,0,191,128,3,255,64,11,254,0,0,191,255,255,244,0,0,15,255,255,128,0,0,0,111,228,0,0, + // 0x09 - LCD_STR_DEGREE a.k.a 0x00b0 ° + 13,13,52,17,2,16,1,191,144,0,11,255,252,0,63,255,255,0,127,64,127,64,189,0,31,192,252,0,15,192,252,0,15,192,252,0,15,192,190,0,47,128,63,144,191,64,47,255,254,0,7,255,248,0,0,106,64,0, + // 0x0a - replacement for 0x2026 used in Greek language files … + 27,6,42,32,3,255,127,64,2,252,0,15,224,255,192,7,255,0,47,244,255,192,7,255,0,63,248,255,192,7,255,0,47,248,191,128,3,253,0,31,240,25,0,0,96,0,1,64, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Traditional_Chinese_29.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Traditional_Chinese_29.cpp new file mode 100644 index 000000000000..a19d230e23ed --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Traditional_Chinese_29.cpp @@ -0,0 +1,646 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Traditional Chinese 40pt, capital 'A' height: 29px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 +extern const uint8_t NotoSans_Medium_Traditional_Chinese_29[34391] = { + 162,29,191,34,26,255,38,246, // unifont_t + // 0x22bf ⊿ + 191,34,31,32,0,40,4,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,184,0,0,0,0,0,0,2,248,0,0,0,0,0,0,11,248,0,0,0,0,0,0,47,248,0,0,0,0,0,0,191,248,0,0,0,0,0,2,255,248,0,0,0,0,0,11,255,248,0,0,0,0,0,47,242,248,0,0,0,0,0,191,194,248,0,0,0,0,2,255,2,248,0,0,0,0,11,252,2,248,0,0,0,0,47,240,2,248,0,0,0,0,191,192,2,248,0,0,0,1,255,0,2,248,0,0,0,7,252,0,2,248,0,0,0,31,240,0,2,248,0,0,0,127,192,0,2,248,0,0,1,255,64,0,2,248,0,0,7,253,0,0,2,248,0,0,31,244,0,0,2,248,0,0,127,208,0,0,2,248,0,1,255,64,0,0,2,248,0,7,253,0,0,0,2,248,0,31,244,0,0,0,2,248,0,127,208,0,0,0,2,248,1,255,64,0,0,0,2,248,3,254,85,85,85,85,87,248,15,255,255,255,255,255,255,248,63,255,255,255,255,255,255,248,255,255,255,255,255,255,255,248, + // 0x4e00 一 + 0,78,37,4,40,40,2,13,255,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,255,64,255,255,255,255,255,255,255,255,255,64, + // 0x4e09 三 + 9,78,34,31,23,40,3,255,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,128,0,0,127,255,255,255,255,255,192,0,0,127,255,255,255,255,255,192,0,0,127,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,170,170,170,170,170,170,170,160,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240, + // 0x4e0a 上 + 10,78,36,35,59,40,2,254,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,255,255,255,255,192,0,0,0,7,255,255,255,255,192,0,0,0,7,255,255,255,255,192,0,0,0,7,254,170,170,170,128,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,248,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,254, + // 0x4e0b 下 + 11,78,36,35,59,40,2,252,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,254,128,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,3,255,255,64,0,0,0,0,0,3,255,255,240,0,0,0,0,0,3,253,255,254,0,0,0,0,0,3,252,47,255,208,0,0,0,0,3,252,3,255,252,0,0,0,0,3,252,0,127,255,64,0,0,0,3,252,0,11,255,208,0,0,0,3,252,0,1,255,192,0,0,0,3,252,0,0,63,0,0,0,0,3,252,0,0,9,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,2,168,0,0,0,0, + // 0x4e0d 不 + 13,78,36,35,59,40,2,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,0,0,0,0,47,240,0,0,0,0,0,0,0,127,224,0,0,0,0,0,0,0,255,192,0,0,0,0,0,0,2,255,64,0,0,0,0,0,0,7,255,0,0,0,0,0,0,0,31,255,0,0,0,0,0,0,0,63,255,10,0,0,0,0,0,0,255,255,47,192,0,0,0,0,3,255,255,191,244,0,0,0,0,15,254,255,47,254,0,0,0,0,63,248,255,7,255,192,0,0,1,255,240,255,0,255,244,0,0,11,255,192,255,0,47,253,0,0,47,254,0,255,0,11,255,128,1,255,248,0,255,0,1,255,240,15,255,208,0,255,0,0,127,252,191,255,0,0,255,0,0,15,255,191,248,0,0,255,0,0,3,255,63,208,0,0,255,0,0,0,248,14,0,0,0,255,0,0,0,32,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0, + // 0x4e26 並 + 38,78,36,36,68,40,2,254,0,0,32,0,0,0,9,0,0,0,3,248,0,0,0,31,240,0,0,3,252,0,0,0,63,224,0,0,1,255,0,0,0,127,192,0,0,0,255,64,0,0,255,128,0,0,0,127,192,0,1,255,0,0,0,0,63,208,0,3,253,0,0,0,0,31,128,0,7,248,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,42,170,170,255,170,255,170,170,168,0,0,0,254,0,191,0,0,0,0,0,0,254,0,191,0,0,0,0,0,0,254,0,191,0,0,0,0,100,0,254,0,191,0,46,64,3,252,0,254,0,191,0,63,192,2,252,0,254,0,191,0,63,192,0,254,0,254,0,191,0,127,128,0,191,0,254,0,191,0,191,0,0,127,64,254,0,191,0,255,0,0,63,128,254,0,191,1,254,0,0,63,192,254,0,191,2,252,0,0,47,192,254,0,191,3,252,0,0,31,208,254,0,191,7,244,0,0,15,224,254,0,191,11,240,0,0,15,240,254,0,191,15,224,0,0,11,240,254,0,191,31,208,0,0,6,64,254,0,191,1,128,0,0,0,0,254,0,191,0,0,0,0,0,0,254,0,191,0,0,0,0,0,0,254,0,191,0,0,0,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255, + // 0x4e2d 中 + 45,78,32,38,48,40,4,252,0,0,0,15,224,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,170,170,170,175,250,170,170,170,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,175,250,170,170,255,254,0,0,15,240,0,0,255,254,0,0,15,240,0,0,191,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,15,224,0,0,0, + // 0x4e3b 主 + 59,78,36,37,77,40,2,253,0,0,0,2,0,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,63,248,0,0,0,0,0,0,0,15,254,0,0,0,0,0,0,0,2,255,192,0,0,0,0,0,0,0,191,240,0,0,0,0,0,0,0,47,248,0,0,0,0,0,0,0,11,224,0,0,0,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,10,170,170,170,255,170,170,170,160,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,170,170,170,255,170,170,170,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,106,170,170,170,170,170,170,170,170, + // 0x4e4b 之 + 75,78,37,38,124,40,1,252,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,3,255,255,255,255,255,255,255,224,0,3,255,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,255,248,0,2,170,170,170,170,170,170,191,240,0,0,0,0,0,0,0,0,127,208,0,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,0,11,253,0,0,0,0,0,0,0,0,47,244,0,0,0,0,0,0,0,0,127,224,0,0,0,0,0,0,0,1,255,128,0,0,0,0,0,0,0,3,255,0,0,0,0,0,0,0,0,15,252,0,0,0,0,0,0,0,0,63,240,0,0,0,0,2,224,0,0,255,192,0,0,0,0,3,252,0,7,255,0,0,0,0,0,11,248,0,31,252,0,0,0,0,0,15,244,0,127,240,0,0,0,0,0,31,248,2,255,192,0,0,0,0,0,63,252,15,255,0,0,0,0,0,0,127,255,127,248,0,0,0,0,0,0,255,255,255,224,0,0,0,0,0,1,255,63,255,64,0,0,0,0,0,3,253,15,255,64,0,0,0,0,0,11,252,3,255,249,0,0,0,0,0,31,244,0,255,255,255,170,170,170,128,63,240,0,31,255,255,255,255,255,192,127,192,0,1,191,255,255,255,255,128,15,128,0,0,5,175,255,255,255,0,1,0,0,0,0,0,0,0,0,0, + // 0x4ea4 交 + 164,78,36,38,86,40,2,252,0,0,0,0,170,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,106,170,170,170,255,170,170,170,169,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0,0,0,15,64,0,0,248,0,0,0,0,63,240,0,7,255,0,0,0,0,255,208,0,3,255,208,0,0,3,255,64,0,0,191,248,0,0,15,254,0,0,0,31,254,0,0,127,248,0,0,0,3,255,192,2,255,224,0,0,0,0,255,240,31,255,66,192,0,3,224,63,252,191,253,31,224,0,11,252,11,254,47,240,15,240,0,15,244,3,248,11,128,11,248,0,31,240,0,208,0,0,3,252,0,63,208,0,0,0,0,2,255,0,191,192,0,0,0,0,0,255,130,255,64,0,0,0,0,0,127,215,254,0,0,0,0,0,0,47,255,252,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,11,255,224,0,0,0,0,0,0,127,255,253,0,0,0,0,0,7,255,255,255,208,0,0,0,0,127,255,130,255,253,0,0,0,27,255,253,0,127,255,228,0,6,255,255,224,0,11,255,255,144,255,255,254,0,0,0,255,255,255,191,255,208,0,0,0,11,255,253,63,248,0,0,0,0,0,111,252,30,0,0,0,0,0,0,0,96, + // 0x4eae 亮 + 174,78,36,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,250,170,170,170,175,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,10,170,170,170,170,170,160,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,0,0,0,0,0,0,0,252,63,0,1,80,0,0,0,0,252,63,0,7,244,0,191,64,0,252,63,0,11,244,0,191,64,0,252,63,0,11,240,0,191,64,0,252,0,0,15,240,0,191,64,0,0,0,0,31,240,0,191,64,0,0,0,0,47,208,0,191,64,0,0,0,0,127,192,0,191,64,0,184,0,1,255,128,0,191,64,0,191,0,15,255,0,0,191,64,0,254,2,255,252,0,0,191,128,1,254,255,255,224,0,0,127,255,255,253,191,255,64,0,0,63,255,255,252,63,224,0,0,0,31,255,255,240,20,0,0,0,0,0,21,84,0, + // 0x4ee4 令 + 228,78,37,38,124,40,2,252,0,0,0,1,254,0,0,0,0,0,0,0,0,3,255,128,0,0,0,0,0,0,0,15,255,208,0,0,0,0,0,0,0,47,255,244,0,0,0,0,0,0,0,191,219,252,0,0,0,0,0,0,2,255,131,255,64,0,0,0,0,0,11,254,0,255,208,0,0,0,0,0,47,252,0,63,244,0,0,0,0,0,191,240,0,15,253,0,0,0,0,2,255,192,0,3,255,128,0,0,0,15,254,0,0,0,191,244,0,0,0,127,248,0,0,0,47,254,0,0,2,255,255,255,255,255,255,255,208,0,31,255,95,255,255,255,245,255,248,0,255,252,31,255,255,255,244,63,255,64,255,224,5,85,85,85,80,11,255,0,127,64,0,0,0,0,0,1,253,0,40,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,255,255,255,255,255,255,254,0,0,2,255,255,255,255,255,255,254,0,0,2,255,255,255,255,255,255,254,0,0,1,85,85,127,213,85,85,254,0,0,0,0,0,47,192,0,0,254,0,0,0,0,0,47,192,0,0,254,0,0,0,0,0,47,192,0,0,254,0,0,0,0,0,47,192,0,0,254,0,0,0,0,0,47,192,0,0,254,0,0,0,0,0,47,192,0,0,254,0,0,0,0,0,47,192,0,0,254,0,0,0,0,0,47,192,10,170,254,0,0,0,0,0,47,192,11,255,253,0,0,0,0,0,47,192,3,255,252,0,0,0,0,0,47,192,3,255,144,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0, + // 0x4ef6 件 + 246,78,37,38,124,40,1,252,0,0,20,0,0,1,80,0,0,0,0,0,63,128,0,3,248,0,0,0,0,0,127,64,144,3,248,0,0,0,0,0,255,0,254,3,248,0,0,0,0,1,254,1,253,3,248,0,0,0,0,2,253,2,252,3,248,0,0,0,0,7,252,3,252,3,248,0,0,0,0,15,244,3,248,3,248,0,0,0,0,31,240,7,254,171,254,170,168,0,0,63,208,11,255,255,255,255,253,0,0,191,192,15,255,255,255,255,253,0,0,255,192,31,255,255,255,255,253,0,3,255,192,63,192,3,248,0,0,0,11,255,192,127,128,3,248,0,0,0,31,255,192,255,0,3,248,0,0,0,63,255,193,254,0,3,248,0,0,0,191,239,192,188,0,3,248,0,0,0,63,111,192,24,0,3,248,0,0,0,30,47,192,0,0,3,248,0,0,0,12,47,192,0,0,3,248,0,0,0,0,47,192,170,170,171,254,170,170,128,0,47,192,255,255,255,255,255,255,192,0,47,192,255,255,255,255,255,255,192,0,47,192,255,255,255,255,255,255,192,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,31,128,0,0,3,244,0,0,0, + // 0x4efd 份 + 253,78,38,38,124,40,1,252,0,0,36,0,0,0,0,0,0,0,0,0,127,128,3,255,255,244,0,0,0,0,191,0,3,255,255,248,0,0,0,0,254,0,3,255,255,252,0,0,0,2,253,0,65,85,87,252,0,0,0,3,252,0,254,0,1,253,0,0,0,11,244,1,254,0,0,254,0,0,0,15,240,2,252,0,0,255,0,0,0,47,208,3,248,0,0,127,128,0,0,127,192,11,244,0,0,63,192,0,0,255,128,15,240,0,0,47,224,0,2,255,128,31,208,0,0,15,240,0,3,255,128,63,192,0,0,11,252,0,15,255,128,191,64,0,0,3,254,0,63,255,129,254,0,0,0,2,255,64,191,255,131,252,0,0,0,0,255,224,255,191,143,249,85,85,85,85,191,208,191,63,143,235,255,255,255,255,223,64,60,63,131,203,255,255,255,255,198,0,20,63,128,11,255,255,255,255,192,0,0,63,128,0,2,252,0,63,192,0,0,63,128,0,3,252,0,63,192,0,0,63,128,0,3,248,0,63,192,0,0,63,128,0,3,244,0,63,128,0,0,63,128,0,7,244,0,63,128,0,0,63,128,0,11,240,0,63,128,0,0,63,128,0,15,240,0,63,128,0,0,63,128,0,15,224,0,63,128,0,0,63,128,0,47,192,0,63,128,0,0,63,128,0,63,192,0,127,64,0,0,63,128,0,191,64,0,127,64,0,0,63,128,1,255,0,0,191,64,0,0,63,128,7,252,0,0,191,0,0,0,63,128,47,244,0,0,255,0,0,0,63,128,255,224,3,255,255,0,0,0,63,129,255,128,1,255,253,0,0,0,63,128,125,0,0,255,248,0,0,0,47,128,32,0,0,106,64,0,0, + // 0x4f11 休 + 17,79,38,38,124,40,1,252,0,0,4,0,0,0,0,0,0,0,0,0,15,224,0,11,240,0,0,0,0,0,47,224,0,11,240,0,0,0,0,0,63,192,0,11,240,0,0,0,0,0,127,192,0,11,240,0,0,0,0,0,255,64,0,11,240,0,0,0,0,1,255,0,0,11,240,0,0,0,0,3,253,0,0,11,240,0,0,0,0,11,252,0,0,11,240,0,0,0,0,31,244,0,0,11,240,0,0,0,0,63,241,170,170,175,250,170,170,128,0,191,241,255,255,255,255,255,255,192,1,255,241,255,255,255,255,255,255,192,7,255,241,255,255,255,255,255,255,192,31,255,240,0,0,191,255,0,0,0,127,255,240,0,0,255,255,128,0,0,255,239,240,0,2,255,255,192,0,0,127,143,240,0,3,255,255,208,0,0,63,15,240,0,7,255,251,240,0,0,28,15,240,0,15,255,247,244,0,0,0,15,240,0,47,219,243,252,0,0,0,15,240,0,63,203,241,254,0,0,0,15,240,0,191,75,240,255,0,0,0,15,240,1,255,11,240,127,192,0,0,15,240,3,253,11,240,63,224,0,0,15,240,15,248,11,240,15,244,0,0,15,240,47,240,11,240,11,252,0,0,15,240,127,208,11,240,3,255,0,0,15,242,255,128,11,240,1,255,192,0,15,251,255,0,11,240,0,191,240,0,15,251,252,0,11,240,0,47,208,0,15,242,240,0,11,240,0,15,64,0,15,240,128,0,11,240,0,1,0,0,15,240,0,0,11,240,0,0,0,0,15,240,0,0,11,240,0,0,0,0,15,240,0,0,11,240,0,0,0,0,15,240,0,0,11,240,0,0,0,0,10,160,0,0,11,240,0,0,0, + // 0x4f4d 位 + 77,79,38,38,124,40,1,252,0,0,4,0,0,1,80,0,0,0,0,0,47,192,0,11,240,0,0,0,0,0,63,192,0,11,240,0,0,0,0,0,191,64,0,11,240,0,0,0,0,0,255,0,0,11,240,0,0,0,0,2,254,0,0,11,240,0,0,0,0,3,252,0,0,11,240,0,0,0,0,11,244,0,0,11,240,0,0,0,0,31,240,191,255,255,255,255,255,128,0,63,208,191,255,255,255,255,255,128,0,191,208,191,255,255,255,255,255,128,1,255,208,106,170,170,170,170,170,64,3,255,208,0,0,0,0,0,0,0,15,255,208,0,0,0,0,0,0,0,63,255,208,0,188,0,0,47,208,0,191,239,208,1,253,0,0,63,192,0,255,207,208,0,253,0,0,63,192,0,127,15,208,0,254,0,0,63,128,0,60,15,208,0,191,0,0,127,64,0,20,15,208,0,127,0,0,191,64,0,0,15,208,0,63,64,0,255,0,0,0,15,208,0,63,128,0,255,0,0,0,15,208,0,63,192,1,254,0,0,0,15,208,0,47,192,2,253,0,0,0,15,208,0,47,192,3,252,0,0,0,15,208,0,31,208,3,248,0,0,0,15,208,0,31,208,7,244,0,0,0,15,208,0,15,224,11,240,0,0,0,15,208,0,15,224,15,240,0,0,0,15,208,0,15,240,15,224,0,0,0,15,208,0,15,144,31,208,0,0,0,15,208,0,0,0,47,192,0,0,0,15,208,170,170,170,191,234,170,144,0,15,209,255,255,255,255,255,255,224,0,15,209,255,255,255,255,255,255,224,0,15,209,255,255,255,255,255,255,224,0,15,208,0,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0, + // 0x4f4e 低 + 78,79,38,38,124,40,1,252,0,0,36,0,0,0,0,0,0,0,0,0,127,64,0,0,0,0,64,0,0,0,191,0,0,0,0,111,240,0,0,0,255,0,0,1,175,255,248,0,0,2,253,25,26,255,255,255,248,0,0,3,252,31,255,255,255,249,0,0,0,11,244,31,255,255,255,0,0,0,0,15,240,31,250,80,191,0,0,0,0,47,208,31,192,0,191,0,0,0,0,127,192,31,192,0,191,0,0,0,0,255,128,31,192,0,127,64,0,0,2,255,128,31,192,0,127,64,0,0,7,255,128,31,192,0,127,64,0,0,15,255,128,31,192,0,127,64,0,0,63,255,128,31,255,255,255,255,255,208,255,255,128,31,255,255,255,255,255,208,255,127,128,31,255,255,255,255,255,208,126,63,128,31,229,85,127,213,85,64,60,63,128,31,192,0,47,192,0,0,16,63,128,31,192,0,47,192,0,0,0,63,128,31,192,0,31,192,0,0,0,63,128,31,192,0,31,208,0,0,0,63,128,31,192,0,15,224,0,0,0,63,128,31,192,0,15,240,0,0,0,63,128,31,192,0,11,240,0,0,0,63,128,31,192,0,71,244,0,0,0,63,128,31,209,175,227,248,0,0,0,63,128,47,255,255,227,252,2,0,0,63,131,255,255,255,226,252,3,224,0,63,130,255,255,250,65,254,3,240,0,63,130,255,228,0,0,255,3,240,0,63,128,144,0,0,0,127,135,224,0,63,128,0,0,0,0,63,255,224,0,63,128,21,85,85,85,31,255,192,0,63,128,255,255,255,255,135,255,128,0,63,128,255,255,255,255,129,190,0,0,63,128,255,255,255,255,128,0,0,0,63,128,0,0,0,0,0,0,0, + // 0x4f5c 作 + 92,79,38,38,124,40,1,252,0,0,4,0,0,0,0,0,0,0,0,0,47,192,1,248,0,0,0,0,0,0,63,192,3,252,0,0,0,0,0,0,127,128,3,248,0,0,0,0,0,0,255,64,11,244,0,0,0,0,0,0,255,0,15,240,0,0,0,0,0,3,253,0,31,224,0,0,0,0,0,7,252,0,63,255,255,255,255,208,0,15,244,0,127,255,255,255,255,208,0,31,240,0,255,255,255,255,255,208,0,63,224,2,254,175,250,170,170,128,0,191,224,3,252,15,224,0,0,0,1,255,224,15,244,15,224,0,0,0,3,255,224,31,240,15,224,0,0,0,15,255,224,127,208,15,224,0,0,0,63,255,224,255,128,15,224,0,0,0,127,255,226,255,0,15,255,255,255,64,63,207,224,125,0,15,255,255,255,64,31,15,224,20,0,15,255,255,255,64,12,15,224,0,0,15,245,85,85,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,245,85,85,64,0,15,224,0,0,15,255,255,255,192,0,15,224,0,0,15,255,255,255,192,0,15,224,0,0,15,255,255,255,192,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,15,224,0,0,15,224,0,0,0,0,10,144,0,0,10,144,0,0,0, + // 0x4f9b 供 + 155,79,38,38,124,40,1,252,0,0,20,0,21,64,0,84,0,0,0,0,63,128,47,192,0,253,0,0,0,0,191,64,47,192,0,253,0,0,0,0,255,0,47,192,0,253,0,0,0,1,254,0,47,192,0,253,0,0,0,3,252,0,47,192,0,253,0,0,0,7,248,0,47,192,0,253,0,0,0,15,240,0,47,192,0,253,0,0,0,47,224,42,191,234,170,255,170,128,0,63,192,127,255,255,255,255,255,192,0,255,192,127,255,255,255,255,255,192,1,255,192,127,255,255,255,255,255,192,3,255,192,0,47,192,0,253,0,0,15,255,192,0,47,192,0,253,0,0,63,255,192,0,47,192,0,253,0,0,191,255,192,0,47,192,0,253,0,0,191,175,192,0,47,192,0,253,0,0,63,47,192,0,47,192,0,253,0,0,44,47,192,0,47,192,0,253,0,0,4,47,192,0,47,192,0,253,0,0,0,47,192,0,47,192,0,253,0,0,0,47,193,170,191,234,170,255,170,128,0,47,193,255,255,255,255,255,255,208,0,47,193,255,255,255,255,255,255,208,0,47,193,255,255,255,255,255,255,208,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,14,64,0,36,0,0,0,47,192,0,47,224,1,253,0,0,0,47,192,0,127,192,1,255,64,0,0,47,192,0,255,64,0,127,192,0,0,47,192,3,254,0,0,47,240,0,0,47,192,15,252,0,0,11,248,0,0,47,192,63,240,0,0,3,254,0,0,47,192,255,192,0,0,1,255,0,0,47,194,255,64,0,0,0,191,192,0,47,192,125,0,0,0,0,62,0,0,47,128,4,0,0,0,0,20,0, + // 0x4fdd 保 + 221,79,38,38,124,40,1,252,0,0,20,0,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,63,203,255,255,255,255,252,0,0,0,191,75,255,255,255,255,252,0,0,0,255,11,255,255,255,255,252,0,0,2,253,11,245,85,85,87,252,0,0,3,252,11,240,0,0,2,252,0,0,11,244,11,240,0,0,2,252,0,0,15,240,11,240,0,0,2,252,0,0,63,208,11,240,0,0,2,252,0,0,191,208,11,240,0,0,2,252,0,1,255,208,11,240,0,0,2,252,0,3,255,208,11,255,255,255,255,252,0,15,255,208,11,255,255,255,255,252,0,47,255,208,11,255,255,255,255,252,0,191,255,208,1,85,91,249,85,84,0,191,207,208,0,0,7,244,0,0,0,63,15,208,0,0,7,244,0,0,0,45,15,208,0,0,7,244,0,0,0,4,15,208,0,0,7,244,0,0,0,0,15,209,255,255,255,255,255,255,192,0,15,209,255,255,255,255,255,255,192,0,15,209,255,255,255,255,255,255,192,0,15,208,85,85,255,255,149,85,64,0,15,208,0,0,255,255,192,0,0,0,15,208,0,3,255,255,240,0,0,0,15,208,0,11,255,251,248,0,0,0,15,208,0,47,231,246,253,0,0,0,15,208,0,191,199,244,255,64,0,0,15,208,2,255,7,244,127,208,0,0,15,208,15,253,7,244,31,244,0,0,15,208,127,244,7,244,11,254,0,0,15,210,255,208,7,244,2,255,208,0,15,215,255,64,7,244,0,191,240,0,15,209,252,0,7,244,0,47,192,0,15,208,160,0,7,244,0,7,0,0,15,208,0,0,7,244,0,0,0,0,10,144,0,0,7,244,0,0,0, + // 0x4fe1 信 + 225,79,38,38,124,40,1,252,0,0,4,0,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,63,193,255,255,255,255,240,0,0,0,191,65,255,255,255,255,240,0,0,0,255,1,255,255,255,255,240,0,0,2,254,0,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,0,11,248,0,0,0,0,0,0,0,0,31,240,255,255,255,255,255,255,208,0,63,224,255,255,255,255,255,255,208,0,191,208,255,255,255,255,255,255,208,1,255,208,0,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,0,15,255,208,3,255,255,255,255,244,0,63,255,208,3,255,255,255,255,244,0,255,223,208,3,255,255,255,255,244,0,191,79,208,0,0,0,0,0,0,0,62,15,208,0,0,0,0,0,0,0,44,15,208,0,0,0,0,0,0,0,0,15,208,3,255,255,255,255,244,0,0,15,208,3,255,255,255,255,244,0,0,15,208,3,255,255,255,255,244,0,0,15,208,0,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,0,15,208,7,255,255,255,255,252,0,0,15,208,7,255,255,255,255,252,0,0,15,208,7,255,255,255,255,252,0,0,15,208,7,240,0,0,3,252,0,0,15,208,7,240,0,0,3,252,0,0,15,208,7,240,0,0,3,252,0,0,15,208,7,240,0,0,3,252,0,0,15,208,7,240,0,0,3,252,0,0,15,208,7,255,255,255,255,252,0,0,15,208,7,255,255,255,255,252,0,0,15,208,7,255,255,255,255,252,0,0,15,208,7,240,0,0,3,252,0,0,10,128,7,240,0,0,2,168,0, + // 0x500b 個 + 11,80,36,38,86,40,1,252,0,0,64,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,3,252,127,255,255,255,255,255,0,3,248,127,255,255,255,255,255,0,11,240,127,255,255,255,255,255,0,15,240,127,0,0,0,0,127,0,47,208,127,0,3,240,0,127,0,63,192,127,0,3,240,0,127,0,191,128,127,0,3,240,0,127,1,255,128,127,0,3,240,0,127,3,255,128,127,26,175,250,169,127,7,255,128,127,31,255,255,253,127,15,255,128,127,31,255,255,253,127,63,255,128,127,0,3,240,0,127,191,255,128,127,0,3,240,0,127,255,127,128,127,0,3,240,0,127,190,63,128,127,0,3,240,0,127,60,63,128,127,2,171,250,160,127,32,63,128,127,3,255,255,240,127,0,63,128,127,3,255,255,240,127,0,63,128,127,3,224,3,240,127,0,63,128,127,3,224,3,240,127,0,63,128,127,3,224,3,240,127,0,63,128,127,3,224,3,240,127,0,63,128,127,3,224,3,240,127,0,63,128,127,3,250,171,240,127,0,63,128,127,3,255,255,240,127,0,63,128,127,3,255,255,240,127,0,63,128,127,0,0,0,0,127,0,63,128,127,0,0,0,0,127,0,63,128,127,0,0,0,0,127,0,63,128,127,255,255,255,255,255,0,63,128,127,255,255,255,255,255,0,63,128,127,255,255,255,255,255,0,63,128,127,85,85,85,85,191,0,63,128,127,0,0,0,0,127,0,63,64,42,0,0,0,0,21, + // 0x503c 值 + 60,80,37,38,124,40,1,252,0,0,36,0,0,7,164,0,0,0,0,0,127,64,0,7,244,0,0,0,0,0,191,0,0,11,240,0,0,0,0,0,254,0,0,11,240,0,0,0,0,2,253,191,255,255,255,255,255,0,0,3,252,191,255,255,255,255,255,0,0,7,244,191,255,255,255,255,255,0,0,15,240,0,0,31,208,0,0,0,0,31,224,0,0,31,192,0,0,0,0,63,192,0,0,47,192,0,0,0,0,191,128,0,0,63,128,0,0,0,1,255,128,11,255,255,255,255,240,0,3,255,128,11,255,255,255,255,240,0,11,255,128,11,255,255,255,255,240,0,47,255,128,11,224,0,0,7,240,0,127,255,128,11,224,0,0,7,240,0,127,191,128,11,250,170,170,175,240,0,47,63,128,11,255,255,255,255,240,0,28,63,128,11,255,255,255,255,240,0,4,63,128,11,224,0,0,7,240,0,0,63,128,11,224,0,0,7,240,0,0,63,128,11,224,0,0,7,240,0,0,63,128,11,250,170,170,175,240,0,0,63,128,11,255,255,255,255,240,0,0,63,128,11,255,255,255,255,240,0,0,63,128,11,224,0,0,7,240,0,0,63,128,11,224,0,0,7,240,0,0,63,128,11,224,0,0,7,240,0,0,63,128,11,255,255,255,255,240,0,0,63,128,11,255,255,255,255,240,0,0,63,128,11,250,170,170,175,240,0,0,63,128,11,224,0,0,7,240,0,0,63,128,11,224,0,0,7,240,0,0,63,128,15,224,0,0,11,240,0,0,63,135,255,255,255,255,255,255,192,0,63,135,255,255,255,255,255,255,192,0,63,135,255,255,255,255,255,255,192,0,63,128,0,0,0,0,0,0,0, + // 0x504f 偏 + 79,80,38,39,134,40,1,251,0,0,144,0,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,0,2,252,255,255,255,255,255,255,208,0,3,248,255,255,255,255,255,255,208,0,7,244,255,255,255,255,255,255,208,0,15,240,0,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,47,255,255,255,255,254,0,0,255,64,47,255,255,255,255,254,0,1,255,64,47,255,255,255,255,254,0,3,255,64,47,192,0,0,0,254,0,7,255,64,47,192,0,0,0,254,0,15,255,64,47,192,0,0,0,254,0,63,255,64,47,255,255,255,255,254,0,191,255,64,47,255,255,255,255,254,0,255,127,64,47,255,255,255,255,254,0,190,63,64,47,128,0,0,0,0,0,60,63,64,47,128,0,0,0,0,0,36,63,64,63,128,0,0,0,0,0,0,63,64,63,255,255,255,255,255,64,0,63,64,63,255,255,255,255,255,64,0,63,64,63,255,255,255,255,255,64,0,63,64,63,248,31,66,240,63,64,0,63,64,127,248,31,66,240,63,64,0,63,64,191,248,31,66,240,63,64,0,63,64,255,248,31,66,240,63,64,0,63,64,255,255,255,255,255,255,64,0,63,65,253,255,255,255,255,255,64,0,63,67,253,255,255,255,255,255,64,0,63,67,249,248,31,66,240,63,64,0,63,75,245,248,31,66,240,63,64,0,63,79,241,248,31,66,240,63,64,0,63,127,209,248,31,66,240,63,64,0,63,95,193,248,31,66,240,63,64,0,63,71,1,248,31,66,247,255,64,0,63,64,1,248,31,66,243,255,0,0,63,64,1,248,31,66,242,248,0,0,0,0,0,0,0,0,0,0,0, + // 0x505c 停 + 92,80,38,38,124,40,1,252,0,0,36,0,0,6,160,0,0,0,0,0,127,64,0,11,240,0,0,0,0,0,191,0,0,11,240,0,0,0,0,0,255,0,0,11,240,0,0,0,0,2,254,255,255,255,255,255,255,192,0,3,252,255,255,255,255,255,255,192,0,11,244,255,255,255,255,255,255,192,0,15,240,0,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,0,127,192,7,255,255,255,255,244,0,0,255,128,7,255,255,255,255,244,0,2,255,128,7,250,170,170,171,244,0,7,255,128,7,240,0,0,7,244,0,15,255,128,7,240,0,0,7,244,0,63,255,128,7,240,0,0,7,244,0,191,255,128,7,255,255,255,255,244,0,255,191,128,7,255,255,255,255,244,0,127,63,128,2,170,170,170,170,160,0,60,63,128,0,0,0,0,0,0,0,20,63,131,255,255,255,255,255,255,224,0,63,131,255,255,255,255,255,255,224,0,63,131,255,255,255,255,255,255,224,0,63,131,244,0,0,0,0,15,224,0,63,131,244,0,0,0,0,15,224,0,63,131,244,0,0,0,0,15,224,0,63,131,244,255,255,255,255,207,224,0,63,131,244,255,255,255,255,207,224,0,63,128,0,255,255,255,255,192,0,0,63,128,0,0,11,240,0,0,0,0,63,128,0,0,11,240,0,0,0,0,63,128,0,0,11,240,0,0,0,0,63,128,0,0,11,240,0,0,0,0,63,128,0,0,11,240,0,0,0,0,63,128,0,0,11,240,0,0,0,0,63,128,0,21,95,240,0,0,0,0,63,128,0,63,255,240,0,0,0,0,63,128,0,47,255,224,0,0,0,0,47,128,0,31,254,64,0,0,0, + // 0x5075 偵 + 117,80,37,38,124,40,1,252,0,0,4,0,0,10,160,0,0,0,0,0,47,128,0,15,240,0,0,0,0,0,63,192,0,15,240,0,0,0,0,0,191,64,0,15,240,0,0,0,0,0,255,0,0,15,255,255,255,128,0,1,254,0,0,15,255,255,255,128,0,3,252,0,0,15,255,255,255,128,0,11,248,0,0,15,240,0,0,0,0,15,240,0,0,15,240,0,0,0,0,63,224,0,0,15,240,0,0,0,0,191,208,15,255,255,255,255,252,0,0,255,208,15,255,255,255,255,252,0,3,255,208,15,255,255,255,255,252,0,15,255,208,15,224,0,0,3,252,0,63,255,208,15,224,0,0,3,252,0,255,239,208,15,250,170,170,171,252,0,191,143,208,15,255,255,255,255,252,0,63,15,208,15,255,255,255,255,252,0,44,15,208,15,224,0,0,3,252,0,0,15,208,15,224,0,0,3,252,0,0,15,208,15,224,0,0,3,252,0,0,15,208,15,250,170,170,171,252,0,0,15,208,15,255,255,255,255,252,0,0,15,208,15,255,255,255,255,252,0,0,15,208,15,224,0,0,3,252,0,0,15,208,15,224,0,0,3,252,0,0,15,208,15,224,0,0,3,252,0,0,15,208,15,255,255,255,255,252,0,0,15,208,15,255,255,255,255,252,0,0,15,208,15,255,255,255,255,248,0,0,15,208,0,1,0,0,16,0,0,0,15,208,0,15,224,1,253,0,0,0,15,208,0,191,240,3,255,128,0,0,15,208,7,255,192,0,191,244,0,0,15,208,127,254,0,0,31,254,0,0,15,211,255,244,0,0,3,255,192,0,15,208,191,128,0,0,0,191,64,0,10,128,40,0,0,0,0,24,0, + // 0x5099 備 + 153,80,38,38,124,40,1,252,0,0,128,0,10,128,0,168,0,0,0,1,253,0,31,192,0,253,0,0,0,2,252,0,31,192,0,253,0,0,0,3,248,85,111,213,85,254,85,64,0,7,245,255,255,255,255,255,255,192,0,15,241,255,255,255,255,255,255,192,0,31,209,255,255,255,255,255,255,192,0,47,192,0,31,192,0,253,0,0,0,63,128,0,31,192,0,253,0,0,0,191,64,0,31,192,0,253,0,0,0,255,64,0,0,0,0,0,0,0,3,255,64,85,85,85,85,85,85,64,7,255,64,255,255,255,255,255,255,208,15,255,64,255,255,255,255,255,255,208,47,255,64,255,255,255,255,255,255,208,127,255,64,253,0,0,0,0,0,0,255,191,64,253,0,0,0,0,0,0,191,63,64,253,31,255,255,255,255,64,60,63,64,253,47,255,255,255,255,64,36,63,64,253,47,255,255,255,255,64,0,63,64,253,47,128,47,0,63,64,0,63,64,253,47,128,47,0,63,64,0,63,64,253,47,128,47,0,63,64,0,63,64,253,47,255,255,255,255,64,0,63,64,253,47,255,255,255,255,64,0,63,64,252,47,213,127,149,127,64,0,63,65,252,47,128,47,0,63,64,0,63,65,252,47,128,47,0,63,64,0,63,66,252,47,213,127,149,127,64,0,63,67,248,47,255,255,255,255,64,0,63,67,244,47,255,255,255,255,64,0,63,71,240,47,128,47,0,63,64,0,63,75,240,47,128,47,0,63,64,0,63,79,224,47,128,47,0,63,64,0,63,111,208,47,128,47,0,63,64,0,63,127,192,47,128,47,15,255,64,0,63,79,64,47,128,47,15,255,0,0,63,66,0,31,64,26,11,228,0, + // 0x50b3 傳 + 179,80,38,38,124,40,1,252,0,0,16,0,0,1,80,0,0,0,0,0,63,64,0,7,240,0,0,0,0,0,191,64,0,7,240,0,0,0,0,0,255,255,255,255,255,255,255,192,0,1,253,255,255,255,255,255,255,192,0,3,252,255,255,255,255,255,255,192,0,11,244,0,0,7,240,0,0,0,0,15,240,0,0,7,240,0,0,0,0,47,208,31,255,255,255,255,254,0,0,63,192,31,255,255,255,255,254,0,0,255,192,31,192,11,244,0,254,0,2,255,128,31,192,7,240,0,254,0,3,255,128,31,255,255,255,255,254,0,15,255,128,31,255,255,255,255,254,0,63,255,128,31,192,11,244,0,254,0,191,255,128,31,192,7,240,0,254,0,255,191,128,31,192,11,244,0,254,0,127,63,128,31,255,255,255,255,254,0,60,63,128,31,255,255,255,255,254,0,16,63,128,0,0,7,240,31,224,0,0,63,128,0,0,11,240,7,248,0,0,63,128,255,255,255,255,255,255,0,0,63,128,255,255,255,255,255,255,192,0,63,128,255,255,170,169,255,175,208,0,63,128,0,0,0,0,191,7,0,0,63,128,0,0,0,0,191,0,0,0,63,131,255,255,255,255,255,255,208,0,63,131,255,255,255,255,255,255,208,0,63,131,255,255,255,255,255,255,208,0,63,128,0,248,0,0,191,0,0,0,63,128,3,254,0,0,191,0,0,0,63,128,0,255,128,0,191,0,0,0,63,128,0,63,208,0,191,0,0,0,63,128,0,31,240,0,191,0,0,0,63,128,0,7,240,0,191,0,0,0,63,128,0,2,131,255,255,0,0,0,63,128,0,0,2,255,254,0,0,0,42,128,0,0,0,255,228,0,0, + // 0x50be 傾 + 190,80,38,38,124,40,1,252,0,1,64,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,7,240,0,15,255,255,255,255,208,0,11,240,0,15,255,255,255,255,208,0,15,211,240,15,255,255,255,255,208,0,31,199,240,0,0,15,240,0,0,0,63,199,240,0,0,31,208,0,0,0,127,71,240,0,0,31,192,0,0,0,191,7,240,0,255,255,255,255,0,0,255,7,240,0,255,255,255,255,0,2,255,7,240,52,255,255,255,255,0,3,255,7,240,253,253,0,0,127,0,11,255,7,242,254,253,0,0,127,0,31,255,7,251,248,253,0,0,127,0,63,255,7,255,224,255,170,170,255,0,191,255,7,255,128,255,255,255,255,0,255,127,7,253,0,255,255,255,255,0,189,127,7,244,0,253,0,0,127,0,60,127,7,240,0,253,0,0,127,0,48,127,7,240,0,253,0,0,127,0,0,127,7,240,0,253,0,0,127,0,0,127,7,240,0,255,255,255,255,0,0,127,7,240,16,255,255,255,255,0,0,127,7,240,62,255,170,170,255,0,0,127,7,240,63,253,0,0,127,0,0,127,7,240,63,253,0,0,127,0,0,127,7,240,63,253,0,0,127,0,0,127,3,240,63,255,255,255,255,0,0,127,3,255,254,255,255,255,255,0,0,127,3,255,252,255,255,255,255,0,0,127,0,255,244,2,0,1,0,0,0,127,0,0,0,15,224,15,208,0,0,127,0,0,0,127,240,47,248,0,0,127,0,0,3,255,192,7,254,0,0,127,0,0,47,254,0,1,255,192,0,127,0,0,255,244,0,0,63,224,0,127,0,0,63,128,0,0,15,192,0,127,0,0,24,0,0,0,2,0, + // 0x5132 儲 + 50,81,38,38,124,40,1,252,0,1,0,0,0,0,47,64,0,0,0,3,244,0,0,0,47,128,14,64,0,7,246,255,255,64,47,128,47,192,0,11,242,255,255,64,47,128,63,64,0,15,226,255,255,64,47,128,127,0,0,31,208,0,0,11,255,254,190,0,0,63,192,0,0,15,255,255,253,0,0,127,79,255,255,223,255,255,252,0,0,191,15,255,255,224,47,131,244,0,0,255,15,255,255,224,47,139,240,0,3,255,0,0,0,0,47,143,208,0,7,255,0,0,0,0,47,175,192,0,15,255,0,0,0,47,255,255,255,208,47,255,3,255,255,111,255,255,255,208,127,255,3,255,255,111,255,255,255,208,255,255,3,255,255,64,11,244,128,0,191,127,0,0,0,0,31,231,240,0,60,127,0,0,0,0,127,194,252,0,52,127,3,255,255,64,255,0,190,0,0,127,3,255,255,71,253,0,52,0,0,127,3,255,255,95,255,255,255,0,0,127,0,0,0,191,255,255,255,0,0,127,0,0,0,191,255,255,255,0,0,127,0,0,0,62,190,0,127,0,0,127,3,255,255,196,190,0,127,0,0,127,3,255,255,192,190,0,127,0,0,127,3,255,255,192,190,0,127,0,0,127,3,240,15,192,191,255,255,0,0,127,3,240,15,192,191,255,255,0,0,127,3,240,15,192,191,255,255,0,0,127,3,240,15,192,190,0,127,0,0,127,3,240,15,192,190,0,127,0,0,127,3,255,255,192,190,0,127,0,0,127,3,255,255,192,191,255,255,0,0,127,3,255,255,192,191,255,255,0,0,127,3,240,0,0,191,255,255,0,0,127,3,240,0,0,190,0,127,0,0,106,1,80,0,0,105,0,21,0, + // 0x5145 充 + 69,81,37,38,124,40,2,252,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,63,255,255,255,255,255,255,255,253,0,63,255,255,255,255,255,255,255,253,0,63,255,255,255,255,255,255,255,253,0,42,170,171,255,170,170,170,170,168,0,0,0,3,253,0,0,208,0,0,0,0,0,7,252,0,11,244,0,0,0,0,0,11,244,0,11,254,0,0,0,0,0,15,240,0,2,255,128,0,0,0,0,47,208,0,0,191,224,0,0,0,0,63,128,0,0,31,248,0,0,0,0,127,170,175,255,255,254,0,0,15,255,255,255,255,255,255,255,128,0,15,255,255,255,255,255,255,255,224,0,15,255,255,255,255,234,165,111,244,0,15,234,85,0,0,0,0,15,248,0,0,0,1,84,0,42,128,3,208,0,0,0,7,248,0,63,192,0,0,0,0,0,7,248,0,63,192,0,0,0,0,0,7,244,0,63,192,0,0,0,0,0,11,244,0,63,192,0,0,0,0,0,15,240,0,63,192,0,0,0,0,0,15,240,0,63,192,0,0,0,0,0,31,224,0,63,192,0,32,0,0,0,63,208,0,63,192,0,62,0,0,0,191,192,0,63,192,0,63,64,0,1,255,64,0,63,192,0,63,64,0,7,255,0,0,63,192,0,127,0,0,63,252,0,0,63,192,0,127,0,6,255,240,0,0,47,192,0,255,0,191,255,192,0,0,47,255,255,254,0,191,253,0,0,0,31,255,255,252,0,63,224,0,0,0,11,255,255,248,0,24,0,0,0,0,0,106,170,64,0, + // 0x5148 先 + 72,81,36,38,86,40,2,252,0,0,0,0,191,0,0,0,0,0,2,228,0,255,0,0,0,0,0,3,252,0,255,0,0,0,0,0,3,248,0,255,0,0,0,0,0,7,244,0,255,0,0,0,0,0,15,240,0,255,0,0,0,0,0,15,255,255,255,255,255,255,128,0,47,255,255,255,255,255,255,128,0,63,255,255,255,255,255,255,128,0,127,170,170,255,170,170,170,64,0,255,0,0,255,0,0,0,0,2,254,0,0,255,0,0,0,0,3,252,0,0,255,0,0,0,0,15,248,0,0,255,0,0,0,0,2,240,0,0,255,0,0,0,0,0,80,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,106,170,170,170,255,170,170,170,169,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,0,0,11,244,0,63,192,0,0,0,0,15,240,0,63,192,0,0,0,0,15,240,0,63,192,0,0,0,0,15,224,0,63,192,0,0,0,0,31,224,0,63,192,0,0,0,0,47,208,0,63,192,0,0,0,0,63,192,0,63,192,0,0,0,0,191,128,0,63,192,0,116,0,1,255,0,0,63,192,0,127,0,3,254,0,0,63,192,0,191,0,31,252,0,0,63,192,0,191,0,191,244,0,0,63,192,0,254,7,255,208,0,0,63,234,170,253,191,255,64,0,0,47,255,255,252,127,252,0,0,0,15,255,255,248,47,208,0,0,0,2,255,255,224,13,0,0,0,0,0,0,0,0, + // 0x5149 光 + 73,81,38,38,124,40,1,252,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,7,0,0,63,128,0,15,64,0,0,127,128,0,63,128,0,31,240,0,0,63,192,0,63,128,0,63,208,0,0,47,224,0,63,128,0,127,192,0,0,15,240,0,63,128,0,191,64,0,0,11,248,0,63,128,0,255,0,0,0,3,252,0,63,128,2,253,0,0,0,2,254,0,63,128,3,252,0,0,0,0,255,0,63,128,11,244,0,0,0,0,255,64,63,128,31,224,0,0,0,0,125,0,63,128,7,192,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,26,170,170,170,191,234,170,170,170,64,47,255,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,255,192,0,0,2,253,0,15,240,0,0,0,0,0,2,252,0,15,240,0,0,0,0,0,3,252,0,15,240,0,0,0,0,0,3,252,0,15,240,0,0,0,0,0,3,252,0,15,240,0,0,0,0,0,7,248,0,15,240,0,0,0,0,0,11,244,0,15,240,0,0,0,0,0,15,240,0,15,240,0,0,0,0,0,31,240,0,15,240,0,4,0,0,0,63,208,0,15,240,0,14,64,0,0,191,192,0,15,240,0,15,208,0,2,255,64,0,15,240,0,31,192,0,11,254,0,0,15,240,0,31,192,0,127,252,0,0,15,240,0,47,192,7,255,240,0,0,15,240,0,63,192,127,255,128,0,0,11,255,255,255,128,47,253,0,0,0,7,255,255,255,0,15,208,0,0,0,2,255,255,253,0,5,0,0,0,0,0,21,85,80,0, + // 0x5165 入 + 101,81,37,36,104,40,2,252,0,2,170,170,170,64,0,0,0,0,0,3,255,255,255,64,0,0,0,0,0,3,255,255,255,64,0,0,0,0,0,3,255,255,255,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,1,63,192,0,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,0,7,255,224,0,0,0,0,0,0,0,11,255,240,0,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,0,31,251,244,0,0,0,0,0,0,0,47,231,252,0,0,0,0,0,0,0,63,211,252,0,0,0,0,0,0,0,127,194,254,0,0,0,0,0,0,0,255,128,255,0,0,0,0,0,0,1,255,0,255,128,0,0,0,0,0,3,255,0,127,192,0,0,0,0,0,7,253,0,63,224,0,0,0,0,0,15,252,0,31,244,0,0,0,0,0,47,244,0,15,252,0,0,0,0,0,127,224,0,7,254,0,0,0,0,0,255,192,0,2,255,128,0,0,0,3,255,64,0,0,255,208,0,0,0,15,254,0,0,0,127,244,0,0,0,47,252,0,0,0,47,253,0,0,0,255,240,0,0,0,11,255,128,0,7,255,192,0,0,0,2,255,240,0,47,255,64,0,0,0,0,191,253,0,255,252,0,0,0,0,0,47,255,64,127,224,0,0,0,0,0,7,253,0,31,64,0,0,0,0,0,0,248,0,5,0,0,0,0,0,0,0,16,0, + // 0x5168 全 + 104,81,37,37,114,40,1,253,0,0,0,0,191,192,0,0,0,0,0,0,0,0,255,224,0,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,0,11,255,253,0,0,0,0,0,0,0,31,246,255,0,0,0,0,0,0,0,127,224,255,192,0,0,0,0,0,1,255,192,63,240,0,0,0,0,0,7,255,0,15,253,0,0,0,0,0,31,252,0,3,255,64,0,0,0,0,191,240,0,0,255,224,0,0,0,2,255,192,0,0,63,248,0,0,0,15,255,0,0,0,15,255,64,0,0,127,252,0,0,0,3,255,224,0,2,255,224,0,0,0,0,191,253,0,31,255,64,0,0,0,0,31,255,192,127,255,255,255,255,255,255,255,255,192,47,226,255,255,255,255,255,252,127,64,15,2,255,255,255,255,255,252,10,0,0,0,85,85,127,213,85,80,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,47,255,255,255,255,255,255,64,0,0,47,255,255,255,255,255,255,64,0,0,47,255,255,255,255,255,255,64,0,0,0,0,0,127,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,5,85,85,85,127,213,85,85,85,0,15,255,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,255,0, + // 0x5171 共 + 113,81,36,38,86,40,2,252,0,0,21,64,0,1,84,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,10,170,191,234,170,171,254,170,164,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,0,0,63,192,0,3,252,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,170,170,170,170,170,170,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,15,128,0,7,224,0,0,0,0,63,244,0,31,252,0,0,0,0,255,224,0,11,255,64,0,0,3,255,128,0,1,255,224,0,0,15,254,0,0,0,63,248,0,0,127,248,0,0,0,15,255,0,2,255,208,0,0,0,2,255,208,31,255,64,0,0,0,0,191,244,63,252,0,0,0,0,0,47,252,15,208,0,0,0,0,0,7,240,2,0,0,0,0,0,0,1,64, + // 0x5177 具 + 119,81,36,36,68,40,2,252,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,250,170,170,170,175,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,250,170,170,170,175,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,0,11,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,85,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,11,208,0,3,208,0,0,0,0,127,248,0,31,254,0,0,0,11,255,248,0,47,255,244,0,1,191,255,128,0,2,255,255,128,47,255,248,0,0,0,31,255,248,127,255,128,0,0,0,0,191,254,31,244,0,0,0,0,0,11,244,10,0,0,0,0,0,0,1,128, + // 0x5197 冗 + 151,81,37,35,94,40,2,252,47,255,255,255,255,255,255,255,252,0,47,255,255,255,255,255,255,255,252,0,47,255,255,255,255,255,255,255,252,0,47,234,170,170,170,170,170,171,252,0,47,192,0,0,0,0,0,3,252,0,47,192,0,0,0,0,0,3,252,0,47,192,0,0,0,0,0,3,252,0,47,192,0,0,0,0,0,3,252,0,47,192,0,0,0,0,0,3,252,0,47,192,0,0,0,0,0,3,252,0,21,64,63,255,255,255,248,1,84,0,0,0,63,255,255,255,248,0,0,0,0,0,63,255,255,255,248,0,0,0,0,0,63,229,85,91,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,63,192,0,3,248,0,0,0,0,0,127,128,0,3,248,0,0,0,0,0,191,64,0,3,248,0,16,0,0,0,255,0,0,3,248,0,61,0,0,2,254,0,0,3,248,0,63,64,0,7,253,0,0,3,248,0,127,64,0,31,248,0,0,3,248,0,127,0,0,127,240,0,0,3,248,0,127,0,3,255,208,0,0,3,252,0,191,0,47,255,64,0,0,3,255,170,255,0,255,253,0,0,0,3,255,255,253,0,127,224,0,0,0,1,255,255,252,0,47,64,0,0,0,0,127,255,224,0,4,0,0,0,0,0,0,0,0,0, + // 0x51b7 冷 + 183,81,37,38,124,40,2,252,0,0,0,0,0,170,0,0,0,0,0,0,0,0,2,255,64,0,0,0,4,0,0,0,7,255,192,0,0,0,31,0,0,0,15,255,240,0,0,0,127,208,0,0,47,255,248,0,0,0,191,248,0,0,191,195,254,0,0,0,31,254,0,1,255,65,255,128,0,0,7,255,128,7,255,0,191,208,0,0,0,255,208,31,252,0,47,248,0,0,0,63,128,127,240,0,11,254,0,0,0,14,1,255,208,0,3,255,192,0,0,0,7,255,64,0,0,191,244,0,0,0,47,254,85,85,85,111,254,0,0,1,255,243,255,255,255,203,255,128,0,2,255,195,255,255,255,193,255,0,0,0,254,3,255,255,255,192,61,0,0,0,116,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,0,0,0,0,0,0,0,0,0,0,0,7,66,255,255,255,255,255,208,0,0,15,210,255,255,255,255,255,208,0,0,47,226,255,255,255,255,255,208,0,0,63,193,85,95,245,85,111,208,0,0,191,128,0,15,240,0,15,208,0,1,255,0,0,15,240,0,15,208,0,3,254,0,0,15,240,0,15,208,0,11,252,0,0,15,240,0,15,208,0,15,244,0,0,15,240,0,15,208,0,63,240,0,0,15,240,0,15,208,0,127,208,0,0,15,240,42,175,208,0,255,128,0,0,15,240,63,255,208,0,255,0,0,0,15,240,31,255,192,0,45,0,0,0,15,240,15,253,0,0,4,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,10,160,0,0,0,0, + // 0x51c6 准 + 198,81,37,38,124,40,2,252,0,0,0,0,36,0,5,0,0,0,0,0,0,0,191,64,11,240,0,0,0,0,0,0,255,0,15,240,0,0,15,64,0,1,254,0,15,224,0,0,63,224,0,3,252,0,47,192,0,0,63,252,0,7,248,0,63,192,0,0,11,255,64,15,244,0,63,64,0,0,1,255,208,31,240,0,191,0,0,0,0,63,240,63,255,255,255,255,253,0,0,15,192,127,255,255,255,255,253,0,0,3,0,255,255,255,255,255,253,0,0,0,2,255,213,86,253,85,84,0,0,0,7,255,192,1,252,0,0,0,0,0,15,255,192,1,252,0,0,0,0,0,63,255,192,1,252,0,0,0,0,0,255,239,192,1,252,0,0,0,0,0,127,159,255,255,255,255,244,0,0,0,30,31,255,255,255,255,244,0,0,0,4,31,255,255,255,255,244,0,0,0,0,31,213,86,253,85,80,0,0,0,0,31,192,1,252,0,0,0,0,11,0,31,192,1,252,0,0,0,0,31,208,31,192,1,252,0,0,0,0,63,208,31,192,1,252,0,0,0,0,127,192,31,255,255,255,255,244,0,0,255,0,31,255,255,255,255,244,0,2,254,0,31,255,255,255,255,244,0,7,252,0,31,213,86,253,85,80,0,15,248,0,31,192,1,252,0,0,0,47,240,0,31,192,1,252,0,0,0,127,208,0,31,192,1,252,0,0,0,255,128,0,31,192,1,252,0,0,0,255,0,0,31,229,86,254,85,85,0,61,0,0,31,255,255,255,255,255,64,8,0,0,31,255,255,255,255,255,64,0,0,0,31,255,255,255,255,255,64,0,0,0,31,192,0,0,0,0,0,0,0,0,31,192,0,0,0,0,0, + // 0x51fa 出 + 250,81,32,38,48,40,4,252,0,0,0,10,144,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,224,0,15,224,0,15,240,15,250,170,175,250,170,175,240,15,255,255,255,255,255,255,240,15,255,255,255,255,255,255,240,15,255,255,255,255,255,255,240,0,0,0,15,224,0,0,0,0,0,0,15,224,0,0,0,106,0,0,15,224,0,0,169,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,0,0,15,224,0,0,254,191,170,170,175,250,170,170,254,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,191,255,255,255,255,255,255,254,191,0,0,0,0,0,0,254,191,0,0,0,0,0,0,254,106,0,0,0,0,0,0,169, + // 0x5206 分 + 6,82,38,37,114,40,1,252,0,0,1,228,0,0,180,0,0,0,0,0,3,254,0,7,252,0,0,0,0,0,7,252,0,3,254,0,0,0,0,0,15,248,0,1,255,0,0,0,0,0,31,240,0,0,255,192,0,0,0,0,63,224,0,0,63,224,0,0,0,0,255,192,0,0,47,244,0,0,0,1,255,64,0,0,15,252,0,0,0,3,255,0,0,0,3,255,0,0,0,15,252,0,0,0,1,255,192,0,0,63,244,0,0,0,0,255,224,0,0,191,224,0,0,0,0,63,248,0,2,255,192,0,0,0,0,15,254,0,15,255,0,0,0,0,0,7,255,192,63,255,170,170,170,170,170,171,255,224,191,251,255,255,255,255,255,253,191,192,47,195,255,255,255,255,255,253,47,0,11,3,255,255,255,255,255,253,4,0,0,0,0,15,240,0,2,253,0,0,0,0,0,15,240,0,2,253,0,0,0,0,0,31,240,0,2,253,0,0,0,0,0,31,224,0,2,252,0,0,0,0,0,47,208,0,2,252,0,0,0,0,0,63,192,0,3,252,0,0,0,0,0,127,192,0,3,252,0,0,0,0,0,255,128,0,3,252,0,0,0,0,1,255,0,0,3,252,0,0,0,0,3,254,0,0,3,252,0,0,0,0,15,252,0,0,3,248,0,0,0,0,47,248,0,0,7,248,0,0,0,0,255,224,0,0,11,244,0,0,0,7,255,192,0,0,15,244,0,0,0,127,255,0,0,0,47,240,0,0,7,255,248,0,7,255,255,224,0,0,3,255,208,0,3,255,255,208,0,0,1,254,0,0,2,255,255,64,0,0,0,224,0,0,0,170,148,0,0,0, + // 0x5217 列 + 23,82,36,37,77,40,1,252,0,0,0,0,0,0,0,0,254,31,255,255,255,255,192,0,0,254,31,255,255,255,255,192,0,0,254,31,255,255,255,255,192,0,0,254,5,86,255,85,85,75,240,0,254,0,1,254,0,0,11,240,0,254,0,2,252,0,0,11,240,0,254,0,3,252,0,0,11,240,0,254,0,3,248,0,0,11,240,0,254,0,7,244,0,0,11,240,0,254,0,15,255,255,254,11,240,0,254,0,31,255,255,255,11,240,0,254,0,47,255,255,254,11,240,0,254,0,63,213,85,254,11,240,0,254,0,191,64,1,253,11,240,0,254,0,255,0,2,252,11,240,0,254,3,253,0,3,252,11,240,0,254,7,255,0,3,248,11,240,0,254,15,255,224,7,244,11,240,0,254,63,255,252,15,240,11,240,0,254,255,203,255,79,224,11,240,0,254,127,1,255,255,208,11,240,0,254,12,0,63,255,192,11,240,0,254,0,0,11,255,64,11,240,0,254,0,0,1,255,0,11,240,0,254,0,0,2,253,0,11,240,0,254,0,0,7,252,0,0,0,0,254,0,0,15,244,0,0,0,0,254,0,0,63,224,0,0,0,0,254,0,0,191,192,0,0,0,0,254,0,2,255,64,0,0,0,0,254,0,15,253,0,0,0,0,0,254,0,127,248,0,0,0,0,1,254,2,255,224,0,0,0,47,255,253,3,255,64,0,0,0,15,255,252,0,252,0,0,0,0,15,255,244,0,32,0,0,0,0,6,169,64, + // 0x521d 初 + 29,82,37,39,134,40,1,251,0,3,244,0,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,0,7,244,0,170,170,170,170,170,64,0,7,244,1,255,255,255,255,255,128,0,7,244,1,255,255,255,255,255,128,0,7,244,1,255,255,255,255,255,128,21,91,249,80,0,15,224,0,127,64,63,255,255,253,0,15,224,0,127,64,63,255,255,253,0,15,224,0,127,64,63,255,255,252,0,31,224,0,127,64,0,0,3,248,0,31,208,0,127,64,0,0,11,240,0,31,208,0,127,64,0,0,31,224,0,31,208,0,127,64,0,0,63,192,0,31,208,0,127,64,0,0,191,70,0,47,192,0,191,64,0,1,255,15,128,47,192,0,191,64,0,3,252,47,192,47,192,0,191,0,0,11,252,127,0,63,192,0,191,0,0,47,255,252,0,63,192,0,191,0,0,191,255,244,0,63,128,0,191,0,1,255,255,240,0,127,64,0,191,0,11,255,251,252,0,191,0,0,255,0,47,255,245,255,0,255,0,0,255,0,191,231,244,191,64,255,0,0,255,0,63,199,244,62,2,253,0,0,255,0,46,7,244,12,3,252,0,0,255,0,8,7,244,0,7,252,0,0,255,0,0,7,244,0,15,244,0,0,254,0,0,7,244,0,31,240,0,1,254,0,0,7,244,0,63,208,0,1,253,0,0,7,244,0,191,192,0,2,253,0,0,7,244,2,255,64,0,3,252,0,0,7,244,11,254,0,0,11,252,0,0,7,244,47,252,0,191,255,248,0,0,7,244,63,240,0,63,255,240,0,0,7,244,15,192,0,63,255,208,0,0,3,244,2,0,0,42,169,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5230 到 + 48,82,36,37,77,40,1,252,0,0,0,0,0,0,0,0,170,0,0,0,0,0,0,0,0,254,63,255,255,255,255,208,0,0,254,63,255,255,255,255,208,0,0,254,63,255,255,255,255,211,244,0,254,21,87,253,85,85,67,244,0,254,0,7,248,0,0,3,244,0,254,0,11,244,7,192,3,244,0,254,0,15,240,31,224,3,244,0,254,0,31,208,11,244,3,244,0,254,0,47,192,3,252,3,244,0,254,0,63,128,0,255,3,244,0,254,42,255,255,255,255,67,244,0,254,63,255,255,255,255,195,244,0,254,63,255,255,255,255,227,244,0,254,63,254,170,85,11,243,244,0,254,0,0,21,64,3,131,244,0,254,0,0,47,192,0,3,244,0,254,0,0,47,192,0,3,244,0,254,0,0,47,192,0,3,244,0,254,0,0,47,192,0,3,244,0,254,11,255,255,255,255,3,244,0,254,11,255,255,255,255,3,244,0,254,11,255,255,255,255,3,244,0,254,1,85,111,213,85,3,244,0,254,0,0,47,192,0,3,244,0,254,0,0,47,192,0,2,164,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,0,0,0,0,254,0,0,47,192,5,144,0,0,254,0,0,47,239,255,208,0,0,254,5,175,255,255,255,208,0,0,254,127,255,255,255,255,208,0,0,254,63,255,255,254,148,0,31,255,254,63,255,165,0,0,0,15,255,253,41,0,0,0,0,0,11,255,248,0,0,0,0,0,0,7,170,64, + // 0x5236 制 + 54,82,36,38,86,40,1,252,0,0,6,144,0,0,0,0,0,0,164,11,240,0,0,0,0,191,0,254,11,240,0,0,0,0,191,1,253,11,240,0,0,0,0,191,2,252,11,240,0,0,47,192,191,3,252,11,240,0,0,47,192,191,3,255,255,255,255,208,47,192,191,7,255,255,255,255,208,47,192,191,15,255,255,255,255,208,47,192,191,31,229,95,245,85,64,47,192,191,63,192,11,240,0,0,47,192,191,127,128,11,240,0,0,47,192,191,7,0,11,240,0,0,47,192,191,63,255,255,255,255,252,47,192,191,63,255,255,255,255,252,47,192,191,63,255,255,255,255,252,47,192,191,21,85,95,245,85,84,47,192,191,0,0,11,240,0,0,47,192,191,0,0,11,240,0,0,47,192,191,0,0,11,240,0,0,47,192,191,7,255,255,255,255,240,47,192,191,7,255,255,255,255,240,47,192,191,7,255,255,255,255,240,47,192,191,7,245,95,245,91,240,47,192,191,7,240,11,240,11,240,47,192,191,7,240,11,240,11,240,47,192,191,7,240,11,240,11,240,21,64,191,7,240,11,240,11,240,0,0,191,7,240,11,240,11,240,0,0,191,7,240,11,240,11,240,0,0,191,7,240,11,240,11,240,0,0,191,7,240,11,240,11,240,0,0,191,7,240,11,243,255,224,0,0,191,7,240,11,241,255,208,0,0,191,7,224,11,240,254,64,7,255,255,0,0,11,240,0,0,3,255,254,0,0,11,240,0,0,2,255,252,0,0,11,240,0,0,1,250,144, + // 0x5237 刷 + 55,82,36,37,77,40,1,252,0,0,0,0,0,0,0,0,190,1,85,85,85,85,80,0,0,191,3,255,255,255,255,240,0,0,191,3,255,255,255,255,240,21,0,191,3,255,255,255,255,240,191,0,191,3,244,0,0,11,240,191,0,191,3,244,0,0,11,240,191,0,191,3,244,0,0,11,240,191,0,191,3,244,0,0,11,240,191,0,191,3,255,255,255,255,240,191,0,191,3,255,255,255,255,240,191,0,191,3,255,255,255,255,240,191,0,191,3,249,85,191,85,80,191,0,191,3,244,0,127,0,0,191,0,191,3,244,0,127,0,0,191,0,191,3,244,0,127,0,0,191,0,191,3,244,0,127,0,0,191,0,191,3,251,255,255,255,240,191,0,191,3,251,255,255,255,240,191,0,191,3,251,255,255,255,240,191,0,191,3,251,224,127,3,240,191,0,191,3,247,224,127,3,240,191,0,191,3,247,224,127,3,240,191,0,191,3,247,224,127,3,240,191,0,191,7,243,224,127,3,240,191,0,191,7,243,224,127,3,240,191,0,191,11,227,224,127,3,240,21,0,191,15,227,224,127,3,240,0,0,191,15,211,224,127,3,240,0,0,191,15,195,224,127,191,240,0,0,191,47,195,224,127,63,224,0,0,191,63,131,224,127,63,128,0,0,191,63,65,64,127,0,0,0,0,255,191,0,0,127,0,0,7,255,255,62,0,0,127,0,0,3,255,254,8,0,0,127,0,0,2,255,252,0,0,0,126,0,0,1,234,80, + // 0x5275 創 + 117,82,36,38,86,40,1,252,0,0,1,80,0,0,0,0,0,0,0,15,252,0,0,0,0,254,0,0,47,255,0,0,0,0,254,0,0,127,255,208,0,0,0,254,0,1,255,111,248,0,0,0,254,0,3,253,7,254,2,252,0,254,0,15,248,1,255,130,252,0,254,0,127,224,0,127,242,252,0,254,1,255,255,255,255,242,252,0,254,11,254,255,255,231,210,252,0,254,127,248,106,170,145,66,252,0,254,63,224,0,0,0,2,252,0,254,31,234,170,170,170,66,252,0,254,8,191,255,255,255,66,252,0,254,0,191,255,255,255,66,252,0,254,0,190,0,0,63,66,252,0,254,0,190,0,0,63,66,252,0,254,0,191,255,255,255,66,252,0,254,0,191,255,255,255,66,252,0,254,0,191,85,85,127,66,252,0,254,0,190,0,0,63,66,252,0,254,0,190,0,0,63,66,252,0,254,0,191,255,255,255,66,252,0,254,0,255,255,255,255,66,252,0,254,0,255,170,170,170,66,252,0,254,0,252,0,0,0,2,252,0,254,0,254,170,170,170,130,252,0,254,1,255,255,255,255,194,252,0,254,2,255,255,255,255,192,0,0,254,3,251,224,0,15,192,0,0,254,7,247,224,0,15,192,0,0,254,11,231,224,0,15,192,0,0,254,15,215,224,0,15,192,0,0,254,63,199,255,255,255,192,0,0,254,127,7,255,255,255,192,15,255,254,30,7,255,255,255,192,15,255,253,4,7,224,0,15,192,11,255,248,0,6,144,0,5,64,2,170,64, + // 0x529b 力 + 155,82,34,39,95,40,2,251,0,0,0,10,160,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,240,0,0,0,0,47,255,255,255,255,255,255,255,240,47,255,255,255,255,255,255,255,240,47,255,255,255,255,255,255,255,240,47,255,255,255,255,255,255,255,240,0,0,0,31,224,0,0,15,240,0,0,0,31,224,0,0,15,240,0,0,0,47,208,0,0,15,240,0,0,0,47,208,0,0,15,240,0,0,0,63,192,0,0,15,240,0,0,0,63,192,0,0,15,224,0,0,0,127,128,0,0,15,224,0,0,0,255,64,0,0,15,224,0,0,0,255,0,0,0,31,224,0,0,1,255,0,0,0,31,208,0,0,3,253,0,0,0,31,208,0,0,7,252,0,0,0,47,208,0,0,15,248,0,0,0,47,192,0,0,47,240,0,0,0,63,192,0,0,63,224,0,0,0,63,192,0,0,255,192,0,0,0,63,192,0,3,255,64,0,0,0,127,128,0,11,254,0,0,0,0,127,128,0,63,252,0,0,0,0,191,64,0,255,240,0,0,0,0,255,0,7,255,192,0,0,0,3,255,0,47,255,0,0,0,255,255,254,0,127,252,0,0,0,255,255,252,0,31,208,0,0,0,127,255,240,0,11,0,0,0,0,42,170,64,0,0,0,0,0,0,0,0,0,0, + // 0x52a0 加 + 160,82,36,37,77,40,1,252,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,0,0,0,0,0,11,240,0,0,31,255,255,253,0,11,240,0,0,31,255,255,253,0,11,240,0,0,31,255,255,253,47,255,255,255,252,31,234,170,253,47,255,255,255,252,31,192,0,253,47,255,255,255,252,31,192,0,253,26,175,250,171,248,31,192,0,253,0,11,240,3,248,31,192,0,253,0,15,240,3,248,31,192,0,253,0,15,240,3,248,31,192,0,253,0,15,224,3,248,31,192,0,253,0,15,224,3,248,31,192,0,253,0,15,224,3,248,31,192,0,253,0,15,224,3,248,31,192,0,253,0,15,208,3,248,31,192,0,253,0,31,208,3,248,31,192,0,253,0,31,192,3,248,31,192,0,253,0,47,192,3,244,31,192,0,253,0,63,192,3,244,31,192,0,253,0,63,128,3,244,31,192,0,253,0,63,128,7,244,31,192,0,253,0,127,64,7,244,31,192,0,253,0,191,0,7,244,31,192,0,253,0,255,0,7,240,31,192,0,253,1,254,0,11,240,31,192,0,253,3,252,0,11,240,31,234,170,253,7,248,0,15,240,31,255,255,253,15,244,0,15,240,31,255,255,253,47,240,106,191,224,31,255,255,253,127,208,63,255,208,31,192,0,253,127,128,63,255,128,31,192,0,253,15,0,47,253,0,31,192,0,169,4,0,0,0,0,0,0,0,0, + // 0x52d5 動 + 213,82,37,38,124,40,1,252,0,0,0,0,80,0,0,0,0,0,0,0,86,191,252,0,127,64,0,0,47,255,255,255,254,0,127,64,0,0,47,255,255,255,228,0,127,64,0,0,15,250,191,128,0,0,127,64,0,0,0,0,63,64,0,0,127,64,0,0,0,0,63,64,0,0,127,64,0,0,42,170,191,234,170,64,127,0,0,0,63,255,255,255,255,128,127,0,0,0,63,255,255,255,255,149,191,149,85,0,0,0,63,64,0,191,255,255,255,64,0,0,63,64,0,191,255,255,255,64,15,255,255,255,255,191,255,255,255,64,15,255,255,255,255,0,127,0,63,64,15,213,127,149,191,0,191,0,63,64,15,192,63,64,127,0,191,0,63,64,15,192,63,64,127,0,191,0,127,64,15,255,255,255,255,0,190,0,127,64,15,255,255,255,255,0,254,0,127,64,15,213,127,149,127,0,254,0,127,0,15,192,63,64,127,0,253,0,127,0,15,192,63,64,127,1,253,0,127,0,15,255,255,255,255,2,252,0,127,0,15,255,255,255,255,2,252,0,191,0,5,85,127,149,85,3,248,0,191,0,0,0,63,64,0,7,244,0,191,0,10,170,191,234,170,11,240,0,191,0,15,255,255,255,255,15,240,0,191,0,15,255,255,255,255,47,208,0,255,0,0,0,63,64,0,63,192,0,254,0,0,0,63,64,0,191,128,0,254,0,0,0,63,133,175,255,0,0,253,0,0,86,191,255,255,254,0,1,253,0,127,255,255,255,255,252,0,3,252,0,63,255,255,254,191,244,15,255,252,0,63,234,80,0,127,208,15,255,244,0,0,0,0,0,31,64,11,255,224,0,0,0,0,0,5,0,1,85,0,0, + // 0x5316 化 + 22,83,38,37,114,40,1,252,0,0,3,144,11,240,0,0,0,0,0,0,11,248,11,240,0,0,0,0,0,0,15,240,11,240,0,0,0,0,0,0,47,224,11,240,0,0,0,0,0,0,63,192,11,240,0,0,0,0,0,0,255,128,11,240,0,0,0,0,0,1,255,0,11,240,0,0,0,0,0,3,254,0,11,240,0,0,160,0,0,11,252,0,11,240,0,2,244,0,0,31,244,0,11,240,0,15,253,0,0,63,244,0,11,240,0,127,253,0,0,255,244,0,11,240,2,255,240,0,2,255,244,0,11,240,31,255,128,0,11,255,244,0,11,240,255,252,0,0,47,255,244,0,11,251,255,208,0,0,191,247,244,0,11,255,254,0,0,0,255,215,244,0,11,255,224,0,0,0,63,71,244,0,11,255,64,0,0,0,45,7,244,0,11,244,0,0,0,0,4,7,244,0,11,240,0,0,0,0,0,7,244,0,11,240,0,0,0,0,0,7,244,0,11,240,0,0,0,0,0,7,244,0,11,240,0,0,0,0,0,7,244,0,11,240,0,0,0,0,0,7,244,0,11,240,0,0,0,0,0,7,244,0,11,240,0,0,4,0,0,7,244,0,11,240,0,0,15,128,0,7,244,0,11,240,0,0,15,224,0,7,244,0,11,240,0,0,15,208,0,7,244,0,11,240,0,0,15,208,0,7,244,0,11,240,0,0,31,192,0,7,244,0,11,244,0,0,63,192,0,7,244,0,7,254,85,86,255,128,0,7,244,0,3,255,255,255,255,64,0,7,244,0,2,255,255,255,254,0,0,7,244,0,0,111,255,255,244,0,0,2,160,0,0,0,0,0,0,0, + // 0x534a 半 + 74,83,36,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,9,0,0,255,0,0,164,0,0,191,0,0,255,0,0,255,64,0,255,64,0,255,0,1,255,0,0,127,192,0,255,0,3,253,0,0,47,224,0,255,0,7,252,0,0,15,240,0,255,0,15,244,0,0,11,248,0,255,0,31,240,0,0,3,252,0,255,0,63,208,0,0,3,253,0,255,0,191,128,0,0,1,253,0,255,0,191,0,0,0,0,128,0,255,0,5,0,0,0,0,0,0,255,0,0,0,0,2,170,170,170,255,170,170,170,144,7,255,255,255,255,255,255,255,224,7,255,255,255,255,255,255,255,224,7,255,255,255,255,255,255,255,224,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,171,255,170,170,170,170,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0, + // 0x5354 協 + 84,83,37,38,124,40,1,252,0,47,192,0,0,7,240,0,0,0,0,47,192,0,0,7,240,0,0,0,0,47,192,0,0,11,240,0,0,0,0,47,192,0,0,11,240,0,0,0,0,47,192,3,255,255,255,255,253,0,0,47,192,3,255,255,255,255,253,0,0,47,192,3,255,255,255,255,252,0,0,47,192,0,0,63,192,1,252,0,0,47,192,0,0,127,64,1,252,0,0,47,192,0,0,255,0,2,252,0,21,127,213,64,2,253,0,2,252,0,127,255,255,208,7,252,0,3,248,0,127,255,255,208,47,240,0,7,244,0,127,255,255,209,255,192,15,255,240,0,0,47,192,31,254,0,15,255,224,0,0,47,192,15,244,0,11,255,64,0,0,47,192,3,64,0,0,0,0,0,0,47,192,3,240,0,0,252,0,0,0,47,192,3,240,0,0,252,0,0,0,47,192,3,240,0,0,252,0,0,0,47,192,3,240,0,0,252,0,0,0,47,194,255,255,253,191,255,255,128,0,47,195,255,255,253,191,255,255,192,0,47,195,255,255,253,191,255,255,128,0,47,192,7,224,189,1,248,31,128,0,47,192,11,224,189,2,248,31,128,0,47,192,11,208,252,3,244,31,128,0,47,192,15,192,252,3,240,31,128,0,47,192,15,192,252,3,240,31,128,0,47,192,31,128,252,11,224,47,128,0,47,192,47,64,252,15,208,47,64,0,47,192,63,0,252,31,192,47,64,0,47,192,191,0,252,63,128,63,64,0,47,192,253,1,252,127,0,63,0,0,47,195,252,2,249,254,0,127,0,0,47,203,240,191,247,252,31,255,0,0,47,195,208,127,240,240,15,253,0,0,47,193,64,63,128,64,15,244,0, + // 0x5361 卡 + 97,83,36,38,86,40,2,252,0,0,0,2,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,254,170,170,169,0,0,0,0,3,255,255,255,254,0,0,0,0,3,255,255,255,254,0,0,0,0,3,255,255,255,254,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,171,254,170,170,170,170,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,64,0,0,0,0,0,0,3,255,249,0,0,0,0,0,0,3,255,255,228,0,0,0,0,0,3,255,255,255,144,0,0,0,0,3,252,111,255,253,0,0,0,0,3,252,1,255,255,192,0,0,0,3,252,0,11,255,128,0,0,0,3,252,0,0,127,0,0,0,0,3,252,0,0,5,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,2,252,0,0,0,0, + // 0x5370 印 + 112,83,33,38,86,40,4,252,0,0,1,64,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,2,255,244,0,0,0,0,0,0,127,255,248,63,255,255,255,192,251,255,255,128,63,255,255,255,192,255,255,228,0,63,255,255,255,192,255,249,0,0,63,234,170,191,192,255,64,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,255,255,244,63,128,0,63,192,255,255,255,244,63,128,0,63,192,255,255,255,244,63,128,0,63,192,255,170,170,160,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,0,0,0,63,128,0,63,192,255,255,255,244,63,128,0,63,192,255,255,255,244,63,129,255,255,128,255,255,255,244,63,128,255,255,128,255,170,170,164,63,128,191,255,0,255,0,0,0,63,128,63,228,0,255,0,0,0,63,128,0,0,0,255,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,42,64,0,0,0, + // 0x5378 卸 + 120,83,36,38,86,40,1,252,0,10,64,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,47,192,0,0,5,85,85,85,0,63,128,0,0,15,255,255,255,0,127,149,85,84,15,255,255,255,0,255,255,255,254,15,255,255,255,1,255,255,255,254,15,208,0,191,3,255,255,255,254,15,208,0,191,11,244,31,192,0,15,208,0,191,31,240,31,192,0,15,208,0,191,63,208,31,192,0,15,208,0,191,11,128,31,192,0,15,208,0,191,1,0,31,192,0,15,208,0,191,63,255,255,255,255,79,208,0,191,63,255,255,255,255,79,208,0,191,63,255,255,255,255,79,208,0,191,21,85,111,213,85,15,208,0,191,0,0,31,192,0,15,208,0,191,0,0,31,192,0,15,208,0,191,2,244,31,192,0,15,208,0,191,3,244,31,192,0,15,208,0,191,3,244,31,255,252,15,208,0,191,3,244,31,255,252,15,208,0,191,3,244,31,255,252,15,208,0,191,3,244,31,192,0,15,208,0,191,3,244,31,192,0,15,208,0,191,3,244,31,192,0,15,208,0,191,3,244,31,192,0,15,208,0,255,3,244,31,192,0,15,208,255,255,3,244,31,192,26,79,208,191,254,3,244,31,255,255,79,208,127,252,3,255,255,255,255,79,208,62,144,127,255,255,255,255,79,208,0,0,127,255,255,249,64,15,208,0,0,127,255,148,0,0,15,208,0,0,57,64,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,15,208,0,0, + // 0x537b 卻 + 123,83,36,37,77,40,1,252,0,0,47,224,0,0,0,0,0,0,0,127,252,0,10,170,170,169,0,0,255,255,0,15,255,255,255,0,3,255,255,208,15,255,255,255,0,11,252,63,244,15,255,255,255,0,47,240,15,253,15,208,0,191,0,255,192,3,255,79,208,0,191,7,255,0,0,255,143,208,0,191,47,252,0,0,63,15,208,0,191,15,240,0,0,12,15,208,0,191,7,128,47,240,0,15,208,0,191,0,0,127,252,0,15,208,0,191,0,0,255,255,0,15,208,0,191,0,3,255,255,192,15,208,0,191,0,11,252,63,240,15,208,0,191,0,47,244,15,252,15,208,0,191,0,191,224,7,254,15,208,0,191,2,255,128,1,255,143,208,0,191,15,254,0,0,191,207,208,0,191,127,248,0,0,63,15,208,0,191,127,240,0,0,29,15,208,0,191,31,191,255,255,244,15,208,0,191,4,191,255,255,244,15,208,0,191,0,191,255,255,244,15,208,0,191,0,191,0,3,244,15,208,0,191,0,191,0,3,244,15,208,0,255,0,191,0,3,244,15,208,255,255,0,191,0,3,244,15,208,191,254,0,191,0,3,244,15,208,127,252,0,191,0,3,244,15,208,42,144,0,191,0,7,244,15,208,0,0,0,191,255,255,244,15,208,0,0,0,191,255,255,244,15,208,0,0,0,191,255,255,244,15,208,0,0,0,191,0,3,244,15,208,0,0,0,191,0,3,244,15,208,0,0,0,20,0,0,0,15,208,0,0, + // 0x539f 原 + 159,83,37,36,104,40,1,252,0,255,255,255,255,255,255,255,255,128,0,255,255,255,255,255,255,255,255,128,0,255,255,255,255,255,255,255,255,128,0,255,85,85,86,255,85,85,85,64,0,254,0,0,1,255,0,0,0,0,0,254,0,0,2,254,0,0,0,0,0,254,0,0,3,253,0,0,0,0,0,254,3,255,255,255,255,255,224,0,0,254,3,255,255,255,255,255,224,0,0,254,3,255,255,255,255,255,224,0,0,254,3,248,0,0,0,15,224,0,0,254,3,248,0,0,0,15,224,0,0,254,3,248,0,0,0,15,224,0,0,254,3,254,170,170,170,191,224,0,0,254,3,255,255,255,255,255,224,0,0,254,3,255,255,255,255,255,224,0,0,254,3,248,0,0,0,15,224,0,0,254,3,248,0,0,0,15,224,0,0,254,3,248,0,0,0,15,224,0,0,253,3,255,255,255,255,255,224,0,1,253,3,255,255,255,255,255,224,0,1,253,3,255,255,255,255,255,224,0,1,252,0,0,0,191,0,0,0,0,2,252,0,0,0,191,0,0,0,0,3,252,0,62,64,191,0,184,0,0,3,248,0,127,192,191,3,254,0,0,3,248,0,255,0,191,1,255,128,0,7,244,3,254,0,191,0,63,224,0,11,240,11,252,0,191,0,31,248,0,15,240,47,240,0,191,0,7,253,0,15,224,191,208,0,191,0,1,255,0,47,211,255,64,0,191,0,0,191,192,63,195,253,1,65,255,0,0,63,128,127,128,180,3,255,255,0,0,13,0,47,0,0,1,255,253,0,0,0,0,2,0,0,0,255,228,0,0,0,0, + // 0x53cd 反 + 205,83,36,36,68,40,2,252,0,42,170,170,170,170,170,170,160,0,127,255,255,255,255,255,255,240,0,127,255,255,255,255,255,255,240,0,127,255,255,255,255,255,255,240,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,255,255,255,255,255,253,0,0,127,255,255,255,255,255,255,0,0,127,255,255,255,255,255,254,0,0,127,239,254,170,170,171,253,0,0,127,67,252,0,0,3,252,0,0,127,66,253,0,0,11,248,0,0,127,1,255,0,0,15,240,0,0,191,0,255,64,0,47,224,0,0,191,0,127,192,0,63,208,0,0,255,0,63,208,0,255,192,0,0,255,0,31,244,2,255,0,0,0,254,0,11,252,11,254,0,0,0,253,0,3,255,31,252,0,0,1,253,0,1,255,255,240,0,0,2,252,0,0,191,255,208,0,0,3,252,0,0,47,255,64,0,0,3,248,0,0,47,255,64,0,0,11,244,0,1,255,255,240,0,0,15,240,0,15,255,255,254,0,0,31,224,1,255,254,31,255,228,0,63,208,111,255,244,3,255,255,144,127,195,255,255,128,0,127,255,253,191,65,255,248,0,0,7,255,252,31,0,191,64,0,0,0,111,240,0,0,32,0,0,0,0,1,144, + // 0x53d6 取 + 214,83,38,36,104,40,1,252,21,85,85,85,85,64,0,0,0,0,63,255,255,255,255,128,0,0,0,0,63,255,255,255,255,128,0,0,0,0,63,255,255,255,255,234,170,170,169,0,0,254,0,11,241,255,255,255,255,64,0,254,0,11,241,255,255,255,255,0,0,254,0,11,241,255,255,255,255,0,0,254,0,11,240,26,0,0,255,0,0,254,0,11,240,255,0,0,254,0,0,255,255,255,240,191,0,0,254,0,0,255,255,255,240,127,64,1,253,0,0,255,255,255,240,63,128,2,252,0,0,254,85,95,240,63,192,3,252,0,0,254,0,11,240,47,192,3,248,0,0,254,0,11,240,31,208,7,244,0,0,254,0,11,240,15,224,11,240,0,0,254,0,11,240,15,240,15,240,0,0,254,85,95,240,11,244,31,224,0,0,255,255,255,240,3,248,47,192,0,0,255,255,255,240,3,252,63,192,0,0,255,255,255,240,1,253,191,128,0,0,254,0,11,240,0,255,255,0,0,0,254,0,11,240,0,191,254,0,0,0,254,0,11,240,0,63,252,0,0,0,254,0,11,240,0,47,248,0,0,0,254,0,111,240,0,47,244,0,0,0,255,255,255,240,0,127,253,0,0,191,255,255,255,240,0,255,255,0,0,191,255,255,255,240,3,255,255,192,0,127,255,229,11,240,15,252,127,240,0,62,80,0,11,240,127,240,31,252,0,0,0,0,11,242,255,192,11,255,128,0,0,0,11,255,255,64,2,255,224,0,0,0,11,243,248,0,0,127,192,0,0,0,11,241,208,0,0,15,0,0,0,0,11,224,0,0,0,0,0, + // 0x53f0 台 + 240,83,36,38,86,40,2,252,0,0,0,120,0,0,0,0,0,0,0,0,191,192,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,253,0,0,16,0,0,0,0,11,252,0,0,184,0,0,0,0,15,244,0,3,254,0,0,0,0,47,224,0,2,255,192,0,0,0,63,192,0,0,191,240,0,0,0,255,64,0,0,31,252,0,0,1,255,0,0,0,7,255,0,0,3,254,86,170,191,255,255,128,127,255,255,255,255,255,255,255,224,127,255,255,255,255,255,255,255,244,63,255,255,255,255,255,234,175,252,63,250,169,85,0,0,0,3,255,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,0,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,170,170,170,170,170,164,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,192,0,0,0,3,252,0,0,63,234,170,170,170,171,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,192,0,0,0,3,252,0,0,42,128,0,0,0,2,168,0, + // 0x5408 合 + 8,84,38,38,124,40,1,252,0,0,0,0,106,128,0,0,0,0,0,0,0,0,255,224,0,0,0,0,0,0,0,2,255,244,0,0,0,0,0,0,0,7,255,252,0,0,0,0,0,0,0,31,251,255,0,0,0,0,0,0,0,63,240,255,192,0,0,0,0,0,0,255,192,127,240,0,0,0,0,0,3,255,64,31,252,0,0,0,0,0,15,253,0,7,255,64,0,0,0,0,127,244,0,1,255,208,0,0,0,1,255,208,0,0,127,248,0,0,0,11,255,64,0,0,15,255,64,0,0,63,253,0,0,0,3,255,224,0,2,255,249,85,85,85,85,255,254,0,31,255,127,255,255,255,255,223,255,208,127,252,63,255,255,255,255,195,255,208,47,208,63,255,255,255,255,192,127,128,15,0,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,0,0,0,0,0,0,0,0,0,0,1,85,85,85,85,85,84,0,0,0,3,255,255,255,255,255,253,0,0,0,3,255,255,255,255,255,253,0,0,0,3,255,255,255,255,255,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,244,0,0,0,1,253,0,0,0,3,255,255,255,255,255,253,0,0,0,3,255,255,255,255,255,253,0,0,0,3,255,255,255,255,255,253,0,0,0,3,249,85,85,85,86,253,0,0,0,3,244,0,0,0,1,253,0,0, + // 0x5426 否 + 38,84,37,36,104,40,1,252,5,85,85,85,85,85,85,85,85,0,15,255,255,255,255,255,255,255,255,64,15,255,255,255,255,255,255,255,255,64,15,255,255,255,255,255,255,255,255,64,0,0,0,0,15,252,0,0,0,0,0,0,0,0,127,244,0,0,0,0,0,0,0,1,255,208,0,0,0,0,0,0,0,11,255,192,0,0,0,0,0,0,0,127,255,193,253,0,0,0,0,0,2,255,255,199,255,208,0,0,0,0,47,255,191,194,255,248,0,0,0,2,255,252,63,192,47,255,128,0,0,47,255,224,63,192,2,255,244,0,7,255,255,0,63,192,0,63,255,0,127,255,244,0,63,192,0,7,255,192,47,255,64,0,63,192,0,0,191,64,15,244,0,0,63,192,0,0,29,0,2,0,0,0,63,192,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,255,64,0,0,15,255,255,255,255,255,255,64,0,0,15,255,255,255,255,255,255,64,0,0,15,240,0,0,0,0,255,64,0,0,15,240,0,0,0,0,191,64,0,0,15,240,0,0,0,0,191,64,0,0,15,240,0,0,0,0,191,64,0,0,15,240,0,0,0,0,191,64,0,0,15,240,0,0,0,0,191,64,0,0,15,240,0,0,0,0,191,64,0,0,15,240,0,0,0,0,255,64,0,0,15,255,255,255,255,255,255,64,0,0,15,255,255,255,255,255,255,64,0,0,15,255,255,255,255,255,255,64,0,0,15,240,0,0,0,0,191,64,0,0,15,224,0,0,0,0,170,0,0, + // 0x544a 告 + 74,84,36,39,95,40,2,251,0,0,0,0,42,128,0,0,0,0,3,248,0,63,192,0,0,0,0,3,252,0,63,192,0,0,0,0,11,248,0,63,192,0,0,0,0,15,240,0,63,192,0,0,0,0,31,224,0,63,192,0,0,0,0,63,255,255,255,255,255,255,128,0,191,255,255,255,255,255,255,128,0,255,255,255,255,255,255,255,128,3,254,85,85,127,213,85,85,64,11,252,0,0,63,192,0,0,0,31,244,0,0,63,192,0,0,0,63,224,0,0,63,192,0,0,0,7,192,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,21,85,85,85,85,85,85,85,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,252,0,0,47,255,255,255,255,255,252,0,0,47,255,255,255,255,255,252,0,0,47,229,85,85,85,87,252,0,0,47,192,0,0,0,2,252,0,0,47,192,0,0,0,2,252,0,0,47,192,0,0,0,2,252,0,0,47,192,0,0,0,2,252,0,0,47,192,0,0,0,2,252,0,0,47,192,0,0,0,2,252,0,0,47,213,85,85,85,87,252,0,0,47,255,255,255,255,255,252,0,0,47,255,255,255,255,255,252,0,0,47,255,255,255,255,255,252,0,0,47,192,0,0,0,2,252,0,0,47,192,0,0,0,2,252,0,0,0,0,0,0,0,0,0,0, + // 0x547d 命 + 125,84,38,38,124,40,1,252,0,0,0,0,191,192,0,0,0,0,0,0,0,1,255,240,0,0,0,0,0,0,0,3,255,252,0,0,0,0,0,0,0,15,255,255,0,0,0,0,0,0,0,63,241,255,192,0,0,0,0,0,1,255,208,191,240,0,0,0,0,0,7,255,64,47,253,0,0,0,0,0,47,253,0,7,255,128,0,0,0,0,255,240,0,1,255,244,0,0,0,7,255,192,0,0,63,254,0,0,0,47,255,85,85,85,95,255,208,0,2,255,247,255,255,255,253,255,253,0,47,255,131,255,255,255,252,47,255,224,255,253,3,255,255,255,252,3,255,224,63,224,0,0,0,0,0,0,127,192,30,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,192,255,255,255,240,0,0,191,255,255,192,255,255,255,240,0,0,191,255,255,192,255,255,255,240,0,0,191,0,47,192,254,85,91,240,0,0,190,0,31,192,254,0,7,240,0,0,190,0,31,192,254,0,7,240,0,0,190,0,31,192,254,0,7,240,0,0,190,0,31,192,254,0,7,240,0,0,190,0,31,192,254,0,7,240,0,0,190,0,31,192,254,0,7,240,0,0,190,0,31,192,254,0,7,240,0,0,191,255,255,192,254,0,7,240,0,0,191,255,255,192,254,0,11,240,0,0,191,255,255,192,254,15,255,240,0,0,191,0,0,0,254,15,255,240,0,0,190,0,0,0,254,11,255,192,0,0,190,0,0,0,254,1,80,0,0,0,106,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0, + // 0x548c 和 + 140,84,35,37,77,40,1,252,0,0,0,31,192,0,0,0,0,0,0,27,255,240,0,0,0,0,1,175,255,255,244,0,0,0,0,31,255,255,254,64,255,255,255,252,15,255,255,64,0,255,255,255,252,11,164,191,64,0,255,255,255,252,0,0,127,64,0,255,170,171,252,0,0,127,64,0,254,0,2,252,0,0,127,64,0,254,0,2,252,0,0,127,64,0,254,0,2,252,0,0,127,64,0,254,0,2,252,63,255,255,255,248,254,0,2,252,63,255,255,255,248,254,0,2,252,63,255,255,255,248,254,0,2,252,21,86,255,149,84,254,0,2,252,0,3,255,64,0,254,0,2,252,0,3,255,208,0,254,0,2,252,0,11,255,240,0,254,0,2,252,0,15,255,252,0,254,0,2,252,0,31,255,255,0,254,0,2,252,0,63,255,191,128,254,0,2,252,0,127,127,111,208,254,0,2,252,0,253,127,79,240,254,0,2,252,2,252,127,71,244,254,0,2,252,7,248,127,66,224,254,0,2,252,15,240,127,64,192,254,0,2,252,47,208,127,64,0,254,0,2,252,191,192,127,64,0,254,0,2,252,127,64,127,64,0,255,255,255,252,62,0,127,64,0,255,255,255,252,28,0,127,64,0,255,255,255,252,0,0,127,64,0,255,170,171,252,0,0,127,64,0,254,0,2,252,0,0,127,64,0,254,0,2,252,0,0,127,64,0,254,0,1,168,0,0,127,64,0,0,0,0,0,0,0,106,0,0,0,0,0,0, + // 0x555f 啟 + 95,85,38,39,134,40,1,251,0,0,5,0,0,0,25,64,0,0,0,0,191,0,0,0,47,192,0,0,0,0,63,64,0,0,63,128,0,0,0,0,63,192,0,0,63,64,0,0,0,0,31,192,0,0,63,64,0,0,0,85,95,229,84,0,127,0,0,0,2,255,255,255,252,0,191,0,0,0,2,255,255,255,252,0,254,0,0,0,2,255,255,255,252,0,255,255,255,192,2,248,0,0,252,1,255,255,255,192,2,248,0,0,252,2,255,255,255,192,2,248,0,0,252,3,249,86,254,64,2,248,0,0,252,11,248,1,252,0,2,248,0,0,252,15,248,1,252,0,2,253,85,85,252,31,252,2,252,0,2,255,255,255,252,63,252,3,248,0,2,255,255,255,252,191,253,3,248,0,2,255,255,255,253,255,253,3,244,0,2,248,0,0,0,126,126,7,240,0,3,248,0,0,0,28,63,11,240,0,3,248,0,0,0,0,63,79,224,0,3,248,0,0,0,0,47,143,208,0,3,247,255,255,255,0,31,239,192,0,3,247,255,255,255,0,15,255,192,0,3,247,255,255,255,0,11,255,64,0,7,243,240,0,191,0,7,255,0,0,7,243,240,0,191,0,3,254,0,0,11,243,240,0,191,0,3,253,0,0,15,227,240,0,191,0,7,254,0,0,15,211,240,0,191,0,15,255,64,0,31,195,240,0,191,0,63,255,192,0,47,195,240,0,191,0,191,239,240,0,63,195,255,255,255,2,255,15,248,0,127,67,255,255,255,11,253,3,254,0,191,3,255,255,255,63,248,1,255,192,30,3,240,0,191,127,224,0,127,208,0,3,240,0,106,47,64,0,15,64,0,1,80,0,0,12,0,0,1,0,0,0,0,0,0,0,0,0,0,0, + // 0x55ae 單 + 174,85,36,37,77,40,2,252,1,85,85,85,64,85,85,85,64,3,255,255,255,130,255,255,255,192,3,255,255,255,130,255,255,255,192,3,244,0,63,130,252,0,31,192,3,244,0,63,130,252,0,31,192,3,244,0,63,130,252,0,31,192,3,249,85,127,130,253,85,111,192,3,255,255,255,130,255,255,255,192,3,255,255,255,130,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,0,254,0,0,191,0,0,191,0,0,254,0,0,191,0,0,191,170,171,255,170,170,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,0,254,0,0,191,0,0,191,0,0,254,0,0,191,0,0,191,0,0,254,0,0,191,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,0,1,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,169,0,0,0,0, + // 0x5634 嘴 + 52,86,36,38,86,40,3,252,0,0,0,0,252,0,248,0,0,0,0,0,0,252,0,252,0,0,0,0,0,80,252,0,252,0,0,85,85,65,240,252,0,252,11,192,255,255,209,240,254,168,252,127,240,255,255,209,240,255,252,255,255,64,255,255,209,240,255,252,255,248,0,248,11,209,240,252,0,255,64,0,248,11,209,240,252,0,252,0,0,248,11,209,240,252,0,252,0,116,248,11,209,240,253,188,252,0,125,248,11,210,251,255,252,252,0,188,248,11,239,255,255,252,255,255,252,248,11,239,255,255,64,191,255,244,248,11,223,148,255,0,26,170,144,248,11,208,2,255,255,248,0,0,248,11,208,7,255,255,254,0,0,248,11,208,15,245,87,252,0,0,248,11,208,63,192,7,244,0,0,248,11,209,255,213,95,245,85,64,248,11,219,255,255,255,255,255,192,248,11,255,255,255,255,255,255,192,253,91,239,255,128,47,64,31,192,255,255,215,127,128,47,64,31,192,255,255,208,63,128,47,128,31,192,255,255,208,63,255,255,255,255,192,248,0,0,63,255,255,255,255,192,248,0,0,63,64,47,64,31,192,248,0,0,63,64,47,64,31,192,84,0,0,127,149,127,149,111,192,0,0,0,191,255,255,255,255,192,0,0,0,255,255,255,255,255,192,0,0,1,253,0,0,0,31,192,0,0,7,252,0,0,0,31,192,0,0,31,244,0,0,0,31,192,0,0,191,224,0,0,127,255,192,0,0,63,128,0,0,63,255,128,0,0,9,0,0,0,31,169,0, + // 0x5668 器 + 104,86,38,36,104,40,1,252,0,255,255,255,192,63,255,255,244,0,0,255,255,255,192,63,255,255,244,0,0,255,255,255,192,63,255,255,244,0,0,252,0,47,192,63,64,7,244,0,0,252,0,47,192,63,64,7,244,0,0,252,0,47,192,63,64,7,244,0,0,252,0,47,192,63,64,7,244,0,0,252,0,47,192,63,64,7,244,0,0,255,255,255,192,63,255,255,244,0,0,255,255,255,192,63,255,255,244,0,0,255,255,255,253,63,255,255,244,0,0,0,0,0,255,0,0,0,0,0,0,0,0,3,254,0,0,0,0,0,0,0,0,7,252,0,0,0,0,0,63,255,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,255,192,5,85,91,255,85,95,253,85,85,64,0,0,47,252,0,3,255,64,0,0,0,0,255,240,0,1,255,224,0,0,0,11,255,208,0,0,127,253,0,0,1,191,255,0,0,0,15,255,224,0,31,255,248,0,0,0,3,255,255,64,191,255,255,255,192,127,255,255,255,224,47,255,255,255,192,127,255,255,255,192,14,191,255,255,192,127,255,255,235,0,0,190,0,15,192,127,0,15,224,0,0,190,0,15,192,127,0,15,224,0,0,190,0,15,192,127,0,15,224,0,0,190,0,15,192,127,0,15,224,0,0,190,0,15,192,127,0,15,224,0,0,191,255,255,192,127,255,255,224,0,0,191,255,255,192,127,255,255,224,0,0,191,255,255,192,127,255,255,224,0,0,190,0,31,192,127,0,15,224,0,0,106,0,15,192,127,0,10,144,0, + // 0x5674 噴 + 116,86,36,38,86,40,3,252,0,0,0,0,0,47,128,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,47,128,0,0,0,0,0,191,255,255,255,255,224,85,85,80,191,255,255,255,255,224,255,255,240,106,170,191,234,170,144,255,255,240,0,0,47,128,0,0,255,255,240,2,248,47,130,244,0,252,3,240,2,248,47,130,244,0,252,3,246,171,254,170,171,254,168,252,3,247,255,255,255,255,255,253,252,3,247,255,255,255,255,255,253,252,3,240,2,248,0,2,244,0,252,3,240,2,248,0,2,244,0,252,3,240,0,0,0,0,0,0,252,3,240,63,255,255,255,255,128,252,3,240,63,255,255,255,255,128,252,3,240,63,128,0,0,63,128,252,3,240,63,128,0,0,63,128,252,3,240,63,128,0,0,63,128,252,3,240,63,255,255,255,255,128,252,3,240,63,255,255,255,255,128,252,3,240,63,128,0,0,63,128,255,255,240,63,128,0,0,63,128,255,255,240,63,128,0,0,63,128,255,255,240,63,255,255,255,255,128,253,85,80,63,255,255,255,255,128,252,0,0,63,128,0,0,63,128,252,0,0,63,128,0,0,63,128,168,0,0,63,255,255,255,255,128,0,0,0,63,255,255,255,255,128,0,0,0,0,185,0,31,144,0,0,0,0,2,255,64,63,244,0,0,0,0,111,253,0,31,255,0,0,0,27,255,240,0,1,255,224,0,0,127,255,64,0,0,47,253,0,0,31,228,0,0,0,7,248,0,0,10,0,0,0,0,0,128, + // 0x56de 回 + 222,86,34,36,68,40,3,252,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,63,255,255,255,128,31,224,191,0,63,255,255,255,128,31,224,191,0,63,255,255,255,128,31,224,191,0,63,149,85,127,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,128,0,63,128,31,224,191,0,63,255,255,255,128,31,224,191,0,63,255,255,255,128,31,224,191,0,63,255,255,255,128,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,31,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,149,85,85,85,85,85,111,224,191,0,0,0,0,0,0,31,224,191,0,0,0,0,0,0,15,224, + // 0x56e0 因 + 224,86,34,36,68,40,3,252,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,170,170,170,170,170,170,175,240,191,0,0,0,0,0,0,15,240,191,0,0,3,248,0,0,15,240,191,0,0,3,248,0,0,15,240,191,0,0,3,244,0,0,15,240,191,0,0,3,244,0,0,15,240,191,0,0,3,244,0,0,15,240,191,0,0,3,244,0,0,15,240,191,15,255,255,255,255,255,15,240,191,15,255,255,255,255,255,15,240,191,15,255,255,255,255,255,15,240,191,5,85,95,254,85,85,15,240,191,0,0,15,254,0,0,15,240,191,0,0,15,255,0,0,15,240,191,0,0,31,255,0,0,15,240,191,0,0,63,255,128,0,15,240,191,0,0,127,159,208,0,15,240,191,0,0,255,15,240,0,15,240,191,0,1,255,11,248,0,15,240,191,0,7,252,3,254,0,15,240,191,0,31,244,0,255,128,15,240,191,0,255,224,0,191,244,15,240,191,11,255,128,0,47,255,15,240,191,15,254,0,0,7,254,15,240,191,7,224,0,0,0,252,15,240,191,2,64,0,0,0,20,15,240,191,0,0,0,0,0,0,15,240,191,170,170,170,170,170,170,175,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,0,0,0,0,0,0,15,240,191,0,0,0,0,0,0,15,224, + // 0x56fa 固 + 250,86,34,36,68,40,3,252,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,149,85,85,85,85,85,111,224,191,0,0,0,0,0,0,15,224,191,0,0,3,248,0,0,15,224,191,0,0,3,248,0,0,15,224,191,0,0,3,248,0,0,15,224,191,0,0,3,248,0,0,15,224,191,11,255,255,255,255,255,15,224,191,11,255,255,255,255,255,15,224,191,11,255,255,255,255,255,15,224,191,0,0,3,248,0,0,15,224,191,0,0,3,248,0,0,15,224,191,0,0,3,248,0,0,15,224,191,0,0,3,248,0,0,15,224,191,0,0,3,248,0,0,15,224,191,0,127,255,255,255,224,15,224,191,0,127,255,255,255,224,15,224,191,0,127,255,255,255,224,15,224,191,0,127,0,0,15,224,15,224,191,0,127,0,0,15,224,15,224,191,0,127,0,0,15,224,15,224,191,0,127,0,0,15,224,15,224,191,0,127,255,255,255,224,15,224,191,0,127,255,255,255,224,15,224,191,0,127,255,255,255,224,15,224,191,0,0,0,0,0,0,15,224,191,0,0,0,0,0,0,15,224,191,0,0,0,0,0,0,15,224,191,149,85,85,85,85,85,111,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,255,255,255,255,255,255,255,224,191,0,0,0,0,0,0,15,224,127,0,0,0,0,0,0,15,224, + // 0x5716 圖 + 22,87,34,36,68,40,3,252,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,0,0,0,0,0,0,15,240,191,0,0,0,0,0,0,15,240,191,0,63,255,255,255,192,15,240,191,0,63,255,255,255,192,15,240,191,0,63,0,0,31,192,15,240,191,0,63,0,0,31,192,15,240,191,0,63,255,255,255,192,15,240,191,0,63,255,255,255,192,15,240,191,0,0,2,244,0,0,15,240,191,0,0,3,248,0,0,15,240,191,47,255,255,255,255,255,143,240,191,47,255,255,255,255,255,143,240,191,0,0,0,0,0,0,15,240,191,0,255,255,255,255,240,15,240,191,0,255,255,255,255,240,15,240,191,0,248,0,0,3,240,15,240,191,0,248,0,0,3,240,15,240,191,0,248,63,255,195,240,15,240,191,0,248,63,255,195,240,15,240,191,0,248,60,3,195,240,15,240,191,0,248,60,3,195,240,15,240,191,0,248,63,255,195,240,15,240,191,0,248,63,255,195,240,15,240,191,0,248,0,0,3,240,15,240,191,0,255,255,255,255,240,15,240,191,0,255,255,255,255,240,15,240,191,0,0,0,0,0,0,15,240,191,0,0,0,0,0,0,15,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,255,255,255,255,255,255,255,240,191,0,0,0,0,0,0,15,240,106,0,0,0,0,0,0,10,160, + // 0x5728 在 + 40,87,37,38,124,40,1,252,0,0,0,10,64,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,0,47,208,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,127,128,0,0,0,0,0,31,255,255,255,255,255,255,255,255,64,31,255,255,255,255,255,255,255,255,64,31,255,255,255,255,255,255,255,255,64,26,170,171,254,170,170,170,170,170,64,0,0,15,244,0,0,0,0,0,0,0,0,31,240,0,1,80,0,0,0,0,0,63,208,0,7,244,0,0,0,0,0,127,192,0,7,244,0,0,0,0,0,255,64,0,7,244,0,0,0,0,3,254,0,0,7,244,0,0,0,0,11,252,0,0,7,244,0,0,0,0,31,244,0,0,7,244,0,0,0,0,127,240,0,0,7,244,0,0,0,1,255,240,15,255,255,255,255,252,0,7,255,240,15,255,255,255,255,252,0,47,255,240,15,255,255,255,255,252,0,127,251,240,5,85,91,249,85,84,0,63,203,240,0,0,7,244,0,0,0,31,11,240,0,0,7,244,0,0,0,8,11,240,0,0,7,244,0,0,0,0,11,240,0,0,7,244,0,0,0,0,11,240,0,0,7,244,0,0,0,0,11,240,0,0,7,244,0,0,0,0,11,240,0,0,7,244,0,0,0,0,11,240,0,0,7,244,0,0,0,0,11,240,0,0,7,244,0,0,0,0,11,240,0,0,7,244,0,0,0,0,11,240,21,85,91,249,85,85,0,0,11,240,127,255,255,255,255,255,64,0,11,240,127,255,255,255,255,255,64,0,11,240,127,255,255,255,255,255,64,0,11,240,0,0,0,0,0,0,0, + // 0x578b 型 + 139,87,36,37,77,40,2,253,0,0,0,0,0,0,0,5,80,5,85,85,85,85,0,0,11,240,15,255,255,255,255,2,160,11,240,15,255,255,255,255,3,244,11,240,15,255,255,255,255,3,244,11,240,0,31,192,63,128,3,244,11,240,0,31,192,63,128,3,244,11,240,0,31,192,63,128,3,244,11,240,0,31,192,63,128,3,244,11,240,0,31,192,63,128,3,244,11,240,127,255,255,255,255,195,244,11,240,127,255,255,255,255,195,244,11,240,127,255,255,255,255,195,244,11,240,21,127,149,127,213,67,244,11,240,0,63,64,63,128,3,244,11,240,0,191,0,63,128,3,244,11,240,0,255,0,63,128,0,0,11,240,2,253,0,63,128,0,0,11,240,11,252,0,63,128,0,0,15,240,47,244,0,63,128,0,63,255,224,191,224,0,63,128,0,31,255,208,47,64,0,63,234,0,15,255,64,9,0,0,0,255,0,5,64,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,85,85,85,255,85,85,85,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,85,85,85,85,85,85, + // 0x57f7 執 + 247,87,38,39,134,40,1,251,0,0,253,0,0,3,244,0,0,0,0,0,253,0,0,3,244,0,0,0,0,0,253,0,0,3,244,0,0,0,0,0,253,0,0,3,244,0,0,0,15,255,255,255,192,3,244,0,0,0,15,255,255,255,192,3,244,0,0,0,15,255,255,255,192,3,244,0,0,0,0,0,254,0,0,3,244,0,0,0,0,0,253,0,15,255,255,255,240,0,0,0,253,0,15,255,255,255,240,0,0,0,253,0,15,255,255,255,240,0,127,255,255,255,255,255,249,95,240,0,127,255,255,255,248,3,244,11,240,0,127,255,255,255,248,3,244,11,240,0,1,244,0,63,64,3,244,11,240,0,1,252,0,63,0,3,244,11,240,0,0,252,0,127,0,3,244,11,240,0,0,189,0,253,3,67,244,11,240,0,0,126,0,252,15,231,240,11,240,0,0,126,1,248,47,255,240,11,240,0,47,255,255,255,243,255,240,11,240,0,47,255,255,255,240,191,240,11,240,0,47,255,255,255,240,31,253,11,240,0,0,0,253,0,0,15,255,75,240,0,0,0,253,0,0,31,255,219,240,0,0,0,253,0,0,63,255,255,240,0,0,0,254,0,0,63,143,251,240,0,15,255,255,255,208,191,67,199,240,0,15,255,255,255,208,255,0,71,240,128,15,255,255,255,210,254,0,3,240,224,0,0,253,0,3,252,0,3,240,240,0,0,253,0,15,244,0,3,245,240,0,0,253,0,47,240,0,3,249,240,0,0,253,0,191,192,0,2,254,224,0,0,253,2,255,64,0,1,255,224,0,0,253,11,254,0,0,0,255,208,0,0,253,1,244,0,0,0,127,192,0,0,169,0,80,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0, + // 0x584a 塊 + 74,88,38,38,124,40,1,252,0,10,128,0,0,7,232,0,0,0,0,31,192,0,0,15,244,0,0,0,0,31,192,0,0,15,240,0,0,0,0,31,192,0,0,47,208,0,0,0,0,31,192,15,255,255,255,255,254,0,0,31,192,15,255,255,255,255,254,0,0,31,192,15,255,255,255,255,254,0,0,31,192,15,224,3,244,0,254,0,0,31,192,15,208,3,244,0,254,0,63,255,255,207,208,3,244,0,254,0,63,255,255,207,208,3,244,0,254,0,63,255,255,207,255,255,255,255,254,0,26,175,234,143,255,255,255,255,254,0,0,31,192,15,255,255,255,255,254,0,0,31,192,15,208,3,244,0,254,0,0,31,192,15,208,3,244,0,254,0,0,31,192,15,208,3,244,0,254,0,0,31,192,15,208,3,244,0,254,0,0,31,192,15,255,255,255,255,254,0,0,31,192,15,255,255,255,255,254,0,0,31,192,15,255,255,255,255,254,0,0,31,192,0,31,209,252,4,0,0,0,31,199,208,31,193,252,31,64,0,0,31,255,224,47,193,252,47,0,0,0,47,255,240,47,193,252,63,45,0,6,255,255,128,63,193,252,61,62,0,127,255,248,0,63,129,252,124,31,0,127,255,64,0,63,129,252,190,191,128,63,228,0,0,191,65,254,255,255,192,46,0,0,0,255,1,253,255,235,192,0,0,0,2,254,1,252,80,2,0,0,0,0,7,252,1,252,0,10,0,0,0,0,47,248,1,252,0,11,208,0,0,1,255,240,1,253,0,15,208,0,0,31,255,192,0,255,255,255,192,0,0,47,254,0,0,255,255,255,192,0,0,15,244,0,0,63,255,255,0,0,0,3,64,0,0,0,0,0,0, + // 0x586b 填 + 107,88,38,38,124,40,1,252,0,0,0,0,0,3,248,0,0,0,0,31,192,0,0,3,248,0,0,0,0,31,192,0,0,3,248,0,0,0,0,31,192,63,255,255,255,255,255,192,0,31,192,63,255,255,255,255,255,192,0,31,192,63,255,255,255,255,255,192,0,31,192,0,0,3,248,0,0,0,0,31,192,0,0,3,248,0,0,0,0,31,192,0,0,3,248,0,0,0,0,31,192,0,255,255,255,255,240,0,63,255,255,192,255,255,255,255,240,0,63,255,255,192,254,85,85,95,240,0,63,255,255,192,253,0,0,11,240,0,26,175,234,128,253,85,85,91,240,0,0,31,192,0,255,255,255,255,240,0,0,31,192,0,255,255,255,255,240,0,0,31,192,0,253,0,0,11,240,0,0,31,192,0,253,0,0,11,240,0,0,31,192,0,255,255,255,255,240,0,0,31,192,0,255,255,255,255,240,0,0,31,192,0,254,85,85,95,240,0,0,31,192,0,253,0,0,11,240,0,0,31,192,0,254,85,85,95,240,0,0,31,199,208,255,255,255,255,240,0,0,31,255,224,255,255,255,255,240,0,0,47,255,240,0,0,0,0,0,0,2,255,255,128,0,0,0,0,0,0,127,255,249,255,255,255,255,255,255,208,127,255,64,255,255,255,255,255,255,208,63,244,0,255,255,255,255,255,255,208,46,64,0,0,1,0,0,96,0,0,0,0,0,0,15,228,1,252,0,0,0,0,0,0,127,240,3,255,128,0,0,0,0,7,255,128,0,191,244,0,0,0,0,191,253,0,0,15,254,0,0,0,3,255,224,0,0,2,255,192,0,0,0,255,64,0,0,0,127,128,0,0,0,36,0,0,0,0,8,0, + // 0x588a 墊 + 138,88,38,37,114,40,1,253,0,0,169,0,0,0,168,0,0,0,0,0,254,0,0,1,252,0,0,0,0,0,254,0,0,1,252,0,0,0,11,255,255,255,208,1,252,0,0,0,11,255,255,255,208,1,252,0,0,0,6,170,255,170,130,255,255,255,208,0,0,0,254,0,2,255,255,255,208,0,0,0,255,85,86,255,255,255,208,0,127,255,255,255,248,1,252,15,208,0,127,255,255,255,248,2,248,15,208,0,42,254,170,191,164,2,248,15,208,0,0,252,0,126,1,211,248,15,208,0,0,189,0,252,3,255,244,15,208,0,42,191,170,254,171,255,240,15,208,0,63,255,255,255,248,127,244,15,208,0,63,255,255,255,248,15,254,11,224,0,0,0,254,0,0,15,255,203,224,0,0,0,254,0,0,47,255,235,225,64,6,170,255,170,144,127,75,199,225,208,15,255,255,255,224,255,2,7,241,224,15,255,255,255,227,253,0,3,242,224,0,0,254,0,15,248,0,3,251,224,0,0,254,0,63,240,0,2,255,208,0,0,254,0,15,128,0,0,255,192,0,0,254,0,63,128,0,0,63,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,63,255,255,255,255,255,255,192,0,0,63,255,255,255,255,255,255,192,0,0,63,255,255,255,255,255,255,192,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,192,0,0,0,0,47,255,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,255,192,47,255,255,255,255,255,255,255,255,192, + // 0x5916 外 + 22,89,38,38,124,40,1,252,0,0,25,0,0,0,26,144,0,0,0,0,63,192,0,0,31,208,0,0,0,0,63,192,0,0,31,208,0,0,0,0,127,64,0,0,31,208,0,0,0,0,191,0,0,0,31,208,0,0,0,0,255,0,0,0,31,208,0,0,0,1,255,170,169,0,31,208,0,0,0,3,255,255,255,192,31,208,0,0,0,7,255,255,255,192,31,208,0,0,0,11,255,255,255,192,31,208,0,0,0,15,240,0,63,228,31,208,0,0,0,63,208,0,127,252,31,208,0,0,0,127,192,0,127,254,31,208,0,0,0,255,64,0,191,191,95,208,0,0,2,255,0,0,255,63,239,208,0,0,7,255,0,0,253,31,255,208,0,0,15,255,208,2,252,11,255,208,0,0,63,255,252,3,252,3,255,208,0,0,191,223,255,71,248,0,255,208,0,0,47,66,255,235,240,0,127,240,0,0,6,0,63,255,240,0,31,252,0,0,0,0,11,255,208,0,31,255,64,0,0,0,2,255,192,0,31,255,224,0,0,0,0,255,64,0,31,255,252,0,0,0,1,255,0,0,31,239,255,128,0,0,3,253,0,0,31,211,255,240,0,0,11,252,0,0,31,208,191,192,0,0,31,244,0,0,31,208,15,64,0,0,63,224,0,0,31,208,1,0,0,0,255,192,0,0,31,208,0,0,0,3,255,0,0,0,31,208,0,0,0,31,253,0,0,0,31,208,0,0,0,127,244,0,0,0,31,208,0,0,3,255,208,0,0,0,31,208,0,0,31,255,64,0,0,0,31,208,0,0,15,252,0,0,0,0,31,208,0,0,3,224,0,0,0,0,31,208,0,0,0,64,0,0,0,0,26,144,0,0, + // 0x591a 多 + 26,89,34,38,86,40,3,252,0,0,0,6,64,0,0,0,0,0,0,0,31,248,0,0,0,0,0,0,0,127,240,0,0,0,0,0,0,1,255,192,0,0,0,0,0,0,11,255,255,255,254,0,0,0,0,63,255,255,255,255,128,0,0,2,255,255,255,255,255,0,0,0,47,255,0,0,3,252,0,0,2,255,252,0,0,15,248,0,0,127,255,255,128,0,63,224,0,0,127,249,191,244,1,255,128,0,0,31,128,31,255,11,254,0,0,0,4,0,2,255,255,248,0,0,0,0,0,0,63,255,208,0,0,0,0,0,0,47,255,121,0,0,0,0,0,7,255,244,255,192,0,0,0,0,191,255,131,255,0,0,0,0,111,255,248,31,253,0,0,0,111,255,255,128,191,255,255,255,208,255,255,228,7,255,255,255,255,240,127,249,0,63,255,255,255,255,224,62,64,2,255,224,0,0,127,192,0,0,111,255,64,0,0,255,128,0,7,255,255,128,0,2,255,0,0,191,255,255,244,0,11,252,0,0,63,248,31,254,0,47,244,0,0,31,128,3,255,192,191,224,0,0,4,0,0,127,247,255,128,0,0,0,0,0,15,255,253,0,0,0,0,0,0,3,255,244,0,0,0,0,0,0,31,255,192,0,0,0,0,0,2,255,253,0,0,0,0,0,1,191,255,224,0,0,0,0,1,191,255,254,0,0,0,0,3,255,255,255,208,0,0,0,0,2,255,255,248,0,0,0,0,0,0,255,249,0,0,0,0,0,0,0,165,0,0,0,0,0,0,0, + // 0x5920 夠 + 32,89,36,38,86,40,2,252,0,2,144,0,0,25,0,0,0,0,7,240,0,0,47,192,0,0,0,15,224,0,0,63,128,0,0,0,47,192,0,0,127,0,0,0,0,127,255,254,0,191,0,0,0,0,255,255,255,64,254,0,0,0,3,255,255,255,2,255,255,255,253,15,244,0,254,3,255,255,255,253,63,208,1,252,11,255,255,255,252,255,128,3,248,15,224,0,1,252,190,56,11,240,47,192,0,0,252,56,255,31,224,63,128,0,0,252,0,127,255,192,255,64,0,0,252,0,31,255,2,255,0,0,0,252,0,11,253,3,254,255,255,208,252,0,47,244,0,181,255,255,208,252,1,255,254,64,17,255,255,208,252,47,254,255,0,1,248,11,209,252,127,245,253,0,1,248,11,209,252,47,67,255,255,209,248,11,209,252,4,15,255,255,241,248,11,209,252,0,63,255,255,225,248,11,209,252,1,255,0,31,193,248,11,209,252,11,252,0,63,193,248,11,209,252,127,240,0,127,65,248,11,209,252,255,199,0,255,1,255,255,210,252,62,31,210,253,1,255,255,210,252,16,31,255,252,1,255,255,210,248,0,3,255,240,1,248,0,2,248,0,0,255,208,1,248,0,3,248,0,1,255,128,1,248,0,3,244,0,7,254,0,0,0,0,3,244,0,63,248,0,0,0,0,7,244,2,255,224,0,0,0,0,15,240,111,255,64,0,0,0,63,255,240,255,248,0,0,0,0,47,255,208,127,128,0,0,0,0,31,255,64,56,0,0,0,0,0,5,80,0, + // 0x5927 大 + 39,89,36,38,86,40,2,252,0,0,0,0,170,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,1,253,0,0,0,0,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,253,0,0,0,7,255,192,0,0,0,0,0,0,11,255,224,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,31,255,244,0,0,0,0,0,0,47,231,252,0,0,0,0,0,0,63,211,253,0,0,0,0,0,0,127,193,255,0,0,0,0,0,0,255,128,255,128,0,0,0,0,2,255,0,191,192,0,0,0,0,3,254,0,63,240,0,0,0,0,15,252,0,31,244,0,0,0,0,47,244,0,11,253,0,0,0,0,127,224,0,3,255,0,0,0,1,255,192,0,1,255,192,0,0,11,255,0,0,0,191,244,0,0,47,253,0,0,0,63,253,0,1,255,244,0,0,0,15,255,192,31,255,208,0,0,0,3,255,248,191,255,0,0,0,0,0,191,255,127,248,0,0,0,0,0,31,252,31,128,0,0,0,0,0,2,244,5,0,0,0,0,0,0,0,32, + // 0x5929 天 + 41,89,37,35,94,40,2,252,127,255,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,255,253,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,31,255,255,255,255,255,255,255,244,0,31,255,255,255,255,255,255,255,244,0,31,255,255,255,255,255,255,255,244,0,15,255,255,255,255,255,255,255,244,0,0,0,0,3,255,192,0,0,0,0,0,0,0,3,255,208,0,0,0,0,0,0,0,11,255,240,0,0,0,0,0,0,0,15,255,244,0,0,0,0,0,0,0,31,247,252,0,0,0,0,0,0,0,63,227,253,0,0,0,0,0,0,0,191,193,255,0,0,0,0,0,0,2,255,128,255,192,0,0,0,0,0,11,255,0,63,240,0,0,0,0,0,47,252,0,31,252,0,0,0,0,0,255,244,0,11,255,64,0,0,0,7,255,208,0,2,255,224,0,0,0,127,255,0,0,0,255,254,0,0,11,255,248,0,0,0,47,255,228,0,255,255,208,0,0,0,7,255,255,64,191,254,0,0,0,0,0,191,254,0,63,224,0,0,0,0,0,11,252,0,25,0,0,0,0,0,0,0,100,0, + // 0x5931 失 + 49,89,37,38,124,40,2,252,0,0,0,0,254,0,0,0,0,0,0,3,228,0,254,0,0,0,0,0,0,11,248,0,254,0,0,0,0,0,0,15,244,0,254,0,0,0,0,0,0,15,240,0,254,0,0,0,0,0,0,47,224,0,254,0,0,0,0,0,0,63,208,0,254,0,0,0,0,0,0,127,255,255,255,255,255,255,64,0,0,255,255,255,255,255,255,255,64,0,1,255,255,255,255,255,255,255,64,0,3,255,255,255,255,255,255,255,64,0,7,252,0,0,254,0,0,0,0,0,15,248,0,0,254,0,0,0,0,0,63,240,0,0,254,0,0,0,0,0,127,208,0,0,254,0,0,0,0,0,31,128,0,1,254,0,0,0,0,0,2,0,0,1,254,0,0,0,0,0,0,0,0,1,254,0,0,0,0,0,170,170,170,171,255,170,170,170,170,0,255,255,255,255,255,255,255,255,254,0,255,255,255,255,255,255,255,255,254,0,255,255,255,255,255,255,255,255,254,0,0,0,0,11,255,208,0,0,0,0,0,0,0,15,255,240,0,0,0,0,0,0,0,47,251,248,0,0,0,0,0,0,0,63,211,252,0,0,0,0,0,0,0,255,193,255,0,0,0,0,0,0,2,255,64,255,192,0,0,0,0,0,11,254,0,127,240,0,0,0,0,0,63,252,0,47,252,0,0,0,0,1,255,240,0,11,255,64,0,0,0,11,255,192,0,2,255,224,0,0,0,191,255,0,0,0,255,254,0,0,27,255,248,0,0,0,31,255,248,0,255,255,208,0,0,0,3,255,255,64,191,253,0,0,0,0,0,127,255,0,63,208,0,0,0,0,0,7,252,0,8,0,0,0,0,0,0,0,36,0, + // 0x59cb 始 + 203,89,37,38,124,40,2,252,0,26,64,0,0,10,64,0,0,0,0,47,192,0,0,15,240,0,0,0,0,63,128,0,0,31,240,0,0,0,0,63,128,0,0,47,224,0,0,0,0,63,64,0,0,63,192,0,0,0,0,127,0,0,0,63,192,0,0,0,0,191,0,0,0,127,128,0,0,0,0,254,0,0,0,191,0,125,0,0,85,254,85,144,0,255,0,255,0,0,255,255,255,252,1,253,0,127,192,0,255,255,255,252,2,252,0,47,208,0,255,255,255,248,3,248,0,15,240,0,3,248,3,248,7,244,0,7,248,0,3,244,3,244,11,245,170,255,252,0,7,240,3,247,255,255,255,255,254,0,11,240,7,243,255,255,255,255,255,0,15,224,7,243,255,255,255,234,191,128,15,208,11,241,165,64,0,0,63,128,31,192,15,224,0,0,0,0,44,0,47,192,15,208,0,0,0,0,0,0,63,128,31,192,0,0,0,0,0,0,63,128,47,192,31,255,255,255,248,0,127,240,63,192,31,255,255,255,248,0,191,253,127,64,31,255,255,255,248,0,255,255,255,0,31,213,85,87,248,0,45,191,255,0,31,192,0,3,248,0,4,31,254,0,31,192,0,3,248,0,0,7,255,128,31,192,0,3,248,0,0,11,255,224,31,192,0,3,248,0,0,31,255,248,31,192,0,3,248,0,0,63,219,253,31,192,0,3,248,0,0,255,194,253,31,192,0,3,248,0,3,255,0,184,31,213,85,87,248,0,15,253,0,32,31,255,255,255,248,0,127,244,0,0,31,255,255,255,248,0,127,208,0,0,31,255,255,255,248,0,47,64,0,0,31,192,0,3,248,0,8,0,0,0,31,192,0,2,164,0, + // 0x5a92 媒 + 146,90,38,38,124,40,1,252,0,10,64,0,15,208,0,15,208,0,0,31,192,0,15,208,0,15,208,0,0,47,192,0,15,208,0,15,208,0,0,63,192,0,15,208,0,15,208,0,0,63,128,0,15,208,0,31,208,0,0,63,64,15,255,255,255,255,255,192,0,127,0,15,255,255,255,255,255,192,0,127,0,15,255,255,255,255,255,192,21,255,85,80,15,208,0,15,208,0,127,255,255,244,15,208,0,15,208,0,127,255,255,244,15,208,0,15,208,0,127,255,255,244,15,255,255,255,208,0,1,252,3,240,15,255,255,255,208,0,2,252,3,240,15,255,255,255,208,0,2,248,7,240,15,208,0,15,208,0,3,244,7,240,15,208,0,15,208,0,3,244,11,240,15,208,0,31,208,0,7,240,15,224,15,255,255,255,208,0,11,240,15,208,15,255,255,255,208,0,11,224,15,208,15,255,255,255,208,0,15,208,31,192,0,0,253,0,0,0,15,208,47,192,0,0,253,0,0,0,31,244,63,128,0,0,253,0,0,0,47,254,127,79,255,255,255,255,255,192,63,255,255,15,255,255,255,255,255,192,11,127,255,15,255,255,255,255,255,192,1,15,253,0,0,47,255,224,0,0,0,3,255,0,0,127,255,244,0,0,0,7,255,192,0,255,255,252,0,0,0,15,255,240,3,253,253,255,64,0,0,47,239,248,31,244,253,63,208,0,0,127,195,240,191,224,253,31,248,0,1,255,64,211,255,128,253,7,254,0,7,254,0,111,254,0,253,2,255,208,47,252,0,63,244,0,253,0,191,192,31,240,0,15,208,0,253,0,31,0,11,128,0,6,0,0,253,0,1,0,1,0,0,0,0,0,253,0,0,0, + // 0x5b50 子 + 80,91,36,35,59,40,2,252,0,255,255,255,255,255,255,252,0,0,255,255,255,255,255,255,255,64,0,255,255,255,255,255,255,255,64,0,170,170,170,170,170,191,252,0,0,0,0,0,0,0,191,240,0,0,0,0,0,0,3,255,192,0,0,0,0,0,0,31,254,0,0,0,0,0,0,0,191,244,0,0,0,0,0,0,87,255,192,0,0,0,0,0,0,255,254,0,0,0,0,0,0,0,255,244,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,170,170,170,170,255,170,170,170,170,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,191,255,255,0,0,0,0,0,0,63,255,254,0,0,0,0,0,0,47,255,248,0,0,0,0,0,0,31,234,64,0,0,0,0, + // 0x5b58 存 + 88,91,37,38,124,40,1,252,0,0,0,10,64,0,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,0,47,224,0,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,26,170,170,255,234,170,170,170,170,64,31,255,255,255,255,255,255,255,255,64,31,255,255,255,255,255,255,255,255,64,31,255,255,255,255,255,255,255,255,64,0,0,7,252,0,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,0,31,240,0,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,0,191,192,255,255,255,255,208,0,0,0,255,64,255,255,255,255,248,0,0,3,254,0,255,255,255,255,240,0,0,11,252,0,85,85,85,255,192,0,0,31,244,0,0,0,2,255,0,0,0,127,240,0,0,0,11,252,0,0,0,255,240,0,0,0,63,240,0,0,7,255,240,0,0,2,255,128,0,0,31,255,240,0,0,2,254,0,0,0,127,255,240,0,0,2,252,0,0,0,63,219,240,42,170,171,254,170,170,128,47,75,240,127,255,255,255,255,255,192,12,11,240,127,255,255,255,255,255,192,0,11,240,127,255,255,255,255,255,192,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,0,2,252,0,0,0,0,11,240,0,47,255,252,0,0,0,0,11,240,0,31,255,252,0,0,0,0,11,240,0,15,255,240,0,0,0,0,5,80,0,5,85,0,0,0,0, + // 0x5b89 安 + 137,91,36,38,86,40,2,252,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,47,229,85,85,85,85,85,91,248,47,192,0,0,0,0,0,3,248,47,192,0,10,80,0,0,3,248,47,192,0,31,240,0,0,3,248,47,192,0,47,224,0,0,3,248,47,192,0,63,192,0,0,3,248,0,0,0,191,128,0,0,0,0,0,0,0,255,0,0,0,0,0,106,170,171,255,170,170,170,170,169,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,47,224,0,0,191,64,0,0,0,63,192,0,0,255,0,0,0,0,191,128,0,1,255,0,0,0,0,255,0,0,3,253,0,0,0,3,254,0,0,7,252,0,0,0,7,252,0,0,15,244,0,0,0,15,255,144,0,47,240,0,0,0,31,255,254,64,127,208,0,0,0,63,255,255,249,255,128,0,0,0,47,198,255,255,255,0,0,0,0,0,0,27,255,254,0,0,0,0,0,0,2,255,255,224,0,0,0,0,0,47,255,255,254,64,0,0,0,7,255,253,47,255,244,0,0,22,255,255,224,2,255,254,0,31,255,255,254,0,0,47,255,208,15,255,255,144,0,0,2,255,192,3,255,228,0,0,0,0,127,0,2,148,0,0,0,0,0,9,0, + // 0x5b8c 完 + 140,91,37,38,124,40,1,252,0,0,0,0,42,128,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,6,170,170,170,191,234,170,170,169,0,15,255,255,255,255,255,255,255,254,0,15,255,255,255,255,255,255,255,254,0,15,255,255,255,255,255,255,255,254,0,15,240,0,0,0,0,0,0,254,0,15,240,0,0,0,0,0,0,254,0,15,240,0,0,0,0,0,0,254,0,15,240,0,0,0,0,0,0,254,0,15,240,191,255,255,255,255,208,254,0,6,160,191,255,255,255,255,208,169,0,0,0,191,255,255,255,255,208,0,0,0,0,21,85,85,85,85,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,170,170,170,170,170,170,170,170,64,47,255,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,255,128,0,0,3,252,0,31,208,0,0,0,0,0,3,252,0,31,208,0,0,0,0,0,3,252,0,31,208,0,0,0,0,0,7,248,0,31,208,0,0,0,0,0,15,244,0,31,208,0,0,0,0,0,15,240,0,31,208,0,0,0,0,0,63,224,0,31,208,0,30,64,0,0,191,192,0,31,208,0,31,192,0,2,255,128,0,31,208,0,31,192,0,31,255,0,0,31,208,0,47,192,1,255,252,0,0,31,245,85,191,128,127,255,224,0,0,15,255,255,255,64,63,255,64,0,0,11,255,255,255,0,15,244,0,0,0,1,255,255,248,0,5,0,0,0,0,0,0,0,0,0, + // 0x5b9a 定 + 154,91,37,38,124,40,1,252,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,6,170,170,170,191,234,170,170,169,0,11,255,255,255,255,255,255,255,254,0,11,255,255,255,255,255,255,255,254,0,11,255,255,255,255,255,255,255,254,0,11,240,0,0,0,0,0,0,254,0,11,240,0,0,0,0,0,0,254,0,11,240,0,0,0,0,0,0,254,0,11,240,0,0,0,0,0,0,254,0,11,240,170,170,170,170,170,160,254,0,11,240,255,255,255,255,255,244,254,0,0,0,255,255,255,255,255,244,0,0,0,0,255,255,255,255,255,244,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,1,253,0,63,192,0,0,0,0,0,2,253,0,63,192,0,0,0,0,0,3,252,0,63,192,0,0,0,0,0,3,252,0,63,255,255,255,64,0,0,3,248,0,63,255,255,255,64,0,0,7,248,0,63,255,255,255,64,0,0,11,252,0,63,213,85,85,0,0,0,15,253,0,63,192,0,0,0,0,0,31,255,0,63,192,0,0,0,0,0,47,255,128,63,192,0,0,0,0,0,127,255,224,63,192,0,0,0,0,0,255,143,248,63,192,0,0,0,0,1,255,7,255,127,192,0,0,0,0,3,254,1,255,255,192,0,0,0,0,15,252,0,127,255,255,234,170,170,128,63,244,0,15,255,255,255,255,255,128,127,208,0,0,191,255,255,255,255,0,15,128,0,0,5,175,255,255,255,0,2,0,0,0,0,0,0,0,0,0, + // 0x5ba2 客 + 162,91,36,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,21,85,85,85,255,85,85,85,84,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,192,0,36,0,0,0,3,252,63,192,0,255,128,0,0,3,252,63,192,2,255,0,0,0,3,252,63,192,11,255,255,255,253,3,252,63,192,47,255,255,255,255,131,252,0,0,255,255,255,255,255,64,0,0,11,255,192,0,3,254,0,0,0,127,255,240,0,15,248,0,0,7,255,239,252,0,127,240,0,0,11,255,67,255,66,255,128,0,0,3,248,0,255,255,254,0,0,0,0,128,0,47,255,244,0,0,0,0,0,0,15,255,244,0,0,0,0,0,1,191,255,255,144,0,0,0,0,47,255,255,255,254,64,0,0,6,255,255,65,255,255,255,148,6,255,255,244,0,27,255,255,255,255,255,254,0,0,0,127,255,253,191,255,255,255,255,255,255,255,252,63,231,255,255,255,255,255,208,96,20,3,255,255,255,255,255,208,0,0,3,248,0,0,0,47,208,0,0,3,248,0,0,0,47,208,0,0,3,248,0,0,0,47,208,0,0,3,248,0,0,0,47,208,0,0,3,248,0,0,0,47,208,0,0,3,255,255,255,255,255,208,0,0,3,255,255,255,255,255,208,0,0,3,255,255,255,255,255,208,0,0,3,248,0,0,0,47,208,0,0,2,164,0,0,0,21,64,0, + // 0x5bb9 容 + 185,91,37,38,124,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,5,85,85,85,255,85,85,85,80,0,47,255,255,255,255,255,255,255,248,0,47,255,255,255,255,255,255,255,248,0,47,255,255,255,255,255,255,255,248,0,47,192,0,0,0,0,0,3,248,0,47,192,0,0,0,0,0,3,248,0,47,192,11,144,0,7,128,3,248,0,47,192,31,244,0,47,244,3,248,0,47,128,127,208,0,31,254,3,248,0,0,2,255,128,0,2,255,208,0,0,0,15,254,0,170,0,127,248,0,0,0,127,248,3,255,128,15,254,0,0,7,255,208,11,255,224,2,255,192,0,11,255,0,31,255,248,0,127,208,0,2,248,0,191,231,254,0,31,64,0,0,208,2,255,130,255,192,5,0,0,0,0,11,255,0,191,244,0,0,0,0,0,63,248,0,31,253,0,0,0,0,1,255,224,0,7,255,208,0,0,0,11,255,64,0,0,255,248,0,0,0,127,253,0,0,0,47,255,64,0,7,255,255,255,255,255,255,255,248,0,127,255,255,255,255,255,255,255,255,64,191,251,255,255,255,255,255,219,254,0,63,195,249,85,85,85,111,193,252,0,29,3,248,0,0,0,47,192,20,0,0,3,248,0,0,0,47,192,0,0,0,3,248,0,0,0,47,192,0,0,0,3,248,0,0,0,47,192,0,0,0,3,248,0,0,0,47,192,0,0,0,3,255,255,255,255,255,192,0,0,0,3,255,255,255,255,255,192,0,0,0,3,255,255,255,255,255,192,0,0,0,3,249,85,85,85,111,192,0,0,0,2,164,0,0,0,26,128,0,0, + // 0x5c0d 對 + 13,92,37,39,134,40,2,251,0,10,65,160,0,0,0,42,0,0,4,31,131,240,36,0,0,63,64,0,188,31,131,240,63,64,0,63,64,0,191,31,131,240,191,0,0,63,64,0,63,95,131,240,254,0,0,63,64,0,47,223,131,241,252,0,0,63,64,0,15,223,131,247,244,0,0,63,64,0,15,223,131,247,240,0,0,63,64,0,5,31,131,244,144,0,0,63,64,0,255,255,255,255,255,0,0,63,64,0,255,255,255,255,255,0,0,127,64,0,255,255,255,255,255,255,255,255,255,64,1,176,0,31,128,255,255,255,255,64,3,248,0,47,192,255,255,255,255,64,1,252,0,63,128,85,85,191,149,0,0,253,0,127,0,0,0,63,64,0,0,190,0,190,0,0,0,63,64,0,0,125,0,189,0,1,0,63,64,0,63,255,255,255,248,63,128,63,64,0,63,255,255,255,248,47,192,63,64,0,63,255,255,255,248,15,208,63,64,0,0,0,190,0,0,11,240,63,64,0,0,0,190,0,0,7,244,63,64,0,0,0,190,0,0,3,248,63,64,0,15,255,255,255,240,2,252,63,64,0,15,255,255,255,240,1,253,63,64,0,15,255,255,255,240,0,224,63,64,0,0,0,190,0,0,0,0,63,64,0,0,0,190,0,0,0,0,63,64,0,0,0,190,0,0,0,0,63,64,0,0,0,190,1,174,0,0,63,64,0,0,1,255,255,255,0,0,63,64,0,107,255,255,255,255,0,0,63,64,0,255,255,255,255,254,0,0,127,64,0,255,255,255,233,0,1,85,255,64,0,191,233,64,0,0,3,255,255,0,0,0,0,0,0,0,1,255,254,0,0,0,0,0,0,0,0,255,228,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x5c0f 小 + 15,92,38,37,114,40,1,252,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,6,80,0,63,192,0,120,0,0,0,11,252,0,63,192,3,252,0,0,0,11,248,0,63,192,2,254,0,0,0,15,244,0,63,192,0,255,0,0,0,15,240,0,63,192,0,191,192,0,0,31,240,0,63,192,0,63,192,0,0,63,224,0,63,192,0,47,224,0,0,63,192,0,63,192,0,31,240,0,0,127,192,0,63,192,0,15,248,0,0,191,128,0,63,192,0,7,252,0,0,255,64,0,63,192,0,3,253,0,2,255,0,0,63,192,0,2,255,0,3,253,0,0,63,192,0,1,255,0,7,252,0,0,63,192,0,0,255,128,15,248,0,0,63,192,0,0,191,192,47,240,0,0,63,192,0,0,63,192,127,208,0,0,63,192,0,0,63,224,47,192,0,0,63,192,0,0,47,240,3,64,0,0,63,192,0,0,31,144,0,0,0,0,63,192,0,0,8,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,31,255,255,192,0,0,0,0,0,0,15,255,255,128,0,0,0,0,0,0,7,255,255,0,0,0,0,0,0,0,3,255,164,0,0,0,0,0, + // 0x5c31 就 + 49,92,38,38,124,40,1,252,0,0,63,128,0,0,63,128,0,0,0,0,63,128,0,0,63,129,128,0,0,0,63,128,0,0,63,143,224,0,0,0,63,128,0,0,63,139,244,0,0,0,63,128,0,0,63,131,253,0,63,255,255,255,255,0,63,128,255,0,63,255,255,255,255,0,63,128,127,64,63,255,255,255,255,0,63,128,63,192,21,85,85,85,85,0,63,128,29,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,170,191,234,170,128,3,255,255,255,244,255,255,255,255,192,3,255,255,255,244,255,255,255,255,192,3,255,255,255,244,255,255,255,255,192,3,248,0,7,244,0,63,128,0,0,3,248,0,3,244,0,63,128,0,0,3,248,0,3,244,0,127,252,0,0,3,248,0,3,244,0,127,252,0,0,3,248,0,3,244,0,191,252,0,0,3,255,255,255,244,0,191,252,0,0,3,255,255,255,244,0,255,252,0,0,3,255,255,255,244,0,255,252,0,0,0,0,63,128,0,1,255,252,0,0,0,0,63,128,0,2,254,252,0,0,1,228,63,135,208,3,253,252,0,0,2,252,63,139,240,3,249,252,0,0,3,248,63,131,244,11,245,252,0,0,7,244,63,130,252,15,241,252,0,0,11,240,63,129,252,31,225,252,2,0,15,224,63,128,254,63,209,252,3,208,31,208,63,128,190,191,193,252,3,224,63,192,63,128,80,255,65,252,3,224,191,64,63,128,3,254,1,252,3,224,47,0,63,128,11,252,1,252,11,208,9,63,255,64,47,244,1,255,255,208,0,31,255,64,127,224,0,255,255,192,0,15,254,0,31,128,0,191,255,64,0,5,64,0,2,0,0,22,164,0, + // 0x5de5 工 + 229,93,36,30,14,40,2,255,11,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,224,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,170,170,170,170,170,170, + // 0x5dee 差 + 238,93,36,38,86,40,2,252,0,0,4,0,0,0,36,0,0,0,0,189,0,0,0,191,128,0,0,0,255,0,0,0,255,64,0,0,0,191,128,0,1,254,0,0,0,0,63,192,0,3,252,0,0,0,0,47,224,0,11,248,0,0,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,21,85,255,85,85,85,85,85,84,0,1,254,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,3,253,255,255,255,255,255,0,0,7,252,255,255,255,255,255,0,0,11,244,255,255,255,255,255,0,0,15,240,0,2,253,0,0,0,0,47,224,0,2,252,0,0,0,0,127,192,0,2,252,0,0,0,0,255,128,0,2,252,0,0,0,2,255,0,0,2,252,0,0,0,7,253,0,0,2,252,0,0,0,31,248,85,85,86,253,85,85,80,191,240,255,255,255,255,255,255,252,255,192,255,255,255,255,255,255,252,63,0,255,255,255,255,255,255,252,8,0,0,0,0,0,0,0,0, + // 0x5df2 已 + 242,93,34,34,50,40,4,253,255,255,255,255,255,255,255,192,0,255,255,255,255,255,255,255,192,0,255,255,255,255,255,255,255,192,0,170,170,170,170,170,170,191,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,10,144,0,0,0,0,63,192,0,31,224,0,0,0,0,63,192,0,31,224,0,0,0,0,63,192,0,31,224,0,0,0,0,63,192,0,31,224,0,0,0,0,63,192,0,31,224,0,0,0,0,63,192,0,31,250,170,170,170,170,191,192,0,31,255,255,255,255,255,255,192,0,31,255,255,255,255,255,255,192,0,31,255,255,255,255,255,255,192,0,31,224,0,0,0,0,63,192,0,31,224,0,0,0,0,63,192,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,4,0,31,224,0,0,0,0,0,15,128,31,224,0,0,0,0,0,15,240,31,224,0,0,0,0,0,15,240,31,224,0,0,0,0,0,15,240,15,224,0,0,0,0,0,47,224,15,240,0,0,0,0,0,63,208,15,249,0,0,0,0,1,255,192,11,255,255,255,255,255,255,255,128,3,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,248,0,0,6,170,170,170,170,170,64,0, + // 0x5e73 平 + 115,94,36,35,59,40,2,252,11,255,255,255,255,255,255,255,224,11,255,255,255,255,255,255,255,224,11,255,255,255,255,255,255,255,224,6,170,170,170,255,170,170,170,144,0,0,0,0,255,0,0,0,0,0,1,64,0,255,0,1,144,0,0,63,192,0,255,0,3,253,0,0,47,192,0,255,0,7,252,0,0,15,224,0,255,0,11,248,0,0,15,240,0,255,0,15,240,0,0,7,248,0,255,0,31,224,0,0,3,252,0,255,0,63,192,0,0,2,253,0,255,0,127,128,0,0,1,254,0,255,0,255,0,0,0,0,248,0,255,0,189,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,254,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0, + // 0x5e8a 床 + 138,94,38,38,124,40,1,252,0,0,0,0,5,80,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,170,170,170,175,250,170,170,170,128,0,255,255,255,255,255,255,255,255,192,0,255,255,255,255,255,255,255,255,192,0,255,255,255,255,255,255,255,255,192,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,127,64,0,0,0,0,254,0,0,0,127,64,0,0,0,0,254,0,0,0,127,64,0,0,0,0,254,0,0,0,127,64,0,0,0,0,254,0,0,0,127,64,0,0,0,0,254,26,170,170,191,170,170,170,64,0,254,47,255,255,255,255,255,255,192,0,254,47,255,255,255,255,255,255,192,0,253,47,255,255,255,255,255,255,192,1,253,0,0,3,255,240,0,0,0,1,253,0,0,15,255,248,0,0,0,1,253,0,0,31,255,253,0,0,0,1,252,0,0,63,255,255,0,0,0,2,252,0,0,255,255,191,192,0,0,2,252,0,2,255,127,111,224,0,0,2,252,0,7,252,127,79,248,0,0,3,252,0,31,244,127,71,254,0,0,3,248,0,127,224,127,65,255,128,0,7,244,1,255,192,127,64,191,224,0,11,240,7,255,0,127,64,47,252,0,11,240,47,252,0,127,64,11,255,64,15,240,255,240,0,127,64,2,255,208,31,224,255,192,0,127,64,0,191,128,47,192,63,0,0,127,64,0,31,0,63,192,8,0,0,127,64,0,4,0,127,128,0,0,0,127,64,0,0,0,31,0,0,0,0,127,64,0,0,0,1,0,0,0,0,127,0,0,0,0, + // 0x5ea6 度 + 166,94,37,38,124,40,1,252,0,0,0,0,11,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,255,255,255,255,255,255,255,255,128,0,255,255,255,255,255,255,255,255,128,0,255,255,255,255,255,255,255,255,128,0,254,85,85,85,85,85,85,85,0,0,253,0,6,160,0,2,160,0,0,0,253,0,11,240,0,7,244,0,0,0,253,0,11,240,0,7,244,0,0,0,253,0,11,240,0,7,244,0,0,0,253,127,255,255,255,255,255,255,64,0,253,127,255,255,255,255,255,255,64,0,253,127,255,255,255,255,255,255,64,0,253,0,11,240,0,7,244,0,0,0,253,0,11,240,0,7,244,0,0,0,253,0,11,240,0,7,244,0,0,0,253,0,11,255,255,255,244,0,0,1,253,0,11,255,255,255,244,0,0,1,253,0,11,255,255,255,244,0,0,1,252,0,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,0,2,252,63,255,255,255,255,255,128,0,2,252,63,255,255,255,255,255,224,0,2,252,63,255,255,255,255,255,192,0,3,248,0,11,208,0,0,255,128,0,3,244,0,15,244,0,3,255,0,0,7,244,0,3,253,0,15,252,0,0,11,240,0,1,255,192,191,240,0,0,11,240,0,0,127,251,255,192,0,0,15,224,0,0,15,255,254,0,0,0,31,208,0,0,31,255,254,0,0,0,47,192,0,27,255,255,255,249,64,0,63,129,191,255,255,230,255,255,255,128,127,64,255,255,254,0,31,255,255,128,31,0,191,254,64,0,0,111,255,0,1,0,41,0,0,0,0,0,105,0, + // 0x5ee2 廢 + 226,94,38,38,124,40,1,252,0,0,0,0,11,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,2,255,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,255,192,2,252,0,0,0,0,0,0,0,0,2,248,0,0,0,1,144,0,0,0,2,248,26,170,170,7,240,45,0,0,2,248,47,255,255,195,244,191,64,0,2,248,47,255,255,65,255,252,0,0,2,248,0,0,191,0,255,208,20,0,2,248,30,1,252,0,63,128,191,0,2,248,63,215,244,0,31,231,253,0,2,248,11,255,224,0,11,255,224,0,2,248,2,255,128,0,1,255,192,0,2,248,11,255,84,10,170,255,249,0,2,248,191,255,252,31,255,255,255,208,2,255,255,255,252,31,255,253,255,192,2,250,248,0,188,31,64,252,27,0,3,248,128,0,188,31,64,252,36,0,3,248,0,0,188,47,64,252,61,0,3,244,31,255,252,127,0,253,189,0,3,244,47,255,254,253,0,255,252,0,3,244,63,170,169,248,0,63,240,0,3,240,63,0,0,16,0,0,0,0,7,240,126,0,0,255,255,255,208,0,7,240,191,255,252,255,255,255,208,0,11,240,255,255,252,91,149,111,192,0,15,224,254,170,252,31,128,63,64,0,15,208,0,1,252,15,208,191,0,0,31,192,0,2,248,3,250,252,0,0,47,192,0,2,244,1,255,244,0,0,63,128,0,3,244,0,255,244,0,0,127,64,0,7,240,31,255,255,144,0,191,0,15,255,243,255,245,255,255,64,30,0,15,255,210,255,64,27,255,0,4,0,6,169,0,144,0,0,24,0, + // 0x5efa 建 + 250,94,38,38,124,40,1,252,0,0,0,0,0,5,80,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,64,0,0,15,240,0,0,0,127,255,253,11,255,255,255,255,244,0,127,255,252,11,255,255,255,255,244,0,127,255,244,11,255,255,255,255,244,0,0,11,240,0,0,15,240,7,244,0,0,15,224,0,0,15,240,7,244,0,0,47,193,255,255,255,255,255,255,208,0,63,129,255,255,255,255,255,255,208,0,127,1,255,255,255,255,255,255,208,0,255,0,0,0,15,240,7,244,0,1,253,0,0,0,15,240,7,244,0,3,252,0,0,0,15,240,7,244,0,7,255,255,79,255,255,255,255,244,0,15,255,255,143,255,255,255,255,244,0,31,255,255,79,255,255,255,255,244,0,47,208,127,64,0,15,240,0,0,0,1,64,127,0,0,15,240,0,0,0,0,0,127,15,255,255,255,255,248,0,1,128,191,15,255,255,255,255,248,0,15,192,254,15,255,255,255,255,248,0,15,208,254,0,0,15,240,0,0,0,11,241,253,0,0,15,240,0,0,0,3,246,252,0,0,15,240,0,0,0,3,255,252,255,255,255,255,255,255,64,1,255,244,255,255,255,255,255,255,64,0,255,240,255,255,255,255,255,255,64,0,63,240,0,0,15,240,0,0,0,0,47,244,0,0,15,240,0,0,0,0,127,255,0,0,15,240,0,0,0,0,255,255,244,0,10,160,0,0,0,2,254,127,255,229,0,0,0,0,0,15,252,11,255,255,255,255,255,255,208,63,244,1,191,255,255,255,255,255,192,63,224,0,6,255,255,255,255,255,128,15,128,0,0,1,85,170,170,170,0,1,0,0,0,0,0,0,0,0,0, + // 0x5f15 引 + 21,95,31,37,40,40,3,252,0,0,0,0,0,0,3,252,63,255,255,255,192,0,3,252,63,255,255,255,192,0,3,252,63,255,255,255,192,0,3,252,21,85,85,111,192,0,3,252,0,0,0,31,192,0,3,252,0,0,0,31,192,0,3,252,0,0,0,31,192,0,3,252,0,0,0,31,192,0,3,252,0,0,0,31,192,0,3,252,15,255,255,255,192,0,3,252,15,255,255,255,192,0,3,252,15,255,255,255,192,0,3,252,31,229,85,85,64,0,3,252,31,192,0,0,0,0,3,252,47,192,0,0,0,0,3,252,63,192,0,0,0,0,3,252,63,192,0,0,0,0,3,252,63,128,0,0,0,0,3,252,127,255,255,255,208,0,3,252,191,255,255,255,208,0,3,252,191,255,255,255,192,0,3,252,255,85,85,127,192,0,3,252,254,0,0,47,192,0,3,252,0,0,0,63,192,0,3,252,0,0,0,63,192,0,3,252,0,0,0,63,192,0,3,252,0,0,0,63,128,0,3,252,0,0,0,127,128,0,3,252,0,0,0,127,64,0,3,252,0,0,0,191,0,0,3,252,0,0,0,255,0,0,3,252,0,0,2,255,0,0,3,252,0,255,255,253,0,0,3,252,0,191,255,252,0,0,3,252,0,127,255,240,0,0,3,252,0,42,170,64,0,0,2,252, + // 0x5f85 待 + 133,95,38,38,124,40,1,252,0,0,96,0,0,2,164,0,0,0,0,0,254,0,0,3,248,0,0,0,0,2,255,0,0,3,248,0,0,0,0,11,252,0,0,3,248,0,0,0,0,47,244,0,0,3,248,0,0,0,0,191,208,11,255,255,255,255,253,0,3,255,64,11,255,255,255,255,253,0,31,253,0,11,255,255,255,255,253,0,63,244,0,1,85,87,253,85,84,0,31,192,41,0,0,3,248,0,0,0,15,0,63,128,0,3,248,0,0,0,0,0,255,64,0,3,248,0,0,0,0,2,254,0,0,3,248,0,0,0,0,7,252,255,255,255,255,255,255,208,0,15,244,255,255,255,255,255,255,208,0,63,240,255,255,255,255,255,255,208,0,255,240,85,85,85,85,255,85,64,3,255,240,0,0,0,0,191,0,0,15,255,240,0,0,0,0,191,0,0,127,255,240,0,0,0,0,191,0,0,191,239,240,21,85,85,85,255,85,64,63,143,240,127,255,255,255,255,255,192,46,15,240,127,255,255,255,255,255,192,4,15,240,127,255,255,255,255,255,192,0,15,240,0,0,0,0,191,0,0,0,15,240,0,124,0,0,191,0,0,0,15,240,1,254,0,0,191,0,0,0,15,240,0,255,64,0,191,0,0,0,15,240,0,63,192,0,191,0,0,0,15,240,0,31,240,0,191,0,0,0,15,240,0,15,244,0,191,0,0,0,15,240,0,3,252,0,191,0,0,0,15,240,0,2,224,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,0,3,255,255,0,0,0,15,240,0,0,3,255,254,0,0,0,15,240,0,0,2,255,252,0,0,0,6,144,0,0,0,169,64,0,0, + // 0x5f8c 後 + 140,95,38,38,124,40,1,252,0,0,144,0,0,36,0,0,0,0,0,1,253,0,0,127,64,0,0,0,0,3,252,0,0,255,0,0,0,0,0,15,244,0,3,253,0,32,0,0,0,63,224,0,11,248,0,253,0,0,0,255,128,14,47,224,3,255,0,0,3,254,0,63,255,128,11,252,0,0,31,248,0,63,255,0,47,240,0,0,127,224,0,11,254,0,191,192,0,0,63,128,62,1,255,194,255,0,0,0,13,0,255,0,63,251,252,2,0,0,0,1,254,0,15,255,240,47,128,0,0,3,252,0,3,255,192,63,208,0,0,15,244,0,3,255,0,15,240,0,0,47,224,0,15,248,0,7,252,0,0,191,210,255,255,255,255,255,254,0,2,255,210,255,255,255,255,255,255,64,11,255,210,255,255,255,255,255,255,192,63,255,208,85,1,255,80,0,47,224,255,239,208,0,3,253,0,0,15,192,127,143,208,0,11,252,0,0,5,0,62,15,208,0,47,255,255,255,128,0,4,15,208,0,191,255,255,255,224,0,0,15,208,2,255,255,255,255,192,0,0,15,208,15,255,0,0,127,128,0,0,15,208,127,255,192,1,255,0,0,0,15,211,255,239,224,3,253,0,0,0,15,209,255,11,248,15,248,0,0,0,15,208,184,3,255,127,224,0,0,0,15,208,16,0,255,255,128,0,0,0,15,208,0,0,63,254,0,0,0,0,15,208,0,1,191,255,128,0,0,0,15,208,0,31,255,255,248,0,0,0,15,208,6,255,254,127,255,228,0,0,15,210,255,255,224,7,255,255,208,0,15,211,255,254,0,0,127,255,192,0,15,208,255,144,0,0,6,255,64,0,15,208,164,0,0,0,0,10,0, + // 0x5f91 徑 + 145,95,38,38,124,40,1,252,0,0,160,0,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,0,7,252,63,255,255,255,255,255,192,0,31,240,63,255,255,255,255,255,192,0,63,208,63,255,255,255,255,255,192,1,255,64,21,85,85,85,85,85,64,7,254,0,0,0,0,0,0,0,0,47,248,0,0,191,0,253,2,248,0,127,224,16,0,254,2,252,3,248,0,63,64,126,2,252,3,248,11,240,0,13,0,255,67,248,11,240,31,208,0,0,1,254,11,240,31,208,63,192,0,0,3,252,15,208,63,128,191,0,0,0,15,244,63,192,191,1,253,0,0,0,47,240,63,128,255,1,252,0,0,0,191,208,31,192,63,128,255,0,0,2,255,208,15,240,47,192,63,128,0,11,255,208,3,248,15,240,31,224,0,47,255,208,2,252,3,248,7,244,0,191,255,208,0,254,2,252,3,252,0,191,207,208,0,127,64,255,0,254,0,63,15,208,0,63,64,126,0,190,0,28,15,208,0,16,0,16,0,16,0,0,15,208,5,85,85,85,85,84,0,0,15,208,31,255,255,255,255,253,0,0,15,208,31,255,255,255,255,253,0,0,15,208,31,255,255,255,255,253,0,0,15,208,0,0,7,244,0,0,0,0,15,208,0,0,7,244,0,0,0,0,15,208,0,0,7,244,0,0,0,0,15,208,0,0,7,244,0,0,0,0,15,208,0,0,7,244,0,0,0,0,15,208,0,0,7,244,0,0,0,0,15,208,85,85,91,249,85,85,64,0,15,210,255,255,255,255,255,255,208,0,15,210,255,255,255,255,255,255,208,0,15,210,255,255,255,255,255,255,208,0,15,208,0,0,0,0,0,0,0, + // 0x5f9e 從 + 158,95,38,38,124,40,1,252,0,0,144,0,10,80,0,41,0,0,0,1,253,0,15,240,0,63,64,0,0,3,252,0,15,208,0,127,0,0,0,15,244,0,31,192,0,191,0,0,0,63,224,0,47,192,0,255,0,0,0,255,128,0,63,128,0,254,0,0,3,255,0,0,127,64,1,253,0,0,31,248,0,0,191,192,3,252,0,0,127,224,0,0,255,244,3,255,0,0,63,128,61,2,255,253,11,255,192,0,13,0,255,67,253,255,95,255,244,0,0,1,254,15,244,127,63,203,252,0,0,3,252,47,224,29,191,130,255,0,0,15,244,127,192,2,255,0,191,192,0,47,225,255,64,11,253,0,47,208,0,191,208,254,0,3,244,0,15,64,2,255,208,44,0,1,244,0,1,0,11,255,208,0,0,2,252,0,0,0,47,255,208,0,0,2,252,0,0,0,191,255,208,1,164,2,252,0,0,0,191,207,208,1,252,2,252,0,0,0,63,15,208,2,252,2,252,0,0,0,24,15,208,2,252,2,252,0,0,0,0,15,208,3,252,2,255,255,252,0,0,15,208,3,248,2,255,255,252,0,0,15,208,3,248,2,255,255,252,0,0,15,208,7,252,2,252,0,0,0,0,15,208,11,253,2,252,0,0,0,0,15,208,15,255,2,252,0,0,0,0,15,208,15,255,66,252,0,0,0,0,15,208,47,255,194,252,0,0,0,0,15,208,63,207,242,252,0,0,0,0,15,208,191,71,255,252,0,0,0,0,15,210,255,2,255,252,0,0,0,0,15,215,253,0,191,255,255,255,192,0,15,219,248,0,31,255,255,255,128,0,15,210,240,0,1,191,255,255,64,0,15,208,64,0,0,0,21,85,0, + // 0x5fa9 復 + 169,95,38,38,124,40,1,252,0,0,144,0,25,0,0,0,0,0,0,2,253,0,63,192,0,0,0,0,0,7,252,0,127,128,0,0,0,0,0,15,244,0,255,64,0,0,0,0,0,63,208,1,255,255,255,255,255,192,0,255,128,3,255,255,255,255,255,192,7,254,0,11,255,255,255,255,255,192,31,248,0,15,240,0,0,0,0,0,127,224,16,63,224,0,0,0,0,0,63,64,62,191,229,85,85,85,80,0,13,0,255,255,255,255,255,255,244,0,0,1,255,254,255,255,255,255,244,0,0,3,252,44,253,0,0,3,244,0,0,15,244,0,253,0,0,3,244,0,0,47,240,0,254,85,85,87,244,0,0,191,208,0,255,255,255,255,244,0,2,255,208,0,255,255,255,255,244,0,11,255,208,0,253,0,0,3,244,0,63,255,208,0,253,0,0,3,244,0,255,239,208,0,255,255,255,255,244,0,127,79,208,0,255,255,255,255,244,0,45,15,208,0,86,255,85,85,80,0,4,15,208,0,3,252,0,0,0,0,0,15,208,0,11,248,0,0,0,0,0,15,208,0,47,255,255,255,224,0,0,15,208,0,191,255,255,255,240,0,0,15,208,2,255,234,170,191,224,0,0,15,208,15,255,224,0,127,192,0,0,15,208,191,251,248,1,255,64,0,0,15,208,191,130,254,11,253,0,0,0,15,208,45,0,191,255,244,0,0,0,15,208,0,0,47,255,192,0,0,0,15,208,0,0,191,255,224,0,0,0,15,208,0,111,255,255,255,144,0,0,15,208,175,255,255,95,255,255,144,0,15,208,255,255,224,1,191,255,192,0,15,208,191,249,0,0,10,255,64,0,15,208,36,0,0,0,0,6,0, + // 0x5fae 微 + 174,95,38,38,124,40,1,252,0,6,64,1,244,0,2,144,0,0,0,15,240,1,244,0,3,244,0,0,0,47,208,1,244,0,7,240,0,0,0,191,193,65,244,20,7,240,0,0,1,255,3,209,244,62,11,240,0,0,7,252,3,209,244,62,15,224,0,0,31,244,3,209,244,62,15,208,0,0,127,224,3,209,244,62,15,192,0,0,127,129,67,209,244,62,47,255,255,208,46,3,251,209,244,62,63,255,255,208,4,11,247,209,244,62,63,255,255,208,0,15,227,255,255,254,127,64,190,0,0,47,195,255,255,254,255,64,190,0,0,127,131,255,255,255,255,64,253,0,0,255,0,0,0,3,255,128,253,0,2,255,0,0,0,7,255,128,252,0,7,255,0,0,0,15,255,192,252,0,31,255,0,0,0,3,235,193,252,0,63,255,15,255,255,255,199,210,248,0,255,255,15,255,255,255,7,227,244,0,191,127,15,255,255,255,3,243,240,0,60,63,0,127,11,224,3,247,240,0,20,63,0,126,7,224,2,255,224,0,0,63,0,126,7,224,1,255,208,0,0,63,0,126,7,224,0,255,192,0,0,63,0,126,7,224,0,255,192,0,0,63,0,189,7,224,0,191,64,0,0,63,0,253,7,224,64,191,0,0,0,63,0,252,7,251,192,255,128,0,0,63,1,252,11,255,211,255,192,0,0,63,2,248,63,255,139,255,240,0,0,63,3,244,47,248,15,247,248,0,0,63,11,240,14,64,63,195,253,0,0,63,31,208,0,1,255,64,255,64,0,63,47,192,0,11,254,0,191,224,0,63,11,0,0,11,244,0,47,208,0,63,1,0,0,3,208,0,11,128,0,63,0,0,0,1,64,0,1,0, + // 0x5fc3 心 + 195,95,38,38,124,40,1,252,0,0,0,20,0,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,255,248,0,0,0,0,0,0,0,0,255,255,128,0,0,0,0,0,0,0,11,255,248,0,0,0,0,0,0,0,0,191,255,64,0,0,0,0,0,0,0,11,255,240,0,0,0,0,0,0,0,0,255,252,0,0,0,0,0,0,0,0,31,244,0,0,0,0,0,0,0,0,2,224,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,1,84,0,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,0,3,252,0,0,0,4,0,0,0,0,3,252,0,0,0,189,0,0,0,249,3,252,0,0,1,255,0,0,0,255,3,252,0,0,0,255,128,0,0,254,3,252,0,0,0,63,208,0,0,254,3,252,0,0,0,47,240,0,1,253,3,252,0,0,0,15,244,0,2,252,3,252,0,0,0,11,252,0,3,252,3,252,0,0,0,3,253,0,3,252,3,252,0,0,0,1,255,0,7,248,3,252,0,0,0,0,255,64,11,244,3,252,0,0,0,0,191,192,15,240,3,252,0,0,0,0,63,192,31,224,3,252,0,0,6,0,63,208,63,208,3,252,0,0,7,240,47,224,127,192,3,252,0,0,7,240,15,224,191,128,3,252,0,0,7,240,14,0,31,0,3,252,0,0,11,240,0,0,0,0,3,252,0,0,11,240,0,0,0,0,3,252,0,0,15,224,0,0,0,0,2,254,0,0,47,208,0,0,0,0,2,255,255,255,255,192,0,0,0,0,0,255,255,255,255,128,0,0,0,0,0,127,255,255,254,0,0,0,0,0,0,1,85,85,80,0,0,0, + // 0x6027 性 + 39,96,37,38,124,40,1,252,0,31,208,0,0,1,168,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,62,65,253,0,0,0,0,31,208,0,127,65,253,0,0,0,0,31,208,0,191,1,253,0,0,0,0,31,208,0,191,1,253,0,0,0,0,31,208,0,255,1,253,0,0,0,0,31,239,0,254,1,253,0,0,0,15,159,255,129,254,170,254,170,169,0,15,159,223,194,255,255,255,255,255,0,15,159,219,211,255,255,255,255,255,0,31,159,215,247,255,255,255,255,255,0,31,95,211,255,240,1,253,0,0,0,47,31,210,255,240,1,253,0,0,0,63,31,208,95,208,1,253,0,0,0,63,31,208,63,192,1,253,0,0,0,126,31,208,63,128,1,253,0,0,0,189,31,208,7,0,1,253,0,0,0,188,31,208,0,0,1,253,0,0,0,4,31,208,0,0,1,253,0,0,0,0,31,208,2,255,255,255,255,252,0,0,31,208,2,255,255,255,255,252,0,0,31,208,2,255,255,255,255,252,0,0,31,208,1,85,86,254,85,84,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,31,208,191,255,255,255,255,255,192,0,31,208,191,255,255,255,255,255,192,0,31,208,191,255,255,255,255,255,192,0,31,208,106,170,170,170,170,170,128,0,31,208,0,0,0,0,0,0,0, + // 0x6062 恢 + 98,96,38,38,124,40,1,252,0,10,128,1,160,0,0,0,0,0,0,31,192,3,244,0,0,0,0,0,0,31,192,3,244,0,0,0,0,0,0,31,192,3,244,0,0,0,0,0,0,31,192,87,249,85,85,85,85,64,0,31,192,255,255,255,255,255,255,192,0,31,192,255,255,255,255,255,255,192,0,31,233,255,255,255,255,255,255,192,10,95,255,3,244,0,0,0,0,0,15,159,239,3,244,0,15,192,0,0,15,95,207,131,244,0,15,192,0,0,15,95,203,195,244,0,15,192,0,0,31,95,199,211,244,0,15,192,0,0,31,31,195,227,244,0,15,192,9,0,47,31,195,227,244,184,15,192,31,192,63,31,194,67,244,252,15,192,47,128,62,31,192,3,244,248,15,192,63,64,125,31,192,3,240,248,15,192,63,0,188,31,192,3,240,244,15,192,190,0,20,31,192,3,241,244,31,192,252,0,0,31,192,3,242,240,31,193,248,0,0,31,192,7,243,240,31,210,244,0,0,31,192,7,251,208,47,211,240,0,0,31,192,11,225,192,63,224,0,0,0,31,192,11,224,0,63,240,0,0,0,31,192,15,208,0,127,244,0,0,0,31,192,15,208,0,254,248,0,0,0,31,192,31,192,1,252,252,0,0,0,31,192,47,192,3,248,190,0,0,0,31,192,63,128,11,240,63,64,0,0,31,192,127,64,31,224,63,192,0,0,31,192,191,0,127,192,31,240,0,0,31,192,254,1,255,64,11,252,0,0,31,194,252,11,254,0,3,255,0,0,31,199,248,63,248,0,1,255,208,0,31,203,240,127,224,0,0,127,208,0,31,193,224,47,64,0,0,31,128,0,31,192,64,8,0,0,0,2,0, + // 0x606f 息 + 111,96,37,39,134,40,2,252,0,0,0,0,64,0,0,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,1,255,0,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,15,255,255,255,255,255,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,250,170,170,170,171,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,250,170,170,170,175,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,208,0,0,0,3,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,255,255,255,255,255,248,0,0,0,0,0,0,144,0,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,0,7,254,0,0,16,0,0,0,228,10,129,255,128,0,248,0,0,1,253,15,208,127,224,3,254,0,0,3,252,15,208,31,244,1,255,128,0,3,248,15,208,7,240,0,127,224,0,15,244,15,208,2,128,64,31,244,0,31,240,15,208,0,0,185,11,252,0,63,208,15,208,0,0,254,3,255,0,255,128,15,224,0,1,254,0,255,64,255,0,15,255,255,255,252,0,127,0,28,0,11,255,255,255,252,0,56,0,0,0,2,255,255,255,224,0,0,0,0,0,0,5,85,84,0,0,0,0, + // 0x61b6 憶 + 182,97,38,38,124,40,1,252,0,10,128,0,0,2,168,0,0,0,0,31,192,0,0,3,252,0,0,0,0,31,192,0,0,3,252,0,0,0,0,31,192,10,170,171,254,170,170,0,0,31,192,15,255,255,255,255,255,0,0,31,192,15,255,255,255,255,255,0,0,31,192,0,15,192,0,63,64,0,0,31,217,0,15,224,0,127,0,0,10,95,255,0,7,240,0,190,0,0,15,159,239,0,3,240,0,252,0,0,15,95,207,191,255,255,255,255,255,208,15,95,203,255,255,255,255,255,255,208,31,95,199,255,255,255,255,255,255,192,31,31,195,224,0,0,0,0,0,0,47,31,195,224,85,85,85,85,84,0,63,31,193,1,255,255,255,255,252,0,62,31,192,1,255,255,255,255,252,0,125,31,192,1,252,0,0,1,252,0,188,31,192,1,252,0,0,1,252,0,20,31,192,1,255,255,255,255,252,0,0,31,192,1,255,255,255,255,252,0,0,31,192,1,252,0,0,2,252,0,0,31,192,1,252,0,0,1,252,0,0,31,192,1,253,85,85,86,252,0,0,31,192,1,255,255,255,255,252,0,0,31,192,1,255,255,255,255,252,0,0,31,192,0,0,15,208,0,0,0,0,31,192,0,0,15,248,0,0,0,0,31,192,6,66,246,255,7,192,0,0,31,192,11,226,248,127,15,240,0,0,31,192,15,210,248,13,7,248,0,0,31,192,31,194,248,0,2,253,0,0,31,192,63,130,248,0,36,255,0,0,31,192,127,66,248,0,47,127,128,0,31,193,255,2,248,0,63,47,192,0,31,194,252,2,255,255,255,15,208,0,31,192,116,1,255,255,254,11,64,0,31,192,0,0,127,255,248,0,0, + // 0x61c9 應 + 201,97,37,38,124,40,1,252,0,0,0,0,11,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,15,240,0,0,0,0,2,255,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,255,192,2,255,255,255,255,255,255,255,255,192,2,252,0,57,0,244,1,64,0,0,2,248,0,127,1,253,3,248,0,0,2,248,0,253,2,252,7,240,0,0,2,248,2,252,7,244,15,224,0,0,2,248,7,244,15,255,255,255,254,0,2,248,15,240,47,255,255,255,254,0,2,248,63,240,127,229,111,213,84,0,2,248,191,240,255,208,31,192,0,0,2,254,255,243,255,255,255,255,248,0,2,255,255,247,255,255,255,255,248,0,2,255,247,241,223,208,31,192,0,0,2,249,199,240,15,208,31,192,0,0,2,248,7,240,15,255,255,255,248,0,2,248,7,240,15,255,255,255,248,0,3,248,7,240,15,208,31,192,0,0,3,248,7,240,15,208,31,192,0,0,3,244,7,240,15,229,111,213,85,0,3,244,7,240,15,255,255,255,255,64,3,244,7,240,15,255,255,255,255,64,3,240,1,80,3,208,0,0,0,0,7,240,0,0,15,253,0,0,0,0,11,240,0,0,7,255,128,6,0,0,11,224,10,66,252,127,240,63,192,0,15,224,15,210,252,11,224,47,224,0,15,208,47,194,252,1,64,11,244,0,31,192,63,66,252,0,2,147,253,0,47,192,191,2,252,0,3,244,255,0,63,130,254,1,252,0,3,240,127,128,127,71,252,1,255,255,255,240,63,192,191,1,240,0,255,255,255,208,31,64,30,0,0,0,47,255,255,64,4,0,4,0,0,0,0,0,0,0,0,0, + // 0x6210 成 + 16,98,37,39,134,40,1,251,0,0,0,0,0,170,1,64,0,0,0,0,0,0,0,255,7,244,0,0,0,0,0,0,0,191,15,254,0,0,0,0,0,0,0,191,2,255,192,0,0,0,0,0,0,191,0,127,244,0,0,0,0,0,0,191,0,15,244,0,0,0,0,0,0,191,0,2,208,0,0,255,255,255,255,255,255,255,255,192,0,255,255,255,255,255,255,255,255,192,0,255,255,255,255,255,255,255,255,192,0,255,170,170,170,255,234,170,170,128,0,255,0,0,0,127,128,0,0,0,0,255,0,0,0,63,128,0,0,0,0,255,0,0,0,63,128,1,0,0,0,255,0,0,0,63,192,7,244,0,0,255,85,85,80,63,192,15,240,0,0,255,255,255,240,63,192,15,240,0,0,255,255,255,240,47,192,47,208,0,0,255,255,255,240,31,208,63,192,0,0,255,0,15,240,31,224,127,128,0,0,255,0,15,240,15,240,255,0,0,0,254,0,15,224,15,242,255,0,0,0,254,0,15,224,15,247,253,0,0,0,254,0,15,224,11,255,248,0,0,1,254,0,15,224,7,255,240,0,0,1,253,0,15,224,3,255,224,0,0,2,253,0,15,224,3,255,192,0,0,2,252,0,31,208,2,255,0,13,0,3,252,85,127,208,7,255,0,15,192,3,252,127,255,192,31,255,64,15,192,7,248,63,255,128,127,255,192,15,192,11,244,47,253,2,255,255,208,31,192,15,240,0,0,15,255,31,240,47,192,31,240,0,0,127,252,15,253,63,128,63,208,0,2,255,240,7,255,255,64,127,192,0,2,255,192,1,255,255,0,47,128,0,0,189,0,0,127,253,0,7,0,0,0,32,0,0,10,160,0,0,0,0,0,0,0,0,0,0,0, + // 0x6236 戶 + 54,98,32,38,48,40,2,252,0,0,0,0,0,0,6,0,0,0,0,0,0,6,255,192,0,0,0,0,6,255,255,240,0,0,0,91,255,255,255,208,0,62,175,255,255,255,228,0,0,63,255,255,255,164,0,0,0,63,255,250,64,0,0,0,0,63,228,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,63,255,255,255,255,255,254,0,63,255,255,255,255,255,254,0,63,255,255,255,255,255,254,0,63,213,85,85,85,86,254,0,63,192,0,0,0,0,254,0,63,192,0,0,0,0,254,0,63,192,0,0,0,0,254,0,63,192,0,0,0,0,254,0,63,192,0,0,0,0,254,0,63,128,0,0,0,0,254,0,63,213,85,85,85,86,254,0,127,255,255,255,255,255,254,0,127,255,255,255,255,255,254,0,191,255,255,255,255,255,254,0,191,0,0,0,0,0,254,0,255,0,0,0,0,0,254,0,254,0,0,0,0,0,0,2,253,0,0,0,0,0,0,3,252,0,0,0,0,0,0,7,248,0,0,0,0,0,0,15,244,0,0,0,0,0,0,31,240,0,0,0,0,0,0,63,208,0,0,0,0,0,0,255,192,0,0,0,0,0,0,255,64,0,0,0,0,0,0,46,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0, + // 0x6240 所 + 64,98,38,37,114,40,1,252,0,0,0,0,0,0,0,0,180,0,5,85,85,85,84,0,0,11,254,0,31,255,255,255,252,0,1,255,255,128,31,255,255,255,252,80,191,255,253,0,31,255,255,255,252,191,255,255,128,0,0,0,0,0,0,191,255,228,0,0,0,0,0,0,0,191,228,0,0,0,0,0,0,0,0,191,0,0,0,0,1,85,85,85,80,191,0,0,0,0,3,255,255,255,240,191,0,0,0,0,3,255,255,255,240,191,0,0,0,0,3,255,255,255,240,191,0,0,0,0,3,244,0,15,240,191,0,0,0,0,3,244,0,15,240,191,255,255,255,208,3,244,0,15,240,191,255,255,255,208,3,244,0,15,240,191,255,255,255,208,3,244,0,15,240,255,170,175,250,144,3,244,0,15,240,255,0,15,208,0,3,255,255,255,240,254,0,15,208,0,3,255,255,255,240,254,0,15,208,0,3,255,255,255,240,254,0,15,208,0,3,249,85,85,81,253,0,15,208,0,3,244,0,0,1,253,0,15,208,0,7,240,0,0,2,252,0,15,208,0,7,240,0,0,3,252,0,15,208,0,7,240,0,0,3,248,0,15,208,0,11,240,0,0,7,244,0,15,208,0,11,240,0,0,15,240,0,15,208,0,15,224,0,0,15,240,0,15,208,0,15,208,0,0,47,208,0,15,208,0,31,192,0,0,63,192,0,15,208,0,63,192,0,0,255,128,0,15,208,0,63,128,0,2,255,0,0,15,208,0,191,64,0,7,253,0,0,15,208,0,255,0,0,7,248,0,0,15,208,0,45,0,0,0,240,0,0,15,208,0,4,0,0,0,0,0,0,15,208,0, + // 0x6247 扇 + 71,98,36,36,68,40,1,252,15,255,255,255,255,255,255,255,255,15,255,255,255,255,255,255,255,255,15,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,255,255,255,255,255,255,224,0,63,255,255,255,255,255,255,224,0,63,255,255,255,255,255,255,224,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,15,224,0,63,64,0,0,0,0,15,224,0,63,255,255,255,255,255,255,224,0,127,255,255,255,255,255,255,224,0,127,255,255,255,255,255,255,224,0,127,64,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,0,127,127,255,255,15,255,255,244,0,127,127,255,255,15,255,255,244,0,191,63,255,255,15,255,255,244,0,191,1,0,127,0,80,3,244,0,255,15,192,127,3,244,3,244,0,254,15,224,127,3,253,3,244,0,254,7,248,127,0,255,3,244,1,253,1,252,127,0,63,67,244,2,252,0,240,127,0,28,3,244,3,252,0,0,127,0,0,99,244,3,248,0,47,127,0,11,243,244,7,244,7,255,127,1,191,243,244,15,241,191,254,127,47,255,131,244,31,241,255,224,127,47,248,3,244,63,208,253,0,127,31,128,3,244,127,192,144,0,127,4,0,3,244,191,64,0,63,255,0,3,255,244,31,0,0,47,254,0,2,255,240,0,0,0,31,228,0,1,255,128, + // 0x624b 手 + 75,98,36,38,86,40,2,252,0,0,0,0,0,0,0,96,0,0,0,0,0,0,1,175,248,0,0,0,0,1,90,255,255,253,0,1,86,175,255,255,255,255,254,0,3,255,255,255,255,255,254,64,0,3,255,255,255,255,165,0,0,0,2,255,170,85,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,2,170,170,170,255,170,170,170,144,3,255,255,255,255,255,255,255,224,3,255,255,255,255,255,255,255,224,3,255,255,255,255,255,255,255,224,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,170,255,170,170,170,170,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,255,255,255,0,0,0,0,0,0,191,255,253,0,0,0,0,0,0,63,255,248,0,0,0,0,0,0,42,169,0,0,0,0,0, + // 0x6253 打 + 83,98,37,38,124,40,2,252,0,31,208,0,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,0,31,208,0,0,0,0,0,0,0,0,31,208,2,170,170,170,170,170,64,0,31,208,3,255,255,255,255,255,64,0,31,208,3,255,255,255,255,255,64,0,31,208,3,255,255,255,255,255,64,0,31,208,0,0,0,31,224,0,0,255,255,255,244,0,0,31,224,0,0,255,255,255,244,0,0,31,224,0,0,255,255,255,244,0,0,31,224,0,0,170,175,234,160,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,20,0,0,31,224,0,0,0,31,235,248,0,0,31,224,0,0,0,47,255,248,0,0,31,224,0,0,27,255,255,252,0,0,31,224,0,0,255,255,255,144,0,0,31,224,0,0,255,255,224,0,0,0,31,224,0,0,191,255,208,0,0,0,31,224,0,0,120,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,31,208,0,0,0,31,224,0,0,0,47,208,0,0,0,47,224,0,0,63,255,208,0,11,255,255,208,0,0,31,255,192,0,3,255,255,192,0,0,15,255,64,0,3,255,255,64,0,0,5,80,0,0,2,255,228,0,0,0, + // 0x6279 批 + 121,98,38,38,124,40,1,252,0,31,128,1,80,0,21,64,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,63,255,255,199,240,0,47,192,0,0,63,255,255,199,240,0,47,192,4,0,63,255,255,199,240,0,47,192,45,0,21,127,213,71,240,0,47,192,191,64,0,47,192,7,240,0,47,194,255,128,0,47,192,7,255,255,47,207,254,0,0,47,192,7,255,255,47,255,244,0,0,47,192,7,255,255,47,255,192,0,0,47,192,7,250,169,47,253,0,0,0,47,193,71,240,0,47,240,0,0,0,47,255,135,240,0,47,192,0,0,0,127,255,199,240,0,47,192,0,0,27,255,255,199,240,0,47,192,0,0,191,255,249,7,240,0,47,192,0,0,127,255,192,7,240,0,47,192,0,0,63,175,192,7,240,0,47,192,0,0,16,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,0,0,0,47,192,7,240,0,47,192,9,0,0,47,192,7,240,0,47,192,15,208,0,47,192,7,240,0,47,192,15,208,0,47,192,7,240,27,47,192,15,208,0,47,192,7,255,255,47,192,15,192,0,47,194,255,255,255,47,192,31,192,21,127,195,255,255,254,31,255,255,192,31,255,130,255,249,0,15,255,255,64,15,255,1,249,0,0,7,255,254,0,15,248,0,0,0,0,0,21,80,0, + // 0x6296 抖 + 150,98,38,38,124,40,1,252,0,11,224,0,0,0,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,3,128,0,191,0,0,0,15,240,0,15,248,0,191,0,0,0,15,240,0,15,255,0,191,0,0,0,15,240,0,1,255,208,191,0,0,0,15,240,0,0,63,244,191,0,0,63,255,255,248,0,11,240,191,0,0,63,255,255,248,0,1,192,191,0,0,63,255,255,248,0,0,0,191,0,0,21,95,245,80,0,0,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,61,0,0,191,0,0,0,15,240,0,191,208,0,191,0,0,0,15,240,0,255,248,0,191,0,0,0,15,240,0,31,255,64,191,0,0,0,15,240,20,2,255,192,191,0,0,0,15,251,248,0,127,64,191,0,0,0,15,255,248,0,14,0,191,0,0,6,255,255,252,0,0,0,191,0,0,127,255,255,144,0,0,0,191,0,0,63,255,240,0,0,0,0,191,107,192,63,239,240,0,0,0,6,255,255,192,24,15,240,0,0,107,255,255,255,208,0,15,240,2,191,255,255,255,255,144,0,15,240,7,255,255,255,255,64,0,0,15,240,3,255,255,164,191,0,0,0,15,240,3,250,64,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,0,0,0,191,0,0,0,15,240,0,0,0,0,191,0,0,31,255,224,0,0,0,0,191,0,0,15,255,208,0,0,0,0,191,0,0,11,255,64,0,0,0,0,191,0,0,1,80,0,0,0,0,0,106,0,0, + // 0x62bd 抽 + 189,98,37,39,134,40,1,251,0,15,208,0,0,0,168,0,0,0,0,15,224,0,0,0,253,0,0,0,0,15,224,0,0,0,253,0,0,0,0,15,224,0,0,0,253,0,0,0,0,15,224,0,0,0,253,0,0,0,0,15,224,0,0,0,253,0,0,0,0,15,224,0,0,0,253,0,0,0,0,15,224,0,0,0,253,0,0,0,63,255,255,224,0,0,253,0,0,0,63,255,255,226,170,170,254,170,170,64,63,255,255,227,255,255,255,255,255,128,21,95,245,83,255,255,255,255,255,128,0,15,224,3,255,255,255,255,255,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,231,243,244,0,253,0,63,128,0,15,255,243,244,0,253,0,63,128,1,191,255,243,255,255,255,255,255,128,127,255,255,147,255,255,255,255,255,128,127,255,244,3,255,255,255,255,255,128,127,255,224,3,249,86,254,85,191,128,61,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,244,0,253,0,63,128,0,15,224,3,250,170,254,170,191,128,0,15,224,3,255,255,255,255,255,128,0,15,224,3,255,255,255,255,255,128,5,95,224,3,255,255,255,255,255,128,31,255,208,3,244,0,0,0,63,128,15,255,192,3,244,0,0,0,63,128,11,254,0,3,244,0,0,0,42,64,0,0,0,0,0,0,0,0,0,0, + // 0x62d4 拔 + 212,98,38,39,134,40,1,251,0,15,208,0,0,253,0,0,0,0,0,15,224,0,1,253,0,244,0,0,0,15,224,0,1,253,3,254,0,0,0,15,224,0,1,253,2,255,208,0,0,15,224,0,1,253,0,127,244,0,0,15,224,0,1,252,0,11,254,0,0,15,224,0,1,252,0,1,252,0,0,15,224,0,1,252,0,0,116,0,63,255,255,224,1,252,0,0,0,0,63,255,255,235,255,255,255,255,255,192,63,255,255,235,255,255,255,255,255,192,63,255,255,235,255,255,255,255,255,192,0,15,224,0,2,252,0,0,0,0,0,15,224,0,2,252,0,0,0,0,0,15,224,0,3,253,0,0,0,0,0,15,224,0,3,254,0,6,160,0,0,15,224,0,3,255,0,11,240,0,0,15,224,0,3,255,0,15,240,0,0,15,225,160,3,255,64,15,224,0,0,15,255,240,7,255,128,31,208,0,0,111,255,240,11,255,192,31,192,0,111,255,255,224,15,239,224,47,192,0,191,255,248,0,15,231,240,63,128,0,127,255,224,0,31,211,244,127,64,0,62,79,224,0,47,194,252,255,0,0,0,15,224,0,63,192,254,254,0,0,0,15,224,0,127,64,191,252,0,0,0,15,224,0,191,0,63,248,0,0,0,15,224,0,254,0,47,240,0,0,0,15,224,2,253,0,47,244,0,0,0,15,224,3,252,0,127,253,0,0,0,15,224,15,244,1,255,255,64,0,0,15,224,31,240,3,254,255,208,0,0,15,224,127,192,31,248,63,248,0,5,95,224,255,128,191,240,11,255,64,31,255,211,255,3,255,192,2,255,224,15,255,193,252,1,254,0,0,127,128,11,254,0,112,0,116,0,0,7,0,0,0,0,0,0,0,0,0,0,0, + // 0x6309 按 + 9,99,38,39,134,40,1,251,0,15,208,0,0,1,168,0,0,0,0,15,224,0,0,2,252,0,0,0,0,15,224,0,0,2,252,0,0,0,0,15,224,0,0,2,252,0,0,0,0,15,224,0,0,2,252,0,0,0,0,15,224,1,85,87,253,85,85,64,0,15,224,11,255,255,255,255,255,192,0,15,224,11,255,255,255,255,255,192,63,255,255,235,255,255,255,255,255,192,63,255,255,235,240,0,0,0,47,192,63,255,255,235,240,15,144,0,47,192,21,95,245,91,240,31,224,0,47,192,0,15,224,11,240,47,208,0,47,192,0,15,224,11,240,63,192,0,47,192,0,15,224,0,0,63,128,0,0,0,0,15,224,0,0,127,64,0,0,0,0,15,224,5,85,255,85,85,85,64,0,15,224,15,255,255,255,255,255,208,0,15,225,175,255,255,255,255,255,208,0,15,255,255,255,255,255,255,255,208,1,191,255,240,3,248,0,31,224,0,111,255,255,224,7,244,0,47,208,0,191,255,244,0,15,240,0,63,192,0,127,255,224,0,15,224,0,63,192,0,62,79,224,0,31,192,0,127,64,0,0,15,224,0,63,208,0,255,0,0,0,15,224,0,63,253,2,254,0,0,0,15,224,0,191,255,227,252,0,0,0,15,224,0,255,255,255,248,0,0,0,15,224,0,9,31,255,240,0,0,0,15,224,0,0,1,255,253,0,0,0,15,224,0,0,7,255,255,192,0,0,15,224,0,0,111,254,255,244,0,0,15,224,0,11,255,240,63,254,0,5,95,224,22,255,255,128,7,255,192,31,255,208,63,255,248,0,0,255,192,15,255,192,31,254,64,0,0,47,0,11,254,0,15,144,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0, + // 0x6389 掉 + 137,99,38,38,124,40,1,252,0,26,128,0,0,2,160,0,0,0,0,47,192,0,0,3,244,0,0,0,0,47,192,0,0,3,244,0,0,0,0,47,192,0,0,3,244,0,0,0,0,47,192,0,0,3,255,255,255,128,0,47,192,0,0,3,255,255,255,128,0,47,192,0,0,3,255,255,255,128,0,47,192,0,0,3,244,0,0,0,63,255,255,192,0,3,244,0,0,0,63,255,255,192,0,3,244,0,0,0,63,255,255,203,255,255,255,255,252,0,21,127,229,75,255,255,255,255,252,0,0,47,192,11,255,255,255,255,252,0,0,47,192,11,240,0,0,3,252,0,0,47,192,11,240,0,0,3,252,0,0,47,192,11,240,0,0,3,252,0,0,47,192,11,255,255,255,255,252,0,0,47,192,11,255,255,255,255,252,0,0,47,219,203,255,255,255,255,252,0,0,47,255,203,240,0,0,3,252,0,1,255,255,219,240,0,0,3,252,0,127,255,255,139,240,0,0,3,252,0,63,255,224,11,255,255,255,255,252,0,63,255,192,11,255,255,255,255,252,0,41,47,192,11,255,255,255,255,252,0,0,47,192,0,0,3,244,0,0,0,0,47,192,0,0,3,244,0,0,0,0,47,192,0,0,3,244,0,0,0,0,47,192,255,255,255,255,255,255,208,0,47,192,255,255,255,255,255,255,208,0,47,192,255,255,255,255,255,255,208,0,47,192,85,85,87,249,85,85,64,0,47,192,0,0,3,244,0,0,0,0,47,192,0,0,3,244,0,0,0,63,255,192,0,0,3,244,0,0,0,47,255,128,0,0,3,244,0,0,0,31,254,0,0,0,3,244,0,0,0,5,64,0,0,0,2,164,0,0,0, + // 0x63a2 探 + 162,99,38,38,124,40,1,252,0,47,128,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,15,255,255,255,255,255,128,0,47,192,15,255,255,255,255,255,128,0,47,192,15,255,255,255,255,255,128,0,47,192,15,192,0,0,0,47,128,0,47,192,15,192,84,0,0,47,128,0,47,192,15,192,253,11,224,47,128,63,255,255,207,192,253,11,224,47,128,63,255,255,207,193,252,11,224,47,128,63,255,255,192,2,252,11,224,0,0,21,127,213,64,3,248,11,224,9,0,0,47,192,0,11,244,11,224,11,208,0,47,192,0,47,240,11,240,15,192,0,47,192,2,255,192,11,255,255,192,0,47,192,47,255,0,3,255,255,128,0,47,192,15,248,0,1,255,254,0,0,47,198,135,64,3,252,0,0,0,0,47,255,128,0,3,252,0,0,0,0,127,255,192,0,3,252,0,0,0,47,255,255,128,0,3,252,0,0,0,191,255,244,47,255,255,255,255,255,192,127,255,192,47,255,255,255,255,255,192,62,111,192,47,255,255,255,255,255,192,0,47,192,5,85,191,255,213,85,64,0,47,192,0,0,255,255,240,0,0,0,47,192,0,2,255,255,244,0,0,0,47,192,0,7,251,255,253,0,0,0,47,192,0,31,243,252,255,0,0,0,47,192,0,63,211,252,127,192,0,0,47,192,1,255,131,252,47,244,0,0,47,192,11,254,3,252,15,253,0,0,47,192,63,252,3,252,3,255,128,0,47,194,255,224,3,252,0,255,224,21,127,192,255,128,3,252,0,63,192,31,255,128,124,0,3,252,0,11,0,15,255,0,16,0,3,252,0,0,0,15,248,0,0,0,3,252,0,0,0, + // 0x63a5 接 + 165,99,37,38,124,40,1,252,0,15,208,0,0,3,252,0,0,0,0,15,224,0,0,3,252,0,0,0,0,15,224,0,0,3,252,0,0,0,0,15,224,0,0,3,252,0,0,0,0,15,224,15,255,255,255,255,255,0,0,15,224,15,255,255,255,255,255,0,0,15,224,15,255,255,255,255,255,0,0,15,224,0,11,208,0,63,128,0,63,255,255,192,15,208,0,127,64,0,63,255,255,192,15,224,0,191,0,0,63,255,255,192,11,240,0,254,0,0,21,95,245,64,7,240,0,253,0,0,0,15,224,0,3,244,1,252,0,0,0,15,224,0,7,248,3,248,0,0,0,15,224,127,255,255,255,255,255,192,0,15,224,127,255,255,255,255,255,192,0,15,224,127,255,255,255,255,255,192,0,15,224,0,0,63,192,0,0,0,0,15,226,192,0,127,128,0,0,0,0,15,255,192,0,255,0,0,0,0,0,111,255,208,1,255,0,0,0,0,27,255,255,255,255,255,255,255,255,192,191,255,249,127,255,255,255,255,255,192,127,255,224,63,255,255,255,255,255,192,62,79,224,0,15,240,0,127,64,0,16,15,224,0,47,208,0,191,0,0,0,15,224,0,63,192,0,254,0,0,0,15,224,0,191,64,2,253,0,0,0,15,224,0,255,249,7,252,0,0,0,15,224,2,255,255,239,240,0,0,0,15,224,1,186,255,255,224,0,0,0,15,224,0,0,27,255,244,0,0,0,15,224,0,0,47,255,255,128,0,0,15,224,0,27,255,251,255,244,0,31,255,208,175,255,255,128,127,255,0,15,255,192,255,255,244,0,7,255,0,11,255,64,127,249,0,0,0,188,0,6,148,0,36,0,0,0,0,0,0, + // 0x63a7 控 + 167,99,38,38,124,40,1,252,0,31,128,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,63,255,255,255,255,255,192,0,47,192,63,255,255,255,255,255,192,0,47,192,63,255,255,255,255,255,192,0,47,192,63,65,253,11,240,31,192,63,255,255,191,64,252,11,240,31,192,63,255,255,191,65,252,11,240,31,192,63,255,255,191,65,252,11,240,31,192,21,127,213,64,2,252,11,240,0,0,0,47,192,0,3,248,11,240,4,0,0,47,192,0,7,244,11,240,15,64,0,47,192,0,15,240,11,240,15,192,0,47,192,0,63,208,11,240,15,192,0,47,192,1,255,192,11,255,255,128,0,47,199,175,255,0,3,255,255,64,0,47,255,143,248,0,1,255,253,0,0,127,255,203,128,0,0,0,0,0,27,255,255,64,0,0,0,0,0,0,191,255,224,0,0,0,0,0,0,0,127,255,192,7,255,255,255,255,253,0,62,111,192,7,255,255,255,255,253,0,16,47,192,7,255,255,255,255,253,0,0,47,192,1,85,87,253,85,84,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,255,255,255,255,255,255,208,21,127,192,255,255,255,255,255,255,208,31,255,128,255,255,255,255,255,255,208,15,255,0,85,85,85,85,85,85,64,15,248,0,0,0,0,0,0,0,0, + // 0x63d0 提 + 208,99,38,38,124,40,1,252,0,47,128,0,0,0,0,0,0,0,0,47,128,1,170,170,170,170,164,0,0,47,128,2,255,255,255,255,244,0,0,47,128,2,255,255,255,255,244,0,0,47,128,2,252,0,0,3,244,0,0,47,128,2,252,0,0,3,244,0,0,47,128,2,252,0,0,3,244,0,0,47,128,2,255,255,255,255,244,0,127,255,255,194,255,255,255,255,244,0,127,255,255,194,254,170,170,171,244,0,127,255,255,194,252,0,0,3,244,0,21,127,213,66,252,0,0,3,244,0,0,47,128,2,254,170,170,175,244,0,0,47,128,2,255,255,255,255,244,0,0,47,128,2,255,255,255,255,244,0,0,47,128,0,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,0,47,128,0,0,0,0,0,0,0,0,47,134,95,255,255,255,255,255,128,0,47,255,223,255,255,255,255,255,128,1,191,255,223,255,255,255,255,255,128,111,255,255,128,0,3,248,0,0,0,191,255,224,0,80,3,248,0,0,0,127,255,128,0,253,3,248,0,0,0,57,47,128,1,252,3,248,0,0,0,0,47,128,1,252,3,255,255,248,0,0,47,128,2,248,3,255,255,248,0,0,47,128,3,252,3,255,255,248,0,0,47,128,7,253,3,248,0,0,0,0,47,128,11,255,3,248,0,0,0,0,47,128,15,255,67,248,0,0,0,0,47,128,47,223,211,248,0,0,0,0,47,128,63,139,251,248,0,0,0,0,63,128,255,2,255,248,0,0,0,47,255,131,254,0,191,255,255,255,224,31,255,71,252,0,31,255,255,255,192,15,253,1,240,0,1,191,255,255,192,5,64,0,64,0,0,0,0,0,0, + // 0x63d2 插 + 210,99,37,38,124,40,1,252,0,31,128,0,0,0,0,0,0,0,0,47,192,0,0,0,0,91,240,0,0,47,192,0,5,106,255,255,252,0,0,47,192,15,255,255,255,255,253,0,0,47,192,11,255,255,255,233,64,0,0,47,192,7,254,171,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,63,255,255,192,0,3,248,0,0,0,63,255,255,213,85,87,253,85,85,64,63,255,255,255,255,255,255,255,255,192,21,127,213,63,255,255,255,255,255,192,0,47,192,63,255,255,255,255,255,192,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,3,248,0,0,0,0,47,192,0,0,67,248,0,0,0,0,47,192,0,7,243,248,0,0,0,0,47,192,15,191,255,248,255,255,0,0,47,223,143,255,251,248,255,255,0,0,47,255,143,254,3,248,255,255,0,6,255,255,207,208,3,248,0,127,0,191,255,253,15,208,3,248,0,127,0,127,255,192,15,208,3,248,0,127,0,63,175,192,15,208,3,248,0,127,0,16,47,192,15,255,227,248,191,255,0,0,47,192,15,255,227,248,191,255,0,0,47,192,15,255,227,248,191,255,0,0,47,192,15,208,3,248,0,127,0,0,47,192,15,208,3,248,0,127,0,0,47,192,15,208,3,248,0,127,0,0,47,192,15,208,3,248,0,127,0,0,47,192,15,208,3,248,0,127,0,0,47,192,15,208,3,248,0,127,0,0,47,192,15,255,255,255,255,255,0,21,127,192,15,255,255,255,255,255,0,31,255,128,15,255,255,255,255,255,0,15,255,0,15,208,0,0,0,127,0,15,248,0,15,208,0,0,0,127,0, + // 0x63db 換 + 219,99,37,39,134,40,1,251,0,31,128,0,3,164,0,0,0,0,0,47,192,0,7,244,0,0,0,0,0,47,192,0,15,240,0,0,0,0,0,47,192,0,31,255,255,192,0,0,0,47,192,0,63,255,255,244,0,0,0,47,192,0,191,255,255,240,0,0,0,47,192,1,254,0,31,224,0,0,0,47,192,7,252,0,47,192,0,0,63,255,255,223,244,0,63,64,0,0,63,255,255,255,224,0,191,0,0,0,63,255,255,255,255,255,255,255,253,0,21,127,213,111,255,255,255,255,253,0,0,47,192,15,255,255,255,255,253,0,0,47,192,11,224,62,15,128,189,0,0,47,192,11,224,125,15,128,189,0,0,47,192,11,224,188,15,128,189,0,0,47,192,11,224,252,15,128,253,0,0,47,192,11,227,244,15,255,253,0,0,47,239,139,255,224,11,255,253,0,0,47,255,139,239,128,0,85,253,0,7,255,255,203,225,0,0,0,189,0,191,255,254,11,224,2,160,0,189,0,127,255,192,11,224,3,244,0,189,0,63,255,192,5,80,7,240,0,84,0,56,47,192,0,0,7,240,0,0,0,0,47,192,191,255,255,255,255,255,192,0,47,192,191,255,255,255,255,255,192,0,47,192,191,255,255,255,255,255,192,0,47,192,0,0,31,254,0,0,0,0,47,192,0,0,63,255,64,0,0,0,47,192,0,0,191,127,192,0,0,0,47,192,0,2,254,31,244,0,0,0,47,192,0,11,252,11,253,0,0,0,47,192,0,191,240,2,255,208,0,21,127,192,27,255,192,0,191,254,64,31,255,130,255,254,0,0,31,255,192,15,255,0,255,224,0,0,2,255,0,15,248,0,185,0,0,0,0,26,0,0,0,0,0,0,0,0,0,0,0, + // 0x64c7 擇 + 199,100,38,39,134,40,1,251,0,31,128,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,7,255,255,255,255,255,0,0,47,192,7,255,255,255,255,255,0,0,47,192,7,250,255,171,250,191,0,0,47,192,7,224,126,3,224,63,0,0,47,192,7,224,126,3,224,63,0,0,47,192,7,224,126,3,224,63,0,63,255,255,199,255,255,255,255,255,0,63,255,255,199,255,255,255,255,255,0,63,255,255,198,170,171,254,170,170,0,21,127,213,64,0,2,252,0,0,0,0,47,192,0,0,2,252,0,0,0,0,47,192,3,255,255,255,255,253,0,0,47,192,3,255,255,255,255,253,0,0,47,192,2,170,171,254,170,169,0,0,47,192,0,0,2,252,0,0,0,0,47,193,64,0,2,252,0,0,0,0,47,239,191,255,255,255,255,255,208,0,127,255,255,255,255,255,255,255,208,27,255,255,255,255,255,255,255,255,208,191,255,248,0,15,208,0,63,128,0,127,255,192,0,11,240,0,127,0,0,62,111,192,0,7,240,0,253,0,0,0,47,192,47,255,255,255,255,255,128,0,47,192,47,255,255,255,255,255,192,0,47,192,47,255,255,255,255,255,192,0,47,192,0,0,2,252,0,0,0,0,47,192,0,0,2,252,0,0,0,0,47,192,0,0,2,252,0,0,0,0,47,192,11,255,255,255,255,255,0,0,47,192,11,255,255,255,255,255,0,0,47,192,11,255,255,255,255,255,0,0,47,192,0,0,2,252,0,0,0,21,127,192,0,0,2,252,0,0,0,31,255,128,0,0,2,252,0,0,0,15,255,0,0,0,2,252,0,0,0,15,248,0,0,0,2,252,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x64ca 擊 + 202,100,36,38,86,40,2,252,0,1,244,0,0,0,0,0,0,0,1,248,0,0,42,170,168,0,127,255,255,255,240,127,255,252,0,127,255,255,255,240,127,255,252,0,0,1,248,0,0,126,0,252,8,10,170,254,170,64,253,0,252,31,15,255,255,255,129,252,0,254,191,15,65,248,15,139,248,0,191,254,15,255,255,255,143,240,0,47,248,15,150,249,95,131,192,0,0,0,15,65,248,15,135,255,255,255,224,15,255,255,255,135,255,255,255,208,5,86,253,85,65,190,85,127,192,0,1,248,0,0,127,0,127,0,255,255,255,255,240,47,210,253,0,255,255,255,255,240,15,255,244,0,15,129,248,26,64,3,255,208,0,15,129,248,31,69,191,255,249,0,15,255,255,255,79,255,235,255,249,15,255,255,255,71,249,0,191,255,0,0,0,0,22,90,191,134,252,0,191,255,255,255,255,255,208,4,0,127,255,255,255,233,80,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,1,85,85,85,255,85,85,85,64,0,0,0,0,255,0,0,0,0,106,170,170,170,255,170,170,170,169,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,11,255,254,0,0,0,0,0,0,3,255,253,0,0,0,0,0,0,2,254,144,0,0,0,0, + // 0x64cb 擋 + 203,100,37,38,124,40,1,252,0,31,128,0,0,2,164,0,0,0,0,47,192,1,180,3,248,2,244,0,0,47,192,2,252,3,248,3,248,0,0,47,192,0,254,3,248,7,240,0,0,47,192,0,191,3,248,15,224,0,0,47,192,0,63,67,248,31,192,0,0,47,192,0,62,3,248,31,64,0,0,47,192,31,255,255,255,255,255,128,63,255,255,223,255,255,255,255,255,128,63,255,255,223,255,255,255,255,255,128,63,255,255,223,192,0,0,0,47,128,21,127,213,95,192,0,0,0,47,128,0,47,192,31,255,255,255,255,255,128,0,47,192,10,127,255,255,255,234,64,0,47,192,0,63,234,170,175,192,0,0,47,192,0,63,64,0,15,192,0,0,47,192,0,63,64,0,15,192,0,0,47,193,64,63,64,0,15,192,0,0,47,239,128,63,255,255,255,192,0,1,191,255,192,63,255,255,255,192,0,111,255,255,128,42,170,170,170,128,0,191,255,228,0,0,0,0,0,0,0,127,255,192,2,170,170,170,170,169,0,61,47,192,3,255,255,255,255,253,0,0,47,192,3,255,255,255,255,253,0,0,47,192,3,240,3,244,0,253,0,0,47,192,3,240,3,244,0,253,0,0,47,192,3,240,3,244,0,253,0,0,47,192,3,255,255,255,255,253,0,0,47,192,3,255,255,255,255,253,0,0,47,192,3,250,171,254,170,253,0,0,47,192,3,240,3,244,0,253,0,0,47,192,3,240,3,244,0,253,0,0,47,192,3,255,255,255,255,253,0,21,127,192,3,255,255,255,255,253,0,31,255,128,3,255,255,255,255,253,0,15,255,0,3,240,0,0,0,253,0,15,248,0,2,160,0,0,0,169,0, + // 0x64e0 擠 + 224,100,38,39,134,40,1,251,0,26,64,0,0,2,164,0,0,0,0,47,128,0,0,3,248,0,0,0,0,47,128,0,0,3,248,0,0,0,0,47,128,0,0,3,248,0,0,0,0,47,128,255,255,255,255,255,255,192,0,47,128,255,255,255,255,255,255,192,0,47,128,255,255,255,255,255,255,192,0,47,128,0,0,180,3,224,0,0,63,255,255,0,0,188,7,208,8,0,63,255,255,21,85,126,15,193,191,64,63,255,255,127,255,255,31,255,254,0,21,127,213,63,255,251,249,255,248,0,0,47,128,7,211,226,240,248,124,0,0,47,128,11,195,226,240,248,61,0,0,47,128,15,195,226,240,248,62,0,0,47,128,15,67,210,240,248,47,0,0,47,128,63,7,210,240,254,223,192,0,47,155,190,127,194,243,255,219,224,0,47,255,252,63,130,242,254,67,192,1,191,255,96,20,2,240,0,0,0,127,255,253,2,252,0,0,3,244,0,191,255,192,2,252,0,0,3,244,0,127,255,128,2,255,255,255,255,244,0,56,47,128,2,255,255,255,255,244,0,0,47,128,2,255,255,255,255,244,0,0,47,128,2,252,0,0,3,244,0,0,47,128,2,252,0,0,3,244,0,0,47,128,2,252,0,0,3,244,0,0,47,128,3,255,255,255,255,244,0,0,47,128,3,255,255,255,255,244,0,0,47,128,3,255,255,255,255,244,0,0,47,128,11,240,0,0,3,244,0,0,47,128,15,240,0,0,3,244,0,0,47,128,47,208,0,0,3,244,0,21,127,128,63,192,0,0,3,244,0,47,255,64,255,64,0,0,3,244,0,31,255,0,254,0,0,0,3,244,0,15,248,0,40,0,0,0,3,244,0,0,0,0,0,0,0,0,0,0,0, + // 0x6536 收 + 54,101,38,38,124,40,1,252,0,0,2,164,0,41,0,0,0,0,0,0,3,248,0,63,192,0,0,0,0,0,3,248,0,63,192,0,0,0,0,0,3,248,0,127,128,0,0,0,0,0,3,248,0,191,0,0,0,0,3,248,3,248,0,255,0,0,0,0,3,248,3,248,1,254,0,0,0,0,3,248,3,248,2,254,170,170,170,144,3,248,3,248,3,255,255,255,255,208,3,248,3,248,7,255,255,255,255,208,3,248,3,248,15,255,255,255,255,208,3,248,3,248,31,244,0,3,252,0,3,248,3,248,63,252,0,3,252,0,3,248,3,248,127,252,0,3,248,0,3,248,3,248,255,253,0,7,244,0,3,248,3,251,255,254,0,15,240,0,3,248,3,255,253,255,0,15,240,0,3,248,3,255,248,127,0,31,208,0,3,248,3,249,240,63,128,63,192,0,3,248,3,248,144,63,192,63,192,0,3,248,3,248,0,31,208,191,64,0,3,248,3,248,0,15,240,255,0,0,3,248,3,248,0,11,246,254,0,0,3,248,27,248,0,3,255,252,0,0,3,254,255,248,0,3,255,248,0,0,7,255,255,248,0,1,255,240,0,0,127,255,255,248,0,0,255,208,0,0,63,255,211,248,0,0,255,208,0,0,63,228,3,248,0,3,255,240,0,0,25,0,3,248,0,15,255,252,0,0,0,0,3,248,0,63,251,255,0,0,0,0,3,248,1,255,209,255,192,0,0,0,3,248,11,255,64,127,244,0,0,0,3,248,191,253,0,47,254,0,0,0,3,251,255,244,0,11,255,224,0,0,3,250,255,128,0,1,255,192,0,0,3,248,253,0,0,0,63,64,0,0,3,244,96,0,0,0,6,0, + // 0x653e 放 + 62,101,38,38,124,40,1,252,0,0,253,0,0,3,144,0,0,0,0,1,253,0,0,7,248,0,0,0,0,1,253,0,0,11,244,0,0,0,0,1,253,0,0,15,240,0,0,0,0,1,253,0,0,15,240,0,0,0,0,1,253,0,0,15,224,0,0,0,21,86,254,85,80,31,208,0,0,0,63,255,255,255,244,47,229,85,85,64,63,255,255,255,244,63,255,255,255,208,63,255,255,255,244,127,255,255,255,208,0,63,128,0,0,191,255,255,255,208,0,63,128,0,0,255,0,7,244,0,0,63,128,0,1,255,64,7,240,0,0,63,128,0,3,255,64,11,240,0,0,63,128,0,7,255,128,15,240,0,0,63,255,255,207,255,192,15,224,0,0,63,255,255,223,255,192,31,208,0,0,63,255,255,255,239,208,47,192,0,0,63,213,127,255,207,240,63,192,0,0,63,128,63,203,71,240,63,128,0,0,63,128,63,129,3,248,127,64,0,0,63,128,63,128,3,252,255,0,0,0,63,128,63,128,2,254,254,0,0,0,63,64,63,128,0,255,252,0,0,0,127,64,63,128,0,191,248,0,0,0,127,0,63,128,0,63,240,0,0,0,191,0,63,128,0,63,240,0,0,0,255,0,63,128,0,127,240,0,0,0,254,0,63,64,0,255,252,0,0,2,253,0,63,64,3,255,254,0,0,3,252,0,63,64,15,254,255,128,0,11,248,0,127,0,127,240,191,224,0,15,240,0,191,2,255,208,47,252,0,63,224,0,255,47,255,0,15,255,128,191,192,255,255,191,252,0,3,255,208,127,64,255,253,63,224,0,0,191,64,13,0,191,244,47,0,0,0,30,0,0,0,21,0,4,0,0,0,0,0, + // 0x6557 敗 + 87,101,38,38,124,40,1,252,0,0,0,0,0,6,64,0,0,0,0,0,0,0,0,15,244,0,0,0,7,255,255,255,192,15,240,0,0,0,7,255,255,255,192,15,240,0,0,0,7,255,255,255,192,31,224,0,0,0,7,240,0,47,192,47,208,0,0,0,7,240,0,47,192,63,192,0,0,0,7,240,0,47,192,127,234,170,170,128,7,240,0,47,192,191,255,255,255,208,7,255,255,255,192,255,255,255,255,208,7,255,255,255,193,255,255,255,255,208,7,255,255,255,195,254,0,11,244,0,7,240,0,47,199,255,0,15,240,0,7,240,0,47,207,255,0,15,240,0,7,240,0,47,223,255,64,15,224,0,7,240,0,47,255,255,128,31,224,0,7,240,0,47,255,255,192,47,208,0,7,255,255,255,255,111,192,63,192,0,7,255,255,255,254,15,208,63,128,0,7,255,255,255,200,15,240,127,64,0,7,240,0,47,192,11,240,191,0,0,7,240,0,47,192,7,248,255,0,0,7,240,0,47,192,3,254,253,0,0,7,240,0,47,192,1,255,252,0,0,7,255,255,255,192,0,255,248,0,0,7,255,255,255,192,0,191,240,0,0,7,255,255,255,192,0,63,224,0,0,0,0,0,16,0,0,191,240,0,0,0,63,65,244,0,2,255,252,0,0,0,191,67,252,0,7,255,254,0,0,0,255,1,255,0,31,254,255,128,0,2,254,0,191,128,191,240,255,224,0,3,252,0,63,195,255,192,63,252,0,15,244,0,31,255,255,0,15,255,64,47,240,0,15,255,253,0,7,255,224,127,192,0,5,63,240,0,0,255,192,31,64,0,0,31,128,0,0,47,0,2,0,0,0,8,0,0,0,5,0, + // 0x6574 整 + 116,101,36,37,77,40,2,253,0,0,252,0,0,2,64,0,0,0,0,252,0,0,3,244,0,0,106,170,254,170,164,7,240,0,0,191,255,255,255,248,15,240,0,0,191,255,255,255,248,31,224,0,0,0,0,252,0,0,63,255,255,255,0,0,252,0,0,191,255,255,255,47,255,255,255,240,255,255,255,255,47,255,255,255,243,255,0,31,192,47,149,253,87,255,255,192,63,128,47,64,252,3,255,255,208,127,0,47,64,252,3,243,195,244,254,0,47,255,255,255,240,2,255,252,0,47,255,255,255,240,0,255,244,0,5,95,255,149,80,0,127,224,0,0,47,255,240,0,0,255,244,0,0,255,255,254,0,7,255,254,0,7,253,253,191,224,47,254,255,208,47,240,252,31,231,255,224,127,253,255,192,252,3,223,255,64,31,255,127,0,252,0,11,248,0,2,253,40,0,252,0,3,128,0,0,44,0,0,0,0,0,0,0,0,0,7,255,255,255,255,255,255,255,208,7,255,255,255,255,255,255,255,208,7,255,255,255,255,255,255,255,208,0,0,0,0,254,0,0,0,0,0,6,144,0,254,0,0,0,0,0,11,240,0,255,255,255,248,0,0,11,240,0,255,255,255,248,0,0,11,240,0,255,255,255,248,0,0,11,240,0,254,0,0,0,0,0,11,240,0,254,0,0,0,0,0,15,240,0,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x6578 數 + 120,101,38,38,124,40,1,252,0,0,31,128,0,0,57,0,0,0,0,0,31,192,0,0,63,64,0,0,1,85,111,213,85,0,127,64,0,0,2,255,255,255,254,0,127,0,0,0,2,255,255,255,254,0,191,0,0,0,2,244,31,192,190,0,255,0,0,0,2,244,31,192,190,0,254,0,0,0,127,255,255,255,255,245,254,85,85,64,127,255,255,255,255,245,255,255,255,208,107,249,111,213,255,162,255,255,255,208,2,244,31,192,190,3,255,255,255,208,2,249,111,213,254,7,244,1,252,0,2,255,255,255,254,11,248,2,252,0,2,255,255,255,254,15,252,2,252,0,0,0,31,192,0,31,252,3,248,0,5,85,111,213,85,63,252,3,244,0,11,255,255,255,255,191,253,3,244,0,11,255,255,255,255,255,254,7,240,0,11,208,31,192,63,255,191,11,240,0,11,208,31,192,63,188,127,15,224,0,11,255,255,255,255,88,63,95,208,0,11,255,255,255,255,64,63,175,192,0,5,85,254,85,85,0,47,255,192,0,0,1,252,0,0,0,31,255,64,0,0,3,252,0,0,0,15,255,0,0,127,255,255,255,255,244,11,254,0,0,127,255,255,255,255,244,7,253,0,0,63,255,255,255,240,0,3,252,0,0,0,63,128,7,240,0,11,254,0,0,0,191,64,15,208,0,15,255,0,0,0,255,248,47,192,0,63,255,192,0,2,255,255,255,64,0,255,191,224,0,0,16,127,255,0,3,254,15,248,0,0,0,127,255,208,31,252,7,254,0,1,111,255,255,252,191,240,2,255,192,15,255,253,7,253,255,128,0,191,192,11,255,144,0,180,62,0,0,47,0,3,144,0,0,0,36,0,0,5,0, + // 0x6599 料 + 153,101,38,38,124,40,1,252,0,2,164,0,0,0,0,42,64,0,0,3,248,0,0,0,0,63,128,0,0,3,248,0,0,0,0,63,128,0,47,3,248,31,192,52,0,63,128,0,47,3,248,31,128,254,0,63,128,0,31,131,248,47,65,255,192,63,128,0,15,195,248,63,0,127,240,63,128,0,15,195,248,63,0,15,252,63,128,0,11,211,248,125,0,2,252,63,128,0,7,227,248,188,0,0,184,63,128,0,7,227,248,252,0,0,32,63,128,0,3,243,249,244,0,0,0,63,128,0,3,67,248,96,0,0,0,63,128,0,0,3,248,0,2,0,0,63,128,0,63,255,255,255,203,208,0,63,128,0,63,255,255,255,223,252,0,63,128,0,63,255,255,255,203,255,64,63,128,0,21,111,253,85,64,255,224,63,128,0,0,31,252,0,0,47,208,63,128,0,0,47,255,0,0,7,192,63,128,0,0,63,255,128,0,1,0,63,128,0,0,191,255,208,0,0,0,63,128,0,0,255,255,244,0,0,0,63,134,128,1,251,250,252,0,0,0,63,255,192,3,243,248,255,0,1,111,255,255,208,7,243,248,127,70,255,255,255,255,208,15,211,248,62,63,255,255,255,208,0,47,195,248,28,63,255,250,127,128,0,127,131,248,0,63,229,0,63,128,0,191,3,248,0,16,0,0,63,128,0,62,3,248,0,0,0,0,63,128,0,44,3,248,0,0,0,0,63,128,0,4,3,248,0,0,0,0,63,128,0,0,3,248,0,0,0,0,63,128,0,0,3,248,0,0,0,0,63,128,0,0,3,248,0,0,0,0,63,128,0,0,3,248,0,0,0,0,63,128,0,0,2,244,0,0,0,0,47,128,0, + // 0x659c 斜 + 156,101,38,38,124,40,1,252,0,0,127,64,0,0,0,11,224,0,0,0,255,224,0,0,0,15,224,0,0,1,255,248,0,0,0,15,224,0,0,3,255,254,0,2,64,15,224,0,0,11,250,255,128,15,208,15,224,0,0,31,240,191,224,31,248,15,224,0,0,63,208,47,248,7,254,15,224,0,0,191,128,15,253,0,255,143,224,0,2,255,0,3,255,0,63,223,224,0,7,252,0,0,252,0,15,207,224,0,31,244,0,0,112,0,7,15,224,0,127,255,255,255,224,0,0,15,224,0,255,255,255,255,224,0,0,15,224,0,62,255,255,255,224,8,0,15,224,0,8,21,127,213,64,127,64,15,224,0,0,0,63,128,0,191,224,15,224,0,0,0,63,128,0,31,248,15,224,0,0,0,63,128,0,7,255,15,224,0,63,255,255,255,254,0,255,143,224,0,63,255,255,255,254,0,62,15,224,0,63,255,255,255,254,0,8,15,224,0,21,85,127,213,84,0,0,15,224,0,0,0,63,128,0,0,0,15,251,192,0,64,63,128,128,0,0,95,255,208,2,252,63,139,224,0,111,255,255,224,3,248,63,135,240,111,255,255,255,144,3,244,63,131,244,255,255,255,240,0,7,240,63,130,252,255,255,159,224,0,11,240,63,128,252,254,64,15,224,0,15,208,63,128,254,0,0,15,224,0,47,192,63,128,191,0,0,15,224,0,63,128,63,128,63,0,0,15,224,0,127,0,63,128,52,0,0,15,224,0,30,0,63,128,0,0,0,15,224,0,0,21,127,128,0,0,0,15,224,0,0,63,255,128,0,0,0,15,224,0,0,31,255,0,0,0,0,15,224,0,0,15,248,0,0,0,0,15,224,0, + // 0x65b0 新 + 176,101,38,38,124,40,1,252,0,0,106,0,0,0,0,0,16,0,0,0,127,0,0,0,0,1,252,0,0,0,127,0,0,0,0,127,255,64,0,0,127,0,0,36,111,255,254,64,31,255,255,255,252,63,255,255,144,0,31,255,255,255,252,63,255,228,0,0,31,255,255,255,252,63,208,0,0,0,0,104,0,30,64,63,64,0,0,0,0,252,0,47,192,63,64,0,0,0,0,253,0,63,64,63,64,0,0,0,0,190,0,63,0,63,64,0,0,0,0,127,0,191,0,63,64,0,0,0,0,63,0,253,0,63,64,0,0,0,0,62,0,108,0,63,64,0,0,0,63,255,255,255,254,63,255,255,255,208,63,255,255,255,254,63,255,255,255,208,63,255,255,255,254,63,255,255,255,208,0,0,127,0,0,63,149,111,229,64,0,0,127,0,0,63,64,31,192,0,0,0,127,0,0,63,64,31,192,0,0,0,191,0,0,127,64,31,192,0,63,255,255,255,252,127,0,31,192,0,63,255,255,255,252,127,0,31,192,0,63,255,255,255,252,191,0,31,192,0,0,2,255,0,0,191,0,31,192,0,0,3,255,208,0,255,0,31,192,0,0,15,255,244,0,254,0,31,192,0,0,47,255,254,0,253,0,31,192,0,0,191,255,191,193,252,0,31,192,0,1,254,127,47,243,252,0,31,192,0,7,252,127,11,211,248,0,31,192,0,47,240,127,2,139,240,0,31,192,0,191,208,127,0,31,240,0,31,192,0,63,64,127,0,63,208,0,31,192,0,13,0,127,0,191,192,0,31,192,0,0,0,127,0,255,0,0,31,192,0,0,0,127,0,61,0,0,31,192,0,0,0,127,0,24,0,0,26,128,0, + // 0x65b7 斷 + 183,101,36,38,86,40,3,252,0,4,0,4,0,0,0,1,0,84,15,0,31,0,0,0,31,192,252,31,0,46,0,0,1,255,240,252,61,0,60,0,0,127,255,224,253,252,242,244,240,191,255,254,0,254,245,243,242,240,191,255,144,0,252,191,208,247,192,191,228,0,0,252,63,192,127,128,191,0,0,0,252,15,64,47,0,191,0,0,0,252,46,176,61,176,191,0,0,0,252,60,116,124,120,191,0,0,0,255,255,255,255,252,191,0,0,0,254,255,191,255,189,191,0,0,0,252,0,20,0,8,191,85,85,84,255,170,170,170,168,191,255,255,253,255,255,255,255,252,191,255,255,253,255,255,255,255,252,191,255,255,253,252,15,0,31,0,191,0,190,0,252,31,0,62,0,191,0,190,0,252,61,0,124,0,190,0,190,0,253,252,162,244,144,190,0,190,0,254,245,243,241,240,190,0,190,0,252,254,225,247,208,190,0,190,0,252,63,192,191,192,254,0,190,0,252,47,64,63,0,253,0,190,0,252,15,96,46,96,253,0,190,0,252,44,180,60,180,252,0,190,0,252,125,184,185,189,252,0,190,0,255,255,255,255,255,252,0,190,0,254,250,111,233,111,248,0,190,0,252,0,0,0,3,244,0,190,0,255,255,255,255,255,240,0,190,0,255,255,255,255,255,240,0,190,0,255,255,255,255,255,208,0,190,0,252,0,0,0,63,192,0,190,0,252,0,0,0,63,128,0,190,0,252,0,0,0,11,0,0,190,0,0,0,0,0,1,0,0,105,0, + // 0x65bc 於 + 188,101,38,39,134,40,1,251,0,1,252,0,0,0,127,128,0,0,0,1,252,0,0,0,191,192,0,0,0,1,252,0,0,0,255,208,0,0,0,1,252,0,0,1,255,240,0,0,0,1,252,0,0,3,255,244,0,0,0,1,252,0,0,7,247,252,0,0,21,86,254,85,80,15,241,253,0,0,63,255,255,255,240,31,224,255,0,0,63,255,255,255,240,63,192,127,128,0,63,255,255,255,240,191,128,63,208,0,0,63,128,0,1,255,0,31,240,0,0,63,128,0,3,253,0,11,252,0,0,63,128,0,15,248,0,3,254,0,0,63,128,0,47,240,0,1,255,192,0,63,64,0,191,208,0,0,191,224,0,63,255,255,127,64,0,0,47,192,0,63,255,255,45,1,244,0,11,64,0,63,255,255,20,7,254,0,2,0,0,127,149,191,0,2,255,192,0,0,0,127,0,127,0,0,127,240,0,0,0,191,0,127,0,0,31,252,0,0,0,191,0,127,0,0,3,255,0,0,0,191,0,127,0,0,0,252,0,0,0,255,0,191,0,0,0,116,0,0,0,254,0,191,0,0,0,0,0,0,0,254,0,191,0,0,0,0,0,0,0,253,0,191,0,32,0,0,0,0,1,252,0,191,0,190,0,0,0,0,2,252,0,191,1,255,224,0,0,0,3,252,0,191,1,255,253,0,0,0,7,248,0,255,0,47,255,192,0,0,11,240,0,254,0,2,255,248,0,0,15,240,0,254,0,0,127,255,0,0,47,224,0,253,0,0,11,255,208,0,63,193,71,253,0,0,1,255,244,0,191,130,255,252,0,0,0,47,244,0,47,1,255,248,0,0,0,7,224,0,9,0,255,208,0,0,0,1,192,0,0,0,0,0,0,0,0,0,0,0, + // 0x6607 昇 + 7,102,36,36,68,40,2,252,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,254,0,0,0,0,0,255,0,0,254,0,0,0,0,0,255,0,0,254,0,0,0,0,0,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,254,0,0,0,0,0,255,0,0,254,0,0,0,0,0,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,0,0,0,96,0,0,0,0,0,0,0,27,252,0,255,0,0,0,1,111,255,255,0,255,0,0,6,255,255,255,249,0,255,0,0,11,255,255,254,64,0,255,0,0,3,255,239,240,0,0,255,0,0,1,64,15,240,0,0,255,0,0,0,0,15,240,0,0,255,0,0,85,85,95,245,85,85,255,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,31,208,0,0,255,0,0,0,0,63,192,0,0,255,0,0,0,0,191,192,0,0,255,0,0,0,1,255,64,0,0,255,0,0,0,11,255,0,0,0,255,0,0,0,127,252,0,0,0,255,0,0,11,255,240,0,0,0,255,0,0,15,255,128,0,0,0,255,0,0,3,248,0,0,0,0,255,0,0,2,128,0,0,0,0,170,0,0, + // 0x660e 明 + 14,102,34,36,68,40,3,252,85,85,85,64,63,255,255,255,240,255,255,255,224,63,255,255,255,240,255,255,255,224,63,255,255,255,240,255,255,255,224,63,149,85,91,240,254,0,15,224,63,64,0,11,240,254,0,15,224,63,64,0,11,240,254,0,15,224,63,64,0,11,240,254,0,15,224,63,64,0,11,240,254,0,15,224,63,64,0,11,240,254,0,15,224,63,149,85,91,240,254,0,15,224,63,255,255,255,240,255,255,255,224,63,255,255,255,240,255,255,255,224,63,255,255,255,240,255,255,255,224,63,64,0,11,240,255,85,95,224,63,64,0,11,240,254,0,15,224,63,64,0,11,240,254,0,15,224,127,64,0,11,240,254,0,15,224,127,64,0,11,240,254,0,15,224,127,64,0,11,240,254,0,15,224,127,149,85,91,240,254,0,15,224,191,255,255,255,240,255,85,95,224,191,255,255,255,240,255,255,255,224,255,255,255,255,240,255,255,255,224,254,0,0,11,240,255,255,255,225,253,0,0,11,240,254,0,0,3,252,0,0,11,240,254,0,0,3,252,0,0,11,240,254,0,0,11,244,0,0,11,240,169,0,0,15,240,0,0,11,240,0,0,0,63,224,0,0,11,240,0,0,0,191,192,0,0,11,240,0,0,1,255,64,0,0,11,240,0,0,11,254,0,0,255,255,240,0,0,15,252,0,0,127,255,224,0,0,3,224,0,0,63,255,128,0,0,0,128,0,0,26,148,0, + // 0x662f 是 + 47,102,36,36,68,40,2,252,0,191,255,255,255,255,255,253,0,0,191,255,255,255,255,255,253,0,0,191,255,255,255,255,255,253,0,0,191,0,0,0,0,1,253,0,0,191,0,0,0,0,1,253,0,0,191,170,170,170,170,170,253,0,0,191,255,255,255,255,255,253,0,0,191,255,255,255,255,255,253,0,0,191,0,0,0,0,1,253,0,0,191,0,0,0,0,1,253,0,0,191,0,0,0,0,1,253,0,0,191,255,255,255,255,255,253,0,0,191,255,255,255,255,255,253,0,0,127,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,21,85,85,85,191,85,85,85,84,0,2,80,0,127,0,0,0,0,0,7,248,0,127,0,0,0,0,0,11,244,0,127,0,0,0,0,0,15,240,0,127,255,255,255,192,0,15,240,0,127,255,255,255,192,0,47,240,0,127,255,255,255,192,0,63,252,0,127,64,0,0,0,0,127,254,0,127,0,0,0,0,0,255,255,64,127,0,0,0,0,3,254,127,240,127,0,0,0,0,11,252,31,254,191,0,0,0,0,47,244,7,255,255,170,85,85,85,191,224,0,255,255,255,255,255,255,255,128,0,31,255,255,255,255,254,62,0,0,0,27,255,255,255,253,8,0,0,0,0,0,0,0,0, + // 0x6642 時 + 66,102,36,38,86,40,3,252,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,224,0,0,85,85,85,0,0,15,224,0,0,255,255,255,0,0,15,224,0,0,255,255,255,0,0,15,240,0,0,255,255,255,15,255,255,255,255,240,253,0,191,15,255,255,255,255,240,253,0,191,15,255,255,255,255,240,253,0,191,0,0,15,224,0,0,253,0,191,0,0,15,224,0,0,253,0,191,0,0,15,224,0,0,253,0,191,0,0,15,224,0,0,253,0,191,21,85,95,245,85,84,253,0,191,191,255,255,255,255,253,254,85,255,191,255,255,255,255,253,255,255,255,191,255,255,255,255,253,255,255,255,0,0,0,3,252,0,255,255,255,0,0,0,3,252,0,253,0,191,0,0,0,3,252,0,253,0,191,0,0,0,3,252,0,253,0,191,127,255,255,255,255,252,253,0,191,127,255,255,255,255,252,253,0,191,127,255,255,255,255,252,253,0,191,21,85,85,87,253,84,253,0,191,0,16,0,3,252,0,253,0,191,0,248,0,3,252,0,254,85,255,3,253,0,3,252,0,255,255,255,1,255,0,3,252,0,255,255,255,0,191,192,3,252,0,255,255,255,0,63,224,3,252,0,253,0,0,0,15,240,3,252,0,253,0,0,0,7,244,3,252,0,253,0,0,0,3,128,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,31,255,248,0,0,0,0,0,0,15,255,244,0,0,0,0,0,0,15,255,224,0,0,0,0,0,0,1,84,0,0, + // 0x66ab 暫 + 171,102,36,38,86,40,2,252,0,0,252,0,0,0,0,1,64,0,0,252,0,0,0,0,111,208,21,85,253,85,80,229,175,255,244,127,255,255,255,244,255,255,255,144,127,255,255,255,244,255,255,144,0,0,0,252,0,0,254,64,0,0,26,171,255,170,144,252,0,0,0,31,255,255,255,224,252,0,0,0,31,64,252,7,224,252,0,0,0,31,64,252,7,224,255,255,255,255,31,255,255,255,224,255,255,255,255,31,234,254,175,225,255,255,255,255,31,64,252,7,225,252,0,253,0,31,255,255,255,226,252,0,253,0,31,255,255,255,227,248,0,253,0,0,0,252,0,3,244,0,253,0,0,1,253,0,11,240,0,253,0,255,255,255,255,255,224,0,253,0,255,255,255,255,255,192,0,253,0,0,0,252,0,191,64,0,253,0,0,0,252,0,62,0,0,253,0,0,0,168,0,8,0,0,84,0,0,31,255,255,255,255,255,244,0,0,31,255,255,255,255,255,244,0,0,31,255,255,255,255,255,244,0,0,31,208,0,0,0,7,244,0,0,31,208,0,0,0,7,244,0,0,31,208,0,0,0,7,244,0,0,31,255,255,255,255,255,244,0,0,31,255,255,255,255,255,244,0,0,31,234,170,170,170,175,244,0,0,31,208,0,0,0,7,244,0,0,31,208,0,0,0,7,244,0,0,31,255,255,255,255,255,244,0,0,31,255,255,255,255,255,244,0,0,31,255,255,255,255,255,244,0,0,31,208,0,0,0,7,244,0,0,10,128,0,0,0,2,164,0, + // 0x66f4 更 + 244,102,37,36,104,40,2,252,127,255,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,255,253,0,127,255,255,255,255,255,255,255,253,0,21,85,85,85,255,149,85,85,84,0,0,0,0,0,191,0,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,0,0,191,64,0,0,0,0,0,255,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,255,192,0,0,254,0,0,191,0,0,63,192,0,0,254,0,0,191,0,0,63,192,0,0,254,0,0,191,0,0,63,192,0,0,255,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,255,192,0,0,254,0,0,191,0,0,63,192,0,0,254,0,0,191,0,0,63,192,0,0,254,0,0,191,0,0,63,192,0,0,255,0,0,191,0,0,63,192,0,0,255,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,255,192,0,0,255,255,255,255,255,255,255,192,0,0,1,128,1,254,0,0,0,0,0,0,31,224,3,252,0,0,0,0,0,0,15,244,7,252,0,0,0,0,0,0,7,254,15,244,0,0,0,0,0,0,1,255,191,240,0,0,0,0,0,0,0,127,255,192,0,0,0,0,0,0,0,47,255,192,0,0,0,0,0,0,1,191,255,254,64,0,0,0,0,0,111,255,255,255,255,165,64,0,0,111,255,255,71,255,255,255,255,255,64,127,255,244,0,47,255,255,255,255,0,47,254,0,0,0,27,255,255,254,0,14,64,0,0,0,0,0,86,168,0, + // 0x6700 最 + 0,103,36,37,77,40,2,252,0,26,170,170,170,170,170,168,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,128,0,0,0,2,252,0,0,63,128,0,0,0,2,252,0,0,63,213,85,85,85,87,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,128,0,0,0,2,252,0,0,63,128,0,0,0,2,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,21,85,85,85,85,85,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,255,253,191,255,255,255,255,255,255,255,253,191,255,255,255,255,255,255,255,253,1,252,0,47,192,0,0,0,0,1,252,0,47,192,0,0,0,0,1,255,255,255,207,255,255,255,224,1,255,255,255,207,255,255,255,240,1,254,170,191,203,255,255,255,224,1,252,0,47,192,188,0,47,208,1,252,0,47,192,254,0,63,192,1,254,170,191,192,127,0,255,64,1,255,255,255,192,63,194,255,0,1,255,255,255,192,31,231,252,0,1,252,0,47,192,11,255,244,0,1,252,0,47,192,3,255,224,0,1,252,21,191,192,2,255,192,0,191,255,255,255,192,31,255,244,0,255,255,255,255,193,255,255,254,0,191,255,165,111,239,255,210,255,248,84,0,0,47,239,254,0,127,255,0,0,0,47,207,224,0,11,252,0,0,0,47,198,0,0,0,104, + // 0x6709 有 + 9,103,36,38,86,40,2,252,0,0,0,36,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,127,128,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,0,255,0,0,0,0,0,21,85,86,255,85,85,85,85,84,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,0,0,31,240,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,255,64,0,0,0,0,0,0,2,255,255,255,255,255,252,0,0,7,255,255,255,255,255,252,0,0,15,255,255,255,255,255,252,0,0,63,254,0,0,0,3,252,0,0,255,254,0,0,0,2,252,0,2,255,254,0,0,0,2,252,0,11,254,254,0,0,0,3,252,0,63,248,255,255,255,255,255,252,0,255,224,255,255,255,255,255,252,0,255,128,255,255,255,255,255,252,0,61,0,254,0,0,0,2,252,0,20,0,254,0,0,0,2,252,0,0,0,254,0,0,0,2,252,0,0,0,254,0,0,0,3,252,0,0,0,255,255,255,255,255,252,0,0,0,255,255,255,255,255,252,0,0,0,255,255,255,255,255,252,0,0,0,254,0,0,0,2,252,0,0,0,254,0,0,0,2,252,0,0,0,254,0,0,0,2,252,0,0,0,254,0,0,0,3,252,0,0,0,254,0,0,63,255,252,0,0,0,254,0,0,31,255,248,0,0,0,254,0,0,15,255,224,0,0,0,169,0,0,10,149,0,0, + // 0x677f 板 + 127,103,38,38,124,40,1,252,0,3,240,0,0,0,0,0,0,0,0,3,244,0,0,0,0,0,0,0,0,3,244,0,21,85,85,85,85,64,0,3,244,0,63,255,255,255,255,128,0,3,244,0,63,255,255,255,255,128,0,3,244,0,63,255,255,255,255,128,0,3,244,0,63,128,0,0,0,0,0,3,244,0,63,128,0,0,0,0,0,3,244,0,63,128,0,0,0,0,63,255,255,252,63,128,0,0,0,0,63,255,255,252,63,128,0,0,0,0,63,255,255,252,63,128,0,0,0,0,21,95,249,84,63,128,0,0,0,0,0,15,244,0,63,255,255,255,254,0,0,15,244,0,63,255,255,255,255,0,0,31,248,0,63,255,255,255,255,0,0,63,253,0,63,255,85,85,254,0,0,63,255,0,63,255,0,0,253,0,0,191,255,192,63,191,64,2,252,0,0,255,255,224,63,127,128,3,252,0,1,255,247,244,63,95,192,3,248,0,3,247,246,252,127,79,208,11,240,0,7,243,244,253,127,11,240,15,240,0,11,211,244,124,191,7,244,47,208,0,31,195,244,48,191,3,252,63,192,0,63,131,244,0,254,1,254,191,128,0,191,3,244,0,254,0,255,255,0,0,126,3,244,1,253,0,127,253,0,0,60,3,244,2,252,0,47,248,0,0,24,3,244,3,252,0,47,248,0,0,0,3,244,7,244,0,191,254,0,0,0,3,244,11,240,2,255,255,128,0,0,3,244,15,240,11,254,191,224,0,0,3,244,47,208,127,248,47,254,0,0,3,244,127,195,255,208,11,255,208,0,3,244,191,67,255,64,2,255,192,0,3,244,31,0,248,0,0,63,0,0,3,240,4,0,80,0,0,5,0, + // 0x67f1 柱 + 241,103,38,38,124,40,1,252,0,2,248,0,0,2,0,0,0,0,0,2,252,0,0,15,208,0,0,0,0,2,252,0,0,63,248,0,0,0,0,2,252,0,0,15,255,0,0,0,0,2,252,0,0,2,255,192,0,0,0,2,252,0,0,0,127,240,0,0,0,2,252,0,0,0,31,248,0,0,0,2,252,0,0,0,7,240,0,0,0,2,252,0,42,170,171,234,170,64,63,255,255,255,63,255,255,255,255,192,63,255,255,255,63,255,255,255,255,192,63,255,255,255,63,255,255,255,255,192,26,171,254,170,0,0,63,192,0,0,0,7,252,0,0,0,63,192,0,0,0,15,252,0,0,0,63,192,0,0,0,15,252,0,0,0,63,192,0,0,0,31,254,0,0,0,63,192,0,0,0,63,255,128,0,0,63,192,0,0,0,63,255,208,0,0,63,192,0,0,0,191,255,244,0,0,63,192,0,0,0,254,254,252,15,255,255,255,255,64,2,250,252,255,15,255,255,255,255,64,3,242,252,127,79,255,255,255,255,64,11,226,252,46,5,85,191,213,85,0,15,210,252,12,0,0,63,192,0,0,63,194,252,0,0,0,63,192,0,0,127,66,252,0,0,0,63,192,0,0,127,2,252,0,0,0,63,192,0,0,61,2,252,0,0,0,63,192,0,0,24,2,252,0,0,0,63,192,0,0,0,2,252,0,0,0,63,192,0,0,0,2,252,0,0,0,63,192,0,0,0,2,252,0,0,0,63,192,0,0,0,2,252,3,255,255,255,255,255,224,0,2,252,3,255,255,255,255,255,224,0,2,252,3,255,255,255,255,255,224,0,2,252,2,170,170,170,170,170,144,0,2,248,0,0,0,0,0,0,0, + // 0x6821 校 + 33,104,38,38,124,40,1,252,0,7,240,0,0,0,255,0,0,0,0,7,240,0,0,0,255,0,0,0,0,7,240,0,0,0,255,0,0,0,0,7,240,0,0,0,255,0,0,0,0,7,240,0,0,0,255,0,0,0,0,7,240,0,0,0,255,0,0,0,0,7,240,3,255,255,255,255,255,192,0,7,240,3,255,255,255,255,255,192,0,7,240,3,255,255,255,255,255,192,63,255,255,250,255,255,255,255,255,128,63,255,255,248,0,0,0,0,0,0,63,255,255,248,1,244,0,47,0,0,21,95,249,84,3,252,0,127,192,0,0,15,240,0,11,248,0,47,224,0,0,31,240,0,15,240,0,15,248,0,0,47,244,0,63,208,0,3,253,0,0,63,252,0,191,128,0,0,255,0,0,63,255,2,255,0,0,0,127,128,0,191,255,139,253,176,0,62,127,208,0,255,255,195,247,248,0,191,79,128,1,255,251,240,210,252,0,255,9,0,2,251,243,244,0,254,0,254,0,0,3,247,241,252,0,191,2,253,0,0,11,215,240,244,0,127,131,252,0,0,15,199,240,96,0,47,219,244,0,0,47,135,240,0,0,15,255,240,0,0,127,71,240,0,0,11,255,192,0,0,127,7,240,0,0,3,255,128,0,0,61,7,240,0,0,2,255,128,0,0,24,7,240,0,0,11,255,224,0,0,0,7,240,0,0,47,255,248,0,0,0,7,240,0,0,255,223,255,0,0,0,7,240,0,11,255,66,255,208,0,0,7,240,0,127,253,0,191,253,0,0,7,240,11,255,224,0,47,255,208,0,7,240,15,255,64,0,7,255,192,0,7,240,7,248,0,0,0,191,0,0,7,240,3,64,0,0,0,9,0, + // 0x683c 格 + 60,104,38,38,124,40,1,252,0,2,160,0,0,9,0,0,0,0,0,3,244,0,0,31,208,0,0,0,0,3,244,0,0,63,192,0,0,0,0,3,244,0,0,127,128,0,0,0,0,3,244,0,0,255,64,0,64,0,0,3,244,0,1,255,255,255,244,0,0,3,244,0,3,255,255,255,244,0,0,3,244,0,15,255,255,255,240,0,0,3,244,0,31,240,0,31,224,0,63,255,255,252,127,244,0,63,192,0,63,255,255,253,255,252,0,127,128,0,63,255,255,255,255,255,0,255,0,0,21,95,249,111,252,127,131,253,0,0,0,15,244,11,240,63,219,248,0,0,0,15,252,1,192,15,255,240,0,0,0,31,254,0,0,3,255,192,0,0,0,47,255,128,0,3,255,192,0,0,0,63,255,208,0,31,255,244,0,0,0,127,251,240,0,191,255,254,0,0,0,255,247,252,3,255,195,255,208,0,0,255,244,248,127,254,0,191,254,64,2,247,244,183,255,244,0,31,255,224,3,243,244,63,255,208,0,3,255,192,11,211,244,31,255,255,255,255,255,64,15,195,244,15,175,255,255,255,245,0,63,131,244,0,47,255,255,255,244,0,127,3,244,0,47,192,0,3,244,0,127,3,244,0,47,192,0,3,244,0,60,3,244,0,47,192,0,3,244,0,24,3,244,0,47,192,0,3,244,0,0,3,244,0,47,192,0,3,244,0,0,3,244,0,47,192,0,3,244,0,0,3,244,0,47,192,0,3,244,0,0,3,244,0,47,255,255,255,244,0,0,3,244,0,47,255,255,255,244,0,0,3,244,0,47,255,255,255,244,0,0,3,244,0,47,192,0,7,244,0,0,3,240,0,31,128,0,2,160,0, + // 0x689d 條 + 157,104,38,38,124,40,1,252,0,0,64,0,0,24,0,0,0,0,0,1,248,0,0,47,192,0,0,0,0,2,252,0,0,63,128,0,0,0,0,3,252,0,0,191,0,0,0,0,0,7,248,0,0,254,0,0,0,0,0,11,241,80,3,255,255,255,255,192,0,15,243,244,7,255,255,255,255,192,0,47,211,244,31,255,255,255,255,192,0,63,195,244,63,240,0,31,224,0,0,127,131,244,255,248,0,63,192,0,0,255,67,251,255,253,0,191,64,0,2,255,67,251,252,191,65,255,0,0,3,255,67,244,240,63,231,252,0,0,11,255,67,244,0,15,255,240,0,0,31,255,67,244,0,3,255,208,0,0,63,255,67,244,0,11,255,244,0,0,255,255,67,244,1,255,255,255,128,0,255,127,67,244,111,255,210,255,254,64,125,63,67,247,255,253,0,47,255,208,56,63,67,244,255,208,106,2,255,128,16,63,67,244,120,0,191,0,27,0,0,63,67,244,0,0,191,0,0,0,0,63,67,244,0,0,191,0,0,0,0,63,67,244,255,255,255,255,255,192,0,63,67,244,255,255,255,255,255,192,0,63,67,244,255,255,255,255,255,192,0,63,67,244,0,3,255,224,0,0,0,63,67,244,0,15,255,244,0,0,0,63,67,244,0,63,255,253,0,0,0,63,67,244,0,255,255,255,0,0,0,63,67,244,3,254,191,63,192,0,0,63,64,0,31,248,191,15,244,0,0,63,64,0,191,224,191,7,254,0,0,63,64,11,255,128,191,1,255,208,0,63,64,15,253,0,191,0,127,208,0,63,64,3,240,0,191,0,15,64,0,63,64,1,64,0,191,0,1,0,0,63,64,0,0,0,127,0,0,0, + // 0x68c4 棄 + 196,104,36,38,86,40,2,252,0,0,0,0,191,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,0,0,15,244,0,3,252,0,0,0,0,47,224,0,7,255,128,0,0,0,127,192,0,0,127,248,0,15,255,255,255,255,255,255,255,0,15,255,255,255,255,255,255,255,224,15,255,255,255,255,250,170,175,240,0,0,0,0,84,0,0,2,192,0,11,224,0,254,0,15,224,0,0,11,224,0,254,0,15,224,0,127,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,11,224,0,254,0,15,224,0,0,11,224,0,254,0,15,224,0,0,11,224,0,254,0,15,224,0,0,11,255,255,255,255,255,224,0,0,11,255,255,255,255,255,224,0,0,11,255,255,255,255,255,224,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,1,255,255,255,64,0,0,0,0,11,253,255,127,224,0,0,0,0,191,240,255,15,254,0,0,0,27,255,128,255,2,255,244,0,6,255,248,0,255,0,47,255,144,191,255,208,0,255,0,7,255,255,191,253,0,0,255,0,0,47,254,63,128,0,0,255,0,0,1,248,4,0,0,0,254,0,0,0,0, + // 0x69fd 槽 + 253,105,38,38,124,40,1,252,0,15,224,0,0,127,3,240,0,0,0,15,224,0,0,127,3,240,0,0,0,15,224,0,0,127,3,240,0,0,0,15,224,31,255,255,255,255,255,208,0,15,224,31,255,255,255,255,255,208,0,15,224,31,255,255,255,255,255,208,0,15,224,0,0,127,3,240,0,0,0,15,224,0,0,127,3,240,0,0,0,15,224,2,170,191,171,250,170,0,63,255,255,227,255,255,255,255,255,0,63,255,255,227,255,255,255,255,255,0,63,255,255,227,240,63,3,224,63,0,21,111,245,83,240,63,3,224,63,0,0,31,224,3,240,63,3,224,63,0,0,47,224,3,255,255,255,255,255,0,0,63,240,3,255,255,255,255,255,0,0,63,244,3,245,127,87,245,127,0,0,191,252,3,240,63,3,224,63,0,0,255,255,3,240,63,3,224,63,0,0,255,255,67,255,255,255,255,255,0,2,255,239,195,255,255,255,255,255,0,3,255,231,226,170,170,170,170,170,0,7,223,227,240,0,0,0,0,0,0,15,207,225,192,127,255,255,255,248,0,31,207,224,64,191,255,255,255,248,0,63,79,224,0,191,255,255,255,248,0,127,15,224,0,191,0,0,3,248,0,126,15,224,0,191,0,0,3,248,0,60,15,224,0,191,170,170,171,248,0,20,15,224,0,191,255,255,255,248,0,0,15,224,0,191,255,255,255,248,0,0,15,224,0,191,0,0,3,248,0,0,15,224,0,191,0,0,3,248,0,0,15,224,0,191,0,0,3,248,0,0,15,224,0,191,255,255,255,248,0,0,15,224,0,191,255,255,255,248,0,0,15,224,0,191,255,255,255,248,0,0,15,208,0,191,0,0,3,248,0, + // 0x6a59 橙 + 89,106,38,38,124,40,1,252,0,6,160,0,0,0,0,0,0,0,0,11,240,0,0,0,11,192,0,0,0,11,240,3,255,254,15,192,208,0,0,11,240,3,255,255,75,227,240,0,0,11,240,3,255,255,7,255,244,0,0,11,240,0,0,190,3,255,128,0,0,11,240,1,0,253,2,253,2,0,0,11,240,7,226,252,1,252,15,128,0,11,240,15,255,244,0,255,127,192,63,255,255,242,255,240,0,127,254,0,63,255,255,240,127,224,0,63,244,0,63,255,255,240,63,255,255,255,240,0,21,95,245,80,255,255,255,255,252,0,0,15,240,3,254,191,255,247,255,0,0,31,240,15,248,0,0,0,255,208,0,47,240,127,240,0,0,0,63,224,0,63,252,63,192,0,0,0,15,128,0,127,254,30,127,255,255,255,242,0,0,191,255,68,127,255,255,255,240,0,0,255,255,192,127,234,170,175,240,0,1,255,251,240,127,0,0,7,240,0,3,251,243,248,127,0,0,7,240,0,3,251,241,240,127,0,0,7,240,0,11,219,240,208,127,0,0,7,240,0,15,203,240,0,127,255,255,255,240,0,47,139,240,0,127,255,255,255,240,0,127,75,240,0,63,255,255,255,240,0,191,11,240,0,1,144,0,61,0,0,61,11,240,0,15,224,0,127,128,0,28,11,240,0,7,240,0,191,0,0,0,11,240,0,3,244,0,254,0,0,0,11,240,0,3,248,1,252,0,0,0,11,240,0,2,252,2,248,0,0,0,11,240,0,1,228,1,244,0,0,0,11,240,47,255,255,255,255,255,208,0,11,240,47,255,255,255,255,255,208,0,11,240,47,255,255,255,255,255,208,0,11,240,0,0,0,0,0,0,0, + // 0x6a5f 機 + 95,106,38,38,124,40,1,252,0,15,192,0,0,2,160,0,0,0,0,15,192,0,189,3,240,15,128,0,0,15,192,0,253,3,240,31,192,0,0,15,192,1,248,3,240,47,64,0,0,15,192,2,240,3,240,62,0,0,0,15,192,3,225,231,240,188,45,0,0,15,192,63,195,251,247,248,63,0,0,15,192,127,135,243,255,240,189,0,0,15,192,47,207,211,247,248,252,0,63,255,255,203,255,131,240,255,240,0,63,255,255,194,255,3,240,63,224,0,63,255,255,192,253,3,244,15,192,0,21,111,229,64,249,163,244,47,95,0,0,47,192,3,242,243,244,126,15,64,0,63,208,11,208,246,244,253,95,192,0,63,240,127,255,250,255,255,255,192,0,127,248,63,255,254,255,255,255,208,0,255,252,63,250,190,255,174,67,224,0,255,255,0,0,33,252,31,129,0,1,255,223,64,0,0,252,31,240,0,2,255,207,192,0,0,252,3,244,0,3,239,199,255,255,255,255,255,255,192,11,223,195,191,255,255,255,255,255,192,15,207,193,63,255,255,255,255,255,192,31,143,192,1,252,0,127,1,64,0,63,15,192,2,252,0,63,3,244,0,127,15,192,2,253,0,63,7,244,0,125,15,192,3,255,128,63,143,224,0,60,15,192,3,255,244,47,255,192,0,20,15,192,7,251,253,15,255,64,0,0,15,192,11,241,253,15,254,0,0,0,15,192,15,208,120,15,248,3,128,0,15,192,47,192,0,127,248,3,240,0,15,192,127,128,2,255,253,3,224,0,15,193,255,0,47,253,255,75,208,0,15,195,253,1,255,240,127,255,192,0,15,192,244,0,255,64,31,255,128,0,15,192,80,0,36,0,2,254,0, + // 0x6aa2 檢 + 162,106,38,38,124,40,1,252,0,7,224,0,0,2,168,0,0,0,0,11,240,0,0,7,255,0,0,0,0,11,240,0,0,15,255,128,0,0,0,11,240,0,0,47,255,224,0,0,0,11,240,0,0,191,207,244,0,0,0,11,240,0,1,255,7,253,0,0,0,11,240,0,7,253,1,255,128,0,0,11,240,0,31,244,0,191,224,0,0,11,240,0,191,208,0,31,252,0,63,255,255,243,255,128,0,7,255,128,63,255,255,255,255,255,255,255,255,224,63,255,255,255,247,255,255,254,63,192,21,95,245,95,195,255,255,254,11,64,0,15,240,6,0,0,0,0,1,0,0,31,240,0,0,0,0,0,0,0,0,47,244,2,170,170,70,170,170,0,0,63,252,3,255,255,139,255,255,0,0,127,254,3,255,255,139,255,255,0,0,191,255,67,240,31,139,192,63,0,0,255,255,195,240,31,139,192,63,0,1,255,251,227,240,31,139,192,63,0,2,251,243,247,240,31,139,192,63,0,3,235,241,243,250,175,139,234,191,0,11,219,240,211,255,255,139,255,255,0,15,203,240,67,255,255,139,255,255,0,47,139,240,0,0,0,0,16,0,0,127,11,240,0,11,224,0,63,64,0,126,11,240,0,15,224,0,63,0,0,60,11,240,0,15,208,0,127,0,0,24,11,240,0,47,192,0,254,0,0,0,11,240,0,63,224,1,255,64,0,0,11,240,0,191,248,3,255,208,0,0,11,240,1,255,255,11,255,248,0,0,11,240,7,252,191,95,243,255,0,0,11,240,31,240,46,191,192,255,192,0,11,240,127,208,5,255,64,63,224,0,11,240,47,64,0,188,0,15,128,0,7,224,8,0,0,32,0,2,0, + // 0x6b62 止 + 98,107,36,36,68,40,2,254,0,0,0,0,26,144,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,0,0,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,250,170,170,160,0,47,192,0,31,255,255,255,240,0,47,192,0,31,255,255,255,240,0,47,192,0,31,255,255,255,240,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,0,47,192,0,31,224,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,170,170,170,170,170,170, + // 0x6b63 正 + 99,107,36,33,41,40,2,254,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,26,170,170,170,191,234,170,170,164,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,255,255,255,192,0,47,192,0,63,255,255,255,192,0,47,192,0,63,255,255,255,192,0,47,192,0,63,234,170,170,128,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,0,47,192,0,63,192,0,0,0,170,191,234,170,191,234,170,170,170,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x6b65 步 + 101,107,36,38,86,40,2,252,0,0,0,0,191,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,15,224,0,255,0,0,0,0,0,15,224,0,255,170,170,169,0,0,15,224,0,255,255,255,254,0,0,15,224,0,255,255,255,254,0,0,15,224,0,255,255,255,254,0,0,15,224,0,255,0,0,0,0,0,15,224,0,255,0,0,0,0,0,15,224,0,255,0,0,0,0,0,15,224,0,255,0,0,0,0,255,255,255,255,255,255,255,255,254,255,255,255,255,255,255,255,255,254,255,255,255,255,255,255,255,255,254,106,170,170,170,255,170,170,170,169,0,0,0,0,255,0,0,0,0,0,1,248,0,255,0,0,0,0,0,3,254,0,255,0,0,228,0,0,15,252,0,255,0,2,254,0,0,63,240,0,255,0,3,253,0,0,255,208,0,255,0,7,252,0,3,255,64,0,255,0,15,244,0,31,254,0,0,255,0,47,240,0,191,248,0,0,255,0,127,208,0,63,208,3,255,255,0,255,128,0,11,64,1,255,254,3,255,0,0,0,0,0,255,248,15,253,0,0,0,0,0,85,0,127,244,0,0,0,0,0,0,2,255,208,0,0,0,0,0,0,47,255,64,0,0,0,0,0,6,255,252,0,0,0,0,0,1,191,255,224,0,0,0,0,5,191,255,254,0,0,0,0,2,255,255,255,224,0,0,0,0,0,255,255,249,0,0,0,0,0,0,191,254,64,0,0,0,0,0,0,57,0,0,0,0,0,0,0, + // 0x6b78 歸 + 120,107,38,38,124,40,1,252,0,7,160,0,0,0,0,0,0,0,0,11,240,0,2,170,170,170,160,0,0,15,224,0,3,255,255,255,240,0,6,175,250,169,3,255,255,255,240,0,7,255,255,253,0,0,0,7,240,0,7,255,255,253,0,0,0,7,240,0,7,224,0,189,106,170,170,171,250,128,7,224,0,189,191,255,255,255,255,208,7,224,0,189,191,255,255,255,255,208,7,255,255,253,0,0,0,7,240,0,7,255,255,253,0,0,0,7,240,0,7,250,170,169,3,255,255,255,240,0,7,224,0,0,3,255,255,255,240,0,7,250,170,169,2,170,170,170,160,0,7,255,255,254,0,0,0,0,0,0,7,255,255,254,47,255,255,255,255,64,7,224,0,190,63,255,255,255,255,128,7,224,0,190,63,255,255,255,255,128,7,250,170,254,63,0,63,64,47,128,7,255,255,254,63,0,63,64,47,128,7,255,255,254,63,0,63,64,47,128,0,1,248,0,5,0,63,64,5,0,0,1,248,0,11,255,255,255,252,0,0,1,248,0,11,255,255,255,253,0,11,193,248,0,11,255,255,255,253,0,11,193,255,255,11,224,63,64,253,0,11,193,255,255,11,224,63,64,253,0,11,193,255,255,11,224,63,64,253,0,11,193,248,0,11,224,63,64,253,0,11,193,248,0,11,224,63,64,253,0,11,193,248,0,11,224,63,64,253,0,11,193,249,111,75,224,63,64,253,0,11,214,255,255,139,224,63,111,252,0,127,255,255,255,139,224,63,95,252,0,127,255,255,233,11,224,63,74,144,0,63,254,144,0,0,0,63,64,0,0,37,0,0,0,0,0,63,64,0,0,0,0,0,0,0,0,63,64,0,0, + // 0x6bbc 殼 + 188,107,37,38,124,40,2,252,0,2,248,0,0,0,0,0,0,0,0,2,252,0,0,21,85,85,0,0,0,2,252,0,0,63,255,255,0,0,170,171,254,170,160,63,255,255,0,0,255,255,255,255,224,63,255,255,0,0,255,255,255,255,224,63,0,127,0,0,0,2,252,0,0,63,0,127,0,0,0,2,252,0,0,127,0,127,0,0,26,171,254,170,64,127,0,127,0,0,47,255,255,255,128,127,0,127,9,0,47,255,255,255,128,190,0,127,11,192,0,0,0,0,0,253,0,127,15,192,0,0,0,0,1,252,0,127,15,128,170,170,170,170,147,248,0,63,255,128,255,255,255,255,255,240,0,63,255,0,255,255,255,255,255,224,0,11,249,0,252,0,0,7,227,128,0,0,0,0,252,0,0,7,224,0,0,0,0,0,254,255,255,251,227,255,255,255,244,0,85,255,255,245,67,255,255,255,244,0,0,170,170,160,3,255,255,255,240,0,0,0,0,0,1,110,85,95,240,0,0,0,0,0,0,191,0,15,224,0,2,255,255,248,0,127,0,47,192,0,2,255,255,248,0,63,128,63,128,0,2,255,255,248,0,31,208,255,64,0,2,248,2,248,0,15,241,254,0,0,3,248,2,248,0,7,251,252,0,0,3,248,2,248,0,3,255,244,0,0,3,244,2,248,16,0,255,224,0,0,3,244,2,255,244,1,255,208,0,0,7,240,7,255,244,11,255,248,0,0,15,240,47,255,244,127,255,255,64,0,47,208,15,253,11,255,226,255,244,0,191,192,15,128,255,255,0,127,255,64,191,64,0,0,255,248,0,15,255,0,45,0,0,0,127,128,0,1,252,0,0,0,0,0,36,0,0,0,20,0, + // 0x6bd4 比 + 212,107,37,37,114,40,2,253,0,21,64,0,0,85,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,192,0,0,63,128,0,0,254,0,11,240,0,0,63,128,0,0,254,0,127,252,0,0,63,234,170,128,254,7,255,248,0,0,63,255,255,192,254,63,255,208,0,0,63,255,255,192,255,255,253,0,0,0,63,255,255,192,255,255,144,0,0,0,63,128,0,0,255,248,0,0,0,0,63,128,0,0,255,128,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,0,0,0,63,128,0,0,254,0,0,32,0,0,63,128,0,0,254,0,0,62,0,0,63,128,0,0,254,0,0,63,128,0,63,128,1,176,254,0,0,63,128,0,63,134,255,240,254,0,0,63,64,0,63,255,255,244,254,0,0,127,64,27,255,255,255,244,255,0,0,191,0,255,255,255,249,0,255,234,170,255,0,255,255,249,0,0,191,255,255,254,0,191,249,0,0,0,63,255,255,252,0,101,0,0,0,0,11,255,255,224,0, + // 0x6c92 沒 + 146,108,37,38,124,40,2,252,0,0,0,0,41,64,0,0,0,0,3,224,0,0,63,192,0,0,0,0,11,254,0,0,63,192,0,0,0,0,15,255,208,0,63,128,0,0,0,0,1,255,248,0,127,255,255,255,240,0,0,31,252,0,191,255,255,255,240,0,0,3,240,0,255,255,255,255,240,0,0,0,144,1,255,85,85,95,240,0,0,0,0,2,253,0,0,15,224,0,0,0,0,3,252,0,0,15,224,0,0,0,0,11,248,0,0,15,208,0,16,0,0,15,240,0,0,31,208,0,127,64,0,47,224,0,0,47,192,0,255,244,0,127,192,0,0,63,192,0,191,254,1,255,128,3,255,255,128,0,11,255,199,255,0,1,255,255,0,0,0,191,2,252,0,0,255,253,0,0,0,30,0,116,0,0,85,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,208,0,0,0,0,127,255,255,255,255,240,0,0,0,0,127,255,255,255,255,208,0,0,1,192,21,189,85,85,191,192,0,0,3,240,2,254,0,0,255,128,0,0,7,248,0,255,0,1,255,0,0,0,15,240,0,127,192,3,253,0,0,0,31,224,0,47,240,15,248,0,0,0,63,192,0,15,252,63,240,0,0,0,191,128,0,3,255,255,192,0,0,0,255,0,0,0,255,255,0,0,0,2,254,0,0,0,191,253,0,0,0,3,252,0,0,7,255,255,128,0,0,15,248,0,0,191,255,255,249,0,0,31,240,0,111,255,248,127,255,228,0,63,224,15,255,255,208,11,255,255,64,15,192,7,255,248,0,0,191,254,0,3,64,3,254,64,0,0,7,252,0,0,0,1,128,0,0,0,0,36,0, + // 0x6d88 消 + 136,109,35,38,86,40,2,252,0,0,0,0,0,15,208,0,0,3,208,0,0,0,15,224,0,128,15,248,0,127,0,15,224,2,252,15,255,64,191,64,15,224,3,252,2,255,224,63,192,15,224,7,248,0,63,244,31,224,15,224,15,240,0,11,224,15,240,15,224,47,224,0,1,128,7,248,15,224,63,192,0,0,0,3,252,15,224,191,64,0,0,0,2,224,15,224,30,0,0,0,0,0,0,15,224,0,0,20,0,0,21,85,111,245,85,80,127,0,0,63,255,255,255,255,240,255,224,0,63,255,255,255,255,240,127,253,0,63,255,255,255,255,240,11,255,64,63,192,0,0,11,240,1,255,64,63,192,0,0,11,240,0,62,0,63,192,0,0,11,240,0,8,0,63,192,0,0,11,240,0,0,0,63,255,255,255,255,240,0,0,0,63,255,255,255,255,240,0,0,0,63,255,255,255,255,240,0,2,64,63,192,0,0,11,240,0,7,208,63,192,0,0,11,240,0,11,240,63,192,0,0,11,240,0,15,224,63,192,0,0,11,240,0,47,192,63,255,255,255,255,240,0,63,192,63,255,255,255,255,240,0,191,64,63,255,255,255,255,240,0,255,0,63,192,0,0,11,240,2,253,0,63,192,0,0,11,240,7,252,0,63,192,0,0,11,240,15,244,0,63,192,0,0,11,240,31,240,0,63,192,0,0,15,240,63,224,0,63,192,0,63,255,240,47,192,0,63,192,0,47,255,224,7,64,0,63,192,0,31,255,128,0,0,0,42,128,0,10,84,0, + // 0x6de1 淡 + 225,109,37,37,114,40,2,253,0,0,0,0,0,26,128,0,0,0,2,128,0,0,0,47,192,0,0,0,11,248,0,0,0,47,192,0,0,0,15,255,64,11,224,47,192,11,208,0,2,255,224,15,224,47,192,15,240,0,0,127,248,31,192,63,192,47,224,0,0,11,240,47,192,63,128,63,192,0,0,1,192,127,64,63,128,191,0,0,0,0,0,255,0,127,65,254,0,0,0,0,1,253,0,191,131,252,0,0,0,0,0,40,0,255,244,96,0,0,0,0,0,0,2,255,255,0,0,0,61,0,0,0,11,255,255,224,0,0,255,208,0,0,47,244,127,253,0,0,255,248,0,1,255,224,11,255,192,0,31,255,64,111,255,128,0,255,244,0,2,255,67,255,253,0,0,31,252,0,0,126,0,255,208,47,192,3,244,0,0,4,0,185,0,47,192,0,144,0,0,0,0,0,0,63,192,0,0,0,0,0,0,14,64,63,192,3,208,0,0,1,0,15,208,63,128,11,252,0,0,11,128,47,192,63,128,15,240,0,0,15,224,63,128,63,192,47,224,0,0,47,224,127,64,127,208,63,192,0,0,63,192,255,0,191,240,255,64,0,0,191,130,253,0,255,241,254,0,0,0,255,3,252,1,255,253,252,0,0,2,255,0,116,3,255,254,0,0,0,3,253,0,0,15,248,255,64,0,0,11,252,0,0,63,240,127,208,0,0,15,244,0,1,255,208,47,248,0,0,63,240,0,47,255,64,11,255,128,0,127,208,27,255,253,0,2,255,254,64,47,128,31,255,224,0,0,127,255,0,7,0,11,254,0,0,0,11,253,0,0,0,3,144,0,0,0,0,40,0, + // 0x6e05 清 + 5,110,37,38,124,40,2,252,0,0,0,0,0,47,192,0,0,0,3,208,0,0,0,47,192,0,0,0,11,253,0,170,170,191,234,170,168,0,15,255,128,255,255,255,255,255,252,0,2,255,240,255,255,255,255,255,252,0,0,47,244,0,0,47,192,0,0,0,0,3,224,0,0,47,192,0,0,0,0,0,64,42,170,191,234,170,160,0,0,0,0,63,255,255,255,255,240,0,0,0,0,63,255,255,255,255,240,0,0,0,0,0,0,47,192,0,0,0,36,0,0,0,0,47,192,0,0,0,127,64,6,170,170,191,234,170,170,64,255,244,7,255,255,255,255,255,255,64,127,255,7,255,255,255,255,255,255,64,11,255,128,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,45,0,11,255,255,255,255,208,0,0,0,0,15,255,255,255,255,208,0,0,0,0,15,255,255,255,255,208,0,0,0,0,15,224,0,0,15,208,0,0,0,0,15,224,0,0,15,208,0,0,2,192,15,229,85,85,111,208,0,0,3,240,15,255,255,255,255,208,0,0,11,244,15,255,255,255,255,208,0,0,15,240,15,224,0,0,15,208,0,0,47,208,15,224,0,0,15,208,0,0,63,192,15,224,0,0,15,208,0,0,191,64,15,255,255,255,255,208,0,0,255,0,15,255,255,255,255,208,0,3,253,0,15,250,170,170,175,208,0,7,252,0,15,224,0,0,15,208,0,15,244,0,15,224,0,0,15,208,0,47,240,0,15,224,0,0,15,208,0,63,208,0,15,224,0,63,255,192,0,15,128,0,15,224,0,47,255,192,0,2,0,0,15,224,0,31,254,0,0,0,0,0,5,64,0,0,0,0,0, + // 0x6e2c 測 + 44,110,35,38,86,40,2,252,0,0,0,0,0,0,0,1,248,7,128,0,0,0,0,0,1,252,15,248,11,255,255,240,0,1,252,31,255,75,255,255,240,0,1,252,3,255,219,255,255,240,42,1,252,0,127,203,224,7,240,63,1,252,0,15,11,224,3,240,63,1,252,0,1,11,224,3,240,63,1,252,0,0,11,224,3,240,63,1,252,0,0,11,224,3,240,63,1,252,0,0,11,255,255,240,63,1,252,16,0,11,255,255,240,63,1,252,62,0,11,255,255,240,63,1,252,255,224,11,224,3,240,63,1,252,255,253,11,224,3,240,63,1,252,31,255,11,224,3,240,63,1,252,1,252,11,224,3,240,63,1,252,0,52,11,255,255,240,63,1,252,0,0,11,255,255,240,63,1,252,0,0,11,255,255,240,63,1,252,0,0,11,224,3,240,63,1,252,0,0,11,224,3,240,63,1,252,0,16,11,224,3,240,63,1,252,0,61,11,224,3,240,63,1,252,0,63,139,229,87,240,63,1,252,0,191,11,255,255,240,63,1,252,0,255,11,255,255,240,63,1,252,1,254,11,255,255,240,63,1,252,2,252,0,0,0,0,0,1,252,3,252,2,248,11,192,0,1,252,11,244,3,252,15,240,0,1,252,15,240,11,244,7,248,0,1,252,31,224,31,224,2,253,0,1,252,63,192,63,192,0,255,0,2,252,127,192,255,64,0,127,79,255,252,127,67,254,0,0,56,11,255,244,11,0,252,0,0,0,7,255,224,0,0,16,0,0,0,2,149,0, + // 0x6e90 源 + 144,110,37,39,134,40,2,251,1,0,0,0,0,0,0,0,0,0,7,224,0,0,0,0,0,0,0,0,15,254,2,255,255,255,255,255,255,0,11,255,194,255,255,255,255,255,255,0,0,255,242,255,255,255,255,255,255,0,0,47,226,253,85,86,255,85,85,0,0,7,194,252,0,1,254,0,0,0,0,1,2,252,0,2,253,0,0,0,0,0,2,252,0,2,252,0,0,0,0,0,2,252,0,3,252,0,0,0,0,0,2,252,63,255,255,255,248,0,0,0,2,252,63,255,255,255,248,0,61,0,2,252,63,255,255,255,248,0,255,208,2,252,63,64,0,3,248,0,255,252,2,252,63,64,0,3,248,0,31,255,2,252,63,170,170,171,248,0,1,253,2,252,63,255,255,255,248,0,0,56,2,252,63,255,255,255,248,0,0,0,2,252,63,64,0,3,248,0,0,0,2,252,63,64,0,3,248,0,0,0,3,252,63,64,0,3,248,0,0,0,3,248,63,234,170,171,248,0,0,8,3,248,63,255,255,255,248,0,0,31,3,244,63,255,255,255,248,0,0,63,199,244,0,0,253,0,0,0,0,127,135,240,0,0,253,0,0,0,0,191,11,240,14,64,253,11,192,0,0,255,15,240,47,192,253,31,224,0,2,253,15,224,63,128,253,15,240,0,3,252,31,208,191,0,253,7,252,0,7,248,47,192,254,0,253,2,253,0,15,240,63,131,252,0,253,0,255,0,31,224,191,75,248,0,253,0,191,64,63,208,255,15,240,0,253,0,127,128,127,194,254,7,208,1,253,0,61,0,127,67,252,0,65,255,252,0,0,0,11,1,248,0,0,255,252,0,0,0,0,0,32,0,0,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x6e96 準 + 150,110,36,38,86,40,2,252,0,64,0,1,144,0,144,0,0,1,248,0,3,252,0,255,0,0,3,255,128,7,248,2,253,0,0,2,255,244,15,240,3,252,0,0,0,47,240,47,224,11,244,0,0,0,7,224,127,255,255,255,255,244,0,0,64,255,255,255,255,255,244,20,0,3,255,255,255,255,255,240,127,128,15,255,64,15,224,0,0,255,253,127,255,64,15,224,0,0,31,253,255,255,255,255,255,255,192,1,248,63,127,255,255,255,255,192,0,16,8,63,234,175,250,170,128,0,0,0,63,64,15,224,0,0,0,1,208,63,64,15,224,0,0,0,3,240,63,234,175,250,170,128,0,15,244,63,255,255,255,255,192,0,63,224,63,255,255,255,255,192,0,191,192,63,64,15,224,0,0,2,255,0,63,64,15,224,0,0,11,252,0,63,64,15,224,0,0,47,244,0,63,255,255,255,255,253,63,208,0,63,255,255,255,255,253,15,128,0,63,255,255,255,255,252,6,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,85,255,85,85,85,85,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0, + // 0x6eab 溫 + 171,110,37,38,124,40,2,252,1,0,0,0,0,0,0,0,0,0,3,224,0,0,0,0,0,0,0,0,15,254,0,63,255,255,255,255,64,0,15,255,208,63,255,255,255,255,64,0,1,255,244,63,255,255,255,255,64,0,0,31,240,63,128,9,0,63,64,0,0,3,192,63,128,47,0,63,64,0,0,0,64,63,128,63,0,63,64,0,0,0,0,63,128,126,0,63,64,0,0,0,0,63,128,255,128,63,64,0,0,0,0,63,130,255,224,63,64,0,20,0,0,63,135,242,248,63,64,0,127,64,0,63,175,192,190,63,64,0,255,244,0,63,159,0,45,63,64,0,191,254,0,63,132,0,0,63,64,0,11,255,0,63,255,255,255,255,64,0,0,254,0,63,255,255,255,255,64,0,0,44,0,63,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,255,240,0,0,6,1,255,255,255,255,255,240,0,0,15,129,255,255,255,255,255,240,0,0,31,225,252,15,192,188,11,240,0,0,63,193,252,15,192,188,11,240,0,0,127,129,252,15,192,188,11,240,0,0,255,1,252,15,192,188,11,240,0,1,255,1,252,15,192,188,11,240,0,3,253,1,252,15,192,188,11,240,0,7,252,1,252,15,192,188,11,240,0,15,244,1,252,15,192,188,11,240,0,31,240,1,252,15,192,188,11,240,0,63,208,191,255,255,255,255,255,255,64,127,192,191,255,255,255,255,255,255,64,47,64,191,255,255,255,255,255,255,64,3,0,21,85,85,85,85,85,85,0,0,0,0,0,0,0,0,0,0,0, + // 0x6fc0 激 + 192,111,37,38,124,40,2,252,1,0,0,6,144,0,25,64,0,0,7,208,0,11,244,0,47,192,0,0,31,248,0,15,240,0,63,128,0,0,31,255,64,15,224,0,63,128,0,0,2,255,218,175,250,164,63,64,0,0,0,63,207,255,255,244,127,0,0,0,0,11,15,255,255,244,127,0,0,0,0,0,15,192,2,244,191,0,0,0,0,0,15,192,2,244,255,255,255,64,0,0,15,234,171,244,255,255,255,64,0,0,15,255,255,245,255,255,255,64,40,0,15,255,255,246,253,87,249,0,127,64,15,192,2,247,252,3,244,0,255,244,15,192,2,255,252,3,244,0,127,253,15,192,2,255,252,3,240,0,7,254,15,255,255,255,253,7,240,0,0,252,15,255,255,255,254,7,240,0,0,32,10,175,250,191,190,11,224,0,0,0,0,11,224,15,47,11,224,0,0,0,0,11,224,1,31,15,208,0,0,0,191,255,255,255,31,143,192,0,0,0,191,255,255,255,15,223,192,0,0,36,191,255,255,255,15,239,128,0,0,62,0,190,0,0,7,255,64,0,0,63,64,126,0,0,3,255,0,0,0,191,0,190,0,0,3,254,0,0,0,255,0,191,255,240,2,253,0,0,1,253,0,191,255,240,2,252,0,0,2,252,0,255,255,240,3,254,0,0,3,252,1,252,3,240,11,255,64,0,11,244,2,252,7,240,31,255,192,0,15,240,3,248,7,240,63,223,224,0,31,224,15,240,7,240,255,11,248,0,63,192,47,224,11,227,253,3,254,0,127,192,191,203,255,239,248,1,255,128,127,66,255,3,255,239,224,0,127,0,11,0,252,3,255,75,128,0,28,0,0,0,32,0,0,1,0,0,0,0, + // 0x7121 無 + 33,113,36,38,86,40,2,252,0,0,144,0,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,7,252,0,0,0,0,0,0,0,15,244,0,0,0,0,0,0,0,47,245,85,85,85,85,85,80,0,127,255,255,255,255,255,255,244,1,255,255,255,255,255,255,255,244,3,255,255,255,255,255,255,255,244,15,255,192,63,0,252,3,244,0,127,255,192,63,0,252,3,244,0,255,223,192,63,0,252,3,244,0,47,31,192,63,0,252,3,244,0,8,31,192,63,0,252,3,244,0,0,31,192,63,0,252,3,244,0,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,85,111,213,191,86,253,87,249,85,0,31,192,63,0,252,3,244,0,0,31,192,63,0,252,3,244,0,0,31,192,63,0,252,3,244,0,0,31,192,63,0,252,3,244,0,0,31,192,63,0,252,3,244,0,0,31,192,63,0,252,3,244,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,21,85,85,85,85,85,85,85,84,0,0,0,0,0,0,0,4,0,0,190,0,20,0,24,0,191,0,0,255,1,252,0,254,0,255,128,2,253,0,253,0,255,0,63,208,3,252,0,254,0,127,64,47,240,11,248,0,255,0,63,128,15,248,31,240,0,191,0,63,192,3,253,127,208,0,191,0,47,192,2,255,191,128,0,191,0,31,208,0,255,6,0,0,16,0,4,0,0,160, + // 0x71b1 熱 + 177,113,37,38,124,40,2,252,0,1,168,0,0,7,240,0,0,0,0,1,252,0,0,7,240,0,0,0,0,1,252,0,0,7,240,0,0,0,15,255,255,255,128,7,240,0,0,0,15,255,255,255,128,7,240,0,0,0,10,171,254,170,65,91,245,85,0,0,0,1,252,0,7,255,255,255,64,0,0,1,252,0,7,255,255,255,64,0,127,255,255,255,231,255,255,255,64,0,127,255,255,255,224,11,224,63,64,0,106,191,175,234,160,11,224,63,64,0,0,126,11,192,0,11,224,63,64,0,0,253,11,192,211,143,224,63,64,0,2,252,11,193,247,255,208,63,64,0,111,240,7,255,255,255,208,63,64,0,255,192,171,255,210,255,192,63,64,0,62,1,252,85,0,127,244,63,64,0,0,1,252,0,0,47,253,63,64,0,26,171,254,170,128,63,255,191,64,0,47,255,255,255,128,127,191,127,74,0,47,255,255,255,128,191,31,63,75,192,0,1,252,0,0,254,5,63,75,192,0,1,252,0,2,252,0,63,75,192,0,1,252,86,167,248,0,63,75,128,21,171,255,255,255,240,0,63,79,128,255,255,255,255,255,208,0,63,255,128,191,255,255,169,127,128,0,47,255,0,190,149,0,0,14,0,0,11,249,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,25,0,0,0,255,1,188,1,253,0,255,0,0,1,254,1,252,0,254,0,127,192,0,3,252,0,253,0,191,0,63,224,0,11,248,0,254,0,127,64,15,244,0,31,240,0,254,0,63,192,7,252,0,127,208,0,255,0,63,192,3,254,0,191,128,0,254,0,47,128,0,254,0,6,0,0,0,0,0,0,0,80,0, + // 0x71c8 燈 + 200,113,38,38,124,40,1,252,0,0,0,0,0,0,25,0,0,0,0,11,224,0,0,0,127,3,64,0,0,11,224,3,255,254,63,11,224,0,0,11,224,3,255,255,47,175,208,0,0,11,224,3,255,255,15,255,64,0,0,11,224,0,0,189,15,248,4,0,0,11,224,145,192,252,7,240,47,64,0,11,225,255,246,248,3,252,191,128,6,75,227,251,255,240,0,255,253,0,11,203,227,240,191,224,0,127,224,0,11,203,235,208,63,192,0,63,208,0,15,203,255,192,255,255,255,255,248,0,15,139,255,3,255,255,255,251,254,0,15,139,234,15,245,255,255,245,255,208,31,75,224,127,224,0,0,0,127,224,47,11,225,255,128,0,0,0,15,192,63,15,224,189,0,0,0,0,2,0,126,15,224,32,191,255,255,255,240,0,124,15,224,0,191,255,255,255,240,0,4,15,208,0,191,255,255,255,240,0,0,15,208,0,190,0,0,11,240,0,0,15,208,0,190,0,0,11,240,0,0,15,192,0,190,0,0,11,240,0,0,31,208,0,190,0,0,11,240,0,0,47,240,0,191,255,255,255,240,0,0,47,252,0,191,255,255,255,240,0,0,63,254,0,191,255,255,255,224,0,0,127,255,64,1,128,0,101,0,0,0,191,63,192,15,208,0,191,0,0,0,254,15,240,11,240,0,254,0,0,1,253,11,244,3,244,1,253,0,0,3,252,3,240,3,248,2,252,0,0,11,244,1,192,2,252,3,244,0,0,31,240,0,0,1,224,1,176,0,0,63,208,0,63,255,255,255,255,255,192,63,128,0,63,255,255,255,255,255,192,15,0,0,63,255,255,255,255,255,192,4,0,0,0,0,0,0,0,0,0, + // 0x7247 片 + 71,114,34,38,86,40,2,252,0,0,0,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,192,0,1,253,0,0,0,0,63,255,255,255,255,255,255,224,0,63,255,255,255,255,255,255,240,0,63,255,255,255,255,255,255,240,0,63,255,255,255,255,255,255,240,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,63,255,255,255,255,255,64,0,0,127,255,255,255,255,255,64,0,0,191,255,255,255,255,255,64,0,0,191,255,255,255,255,255,64,0,0,255,0,0,0,0,191,64,0,0,255,0,0,0,0,191,64,0,0,255,0,0,0,0,191,64,0,2,254,0,0,0,0,191,64,0,3,253,0,0,0,0,191,64,0,7,252,0,0,0,0,191,64,0,11,248,0,0,0,0,191,64,0,15,244,0,0,0,0,191,64,0,63,240,0,0,0,0,191,64,0,191,208,0,0,0,0,191,64,0,255,192,0,0,0,0,191,64,0,191,0,0,0,0,0,191,64,0,45,0,0,0,0,0,191,64,0,8,0,0,0,0,0,191,64,0, + // 0x7269 物 + 105,114,37,38,124,40,1,252,0,0,252,0,0,148,0,0,0,0,0,0,252,0,1,253,0,0,0,0,1,0,252,0,2,252,0,0,0,0,7,240,252,0,3,248,0,0,0,0,11,224,252,0,3,244,0,0,0,0,11,224,252,0,7,240,0,0,0,0,15,208,252,0,11,240,0,0,0,0,15,208,252,0,15,255,255,255,255,192,15,234,254,164,31,255,255,255,255,192,15,255,255,252,63,255,255,255,255,192,31,255,255,252,127,151,249,127,191,192,47,255,255,252,255,3,240,63,47,192,47,64,252,1,253,7,224,127,47,192,63,0,252,3,252,15,208,190,47,192,127,0,252,15,244,15,192,253,63,128,190,0,252,31,240,47,193,252,63,128,45,0,252,11,192,63,66,252,63,128,4,0,252,2,64,127,3,248,63,128,0,0,252,5,0,254,3,244,63,64,0,0,254,254,1,252,11,240,63,64,0,1,255,254,3,248,15,224,63,64,0,127,255,254,11,240,31,192,63,64,47,255,255,144,31,224,47,192,127,0,63,255,252,0,63,192,63,64,127,0,63,250,252,0,255,64,191,0,127,0,46,64,252,3,254,0,254,0,191,0,0,0,252,11,252,2,252,0,191,0,0,0,252,2,240,3,248,0,255,0,0,0,252,0,64,15,240,0,254,0,0,0,252,0,0,31,224,0,254,0,0,0,252,0,0,63,192,1,253,0,0,0,252,0,0,255,64,2,252,0,0,0,252,0,3,254,0,3,252,0,0,0,252,0,15,252,0,11,252,0,0,0,252,0,63,240,31,255,244,0,0,0,252,0,47,208,15,255,240,0,0,0,252,0,7,0,15,255,192,0,0,0,252,0,0,0,6,164,0,0, + // 0x7387 率 + 135,115,36,38,86,40,2,252,0,0,0,0,169,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,5,85,85,85,255,85,85,85,80,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,31,255,255,255,255,255,255,255,248,0,0,0,7,244,0,0,0,0,1,0,0,15,224,0,0,7,64,11,224,0,47,192,36,0,31,240,31,252,2,127,0,191,0,127,208,7,255,75,253,1,253,2,255,64,0,191,239,252,7,244,15,252,0,0,31,210,255,79,224,31,224,0,0,7,0,127,255,128,1,64,0,0,0,0,31,255,28,0,0,0,0,0,0,3,252,191,11,64,0,0,1,240,7,240,63,191,240,0,0,31,244,31,192,31,255,254,0,6,255,248,127,255,255,242,255,208,191,255,175,255,255,255,244,127,248,127,248,31,255,255,234,252,11,253,63,64,30,149,64,0,252,1,244,4,0,0,0,255,0,80,0,16,0,0,0,0,255,0,0,0,0,85,85,85,85,255,85,85,85,85,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0, + // 0x7528 用 + 40,117,35,35,59,40,1,252,0,63,255,255,255,255,255,255,248,0,63,255,255,255,255,255,255,248,0,63,255,255,255,255,255,255,248,0,63,234,170,191,234,170,171,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,213,85,127,229,85,91,248,0,63,255,255,255,255,255,255,248,0,63,255,255,255,255,255,255,248,0,63,255,255,255,255,255,255,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,128,0,47,192,0,3,248,0,63,255,255,255,255,255,255,248,0,63,255,255,255,255,255,255,248,0,127,255,255,255,255,255,255,248,0,127,170,170,191,234,170,171,248,0,191,0,0,47,192,0,3,248,0,255,0,0,47,192,0,3,248,0,254,0,0,47,192,0,3,248,1,253,0,0,47,192,0,3,248,3,252,0,0,47,192,0,3,248,3,252,0,0,47,192,0,3,248,11,244,0,0,47,192,0,3,248,15,240,0,0,47,192,0,7,248,63,224,0,0,47,192,255,255,244,127,192,0,0,47,192,127,255,240,31,64,0,0,47,192,63,255,208,6,0,0,0,5,64,42,84,0, + // 0x754c 界 + 76,117,36,37,77,40,2,251,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,0,3,254,0,127,208,0,0,0,0,15,252,0,31,244,0,0,0,0,127,240,0,11,254,0,0,0,2,255,192,0,2,255,208,0,0,31,255,0,0,0,127,253,0,1,255,253,80,0,6,191,255,208,47,255,223,240,0,7,250,255,255,255,254,15,240,0,7,244,63,254,63,244,15,240,0,7,244,7,252,14,0,15,240,0,7,244,0,32,0,0,15,240,0,7,244,0,0,0,0,31,224,0,7,244,0,0,0,0,63,208,0,7,244,0,0,0,0,191,192,0,7,244,0,0,0,2,255,128,0,7,244,0,0,0,15,255,0,0,7,244,0,0,1,191,252,0,0,7,244,0,0,3,255,240,0,0,7,244,0,0,0,255,64,0,0,7,244,0,0,0,56,0,0,0,6,164,0,0,0,0,0,0,0,0,0,0,0, + // 0x767d 白 + 125,118,30,38,48,40,5,252,0,0,0,249,64,0,0,0,0,0,0,255,192,0,0,0,0,0,1,255,64,0,0,0,0,0,2,255,0,0,0,0,0,0,3,253,0,0,0,0,0,0,7,252,0,0,0,0,106,170,175,254,170,170,170,144,127,255,255,255,255,255,255,208,127,255,255,255,255,255,255,208,127,255,255,255,255,255,255,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,255,255,255,255,255,255,208,127,255,255,255,255,255,255,208,127,255,255,255,255,255,255,208,127,234,170,170,170,170,191,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,234,170,170,170,170,191,208,127,255,255,255,255,255,255,208,127,255,255,255,255,255,255,208,127,255,255,255,255,255,255,208,127,64,0,0,0,0,31,208,127,64,0,0,0,0,31,208,127,0,0,0,0,0,26,144, + // 0x7684 的 + 132,118,34,38,86,40,3,252,0,10,144,0,0,100,0,0,0,0,15,240,0,0,191,0,0,0,0,15,240,0,0,255,0,0,0,0,31,208,0,1,253,0,0,0,0,47,192,0,2,252,0,0,0,0,63,128,0,3,252,0,0,0,0,127,128,0,7,253,85,85,80,191,255,255,248,11,255,255,255,240,191,255,255,248,15,255,255,255,240,191,255,255,248,31,255,255,255,240,191,0,2,248,63,192,0,7,240,191,0,2,248,127,128,0,7,240,191,0,2,248,255,0,0,7,240,191,0,2,250,254,0,0,7,240,191,0,2,255,252,0,0,7,240,191,0,2,249,244,0,0,11,240,191,0,2,248,48,112,0,11,240,191,0,2,248,2,248,0,11,240,191,255,255,248,2,253,0,11,240,191,255,255,248,0,255,0,11,224,191,255,255,248,0,127,192,15,224,191,0,3,248,0,47,224,15,224,191,0,2,248,0,15,240,15,224,191,0,2,248,0,7,252,15,224,191,0,2,248,0,3,253,15,208,191,0,2,248,0,1,253,15,208,191,0,2,248,0,0,224,15,208,191,0,2,248,0,0,0,31,208,191,0,2,248,0,0,0,31,192,191,0,2,248,0,0,0,47,192,191,255,255,248,0,0,0,47,192,191,255,255,248,0,0,0,63,192,191,255,255,248,0,0,0,63,128,191,85,85,80,0,0,0,255,64,191,0,0,0,0,63,255,255,0,191,0,0,0,0,31,255,253,0,105,0,0,0,0,15,255,244,0,0,0,0,0,0,5,85,0,0, + // 0x76e3 監 + 227,118,36,37,77,40,2,253,0,0,0,0,0,1,0,0,0,0,0,0,0,0,7,240,0,0,63,255,255,255,240,11,224,0,0,63,255,255,255,240,15,208,0,0,63,255,255,255,240,31,192,0,0,63,128,126,0,0,47,128,0,0,63,128,126,0,0,63,255,255,254,63,255,255,255,208,127,255,255,254,63,255,255,255,208,255,255,255,254,63,213,85,95,209,252,0,0,0,63,128,0,11,211,248,0,0,0,63,128,0,11,219,240,0,0,0,63,128,0,11,239,224,0,0,0,63,255,255,255,215,192,0,0,0,63,255,255,255,208,64,0,0,0,63,213,191,85,64,0,0,0,0,63,128,126,0,0,63,255,255,248,63,128,126,0,0,63,255,255,248,63,255,255,255,244,63,255,255,248,63,255,255,255,248,0,0,0,0,63,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,190,0,254,0,254,0,255,0,0,190,0,254,0,254,0,255,0,0,190,0,254,0,254,0,255,0,0,190,0,254,0,254,0,255,0,0,190,0,254,0,254,0,255,0,0,190,0,254,0,254,0,255,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,85,85,85,85,85,85,85,85,85, + // 0x76f4 直 + 244,118,36,38,86,40,2,252,0,0,0,0,127,192,0,0,0,0,0,0,0,127,192,0,0,0,0,0,0,0,127,128,0,0,0,21,85,85,85,191,213,85,85,84,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,127,255,255,255,255,255,255,255,254,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,15,255,255,255,255,252,0,7,240,15,255,255,255,255,252,0,7,240,15,250,170,170,171,252,0,7,240,15,224,0,0,1,252,0,7,240,15,224,0,0,1,252,0,7,240,15,250,170,170,171,252,0,7,240,15,255,255,255,255,252,0,7,240,15,255,255,255,255,252,0,7,240,15,224,0,0,1,252,0,7,240,15,224,0,0,1,252,0,7,240,15,224,0,0,1,252,0,7,240,15,255,255,255,255,252,0,7,240,15,255,255,255,255,252,0,7,240,15,250,170,170,170,252,0,7,240,15,224,0,0,1,252,0,7,240,15,224,0,0,1,252,0,7,240,15,250,170,170,171,252,0,7,240,15,255,255,255,255,252,0,7,240,15,255,255,255,255,252,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0,7,249,85,85,85,85,85,85,85,7,255,255,255,255,255,255,255,255,7,255,255,255,255,255,255,255,255,7,255,255,255,255,255,255,255,255,7,240,0,0,0,0,0,0,0,7,240,0,0,0,0,0,0,0, + // 0x7720 眠 + 32,119,36,36,68,40,3,252,255,255,254,3,255,255,255,255,240,255,255,254,3,255,255,255,255,240,255,255,254,3,255,255,255,255,240,254,85,254,3,249,85,85,91,240,253,0,254,3,244,0,0,7,240,253,0,254,3,244,0,0,7,240,253,0,254,3,244,0,0,7,240,253,0,254,3,244,0,0,7,240,253,0,254,3,249,85,85,91,240,255,255,254,3,255,255,255,255,240,255,255,254,3,255,255,255,255,240,255,255,254,3,255,255,255,255,240,253,0,254,3,244,1,252,0,0,253,0,254,3,244,0,253,0,0,253,0,254,3,244,0,253,0,0,253,0,254,3,244,0,253,0,0,253,0,254,3,244,0,253,0,0,255,255,254,3,255,255,255,255,252,255,255,254,3,255,255,255,255,252,255,255,254,3,255,255,255,255,252,253,0,254,3,249,85,255,85,84,253,0,254,3,244,0,127,0,0,253,0,254,3,244,0,127,0,0,253,0,254,3,244,0,63,64,0,253,0,254,3,244,0,63,128,0,254,85,254,3,244,0,63,192,0,255,255,254,3,244,0,47,192,16,255,255,254,3,244,0,31,208,61,255,255,254,3,244,0,15,224,63,253,0,0,3,244,22,219,240,63,253,0,0,3,255,255,211,244,63,253,0,1,191,255,255,227,253,126,84,0,2,255,255,255,144,255,253,0,0,1,255,254,64,0,191,252,0,0,0,249,64,0,0,47,244,0,0,0,0,0,0,0,1,64, + // 0x780d 砍 + 13,120,38,38,124,40,1,252,0,0,0,0,1,164,0,0,0,0,0,0,0,0,2,253,0,0,0,0,21,85,85,85,2,252,0,0,0,0,63,255,255,255,131,252,0,0,0,0,63,255,255,255,131,252,0,0,0,0,63,255,255,255,131,248,0,0,0,0,0,31,192,0,7,244,0,0,0,0,0,47,192,0,11,249,85,85,89,0,0,63,128,0,15,255,255,255,255,208,0,63,64,0,15,255,255,255,255,192,0,63,64,0,31,255,255,255,255,192,0,127,0,0,63,192,253,0,63,128,0,191,0,0,63,192,253,0,127,64,0,254,0,0,127,128,253,0,191,0,0,254,0,0,255,0,253,0,255,0,1,255,255,253,255,0,253,0,254,0,2,255,255,255,253,0,253,0,253,0,3,255,255,255,252,0,253,2,252,0,7,252,1,252,244,1,253,2,248,0,15,252,1,252,16,1,254,0,36,0,31,252,1,252,0,2,254,0,0,0,63,252,1,252,0,2,255,0,0,0,127,252,1,252,0,3,255,0,0,0,191,252,1,252,0,7,255,64,0,0,62,252,1,252,0,11,239,192,0,0,28,252,1,252,0,15,223,208,0,0,4,252,1,252,0,47,203,240,0,0,0,252,1,252,0,63,135,244,0,0,0,253,85,252,0,191,3,252,0,0,0,255,255,252,1,254,1,254,0,0,0,255,255,252,7,252,0,255,128,0,0,255,255,252,31,244,0,63,224,0,0,252,0,0,127,224,0,47,248,0,0,252,0,2,255,192,0,11,255,64,0,252,0,31,255,0,0,3,255,208,0,168,0,15,248,0,0,0,191,192,0,0,0,7,224,0,0,0,31,64,0,0,0,2,0,0,0,0,2,0, + // 0x78ba 確 + 186,120,38,38,124,40,1,252,0,0,0,0,0,0,169,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,254,0,0,0,63,255,255,253,0,1,253,0,0,0,63,255,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,255,192,21,127,213,87,255,255,255,255,255,192,0,63,192,3,244,31,224,0,31,192,0,63,128,3,244,47,192,16,15,192,0,63,64,3,244,63,128,191,15,192,0,127,0,3,244,191,0,254,15,192,0,127,0,0,1,254,1,252,0,0,0,191,0,0,3,252,2,248,0,0,0,254,0,0,11,255,255,255,255,0,0,254,0,0,47,255,255,255,255,0,1,255,255,244,191,255,255,255,255,0,2,255,255,246,255,224,15,224,0,0,3,255,255,255,255,224,11,224,0,0,7,252,2,255,255,224,11,224,0,0,15,252,2,246,255,224,11,224,0,0,15,252,2,244,79,255,255,255,253,0,47,252,2,244,15,255,255,255,253,0,63,252,2,244,15,255,255,255,253,0,255,252,2,244,15,224,11,224,0,0,191,252,2,244,15,224,11,224,0,0,61,252,2,244,15,224,11,224,0,0,24,252,2,244,15,255,255,255,253,0,0,252,2,244,15,255,255,255,253,0,0,252,2,244,15,255,255,255,253,0,0,252,3,244,15,224,11,224,0,0,0,255,255,244,15,224,11,224,0,0,0,255,255,244,15,224,11,224,0,0,0,255,255,244,15,224,11,224,0,0,0,252,0,0,15,255,255,255,255,208,0,252,0,0,15,255,255,255,255,208,0,252,0,0,15,255,255,255,255,208,0,0,0,0,15,224,0,0,0,0,0,0,0,0,15,208,0,0,0,0, + // 0x79fb 移 + 251,121,37,38,124,40,1,252,0,0,0,0,0,0,148,0,0,0,0,0,2,224,0,2,254,0,0,0,0,1,191,248,0,3,252,0,0,0,1,191,255,253,0,15,244,0,0,0,63,255,255,228,0,63,255,255,248,0,63,255,252,0,0,255,255,255,252,0,31,151,248,0,7,255,255,255,248,0,0,3,248,0,47,248,0,15,240,0,0,3,248,1,255,248,0,47,224,0,0,3,248,7,255,255,64,127,192,0,0,3,248,2,252,191,209,255,64,0,42,171,254,168,144,31,255,253,0,0,63,255,255,253,0,3,255,244,0,0,63,255,255,253,0,1,255,208,0,0,63,255,255,253,0,11,255,64,0,0,0,11,248,0,0,191,253,0,0,0,0,15,252,0,111,255,255,224,0,0,0,31,253,2,255,253,63,192,0,0,0,63,255,128,255,208,255,64,0,0,0,127,255,224,120,2,255,255,255,64,0,255,255,244,0,11,255,255,255,192,1,255,250,253,0,63,255,255,255,192,3,247,248,255,1,255,192,0,191,64,7,243,248,60,11,255,0,0,255,0,15,211,248,36,127,255,64,3,253,0,63,195,248,2,255,255,224,11,252,0,127,131,248,0,255,31,252,31,240,0,127,3,248,0,52,3,255,127,224,0,61,3,248,0,0,0,255,255,128,0,24,3,248,0,0,0,47,255,0,0,0,3,248,0,0,0,63,248,0,0,0,3,248,0,0,2,255,224,0,0,0,3,248,0,0,111,255,64,0,0,0,3,248,0,27,255,252,0,0,0,0,3,248,7,255,255,208,0,0,0,0,3,248,3,255,253,0,0,0,0,0,3,248,1,255,128,0,0,0,0,0,2,168,0,144,0,0,0,0,0, + // 0x7a4d 積 + 77,122,37,39,134,40,1,251,0,0,0,64,0,0,169,0,0,0,0,0,27,224,0,0,254,0,0,0,0,91,255,248,85,85,255,85,85,0,47,255,255,249,255,255,255,255,255,64,63,255,254,64,255,255,255,255,255,64,31,251,244,0,0,0,254,0,0,0,4,3,244,0,21,85,254,85,84,0,0,3,244,0,127,255,255,255,253,0,0,3,244,0,127,255,255,255,253,0,0,3,244,0,0,0,254,0,0,0,0,3,244,1,85,85,255,85,85,64,42,175,254,175,255,255,255,255,255,192,63,255,255,255,255,255,255,255,255,192,63,255,255,248,0,0,0,0,0,0,63,255,255,248,0,0,0,0,0,0,0,11,244,0,63,255,255,255,252,0,0,15,244,0,63,255,255,255,252,0,0,31,252,0,63,149,85,86,252,0,0,63,255,0,63,64,0,1,252,0,0,127,255,192,63,149,85,86,252,0,0,191,255,240,63,255,255,255,252,0,0,255,251,252,63,255,255,255,252,0,3,251,245,253,63,64,0,1,252,0,7,243,244,184,63,64,0,1,252,0,15,211,244,48,63,255,255,255,252,0,47,195,244,0,63,255,255,255,252,0,127,131,244,0,63,149,85,86,252,0,191,3,244,0,63,64,0,1,252,0,61,3,244,0,63,64,0,1,252,0,44,3,244,0,63,255,255,255,252,0,0,3,244,0,63,255,255,255,252,0,0,3,244,0,21,121,85,109,84,0,0,3,244,0,1,253,0,127,0,0,0,3,244,0,31,255,0,255,224,0,0,3,244,1,255,248,0,31,253,0,0,3,244,47,255,128,0,3,255,128,0,3,244,31,248,0,0,0,127,128,0,2,164,7,64,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0, + // 0x7aef 端 + 239,122,38,38,124,40,1,252,0,5,64,0,0,0,169,0,0,0,0,15,192,0,0,0,253,0,0,0,0,15,192,0,168,0,253,0,106,0,0,15,192,1,252,0,253,0,191,0,0,15,192,1,252,0,253,0,191,0,0,15,192,1,252,0,253,0,191,0,0,15,192,1,252,0,253,0,191,0,0,15,192,1,252,0,253,0,191,0,63,255,255,225,253,1,253,0,191,0,63,255,255,225,255,255,255,255,255,0,63,255,255,225,255,255,255,255,255,0,21,85,85,81,255,255,255,255,255,0,0,0,4,0,0,0,0,0,0,0,15,128,31,192,0,0,0,0,0,0,15,192,47,193,85,85,85,85,85,64,15,192,47,143,255,255,255,255,255,208,11,208,63,143,255,255,255,255,255,208,11,208,63,79,255,255,255,255,255,208,7,224,63,0,0,2,253,0,0,0,7,224,63,0,0,3,252,0,0,0,3,240,127,0,0,3,248,0,0,0,3,240,126,0,0,7,248,0,0,0,3,240,189,3,255,255,255,255,255,64,3,240,253,3,255,255,255,255,255,64,3,240,252,3,255,255,255,255,255,64,3,240,252,3,248,47,2,240,63,64,0,1,248,99,248,47,2,240,63,64,0,1,255,247,248,47,2,240,63,64,1,175,255,251,248,47,2,240,63,64,127,255,255,247,248,47,2,240,63,64,127,255,249,3,248,47,2,240,63,64,63,249,0,3,248,47,2,240,63,64,57,0,0,3,248,47,2,240,63,64,0,0,0,3,248,47,2,240,63,64,0,0,0,3,248,47,2,240,63,64,0,0,0,3,248,47,2,247,255,64,0,0,0,3,248,47,2,243,255,0,0,0,0,2,244,21,1,82,248,0, + // 0x7b49 等 + 73,123,37,38,124,40,1,252,0,15,144,0,0,15,144,0,0,0,0,31,224,0,0,47,208,0,0,0,0,63,192,0,0,63,192,0,0,0,0,127,255,255,248,191,255,255,255,128,0,255,255,255,249,255,255,255,255,128,3,255,255,255,251,255,255,255,255,128,11,252,191,0,15,248,47,208,0,0,31,240,63,64,63,240,15,240,0,0,127,224,63,192,63,192,7,244,0,0,63,192,31,192,47,192,3,248,0,0,11,0,8,0,63,192,1,128,0,0,0,0,0,0,63,192,0,0,0,0,0,63,255,255,255,255,255,255,208,0,0,63,255,255,255,255,255,255,208,0,0,63,255,255,255,255,255,255,208,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,63,255,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,255,192,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,192,0,0,11,255,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,255,0,11,255,255,255,255,255,255,255,255,0,0,0,47,0,0,0,63,192,0,0,0,0,191,192,0,0,63,192,0,0,0,0,127,244,0,0,63,192,0,0,0,0,15,253,0,0,63,192,0,0,0,0,3,255,0,0,63,192,0,0,0,0,0,255,192,0,63,192,0,0,0,0,0,63,65,85,191,192,0,0,0,0,0,28,3,255,255,128,0,0,0,0,0,0,1,255,255,0,0,0,0,0,0,0,0,255,232,0,0,0, + // 0x7ba1 管 + 161,123,36,39,95,40,2,251,0,62,0,0,0,57,0,0,0,0,127,64,0,0,255,64,0,0,0,255,0,0,1,255,0,0,0,2,255,255,255,211,255,255,255,255,7,255,255,255,219,255,255,255,255,15,255,255,255,255,255,255,255,255,63,226,252,0,191,192,127,192,0,255,192,254,2,255,64,47,208,0,191,0,191,0,254,0,15,240,0,28,0,56,0,254,0,7,144,0,0,0,0,0,254,0,0,0,0,47,255,255,255,255,255,255,255,252,47,255,255,255,255,255,255,255,252,47,255,255,255,255,255,255,255,252,47,128,0,0,0,0,0,2,252,47,128,0,0,0,0,0,2,252,47,128,0,0,0,0,0,2,252,47,131,255,255,255,255,255,194,252,47,131,255,255,255,255,255,194,252,0,3,255,255,255,255,255,192,0,0,3,248,0,0,0,47,192,0,0,3,248,0,0,0,47,192,0,0,3,254,170,170,170,191,192,0,0,3,255,255,255,255,255,192,0,0,3,255,255,255,255,255,192,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,0,0,0,3,255,255,255,255,255,255,0,0,3,255,255,255,255,255,255,0,0,3,255,255,255,255,255,255,0,0,3,248,0,0,0,0,255,0,0,3,248,0,0,0,0,255,0,0,3,248,0,0,0,0,255,0,0,3,255,255,255,255,255,255,0,0,3,255,255,255,255,255,255,0,0,3,255,255,255,255,255,255,0,0,3,248,0,0,0,0,255,0,0,0,0,0,0,0,0,0,0, + // 0x7bb1 箱 + 177,123,37,38,124,40,1,252,0,10,64,0,0,14,64,0,0,0,0,15,240,0,0,31,224,0,0,0,0,31,208,0,0,63,192,0,0,0,0,63,192,0,0,63,192,0,0,0,0,127,255,255,248,191,255,255,255,192,0,255,255,255,249,255,255,255,255,192,1,255,255,255,251,255,255,255,255,192,3,252,191,64,11,252,63,208,0,0,15,244,63,128,31,240,15,240,0,0,47,240,47,192,127,208,7,244,0,0,127,192,15,208,63,128,3,252,0,0,15,64,15,64,11,0,1,224,0,0,1,0,191,0,0,0,0,0,0,0,0,0,191,0,3,255,255,255,254,0,0,0,191,0,3,255,255,255,254,0,0,0,191,0,3,255,255,255,254,0,31,255,255,255,227,249,85,85,254,0,31,255,255,255,227,244,0,0,254,0,31,255,255,255,227,244,0,0,254,0,5,87,255,85,83,244,0,0,254,0,0,3,255,0,3,255,255,255,254,0,0,7,255,128,3,255,255,255,254,0,0,15,255,240,3,255,255,255,254,0,0,47,255,252,3,244,0,0,254,0,0,63,255,255,3,244,0,0,254,0,0,191,255,191,195,244,0,0,254,0,1,254,191,47,243,255,255,255,254,0,3,252,191,15,211,255,255,255,254,0,15,244,191,3,131,255,255,255,254,0,63,224,191,1,3,244,0,0,254,0,127,192,191,0,3,244,0,0,254,0,47,64,191,0,3,244,0,0,254,0,13,0,191,0,3,244,0,0,254,0,0,0,191,0,3,255,255,255,254,0,0,0,191,0,3,255,255,255,254,0,0,0,191,0,3,255,255,255,254,0,0,0,191,0,3,244,0,0,254,0,0,0,190,0,2,164,0,0,85,0, + // 0x7cfb 系 + 251,124,36,38,86,40,2,252,0,0,0,0,0,0,0,4,0,0,0,0,0,0,1,107,253,0,0,1,85,170,191,255,255,255,0,31,255,255,255,255,255,255,255,192,15,255,255,255,255,255,254,144,0,15,255,255,255,249,80,0,0,0,5,80,0,255,192,0,0,0,0,0,0,2,255,64,1,208,0,0,0,0,7,253,0,7,253,0,0,0,0,31,248,0,15,252,0,0,0,56,63,224,0,63,240,0,0,0,255,255,128,0,255,192,0,0,1,255,254,0,3,255,0,0,0,0,63,253,0,15,252,0,0,0,0,11,255,128,127,240,0,0,0,0,1,255,225,255,192,4,0,0,0,0,63,255,255,0,47,0,0,0,0,15,255,248,0,255,192,0,0,0,2,255,224,0,63,244,0,0,0,2,255,64,0,15,253,0,0,0,15,253,0,0,3,255,64,85,85,127,254,255,255,255,255,208,191,255,255,255,255,255,255,255,244,191,255,255,255,255,255,255,255,252,127,255,255,255,255,170,165,87,255,21,85,0,0,255,0,0,1,254,0,0,0,0,255,0,0,0,180,0,0,244,0,255,0,62,0,0,0,3,255,0,255,1,255,192,0,0,15,252,0,255,0,191,244,0,0,63,244,0,255,0,31,253,0,1,255,208,0,255,0,7,255,128,11,255,64,0,255,0,0,255,240,63,253,0,0,255,0,0,63,252,255,240,0,0,255,0,0,15,254,63,192,0,0,255,0,0,3,248,14,0,0,0,255,0,0,0,208,0,0,0,0,254,0,0,0,0, + // 0x7d05 紅 + 5,125,38,38,124,40,1,252,0,1,144,0,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,0,11,244,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,0,47,192,16,26,170,170,170,170,64,0,63,128,253,47,255,255,255,255,128,13,255,1,255,47,255,255,255,255,128,47,252,3,252,47,255,255,255,255,128,63,244,11,248,0,0,63,192,0,0,31,248,31,240,0,0,63,192,0,0,7,253,63,192,0,0,63,192,0,0,0,255,255,64,0,0,63,192,0,0,0,127,254,0,0,0,63,192,0,0,0,31,252,9,0,0,63,192,0,0,0,15,244,127,0,0,63,192,0,0,0,47,224,63,128,0,63,192,0,0,0,127,192,31,208,0,63,192,0,0,21,255,65,95,240,0,63,192,0,0,127,255,255,255,244,0,63,192,0,0,127,255,255,255,252,0,63,192,0,0,63,255,255,254,254,0,63,192,0,0,0,0,254,0,190,0,63,192,0,0,0,0,254,0,48,0,63,192,0,0,0,0,254,0,0,0,63,192,0,0,3,224,254,47,64,0,63,192,0,0,7,240,254,47,192,0,63,192,0,0,11,240,254,31,208,0,63,192,0,0,11,240,254,15,224,0,63,192,0,0,15,224,254,11,240,0,63,192,0,0,15,208,254,3,244,0,63,192,0,0,47,192,254,3,248,0,63,192,0,0,63,192,254,2,252,0,63,192,0,0,127,64,254,1,208,0,63,192,0,0,127,0,254,0,255,255,255,255,255,208,6,0,254,0,255,255,255,255,255,208,0,0,254,0,255,255,255,255,255,208,0,0,254,0,170,170,170,170,170,128,0,0,254,0,0,0,0,0,0,0, + // 0x7d22 索 + 34,125,35,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,5,85,85,85,255,85,85,85,80,63,255,255,255,255,255,255,255,248,63,255,255,255,255,255,255,255,248,63,255,255,255,255,255,255,255,248,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,255,255,255,255,255,255,255,252,63,128,0,47,224,0,0,2,252,63,128,0,127,208,0,0,2,252,63,128,1,255,64,7,64,2,252,63,129,11,253,0,47,240,2,252,63,139,239,240,0,191,224,2,252,0,47,255,192,3,255,64,0,0,0,11,255,64,31,253,0,0,0,0,1,255,224,191,240,36,0,0,0,0,47,254,255,128,254,0,0,0,0,7,255,253,1,255,192,0,0,0,1,255,224,0,63,244,0,0,0,11,255,64,0,11,254,0,63,255,255,255,255,255,255,255,192,63,255,255,255,255,255,255,255,240,63,255,255,255,255,255,255,255,252,21,85,16,0,255,0,0,2,244,0,0,121,0,254,0,56,0,64,0,2,255,64,254,2,255,64,0,0,15,253,0,254,1,255,244,0,0,191,244,0,254,0,31,254,0,11,255,192,0,254,0,2,255,208,191,254,0,0,254,0,0,127,248,127,240,0,0,254,0,0,11,252,15,64,0,0,254,0,0,1,224,0,0,0,0,254,0,0,0,0, + // 0x7d2b 紫 + 43,125,36,38,86,40,2,252,0,0,127,0,1,168,0,0,0,0,0,127,0,1,252,0,0,0,0,0,127,0,1,252,0,2,64,11,208,127,0,1,252,0,111,208,11,224,127,255,241,252,27,255,244,11,224,127,255,241,255,255,255,208,11,224,127,255,241,255,255,244,0,11,224,127,0,1,255,249,0,0,11,224,127,0,1,253,0,0,0,11,224,127,0,1,252,0,0,120,11,224,127,0,81,252,0,0,127,11,224,191,255,241,253,0,0,255,95,255,255,255,241,255,255,255,254,255,255,255,255,160,255,255,255,252,255,255,233,79,144,47,255,255,244,250,80,0,63,240,0,0,0,0,0,0,0,255,192,2,64,0,0,0,1,3,254,0,31,244,0,0,0,31,239,248,0,127,240,0,0,0,127,255,208,2,255,128,0,0,0,31,255,192,15,253,0,0,0,0,1,255,244,127,240,31,64,0,0,0,31,255,255,128,127,224,0,0,0,2,255,252,0,15,252,0,0,0,1,255,224,0,3,255,0,255,255,255,255,255,255,255,255,208,255,255,255,255,255,255,255,255,244,255,255,255,255,255,255,255,255,253,85,85,80,0,255,0,0,2,255,0,0,0,0,255,0,4,0,248,0,1,253,0,255,0,127,0,0,0,7,255,0,255,1,255,224,0,0,63,248,0,255,0,63,253,0,2,255,224,0,255,0,7,255,128,47,255,64,0,255,0,0,191,244,127,248,0,0,255,0,0,31,253,31,192,0,0,255,0,0,3,240,1,0,0,0,254,0,0,0,64, + // 0x7d30 細 + 48,125,36,38,86,40,1,252,0,6,0,0,0,0,0,0,0,0,15,240,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,47,192,0,21,85,85,85,85,0,63,64,0,63,255,255,255,255,0,191,2,128,63,255,255,255,255,0,253,7,244,63,255,255,255,255,31,252,15,240,63,64,63,0,127,63,240,31,208,63,64,63,0,127,63,224,63,128,63,64,63,0,127,15,244,191,0,63,64,63,0,127,7,253,253,0,63,64,63,0,127,1,255,248,0,63,64,63,0,127,0,191,240,160,63,64,63,0,127,0,63,195,240,63,64,63,0,127,0,47,66,248,63,64,63,0,127,0,126,0,253,63,64,63,0,127,0,255,255,255,63,149,191,85,191,127,255,255,255,127,255,255,255,255,127,255,255,255,191,255,255,255,255,127,255,244,31,255,255,255,255,255,21,3,244,15,191,64,63,0,127,0,3,244,8,63,64,63,0,127,0,3,244,0,63,64,63,0,127,11,211,245,244,63,64,63,0,127,15,211,245,252,63,64,63,0,127,15,195,244,252,63,64,63,0,127,15,195,244,190,63,64,63,0,127,31,195,244,127,63,64,63,0,127,47,131,244,63,63,64,63,0,127,63,67,244,47,127,64,63,0,127,63,3,244,30,127,149,191,85,191,191,3,244,0,63,255,255,255,255,109,3,244,0,63,255,255,255,255,4,3,244,0,63,255,255,255,255,0,3,244,0,63,64,0,0,127,0,3,244,0,63,64,0,0,127,0,2,164,0,0,0,0,0,0, + // 0x7d42 終 + 66,125,38,39,134,40,1,251,0,6,0,0,0,14,80,0,0,0,0,15,224,0,0,47,208,0,0,0,0,31,208,0,0,63,192,0,0,0,0,47,192,0,0,191,64,0,0,0,0,63,64,0,0,255,255,255,224,0,0,190,7,144,3,255,255,255,252,0,4,252,15,240,11,255,255,255,248,0,31,248,31,208,31,244,0,31,240,0,63,240,63,128,63,248,0,31,224,0,63,224,127,0,255,253,0,63,192,0,15,244,254,3,254,255,0,191,64,0,3,254,252,15,248,63,194,254,0,0,1,255,244,11,240,31,231,252,0,0,0,191,225,66,192,11,255,244,0,0,0,63,207,192,0,3,255,208,0,0,0,63,75,224,0,2,255,192,0,0,0,190,3,240,0,11,255,224,0,0,1,252,2,244,0,63,255,252,0,0,191,255,255,252,1,255,231,255,64,0,127,255,255,252,31,255,64,255,244,0,127,255,255,255,255,252,0,63,255,64,20,7,240,63,255,208,0,11,255,224,0,3,240,52,254,3,208,0,191,192,0,3,240,80,96,15,253,0,11,0,11,211,243,240,0,11,255,192,0,0,15,211,242,244,0,0,191,248,0,0,15,195,241,248,0,0,15,253,0,0,15,195,240,252,0,0,1,248,0,0,31,195,240,189,0,0,0,32,0,0,47,131,240,126,3,144,0,0,0,0,63,67,240,63,15,254,64,0,0,0,63,3,240,36,31,255,248,0,0,0,191,3,240,0,1,191,255,144,0,0,125,3,240,0,0,7,255,253,0,0,4,3,240,0,0,0,111,255,208,0,0,3,240,0,0,0,2,255,240,0,0,3,240,0,0,0,0,47,208,0,0,3,240,0,0,0,0,2,128,0,0,0,0,0,0,0,0,0,0,0, + // 0x7d71 統 + 113,125,38,38,124,40,1,252,0,6,0,0,0,1,253,0,0,0,0,15,224,0,0,1,253,0,0,0,0,31,208,0,0,1,253,0,0,0,0,47,192,0,0,1,253,0,0,0,0,63,64,0,0,1,253,0,0,0,0,190,7,147,255,255,255,255,255,192,4,252,15,243,255,255,255,255,255,192,31,248,31,211,255,255,255,255,255,192,63,240,63,129,85,127,213,85,85,64,63,224,127,0,0,127,192,0,0,0,15,244,253,0,0,191,64,47,0,0,3,254,252,0,0,255,0,127,128,0,1,255,240,0,1,254,0,47,208,0,0,127,225,64,2,252,0,15,240,0,0,63,207,192,3,248,0,27,252,0,0,63,75,209,91,255,255,255,253,0,0,254,3,242,255,255,255,255,255,0,1,252,2,246,255,255,255,255,255,128,191,255,255,254,255,254,165,64,63,192,127,255,255,253,0,0,0,0,31,192,127,255,255,254,0,84,1,84,9,0,20,7,240,63,0,253,2,252,0,0,0,3,240,56,0,253,2,252,0,0,0,3,240,80,0,253,2,252,0,0,11,211,243,240,1,252,2,252,0,0,15,211,242,244,1,252,2,252,0,0,15,195,241,248,2,252,2,252,0,0,15,195,240,252,3,252,2,252,0,0,31,195,240,189,3,248,2,252,0,0,47,131,240,126,7,244,2,252,6,0,63,67,240,63,15,240,2,252,7,224,63,3,240,16,47,224,2,252,7,240,191,3,240,0,127,192,2,252,7,224,125,3,240,2,255,64,2,252,11,224,4,3,240,31,254,0,2,255,255,208,0,3,240,47,244,0,1,255,255,192,0,3,240,15,208,0,0,191,255,64,0,3,240,5,0,0,0,1,80,0, + // 0x7d72 絲 + 114,125,38,38,124,40,1,252,0,2,128,0,0,0,40,0,0,0,0,3,248,0,0,0,127,128,0,0,0,11,244,0,0,0,255,64,0,0,0,15,240,0,0,0,254,0,0,0,0,47,192,0,0,3,252,0,0,0,0,63,128,244,0,7,244,11,64,0,4,191,2,254,0,15,240,31,240,0,30,253,3,252,3,239,192,63,208,0,63,248,11,244,11,255,64,191,128,0,63,240,31,224,7,255,0,255,0,0,15,248,63,192,1,255,131,253,0,0,3,254,191,64,0,63,219,248,0,0,0,255,254,0,0,15,255,240,0,0,0,63,252,20,0,3,255,194,192,0,0,31,240,252,0,1,255,79,224,0,0,47,208,254,0,2,253,7,244,0,0,127,64,127,0,7,248,3,252,0,0,254,1,127,192,31,240,22,254,0,127,255,255,255,203,255,255,255,255,0,127,255,255,255,231,255,255,255,255,128,127,255,255,255,247,255,255,255,255,192,21,85,253,3,246,85,111,192,15,208,0,0,253,2,128,0,31,192,11,0,1,0,253,0,0,0,31,192,0,0,3,244,253,47,0,121,31,193,224,0,7,240,253,63,64,191,31,203,240,0,7,240,253,63,128,254,31,195,248,0,11,224,253,31,193,253,31,194,252,0,15,224,253,15,226,252,31,192,254,0,15,208,253,11,243,248,31,192,191,0,47,192,253,3,231,244,31,192,63,128,63,128,253,1,15,240,31,192,63,192,127,64,253,0,47,208,31,192,31,208,127,0,253,0,47,192,31,192,15,208,1,0,253,0,2,64,31,192,5,0,0,0,253,0,0,0,31,192,0,0,0,0,253,0,0,0,31,192,0,0,0,0,253,0,0,0,31,192,0,0, + // 0x7da0 綠 + 160,125,38,38,124,40,1,252,0,5,0,0,0,232,0,0,0,0,0,15,224,0,1,253,0,0,0,0,0,15,208,0,1,252,0,0,0,0,0,47,192,0,2,255,255,255,224,0,0,63,64,0,3,255,255,255,240,0,0,127,3,64,3,255,255,255,224,0,0,253,11,240,7,240,0,15,224,0,14,252,15,224,11,240,0,15,208,0,63,244,47,192,15,224,0,31,192,0,127,224,63,64,15,255,255,255,192,0,31,240,254,0,31,255,255,255,192,0,7,249,252,0,63,255,255,255,128,0,2,255,244,0,63,128,0,63,64,0,0,255,224,0,0,0,0,127,64,0,0,63,203,192,0,0,0,191,64,0,0,63,79,211,255,255,255,255,255,192,0,254,7,243,255,255,255,255,255,192,2,252,3,247,255,255,255,255,255,192,191,255,255,252,0,0,191,0,0,0,191,255,255,252,0,0,191,0,0,0,127,255,255,254,28,0,191,64,45,0,16,7,240,127,127,0,191,192,191,128,0,7,240,57,127,192,191,194,255,0,0,7,240,0,31,240,191,219,252,0,15,199,242,224,7,252,191,255,224,0,15,199,243,240,2,244,191,255,128,0,15,199,242,244,0,192,191,253,0,0,31,199,241,248,0,8,191,254,0,0,31,135,240,252,0,189,190,127,64,0,47,71,240,252,3,254,190,63,208,0,63,7,240,189,47,252,190,15,240,0,63,7,240,101,255,224,190,11,253,0,190,7,240,15,255,64,190,2,255,128,189,7,240,11,252,0,190,0,255,208,8,7,240,3,224,0,254,0,47,128,0,7,240,1,64,191,254,0,7,0,0,7,240,0,0,127,253,0,0,0,0,7,224,0,0,63,228,0,0,0, + // 0x7db2 網 + 178,125,37,39,134,40,1,251,0,6,0,0,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,0,15,208,2,255,255,255,255,255,64,0,47,192,2,255,255,255,255,255,64,0,63,64,2,255,255,255,255,255,64,0,191,3,130,253,85,85,85,127,64,0,253,11,242,252,0,0,80,63,64,30,248,15,210,252,124,0,189,63,64,63,240,63,194,252,125,0,252,63,64,63,224,127,2,252,62,1,248,63,64,31,240,254,2,252,47,2,240,63,64,11,249,252,2,252,31,3,224,63,64,2,255,244,2,252,14,2,208,63,64,0,255,224,2,252,255,255,254,63,64,0,63,207,194,252,255,255,254,63,64,0,63,79,210,252,255,255,254,63,64,0,254,7,242,252,0,253,0,63,64,2,252,3,250,252,0,253,0,63,64,191,255,255,254,252,0,253,0,63,64,191,255,255,255,252,255,255,254,63,64,127,255,255,255,252,255,255,254,63,64,16,7,240,127,252,255,255,254,63,64,0,7,240,63,252,47,64,0,63,64,5,7,240,98,252,47,64,0,63,64,15,215,243,242,252,47,64,0,63,64,15,199,243,242,252,47,64,0,63,64,15,199,242,246,252,47,64,0,63,64,31,199,241,250,252,47,64,0,63,64,31,135,240,254,252,47,128,0,63,64,47,71,240,255,252,31,255,252,63,64,63,71,240,191,252,15,255,253,63,64,63,7,240,102,252,7,255,253,63,64,190,7,240,2,252,0,0,0,63,64,189,7,240,2,252,0,0,0,63,64,8,7,240,2,252,0,0,0,127,64,0,7,240,2,252,0,0,191,255,0,0,7,240,2,252,0,0,63,255,0,0,7,240,2,252,0,0,63,244,0,0,0,0,0,0,0,0,0,0,0, + // 0x7dd2 緒 + 210,125,38,38,124,40,1,252,0,5,0,0,0,15,208,0,0,0,0,15,224,0,0,15,208,0,40,0,0,15,208,0,0,15,208,0,63,128,0,47,192,0,0,15,208,0,127,0,0,63,64,0,0,15,208,0,254,0,0,127,2,0,255,255,255,249,252,0,0,253,11,224,255,255,255,251,252,0,14,252,15,224,255,255,255,255,244,0,63,240,63,192,0,15,208,31,224,0,63,224,127,0,0,15,208,63,192,0,31,240,254,0,0,15,208,255,64,0,7,254,252,0,0,15,210,254,0,0,1,255,240,11,255,255,255,255,255,208,0,191,226,139,255,255,255,255,255,208,0,63,207,203,255,255,255,255,255,208,0,127,11,224,0,2,255,64,0,0,0,254,7,240,0,7,253,0,0,0,2,252,3,244,0,31,244,0,0,0,191,255,255,252,0,127,224,0,0,0,191,255,255,253,2,255,255,255,252,0,127,255,255,254,31,255,255,255,252,0,16,7,240,127,191,255,255,255,252,0,0,7,240,63,255,240,0,2,252,0,0,7,240,31,255,240,0,2,252,0,15,215,243,243,215,240,0,2,252,0,15,199,243,240,7,240,0,2,252,0,15,199,242,244,7,255,255,255,252,0,31,199,241,252,7,255,255,255,252,0,31,135,240,252,7,255,255,255,252,0,47,71,240,189,7,240,0,2,252,0,63,7,240,189,7,240,0,2,252,0,127,7,240,80,7,240,0,2,252,0,190,7,240,0,7,240,0,2,252,0,124,7,240,0,7,255,255,255,252,0,4,7,240,0,7,255,255,255,252,0,0,7,240,0,7,255,255,255,252,0,0,7,240,0,7,240,0,2,252,0,0,7,224,0,6,160,0,1,168,0, + // 0x7dda 線 + 218,125,38,38,124,40,1,252,0,5,0,0,0,0,185,0,0,0,0,15,224,0,0,0,255,64,0,0,0,15,208,0,0,1,254,0,0,0,0,47,192,0,0,3,252,0,0,0,0,63,64,0,127,255,255,255,254,0,0,127,3,64,127,255,255,255,254,0,0,253,11,240,127,255,255,255,254,0,14,252,15,224,127,0,0,0,254,0,63,244,47,192,127,0,0,0,254,0,127,224,63,64,127,0,0,0,254,0,31,240,254,0,127,170,170,170,254,0,7,249,252,0,127,255,255,255,254,0,2,255,244,0,127,255,255,255,254,0,0,255,224,0,127,0,0,0,254,0,0,63,203,192,127,0,0,0,254,0,0,63,79,208,127,0,0,0,254,0,0,254,7,240,127,255,255,255,254,0,2,252,3,244,127,255,255,255,254,0,191,255,255,252,127,255,255,255,254,0,191,255,255,252,0,0,191,0,0,0,127,255,255,254,0,0,191,0,4,0,16,7,240,127,0,0,191,64,46,0,0,7,240,59,255,253,191,192,191,192,5,7,240,82,255,255,191,194,255,64,15,215,243,242,255,253,191,235,253,0,15,199,243,240,1,252,191,255,240,0,15,199,241,248,2,252,191,255,192,0,31,199,240,252,3,248,191,254,0,0,31,135,240,252,11,240,191,191,0,0,47,71,240,188,31,208,191,63,192,0,63,7,240,188,63,192,191,31,240,0,63,7,240,0,255,64,191,11,252,0,190,7,240,7,254,0,191,3,255,64,189,7,240,31,248,0,191,0,255,224,8,7,240,11,224,0,191,0,63,192,0,7,240,3,64,191,254,0,11,64,0,7,240,0,0,63,253,0,0,0,0,7,224,0,0,63,228,0,0,0, + // 0x7de8 編 + 232,125,37,38,124,40,1,252,0,5,0,0,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,0,15,208,0,0,0,0,0,0,0,0,47,192,7,255,255,255,255,255,128,0,63,64,7,255,255,255,255,255,128,0,127,6,7,255,255,255,255,255,128,0,253,15,224,0,0,0,0,0,0,30,252,31,208,0,0,0,0,0,0,63,244,63,128,255,255,255,255,254,0,63,224,127,0,255,255,255,255,254,0,31,240,253,0,255,255,255,255,254,0,7,249,252,0,253,0,0,0,254,0,1,255,244,0,253,0,0,0,254,0,0,191,225,0,253,0,0,0,254,0,0,63,223,128,253,0,0,0,254,0,0,63,79,192,255,255,255,255,254,0,0,254,11,208,255,255,255,255,254,0,1,252,7,240,255,255,255,255,254,0,191,255,255,244,253,0,0,0,0,0,191,255,255,248,253,0,0,0,0,0,127,255,255,252,255,255,255,255,255,64,16,11,224,253,255,255,255,255,255,128,0,11,224,184,255,255,255,255,255,128,5,11,224,64,255,209,240,188,47,128,15,203,235,193,255,209,240,188,47,128,15,203,231,209,255,209,240,188,47,128,15,203,227,242,255,209,240,188,47,128,31,139,227,243,255,251,254,254,191,128,31,75,225,247,251,255,255,255,255,128,47,75,225,255,247,255,255,255,255,128,63,11,224,255,231,209,240,188,47,128,127,11,224,159,215,209,240,188,47,128,189,11,224,31,199,209,240,188,47,128,124,11,224,63,199,209,240,188,47,128,0,11,224,127,71,209,240,188,47,128,0,11,224,191,7,209,240,190,255,64,0,11,224,29,7,209,240,188,255,0,0,11,208,0,7,208,160,104,249,0, + // 0x7e2e 縮 + 46,126,37,38,124,40,1,252,0,6,0,0,0,1,253,0,0,0,0,15,224,0,0,1,253,0,0,0,0,15,208,0,0,1,253,0,0,0,0,47,192,0,0,1,253,0,0,0,0,63,64,7,255,255,255,255,255,128,0,127,7,71,255,255,255,255,255,128,0,252,15,231,255,255,255,255,255,128,30,248,31,199,240,0,0,0,47,128,63,240,63,135,240,0,0,0,47,128,63,224,127,7,240,0,0,0,47,128,15,240,253,7,243,224,0,0,21,64,7,254,252,0,7,255,255,255,255,192,1,255,240,0,15,239,255,255,255,192,0,191,226,64,15,223,255,255,255,192,0,63,207,192,31,192,2,252,0,0,0,63,75,208,47,128,2,252,0,0,0,254,7,240,63,64,3,248,0,0,1,252,3,240,127,0,3,244,0,0,191,255,255,244,255,3,255,255,255,0,191,255,255,253,255,3,255,255,255,0,127,255,255,255,255,3,255,255,255,0,16,11,224,191,255,3,240,0,63,0,0,11,224,31,255,3,240,0,63,0,0,11,224,15,127,3,240,0,63,0,15,203,231,193,63,3,240,0,63,0,15,203,231,208,63,3,255,255,255,0,15,203,227,224,63,3,255,255,255,0,31,139,227,240,63,3,255,255,255,0,31,75,226,244,63,3,240,0,63,0,47,75,225,248,63,3,240,0,63,0,63,11,224,248,63,3,240,0,63,0,127,11,224,144,63,3,240,0,63,0,189,11,224,0,63,3,240,0,63,0,124,11,224,0,63,3,255,255,255,0,4,11,224,0,63,3,255,255,255,0,0,11,224,0,63,3,255,255,255,0,0,11,224,0,63,3,240,0,63,0,0,11,208,0,42,2,160,0,21,0, + // 0x7e3d 總 + 61,126,38,38,124,40,1,252,0,5,0,0,0,0,185,0,0,0,0,15,224,0,0,0,255,0,0,0,0,15,208,0,0,0,255,0,0,0,0,47,192,0,0,2,253,0,0,0,0,63,64,0,255,255,255,255,255,0,0,127,6,0,255,255,255,255,255,0,0,253,15,224,255,255,255,255,255,0,30,252,31,208,252,0,124,0,63,0,63,244,63,128,252,0,252,0,63,0,63,224,127,0,252,1,255,254,63,0,31,240,253,0,252,183,255,254,63,0,7,249,252,0,252,255,192,188,63,0,1,255,244,0,252,63,244,248,63,0,0,191,225,0,252,190,255,240,63,0,0,63,223,128,253,244,47,224,63,0,0,63,79,192,252,16,63,248,63,0,0,254,11,208,252,1,253,190,63,0,1,252,7,240,252,31,240,40,63,0,191,255,255,244,252,31,128,0,63,0,191,255,255,248,255,255,255,255,255,0,127,255,255,252,255,255,255,255,255,0,16,11,224,253,255,255,255,255,255,0,0,11,224,184,0,11,192,0,0,0,0,11,224,128,0,31,248,0,0,0,15,139,235,192,0,7,255,0,0,0,15,203,231,224,0,0,255,192,0,0,15,203,227,240,16,127,47,224,176,0,31,139,226,240,189,127,11,131,244,0,31,139,225,244,253,127,1,2,252,0,47,75,225,248,252,127,0,0,254,0,63,11,224,248,252,127,0,0,191,0,63,11,224,145,248,127,0,16,63,64,190,11,224,3,244,127,0,61,47,192,124,11,224,7,240,127,0,63,15,192,4,11,224,15,224,127,0,63,15,224,0,11,224,31,192,63,255,254,7,224,0,11,224,2,64,63,255,253,2,0,0,11,208,0,0,11,255,244,0,0, + // 0x7e7c 繼 + 124,126,37,38,124,40,1,252,0,20,0,10,128,0,0,0,0,0,0,63,64,31,192,56,0,15,64,0,0,63,64,31,192,124,0,15,64,0,0,127,0,31,192,248,0,47,0,0,0,189,0,31,197,240,241,124,45,0,0,252,20,31,207,210,243,248,125,0,1,248,63,95,207,195,211,244,248,0,31,240,127,31,195,255,128,254,240,0,63,224,254,31,192,255,0,63,192,0,63,193,252,31,192,125,208,31,168,0,31,227,244,31,192,245,240,62,61,0,11,251,240,31,194,240,244,188,31,0,2,255,208,31,223,255,255,255,255,128,0,255,128,31,207,255,255,255,255,192,0,127,189,31,192,0,16,0,2,64,0,189,127,31,255,255,255,255,255,192,1,252,63,95,255,255,255,255,255,192,3,240,47,159,255,255,255,255,255,192,191,255,255,223,192,52,0,10,64,0,191,255,255,239,192,124,0,15,128,0,191,255,255,255,192,184,0,31,0,0,16,31,195,255,192,240,224,61,29,0,0,31,130,95,207,225,243,252,62,0,5,31,129,31,207,195,211,244,188,0,15,159,159,31,199,235,192,253,240,0,31,159,143,159,193,255,0,127,224,0,31,95,143,223,192,190,64,31,228,0,47,95,139,239,192,186,224,31,124,0,47,31,135,255,193,240,240,61,47,0,63,31,131,255,203,250,254,254,175,64,63,31,131,255,223,255,255,255,255,192,126,31,129,31,206,148,47,229,3,192,189,31,128,31,192,0,4,0,1,0,44,31,128,31,255,255,255,255,255,192,0,31,128,31,255,255,255,255,255,192,0,31,128,31,255,255,255,255,255,192,0,31,128,31,192,0,0,0,0,0,0,31,128,10,128,0,0,0,0,0, + // 0x7e8c 續 + 140,126,37,38,124,40,1,252,0,5,0,0,0,0,253,0,0,0,0,15,224,0,0,1,253,0,0,0,0,31,192,5,85,86,254,85,85,64,0,47,128,11,255,255,255,255,255,192,0,63,0,11,255,255,255,255,255,192,0,190,10,64,0,1,253,0,0,0,0,252,15,224,21,85,254,85,84,0,14,248,47,192,255,255,255,255,253,0,63,240,63,64,255,255,255,255,253,0,63,208,191,0,0,0,0,0,0,0,31,240,253,2,255,255,255,255,255,0,7,250,248,2,255,255,255,255,255,0,2,255,240,2,244,15,71,208,63,0,0,255,210,2,244,127,3,250,191,0,0,63,239,66,251,248,2,255,255,0,0,63,15,194,245,128,0,0,63,0,0,253,11,210,255,255,255,255,255,0,1,252,7,242,255,255,255,255,255,0,127,255,255,240,0,0,0,0,0,0,127,255,255,248,0,0,0,0,0,0,63,255,255,252,127,255,255,255,252,0,20,11,224,252,127,255,255,255,252,0,0,11,224,80,127,0,0,1,252,0,5,11,225,128,127,170,170,171,252,0,15,203,235,192,127,255,255,255,252,0,15,203,231,224,127,0,0,1,252,0,15,203,227,240,127,0,0,1,252,0,31,139,226,240,127,255,255,255,252,0,47,75,225,244,127,170,170,171,252,0,63,75,224,248,127,0,0,1,252,0,63,11,224,128,127,255,255,255,252,0,127,11,224,0,127,255,255,255,252,0,189,11,224,0,1,244,0,189,0,0,124,11,224,0,31,254,2,255,208,0,0,11,224,6,255,244,0,127,253,0,0,11,224,63,255,128,0,7,255,192,0,11,224,31,244,0,0,0,191,64,0,7,208,6,0,0,0,0,8,0, + // 0x7ea2 红 + 162,126,37,36,104,40,1,254,0,0,144,0,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,2,254,0,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,0,7,248,0,255,255,255,255,255,64,0,15,240,0,255,255,255,255,255,64,0,31,224,0,255,255,255,255,255,64,0,63,192,0,170,170,255,234,170,0,0,191,128,0,0,0,255,0,0,0,0,255,0,244,0,0,255,0,0,0,3,253,2,254,0,0,255,0,0,0,7,248,3,253,0,0,255,0,0,0,15,240,11,248,0,0,255,0,0,0,127,255,255,240,0,0,255,0,0,0,127,255,255,208,0,0,255,0,0,0,63,255,255,128,0,0,255,0,0,0,47,167,255,0,0,0,255,0,0,0,0,7,252,0,0,0,255,0,0,0,0,15,244,0,0,0,255,0,0,0,0,63,224,0,0,0,255,0,0,0,0,191,128,0,0,0,255,0,0,0,2,255,0,88,0,0,255,0,0,0,11,254,191,252,0,0,255,0,0,0,63,255,255,252,0,0,255,0,0,0,63,255,255,252,0,0,255,0,0,0,63,255,233,0,0,0,255,0,0,0,31,144,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,20,0,0,255,0,0,0,0,0,107,248,0,0,255,0,0,0,0,111,255,253,170,170,255,234,170,128,127,255,255,254,255,255,255,255,255,192,127,255,255,146,255,255,255,255,255,192,63,254,64,2,255,255,255,255,255,192,58,64,0,0,0,0,0,0,0,0, + // 0x7f6e 置 + 110,127,35,36,68,40,3,252,31,255,255,255,255,255,255,255,128,31,255,255,255,255,255,255,255,128,31,234,175,250,170,254,170,191,128,31,192,7,240,0,252,0,63,128,31,192,7,240,0,252,0,63,128,31,234,171,250,170,254,170,191,128,31,255,255,255,255,255,255,255,128,31,255,255,255,255,255,255,255,128,0,0,0,2,253,0,0,0,0,0,0,0,2,252,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,0,0,0,3,244,0,0,0,0,0,0,0,7,244,0,0,0,0,5,80,63,255,255,255,255,252,0,15,224,63,255,255,255,255,252,0,15,224,63,128,0,0,2,252,0,15,224,63,128,0,0,1,252,0,15,224,63,255,255,255,255,252,0,15,224,63,255,255,255,255,252,0,15,224,63,128,0,0,1,252,0,15,224,63,128,0,0,1,252,0,15,224,63,255,255,255,255,252,0,15,224,63,255,255,255,255,252,0,15,224,63,128,0,0,1,252,0,15,224,63,128,0,0,1,252,0,15,224,63,255,255,255,255,252,0,15,224,63,255,255,255,255,252,0,15,224,0,0,0,0,0,0,0,15,224,0,0,0,0,0,0,0,15,255,255,255,255,255,255,255,252,15,255,255,255,255,255,255,255,252,15,255,255,255,255,255,255,255,252,15,224,0,0,0,0,0,0,0,10,144,0,0,0,0,0,0,0, + // 0x7f72 署 + 114,127,37,36,104,40,1,252,1,255,255,255,255,255,255,255,248,0,1,255,255,255,255,255,255,255,248,0,1,254,170,255,170,175,234,171,248,0,1,252,0,127,0,15,192,3,248,0,1,252,0,127,0,15,192,3,248,0,1,252,0,127,0,15,192,3,248,0,1,255,255,255,255,255,255,255,248,0,1,255,255,255,255,255,255,255,248,0,1,170,170,170,255,170,170,170,164,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,2,208,0,0,47,255,255,255,255,255,15,248,0,0,47,255,255,255,255,255,127,240,0,0,31,255,255,255,255,255,255,192,0,0,0,0,0,254,0,15,254,0,0,0,0,0,0,254,0,191,240,0,0,47,255,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,255,128,47,255,255,255,255,255,255,255,255,128,0,0,0,1,255,254,0,0,0,0,0,0,0,111,255,240,0,0,0,0,0,0,11,255,255,64,0,0,0,0,0,6,255,255,255,255,255,255,192,0,1,255,255,255,255,255,255,255,192,0,127,255,255,234,170,170,170,191,192,0,63,255,255,192,0,0,0,31,192,0,31,248,31,192,0,0,0,31,192,0,9,0,31,255,255,255,255,255,192,0,0,0,31,255,255,255,255,255,192,0,0,0,31,213,85,85,85,111,192,0,0,0,31,192,0,0,0,31,192,0,0,0,31,192,0,0,0,31,192,0,0,0,31,255,255,255,255,255,192,0,0,0,31,255,255,255,255,255,192,0,0,0,31,234,170,170,170,191,192,0,0,0,31,192,0,0,0,26,128,0, + // 0x8070 聰 + 112,128,38,38,124,40,1,252,0,0,0,0,0,0,105,0,0,0,0,0,0,0,0,0,191,64,0,0,63,255,255,255,128,0,255,0,0,0,63,255,255,255,128,0,254,0,0,0,63,255,255,255,191,255,255,255,255,0,23,249,87,249,127,255,255,255,255,0,2,248,3,244,63,255,255,255,255,0,2,248,3,244,63,0,60,0,63,0,2,248,3,244,63,0,124,0,63,0,2,248,3,244,63,0,255,253,63,0,2,255,255,244,63,47,255,252,63,0,2,255,255,244,63,63,208,188,63,0,2,255,255,244,63,47,248,244,63,0,2,248,3,244,63,125,191,224,63,0,2,248,3,244,63,20,31,208,63,0,2,248,3,244,63,0,63,244,63,0,2,248,3,244,63,1,253,188,63,0,2,248,3,244,63,15,240,32,63,0,2,248,3,244,63,11,64,0,63,0,2,255,255,244,63,255,255,255,255,0,2,255,255,244,63,255,255,255,255,0,2,255,255,244,63,255,255,255,255,0,2,248,3,244,0,3,252,0,0,0,2,248,3,244,0,7,255,128,0,0,2,248,3,244,0,0,191,224,0,0,2,248,3,244,0,26,79,244,0,0,2,248,3,244,9,47,130,209,176,0,2,250,191,244,47,175,128,67,248,0,111,255,255,244,63,111,128,1,252,0,127,255,255,244,63,47,128,0,254,0,63,255,151,244,127,47,128,0,127,0,58,64,3,244,254,47,128,30,63,128,0,0,3,245,252,47,128,31,159,192,0,0,3,251,248,47,128,47,79,208,0,0,3,251,240,31,255,255,15,224,0,0,3,244,144,15,255,255,6,0,0,0,3,244,0,7,255,248,0,0,0,0,2,160,0,0,0,0,0,0, + // 0x81ea 自 + 234,129,28,38,10,40,6,252,0,0,1,233,0,0,0,0,0,2,255,0,0,0,0,0,3,253,0,0,0,0,0,3,252,0,0,0,0,0,7,248,0,0,0,106,170,175,250,170,170,170,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,85,85,85,85,85,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,85,85,85,85,85,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,0,0,0,0,0,191,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,255,255,255,255,255,255,191,85,85,85,85,85,255,191,0,0,0,0,0,191,191,0,0,0,0,0,106, + // 0x85cd 藍 + 205,133,36,37,77,40,2,253,0,0,26,128,0,2,164,0,0,0,0,47,192,0,7,244,0,0,0,0,47,192,0,7,244,0,0,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,47,192,0,7,244,0,0,0,0,47,192,0,7,244,0,0,5,85,85,85,80,7,144,0,0,15,255,255,255,248,15,240,0,0,15,255,255,255,248,15,208,0,0,15,192,63,64,0,47,192,0,0,15,208,63,64,0,63,255,255,252,15,255,255,255,224,255,255,255,252,15,255,255,255,225,255,255,255,252,15,192,0,7,231,252,0,0,0,15,192,0,7,239,240,0,0,0,15,255,255,255,226,208,0,0,0,15,255,255,255,224,0,0,0,0,15,208,63,64,0,47,255,255,244,15,192,63,64,0,47,255,255,244,15,229,127,149,84,47,255,255,244,15,255,255,255,252,0,0,0,0,15,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,126,0,126,0,191,0,0,191,0,126,0,126,0,191,0,0,191,0,126,0,126,0,191,0,0,191,0,126,0,126,0,191,0,0,191,0,126,0,126,0,191,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0, + // 0x884c 行 + 76,136,37,38,124,40,1,252,0,0,40,0,0,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,0,1,255,64,42,170,170,170,170,0,0,7,254,0,127,255,255,255,255,0,0,31,248,0,127,255,255,255,255,0,0,127,224,0,127,255,255,255,255,0,2,255,192,0,0,0,0,0,0,0,11,255,0,0,0,0,0,0,0,0,63,248,0,0,0,0,0,0,0,0,63,224,7,128,0,0,0,0,0,0,31,128,15,244,0,0,0,0,0,0,13,0,47,240,0,0,0,0,0,0,0,0,63,208,0,0,0,0,0,0,0,0,255,128,0,0,0,0,0,0,0,3,255,3,255,255,255,255,255,192,0,11,252,3,255,255,255,255,255,192,0,47,244,3,255,255,255,255,255,192,0,191,244,2,170,170,171,254,170,128,2,255,244,0,0,0,1,253,0,0,11,255,244,0,0,0,1,253,0,0,63,255,244,0,0,0,1,253,0,0,191,251,244,0,0,0,1,253,0,0,63,199,244,0,0,0,1,253,0,0,14,7,244,0,0,0,1,253,0,0,4,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,1,253,0,0,0,7,244,0,0,0,2,253,0,0,0,7,244,0,0,63,255,252,0,0,0,7,244,0,0,63,255,252,0,0,0,7,244,0,0,47,255,244,0,0,0,7,240,0,0,10,169,64,0,0, + // 0x8868 表 + 104,136,38,38,124,40,1,252,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,3,255,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,255,252,0,3,255,255,255,255,255,255,255,252,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,63,255,255,255,255,255,255,224,0,0,63,255,255,255,255,255,255,224,0,0,63,255,255,255,255,255,255,224,0,0,0,0,0,63,192,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,128,0,0,0,0,0,0,0,0,63,192,0,0,0,0,31,255,255,255,255,255,255,255,255,64,31,255,255,255,255,255,255,255,255,64,31,255,255,255,255,255,255,255,255,64,0,0,0,15,255,252,0,0,0,0,0,0,0,127,241,253,0,0,144,0,0,0,7,255,192,254,0,3,248,0,0,0,47,254,0,191,0,31,253,0,0,2,255,244,0,63,128,191,240,0,0,127,255,224,0,47,195,255,128,0,27,255,255,224,0,31,255,253,0,0,127,255,223,224,0,15,255,224,0,0,47,248,15,224,0,3,255,0,0,0,15,128,15,224,0,2,255,0,0,0,0,0,15,224,0,0,255,192,0,0,0,0,15,224,0,108,63,244,0,0,0,0,15,224,111,252,31,254,0,0,0,0,15,255,255,253,7,255,208,0,0,1,191,255,255,248,0,255,253,0,0,127,255,255,249,0,0,63,255,208,0,63,255,249,0,0,0,7,255,128,0,63,249,0,0,0,0,0,191,0,0,25,0,0,0,0,0,0,5,0, + // 0x88ab 被 + 171,136,38,38,124,40,1,252,0,10,144,0,0,0,63,64,0,0,0,15,224,0,0,0,63,64,0,0,0,15,224,0,0,0,63,64,0,0,0,15,224,0,0,0,63,64,0,0,0,15,224,0,0,0,63,64,0,0,0,15,224,0,0,0,63,64,0,0,0,15,224,0,127,255,255,255,255,128,21,95,245,64,127,255,255,255,255,192,63,255,255,244,127,255,255,255,255,192,63,255,255,248,127,85,127,149,127,128,63,255,255,240,127,0,63,64,63,64,0,0,15,224,127,0,63,64,127,0,0,0,31,192,127,0,63,64,191,0,0,0,63,128,127,0,63,64,253,0,0,0,191,0,127,0,63,64,108,0,0,1,253,24,127,0,63,64,0,0,0,3,252,63,191,255,255,255,253,0,0,15,244,189,191,255,255,255,254,0,0,63,253,248,191,255,255,255,253,0,0,191,255,240,191,254,85,87,252,0,2,255,255,192,191,254,0,3,252,0,15,255,255,208,190,127,0,11,244,0,63,255,231,244,254,63,128,15,240,0,191,223,226,252,254,47,192,31,224,0,63,79,224,248,253,31,224,63,192,0,45,15,224,96,253,15,244,191,128,0,0,15,224,1,252,3,253,255,0,0,0,15,224,2,252,2,255,254,0,0,0,15,224,3,248,0,255,252,0,0,0,15,224,3,244,0,127,240,0,0,0,15,224,7,240,0,191,248,0,0,0,15,224,15,240,3,255,255,0,0,0,15,224,31,224,31,255,255,208,0,0,15,224,63,193,255,244,191,254,0,0,15,224,127,143,255,192,31,255,208,0,15,224,255,15,254,0,3,255,192,0,15,224,62,3,240,0,0,127,64,0,11,224,4,1,64,0,0,6,0, + // 0x88c5 装 + 197,136,36,38,86,40,2,252,0,0,191,0,0,3,244,0,0,0,0,191,0,0,3,244,0,0,9,0,191,0,0,3,244,0,0,47,128,191,0,0,3,244,0,0,63,240,191,0,0,3,244,0,0,11,252,191,0,0,7,248,0,0,2,253,191,15,255,255,255,255,255,0,116,191,15,255,255,255,255,255,0,0,191,15,255,255,255,255,255,0,0,191,0,0,3,244,0,0,0,0,191,0,0,3,244,0,0,0,10,191,0,0,3,244,0,0,0,191,191,0,0,3,244,0,0,11,255,191,0,0,3,244,0,0,255,254,191,0,0,7,248,0,0,255,224,191,3,255,255,255,255,248,190,0,191,3,255,255,255,255,248,80,0,191,3,255,255,255,255,248,0,0,191,0,0,0,0,0,0,0,0,106,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,1,255,207,224,0,6,0,0,0,31,254,7,244,0,47,192,0,2,255,240,2,252,1,255,208,1,191,255,128,0,255,15,254,0,191,255,255,64,0,127,255,244,0,191,254,127,64,0,31,255,64,0,63,128,63,64,0,11,254,0,0,0,0,63,64,90,194,255,224,0,0,0,127,255,255,192,127,254,64,0,191,255,255,255,192,11,255,249,0,191,255,255,249,64,1,255,255,0,127,254,80,0,0,0,27,253,0,20,0,0,0,0,0,0,104, + // 0x88dd 裝 + 221,136,36,38,86,40,2,252,5,64,15,224,0,2,168,0,0,15,208,15,224,0,2,252,0,0,15,208,15,224,0,2,252,0,0,15,208,15,224,0,2,252,0,0,15,208,15,224,0,2,252,0,0,15,255,255,224,0,2,252,0,0,15,255,255,227,255,255,255,255,253,15,255,255,227,255,255,255,255,253,15,208,15,227,255,255,255,255,253,0,0,15,224,0,2,252,0,0,0,0,15,224,0,2,252,0,0,255,255,255,224,0,2,252,0,0,255,255,255,224,0,2,252,0,0,191,255,255,224,0,2,252,0,0,3,244,15,224,0,2,252,0,0,7,240,15,224,255,255,255,255,248,15,224,15,224,255,255,255,255,248,47,208,15,224,255,255,255,255,248,255,128,15,224,0,0,0,0,0,255,0,15,224,255,0,0,0,0,56,0,5,64,255,0,0,0,0,0,0,0,0,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,2,255,143,224,0,6,0,0,0,47,253,7,244,0,47,192,0,7,255,224,2,252,1,255,208,6,255,255,64,0,255,15,254,0,255,255,255,64,0,127,255,244,0,127,249,63,64,0,31,255,64,0,62,64,63,64,0,7,254,0,0,0,0,63,65,107,209,255,224,0,0,0,127,255,255,208,127,254,64,0,255,255,255,255,208,11,255,249,0,255,255,255,164,0,1,255,255,0,255,233,0,0,0,0,27,253,0,0,0,0,0,0,0,0,104, + // 0x8907 複 + 7,137,38,38,124,40,1,252,0,10,128,0,2,148,0,0,0,0,0,15,192,0,3,248,0,0,0,0,0,15,192,0,11,240,0,0,0,0,0,15,192,0,15,224,0,0,0,0,0,15,192,0,47,255,255,255,255,192,0,15,192,0,63,255,255,255,255,192,0,15,192,0,255,255,255,255,255,192,5,95,213,2,254,0,0,0,0,0,63,255,255,215,252,0,0,0,0,0,63,255,255,255,249,85,85,85,84,0,63,255,255,255,255,255,255,255,248,0,0,0,47,199,239,255,255,255,248,0,0,0,63,64,47,192,0,3,248,0,0,0,191,0,47,192,0,3,248,0,0,0,254,0,47,255,255,255,248,0,0,2,252,32,47,255,255,255,248,0,0,3,244,124,47,213,85,87,248,0,0,15,240,252,47,192,0,3,248,0,0,31,242,244,47,192,0,3,248,0,0,63,255,224,47,255,255,255,248,0,0,255,255,192,47,255,255,255,248,0,2,255,255,128,5,111,245,85,84,0,7,255,239,192,0,63,192,0,0,0,31,255,219,240,0,255,128,0,0,0,127,239,211,244,3,255,255,255,224,0,127,143,209,224,15,255,255,255,248,0,62,15,208,128,127,255,255,255,240,0,24,15,208,2,255,244,0,63,208,0,0,15,208,31,255,253,0,191,128,0,0,15,208,15,240,255,131,255,0,0,0,15,208,3,128,63,255,248,0,0,0,15,208,0,0,15,255,224,0,0,0,15,208,0,0,47,255,228,0,0,0,15,208,0,11,255,255,255,144,0,0,15,208,27,255,255,219,255,255,144,0,15,208,47,255,248,0,191,255,192,0,15,208,15,254,64,0,7,255,64,0,15,192,6,64,0,0,0,26,0, + // 0x89d2 角 + 210,137,34,39,95,40,1,251,0,0,0,164,0,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,3,253,0,0,0,0,0,0,0,15,255,255,255,224,0,0,0,0,31,255,255,255,252,0,0,0,0,63,255,255,255,244,0,0,0,0,255,128,0,31,240,0,0,0,3,255,0,0,63,192,0,0,0,15,252,0,0,191,64,0,0,0,47,249,85,85,255,85,85,80,0,255,255,255,255,255,255,255,240,7,255,255,255,255,255,255,255,240,31,255,255,255,255,255,255,255,240,15,251,240,0,15,224,0,11,240,3,199,240,0,15,224,0,11,240,0,7,240,0,15,224,0,11,240,0,7,240,0,15,224,0,11,240,0,7,244,0,15,240,0,15,240,0,7,255,255,255,255,255,255,240,0,7,255,255,255,255,255,255,240,0,7,255,255,255,255,255,255,240,0,7,240,0,15,224,0,11,240,0,7,240,0,15,224,0,11,240,0,11,240,0,15,224,0,11,240,0,11,240,0,15,224,0,11,240,0,15,245,85,95,245,85,95,240,0,15,255,255,255,255,255,255,240,0,31,255,255,255,255,255,255,240,0,47,255,255,255,255,255,255,240,0,63,192,0,0,0,0,11,240,0,127,64,0,0,0,0,11,240,0,255,0,0,0,0,0,11,240,2,254,0,0,0,0,0,11,240,11,252,0,0,0,0,0,15,240,47,244,0,0,0,6,149,111,240,127,224,0,0,0,7,255,255,224,47,192,0,0,0,3,255,255,192,10,0,0,0,0,2,255,249,0,0,0,0,0,0,0,0,0,0, + // 0x8a08 計 + 8,138,38,38,124,40,1,252,0,0,0,0,0,0,26,128,0,0,0,0,0,0,0,0,47,192,0,0,7,255,255,252,0,0,47,192,0,0,7,255,255,252,0,0,47,192,0,0,7,255,255,252,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,127,255,255,255,128,0,47,192,0,0,127,255,255,255,128,0,47,192,0,0,127,255,255,255,128,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,7,255,255,252,0,0,47,192,0,0,11,255,255,252,0,0,47,192,0,0,11,255,255,252,191,255,255,255,255,224,0,0,0,0,191,255,255,255,255,224,0,0,0,0,191,255,255,255,255,224,0,0,0,0,106,170,191,234,170,160,11,255,255,252,0,0,47,192,0,0,11,255,255,252,0,0,47,192,0,0,7,255,255,252,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,0,11,255,255,252,0,0,47,192,0,0,11,255,255,252,0,0,47,192,0,0,11,255,255,252,0,0,47,192,0,0,11,224,1,252,0,0,47,192,0,0,11,224,1,252,0,0,47,192,0,0,11,224,1,252,0,0,47,192,0,0,11,224,1,252,0,0,47,192,0,0,11,224,1,252,0,0,47,192,0,0,11,224,1,252,0,0,47,192,0,0,11,255,255,252,0,0,47,192,0,0,11,255,255,252,0,0,47,192,0,0,11,255,255,252,0,0,47,192,0,0,11,224,0,0,0,0,47,192,0,0,6,144,0,0,0,0,47,192,0,0, + // 0x8a0a 訊 + 10,138,39,37,114,40,1,251,7,255,255,240,255,255,255,255,208,0,7,255,255,240,255,255,255,255,208,0,7,255,255,240,255,255,255,255,208,0,0,0,0,0,170,255,170,175,208,0,0,0,0,0,0,191,0,31,208,0,127,255,255,254,0,191,0,31,208,0,127,255,255,254,0,191,0,31,208,0,127,255,255,253,0,191,0,31,208,0,0,0,0,0,0,191,0,31,208,0,0,0,0,0,0,191,0,31,208,0,7,255,255,240,0,191,0,31,208,0,11,255,255,240,0,191,0,31,208,0,11,255,255,240,0,191,0,31,208,0,0,0,0,0,0,191,0,31,208,0,0,0,0,1,255,255,255,95,208,0,0,0,0,1,255,255,255,95,208,0,11,255,255,241,255,255,255,95,208,0,11,255,255,240,85,255,85,31,208,0,11,255,255,240,0,254,0,31,208,0,0,0,0,0,0,254,0,31,208,0,0,0,0,0,0,253,0,15,208,0,0,0,0,0,0,253,0,15,208,0,11,255,255,240,1,252,0,15,208,0,11,255,255,240,2,252,0,15,224,0,11,255,255,240,3,248,0,15,224,0,11,224,3,240,3,244,0,15,224,0,11,224,3,240,11,240,0,15,240,64,11,224,3,240,15,240,0,11,240,208,11,224,3,240,47,224,0,7,240,240,11,224,3,240,63,192,0,7,244,244,11,224,3,240,191,128,0,3,248,240,11,255,255,241,255,0,0,3,253,240,11,255,255,247,253,0,0,2,255,240,11,255,255,255,252,0,0,0,255,224,11,224,0,3,240,0,0,0,191,192,6,144,0,0,192,0,0,0,47,64,0,0,0,0,0,0,0,0,0,0, + // 0x8a18 記 + 24,138,38,36,104,40,1,252,7,255,255,252,6,170,170,170,168,0,7,255,255,252,11,255,255,255,253,0,7,255,255,252,11,255,255,255,253,0,0,0,0,0,11,255,255,255,253,0,0,0,0,0,0,0,0,1,253,0,127,255,255,255,128,0,0,1,253,0,127,255,255,255,128,0,0,1,253,0,127,255,255,255,128,0,0,1,253,0,0,0,0,0,0,0,0,1,253,0,0,0,0,0,0,0,0,1,253,0,7,255,255,252,0,0,0,1,253,0,11,255,255,252,0,0,0,1,253,0,11,255,255,252,0,0,0,1,253,0,0,0,0,0,2,170,170,170,253,0,0,0,0,0,7,255,255,255,253,0,0,0,0,0,7,255,255,255,253,0,11,255,255,252,7,255,255,255,253,0,11,255,255,252,7,244,0,1,253,0,7,255,255,252,7,244,0,1,253,0,0,0,0,0,7,244,0,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,0,7,244,0,0,0,0,11,255,255,252,7,244,0,0,0,0,11,255,255,252,7,244,0,0,0,0,11,255,255,252,7,244,0,0,0,0,11,224,1,252,7,244,0,0,0,0,11,224,1,252,7,244,0,0,14,0,11,224,1,252,7,244,0,0,15,208,11,224,1,252,7,244,0,0,15,208,11,224,1,252,7,244,0,0,31,192,11,224,1,252,7,244,0,0,47,192,11,255,255,252,7,248,0,0,127,192,11,255,255,252,3,255,255,255,255,128,11,255,255,252,2,255,255,255,255,0,11,224,0,0,0,255,255,255,253,0,6,144,0,0,0,6,170,170,80,0, + // 0x8a2d 設 + 45,138,38,37,114,40,1,252,0,0,0,0,1,85,85,84,0,0,7,255,255,244,7,255,255,253,0,0,7,255,255,244,7,255,255,253,0,0,7,255,255,244,7,255,255,253,0,0,0,0,0,0,7,240,0,253,0,0,0,0,0,0,7,240,0,253,0,0,127,255,255,255,7,240,0,253,0,0,127,255,255,255,11,240,0,253,6,0,127,255,255,255,15,240,0,253,11,208,0,0,0,0,15,224,0,254,11,208,0,0,0,0,47,208,0,254,15,208,7,255,255,244,127,192,0,255,255,192,11,255,255,245,255,128,0,191,255,192,11,255,255,255,255,0,0,63,255,0,0,0,0,3,253,0,0,0,0,0,0,0,0,0,180,0,0,0,0,0,0,0,0,0,101,85,85,85,80,0,11,255,255,244,191,255,255,255,252,0,11,255,255,244,191,255,255,255,252,0,7,255,255,244,191,255,255,255,252,0,0,0,0,0,0,160,0,11,244,0,0,0,0,0,11,240,0,15,240,0,0,0,0,0,7,244,0,31,224,0,11,255,255,244,3,252,0,63,192,0,11,255,255,244,1,254,0,127,192,0,11,255,255,244,0,255,65,255,0,0,11,224,3,244,0,63,211,254,0,0,11,224,3,244,0,31,255,252,0,0,11,224,3,244,0,11,255,240,0,0,11,224,3,244,0,3,255,208,0,0,11,224,3,244,0,11,255,224,0,0,11,224,3,244,0,127,255,254,0,0,11,255,255,244,7,255,251,255,208,0,11,255,255,249,255,255,65,255,255,64,11,255,255,251,255,248,0,47,255,192,11,224,0,1,255,128,0,2,255,64,6,144,0,0,164,0,0,0,26,0, + // 0x8a66 試 + 102,138,38,38,124,40,1,252,0,0,0,0,0,0,1,168,0,0,0,0,0,0,0,0,2,252,180,0,7,255,255,224,0,0,2,253,253,0,7,255,255,224,0,0,2,252,191,0,7,255,255,224,0,0,2,252,63,192,0,0,0,0,0,0,2,252,15,208,0,0,0,0,0,0,2,252,11,64,127,255,255,252,0,0,2,252,0,0,127,255,255,253,255,255,255,255,255,192,127,255,255,254,255,255,255,255,255,192,0,0,0,2,255,255,255,255,255,192,0,0,0,0,85,85,86,253,85,64,11,255,255,240,0,0,1,252,0,0,11,255,255,240,0,0,1,252,0,0,11,255,255,240,0,0,1,252,0,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,0,1,252,0,0,0,0,0,1,255,255,245,252,0,0,11,255,255,241,255,255,244,252,0,0,11,255,255,241,255,255,244,252,0,0,11,255,255,240,2,252,0,253,0,0,0,0,0,0,2,252,0,253,0,0,0,0,0,0,2,252,0,253,0,0,0,0,0,0,2,252,0,254,0,0,11,255,255,240,2,252,0,254,0,0,11,255,255,240,2,252,0,191,0,0,11,255,255,240,2,252,0,191,0,0,11,208,7,240,2,252,0,127,0,0,11,208,7,240,2,252,0,63,2,0,11,208,7,240,2,252,5,63,67,208,11,208,7,240,2,255,254,63,131,240,11,208,7,241,111,255,254,47,195,240,11,208,7,243,255,255,253,31,231,224,11,255,255,243,255,250,64,15,255,208,11,255,255,242,249,0,0,11,255,192,11,255,255,240,0,0,0,3,255,128,11,208,0,0,0,0,0,0,255,0,6,128,0,0,0,0,0,0,20,0, + // 0x8a8d 認 + 141,138,38,36,104,40,1,252,7,255,255,224,127,255,255,255,255,0,7,255,255,224,127,255,255,255,255,0,7,255,255,224,127,255,255,255,255,0,0,0,0,0,0,3,244,0,191,0,0,0,0,0,0,3,240,0,191,0,127,255,255,252,30,7,240,0,191,0,127,255,255,252,63,255,224,0,191,0,127,255,255,252,127,255,208,0,254,0,0,0,0,0,7,255,244,0,254,0,0,0,0,0,0,63,255,64,254,0,11,255,255,224,0,191,255,208,253,0,11,255,255,224,1,255,127,192,253,0,11,255,255,224,3,252,7,1,252,0,0,0,0,0,31,244,1,71,252,0,0,0,0,0,191,224,7,255,252,0,0,0,0,3,255,128,3,255,244,0,11,255,255,224,253,3,131,255,208,0,11,255,255,224,96,15,244,0,0,0,11,255,255,224,0,15,254,0,0,0,0,0,0,0,0,2,255,192,0,0,0,0,0,0,0,0,63,240,0,0,0,0,0,0,0,42,15,244,0,0,11,255,255,240,0,127,2,224,160,0,11,255,255,240,16,127,0,71,244,0,11,255,255,240,126,127,0,3,252,0,11,208,7,240,190,127,0,1,253,0,11,208,7,240,254,127,0,0,255,0,11,208,7,240,253,127,0,0,127,64,11,208,7,240,252,127,0,45,63,192,11,208,7,242,252,127,0,47,95,208,11,208,7,243,244,127,0,47,79,224,11,255,255,251,240,63,64,63,15,240,11,255,255,251,224,63,255,255,11,64,11,255,255,241,192,63,255,254,0,0,11,208,0,0,0,31,255,252,0,0,6,128,0,0,0,0,0,0,0,0, + // 0x8aa4 誤 + 164,138,38,37,114,40,1,252,0,0,0,0,0,11,255,255,253,0,7,255,255,192,0,11,255,255,253,0,7,255,255,192,0,11,255,255,253,0,7,255,255,192,20,11,224,0,253,0,0,0,0,0,190,11,224,0,253,0,0,0,0,0,190,11,224,0,253,0,127,255,255,244,190,11,224,0,253,0,127,255,255,244,190,11,224,0,253,0,127,255,255,244,190,11,224,0,253,0,0,0,0,0,190,11,255,255,253,0,0,0,0,0,190,11,255,255,253,0,11,255,255,192,190,11,255,255,253,0,11,255,255,192,190,0,0,0,0,0,11,255,255,192,190,0,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,0,0,191,255,255,255,244,0,0,0,0,0,191,255,255,255,244,0,11,255,255,192,191,255,255,255,244,0,11,255,255,192,190,0,0,7,244,0,11,255,255,192,190,0,0,7,244,0,0,0,0,0,85,0,0,7,244,0,0,0,0,0,0,0,0,7,244,0,0,0,0,0,0,0,0,7,244,0,11,255,255,199,255,255,255,255,255,208,11,255,255,199,255,255,255,255,255,208,11,255,255,199,255,255,255,255,255,208,11,208,15,193,85,85,85,85,85,64,11,208,15,192,0,96,0,5,0,0,11,208,15,192,0,255,0,191,64,0,11,208,15,192,3,254,0,127,224,0,11,208,15,192,15,252,0,15,248,0,11,255,255,192,127,240,0,7,253,0,11,255,255,193,255,192,0,1,255,64,11,255,255,219,255,0,0,0,191,192,11,208,0,11,252,0,0,0,63,208,11,208,0,2,224,0,0,0,15,0,0,0,0,0,64,0,0,0,4,0, + // 0x8abf 調 + 191,138,36,36,68,40,1,252,11,255,255,66,255,255,255,255,255,11,255,255,66,255,255,255,255,255,7,255,255,66,255,255,255,255,255,0,0,0,2,248,0,0,0,63,0,0,0,2,248,0,252,0,63,127,255,255,226,248,0,252,0,63,127,255,255,226,248,0,252,0,63,127,255,255,226,248,191,255,252,63,0,0,0,2,248,191,255,252,63,0,0,0,2,248,127,255,248,63,11,255,255,66,248,0,252,0,63,15,255,255,130,248,0,252,0,63,15,255,255,130,248,0,252,0,63,0,0,0,2,248,191,255,252,63,0,0,0,2,248,255,255,253,63,0,0,0,2,248,255,255,253,63,15,255,255,130,248,0,0,0,63,15,255,255,130,248,0,0,0,63,11,255,255,66,248,0,0,0,63,0,0,0,2,248,127,255,248,63,0,0,0,3,248,127,255,248,63,0,0,0,3,244,127,171,248,63,15,255,255,67,244,125,0,248,63,15,255,255,67,244,125,0,248,63,15,255,255,67,240,125,0,248,63,15,192,47,71,240,125,0,248,63,15,192,47,75,240,127,171,248,63,15,192,47,75,224,127,255,248,63,15,192,47,79,208,127,255,248,63,15,192,47,95,208,125,0,0,63,15,255,255,111,192,40,0,0,63,15,255,255,191,192,0,0,0,127,15,255,255,255,64,0,1,255,255,15,192,0,191,0,0,0,255,255,15,192,0,30,0,0,0,191,252,0,0,0,4,0,0,0,106,80, + // 0x8acb 請 + 203,138,37,39,134,40,1,251,0,0,0,0,0,0,106,0,0,0,0,0,0,0,0,0,127,0,0,0,7,255,255,240,0,0,127,0,0,0,7,255,255,240,191,255,255,255,255,64,7,255,255,240,191,255,255,255,255,64,0,0,0,0,106,170,255,170,170,64,0,0,0,0,0,0,127,0,0,0,127,255,255,254,26,170,255,170,169,0,127,255,255,254,47,255,255,255,255,0,127,255,255,253,47,255,255,255,255,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,0,127,0,0,0,7,255,255,241,170,170,255,170,170,128,11,255,255,242,255,255,255,255,255,192,11,255,255,242,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,170,170,170,168,0,11,255,255,240,11,255,255,255,252,0,11,255,255,240,11,255,255,255,252,0,11,255,255,240,11,224,0,2,252,0,0,0,0,0,11,224,0,2,252,0,0,0,0,0,11,250,170,171,252,0,0,0,0,0,11,255,255,255,252,0,11,255,255,240,11,255,255,255,252,0,11,255,255,240,11,224,0,2,252,0,11,255,255,240,11,224,0,2,252,0,11,224,3,240,11,250,170,171,252,0,11,224,3,240,11,255,255,255,252,0,11,224,3,240,11,255,255,255,252,0,11,224,3,240,11,224,0,2,252,0,11,224,3,240,11,224,0,2,252,0,11,224,3,240,11,224,0,2,252,0,11,255,255,240,11,224,0,2,252,0,11,255,255,240,11,224,0,2,252,0,11,255,255,240,11,224,3,255,252,0,11,224,0,0,11,224,1,255,248,0,6,144,0,0,11,224,0,255,144,0,0,0,0,0,0,0,0,0,0,0, + // 0x8b70 議 + 112,139,38,38,124,40,1,252,0,0,0,0,2,128,0,9,0,0,0,0,0,0,15,208,0,31,192,0,11,255,255,64,7,240,0,63,128,0,11,255,255,64,3,244,0,191,0,0,7,255,255,67,255,255,255,255,255,0,0,0,0,3,255,255,255,255,255,0,0,0,0,2,170,171,254,170,170,0,127,255,255,224,0,2,252,0,0,0,127,255,255,224,0,2,252,0,0,0,127,255,255,224,255,255,255,255,252,0,0,0,0,0,255,255,255,255,252,0,0,0,0,0,85,86,253,85,84,0,11,255,255,64,0,2,252,0,0,0,15,255,255,128,0,2,252,0,0,0,15,255,255,175,255,255,255,255,255,192,0,0,0,47,255,255,255,255,255,192,0,0,0,31,255,255,255,255,255,192,0,0,0,0,0,6,11,208,64,0,15,255,255,128,91,255,207,211,240,0,15,255,255,143,255,254,79,211,252,0,11,255,255,75,255,240,11,208,255,0,0,0,0,0,3,240,11,208,63,64,0,0,0,0,3,240,11,224,8,0,0,0,0,26,175,250,175,250,170,128,15,255,255,111,255,255,255,255,255,192,15,255,255,111,255,255,255,255,255,192,15,255,255,64,3,240,3,240,0,0,15,192,47,64,3,240,3,240,180,0,15,192,47,64,27,255,243,245,252,0,15,192,47,111,255,255,242,251,244,0,15,192,47,111,255,255,145,255,224,0,15,192,47,95,235,240,0,255,128,0,15,255,255,64,3,240,2,255,2,128,15,255,255,64,3,240,15,255,3,208,15,255,255,64,7,240,191,255,195,208,15,192,0,3,255,243,254,31,255,192,15,192,0,3,255,224,244,11,255,128,0,0,0,1,169,0,0,1,254,0, + // 0x8b80 讀 + 128,139,37,38,124,40,1,252,0,0,0,0,0,1,252,0,0,0,0,0,0,0,0,1,252,0,0,0,11,255,255,71,255,255,255,255,255,128,11,255,255,71,255,255,255,255,255,128,7,255,255,65,85,86,254,85,85,64,0,0,0,0,0,1,252,0,0,0,0,0,0,0,85,86,253,85,84,0,127,255,255,224,255,255,255,255,254,0,127,255,255,224,255,255,255,255,254,0,127,255,255,224,0,0,0,0,0,0,0,0,0,3,255,255,255,255,255,64,0,0,0,3,255,255,255,255,255,64,11,255,255,67,240,15,7,192,47,64,15,255,255,131,240,126,7,234,191,64,15,255,255,131,251,248,2,255,255,64,0,0,0,3,242,64,0,0,47,64,0,0,0,3,240,0,0,0,47,64,0,0,0,3,255,255,255,255,255,64,15,255,255,131,255,255,255,255,255,64,15,255,255,128,0,0,0,0,0,0,11,255,255,64,255,255,255,255,253,0,0,0,0,0,255,255,255,255,253,0,0,0,0,0,253,0,0,0,253,0,0,0,0,0,255,170,170,170,253,0,15,255,255,64,255,255,255,255,253,0,15,255,255,64,253,0,0,0,253,0,15,255,255,64,254,170,170,170,253,0,15,192,47,64,255,255,255,255,253,0,15,192,47,64,253,0,0,0,253,0,15,192,47,64,253,0,0,0,253,0,15,192,47,64,255,255,255,255,253,0,15,192,47,64,255,255,255,255,253,0,15,255,255,64,1,240,0,189,0,0,15,255,255,64,31,253,2,255,208,0,15,255,255,65,255,244,0,127,253,0,15,192,0,47,255,128,0,7,255,192,15,192,0,31,248,0,0,0,191,128,0,0,0,6,64,0,0,0,9,0, + // 0x8b8a 變 + 138,139,36,38,86,40,2,252,0,36,0,0,0,0,1,128,0,0,126,0,47,255,240,3,240,0,0,252,0,47,255,240,7,224,0,2,244,64,0,0,0,15,193,0,47,224,248,0,0,0,239,7,224,127,195,244,255,255,255,253,15,208,47,219,224,255,255,254,254,63,64,11,255,128,0,0,0,63,254,0,2,255,16,47,255,240,15,248,128,0,252,252,47,255,240,11,227,224,3,240,126,0,0,0,31,129,248,171,255,255,0,0,2,191,255,253,255,255,255,239,255,251,255,255,255,255,255,91,175,255,247,255,253,95,0,63,0,0,0,0,1,248,4,30,63,124,47,255,244,165,248,96,47,127,125,63,255,244,249,249,244,63,63,63,63,1,245,245,248,252,62,63,31,63,1,246,241,248,125,125,63,15,127,1,247,241,248,63,252,63,4,63,255,255,209,248,47,248,63,7,255,255,250,193,248,8,16,63,15,240,0,0,1,248,0,0,21,63,208,0,0,0,80,0,0,0,255,255,255,255,255,255,248,0,7,255,255,255,255,255,255,248,0,63,255,255,255,255,255,255,248,2,255,254,0,0,2,255,0,0,47,255,255,208,0,15,252,0,0,63,248,47,253,0,191,240,0,0,15,128,7,255,215,255,128,0,0,1,0,0,191,255,253,0,0,0,0,0,0,127,255,253,64,0,0,0,1,191,255,255,255,254,80,0,107,255,255,255,150,255,255,255,250,255,255,255,228,0,27,255,255,255,127,255,228,0,0,0,27,255,253,42,80,0,0,0,0,0,1,168, + // 0x8cc7 資 + 199,140,36,38,86,40,2,252,0,0,0,0,41,0,0,0,0,3,144,0,0,127,64,0,0,0,11,255,64,0,254,0,0,0,0,15,255,248,2,255,255,255,255,248,0,127,253,11,255,255,255,255,252,0,2,252,31,250,191,234,175,240,0,0,32,191,192,63,208,15,224,0,0,0,255,0,191,240,47,192,0,0,4,44,1,255,248,63,64,0,6,252,0,7,254,254,1,0,6,255,253,0,47,244,255,208,0,255,255,248,11,255,208,63,254,64,191,254,64,255,254,0,11,255,254,63,144,0,127,224,0,1,255,253,36,21,85,126,85,85,85,111,252,0,63,255,255,255,255,255,253,20,0,63,255,255,255,255,255,253,0,0,63,192,0,0,0,1,253,0,0,63,192,0,0,0,1,253,0,0,63,192,0,0,0,2,253,0,0,63,255,255,255,255,255,253,0,0,63,255,255,255,255,255,253,0,0,63,192,0,0,0,1,253,0,0,63,192,0,0,0,1,253,0,0,63,255,255,255,255,255,253,0,0,63,255,255,255,255,255,253,0,0,63,213,85,85,85,86,253,0,0,63,192,0,0,0,1,253,0,0,63,213,85,85,85,86,253,0,0,63,255,255,255,255,255,253,0,0,63,255,255,255,255,255,253,0,0,0,7,128,0,2,128,0,0,0,0,127,248,0,31,253,0,0,0,27,255,224,0,31,255,228,0,27,255,254,0,0,0,191,255,64,127,255,224,0,0,0,7,255,248,31,249,0,0,0,0,0,127,248,6,64,0,0,0,0,0,6,64, + // 0x8ddd 距 + 221,141,38,36,104,40,1,252,7,255,255,255,7,255,255,255,255,192,7,255,255,255,7,255,255,255,255,192,7,255,255,255,7,255,255,255,255,192,7,240,0,127,7,249,85,85,85,64,7,240,0,127,7,240,0,0,0,0,7,240,0,127,7,240,0,0,0,0,7,240,0,127,7,240,0,0,0,0,7,240,0,127,7,240,0,0,0,0,7,240,0,127,7,240,0,0,0,0,7,240,0,191,7,249,85,85,84,0,7,255,255,255,7,255,255,255,253,0,7,255,255,255,7,255,255,255,253,0,7,255,255,255,7,255,255,255,253,0,0,0,253,0,7,240,0,1,253,0,0,0,253,0,7,240,0,1,253,0,0,0,253,0,7,240,0,1,253,0,7,208,253,0,7,240,0,1,253,0,11,224,253,0,7,240,0,1,253,0,11,224,255,255,135,240,0,1,253,0,11,224,255,255,135,240,0,1,253,0,11,224,255,255,135,249,85,86,253,0,11,224,253,85,7,255,255,255,253,0,11,224,253,0,7,255,255,255,253,0,11,224,253,0,7,255,255,255,253,0,11,224,253,0,7,240,0,0,0,0,11,224,253,0,7,240,0,0,0,0,11,224,253,0,71,240,0,0,0,0,11,224,253,111,199,240,0,0,0,0,11,224,255,255,199,240,0,0,0,0,11,255,255,255,199,240,0,0,0,0,111,255,255,254,71,249,85,85,85,64,191,255,254,64,7,255,255,255,255,208,127,254,64,0,7,255,255,255,255,208,62,64,0,0,7,255,255,255,255,208,0,0,0,0,7,240,0,0,0,0,0,0,0,0,7,240,0,0,0,0, + // 0x8eca 車 + 202,142,36,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,21,85,85,85,255,85,85,85,84,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,47,255,255,255,255,255,255,255,248,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,255,255,255,255,255,255,255,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,85,85,85,85,255,85,85,85,85,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0, + // 0x8edf 軟 + 223,142,38,38,124,40,1,252,0,0,254,0,0,14,64,0,0,0,0,0,254,0,0,31,208,0,0,0,0,0,254,0,0,31,192,0,0,0,0,0,254,0,0,47,192,0,0,0,63,255,255,255,244,47,192,0,0,0,63,255,255,255,244,63,128,0,0,0,63,255,255,255,244,63,64,0,0,0,0,0,254,0,0,127,149,85,85,0,0,0,254,0,0,191,255,255,255,192,0,0,254,0,0,255,255,255,255,192,10,170,255,170,145,255,255,255,255,128,15,255,255,255,226,252,47,192,63,64,15,255,255,255,227,252,47,192,127,0,15,192,188,7,231,244,47,192,127,0,15,192,188,7,239,240,47,192,190,0,15,192,188,7,255,224,47,192,254,0,15,234,254,171,255,192,47,192,253,0,15,255,255,255,255,128,47,192,252,0,15,255,255,255,227,0,47,193,248,0,15,192,188,7,224,0,63,192,0,0,15,192,188,7,224,0,63,192,0,0,15,192,188,7,224,0,63,208,0,0,15,255,255,255,224,0,127,224,0,0,15,255,255,255,224,0,191,240,0,0,10,170,255,170,160,0,255,240,0,0,0,0,254,0,0,1,250,248,0,0,0,0,254,0,0,3,245,252,0,0,21,85,254,85,80,7,240,253,0,0,127,255,255,255,252,15,240,191,0,0,127,255,255,255,252,47,208,63,128,0,127,255,255,255,252,127,192,47,208,0,0,0,254,0,1,255,0,15,244,0,0,0,254,0,7,253,0,11,252,0,0,0,254,0,47,248,0,3,255,64,0,0,254,0,255,240,0,0,255,224,0,0,254,0,255,128,0,0,63,208,0,0,254,0,62,0,0,0,15,128,0,0,253,0,20,0,0,0,2,0, + // 0x8ef8 軸 + 248,142,36,38,86,40,1,252,0,1,252,0,0,0,31,192,0,0,1,252,0,0,0,31,192,0,0,1,252,0,0,0,31,192,0,0,1,252,0,0,0,31,192,0,0,2,252,0,0,0,31,192,0,63,255,255,255,208,0,31,192,0,63,255,255,255,208,0,31,192,0,63,255,255,255,208,0,31,192,0,0,1,252,0,0,0,31,192,0,0,1,252,0,7,255,255,255,255,10,171,254,170,135,255,255,255,255,15,255,255,255,199,255,255,255,255,15,255,255,255,199,245,111,213,127,15,128,248,15,199,240,31,192,63,15,128,248,15,199,240,31,192,63,15,128,248,15,199,240,31,192,63,15,234,254,175,199,240,31,192,63,15,255,255,255,199,240,31,192,63,15,255,255,255,199,240,31,192,63,15,128,248,15,199,240,31,192,63,15,128,248,15,199,255,255,255,255,15,128,248,15,199,255,255,255,255,15,255,255,255,199,255,255,255,255,15,255,255,255,199,245,111,213,127,10,171,254,170,135,240,31,192,63,0,1,252,0,7,240,31,192,63,0,1,252,0,7,240,31,192,63,21,86,253,85,87,240,31,192,63,127,255,255,255,247,240,31,192,63,127,255,255,255,247,240,31,192,63,127,255,255,255,247,240,31,192,63,0,1,252,0,7,240,31,192,63,0,1,252,0,7,255,255,255,255,0,1,252,0,7,255,255,255,255,0,1,252,0,7,255,255,255,255,0,1,252,0,7,245,85,85,127,0,1,252,0,7,240,0,0,63,0,1,252,0,3,224,0,0,21, + // 0x8f09 載 + 9,143,37,38,124,40,2,252,0,0,63,64,0,47,192,16,0,0,0,0,63,64,0,47,192,188,0,0,0,0,63,64,0,47,194,255,0,0,15,255,255,255,252,47,192,191,192,0,15,255,255,255,252,47,192,47,240,0,15,255,255,255,252,47,192,15,248,0,0,0,63,64,0,47,192,3,244,0,0,0,63,64,0,47,192,1,192,0,0,0,63,64,0,47,192,0,0,0,255,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,255,0,255,255,255,255,255,255,255,255,255,0,0,0,63,64,0,31,208,0,0,0,0,0,63,64,0,31,208,0,0,0,26,170,191,234,170,15,208,2,64,0,47,255,255,255,255,15,224,7,240,0,47,255,255,255,255,15,224,15,240,0,0,0,63,64,0,15,224,15,224,0,0,0,63,64,0,15,240,47,192,0,15,255,255,255,252,11,240,63,128,0,15,255,255,255,252,11,240,127,64,0,15,192,63,0,188,7,244,255,0,0,15,192,63,0,188,7,245,254,0,0,15,255,255,255,252,3,251,252,0,0,15,255,255,255,252,3,255,244,0,0,15,192,63,0,188,2,255,240,0,0,15,192,63,0,188,2,255,192,0,0,15,255,255,255,252,1,255,128,16,0,15,255,255,255,252,1,255,0,45,0,0,0,63,0,0,3,255,0,47,64,0,0,63,0,0,15,255,128,63,64,42,170,255,234,170,63,255,192,63,0,127,255,255,255,255,255,239,224,63,0,127,255,255,255,255,255,15,248,191,0,0,0,63,0,47,252,7,255,254,0,0,0,63,0,63,240,2,255,252,0,0,0,63,0,15,128,0,191,244,0,0,0,63,0,5,0,0,6,64,0, + // 0x8f2f 輯 + 47,143,38,38,124,40,1,252,0,1,252,0,0,0,0,0,0,0,0,1,252,0,0,170,170,170,168,0,0,1,252,0,0,255,255,255,253,0,0,1,252,0,0,255,255,255,253,0,0,2,252,0,0,253,0,1,253,0,63,255,255,255,208,253,0,1,253,0,63,255,255,255,208,253,0,1,253,0,63,255,255,255,208,255,170,171,253,0,0,1,252,0,0,255,255,255,253,0,0,1,252,0,0,255,255,255,253,0,10,171,254,170,128,0,0,0,0,0,15,255,255,255,192,0,0,0,0,0,15,255,255,255,223,255,255,255,255,208,15,128,248,15,223,255,255,255,255,208,15,128,248,15,223,255,255,255,255,208,15,128,248,15,192,254,0,1,252,0,15,234,254,175,192,254,0,1,252,0,15,255,255,255,192,254,0,1,252,0,15,255,255,255,192,255,170,171,252,0,15,128,248,15,192,255,255,255,252,0,15,128,248,15,192,255,255,255,252,0,15,128,248,15,192,254,0,1,252,0,15,255,255,255,192,254,0,1,252,0,15,255,255,255,192,254,0,1,252,0,10,171,254,170,128,255,170,171,252,0,0,1,252,0,0,255,255,255,252,0,0,1,252,0,0,255,255,255,252,0,21,86,253,85,80,254,0,1,252,0,127,255,255,255,240,254,0,1,252,0,127,255,255,255,240,254,0,1,252,0,127,255,255,255,240,254,106,255,255,208,0,1,252,0,63,255,255,255,255,208,0,1,252,0,63,255,255,255,255,208,0,1,252,0,63,255,234,81,252,0,0,1,252,0,20,0,0,1,252,0,0,1,252,0,0,0,0,1,252,0,0,1,252,0,0,0,0,1,252,0,0,1,252,0,0,0,0,0,168,0, + // 0x8f38 輸 + 56,143,38,38,124,40,1,252,0,3,240,0,0,0,106,64,0,0,0,3,240,0,0,0,255,192,0,0,0,3,240,0,0,1,255,224,0,0,0,3,240,0,0,3,255,248,0,0,63,255,255,255,64,15,242,253,0,0,63,255,255,255,64,47,208,255,64,0,63,255,255,255,64,191,128,63,208,0,0,7,244,0,2,255,0,31,244,0,0,3,240,0,11,252,0,7,254,0,0,3,240,0,63,240,0,1,255,208,26,175,254,170,255,255,255,255,127,240,31,255,255,254,255,191,255,255,31,192,31,255,255,254,189,63,255,255,3,128,31,66,224,62,52,0,0,0,0,0,31,66,224,62,0,0,0,0,0,0,31,66,224,62,0,0,0,0,21,0,31,171,250,190,42,170,160,0,47,64,31,255,255,254,63,255,240,168,47,64,31,255,255,254,63,255,240,252,47,64,31,66,224,62,63,1,240,252,47,64,31,66,224,62,63,1,240,252,47,64,31,66,224,62,63,170,240,252,47,64,31,255,255,254,63,255,240,252,47,64,31,255,255,254,63,255,240,252,47,64,26,171,250,169,63,1,240,252,47,64,0,3,240,0,63,1,240,252,47,64,0,3,240,0,63,1,240,252,47,64,21,87,245,85,63,171,240,252,47,64,127,255,255,255,63,255,240,252,47,64,127,255,255,255,63,255,240,252,47,64,127,255,255,255,63,1,240,252,47,64,0,3,240,0,63,1,240,84,47,64,0,3,240,0,63,1,240,0,47,64,0,3,240,0,63,1,240,0,47,64,0,3,240,0,63,1,240,0,47,64,0,3,240,0,63,31,240,47,255,0,0,3,240,0,63,15,240,15,255,0,0,3,240,0,21,6,64,10,164,0, + // 0x8f49 轉 + 73,143,38,38,124,40,1,252,0,2,248,0,0,0,47,64,0,0,0,2,248,0,0,0,47,128,0,0,0,2,248,0,0,0,47,128,0,0,0,2,248,0,47,255,255,255,255,192,0,3,254,170,111,255,255,255,255,192,63,255,255,255,159,255,255,255,255,128,63,255,255,255,128,0,47,128,0,0,63,255,255,255,128,0,47,128,0,0,0,2,248,0,15,255,255,255,255,0,0,2,248,0,15,255,255,255,255,0,10,171,254,170,15,192,47,128,63,0,15,255,255,255,15,192,47,128,63,0,15,255,255,255,15,255,255,255,255,0,15,129,240,47,15,255,255,255,255,0,15,129,240,47,15,208,47,128,63,0,15,129,240,47,15,192,47,128,63,0,15,234,250,191,15,255,255,255,255,0,15,255,255,255,15,255,255,255,255,0,15,255,255,255,0,0,47,130,244,0,15,129,240,47,0,0,47,131,248,0,15,129,240,47,0,0,47,129,254,0,15,129,240,47,63,255,255,255,255,0,15,255,255,255,63,255,255,255,255,192,15,255,255,255,47,234,170,169,95,208,10,171,254,170,0,0,0,47,134,0,0,2,248,0,0,0,0,63,128,0,0,2,248,0,63,255,255,255,255,208,21,87,248,0,63,255,255,255,255,208,127,255,255,255,255,255,255,255,255,208,127,255,255,255,192,180,0,63,128,0,127,255,255,255,194,253,0,63,128,0,0,2,248,0,0,255,0,63,128,0,0,2,248,0,0,63,192,63,128,0,0,2,248,0,0,31,192,63,128,0,0,2,248,0,0,14,0,63,128,0,0,2,248,0,0,0,191,255,128,0,0,2,248,0,0,0,63,255,0,0,0,2,248,0,0,0,63,248,0,0, + // 0x8fd1 近 + 209,143,38,38,124,40,1,252,0,0,0,0,0,0,0,2,0,0,1,64,0,0,0,0,1,191,208,0,11,224,0,0,0,5,191,255,244,0,31,252,0,2,234,255,255,255,228,0,7,255,0,2,255,255,255,249,0,0,1,255,192,2,255,255,229,0,0,0,0,63,240,2,254,80,0,0,0,0,0,15,248,2,252,0,0,0,0,0,0,3,224,2,252,0,0,0,0,0,0,1,128,2,252,0,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,0,2,252,0,0,0,0,0,0,0,0,2,255,255,255,255,255,192,0,0,0,2,255,255,255,255,255,192,0,0,0,2,255,255,255,255,255,192,0,0,0,2,253,85,95,245,85,64,63,255,240,3,252,0,15,240,0,0,63,255,240,3,248,0,15,240,0,0,63,255,240,3,248,0,15,240,0,0,21,95,240,3,244,0,15,240,0,0,0,15,240,7,240,0,15,240,0,0,0,15,240,11,240,0,15,240,0,0,0,15,240,15,224,0,15,240,0,0,0,15,240,31,208,0,15,240,0,0,0,15,240,63,192,0,15,240,0,0,0,15,240,127,128,0,15,240,0,0,0,15,240,255,0,0,15,240,0,0,0,15,243,254,0,0,15,240,0,0,0,15,242,252,0,0,15,240,0,0,0,15,240,180,0,0,15,240,0,0,0,127,252,16,0,0,15,240,0,0,2,255,255,64,0,0,6,144,0,0,15,255,191,244,0,0,0,0,0,0,127,252,47,255,250,170,170,170,171,208,63,224,11,255,255,255,255,255,255,192,47,128,0,191,255,255,255,255,255,128,13,0,0,6,191,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0, + // 0x8fd4 返 + 212,143,38,37,114,40,1,252,1,64,0,0,0,0,0,0,0,0,11,224,0,11,255,255,255,255,255,0,31,252,0,11,255,255,255,255,255,0,7,255,0,11,255,255,255,255,255,0,1,255,192,11,245,85,85,85,85,0,0,127,224,11,240,0,0,0,0,0,0,31,244,11,240,0,0,0,0,0,0,11,224,11,240,0,0,0,0,0,0,3,64,11,240,0,0,0,0,0,0,0,0,11,245,85,85,85,64,0,0,0,0,11,255,255,255,255,248,0,0,0,0,15,255,255,255,255,244,0,0,0,0,15,255,255,255,255,240,0,0,0,0,15,251,240,0,15,240,0,0,0,0,15,243,248,0,31,208,0,63,255,208,15,226,252,0,63,192,0,63,255,208,15,225,253,0,127,128,0,63,255,208,15,208,255,0,255,0,0,21,111,208,31,208,127,194,254,0,0,0,15,208,31,192,47,215,252,0,0,0,15,208,63,192,15,255,244,0,0,0,15,208,63,192,7,255,224,0,0,0,15,208,127,64,3,255,192,0,0,0,15,208,191,0,7,255,208,0,0,0,15,208,255,0,47,255,248,0,0,0,15,209,253,0,255,255,255,64,0,0,15,211,252,27,255,195,255,248,0,0,15,219,244,255,254,0,191,255,128,0,31,242,240,127,244,0,31,255,128,0,191,248,80,47,64,0,1,255,0,2,255,255,0,4,0,0,0,29,0,15,254,255,228,0,0,0,0,0,0,127,248,63,255,234,149,86,170,170,208,63,224,11,255,255,255,255,255,255,192,47,64,1,255,255,255,255,255,255,128,13,0,0,6,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0, + // 0x9000 退 + 0,144,38,37,114,40,1,252,0,64,0,0,0,0,0,0,0,0,3,224,0,3,255,255,255,255,208,0,15,252,0,3,255,255,255,255,208,0,7,255,64,3,255,255,255,255,208,0,0,255,208,3,248,0,0,15,208,0,0,63,244,3,248,0,0,15,208,0,0,15,252,3,248,0,0,15,208,0,0,3,240,3,255,255,255,255,208,0,0,0,128,3,255,255,255,255,208,0,0,0,0,3,255,255,255,255,208,0,0,0,0,3,248,0,0,15,208,0,0,0,0,3,248,0,0,15,208,0,0,0,0,3,248,0,0,15,208,0,0,0,0,3,255,255,255,255,208,0,0,0,0,3,255,255,255,255,208,0,63,255,240,3,255,255,255,255,224,0,63,255,240,3,248,7,244,0,120,0,63,255,240,3,248,3,248,1,255,0,21,95,240,3,248,1,252,11,255,0,0,15,240,3,248,0,254,63,244,0,0,15,240,3,248,0,191,255,192,0,0,15,240,3,248,0,63,253,0,0,0,15,240,3,248,0,47,240,0,0,0,15,240,3,248,0,15,248,0,0,0,15,240,3,248,27,231,255,0,0,0,15,240,3,255,255,241,255,208,0,0,15,240,111,255,255,240,127,253,0,0,15,240,191,255,254,64,31,255,192,0,15,240,127,254,64,0,7,255,0,0,127,252,62,64,0,0,0,125,0,2,255,255,64,0,0,0,0,4,0,15,255,191,244,0,0,0,0,0,0,127,252,47,255,250,170,170,170,171,208,63,224,11,255,255,255,255,255,255,192,47,128,0,191,255,255,255,255,255,128,13,0,0,6,191,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0, + // 0x901f 速 + 31,144,38,38,124,40,1,252,0,0,0,0,0,11,224,0,0,0,1,128,0,0,0,15,224,0,0,0,11,240,0,0,0,15,224,0,0,0,31,253,0,0,0,15,224,0,0,0,7,255,64,255,255,255,255,255,255,128,0,255,208,255,255,255,255,255,255,128,0,63,244,255,255,255,255,255,255,128,0,15,248,0,0,15,240,0,0,0,0,3,208,0,0,15,224,0,0,0,0,1,64,0,0,15,224,0,0,0,0,0,0,47,255,255,255,255,252,0,0,0,0,47,255,255,255,255,252,0,0,0,0,47,255,255,255,255,252,0,0,0,0,47,128,15,224,2,252,0,0,0,0,47,128,15,224,2,252,0,0,0,0,47,128,15,224,2,252,0,63,255,240,47,128,15,224,2,252,0,63,255,240,47,128,15,224,2,252,0,63,255,240,47,255,255,255,255,252,0,21,95,240,47,255,255,255,255,252,0,0,15,240,47,255,255,255,255,252,0,0,15,240,0,0,255,254,0,0,0,0,15,240,0,3,255,255,128,0,0,0,15,240,0,15,255,255,224,0,0,0,15,240,0,63,223,231,252,0,0,0,15,240,1,255,79,225,255,64,0,0,15,240,11,253,15,224,127,240,0,0,15,240,127,244,15,224,31,254,0,0,15,242,255,208,15,224,7,255,128,0,15,240,255,0,15,224,0,254,0,0,127,252,52,0,15,224,0,28,0,2,255,255,64,0,15,224,0,0,0,15,255,191,244,0,0,0,0,0,0,127,252,47,255,250,170,170,170,171,208,63,224,11,255,255,255,255,255,255,192,47,128,0,191,255,255,255,255,255,128,13,0,0,6,191,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0, + // 0x9023 連 + 35,144,36,38,86,40,2,252,0,0,0,0,0,42,0,0,0,0,0,0,0,0,127,64,0,0,31,0,0,0,0,127,64,0,0,127,208,0,0,0,127,64,0,0,63,244,11,255,255,255,255,255,252,15,253,11,255,255,255,255,255,252,2,255,11,255,255,255,255,255,252,0,255,192,0,0,127,64,0,0,0,63,128,0,0,127,64,0,0,0,13,0,255,255,255,255,255,208,0,0,0,255,255,255,255,255,208,0,0,0,255,170,191,234,175,208,0,0,0,253,0,127,64,31,208,0,0,0,253,0,127,64,31,208,0,0,0,255,170,191,170,175,208,0,0,0,255,255,255,255,255,208,255,255,64,255,255,255,255,255,208,255,255,64,253,0,127,64,31,208,255,255,64,253,0,127,64,31,208,85,191,64,253,0,127,64,31,208,0,127,64,255,255,255,255,255,208,0,127,64,255,255,255,255,255,208,0,127,64,170,170,255,234,170,128,0,127,64,0,0,127,64,0,0,0,127,64,0,0,127,64,0,0,0,127,79,255,255,255,255,255,254,0,127,79,255,255,255,255,255,254,0,127,79,255,255,255,255,255,254,0,127,64,0,0,127,64,0,0,0,127,128,0,0,127,64,0,0,1,255,208,0,0,127,64,0,0,11,255,248,0,0,127,64,0,0,63,251,255,64,0,0,0,0,0,255,208,255,254,149,85,85,86,170,255,64,63,255,255,255,255,255,255,189,0,7,255,255,255,255,255,254,52,0,0,27,255,255,255,255,253,0,0,0,0,0,0,0,0,0, + // 0x9032 進 + 50,144,36,38,86,40,2,252,0,0,0,0,144,0,16,0,0,9,0,0,0,255,0,63,192,0,63,128,0,2,254,0,127,128,0,127,224,0,3,252,0,191,0,0,31,252,0,11,248,0,255,0,0,7,255,0,31,240,1,253,0,0,1,255,128,63,255,255,255,255,252,0,127,192,191,255,255,255,255,252,0,47,1,255,255,255,255,255,252,0,8,7,255,192,7,248,0,0,0,0,15,255,128,3,244,0,0,0,0,63,255,128,3,244,0,0,0,0,255,255,128,3,244,0,0,0,0,255,191,255,255,255,255,240,0,0,62,63,255,255,255,255,240,0,0,8,63,255,255,255,255,240,255,255,64,63,128,3,244,0,0,255,255,64,63,128,3,244,0,0,255,255,64,63,128,3,244,0,0,85,191,64,63,128,3,244,0,0,0,127,64,63,255,255,255,255,224,0,127,64,63,255,255,255,255,224,0,127,64,63,255,255,255,255,224,0,127,64,63,128,3,244,0,0,0,127,64,63,128,3,244,0,0,0,127,64,63,128,3,244,0,0,0,127,64,63,128,7,248,0,0,0,127,64,63,255,255,255,255,253,0,127,64,63,255,255,255,255,253,0,127,128,63,255,255,255,255,253,1,255,208,0,0,0,0,0,0,11,255,248,0,0,0,0,0,0,63,251,255,64,0,0,0,0,0,255,208,255,254,149,85,85,86,170,255,64,63,255,255,255,255,255,255,189,0,7,255,255,255,255,255,254,52,0,0,27,255,255,255,255,253,0,0,0,0,0,0,0,0,0, + // 0x904b 運 + 75,144,36,37,77,40,2,252,5,0,6,170,170,170,170,170,168,47,64,7,255,255,255,255,255,252,191,224,7,255,255,255,255,255,252,47,248,7,240,0,0,0,0,252,11,254,7,240,0,42,64,0,252,2,255,70,160,0,63,128,0,168,0,191,192,0,0,63,128,0,0,0,63,130,255,255,255,255,255,240,0,13,2,255,255,255,255,255,240,0,0,1,170,170,191,234,170,160,0,0,0,0,0,63,128,0,0,0,0,0,21,85,127,149,85,64,0,0,0,127,255,255,255,255,192,0,0,0,127,255,255,255,255,192,0,0,0,126,0,63,128,15,192,255,255,64,126,0,63,128,15,192,255,255,64,127,255,255,255,255,192,255,255,64,127,255,255,255,255,192,85,191,64,127,0,127,128,31,192,0,127,64,126,0,63,128,15,192,0,127,64,126,0,63,128,15,192,0,127,64,127,255,255,255,255,192,0,127,64,127,255,255,255,255,192,0,127,64,21,85,127,149,85,64,0,127,64,0,0,63,128,0,0,0,127,79,255,255,255,255,255,254,0,127,79,255,255,255,255,255,255,0,127,79,255,255,255,255,255,255,0,127,128,0,0,63,128,0,0,1,255,208,0,0,63,128,0,0,11,255,248,0,0,63,128,0,0,63,251,255,64,0,21,0,0,0,255,208,255,254,149,85,85,86,170,255,64,63,255,255,255,255,255,255,189,0,7,255,255,255,255,255,254,52,0,0,27,255,255,255,255,253,0,0,0,0,0,0,0,0,0, + // 0x9054 達 + 84,144,37,38,124,40,1,252,0,0,0,0,0,15,208,0,0,0,1,64,0,0,0,15,224,0,0,0,11,208,0,0,0,15,224,0,0,0,47,248,0,31,255,255,255,255,240,0,11,254,0,31,255,255,255,255,240,0,2,255,128,26,170,175,250,170,160,0,0,127,208,0,0,15,224,0,0,0,0,47,240,0,0,15,224,0,0,0,0,11,210,170,170,191,250,170,170,128,0,3,3,255,255,255,255,255,255,192,0,0,3,255,255,255,255,255,255,192,0,0,0,0,253,0,0,253,0,0,0,0,0,0,191,0,2,253,0,0,0,0,0,0,127,64,3,252,0,0,0,0,0,0,63,128,7,240,0,0,0,0,0,170,191,234,171,250,170,0,63,255,209,255,255,255,255,255,255,64,63,255,209,255,255,255,255,255,255,64,63,255,208,0,0,15,224,0,0,0,21,111,208,0,0,15,224,0,0,0,0,31,208,42,170,175,250,170,168,0,0,31,208,63,255,255,255,255,252,0,0,31,208,63,255,255,255,255,252,0,0,31,208,0,0,15,224,0,0,0,0,31,208,0,0,15,224,0,0,0,0,31,209,255,255,255,255,255,255,64,0,31,210,255,255,255,255,255,255,64,0,31,210,255,255,255,255,255,255,64,0,31,208,0,0,15,224,0,0,0,0,47,224,0,0,15,224,0,0,0,0,191,248,0,0,15,224,0,0,0,2,255,254,0,0,10,144,0,0,0,15,254,255,224,0,0,0,0,0,0,127,244,63,255,165,85,85,85,170,128,63,208,15,255,255,255,255,255,255,192,47,64,1,255,255,255,255,255,255,128,13,0,0,6,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0, + // 0x9078 選 + 120,144,38,37,114,40,1,252,2,0,1,85,85,80,85,85,84,0,31,192,3,255,255,244,255,255,253,0,63,240,3,255,255,244,255,255,253,0,15,252,0,0,3,244,0,0,253,0,3,255,0,0,3,244,0,0,253,0,0,255,128,170,171,244,42,170,253,0,0,127,209,255,255,244,127,255,253,0,0,47,193,255,255,244,127,255,253,0,0,13,1,248,0,0,127,0,0,0,0,0,1,252,0,57,127,0,11,128,0,0,0,254,170,254,63,170,175,192,0,0,0,255,255,252,63,255,255,128,0,0,0,47,255,244,11,255,254,0,0,0,0,0,21,64,1,80,0,0,0,0,0,0,63,128,11,240,0,0,63,255,192,0,63,128,11,240,0,0,63,255,193,170,191,234,175,250,170,0,63,255,193,255,255,255,255,255,254,0,21,127,193,255,255,255,255,255,254,0,0,47,192,0,63,128,11,240,0,0,0,47,192,0,63,128,11,240,0,0,0,47,192,0,63,128,11,240,0,0,0,47,203,255,255,255,255,255,255,192,0,47,203,255,255,255,255,255,255,192,0,47,203,255,255,255,255,255,255,192,0,47,192,0,10,0,0,128,0,0,0,47,192,0,127,208,11,248,0,0,0,47,192,7,255,128,7,255,128,0,0,47,192,127,253,0,0,127,244,0,0,191,241,255,224,0,0,15,254,0,2,255,252,62,0,0,0,2,254,0,15,254,255,144,0,0,0,0,80,0,63,244,127,254,85,0,0,21,85,144,127,208,31,255,255,255,255,255,255,192,63,64,2,255,255,255,255,255,255,192,28,0,0,27,255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0, + // 0x9084 還 + 132,144,36,37,77,40,2,252,10,0,2,255,255,255,255,255,240,127,192,2,255,255,255,255,255,240,127,240,2,248,31,192,253,11,240,31,252,2,248,15,128,252,7,240,7,254,2,248,15,128,252,7,240,1,255,130,248,15,128,252,7,240,0,191,194,255,255,255,255,255,240,0,47,66,255,255,255,255,255,240,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,255,255,255,255,255,255,0,0,47,255,255,255,255,255,255,0,0,26,170,170,170,170,170,170,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,255,255,128,255,255,64,127,255,255,255,255,128,255,255,64,127,0,0,0,63,128,255,255,64,127,0,0,0,63,128,85,191,64,127,0,0,0,63,128,0,127,64,127,0,0,0,63,128,0,127,64,127,255,255,255,255,128,0,127,64,127,255,255,255,255,208,0,127,64,0,7,255,64,11,248,0,127,64,0,47,255,208,47,224,0,127,64,1,255,255,248,255,64,0,127,64,31,254,255,255,252,0,0,127,66,255,244,191,127,244,0,0,127,79,255,128,191,15,255,144,0,127,135,253,0,191,1,255,253,1,255,209,128,0,191,0,31,248,11,255,248,0,0,191,0,0,160,63,251,255,64,0,106,0,0,0,255,208,255,254,149,85,85,86,170,255,64,63,255,255,255,255,255,255,189,0,7,255,255,255,255,255,254,52,0,0,27,255,255,255,255,253,0,0,0,0,0,0,0,0,0, + // 0x908a 邊 + 138,144,38,38,124,40,1,252,0,0,0,0,0,15,144,0,0,0,1,244,0,0,0,31,192,0,0,0,7,254,0,15,255,255,255,255,208,0,2,255,192,15,250,170,170,175,208,0,0,127,240,15,224,0,0,15,208,0,0,15,252,15,250,170,170,175,208,0,0,3,240,15,255,255,255,255,208,0,0,0,128,15,224,0,0,15,208,0,0,0,0,15,250,170,170,175,208,0,7,128,0,15,255,255,255,255,208,0,31,244,0,15,224,0,0,15,208,0,47,254,0,15,224,0,0,15,208,0,7,255,128,15,255,255,255,255,208,0,0,191,224,10,170,191,250,170,144,0,0,31,192,0,0,15,192,0,0,0,0,7,2,255,255,255,255,255,255,64,0,0,2,255,255,255,255,255,255,64,0,0,2,248,7,208,188,1,63,64,0,0,2,248,31,192,189,3,255,64,63,255,192,1,255,0,127,255,192,0,63,255,192,127,252,15,255,255,64,0,63,255,192,63,144,15,192,0,0,0,21,111,192,20,0,31,208,0,0,0,0,31,195,255,255,255,255,255,255,128,0,31,195,255,255,255,255,255,255,128,0,31,192,0,7,240,0,0,0,0,0,31,192,0,11,255,255,255,128,0,0,31,192,0,47,255,255,255,64,0,0,31,192,0,191,64,0,63,64,0,0,47,192,11,254,0,0,63,0,0,0,127,241,255,244,0,0,191,0,0,2,255,252,191,64,2,255,253,0,0,15,254,255,244,0,1,255,244,0,0,127,244,127,255,165,85,85,85,90,144,127,208,31,255,255,255,255,255,255,192,63,64,1,255,255,255,255,255,255,128,29,0,0,10,255,255,255,255,255,64,0,0,0,0,0,0,0,0,0,0, + // 0x90e8 部 + 232,144,38,38,124,40,1,252,0,0,21,64,0,0,0,0,0,0,0,0,47,192,0,0,0,0,0,0,0,0,47,192,0,1,85,85,88,0,0,0,47,192,0,7,255,255,255,128,0,0,47,192,0,7,255,255,255,208,31,255,255,255,255,135,255,255,255,192,31,255,255,255,255,135,244,0,191,64,31,255,255,255,255,135,244,0,255,0,0,4,0,1,64,7,244,1,254,0,0,189,0,3,244,7,244,2,252,0,0,191,0,7,240,7,244,3,252,0,0,63,0,15,224,7,244,7,244,0,0,63,64,15,208,7,244,15,240,0,0,47,128,31,192,7,244,15,224,0,0,47,128,47,64,7,244,47,192,0,21,105,85,86,85,71,244,63,128,0,127,255,255,255,255,199,244,127,128,0,127,255,255,255,255,199,244,63,208,0,127,255,255,255,255,199,244,15,240,0,0,0,0,0,0,7,244,3,252,0,0,0,0,0,0,7,244,1,253,0,0,0,0,0,0,7,244,0,255,0,0,85,85,85,84,7,244,0,127,0,3,255,255,255,252,7,244,0,63,128,3,255,255,255,252,7,244,0,63,128,3,255,255,255,252,7,244,0,63,192,3,248,0,1,252,7,244,0,63,192,3,248,0,1,252,7,244,0,63,128,3,248,0,1,252,7,244,0,255,128,3,248,0,1,252,7,244,255,255,64,3,248,0,1,252,7,244,191,255,0,3,248,0,1,252,7,244,127,252,0,3,255,255,255,252,7,244,42,144,0,3,255,255,255,252,7,244,0,0,0,3,255,255,255,252,7,244,0,0,0,3,252,0,2,252,7,244,0,0,0,3,248,0,1,252,7,244,0,0,0,2,164,0,0,84,7,240,0,0,0, + // 0x91cb 釋 + 203,145,38,38,124,40,1,252,0,0,0,16,0,0,0,0,0,0,0,0,27,248,42,170,170,170,170,0,1,107,255,254,63,255,255,255,255,0,63,255,255,244,63,255,255,255,255,0,63,255,248,0,63,7,192,240,63,0,25,67,244,0,63,7,192,240,63,0,1,3,244,61,63,7,192,240,63,0,15,67,244,63,63,7,192,240,63,0,15,195,244,127,63,175,234,250,191,0,15,195,244,189,63,255,255,255,255,0,7,211,244,252,63,255,255,255,255,0,3,227,244,248,0,0,127,0,0,0,3,243,246,240,0,0,127,0,0,0,3,211,245,240,15,255,255,255,252,0,0,3,244,0,15,255,255,255,252,0,127,255,255,255,6,170,191,170,168,0,127,255,255,255,0,0,127,0,0,0,127,255,255,255,0,0,127,0,0,0,0,15,244,0,255,255,255,255,255,208,0,31,244,0,255,255,255,255,255,208,0,47,253,0,170,254,170,175,234,128,0,63,255,64,0,252,0,15,192,0,0,127,255,208,0,253,0,31,128,0,0,255,255,244,0,127,0,63,0,0,1,251,246,253,0,63,0,125,0,0,3,243,244,254,191,255,255,255,255,128,7,227,244,60,191,255,255,255,255,128,15,211,244,16,106,170,255,170,170,64,47,195,244,0,0,0,127,0,0,0,127,67,244,0,0,0,127,0,0,0,127,3,244,0,47,255,255,255,254,0,45,3,244,0,47,255,255,255,254,0,24,3,244,0,26,170,255,170,169,0,0,3,244,0,0,0,127,0,0,0,0,3,244,0,0,0,127,0,0,0,0,3,244,0,0,0,127,0,0,0,0,3,244,0,0,0,127,0,0,0,0,2,240,0,0,0,127,0,0,0, + // 0x91cd 重 + 205,145,36,37,77,40,2,253,0,0,0,0,0,0,21,180,0,0,0,0,85,170,255,255,252,0,1,255,255,255,255,255,255,254,0,0,255,255,255,255,255,250,80,0,0,255,255,255,255,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,106,170,170,255,170,170,169,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,0,254,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,85,85,255,85,85,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,0,254,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,170,170,255,170,170,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x91cf 量 + 207,145,36,36,68,40,2,253,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,192,0,0,0,3,252,0,0,63,128,0,0,0,3,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,63,128,0,0,0,3,252,0,0,63,128,0,0,0,3,252,0,0,63,255,255,255,255,255,252,0,0,63,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,170,170,170,170,170,170,170,170,170,0,0,0,0,0,0,0,0,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,0,255,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,191,0,0,255,0,0,255,0,0,191,0,0,254,0,0,255,0,0,191,255,255,255,255,255,255,0,0,191,255,255,255,255,255,255,0,0,0,0,0,255,0,0,0,0,0,0,0,0,254,0,0,0,0,1,170,170,170,255,170,170,170,64,2,255,255,255,255,255,255,255,128,2,255,255,255,255,255,255,255,128,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x91dd 針 + 221,145,38,38,124,40,1,252,0,0,254,0,0,0,5,80,0,0,0,2,255,192,0,0,15,224,0,0,0,3,255,240,0,0,15,224,0,0,0,11,255,252,0,0,15,224,0,0,0,15,243,255,0,0,15,224,0,0,0,63,208,255,192,0,15,224,0,0,0,191,128,63,240,0,15,224,0,0,1,255,0,15,252,0,15,224,0,0,3,252,0,3,252,0,15,224,0,0,15,244,0,1,240,0,15,224,0,0,127,240,0,0,128,0,15,224,0,0,191,255,255,255,0,0,15,224,0,0,47,255,255,255,0,0,15,224,0,0,8,255,255,255,10,170,175,250,170,144,0,0,254,0,15,255,255,255,255,208,0,0,254,0,15,255,255,255,255,208,0,0,254,0,15,255,255,255,255,208,5,85,255,85,80,0,15,224,0,0,31,255,255,255,240,0,15,224,0,0,31,255,255,255,240,0,15,224,0,0,31,255,255,255,240,0,15,224,0,0,0,0,254,0,0,0,15,224,0,0,0,0,254,1,0,0,15,224,0,0,7,192,254,11,224,0,15,224,0,0,7,208,254,15,208,0,15,224,0,0,3,224,254,15,192,0,15,224,0,0,3,240,254,31,128,0,15,224,0,0,2,240,254,47,64,0,15,224,0,0,1,244,254,63,0,0,15,224,0,0,1,248,254,46,0,0,15,224,0,0,0,144,254,0,16,0,15,224,0,0,0,0,255,111,244,0,15,224,0,0,0,22,255,255,244,0,15,224,0,0,47,255,255,255,244,0,15,224,0,0,63,255,255,250,64,0,15,224,0,0,47,255,164,0,0,0,15,224,0,0,30,80,0,0,0,0,15,224,0,0,0,0,0,0,0,0,10,160,0,0, + // 0x9215 鈕 + 21,146,38,37,114,40,1,253,0,3,248,0,0,0,0,0,0,0,0,11,254,0,0,0,0,0,0,0,0,15,255,128,10,170,170,170,160,0,0,47,255,240,15,255,255,255,244,0,0,63,207,252,15,255,255,255,244,0,0,255,3,254,15,255,255,255,244,0,2,254,0,255,128,11,240,7,244,0,7,252,0,127,192,15,240,7,244,0,31,240,0,31,128,15,224,7,244,0,127,208,0,10,0,15,224,7,240,0,191,255,255,252,0,15,224,7,240,0,47,255,255,252,0,15,208,7,240,0,7,255,255,252,0,15,208,7,240,0,0,3,248,0,0,15,208,7,240,0,0,3,244,0,0,31,192,7,240,0,0,3,244,0,0,31,192,7,240,0,0,3,244,0,0,31,192,11,240,0,47,255,255,255,63,255,255,255,255,208,47,255,255,255,63,255,255,255,255,208,47,255,255,255,63,255,255,255,255,208,0,3,248,0,42,191,234,175,250,144,0,3,244,0,0,63,128,11,240,0,1,67,244,61,0,63,128,15,240,0,15,131,244,62,0,63,64,15,240,0,11,195,244,125,0,63,64,15,224,0,7,211,244,188,0,127,0,15,224,0,3,227,244,252,0,127,0,15,224,0,3,227,244,248,0,191,0,15,224,0,3,243,245,240,0,191,0,15,224,0,2,243,244,176,0,191,0,15,208,0,0,3,244,1,64,254,0,15,208,0,0,3,250,191,128,254,0,31,208,0,0,91,255,255,128,253,0,31,208,0,63,255,255,255,255,255,255,255,255,208,63,255,255,147,255,255,255,255,255,208,47,254,64,3,255,255,255,255,255,208,25,0,0,1,170,170,170,170,170,144, + // 0x932f 錯 + 47,147,38,38,124,40,1,252,0,3,248,0,0,63,64,63,64,0,0,11,254,0,0,63,64,63,64,0,0,15,255,128,0,63,64,63,64,0,0,47,255,240,0,63,64,63,64,0,0,63,143,252,0,63,64,63,64,0,0,255,3,254,47,255,255,255,255,64,2,254,0,255,175,255,255,255,255,64,7,252,0,127,255,255,255,255,255,64,31,240,0,31,128,63,64,63,64,0,127,208,0,10,0,63,64,63,64,0,191,255,255,252,0,63,64,63,64,0,47,255,255,252,0,63,64,63,64,0,7,255,255,252,0,63,64,63,64,0,0,3,248,0,85,127,149,127,149,64,0,3,244,0,255,255,255,255,255,208,0,3,244,0,255,255,255,255,255,208,0,3,244,0,255,255,255,255,255,208,47,255,255,255,0,0,0,0,0,0,47,255,255,255,0,0,0,0,0,0,47,255,255,255,0,0,0,0,0,0,0,3,248,0,3,255,255,255,252,0,0,3,244,0,3,255,255,255,252,0,1,67,244,57,3,255,255,255,252,0,15,131,244,63,3,244,0,1,252,0,11,195,244,125,3,244,0,1,252,0,7,211,244,188,3,244,0,1,252,0,3,227,244,252,3,255,255,255,252,0,3,227,244,248,3,255,255,255,252,0,3,243,245,240,3,255,255,255,252,0,2,243,244,176,3,244,0,1,252,0,0,3,244,1,67,244,0,1,252,0,0,3,254,255,131,244,0,1,252,0,0,111,255,255,131,244,0,1,252,0,63,255,255,255,131,255,255,255,252,0,63,255,255,144,3,255,255,255,252,0,47,254,64,0,3,255,255,255,252,0,25,0,0,0,3,244,0,1,252,0,0,0,0,0,2,160,0,1,168,0, + // 0x9375 鍵 + 117,147,38,38,124,40,1,252,0,7,224,0,0,0,2,240,0,0,0,15,248,0,0,0,3,244,0,0,0,31,254,0,0,0,3,244,0,0,0,63,255,75,255,226,255,255,254,0,0,191,127,203,255,226,255,255,254,0,0,254,15,255,255,194,255,255,254,0,3,252,7,253,95,192,3,244,62,0,11,244,2,252,31,128,3,244,62,0,31,224,0,240,47,64,3,244,63,64,127,192,0,64,63,31,255,255,255,224,255,255,255,208,126,31,255,255,255,224,63,255,255,208,189,31,255,255,255,224,11,255,255,208,252,0,3,244,62,0,0,11,208,1,252,0,3,244,62,0,0,11,208,2,248,1,255,255,254,0,0,11,208,3,255,250,255,255,254,0,0,11,208,7,255,246,255,255,254,0,63,255,255,251,255,244,3,244,0,0,63,255,255,246,194,244,3,244,0,0,63,255,255,240,2,240,3,244,0,0,0,15,208,0,67,243,255,255,255,0,0,11,208,7,195,243,255,255,255,0,6,11,211,231,211,227,255,255,255,0,15,11,211,227,215,224,3,244,0,0,15,75,211,211,251,208,3,244,0,0,15,139,215,194,255,192,3,244,0,0,11,203,215,193,255,207,255,255,255,192,7,203,219,128,255,79,255,255,255,192,7,203,223,64,191,15,255,255,255,192,3,203,209,0,127,0,3,244,0,0,1,11,208,0,255,128,3,244,0,0,0,11,235,246,255,208,3,244,0,0,0,31,255,251,255,248,2,240,0,0,47,255,255,255,243,255,144,0,0,0,63,255,254,191,192,255,255,255,255,224,63,254,65,255,64,47,255,255,255,192,25,0,0,189,0,1,191,255,255,192,0,0,0,32,0,0,0,0,0,0, + // 0x9577 長 + 119,149,36,36,68,40,2,252,0,3,255,255,255,255,255,255,0,0,3,255,255,255,255,255,255,0,0,3,255,255,255,255,255,255,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,255,255,255,255,255,248,0,0,3,255,255,255,255,255,248,0,0,3,255,255,255,255,255,248,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,3,255,255,255,255,255,248,0,0,3,255,255,255,255,255,248,0,0,3,255,255,255,255,255,248,0,0,3,252,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,85,87,253,85,85,85,85,85,84,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,3,252,0,191,0,0,7,0,0,3,252,0,63,128,0,47,208,0,3,252,0,47,208,1,255,224,0,3,252,0,15,240,11,255,64,0,3,252,0,11,252,127,248,0,0,3,252,0,3,255,255,192,0,0,3,252,0,0,255,253,0,0,0,3,252,0,0,63,248,0,0,0,3,252,0,22,95,255,64,0,0,3,253,175,255,131,255,244,0,0,91,255,255,255,128,191,255,144,15,255,255,255,255,64,31,255,255,11,255,255,249,64,0,2,255,254,7,255,148,0,0,0,0,31,252,1,64,0,0,0,0,0,0,100, + // 0x9589 閉 + 137,149,34,36,68,40,3,252,127,255,255,253,7,255,255,255,224,127,255,255,253,7,255,255,255,224,127,255,255,253,7,255,255,255,224,127,64,0,253,7,240,0,15,224,127,64,0,253,7,240,0,15,224,127,170,170,253,7,250,170,175,224,127,255,255,253,7,255,255,255,224,127,255,255,253,7,255,255,255,224,127,64,0,253,7,240,0,15,224,127,64,0,253,7,240,0,15,224,127,64,0,253,7,240,0,15,224,127,234,171,253,7,254,170,191,224,127,255,255,253,7,255,255,255,224,127,255,255,253,7,255,255,255,224,127,64,0,0,0,0,0,15,224,127,64,0,0,15,208,0,15,224,127,64,0,0,15,208,0,15,224,127,64,0,0,15,208,0,15,224,127,67,255,255,255,255,252,15,224,127,67,255,255,255,255,252,15,224,127,67,255,255,255,255,252,15,224,127,64,0,0,255,208,0,15,224,127,64,0,3,255,208,0,15,224,127,64,0,11,255,208,0,15,224,127,64,0,47,239,208,0,15,224,127,64,0,255,143,208,0,15,224,127,64,3,254,15,208,0,15,224,127,64,31,248,15,208,0,15,224,127,64,255,224,15,208,0,15,224,127,75,255,128,15,208,0,15,224,127,71,253,0,15,208,0,15,224,127,66,224,0,15,208,0,31,224,127,64,64,15,255,195,255,255,208,127,64,0,11,255,193,255,255,192,127,64,0,7,254,0,255,255,128,127,0,0,0,0,0,170,164,0, + // 0x958b 開 + 139,149,34,36,68,40,3,252,127,255,255,253,11,255,255,255,224,127,255,255,253,11,255,255,255,224,127,255,255,253,11,255,255,255,224,127,0,0,253,11,240,0,15,224,127,0,0,253,11,240,0,15,224,127,170,170,253,11,250,170,175,224,127,255,255,253,11,255,255,255,224,127,255,255,253,11,255,255,255,224,127,0,0,253,11,240,0,15,224,127,0,0,253,11,240,0,15,224,127,0,0,253,11,240,0,15,224,127,255,255,253,11,255,255,255,224,127,255,255,253,11,255,255,255,224,127,234,170,169,6,170,170,175,224,127,0,0,0,0,0,0,15,224,127,0,0,0,0,0,0,15,224,127,2,255,255,255,255,248,15,224,127,2,255,255,255,255,248,15,224,127,2,255,255,255,255,248,15,224,127,0,3,244,3,248,0,15,224,127,0,3,244,3,248,0,15,224,127,0,3,244,3,248,0,15,224,127,0,3,244,3,248,0,15,224,127,7,255,255,255,255,253,15,224,127,7,255,255,255,255,253,15,224,127,7,255,255,255,255,253,15,224,127,0,3,244,3,248,0,15,224,127,0,3,240,3,248,0,15,224,127,0,11,240,3,248,0,15,224,127,0,15,224,3,248,0,15,224,127,0,47,192,3,248,0,15,224,127,0,63,128,3,248,0,15,224,127,1,255,0,3,248,127,255,224,127,3,253,0,3,248,63,255,208,127,0,244,0,3,248,47,255,128,127,0,16,0,0,0,26,164,0, + // 0x9593 間 + 147,149,34,36,68,40,3,252,127,255,255,253,7,255,255,255,224,127,255,255,253,7,255,255,255,224,127,255,255,253,7,255,255,255,224,127,64,0,253,7,240,0,15,224,127,64,0,253,7,240,0,15,224,127,170,170,253,7,250,170,175,224,127,255,255,253,7,255,255,255,224,127,255,255,253,7,255,255,255,224,127,64,0,253,7,240,0,15,224,127,64,0,253,7,240,0,15,224,127,64,0,253,7,240,0,15,224,127,234,171,253,7,254,170,191,224,127,255,255,253,7,255,255,255,224,127,255,255,253,7,255,255,255,224,127,64,0,0,0,0,0,15,224,127,64,0,0,0,0,0,15,224,127,64,0,0,0,0,0,15,224,127,64,47,255,255,255,64,15,224,127,64,47,255,255,255,64,15,224,127,64,47,255,255,255,64,15,224,127,64,47,192,0,63,64,15,224,127,64,47,192,0,63,64,15,224,127,64,47,192,0,63,64,15,224,127,64,47,255,255,255,64,15,224,127,64,47,255,255,255,64,15,224,127,64,47,234,170,191,64,15,224,127,64,47,192,0,63,64,15,224,127,64,47,192,0,63,64,15,224,127,64,47,192,0,63,64,15,224,127,64,47,255,255,255,64,15,224,127,64,47,255,255,255,64,15,224,127,64,47,255,255,255,64,31,224,127,64,47,192,0,0,255,255,224,127,64,47,192,0,0,255,255,192,127,64,0,0,0,0,191,255,128,127,0,0,0,0,0,42,164,0, + // 0x95dc 關 + 220,149,34,36,68,40,3,252,127,255,255,253,7,255,255,255,224,127,255,255,253,7,255,255,255,224,127,170,170,253,7,250,170,175,224,127,0,0,253,7,240,0,15,224,127,0,0,253,7,240,0,15,224,127,255,255,253,7,255,255,255,224,127,255,255,253,7,255,255,255,224,127,85,85,253,7,245,85,95,224,127,0,0,253,7,240,0,15,224,127,0,0,253,7,240,0,15,224,127,255,255,253,7,255,255,255,224,127,255,255,253,7,255,255,255,224,127,170,171,232,6,254,170,175,224,127,0,11,192,0,252,0,15,224,127,0,31,0,2,240,0,15,224,127,3,253,29,127,194,128,15,224,127,3,248,125,127,71,208,15,224,127,0,188,248,15,223,64,15,224,127,0,47,224,3,254,0,15,224,127,0,15,157,1,248,240,15,224,127,0,62,31,7,224,248,15,224,127,15,255,255,191,255,252,15,224,127,11,255,255,255,255,254,15,224,127,1,84,3,64,0,30,15,224,127,1,160,62,15,128,164,15,224,127,1,240,62,15,128,244,15,224,127,1,240,62,15,128,244,15,224,127,1,240,62,15,128,244,15,224,127,1,255,254,15,255,244,15,224,127,1,255,254,15,255,244,15,224,127,0,0,253,15,128,0,15,224,127,0,2,252,15,128,0,15,224,127,0,31,244,15,128,15,255,224,127,0,127,208,15,128,15,255,208,127,0,47,0,15,128,11,255,128,127,0,0,0,0,0,2,164,0, + // 0x964d 降 + 77,150,36,38,86,40,3,252,0,0,0,0,0,148,0,0,0,0,0,0,0,1,254,0,0,0,191,255,248,0,3,252,0,0,0,191,255,255,0,7,248,0,0,0,191,255,254,0,15,255,255,254,0,190,86,253,0,63,255,255,255,64,190,1,252,0,255,255,255,255,0,190,3,248,3,255,64,1,253,0,190,3,244,15,255,192,3,252,0,190,7,240,127,255,240,15,244,0,190,11,224,255,135,248,63,208,0,190,15,208,61,1,255,255,128,0,190,31,192,4,0,191,254,0,0,190,47,128,0,0,63,252,0,0,190,63,64,0,1,255,255,128,0,190,31,192,0,31,255,255,248,0,190,11,240,6,255,248,47,255,228,190,3,244,191,255,192,7,255,253,190,2,252,191,253,0,254,111,248,190,0,252,63,128,0,254,1,176,190,0,253,20,0,0,254,0,0,190,0,253,31,255,255,255,255,224,190,0,254,31,255,255,255,255,224,190,0,253,31,255,255,255,255,224,190,1,253,0,254,0,254,0,0,190,191,252,0,254,0,254,0,0,190,63,248,0,254,0,254,0,0,190,63,208,0,254,0,254,0,0,190,0,0,0,254,0,254,0,0,190,0,1,255,255,255,255,255,252,190,0,1,255,255,255,255,255,252,190,0,1,255,255,255,255,255,252,190,0,0,0,0,0,254,0,0,190,0,0,0,0,0,254,0,0,190,0,0,0,0,0,254,0,0,190,0,0,0,0,0,254,0,0,190,0,0,0,0,0,254,0,0,189,0,0,0,0,0,254,0,0, + // 0x9664 除 + 100,150,36,38,86,40,3,252,0,0,0,0,0,42,64,0,0,0,0,0,0,0,191,208,0,0,191,255,248,0,1,255,240,0,0,191,255,255,0,3,255,252,0,0,191,255,254,0,15,246,254,0,0,190,86,253,0,47,224,255,128,0,190,1,252,0,191,192,63,224,0,190,3,248,2,255,0,15,248,0,190,3,244,11,252,0,7,255,0,190,7,240,47,240,0,0,255,208,190,11,225,255,192,0,0,63,248,190,15,219,255,0,0,0,15,254,190,31,195,255,255,255,255,255,252,190,47,129,226,255,255,255,248,116,190,63,128,66,255,255,255,248,0,190,31,192,0,0,63,128,0,0,190,11,240,0,0,63,128,0,0,190,3,244,0,0,63,128,0,0,190,2,252,0,0,63,128,0,0,190,0,252,0,0,63,192,0,0,190,0,253,63,255,255,255,255,224,190,0,253,63,255,255,255,255,224,190,0,254,63,255,255,255,255,224,190,0,253,0,0,63,128,0,0,190,1,253,0,0,63,128,0,0,190,191,252,7,224,63,129,244,0,190,63,248,15,240,63,130,252,0,190,63,208,15,208,63,128,255,0,190,0,0,63,192,63,128,127,64,190,0,0,127,64,63,128,63,192,190,0,0,255,0,63,128,31,224,190,0,2,253,0,63,128,11,240,190,0,7,252,0,63,128,3,248,190,0,15,240,0,63,128,3,252,190,0,3,208,21,127,128,1,224,190,0,0,64,63,255,128,0,0,190,0,0,0,31,255,0,0,0,190,0,0,0,15,248,0,0,0, + // 0x968e 階 + 142,150,36,38,86,40,3,252,0,0,0,21,0,0,84,0,0,0,0,0,47,128,0,252,0,0,191,255,244,47,128,0,252,0,0,191,255,254,47,128,0,252,1,128,191,255,253,47,128,0,252,11,240,190,86,252,47,255,244,252,191,248,190,2,252,47,255,244,255,255,128,190,3,244,47,255,244,255,248,0,190,3,240,47,128,0,255,128,0,190,7,240,47,128,0,252,0,0,190,15,208,47,128,0,252,0,0,190,15,192,47,128,0,252,0,120,190,31,128,47,128,84,252,0,189,190,47,64,47,239,248,253,0,253,190,63,66,191,255,252,255,255,252,190,31,195,255,255,144,255,255,248,190,11,242,255,144,105,47,255,224,190,3,241,144,0,191,64,0,0,190,2,248,0,0,255,0,0,0,190,1,252,0,0,254,0,0,0,190,0,252,15,255,255,255,255,208,190,0,252,15,255,255,255,255,208,190,0,253,15,255,255,255,255,208,190,0,253,15,208,0,0,31,208,190,2,252,15,208,0,0,15,208,190,191,252,15,208,0,0,15,208,190,63,244,15,208,0,0,15,208,190,63,208,15,255,255,255,255,208,190,0,0,15,255,255,255,255,208,190,0,0,15,255,255,255,255,208,190,0,0,15,208,0,0,15,208,190,0,0,15,208,0,0,15,208,190,0,0,15,208,0,0,15,208,190,0,0,15,255,255,255,255,208,190,0,0,15,255,255,255,255,208,190,0,0,15,255,255,255,255,208,190,0,0,15,208,0,0,31,208,189,0,0,10,128,0,0,5,64, + // 0x96d9 雙 + 217,150,36,38,86,40,2,252,0,36,0,0,0,9,0,0,0,0,127,3,224,0,31,192,248,0,0,190,7,240,0,47,130,248,0,0,252,15,192,0,63,3,240,0,2,253,111,213,80,191,91,229,84,3,255,255,255,224,255,255,255,252,15,255,255,255,227,255,255,255,252,47,244,47,64,11,253,7,208,0,127,244,47,64,31,253,7,208,0,255,255,255,255,255,255,255,255,244,255,255,255,255,255,255,255,255,244,119,245,111,149,61,253,91,229,80,19,244,47,64,8,253,7,208,0,3,249,111,149,64,254,91,229,80,3,255,255,255,192,255,255,255,244,3,255,255,255,192,255,255,255,244,3,244,47,64,0,253,7,208,0,3,244,47,64,0,253,7,208,0,3,255,255,255,240,255,255,255,254,3,255,255,255,240,255,255,255,254,1,85,85,85,80,85,85,85,85,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,255,244,0,15,255,255,255,255,255,255,254,0,15,255,255,255,255,255,255,252,0,0,0,190,0,0,0,63,240,0,0,1,255,192,0,1,255,192,0,0,0,127,244,0,11,255,0,0,0,0,31,255,64,191,252,0,0,0,0,3,255,251,255,224,0,0,0,0,0,127,255,255,0,0,0,0,0,1,191,255,254,144,0,0,0,5,191,255,255,255,255,148,0,175,255,255,255,219,255,255,255,254,127,255,255,228,0,27,255,255,252,63,255,228,0,0,0,111,255,248,42,80,0,0,0,0,0,22,240, + // 0x96e2 離 + 226,150,38,38,124,40,1,252,0,0,106,0,0,0,144,0,0,0,0,0,127,0,0,0,254,3,244,0,0,0,127,0,0,1,252,3,244,0,0,0,127,0,0,2,252,7,240,0,127,255,255,255,255,3,248,15,224,0,127,255,255,255,255,7,240,15,208,0,127,255,255,255,255,11,240,31,192,0,0,0,0,0,0,15,224,63,128,0,7,192,2,241,240,31,255,255,255,192,7,195,67,225,244,63,255,255,255,192,7,203,255,193,244,127,255,255,255,192,7,193,255,129,244,255,213,127,149,64,7,192,127,209,245,255,192,63,64,0,7,193,255,245,247,255,192,63,64,0,7,219,240,249,255,255,192,63,64,0,7,219,192,33,255,255,192,63,64,0,7,193,0,1,251,239,255,255,255,128,7,255,255,255,244,143,255,255,255,128,7,255,255,255,244,15,255,255,255,128,6,170,191,170,160,15,208,63,64,0,0,0,126,0,0,15,192,63,64,0,0,0,189,0,0,15,192,63,64,0,31,255,255,255,253,15,192,63,64,0,31,255,255,255,253,15,192,63,64,0,31,255,255,255,253,15,255,255,255,128,31,128,248,0,253,15,255,255,255,128,31,129,244,160,253,15,255,255,255,128,31,130,240,240,253,15,208,63,64,0,31,130,240,184,253,15,192,63,64,0,31,155,255,252,253,15,192,63,64,0,31,175,255,253,253,15,192,63,64,0,31,159,165,110,253,15,192,63,64,0,31,128,0,29,253,15,213,127,149,64,31,128,0,0,253,15,255,255,255,208,31,128,0,0,253,15,255,255,255,208,31,128,0,255,252,15,255,255,255,208,31,128,0,127,252,15,192,0,0,0,31,128,0,63,144,15,192,0,0,0, + // 0x96fb 電 + 251,150,36,36,68,40,3,252,11,255,255,255,255,255,255,253,0,11,255,255,255,255,255,255,253,0,11,255,255,255,255,255,255,253,0,0,0,0,3,248,0,0,0,0,0,0,0,3,248,0,0,0,0,255,255,255,255,255,255,255,255,240,255,255,255,255,255,255,255,255,240,254,170,170,171,254,170,170,171,240,253,0,0,3,248,0,0,7,240,253,63,255,211,248,127,255,135,240,253,63,255,211,248,127,255,135,240,253,0,0,3,248,0,0,7,240,253,0,0,3,248,0,0,7,240,0,191,255,211,248,127,255,224,0,0,191,255,211,248,127,255,224,0,0,0,0,3,248,0,0,0,0,0,0,0,0,0,0,0,0,0,1,170,170,170,170,170,170,164,0,2,255,255,255,255,255,255,248,0,2,255,255,255,255,255,255,248,0,2,252,0,3,244,0,3,248,0,2,252,0,3,244,0,3,248,0,2,253,85,87,249,85,87,248,0,2,255,255,255,255,255,255,248,0,2,255,255,255,255,255,255,248,0,2,252,0,3,244,0,3,248,0,2,252,0,3,244,0,3,248,0,2,254,170,171,254,170,171,248,0,2,255,255,255,255,255,255,248,144,2,255,255,255,255,255,255,248,253,2,252,0,3,244,0,0,0,253,2,252,0,3,244,0,0,0,252,0,84,0,3,252,0,0,2,252,0,0,0,2,255,255,255,255,248,0,0,0,0,255,255,255,255,240,0,0,0,0,43,255,255,255,128, + // 0x9752 青 + 82,151,36,39,95,40,2,251,0,0,0,0,170,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,3,255,255,255,255,255,255,255,208,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,191,255,255,255,255,255,254,0,0,191,255,255,255,255,255,254,0,0,106,170,170,255,170,170,170,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,127,255,255,255,255,255,255,255,253,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,224,0,0,0,7,244,0,0,15,224,0,0,0,7,244,0,0,15,250,170,170,170,171,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,224,0,0,0,7,244,0,0,15,224,0,0,0,7,244,0,0,15,224,0,0,0,7,244,0,0,15,255,255,255,255,255,244,0,0,15,255,255,255,255,255,244,0,0,15,250,170,170,170,171,244,0,0,15,224,0,0,0,7,244,0,0,15,224,0,0,0,7,244,0,0,15,224,0,0,0,11,244,0,0,15,224,0,0,127,255,244,0,0,15,224,0,0,63,255,240,0,0,15,224,0,0,47,254,64,0,0,0,0,0,0,0,0,0,0, + // 0x975e 非 + 94,151,38,39,134,40,1,251,0,0,0,170,0,10,144,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,15,255,255,255,0,31,255,255,255,128,15,255,255,255,0,31,255,255,255,128,15,255,255,255,0,31,255,255,255,128,5,85,85,255,0,31,229,85,85,64,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,7,255,255,255,0,31,255,255,254,0,7,255,255,255,0,31,255,255,254,0,7,255,255,255,0,31,255,255,254,0,1,85,85,255,0,31,229,85,85,0,0,0,0,255,0,31,208,0,0,0,0,0,0,255,0,31,208,0,0,0,0,0,0,254,0,31,208,0,0,0,0,0,0,254,84,31,208,0,0,0,0,0,6,255,252,31,208,0,0,0,0,107,255,255,252,31,229,85,85,64,127,255,255,255,252,31,255,255,255,208,63,255,255,253,0,31,255,255,255,208,63,255,159,244,0,31,255,255,255,208,41,64,31,240,0,31,208,0,0,0,0,0,63,208,0,31,208,0,0,0,0,0,191,192,0,31,208,0,0,0,0,2,255,0,0,31,208,0,0,0,0,11,254,0,0,31,208,0,0,0,0,63,248,0,0,31,208,0,0,0,2,255,224,0,0,31,208,0,0,0,15,255,128,0,0,31,208,0,0,0,3,253,0,0,0,31,208,0,0,0,0,224,0,0,0,15,208,0,0,0,0,0,0,0,0,0,0,0,0,0, + // 0x9762 面 + 98,151,36,35,59,40,2,252,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,191,255,255,255,255,255,255,255,254,106,170,170,171,255,170,170,170,169,0,0,0,3,253,0,0,0,0,0,0,0,3,252,0,0,0,0,0,0,0,7,248,0,0,0,0,0,0,0,7,244,0,0,0,0,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,245,91,245,85,111,213,95,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,255,255,255,192,15,240,15,224,7,255,255,255,192,15,240,15,224,7,255,255,255,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,255,255,255,192,15,240,15,224,7,255,255,255,192,15,240,15,224,7,255,255,255,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,224,7,240,0,47,192,15,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,15,245,85,85,85,85,85,95,240,15,224,0,0,0,0,0,15,240,10,160,0,0,0,0,0,10,160, + // 0x9805 項 + 5,152,38,36,104,40,1,252,0,0,0,3,255,255,255,255,255,208,0,0,0,3,255,255,255,255,255,208,21,85,85,87,255,255,255,255,255,208,63,255,255,248,0,0,255,0,0,0,63,255,255,248,0,1,255,0,0,0,63,255,255,248,0,1,253,0,0,0,21,95,245,84,0,2,252,0,0,0,0,15,240,0,63,255,255,255,255,0,0,15,240,0,63,255,255,255,255,0,0,15,240,0,63,255,255,255,255,0,0,15,240,0,63,64,0,0,191,0,0,15,240,0,63,64,0,0,191,0,0,15,240,0,63,64,0,0,191,0,0,15,240,0,63,255,255,255,255,0,0,15,240,0,63,255,255,255,255,0,0,15,240,0,63,170,170,170,255,0,0,15,240,0,63,64,0,0,191,0,0,15,240,0,63,64,0,0,191,0,0,15,240,0,63,64,0,0,191,0,0,15,240,0,63,255,255,255,255,0,0,15,240,45,63,255,255,255,255,0,0,15,251,253,63,170,170,170,255,0,0,15,255,254,63,64,0,0,191,0,1,191,255,249,63,64,0,0,191,0,111,255,255,64,63,64,0,0,191,0,127,255,224,0,63,255,255,255,255,0,63,249,0,0,63,255,255,255,255,0,46,64,0,0,63,255,255,255,255,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,1,248,0,62,0,0,0,0,0,0,31,255,1,255,224,0,0,0,0,1,255,248,0,127,253,0,0,0,0,31,255,208,0,11,255,128,0,0,0,255,253,0,0,0,255,240,0,0,0,63,208,0,0,0,47,192,0,0,0,25,0,0,0,0,6,0, + // 0x9810 預 + 16,152,38,36,104,40,1,252,47,255,255,253,63,255,255,255,255,192,47,255,255,255,191,255,255,255,255,192,47,255,255,255,127,255,255,255,255,192,0,0,7,253,0,0,127,192,0,0,0,0,7,248,0,0,127,128,0,0,0,128,15,240,0,0,127,64,0,0,2,244,63,192,0,0,191,0,0,0,7,255,255,64,11,255,255,255,254,0,2,255,253,0,11,255,255,255,254,0,0,47,252,0,11,255,255,255,254,0,0,7,255,64,11,240,0,0,254,0,0,0,255,208,11,240,0,0,254,0,0,0,47,192,11,240,0,0,254,0,127,255,255,255,235,255,255,255,254,0,127,255,255,255,235,255,255,255,254,0,127,255,255,255,203,250,170,170,254,0,21,87,249,111,203,240,0,0,254,0,0,3,244,47,139,240,0,0,254,0,0,3,244,63,75,240,0,0,254,0,0,3,244,63,11,255,255,255,254,0,0,3,244,190,11,255,255,255,254,0,0,3,244,252,11,250,170,170,254,0,0,3,244,24,11,240,0,0,254,0,0,3,244,0,11,240,0,0,254,0,0,3,244,0,11,240,0,0,254,0,0,3,244,0,11,255,255,255,254,0,0,3,244,0,11,255,255,255,254,0,0,3,244,0,11,255,255,255,254,0,0,3,244,0,0,8,0,0,0,0,0,3,244,0,0,127,64,31,64,0,0,3,244,0,2,255,192,127,240,0,0,7,244,0,31,255,0,31,253,0,15,255,244,1,255,248,0,3,255,128,11,255,240,11,255,192,0,0,191,224,7,255,208,3,253,0,0,0,31,128,2,149,0,0,144,0,0,0,5,0, + // 0x984d 額 + 77,152,38,38,124,40,1,252,0,0,168,0,0,0,0,0,0,0,0,0,253,0,0,0,0,0,0,0,0,0,253,0,11,255,255,255,255,128,0,0,253,0,11,255,255,255,255,128,63,255,255,255,251,255,255,255,255,128,63,255,255,255,240,0,47,208,0,0,63,255,255,255,240,0,63,192,0,0,63,65,64,3,240,0,63,128,0,0,63,67,244,3,240,0,63,64,0,0,63,75,240,3,241,255,255,255,255,0,0,31,250,169,1,255,255,255,255,0,0,63,255,255,65,255,255,255,255,0,0,191,255,255,1,252,0,0,191,0,2,253,0,254,1,252,0,0,191,0,11,253,1,252,1,252,0,0,191,0,63,255,131,248,1,255,255,255,255,0,127,255,255,240,1,255,255,255,255,0,30,15,255,208,1,254,170,170,255,0,0,2,255,192,1,252,0,0,191,0,0,2,255,240,1,252,0,0,191,0,0,15,255,253,1,252,0,0,191,0,0,127,226,255,129,255,255,255,255,0,7,255,64,127,241,255,255,255,255,0,127,253,0,15,241,254,170,170,255,0,127,255,255,255,193,252,0,0,191,0,47,255,255,254,1,252,0,0,191,0,6,255,255,254,1,252,0,0,191,0,2,248,0,190,1,255,255,255,255,0,2,248,0,190,1,255,255,255,255,0,2,248,0,190,1,255,255,255,254,0,2,248,0,190,0,5,0,1,0,0,2,248,0,190,0,31,192,31,128,0,2,255,255,254,0,191,224,63,244,0,2,255,255,254,7,255,128,11,254,0,2,255,255,254,191,253,0,1,255,128,2,248,0,1,255,224,0,0,127,224,2,248,0,0,127,0,0,0,15,128,0,0,0,0,20,0,0,0,1,0, + // 0x985e 類 + 94,152,38,38,124,40,1,252,0,0,84,0,0,0,0,0,0,0,2,64,252,10,64,0,0,0,0,0,15,192,252,15,223,255,255,255,255,192,11,224,252,31,207,255,255,255,255,192,3,240,252,63,79,255,255,255,255,192,2,244,252,62,0,0,47,208,0,0,0,64,252,4,0,0,63,192,0,0,63,255,255,255,240,0,63,128,0,0,63,255,255,255,241,255,255,255,254,0,63,255,255,255,242,255,255,255,255,0,0,11,253,0,2,255,255,255,255,0,0,31,255,192,2,252,0,0,191,0,0,63,255,244,2,252,0,0,191,0,0,255,255,254,2,252,0,0,191,0,3,253,252,255,194,252,0,0,191,0,15,244,252,47,242,255,255,255,255,0,127,224,252,7,210,255,255,255,255,0,47,64,252,1,130,254,170,170,255,0,13,0,252,0,2,252,0,0,191,0,0,0,84,0,2,252,0,0,191,0,0,0,252,0,2,252,0,0,191,0,0,0,252,0,2,255,255,255,255,0,0,1,253,0,2,255,255,255,255,0,63,255,255,255,242,254,170,170,255,0,63,255,255,255,242,252,0,0,191,0,63,255,255,255,242,252,0,0,191,0,0,2,252,0,2,252,0,0,191,0,0,3,252,0,2,255,255,255,255,0,0,3,255,128,2,255,255,255,255,0,0,11,255,240,1,255,255,255,254,0,0,31,255,253,0,1,0,1,0,0,0,63,211,255,128,31,192,31,128,0,1,255,128,191,224,191,224,63,240,0,15,254,0,31,199,255,128,15,253,0,127,248,0,7,111,253,0,2,255,128,47,208,0,1,255,240,0,0,127,224,14,0,0,0,127,64,0,0,31,192,0,0,0,0,24,0,0,0,2,0, + // 0x98a8 風 + 168,152,38,36,104,40,1,252,0,63,255,255,255,255,255,255,192,0,0,63,255,255,255,255,255,255,192,0,0,63,255,255,255,255,255,255,192,0,0,63,149,85,85,85,85,127,192,0,0,63,128,0,0,0,0,63,192,0,0,63,128,0,0,91,240,63,192,0,0,63,128,90,191,255,252,63,192,0,0,63,159,255,255,255,253,63,192,0,0,63,143,255,255,233,64,63,192,0,0,63,138,165,127,0,0,63,192,0,0,63,128,0,63,0,0,63,192,0,0,63,128,0,63,0,0,63,192,0,0,63,139,255,255,255,252,63,192,0,0,63,139,255,255,255,252,63,192,0,0,63,75,255,255,255,252,47,192,0,0,63,75,208,63,0,252,47,192,0,0,63,75,208,63,0,252,47,192,0,0,63,75,208,63,0,252,47,192,0,0,63,75,208,63,0,252,47,192,0,0,127,75,208,63,0,252,47,192,0,0,127,11,208,63,0,252,47,192,0,0,127,11,255,255,255,252,47,192,0,0,191,11,255,255,255,252,31,192,0,0,191,11,255,255,255,252,31,192,0,0,254,0,0,63,0,16,31,192,0,0,254,0,0,63,3,240,15,192,0,1,253,0,0,63,3,248,15,209,0,2,252,0,0,63,1,252,15,209,192,3,252,0,0,63,0,254,15,225,224,3,248,106,191,255,255,255,11,226,224,11,240,191,255,255,255,255,135,242,224,15,240,191,255,255,255,255,195,247,224,47,208,127,234,149,64,15,211,255,208,127,192,0,0,0,0,11,225,255,192,47,64,0,0,0,0,5,0,255,128,6,0,0,0,0,0,0,0,46,0, + // 0x98fd 飽 + 253,152,38,38,124,40,1,252,0,1,254,0,0,46,64,0,0,0,0,3,255,128,0,63,128,0,0,0,0,11,255,240,0,63,64,0,0,0,0,15,251,252,0,191,0,0,0,0,0,63,194,255,0,254,0,0,0,0,0,191,128,191,193,255,255,255,255,64,1,255,0,47,227,255,255,255,255,64,3,252,127,15,215,255,255,255,255,0,15,244,127,3,143,244,0,0,127,0,63,224,127,1,31,224,0,0,63,0,255,192,127,0,63,192,0,0,63,0,63,255,255,255,255,128,0,0,63,0,15,255,255,255,255,255,255,208,127,0,3,254,170,255,191,255,255,208,127,0,3,248,0,63,73,255,255,208,127,0,3,248,0,63,64,0,15,208,127,0,3,253,85,191,64,0,15,208,127,0,3,255,255,255,64,0,15,208,127,0,3,255,255,255,64,0,15,208,127,0,3,248,0,63,64,0,15,208,191,0,3,248,0,63,67,255,255,208,191,0,3,248,0,63,67,255,255,208,191,0,3,255,255,255,67,255,255,208,254,0,3,255,255,255,67,248,1,81,254,0,3,255,255,255,3,244,0,255,253,0,3,248,0,0,3,244,0,191,252,0,3,248,2,224,3,244,0,127,224,0,3,248,7,244,3,244,0,0,0,0,3,248,3,252,3,244,0,0,0,0,3,248,1,254,3,244,0,0,10,64,3,248,27,255,3,244,0,0,11,224,3,255,255,255,131,244,0,0,15,224,27,255,255,255,195,244,0,0,15,208,63,255,249,15,227,252,0,0,47,192,63,254,64,15,243,255,255,255,255,192,30,64,0,7,65,255,255,255,255,64,0,0,0,0,0,127,255,255,253,0,0,0,0,0,0,0,85,85,64,0, + // 0x9918 餘 + 24,153,38,38,124,40,1,252,0,3,252,0,0,0,127,64,0,0,0,11,255,0,0,0,255,192,0,0,0,15,255,192,0,1,255,224,0,0,0,47,223,240,0,3,255,240,0,0,0,127,131,252,0,11,247,252,0,0,0,255,1,254,0,31,225,254,0,0,3,252,0,191,64,63,192,191,64,0,11,254,170,191,192,255,64,63,208,0,47,255,255,239,67,254,0,15,244,0,255,207,255,217,11,248,0,7,253,0,127,0,0,0,63,240,0,1,255,128,28,0,0,0,255,192,0,0,191,224,3,255,255,254,255,255,255,255,255,192,3,255,255,254,125,255,255,255,239,128,3,250,170,254,52,255,255,255,226,0,3,240,0,190,0,0,63,64,0,0,3,240,0,190,0,0,63,64,0,0,3,255,255,254,0,0,63,64,0,0,3,255,255,254,0,0,63,64,0,0,3,249,85,254,0,0,63,128,0,0,3,240,0,190,63,255,255,255,255,128,3,240,0,190,63,255,255,255,255,128,3,255,255,254,63,255,255,255,255,128,3,255,255,254,0,0,63,64,0,0,3,250,170,169,0,0,63,64,0,0,3,240,0,0,3,244,63,67,240,0,3,240,0,0,3,240,63,67,244,0,3,255,255,254,7,240,63,66,252,0,3,255,255,254,15,208,63,64,253,0,3,255,255,254,31,192,63,64,191,0,3,240,0,0,63,128,63,64,63,64,3,240,0,0,127,0,63,64,63,192,3,255,255,255,254,0,63,64,31,192,3,255,255,255,124,0,63,64,15,192,3,255,255,255,0,0,127,64,9,0,3,240,0,0,0,63,255,0,0,0,3,240,0,0,0,31,255,0,0,0,3,240,0,0,0,15,248,0,0,0, + // 0x99ac 馬 + 172,153,37,37,114,40,1,251,0,31,255,255,255,255,255,255,224,0,0,31,255,255,255,255,255,255,224,0,0,31,255,255,255,255,255,255,224,0,0,31,208,0,47,208,0,0,0,0,0,31,192,0,31,208,0,0,0,0,0,31,192,0,31,208,0,0,0,0,0,31,192,0,31,208,0,0,0,0,0,31,255,255,255,255,255,255,64,0,0,31,255,255,255,255,255,255,64,0,0,31,255,255,255,255,255,255,64,0,0,31,192,0,31,208,0,0,0,0,0,31,192,0,31,208,0,0,0,0,0,31,192,0,31,208,0,0,0,0,0,31,255,255,255,255,255,255,64,0,0,31,255,255,255,255,255,255,64,0,0,31,255,255,255,255,255,255,64,0,0,31,192,0,31,208,0,0,0,0,0,31,192,0,31,208,0,0,0,0,0,31,192,0,31,208,0,0,0,0,0,31,213,85,111,213,85,85,85,0,0,31,255,255,255,255,255,255,255,64,0,31,255,255,255,255,255,255,255,64,0,31,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,191,0,0,16,0,0,0,0,20,0,191,0,0,127,0,80,6,64,252,0,191,0,0,191,7,240,31,128,191,0,255,0,0,254,3,240,15,192,63,128,255,0,1,253,3,244,15,224,31,192,254,0,2,252,3,248,7,240,15,208,254,0,3,248,2,248,3,240,7,65,253,0,11,244,2,252,3,244,0,2,253,0,31,240,1,252,2,244,5,7,252,0,127,208,1,252,0,0,31,255,248,0,47,128,0,64,0,0,15,255,240,0,2,0,0,0,0,0,15,255,128,0,0,0,0,0,0,0,0,0,0,0, + // 0x9a45 驅 + 69,154,38,36,104,40,1,252,11,255,255,255,31,255,255,255,255,128,11,255,255,255,31,255,255,255,255,128,11,255,255,255,31,255,255,255,255,128,11,208,188,0,31,128,0,0,0,0,11,208,188,0,31,128,0,0,0,0,11,208,188,0,31,128,255,255,244,0,11,255,255,252,31,128,255,255,244,0,11,255,255,252,31,128,253,86,244,0,11,255,255,252,31,128,252,2,244,0,11,208,188,0,31,128,252,2,244,0,11,208,188,0,31,128,252,2,244,0,11,208,188,0,31,128,252,2,244,0,11,255,255,252,31,128,255,255,244,0,11,255,255,252,31,128,255,255,244,0,11,255,255,252,31,128,85,85,80,0,11,208,188,0,31,128,0,0,0,0,11,208,188,0,31,128,0,0,0,0,11,208,188,0,31,143,255,79,255,64,11,255,255,255,31,143,255,79,255,64,11,255,255,255,31,143,95,79,95,64,11,255,255,255,31,143,11,79,11,64,0,0,0,63,31,143,11,79,11,64,0,0,0,63,31,143,11,79,11,64,9,1,142,63,31,143,11,79,11,64,15,122,207,63,31,143,11,79,11,64,15,57,215,127,31,143,11,79,11,64,15,60,227,255,31,143,255,79,255,64,31,60,242,255,31,143,255,79,255,64,30,60,176,127,31,133,85,5,85,0,46,60,176,126,31,128,0,0,0,0,61,60,0,126,31,128,0,0,0,0,124,20,0,189,31,255,255,255,255,208,120,0,0,253,31,255,255,255,255,208,0,0,127,252,31,255,255,255,255,208,0,0,63,248,31,128,0,0,0,0,0,0,42,144,26,64,0,0,0,0, + // 0x9ad4 體 + 212,154,37,38,124,40,2,252,0,0,0,0,0,6,129,160,0,0,2,170,170,164,0,11,193,240,0,0,7,255,255,244,0,11,193,240,0,0,7,255,255,244,0,11,193,240,0,0,7,208,1,244,15,255,255,255,252,0,7,208,1,244,15,255,255,255,252,0,7,208,2,244,15,219,230,245,252,0,7,211,255,244,15,131,193,224,252,0,7,211,255,244,15,215,214,245,252,0,7,211,209,244,15,255,255,255,252,0,7,211,209,244,15,255,255,255,252,0,7,211,209,244,15,131,193,224,252,0,7,211,209,244,15,131,193,224,252,0,191,255,255,255,207,215,230,245,252,0,191,255,255,255,207,255,255,255,252,0,190,170,170,175,207,255,255,255,252,0,188,0,0,15,192,0,0,0,0,0,189,0,0,15,192,0,0,0,0,0,191,255,255,255,255,255,255,255,255,0,3,255,255,244,63,255,255,255,255,0,3,250,171,244,42,170,170,170,170,0,3,240,3,244,0,0,0,0,0,0,3,240,3,244,7,255,255,255,244,0,3,255,255,244,7,255,255,255,244,0,3,255,255,244,7,229,85,87,244,0,3,250,171,244,7,224,0,3,244,0,3,240,3,244,7,224,0,3,244,0,3,240,3,244,7,229,85,87,244,0,3,255,255,244,7,255,255,255,244,0,3,255,255,244,7,255,255,255,244,0,3,250,171,244,0,44,0,46,64,0,3,240,3,244,0,126,0,63,0,0,3,240,3,244,0,63,0,126,0,0,3,240,3,244,0,47,64,252,0,0,3,240,3,244,170,191,235,254,170,64,3,240,255,240,255,255,255,255,255,64,3,240,127,240,255,255,255,255,255,64,3,224,62,64,0,0,0,0,0,0, + // 0x9ad8 高 + 216,154,35,38,86,40,2,252,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,1,254,0,0,0,0,127,255,255,255,255,255,255,255,252,127,255,255,255,255,255,255,255,252,127,255,255,255,255,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,255,255,128,0,0,3,255,255,255,255,255,128,0,0,3,254,170,170,170,191,128,0,0,3,252,0,0,0,63,128,0,0,3,252,0,0,0,63,128,0,0,3,252,0,0,0,63,128,0,0,3,255,255,255,255,255,128,0,0,3,255,255,255,255,255,128,0,0,1,170,170,170,170,170,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,240,11,240,0,0,0,0,0,15,240,11,240,0,0,0,0,0,15,240,11,240,6,170,170,170,144,15,240,11,240,11,255,255,255,224,15,240,11,240,11,255,255,255,224,15,240,11,240,11,224,0,15,224,15,240,11,240,11,224,0,15,224,15,240,11,240,11,224,0,15,224,15,240,11,240,11,250,170,175,224,15,240,11,240,11,255,255,255,224,15,240,11,240,11,255,255,255,224,15,240,11,240,11,224,0,0,127,255,240,11,240,11,224,0,0,63,255,208,11,240,0,0,0,0,63,255,128,7,240,0,0,0,0,21,84,0, + // 0x9ec3 黃 + 195,158,36,38,86,40,2,252,0,0,47,192,0,2,252,0,0,0,0,47,192,0,3,252,0,0,0,0,47,192,0,3,252,0,0,15,255,255,255,255,255,255,255,240,15,255,255,255,255,255,255,255,240,11,255,255,255,255,255,255,255,240,0,0,47,192,0,3,252,0,0,0,0,47,192,0,3,252,0,0,0,0,47,234,170,171,252,0,0,0,0,47,255,255,255,252,0,0,0,0,47,255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,254,0,0,0,0,0,0,0,0,254,0,0,0,0,0,127,255,255,255,255,255,254,0,0,127,255,255,255,255,255,254,0,0,127,170,170,255,170,170,254,0,0,127,64,0,254,0,0,254,0,0,127,64,0,254,0,0,254,0,0,127,255,255,255,255,255,254,0,0,127,255,255,255,255,255,254,0,0,127,149,85,255,85,86,254,0,0,127,64,0,254,0,0,254,0,0,127,64,0,254,0,0,254,0,0,127,170,170,255,170,170,254,0,0,127,255,255,255,255,255,254,0,0,127,255,255,255,255,255,254,0,0,0,31,128,0,3,248,0,0,0,1,255,240,0,15,255,208,0,0,111,255,208,0,6,255,255,64,27,255,253,0,0,0,31,255,248,255,255,144,0,0,0,1,191,255,63,244,0,0,0,0,0,11,248,9,0,0,0,0,0,0,0,80, + // 0x9ede 點 + 222,158,38,38,124,40,1,252,0,0,0,0,0,0,26,128,0,0,10,170,170,170,160,0,31,192,0,0,15,255,255,255,240,0,31,192,0,0,15,255,255,255,240,0,31,192,0,0,15,192,60,2,240,0,31,192,0,0,15,196,60,18,240,0,31,192,0,0,15,236,60,63,240,0,31,192,0,0,15,221,60,122,240,0,31,192,0,0,15,206,60,182,240,0,31,192,0,0,15,207,60,242,240,0,31,255,255,208,15,207,125,226,240,0,31,255,255,208,15,202,125,210,240,0,31,255,255,208,15,192,60,2,240,0,31,229,85,64,15,234,190,171,240,0,31,192,0,0,15,255,255,255,240,0,31,192,0,0,15,255,255,255,240,0,31,192,0,0,0,0,190,0,0,0,31,192,0,0,0,0,190,0,0,0,31,192,0,0,0,0,190,0,0,0,31,192,0,0,15,255,255,255,244,85,111,229,85,0,15,255,255,255,244,255,255,255,255,0,15,255,255,255,244,255,255,255,255,0,0,0,190,0,0,255,255,255,255,0,0,0,190,0,0,253,0,0,191,0,1,85,255,175,252,253,0,0,191,0,63,255,255,255,252,253,0,0,191,0,63,255,255,255,252,253,0,0,191,0,63,250,165,80,0,253,0,0,191,0,0,0,0,7,128,253,0,0,191,0,2,6,139,203,208,253,0,0,191,0,7,215,199,195,240,253,0,0,191,0,11,199,195,209,248,253,0,0,191,0,11,195,210,240,252,254,85,85,255,0,15,195,225,240,125,255,255,255,255,0,31,131,224,244,52,255,255,255,255,0,63,3,224,144,0,255,255,255,255,0,126,1,64,0,0,253,0,0,191,0,8,0,0,0,0,189,0,0,106,0, + // 0x9f4a 齊 + 74,159,37,39,134,40,2,251,0,0,0,0,169,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,191,255,255,255,255,255,255,255,253,0,191,255,255,255,255,255,255,255,253,0,191,255,255,255,255,255,255,255,253,0,0,0,0,46,0,120,0,1,0,0,0,0,0,63,64,252,0,31,192,0,63,255,255,223,193,249,91,255,240,0,63,255,255,203,211,243,255,255,64,0,42,254,175,195,150,195,255,253,0,0,0,252,15,192,253,3,240,62,0,0,1,248,15,192,253,3,240,47,0,0,2,244,15,192,253,3,240,31,192,0,7,240,15,192,253,3,240,15,208,0,15,224,47,128,253,3,245,171,244,0,127,207,255,64,253,47,255,246,254,0,255,7,255,0,253,47,255,244,255,64,124,2,164,0,253,31,164,0,61,0,16,5,64,0,0,0,1,84,4,0,0,15,224,0,0,0,3,248,0,0,0,15,224,0,0,0,3,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,255,255,255,255,255,248,0,0,0,15,224,0,0,0,3,248,0,0,0,31,208,0,0,0,3,248,0,0,0,47,255,255,255,255,255,248,0,0,0,63,255,255,255,255,255,248,0,0,0,127,255,255,255,255,255,248,0,0,0,255,64,0,0,0,3,248,0,0,2,255,0,0,0,0,3,248,0,0,11,254,0,0,0,0,3,248,0,0,47,252,0,0,0,0,3,248,0,0,63,240,0,0,0,0,3,248,0,0,15,192,0,0,0,0,3,248,0,0,7,0,0,0,0,0,3,248,0,0,0,0,0,0,0,0,0,0,0,0, + // 0xff1a : + 26,255,8,27,54,40,16,1,11,224,47,248,63,252,127,253,63,252,47,248,6,144,0,0,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,224,63,248,63,252,127,253,63,252,47,244,6,128, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Vietnamese_29.cpp b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Vietnamese_29.cpp new file mode 100644 index 000000000000..1de61862282a --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/NotoSans/Medium_29px/NotoSans_Medium_Vietnamese_29.cpp @@ -0,0 +1,246 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// NotoSans_Medium Vietnamese 40pt, capital 'A' height: 29px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 +extern const uint8_t NotoSans_Medium_Vietnamese_29[15205] = { + 162,29,2,1,249,30,38,246, // unifont_t + // 0x0102 Ă + 2,1,26,37,3,26,0,0,0,11,192,0,62,0,0,0,7,208,0,189,0,0,0,3,254,171,252,0,0,0,1,255,255,244,0,0,0,0,127,255,208,0,0,0,0,6,169,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x0103 ă + 3,1,18,31,155,23,2,255,3,208,0,47,0,3,240,0,63,0,2,254,171,253,0,0,255,255,252,0,0,63,255,224,0,0,6,170,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x0110 Đ + 16,1,26,29,203,29,1,0,2,170,170,148,0,0,0,3,255,255,255,224,0,0,3,255,255,255,255,0,0,3,255,255,255,255,208,0,3,253,0,6,255,244,0,3,253,0,0,47,253,0,3,253,0,0,7,255,0,3,253,0,0,2,255,128,3,253,0,0,0,255,192,3,253,0,0,0,127,208,3,253,0,0,0,63,224,3,253,0,0,0,63,224,3,253,0,0,0,47,240,255,255,255,224,0,47,240,255,255,255,224,0,47,240,255,255,255,224,0,47,240,171,255,170,160,0,47,240,3,253,0,0,0,63,224,3,253,0,0,0,63,224,3,253,0,0,0,127,192,3,253,0,0,0,255,192,3,253,0,0,1,255,128,3,253,0,0,3,255,0,3,253,0,0,31,253,0,3,253,0,1,255,248,0,3,255,170,255,255,224,0,3,255,255,255,255,64,0,3,255,255,255,244,0,0,3,255,255,249,0,0,0, + // 0x0111 đ + 17,1,23,32,192,25,2,255,0,0,0,1,84,0,0,0,0,3,253,0,0,0,0,3,253,0,0,0,0,3,253,0,0,2,255,255,255,244,0,2,255,255,255,248,0,2,255,255,255,248,0,0,0,3,254,0,0,0,0,3,253,0,0,1,84,3,253,0,0,127,255,130,253,0,2,255,255,246,253,0,11,255,255,254,253,0,31,253,0,191,253,0,63,240,0,15,253,0,127,208,0,11,253,0,127,192,0,3,253,0,191,192,0,3,253,0,255,128,0,2,253,0,255,64,0,2,253,0,255,64,0,2,253,0,255,64,0,2,253,0,255,128,0,2,253,0,191,128,0,3,253,0,127,192,0,3,253,0,63,208,0,7,253,0,63,240,0,15,253,0,31,254,1,191,253,0,11,255,255,254,253,0,2,255,255,241,253,0,0,127,255,128,253,0,0,1,80,0,0,0, + // 0x0128 Ĩ + 40,1,16,37,148,14,255,0,0,164,0,25,11,255,64,61,31,255,249,252,63,175,255,248,61,1,255,240,120,0,26,64,0,0,0,0,0,0,0,0,6,170,170,144,7,255,255,224,7,255,255,224,0,191,254,64,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,15,240,0,0,31,248,0,7,255,255,208,7,255,255,224,7,255,255,224, + // 0x0129 ĩ + 41,1,15,30,120,11,254,0,1,144,0,104,31,254,0,188,63,255,230,248,191,191,255,240,248,7,255,208,240,0,106,0,0,0,0,0,0,0,0,0,0,26,144,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0,0,47,224,0, + // 0x0168 Ũ + 104,1,23,38,228,30,3,255,0,1,164,0,40,0,0,15,255,64,124,0,0,63,255,246,252,0,0,63,175,255,244,0,0,188,2,255,224,0,0,180,0,42,64,0,0,0,0,0,0,0,0,0,0,0,0,0,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,248,0,0,11,255,255,144,0,0,0,21,80,0,0, + // 0x0169 ũ + 105,1,19,31,155,25,3,255,0,25,0,2,128,0,255,224,11,192,3,255,254,111,128,7,250,255,255,0,15,192,47,253,0,11,64,2,160,0,0,0,0,0,0,0,0,0,0,0,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,2,252,0,5,80,0,0, + // 0x01a0 Ơ + 160,1,31,32,0,32,2,255,0,0,0,0,0,0,5,84,0,0,0,0,0,0,15,248,0,0,27,255,228,0,15,244,0,7,255,255,255,64,15,240,0,47,255,255,255,240,47,224,0,191,255,239,255,252,127,192,2,255,224,0,31,255,255,64,7,255,0,0,2,255,253,0,15,252,0,0,0,255,224,0,31,248,0,0,0,63,224,0,47,240,0,0,0,47,240,0,63,224,0,0,0,31,244,0,63,208,0,0,0,15,248,0,127,192,0,0,0,15,252,0,127,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,127,192,0,0,0,15,252,0,127,208,0,0,0,15,248,0,63,224,0,0,0,15,244,0,63,240,0,0,0,47,240,0,31,244,0,0,0,63,240,0,15,252,0,0,0,127,208,0,11,254,0,0,1,255,192,0,3,255,192,0,11,255,64,0,0,255,254,85,191,254,0,0,0,63,255,255,255,244,0,0,0,11,255,255,255,208,0,0,0,0,191,255,249,0,0,0,0,0,1,85,0,0,0,0, + // 0x01a1 ơ + 161,1,25,26,182,25,2,255,0,0,0,0,0,255,128,0,0,0,0,0,255,128,0,0,0,0,0,255,0,0,6,255,144,1,255,0,0,127,255,254,3,253,0,2,255,255,255,223,252,0,11,255,234,255,255,240,0,31,248,0,31,255,128,0,63,240,0,7,252,0,0,63,192,0,3,254,0,0,127,192,0,2,255,0,0,191,128,0,1,255,0,0,255,128,0,0,255,0,0,255,64,0,0,255,64,0,255,64,0,0,255,64,0,255,64,0,0,255,0,0,255,128,0,0,255,0,0,191,192,0,1,255,0,0,127,192,0,2,254,0,0,63,224,0,3,253,0,0,31,244,0,15,252,0,0,15,254,64,127,244,0,0,3,255,255,255,208,0,0,0,255,255,255,64,0,0,0,31,255,248,0,0,0,0,0,85,0,0,0,0, + // 0x01af Ư + 175,1,31,32,0,32,3,255,0,0,0,0,0,0,5,80,0,0,0,0,0,0,15,248,42,64,0,0,2,168,15,244,127,192,0,0,7,252,31,240,127,192,0,0,7,252,47,224,127,192,0,0,7,252,127,192,127,192,0,0,7,255,255,64,127,192,0,0,7,255,252,0,127,192,0,0,7,255,144,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,63,192,0,0,11,248,0,0,63,224,0,0,15,244,0,0,47,244,0,0,47,240,0,0,15,253,0,0,191,224,0,0,7,255,229,91,255,192,0,0,2,255,255,255,255,0,0,0,0,127,255,255,252,0,0,0,0,7,255,255,144,0,0,0,0,0,5,80,0,0,0,0, + // 0x01b0 ư + 176,1,27,26,182,28,3,255,0,0,0,0,0,15,244,0,0,0,0,0,31,244,0,0,0,0,0,31,240,106,0,0,2,164,47,224,255,64,0,7,252,63,192,255,64,0,7,253,255,128,255,64,0,7,255,254,0,255,64,0,7,255,244,0,255,64,0,7,253,64,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,11,252,0,0,255,64,0,11,252,0,0,255,128,0,15,252,0,0,191,192,0,31,252,0,0,191,208,0,63,252,0,0,63,248,6,255,252,0,0,47,255,255,247,252,0,0,15,255,255,211,252,0,0,1,255,254,2,252,0,0,0,5,80,0,0,0,0, + // 0x0303 ̃ + 3,3,15,6,24,0,236,24,1,144,0,40,15,254,0,188,63,255,230,248,127,175,255,244,188,2,255,224,180,0,42,0, + // 0x0309 ̉ + 9,3,8,10,20,0,241,23,255,144,255,248,171,253,0,254,0,253,2,252,47,244,47,128,31,0,5,0, + // 0x0323 ̣ + 35,3,5,6,12,0,241,248,5,0,63,192,127,192,127,192,63,192,5,0, + // 0x0340 ̀ + 64,3,9,7,21,0,249,24,170,128,0,127,224,0,47,240,0,11,252,0,1,254,0,0,127,64,0,31,128, + // 0x0341 ́ + 65,3,9,7,21,0,254,24,0,170,128,2,255,64,3,254,0,15,248,0,47,224,0,127,64,0,189,0,0, + // 0x1ea0 Ạ + 160,30,26,37,3,26,0,248,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,0,0,0,0,0,3,252,0,0,0,0,0,3,253,0,0,0,0,0,3,253,0,0,0,0,0,3,252,0,0,0,0,0,0,80,0,0,0, + // 0x1ea1 ạ + 161,30,18,30,150,23,2,248,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0,0,0,0,0,0,0,0,16,0,0,0,2,253,0,0,0,3,255,0,0,0,3,255,0,0,0,2,253,0,0,0,0,16,0,0, + // 0x1ea2 Ả + 162,30,26,40,24,26,0,0,0,0,31,249,0,0,0,0,0,31,255,64,0,0,0,0,26,191,192,0,0,0,0,0,15,208,0,0,0,0,0,15,192,0,0,0,0,0,127,192,0,0,0,0,3,255,0,0,0,0,0,3,244,0,0,0,0,0,2,240,0,0,0,0,0,0,80,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x1ea3 ả + 163,30,18,34,170,23,2,255,0,11,253,0,0,0,15,255,192,0,0,10,191,224,0,0,0,11,224,0,0,0,11,224,0,0,0,47,208,0,0,1,255,64,0,0,1,248,0,0,0,1,244,0,0,0,0,80,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x1ea4 Ấ + 164,30,26,39,17,26,0,0,0,0,0,0,0,255,0,0,0,0,0,1,252,0,0,0,2,169,3,244,0,0,0,15,255,15,192,0,0,0,47,255,197,0,0,0,0,191,95,224,0,0,0,1,252,3,244,0,0,0,3,224,0,189,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x1ea5 ấ + 165,30,21,34,204,23,2,255,0,0,0,0,21,64,0,0,0,0,255,0,0,0,0,1,253,0,0,3,255,3,244,0,0,15,255,139,192,0,0,47,239,208,0,0,0,191,71,244,0,0,1,252,1,252,0,0,2,224,0,46,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,0,6,255,255,253,0,0,11,255,255,255,64,0,7,254,91,255,192,0,2,128,0,127,208,0,0,0,0,63,224,0,0,0,0,47,224,0,0,0,0,31,240,0,0,0,0,31,240,0,0,27,255,255,240,0,3,255,255,255,240,0,31,255,250,191,240,0,127,244,0,31,240,0,255,192,0,31,240,0,255,64,0,47,240,0,255,0,0,47,240,0,255,64,0,63,240,0,255,128,0,255,240,0,255,208,7,255,240,0,127,255,255,223,240,0,47,255,255,75,240,0,7,255,248,7,240,0,0,21,64,0,0,0, + // 0x1ea6 Ầ + 166,30,26,39,17,26,0,0,15,240,0,0,0,0,0,3,244,0,0,0,0,0,1,252,2,168,0,0,0,0,63,15,255,0,0,0,0,5,47,255,192,0,0,0,0,191,95,224,0,0,0,1,252,3,244,0,0,0,3,224,0,189,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x1ea7 ầ + 167,30,20,34,170,23,0,255,85,0,0,0,0,127,128,0,0,0,31,192,0,0,0,7,240,63,240,0,0,248,255,252,0,0,2,254,254,0,0,7,244,127,64,0,31,192,15,208,0,46,0,2,224,0,0,0,0,0,0,0,0,0,0,0,1,191,249,0,0,111,255,255,208,0,191,255,255,244,0,127,229,191,252,0,40,0,7,253,0,0,0,3,254,0,0,0,2,254,0,0,0,1,255,0,0,0,1,255,0,1,191,255,255,0,63,255,255,255,1,255,255,171,255,7,255,64,1,255,15,252,0,1,255,15,244,0,2,255,15,240,0,2,255,15,244,0,3,255,15,248,0,15,255,15,253,0,127,255,7,255,255,253,255,2,255,255,244,191,0,127,255,128,127,0,1,84,0,0, + // 0x1ea8 Ẩ + 168,30,26,42,38,26,0,0,0,0,0,0,5,0,0,0,0,0,0,47,240,0,0,0,0,0,22,248,0,0,0,0,0,0,188,0,0,0,0,0,1,248,0,0,0,6,168,15,224,0,0,0,15,255,11,64,0,0,0,63,255,133,0,0,0,0,191,95,208,0,0,0,2,252,7,244,0,0,0,7,224,0,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x1ea9 ẩ + 169,30,20,36,180,23,2,255,0,0,0,15,160,0,0,0,15,252,0,0,0,0,125,0,0,0,0,61,0,0,0,2,252,0,3,255,3,208,0,11,255,195,192,0,47,239,224,0,0,127,71,244,0,1,252,0,253,0,2,224,0,46,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x1eaa Ẫ + 170,30,26,42,38,26,0,0,0,0,127,64,30,0,0,0,1,255,248,125,0,0,0,3,251,255,252,0,0,0,3,192,127,240,0,0,0,1,64,1,64,0,0,0,0,1,84,0,0,0,0,0,11,255,0,0,0,0,0,31,255,128,0,0,0,0,127,159,208,0,0,0,1,253,3,244,0,0,0,3,224,0,189,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x1eab ẫ + 171,30,18,37,185,23,2,255,0,5,0,5,0,0,127,224,31,0,0,255,254,190,0,2,245,191,252,0,3,192,11,224,0,0,0,0,0,0,0,2,254,0,0,0,11,255,128,0,0,31,255,208,0,0,127,71,240,0,1,252,1,252,0,2,224,0,46,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x1eac Ậ + 172,30,26,46,66,26,0,248,0,0,6,169,0,0,0,0,0,15,255,0,0,0,0,0,63,255,192,0,0,0,0,191,175,240,0,0,0,1,254,11,248,0,0,0,7,244,1,254,0,0,0,15,128,0,47,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,0,0,0,0,0,3,252,0,0,0,0,0,3,254,0,0,0,0,0,3,254,0,0,0,0,0,3,252,0,0,0,0,0,0,80,0,0,0, + // 0x1ead ậ + 173,30,18,39,195,23,2,248,0,2,170,0,0,0,11,255,128,0,0,31,255,208,0,0,63,223,244,0,0,255,3,252,0,3,252,0,255,0,11,224,0,47,128,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0,0,0,0,0,0,0,0,80,0,0,0,3,252,0,0,0,3,253,0,0,0,3,253,0,0,0,3,252,0,0,0,0,80,0,0, + // 0x1eae Ắ + 174,30,26,41,31,26,0,0,0,0,0,5,80,0,0,0,0,0,31,208,0,0,0,0,0,63,64,0,0,0,0,0,190,0,0,0,0,1,65,244,20,0,0,0,3,208,0,124,0,0,0,2,244,0,252,0,0,0,1,255,175,244,0,0,0,0,191,255,224,0,0,0,0,31,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x1eaf ắ + 175,30,18,35,175,23,2,255,0,0,11,224,0,0,0,31,208,0,0,0,63,64,0,0,0,189,0,0,2,224,164,46,0,2,240,0,61,0,1,253,1,252,0,0,191,255,244,0,0,63,255,224,0,0,6,169,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x1eb0 Ằ + 176,30,26,41,31,26,0,0,0,0,85,0,0,0,0,0,0,127,64,0,0,0,0,0,31,192,0,0,0,0,0,7,224,0,0,0,0,1,65,244,20,0,0,0,3,208,0,124,0,0,0,3,240,0,252,0,0,0,1,255,175,244,0,0,0,0,191,255,224,0,0,0,0,31,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x1eb1 ằ + 177,30,18,35,175,23,2,255,0,127,64,0,0,0,47,192,0,0,0,11,224,0,0,0,2,240,0,0,2,224,164,62,0,2,240,0,125,0,1,253,1,252,0,0,255,255,244,0,0,63,255,224,0,0,6,169,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x1eb2 Ẳ + 178,30,26,42,38,26,0,0,0,0,6,160,0,0,0,0,0,7,253,0,0,0,0,0,0,47,0,0,0,0,0,0,31,0,0,0,0,0,0,253,0,0,0,0,1,65,240,20,0,0,0,3,208,64,124,0,0,0,3,240,0,252,0,0,0,1,255,175,244,0,0,0,0,191,255,224,0,0,0,0,31,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x1eb3 ẳ + 179,30,18,36,180,23,2,255,0,3,253,0,0,0,2,191,0,0,0,0,15,64,0,0,0,31,0,0,0,0,253,0,0,2,224,240,46,0,2,240,0,62,0,0,253,1,252,0,0,191,255,248,0,0,47,255,224,0,0,2,170,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x1eb4 Ẵ + 180,30,26,42,38,26,0,0,0,0,127,64,30,0,0,0,1,255,248,125,0,0,0,3,251,255,252,0,0,0,3,192,127,244,0,0,0,1,64,1,64,0,0,0,0,0,0,0,0,0,0,3,208,0,124,0,0,0,3,240,0,252,0,0,0,1,255,175,244,0,0,0,0,191,255,224,0,0,0,0,31,255,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240, + // 0x1eb5 ẵ + 181,30,18,37,185,23,2,255,0,4,0,5,0,0,127,224,15,0,0,255,254,190,0,2,245,191,252,0,3,192,11,240,0,0,0,0,0,0,1,144,0,25,0,2,240,0,61,0,1,249,1,252,0,0,255,255,248,0,0,63,255,224,0,0,6,186,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0, + // 0x1eb6 Ặ + 182,30,26,45,59,26,0,248,0,7,192,0,63,0,0,0,3,224,0,126,0,0,0,3,254,171,252,0,0,0,0,255,255,244,0,0,0,0,127,255,208,0,0,0,0,6,169,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,169,0,0,0,0,0,11,255,0,0,0,0,0,15,255,0,0,0,0,0,31,255,128,0,0,0,0,47,255,192,0,0,0,0,63,175,208,0,0,0,0,127,95,224,0,0,0,0,255,15,240,0,0,0,1,255,11,244,0,0,0,2,253,7,252,0,0,0,3,252,3,252,0,0,0,7,252,2,254,0,0,0,15,244,1,255,0,0,0,15,240,0,255,64,0,0,47,224,0,191,128,0,0,63,208,0,63,192,0,0,127,192,0,63,208,0,0,191,255,255,255,240,0,0,255,255,255,255,240,0,1,255,255,255,255,248,0,3,255,255,255,255,252,0,3,252,0,0,3,253,0,11,252,0,0,3,254,0,15,248,0,0,1,255,0,31,240,0,0,0,255,64,47,240,0,0,0,191,192,63,208,0,0,0,127,192,127,192,0,0,0,63,224,255,128,0,0,0,47,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,0,0,0,0,0,3,252,0,0,0,0,0,3,254,0,0,0,0,0,3,254,0,0,0,0,0,3,252,0,0,0,0,0,0,80,0,0,0, + // 0x1eb7 ặ + 183,30,18,38,190,23,2,248,3,224,0,31,0,2,240,0,63,0,1,254,170,254,0,0,255,255,252,0,0,47,255,240,0,0,2,170,64,0,0,0,0,0,0,0,0,0,0,0,0,27,255,144,0,6,255,255,253,0,11,255,255,255,64,7,254,91,255,192,2,128,0,127,208,0,0,0,63,224,0,0,0,47,224,0,0,0,31,240,0,0,0,31,240,0,27,255,255,240,3,255,255,255,240,31,255,250,191,240,127,244,0,31,240,255,192,0,31,240,255,64,0,47,240,255,0,0,47,240,255,64,0,63,240,255,128,0,255,240,255,208,7,255,240,127,255,255,223,240,47,255,255,75,240,7,255,248,7,240,0,21,64,0,0,0,0,0,0,0,0,0,80,0,0,0,3,248,0,0,0,11,252,0,0,0,11,252,0,0,0,3,248,0,0,0,0,80,0,0, + // 0x1eb8 Ẹ + 184,30,16,37,148,22,4,248,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,1,64,0,0,15,240,0,0,31,244,0,0,31,244,0,0,15,240,0,0,1,64,0, + // 0x1eb9 ẹ + 185,30,19,30,150,23,2,248,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0,0,0,0,0,0,0,0,20,0,0,0,0,255,0,0,0,1,255,64,0,0,1,255,64,0,0,0,255,0,0,0,0,20,0,0, + // 0x1eba Ẻ + 186,30,16,40,160,22,4,0,0,63,228,0,0,127,254,0,0,42,255,0,0,0,63,64,0,0,63,64,0,1,255,0,0,15,252,0,0,11,208,0,0,11,192,0,0,1,64,0,0,0,0,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x1ebb ẻ + 187,30,19,34,170,23,2,255,0,3,254,64,0,0,3,255,224,0,0,2,175,244,0,0,0,3,248,0,0,0,3,244,0,0,0,11,240,0,0,0,191,208,0,0,0,190,0,0,0,0,124,0,0,0,0,20,0,0,0,0,0,0,0,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x1ebc Ẽ + 188,30,16,37,148,22,4,0,0,164,0,25,11,255,64,61,31,255,249,252,63,175,255,248,61,1,255,240,120,0,26,64,0,0,0,0,0,0,0,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x1ebd ẽ + 189,30,19,31,155,23,2,255,0,25,0,2,128,1,255,224,11,192,3,255,254,111,128,11,251,255,255,0,15,192,63,253,0,15,64,6,160,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x1ebe Ế + 190,30,19,39,195,22,4,0,0,0,0,3,252,0,0,0,11,240,0,26,160,31,192,0,63,252,63,0,0,255,254,20,0,2,253,127,64,0,11,240,31,208,0,31,128,3,240,0,0,0,0,0,0,0,0,0,0,0,170,170,170,169,0,255,255,255,255,0,255,255,255,255,0,255,255,255,255,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,234,170,168,0,255,255,255,252,0,255,255,255,252,0,255,255,255,252,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,234,170,170,0,255,255,255,255,0,255,255,255,255,0,255,255,255,255,0, + // 0x1ebf ế + 191,30,21,34,204,23,2,255,0,0,0,0,21,64,0,0,0,0,127,64,0,0,0,0,254,0,0,2,255,66,248,0,0,11,255,199,208,0,0,31,255,240,0,0,0,63,131,248,0,0,0,253,0,254,0,0,1,224,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,252,0,0,2,255,255,255,64,0,11,255,86,255,192,0,31,244,0,63,224,0,63,224,0,15,240,0,63,192,0,11,244,0,127,192,0,7,248,0,191,128,0,7,252,0,255,255,255,255,252,0,255,255,255,255,252,0,255,255,255,255,252,0,255,128,0,0,0,0,255,128,0,0,0,0,191,192,0,0,0,0,127,192,0,0,0,0,63,224,0,0,0,0,47,248,0,0,16,0,15,255,64,22,240,0,3,255,255,255,240,0,0,255,255,255,240,0,0,27,255,255,64,0,0,0,21,64,0,0, + // 0x1ec0 Ề + 192,30,19,39,195,22,1,0,255,0,0,0,0,63,64,0,0,0,31,192,42,128,0,3,240,255,240,0,0,82,255,248,0,0,11,245,254,0,0,31,192,63,64,0,62,0,11,192,0,0,0,0,0,0,0,0,0,0,2,170,170,170,164,3,255,255,255,252,3,255,255,255,252,3,255,255,255,252,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,255,170,170,160,3,255,255,255,240,3,255,255,255,240,3,255,255,255,240,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,252,0,0,0,3,255,170,170,168,3,255,255,255,252,3,255,255,255,252,3,255,255,255,252, + // 0x1ec1 ề + 193,30,20,34,170,23,1,255,85,0,0,0,0,255,0,0,0,0,63,128,0,0,0,15,208,191,208,0,2,241,255,240,0,0,3,255,252,0,0,15,224,255,0,0,63,64,47,128,0,120,0,7,192,0,0,0,0,0,0,0,0,0,0,0,1,191,228,0,0,31,255,255,0,0,191,255,255,208,2,255,213,191,240,7,253,0,15,248,15,248,0,3,252,15,240,0,2,253,31,240,0,1,254,47,224,0,1,255,63,255,255,255,255,63,255,255,255,255,63,255,255,255,255,63,224,0,0,0,63,224,0,0,0,47,240,0,0,0,31,240,0,0,0,15,248,0,0,0,11,254,0,0,4,3,255,208,5,188,0,255,255,255,252,0,63,255,255,252,0,6,255,255,208,0,0,5,80,0, + // 0x1ec2 Ể + 194,30,18,42,210,22,4,0,0,0,0,84,0,0,0,0,191,192,0,0,0,91,224,0,0,0,2,240,0,0,0,7,224,0,26,160,63,128,0,63,252,61,0,0,255,254,20,0,2,252,127,64,0,11,240,31,208,0,31,128,3,240,0,0,0,0,0,0,0,0,0,0,0,170,170,170,169,0,255,255,255,255,0,255,255,255,255,0,255,255,255,255,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,234,170,168,0,255,255,255,252,0,255,255,255,252,0,255,255,255,252,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,0,0,0,0,255,234,170,170,0,255,255,255,255,0,255,255,255,255,0,255,255,255,255,0, + // 0x1ec3 ể + 195,30,20,36,180,23,2,255,0,0,0,11,224,0,0,0,15,252,0,0,0,0,62,0,0,0,0,61,0,0,0,2,252,0,3,255,3,224,0,11,255,195,192,0,31,239,224,0,0,127,71,248,0,0,253,0,253,0,2,224,0,46,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x1ec4 Ễ + 196,30,16,42,168,22,4,0,1,253,0,180,11,255,209,240,15,239,255,224,31,1,255,192,20,0,21,0,0,5,80,0,0,63,248,0,0,191,253,0,2,253,191,64,7,240,31,192,31,128,2,240,0,0,0,0,0,0,0,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x1ec5 ễ + 197,30,19,37,185,23,2,255,0,5,0,5,0,0,127,224,15,0,0,255,255,191,0,1,245,191,252,0,2,208,11,244,0,0,0,0,0,0,0,2,255,0,0,0,7,255,128,0,0,15,255,224,0,0,63,135,244,0,0,253,0,253,0,2,224,0,31,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0, + // 0x1ec6 Ệ + 198,30,16,46,184,22,4,248,0,10,164,0,0,63,253,0,0,191,255,0,2,255,191,192,7,248,31,240,31,224,7,248,47,64,0,189,0,0,0,0,0,0,0,0,170,170,170,169,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,168,255,255,255,252,255,255,255,252,255,255,255,252,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,234,170,170,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,1,64,0,0,15,240,0,0,31,244,0,0,31,244,0,0,15,240,0,0,1,64,0, + // 0x1ec7 ệ + 199,30,19,39,195,23,2,248,0,2,170,0,0,0,11,255,128,0,0,31,255,208,0,0,63,223,244,0,0,255,3,252,0,3,252,0,255,0,7,224,0,31,128,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,127,255,252,0,2,255,255,255,64,11,255,86,255,192,31,244,0,63,224,63,224,0,15,240,63,192,0,11,244,127,192,0,7,248,191,128,0,7,252,255,255,255,255,252,255,255,255,255,252,255,255,255,255,252,255,128,0,0,0,255,128,0,0,0,191,192,0,0,0,127,192,0,0,0,63,224,0,0,0,47,248,0,0,16,15,255,64,22,240,3,255,255,255,240,0,255,255,255,240,0,27,255,255,64,0,0,21,64,0,0,0,0,0,0,0,0,20,0,0,0,0,255,0,0,0,1,255,64,0,0,1,255,64,0,0,0,255,0,0,0,0,20,0,0, + // 0x1ec8 Ỉ + 200,30,12,40,120,14,1,0,1,169,0,3,255,208,3,255,244,0,3,248,0,2,248,0,3,244,0,127,240,0,127,64,0,125,0,0,61,0,0,0,0,106,170,169,127,255,254,127,255,254,11,255,228,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,1,255,128,127,255,253,127,255,254,127,255,254, + // 0x1ec9 ỉ + 201,30,8,33,66,11,2,0,127,224,191,253,106,255,0,127,0,127,1,254,15,248,15,192,15,192,5,64,0,0,26,144,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224,47,224, + // 0x1eca Ị + 202,30,12,37,111,14,1,248,106,170,169,127,255,254,127,255,254,11,255,228,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,0,255,0,1,255,128,127,255,253,127,255,254,127,255,254,0,0,0,0,0,0,0,20,0,0,255,0,1,255,64,1,255,64,0,255,0,0,20,0, + // 0x1ecb ị + 203,30,5,38,76,11,3,248,42,0,191,128,255,192,255,128,127,0,0,0,0,0,0,0,106,64,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,191,128,0,0,0,0,4,0,191,64,255,192,255,192,127,64,4,0, + // 0x1ecc Ọ + 204,30,27,37,3,31,2,248,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,1,254,0,0,0,0,0,2,255,0,0,0,0,0,2,255,0,0,0,0,0,1,254,0,0,0,0,0,0,20,0,0,0, + // 0x1ecd ọ + 205,30,21,30,180,24,2,248,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,255,0,0,0,0,1,255,64,0,0,0,1,255,64,0,0,0,0,255,0,0,0,0,0,20,0,0,0, + // 0x1ece Ỏ + 206,30,27,41,31,31,2,255,0,0,1,165,0,0,0,0,0,7,255,192,0,0,0,0,7,255,240,0,0,0,0,0,7,244,0,0,0,0,0,3,244,0,0,0,0,0,7,240,0,0,0,0,0,191,208,0,0,0,0,0,254,64,0,0,0,0,0,188,0,0,0,0,0,0,124,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x1ecf ỏ + 207,30,21,34,204,24,2,255,0,2,255,64,0,0,0,3,255,240,0,0,0,2,175,248,0,0,0,0,2,252,0,0,0,0,2,248,0,0,0,0,11,244,0,0,0,0,127,224,0,0,0,0,126,0,0,0,0,0,61,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x1ed0 Ố + 208,30,27,40,24,31,2,255,0,0,0,0,0,127,128,0,0,0,0,0,255,0,0,0,1,170,2,252,0,0,0,7,255,131,224,0,0,0,15,255,209,64,0,0,0,63,203,240,0,0,0,0,254,1,252,0,0,0,2,244,0,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x1ed1 ố + 209,30,21,34,204,24,2,255,0,0,0,0,21,64,0,0,0,0,63,192,0,0,0,0,191,0,0,1,255,129,252,0,0,3,255,211,224,0,0,15,255,240,0,0,0,63,194,252,0,0,0,190,0,191,0,0,0,244,0,31,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x1ed2 Ồ + 210,30,27,40,24,31,2,255,7,248,0,0,0,0,0,1,252,0,0,0,0,0,0,127,1,170,0,0,0,0,31,135,255,128,0,0,0,1,79,255,208,0,0,0,0,63,203,244,0,0,0,0,191,1,252,0,0,0,2,248,0,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x1ed3 ồ + 211,30,22,34,204,24,1,255,85,0,0,0,0,0,191,64,0,0,0,0,47,192,0,0,0,0,11,224,127,224,0,0,1,244,255,244,0,0,0,3,255,253,0,0,0,11,240,191,0,0,0,47,128,31,192,0,0,61,0,2,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,191,228,0,0,0,31,255,255,128,0,0,191,255,255,240,0,2,255,250,191,252,0,7,255,0,11,254,0,15,252,0,2,255,0,15,244,0,0,255,128,31,240,0,0,191,192,47,224,0,0,127,192,63,224,0,0,63,192,63,208,0,0,63,208,63,208,0,0,63,208,63,224,0,0,63,192,63,224,0,0,63,192,47,240,0,0,127,192,31,240,0,0,191,128,15,248,0,0,255,64,7,253,0,3,255,0,3,255,144,31,253,0,0,255,255,255,244,0,0,63,255,255,208,0,0,7,255,254,0,0,0,0,21,64,0,0, + // 0x1ed4 Ổ + 212,30,27,43,45,31,2,255,0,0,0,0,5,64,0,0,0,0,0,15,248,0,0,0,0,0,5,189,0,0,0,0,0,0,62,0,0,0,0,0,0,125,0,0,0,1,170,3,244,0,0,0,7,255,131,192,0,0,0,15,255,209,64,0,0,0,63,203,240,0,0,0,0,254,1,252,0,0,0,2,244,0,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x1ed5 ổ + 213,30,21,36,216,24,2,255,0,0,0,7,228,0,0,0,0,7,254,0,0,0,0,0,47,0,0,0,0,0,31,0,0,0,0,1,190,0,0,1,255,130,244,0,0,3,255,209,224,0,0,15,255,240,0,0,0,63,194,252,0,0,0,190,0,191,0,0,0,244,0,31,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x1ed6 Ỗ + 214,30,27,43,45,31,2,255,0,0,47,144,15,0,0,0,0,191,253,47,0,0,0,1,250,255,253,0,0,0,2,224,31,248,0,0,0,1,64,1,64,0,0,0,0,0,85,0,0,0,0,0,3,255,64,0,0,0,0,15,255,208,0,0,0,0,47,219,240,0,0,0,0,190,1,252,0,0,0,2,244,0,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0, + // 0x1ed7 ỗ + 215,30,21,37,222,24,2,255,0,1,0,1,64,0,0,47,244,11,128,0,0,127,255,175,64,0,0,248,127,254,0,0,0,240,7,248,0,0,0,0,0,0,0,0,0,0,255,64,0,0,0,3,255,192,0,0,0,11,255,240,0,0,0,47,194,252,0,0,0,190,0,127,0,0,0,244,0,11,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0, + // 0x1ed8 Ộ + 216,30,27,46,66,31,2,248,0,0,1,170,0,0,0,0,0,7,255,192,0,0,0,0,15,255,224,0,0,0,0,63,223,244,0,0,0,0,255,67,253,0,0,0,2,252,0,191,64,0,0,7,224,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,255,228,0,0,0,7,255,255,255,64,0,0,47,255,255,255,240,0,0,191,255,239,255,252,0,2,255,224,0,31,255,0,7,255,64,0,2,255,128,15,252,0,0,0,255,208,31,248,0,0,0,63,224,47,240,0,0,0,47,240,63,224,0,0,0,31,244,63,208,0,0,0,15,248,127,192,0,0,0,15,252,127,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,191,192,0,0,0,11,252,127,192,0,0,0,15,252,127,208,0,0,0,15,248,63,224,0,0,0,15,244,63,240,0,0,0,47,240,31,244,0,0,0,63,240,15,252,0,0,0,191,208,11,254,0,0,1,255,192,3,255,192,0,11,255,64,0,255,254,85,191,254,0,0,63,255,255,255,244,0,0,11,255,255,255,208,0,0,0,191,255,249,0,0,0,0,1,85,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,1,254,0,0,0,0,0,2,255,0,0,0,0,0,2,255,0,0,0,0,0,1,254,0,0,0,0,0,0,20,0,0,0, + // 0x1ed9 ộ + 217,30,21,39,234,24,2,248,0,0,170,64,0,0,0,3,255,208,0,0,0,11,255,240,0,0,0,31,251,252,0,0,0,127,129,255,0,0,1,254,0,127,128,0,2,244,0,11,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,255,144,0,0,0,127,255,254,0,0,2,255,255,255,192,0,11,255,234,255,240,0,31,252,0,47,248,0,63,240,0,11,252,0,63,208,0,3,254,0,127,192,0,2,255,0,191,128,0,1,255,0,255,128,0,0,255,0,255,64,0,0,255,64,255,64,0,0,255,64,255,128,0,0,255,0,255,128,0,0,255,0,191,192,0,1,255,0,127,192,0,2,254,0,63,224,0,3,253,0,31,244,0,15,252,0,15,254,64,127,244,0,3,255,255,255,208,0,0,255,255,255,64,0,0,31,255,248,0,0,0,0,85,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,255,0,0,0,0,1,255,64,0,0,0,1,255,64,0,0,0,0,255,0,0,0,0,0,20,0,0,0, + // 0x1eda Ớ + 218,30,31,39,56,32,2,255,0,0,0,2,170,0,0,0,0,0,0,11,253,0,0,0,0,0,0,31,244,0,0,0,0,0,0,63,208,0,0,0,0,0,0,191,64,0,0,0,0,0,1,253,0,0,0,0,0,0,2,224,0,0,0,0,0,0,0,0,0,0,5,84,0,0,0,0,0,0,15,248,0,0,27,255,228,0,15,244,0,7,255,255,255,64,15,240,0,47,255,255,255,240,47,224,0,191,255,239,255,252,127,192,2,255,224,0,31,255,255,64,7,255,0,0,2,255,253,0,15,252,0,0,0,255,224,0,31,248,0,0,0,63,224,0,47,240,0,0,0,47,240,0,63,224,0,0,0,31,244,0,63,208,0,0,0,15,248,0,127,192,0,0,0,15,252,0,127,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,127,192,0,0,0,15,252,0,127,208,0,0,0,15,248,0,63,224,0,0,0,15,244,0,63,240,0,0,0,47,240,0,31,244,0,0,0,63,240,0,15,252,0,0,0,127,208,0,11,254,0,0,1,255,192,0,3,255,192,0,11,255,64,0,0,255,254,85,191,254,0,0,0,63,255,255,255,244,0,0,0,11,255,255,255,208,0,0,0,0,191,255,249,0,0,0,0,0,1,85,0,0,0,0, + // 0x1edb ớ + 219,30,25,32,224,25,2,255,0,0,1,170,64,0,0,0,0,3,255,0,0,0,0,0,15,252,0,0,0,0,0,47,240,0,0,0,0,0,63,192,0,0,0,0,0,254,0,0,0,0,0,1,248,0,0,255,128,0,0,0,0,0,255,128,0,0,0,0,0,255,0,0,6,255,144,1,255,0,0,127,255,254,3,253,0,2,255,255,255,223,252,0,11,255,234,255,255,240,0,31,248,0,31,255,128,0,63,240,0,7,252,0,0,63,192,0,3,254,0,0,127,192,0,2,255,0,0,191,128,0,1,255,0,0,255,128,0,0,255,0,0,255,64,0,0,255,64,0,255,64,0,0,255,64,0,255,64,0,0,255,0,0,255,128,0,0,255,0,0,191,192,0,1,255,0,0,127,192,0,2,254,0,0,63,224,0,3,253,0,0,31,244,0,15,252,0,0,15,254,64,127,244,0,0,3,255,255,255,208,0,0,0,255,255,255,64,0,0,0,31,255,248,0,0,0,0,0,85,0,0,0,0, + // 0x1edc Ờ + 220,30,31,39,56,32,2,255,0,0,170,128,0,0,0,0,0,0,191,208,0,0,0,0,0,0,47,240,0,0,0,0,0,0,11,248,0,0,0,0,0,0,2,253,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,31,128,0,0,0,0,0,0,0,0,0,5,84,0,0,0,0,0,0,15,248,0,0,27,255,228,0,15,244,0,7,255,255,255,64,15,240,0,47,255,255,255,240,47,224,0,191,255,239,255,252,127,192,2,255,224,0,31,255,255,64,7,255,0,0,2,255,253,0,15,252,0,0,0,255,224,0,31,248,0,0,0,63,224,0,47,240,0,0,0,47,240,0,63,224,0,0,0,31,244,0,63,208,0,0,0,15,248,0,127,192,0,0,0,15,252,0,127,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,127,192,0,0,0,15,252,0,127,208,0,0,0,15,248,0,63,224,0,0,0,15,244,0,63,240,0,0,0,47,240,0,31,244,0,0,0,63,240,0,15,252,0,0,0,127,208,0,11,254,0,0,1,255,192,0,3,255,192,0,11,255,64,0,0,255,254,85,191,254,0,0,0,63,255,255,255,244,0,0,0,11,255,255,255,208,0,0,0,0,191,255,249,0,0,0,0,0,1,85,0,0,0,0, + // 0x1edd ờ + 221,30,25,32,224,25,2,255,0,106,128,0,0,0,0,0,63,240,0,0,0,0,0,31,244,0,0,0,0,0,7,252,0,0,0,0,0,1,255,0,0,0,0,0,0,63,128,0,0,0,0,0,11,192,0,255,128,0,0,0,0,0,255,128,0,0,0,0,0,255,0,0,6,255,144,1,255,0,0,127,255,254,3,253,0,2,255,255,255,223,252,0,11,255,234,255,255,240,0,31,248,0,31,255,128,0,63,240,0,7,252,0,0,63,192,0,3,254,0,0,127,192,0,2,255,0,0,191,128,0,1,255,0,0,255,128,0,0,255,0,0,255,64,0,0,255,64,0,255,64,0,0,255,64,0,255,64,0,0,255,0,0,255,128,0,0,255,0,0,191,192,0,1,255,0,0,127,192,0,2,254,0,0,63,224,0,3,253,0,0,31,244,0,15,252,0,0,15,254,64,127,244,0,0,3,255,255,255,208,0,0,0,255,255,255,64,0,0,0,31,255,248,0,0,0,0,0,85,0,0,0,0, + // 0x1ede Ở + 222,30,31,41,72,32,2,255,0,0,11,254,0,0,0,0,0,0,11,255,192,0,0,0,0,0,10,175,240,0,0,0,0,0,0,11,240,0,0,0,0,0,0,7,240,0,0,0,0,0,0,31,224,0,0,0,0,0,0,255,128,0,0,0,0,0,0,252,0,0,0,0,0,0,0,248,0,0,0,0,0,0,0,80,0,0,5,84,0,0,0,0,0,0,15,248,0,0,27,255,228,0,15,244,0,7,255,255,255,64,15,240,0,47,255,255,255,240,47,224,0,191,255,239,255,252,127,192,2,255,224,0,31,255,255,64,7,255,0,0,2,255,253,0,15,252,0,0,0,255,224,0,31,248,0,0,0,63,224,0,47,240,0,0,0,47,240,0,63,224,0,0,0,31,244,0,63,208,0,0,0,15,248,0,127,192,0,0,0,15,252,0,127,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,127,192,0,0,0,15,252,0,127,208,0,0,0,15,248,0,63,224,0,0,0,15,244,0,63,240,0,0,0,47,240,0,31,244,0,0,0,63,240,0,15,252,0,0,0,127,208,0,11,254,0,0,1,255,192,0,3,255,192,0,11,255,64,0,0,255,254,85,191,254,0,0,0,63,255,255,255,244,0,0,0,11,255,255,255,208,0,0,0,0,191,255,249,0,0,0,0,0,1,85,0,0,0,0, + // 0x1edf ở + 223,30,25,34,238,25,2,255,0,3,254,64,0,0,0,0,3,255,224,0,0,0,0,2,175,240,0,0,0,0,0,3,244,0,0,0,0,0,3,244,0,0,0,0,0,11,240,0,0,0,0,0,191,208,0,0,0,0,0,189,0,0,0,0,0,0,188,0,0,255,128,0,0,20,0,0,255,128,0,0,0,0,0,255,0,0,6,255,144,1,255,0,0,127,255,254,3,253,0,2,255,255,255,223,252,0,11,255,234,255,255,240,0,31,248,0,31,255,128,0,63,240,0,7,252,0,0,63,192,0,3,254,0,0,127,192,0,2,255,0,0,191,128,0,1,255,0,0,255,128,0,0,255,0,0,255,64,0,0,255,64,0,255,64,0,0,255,64,0,255,64,0,0,255,0,0,255,128,0,0,255,0,0,191,192,0,1,255,0,0,127,192,0,2,254,0,0,63,224,0,3,253,0,0,31,244,0,15,252,0,0,15,254,64,127,244,0,0,3,255,255,255,208,0,0,0,255,255,255,64,0,0,0,31,255,248,0,0,0,0,0,85,0,0,0,0, + // 0x1ee0 Ỡ + 224,30,31,38,48,32,2,255,0,0,26,0,2,128,0,0,0,0,255,240,11,192,0,0,0,3,255,254,111,192,0,0,0,7,250,255,255,64,0,0,0,11,192,47,254,0,0,0,0,11,64,2,164,0,0,0,0,0,0,0,0,0,5,84,0,0,0,0,0,0,15,248,0,0,27,255,228,0,15,244,0,7,255,255,255,64,15,240,0,47,255,255,255,240,47,224,0,191,255,239,255,252,127,192,2,255,224,0,31,255,255,64,7,255,0,0,2,255,253,0,15,252,0,0,0,255,224,0,31,248,0,0,0,63,224,0,47,240,0,0,0,47,240,0,63,224,0,0,0,31,244,0,63,208,0,0,0,15,248,0,127,192,0,0,0,15,252,0,127,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,127,192,0,0,0,15,252,0,127,208,0,0,0,15,248,0,63,224,0,0,0,15,244,0,63,240,0,0,0,47,240,0,31,244,0,0,0,63,240,0,15,252,0,0,0,127,208,0,11,254,0,0,1,255,192,0,3,255,192,0,11,255,64,0,0,255,254,85,191,254,0,0,0,63,255,255,255,244,0,0,0,11,255,255,255,208,0,0,0,0,191,255,249,0,0,0,0,0,1,85,0,0,0,0, + // 0x1ee1 ỡ + 225,30,25,31,217,25,2,255,0,10,64,1,144,0,0,0,191,244,3,224,0,0,1,255,255,159,208,0,0,3,250,255,255,192,0,0,3,208,31,255,0,0,0,7,128,1,164,0,255,128,0,0,0,0,0,255,128,0,0,0,0,0,255,0,0,6,255,144,1,255,0,0,127,255,254,3,253,0,2,255,255,255,223,252,0,11,255,234,255,255,240,0,31,248,0,31,255,128,0,63,240,0,7,252,0,0,63,192,0,3,254,0,0,127,192,0,2,255,0,0,191,128,0,1,255,0,0,255,128,0,0,255,0,0,255,64,0,0,255,64,0,255,64,0,0,255,64,0,255,64,0,0,255,0,0,255,128,0,0,255,0,0,191,192,0,1,255,0,0,127,192,0,2,254,0,0,63,224,0,3,253,0,0,31,244,0,15,252,0,0,15,254,64,127,244,0,0,3,255,255,255,208,0,0,0,255,255,255,64,0,0,0,31,255,248,0,0,0,0,0,85,0,0,0,0, + // 0x1ee2 Ợ + 226,30,31,39,56,32,2,248,0,0,0,0,0,0,5,84,0,0,0,0,0,0,15,248,0,0,27,255,228,0,15,244,0,7,255,255,255,64,15,240,0,47,255,255,255,240,47,224,0,191,255,239,255,252,127,192,2,255,224,0,31,255,255,64,7,255,0,0,2,255,253,0,15,252,0,0,0,255,224,0,31,248,0,0,0,63,224,0,47,240,0,0,0,47,240,0,63,224,0,0,0,31,244,0,63,208,0,0,0,15,248,0,127,192,0,0,0,15,252,0,127,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,191,192,0,0,0,11,252,0,127,192,0,0,0,15,252,0,127,208,0,0,0,15,248,0,63,224,0,0,0,15,244,0,63,240,0,0,0,47,240,0,31,244,0,0,0,63,240,0,15,252,0,0,0,127,208,0,11,254,0,0,1,255,192,0,3,255,192,0,11,255,64,0,0,255,254,85,191,254,0,0,0,63,255,255,255,244,0,0,0,11,255,255,255,208,0,0,0,0,191,255,249,0,0,0,0,0,1,85,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,1,254,0,0,0,0,0,0,2,255,0,0,0,0,0,0,2,255,0,0,0,0,0,0,1,254,0,0,0,0,0,0,0,20,0,0,0,0, + // 0x1ee3 ợ + 227,30,25,33,231,25,2,248,0,0,0,0,0,255,128,0,0,0,0,0,255,128,0,0,0,0,0,255,0,0,6,255,144,1,255,0,0,127,255,254,3,253,0,2,255,255,255,223,252,0,11,255,234,255,255,240,0,31,248,0,31,255,128,0,63,240,0,7,252,0,0,63,192,0,3,254,0,0,127,192,0,2,255,0,0,191,128,0,1,255,0,0,255,128,0,0,255,0,0,255,64,0,0,255,64,0,255,64,0,0,255,64,0,255,64,0,0,255,0,0,255,128,0,0,255,0,0,191,192,0,1,255,0,0,127,192,0,2,254,0,0,63,224,0,3,253,0,0,31,244,0,15,252,0,0,15,254,64,127,244,0,0,3,255,255,255,208,0,0,0,255,255,255,64,0,0,0,31,255,248,0,0,0,0,0,85,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,255,0,0,0,0,0,0,255,64,0,0,0,0,0,255,64,0,0,0,0,0,255,0,0,0,0,0,0,20,0,0,0,0, + // 0x1ee4 Ụ + 228,30,23,37,222,30,3,248,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,248,0,0,11,255,255,144,0,0,0,21,80,0,0,0,0,0,0,0,0,0,0,1,64,0,0,0,0,31,224,0,0,0,0,47,240,0,0,0,0,47,240,0,0,0,0,31,224,0,0,0,0,1,64,0,0, + // 0x1ee5 ụ + 229,30,19,30,150,25,3,248,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,2,252,0,5,80,0,0,0,0,0,0,0,0,0,80,0,0,0,3,252,0,0,0,7,253,0,0,0,7,253,0,0,0,3,252,0,0,0,0,80,0,0, + // 0x1ee6 Ủ + 230,30,23,41,246,30,3,255,0,0,26,64,0,0,0,0,127,252,0,0,0,0,127,255,0,0,0,0,0,191,0,0,0,0,0,63,0,0,0,0,0,191,0,0,0,0,11,253,0,0,0,0,15,224,0,0,0,0,15,192,0,0,0,0,11,128,0,0,0,0,0,0,0,0,42,64,0,0,2,168,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,127,192,0,0,7,252,63,208,0,0,11,248,63,224,0,0,15,244,47,244,0,0,47,240,15,253,0,0,191,224,7,255,229,91,255,192,2,255,255,255,255,0,0,127,255,255,248,0,0,11,255,255,144,0,0,0,21,80,0,0, + // 0x1ee7 ủ + 231,30,19,34,170,25,3,255,0,11,254,0,0,0,15,255,192,0,0,10,175,224,0,0,0,11,240,0,0,0,7,240,0,0,0,31,224,0,0,1,255,128,0,0,0,252,0,0,0,0,248,0,0,0,0,80,0,0,0,0,0,0,0,106,0,0,2,164,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,7,252,255,64,0,11,252,255,64,0,11,252,255,128,0,15,252,191,192,0,31,252,191,208,0,63,252,63,248,6,255,252,47,255,255,247,252,15,255,255,211,252,1,255,254,2,252,0,5,80,0,0, + // 0x1ee8 Ứ + 232,30,31,39,56,32,3,255,0,0,0,42,160,0,0,0,0,0,0,191,208,0,0,0,0,0,0,255,64,0,0,0,0,0,3,253,0,0,0,0,0,0,11,244,0,0,0,0,0,0,31,208,0,0,0,0,0,0,47,64,0,0,0,0,0,0,0,0,0,0,5,80,0,0,0,0,0,0,15,248,42,64,0,0,2,168,15,244,127,192,0,0,7,252,31,240,127,192,0,0,7,252,47,224,127,192,0,0,7,252,127,192,127,192,0,0,7,255,255,64,127,192,0,0,7,255,252,0,127,192,0,0,7,255,144,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,63,192,0,0,11,248,0,0,63,224,0,0,15,244,0,0,47,244,0,0,47,240,0,0,15,253,0,0,191,224,0,0,7,255,229,91,255,192,0,0,2,255,255,255,255,0,0,0,0,127,255,255,252,0,0,0,0,7,255,255,144,0,0,0,0,0,5,80,0,0,0,0, + // 0x1ee9 ứ + 233,30,27,32,224,28,3,255,0,0,2,170,0,0,0,0,0,15,252,0,0,0,0,0,31,244,0,0,0,0,0,63,208,0,0,0,0,0,255,64,0,0,0,0,2,252,0,0,0,0,0,3,224,0,0,15,244,0,0,0,0,0,31,244,0,0,0,0,0,31,240,106,0,0,2,164,47,224,255,64,0,7,252,63,192,255,64,0,7,253,255,128,255,64,0,7,255,254,0,255,64,0,7,255,244,0,255,64,0,7,253,64,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,11,252,0,0,255,64,0,11,252,0,0,255,128,0,15,252,0,0,191,192,0,31,252,0,0,191,208,0,63,252,0,0,63,248,6,255,252,0,0,47,255,255,247,252,0,0,15,255,255,211,252,0,0,1,255,254,2,252,0,0,0,5,80,0,0,0,0, + // 0x1eea Ừ + 234,30,31,39,56,32,3,255,0,10,168,0,0,0,0,0,0,11,253,0,0,0,0,0,0,2,255,0,0,0,0,0,0,0,191,128,0,0,0,0,0,0,47,208,0,0,0,0,0,0,11,240,0,0,0,0,0,0,1,248,0,0,0,0,0,0,0,0,0,0,5,80,0,0,0,0,0,0,15,248,42,64,0,0,2,168,15,244,127,192,0,0,7,252,31,240,127,192,0,0,7,252,47,224,127,192,0,0,7,252,127,192,127,192,0,0,7,255,255,64,127,192,0,0,7,255,252,0,127,192,0,0,7,255,144,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,63,192,0,0,11,248,0,0,63,224,0,0,15,244,0,0,47,244,0,0,47,240,0,0,15,253,0,0,191,224,0,0,7,255,229,91,255,192,0,0,2,255,255,255,255,0,0,0,0,127,255,255,252,0,0,0,0,7,255,255,144,0,0,0,0,0,5,80,0,0,0,0, + // 0x1eeb ừ + 235,30,27,32,224,28,3,255,0,170,64,0,0,0,0,0,191,208,0,0,0,0,0,63,240,0,0,0,0,0,15,248,0,0,0,0,0,3,253,0,0,0,0,0,0,191,0,0,0,0,0,0,47,64,0,15,244,0,0,0,0,0,31,244,0,0,0,0,0,31,240,106,0,0,2,164,47,224,255,64,0,7,252,63,192,255,64,0,7,253,255,128,255,64,0,7,255,254,0,255,64,0,7,255,244,0,255,64,0,7,253,64,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,11,252,0,0,255,64,0,11,252,0,0,255,128,0,15,252,0,0,191,192,0,31,252,0,0,191,208,0,63,252,0,0,63,248,6,255,252,0,0,47,255,255,247,252,0,0,15,255,255,211,252,0,0,1,255,254,2,252,0,0,0,5,80,0,0,0,0, + // 0x1eec Ử + 236,30,31,41,72,32,3,255,0,0,26,80,0,0,0,0,0,0,127,253,0,0,0,0,0,0,127,255,0,0,0,0,0,0,0,127,64,0,0,0,0,0,0,63,64,0,0,0,0,0,0,127,0,0,0,0,0,0,7,254,0,0,0,0,0,0,11,244,0,0,0,0,0,0,11,192,0,0,0,0,0,0,7,192,0,0,5,80,0,0,0,0,0,0,15,248,42,64,0,0,2,168,15,244,127,192,0,0,7,252,31,240,127,192,0,0,7,252,47,224,127,192,0,0,7,252,127,192,127,192,0,0,7,255,255,64,127,192,0,0,7,255,252,0,127,192,0,0,7,255,144,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,63,192,0,0,11,248,0,0,63,224,0,0,15,244,0,0,47,244,0,0,47,240,0,0,15,253,0,0,191,224,0,0,7,255,229,91,255,192,0,0,2,255,255,255,255,0,0,0,0,127,255,255,252,0,0,0,0,7,255,255,144,0,0,0,0,0,5,80,0,0,0,0, + // 0x1eed ử + 237,30,27,34,238,28,3,255,0,7,254,0,0,0,0,0,11,255,208,0,0,0,0,6,175,240,0,0,0,0,0,7,240,0,0,0,0,0,7,240,0,0,0,0,0,31,224,0,0,0,0,0,255,128,0,0,0,0,0,252,0,0,0,0,0,0,248,0,0,15,244,0,0,80,0,0,31,244,0,0,0,0,0,31,240,106,0,0,2,164,47,224,255,64,0,7,252,63,192,255,64,0,7,253,255,128,255,64,0,7,255,254,0,255,64,0,7,255,244,0,255,64,0,7,253,64,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,11,252,0,0,255,64,0,11,252,0,0,255,128,0,15,252,0,0,191,192,0,31,252,0,0,191,208,0,63,252,0,0,63,248,6,255,252,0,0,47,255,255,247,252,0,0,15,255,255,211,252,0,0,1,255,254,2,252,0,0,0,5,80,0,0,0,0, + // 0x1eee Ữ + 238,30,31,38,48,32,3,255,0,1,164,0,40,0,0,0,0,15,255,64,124,0,0,0,0,63,255,246,252,0,0,0,0,127,175,255,244,0,0,0,0,188,2,255,224,0,0,0,0,180,0,42,64,0,0,0,0,0,0,0,0,0,5,80,0,0,0,0,0,0,15,248,42,64,0,0,2,168,15,244,127,192,0,0,7,252,31,240,127,192,0,0,7,252,47,224,127,192,0,0,7,252,127,192,127,192,0,0,7,255,255,64,127,192,0,0,7,255,252,0,127,192,0,0,7,255,144,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,63,192,0,0,11,248,0,0,63,224,0,0,15,244,0,0,47,244,0,0,47,240,0,0,15,253,0,0,191,224,0,0,7,255,229,91,255,192,0,0,2,255,255,255,255,0,0,0,0,127,255,255,252,0,0,0,0,7,255,255,144,0,0,0,0,0,5,80,0,0,0,0, + // 0x1eef ữ + 239,30,27,31,217,28,3,255,0,25,0,2,128,0,0,0,255,224,11,192,0,0,3,255,254,111,128,0,0,7,250,255,255,0,0,0,15,192,47,253,0,0,0,11,64,2,160,0,15,244,0,0,0,0,0,31,244,0,0,0,0,0,31,240,106,0,0,2,164,47,224,255,64,0,7,252,63,192,255,64,0,7,253,255,128,255,64,0,7,255,254,0,255,64,0,7,255,244,0,255,64,0,7,253,64,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,11,252,0,0,255,64,0,11,252,0,0,255,128,0,15,252,0,0,191,192,0,31,252,0,0,191,208,0,63,252,0,0,63,248,6,255,252,0,0,47,255,255,247,252,0,0,15,255,255,211,252,0,0,1,255,254,2,252,0,0,0,5,80,0,0,0,0, + // 0x1ef0 Ự + 240,30,31,39,56,32,3,248,0,0,0,0,0,0,5,80,0,0,0,0,0,0,15,248,42,64,0,0,2,168,15,244,127,192,0,0,7,252,31,240,127,192,0,0,7,252,47,224,127,192,0,0,7,252,127,192,127,192,0,0,7,255,255,64,127,192,0,0,7,255,252,0,127,192,0,0,7,255,144,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,127,192,0,0,7,252,0,0,63,192,0,0,11,248,0,0,63,224,0,0,15,244,0,0,47,244,0,0,47,240,0,0,15,253,0,0,191,224,0,0,7,255,229,91,255,192,0,0,2,255,255,255,255,0,0,0,0,127,255,255,252,0,0,0,0,7,255,255,144,0,0,0,0,0,5,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,64,0,0,0,0,0,0,15,240,0,0,0,0,0,0,47,240,0,0,0,0,0,0,47,240,0,0,0,0,0,0,15,240,0,0,0,0,0,0,1,64,0,0,0,0, + // 0x1ef1 ự + 241,30,27,33,231,28,3,248,0,0,0,0,0,15,244,0,0,0,0,0,31,244,0,0,0,0,0,31,240,106,0,0,2,164,47,224,255,64,0,7,252,63,192,255,64,0,7,253,255,128,255,64,0,7,255,254,0,255,64,0,7,255,244,0,255,64,0,7,253,64,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,7,252,0,0,255,64,0,11,252,0,0,255,64,0,11,252,0,0,255,128,0,15,252,0,0,191,192,0,31,252,0,0,191,208,0,63,252,0,0,63,248,6,255,252,0,0,47,255,255,247,252,0,0,15,255,255,211,252,0,0,1,255,254,2,252,0,0,0,5,80,0,0,0,0,0,0,0,0,0,0,0,0,0,80,0,0,0,0,0,3,252,0,0,0,0,0,7,253,0,0,0,0,0,7,253,0,0,0,0,0,3,252,0,0,0,0,0,0,80,0,0,0,0, + // 0x1ef2 Ỳ + 242,30,23,38,228,23,0,0,0,10,168,0,0,0,0,11,253,0,0,0,0,2,255,0,0,0,0,0,191,192,0,0,0,0,47,208,0,0,0,0,7,244,0,0,0,0,1,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,0,6,168,127,192,0,0,15,248,63,240,0,0,31,240,31,244,0,0,63,224,15,252,0,0,127,192,7,253,0,0,255,128,2,255,0,1,255,0,0,255,64,3,253,0,0,191,192,11,252,0,0,63,208,15,244,0,0,47,240,47,240,0,0,15,244,63,208,0,0,7,252,191,128,0,0,3,254,255,0,0,0,1,255,254,0,0,0,0,255,252,0,0,0,0,127,248,0,0,0,0,63,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0, + // 0x1ef3 ỳ + 243,30,21,41,246,21,0,246,0,42,160,0,0,0,0,47,244,0,0,0,0,11,252,0,0,0,0,2,254,0,0,0,0,0,191,64,0,0,0,0,47,192,0,0,0,0,7,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,0,106,128,191,192,0,0,255,128,63,208,0,0,255,64,47,224,0,2,255,0,31,240,0,3,254,0,15,244,0,3,252,0,11,252,0,11,252,0,3,252,0,15,244,0,2,254,0,31,240,0,1,255,0,47,224,0,0,255,64,63,208,0,0,191,128,127,192,0,0,63,192,191,128,0,0,47,208,255,0,0,0,31,225,255,0,0,0,15,242,253,0,0,0,11,243,252,0,0,0,3,251,248,0,0,0,2,255,244,0,0,0,1,255,240,0,0,0,0,255,224,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,255,64,0,0,0,1,255,0,0,0,0,3,254,0,0,0,0,7,252,0,0,0,0,47,248,0,0,0,127,255,240,0,0,0,127,255,192,0,0,0,127,254,0,0,0,0,26,144,0,0,0,0, + // 0x1ef4 Ỵ + 244,30,23,37,222,23,0,248,106,64,0,0,6,168,127,192,0,0,15,248,63,240,0,0,31,240,31,244,0,0,63,224,15,252,0,0,127,192,7,253,0,0,255,128,2,255,0,1,255,0,0,255,64,3,253,0,0,191,192,11,252,0,0,63,208,15,244,0,0,47,240,47,240,0,0,15,244,63,208,0,0,7,252,191,128,0,0,3,254,255,0,0,0,1,255,254,0,0,0,0,255,252,0,0,0,0,127,248,0,0,0,0,63,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,31,224,0,0,0,0,63,240,0,0,0,0,63,240,0,0,0,0,31,224,0,0,0,0,1,0,0,0, + // 0x1ef5 ỵ + 245,30,21,32,192,21,0,246,106,64,0,0,106,128,191,192,0,0,255,128,63,208,0,0,255,64,47,224,0,2,255,0,31,240,0,3,254,0,15,244,0,3,252,0,11,252,0,11,252,0,3,252,0,15,244,0,2,254,0,31,240,0,1,255,0,47,224,0,0,255,64,63,208,0,0,191,128,127,192,0,0,63,192,191,128,0,0,47,208,255,0,0,0,31,225,255,0,0,0,15,242,253,0,0,0,11,243,252,0,0,0,3,251,248,0,0,0,2,255,244,0,0,0,1,255,240,0,0,0,0,255,224,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,255,64,0,0,0,1,255,1,64,0,0,3,254,11,240,0,0,7,252,15,248,0,0,47,248,15,248,0,127,255,240,11,240,0,127,255,192,1,64,0,127,254,0,0,0,0,26,144,0,0,0,0, + // 0x1ef6 Ỷ + 246,30,23,40,240,23,0,0,0,0,26,64,0,0,0,0,191,252,0,0,0,0,191,255,0,0,0,0,0,191,0,0,0,0,0,63,0,0,0,0,0,191,0,0,0,0,11,253,0,0,0,0,15,224,0,0,0,0,15,192,0,0,0,0,11,128,0,0,0,0,0,0,0,0,106,64,0,0,6,168,127,192,0,0,15,248,63,240,0,0,31,240,31,244,0,0,63,224,15,252,0,0,127,192,7,253,0,0,255,128,2,255,0,1,255,0,0,255,64,3,253,0,0,191,192,11,252,0,0,63,208,15,244,0,0,47,240,47,240,0,0,15,244,63,208,0,0,7,252,191,128,0,0,3,254,255,0,0,0,1,255,254,0,0,0,0,255,252,0,0,0,0,127,248,0,0,0,0,63,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0, + // 0x1ef7 ỷ + 247,30,21,43,2,21,0,246,0,2,255,128,0,0,0,2,255,240,0,0,0,2,171,252,0,0,0,0,1,252,0,0,0,0,1,252,0,0,0,0,7,248,0,0,0,0,63,224,0,0,0,0,63,0,0,0,0,0,62,0,0,0,0,0,20,0,0,0,0,0,0,0,0,0,106,64,0,0,106,128,191,192,0,0,255,128,63,208,0,0,255,64,47,224,0,2,255,0,31,240,0,3,254,0,15,244,0,3,252,0,11,252,0,11,252,0,3,252,0,15,244,0,2,254,0,31,240,0,1,255,0,47,224,0,0,255,64,63,208,0,0,191,128,127,192,0,0,63,192,191,128,0,0,47,208,255,0,0,0,31,225,255,0,0,0,15,242,253,0,0,0,11,243,252,0,0,0,3,251,248,0,0,0,2,255,244,0,0,0,1,255,240,0,0,0,0,255,224,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,255,64,0,0,0,1,255,0,0,0,0,3,254,0,0,0,0,7,252,0,0,0,0,47,248,0,0,0,127,255,240,0,0,0,127,255,192,0,0,0,127,254,0,0,0,0,26,144,0,0,0,0, + // 0x1ef8 Ỹ + 248,30,23,37,222,23,0,0,0,1,144,0,40,0,0,15,254,0,188,0,0,63,255,230,248,0,0,127,175,255,244,0,0,188,2,255,224,0,0,180,0,42,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,0,6,168,127,192,0,0,15,248,63,240,0,0,31,240,31,244,0,0,63,224,15,252,0,0,127,192,7,253,0,0,255,128,2,255,0,1,255,0,0,255,64,3,253,0,0,191,192,11,252,0,0,63,208,15,244,0,0,47,240,47,240,0,0,15,244,63,208,0,0,7,252,191,128,0,0,3,254,255,0,0,0,1,255,254,0,0,0,0,255,252,0,0,0,0,127,248,0,0,0,0,63,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0,0,0,31,240,0,0, + // 0x1ef9 ỹ + 249,30,21,40,240,21,0,246,0,6,64,0,160,0,0,127,248,2,240,0,0,255,255,155,224,0,2,254,255,255,192,0,3,240,15,255,64,0,3,208,1,168,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,64,0,0,106,128,191,192,0,0,255,128,63,208,0,0,255,64,47,224,0,2,255,0,31,240,0,3,254,0,15,244,0,3,252,0,11,252,0,11,252,0,3,252,0,15,244,0,2,254,0,31,240,0,1,255,0,47,224,0,0,255,64,63,208,0,0,191,128,127,192,0,0,63,192,191,128,0,0,47,208,255,0,0,0,31,225,255,0,0,0,15,242,253,0,0,0,11,243,252,0,0,0,3,251,248,0,0,0,2,255,244,0,0,0,1,255,240,0,0,0,0,255,224,0,0,0,0,191,192,0,0,0,0,191,192,0,0,0,0,255,64,0,0,0,1,255,0,0,0,0,3,254,0,0,0,0,7,252,0,0,0,0,47,248,0,0,0,127,255,240,0,0,0,127,255,192,0,0,0,127,254,0,0,0,0,26,144,0,0,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_10.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_10.cpp index 2572cc60c42b..7f04f045f67d 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_10.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_10.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont 16pt, capital 'A' heigth: 10px, width: 100%, range: 0x0020-0x00ff +// Unifont 16pt, capital 'A' height: 10px, width: 100%, range: 0x0020-0x00ff extern const uint8_t Unifont_10[3107] = { 129,10,32,0,255,0,14,254, // unifont_t // 0x0020 " " diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_ASCII_10.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_ASCII_10.cpp index 27f3dcf3259d..6c8d86ae2cac 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_ASCII_10.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_ASCII_10.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont ASCII 16pt, capital 'A' heigth: 10px, width: 100%, range: 0x0020-0x007e +// Unifont ASCII 16pt, capital 'A' height: 10px, width: 100%, range: 0x0020-0x007e extern const uint8_t Unifont_ASCII_10[1440] = { 129,10,32,0,126,0,14,254, // unifont_t // 0x0020 " " diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Cyrillic_10.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Cyrillic_10.cpp index 1e112a1de1c9..f9128dc84b95 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Cyrillic_10.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Cyrillic_10.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Cyrillic 16pt, capital 'A' heigth: 10px, width: 100%, range: 0x0401-0x0491, glyphs: 74 +// Unifont Cyrillic 16pt, capital 'A' height: 10px, width: 100%, range: 0x0401-0x0491, glyphs: 74 extern const uint8_t Unifont_Cyrillic_10[1243] = { 129,10,1,4,145,4,14,254, // unifont_t // 0x0401 Ё diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Greek_10.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Greek_10.cpp index 71375485d28d..06552be372b6 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Greek_10.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Greek_10.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Greek 16pt, capital 'A' heigth: 10px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 +// Unifont Greek 16pt, capital 'A' height: 10px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 extern const uint8_t Unifont_Greek_10[1061] = { 129,10,134,3,206,3,14,254, // unifont_t // 0x0386 Ά diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Katakana_10.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Katakana_10.cpp index 1e0d15629daa..67f81299c79f 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Katakana_10.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Katakana_10.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Katakana 16pt, capital 'A' heigth: 10px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 +// Unifont Katakana 16pt, capital 'A' height: 10px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 extern const uint8_t Unifont_Katakana_10[3067] = { 161,10,160,48,104,136,14,254, // unifont_t // 0x30a0 ゠ diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Korean_10.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Korean_10.cpp index d1bf3ba514c6..0b226b20348b 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Korean_10.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Korean_10.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Korean 16pt, capital 'A' heigth: 10px, width: 100%, range: 0xac70-0xd788, glyphs: 110 +// Unifont Korean 16pt, capital 'A' height: 10px, width: 100%, range: 0xac70-0xd788, glyphs: 110 extern const uint8_t Unifont_Korean_10[3786] = { 161,10,112,172,136,215,14,254, // unifont_t // 0xac70 거 diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Latin_Extended_A_10.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Latin_Extended_A_10.cpp index 8d381d276acb..6283914108b7 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Latin_Extended_A_10.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Latin_Extended_A_10.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Latin Extended-A 16pt, capital 'A' heigth: 10px, width: 100%, range: 0x0100-0x017f +// Unifont Latin Extended-A 16pt, capital 'A' height: 10px, width: 100%, range: 0x0100-0x017f extern const uint8_t Unifont_Latin_Extended_A_10[2372] = { 129,10,0,1,127,1,14,254, // unifont_t // 0x0100 Ā diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Simplified_Chinese_10.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Simplified_Chinese_10.cpp index 3ce396d098ff..7b0ef1630a54 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Simplified_Chinese_10.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Simplified_Chinese_10.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Simplified Chinese 16pt, capital 'A' heigth: 10px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 +// Unifont Simplified Chinese 16pt, capital 'A' height: 10px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 extern const uint8_t Unifont_Simplified_Chinese_10[14547] = { 161,10,28,32,26,255,14,254, // unifont_t // 0x201c “ diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Symbols_10.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Symbols_10.cpp index 8776bfba6c8a..b6569f644ae1 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Symbols_10.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Symbols_10.cpp @@ -20,21 +20,18 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Symbols 16pt, capital 'A' heigth: 10px, width: 100% +// Unifont Symbols 16pt, capital 'A' height: 10px, width: 100% extern const uint8_t Unifont_Symbols_10[44] = { 129,10,8,0,10,0,14,254, // unifont_t // 0x08 - LCD_STR_THERMOMETER a.k.a 0x1f321 🌡 5,12,12,16,5,0,32,80,80,80,80,112,112,112,248,248,248,112, // 0x09 - LCD_STR_DEGREE a.k.a 0x00b0 ° 4,4,4,8,2,6,96,144,144,96, - // 0x0a - replacement for 0x2026 used in Greek languange files … + // 0x0a - replacement for 0x2026 used in Greek language files … 7,2,2,8,1,0,146,146, }; diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Traditional_Chinese_10.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Traditional_Chinese_10.cpp index a9b1406441d7..14521a4196ab 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Traditional_Chinese_10.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Traditional_Chinese_10.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Traditional Chinese 16pt, capital 'A' heigth: 10px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 +// Unifont Traditional Chinese 16pt, capital 'A' height: 10px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 extern const uint8_t Unifont_Traditional_Chinese_10[12033] = { 161,10,191,34,26,255,14,254, // unifont_t // 0x22bf ⊿ diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Vietnamese_10.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Vietnamese_10.cpp index d61d1be71bc6..dfc0bfd1b72e 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Vietnamese_10.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/10px/Unifont_Vietnamese_10.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Vietnamese 16pt, capital 'A' heigth: 10px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 +// Unifont Vietnamese 16pt, capital 'A' height: 10px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 extern const uint8_t Unifont_Vietnamese_10[2220] = { 161,10,2,1,249,30,14,254, // unifont_t // 0x0102 Ă diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_20.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_20.cpp index 023cc4f97816..92a32bf2b1dc 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_20.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_20.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont 32pt, capital 'A' heigth: 20px, width: 100%, range: 0x0020-0x00ff +// Unifont 32pt, capital 'A' height: 20px, width: 100%, range: 0x0020-0x00ff extern const uint8_t Unifont_20[8545] = { 129,20,32,0,255,0,28,252, // unifont_t // 0x0020 " " diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_ASCII_20.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_ASCII_20.cpp index e28b806b9fa1..47a072cfc0b5 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_ASCII_20.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_ASCII_20.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont ASCII 32pt, capital 'A' heigth: 20px, width: 100%, range: 0x0020-0x007e +// Unifont ASCII 32pt, capital 'A' height: 20px, width: 100%, range: 0x0020-0x007e extern const uint8_t Unifont_ASCII_20[3770] = { 129,20,32,0,126,0,28,252, // unifont_t // 0x0020 " " diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Cyrillic_20.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Cyrillic_20.cpp index 8e82a228f1cd..67dd5da87567 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Cyrillic_20.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Cyrillic_20.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Cyrillic 32pt, capital 'A' heigth: 20px, width: 100%, range: 0x0401-0x0491, glyphs: 74 +// Unifont Cyrillic 32pt, capital 'A' height: 20px, width: 100%, range: 0x0401-0x0491, glyphs: 74 extern const uint8_t Unifont_Cyrillic_20[3403] = { 129,20,1,4,145,4,28,252, // unifont_t // 0x0401 Ё diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Greek_20.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Greek_20.cpp index d5c175977a5d..4116f99c4adb 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Greek_20.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Greek_20.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Greek 32pt, capital 'A' heigth: 20px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 +// Unifont Greek 32pt, capital 'A' height: 20px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 extern const uint8_t Unifont_Greek_20[3014] = { 129,20,134,3,206,3,28,252, // unifont_t // 0x0386 Ά diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Katakana_20.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Katakana_20.cpp index 3b21375016e9..22dafdc2dd0c 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Katakana_20.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Katakana_20.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Katakana 32pt, capital 'A' heigth: 20px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 +// Unifont Katakana 32pt, capital 'A' height: 20px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 extern const uint8_t Unifont_Katakana_20[8142] = { 161,20,160,48,104,136,28,252, // unifont_t // 0x30a0 ゠ diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Korean_20.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Korean_20.cpp index ac8dee91ef56..ada872e9f7e2 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Korean_20.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Korean_20.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Korean 32pt, capital 'A' heigth: 20px, width: 100%, range: 0xac70-0xd788, glyphs: 110 +// Unifont Korean 32pt, capital 'A' height: 20px, width: 100%, range: 0xac70-0xd788, glyphs: 110 extern const uint8_t Unifont_Korean_20[11304] = { 161,20,112,172,136,215,28,252, // unifont_t // 0xac70 거 diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Latin_Extended_A_20.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Latin_Extended_A_20.cpp index 9a22047c9a91..06d5132fc210 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Latin_Extended_A_20.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Latin_Extended_A_20.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Latin Extended-A 32pt, capital 'A' heigth: 20px, width: 100%, range: 0x0100-0x017f +// Unifont Latin Extended-A 32pt, capital 'A' height: 20px, width: 100%, range: 0x0100-0x017f extern const uint8_t Unifont_Latin_Extended_A_20[7160] = { 129,20,0,1,127,1,28,252, // unifont_t // 0x0100 Ā diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Simplified_Chinese_20.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Simplified_Chinese_20.cpp index 85e0d205d781..7108e485f470 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Simplified_Chinese_20.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Simplified_Chinese_20.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Simplified Chinese 32pt, capital 'A' heigth: 20px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 +// Unifont Simplified Chinese 32pt, capital 'A' height: 20px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 extern const uint8_t Unifont_Simplified_Chinese_20[48888] = { 161,20,28,32,26,255,28,252, // unifont_t // 0x201c “ diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Symbols_20.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Symbols_20.cpp index a0d269e02f56..76c763b74681 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Symbols_20.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Symbols_20.cpp @@ -20,21 +20,18 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Symbols 32pt, capital 'A' heigth: 20px, width: 100% +// Unifont Symbols 32pt, capital 'A' height: 20px, width: 100% extern const uint8_t Unifont_Symbols_20[90] = { 129,20,8,0,10,0,28,252, // unifont_t // 0x08 - LCD_STR_THERMOMETER a.k.a 0x1f321 🌡 10,24,48,32,10,0,12,0,12,0,51,0,51,0,51,0,51,0,51,0,51,0,51,0,51,0,63,0,63,0,63,0,63,0,63,0,63,0,255,192,255,192,255,192,255,192,255,192,255,192,63,0,63,0, // 0x09 - LCD_STR_DEGREE a.k.a 0x00b0 ° 8,8,8,16,4,12,60,60,195,195,195,195,60,60, - // 0x0a - replacement for 0x2026 used in Greek languange files … + // 0x0a - replacement for 0x2026 used in Greek language files … 14,4,8,16,2,0,195,12,195,12,195,12,195,12, }; diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Traditional_Chinese_20.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Traditional_Chinese_20.cpp index c541e1401d5d..567049f4ee1c 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Traditional_Chinese_20.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Traditional_Chinese_20.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Traditional Chinese 32pt, capital 'A' heigth: 20px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 +// Unifont Traditional Chinese 32pt, capital 'A' height: 20px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 extern const uint8_t Unifont_Traditional_Chinese_20[40418] = { 161,20,191,34,26,255,28,252, // unifont_t // 0x22bf ⊿ diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Vietnamese_20.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Vietnamese_20.cpp index 8c9b29153c17..e1aad183d2d4 100644 --- a/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Vietnamese_20.cpp +++ b/Marlin/src/lcd/tft/fontdata/Unifont/20px/Unifont_Vietnamese_20.cpp @@ -20,14 +20,11 @@ * */ -#include "../../../../../inc/MarlinConfigPre.h" +#include "../../fontdata.h" -#define UNIFONT 123 #if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT -#include - -// Unifont Vietnamese 32pt, capital 'A' heigth: 20px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 +// Unifont Vietnamese 32pt, capital 'A' height: 20px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 extern const uint8_t Unifont_Vietnamese_20[6262] = { 161,20,2,1,249,30,28,252, // unifont_t // 0x0102 Ă diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_30.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_30.cpp new file mode 100644 index 000000000000..8db077638d7b --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_30.cpp @@ -0,0 +1,416 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// Unifont 48pt, capital 'A' height: 30px, width: 100%, range: 0x0020-0x00ff +extern const uint8_t Unifont_30[16801] = { + 129,30,32,0,255,0,42,250, // unifont_t + // 0x0020 " " + 0,0,0,24,0,0, + // 0x0021 ! + 3,30,30,24,12,0,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,0,0,0,224,224,224,224,224,224, + // 0x0022 " + 15,12,24,24,6,24,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14, + // 0x0023 # + 18,30,90,24,3,0,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,255,255,192,255,255,192,255,255,192,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,255,255,192,255,255,192,255,255,192,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0, + // 0x0024 $ + 21,30,90,24,3,0,0,112,0,0,112,0,0,112,0,31,255,192,31,255,192,31,255,192,224,112,56,224,112,56,224,112,56,224,112,0,224,112,0,224,112,0,31,240,0,31,240,0,31,240,0,0,127,192,0,127,192,0,127,192,0,112,56,0,112,56,0,112,56,224,112,56,224,112,56,224,112,56,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0, + // 0x0025 % + 21,30,90,24,3,0,31,128,56,31,128,56,31,128,56,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,31,142,0,31,142,0,31,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,143,192,3,143,192,3,143,192,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,224,15,192,224,15,192,224,15,192, + // 0x0026 & + 21,30,90,24,3,0,3,254,0,3,254,0,3,254,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,3,240,0,3,240,0,3,240,0,28,112,56,28,112,56,28,112,56,224,14,56,224,14,56,224,14,56,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,240,56,31,240,56,31,240,56, + // 0x0027 ' + 3,12,12,24,12,24,224,224,224,224,224,224,224,224,224,224,224,224, + // 0x0028 ( + 9,36,72,24,9,253,3,128,3,128,3,128,28,0,28,0,28,0,28,0,28,0,28,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,28,0,28,0,28,0,28,0,28,0,28,0,3,128,3,128,3,128, + // 0x0029 ) + 9,36,72,24,6,253,224,0,224,0,224,0,28,0,28,0,28,0,28,0,28,0,28,0,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,28,0,28,0,28,0,28,0,28,0,28,0,224,0,224,0,224,0, + // 0x002a * + 21,21,63,24,3,3,0,112,0,0,112,0,0,112,0,224,112,56,224,112,56,224,112,56,28,113,192,28,113,192,28,113,192,3,254,0,3,254,0,3,254,0,28,113,192,28,113,192,28,113,192,224,112,56,224,112,56,224,112,56,0,112,0,0,112,0,0,112,0, + // 0x002b + + 21,21,63,24,3,3,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,248,255,255,248,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x002c , + 6,12,12,24,9,250,252,252,252,28,28,28,28,28,28,224,224,224, + // 0x002d - + 12,3,6,24,6,12,255,240,255,240,255,240, + // 0x002e . + 6,6,6,24,9,0,252,252,252,252,252,252, + // 0x002f / + 18,30,90,24,3,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0030 0 + 18,30,90,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,224,113,192,224,113,192,224,113,192,227,129,192,227,129,192,227,129,192,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0, + // 0x0031 1 + 15,30,60,24,6,0,3,128,3,128,3,128,31,128,31,128,31,128,227,128,227,128,227,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x0032 2 + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,0,126,0,0,126,0,0,126,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x0033 3 + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,3,254,0,3,254,0,3,254,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0034 4 + 18,30,90,24,3,0,0,14,0,0,14,0,0,14,0,0,126,0,0,126,0,0,126,0,3,142,0,3,142,0,3,142,0,28,14,0,28,14,0,28,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,255,255,192,255,255,192,255,255,192,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + // 0x0035 5 + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0036 6 + 18,30,90,24,3,0,3,254,0,3,254,0,3,254,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0037 7 + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0038 8 + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0039 9 + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,255,192,31,255,192,31,255,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,31,240,0,31,240,0,31,240,0, + // 0x003a : + 6,21,21,24,9,3,252,252,252,252,252,252,0,0,0,0,0,0,0,0,0,252,252,252,252,252,252, + // 0x003b ; + 6,27,27,24,9,253,252,252,252,252,252,252,0,0,0,0,0,0,0,0,0,252,252,252,28,28,28,28,28,28,224,224,224, + // 0x003c < + 15,27,54,24,6,0,0,14,0,14,0,14,0,112,0,112,0,112,3,128,3,128,3,128,28,0,28,0,28,0,224,0,224,0,224,0,28,0,28,0,28,0,3,128,3,128,3,128,0,112,0,112,0,112,0,14,0,14,0,14, + // 0x003d = + 18,15,45,24,3,6,255,255,192,255,255,192,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192, + // 0x003e > + 15,27,54,24,3,0,224,0,224,0,224,0,28,0,28,0,28,0,3,128,3,128,3,128,0,112,0,112,0,112,0,14,0,14,0,14,0,112,0,112,0,112,3,128,3,128,3,128,28,0,28,0,28,0,224,0,224,0,224,0, + // 0x003f ? + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,0,0,0,0,0,0,0,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0040 @ + 18,30,90,24,3,0,3,254,0,3,254,0,3,254,0,28,1,192,28,1,192,28,1,192,224,113,192,224,113,192,224,113,192,227,143,192,227,143,192,227,143,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,224,127,192,224,127,192,224,127,192,28,0,0,28,0,0,28,0,0,3,255,192,3,255,192,3,255,192, + // 0x0041 A + 18,30,90,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0042 B + 18,30,90,24,3,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0, + // 0x0043 C + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0044 D + 18,30,90,24,3,0,255,240,0,255,240,0,255,240,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,14,0,224,14,0,224,14,0,255,240,0,255,240,0,255,240,0, + // 0x0045 E + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x0046 F + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0047 G + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,127,192,224,127,192,224,127,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0048 H + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0049 I + 15,30,60,24,6,0,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x004a J + 21,30,90,24,3,0,3,255,248,3,255,248,3,255,248,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x004b K + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,14,0,224,14,0,224,14,0,224,112,0,224,112,0,224,112,0,227,128,0,227,128,0,227,128,0,252,0,0,252,0,0,252,0,0,252,0,0,252,0,0,252,0,0,227,128,0,227,128,0,227,128,0,224,112,0,224,112,0,224,112,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192, + // 0x004c L + 18,30,90,24,3,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x004d M + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x004e N + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,1,192,224,1,192,224,1,192, + // 0x004f O + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0050 P + 18,30,90,24,3,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0051 Q + 21,33,99,24,3,253,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,227,241,192,227,241,192,227,241,192,252,15,192,252,15,192,252,15,192,31,254,0,31,254,0,31,254,0,0,1,248,0,1,248,0,1,248, + // 0x0052 R + 18,30,90,24,3,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0,224,112,0,224,112,0,224,112,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0053 S + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0054 T + 21,30,90,24,3,0,255,255,248,255,255,248,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0055 U + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0056 V + 21,30,90,24,3,0,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0057 W + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0058 X + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0059 Y + 21,30,90,24,3,0,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x005a Z + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x005b [ + 9,36,72,24,12,253,255,128,255,128,255,128,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,255,128,255,128,255,128, + // 0x005c "\" + 18,30,90,24,3,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,28,0,0,28,0,0,28,0,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,14,0,0,14,0,0,14,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x005d ] + 9,36,72,24,3,253,255,128,255,128,255,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,128,255,128,255,128, + // 0x005e ^ + 18,9,27,24,3,27,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192, + // 0x005f _ + 21,3,9,24,3,253,255,255,248,255,255,248,255,255,248, + // 0x0060 ` + 9,9,18,24,6,30,224,0,224,0,224,0,28,0,28,0,28,0,3,128,3,128,3,128, + // 0x0061 a + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0062 b + 18,33,99,24,3,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,252,1,192,252,1,192,252,1,192,227,254,0,227,254,0,227,254,0, + // 0x0063 c + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0064 d + 18,33,99,24,3,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,31,241,192,31,241,192,31,241,192,224,15,192,224,15,192,224,15,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0065 e + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0066 f + 15,33,66,24,3,0,0,126,0,126,0,126,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + // 0x0067 g + 18,33,99,24,3,250,0,1,192,0,1,192,0,1,192,31,241,192,31,241,192,31,241,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0,28,0,0,28,0,0,28,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0068 h + 18,33,99,24,3,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0069 i + 15,33,66,24,6,0,3,128,3,128,3,128,3,128,3,128,3,128,0,0,0,0,0,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x006a j + 15,39,78,24,3,250,0,14,0,14,0,14,0,14,0,14,0,14,0,0,0,0,0,0,0,126,0,126,0,126,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,224,112,224,112,224,112,31,128,31,128,31,128, + // 0x006b k + 18,33,99,24,3,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,14,0,224,14,0,224,14,0,224,112,0,224,112,0,224,112,0,227,128,0,227,128,0,227,128,0,252,0,0,252,0,0,252,0,0,227,128,0,227,128,0,227,128,0,224,112,0,224,112,0,224,112,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192, + // 0x006c l + 15,33,66,24,6,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x006d m + 21,24,72,24,3,0,255,143,192,255,143,192,255,143,192,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56, + // 0x006e n + 18,24,72,24,3,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x006f o + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0070 p + 18,30,90,24,3,250,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,252,1,192,252,1,192,252,1,192,227,254,0,227,254,0,227,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0071 q + 18,30,90,24,3,250,31,241,192,31,241,192,31,241,192,224,15,192,224,15,192,224,15,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x0072 r + 18,24,72,24,3,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0073 s + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0074 t + 15,30,60,24,3,0,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,0,126,0,126,0,126, + // 0x0075 u + 18,24,72,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0076 v + 18,24,72,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0, + // 0x0077 w + 21,24,72,24,3,0,224,0,56,224,0,56,224,0,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,31,143,192,31,143,192,31,143,192, + // 0x0078 x + 18,24,72,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0079 y + 18,30,90,24,3,250,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,15,192,28,15,192,28,15,192,3,241,192,3,241,192,3,241,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,31,254,0,31,254,0,31,254,0, + // 0x007a z + 18,24,72,24,3,0,255,255,192,255,255,192,255,255,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x007b { + 12,39,78,24,6,250,3,240,3,240,3,240,28,0,28,0,28,0,28,0,28,0,28,0,3,128,3,128,3,128,3,128,3,128,3,128,28,0,28,0,28,0,224,0,224,0,224,0,28,0,28,0,28,0,3,128,3,128,3,128,3,128,3,128,3,128,28,0,28,0,28,0,28,0,28,0,28,0,3,240,3,240,3,240, + // 0x007c | + 3,42,42,24,12,250,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + // 0x007d } + 12,39,78,24,6,250,252,0,252,0,252,0,3,128,3,128,3,128,3,128,3,128,3,128,28,0,28,0,28,0,28,0,28,0,28,0,3,128,3,128,3,128,0,112,0,112,0,112,3,128,3,128,3,128,28,0,28,0,28,0,28,0,28,0,28,0,3,128,3,128,3,128,3,128,3,128,3,128,252,0,252,0,252,0, + // 0x007e ~ + 21,9,27,24,3,24,31,128,56,31,128,56,31,128,56,224,112,56,224,112,56,224,112,56,224,15,192,224,15,192,224,15,192, + // 0x007f - 0x009a Control Characters + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + // 0x00a0 "�" + 0,0,0,24,0,0, + // 0x00a1 ¡ + 3,30,30,24,12,0,224,224,224,224,224,224,0,0,0,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + // 0x00a2 ¢ + 21,30,90,24,3,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,255,192,31,255,192,31,255,192,224,112,56,224,112,56,224,112,56,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,56,224,112,56,224,112,56,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x00a3 £ + 21,30,90,24,3,0,0,127,192,0,127,192,0,127,192,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,255,254,0,255,254,0,255,254,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,31,255,192,31,255,192,31,255,192,252,0,56,252,0,56,252,0,56, + // 0x00a4 ¤ + 18,24,72,24,3,3,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192, + // 0x00a5 ¥ + 21,30,90,24,3,0,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,255,255,248,255,255,248,255,255,248,0,112,0,0,112,0,0,112,0,255,255,248,255,255,248,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x00a6 ¦ + 3,30,30,24,12,0,224,224,224,224,224,224,224,224,224,224,224,224,0,0,0,0,0,0,224,224,224,224,224,224,224,224,224,224,224,224, + // 0x00a7 § + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00a8 ¨ + 12,6,12,24,6,36,224,112,224,112,224,112,224,112,224,112,224,112, + // 0x00a9 © + 24,30,90,24,0,0,3,255,192,3,255,192,3,255,192,28,0,56,28,0,56,28,0,56,224,126,7,224,126,7,224,126,7,227,129,199,227,129,199,227,129,199,227,128,7,227,128,7,227,128,7,227,128,7,227,128,7,227,128,7,227,129,199,227,129,199,227,129,199,224,126,7,224,126,7,224,126,7,28,0,56,28,0,56,28,0,56,3,255,192,3,255,192,3,255,192, + // 0x00aa ª + 15,21,42,24,6,15,31,240,31,240,31,240,0,14,0,14,0,14,31,254,31,254,31,254,224,14,224,14,224,14,31,254,31,254,31,254,0,0,0,0,0,0,255,254,255,254,255,254, + // 0x00ab « + 18,27,81,24,3,0,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,112,0,224,112,0,224,112,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192, + // 0x00ac ¬ + 18,12,36,24,3,0,255,255,192,255,255,192,255,255,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x00ad ­ + 48,48,32,48,0,250,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,3,254,56,31,128,63,3,254,56,31,128,63,3,254,56,31,128,63,252,0,56,28,113,192,252,0,56,28,113,192,252,0,56,28,113,192,3,240,63,252,14,7,3,240,63,252,14,7,3,240,63,252,14,7,224,14,56,28,14,0,224,14,56,28,14,0,224,14,56,28,14,0,31,240,56,28,14,7,31,240,56,28,14,7,31,240,56,28,14,7,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,0,0,63,252,0,7,0,0,63,252,0,7,0,0,63,252,0,7,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,28,113,199,28,113,199,28,113,199,28,113,199,28,113,199,28,113,199, + // 0x00ae ® + 24,30,90,24,0,0,3,255,192,3,255,192,3,255,192,28,0,56,28,0,56,28,0,56,227,254,7,227,254,7,227,254,7,227,129,199,227,129,199,227,129,199,227,129,199,227,129,199,227,129,199,227,254,7,227,254,7,227,254,7,227,142,7,227,142,7,227,142,7,227,129,199,227,129,199,227,129,199,28,0,56,28,0,56,28,0,56,3,255,192,3,255,192,3,255,192, + // 0x00af ¯ + 18,3,9,24,3,33,255,255,192,255,255,192,255,255,192, + // 0x00b0 ° + 12,12,24,24,6,18,31,128,31,128,31,128,224,112,224,112,224,112,224,112,224,112,224,112,31,128,31,128,31,128, + // 0x00b1 ± + 21,27,81,24,3,3,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,248,255,255,248,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,0,0,0,0,0,0,0,0,255,255,248,255,255,248,255,255,248, + // 0x00b2 ² + 15,21,42,24,3,12,31,240,31,240,31,240,224,14,224,14,224,14,0,14,0,14,0,14,3,240,3,240,3,240,28,0,28,0,28,0,224,0,224,0,224,0,255,254,255,254,255,254, + // 0x00b3 ³ + 15,21,42,24,3,12,31,240,31,240,31,240,224,14,224,14,224,14,0,14,0,14,0,14,31,240,31,240,31,240,0,14,0,14,0,14,224,14,224,14,224,14,31,240,31,240,31,240, + // 0x00b4 ´ + 9,9,18,24,9,30,3,128,3,128,3,128,28,0,28,0,28,0,224,0,224,0,224,0, + // 0x00b5 µ + 24,30,90,24,0,250,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,31,129,248,31,129,248,31,129,248,28,126,7,28,126,7,28,126,7,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0, + // 0x00b6 ¶ + 21,33,99,24,3,253,31,255,248,31,255,248,31,255,248,255,241,192,255,241,192,255,241,192,255,241,192,255,241,192,255,241,192,255,241,192,255,241,192,255,241,192,31,241,192,31,241,192,31,241,192,0,113,192,0,113,192,0,113,192,0,113,192,0,113,192,0,113,192,0,113,192,0,113,192,0,113,192,0,113,192,0,113,192,0,113,192,0,113,192,0,113,192,0,113,192,0,113,192,0,113,192,0,113,192, + // 0x00b7 · + 6,6,6,24,9,12,252,252,252,252,252,252, + // 0x00b8 ¸ + 9,6,12,24,6,250,3,128,3,128,3,128,252,0,252,0,252,0, + // 0x00b9 ¹ + 15,21,42,24,3,12,3,128,3,128,3,128,31,128,31,128,31,128,227,128,227,128,227,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x00ba º + 15,21,42,24,6,15,31,240,31,240,31,240,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,31,240,31,240,31,240,0,0,0,0,0,0,255,254,255,254,255,254, + // 0x00bb » + 18,27,81,24,3,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,3,129,192,3,129,192,3,129,192,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0, + // 0x00bc ¼ + 18,30,90,24,3,0,28,1,192,28,1,192,28,1,192,252,1,192,252,1,192,252,1,192,28,14,0,28,14,0,28,14,0,28,112,0,28,112,0,28,112,0,28,112,0,28,112,0,28,112,0,3,129,192,3,129,192,3,129,192,3,143,192,3,143,192,3,143,192,28,113,192,28,113,192,28,113,192,224,127,192,224,127,192,224,127,192,224,1,192,224,1,192,224,1,192, + // 0x00bd ½ + 18,30,90,24,3,0,28,1,192,28,1,192,28,1,192,252,1,192,252,1,192,252,1,192,28,14,0,28,14,0,28,14,0,28,112,0,28,112,0,28,112,0,28,112,0,28,112,0,28,112,0,3,142,0,3,142,0,3,142,0,3,241,192,3,241,192,3,241,192,28,1,192,28,1,192,28,1,192,224,14,0,224,14,0,224,14,0,224,127,192,224,127,192,224,127,192, + // 0x00be ¾ + 18,30,90,24,3,0,252,1,192,252,1,192,252,1,192,3,129,192,3,129,192,3,129,192,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,252,112,0,252,112,0,252,112,0,3,129,192,3,129,192,3,129,192,3,143,192,3,143,192,3,143,192,28,113,192,28,113,192,28,113,192,224,127,192,224,127,192,224,127,192,224,1,192,224,1,192,224,1,192, + // 0x00bf ¿ + 18,30,90,24,3,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00c0 À + 18,42,126,24,3,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x00c1 Á + 18,42,126,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x00c2  + 18,42,126,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x00c3 à + 18,42,126,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x00c4 Ä + 18,42,126,24,3,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x00c5 Å + 18,42,126,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x00c6 Æ + 21,30,90,24,3,0,3,255,248,3,255,248,3,255,248,28,112,0,28,112,0,28,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,255,255,248,255,255,248,255,255,248,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,127,248,224,127,248,224,127,248, + // 0x00c7 Ç + 18,36,108,24,3,250,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,112,0,0,112,0,0,112,0,31,128,0,31,128,0,31,128,0, + // 0x00c8 È + 18,42,126,24,3,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x00c9 É + 18,42,126,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x00ca Ê + 18,42,126,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x00cb Ë + 18,42,126,24,3,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x00cc Ì + 15,42,84,24,6,0,31,128,31,128,31,128,0,126,0,126,0,126,0,0,0,0,0,0,0,0,0,0,0,0,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x00cd Í + 15,42,84,24,6,0,3,240,3,240,3,240,252,0,252,0,252,0,0,0,0,0,0,0,0,0,0,0,0,0,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x00ce Î + 15,42,84,24,6,0,31,128,31,128,31,128,224,112,224,112,224,112,0,0,0,0,0,0,0,0,0,0,0,0,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x00cf Ï + 15,42,84,24,6,0,224,112,224,112,224,112,224,112,224,112,224,112,0,0,0,0,0,0,0,0,0,0,0,0,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x00d0 Ð + 21,30,90,24,0,0,31,254,0,31,254,0,31,254,0,28,1,192,28,1,192,28,1,192,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,255,240,56,255,240,56,255,240,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,1,192,28,1,192,28,1,192,31,254,0,31,254,0,31,254,0, + // 0x00d1 Ñ + 18,42,126,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,1,192,224,1,192,224,1,192, + // 0x00d2 Ò + 18,42,126,24,3,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00d3 Ó + 18,42,126,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00d4 Ô + 18,42,126,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00d5 Õ + 18,42,126,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00d6 Ö + 18,42,126,24,3,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00d7 × + 18,15,45,24,3,6,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192, + // 0x00d8 Ø + 18,36,108,24,3,253,0,1,192,0,1,192,0,1,192,31,241,192,31,241,192,31,241,192,224,14,0,224,14,0,224,14,0,224,15,192,224,15,192,224,15,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,252,1,192,252,1,192,252,1,192,28,1,192,28,1,192,28,1,192,227,254,0,227,254,0,227,254,0,224,0,0,224,0,0,224,0,0, + // 0x00d9 Ù + 18,42,126,24,3,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00da Ú + 18,42,126,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00db Û + 18,42,126,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00dc Ü + 18,42,126,24,3,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00dd Ý + 21,42,126,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x00de Þ + 18,33,99,24,3,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,240,0,255,240,0,255,240,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,14,0,224,14,0,224,14,0,255,240,0,255,240,0,255,240,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x00df ß + 18,30,90,24,3,0,31,240,0,31,240,0,31,240,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,112,0,224,112,0,224,112,0,227,240,0,227,240,0,227,240,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,227,129,192,227,129,192,227,129,192,224,126,0,224,126,0,224,126,0, + // 0x00e0 à + 18,36,108,24,3,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x00e1 á + 18,36,108,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x00e2 â + 18,36,108,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x00e3 ã + 18,36,108,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x00e4 ä + 18,36,108,24,3,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x00e5 å + 18,39,117,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x00e6 æ + 21,24,72,24,3,0,31,255,192,31,255,192,31,255,192,224,112,56,224,112,56,224,112,56,0,112,56,0,112,56,0,112,56,31,255,248,31,255,248,31,255,248,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,56,224,112,56,224,112,56,31,255,192,31,255,192,31,255,192, + // 0x00e7 ç + 18,30,90,24,3,250,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,112,0,0,112,0,0,112,0,31,128,0,31,128,0,31,128,0, + // 0x00e8 è + 18,36,108,24,3,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00e9 é + 18,36,108,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00ea ê + 18,36,108,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00eb ë + 18,36,108,24,3,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00ec ì + 15,36,72,24,6,0,252,0,252,0,252,0,3,240,3,240,3,240,0,0,0,0,0,0,0,0,0,0,0,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x00ed í + 15,36,72,24,6,0,3,240,3,240,3,240,252,0,252,0,252,0,0,0,0,0,0,0,0,0,0,0,0,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x00ee î + 15,36,72,24,6,0,31,128,31,128,31,128,224,112,224,112,224,112,0,0,0,0,0,0,0,0,0,0,0,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x00ef ï + 15,36,72,24,6,0,224,112,224,112,224,112,224,112,224,112,224,112,0,0,0,0,0,0,0,0,0,0,0,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x00f0 ð + 18,36,108,24,3,0,31,129,192,31,129,192,31,129,192,0,126,0,0,126,0,0,126,0,3,142,0,3,142,0,3,142,0,28,1,192,28,1,192,28,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00f1 ñ + 18,36,108,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x00f2 ò + 18,36,108,24,3,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00f3 ó + 18,36,108,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00f4 ô + 18,36,108,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00f5 õ + 18,36,108,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00f6 ö + 18,36,108,24,3,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x00f7 ÷ + 18,21,63,24,3,3,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,240,0,3,240,0,3,240,0, + // 0x00f8 ø + 18,30,90,24,3,253,0,1,192,0,1,192,0,1,192,31,254,0,31,254,0,31,254,0,224,15,192,224,15,192,224,15,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,252,1,192,252,1,192,252,1,192,31,254,0,31,254,0,31,254,0,224,0,0,224,0,0,224,0,0, + // 0x00f9 ù + 18,36,108,24,3,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x00fa ú + 18,36,108,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x00fb û + 18,36,108,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x00fc ü + 18,36,108,24,3,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x00fd ý + 18,42,126,24,3,250,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,15,192,28,15,192,28,15,192,3,241,192,3,241,192,3,241,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,31,254,0,31,254,0,31,254,0, + // 0x00fe þ + 18,39,117,24,3,250,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,252,1,192,252,1,192,252,1,192,227,254,0,227,254,0,227,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x00ff ÿ + 18,42,126,24,3,250,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,15,192,28,15,192,28,15,192,3,241,192,3,241,192,3,241,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,31,254,0,31,254,0,31,254,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_ASCII_30.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_ASCII_30.cpp new file mode 100644 index 000000000000..50744e283c74 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_ASCII_30.cpp @@ -0,0 +1,222 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// Unifont ASCII 48pt, capital 'A' height: 30px, width: 100%, range: 0x0020-0x007e +extern const uint8_t Unifont_ASCII_30[7508] = { + 129,30,32,0,126,0,42,250, // unifont_t + // 0x0020 " " + 0,0,0,24,0,0, + // 0x0021 ! + 3,30,30,24,12,0,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,0,0,0,224,224,224,224,224,224, + // 0x0022 " + 15,12,24,24,6,24,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14, + // 0x0023 # + 18,30,90,24,3,0,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,255,255,192,255,255,192,255,255,192,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,255,255,192,255,255,192,255,255,192,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0, + // 0x0024 $ + 21,30,90,24,3,0,0,112,0,0,112,0,0,112,0,31,255,192,31,255,192,31,255,192,224,112,56,224,112,56,224,112,56,224,112,0,224,112,0,224,112,0,31,240,0,31,240,0,31,240,0,0,127,192,0,127,192,0,127,192,0,112,56,0,112,56,0,112,56,224,112,56,224,112,56,224,112,56,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0, + // 0x0025 % + 21,30,90,24,3,0,31,128,56,31,128,56,31,128,56,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,31,142,0,31,142,0,31,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,143,192,3,143,192,3,143,192,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,224,15,192,224,15,192,224,15,192, + // 0x0026 & + 21,30,90,24,3,0,3,254,0,3,254,0,3,254,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,3,240,0,3,240,0,3,240,0,28,112,56,28,112,56,28,112,56,224,14,56,224,14,56,224,14,56,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,240,56,31,240,56,31,240,56, + // 0x0027 ' + 3,12,12,24,12,24,224,224,224,224,224,224,224,224,224,224,224,224, + // 0x0028 ( + 9,36,72,24,9,253,3,128,3,128,3,128,28,0,28,0,28,0,28,0,28,0,28,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,28,0,28,0,28,0,28,0,28,0,28,0,3,128,3,128,3,128, + // 0x0029 ) + 9,36,72,24,6,253,224,0,224,0,224,0,28,0,28,0,28,0,28,0,28,0,28,0,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,28,0,28,0,28,0,28,0,28,0,28,0,224,0,224,0,224,0, + // 0x002a * + 21,21,63,24,3,3,0,112,0,0,112,0,0,112,0,224,112,56,224,112,56,224,112,56,28,113,192,28,113,192,28,113,192,3,254,0,3,254,0,3,254,0,28,113,192,28,113,192,28,113,192,224,112,56,224,112,56,224,112,56,0,112,0,0,112,0,0,112,0, + // 0x002b + + 21,21,63,24,3,3,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,248,255,255,248,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x002c , + 6,12,12,24,9,250,252,252,252,28,28,28,28,28,28,224,224,224, + // 0x002d - + 12,3,6,24,6,12,255,240,255,240,255,240, + // 0x002e . + 6,6,6,24,9,0,252,252,252,252,252,252, + // 0x002f / + 18,30,90,24,3,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0030 0 + 18,30,90,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,224,113,192,224,113,192,224,113,192,227,129,192,227,129,192,227,129,192,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0, + // 0x0031 1 + 15,30,60,24,6,0,3,128,3,128,3,128,31,128,31,128,31,128,227,128,227,128,227,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x0032 2 + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,0,126,0,0,126,0,0,126,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x0033 3 + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,3,254,0,3,254,0,3,254,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0034 4 + 18,30,90,24,3,0,0,14,0,0,14,0,0,14,0,0,126,0,0,126,0,0,126,0,3,142,0,3,142,0,3,142,0,28,14,0,28,14,0,28,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,255,255,192,255,255,192,255,255,192,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + // 0x0035 5 + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0036 6 + 18,30,90,24,3,0,3,254,0,3,254,0,3,254,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0037 7 + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0038 8 + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0039 9 + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,255,192,31,255,192,31,255,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,31,240,0,31,240,0,31,240,0, + // 0x003a : + 6,21,21,24,9,3,252,252,252,252,252,252,0,0,0,0,0,0,0,0,0,252,252,252,252,252,252, + // 0x003b ; + 6,27,27,24,9,253,252,252,252,252,252,252,0,0,0,0,0,0,0,0,0,252,252,252,28,28,28,28,28,28,224,224,224, + // 0x003c < + 15,27,54,24,6,0,0,14,0,14,0,14,0,112,0,112,0,112,3,128,3,128,3,128,28,0,28,0,28,0,224,0,224,0,224,0,28,0,28,0,28,0,3,128,3,128,3,128,0,112,0,112,0,112,0,14,0,14,0,14, + // 0x003d = + 18,15,45,24,3,6,255,255,192,255,255,192,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192, + // 0x003e > + 15,27,54,24,3,0,224,0,224,0,224,0,28,0,28,0,28,0,3,128,3,128,3,128,0,112,0,112,0,112,0,14,0,14,0,14,0,112,0,112,0,112,3,128,3,128,3,128,28,0,28,0,28,0,224,0,224,0,224,0, + // 0x003f ? + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,0,0,0,0,0,0,0,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0040 @ + 18,30,90,24,3,0,3,254,0,3,254,0,3,254,0,28,1,192,28,1,192,28,1,192,224,113,192,224,113,192,224,113,192,227,143,192,227,143,192,227,143,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,224,127,192,224,127,192,224,127,192,28,0,0,28,0,0,28,0,0,3,255,192,3,255,192,3,255,192, + // 0x0041 A + 18,30,90,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0042 B + 18,30,90,24,3,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0, + // 0x0043 C + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0044 D + 18,30,90,24,3,0,255,240,0,255,240,0,255,240,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,14,0,224,14,0,224,14,0,255,240,0,255,240,0,255,240,0, + // 0x0045 E + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x0046 F + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0047 G + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,127,192,224,127,192,224,127,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0048 H + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0049 I + 15,30,60,24,6,0,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x004a J + 21,30,90,24,3,0,3,255,248,3,255,248,3,255,248,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x004b K + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,14,0,224,14,0,224,14,0,224,112,0,224,112,0,224,112,0,227,128,0,227,128,0,227,128,0,252,0,0,252,0,0,252,0,0,252,0,0,252,0,0,252,0,0,227,128,0,227,128,0,227,128,0,224,112,0,224,112,0,224,112,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192, + // 0x004c L + 18,30,90,24,3,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x004d M + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x004e N + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,1,192,224,1,192,224,1,192, + // 0x004f O + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0050 P + 18,30,90,24,3,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0051 Q + 21,33,99,24,3,253,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,227,241,192,227,241,192,227,241,192,252,15,192,252,15,192,252,15,192,31,254,0,31,254,0,31,254,0,0,1,248,0,1,248,0,1,248, + // 0x0052 R + 18,30,90,24,3,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0,224,112,0,224,112,0,224,112,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0053 S + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0054 T + 21,30,90,24,3,0,255,255,248,255,255,248,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0055 U + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0056 V + 21,30,90,24,3,0,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0057 W + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0058 X + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0059 Y + 21,30,90,24,3,0,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x005a Z + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x005b [ + 9,36,72,24,12,253,255,128,255,128,255,128,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,255,128,255,128,255,128, + // 0x005c "\" + 18,30,90,24,3,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,28,0,0,28,0,0,28,0,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,14,0,0,14,0,0,14,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x005d ] + 9,36,72,24,3,253,255,128,255,128,255,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,128,255,128,255,128, + // 0x005e ^ + 18,9,27,24,3,27,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192, + // 0x005f _ + 21,3,9,24,3,253,255,255,248,255,255,248,255,255,248, + // 0x0060 ` + 9,9,18,24,6,30,224,0,224,0,224,0,28,0,28,0,28,0,3,128,3,128,3,128, + // 0x0061 a + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0062 b + 18,33,99,24,3,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,252,1,192,252,1,192,252,1,192,227,254,0,227,254,0,227,254,0, + // 0x0063 c + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0064 d + 18,33,99,24,3,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,31,241,192,31,241,192,31,241,192,224,15,192,224,15,192,224,15,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0065 e + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0066 f + 15,33,66,24,3,0,0,126,0,126,0,126,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + // 0x0067 g + 18,33,99,24,3,250,0,1,192,0,1,192,0,1,192,31,241,192,31,241,192,31,241,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0,28,0,0,28,0,0,28,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0068 h + 18,33,99,24,3,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0069 i + 15,33,66,24,6,0,3,128,3,128,3,128,3,128,3,128,3,128,0,0,0,0,0,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x006a j + 15,39,78,24,3,250,0,14,0,14,0,14,0,14,0,14,0,14,0,0,0,0,0,0,0,126,0,126,0,126,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,224,112,224,112,224,112,31,128,31,128,31,128, + // 0x006b k + 18,33,99,24,3,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,14,0,224,14,0,224,14,0,224,112,0,224,112,0,224,112,0,227,128,0,227,128,0,227,128,0,252,0,0,252,0,0,252,0,0,227,128,0,227,128,0,227,128,0,224,112,0,224,112,0,224,112,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192, + // 0x006c l + 15,33,66,24,6,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x006d m + 21,24,72,24,3,0,255,143,192,255,143,192,255,143,192,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56, + // 0x006e n + 18,24,72,24,3,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x006f o + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0070 p + 18,30,90,24,3,250,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,252,1,192,252,1,192,252,1,192,227,254,0,227,254,0,227,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0071 q + 18,30,90,24,3,250,31,241,192,31,241,192,31,241,192,224,15,192,224,15,192,224,15,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x0072 r + 18,24,72,24,3,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0073 s + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0074 t + 15,30,60,24,3,0,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,0,126,0,126,0,126, + // 0x0075 u + 18,24,72,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0076 v + 18,24,72,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0, + // 0x0077 w + 21,24,72,24,3,0,224,0,56,224,0,56,224,0,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,31,143,192,31,143,192,31,143,192, + // 0x0078 x + 18,24,72,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0079 y + 18,30,90,24,3,250,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,15,192,28,15,192,28,15,192,3,241,192,3,241,192,3,241,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,31,254,0,31,254,0,31,254,0, + // 0x007a z + 18,24,72,24,3,0,255,255,192,255,255,192,255,255,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x007b { + 12,39,78,24,6,250,3,240,3,240,3,240,28,0,28,0,28,0,28,0,28,0,28,0,3,128,3,128,3,128,3,128,3,128,3,128,28,0,28,0,28,0,224,0,224,0,224,0,28,0,28,0,28,0,3,128,3,128,3,128,3,128,3,128,3,128,28,0,28,0,28,0,28,0,28,0,28,0,3,240,3,240,3,240, + // 0x007c | + 3,42,42,24,12,250,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + // 0x007d } + 12,39,78,24,6,250,252,0,252,0,252,0,3,128,3,128,3,128,3,128,3,128,3,128,28,0,28,0,28,0,28,0,28,0,28,0,3,128,3,128,3,128,0,112,0,112,0,112,3,128,3,128,3,128,28,0,28,0,28,0,28,0,28,0,28,0,3,128,3,128,3,128,3,128,3,128,3,128,252,0,252,0,252,0, + // 0x007e ~ + 21,9,27,24,3,24,31,128,56,31,128,56,31,128,56,224,112,56,224,112,56,224,112,56,224,15,192,224,15,192,224,15,192, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Cyrillic_30.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Cyrillic_30.cpp new file mode 100644 index 000000000000..0a4b254b4326 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Cyrillic_30.cpp @@ -0,0 +1,322 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// Unifont Cyrillic 48pt, capital 'A' height: 30px, width: 100%, range: 0x0401-0x0491, glyphs: 74 +extern const uint8_t Unifont_Cyrillic_30[6865] = { + 129,30,1,4,145,4,42,250, // unifont_t + // 0x0401 Ё + 18,42,126,24,3,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x0402 Ђ + 255, + // 0x0403 Ѓ + 255, + // 0x0404 Є + 18,30,90,24,3,0,3,254,0,3,254,0,3,254,0,28,1,192,28,1,192,28,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,28,1,192,28,1,192,28,1,192,3,254,0,3,254,0,3,254,0, + // 0x0405 Ѕ + 255, + // 0x0406 І + 15,30,60,24,6,0,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x0407 Ї + 15,42,84,24,6,0,224,112,224,112,224,112,224,112,224,112,224,112,0,0,0,0,0,0,0,0,0,0,0,0,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x0408 Ј + 255, + // 0x0409 Љ + 255, + // 0x040a Њ + 255, + // 0x040b Ћ + 255, + // 0x040c Ќ + 255, + // 0x040d Ѝ + 255, + // 0x040e Ў + 255, + // 0x040f Џ + 255, + // 0x0410 А + 18,30,90,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0411 Б + 18,30,90,24,3,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0, + // 0x0412 В + 18,30,90,24,3,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0, + // 0x0413 Г + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0414 Д + 24,36,108,24,0,250,0,15,248,0,15,248,0,15,248,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,255,255,255,255,255,255,255,255,255,224,0,7,224,0,7,224,0,7,224,0,7,224,0,7,224,0,7, + // 0x0415 Е + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x0416 Ж + 21,30,90,24,3,0,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,28,113,192,28,113,192,28,113,192,28,113,192,28,113,192,28,113,192,3,254,0,3,254,0,3,254,0,3,254,0,3,254,0,3,254,0,28,113,192,28,113,192,28,113,192,28,113,192,28,113,192,28,113,192,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56, + // 0x0417 З + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,31,254,0,31,254,0,31,254,0,0,14,0,0,14,0,0,14,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0418 И + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192, + // 0x0419 Й + 18,39,117,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192, + // 0x041a К + 18,30,90,24,3,0,224,15,192,224,15,192,224,15,192,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,227,128,0,227,128,0,227,128,0,227,128,0,227,128,0,227,128,0,252,0,0,252,0,0,252,0,0,227,128,0,227,128,0,227,128,0,224,112,0,224,112,0,224,112,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192, + // 0x041b Л + 18,30,90,24,3,0,3,255,192,3,255,192,3,255,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,224,1,192,224,1,192,224,1,192, + // 0x041c М + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x041d Н + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x041e О + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x041f П + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0420 Р + 18,30,90,24,3,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0421 С + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0422 Т + 21,30,90,24,3,0,255,255,248,255,255,248,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0423 У + 21,30,90,24,3,0,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,31,128,0,31,128,0,31,128,0, + // 0x0424 Ф + 21,33,99,24,3,0,0,112,0,0,112,0,0,112,0,31,255,192,31,255,192,31,255,192,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0425 Х + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0426 Ц + 21,36,108,24,3,250,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,248,255,255,248,255,255,248,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + // 0x0427 Ч + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x0428 Ш + 21,30,90,24,3,0,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,255,255,248,255,255,248,255,255,248, + // 0x0429 Щ + 24,36,108,24,0,250,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,255,255,255,255,255,255,255,255,255,0,0,7,0,0,7,0,0,7,0,0,7,0,0,7,0,0,7, + // 0x042a Ъ + 21,30,90,24,3,0,255,128,0,255,128,0,255,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,255,192,3,255,192,3,255,192,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,255,192,3,255,192,3,255,192, + // 0x042b Ы + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,129,192,255,129,192,255,129,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,255,129,192,255,129,192,255,129,192, + // 0x042c Ь + 18,30,90,24,3,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0, + // 0x042d Э + 18,30,90,24,3,0,31,240,0,31,240,0,31,240,0,224,14,0,224,14,0,224,14,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x042e Ю + 18,30,90,24,3,0,224,126,0,224,126,0,224,126,0,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,255,129,192,255,129,192,255,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,224,126,0,224,126,0,224,126,0, + // 0x042f Я + 18,30,90,24,3,0,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,255,192,31,255,192,31,255,192,3,129,192,3,129,192,3,129,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0430 а + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0431 б + 18,36,108,24,3,0,0,1,192,0,1,192,0,1,192,3,254,0,3,254,0,3,254,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0432 в + 18,24,72,24,3,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0, + // 0x0433 г + 18,24,72,24,3,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0434 д + 21,27,81,24,3,253,3,255,192,3,255,192,3,255,192,3,129,192,3,129,192,3,129,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,248,255,255,248,255,255,248,224,0,56,224,0,56,224,0,56, + // 0x0435 е + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0436 ж + 21,24,72,24,3,0,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,28,113,192,28,113,192,28,113,192,3,254,0,3,254,0,3,254,0,3,254,0,3,254,0,3,254,0,28,113,192,28,113,192,28,113,192,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56, + // 0x0437 з + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,254,0,31,254,0,31,254,0,0,14,0,0,14,0,0,14,0,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0438 и + 18,24,72,24,3,0,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192, + // 0x0439 й + 18,36,108,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192, + // 0x043a к + 18,24,72,24,3,0,224,15,192,224,15,192,224,15,192,224,112,0,224,112,0,224,112,0,227,128,0,227,128,0,227,128,0,252,0,0,252,0,0,252,0,0,227,128,0,227,128,0,227,128,0,224,112,0,224,112,0,224,112,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192, + // 0x043b л + 18,24,72,24,3,0,3,255,192,3,255,192,3,255,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,224,1,192,224,1,192,224,1,192, + // 0x043c м + 18,24,72,24,3,0,224,1,192,224,1,192,224,1,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x043d н + 18,24,72,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x043e о + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x043f п + 18,24,72,24,3,0,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0440 р + 18,30,90,24,3,250,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,252,1,192,252,1,192,252,1,192,227,254,0,227,254,0,227,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0441 с + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0442 т + 21,24,72,24,3,0,255,255,248,255,255,248,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0443 у + 18,30,90,24,3,250,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,252,0,0,252,0,0,252,0,0, + // 0x0444 ф + 21,39,117,24,3,250,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,255,192,31,255,192,31,255,192,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0445 х + 18,24,72,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0446 ц + 21,30,90,24,3,250,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,248,255,255,248,255,255,248,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + // 0x0447 ч + 18,24,72,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x0448 ш + 21,24,72,24,3,0,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,255,255,248,255,255,248,255,255,248, + // 0x0449 щ + 24,30,90,24,0,250,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,255,255,255,255,255,255,255,255,255,0,0,7,0,0,7,0,0,7,0,0,7,0,0,7,0,0,7, + // 0x044a ъ + 21,24,72,24,3,0,255,128,0,255,128,0,255,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,255,192,3,255,192,3,255,192,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,255,192,3,255,192,3,255,192, + // 0x044b ы + 18,24,72,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,129,192,255,129,192,255,129,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,255,129,192,255,129,192,255,129,192, + // 0x044c ь + 18,24,72,24,3,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0, + // 0x044d э + 18,24,72,24,3,0,31,240,0,31,240,0,31,240,0,224,14,0,224,14,0,224,14,0,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x044e ю + 18,24,72,24,3,0,224,126,0,224,126,0,224,126,0,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,255,129,192,255,129,192,255,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,224,126,0,224,126,0,224,126,0, + // 0x044f я + 18,24,72,24,3,0,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,255,192,31,255,192,31,255,192,3,129,192,3,129,192,3,129,192,28,1,192,28,1,192,28,1,192,224,1,192,224,1,192,224,1,192, + // 0x0450 ѐ + 255, + // 0x0451 ё + 18,36,108,24,3,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0452 ђ + 255, + // 0x0453 ѓ + 255, + // 0x0454 є + 18,24,72,24,3,0,3,254,0,3,254,0,3,254,0,28,1,192,28,1,192,28,1,192,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,28,1,192,28,1,192,28,1,192,3,254,0,3,254,0,3,254,0, + // 0x0455 ѕ + 255, + // 0x0456 і + 15,33,66,24,6,0,3,128,3,128,3,128,3,128,3,128,3,128,0,0,0,0,0,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x0457 ї + 15,33,66,24,6,0,224,112,224,112,224,112,224,112,224,112,224,112,0,0,0,0,0,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x0458 ј + 255, + // 0x0459 љ + 255, + // 0x045a њ + 255, + // 0x045b ћ + 255, + // 0x045c ќ + 255, + // 0x045d ѝ + 255, + // 0x045e ў + 255, + // 0x045f џ + 255, + // 0x0460 Ѡ + 255, + // 0x0461 ѡ + 255, + // 0x0462 Ѣ + 255, + // 0x0463 ѣ + 255, + // 0x0464 Ѥ + 255, + // 0x0465 ѥ + 255, + // 0x0466 Ѧ + 255, + // 0x0467 ѧ + 255, + // 0x0468 Ѩ + 255, + // 0x0469 ѩ + 255, + // 0x046a Ѫ + 255, + // 0x046b ѫ + 255, + // 0x046c Ѭ + 255, + // 0x046d ѭ + 255, + // 0x046e Ѯ + 255, + // 0x046f ѯ + 255, + // 0x0470 Ѱ + 255, + // 0x0471 ѱ + 255, + // 0x0472 Ѳ + 255, + // 0x0473 ѳ + 255, + // 0x0474 Ѵ + 255, + // 0x0475 ѵ + 255, + // 0x0476 Ѷ + 255, + // 0x0477 ѷ + 255, + // 0x0478 Ѹ + 255, + // 0x0479 ѹ + 255, + // 0x047a Ѻ + 255, + // 0x047b ѻ + 255, + // 0x047c Ѽ + 255, + // 0x047d ѽ + 255, + // 0x047e Ѿ + 255, + // 0x047f ѿ + 255, + // 0x0480 Ҁ + 255, + // 0x0481 ҁ + 255, + // 0x0482 ҂ + 255, + // 0x0483 ҃ + 255, + // 0x0484 ҄ + 255, + // 0x0485 ҅ + 255, + // 0x0486 ҆ + 255, + // 0x0487 ҇ + 255, + // 0x0488 ҈ + 255, + // 0x0489 ҉ + 255, + // 0x048a Ҋ + 255, + // 0x048b ҋ + 255, + // 0x048c Ҍ + 255, + // 0x048d ҍ + 255, + // 0x048e Ҏ + 255, + // 0x048f ҏ + 255, + // 0x0490 Ґ + 18,36,108,24,3,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0491 ґ + 18,30,90,24,3,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Greek_30.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Greek_30.cpp new file mode 100644 index 000000000000..f2c55f99a753 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Greek_30.cpp @@ -0,0 +1,178 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// Unifont Greek 48pt, capital 'A' height: 30px, width: 100%, range: 0x0386-0x03ce, glyphs: 63 +extern const uint8_t Unifont_Greek_30[6228] = { + 129,30,134,3,206,3,42,250, // unifont_t + // 0x0386 Ά + 18,42,126,24,3,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,0,0,0,0,0,0,0,0,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0387 · + 255, + // 0x0388 Έ + 18,42,126,24,3,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x0389 Ή + 18,42,126,24,3,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x038a Ί + 18,42,126,24,3,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,0,0,0,0,0,0,0,0,0,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,255,192,31,255,192,31,255,192, + // 0x038b ΋ + 255, + // 0x038c Ό + 18,42,126,24,3,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x038d ΍ + 255, + // 0x038e Ύ + 21,42,126,24,3,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,0,0,0,0,0,0,0,0,0,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x038f Ώ + 21,45,135,24,3,253,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,0,0,0,0,0,0,0,0,0,31,255,192,31,255,192,31,255,192,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,255,143,248,255,143,248,255,143,248, + // 0x0390 ΐ + 255, + // 0x0391 Α + 18,30,90,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0392 Β + 18,30,90,24,3,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0, + // 0x0393 Γ + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0394 Δ + 21,30,90,24,3,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,255,255,248,255,255,248,255,255,248, + // 0x0395 Ε + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x0396 Ζ + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x0397 Η + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0398 Θ + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0399 Ι + 15,30,60,24,6,0,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x039a Κ + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,14,0,224,14,0,224,14,0,224,112,0,224,112,0,224,112,0,227,128,0,227,128,0,227,128,0,252,0,0,252,0,0,252,0,0,252,0,0,252,0,0,252,0,0,227,128,0,227,128,0,227,128,0,224,112,0,224,112,0,224,112,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192, + // 0x039b Λ + 21,30,90,24,3,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56, + // 0x039c Μ + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x039d Ν + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,1,192,224,1,192,224,1,192, + // 0x039e Ξ + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192, + // 0x039f Ο + 18,30,90,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x03a0 Π + 21,30,90,24,3,0,255,255,248,255,255,248,255,255,248,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192, + // 0x03a1 Ρ + 18,30,90,24,3,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x03a2 ΢ + 255, + // 0x03a3 Σ + 18,30,90,24,3,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,28,0,0,28,0,0,28,0,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x03a4 Τ + 21,30,90,24,3,0,255,255,248,255,255,248,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x03a5 Υ + 21,30,90,24,3,0,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x03a6 Φ + 21,30,90,24,3,0,255,255,248,255,255,248,255,255,248,0,112,0,0,112,0,0,112,0,31,255,192,31,255,192,31,255,192,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0,255,255,248,255,255,248,255,255,248, + // 0x03a7 Χ + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x03a8 Ψ + 21,30,90,24,3,0,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x03a9 Ω + 21,30,90,24,3,0,31,255,192,31,255,192,31,255,192,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,255,143,248,255,143,248,255,143,248, + // 0x03aa Ϊ + 255, + // 0x03ab Ϋ + 255, + // 0x03ac ά + 18,39,117,24,3,0,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,129,192,31,129,192,31,129,192,224,113,192,224,113,192,224,113,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,113,192,224,113,192,224,113,192,31,129,192,31,129,192,31,129,192, + // 0x03ad έ + 18,39,117,24,3,0,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,192,31,255,192,31,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,31,254,0,31,254,0,31,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,31,255,192,31,255,192,31,255,192, + // 0x03ae ή + 18,45,135,24,3,250,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x03af ί + 12,39,78,24,6,0,0,112,0,112,0,112,3,128,3,128,3,128,28,0,28,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,252,0,252,0,252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,3,240,3,240,3,240, + // 0x03b0 ΰ + 255, + // 0x03b1 α + 18,24,72,24,3,0,31,129,192,31,129,192,31,129,192,224,113,192,224,113,192,224,113,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,113,192,224,113,192,224,113,192,31,129,192,31,129,192,31,129,192, + // 0x03b2 β + 18,36,108,24,3,250,31,240,0,31,240,0,31,240,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,252,1,192,252,1,192,252,1,192,227,254,0,227,254,0,227,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x03b3 γ + 21,24,72,24,3,0,31,128,56,31,128,56,31,128,56,224,112,56,224,112,56,224,112,56,0,113,192,0,113,192,0,113,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + // 0x03b4 δ + 18,30,90,24,3,0,3,254,0,3,254,0,3,254,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x03b5 ε + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,31,254,0,31,254,0,31,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x03b6 ζ + 15,36,72,24,6,250,224,0,224,0,224,0,224,0,224,0,224,0,31,240,31,240,31,240,3,128,3,128,3,128,28,0,28,0,28,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,31,240,31,240,31,240,0,14,0,14,0,14,31,240,31,240,31,240, + // 0x03b7 η + 18,30,90,24,3,250,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x03b8 θ + 18,30,90,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0, + // 0x03b9 ι + 12,24,48,24,6,0,252,0,252,0,252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,3,240,3,240,3,240, + // 0x03ba κ + 15,24,48,24,6,0,224,14,224,14,224,14,224,112,224,112,224,112,227,128,227,128,227,128,252,0,252,0,252,0,252,0,252,0,252,0,227,128,227,128,227,128,224,112,224,112,224,112,224,14,224,14,224,14, + // 0x03bb λ + 18,30,90,24,3,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x03bc μ + 18,30,90,24,3,250,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,227,241,192,227,241,192,227,241,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x03bd ν + 18,24,72,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,112,0,224,112,0,224,112,0,227,128,0,227,128,0,227,128,0,252,0,0,252,0,0,252,0,0, + // 0x03be ξ + 18,36,108,24,3,250,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,31,254,0,31,254,0,31,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,31,254,0,31,254,0,31,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,31,254,0,31,254,0,31,254,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,31,254,0,31,254,0,31,254,0, + // 0x03bf ο + 18,24,72,24,3,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x03c0 π + 18,24,72,24,3,0,255,255,192,255,255,192,255,255,192,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0, + // 0x03c1 ρ + 18,30,90,24,3,250,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,252,1,192,252,1,192,252,1,192,227,254,0,227,254,0,227,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x03c2 ς + 18,30,90,24,3,250,3,255,192,3,255,192,3,255,192,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,28,0,0,28,0,0,28,0,0,3,254,0,3,254,0,3,254,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,3,254,0,3,254,0,3,254,0, + // 0x03c3 σ + 21,24,72,24,3,0,31,255,248,31,255,248,31,255,248,224,112,0,224,112,0,224,112,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x03c4 τ + 18,24,72,24,3,0,255,255,192,255,255,192,255,255,192,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,126,0,0,126,0,0,126,0, + // 0x03c5 υ + 18,24,72,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x03c6 φ + 21,30,90,24,3,250,28,15,192,28,15,192,28,15,192,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x03c7 χ + 24,33,99,24,0,250,252,0,7,252,0,7,252,0,7,3,128,7,3,128,7,3,128,7,3,128,56,3,128,56,3,128,56,0,112,56,0,112,56,0,112,56,0,113,192,0,113,192,0,113,192,0,126,0,0,126,0,0,126,0,3,142,0,3,142,0,3,142,0,28,14,0,28,14,0,28,14,0,28,1,192,28,1,192,28,1,192,224,1,192,224,1,192,224,1,192,224,0,63,224,0,63,224,0,63, + // 0x03c8 ψ + 21,30,90,24,3,250,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x03c9 ω + 21,24,72,24,3,0,28,1,192,28,1,192,28,1,192,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,31,143,192,31,143,192,31,143,192, + // 0x03ca ϊ + 255, + // 0x03cb ϋ + 255, + // 0x03cc ό + 18,39,117,24,3,0,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x03cd ύ + 18,39,117,24,3,0,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x03ce ώ + 21,39,117,24,3,0,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,1,192,28,1,192,28,1,192,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,31,143,192,31,143,192,31,143,192, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Katakana_30.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Katakana_30.cpp new file mode 100644 index 000000000000..f443e717aabd --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Katakana_30.cpp @@ -0,0 +1,238 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// Unifont Katakana 48pt, capital 'A' height: 30px, width: 100%, range: 0x30a0-0x8868, glyphs: 103 +extern const uint8_t Unifont_Katakana_30[15707] = { + 161,30,160,48,104,136,42,250, // unifont_t + // 0x30a0 ゠ + 160,48,18,15,45,48,15,6,255,255,192,255,255,192,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192, + // 0x30a1 ァ + 161,48,27,24,96,48,6,253,224,1,255,224,224,1,255,224,224,1,255,224,31,254,0,224,31,254,0,224,31,254,0,224,0,14,7,0,0,14,7,0,0,14,7,0,0,1,248,0,0,1,248,0,0,1,248,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,14,0,0,0,14,0,0,0,14,0,0,0,112,0,0,0,112,0,0,0,112,0,0, + // 0x30a2 ア + 162,48,30,36,144,48,6,253,224,1,255,252,224,1,255,252,224,1,255,252,31,254,0,28,31,254,0,28,31,254,0,28,0,0,0,224,0,0,0,224,0,0,0,224,0,14,7,0,0,14,7,0,0,14,7,0,0,1,248,0,0,1,248,0,0,1,248,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,14,0,0,0,14,0,0,0,14,0,0,0,14,0,0,0,14,0,0,0,14,0,0,0,112,0,0,0,112,0,0,0,112,0,0,3,128,0,0,3,128,0,0,3,128,0,0, + // 0x30a3 ィ + 163,48,24,30,90,48,9,253,0,0,7,0,0,7,0,0,7,0,0,56,0,0,56,0,0,56,0,1,192,0,1,192,0,1,192,0,127,192,0,127,192,0,127,192,255,129,192,255,129,192,255,129,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x30a4 イ + 164,48,27,39,156,48,6,253,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,7,0,0,0,7,0,0,0,7,0,0,0,56,0,0,0,56,0,0,0,56,0,0,15,192,0,0,15,192,0,0,15,192,0,3,241,192,0,3,241,192,0,3,241,192,0,252,0,56,0,252,0,56,0,252,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0, + // 0x30a5 ゥ + 165,48,24,30,90,48,9,253,0,112,0,0,112,0,0,112,0,0,14,0,0,14,0,0,14,0,0,15,255,0,15,255,0,15,255,255,240,7,255,240,7,255,240,7,28,0,7,28,0,7,28,0,7,28,0,56,28,0,56,28,0,56,0,0,56,0,0,56,0,0,56,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0, + // 0x30a6 ウ + 166,48,30,39,156,48,6,253,0,14,0,0,0,14,0,0,0,14,0,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,255,252,0,1,255,252,0,1,255,252,255,254,0,28,255,254,0,28,255,254,0,28,28,0,0,28,28,0,0,28,28,0,0,28,28,0,0,224,28,0,0,224,28,0,0,224,3,128,0,224,3,128,0,224,3,128,0,224,3,128,7,0,3,128,7,0,3,128,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,56,0,0,0,56,0,0,0,56,0,0,1,192,0,0,1,192,0,0,1,192,0,0,14,0,0,0,14,0,0,0,14,0,0, + // 0x30a7 ェ + 167,48,27,21,84,48,9,0,0,1,255,0,0,1,255,0,0,1,255,0,31,254,0,0,31,254,0,0,31,254,0,0,0,14,0,0,0,14,0,0,0,14,0,0,0,14,0,0,0,14,0,0,0,14,0,0,0,14,0,0,0,14,0,0,0,14,0,0,0,15,255,0,0,15,255,0,0,15,255,0,255,240,0,224,255,240,0,224,255,240,0,224, + // 0x30a8 エ + 168,48,33,27,135,48,6,3,0,0,7,252,0,0,0,7,252,0,0,0,7,252,0,31,255,248,0,0,31,255,248,0,0,31,255,248,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,15,255,252,0,0,15,255,252,0,0,15,255,252,0,255,240,0,3,128,255,240,0,3,128,255,240,0,3,128, + // 0x30a9 ォ + 169,48,24,30,90,48,9,253,0,14,0,0,14,0,0,14,0,0,1,192,0,1,192,0,1,192,224,1,255,224,1,255,224,1,255,31,255,192,31,255,192,31,255,192,0,15,192,0,15,192,0,15,192,0,113,192,0,113,192,0,113,192,3,129,192,3,129,192,3,129,192,28,1,192,28,1,192,28,1,192,224,15,192,224,15,192,224,15,192,0,1,192,0,1,192,0,1,192, + // 0x30aa オ + 170,48,33,39,195,48,6,253,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,224,0,7,255,128,224,0,7,255,128,224,0,7,255,128,31,255,255,0,0,31,255,255,0,0,31,255,255,0,0,0,0,63,0,0,0,0,63,0,0,0,0,63,0,0,0,1,199,0,0,0,1,199,0,0,0,1,199,0,0,0,14,7,0,0,0,14,7,0,0,0,14,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,28,0,7,0,0,28,0,7,0,0,28,0,7,0,0,0,0,63,0,0,0,0,63,0,0,0,0,63,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0, + // 0x30ab カ + 171,48,30,39,156,48,6,253,0,14,0,0,0,14,0,0,0,14,0,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,224,1,255,252,224,1,255,252,224,1,255,252,31,255,192,28,31,255,192,28,31,255,192,28,0,14,0,28,0,14,0,28,0,14,0,28,0,14,0,28,0,14,0,28,0,14,0,28,0,112,0,224,0,112,0,224,0,112,0,224,0,112,0,224,0,112,0,224,0,112,0,224,3,128,0,224,3,128,0,224,3,128,0,224,28,1,199,0,28,1,199,0,28,1,199,0,224,0,63,0,224,0,63,0,224,0,63,0,0,0,56,0,0,0,56,0,0,0,56,0, + // 0x30ac ガ + 172,48,36,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,14,0,224,112,0,14,0,224,112,0,14,0,224,112,0,1,192,28,112,0,1,192,28,112,0,1,192,28,112,0,1,192,28,0,0,1,192,28,0,0,1,192,28,0,224,1,255,252,0,224,1,255,252,0,224,1,255,252,0,31,255,192,28,0,31,255,192,28,0,31,255,192,28,0,0,14,0,28,0,0,14,0,28,0,0,14,0,28,0,0,14,0,28,0,0,14,0,28,0,0,14,0,28,0,0,112,0,224,0,0,112,0,224,0,0,112,0,224,0,0,112,0,224,0,0,112,0,224,0,0,112,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,28,1,199,0,0,28,1,199,0,0,28,1,199,0,0,224,0,63,0,0,224,0,63,0,0,224,0,63,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0, + // 0x30ad キ + 173,48,33,39,195,48,6,253,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,7,252,0,0,14,7,252,0,0,14,7,252,0,0,15,248,0,0,0,15,248,0,0,0,15,248,0,0,31,241,192,0,0,31,241,192,0,0,31,241,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,199,255,128,0,1,199,255,128,0,1,199,255,128,0,15,248,0,0,0,15,248,0,0,0,15,248,0,0,255,240,56,0,0,255,240,56,0,0,255,240,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0, + // 0x30ae ギ + 174,48,36,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,112,0,224,112,0,112,0,224,112,0,112,0,224,112,0,14,0,28,112,0,14,0,28,112,0,14,0,28,112,0,14,7,252,0,0,14,7,252,0,0,14,7,252,0,0,15,248,0,0,0,15,248,0,0,0,15,248,0,0,31,241,192,0,0,31,241,192,0,0,31,241,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,199,255,128,0,1,199,255,128,0,1,199,255,128,0,15,248,0,0,0,15,248,0,0,0,15,248,0,0,255,240,56,0,0,255,240,56,0,0,255,240,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0, + // 0x30af ク + 175,48,27,39,156,48,9,253,3,128,0,0,3,128,0,0,3,128,0,0,0,112,63,224,0,112,63,224,0,112,63,224,0,127,192,224,0,127,192,224,0,127,192,224,0,112,7,0,0,112,7,0,0,112,7,0,3,128,7,0,3,128,7,0,3,128,7,0,3,128,56,0,3,128,56,0,3,128,56,0,28,0,56,0,28,0,56,0,28,0,56,0,224,1,192,0,224,1,192,0,224,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,14,0,0,0,14,0,0,0,14,0,0,0,112,0,0,0,112,0,0,0,112,0,0,3,128,0,0,3,128,0,0,3,128,0,0,28,0,0,0,28,0,0,0,28,0,0,0, + // 0x30b0 グ + 176,48,36,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,3,128,0,224,112,3,128,0,224,112,3,128,0,224,112,0,112,63,28,112,0,112,63,28,112,0,112,63,28,112,0,127,199,28,0,0,127,199,28,0,0,127,199,28,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,3,128,56,0,0,3,128,56,0,0,3,128,56,0,0,28,0,56,0,0,28,0,56,0,0,28,0,56,0,0,224,1,192,0,0,224,1,192,0,0,224,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0, + // 0x30b1 ケ + 177,48,33,39,195,48,6,253,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,255,128,0,112,0,255,128,0,112,0,255,128,3,255,255,0,0,3,255,255,0,0,3,255,255,0,0,3,129,192,0,0,3,129,192,0,0,3,129,192,0,0,28,0,56,0,0,28,0,56,0,0,28,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0, + // 0x30b2 ゲ + 178,48,36,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,3,128,0,224,112,3,128,0,224,112,3,128,0,224,112,0,112,0,28,112,0,112,0,28,112,0,112,0,28,112,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,255,128,0,112,0,255,128,0,112,0,255,128,3,255,255,0,0,3,255,255,0,0,3,255,255,0,0,3,129,192,0,0,3,129,192,0,0,3,129,192,0,0,28,0,56,0,0,28,0,56,0,0,28,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0, + // 0x30b3 コ + 179,48,30,27,108,48,6,3,224,1,255,252,224,1,255,252,224,1,255,252,31,254,0,28,31,254,0,28,31,254,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,15,255,224,0,15,255,224,0,15,255,224,31,240,0,224,31,240,0,224,31,240,0,224, + // 0x30b4 ゴ + 180,48,39,36,180,48,3,3,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,224,1,255,227,128,224,1,255,227,128,224,1,255,227,128,31,254,0,224,0,31,254,0,224,0,31,254,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,15,255,0,0,0,15,255,0,0,0,15,255,0,0,31,240,7,0,0,31,240,7,0,0,31,240,7,0,0, + // 0x30b5 サ + 181,48,33,39,195,48,6,253,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,224,112,63,255,128,224,112,63,255,128,224,112,63,255,128,31,255,199,0,0,31,255,199,0,0,31,255,199,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0, + // 0x30b6 ザ + 182,48,36,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,56,224,112,0,0,56,224,112,0,0,56,224,112,3,128,7,28,112,3,128,7,28,112,3,128,7,28,112,0,112,7,28,0,0,112,7,28,0,0,112,7,28,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,224,112,63,255,128,224,112,63,255,128,224,112,63,255,128,31,255,199,0,0,31,255,199,0,0,31,255,199,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0, + // 0x30b7 シ + 183,48,30,33,132,48,9,0,31,128,0,0,31,128,0,0,31,128,0,0,0,112,0,0,0,112,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,0,0,0,252,0,0,0,252,0,0,0,3,128,0,28,3,128,0,28,3,128,0,28,0,0,0,224,0,0,0,224,0,0,0,224,0,0,7,0,0,0,7,0,0,0,7,0,0,0,56,0,0,0,56,0,0,0,56,0,0,1,192,0,0,1,192,0,0,1,192,0,224,126,0,0,224,126,0,0,224,126,0,0,31,128,0,0,31,128,0,0,31,128,0,0, + // 0x30b8 ジ + 184,48,33,36,180,48,9,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,31,128,7,3,128,31,128,7,3,128,31,128,7,3,128,0,112,0,227,128,0,112,0,227,128,0,112,0,227,128,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,224,126,0,0,0,224,126,0,0,0,224,126,0,0,0,31,128,0,0,0,31,128,0,0,0,31,128,0,0,0, + // 0x30b9 ス + 185,48,30,30,120,48,6,3,28,0,63,224,28,0,63,224,28,0,63,224,3,255,192,224,3,255,192,224,3,255,192,224,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,1,199,0,0,1,199,0,0,1,199,0,0,14,0,224,0,14,0,224,0,14,0,224,3,240,0,28,3,240,0,28,3,240,0,28,252,0,0,28,252,0,0,28,252,0,0,28, + // 0x30ba ズ + 186,48,39,36,180,48,3,3,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,28,0,63,227,142,28,0,63,227,142,28,0,63,227,142,3,255,192,227,128,3,255,192,227,128,3,255,192,227,128,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,199,0,0,0,1,199,0,0,0,1,199,0,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,3,240,0,28,0,3,240,0,28,0,3,240,0,28,0,252,0,0,28,0,252,0,0,28,0,252,0,0,28,0, + // 0x30bb セ + 187,48,33,36,180,48,6,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,7,255,128,0,112,7,255,128,0,112,7,255,128,0,113,248,3,128,0,113,248,3,128,0,113,248,3,128,224,126,0,28,0,224,126,0,28,0,224,126,0,28,0,31,240,0,224,0,31,240,0,224,0,31,240,0,224,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,1,255,252,0,0,1,255,252,0,0,1,255,252,0, + // 0x30bc ゼ + 188,48,36,39,195,48,6,0,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,3,128,0,224,112,3,128,0,224,112,3,128,0,224,112,0,112,0,28,112,0,112,0,28,112,0,112,0,28,112,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,7,255,128,0,112,7,255,128,0,112,7,255,128,0,113,248,3,128,0,113,248,3,128,0,113,248,3,128,224,126,0,28,0,224,126,0,28,0,224,126,0,28,0,31,240,0,224,0,31,240,0,224,0,31,240,0,224,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,1,255,255,128,0,1,255,255,128,0,1,255,255,128, + // 0x30bd ソ + 189,48,27,39,156,48,9,253,0,0,7,0,0,0,7,0,0,0,7,0,224,0,0,224,224,0,0,224,224,0,0,224,28,0,0,224,28,0,0,224,28,0,0,224,3,128,0,224,3,128,0,224,3,128,0,224,3,128,7,0,3,128,7,0,3,128,7,0,3,128,7,0,3,128,7,0,3,128,7,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,14,0,0,0,14,0,0,0,14,0,0,0,112,0,0,0,112,0,0,0,112,0,0,3,128,0,0,3,128,0,0,3,128,0,0, + // 0x30be ゾ + 190,48,36,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,56,224,112,0,0,56,224,112,0,0,56,224,112,224,0,7,28,112,224,0,7,28,112,224,0,7,28,112,28,0,7,28,0,28,0,7,28,0,28,0,7,28,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0, + // 0x30bf タ + 191,48,30,39,156,48,6,253,0,14,0,0,0,14,0,0,0,14,0,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,255,252,0,1,255,252,0,1,255,252,0,14,0,28,0,14,0,28,0,14,0,28,0,14,0,224,0,14,0,224,0,14,0,224,0,113,192,224,0,113,192,224,0,113,192,224,3,128,63,0,3,128,63,0,3,128,63,0,28,0,7,0,28,0,7,0,28,0,7,0,0,0,56,0,0,0,56,0,0,0,56,0,0,1,192,0,0,1,192,0,0,1,192,0,0,14,0,0,0,14,0,0,0,14,0,0,3,240,0,0,3,240,0,0,3,240,0,0,252,0,0,0,252,0,0,0,252,0,0,0, + // 0x30c0 ダ + 192,48,39,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,14,0,28,14,0,14,0,28,14,0,14,0,28,14,0,1,192,3,142,0,1,192,3,142,0,1,192,3,142,0,1,255,255,128,0,1,255,255,128,0,1,255,255,128,0,14,0,28,0,0,14,0,28,0,0,14,0,28,0,0,14,0,28,0,0,14,0,28,0,0,14,0,28,0,0,113,192,224,0,0,113,192,224,0,0,113,192,224,0,3,128,56,224,0,3,128,56,224,0,3,128,56,224,0,28,0,7,0,0,28,0,7,0,0,28,0,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0, + // 0x30c1 チ + 193,48,33,39,195,48,6,253,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,1,248,0,0,0,1,248,0,0,0,1,248,0,0,31,254,0,0,0,31,254,0,0,0,31,254,0,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,0,63,255,128,0,0,63,255,128,0,0,63,255,128,224,15,248,0,0,224,15,248,0,0,224,15,248,0,0,31,240,56,0,0,31,240,56,0,0,31,240,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0, + // 0x30c2 ヂ + 194,48,36,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,7,224,112,0,0,7,224,112,0,0,7,224,112,0,1,248,28,112,0,1,248,28,112,0,1,248,28,112,31,254,0,28,0,31,254,0,28,0,31,254,0,28,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,0,63,255,128,0,0,63,255,128,0,0,63,255,128,224,15,248,0,0,224,15,248,0,0,224,15,248,0,0,31,240,56,0,0,31,240,56,0,0,31,240,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0, + // 0x30c3 ッ + 195,48,24,24,72,48,9,253,3,128,56,3,128,56,3,128,56,224,112,7,224,112,7,224,112,7,28,112,7,28,112,7,28,112,7,28,0,56,28,0,56,28,0,56,0,0,56,0,0,56,0,0,56,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0, + // 0x30c4 ツ + 196,48,33,33,165,48,6,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,224,14,0,3,128,224,14,0,3,128,224,14,0,3,128,28,1,192,3,128,28,1,192,3,128,28,1,192,3,128,3,129,192,28,0,3,129,192,28,0,3,129,192,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0, + // 0x30c5 ヅ + 197,48,39,39,195,48,3,0,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,3,128,7,3,142,3,128,7,3,142,3,128,7,3,142,0,112,0,227,128,0,112,0,227,128,0,112,0,227,128,224,14,0,224,0,224,14,0,224,0,224,14,0,224,0,28,14,0,224,0,28,14,0,224,0,28,14,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0, + // 0x30c6 テ + 198,48,33,36,180,48,6,253,28,1,255,224,0,28,1,255,224,0,28,1,255,224,0,3,254,0,0,0,3,254,0,0,0,3,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,255,128,0,0,7,255,128,0,0,7,255,128,224,15,248,0,0,224,15,248,0,0,224,15,248,0,0,31,240,56,0,0,31,240,56,0,0,31,240,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0, + // 0x30c7 デ + 199,48,36,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,224,112,0,0,0,224,112,0,0,0,224,112,28,1,255,28,112,28,1,255,28,112,28,1,255,28,112,3,254,0,28,0,3,254,0,28,0,3,254,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0,63,252,0,224,0,63,252,0,224,0,63,252,0,31,255,192,0,0,31,255,192,0,0,31,255,192,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0, + // 0x30c8 ト + 200,48,21,39,117,48,12,253,224,0,0,224,0,0,224,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,31,240,0,31,240,0,31,240,0,28,15,192,28,15,192,28,15,192,28,0,56,28,0,56,28,0,56,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + // 0x30c9 ド + 201,48,27,42,168,48,9,253,0,0,7,0,0,0,7,0,0,0,7,0,224,1,192,224,224,1,192,224,224,1,192,224,28,0,56,224,28,0,56,224,28,0,56,224,28,0,56,0,28,0,56,0,28,0,56,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,31,240,0,0,31,240,0,0,31,240,0,0,28,15,192,0,28,15,192,0,28,15,192,0,28,0,56,0,28,0,56,0,28,0,56,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0, + // 0x30ca ナ + 202,48,33,39,195,48,6,253,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,224,0,63,255,128,224,0,63,255,128,224,0,63,255,128,31,255,248,0,0,31,255,248,0,0,31,255,248,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0, + // 0x30cb ニ + 203,48,33,24,120,48,6,6,0,0,63,224,0,0,0,63,224,0,0,0,63,224,0,31,255,192,0,0,31,255,192,0,0,31,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,252,0,0,1,255,252,0,0,1,255,252,0,255,254,0,3,128,255,254,0,3,128,255,254,0,3,128, + // 0x30cc ヌ + 204,48,30,33,132,48,6,0,28,0,63,252,28,0,63,252,28,0,63,252,3,255,192,28,3,255,192,28,3,255,192,28,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,3,254,7,0,3,254,7,0,3,254,7,0,0,1,255,0,0,1,255,0,0,1,255,0,0,0,63,0,0,0,63,0,0,0,63,0,0,1,192,224,0,1,192,224,0,1,192,224,0,14,0,28,0,14,0,28,0,14,0,28,3,240,0,28,3,240,0,28,3,240,0,28,252,0,0,0,252,0,0,0,252,0,0,0, + // 0x30cd ネ + 205,48,33,39,195,48,6,253,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,255,224,0,0,1,255,224,0,0,1,255,224,0,31,254,0,224,0,31,254,0,224,0,31,254,0,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,15,199,0,0,0,15,199,0,0,0,15,199,0,0,3,241,192,252,0,3,241,192,252,0,3,241,192,252,0,252,1,192,3,128,252,1,192,3,128,252,1,192,3,128,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + // 0x30ce ノ + 206,48,24,39,117,48,9,253,0,0,56,0,0,56,0,0,56,0,0,7,0,0,7,0,0,7,0,0,7,0,0,7,0,0,7,0,0,7,0,0,7,0,0,7,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0, + // 0x30cf ハ + 207,48,36,24,120,48,3,3,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,28,0,0,14,0,28,0,0,14,0,28,0,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x30d0 バ + 208,48,39,33,165,48,3,3,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,112,7,3,128,0,112,7,3,128,0,112,7,3,128,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,28,0,0,14,0,28,0,0,14,0,28,0,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x30d1 パ + 209,48,39,36,180,48,3,3,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,28,0,0,14,0,28,0,0,14,0,28,0,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x30d2 ヒ + 210,48,27,33,132,48,9,0,224,0,0,0,224,0,0,0,224,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,1,255,0,28,1,255,0,28,1,255,0,31,254,0,0,31,254,0,0,31,254,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,3,128,0,0,3,128,0,0,3,128,0,0,0,127,255,224,0,127,255,224,0,127,255,224, + // 0x30d3 ビ + 211,48,30,36,144,48,9,0,0,0,0,224,0,0,0,224,0,0,0,224,224,0,56,28,224,0,56,28,224,0,56,28,28,0,7,28,28,0,7,28,28,0,7,28,28,0,7,0,28,0,7,0,28,0,7,0,28,0,0,0,28,0,0,0,28,0,0,0,28,1,255,0,28,1,255,0,28,1,255,0,31,254,0,0,31,254,0,0,31,254,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,3,128,0,0,3,128,0,0,3,128,0,0,0,127,255,224,0,127,255,224,0,127,255,224, + // 0x30d4 ピ + 212,48,30,36,144,48,9,0,0,0,7,224,0,0,7,224,0,0,7,224,224,0,56,28,224,0,56,28,224,0,56,28,28,0,56,28,28,0,56,28,28,0,56,28,28,0,7,224,28,0,7,224,28,0,7,224,28,0,0,0,28,0,0,0,28,0,0,0,28,1,255,0,28,1,255,0,28,1,255,0,31,254,0,0,31,254,0,0,31,254,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,3,128,0,0,3,128,0,0,3,128,0,0,0,127,255,224,0,127,255,224,0,127,255,224, + // 0x30d5 フ + 213,48,27,33,132,48,9,0,224,1,255,224,224,1,255,224,224,1,255,224,31,254,0,224,31,254,0,224,31,254,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,1,192,0,0,1,192,0,0,1,192,0,0,14,0,0,0,14,0,0,0,14,0,0,0,112,0,0,0,112,0,0,0,112,0,0,3,128,0,0,3,128,0,0,3,128,0,0, + // 0x30d6 ブ + 214,48,36,39,195,48,6,0,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,224,112,0,0,0,224,112,0,0,0,224,112,224,15,255,28,112,224,15,255,28,112,224,15,255,28,112,31,240,7,28,0,31,240,7,28,0,31,240,7,28,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0, + // 0x30d7 プ + 215,48,36,39,195,48,6,0,0,0,0,31,128,0,0,0,31,128,0,0,0,31,128,0,0,0,224,112,0,0,0,224,112,0,0,0,224,112,224,15,255,224,112,224,15,255,224,112,224,15,255,224,112,31,240,7,31,128,31,240,7,31,128,31,240,7,31,128,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0, + // 0x30d8 ヘ + 216,48,39,18,90,48,3,9,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,56,0,0,0,14,56,0,0,0,14,56,0,0,224,112,7,0,0,224,112,7,0,0,224,112,7,0,0,31,128,0,224,0,31,128,0,224,0,31,128,0,224,0,0,0,0,31,128,0,0,0,31,128,0,0,0,31,128,0,0,0,0,126,0,0,0,0,126,0,0,0,0,126, + // 0x30d9 ベ + 217,48,39,27,135,48,3,9,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,7,3,128,0,0,7,3,128,0,0,7,3,128,0,0,0,227,128,0,0,0,227,128,0,0,0,227,128,0,1,192,224,0,0,1,192,224,0,0,1,192,224,0,0,14,56,0,0,0,14,56,0,0,0,14,56,0,0,224,112,7,0,0,224,112,7,0,0,224,112,7,0,0,31,128,0,224,0,31,128,0,224,0,31,128,0,224,0,0,0,0,31,128,0,0,0,31,128,0,0,0,31,128,0,0,0,0,126,0,0,0,0,126,0,0,0,0,126, + // 0x30da ペ + 218,48,39,27,135,48,3,9,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,7,3,128,0,0,7,3,128,0,0,7,3,128,0,0,7,3,128,0,0,7,3,128,0,0,7,3,128,0,1,192,252,0,0,1,192,252,0,0,1,192,252,0,0,14,56,0,0,0,14,56,0,0,0,14,56,0,0,224,112,7,0,0,224,112,7,0,0,224,112,7,0,0,31,128,0,224,0,31,128,0,224,0,31,128,0,224,0,0,0,0,31,128,0,0,0,31,128,0,0,0,31,128,0,0,0,0,126,0,0,0,0,126,0,0,0,0,126, + // 0x30db ホ + 219,48,30,39,156,48,6,253,0,14,0,0,0,14,0,0,0,14,0,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,224,1,255,252,224,1,255,252,224,1,255,252,31,255,192,0,31,255,192,0,31,255,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,199,0,0,1,199,0,0,1,199,0,3,129,192,224,3,129,192,224,3,129,192,224,3,129,192,28,3,129,192,28,3,129,192,28,28,1,192,28,28,1,192,28,28,1,192,28,224,1,192,0,224,1,192,0,224,1,192,0,0,15,192,0,0,15,192,0,0,15,192,0,0,1,192,0,0,1,192,0,0,1,192,0, + // 0x30dc ボ + 220,48,36,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,14,0,224,112,0,14,0,224,112,0,14,0,224,112,0,1,192,28,112,0,1,192,28,112,0,1,192,28,112,0,1,192,28,0,0,1,192,28,0,0,1,192,28,0,224,1,255,252,0,224,1,255,252,0,224,1,255,252,0,31,255,192,0,0,31,255,192,0,0,31,255,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,199,0,0,0,1,199,0,0,0,1,199,0,0,3,129,192,224,0,3,129,192,224,0,3,129,192,224,0,3,129,192,28,0,3,129,192,28,0,3,129,192,28,0,28,1,192,28,0,28,1,192,28,0,28,1,192,28,0,224,1,192,0,0,224,1,192,0,0,224,1,192,0,0,0,15,192,0,0,0,15,192,0,0,0,15,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + // 0x30dd ポ + 221,48,36,42,210,48,6,253,0,0,0,31,128,0,0,0,31,128,0,0,0,31,128,0,14,0,224,112,0,14,0,224,112,0,14,0,224,112,0,1,192,224,112,0,1,192,224,112,0,1,192,224,112,0,1,192,31,128,0,1,192,31,128,0,1,192,31,128,224,1,255,252,0,224,1,255,252,0,224,1,255,252,0,31,255,192,0,0,31,255,192,0,0,31,255,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,199,0,0,0,1,199,0,0,0,1,199,0,0,3,129,192,224,0,3,129,192,224,0,3,129,192,224,0,3,129,192,28,0,3,129,192,28,0,3,129,192,28,0,28,1,192,28,0,28,1,192,28,0,28,1,192,28,0,224,1,192,0,0,224,1,192,0,0,224,1,192,0,0,0,15,192,0,0,0,15,192,0,0,0,15,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + // 0x30de マ + 222,48,33,27,135,48,6,3,224,0,63,252,0,224,0,63,252,0,224,0,63,252,0,31,255,192,3,128,31,255,192,3,128,31,255,192,3,128,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,3,240,56,0,0,3,240,56,0,0,3,240,56,0,0,0,15,192,0,0,0,15,192,0,0,0,15,192,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0, + // 0x30df ミ + 223,48,24,39,117,48,9,253,3,128,0,3,128,0,3,128,0,0,126,0,0,126,0,0,126,0,0,1,248,0,1,248,0,1,248,0,0,7,0,0,7,0,0,7,28,0,0,28,0,0,28,0,0,3,240,0,3,240,0,3,240,0,0,15,192,0,15,192,0,15,192,0,0,56,0,0,56,0,0,56,224,0,0,224,0,0,224,0,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,1,248,0,1,248,0,1,248,0,0,7,0,0,7,0,0,7, + // 0x30e0 ム + 224,48,33,33,165,48,6,3,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,7,0,0,0,14,7,0,0,0,14,7,0,0,0,112,0,224,0,0,112,0,224,0,0,112,0,224,0,0,112,0,252,0,0,112,0,252,0,0,112,0,252,0,227,129,255,3,128,227,129,255,3,128,227,129,255,3,128,31,254,0,3,128,31,254,0,3,128,31,254,0,3,128, + // 0x30e1 メ + 225,48,30,39,156,48,6,253,0,0,7,0,0,0,7,0,0,0,7,0,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,126,0,224,0,126,0,224,0,126,0,224,0,1,255,0,0,1,255,0,0,1,255,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,56,224,0,0,56,224,0,0,56,224,0,0,56,28,0,0,56,28,0,0,56,28,0,1,192,0,0,1,192,0,0,1,192,0,0,14,0,0,0,14,0,0,0,14,0,0,3,240,0,0,3,240,0,0,3,240,0,0,252,0,0,0,252,0,0,0,252,0,0,0, + // 0x30e2 モ + 226,48,33,30,150,48,6,3,28,0,63,224,0,28,0,63,224,0,28,0,63,224,0,3,255,192,0,0,3,255,192,0,0,3,255,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,224,15,255,255,128,224,15,255,255,128,224,15,255,255,128,31,254,0,0,0,31,254,0,0,0,31,254,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,1,255,252,0,0,1,255,252,0,0,1,255,252,0, + // 0x30e3 ャ + 227,48,27,27,108,48,9,253,3,128,0,0,3,128,0,0,3,128,0,0,0,112,63,224,0,112,63,224,0,112,63,224,0,127,192,224,0,127,192,224,0,127,192,224,255,240,7,0,255,240,7,0,255,240,7,0,0,14,56,0,0,14,56,0,0,14,56,0,0,14,0,0,0,14,0,0,0,14,0,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0,1,192,0, + // 0x30e4 ヤ + 228,48,33,36,180,48,6,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,7,255,128,0,112,7,255,128,0,112,7,255,128,0,15,248,3,128,0,15,248,3,128,0,15,248,3,128,224,126,0,28,0,224,126,0,28,0,224,126,0,28,0,31,142,0,224,0,31,142,0,224,0,31,142,0,224,0,0,1,199,0,0,0,1,199,0,0,0,1,199,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0, + // 0x30e5 ュ + 229,48,27,18,72,48,9,3,0,15,248,0,0,15,248,0,0,15,248,0,31,240,56,0,31,240,56,0,31,240,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,1,192,0,0,1,192,0,0,1,192,0,0,15,255,0,0,15,255,0,0,15,255,0,255,240,0,224,255,240,0,224,255,240,0,224, + // 0x30e6 ユ + 230,48,33,21,105,48,6,6,28,1,255,0,0,28,1,255,0,0,28,1,255,0,0,3,254,7,0,0,3,254,7,0,0,3,254,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,255,252,0,0,1,255,252,0,0,1,255,252,0,255,254,0,3,128,255,254,0,3,128,255,254,0,3,128, + // 0x30e7 ョ + 231,48,21,24,72,48,12,0,0,127,248,0,127,248,0,127,248,255,128,56,255,128,56,255,128,56,0,0,56,0,0,56,0,0,56,0,127,248,0,127,248,0,127,248,255,129,192,255,129,192,255,129,192,0,1,192,0,1,192,0,1,192,0,127,192,0,127,192,0,127,192,255,128,56,255,128,56,255,128,56, + // 0x30e8 ヨ + 232,48,27,33,132,48,9,0,0,15,255,224,0,15,255,224,0,15,255,224,255,240,0,224,255,240,0,224,255,240,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,15,255,0,0,15,255,0,0,15,255,0,31,240,7,0,31,240,7,0,31,240,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,15,255,0,0,15,255,0,0,15,255,0,31,240,0,224,31,240,0,224,31,240,0,224, + // 0x30e9 ラ + 233,48,30,36,144,48,6,253,28,1,255,0,28,1,255,0,28,1,255,0,3,254,0,0,3,254,0,0,3,254,0,0,0,0,7,252,0,0,7,252,0,0,7,252,224,15,248,28,224,15,248,28,224,15,248,28,31,240,0,28,31,240,0,28,31,240,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,7,0,0,0,7,0,0,0,7,0,0,0,56,0,0,0,56,0,0,0,56,0,0,15,192,0,0,15,192,0,0,15,192,0,3,240,0,0,3,240,0,0,3,240,0,0, + // 0x30ea リ + 234,48,21,39,117,48,12,253,0,1,192,0,1,192,0,1,192,224,0,56,224,0,56,224,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0, + // 0x30eb ル + 235,48,33,33,165,48,6,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,3,128,56,0,0,3,128,56,0,0,3,128,56,0,0,0,112,56,0,0,0,112,56,0,0,0,112,56,0,0,0,112,56,0,0,0,112,56,0,0,0,112,56,0,0,0,112,56,3,128,0,112,56,3,128,0,112,56,3,128,0,112,56,3,128,0,112,56,3,128,0,112,56,3,128,0,112,56,28,0,0,112,56,28,0,0,112,56,28,0,3,128,56,28,0,3,128,56,28,0,3,128,56,28,0,3,128,56,224,0,3,128,56,224,0,3,128,56,224,0,28,0,63,0,0,28,0,63,0,0,28,0,63,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0, + // 0x30ec レ + 236,48,27,36,144,48,9,0,224,0,0,0,224,0,0,0,224,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,224,28,0,0,224,28,0,0,224,28,0,7,0,28,0,7,0,28,0,7,0,28,0,56,0,28,0,56,0,28,0,56,0,28,1,192,0,28,1,192,0,28,1,192,0,28,126,0,0,28,126,0,0,28,126,0,0,31,128,0,0,31,128,0,0,31,128,0,0, + // 0x30ed ロ + 237,48,30,27,108,48,6,3,224,1,255,252,224,1,255,252,224,1,255,252,31,254,0,28,31,254,0,28,31,254,0,28,28,0,0,28,28,0,0,28,28,0,0,28,28,0,0,28,28,0,0,28,28,0,0,28,3,128,0,224,3,128,0,224,3,128,0,224,3,128,0,224,3,128,0,224,3,128,0,224,3,129,255,224,3,129,255,224,3,129,255,224,3,254,0,28,3,254,0,28,3,254,0,28,3,128,0,0,3,128,0,0,3,128,0,0, + // 0x30ee ヮ + 238,48,27,24,96,48,9,253,224,1,255,224,224,1,255,224,224,1,255,224,31,254,0,224,31,254,0,224,31,254,0,224,28,0,7,0,28,0,7,0,28,0,7,0,3,128,7,0,3,128,7,0,3,128,7,0,3,128,56,0,3,128,56,0,3,128,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,1,192,0,0,1,192,0,0,1,192,0,0,14,0,0,0,14,0,0,0,14,0,0, + // 0x30ef ワ + 239,48,30,36,144,48,6,253,224,1,255,252,224,1,255,252,224,1,255,252,31,254,0,28,31,254,0,28,31,254,0,28,28,0,0,28,28,0,0,28,28,0,0,28,3,128,0,28,3,128,0,28,3,128,0,28,3,128,0,224,3,128,0,224,3,128,0,224,3,128,0,224,3,128,0,224,3,128,0,224,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,56,0,0,0,56,0,0,0,56,0,0,1,192,0,0,1,192,0,0,1,192,0,0,14,0,0,0,14,0,0,0,14,0,0,0,112,0,0,0,112,0,0,0,112,0,0, + // 0x30f0 ヰ + 240,48,33,39,195,48,6,253,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,255,252,0,0,1,255,252,0,0,1,255,252,0,31,254,56,0,0,31,254,56,0,0,31,254,56,0,0,3,128,56,0,0,3,128,56,0,0,3,128,56,0,0,0,112,56,0,0,0,112,56,0,0,0,112,56,0,0,0,113,255,252,0,0,113,255,252,0,0,113,255,252,0,255,254,56,3,128,255,254,56,3,128,255,254,56,3,128,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0, + // 0x30f1 ヱ + 241,48,33,24,120,48,6,6,0,1,255,224,0,0,1,255,224,0,0,1,255,224,0,31,254,0,224,0,31,254,0,224,0,31,254,0,224,0,0,14,7,0,0,0,14,7,0,0,0,14,7,0,0,0,1,248,0,0,0,1,248,0,0,0,1,248,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,255,252,0,0,1,255,252,0,0,1,255,252,0,255,254,0,3,128,255,254,0,3,128,255,254,0,3,128, + // 0x30f2 ヲ + 242,48,27,36,144,48,9,253,0,15,255,224,0,15,255,224,0,15,255,224,255,240,0,224,255,240,0,224,255,240,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,7,0,0,0,7,0,0,0,7,0,0,15,255,0,0,15,255,0,0,15,255,0,31,240,7,0,31,240,7,0,31,240,7,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,0,56,0,0,1,192,0,0,1,192,0,0,1,192,0,0,14,0,0,0,14,0,0,0,14,0,0,3,240,0,0,3,240,0,0,3,240,0,0,252,0,0,0,252,0,0,0,252,0,0,0, + // 0x30f3 ン + 243,48,30,30,120,48,9,0,252,0,0,0,252,0,0,0,252,0,0,0,3,128,0,28,3,128,0,28,3,128,0,28,0,112,0,28,0,112,0,28,0,112,0,28,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,0,224,0,0,7,0,0,0,7,0,0,0,7,0,0,0,56,0,0,0,56,0,0,0,56,0,0,1,192,0,0,1,192,0,0,1,192,0,224,126,0,0,224,126,0,0,224,126,0,0,31,128,0,0,31,128,0,0,31,128,0,0, + // 0x30f4 ヴ + 244,48,39,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,14,0,28,14,0,14,0,28,14,0,14,0,28,14,0,1,192,3,142,0,1,192,3,142,0,1,192,3,142,0,1,192,3,128,0,1,192,3,128,0,1,192,3,128,224,1,255,252,0,224,1,255,252,0,224,1,255,252,0,31,254,0,28,0,31,254,0,28,0,31,254,0,28,0,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0, + // 0x30f5 ヵ + 245,48,24,27,81,48,9,253,0,112,0,0,112,0,0,112,0,0,14,0,0,14,0,0,14,0,224,15,255,224,15,255,224,15,255,31,240,7,31,240,7,31,240,7,0,112,7,0,112,7,0,112,7,0,112,7,0,112,7,0,112,7,3,128,7,3,128,7,3,128,7,28,1,248,28,1,248,28,1,248,224,0,56,224,0,56,224,0,56, + // 0x30f6 ヶ + 246,48,24,27,81,48,9,253,28,0,0,28,0,0,28,0,0,3,128,0,3,128,0,3,128,0,3,128,63,3,128,63,3,128,63,3,255,192,3,255,192,3,255,192,28,1,192,28,1,192,28,1,192,224,1,192,224,1,192,224,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0, + // 0x30f7 ヷ + 247,48,39,45,225,48,6,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,224,1,255,252,0,224,1,255,252,0,224,1,255,252,0,31,254,0,28,0,31,254,0,28,0,31,254,0,28,0,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0, + // 0x30f8 ヸ + 248,48,36,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,0,56,28,0,0,0,56,28,0,0,0,56,28,0,0,0,56,3,128,0,0,56,3,128,0,0,56,3,128,0,1,255,252,0,0,1,255,252,0,0,1,255,252,0,31,254,56,0,0,31,254,56,0,0,31,254,56,0,0,3,128,56,0,0,3,128,56,0,0,3,128,56,0,0,0,112,56,0,0,0,112,56,0,0,0,112,56,0,0,0,113,255,252,0,0,113,255,252,0,0,113,255,252,0,255,254,56,3,128,255,254,56,3,128,255,254,56,3,128,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0, + // 0x30f9 ヹ + 249,48,36,33,165,48,6,6,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,1,255,227,128,0,1,255,227,128,0,1,255,227,128,31,254,0,224,0,31,254,0,224,0,31,254,0,224,0,0,14,7,0,0,0,14,7,0,0,0,14,7,0,0,0,1,248,0,0,0,1,248,0,0,0,1,248,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,255,252,0,0,1,255,252,0,0,1,255,252,0,255,254,0,3,128,255,254,0,3,128,255,254,0,3,128, + // 0x30fa ヺ + 250,48,36,45,225,48,9,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,15,255,227,128,0,15,255,227,128,0,15,255,227,128,255,240,0,224,0,255,240,0,224,0,255,240,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,15,255,0,0,0,15,255,0,0,0,15,255,0,0,31,240,7,0,0,31,240,7,0,0,31,240,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,252,0,0,0,0,252,0,0,0,0,252,0,0,0,0, + // 0x30fb ・ + 251,48,12,12,24,48,15,12,31,128,31,128,31,128,255,240,255,240,255,240,255,240,255,240,255,240,31,128,31,128,31,128, + // 0x30fc ー + 252,48,36,6,30,48,3,15,224,0,7,255,240,224,0,7,255,240,224,0,7,255,240,31,255,248,0,0,31,255,248,0,0,31,255,248,0,0, + // 0x30fd ヽ + 253,48,21,15,45,48,12,12,252,0,0,252,0,0,252,0,0,3,240,0,3,240,0,3,240,0,0,14,0,0,14,0,0,14,0,0,1,192,0,1,192,0,1,192,0,0,56,0,0,56,0,0,56, + // 0x30fe ヾ + 254,48,24,21,63,48,12,12,0,0,56,0,0,56,0,0,56,0,14,7,0,14,7,0,14,7,252,1,192,252,1,192,252,1,192,3,240,0,3,240,0,3,240,0,0,14,0,0,14,0,0,14,0,0,1,192,0,1,192,0,1,192,0,0,56,0,0,56,0,0,56, + // 0x30ff ヿ + 255,48,30,39,156,48,6,253,224,1,255,224,224,1,255,224,224,1,255,224,31,254,0,28,31,254,0,28,31,254,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28, + // 0x4eee 仮 + 238,78,45,48,32,48,0,250,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,3,255,192,0,14,0,3,255,192,0,14,0,3,255,192,0,14,63,252,0,0,0,14,63,252,0,0,0,14,63,252,0,0,0,112,56,0,0,0,0,112,56,0,0,0,0,112,56,0,0,0,0,112,56,0,0,0,0,112,56,0,0,0,0,112,56,0,0,0,3,240,56,0,0,0,3,240,56,0,0,0,3,240,56,0,0,0,3,240,63,255,254,0,3,240,63,255,254,0,3,240,63,255,254,0,28,112,56,224,14,0,28,112,56,224,14,0,28,112,56,224,14,0,224,112,56,224,14,0,224,112,56,224,14,0,224,112,56,224,14,0,0,112,56,224,14,0,0,112,56,224,14,0,0,112,56,224,14,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,113,192,28,112,0,0,113,192,28,112,0,0,113,192,28,112,0,0,113,192,224,14,0,0,113,192,224,14,0,0,113,192,224,14,0,0,126,7,0,1,248,0,126,7,0,1,248,0,126,7,0,1,248, + // 0x540d 名 + 13,84,39,48,240,48,0,250,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,255,255,240,0,1,255,255,240,0,1,255,255,240,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,113,192,3,128,0,113,192,3,128,0,113,192,3,128,31,128,56,28,0,31,128,56,28,0,31,128,56,28,0,0,0,56,224,0,0,0,56,224,0,0,0,56,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,1,248,0,0,0,1,248,0,0,0,1,248,0,0,0,127,255,255,254,0,127,255,255,254,0,127,255,255,254,255,142,0,0,14,255,142,0,0,14,255,142,0,0,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,15,255,255,254,0,15,255,255,254,0,15,255,255,254,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14, + // 0x5b9a 定 + 154,91,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,3,142,7,0,0,0,3,142,7,0,0,0,3,142,7,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0, + // 0x7247 片 + 71,114,39,48,240,48,3,250,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,252,0,3,255,255,252,0,3,255,255,252,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0, + // 0x793a 示 + 58,121,45,45,14,48,0,250,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,28,0,7,0,0,56,28,0,7,0,0,56,28,0,7,0,0,56,224,0,7,0,0,56,224,0,7,0,0,56,224,0,7,0,0,56,0,1,199,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x7fa9 義 + 169,127,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,3,255,192,28,112,0,3,255,192,28,112,0,3,255,192,28,112,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,15,248,28,112,0,0,15,248,28,112,0,0,15,248,28,112,0,31,254,0,3,129,192,31,254,0,3,129,192,31,254,0,3,129,192,0,14,0,28,113,192,0,14,0,28,113,192,0,14,0,28,113,192,0,126,7,224,15,192,0,126,7,224,15,192,0,126,7,224,15,192, + // 0x8868 表 + 104,136,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,199,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,126,0,28,112,0,0,126,0,28,112,0,0,126,0,28,112,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,252,14,7,0,126,0,252,14,7,0,126,0,252,14,7,0,126,0,0,14,56,0,1,248,0,14,56,0,1,248,0,14,56,0,1,248,0,15,192,0,0,0,0,15,192,0,0,0,0,15,192,0,0,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Korean_30.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Korean_30.cpp new file mode 100644 index 000000000000..be59f22fb8f5 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Korean_30.cpp @@ -0,0 +1,252 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// Unifont Korean 48pt, capital 'A' height: 30px, width: 100%, range: 0xac70-0xd788, glyphs: 110 +extern const uint8_t Unifont_Korean_30[23235] = { + 161,30,112,172,136,215,42,250, // unifont_t + // 0xac70 거 + 112,172,36,39,195,48,9,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,192,0,112,255,255,192,0,112,255,255,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,255,240,0,1,192,255,240,0,1,192,255,240,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,112,0,0,112,0,112,0,0,112,0,112,0,0,112,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,252,0,0,0,112,252,0,0,0,112,252,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112, + // 0xace0 고 + 224,172,39,30,150,48,3,0,31,255,255,255,128,31,255,255,255,128,31,255,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,1,192,3,128,0,1,192,3,128,0,1,192,3,128,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xadf8 그 + 248,173,39,24,120,48,3,6,31,255,255,255,128,31,255,255,255,128,31,255,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xae09 급 + 9,174,39,39,195,48,3,253,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128, + // 0xae30 기 + 48,174,30,39,156,48,9,253,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,255,255,192,28,255,255,192,28,255,255,192,28,0,1,192,28,0,1,192,28,0,1,192,28,0,1,192,28,0,1,192,28,0,1,192,28,0,1,192,28,0,1,192,28,0,1,192,28,0,14,0,28,0,14,0,28,0,14,0,28,0,14,0,28,0,14,0,28,0,14,0,28,0,112,0,28,0,112,0,28,0,112,0,28,3,128,0,28,3,128,0,28,3,128,0,28,252,0,0,28,252,0,0,28,252,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0,0,28, + // 0xae45 깅 + 69,174,33,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,255,254,0,3,128,255,254,0,3,128,255,254,0,3,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,252,0,0,3,128,252,0,0,3,128,252,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,252,0,0,15,255,252,0,0,15,255,252,0,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,15,255,252,0,0,15,255,252,0,0,15,255,252,0, + // 0xb044 끄 + 68,176,39,24,120,48,3,6,31,255,199,255,240,31,255,199,255,240,31,255,199,255,240,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xb0b4 내 + 180,176,42,39,234,48,3,253,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,255,192,224,0,0,3,255,192,224,0,0,3,255,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,255,255,255,3,129,192,255,255,255,3,129,192,255,255,255,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192, + // 0xb178 노 + 120,177,39,36,180,48,3,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xb204 누 + 4,178,33,39,195,48,6,253,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + // 0xb274 뉴 + 116,178,39,39,195,48,3,253,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0, + // 0xb2c8 니 + 200,178,36,39,195,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,255,255,255,0,112,255,255,255,0,112,255,255,255,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112, + // 0xb2e4 다 + 228,178,42,39,234,48,3,253,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,255,255,255,3,128,0,255,255,255,3,128,0,255,255,255,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,255,192,224,0,0,3,255,192,224,0,0,3,255,192,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,255,255,255,3,128,0,255,255,255,3,128,0,255,255,255,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0xb2f9 당 + 249,178,42,42,252,48,3,253,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,127,192,224,0,0,0,127,192,224,0,0,0,127,192,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,128,0,0,1,255,255,128,0,0,1,255,255,128,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,1,255,255,128,0,0,1,255,255,128,0,0,1,255,255,128,0, + // 0xb3c4 도 + 196,179,39,36,180,48,3,0,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xb3cc 돌 + 204,179,39,39,195,48,3,253,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128, + // 0xb3d9 동 + 217,179,39,39,195,48,3,253,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,224,0,0,15,255,224,0,0,15,255,224,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,15,255,224,0,0,15,255,224,0,0,15,255,224,0, + // 0xb418 되 + 24,180,36,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,255,0,112,255,255,255,0,112,255,255,255,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,255,255,255,0,112,255,255,255,0,112,255,255,255,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,255,255,255,252,112,255,255,255,252,112,255,255,255,252,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112, + // 0xb41c 된 + 28,180,36,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,31,255,255,0,112,31,255,255,0,112,31,255,255,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,31,255,255,0,112,31,255,255,0,112,31,255,255,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,255,255,255,252,112,255,255,255,252,112,255,255,255,252,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,127,255,255,240,0,127,255,255,240,0,127,255,255,240, + // 0xb428 됨 + 40,180,36,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,31,255,255,0,112,31,255,255,0,112,31,255,255,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,31,255,255,0,112,31,255,255,0,112,31,255,255,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,255,255,255,252,112,255,255,255,252,112,255,255,255,252,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,240,0,1,255,255,240,0,1,255,255,240,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,255,255,240,0,1,255,255,240,0,1,255,255,240, + // 0xb4a4 뒤 + 164,180,36,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,255,224,112,255,255,255,224,112,255,255,255,224,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,255,255,255,224,112,255,255,255,224,112,255,255,255,224,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,255,252,112,255,255,255,252,112,255,255,255,252,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112, + // 0xb4dc 드 + 220,180,39,30,150,48,3,6,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xb514 디 + 20,181,36,39,195,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,255,0,112,255,255,255,0,112,255,255,255,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,255,255,255,0,112,255,255,255,0,112,255,255,255,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112, + // 0xb77c 라 + 124,183,39,39,195,48,6,253,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,255,255,248,28,0,255,255,248,28,0,255,255,248,28,0,0,0,56,28,0,0,0,56,28,0,0,0,56,28,0,0,0,56,28,0,0,0,56,28,0,0,0,56,28,0,255,255,248,31,254,255,255,248,31,254,255,255,248,31,254,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,255,255,248,28,0,255,255,248,28,0,255,255,248,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0, + // 0xb7ec 러 + 236,183,39,39,195,48,6,253,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,255,255,248,0,14,255,255,248,0,14,255,255,248,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,255,255,248,31,254,255,255,248,31,254,255,255,248,31,254,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,255,255,248,0,14,255,255,248,0,14,255,255,248,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14, + // 0xb808 레 + 8,184,39,39,195,48,6,253,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,255,255,248,3,142,255,255,248,3,142,255,255,248,3,142,0,0,56,3,142,0,0,56,3,142,0,0,56,3,142,0,0,56,3,142,0,0,56,3,142,0,0,56,3,142,255,255,248,255,142,255,255,248,255,142,255,255,248,255,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,255,255,248,3,142,255,255,248,3,142,255,255,248,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142, + // 0xb825 력 + 37,184,33,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,255,255,192,3,128,255,255,192,3,128,255,255,192,3,128,0,1,192,255,128,0,1,192,255,128,0,1,192,255,128,255,255,192,3,128,255,255,192,3,128,255,255,192,3,128,224,0,0,255,128,224,0,0,255,128,224,0,0,255,128,255,255,192,3,128,255,255,192,3,128,255,255,192,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,128,0,127,255,255,128,0,127,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128, + // 0xb85c 로 + 92,184,39,36,180,48,3,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xb8cc 료 + 204,184,39,36,180,48,3,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xb974 르 + 116,185,39,30,150,48,3,6,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xb9ac 리 + 172,185,33,39,195,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,255,255,248,3,128,255,255,248,3,128,255,255,248,3,128,0,0,56,3,128,0,0,56,3,128,0,0,56,3,128,0,0,56,3,128,0,0,56,3,128,0,0,56,3,128,255,255,248,3,128,255,255,248,3,128,255,255,248,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,255,255,248,3,128,255,255,248,3,128,255,255,248,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128, + // 0xb9b0 린 + 176,185,33,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,255,255,192,3,128,255,255,192,3,128,255,255,192,3,128,0,1,192,3,128,0,1,192,3,128,0,1,192,3,128,255,255,192,3,128,255,255,192,3,128,255,255,192,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,255,255,192,3,128,255,255,192,3,128,255,255,192,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,31,255,255,255,128,31,255,255,255,128,31,255,255,255,128, + // 0xb9bd 립 + 189,185,33,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,255,255,192,3,128,255,255,192,3,128,255,255,192,3,128,0,1,192,3,128,0,1,192,3,128,0,1,192,3,128,255,255,192,3,128,255,255,192,3,128,255,255,192,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,255,255,192,3,128,255,255,192,3,128,255,255,192,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,15,255,255,128,0,15,255,255,128,0,15,255,255,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,15,255,255,128,0,15,255,255,128,0,15,255,255,128, + // 0xb9c1 링 + 193,185,33,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,255,255,192,3,128,255,255,192,3,128,255,255,192,3,128,0,1,192,3,128,0,1,192,3,128,0,1,192,3,128,255,255,192,3,128,255,255,192,3,128,255,255,192,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,255,255,192,3,128,255,255,192,3,128,255,255,192,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,252,0,0,15,255,252,0,0,15,255,252,0,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,15,255,252,0,0,15,255,252,0,0,15,255,252,0, + // 0xba48 멈 + 72,186,36,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,192,0,112,255,255,192,0,112,255,255,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,31,240,224,1,192,31,240,224,1,192,31,240,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,255,255,192,0,112,255,255,192,0,112,255,255,192,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,240,0,1,255,255,240,0,1,255,255,240,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,255,255,240,0,1,255,255,240,0,1,255,255,240, + // 0xba54 메 + 84,186,42,39,234,48,3,253,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,255,255,255,0,113,192,255,255,255,0,113,192,255,255,255,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,31,241,192,224,0,7,31,241,192,224,0,7,31,241,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,255,255,255,0,113,192,255,255,255,0,113,192,255,255,255,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192, + // 0xba74 면 + 116,186,36,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,192,0,112,255,255,192,0,112,255,255,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,31,240,224,1,192,31,240,224,1,192,31,240,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,31,240,224,1,192,31,240,224,1,192,31,240,255,255,192,0,112,255,255,192,0,112,255,255,192,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,240,3,255,255,255,240,3,255,255,255,240, + // 0xbaa8 모 + 168,186,39,36,180,48,3,0,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xbabb 못 + 187,186,39,42,210,48,3,253,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,199,0,0,0,1,199,0,0,0,1,199,0,0,0,126,0,224,0,0,126,0,224,0,0,126,0,224,0, + // 0xbbf8 미 + 248,187,36,39,195,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,255,0,112,255,255,255,0,112,255,255,255,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,255,255,255,0,112,255,255,255,0,112,255,255,255,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112, + // 0xbc00 밀 + 0,188,36,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,192,0,112,255,255,192,0,112,255,255,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,255,255,192,0,112,255,255,192,0,112,255,255,192,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,240,0,15,255,255,240,0,15,255,255,240,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,15,255,255,240,0,15,255,255,240,0,15,255,255,240,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,15,255,255,240,0,15,255,255,240,0,15,255,255,240, + // 0xbc14 바 + 20,188,39,39,195,48,6,253,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,255,255,248,31,254,255,255,248,31,254,255,255,248,31,254,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,255,255,248,28,0,255,255,248,28,0,255,255,248,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0, + // 0xbc84 버 + 132,188,39,39,195,48,6,253,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,255,255,248,31,254,255,255,248,31,254,255,255,248,31,254,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,255,255,248,0,14,255,255,248,0,14,255,255,248,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14, + // 0xbca0 베 + 160,188,39,39,195,48,6,253,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,255,255,248,255,142,255,255,248,255,142,255,255,248,255,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,255,255,248,3,142,255,255,248,3,142,255,255,248,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142, + // 0xbca8 벨 + 168,188,36,42,210,48,3,253,0,0,0,28,112,0,0,0,28,112,0,0,0,28,112,0,0,0,28,112,0,0,0,28,112,0,0,0,28,112,224,1,192,28,112,224,1,192,28,112,224,1,192,28,112,224,1,192,28,112,224,1,192,28,112,224,1,192,28,112,255,255,199,252,112,255,255,199,252,112,255,255,199,252,112,224,1,192,28,112,224,1,192,28,112,224,1,192,28,112,255,255,192,28,112,255,255,192,28,112,255,255,192,28,112,0,0,0,28,112,0,0,0,28,112,0,0,0,28,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,240,0,15,255,255,240,0,15,255,255,240,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,15,255,255,240,0,15,255,255,240,0,15,255,255,240,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,15,255,255,240,0,15,255,255,240,0,15,255,255,240, + // 0xbcf8 본 + 248,188,39,42,210,48,3,253,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,0,0,0,0,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,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128, + // 0xbe44 비 + 68,190,33,39,195,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,255,255,248,3,128,255,255,248,3,128,255,255,248,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,255,255,248,3,128,255,255,248,3,128,255,255,248,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128, + // 0xc0ac 사 + 172,192,42,39,234,48,3,253,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,255,192,0,14,0,3,255,192,0,14,0,3,255,192,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,252,0,7,3,128,0,252,0,7,3,128,0,252,0,7,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0xc0bd 삽 + 189,192,42,42,252,48,3,253,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,126,0,0,127,192,0,126,0,0,127,192,0,126,0,0,127,192,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,252,0,56,0,112,0,252,0,56,0,112,0,252,0,56,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,255,255,240,0,0,1,255,255,240,0,0,1,255,255,240,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,255,255,240,0,0,1,255,255,240,0,0,1,255,255,240,0, + // 0xc0c8 새 + 200,192,42,39,234,48,3,253,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,255,192,0,14,0,3,255,192,0,14,0,3,255,192,0,113,192,3,129,192,0,113,192,3,129,192,0,113,192,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,252,0,7,3,129,192,252,0,7,3,129,192,252,0,7,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192, + // 0xc124 설 + 36,193,36,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,126,0,31,240,0,126,0,31,240,0,126,0,31,240,3,129,192,0,112,3,129,192,0,112,3,129,192,0,112,252,0,56,0,112,252,0,56,0,112,252,0,56,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,240,0,15,255,255,240,0,15,255,255,240,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,15,255,255,240,0,15,255,255,240,0,15,255,255,240,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,15,255,255,240,0,15,255,255,240,0,15,255,255,240, + // 0xc18c 소 + 140,193,39,36,180,48,3,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,199,0,0,0,1,199,0,0,0,1,199,0,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,3,240,0,28,0,3,240,0,28,0,3,240,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xc18d 속 + 141,193,39,42,210,48,3,253,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,63,0,0,0,0,63,0,0,0,0,63,0,0,0,1,192,224,0,0,1,192,224,0,0,1,192,224,0,0,126,0,28,0,0,126,0,28,0,0,126,0,28,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128, + // 0xc2a4 스 + 164,194,39,30,150,48,3,6,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,199,0,0,0,1,199,0,0,0,1,199,0,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,3,240,0,28,0,3,240,0,28,0,3,240,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xc2ac 슬 + 172,194,39,42,210,48,3,253,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,63,0,0,0,0,63,0,0,0,0,63,0,0,0,1,192,224,0,0,1,192,224,0,0,1,192,224,0,0,126,0,28,0,0,126,0,28,0,0,126,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128, + // 0xc2dc 시 + 220,194,36,39,195,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,113,192,0,112,0,113,192,0,112,0,113,192,0,112,3,128,56,0,112,3,128,56,0,112,3,128,56,0,112,252,0,7,0,112,252,0,7,0,112,252,0,7,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112, + // 0xc2dd 식 + 221,194,36,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,126,0,0,112,0,126,0,0,112,0,126,0,0,112,3,129,192,0,112,3,129,192,0,112,3,129,192,0,112,252,0,56,0,112,252,0,56,0,112,252,0,56,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,240,0,15,255,255,240,0,15,255,255,240,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112, + // 0xc5b4 어 + 180,197,42,39,234,48,3,253,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,3,255,192,0,1,192,3,255,192,0,1,192,3,255,192,0,1,192,28,0,56,0,1,192,28,0,56,0,1,192,28,0,56,0,1,192,224,0,7,0,1,192,224,0,7,0,1,192,224,0,7,0,1,192,224,0,7,3,255,192,224,0,7,3,255,192,224,0,7,3,255,192,224,0,7,0,1,192,224,0,7,0,1,192,224,0,7,0,1,192,28,0,56,0,1,192,28,0,56,0,1,192,28,0,56,0,1,192,3,255,192,0,1,192,3,255,192,0,1,192,3,255,192,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192, + // 0xc5c6 없 + 198,197,39,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,31,254,0,3,128,31,254,0,3,128,31,254,0,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,255,128,224,1,192,255,128,224,1,192,255,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,31,254,0,3,128,31,254,0,3,128,31,254,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,255,255,192,3,128,255,255,192,3,128,255,255,192,3,128,224,1,192,28,112,224,1,192,28,112,224,1,192,28,112,255,255,199,224,14,255,255,199,224,14,255,255,199,224,14, + // 0xc5d1 엑 + 209,197,33,42,210,48,6,253,0,0,0,227,128,0,0,0,227,128,0,0,0,227,128,31,254,0,227,128,31,254,0,227,128,31,254,0,227,128,224,1,192,227,128,224,1,192,227,128,224,1,192,227,128,224,1,192,227,128,224,1,192,227,128,224,1,192,227,128,224,1,255,227,128,224,1,255,227,128,224,1,255,227,128,224,1,192,227,128,224,1,192,227,128,224,1,192,227,128,31,254,0,227,128,31,254,0,227,128,31,254,0,227,128,0,0,0,227,128,0,0,0,227,128,0,0,0,227,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,128,0,127,255,255,128,0,127,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128, + // 0xc5d4 엔 + 212,197,33,42,210,48,6,253,0,0,0,227,128,0,0,0,227,128,0,0,0,227,128,31,254,0,227,128,31,254,0,227,128,31,254,0,227,128,224,1,192,227,128,224,1,192,227,128,224,1,192,227,128,224,1,192,227,128,224,1,192,227,128,224,1,192,227,128,224,1,255,227,128,224,1,255,227,128,224,1,255,227,128,224,1,192,227,128,224,1,192,227,128,224,1,192,227,128,31,254,0,227,128,31,254,0,227,128,31,254,0,227,128,0,0,0,227,128,0,0,0,227,128,0,0,0,227,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128, + // 0xc5f4 열 + 244,197,33,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,31,254,0,3,128,31,254,0,3,128,31,254,0,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,255,128,224,1,192,255,128,224,1,192,255,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,255,128,224,1,192,255,128,224,1,192,255,128,31,254,0,3,128,31,254,0,3,128,31,254,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,128,0,127,255,255,128,0,127,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,127,255,255,128,0,127,255,255,128,0,127,255,255,128,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,127,255,255,128,0,127,255,255,128,0,127,255,255,128, + // 0xc608 예 + 8,198,42,39,234,48,3,253,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,3,255,192,0,113,192,3,255,192,0,113,192,3,255,192,0,113,192,28,0,56,0,113,192,28,0,56,0,113,192,28,0,56,0,113,192,224,0,7,31,241,192,224,0,7,31,241,192,224,0,7,31,241,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,28,0,56,31,241,192,28,0,56,31,241,192,28,0,56,31,241,192,3,255,192,0,113,192,3,255,192,0,113,192,3,255,192,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192, + // 0xc624 오 + 36,198,39,39,195,48,3,0,0,15,255,224,0,0,15,255,224,0,0,15,255,224,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,15,255,224,0,0,15,255,224,0,0,15,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xc628 온 + 40,198,39,42,210,48,3,253,0,15,255,224,0,0,15,255,224,0,0,15,255,224,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,15,255,224,0,0,15,255,224,0,0,15,255,224,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,0,0,0,0,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,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128, + // 0xc644 완 + 68,198,42,42,252,48,3,253,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,3,255,248,0,112,0,3,255,248,0,112,0,3,255,248,0,112,0,28,0,7,0,112,0,28,0,7,0,112,0,28,0,7,0,112,0,28,0,7,0,127,192,28,0,7,0,127,192,28,0,7,0,127,192,28,0,7,0,112,0,28,0,7,0,112,0,28,0,7,0,112,0,3,255,248,0,112,0,3,255,248,0,112,0,3,255,248,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,255,255,255,252,112,0,255,255,255,252,112,0,255,255,255,252,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0, + // 0xc6d0 원 + 208,198,36,45,225,48,3,253,3,255,248,0,112,3,255,248,0,112,3,255,248,0,112,28,0,7,0,112,28,0,7,0,112,28,0,7,0,112,28,0,7,0,112,28,0,7,0,112,28,0,7,0,112,28,0,7,0,112,28,0,7,0,112,28,0,7,0,112,3,255,248,0,112,3,255,248,0,112,3,255,248,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,255,252,112,255,255,255,252,112,255,255,255,252,112,0,1,192,255,240,0,1,192,255,240,0,1,192,255,240,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,240,3,255,255,255,240,3,255,255,255,240, + // 0xc704 위 + 4,199,36,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,3,255,248,0,112,3,255,248,0,112,3,255,248,0,112,28,0,7,0,112,28,0,7,0,112,28,0,7,0,112,224,0,0,224,112,224,0,0,224,112,224,0,0,224,112,224,0,0,224,112,224,0,0,224,112,224,0,0,224,112,224,0,0,224,112,224,0,0,224,112,224,0,0,224,112,28,0,7,0,112,28,0,7,0,112,28,0,7,0,112,3,255,248,0,112,3,255,248,0,112,3,255,248,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,255,252,112,255,255,255,252,112,255,255,255,252,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112, + // 0xc73c 으 + 60,199,39,33,165,48,3,6,0,15,255,224,0,0,15,255,224,0,0,15,255,224,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,15,255,224,0,0,15,255,224,0,0,15,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xc74c 음 + 76,199,39,42,210,48,3,253,0,15,255,224,0,0,15,255,224,0,0,15,255,224,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,15,255,224,0,0,15,255,224,0,0,15,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128, + // 0xc774 이 + 116,199,36,39,195,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,3,255,192,0,112,3,255,192,0,112,3,255,192,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,224,0,7,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,3,255,192,0,112,3,255,192,0,112,3,255,192,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112, + // 0xc77c 일 + 124,199,33,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,31,254,0,3,128,31,254,0,3,128,31,254,0,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,31,254,0,3,128,31,254,0,3,128,31,254,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,128,0,127,255,255,128,0,127,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,127,255,255,128,0,127,255,255,128,0,127,255,255,128,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,127,255,255,128,0,127,255,255,128,0,127,255,255,128, + // 0xc77d 읽 + 125,199,33,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,31,254,0,3,128,31,254,0,3,128,31,254,0,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,31,254,0,3,128,31,254,0,3,128,31,254,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,254,63,255,128,255,254,63,255,128,255,254,63,255,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,255,254,0,3,128,255,254,0,3,128,255,254,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,255,254,0,3,128,255,254,0,3,128,255,254,0,3,128, + // 0xc785 입 + 133,199,33,42,210,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,31,254,0,3,128,31,254,0,3,128,31,254,0,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,31,254,0,3,128,31,254,0,3,128,31,254,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,15,255,255,128,0,15,255,255,128,0,15,255,255,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,15,255,255,128,0,15,255,255,128,0,15,255,255,128, + // 0xc790 자 + 144,199,39,39,195,48,6,253,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,255,255,248,28,0,255,255,248,28,0,255,255,248,28,0,0,1,192,28,0,0,1,192,28,0,0,1,192,28,0,0,1,192,28,0,0,1,192,28,0,0,1,192,28,0,0,14,0,31,254,0,14,0,31,254,0,14,0,31,254,0,126,0,28,0,0,126,0,28,0,0,126,0,28,0,3,129,192,28,0,3,129,192,28,0,3,129,192,28,0,252,0,56,28,0,252,0,56,28,0,252,0,56,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0, + // 0xc791 작 + 145,199,42,42,252,48,3,253,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,127,192,0,14,0,0,127,192,0,14,0,0,127,192,3,241,192,0,112,0,3,241,192,0,112,0,3,241,192,0,112,0,252,0,56,0,112,0,252,0,56,0,112,0,252,0,56,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0, + // 0xc798 잘 + 152,199,42,42,252,48,3,253,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,127,192,0,14,0,0,127,192,0,14,0,0,127,192,3,241,192,0,112,0,3,241,192,0,112,0,3,241,192,0,112,0,252,0,56,0,112,0,252,0,56,0,112,0,252,0,56,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0, + // 0xc7a5 장 + 165,199,42,42,252,48,3,253,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,127,192,0,14,0,0,127,192,0,14,0,0,127,192,3,241,192,0,112,0,3,241,192,0,112,0,3,241,192,0,112,0,252,0,56,0,112,0,252,0,56,0,112,0,252,0,56,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,128,0,0,1,255,255,128,0,0,1,255,255,128,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,1,255,255,128,0,0,1,255,255,128,0,0,1,255,255,128,0, + // 0xc7ac 재 + 172,199,39,39,195,48,6,253,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,255,255,248,28,14,255,255,248,28,14,255,255,248,28,14,0,1,192,28,14,0,1,192,28,14,0,1,192,28,14,0,1,192,28,14,0,1,192,28,14,0,1,192,28,14,0,14,0,31,254,0,14,0,31,254,0,14,0,31,254,0,126,0,28,14,0,126,0,28,14,0,126,0,28,14,3,129,192,28,14,3,129,192,28,14,3,129,192,28,14,252,0,56,28,14,252,0,56,28,14,252,0,56,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14,0,0,0,28,14, + // 0xc800 저 + 0,200,39,39,195,48,6,253,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,255,255,248,0,14,255,255,248,0,14,255,255,248,0,14,0,1,192,0,14,0,1,192,0,14,0,1,192,0,14,0,1,192,0,14,0,1,192,0,14,0,1,192,0,14,0,14,0,31,254,0,14,0,31,254,0,14,0,31,254,0,126,0,0,14,0,126,0,0,14,0,126,0,0,14,3,129,192,0,14,3,129,192,0,14,3,129,192,0,14,252,0,56,0,14,252,0,56,0,14,252,0,56,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14, + // 0xc804 전 + 4,200,36,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,192,0,112,255,255,192,0,112,255,255,192,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,31,240,0,14,0,31,240,0,14,0,31,240,3,241,192,0,112,3,241,192,0,112,3,241,192,0,112,252,0,56,0,112,252,0,56,0,112,252,0,56,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,0,0,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,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,240,3,255,255,255,240,3,255,255,255,240, + // 0xc815 정 + 21,200,36,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,192,0,112,255,255,192,0,112,255,255,192,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,31,240,0,14,0,31,240,0,14,0,31,240,3,241,192,0,112,3,241,192,0,112,3,241,192,0,112,252,0,56,0,112,252,0,56,0,112,252,0,56,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,128,0,1,255,255,128,0,1,255,255,128,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,1,255,255,128,0,1,255,255,128,0,1,255,255,128, + // 0xc81c 제 + 28,200,39,39,195,48,6,253,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,255,255,248,3,142,255,255,248,3,142,255,255,248,3,142,0,1,192,3,142,0,1,192,3,142,0,1,192,3,142,0,1,192,3,142,0,1,192,3,142,0,1,192,3,142,0,14,0,255,142,0,14,0,255,142,0,14,0,255,142,0,126,0,3,142,0,126,0,3,142,0,126,0,3,142,3,129,192,3,142,3,129,192,3,142,3,129,192,3,142,252,0,56,3,142,252,0,56,3,142,252,0,56,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142, + // 0xc8fd 죽 + 253,200,39,42,210,48,3,253,0,127,255,224,0,0,127,255,224,0,0,127,255,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,1,248,224,0,0,1,248,224,0,0,1,248,224,0,0,126,0,28,0,0,126,0,28,0,0,126,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128, + // 0xc900 준 + 0,201,39,42,210,48,3,253,0,127,255,224,0,0,127,255,224,0,0,127,255,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,1,248,224,0,0,1,248,224,0,0,1,248,224,0,0,126,0,28,0,0,126,0,28,0,0,126,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,3,128,56,0,0,3,128,56,0,0,3,128,56,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128, + // 0xc911 중 + 17,201,39,42,210,48,3,253,0,127,255,224,0,0,127,255,224,0,0,127,255,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,1,248,224,0,0,1,248,224,0,0,1,248,224,0,0,126,0,28,0,0,126,0,28,0,0,126,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,224,0,0,15,255,224,0,0,15,255,224,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,15,255,224,0,0,15,255,224,0,0,15,255,224,0, + // 0xc990 즐 + 144,201,39,42,210,48,3,253,0,127,255,224,0,0,127,255,224,0,0,127,255,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,1,248,224,0,0,1,248,224,0,0,1,248,224,0,0,126,0,28,0,0,126,0,28,0,0,126,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128, + // 0xc9c0 지 + 192,201,33,39,195,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,255,255,248,3,128,255,255,248,3,128,255,255,248,3,128,0,1,192,3,128,0,1,192,3,128,0,1,192,3,128,0,1,192,3,128,0,1,192,3,128,0,1,192,3,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,126,0,3,128,0,126,0,3,128,0,126,0,3,128,3,129,192,3,128,3,129,192,3,128,3,129,192,3,128,252,0,56,3,128,252,0,56,3,128,252,0,56,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128, + // 0xcc98 처 + 152,204,39,39,195,48,6,253,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14,255,255,248,0,14,255,255,248,0,14,255,255,248,0,14,0,1,192,0,14,0,1,192,0,14,0,1,192,0,14,0,14,0,31,254,0,14,0,31,254,0,14,0,31,254,0,126,0,0,14,0,126,0,0,14,0,126,0,0,14,3,129,192,0,14,3,129,192,0,14,3,129,192,0,14,252,0,56,0,14,252,0,56,0,14,252,0,56,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14, + // 0xcd08 초 + 8,205,39,39,195,48,3,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,127,255,252,0,0,127,255,252,0,0,127,255,252,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,63,0,0,0,0,63,0,0,0,0,63,0,0,0,1,192,224,0,0,1,192,224,0,0,1,192,224,0,0,126,0,28,0,0,126,0,28,0,0,126,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xcd95 축 + 149,205,39,42,210,48,3,253,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,127,255,224,0,0,127,255,224,0,0,127,255,224,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,199,0,0,0,1,199,0,0,0,1,199,0,0,0,126,0,224,0,0,126,0,224,0,0,126,0,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128, + // 0xcd9c 출 + 156,205,39,42,210,48,3,253,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,127,255,224,0,0,127,255,224,0,0,127,255,224,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,199,0,0,0,1,199,0,0,0,1,199,0,0,0,126,0,224,0,0,126,0,224,0,0,126,0,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128, + // 0xcda4 춤 + 164,205,39,42,210,48,3,253,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,127,255,224,0,0,127,255,224,0,0,127,255,224,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,199,0,0,0,1,199,0,0,0,1,199,0,0,0,126,0,224,0,0,126,0,224,0,0,126,0,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128, + // 0xcde8 취 + 232,205,36,42,210,48,3,253,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,31,255,255,0,112,31,255,255,0,112,31,255,255,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,15,192,0,112,0,15,192,0,112,0,15,192,0,112,0,112,56,0,112,0,112,56,0,112,0,112,56,0,112,31,128,7,0,112,31,128,7,0,112,31,128,7,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,255,252,112,255,255,255,252,112,255,255,255,252,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112, + // 0xce58 치 + 88,206,33,39,195,48,6,253,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,255,255,248,3,128,255,255,248,3,128,255,255,248,3,128,0,1,192,3,128,0,1,192,3,128,0,1,192,3,128,0,14,0,3,128,0,14,0,3,128,0,14,0,3,128,0,126,0,3,128,0,126,0,3,128,0,126,0,3,128,3,129,192,3,128,3,129,192,3,128,3,129,192,3,128,252,0,56,3,128,252,0,56,3,128,252,0,56,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128, + // 0xce68 침 + 104,206,36,42,210,48,3,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,112,0,0,112,0,112,0,0,112,0,112,0,0,112,255,255,192,0,112,255,255,192,0,112,255,255,192,0,112,0,112,0,0,112,0,112,0,0,112,0,112,0,0,112,3,142,0,0,112,3,142,0,0,112,3,142,0,0,112,252,1,192,0,112,252,1,192,0,112,252,1,192,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,240,0,1,255,255,240,0,1,255,255,240,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,255,255,240,0,1,255,255,240,0,1,255,255,240, + // 0xce74 카 + 116,206,36,39,195,48,9,253,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,255,255,192,224,0,255,255,192,224,0,255,255,192,224,0,0,1,192,224,0,0,1,192,224,0,0,1,192,224,0,0,1,192,224,0,0,1,192,224,0,0,1,192,224,0,0,1,192,255,240,0,1,192,255,240,0,1,192,255,240,255,254,0,224,0,255,254,0,224,0,255,254,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,112,0,224,0,0,112,0,224,0,0,112,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,252,0,0,224,0,252,0,0,224,0,252,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0, + // 0xcf1c 켜 + 28,207,36,39,195,48,9,253,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,192,0,112,255,255,192,0,112,255,255,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,255,240,0,1,192,255,240,0,1,192,255,240,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,255,254,0,0,112,255,254,0,0,112,255,254,0,0,112,0,14,0,255,240,0,14,0,255,240,0,14,0,255,240,0,112,0,0,112,0,112,0,0,112,0,112,0,0,112,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,252,0,0,0,112,252,0,0,0,112,252,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112, + // 0xd0d1 탑 + 209,208,42,42,252,48,3,253,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,255,255,192,0,127,192,255,255,192,0,127,192,255,255,192,0,127,192,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,255,255,240,0,0,1,255,255,240,0,0,1,255,255,240,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,255,255,240,0,0,1,255,255,240,0,0,1,255,255,240,0, + // 0xd130 터 + 48,209,39,39,195,48,6,253,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,255,255,248,0,14,255,255,248,0,14,255,255,248,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,255,255,248,31,254,255,255,248,31,254,255,255,248,31,254,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,255,255,248,0,14,255,255,248,0,14,255,255,248,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14, + // 0xd14c 테 + 76,209,39,39,195,48,6,253,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,255,255,248,3,142,255,255,248,3,142,255,255,248,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,255,255,248,255,142,255,255,248,255,142,255,255,248,255,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,255,255,248,3,142,255,255,248,3,142,255,255,248,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142,0,0,0,3,142, + // 0xd1a0 토 + 160,209,39,39,195,48,3,0,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xd2b8 트 + 184,210,39,33,165,48,3,6,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xd39c 펜 + 156,211,36,42,210,48,3,253,0,0,0,28,112,0,0,0,28,112,0,0,0,28,112,0,0,0,28,112,0,0,0,28,112,0,0,0,28,112,255,255,255,28,112,255,255,255,28,112,255,255,255,28,112,3,129,192,28,112,3,129,192,28,112,3,129,192,28,112,3,129,199,252,112,3,129,199,252,112,3,129,199,252,112,3,129,192,28,112,3,129,192,28,112,3,129,192,28,112,255,255,255,28,112,255,255,255,28,112,255,255,255,28,112,0,0,0,28,112,0,0,0,28,112,0,0,0,28,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,127,255,255,240,0,127,255,255,240,0,127,255,255,240, + // 0xd504 프 + 4,213,39,30,150,48,3,6,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254, + // 0xd558 하 + 88,213,39,39,195,48,6,253,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,255,255,248,28,0,255,255,248,28,0,255,255,248,28,0,3,254,0,28,0,3,254,0,28,0,3,254,0,28,0,28,1,192,28,0,28,1,192,28,0,28,1,192,28,0,224,0,56,31,254,224,0,56,31,254,224,0,56,31,254,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,28,1,192,28,0,28,1,192,28,0,28,1,192,28,0,3,254,0,28,0,3,254,0,28,0,3,254,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0, + // 0xd569 합 + 105,213,42,42,252,48,3,253,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,248,0,112,0,255,255,248,0,112,0,255,255,248,0,112,0,3,254,0,0,112,0,3,254,0,0,112,0,3,254,0,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,127,192,28,1,192,0,127,192,28,1,192,0,127,192,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,3,254,0,0,112,0,3,254,0,0,112,0,3,254,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,255,255,240,0,0,1,255,255,240,0,0,1,255,255,240,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,255,255,240,0,0,1,255,255,240,0,0,1,255,255,240,0, + // 0xd648 홈 + 72,214,39,45,225,48,3,253,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,127,255,252,0,0,127,255,252,0,0,127,255,252,0,0,15,255,224,0,0,15,255,224,0,0,15,255,224,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,0,15,255,224,0,0,15,255,224,0,0,15,255,224,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128, + // 0xd654 화 + 84,214,42,42,252,48,3,253,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,31,255,255,3,128,0,31,255,255,3,128,0,31,255,255,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,3,255,248,3,128,0,3,255,248,3,128,0,3,255,248,3,128,0,28,0,7,3,255,192,28,0,7,3,255,192,28,0,7,3,255,192,28,0,7,3,128,0,28,0,7,3,128,0,28,0,7,3,128,0,3,255,248,3,128,0,3,255,248,3,128,0,3,255,248,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,255,255,255,227,128,0,255,255,255,227,128,0,255,255,255,227,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0xd788 히 + 136,215,33,39,195,48,6,253,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,0,112,0,3,128,255,255,248,3,128,255,255,248,3,128,255,255,248,3,128,3,254,0,3,128,3,254,0,3,128,3,254,0,3,128,28,1,192,3,128,28,1,192,3,128,28,1,192,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,28,1,192,3,128,28,1,192,3,128,28,1,192,3,128,3,254,0,3,128,3,254,0,3,128,3,254,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Latin_Extended_A_30.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Latin_Extended_A_30.cpp new file mode 100644 index 000000000000..5801b894ddad --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Latin_Extended_A_30.cpp @@ -0,0 +1,288 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// Unifont Latin Extended-A 48pt, capital 'A' height: 30px, width: 100%, range: 0x0100-0x017f +extern const uint8_t Unifont_Latin_Extended_A_30[14555] = { + 129,30,0,1,127,1,42,250, // unifont_t + // 0x0100 Ā + 18,39,117,24,3,0,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0101 ā + 18,33,99,24,3,0,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0102 Ă + 18,42,126,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0103 ă + 18,39,117,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0104 Ą + 21,36,108,24,3,250,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,0,14,0,0,14,0,0,14,0,0,1,248,0,1,248,0,1,248, + // 0x0105 ą + 21,30,90,24,3,250,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192,0,14,0,0,14,0,0,14,0,0,1,248,0,1,248,0,1,248, + // 0x0106 Ć + 18,42,126,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0107 ć + 18,36,108,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0108 Ĉ + 18,42,126,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0109 ĉ + 18,36,108,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x010a Ċ + 18,42,126,24,3,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x010b ċ + 18,36,108,24,3,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x010c Č + 18,42,126,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x010d č + 18,36,108,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x010e Ď + 18,42,126,24,3,0,224,112,0,224,112,0,224,112,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,240,0,255,240,0,255,240,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,14,0,224,14,0,224,14,0,255,240,0,255,240,0,255,240,0, + // 0x010f ď + 18,42,126,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,31,241,192,31,241,192,31,241,192,224,15,192,224,15,192,224,15,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0110 Đ + 21,30,90,24,0,0,31,254,0,31,254,0,31,254,0,28,1,192,28,1,192,28,1,192,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,255,240,56,255,240,56,255,240,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,1,192,28,1,192,28,1,192,31,254,0,31,254,0,31,254,0, + // 0x0111 đ + 21,33,99,24,3,0,0,1,192,0,1,192,0,1,192,0,127,248,0,127,248,0,127,248,0,1,192,0,1,192,0,1,192,31,241,192,31,241,192,31,241,192,224,15,192,224,15,192,224,15,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0112 Ē + 18,39,117,24,3,0,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x0113 ē + 18,33,99,24,3,0,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0114 Ĕ + 18,42,126,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x0115 ĕ + 18,36,108,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0116 Ė + 18,42,126,24,3,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x0117 ė + 18,36,108,24,3,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0118 Ę + 18,36,108,24,3,250,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192,0,112,0,0,112,0,0,112,0,0,15,192,0,15,192,0,15,192, + // 0x0119 ę + 18,30,90,24,3,250,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,3,128,0,3,128,0,3,128,0,0,126,0,0,126,0,0,126,0, + // 0x011a Ě + 18,42,126,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x011b ě + 18,36,108,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x011c Ĝ + 18,42,126,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,127,192,224,127,192,224,127,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x011d ĝ + 18,42,126,24,3,250,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,1,192,0,1,192,0,1,192,31,241,192,31,241,192,31,241,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0,28,0,0,28,0,0,28,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x011e Ğ + 18,42,126,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,127,192,224,127,192,224,127,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x011f ğ + 18,45,135,24,3,250,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,1,192,0,1,192,0,1,192,31,241,192,31,241,192,31,241,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0,28,0,0,28,0,0,28,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0120 Ġ + 18,42,126,24,3,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,127,192,224,127,192,224,127,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0121 ġ + 18,42,126,24,3,250,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,1,192,0,1,192,0,1,192,31,241,192,31,241,192,31,241,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0,28,0,0,28,0,0,28,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0122 Ģ + 18,36,108,24,3,250,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,127,192,224,127,192,224,127,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192,0,112,0,0,112,0,0,112,0,31,128,0,31,128,0,31,128,0, + // 0x0123 ģ + 18,42,126,24,3,250,0,126,0,0,126,0,0,126,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,1,192,0,1,192,0,1,192,31,241,192,31,241,192,31,241,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0,28,0,0,28,0,0,28,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0124 Ĥ + 18,42,126,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0125 ĥ + 18,42,126,24,3,0,31,128,0,31,128,0,31,128,0,224,112,0,224,112,0,224,112,0,0,0,0,0,0,0,0,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0126 Ħ + 24,30,90,24,0,0,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,255,255,255,255,255,255,255,255,255,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,31,255,248,31,255,248,31,255,248,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56, + // 0x0127 ħ + 21,33,99,24,0,0,28,0,0,28,0,0,28,0,0,255,240,0,255,240,0,255,240,0,28,0,0,28,0,0,28,0,0,28,127,192,28,127,192,28,127,192,31,128,56,31,128,56,31,128,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56, + // 0x0128 Ĩ + 18,42,126,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,255,192,31,255,192,31,255,192, + // 0x0129 ĩ + 18,36,108,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,240,0,3,240,0,3,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,255,192,31,255,192,31,255,192, + // 0x012a Ī + 15,39,78,24,6,0,255,240,255,240,255,240,0,0,0,0,0,0,0,0,0,0,0,0,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x012b ī + 15,33,66,24,6,0,255,240,255,240,255,240,0,0,0,0,0,0,0,0,0,0,0,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x012c Ĭ + 18,42,126,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,255,192,31,255,192,31,255,192, + // 0x012d ĭ + 18,36,108,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,3,240,0,3,240,0,3,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,255,192,31,255,192,31,255,192, + // 0x012e Į + 15,36,72,24,6,250,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,0,126,0,126,0,126, + // 0x012f į + 15,39,78,24,6,250,3,128,3,128,3,128,3,128,3,128,3,128,0,0,0,0,0,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,0,126,0,126,0,126, + // 0x0130 İ + 15,42,84,24,6,0,3,128,3,128,3,128,3,128,3,128,3,128,0,0,0,0,0,0,0,0,0,0,0,0,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x0131 ı + 15,24,48,24,6,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x0132 IJ + 18,30,90,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0133 ij + 15,42,84,24,6,250,224,14,224,14,224,14,224,14,224,14,224,14,0,0,0,0,0,0,0,0,0,0,0,0,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,31,142,31,142,31,142,0,14,0,14,0,14,224,14,224,14,224,14,31,240,31,240,31,240, + // 0x0134 Ĵ + 21,42,126,24,3,0,0,126,0,0,126,0,0,126,0,3,129,192,3,129,192,3,129,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,248,3,255,248,3,255,248,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x0135 ĵ + 18,42,126,24,3,250,0,126,0,0,126,0,0,126,0,3,129,192,3,129,192,3,129,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,126,0,0,126,0,0,126,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,224,112,0,224,112,0,224,112,0,31,128,0,31,128,0,31,128,0, + // 0x0136 Ķ + 21,36,108,24,0,250,28,0,56,28,0,56,28,0,56,28,1,192,28,1,192,28,1,192,28,14,0,28,14,0,28,14,0,28,112,0,28,112,0,28,112,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,28,112,0,28,112,0,28,112,0,28,14,0,28,14,0,28,14,0,28,1,192,28,1,192,28,1,192,28,0,56,28,0,56,28,0,56,3,128,0,3,128,0,3,128,0,252,0,0,252,0,0,252,0,0, + // 0x0137 ķ + 21,39,117,24,0,250,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,1,192,28,1,192,28,1,192,28,14,0,28,14,0,28,14,0,28,112,0,28,112,0,28,112,0,31,128,0,31,128,0,31,128,0,28,112,0,28,112,0,28,112,0,28,14,0,28,14,0,28,14,0,28,1,192,28,1,192,28,1,192,28,0,56,28,0,56,28,0,56,3,128,0,3,128,0,3,128,0,252,0,0,252,0,0,252,0,0, + // 0x0138 ĸ + 18,24,72,24,3,0,224,1,192,224,1,192,224,1,192,224,14,0,224,14,0,224,14,0,224,112,0,224,112,0,224,112,0,255,128,0,255,128,0,255,128,0,255,128,0,255,128,0,255,128,0,224,112,0,224,112,0,224,112,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192, + // 0x0139 Ĺ + 18,42,126,24,3,0,3,240,0,3,240,0,3,240,0,252,0,0,252,0,0,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x013a ĺ + 15,42,84,24,6,0,3,240,3,240,3,240,252,0,252,0,252,0,0,0,0,0,0,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x013b Ļ + 18,36,108,24,3,250,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192,0,112,0,0,112,0,0,112,0,31,128,0,31,128,0,31,128,0, + // 0x013c ļ + 15,39,78,24,6,250,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,252,0,252,0,252,0, + // 0x013d Ľ + 18,42,126,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x013e ľ + 15,42,84,24,6,0,224,112,224,112,224,112,31,128,31,128,31,128,0,0,0,0,0,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x013f Ŀ + 18,30,90,24,3,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x0140 ŀ + 15,33,66,24,3,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,142,3,142,3,142,3,142,3,142,3,142,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x0141 Ł + 21,30,90,24,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,14,0,28,14,0,28,14,0,28,112,0,28,112,0,28,112,0,31,128,0,31,128,0,31,128,0,252,0,0,252,0,0,252,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,31,255,248,31,255,248,31,255,248, + // 0x0142 ł + 15,33,66,24,6,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,142,3,142,3,142,3,240,3,240,3,240,31,128,31,128,31,128,227,128,227,128,227,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x0143 Ń + 18,42,126,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,1,192,224,1,192,224,1,192, + // 0x0144 ń + 18,36,108,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0145 Ņ + 21,36,108,24,0,250,28,0,56,28,0,56,28,0,56,31,128,56,31,128,56,31,128,56,31,128,56,31,128,56,31,128,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,14,56,28,14,56,28,14,56,28,14,56,28,14,56,28,14,56,28,1,248,28,1,248,28,1,248,28,1,248,28,1,248,28,1,248,28,0,56,28,0,56,28,0,56,3,128,0,3,128,0,3,128,0,252,0,0,252,0,0,252,0,0, + // 0x0146 ņ + 21,30,90,24,0,250,28,127,192,28,127,192,28,127,192,31,128,56,31,128,56,31,128,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,3,128,0,3,128,0,3,128,0,252,0,0,252,0,0,252,0,0, + // 0x0147 Ň + 18,42,126,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,252,1,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,227,129,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,113,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,15,192,224,1,192,224,1,192,224,1,192, + // 0x0148 ň + 18,36,108,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0149 ʼn + 18,39,117,24,3,0,252,0,0,252,0,0,252,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,0,0,0,0,0,0,0,0,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x014a Ŋ + 18,30,90,24,3,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,126,0,224,126,0,224,126,0, + // 0x014b ŋ + 18,30,90,24,3,250,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,0,126,0,0,126,0,0,126,0, + // 0x014c Ō + 18,39,117,24,3,0,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x014d ō + 18,33,99,24,3,0,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x014e Ŏ + 18,42,126,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x014f ŏ + 18,36,108,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0150 Ő + 21,42,126,24,3,0,31,129,248,31,129,248,31,129,248,224,14,0,224,14,0,224,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0151 ő + 21,36,108,24,3,0,31,129,248,31,129,248,31,129,248,224,14,0,224,14,0,224,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0152 Œ + 21,30,90,24,3,0,31,143,248,31,143,248,31,143,248,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,127,192,224,127,192,224,127,192,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,31,143,248,31,143,248,31,143,248, + // 0x0153 œ + 21,24,72,24,3,0,31,143,192,31,143,192,31,143,192,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,127,248,224,127,248,224,127,248,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,56,224,112,56,224,112,56,31,143,192,31,143,192,31,143,192, + // 0x0154 Ŕ + 18,42,126,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0,224,112,0,224,112,0,224,112,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0155 ŕ + 18,36,108,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x0156 Ŗ + 21,36,108,24,0,250,31,255,192,31,255,192,31,255,192,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,31,255,192,31,255,192,31,255,192,28,14,0,28,14,0,28,14,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,3,128,0,3,128,0,3,128,0,252,0,0,252,0,0,252,0,0, + // 0x0157 ŗ + 21,30,90,24,0,250,28,127,192,28,127,192,28,127,192,31,128,56,31,128,56,31,128,56,28,0,56,28,0,56,28,0,56,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,3,128,0,3,128,0,3,128,0,252,0,0,252,0,0,252,0,0, + // 0x0158 Ř + 18,42,126,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,254,0,255,254,0,255,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,254,0,255,254,0,255,254,0,224,112,0,224,112,0,224,112,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0159 ř + 18,36,108,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,227,254,0,227,254,0,227,254,0,252,1,192,252,1,192,252,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + // 0x015a Ś + 18,42,126,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x015b ś + 18,36,108,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x015c Ŝ + 18,42,126,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x015d ŝ + 18,36,108,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x015e Ş + 18,36,108,24,3,250,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,112,0,0,112,0,0,112,0,31,128,0,31,128,0,31,128,0, + // 0x015f ş + 18,30,90,24,3,250,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,112,0,0,112,0,0,112,0,31,128,0,31,128,0,31,128,0, + // 0x0160 Š + 18,42,126,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0161 š + 18,36,108,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,0,0,224,0,0,224,0,0,31,128,0,31,128,0,31,128,0,0,126,0,0,126,0,0,126,0,0,1,192,0,1,192,0,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0162 Ţ + 21,36,108,24,3,250,255,255,248,255,255,248,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,128,0,31,128,0,31,128,0, + // 0x0163 ţ + 15,36,72,24,3,250,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,0,126,0,126,0,126,0,112,0,112,0,112,31,128,31,128,31,128, + // 0x0164 Ť + 21,42,126,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,248,255,255,248,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0165 ť + 15,42,84,24,3,0,28,14,28,14,28,14,3,240,3,240,3,240,0,0,0,0,0,0,0,0,0,0,0,0,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,0,126,0,126,0,126, + // 0x0166 Ŧ + 21,30,90,24,3,0,255,255,248,255,255,248,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0167 ŧ + 15,30,60,24,3,0,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,0,126,0,126,0,126, + // 0x0168 Ũ + 18,42,126,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0169 ũ + 18,36,108,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x016a Ū + 18,39,117,24,3,0,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x016b ū + 18,33,99,24,3,0,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x016c Ŭ + 18,42,126,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x016d ŭ + 18,39,117,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x016e Ů + 18,42,126,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x016f ů + 18,36,108,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0170 Ű + 21,42,126,24,3,0,31,129,248,31,129,248,31,129,248,224,14,0,224,14,0,224,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0171 ű + 21,36,108,24,3,0,31,129,248,31,129,248,31,129,248,224,14,0,224,14,0,224,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0172 Ų + 18,36,108,24,3,250,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,3,128,0,3,128,0,3,128,0,0,126,0,0,126,0,0,126,0, + // 0x0173 ų + 21,30,90,24,3,250,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192,0,14,0,0,14,0,0,14,0,0,1,248,0,1,248,0,1,248, + // 0x0174 Ŵ + 18,42,126,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,227,241,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0175 ŵ + 21,36,108,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0,56,224,0,56,224,0,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,31,143,192,31,143,192,31,143,192, + // 0x0176 Ŷ + 21,42,126,24,3,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0177 ŷ + 18,42,126,24,3,250,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,15,192,28,15,192,28,15,192,3,241,192,3,241,192,3,241,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,31,254,0,31,254,0,31,254,0, + // 0x0178 Ÿ + 21,42,126,24,3,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x0179 Ź + 18,42,126,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x017a ź + 18,36,108,24,3,0,0,126,0,0,126,0,0,126,0,31,128,0,31,128,0,31,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x017b Ż + 18,42,126,24,3,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x017c ż + 18,36,108,24,3,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x017d Ž + 18,42,126,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x017e ž + 18,36,108,24,3,0,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,0,1,192,0,1,192,0,1,192,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x017f ſ + 15,33,66,24,3,0,0,126,0,126,0,126,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,128,255,128,255,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Simplified_Chinese_30.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Simplified_Chinese_30.cpp new file mode 100644 index 000000000000..799e9a435f3f --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Simplified_Chinese_30.cpp @@ -0,0 +1,778 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// Unifont Simplified Chinese 48pt, capital 'A' height: 30px, width: 100%, range: 0x201c-0xff1a, glyphs: 373 +extern const uint8_t Unifont_Simplified_Chinese_30[23990] = { + 161,30,28,32,26,255,42,250, // unifont_t + // 0x201c “ + 28,32,18,12,36,24,3,24,28,1,192,28,1,192,28,1,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,252,15,192,252,15,192,252,15,192, + // 0x201d ” + 29,32,18,12,36,24,3,24,252,15,192,252,15,192,252,15,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,224,14,0,224,14,0,224,14,0, + // 0x22bf ⊿ + 191,34,18,18,54,24,3,0,0,1,192,0,1,192,0,1,192,0,15,192,0,15,192,0,15,192,0,113,192,0,113,192,0,113,192,3,129,192,3,129,192,3,129,192,28,1,192,28,1,192,28,1,192,255,255,192,255,255,192,255,255,192, + // 0x4e00 一 + 0,78,45,3,18,48,0,18,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x4e09 三 + 9,78,45,36,216,48,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x4e0a 上 + 10,78,45,45,14,48,0,253,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x4e0b 下 + 11,78,45,45,14,48,0,250,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x4e0d 不 + 13,78,42,45,14,48,0,250,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,63,28,0,0,0,0,63,28,0,0,0,0,63,28,0,0,0,1,199,3,128,0,0,1,199,3,128,0,0,1,199,3,128,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,28,0,7,0,1,192,28,0,7,0,1,192,28,0,7,0,1,192,224,0,7,0,0,0,224,0,7,0,0,0,224,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x4e13 专 + 19,78,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,1,248,28,0,0,0,1,248,28,0,0,0,1,248,28,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0x4e1d 丝 + 29,78,45,45,14,48,0,253,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,28,0,56,224,1,192,28,0,56,224,1,192,28,0,56,224,1,192,31,255,192,255,254,0,31,255,192,255,254,0,31,255,192,255,254,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,31,255,248,255,255,192,31,255,248,255,255,192,31,255,248,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x4e2a 个 + 42,78,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,252,0,7,0,1,248,252,0,7,0,1,248,252,0,7,0,1,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x4e2d 中 + 45,78,33,48,240,48,6,250,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + // 0x4e3a 为 + 58,78,39,48,240,48,0,250,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,112,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,31,255,255,255,254,31,255,255,255,254,31,255,255,255,254,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,224,14,0,0,56,224,14,0,0,56,224,14,0,1,192,28,14,0,1,192,28,14,0,1,192,28,14,0,1,192,28,14,0,1,192,28,14,0,1,192,28,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14,3,128,0,0,14,3,128,0,0,14,3,128,0,0,14,28,0,0,28,112,28,0,0,28,112,28,0,0,28,112,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128, + // 0x4e3b 主 + 59,78,45,45,14,48,0,253,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x4e49 义 + 73,78,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,3,240,0,0,126,0,3,240,0,0,126,0,3,240,0,0,126,0,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248, + // 0x4e4b 之 + 75,78,42,45,14,48,3,253,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,240,0,255,255,255,255,240,0,255,255,255,255,240,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,3,240,0,0,0,0,3,240,0,0,0,0,3,240,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,224,1,255,255,255,192,224,1,255,255,255,192,224,1,255,255,255,192, + // 0x4e86 了 + 134,78,36,45,225,48,3,250,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,63,0,0,0,0,63,0,0,0,0,63,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,14,56,0,0,0,14,56,0,0,0,14,56,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + // 0x4e8c 二 + 140,78,45,30,180,48,0,3,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x4e8e 于 + 142,78,45,45,14,48,0,250,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x4ea4 交 + 164,78,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,15,192,28,0,0,0,15,192,28,0,0,0,15,192,28,0,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,252,0,0,0,15,248,252,0,0,0,15,248,252,0,0,0,15,248, + // 0x4eae 亮 + 174,78,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,1,255,252,1,192,224,1,255,252,1,192,224,1,255,252,1,192,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,3,240,0,28,0,56,3,240,0,28,0,56,3,240,0,28,0,56,252,0,0,3,255,248,252,0,0,3,255,248,252,0,0,3,255,248, + // 0x4ece 从 + 206,78,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,28,112,0,0,14,0,28,112,0,0,14,0,28,112,0,0,113,192,28,112,0,0,113,192,28,112,0,0,113,192,28,112,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,224,14,0,0,112,56,224,14,0,0,112,56,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,28,0,56,0,1,192,28,0,56,0,1,192,28,0,56,0,1,192,224,1,192,0,0,56,224,1,192,0,0,56,224,1,192,0,0,56, + // 0x4ee4 令 + 228,78,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,56,3,128,0,0,14,56,3,128,0,0,14,56,3,128,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0, + // 0x4ee5 以 + 229,78,39,48,240,48,6,250,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,224,14,0,28,0,224,14,0,28,0,224,14,0,28,0,224,1,192,28,0,224,1,192,28,0,224,1,192,28,0,224,1,192,28,0,224,1,192,28,0,224,1,192,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,224,0,224,0,0,224,0,224,0,0,224,0,224,0,0,224,0,224,0,0,224,0,224,0,0,224,0,224,0,0,224,0,224,0,0,224,0,224,0,0,224,0,224,112,7,0,0,224,112,7,0,0,224,112,7,0,0,227,128,7,28,0,227,128,7,28,0,227,128,7,28,0,252,0,56,3,128,252,0,56,3,128,252,0,56,3,128,224,1,192,0,112,224,1,192,0,112,224,1,192,0,112,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14, + // 0x4ef6 件 + 246,78,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0, + // 0x4efd 份 + 253,78,45,48,32,48,0,250,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,224,112,0,0,14,0,224,112,0,0,14,0,224,112,0,0,14,0,224,112,0,0,14,0,224,112,0,0,14,0,224,112,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,3,240,7,0,1,192,3,240,7,0,1,192,3,240,7,0,1,192,3,240,56,0,1,192,3,240,56,0,1,192,3,240,56,0,1,192,28,113,199,255,254,56,28,113,199,255,254,56,28,113,199,255,254,56,224,112,0,224,14,0,224,112,0,224,14,0,224,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,0,113,192,0,112,0,0,113,192,0,112,0,0,113,192,0,112,0, + // 0x4f11 休 + 17,79,45,48,32,48,0,250,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,3,240,0,28,0,0,3,240,0,28,0,0,3,240,0,28,0,0,3,240,0,255,128,0,3,240,0,255,128,0,3,240,0,255,128,0,28,112,0,255,128,0,28,112,0,255,128,0,28,112,0,255,128,0,224,112,7,28,112,0,224,112,7,28,112,0,224,112,7,28,112,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,126,0,28,0,56,0,126,0,28,0,56,0,126,0,28,0,56,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0, + // 0x4f20 传 + 32,79,45,48,32,48,0,250,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,240,0,224,0,0,3,240,0,224,0,0,3,240,0,224,0,0,3,241,255,255,255,248,3,241,255,255,255,248,3,241,255,255,255,248,28,112,0,224,0,0,28,112,0,224,0,0,28,112,0,224,0,0,224,112,7,0,0,0,224,112,7,0,0,0,224,112,7,0,0,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0, + // 0x4f4d 位 + 77,79,45,48,32,48,0,250,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,3,240,0,0,0,0,3,240,0,0,0,0,3,240,0,0,0,0,3,240,0,0,14,0,3,240,0,0,14,0,3,240,0,0,14,0,28,112,56,0,14,0,28,112,56,0,14,0,28,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,127,255,255,255,248,0,127,255,255,255,248,0,127,255,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x4f4e 低 + 78,79,45,48,32,48,0,250,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,3,255,192,0,14,0,3,255,192,0,14,0,3,255,192,0,14,63,255,128,0,0,14,63,255,128,0,0,14,63,255,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,28,112,63,255,255,248,28,112,63,255,255,248,28,112,63,255,255,248,224,112,56,3,128,0,224,112,56,3,128,0,224,112,56,3,128,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,14,56,0,112,56,0,14,56,0,112,56,0,14,56,0,112,56,224,14,56,0,112,56,224,14,56,0,112,56,224,14,56,0,112,63,3,129,248,0,112,63,3,129,248,0,112,63,3,129,248,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56, + // 0x4f53 体 + 83,79,45,48,32,48,0,250,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,3,240,0,28,0,0,3,240,0,28,0,0,3,240,0,28,0,0,3,240,0,255,128,0,3,240,0,255,128,0,3,240,0,255,128,0,28,112,0,255,128,0,28,112,0,255,128,0,28,112,0,255,128,0,224,112,7,28,112,0,224,112,7,28,112,0,224,112,7,28,112,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,113,199,255,241,192,0,113,199,255,241,192,0,113,199,255,241,192,0,126,0,28,0,56,0,126,0,28,0,56,0,126,0,28,0,56,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0, + // 0x4f59 余 + 89,79,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,143,255,255,142,0,3,143,255,255,142,0,3,143,255,255,142,0,252,0,7,0,1,248,252,0,7,0,1,248,252,0,7,0,1,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,28,1,199,0,1,192,28,1,199,0,1,192,28,1,199,0,1,192,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x4f5c 作 + 92,79,45,48,32,48,0,250,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,112,7,255,255,248,0,112,7,255,255,248,0,112,7,255,255,248,0,112,56,224,0,0,0,112,56,224,0,0,0,112,56,224,0,0,3,240,56,224,0,0,3,240,56,224,0,0,3,240,56,224,0,0,3,241,192,224,0,0,3,241,192,224,0,0,3,241,192,224,0,0,28,112,0,255,254,0,28,112,0,255,254,0,28,112,0,255,254,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0, + // 0x4f7f 使 + 127,79,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,127,255,255,255,248,0,127,255,255,255,248,0,127,255,255,255,248,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,31,129,255,255,255,192,31,129,255,255,255,192,31,129,255,255,255,192,31,129,192,28,1,192,31,129,192,28,1,192,31,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,56,28,0,0,3,128,56,28,0,0,3,128,56,28,0,0,3,128,7,28,0,0,3,128,7,28,0,0,3,128,7,28,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,7,28,0,0,3,128,7,28,0,0,3,128,7,28,0,0,3,128,56,3,240,0,3,128,56,3,240,0,3,128,56,3,240,0,3,143,192,0,15,248,3,143,192,0,15,248,3,143,192,0,15,248, + // 0x4f9b 供 + 155,79,45,48,32,48,0,250,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,3,240,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,28,112,7,0,112,0,28,112,7,0,112,0,28,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,113,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192,0,126,0,0,1,192,0,126,0,0,1,192,0,126,0,0,1,192, + // 0x4fb5 侵 + 181,79,45,48,32,48,0,250,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,63,255,254,0,0,14,63,255,254,0,0,14,63,255,254,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,3,240,63,255,254,0,3,240,63,255,254,0,3,240,63,255,254,0,3,240,0,0,0,0,3,240,0,0,0,0,3,240,0,0,0,0,28,113,255,255,255,192,28,113,255,255,255,192,28,113,255,255,255,192,224,113,192,0,1,192,224,113,192,0,1,192,224,113,192,0,1,192,0,112,63,255,240,0,0,112,63,255,240,0,0,112,63,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,7,227,240,0,0,112,7,227,240,0,0,112,7,227,240,0,0,113,248,0,15,248,0,113,248,0,15,248,0,113,248,0,15,248, + // 0x4fdd 保 + 221,79,45,48,32,48,0,250,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,63,255,254,0,0,14,63,255,254,0,0,14,63,255,254,0,0,14,56,0,14,0,0,14,56,0,14,0,0,14,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,3,240,63,255,254,0,3,240,63,255,254,0,3,240,63,255,254,0,3,240,0,28,0,0,3,240,0,28,0,0,3,240,0,28,0,0,28,112,0,28,0,0,28,112,0,28,0,0,28,112,0,28,0,0,224,113,255,255,255,192,224,113,255,255,255,192,224,113,255,255,255,192,0,112,0,255,128,0,0,112,0,255,128,0,0,112,0,255,128,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,126,0,28,0,56,0,126,0,28,0,56,0,126,0,28,0,56,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0, + // 0x4fe1 信 + 225,79,45,48,32,48,0,250,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,63,255,255,248,0,14,63,255,255,248,0,14,63,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,240,7,255,255,192,3,240,7,255,255,192,3,240,7,255,255,192,3,240,0,0,0,0,3,240,0,0,0,0,3,240,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,224,112,7,255,255,192,224,112,7,255,255,192,224,112,7,255,255,192,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192, + // 0x503c 值 + 60,80,45,48,32,48,0,250,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,15,255,255,255,192,0,15,255,255,255,192,0,15,255,255,255,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,240,63,255,254,0,3,240,63,255,254,0,3,240,63,255,254,0,3,240,56,0,14,0,3,240,56,0,14,0,3,240,56,0,14,0,28,112,63,255,254,0,28,112,63,255,254,0,28,112,63,255,254,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,127,255,255,255,248,0,127,255,255,255,248,0,127,255,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x503e 倾 + 62,80,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,255,248,0,112,0,255,255,248,0,112,0,255,255,248,0,113,192,0,112,0,0,113,192,0,112,0,0,113,192,0,112,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,31,255,192,3,129,192,31,255,192,3,129,192,31,255,192,31,129,192,28,1,192,31,129,192,28,1,192,31,129,192,28,1,192,31,129,255,28,113,192,31,129,255,28,113,192,31,129,255,28,113,192,227,129,192,28,113,192,227,129,192,28,113,192,227,129,192,28,113,192,3,129,192,28,113,192,3,129,192,28,113,192,3,129,192,28,113,192,3,129,192,28,113,192,3,129,192,28,113,192,3,129,192,28,113,192,3,129,199,28,113,192,3,129,199,28,113,192,3,129,199,28,113,192,3,129,248,28,113,192,3,129,248,28,113,192,3,129,248,28,113,192,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,224,0,56,3,128,0,224,0,56,3,128,0,224,0,56, + // 0x504f 偏 + 79,80,42,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,31,129,255,255,255,192,31,129,255,255,255,192,31,129,255,255,255,192,31,129,192,0,0,0,31,129,192,0,0,0,31,129,192,0,0,0,227,129,192,0,0,0,227,129,192,0,0,0,227,129,192,0,0,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,248,227,129,192,3,129,248,227,129,192,3,129,248,227,129,192,3,142,56,227,129,192,3,142,56,227,129,192,3,142,56,227,129,192,3,142,63,255,255,192,3,142,63,255,255,192,3,142,63,255,255,192,3,142,56,227,129,192,3,142,56,227,129,192,3,142,56,227,129,192,3,142,56,227,129,192,3,142,56,227,129,192,3,142,56,227,129,192,3,240,56,227,129,192,3,240,56,227,129,192,3,240,56,227,129,192,3,128,56,0,15,192,3,128,56,0,15,192,3,128,56,0,15,192, + // 0x505c 停 + 92,80,45,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,31,128,56,0,14,0,31,128,56,0,14,0,31,128,56,0,14,0,31,128,63,255,254,0,31,128,63,255,254,0,31,128,63,255,254,0,227,128,0,0,0,0,227,128,0,0,0,0,227,128,0,0,0,0,3,143,255,255,255,248,3,143,255,255,255,248,3,143,255,255,255,248,3,142,0,0,0,56,3,142,0,0,0,56,3,142,0,0,0,56,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,7,28,0,0,3,128,7,28,0,0,3,128,7,28,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0, + // 0x50a8 储 + 168,80,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,126,0,255,254,56,0,126,0,255,254,56,0,126,0,255,254,56,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,142,0,3,129,192,3,142,0,3,129,192,3,142,0,31,128,7,255,255,248,31,128,7,255,255,248,31,128,7,255,255,248,31,128,0,3,128,0,31,128,0,3,128,0,31,128,0,3,128,0,227,255,192,28,0,0,227,255,192,28,0,0,227,255,192,28,0,0,3,129,192,255,255,192,3,129,192,255,255,192,3,129,192,255,255,192,3,129,199,28,1,192,3,129,199,28,1,192,3,129,199,28,1,192,3,129,248,28,1,192,3,129,248,28,1,192,3,129,248,28,1,192,3,129,192,31,255,192,3,129,192,31,255,192,3,129,192,31,255,192,3,129,199,28,1,192,3,129,199,28,1,192,3,129,199,28,1,192,3,129,248,28,1,192,3,129,248,28,1,192,3,129,248,28,1,192,3,129,192,31,255,192,3,129,192,31,255,192,3,129,192,31,255,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192, + // 0x50cf 像 + 207,80,45,48,32,48,0,250,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,255,240,0,0,14,7,255,240,0,0,14,7,255,240,0,0,14,56,0,112,0,0,14,56,0,112,0,0,14,56,0,112,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,0,126,56,3,129,192,0,126,56,3,129,192,0,126,56,3,129,192,3,240,56,28,1,192,3,240,56,28,1,192,3,240,56,28,1,192,3,240,63,255,255,192,3,240,63,255,255,192,3,240,63,255,255,192,28,112,0,224,0,0,28,112,0,224,0,0,28,112,0,224,0,0,224,112,7,28,1,192,224,112,7,28,1,192,224,112,7,28,1,192,0,113,248,227,142,0,0,113,248,227,142,0,0,113,248,227,142,0,0,112,7,3,240,0,0,112,7,3,240,0,0,112,7,3,240,0,0,113,248,31,142,0,0,113,248,31,142,0,0,113,248,31,142,0,0,112,0,227,142,0,0,112,0,227,142,0,0,112,0,227,142,0,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,113,248,227,128,56,0,113,248,227,128,56,0,113,248,227,128,56,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0, + // 0x5145 充 + 69,81,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,1,192,28,14,0,0,1,192,28,14,0,0,1,192,28,14,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,31,128,0,3,255,192,31,128,0,3,255,192,31,128,0,3,255,192, + // 0x5148 先 + 72,81,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,127,255,255,254,0,0,127,255,255,254,0,0,127,255,255,254,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,28,0,7,0,0,0,28,0,7,0,0,0,28,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,3,128,0,3,255,248,3,128,0,3,255,248,3,128,0,3,255,248,252,0,0,0,0,0,252,0,0,0,0,0,252,0,0,0,0,0, + // 0x5149 光 + 73,81,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,3,128,0,3,255,248,3,128,0,3,255,248,3,128,0,3,255,248,252,0,0,0,0,0,252,0,0,0,0,0,252,0,0,0,0,0, + // 0x5165 入 + 101,81,45,48,32,48,0,250,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,224,0,0,0,1,248,224,0,0,0,1,248,224,0,0,0,1,248, + // 0x5168 全 + 104,81,45,45,14,48,0,253,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,143,255,255,142,0,3,143,255,255,142,0,3,143,255,255,142,0,252,0,7,0,1,248,252,0,7,0,1,248,252,0,7,0,1,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192, + // 0x5171 共 + 113,81,42,48,32,48,3,250,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,31,255,255,255,254,0,31,255,255,255,254,0,31,255,255,255,254,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,255,255,255,255,255,192,255,255,255,255,255,192,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0, + // 0x5173 关 + 115,81,45,48,32,48,0,250,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,3,240,0,0,126,0,3,240,0,0,126,0,3,240,0,0,126,0,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248, + // 0x5177 具 + 119,81,45,45,14,48,0,250,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0, + // 0x5197 冗 + 151,81,45,42,252,48,0,250,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,252,0,0,0,15,255,252,0,0,0,15,255,252,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,28,0,0,3,255,248,28,0,0,3,255,248,28,0,0,3,255,248,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0, + // 0x51b7 冷 + 183,81,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,56,28,14,0,0,0,56,28,14,0,0,0,56,28,14,0,0,113,192,3,129,248,0,113,192,3,129,248,0,113,192,3,129,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,255,128,0,0,14,0,255,128,0,0,14,0,255,128,0,0,14,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0x51c6 准 + 198,81,45,48,32,48,0,250,0,0,7,28,0,0,0,0,7,28,0,0,0,0,7,28,0,0,28,0,7,3,128,0,28,0,7,3,128,0,28,0,7,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,3,128,63,255,255,248,3,128,63,255,255,248,3,128,63,255,255,248,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,3,128,0,0,113,248,3,128,0,0,113,248,3,128,0,0,113,248,3,128,0,0,126,63,255,255,192,0,126,63,255,255,192,0,126,63,255,255,192,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,63,255,255,192,3,128,63,255,255,192,3,128,63,255,255,192,255,128,56,3,128,0,255,128,56,3,128,0,255,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,63,255,255,248,3,128,63,255,255,248,3,128,63,255,255,248,3,128,56,0,0,0,3,128,56,0,0,0,3,128,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x51fa 出 + 250,81,39,48,240,48,3,250,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14, + // 0x51fb 击 + 251,81,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0, + // 0x5206 分 + 6,82,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,224,127,255,255,128,56,224,127,255,255,128,56,224,127,255,255,128,56,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,7,28,0,0,3,128,7,28,0,0,3,128,7,28,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0, + // 0x5207 切 + 7,82,42,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,127,248,28,1,192,0,127,248,28,1,192,0,127,248,28,1,192,255,240,0,28,1,192,255,240,0,28,1,192,255,240,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,126,0,224,1,192,0,126,0,224,1,192,0,126,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,0,7,0,1,192,0,0,7,0,1,192,0,0,7,0,1,192,0,0,56,3,142,0,0,0,56,3,142,0,0,0,56,3,142,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0, + // 0x521b 创 + 27,82,42,48,32,48,0,250,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,28,0,0,227,129,192,28,0,0,227,129,192,28,0,0,227,129,192,227,255,248,3,129,192,227,255,248,3,129,192,227,255,248,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,142,56,3,129,192,3,142,56,3,129,192,3,142,56,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,192,0,127,255,224,113,192,0,127,255,224,113,192,0,127,255,224,113,192,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0, + // 0x521d 初 + 29,82,42,48,32,48,0,250,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,0,7,255,255,192,0,0,7,255,255,192,0,0,7,255,255,192,255,255,192,28,1,192,255,255,192,28,1,192,255,255,192,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,3,241,192,28,1,192,3,241,192,28,1,192,3,241,192,28,1,192,28,126,0,28,1,192,28,126,0,28,1,192,28,126,0,28,1,192,224,113,192,28,1,192,224,113,192,28,1,192,224,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,0,113,192,0,112,0,0,113,192,0,112,0,0,113,192,0,112,0, + // 0x522b 别 + 43,82,42,48,32,48,0,250,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,31,255,255,0,1,192,31,255,255,0,1,192,31,255,255,0,1,192,28,0,7,0,1,192,28,0,7,0,1,192,28,0,7,0,1,192,28,0,7,3,129,192,28,0,7,3,129,192,28,0,7,3,129,192,28,0,7,3,129,192,28,0,7,3,129,192,28,0,7,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,255,255,255,3,129,192,255,255,255,3,129,192,255,255,255,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,28,14,56,0,113,192,28,14,56,0,113,192,28,14,56,0,113,192,224,1,192,0,14,0,224,1,192,0,14,0,224,1,192,0,14,0, + // 0x5230 到 + 48,82,42,48,32,48,0,250,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,255,255,255,224,1,192,255,255,255,224,1,192,255,255,255,224,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,28,0,7,3,129,192,28,0,7,3,129,192,28,0,7,3,129,192,255,255,255,227,129,192,255,255,255,227,129,192,255,255,255,227,129,192,0,14,0,227,129,192,0,14,0,227,129,192,0,14,0,227,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,15,255,224,1,192,0,15,255,224,1,192,0,15,255,224,1,192,255,254,0,0,113,192,255,254,0,0,113,192,255,254,0,0,113,192,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0, + // 0x5236 制 + 54,82,42,48,32,48,0,250,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,255,255,227,129,192,3,255,255,227,129,192,3,255,255,227,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,255,255,255,255,129,192,255,255,255,255,129,192,255,255,255,255,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,3,255,255,227,129,192,3,255,255,227,129,192,3,255,255,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,248,224,1,192,3,129,248,224,1,192,3,129,248,224,1,192,3,129,199,0,1,192,3,129,199,0,1,192,3,129,199,0,1,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0, + // 0x5237 刷 + 55,82,45,48,32,48,0,250,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,3,255,255,252,0,56,3,255,255,252,0,56,3,255,255,252,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,255,255,252,112,56,3,255,255,252,112,56,3,255,255,252,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,255,255,252,112,56,3,255,255,252,112,56,3,255,255,252,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,224,112,63,28,0,56,224,112,63,28,0,56,224,112,63,28,0,56,0,112,56,224,0,56,0,112,56,224,0,56,0,112,56,224,0,56,0,0,56,0,14,56,0,0,56,0,14,56,0,0,56,0,14,56,0,0,56,0,1,192,0,0,56,0,1,192,0,0,56,0,1,192, + // 0x5272 割 + 114,82,42,48,32,48,0,250,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,255,255,255,224,1,192,255,255,255,224,1,192,255,255,255,224,1,192,224,0,0,227,129,192,224,0,0,227,129,192,224,0,0,227,129,192,0,14,7,3,129,192,0,14,7,3,129,192,0,14,7,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,255,255,255,227,129,192,255,255,255,227,129,192,255,255,255,227,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,28,0,7,0,1,192,28,0,7,0,1,192,28,0,7,0,1,192,28,0,7,0,1,192,28,0,7,0,1,192,28,0,7,0,1,192,31,255,255,0,113,192,31,255,255,0,113,192,31,255,255,0,113,192,28,0,7,0,14,0,28,0,7,0,14,0,28,0,7,0,14,0, + // 0x529b 力 + 155,82,36,48,240,48,3,250,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,112,0,0,112,0,112,0,0,112,0,112,0,0,112,0,112,0,0,112,0,112,0,0,112,0,112,0,0,112,3,128,7,0,112,3,128,7,0,112,3,128,7,0,112,28,0,0,227,128,28,0,0,227,128,28,0,0,227,128,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0, + // 0x529f 功 + 159,82,42,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,255,248,28,0,0,255,255,248,28,0,0,255,255,248,28,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,127,248,224,1,192,0,127,248,224,1,192,0,127,248,224,1,192,255,240,7,0,1,192,255,240,7,0,1,192,255,240,7,0,1,192,28,0,7,0,1,192,28,0,7,0,1,192,28,0,7,0,1,192,0,0,56,3,142,0,0,0,56,3,142,0,0,0,56,3,142,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0, + // 0x52a0 加 + 160,82,42,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,31,255,192,0,112,0,31,255,192,0,112,0,31,255,192,255,255,248,28,1,192,255,255,248,28,1,192,255,255,248,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,31,255,192,3,128,56,31,255,192,3,128,56,31,255,192,28,14,56,28,1,192,28,14,56,28,1,192,28,14,56,28,1,192,224,1,192,0,0,0,224,1,192,0,0,0,224,1,192,0,0,0, + // 0x52a8 动 + 168,82,42,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,31,255,192,28,0,0,31,255,192,28,0,0,31,255,192,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,7,255,255,192,0,0,7,255,255,192,0,0,7,255,255,192,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,255,255,248,28,1,192,255,255,248,28,1,192,255,255,248,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,192,28,14,0,224,1,192,28,14,0,224,1,192,28,14,0,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,255,255,199,0,1,192,255,255,199,0,1,192,255,255,199,0,1,192,28,1,199,0,1,192,28,1,199,0,1,192,28,1,199,0,1,192,0,0,56,3,142,0,0,0,56,3,142,0,0,0,56,3,142,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0, + // 0x5316 化 + 22,83,45,48,32,48,0,250,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,1,192,0,14,0,224,1,192,0,14,0,224,1,192,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,3,240,0,227,128,0,3,240,0,227,128,0,3,240,0,227,128,0,3,240,0,252,0,0,3,240,0,252,0,0,3,240,0,252,0,0,28,112,0,224,0,0,28,112,0,224,0,0,28,112,0,224,0,0,224,112,7,224,0,0,224,112,7,224,0,0,224,112,7,224,0,0,0,112,56,224,0,0,0,112,56,224,0,0,0,112,56,224,0,0,0,113,192,224,0,0,0,113,192,224,0,0,0,113,192,224,0,0,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,31,255,248,0,112,0,31,255,248,0,112,0,31,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x5347 升 + 71,83,45,48,32,48,0,250,0,0,7,3,128,0,0,0,7,3,128,0,0,0,7,3,128,0,0,1,255,227,128,0,0,1,255,227,128,0,0,1,255,227,128,0,3,255,192,3,128,0,3,255,192,3,128,0,3,255,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0, + // 0x534a 半 + 74,83,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x534f 协 + 79,83,45,48,32,48,0,250,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,255,254,63,255,240,0,255,254,63,255,240,0,255,254,63,255,240,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,56,224,126,0,3,128,56,224,126,0,3,128,56,224,126,0,3,128,56,224,113,192,3,128,56,224,113,192,3,128,56,224,113,192,3,129,192,224,112,56,3,129,192,224,112,56,3,129,192,224,112,56,3,142,0,224,112,56,3,142,0,224,112,56,3,142,0,224,112,56,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,56,28,112,0,3,128,56,28,112,0,3,128,56,28,112,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0, + // 0x5355 单 + 85,83,45,48,32,48,0,250,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x5361 卡 + 97,83,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x5370 印 + 112,83,39,45,225,48,3,250,0,15,192,0,0,0,15,192,0,0,0,15,192,0,0,255,240,7,255,254,255,240,7,255,254,255,240,7,255,254,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,255,255,199,0,14,255,255,199,0,14,255,255,199,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,127,199,28,112,224,127,199,28,112,224,127,199,28,112,255,128,7,3,128,255,128,7,3,128,255,128,7,3,128,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0, + // 0x5371 危 + 113,83,42,48,32,48,0,250,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,127,255,255,255,192,28,127,255,255,255,192,28,127,255,255,255,192,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,63,255,240,0,0,112,63,255,240,0,0,112,63,255,240,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,3,128,56,0,1,192,3,128,56,0,1,192,3,128,56,0,1,192,3,128,56,0,1,192,3,128,56,0,1,192,3,128,56,0,1,192,28,0,7,255,255,192,28,0,7,255,255,192,28,0,7,255,255,192,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0, + // 0x5374 却 + 116,83,42,48,32,48,0,250,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,31,255,192,0,14,0,31,255,192,0,14,0,31,255,192,31,255,255,28,1,192,31,255,255,28,1,192,31,255,255,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,255,255,255,252,1,192,255,255,255,252,1,192,255,255,255,252,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,28,0,56,28,113,192,28,0,56,28,113,192,28,0,56,28,113,192,255,255,255,28,14,0,255,255,255,28,14,0,255,255,255,28,14,0,28,0,7,28,0,0,28,0,7,28,0,0,28,0,7,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x5378 卸 + 120,83,42,48,32,48,0,250,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,255,255,31,255,192,3,255,255,31,255,192,3,255,255,31,255,192,28,14,0,28,1,192,28,14,0,28,1,192,28,14,0,28,1,192,224,14,0,28,1,192,224,14,0,28,1,192,224,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,31,255,255,28,1,192,31,255,255,28,1,192,31,255,255,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,3,143,248,28,1,192,3,143,248,28,1,192,3,143,248,28,1,192,3,142,0,28,1,192,3,142,0,28,1,192,3,142,0,28,1,192,3,142,0,28,113,192,3,142,0,28,113,192,3,142,0,28,113,192,3,143,255,28,14,0,3,143,255,28,14,0,3,143,255,28,14,0,255,240,0,28,0,0,255,240,0,28,0,0,255,240,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x538b 压 + 139,83,45,45,14,48,0,250,3,255,255,255,255,248,3,255,255,255,255,248,3,255,255,255,255,248,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,143,255,255,255,192,3,143,255,255,255,192,3,143,255,255,255,192,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,127,255,255,255,248,28,127,255,255,255,248,28,127,255,255,255,248,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0, + // 0x539f 原 + 159,83,45,45,14,48,0,250,3,255,255,255,255,248,3,255,255,255,255,248,3,255,255,255,255,248,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,3,129,255,255,240,0,3,129,255,255,240,0,3,129,255,255,240,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,255,255,240,0,3,129,255,255,240,0,3,129,255,255,240,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,255,255,240,0,3,129,255,255,240,0,3,129,255,255,240,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,129,192,224,112,0,3,129,192,224,112,0,3,129,192,224,112,0,28,14,0,224,14,0,28,14,0,224,14,0,28,14,0,224,14,0,28,112,56,224,1,192,28,112,56,224,1,192,28,112,56,224,1,192,224,0,7,0,0,0,224,0,7,0,0,0,224,0,7,0,0,0, + // 0x53cc 双 + 204,83,45,42,252,48,0,250,255,255,199,255,255,192,255,255,199,255,255,192,255,255,199,255,255,192,0,1,192,224,1,192,0,1,192,224,1,192,0,1,192,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,3,142,0,224,14,0,3,142,0,224,14,0,3,142,0,224,14,0,3,142,0,224,14,0,3,142,0,224,14,0,3,142,0,224,14,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,224,14,0,28,1,192,224,14,0,28,1,192,224,14,0,224,0,7,0,1,192,224,0,7,0,1,192,224,0,7,0,1,192,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + // 0x53cd 反 + 205,83,45,48,32,48,0,250,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,255,254,0,0,0,0,255,254,0,0,0,0,255,254,0,3,255,255,0,0,0,3,255,255,0,0,0,3,255,255,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,7,28,0,0,3,128,7,28,0,0,3,128,7,28,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,28,0,7,28,0,0,28,0,7,28,0,0,28,0,7,28,0,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,224,15,192,0,126,0,224,15,192,0,126,0,224,15,192,0,126,0,3,240,0,0,1,248,3,240,0,0,1,248,3,240,0,0,1,248, + // 0x53d6 取 + 214,83,45,45,14,48,0,250,255,255,255,224,0,0,255,255,255,224,0,0,255,255,255,224,0,0,3,128,56,255,255,192,3,128,56,255,255,192,3,128,56,255,255,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,129,255,227,142,0,3,129,255,227,142,0,3,129,255,227,142,0,255,254,56,0,112,0,255,254,56,0,112,0,255,254,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,0,0,56,3,142,0,0,0,56,3,142,0,0,0,56,3,142,0,0,0,56,28,1,192,0,0,56,28,1,192,0,0,56,28,1,192,0,0,56,224,0,56,0,0,56,224,0,56,0,0,56,224,0,56, + // 0x53d8 变 + 216,83,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,113,192,28,112,0,0,113,192,28,112,0,0,113,192,28,112,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,240,0,3,255,255,255,240,0,3,255,255,255,240,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,126,0,3,240,0,0,126,0,3,240,0,0,126,0,3,240,0,255,128,0,0,15,248,255,128,0,0,15,248,255,128,0,0,15,248, + // 0x53f0 台 + 240,83,39,48,240,48,3,250,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,28,0,0,0,14,28,0,0,0,14,28,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128, + // 0x5403 吃 + 3,84,42,45,14,48,3,253,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,240,56,0,0,0,255,240,56,0,0,0,255,240,56,0,0,0,224,112,63,255,255,192,224,112,63,255,255,192,224,112,63,255,255,192,224,113,192,0,0,0,224,113,192,0,0,0,224,113,192,0,0,0,224,126,0,0,0,0,224,126,0,0,0,0,224,126,0,0,0,0,224,112,63,255,240,0,224,112,63,255,240,0,224,112,63,255,240,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,252,0,0,224,112,0,252,0,0,224,112,0,252,0,0,255,240,7,0,0,0,255,240,7,0,0,0,255,240,7,0,0,0,224,112,56,0,0,0,224,112,56,0,0,0,224,112,56,0,0,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,0,63,255,255,192,0,0,63,255,255,192,0,0,63,255,255,192, + // 0x5408 合 + 8,84,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,3,240,0,0,126,0,3,240,0,0,126,0,3,240,0,0,126,0,252,15,255,255,129,248,252,15,255,255,129,248,252,15,255,255,129,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x540d 名 + 13,84,39,48,240,48,0,250,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,1,255,255,240,0,1,255,255,240,0,1,255,255,240,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,113,192,3,128,0,113,192,3,128,0,113,192,3,128,31,128,56,28,0,31,128,56,28,0,31,128,56,28,0,0,0,56,224,0,0,0,56,224,0,0,0,56,224,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,1,248,0,0,0,1,248,0,0,0,1,248,0,0,0,127,255,255,254,0,127,255,255,254,0,127,255,255,254,255,142,0,0,14,255,142,0,0,14,255,142,0,0,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14,0,15,255,255,254,0,15,255,255,254,0,15,255,255,254,0,14,0,0,14,0,14,0,0,14,0,14,0,0,14, + // 0x540e 后 + 14,84,45,48,32,48,0,250,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,255,254,0,0,0,0,255,254,0,0,0,0,255,254,0,0,127,255,0,0,0,0,127,255,0,0,0,0,127,255,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,127,255,255,255,248,0,127,255,255,255,248,0,127,255,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,113,255,255,254,0,0,113,255,255,254,0,0,113,255,255,254,0,0,113,192,0,14,0,0,113,192,0,14,0,0,113,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,224,1,255,255,254,0,224,1,255,255,254,0,224,1,255,255,254,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0, + // 0x5411 向 + 17,84,39,48,240,48,3,250,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,15,255,224,14,224,15,255,224,14,224,15,255,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,15,255,224,14,224,15,255,224,14,224,15,255,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x5426 否 + 38,84,45,45,14,48,0,250,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,1,199,31,128,0,0,1,199,31,128,0,0,1,199,31,128,0,0,14,7,0,126,0,0,14,7,0,126,0,0,14,7,0,126,0,3,240,7,0,1,192,3,240,7,0,1,192,3,240,7,0,1,192,252,0,7,0,0,56,252,0,7,0,0,56,252,0,7,0,0,56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x542f 启 + 47,84,42,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,127,255,255,255,192,0,127,255,255,255,192,0,127,255,255,255,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,127,255,255,255,192,0,127,255,255,255,192,0,127,255,255,255,192,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192,224,1,255,255,255,192,224,1,255,255,255,192,224,1,255,255,255,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x544a 告 + 74,84,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,127,255,255,254,0,0,127,255,255,254,0,0,127,255,255,254,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,28,0,7,0,0,0,28,0,7,0,0,0,28,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x5468 周 + 104,84,39,45,225,48,0,250,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,143,255,255,142,3,143,255,255,142,3,143,255,255,142,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,0,0,14,3,128,0,0,14,3,128,0,0,14,3,129,255,252,14,3,129,255,252,14,3,129,255,252,14,3,129,192,28,14,3,129,192,28,14,3,129,192,28,14,3,129,192,28,14,3,129,192,28,14,3,129,192,28,14,3,129,255,252,14,3,129,255,252,14,3,129,255,252,14,28,0,0,0,14,28,0,0,0,14,28,0,0,0,14,28,0,0,3,142,28,0,0,3,142,28,0,0,3,142,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x547d 命 + 125,84,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,3,241,255,252,126,0,3,241,255,252,126,0,3,241,255,252,126,0,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,248,255,254,0,3,255,248,255,254,0,3,255,248,255,254,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,255,248,227,142,0,3,255,248,227,142,0,3,255,248,227,142,0,3,128,56,224,112,0,3,128,56,224,112,0,3,128,56,224,112,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0, + // 0x548c 和 + 140,84,42,48,32,48,0,250,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,15,248,0,0,0,0,15,248,0,0,0,0,15,248,0,0,0,31,254,0,0,0,0,31,254,0,0,0,0,31,254,0,0,0,0,0,14,0,31,255,192,0,14,0,31,255,192,0,14,0,31,255,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,255,255,255,28,1,192,255,255,255,28,1,192,255,255,255,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,126,0,28,1,192,0,126,0,28,1,192,0,126,0,28,1,192,0,127,192,28,1,192,0,127,192,28,1,192,0,127,192,28,1,192,3,142,56,28,1,192,3,142,56,28,1,192,3,142,56,28,1,192,3,142,56,28,1,192,3,142,56,28,1,192,3,142,56,28,1,192,28,14,0,28,1,192,28,14,0,28,1,192,28,14,0,28,1,192,224,14,0,31,255,192,224,14,0,31,255,192,224,14,0,31,255,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0, + // 0x54cd 响 + 205,84,39,48,240,48,3,250,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,255,240,7,0,0,255,240,7,0,0,255,240,7,0,0,224,113,255,255,254,224,113,255,255,254,224,113,255,255,254,224,113,192,0,14,224,113,192,0,14,224,113,192,0,14,224,113,192,0,14,224,113,192,0,14,224,113,192,0,14,224,113,199,255,142,224,113,199,255,142,224,113,199,255,142,224,113,199,3,142,224,113,199,3,142,224,113,199,3,142,224,113,199,3,142,224,113,199,3,142,224,113,199,3,142,224,113,199,3,142,224,113,199,3,142,224,113,199,3,142,255,241,199,3,142,255,241,199,3,142,255,241,199,3,142,224,113,199,255,142,224,113,199,255,142,224,113,199,255,142,0,1,192,0,14,0,1,192,0,14,0,1,192,0,14,0,1,192,0,14,0,1,192,0,14,0,1,192,0,14,0,1,192,3,142,0,1,192,3,142,0,1,192,3,142,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112, + // 0x55b7 喷 + 183,85,42,48,32,48,3,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,255,240,0,28,0,0,255,240,0,28,0,0,255,240,0,28,0,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,113,255,255,255,192,224,113,255,255,255,192,224,113,255,255,255,192,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,63,255,254,0,224,112,63,255,254,0,224,112,63,255,254,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,56,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,255,240,56,28,14,0,255,240,56,28,14,0,255,240,56,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,0,0,56,28,14,0,0,0,56,28,14,0,0,0,56,28,14,0,0,0,0,227,128,0,0,0,0,227,128,0,0,0,0,227,128,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,0,1,248,0,14,0,0,1,248,0,14,0,0,1,248,0,14,0, + // 0x5634 嘴 + 52,86,45,48,32,48,0,250,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,0,0,56,224,113,192,0,0,56,224,113,192,0,0,56,224,113,192,255,240,56,252,126,0,255,240,56,252,126,0,255,240,56,252,126,0,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,252,112,56,224,112,56,252,112,56,224,112,56,252,112,56,224,113,255,0,15,248,224,113,255,0,15,248,224,113,255,0,15,248,224,112,7,255,240,0,224,112,7,255,240,0,224,112,7,255,240,0,224,112,56,0,112,0,224,112,56,0,112,0,224,112,56,0,112,0,224,113,255,255,255,192,224,113,255,255,255,192,224,113,255,255,255,192,224,126,56,28,1,192,224,126,56,28,1,192,224,126,56,28,1,192,255,240,63,255,255,192,255,240,63,255,255,192,255,240,63,255,255,192,224,112,56,28,1,192,224,112,56,28,1,192,224,112,56,28,1,192,0,0,63,255,255,192,0,0,63,255,255,192,0,0,63,255,255,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192,28,113,192,0,1,192,28,113,192,0,1,192,28,113,192,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + // 0x5668 器 + 104,86,45,45,14,48,0,250,3,255,248,31,255,192,3,255,248,31,255,192,3,255,248,31,255,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,255,248,31,255,192,3,255,248,31,255,192,3,255,248,31,255,192,0,0,7,3,128,0,0,0,7,3,128,0,0,0,7,3,128,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,15,192,31,128,0,0,15,192,31,128,0,0,15,192,31,128,0,3,240,0,0,126,0,3,240,0,0,126,0,3,240,0,0,126,0,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248,3,255,248,31,255,192,3,255,248,31,255,192,3,255,248,31,255,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,255,248,31,255,192,3,255,248,31,255,192,3,255,248,31,255,192, + // 0x5674 噴 + 116,86,42,48,32,48,3,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,255,240,0,28,0,0,255,240,0,28,0,0,255,240,0,28,0,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,113,255,255,255,192,224,113,255,255,255,192,224,113,255,255,255,192,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,63,255,254,0,224,112,63,255,254,0,224,112,63,255,254,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,63,255,254,0,224,112,63,255,254,0,224,112,63,255,254,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,255,240,63,255,254,0,255,240,63,255,254,0,255,240,63,255,254,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x56de 回 + 222,86,36,42,210,48,6,253,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,127,255,224,112,224,127,255,224,112,224,127,255,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,127,255,224,112,224,127,255,224,112,224,127,255,224,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x56e0 因 + 224,86,39,45,225,48,3,250,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,227,255,255,255,142,227,255,255,255,142,227,255,255,255,142,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,1,192,224,14,224,1,192,224,14,224,1,192,224,14,224,14,0,28,14,224,14,0,28,14,224,14,0,28,14,224,112,0,3,142,224,112,0,3,142,224,112,0,3,142,227,128,0,3,142,227,128,0,3,142,227,128,0,3,142,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14, + // 0x56fa 固 + 250,86,39,45,225,48,3,250,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,227,255,255,255,142,227,255,255,255,142,227,255,255,255,142,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,127,255,252,14,224,127,255,252,14,224,127,255,252,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,127,255,252,14,224,127,255,252,14,224,127,255,252,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14, + // 0x56fe 图 + 254,86,39,45,225,48,3,250,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,15,255,252,14,224,15,255,252,14,224,15,255,252,14,224,126,0,224,14,224,126,0,224,14,224,126,0,224,14,227,129,199,0,14,227,129,199,0,14,227,129,199,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,15,199,224,14,224,15,199,224,14,224,15,199,224,14,255,240,0,31,254,255,240,0,31,254,255,240,0,31,254,224,1,248,0,14,224,1,248,0,14,224,1,248,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,15,192,0,14,224,15,192,0,14,224,15,192,0,14,224,0,63,0,14,224,0,63,0,14,224,0,63,0,14,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14, + // 0x5728 在 + 40,87,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,240,0,28,0,0,3,240,0,28,0,0,3,240,0,28,0,0,28,113,255,255,255,192,28,113,255,255,255,192,28,113,255,255,255,192,224,112,0,28,0,0,224,112,0,28,0,0,224,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,127,255,255,255,248,0,127,255,255,255,248,0,127,255,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x574f 坏 + 79,87,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,31,142,0,0,112,0,31,142,0,0,112,0,31,142,0,0,112,0,31,129,192,0,112,0,31,129,192,0,112,0,31,129,192,0,112,0,227,129,192,0,112,0,227,129,192,0,112,0,227,129,192,0,127,199,3,128,56,0,127,199,3,128,56,0,127,199,3,128,56,255,128,56,3,128,56,255,128,56,3,128,56,255,128,56,3,128,56,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0x5757 块 + 87,87,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,255,255,192,28,1,192,255,255,192,28,1,192,255,255,192,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,127,192,227,128,0,0,127,192,227,128,0,0,127,192,227,128,0,255,128,7,0,112,0,255,128,7,0,112,0,255,128,7,0,112,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56, + // 0x578b 型 + 139,87,45,45,14,48,0,253,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,31,255,255,224,1,192,31,255,255,224,1,192,31,255,255,224,1,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,255,255,255,227,129,192,255,255,255,227,129,192,255,255,255,227,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,3,128,56,0,1,192,3,128,56,0,1,192,3,128,56,0,1,192,3,128,56,0,113,192,3,128,56,0,113,192,3,128,56,0,113,192,28,0,7,0,14,0,28,0,7,0,14,0,28,0,7,0,14,0,224,0,7,0,0,0,224,0,7,0,0,0,224,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x57ab 垫 + 171,87,45,45,14,48,0,253,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,31,255,199,255,254,0,31,255,199,255,254,0,31,255,199,255,254,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,15,192,28,14,0,0,15,192,28,14,0,0,15,192,28,14,0,0,126,7,252,14,0,0,126,7,252,14,0,0,126,7,252,14,0,31,142,0,28,14,56,31,142,0,28,14,56,31,142,0,28,14,56,0,14,0,227,142,56,0,14,0,227,142,56,0,14,0,227,142,56,3,142,0,224,1,248,3,142,0,224,1,248,3,142,0,224,1,248,0,112,7,0,0,56,0,112,7,0,0,56,0,112,7,0,0,56,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x586b 填 + 107,88,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,255,254,56,0,14,0,255,254,56,0,14,0,255,254,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,254,56,0,14,0,3,254,56,0,14,0,3,254,56,0,14,0,255,143,255,255,255,248,255,143,255,255,255,248,255,143,255,255,255,248,28,0,7,0,112,0,28,0,7,0,112,0,28,0,7,0,112,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x58f3 壳 + 243,88,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,0,15,255,255,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,252,0,0,0,127,248,252,0,0,0,127,248,252,0,0,0,127,248, + // 0x5907 备 + 7,89,45,48,32,48,0,250,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,126,0,3,128,0,0,126,0,3,128,0,0,126,0,3,128,0,31,129,192,28,0,0,31,129,192,28,0,0,31,129,192,28,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,127,192,31,240,0,0,127,192,31,240,0,0,127,192,31,240,0,255,128,0,0,15,248,255,128,0,0,15,248,255,128,0,0,15,248,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x590d 复 + 13,89,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,127,255,255,255,192,0,127,255,255,255,192,0,127,255,255,255,192,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,28,127,255,255,240,0,28,127,255,255,240,0,28,127,255,255,240,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,126,0,3,128,0,0,126,0,3,128,0,0,126,0,3,128,0,31,129,192,28,0,0,31,129,192,28,0,0,31,129,192,28,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,127,192,31,240,0,0,127,192,31,240,0,0,127,192,31,240,0,255,128,0,0,15,248,255,128,0,0,15,248,255,128,0,0,15,248, + // 0x5916 外 + 22,89,42,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,255,248,28,0,0,3,255,248,28,0,0,3,255,248,28,0,0,3,128,56,31,128,0,3,128,56,31,128,0,3,128,56,31,128,0,28,0,56,28,112,0,28,0,56,28,112,0,28,0,56,28,112,0,28,0,56,28,14,0,28,0,56,28,14,0,28,0,56,28,14,0,227,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0, + // 0x591a 多 + 26,89,36,48,240,48,3,250,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,15,255,255,128,0,15,255,255,128,0,15,255,255,128,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,31,240,0,224,0,31,240,0,224,0,31,240,0,224,0,0,14,7,0,0,0,14,7,0,0,0,14,7,0,0,0,1,248,224,0,0,1,248,224,0,0,1,248,224,0,0,126,7,0,0,0,126,7,0,0,0,126,7,0,0,255,128,63,255,240,255,128,63,255,240,255,128,63,255,240,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,126,0,3,128,0,126,0,3,128,0,126,0,3,128,31,129,192,28,0,31,129,192,28,0,31,129,192,28,0,0,0,56,224,0,0,0,56,224,0,0,0,56,224,0,0,0,63,0,0,0,0,63,0,0,0,0,63,0,0,0,127,192,0,0,0,127,192,0,0,0,127,192,0,0,255,128,0,0,0,255,128,0,0,0,255,128,0,0,0, + // 0x5927 大 + 39,89,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248, + // 0x5929 天 + 41,89,45,45,14,48,0,250,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248, + // 0x592a 太 + 42,89,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,56,3,128,0,0,14,56,3,128,0,0,14,56,3,128,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248, + // 0x5931 失 + 49,89,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,127,255,255,254,0,0,127,255,255,254,0,0,127,255,255,254,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,28,0,7,0,0,0,28,0,7,0,0,0,28,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,128,0,0,15,192,31,128,0,0,15,192,31,128,0,0,15,192, + // 0x5934 头 + 52,89,45,48,32,48,0,250,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,28,0,0,0,0,7,28,0,0,0,0,7,28,0,0,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,3,128,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,3,240,0,0,1,192,3,240,0,0,1,192,3,240,0,0,1,192,252,0,0,0,1,192,252,0,0,0,1,192,252,0,0,0,1,192, + // 0x597d 好 + 125,89,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,199,255,255,248,3,129,199,255,255,248,3,129,199,255,255,248,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,224,1,192,227,128,0,224,1,192,227,128,0,224,1,192,227,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x59cb 始 + 203,89,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,255,255,192,28,14,0,255,255,192,28,14,0,255,255,192,28,14,0,3,129,192,224,1,192,3,129,192,224,1,192,3,129,192,224,1,192,3,129,199,255,255,248,3,129,199,255,255,248,3,129,199,255,255,248,3,129,192,224,0,56,3,129,192,224,0,56,3,129,192,224,0,56,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,28,14,0,255,255,192,28,14,0,255,255,192,28,14,0,255,255,192,3,142,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,224,0,0,255,255,192,224,0,0,255,255,192,224,0,0,255,255,192,0,0,0,224,1,192,0,0,0,224,1,192,0,0,0,224,1,192, + // 0x5b50 子 + 80,91,45,45,14,48,0,250,31,255,255,255,254,0,31,255,255,255,254,0,31,255,255,255,254,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x5b58 存 + 88,91,45,48,32,48,0,250,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,240,0,3,128,0,3,240,0,3,128,0,3,240,0,3,128,0,28,112,0,28,0,0,28,112,0,28,0,0,28,112,0,28,0,0,224,113,255,255,255,248,224,113,255,255,255,248,224,113,255,255,255,248,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,7,28,0,0,0,112,7,28,0,0,0,112,7,28,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0, + // 0x5b89 安 + 137,91,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,255,192,3,255,255,255,255,192,3,255,255,255,255,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,126,0,28,0,0,0,126,0,28,0,0,0,126,0,28,0,0,0,1,248,28,0,0,0,1,248,28,0,0,0,1,248,28,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,56,31,128,0,0,0,56,31,128,0,0,0,56,31,128,0,0,15,192,0,112,0,0,15,192,0,112,0,0,15,192,0,112,0,31,240,0,0,14,0,31,240,0,0,14,0,31,240,0,0,14,0, + // 0x5b8c 完 + 140,91,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,31,128,0,3,255,192,31,128,0,3,255,192,31,128,0,3,255,192, + // 0x5b9a 定 + 154,91,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,3,142,7,0,0,0,3,142,7,0,0,0,3,142,7,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0, + // 0x5ba2 客 + 162,91,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,14,0,0,1,192,224,14,0,0,1,192,224,14,0,0,1,192,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,143,192,28,0,0,3,143,192,28,0,0,3,143,192,28,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,127,192,31,240,0,0,127,192,31,240,0,0,127,192,31,240,0,255,128,0,0,15,248,255,128,0,0,15,248,255,128,0,0,15,248,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x5bab 宫 + 171,91,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0, + // 0x5bf9 对 + 249,91,42,48,32,48,3,250,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,0,1,199,255,255,192,0,1,199,255,255,192,0,1,199,255,255,192,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,3,142,7,3,128,0,3,142,7,3,128,0,3,142,7,3,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,0,0,0,227,128,0,0,0,0,227,128,0,0,0,0,227,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x5c06 将 + 6,92,45,48,32,48,0,250,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,255,254,0,0,14,0,255,254,0,0,14,0,255,254,0,0,14,7,0,14,0,0,14,7,0,14,0,0,14,7,0,14,0,28,14,56,0,112,0,28,14,56,0,112,0,28,14,56,0,112,0,3,142,0,227,128,0,3,142,0,227,128,0,3,142,0,227,128,0,3,142,0,28,0,0,3,142,0,28,0,0,3,142,0,28,0,0,0,14,0,224,112,0,0,14,0,224,112,0,0,14,0,224,112,0,0,14,63,0,112,0,0,14,63,0,112,0,0,14,63,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,3,142,63,255,255,248,3,142,63,255,255,248,3,142,63,255,255,248,252,14,0,0,112,0,252,14,0,0,112,0,252,14,0,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,0,224,112,0,0,14,0,224,112,0,0,14,0,224,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,28,112,0,0,14,0,28,112,0,0,14,0,28,112,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0, + // 0x5c0f 小 + 15,92,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,0,56,3,128,7,0,0,56,3,128,7,0,0,56,28,0,7,0,0,56,28,0,7,0,0,56,28,0,7,0,0,56,224,0,7,0,0,56,224,0,7,0,0,56,224,0,7,0,0,56,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x5c31 就 + 49,92,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,255,255,248,28,14,0,255,255,248,28,14,0,255,255,248,28,14,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,31,255,199,255,255,248,31,255,199,255,255,248,31,255,199,255,255,248,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,31,255,192,28,112,0,31,255,192,28,112,0,31,255,192,28,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,28,113,192,224,112,0,28,113,192,224,112,0,28,113,192,224,112,0,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,0,112,7,0,112,56,0,112,7,0,112,56,0,112,7,0,112,56,28,112,7,0,15,248,28,112,7,0,15,248,28,112,7,0,15,248,3,128,56,0,0,0,3,128,56,0,0,0,3,128,56,0,0,0, + // 0x5c4f 屏 + 79,92,42,45,14,48,0,250,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,143,255,255,254,0,3,143,255,255,254,0,3,143,255,255,254,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,255,255,255,255,192,3,255,255,255,255,192,3,255,255,255,255,192,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0, + // 0x5de5 工 + 229,93,45,36,216,48,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x5dee 差 + 238,93,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,113,255,255,254,0,0,113,255,255,254,0,0,113,255,255,254,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,0,127,255,255,255,192,0,127,255,255,255,192,0,127,255,255,255,192, + // 0x5df2 已 + 242,93,36,42,210,48,6,253,255,255,255,252,0,255,255,255,252,0,255,255,255,252,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,255,255,255,252,0,255,255,255,252,0,255,255,255,252,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240, + // 0x5e73 平 + 115,94,45,45,14,48,0,250,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x5e76 并 + 118,94,45,48,32,48,0,250,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0, + // 0x5e8a 床 + 138,94,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,3,255,255,255,255,248,3,255,255,255,255,248,3,255,255,255,255,248,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,143,255,255,255,192,3,143,255,255,255,192,3,143,255,255,255,192,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,7,252,0,0,3,128,7,252,0,0,3,128,7,252,0,0,3,128,56,227,128,0,3,128,56,227,128,0,3,128,56,227,128,0,3,128,56,227,128,0,3,128,56,227,128,0,3,128,56,227,128,0,3,129,192,224,112,0,3,129,192,224,112,0,3,129,192,224,112,0,28,14,0,224,14,0,28,14,0,224,14,0,28,14,0,224,14,0,28,112,0,224,1,248,28,112,0,224,1,248,28,112,0,224,1,248,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0, + // 0x5e94 应 + 148,94,45,45,14,48,0,253,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,3,255,255,255,255,248,3,255,255,255,255,248,3,255,255,255,255,248,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,3,142,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,3,129,192,224,1,192,3,129,192,224,1,192,3,129,192,224,1,192,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,224,127,255,255,255,248,224,127,255,255,255,248,224,127,255,255,255,248, + // 0x5e9f 废 + 159,94,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,3,255,255,255,255,248,3,255,255,255,255,248,3,255,255,255,255,248,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,129,192,224,112,0,3,129,192,224,112,0,3,129,192,224,112,0,3,142,0,224,14,0,3,142,0,224,14,0,3,142,0,224,14,0,3,143,255,255,255,248,3,143,255,255,255,248,3,143,255,255,255,248,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,255,255,192,3,128,7,255,255,192,3,128,7,255,255,192,3,128,56,224,1,192,3,128,56,224,1,192,3,128,56,224,1,192,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,28,14,0,28,112,0,28,14,0,28,112,0,28,14,0,28,112,0,28,112,7,224,14,0,28,112,7,224,14,0,28,112,7,224,14,0,224,1,248,0,1,248,224,1,248,0,1,248,224,1,248,0,1,248, + // 0x5ea6 度 + 166,94,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,3,255,255,255,255,248,3,255,255,255,255,248,3,255,255,255,255,248,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,255,255,255,255,192,3,255,255,255,255,192,3,255,255,255,255,192,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,63,255,128,0,3,128,63,255,128,0,3,128,63,255,128,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,143,255,255,240,0,3,143,255,255,240,0,3,143,255,255,240,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,7,252,0,0,28,0,7,252,0,0,28,0,7,252,0,0,224,1,248,3,240,0,224,1,248,3,240,0,224,1,248,3,240,0,3,254,0,0,15,248,3,254,0,0,15,248,3,254,0,0,15,248, + // 0x5f00 开 + 0,95,45,45,14,48,0,250,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0, + // 0x5f03 弃 + 3,95,42,48,32,48,3,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,254,0,31,255,255,255,254,0,31,255,255,255,254,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,255,255,255,240,0,3,255,255,255,240,0,3,255,255,255,240,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,255,255,255,255,255,192,255,255,255,255,255,192,255,255,255,255,255,192,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + // 0x5f0f 式 + 15,95,45,48,32,48,0,250,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,255,248,28,0,0,3,255,248,28,0,0,3,255,248,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,15,255,0,112,56,0,15,255,0,112,56,0,15,255,0,112,56,31,254,0,0,14,56,31,254,0,0,14,56,31,254,0,0,14,56,3,128,0,0,1,248,3,128,0,0,1,248,3,128,0,0,1,248,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56, + // 0x5f15 引 + 21,95,36,48,240,48,3,250,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,248,0,112,255,255,248,0,112,255,255,248,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,31,255,248,0,112,31,255,248,0,112,31,255,248,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,255,255,248,0,112,255,255,248,0,112,255,255,248,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,113,192,0,112,0,113,192,0,112,0,113,192,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112, + // 0x5f39 弹 + 57,95,45,48,32,48,0,250,0,0,7,0,1,192,0,0,7,0,1,192,0,0,7,0,1,192,255,254,0,224,14,0,255,254,0,224,14,0,255,254,0,224,14,0,0,14,0,28,112,0,0,14,0,28,112,0,0,14,0,28,112,0,0,14,7,255,255,192,0,14,7,255,255,192,0,14,7,255,255,192,0,14,7,3,129,192,0,14,7,3,129,192,0,14,7,3,129,192,31,254,7,3,129,192,31,254,7,3,129,192,31,254,7,3,129,192,28,0,7,255,255,192,28,0,7,255,255,192,28,0,7,255,255,192,28,0,7,3,129,192,28,0,7,3,129,192,28,0,7,3,129,192,28,0,7,3,129,192,28,0,7,3,129,192,28,0,7,3,129,192,31,254,7,255,255,192,31,254,7,255,255,192,31,254,7,255,255,192,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,63,255,255,248,0,14,63,255,255,248,0,14,63,255,255,248,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + // 0x5f52 归 + 82,95,39,48,240,48,3,250,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,224,113,255,255,254,224,113,255,255,254,224,113,255,255,254,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,63,255,254,224,112,63,255,254,224,112,63,255,254,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,224,112,0,0,14,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14,3,128,0,0,14,3,128,0,0,14,3,128,0,0,14,3,129,255,255,254,3,129,255,255,254,3,129,255,255,254,28,0,0,0,14,28,0,0,0,14,28,0,0,0,14,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0, + // 0x5f84 径 + 132,95,45,48,32,48,0,250,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,63,255,254,0,0,14,63,255,254,0,0,14,63,255,254,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,14,0,31,128,0,28,14,0,31,128,0,28,14,0,31,128,0,0,14,0,224,126,0,0,14,0,224,126,0,0,14,0,224,126,0,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,3,241,248,0,0,56,3,241,248,0,0,56,3,241,248,0,0,56,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,224,112,63,255,255,192,224,112,63,255,255,192,224,112,63,255,255,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x5f85 待 + 133,95,45,48,32,48,0,250,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,63,255,255,192,3,128,63,255,255,192,3,128,63,255,255,192,28,14,0,28,0,0,28,14,0,28,0,0,28,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,3,240,0,0,112,0,3,240,0,0,112,0,3,240,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,224,113,255,255,255,248,224,113,255,255,255,248,224,113,255,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0, + // 0x5faa 循 + 170,95,45,48,32,48,0,250,0,112,0,3,255,192,0,112,0,3,255,192,0,112,0,3,255,192,0,113,255,255,128,0,0,113,255,255,128,0,0,113,255,255,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,224,113,255,255,255,248,224,113,255,255,255,248,224,113,255,255,255,248,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,3,129,199,255,255,192,3,129,199,255,255,192,3,129,199,255,255,192,31,129,199,0,1,192,31,129,199,0,1,192,31,129,199,0,1,192,227,129,199,0,1,192,227,129,199,0,1,192,227,129,199,0,1,192,3,129,199,255,255,192,3,129,199,255,255,192,3,129,199,255,255,192,3,129,199,0,1,192,3,129,199,0,1,192,3,129,199,0,1,192,3,129,199,255,255,192,3,129,199,255,255,192,3,129,199,255,255,192,3,142,7,0,1,192,3,142,7,0,1,192,3,142,7,0,1,192,3,142,7,0,1,192,3,142,7,0,1,192,3,142,7,0,1,192,3,240,7,255,255,192,3,240,7,255,255,192,3,240,7,255,255,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192, + // 0x5fae 微 + 174,95,45,48,32,48,0,250,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,113,199,28,14,0,0,113,199,28,14,0,0,113,199,28,14,0,3,129,199,28,14,0,3,129,199,28,14,0,3,129,199,28,14,0,28,1,199,28,112,0,28,1,199,28,112,0,28,1,199,28,112,0,224,113,255,252,127,248,224,113,255,252,127,248,224,113,255,252,127,248,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,31,143,255,252,113,192,31,143,255,252,113,192,31,143,255,252,113,192,227,128,0,0,113,192,227,128,0,0,113,192,227,128,0,0,113,192,3,129,255,224,113,192,3,129,255,224,113,192,3,129,255,224,113,192,3,129,192,224,113,192,3,129,192,224,113,192,3,129,192,224,113,192,3,129,192,227,142,0,3,129,192,227,142,0,3,129,192,227,142,0,3,129,192,252,14,0,3,129,192,252,14,0,3,129,192,252,14,0,3,129,192,224,113,192,3,129,192,224,113,192,3,129,192,224,113,192,3,142,0,0,113,192,3,142,0,0,113,192,3,142,0,0,113,192,3,240,0,3,128,56,3,240,0,3,128,56,3,240,0,3,128,56, + // 0x5fc3 心 + 195,95,45,42,252,48,0,253,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,0,56,3,129,192,0,0,56,3,129,192,0,0,56,28,1,192,0,0,56,28,1,192,0,0,56,28,1,192,0,0,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,0,63,255,240,0,0,0,63,255,240,0,0,0,63,255,240,0, + // 0x5ffd 忽 + 253,95,45,45,14,48,0,253,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,127,255,255,254,0,0,127,255,255,254,0,0,127,255,255,254,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,28,1,192,224,14,0,28,1,192,224,14,0,28,1,192,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,14,0,224,1,192,0,14,0,224,1,192,0,14,0,224,1,192,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,224,1,255,255,240,0,224,1,255,255,240,0,224,1,255,255,240,0, + // 0x6027 性 + 39,96,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,126,7,255,255,192,0,126,7,255,255,192,0,126,7,255,255,192,28,113,199,3,128,0,28,113,199,3,128,0,28,113,199,3,128,0,28,112,56,3,128,0,28,112,56,3,128,0,28,112,56,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x603b 总 + 59,96,45,45,14,48,0,253,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,14,0,224,1,192,0,14,0,224,1,192,0,14,0,224,1,192,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,224,1,255,255,240,0,224,1,255,255,240,0,224,1,255,255,240,0, + // 0x6062 恢 + 98,96,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,126,0,224,0,0,0,126,0,224,0,0,0,126,0,224,0,0,28,113,192,224,112,0,28,113,192,224,112,0,28,113,192,224,112,0,28,112,0,224,112,0,28,112,0,224,112,0,28,112,0,224,112,0,28,112,7,0,112,56,28,112,7,0,112,56,28,112,7,0,112,56,224,112,7,28,112,56,224,112,7,28,112,56,224,112,7,28,112,56,0,112,7,28,113,192,0,112,7,28,113,192,0,112,7,28,113,192,0,112,56,224,112,0,0,112,56,224,112,0,0,112,56,224,112,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,0,113,192,3,142,0,0,113,192,3,142,0,0,113,192,3,142,0,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,7,0,0,56,0,112,7,0,0,56,0,112,7,0,0,56, + // 0x606f 息 + 111,96,45,45,14,48,0,253,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,14,0,224,1,192,0,14,0,224,1,192,0,14,0,224,1,192,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,224,1,255,255,240,0,224,1,255,255,240,0,224,1,255,255,240,0, + // 0x611f 感 + 31,97,45,48,32,48,0,250,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,3,255,255,255,255,248,3,255,255,255,255,248,3,255,255,255,255,248,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,143,255,227,129,192,3,143,255,227,129,192,3,143,255,227,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,143,255,227,142,0,3,143,255,227,142,0,3,143,255,227,142,0,3,142,0,224,126,0,3,142,0,224,126,0,3,142,0,224,126,0,3,142,0,224,112,56,3,142,0,224,112,56,3,142,0,224,112,56,28,15,255,227,142,56,28,15,255,227,142,56,28,15,255,227,142,56,28,0,0,28,1,248,28,0,0,28,1,248,28,0,0,28,1,248,224,0,0,224,0,56,224,0,0,224,0,56,224,0,0,224,0,56,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,28,14,0,224,1,192,28,14,0,224,1,192,28,14,0,224,1,192,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,224,1,255,255,240,56,224,1,255,255,240,56,224,1,255,255,240,56, + // 0x620f 戏 + 15,98,42,48,32,48,3,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,14,0,255,255,192,28,14,0,255,255,192,28,14,0,255,255,192,28,14,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,31,255,192,0,1,192,31,255,192,0,1,192,31,255,192,28,14,63,252,0,0,28,14,63,252,0,0,28,14,63,252,0,0,3,142,0,28,14,0,3,142,0,28,14,0,3,142,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,3,142,0,28,112,0,3,142,0,28,112,0,3,142,0,28,112,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,28,1,192,31,129,192,28,1,192,31,129,192,28,1,192,31,129,192,224,0,0,224,113,192,224,0,0,224,113,192,224,0,0,224,113,192,0,0,7,0,15,192,0,0,7,0,15,192,0,0,7,0,15,192,0,0,56,0,1,192,0,0,56,0,1,192,0,0,56,0,1,192, + // 0x6210 成 + 16,98,45,48,32,48,0,250,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,255,255,255,255,248,3,255,255,255,255,248,3,255,255,255,255,248,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,142,56,3,240,56,3,142,56,3,240,56,3,142,56,3,240,56,28,1,192,28,14,56,28,1,192,28,14,56,28,1,192,28,14,56,28,0,0,224,1,248,28,0,0,224,1,248,28,0,0,224,1,248,224,0,7,0,0,56,224,0,7,0,0,56,224,0,7,0,0,56, + // 0x6237 户 + 55,98,36,48,240,48,3,250,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,3,255,255,255,240,3,255,255,255,240,3,255,255,255,240,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,3,255,255,255,240,3,255,255,255,240,3,255,255,255,240,3,128,0,0,112,3,128,0,0,112,3,128,0,0,112,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0, + // 0x6240 所 + 64,98,45,48,32,48,0,250,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,1,255,0,127,192,0,1,255,0,127,192,0,1,255,0,127,192,3,254,0,255,128,0,3,254,0,255,128,0,3,254,0,255,128,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,255,248,224,0,0,3,255,248,224,0,0,3,255,248,224,0,0,3,128,56,255,255,248,3,128,56,255,255,248,3,128,56,255,255,248,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,255,248,224,14,0,3,255,248,224,14,0,3,255,248,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,28,0,7,0,14,0,28,0,7,0,14,0,28,0,7,0,14,0,28,0,7,0,14,0,28,0,7,0,14,0,28,0,7,0,14,0,224,0,56,0,14,0,224,0,56,0,14,0,224,0,56,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0, + // 0x6247 扇 + 71,98,42,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,255,192,3,255,255,255,255,192,3,255,255,255,255,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,255,255,255,255,192,3,255,255,255,255,192,3,255,255,255,255,192,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,255,255,31,255,192,3,255,255,31,255,192,3,255,255,31,255,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,3,142,7,3,129,192,3,142,7,3,129,192,3,142,7,3,129,192,3,129,199,0,113,192,3,129,199,0,113,192,3,129,199,0,113,192,28,14,7,3,129,192,28,14,7,3,129,192,28,14,7,3,129,192,28,112,7,28,1,192,28,112,7,28,1,192,28,112,7,28,1,192,224,1,199,0,113,192,224,1,199,0,113,192,224,1,199,0,113,192,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0, + // 0x624b 手 + 75,98,45,48,32,48,0,250,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,255,254,0,0,0,0,255,254,0,0,0,0,255,254,0,3,255,255,0,0,0,3,255,255,0,0,0,3,255,255,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x6253 打 + 83,98,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,126,0,3,128,0,0,126,0,3,128,0,0,126,0,3,128,0,3,240,0,3,128,0,3,240,0,3,128,0,3,240,0,3,128,0,252,112,0,3,128,0,252,112,0,3,128,0,252,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,28,112,0,227,128,0,28,112,0,227,128,0,28,112,0,227,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0, + // 0x6267 执 + 103,98,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,255,255,199,255,254,0,255,255,199,255,254,0,255,255,199,255,254,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,113,192,28,14,0,0,113,192,28,14,0,0,113,192,28,14,0,0,126,7,28,14,0,0,126,7,28,14,0,0,126,7,28,14,0,3,240,0,252,14,0,3,240,0,252,14,0,3,240,0,252,14,0,252,112,0,28,14,0,252,112,0,28,14,0,252,112,0,28,14,0,0,112,0,227,142,0,0,112,0,227,142,0,0,112,0,227,142,0,0,112,0,227,142,56,0,112,0,227,142,56,0,112,0,227,142,56,0,112,7,0,14,56,0,112,7,0,14,56,0,112,7,0,14,56,28,112,56,0,1,248,28,112,56,0,1,248,28,112,56,0,1,248,3,129,192,0,0,56,3,129,192,0,0,56,3,129,192,0,0,56, + // 0x6279 批 + 121,98,45,48,32,48,0,250,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,56,0,112,7,0,112,56,0,112,7,0,112,56,255,255,199,0,112,56,255,255,199,0,112,56,255,255,199,0,112,56,0,112,7,0,113,192,0,112,7,0,113,192,0,112,7,0,113,192,0,112,7,252,126,0,0,112,7,252,126,0,0,112,7,252,126,0,0,113,199,0,112,0,0,113,199,0,112,0,0,113,199,0,112,0,0,126,7,0,112,0,0,126,7,0,112,0,0,126,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,252,112,7,0,112,0,252,112,7,0,112,0,252,112,7,0,112,0,0,112,7,0,112,56,0,112,7,0,112,56,0,112,7,0,112,56,0,112,7,28,112,56,0,112,7,28,112,56,0,112,7,28,112,56,0,112,7,224,112,56,0,112,7,224,112,56,0,112,7,224,112,56,28,112,7,0,15,248,28,112,7,0,15,248,28,112,7,0,15,248,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0, + // 0x6296 抖 + 150,98,45,48,32,48,0,250,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,113,192,224,112,0,0,113,192,224,112,0,0,113,192,224,112,0,0,126,0,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,3,240,0,0,127,248,3,240,0,0,127,248,3,240,0,0,127,248,252,112,63,255,240,0,252,112,63,255,240,0,252,112,63,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0, + // 0x62a5 报 + 165,98,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,255,255,199,0,113,192,255,255,199,0,113,192,255,255,199,0,113,192,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,113,199,255,255,192,0,113,199,255,255,192,0,113,199,255,255,192,0,126,7,28,1,192,0,126,7,28,1,192,0,126,7,28,1,192,3,240,7,28,1,192,3,240,7,28,1,192,3,240,7,28,1,192,252,112,7,3,142,0,252,112,7,3,142,0,252,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,28,112,7,28,1,192,28,112,7,28,1,192,28,112,7,28,1,192,3,128,7,224,0,56,3,128,7,224,0,56,3,128,7,224,0,56, + // 0x62ac 抬 + 172,98,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,255,255,199,0,1,192,255,255,199,0,1,192,255,255,199,0,1,192,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,126,7,255,255,192,0,126,7,255,255,192,0,126,7,255,255,192,3,240,7,0,1,192,3,240,7,0,1,192,3,240,7,0,1,192,252,112,7,0,1,192,252,112,7,0,1,192,252,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,28,112,7,255,255,192,28,112,7,255,255,192,28,112,7,255,255,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192, + // 0x62bd 抽 + 189,98,42,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,255,255,199,255,255,192,255,255,199,255,255,192,255,255,199,255,255,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,113,199,3,129,192,0,113,199,3,129,192,0,113,199,3,129,192,0,126,7,3,129,192,0,126,7,3,129,192,0,126,7,3,129,192,3,240,7,255,255,192,3,240,7,255,255,192,3,240,7,255,255,192,252,112,7,3,129,192,252,112,7,3,129,192,252,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,28,112,7,255,255,192,28,112,7,255,255,192,28,112,7,255,255,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192, + // 0x62d4 拔 + 212,98,45,48,32,48,0,250,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,255,254,63,255,255,248,255,254,63,255,255,248,255,254,63,255,255,248,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,113,192,224,0,0,0,113,192,224,0,0,0,113,192,224,0,0,0,126,0,255,255,192,0,126,0,255,255,192,0,126,0,255,255,192,3,240,7,28,1,192,3,240,7,28,1,192,3,240,7,28,1,192,252,112,7,28,1,192,252,112,7,28,1,192,252,112,7,28,1,192,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,28,113,192,28,1,192,28,113,192,28,1,192,28,113,192,28,1,192,3,128,7,224,0,56,3,128,7,224,0,56,3,128,7,224,0,56, + // 0x62e9 择 + 233,98,45,48,32,48,0,250,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,129,255,255,254,0,3,129,255,255,254,0,3,129,255,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,255,240,0,227,128,0,255,240,0,227,128,0,255,240,0,227,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,7,227,240,0,3,128,7,227,240,0,3,128,7,227,240,0,3,129,248,28,15,248,3,129,248,28,15,248,3,129,248,28,15,248,3,240,0,28,0,0,3,240,0,28,0,0,3,240,0,28,0,0,255,128,63,255,254,0,255,128,63,255,254,0,255,128,63,255,254,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,227,128,0,28,0,0,227,128,0,28,0,0,227,128,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + // 0x6309 按 + 9,99,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,255,254,56,0,0,56,255,254,56,0,0,56,255,254,56,0,0,56,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,126,63,255,255,248,0,126,63,255,255,248,0,126,63,255,255,248,3,240,0,224,14,0,3,240,0,224,14,0,3,240,0,224,14,0,252,112,0,224,14,0,252,112,0,224,14,0,252,112,0,224,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,0,252,112,0,0,112,0,252,112,0,0,112,0,252,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,28,112,0,224,14,0,28,112,0,224,14,0,28,112,0,224,14,0,3,128,63,0,1,192,3,128,63,0,1,192,3,128,63,0,1,192, + // 0x6321 挡 + 33,99,42,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,7,28,1,192,0,112,7,28,1,192,0,112,7,28,1,192,0,112,7,28,1,192,0,112,7,28,1,192,0,112,7,28,1,192,255,255,199,28,14,0,255,255,199,28,14,0,255,255,199,28,14,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,126,0,0,1,192,0,126,0,0,1,192,0,126,0,0,1,192,3,240,0,0,1,192,3,240,0,0,1,192,3,240,0,0,1,192,252,112,63,255,255,192,252,112,63,255,255,192,252,112,63,255,255,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,28,113,255,255,255,192,28,113,255,255,255,192,28,113,255,255,255,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192, + // 0x6324 挤 + 36,99,45,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,255,255,199,0,112,0,255,255,199,0,112,0,255,255,199,0,112,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,113,192,28,0,0,0,113,192,28,0,0,0,113,192,28,0,0,0,126,7,227,240,0,0,126,7,227,240,0,0,126,7,227,240,0,3,241,248,0,15,248,3,241,248,0,15,248,3,241,248,0,15,248,252,112,7,0,112,0,252,112,7,0,112,0,252,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,28,112,56,0,112,0,28,112,56,0,112,0,28,112,56,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0, + // 0x635f 损 + 95,99,42,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,255,255,192,255,254,0,255,255,192,255,254,0,255,255,192,255,254,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,113,199,0,1,192,0,113,199,0,1,192,0,113,199,0,1,192,0,126,7,3,129,192,0,126,7,3,129,192,0,126,7,3,129,192,3,240,7,3,129,192,3,240,7,3,129,192,3,240,7,3,129,192,252,112,7,3,129,192,252,112,7,3,129,192,252,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,28,112,0,224,1,192,28,112,0,224,1,192,28,112,0,224,1,192,3,128,63,0,1,192,3,128,63,0,1,192,3,128,63,0,1,192, + // 0x6362 换 + 98,99,45,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,255,254,56,0,112,0,255,254,56,0,112,0,255,254,56,0,112,0,0,113,199,255,255,192,0,113,199,255,255,192,0,113,199,255,255,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,126,7,3,129,192,0,126,7,3,129,192,0,126,7,3,129,192,3,240,7,3,129,192,3,240,7,3,129,192,3,240,7,3,129,192,252,112,7,3,129,192,252,112,7,3,129,192,252,112,7,3,129,192,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,28,112,7,0,1,192,28,112,7,0,1,192,28,112,7,0,1,192,3,129,248,0,0,56,3,129,248,0,0,56,3,129,248,0,0,56, + // 0x6389 掉 + 137,99,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,255,248,0,112,0,3,255,248,0,112,0,3,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,255,255,199,255,255,192,255,255,199,255,255,192,255,255,199,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,113,199,255,255,192,0,113,199,255,255,192,0,113,199,255,255,192,0,126,7,0,1,192,0,126,7,0,1,192,0,126,7,0,1,192,3,240,7,255,255,192,3,240,7,255,255,192,3,240,7,255,255,192,252,112,7,3,129,192,252,112,7,3,129,192,252,112,7,3,129,192,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + // 0x63a2 探 + 162,99,45,48,32,48,0,250,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,255,254,7,0,112,0,255,254,7,0,112,0,255,254,7,0,112,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,142,0,28,0,0,3,142,0,28,0,0,3,142,0,28,0,0,3,241,255,255,255,192,3,241,255,255,255,192,3,241,255,255,255,192,255,128,0,28,0,0,255,128,0,28,0,0,255,128,0,28,0,0,3,128,0,255,128,0,3,128,0,255,128,0,3,128,0,255,128,0,3,128,7,28,112,0,3,128,7,28,112,0,3,128,7,28,112,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,3,143,192,28,1,248,3,143,192,28,1,248,3,143,192,28,1,248,227,128,0,28,0,0,227,128,0,28,0,0,227,128,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + // 0x63a5 接 + 165,99,45,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,255,255,199,0,14,0,255,255,199,0,14,0,255,255,199,0,14,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,126,0,28,0,0,0,126,0,28,0,0,0,126,0,28,0,0,3,241,255,255,255,248,3,241,255,255,255,248,3,241,255,255,255,248,252,112,0,224,14,0,252,112,0,224,14,0,252,112,0,224,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,31,128,0,0,112,0,31,128,0,0,112,0,31,128,0,28,112,7,224,126,0,28,112,7,224,126,0,28,112,7,224,126,0,3,129,248,0,1,192,3,129,248,0,1,192,3,129,248,0,1,192, + // 0x63a7 控 + 167,99,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,255,254,56,0,0,56,255,254,56,0,0,56,255,254,56,0,0,56,0,113,192,224,113,192,0,113,192,224,113,192,0,113,192,224,113,192,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,126,56,0,1,192,0,126,56,0,1,192,0,126,56,0,1,192,3,240,0,0,0,0,3,240,0,0,0,0,3,240,0,0,0,0,252,112,7,255,255,192,252,112,7,255,255,192,252,112,7,255,255,192,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,28,113,255,255,255,248,28,113,255,255,255,248,28,113,255,255,255,248,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0, + // 0x63d0 提 + 208,99,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,255,255,199,255,255,192,255,255,199,255,255,192,255,255,199,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,113,199,255,255,192,0,113,199,255,255,192,0,113,199,255,255,192,0,126,0,0,0,0,0,126,0,0,0,0,0,126,0,0,0,0,3,240,63,255,255,248,3,240,63,255,255,248,3,240,63,255,255,248,252,112,0,3,128,0,252,112,0,3,128,0,252,112,0,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,255,192,0,112,7,3,255,192,0,112,7,3,255,192,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,28,112,56,227,128,0,28,112,56,227,128,0,28,112,56,227,128,0,3,129,192,31,255,248,3,129,192,31,255,248,3,129,192,31,255,248, + // 0x63d2 插 + 210,99,45,48,32,48,0,250,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,3,255,192,3,128,0,3,255,192,3,128,0,3,255,192,3,129,255,252,0,0,3,129,255,252,0,0,3,129,255,252,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,255,254,0,28,0,0,255,254,0,28,0,0,255,254,0,28,0,0,3,143,255,255,255,248,3,143,255,255,255,248,3,143,255,255,255,248,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,142,7,28,0,0,3,142,7,28,0,0,3,142,7,28,0,0,3,241,248,28,127,192,3,241,248,28,127,192,3,241,248,28,127,192,255,129,192,28,1,192,255,129,192,28,1,192,255,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,255,28,127,192,3,129,255,28,127,192,3,129,255,28,127,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,227,129,255,255,255,192,227,129,255,255,255,192,227,129,255,255,255,192,28,1,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192, + // 0x6536 收 + 54,101,42,48,32,48,3,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,7,0,0,0,224,112,7,0,0,0,224,112,7,0,0,0,224,112,7,255,255,192,224,112,7,255,255,192,224,112,7,255,255,192,224,112,56,0,112,0,224,112,56,0,112,0,224,112,56,0,112,0,224,113,199,0,112,0,224,113,199,0,112,0,224,113,199,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,227,240,0,227,128,0,227,240,0,227,128,0,227,240,0,227,128,0,252,112,0,227,128,0,252,112,0,227,128,0,252,112,0,227,128,0,224,112,0,28,0,0,224,112,0,28,0,0,224,112,0,28,0,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,113,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192, + // 0x653e 放 + 62,101,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,255,248,224,0,0,255,255,248,224,0,0,255,255,248,224,0,0,3,128,0,255,255,248,3,128,0,255,255,248,3,128,0,255,255,248,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,248,224,14,0,3,255,248,224,14,0,3,255,248,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,113,192,224,14,0,28,113,192,224,14,0,28,113,192,224,14,0,224,14,7,0,1,192,224,14,7,0,1,192,224,14,7,0,1,192,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + // 0x6570 数 + 112,101,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,28,14,7,3,128,0,28,14,7,3,128,0,28,14,7,3,128,0,3,142,56,3,128,0,3,142,56,3,128,0,3,142,56,3,128,0,0,14,0,3,255,248,0,14,0,3,255,248,0,14,0,3,255,248,255,255,255,28,1,192,255,255,255,28,1,192,255,255,255,28,1,192,3,142,56,28,1,192,3,142,56,28,1,192,3,142,56,28,1,192,28,14,7,28,1,192,28,14,7,28,1,192,28,14,7,28,1,192,224,14,0,227,129,192,224,14,0,227,129,192,224,14,0,227,129,192,0,112,0,3,142,0,0,112,0,3,142,0,0,112,0,3,142,0,255,255,248,3,142,0,255,255,248,3,142,0,255,255,248,3,142,0,3,128,56,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,31,129,192,3,142,0,31,129,192,3,142,0,31,129,192,3,142,0,0,126,0,3,142,0,0,126,0,3,142,0,0,126,0,3,142,0,3,241,192,28,1,192,3,241,192,28,1,192,3,241,192,28,1,192,252,0,56,224,0,56,252,0,56,224,0,56,252,0,56,224,0,56, + // 0x6572 敲 + 114,101,45,48,32,48,0,250,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,255,255,255,0,112,0,255,255,255,0,112,0,255,255,255,0,112,0,0,0,0,0,127,248,0,0,0,0,127,248,0,0,0,0,127,248,31,255,248,0,112,0,31,255,248,0,112,0,31,255,248,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,31,255,248,255,255,192,31,255,248,255,255,192,31,255,248,255,255,192,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,255,255,255,28,1,192,255,255,255,28,1,192,255,255,255,28,1,192,224,0,7,28,1,192,224,0,7,28,1,192,224,0,7,28,1,192,227,255,199,3,142,0,227,255,199,3,142,0,227,255,199,3,142,0,227,129,199,3,142,0,227,129,199,3,142,0,227,129,199,3,142,0,227,255,199,0,112,0,227,255,199,0,112,0,227,255,199,0,112,0,224,0,7,3,142,0,224,0,7,3,142,0,224,0,7,3,142,0,224,1,199,28,1,192,224,1,199,28,1,192,224,1,199,28,1,192,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56, + // 0x6574 整 + 116,101,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,255,255,255,227,255,248,255,255,255,227,255,248,255,255,255,227,255,248,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,31,255,255,227,129,192,31,255,255,227,129,192,31,255,255,227,129,192,28,14,7,3,129,192,28,14,7,3,129,192,28,14,7,3,129,192,31,255,255,3,142,0,31,255,255,3,142,0,31,255,255,3,142,0,3,142,56,0,112,0,3,142,56,0,112,0,3,142,56,0,112,0,28,14,7,3,142,0,28,14,7,3,142,0,28,14,7,3,142,0,224,14,0,28,1,248,224,14,0,28,1,248,224,14,0,28,1,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x6599 料 + 153,101,45,48,32,48,0,250,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,28,14,56,28,14,0,28,14,56,28,14,0,28,14,56,28,14,0,3,142,56,28,14,0,3,142,56,28,14,0,3,142,56,28,14,0,3,143,192,0,14,0,3,143,192,0,14,0,3,143,192,0,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,255,255,248,28,14,0,255,255,248,28,14,0,255,255,248,28,14,0,0,126,0,28,14,0,0,126,0,28,14,0,0,126,0,28,14,0,0,127,192,0,14,0,0,127,192,0,14,0,0,127,192,0,14,0,3,142,56,0,15,248,3,142,56,0,15,248,3,142,56,0,15,248,3,142,56,255,254,0,3,142,56,255,254,0,3,142,56,255,254,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + // 0x659c 斜 + 156,101,45,48,32,48,0,250,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,113,192,3,142,0,0,113,192,3,142,0,0,113,192,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,28,0,7,0,14,0,28,0,7,0,14,0,28,0,7,0,14,0,227,255,248,28,14,0,227,255,248,28,14,0,227,255,248,28,14,0,0,14,0,3,142,0,0,14,0,3,142,0,0,14,0,3,142,0,0,14,0,3,142,0,0,14,0,3,142,0,0,14,0,3,142,0,31,255,255,0,15,248,31,255,255,0,15,248,31,255,255,0,15,248,0,14,0,31,254,0,0,14,0,31,254,0,0,14,0,31,254,0,3,142,56,0,14,0,3,142,56,0,14,0,3,142,56,0,14,0,3,142,7,0,14,0,3,142,7,0,14,0,3,142,7,0,14,0,28,14,7,0,14,0,28,14,7,0,14,0,28,14,7,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,3,142,0,0,14,0,3,142,0,0,14,0,3,142,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0, + // 0x65ad 断 + 173,101,42,48,32,48,3,250,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,227,142,56,255,240,0,227,142,56,255,240,0,227,142,56,255,240,0,224,127,192,224,0,0,224,127,192,224,0,0,224,127,192,224,0,0,224,14,0,224,0,0,224,14,0,224,0,0,224,14,0,224,0,0,255,255,248,224,0,0,255,255,248,224,0,0,255,255,248,224,0,0,224,14,0,255,255,192,224,14,0,255,255,192,224,14,0,255,255,192,224,127,192,224,112,0,224,127,192,224,112,0,224,127,192,224,112,0,227,142,56,224,112,0,227,142,56,224,112,0,227,142,56,224,112,0,252,14,56,224,112,0,252,14,56,224,112,0,252,14,56,224,112,0,224,14,0,224,112,0,224,14,0,224,112,0,224,14,0,224,112,0,224,14,0,224,112,0,224,14,0,224,112,0,224,14,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,255,255,255,0,112,0,255,255,255,0,112,0,255,255,255,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0, + // 0x65b0 新 + 176,101,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,31,255,255,31,254,0,31,255,255,31,254,0,31,255,255,31,254,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,128,56,28,0,0,3,128,56,28,0,0,3,128,56,28,0,0,0,113,192,28,0,0,0,113,192,28,0,0,0,113,192,28,0,0,255,255,255,31,255,248,255,255,255,31,255,248,255,255,255,31,255,248,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,31,255,255,28,14,0,31,255,255,28,14,0,31,255,255,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,3,142,56,28,14,0,3,142,56,28,14,0,3,142,56,28,14,0,28,14,7,28,14,0,28,14,7,28,14,0,28,14,7,28,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,3,142,0,224,14,0,3,142,0,224,14,0,3,142,0,224,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0, + // 0x65b9 方 + 185,101,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,255,255,240,0,0,1,255,255,240,0,0,1,255,255,240,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + // 0x65e0 无 + 224,101,42,45,14,48,0,250,3,255,255,255,240,0,3,255,255,255,240,0,3,255,255,255,240,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,192,28,0,0,31,255,192,28,0,0,31,255,192,28,0,0,31,255,192,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0, + // 0x65f6 时 + 246,101,42,48,32,48,3,250,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,63,255,255,192,224,14,63,255,255,192,224,14,63,255,255,192,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,224,14,7,0,112,0,224,14,7,0,112,0,224,14,7,0,112,0,224,14,0,224,112,0,224,14,0,224,112,0,224,14,0,224,112,0,224,14,0,224,112,0,224,14,0,224,112,0,224,14,0,224,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0x660e 明 + 14,102,39,45,225,48,3,250,0,0,7,255,254,0,0,7,255,254,0,0,7,255,254,255,254,7,0,14,255,254,7,0,14,255,254,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,255,254,224,14,7,255,254,224,14,7,255,254,255,254,7,0,14,255,254,7,0,14,255,254,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,255,254,224,14,7,255,254,224,14,7,255,254,255,254,7,0,14,255,254,7,0,14,255,254,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,1,192,3,142,0,1,192,3,142,0,1,192,3,142,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112, + // 0x662f 是 + 47,102,45,48,32,48,0,250,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,3,142,7,0,0,0,3,142,7,0,0,0,3,142,7,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,224,0,63,255,255,248,224,0,63,255,255,248,224,0,63,255,255,248, + // 0x6682 暂 + 130,102,45,48,32,48,0,250,0,112,0,0,15,192,0,112,0,0,15,192,0,112,0,0,15,192,255,255,248,255,240,0,255,255,248,255,240,0,255,255,248,255,240,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,28,14,0,224,0,0,28,14,0,224,0,0,28,14,0,224,0,0,31,255,248,255,255,248,31,255,248,255,255,248,31,255,248,255,255,248,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,15,248,224,14,0,0,15,248,224,14,0,0,15,248,224,14,0,255,254,7,0,14,0,255,254,7,0,14,0,255,254,7,0,14,0,28,14,56,0,14,0,28,14,56,0,14,0,28,14,56,0,14,0,0,127,255,255,254,0,0,127,255,255,254,0,0,127,255,255,254,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0, + // 0x66ab 暫 + 171,102,42,48,32,48,3,250,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,255,255,248,255,240,0,255,255,248,255,240,0,255,255,248,255,240,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,255,255,248,224,0,0,255,255,248,224,0,0,255,255,248,224,0,0,224,112,56,255,255,192,224,112,56,255,255,192,224,112,56,255,255,192,255,255,248,224,112,0,255,255,248,224,112,0,255,255,248,224,112,0,224,112,56,224,112,0,224,112,56,224,112,0,224,112,56,224,112,0,255,255,248,224,112,0,255,255,248,224,112,0,255,255,248,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,255,255,248,224,112,0,255,255,248,224,112,0,255,255,248,224,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,3,255,255,255,128,0,3,255,255,255,128,0,3,255,255,255,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,255,255,255,128,0,3,255,255,255,128,0,3,255,255,255,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,255,255,255,128,0,3,255,255,255,128,0,3,255,255,255,128,0, + // 0x66f4 更 + 244,102,45,45,14,48,0,250,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,14,56,0,0,0,0,14,56,0,0,0,0,14,56,0,0,0,0,1,248,0,0,0,0,1,248,0,0,0,0,1,248,0,0,0,0,126,7,252,0,0,0,126,7,252,0,0,0,126,7,252,0,0,255,128,0,3,255,248,255,128,0,3,255,248,255,128,0,3,255,248, + // 0x6700 最 + 0,103,45,48,32,48,0,250,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,3,128,56,0,0,0,3,128,56,0,0,0,3,128,56,0,0,0,3,255,248,255,254,0,3,255,248,255,254,0,3,255,248,255,254,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,255,248,224,112,0,3,255,248,224,112,0,3,255,248,224,112,0,3,128,56,28,112,0,3,128,56,28,112,0,3,128,56,28,112,0,3,143,255,3,128,0,3,143,255,3,128,0,3,143,255,3,128,0,255,240,56,28,112,0,255,240,56,28,112,0,255,240,56,28,112,0,28,0,56,224,14,0,28,0,56,224,14,0,28,0,56,224,14,0,0,0,63,0,1,248,0,0,63,0,1,248,0,0,63,0,1,248, + // 0x6709 有 + 9,103,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,3,143,255,255,240,0,3,143,255,255,240,0,3,143,255,255,240,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,28,112,0,0,14,0,28,112,0,0,14,0,28,112,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0, + // 0x671f 期 + 31,103,42,48,32,48,0,250,3,128,56,0,0,0,3,128,56,0,0,0,3,128,56,0,0,0,3,128,56,31,255,192,3,128,56,31,255,192,3,128,56,31,255,192,31,255,255,28,1,192,31,255,255,28,1,192,31,255,255,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,255,248,31,255,192,3,255,248,31,255,192,3,255,248,31,255,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,128,56,31,255,192,3,128,56,31,255,192,3,128,56,31,255,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,255,255,255,28,1,192,255,255,255,28,1,192,255,255,255,28,1,192,0,1,192,224,1,192,0,1,192,224,1,192,0,1,192,224,1,192,3,128,56,224,1,192,3,128,56,224,1,192,3,128,56,224,1,192,28,0,7,0,113,192,28,0,7,0,113,192,28,0,7,0,113,192,224,0,56,0,14,0,224,0,56,0,14,0,224,0,56,0,14,0, + // 0x673a 机 + 58,103,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,255,240,0,0,112,7,255,240,0,0,112,7,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,255,255,199,0,112,0,255,255,199,0,112,0,255,255,199,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,3,254,7,0,112,0,3,254,7,0,112,0,3,254,7,0,112,0,28,113,199,0,112,0,28,113,199,0,112,0,28,113,199,0,112,0,28,113,199,0,112,0,28,113,199,0,112,0,28,113,199,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,0,112,7,0,112,56,0,112,7,0,112,56,0,112,7,0,112,56,0,112,7,0,112,56,0,112,7,0,112,56,0,112,7,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,15,248,0,112,56,0,15,248,0,112,56,0,15,248,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0, + // 0x6740 杀 + 64,103,45,48,32,48,0,250,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,126,0,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,0,1,248,31,128,0,0,1,248,31,128,0,0,1,248,31,128,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,1,248,31,128,0,0,1,248,31,128,0,0,1,248,31,128,0,0,126,0,0,126,0,0,126,0,0,126,0,0,126,0,0,126,0,31,128,7,0,1,192,31,128,7,0,1,192,31,128,7,0,1,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,28,1,199,0,1,192,28,1,199,0,1,192,28,1,199,0,1,192,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x675f 束 + 95,103,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,63,224,14,0,3,128,63,224,14,0,3,128,63,224,14,0,0,1,199,28,0,0,0,1,199,28,0,0,0,1,199,28,0,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,3,240,7,0,126,0,3,240,7,0,126,0,3,240,7,0,126,0,252,0,7,0,1,248,252,0,7,0,1,248,252,0,7,0,1,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x6761 条 + 97,103,45,48,32,48,0,250,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,126,0,3,128,0,0,126,0,3,128,0,0,126,0,3,128,0,31,129,192,28,0,0,31,129,192,28,0,0,31,129,192,28,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,127,199,31,240,0,0,127,199,31,240,0,0,127,199,31,240,0,255,128,7,0,15,248,255,128,7,0,15,248,255,128,7,0,15,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,28,1,199,0,1,192,28,1,199,0,1,192,28,1,199,0,1,192,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x6765 来 + 101,103,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,63,224,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,1,199,28,0,0,0,1,199,28,0,0,0,1,199,28,0,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,3,240,7,0,126,0,3,240,7,0,126,0,3,240,7,0,126,0,252,0,7,0,1,248,252,0,7,0,1,248,252,0,7,0,1,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x677f 板 + 127,103,45,48,32,48,0,250,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,127,192,0,112,0,0,127,192,0,112,0,0,127,192,0,112,7,255,128,0,0,112,7,255,128,0,0,112,7,255,128,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,255,255,199,0,0,0,255,255,199,0,0,0,255,255,199,0,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,3,240,7,28,1,192,3,240,7,28,1,192,3,240,7,28,1,192,3,254,7,28,1,192,3,254,7,28,1,192,3,254,7,28,1,192,28,113,199,28,1,192,28,113,199,28,1,192,28,113,199,28,1,192,28,113,199,3,142,0,28,113,199,3,142,0,28,113,199,3,142,0,224,112,7,3,142,0,224,112,7,3,142,0,224,112,7,3,142,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,113,192,224,0,56,0,113,192,224,0,56,0,113,192,224,0,56, + // 0x6797 林 + 151,103,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,255,255,199,255,255,248,255,255,199,255,255,248,255,255,199,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,240,0,31,240,0,3,240,0,31,240,0,3,240,0,31,240,0,3,254,0,31,240,0,3,254,0,31,240,0,3,254,0,31,240,0,28,113,192,227,142,0,28,113,192,227,142,0,28,113,192,227,142,0,28,112,0,227,142,0,28,112,0,227,142,0,28,112,0,227,142,0,224,112,7,3,129,192,224,112,7,3,129,192,224,112,7,3,129,192,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0, + // 0x67f1 柱 + 241,103,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,240,0,3,128,0,3,240,0,3,128,0,3,240,0,3,128,0,3,254,0,3,128,0,3,254,0,3,128,0,3,254,0,3,128,0,28,113,199,255,255,192,28,113,199,255,255,192,28,113,199,255,255,192,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x6821 校 + 33,104,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,7,255,255,248,0,112,7,255,255,248,0,112,7,255,255,248,255,255,192,0,0,0,255,255,192,0,0,0,255,255,192,0,0,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,3,240,7,0,1,192,3,240,7,0,1,192,3,240,7,0,1,192,3,254,56,0,0,56,3,254,56,0,0,56,3,254,56,0,0,56,28,113,192,224,14,0,28,113,192,224,14,0,28,113,192,224,14,0,28,112,0,224,14,0,28,112,0,224,14,0,28,112,0,224,14,0,224,112,0,28,112,0,224,112,0,28,112,0,224,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,63,0,1,248,0,112,63,0,1,248,0,112,63,0,1,248, + // 0x683c 格 + 60,104,45,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,255,254,63,0,112,0,255,254,63,0,112,0,255,254,63,0,112,0,0,113,192,227,128,0,0,113,192,227,128,0,0,113,192,227,128,0,3,240,0,28,0,0,3,240,0,28,0,0,3,240,0,28,0,0,3,254,0,227,128,0,3,254,0,227,128,0,3,254,0,227,128,0,28,113,199,0,126,0,28,113,199,0,126,0,28,113,199,0,126,0,28,112,56,0,1,248,28,112,56,0,1,248,28,112,56,0,1,248,224,113,199,255,254,0,224,113,199,255,254,0,224,113,199,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0, + // 0x68af 梯 + 175,104,45,48,32,48,0,250,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,255,255,192,3,129,192,255,255,192,3,129,192,255,255,192,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,3,240,7,255,255,192,3,240,7,255,255,192,3,240,7,255,255,192,3,254,7,3,128,0,3,254,7,3,128,0,3,254,7,3,128,0,28,113,199,3,128,0,28,113,199,3,128,0,28,113,199,3,128,0,28,112,7,255,255,248,28,112,7,255,255,248,28,112,7,255,255,248,224,112,0,31,128,56,224,112,0,31,128,56,224,112,0,31,128,56,0,112,0,227,128,56,0,112,0,227,128,56,0,112,0,227,128,56,0,112,7,3,142,56,0,112,7,3,142,56,0,112,7,3,142,56,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0, + // 0x68c0 检 + 192,104,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,255,255,199,0,112,0,255,255,199,0,112,0,255,255,199,0,112,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,3,241,199,255,241,248,3,241,199,255,241,248,3,241,199,255,241,248,3,254,0,0,0,0,3,254,0,0,0,0,3,254,0,0,0,0,28,113,192,224,14,0,28,113,192,224,14,0,28,113,192,224,14,0,28,112,0,28,14,0,28,112,0,28,14,0,28,112,0,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x69fd 槽 + 253,105,45,48,32,48,0,250,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,255,254,63,255,255,192,255,254,63,255,255,192,255,254,63,255,255,192,0,112,56,224,113,192,0,112,56,224,113,192,0,112,56,224,113,192,3,240,63,255,255,192,3,240,63,255,255,192,3,240,63,255,255,192,3,254,56,224,113,192,3,254,56,224,113,192,3,254,56,224,113,192,28,113,255,255,255,192,28,113,255,255,255,192,28,113,255,255,255,192,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,224,112,7,255,254,0,224,112,7,255,254,0,224,112,7,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0, + // 0x6a21 模 + 33,106,45,48,32,48,0,250,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,255,255,192,0,0,0,255,255,192,0,0,0,255,255,192,0,0,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,3,240,56,0,14,0,3,240,56,0,14,0,3,240,56,0,14,0,3,254,63,255,254,0,3,254,63,255,254,0,3,254,63,255,254,0,28,113,248,0,14,0,28,113,248,0,14,0,28,113,248,0,14,0,28,112,63,255,254,0,28,112,63,255,254,0,28,112,63,255,254,0,224,112,0,28,0,0,224,112,0,28,0,0,224,112,0,28,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,113,192,0,1,248,0,113,192,0,1,248,0,113,192,0,1,248, + // 0x6a59 橙 + 89,106,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,113,255,227,129,192,0,113,255,227,129,192,0,113,255,227,129,192,0,112,0,227,142,0,0,112,0,227,142,0,0,112,0,227,142,0,0,112,56,224,112,56,0,112,56,224,112,56,0,112,56,224,112,56,255,254,7,0,113,192,255,254,7,0,113,192,255,254,7,0,113,192,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,3,241,199,255,241,192,3,241,199,255,241,192,3,241,199,255,241,192,3,254,0,0,0,56,3,254,0,0,0,56,3,254,0,0,0,56,28,113,255,255,254,0,28,113,255,255,254,0,28,113,255,255,254,0,28,112,56,0,14,0,28,112,56,0,14,0,28,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,255,248,0,127,255,255,255,248,0,127,255,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x6b62 止 + 98,107,45,45,14,48,0,253,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x6b63 正 + 99,107,45,42,252,48,0,253,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x6b65 步 + 101,107,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,3,128,7,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,28,0,0,252,0,0,28,0,0,252,0,0,28,0,0,252,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,255,128,0,0,0,0,255,128,0,0,0,0,255,128,0,0,0,0, + // 0x6bd4 比 + 212,107,39,45,225,48,6,253,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,112,224,0,56,0,112,224,0,56,0,112,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,255,254,56,224,0,255,254,56,224,0,255,254,56,224,0,224,0,63,0,0,224,0,63,0,0,224,0,63,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,126,56,0,14,224,126,56,0,14,224,126,56,0,14,255,128,56,0,14,255,128,56,0,14,255,128,56,0,14,224,0,7,255,254,224,0,7,255,254,224,0,7,255,254, + // 0x6ca1 没 + 161,108,45,45,14,48,0,250,3,128,7,255,240,0,3,128,7,255,240,0,3,128,7,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,224,0,7,0,112,0,224,0,7,0,112,0,224,0,7,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,113,192,0,15,248,28,113,192,0,15,248,28,113,192,0,15,248,0,126,0,0,0,0,0,126,0,0,0,0,0,126,0,0,0,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,255,128,7,0,14,0,255,128,7,0,14,0,255,128,7,0,14,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,7,227,240,0,3,128,7,227,240,0,3,128,7,227,240,0,0,15,248,0,15,248,0,15,248,0,15,248,0,15,248,0,15,248, + // 0x6ce2 波 + 226,108,45,48,32,48,0,250,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,224,0,56,3,128,56,224,0,56,3,128,56,224,0,56,3,128,56,28,0,56,3,129,192,28,0,56,3,129,192,28,0,56,3,129,192,28,14,56,3,128,0,28,14,56,3,128,0,28,14,56,3,128,0,0,14,63,255,255,192,0,14,63,255,255,192,0,14,63,255,255,192,0,112,56,224,1,192,0,112,56,224,1,192,0,112,56,224,1,192,0,112,56,224,14,0,0,112,56,224,14,0,0,112,56,224,14,0,255,128,56,28,14,0,255,128,56,28,14,0,255,128,56,28,14,0,3,128,56,28,112,0,3,128,56,28,112,0,3,128,56,28,112,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,0,14,7,0,1,248,0,14,7,0,1,248,0,14,7,0,1,248, + // 0x6ce8 注 + 232,108,45,45,14,48,0,253,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,255,128,0,28,0,0,255,128,0,28,0,0,255,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,143,255,255,255,248,3,143,255,255,255,248,3,143,255,255,255,248, + // 0x6d17 洗 + 23,109,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,128,56,28,0,0,3,128,56,28,0,0,3,128,56,28,0,0,0,112,56,28,0,0,0,112,56,28,0,0,0,112,56,28,0,0,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,224,1,192,28,0,0,224,1,192,28,0,0,224,1,192,28,0,0,28,14,0,28,0,0,28,14,0,28,0,0,28,14,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,255,128,7,3,128,0,255,128,7,3,128,0,255,128,7,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,129,192,0,127,248,3,129,192,0,127,248,3,129,192,0,127,248,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0, + // 0x6d3b 活 + 59,109,45,48,32,48,0,250,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,3,128,0,31,254,0,3,128,0,31,254,0,3,128,0,31,254,0,0,112,63,252,0,0,0,112,63,252,0,0,0,112,63,252,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,255,128,56,0,14,0,255,128,56,0,14,0,255,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0, + // 0x6d41 流 + 65,109,45,48,32,48,0,250,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,224,0,7,0,112,0,224,0,7,0,112,0,224,0,7,0,112,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,1,255,255,255,192,28,1,255,255,255,192,28,1,255,255,255,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,255,128,56,28,14,0,255,128,56,28,14,0,255,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,56,3,128,56,28,14,56,3,128,56,28,14,56,3,129,192,28,14,56,3,129,192,28,14,56,3,129,192,28,14,56,0,14,0,28,1,248,0,14,0,28,1,248,0,14,0,28,1,248, + // 0x6d4b 测 + 75,109,42,48,32,48,0,250,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,3,129,255,252,1,192,3,129,255,252,1,192,3,129,255,252,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,113,192,0,113,192,28,113,192,0,113,192,28,113,192,224,1,199,28,113,192,224,1,199,28,113,192,224,1,199,28,113,192,28,1,199,28,113,192,28,1,199,28,113,192,28,1,199,28,113,192,28,1,199,28,113,192,28,1,199,28,113,192,28,1,199,28,113,192,0,113,199,28,113,192,0,113,199,28,113,192,0,113,199,28,113,192,0,113,199,28,113,192,0,113,199,28,113,192,0,113,199,28,113,192,3,129,199,28,113,192,3,129,199,28,113,192,3,129,199,28,113,192,255,129,199,28,113,192,255,129,199,28,113,192,255,129,199,28,113,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,56,224,1,192,3,128,56,224,1,192,3,128,56,224,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,129,192,0,113,192,3,129,192,0,113,192,3,129,192,0,113,192,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + // 0x6d88 消 + 136,109,39,48,240,48,0,250,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,3,128,56,28,14,3,128,56,28,14,3,128,56,28,14,0,112,7,28,14,0,112,7,28,14,0,112,7,28,14,0,112,7,28,112,0,112,7,28,112,0,112,7,28,112,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,28,0,63,255,254,28,0,63,255,254,28,0,63,255,254,28,14,56,0,14,28,14,56,0,14,28,14,56,0,14,0,14,56,0,14,0,14,56,0,14,0,14,56,0,14,0,112,63,255,254,0,112,63,255,254,0,112,63,255,254,0,112,56,0,14,0,112,56,0,14,0,112,56,0,14,255,128,56,0,14,255,128,56,0,14,255,128,56,0,14,3,128,63,255,254,3,128,63,255,254,3,128,63,255,254,3,128,56,0,14,3,128,56,0,14,3,128,56,0,14,3,128,56,0,14,3,128,56,0,14,3,128,56,0,14,3,128,56,3,142,3,128,56,3,142,3,128,56,3,142,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112, + // 0x6de1 淡 + 225,109,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,113,192,28,14,0,0,113,192,28,14,0,0,113,192,28,14,0,224,0,0,227,128,0,224,0,0,227,128,0,224,0,0,227,128,0,28,0,7,0,112,0,28,0,7,0,112,0,28,0,7,0,112,0,28,1,248,0,14,0,28,1,248,0,14,0,28,1,248,0,14,0,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,255,128,56,28,14,0,255,128,56,28,14,0,255,128,56,28,14,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,0,15,192,0,1,248,0,15,192,0,1,248,0,15,192,0,1,248, + // 0x6df7 混 + 247,109,45,45,14,48,0,250,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,0,113,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192,224,1,255,255,255,192,224,1,255,255,255,192,224,1,255,255,255,192,28,1,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,255,129,192,3,128,56,255,129,192,3,128,56,255,129,192,3,128,56,3,129,255,227,143,192,3,129,255,227,143,192,3,129,255,227,143,192,3,129,192,3,240,0,3,129,192,3,240,0,3,129,192,3,240,0,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,199,227,128,56,3,129,199,227,128,56,3,129,199,227,128,56,0,1,248,0,127,248,0,1,248,0,127,248,0,1,248,0,127,248, + // 0x6e05 清 + 5,110,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,224,0,63,255,254,0,224,0,63,255,254,0,224,0,63,255,254,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,15,255,255,255,248,28,15,255,255,255,248,28,15,255,255,255,248,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,255,128,56,0,14,0,255,128,56,0,14,0,255,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0, + // 0x6e29 温 + 41,110,45,42,252,48,0,253,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,224,0,63,255,254,0,224,0,63,255,254,0,224,0,63,255,254,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,255,129,192,227,129,192,255,129,192,227,129,192,255,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,143,255,255,255,248,3,143,255,255,255,248,3,143,255,255,255,248, + // 0x6e38 游 + 56,110,45,48,32,48,0,250,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,113,255,227,255,248,0,113,255,227,255,248,0,113,255,227,255,248,224,0,56,3,128,0,224,0,56,3,128,0,224,0,56,3,128,0,28,0,56,28,0,0,28,0,56,28,0,0,28,0,56,28,0,0,28,0,63,227,255,192,28,0,63,227,255,192,28,0,63,227,255,192,0,112,56,224,1,192,0,112,56,224,1,192,0,112,56,224,1,192,0,112,56,224,14,0,0,112,56,224,14,0,0,112,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,255,128,56,227,255,248,255,128,56,227,255,248,255,128,56,227,255,248,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,142,7,227,142,0,3,142,7,227,142,0,3,142,7,227,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x6e90 源 + 144,110,45,45,14,48,0,250,3,129,255,255,255,248,3,129,255,255,255,248,3,129,255,255,255,248,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,28,0,0,0,113,192,28,0,0,0,113,192,28,0,0,224,1,199,255,255,192,224,1,199,255,255,192,224,1,199,255,255,192,28,1,199,0,1,192,28,1,199,0,1,192,28,1,199,0,1,192,28,1,199,255,255,192,28,1,199,255,255,192,28,1,199,255,255,192,0,113,199,0,1,192,0,113,199,0,1,192,0,113,199,0,1,192,0,113,199,255,255,192,0,113,199,255,255,192,0,113,199,255,255,192,3,129,199,3,129,192,3,129,199,3,129,192,3,129,199,3,129,192,255,129,192,3,128,0,255,129,192,3,128,0,255,129,192,3,128,0,3,129,192,227,142,0,3,129,192,227,142,0,3,129,192,227,142,0,3,142,7,3,129,192,3,142,7,3,129,192,3,142,7,3,129,192,3,142,56,3,128,56,3,142,56,3,128,56,3,142,56,3,128,56,3,240,0,227,128,0,3,240,0,227,128,0,3,240,0,227,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x6ea2 溢 + 162,110,45,45,14,48,0,253,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,224,1,255,255,255,192,224,1,255,255,255,192,224,1,255,255,255,192,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,7,0,112,0,28,0,7,0,112,0,28,0,7,0,112,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,113,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,255,128,56,227,142,0,255,128,56,227,142,0,255,128,56,227,142,0,3,128,56,227,142,0,3,128,56,227,142,0,3,128,56,227,142,0,3,128,56,227,142,0,3,128,56,227,142,0,3,128,56,227,142,0,3,128,56,227,142,0,3,128,56,227,142,0,3,128,56,227,142,0,3,143,255,255,255,248,3,143,255,255,255,248,3,143,255,255,255,248, + // 0x6ed1 滑 + 209,110,45,45,14,48,0,250,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,63,252,14,0,0,112,63,252,14,0,0,112,63,252,14,0,224,0,56,28,14,0,224,0,56,28,14,0,224,0,56,28,14,0,28,15,255,255,255,248,28,15,255,255,255,248,28,15,255,255,255,248,28,14,0,0,0,56,28,14,0,0,0,56,28,14,0,0,0,56,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,255,128,56,0,14,0,255,128,56,0,14,0,255,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0, + // 0x6f0f 漏 + 15,111,45,45,14,48,0,250,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248,3,129,192,0,0,56,3,129,192,0,0,56,3,129,192,0,0,56,3,129,192,0,0,56,3,129,192,0,0,56,3,129,192,0,0,56,0,1,255,255,255,248,0,1,255,255,255,248,0,1,255,255,255,248,224,1,192,0,0,0,224,1,192,0,0,0,224,1,192,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,3,129,248,3,128,56,3,129,248,3,128,56,3,129,248,3,128,56,255,129,248,227,142,56,255,129,248,227,142,56,255,129,248,227,142,56,3,142,56,3,128,56,3,142,56,3,128,56,3,142,56,3,128,56,3,142,56,227,142,56,3,142,56,227,142,56,3,142,56,227,142,56,3,240,56,3,128,56,3,240,56,3,128,56,3,240,56,3,128,56,3,128,56,3,142,56,3,128,56,3,142,56,3,128,56,3,142,56,0,0,56,0,1,192,0,0,56,0,1,192,0,0,56,0,1,192, + // 0x6fc0 激 + 192,111,45,48,32,48,0,250,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,3,143,255,224,112,0,3,143,255,224,112,0,3,143,255,224,112,0,3,142,0,224,112,0,3,142,0,224,112,0,3,142,0,224,112,0,0,15,255,227,255,248,0,15,255,227,255,248,0,15,255,227,255,248,224,14,0,227,129,192,224,14,0,227,129,192,224,14,0,227,129,192,28,15,255,252,113,192,28,15,255,252,113,192,28,15,255,252,113,192,28,113,192,0,113,192,28,113,192,0,113,192,28,113,192,0,113,192,0,112,56,0,113,192,0,112,56,0,113,192,0,112,56,0,113,192,3,143,255,252,113,192,3,143,255,252,113,192,3,143,255,252,113,192,255,129,192,0,113,192,255,129,192,0,113,192,255,129,192,0,113,192,3,129,255,224,14,0,3,129,255,224,14,0,3,129,255,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,142,0,224,113,192,3,142,0,224,113,192,3,142,0,224,113,192,3,142,56,224,113,192,3,142,56,224,113,192,3,142,56,224,113,192,0,112,7,3,128,56,0,112,7,3,128,56,0,112,7,3,128,56, + // 0x706f 灯 + 111,112,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,28,126,0,3,128,0,28,126,0,3,128,0,28,126,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,0,0,227,128,0,28,0,0,227,128,0,28,0,0,227,128,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0, + // 0x70b9 点 + 185,112,42,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,63,255,255,192,0,0,63,255,255,192,0,0,63,255,255,192,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,3,255,255,255,240,0,3,255,255,255,240,0,3,255,255,255,240,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,255,255,255,240,0,3,255,255,255,240,0,3,255,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,28,0,56,28,1,192,28,0,56,28,1,192,28,0,56,28,1,192,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192, + // 0x70ed 热 + 237,112,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,255,255,199,255,254,0,255,255,199,255,254,0,255,255,199,255,254,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,127,192,252,14,0,0,127,192,252,14,0,0,127,192,252,14,0,3,240,0,28,14,0,3,240,0,28,14,0,3,240,0,28,14,0,252,112,0,227,142,56,252,112,0,227,142,56,252,112,0,227,142,56,0,112,0,227,142,56,0,112,0,227,142,56,0,112,0,227,142,56,28,112,7,0,1,248,28,112,7,0,1,248,28,112,7,0,1,248,3,128,56,0,0,56,3,128,56,0,0,56,3,128,56,0,0,56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,14,0,224,14,0,28,14,0,224,14,0,28,14,0,224,14,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,28,1,192, + // 0x7247 片 + 71,114,39,48,240,48,3,250,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,252,0,3,255,255,252,0,3,255,255,252,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0, + // 0x7269 物 + 105,114,42,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,28,112,0,224,0,0,28,112,0,224,0,0,28,112,0,224,0,0,28,112,0,255,255,192,28,112,0,255,255,192,28,112,0,255,255,192,31,255,199,28,113,192,31,255,199,28,113,192,31,255,199,28,113,192,28,112,56,28,113,192,28,112,56,28,113,192,28,112,56,28,113,192,224,112,0,28,113,192,224,112,0,28,113,192,224,112,0,28,113,192,0,112,0,224,113,192,0,112,0,224,113,192,0,112,0,224,113,192,0,127,192,224,113,192,0,127,192,224,113,192,0,127,192,224,113,192,255,240,7,3,129,192,255,240,7,3,129,192,255,240,7,3,129,192,28,112,56,3,129,192,28,112,56,3,129,192,28,112,56,3,129,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x7279 特 + 121,114,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,7,255,255,192,28,112,7,255,255,192,28,112,7,255,255,192,31,255,192,3,128,0,31,255,192,3,128,0,31,255,192,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,224,112,63,255,255,248,224,112,63,255,255,248,224,112,63,255,255,248,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,127,192,0,14,0,0,127,192,0,14,0,0,127,192,0,14,0,255,240,7,255,255,248,255,240,7,255,255,248,255,240,7,255,255,248,28,112,0,0,14,0,28,112,0,0,14,0,28,112,0,0,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,3,142,0,0,112,0,3,142,0,0,112,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x7387 率 + 135,115,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,143,255,224,14,0,3,143,255,224,14,0,3,143,255,224,14,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,28,15,255,255,129,192,28,15,255,255,129,192,28,15,255,255,129,192,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x73af 环 + 175,115,45,42,252,48,0,250,255,255,199,255,255,248,255,255,199,255,255,248,255,255,199,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,31,255,192,31,142,0,31,255,192,31,142,0,31,255,192,31,142,0,0,112,0,227,129,192,0,112,0,227,129,192,0,112,0,227,129,192,0,112,7,3,128,56,0,112,7,3,128,56,0,112,7,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,127,192,3,128,0,0,127,192,3,128,0,0,127,192,3,128,0,255,128,0,3,128,0,255,128,0,3,128,0,255,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0x7528 用 + 40,117,39,45,225,48,0,250,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,28,0,7,0,14,28,0,7,0,14,28,0,7,0,14,28,0,7,3,142,28,0,7,3,142,28,0,7,3,142,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x7535 电 + 53,117,39,48,240,48,6,250,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,224,1,192,3,142,224,1,192,3,142,224,1,192,3,142,0,1,192,0,14,0,1,192,0,14,0,1,192,0,14,0,1,192,0,14,0,1,192,0,14,0,1,192,0,14,0,0,63,255,254,0,0,63,255,254,0,0,63,255,254, + // 0x7565 略 + 101,117,45,48,32,48,0,250,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,255,254,0,255,254,0,255,254,0,255,254,0,255,254,0,255,254,0,227,142,7,0,14,0,227,142,7,0,14,0,227,142,7,0,14,0,227,142,63,0,112,0,227,142,63,0,112,0,227,142,63,0,112,0,227,143,192,227,128,0,227,143,192,227,128,0,227,143,192,227,128,0,255,254,0,28,0,0,255,254,0,28,0,0,255,254,0,28,0,0,227,142,0,227,128,0,227,142,0,227,128,0,227,142,0,227,128,0,227,142,7,0,126,0,227,142,7,0,126,0,227,142,7,0,126,0,227,142,56,0,1,248,227,142,56,0,1,248,227,142,56,0,1,248,227,143,199,255,254,0,227,143,199,255,254,0,227,143,199,255,254,0,255,254,7,0,14,0,255,254,7,0,14,0,255,254,7,0,14,0,224,14,7,0,14,0,224,14,7,0,14,0,224,14,7,0,14,0,0,0,7,0,14,0,0,0,7,0,14,0,0,0,7,0,14,0,0,0,7,255,254,0,0,0,7,255,254,0,0,0,7,255,254,0,0,0,7,0,14,0,0,0,7,0,14,0,0,0,7,0,14,0, + // 0x767d 白 + 125,118,33,48,240,48,6,250,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128, + // 0x7684 的 + 132,118,39,48,240,48,3,250,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,28,0,0,224,0,28,0,0,224,0,28,0,0,224,0,255,255,192,255,254,255,255,192,255,254,255,255,192,255,254,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,1,248,0,14,224,1,248,0,14,224,1,248,0,14,224,1,192,224,14,224,1,192,224,14,224,1,192,224,14,255,255,192,28,14,255,255,192,28,14,255,255,192,28,14,224,1,192,28,14,224,1,192,28,14,224,1,192,28,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,255,255,192,0,14,255,255,192,0,14,255,255,192,0,14,224,1,192,28,112,224,1,192,28,112,224,1,192,28,112,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128, + // 0x76d1 监 + 209,118,45,45,14,48,0,253,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,3,129,192,28,0,0,3,129,192,28,0,0,3,129,192,28,0,0,3,129,192,31,255,192,3,129,192,31,255,192,3,129,192,31,255,192,3,129,192,28,0,0,3,129,192,28,0,0,3,129,192,28,0,0,3,129,192,224,112,0,3,129,192,224,112,0,3,129,192,224,112,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,199,0,14,0,3,129,199,0,14,0,3,129,199,0,14,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x76f4 直 + 244,118,45,45,14,48,0,253,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x7701 省 + 1,119,42,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,28,0,0,252,0,0,28,0,0,252,0,0,28,0,0,252,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,15,192,0,0,0,0,15,192,0,0,0,0,15,192,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,252,112,0,0,14,0,252,112,0,0,14,0,252,112,0,0,14,0,0,127,255,255,254,0,0,127,255,255,254,0,0,127,255,255,254,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,127,255,255,254,0,0,127,255,255,254,0,0,127,255,255,254,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,127,255,255,254,0,0,127,255,255,254,0,0,127,255,255,254,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0, + // 0x7720 眠 + 32,119,42,45,14,48,3,250,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,255,254,56,0,14,0,255,254,56,0,14,0,255,254,56,0,14,0,224,14,56,0,14,0,224,14,56,0,14,0,224,14,56,0,14,0,224,14,56,0,14,0,224,14,56,0,14,0,224,14,56,0,14,0,255,254,63,255,254,0,255,254,63,255,254,0,255,254,63,255,254,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,255,254,63,255,255,192,255,254,63,255,255,192,255,254,63,255,255,192,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,3,128,0,224,14,56,3,128,0,224,14,56,3,128,0,255,254,56,3,129,192,255,254,56,3,129,192,255,254,56,3,129,192,224,14,56,224,113,192,224,14,56,224,113,192,224,14,56,224,113,192,0,0,63,0,15,192,0,0,63,0,15,192,0,0,63,0,15,192,0,0,56,0,1,192,0,0,56,0,1,192,0,0,56,0,1,192, + // 0x786e 确 + 110,120,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,255,192,31,255,192,255,255,192,31,255,192,255,255,192,31,255,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,3,128,56,255,255,248,3,128,56,255,255,248,3,128,56,255,255,248,3,255,192,224,112,56,3,255,192,224,112,56,3,255,192,224,112,56,31,129,192,224,112,56,31,129,192,224,112,56,31,129,192,224,112,56,31,129,192,255,255,248,31,129,192,255,255,248,31,129,192,255,255,248,227,129,192,224,112,56,227,129,192,224,112,56,227,129,192,224,112,56,3,129,192,224,112,56,3,129,192,224,112,56,3,129,192,224,112,56,3,129,192,255,255,248,3,129,192,255,255,248,3,129,192,255,255,248,3,255,192,224,112,56,3,255,192,224,112,56,3,255,192,224,112,56,3,129,199,0,112,56,3,129,199,0,112,56,3,129,199,0,112,56,3,128,7,0,14,56,3,128,7,0,14,56,3,128,7,0,14,56,0,0,56,0,1,192,0,0,56,0,1,192,0,0,56,0,1,192, + // 0x79bb 离 + 187,121,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,113,192,28,112,0,0,113,192,28,112,0,0,113,192,28,112,0,0,112,63,224,112,0,0,112,63,224,112,0,0,112,63,224,112,0,0,113,192,28,112,0,0,113,192,28,112,0,0,113,192,28,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,28,0,56,0,1,192,28,0,56,0,1,192,28,0,56,0,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,15,255,255,129,192,28,15,255,255,129,192,28,15,255,255,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,0,0,0,113,192,28,0,0,0,113,192,28,0,0,0,113,192,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0, + // 0x79fb 移 + 251,121,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,127,192,3,128,0,0,127,192,3,128,0,0,127,192,3,128,0,255,240,0,31,255,192,255,240,0,31,255,192,255,240,0,31,255,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,7,28,14,0,0,112,7,28,14,0,0,112,7,28,14,0,255,255,192,3,240,0,255,255,192,3,240,0,255,255,192,3,240,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,240,0,28,14,0,3,240,0,28,14,0,3,240,0,28,14,0,3,254,7,224,112,0,3,254,7,224,112,0,3,254,7,224,112,0,28,113,192,3,255,248,28,113,192,3,255,248,28,113,192,3,255,248,28,113,192,28,0,56,28,113,192,28,0,56,28,113,192,28,0,56,224,112,7,227,129,192,224,112,7,227,129,192,224,112,7,227,129,192,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,128,0,0,112,0,31,128,0,0,112,0,31,128,0,0,112,7,224,0,0,0,112,7,224,0,0,0,112,7,224,0,0, + // 0x7a7a 空 + 122,122,45,45,14,48,0,253,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192, + // 0x7aef 端 + 239,122,45,48,32,48,0,250,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,255,255,199,3,129,192,255,255,199,3,129,192,255,255,199,3,129,192,0,0,7,255,255,192,0,0,7,255,255,192,0,0,7,255,255,192,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,224,14,63,255,255,248,224,14,63,255,255,248,224,14,63,255,255,248,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,28,14,0,28,0,0,28,14,0,28,0,0,28,14,0,28,0,0,28,14,7,255,255,192,28,14,7,255,255,192,28,14,7,255,255,192,28,112,7,28,113,192,28,112,7,28,113,192,28,112,7,28,113,192,28,112,7,28,113,192,28,112,7,28,113,192,28,112,7,28,113,192,0,127,199,28,113,192,0,127,199,28,113,192,0,127,199,28,113,192,255,128,7,28,113,192,255,128,7,28,113,192,255,128,7,28,113,192,28,0,7,28,113,192,28,0,7,28,113,192,28,0,7,28,113,192,0,0,7,0,15,192,0,0,7,0,15,192,0,0,7,0,15,192, + // 0x7b2c 第 + 44,123,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,255,255,31,255,248,3,255,255,31,255,248,3,255,255,31,255,248,28,14,0,224,112,0,28,14,0,224,112,0,28,14,0,224,112,0,224,1,199,0,14,0,224,1,199,0,14,0,224,1,199,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,14,0,0,0,7,0,14,0,0,0,7,0,14,0,0,0,7,0,14,0,0,0,7,0,14,0,0,0,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,3,255,255,255,255,192,3,255,255,255,255,192,3,255,255,255,255,192,0,0,63,0,1,192,0,0,63,0,1,192,0,0,63,0,1,192,0,1,199,0,1,192,0,1,199,0,1,192,0,1,199,0,1,192,0,126,7,3,142,0,0,126,7,3,142,0,0,126,7,3,142,0,255,128,7,0,112,0,255,128,7,0,112,0,255,128,7,0,112,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x7b49 等 + 73,123,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,255,255,31,255,248,3,255,255,31,255,248,3,255,255,31,255,248,28,14,0,224,112,0,28,14,0,224,112,0,28,14,0,224,112,0,224,1,199,0,14,0,224,1,199,0,14,0,224,1,199,0,14,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,227,128,0,0,1,192,227,128,0,0,1,192,227,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x7bb1 箱 + 177,123,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,255,255,31,255,248,3,255,255,31,255,248,3,255,255,31,255,248,3,142,0,224,112,0,3,142,0,224,112,0,3,142,0,224,112,0,28,1,199,0,14,0,28,1,199,0,14,0,28,1,199,0,14,0,224,14,0,0,0,0,224,14,0,0,0,0,224,14,0,0,0,0,0,14,0,255,255,192,0,14,0,255,255,192,0,14,0,255,255,192,31,255,248,224,1,192,31,255,248,224,1,192,31,255,248,224,1,192,0,14,0,224,1,192,0,14,0,224,1,192,0,14,0,224,1,192,0,126,0,255,255,192,0,126,0,255,255,192,0,126,0,255,255,192,0,127,192,224,1,192,0,127,192,224,1,192,0,127,192,224,1,192,3,142,56,224,1,192,3,142,56,224,1,192,3,142,56,224,1,192,3,142,56,255,255,192,3,142,56,255,255,192,3,142,56,255,255,192,28,14,0,224,1,192,28,14,0,224,1,192,28,14,0,224,1,192,224,14,0,224,1,192,224,14,0,224,1,192,224,14,0,224,1,192,0,14,0,255,255,192,0,14,0,255,255,192,0,14,0,255,255,192, + // 0x7c7b 类 + 123,124,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,1,199,28,0,0,0,1,199,28,0,0,0,1,199,28,0,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,31,128,0,0,14,0,31,128,0,0,14,0,31,128,0,0,14,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,3,240,0,0,126,0,3,240,0,0,126,0,3,240,0,0,126,0,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248, + // 0x7d22 索 + 34,125,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,56,0,0,56,28,0,56,0,0,56,28,0,56,0,0,56,224,1,192,3,129,192,224,1,192,3,129,192,224,1,192,3,129,192,0,127,255,252,0,0,0,127,255,252,0,0,0,127,255,252,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,1,248,0,112,0,0,1,248,0,112,0,0,1,248,0,112,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,14,0,0,0,7,0,14,0,0,0,7,0,14,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,3,129,199,0,112,0,3,129,199,0,112,0,3,129,199,0,112,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0, + // 0x7d2b 紫 + 43,125,42,48,32,48,0,250,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,3,142,0,224,14,0,3,142,0,224,14,0,3,142,0,224,14,0,3,143,248,255,240,0,3,143,248,255,240,0,3,143,248,255,240,0,3,142,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,3,143,248,224,1,192,3,143,248,224,1,192,3,143,248,224,1,192,255,240,0,31,255,192,255,240,0,31,255,192,255,240,0,31,255,192,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,127,255,252,0,0,0,127,255,252,0,0,0,127,255,252,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,1,248,0,112,0,0,1,248,0,112,0,0,1,248,0,112,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,14,0,0,0,7,0,14,0,0,0,7,0,14,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,3,129,199,0,112,0,3,129,199,0,112,0,3,129,199,0,112,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0, + // 0x7ea2 红 + 162,126,45,45,14,48,0,253,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,128,7,255,255,192,3,128,7,255,255,192,3,128,7,255,255,192,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,255,254,0,3,128,0,255,254,0,3,128,0,255,254,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,127,192,3,128,0,0,127,192,3,128,0,0,127,192,3,128,0,255,128,0,3,128,0,255,128,0,3,128,0,255,128,0,3,128,0,28,0,63,255,255,248,28,0,63,255,255,248,28,0,63,255,255,248, + // 0x7ea7 级 + 167,126,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,28,14,0,224,14,0,28,14,0,224,14,0,28,14,0,224,14,0,255,254,0,224,112,0,255,254,0,224,112,0,255,254,0,224,112,0,0,112,0,224,127,192,0,112,0,224,127,192,0,112,0,224,127,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,192,28,0,7,28,1,192,28,0,7,28,1,192,28,0,7,28,1,192,255,254,7,28,1,192,255,254,7,28,1,192,255,254,7,28,1,192,28,0,7,3,142,0,28,0,7,3,142,0,28,0,7,3,142,0,0,0,7,3,142,0,0,0,7,3,142,0,0,0,7,3,142,0,0,126,56,0,112,0,0,126,56,0,112,0,0,126,56,0,112,0,255,128,56,3,142,0,255,128,56,3,142,0,255,128,56,3,142,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,0,0,7,224,0,56,0,0,7,224,0,56,0,0,7,224,0,56, + // 0x7ebf 线 + 191,126,45,48,32,48,0,250,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,129,192,28,127,192,3,129,192,28,127,192,3,129,192,28,127,192,28,1,199,255,128,0,28,1,199,255,128,0,28,1,199,255,128,0,255,254,0,28,0,0,255,254,0,28,0,0,255,254,0,28,0,0,0,112,0,28,127,248,0,112,0,28,127,248,0,112,0,28,127,248,3,128,63,255,128,0,3,128,63,255,128,0,3,128,63,255,128,0,28,0,0,28,1,192,28,0,0,28,1,192,28,0,0,28,1,192,255,255,192,28,14,0,255,255,192,28,14,0,255,255,192,28,14,0,28,0,0,3,240,0,28,0,0,3,240,0,28,0,0,3,240,0,0,0,0,3,128,56,0,0,0,3,128,56,0,0,0,3,128,56,0,127,192,28,112,56,0,127,192,28,112,56,0,127,192,28,112,56,255,128,0,224,14,56,255,128,0,224,14,56,255,128,0,224,14,56,28,0,63,0,1,248,28,0,63,0,1,248,28,0,63,0,1,248,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56, + // 0x7ec6 细 + 198,126,42,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,128,7,255,255,192,3,128,7,255,255,192,3,128,7,255,255,192,3,129,199,3,129,192,3,129,199,3,129,192,3,129,199,3,129,192,28,1,199,3,129,192,28,1,199,3,129,192,28,1,199,3,129,192,255,254,7,3,129,192,255,254,7,3,129,192,255,254,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,28,0,7,255,255,192,28,0,7,255,255,192,28,0,7,255,255,192,255,255,199,3,129,192,255,255,199,3,129,192,255,255,199,3,129,192,28,0,7,3,129,192,28,0,7,3,129,192,28,0,7,3,129,192,0,0,7,3,129,192,0,0,7,3,129,192,0,0,7,3,129,192,0,127,199,3,129,192,0,127,199,3,129,192,0,127,199,3,129,192,255,128,7,3,129,192,255,128,7,3,129,192,255,128,7,3,129,192,28,0,7,255,255,192,28,0,7,255,255,192,28,0,7,255,255,192,0,0,7,0,1,192,0,0,7,0,1,192,0,0,7,0,1,192, + // 0x7ec8 终 + 200,126,45,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,3,128,0,255,254,0,3,128,0,255,254,0,3,128,0,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,28,14,63,0,112,0,28,14,63,0,112,0,28,14,63,0,112,0,255,255,192,227,128,0,255,255,192,227,128,0,255,255,192,227,128,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,28,0,63,0,126,0,28,0,63,0,126,0,28,0,63,0,126,0,255,255,192,0,1,248,255,255,192,0,1,248,255,255,192,0,1,248,28,0,0,252,0,0,28,0,0,252,0,0,28,0,0,252,0,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,126,0,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,255,128,7,224,0,0,255,128,7,224,0,0,255,128,7,224,0,0,28,0,0,31,128,0,28,0,0,31,128,0,28,0,0,31,128,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0, + // 0x7ed3 结 + 211,126,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,129,255,255,255,248,3,129,255,255,255,248,3,129,255,255,255,248,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,255,254,0,3,128,0,255,254,0,3,128,0,255,254,0,3,128,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,255,255,199,255,255,192,255,255,199,255,255,192,255,255,199,255,255,192,28,0,7,0,1,192,28,0,7,0,1,192,28,0,7,0,1,192,0,0,7,0,1,192,0,0,7,0,1,192,0,0,7,0,1,192,0,127,199,0,1,192,0,127,199,0,1,192,0,127,199,0,1,192,255,128,7,0,1,192,255,128,7,0,1,192,255,128,7,0,1,192,28,0,7,255,255,192,28,0,7,255,255,192,28,0,7,255,255,192,0,0,7,0,1,192,0,0,7,0,1,192,0,0,7,0,1,192, + // 0x7ed9 给 + 217,126,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,28,14,56,0,14,0,28,14,56,0,14,0,28,14,56,0,14,0,255,241,192,0,1,248,255,241,192,0,1,248,255,241,192,0,1,248,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,255,254,63,255,254,0,255,254,63,255,254,0,255,254,63,255,254,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,126,56,0,14,0,0,126,56,0,14,0,0,126,56,0,14,0,255,128,56,0,14,0,255,128,56,0,14,0,255,128,56,0,14,0,28,0,63,255,254,0,28,0,63,255,254,0,28,0,63,255,254,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0, + // 0x7edf 统 + 223,126,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,63,255,255,248,3,128,63,255,255,248,3,128,63,255,255,248,28,14,0,28,0,0,28,14,0,28,0,0,28,14,0,28,0,0,255,254,0,224,14,0,255,254,0,224,14,0,255,254,0,224,14,0,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,3,128,63,255,255,248,3,128,63,255,255,248,3,128,63,255,255,248,28,0,0,224,112,56,28,0,0,224,112,56,28,0,0,224,112,56,255,254,0,224,112,0,255,254,0,224,112,0,255,254,0,224,112,0,28,0,0,224,112,0,28,0,0,224,112,0,28,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,0,126,7,0,112,56,0,126,7,0,112,56,0,126,7,0,112,56,255,128,7,0,112,56,255,128,7,0,112,56,255,128,7,0,112,56,28,0,56,0,15,248,28,0,56,0,15,248,28,0,56,0,15,248,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0, + // 0x7ee7 继 + 231,126,45,45,14,48,0,253,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,63,3,129,192,3,128,63,3,129,192,3,128,63,3,129,192,28,14,56,227,142,0,28,14,56,227,142,0,28,14,56,227,142,0,255,240,56,3,128,0,255,240,56,3,128,0,255,240,56,3,128,0,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,28,0,56,31,240,0,28,0,56,31,240,0,28,0,56,31,240,0,255,254,56,227,142,0,255,254,56,227,142,0,255,254,56,227,142,0,28,0,63,3,129,192,28,0,63,3,129,192,28,0,63,3,129,192,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,3,128,0,0,126,56,3,128,0,0,126,56,3,128,0,0,126,56,3,128,0,255,128,56,3,128,0,255,128,56,3,128,0,255,128,56,3,128,0,28,0,63,255,255,248,28,0,63,255,255,248,28,0,63,255,255,248, + // 0x7eea 绪 + 234,126,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,3,128,63,255,241,192,3,128,63,255,241,192,3,128,63,255,241,192,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,28,14,0,28,112,0,28,14,0,28,112,0,28,14,0,28,112,0,255,241,255,255,255,248,255,241,255,255,255,248,255,241,255,255,255,248,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,28,0,7,255,254,0,28,0,7,255,254,0,28,0,7,255,254,0,255,254,63,0,14,0,255,254,63,0,14,0,255,254,63,0,14,0,28,1,199,0,14,0,28,1,199,0,14,0,28,1,199,0,14,0,0,0,7,255,254,0,0,0,7,255,254,0,0,0,7,255,254,0,0,126,7,0,14,0,0,126,7,0,14,0,0,126,7,0,14,0,255,128,7,0,14,0,255,128,7,0,14,0,255,128,7,0,14,0,28,0,7,255,254,0,28,0,7,255,254,0,28,0,7,255,254,0,0,0,7,0,14,0,0,0,7,0,14,0,0,0,7,0,14,0, + // 0x7eed 续 + 237,126,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,7,255,255,192,3,128,7,255,255,192,3,128,7,255,255,192,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,255,254,63,255,255,248,255,254,63,255,255,248,255,254,63,255,255,248,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,3,128,0,224,113,192,3,128,0,224,113,192,3,128,0,224,113,192,28,0,0,28,112,0,28,0,0,28,112,0,28,0,0,28,112,0,255,255,199,0,112,0,255,255,199,0,112,0,255,255,199,0,112,0,28,0,0,224,112,0,28,0,0,224,112,0,28,0,0,224,112,0,0,0,63,255,255,248,0,0,63,255,255,248,0,0,63,255,255,248,0,127,192,3,142,0,0,127,192,3,142,0,0,127,192,3,142,0,255,128,0,28,1,192,255,128,0,28,1,192,255,128,0,28,1,192,28,0,0,224,0,56,28,0,0,224,0,56,28,0,0,224,0,56,0,0,63,0,0,56,0,0,63,0,0,56,0,0,63,0,0,56, + // 0x7eff 绿 + 255,126,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,28,14,7,255,254,0,28,14,7,255,254,0,28,14,7,255,254,0,255,254,0,0,14,0,255,254,0,0,14,0,255,254,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,3,128,63,255,255,248,3,128,63,255,255,248,3,128,63,255,255,248,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,255,254,56,3,128,56,255,254,56,3,128,56,255,254,56,3,128,56,28,0,7,31,241,192,28,0,7,31,241,192,28,0,7,31,241,192,0,0,0,227,142,0,0,0,0,227,142,0,0,0,0,227,142,0,0,126,7,3,129,192,0,126,7,3,129,192,0,126,7,3,129,192,255,128,56,3,128,56,255,128,56,3,128,56,255,128,56,3,128,56,28,0,0,227,128,0,28,0,0,227,128,0,28,0,0,227,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x7f16 编 + 22,127,42,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,63,255,255,192,3,128,63,255,255,192,3,128,63,255,255,192,3,128,56,0,1,192,3,128,56,0,1,192,3,128,56,0,1,192,28,14,56,0,1,192,28,14,56,0,1,192,28,14,56,0,1,192,255,254,63,255,255,192,255,254,63,255,255,192,255,254,63,255,255,192,0,112,56,0,0,0,0,112,56,0,0,0,0,112,56,0,0,0,3,128,56,0,0,0,3,128,56,0,0,0,3,128,56,0,0,0,28,0,63,255,255,192,28,0,63,255,255,192,28,0,63,255,255,192,255,254,63,28,113,192,255,254,63,28,113,192,255,254,63,28,113,192,28,0,63,28,113,192,28,0,63,28,113,192,28,0,63,28,113,192,0,1,199,255,255,192,0,1,199,255,255,192,0,1,199,255,255,192,0,127,199,28,113,192,0,127,199,28,113,192,0,127,199,28,113,192,255,129,199,28,113,192,255,129,199,28,113,192,255,129,199,28,113,192,28,14,7,28,1,192,28,14,7,28,1,192,28,14,7,28,1,192,0,0,7,0,15,192,0,0,7,0,15,192,0,0,7,0,15,192, + // 0x7f3a 缺 + 58,127,45,48,32,48,0,250,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,255,192,3,128,0,3,255,192,3,128,0,3,255,192,3,128,0,28,112,7,255,255,192,28,112,7,255,255,192,28,112,7,255,255,192,224,112,0,3,129,192,224,112,0,3,129,192,224,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,255,255,248,3,129,192,255,255,248,3,129,192,255,255,248,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,28,112,0,28,113,192,28,112,0,28,113,192,28,112,0,28,113,192,28,112,0,28,113,192,28,112,0,28,113,192,28,112,0,28,127,192,224,14,0,28,127,192,224,14,0,28,127,192,224,14,0,31,129,192,224,14,0,31,129,192,224,14,0,31,129,192,224,14,0,0,1,199,0,1,192,0,1,199,0,1,192,0,1,199,0,1,192,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + // 0x7f51 网 + 81,127,39,45,225,48,3,250,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,1,192,3,142,224,1,192,3,142,224,1,192,3,142,227,129,199,3,142,227,129,199,3,142,227,129,199,3,142,224,113,192,227,142,224,113,192,227,142,224,113,192,227,142,224,14,0,28,14,224,14,0,28,14,224,14,0,28,14,224,14,0,28,14,224,14,0,28,14,224,14,0,28,14,224,113,192,227,142,224,113,192,227,142,224,113,192,227,142,224,113,192,227,142,224,113,192,227,142,224,113,192,227,142,227,129,199,3,142,227,129,199,3,142,227,129,199,3,142,252,0,56,0,14,252,0,56,0,14,252,0,56,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x7f6e 置 + 110,127,45,48,32,48,0,250,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x7f72 署 + 114,127,45,45,14,48,0,250,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,127,255,252,112,0,0,127,255,252,112,0,0,127,255,252,112,0,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,3,128,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,63,0,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,3,254,0,0,112,0,3,254,0,0,112,0,3,254,0,0,112,0,252,15,255,255,240,0,252,15,255,255,240,0,252,15,255,255,240,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0, + // 0x8005 者 + 5,128,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,3,255,255,252,112,0,3,255,255,252,112,0,3,255,255,252,112,0,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,126,0,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,3,142,0,0,112,0,3,142,0,0,112,0,3,142,0,0,112,0,28,15,255,255,240,0,28,15,255,255,240,0,28,15,255,255,240,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0, + // 0x806a 聪 + 106,128,45,48,32,48,0,250,0,0,0,224,14,0,0,0,0,224,14,0,0,0,0,224,14,0,255,255,192,28,14,0,255,255,192,28,14,0,255,255,192,28,14,0,28,14,0,28,112,0,28,14,0,28,112,0,28,14,0,28,112,0,28,14,7,255,255,192,28,14,7,255,255,192,28,14,7,255,255,192,31,254,7,0,1,192,31,254,7,0,1,192,31,254,7,0,1,192,28,14,7,0,1,192,28,14,7,0,1,192,28,14,7,0,1,192,28,14,7,0,1,192,28,14,7,0,1,192,28,14,7,0,1,192,31,254,7,255,255,192,31,254,7,255,255,192,31,254,7,255,255,192,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,15,192,28,113,192,28,15,192,28,113,192,28,15,192,28,113,192,31,254,7,28,0,56,31,254,7,28,0,56,31,254,7,28,0,56,252,14,7,28,0,56,252,14,7,28,0,56,252,14,7,28,0,56,0,14,7,28,14,56,0,14,7,28,14,56,0,14,7,28,14,56,0,14,56,3,254,0,0,14,56,3,254,0,0,14,56,3,254,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0, + // 0x80fd 能 + 253,128,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,28,0,56,28,14,0,28,0,56,28,14,0,28,0,56,28,14,0,255,255,255,31,240,0,255,255,255,31,240,0,255,255,255,31,240,0,0,0,7,28,0,0,0,0,7,28,0,0,0,0,7,28,0,0,0,0,0,28,0,56,0,0,0,28,0,56,0,0,0,28,0,56,31,255,248,28,0,56,31,255,248,28,0,56,31,255,248,28,0,56,28,0,56,3,255,248,28,0,56,3,255,248,28,0,56,3,255,248,28,0,56,0,0,0,28,0,56,0,0,0,28,0,56,0,0,0,31,255,248,28,1,192,31,255,248,28,1,192,31,255,248,28,1,192,28,0,56,28,14,0,28,0,56,28,14,0,28,0,56,28,14,0,28,0,56,31,240,0,28,0,56,31,240,0,28,0,56,31,240,0,31,255,248,28,0,0,31,255,248,28,0,0,31,255,248,28,0,0,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,14,56,28,0,56,28,14,56,28,0,56,28,14,56,28,0,56,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,255,248, + // 0x81ea 自 + 234,129,27,48,192,48,9,250,0,14,0,0,0,14,0,0,0,14,0,0,0,112,0,0,0,112,0,0,0,112,0,0,3,128,0,0,3,128,0,0,3,128,0,0,255,255,255,224,255,255,255,224,255,255,255,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,224,0,0,224,224,0,0,224,224,0,0,224, + // 0x81f3 至 + 243,129,45,42,252,48,0,253,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x83dc 菜 + 220,131,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,255,254,0,0,0,0,255,254,0,0,0,0,255,254,0,3,255,255,0,0,0,3,255,255,0,0,0,3,255,255,0,0,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,1,199,28,0,0,0,1,199,28,0,0,0,1,199,28,0,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,3,240,7,0,126,0,3,240,7,0,126,0,3,240,7,0,126,0,252,0,7,0,1,248,252,0,7,0,1,248,252,0,7,0,1,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x84dd 蓝 + 221,132,45,45,14,48,0,253,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,255,255,192,3,129,192,255,255,192,3,129,192,255,255,192,3,129,192,227,128,0,3,129,192,227,128,0,3,129,192,227,128,0,3,129,199,0,112,0,3,129,199,0,112,0,3,129,199,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x86c7 蛇 + 199,134,45,45,14,48,0,253,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,255,199,255,255,248,31,255,199,255,255,248,31,255,199,255,255,248,28,113,199,0,0,56,28,113,199,0,0,56,28,113,199,0,0,56,28,113,248,0,1,192,28,113,248,0,1,192,28,113,248,0,1,192,28,113,192,224,0,0,28,113,192,224,0,0,28,113,192,224,0,0,28,113,192,224,14,0,28,113,192,224,14,0,28,113,192,224,14,0,31,255,192,224,112,0,31,255,192,224,112,0,31,255,192,224,112,0,28,112,0,227,128,0,28,112,0,227,128,0,28,112,0,227,128,0,0,112,0,252,0,0,0,112,0,252,0,0,0,112,0,252,0,0,0,113,192,224,0,56,0,113,192,224,0,56,0,113,192,224,0,56,0,127,248,224,0,56,0,127,248,224,0,56,0,127,248,224,0,56,255,128,56,224,0,56,255,128,56,224,0,56,255,128,56,224,0,56,28,0,0,31,255,248,28,0,0,31,255,248,28,0,0,31,255,248, + // 0x884c 行 + 76,136,45,48,32,48,0,250,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,7,255,255,192,0,14,7,255,255,192,0,14,7,255,255,192,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,3,240,0,3,128,0,3,240,0,3,128,0,3,240,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0, + // 0x88ab 被 + 171,136,45,48,32,48,0,250,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,254,7,255,255,248,255,254,7,255,255,248,255,254,7,255,255,248,0,14,7,0,112,56,0,14,7,0,112,56,0,14,7,0,112,56,0,112,7,0,113,192,0,112,7,0,113,192,0,112,7,0,113,192,0,113,199,0,112,0,0,113,199,0,112,0,0,113,199,0,112,0,3,254,7,255,255,192,3,254,7,255,255,192,3,254,7,255,255,192,28,113,199,28,1,192,28,113,199,28,1,192,28,113,199,28,1,192,224,112,7,28,1,192,224,112,7,28,1,192,224,112,7,28,1,192,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,113,192,224,0,56,0,113,192,224,0,56,0,113,192,224,0,56, + // 0x88c5 装 + 197,136,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,3,142,63,255,255,248,3,142,63,255,255,248,3,142,63,255,255,248,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,126,0,3,128,0,0,126,0,3,128,0,0,126,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,252,14,7,255,255,192,252,14,7,255,255,192,252,14,7,255,255,192,0,14,56,0,0,0,0,14,56,0,0,0,0,14,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,199,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,15,192,224,14,0,0,15,192,224,14,0,0,15,192,224,14,0,3,241,192,28,112,0,3,241,192,28,112,0,3,241,192,28,112,0,252,1,199,3,240,0,252,1,199,3,240,0,252,1,199,3,240,0,0,1,248,0,15,248,0,1,248,0,15,248,0,1,248,0,15,248,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0, + // 0x8981 要 + 129,137,39,45,225,48,3,250,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,0,14,0,224,0,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,28,14,0,224,112,28,14,0,224,112,28,14,0,224,112,28,14,0,224,112,28,14,0,224,112,28,14,0,224,112,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,14,0,28,0,0,14,0,28,0,0,14,0,28,0,0,112,0,224,0,0,112,0,224,0,0,112,0,224,0,3,254,7,0,0,3,254,7,0,0,3,254,7,0,0,0,1,255,0,0,0,1,255,0,0,0,1,255,0,0,0,15,192,255,128,0,15,192,255,128,0,15,192,255,128,31,240,0,0,112,31,240,0,0,112,31,240,0,0,112, + // 0x89d2 角 + 210,137,39,48,240,48,0,250,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,127,255,255,128,0,127,255,255,128,0,127,255,255,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,227,255,255,255,254,227,255,255,255,254,227,255,255,255,254,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,28,0,7,0,14,28,0,7,0,14,28,0,7,0,14,28,0,7,3,142,28,0,7,3,142,28,0,7,3,142,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x8ba1 计 + 161,139,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,241,255,255,255,248,255,241,255,255,255,248,255,241,255,255,255,248,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,192,28,0,0,0,113,192,28,0,0,0,113,192,28,0,0,0,126,0,28,0,0,0,126,0,28,0,0,0,126,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x8bae 议 + 174,139,45,48,32,48,0,250,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,255,240,7,0,112,0,255,240,7,0,112,0,255,240,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,192,28,0,0,0,113,192,28,0,0,0,113,192,28,0,0,0,126,0,227,128,0,0,126,0,227,128,0,0,126,0,227,128,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,15,192,0,1,248,0,15,192,0,1,248,0,15,192,0,1,248, + // 0x8bbe 设 + 190,139,45,45,14,48,0,250,3,128,7,255,240,0,3,128,7,255,240,0,3,128,7,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,56,0,15,248,0,0,56,0,15,248,0,0,56,0,15,248,255,241,192,0,0,0,255,241,192,0,0,0,255,241,192,0,0,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,113,192,227,128,0,0,113,192,227,128,0,0,113,192,227,128,0,0,126,0,28,0,0,0,126,0,28,0,0,0,126,0,28,0,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,0,63,0,126,0,0,0,63,0,126,0,0,0,63,0,126,0,0,15,192,0,1,248,0,15,192,0,1,248,0,15,192,0,1,248, + // 0x8bd5 试 + 213,139,45,48,32,48,0,250,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,1,255,255,255,248,0,1,255,255,255,248,0,1,255,255,255,248,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,255,240,0,3,128,0,255,240,0,3,128,0,255,240,0,3,128,0,0,113,255,255,128,0,0,113,255,255,128,0,0,113,255,255,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,113,199,0,112,0,0,113,199,0,112,0,0,113,199,0,112,0,0,126,7,252,14,56,0,126,7,252,14,56,0,126,7,252,14,56,0,113,255,0,14,56,0,113,255,0,14,56,0,113,255,0,14,56,0,0,56,0,1,248,0,0,56,0,1,248,0,0,56,0,1,248,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56, + // 0x8bef 误 + 239,139,45,45,14,48,0,250,28,0,63,255,254,0,28,0,63,255,254,0,28,0,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,129,255,255,255,192,255,129,255,255,255,192,255,129,255,255,255,192,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,143,255,255,255,248,3,143,255,255,255,248,3,143,255,255,255,248,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,142,0,227,128,0,3,142,0,227,128,0,3,142,0,227,128,0,3,240,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,0,1,192,0,1,248,0,1,192,0,1,248,0,1,192,0,1,248, + // 0x8bf7 请 + 247,139,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,129,255,255,255,248,255,129,255,255,255,248,255,129,255,255,255,248,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,142,63,255,254,0,3,142,63,255,254,0,3,142,63,255,254,0,3,240,56,0,14,0,3,240,56,0,14,0,3,240,56,0,14,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0, + // 0x8bfb 读 + 251,139,45,48,32,48,0,250,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,63,255,255,248,0,0,63,255,255,248,0,0,63,255,255,248,255,240,0,0,0,56,255,240,0,0,0,56,255,240,0,0,0,56,0,112,0,224,113,192,0,112,0,224,113,192,0,112,0,224,113,192,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,113,192,3,142,0,0,113,192,3,142,0,0,113,192,3,142,0,0,126,0,28,1,192,0,126,0,28,1,192,0,126,0,28,1,192,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,0,63,0,0,56,0,0,63,0,0,56,0,0,63,0,0,56, + // 0x8c03 调 + 3,140,42,45,14,48,0,250,28,1,255,255,255,192,28,1,255,255,255,192,28,1,255,255,255,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,0,1,199,255,241,192,0,1,199,255,241,192,0,1,199,255,241,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192,28,1,192,255,129,192,28,1,192,255,129,192,28,1,192,255,129,192,28,1,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,199,255,241,192,3,129,199,255,241,192,3,129,199,255,241,192,3,129,199,0,113,192,3,129,199,0,113,192,3,129,199,0,113,192,3,143,199,0,113,192,3,143,199,0,113,192,3,143,199,0,113,192,3,241,199,255,241,192,3,241,199,255,241,192,3,241,199,255,241,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192,0,113,192,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + // 0x8d25 败 + 37,141,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,31,255,192,28,0,0,31,255,192,28,0,0,31,255,192,28,0,0,28,1,192,28,0,0,28,1,192,28,0,0,28,1,192,28,0,0,28,113,192,224,0,0,28,113,192,224,0,0,28,113,192,224,0,0,28,113,192,255,255,248,28,113,192,255,255,248,28,113,192,255,255,248,28,113,199,0,14,0,28,113,199,0,14,0,28,113,199,0,14,0,28,113,248,224,14,0,28,113,248,224,14,0,28,113,248,224,14,0,28,113,192,224,14,0,28,113,192,224,14,0,28,113,192,224,14,0,28,113,192,224,14,0,28,113,192,224,14,0,28,113,192,224,14,0,28,113,192,28,112,0,28,113,192,28,112,0,28,113,192,28,112,0,28,113,192,28,112,0,28,113,192,28,112,0,28,113,192,28,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,142,0,28,112,0,3,142,0,28,112,0,3,142,0,28,112,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,28,1,199,0,1,192,28,1,199,0,1,192,28,1,199,0,1,192,224,0,56,0,0,56,224,0,56,0,0,56,224,0,56,0,0,56, + // 0x8d2a 贪 + 42,141,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,3,240,0,224,126,0,3,240,0,224,126,0,3,240,0,224,126,0,252,15,255,255,129,248,252,15,255,255,129,248,252,15,255,255,129,248,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,0,56,31,128,0,0,0,56,31,128,0,0,0,56,31,128,0,0,15,192,0,126,0,0,15,192,0,126,0,0,15,192,0,126,0,31,240,0,0,1,192,31,240,0,0,1,192,31,240,0,0,1,192, + // 0x8d77 起 + 119,141,45,48,32,48,0,250,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,255,254,0,0,14,0,255,254,0,0,14,0,255,254,0,31,255,248,0,14,0,31,255,248,0,14,0,31,255,248,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,255,255,248,255,254,0,255,255,248,255,254,0,255,255,248,255,254,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,3,142,0,224,0,0,3,142,0,224,0,0,3,142,0,224,0,0,3,142,0,224,0,0,3,142,0,224,0,0,3,142,0,224,0,0,3,143,248,224,1,192,3,143,248,224,1,192,3,143,248,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,3,142,0,31,255,192,3,142,0,31,255,192,3,142,0,31,255,192,28,126,0,0,0,0,28,126,0,0,0,0,28,126,0,0,0,0,28,15,255,255,255,248,28,15,255,255,255,248,28,15,255,255,255,248,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0, + // 0x8d85 超 + 133,141,45,48,32,48,0,250,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,7,255,255,192,0,14,7,255,255,192,0,14,7,255,255,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,31,255,248,28,1,192,31,255,248,28,1,192,31,255,248,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,224,113,192,0,14,0,224,113,192,0,14,0,224,113,192,255,255,255,0,14,0,255,255,255,0,14,0,255,255,255,0,14,0,0,14,0,255,255,192,0,14,0,255,255,192,0,14,0,255,255,192,3,142,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,3,143,248,224,1,192,3,143,248,224,1,192,3,143,248,224,1,192,3,142,0,255,255,192,3,142,0,255,255,192,3,142,0,255,255,192,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,126,0,0,0,0,28,126,0,0,0,0,28,126,0,0,0,0,28,15,255,255,255,248,28,15,255,255,255,248,28,15,255,255,255,248,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0, + // 0x8ddd 距 + 221,141,45,42,252,48,0,253,31,255,199,255,255,248,31,255,199,255,255,248,31,255,199,255,255,248,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,31,255,199,255,255,192,31,255,199,255,255,192,31,255,199,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,28,127,199,0,1,192,28,127,199,0,1,192,28,127,199,0,1,192,28,112,7,0,1,192,28,112,7,0,1,192,28,112,7,0,1,192,28,112,7,255,255,192,28,112,7,255,255,192,28,112,7,255,255,192,28,112,7,0,0,0,28,112,7,0,0,0,28,112,7,0,0,0,28,127,199,0,0,0,28,127,199,0,0,0,28,127,199,0,0,0,255,128,7,0,0,0,255,128,7,0,0,0,255,128,7,0,0,0,0,0,7,255,255,248,0,0,7,255,255,248,0,0,7,255,255,248, + // 0x8f6c 转 + 108,143,45,48,32,48,0,250,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,255,255,199,255,255,192,255,255,199,255,255,192,255,255,199,255,255,192,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,112,0,28,0,0,28,112,0,28,0,0,28,112,0,28,0,0,224,112,63,255,255,248,224,112,63,255,255,248,224,112,63,255,255,248,255,255,192,28,0,0,255,255,192,28,0,0,255,255,192,28,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,127,192,0,1,192,0,127,192,0,1,192,0,127,192,0,1,192,255,240,0,224,14,0,255,240,0,224,14,0,255,240,0,224,14,0,28,112,0,28,112,0,28,112,0,28,112,0,28,112,0,28,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x8f6f 软 + 111,143,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,255,255,248,31,255,192,255,255,248,31,255,192,255,255,248,31,255,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,192,3,142,0,224,14,0,3,142,0,224,14,0,3,142,0,224,14,0,28,14,7,3,128,0,28,14,7,3,128,0,28,14,7,3,128,0,31,255,248,3,128,0,31,255,248,3,128,0,31,255,248,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,28,112,0,0,14,0,28,112,0,0,14,0,28,112,0,0,15,248,28,112,0,0,15,248,28,112,0,0,15,248,28,112,0,255,254,0,28,112,0,255,254,0,28,112,0,255,254,0,28,112,0,28,14,0,224,14,0,28,14,0,224,14,0,28,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,7,0,1,192,0,14,7,0,1,192,0,14,7,0,1,192,0,14,56,0,0,56,0,14,56,0,0,56,0,14,56,0,0,56, + // 0x8f74 轴 + 116,143,42,48,32,48,0,250,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,28,0,7,255,255,192,28,0,7,255,255,192,28,0,7,255,255,192,28,112,7,3,129,192,28,112,7,3,129,192,28,112,7,3,129,192,224,112,7,3,129,192,224,112,7,3,129,192,224,112,7,3,129,192,255,255,199,3,129,192,255,255,199,3,129,192,255,255,199,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,127,199,3,129,192,0,127,199,3,129,192,0,127,199,3,129,192,255,240,7,3,129,192,255,240,7,3,129,192,255,240,7,3,129,192,28,112,7,3,129,192,28,112,7,3,129,192,28,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192, + // 0x8f7d 载 + 125,143,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,142,0,0,14,0,3,142,0,0,14,0,3,142,0,31,255,255,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,255,255,255,3,129,192,255,255,255,3,129,192,255,255,255,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,28,14,0,3,142,0,28,14,0,3,142,0,28,14,0,3,142,0,31,255,255,3,142,0,31,255,255,3,142,0,31,255,255,3,142,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,15,255,0,112,56,0,15,255,0,112,56,0,15,255,0,112,56,255,254,0,3,142,56,255,254,0,3,142,56,255,254,0,3,142,56,0,14,0,28,1,248,0,14,0,28,1,248,0,14,0,28,1,248,0,14,0,224,0,56,0,14,0,224,0,56,0,14,0,224,0,56, + // 0x8f91 辑 + 145,143,45,48,32,48,0,250,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,7,255,254,0,3,128,7,255,254,0,3,128,7,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,255,255,199,0,14,0,255,255,199,0,14,0,255,255,199,0,14,0,28,0,7,255,254,0,28,0,7,255,254,0,28,0,7,255,254,0,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,224,113,255,255,255,248,224,113,255,255,255,248,224,113,255,255,255,248,255,255,199,0,14,0,255,255,199,0,14,0,255,255,199,0,14,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,127,199,255,254,0,0,127,199,255,254,0,0,127,199,255,254,0,255,240,7,0,14,0,255,240,7,0,14,0,255,240,7,0,14,0,28,112,7,3,255,248,28,112,7,3,255,248,28,112,7,3,255,248,0,113,255,252,14,0,0,113,255,252,14,0,0,113,255,252,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0, + // 0x8f93 输 + 147,143,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,255,254,56,0,14,0,255,254,56,0,14,0,255,254,56,0,14,0,3,129,199,255,241,248,3,129,199,255,241,248,3,129,199,255,241,248,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,112,63,252,1,192,28,112,63,252,1,192,28,112,63,252,1,192,224,112,56,28,113,192,224,112,56,28,113,192,224,112,56,28,113,192,255,254,56,28,113,192,255,254,56,28,113,192,255,254,56,28,113,192,0,112,63,252,113,192,0,112,63,252,113,192,0,112,63,252,113,192,0,126,56,28,113,192,0,126,56,28,113,192,0,126,56,28,113,192,255,240,56,28,113,192,255,240,56,28,113,192,255,240,56,28,113,192,28,112,63,252,113,192,28,112,63,252,113,192,28,112,63,252,113,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,113,192,0,112,56,28,113,192,0,112,56,28,113,192,0,112,56,252,14,0,0,112,56,252,14,0,0,112,56,252,14,0, + // 0x8fb9 边 + 185,143,45,45,14,48,0,253,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,255,240,0,28,1,192,255,240,0,28,1,192,255,240,0,28,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,0,113,192,0,112,0,0,113,192,0,112,0,0,113,192,0,112,0,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x8fc1 迁 + 193,143,45,45,14,48,0,253,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,3,128,0,31,254,0,3,128,0,31,254,0,3,128,0,31,254,0,0,112,63,252,0,0,0,112,63,252,0,0,0,112,63,252,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,241,255,255,255,248,255,241,255,255,255,248,255,241,255,255,255,248,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x8fd0 运 + 208,143,45,42,252,48,0,253,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,192,0,1,255,255,255,192,0,1,255,255,255,192,255,240,0,28,0,0,255,240,0,28,0,0,255,240,0,28,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,0,112,56,0,1,192,0,112,56,0,1,192,0,112,56,0,1,192,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x8fd1 近 + 209,143,45,45,14,48,0,253,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,3,128,0,0,127,192,3,128,0,0,127,192,3,128,0,0,127,192,0,112,7,255,128,0,0,112,7,255,128,0,0,112,7,255,128,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,255,255,248,0,0,7,255,255,248,0,0,7,255,255,248,255,240,7,0,112,0,255,240,7,0,112,0,255,240,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,113,192,0,112,0,0,113,192,0,112,0,0,113,192,0,112,0,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x8fd4 返 + 212,143,45,45,14,48,0,253,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,3,128,0,3,255,192,3,128,0,3,255,192,3,128,0,3,255,192,0,112,63,252,0,0,0,112,63,252,0,0,0,112,63,252,0,0,0,112,56,0,0,0,0,112,56,0,0,0,0,112,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,63,255,255,192,0,0,63,255,255,192,0,0,63,255,255,192,255,240,56,0,1,192,255,240,56,0,1,192,255,240,56,0,1,192,0,112,56,224,14,0,0,112,56,224,14,0,0,112,56,224,14,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,28,112,0,0,113,192,224,14,0,0,113,192,224,14,0,0,113,192,224,14,0,0,113,199,0,1,192,0,113,199,0,1,192,0,113,199,0,1,192,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x8fd8 还 + 216,143,45,42,252,48,0,253,3,128,63,255,255,192,3,128,63,255,255,192,3,128,63,255,255,192,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,240,0,252,112,0,255,240,0,252,112,0,255,240,0,252,112,0,0,112,7,28,14,0,0,112,7,28,14,0,0,112,7,28,14,0,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x8fdb 进 + 219,143,45,45,14,48,0,253,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,255,240,0,224,112,0,255,240,0,224,112,0,255,240,0,224,112,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x8fde 连 + 222,143,45,45,14,48,0,253,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,0,0,227,128,0,0,0,0,227,128,0,0,0,0,227,128,0,0,0,7,3,128,0,0,0,7,3,128,0,0,0,7,3,128,0,255,240,63,255,255,192,255,240,63,255,255,192,255,240,63,255,255,192,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x8ff7 迷 + 247,143,45,45,14,48,0,253,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,0,112,7,28,14,0,0,112,7,28,14,0,0,112,7,28,14,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,7,28,112,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,1,255,255,255,192,0,1,255,255,255,192,0,1,255,255,255,192,255,240,0,28,0,0,255,240,0,28,0,0,255,240,0,28,0,0,0,112,0,255,128,0,0,112,0,255,128,0,0,112,0,255,128,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x9000 退 + 0,144,45,45,14,48,0,253,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,255,240,63,255,254,0,255,240,63,255,254,0,255,240,63,255,254,0,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,224,14,0,0,112,56,224,14,0,0,112,56,224,14,0,0,112,63,0,1,192,0,112,63,0,1,192,0,112,63,0,1,192,0,112,56,0,1,192,0,112,56,0,1,192,0,112,56,0,1,192,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x9009 选 + 9,144,45,45,14,48,0,253,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,128,56,28,0,0,3,128,56,28,0,0,3,128,56,28,0,0,0,112,56,28,0,0,0,112,56,28,0,0,0,112,56,28,0,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,241,255,255,255,192,255,241,255,255,255,192,255,241,255,255,255,192,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,113,192,0,127,192,0,113,192,0,127,192,0,113,192,0,127,192,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x901f 速 + 31,144,45,45,14,48,0,253,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,56,28,14,0,0,0,56,28,14,0,0,0,56,28,14,0,255,240,56,28,14,0,255,240,56,28,14,0,255,240,56,28,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,0,255,128,0,0,112,0,255,128,0,0,112,0,255,128,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x90e8 部 + 232,144,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,14,0,3,255,248,0,14,0,3,255,248,0,14,0,3,255,248,31,255,255,227,128,56,31,255,255,227,128,56,31,255,255,227,128,56,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,255,255,255,255,129,192,255,255,255,255,129,192,255,255,255,255,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,128,56,0,0,0,3,128,56,0,0,0,3,128,56,3,255,255,3,128,56,3,255,255,3,128,56,3,255,255,3,128,56,3,128,7,3,128,56,3,128,7,3,128,56,3,128,7,3,128,56,3,128,7,3,241,192,3,128,7,3,241,192,3,128,7,3,241,192,3,128,7,3,142,0,3,128,7,3,142,0,3,128,7,3,142,0,3,255,255,3,128,0,3,255,255,3,128,0,3,255,255,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0x914d 配 + 77,145,45,45,14,48,0,250,255,255,248,0,0,0,255,255,248,0,0,0,255,255,248,0,0,0,3,142,0,255,254,0,3,142,0,255,254,0,3,142,0,255,254,0,3,142,0,0,14,0,3,142,0,0,14,0,3,142,0,0,14,0,255,255,248,0,14,0,255,255,248,0,14,0,255,255,248,0,14,0,227,142,56,0,14,0,227,142,56,0,14,0,227,142,56,0,14,0,227,142,56,0,14,0,227,142,56,0,14,0,227,142,56,0,14,0,227,142,56,255,254,0,227,142,56,255,254,0,227,142,56,255,254,0,227,143,248,224,14,0,227,143,248,224,14,0,227,143,248,224,14,0,252,0,56,224,0,0,252,0,56,224,0,0,252,0,56,224,0,0,224,0,56,224,0,0,224,0,56,224,0,0,224,0,56,224,0,0,255,255,248,224,0,0,255,255,248,224,0,0,255,255,248,224,0,0,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,255,255,248,31,255,248,255,255,248,31,255,248,255,255,248,31,255,248,224,0,56,0,0,0,224,0,56,0,0,0,224,0,56,0,0,0, + // 0x91ca 释 + 202,145,45,48,32,48,0,250,0,15,192,0,0,0,0,15,192,0,0,0,0,15,192,0,0,0,255,240,63,255,255,192,255,240,63,255,255,192,255,240,63,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,28,113,192,224,14,0,28,113,192,224,14,0,28,113,192,224,14,0,3,254,0,28,112,0,3,254,0,28,112,0,3,254,0,28,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,255,255,192,252,126,0,255,255,192,252,126,0,255,255,192,252,126,0,0,112,63,3,129,248,0,112,63,3,129,248,0,112,63,3,129,248,3,240,0,3,128,0,3,240,0,3,128,0,3,240,0,3,128,0,3,254,7,255,255,192,3,254,7,255,255,192,3,254,7,255,255,192,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,224,112,63,255,255,248,224,112,63,255,255,248,224,112,63,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0, + // 0x91cd 重 + 205,145,45,45,14,48,0,253,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,255,254,0,0,0,0,255,254,0,0,0,0,255,254,0,3,255,255,0,0,0,3,255,255,0,0,0,3,255,255,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x91cf 量 + 207,145,45,45,14,48,0,250,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192, + // 0x9488 针 + 136,148,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,127,248,3,128,0,0,127,248,3,128,0,0,127,248,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,31,255,192,3,128,0,31,255,192,3,128,0,31,255,192,3,128,0,224,112,63,255,255,248,224,112,63,255,255,248,224,112,63,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,255,255,248,3,128,0,255,255,248,3,128,0,255,255,248,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,126,0,3,128,0,0,126,0,3,128,0,0,126,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0x94ae 钮 + 174,148,45,45,14,48,0,253,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,3,255,192,28,14,0,3,255,192,28,14,0,3,255,192,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,28,0,0,28,14,0,28,0,0,28,14,0,28,0,0,28,14,0,227,255,192,28,14,0,227,255,192,28,14,0,227,255,192,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,255,255,192,224,14,0,255,255,192,224,14,0,255,255,192,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,113,192,224,14,0,0,113,192,224,14,0,0,113,192,224,14,0,0,126,0,224,14,0,0,126,0,224,14,0,0,126,0,224,14,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248, + // 0x9519 错 + 25,149,45,48,32,48,0,250,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,254,7,0,112,0,3,254,7,0,112,0,3,254,7,0,112,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,28,0,7,0,112,0,28,0,7,0,112,0,28,0,7,0,112,0,31,254,7,0,112,0,31,254,7,0,112,0,31,254,7,0,112,0,227,143,255,255,255,248,227,143,255,255,255,248,227,143,255,255,255,248,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,255,254,63,255,254,0,255,254,63,255,254,0,255,254,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,142,56,0,14,0,3,142,56,0,14,0,3,142,56,0,14,0,3,240,56,0,14,0,3,240,56,0,14,0,3,240,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0, + // 0x955c 镜 + 92,149,45,48,32,48,0,250,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,254,63,255,254,0,3,254,63,255,254,0,3,254,63,255,254,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,28,0,0,227,128,0,28,0,0,227,128,0,28,0,0,227,128,0,31,241,255,255,255,248,31,241,255,255,255,248,31,241,255,255,255,248,227,128,0,0,0,0,227,128,0,0,0,0,227,128,0,0,0,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,255,254,56,0,14,0,255,254,56,0,14,0,255,254,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,142,7,3,128,0,3,142,7,3,128,0,3,142,7,3,128,0,3,240,7,3,128,56,3,240,7,3,128,56,3,240,7,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,0,15,192,0,127,248,0,15,192,0,127,248,0,15,192,0,127,248, + // 0x957f 长 + 127,149,45,48,32,48,0,250,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,14,56,0,0,0,0,14,56,0,0,0,0,14,56,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,56,0,126,0,0,14,56,0,126,0,0,14,56,0,126,0,0,15,192,0,1,248,0,15,192,0,1,248,0,15,192,0,1,248,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0, + // 0x95ed 闭 + 237,149,39,48,240,48,3,250,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,3,143,255,255,254,3,143,255,255,254,3,143,255,255,254,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,227,255,255,255,142,227,255,255,255,142,227,255,255,255,142,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,63,0,14,224,0,63,0,14,224,0,63,0,14,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,112,7,0,14,224,112,7,0,14,224,112,7,0,14,227,128,7,0,14,227,128,7,0,14,227,128,7,0,14,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x95f2 闲 + 242,149,39,48,240,48,3,250,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,3,143,255,255,254,3,143,255,255,254,3,143,255,255,254,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,227,255,255,255,142,227,255,255,255,142,227,255,255,255,142,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,1,255,0,14,224,1,255,0,14,224,1,255,0,14,224,14,56,224,14,224,14,56,224,14,224,14,56,224,14,224,112,56,28,14,224,112,56,28,14,224,112,56,28,14,227,128,56,3,142,227,128,56,3,142,227,128,56,3,142,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x95f4 间 + 244,149,39,48,240,48,3,250,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,3,129,255,255,254,3,129,255,255,254,3,129,255,255,254,3,128,0,0,14,3,128,0,0,14,3,128,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,15,255,224,14,224,15,255,224,14,224,15,255,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,15,255,224,14,224,15,255,224,14,224,15,255,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,224,15,255,224,14,224,15,255,224,14,224,15,255,224,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,0,3,142,224,0,0,3,142,224,0,0,3,142,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x9608 阈 + 8,150,39,48,240,48,3,250,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,3,143,255,255,254,3,143,255,255,254,3,143,255,255,254,0,0,7,0,14,0,0,7,0,14,0,0,7,0,14,224,0,7,28,14,224,0,7,28,14,224,0,7,28,14,224,0,7,3,142,224,0,7,3,142,224,0,7,3,142,227,255,255,255,142,227,255,255,255,142,227,255,255,255,142,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,127,199,28,14,224,127,199,28,14,224,127,199,28,14,224,113,199,28,14,224,113,199,28,14,224,113,199,28,14,224,127,199,28,14,224,127,199,28,14,224,127,199,28,14,224,0,7,224,14,224,0,7,224,14,224,0,7,224,14,224,15,192,227,142,224,15,192,227,142,224,15,192,227,142,227,240,7,31,142,227,240,7,31,142,227,240,7,31,142,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,0,0,0,126,224,0,0,0,126,224,0,0,0,126, + // 0x964d 降 + 77,150,42,48,32,48,3,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,254,7,0,0,0,255,254,7,0,0,0,255,254,7,0,0,0,224,14,7,255,254,0,224,14,7,255,254,0,224,14,7,255,254,0,224,112,56,0,112,0,224,112,56,0,112,0,224,112,56,0,112,0,224,113,199,3,128,0,224,113,199,3,128,0,224,113,199,3,128,0,227,128,0,252,0,0,227,128,0,252,0,0,227,128,0,252,0,0,224,112,63,3,240,0,224,112,63,3,240,0,224,112,63,3,240,0,224,127,192,28,15,192,224,127,192,28,15,192,224,127,192,28,15,192,224,14,0,28,0,0,224,14,0,28,0,0,224,14,0,28,0,0,224,14,63,255,254,0,224,14,63,255,254,0,224,14,63,255,254,0,224,14,0,28,0,0,224,14,0,28,0,0,224,14,0,28,0,0,252,113,192,28,0,0,252,113,192,28,0,0,252,113,192,28,0,0,227,129,255,255,255,192,227,129,255,255,255,192,227,129,255,255,255,192,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0, + // 0x9650 限 + 80,150,42,45,14,48,3,250,255,241,255,255,240,0,255,241,255,255,240,0,255,241,255,255,240,0,224,113,192,0,112,0,224,113,192,0,112,0,224,113,192,0,112,0,227,129,192,0,112,0,227,129,192,0,112,0,227,129,192,0,112,0,227,129,255,255,240,0,227,129,255,255,240,0,227,129,255,255,240,0,252,1,192,0,112,0,252,1,192,0,112,0,252,1,192,0,112,0,227,129,192,0,112,0,227,129,192,0,112,0,227,129,192,0,112,0,224,113,255,255,240,0,224,113,255,255,240,0,224,113,255,255,240,0,224,113,192,224,14,0,224,113,192,224,14,0,224,113,192,224,14,0,224,113,192,224,112,0,224,113,192,224,112,0,224,113,192,224,112,0,252,113,192,31,128,0,252,113,192,31,128,0,252,113,192,31,128,0,227,129,192,28,0,0,227,129,192,28,0,0,227,129,192,28,0,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,199,0,112,0,224,1,199,0,112,0,224,1,199,0,112,0,224,1,248,0,15,192,224,1,248,0,15,192,224,1,248,0,15,192,224,1,192,0,0,0,224,1,192,0,0,0,224,1,192,0,0,0, + // 0x9664 除 + 100,150,42,45,14,48,3,250,255,240,0,224,0,0,255,240,0,224,0,0,255,240,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,227,128,7,28,0,0,227,128,7,28,0,0,227,128,7,28,0,0,227,128,56,3,128,0,227,128,56,3,128,0,227,128,56,3,128,0,252,1,192,0,112,0,252,1,192,0,112,0,252,1,192,0,112,0,227,142,63,255,143,192,227,142,63,255,143,192,227,142,63,255,143,192,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,113,255,255,254,0,224,113,255,255,254,0,224,113,255,255,254,0,252,112,0,224,0,0,252,112,0,224,0,0,252,112,0,224,0,0,227,128,56,227,128,0,227,128,56,227,128,0,227,128,56,227,128,0,224,1,192,224,112,0,224,1,192,224,112,0,224,1,192,224,112,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,0,56,224,14,0,224,0,56,224,14,0,224,0,56,224,14,0,224,0,7,0,0,0,224,0,7,0,0,0,224,0,7,0,0,0, + // 0x9669 险 + 105,150,42,48,32,48,3,250,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,255,240,0,224,0,0,255,240,0,224,0,0,255,240,0,224,0,0,224,112,7,28,0,0,224,112,7,28,0,0,224,112,7,28,0,0,227,128,7,28,0,0,227,128,7,28,0,0,227,128,7,28,0,0,227,128,56,3,128,0,227,128,56,3,128,0,227,128,56,3,128,0,252,1,192,0,112,0,252,1,192,0,112,0,252,1,192,0,112,0,227,142,63,255,143,192,227,142,63,255,143,192,227,142,63,255,143,192,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,224,112,0,252,113,192,224,112,0,252,113,192,224,112,0,252,113,192,224,112,0,227,128,56,227,128,0,227,128,56,227,128,0,227,128,56,227,128,0,224,0,56,3,128,0,224,0,56,3,128,0,224,0,56,3,128,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,15,255,255,255,192,224,15,255,255,255,192,224,15,255,255,255,192,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0, + // 0x96f6 零 + 246,150,45,48,32,48,0,250,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,7,0,0,56,28,0,7,0,0,56,28,0,7,0,0,56,224,127,199,31,241,192,224,127,199,31,241,192,224,127,199,31,241,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,127,199,31,240,0,0,127,199,31,240,0,0,127,199,31,240,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,15,192,31,128,0,0,15,192,31,128,0,0,15,192,31,128,0,3,240,56,0,126,0,3,240,56,0,126,0,3,240,56,0,126,0,252,0,7,0,1,248,252,0,7,0,1,248,252,0,7,0,1,248,0,127,255,255,128,0,0,127,255,255,128,0,0,127,255,255,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,1,248,28,0,0,0,1,248,28,0,0,0,1,248,28,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x9700 需 + 0,151,45,45,14,48,0,250,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,7,0,0,56,28,0,7,0,0,56,28,0,7,0,0,56,224,127,199,31,241,192,224,127,199,31,241,192,224,127,199,31,241,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,127,199,31,240,0,0,127,199,31,240,0,0,127,199,31,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,227,142,0,3,129,192,227,142,0,3,129,192,227,142,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0, + // 0x9752 青 + 82,151,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0, + // 0x975e 非 + 94,151,45,48,32,48,0,250,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,255,255,192,31,255,248,255,255,192,31,255,248,255,255,192,31,255,248,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,31,255,192,31,255,192,31,255,192,31,255,192,31,255,192,31,255,192,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,255,255,192,31,255,248,255,255,192,31,255,248,255,255,192,31,255,248,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0, + // 0x9760 靠 + 96,151,45,48,32,48,0,250,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,31,255,192,31,255,192,31,255,192,31,255,192,31,255,192,31,255,192,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,3,255,192,31,254,0,3,255,192,31,254,0,3,255,192,31,254,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,31,255,192,31,255,192,31,255,192,31,255,192,31,255,192,31,255,192,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0, + // 0x9762 面 + 98,151,45,45,14,48,0,250,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,255,252,14,0,3,129,255,252,14,0,3,129,255,252,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,255,252,14,0,3,129,255,252,14,0,3,129,255,252,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0, + // 0x9875 页 + 117,152,39,45,225,48,3,250,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,56,3,128,3,128,56,3,128,3,128,56,3,128,3,128,56,3,128,3,128,56,3,128,3,128,56,3,128,3,128,56,3,128,3,128,56,3,128,3,128,56,3,128,3,128,56,3,128,3,128,56,3,128,3,128,56,3,128,3,128,56,3,128,3,128,56,3,128,3,128,56,3,128,3,129,199,3,128,3,129,199,3,128,3,129,199,3,128,0,1,192,224,0,0,1,192,224,0,0,1,192,224,0,0,14,0,28,0,0,14,0,28,0,0,14,0,28,0,3,240,0,3,128,3,240,0,3,128,3,240,0,3,128,252,0,0,0,112,252,0,0,0,112,252,0,0,0,112, + // 0x9879 项 + 121,152,45,45,14,48,0,250,0,0,7,255,255,248,0,0,7,255,255,248,0,0,7,255,255,248,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,255,255,192,28,0,0,255,255,192,28,0,0,255,255,192,28,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,127,199,28,1,192,0,127,199,28,1,192,0,127,199,28,1,192,255,128,0,28,112,0,255,128,0,28,112,0,255,128,0,28,112,0,28,0,0,224,14,0,28,0,0,224,14,0,28,0,0,224,14,0,0,0,7,0,1,192,0,0,7,0,1,192,0,0,7,0,1,192,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + // 0x9884 预 + 132,152,45,45,14,48,0,250,255,254,7,255,255,248,255,254,7,255,255,248,255,254,7,255,255,248,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,28,112,0,28,0,0,28,112,0,28,0,0,28,112,0,28,0,0,3,128,7,255,255,192,3,128,7,255,255,192,3,128,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,255,255,199,3,129,192,255,255,199,3,129,192,255,255,199,3,129,192,3,129,199,3,129,192,3,129,199,3,129,192,3,129,199,3,129,192,3,142,7,3,129,192,3,142,7,3,129,192,3,142,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,28,1,192,3,128,7,28,1,192,3,128,7,28,1,192,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,227,128,7,0,1,192,227,128,7,0,1,192,227,128,7,0,1,192,28,0,56,0,0,56,28,0,56,0,0,56,28,0,56,0,0,56, + // 0x9891 频 + 145,152,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,255,255,248,0,112,7,255,255,248,0,112,7,255,255,248,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,127,192,28,0,0,28,127,192,28,0,0,28,127,192,28,0,0,28,112,7,255,255,192,28,112,7,255,255,192,28,112,7,255,255,192,28,112,7,0,1,192,28,112,7,0,1,192,28,112,7,0,1,192,255,255,255,3,129,192,255,255,255,3,129,192,255,255,255,3,129,192,0,0,7,3,129,192,0,0,7,3,129,192,0,0,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,28,113,199,28,1,192,28,113,199,28,1,192,28,113,199,28,1,192,224,1,192,28,112,0,224,1,192,28,112,0,224,1,192,28,112,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,3,240,7,0,1,192,3,240,7,0,1,192,3,240,7,0,1,192,252,0,56,0,0,56,252,0,56,0,0,56,252,0,56,0,0,56, + // 0x989d 额 + 157,152,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,14,0,255,255,248,0,14,0,255,255,248,0,14,0,255,255,248,31,255,255,0,112,0,31,255,255,0,112,0,31,255,255,0,112,0,28,0,7,3,128,0,28,0,7,3,128,0,28,0,7,3,128,0,0,112,0,31,255,192,0,112,0,31,255,192,0,112,0,31,255,192,0,127,248,28,1,192,0,127,248,28,1,192,0,127,248,28,1,192,3,128,56,28,113,192,3,128,56,28,113,192,3,128,56,28,113,192,28,113,192,28,113,192,28,113,192,28,113,192,28,113,192,28,113,192,0,14,0,28,113,192,0,14,0,28,113,192,0,14,0,28,113,192,0,113,192,28,113,192,0,113,192,28,113,192,0,113,192,28,113,192,3,128,56,28,113,192,3,128,56,28,113,192,3,128,56,28,113,192,31,255,255,28,113,192,31,255,255,28,113,192,31,255,255,28,113,192,227,128,56,3,142,0,227,128,56,3,142,0,227,128,56,3,142,0,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,255,248,28,0,56,3,255,248,28,0,56,3,255,248,28,0,56,3,128,56,224,0,56,3,128,56,224,0,56,3,128,56,224,0,56, + // 0x98ce 风 + 206,152,45,45,14,48,0,250,3,255,255,255,240,0,3,255,255,255,240,0,3,255,255,255,240,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,142,0,28,112,0,3,142,0,28,112,0,3,142,0,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,128,56,224,112,0,3,128,56,224,112,0,3,128,56,224,112,0,3,128,56,224,112,0,3,128,56,224,112,0,3,128,56,224,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,56,224,112,0,3,128,56,224,112,0,3,128,56,224,112,0,3,128,56,224,112,56,3,128,56,224,112,56,3,128,56,224,112,56,3,129,192,28,14,56,3,129,192,28,14,56,3,129,192,28,14,56,28,14,0,28,14,56,28,14,0,28,14,56,28,14,0,28,14,56,28,0,0,0,1,248,28,0,0,0,1,248,28,0,0,0,1,248,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56, + // 0x9971 饱 + 113,153,45,45,14,48,0,253,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,7,255,255,192,3,128,7,255,255,192,3,128,7,255,255,192,3,254,7,0,1,192,3,254,7,0,1,192,3,254,7,0,1,192,28,14,56,0,1,192,28,14,56,0,1,192,28,14,56,0,1,192,28,113,199,255,241,192,28,113,199,255,241,192,28,113,199,255,241,192,224,0,7,0,113,192,224,0,7,0,113,192,224,0,7,0,113,192,3,128,7,0,113,192,3,128,7,0,113,192,3,128,7,0,113,192,3,128,7,0,113,192,3,128,7,0,113,192,3,128,7,0,113,192,3,128,7,255,241,192,3,128,7,255,241,192,3,128,7,255,241,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,3,142,0,3,128,7,3,142,0,3,128,7,3,142,0,3,142,7,0,112,56,3,142,7,0,112,56,3,142,7,0,112,56,3,240,7,0,0,56,3,240,7,0,0,56,3,240,7,0,0,56,3,128,0,255,255,248,3,128,0,255,255,248,3,128,0,255,255,248, + // 0x9a6c 马 + 108,154,42,45,14,48,0,250,31,255,255,255,128,0,31,255,255,255,128,0,31,255,255,255,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,127,255,255,255,192,0,127,255,255,255,192,0,127,255,255,255,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,255,255,255,255,129,192,255,255,255,255,129,192,255,255,255,255,129,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0, + // 0x9a71 驱 + 113,154,45,45,14,48,0,250,255,254,7,255,255,248,255,254,7,255,255,248,255,254,7,255,255,248,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,28,14,7,0,1,192,28,14,7,0,1,192,28,14,7,0,1,192,28,14,7,28,1,192,28,14,7,28,1,192,28,14,7,28,1,192,28,14,7,3,142,0,28,14,7,3,142,0,28,14,7,3,142,0,28,14,7,3,142,0,28,14,7,3,142,0,28,14,7,3,142,0,31,255,199,0,112,0,31,255,199,0,112,0,31,255,199,0,112,0,0,1,199,0,112,0,0,1,199,0,112,0,0,1,199,0,112,0,0,1,199,3,142,0,0,1,199,3,142,0,0,1,199,3,142,0,0,127,199,3,142,0,0,127,199,3,142,0,0,127,199,3,142,0,255,129,199,28,1,192,255,129,199,28,1,192,255,129,199,28,1,192,28,1,199,224,1,192,28,1,199,224,1,192,28,1,199,224,1,192,0,1,199,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,3,142,7,255,255,248,3,142,7,255,255,248,3,142,7,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x9ad8 高 + 216,154,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,15,255,255,129,192,28,15,255,255,129,192,28,15,255,255,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,15,255,255,129,192,28,15,255,255,129,192,28,15,255,255,129,192,28,0,0,0,15,192,28,0,0,0,15,192,28,0,0,0,15,192, + // 0x9ec4 黄 + 196,158,45,48,32,48,0,250,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,128,0,0,15,192,31,128,0,0,15,192,31,128,0,0,15,192, + // 0x9ede 點 + 222,158,45,48,32,48,0,250,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,255,248,0,112,0,255,255,248,0,112,0,255,255,248,0,112,0,224,112,56,0,112,0,224,112,56,0,112,0,224,112,56,0,112,0,252,113,248,0,112,0,252,113,248,0,112,0,252,113,248,0,112,0,227,254,56,0,127,248,227,254,56,0,127,248,227,254,56,0,127,248,224,112,56,0,112,0,224,112,56,0,112,0,224,112,56,0,112,0,255,255,248,0,112,0,255,255,248,0,112,0,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,248,255,255,248,255,255,248,255,255,248,255,255,248,255,255,248,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,127,248,224,0,56,0,127,248,224,0,56,0,127,248,224,0,56,255,128,0,224,0,56,255,128,0,224,0,56,255,128,0,224,0,56,0,0,56,224,0,56,0,0,56,224,0,56,0,0,56,224,0,56,227,142,56,224,0,56,227,142,56,224,0,56,227,142,56,224,0,56,227,142,0,255,255,248,227,142,0,255,255,248,227,142,0,255,255,248,224,0,0,224,0,56,224,0,0,224,0,56,224,0,0,224,0,56, + // 0x9f50 齐 + 80,159,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,15,192,31,128,0,0,15,192,31,128,0,0,15,192,31,128,0,3,240,0,0,126,0,3,240,0,0,126,0,3,240,0,0,126,0,252,14,0,3,129,248,252,14,0,3,129,248,252,14,0,3,129,248,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + // 0xff1a : + 26,255,12,21,42,48,18,3,255,240,255,240,255,240,255,240,255,240,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,240,255,240,255,240,255,240,255,240,255,240, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Symbols_30.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Symbols_30.cpp new file mode 100644 index 000000000000..58600e54a756 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Symbols_30.cpp @@ -0,0 +1,38 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// Unifont Symbols 48pt, capital 'A' height: 30px, width: 100% +extern const uint8_t Unifont_Symbols_30[140] = { + 129,30,8,0,10,0,42,250, // unifont_t + // 0x08 - LCD_STR_THERMOMETER a.k.a 0x1f321 🌡 + 15,36,72,48,15,0,3,128,3,128,3,128,28,112,28,112,28,112,28,112,28,112,28,112,28,112,28,112,28,112,28,112,28,112,28,112,31,240,31,240,31,240,31,240,31,240,31,240,31,240,31,240,31,240,255,254,255,254,255,254,255,254,255,254,255,254,255,254,255,254,255,254,31,240,31,240,31,240, + // 0x09 - LCD_STR_DEGREE a.k.a 0x00b0 ° + 12,12,24,24,6,18,31,128,31,128,31,128,224,112,224,112,224,112,224,112,224,112,224,112,31,128,31,128,31,128, + // 0x0a - replacement for 0x2026 used in Greek language files … + 21,6,18,24,3,0,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Traditional_Chinese_30.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Traditional_Chinese_30.cpp new file mode 100644 index 000000000000..a3b16c4ecac0 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Traditional_Chinese_30.cpp @@ -0,0 +1,646 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// Unifont Traditional Chinese 48pt, capital 'A' height: 30px, width: 100%, range: 0x22bf-0xff1a, glyphs: 307 +extern const uint8_t Unifont_Traditional_Chinese_30[18862] = { + 161,30,191,34,26,255,42,250, // unifont_t + // 0x22bf ⊿ + 191,34,18,18,54,24,3,0,0,1,192,0,1,192,0,1,192,0,15,192,0,15,192,0,15,192,0,113,192,0,113,192,0,113,192,3,129,192,3,129,192,3,129,192,28,1,192,28,1,192,28,1,192,255,255,192,255,255,192,255,255,192, + // 0x4e00 一 + 0,78,45,3,18,48,0,18,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x4e09 三 + 9,78,45,36,216,48,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x4e0a 上 + 10,78,45,45,14,48,0,253,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x4e0b 下 + 11,78,45,45,14,48,0,250,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x4e0d 不 + 13,78,42,45,14,48,0,250,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,63,28,0,0,0,0,63,28,0,0,0,0,63,28,0,0,0,1,199,3,128,0,0,1,199,3,128,0,0,1,199,3,128,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,28,0,7,0,1,192,28,0,7,0,1,192,28,0,7,0,1,192,224,0,7,0,0,0,224,0,7,0,0,0,224,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x4e26 並 + 38,78,45,45,14,48,0,253,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,0,113,192,28,14,0,0,113,192,28,14,0,0,113,192,28,14,0,0,113,192,28,112,0,0,113,192,28,112,0,0,113,192,28,112,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x4e2d 中 + 45,78,33,48,240,48,6,250,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,224,1,192,3,128,224,1,192,3,128,224,1,192,3,128,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + // 0x4e3b 主 + 59,78,45,45,14,48,0,253,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x4e4b 之 + 75,78,42,45,14,48,3,253,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,240,0,255,255,255,255,240,0,255,255,255,255,240,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,3,240,0,0,0,0,3,240,0,0,0,0,3,240,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,224,1,255,255,255,192,224,1,255,255,255,192,224,1,255,255,255,192, + // 0x4ea4 交 + 164,78,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,15,192,28,0,0,0,15,192,28,0,0,0,15,192,28,0,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,3,240,0,252,0,0,0,15,248,252,0,0,0,15,248,252,0,0,0,15,248, + // 0x4eae 亮 + 174,78,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,1,255,252,1,192,224,1,255,252,1,192,224,1,255,252,1,192,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,3,240,0,28,0,56,3,240,0,28,0,56,3,240,0,28,0,56,252,0,0,3,255,248,252,0,0,3,255,248,252,0,0,3,255,248, + // 0x4ee4 令 + 228,78,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,56,3,128,0,0,14,56,3,128,0,0,14,56,3,128,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0, + // 0x4ef6 件 + 246,78,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0, + // 0x4efd 份 + 253,78,45,48,32,48,0,250,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,224,112,0,0,14,0,224,112,0,0,14,0,224,112,0,0,14,0,224,112,0,0,14,0,224,112,0,0,14,0,224,112,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,3,240,7,0,1,192,3,240,7,0,1,192,3,240,7,0,1,192,3,240,56,0,1,192,3,240,56,0,1,192,3,240,56,0,1,192,28,113,199,255,254,56,28,113,199,255,254,56,28,113,199,255,254,56,224,112,0,224,14,0,224,112,0,224,14,0,224,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,0,113,192,0,112,0,0,113,192,0,112,0,0,113,192,0,112,0, + // 0x4f11 休 + 17,79,45,48,32,48,0,250,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,3,240,0,28,0,0,3,240,0,28,0,0,3,240,0,28,0,0,3,240,0,255,128,0,3,240,0,255,128,0,3,240,0,255,128,0,28,112,0,255,128,0,28,112,0,255,128,0,28,112,0,255,128,0,224,112,7,28,112,0,224,112,7,28,112,0,224,112,7,28,112,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,126,0,28,0,56,0,126,0,28,0,56,0,126,0,28,0,56,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0, + // 0x4f4d 位 + 77,79,45,48,32,48,0,250,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,3,240,0,0,0,0,3,240,0,0,0,0,3,240,0,0,0,0,3,240,0,0,14,0,3,240,0,0,14,0,3,240,0,0,14,0,28,112,56,0,14,0,28,112,56,0,14,0,28,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,127,255,255,255,248,0,127,255,255,255,248,0,127,255,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x4f4e 低 + 78,79,45,48,32,48,0,250,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,3,255,192,0,14,0,3,255,192,0,14,0,3,255,192,0,14,63,255,128,0,0,14,63,255,128,0,0,14,63,255,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,3,240,56,3,128,0,28,112,63,255,255,248,28,112,63,255,255,248,28,112,63,255,255,248,224,112,56,3,128,0,224,112,56,3,128,0,224,112,56,3,128,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,14,56,0,112,56,0,14,56,0,112,56,0,14,56,0,112,56,224,14,56,0,112,56,224,14,56,0,112,56,224,14,56,0,112,63,3,129,248,0,112,63,3,129,248,0,112,63,3,129,248,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0,112,56, + // 0x4f5c 作 + 92,79,45,48,32,48,0,250,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,112,7,255,255,248,0,112,7,255,255,248,0,112,7,255,255,248,0,112,56,224,0,0,0,112,56,224,0,0,0,112,56,224,0,0,3,240,56,224,0,0,3,240,56,224,0,0,3,240,56,224,0,0,3,241,192,224,0,0,3,241,192,224,0,0,3,241,192,224,0,0,28,112,0,255,254,0,28,112,0,255,254,0,28,112,0,255,254,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0, + // 0x4f9b 供 + 155,79,45,48,32,48,0,250,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,3,240,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,28,112,7,0,112,0,28,112,7,0,112,0,28,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,113,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192,0,126,0,0,1,192,0,126,0,0,1,192,0,126,0,0,1,192, + // 0x4fdd 保 + 221,79,45,48,32,48,0,250,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,63,255,254,0,0,14,63,255,254,0,0,14,63,255,254,0,0,14,56,0,14,0,0,14,56,0,14,0,0,14,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,3,240,63,255,254,0,3,240,63,255,254,0,3,240,63,255,254,0,3,240,0,28,0,0,3,240,0,28,0,0,3,240,0,28,0,0,28,112,0,28,0,0,28,112,0,28,0,0,28,112,0,28,0,0,224,113,255,255,255,192,224,113,255,255,255,192,224,113,255,255,255,192,0,112,0,255,128,0,0,112,0,255,128,0,0,112,0,255,128,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,126,0,28,0,56,0,126,0,28,0,56,0,126,0,28,0,56,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0, + // 0x4fe1 信 + 225,79,45,48,32,48,0,250,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,63,255,255,248,0,14,63,255,255,248,0,14,63,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,240,7,255,255,192,3,240,7,255,255,192,3,240,7,255,255,192,3,240,0,0,0,0,3,240,0,0,0,0,3,240,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,224,112,7,255,255,192,224,112,7,255,255,192,224,112,7,255,255,192,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192, + // 0x500b 個 + 11,80,42,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,31,129,192,28,1,192,31,129,192,28,1,192,31,129,192,28,1,192,31,129,192,28,1,192,31,129,192,28,1,192,31,129,192,28,1,192,227,129,199,255,241,192,227,129,199,255,241,192,227,129,199,255,241,192,3,129,199,0,113,192,3,129,199,0,113,192,3,129,199,0,113,192,3,129,199,0,113,192,3,129,199,0,113,192,3,129,199,0,113,192,3,129,199,0,113,192,3,129,199,0,113,192,3,129,199,0,113,192,3,129,199,255,241,192,3,129,199,255,241,192,3,129,199,255,241,192,3,129,199,0,113,192,3,129,199,0,113,192,3,129,199,0,113,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192, + // 0x503c 值 + 60,80,45,48,32,48,0,250,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,15,255,255,255,192,0,15,255,255,255,192,0,15,255,255,255,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,240,63,255,254,0,3,240,63,255,254,0,3,240,63,255,254,0,3,240,56,0,14,0,3,240,56,0,14,0,3,240,56,0,14,0,28,112,63,255,254,0,28,112,63,255,254,0,28,112,63,255,254,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,127,255,255,255,248,0,127,255,255,255,248,0,127,255,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x504f 偏 + 79,80,42,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,31,129,255,255,255,192,31,129,255,255,255,192,31,129,255,255,255,192,31,129,192,0,0,0,31,129,192,0,0,0,31,129,192,0,0,0,227,129,192,0,0,0,227,129,192,0,0,0,227,129,192,0,0,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,248,227,129,192,3,129,248,227,129,192,3,129,248,227,129,192,3,142,56,227,129,192,3,142,56,227,129,192,3,142,56,227,129,192,3,142,63,255,255,192,3,142,63,255,255,192,3,142,63,255,255,192,3,142,56,227,129,192,3,142,56,227,129,192,3,142,56,227,129,192,3,142,56,227,129,192,3,142,56,227,129,192,3,142,56,227,129,192,3,240,56,227,129,192,3,240,56,227,129,192,3,240,56,227,129,192,3,128,56,0,15,192,3,128,56,0,15,192,3,128,56,0,15,192, + // 0x505c 停 + 92,80,45,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,31,128,56,0,14,0,31,128,56,0,14,0,31,128,56,0,14,0,31,128,63,255,254,0,31,128,63,255,254,0,31,128,63,255,254,0,227,128,0,0,0,0,227,128,0,0,0,0,227,128,0,0,0,0,3,143,255,255,255,248,3,143,255,255,255,248,3,143,255,255,255,248,3,142,0,0,0,56,3,142,0,0,0,56,3,142,0,0,0,56,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,7,28,0,0,3,128,7,28,0,0,3,128,7,28,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0, + // 0x5075 偵 + 117,80,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,31,255,248,0,112,0,31,255,248,0,112,0,31,255,248,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,31,129,192,0,1,192,31,129,192,0,1,192,31,129,192,0,1,192,31,129,192,0,1,192,31,129,192,0,1,192,31,129,192,0,1,192,227,129,255,255,255,192,227,129,255,255,255,192,227,129,255,255,255,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192, + // 0x5099 備 + 153,80,45,48,32,48,0,250,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,63,255,255,248,0,14,63,255,255,248,0,14,63,255,255,248,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,3,241,255,255,255,248,3,241,255,255,255,248,3,241,255,255,255,248,3,240,0,224,0,0,3,240,0,224,0,0,3,240,0,224,0,0,28,112,7,255,255,192,28,112,7,255,255,192,28,112,7,255,255,192,224,112,63,3,129,192,224,112,63,3,129,192,224,112,63,3,129,192,0,113,199,255,255,192,0,113,199,255,255,192,0,113,199,255,255,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,0,15,192,0,112,7,0,15,192,0,112,7,0,15,192, + // 0x50b3 傳 + 179,80,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,127,255,255,255,248,0,127,255,255,255,248,0,127,255,255,255,248,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,31,129,255,255,255,192,31,129,255,255,255,192,31,129,255,255,255,192,31,129,192,28,1,192,31,129,192,28,1,192,31,129,192,28,1,192,227,129,255,255,255,192,227,129,255,255,255,192,227,129,255,255,255,192,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,143,255,255,255,248,3,143,255,255,255,248,3,143,255,255,255,248,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,143,255,255,255,248,3,143,255,255,255,248,3,143,255,255,255,248,3,128,56,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,28,112,0,3,128,7,28,112,0,3,128,7,28,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + // 0x50be 傾 + 190,80,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,255,255,248,0,112,7,255,255,248,0,112,7,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,255,255,192,3,129,192,255,255,192,3,129,192,255,255,192,31,129,192,224,1,192,31,129,192,224,1,192,31,129,192,224,1,192,31,129,255,224,1,192,31,129,255,224,1,192,31,129,255,224,1,192,227,129,192,255,255,192,227,129,192,255,255,192,227,129,192,255,255,192,3,129,192,224,1,192,3,129,192,224,1,192,3,129,192,224,1,192,3,129,192,255,255,192,3,129,192,255,255,192,3,129,192,255,255,192,3,129,199,224,1,192,3,129,199,224,1,192,3,129,199,224,1,192,3,129,248,224,1,192,3,129,248,224,1,192,3,129,248,224,1,192,3,129,192,255,255,192,3,129,192,255,255,192,3,129,192,255,255,192,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,7,0,0,56,3,128,7,0,0,56,3,128,7,0,0,56, + // 0x5132 儲 + 50,81,45,48,32,48,0,250,0,113,192,0,112,0,0,113,192,0,112,0,0,113,192,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,31,254,56,0,112,56,31,254,56,0,112,56,31,254,56,3,143,255,0,112,56,3,143,255,0,112,56,3,143,255,0,112,56,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,31,143,255,31,255,248,31,143,255,31,255,248,31,143,255,31,255,248,31,128,0,0,14,0,31,128,0,0,14,0,31,128,0,0,14,0,227,143,255,0,112,0,227,143,255,0,112,0,227,143,255,0,112,0,3,128,0,3,255,192,3,128,0,3,255,192,3,128,0,3,255,192,3,143,255,31,129,192,3,143,255,31,129,192,3,143,255,31,129,192,3,142,7,227,129,192,3,142,7,227,129,192,3,142,7,227,129,192,3,142,7,3,255,192,3,142,7,3,255,192,3,142,7,3,255,192,3,142,7,3,129,192,3,142,7,3,129,192,3,142,7,3,129,192,3,143,255,3,129,192,3,143,255,3,129,192,3,143,255,3,129,192,3,142,7,3,255,192,3,142,7,3,255,192,3,142,7,3,255,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192, + // 0x5145 充 + 69,81,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,1,192,28,14,0,0,1,192,28,14,0,0,1,192,28,14,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,31,128,0,3,255,192,31,128,0,3,255,192,31,128,0,3,255,192, + // 0x5148 先 + 72,81,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,127,255,255,254,0,0,127,255,255,254,0,0,127,255,255,254,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,28,0,7,0,0,0,28,0,7,0,0,0,28,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,3,128,0,3,255,248,3,128,0,3,255,248,3,128,0,3,255,248,252,0,0,0,0,0,252,0,0,0,0,0,252,0,0,0,0,0, + // 0x5149 光 + 73,81,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,3,128,0,3,255,248,3,128,0,3,255,248,3,128,0,3,255,248,252,0,0,0,0,0,252,0,0,0,0,0,252,0,0,0,0,0, + // 0x5165 入 + 101,81,45,48,32,48,0,250,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,224,0,0,0,1,248,224,0,0,0,1,248,224,0,0,0,1,248, + // 0x5168 全 + 104,81,45,45,14,48,0,253,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,143,255,255,142,0,3,143,255,255,142,0,3,143,255,255,142,0,252,0,7,0,1,248,252,0,7,0,1,248,252,0,7,0,1,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192, + // 0x5171 共 + 113,81,42,48,32,48,3,250,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,31,255,255,255,254,0,31,255,255,255,254,0,31,255,255,255,254,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,255,255,255,255,255,192,255,255,255,255,255,192,255,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0, + // 0x5177 具 + 119,81,45,45,14,48,0,250,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0, + // 0x5197 冗 + 151,81,45,42,252,48,0,250,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,252,0,0,0,15,255,252,0,0,0,15,255,252,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,28,0,0,3,255,248,28,0,0,3,255,248,28,0,0,3,255,248,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0, + // 0x51b7 冷 + 183,81,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,56,28,14,0,0,0,56,28,14,0,0,0,56,28,14,0,0,113,192,3,129,248,0,113,192,3,129,248,0,113,192,3,129,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,255,128,0,0,14,0,255,128,0,0,14,0,255,128,0,0,14,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0x51c6 准 + 198,81,45,48,32,48,0,250,0,0,7,28,0,0,0,0,7,28,0,0,0,0,7,28,0,0,28,0,7,3,128,0,28,0,7,3,128,0,28,0,7,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,3,128,63,255,255,248,3,128,63,255,255,248,3,128,63,255,255,248,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,3,128,0,0,113,248,3,128,0,0,113,248,3,128,0,0,113,248,3,128,0,0,126,63,255,255,192,0,126,63,255,255,192,0,126,63,255,255,192,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,63,255,255,192,3,128,63,255,255,192,3,128,63,255,255,192,255,128,56,3,128,0,255,128,56,3,128,0,255,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,63,255,255,248,3,128,63,255,255,248,3,128,63,255,255,248,3,128,56,0,0,0,3,128,56,0,0,0,3,128,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x51fa 出 + 250,81,39,48,240,48,3,250,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14, + // 0x5206 分 + 6,82,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,224,127,255,255,128,56,224,127,255,255,128,56,224,127,255,255,128,56,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,7,28,0,0,3,128,7,28,0,0,3,128,7,28,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0, + // 0x5217 列 + 23,82,42,48,32,48,0,250,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,31,255,255,224,1,192,31,255,255,224,1,192,31,255,255,224,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,127,255,3,129,192,0,127,255,3,129,192,0,127,255,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,28,112,56,3,129,192,28,112,56,3,129,192,28,112,56,3,129,192,224,14,56,3,129,192,224,14,56,3,129,192,224,14,56,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0, + // 0x521d 初 + 29,82,42,48,32,48,0,250,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,0,7,255,255,192,0,0,7,255,255,192,0,0,7,255,255,192,255,255,192,28,1,192,255,255,192,28,1,192,255,255,192,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,3,241,192,28,1,192,3,241,192,28,1,192,3,241,192,28,1,192,28,126,0,28,1,192,28,126,0,28,1,192,28,126,0,28,1,192,224,113,192,28,1,192,224,113,192,28,1,192,224,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,0,113,192,0,112,0,0,113,192,0,112,0,0,113,192,0,112,0, + // 0x5230 到 + 48,82,42,48,32,48,0,250,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,255,255,255,224,1,192,255,255,255,224,1,192,255,255,255,224,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,28,0,7,3,129,192,28,0,7,3,129,192,28,0,7,3,129,192,255,255,255,227,129,192,255,255,255,227,129,192,255,255,255,227,129,192,0,14,0,227,129,192,0,14,0,227,129,192,0,14,0,227,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,15,255,224,1,192,0,15,255,224,1,192,0,15,255,224,1,192,255,254,0,0,113,192,255,254,0,0,113,192,255,254,0,0,113,192,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0, + // 0x5236 制 + 54,82,42,48,32,48,0,250,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,255,255,227,129,192,3,255,255,227,129,192,3,255,255,227,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,255,255,255,255,129,192,255,255,255,255,129,192,255,255,255,255,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,3,255,255,227,129,192,3,255,255,227,129,192,3,255,255,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,248,224,1,192,3,129,248,224,1,192,3,129,248,224,1,192,3,129,199,0,1,192,3,129,199,0,1,192,3,129,199,0,1,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0, + // 0x5237 刷 + 55,82,45,48,32,48,0,250,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,3,255,255,252,0,56,3,255,255,252,0,56,3,255,255,252,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,255,255,252,112,56,3,255,255,252,112,56,3,255,255,252,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,255,255,252,112,56,3,255,255,252,112,56,3,255,255,252,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,28,112,56,224,112,63,28,0,56,224,112,63,28,0,56,224,112,63,28,0,56,0,112,56,224,0,56,0,112,56,224,0,56,0,112,56,224,0,56,0,0,56,0,14,56,0,0,56,0,14,56,0,0,56,0,14,56,0,0,56,0,1,192,0,0,56,0,1,192,0,0,56,0,1,192, + // 0x5275 創 + 117,82,42,48,32,48,0,250,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,15,192,0,1,192,0,15,192,0,1,192,0,15,192,0,1,192,0,112,56,0,1,192,0,112,56,0,1,192,0,112,56,0,1,192,3,142,7,3,129,192,3,142,7,3,129,192,3,142,7,3,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,227,129,192,227,255,255,3,129,192,227,255,255,3,129,192,227,255,255,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,255,255,3,129,192,3,255,255,3,129,192,3,255,255,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,255,255,3,129,192,3,255,255,3,129,192,3,255,255,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,255,255,3,129,192,3,255,255,3,129,192,3,255,255,3,129,192,28,112,7,0,1,192,28,112,7,0,1,192,28,112,7,0,1,192,28,112,7,0,1,192,28,112,7,0,1,192,28,112,7,0,1,192,224,127,255,0,113,192,224,127,255,0,113,192,224,127,255,0,113,192,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0, + // 0x529b 力 + 155,82,36,48,240,48,3,250,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112,0,112,0,0,112,0,112,0,0,112,0,112,0,0,112,0,112,0,0,112,0,112,0,0,112,0,112,0,0,112,3,128,7,0,112,3,128,7,0,112,3,128,7,0,112,28,0,0,227,128,28,0,0,227,128,28,0,0,227,128,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0, + // 0x52a0 加 + 160,82,42,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,31,255,192,0,112,0,31,255,192,0,112,0,31,255,192,255,255,248,28,1,192,255,255,248,28,1,192,255,255,248,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,31,255,192,3,128,56,31,255,192,3,128,56,31,255,192,28,14,56,28,1,192,28,14,56,28,1,192,28,14,56,28,1,192,224,1,192,0,0,0,224,1,192,0,0,0,224,1,192,0,0,0, + // 0x52d5 動 + 213,82,42,48,32,48,0,250,0,15,255,3,128,0,0,15,255,3,128,0,0,15,255,3,128,0,31,254,0,3,128,0,31,254,0,3,128,0,31,254,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,255,255,255,227,128,0,255,255,255,227,128,0,255,255,255,227,128,0,0,14,0,31,255,192,0,14,0,31,255,192,0,14,0,31,255,192,31,255,255,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,28,14,7,3,129,192,28,14,7,3,129,192,28,14,7,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,28,14,7,3,129,192,28,14,7,3,129,192,28,14,7,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,15,255,252,1,192,0,15,255,252,1,192,0,15,255,252,1,192,255,254,0,224,113,192,255,254,0,224,113,192,255,254,0,224,113,192,28,0,7,0,14,0,28,0,7,0,14,0,28,0,7,0,14,0, + // 0x5316 化 + 22,83,45,48,32,48,0,250,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,1,192,0,14,0,224,1,192,0,14,0,224,1,192,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,3,240,0,227,128,0,3,240,0,227,128,0,3,240,0,227,128,0,3,240,0,252,0,0,3,240,0,252,0,0,3,240,0,252,0,0,28,112,0,224,0,0,28,112,0,224,0,0,28,112,0,224,0,0,224,112,7,224,0,0,224,112,7,224,0,0,224,112,7,224,0,0,0,112,56,224,0,0,0,112,56,224,0,0,0,112,56,224,0,0,0,113,192,224,0,0,0,113,192,224,0,0,0,113,192,224,0,0,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,31,255,248,0,112,0,31,255,248,0,112,0,31,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x534a 半 + 74,83,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x5354 協 + 84,83,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,63,255,255,192,3,128,63,255,255,192,3,128,63,255,255,192,3,128,0,224,1,192,3,128,0,224,1,192,3,128,0,224,1,192,255,254,0,224,1,192,255,254,0,224,1,192,255,254,0,224,1,192,3,128,7,0,113,192,3,128,7,0,113,192,3,128,7,0,113,192,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,143,255,227,255,248,3,143,255,227,255,248,3,143,255,227,255,248,3,129,192,224,112,56,3,129,192,224,112,56,3,129,192,224,112,56,3,129,192,224,112,56,3,129,192,224,112,56,3,129,192,224,112,56,3,129,192,224,112,56,3,129,192,224,112,56,3,129,192,224,112,56,3,142,0,227,128,56,3,142,0,227,128,56,3,142,0,227,128,56,3,142,56,227,142,56,3,142,56,227,142,56,3,142,56,227,142,56,3,240,7,28,1,192,3,240,7,28,1,192,3,240,7,28,1,192, + // 0x5361 卡 + 97,83,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x5370 印 + 112,83,39,45,225,48,3,250,0,15,192,0,0,0,15,192,0,0,0,15,192,0,0,255,240,7,255,254,255,240,7,255,254,255,240,7,255,254,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,255,255,199,0,14,255,255,199,0,14,255,255,199,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,127,199,28,112,224,127,199,28,112,224,127,199,28,112,255,128,7,3,128,255,128,7,3,128,255,128,7,3,128,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0,0,0,7,0,0, + // 0x5378 卸 + 120,83,42,48,32,48,0,250,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,255,255,31,255,192,3,255,255,31,255,192,3,255,255,31,255,192,28,14,0,28,1,192,28,14,0,28,1,192,28,14,0,28,1,192,224,14,0,28,1,192,224,14,0,28,1,192,224,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,31,255,255,28,1,192,31,255,255,28,1,192,31,255,255,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,3,143,248,28,1,192,3,143,248,28,1,192,3,143,248,28,1,192,3,142,0,28,1,192,3,142,0,28,1,192,3,142,0,28,1,192,3,142,0,28,113,192,3,142,0,28,113,192,3,142,0,28,113,192,3,143,255,28,14,0,3,143,255,28,14,0,3,143,255,28,14,0,255,240,0,28,0,0,255,240,0,28,0,0,255,240,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x537b 卻 + 123,83,42,48,32,48,0,250,0,113,192,0,0,0,0,113,192,0,0,0,0,113,192,0,0,0,0,112,56,0,0,0,0,112,56,0,0,0,0,112,56,0,0,0,3,128,7,31,255,192,3,128,7,31,255,192,3,128,7,31,255,192,28,14,7,28,1,192,28,14,7,28,1,192,28,14,7,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,28,0,7,28,1,192,28,0,7,28,1,192,28,0,7,28,1,192,227,255,248,28,1,192,227,255,248,28,1,192,227,255,248,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,113,192,3,128,56,28,113,192,3,128,56,28,113,192,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,3,255,248,28,0,0,3,255,248,28,0,0,3,255,248,28,0,0,3,128,56,28,0,0,3,128,56,28,0,0,3,128,56,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x539f 原 + 159,83,45,45,14,48,0,250,3,255,255,255,255,248,3,255,255,255,255,248,3,255,255,255,255,248,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,3,129,255,255,240,0,3,129,255,255,240,0,3,129,255,255,240,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,255,255,240,0,3,129,255,255,240,0,3,129,255,255,240,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,255,255,240,0,3,129,255,255,240,0,3,129,255,255,240,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,129,192,224,112,0,3,129,192,224,112,0,3,129,192,224,112,0,28,14,0,224,14,0,28,14,0,224,14,0,28,14,0,224,14,0,28,112,56,224,1,192,28,112,56,224,1,192,28,112,56,224,1,192,224,0,7,0,0,0,224,0,7,0,0,0,224,0,7,0,0,0, + // 0x53cd 反 + 205,83,45,48,32,48,0,250,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,255,254,0,0,0,0,255,254,0,0,0,0,255,254,0,3,255,255,0,0,0,3,255,255,0,0,0,3,255,255,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,7,28,0,0,3,128,7,28,0,0,3,128,7,28,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,28,0,7,28,0,0,28,0,7,28,0,0,28,0,7,28,0,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,224,15,192,0,126,0,224,15,192,0,126,0,224,15,192,0,126,0,3,240,0,0,1,248,3,240,0,0,1,248,3,240,0,0,1,248, + // 0x53d6 取 + 214,83,45,45,14,48,0,250,255,255,255,224,0,0,255,255,255,224,0,0,255,255,255,224,0,0,3,128,56,255,255,192,3,128,56,255,255,192,3,128,56,255,255,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,129,255,227,142,0,3,129,255,227,142,0,3,129,255,227,142,0,255,254,56,0,112,0,255,254,56,0,112,0,255,254,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,28,0,56,0,112,0,0,0,56,3,142,0,0,0,56,3,142,0,0,0,56,3,142,0,0,0,56,28,1,192,0,0,56,28,1,192,0,0,56,28,1,192,0,0,56,224,0,56,0,0,56,224,0,56,0,0,56,224,0,56, + // 0x53f0 台 + 240,83,39,48,240,48,3,250,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,28,0,0,0,14,28,0,0,0,14,28,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,3,255,255,255,128,3,255,255,255,128,3,255,255,255,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128, + // 0x5408 合 + 8,84,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,3,240,0,0,126,0,3,240,0,0,126,0,3,240,0,0,126,0,252,15,255,255,129,248,252,15,255,255,129,248,252,15,255,255,129,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x5426 否 + 38,84,45,45,14,48,0,250,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,1,199,31,128,0,0,1,199,31,128,0,0,1,199,31,128,0,0,14,7,0,126,0,0,14,7,0,126,0,0,14,7,0,126,0,3,240,7,0,1,192,3,240,7,0,1,192,3,240,7,0,1,192,252,0,7,0,0,56,252,0,7,0,0,56,252,0,7,0,0,56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x544a 告 + 74,84,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,127,255,255,254,0,0,127,255,255,254,0,0,127,255,255,254,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,28,0,7,0,0,0,28,0,7,0,0,0,28,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x547d 命 + 125,84,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,3,241,255,252,126,0,3,241,255,252,126,0,3,241,255,252,126,0,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,248,255,254,0,3,255,248,255,254,0,3,255,248,255,254,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,255,248,227,142,0,3,255,248,227,142,0,3,255,248,227,142,0,3,128,56,224,112,0,3,128,56,224,112,0,3,128,56,224,112,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0, + // 0x548c 和 + 140,84,42,48,32,48,0,250,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,15,248,0,0,0,0,15,248,0,0,0,0,15,248,0,0,0,31,254,0,0,0,0,31,254,0,0,0,0,31,254,0,0,0,0,0,14,0,31,255,192,0,14,0,31,255,192,0,14,0,31,255,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,255,255,255,28,1,192,255,255,255,28,1,192,255,255,255,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,126,0,28,1,192,0,126,0,28,1,192,0,126,0,28,1,192,0,127,192,28,1,192,0,127,192,28,1,192,0,127,192,28,1,192,3,142,56,28,1,192,3,142,56,28,1,192,3,142,56,28,1,192,3,142,56,28,1,192,3,142,56,28,1,192,3,142,56,28,1,192,28,14,0,28,1,192,28,14,0,28,1,192,28,14,0,28,1,192,224,14,0,31,255,192,224,14,0,31,255,192,224,14,0,31,255,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0, + // 0x555f 啟 + 95,85,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,3,255,255,3,128,0,3,255,255,3,128,0,3,255,255,3,128,0,3,128,7,3,255,248,3,128,7,3,255,248,3,128,7,3,255,248,3,128,7,28,1,192,3,128,7,28,1,192,3,128,7,28,1,192,3,128,7,28,1,192,3,128,7,28,1,192,3,128,7,28,1,192,3,255,255,28,1,192,3,255,255,28,1,192,3,255,255,28,1,192,3,128,0,227,129,192,3,128,0,227,129,192,3,128,0,227,129,192,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,255,255,3,142,0,3,255,255,3,142,0,3,255,255,3,142,0,3,240,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,28,112,7,0,112,0,28,112,7,0,112,0,28,112,7,0,112,0,28,112,7,3,142,0,28,112,7,3,142,0,28,112,7,3,142,0,224,127,255,3,142,0,224,127,255,3,142,0,224,127,255,3,142,0,0,112,7,28,1,192,0,112,7,28,1,192,0,112,7,28,1,192,0,0,0,224,0,56,0,0,0,224,0,56,0,0,0,224,0,56, + // 0x55ae 單 + 174,85,45,45,14,48,0,250,31,255,248,255,255,192,31,255,248,255,255,192,31,255,248,255,255,192,28,0,56,224,1,192,28,0,56,224,1,192,28,0,56,224,1,192,28,0,56,224,1,192,28,0,56,224,1,192,28,0,56,224,1,192,31,255,248,255,255,192,31,255,248,255,255,192,31,255,248,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x5634 嘴 + 52,86,45,48,32,48,0,250,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,0,0,56,224,113,192,0,0,56,224,113,192,0,0,56,224,113,192,255,240,56,252,126,0,255,240,56,252,126,0,255,240,56,252,126,0,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,252,112,56,224,112,56,252,112,56,224,112,56,252,112,56,224,113,255,0,15,248,224,113,255,0,15,248,224,113,255,0,15,248,224,112,7,255,240,0,224,112,7,255,240,0,224,112,7,255,240,0,224,112,56,0,112,0,224,112,56,0,112,0,224,112,56,0,112,0,224,113,255,255,255,192,224,113,255,255,255,192,224,113,255,255,255,192,224,126,56,28,1,192,224,126,56,28,1,192,224,126,56,28,1,192,255,240,63,255,255,192,255,240,63,255,255,192,255,240,63,255,255,192,224,112,56,28,1,192,224,112,56,28,1,192,224,112,56,28,1,192,0,0,63,255,255,192,0,0,63,255,255,192,0,0,63,255,255,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192,28,113,192,0,1,192,28,113,192,0,1,192,28,113,192,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + // 0x5668 器 + 104,86,45,45,14,48,0,250,3,255,248,31,255,192,3,255,248,31,255,192,3,255,248,31,255,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,255,248,31,255,192,3,255,248,31,255,192,3,255,248,31,255,192,0,0,7,3,128,0,0,0,7,3,128,0,0,0,7,3,128,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,15,192,31,128,0,0,15,192,31,128,0,0,15,192,31,128,0,3,240,0,0,126,0,3,240,0,0,126,0,3,240,0,0,126,0,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248,3,255,248,31,255,192,3,255,248,31,255,192,3,255,248,31,255,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,255,248,31,255,192,3,255,248,31,255,192,3,255,248,31,255,192, + // 0x5674 噴 + 116,86,42,48,32,48,3,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,255,240,0,28,0,0,255,240,0,28,0,0,255,240,0,28,0,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,113,255,255,255,192,224,113,255,255,255,192,224,113,255,255,255,192,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,63,255,254,0,224,112,63,255,254,0,224,112,63,255,254,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,63,255,254,0,224,112,63,255,254,0,224,112,63,255,254,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,255,240,63,255,254,0,255,240,63,255,254,0,255,240,63,255,254,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x56de 回 + 222,86,36,42,210,48,6,253,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,127,255,224,112,224,127,255,224,112,224,127,255,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,127,255,224,112,224,127,255,224,112,224,127,255,224,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,255,255,255,255,240,255,255,255,255,240,255,255,255,255,240,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x56e0 因 + 224,86,39,45,225,48,3,250,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,227,255,255,255,142,227,255,255,255,142,227,255,255,255,142,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,1,192,224,14,224,1,192,224,14,224,1,192,224,14,224,14,0,28,14,224,14,0,28,14,224,14,0,28,14,224,112,0,3,142,224,112,0,3,142,224,112,0,3,142,227,128,0,3,142,227,128,0,3,142,227,128,0,3,142,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14, + // 0x56fa 固 + 250,86,39,45,225,48,3,250,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,227,255,255,255,142,227,255,255,255,142,227,255,255,255,142,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,127,255,252,14,224,127,255,252,14,224,127,255,252,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,127,255,252,14,224,127,255,252,14,224,127,255,252,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14, + // 0x5716 圖 + 22,87,39,48,240,48,3,250,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,224,127,255,252,14,224,127,255,252,14,224,127,255,252,14,224,112,0,28,14,224,112,0,28,14,224,112,0,28,14,224,127,255,252,14,224,127,255,252,14,224,127,255,252,14,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,227,255,255,255,142,227,255,255,255,142,227,255,255,255,142,227,128,0,3,142,227,128,0,3,142,227,128,0,3,142,227,143,255,227,142,227,143,255,227,142,227,143,255,227,142,227,142,0,227,142,227,142,0,227,142,227,142,0,227,142,227,255,255,255,142,227,255,255,255,142,227,255,255,255,142,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14, + // 0x5728 在 + 40,87,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,240,0,28,0,0,3,240,0,28,0,0,3,240,0,28,0,0,28,113,255,255,255,192,28,113,255,255,255,192,28,113,255,255,255,192,224,112,0,28,0,0,224,112,0,28,0,0,224,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,127,255,255,255,248,0,127,255,255,255,248,0,127,255,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x578b 型 + 139,87,45,45,14,48,0,253,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,31,255,255,224,1,192,31,255,255,224,1,192,31,255,255,224,1,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,255,255,255,227,129,192,255,255,255,227,129,192,255,255,255,227,129,192,0,112,56,3,129,192,0,112,56,3,129,192,0,112,56,3,129,192,3,128,56,0,1,192,3,128,56,0,1,192,3,128,56,0,1,192,3,128,56,0,113,192,3,128,56,0,113,192,3,128,56,0,113,192,28,0,7,0,14,0,28,0,7,0,14,0,28,0,7,0,14,0,224,0,7,0,0,0,224,0,7,0,0,0,224,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x57f7 執 + 247,87,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,31,255,192,28,0,0,31,255,192,28,0,0,31,255,192,28,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,255,255,248,28,14,0,255,255,248,28,14,0,255,255,248,28,14,0,28,1,192,28,14,0,28,1,192,28,14,0,28,1,192,28,14,0,3,142,7,28,14,0,3,142,7,28,14,0,3,142,7,28,14,0,31,255,192,252,14,0,31,255,192,252,14,0,31,255,192,252,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,227,142,0,0,112,0,227,142,0,0,112,0,227,142,0,255,255,248,227,142,0,255,255,248,227,142,0,255,255,248,227,142,0,0,112,0,224,14,56,0,112,0,224,14,56,0,112,0,224,14,56,0,112,7,0,14,56,0,112,7,0,14,56,0,112,7,0,14,56,0,112,7,0,1,248,0,112,7,0,1,248,0,112,7,0,1,248,0,112,56,0,0,56,0,112,56,0,0,56,0,112,56,0,0,56, + // 0x584a 塊 + 74,88,45,48,32,48,0,250,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,63,255,255,192,3,128,63,255,255,192,3,128,63,255,255,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,255,254,63,255,255,192,255,254,63,255,255,192,255,254,63,255,255,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,3,129,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,63,255,255,192,3,128,63,255,255,192,3,128,63,255,255,192,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,227,142,0,3,128,0,227,142,0,3,128,0,227,142,0,3,254,0,227,241,192,3,254,0,227,241,192,3,254,0,227,241,192,255,128,7,3,255,192,255,128,7,3,255,192,255,128,7,3,255,192,28,0,7,3,128,56,28,0,7,3,128,56,28,0,7,3,128,56,0,0,56,3,128,56,0,0,56,3,128,56,0,0,56,3,128,56,0,1,192,0,127,248,0,1,192,0,127,248,0,1,192,0,127,248, + // 0x586b 填 + 107,88,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,255,254,56,0,14,0,255,254,56,0,14,0,255,254,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,254,56,0,14,0,3,254,56,0,14,0,3,254,56,0,14,0,255,143,255,255,255,248,255,143,255,255,255,248,255,143,255,255,255,248,28,0,7,0,112,0,28,0,7,0,112,0,28,0,7,0,112,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + // 0x588a 墊 + 138,88,45,45,14,48,0,253,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,31,255,248,3,128,0,31,255,248,3,128,0,31,255,248,3,128,0,0,14,0,255,254,0,0,14,0,255,254,0,0,14,0,255,254,0,255,255,255,3,142,0,255,255,255,3,142,0,255,255,255,3,142,0,0,113,192,3,142,0,0,113,192,3,142,0,0,113,192,3,142,0,31,255,255,31,142,56,31,255,255,31,142,56,31,255,255,31,142,56,0,14,0,3,142,56,0,14,0,3,142,56,0,14,0,3,142,56,255,255,255,28,113,248,255,255,255,28,113,248,255,255,255,28,113,248,0,14,0,224,0,56,0,14,0,224,0,56,0,14,0,224,0,56,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x5916 外 + 22,89,42,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,255,248,28,0,0,3,255,248,28,0,0,3,255,248,28,0,0,3,128,56,31,128,0,3,128,56,31,128,0,3,128,56,31,128,0,28,0,56,28,112,0,28,0,56,28,112,0,28,0,56,28,112,0,28,0,56,28,14,0,28,0,56,28,14,0,28,0,56,28,14,0,227,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0, + // 0x591a 多 + 26,89,36,48,240,48,3,250,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,15,255,255,128,0,15,255,255,128,0,15,255,255,128,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,31,240,0,224,0,31,240,0,224,0,31,240,0,224,0,0,14,7,0,0,0,14,7,0,0,0,14,7,0,0,0,1,248,224,0,0,1,248,224,0,0,1,248,224,0,0,126,7,0,0,0,126,7,0,0,0,126,7,0,0,255,128,63,255,240,255,128,63,255,240,255,128,63,255,240,0,1,192,0,112,0,1,192,0,112,0,1,192,0,112,0,126,0,3,128,0,126,0,3,128,0,126,0,3,128,31,129,192,28,0,31,129,192,28,0,31,129,192,28,0,0,0,56,224,0,0,0,56,224,0,0,0,56,224,0,0,0,63,0,0,0,0,63,0,0,0,0,63,0,0,0,127,192,0,0,0,127,192,0,0,0,127,192,0,0,255,128,0,0,0,255,128,0,0,0,255,128,0,0,0, + // 0x5920 夠 + 32,89,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,255,248,28,0,0,3,255,248,28,0,0,3,255,248,28,0,0,28,0,56,31,255,248,28,0,56,31,255,248,28,0,56,31,255,248,227,129,192,224,0,56,227,129,192,224,0,56,227,129,192,224,0,56,0,126,7,0,0,56,0,126,7,0,0,56,0,126,7,0,0,56,0,112,0,31,254,56,0,112,0,31,254,56,0,112,0,31,254,56,3,142,0,28,14,56,3,142,0,28,14,56,3,142,0,28,14,56,252,15,255,28,14,56,252,15,255,28,14,56,252,15,255,28,14,56,0,112,7,28,14,56,0,112,7,28,14,56,0,112,7,28,14,56,3,240,56,31,254,56,3,240,56,31,254,56,3,240,56,31,254,56,28,14,56,28,14,56,28,14,56,28,14,56,28,14,56,28,14,56,0,1,192,0,0,56,0,1,192,0,0,56,0,1,192,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,3,240,0,0,113,192,3,240,0,0,113,192,3,240,0,0,113,192,252,0,0,0,14,0,252,0,0,0,14,0,252,0,0,0,14,0, + // 0x5927 大 + 39,89,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248, + // 0x5929 天 + 41,89,45,45,14,48,0,250,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,252,0,0,0,1,248,252,0,0,0,1,248,252,0,0,0,1,248, + // 0x5931 失 + 49,89,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,127,255,255,254,0,0,127,255,255,254,0,0,127,255,255,254,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,28,0,7,0,0,0,28,0,7,0,0,0,28,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,128,0,0,15,192,31,128,0,0,15,192,31,128,0,0,15,192, + // 0x59cb 始 + 203,89,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,255,255,192,28,14,0,255,255,192,28,14,0,255,255,192,28,14,0,3,129,192,224,1,192,3,129,192,224,1,192,3,129,192,224,1,192,3,129,199,255,255,248,3,129,199,255,255,248,3,129,199,255,255,248,3,129,192,224,0,56,3,129,192,224,0,56,3,129,192,224,0,56,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,28,14,0,255,255,192,28,14,0,255,255,192,28,14,0,255,255,192,3,142,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,224,0,0,255,255,192,224,0,0,255,255,192,224,0,0,255,255,192,0,0,0,224,1,192,0,0,0,224,1,192,0,0,0,224,1,192, + // 0x5a92 媒 + 146,90,45,48,32,48,0,250,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,255,254,7,0,112,0,255,254,7,0,112,0,255,254,7,0,112,0,3,142,7,255,240,0,3,142,7,255,240,0,3,142,7,255,240,0,3,142,7,0,112,0,3,142,7,0,112,0,3,142,7,0,112,0,3,142,7,255,240,0,3,142,7,255,240,0,3,142,7,255,240,0,28,14,0,28,0,0,28,14,0,28,0,0,28,14,0,28,0,0,28,15,255,255,255,248,28,15,255,255,255,248,28,15,255,255,255,248,3,142,0,28,0,0,3,142,0,28,0,0,3,142,0,28,0,0,0,112,0,255,128,0,0,112,0,255,128,0,0,112,0,255,128,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,7,28,112,0,3,142,56,28,15,248,3,142,56,28,15,248,3,142,56,28,15,248,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0, + // 0x5b50 子 + 80,91,45,45,14,48,0,250,31,255,255,255,254,0,31,255,255,255,254,0,31,255,255,255,254,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x5b58 存 + 88,91,45,48,32,48,0,250,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,240,0,3,128,0,3,240,0,3,128,0,3,240,0,3,128,0,28,112,0,28,0,0,28,112,0,28,0,0,28,112,0,28,0,0,224,113,255,255,255,248,224,113,255,255,255,248,224,113,255,255,255,248,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,7,28,0,0,0,112,7,28,0,0,0,112,7,28,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0, + // 0x5b89 安 + 137,91,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,255,192,3,255,255,255,255,192,3,255,255,255,255,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,126,0,28,0,0,0,126,0,28,0,0,0,126,0,28,0,0,0,1,248,28,0,0,0,1,248,28,0,0,0,1,248,28,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,56,31,128,0,0,0,56,31,128,0,0,0,56,31,128,0,0,15,192,0,112,0,0,15,192,0,112,0,0,15,192,0,112,0,31,240,0,0,14,0,31,240,0,0,14,0,31,240,0,0,14,0, + // 0x5b8c 完 + 140,91,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,31,128,0,3,255,192,31,128,0,3,255,192,31,128,0,3,255,192, + // 0x5b9a 定 + 154,91,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,3,142,7,0,0,0,3,142,7,0,0,0,3,142,7,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0, + // 0x5ba2 客 + 162,91,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,14,0,0,1,192,224,14,0,0,1,192,224,14,0,0,1,192,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,143,192,28,0,0,3,143,192,28,0,0,3,143,192,28,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,127,192,31,240,0,0,127,192,31,240,0,0,127,192,31,240,0,255,128,0,0,15,248,255,128,0,0,15,248,255,128,0,0,15,248,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x5bb9 容 + 185,91,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,3,240,0,0,126,0,3,240,0,0,126,0,3,240,0,0,126,0,252,127,255,255,241,248,252,127,255,255,241,248,252,127,255,255,241,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x5c0d 對 + 13,92,45,48,32,48,0,250,0,113,192,0,14,0,0,113,192,0,14,0,0,113,192,0,14,0,0,113,192,0,14,0,0,113,192,0,14,0,0,113,192,0,14,0,28,113,199,0,14,0,28,113,199,0,14,0,28,113,199,0,14,0,3,241,248,0,14,0,3,241,248,0,14,0,3,241,248,0,14,0,0,113,192,31,255,248,0,113,192,31,255,248,0,113,192,31,255,248,255,255,255,0,14,0,255,255,255,0,14,0,255,255,255,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,0,113,192,3,142,0,0,113,192,3,142,0,0,113,192,3,142,0,31,255,255,3,142,0,31,255,255,3,142,0,31,255,255,3,142,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,3,255,248,0,14,0,3,255,248,0,14,0,3,255,248,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,15,255,0,14,0,0,15,255,0,14,0,0,15,255,0,14,0,31,254,0,3,142,0,31,254,0,3,142,0,31,254,0,3,142,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0, + // 0x5c0f 小 + 15,92,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,0,56,3,128,7,0,0,56,3,128,7,0,0,56,28,0,7,0,0,56,28,0,7,0,0,56,28,0,7,0,0,56,224,0,7,0,0,56,224,0,7,0,0,56,224,0,7,0,0,56,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x5c31 就 + 49,92,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,255,255,248,28,14,0,255,255,248,28,14,0,255,255,248,28,14,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,31,255,199,255,255,248,31,255,199,255,255,248,31,255,199,255,255,248,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,31,255,192,28,112,0,31,255,192,28,112,0,31,255,192,28,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,28,113,192,224,112,0,28,113,192,224,112,0,28,113,192,224,112,0,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,224,112,56,0,112,7,0,112,56,0,112,7,0,112,56,0,112,7,0,112,56,28,112,7,0,15,248,28,112,7,0,15,248,28,112,7,0,15,248,3,128,56,0,0,0,3,128,56,0,0,0,3,128,56,0,0,0, + // 0x5de5 工 + 229,93,45,36,216,48,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x5dee 差 + 238,93,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,113,255,255,254,0,0,113,255,255,254,0,0,113,255,255,254,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,0,127,255,255,255,192,0,127,255,255,255,192,0,127,255,255,255,192, + // 0x5df2 已 + 242,93,36,42,210,48,6,253,255,255,255,252,0,255,255,255,252,0,255,255,255,252,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,255,255,255,252,0,255,255,255,252,0,255,255,255,252,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,31,255,255,255,240,31,255,255,255,240,31,255,255,255,240, + // 0x5e73 平 + 115,94,45,45,14,48,0,250,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,0,112,0,0,14,7,3,128,0,0,14,7,3,128,0,0,14,7,3,128,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x5e8a 床 + 138,94,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,3,255,255,255,255,248,3,255,255,255,255,248,3,255,255,255,255,248,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,143,255,255,255,192,3,143,255,255,255,192,3,143,255,255,255,192,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,7,252,0,0,3,128,7,252,0,0,3,128,7,252,0,0,3,128,56,227,128,0,3,128,56,227,128,0,3,128,56,227,128,0,3,128,56,227,128,0,3,128,56,227,128,0,3,128,56,227,128,0,3,129,192,224,112,0,3,129,192,224,112,0,3,129,192,224,112,0,28,14,0,224,14,0,28,14,0,224,14,0,28,14,0,224,14,0,28,112,0,224,1,248,28,112,0,224,1,248,28,112,0,224,1,248,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0, + // 0x5ea6 度 + 166,94,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,3,255,255,255,255,248,3,255,255,255,255,248,3,255,255,255,255,248,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,255,255,255,255,192,3,255,255,255,255,192,3,255,255,255,255,192,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,56,3,128,0,3,128,63,255,128,0,3,128,63,255,128,0,3,128,63,255,128,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,143,255,255,240,0,3,143,255,255,240,0,3,143,255,255,240,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,7,252,0,0,28,0,7,252,0,0,28,0,7,252,0,0,224,1,248,3,240,0,224,1,248,3,240,0,224,1,248,3,240,0,3,254,0,0,15,248,3,254,0,0,15,248,3,254,0,0,15,248, + // 0x5ee2 廢 + 226,94,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,3,255,255,255,255,248,3,255,255,255,255,248,3,255,255,255,255,248,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,143,255,28,112,0,3,143,255,28,112,0,3,143,255,28,112,0,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,142,56,0,126,0,3,142,56,0,126,0,3,142,56,0,126,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,254,63,31,241,248,3,254,63,31,241,248,3,254,63,31,241,248,3,128,7,28,112,0,3,128,7,28,112,0,3,128,7,28,112,0,3,143,255,224,15,192,3,143,255,224,15,192,3,143,255,224,15,192,3,142,0,31,254,0,3,142,0,31,254,0,3,142,0,31,254,0,3,143,255,28,14,0,3,143,255,28,14,0,3,143,255,28,14,0,28,0,7,3,240,0,28,0,7,3,240,0,28,0,7,3,240,0,28,1,199,28,14,0,28,1,199,28,14,0,28,1,199,28,14,0,224,0,56,224,1,192,224,0,56,224,1,192,224,0,56,224,1,192, + // 0x5efa 建 + 250,94,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,254,63,255,254,0,255,254,63,255,254,0,255,254,63,255,254,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,31,254,0,28,0,0,31,254,0,28,0,0,31,254,0,28,0,0,0,14,63,255,254,0,0,14,63,255,254,0,0,14,63,255,254,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,28,14,0,28,0,0,28,14,0,28,0,0,28,14,0,28,0,0,3,241,255,255,255,192,3,241,255,255,255,192,3,241,255,255,255,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,143,192,28,0,0,3,143,192,28,0,0,3,143,192,28,0,0,28,0,63,255,255,248,28,0,63,255,255,248,28,0,63,255,255,248,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0, + // 0x5f15 引 + 21,95,36,48,240,48,3,250,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,255,255,248,0,112,255,255,248,0,112,255,255,248,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,31,255,248,0,112,31,255,248,0,112,31,255,248,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,28,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,255,255,248,0,112,255,255,248,0,112,255,255,248,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112,0,113,192,0,112,0,113,192,0,112,0,113,192,0,112,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112, + // 0x5f85 待 + 133,95,45,48,32,48,0,250,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,63,255,255,192,3,128,63,255,255,192,3,128,63,255,255,192,28,14,0,28,0,0,28,14,0,28,0,0,28,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,3,240,0,0,112,0,3,240,0,0,112,0,3,240,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,224,113,255,255,255,248,224,113,255,255,255,248,224,113,255,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0, + // 0x5f8c 後 + 140,95,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,28,14,63,255,128,0,28,14,63,255,128,0,28,14,63,255,128,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,3,240,63,255,255,192,3,240,63,255,255,192,3,240,63,255,255,192,28,112,0,224,1,192,28,112,0,224,1,192,28,112,0,224,1,192,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,63,0,14,0,0,112,63,0,14,0,0,112,63,0,14,0,0,113,192,224,112,0,0,113,192,224,112,0,0,113,192,224,112,0,0,112,0,31,128,0,0,112,0,31,128,0,0,112,0,31,128,0,0,112,7,224,126,0,0,112,7,224,126,0,0,112,7,224,126,0,0,113,248,0,1,248,0,113,248,0,1,248,0,113,248,0,1,248, + // 0x5f91 徑 + 145,95,45,48,32,48,0,250,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,63,255,255,192,0,14,63,255,255,192,0,14,63,255,255,192,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,28,14,56,28,14,0,28,14,56,28,14,0,28,14,56,28,14,0,0,15,192,224,112,0,0,15,192,224,112,0,0,15,192,224,112,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,3,240,7,3,129,192,3,240,7,3,129,192,3,240,7,3,129,192,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,224,112,63,255,255,192,224,112,63,255,255,192,224,112,63,255,255,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x5f9e 從 + 158,95,45,48,32,48,0,250,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,28,14,7,28,113,192,28,14,7,28,113,192,28,14,7,28,113,192,0,14,56,3,128,56,0,14,56,3,128,56,0,14,56,3,128,56,0,113,192,28,0,56,0,113,192,28,0,56,0,113,192,28,0,56,3,240,0,3,128,0,3,240,0,3,128,0,3,240,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,224,112,7,3,128,0,224,112,7,3,128,0,224,112,7,3,128,0,0,112,7,3,255,192,0,112,7,3,255,192,0,112,7,3,255,192,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,56,227,128,0,0,112,56,227,128,0,0,112,56,227,128,0,0,112,56,31,128,0,0,112,56,31,128,0,0,112,56,31,128,0,0,113,192,3,255,248,0,113,192,3,255,248,0,113,192,3,255,248,0,126,0,0,0,0,0,126,0,0,0,0,0,126,0,0,0,0, + // 0x5fa9 復 + 169,95,45,48,32,48,0,250,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,14,7,0,0,0,0,112,7,255,255,248,0,112,7,255,255,248,0,112,7,255,255,248,3,128,56,0,0,0,3,128,56,0,0,0,3,128,56,0,0,0,28,15,199,255,255,192,28,15,199,255,255,192,28,15,199,255,255,192,0,14,7,0,1,192,0,14,7,0,1,192,0,14,7,0,1,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,3,240,7,0,1,192,3,240,7,0,1,192,3,240,7,0,1,192,28,112,7,255,255,192,28,112,7,255,255,192,28,112,7,255,255,192,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,56,224,112,0,0,112,56,224,112,0,0,112,56,224,112,0,0,112,0,31,128,0,0,112,0,31,128,0,0,112,0,31,128,0,0,112,7,224,126,0,0,112,7,224,126,0,0,112,7,224,126,0,0,113,248,0,1,248,0,113,248,0,1,248,0,113,248,0,1,248, + // 0x5fae 微 + 174,95,45,48,32,48,0,250,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,113,199,28,14,0,0,113,199,28,14,0,0,113,199,28,14,0,3,129,199,28,14,0,3,129,199,28,14,0,3,129,199,28,14,0,28,1,199,28,112,0,28,1,199,28,112,0,28,1,199,28,112,0,224,113,255,252,127,248,224,113,255,252,127,248,224,113,255,252,127,248,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,31,143,255,252,113,192,31,143,255,252,113,192,31,143,255,252,113,192,227,128,0,0,113,192,227,128,0,0,113,192,227,128,0,0,113,192,3,129,255,224,113,192,3,129,255,224,113,192,3,129,255,224,113,192,3,129,192,224,113,192,3,129,192,224,113,192,3,129,192,224,113,192,3,129,192,227,142,0,3,129,192,227,142,0,3,129,192,227,142,0,3,129,192,252,14,0,3,129,192,252,14,0,3,129,192,252,14,0,3,129,192,224,113,192,3,129,192,224,113,192,3,129,192,224,113,192,3,142,0,0,113,192,3,142,0,0,113,192,3,142,0,0,113,192,3,240,0,3,128,56,3,240,0,3,128,56,3,240,0,3,128,56, + // 0x5fc3 心 + 195,95,45,42,252,48,0,253,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,0,56,3,129,192,0,0,56,3,129,192,0,0,56,28,1,192,0,0,56,28,1,192,0,0,56,28,1,192,0,0,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,0,0,63,255,240,0,0,0,63,255,240,0,0,0,63,255,240,0, + // 0x6027 性 + 39,96,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,126,7,255,255,192,0,126,7,255,255,192,0,126,7,255,255,192,28,113,199,3,128,0,28,113,199,3,128,0,28,113,199,3,128,0,28,112,56,3,128,0,28,112,56,3,128,0,28,112,56,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x6062 恢 + 98,96,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,126,0,224,0,0,0,126,0,224,0,0,0,126,0,224,0,0,28,113,192,224,112,0,28,113,192,224,112,0,28,113,192,224,112,0,28,112,0,224,112,0,28,112,0,224,112,0,28,112,0,224,112,0,28,112,7,0,112,56,28,112,7,0,112,56,28,112,7,0,112,56,224,112,7,28,112,56,224,112,7,28,112,56,224,112,7,28,112,56,0,112,7,28,113,192,0,112,7,28,113,192,0,112,7,28,113,192,0,112,56,224,112,0,0,112,56,224,112,0,0,112,56,224,112,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,0,113,192,3,142,0,0,113,192,3,142,0,0,113,192,3,142,0,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,7,0,0,56,0,112,7,0,0,56,0,112,7,0,0,56, + // 0x606f 息 + 111,96,45,45,14,48,0,253,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,14,0,224,1,192,0,14,0,224,1,192,0,14,0,224,1,192,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,224,1,255,255,240,0,224,1,255,255,240,0,224,1,255,255,240,0, + // 0x61b6 憶 + 182,97,45,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,0,126,7,0,14,0,0,126,7,0,14,0,0,126,7,0,14,0,28,113,192,224,112,0,28,113,192,224,112,0,28,113,192,224,112,0,28,113,255,255,255,248,28,113,255,255,255,248,28,113,255,255,255,248,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,224,112,63,255,255,192,224,112,63,255,255,192,224,112,63,255,255,192,0,112,56,0,1,192,0,112,56,0,1,192,0,112,56,0,1,192,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,0,112,56,0,1,192,0,112,56,0,1,192,0,112,56,0,1,192,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,199,3,129,192,0,113,199,3,129,192,0,113,199,3,129,192,0,113,199,0,14,56,0,113,199,0,14,56,0,113,199,0,14,56,0,126,0,255,254,56,0,126,0,255,254,56,0,126,0,255,254,56, + // 0x61c9 應 + 201,97,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,3,255,255,255,255,248,3,255,255,255,255,248,3,255,255,255,255,248,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,3,129,192,255,255,248,3,129,192,255,255,248,3,129,192,255,255,248,3,143,199,224,112,0,3,143,199,224,112,0,3,143,199,224,112,0,3,241,192,255,255,192,3,241,192,255,255,192,3,241,192,255,255,192,3,129,192,224,112,0,3,129,192,224,112,0,3,129,192,224,112,0,3,129,192,255,255,192,3,129,192,255,255,192,3,129,192,255,255,192,3,129,192,224,112,0,3,129,192,224,112,0,3,129,192,224,112,0,3,129,192,255,255,248,3,129,192,255,255,248,3,129,192,255,255,248,3,129,192,224,0,0,3,129,192,224,0,0,3,129,192,224,0,0,28,0,56,28,1,192,28,0,56,28,1,192,28,0,56,28,1,192,28,112,56,28,14,56,28,112,56,28,14,56,28,112,56,28,14,56,224,112,56,0,14,56,224,112,56,0,14,56,224,112,56,0,14,56,3,128,7,255,254,0,3,128,7,255,254,0,3,128,7,255,254,0, + // 0x6210 成 + 16,98,45,48,32,48,0,250,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,255,255,255,255,248,3,255,255,255,255,248,3,255,255,255,255,248,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,255,248,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,142,56,3,240,56,3,142,56,3,240,56,3,142,56,3,240,56,28,1,192,28,14,56,28,1,192,28,14,56,28,1,192,28,14,56,28,0,0,224,1,248,28,0,0,224,1,248,28,0,0,224,1,248,224,0,7,0,0,56,224,0,7,0,0,56,224,0,7,0,0,56, + // 0x6236 戶 + 54,98,39,48,240,48,0,250,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,255,254,0,0,0,255,254,0,0,0,255,254,0,127,255,0,0,0,127,255,0,0,0,127,255,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,127,255,255,254,0,127,255,255,254,0,127,255,255,254,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14,0,127,255,255,254,0,127,255,255,254,0,127,255,255,254,0,112,0,0,14,0,112,0,0,14,0,112,0,0,14,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,0,0,0, + // 0x6240 所 + 64,98,45,48,32,48,0,250,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,1,255,0,127,192,0,1,255,0,127,192,0,1,255,0,127,192,3,254,0,255,128,0,3,254,0,255,128,0,3,254,0,255,128,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,255,248,224,0,0,3,255,248,224,0,0,3,255,248,224,0,0,3,128,56,255,255,248,3,128,56,255,255,248,3,128,56,255,255,248,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,255,248,224,14,0,3,255,248,224,14,0,3,255,248,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,28,0,7,0,14,0,28,0,7,0,14,0,28,0,7,0,14,0,28,0,7,0,14,0,28,0,7,0,14,0,28,0,7,0,14,0,224,0,56,0,14,0,224,0,56,0,14,0,224,0,56,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0, + // 0x6247 扇 + 71,98,42,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,255,192,3,255,255,255,255,192,3,255,255,255,255,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,255,255,255,255,192,3,255,255,255,255,192,3,255,255,255,255,192,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,255,255,31,255,192,3,255,255,31,255,192,3,255,255,31,255,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,3,142,7,3,129,192,3,142,7,3,129,192,3,142,7,3,129,192,3,129,199,0,113,192,3,129,199,0,113,192,3,129,199,0,113,192,28,14,7,3,129,192,28,14,7,3,129,192,28,14,7,3,129,192,28,112,7,28,1,192,28,112,7,28,1,192,28,112,7,28,1,192,224,1,199,0,113,192,224,1,199,0,113,192,224,1,199,0,113,192,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0, + // 0x624b 手 + 75,98,45,48,32,48,0,250,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,255,254,0,0,0,0,255,254,0,0,0,0,255,254,0,3,255,255,0,0,0,3,255,255,0,0,0,3,255,255,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0, + // 0x6253 打 + 83,98,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,126,0,3,128,0,0,126,0,3,128,0,0,126,0,3,128,0,3,240,0,3,128,0,3,240,0,3,128,0,3,240,0,3,128,0,252,112,0,3,128,0,252,112,0,3,128,0,252,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,28,112,0,227,128,0,28,112,0,227,128,0,28,112,0,227,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0, + // 0x6279 批 + 121,98,45,48,32,48,0,250,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,56,0,112,7,0,112,56,0,112,7,0,112,56,255,255,199,0,112,56,255,255,199,0,112,56,255,255,199,0,112,56,0,112,7,0,113,192,0,112,7,0,113,192,0,112,7,0,113,192,0,112,7,252,126,0,0,112,7,252,126,0,0,112,7,252,126,0,0,113,199,0,112,0,0,113,199,0,112,0,0,113,199,0,112,0,0,126,7,0,112,0,0,126,7,0,112,0,0,126,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,3,240,7,0,112,0,252,112,7,0,112,0,252,112,7,0,112,0,252,112,7,0,112,0,0,112,7,0,112,56,0,112,7,0,112,56,0,112,7,0,112,56,0,112,7,28,112,56,0,112,7,28,112,56,0,112,7,28,112,56,0,112,7,224,112,56,0,112,7,224,112,56,0,112,7,224,112,56,28,112,7,0,15,248,28,112,7,0,15,248,28,112,7,0,15,248,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0, + // 0x6296 抖 + 150,98,45,48,32,48,0,250,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,113,192,224,112,0,0,113,192,224,112,0,0,113,192,224,112,0,0,126,0,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,3,240,0,0,127,248,3,240,0,0,127,248,3,240,0,0,127,248,252,112,63,255,240,0,252,112,63,255,240,0,252,112,63,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0, + // 0x62bd 抽 + 189,98,42,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,255,255,199,255,255,192,255,255,199,255,255,192,255,255,199,255,255,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,113,199,3,129,192,0,113,199,3,129,192,0,113,199,3,129,192,0,126,7,3,129,192,0,126,7,3,129,192,0,126,7,3,129,192,3,240,7,255,255,192,3,240,7,255,255,192,3,240,7,255,255,192,252,112,7,3,129,192,252,112,7,3,129,192,252,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,28,112,7,255,255,192,28,112,7,255,255,192,28,112,7,255,255,192,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192, + // 0x62d4 拔 + 212,98,45,48,32,48,0,250,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,255,254,63,255,255,248,255,254,63,255,255,248,255,254,63,255,255,248,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,113,192,224,0,0,0,113,192,224,0,0,0,113,192,224,0,0,0,126,0,255,255,192,0,126,0,255,255,192,0,126,0,255,255,192,3,240,7,28,1,192,3,240,7,28,1,192,3,240,7,28,1,192,252,112,7,28,1,192,252,112,7,28,1,192,252,112,7,28,1,192,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,28,113,192,28,1,192,28,113,192,28,1,192,28,113,192,28,1,192,3,128,7,224,0,56,3,128,7,224,0,56,3,128,7,224,0,56, + // 0x6309 按 + 9,99,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,255,254,56,0,0,56,255,254,56,0,0,56,255,254,56,0,0,56,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,126,63,255,255,248,0,126,63,255,255,248,0,126,63,255,255,248,3,240,0,224,14,0,3,240,0,224,14,0,3,240,0,224,14,0,252,112,0,224,14,0,252,112,0,224,14,0,252,112,0,224,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,0,252,112,0,0,112,0,252,112,0,0,112,0,252,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,28,112,0,224,14,0,28,112,0,224,14,0,28,112,0,224,14,0,3,128,63,0,1,192,3,128,63,0,1,192,3,128,63,0,1,192, + // 0x6389 掉 + 137,99,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,255,248,0,112,0,3,255,248,0,112,0,3,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,255,255,199,255,255,192,255,255,199,255,255,192,255,255,199,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,113,199,255,255,192,0,113,199,255,255,192,0,113,199,255,255,192,0,126,7,0,1,192,0,126,7,0,1,192,0,126,7,0,1,192,3,240,7,255,255,192,3,240,7,255,255,192,3,240,7,255,255,192,252,112,7,3,129,192,252,112,7,3,129,192,252,112,7,3,129,192,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + // 0x63a2 探 + 162,99,45,48,32,48,0,250,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,255,254,7,0,112,0,255,254,7,0,112,0,255,254,7,0,112,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,142,0,28,0,0,3,142,0,28,0,0,3,142,0,28,0,0,3,241,255,255,255,192,3,241,255,255,255,192,3,241,255,255,255,192,255,128,0,28,0,0,255,128,0,28,0,0,255,128,0,28,0,0,3,128,0,255,128,0,3,128,0,255,128,0,3,128,0,255,128,0,3,128,7,28,112,0,3,128,7,28,112,0,3,128,7,28,112,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,3,143,192,28,1,248,3,143,192,28,1,248,3,143,192,28,1,248,227,128,0,28,0,0,227,128,0,28,0,0,227,128,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + // 0x63a5 接 + 165,99,45,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,255,255,199,0,14,0,255,255,199,0,14,0,255,255,199,0,14,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,126,0,28,0,0,0,126,0,28,0,0,0,126,0,28,0,0,3,241,255,255,255,248,3,241,255,255,255,248,3,241,255,255,255,248,252,112,0,224,14,0,252,112,0,224,14,0,252,112,0,224,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,31,128,0,0,112,0,31,128,0,0,112,0,31,128,0,28,112,7,224,126,0,28,112,7,224,126,0,28,112,7,224,126,0,3,129,248,0,1,192,3,129,248,0,1,192,3,129,248,0,1,192, + // 0x63a7 控 + 167,99,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,255,254,56,0,0,56,255,254,56,0,0,56,255,254,56,0,0,56,0,113,192,224,113,192,0,113,192,224,113,192,0,113,192,224,113,192,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,126,56,0,1,192,0,126,56,0,1,192,0,126,56,0,1,192,3,240,0,0,0,0,3,240,0,0,0,0,3,240,0,0,0,0,252,112,7,255,255,192,252,112,7,255,255,192,252,112,7,255,255,192,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,28,113,255,255,255,248,28,113,255,255,255,248,28,113,255,255,255,248,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0, + // 0x63d0 提 + 208,99,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,255,255,199,255,255,192,255,255,199,255,255,192,255,255,199,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,113,199,255,255,192,0,113,199,255,255,192,0,113,199,255,255,192,0,126,0,0,0,0,0,126,0,0,0,0,0,126,0,0,0,0,3,240,63,255,255,248,3,240,63,255,255,248,3,240,63,255,255,248,252,112,0,3,128,0,252,112,0,3,128,0,252,112,0,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,255,192,0,112,7,3,255,192,0,112,7,3,255,192,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,28,112,56,227,128,0,28,112,56,227,128,0,28,112,56,227,128,0,3,129,192,31,255,248,3,129,192,31,255,248,3,129,192,31,255,248, + // 0x63d2 插 + 210,99,45,48,32,48,0,250,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,3,255,192,3,128,0,3,255,192,3,128,0,3,255,192,3,129,255,252,0,0,3,129,255,252,0,0,3,129,255,252,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,255,254,0,28,0,0,255,254,0,28,0,0,255,254,0,28,0,0,3,143,255,255,255,248,3,143,255,255,255,248,3,143,255,255,255,248,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,142,7,28,0,0,3,142,7,28,0,0,3,142,7,28,0,0,3,241,248,28,127,192,3,241,248,28,127,192,3,241,248,28,127,192,255,129,192,28,1,192,255,129,192,28,1,192,255,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,255,28,127,192,3,129,255,28,127,192,3,129,255,28,127,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,227,129,255,255,255,192,227,129,255,255,255,192,227,129,255,255,255,192,28,1,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192, + // 0x63db 換 + 219,99,45,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,56,0,0,56,0,112,56,0,0,56,0,112,56,0,0,56,0,126,56,28,112,56,0,126,56,28,112,56,0,126,56,28,112,56,3,240,56,224,14,56,3,240,56,224,14,56,3,240,56,224,14,56,252,112,56,3,128,56,252,112,56,3,128,56,252,112,56,3,128,56,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,28,112,7,0,1,192,28,112,7,0,1,192,28,112,7,0,1,192,3,129,248,0,0,56,3,129,248,0,0,56,3,129,248,0,0,56, + // 0x64c7 擇 + 199,100,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,56,28,112,56,0,112,56,28,112,56,0,112,56,28,112,56,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,126,63,255,255,248,0,126,63,255,255,248,0,126,63,255,255,248,3,240,0,224,14,0,3,240,0,224,14,0,3,240,0,224,14,0,252,112,0,28,112,0,252,112,0,28,112,0,252,112,0,28,112,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + // 0x64ca 擊 + 202,100,45,48,32,48,0,250,0,14,0,3,255,192,0,14,0,3,255,192,0,14,0,3,255,192,31,255,255,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,3,142,56,3,129,192,3,142,56,3,129,192,3,142,56,3,129,192,3,255,248,28,0,56,3,255,248,28,0,56,3,255,248,28,0,56,3,142,56,3,255,192,3,142,56,3,255,192,3,142,56,3,255,192,255,255,255,227,129,192,255,255,255,227,129,192,255,255,255,227,129,192,28,14,7,0,126,0,28,14,7,0,126,0,28,14,7,0,126,0,31,255,255,31,129,248,31,255,255,31,129,248,31,255,255,31,129,248,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,127,255,252,0,0,0,127,255,252,0,0,0,127,255,252,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,0,63,0,0,0, + // 0x64cb 擋 + 203,100,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,7,28,112,0,3,128,7,28,112,0,3,128,7,28,112,0,3,129,255,255,255,248,3,129,255,255,255,248,3,129,255,255,255,248,255,241,192,0,0,56,255,241,192,0,0,56,255,241,192,0,0,56,3,142,0,0,1,192,3,142,0,0,1,192,3,142,0,0,1,192,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,240,63,255,254,0,3,240,63,255,254,0,3,240,63,255,254,0,255,128,0,0,0,0,255,128,0,0,0,0,255,128,0,0,0,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,227,129,255,255,255,192,227,129,255,255,255,192,227,129,255,255,255,192,28,1,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192, + // 0x64e0 擠 + 224,100,45,48,32,48,0,250,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,255,240,0,227,129,192,255,240,0,227,129,192,255,240,0,227,129,192,3,143,255,28,126,0,3,143,255,28,126,0,3,143,255,28,126,0,3,129,199,28,113,192,3,129,199,28,113,192,3,129,199,28,113,192,3,129,199,28,112,56,3,129,199,28,112,56,3,129,199,28,112,56,3,254,63,28,126,0,3,254,63,28,126,0,3,254,63,28,126,0,255,128,0,0,0,0,255,128,0,0,0,0,255,128,0,0,0,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,227,128,56,0,14,0,227,128,56,0,14,0,227,128,56,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0, + // 0x6536 收 + 54,101,42,48,32,48,3,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,7,0,0,0,224,112,7,0,0,0,224,112,7,0,0,0,224,112,7,255,255,192,224,112,7,255,255,192,224,112,7,255,255,192,224,112,56,0,112,0,224,112,56,0,112,0,224,112,56,0,112,0,224,113,199,0,112,0,224,113,199,0,112,0,224,113,199,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,224,112,7,0,112,0,227,240,0,227,128,0,227,240,0,227,128,0,227,240,0,227,128,0,252,112,0,227,128,0,252,112,0,227,128,0,252,112,0,227,128,0,224,112,0,28,0,0,224,112,0,28,0,0,224,112,0,28,0,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,113,192,0,1,192,0,113,192,0,1,192,0,113,192,0,1,192, + // 0x653e 放 + 62,101,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,255,248,224,0,0,255,255,248,224,0,0,255,255,248,224,0,0,3,128,0,255,255,248,3,128,0,255,255,248,3,128,0,255,255,248,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,248,224,14,0,3,255,248,224,14,0,3,255,248,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,113,192,224,14,0,28,113,192,224,14,0,28,113,192,224,14,0,224,14,7,0,1,192,224,14,7,0,1,192,224,14,7,0,1,192,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + // 0x6557 敗 + 87,101,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,31,255,192,28,0,0,31,255,192,28,0,0,31,255,192,28,0,0,28,1,192,224,0,0,28,1,192,224,0,0,28,1,192,224,0,0,28,1,192,255,255,248,28,1,192,255,255,248,28,1,192,255,255,248,31,255,199,0,14,0,31,255,199,0,14,0,31,255,199,0,14,0,28,1,199,0,14,0,28,1,199,0,14,0,28,1,199,0,14,0,28,1,248,224,14,0,28,1,248,224,14,0,28,1,248,224,14,0,31,255,192,224,14,0,31,255,192,224,14,0,31,255,192,224,14,0,28,1,192,224,14,0,28,1,192,224,14,0,28,1,192,224,14,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,31,255,192,28,112,0,31,255,192,28,112,0,31,255,192,28,112,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,3,142,0,28,112,0,3,142,0,28,112,0,3,142,0,28,112,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,28,1,199,0,1,192,28,1,199,0,1,192,28,1,199,0,1,192,224,0,56,0,0,56,224,0,56,0,0,56,224,0,56,0,0,56, + // 0x6574 整 + 116,101,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,255,255,255,227,255,248,255,255,255,227,255,248,255,255,255,227,255,248,0,14,0,28,1,192,0,14,0,28,1,192,0,14,0,28,1,192,31,255,255,227,129,192,31,255,255,227,129,192,31,255,255,227,129,192,28,14,7,3,129,192,28,14,7,3,129,192,28,14,7,3,129,192,31,255,255,3,142,0,31,255,255,3,142,0,31,255,255,3,142,0,3,142,56,0,112,0,3,142,56,0,112,0,3,142,56,0,112,0,28,14,7,3,142,0,28,14,7,3,142,0,28,14,7,3,142,0,224,14,0,28,1,248,224,14,0,28,1,248,224,14,0,28,1,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x6578 數 + 120,101,45,48,32,48,0,250,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,31,255,255,0,112,0,31,255,255,0,112,0,31,255,255,0,112,0,28,14,7,0,112,0,28,14,7,0,112,0,28,14,7,0,112,0,255,255,255,227,128,0,255,255,255,227,128,0,255,255,255,227,128,0,28,14,7,3,255,248,28,14,7,3,255,248,28,14,7,3,255,248,31,255,255,28,1,192,31,255,255,28,1,192,31,255,255,28,1,192,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,28,14,7,3,129,192,28,14,7,3,129,192,28,14,7,3,129,192,31,255,255,3,142,0,31,255,255,3,142,0,31,255,255,3,142,0,0,112,0,3,142,0,0,112,0,3,142,0,0,112,0,3,142,0,255,255,255,0,112,0,255,255,255,0,112,0,255,255,255,0,112,0,3,128,7,3,142,0,3,128,7,3,142,0,3,128,7,3,142,0,31,240,56,3,142,0,31,240,56,3,142,0,31,240,56,3,142,0,0,15,192,28,1,192,0,15,192,28,1,192,0,15,192,28,1,192,255,240,63,224,0,56,255,240,63,224,0,56,255,240,63,224,0,56, + // 0x6599 料 + 153,101,45,48,32,48,0,250,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,28,14,56,28,14,0,28,14,56,28,14,0,28,14,56,28,14,0,3,142,56,28,14,0,3,142,56,28,14,0,3,142,56,28,14,0,3,143,192,0,14,0,3,143,192,0,14,0,3,143,192,0,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,255,255,248,28,14,0,255,255,248,28,14,0,255,255,248,28,14,0,0,126,0,28,14,0,0,126,0,28,14,0,0,126,0,28,14,0,0,127,192,0,14,0,0,127,192,0,14,0,0,127,192,0,14,0,3,142,56,0,15,248,3,142,56,0,15,248,3,142,56,0,15,248,3,142,56,255,254,0,3,142,56,255,254,0,3,142,56,255,254,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + // 0x659c 斜 + 156,101,45,48,32,48,0,250,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,113,192,3,142,0,0,113,192,3,142,0,0,113,192,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,28,0,7,0,14,0,28,0,7,0,14,0,28,0,7,0,14,0,227,255,248,28,14,0,227,255,248,28,14,0,227,255,248,28,14,0,0,14,0,3,142,0,0,14,0,3,142,0,0,14,0,3,142,0,0,14,0,3,142,0,0,14,0,3,142,0,0,14,0,3,142,0,31,255,255,0,15,248,31,255,255,0,15,248,31,255,255,0,15,248,0,14,0,31,254,0,0,14,0,31,254,0,0,14,0,31,254,0,3,142,56,0,14,0,3,142,56,0,14,0,3,142,56,0,14,0,3,142,7,0,14,0,3,142,7,0,14,0,3,142,7,0,14,0,28,14,7,0,14,0,28,14,7,0,14,0,28,14,7,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,3,142,0,0,14,0,3,142,0,0,14,0,3,142,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0, + // 0x65b0 新 + 176,101,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,31,255,255,31,254,0,31,255,255,31,254,0,31,255,255,31,254,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,128,56,28,0,0,3,128,56,28,0,0,3,128,56,28,0,0,0,113,192,28,0,0,0,113,192,28,0,0,0,113,192,28,0,0,255,255,255,31,255,248,255,255,255,31,255,248,255,255,255,31,255,248,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,31,255,255,28,14,0,31,255,255,28,14,0,31,255,255,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,3,142,56,28,14,0,3,142,56,28,14,0,3,142,56,28,14,0,28,14,7,28,14,0,28,14,7,28,14,0,28,14,7,28,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,3,142,0,224,14,0,3,142,0,224,14,0,3,142,0,224,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0, + // 0x65b7 斷 + 183,101,42,48,32,48,3,250,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,227,128,7,3,254,0,227,128,7,3,254,0,227,128,7,3,254,0,227,254,56,227,128,0,227,254,56,227,128,0,227,254,56,227,128,0,224,112,63,227,128,0,224,112,63,227,128,0,224,112,63,227,128,0,227,142,7,3,128,0,227,142,7,3,128,0,227,142,7,3,128,0,227,254,63,227,255,192,227,254,63,227,255,192,227,254,63,227,255,192,224,14,0,227,142,0,224,14,0,227,142,0,224,14,0,227,142,0,255,255,255,227,142,0,255,255,255,227,142,0,255,255,255,227,142,0,224,112,7,3,142,0,224,112,7,3,142,0,224,112,7,3,142,0,227,128,7,3,142,0,227,128,7,3,142,0,227,128,7,3,142,0,227,254,56,227,142,0,227,254,56,227,142,0,227,254,56,227,142,0,224,112,63,227,142,0,224,112,63,227,142,0,224,112,63,227,142,0,227,142,7,3,142,0,227,142,7,3,142,0,227,142,7,3,142,0,227,254,63,227,142,0,227,254,63,227,142,0,227,254,63,227,142,0,224,14,0,252,14,0,224,14,0,252,14,0,224,14,0,252,14,0,255,255,255,224,14,0,255,255,255,224,14,0,255,255,255,224,14,0, + // 0x65bc 於 + 188,101,45,45,14,48,0,253,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,255,255,248,28,112,0,255,255,248,28,112,0,255,255,248,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,255,199,0,1,192,3,255,199,0,1,192,3,255,199,0,1,192,3,129,248,0,0,56,3,129,248,0,0,56,3,129,248,0,0,56,3,129,192,31,128,0,3,129,192,31,128,0,3,129,192,31,128,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,112,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,252,0,0,3,129,192,252,0,0,3,129,192,252,0,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,113,192,0,112,0,28,113,192,0,112,0,28,113,192,0,112,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0, + // 0x6607 昇 + 7,102,45,45,14,48,0,250,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,3,128,0,0,1,255,3,128,0,0,1,255,3,128,0,31,254,0,3,128,0,31,254,0,3,128,0,31,254,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + // 0x660e 明 + 14,102,39,45,225,48,3,250,0,0,7,255,254,0,0,7,255,254,0,0,7,255,254,255,254,7,0,14,255,254,7,0,14,255,254,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,255,254,224,14,7,255,254,224,14,7,255,254,255,254,7,0,14,255,254,7,0,14,255,254,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,255,254,224,14,7,255,254,224,14,7,255,254,255,254,7,0,14,255,254,7,0,14,255,254,7,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,1,192,3,142,0,1,192,3,142,0,1,192,3,142,0,14,0,0,112,0,14,0,0,112,0,14,0,0,112, + // 0x662f 是 + 47,102,45,48,32,48,0,250,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,3,142,7,0,0,0,3,142,7,0,0,0,3,142,7,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,224,0,63,255,255,248,224,0,63,255,255,248,224,0,63,255,255,248, + // 0x6642 時 + 66,102,42,48,32,48,3,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,254,0,28,0,0,255,254,0,28,0,0,255,254,0,28,0,0,224,14,63,255,254,0,224,14,63,255,254,0,224,14,63,255,254,0,224,14,0,28,0,0,224,14,0,28,0,0,224,14,0,28,0,0,224,14,0,28,0,0,224,14,0,28,0,0,224,14,0,28,0,0,224,15,255,255,255,192,224,15,255,255,255,192,224,15,255,255,255,192,255,254,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,63,255,255,192,224,14,63,255,255,192,224,14,63,255,255,192,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,7,0,112,0,224,14,7,0,112,0,224,14,7,0,112,0,255,254,0,224,112,0,255,254,0,224,112,0,255,254,0,224,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0x66ab 暫 + 171,102,42,48,32,48,3,250,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,255,255,248,255,240,0,255,255,248,255,240,0,255,255,248,255,240,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,255,255,248,224,0,0,255,255,248,224,0,0,255,255,248,224,0,0,224,112,56,255,255,192,224,112,56,255,255,192,224,112,56,255,255,192,255,255,248,224,112,0,255,255,248,224,112,0,255,255,248,224,112,0,224,112,56,224,112,0,224,112,56,224,112,0,224,112,56,224,112,0,255,255,248,224,112,0,255,255,248,224,112,0,255,255,248,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,255,255,248,224,112,0,255,255,248,224,112,0,255,255,248,224,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,3,255,255,255,128,0,3,255,255,255,128,0,3,255,255,255,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,255,255,255,128,0,3,255,255,255,128,0,3,255,255,255,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,255,255,255,128,0,3,255,255,255,128,0,3,255,255,255,128,0, + // 0x66f4 更 + 244,102,45,45,14,48,0,250,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,14,56,0,0,0,0,14,56,0,0,0,0,14,56,0,0,0,0,1,248,0,0,0,0,1,248,0,0,0,0,1,248,0,0,0,0,126,7,252,0,0,0,126,7,252,0,0,0,126,7,252,0,0,255,128,0,3,255,248,255,128,0,3,255,248,255,128,0,3,255,248, + // 0x6700 最 + 0,103,45,48,32,48,0,250,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,3,128,56,0,0,0,3,128,56,0,0,0,3,128,56,0,0,0,3,255,248,255,254,0,3,255,248,255,254,0,3,255,248,255,254,0,3,128,56,224,14,0,3,128,56,224,14,0,3,128,56,224,14,0,3,255,248,224,112,0,3,255,248,224,112,0,3,255,248,224,112,0,3,128,56,28,112,0,3,128,56,28,112,0,3,128,56,28,112,0,3,143,255,3,128,0,3,143,255,3,128,0,3,143,255,3,128,0,255,240,56,28,112,0,255,240,56,28,112,0,255,240,56,28,112,0,28,0,56,224,14,0,28,0,56,224,14,0,28,0,56,224,14,0,0,0,63,0,1,248,0,0,63,0,1,248,0,0,63,0,1,248, + // 0x6709 有 + 9,103,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,3,143,255,255,240,0,3,143,255,255,240,0,3,143,255,255,240,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,28,112,0,0,14,0,28,112,0,0,14,0,28,112,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0, + // 0x677f 板 + 127,103,45,48,32,48,0,250,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,127,192,0,112,0,0,127,192,0,112,0,0,127,192,0,112,7,255,128,0,0,112,7,255,128,0,0,112,7,255,128,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,255,255,199,0,0,0,255,255,199,0,0,0,255,255,199,0,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,3,240,7,28,1,192,3,240,7,28,1,192,3,240,7,28,1,192,3,254,7,28,1,192,3,254,7,28,1,192,3,254,7,28,1,192,28,113,199,28,1,192,28,113,199,28,1,192,28,113,199,28,1,192,28,113,199,3,142,0,28,113,199,3,142,0,28,113,199,3,142,0,224,112,7,3,142,0,224,112,7,3,142,0,224,112,7,3,142,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,113,192,224,0,56,0,113,192,224,0,56,0,113,192,224,0,56, + // 0x67f1 柱 + 241,103,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,240,0,3,128,0,3,240,0,3,128,0,3,240,0,3,128,0,3,254,0,3,128,0,3,254,0,3,128,0,3,254,0,3,128,0,28,113,199,255,255,192,28,113,199,255,255,192,28,113,199,255,255,192,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x6821 校 + 33,104,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,7,255,255,248,0,112,7,255,255,248,0,112,7,255,255,248,255,255,192,0,0,0,255,255,192,0,0,0,255,255,192,0,0,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,3,240,7,0,1,192,3,240,7,0,1,192,3,240,7,0,1,192,3,254,56,0,0,56,3,254,56,0,0,56,3,254,56,0,0,56,28,113,192,224,14,0,28,113,192,224,14,0,28,113,192,224,14,0,28,112,0,224,14,0,28,112,0,224,14,0,28,112,0,224,14,0,224,112,0,28,112,0,224,112,0,28,112,0,224,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,63,0,1,248,0,112,63,0,1,248,0,112,63,0,1,248, + // 0x683c 格 + 60,104,45,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,255,254,63,0,112,0,255,254,63,0,112,0,255,254,63,0,112,0,0,113,192,227,128,0,0,113,192,227,128,0,0,113,192,227,128,0,3,240,0,28,0,0,3,240,0,28,0,0,3,240,0,28,0,0,3,254,0,227,128,0,3,254,0,227,128,0,3,254,0,227,128,0,28,113,199,0,126,0,28,113,199,0,126,0,28,113,199,0,126,0,28,112,56,0,1,248,28,112,56,0,1,248,28,112,56,0,1,248,224,113,199,255,254,0,224,113,199,255,254,0,224,113,199,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0, + // 0x689d 條 + 157,104,45,48,32,48,0,250,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,3,241,199,28,112,0,3,241,199,28,112,0,3,241,199,28,112,0,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,224,113,192,252,126,0,224,113,192,252,126,0,224,113,192,252,126,0,0,113,255,3,129,248,0,113,255,3,129,248,0,113,255,3,129,248,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,113,199,255,255,192,0,113,199,255,255,192,0,113,199,255,255,192,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,227,142,0,0,113,192,227,142,0,0,113,192,227,142,0,0,113,199,3,129,192,0,113,199,3,129,192,0,113,199,3,129,192,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0, + // 0x68c4 棄 + 196,104,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,14,0,0,0,7,0,14,0,0,0,7,0,14,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,1,199,28,0,0,0,1,199,28,0,0,0,1,199,28,0,0,0,126,7,3,240,0,0,126,7,3,240,0,0,126,7,3,240,0,255,128,7,0,15,248,255,128,7,0,15,248,255,128,7,0,15,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x69fd 槽 + 253,105,45,48,32,48,0,250,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,113,255,255,255,248,0,113,255,255,255,248,0,113,255,255,255,248,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,255,254,63,255,255,192,255,254,63,255,255,192,255,254,63,255,255,192,0,112,56,224,113,192,0,112,56,224,113,192,0,112,56,224,113,192,3,240,63,255,255,192,3,240,63,255,255,192,3,240,63,255,255,192,3,254,56,224,113,192,3,254,56,224,113,192,3,254,56,224,113,192,28,113,255,255,255,192,28,113,255,255,255,192,28,113,255,255,255,192,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,224,112,7,255,254,0,224,112,7,255,254,0,224,112,7,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0, + // 0x6a59 橙 + 89,106,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,113,255,227,129,192,0,113,255,227,129,192,0,113,255,227,129,192,0,112,0,227,142,0,0,112,0,227,142,0,0,112,0,227,142,0,0,112,56,224,112,56,0,112,56,224,112,56,0,112,56,224,112,56,255,254,7,0,113,192,255,254,7,0,113,192,255,254,7,0,113,192,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,3,241,199,255,241,192,3,241,199,255,241,192,3,241,199,255,241,192,3,254,0,0,0,56,3,254,0,0,0,56,3,254,0,0,0,56,28,113,255,255,254,0,28,113,255,255,254,0,28,113,255,255,254,0,28,112,56,0,14,0,28,112,56,0,14,0,28,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,224,112,56,0,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,255,248,0,127,255,255,255,248,0,127,255,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x6a5f 機 + 95,106,45,48,32,48,0,250,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,56,227,142,56,0,112,56,227,142,56,0,112,56,227,142,56,0,112,63,227,143,248,0,112,63,227,143,248,0,112,63,227,143,248,255,254,7,3,129,192,255,254,7,3,129,192,255,254,7,3,129,192,0,112,56,227,142,56,0,112,56,227,142,56,0,112,56,227,142,56,3,240,63,227,143,248,3,240,63,227,143,248,3,240,63,227,143,248,3,254,7,3,129,192,3,254,7,3,129,192,3,254,7,3,129,192,28,113,255,255,255,248,28,113,255,255,255,248,28,113,255,255,255,248,28,112,7,0,112,0,28,112,7,0,112,0,28,112,7,0,112,0,224,112,7,0,113,192,224,112,7,0,113,192,224,112,7,0,113,192,0,112,7,0,113,192,0,112,7,0,113,192,0,112,7,0,113,192,0,112,56,224,14,56,0,112,56,224,14,56,0,112,56,224,14,56,0,112,56,28,14,56,0,112,56,28,14,56,0,112,56,28,14,56,0,112,56,0,113,248,0,112,56,0,113,248,0,112,56,0,113,248,0,113,192,3,128,56,0,113,192,3,128,56,0,113,192,3,128,56, + // 0x6aa2 檢 + 162,106,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,255,255,199,0,1,192,255,255,199,0,1,192,255,255,199,0,1,192,0,112,56,255,254,56,0,112,56,255,254,56,0,112,56,255,254,56,3,240,0,0,0,0,3,240,0,0,0,0,3,240,0,0,0,0,3,254,0,0,0,0,3,254,0,0,0,0,3,254,0,0,0,0,28,113,199,252,127,192,28,113,199,252,127,192,28,113,199,252,127,192,28,113,199,28,113,192,28,113,199,28,113,192,28,113,199,28,113,192,224,112,7,28,113,192,224,112,7,28,113,192,224,112,7,28,113,192,0,112,7,252,127,192,0,112,7,252,127,192,0,112,7,252,127,192,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,7,28,113,192,0,112,7,28,113,192,0,112,7,28,113,192,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56, + // 0x6b62 止 + 98,107,45,45,14,48,0,253,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x6b63 正 + 99,107,45,42,252,48,0,253,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x6b65 步 + 101,107,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,3,128,7,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,28,0,0,252,0,0,28,0,0,252,0,0,28,0,0,252,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,0,127,192,0,0,0,255,128,0,0,0,0,255,128,0,0,0,0,255,128,0,0,0,0, + // 0x6b78 歸 + 120,107,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,31,255,199,255,255,192,31,255,199,255,255,192,31,255,199,255,255,192,28,1,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192,31,255,192,255,255,192,31,255,192,255,255,192,31,255,192,255,255,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,31,255,199,255,255,192,31,255,199,255,255,192,31,255,199,255,255,192,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,28,127,199,255,255,192,28,127,199,255,255,192,28,127,199,255,255,192,28,112,7,3,129,192,28,112,7,3,129,192,28,112,7,3,129,192,28,112,7,3,129,192,28,112,7,3,129,192,28,112,7,3,129,192,28,127,199,3,241,192,28,127,199,3,241,192,28,127,199,3,241,192,255,128,7,3,142,0,255,128,7,3,142,0,255,128,7,3,142,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0x6bbc 殼 + 188,107,45,48,32,48,0,250,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,31,254,0,0,14,0,31,254,0,0,14,0,31,254,0,31,255,255,28,14,0,31,255,255,28,14,0,31,255,255,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,0,14,0,28,14,0,3,255,248,28,14,0,3,255,248,28,14,0,3,255,248,28,14,0,0,0,0,224,1,248,0,0,0,224,1,248,0,0,0,224,1,248,31,255,255,0,0,0,31,255,255,0,0,0,31,255,255,0,0,0,28,0,7,255,255,192,28,0,7,255,255,192,28,0,7,255,255,192,227,255,248,28,1,192,227,255,248,28,1,192,227,255,248,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,3,255,192,3,142,0,3,255,192,3,142,0,3,255,192,3,142,0,3,129,192,3,142,0,3,129,192,3,142,0,3,129,192,3,142,0,3,129,199,0,112,0,3,129,199,0,112,0,3,129,199,0,112,0,3,129,248,3,142,0,3,129,248,3,142,0,3,129,248,3,142,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,224,0,7,224,0,56,224,0,7,224,0,56,224,0,7,224,0,56, + // 0x6bd4 比 + 212,107,39,45,225,48,6,253,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,112,224,0,56,0,112,224,0,56,0,112,224,0,56,3,128,224,0,56,3,128,224,0,56,3,128,224,0,56,28,0,224,0,56,28,0,224,0,56,28,0,255,254,56,224,0,255,254,56,224,0,255,254,56,224,0,224,0,63,0,0,224,0,63,0,0,224,0,63,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,0,224,0,56,0,14,224,0,56,0,14,224,0,56,0,14,224,126,56,0,14,224,126,56,0,14,224,126,56,0,14,255,128,56,0,14,255,128,56,0,14,255,128,56,0,14,224,0,7,255,254,224,0,7,255,254,224,0,7,255,254, + // 0x6c92 沒 + 146,108,45,48,32,48,0,250,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,224,0,7,0,1,192,224,0,7,0,1,192,224,0,7,0,1,192,28,0,56,3,142,0,28,0,56,3,142,0,28,0,56,3,142,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,0,14,63,255,255,192,0,14,63,255,255,192,0,14,63,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,255,128,0,224,14,0,255,128,0,224,14,0,255,128,0,224,14,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,7,224,14,0,3,128,7,224,14,0,3,128,7,224,14,0,0,1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1,248, + // 0x6d88 消 + 136,109,39,48,240,48,0,250,0,0,0,28,0,0,0,0,28,0,0,0,0,28,0,3,128,56,28,14,3,128,56,28,14,3,128,56,28,14,0,112,7,28,14,0,112,7,28,14,0,112,7,28,14,0,112,7,28,112,0,112,7,28,112,0,112,7,28,112,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0,28,0,63,255,254,28,0,63,255,254,28,0,63,255,254,28,14,56,0,14,28,14,56,0,14,28,14,56,0,14,0,14,56,0,14,0,14,56,0,14,0,14,56,0,14,0,112,63,255,254,0,112,63,255,254,0,112,63,255,254,0,112,56,0,14,0,112,56,0,14,0,112,56,0,14,255,128,56,0,14,255,128,56,0,14,255,128,56,0,14,3,128,63,255,254,3,128,63,255,254,3,128,63,255,254,3,128,56,0,14,3,128,56,0,14,3,128,56,0,14,3,128,56,0,14,3,128,56,0,14,3,128,56,0,14,3,128,56,3,142,3,128,56,3,142,3,128,56,3,142,0,0,56,0,112,0,0,56,0,112,0,0,56,0,112, + // 0x6de1 淡 + 225,109,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,113,192,28,14,0,0,113,192,28,14,0,0,113,192,28,14,0,224,0,0,227,128,0,224,0,0,227,128,0,224,0,0,227,128,0,28,0,7,0,112,0,28,0,7,0,112,0,28,0,7,0,112,0,28,1,248,0,14,0,28,1,248,0,14,0,28,1,248,0,14,0,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,255,128,56,28,14,0,255,128,56,28,14,0,255,128,56,28,14,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,0,15,192,0,1,248,0,15,192,0,1,248,0,15,192,0,1,248, + // 0x6e05 清 + 5,110,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,224,0,63,255,254,0,224,0,63,255,254,0,224,0,63,255,254,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,15,255,255,255,248,28,15,255,255,255,248,28,15,255,255,255,248,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,255,128,56,0,14,0,255,128,56,0,14,0,255,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,3,142,0,3,128,56,3,142,0,3,128,56,3,142,0,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0, + // 0x6e2c 測 + 44,110,45,48,32,48,0,250,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,3,129,255,252,0,56,3,129,255,252,0,56,3,129,255,252,0,56,0,113,192,28,0,56,0,113,192,28,0,56,0,113,192,28,0,56,0,113,192,28,112,56,0,113,192,28,112,56,0,113,192,28,112,56,224,1,255,252,112,56,224,1,255,252,112,56,224,1,255,252,112,56,28,1,192,28,112,56,28,1,192,28,112,56,28,1,192,28,112,56,28,1,192,28,112,56,28,1,192,28,112,56,28,1,192,28,112,56,0,113,255,252,112,56,0,113,255,252,112,56,0,113,255,252,112,56,0,113,192,28,112,56,0,113,192,28,112,56,0,113,192,28,112,56,3,129,192,28,112,56,3,129,192,28,112,56,3,129,192,28,112,56,255,129,255,252,112,56,255,129,255,252,112,56,255,129,255,252,112,56,3,128,0,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,3,128,56,224,0,56,3,128,56,224,0,56,3,128,56,224,0,56,3,128,56,28,0,56,3,128,56,28,0,56,3,128,56,28,0,56,3,129,192,28,14,56,3,129,192,28,14,56,3,129,192,28,14,56,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192, + // 0x6e90 源 + 144,110,45,45,14,48,0,250,3,129,255,255,255,248,3,129,255,255,255,248,3,129,255,255,255,248,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,3,128,0,0,113,192,28,0,0,0,113,192,28,0,0,0,113,192,28,0,0,224,1,199,255,255,192,224,1,199,255,255,192,224,1,199,255,255,192,28,1,199,0,1,192,28,1,199,0,1,192,28,1,199,0,1,192,28,1,199,255,255,192,28,1,199,255,255,192,28,1,199,255,255,192,0,113,199,0,1,192,0,113,199,0,1,192,0,113,199,0,1,192,0,113,199,255,255,192,0,113,199,255,255,192,0,113,199,255,255,192,3,129,199,3,129,192,3,129,199,3,129,192,3,129,199,3,129,192,255,129,192,3,128,0,255,129,192,3,128,0,255,129,192,3,128,0,3,129,192,227,142,0,3,129,192,227,142,0,3,129,192,227,142,0,3,142,7,3,129,192,3,142,7,3,129,192,3,142,7,3,129,192,3,142,56,3,128,56,3,142,56,3,128,56,3,142,56,3,128,56,3,240,0,227,128,0,3,240,0,227,128,0,3,240,0,227,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x6e96 準 + 150,110,45,48,32,48,0,250,3,128,7,28,0,0,3,128,7,28,0,0,3,128,7,28,0,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,224,0,63,255,255,192,224,0,63,255,255,192,224,0,63,255,255,192,28,112,56,28,0,0,28,112,56,28,0,0,28,112,56,28,0,0,0,113,255,255,254,0,0,113,255,255,254,0,0,113,255,255,254,0,3,142,56,28,0,0,3,142,56,28,0,0,3,142,56,28,0,0,255,128,63,255,254,0,255,128,63,255,254,0,255,128,63,255,254,0,3,128,56,28,0,0,3,128,56,28,0,0,3,128,56,28,0,0,3,128,63,255,255,192,3,128,63,255,255,192,3,128,63,255,255,192,3,128,56,0,0,0,3,128,56,0,0,0,3,128,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x6eab 溫 + 171,110,45,45,14,48,0,253,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,0,14,56,28,14,0,0,14,56,28,14,0,0,14,56,28,14,0,224,14,56,227,142,0,224,14,56,227,142,0,224,14,56,227,142,0,28,112,63,0,14,0,28,112,63,0,14,0,28,112,63,0,14,0,28,112,63,255,254,0,28,112,63,255,254,0,28,112,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,252,1,255,255,255,192,252,1,255,255,255,192,252,1,255,255,255,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,1,192,227,129,192,28,15,255,255,255,248,28,15,255,255,255,248,28,15,255,255,255,248, + // 0x6fc0 激 + 192,111,45,48,32,48,0,250,0,0,56,0,112,0,0,0,56,0,112,0,0,0,56,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,3,143,255,224,112,0,3,143,255,224,112,0,3,143,255,224,112,0,3,142,0,224,112,0,3,142,0,224,112,0,3,142,0,224,112,0,0,15,255,227,255,248,0,15,255,227,255,248,0,15,255,227,255,248,224,14,0,227,129,192,224,14,0,227,129,192,224,14,0,227,129,192,28,15,255,252,113,192,28,15,255,252,113,192,28,15,255,252,113,192,28,113,192,0,113,192,28,113,192,0,113,192,28,113,192,0,113,192,0,112,56,0,113,192,0,112,56,0,113,192,0,112,56,0,113,192,3,143,255,252,113,192,3,143,255,252,113,192,3,143,255,252,113,192,255,129,192,0,113,192,255,129,192,0,113,192,255,129,192,0,113,192,3,129,255,224,14,0,3,129,255,224,14,0,3,129,255,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,142,0,224,113,192,3,142,0,224,113,192,3,142,0,224,113,192,3,142,56,224,113,192,3,142,56,224,113,192,3,142,56,224,113,192,0,112,7,3,128,56,0,112,7,3,128,56,0,112,7,3,128,56, + // 0x7121 無 + 33,113,42,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,127,255,255,255,192,0,127,255,255,255,192,0,127,255,255,255,192,3,142,56,227,128,0,3,142,56,227,128,0,3,142,56,227,128,0,28,14,56,227,128,0,28,14,56,227,128,0,28,14,56,227,128,0,0,14,56,227,128,0,0,14,56,227,128,0,0,14,56,227,128,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,14,56,227,128,0,0,14,56,227,128,0,0,14,56,227,128,0,0,14,56,227,128,0,0,14,56,227,128,0,0,14,56,227,128,0,0,14,56,227,128,0,0,14,56,227,128,0,0,14,56,227,128,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,28,0,56,28,1,192,28,0,56,28,1,192,28,0,56,28,1,192,224,0,0,0,1,192,224,0,0,0,1,192,224,0,0,0,1,192, + // 0x71b1 熱 + 177,113,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,31,255,192,28,0,0,31,255,192,28,0,0,31,255,192,28,0,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,255,254,0,255,255,248,28,14,0,255,255,248,28,14,0,255,255,248,28,14,0,28,1,192,28,14,0,28,1,192,28,14,0,28,1,192,28,14,0,224,112,56,252,14,0,224,112,56,252,14,0,224,112,56,252,14,0,31,255,192,28,14,0,31,255,192,28,14,0,31,255,192,28,14,0,0,112,0,227,142,56,0,112,0,227,142,56,0,112,0,227,142,56,0,127,192,227,142,56,0,127,192,227,142,56,0,127,192,227,142,56,255,128,7,0,1,248,255,128,7,0,1,248,255,128,7,0,1,248,28,0,56,0,0,56,28,0,56,0,0,56,28,0,56,0,0,56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,14,0,224,14,0,28,14,0,224,14,0,28,14,0,224,14,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,28,1,192, + // 0x71c8 燈 + 200,113,45,48,32,48,0,250,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,129,255,227,129,192,3,129,255,227,129,192,3,129,255,227,129,192,3,128,0,227,142,0,3,128,0,227,142,0,3,128,0,227,142,0,3,142,56,224,112,56,3,142,56,224,112,56,3,142,56,224,112,56,227,240,7,0,113,192,227,240,7,0,113,192,227,240,7,0,113,192,227,128,56,0,14,0,227,128,56,0,14,0,227,128,56,0,14,0,227,129,199,255,241,192,227,129,199,255,241,192,227,129,199,255,241,192,227,142,0,0,0,56,227,142,0,0,0,56,227,142,0,0,0,56,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,28,112,56,0,14,0,28,112,56,0,14,0,28,112,56,0,14,0,28,14,7,0,112,0,28,14,7,0,112,0,28,14,7,0,112,0,28,15,255,255,255,248,28,15,255,255,255,248,28,15,255,255,255,248,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0, + // 0x7247 片 + 71,114,39,48,240,48,3,250,0,0,0,224,0,0,0,0,224,0,0,0,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128,0,0,0,3,255,255,252,0,3,255,255,252,0,3,255,255,252,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,3,128,0,28,0,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,224,0,0,28,0,224,0,0,28,0,224,0,0,28,0, + // 0x7269 物 + 105,114,42,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,28,112,0,224,0,0,28,112,0,224,0,0,28,112,0,224,0,0,28,112,0,255,255,192,28,112,0,255,255,192,28,112,0,255,255,192,31,255,199,28,113,192,31,255,199,28,113,192,31,255,199,28,113,192,28,112,56,28,113,192,28,112,56,28,113,192,28,112,56,28,113,192,224,112,0,28,113,192,224,112,0,28,113,192,224,112,0,28,113,192,0,112,0,224,113,192,0,112,0,224,113,192,0,112,0,224,113,192,0,127,192,224,113,192,0,127,192,224,113,192,0,127,192,224,113,192,255,240,7,3,129,192,255,240,7,3,129,192,255,240,7,3,129,192,28,112,56,3,129,192,28,112,56,3,129,192,28,112,56,3,129,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x7387 率 + 135,115,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,143,255,224,14,0,3,143,255,224,14,0,3,143,255,224,14,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,3,128,56,28,14,0,3,128,56,28,14,0,3,128,56,28,14,0,28,15,255,255,129,192,28,15,255,255,129,192,28,15,255,255,129,192,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x7528 用 + 40,117,39,45,225,48,0,250,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,28,0,7,0,14,28,0,7,0,14,28,0,7,0,14,28,0,7,3,142,28,0,7,3,142,28,0,7,3,142,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x754c 界 + 76,117,45,45,14,48,0,250,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,15,192,31,128,0,0,15,192,31,128,0,0,15,192,31,128,0,3,241,192,28,126,0,3,241,192,28,126,0,3,241,192,28,126,0,252,1,192,28,1,248,252,1,192,28,1,248,252,1,192,28,1,248,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0, + // 0x767d 白 + 125,118,33,48,240,48,6,250,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,0,0,0,112,0,0,0,0,112,0,0,0,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128,255,255,255,255,128,255,255,255,255,128,255,255,255,255,128,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128, + // 0x7684 的 + 132,118,39,48,240,48,3,250,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,28,0,0,224,0,28,0,0,224,0,28,0,0,224,0,255,255,192,255,254,255,255,192,255,254,255,255,192,255,254,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,1,248,0,14,224,1,248,0,14,224,1,248,0,14,224,1,192,224,14,224,1,192,224,14,224,1,192,224,14,255,255,192,28,14,255,255,192,28,14,255,255,192,28,14,224,1,192,28,14,224,1,192,28,14,224,1,192,28,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,224,1,192,0,14,255,255,192,0,14,255,255,192,0,14,255,255,192,0,14,224,1,192,28,112,224,1,192,28,112,224,1,192,28,112,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128, + // 0x76e3 監 + 227,118,45,42,252,48,0,253,3,255,255,3,128,0,3,255,255,3,128,0,3,255,255,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,255,255,3,255,248,3,255,255,3,255,248,3,255,255,3,255,248,3,128,7,28,0,0,3,128,7,28,0,0,3,128,7,28,0,0,3,255,255,28,112,0,3,255,255,28,112,0,3,255,255,28,112,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,255,255,0,14,0,3,255,255,0,14,0,3,255,255,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x76f4 直 + 244,118,45,45,14,48,0,253,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x7720 眠 + 32,119,42,45,14,48,3,250,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,255,254,56,0,14,0,255,254,56,0,14,0,255,254,56,0,14,0,224,14,56,0,14,0,224,14,56,0,14,0,224,14,56,0,14,0,224,14,56,0,14,0,224,14,56,0,14,0,224,14,56,0,14,0,255,254,63,255,254,0,255,254,63,255,254,0,255,254,63,255,254,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,255,254,63,255,255,192,255,254,63,255,255,192,255,254,63,255,255,192,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,28,0,0,224,14,56,3,128,0,224,14,56,3,128,0,224,14,56,3,128,0,255,254,56,3,129,192,255,254,56,3,129,192,255,254,56,3,129,192,224,14,56,224,113,192,224,14,56,224,113,192,224,14,56,224,113,192,0,0,63,0,15,192,0,0,63,0,15,192,0,0,63,0,15,192,0,0,56,0,1,192,0,0,56,0,1,192,0,0,56,0,1,192, + // 0x780d 砍 + 13,120,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,255,192,28,0,0,255,255,192,28,0,0,255,255,192,28,0,0,0,112,0,31,255,192,0,112,0,31,255,192,0,112,0,31,255,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,255,199,3,128,0,3,255,199,3,128,0,3,255,199,3,128,0,31,129,192,3,128,0,31,129,192,3,128,0,31,129,192,3,128,0,31,129,192,3,128,0,31,129,192,3,128,0,31,129,192,3,128,0,227,129,192,28,112,0,227,129,192,28,112,0,227,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,129,192,28,112,0,3,255,192,224,14,0,3,255,192,224,14,0,3,255,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + // 0x78ba 確 + 186,120,45,48,32,48,0,250,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,254,63,255,255,248,255,254,63,255,255,248,255,254,63,255,255,248,3,128,56,227,128,56,3,128,56,227,128,56,3,128,56,227,128,56,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,28,0,7,255,255,248,28,0,7,255,255,248,28,0,7,255,255,248,31,254,7,0,112,0,31,254,7,0,112,0,31,254,7,0,112,0,28,14,63,0,112,0,28,14,63,0,112,0,28,14,63,0,112,0,252,15,199,255,255,248,252,15,199,255,255,248,252,15,199,255,255,248,28,14,7,0,112,0,28,14,7,0,112,0,28,14,7,0,112,0,28,14,7,0,112,0,28,14,7,0,112,0,28,14,7,0,112,0,28,14,7,255,255,248,28,14,7,255,255,248,28,14,7,255,255,248,31,254,7,0,112,0,31,254,7,0,112,0,31,254,7,0,112,0,28,14,7,0,112,0,28,14,7,0,112,0,28,14,7,0,112,0,0,0,7,255,255,248,0,0,7,255,255,248,0,0,7,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x79fb 移 + 251,121,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,127,192,3,128,0,0,127,192,3,128,0,0,127,192,3,128,0,255,240,0,31,255,192,255,240,0,31,255,192,255,240,0,31,255,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,7,28,14,0,0,112,7,28,14,0,0,112,7,28,14,0,255,255,192,3,240,0,255,255,192,3,240,0,255,255,192,3,240,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,240,0,28,14,0,3,240,0,28,14,0,3,240,0,28,14,0,3,254,7,224,112,0,3,254,7,224,112,0,3,254,7,224,112,0,28,113,192,3,255,248,28,113,192,3,255,248,28,113,192,3,255,248,28,113,192,28,0,56,28,113,192,28,0,56,28,113,192,28,0,56,224,112,7,227,129,192,224,112,7,227,129,192,224,112,7,227,129,192,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,0,126,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,128,0,0,112,0,31,128,0,0,112,0,31,128,0,0,112,7,224,0,0,0,112,7,224,0,0,0,112,7,224,0,0, + // 0x7a4d 積 + 77,122,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,127,199,255,255,248,0,127,199,255,255,248,0,127,199,255,255,248,255,240,0,3,128,0,255,240,0,3,128,0,255,240,0,3,128,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,255,255,199,255,255,248,255,255,199,255,255,248,255,255,199,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,240,7,255,255,192,3,240,7,255,255,192,3,240,7,255,255,192,3,254,7,0,1,192,3,254,7,0,1,192,3,254,7,0,1,192,28,113,199,255,255,192,28,113,199,255,255,192,28,113,199,255,255,192,28,113,199,0,1,192,28,113,199,0,1,192,28,113,199,0,1,192,224,112,7,255,255,192,224,112,7,255,255,192,224,112,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192, + // 0x7aef 端 + 239,122,45,48,32,48,0,250,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,255,255,199,3,129,192,255,255,199,3,129,192,255,255,199,3,129,192,0,0,7,255,255,192,0,0,7,255,255,192,0,0,7,255,255,192,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,224,14,63,255,255,248,224,14,63,255,255,248,224,14,63,255,255,248,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,28,14,0,28,0,0,28,14,0,28,0,0,28,14,0,28,0,0,28,14,7,255,255,192,28,14,7,255,255,192,28,14,7,255,255,192,28,112,7,28,113,192,28,112,7,28,113,192,28,112,7,28,113,192,28,112,7,28,113,192,28,112,7,28,113,192,28,112,7,28,113,192,0,127,199,28,113,192,0,127,199,28,113,192,0,127,199,28,113,192,255,128,7,28,113,192,255,128,7,28,113,192,255,128,7,28,113,192,28,0,7,28,113,192,28,0,7,28,113,192,28,0,7,28,113,192,0,0,7,0,15,192,0,0,7,0,15,192,0,0,7,0,15,192, + // 0x7b49 等 + 73,123,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,255,255,31,255,248,3,255,255,31,255,248,3,255,255,31,255,248,28,14,0,224,112,0,28,14,0,224,112,0,28,14,0,224,112,0,224,1,199,0,14,0,224,1,199,0,14,0,224,1,199,0,14,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,227,128,0,0,1,192,227,128,0,0,1,192,227,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x7ba1 管 + 161,123,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,255,255,31,255,248,3,255,255,31,255,248,3,255,255,31,255,248,28,14,0,224,112,0,28,14,0,224,112,0,28,14,0,224,112,0,224,1,199,0,14,0,224,1,199,0,14,0,224,1,199,0,14,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,224,127,255,255,129,192,224,127,255,255,129,192,224,127,255,255,129,192,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,127,255,255,128,0,0,127,255,255,128,0,0,127,255,255,128,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x7bb1 箱 + 177,123,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,255,255,31,255,248,3,255,255,31,255,248,3,255,255,31,255,248,3,142,0,224,112,0,3,142,0,224,112,0,3,142,0,224,112,0,28,1,199,0,14,0,28,1,199,0,14,0,28,1,199,0,14,0,224,14,0,0,0,0,224,14,0,0,0,0,224,14,0,0,0,0,0,14,0,255,255,192,0,14,0,255,255,192,0,14,0,255,255,192,31,255,248,224,1,192,31,255,248,224,1,192,31,255,248,224,1,192,0,14,0,224,1,192,0,14,0,224,1,192,0,14,0,224,1,192,0,126,0,255,255,192,0,126,0,255,255,192,0,126,0,255,255,192,0,127,192,224,1,192,0,127,192,224,1,192,0,127,192,224,1,192,3,142,56,224,1,192,3,142,56,224,1,192,3,142,56,224,1,192,3,142,56,255,255,192,3,142,56,255,255,192,3,142,56,255,255,192,28,14,0,224,1,192,28,14,0,224,1,192,28,14,0,224,1,192,224,14,0,224,1,192,224,14,0,224,1,192,224,14,0,224,1,192,0,14,0,255,255,192,0,14,0,255,255,192,0,14,0,255,255,192, + // 0x7cfb 系 + 251,124,39,48,240,48,3,250,0,0,7,255,240,0,0,7,255,240,0,0,7,255,240,31,255,248,0,0,31,255,248,0,0,31,255,248,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,112,0,28,0,0,112,0,28,0,0,112,0,28,0,3,128,0,224,0,3,128,0,224,0,3,128,0,224,0,31,255,255,0,0,31,255,255,0,0,31,255,255,0,0,0,0,56,0,0,0,0,56,0,0,0,0,56,0,0,0,15,192,3,128,0,15,192,3,128,0,15,192,3,128,3,240,0,0,112,3,240,0,0,112,3,240,0,0,112,255,255,255,255,254,255,255,255,255,254,255,255,255,255,254,0,0,56,0,14,0,0,56,0,14,0,0,56,0,14,0,112,56,28,0,0,112,56,28,0,0,112,56,28,0,3,128,56,3,128,3,128,56,3,128,3,128,56,3,128,28,0,56,0,112,28,0,56,0,112,28,0,56,0,112,224,14,56,0,14,224,14,56,0,14,224,14,56,0,14,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + // 0x7d05 紅 + 5,125,45,45,14,48,0,253,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,128,7,255,255,192,3,128,7,255,255,192,3,128,7,255,255,192,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,255,254,0,3,128,0,255,254,0,3,128,0,255,254,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,224,0,63,255,255,248,224,0,63,255,255,248,224,0,63,255,255,248, + // 0x7d22 索 + 34,125,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,56,0,0,56,28,0,56,0,0,56,28,0,56,0,0,56,224,1,192,3,129,192,224,1,192,3,129,192,224,1,192,3,129,192,0,127,255,252,0,0,0,127,255,252,0,0,0,127,255,252,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,1,248,0,112,0,0,1,248,0,112,0,0,1,248,0,112,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,14,0,0,0,7,0,14,0,0,0,7,0,14,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,3,129,199,0,112,0,3,129,199,0,112,0,3,129,199,0,112,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0, + // 0x7d2b 紫 + 43,125,42,48,32,48,0,250,0,14,0,224,0,0,0,14,0,224,0,0,0,14,0,224,0,0,3,142,0,224,14,0,3,142,0,224,14,0,3,142,0,224,14,0,3,143,248,255,240,0,3,143,248,255,240,0,3,143,248,255,240,0,3,142,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,3,143,248,224,1,192,3,143,248,224,1,192,3,143,248,224,1,192,255,240,0,31,255,192,255,240,0,31,255,192,255,240,0,31,255,192,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,127,255,252,0,0,0,127,255,252,0,0,0,127,255,252,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,0,7,224,0,0,0,1,248,0,112,0,0,1,248,0,112,0,0,1,248,0,112,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,14,0,0,0,7,0,14,0,0,0,7,0,14,0,0,112,7,3,128,0,0,112,7,3,128,0,0,112,7,3,128,0,3,129,199,0,112,0,3,129,199,0,112,0,3,129,199,0,112,0,28,0,56,0,14,0,28,0,56,0,14,0,28,0,56,0,14,0, + // 0x7d30 細 + 48,125,42,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,128,7,255,255,192,3,128,7,255,255,192,3,128,7,255,255,192,3,129,199,3,129,192,3,129,199,3,129,192,3,129,199,3,129,192,28,1,199,3,129,192,28,1,199,3,129,192,28,1,199,3,129,192,255,254,7,3,129,192,255,254,7,3,129,192,255,254,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,28,14,7,255,255,192,28,14,7,255,255,192,28,14,7,255,255,192,255,255,199,3,129,192,255,255,199,3,129,192,255,255,199,3,129,192,0,1,199,3,129,192,0,1,199,3,129,192,0,1,199,3,129,192,0,0,7,3,129,192,0,0,7,3,129,192,0,0,7,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,224,0,7,255,255,192,224,0,7,255,255,192,224,0,7,255,255,192,0,0,7,0,1,192,0,0,7,0,1,192,0,0,7,0,1,192, + // 0x7d42 終 + 66,125,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,0,31,255,192,3,128,0,31,255,192,3,128,0,31,255,192,3,142,0,224,1,192,3,142,0,224,1,192,3,142,0,224,1,192,28,14,7,224,14,0,28,14,7,224,14,0,28,14,7,224,14,0,255,240,56,28,112,0,255,240,56,28,112,0,255,240,56,28,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,28,14,0,224,14,0,28,14,0,224,14,0,28,14,0,224,14,0,255,254,63,0,1,248,255,254,63,0,1,248,255,254,63,0,1,248,0,14,0,31,128,0,0,14,0,31,128,0,0,14,0,31,128,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,227,142,0,0,14,0,227,142,0,0,14,0,227,142,0,0,14,0,227,142,0,252,0,0,227,142,0,252,0,0,227,142,0,252,0,0,224,0,0,3,128,0,224,0,0,3,128,0,224,0,0,3,128,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0, + // 0x7d71 統 + 113,125,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,142,63,255,255,248,3,142,63,255,255,248,3,142,63,255,255,248,28,14,0,28,0,0,28,14,0,28,0,0,28,14,0,28,0,0,255,240,0,224,14,0,255,240,0,224,14,0,255,240,0,224,14,0,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,3,128,63,255,255,248,3,128,63,255,255,248,3,128,63,255,255,248,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,224,112,56,255,255,192,224,112,0,255,255,192,224,112,0,255,255,192,224,112,0,0,1,192,224,112,0,0,1,192,224,112,0,0,1,192,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,28,113,199,0,112,56,28,113,199,0,112,56,28,113,199,0,112,56,28,113,199,0,112,56,28,113,199,0,112,56,28,113,199,0,112,56,224,0,56,0,15,248,224,0,56,0,15,248,224,0,56,0,15,248,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0, + // 0x7d72 絲 + 114,125,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,28,1,199,255,240,0,28,1,199,255,240,0,28,1,199,255,240,0,255,254,0,3,128,0,255,254,0,3,128,0,255,254,0,3,128,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,28,14,7,255,255,192,28,14,7,255,255,192,28,14,7,255,255,192,255,255,192,3,129,192,255,255,192,3,129,192,255,255,192,3,129,192,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,0,0,227,142,0,0,0,0,227,142,0,0,0,0,227,142,0,28,113,199,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,28,113,248,3,128,56,28,113,248,3,128,56,28,113,248,3,128,56,224,0,0,227,128,0,224,0,0,227,128,0,224,0,0,227,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x7da0 綠 + 160,125,45,48,32,48,0,250,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,255,254,0,3,128,0,224,14,0,3,128,0,224,14,0,3,128,0,224,14,0,3,142,7,0,14,0,3,142,7,0,14,0,3,142,7,0,14,0,28,14,7,255,240,0,28,14,7,255,240,0,28,14,7,255,240,0,255,240,0,0,112,0,255,240,0,0,112,0,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,63,255,255,248,3,128,63,255,255,248,3,128,63,255,255,248,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,255,254,56,3,128,56,255,254,56,3,128,56,255,254,56,3,128,56,0,14,7,31,241,192,0,14,7,31,241,192,0,14,7,31,241,192,0,0,0,227,142,0,0,0,0,227,142,0,0,0,0,227,142,0,227,142,7,3,129,192,227,142,7,3,129,192,227,142,7,3,129,192,227,142,56,3,128,56,227,142,56,3,128,56,227,142,56,3,128,56,224,0,0,227,128,0,224,0,0,227,128,0,224,0,0,227,128,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x7db2 網 + 178,125,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,255,255,248,0,112,7,255,255,248,0,112,7,255,255,248,3,128,7,0,0,56,3,128,7,0,0,56,3,128,7,0,0,56,3,128,7,224,14,56,3,128,7,224,14,56,3,128,7,224,14,56,28,14,7,28,112,56,28,14,7,28,112,56,28,14,7,28,112,56,255,254,7,255,255,248,255,254,7,255,255,248,255,254,7,255,255,248,0,112,7,3,128,56,0,112,7,3,128,56,0,112,7,3,128,56,3,128,7,0,112,56,3,128,7,0,112,56,3,128,7,0,112,56,3,128,7,255,255,248,3,128,7,255,255,248,3,128,7,255,255,248,28,14,7,28,0,56,28,14,7,28,0,56,28,14,7,28,0,56,255,241,199,28,0,56,255,241,199,28,0,56,255,241,199,28,0,56,0,0,7,31,254,56,0,0,7,31,254,56,0,0,7,31,254,56,28,113,199,0,0,56,28,113,199,0,0,56,28,113,199,0,0,56,28,113,199,0,0,56,28,113,199,0,0,56,28,113,199,0,0,56,28,113,199,0,14,56,28,113,199,0,14,56,28,113,199,0,14,56,224,0,7,0,1,192,224,0,7,0,1,192,224,0,7,0,1,192, + // 0x7dd2 緒 + 210,125,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,3,128,56,3,128,7,255,254,56,3,128,7,255,254,56,3,128,7,255,254,56,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,3,129,192,28,1,192,3,142,0,28,1,192,3,142,0,28,1,192,3,142,0,255,254,63,255,255,248,255,254,63,255,255,248,255,254,63,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,28,14,0,255,255,192,28,14,0,255,255,192,28,14,0,255,255,192,255,255,199,224,1,192,255,255,199,224,1,192,255,255,199,224,1,192,0,1,248,224,1,192,0,1,248,224,1,192,0,1,248,224,1,192,0,0,0,255,255,192,0,0,0,255,255,192,0,0,0,255,255,192,28,113,192,224,1,192,28,113,192,224,1,192,28,113,192,224,1,192,28,113,192,224,1,192,28,113,192,224,1,192,28,113,192,224,1,192,224,0,0,255,255,192,224,0,0,255,255,192,224,0,0,255,255,192,0,0,0,224,1,192,0,0,0,224,1,192,0,0,0,224,1,192, + // 0x7dda 線 + 218,125,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,224,0,0,0,112,0,224,0,0,0,112,0,224,0,0,3,128,7,255,255,192,3,128,7,255,255,192,3,128,7,255,255,192,3,142,7,0,1,192,3,142,7,0,1,192,3,142,7,0,1,192,28,14,7,255,255,192,28,14,7,255,255,192,28,14,7,255,255,192,255,240,7,0,1,192,255,240,7,0,1,192,255,240,7,0,1,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,14,0,3,240,56,28,14,0,3,240,56,28,14,0,3,240,56,255,254,63,227,241,192,255,254,63,227,241,192,255,254,63,227,241,192,0,14,0,227,142,0,0,14,0,227,142,0,0,14,0,227,142,0,0,0,7,3,142,0,0,0,7,3,142,0,0,0,7,3,142,0,227,142,7,3,129,192,227,142,7,3,129,192,227,142,7,3,129,192,227,142,56,3,129,192,227,142,56,3,129,192,227,142,56,3,129,192,224,1,192,227,128,56,224,1,192,227,128,56,224,1,192,227,128,56,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + // 0x7de8 編 + 232,125,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,7,255,255,248,3,128,7,255,255,248,3,128,7,255,255,248,3,129,199,0,0,56,3,129,199,0,0,56,3,129,199,0,0,56,28,1,199,0,0,56,28,1,199,0,0,56,28,1,199,0,0,56,255,254,7,255,255,248,255,254,7,255,255,248,255,254,7,255,255,248,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,28,14,7,255,255,248,28,14,7,255,255,248,28,14,7,255,255,248,255,255,199,227,142,56,255,255,199,227,142,56,255,255,199,227,142,56,0,1,199,227,142,56,0,1,199,227,142,56,0,1,199,227,142,56,0,0,56,255,255,248,0,0,56,255,255,248,0,0,56,255,255,248,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,224,1,192,227,128,56,224,1,192,227,128,56,224,1,192,227,128,56,0,0,0,224,1,248,0,0,0,224,1,248,0,0,0,224,1,248, + // 0x7e2e 縮 + 46,126,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,63,255,255,248,3,128,63,255,255,248,3,128,63,255,255,248,3,142,56,0,0,56,3,142,56,0,0,56,3,142,56,0,0,56,28,14,0,224,0,0,28,14,0,224,0,0,28,14,0,224,0,0,255,240,0,255,255,248,255,240,0,255,255,248,255,240,0,255,255,248,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,3,128,63,3,128,0,3,128,63,3,128,0,3,128,63,3,128,0,28,15,199,31,255,192,28,15,199,31,255,192,28,15,199,31,255,192,255,254,7,28,1,192,255,254,7,28,1,192,255,254,7,28,1,192,0,14,7,28,1,192,0,14,7,28,1,192,0,14,7,28,1,192,0,0,7,31,255,192,0,0,7,31,255,192,0,0,7,31,255,192,227,142,7,28,1,192,227,142,7,28,1,192,227,142,7,28,1,192,227,142,7,28,1,192,227,142,7,28,1,192,227,142,7,28,1,192,224,0,7,31,255,192,224,0,7,31,255,192,224,0,7,31,255,192,0,0,7,28,1,192,0,0,7,28,1,192,0,0,7,28,1,192, + // 0x7e3d 總 + 61,126,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,128,7,255,255,192,3,128,7,255,255,192,3,128,7,255,255,192,3,129,199,3,129,192,3,129,199,3,129,192,3,129,199,3,129,192,28,1,199,31,255,192,28,1,199,31,255,192,28,1,199,31,255,192,255,254,7,224,15,192,255,254,7,224,15,192,255,254,7,224,15,192,0,112,7,28,113,192,0,112,7,28,113,192,0,112,7,28,113,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,28,14,7,28,113,192,28,14,7,28,113,192,28,14,7,28,113,192,255,255,199,255,255,192,255,255,199,255,255,192,255,255,199,255,255,192,0,1,192,3,128,0,0,1,192,3,128,0,0,1,192,3,128,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,28,113,199,28,113,192,28,113,199,28,113,192,28,113,199,28,113,192,28,113,199,28,0,56,28,113,199,28,0,56,28,113,199,28,0,56,224,0,7,28,14,56,224,0,7,28,14,56,224,0,7,28,14,56,0,0,56,3,254,0,0,0,56,3,254,0,0,0,56,3,254,0, + // 0x7e7c 繼 + 124,126,45,48,32,48,0,250,0,112,0,28,1,192,0,112,0,28,1,192,0,112,0,28,1,192,0,112,56,224,1,192,0,112,56,224,1,192,0,112,56,224,1,192,3,128,56,255,142,56,3,128,56,255,142,56,3,128,56,255,142,56,3,142,56,28,15,248,3,142,56,28,15,248,3,142,56,28,15,248,28,14,56,227,129,192,28,14,56,227,129,192,28,14,56,227,129,192,255,240,56,255,143,248,255,240,56,255,143,248,255,240,56,255,143,248,0,112,56,3,128,56,0,112,56,3,128,56,0,112,56,3,128,56,3,128,63,255,255,248,3,128,63,255,255,248,3,128,63,255,255,248,28,14,56,28,1,192,28,14,56,28,1,192,28,14,56,28,1,192,255,254,56,224,1,192,255,254,56,224,1,192,255,254,56,224,1,192,0,14,56,255,142,56,0,14,56,255,142,56,0,14,56,255,142,56,0,0,56,28,15,248,0,0,56,28,15,248,0,0,56,28,15,248,227,142,56,227,129,192,227,142,56,227,129,192,227,142,56,227,129,192,227,142,56,255,143,248,227,142,56,255,143,248,227,142,56,255,143,248,224,0,56,3,128,56,224,0,56,3,128,56,224,0,56,3,128,56,0,0,63,255,255,248,0,0,63,255,255,248,0,0,63,255,255,248, + // 0x7e8c 續 + 140,126,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,142,7,255,255,192,3,142,7,255,255,192,3,142,7,255,255,192,28,14,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,255,240,63,255,255,248,255,240,63,255,255,248,255,240,63,255,255,248,0,112,56,28,112,56,0,112,56,28,112,56,0,112,56,28,112,56,3,128,63,255,255,248,3,128,63,255,255,248,3,128,63,255,255,248,28,14,7,0,1,192,28,14,7,0,1,192,28,14,7,0,1,192,255,255,199,255,255,192,255,255,199,255,255,192,255,255,199,255,255,192,0,1,199,0,1,192,0,1,199,0,1,192,0,1,199,0,1,192,0,0,7,255,255,192,0,0,7,255,255,192,0,0,7,255,255,192,28,113,199,0,1,192,28,113,199,0,1,192,28,113,199,0,1,192,28,113,199,255,255,192,28,113,199,255,255,192,28,113,199,255,255,192,224,0,0,224,14,0,224,0,0,224,14,0,224,0,0,224,14,0,0,0,7,0,1,192,0,0,7,0,1,192,0,0,7,0,1,192, + // 0x7ea2 红 + 162,126,45,45,14,48,0,253,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,128,7,255,255,192,3,128,7,255,255,192,3,128,7,255,255,192,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,255,254,0,3,128,0,255,254,0,3,128,0,255,254,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,127,192,3,128,0,0,127,192,3,128,0,0,127,192,3,128,0,255,128,0,3,128,0,255,128,0,3,128,0,255,128,0,3,128,0,28,0,63,255,255,248,28,0,63,255,255,248,28,0,63,255,255,248, + // 0x7f6e 置 + 110,127,45,48,32,48,0,250,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x7f72 署 + 114,127,45,45,14,48,0,250,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,127,255,252,112,0,0,127,255,252,112,0,0,127,255,252,112,0,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,3,128,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,63,0,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,3,254,0,0,112,0,3,254,0,0,112,0,3,254,0,0,112,0,252,15,255,255,240,0,252,15,255,255,240,0,252,15,255,255,240,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0, + // 0x8070 聰 + 112,128,45,48,32,48,0,250,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,255,255,192,28,0,0,255,255,192,28,0,0,255,255,192,28,0,0,28,14,7,255,255,192,28,14,7,255,255,192,28,14,7,255,255,192,28,14,7,3,129,192,28,14,7,3,129,192,28,14,7,3,129,192,31,254,7,31,255,192,31,254,7,31,255,192,31,254,7,31,255,192,28,14,7,224,15,192,28,14,7,224,15,192,28,14,7,224,15,192,28,14,7,28,113,192,28,14,7,28,113,192,28,14,7,28,113,192,31,254,7,3,129,192,31,254,7,3,129,192,31,254,7,3,129,192,28,14,7,28,113,192,28,14,7,28,113,192,28,14,7,28,113,192,28,14,7,255,255,192,28,14,7,255,255,192,28,14,7,255,255,192,28,15,192,28,0,0,28,15,192,28,0,0,28,15,192,28,0,0,31,254,0,3,129,192,31,254,0,3,129,192,31,254,0,3,129,192,252,14,56,227,128,56,252,14,56,227,128,56,252,14,56,227,128,56,0,14,56,224,14,56,0,14,56,224,14,56,0,14,56,224,14,56,0,15,192,224,14,0,0,15,192,224,14,0,0,15,192,224,14,0,0,14,0,31,254,0,0,14,0,31,254,0,0,14,0,31,254,0, + // 0x81ea 自 + 234,129,27,48,192,48,9,250,0,14,0,0,0,14,0,0,0,14,0,0,0,112,0,0,0,112,0,0,0,112,0,0,3,128,0,0,3,128,0,0,3,128,0,0,255,255,255,224,255,255,255,224,255,255,255,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,224,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,224,0,0,224,224,0,0,224,224,0,0,224, + // 0x85cd 藍 + 205,133,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,3,128,0,3,255,255,3,128,0,3,255,255,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,255,255,3,255,248,3,255,255,3,255,248,3,255,255,3,255,248,3,128,7,28,0,0,3,128,7,28,0,0,3,128,7,28,0,0,3,255,255,28,112,0,3,255,255,28,112,0,3,255,255,28,112,0,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,255,255,0,14,0,3,255,255,0,14,0,3,255,255,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x884c 行 + 76,136,45,48,32,48,0,250,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,7,255,255,192,0,14,7,255,255,192,0,14,7,255,255,192,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,3,240,0,3,128,0,3,240,0,3,128,0,3,240,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,224,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0, + // 0x8868 表 + 104,136,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,199,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,14,0,224,14,0,0,14,0,224,14,0,0,14,0,224,14,0,0,126,0,28,112,0,0,126,0,28,112,0,0,126,0,28,112,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,252,14,7,0,126,0,252,14,7,0,126,0,252,14,7,0,126,0,0,14,56,0,1,248,0,14,56,0,1,248,0,14,56,0,1,248,0,15,192,0,0,0,0,15,192,0,0,0,0,15,192,0,0,0, + // 0x88ab 被 + 171,136,45,48,32,48,0,250,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,254,7,255,255,248,255,254,7,255,255,248,255,254,7,255,255,248,0,14,7,0,112,56,0,14,7,0,112,56,0,14,7,0,112,56,0,112,7,0,113,192,0,112,7,0,113,192,0,112,7,0,113,192,0,113,199,0,112,0,0,113,199,0,112,0,0,113,199,0,112,0,3,254,7,255,255,192,3,254,7,255,255,192,3,254,7,255,255,192,28,113,199,28,1,192,28,113,199,28,1,192,28,113,199,28,1,192,224,112,7,28,1,192,224,112,7,28,1,192,224,112,7,28,1,192,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,3,142,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,113,192,224,0,56,0,113,192,224,0,56,0,113,192,224,0,56, + // 0x88c5 装 + 197,136,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,3,142,63,255,255,248,3,142,63,255,255,248,3,142,63,255,255,248,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,126,0,3,128,0,0,126,0,3,128,0,0,126,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,252,14,7,255,255,192,252,14,7,255,255,192,252,14,7,255,255,192,0,14,56,0,0,0,0,14,56,0,0,0,0,14,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,199,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,15,192,224,14,0,0,15,192,224,14,0,0,15,192,224,14,0,3,241,192,28,112,0,3,241,192,28,112,0,3,241,192,28,112,0,252,1,199,3,240,0,252,1,199,3,240,0,252,1,199,3,240,0,0,1,248,0,15,248,0,1,248,0,15,248,0,1,248,0,15,248,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0, + // 0x88dd 裝 + 221,136,45,48,32,48,0,250,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,255,192,3,128,0,3,255,192,3,128,0,3,255,192,3,128,0,0,1,199,255,255,192,0,1,199,255,255,192,0,1,199,255,255,192,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,255,254,0,3,129,192,255,254,0,3,129,192,255,254,0,28,1,248,0,0,0,28,1,248,0,0,0,28,1,248,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,1,199,0,0,0,0,1,199,0,0,0,0,1,199,0,0,0,0,15,192,224,14,0,0,15,192,224,14,0,0,15,192,224,14,0,3,241,192,28,112,0,3,241,192,28,112,0,3,241,192,28,112,0,252,1,199,3,240,0,252,1,199,3,240,0,252,1,199,3,240,0,0,1,248,0,15,248,0,1,248,0,15,248,0,1,248,0,15,248,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0, + // 0x8907 複 + 7,137,45,48,32,48,0,250,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,0,7,255,255,248,0,0,7,255,255,248,0,0,7,255,255,248,255,254,56,0,0,0,255,254,56,0,0,0,255,254,56,0,0,0,0,15,199,255,255,192,0,15,199,255,255,192,0,15,199,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,3,241,199,0,1,192,3,241,199,0,1,192,3,241,199,0,1,192,28,126,7,255,255,192,28,126,7,255,255,192,28,126,7,255,255,192,224,113,192,224,0,0,224,113,192,224,0,0,224,113,192,224,0,0,0,113,192,255,255,192,0,113,192,255,255,192,0,113,192,255,255,192,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,56,224,112,0,0,112,56,224,112,0,0,112,56,224,112,0,0,112,0,31,128,0,0,112,0,31,128,0,0,112,0,31,128,0,0,112,7,224,126,0,0,112,7,224,126,0,0,112,7,224,126,0,0,113,248,0,1,248,0,113,248,0,1,248,0,113,248,0,1,248, + // 0x89d2 角 + 210,137,39,48,240,48,0,250,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,0,0,0,127,255,255,128,0,127,255,255,128,0,127,255,255,128,3,128,0,3,128,3,128,0,3,128,3,128,0,3,128,28,0,0,28,0,28,0,0,28,0,28,0,0,28,0,227,255,255,255,254,227,255,255,255,254,227,255,255,255,254,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,7,0,14,3,128,7,0,14,3,128,7,0,14,28,0,7,0,14,28,0,7,0,14,28,0,7,0,14,28,0,7,3,142,28,0,7,3,142,28,0,7,3,142,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x8a08 計 + 8,138,45,48,32,48,0,250,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,255,255,248,3,128,0,255,255,248,3,128,0,255,255,248,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,31,255,192,3,128,0,31,255,192,3,128,0,31,255,192,3,128,0,0,0,63,255,255,248,0,0,63,255,255,248,0,0,63,255,255,248,31,255,192,3,128,0,31,255,192,3,128,0,31,255,192,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,31,255,192,3,128,0,31,255,192,3,128,0,31,255,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,31,255,192,3,128,0,31,255,192,3,128,0,31,255,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0x8a0a 訊 + 10,138,45,48,32,48,0,250,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,0,112,63,255,240,0,0,112,63,255,240,0,0,112,63,255,240,0,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,255,255,192,224,112,0,255,255,192,224,112,0,255,255,192,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,31,254,0,224,112,0,31,254,0,224,112,0,31,254,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,31,254,63,255,240,0,31,254,63,255,240,0,31,254,63,255,240,0,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,31,254,0,224,112,0,31,254,0,224,112,0,31,254,0,224,112,0,28,14,0,224,112,0,28,14,0,224,112,0,28,14,0,224,112,0,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,224,112,56,28,14,0,224,14,56,28,14,0,224,14,56,28,14,0,224,14,56,31,254,0,224,14,56,31,254,0,224,14,56,31,254,0,224,14,56,28,14,0,224,1,248,28,14,0,224,1,248,28,14,0,224,1,248,0,0,0,224,0,56,0,0,0,224,0,56,0,0,0,224,0,56, + // 0x8a18 記 + 24,138,45,45,14,48,0,253,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,255,255,248,0,1,192,255,255,248,0,1,192,255,255,248,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,31,255,192,0,1,192,31,255,192,0,1,192,31,255,192,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,31,255,192,255,255,192,31,255,192,255,255,192,31,255,192,255,255,192,0,0,0,224,1,192,0,0,0,224,1,192,0,0,0,224,1,192,31,255,192,224,0,0,31,255,192,224,0,0,31,255,192,224,0,0,28,1,192,224,0,0,28,1,192,224,0,0,28,1,192,224,0,0,28,1,192,224,0,0,28,1,192,224,0,0,28,1,192,224,0,0,28,1,192,224,0,56,28,1,192,224,0,56,28,1,192,224,0,56,31,255,192,224,0,56,31,255,192,224,0,56,31,255,192,224,0,56,28,1,192,31,255,248,28,1,192,31,255,248,28,1,192,31,255,248, + // 0x8a2d 設 + 45,138,45,48,32,48,0,250,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,255,255,248,224,14,0,255,255,248,224,14,0,255,255,248,224,14,0,0,0,0,224,14,0,0,0,0,224,14,0,0,0,0,224,14,0,31,255,199,0,1,248,31,255,199,0,1,248,31,255,199,0,1,248,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,31,255,199,255,255,192,31,255,199,255,255,192,31,255,199,255,255,192,0,0,0,224,1,192,0,0,0,224,1,192,0,0,0,224,1,192,31,255,192,224,1,192,31,255,192,224,1,192,31,255,192,224,1,192,28,1,192,28,14,0,28,1,192,28,14,0,28,1,192,28,14,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,3,128,0,28,1,192,3,128,0,28,1,192,3,128,0,31,255,192,28,112,0,31,255,192,28,112,0,31,255,192,28,112,0,28,1,192,224,14,0,28,1,192,224,14,0,28,1,192,224,14,0,0,0,63,0,1,248,0,0,63,0,1,248,0,0,63,0,1,248, + // 0x8a66 試 + 102,138,45,48,32,48,0,250,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,0,112,0,0,113,192,0,112,0,0,113,192,0,112,0,0,113,192,0,0,0,0,112,56,0,0,0,0,112,56,0,0,0,0,112,56,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,0,0,63,255,255,248,0,0,63,255,255,248,0,0,63,255,255,248,31,254,0,0,112,0,31,254,0,0,112,0,31,254,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,31,254,7,252,112,0,31,254,7,252,112,0,31,254,7,252,112,0,0,0,0,224,112,0,0,0,0,224,112,0,0,0,0,224,112,0,31,254,0,224,112,0,31,254,0,224,112,0,31,254,0,224,112,0,28,14,0,224,112,0,28,14,0,224,112,0,28,14,0,224,112,0,28,14,0,224,14,0,28,14,0,224,14,0,28,14,0,224,14,0,28,14,0,255,142,56,28,14,0,255,142,56,28,14,0,255,142,56,31,254,63,224,14,56,31,254,63,224,14,56,31,254,63,224,14,56,28,14,0,0,1,248,28,14,0,0,1,248,28,14,0,0,1,248,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56, + // 0x8a8d 認 + 141,138,45,45,14,48,0,253,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,255,255,199,28,1,192,255,255,199,28,1,192,255,255,199,28,1,192,0,0,7,28,1,192,0,0,7,28,1,192,0,0,7,28,1,192,31,254,56,224,1,192,31,254,56,224,1,192,31,254,56,224,1,192,0,0,0,224,113,192,0,0,0,224,113,192,0,0,0,224,113,192,31,254,7,0,14,0,31,254,7,0,14,0,31,254,7,0,14,0,0,0,56,28,0,0,0,0,56,28,0,0,0,0,56,28,0,0,31,254,0,3,128,0,31,254,0,3,128,0,31,254,0,3,128,0,28,14,0,227,129,192,28,14,0,227,129,192,28,14,0,227,129,192,28,14,56,224,0,56,28,14,56,224,0,56,28,14,56,224,0,56,28,14,56,224,14,56,28,14,56,224,14,56,28,14,56,224,14,56,31,254,56,224,14,56,31,254,56,224,14,56,31,254,56,224,14,56,28,1,192,31,254,0,28,1,192,31,254,0,28,1,192,31,254,0, + // 0x8aa4 誤 + 164,138,45,48,32,48,0,250,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,0,7,0,1,192,0,0,7,0,1,192,0,0,7,0,1,192,255,255,199,0,1,192,255,255,199,0,1,192,255,255,199,0,1,192,0,0,7,255,255,192,0,0,7,255,255,192,0,0,7,255,255,192,31,254,0,0,0,0,31,254,0,0,0,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,7,255,255,192,31,254,7,255,255,192,31,254,7,255,255,192,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,31,254,0,3,128,0,31,254,0,3,128,0,31,254,0,3,128,0,28,14,63,255,255,248,28,14,63,255,255,248,28,14,63,255,255,248,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,3,128,0,28,14,0,28,112,0,28,14,0,28,112,0,28,14,0,28,112,0,31,254,0,224,14,0,31,254,0,224,14,0,31,254,0,224,14,0,28,14,7,0,1,192,28,14,7,0,1,192,28,14,7,0,1,192,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + // 0x8abf 調 + 191,138,42,48,32,48,0,250,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,0,7,3,129,192,0,0,7,3,129,192,0,0,7,3,129,192,255,255,199,3,129,192,255,255,199,3,129,192,255,255,199,3,129,192,0,0,7,31,241,192,0,0,7,31,241,192,0,0,7,31,241,192,31,254,7,3,129,192,31,254,7,3,129,192,31,254,7,3,129,192,0,0,7,255,255,192,0,0,7,255,255,192,0,0,7,255,255,192,31,254,7,0,1,192,31,254,7,0,1,192,31,254,7,0,1,192,0,0,7,31,241,192,0,0,7,31,241,192,0,0,7,31,241,192,31,254,7,28,113,192,31,254,7,28,113,192,31,254,7,28,113,192,28,14,7,28,113,192,28,14,7,28,113,192,28,14,7,28,113,192,28,14,7,31,241,192,28,14,7,31,241,192,28,14,7,31,241,192,28,14,7,0,1,192,28,14,7,0,1,192,28,14,7,0,1,192,31,254,56,0,1,192,31,254,56,0,1,192,31,254,56,0,1,192,28,14,56,0,113,192,28,14,56,0,113,192,28,14,56,0,113,192,0,1,192,0,14,0,0,1,192,0,14,0,0,1,192,0,14,0, + // 0x8acb 請 + 203,138,45,48,32,48,0,250,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,0,63,255,255,248,0,0,63,255,255,248,0,0,63,255,255,248,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,0,0,7,255,255,192,0,0,7,255,255,192,0,0,7,255,255,192,31,254,0,3,128,0,31,254,0,3,128,0,31,254,0,3,128,0,0,0,63,255,255,248,0,0,63,255,255,248,0,0,63,255,255,248,31,254,0,0,0,0,31,254,0,0,0,0,31,254,0,0,0,0,0,0,7,255,255,192,0,0,7,255,255,192,0,0,7,255,255,192,31,254,7,0,1,192,31,254,7,0,1,192,31,254,7,0,1,192,28,14,7,255,255,192,28,14,7,255,255,192,28,14,7,255,255,192,28,14,7,0,1,192,28,14,7,0,1,192,28,14,7,0,1,192,28,14,7,255,255,192,28,14,7,255,255,192,28,14,7,255,255,192,31,254,7,0,1,192,31,254,7,0,1,192,31,254,7,0,1,192,28,14,7,0,113,192,28,14,7,0,113,192,28,14,7,0,113,192,0,0,7,0,14,0,0,0,7,0,14,0,0,0,7,0,14,0, + // 0x8b70 議 + 112,139,45,48,32,48,0,250,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,0,63,255,255,248,0,0,63,255,255,248,0,0,63,255,255,248,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,0,0,7,255,255,192,0,0,7,255,255,192,0,0,7,255,255,192,31,254,0,3,128,0,31,254,0,3,128,0,31,254,0,3,128,0,0,0,63,255,255,248,0,0,63,255,255,248,0,0,63,255,255,248,31,254,0,28,113,192,31,254,0,28,113,192,31,254,0,28,113,192,0,0,7,224,112,56,0,0,7,224,112,56,0,0,7,224,112,56,31,254,0,224,112,0,31,254,0,224,112,0,31,254,0,224,112,0,28,14,63,255,255,248,28,14,63,255,255,248,28,14,63,255,255,248,28,14,0,224,112,0,28,14,0,224,112,0,28,14,0,224,112,0,28,14,0,252,113,192,28,14,0,252,113,192,28,14,0,252,113,192,31,254,63,224,14,56,31,254,63,224,14,56,31,254,63,224,14,56,28,14,0,224,113,248,28,14,0,224,113,248,28,14,0,224,113,248,0,0,7,227,128,56,0,0,7,227,128,56,0,0,7,227,128,56, + // 0x8b80 讀 + 128,139,45,48,32,48,0,250,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,255,255,199,255,255,192,255,255,199,255,255,192,255,255,199,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,63,255,255,248,31,254,63,255,255,248,31,254,63,255,255,248,0,0,56,28,112,56,0,0,56,28,112,56,0,0,56,28,112,56,31,254,63,255,255,248,31,254,63,255,255,248,31,254,63,255,255,248,0,0,7,0,1,192,0,0,7,0,1,192,0,0,7,0,1,192,31,254,7,255,255,192,31,254,7,255,255,192,31,254,7,255,255,192,28,14,7,0,1,192,28,14,7,0,1,192,28,14,7,0,1,192,28,14,7,255,255,192,28,14,7,255,255,192,28,14,7,255,255,192,28,14,7,0,1,192,28,14,7,0,1,192,28,14,7,0,1,192,31,254,7,255,255,192,31,254,7,255,255,192,31,254,7,255,255,192,28,14,0,224,14,0,28,14,0,224,14,0,28,14,0,224,14,0,0,0,7,0,1,192,0,0,7,0,1,192,0,0,7,0,1,192, + // 0x8b8a 變 + 138,139,45,48,32,48,0,250,3,128,7,0,1,192,3,128,7,0,1,192,3,128,7,0,1,192,28,1,255,252,14,0,28,1,255,252,14,0,28,1,255,252,14,0,224,14,0,0,112,56,224,14,0,0,112,56,224,14,0,0,112,56,255,240,63,227,255,192,255,240,63,227,255,192,255,240,63,227,255,192,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,28,14,63,224,112,56,28,14,63,224,112,56,28,14,63,224,112,56,255,254,0,3,255,248,255,254,0,3,255,248,255,254,0,3,255,248,0,0,63,224,0,0,0,0,63,224,0,0,0,0,63,224,0,0,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,63,227,142,56,227,142,63,227,142,56,227,142,63,227,142,56,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,127,255,255,254,0,0,127,255,255,254,0,0,127,255,255,254,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,0,1,255,252,0,0,0,1,255,252,0,0,0,1,255,252,0,0,0,126,0,3,240,0,0,126,0,3,240,0,0,126,0,3,240,0,255,128,0,0,15,248,255,128,0,0,15,248,255,128,0,0,15,248, + // 0x8cc7 資 + 199,140,45,48,32,48,0,250,28,0,7,0,0,0,28,0,7,0,0,0,28,0,7,0,0,0,3,128,7,255,255,192,3,128,7,255,255,192,3,128,7,255,255,192,0,14,56,28,1,192,0,14,56,28,1,192,0,14,56,28,1,192,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,255,128,0,227,128,0,255,128,0,227,128,0,255,128,0,227,128,0,3,128,7,0,126,0,3,128,7,0,126,0,3,128,7,0,126,0,3,129,248,0,1,248,3,129,248,0,1,248,3,129,248,0,1,248,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x8ddd 距 + 221,141,45,42,252,48,0,253,31,255,199,255,255,248,31,255,199,255,255,248,31,255,199,255,255,248,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,28,1,199,0,0,0,31,255,199,255,255,192,31,255,199,255,255,192,31,255,199,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,28,127,199,0,1,192,28,127,199,0,1,192,28,127,199,0,1,192,28,112,7,0,1,192,28,112,7,0,1,192,28,112,7,0,1,192,28,112,7,255,255,192,28,112,7,255,255,192,28,112,7,255,255,192,28,112,7,0,0,0,28,112,7,0,0,0,28,112,7,0,0,0,28,127,199,0,0,0,28,127,199,0,0,0,28,127,199,0,0,0,255,128,7,0,0,0,255,128,7,0,0,0,255,128,7,0,0,0,0,0,7,255,255,248,0,0,7,255,255,248,0,0,7,255,255,248, + // 0x8eca 車 + 202,142,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0, + // 0x8edf 軟 + 223,142,45,48,32,48,0,250,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,255,255,248,31,255,192,255,255,248,31,255,192,255,255,248,31,255,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,31,255,192,224,14,0,31,255,192,224,14,0,31,255,192,224,14,0,28,113,199,3,128,0,28,113,199,3,128,0,28,113,199,3,128,0,31,255,192,3,128,0,31,255,192,3,128,0,31,255,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,28,113,192,3,128,0,31,255,192,28,112,0,31,255,192,28,112,0,31,255,192,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,255,255,248,28,112,0,255,255,248,28,112,0,255,255,248,28,112,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,56,0,0,56,0,112,56,0,0,56,0,112,56,0,0,56, + // 0x8ef8 軸 + 248,142,42,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,255,255,248,3,128,0,255,255,248,3,128,0,255,255,248,3,128,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,31,255,199,3,129,192,31,255,199,3,129,192,31,255,199,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,31,255,199,3,129,192,31,255,199,3,129,192,31,255,199,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,31,255,199,255,255,192,31,255,199,255,255,192,31,255,199,255,255,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,255,255,255,3,129,192,255,255,255,3,129,192,255,255,255,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192, + // 0x8f09 載 + 9,143,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,31,255,255,3,142,0,31,255,255,3,142,0,31,255,255,3,142,0,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,255,255,255,227,128,0,255,255,255,227,128,0,255,255,255,227,128,0,0,14,0,3,129,192,0,14,0,3,129,192,0,14,0,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,31,255,255,3,129,192,28,14,7,3,129,192,28,14,7,3,129,192,28,14,7,3,129,192,31,255,255,3,142,0,31,255,255,3,142,0,31,255,255,3,142,0,28,14,7,3,142,0,28,14,7,3,142,0,28,14,7,3,142,0,31,255,255,0,112,0,31,255,255,0,112,0,31,255,255,0,112,0,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,255,255,255,227,142,56,255,255,255,227,142,56,255,255,255,227,142,56,0,14,0,28,1,248,0,14,0,28,1,248,0,14,0,28,1,248,0,14,0,224,0,56,0,14,0,224,0,56,0,14,0,224,0,56, + // 0x8f2f 輯 + 47,143,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,255,255,248,224,14,0,255,255,248,224,14,0,255,255,248,224,14,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,255,254,0,31,255,192,0,0,0,31,255,192,0,0,0,31,255,192,0,0,0,28,113,199,255,255,248,28,113,199,255,255,248,28,113,199,255,255,248,31,255,192,224,14,0,31,255,192,224,14,0,31,255,192,224,14,0,28,113,192,255,254,0,28,113,192,255,254,0,28,113,192,255,254,0,31,255,192,224,14,0,31,255,192,224,14,0,31,255,192,224,14,0,0,112,0,255,254,0,0,112,0,255,254,0,0,112,0,255,254,0,255,255,248,224,14,0,255,255,248,224,14,0,255,255,248,224,14,0,0,112,0,224,127,248,0,112,0,224,127,248,0,112,0,224,127,248,0,112,63,255,142,0,0,112,63,255,142,0,0,112,63,255,142,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0, + // 0x8f38 輸 + 56,143,45,48,32,48,0,250,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,0,227,128,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,255,254,56,0,14,0,255,254,56,0,14,0,255,254,56,0,14,0,3,129,199,255,241,248,3,129,199,255,241,248,3,129,199,255,241,248,255,254,0,0,0,0,255,254,0,0,0,0,255,254,0,0,0,0,227,142,63,252,1,192,227,142,63,252,1,192,227,142,63,252,1,192,255,254,56,28,113,192,255,254,56,28,113,192,255,254,56,28,113,192,227,142,56,28,113,192,227,142,56,28,113,192,227,142,56,28,113,192,255,254,63,252,113,192,255,254,63,252,113,192,255,254,63,252,113,192,3,128,56,28,113,192,3,128,56,28,113,192,3,128,56,28,113,192,255,254,56,28,113,192,255,254,56,28,113,192,255,254,56,28,113,192,3,128,63,252,113,192,3,128,63,252,113,192,3,128,63,252,113,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,1,192,3,128,56,28,113,192,3,128,56,28,113,192,3,128,56,28,113,192,3,128,56,252,14,0,3,128,56,252,14,0,3,128,56,252,14,0, + // 0x8f49 轉 + 73,143,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,255,255,199,255,255,192,255,255,199,255,255,192,255,255,199,255,255,192,0,112,7,3,129,192,0,112,7,3,129,192,0,112,7,3,129,192,31,255,199,255,255,192,31,255,199,255,255,192,31,255,199,255,255,192,28,113,199,3,129,192,28,113,199,3,129,192,28,113,199,3,129,192,31,255,199,255,255,192,31,255,199,255,255,192,31,255,199,255,255,192,28,113,192,3,128,56,28,113,192,3,128,56,28,113,192,3,128,56,31,255,199,255,255,248,31,255,199,255,255,248,31,255,199,255,255,248,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,255,255,199,255,255,248,255,255,199,255,255,248,255,255,199,255,255,248,0,112,7,0,14,0,0,112,7,0,14,0,0,112,7,0,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,3,142,0,0,112,0,3,142,0,0,112,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x8fd1 近 + 209,143,45,45,14,48,0,253,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,3,128,0,0,127,192,3,128,0,0,127,192,3,128,0,0,127,192,0,112,7,255,128,0,0,112,7,255,128,0,0,112,7,255,128,0,0,112,7,0,0,0,0,112,7,0,0,0,0,112,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,255,255,248,0,0,7,255,255,248,0,0,7,255,255,248,255,240,7,0,112,0,255,240,7,0,112,0,255,240,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,113,192,0,112,0,0,113,192,0,112,0,0,113,192,0,112,0,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x8fd4 返 + 212,143,45,45,14,48,0,253,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,3,128,0,3,255,192,3,128,0,3,255,192,3,128,0,3,255,192,0,112,63,252,0,0,0,112,63,252,0,0,0,112,63,252,0,0,0,112,56,0,0,0,0,112,56,0,0,0,0,112,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,63,255,255,192,0,0,63,255,255,192,0,0,63,255,255,192,255,240,56,0,1,192,255,240,56,0,1,192,255,240,56,0,1,192,0,112,56,224,14,0,0,112,56,224,14,0,0,112,56,224,14,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,28,112,0,0,112,56,28,112,0,0,112,56,28,112,0,0,113,192,224,14,0,0,113,192,224,14,0,0,113,192,224,14,0,0,113,199,0,1,192,0,113,199,0,1,192,0,113,199,0,1,192,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x9000 退 + 0,144,45,45,14,48,0,253,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,56,0,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,0,0,56,0,14,0,255,240,63,255,254,0,255,240,63,255,254,0,255,240,63,255,254,0,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,28,1,192,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,0,112,0,0,112,56,224,14,0,0,112,56,224,14,0,0,112,56,224,14,0,0,112,63,0,1,192,0,112,63,0,1,192,0,112,63,0,1,192,0,112,56,0,1,192,0,112,56,0,1,192,0,112,56,0,1,192,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x901f 速 + 31,144,45,45,14,48,0,253,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,56,28,14,0,0,0,56,28,14,0,0,0,56,28,14,0,255,240,56,28,14,0,255,240,56,28,14,0,255,240,56,28,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,0,255,128,0,0,112,0,255,128,0,0,112,0,255,128,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,7,28,112,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x9023 連 + 35,144,45,45,14,48,0,253,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,3,143,255,255,255,248,3,143,255,255,255,248,3,143,255,255,255,248,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,1,255,255,255,192,0,1,255,255,255,192,0,1,255,255,255,192,0,1,192,28,1,192,0,1,192,28,1,192,0,1,192,28,1,192,255,129,255,255,255,192,255,129,255,255,255,192,255,129,255,255,255,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,192,28,1,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,143,255,255,255,248,3,143,255,255,255,248,3,143,255,255,255,248,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,28,112,0,28,0,0,28,112,0,28,0,0,28,112,0,28,0,0,224,15,255,255,255,248,224,15,255,255,255,248,224,15,255,255,255,248, + // 0x9032 進 + 50,144,45,45,14,48,0,253,0,0,7,28,0,0,0,0,7,28,0,0,0,0,7,28,0,0,3,128,7,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,1,248,3,128,0,0,1,248,3,128,0,0,1,248,3,128,0,0,14,63,255,255,192,0,14,63,255,255,192,0,14,63,255,255,192,255,240,56,3,128,0,255,240,56,3,128,0,255,240,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,63,255,255,192,0,112,63,255,255,192,0,112,63,255,255,192,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,56,0,0,0,0,112,56,0,0,0,0,112,56,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,3,142,0,0,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x904b 運 + 75,144,45,42,252,48,0,253,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,0,113,192,28,1,192,0,113,192,28,1,192,0,113,192,28,1,192,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,63,255,254,0,0,0,63,255,254,0,0,0,63,255,254,0,255,240,56,28,14,0,255,240,56,28,14,0,255,240,56,28,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,56,28,14,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,142,0,28,0,0,3,142,0,28,0,0,3,142,0,28,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x9054 達 + 84,144,45,45,14,48,0,253,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,1,255,255,255,192,0,1,255,255,255,192,0,1,255,255,255,192,0,0,7,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,255,240,0,227,128,0,255,240,0,227,128,0,255,240,0,227,128,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,63,255,254,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,113,255,255,255,192,0,113,255,255,255,192,0,113,255,255,255,192,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,3,142,0,28,0,0,3,142,0,28,0,0,3,142,0,28,0,0,28,1,255,255,255,248,28,1,255,255,255,248,28,1,255,255,255,248, + // 0x9078 選 + 120,144,45,45,14,48,0,253,0,15,255,3,255,192,0,15,255,3,255,192,0,15,255,3,255,192,28,14,7,3,129,192,28,14,7,3,129,192,28,14,7,3,129,192,3,143,255,3,255,192,3,143,255,3,255,192,3,143,255,3,255,192,3,142,0,227,128,56,3,142,0,227,128,56,3,142,0,227,128,56,0,1,255,224,127,248,0,1,255,224,127,248,0,1,255,224,127,248,0,0,7,0,112,0,0,0,7,0,112,0,0,0,7,0,112,0,255,129,255,255,255,192,255,129,255,255,255,192,255,129,255,255,255,192,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,143,255,255,255,248,3,143,255,255,255,248,3,143,255,255,255,248,3,128,7,0,112,0,3,128,7,0,112,0,3,128,7,0,112,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,129,192,0,1,192,3,129,192,0,1,192,3,129,192,0,1,192,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,224,15,255,255,255,248,224,15,255,255,255,248,224,15,255,255,255,248, + // 0x9084 還 + 132,144,45,42,252,48,0,253,28,1,255,255,255,192,28,1,255,255,255,192,28,1,255,255,255,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,192,227,129,192,3,129,255,255,255,192,3,129,255,255,255,192,3,129,255,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,255,248,0,15,255,255,255,248,0,15,255,255,255,248,255,128,0,0,0,0,255,128,0,0,0,0,255,128,0,0,0,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,56,0,14,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,63,255,254,0,3,128,7,28,1,192,3,128,7,28,1,192,3,128,7,28,1,192,3,128,63,3,142,0,3,128,63,3,142,0,3,128,63,3,142,0,3,143,199,224,112,0,3,143,199,224,112,0,3,143,199,224,112,0,28,112,7,0,14,0,28,112,7,0,14,0,28,112,7,0,14,0,224,15,255,255,255,248,224,15,255,255,255,248,224,15,255,255,255,248, + // 0x908a 邊 + 138,144,45,48,32,48,0,250,0,0,0,224,0,0,0,0,0,224,0,0,0,0,0,224,0,0,28,1,255,255,254,0,28,1,255,255,254,0,28,1,255,255,254,0,3,129,199,28,14,0,3,129,199,28,14,0,3,129,199,28,14,0,3,129,192,227,142,0,3,129,192,227,142,0,3,129,192,227,142,0,0,1,255,255,254,0,0,1,255,255,254,0,0,1,255,255,254,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,255,143,255,255,255,192,255,143,255,255,255,192,255,143,255,255,255,192,3,142,56,0,113,192,3,142,56,0,113,192,3,142,56,0,113,192,3,129,192,224,14,0,3,129,192,224,14,0,3,129,192,224,14,0,3,142,63,255,241,192,3,142,63,255,241,192,3,142,63,255,241,192,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,0,0,0,3,128,7,255,240,0,3,128,7,255,240,0,3,128,7,255,240,0,3,128,56,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,3,129,192,3,240,0,3,129,192,3,240,0,3,129,192,3,240,0,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,224,15,255,255,255,248,224,15,255,255,255,248,224,15,255,255,255,248, + // 0x90e8 部 + 232,144,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,14,0,3,255,248,0,14,0,3,255,248,0,14,0,3,255,248,31,255,255,227,128,56,31,255,255,227,128,56,31,255,255,227,128,56,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,3,128,7,3,129,192,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,255,255,255,255,129,192,255,255,255,255,129,192,255,255,255,255,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,129,192,0,0,0,3,128,56,0,0,0,3,128,56,0,0,0,3,128,56,3,255,255,3,128,56,3,255,255,3,128,56,3,255,255,3,128,56,3,128,7,3,128,56,3,128,7,3,128,56,3,128,7,3,128,56,3,128,7,3,241,192,3,128,7,3,241,192,3,128,7,3,241,192,3,128,7,3,142,0,3,128,7,3,142,0,3,128,7,3,142,0,3,255,255,3,128,0,3,255,255,3,128,0,3,255,255,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,3,128,7,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0, + // 0x91cb 釋 + 203,145,45,48,32,48,0,250,0,15,192,0,0,0,0,15,192,0,0,0,0,15,192,0,0,0,255,240,7,255,255,192,255,240,7,255,255,192,255,240,7,255,255,192,0,112,7,28,113,192,0,112,7,28,113,192,0,112,7,28,113,192,28,113,199,255,255,192,28,113,199,255,255,192,28,113,199,255,255,192,3,254,0,3,128,0,3,254,0,3,128,0,3,254,0,3,128,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,3,240,0,224,14,0,3,240,0,224,14,0,3,240,0,224,14,0,3,254,0,28,112,0,3,254,0,28,112,0,3,254,0,28,112,0,28,113,199,255,255,192,28,113,199,255,255,192,28,113,199,255,255,192,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,224,112,63,255,255,248,224,112,63,255,255,248,224,112,63,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0, + // 0x91cd 重 + 205,145,45,45,14,48,0,253,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,255,254,0,0,0,0,255,254,0,0,0,0,255,254,0,3,255,255,0,0,0,3,255,255,0,0,0,3,255,255,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248, + // 0x91cf 量 + 207,145,45,45,14,48,0,250,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192, + // 0x91dd 針 + 221,145,45,48,32,48,0,250,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,3,129,192,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,28,0,56,3,128,0,227,255,192,3,128,0,227,255,192,3,128,0,227,255,192,3,128,0,0,112,63,255,255,248,0,112,63,255,255,248,0,112,63,255,255,248,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,255,255,248,3,128,0,255,255,248,3,128,0,255,255,248,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,224,113,192,3,128,0,224,113,192,3,128,0,224,113,192,3,128,0,28,126,0,3,128,0,28,126,0,3,128,0,28,126,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,0,127,248,3,128,0,0,127,248,3,128,0,0,127,248,3,128,0,255,240,0,3,128,0,255,240,0,3,128,0,255,240,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0, + // 0x9215 鈕 + 21,146,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,3,142,0,28,14,0,3,142,0,28,14,0,3,142,0,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,28,0,0,28,14,0,28,0,0,28,14,0,28,0,0,28,14,0,227,254,0,28,14,0,227,254,0,28,14,0,227,254,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,7,255,254,0,0,112,7,255,254,0,0,112,7,255,254,0,255,255,192,224,14,0,255,255,192,224,14,0,255,255,192,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,0,112,0,224,14,0,224,113,192,224,14,0,224,113,192,224,14,0,224,113,192,224,14,0,28,126,0,224,14,0,28,126,0,224,14,0,28,126,0,224,14,0,28,112,0,224,14,0,28,112,0,224,14,0,28,112,0,224,14,0,0,127,192,224,14,0,0,127,192,224,14,0,0,127,192,224,14,0,255,128,63,255,255,248,255,128,63,255,255,248,255,128,63,255,255,248,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + // 0x932f 錯 + 47,147,45,48,32,48,0,250,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,3,142,0,28,14,0,3,142,0,28,14,0,3,142,0,28,14,0,3,129,199,255,255,248,3,129,199,255,255,248,3,129,199,255,255,248,28,0,56,28,14,0,28,0,56,28,14,0,28,0,56,28,14,0,227,255,192,28,14,0,227,255,192,28,14,0,227,255,192,28,14,0,0,112,7,255,255,248,0,112,7,255,255,248,0,112,7,255,255,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,255,255,248,255,255,192,255,255,248,255,255,192,255,255,248,255,255,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,224,113,192,224,1,192,224,113,192,224,1,192,224,113,192,224,1,192,28,126,0,255,255,192,28,126,0,255,255,192,28,126,0,255,255,192,28,112,0,224,1,192,28,112,0,224,1,192,28,112,0,224,1,192,0,127,248,224,1,192,0,127,248,224,1,192,0,127,248,224,1,192,255,240,0,255,255,192,255,240,0,255,255,192,255,240,0,255,255,192,28,0,0,224,1,192,28,0,0,224,1,192,28,0,0,224,1,192, + // 0x9375 鍵 + 117,147,45,45,14,48,0,253,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,28,113,255,31,255,192,28,113,255,31,255,192,28,113,255,31,255,192,28,14,7,0,113,192,28,14,7,0,113,192,28,14,7,0,113,192,224,0,7,255,255,248,224,0,7,255,255,248,224,0,7,255,255,248,31,240,56,0,113,192,31,240,56,0,113,192,31,240,56,0,113,192,3,128,56,31,255,192,3,128,56,31,255,192,3,128,56,31,255,192,3,129,255,0,112,0,3,129,255,0,112,0,3,129,255,0,112,0,255,240,7,31,255,192,255,240,7,31,255,192,255,240,7,31,255,192,3,129,199,0,112,0,3,129,199,0,112,0,3,129,199,0,112,0,227,129,199,255,255,248,227,129,199,255,255,248,227,129,199,255,255,248,31,240,56,0,112,0,31,240,56,0,112,0,31,240,56,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,3,128,56,0,112,0,3,241,199,0,0,0,3,241,199,0,0,0,3,241,199,0,0,0,252,14,0,255,255,248,252,14,0,255,255,248,252,14,0,255,255,248, + // 0x9577 長 + 119,149,45,45,14,48,0,250,0,15,255,255,254,0,0,15,255,255,254,0,0,15,255,255,254,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,0,15,255,255,240,0,0,15,255,255,240,0,0,15,255,255,240,0,0,14,0,0,0,0,0,14,0,0,0,0,0,14,0,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,112,56,0,0,0,0,112,56,0,0,0,0,112,56,0,0,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,227,128,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,0,28,0,0,0,112,56,3,128,0,0,112,56,3,128,0,0,112,56,3,128,0,0,113,192,0,126,0,0,113,192,0,126,0,0,113,192,0,126,0,0,126,0,0,1,248,0,126,0,0,1,248,0,126,0,0,1,248,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0, + // 0x9589 閉 + 137,149,39,45,225,48,3,250,255,254,0,255,254,255,254,0,255,254,255,254,0,255,254,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,255,254,0,255,254,255,254,0,255,254,255,254,0,255,254,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,255,254,0,255,254,255,254,0,255,254,255,254,0,255,254,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,0,7,0,14,224,127,255,255,142,224,127,255,255,142,224,127,255,255,142,224,0,63,0,14,224,0,63,0,14,224,0,63,0,14,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,14,7,0,14,224,14,7,0,14,224,14,7,0,14,224,112,7,0,14,224,112,7,0,14,224,112,7,0,14,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,0,56,3,142,224,0,56,3,142,224,0,56,3,142,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112, + // 0x958b 開 + 139,149,36,45,225,48,3,250,255,254,7,255,240,255,254,7,255,240,255,254,7,255,240,224,14,7,0,112,224,14,7,0,112,224,14,7,0,112,255,254,7,255,240,255,254,7,255,240,255,254,7,255,240,224,14,7,0,112,224,14,7,0,112,224,14,7,0,112,255,254,7,255,240,255,254,7,255,240,255,254,7,255,240,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,127,255,224,112,224,127,255,224,112,224,127,255,224,112,224,14,7,0,112,224,14,7,0,112,224,14,7,0,112,224,14,7,0,112,224,14,7,0,112,224,14,7,0,112,227,255,255,252,112,227,255,255,252,112,227,255,255,252,112,224,14,7,0,112,224,14,7,0,112,224,14,7,0,112,224,14,7,0,112,224,14,7,0,112,224,14,7,0,112,224,112,7,0,112,224,112,7,0,112,224,112,7,0,112,227,128,7,28,112,227,128,7,28,112,227,128,7,28,112,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128, + // 0x9593 間 + 147,149,36,45,225,48,3,250,255,254,7,255,240,255,254,7,255,240,255,254,7,255,240,224,14,7,0,112,224,14,7,0,112,224,14,7,0,112,255,254,7,255,240,255,254,7,255,240,255,254,7,255,240,224,14,7,0,112,224,14,7,0,112,224,14,7,0,112,255,254,7,255,240,255,254,7,255,240,255,254,7,255,240,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,127,255,224,112,224,127,255,224,112,224,127,255,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,127,255,224,112,224,127,255,224,112,224,127,255,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,127,255,224,112,224,127,255,224,112,224,127,255,224,112,224,112,0,224,112,224,112,0,224,112,224,112,0,224,112,224,0,0,0,112,224,0,0,0,112,224,0,0,0,112,224,0,0,28,112,224,0,0,28,112,224,0,0,28,112,224,0,0,3,128,224,0,0,3,128,224,0,0,3,128, + // 0x95dc 關 + 220,149,39,48,240,48,3,250,255,254,0,255,254,255,254,0,255,254,255,254,0,255,254,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,255,254,0,255,254,255,254,0,255,254,255,254,0,255,254,224,14,0,224,14,224,14,0,224,14,224,14,0,224,14,255,254,0,255,254,255,254,0,255,254,255,254,0,255,254,224,112,0,224,14,224,112,0,224,14,224,112,0,224,14,227,129,199,3,142,227,129,199,3,142,227,129,199,3,142,227,254,7,252,14,227,254,7,252,14,227,254,7,252,14,224,113,192,227,142,224,113,192,227,142,224,113,192,227,142,227,255,199,255,142,227,255,199,255,142,227,255,199,255,142,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,227,129,199,3,142,227,129,199,3,142,227,129,199,3,142,227,255,199,255,142,227,255,199,255,142,227,255,199,255,142,224,1,199,0,14,224,1,199,0,14,224,1,199,0,14,224,14,7,3,142,224,14,7,3,142,224,14,7,3,142,224,112,7,0,112,224,112,7,0,112,224,112,7,0,112, + // 0x964d 降 + 77,150,42,48,32,48,3,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,254,7,0,0,0,255,254,7,0,0,0,255,254,7,0,0,0,224,14,7,255,254,0,224,14,7,255,254,0,224,14,7,255,254,0,224,112,56,0,112,0,224,112,56,0,112,0,224,112,56,0,112,0,224,113,199,3,128,0,224,113,199,3,128,0,224,113,199,3,128,0,227,128,0,252,0,0,227,128,0,252,0,0,227,128,0,252,0,0,224,112,63,3,240,0,224,112,63,3,240,0,224,112,63,3,240,0,224,127,192,28,15,192,224,127,192,28,15,192,224,127,192,28,15,192,224,14,0,28,0,0,224,14,0,28,0,0,224,14,0,28,0,0,224,14,63,255,254,0,224,14,63,255,254,0,224,14,63,255,254,0,224,14,0,28,0,0,224,14,0,28,0,0,224,14,0,28,0,0,252,113,192,28,0,0,252,113,192,28,0,0,252,113,192,28,0,0,227,129,255,255,255,192,227,129,255,255,255,192,227,129,255,255,255,192,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0,224,0,0,28,0,0, + // 0x9664 除 + 100,150,42,45,14,48,3,250,255,240,0,224,0,0,255,240,0,224,0,0,255,240,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,227,128,7,28,0,0,227,128,7,28,0,0,227,128,7,28,0,0,227,128,56,3,128,0,227,128,56,3,128,0,227,128,56,3,128,0,252,1,192,0,112,0,252,1,192,0,112,0,252,1,192,0,112,0,227,142,63,255,143,192,227,142,63,255,143,192,227,142,63,255,143,192,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,113,255,255,254,0,224,113,255,255,254,0,224,113,255,255,254,0,252,112,0,224,0,0,252,112,0,224,0,0,252,112,0,224,0,0,227,128,56,227,128,0,227,128,56,227,128,0,227,128,56,227,128,0,224,1,192,224,112,0,224,1,192,224,112,0,224,1,192,224,112,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,0,56,224,14,0,224,0,56,224,14,0,224,0,56,224,14,0,224,0,7,0,0,0,224,0,7,0,0,0,224,0,7,0,0,0, + // 0x968e 階 + 142,150,42,48,32,48,3,250,0,0,56,3,128,0,0,0,56,3,128,0,0,0,56,3,128,0,255,254,56,3,129,192,255,254,56,3,129,192,255,254,56,3,129,192,224,14,63,227,142,0,224,14,63,227,142,0,224,14,63,227,142,0,224,112,56,3,240,0,224,112,56,3,240,0,224,112,56,3,240,0,224,112,56,227,129,192,224,112,56,227,129,192,224,112,56,227,129,192,227,128,63,3,129,192,227,128,63,3,129,192,227,128,63,3,129,192,224,112,56,28,127,192,224,112,56,28,127,192,224,112,56,28,127,192,224,112,0,224,0,0,224,112,0,224,0,0,224,112,0,224,0,0,224,14,63,255,254,0,224,14,63,255,254,0,224,14,63,255,254,0,224,14,56,0,14,0,224,14,56,0,14,0,224,14,56,0,14,0,224,14,56,0,14,0,224,14,56,0,14,0,224,14,56,0,14,0,252,112,63,255,254,0,252,112,63,255,254,0,252,112,63,255,254,0,227,128,56,0,14,0,227,128,56,0,14,0,227,128,56,0,14,0,224,0,56,0,14,0,224,0,56,0,14,0,224,0,56,0,14,0,224,0,63,255,254,0,224,0,63,255,254,0,224,0,63,255,254,0,224,0,56,0,14,0,224,0,56,0,14,0,224,0,56,0,14,0, + // 0x96d9 雙 + 217,150,45,48,32,48,0,250,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,255,255,31,255,248,3,255,255,31,255,248,3,255,255,31,255,248,31,129,192,252,14,0,31,129,192,252,14,0,31,129,192,252,14,0,227,255,255,31,255,248,227,255,255,31,255,248,227,255,255,31,255,248,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,255,255,31,255,248,3,255,255,31,255,248,3,255,255,31,255,248,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,255,255,31,255,248,3,255,255,31,255,248,3,255,255,31,255,248,3,128,0,28,0,0,3,128,0,28,0,0,3,128,0,28,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,0,63,224,0,0,0,127,192,31,240,0,0,127,192,31,240,0,0,127,192,31,240,0,255,128,0,0,15,248,255,128,0,0,15,248,255,128,0,0,15,248, + // 0x96e2 離 + 226,150,42,48,32,48,3,250,3,128,0,28,112,0,3,128,0,28,112,0,3,128,0,28,112,0,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,255,255,248,224,0,0,255,255,248,224,0,0,255,255,248,224,0,0,3,142,0,255,255,192,3,142,0,255,255,192,3,142,0,255,255,192,224,112,63,224,112,0,224,112,63,224,112,0,224,112,63,224,112,0,227,142,56,224,112,0,227,142,56,224,112,0,227,142,56,224,112,0,224,0,56,255,255,192,224,0,56,255,255,192,224,0,56,255,255,192,255,255,248,224,112,0,255,255,248,224,112,0,255,255,248,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,0,112,0,224,112,0,255,255,248,255,255,192,255,255,248,255,255,192,255,255,248,255,255,192,227,128,56,224,112,0,227,128,56,224,112,0,227,128,56,224,112,0,227,142,56,224,112,0,227,142,56,224,112,0,227,142,56,224,112,0,227,254,56,224,112,0,227,254,56,224,112,0,227,254,56,224,112,0,224,0,56,255,255,192,224,0,56,255,255,192,224,0,56,255,255,192,224,14,56,224,0,0,224,14,56,224,0,0,224,14,56,224,0,0,224,1,192,224,0,0,224,1,192,224,0,0,224,1,192,224,0,0, + // 0x96fb 電 + 251,150,45,48,32,48,0,250,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,248,31,255,255,255,255,248,31,255,255,255,255,248,28,0,7,0,0,56,28,0,7,0,0,56,28,0,7,0,0,56,224,127,199,31,241,192,224,127,199,31,241,192,224,127,199,31,241,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,127,199,31,240,0,0,127,199,31,240,0,0,127,199,31,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,56,0,0,7,0,0,56,0,0,7,0,0,56,0,0,7,0,0,56,0,0,7,0,0,56,0,0,7,0,0,56,0,0,0,255,255,248,0,0,0,255,255,248,0,0,0,255,255,248, + // 0x9752 青 + 82,151,45,48,32,48,0,250,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,28,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0, + // 0x975e 非 + 94,151,45,48,32,48,0,250,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,255,255,192,31,255,248,255,255,192,31,255,248,255,255,192,31,255,248,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,31,255,192,31,255,192,31,255,192,31,255,192,31,255,192,31,255,192,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,255,255,192,31,255,248,255,255,192,31,255,248,255,255,192,31,255,248,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0, + // 0x9762 面 + 98,151,45,45,14,48,0,250,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,0,1,192,0,0,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,255,252,14,0,3,129,255,252,14,0,3,129,255,252,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,255,252,14,0,3,129,255,252,14,0,3,129,255,252,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0, + // 0x9805 項 + 5,152,45,45,14,48,0,250,0,0,7,255,255,248,0,0,7,255,255,248,0,0,7,255,255,248,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,255,255,192,28,0,0,255,255,192,28,0,0,255,255,192,28,0,0,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,255,255,192,0,112,7,0,1,192,0,112,7,0,1,192,0,112,7,0,1,192,0,127,199,0,1,192,0,127,199,0,1,192,0,127,199,0,1,192,255,128,7,255,255,192,255,128,7,255,255,192,255,128,7,255,255,192,28,0,0,224,14,0,28,0,0,224,14,0,28,0,0,224,14,0,0,0,7,0,1,192,0,0,7,0,1,192,0,0,7,0,1,192,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + // 0x9810 預 + 16,152,45,45,14,48,0,250,31,255,192,255,255,248,31,255,192,255,255,248,31,255,192,255,255,248,0,1,192,0,112,0,0,1,192,0,112,0,0,1,192,0,112,0,3,142,0,3,128,0,3,142,0,3,128,0,3,142,0,3,128,0,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,14,0,224,1,192,0,14,0,224,1,192,0,14,0,224,1,192,255,255,248,224,1,192,255,255,248,224,1,192,255,255,248,224,1,192,0,112,56,255,255,192,0,112,56,255,255,192,0,112,56,255,255,192,0,113,192,224,1,192,0,113,192,224,1,192,0,113,192,224,1,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,255,255,192,0,112,0,28,14,0,0,112,0,28,14,0,0,112,0,28,14,0,28,112,0,224,1,192,28,112,0,224,1,192,28,112,0,224,1,192,3,128,7,0,0,56,3,128,7,0,0,56,3,128,7,0,0,56, + // 0x984d 額 + 77,152,45,48,32,48,0,250,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0,0,112,0,255,255,248,0,112,0,255,255,248,0,112,0,255,255,248,255,255,248,0,112,0,255,255,248,0,112,0,255,255,248,0,112,0,224,0,56,3,128,0,224,0,56,3,128,0,224,0,56,3,128,0,3,128,0,255,255,192,3,128,0,255,255,192,3,128,0,255,255,192,3,255,192,224,1,192,3,255,192,224,1,192,3,255,192,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,227,142,0,255,255,192,227,142,0,255,255,192,227,142,0,255,255,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,3,142,0,255,255,192,3,142,0,255,255,192,3,142,0,255,255,192,28,1,192,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,255,255,248,224,1,192,255,255,248,224,1,192,255,255,248,224,1,192,28,1,192,255,255,192,28,1,192,255,255,192,28,1,192,255,255,192,28,1,192,28,14,0,28,1,192,28,14,0,28,1,192,28,14,0,31,255,192,224,1,192,31,255,192,224,1,192,31,255,192,224,1,192,28,1,199,0,0,56,28,1,199,0,0,56,28,1,199,0,0,56, + // 0x985e 類 + 94,152,45,48,32,48,0,250,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,224,112,56,255,255,248,224,112,56,255,255,248,224,112,56,255,255,248,28,113,192,0,112,0,28,113,192,0,112,0,28,113,192,0,112,0,255,255,248,3,128,0,255,255,248,3,128,0,255,255,248,3,128,0,3,240,0,255,255,192,3,240,0,255,255,192,3,240,0,255,255,192,28,113,192,224,1,192,28,113,192,224,1,192,28,113,192,224,1,192,224,112,56,224,1,192,224,112,56,224,1,192,224,112,56,224,1,192,0,0,0,255,255,192,0,0,0,255,255,192,0,0,0,255,255,192,0,113,192,224,1,192,0,113,192,224,1,192,0,113,192,224,1,192,0,112,56,255,255,192,0,112,56,255,255,192,0,112,56,255,255,192,255,255,248,224,1,192,255,255,248,224,1,192,255,255,248,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,0,112,0,224,1,192,3,142,0,255,255,192,3,142,0,255,255,192,3,142,0,255,255,192,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,28,1,192,224,1,192,28,1,192,224,1,192,28,1,192,224,1,192,224,0,7,0,0,56,224,0,7,0,0,56,224,0,7,0,0,56, + // 0x98a8 風 + 168,152,45,45,14,48,0,250,3,255,255,255,254,0,3,255,255,255,254,0,3,255,255,255,254,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,255,142,0,3,128,0,255,142,0,3,128,0,255,142,0,3,143,255,0,14,0,3,143,255,0,14,0,3,143,255,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,128,7,0,14,0,3,143,255,255,142,0,3,143,255,255,142,0,3,143,255,255,142,0,3,142,7,3,142,0,3,142,7,3,142,0,3,142,7,3,142,0,3,142,7,3,142,0,3,142,7,3,142,0,3,142,7,3,142,0,3,143,255,255,142,0,3,143,255,255,142,0,3,143,255,255,142,0,3,142,7,0,14,0,3,142,7,0,14,0,3,142,7,0,14,0,3,128,7,28,14,56,3,128,7,28,14,56,3,128,7,28,14,56,3,128,7,255,142,56,3,128,7,255,142,56,3,128,7,255,142,56,28,127,248,3,142,56,28,127,248,3,142,56,28,127,248,3,142,56,28,14,0,0,1,248,28,14,0,0,1,248,28,14,0,0,1,248,224,0,0,0,0,56,224,0,0,0,0,56,224,0,0,0,0,56, + // 0x98fd 飽 + 253,152,45,48,32,48,0,250,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,14,0,28,0,0,0,113,192,255,255,192,0,113,192,255,255,192,0,113,192,255,255,192,0,112,56,224,1,192,0,112,56,224,1,192,0,112,56,224,1,192,3,142,7,0,1,192,3,142,7,0,1,192,3,142,7,0,1,192,31,255,248,255,241,192,31,255,248,255,241,192,31,255,248,255,241,192,227,128,56,224,113,192,227,128,56,224,113,192,227,128,56,224,113,192,3,255,248,224,113,192,3,255,248,224,113,192,3,255,248,224,113,192,3,128,56,255,241,192,3,128,56,255,241,192,3,128,56,255,241,192,3,255,248,224,1,192,3,255,248,224,1,192,3,255,248,224,1,192,3,128,0,224,113,192,3,128,0,224,113,192,3,128,0,224,113,192,3,142,0,224,14,0,3,142,0,224,14,0,3,142,0,224,14,0,3,129,192,224,0,56,3,129,192,224,0,56,3,129,192,224,0,56,3,142,56,224,0,56,3,142,56,224,0,56,3,142,56,224,0,56,3,240,56,31,255,248,3,240,56,31,255,248,3,240,56,31,255,248,3,128,0,0,0,0,3,128,0,0,0,0,3,128,0,0,0,0, + // 0x9918 餘 + 24,153,45,48,32,48,0,250,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,14,0,0,112,0,0,113,192,3,142,0,0,113,192,3,142,0,0,113,192,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,0,112,56,3,142,0,3,142,7,28,1,192,3,142,7,28,1,192,3,142,7,28,1,192,31,255,248,227,254,56,31,255,248,227,254,56,31,255,248,227,254,56,227,128,56,0,112,0,227,128,56,0,112,0,227,128,56,0,112,0,3,255,248,0,112,0,3,255,248,0,112,0,3,255,248,0,112,0,3,128,56,255,255,248,3,128,56,255,255,248,3,128,56,255,255,248,3,255,248,0,112,0,3,255,248,0,112,0,3,255,248,0,112,0,3,128,0,28,126,0,3,128,0,28,126,0,3,128,0,28,126,0,3,142,0,28,113,192,3,142,0,28,113,192,3,142,0,28,113,192,3,129,192,224,112,56,3,129,192,224,112,56,3,129,192,224,112,56,3,142,63,0,112,56,3,142,63,0,112,56,3,142,63,0,112,56,3,240,56,28,112,0,3,240,56,28,112,0,3,240,56,28,112,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + // 0x99ac 馬 + 172,153,39,45,225,48,0,250,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,3,255,255,255,240,3,255,255,255,240,3,255,255,255,240,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,3,255,255,255,240,3,255,255,255,240,3,255,255,255,240,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,3,128,7,0,0,3,255,255,255,254,3,255,255,255,254,3,255,255,255,254,0,0,0,0,14,0,0,0,0,14,0,0,0,0,14,0,112,56,28,14,0,112,56,28,14,0,112,56,28,14,28,14,7,3,142,28,14,7,3,142,28,14,7,3,142,28,14,7,3,142,28,14,7,3,142,28,14,7,3,142,224,0,0,0,14,224,0,0,0,14,224,0,0,0,14,0,0,0,28,112,0,0,0,28,112,0,0,0,28,112,0,0,0,3,128,0,0,0,3,128,0,0,0,3,128, + // 0x9a45 驅 + 69,154,45,45,14,48,0,250,255,254,63,255,255,248,255,254,63,255,255,248,255,254,63,255,255,248,227,128,56,0,0,0,227,128,56,0,0,0,227,128,56,0,0,0,255,254,56,31,255,192,255,254,56,31,255,192,255,254,56,31,255,192,227,128,56,28,1,192,227,128,56,28,1,192,227,128,56,28,1,192,255,254,56,28,1,192,255,254,56,28,1,192,255,254,56,28,1,192,227,128,56,31,255,192,227,128,56,31,255,192,227,128,56,31,255,192,227,128,56,0,0,0,227,128,56,0,0,0,227,128,56,0,0,0,255,254,56,255,143,248,255,254,56,255,143,248,255,254,56,255,143,248,0,14,56,227,142,56,0,14,56,227,142,56,0,14,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,227,142,56,255,143,248,227,142,56,255,143,248,227,142,56,255,143,248,224,14,56,0,0,0,224,14,56,0,0,0,224,14,56,0,0,0,0,14,63,255,255,248,0,14,63,255,255,248,0,14,63,255,255,248,3,240,0,0,0,0,3,240,0,0,0,0,3,240,0,0,0,0, + // 0x9ad4 體 + 212,154,45,48,32,48,0,250,0,0,0,28,112,0,0,0,0,28,112,0,0,0,0,28,112,0,31,255,199,255,255,192,31,255,199,255,255,192,31,255,199,255,255,192,28,1,199,28,113,192,28,1,199,28,113,192,28,1,199,28,113,192,31,241,199,255,255,192,31,241,199,255,255,192,31,241,199,255,255,192,28,113,199,28,113,192,28,113,199,28,113,192,28,113,199,28,113,192,255,255,255,255,255,192,255,255,255,255,255,192,255,255,255,255,255,192,224,0,56,0,0,0,224,0,56,0,0,0,224,0,56,0,0,0,31,255,199,255,255,192,31,255,199,255,255,192,31,255,199,255,255,192,28,1,192,0,0,0,28,1,192,0,0,0,28,1,192,0,0,0,31,255,199,255,255,192,31,255,199,255,255,192,31,255,199,255,255,192,28,1,199,0,1,192,28,1,199,0,1,192,28,1,199,0,1,192,31,255,199,255,255,192,31,255,199,255,255,192,31,255,199,255,255,192,28,1,192,224,14,0,28,1,192,224,14,0,28,1,192,224,14,0,28,1,192,28,112,0,28,1,192,28,112,0,28,1,192,28,112,0,28,113,255,255,255,248,28,113,255,255,255,248,28,113,255,255,255,248,28,14,0,0,0,0,28,14,0,0,0,0,28,14,0,0,0,0, + // 0x9ad8 高 + 216,154,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,255,255,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,15,255,255,129,192,28,15,255,255,129,192,28,15,255,255,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,14,0,3,129,192,28,15,255,255,129,192,28,15,255,255,129,192,28,15,255,255,129,192,28,0,0,0,15,192,28,0,0,0,15,192,28,0,0,0,15,192, + // 0x9ec3 黃 + 195,158,45,48,32,48,0,250,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,15,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,248,255,255,255,255,255,248,255,255,255,255,255,248,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,112,7,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,14,0,3,128,0,0,14,0,3,128,0,0,14,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x9ede 點 + 222,158,45,48,32,48,0,250,0,0,0,0,112,0,0,0,0,0,112,0,0,0,0,0,112,0,255,255,248,0,112,0,255,255,248,0,112,0,255,255,248,0,112,0,224,112,56,0,112,0,224,112,56,0,112,0,224,112,56,0,112,0,252,113,248,0,112,0,252,113,248,0,112,0,252,113,248,0,112,0,227,254,56,0,127,248,227,254,56,0,127,248,227,254,56,0,127,248,224,112,56,0,112,0,224,112,56,0,112,0,224,112,56,0,112,0,255,255,248,0,112,0,255,255,248,0,112,0,255,255,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,255,255,248,255,255,248,255,255,248,255,255,248,255,255,248,255,255,248,0,112,0,224,0,56,0,112,0,224,0,56,0,112,0,224,0,56,0,127,248,224,0,56,0,127,248,224,0,56,0,127,248,224,0,56,255,128,0,224,0,56,255,128,0,224,0,56,255,128,0,224,0,56,0,0,56,224,0,56,0,0,56,224,0,56,0,0,56,224,0,56,227,142,56,224,0,56,227,142,56,224,0,56,227,142,56,224,0,56,227,142,0,255,255,248,227,142,0,255,255,248,227,142,0,255,255,248,224,0,0,224,0,56,224,0,0,224,0,56,224,0,0,224,0,56, + // 0x9f4a 齊 + 74,159,45,48,32,48,0,250,0,0,56,0,0,0,0,0,56,0,0,0,0,0,56,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,0,0,7,0,0,0,31,255,255,255,255,192,31,255,255,255,255,192,31,255,255,255,255,192,0,1,192,28,0,0,0,1,192,28,0,0,0,1,192,28,0,0,0,0,56,224,15,192,0,0,56,224,15,192,0,0,56,224,15,192,31,255,199,31,240,0,31,255,199,31,240,0,31,255,199,31,240,0,3,129,199,28,112,0,3,129,199,28,112,0,3,129,199,28,112,0,3,129,199,28,112,0,3,129,199,28,112,0,3,129,199,28,112,0,28,1,199,28,14,0,28,1,199,28,14,0,28,1,199,28,14,0,224,15,199,31,129,248,224,15,199,31,129,248,224,15,199,31,129,248,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,127,255,255,240,0,0,127,255,255,240,0,0,127,255,255,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0,3,128,0,0,112,0, + // 0xff1a : + 26,255,12,21,42,48,18,3,255,240,255,240,255,240,255,240,255,240,255,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,240,255,240,255,240,255,240,255,240,255,240, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Vietnamese_30.cpp b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Vietnamese_30.cpp new file mode 100644 index 000000000000..c5a54a797d4d --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/Unifont/30px/Unifont_Vietnamese_30.cpp @@ -0,0 +1,246 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../fontdata.h" + +#if HAS_GRAPHICAL_TFT && TFT_FONT == UNIFONT + +// Unifont Vietnamese 48pt, capital 'A' height: 30px, width: 100%, range: 0x0102-0x1ef9, glyphs: 107 +extern const uint8_t Unifont_Vietnamese_30[12660] = { + 161,30,2,1,249,30,42,250, // unifont_t + // 0x0102 Ă + 2,1,18,42,126,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x0103 ă + 3,1,18,39,117,24,3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0110 Đ + 16,1,21,30,90,24,0,0,31,254,0,31,254,0,31,254,0,28,1,192,28,1,192,28,1,192,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,255,240,56,255,240,56,255,240,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,1,192,28,1,192,28,1,192,31,254,0,31,254,0,31,254,0, + // 0x0111 đ + 17,1,21,33,99,24,3,0,0,1,192,0,1,192,0,1,192,0,127,248,0,127,248,0,127,248,0,1,192,0,1,192,0,1,192,31,241,192,31,241,192,31,241,192,224,15,192,224,15,192,224,15,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x0128 Ĩ + 40,1,18,42,126,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,255,192,31,255,192,31,255,192, + // 0x0129 ĩ + 41,1,18,36,108,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,240,0,3,240,0,3,240,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,31,255,192,31,255,192,31,255,192, + // 0x0168 Ũ + 104,1,18,42,126,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x0169 ũ + 105,1,18,36,108,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x01a0 Ơ + 160,1,18,33,99,24,3,0,0,1,192,0,1,192,0,1,192,31,241,192,31,241,192,31,241,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x01a1 ơ + 161,1,18,27,81,24,3,0,0,1,192,0,1,192,0,1,192,31,241,192,31,241,192,31,241,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x01af Ư + 175,1,21,36,108,24,3,0,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x01b0 ư + 176,1,21,30,90,24,3,0,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,126,0,224,126,0,224,126,0,31,142,0,31,142,0,31,142,0, + // 0x0303 ̃ + 3,3,18,6,18,0,235,33,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0, + // 0x0309 ̉ + 9,3,12,15,30,0,238,27,31,128,31,128,31,128,224,112,224,112,224,112,0,112,0,112,0,112,3,128,3,128,3,128,3,128,3,128,3,128, + // 0x0323 ̣ + 35,3,6,6,6,0,241,250,252,252,252,252,252,252, + // 0x0340 ̀ + 64,3,9,9,18,0,235,30,224,0,224,0,224,0,28,0,28,0,28,0,3,128,3,128,3,128, + // 0x0341 ́ + 65,3,9,9,18,0,244,30,3,128,3,128,3,128,28,0,28,0,28,0,224,0,224,0,224,0, + // 0x1ea0 Ạ + 160,30,15,36,72,24,3,250,3,128,3,128,3,128,28,112,28,112,28,112,28,112,28,112,28,112,224,14,224,14,224,14,224,14,224,14,224,14,255,254,255,254,255,254,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,0,0,0,0,0,0,3,128,3,128,3,128, + // 0x1ea1 ạ + 161,30,18,30,90,24,3,250,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192,0,0,0,0,0,0,0,0,0,3,128,0,3,128,0,3,128,0, + // 0x1ea2 Ả + 162,30,18,42,126,24,3,0,224,0,0,224,0,0,224,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,224,0,0,224,0,0,224,0,0,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,28,14,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + // 0x1ea3 ả + 163,30,18,39,117,24,3,0,0,112,0,0,112,0,0,112,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x1ea4 Ấ + 164,30,18,42,126,24,3,0,0,1,192,0,1,192,0,1,192,3,142,0,3,142,0,3,142,0,28,112,0,28,112,0,28,112,0,224,14,0,224,14,0,224,14,0,3,128,0,3,128,0,3,128,0,28,112,0,28,112,0,28,112,0,28,112,0,28,112,0,28,112,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,255,254,0,255,254,0,255,254,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0, + // 0x1ea5 ấ + 165,30,18,39,117,24,3,0,0,1,192,0,1,192,0,1,192,3,142,0,3,142,0,3,142,0,28,112,0,28,112,0,28,112,0,224,14,0,224,14,0,224,14,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x1ea6 Ầ + 166,30,18,42,126,24,3,0,224,0,0,224,0,0,224,0,0,28,112,0,28,112,0,28,112,0,3,142,0,3,142,0,3,142,0,28,1,192,28,1,192,28,1,192,0,112,0,0,112,0,0,112,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,31,255,192,31,255,192,31,255,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192, + // 0x1ea7 ầ + 167,30,18,39,117,24,3,0,224,0,0,224,0,0,224,0,0,28,112,0,28,112,0,28,112,0,3,142,0,3,142,0,3,142,0,28,1,192,28,1,192,28,1,192,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x1ea8 Ẩ + 168,30,18,42,126,24,3,0,0,14,0,0,14,0,0,14,0,0,1,192,0,1,192,0,1,192,3,142,0,3,142,0,3,142,0,28,112,0,28,112,0,28,112,0,227,142,0,227,142,0,227,142,0,28,112,0,28,112,0,28,112,0,28,112,0,28,112,0,28,112,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,255,254,0,255,254,0,255,254,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0, + // 0x1ea9 ẩ + 169,30,21,42,126,24,3,0,0,1,192,0,1,192,0,1,192,0,0,56,0,0,56,0,0,56,0,113,192,0,113,192,0,113,192,3,142,0,3,142,0,3,142,0,28,1,192,28,1,192,28,1,192,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x1eaa Ẫ + 170,30,18,42,126,24,6,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,3,128,0,3,128,0,3,128,0,28,112,0,28,112,0,28,112,0,224,14,0,224,14,0,224,14,0,3,128,0,3,128,0,3,128,0,28,112,0,28,112,0,28,112,0,28,112,0,28,112,0,28,112,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,255,254,0,255,254,0,255,254,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0, + // 0x1eab ẫ + 171,30,21,42,126,24,3,0,3,240,56,3,240,56,3,240,56,28,15,192,28,15,192,28,15,192,0,112,0,0,112,0,0,112,0,3,142,0,3,142,0,3,142,0,28,1,192,28,1,192,28,1,192,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x1eac Ậ + 172,30,15,45,90,24,6,250,3,128,3,128,3,128,28,112,28,112,28,112,224,14,224,14,224,14,3,128,3,128,3,128,28,112,28,112,28,112,28,112,28,112,28,112,224,14,224,14,224,14,224,14,224,14,224,14,255,254,255,254,255,254,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,0,0,0,0,0,0,3,128,3,128,3,128, + // 0x1ead ậ + 173,30,18,42,126,24,3,250,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192,0,0,0,0,0,0,0,0,0,0,112,0,0,112,0,0,112,0, + // 0x1eae Ắ + 174,30,15,42,84,24,3,0,0,112,0,112,0,112,3,128,3,128,3,128,224,14,224,14,224,14,31,240,31,240,31,240,3,128,3,128,3,128,28,112,28,112,28,112,28,112,28,112,28,112,224,14,224,14,224,14,224,14,224,14,224,14,255,254,255,254,255,254,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14, + // 0x1eaf ắ + 175,30,18,42,126,24,3,0,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x1eb0 Ằ + 176,30,15,42,84,24,3,0,28,0,28,0,28,0,3,128,3,128,3,128,224,14,224,14,224,14,31,240,31,240,31,240,3,128,3,128,3,128,28,112,28,112,28,112,28,112,28,112,28,112,224,14,224,14,224,14,224,14,224,14,224,14,255,254,255,254,255,254,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14, + // 0x1eb1 ằ + 177,30,18,42,126,24,3,0,28,0,0,28,0,0,28,0,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,28,1,192,28,1,192,28,1,192,3,254,0,3,254,0,3,254,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x1eb2 Ẳ + 178,30,21,42,126,24,0,0,0,112,0,0,112,0,0,112,0,0,14,0,0,14,0,0,14,0,227,240,56,227,240,56,227,240,56,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,31,255,192,31,255,192,31,255,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192, + // 0x1eb3 ẳ + 179,30,18,42,126,24,3,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x1eb4 Ẵ + 180,30,21,42,126,24,0,0,3,240,56,3,240,56,3,240,56,28,15,192,28,15,192,28,15,192,224,0,56,224,0,56,224,0,56,31,255,192,31,255,192,31,255,192,0,112,0,0,112,0,0,112,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,3,142,0,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,31,255,192,31,255,192,31,255,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192, + // 0x1eb5 ẵ + 181,30,18,42,126,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x1eb6 Ặ + 182,30,15,42,84,24,3,250,224,14,224,14,224,14,31,240,31,240,31,240,3,128,3,128,3,128,28,112,28,112,28,112,28,112,28,112,28,112,224,14,224,14,224,14,224,14,224,14,224,14,255,254,255,254,255,254,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,0,0,0,0,0,0,3,128,3,128,3,128, + // 0x1eb7 ặ + 183,30,18,39,117,24,3,250,28,14,0,28,14,0,28,14,0,3,240,0,3,240,0,3,240,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,0,1,192,0,1,192,0,1,192,31,255,192,31,255,192,31,255,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192,0,0,0,0,0,0,0,0,0,3,128,0,3,128,0,3,128,0, + // 0x1eb8 Ẹ + 184,30,18,36,108,24,3,250,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192,0,0,0,0,0,0,0,0,0,3,128,0,3,128,0,3,128,0, + // 0x1eb9 ẹ + 185,30,18,30,90,24,3,250,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,3,128,0,3,128,0,3,128,0, + // 0x1eba Ẻ + 186,30,18,42,126,24,3,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x1ebb ẻ + 187,30,18,42,126,24,3,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ebc Ẽ + 188,30,18,39,117,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x1ebd ẽ + 189,30,18,33,99,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ebe Ế + 190,30,18,42,126,24,3,0,0,1,192,0,1,192,0,1,192,3,142,0,3,142,0,3,142,0,28,112,0,28,112,0,28,112,0,224,14,0,224,14,0,224,14,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x1ebf ế + 191,30,18,39,117,24,3,0,0,1,192,0,1,192,0,1,192,3,142,0,3,142,0,3,142,0,28,112,0,28,112,0,28,112,0,224,14,0,224,14,0,224,14,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ec0 Ề + 192,30,18,42,126,24,3,0,224,0,0,224,0,0,224,0,0,28,112,0,28,112,0,28,112,0,3,142,0,3,142,0,3,142,0,28,1,192,28,1,192,28,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x1ec1 ề + 193,30,18,39,117,24,3,0,224,0,0,224,0,0,224,0,0,28,112,0,28,112,0,28,112,0,3,142,0,3,142,0,3,142,0,28,1,192,28,1,192,28,1,192,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ec2 Ể + 194,30,18,42,126,24,3,0,0,14,0,0,14,0,0,14,0,3,129,192,3,129,192,3,129,192,28,113,192,28,113,192,28,113,192,224,14,0,224,14,0,224,14,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x1ec3 ể + 195,30,18,42,126,24,3,0,0,14,0,0,14,0,0,14,0,0,1,192,0,1,192,0,1,192,3,129,192,3,129,192,3,129,192,28,126,0,28,126,0,28,126,0,224,14,0,224,14,0,224,14,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ec4 Ễ + 196,30,18,42,126,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,3,128,0,3,128,0,3,128,0,28,112,0,28,112,0,28,112,0,224,14,0,224,14,0,224,14,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192, + // 0x1ec5 ễ + 197,30,18,42,126,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,3,128,0,3,128,0,3,128,0,28,112,0,28,112,0,28,112,0,224,14,0,224,14,0,224,14,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ec6 Ệ + 198,30,18,45,135,24,3,250,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,254,0,255,254,0,255,254,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,192,255,255,192,255,255,192,0,0,0,0,0,0,0,0,0,0,112,0,0,112,0,0,112,0, + // 0x1ec7 ệ + 199,30,18,42,126,24,3,250,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255,255,192,255,255,192,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,112,0,0,112,0,0,112,0, + // 0x1ec8 Ỉ + 200,30,15,42,84,24,6,0,3,128,3,128,3,128,0,112,0,112,0,112,0,112,0,112,0,112,3,128,3,128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x1ec9 ỉ + 201,30,15,39,78,24,6,0,28,0,28,0,28,0,3,128,3,128,3,128,3,128,3,128,3,128,28,0,28,0,28,0,0,0,0,0,0,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254, + // 0x1eca Ị + 202,30,15,36,72,24,6,250,255,254,255,254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254,0,0,0,0,0,0,3,128,3,128,3,128, + // 0x1ecb ị + 203,30,15,39,78,24,6,250,3,128,3,128,3,128,3,128,3,128,3,128,0,0,0,0,0,0,31,128,31,128,31,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254,255,254,0,0,0,0,0,0,3,128,3,128,3,128, + // 0x1ecc Ọ + 204,30,18,36,108,24,3,250,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,112,0,0,112,0,0,112,0, + // 0x1ecd ọ + 205,30,18,30,90,24,3,250,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,112,0,0,112,0,0,112,0, + // 0x1ece Ỏ + 206,30,18,42,126,24,3,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ecf ỏ + 207,30,18,39,117,24,3,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ed0 Ố + 208,30,18,42,126,24,3,0,0,1,192,0,1,192,0,1,192,3,142,0,3,142,0,3,142,0,28,112,0,28,112,0,28,112,0,224,14,0,224,14,0,224,14,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ed1 ố + 209,30,18,39,117,24,3,0,0,1,192,0,1,192,0,1,192,3,142,0,3,142,0,3,142,0,28,112,0,28,112,0,28,112,0,224,14,0,224,14,0,224,14,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ed2 Ồ + 210,30,18,42,126,24,3,0,224,0,0,224,0,0,224,0,0,28,112,0,28,112,0,28,112,0,3,142,0,3,142,0,3,142,0,28,1,192,28,1,192,28,1,192,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ed3 ồ + 211,30,18,39,117,24,3,0,224,0,0,224,0,0,224,0,0,28,112,0,28,112,0,28,112,0,3,142,0,3,142,0,3,142,0,28,1,192,28,1,192,28,1,192,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ed4 Ổ + 212,30,18,42,126,24,3,0,0,14,0,0,14,0,0,14,0,3,129,192,3,129,192,3,129,192,28,113,192,28,113,192,28,113,192,224,14,0,224,14,0,224,14,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ed5 ổ + 213,30,18,42,126,24,3,0,0,14,0,0,14,0,0,14,0,0,1,192,0,1,192,0,1,192,3,129,192,3,129,192,3,129,192,28,126,0,28,126,0,28,126,0,224,14,0,224,14,0,224,14,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ed6 Ỗ + 214,30,18,42,126,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,3,128,0,3,128,0,3,128,0,28,112,0,28,112,0,28,112,0,224,14,0,224,14,0,224,14,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ed7 ỗ + 215,30,18,42,126,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,3,128,0,3,128,0,3,128,0,28,112,0,28,112,0,28,112,0,224,14,0,224,14,0,224,14,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ed8 Ộ + 216,30,18,45,135,24,3,250,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,112,0,0,112,0,0,112,0, + // 0x1ed9 ộ + 217,30,18,42,126,24,3,250,3,240,0,3,240,0,3,240,0,28,14,0,28,14,0,28,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,254,0,31,254,0,31,254,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,112,0,0,112,0,0,112,0, + // 0x1eda Ớ + 218,30,21,42,126,24,3,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,1,192,28,1,192,28,1,192,0,0,56,0,0,56,0,0,56,31,240,56,31,240,56,31,240,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x1edb ớ + 219,30,21,36,108,24,3,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,28,1,192,28,1,192,28,1,192,0,0,56,0,0,56,0,0,56,31,240,56,31,240,56,31,240,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x1edc Ờ + 220,30,21,42,126,24,3,0,28,0,0,28,0,0,28,0,0,3,128,0,3,128,0,3,128,0,0,113,192,0,113,192,0,113,192,0,0,56,0,0,56,0,0,56,31,240,56,31,240,56,31,240,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x1edd ờ + 221,30,21,36,108,24,3,0,28,0,0,28,0,0,28,0,0,3,128,0,3,128,0,3,128,0,0,113,192,0,113,192,0,113,192,0,0,56,0,0,56,0,0,56,31,240,56,31,240,56,31,240,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x1ede Ở + 222,30,21,42,126,24,3,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,113,192,0,113,192,0,113,192,3,128,56,3,128,56,3,128,56,31,240,56,31,240,56,31,240,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x1edf ở + 223,30,21,39,117,24,3,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,129,192,3,129,192,3,129,192,0,0,56,0,0,56,0,0,56,31,240,56,31,240,56,31,240,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x1ee0 Ỡ + 224,30,21,39,117,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,1,192,0,1,192,0,1,192,31,240,56,31,240,56,31,240,56,224,14,56,224,14,56,224,14,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x1ee1 ỡ + 225,30,21,39,117,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,1,192,0,1,192,0,1,192,0,0,56,0,0,56,0,0,56,31,240,56,31,240,56,31,240,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x1ee2 Ợ + 226,30,21,42,126,24,3,250,0,1,192,0,1,192,0,1,192,0,0,56,0,0,56,0,0,56,31,240,56,31,240,56,31,240,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0,0,0,0,0,0,0,0,0,0,3,128,0,3,128,0,3,128,0, + // 0x1ee3 ợ + 227,30,21,36,108,24,3,250,0,1,192,0,1,192,0,1,192,0,0,56,0,0,56,0,0,56,31,240,56,31,240,56,31,240,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0,0,0,0,0,0,0,0,0,0,3,128,0,3,128,0,3,128,0, + // 0x1ee4 Ụ + 228,30,18,36,108,24,3,250,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0,0,0,0,0,0,0,0,0,0,0,112,0,0,112,0,0,112,0, + // 0x1ee5 ụ + 229,30,18,30,90,24,3,250,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192,0,0,0,0,0,0,0,0,0,0,112,0,0,112,0,0,112,0, + // 0x1ee6 Ủ + 230,30,18,42,126,24,3,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ee7 ủ + 231,30,18,39,117,24,3,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,15,192,224,15,192,224,15,192,31,241,192,31,241,192,31,241,192, + // 0x1ee8 Ứ + 232,30,21,42,126,24,3,0,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,129,192,3,129,192,3,129,192,0,0,56,0,0,56,0,0,56,224,14,56,224,14,56,224,14,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x1ee9 ứ + 233,30,21,36,108,24,3,0,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,3,129,192,3,129,192,3,129,192,0,0,56,0,0,56,0,0,56,224,14,56,224,14,56,224,14,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,126,0,224,126,0,224,126,0,31,142,0,31,142,0,31,142,0, + // 0x1eea Ừ + 234,30,21,42,126,24,3,0,224,0,0,224,0,0,224,0,0,28,0,0,28,0,0,28,0,0,3,129,192,3,129,192,3,129,192,0,0,56,0,0,56,0,0,56,224,14,56,224,14,56,224,14,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x1eeb ừ + 235,30,21,36,108,24,3,0,224,0,0,224,0,0,224,0,0,28,0,0,28,0,0,28,0,0,3,129,192,3,129,192,3,129,192,0,0,56,0,0,56,0,0,56,224,14,56,224,14,56,224,14,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,126,0,224,126,0,224,126,0,31,142,0,31,142,0,31,142,0, + // 0x1eec Ử + 236,30,21,42,126,24,3,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,113,192,0,113,192,0,113,192,3,128,56,3,128,56,3,128,56,224,14,56,224,14,56,224,14,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x1eed ử + 237,30,21,39,117,24,3,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,129,192,3,129,192,3,129,192,0,0,56,0,0,56,0,0,56,224,14,56,224,14,56,224,14,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,126,0,224,126,0,224,126,0,31,142,0,31,142,0,31,142,0, + // 0x1eee Ữ + 238,30,21,42,126,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,1,192,0,1,192,0,1,192,0,0,56,0,0,56,0,0,56,224,14,56,224,14,56,224,14,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0, + // 0x1eef ữ + 239,30,21,39,117,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,1,192,0,1,192,0,1,192,0,0,56,0,0,56,0,0,56,224,14,56,224,14,56,224,14,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,126,0,224,126,0,224,126,0,31,142,0,31,142,0,31,142,0, + // 0x1ef0 Ự + 240,30,21,42,126,24,3,250,0,1,192,0,1,192,0,1,192,0,0,56,0,0,56,0,0,56,224,14,56,224,14,56,224,14,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,31,240,0,31,240,0,31,240,0,0,0,0,0,0,0,0,0,0,3,128,0,3,128,0,3,128,0, + // 0x1ef1 ự + 241,30,21,36,108,24,3,250,0,1,192,0,1,192,0,1,192,0,0,56,0,0,56,0,0,56,224,14,56,224,14,56,224,14,56,224,15,192,224,15,192,224,15,192,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,224,126,0,224,126,0,224,126,0,31,142,0,31,142,0,31,142,0,0,0,0,0,0,0,0,0,0,3,128,0,3,128,0,3,128,0, + // 0x1ef2 Ỳ + 242,30,21,42,126,24,3,0,28,0,0,28,0,0,28,0,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,0,0,0,0,0,0,0,0,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x1ef3 ỳ + 243,30,18,45,135,24,3,250,28,0,0,28,0,0,28,0,0,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,15,192,28,15,192,28,15,192,3,241,192,3,241,192,3,241,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ef4 Ỵ + 244,30,21,36,108,24,3,250,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,0,0,0,0,0,0,0,0,0,112,0,0,112,0,0,112,0, + // 0x1ef5 ỵ + 245,30,18,30,90,24,3,250,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,15,192,28,15,192,28,15,192,3,241,192,3,241,192,3,241,192,0,1,192,0,1,192,0,1,192,31,254,0,31,254,0,31,254,0,0,112,0,0,112,0,0,112,0, + // 0x1ef6 Ỷ + 246,30,21,42,126,24,3,0,0,112,0,0,112,0,0,112,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,112,0,0,112,0,0,112,0,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x1ef7 ỷ + 247,30,18,45,135,24,3,250,3,128,0,3,128,0,3,128,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,3,128,0,3,128,0,3,128,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,15,192,28,15,192,28,15,192,3,241,192,3,241,192,3,241,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,31,254,0,31,254,0,31,254,0, + // 0x1ef8 Ỹ + 248,30,21,39,117,24,3,0,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,3,142,0,3,142,0,3,142,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + // 0x1ef9 ỹ + 249,30,18,42,126,24,3,250,31,129,192,31,129,192,31,129,192,224,126,0,224,126,0,224,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,28,15,192,28,15,192,28,15,192,3,241,192,3,241,192,3,241,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,31,254,0,31,254,0,31,254,0, +}; + +#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/fontdata/fontdata.h b/Marlin/src/lcd/tft/fontdata/fontdata.h new file mode 100644 index 000000000000..9508656a8dd4 --- /dev/null +++ b/Marlin/src/lcd/tft/fontdata/fontdata.h @@ -0,0 +1,117 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "../../../inc/MarlinConfigPre.h" + +#define NOTOSANS 1 +#define UNIFONT 2 +#define HELVETICA 3 + +#ifndef TFT_FONT + #define TFT_FONT NOTOSANS +#endif + +#define _LATIN_EXTENDED_A 1 +#define _CYRILLIC 2 +#define _GREEK 3 +#define _KATAKANA 4 +#define _KOREAN 5 +#define _VIETNAMESE 6 +#define _SIMPLIFIED_CHINESE 7 +#define _TRADITIONAL_CHINESE 8 + +#define LCODE_cz _LATIN_EXTENDED_A +#define LCODE_hr _LATIN_EXTENDED_A +#define LCODE_pl _LATIN_EXTENDED_A +#define LCODE_sk _LATIN_EXTENDED_A +#define LCODE_tr _LATIN_EXTENDED_A +#define LCODE_bg _CYRILLIC +#define LCODE_ru _CYRILLIC +#define LCODE_uk _CYRILLIC +#define LCODE_el _GREEK +#define LCODE_el_CY _GREEK +#define LCODE_jp_kana _KATAKANA +#define LCODE_ko_KR _KOREAN +#define LCODE_vi _VIETNAMESE +#define LCODE_zh_CN _SIMPLIFIED_CHINESE +#define LCODE_zh_TW _TRADITIONAL_CHINESE + +#define _LCODE(N) (CAT(LCODE_, LCD_LANGUAGE) == N) + +#if _LCODE(_LATIN_EXTENDED_A) + #define FONT_EXTRA Latin_Extended_A + #define EXTRA_GLYPHS 128 +#elif _LCODE(_CYRILLIC) + #define FONT_EXTRA Cyrillic + #define EXTRA_GLYPHS 145 +#elif _LCODE(_GREEK) + #define FONT_EXTRA Greek + #define EXTRA_GLYPHS 73 +#elif _LCODE(_KATAKANA) + #define FONT_EXTRA Katakana + #define EXTRA_GLYPHS 102 +#elif _LCODE(_KOREAN) + #define FONT_EXTRA Korean + #define EXTRA_GLYPHS 110 +#elif _LCODE(_VIETNAMESE) + #define FONT_EXTRA Vietnamese + #define EXTRA_GLYPHS 107 +#elif _LCODE(_SIMPLIFIED_CHINESE) + #define FONT_EXTRA Simplified_Chinese + #define EXTRA_GLYPHS 373 +#elif _LCODE(_TRADITIONAL_CHINESE) + #define FONT_EXTRA Traditional_Chinese + #define EXTRA_GLYPHS 307 +#else // Basin Latin (0x0020 - 0x007f) and Latin-1 Supplement (0x0080-0x00ff) characters only + #define EXTRA_GLYPHS 0 +#endif + +#undef _LCODE +#undef LCODE_cz +#undef LCODE_hr +#undef LCODE_pl +#undef LCODE_sk +#undef LCODE_tr +#undef LCODE_bg +#undef LCODE_ru +#undef LCODE_uk +#undef LCODE_el +#undef LCODE_el_CY +#undef LCODE_jp_kana +#undef LCODE_ko_KR +#undef LCODE_vi +#undef LCODE_zh_CN +#undef LCODE_zh_TW + +#if TFT_FONT == NOTOSANS + #define FONT_FAMILY NotoSans_Medium +#elif TFT_FONT == UNIFONT + #define FONT_FAMILY Unifont +#elif TFT_FONT == HELVETICA + #define FONT_FAMILY Helvetica + #ifdef FONT_EXTRA + #error "Helvetica font does not have symbols required for selected LCD_LANGUAGE." + #endif +#else + #error "Invalid TFT_FONT value." +#endif diff --git a/Marlin/src/lcd/tft/images/back_32x32x4.cpp b/Marlin/src/lcd/tft/images/back_32x32x4.cpp index 84a6e3aba6f5..d19bc7650981 100644 --- a/Marlin/src/lcd/tft/images/back_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/back_32x32x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t back_32x32x4[512] = { +extern const uint8_t back_32x32x4[]; +const tImage Back_32x32x4 = { (void *)back_32x32x4, 32, 32, GREYSCALE4 }; + +const uint8_t back_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/background_320x30x16.cpp b/Marlin/src/lcd/tft/images/background_320x30x16.cpp index 49c4a84a0c9d..8710bd2ea061 100644 --- a/Marlin/src/lcd/tft/images/background_320x30x16.cpp +++ b/Marlin/src/lcd/tft/images/background_320x30x16.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint16_t background_320x30x16[9600] = { +extern const uint16_t background_320x30x16[]; +const tImage Background320x30x16 = { (void *)background_320x30x16, 320, 30, HIGHCOLOR }; + +const uint16_t background_320x30x16[9600] = { 0x10F2, 0x18D2, 0x18D2, 0x10D2, 0x18D2, 0x18D2, 0x18D2, 0x18D2, 0x18D2, 0x18D2, 0x18D2, 0x18D2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18D2, 0x18F2, 0x18F2, 0x18D2, 0x18D2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F2, 0x18F3, 0x18F3, 0x20F2, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x2112, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x2113, 0x20F2, 0x20F3, 0x20F2, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x2113, 0x28F3, 0x2113, 0x20F3, 0x2113, 0x28F3, 0x20F3, 0x2113, 0x2113, 0x2113, 0x2113, 0x2113, 0x2113, 0x2113, 0x28F3, 0x28F3, 0x2113, 0x2113, 0x2113, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2113, 0x2913, 0x2913, 0x2913, 0x2914, 0x2913, 0x2913, 0x28F3, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x28F3, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x28F3, 0x2913, 0x2913, 0x2914, 0x2913, 0x2913, 0x2913, 0x2113, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2113, 0x2113, 0x2113, 0x28F3, 0x28F3, 0x2113, 0x2113, 0x2113, 0x2113, 0x2113, 0x2113, 0x2113, 0x20F3, 0x28F3, 0x2113, 0x20F3, 0x2113, 0x28F3, 0x2113, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F2, 0x20F3, 0x20F2, 0x2113, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x2112, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x20F2, 0x18F3, 0x18F3, 0x18F2, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x1D7C, 0x1D7C, 0x1D7C, 0x1D7C, 0x1D7C, 0x1D7C, 0x1D7C, 0x1D7C, 0x1D7C, 0x1D7C, 0x1D7C, 0x1D7C, 0x1D9C, 0x1D9C, 0x1D9C, 0x1D9C, 0x1D9C, 0x1D9C, 0x1D9C, 0x1D9C, 0x1D9D, 0x1D9D, 0x1D9D, 0x1D9D, 0x259C, 0x1DBC, 0x1D9D, 0x259D, 0x1D9C, 0x259C, 0x259C, 0x259C, 0x259C, 0x259C, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25DD, 0x25DD, 0x25BD, 0x25BD, 0x1DDD, 0x25DD, 0x25DD, 0x25DD, 0x25BD, 0x25DD, 0x25DD, 0x25DD, 0x25DD, 0x25DD, 0x25DD, 0x25DD, 0x25DD, 0x25DD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x2DFD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x2DFD, 0x2DFD, 0x2DFD, 0x2DFD, 0x2DFD, 0x25FD, 0x2DFE, 0x2DFD, 0x2DFD, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E3E, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E3D, 0x2E3D, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3D, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x365E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E3E, 0x365E, 0x2E5E, 0x2E5E, 0x2E5E, 0x365E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E5E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3D, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3D, 0x2E3E, 0x2E3E, 0x2E3E, 0x2E3D, 0x2E3D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E3E, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2E1D, 0x2DFD, 0x2DFD, 0x2DFE, 0x25FD, 0x2DFD, 0x2DFD, 0x2DFD, 0x2DFD, 0x2DFD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x2DFD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25FD, 0x25DD, 0x25DD, 0x25DD, 0x25DD, 0x25DD, 0x25DD, 0x25DD, 0x25DD, 0x25DD, 0x25BD, 0x25DD, 0x25DD, 0x25DD, 0x1DDD, 0x25BD, 0x25BD, 0x25DD, 0x25DD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x25BD, 0x1C7C, 0x1C7C, 0x1C7C, 0x1C7B, 0x1C7C, 0x1C7C, 0x1C7C, 0x1C7C, 0x1C7C, 0x1C7C, 0x1C9C, 0x1C9C, 0x1C9C, 0x1C9C, 0x1C9C, 0x1C9C, 0x1C9C, 0x1C9C, 0x1C9C, 0x1C9C, 0x1C9C, 0x1C9C, 0x249C, 0x1C9C, 0x1D9D, 0x1D7C, 0x1CFC, 0x1C9C, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x24BC, 0x1CBC, 0x1CBC, 0x24BC, 0x24BC, 0x24BC, 0x1CBC, 0x24DC, 0x24DC, 0x24DC, 0x253D, 0x25BD, 0x253D, 0x24DD, 0x24BC, 0x24BC, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24FD, 0x24DC, 0x24DC, 0x24FD, 0x24FD, 0x24FC, 0x24DD, 0x24FD, 0x251C, 0x25FD, 0x255D, 0x24FD, 0x24FD, 0x24FD, 0x24FD, 0x24FC, 0x24FD, 0x24FD, 0x24FD, 0x24FD, 0x24FD, 0x24FD, 0x24FD, 0x24FD, 0x2CFD, 0x2CFD, 0x2CFD, 0x2CFD, 0x2CFD, 0x2CFD, 0x2CFD, 0x2CFD, 0x251D, 0x24FD, 0x24FD, 0x251D, 0x2D1D, 0x24FD, 0x2CFD, 0x25BD, 0x25BD, 0x253C, 0x2CFC, 0x2D1D, 0x251D, 0x2CFD, 0x2CFD, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1C, 0x2D5D, 0x2DDE, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D1D, 0x2D3D, 0x2D1D, 0x2D1D, 0x2E1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D3D, 0x2D1D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D3D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2DDE, 0x2D5D, 0x2D1C, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2D1D, 0x2CFD, 0x2CFD, 0x251D, 0x2D1D, 0x2CFC, 0x253C, 0x25BD, 0x25BD, 0x2CFD, 0x24FD, 0x2D1D, 0x251D, 0x24FD, 0x24FD, 0x251D, 0x2CFD, 0x2CFD, 0x2CFD, 0x2CFD, 0x2CFD, 0x2CFD, 0x2CFD, 0x2CFD, 0x24FD, 0x24FD, 0x24FD, 0x24FD, 0x24FD, 0x24FD, 0x24FD, 0x24FD, 0x24FC, 0x24FD, 0x24FD, 0x24FD, 0x24FD, 0x255D, 0x25FD, 0x251C, 0x24FD, 0x24DD, 0x24FC, 0x24FD, 0x24FD, 0x24DC, 0x24DC, 0x24FD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24DD, 0x24BC, 0x24BC, 0x24DD, 0x253D, 0x25BD, 0x253D, 0x24DC, 0x24DC, 0x24DC, 0x1CBC, 0x24BC, 0x24BC, 0x24BC, 0x1CBC, 0x1CBC, 0x24BC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, 0x1CBC, diff --git a/Marlin/src/lcd/tft/images/bootscreen_112x38x1.cpp b/Marlin/src/lcd/tft/images/bootscreen_112x38x1.cpp index 2308917b1313..bac075e78bd1 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_112x38x1.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_112x38x1.cpp @@ -21,12 +21,16 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT #include "../../../inc/MarlinConfig.h" -extern const uint8_t marlin_logo_112x38x1[532] = { +extern const uint8_t marlin_logo_112x38x1[]; +const tImage MarlinLogo112x38x1 = { (void *)marlin_logo_112x38x1, 112, 38, GREYSCALE1 }; + +const uint8_t marlin_logo_112x38x1[532] = { B00000001,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111, B00001111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111, B00011110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11111111,B11111111, diff --git a/Marlin/src/lcd/tft/images/bootscreen_195x59x16.cpp b/Marlin/src/lcd/tft/images/bootscreen_195x59x16.cpp index 2545f845a80f..db49bba73367 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_195x59x16.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_195x59x16.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint16_t marlin_logo_195x59x16[11505] = { +extern const uint16_t marlin_logo_195x59x16[]; +const tImage MarlinLogo195x59x16 = { (void *)marlin_logo_195x59x16, 195, 59, HIGHCOLOR }; + +const uint16_t marlin_logo_195x59x16[11505] = { 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x18AD, 0x310E, 0x7A32, 0xAAD3, 0xD395, 0xD395, 0xD395, 0xD375, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD375, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x18AE, 0x20AD, 0x18AD, 0x496F, 0xAAD3, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD375, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD375, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0x18AD, 0x20AB, 0x18AD, 0x18AD, 0x18AD, 0x20EE, 0x8252, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD3B5, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xDB95, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, diff --git a/Marlin/src/lcd/tft/images/bootscreen_228x255x2.cpp b/Marlin/src/lcd/tft/images/bootscreen_228x255x2.cpp index 08994071538d..35dc5b5f9c9c 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_228x255x2.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_228x255x2.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t marlin_logo_228x255x2[14535] = { +extern const uint8_t marlin_logo_228x255x2[]; +const tImage MarlinLogo228x255x2 = { (void *)marlin_logo_228x255x2, 228, 255, GREYSCALE2 }; + +const uint8_t marlin_logo_228x255x2[14535] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, diff --git a/Marlin/src/lcd/tft/images/bootscreen_228x255x4.cpp b/Marlin/src/lcd/tft/images/bootscreen_228x255x4.cpp index 3ed61a1b20d2..fe60e173e6b2 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_228x255x4.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_228x255x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t marlin_logo_228x255x4[29070] = { +extern const uint8_t marlin_logo_228x255x4[]; +const tImage MarlinLogo228x255x4 = { (void *)marlin_logo_228x255x4, 228, 255, GREYSCALE4 }; + +const uint8_t marlin_logo_228x255x4[29070] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x9E, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2B, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xDF, 0xE1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, diff --git a/Marlin/src/lcd/tft/images/bootscreen_320x240x16.cpp b/Marlin/src/lcd/tft/images/bootscreen_320x240x16.cpp index cad6f1fef1b6..5c2f68beedf6 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_320x240x16.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_320x240x16.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint16_t marlin_logo_320x240x16[76800] = { +extern const uint16_t marlin_logo_320x240x16[]; +const tImage MarlinLogo320x240x16 = { (void *)marlin_logo_320x240x16, 320, 240, HIGHCOLOR }; + +const uint16_t marlin_logo_320x240x16[76800] = { 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x18AE, 0x20AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AE, 0x18AD, 0x18AD, 0x0119, 0x011A, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x011A, 0x0119, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x20AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x18AD, 0x18CE, 0x00F8, 0x0119, 0x0119, 0x0119, 0x0119, 0x08F7, 0x18CE, 0x18AD, 0x20AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x08D5, 0x011A, 0x0119, 0x10D2, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x28EE, 0x8252, 0xCB54, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18CD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x011A, 0x10D2, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18CD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x18CD, 0x18CD, 0x18AE, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x08F5, 0x00F9, 0x0119, 0x00F7, 0x00F7, 0x0119, 0x0119, 0x08F5, 0x18AE, 0x18AD, 0x18AD, 0x18CD, 0x18AD, 0x18AE, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x18AD, 0x20AE, 0x08F5, 0x0119, 0x0119, 0x10D2, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x20AE, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x20AD, 0x394F, 0xB313, 0xD395, 0x7211, 0x18AD, 0x18AD, 0x20CD, 0x18AD, 0x18AD, 0x20AD, 0x18AD, 0x18AD, 0x18AE, 0x0119, 0x00F9, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AE, 0x18AE, 0x18AD, 0x011A, 0x0119, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x0119, 0x011A, 0x18CD, 0x20AD, 0x18CD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x18AE, 0x0119, 0x011A, 0x08F3, 0x18AD, 0x18AD, 0x08F4, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x18AD, 0x18AE, 0x08F5, 0x0119, 0x00F9, 0x10D2, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x18AD, 0x18CD, 0x18AD, 0x18AD, 0x496F, 0xCB55, 0xD395, 0xBB54, 0x28CE, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x18AE, 0x18AD, 0x18AD, 0x18CD, 0x18AD, 0x011A, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18CD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x20AD, diff --git a/Marlin/src/lcd/tft/images/bootscreen_480x320x16.cpp b/Marlin/src/lcd/tft/images/bootscreen_480x320x16.cpp index b90228af03a8..ecec2f6e589d 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_480x320x16.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_480x320x16.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint16_t marlin_logo_480x320x16[153600] = { +extern const uint16_t marlin_logo_480x320x16[]; +const tImage MarlinLogo480x320x16 = { (void *)marlin_logo_480x320x16, 480, 320, HIGHCOLOR }; + +const uint16_t marlin_logo_480x320x16[153600] = { 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x10AE, 0x00F8, 0x00F9, 0x00D6, 0x18AD, 0x188C, 0x188C, 0x18AC, 0x188C, 0x18AC, 0x18AC, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x188C, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188D, 0x188D, 0x188D, 0x188D, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x011A, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x011A, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x188D, 0x18AD, 0x18AC, 0x18AC, 0x188D, 0x18AD, 0x18AD, 0x18AC, 0x18AD, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x188D, 0x18AC, 0x18AC, 0x00F9, 0x00F9, 0x18AC, 0x18AD, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188C, 0x188C, 0x18AB, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x10AE, 0x00F7, 0x00F9, 0x00F6, 0x188D, 0x18AC, 0x18AC, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x188C, 0x18AC, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x011A, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x011A, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x011A, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AC, 0x18AD, 0x18AD, 0x188D, 0x18AC, 0x18AC, 0x188D, 0x188D, 0x18AC, 0x18AD, 0x18AD, 0x18AD, 0x18AC, 0x18AD, 0x00F9, 0x00F9, 0x18AC, 0x18AD, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x188C, 0x188C, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x10AF, 0x00F8, 0x00F8, 0x00F7, 0x18AD, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x188C, 0x188D, 0x18AC, 0x18AD, 0x18AC, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x011A, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x011A, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x011A, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AC, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AC, 0x18AD, 0x00F9, 0x00F9, 0x18AC, 0x18AD, 0x18AC, 0x18AC, 0x18AD, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x188C, 0x188C, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, diff --git a/Marlin/src/lcd/tft/images/btn_rounded_42x39x4.cpp b/Marlin/src/lcd/tft/images/btn_rounded_42x39x4.cpp index bd7b9220ebaa..7045558df595 100644 --- a/Marlin/src/lcd/tft/images/btn_rounded_42x39x4.cpp +++ b/Marlin/src/lcd/tft/images/btn_rounded_42x39x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t btn_rounded_42x39x4[819] = { +extern const uint8_t btn_rounded_42x39x4[]; +const tImage BtnRounded_42x39x4 = { (void *)btn_rounded_42x39x4, 42, 39, GREYSCALE4 }; + +const uint8_t btn_rounded_42x39x4[819] = { 0x87, 0x87, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x78, 0x78, 0x87, 0x77, 0xAB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xB9, 0x77, 0x78, 0x87, 0x8E, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xD7, 0x68, diff --git a/Marlin/src/lcd/tft/images/btn_rounded_64x52x4.cpp b/Marlin/src/lcd/tft/images/btn_rounded_64x52x4.cpp index 4768f7e5fc89..c0892a6a6d11 100644 --- a/Marlin/src/lcd/tft/images/btn_rounded_64x52x4.cpp +++ b/Marlin/src/lcd/tft/images/btn_rounded_64x52x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t btn_rounded_64x52x4[1664] = { +extern const uint8_t btn_rounded_64x52x4[]; +const tImage BtnRounded_64x52x4 = { (void *)btn_rounded_64x52x4, 64, 52, GREYSCALE4 }; + +const uint8_t btn_rounded_64x52x4[1664] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x79, 0xCE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xEB, 0x87, 0x77, 0x78, diff --git a/Marlin/src/lcd/tft/images/cancel_64x64x4.cpp b/Marlin/src/lcd/tft/images/cancel_64x64x4.cpp index a315e2df1cbe..9198c4b717b8 100644 --- a/Marlin/src/lcd/tft/images/cancel_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/cancel_64x64x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t cancel_64x64x4[2048] = { +extern const uint8_t cancel_64x64x4[]; +const tImage Cancel_64x64x4 = { (void *)cancel_64x64x4, 64, 64, GREYSCALE4 }; + +const uint8_t cancel_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/chamber_64x64x4.cpp b/Marlin/src/lcd/tft/images/chamber_64x64x4.cpp index 23722f616d13..8def3df406d7 100644 --- a/Marlin/src/lcd/tft/images/chamber_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/chamber_64x64x4.cpp @@ -21,10 +21,15 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t chamber_64x64x4[2048] = { +extern const uint8_t chamber_64x64x4[], chamber_heated_64x64x4[]; +const tImage Chamber_64x64x4 = { (void *)chamber_64x64x4, 64, 64, GREYSCALE4 }; +const tImage Chamber_Heated_64x64x4 = { (void *)chamber_heated_64x64x4, 64, 64, GREYSCALE4 }; + +const uint8_t chamber_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -91,7 +96,7 @@ extern const uint8_t chamber_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; -extern const uint8_t chamber_heated_64x64x4[2048] = { +const uint8_t chamber_heated_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/confirm_64x64x4.cpp b/Marlin/src/lcd/tft/images/confirm_64x64x4.cpp index ff623ed34917..2c3da6fb79a3 100644 --- a/Marlin/src/lcd/tft/images/confirm_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/confirm_64x64x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t confirm_64x64x4[2048] = { +extern const uint8_t confirm_64x64x4[]; +const tImage Confirm_64x64x4 = { (void *)confirm_64x64x4, 64, 64, GREYSCALE4 }; + +const uint8_t confirm_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/decrease_64x64x4.cpp b/Marlin/src/lcd/tft/images/decrease_64x64x4.cpp index b58670098622..dd85a1e66c70 100644 --- a/Marlin/src/lcd/tft/images/decrease_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/decrease_64x64x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t decrease_64x64x4[2048] = { +extern const uint8_t decrease_64x64x4[]; +const tImage Decrease_64x64x4 = { (void *)decrease_64x64x4, 64, 64, GREYSCALE4 }; + +const uint8_t decrease_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/directory_32x32x4.cpp b/Marlin/src/lcd/tft/images/directory_32x32x4.cpp index 5fa55c8468f0..847eafd6d403 100644 --- a/Marlin/src/lcd/tft/images/directory_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/directory_32x32x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t directory_32x32x4[512] = { +extern const uint8_t directory_32x32x4[]; +const tImage Directory_32x32x4 = { (void *)directory_32x32x4, 32, 32, GREYSCALE4 }; + +const uint8_t directory_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/down_32x32x4.cpp b/Marlin/src/lcd/tft/images/down_32x32x4.cpp index eabf6f97fec5..2ea8cc33c06f 100644 --- a/Marlin/src/lcd/tft/images/down_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/down_32x32x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t down_32x32x4[512] = { +extern const uint8_t down_32x32x4[]; +const tImage Down_32x32x4 = { (void *)down_32x32x4, 32, 32, GREYSCALE4 }; + +const uint8_t down_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/fan_64x64x4.cpp b/Marlin/src/lcd/tft/images/fan_64x64x4.cpp index 1a154a6ea415..f4a09afe2b96 100644 --- a/Marlin/src/lcd/tft/images/fan_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/fan_64x64x4.cpp @@ -21,10 +21,15 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t fan0_64x64x4[2048] = { +extern const uint8_t fan0_64x64x4[], fan1_64x64x4[]; +const tImage Fan0_64x64x4 = { (void *)fan0_64x64x4, 64, 64, GREYSCALE4 }; +const tImage Fan1_64x64x4 = { (void *)fan1_64x64x4, 64, 64, GREYSCALE4 }; + +const uint8_t fan0_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -91,7 +96,7 @@ extern const uint8_t fan0_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; -extern const uint8_t fan1_64x64x4[2048] = { +const uint8_t fan1_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/fan_fast_64x64x4.cpp b/Marlin/src/lcd/tft/images/fan_fast_64x64x4.cpp index 4586954ccf57..e5b4bf3ae857 100644 --- a/Marlin/src/lcd/tft/images/fan_fast_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/fan_fast_64x64x4.cpp @@ -21,10 +21,15 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t fan_fast0_64x64x4[2048] = { +extern const uint8_t fan_fast0_64x64x4[], fan_fast1_64x64x4[]; +const tImage Fan_Fast0_64x64x4 = { (void *)fan_fast0_64x64x4, 64, 64, GREYSCALE4 }; +const tImage Fan_Fast1_64x64x4 = { (void *)fan_fast1_64x64x4, 64, 64, GREYSCALE4 }; + +const uint8_t fan_fast0_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -91,7 +96,7 @@ extern const uint8_t fan_fast0_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; -extern const uint8_t fan_fast1_64x64x4[2048] = { +const uint8_t fan_fast1_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/fan_slow_64x64x4.cpp b/Marlin/src/lcd/tft/images/fan_slow_64x64x4.cpp index 7bbd149ae797..009a7572a72f 100644 --- a/Marlin/src/lcd/tft/images/fan_slow_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/fan_slow_64x64x4.cpp @@ -21,10 +21,15 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t fan_slow0_64x64x4[2048] = { +extern const uint8_t fan_slow0_64x64x4[], fan_slow1_64x64x4[]; +const tImage Fan_Slow0_64x64x4 = { (void *)fan_slow0_64x64x4, 64, 64, GREYSCALE4 }; +const tImage Fan_Slow1_64x64x4 = { (void *)fan_slow1_64x64x4, 64, 64, GREYSCALE4 }; + +const uint8_t fan_slow0_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -91,7 +96,7 @@ extern const uint8_t fan_slow0_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; -extern const uint8_t fan_slow1_64x64x4[2048] = { +const uint8_t fan_slow1_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/feedrate_32x32x4.cpp b/Marlin/src/lcd/tft/images/feedrate_32x32x4.cpp index 52f9124fdbd9..c5a51c49a783 100644 --- a/Marlin/src/lcd/tft/images/feedrate_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/feedrate_32x32x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t feedrate_32x32x4[512] = { +extern const uint8_t feedrate_32x32x4[]; +const tImage Feedrate_32x32x4 = { (void *)feedrate_32x32x4, 32, 32, GREYSCALE4 }; + +const uint8_t feedrate_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x87, 0x77, 0x77, 0x78, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, 0x77, 0x8A, 0xCD, 0xA8, 0xCC, 0xB9, 0x87, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x77, 0x9C, 0xEF, 0xFF, 0xA8, 0xFF, 0xFF, 0xDA, 0x87, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/flowrate_32x32x4.cpp b/Marlin/src/lcd/tft/images/flowrate_32x32x4.cpp index 2259472f792a..ae98ed235b11 100644 --- a/Marlin/src/lcd/tft/images/flowrate_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/flowrate_32x32x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t flowrate_32x32x4[512] = { +extern const uint8_t flowrate_32x32x4[]; +const tImage Flowrate_32x32x4 = { (void *)flowrate_32x32x4, 32, 32, GREYSCALE4 }; + +const uint8_t flowrate_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x77, 0x77, 0x88, 0x88, 0x88, 0x87, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/heated_bed_64x64x4.cpp b/Marlin/src/lcd/tft/images/heated_bed_64x64x4.cpp index 5382ff7558ed..486c5dfaa14c 100644 --- a/Marlin/src/lcd/tft/images/heated_bed_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/heated_bed_64x64x4.cpp @@ -21,10 +21,15 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t bed_64x64x4[2048] = { +extern const uint8_t bed_64x64x4[], bed_heated_64x64x4[]; +const tImage Bed_64x64x4 = { (void *)bed_64x64x4, 64, 64, GREYSCALE4 }; +const tImage Bed_Heated_64x64x4 = { (void *)bed_heated_64x64x4, 64, 64, GREYSCALE4 }; + +const uint8_t bed_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -91,7 +96,7 @@ extern const uint8_t bed_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; -extern const uint8_t bed_heated_64x64x4[2048] = { +const uint8_t bed_heated_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/home_64x64x4.cpp b/Marlin/src/lcd/tft/images/home_64x64x4.cpp index 27384c99c0f7..a98978ff25be 100644 --- a/Marlin/src/lcd/tft/images/home_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/home_64x64x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t home_64x64x4[2048] = { +extern const uint8_t home_64x64x4[]; +const tImage Home_64x64x4 = { (void *)home_64x64x4, 64, 64, GREYSCALE4 }; + +const uint8_t home_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/hotend_64x64x4.cpp b/Marlin/src/lcd/tft/images/hotend_64x64x4.cpp index 7b068aa7e404..f3829dd89e42 100644 --- a/Marlin/src/lcd/tft/images/hotend_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/hotend_64x64x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t hotend_64x64x4[2048] = { +extern const uint8_t hotend_64x64x4[]; +const tImage HotEnd_64x64x4 = { (void *)hotend_64x64x4, 64, 64, GREYSCALE4 }; + +const uint8_t hotend_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/increase_64x64x4.cpp b/Marlin/src/lcd/tft/images/increase_64x64x4.cpp index 710fe8e78e13..58b43cf66139 100644 --- a/Marlin/src/lcd/tft/images/increase_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/increase_64x64x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t increase_64x64x4[2048] = { +extern const uint8_t increase_64x64x4[]; +const tImage Increase_64x64x4 = { (void *)increase_64x64x4, 64, 64, GREYSCALE4 }; + +const uint8_t increase_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/left_32x32x4.cpp b/Marlin/src/lcd/tft/images/left_32x32x4.cpp index 486518d5085d..b1d750a8121f 100644 --- a/Marlin/src/lcd/tft/images/left_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/left_32x32x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t left_32x32x4[512] = { +extern const uint8_t left_32x32x4[]; +const tImage Left_32x32x4 = { (void *)left_32x32x4, 32, 32, GREYSCALE4 }; + +const uint8_t left_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/leveling_32x32x4.cpp b/Marlin/src/lcd/tft/images/leveling_32x32x4.cpp index 3243d7f27f35..0863feafba10 100644 --- a/Marlin/src/lcd/tft/images/leveling_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/leveling_32x32x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t leveling_32x32x4[512] = { +extern const uint8_t leveling_32x32x4[]; +const tImage Leveling_32x32x4 = { (void *)leveling_32x32x4, 32, 32, GREYSCALE4 }; + +const uint8_t leveling_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/menu_64x64x4.cpp b/Marlin/src/lcd/tft/images/menu_64x64x4.cpp index bbbe66ab1ba1..2c4454148e9b 100644 --- a/Marlin/src/lcd/tft/images/menu_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/menu_64x64x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t menu_64x64x4[2048] = { +extern const uint8_t menu_64x64x4[]; +const tImage Menu_64x64x4 = { (void *)menu_64x64x4, 64, 64, GREYSCALE4 }; + +const uint8_t menu_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/pause_64x64x4.cpp b/Marlin/src/lcd/tft/images/pause_64x64x4.cpp index 3079b22a17c9..430fa8422c91 100644 --- a/Marlin/src/lcd/tft/images/pause_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/pause_64x64x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t pause_64x64x4[2048] = { +extern const uint8_t pause_64x64x4[]; +const tImage Pause_64x64x4 = { (void *)pause_64x64x4, 64, 64, GREYSCALE4 }; + +const uint8_t pause_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/refresh_32x32x4.cpp b/Marlin/src/lcd/tft/images/refresh_32x32x4.cpp index f8548d2837a4..223e65923369 100644 --- a/Marlin/src/lcd/tft/images/refresh_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/refresh_32x32x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t refresh_32x32x4[512] = { +extern const uint8_t refresh_32x32x4[]; +const tImage Refresh_32x32x4 = { (void *)refresh_32x32x4, 32, 32, GREYSCALE4 }; + +const uint8_t refresh_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/right_32x32x4.cpp b/Marlin/src/lcd/tft/images/right_32x32x4.cpp index ab9c36eae069..67d14967871c 100644 --- a/Marlin/src/lcd/tft/images/right_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/right_32x32x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t right_32x32x4[512] = { +extern const uint8_t right_32x32x4[]; +const tImage Right_32x32x4 = { (void *)right_32x32x4, 32, 32, GREYSCALE4 }; + +const uint8_t right_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/sd_64x64x4.cpp b/Marlin/src/lcd/tft/images/sd_64x64x4.cpp index 3f786f46caa8..805021f21be9 100644 --- a/Marlin/src/lcd/tft/images/sd_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/sd_64x64x4.cpp @@ -21,9 +21,13 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT +extern const uint8_t sd_64x64x4[]; +const tImage SD_64x64x4 = { (void *)sd_64x64x4, 64, 64, GREYSCALE4 }; + extern const uint8_t sd_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/settings_64x64x4.cpp b/Marlin/src/lcd/tft/images/settings_64x64x4.cpp index 093e7ff61ef8..08174051430c 100644 --- a/Marlin/src/lcd/tft/images/settings_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/settings_64x64x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t settings_64x64x4[2048] = { +extern const uint8_t settings_64x64x4[]; +const tImage Settings_64x64x4 = { (void *)settings_64x64x4, 64, 64, GREYSCALE4 }; + +const uint8_t settings_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/slider_8x16x4.cpp b/Marlin/src/lcd/tft/images/slider_8x16x4.cpp index 2839cd980634..e3d6298aa28d 100644 --- a/Marlin/src/lcd/tft/images/slider_8x16x4.cpp +++ b/Marlin/src/lcd/tft/images/slider_8x16x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t slider_8x16x4[64] = { +extern const uint8_t slider_8x16x4[]; +const tImage Slider8x16x4 = { (void *)slider_8x16x4, 8, 16, GREYSCALE4 }; + +const uint8_t slider_8x16x4[64] = { 0x88, 0xFF, 0xFF, 0x88, 0x8F, 0xFF, 0xFF, 0xF8, 0x8F, 0xFF, 0xFF, 0xF8, diff --git a/Marlin/src/lcd/tft/images/time_elapsed_32x32x4.cpp b/Marlin/src/lcd/tft/images/time_elapsed_32x32x4.cpp index e6626f4c876b..4ba462431f81 100644 --- a/Marlin/src/lcd/tft/images/time_elapsed_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/time_elapsed_32x32x4.cpp @@ -17,10 +17,14 @@ **/ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t time_elapsed_32x32x4[512] = { +extern const uint8_t time_elapsed_32x32x4[]; +const tImage Time_Elapsed_32x32x4 = { (void *)time_elapsed_32x32x4, 32, 32, GREYSCALE4 }; + +const uint8_t time_elapsed_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0xad, 0xca, 0x98, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x8a, 0xff, 0xff, 0xfe, 0xb8, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/time_remaining_32x32x4.cpp b/Marlin/src/lcd/tft/images/time_remaining_32x32x4.cpp index 8c64403a2bb3..7088e9dea302 100644 --- a/Marlin/src/lcd/tft/images/time_remaining_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/time_remaining_32x32x4.cpp @@ -17,10 +17,14 @@ **/ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t time_remaining_32x32x4[512] = { +extern const uint8_t time_remaining_32x32x4[]; +const tImage Time_Remaining_32x32x4 = { (void *)time_remaining_32x32x4, 32, 32, GREYSCALE4 }; + +const uint8_t time_remaining_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x9a, 0xbd, 0xb8, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x89, 0xce, 0xff, 0xff, 0xf9, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/images/up_32x32x4.cpp b/Marlin/src/lcd/tft/images/up_32x32x4.cpp index b36a028cc909..9147ea9b2c32 100644 --- a/Marlin/src/lcd/tft/images/up_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/up_32x32x4.cpp @@ -21,10 +21,14 @@ */ #include "../../../inc/MarlinConfigPre.h" +#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t up_32x32x4[512] = { +extern const uint8_t up_32x32x4[]; +const tImage Up_32x32x4 = { (void *)up_32x32x4, 32, 32, GREYSCALE4 }; + +const uint8_t up_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, diff --git a/Marlin/src/lcd/tft/tft.h b/Marlin/src/lcd/tft/tft.h index 15464cb0459d..87dea453df90 100644 --- a/Marlin/src/lcd/tft/tft.h +++ b/Marlin/src/lcd/tft/tft.h @@ -23,7 +23,7 @@ #include "tft_queue.h" #include "canvas.h" -#include "tft_color.h" +#include "ui_theme.h" #include "tft_string.h" #include "tft_image.h" #include "../tft_io/tft_io.h" diff --git a/Marlin/src/lcd/tft/tft_color.h b/Marlin/src/lcd/tft/tft_color.h index 66ec41e71143..cd03224615a9 100644 --- a/Marlin/src/lcd/tft/tft_color.h +++ b/Marlin/src/lcd/tft/tft_color.h @@ -67,125 +67,3 @@ #define COLOR_VIVID_GREEN 0x7FE0 // #7FFF00 #define COLOR_DARK_ORANGE 0xFC40 // #FF8C00 #define COLOR_CORAL_RED 0xF9E7 // #FF3F3F - -#ifndef COLOR_BACKGROUND - #define COLOR_BACKGROUND COLOR_MIDNIGHT_BLUE -#endif -#ifndef COLOR_SELECTION_BG - #define COLOR_SELECTION_BG COLOR_DARK_PURPLE -#endif -#ifndef COLOR_WEBSITE_URL - #define COLOR_WEBSITE_URL COLOR_OCEAN_BOAT_BLUE -#endif - -#ifndef COLOR_INACTIVE - #define COLOR_INACTIVE COLOR_GREY -#endif -#ifndef COLOR_COLD - #define COLOR_COLD COLOR_CYAN -#endif -#ifndef COLOR_HOTEND - #define COLOR_HOTEND COLOR_SCARLET -#endif -#ifndef COLOR_HEATED_BED - #define COLOR_HEATED_BED COLOR_DARK_ORANGE -#endif -#ifndef COLOR_CHAMBER - #define COLOR_CHAMBER COLOR_DARK_ORANGE -#endif -#ifndef COLOR_COOLER - #define COLOR_COOLER COLOR_DARK_ORANGE -#endif -#ifndef COLOR_FAN - #define COLOR_FAN COLOR_CYAN -#endif - -#ifndef COLOR_AXIS_HOMED - #define COLOR_AXIS_HOMED COLOR_WHITE -#endif -#ifndef COLOR_AXIS_NOT_HOMED - #define COLOR_AXIS_NOT_HOMED COLOR_YELLOW -#endif - -#ifndef COLOR_RATE_100 - #define COLOR_RATE_100 COLOR_VIVID_GREEN -#endif -#ifndef COLOR_RATE_ALTERED - #define COLOR_RATE_ALTERED COLOR_YELLOW -#endif - -#ifndef COLOR_PRINT_TIME - #define COLOR_PRINT_TIME COLOR_CYAN -#endif - -#ifndef COLOR_PROGRESS_FRAME - #define COLOR_PROGRESS_FRAME COLOR_WHITE -#endif -#ifndef COLOR_PROGRESS_BAR - #define COLOR_PROGRESS_BAR COLOR_BLUE -#endif -#ifndef COLOR_PROGRESS_BG - #define COLOR_PROGRESS_BG COLOR_BLACK -#endif - -#ifndef COLOR_STATUS_MESSAGE - #define COLOR_STATUS_MESSAGE COLOR_YELLOW -#endif - -#ifndef COLOR_CONTROL_ENABLED - #define COLOR_CONTROL_ENABLED COLOR_WHITE -#endif -#ifndef COLOR_CONTROL_DISABLED - #define COLOR_CONTROL_DISABLED COLOR_GREY -#endif -#ifndef COLOR_CONTROL_CANCEL - #define COLOR_CONTROL_CANCEL COLOR_SCARLET -#endif -#ifndef COLOR_CONTROL_CONFIRM - #define COLOR_CONTROL_CONFIRM COLOR_VIVID_GREEN -#endif -#ifndef COLOR_BUSY - #define COLOR_BUSY COLOR_SILVER -#endif - -#ifndef COLOR_MENU_TEXT - #define COLOR_MENU_TEXT COLOR_YELLOW -#endif -#ifndef COLOR_MENU_VALUE - #define COLOR_MENU_VALUE COLOR_WHITE -#endif - -#ifndef COLOR_SLIDER - #define COLOR_SLIDER COLOR_WHITE -#endif -#ifndef COLOR_SLIDER_INACTIVE - #define COLOR_SLIDER_INACTIVE COLOR_GREY -#endif - -#ifndef COLOR_UBL - #define COLOR_UBL COLOR_WHITE -#endif - -#ifndef COLOR_TOUCH_CALIBRATION - #define COLOR_TOUCH_CALIBRATION COLOR_WHITE -#endif - -#ifndef COLOR_KILL_SCREEN_BG - #define COLOR_KILL_SCREEN_BG COLOR_MAROON -#endif -#ifndef COLOR_KILL_SCREEN_TEXT - #define COLOR_KILL_SCREEN_TEXT COLOR_WHITE -#endif - -#ifndef E_BTN_COLOR - #define E_BTN_COLOR COLOR_YELLOW -#endif -#ifndef X_BTN_COLOR - #define X_BTN_COLOR COLOR_CORAL_RED -#endif -#ifndef Y_BTN_COLOR - #define Y_BTN_COLOR COLOR_VIVID_GREEN -#endif -#ifndef Z_BTN_COLOR - #define Z_BTN_COLOR COLOR_LIGHT_BLUE -#endif diff --git a/Marlin/src/lcd/tft/tft_font.h b/Marlin/src/lcd/tft/tft_font.h index 6c8838ed7c48..114c1b735e58 100644 --- a/Marlin/src/lcd/tft/tft_font.h +++ b/Marlin/src/lcd/tft/tft_font.h @@ -21,10 +21,6 @@ */ #pragma once -#include "../../inc/MarlinConfigPre.h" - -#if HAS_GRAPHICAL_TFT - #define JOIN(A,B,C) CAT(CAT(A, B), C) #define MENU_FONT_NAME JOIN(FONT_FAMILY, _, FONT_SIZE) #define SYMBOLS_FONT_NAME JOIN(FONT_FAMILY, _Symbols_, FONT_SIZE) @@ -36,5 +32,3 @@ extern const uint8_t SYMBOLS_FONT_NAME[]; #define EXTRA_FONT_NAME JOIN(FONT_FAMILY, JOIN(_, FONT_EXTRA, _), FONT_SIZE) extern const uint8_t EXTRA_FONT_NAME[]; #endif - -#endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/tft_image.cpp b/Marlin/src/lcd/tft/tft_image.cpp index 6309de032ebb..1a5851948d1e 100644 --- a/Marlin/src/lcd/tft/tft_image.cpp +++ b/Marlin/src/lcd/tft/tft_image.cpp @@ -27,58 +27,10 @@ #include "tft_image.h" #include "ui_common.h" -const tImage NoLogo = { nullptr, 0, 0, NOCOLORS }; - -#if ENABLED(SHOW_BOOTSCREEN) - const tImage MarlinLogo112x38x1 = { (void *)marlin_logo_112x38x1, 112, 38, GREYSCALE1 }; - const tImage MarlinLogo228x255x2 = { (void *)marlin_logo_228x255x2, 228, 255, GREYSCALE2 }; - const tImage MarlinLogo228x255x4 = { (void *)marlin_logo_228x255x4, 228, 255, GREYSCALE4 }; - const tImage MarlinLogo195x59x16 = { (void *)marlin_logo_195x59x16, 195, 59, HIGHCOLOR }; - const tImage MarlinLogo320x240x16 = { (void *)marlin_logo_320x240x16, 320, 240, HIGHCOLOR }; - const tImage MarlinLogo480x320x16 = { (void *)marlin_logo_480x320x16, 480, 320, HIGHCOLOR }; -#endif -const tImage Background320x30x16 = { (void *)background_320x30x16, 320, 30, HIGHCOLOR }; - -const tImage HotEnd_64x64x4 = { (void *)hotend_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Bed_64x64x4 = { (void *)bed_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Bed_Heated_64x64x4 = { (void *)bed_heated_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Chamber_64x64x4 = { (void *)chamber_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Chamber_Heated_64x64x4 = { (void *)chamber_heated_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Fan0_64x64x4 = { (void *)fan0_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Fan1_64x64x4 = { (void *)fan1_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Fan_Slow0_64x64x4 = { (void *)fan_slow0_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Fan_Slow1_64x64x4 = { (void *)fan_slow1_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Fan_Fast0_64x64x4 = { (void *)fan_fast0_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Fan_Fast1_64x64x4 = { (void *)fan_fast1_64x64x4, 64, 64, GREYSCALE4 }; -const tImage SD_64x64x4 = { (void *)sd_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Home_64x64x4 = { (void *)home_64x64x4, 64, 64, GREYSCALE4 }; -const tImage BtnRounded_64x52x4 = { (void *)btn_rounded_64x52x4, 64, 52, GREYSCALE4 }; -const tImage BtnRounded_42x39x4 = { (void *)btn_rounded_42x39x4, 42, 39, GREYSCALE4 }; -const tImage Menu_64x64x4 = { (void *)menu_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Settings_64x64x4 = { (void *)settings_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Confirm_64x64x4 = { (void *)confirm_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Cancel_64x64x4 = { (void *)cancel_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Increase_64x64x4 = { (void *)increase_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Decrease_64x64x4 = { (void *)decrease_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Pause_64x64x4 = { (void *)pause_64x64x4, 64, 64, GREYSCALE4 }; - -const tImage Feedrate_32x32x4 = { (void *)feedrate_32x32x4, 32, 32, GREYSCALE4 }; -const tImage Flowrate_32x32x4 = { (void *)flowrate_32x32x4, 32, 32, GREYSCALE4 }; -const tImage Directory_32x32x4 = { (void *)directory_32x32x4, 32, 32, GREYSCALE4 }; -const tImage Back_32x32x4 = { (void *)back_32x32x4, 32, 32, GREYSCALE4 }; -const tImage Up_32x32x4 = { (void *)up_32x32x4, 32, 32, GREYSCALE4 }; -const tImage Down_32x32x4 = { (void *)down_32x32x4, 32, 32, GREYSCALE4 }; -const tImage Left_32x32x4 = { (void *)left_32x32x4, 32, 32, GREYSCALE4 }; -const tImage Right_32x32x4 = { (void *)right_32x32x4, 32, 32, GREYSCALE4 }; -const tImage Refresh_32x32x4 = { (void *)refresh_32x32x4, 32, 32, GREYSCALE4 }; -const tImage Leveling_32x32x4 = { (void *)leveling_32x32x4, 32, 32, GREYSCALE4 }; -const tImage Time_Elapsed_32x32x4 = { (void *)time_elapsed_32x32x4, 32, 32, GREYSCALE4 }; -const tImage Time_Remaining_32x32x4 = { (void *)time_remaining_32x32x4, 32, 32, GREYSCALE4 }; - -const tImage Slider8x16x4 = { (void *)slider_8x16x4, 8, 16, GREYSCALE4 }; +const tImage NoLogo = { nullptr, 0, 0, NOCOLORS }; const tImage images[imgCount] = { - TERN(SHOW_BOOTSCREEN, TERN(BOOT_MARLIN_LOGO_SMALL, MarlinLogo195x59x16, MARLIN_LOGO_FULL_SIZE), NoLogo), + TERN(SHOW_BOOTSCREEN, BOOTSCREEN_LOGO, NoLogo), HotEnd_64x64x4, Bed_64x64x4, Bed_Heated_64x64x4, diff --git a/Marlin/src/lcd/tft/tft_image.h b/Marlin/src/lcd/tft/tft_image.h index 7761a72dc34e..7087ea44ba99 100644 --- a/Marlin/src/lcd/tft/tft_image.h +++ b/Marlin/src/lcd/tft/tft_image.h @@ -25,47 +25,6 @@ #include -extern const uint8_t marlin_logo_112x38x1[]; -extern const uint8_t marlin_logo_228x255x2[]; -extern const uint8_t marlin_logo_228x255x4[]; -extern const uint16_t marlin_logo_195x59x16[]; -extern const uint16_t marlin_logo_320x240x16[]; -extern const uint16_t marlin_logo_480x320x16[]; -extern const uint16_t background_320x30x16[]; - -extern const uint8_t hotend_64x64x4[]; -extern const uint8_t bed_64x64x4[], bed_heated_64x64x4[]; -extern const uint8_t chamber_64x64x4[], chamber_heated_64x64x4[]; -extern const uint8_t fan0_64x64x4[], fan1_64x64x4[]; -extern const uint8_t fan_slow0_64x64x4[], fan_slow1_64x64x4[]; -extern const uint8_t fan_fast0_64x64x4[], fan_fast1_64x64x4[]; -extern const uint8_t sd_64x64x4[]; -extern const uint8_t home_64x64x4[]; -extern const uint8_t btn_rounded_64x52x4[]; -extern const uint8_t btn_rounded_42x39x4[]; -extern const uint8_t menu_64x64x4[]; -extern const uint8_t settings_64x64x4[]; -extern const uint8_t confirm_64x64x4[]; -extern const uint8_t cancel_64x64x4[]; -extern const uint8_t increase_64x64x4[]; -extern const uint8_t decrease_64x64x4[]; -extern const uint8_t pause_64x64x4[]; - -extern const uint8_t feedrate_32x32x4[]; -extern const uint8_t flowrate_32x32x4[]; -extern const uint8_t directory_32x32x4[]; -extern const uint8_t back_32x32x4[]; -extern const uint8_t up_32x32x4[]; -extern const uint8_t down_32x32x4[]; -extern const uint8_t left_32x32x4[]; -extern const uint8_t right_32x32x4[]; -extern const uint8_t refresh_32x32x4[]; -extern const uint8_t leveling_32x32x4[]; -extern const uint8_t time_elapsed_32x32x4[]; -extern const uint8_t time_remaining_32x32x4[]; - -extern const uint8_t slider_8x16x4[]; - enum MarlinImage : uint8_t { imgBootScreen = 0x00, imgHotEnd, diff --git a/Marlin/src/lcd/tft/tft_string.h b/Marlin/src/lcd/tft/tft_string.h index 420a3cc2b559..ae05df40f00d 100644 --- a/Marlin/src/lcd/tft/tft_string.h +++ b/Marlin/src/lcd/tft/tft_string.h @@ -51,98 +51,7 @@ #define FONT_MARLIN_HIEROGLYPHS_2BPP 0xA2 #define FONT_MARLIN_HIEROGLYPHS_4BPP 0xA4 -#define _LATIN_EXTENDED_A 1 -#define _CYRILLIC 2 -#define _GREEK 3 -#define _KATAKANA 4 -#define _KOREAN 5 -#define _VIETNAMESE 6 -#define _SIMPLIFIED_CHINESE 7 -#define _TRADITIONAL_CHINESE 8 - -#define LCODE_cz _LATIN_EXTENDED_A -#define LCODE_hr _LATIN_EXTENDED_A -#define LCODE_pl _LATIN_EXTENDED_A -#define LCODE_sk _LATIN_EXTENDED_A -#define LCODE_tr _LATIN_EXTENDED_A -#define LCODE_bg _CYRILLIC -#define LCODE_ru _CYRILLIC -#define LCODE_uk _CYRILLIC -#define LCODE_el _GREEK -#define LCODE_el_CY _GREEK -#define LCODE_jp_kana _KATAKANA -#define LCODE_ko_KR _KOREAN -#define LCODE_vi _VIETNAMESE -#define LCODE_zh_CN _SIMPLIFIED_CHINESE -#define LCODE_zh_TW _TRADITIONAL_CHINESE - -#define _LCODE(N) (CAT(LCODE_, LCD_LANGUAGE) == N) - -#if _LCODE(_LATIN_EXTENDED_A) - #define FONT_EXTRA Latin_Extended_A - #define EXTRA_GLYPHS 128 -#elif _LCODE(_CYRILLIC) - #define FONT_EXTRA Cyrillic - #define EXTRA_GLYPHS 145 -#elif _LCODE(_GREEK) - #define FONT_EXTRA Greek - #define EXTRA_GLYPHS 73 -#elif _LCODE(_KATAKANA) - #define FONT_EXTRA Katakana - #define EXTRA_GLYPHS 102 -#elif _LCODE(_KOREAN) - #define FONT_EXTRA Korean - #define EXTRA_GLYPHS 110 -#elif _LCODE(_VIETNAMESE) - #define FONT_EXTRA Vietnamese - #define EXTRA_GLYPHS 107 -#elif _LCODE(_SIMPLIFIED_CHINESE) - #define FONT_EXTRA Simplified_Chinese - #define EXTRA_GLYPHS 373 -#elif _LCODE(_TRADITIONAL_CHINESE) - #define FONT_EXTRA Traditional_Chinese - #define EXTRA_GLYPHS 307 -#else // Basin Latin (0x0020 - 0x007f) and Latin-1 Supplement (0x0080-0x00ff) characters only - #define EXTRA_GLYPHS 0 -#endif - -#undef _LCODE -#undef LCODE_cz -#undef LCODE_hr -#undef LCODE_pl -#undef LCODE_sk -#undef LCODE_tr -#undef LCODE_bg -#undef LCODE_ru -#undef LCODE_uk -#undef LCODE_el -#undef LCODE_el_CY -#undef LCODE_jp_kana -#undef LCODE_ko_KR -#undef LCODE_vi -#undef LCODE_zh_CN -#undef LCODE_zh_TW - -#define NOTOSANS 1 -#define UNIFONT 2 -#define HELVETICA 3 - -#ifndef TFT_FONT - #define TFT_FONT NOTOSANS -#endif - -#if TFT_FONT == NOTOSANS - #define FONT_FAMILY NotoSans_Medium -#elif TFT_FONT == UNIFONT - #define FONT_FAMILY Unifont -#elif TFT_FONT == HELVETICA - #define FONT_FAMILY Helvetica - #ifdef FONT_EXTRA - #error "Helvetica font does not have symbols required for selected LCD_LANGUAGE." - #endif -#else - #error "Invalid TFT_FONT value." -#endif +#include "fontdata/fontdata.h" // TFT font with unicode support typedef struct __attribute__((__packed__)) { diff --git a/Marlin/src/lcd/tft/themes/theme_ANET_BLACK.h b/Marlin/src/lcd/tft/themes/theme_ANET_BLACK.h new file mode 100644 index 000000000000..8db729a04b4e --- /dev/null +++ b/Marlin/src/lcd/tft/themes/theme_ANET_BLACK.h @@ -0,0 +1,53 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +// Anet ET4/ET5 Black Theme + +#define COLOR_RED2 0xF003 // #F70019 +#define COLOR_ORANGE2 0xFDE0 // #FFBE00 +#define COLOR_LIME2 0xA7E0 // #A5FF00 +#define COLOR_BLACK2 0x2124 // #212421 + +#define COLOR_BACKGROUND COLOR_BLACK2 +#define COLOR_SELECTION_BG COLOR_ORANGE2 +#define COLOR_COLD COLOR_WHITE +#define COLOR_HOTEND COLOR_RED2 +#define COLOR_HEATED_BED COLOR_RED2 +#define COLOR_CHAMBER COLOR_WHITE +#define COLOR_FAN COLOR_WHITE +#define COLOR_AXIS_FRAME COLOR_WHITE +#define COLOR_AXIS_HOMED COLOR_ORANGE2 +#define COLOR_AXIS_NOT_HOMED COLOR_ORANGE2 +#define COLOR_RATE_100 COLOR_LIME2 +#define COLOR_RATE_ALTERED COLOR_ORANGE2 +#define COLOR_PRINT_TIME COLOR_WHITE +#define COLOR_PROGRESS_BAR COLOR_ORANGE2 +#define COLOR_STATUS_MESSAGE COLOR_ORANGE2 +#define COLOR_SD_ENABLED COLOR_CONTROL_ENABLED +#define COLOR_SD_DISABLED COLOR_CONTROL_DISABLED +#define COLOR_MENU_TEXT COLOR_WHITE +#define COLOR_MENU_VALUE_FONT COLOR_ORANGE2 +#define COLOR_SLIDER COLOR_ORANGE2 +#define COLOR_INCREASE COLOR_WHITE +#define COLOR_DECREASE COLOR_WHITE +#define COLOR_TICK COLOR_VIVID_GREEN diff --git a/Marlin/src/lcd/tft/themes/theme_BLACK_MARLIN.h b/Marlin/src/lcd/tft/themes/theme_BLACK_MARLIN.h new file mode 100644 index 000000000000..4af483b4929a --- /dev/null +++ b/Marlin/src/lcd/tft/themes/theme_BLACK_MARLIN.h @@ -0,0 +1,30 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#define MOVE_AXIS_SCREEN // Special "Move Axis" screen activated by touching coordinates area + +#ifndef COLOR_BACKGROUND + #define COLOR_BACKGROUND COLOR_BLACK +#endif +#define COLOR_COLD COLOR_WHITE +#define COLOR_FAN COLOR_WHITE diff --git a/Marlin/src/lcd/tft/themes/theme_BLUE_MARLIN.h b/Marlin/src/lcd/tft/themes/theme_BLUE_MARLIN.h new file mode 100644 index 000000000000..9e0a518badb0 --- /dev/null +++ b/Marlin/src/lcd/tft/themes/theme_BLUE_MARLIN.h @@ -0,0 +1,133 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#define MOVE_AXIS_SCREEN // Special "Move Axis" screen activated by touching coordinates area + +#ifndef COLOR_BACKGROUND + #define COLOR_BACKGROUND COLOR_MIDNIGHT_BLUE +#endif +#ifndef COLOR_SELECTION_BG + #define COLOR_SELECTION_BG COLOR_DARK_PURPLE +#endif +#ifndef COLOR_WEBSITE_URL + #define COLOR_WEBSITE_URL COLOR_OCEAN_BOAT_BLUE +#endif + +#ifndef COLOR_INACTIVE + #define COLOR_INACTIVE COLOR_GREY +#endif +#ifndef COLOR_COLD + #define COLOR_COLD COLOR_CYAN +#endif +#ifndef COLOR_HOTEND + #define COLOR_HOTEND COLOR_SCARLET +#endif +#ifndef COLOR_HEATED_BED + #define COLOR_HEATED_BED COLOR_DARK_ORANGE +#endif +#ifndef COLOR_CHAMBER + #define COLOR_CHAMBER COLOR_DARK_ORANGE +#endif +#ifndef COLOR_COOLER + #define COLOR_COOLER COLOR_DARK_ORANGE +#endif +#ifndef COLOR_FAN + #define COLOR_FAN COLOR_CYAN +#endif + +#ifndef COLOR_AXIS_HOMED + #define COLOR_AXIS_HOMED COLOR_WHITE +#endif +#ifndef COLOR_AXIS_NOT_HOMED + #define COLOR_AXIS_NOT_HOMED COLOR_YELLOW +#endif + +#ifndef COLOR_RATE_100 + #define COLOR_RATE_100 COLOR_VIVID_GREEN +#endif +#ifndef COLOR_RATE_ALTERED + #define COLOR_RATE_ALTERED COLOR_YELLOW +#endif + +#ifndef COLOR_PRINT_TIME + #define COLOR_PRINT_TIME COLOR_CYAN +#endif + +#ifndef COLOR_PROGRESS_FRAME + #define COLOR_PROGRESS_FRAME COLOR_WHITE +#endif +#ifndef COLOR_PROGRESS_BAR + #define COLOR_PROGRESS_BAR COLOR_BLUE +#endif +#ifndef COLOR_PROGRESS_BG + #define COLOR_PROGRESS_BG COLOR_BLACK +#endif + +#ifndef COLOR_STATUS_MESSAGE + #define COLOR_STATUS_MESSAGE COLOR_YELLOW +#endif + +#ifndef COLOR_CONTROL_ENABLED + #define COLOR_CONTROL_ENABLED COLOR_WHITE +#endif +#ifndef COLOR_CONTROL_DISABLED + #define COLOR_CONTROL_DISABLED COLOR_GREY +#endif +#ifndef COLOR_CONTROL_CANCEL + #define COLOR_CONTROL_CANCEL COLOR_SCARLET +#endif +#ifndef COLOR_CONTROL_CONFIRM + #define COLOR_CONTROL_CONFIRM COLOR_VIVID_GREEN +#endif +#ifndef COLOR_BUSY + #define COLOR_BUSY COLOR_SILVER +#endif + +#ifndef COLOR_MENU_TEXT + #define COLOR_MENU_TEXT COLOR_YELLOW +#endif +#ifndef COLOR_MENU_VALUE + #define COLOR_MENU_VALUE COLOR_WHITE +#endif + +#ifndef COLOR_SLIDER + #define COLOR_SLIDER COLOR_WHITE +#endif +#ifndef COLOR_SLIDER_INACTIVE + #define COLOR_SLIDER_INACTIVE COLOR_GREY +#endif + +#ifndef COLOR_UBL + #define COLOR_UBL COLOR_WHITE +#endif + +#ifndef COLOR_TOUCH_CALIBRATION + #define COLOR_TOUCH_CALIBRATION COLOR_WHITE +#endif + +#ifndef COLOR_KILL_SCREEN_BG + #define COLOR_KILL_SCREEN_BG COLOR_MAROON +#endif +#ifndef COLOR_KILL_SCREEN_TEXT + #define COLOR_KILL_SCREEN_TEXT COLOR_WHITE +#endif diff --git a/Marlin/src/lcd/tft/themes/theme_CUSTOM.h b/Marlin/src/lcd/tft/themes/theme_CUSTOM.h new file mode 100644 index 000000000000..4af483b4929a --- /dev/null +++ b/Marlin/src/lcd/tft/themes/theme_CUSTOM.h @@ -0,0 +1,30 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#define MOVE_AXIS_SCREEN // Special "Move Axis" screen activated by touching coordinates area + +#ifndef COLOR_BACKGROUND + #define COLOR_BACKGROUND COLOR_BLACK +#endif +#define COLOR_COLD COLOR_WHITE +#define COLOR_FAN COLOR_WHITE diff --git a/Marlin/src/lcd/tft/themes/theme_default.h b/Marlin/src/lcd/tft/themes/theme_default.h new file mode 100644 index 000000000000..c2e1770904f6 --- /dev/null +++ b/Marlin/src/lcd/tft/themes/theme_default.h @@ -0,0 +1,144 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#ifndef COLOR_BACKGROUND + #define COLOR_BACKGROUND COLOR_MIDNIGHT_BLUE +#endif +#ifndef COLOR_SELECTION_BG + #define COLOR_SELECTION_BG COLOR_DARK_PURPLE +#endif +#ifndef COLOR_WEBSITE_URL + #define COLOR_WEBSITE_URL COLOR_OCEAN_BOAT_BLUE +#endif + +#ifndef COLOR_INACTIVE + #define COLOR_INACTIVE COLOR_GREY +#endif +#ifndef COLOR_COLD + #define COLOR_COLD COLOR_CYAN +#endif +#ifndef COLOR_HOTEND + #define COLOR_HOTEND COLOR_SCARLET +#endif +#ifndef COLOR_HEATED_BED + #define COLOR_HEATED_BED COLOR_DARK_ORANGE +#endif +#ifndef COLOR_CHAMBER + #define COLOR_CHAMBER COLOR_DARK_ORANGE +#endif +#ifndef COLOR_COOLER + #define COLOR_COOLER COLOR_DARK_ORANGE +#endif +#ifndef COLOR_FAN + #define COLOR_FAN COLOR_CYAN +#endif + +#ifndef COLOR_AXIS_HOMED + #define COLOR_AXIS_HOMED COLOR_WHITE +#endif +#ifndef COLOR_AXIS_NOT_HOMED + #define COLOR_AXIS_NOT_HOMED COLOR_YELLOW +#endif + +#ifndef COLOR_RATE_100 + #define COLOR_RATE_100 COLOR_VIVID_GREEN +#endif +#ifndef COLOR_RATE_ALTERED + #define COLOR_RATE_ALTERED COLOR_YELLOW +#endif + +#ifndef COLOR_PRINT_TIME + #define COLOR_PRINT_TIME COLOR_CYAN +#endif + +#ifndef COLOR_PROGRESS_FRAME + #define COLOR_PROGRESS_FRAME COLOR_WHITE +#endif +#ifndef COLOR_PROGRESS_BAR + #define COLOR_PROGRESS_BAR COLOR_BLUE +#endif +#ifndef COLOR_PROGRESS_BG + #define COLOR_PROGRESS_BG COLOR_BLACK +#endif + +#ifndef COLOR_STATUS_MESSAGE + #define COLOR_STATUS_MESSAGE COLOR_YELLOW +#endif + +#ifndef COLOR_CONTROL_ENABLED + #define COLOR_CONTROL_ENABLED COLOR_WHITE +#endif +#ifndef COLOR_CONTROL_DISABLED + #define COLOR_CONTROL_DISABLED COLOR_GREY +#endif +#ifndef COLOR_CONTROL_CANCEL + #define COLOR_CONTROL_CANCEL COLOR_SCARLET +#endif +#ifndef COLOR_CONTROL_CONFIRM + #define COLOR_CONTROL_CONFIRM COLOR_VIVID_GREEN +#endif +#ifndef COLOR_BUSY + #define COLOR_BUSY COLOR_SILVER +#endif + +#ifndef COLOR_MENU_TEXT + #define COLOR_MENU_TEXT COLOR_YELLOW +#endif +#ifndef COLOR_MENU_VALUE + #define COLOR_MENU_VALUE COLOR_WHITE +#endif + +#ifndef COLOR_SLIDER + #define COLOR_SLIDER COLOR_WHITE +#endif +#ifndef COLOR_SLIDER_INACTIVE + #define COLOR_SLIDER_INACTIVE COLOR_GREY +#endif + +#ifndef COLOR_UBL + #define COLOR_UBL COLOR_WHITE +#endif + +#ifndef COLOR_TOUCH_CALIBRATION + #define COLOR_TOUCH_CALIBRATION COLOR_WHITE +#endif + +#ifndef COLOR_KILL_SCREEN_BG + #define COLOR_KILL_SCREEN_BG COLOR_MAROON +#endif +#ifndef COLOR_KILL_SCREEN_TEXT + #define COLOR_KILL_SCREEN_TEXT COLOR_WHITE +#endif + +#ifndef E_BTN_COLOR + #define E_BTN_COLOR COLOR_YELLOW +#endif +#ifndef X_BTN_COLOR + #define X_BTN_COLOR COLOR_CORAL_RED +#endif +#ifndef Y_BTN_COLOR + #define Y_BTN_COLOR COLOR_VIVID_GREEN +#endif +#ifndef Z_BTN_COLOR + #define Z_BTN_COLOR COLOR_LIGHT_BLUE +#endif diff --git a/Marlin/src/lcd/tft/touch.cpp b/Marlin/src/lcd/tft/touch.cpp index 0c742071ff1c..3de0f4f42aa4 100644 --- a/Marlin/src/lcd/tft/touch.cpp +++ b/Marlin/src/lcd/tft/touch.cpp @@ -247,10 +247,6 @@ void Touch::touch(touch_control_t *control) { case UBL: hold(control, UBL_REPEAT_DELAY); ui.encoderPosition += control->data; break; #endif - case MOVE_AXIS: - ui.goto_screen((screenFunc_t)ui.move_axis_screen); - break; - // TODO: TOUCH could receive data to pass to the callback case BUTTON: ((screenFunc_t)control->data)(); break; @@ -323,11 +319,4 @@ bool MarlinUI::touch_pressed() { return touch.is_clicked(); } -void add_control(uint16_t x, uint16_t y, TouchControlType control_type, intptr_t data, MarlinImage image, bool is_enabled, uint16_t color_enabled, uint16_t color_disabled) { - const uint16_t width = images[image].width, height = images[image].height; - tft.canvas(x, y, width, height); - tft.add_image(0, 0, image, is_enabled ? color_enabled : color_disabled); - if (is_enabled) touch.add_control(control_type, x, y, width, height, data); -} - #endif // TOUCH_SCREEN diff --git a/Marlin/src/lcd/tft/touch.h b/Marlin/src/lcd/tft/touch.h index 91e863573b92..16f51bfaaa31 100644 --- a/Marlin/src/lcd/tft/touch.h +++ b/Marlin/src/lcd/tft/touch.h @@ -23,9 +23,6 @@ #include "../../inc/MarlinConfigPre.h" -#include "tft_color.h" -#include "tft_image.h" - #if ENABLED(TOUCH_SCREEN_CALIBRATION) #include "../tft_io/touch_calibration.h" #endif @@ -64,17 +61,10 @@ enum TouchControlType : uint16_t { FEEDRATE, FLOWRATE, UBL, - MOVE_AXIS, STOP, BUTTON, }; -typedef void (*screenFunc_t)(); - -void add_control(uint16_t x, uint16_t y, TouchControlType control_type, intptr_t data, MarlinImage image, bool is_enabled = true, uint16_t color_enabled = COLOR_CONTROL_ENABLED, uint16_t color_disabled = COLOR_CONTROL_DISABLED); -inline void add_control(uint16_t x, uint16_t y, TouchControlType control_type, MarlinImage image, bool is_enabled = true, uint16_t color_enabled = COLOR_CONTROL_ENABLED, uint16_t color_disabled = COLOR_CONTROL_DISABLED) { add_control(x, y, control_type, 0, image, is_enabled, color_enabled, color_disabled); } -inline void add_control(uint16_t x, uint16_t y, screenFunc_t screen, MarlinImage image, bool is_enabled = true, uint16_t color_enabled = COLOR_CONTROL_ENABLED, uint16_t color_disabled = COLOR_CONTROL_DISABLED) { add_control(x, y, MENU_SCREEN, (intptr_t)screen, image, is_enabled, color_enabled, color_disabled); } - typedef struct __attribute__((__packed__)) { TouchControlType type; uint16_t x; @@ -109,7 +99,7 @@ class Touch { static bool get_point(int16_t *x, int16_t *y); static void touch(touch_control_t *control); - static void hold(touch_control_t *control, millis_t delay = 0); + static void hold(touch_control_t *control, millis_t delay=0); public: static void init(); @@ -131,7 +121,10 @@ class Touch { static void sleepTimeout(); static void wakeUp(); #endif - static void add_control(TouchControlType type, uint16_t x, uint16_t y, uint16_t width, uint16_t height, intptr_t data = 0); + static void add_control(TouchControlType type, uint16_t x, uint16_t y, uint16_t width, uint16_t height, intptr_t data=0); + static void add_control(TouchControlType type, uint16_t x, uint16_t y, uint16_t width, uint16_t height, void (*handler)()) { + add_control(type, x, y, width, height, intptr_t(handler)); + } }; extern Touch touch; diff --git a/Marlin/src/lcd/tft/ui_1024x600.cpp b/Marlin/src/lcd/tft/ui_1024x600.cpp deleted file mode 100644 index ddb606674ccf..000000000000 --- a/Marlin/src/lcd/tft/ui_1024x600.cpp +++ /dev/null @@ -1,1083 +0,0 @@ -/** - * Marlin 3D Printer Firmware - * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] - * - * Based on Sprinter and grbl. - * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ - -#include "../../inc/MarlinConfigPre.h" - -#if HAS_UI_1024x600 - -#include "ui_common.h" - -#include "../marlinui.h" -#include "../menu/menu.h" -#include "../../libs/numtostr.h" - -#include "../../sd/cardreader.h" -#include "../../module/temperature.h" -#include "../../module/printcounter.h" -#include "../../module/planner.h" -#include "../../module/motion.h" - -#if DISABLED(LCD_PROGRESS_BAR) && ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) - #include "../../feature/filwidth.h" - #include "../../gcode/parser.h" -#endif - -#if ENABLED(AUTO_BED_LEVELING_UBL) - #include "../../feature/bedlevel/bedlevel.h" -#endif - -void MarlinUI::tft_idle() { - #if ENABLED(TOUCH_SCREEN) - if (TERN0(HAS_TOUCH_SLEEP, lcd_sleep_task())) return; - if (draw_menu_navigation) { - add_control(164, TFT_HEIGHT - 50, PAGE_UP, imgPageUp, encoderTopLine > 0); - add_control(796, TFT_HEIGHT - 50, PAGE_DOWN, imgPageDown, encoderTopLine + LCD_HEIGHT < screen_items); - add_control(480, TFT_HEIGHT - 50, BACK, imgBack); - draw_menu_navigation = false; - } - #endif - - tft.queue.async(); - - TERN_(TOUCH_SCREEN, if (tft.queue.is_empty()) touch.idle()); // Touch driver is not DMA-aware, so only check for touch controls after screen drawing is completed -} - -#if ENABLED(SHOW_BOOTSCREEN) - - void MarlinUI::show_bootscreen() { - tft.queue.reset(); - - tft.canvas(0, 0, TFT_WIDTH, TFT_HEIGHT); - #if ENABLED(BOOT_MARLIN_LOGO_SMALL) - #define BOOT_LOGO_W 195 // MarlinLogo195x59x16 - #define BOOT_LOGO_H 59 - #define SITE_URL_Y (TFT_HEIGHT - 70) - tft.set_background(COLOR_BACKGROUND); - #else - #define BOOT_LOGO_W TFT_WIDTH // MarlinLogo480x320x16 - #define BOOT_LOGO_H TFT_HEIGHT - #define SITE_URL_Y (TFT_HEIGHT - 90) - #endif - tft.add_image((TFT_WIDTH - BOOT_LOGO_W) / 2, (TFT_HEIGHT - BOOT_LOGO_H) / 2, imgBootScreen); - #ifdef WEBSITE_URL - tft_string.set(WEBSITE_URL); - tft.add_text(tft_string.center(TFT_WIDTH), SITE_URL_Y, COLOR_WEBSITE_URL, tft_string); - #endif - - tft.queue.sync(); - } - - void MarlinUI::bootscreen_completion(const millis_t sofar) { - if ((BOOTSCREEN_TIMEOUT) > sofar) safe_delay((BOOTSCREEN_TIMEOUT) - sofar); - clear_lcd(); - } - -#endif - -void MarlinUI::draw_kill_screen() { - tft.queue.reset(); - tft.fill(0, 0, TFT_WIDTH, TFT_HEIGHT, COLOR_KILL_SCREEN_BG); - - uint16_t line = 2; - - menu_line(line++, COLOR_KILL_SCREEN_BG); - tft_string.set(status_message); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); - - line++; - menu_line(line++, COLOR_KILL_SCREEN_BG); - tft_string.set(GET_TEXT_F(MSG_HALTED)); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); - - menu_line(line++, COLOR_KILL_SCREEN_BG); - tft_string.set(GET_TEXT_F(MSG_PLEASE_RESET)); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); - - tft.queue.sync(); -} - -void draw_heater_status(uint16_t x, uint16_t y, const int8_t heater) { - MarlinImage image = imgHotEnd; - celsius_t currentTemperature, targetTemperature; - - if (heater >= 0) { // HotEnd - #if HAS_EXTRUDERS - currentTemperature = thermalManager.wholeDegHotend(heater); - targetTemperature = thermalManager.degTargetHotend(heater); - #else - return; - #endif - } - #if HAS_HEATED_BED - else if (heater == H_BED) { - currentTemperature = thermalManager.wholeDegBed(); - targetTemperature = thermalManager.degTargetBed(); - } - #endif - #if HAS_TEMP_CHAMBER - else if (heater == H_CHAMBER) { - currentTemperature = thermalManager.wholeDegChamber(); - #if HAS_HEATED_CHAMBER - targetTemperature = thermalManager.degTargetChamber(); - #else - targetTemperature = ABSOLUTE_ZERO; - #endif - } - #endif - #if HAS_TEMP_COOLER - else if (heater == H_COOLER) { - currentTemperature = thermalManager.wholeDegCooler(); - targetTemperature = TERN(HAS_COOLER, thermalManager.degTargetCooler(), ABSOLUTE_ZERO); - } - #endif - else return; - - TERN_(TOUCH_SCREEN, if (targetTemperature >= 0) touch.add_control(HEATER, x, y, 80, 120, heater)); - tft.canvas(x, y, 80, 120); - tft.set_background(COLOR_BACKGROUND); - - uint16_t color = currentTemperature < 0 ? COLOR_INACTIVE : COLOR_COLD; - - if (heater >= 0) { // HotEnd - if (currentTemperature >= 50) color = COLOR_HOTEND; - } - #if HAS_HEATED_BED - else if (heater == H_BED) { - if (currentTemperature >= 50) color = COLOR_HEATED_BED; - image = targetTemperature > 0 ? imgBedHeated : imgBed; - } - #endif - #if HAS_TEMP_CHAMBER - else if (heater == H_CHAMBER) { - if (currentTemperature >= 50) color = COLOR_CHAMBER; - image = targetTemperature > 0 ? imgChamberHeated : imgChamber; - } - #endif - #if HAS_TEMP_COOLER - else if (heater == H_COOLER) { - if (currentTemperature <= 26) color = COLOR_COLD; - if (currentTemperature > 26) color = COLOR_RED; - image = targetTemperature > 26 ? imgCoolerHot : imgCooler; - } - #endif - - tft.add_image(8, 28, image, color); - - tft_string.set(i16tostr3rj(currentTemperature)); - tft_string.add(LCD_STR_DEGREE); - tft_string.trim(); - tft.add_text(tft_string.center(80) + 2, 82, color, tft_string); - - if (targetTemperature >= 0) { - tft_string.set(i16tostr3rj(targetTemperature)); - tft_string.add(LCD_STR_DEGREE); - tft_string.trim(); - tft.add_text(tft_string.center(80) + 2, 8, color, tft_string); - } -} - -void draw_fan_status(uint16_t x, uint16_t y, const bool blink) { - TERN_(TOUCH_SCREEN, touch.add_control(FAN, x, y, 80, 120)); - tft.canvas(x, y, 80, 120); - tft.set_background(COLOR_BACKGROUND); - - uint8_t fanSpeed = thermalManager.fan_speed[0]; - MarlinImage image; - - if (fanSpeed >= 127) - image = blink ? imgFanFast1 : imgFanFast0; - else if (fanSpeed > 0) - image = blink ? imgFanSlow1 : imgFanSlow0; - else - image = imgFanIdle; - - tft.add_image(8, 20, image, COLOR_FAN); - - tft_string.set(ui8tostr4pctrj(thermalManager.fan_speed[0])); - tft_string.trim(); - tft.add_text(tft_string.center(80) + 6, 82, COLOR_FAN, tft_string); -} - -void MarlinUI::draw_status_screen() { - const bool blink = get_blink(); - - TERN_(TOUCH_SCREEN, touch.clear()); - - // Statuses of heaters and fans - uint16_t y = TFT_STATUS_TOP_Y; - for (uint16_t i = 0 ; i < ITEMS_COUNT; i++) { - const uint16_t x = (TFT_WIDTH / ITEMS_COUNT - 80) / 2 + (TFT_WIDTH * i / ITEMS_COUNT); - switch (i) { - #if HAS_EXTRUDERS - case ITEM_E0: draw_heater_status(x, y, H_E0); break; - #endif - #if HAS_MULTI_HOTEND - case ITEM_E1: draw_heater_status(x, y, H_E1); break; - #endif - #if HOTENDS > 2 - case ITEM_E2: draw_heater_status(x, y, H_E2); break; - #endif - #if HAS_HEATED_BED - case ITEM_BED: draw_heater_status(x, y, H_BED); break; - #endif - #if HAS_TEMP_CHAMBER - case ITEM_CHAMBER: draw_heater_status(x, y, H_CHAMBER); break; - #endif - #if HAS_TEMP_COOLER - case ITEM_COOLER: draw_heater_status(x, y, H_COOLER); break; - #endif - #if HAS_FAN - case ITEM_FAN: draw_fan_status(x, y, blink); break; - #endif - } - } - - y += 200; - - // Coordinates - tft.canvas(4, y, TFT_WIDTH - 8, FONT_LINE_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft.add_rectangle(0, 0, TFT_WIDTH - 8, FONT_LINE_HEIGHT, COLOR_AXIS_HOMED); - - if (TERN0(LCD_SHOW_E_TOTAL, printingIsActive())) { - #if ENABLED(LCD_SHOW_E_TOTAL) - tft.add_text(200, 3, COLOR_AXIS_HOMED, "E"); - const uint8_t escale = e_move_accumulator >= 100000.0f ? 10 : 1; // After 100m switch to cm - tft_string.set(ftostr4sign(e_move_accumulator / escale)); - tft_string.add(escale == 10 ? 'c' : 'm'); - tft_string.add('m'); - tft.add_text(500 - tft_string.width(), 3, COLOR_AXIS_HOMED, tft_string); - #endif - } - else { - #if HAS_X_AXIS - tft.add_text(200, 3, COLOR_AXIS_HOMED, "X"); - const bool nhx = axis_should_home(X_AXIS); - if (blink && nhx) - tft_string.set('?'); - else - tft_string.set(ftostr4sign(LOGICAL_X_POSITION(current_position.x))); - tft.add_text(300 - tft_string.width(), 3, nhx ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); - #endif - - #if HAS_Y_AXIS - tft.add_text(500, 3, COLOR_AXIS_HOMED, "Y"); - const bool nhy = axis_should_home(Y_AXIS); - if (blink && nhy) - tft_string.set('?'); - else - tft_string.set(ftostr4sign(LOGICAL_Y_POSITION(current_position.y))); - tft.add_text(600 - tft_string.width(), 3, nhy ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); - #endif - } - - #if HAS_Z_AXIS - tft.add_text(800, 3, COLOR_AXIS_HOMED, "Z"); - uint16_t offset = 32; - const bool nhz = axis_should_home(Z_AXIS); - if (blink && nhz) - tft_string.set('?'); - else { - const float z = LOGICAL_Z_POSITION(current_position.z); - tft_string.set(ftostr52sp((int16_t)z)); - tft_string.rtrim(); - offset += tft_string.width(); - - tft_string.set(ftostr52sp(z)); - offset -= tft_string.width(); - } - tft.add_text(900 - tft_string.width() - offset, 3, nhz ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); - #endif // HAS_Z_AXIS - - TERN_(TOUCH_SCREEN, touch.add_control(MOVE_AXIS, 4, y, TFT_WIDTH - 8, FONT_LINE_HEIGHT)); - - y += 100; - // Feed rate - tft.canvas(274, y, 200, 32); - tft.set_background(COLOR_BACKGROUND); - uint16_t color = feedrate_percentage == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; - tft.add_image(0, 0, imgFeedRate, color); - tft_string.set(i16tostr3rj(feedrate_percentage)); - tft_string.add('%'); - tft.add_text(36, 1, color, tft_string); - TERN_(TOUCH_SCREEN, touch.add_control(FEEDRATE, 274, y, 200, 32)); - - // Flow rate - #if HAS_EXTRUDERS - tft.canvas(650, y, 128, 32); - tft.set_background(COLOR_BACKGROUND); - color = planner.flow_percentage[0] == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; - tft.add_image(0, 0, imgFlowRate, color); - tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); - tft_string.add('%'); - tft.add_text(36, 1, color, tft_string); - TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, 650, y, 200, 32, active_extruder)); - #endif - - #if ENABLED(TOUCH_SCREEN) - add_control(900, y, menu_main, imgSettings); - #if HAS_MEDIA - const bool cm = card.isMounted(), pa = printingIsActive(); - if (cm && pa) - add_control(12, y, STOP, imgCancel, true, COLOR_CONTROL_CANCEL); - else - add_control(12, y, menu_media, imgSD, cm && !pa, COLOR_CONTROL_ENABLED, COLOR_CONTROL_DISABLED); - #endif - #endif - - y += 100; - const progress_t progress = TERN(HAS_PRINT_PROGRESS_PERMYRIAD, get_progress_permyriad, get_progress_percent)(); - #if ENABLED(SHOW_ELAPSED_TIME) && DISABLED(SHOW_REMAINING_TIME) - // Print duration so far (time elapsed) - centered - char elapsed_str[22]; - duration_t elapsed = print_job_timer.duration(); - elapsed.toString(elapsed_str); - - // Same width constraints as feedrate/flowrate controls - constexpr uint16_t time_str_width = 476, image_width = 36; - - tft.canvas((TFT_WIDTH - time_str_width) / 2, y, time_str_width, 32); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(elapsed_str); - uint16_t text_pos_x = tft_string.center(time_str_width - image_width); - tft.add_image(text_pos_x, 0, imgTimeElapsed, COLOR_PRINT_TIME); - tft.add_text(text_pos_x + image_width, 1, COLOR_PRINT_TIME, tft_string); - - #elif DISABLED(SHOW_ELAPSED_TIME) && ENABLED(SHOW_REMAINING_TIME) - // Print time remaining estimation - centered - char estimate_str[22]; - duration_t elapsed = print_job_timer.duration(); - - // Get the estimate, first from M73 - uint32_t estimate_remaining = (0 - #if ALL(SET_PROGRESS_MANUALLY, SET_REMAINING_TIME) - + get_remaining_time() - #endif - ); - // If no M73 estimate is available but we have progress data, calculate time remaining assuming time elapsed is linear with progress - if (!estimate_remaining && progress > 0) - estimate_remaining = elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress; - - // Generate estimate string - if (!estimate_remaining) - tft_string.set("-"); - else { - duration_t estimation = estimate_remaining; - estimation.toString(estimate_str); - tft_string.set(estimate_str); - } - - // Same width constraints as feedrate/flowrate controls - constexpr uint16_t time_str_width = 476, image_width = 36; - - tft.canvas((TFT_WIDTH - time_str_width) / 2, y, time_str_width, 32); - tft.set_background(COLOR_BACKGROUND); - color = printingIsActive() ? COLOR_PRINT_TIME : COLOR_INACTIVE; - uint16_t text_pos_x = tft_string.center(time_str_width - image_width); - tft.add_image(text_pos_x, 0, imgTimeRemaining, color); - tft.add_text(text_pos_x + image_width, 1, color, tft_string); - - #elif ALL(SHOW_REMAINING_TIME, SHOW_ELAPSED_TIME) - // Print duration so far (time elapsed) - aligned under feed rate - char elapsed_str[22]; - duration_t elapsed = print_job_timer.duration(); - elapsed.toString(elapsed_str); - - tft.canvas(274, y, 200, 32); - tft.set_background(COLOR_BACKGROUND); - tft.add_image(0, 0, imgTimeElapsed, COLOR_PRINT_TIME); - tft_string.set(elapsed_str); - tft.add_text(36, 1, COLOR_PRINT_TIME, tft_string); - - // Print time remaining estimation - aligned under flow rate - char estimate_str[22]; - - // Get the estimate, first from M73 - uint32_t estimate_remaining = (0 - #if ALL(SET_PROGRESS_MANUALLY, SET_REMAINING_TIME) - + get_remaining_time() - #endif - ); - // If no M73 estimate is available but we have progress data, calculate time remaining assuming time elapsed is linear with progress - if (!estimate_remaining && progress > 0) - estimate_remaining = elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress; - - // Generate estimate string - if (!estimate_remaining) - tft_string.set("-"); - else { - duration_t estimation = estimate_remaining; - estimation.toString(estimate_str); - tft_string.set(estimate_str); - } - - // Push out the estimate to the screen - tft.canvas(650, y, 200, 32); - tft.set_background(COLOR_BACKGROUND); - color = printingIsActive() ? COLOR_PRINT_TIME : COLOR_INACTIVE; - tft.add_image(0, 0, imgTimeRemaining, color); - tft.add_text(36, 1, color, tft_string); - #endif - - y += 50; - // Progress bar - tft.canvas(4, y, TFT_WIDTH - 8, 9); - tft.set_background(COLOR_PROGRESS_BG); - tft.add_rectangle(0, 0, TFT_WIDTH - 8, 9, COLOR_PROGRESS_FRAME); - if (progress) - tft.add_bar(1, 1, ((TFT_WIDTH - 10) * progress / (PROGRESS_SCALE)) / 100, 7, COLOR_PROGRESS_BAR); - - y += 50; - // Status message - const uint16_t status_height = TFT_HEIGHT - y; - tft.canvas(0, y, TFT_WIDTH, status_height); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(status_message); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), (status_height - FONT_LINE_HEIGHT) / 2, COLOR_STATUS_MESSAGE, tft_string); -} - -// Low-level draw_edit_screen can be used to draw an edit screen from anyplace -void MenuEditItemBase::draw_edit_screen(FSTR_P const fstr, const char * const value/*=nullptr*/) { - ui.encoder_direction_normal(); - TERN_(TOUCH_SCREEN, touch.clear()); - - uint16_t line = 1; - - menu_line(line++); - tft_string.set(fstr, itemIndex, itemStringC, itemStringF); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - - TERN_(AUTO_BED_LEVELING_UBL, if (ui.external_control) line++); // ftostr52() will overwrite *value so *value has to be displayed first - - menu_line(line); - tft_string.set(value); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - #if ENABLED(AUTO_BED_LEVELING_UBL) - if (ui.external_control) { - menu_line(line - 1); - - tft_string.set(X_LBL); - tft.add_text((TFT_WIDTH / 2 - 120), MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(ftostr52(LOGICAL_X_POSITION(current_position.x))); - tft_string.trim(); - tft.add_text((TFT_WIDTH / 2 - 16) - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - tft_string.set(Y_LBL); - tft.add_text((TFT_WIDTH / 2 + 16), MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(ftostr52(LOGICAL_X_POSITION(current_position.y))); - tft_string.trim(); - tft.add_text((TFT_WIDTH / 2 + 120) - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - } - #endif - - if (ui.can_show_slider()) { - - #define SLIDER_LENGTH 600 - #define SLIDER_Y_POSITION 200 - - tft.canvas((TFT_WIDTH - SLIDER_LENGTH) / 2, SLIDER_Y_POSITION, SLIDER_LENGTH, 16); - tft.set_background(COLOR_BACKGROUND); - - int16_t position = (SLIDER_LENGTH - 2) * ui.encoderPosition / maxEditValue; - tft.add_bar(0, 7, 1, 2, ui.encoderPosition == 0 ? COLOR_SLIDER_INACTIVE : COLOR_SLIDER); - tft.add_bar(1, 6, position, 4, COLOR_SLIDER); - tft.add_bar(position + 1, 6, SLIDER_LENGTH - 2 - position, 4, COLOR_SLIDER_INACTIVE); - tft.add_bar(SLIDER_LENGTH - 1, 7, 1, 2, int32_t(ui.encoderPosition) == maxEditValue ? COLOR_SLIDER : COLOR_SLIDER_INACTIVE); - - #if ENABLED(TOUCH_SCREEN) - tft.add_image((SLIDER_LENGTH - 8) * ui.encoderPosition / maxEditValue, 0, imgSlider, COLOR_SLIDER); - touch.add_control(SLIDER, (TFT_WIDTH - SLIDER_LENGTH) / 2, SLIDER_Y_POSITION - 8, SLIDER_LENGTH, 32, maxEditValue); - #endif - } - - tft.draw_edit_screen_buttons(); -} - -void TFT::draw_edit_screen_buttons() { - #if ENABLED(TOUCH_SCREEN) - add_control(164, TFT_HEIGHT - 64, DECREASE, imgDecrease); - add_control(796, TFT_HEIGHT - 64, INCREASE, imgIncrease); - add_control(480, TFT_HEIGHT - 64, CLICK, imgConfirm); - #endif -} - -// The Select Screen presents a prompt and two "buttons" -void MenuItem_confirm::draw_select_screen(FSTR_P const yes, FSTR_P const no, const bool yesno, FSTR_P const pref, const char * const string/*=nullptr*/, FSTR_P const suff/*=nullptr*/) { - uint16_t line = 1; - - if (!string) line++; - - menu_line(line++); - tft_string.set(pref); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); - - if (string) { - menu_line(line++); - tft_string.set(string); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); - } - - if (suff) { - menu_line(line); - tft_string.set(suff); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); - } - #if ENABLED(TOUCH_SCREEN) - add_control(88, TFT_HEIGHT - 64, CANCEL, imgCancel, true, yesno ? HALF(COLOR_CONTROL_CANCEL) : COLOR_CONTROL_CANCEL); - add_control(328, TFT_HEIGHT - 64, CONFIRM, imgConfirm, true, yesno ? COLOR_CONTROL_CONFIRM : HALF(COLOR_CONTROL_CONFIRM)); - #else - menu_line(++line); - if (no) { - tft_string.set(no); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH / 2), 0, !yesno ? COLOR_RED : COLOR_MENU_TEXT, tft_string); - } - - if (yes) { - tft_string.set(yes); - tft_string.trim(); - tft.add_text(TFT_WIDTH / 2 + tft_string.center(TFT_WIDTH / 2), 0, yesno ? COLOR_RED : COLOR_MENU_TEXT, tft_string); - } - #endif -} - -#if ENABLED(ADVANCED_PAUSE_FEATURE) - - void MarlinUI::draw_hotend_status(const uint8_t row, const uint8_t extruder) { - #if ENABLED(TOUCH_SCREEN) - touch.clear(); - draw_menu_navigation = false; - touch.add_control(RESUME_CONTINUE, 0, 0, TFT_WIDTH, TFT_HEIGHT); - #endif - - menu_line(row); - tft_string.set(GET_TEXT_F(MSG_FILAMENT_CHANGE_NOZZLE)); - tft_string.add('E'); - tft_string.add((char)('1' + extruder)); - tft_string.add(' '); - tft_string.add(i16tostr3rj(thermalManager.wholeDegHotend(extruder))); - tft_string.add(LCD_STR_DEGREE); - tft_string.add(F(" / ")); - tft_string.add(i16tostr3rj(thermalManager.degTargetHotend(extruder))); - tft_string.add(LCD_STR_DEGREE); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); - } - -#endif // ADVANCED_PAUSE_FEATURE - -#if ENABLED(AUTO_BED_LEVELING_UBL) - #define GRID_OFFSET_X 8 - #define GRID_OFFSET_Y 8 - #define GRID_WIDTH 192 - #define GRID_HEIGHT 192 - #define CONTROL_OFFSET 16 - - void MarlinUI::ubl_plot(const uint8_t x_plot, const uint8_t y_plot) { - - tft.canvas(GRID_OFFSET_X, GRID_OFFSET_Y, GRID_WIDTH, GRID_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft.add_rectangle(0, 0, GRID_WIDTH, GRID_HEIGHT, COLOR_WHITE); - - for (uint16_t x = 0; x < (GRID_MAX_POINTS_X); x++) - for (uint16_t y = 0; y < (GRID_MAX_POINTS_Y); y++) - if (position_is_reachable({ bedlevel.get_mesh_x(x), bedlevel.get_mesh_y(y) })) - tft.add_bar(1 + (x * 2 + 1) * (GRID_WIDTH - 4) / (GRID_MAX_POINTS_X) / 2, GRID_HEIGHT - 3 - ((y * 2 + 1) * (GRID_HEIGHT - 4) / (GRID_MAX_POINTS_Y) / 2), 2, 2, COLOR_UBL); - - tft.add_rectangle((x_plot * 2 + 1) * (GRID_WIDTH - 4) / (GRID_MAX_POINTS_X) / 2 - 1, GRID_HEIGHT - 5 - ((y_plot * 2 + 1) * (GRID_HEIGHT - 4) / (GRID_MAX_POINTS_Y) / 2), 6, 6, COLOR_UBL); - - const xy_pos_t pos = { bedlevel.get_mesh_x(x_plot), bedlevel.get_mesh_y(y_plot) }, - lpos = pos.asLogical(); - - tft.canvas(320, GRID_OFFSET_Y + (GRID_HEIGHT - MENU_ITEM_HEIGHT) / 2 - MENU_ITEM_HEIGHT, 120, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(X_LBL); - tft.add_text(0, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(ftostr52(lpos.x)); - tft_string.trim(); - tft.add_text(120 - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - tft.canvas(320, GRID_OFFSET_Y + (GRID_HEIGHT - MENU_ITEM_HEIGHT) / 2, 120, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(Y_LBL); - tft.add_text(0, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(ftostr52(lpos.y)); - tft_string.trim(); - tft.add_text(120 - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - tft.canvas(320, GRID_OFFSET_Y + (GRID_HEIGHT - MENU_ITEM_HEIGHT) / 2 + MENU_ITEM_HEIGHT, 120, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(Z_LBL); - tft.add_text(0, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(isnan(bedlevel.z_values[x_plot][y_plot]) ? "-----" : ftostr43sign(bedlevel.z_values[x_plot][y_plot])); - tft_string.trim(); - tft.add_text(120 - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - constexpr uint8_t w = (TFT_WIDTH) / 10; - tft.canvas(GRID_OFFSET_X + (GRID_WIDTH - w) / 2, GRID_OFFSET_Y + GRID_HEIGHT + CONTROL_OFFSET - 5, w, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(ui8tostr3rj(x_plot)); - tft_string.trim(); - tft.add_text(tft_string.center(w), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - tft.canvas(GRID_OFFSET_X + GRID_WIDTH + CONTROL_OFFSET + 16 - 24, GRID_OFFSET_Y + (GRID_HEIGHT - MENU_ITEM_HEIGHT) / 2, w, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(ui8tostr3rj(y_plot)); - tft_string.trim(); - tft.add_text(tft_string.center(w), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - #if ENABLED(TOUCH_SCREEN) - touch.clear(); - draw_menu_navigation = false; - add_control(GRID_OFFSET_X + GRID_WIDTH + CONTROL_OFFSET, GRID_OFFSET_Y + CONTROL_OFFSET, UBL, ENCODER_STEPS_PER_MENU_ITEM * GRID_MAX_POINTS_X, imgUp); - add_control(GRID_OFFSET_X + GRID_WIDTH + CONTROL_OFFSET, GRID_OFFSET_Y + GRID_HEIGHT - CONTROL_OFFSET - 32, UBL, - ENCODER_STEPS_PER_MENU_ITEM * GRID_MAX_POINTS_X, imgDown); - add_control(GRID_OFFSET_X + CONTROL_OFFSET, GRID_OFFSET_Y + GRID_HEIGHT + CONTROL_OFFSET, UBL, - ENCODER_STEPS_PER_MENU_ITEM, imgLeft); - add_control(GRID_OFFSET_X + GRID_WIDTH - CONTROL_OFFSET - 32, GRID_OFFSET_Y + GRID_HEIGHT + CONTROL_OFFSET, UBL, ENCODER_STEPS_PER_MENU_ITEM, imgRight); - add_control(320, GRID_OFFSET_Y + GRID_HEIGHT + CONTROL_OFFSET, CLICK, imgLeveling); - add_control(224, TFT_HEIGHT - 34, BACK, imgBack); - #endif - } -#endif // AUTO_BED_LEVELING_UBL - -#if ENABLED(BABYSTEP_ZPROBE_OFFSET) - #include "../../feature/babystep.h" -#endif - -#if HAS_BED_PROBE - #include "../../module/probe.h" -#endif - -#define Z_SELECTION_Z 1 -#define Z_SELECTION_Z_PROBE -1 - -struct { - #if HAS_X_AXIS - xy_int_t xValuePos; - #endif - #if HAS_Y_AXIS - xy_int_t yValuePos; - #endif - #if HAS_Z_AXIS - xy_int_t zValuePos, zTypePos; - int z_selection = Z_SELECTION_Z; - #endif - #if HAS_EXTRUDERS - xy_int_t eValuePos, eNamePos; - uint8_t e_selection = 0; - #endif - xy_int_t stepValuePos; - float currentStepSize = 10.0; - bool blocked = false; - char message[32]; -} motionAxisState; - -#define BTN_WIDTH 64 -#define BTN_HEIGHT 52 -#define X_MARGIN 20 -#define Y_MARGIN 15 - -static void quick_feedback() { - #if HAS_CHIRP - ui.chirp(); // Buzz and wait. Is the delay needed for buttons to settle? - #if ALL(HAS_MARLINUI_MENU, HAS_BEEPER) - for (int8_t i = 5; i--;) { buzzer.tick(); delay(2); } - #elif HAS_MARLINUI_MENU - delay(10); - #endif - #endif -} - -#define CUR_STEP_VALUE_WIDTH 104 -static void drawCurStepValue() { - tft_string.set(ftostr52sp(motionAxisState.currentStepSize)); - tft_string.add(F("mm")); - tft.canvas(motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft.add_text(tft_string.center(CUR_STEP_VALUE_WIDTH), 0, COLOR_AXIS_HOMED, tft_string); -} - -#if HAS_Z_AXIS - static void drawCurZSelection() { - tft_string.set('Z'); - tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), 34); - tft.set_background(COLOR_BACKGROUND); - tft.add_text(0, 0, Z_BTN_COLOR, tft_string); - tft.queue.sync(); - tft_string.set(F("Offset")); - tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + 34, tft_string.width(), 34); - tft.set_background(COLOR_BACKGROUND); - #if HAS_BED_PROBE - if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) - tft.add_text(0, 0, Z_BTN_COLOR, tft_string); - #endif - } -#endif - -#if HAS_EXTRUDERS - static void drawCurESelection() { - tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set('E'); - tft.add_text(0, 0, E_BTN_COLOR, tft_string); - tft.add_text(tft_string.width(), 0, E_BTN_COLOR, ui8tostr3rj(motionAxisState.e_selection)); - } -#endif - -static void drawMessage(PGM_P const msg) { - tft.canvas(X_MARGIN, TFT_HEIGHT - Y_MARGIN - 34, TFT_HEIGHT / 2, 34); - tft.set_background(COLOR_BACKGROUND); - tft.add_text(0, 0, COLOR_YELLOW, msg); -} - -static void drawMessage(FSTR_P const fmsg) { drawMessage(FTOP(fmsg)); } - -static void drawAxisValue(const AxisEnum axis) { - const float value = ( - TERN_(HAS_BED_PROBE, axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE ? probe.offset.z :) - ui.manual_move.axis_value(axis) - ); - xy_int_t pos; - uint16_t color; - switch (axis) { - #if HAS_X_AXIS - case X_AXIS: pos = motionAxisState.xValuePos; color = X_BTN_COLOR; break; - #endif - #if HAS_Y_AXIS - case Y_AXIS: pos = motionAxisState.yValuePos; color = Y_BTN_COLOR; break; - #endif - #if HAS_Z_AXIS - case Z_AXIS: pos = motionAxisState.zValuePos; color = Z_BTN_COLOR; break; - #endif - #if HAS_EXTRUDERS - case E_AXIS: pos = motionAxisState.eValuePos; color = E_BTN_COLOR; break; - #endif - default: return; - } - tft.canvas(pos.x, pos.y, BTN_WIDTH + X_MARGIN, BTN_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(ftostr52sp(value)); - tft.add_text(0, 0, color, tft_string); -} - -static void moveAxis(const AxisEnum axis, const int8_t direction) { - quick_feedback(); - - #if HAS_EXTRUDERS - if (axis == E_AXIS && thermalManager.tooColdToExtrude(motionAxisState.e_selection)) { - drawMessage(F("Too cold")); - return; - } - #endif - - const float diff = motionAxisState.currentStepSize * direction; - - #if HAS_BED_PROBE - - if (axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { - #if ENABLED(BABYSTEP_ZPROBE_OFFSET) - const int16_t babystep_increment = direction * BABYSTEP_SIZE_Z; - const bool do_probe = DISABLED(BABYSTEP_HOTEND_Z_OFFSET) || active_extruder == 0; - const float bsDiff = planner.mm_per_step[Z_AXIS] * babystep_increment, - new_probe_offset = probe.offset.z + bsDiff, - new_offs = TERN(BABYSTEP_HOTEND_Z_OFFSET - , do_probe ? new_probe_offset : hotend_offset[active_extruder].z - bsDiff - , new_probe_offset - ); - if (WITHIN(new_offs, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { - babystep.add_steps(Z_AXIS, babystep_increment); - if (do_probe) - probe.offset.z = new_offs; - else - TERN(BABYSTEP_HOTEND_Z_OFFSET, hotend_offset[active_extruder].z = new_offs, NOOP); - drawMessage(F("")); // Clear the error - drawAxisValue(axis); - } - else - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - - #else - // Only change probe.offset.z - probe.offset.z += diff; - if (direction < 0 && current_position.z < Z_PROBE_OFFSET_RANGE_MIN) { - current_position.z = Z_PROBE_OFFSET_RANGE_MIN; - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - else if (direction > 0 && current_position.z > Z_PROBE_OFFSET_RANGE_MAX) { - current_position.z = Z_PROBE_OFFSET_RANGE_MAX; - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - else - drawMessage(F("")); // Clear the error - - drawAxisValue(axis); - #endif - } - - #endif // HAS_BED_PROBE - - if (!ui.manual_move.processing) { - // Get motion limit from software endstops, if any - float min, max; - soft_endstop.get_manual_axis_limits(axis, min, max); - - // Delta limits XY based on the current offset from center - // This assumes the center is 0,0 - #if ENABLED(DELTA) - if (axis != Z_AXIS && TERN1(HAS_EXTRUDERS, axis != E_AXIS)) { - max = SQRT(sq(float(PRINTABLE_RADIUS)) - sq(current_position[Y_AXIS - axis])); // (Y_AXIS - axis) == the other axis - min = -max; - } - #endif - - // Get the new position - const bool limited = ui.manual_move.apply_diff(axis, diff, min, max); - #if IS_KINEMATIC - UNUSED(limited); - #else - FSTR_P const msg = limited ? GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS) : FPSTR(NUL_STR); - drawMessage(msg); - #endif - - ui.manual_move.soon(axis OPTARG(MULTI_E_MANUAL, motionAxisState.e_selection)); - } - - drawAxisValue(axis); -} - -#if HAS_EXTRUDERS - static void e_plus() { moveAxis(E_AXIS, 1); } - static void e_minus() { moveAxis(E_AXIS, -1); } -#endif -#if HAS_X_AXIS - static void x_minus() { moveAxis(X_AXIS, -1); } - static void x_plus() { moveAxis(X_AXIS, 1); } -#endif -#if HAS_Y_AXIS - static void y_plus() { moveAxis(Y_AXIS, 1); } - static void y_minus() { moveAxis(Y_AXIS, -1); } -#endif -#if HAS_Z_AXIS - static void z_plus() { moveAxis(Z_AXIS, 1); } - static void z_minus() { moveAxis(Z_AXIS, -1); } -#endif - -#if ENABLED(TOUCH_SCREEN) - #if HAS_EXTRUDERS - static void e_select() { - if (++motionAxisState.e_selection >= EXTRUDERS) - motionAxisState.e_selection = 0; - quick_feedback(); - drawCurESelection(); - drawAxisValue(E_AXIS); - } - #endif - - static void do_home() { - quick_feedback(); - drawMessage(GET_TEXT_F(MSG_LEVEL_BED_HOMING)); - queue.inject_P(G28_STR); - // Disable touch until home is done - touch.disable(); - TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); - TERN_(HAS_X_AXIS, drawAxisValue(X_AXIS)); - TERN_(HAS_Y_AXIS, drawAxisValue(Y_AXIS)); - TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); - } - - static void step_size() { - motionAxisState.currentStepSize = motionAxisState.currentStepSize / 10.0; - if (motionAxisState.currentStepSize < 0.0015) motionAxisState.currentStepSize = 10.0; - quick_feedback(); - drawCurStepValue(); - } -#endif - -#if ALL(HAS_BED_PROBE, TOUCH_SCREEN) - static void z_select() { - motionAxisState.z_selection *= -1; - quick_feedback(); - drawCurZSelection(); - drawAxisValue(Z_AXIS); - } -#endif - -static void disable_steppers() { - quick_feedback(); - queue.inject(F("M84")); -} - -static void drawBtn(const int x, const int y, const char *label, intptr_t data, const MarlinImage img, uint16_t bgColor, const bool enabled=true) { - const uint16_t width = images[imgBtn52Rounded].width, - height = images[imgBtn52Rounded].height; - - if (!enabled) bgColor = COLOR_CONTROL_DISABLED; - - tft.canvas(x, y, width, height); - tft.set_background(COLOR_BACKGROUND); - tft.add_image(0, 0, imgBtn52Rounded, bgColor, COLOR_BACKGROUND, COLOR_DARKGREY); - - // TODO: Make an add_text() taking a font arg - if (label) { - tft_string.set(label); - tft_string.trim(); - tft.add_text(tft_string.center(width), height / 2 - tft_string.font_height() / 2, bgColor, tft_string); - } - else - tft.add_image(0, 0, img, bgColor, COLOR_BACKGROUND, COLOR_DARKGREY); - - TERN_(TOUCH_SCREEN, if (enabled) touch.add_control(BUTTON, x, y, width, height, data)); -} - -void MarlinUI::move_axis_screen() { - // Reset - defer_status_screen(true); - motionAxisState.blocked = false; - TERN_(TOUCH_SCREEN, touch.enable()); - - ui.clear_lcd(); - - TERN_(TOUCH_SCREEN, touch.clear()); - - const bool busy = printingIsActive(); - - // Babysteps during printing? Select babystep for Z probe offset - #if ENABLED(BABYSTEP_ZPROBE_OFFSET) - if (busy) motionAxisState.z_selection = Z_SELECTION_Z_PROBE; - #endif - - // ROW 1 -> E- Y- CurY Z+ - int x = X_MARGIN, y = Y_MARGIN, spacing = 0; - - TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy)); - - spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; - x += BTN_WIDTH + spacing; - - TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy)); - - x += BTN_WIDTH; - - // Cur Y - #if HAS_Y_AXIS - motionAxisState.yValuePos.set(x + 2, y); - drawAxisValue(Y_AXIS); - #endif - - x += spacing; - #if HAS_Z_AXIS - drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have baby step - #endif - - // ROW 2 -> "Ex" X- HOME X+ "Z" - y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; - x = X_MARGIN; - spacing = (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; - - #if HAS_EXTRUDERS - motionAxisState.eNamePos.set(x, y); - drawCurESelection(); - TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); - #endif - - x += BTN_WIDTH + spacing; - - TERN_(HAS_X_AXIS, drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy)); - - x += BTN_WIDTH + spacing; //imgHome is 64x64 - - #if ALL(HAS_X_AXIS, TOUCH_SCREEN) - add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy); - #endif - - x += BTN_WIDTH + spacing; - const uint16_t xplus_x = x; - - TERN_(HAS_X_AXIS, drawBtn(x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy)); - - x += BTN_WIDTH + spacing; - - #if HAS_Z_AXIS - motionAxisState.zTypePos.set(x, y); - drawCurZSelection(); - #endif - - #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) - if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); - #endif - - // ROW 3 -> E- CurX Y- Z- - y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; - x = X_MARGIN; - spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; - - #if HAS_EXTRUDERS - drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); - motionAxisState.eValuePos.set(x, y + BTN_HEIGHT + 2); - TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); - #endif - - // Cur X - #if HAS_X_AXIS - motionAxisState.xValuePos.set(BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4, y - 10); - drawAxisValue(X_AXIS); - #endif - - x += BTN_WIDTH + spacing; - - // Cur Y - TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); - - x += BTN_WIDTH + spacing; - - // Cur Z - #if HAS_Z_AXIS - drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have babystep - motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); - drawAxisValue(Z_AXIS); - #endif - - // ROW 4 -> step_size disable steppers back - y = TFT_HEIGHT - Y_MARGIN - 32; - x = TFT_WIDTH / 2 - CUR_STEP_VALUE_WIDTH / 2; - motionAxisState.stepValuePos.set(x, y); - if (!busy) { - drawCurStepValue(); - TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, x, y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); - } - - // Aligned with x+ - drawBtn(xplus_x, TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); - - TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); -} - -#endif // HAS_UI_1024x600 diff --git a/Marlin/src/lcd/tft/ui_1024x600.h b/Marlin/src/lcd/tft/ui_1024x600.h index c6b5d9f85ec1..669f1258b73a 100644 --- a/Marlin/src/lcd/tft/ui_1024x600.h +++ b/Marlin/src/lcd/tft/ui_1024x600.h @@ -19,31 +19,283 @@ * along with this program. If not, see . * */ -#pragma once -#define MARLIN_LOGO_FULL_SIZE MarlinLogo480x320x16 +#include "../../inc/MarlinConfigPre.h" -#include "ui_common.h" +// -------------------------------- Core Parameters -------------------------------- -#define TFT_STATUS_TOP_Y 4 -#define TFT_TOP_LINE_Y 4 +#define MENU_TEXT_X 16 +#define MENU_TEXT_Y tft_string.vcenter(MENU_ITEM_HEIGHT) -#define MENU_TEXT_X_OFFSET 16 -#define MENU_TEXT_Y_OFFSET tft_string.vcenter(MENU_ITEM_HEIGHT) +#define MENU_ITEM_ICON_X 5 +#define MENU_ITEM_ICON_Y 5 +#define MENU_ITEM_ICON_SPACE 42 -#define MENU_ITEM_ICON_X 5 -#define MENU_ITEM_ICON_Y 5 -#define MENU_ITEM_ICON_SPACE 42 +#define MENU_ITEM_HEIGHT 43 +#define MENU_LINE_HEIGHT (MENU_ITEM_HEIGHT + 2) +#define MENU_TOP_LINE_Y 4 -#define MENU_ITEM_HEIGHT 43 -#define MENU_LINE_HEIGHT (MENU_ITEM_HEIGHT + 2) - -#if (TFT_FONT == NOTOSANS) || (TFT_FONT == HELVETICA) - #define FONT_SIZE 19 +#if TFT_FONT == NOTOSANS || TFT_FONT == HELVETICA + #define FONT_SIZE 19 #elif TFT_FONT == UNIFONT - #define FONT_SIZE 20 + #define FONT_SIZE 20 +#endif + +#define FONT_LINE_HEIGHT 34 + +// --------------------------------------------------------------------------------- + +#define VCENTER tft_string.vcenter(FONT_LINE_HEIGHT) + +// MarlinUI::show_bootscreen() +#ifndef BOOTSCREEN_LOGO + #if ENABLED(BOOT_MARLIN_LOGO_SMALL) + #define BOOTSCREEN_LOGO MarlinLogo195x59x16 + #define BOOTSCREEN_LOGO_W 195 + #define BOOTSCREEN_LOGO_H 59 + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 70) + #else + #define BOOTSCREEN_LOGO MarlinLogo480x320x16 + #define BOOTSCREEN_LOGO_W TFT_WIDTH + #define BOOTSCREEN_LOGO_H TFT_HEIGHT + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 90) + #endif +#endif + +#if !defined(BOOTSCREEN_LOGO_X) && !defined(BOOTSCREEN_LOGO_Y) + #define BOOTSCREEN_LOGO_X (TFT_WIDTH - BOOTSCREEN_LOGO_W) / 2 + #define BOOTSCREEN_LOGO_Y (TFT_HEIGHT - BOOTSCREEN_LOGO_H) / 2 +#endif + +#if !defined(NAVIGATION_PAGE_UP_X) && !defined(NAVIGATION_PAGE_UP_Y) && !defined(NAVIGATION_PAGE_DOWN_X) && !defined(NAVIGATION_PAGE_DOWN_Y) && !defined(NAVIGATION_BACK_X) && !defined(NAVIGATION_BACK_Y) + #define NAVIGATION_PAGE_UP_X 164 + #define NAVIGATION_PAGE_UP_Y TFT_HEIGHT - 50 + #define NAVIGATION_PAGE_DOWN_X 796 + #define NAVIGATION_PAGE_DOWN_Y TFT_HEIGHT - 50 + #define NAVIGATION_BACK_X 480 + #define NAVIGATION_BACK_Y TFT_HEIGHT - 50 +#endif + +#if !defined(BUTTON_DECREASE_X) && !defined(BUTTON_DECREASE_Y) && !defined(BUTTON_INCREASE_X) && !defined(BUTTON_INCREASE_Y) && !defined(BUTTON_CLICK_X) && !defined(BUTTON_CLICK_Y) + #define BUTTON_DECREASE_X 164 + #define BUTTON_DECREASE_Y TFT_HEIGHT - 80 + #define BUTTON_INCREASE_X 796 + #define BUTTON_INCREASE_Y TFT_HEIGHT - 80 + #define BUTTON_CLICK_X 480 + #define BUTTON_CLICK_Y TFT_HEIGHT - 80 +#endif + +#if !defined(BUTTON_CANCEL_X) && !defined(BUTTON_CANCEL_Y) && !defined(BUTTON_CONFIRM_X) && !defined(BUTTON_CONFIRM_Y) + #define BUTTON_CANCEL_X 256 + #define BUTTON_CANCEL_Y TFT_HEIGHT - 80 + #define BUTTON_CONFIRM_X 704 + #define BUTTON_CONFIRM_Y TFT_HEIGHT - 80 +#endif + +// MarlinUI::draw_kill_screen() +#if !defined(KILL_SCREEN_STATUS_Y) && !defined(KILL_SCREEN_HALTED_Y) && !defined(KILL_SCREEN_RESET_Y) + #define KILL_SCREEN_STATUS_Y 94 + #define KILL_SCREEN_HALTED_Y 184 + #define KILL_SCREEN_RESET_Y 229 +#endif + +// draw_heater_status() and draw_fan_status() +#if !defined(TEMP_FAN_CONTROL_W) && !defined(TEMP_FAN_CONTROL_H) + #define TEMP_FAN_CONTROL_W 80 + #define TEMP_FAN_CONTROL_H 120 +#endif +#if !defined(TEMP_ICON_X) && !defined(TEMP_ICON_Y) + #define TEMP_ICON_X 8 + #define TEMP_ICON_Y 28 +#endif +#if !defined(FAN_ICON_X) && !defined(FAN_ICON_Y) + #define FAN_ICON_X 8 + #define FAN_ICON_Y 20 #endif -#define FONT_LINE_HEIGHT 34 +#if !defined(TEMP_CURRENT_TEXT_X) && !defined(TEMP_CURRENT_TEXT_Y) && !defined(TEMP_TARGET_TEXT_X) && !defined(TEMP_TARGET_TEXT_Y) + #define TEMP_CURRENT_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 2 + #define TEMP_CURRENT_TEXT_Y 80 + VCENTER + #define TEMP_TARGET_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 2 + #define TEMP_TARGET_TEXT_Y 6 + VCENTER +#endif -#include "tft_font.h" +#if !defined(FAN_TEXT_X) && !defined(FAN_TEXT_Y) + #define FAN_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 6 + #define FAN_TEXT_Y 80 + VCENTER +#endif + +// MarlinUI::draw_status_screen() +#if !defined(MAX_ITEMS) && !defined(ITEM_X) && !defined(ITEM_Y) + #define MAX_ITEMS 12 + #define ITEM_X(N) (TFT_WIDTH / _MIN(ITEMS_COUNT, MAX_ITEMS) - TEMP_FAN_CONTROL_W) / 2 + (TFT_WIDTH * N / _MIN(ITEMS_COUNT, MAX_ITEMS)) + #define ITEM_Y 4 +#endif + +#if !defined(COORDINATES_W) && !defined(COORDINATES_H) && !defined(COORDINATES_X) && !defined(COORDINATES_Y) + #define COORDINATES_W TFT_WIDTH - 8 + #define COORDINATES_H FONT_LINE_HEIGHT + #define COORDINATES_X 4 + #define COORDINATES_Y 204 +#endif + +#if !defined(E_MARK_X) && !defined(E_MARK_Y) && !defined(E_VALUE_X) && !defined(E_VALUE_Y) + #define E_MARK_X 572 + #define E_MARK_Y VCENTER + #define E_VALUE_X 672 - tft_string.width() + #define E_VALUE_Y VCENTER +#endif + +#if !defined(X_MARK_X) && !defined(X_MARK_Y) && !defined(X_VALUE_X) && !defined(X_VALUE_Y) + #define X_MARK_X 64 + #define X_MARK_Y VCENTER + #define X_VALUE_X 164 - tft_string.width() + #define X_VALUE_Y VCENTER +#endif + +#if !defined(Y_MARK_X) && !defined(Y_MARK_Y) && !defined(Y_VALUE_X) && !defined(Y_VALUE_Y) + #define Y_MARK_X 318 + #define Y_MARK_Y VCENTER + #define Y_VALUE_X 418 - tft_string.width() + #define Y_VALUE_Y VCENTER +#endif + +#if !defined(Z_MARK_X) && !defined(Z_MARK_Y) && !defined(Z_VALUE_X) && !defined(Z_VALUE_Y) + #define Z_MARK_X 826 + #define Z_MARK_Y VCENTER + #define Z_VALUE_X 965 - tft_string.width() + #define Z_VALUE_Y VCENTER + #define Z_VALUE_OFFSET 32 +#endif + +#if !defined(FEEDRATE_W) && !defined(FEEDRATE_H) && !defined(FEEDRATE_X) && !defined(FEEDRATE_Y) + #define FEEDRATE_W 120 + #define FEEDRATE_H 32 + #define FEEDRATE_X 274 + #define FEEDRATE_Y 304 +#endif +#if !defined(FEEDRATE_ICON_X) && !defined(FEEDRATE_ICON_Y) && !defined(FEEDRATE_ICON_Y) && !defined(FEEDRATE_TEXT_Y) + #define FEEDRATE_ICON_X 0 + #define FEEDRATE_ICON_Y 0 + #define FEEDRATE_TEXT_X 36 + #define FEEDRATE_TEXT_Y tft_string.vcenter(30) +#endif + +#if !defined(FLOWRATE_W) && !defined(FLOWRATE_H) && !defined(FLOWRATE_X) && !defined(FLOWRATE_Y) + #define FLOWRATE_W 120 + #define FLOWRATE_H 32 + #define FLOWRATE_X 650 + #define FLOWRATE_Y 304 +#endif +#if !defined(FLOWRATE_ICON_X) && !defined(FLOWRATE_ICON_Y) && !defined(FLOWRATE_TEXT_X) && !defined(FLOWRATE_TEXT_Y) + #define FLOWRATE_ICON_X 0 + #define FLOWRATE_ICON_Y 0 + #define FLOWRATE_TEXT_X 36 + #define FLOWRATE_TEXT_Y tft_string.vcenter(30) +#endif + +#if !defined(MENU_ICON_X) && !defined(MENU_ICON_Y) + #define MENU_ICON_X 900 + #define MENU_ICON_Y 304 +#endif +#if !defined(SDCARD_ICON_X) && !defined(SDCARD_ICON_Y) + #define SDCARD_ICON_X 60 + #define SDCARD_ICON_Y 304 +#endif + +#if !defined(ELAPSED_TIME_W) && !defined(ELAPSED_TIME_H) && !defined(ELAPSED_TIME_X) && !defined(ELAPSED_TIME_Y) + #if ALL(SHOW_ELAPSED_TIME, SHOW_REMAINING_TIME) + #define ELAPSED_TIME_W (TFT_WIDTH / 2) + #define ELAPSED_TIME_X (TFT_WIDTH / 2) - ELAPSED_TIME_W + #elif ENABLED(SHOW_ELAPSED_TIME) + #define ELAPSED_TIME_W TFT_WIDTH + #define ELAPSED_TIME_X (TFT_WIDTH - ELAPSED_TIME_W) / 2 + #endif + + #define ELAPSED_TIME_H 32 + #define ELAPSED_TIME_Y 404 +#endif + +#if !defined(REMAINING_TIME_W) && !defined(REMAINING_TIME_H) && !defined(REMAINING_TIME_X) && !defined(REMAINING_TIME_Y) + #if ALL(SHOW_ELAPSED_TIME, SHOW_REMAINING_TIME) + #define REMAINING_TIME_W (TFT_WIDTH / 2) + #define REMAINING_TIME_X (TFT_WIDTH / 2) + #elif ENABLED(SHOW_REMAINING_TIME) + #define REMAINING_TIME_W TFT_WIDTH + #define REMAINING_TIME_X (TFT_WIDTH - REMAINING_TIME_W) / 2 + #endif + + #define REMAINING_TIME_H 32 + #define REMAINING_TIME_Y 404 +#endif + +#if !defined(ELAPSED_TIME_IMAGE_X) && !defined(ELAPSED_TIME_IMAGE_Y) && !defined(ELAPSED_TIME_TEXT_X) && !defined(ELAPSED_TIME_TEXT_Y) + #define ELAPSED_TIME_IMAGE_X tft_string.center(ELAPSED_TIME_W) - 18 + #define ELAPSED_TIME_IMAGE_Y 0 + #define ELAPSED_TIME_TEXT_X tft_string.center(ELAPSED_TIME_W) + 18 + #define ELAPSED_TIME_TEXT_Y tft_string.vcenter(29) +#endif + +#if !defined(REMAINING_TIME_IMAGE_X) && !defined(REMAINING_TIME_IMAGE_Y) && !defined(REMAINING_TIME_TEXT_X) && !defined(REMAINING_TIME_TEXT_Y) + #define REMAINING_TIME_IMAGE_X tft_string.center(ELAPSED_TIME_W) - 18 + #define REMAINING_TIME_IMAGE_Y 0 + #define REMAINING_TIME_TEXT_X tft_string.center(ELAPSED_TIME_W) + 18 + #define REMAINING_TIME_TEXT_Y tft_string.vcenter(29) +#endif + +#if !defined(PROGRESS_BAR_W) && !defined(PROGRESS_BAR_H) && !defined(PROGRESS_BAR_X) && !defined(PROGRESS_BAR_Y) + #define PROGRESS_BAR_W TFT_WIDTH - 8 + #define PROGRESS_BAR_H 12 + #define PROGRESS_BAR_X 4 + #define PROGRESS_BAR_Y 454 +#endif + +#if !defined(STATUS_MESSAGE_W) && !defined(STATUS_MESSAGE_H) && !defined(STATUS_MESSAGE_X) && !defined(STATUS_MESSAGE_Y) + #define STATUS_MESSAGE_W TFT_WIDTH + #define STATUS_MESSAGE_H FONT_LINE_HEIGHT + #define STATUS_MESSAGE_X 0 + #define STATUS_MESSAGE_Y 504 +#endif + +#if !defined(STATUS_MESSAGE_TEXT_X) && !defined(STATUS_MESSAGE_TEXT_Y) + #define STATUS_MESSAGE_TEXT_X tft_string.center(STATUS_MESSAGE_W) + #define STATUS_MESSAGE_TEXT_Y VCENTER +#endif + +// MenuEditItemBase::draw_edit_screen() +#if !defined(SLIDER_W) && !defined(SLIDER_Y) + #define SLIDER_W 720 + #define SLIDER_Y 320 +#endif + +#if ENABLED(AUTO_BED_LEVELING_UBL) + #if !defined(UBL_X_LABEL_X) && !defined(UBL_X_TEXT_X) && !defined(UBL_Y_LABEL_X) && !defined(UBL_Y_TEXT_X) + #define UBL_X_LABEL_X (TFT_WIDTH / 2 - 120) + #define UBL_X_TEXT_X (TFT_WIDTH / 2 - 16) - tft_string.width() + #define UBL_Y_LABEL_X (TFT_WIDTH / 2 + 16) + #define UBL_Y_TEXT_X (TFT_WIDTH / 2 + 120) - tft_string.width() + #endif + + // MarlinUI::ubl_plot() + #if !defined(UBL_GRID_W) && !defined(UBL_GRID_H) && !defined(UBL_GRID_X) && !defined(UBL_GRID_Y) && !defined(UBL_CONTROL_OFFSET) + #define UBL_GRID_W 192 + #define UBL_GRID_H 192 + #define UBL_GRID_X 8 + #define UBL_GRID_Y 8 + #define UBL_CONTROL_OFFSET 16 + #endif + + #if !defined(UBL_COORDINATES_W) && !defined(UBL_COORDINATES_X) && !defined(UBL_X_COORDINATE_Y) && !defined(UBL_Y_COORDINATE_Y) && !defined(UBL_Z_COORDINATE_Y) + #define UBL_COORDINATES_W 120 + #define UBL_COORDINATES_X 320 + + #define UBL_X_COORDINATE_Y UBL_GRID_Y + (UBL_GRID_H - MENU_ITEM_HEIGHT) / 2 - MENU_ITEM_HEIGHT + #define UBL_Y_COORDINATE_Y UBL_GRID_Y + (UBL_GRID_H - MENU_ITEM_HEIGHT) / 2 + #define UBL_Z_COORDINATE_Y UBL_GRID_Y + (UBL_GRID_H - MENU_ITEM_HEIGHT) / 2 + MENU_ITEM_HEIGHT + #endif + + #if !defined(UBL_ACTION_X) && !defined(UBL_ACTION_Y) + #define UBL_ACTION_X UBL_COORDINATES_X + #define UBL_ACTION_Y UBL_GRID_Y + UBL_GRID_H + UBL_CONTROL_OFFSET + #endif +#endif diff --git a/Marlin/src/lcd/tft/ui_240x320.h b/Marlin/src/lcd/tft/ui_240x320.h new file mode 100644 index 000000000000..c542e00e4f8a --- /dev/null +++ b/Marlin/src/lcd/tft/ui_240x320.h @@ -0,0 +1,294 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../inc/MarlinConfigPre.h" + +// -------------------------------- Core Parameters -------------------------------- + +#define MENU_TEXT_X 10 +#define MENU_TEXT_Y tft_string.vcenter(MENU_ITEM_HEIGHT) + +#define MENU_ITEM_ICON_X 0 +#define MENU_ITEM_ICON_Y 0 +#define MENU_ITEM_ICON_SPACE 32 + +#define MENU_ITEM_HEIGHT 32 +#define MENU_LINE_HEIGHT (MENU_ITEM_HEIGHT + 2) +#define MENU_TOP_LINE_Y 2 + +#if TFT_FONT == NOTOSANS || TFT_FONT == HELVETICA + #define FONT_SIZE 14 +#elif TFT_FONT == UNIFONT + #define FONT_SIZE 10 +#endif + +#define FONT_LINE_HEIGHT 24 + +// --------------------------------------------------------------------------------- + +#define VCENTER tft_string.vcenter(FONT_LINE_HEIGHT) + +// MarlinUI::show_bootscreen() +#ifndef BOOTSCREEN_LOGO + #if ENABLED(BOOT_MARLIN_LOGO_SMALL) + #define BOOTSCREEN_LOGO MarlinLogo195x59x16 + #define BOOTSCREEN_LOGO_W 195 + #define BOOTSCREEN_LOGO_H 59 + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 48) + #else + #define BOOTSCREEN_LOGO MarlinLogo320x240x16 + #define BOOTSCREEN_LOGO_W TFT_WIDTH + #define BOOTSCREEN_LOGO_H TFT_HEIGHT + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 54) + #endif +#endif + +#if !defined(BOOTSCREEN_LOGO_X) && !defined(BOOTSCREEN_LOGO_Y) + #define BOOTSCREEN_LOGO_X (TFT_WIDTH - BOOTSCREEN_LOGO_W) / 2 + #define BOOTSCREEN_LOGO_Y (TFT_HEIGHT - BOOTSCREEN_LOGO_H) / 2 +#endif + +#if !defined(NAVIGATION_PAGE_UP_X) && !defined(NAVIGATION_PAGE_UP_Y) && !defined(NAVIGATION_PAGE_DOWN_X) && !defined(NAVIGATION_PAGE_DOWN_Y) && !defined(NAVIGATION_BACK_X) && !defined(NAVIGATION_BACK_Y) + #define NAVIGATION_PAGE_UP_X 24 + #define NAVIGATION_PAGE_UP_Y TFT_HEIGHT - 34 + #define NAVIGATION_PAGE_DOWN_X 186 + #define NAVIGATION_PAGE_DOWN_Y TFT_HEIGHT - 34 + #define NAVIGATION_BACK_X 104 + #define NAVIGATION_BACK_Y TFT_HEIGHT - 34 +#endif + +#if !defined(BUTTON_DECREASE_X) && !defined(BUTTON_DECREASE_Y) && !defined(BUTTON_INCREASE_X) && !defined(BUTTON_INCREASE_Y) && !defined(BUTTON_CLICK_X) && !defined(BUTTON_CLICK_Y) + #define BUTTON_DECREASE_X 8 + #define BUTTON_DECREASE_Y TFT_HEIGHT - 64 + #define BUTTON_INCREASE_X 168 + #define BUTTON_INCREASE_Y TFT_HEIGHT - 64 + #define BUTTON_CLICK_X 88 + #define BUTTON_CLICK_Y TFT_HEIGHT - 64 +#endif + +#if !defined(BUTTON_CANCEL_X) && !defined(BUTTON_CANCEL_Y) && !defined(BUTTON_CONFIRM_X) && !defined(BUTTON_CONFIRM_Y) + #define BUTTON_CANCEL_X 20 + #define BUTTON_CANCEL_Y TFT_HEIGHT - 64 + #define BUTTON_CONFIRM_X 156 + #define BUTTON_CONFIRM_Y TFT_HEIGHT - 64 +#endif + +// MarlinUI::draw_kill_screen() +#if !defined(KILL_SCREEN_STATUS_Y) && !defined(KILL_SCREEN_HALTED_Y) && !defined(KILL_SCREEN_RESET_Y) + #define KILL_SCREEN_STATUS_Y 104 + #define KILL_SCREEN_HALTED_Y 172 + #define KILL_SCREEN_RESET_Y 206 +#endif + +// draw_heater_status() and draw_fan_status() +#if !defined(TEMP_FAN_CONTROL_W) && !defined(TEMP_FAN_CONTROL_H) + #define TEMP_FAN_CONTROL_W 60 + #define TEMP_FAN_CONTROL_H 100 +#endif +#if !defined(TEMP_ICON_X) && !defined(TEMP_ICON_Y) + #define TEMP_ICON_X -2 + #define TEMP_ICON_Y 18 +#endif +#if !defined(FAN_ICON_X) && !defined(FAN_ICON_Y) + #define FAN_ICON_X -2 + #define FAN_ICON_Y 10 +#endif + +#if !defined(TEMP_CURRENT_TEXT_X) && !defined(TEMP_CURRENT_TEXT_Y) && !defined(TEMP_TARGET_TEXT_X) && !defined(TEMP_TARGET_TEXT_Y) + #define TEMP_CURRENT_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 2 + #define TEMP_CURRENT_TEXT_Y 69 + VCENTER + #define TEMP_TARGET_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 2 + #define TEMP_TARGET_TEXT_Y 5 + VCENTER +#endif + +#if !defined(FAN_TEXT_X) && !defined(FAN_TEXT_Y) + #define FAN_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 6 + #define FAN_TEXT_Y 69 + VCENTER +#endif + +// MarlinUI::draw_status_screen() +#if !defined(MAX_ITEMS) && !defined(ITEM_X) && !defined(ITEM_Y) + #define MAX_ITEMS 4 + #define ITEM_X(N) (TFT_WIDTH / _MIN(ITEMS_COUNT, MAX_ITEMS) - TEMP_FAN_CONTROL_W) / 2 + (TFT_WIDTH * N / _MIN(ITEMS_COUNT, MAX_ITEMS)) + #define ITEM_Y 2 +#endif + +#if !defined(COORDINATES_W) && !defined(COORDINATES_H) && !defined(COORDINATES_X) && !defined(COORDINATES_Y) + #define COORDINATES_W TFT_WIDTH - 8 + #define COORDINATES_H FONT_LINE_HEIGHT * 2 + #define COORDINATES_X 4 + #define COORDINATES_Y 104 +#endif + +#if !defined(E_MARK_X) && !defined(E_MARK_Y) && !defined(E_VALUE_X) && !defined(E_VALUE_Y) + #define E_MARK_X 10 + #define E_MARK_Y VCENTER + FONT_LINE_HEIGHT + #define E_VALUE_X 77 - tft_string.width() + #define E_VALUE_Y VCENTER + FONT_LINE_HEIGHT +#endif + +#if !defined(X_MARK_X) && !defined(X_MARK_Y) && !defined(X_VALUE_X) && !defined(X_VALUE_Y) + #define X_MARK_X 10 + #define X_MARK_Y VCENTER + #define X_VALUE_X 77 - tft_string.width() + #define X_VALUE_Y VCENTER +#endif + +#if !defined(Y_MARK_X) && !defined(Y_MARK_Y) && !defined(Y_VALUE_X) && !defined(Y_VALUE_Y) + #define Y_MARK_X 129 + #define Y_MARK_Y VCENTER + #define Y_VALUE_X 197 - tft_string.width() + #define Y_VALUE_Y VCENTER +#endif + +#if !defined(Z_MARK_X) && !defined(Z_MARK_Y) && !defined(Z_VALUE_X) && !defined(Z_VALUE_Y) + #define Z_MARK_X 129 + #define Z_MARK_Y VCENTER + FONT_LINE_HEIGHT + #define Z_VALUE_X 222 - tft_string.width() + #define Z_VALUE_Y VCENTER + FONT_LINE_HEIGHT + #define Z_VALUE_OFFSET 25 +#endif + +#if !defined(FEEDRATE_W) && !defined(FEEDRATE_H) && !defined(FEEDRATE_X) && !defined(FEEDRATE_Y) + #define FEEDRATE_W 90 + #define FEEDRATE_H 32 + #define FEEDRATE_X 20 + #define FEEDRATE_Y 166 +#endif +#if !defined(FEEDRATE_ICON_X) && !defined(FEEDRATE_ICON_Y) && !defined(FEEDRATE_ICON_Y) && !defined(FEEDRATE_TEXT_Y) + #define FEEDRATE_ICON_X 0 + #define FEEDRATE_ICON_Y 0 + #define FEEDRATE_TEXT_X 36 + #define FEEDRATE_TEXT_Y tft_string.vcenter(30) +#endif + +#if !defined(FLOWRATE_W) && !defined(FLOWRATE_H) && !defined(FLOWRATE_X) && !defined(FLOWRATE_Y) + #define FLOWRATE_W 90 + #define FLOWRATE_H 32 + #define FLOWRATE_X 134 + #define FLOWRATE_Y 166 +#endif +#if !defined(FLOWRATE_ICON_X) && !defined(FLOWRATE_ICON_Y) && !defined(FLOWRATE_TEXT_X) && !defined(FLOWRATE_TEXT_Y) + #define FLOWRATE_ICON_X 0 + #define FLOWRATE_ICON_Y 0 + #define FLOWRATE_TEXT_X 36 + #define FLOWRATE_TEXT_Y tft_string.vcenter(30) +#endif + +#if !defined(MENU_ICON_X) && !defined(MENU_ICON_Y) + #define MENU_ICON_X 176 + #define MENU_ICON_Y 210 +#endif +#if !defined(SDCARD_ICON_X) && !defined(SDCARD_ICON_Y) + #define SDCARD_ICON_X 0 + #define SDCARD_ICON_Y 210 +#endif + +#if !defined(ELAPSED_TIME_W) && !defined(ELAPSED_TIME_H) && !defined(ELAPSED_TIME_X) && !defined(ELAPSED_TIME_Y) + #define ELAPSED_TIME_H 32 + #define ELAPSED_TIME_W 112 + #define ELAPSED_TIME_X (TFT_WIDTH - ELAPSED_TIME_W) / 2 + #define ELAPSED_TIME_Y 246 +#endif + +#if !defined(REMAINING_TIME_W) && !defined(REMAINING_TIME_H) && !defined(REMAINING_TIME_X) && !defined(REMAINING_TIME_Y) + #if ALL(SHOW_ELAPSED_TIME, SHOW_REMAINING_TIME) + #define REMAINING_TIME_Y 210 + #elif ENABLED(SHOW_REMAINING_TIME) + #define REMAINING_TIME_Y 246 + #endif + + #define REMAINING_TIME_H 32 + #define REMAINING_TIME_W 112 + #define REMAINING_TIME_X (TFT_WIDTH - REMAINING_TIME_W) / 2 +#endif + +#if !defined(ELAPSED_TIME_IMAGE_X) && !defined(ELAPSED_TIME_IMAGE_Y) && !defined(ELAPSED_TIME_TEXT_X) && !defined(ELAPSED_TIME_TEXT_Y) + #define ELAPSED_TIME_IMAGE_X tft_string.center(ELAPSED_TIME_W) - 18 + #define ELAPSED_TIME_IMAGE_Y 0 + #define ELAPSED_TIME_TEXT_X tft_string.center(ELAPSED_TIME_W) + 18 + #define ELAPSED_TIME_TEXT_Y tft_string.vcenter(29) +#endif + +#if !defined(REMAINING_TIME_IMAGE_X) && !defined(REMAINING_TIME_IMAGE_Y) && !defined(REMAINING_TIME_TEXT_X) && !defined(REMAINING_TIME_TEXT_Y) + #define REMAINING_TIME_IMAGE_X tft_string.center(ELAPSED_TIME_W) - 18 + #define REMAINING_TIME_IMAGE_Y 0 + #define REMAINING_TIME_TEXT_X tft_string.center(ELAPSED_TIME_W) + 18 + #define REMAINING_TIME_TEXT_Y tft_string.vcenter(29) +#endif + +#if !defined(PROGRESS_BAR_W) && !defined(PROGRESS_BAR_H) && !defined(PROGRESS_BAR_X) && !defined(PROGRESS_BAR_Y) + #define PROGRESS_BAR_W TFT_WIDTH - 8 + #define PROGRESS_BAR_H 9 + #define PROGRESS_BAR_X 4 + #define PROGRESS_BAR_Y 282 +#endif + +#if !defined(STATUS_MESSAGE_W) && !defined(STATUS_MESSAGE_H) && !defined(STATUS_MESSAGE_X) && !defined(STATUS_MESSAGE_Y) + #define STATUS_MESSAGE_W TFT_WIDTH + #define STATUS_MESSAGE_H FONT_LINE_HEIGHT + #define STATUS_MESSAGE_X 0 + #define STATUS_MESSAGE_Y 292 +#endif + +#if !defined(STATUS_MESSAGE_TEXT_X) && !defined(STATUS_MESSAGE_TEXT_Y) + #define STATUS_MESSAGE_TEXT_X tft_string.center(STATUS_MESSAGE_W) + #define STATUS_MESSAGE_TEXT_Y VCENTER +#endif + +// MenuEditItemBase::draw_edit_screen() +#if !defined(SLIDER_W) && !defined(SLIDER_Y) + #define SLIDER_W 220 + #define SLIDER_Y 140 +#endif + +#if ENABLED(AUTO_BED_LEVELING_UBL) + #if !defined(UBL_X_LABEL_X) && !defined(UBL_X_TEXT_X) && !defined(UBL_Y_LABEL_X) && !defined(UBL_Y_TEXT_X) + #define UBL_X_LABEL_X (TFT_WIDTH / 2 - 104) + #define UBL_X_TEXT_X (TFT_WIDTH / 2 - 16) - tft_string.width() + #define UBL_Y_LABEL_X (TFT_WIDTH / 2 + 16) + #define UBL_Y_TEXT_X (TFT_WIDTH / 2 + 104) - tft_string.width() + #endif + + // MarlinUI::ubl_plot() + #if !defined(UBL_GRID_W) && !defined(UBL_GRID_H) && !defined(UBL_GRID_X) && !defined(UBL_GRID_Y) && !defined(UBL_CONTROL_OFFSET) + #define UBL_GRID_W 144 + #define UBL_GRID_H 144 + #define UBL_GRID_X 8 + #define UBL_GRID_Y 8 + #define UBL_CONTROL_OFFSET 8 + #endif + + #if !defined(UBL_COORDINATES_W) && !defined(UBL_COORDINATES_X) && !defined(UBL_X_COORDINATE_Y) && !defined(UBL_Y_COORDINATE_Y) && !defined(UBL_Z_COORDINATE_Y) + #define UBL_COORDINATES_W 120 + #define UBL_COORDINATES_X 20 + + #define UBL_X_COORDINATE_Y 196 + #define UBL_Y_COORDINATE_Y 220 + #define UBL_Z_COORDINATE_Y 244 + #endif + + #if !defined(UBL_ACTION_X) && !defined(UBL_ACTION_Y) + #define UBL_ACTION_X 180 + #define UBL_ACTION_Y 220 + #endif +#endif diff --git a/Marlin/src/lcd/tft/ui_320x240.cpp b/Marlin/src/lcd/tft/ui_320x240.cpp deleted file mode 100644 index dcbfa935b476..000000000000 --- a/Marlin/src/lcd/tft/ui_320x240.cpp +++ /dev/null @@ -1,1221 +0,0 @@ -/** - * Marlin 3D Printer Firmware - * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] - * - * Based on Sprinter and grbl. - * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ - -#include "../../inc/MarlinConfigPre.h" - -#if HAS_UI_320x240 - -#include "ui_common.h" - -#include "../marlinui.h" -#include "../menu/menu.h" -#include "../../libs/numtostr.h" - -#include "../../sd/cardreader.h" -#include "../../module/temperature.h" -#include "../../module/printcounter.h" -#include "../../module/planner.h" -#include "../../module/motion.h" - -#if DISABLED(LCD_PROGRESS_BAR) && ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) - #include "../../feature/filwidth.h" - #include "../../gcode/parser.h" -#endif - -#if ENABLED(AUTO_BED_LEVELING_UBL) - #include "../../feature/bedlevel/bedlevel.h" -#endif - -void MarlinUI::tft_idle() { - #if ENABLED(TOUCH_SCREEN) - if (TERN0(HAS_TOUCH_SLEEP, lcd_sleep_task())) return; - if (draw_menu_navigation) { - constexpr uint16_t cx = TERN(TFT_COLOR_UI_PORTRAIT, 16, 48), - cy = TERN(TFT_COLOR_UI_PORTRAIT, 286, 206); - add_control(cx, cy, PAGE_UP, imgPageUp, encoderTopLine > 0); - add_control(cx + 192, cy, PAGE_DOWN, imgPageDown, encoderTopLine + LCD_HEIGHT < screen_items); - add_control(cx + 96, cy, BACK, imgBack); - draw_menu_navigation = false; - } - #endif - - tft.queue.async(); - - TERN_(TOUCH_SCREEN, if (tft.queue.is_empty()) touch.idle()); // Touch driver is not DMA-aware, so only check for touch controls after screen drawing is completed -} - -#if ENABLED(SHOW_BOOTSCREEN) - - void MarlinUI::show_bootscreen() { - tft.queue.reset(); - - tft.canvas(0, 0, TFT_WIDTH, TFT_HEIGHT); - #if ENABLED(BOOT_MARLIN_LOGO_SMALL) - #define BOOT_LOGO_W 195 // MarlinLogo195x59x16 - #define BOOT_LOGO_H 59 - #define SITE_URL_Y (TFT_HEIGHT - 48) - tft.set_background(COLOR_BACKGROUND); - #else - #define BOOT_LOGO_W TFT_WIDTH // MarlinLogo320x240x16 - #define BOOT_LOGO_H TFT_HEIGHT - #define SITE_URL_Y (TFT_HEIGHT - 54) - #endif - tft.add_image((TFT_WIDTH - BOOT_LOGO_W) / 2, (TFT_HEIGHT - BOOT_LOGO_H) / 2, imgBootScreen); - #ifdef WEBSITE_URL - tft_string.set(WEBSITE_URL); - tft.add_text(tft_string.center(TFT_WIDTH), SITE_URL_Y, COLOR_WEBSITE_URL, tft_string); - #endif - - tft.queue.sync(); - } - - void MarlinUI::bootscreen_completion(const millis_t sofar) { - if ((BOOTSCREEN_TIMEOUT) > sofar) safe_delay((BOOTSCREEN_TIMEOUT) - sofar); - clear_lcd(); - } - -#endif - -void MarlinUI::draw_kill_screen() { - tft.queue.reset(); - tft.fill(0, 0, TFT_WIDTH, TFT_HEIGHT, COLOR_KILL_SCREEN_BG); - - tft.canvas(0, 60, TFT_WIDTH, FONT_LINE_HEIGHT); - tft.set_background(COLOR_KILL_SCREEN_BG); - tft_string.set(status_message); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_KILL_SCREEN_TEXT, tft_string); - - tft.canvas(0, 120, TFT_WIDTH, FONT_LINE_HEIGHT); - tft.set_background(COLOR_KILL_SCREEN_BG); - tft_string.set(GET_TEXT(MSG_HALTED)); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_KILL_SCREEN_TEXT, tft_string); - - tft.canvas(0, 160, TFT_WIDTH, FONT_LINE_HEIGHT); - tft.set_background(COLOR_KILL_SCREEN_BG); - tft_string.set(GET_TEXT(MSG_PLEASE_RESET)); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_KILL_SCREEN_TEXT, tft_string); - - tft.queue.sync(); -} - -void draw_heater_status(uint16_t x, uint16_t y, const int8_t heater) { - MarlinImage image = imgHotEnd; - celsius_t currentTemperature, targetTemperature; - - if (heater >= 0) { // HotEnd - #if HAS_EXTRUDERS - currentTemperature = thermalManager.wholeDegHotend(heater); - targetTemperature = thermalManager.degTargetHotend(heater); - #else - return; - #endif - } - #if HAS_HEATED_BED - else if (heater == H_BED) { - currentTemperature = thermalManager.wholeDegBed(); - targetTemperature = thermalManager.degTargetBed(); - } - #endif - #if HAS_TEMP_CHAMBER - else if (heater == H_CHAMBER) { - currentTemperature = thermalManager.wholeDegChamber(); - #if HAS_HEATED_CHAMBER - targetTemperature = thermalManager.degTargetChamber(); - #else - targetTemperature = ABSOLUTE_ZERO; - #endif - } - #endif - #if HAS_TEMP_COOLER - else if (heater == H_COOLER) { - currentTemperature = thermalManager.wholeDegCooler(); - targetTemperature = TERN(HAS_COOLER, thermalManager.degTargetCooler(), ABSOLUTE_ZERO); - } - #endif - else return; - - TERN_(TOUCH_SCREEN, if (targetTemperature >= 0) touch.add_control(HEATER, x, y, 64, 100, heater)); - tft.canvas(x, y, 64, 100); - tft.set_background(COLOR_BACKGROUND); - - uint16_t color = currentTemperature < 0 ? COLOR_INACTIVE : COLOR_COLD; - - if (heater >= 0) { // HotEnd - if (currentTemperature >= 50) color = COLOR_HOTEND; - } - #if HAS_HEATED_BED - else if (heater == H_BED) { - if (currentTemperature >= 50) color = COLOR_HEATED_BED; - image = targetTemperature > 0 ? imgBedHeated : imgBed; - } - #endif - #if HAS_TEMP_CHAMBER - else if (heater == H_CHAMBER) { - if (currentTemperature >= 50) color = COLOR_CHAMBER; - image = targetTemperature > 0 ? imgChamberHeated : imgChamber; - } - #endif - #if HAS_TEMP_COOLER - else if (heater == H_COOLER) { - if (currentTemperature <= 26) color = COLOR_COLD; - if (currentTemperature > 26) color = COLOR_RED; - image = targetTemperature > 26 ? imgCoolerHot : imgCooler; - } - #endif - - tft.add_image(0, 18, image, color); - - tft_string.set(i16tostr3rj(currentTemperature)); - tft_string.add(LCD_STR_DEGREE); - tft_string.trim(); - tft.add_text(tft_string.center(64) + 2, 69 + tft_string.vcenter(FONT_LINE_HEIGHT), color, tft_string); - - if (targetTemperature >= 0) { - tft_string.set(i16tostr3rj(targetTemperature)); - tft_string.add(LCD_STR_DEGREE); - tft_string.trim(); - tft.add_text(tft_string.center(64) + 2, 5 + tft_string.vcenter(FONT_LINE_HEIGHT), color, tft_string); - } -} - -void draw_fan_status(uint16_t x, uint16_t y, const bool blink) { - TERN_(TOUCH_SCREEN, touch.add_control(FAN, x, y, 64, 100)); - tft.canvas(x, y, 64, 100); - tft.set_background(COLOR_BACKGROUND); - - uint8_t fanSpeed = thermalManager.fan_speed[0]; - MarlinImage image; - - if (fanSpeed >= 127) - image = blink ? imgFanFast1 : imgFanFast0; - else if (fanSpeed > 0) - image = blink ? imgFanSlow1 : imgFanSlow0; - else - image = imgFanIdle; - - tft.add_image(0, 10, image, COLOR_FAN); - - tft_string.set(ui8tostr4pctrj(thermalManager.fan_speed[0])); - tft_string.trim(); - tft.add_text(tft_string.center(64) + 6, 69 + tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_FAN, tft_string); -} - -void MarlinUI::draw_status_screen() { - const bool blink = get_blink(); - - TERN_(TOUCH_SCREEN, touch.clear()); - - // Statuses of heaters and fans - constexpr uint16_t y = TFT_STATUS_TOP_Y; - for (uint16_t i = 0 ; i < ITEMS_COUNT; i++) { - const uint16_t x = (TFT_WIDTH / ITEMS_COUNT - 64) / 2 + (TFT_WIDTH * i / ITEMS_COUNT); - switch (i) { - #if HAS_EXTRUDERS - case ITEM_E0: draw_heater_status(x, y, H_E0); break; - #endif - #if HAS_MULTI_HOTEND - case ITEM_E1: draw_heater_status(x, y, H_E1); break; - #endif - #if HOTENDS > 2 - case ITEM_E2: draw_heater_status(x, y, H_E2); break; - #endif - #if HAS_HEATED_BED - case ITEM_BED: draw_heater_status(x, y, H_BED); break; - #endif - #if HAS_TEMP_CHAMBER - case ITEM_CHAMBER: draw_heater_status(x, y, H_CHAMBER); break; - #endif - #if HAS_TEMP_COOLER - case ITEM_COOLER: draw_heater_status(x, y, H_COOLER); break; - #endif - #if HAS_FAN - case ITEM_FAN: draw_fan_status(x, y, blink); break; - #endif - } - } - - // 2nd horizontal group - current coordinates (height = 24, top margin = 3) - uint16_t width = TERN(TFT_COLOR_UI_PORTRAIT, 232, 312), - height = FONT_LINE_HEIGHT * TERN(TFT_COLOR_UI_PORTRAIT, 2, 1); - tft.canvas(4, 103, width, height); - tft.set_background(COLOR_BACKGROUND); - tft.add_rectangle(0, 0, width, height, COLOR_AXIS_HOMED); - - if (TERN0(LCD_SHOW_E_TOTAL, printingIsActive())) { - #if ENABLED(LCD_SHOW_E_TOTAL) - tft.add_text(10, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "E"); - const uint8_t escale = e_move_accumulator >= 100000.0f ? 10 : 1; // After 100m switch to cm - tft_string.set(ftostr4sign(e_move_accumulator / escale)); - tft_string.add(escale == 10 ? 'c' : 'm'); - tft_string.add('m'); - tft.add_text(127 - tft_string.width(), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, tft_string); - #endif - } - else { - #if HAS_X_AXIS - tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 32, 10), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "X"); - const bool nhx = axis_should_home(X_AXIS); - tft_string.set(blink && nhx ? "?" : ftostr4sign(LOGICAL_X_POSITION(current_position.x))); - uint16_t pos_x = TERN(TFT_COLOR_UI_PORTRAIT, 32 - tft_string.width() / 2, 68 - tft_string.width()), - pos_y = SUM_TERN(TFT_COLOR_UI_PORTRAIT, tft_string.vcenter(FONT_LINE_HEIGHT), FONT_LINE_HEIGHT); - tft.add_text(pos_x, pos_y, nhx ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); - #endif - - #if HAS_Y_AXIS - tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 110, 127), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "Y"); - const bool nhy = axis_should_home(Y_AXIS); - tft_string.set(blink && nhy ? "?" : ftostr4sign(LOGICAL_Y_POSITION(current_position.y))); - tft.add_text( - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - 110 - tft_string.width() / 2, FONT_LINE_HEIGHT + tft_string.vcenter(FONT_LINE_HEIGHT), - #else - 185 - tft_string.width(), tft_string.vcenter(FONT_LINE_HEIGHT), - #endif - nhy ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string - ); - #endif - } - - #if HAS_Z_AXIS - tft.add_text(TERN(TFT_COLOR_UI_PORTRAIT, 192, 219), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "Z"); - const bool nhz = axis_should_home(Z_AXIS); - uint16_t offset = 25; - if (blink && nhz) - tft_string.set('?'); - else { - const float z = LOGICAL_Z_POSITION(current_position.z); - tft_string.set(ftostr52sp((int16_t)z)); - tft_string.rtrim(); - offset += tft_string.width(); - - tft_string.set(ftostr52sp(z)); - offset -= tft_string.width(); - } - #endif - - uint16_t pos_x = TERN(TFT_COLOR_UI_PORTRAIT, 192 - tft_string.width() / 2, 301 - tft_string.width() - offset), - pos_y = SUM_TERN(TFT_COLOR_UI_PORTRAIT, tft_string.vcenter(FONT_LINE_HEIGHT), FONT_LINE_HEIGHT); - tft.add_text(pos_x, pos_y, nhz ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); - - // 3rd horizontal group - controls and times (height = 64, top margin = 3) - // 3rd group, subgroup A - controls (on the sides) - #if ENABLED(TOUCH_SCREEN) - width = TERN(TFT_COLOR_UI_PORTRAIT, 232, 312); - height = TERN(TFT_COLOR_UI_PORTRAIT, FONT_LINE_HEIGHT * 2, FONT_LINE_HEIGHT); - touch.add_control(MOVE_AXIS, 0, 103, width, height); - add_control(256, 130, menu_main, imgSettings); - TERN_(SDSUPPORT, add_control(0, 130, menu_media, imgSD, !printingIsActive(), COLOR_CONTROL_ENABLED, card.isMounted() && printingIsActive() ? COLOR_BUSY : COLOR_CONTROL_DISABLED)); - #endif - - // 3rd group, subgroup B - speeds (center, top half) - - // Feed rate - tft.canvas( - TERN(TFT_COLOR_UI_PORTRAIT, 30, 70), - TERN(TFT_COLOR_UI_PORTRAIT, 172, 132), - TERN(TFT_COLOR_UI_PORTRAIT, 80, 88), - MENU_ITEM_HEIGHT - ); - tft.set_background(COLOR_BACKGROUND); - uint16_t color = feedrate_percentage == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; - tft.add_image(0, 0, imgFeedRate, color); - tft_string.set(i16tostr3rj(feedrate_percentage)); - tft_string.add('%'); - tft.add_text(32, tft_string.vcenter(30), color, tft_string); - TERN_(TOUCH_SCREEN, touch.add_control(FEEDRATE, - TERN(TFT_COLOR_UI_PORTRAIT, 30, 70), - TERN(TFT_COLOR_UI_PORTRAIT, 172, 132), - 80, MENU_ITEM_HEIGHT - )); - - // Flow rate - tft.canvas( - TERN(TFT_COLOR_UI_PORTRAIT, 140, 162), - TERN(TFT_COLOR_UI_PORTRAIT, 172, 132), - TERN(TFT_COLOR_UI_PORTRAIT, 80, 88), - MENU_ITEM_HEIGHT - ); - tft.set_background(COLOR_BACKGROUND); - color = planner.flow_percentage[0] == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; - tft.add_image(0, 0, imgFlowRate, color); - tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); - tft_string.add('%'); - tft.add_text(32, tft_string.vcenter(30), color, tft_string); - #if ENABLED(TOUCH_SCREEN) - touch.add_control(FLOWRATE, - TERN(TFT_COLOR_UI_PORTRAIT, 140, 170), - TERN(TFT_COLOR_UI_PORTRAIT, 172, 132), - 80, MENU_ITEM_HEIGHT, active_extruder - ); - #endif - - // 3rd group, subgroup C - times (center, bottom half) - const progress_t progress = TERN(HAS_PRINT_PROGRESS_PERMYRIAD, get_progress_permyriad, get_progress_percent)(); - const uint16_t time_str_width = 180, image_width = 34; - pos_x = (TFT_WIDTH - time_str_width) / 2; - pos_y = TERN(TFT_COLOR_UI_PORTRAIT, 256, 164); - #if ENABLED(SHOW_ELAPSED_TIME) && DISABLED(SHOW_REMAINING_TIME) - // Print duration so far (time elapsed) - centered - char elapsed_str[18]; - duration_t elapsed = print_job_timer.duration(); - elapsed.toCompactString(elapsed_str); - - tft.canvas(pos_x, pos_y, time_str_width, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(elapsed_str); - uint16_t text_pos_x = tft_string.center(time_str_width - image_width); - tft.add_image(text_pos_x, 0, imgTimeElapsed, COLOR_PRINT_TIME); - tft.add_text(text_pos_x + image_width, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_PRINT_TIME, tft_string); - - #elif DISABLED(SHOW_ELAPSED_TIME) && ENABLED(SHOW_REMAINING_TIME) - // Print time remaining estimation - centered - char estimate_str[18]; - duration_t elapsed = print_job_timer.duration(); - - // Get the estimate, first from M73 - uint32_t estimate_remaining = (0 - #if ALL(SET_PROGRESS_MANUALLY, SET_REMAINING_TIME) - + get_remaining_time() - #endif - ); - // If no M73 estimate is available but we have progress data, calculate time remaining assuming time elapsed is linear with progress - if (!estimate_remaining && progress > 0) - estimate_remaining = elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress; - - // Generate estimate string - if (!estimate_remaining) - tft_string.set("-"); - else { - duration_t estimation = estimate_remaining; - estimation.toCompactString(estimate_str); - tft_string.set(estimate_str); - } - - tft.canvas(pos_x, pos_y, time_str_width, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - color = printingIsActive() ? COLOR_PRINT_TIME : COLOR_INACTIVE; - uint16_t text_pos_x = tft_string.center(time_str_width - image_width); - tft.add_image(text_pos_x, 0, imgTimeRemaining, color); - tft.add_text(text_pos_x + image_width, tft_string.vcenter(FONT_LINE_HEIGHT), color, tft_string); - - #elif ALL(SHOW_REMAINING_TIME, SHOW_ELAPSED_TIME) - // Print duration so far (time elapsed) - aligned under feed rate - char elapsed_str[18]; - duration_t elapsed = print_job_timer.duration(); - elapsed.toCompactString(elapsed_str); - - tft.canvas(pos_x, pos_y, time_str_width / 2 - 2, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft.add_image(0, 0, imgTimeElapsed, COLOR_PRINT_TIME); - tft_string.set(elapsed_str); - tft.add_text(32, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_PRINT_TIME, tft_string); - - // Print time remaining estimation - aligned under flow rate - char estimate_str[18]; - - // Get the estimate, first from M73 - uint32_t estimate_remaining = (0 - #if ALL(SET_PROGRESS_MANUALLY, SET_REMAINING_TIME) - + get_remaining_time() - #endif - ); - // If no M73 estimate is available but we have progress data, calculate time remaining assuming time elapsed is linear with progress - if (!estimate_remaining && progress > 0) - estimate_remaining = elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress; - - // Generate estimate string - if (!estimate_remaining) - tft_string.set("-"); - else { - duration_t estimation = estimate_remaining; - estimation.toCompactString(estimate_str); - tft_string.set(estimate_str); - } - - // Push out the estimate to the screen - tft.canvas(pos_x + time_str_width / 2 + 2, pos_y, time_str_width / 2 - 2, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - color = printingIsActive() ? COLOR_PRINT_TIME : COLOR_INACTIVE; - tft.add_image(0, 0, imgTimeRemaining, color); - tft.add_text(32, tft_string.vcenter(FONT_LINE_HEIGHT), color, tft_string); - #endif - - // Fourth horizontal group - progress bar (height = 9, top margin = 4) - pos_y = TERN(TFT_COLOR_UI_PORTRAIT, 278, 198); - tft.canvas(4, pos_y, TFT_WIDTH - 8, 9); - tft.set_background(COLOR_PROGRESS_BG); - tft.add_rectangle(0, 0, TFT_WIDTH - 8, 9, COLOR_PROGRESS_FRAME); - if (progress) - tft.add_bar(1, 1, ((TFT_WIDTH - 10) * progress / (PROGRESS_SCALE)) / 100, 7, COLOR_PROGRESS_BAR); - - // Status message - pos_y += 9 + 7; - tft.canvas(0, pos_y, TFT_WIDTH, TFT_HEIGHT - pos_y); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(status_message); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_STATUS_MESSAGE, tft_string); - - #if ENABLED(TOUCH_SCREEN) - { - add_control( - TERN(TFT_COLOR_UI_PORTRAIT, 176, 256), - TERN(TFT_COLOR_UI_PORTRAIT, 210, 130), - menu_main, imgSettings - ); - #if HAS_MEDIA - const bool cm = card.isMounted(), pa = printingIsActive(); - if (cm && pa) - add_control(0, TERN(TFT_COLOR_UI_PORTRAIT, 210, 130), STOP, imgCancel, true, COLOR_CONTROL_CANCEL); - else - add_control(0, TERN(TFT_COLOR_UI_PORTRAIT, 210, 130), menu_media, imgSD, cm && !pa, COLOR_CONTROL_ENABLED, COLOR_CONTROL_DISABLED); - #endif - } - #endif // TOUCH_SCREEN -} - -// Low-level draw_edit_screen can be used to draw an edit screen from anyplace -void MenuEditItemBase::draw_edit_screen(FSTR_P const fstr, const char * const value/*=nullptr*/) { - ui.encoder_direction_normal(); - TERN_(TOUCH_SCREEN, touch.clear()); - - uint16_t line = 1; - - menu_line(line++); - tft_string.set(fstr, itemIndex, itemStringC, itemStringF); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - - TERN_(AUTO_BED_LEVELING_UBL, if (ui.external_control) line++); // ftostr52() will overwrite *value so *value has to be displayed first - - menu_line(line); - tft_string.set(value); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - #if ENABLED(AUTO_BED_LEVELING_UBL) - if (ui.external_control) { - menu_line(line - 1); - - tft_string.set(X_LBL); - tft.add_text(TFT_WIDTH / 2 - 120, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(ftostr52(LOGICAL_X_POSITION(current_position.x))); - tft_string.trim(); - tft.add_text(TFT_WIDTH / 2 - 16 - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - tft_string.set(Y_LBL); - tft.add_text(TFT_WIDTH / 2 + 16, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(ftostr52(LOGICAL_X_POSITION(current_position.y))); - tft_string.trim(); - tft.add_text(TFT_WIDTH / 2 + 120 - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - } - #endif - - if (ui.can_show_slider()) { - - #define SLIDER_LENGTH 224 - #define SLIDER_Y_POSITION 140 - - tft.canvas((TFT_WIDTH - SLIDER_LENGTH) / 2, SLIDER_Y_POSITION, SLIDER_LENGTH, 16); - tft.set_background(COLOR_BACKGROUND); - - int16_t position = (SLIDER_LENGTH - 2) * ui.encoderPosition / maxEditValue; - tft.add_bar(0, 7, 1, 2, ui.encoderPosition == 0 ? COLOR_SLIDER_INACTIVE : COLOR_SLIDER); - tft.add_bar(1, 6, position, 4, COLOR_SLIDER); - tft.add_bar(position + 1, 6, SLIDER_LENGTH - 2 - position, 4, COLOR_SLIDER_INACTIVE); - tft.add_bar(SLIDER_LENGTH - 1, 7, 1, 2, int32_t(ui.encoderPosition) == maxEditValue ? COLOR_SLIDER : COLOR_SLIDER_INACTIVE); - - #if ENABLED(TOUCH_SCREEN) - tft.add_image((SLIDER_LENGTH - 8) * ui.encoderPosition / maxEditValue, 0, imgSlider, COLOR_SLIDER); - touch.add_control(SLIDER, (TFT_WIDTH - SLIDER_LENGTH) / 2, SLIDER_Y_POSITION - 8, SLIDER_LENGTH, 32, maxEditValue); - #endif - } - - tft.draw_edit_screen_buttons(); -} - -void TFT::draw_edit_screen_buttons() { - #if ENABLED(TOUCH_SCREEN) - add_control(TERN(TFT_COLOR_UI_PORTRAIT, 16, 32), TFT_HEIGHT - 64, DECREASE, imgDecrease); - add_control(TERN(TFT_COLOR_UI_PORTRAIT, 172, 224), TFT_HEIGHT - 64, INCREASE, imgIncrease); - add_control(TERN(TFT_COLOR_UI_PORTRAIT, 96, 128), TFT_HEIGHT - 64, CLICK, imgConfirm); - #endif -} - -// The Select Screen presents a prompt and two "buttons" -void MenuItem_confirm::draw_select_screen(FSTR_P const yes, FSTR_P const no, const bool yesno, FSTR_P const pref, const char * const string/*=nullptr*/, FSTR_P const suff/*=nullptr*/) { - uint16_t line = 1; - - if (!string) line++; - - menu_line(line++); - tft_string.set(pref); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - - if (string) { - menu_line(line++); - tft_string.set(string); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - } - - if (suff) { - menu_line(line); - tft_string.set(suff); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - } - #if ENABLED(TOUCH_SCREEN) - if (no) add_control(TERN(TFT_COLOR_UI_PORTRAIT, 32,48), TFT_HEIGHT - 64, CANCEL, imgCancel, true, yesno ? HALF(COLOR_CONTROL_CANCEL) : COLOR_CONTROL_CANCEL); - if (yes) add_control(TERN(TFT_COLOR_UI_PORTRAIT, 172, 208), TFT_HEIGHT - 64, CONFIRM, imgConfirm, true, yesno ? COLOR_CONTROL_CONFIRM : HALF(COLOR_CONTROL_CONFIRM)); - #endif -} - -#if ENABLED(ADVANCED_PAUSE_FEATURE) - - void MarlinUI::draw_hotend_status(const uint8_t row, const uint8_t extruder) { - #if ENABLED(TOUCH_SCREEN) - touch.clear(); - draw_menu_navigation = false; - touch.add_control(RESUME_CONTINUE, 0, 0, TFT_WIDTH, TFT_HEIGHT); - #endif - - menu_line(row); - tft_string.set(GET_TEXT(MSG_FILAMENT_CHANGE_NOZZLE)); - tft_string.add('E'); - tft_string.add((char)('1' + extruder)); - tft_string.add(' '); - tft_string.add(i16tostr3rj(thermalManager.wholeDegHotend(extruder))); - tft_string.add(LCD_STR_DEGREE); - tft_string.add(F(" / ")); - tft_string.add(i16tostr3rj(thermalManager.degTargetHotend(extruder))); - tft_string.add(LCD_STR_DEGREE); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - } - -#endif // ADVANCED_PAUSE_FEATURE - -#if ENABLED(AUTO_BED_LEVELING_UBL) - #define GRID_OFFSET_X 8 - #define GRID_OFFSET_Y 8 - #define GRID_WIDTH 144 - #define GRID_HEIGHT 144 - #define CONTROL_OFFSET 8 - - void MarlinUI::ubl_plot(const uint8_t x_plot, const uint8_t y_plot) { - - tft.canvas(GRID_OFFSET_X, GRID_OFFSET_Y, GRID_WIDTH, GRID_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft.add_rectangle(0, 0, GRID_WIDTH, GRID_HEIGHT, COLOR_WHITE); - - for (uint16_t x = 0; x < (GRID_MAX_POINTS_X); x++) - for (uint16_t y = 0; y < (GRID_MAX_POINTS_Y); y++) - if (position_is_reachable({ bedlevel.get_mesh_x(x), bedlevel.get_mesh_y(y) })) - tft.add_bar(1 + (x * 2 + 1) * (GRID_WIDTH - 4) / (GRID_MAX_POINTS_X) / 2, GRID_HEIGHT - 3 - ((y * 2 + 1) * (GRID_HEIGHT - 4) / (GRID_MAX_POINTS_Y) / 2), 2, 2, COLOR_UBL); - - tft.add_rectangle((x_plot * 2 + 1) * (GRID_WIDTH - 4) / (GRID_MAX_POINTS_X) / 2 - 1, GRID_HEIGHT - 5 - ((y_plot * 2 + 1) * (GRID_HEIGHT - 4) / (GRID_MAX_POINTS_Y) / 2), 6, 6, COLOR_UBL); - - const xy_pos_t pos = { bedlevel.get_mesh_x(x_plot), bedlevel.get_mesh_y(y_plot) }, - lpos = pos.asLogical(); - - tft.canvas(216, GRID_OFFSET_Y + (GRID_HEIGHT - MENU_ITEM_HEIGHT) / 2 - MENU_ITEM_HEIGHT, 96, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(X_LBL); - tft.add_text(0, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(ftostr52(lpos.x)); - tft_string.trim(); - tft.add_text(96 - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - tft.canvas(216, GRID_OFFSET_Y + (GRID_HEIGHT - MENU_ITEM_HEIGHT) / 2, 96, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(Y_LBL); - tft.add_text(0, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(ftostr52(lpos.y)); - tft_string.trim(); - tft.add_text(96 - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - tft.canvas(216, GRID_OFFSET_Y + (GRID_HEIGHT - MENU_ITEM_HEIGHT) / 2 + MENU_ITEM_HEIGHT, 96, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(Z_LBL); - tft.add_text(0, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(isnan(bedlevel.z_values[x_plot][y_plot]) ? "-----" : ftostr43sign(bedlevel.z_values[x_plot][y_plot])); - tft_string.trim(); - tft.add_text(96 - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - constexpr uint8_t w = (TFT_WIDTH) / 10; - tft.canvas(GRID_OFFSET_X + (GRID_WIDTH - w) / 2, GRID_OFFSET_Y + GRID_HEIGHT + CONTROL_OFFSET - 1, w, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(ui8tostr3rj(x_plot)); - tft_string.trim(); - tft.add_text(tft_string.center(w), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - tft.canvas(GRID_OFFSET_X + GRID_WIDTH + CONTROL_OFFSET, GRID_OFFSET_Y + (GRID_HEIGHT - 27) / 2, w, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(ui8tostr3rj(y_plot)); - tft_string.trim(); - tft.add_text(tft_string.center(w), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - #if ENABLED(TOUCH_SCREEN) - touch.clear(); - draw_menu_navigation = false; - add_control(GRID_OFFSET_X + GRID_WIDTH + CONTROL_OFFSET, GRID_OFFSET_Y + CONTROL_OFFSET, UBL, (ENCODER_STEPS_PER_MENU_ITEM) * (GRID_MAX_POINTS_X), imgUp); - add_control(GRID_OFFSET_X + GRID_WIDTH + CONTROL_OFFSET, GRID_OFFSET_Y + GRID_HEIGHT - CONTROL_OFFSET - 32, UBL, -(ENCODER_STEPS_PER_MENU_ITEM) * (GRID_MAX_POINTS_X), imgDown); - add_control(GRID_OFFSET_X + CONTROL_OFFSET, GRID_OFFSET_Y + GRID_HEIGHT + CONTROL_OFFSET, UBL, -(ENCODER_STEPS_PER_MENU_ITEM), imgLeft); - add_control(GRID_OFFSET_X + GRID_WIDTH - CONTROL_OFFSET - 32, GRID_OFFSET_Y + GRID_HEIGHT + CONTROL_OFFSET, UBL, ENCODER_STEPS_PER_MENU_ITEM, imgRight); - add_control(224, GRID_OFFSET_Y + GRID_HEIGHT + CONTROL_OFFSET, CLICK, imgLeveling); - add_control(144, 206, BACK, imgBack); - #endif - } -#endif // AUTO_BED_LEVELING_UBL - -#if ENABLED(BABYSTEP_ZPROBE_OFFSET) - #include "../../feature/babystep.h" -#endif - -#if HAS_BED_PROBE - #include "../../module/probe.h" -#endif - -#define Z_SELECTION_Z 1 -#define Z_SELECTION_Z_PROBE -1 - -struct { - #if HAS_X_AXIS - xy_int_t xValuePos; - #endif - #if HAS_Y_AXIS - xy_int_t yValuePos; - #endif - #if HAS_Z_AXIS - xy_int_t zValuePos, zTypePos; - int z_selection = Z_SELECTION_Z; - #endif - #if HAS_EXTRUDERS - xy_int_t eValuePos, eNamePos; - uint8_t e_selection = 0; - #endif - xy_int_t stepValuePos; - float currentStepSize = 10.0; - bool blocked = false; - char message[32]; -} motionAxisState; - -#define BTN_WIDTH 48 -#define BTN_HEIGHT 39 -#define X_MARGIN 15 -#define Y_MARGIN 11 - -static void quick_feedback() { - #if HAS_CHIRP - ui.chirp(); // Buzz and wait. Is the delay needed for buttons to settle? - #if ALL(HAS_MARLINUI_MENU, HAS_BEEPER) - for (int8_t i = 5; i--;) { buzzer.tick(); delay(2); } - #elif HAS_MARLINUI_MENU - delay(10); - #endif - #endif -} - -#define CUR_STEP_VALUE_WIDTH 38 -static void drawCurStepValue() { - tft_string.set(ftostr52sp(motionAxisState.currentStepSize)); - tft.canvas(motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, 20); - tft.set_background(COLOR_BACKGROUND); - tft.add_text(CUR_STEP_VALUE_WIDTH - tft_string.width(), 0, COLOR_AXIS_HOMED, tft_string); - tft.queue.sync(); - tft_string.set(F("mm")); - tft.canvas(motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y + 20, CUR_STEP_VALUE_WIDTH, 20); - tft.set_background(COLOR_BACKGROUND); - tft.add_text(CUR_STEP_VALUE_WIDTH - tft_string.width(), 0, COLOR_AXIS_HOMED, tft_string); -} - -#if HAS_Z_AXIS - static void drawCurZSelection() { - tft_string.set('Z'); - tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), 20); - tft.set_background(COLOR_BACKGROUND); - tft.add_text(0, 0, Z_BTN_COLOR, tft_string); - tft.queue.sync(); - tft_string.set(F("Offset")); - tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + 34, tft_string.width(), 20); - tft.set_background(COLOR_BACKGROUND); - #if HAS_BED_PROBE - if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) - tft.add_text(0, 0, Z_BTN_COLOR, tft_string); - #endif - } -#endif - -#if HAS_EXTRUDERS - static void drawCurESelection() { - tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set('E'); - tft.add_text(0, 0, E_BTN_COLOR, tft_string); - tft.add_text(tft_string.width(), 0, E_BTN_COLOR, ui8tostr3rj(motionAxisState.e_selection)); - } -#endif - -static void drawMessage(PGM_P const msg) { - tft.canvas(X_MARGIN, - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - TFT_HEIGHT - 2 * BTN_HEIGHT, TFT_WIDTH - X_MARGIN - #else - TFT_HEIGHT - Y_MARGIN - 29, (TFT_WIDTH / 2) - (BTN_WIDTH / 2) - X_MARGIN - #endif - , FONT_LINE_HEIGHT - ); - tft.set_background(COLOR_BACKGROUND); - tft.add_text(0, 0, COLOR_STATUS_MESSAGE, msg); -} - -static void drawMessage(FSTR_P const fmsg) { drawMessage(FTOP(fmsg)); } - -static void drawAxisValue(const AxisEnum axis) { - const float value = ( - TERN_(HAS_BED_PROBE, axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE ? probe.offset.z :) - ui.manual_move.axis_value(axis) - ); - xy_int_t pos; - uint16_t color; - switch (axis) { - #if HAS_X_AXIS - case X_AXIS: pos = motionAxisState.xValuePos; color = X_BTN_COLOR; break; - #endif - #if HAS_Y_AXIS - case Y_AXIS: pos = motionAxisState.yValuePos; color = Y_BTN_COLOR; break; - #endif - #if HAS_Z_AXIS - case Z_AXIS: pos = motionAxisState.zValuePos; color = Z_BTN_COLOR; break; - #endif - #if HAS_EXTRUDERS - case E_AXIS: pos = motionAxisState.eValuePos; color = E_BTN_COLOR; break; - #endif - default: return; - } - tft.canvas(pos.x, pos.y, BTN_WIDTH + X_MARGIN, FONT_LINE_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(ftostr52sp(value)); - tft.add_text(0, 0, color, tft_string); -} - -static void moveAxis(const AxisEnum axis, const int8_t direction) { - quick_feedback(); - - #if HAS_EXTRUDERS - if (axis == E_AXIS && thermalManager.tooColdToExtrude(motionAxisState.e_selection)) { - drawMessage(F("Too cold")); - return; - } - #endif - - const float diff = motionAxisState.currentStepSize * direction; - - #if HAS_BED_PROBE - - if (axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { - #if ENABLED(BABYSTEP_ZPROBE_OFFSET) - const int16_t babystep_increment = direction * BABYSTEP_SIZE_Z; - const bool do_probe = DISABLED(BABYSTEP_HOTEND_Z_OFFSET) || active_extruder == 0; - const float bsDiff = planner.mm_per_step[Z_AXIS] * babystep_increment, - new_probe_offset = probe.offset.z + bsDiff, - new_offs = TERN(BABYSTEP_HOTEND_Z_OFFSET - , do_probe ? new_probe_offset : hotend_offset[active_extruder].z - bsDiff - , new_probe_offset - ); - if (WITHIN(new_offs, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { - babystep.add_steps(Z_AXIS, babystep_increment); - if (do_probe) - probe.offset.z = new_offs; - else - TERN(BABYSTEP_HOTEND_Z_OFFSET, hotend_offset[active_extruder].z = new_offs, NOOP); - drawMessage(NUL_STR); // Clear the error - drawAxisValue(axis); - } - else - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - - #else - // Only change probe.offset.z - probe.offset.z += diff; - if (direction < 0 && current_position.z < Z_PROBE_OFFSET_RANGE_MIN) { - current_position.z = Z_PROBE_OFFSET_RANGE_MIN; - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - else if (direction > 0 && current_position.z > Z_PROBE_OFFSET_RANGE_MAX) { - current_position.z = Z_PROBE_OFFSET_RANGE_MAX; - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - else - drawMessage(NUL_STR); // Clear the error - - drawAxisValue(axis); - #endif - } - - #endif // HAS_BED_PROBE - - if (!ui.manual_move.processing) { - // Get motion limit from software endstops, if any - float min, max; - soft_endstop.get_manual_axis_limits(axis, min, max); - - // Delta limits XY based on the current offset from center - // This assumes the center is 0,0 - #if ENABLED(DELTA) - if (axis != Z_AXIS && TERN1(HAS_EXTRUDERS, axis != E_AXIS)) { - max = SQRT(sq(float(PRINTABLE_RADIUS)) - sq(current_position[Y_AXIS - axis])); // (Y_AXIS - axis) == the other axis - min = -max; - } - #endif - - // Get the new position - const bool limited = ui.manual_move.apply_diff(axis, diff, min, max); - #if IS_KINEMATIC - UNUSED(limited); - #else - PGM_P const msg = limited ? GET_TEXT(MSG_LCD_SOFT_ENDSTOPS) : NUL_STR; - drawMessage(msg); - #endif - - ui.manual_move.soon(axis OPTARG(MULTI_E_MANUAL, motionAxisState.e_selection)); - } - - drawAxisValue(axis); -} - -#if HAS_EXTRUDERS - static void e_plus() { moveAxis(E_AXIS, 1); } - static void e_minus() { moveAxis(E_AXIS, -1); } -#endif -#if HAS_X_AXIS - static void x_minus() { moveAxis(X_AXIS, -1); } - static void x_plus() { moveAxis(X_AXIS, 1); } -#endif -#if HAS_Y_AXIS - static void y_plus() { moveAxis(Y_AXIS, 1); } - static void y_minus() { moveAxis(Y_AXIS, -1); } -#endif -#if HAS_Z_AXIS - static void z_plus() { moveAxis(Z_AXIS, 1); } - static void z_minus() { moveAxis(Z_AXIS, -1); } -#endif - -#if ENABLED(TOUCH_SCREEN) - #if HAS_EXTRUDERS - static void e_select() { - if (++motionAxisState.e_selection >= EXTRUDERS) - motionAxisState.e_selection = 0; - quick_feedback(); - drawCurESelection(); - drawAxisValue(E_AXIS); - } - #endif - - static void do_home() { - quick_feedback(); - drawMessage(GET_TEXT_F(MSG_LEVEL_BED_HOMING)); - queue.inject_P(G28_STR); - // Disable touch until home is done - touch.disable(); - TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); - TERN_(HAS_X_AXIS, drawAxisValue(X_AXIS)); - TERN_(HAS_Y_AXIS, drawAxisValue(Y_AXIS)); - TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); - } - - static void step_size() { - motionAxisState.currentStepSize = motionAxisState.currentStepSize / 10.0; - if (motionAxisState.currentStepSize < 0.0015) motionAxisState.currentStepSize = 10.0; - quick_feedback(); - drawCurStepValue(); - } - - #if HAS_BED_PROBE - static void z_select() { - motionAxisState.z_selection *= -1; - quick_feedback(); - drawCurZSelection(); - drawAxisValue(Z_AXIS); - } - #endif - -#endif // TOUCH_SCREEN - -static void disable_steppers() { - quick_feedback(); - queue.inject(F("M84")); -} - -static void drawBtn(const int x, const int y, const char *label, intptr_t data, const MarlinImage img, uint16_t bgColor, const bool enabled=true) { - const uint16_t width = images[imgBtn39Rounded].width, - height = images[imgBtn39Rounded].height; - - if (!enabled) bgColor = COLOR_CONTROL_DISABLED; - - tft.canvas(x, y, width, height); - tft.set_background(COLOR_BACKGROUND); - tft.add_image(0, 0, imgBtn39Rounded, bgColor, COLOR_BACKGROUND, COLOR_DARKGREY); - - // TODO: Make an add_text() taking a font arg - if (label) { - tft_string.set(label); - tft_string.trim(); - tft.add_text(tft_string.center(width), height / 2 - tft_string.font_height() / 2, bgColor, tft_string); - } - else - tft.add_image(0, 0, img, bgColor, COLOR_BACKGROUND, COLOR_DARKGREY); - - TERN_(TOUCH_SCREEN, if (enabled) touch.add_control(BUTTON, x, y, width, height, data)); -} - -void MarlinUI::move_axis_screen() { - // Reset - defer_status_screen(true); - motionAxisState.blocked = false; - TERN_(TOUCH_SCREEN, touch.enable()); - - ui.clear_lcd(); - - TERN_(TOUCH_SCREEN, touch.clear()); - - const bool busy = printingIsActive(); - - // Babysteps during printing? Select babystep for Z probe offset - #if ENABLED(BABYSTEP_ZPROBE_OFFSET) - if (busy) motionAxisState.z_selection = Z_SELECTION_Z_PROBE; - #endif - - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - - // ROW 1 -> E+ Y+ Z+ - int x = X_MARGIN, y = Y_MARGIN, spacing = 0; - - TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy)); - - spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; - x += BTN_WIDTH + spacing; - uint16_t yplus_x = x; - - TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy)); - - x += BTN_WIDTH + spacing; - uint16_t zplus_x = x; - - #if HAS_Z_AXIS - drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have baby step - #endif - - // ROW 2 -> "Ex" CurY "Z" - x = X_MARGIN; - y += BTN_HEIGHT + 2; - - #if HAS_EXTRUDERS - motionAxisState.eNamePos.set(x, y); - drawCurESelection(); - TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); - #endif - - #if HAS_Y_AXIS - motionAxisState.yValuePos.set(yplus_x, y); - drawAxisValue(Y_AXIS); - #endif - - #if HAS_Z_AXIS - motionAxisState.zTypePos.set(zplus_x, y); - drawCurZSelection(); - #endif - - // ROW 3 -> X- HOME X+ - y += (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3 - 2; - x = X_MARGIN; - - #if HAS_X_AXIS - drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy); - TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); - drawBtn(zplus_x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy); - #endif - - #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) - if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); - #endif - - // ROW 4 -> Cur X - y += BTN_HEIGHT + 2; - - #if HAS_X_AXIS - motionAxisState.xValuePos.set(x, y); - drawAxisValue(X_AXIS); - #endif - - // ROW 5 -> E- CurX Y- Z- - y += (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3 - 2; - x = X_MARGIN; - - #if HAS_EXTRUDERS - drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); - motionAxisState.eValuePos.set(x, y + BTN_HEIGHT + 2); - TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); - #endif - - x += BTN_WIDTH + spacing; - - TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); - - x += BTN_WIDTH + spacing; - - #if HAS_Z_AXIS - drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step - motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); - drawAxisValue(Z_AXIS); - #endif - - // ROW 6 -> step_size disable steppers back - y = TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT; - x = zplus_x - CUR_STEP_VALUE_WIDTH - 10; - motionAxisState.stepValuePos.set(X_MARGIN + BTN_WIDTH - CUR_STEP_VALUE_WIDTH, y); - - if (!busy) { - drawCurStepValue(); - TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); - } - - // Aligned with x+ - drawBtn(yplus_x, y, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); - - #else // !TFT_COLOR_UI_PORTRAIT - - // ROW 1 -> E+ Y+ CurY Z+ - int x = X_MARGIN, y = Y_MARGIN, spacing = 0; - - TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy)); - - spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; - x += BTN_WIDTH + spacing; - uint16_t yplus_x = x; - - TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy)); - - x += BTN_WIDTH; - - #if HAS_Y_AXIS - motionAxisState.yValuePos.set(x + 2, y); - drawAxisValue(Y_AXIS); - #endif - - x += spacing; - - #if HAS_Z_AXIS - drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step - #endif - - // ROW 2 -> "Ex" X- HOME X+ "Z" - y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; - x = X_MARGIN; - spacing = (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; - - #if HAS_EXTRUDERS - motionAxisState.eNamePos.set(x, y); - drawCurESelection(); - TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); - #endif - - x += BTN_WIDTH + spacing; - - TERN_(HAS_X_AXIS, drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy)); - - x += BTN_WIDTH + spacing; //imgHome is 64x64 - - #if ALL(HAS_X_AXIS, TOUCH_SCREEN) - add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy); - #endif - - x += BTN_WIDTH + spacing; - const uint16_t xplus_x = x; - - TERN_(HAS_X_AXIS, drawBtn(x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy)); - - x += BTN_WIDTH + spacing; - - #if HAS_Z_AXIS - motionAxisState.zTypePos.set(x, y); - drawCurZSelection(); - #endif - - #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) - if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, (intptr_t)z_select); - #endif - - // ROW 3 -> E- CurX Y- Z- - y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; - x = X_MARGIN; - spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; - - #if HAS_EXTRUDERS - drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); - motionAxisState.eValuePos.set(x, y + BTN_HEIGHT + 2); - TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); - #endif - - // Cur X - #if HAS_X_AXIS - motionAxisState.xValuePos.set(BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4, y - 10); - drawAxisValue(X_AXIS); - #endif - - x += BTN_WIDTH + spacing; - - // Cur Y - TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); - - x += BTN_WIDTH + spacing; - - // Cur Z - #if HAS_Z_AXIS - drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step - motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); - drawAxisValue(Z_AXIS); - #endif - - // ROW 4 -> step_size disable steppers back - y = TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT; - x = xplus_x - CUR_STEP_VALUE_WIDTH - 10; - motionAxisState.stepValuePos.set(yplus_x + BTN_WIDTH - CUR_STEP_VALUE_WIDTH, y); - if (!busy) { - drawCurStepValue(); - TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); - } - - // Aligned with x+ - drawBtn(xplus_x, y, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); - - #endif // !TFT_COLOR_UI_PORTRAIT - - TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); -} - -#endif // HAS_UI_320x240 diff --git a/Marlin/src/lcd/tft/ui_320x240.h b/Marlin/src/lcd/tft/ui_320x240.h index 1d3aa86f8124..5725a8ed2d91 100644 --- a/Marlin/src/lcd/tft/ui_320x240.h +++ b/Marlin/src/lcd/tft/ui_320x240.h @@ -19,32 +19,285 @@ * along with this program. If not, see . * */ -#pragma once -#define MARLIN_LOGO_FULL_SIZE MarlinLogo320x240x16 +#include "../../inc/MarlinConfigPre.h" -#include "ui_common.h" +// -------------------------------- Core Parameters -------------------------------- -#define TFT_STATUS_TOP_Y 0 -#define TFT_TOP_LINE_Y 2 +#define MENU_TEXT_X 10 +#define MENU_TEXT_Y tft_string.vcenter(MENU_ITEM_HEIGHT) -#define MENU_TEXT_X_OFFSET 10 -#define MENU_TEXT_Y_OFFSET tft_string.vcenter(MENU_ITEM_HEIGHT) +#define MENU_ITEM_ICON_X 0 +#define MENU_ITEM_ICON_Y 0 +#define MENU_ITEM_ICON_SPACE 32 -#define MENU_ITEM_ICON_X 0 -#define MENU_ITEM_ICON_Y 0 -#define MENU_ITEM_ICON_SPACE 32 +#define MENU_ITEM_HEIGHT 32 +#define MENU_LINE_HEIGHT (MENU_ITEM_HEIGHT + 2) +#define MENU_TOP_LINE_Y 2 -#define MENU_ITEM_HEIGHT 32 -#define MENU_LINE_HEIGHT (MENU_ITEM_HEIGHT + 2) -#define FONT_LINE_HEIGHT 24 - -#if (TFT_FONT == NOTOSANS) || (TFT_FONT == HELVETICA) - #define FONT_SIZE 14 +#if TFT_FONT == NOTOSANS || TFT_FONT == HELVETICA + #define FONT_SIZE 14 #elif TFT_FONT == UNIFONT - #define FONT_SIZE 10 + #define FONT_SIZE 10 +#endif + +#define FONT_LINE_HEIGHT 24 + +// --------------------------------------------------------------------------------- + +#define VCENTER tft_string.vcenter(FONT_LINE_HEIGHT) + +// MarlinUI::show_bootscreen() +#ifndef BOOTSCREEN_LOGO + #if ENABLED(BOOT_MARLIN_LOGO_SMALL) + #define BOOTSCREEN_LOGO MarlinLogo195x59x16 + #define BOOTSCREEN_LOGO_W 195 + #define BOOTSCREEN_LOGO_H 59 + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 48) + #else + #define BOOTSCREEN_LOGO MarlinLogo320x240x16 + #define BOOTSCREEN_LOGO_W TFT_WIDTH + #define BOOTSCREEN_LOGO_H TFT_HEIGHT + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 54) + #endif +#endif + +#if !defined(BOOTSCREEN_LOGO_X) && !defined(BOOTSCREEN_LOGO_Y) + #define BOOTSCREEN_LOGO_X (TFT_WIDTH - BOOTSCREEN_LOGO_W) / 2 + #define BOOTSCREEN_LOGO_Y (TFT_HEIGHT - BOOTSCREEN_LOGO_H) / 2 +#endif + +#if !defined(NAVIGATION_PAGE_UP_X) && !defined(NAVIGATION_PAGE_UP_Y) && !defined(NAVIGATION_PAGE_DOWN_X) && !defined(NAVIGATION_PAGE_DOWN_Y) && !defined(NAVIGATION_BACK_X) && !defined(NAVIGATION_BACK_Y) + #define NAVIGATION_PAGE_UP_X 48 + #define NAVIGATION_PAGE_UP_Y TFT_HEIGHT - 34 + #define NAVIGATION_PAGE_DOWN_X 240 + #define NAVIGATION_PAGE_DOWN_Y TFT_HEIGHT - 34 + #define NAVIGATION_BACK_X 144 + #define NAVIGATION_BACK_Y TFT_HEIGHT - 34 +#endif + +#if !defined(BUTTON_DECREASE_X) && !defined(BUTTON_DECREASE_Y) && !defined(BUTTON_INCREASE_X) && !defined(BUTTON_INCREASE_Y) && !defined(BUTTON_CLICK_X) && !defined(BUTTON_CLICK_Y) + #define BUTTON_DECREASE_X 32 + #define BUTTON_DECREASE_Y TFT_HEIGHT - 64 + #define BUTTON_INCREASE_X 224 + #define BUTTON_INCREASE_Y TFT_HEIGHT - 64 + #define BUTTON_CLICK_X 128 + #define BUTTON_CLICK_Y TFT_HEIGHT - 64 +#endif + +#if !defined(BUTTON_CANCEL_X) && !defined(BUTTON_CANCEL_Y) && !defined(BUTTON_CONFIRM_X) && !defined(BUTTON_CONFIRM_Y) + #define BUTTON_CANCEL_X 48 + #define BUTTON_CANCEL_Y TFT_HEIGHT - 64 + #define BUTTON_CONFIRM_X 208 + #define BUTTON_CONFIRM_Y TFT_HEIGHT - 64 +#endif + +// MarlinUI::draw_kill_screen() +#if !defined(KILL_SCREEN_STATUS_Y) && !defined(KILL_SCREEN_HALTED_Y) && !defined(KILL_SCREEN_RESET_Y) + #define KILL_SCREEN_STATUS_Y 60 + #define KILL_SCREEN_HALTED_Y 120 + #define KILL_SCREEN_RESET_Y 160 +#endif + +// draw_heater_status() and draw_fan_status() +#if !defined(TEMP_FAN_CONTROL_W) && !defined(TEMP_FAN_CONTROL_H) + #define TEMP_FAN_CONTROL_W 64 + #define TEMP_FAN_CONTROL_H 100 +#endif +#if !defined(TEMP_ICON_X) && !defined(TEMP_ICON_Y) + #define TEMP_ICON_X 0 + #define TEMP_ICON_Y 18 +#endif +#if !defined(FAN_ICON_X) && !defined(FAN_ICON_Y) + #define FAN_ICON_X 0 + #define FAN_ICON_Y 10 +#endif + +#if !defined(TEMP_CURRENT_TEXT_X) && !defined(TEMP_CURRENT_TEXT_Y) && !defined(TEMP_TARGET_TEXT_X) && !defined(TEMP_TARGET_TEXT_Y) + #define TEMP_CURRENT_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 2 + #define TEMP_CURRENT_TEXT_Y 69 + VCENTER + #define TEMP_TARGET_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 2 + #define TEMP_TARGET_TEXT_Y 5 + VCENTER +#endif + +#if !defined(FAN_TEXT_X) && !defined(FAN_TEXT_Y) + #define FAN_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 6 + #define FAN_TEXT_Y 69 + VCENTER +#endif + +// MarlinUI::draw_status_screen() +#if !defined(MAX_ITEMS) && !defined(ITEM_X) && !defined(ITEM_Y) + #define MAX_ITEMS 5 + #define ITEM_X(N) (TFT_WIDTH / _MIN(ITEMS_COUNT, MAX_ITEMS) - TEMP_FAN_CONTROL_W) / 2 + (TFT_WIDTH * N / _MIN(ITEMS_COUNT, MAX_ITEMS)) + #define ITEM_Y 2 +#endif + +#if !defined(COORDINATES_W) && !defined(COORDINATES_H) && !defined(COORDINATES_X) && !defined(COORDINATES_Y) + #define COORDINATES_W TFT_WIDTH - 8 + #define COORDINATES_H FONT_LINE_HEIGHT + #define COORDINATES_X 4 + #define COORDINATES_Y 103 +#endif + +#if ENABLED(LCD_SHOW_E_TOTAL) + #if !defined(E_MARK_X) && !defined(E_MARK_Y) && !defined(E_VALUE_X) && !defined(E_VALUE_Y) + #define E_MARK_X 10 + #define E_MARK_Y VCENTER + #define E_VALUE_X 127 - tft_string.width() + #define E_VALUE_Y VCENTER + #endif +#else + #if !defined(X_MARK_X) && !defined(X_MARK_Y) && !defined(X_VALUE_X) && !defined(X_VALUE_Y) + #define X_MARK_X 10 + #define X_MARK_Y VCENTER + #define X_VALUE_X 68 - tft_string.width() + #define X_VALUE_Y VCENTER + #endif + + #if !defined(Y_MARK_X) && !defined(Y_MARK_Y) && !defined(Y_VALUE_X) && !defined(Y_VALUE_Y) + #define Y_MARK_X 114 + #define Y_MARK_Y VCENTER + #define Y_VALUE_X 172 - tft_string.width() + #define Y_VALUE_Y VCENTER + #endif +#endif + +#if !defined(Z_MARK_X) && !defined(Z_MARK_Y) && !defined(Z_VALUE_X) && !defined(Z_VALUE_Y) + #define Z_MARK_X 219 + #define Z_MARK_Y VCENTER + #define Z_VALUE_X 301 - tft_string.width() + #define Z_VALUE_Y VCENTER + #define Z_VALUE_OFFSET 25 +#endif + +#if !defined(FEEDRATE_W) && !defined(FEEDRATE_H) && !defined(FEEDRATE_X) && !defined(FEEDRATE_Y) + #define FEEDRATE_W 86 + #define FEEDRATE_H 32 + #define FEEDRATE_X 70 + #define FEEDRATE_Y 134 +#endif +#if !defined(FEEDRATE_ICON_X) && !defined(FEEDRATE_ICON_Y) && !defined(FEEDRATE_ICON_Y) && !defined(FEEDRATE_TEXT_Y) + #define FEEDRATE_ICON_X 0 + #define FEEDRATE_ICON_Y 0 + #define FEEDRATE_TEXT_X 36 + #define FEEDRATE_TEXT_Y tft_string.vcenter(30) +#endif + +#if !defined(FLOWRATE_W) && !defined(FLOWRATE_H) && !defined(FLOWRATE_X) && !defined(FLOWRATE_Y) + #define FLOWRATE_W 86 + #define FLOWRATE_H 32 + #define FLOWRATE_X 170 + #define FLOWRATE_Y 134 +#endif +#if !defined(FLOWRATE_ICON_X) && !defined(FLOWRATE_ICON_Y) && !defined(FLOWRATE_TEXT_X) && !defined(FLOWRATE_TEXT_Y) + #define FLOWRATE_ICON_X 0 + #define FLOWRATE_ICON_Y 0 + #define FLOWRATE_TEXT_X 36 + #define FLOWRATE_TEXT_Y tft_string.vcenter(30) +#endif + +#if !defined(MENU_ICON_X) && !defined(MENU_ICON_Y) + #define MENU_ICON_X 256 + #define MENU_ICON_Y 130 +#endif +#if !defined(SDCARD_ICON_X) && !defined(SDCARD_ICON_Y) + #define SDCARD_ICON_X 0 + #define SDCARD_ICON_Y 130 +#endif + +#if !defined(ELAPSED_TIME_W) && !defined(ELAPSED_TIME_H) && !defined(ELAPSED_TIME_X) && !defined(ELAPSED_TIME_Y) + #if ALL(SHOW_ELAPSED_TIME, SHOW_REMAINING_TIME) + #define ELAPSED_TIME_W 96 + #define ELAPSED_TIME_X (TFT_WIDTH / 2) - ELAPSED_TIME_W + #elif ENABLED(SHOW_ELAPSED_TIME) + #define ELAPSED_TIME_W 192 + #define ELAPSED_TIME_X (TFT_WIDTH - ELAPSED_TIME_W) / 2 + #endif + + #define ELAPSED_TIME_H 32 + #define ELAPSED_TIME_Y 168 +#endif + +#if !defined(REMAINING_TIME_W) && !defined(REMAINING_TIME_H) && !defined(REMAINING_TIME_X) && !defined(REMAINING_TIME_Y) + #if ALL(SHOW_ELAPSED_TIME, SHOW_REMAINING_TIME) + #define REMAINING_TIME_W 96 + #define REMAINING_TIME_X (TFT_WIDTH / 2) + #elif ENABLED(SHOW_REMAINING_TIME) + #define REMAINING_TIME_W 192 + #define REMAINING_TIME_X (TFT_WIDTH - REMAINING_TIME_W) / 2 + #endif + + #define REMAINING_TIME_H 32 + #define REMAINING_TIME_Y 168 #endif -#define FONT_LINE_HEIGHT 24 +#if !defined(ELAPSED_TIME_IMAGE_X) && !defined(ELAPSED_TIME_IMAGE_Y) && !defined(ELAPSED_TIME_TEXT_X) && !defined(ELAPSED_TIME_TEXT_Y) + #define ELAPSED_TIME_IMAGE_X tft_string.center(ELAPSED_TIME_W) - 18 + #define ELAPSED_TIME_IMAGE_Y 0 + #define ELAPSED_TIME_TEXT_X tft_string.center(ELAPSED_TIME_W) + 18 + #define ELAPSED_TIME_TEXT_Y tft_string.vcenter(29) +#endif + +#if !defined(REMAINING_TIME_IMAGE_X) && !defined(REMAINING_TIME_IMAGE_Y) && !defined(REMAINING_TIME_TEXT_X) && !defined(REMAINING_TIME_TEXT_Y) + #define REMAINING_TIME_IMAGE_X tft_string.center(ELAPSED_TIME_W) - 18 + #define REMAINING_TIME_IMAGE_Y 0 + #define REMAINING_TIME_TEXT_X tft_string.center(ELAPSED_TIME_W) + 18 + #define REMAINING_TIME_TEXT_Y tft_string.vcenter(29) +#endif + +#if !defined(PROGRESS_BAR_W) && !defined(PROGRESS_BAR_H) && !defined(PROGRESS_BAR_X) && !defined(PROGRESS_BAR_Y) + #define PROGRESS_BAR_W TFT_WIDTH - 8 + #define PROGRESS_BAR_H 9 + #define PROGRESS_BAR_X 4 + #define PROGRESS_BAR_Y 202 +#endif + +#if !defined(STATUS_MESSAGE_W) && !defined(STATUS_MESSAGE_H) && !defined(STATUS_MESSAGE_X) && !defined(STATUS_MESSAGE_Y) + #define STATUS_MESSAGE_W TFT_WIDTH + #define STATUS_MESSAGE_H FONT_LINE_HEIGHT + #define STATUS_MESSAGE_X 0 + #define STATUS_MESSAGE_Y 212 +#endif + +#if !defined(STATUS_MESSAGE_TEXT_X) && !defined(STATUS_MESSAGE_TEXT_Y) + #define STATUS_MESSAGE_TEXT_X tft_string.center(STATUS_MESSAGE_W) + #define STATUS_MESSAGE_TEXT_Y VCENTER +#endif + +// MenuEditItemBase::draw_edit_screen() +#if !defined(SLIDER_W) && !defined(SLIDER_Y) + #define SLIDER_W 224 + #define SLIDER_Y 140 +#endif + +#if ENABLED(AUTO_BED_LEVELING_UBL) + #if !defined(UBL_X_LABEL_X) && !defined(UBL_X_TEXT_X) && !defined(UBL_Y_LABEL_X) && !defined(UBL_Y_TEXT_X) + #define UBL_X_LABEL_X (TFT_WIDTH / 2 - 120) + #define UBL_X_TEXT_X (TFT_WIDTH / 2 - 16) - tft_string.width() + #define UBL_Y_LABEL_X (TFT_WIDTH / 2 + 16) + #define UBL_Y_TEXT_X (TFT_WIDTH / 2 + 120) - tft_string.width() + #endif -#include "tft_font.h" + // MarlinUI::ubl_plot() + #if !defined(UBL_GRID_W) && !defined(UBL_GRID_H) && !defined(UBL_GRID_X) && !defined(UBL_GRID_Y) && !defined(UBL_CONTROL_OFFSET) + #define UBL_GRID_W 144 + #define UBL_GRID_H 144 + #define UBL_GRID_X 8 + #define UBL_GRID_Y 8 + #define UBL_CONTROL_OFFSET 8 + #endif + + #if !defined(UBL_COORDINATES_W) && !defined(UBL_COORDINATES_X) && !defined(UBL_X_COORDINATE_Y) && !defined(UBL_Y_COORDINATE_Y) && !defined(UBL_Z_COORDINATE_Y) + #define UBL_COORDINATES_W 96 + #define UBL_COORDINATES_X 216 + + #define UBL_X_COORDINATE_Y UBL_GRID_Y + (UBL_GRID_H - MENU_ITEM_HEIGHT) / 2 - MENU_ITEM_HEIGHT + #define UBL_Y_COORDINATE_Y UBL_GRID_Y + (UBL_GRID_H - MENU_ITEM_HEIGHT) / 2 + #define UBL_Z_COORDINATE_Y UBL_GRID_Y + (UBL_GRID_H - MENU_ITEM_HEIGHT) / 2 + MENU_ITEM_HEIGHT + #endif + + #if !defined(UBL_ACTION_X) && !defined(UBL_ACTION_Y) + #define UBL_ACTION_X 224 + #define UBL_ACTION_Y UBL_GRID_Y + UBL_GRID_H + UBL_CONTROL_OFFSET + #endif +#endif diff --git a/Marlin/src/lcd/tft/ui_320x480.h b/Marlin/src/lcd/tft/ui_320x480.h new file mode 100644 index 000000000000..87f6b4ebe48f --- /dev/null +++ b/Marlin/src/lcd/tft/ui_320x480.h @@ -0,0 +1,294 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../inc/MarlinConfigPre.h" + +// -------------------------------- Core Parameters -------------------------------- + +#define MENU_TEXT_X 16 +#define MENU_TEXT_Y tft_string.vcenter(MENU_ITEM_HEIGHT) + +#define MENU_ITEM_ICON_X 5 +#define MENU_ITEM_ICON_Y 5 +#define MENU_ITEM_ICON_SPACE 42 + +#define MENU_ITEM_HEIGHT 43 +#define MENU_LINE_HEIGHT (MENU_ITEM_HEIGHT + 2) +#define MENU_TOP_LINE_Y 4 + +#if TFT_FONT == NOTOSANS || TFT_FONT == HELVETICA + #define FONT_SIZE 19 +#elif TFT_FONT == UNIFONT + #define FONT_SIZE 20 +#endif + +#define FONT_LINE_HEIGHT 34 + +// --------------------------------------------------------------------------------- + +#define VCENTER tft_string.vcenter(FONT_LINE_HEIGHT) + +// MarlinUI::show_bootscreen() +#ifndef BOOTSCREEN_LOGO + #if ENABLED(BOOT_MARLIN_LOGO_SMALL) + #define BOOTSCREEN_LOGO MarlinLogo195x59x16 + #define BOOTSCREEN_LOGO_W 195 + #define BOOTSCREEN_LOGO_H 59 + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 70) + #else + #define BOOTSCREEN_LOGO MarlinLogo480x320x16 + #define BOOTSCREEN_LOGO_W TFT_WIDTH + #define BOOTSCREEN_LOGO_H TFT_HEIGHT + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 90) + #endif +#endif + +#if !defined(BOOTSCREEN_LOGO_X) && !defined(BOOTSCREEN_LOGO_Y) + #define BOOTSCREEN_LOGO_X (TFT_WIDTH - BOOTSCREEN_LOGO_W) / 2 + #define BOOTSCREEN_LOGO_Y (TFT_HEIGHT - BOOTSCREEN_LOGO_H) / 2 +#endif + +#if !defined(NAVIGATION_PAGE_UP_X) && !defined(NAVIGATION_PAGE_UP_Y) && !defined(NAVIGATION_PAGE_DOWN_X) && !defined(NAVIGATION_PAGE_DOWN_Y) && !defined(NAVIGATION_BACK_X) && !defined(NAVIGATION_BACK_Y) + #define NAVIGATION_PAGE_UP_X 48 + #define NAVIGATION_PAGE_UP_Y TFT_HEIGHT - 38 + #define NAVIGATION_PAGE_DOWN_X 240 + #define NAVIGATION_PAGE_DOWN_Y TFT_HEIGHT - 38 + #define NAVIGATION_BACK_X 144 + #define NAVIGATION_BACK_Y TFT_HEIGHT - 38 +#endif + +#if !defined(BUTTON_DECREASE_X) && !defined(BUTTON_DECREASE_Y) && !defined(BUTTON_INCREASE_X) && !defined(BUTTON_INCREASE_Y) && !defined(BUTTON_CLICK_X) && !defined(BUTTON_CLICK_Y) + #define BUTTON_DECREASE_X 32 + #define BUTTON_DECREASE_Y TFT_HEIGHT - 64 + #define BUTTON_INCREASE_X 224 + #define BUTTON_INCREASE_Y TFT_HEIGHT - 64 + #define BUTTON_CLICK_X 128 + #define BUTTON_CLICK_Y TFT_HEIGHT - 64 +#endif + +#if !defined(BUTTON_CANCEL_X) && !defined(BUTTON_CANCEL_Y) && !defined(BUTTON_CONFIRM_X) && !defined(BUTTON_CONFIRM_Y) + #define BUTTON_CANCEL_X 48 + #define BUTTON_CANCEL_Y TFT_HEIGHT - 64 + #define BUTTON_CONFIRM_X 208 + #define BUTTON_CONFIRM_Y TFT_HEIGHT - 64 +#endif + +// MarlinUI::draw_kill_screen() +#if !defined(KILL_SCREEN_STATUS_Y) && !defined(KILL_SCREEN_HALTED_Y) && !defined(KILL_SCREEN_RESET_Y) + #define KILL_SCREEN_STATUS_Y 139 + #define KILL_SCREEN_HALTED_Y 229 + #define KILL_SCREEN_RESET_Y 274 +#endif + +// draw_heater_status() and draw_fan_status() +#if !defined(TEMP_FAN_CONTROL_W) && !defined(TEMP_FAN_CONTROL_H) + #define TEMP_FAN_CONTROL_W 80 + #define TEMP_FAN_CONTROL_H 120 +#endif +#if !defined(TEMP_ICON_X) && !defined(TEMP_ICON_Y) + #define TEMP_ICON_X 0 + #define TEMP_ICON_Y 28 +#endif +#if !defined(FAN_ICON_X) && !defined(FAN_ICON_Y) + #define FAN_ICON_X 0 + #define FAN_ICON_Y 20 +#endif + +#if !defined(TEMP_CURRENT_TEXT_X) && !defined(TEMP_CURRENT_TEXT_Y) && !defined(TEMP_TARGET_TEXT_X) && !defined(TEMP_TARGET_TEXT_Y) + #define TEMP_CURRENT_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 2 + #define TEMP_CURRENT_TEXT_Y 80 + VCENTER + #define TEMP_TARGET_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 2 + #define TEMP_TARGET_TEXT_Y 6 + VCENTER +#endif + +#if !defined(FAN_TEXT_X) && !defined(FAN_TEXT_Y) + #define FAN_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 6 + #define FAN_TEXT_Y 80 + VCENTER +#endif + +// MarlinUI::draw_status_screen() +#if !defined(MAX_ITEMS) && !defined(ITEM_X) && !defined(ITEM_Y) + #define MAX_ITEMS 4 + #define ITEM_X(N) (TFT_WIDTH / _MIN(ITEMS_COUNT, MAX_ITEMS) - TEMP_FAN_CONTROL_W) / 2 + (TFT_WIDTH * N / _MIN(ITEMS_COUNT, MAX_ITEMS)) + #define ITEM_Y 4 +#endif + +#if !defined(COORDINATES_W) && !defined(COORDINATES_H) && !defined(COORDINATES_X) && !defined(COORDINATES_Y) + #define COORDINATES_W TFT_WIDTH - 8 + #define COORDINATES_H FONT_LINE_HEIGHT * 2 + #define COORDINATES_X 4 + #define COORDINATES_Y 132 +#endif + +#if !defined(E_MARK_X) && !defined(E_MARK_Y) && !defined(E_VALUE_X) && !defined(E_VALUE_Y) + #define E_MARK_X 10 + #define E_MARK_Y VCENTER + FONT_LINE_HEIGHT + #define E_VALUE_X 103 - tft_string.width() + #define E_VALUE_Y VCENTER + FONT_LINE_HEIGHT +#endif + +#if !defined(X_MARK_X) && !defined(X_MARK_Y) && !defined(X_VALUE_X) && !defined(X_VALUE_Y) + #define X_MARK_X 10 + #define X_MARK_Y VCENTER + #define X_VALUE_X 103 - tft_string.width() + #define X_VALUE_Y VCENTER +#endif + +#if !defined(Y_MARK_X) && !defined(Y_MARK_Y) && !defined(Y_VALUE_X) && !defined(Y_VALUE_Y) + #define Y_MARK_X 176 + #define Y_MARK_Y VCENTER + #define Y_VALUE_X 265 - tft_string.width() + #define Y_VALUE_Y VCENTER +#endif + +#if !defined(Z_MARK_X) && !defined(Z_MARK_Y) && !defined(Z_VALUE_X) && !defined(Z_VALUE_Y) + #define Z_MARK_X 176 + #define Z_MARK_Y VCENTER + FONT_LINE_HEIGHT + #define Z_VALUE_X 297 - tft_string.width() + #define Z_VALUE_Y VCENTER + FONT_LINE_HEIGHT + #define Z_VALUE_OFFSET 32 +#endif + +#if !defined(FEEDRATE_W) && !defined(FEEDRATE_H) && !defined(FEEDRATE_X) && !defined(FEEDRATE_Y) + #define FEEDRATE_W 120 + #define FEEDRATE_H 32 + #define FEEDRATE_X 24 + #define FEEDRATE_Y 218 +#endif +#if !defined(FEEDRATE_ICON_X) && !defined(FEEDRATE_ICON_Y) && !defined(FEEDRATE_ICON_Y) && !defined(FEEDRATE_TEXT_Y) + #define FEEDRATE_ICON_X 0 + #define FEEDRATE_ICON_Y 0 + #define FEEDRATE_TEXT_X 36 + #define FEEDRATE_TEXT_Y tft_string.vcenter(30) +#endif + +#if !defined(FLOWRATE_W) && !defined(FLOWRATE_H) && !defined(FLOWRATE_X) && !defined(FLOWRATE_Y) + #define FLOWRATE_W 120 + #define FLOWRATE_H 32 + #define FLOWRATE_X 176 + #define FLOWRATE_Y 218 +#endif +#if !defined(FLOWRATE_ICON_X) && !defined(FLOWRATE_ICON_Y) && !defined(FLOWRATE_TEXT_X) && !defined(FLOWRATE_TEXT_Y) + #define FLOWRATE_ICON_X 0 + #define FLOWRATE_ICON_Y 0 + #define FLOWRATE_TEXT_X 36 + #define FLOWRATE_TEXT_Y tft_string.vcenter(30) +#endif + +#if !defined(MENU_ICON_X) && !defined(MENU_ICON_Y) + #define MENU_ICON_X 250 + #define MENU_ICON_Y 354 +#endif +#if !defined(SDCARD_ICON_X) && !defined(SDCARD_ICON_Y) + #define SDCARD_ICON_X 6 + #define SDCARD_ICON_Y 354 +#endif + +#if !defined(ELAPSED_TIME_W) && !defined(ELAPSED_TIME_H) && !defined(ELAPSED_TIME_X) && !defined(ELAPSED_TIME_Y) + #define ELAPSED_TIME_W 168 + #define ELAPSED_TIME_H 29 + #define ELAPSED_TIME_X (TFT_WIDTH - ELAPSED_TIME_W) / 2 + #define ELAPSED_TIME_Y 388 +#endif + +#if !defined(REMAINING_TIME_W) && !defined(REMAINING_TIME_H) && !defined(REMAINING_TIME_X) && !defined(REMAINING_TIME_Y) + #if ALL(SHOW_ELAPSED_TIME, SHOW_REMAINING_TIME) + #define REMAINING_TIME_Y 354 + #elif ENABLED(SHOW_REMAINING_TIME) + #define REMAINING_TIME_Y 388 + #endif + + #define REMAINING_TIME_H 29 + #define REMAINING_TIME_W 168 + #define REMAINING_TIME_X (TFT_WIDTH - REMAINING_TIME_W) / 2 +#endif + +#if !defined(ELAPSED_TIME_IMAGE_X) && !defined(ELAPSED_TIME_IMAGE_Y) && !defined(ELAPSED_TIME_TEXT_X) && !defined(ELAPSED_TIME_TEXT_Y) + #define ELAPSED_TIME_IMAGE_X tft_string.center(ELAPSED_TIME_W) - 18 + #define ELAPSED_TIME_IMAGE_Y 0 + #define ELAPSED_TIME_TEXT_X tft_string.center(ELAPSED_TIME_W) + 18 + #define ELAPSED_TIME_TEXT_Y tft_string.vcenter(29) +#endif + +#if !defined(REMAINING_TIME_IMAGE_X) && !defined(REMAINING_TIME_IMAGE_Y) && !defined(REMAINING_TIME_TEXT_X) && !defined(REMAINING_TIME_TEXT_Y) + #define REMAINING_TIME_IMAGE_X tft_string.center(ELAPSED_TIME_W) - 18 + #define REMAINING_TIME_IMAGE_Y 0 + #define REMAINING_TIME_TEXT_X tft_string.center(ELAPSED_TIME_W) + 18 + #define REMAINING_TIME_TEXT_Y tft_string.vcenter(29) +#endif + +#if !defined(PROGRESS_BAR_W) && !defined(PROGRESS_BAR_H) && !defined(PROGRESS_BAR_X) && !defined(PROGRESS_BAR_Y) + #define PROGRESS_BAR_W TFT_WIDTH - 8 + #define PROGRESS_BAR_H 12 + #define PROGRESS_BAR_X 4 + #define PROGRESS_BAR_Y 422 +#endif + +#if !defined(STATUS_MESSAGE_W) && !defined(STATUS_MESSAGE_H) && !defined(STATUS_MESSAGE_X) && !defined(STATUS_MESSAGE_Y) + #define STATUS_MESSAGE_W TFT_WIDTH + #define STATUS_MESSAGE_H FONT_LINE_HEIGHT + #define STATUS_MESSAGE_X 0 + #define STATUS_MESSAGE_Y 440 +#endif + +#if !defined(STATUS_MESSAGE_TEXT_X) && !defined(STATUS_MESSAGE_TEXT_Y) + #define STATUS_MESSAGE_TEXT_X tft_string.center(STATUS_MESSAGE_W) + #define STATUS_MESSAGE_TEXT_Y VCENTER +#endif + +// MenuEditItemBase::draw_edit_screen() +#if !defined(SLIDER_W) && !defined(SLIDER_Y) + #define SLIDER_W 288 + #define SLIDER_Y 280 +#endif + +#if ENABLED(AUTO_BED_LEVELING_UBL) + #if !defined(UBL_X_LABEL_X) && !defined(UBL_X_TEXT_X) && !defined(UBL_Y_LABEL_X) && !defined(UBL_Y_TEXT_X) + #define UBL_X_LABEL_X (TFT_WIDTH / 2 - 120) + #define UBL_X_TEXT_X (TFT_WIDTH / 2 - 16) - tft_string.width() + #define UBL_Y_LABEL_X (TFT_WIDTH / 2 + 16) + #define UBL_Y_TEXT_X (TFT_WIDTH / 2 + 120) - tft_string.width() + #endif + + // MarlinUI::ubl_plot() + #if !defined(UBL_GRID_W) && !defined(UBL_GRID_H) && !defined(UBL_GRID_X) && !defined(UBL_GRID_Y) && !defined(UBL_CONTROL_OFFSET) + #define UBL_GRID_W 192 + #define UBL_GRID_H 192 + #define UBL_GRID_X 8 + #define UBL_GRID_Y 8 + #define UBL_CONTROL_OFFSET 16 + #endif + + #if !defined(UBL_COORDINATES_W) && !defined(UBL_COORDINATES_X) && !defined(UBL_X_COORDINATE_Y) && !defined(UBL_Y_COORDINATE_Y) && !defined(UBL_Z_COORDINATE_Y) + #define UBL_COORDINATES_W 168 + #define UBL_COORDINATES_X 20 + + #define UBL_X_COORDINATE_Y 283 + #define UBL_Y_COORDINATE_Y 326 + #define UBL_Z_COORDINATE_Y 369 + #endif + + #if !defined(UBL_ACTION_X) && !defined(UBL_ACTION_Y) + #define UBL_ACTION_X 240 + #define UBL_ACTION_Y 332 + #endif +#endif diff --git a/Marlin/src/lcd/tft/ui_480x272.h b/Marlin/src/lcd/tft/ui_480x272.h new file mode 100644 index 000000000000..83f9e5c21aa4 --- /dev/null +++ b/Marlin/src/lcd/tft/ui_480x272.h @@ -0,0 +1,306 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../inc/MarlinConfigPre.h" + +// -------------------------------- Core Parameters -------------------------------- + +#define MENU_TEXT_X 16 +#define MENU_TEXT_Y tft_string.vcenter(MENU_ITEM_HEIGHT) + +#define MENU_ITEM_ICON_X 5 +#define MENU_ITEM_ICON_Y 5 +#define MENU_ITEM_ICON_SPACE 42 + +#define MENU_ITEM_HEIGHT 36 +#define MENU_LINE_HEIGHT (MENU_ITEM_HEIGHT + 2) +#define MENU_TOP_LINE_Y 4 + +#if TFT_FONT == NOTOSANS + #define FONT_SIZE 16 + #define FONT_LINE_HEIGHT 26 +#elif TFT_FONT == UNIFONT + #define FONT_SIZE 10 + #define FONT_LINE_HEIGHT 24 +#elif TFT_FONT == HELVETICA + #define FONT_SIZE 14 + #define FONT_LINE_HEIGHT 24 +#endif + +// --------------------------------------------------------------------------------- + +#define VCENTER tft_string.vcenter(FONT_LINE_HEIGHT) + +// MarlinUI::show_bootscreen() +#ifndef BOOTSCREEN_LOGO + #if ENABLED(BOOT_MARLIN_LOGO_SMALL) + #define BOOTSCREEN_LOGO MarlinLogo195x59x16 + #define BOOTSCREEN_LOGO_W 195 + #define BOOTSCREEN_LOGO_H 59 + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 70) + #else + #define BOOTSCREEN_LOGO MarlinLogo480x320x16 + #define BOOTSCREEN_LOGO_W TFT_WIDTH + #define BOOTSCREEN_LOGO_H TFT_HEIGHT + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 90) + #endif +#endif + +#if !defined(BOOTSCREEN_LOGO_X) && !defined(BOOTSCREEN_LOGO_Y) + #define BOOTSCREEN_LOGO_X (TFT_WIDTH - BOOTSCREEN_LOGO_W) / 2 + #define BOOTSCREEN_LOGO_Y (TFT_HEIGHT - BOOTSCREEN_LOGO_H) / 2 +#endif + +#if !defined(NAVIGATION_PAGE_UP_X) && !defined(NAVIGATION_PAGE_UP_Y) && !defined(NAVIGATION_PAGE_DOWN_X) && !defined(NAVIGATION_PAGE_DOWN_Y) && !defined(NAVIGATION_BACK_X) && !defined(NAVIGATION_BACK_Y) + #define NAVIGATION_PAGE_UP_X 104 + #define NAVIGATION_PAGE_UP_Y TFT_HEIGHT - 34 + #define NAVIGATION_PAGE_DOWN_X 344 + #define NAVIGATION_PAGE_DOWN_Y TFT_HEIGHT - 34 + #define NAVIGATION_BACK_X 224 + #define NAVIGATION_BACK_Y TFT_HEIGHT - 34 +#endif + +#if !defined(BUTTON_DECREASE_X) && !defined(BUTTON_DECREASE_Y) && !defined(BUTTON_INCREASE_X) && !defined(BUTTON_INCREASE_Y) && !defined(BUTTON_CLICK_X) && !defined(BUTTON_CLICK_Y) + #define BUTTON_DECREASE_X 64 + #define BUTTON_DECREASE_Y TFT_HEIGHT - 64 + #define BUTTON_INCREASE_X 352 + #define BUTTON_INCREASE_Y TFT_HEIGHT - 64 + #define BUTTON_CLICK_X 208 + #define BUTTON_CLICK_Y TFT_HEIGHT - 64 +#endif + +#if !defined(BUTTON_CANCEL_X) && !defined(BUTTON_CANCEL_Y) && !defined(BUTTON_CONFIRM_X) && !defined(BUTTON_CONFIRM_Y) + #define BUTTON_CANCEL_X 88 + #define BUTTON_CANCEL_Y TFT_HEIGHT - 64 + #define BUTTON_CONFIRM_X 328 + #define BUTTON_CONFIRM_Y TFT_HEIGHT - 64 +#endif + +// MarlinUI::draw_kill_screen() +#if !defined(KILL_SCREEN_STATUS_Y) && !defined(KILL_SCREEN_HALTED_Y) && !defined(KILL_SCREEN_RESET_Y) + #define KILL_SCREEN_STATUS_Y 62 + #define KILL_SCREEN_HALTED_Y 136 + #define KILL_SCREEN_RESET_Y 172 +#endif + +// draw_heater_status() and draw_fan_status() +#if !defined(TEMP_FAN_CONTROL_W) && !defined(TEMP_FAN_CONTROL_H) + #define TEMP_FAN_CONTROL_W 80 + #define TEMP_FAN_CONTROL_H 112 +#endif +#if !defined(TEMP_ICON_X) && !defined(TEMP_ICON_Y) + #define TEMP_ICON_X 8 + #define TEMP_ICON_Y 24 +#endif +#if !defined(FAN_ICON_X) && !defined(FAN_ICON_Y) + #define FAN_ICON_X 8 + #define FAN_ICON_Y 16 +#endif + +#if !defined(TEMP_CURRENT_TEXT_X) && !defined(TEMP_CURRENT_TEXT_Y) && !defined(TEMP_TARGET_TEXT_X) && !defined(TEMP_TARGET_TEXT_Y) + #define TEMP_CURRENT_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 2 + #define TEMP_CURRENT_TEXT_Y 76 + VCENTER + #define TEMP_TARGET_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 2 + #define TEMP_TARGET_TEXT_Y 2 + VCENTER +#endif + +#if !defined(FAN_TEXT_X) && !defined(FAN_TEXT_Y) + #define FAN_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 6 + #define FAN_TEXT_Y 76 + VCENTER +#endif + +// MarlinUI::draw_status_screen() +#if !defined(MAX_ITEMS) && !defined(ITEM_X) && !defined(ITEM_Y) + #define MAX_ITEMS 5 + #define ITEM_X(N) (TFT_WIDTH / _MIN(ITEMS_COUNT, MAX_ITEMS) - TEMP_FAN_CONTROL_W) / 2 + (TFT_WIDTH * N / _MIN(ITEMS_COUNT, MAX_ITEMS)) + #define ITEM_Y 4 +#endif + +#if !defined(COORDINATES_W) && !defined(COORDINATES_H) && !defined(COORDINATES_X) && !defined(COORDINATES_Y) + #define COORDINATES_W TFT_WIDTH - 8 + #define COORDINATES_H FONT_LINE_HEIGHT + #define COORDINATES_X 4 + #define COORDINATES_Y 122 +#endif + +#if ENABLED(LCD_SHOW_E_TOTAL) + #if !defined(E_MARK_X) && !defined(E_MARK_Y) && !defined(E_VALUE_X) && !defined(E_VALUE_Y) + #define E_MARK_X 16 + #define E_MARK_Y VCENTER + #define E_VALUE_X 192 - tft_string.width() + #define E_VALUE_Y VCENTER + #endif +#else + #if !defined(X_MARK_X) && !defined(X_MARK_Y) && !defined(X_VALUE_X) && !defined(X_VALUE_Y) + #define X_MARK_X 16 + #define X_MARK_Y VCENTER + #define X_VALUE_X 102 - tft_string.width() + #define X_VALUE_Y VCENTER + #endif + + #if !defined(Y_MARK_X) && !defined(Y_MARK_Y) && !defined(Y_VALUE_X) && !defined(Y_VALUE_Y) + #define Y_MARK_X 192 + #define Y_MARK_Y VCENTER + #define Y_VALUE_X 280 - tft_string.width() + #define Y_VALUE_Y VCENTER + #endif +#endif + +#if !defined(Z_MARK_X) && !defined(Z_MARK_Y) && !defined(Z_VALUE_X) && !defined(Z_VALUE_Y) + #define Z_MARK_X 330 + #define Z_MARK_Y VCENTER + #define Z_VALUE_X 455 - tft_string.width() + #define Z_VALUE_Y VCENTER + #define Z_VALUE_OFFSET 32 +#endif + +#if !defined(FEEDRATE_W) && !defined(FEEDRATE_H) && !defined(FEEDRATE_X) && !defined(FEEDRATE_Y) + #define FEEDRATE_W 120 + #define FEEDRATE_H 32 + #define FEEDRATE_X 96 + #define FEEDRATE_Y 156 +#endif +#if !defined(FEEDRATE_ICON_X) && !defined(FEEDRATE_ICON_Y) && !defined(FEEDRATE_ICON_Y) && !defined(FEEDRATE_TEXT_Y) + #define FEEDRATE_ICON_X 0 + #define FEEDRATE_ICON_Y 0 + #define FEEDRATE_TEXT_X 36 + #define FEEDRATE_TEXT_Y tft_string.vcenter(30) +#endif + +#if !defined(FLOWRATE_W) && !defined(FLOWRATE_H) && !defined(FLOWRATE_X) && !defined(FLOWRATE_Y) + #define FLOWRATE_W 120 + #define FLOWRATE_H 32 + #define FLOWRATE_X 284 + #define FLOWRATE_Y 156 +#endif +#if !defined(FLOWRATE_ICON_X) && !defined(FLOWRATE_ICON_Y) && !defined(FLOWRATE_TEXT_X) && !defined(FLOWRATE_TEXT_Y) + #define FLOWRATE_ICON_X 0 + #define FLOWRATE_ICON_Y 0 + #define FLOWRATE_TEXT_X 36 + #define FLOWRATE_TEXT_Y tft_string.vcenter(30) +#endif + +#if !defined(MENU_ICON_X) && !defined(MENU_ICON_Y) + #define MENU_ICON_X 404 + #define MENU_ICON_Y 156 +#endif +#if !defined(SDCARD_ICON_X) && !defined(SDCARD_ICON_Y) + #define SDCARD_ICON_X 12 + #define SDCARD_ICON_Y 156 +#endif + +#if !defined(ELAPSED_TIME_W) && !defined(ELAPSED_TIME_H) && !defined(ELAPSED_TIME_X) && !defined(ELAPSED_TIME_Y) + #if ALL(SHOW_ELAPSED_TIME, SHOW_REMAINING_TIME) + #define ELAPSED_TIME_W 164 + #define ELAPSED_TIME_X (TFT_WIDTH / 2) - ELAPSED_TIME_W + #elif ENABLED(SHOW_ELAPSED_TIME) + #define ELAPSED_TIME_W 288 + #define ELAPSED_TIME_X (TFT_WIDTH - ELAPSED_TIME_W) / 2 + #endif + + #define ELAPSED_TIME_H 29 + #define ELAPSED_TIME_Y 192 +#endif + +#if !defined(REMAINING_TIME_W) && !defined(REMAINING_TIME_H) && !defined(REMAINING_TIME_X) && !defined(REMAINING_TIME_Y) + #if ALL(SHOW_ELAPSED_TIME, SHOW_REMAINING_TIME) + #define REMAINING_TIME_W 164 + #define REMAINING_TIME_X (TFT_WIDTH / 2) + #elif ENABLED(SHOW_REMAINING_TIME) + #define REMAINING_TIME_W 288 + #define REMAINING_TIME_X (TFT_WIDTH - REMAINING_TIME_W) / 2 + #endif + + #define REMAINING_TIME_H 29 + #define REMAINING_TIME_Y 192 +#endif + +#if !defined(ELAPSED_TIME_IMAGE_X) && !defined(ELAPSED_TIME_IMAGE_Y) && !defined(ELAPSED_TIME_TEXT_X) && !defined(ELAPSED_TIME_TEXT_Y) + #define ELAPSED_TIME_IMAGE_X tft_string.center(ELAPSED_TIME_W) - 18 + #define ELAPSED_TIME_IMAGE_Y 0 + #define ELAPSED_TIME_TEXT_X tft_string.center(ELAPSED_TIME_W) + 18 + #define ELAPSED_TIME_TEXT_Y tft_string.vcenter(29) +#endif + +#if !defined(REMAINING_TIME_IMAGE_X) && !defined(REMAINING_TIME_IMAGE_Y) && !defined(REMAINING_TIME_TEXT_X) && !defined(REMAINING_TIME_TEXT_Y) + #define REMAINING_TIME_IMAGE_X tft_string.center(ELAPSED_TIME_W) - 18 + #define REMAINING_TIME_IMAGE_Y 0 + #define REMAINING_TIME_TEXT_X tft_string.center(ELAPSED_TIME_W) + 18 + #define REMAINING_TIME_TEXT_Y tft_string.vcenter(29) +#endif + +#if !defined(PROGRESS_BAR_W) && !defined(PROGRESS_BAR_H) && !defined(PROGRESS_BAR_X) && !defined(PROGRESS_BAR_Y) + #define PROGRESS_BAR_W TFT_WIDTH - 8 + #define PROGRESS_BAR_H 12 + #define PROGRESS_BAR_X 4 + #define PROGRESS_BAR_Y 228 +#endif + +#if !defined(STATUS_MESSAGE_W) && !defined(STATUS_MESSAGE_H) && !defined(STATUS_MESSAGE_X) && !defined(STATUS_MESSAGE_Y) + #define STATUS_MESSAGE_W TFT_WIDTH + #define STATUS_MESSAGE_H FONT_LINE_HEIGHT + #define STATUS_MESSAGE_X 0 + #define STATUS_MESSAGE_Y 242 +#endif + +#if !defined(STATUS_MESSAGE_TEXT_X) && !defined(STATUS_MESSAGE_TEXT_Y) + #define STATUS_MESSAGE_TEXT_X tft_string.center(STATUS_MESSAGE_W) + #define STATUS_MESSAGE_TEXT_Y VCENTER +#endif + +// MenuEditItemBase::draw_edit_screen() +#if !defined(SLIDER_W) && !defined(SLIDER_Y) + #define SLIDER_W 336 + #define SLIDER_Y 160 +#endif + +#if ENABLED(AUTO_BED_LEVELING_UBL) + #if !defined(UBL_X_LABEL_X) && !defined(UBL_X_TEXT_X) && !defined(UBL_Y_LABEL_X) && !defined(UBL_Y_TEXT_X) + #define UBL_X_LABEL_X (TFT_WIDTH / 2 - 120) + #define UBL_X_TEXT_X (TFT_WIDTH / 2 - 16) - tft_string.width() + #define UBL_Y_LABEL_X (TFT_WIDTH / 2 + 16) + #define UBL_Y_TEXT_X (TFT_WIDTH / 2 + 120) - tft_string.width() + #endif + + // MarlinUI::ubl_plot() + #if !defined(UBL_GRID_W) && !defined(UBL_GRID_H) && !defined(UBL_GRID_X) && !defined(UBL_GRID_Y) && !defined(UBL_CONTROL_OFFSET) + #define UBL_GRID_W 192 + #define UBL_GRID_H 192 + #define UBL_GRID_X 8 + #define UBL_GRID_Y 8 + #define UBL_CONTROL_OFFSET 16 + #endif + + #if !defined(UBL_COORDINATES_W) && !defined(UBL_COORDINATES_X) && !defined(UBL_X_COORDINATE_Y) && !defined(UBL_Y_COORDINATE_Y) && !defined(UBL_Z_COORDINATE_Y) + #define UBL_COORDINATES_W 120 + #define UBL_COORDINATES_X 320 + + #define UBL_X_COORDINATE_Y UBL_GRID_Y + (UBL_GRID_H - MENU_ITEM_HEIGHT) / 2 - MENU_ITEM_HEIGHT + #define UBL_Y_COORDINATE_Y UBL_GRID_Y + (UBL_GRID_H - MENU_ITEM_HEIGHT) / 2 + #define UBL_Z_COORDINATE_Y UBL_GRID_Y + (UBL_GRID_H - MENU_ITEM_HEIGHT) / 2 + MENU_ITEM_HEIGHT +#endif + + #if !defined(UBL_ACTION_X) && !defined(UBL_ACTION_Y) + #define UBL_ACTION_X UBL_COORDINATES_X + #define UBL_ACTION_Y UBL_GRID_Y + UBL_GRID_H + UBL_CONTROL_OFFSET + #endif +#endif diff --git a/Marlin/src/lcd/tft/ui_480x320.cpp b/Marlin/src/lcd/tft/ui_480x320.cpp deleted file mode 100644 index 8e554cf413a5..000000000000 --- a/Marlin/src/lcd/tft/ui_480x320.cpp +++ /dev/null @@ -1,1196 +0,0 @@ -/** - * Marlin 3D Printer Firmware - * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] - * - * Based on Sprinter and grbl. - * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ - -#include "../../inc/MarlinConfigPre.h" - -#if HAS_UI_480x320 || HAS_UI_480x272 - -#include "ui_common.h" - -#include "../marlinui.h" -#include "../menu/menu.h" -#include "../../libs/numtostr.h" - -#include "../../sd/cardreader.h" -#include "../../module/temperature.h" -#include "../../module/printcounter.h" -#include "../../module/planner.h" -#include "../../module/motion.h" - -#if DISABLED(LCD_PROGRESS_BAR) && ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) - #include "../../feature/filwidth.h" - #include "../../gcode/parser.h" -#endif - -#if ENABLED(AUTO_BED_LEVELING_UBL) - #include "../../feature/bedlevel/bedlevel.h" -#endif - -void MarlinUI::tft_idle() { - #if ENABLED(TOUCH_SCREEN) - if (TERN0(HAS_TOUCH_SLEEP, lcd_sleep_task())) return; - if (draw_menu_navigation) { - add_control(TFT_WIDTH / 6 - 16, TFT_HEIGHT - 34, PAGE_UP, imgPageUp, encoderTopLine > 0); - add_control(TFT_WIDTH / 2 - 16, TFT_HEIGHT - 34, PAGE_DOWN, imgPageDown, encoderTopLine + LCD_HEIGHT < screen_items); - add_control(5 * TFT_WIDTH / 6 - 16, TFT_HEIGHT - 34, BACK, imgBack); - draw_menu_navigation = false; - } - #endif - - tft.queue.async(); - - TERN_(TOUCH_SCREEN, if (tft.queue.is_empty()) touch.idle()); // Touch driver is not DMA-aware, so only check for touch controls after screen drawing is completed -} - -#if ENABLED(SHOW_BOOTSCREEN) - - void MarlinUI::show_bootscreen() { - tft.queue.reset(); - - tft.canvas(0, 0, TFT_WIDTH, TFT_HEIGHT); - #if ENABLED(BOOT_MARLIN_LOGO_SMALL) - #define BOOT_LOGO_W 195 // MarlinLogo195x59x16 - #define BOOT_LOGO_H 59 - #define SITE_URL_Y (TFT_HEIGHT - 70) - tft.set_background(COLOR_BACKGROUND); - #else - #define BOOT_LOGO_W TFT_WIDTH // MarlinLogo480x320x16 - #define BOOT_LOGO_H TFT_HEIGHT - #define SITE_URL_Y (TFT_HEIGHT - 90) - #endif - tft.add_image((TFT_WIDTH - BOOT_LOGO_W) / 2, (TFT_HEIGHT - BOOT_LOGO_H) / 2, imgBootScreen); - #ifdef WEBSITE_URL - tft_string.set(WEBSITE_URL); - tft.add_text(tft_string.center(TFT_WIDTH), SITE_URL_Y, COLOR_WEBSITE_URL, tft_string); - #endif - - tft.queue.sync(); - } - - void MarlinUI::bootscreen_completion(const millis_t sofar) { - if ((BOOTSCREEN_TIMEOUT) > sofar) safe_delay((BOOTSCREEN_TIMEOUT) - sofar); - clear_lcd(); - } - -#endif - -void MarlinUI::draw_kill_screen() { - tft.queue.reset(); - tft.fill(0, 0, TFT_WIDTH, TFT_HEIGHT, COLOR_KILL_SCREEN_BG); - - uint16_t line = 2; - - menu_line(line++, COLOR_KILL_SCREEN_BG); - tft_string.set(status_message); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); - - line++; - menu_line(line++, COLOR_KILL_SCREEN_BG); - tft_string.set(GET_TEXT(MSG_HALTED)); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); - - menu_line(line++, COLOR_KILL_SCREEN_BG); - tft_string.set(GET_TEXT(MSG_PLEASE_RESET)); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); - - tft.queue.sync(); -} - -void draw_heater_status(uint16_t x, uint16_t y, const int8_t heater) { - MarlinImage image = imgHotEnd; - celsius_t currentTemperature, targetTemperature; - - if (heater >= 0) { // HotEnd - #if HAS_EXTRUDERS - currentTemperature = thermalManager.wholeDegHotend(heater); - targetTemperature = thermalManager.degTargetHotend(heater); - #else - return; - #endif - } - #if HAS_HEATED_BED - else if (heater == H_BED) { - currentTemperature = thermalManager.wholeDegBed(); - targetTemperature = thermalManager.degTargetBed(); - } - #endif - #if HAS_TEMP_CHAMBER - else if (heater == H_CHAMBER) { - currentTemperature = thermalManager.wholeDegChamber(); - #if HAS_HEATED_CHAMBER - targetTemperature = thermalManager.degTargetChamber(); - #else - targetTemperature = ABSOLUTE_ZERO; - #endif - } - #endif - #if HAS_TEMP_COOLER - else if (heater == H_COOLER) { - currentTemperature = thermalManager.wholeDegCooler(); - targetTemperature = TERN(HAS_COOLER, thermalManager.degTargetCooler(), ABSOLUTE_ZERO); - } - #endif - else return; - - TERN_(TOUCH_SCREEN, if (targetTemperature >= 0) touch.add_control(HEATER, x, y, 80, 120, heater)); - tft.canvas(x, y, 80, 120); - tft.set_background(COLOR_BACKGROUND); - - uint16_t color = currentTemperature < 0 ? COLOR_INACTIVE : COLOR_COLD; - - if (heater >= 0) { // HotEnd - if (currentTemperature >= 50) color = COLOR_HOTEND; - } - #if HAS_HEATED_BED - else if (heater == H_BED) { - if (currentTemperature >= 50) color = COLOR_HEATED_BED; - image = targetTemperature > 0 ? imgBedHeated : imgBed; - } - #endif - #if HAS_TEMP_CHAMBER - else if (heater == H_CHAMBER) { - if (currentTemperature >= 50) color = COLOR_CHAMBER; - image = targetTemperature > 0 ? imgChamberHeated : imgChamber; - } - #endif - #if HAS_TEMP_COOLER - else if (heater == H_COOLER) { - if (currentTemperature <= 26) color = COLOR_COLD; - if (currentTemperature > 26) color = COLOR_RED; - image = targetTemperature > 26 ? imgCoolerHot : imgCooler; - } - #endif - - tft.add_image(8, 28, image, color); - - tft_string.set(i16tostr3rj(currentTemperature)); - tft_string.add(LCD_STR_DEGREE); - tft_string.trim(); - tft.add_text(tft_string.center(80) + 2, 80 + tft_string.vcenter(FONT_LINE_HEIGHT), color, tft_string); - - if (targetTemperature >= 0) { - tft_string.set(i16tostr3rj(targetTemperature)); - tft_string.add(LCD_STR_DEGREE); - tft_string.trim(); - tft.add_text(tft_string.center(80) + 2, 6 + tft_string.vcenter(FONT_LINE_HEIGHT), color, tft_string); - } -} - -void draw_fan_status(uint16_t x, uint16_t y, const bool blink) { - TERN_(TOUCH_SCREEN, touch.add_control(FAN, x, y, 80, 120)); - tft.canvas(x, y, 80, 120); - tft.set_background(COLOR_BACKGROUND); - - uint8_t fanSpeed = thermalManager.fan_speed[0]; - MarlinImage image; - - if (fanSpeed >= 127) - image = blink ? imgFanFast1 : imgFanFast0; - else if (fanSpeed > 0) - image = blink ? imgFanSlow1 : imgFanSlow0; - else - image = imgFanIdle; - - tft.add_image(8, 20, image, COLOR_FAN); - - tft_string.set(ui8tostr4pctrj(thermalManager.fan_speed[0])); - tft_string.trim(); - tft.add_text(tft_string.center(80) + 6, 80 + tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_FAN, tft_string); -} - -void MarlinUI::draw_status_screen() { - const bool blink = get_blink(); - - TERN_(TOUCH_SCREEN, touch.clear()); - - // Statuses of heaters and fans - uint16_t y = STATUS_MARGIN_SIZE; - for (uint16_t i = 0; i < ITEMS_COUNT; i++) { - uint16_t x = (TFT_WIDTH / ITEMS_COUNT - 80) / 2 + (TFT_WIDTH * i / ITEMS_COUNT); - switch (i) { - #if HAS_EXTRUDERS - case ITEM_E0: draw_heater_status(x, y, H_E0); break; - #endif - #if HAS_MULTI_HOTEND - case ITEM_E1: draw_heater_status(x, y, H_E1); break; - #endif - #if HOTENDS > 2 - case ITEM_E2: draw_heater_status(x, y, H_E2); break; - #endif - #if HAS_HEATED_BED - case ITEM_BED: draw_heater_status(x, y, H_BED); break; - #endif - #if HAS_TEMP_CHAMBER - case ITEM_CHAMBER: draw_heater_status(x, y, H_CHAMBER); break; - #endif - #if HAS_TEMP_COOLER - case ITEM_COOLER: draw_heater_status(x, y, H_COOLER); break; - #endif - #if HAS_FAN - case ITEM_FAN: draw_fan_status(x, y, blink); break; - #endif - } - } - - y += STATUS_MARGIN_SIZE + 114; - - // Coordinates - constexpr uint16_t coords_width = TFT_WIDTH - 8; - tft.canvas((TFT_WIDTH - coords_width) / 2, y, coords_width, FONT_LINE_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft.add_rectangle(0, 0, coords_width, FONT_LINE_HEIGHT, COLOR_AXIS_HOMED); - - if (TERN0(LCD_SHOW_E_TOTAL, printingIsActive())) { - #if ENABLED(LCD_SHOW_E_TOTAL) - tft.add_text(16, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, "E"); - const uint8_t escale = e_move_accumulator >= 100000.0f ? 10 : 1; // After 100m switch to cm - tft_string.set(ftostr4sign(e_move_accumulator / escale)); - tft_string.add(escale == 10 ? 'c' : 'm'); - tft_string.add('m'); - tft.add_text(192 - tft_string.width(), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, tft_string); - #endif - } - else { - // Coords in mask "X____Y____Z____" - #if HAS_X_AXIS - tft_string.set("X"); - tft.add_text(coords_width / 30 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, tft_string); - - const bool nhx = axis_should_home(X_AXIS); - tft_string.set(blink && nhx ? "?" : ftostr4sign(LOGICAL_X_POSITION(current_position.x))); - tft_string.ltrim(); - tft.add_text(coords_width / 5 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), nhx ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); - #endif - - #if HAS_Y_AXIS - tft_string.set("Y"); - tft.add_text(11 * coords_width / 30 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, tft_string); - - const bool nhy = axis_should_home(Y_AXIS); - tft_string.set(blink && nhy ? "?" : ftostr4sign(LOGICAL_Y_POSITION(current_position.y))); - tft_string.ltrim(); - tft.add_text(8 * coords_width / 15 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), nhy ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); - #endif - } - - #if HAS_Z_AXIS - tft_string.set("Z"); - tft.add_text(7 * coords_width / 10 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_AXIS_HOMED, tft_string); - - const bool nhz = axis_should_home(Z_AXIS); - tft_string.set(blink && nhz ? "?" : ftostr52sp(LOGICAL_Z_POSITION(current_position.z))); - tft_string.ltrim(); - tft_string.rtrim(); - tft.add_text(13 * coords_width / 15 - tft_string.width() / 2, tft_string.vcenter(FONT_LINE_HEIGHT), nhz ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); - #endif - - TERN_(TOUCH_SCREEN, touch.add_control(MOVE_AXIS, 4, y, TFT_WIDTH - 8, FONT_LINE_HEIGHT)); - - y += STATUS_MARGIN_SIZE + 34; - - // Feed rate (preparing) - tft_string.set(i16tostr3rj(feedrate_percentage)); - tft_string.add("%"); - uint16_t component_width = 36 + tft_string.width(); // 32px icon size + 4px margin before text - uint16_t color = feedrate_percentage == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; - uint16_t x = FEEDRATE_X(component_width); - - // Feed rate (drawing) - tft.canvas(x, y, component_width, 32); - tft.set_background(COLOR_BACKGROUND); - tft.add_image(0, 0, imgFeedRate, color); - tft.add_text(36, tft_string.vcenter(30), color, tft_string); - TERN_(TOUCH_SCREEN, touch.add_control(FEEDRATE, x, y, component_width, 32)); - - #if HAS_EXTRUDERS - // Flow rate (preparing) - tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); - tft_string.add('%'); - component_width = 36 + tft_string.width(); - color = planner.flow_percentage[0] == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; - x = FLOWRATE_X(component_width); - - // Flow rate (drawing) - tft.canvas(x, y, component_width, 32); - tft.set_background(COLOR_BACKGROUND); - tft.add_image(0, 0, imgFlowRate, color); - tft.add_text(36, tft_string.vcenter(30), color, tft_string); - TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, x, y, component_width, 32, active_extruder)); - #endif - - y += TERN(HAS_UI_480x272, 36, 44); - - const progress_t progress = TERN(HAS_PRINT_PROGRESS_PERMYRIAD, get_progress_permyriad, get_progress_percent)(); - #if ENABLED(SHOW_ELAPSED_TIME) && DISABLED(SHOW_REMAINING_TIME) - // Print duration so far (time elapsed) - centered - char elapsed_str[22]; - duration_t elapsed = print_job_timer.duration(); - elapsed.toString(elapsed_str); - - // Same width constraints as feedrate/flowrate controls - constexpr uint16_t time_str_width = 288, image_width = 36; - - tft.canvas((TFT_WIDTH - time_str_width) / 2, y, time_str_width, 32); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(elapsed_str); - uint16_t text_pos_x = tft_string.center(time_str_width - image_width); - tft.add_image(text_pos_x, 0, imgTimeElapsed, COLOR_PRINT_TIME); - tft.add_text(text_pos_x + image_width, tft_string.vcenter(29), COLOR_PRINT_TIME, tft_string); - - #elif DISABLED(SHOW_ELAPSED_TIME) && ENABLED(SHOW_REMAINING_TIME) - // Print time remaining estimation - centered - char estimate_str[22]; - duration_t elapsed = print_job_timer.duration(); - - // Get the estimate, first from M73 - uint32_t estimate_remaining = (0 - #if ALL(SET_PROGRESS_MANUALLY, SET_REMAINING_TIME) - + get_remaining_time() - #endif - ); - // If no M73 estimate is available but we have progress data, calculate time remaining assuming time elapsed is linear with progress - if (!estimate_remaining && progress > 0) - estimate_remaining = elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress; - - // Generate estimate string - if (!estimate_remaining) - tft_string.set("-"); - else { - duration_t estimation = estimate_remaining; - estimation.toString(estimate_str); - tft_string.set(estimate_str); - } - - // Same width constraints as feedrate/flowrate controls - constexpr uint16_t time_str_width = 288, image_width = 36; - - tft.canvas((TFT_WIDTH - time_str_width) / 2, y, time_str_width, 32); - tft.set_background(COLOR_BACKGROUND); - color = printingIsActive() ? COLOR_PRINT_TIME : COLOR_INACTIVE; - uint16_t text_pos_x = tft_string.center(time_str_width - image_width); - tft.add_image(text_pos_x, 0, imgTimeRemaining, color); - tft.add_text(text_pos_x + image_width, tft_string.vcenter(29), color, tft_string); - - #elif ALL(SHOW_REMAINING_TIME, SHOW_ELAPSED_TIME) - // Print duration so far (time elapsed) - aligned under feed rate - char elapsed_str[18]; - duration_t elapsed = print_job_timer.duration(); - elapsed.toCompactString(elapsed_str); - - tft.canvas(96, y, 144, 32); - tft.set_background(COLOR_BACKGROUND); - tft.add_image(0, 0, imgTimeElapsed, COLOR_PRINT_TIME); - tft_string.set(elapsed_str); - tft.add_text(36, tft_string.vcenter(29), COLOR_PRINT_TIME, tft_string); - - // Print time remaining estimation - aligned under flow rate - char estimate_str[18]; - - // Get the estimate, first from M73 - uint32_t estimate_remaining = (0 - #if ALL(SET_PROGRESS_MANUALLY, SET_REMAINING_TIME) - + get_remaining_time() - #endif - ); - // If no M73 estimate is available but we have progress data, calculate time remaining assuming time elapsed is linear with progress - if (!estimate_remaining && progress > 0) - estimate_remaining = elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress; - - // Generate estimate string - if (!estimate_remaining) - tft_string.set("-"); - else { - duration_t estimation = estimate_remaining; - estimation.toCompactString(estimate_str); - tft_string.set(estimate_str); - } - - // Push out the estimate to the screen - tft.canvas(256, y, 144, 32); - tft.set_background(COLOR_BACKGROUND); - color = printingIsActive() ? COLOR_PRINT_TIME : COLOR_INACTIVE; - tft.add_image(0, 0, imgTimeRemaining, color); - tft.add_text(36, tft_string.vcenter(29), color, tft_string); - #endif - - y += TERN(HAS_UI_480x272, 36, 44); - - // Progress bar - // TODO: print percentage text for SHOW_PROGRESS_PERCENT - tft.canvas(4, y, TFT_WIDTH - 8, 9); - tft.set_background(COLOR_PROGRESS_BG); - tft.add_rectangle(0, 0, TFT_WIDTH - 8, 9, COLOR_PROGRESS_FRAME); - if (progress) - tft.add_bar(1, 1, ((TFT_WIDTH - 10) * progress / (PROGRESS_SCALE)) / 100, 7, COLOR_PROGRESS_BAR); - - y += 12; - // Status message - // Canvas height should be 40px on 480x320 and 28 on 480x272 - const uint16_t status_height = TFT_HEIGHT - y; - tft.canvas(0, y, TFT_WIDTH, status_height); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(status_message); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), tft_string.vcenter(FONT_LINE_HEIGHT), COLOR_STATUS_MESSAGE, tft_string); -} - -// Low-level draw_edit_screen can be used to draw an edit screen from anyplace -void MenuEditItemBase::draw_edit_screen(FSTR_P const fstr, const char * const value/*=nullptr*/) { - ui.encoder_direction_normal(); - TERN_(TOUCH_SCREEN, touch.clear()); - - uint16_t line = 1; - - menu_line(line++); - tft_string.set(fstr, itemIndex, itemStringC, itemStringF); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - - TERN_(AUTO_BED_LEVELING_UBL, if (ui.external_control) line++); // ftostr52() will overwrite *value so *value has to be displayed first - - menu_line(line); - tft_string.set(value); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - #if ENABLED(AUTO_BED_LEVELING_UBL) - if (ui.external_control) { - menu_line(line - 1); - - tft_string.set(X_LBL); - tft.add_text((TFT_WIDTH / 2 - 120), MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(ftostr52(LOGICAL_X_POSITION(current_position.x))); - tft_string.trim(); - tft.add_text((TFT_WIDTH / 2 - 16) - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - tft_string.set(Y_LBL); - tft.add_text((TFT_WIDTH / 2 + 16), MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(ftostr52(LOGICAL_X_POSITION(current_position.y))); - tft_string.trim(); - tft.add_text((TFT_WIDTH / 2 + 120) - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - } - #endif - - if (ui.can_show_slider()) { - - #define SLIDER_LENGTH TFT_WIDTH * 0.7 - #define SLIDER_Y_POSITION 186 - - tft.canvas((TFT_WIDTH - SLIDER_LENGTH) / 2, SLIDER_Y_POSITION, SLIDER_LENGTH, 16); - tft.set_background(COLOR_BACKGROUND); - - int16_t position = (SLIDER_LENGTH - 2) * ui.encoderPosition / maxEditValue; - tft.add_bar(0, 7, 1, 2, ui.encoderPosition == 0 ? COLOR_SLIDER_INACTIVE : COLOR_SLIDER); - tft.add_bar(1, 6, position, 4, COLOR_SLIDER); - tft.add_bar(position + 1, 6, SLIDER_LENGTH - 2 - position, 4, COLOR_SLIDER_INACTIVE); - tft.add_bar(SLIDER_LENGTH - 1, 7, 1, 2, int32_t(ui.encoderPosition) == maxEditValue ? COLOR_SLIDER : COLOR_SLIDER_INACTIVE); - - #if ENABLED(TOUCH_SCREEN) - tft.add_image((SLIDER_LENGTH - 8) * ui.encoderPosition / maxEditValue, 0, imgSlider, COLOR_SLIDER); - touch.add_control(SLIDER, (TFT_WIDTH - SLIDER_LENGTH) / 2, SLIDER_Y_POSITION - 8, SLIDER_LENGTH, 32, maxEditValue); - #endif - } - - tft.draw_edit_screen_buttons(); -} - -void TFT::draw_edit_screen_buttons() { - #if ENABLED(TOUCH_SCREEN) - add_control((TFT_WIDTH - 3 * 64) / 6, TFT_HEIGHT - 64, DECREASE, imgDecrease); - add_control((TFT_WIDTH - 64) / 2, TFT_HEIGHT - 64, INCREASE, imgIncrease); - add_control((TFT_WIDTH * 5 - 3 * 64) / 6, TFT_HEIGHT - 64, CLICK, imgConfirm); - #endif -} - -// The Select Screen presents a prompt and two "buttons" -void MenuItem_confirm::draw_select_screen(FSTR_P const yes, FSTR_P const no, const bool yesno, FSTR_P const pref, const char * const string/*=nullptr*/, FSTR_P const suff/*=nullptr*/) { - uint16_t line = 1; - - if (!string) line++; - - menu_line(line++); - tft_string.set(pref); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); - - if (string) { - menu_line(line++); - tft_string.set(string); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); - } - - if (suff) { - menu_line(line); - tft_string.set(suff); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); - } - #if ENABLED(TOUCH_SCREEN) - if (no) add_control(TFT_WIDTH / 4 - 32, TFT_HEIGHT - 64, CANCEL, imgCancel, true, yesno ? HALF(COLOR_CONTROL_CANCEL) : COLOR_CONTROL_CANCEL); - if (yes) add_control(TFT_WIDTH * 3 / 4 - 32, TFT_HEIGHT - 64, CONFIRM, imgConfirm, true, yesno ? COLOR_CONTROL_CONFIRM : HALF(COLOR_CONTROL_CONFIRM)); - #endif -} - -#if ENABLED(ADVANCED_PAUSE_FEATURE) - - void MarlinUI::draw_hotend_status(const uint8_t row, const uint8_t extruder) { - #if ENABLED(TOUCH_SCREEN) - touch.clear(); - draw_menu_navigation = false; - touch.add_control(RESUME_CONTINUE, 0, 0, TFT_WIDTH, TFT_HEIGHT); - #endif - - menu_line(row); - tft_string.set(GET_TEXT(MSG_FILAMENT_CHANGE_NOZZLE)); - tft_string.add('E'); - tft_string.add((char)('1' + extruder)); - tft_string.add(' '); - tft_string.add(i16tostr3rj(thermalManager.wholeDegHotend(extruder))); - tft_string.add(LCD_STR_DEGREE); - tft_string.add(F(" / ")); - tft_string.add(i16tostr3rj(thermalManager.degTargetHotend(extruder))); - tft_string.add(LCD_STR_DEGREE); - tft_string.trim(); - tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); - } - -#endif // ADVANCED_PAUSE_FEATURE - -#if ENABLED(AUTO_BED_LEVELING_UBL) - #define GRID_OFFSET_X 8 - #define GRID_OFFSET_Y 8 - #define GRID_WIDTH 192 - #define GRID_HEIGHT 192 - #define CONTROL_OFFSET 16 - - void MarlinUI::ubl_plot(const uint8_t x_plot, const uint8_t y_plot) { - - tft.canvas(GRID_OFFSET_X, GRID_OFFSET_Y, GRID_WIDTH, GRID_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft.add_rectangle(0, 0, GRID_WIDTH, GRID_HEIGHT, COLOR_WHITE); - - for (uint16_t x = 0; x < (GRID_MAX_POINTS_X); x++) - for (uint16_t y = 0; y < (GRID_MAX_POINTS_Y); y++) - if (position_is_reachable({ bedlevel.get_mesh_x(x), bedlevel.get_mesh_y(y) })) - tft.add_bar(1 + (x * 2 + 1) * (GRID_WIDTH - 4) / (GRID_MAX_POINTS_X) / 2, GRID_HEIGHT - 3 - ((y * 2 + 1) * (GRID_HEIGHT - 4) / (GRID_MAX_POINTS_Y) / 2), 2, 2, COLOR_UBL); - - tft.add_rectangle((x_plot * 2 + 1) * (GRID_WIDTH - 4) / (GRID_MAX_POINTS_X) / 2 - 1, GRID_HEIGHT - 5 - ((y_plot * 2 + 1) * (GRID_HEIGHT - 4) / (GRID_MAX_POINTS_Y) / 2), 6, 6, COLOR_UBL); - - const xy_pos_t pos = { bedlevel.get_mesh_x(x_plot), bedlevel.get_mesh_y(y_plot) }, - lpos = pos.asLogical(); - - tft.canvas(320, GRID_OFFSET_Y + (GRID_HEIGHT - MENU_ITEM_HEIGHT) / 2 - MENU_ITEM_HEIGHT, 120, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(X_LBL); - tft.add_text(0, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(ftostr52(lpos.x)); - tft_string.trim(); - tft.add_text(120 - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - tft.canvas(320, GRID_OFFSET_Y + (GRID_HEIGHT - MENU_ITEM_HEIGHT) / 2, 120, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(Y_LBL); - tft.add_text(0, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(ftostr52(lpos.y)); - tft_string.trim(); - tft.add_text(120 - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - tft.canvas(320, GRID_OFFSET_Y + (GRID_HEIGHT - MENU_ITEM_HEIGHT) / 2 + MENU_ITEM_HEIGHT, 120, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(Z_LBL); - tft.add_text(0, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); - tft_string.set(isnan(bedlevel.z_values[x_plot][y_plot]) ? "-----" : ftostr43sign(bedlevel.z_values[x_plot][y_plot])); - tft_string.trim(); - tft.add_text(120 - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - constexpr uint8_t w = (TFT_WIDTH) / 10; - tft.canvas(GRID_OFFSET_X + (GRID_WIDTH - w) / 2, GRID_OFFSET_Y + GRID_HEIGHT + CONTROL_OFFSET - 5, w, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(ui8tostr3rj(x_plot)); - tft_string.trim(); - tft.add_text(tft_string.center(w), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - tft.canvas(GRID_OFFSET_X + GRID_WIDTH + CONTROL_OFFSET + 16 - 24, GRID_OFFSET_Y + (GRID_HEIGHT - MENU_ITEM_HEIGHT) / 2, w, MENU_ITEM_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(ui8tostr3rj(y_plot)); - tft_string.trim(); - tft.add_text(tft_string.center(w), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); - - #if ENABLED(TOUCH_SCREEN) - touch.clear(); - draw_menu_navigation = false; - add_control(GRID_OFFSET_X + GRID_WIDTH + CONTROL_OFFSET, GRID_OFFSET_Y + CONTROL_OFFSET, UBL, (ENCODER_STEPS_PER_MENU_ITEM) * (GRID_MAX_POINTS_X), imgUp); - add_control(GRID_OFFSET_X + GRID_WIDTH + CONTROL_OFFSET, GRID_OFFSET_Y + GRID_HEIGHT - CONTROL_OFFSET - 32, UBL, -(ENCODER_STEPS_PER_MENU_ITEM) * (GRID_MAX_POINTS_X), imgDown); - add_control(GRID_OFFSET_X + CONTROL_OFFSET, GRID_OFFSET_Y + GRID_HEIGHT + CONTROL_OFFSET, UBL, -(ENCODER_STEPS_PER_MENU_ITEM), imgLeft); - add_control(GRID_OFFSET_X + GRID_WIDTH - CONTROL_OFFSET - 32, GRID_OFFSET_Y + GRID_HEIGHT + CONTROL_OFFSET, UBL, ENCODER_STEPS_PER_MENU_ITEM, imgRight); - add_control(320, GRID_OFFSET_Y + GRID_HEIGHT + CONTROL_OFFSET, CLICK, imgLeveling); - add_control(224, TFT_HEIGHT - 34, BACK, imgBack); - #endif - } -#endif // AUTO_BED_LEVELING_UBL - -#if ENABLED(BABYSTEP_ZPROBE_OFFSET) - #include "../../feature/babystep.h" -#endif - -#if HAS_BED_PROBE - #include "../../module/probe.h" -#endif - -#define Z_SELECTION_Z 1 -#define Z_SELECTION_Z_PROBE -1 - -struct { - #if HAS_X_AXIS - xy_int_t xValuePos; - #endif - #if HAS_Y_AXIS - xy_int_t yValuePos; - #endif - #if HAS_Z_AXIS - xy_int_t zValuePos, zTypePos; - int z_selection = Z_SELECTION_Z; - #endif - #if HAS_EXTRUDERS - xy_int_t eValuePos, eNamePos; - uint8_t e_selection = 0; - #endif - xy_int_t stepValuePos; - float currentStepSize = 10.0; - bool blocked = false; - char message[32]; -} motionAxisState; - -#define BTN_WIDTH 64 -#define BTN_HEIGHT 52 -#define X_MARGIN 20 -#define Y_MARGIN 15 -#define Y_OFFSET TERN(HAS_UI_480x272, 28, 34) - -static void quick_feedback() { - #if HAS_CHIRP - ui.chirp(); // Buzz and wait. Is the delay needed for buttons to settle? - #if ALL(HAS_MARLINUI_MENU, HAS_BEEPER) - for (int8_t i = 5; i--;) { buzzer.tick(); delay(2); } - #elif HAS_MARLINUI_MENU - delay(10); - #endif - #endif -} - -#define CUR_STEP_VALUE_WIDTH 104 -static void drawCurStepValue() { - tft_string.set(ftostr52sp(motionAxisState.currentStepSize)); - tft_string.trim(); - tft_string.add(F("mm")); - tft.canvas(motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft.add_text(0, 0, COLOR_AXIS_HOMED, tft_string); -} - -#if HAS_Z_AXIS - static void drawCurZSelection() { - tft_string.set('Z'); - tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), FONT_LINE_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft.add_text(0, 0, Z_BTN_COLOR, tft_string); - - tft.queue.sync(); - - tft_string.set(F("Offset")); - tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + Y_OFFSET, tft_string.width(), Y_OFFSET TERN_(HAS_UI_480x272, - 10)); - tft.set_background(COLOR_BACKGROUND); - #if HAS_BED_PROBE - if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) - tft.add_text(0, 0, Z_BTN_COLOR, tft_string); - #endif - } -#endif - -#if HAS_EXTRUDERS - static void drawCurESelection() { - tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); - tft.set_background(COLOR_BACKGROUND); - tft_string.set('E'); - tft_string.add(utostr3(motionAxisState.e_selection)); - tft.add_text(tft_string.center(BTN_WIDTH), 0, E_BTN_COLOR, tft_string); - } -#endif - -static void drawMessage(PGM_P const msg) { - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - tft.canvas(X_MARGIN, TFT_HEIGHT - 2 * MOVE_AXIS_MARGIN_SIZE - BTN_HEIGHT - FONT_LINE_HEIGHT, TFT_WIDTH - X_MARGIN * 2, FONT_LINE_HEIGHT); - #else - tft.canvas(X_MARGIN, TFT_HEIGHT - Y_MARGIN - Y_OFFSET, TFT_HEIGHT / 2, Y_OFFSET); - #endif - tft.set_background(COLOR_BACKGROUND); - tft.add_text(0, 0, COLOR_YELLOW, msg); -} - -static void drawMessage(FSTR_P const fmsg) { drawMessage(FTOP(fmsg)); } - -static void drawAxisValue(const AxisEnum axis) { - const float value = ( - TERN_(HAS_BED_PROBE, axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE ? probe.offset.z :) - ui.manual_move.axis_value(axis) - ); - xy_int_t pos; - uint16_t color; - switch (axis) { - #if HAS_X_AXIS - case X_AXIS: pos = motionAxisState.xValuePos; color = X_BTN_COLOR; break; - #endif - #if HAS_Y_AXIS - case Y_AXIS: pos = motionAxisState.yValuePos; color = Y_BTN_COLOR; break; - #endif - #if HAS_Z_AXIS - case Z_AXIS: pos = motionAxisState.zValuePos; color = Z_BTN_COLOR; break; - #endif - #if HAS_EXTRUDERS - case E_AXIS: pos = motionAxisState.eValuePos; color = E_BTN_COLOR; break; - #endif - default: return; - } - tft.canvas(pos.x, pos.y, BTN_WIDTH + X_MARGIN, BTN_HEIGHT TERN_(HAS_UI_480x272, / 2)); - tft.set_background(COLOR_BACKGROUND); - tft_string.set(ftostr52sp(value)); - tft_string.trim(); - tft.add_text(tft_string.center(BTN_WIDTH + X_MARGIN), 0, color, tft_string); -} - -static void moveAxis(const AxisEnum axis, const int8_t direction) { - quick_feedback(); - - #if HAS_EXTRUDERS - if (axis == E_AXIS && thermalManager.tooColdToExtrude(motionAxisState.e_selection)) { - drawMessage(F("Too cold")); - return; - } - #endif - - const float diff = motionAxisState.currentStepSize * direction; - - #if HAS_BED_PROBE - - if (axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { - #if ENABLED(BABYSTEP_ZPROBE_OFFSET) - const int16_t babystep_increment = direction * BABYSTEP_SIZE_Z; - const bool do_probe = DISABLED(BABYSTEP_HOTEND_Z_OFFSET) || active_extruder == 0; - const float bsDiff = planner.mm_per_step[Z_AXIS] * babystep_increment, - new_probe_offset = probe.offset.z + bsDiff, - new_offs = TERN(BABYSTEP_HOTEND_Z_OFFSET - , do_probe ? new_probe_offset : hotend_offset[active_extruder].z - bsDiff - , new_probe_offset - ); - if (WITHIN(new_offs, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { - babystep.add_steps(Z_AXIS, babystep_increment); - if (do_probe) - probe.offset.z = new_offs; - else - TERN(BABYSTEP_HOTEND_Z_OFFSET, hotend_offset[active_extruder].z = new_offs, NOOP); - drawMessage(NUL_STR); // Clear the error - drawAxisValue(axis); - } - else - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - - #else - // Only change probe.offset.z - probe.offset.z += diff; - if (direction < 0 && current_position.z < Z_PROBE_OFFSET_RANGE_MIN) { - current_position.z = Z_PROBE_OFFSET_RANGE_MIN; - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - else if (direction > 0 && current_position.z > Z_PROBE_OFFSET_RANGE_MAX) { - current_position.z = Z_PROBE_OFFSET_RANGE_MAX; - drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); - } - else - drawMessage(NUL_STR); // Clear the error - - drawAxisValue(axis); - #endif - } - - #endif // HAS_BED_PROBE - - if (!ui.manual_move.processing) { - // Get motion limit from software endstops, if any - float min, max; - soft_endstop.get_manual_axis_limits(axis, min, max); - - // Delta limits XY based on the current offset from center - // This assumes the center is 0,0 - #if ENABLED(DELTA) - if (axis != Z_AXIS && TERN1(HAS_EXTRUDERS, axis != E_AXIS)) { - max = SQRT(sq(float(PRINTABLE_RADIUS)) - sq(current_position[Y_AXIS - axis])); // (Y_AXIS - axis) == the other axis - min = -max; - } - #endif - - // Get the new position - const bool limited = ui.manual_move.apply_diff(axis, diff, min, max); - #if IS_KINEMATIC - UNUSED(limited); - #else - PGM_P const msg = limited ? GET_TEXT(MSG_LCD_SOFT_ENDSTOPS) : NUL_STR; - drawMessage(msg); - #endif - - ui.manual_move.soon(axis OPTARG(MULTI_E_MANUAL, motionAxisState.e_selection)); - } - - drawAxisValue(axis); -} - -#if HAS_EXTRUDERS - static void e_plus() { moveAxis(E_AXIS, 1); } - static void e_minus() { moveAxis(E_AXIS, -1); } -#endif -#if HAS_X_AXIS - static void x_minus() { moveAxis(X_AXIS, -1); } - static void x_plus() { moveAxis(X_AXIS, 1); } -#endif -#if HAS_Y_AXIS - static void y_plus() { moveAxis(Y_AXIS, 1); } - static void y_minus() { moveAxis(Y_AXIS, -1); } -#endif -#if HAS_Z_AXIS - static void z_plus() { moveAxis(Z_AXIS, 1); } - static void z_minus() { moveAxis(Z_AXIS, -1); } -#endif - -#if ENABLED(TOUCH_SCREEN) - #if HAS_EXTRUDERS - static void e_select() { - if (++motionAxisState.e_selection >= EXTRUDERS) - motionAxisState.e_selection = 0; - quick_feedback(); - drawCurESelection(); - drawAxisValue(E_AXIS); - } - #endif - - static void do_home() { - quick_feedback(); - drawMessage(GET_TEXT_F(MSG_LEVEL_BED_HOMING)); - queue.inject_P(G28_STR); - // Disable touch until home is done - touch.disable(); - TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); - TERN_(HAS_X_AXIS, drawAxisValue(X_AXIS)); - TERN_(HAS_Y_AXIS, drawAxisValue(Y_AXIS)); - TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); - } - - static void step_size() { - motionAxisState.currentStepSize = motionAxisState.currentStepSize / 10.0; - if (motionAxisState.currentStepSize < 0.0015) motionAxisState.currentStepSize = 10.0; - quick_feedback(); - drawCurStepValue(); - } -#endif // TOUCH_SCREEN - -#if ALL(HAS_BED_PROBE, TOUCH_SCREEN) - static void z_select() { - motionAxisState.z_selection *= -1; - quick_feedback(); - drawCurZSelection(); - drawAxisValue(Z_AXIS); - } -#endif - -static void disable_steppers() { - quick_feedback(); - queue.inject(F("M84")); -} - -static void drawBtn(const int x, const int y, const char *label, intptr_t data, const MarlinImage img, uint16_t bgColor, const bool enabled=true) { - const uint16_t width = images[imgBtn52Rounded].width, - height = images[imgBtn52Rounded].height; - - if (!enabled) bgColor = COLOR_CONTROL_DISABLED; - - tft.canvas(x, y, width, height); - tft.set_background(COLOR_BACKGROUND); - tft.add_image(0, 0, imgBtn52Rounded, bgColor, COLOR_BACKGROUND, COLOR_DARKGREY); - - // TODO: Make an add_text() taking a font arg - if (label) { - tft_string.set(label); - tft_string.trim(); - tft.add_text(tft_string.center(width), height / 2 - tft_string.font_height() / 2, bgColor, tft_string); - } - else - tft.add_image(0, 0, img, bgColor, COLOR_BACKGROUND, COLOR_DARKGREY); - - TERN_(TOUCH_SCREEN, if (enabled) touch.add_control(BUTTON, x, y, width, height, data)); -} - -void MarlinUI::move_axis_screen() { - // Reset - defer_status_screen(true); - motionAxisState.blocked = false; - TERN_(TOUCH_SCREEN, touch.enable()); - - ui.clear_lcd(); - - TERN_(TOUCH_SCREEN, touch.clear()); - - const bool busy = printingIsActive(); - - // Babysteps during printing? Select babystep for Z probe offset - #if ENABLED(BABYSTEP_ZPROBE_OFFSET) - if (busy) motionAxisState.z_selection = Z_SELECTION_Z_PROBE; - #endif - - #if ENABLED(TFT_COLOR_UI_PORTRAIT) - - int y = MOVE_AXIS_MARGIN_SIZE; - - /************************************************************************** - * 1st: | Button "E+" | Button "Y+" | Button "Z+" | - *************************************************************************/ - - TERN_(HAS_EXTRUDERS, drawBtn(TFT_WIDTH / 6 - BTN_WIDTH / 2, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy)); - TERN_(HAS_Y_AXIS, drawBtn(TFT_WIDTH / 2 - BTN_WIDTH / 2, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy)); - TERN_(HAS_Z_AXIS, drawBtn(TFT_WIDTH * 5 / 6 - BTN_WIDTH / 2, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET))); - - y += BTN_HEIGHT + 4; - - /************************************************************************** - * 2nd: | Label "Ex" (E0, E1, etc.) | Y value | Label "Z" | - *************************************************************************/ - - // Label "Ex" (E0, E1, etc.) - #if HAS_EXTRUDERS - motionAxisState.eNamePos.set(TFT_WIDTH / 6 - BTN_WIDTH / 2, y); - drawCurESelection(); - #if ENABLED(TOUCH_SCREEN) - if (!busy) touch.add_control(BUTTON, motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select); - #endif - #endif - - // Y value - #if HAS_Y_AXIS - motionAxisState.yValuePos.set(TFT_WIDTH / 2 - (BTN_WIDTH + X_MARGIN) / 2, y); - drawAxisValue(Y_AXIS); - #endif - - // Label "Z" - #ifdef HAS_Z_AXIS - motionAxisState.zTypePos.set(TFT_WIDTH * 5 / 6 - BTN_WIDTH / 2, y); - drawCurZSelection(); - #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) - if (!busy) touch.add_control(BUTTON, motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, BTN_WIDTH, FONT_LINE_HEIGHT * 2, (intptr_t)z_select); - #endif - #endif - - y += BTN_HEIGHT + MOVE_AXIS_MARGIN_SIZE; - - /************************************************************************** - * 3rd: | Button "X-" | Button "Homing" | Button "X+" | - *************************************************************************/ - - #if HAS_X_AXIS - drawBtn(TFT_WIDTH / 6 - BTN_WIDTH / 2, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy); - TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy)); - drawBtn(TFT_WIDTH * 5 / 6 - BTN_WIDTH / 2, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy); - #endif - - y += BTN_HEIGHT + 4; - - /************************************************************************** - * 4th: | X value | - *************************************************************************/ - - #ifdef HAS_X_AXIS - motionAxisState.xValuePos.set(TFT_WIDTH / 6 - (BTN_WIDTH + X_MARGIN) / 2, y); - drawAxisValue(X_AXIS); - #endif - - y += BTN_HEIGHT + MOVE_AXIS_MARGIN_SIZE; - - /************************************************************************** - * 5th: | Button "E-" | Button "Y-" | Button "Z-" - *************************************************************************/ - - TERN_(HAS_EXTRUDERS, drawBtn(TFT_WIDTH / 6 - BTN_WIDTH / 2, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy)); - TERN_(HAS_Y_AXIS, drawBtn(TFT_WIDTH / 2 - BTN_WIDTH / 2, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); - TERN_(HAS_Z_AXIS, drawBtn(TFT_WIDTH * 5 / 6 - BTN_WIDTH / 2, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET))); - - y += BTN_HEIGHT + 4; - - /************************************************************************** - * 6th: | Current Ex value | Z value | - *************************************************************************/ - - // Current Ex value - #ifdef HAS_EXTRUDERS - motionAxisState.eValuePos.set(TFT_WIDTH / 6 - (BTN_WIDTH + X_MARGIN) / 2, y); - drawAxisValue(E_AXIS); - #endif - - #ifdef HAS_Z_AXIS - motionAxisState.zValuePos.set(TFT_WIDTH * 5 / 6 - (BTN_WIDTH + X_MARGIN) / 2, y); - drawAxisValue(Z_AXIS); - #endif - - y += BTN_HEIGHT + MOVE_AXIS_MARGIN_SIZE; - - /************************************************************************** - * 7th: | Message - drawMessage(...) function | - *************************************************************************/ - - y += FONT_LINE_HEIGHT + MOVE_AXIS_MARGIN_SIZE; - - /************************************************************************** - * 8th: | Step size | Button "Disable steppers" | Button "Back" | - *************************************************************************/ - - // Step size - motionAxisState.stepValuePos.set(X_MARGIN, y + 12); - if (!busy) { - drawCurStepValue(); - TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y + 12, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); - } - - // Button "Disable steppers" - drawBtn(TFT_WIDTH / 2, y, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); - - // Button "Back" - TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH * 5 / 6 - images[imgBack].width / 2, y + 12, BACK, imgBack)); - - #else // !TFT_COLOR_UI_PORTRAIT - - // ROW 1 -> E- Y- CurY Z+ - int x = X_MARGIN, y = Y_MARGIN, spacing = 0; - - TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", (intptr_t)e_plus, imgUp, E_BTN_COLOR, !busy)); - - spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; - x += BTN_WIDTH + spacing; - - TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", (intptr_t)y_plus, imgUp, Y_BTN_COLOR, !busy)); - - x += BTN_WIDTH; - - // Cur Y - #if HAS_Y_AXIS - motionAxisState.yValuePos.set(x + 2, y); - drawAxisValue(Y_AXIS); - #endif - - x += spacing; - #if HAS_Z_AXIS - drawBtn(x, y, "Z+", (intptr_t)z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have baby step - #endif - - // ROW 2 -> "Ex" X- HOME X+ "Z" - y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; - x = X_MARGIN; - spacing = (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; - - #if HAS_EXTRUDERS - motionAxisState.eNamePos.set(x, y); - drawCurESelection(); - TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, (intptr_t)e_select)); - #endif - - x += BTN_WIDTH + spacing; - - TERN_(HAS_X_AXIS, drawBtn(x, y, "X-", (intptr_t)x_minus, imgLeft, X_BTN_COLOR, !busy)); - - x += BTN_WIDTH + spacing; //imgHome is 64x64 - - #if ALL(HAS_X_AXIS, TOUCH_SCREEN) - add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, (intptr_t)do_home, imgHome, !busy); - #endif - - x += BTN_WIDTH + spacing; - const uint16_t xplus_x = x; - - TERN_(HAS_X_AXIS, drawBtn(x, y, "X+", (intptr_t)x_plus, imgRight, X_BTN_COLOR, !busy)); - - x += BTN_WIDTH + spacing; - - #if HAS_Z_AXIS - motionAxisState.zTypePos.set(x, y); - drawCurZSelection(); - #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) - if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, Y_OFFSET * 2, (intptr_t)z_select); - #endif - #endif - - // ROW 3 -> E- CurX Y- Z- - y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; - x = X_MARGIN; - spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; - - #if HAS_EXTRUDERS - drawBtn(x, y, "E-", (intptr_t)e_minus, imgDown, E_BTN_COLOR, !busy); - motionAxisState.eValuePos.set(x, y + BTN_HEIGHT + 2); - drawAxisValue(E_AXIS); - #endif - - // Cur X - #if HAS_X_AXIS - motionAxisState.xValuePos.set(BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4, y - 10); - TERN_(HAS_X_AXIS, drawAxisValue(X_AXIS)); - #endif - - x += BTN_WIDTH + spacing; - - // Cur Y - TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", (intptr_t)y_minus, imgDown, Y_BTN_COLOR, !busy)); - - x += BTN_WIDTH + spacing; - - // Cur Z - #if HAS_Z_AXIS - drawBtn(x, y, "Z-", (intptr_t)z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); //only enabled when not busy or have baby step - motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); - drawAxisValue(Z_AXIS); - #endif - - // ROW 4 -> step_size disable steppers back - y = TFT_HEIGHT - Y_MARGIN - TERN(HAS_UI_480x272, BTN_WIDTH / 2, 32); - x = TFT_WIDTH / 2 - CUR_STEP_VALUE_WIDTH / 2; - motionAxisState.stepValuePos.set(x, y); - if (!busy) { - drawCurStepValue(); - TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, (intptr_t)step_size)); - } - - // Aligned with x+ - drawBtn(xplus_x, TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT, "off", (intptr_t)disable_steppers, imgCancel, COLOR_WHITE, !busy); - - TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); - - #endif // !TFT_COLOR_UI_PORTRAIT -} - -#endif // HAS_UI_480x320 || HAS_UI_480x272 diff --git a/Marlin/src/lcd/tft/ui_480x320.h b/Marlin/src/lcd/tft/ui_480x320.h index d3036d098106..421fe03a18c6 100644 --- a/Marlin/src/lcd/tft/ui_480x320.h +++ b/Marlin/src/lcd/tft/ui_480x320.h @@ -19,117 +19,285 @@ * along with this program. If not, see . * */ -#pragma once -#define MARLIN_LOGO_FULL_SIZE MarlinLogo480x320x16 +#include "../../inc/MarlinConfigPre.h" -#include "ui_common.h" +// -------------------------------- Core Parameters -------------------------------- -#define TFT_STATUS_TOP_Y 4 -#define TFT_TOP_LINE_Y 4 +#define MENU_TEXT_X 16 +#define MENU_TEXT_Y tft_string.vcenter(MENU_ITEM_HEIGHT) -#define MENU_TEXT_X_OFFSET 16 -#define MENU_TEXT_Y_OFFSET tft_string.vcenter(MENU_ITEM_HEIGHT) +#define MENU_ITEM_ICON_X 5 +#define MENU_ITEM_ICON_Y 5 +#define MENU_ITEM_ICON_SPACE 42 -#define MENU_ITEM_ICON_X 5 -#define MENU_ITEM_ICON_Y 5 -#define MENU_ITEM_ICON_SPACE 42 +#define MENU_ITEM_HEIGHT 43 +#define MENU_LINE_HEIGHT (MENU_ITEM_HEIGHT + 2) +#define MENU_TOP_LINE_Y 4 -#if HAS_UI_480x320 +#if TFT_FONT == NOTOSANS || TFT_FONT == HELVETICA + #define FONT_SIZE 19 +#elif TFT_FONT == UNIFONT + #define FONT_SIZE 20 +#endif + +#define FONT_LINE_HEIGHT 34 + +// --------------------------------------------------------------------------------- - #define MENU_ITEM_HEIGHT 43 - #define FONT_LINE_HEIGHT 34 +#define VCENTER tft_string.vcenter(FONT_LINE_HEIGHT) - #if (TFT_FONT == NOTOSANS) || (TFT_FONT == HELVETICA) - #define FONT_SIZE 19 - #elif TFT_FONT == UNIFONT - #define FONT_SIZE 20 +// MarlinUI::show_bootscreen() +#ifndef BOOTSCREEN_LOGO + #if ENABLED(BOOT_MARLIN_LOGO_SMALL) + #define BOOTSCREEN_LOGO MarlinLogo195x59x16 + #define BOOTSCREEN_LOGO_W 195 + #define BOOTSCREEN_LOGO_H 59 + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 70) + #else + #define BOOTSCREEN_LOGO MarlinLogo480x320x16 + #define BOOTSCREEN_LOGO_W TFT_WIDTH + #define BOOTSCREEN_LOGO_H TFT_HEIGHT + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 90) #endif +#endif + +#if !defined(BOOTSCREEN_LOGO_X) && !defined(BOOTSCREEN_LOGO_Y) + #define BOOTSCREEN_LOGO_X (TFT_WIDTH - BOOTSCREEN_LOGO_W) / 2 + #define BOOTSCREEN_LOGO_Y (TFT_HEIGHT - BOOTSCREEN_LOGO_H) / 2 +#endif + +#if !defined(NAVIGATION_PAGE_UP_X) && !defined(NAVIGATION_PAGE_UP_Y) && !defined(NAVIGATION_PAGE_DOWN_X) && !defined(NAVIGATION_PAGE_DOWN_Y) && !defined(NAVIGATION_BACK_X) && !defined(NAVIGATION_BACK_Y) + #define NAVIGATION_PAGE_UP_X 104 + #define NAVIGATION_PAGE_UP_Y TFT_HEIGHT - 34 + #define NAVIGATION_PAGE_DOWN_X 344 + #define NAVIGATION_PAGE_DOWN_Y TFT_HEIGHT - 34 + #define NAVIGATION_BACK_X 224 + #define NAVIGATION_BACK_Y TFT_HEIGHT - 34 +#endif + +#if !defined(BUTTON_DECREASE_X) && !defined(BUTTON_DECREASE_Y) && !defined(BUTTON_INCREASE_X) && !defined(BUTTON_INCREASE_Y) && !defined(BUTTON_CLICK_X) && !defined(BUTTON_CLICK_Y) + #define BUTTON_DECREASE_X 64 + #define BUTTON_DECREASE_Y TFT_HEIGHT - 64 + #define BUTTON_INCREASE_X 352 + #define BUTTON_INCREASE_Y TFT_HEIGHT - 64 + #define BUTTON_CLICK_X 208 + #define BUTTON_CLICK_Y TFT_HEIGHT - 64 +#endif + +#if !defined(BUTTON_CANCEL_X) && !defined(BUTTON_CANCEL_Y) && !defined(BUTTON_CONFIRM_X) && !defined(BUTTON_CONFIRM_Y) + #define BUTTON_CANCEL_X 88 + #define BUTTON_CANCEL_Y TFT_HEIGHT - 64 + #define BUTTON_CONFIRM_X 328 + #define BUTTON_CONFIRM_Y TFT_HEIGHT - 64 +#endif + +// MarlinUI::draw_kill_screen() +#if !defined(KILL_SCREEN_STATUS_Y) && !defined(KILL_SCREEN_HALTED_Y) && !defined(KILL_SCREEN_RESET_Y) + #define KILL_SCREEN_STATUS_Y 94 + #define KILL_SCREEN_HALTED_Y 184 + #define KILL_SCREEN_RESET_Y 229 +#endif + +// draw_heater_status() and draw_fan_status() +#if !defined(TEMP_FAN_CONTROL_W) && !defined(TEMP_FAN_CONTROL_H) + #define TEMP_FAN_CONTROL_W 80 + #define TEMP_FAN_CONTROL_H 120 +#endif +#if !defined(TEMP_ICON_X) && !defined(TEMP_ICON_Y) + #define TEMP_ICON_X 8 + #define TEMP_ICON_Y 28 +#endif +#if !defined(FAN_ICON_X) && !defined(FAN_ICON_Y) + #define FAN_ICON_X 8 + #define FAN_ICON_Y 20 +#endif -#elif HAS_UI_480x272 - #if TFT_FONT == NOTOSANS - #define FONT_SIZE 16 - #define FONT_LINE_HEIGHT 26 - #elif TFT_FONT == UNIFONT - #define FONT_SIZE 10 - #define FONT_LINE_HEIGHT 24 - #elif TFT_FONT == HELVETICA - #define FONT_SIZE 14 - #define FONT_LINE_HEIGHT 24 +#if !defined(TEMP_CURRENT_TEXT_X) && !defined(TEMP_CURRENT_TEXT_Y) && !defined(TEMP_TARGET_TEXT_X) && !defined(TEMP_TARGET_TEXT_Y) + #define TEMP_CURRENT_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 2 + #define TEMP_CURRENT_TEXT_Y 80 + VCENTER + #define TEMP_TARGET_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 2 + #define TEMP_TARGET_TEXT_Y 6 + VCENTER +#endif + +#if !defined(FAN_TEXT_X) && !defined(FAN_TEXT_Y) + #define FAN_TEXT_X tft_string.center(TEMP_FAN_CONTROL_W) + 6 + #define FAN_TEXT_Y 80 + VCENTER +#endif + +// MarlinUI::draw_status_screen() +#if !defined(MAX_ITEMS) && !defined(ITEM_X) && !defined(ITEM_Y) + #define MAX_ITEMS 5 + #define ITEM_X(N) (TFT_WIDTH / _MIN(ITEMS_COUNT, MAX_ITEMS) - TEMP_FAN_CONTROL_W) / 2 + (TFT_WIDTH * N / _MIN(ITEMS_COUNT, MAX_ITEMS)) + #define ITEM_Y 4 +#endif + +#if !defined(COORDINATES_W) && !defined(COORDINATES_H) && !defined(COORDINATES_X) && !defined(COORDINATES_Y) + #define COORDINATES_W TFT_WIDTH - 8 + #define COORDINATES_H FONT_LINE_HEIGHT + #define COORDINATES_X 4 + #define COORDINATES_Y 132 +#endif + +#if ENABLED(LCD_SHOW_E_TOTAL) + #if !defined(E_MARK_X) && !defined(E_MARK_Y) && !defined(E_VALUE_X) && !defined(E_VALUE_Y) + #define E_MARK_X 16 + #define E_MARK_Y VCENTER + #define E_VALUE_X 192 - tft_string.width() + #define E_VALUE_Y VCENTER + #endif +#else + #if !defined(X_MARK_X) && !defined(X_MARK_Y) && !defined(X_VALUE_X) && !defined(X_VALUE_Y) + #define X_MARK_X 16 + #define X_MARK_Y VCENTER + #define X_VALUE_X 102 - tft_string.width() + #define X_VALUE_Y VCENTER #endif - #define MENU_ITEM_HEIGHT 36 + #if !defined(Y_MARK_X) && !defined(Y_MARK_Y) && !defined(Y_VALUE_X) && !defined(Y_VALUE_Y) + #define Y_MARK_X 192 + #define Y_MARK_Y VCENTER + #define Y_VALUE_X 280 - tft_string.width() + #define Y_VALUE_Y VCENTER + #endif #endif -#define MENU_LINE_HEIGHT (MENU_ITEM_HEIGHT + 2) +#if !defined(Z_MARK_X) && !defined(Z_MARK_Y) && !defined(Z_VALUE_X) && !defined(Z_VALUE_Y) + #define Z_MARK_X 330 + #define Z_MARK_Y VCENTER + #define Z_VALUE_X 455 - tft_string.width() + #define Z_VALUE_Y VCENTER + #define Z_VALUE_OFFSET 32 +#endif -/** - * Status screen - portrait layout: - * - * | FAN E0 BED .. | - 120px - * | Coordinates | - FONT_LINE_HEIGHT - * | Feedrate Flowrate | - 32px - * | SD Settings | - 64px if ENABLED(TOUCHSCREEN), else 0px - * | Print duration time | - 29px - * | Progress bar | - 7px - * | Status message | - FONT_LINE_HEIGHT - * - * Summary with touchscreen: - * - Total height: 252px + 2 * FONT_LINE_HEIGHT (320px if FONT_LINE_HEIGHT is 34px) - * - Rows count: 7 - * - Margins count: 8 - * - * Summary without touchscreen: - * - Total height: 188px + 2 * FONT_LINE_HEIGHT (256px if FONT_LINE_HEIGHT is 34px) - * - Rows count: 6 - * - Margins count: 7 - * - * Status screen - landscape layout: - * - * | FAN E0 BED ... | - 120px - * | Coordinates | - FONT_LINE_HEIGHT - * | SD Flowrate Feedrate Settings | - 44px for TOUCHSCREEN, else 32px - * | Print duration time | - 29px - * | Progress bar | - 7px - * | Status message | - FONT_LINE_HEIGHT - * - * Summary with touchscreen: - * - Total height: 200px (268px if FONT_LINE_HEIGHT is 34px) - * - Rows count: 6 - * - Margins count: 7 - * - * Summary without touchscreen: - * - Total height: 188px + 2 * FONT_LINE_HEIGHT (256px if FONT_LINE_HEIGHT is 34px) - * - Rows count: 6 - * - Margins count: 7 - */ -#if ENABLED(TFT_COLOR_UI_PORTRAIT) - #if ENABLED(TOUCH_SCREEN) - #define STATUS_TOTAL_ROWS_HEIGHT (2 * FONT_LINE_HEIGHT + 120 + 32 + 64 + 29 + 7) - #define STATUS_MARGINS_REGIONS 8 - - #define MOVE_AXIS_TOTAL_ROWS_HEIGHT (7 * BTN_HEIGHT + FONT_LINE_HEIGHT + 12) - #define MOVE_AXIS_MARGIN_REGIONS 6 - #define MOVE_AXIS_MARGIN_SIZE ((TFT_HEIGHT - MOVE_AXIS_TOTAL_ROWS_HEIGHT) / MOVE_AXIS_MARGIN_REGIONS) - #else - #define STATUS_TOTAL_ROWS_HEIGHT (2 * FONT_LINE_HEIGHT + 120 + 32 + 29 + 7) - #define STATUS_MARGINS_REGIONS 7 +#if !defined(FEEDRATE_W) && !defined(FEEDRATE_H) && !defined(FEEDRATE_X) && !defined(FEEDRATE_Y) + #define FEEDRATE_W 120 + #define FEEDRATE_H 32 + #define FEEDRATE_X 96 + #define FEEDRATE_Y 180 +#endif +#if !defined(FEEDRATE_ICON_X) && !defined(FEEDRATE_ICON_Y) && !defined(FEEDRATE_ICON_Y) && !defined(FEEDRATE_TEXT_Y) + #define FEEDRATE_ICON_X 0 + #define FEEDRATE_ICON_Y 0 + #define FEEDRATE_TEXT_X 36 + #define FEEDRATE_TEXT_Y tft_string.vcenter(30) +#endif + +#if !defined(FLOWRATE_W) && !defined(FLOWRATE_H) && !defined(FLOWRATE_X) && !defined(FLOWRATE_Y) + #define FLOWRATE_W 120 + #define FLOWRATE_H 32 + #define FLOWRATE_X 284 + #define FLOWRATE_Y 180 +#endif +#if !defined(FLOWRATE_ICON_X) && !defined(FLOWRATE_ICON_Y) && !defined(FLOWRATE_TEXT_X) && !defined(FLOWRATE_TEXT_Y) + #define FLOWRATE_ICON_X 0 + #define FLOWRATE_ICON_Y 0 + #define FLOWRATE_TEXT_X 36 + #define FLOWRATE_TEXT_Y tft_string.vcenter(30) +#endif + +#if !defined(MENU_ICON_X) && !defined(MENU_ICON_Y) + #define MENU_ICON_X 404 + #define MENU_ICON_Y 180 +#endif +#if !defined(SDCARD_ICON_X) && !defined(SDCARD_ICON_Y) + #define SDCARD_ICON_X 12 + #define SDCARD_ICON_Y 180 +#endif + +#if !defined(ELAPSED_TIME_W) && !defined(ELAPSED_TIME_H) && !defined(ELAPSED_TIME_X) && !defined(ELAPSED_TIME_Y) + #if ALL(SHOW_ELAPSED_TIME, SHOW_REMAINING_TIME) + #define ELAPSED_TIME_W 164 + #define ELAPSED_TIME_X (TFT_WIDTH / 2) - ELAPSED_TIME_W + #elif ENABLED(SHOW_ELAPSED_TIME) + #define ELAPSED_TIME_W 288 + #define ELAPSED_TIME_X (TFT_WIDTH - ELAPSED_TIME_W) / 2 #endif - #define FEEDRATE_X(W) ((TFT_WIDTH - 2 * (W)) / 4) - #define FLOWRATE_X(W) ((3 * TFT_WIDTH - 2 * (W)) / 4) - #define SETTINGS_X (3 * TFT_WIDTH / 4 - 32) - #define SDCARD_X (TFT_WIDTH / 4 - 32) -#else - #define STATUS_TOTAL_ROWS_HEIGHT (2 * FONT_LINE_HEIGHT + 120 + TERN(TOUCH_SCREEN, 44, 32) + 29 + 7) - #define STATUS_MARGINS_REGIONS 7 + #define ELAPSED_TIME_H 29 + #define ELAPSED_TIME_Y 224 +#endif - #define FEEDRATE_X(W) (3 * TFT_WIDTH / 8 - (W) / 2) - #define FLOWRATE_X(W) (5 * TFT_WIDTH / 8 - (W) / 2) - #define SETTINGS_X (TFT_WIDTH / 8 - 32) - #define SDCARD_X (7 * TFT_WIDTH / 8 - 32) +#if !defined(REMAINING_TIME_W) && !defined(REMAINING_TIME_H) && !defined(REMAINING_TIME_X) && !defined(REMAINING_TIME_Y) + #if ALL(SHOW_ELAPSED_TIME, SHOW_REMAINING_TIME) + #define REMAINING_TIME_W 164 + #define REMAINING_TIME_X (TFT_WIDTH / 2) + #elif ENABLED(SHOW_REMAINING_TIME) + #define REMAINING_TIME_W 288 + #define REMAINING_TIME_X (TFT_WIDTH - REMAINING_TIME_W) / 2 + #endif + + #define REMAINING_TIME_H 29 + #define REMAINING_TIME_Y 224 #endif -#define STATUS_MARGIN_SIZE ((TFT_HEIGHT - STATUS_TOTAL_ROWS_HEIGHT) / STATUS_MARGINS_REGIONS) +#if !defined(ELAPSED_TIME_IMAGE_X) && !defined(ELAPSED_TIME_IMAGE_Y) && !defined(ELAPSED_TIME_TEXT_X) && !defined(ELAPSED_TIME_TEXT_Y) + #define ELAPSED_TIME_IMAGE_X tft_string.center(ELAPSED_TIME_W) - 18 + #define ELAPSED_TIME_IMAGE_Y 0 + #define ELAPSED_TIME_TEXT_X tft_string.center(ELAPSED_TIME_W) + 18 + #define ELAPSED_TIME_TEXT_Y tft_string.vcenter(29) +#endif -#include "tft_font.h" +#if !defined(REMAINING_TIME_IMAGE_X) && !defined(REMAINING_TIME_IMAGE_Y) && !defined(REMAINING_TIME_TEXT_X) && !defined(REMAINING_TIME_TEXT_Y) + #define REMAINING_TIME_IMAGE_X tft_string.center(ELAPSED_TIME_W) - 18 + #define REMAINING_TIME_IMAGE_Y 0 + #define REMAINING_TIME_TEXT_X tft_string.center(ELAPSED_TIME_W) + 18 + #define REMAINING_TIME_TEXT_Y tft_string.vcenter(29) +#endif + +#if !defined(PROGRESS_BAR_W) && !defined(PROGRESS_BAR_H) && !defined(PROGRESS_BAR_X) && !defined(PROGRESS_BAR_Y) + #define PROGRESS_BAR_W TFT_WIDTH - 8 + #define PROGRESS_BAR_H 12 + #define PROGRESS_BAR_X 4 + #define PROGRESS_BAR_Y 262 +#endif + +#if !defined(STATUS_MESSAGE_W) && !defined(STATUS_MESSAGE_H) && !defined(STATUS_MESSAGE_X) && !defined(STATUS_MESSAGE_Y) + #define STATUS_MESSAGE_W TFT_WIDTH + #define STATUS_MESSAGE_H FONT_LINE_HEIGHT + #define STATUS_MESSAGE_X 0 + #define STATUS_MESSAGE_Y 280 +#endif + +#if !defined(STATUS_MESSAGE_TEXT_X) && !defined(STATUS_MESSAGE_TEXT_Y) + #define STATUS_MESSAGE_TEXT_X tft_string.center(STATUS_MESSAGE_W) + #define STATUS_MESSAGE_TEXT_Y VCENTER +#endif + +// MenuEditItemBase::draw_edit_screen() +#if !defined(SLIDER_W) && !defined(SLIDER_Y) + #define SLIDER_W 336 + #define SLIDER_Y 186 +#endif + +#if ENABLED(AUTO_BED_LEVELING_UBL) + #if !defined(UBL_X_LABEL_X) && !defined(UBL_X_TEXT_X) && !defined(UBL_Y_LABEL_X) && !defined(UBL_Y_TEXT_X) + #define UBL_X_LABEL_X (TFT_WIDTH / 2 - 120) + #define UBL_X_TEXT_X (TFT_WIDTH / 2 - 16) - tft_string.width() + #define UBL_Y_LABEL_X (TFT_WIDTH / 2 + 16) + #define UBL_Y_TEXT_X (TFT_WIDTH / 2 + 120) - tft_string.width() + #endif + + // MarlinUI::ubl_plot() + #if !defined(UBL_GRID_W) && !defined(UBL_GRID_H) && !defined(UBL_GRID_X) && !defined(UBL_GRID_Y) && !defined(UBL_CONTROL_OFFSET) + #define UBL_GRID_W 192 + #define UBL_GRID_H 192 + #define UBL_GRID_X 8 + #define UBL_GRID_Y 8 + #define UBL_CONTROL_OFFSET 16 + #endif + + #if !defined(UBL_COORDINATES_W) && !defined(UBL_COORDINATES_X) && !defined(UBL_X_COORDINATE_Y) && !defined(UBL_Y_COORDINATE_Y) && !defined(UBL_Z_COORDINATE_Y) + #define UBL_COORDINATES_W 130 + #define UBL_COORDINATES_X 310 + + #define UBL_X_COORDINATE_Y UBL_GRID_Y + (UBL_GRID_H - MENU_ITEM_HEIGHT) / 2 - MENU_ITEM_HEIGHT + #define UBL_Y_COORDINATE_Y UBL_GRID_Y + (UBL_GRID_H - MENU_ITEM_HEIGHT) / 2 + #define UBL_Z_COORDINATE_Y UBL_GRID_Y + (UBL_GRID_H - MENU_ITEM_HEIGHT) / 2 + MENU_ITEM_HEIGHT + #endif + + #if !defined(UBL_ACTION_X) && !defined(UBL_ACTION_Y) + #define UBL_ACTION_X UBL_COORDINATES_X + #define UBL_ACTION_Y UBL_GRID_Y + UBL_GRID_H + UBL_CONTROL_OFFSET + #endif +#endif diff --git a/Marlin/src/lcd/tft/ui_color_ui.cpp b/Marlin/src/lcd/tft/ui_color_ui.cpp new file mode 100644 index 000000000000..d2fc08a09c34 --- /dev/null +++ b/Marlin/src/lcd/tft/ui_color_ui.cpp @@ -0,0 +1,588 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../inc/MarlinConfigPre.h" + +#if ENABLED(TFT_COLOR_UI) + +#include "ui_common.h" + +#include "../marlinui.h" +#include "../menu/menu.h" +#include "../../libs/numtostr.h" + +#include "../../sd/cardreader.h" +#include "../../module/temperature.h" +#include "../../module/printcounter.h" +#include "../../module/planner.h" +#include "../../module/motion.h" + +#if DISABLED(LCD_PROGRESS_BAR) && ALL(FILAMENT_LCD_DISPLAY, HAS_MEDIA) + #include "../../feature/filwidth.h" + #include "../../gcode/parser.h" +#endif + +#if ENABLED(AUTO_BED_LEVELING_UBL) + #include "../../feature/bedlevel/bedlevel.h" +#endif + +void MarlinUI::tft_idle() { + #if ENABLED(TOUCH_SCREEN) + if (TERN0(HAS_TOUCH_SLEEP, lcd_sleep_task())) return; + if (draw_menu_navigation) { + add_control(NAVIGATION_PAGE_UP_X, NAVIGATION_PAGE_UP_Y, PAGE_UP, imgPageUp, encoderTopLine > 0); + add_control(NAVIGATION_PAGE_DOWN_X, NAVIGATION_PAGE_DOWN_Y, PAGE_DOWN, imgPageDown, encoderTopLine + LCD_HEIGHT < screen_items); + add_control(NAVIGATION_BACK_X, NAVIGATION_BACK_Y, BACK, imgBack); + draw_menu_navigation = false; + } + #endif + + tft.queue.async(); + + TERN_(TOUCH_SCREEN, if (tft.queue.is_empty()) touch.idle()); // Touch driver is not DMA-aware, so only check for touch controls after screen drawing is completed +} + +#if ENABLED(SHOW_BOOTSCREEN) + + void MarlinUI::show_bootscreen() { + tft.queue.reset(); + + tft.canvas(0, 0, TFT_WIDTH, TFT_HEIGHT); + TERN_(BOOT_MARLIN_LOGO_SMALL, tft.set_background(COLOR_BACKGROUND)); + tft.add_image(BOOTSCREEN_LOGO_X, BOOTSCREEN_LOGO_Y, imgBootScreen); + #ifdef WEBSITE_URL + tft_string.set(WEBSITE_URL); + tft.add_text(tft_string.center(TFT_WIDTH), BOOTSCREEN_SITE_URL_Y, COLOR_WEBSITE_URL, tft_string); + #endif + + tft.queue.sync(); + } + + void MarlinUI::bootscreen_completion(const millis_t sofar) { + if ((BOOTSCREEN_TIMEOUT) > sofar) safe_delay((BOOTSCREEN_TIMEOUT) - sofar); + clear_lcd(); + } +#endif + +void MarlinUI::draw_kill_screen() { + tft.queue.reset(); + tft.fill(0, 0, TFT_WIDTH, TFT_HEIGHT, COLOR_KILL_SCREEN_BG); + + text_line(KILL_SCREEN_STATUS_Y, COLOR_KILL_SCREEN_BG); + tft_string.set(status_message); + tft_string.trim(); + tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); + + text_line(KILL_SCREEN_HALTED_Y, COLOR_KILL_SCREEN_BG); + tft_string.set(GET_TEXT(MSG_HALTED)); + tft_string.trim(); + tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); + + text_line(KILL_SCREEN_RESET_Y, COLOR_KILL_SCREEN_BG); + tft_string.set(GET_TEXT(MSG_PLEASE_RESET)); + tft_string.trim(); + tft.add_text(tft_string.center(TFT_WIDTH), 0, COLOR_MENU_TEXT, tft_string); + + tft.queue.sync(); +} + +void draw_heater_status(uint16_t x, uint16_t y, const int8_t heater) { + MarlinImage image = imgHotEnd; + celsius_t currentTemperature, targetTemperature; + + if (heater >= 0) { // HotEnd + #if HAS_EXTRUDERS + currentTemperature = thermalManager.wholeDegHotend(heater); + targetTemperature = thermalManager.degTargetHotend(heater); + #else + return; + #endif + } + #if HAS_HEATED_BED + else if (heater == H_BED) { + currentTemperature = thermalManager.wholeDegBed(); + targetTemperature = thermalManager.degTargetBed(); + } + #endif + #if HAS_TEMP_CHAMBER + else if (heater == H_CHAMBER) { + currentTemperature = thermalManager.wholeDegChamber(); + #if HAS_HEATED_CHAMBER + targetTemperature = thermalManager.degTargetChamber(); + #else + targetTemperature = ABSOLUTE_ZERO; + #endif + } + #endif + #if HAS_TEMP_COOLER + else if (heater == H_COOLER) { + currentTemperature = thermalManager.wholeDegCooler(); + targetTemperature = TERN(HAS_COOLER, thermalManager.degTargetCooler(), ABSOLUTE_ZERO); + } + #endif + else return; + + TERN_(TOUCH_SCREEN, if (targetTemperature >= 0) touch.add_control(HEATER, x, y, TEMP_FAN_CONTROL_W, TEMP_FAN_CONTROL_H, heater)); + tft.canvas(x, y, TEMP_FAN_CONTROL_W, TEMP_FAN_CONTROL_H); + tft.set_background(COLOR_BACKGROUND); + + uint16_t color = currentTemperature < 0 ? COLOR_INACTIVE : COLOR_COLD; + + if (heater >= 0) { // HotEnd + if (currentTemperature >= 50) color = COLOR_HOTEND; + } + #if HAS_HEATED_BED + else if (heater == H_BED) { + if (currentTemperature >= 50) color = COLOR_HEATED_BED; + image = targetTemperature > 0 ? imgBedHeated : imgBed; + } + #endif + #if HAS_TEMP_CHAMBER + else if (heater == H_CHAMBER) { + if (currentTemperature >= 50) color = COLOR_CHAMBER; + image = targetTemperature > 0 ? imgChamberHeated : imgChamber; + } + #endif + #if HAS_TEMP_COOLER + else if (heater == H_COOLER) { + if (currentTemperature <= 26) color = COLOR_COLD; + if (currentTemperature > 26) color = COLOR_RED; + image = targetTemperature > 26 ? imgCoolerHot : imgCooler; + } + #endif + + tft.add_image(TEMP_ICON_X, TEMP_ICON_Y, image, color); + + tft_string.set(i16tostr3rj(currentTemperature)); + tft_string.add(LCD_STR_DEGREE); + tft_string.trim(); + tft.add_text(TEMP_CURRENT_TEXT_X, TEMP_CURRENT_TEXT_Y, color, tft_string); + + if (targetTemperature >= 0) { + tft_string.set(i16tostr3rj(targetTemperature)); + tft_string.add(LCD_STR_DEGREE); + tft_string.trim(); + tft.add_text(TEMP_TARGET_TEXT_X, TEMP_TARGET_TEXT_Y, color, tft_string); + } +} + +void draw_fan_status(uint16_t x, uint16_t y, const bool blink) { + TERN_(TOUCH_SCREEN, touch.add_control(FAN, x, y, TEMP_FAN_CONTROL_W, TEMP_FAN_CONTROL_H)); + tft.canvas(x, y, TEMP_FAN_CONTROL_W, TEMP_FAN_CONTROL_H); + tft.set_background(COLOR_BACKGROUND); + + uint8_t fanSpeed = thermalManager.fan_speed[0]; + MarlinImage image; + + if (fanSpeed >= 127) + image = blink ? imgFanFast1 : imgFanFast0; + else if (fanSpeed > 0) + image = blink ? imgFanSlow1 : imgFanSlow0; + else + image = imgFanIdle; + + tft.add_image(FAN_ICON_X, FAN_ICON_Y, image, COLOR_FAN); + + tft_string.set(ui8tostr4pctrj(thermalManager.fan_speed[0])); + tft_string.trim(); + tft.add_text(FAN_TEXT_X, FAN_TEXT_Y, COLOR_FAN, tft_string); +} + +void MarlinUI::draw_status_screen() { + const bool blink = get_blink(); + TERN_(TOUCH_SCREEN, touch.clear()); + + // Statuses of heaters and fans + for (uint16_t i = 0; i < _MIN(ITEMS_COUNT, MAX_ITEMS); i++) { + switch (i) { + #if HAS_EXTRUDERS + case ITEM_E0: draw_heater_status(ITEM_X(i), ITEM_Y, H_E0); break; + #endif + #if HAS_MULTI_HOTEND + case ITEM_E1: draw_heater_status(ITEM_X(i), ITEM_Y, H_E1); break; + #endif + #if HOTENDS > 2 + case ITEM_E2: draw_heater_status(ITEM_X(i), ITEM_Y, H_E2); break; + #endif + #if HAS_HEATED_BED + case ITEM_BED: draw_heater_status(ITEM_X(i), ITEM_Y, H_BED); break; + #endif + #if HAS_TEMP_CHAMBER + case ITEM_CHAMBER: draw_heater_status(ITEM_X(i), ITEM_Y, H_CHAMBER); break; + #endif + #if HAS_TEMP_COOLER + case ITEM_COOLER: draw_heater_status(ITEM_X(i), ITEM_Y, H_COOLER); break; + #endif + #if HAS_FAN + case ITEM_FAN: draw_fan_status(ITEM_X(i), ITEM_Y, blink); break; + #endif + } + } + + // Coordinates + #if ENABLED(MOVE_AXIS_SCREEN) + TERN_(TOUCH_SCREEN, touch.add_control(MENU_SCREEN, COORDINATES_X, COORDINATES_Y, COORDINATES_W, COORDINATES_H, (intptr_t) ui.move_axis_screen)); + #endif + + tft.canvas(COORDINATES_X, COORDINATES_Y, COORDINATES_W, COORDINATES_H); + tft.set_background(COLOR_BACKGROUND); + tft.add_rectangle(0, 0, COORDINATES_W, COORDINATES_H, COLOR_AXIS_HOMED); + + #if ENABLED(HAS_X_AXIS) && defined(X_MARK_X) && defined(X_MARK_Y) && defined(X_VALUE_X) && defined(X_VALUE_Y) + tft.add_text(X_MARK_X, X_MARK_Y, COLOR_AXIS_HOMED , "X"); + const bool nhx = axis_should_home(X_AXIS); + tft_string.set(blink && nhx ? "?" : ftostr4sign(LOGICAL_X_POSITION(current_position.x))); + tft.add_text(X_VALUE_X, X_VALUE_Y, nhx ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + #endif + + #if ENABLED(HAS_Y_AXIS) && defined(Y_MARK_X) && defined(Y_MARK_Y) && defined(Y_VALUE_X) && defined(Y_VALUE_Y) + tft.add_text(Y_MARK_X, Y_MARK_Y, COLOR_AXIS_HOMED , "Y"); + const bool nhy = axis_should_home(Y_AXIS); + tft_string.set(blink && nhy ? "?" : ftostr4sign(LOGICAL_Y_POSITION(current_position.y))); + tft.add_text(Y_VALUE_X, Y_VALUE_Y, nhy ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + #endif + + #if ENABLED(HAS_Z_AXIS) && defined(Z_MARK_X) && defined(Z_MARK_Y) && defined(Z_VALUE_X) && defined(Z_VALUE_Y) && defined(Z_VALUE_OFFSET) + tft.add_text(Z_MARK_X, Z_MARK_Y, COLOR_AXIS_HOMED , "Z"); + uint16_t offset = Z_VALUE_OFFSET; + const bool nhz = axis_should_home(Z_AXIS); + if (blink && nhz) + tft_string.set('?'); + else { + const float z = LOGICAL_Z_POSITION(current_position.z); + tft_string.set(ftostr52sp((int16_t)z)); + tft_string.rtrim(); + offset += tft_string.width(); + + tft_string.set(ftostr52sp(z)); + offset -= tft_string.width(); + } + tft.add_text(Z_VALUE_X - offset, Z_VALUE_Y, nhz ? COLOR_AXIS_NOT_HOMED : COLOR_AXIS_HOMED, tft_string); + #endif + + + #if ENABLED(LCD_SHOW_E_TOTAL) && defined(E_MARK_X) && defined(E_MARK_Y) && defined(E_VALUE_X) && defined(E_VALUE_Y) + tft.add_text(E_MARK_X, E_MARK_Y, COLOR_AXIS_HOMED, "E"); + if (printingIsActive()) { + const uint8_t escale = e_move_accumulator >= 10000.0f ? 10 : 1; // After 10m switch to cm to fit into 4 digits output of ftostr4sign() + tft_string.set(ftostr4sign(e_move_accumulator / escale)); + const uint16_t e_value_x = E_VALUE_X; + tft_string.add(escale == 10 ? " cm" : " mm"); + tft.add_text(e_value_x, E_VALUE_Y, COLOR_AXIS_HOMED, tft_string); + } + else { + tft_string.set("--"); + tft.add_text(E_VALUE_X, E_VALUE_Y, COLOR_AXIS_HOMED, tft_string); + } + #endif + + // Feed rate + tft.canvas(FEEDRATE_X, FEEDRATE_Y, FEEDRATE_W, FEEDRATE_H); + tft.set_background(COLOR_BACKGROUND); + uint16_t color = feedrate_percentage == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; + tft.add_image(0, 0, imgFeedRate, color); + tft_string.set(i16tostr3rj(feedrate_percentage)); + tft_string.add('%'); + tft.add_text(36, tft_string.vcenter(30), color , tft_string); + TERN_(TOUCH_SCREEN, touch.add_control(FEEDRATE, FEEDRATE_X, FEEDRATE_Y, FEEDRATE_W, FEEDRATE_H)); + + #if HAS_EXTRUDERS + // Flow rate + tft.canvas(FLOWRATE_X, FLOWRATE_Y, FLOWRATE_W, FLOWRATE_H); + tft.set_background(COLOR_BACKGROUND); + color = planner.flow_percentage[0] == 100 ? COLOR_RATE_100 : COLOR_RATE_ALTERED; + tft.add_image(FLOWRATE_ICON_X, FLOWRATE_ICON_X, imgFlowRate, color); + tft_string.set(i16tostr3rj(planner.flow_percentage[active_extruder])); + tft_string.add('%'); + tft.add_text(FLOWRATE_TEXT_X, FLOWRATE_TEXT_Y, color , tft_string); + TERN_(TOUCH_SCREEN, touch.add_control(FLOWRATE, FLOWRATE_X, FLOWRATE_Y, FLOWRATE_W, FLOWRATE_H, active_extruder)); + #endif + + #if ENABLED(TOUCH_SCREEN) + add_control(MENU_ICON_X, MENU_ICON_Y, menu_main, imgSettings); + #if ENABLED(SDSUPPORT) + const bool cm = card.isMounted(), pa = printingIsActive(); + if (cm && pa) + add_control(SDCARD_ICON_X, SDCARD_ICON_Y, STOP, imgCancel, true, COLOR_CONTROL_CANCEL); + else + add_control(SDCARD_ICON_X, SDCARD_ICON_Y, menu_media, imgSD, cm && !pa, COLOR_CONTROL_ENABLED, COLOR_CONTROL_DISABLED); + #endif + #endif + + #if ANY(SHOW_ELAPSED_TIME, SHOW_REMAINING_TIME) + char buffer[22]; + duration_t elapsed = print_job_timer.duration(); + #endif + + const progress_t progress = TERN(HAS_PRINT_PROGRESS_PERMYRIAD, get_progress_permyriad, get_progress_percent)(); + + #if ENABLED(SHOW_ELAPSED_TIME) + elapsed.toDigital(buffer); + tft.canvas(ELAPSED_TIME_X, ELAPSED_TIME_Y, ELAPSED_TIME_W, ELAPSED_TIME_H); + tft.set_background(COLOR_BACKGROUND); + tft_string.set(buffer); + #if defined(ELAPSED_TIME_IMAGE_X) && defined(ELAPSED_TIME_IMAGE_Y) + tft.add_image(ELAPSED_TIME_IMAGE_X, ELAPSED_TIME_IMAGE_Y, imgTimeElapsed, COLOR_PRINT_TIME); + #endif + tft.add_text(ELAPSED_TIME_TEXT_X, ELAPSED_TIME_TEXT_Y, COLOR_PRINT_TIME, tft_string); + #endif + + #if ENABLED(SHOW_REMAINING_TIME) + // Get the estimate, first from M73 + uint32_t estimate_remaining = (0 + #if ALL(SET_PROGRESS_MANUALLY, SET_REMAINING_TIME) + + get_remaining_time() + #endif + ); + // If no M73 estimate is available but we have progress data, calculate time remaining assuming time elapsed is linear with progress + if (!estimate_remaining && progress > 0) + estimate_remaining = elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress; + + // Generate estimate string + if (!estimate_remaining) + tft_string.set("-"); + else { + duration_t estimation = estimate_remaining; + estimation.toString(buffer); + tft_string.set(buffer); + } + + tft.canvas(REMAINING_TIME_X, REMAINING_TIME_Y, REMAINING_TIME_W, REMAINING_TIME_H); + tft.set_background(COLOR_BACKGROUND); + tft_string.set(buffer); + color = printingIsActive() ? COLOR_PRINT_TIME : COLOR_INACTIVE; + #if defined(REMAINING_TIME_IMAGE_X) && defined(REMAINING_TIME_IMAGE_Y) + tft.add_image(REMAINING_TIME_IMAGE_X, REMAINING_TIME_IMAGE_Y, imgTimeRemaining, color); + #endif + tft.add_text(REMAINING_TIME_TEXT_X, REMAINING_TIME_TEXT_Y, color, tft_string); + #endif + + // Progress bar + // TODO: print percentage text for SHOW_PROGRESS_PERCENT + tft.canvas(PROGRESS_BAR_X, PROGRESS_BAR_Y, PROGRESS_BAR_W, PROGRESS_BAR_H); + tft.set_background(COLOR_PROGRESS_BG); + tft.add_rectangle(0, 0, PROGRESS_BAR_W, PROGRESS_BAR_H, COLOR_PROGRESS_FRAME); + if (progress) + tft.add_bar(1, 1, ((PROGRESS_BAR_W - 2) * progress / (PROGRESS_SCALE)) / 100, 7, COLOR_PROGRESS_BAR); + + // Status message + tft.canvas(STATUS_MESSAGE_X, STATUS_MESSAGE_Y, STATUS_MESSAGE_W, STATUS_MESSAGE_H); + tft.set_background(COLOR_BACKGROUND); + tft_string.set(status_message); + tft_string.trim(); + tft.add_text(STATUS_MESSAGE_TEXT_X, STATUS_MESSAGE_TEXT_Y, COLOR_STATUS_MESSAGE, tft_string); +} + +// Low-level draw_edit_screen can be used to draw an edit screen from anyplace +void MenuEditItemBase::draw_edit_screen(FSTR_P const fstr, const char * const value/*=nullptr*/) { + ui.encoder_direction_normal(); + TERN_(TOUCH_SCREEN, touch.clear()); + + uint16_t line = 1; + + menu_line(line++); + tft_string.set(fstr, itemIndex, itemStringC, itemStringF); + tft_string.trim(); + tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); + + TERN_(AUTO_BED_LEVELING_UBL, if (ui.external_control) line++); // ftostr52() will overwrite *value so *value has to be displayed first + + menu_line(line); + tft_string.set(value); + tft_string.trim(); + tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y, COLOR_MENU_VALUE, tft_string); + + #if ENABLED(AUTO_BED_LEVELING_UBL) + if (ui.external_control) { + menu_line(line - 1); + + tft_string.set(X_LBL); + tft.add_text(UBL_X_LABEL_X, MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); + tft_string.set(ftostr52(LOGICAL_X_POSITION(current_position.x))); + tft_string.trim(); + tft.add_text(UBL_X_TEXT_X, MENU_TEXT_Y, COLOR_MENU_VALUE, tft_string); + + tft_string.set(Y_LBL); + tft.add_text(UBL_Y_LABEL_X, MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); + tft_string.set(ftostr52(LOGICAL_X_POSITION(current_position.y))); + tft_string.trim(); + tft.add_text(UBL_Y_TEXT_X, MENU_TEXT_Y, COLOR_MENU_VALUE, tft_string); + } + #endif + + if (ui.can_show_slider()) { + tft.canvas((TFT_WIDTH - SLIDER_W) / 2, SLIDER_Y, SLIDER_W, 16); + tft.set_background(COLOR_BACKGROUND); + + int16_t position = (SLIDER_W - 2) * ui.encoderPosition / maxEditValue; + tft.add_bar(0, 7, 1, 2, ui.encoderPosition == 0 ? COLOR_SLIDER_INACTIVE : COLOR_SLIDER); + tft.add_bar(1, 6, position, 4, COLOR_SLIDER); + tft.add_bar(position + 1, 6, SLIDER_W - 2 - position, 4, COLOR_SLIDER_INACTIVE); + tft.add_bar(SLIDER_W - 1, 7, 1, 2, int32_t(ui.encoderPosition) == maxEditValue ? COLOR_SLIDER : COLOR_SLIDER_INACTIVE); + + #if ENABLED(TOUCH_SCREEN) + tft.add_image((SLIDER_W - 8) * ui.encoderPosition / maxEditValue, 0, imgSlider, COLOR_SLIDER); + touch.add_control(SLIDER, (TFT_WIDTH - SLIDER_W) / 2, SLIDER_Y - 8, SLIDER_W, 32, maxEditValue); + #endif + } + + tft.draw_edit_screen_buttons(); +} + +void TFT::draw_edit_screen_buttons() { + #if ENABLED(TOUCH_SCREEN) + add_control(BUTTON_DECREASE_X, BUTTON_DECREASE_Y, DECREASE, imgDecrease); + add_control(BUTTON_INCREASE_X, BUTTON_INCREASE_Y, INCREASE, imgIncrease); + add_control(BUTTON_CLICK_X, BUTTON_CLICK_Y, CLICK, imgConfirm); + #endif +} + +// The Select Screen presents a prompt and two "buttons" +void MenuItem_confirm::draw_select_screen(FSTR_P const yes, FSTR_P const no, const bool yesno, FSTR_P const pref, const char * const string/*=nullptr*/, FSTR_P const suff/*=nullptr*/) { + uint16_t line = 1; + + if (!string) line++; + + menu_line(line++); + tft_string.set(pref); + tft_string.trim(); + tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); + + if (string) { + menu_line(line++); + tft_string.set(string); + tft_string.trim(); + tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); + } + + if (suff) { + menu_line(line); + tft_string.set(suff); + tft_string.trim(); + tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); + } + #if ENABLED(TOUCH_SCREEN) + if (no) add_control(BUTTON_CANCEL_X, BUTTON_CANCEL_Y, CANCEL, imgCancel, true, yesno ? HALF(COLOR_CONTROL_CANCEL) : COLOR_CONTROL_CANCEL); + if (yes) add_control(BUTTON_CONFIRM_X, BUTTON_CONFIRM_Y, CONFIRM, imgConfirm, true, yesno ? COLOR_CONTROL_CONFIRM : HALF(COLOR_CONTROL_CONFIRM)); + #else + // Even without touch screen "no" and "yes" buttons are still need to be displayed + if (no) add_control(BUTTON_CANCEL_X, BUTTON_CANCEL_Y, NONE, imgCancel, true, yesno ? HALF(COLOR_CONTROL_CANCEL) : COLOR_CONTROL_CANCEL); + if (yes) add_control(BUTTON_CONFIRM_X, BUTTON_CONFIRM_Y, NONE, imgConfirm, true, yesno ? COLOR_CONTROL_CONFIRM : HALF(COLOR_CONTROL_CONFIRM)); + #endif +} + +#if ENABLED(ADVANCED_PAUSE_FEATURE) + + void MarlinUI::draw_hotend_status(const uint8_t row, const uint8_t extruder) { + #if ENABLED(TOUCH_SCREEN) + touch.clear(); + draw_menu_navigation = false; + touch.add_control(RESUME_CONTINUE, 0, 0, TFT_WIDTH, TFT_HEIGHT); + #endif + + menu_line(row); + tft_string.set(GET_TEXT(MSG_FILAMENT_CHANGE_NOZZLE)); + tft_string.add('E'); + tft_string.add((char)('1' + extruder)); + tft_string.add(' '); + tft_string.add(i16tostr3rj(thermalManager.wholeDegHotend(extruder))); + tft_string.add(LCD_STR_DEGREE); + tft_string.add(F(" / ")); + tft_string.add(i16tostr3rj(thermalManager.degTargetHotend(extruder))); + tft_string.add(LCD_STR_DEGREE); + tft_string.trim(); + tft.add_text(tft_string.center(TFT_WIDTH), MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); + } + +#endif // ADVANCED_PAUSE_FEATURE + +#if ENABLED(AUTO_BED_LEVELING_UBL) + + void MarlinUI::ubl_plot(const uint8_t x_plot, const uint8_t y_plot) { + + tft.canvas(UBL_GRID_X, UBL_GRID_Y, UBL_GRID_W, UBL_GRID_H); + tft.set_background(COLOR_BACKGROUND); + tft.add_rectangle(0, 0, UBL_GRID_W, UBL_GRID_H, COLOR_WHITE); + + for (uint16_t x = 0; x < (GRID_MAX_POINTS_X); x++) + for (uint16_t y = 0; y < (GRID_MAX_POINTS_Y); y++) + if (position_is_reachable({ bedlevel.get_mesh_x(x), bedlevel.get_mesh_y(y) })) + tft.add_bar(1 + (x * 2 + 1) * (UBL_GRID_W - 4) / (GRID_MAX_POINTS_X) / 2, UBL_GRID_H - 3 - ((y * 2 + 1) * (UBL_GRID_H - 4) / (GRID_MAX_POINTS_Y) / 2), 2, 2, COLOR_UBL); + + tft.add_rectangle((x_plot * 2 + 1) * (UBL_GRID_W - 4) / (GRID_MAX_POINTS_X) / 2 - 1, UBL_GRID_H - 5 - ((y_plot * 2 + 1) * (UBL_GRID_H - 4) / (GRID_MAX_POINTS_Y) / 2), 6, 6, COLOR_UBL); + + const xy_pos_t pos = { bedlevel.get_mesh_x(x_plot), bedlevel.get_mesh_y(y_plot) }, + lpos = pos.asLogical(); + + tft.canvas(UBL_COORDINATES_X, UBL_X_COORDINATE_Y, UBL_COORDINATES_W, MENU_ITEM_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft_string.set(X_LBL); + tft.add_text(0, MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); + tft_string.set(ftostr52(lpos.x)); + tft_string.trim(); + tft.add_text(UBL_COORDINATES_W - tft_string.width(), MENU_TEXT_Y, COLOR_MENU_VALUE, tft_string); + + tft.canvas(UBL_COORDINATES_X, UBL_Y_COORDINATE_Y, UBL_COORDINATES_W, MENU_ITEM_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft_string.set(Y_LBL); + tft.add_text(0, MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); + tft_string.set(ftostr52(lpos.y)); + tft_string.trim(); + tft.add_text(UBL_COORDINATES_W - tft_string.width(), MENU_TEXT_Y, COLOR_MENU_VALUE, tft_string); + + tft.canvas(UBL_COORDINATES_X, UBL_Z_COORDINATE_Y, UBL_COORDINATES_W, MENU_ITEM_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft_string.set(Z_LBL); + tft.add_text(0, MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); + tft_string.set(isnan(bedlevel.z_values[x_plot][y_plot]) ? "-----" : ftostr43sign(bedlevel.z_values[x_plot][y_plot])); + tft_string.trim(); + tft.add_text(UBL_COORDINATES_W - tft_string.width(), MENU_TEXT_Y, COLOR_MENU_VALUE, tft_string); + + #define UBL_TEXT_AREA_W (2 * UBL_CONTROL_OFFSET + 32) + + tft.canvas(UBL_GRID_X + (UBL_GRID_W - UBL_TEXT_AREA_W) / 2, UBL_GRID_Y + UBL_GRID_H + UBL_CONTROL_OFFSET + 16 - MENU_ITEM_HEIGHT / 2, UBL_TEXT_AREA_W, MENU_ITEM_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft_string.set(ui8tostr3rj(x_plot)); + tft_string.trim(); + tft.add_text(tft_string.center(UBL_TEXT_AREA_W), MENU_TEXT_Y, COLOR_MENU_VALUE, tft_string); + + tft.canvas(UBL_GRID_X + UBL_GRID_W + UBL_CONTROL_OFFSET + 16 - UBL_TEXT_AREA_W / 2, UBL_GRID_Y + (UBL_GRID_H - MENU_ITEM_HEIGHT) / 2, UBL_TEXT_AREA_W, MENU_ITEM_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft_string.set(ui8tostr3rj(y_plot)); + tft_string.trim(); + tft.add_text(tft_string.center(UBL_TEXT_AREA_W), MENU_TEXT_Y, COLOR_MENU_VALUE, tft_string); + + #if ENABLED(TOUCH_SCREEN) + touch.clear(); + draw_menu_navigation = false; + add_control(UBL_GRID_X + UBL_GRID_W + UBL_CONTROL_OFFSET, UBL_GRID_Y + UBL_CONTROL_OFFSET, UBL, (ENCODER_STEPS_PER_MENU_ITEM) * (GRID_MAX_POINTS_X), imgUp); + add_control(UBL_GRID_X + UBL_GRID_W + UBL_CONTROL_OFFSET, UBL_GRID_Y + UBL_GRID_H - UBL_CONTROL_OFFSET - 32, UBL, -(ENCODER_STEPS_PER_MENU_ITEM) * (GRID_MAX_POINTS_X), imgDown); + add_control(UBL_GRID_X + UBL_CONTROL_OFFSET, UBL_GRID_Y + UBL_GRID_H + UBL_CONTROL_OFFSET, UBL, -(ENCODER_STEPS_PER_MENU_ITEM), imgLeft); + add_control(UBL_GRID_X + UBL_GRID_W - UBL_CONTROL_OFFSET - 32, UBL_GRID_Y + UBL_GRID_H + UBL_CONTROL_OFFSET, UBL, ENCODER_STEPS_PER_MENU_ITEM, imgRight); + + add_control(UBL_ACTION_X, UBL_ACTION_Y, CLICK, imgLeveling); + add_control(NAVIGATION_BACK_X, NAVIGATION_BACK_Y, BACK, imgBack); + #endif + } +#endif // AUTO_BED_LEVELING_UBL + +#endif // TFT_COLOR_UI diff --git a/Marlin/src/lcd/tft/ui_common.cpp b/Marlin/src/lcd/tft/ui_common.cpp index 962daadb19c5..09364d846ba6 100644 --- a/Marlin/src/lcd/tft/ui_common.cpp +++ b/Marlin/src/lcd/tft/ui_common.cpp @@ -28,15 +28,166 @@ #include "../lcdprint.h" #include "../../libs/numtostr.h" #include "../menu/menu.h" +#include "../../gcode/queue.h" +#include "../../module/temperature.h" +#include "../../module/planner.h" +#include "../../module/probe.h" -void menu_pause_option(); +#if ENABLED(BABYSTEP_ZPROBE_OFFSET) + #include "../../feature/babystep.h" +#endif +motionAxisState_t motionAxisState; static xy_uint_t cursor; - #if ENABLED(TOUCH_SCREEN) bool draw_menu_navigation = false; #endif +void menu_pause_option(); + +void quick_feedback() { + #if HAS_CHIRP + ui.chirp(); // Buzz and wait. Is the delay needed for buttons to settle? + #if ALL(HAS_MARLINUI_MENU, HAS_BEEPER) + for (int8_t i = 5; i--;) { buzzer.tick(); delay(2); } + #elif HAS_MARLINUI_MENU + delay(10); + #endif + #endif +} + +void disable_steppers() { + quick_feedback(); + queue.inject(F("M84")); +} + +void moveAxis(const AxisEnum axis, const int8_t direction) { + quick_feedback(); + + #if HAS_EXTRUDERS + if (axis == E_AXIS && thermalManager.tooColdToExtrude(motionAxisState.e_selection)) { + drawMessage(F("Too cold")); + return; + } + #endif + + const float diff = motionAxisState.currentStepSize * direction; + + #if HAS_BED_PROBE + + if (axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE) { + #if ENABLED(BABYSTEP_ZPROBE_OFFSET) + const int16_t babystep_increment = direction * BABYSTEP_SIZE_Z; + const bool do_probe = DISABLED(BABYSTEP_HOTEND_Z_OFFSET) || active_extruder == 0; + const float bsDiff = planner.mm_per_step[Z_AXIS] * babystep_increment, + new_probe_offset = probe.offset.z + bsDiff, + new_offs = TERN(BABYSTEP_HOTEND_Z_OFFSET + , do_probe ? new_probe_offset : hotend_offset[active_extruder].z - bsDiff + , new_probe_offset + ); + if (WITHIN(new_offs, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX)) { + babystep.add_steps(Z_AXIS, babystep_increment); + if (do_probe) + probe.offset.z = new_offs; + else + TERN(BABYSTEP_HOTEND_Z_OFFSET, hotend_offset[active_extruder].z = new_offs, NOOP); + drawMessage_P(NUL_STR); // Clear the error + drawAxisValue(axis); + } + else + drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); + + #else + // Only change probe.offset.z + probe.offset.z += diff; + if (direction < 0 && current_position.z < Z_PROBE_OFFSET_RANGE_MIN) { + current_position.z = Z_PROBE_OFFSET_RANGE_MIN; + drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); + } + else if (direction > 0 && current_position.z > Z_PROBE_OFFSET_RANGE_MAX) { + current_position.z = Z_PROBE_OFFSET_RANGE_MAX; + drawMessage(GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS)); + } + else + drawMessage_P(NUL_STR); // Clear the error + + drawAxisValue(axis); + #endif + } + + #endif // HAS_BED_PROBE + + if (!ui.manual_move.processing) { + // Get motion limit from software endstops, if any + float min, max; + soft_endstop.get_manual_axis_limits(axis, min, max); + + // Delta limits XY based on the current offset from center + // This assumes the center is 0,0 + #if ENABLED(DELTA) + if (axis != Z_AXIS && TERN1(HAS_EXTRUDERS, axis != E_AXIS)) { + max = SQRT(sq(float(PRINTABLE_RADIUS)) - sq(current_position[Y_AXIS - axis])); // (Y_AXIS - axis) == the other axis + min = -max; + } + #endif + + // Get the new position + const bool limited = ui.manual_move.apply_diff(axis, diff, min, max); + #if IS_KINEMATIC + UNUSED(limited); + #else + FSTR_P const msg = limited ? GET_TEXT_F(MSG_LCD_SOFT_ENDSTOPS) : FPSTR(NUL_STR); + drawMessage(msg); + #endif + + ui.manual_move.soon(axis OPTARG(MULTI_E_MANUAL, motionAxisState.e_selection)); + } + + drawAxisValue(axis); +} + +#if ENABLED(TOUCH_SCREEN) + + void do_home() { + quick_feedback(); + drawMessage(GET_TEXT_F(MSG_LEVEL_BED_HOMING)); + queue.inject_P(G28_STR); + // Disable touch until home is done + touch.disable(); + TERN_(HAS_EXTRUDERS, drawAxisValue(E_AXIS)); + TERN_(HAS_X_AXIS, drawAxisValue(X_AXIS)); + TERN_(HAS_Y_AXIS, drawAxisValue(Y_AXIS)); + TERN_(HAS_Z_AXIS, drawAxisValue(Z_AXIS)); + } + + void step_size() { + motionAxisState.currentStepSize = motionAxisState.currentStepSize / 10.0; + if (motionAxisState.currentStepSize < 0.0015) motionAxisState.currentStepSize = 10.0; + quick_feedback(); + drawCurStepValue(); + } + + #if HAS_EXTRUDERS + void e_select() { + if (++motionAxisState.e_selection >= EXTRUDERS) + motionAxisState.e_selection = 0; + quick_feedback(); + drawCurESelection(); + drawAxisValue(E_AXIS); + } + #endif + + #if HAS_BED_PROBE + void z_select() { + motionAxisState.z_selection *= -1; + quick_feedback(); + drawCurZSelection(); + drawAxisValue(Z_AXIS); + } + #endif + +#endif + #if HAS_TOUCH_SLEEP bool lcd_sleep_task() { @@ -56,12 +207,16 @@ static xy_uint_t cursor; return false; } -#endif +#endif // HAS_TOUCH_SLEEP + +void text_line(const uint16_t y, uint16_t color) { + tft.canvas(0, y, TFT_WIDTH, MENU_ITEM_HEIGHT); + tft.set_background(color); +} void menu_line(const uint8_t row, uint16_t color) { cursor.set(0, row); - tft.canvas(0, TFT_TOP_LINE_Y + cursor.y * MENU_LINE_HEIGHT, TFT_WIDTH, MENU_ITEM_HEIGHT); - tft.set_background(color); + text_line(MENU_TOP_LINE_Y + cursor.y * MENU_LINE_HEIGHT, color); } void menu_item(const uint8_t row, bool sel ) { @@ -75,10 +230,42 @@ void menu_item(const uint8_t row, bool sel ) { menu_line(row, sel ? COLOR_SELECTION_BG : COLOR_BACKGROUND); #if ENABLED(TOUCH_SCREEN) const TouchControlType tct = TERN(SINGLE_TOUCH_NAVIGATION, true, sel) ? MENU_CLICK : MENU_ITEM; - touch.add_control(tct, 0, TFT_TOP_LINE_Y + row * MENU_LINE_HEIGHT, TFT_WIDTH, MENU_ITEM_HEIGHT, encoderTopLine + row); + touch.add_control(tct, 0, MENU_TOP_LINE_Y + row * MENU_LINE_HEIGHT, TFT_WIDTH, MENU_ITEM_HEIGHT, encoderTopLine + row); + #endif +} + +void add_control(uint16_t x, uint16_t y, TouchControlType control_type, intptr_t data, MarlinImage image, bool is_enabled, uint16_t color_enabled, uint16_t color_disabled) { + const uint16_t width = images[image].width, height = images[image].height; + tft.canvas(x, y, width, height); + tft.add_image(0, 0, image, is_enabled ? color_enabled : color_disabled); + #if ENABLED(TOUCH_SCREEN) + if (is_enabled) touch.add_control(control_type, x, y, width, height, data); #endif } +void drawBtn(const int x, const int y, const char *label, intptr_t data, const MarlinImage btnimg, const MarlinImage img, uint16_t bgColor, const bool enabled) { + const uint16_t width = images[btnimg].width, + height = images[btnimg].height; + + if (!enabled) bgColor = COLOR_CONTROL_DISABLED; + + tft.canvas(x, y, width, height); + tft.set_background(COLOR_BACKGROUND); + tft.add_image(0, 0, btnimg, bgColor, COLOR_BACKGROUND, COLOR_DARKGREY); + + // TODO: Make an add_text() taking a font arg + if (label) { + tft_string.set(label); + tft_string.trim(); + tft.add_text(tft_string.center(width), height / 2 - tft_string.font_height() / 2, bgColor, tft_string); + } + else + tft.add_image(0, 0, img, bgColor, COLOR_BACKGROUND, COLOR_DARKGREY); + + TERN_(TOUCH_SCREEN, if (enabled) touch.add_control(BUTTON, x, y, width, height, data)); +} + + // // lcdprint.h functions // @@ -88,7 +275,7 @@ void menu_item(const uint8_t row, bool sel ) { void lcd_gotopixel(const uint16_t x, const uint16_t y) { if (x >= TFT_WIDTH) return; cursor.set(x / (TFT_COL_WIDTH), y / MENU_LINE_HEIGHT); - tft.canvas(x, TFT_TOP_LINE_Y + y, (TFT_WIDTH) - x, MENU_ITEM_HEIGHT); + tft.canvas(x, MENU_TOP_LINE_Y + y, (TFT_WIDTH) - x, MENU_ITEM_HEIGHT); tft.set_background(COLOR_BACKGROUND); } @@ -99,7 +286,7 @@ void lcd_moveto(const lcd_uint_t col, const lcd_uint_t row) { int lcd_put_lchar_max(const lchar_t &c, const pixel_len_t max_length) { if (max_length < 1) return 0; tft_string.set(c); - tft.add_text(MENU_TEXT_X_OFFSET, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); + tft.add_text(MENU_TEXT_X, MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); lcd_gotopixel((cursor.x + 1) * (TFT_COL_WIDTH) + tft_string.width(), cursor.y * MENU_LINE_HEIGHT); return tft_string.width(); } @@ -109,7 +296,7 @@ int lcd_put_u8str_max_P(PGM_P utf8_pstr, const pixel_len_t max_length) { tft_string.set(utf8_pstr); tft_string.trim(); tft_string.truncate(max_length); - tft.add_text(MENU_TEXT_X_OFFSET, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); + tft.add_text(MENU_TEXT_X, MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); lcd_gotopixel((cursor.x + 1) * (TFT_COL_WIDTH) + tft_string.width(), cursor.y * MENU_LINE_HEIGHT); return tft_string.width(); } @@ -139,7 +326,7 @@ void MenuItemBase::_draw(const bool sel, const uint8_t row, FSTR_P const fstr, c case 0x02: image = imgDirectory; break; // LCD_STR_FOLDER } - uint8_t offset = MENU_TEXT_X_OFFSET; + uint8_t offset = MENU_TEXT_X; if (image != noImage) { string++; offset = MENU_ITEM_ICON_SPACE; @@ -148,7 +335,7 @@ void MenuItemBase::_draw(const bool sel, const uint8_t row, FSTR_P const fstr, c tft_string.set(string, itemIndex, itemStringC, itemStringF); - tft.add_text(offset, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); + tft.add_text(offset, MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); } // Draw a menu item with a (potentially) editable value @@ -156,10 +343,10 @@ void MenuEditItemBase::draw(const bool sel, const uint8_t row, FSTR_P const fstr menu_item(row, sel); tft_string.set(fstr, itemIndex, itemStringC, itemStringF); - tft.add_text(MENU_TEXT_X_OFFSET, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, tft_string); + tft.add_text(MENU_TEXT_X, MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); if (inStr) { tft_string.set(inStr); - tft.add_text(TFT_WIDTH - MENU_TEXT_X_OFFSET - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_MENU_VALUE, tft_string); + tft.add_text(TFT_WIDTH - MENU_TEXT_X - tft_string.width(), MENU_TEXT_Y, COLOR_MENU_VALUE, tft_string); } } @@ -172,7 +359,7 @@ void MenuItem_static::draw(const uint8_t row, FSTR_P const fstr, const uint8_t s const bool center = bool(style & SS_CENTER), full = bool(style & SS_FULL); if (!full || !vstr) { if (vstr) tft_string.add(vstr); - tft.add_text(center ? tft_string.center(TFT_WIDTH) : 0, MENU_TEXT_Y_OFFSET, COLOR_YELLOW, tft_string); + tft.add_text(center ? tft_string.center(TFT_WIDTH) : 0, MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); return; } @@ -180,12 +367,12 @@ void MenuItem_static::draw(const uint8_t row, FSTR_P const fstr, const uint8_t s if (*vstr == ':') { tft_string.add(':'); vstr++; } // Left-justified label - tft.add_text(0, MENU_TEXT_Y_OFFSET, COLOR_YELLOW, tft_string); + tft.add_text(0, MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); // Right-justified value, after spaces while (*vstr == ' ') vstr++; tft_string.set(vstr); - tft.add_text(TFT_WIDTH - 1 - tft_string.width(), MENU_TEXT_Y_OFFSET, COLOR_YELLOW, tft_string); + tft.add_text(TFT_WIDTH - 1 - tft_string.width(), MENU_TEXT_Y, COLOR_MENU_TEXT, tft_string); } #if HAS_MEDIA @@ -193,8 +380,8 @@ void MenuItem_static::draw(const uint8_t row, FSTR_P const fstr, const uint8_t s void MenuItem_sdbase::draw(const bool sel, const uint8_t row, FSTR_P const, CardReader &theCard, const bool isDir) { menu_item(row, sel); if (isDir) tft.add_image(MENU_ITEM_ICON_X, MENU_ITEM_ICON_Y, imgDirectory, COLOR_MENU_TEXT, sel ? COLOR_SELECTION_BG : COLOR_BACKGROUND); - uint8_t maxlen = (MENU_ITEM_HEIGHT) - (MENU_TEXT_Y_OFFSET) + 1; - tft.add_text(MENU_ITEM_ICON_SPACE, MENU_TEXT_Y_OFFSET, COLOR_MENU_TEXT, ui.scrolled_filename(theCard, maxlen, row, sel)); + uint8_t maxlen = (MENU_ITEM_HEIGHT) - (MENU_TEXT_Y) + 1; + tft.add_text(MENU_ITEM_ICON_SPACE, MENU_TEXT_Y, COLOR_MENU_TEXT, ui.scrolled_filename(theCard, maxlen, row, sel)); } #endif diff --git a/Marlin/src/lcd/tft/ui_common.h b/Marlin/src/lcd/tft/ui_common.h index 2a81ee2114b3..592bf3184e6e 100644 --- a/Marlin/src/lcd/tft/ui_common.h +++ b/Marlin/src/lcd/tft/ui_common.h @@ -33,39 +33,143 @@ #if ENABLED(TOUCH_SCREEN) #include "touch.h" extern bool draw_menu_navigation; +#else + // add_control() function is used to display encoder-controlled elements + enum TouchControlType : uint16_t { + NONE = 0x0000, + }; #endif -#if HAS_UI_320x240 - #include "ui_320x240.h" -#elif HAS_UI_480x320 || HAS_UI_480x272 - #include "ui_480x320.h" -#elif HAS_UI_1024x600 - #include "ui_1024x600.h" -#else - #error "Unsupported display resolution!" +#define UI_INCL_(W, H) STRINGIFY_(ui_##W##x##H.h) +#define UI_INCL(W, H) UI_INCL_(W, H) + +#include "ui_theme.h" +#include UI_INCL(TFT_WIDTH, TFT_HEIGHT) +#include "tft_font.h" +#include "tft_color.h" + +// Common Implementation +#define Z_SELECTION_Z 1 +#define Z_SELECTION_Z_PROBE -1 + +typedef struct { + #if HAS_X_AXIS + xy_int_t xValuePos; + #endif + #if HAS_Y_AXIS + xy_int_t yValuePos; + #endif + #if HAS_Z_AXIS + xy_int_t zValuePos, zTypePos; + int z_selection = Z_SELECTION_Z; + #endif + #if HAS_EXTRUDERS + xy_int_t eValuePos, eNamePos; + uint8_t e_selection = 0; + #endif + xy_int_t stepValuePos; + float currentStepSize = 10.0; + bool blocked = false; + char message[32]; +} motionAxisState_t; + +extern motionAxisState_t motionAxisState; + +void moveAxis(const AxisEnum axis, const int8_t direction); + +#if HAS_EXTRUDERS + inline void e_plus() { moveAxis(E_AXIS, +1); } + inline void e_minus() { moveAxis(E_AXIS, -1); } +#endif +#if HAS_X_AXIS + inline void x_minus() { moveAxis(X_AXIS, -1); } + inline void x_plus() { moveAxis(X_AXIS, +1); } +#endif +#if HAS_Y_AXIS + inline void y_plus() { moveAxis(Y_AXIS, +1); } + inline void y_minus() { moveAxis(Y_AXIS, -1); } +#endif +#if HAS_Z_AXIS + inline void z_plus() { moveAxis(Z_AXIS, +1); } + inline void z_minus() { moveAxis(Z_AXIS, -1); } +#endif +void quick_feedback(); +void disable_steppers(); +#if ENABLED(TOUCH_SCREEN) + void do_home(); + void step_size(); + #if HAS_BED_PROBE + void z_select(); + #endif + #if HAS_EXTRUDERS + void e_select(); + #endif +#endif +#if HAS_TOUCH_SLEEP + bool lcd_sleep_task(); #endif void draw_heater_status(uint16_t x, uint16_t y, const int8_t Heater); void draw_fan_status(uint16_t x, uint16_t y, const bool blink); +void text_line(const uint16_t y, uint16_t color=COLOR_BACKGROUND); void menu_line(const uint8_t row, uint16_t color=COLOR_BACKGROUND); void menu_item(const uint8_t row, bool sel = false); -#if HAS_TOUCH_SLEEP - bool lcd_sleep_task(); +typedef void (*screenFunc_t)(); +void add_control( + uint16_t x, uint16_t y, TouchControlType control_type, intptr_t data, MarlinImage image, bool is_enabled=true, + uint16_t color_enabled=COLOR_CONTROL_ENABLED, uint16_t color_disabled=COLOR_CONTROL_DISABLED +); +inline void add_control( + uint16_t x, uint16_t y, TouchControlType control_type, MarlinImage image, + bool is_enabled=true, uint16_t color_enabled=COLOR_CONTROL_ENABLED, uint16_t color_disabled=COLOR_CONTROL_DISABLED +) { + add_control(x, y, control_type, 0, image, is_enabled, color_enabled, color_disabled); +} +#if ENABLED(TOUCH_SCREEN) + inline void add_control( + uint16_t x, uint16_t y, TouchControlType control_type, screenFunc_t action, MarlinImage image, bool is_enabled=true, + uint16_t color_enabled=COLOR_CONTROL_ENABLED, uint16_t color_disabled=COLOR_CONTROL_DISABLED + ) { + add_control(x, y, control_type, (intptr_t)action, image, is_enabled, color_enabled, color_disabled); + } + inline void add_control( + uint16_t x, uint16_t y, screenFunc_t screen, MarlinImage image, bool is_enabled=true, + uint16_t color_enabled=COLOR_CONTROL_ENABLED, uint16_t color_disabled=COLOR_CONTROL_DISABLED + ) { + add_control(x, y, MENU_SCREEN, (intptr_t)screen, image, is_enabled, color_enabled, color_disabled); + } #endif +void drawBtn(const int x, const int y, const char *label, intptr_t data, const MarlinImage btnimg, const MarlinImage img, uint16_t bgColor, const bool enabled=true); +void drawBtn(const int x, const int y, const char *label, intptr_t data, const MarlinImage img, uint16_t bgColor, const bool enabled=true); +inline void drawBtn(const int x, const int y, const char *label, void (*handler)(), const MarlinImage img, uint16_t bgColor, const bool enabled=true) { + drawBtn(x, y, label, intptr_t(handler), img, bgColor, enabled); +} + +// Custom Implementation +void drawMessage_P(PGM_P const msg); +inline void drawMessage(FSTR_P const fmsg) { drawMessage_P(FTOP(fmsg)); } + +void drawAxisValue(const AxisEnum axis); +void drawCurZSelection(); +void drawCurESelection(); +void drawCurStepValue(); + #define ABSOLUTE_ZERO -273.15 -enum { - OPTITEM(HAS_EXTRUDERS, ITEM_E0) - OPTITEM(HAS_MULTI_HOTEND, ITEM_E1) - #if HOTENDS > 2 - ITEM_E2, - #endif - OPTITEM(HAS_HEATED_BED, ITEM_BED) - OPTITEM(HAS_TEMP_CHAMBER, ITEM_CHAMBER) - OPTITEM(HAS_TEMP_COOLER, ITEM_COOLER) - OPTITEM(HAS_FAN, ITEM_FAN) - ITEMS_COUNT -}; +#if DISABLED(CUSTOM_STATUS_SCREEN_ITEMS_ORDER) + enum { + OPTITEM(HAS_EXTRUDERS, ITEM_E0) + OPTITEM(HAS_MULTI_HOTEND, ITEM_E1) + #if HOTENDS > 2 + ITEM_E2, + #endif + OPTITEM(HAS_HEATED_BED, ITEM_BED) + OPTITEM(HAS_TEMP_CHAMBER, ITEM_CHAMBER) + OPTITEM(HAS_TEMP_COOLER, ITEM_COOLER) + OPTITEM(HAS_FAN, ITEM_FAN) + ITEMS_COUNT + }; +#endif diff --git a/Marlin/src/lcd/tft/ui_move_axis_screen_1024.cpp b/Marlin/src/lcd/tft/ui_move_axis_screen_1024.cpp new file mode 100644 index 000000000000..a68752c9ddce --- /dev/null +++ b/Marlin/src/lcd/tft/ui_move_axis_screen_1024.cpp @@ -0,0 +1,265 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../inc/MarlinConfigPre.h" + +#if HAS_UI_1024x600 + +#include "ui_common.h" + +#if ENABLED(MOVE_AXIS_SCREEN) + +#include "../marlinui.h" +#include "../menu/menu.h" +#include "../../libs/numtostr.h" + +#include "../../sd/cardreader.h" +#include "../../module/temperature.h" +#include "../../module/printcounter.h" +#include "../../module/planner.h" +#include "../../module/motion.h" + +#if ENABLED(BABYSTEP_ZPROBE_OFFSET) + #include "../../feature/babystep.h" +#endif + +#if HAS_BED_PROBE + #include "../../module/probe.h" +#endif + +#define BTN_WIDTH 64 +#define BTN_HEIGHT 52 +#define X_MARGIN 20 +#define Y_MARGIN 15 + +#define CUR_STEP_VALUE_WIDTH 104 +void drawCurStepValue() { + tft_string.set(ftostr52sp(motionAxisState.currentStepSize)); + tft_string.add(F("mm")); + tft.canvas(motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft.add_text(tft_string.center(CUR_STEP_VALUE_WIDTH), 0, COLOR_AXIS_HOMED, tft_string); +} + +#if HAS_Z_AXIS + void drawCurZSelection() { + tft_string.set('Z'); + tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), 34); + tft.set_background(COLOR_BACKGROUND); + tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + + tft.queue.sync(); + + tft_string.set(F("Offset")); + tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + 34, tft_string.width(), 34); + tft.set_background(COLOR_BACKGROUND); + #if HAS_BED_PROBE + if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) + tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + #endif + } +#endif + +#if HAS_EXTRUDERS + void drawCurESelection() { + tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft_string.set('E'); + tft.add_text(0, 0, E_BTN_COLOR, tft_string); + tft.add_text(tft_string.width(), 0, E_BTN_COLOR, ui8tostr3rj(motionAxisState.e_selection)); + } +#endif + +void drawMessage_P(PGM_P const msg) { + tft.canvas(X_MARGIN, TFT_HEIGHT - Y_MARGIN - 34, TFT_HEIGHT / 2, 34); + tft.set_background(COLOR_BACKGROUND); + tft.add_text(0, 0, COLOR_STATUS_MESSAGE, msg); +} + +void drawAxisValue(const AxisEnum axis) { + const float value = ( + TERN_(HAS_BED_PROBE, axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE ? probe.offset.z :) + ui.manual_move.axis_value(axis) + ); + xy_int_t pos; + uint16_t color; + switch (axis) { + #if HAS_X_AXIS + case X_AXIS: pos = motionAxisState.xValuePos; color = X_BTN_COLOR; break; + #endif + #if HAS_Y_AXIS + case Y_AXIS: pos = motionAxisState.yValuePos; color = Y_BTN_COLOR; break; + #endif + #if HAS_Z_AXIS + case Z_AXIS: pos = motionAxisState.zValuePos; color = Z_BTN_COLOR; break; + #endif + #if HAS_EXTRUDERS + case E_AXIS: pos = motionAxisState.eValuePos; color = E_BTN_COLOR; break; + #endif + default: return; + } + tft.canvas(pos.x, pos.y, BTN_WIDTH + X_MARGIN, BTN_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft_string.set(ftostr52sp(value)); + tft.add_text(0, 0, color, tft_string); +} + +void drawBtn(const int x, const int y, const char *label, intptr_t data, const MarlinImage img, uint16_t bgColor, const bool enabled/*=true*/) { + drawBtn(x, y, label, data, imgBtn52Rounded, img, bgColor, enabled); +} + +void MarlinUI::move_axis_screen() { + // Reset + defer_status_screen(true); + motionAxisState.blocked = false; + TERN_(TOUCH_SCREEN, touch.enable()); + + ui.clear_lcd(); + + TERN_(TOUCH_SCREEN, touch.clear()); + + const bool busy = printingIsActive(); + + // Babysteps during printing? Select babystep for Z probe offset + #if ENABLED(BABYSTEP_ZPROBE_OFFSET) + if (busy) motionAxisState.z_selection = Z_SELECTION_Z_PROBE; + #endif + + /************************************************************************** + * Row 1: | [E-] | [Y-] | Current Y | [Z+] | + *************************************************************************/ + + int x = X_MARGIN, y = Y_MARGIN, spacing = 0; + + TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", e_plus, imgUp, E_BTN_COLOR, !busy)); + + spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; + x += BTN_WIDTH + spacing; + + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", y_plus, imgUp, Y_BTN_COLOR, !busy)); + + x += BTN_WIDTH; + + // Current Y + #if HAS_Y_AXIS + motionAxisState.yValuePos.set(x + 2, y); + drawAxisValue(Y_AXIS); + #endif + + x += spacing; + #if HAS_Z_AXIS + drawBtn(x, y, "Z+", z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have baby step + #endif + + /************************************************************************** + * Row 2: | "Ex" | [X-] | [Home] | [X+] | "Z" | + *************************************************************************/ + + y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; + x = X_MARGIN; + spacing = (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; + + #if HAS_EXTRUDERS + motionAxisState.eNamePos.set(x, y); + drawCurESelection(); + TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, e_select)); + #endif + + x += BTN_WIDTH + spacing; + + TERN_(HAS_X_AXIS, drawBtn(x, y, "X-", x_minus, imgLeft, X_BTN_COLOR, !busy)); + + x += BTN_WIDTH + spacing; + + #if ALL(HAS_X_AXIS, TOUCH_SCREEN) + add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, do_home, imgHome, !busy); + #endif + + x += BTN_WIDTH + spacing; + const uint16_t xplus_x = x; + + TERN_(HAS_X_AXIS, drawBtn(x, y, "X+", x_plus, imgRight, X_BTN_COLOR, !busy)); + + x += BTN_WIDTH + spacing; + + #if HAS_Z_AXIS + motionAxisState.zTypePos.set(x, y); + drawCurZSelection(); + #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) + if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, z_select); + #endif + #endif + + /************************************************************************** + * Row 3: | [E-] | Current X | [Y-] | [Z-] | + *************************************************************************/ + + y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; + x = X_MARGIN; + spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; + + #if HAS_EXTRUDERS + drawBtn(x, y, "E-", e_minus, imgDown, E_BTN_COLOR, !busy); + motionAxisState.eValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(E_AXIS); + #endif + + // Current X + #if HAS_X_AXIS + motionAxisState.xValuePos.set(BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4, y - 10); + drawAxisValue(X_AXIS); + #endif + + x += BTN_WIDTH + spacing; + + // Current Y + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", y_minus, imgDown, Y_BTN_COLOR, !busy)); + + x += BTN_WIDTH + spacing; + + // Current Z + #if HAS_Z_AXIS + drawBtn(x, y, "Z-", z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have babystep + motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(Z_AXIS); + #endif + + /************************************************************************** + * Row 4: | Step Size | [Disable Steppers] | [Back] | + *************************************************************************/ + + y = TFT_HEIGHT - Y_MARGIN - 32; + x = TFT_WIDTH / 2 - CUR_STEP_VALUE_WIDTH / 2; + motionAxisState.stepValuePos.set(x, y); + if (!busy) { + drawCurStepValue(); + TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, x, y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, step_size)); + } + + // Aligned with x+ + drawBtn(xplus_x, TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT, "off", disable_steppers, imgCancel, COLOR_WHITE, !busy); + + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); +} + +#endif // MOVE_AXIS_SCREEN +#endif // HAS_UI_1024x600 diff --git a/Marlin/src/lcd/tft/ui_move_axis_screen_320.cpp b/Marlin/src/lcd/tft/ui_move_axis_screen_320.cpp new file mode 100644 index 000000000000..54a65c17bf4b --- /dev/null +++ b/Marlin/src/lcd/tft/ui_move_axis_screen_320.cpp @@ -0,0 +1,399 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../inc/MarlinConfigPre.h" + +#if HAS_UI_320x240 + +#include "ui_common.h" + +#if ENABLED(MOVE_AXIS_SCREEN) + +#include "../marlinui.h" +#include "../menu/menu.h" +#include "../../libs/numtostr.h" + +#include "../../sd/cardreader.h" +#include "../../module/temperature.h" +#include "../../module/printcounter.h" +#include "../../module/planner.h" +#include "../../module/motion.h" + +#if ENABLED(BABYSTEP_ZPROBE_OFFSET) + #include "../../feature/babystep.h" +#endif + +#if HAS_BED_PROBE + #include "../../module/probe.h" +#endif + +#define BTN_WIDTH 48 +#define BTN_HEIGHT 39 +#define X_MARGIN 15 +#define Y_MARGIN 11 + +#define CUR_STEP_VALUE_WIDTH 38 +void drawCurStepValue() { + tft_string.set(ftostr52sp(motionAxisState.currentStepSize)); + tft.canvas(motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, 20); + tft.set_background(COLOR_BACKGROUND); + tft.add_text(CUR_STEP_VALUE_WIDTH - tft_string.width(), 0, COLOR_AXIS_HOMED, tft_string); + + tft.queue.sync(); + + tft_string.set(F("mm")); + tft.canvas(motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y + 20, CUR_STEP_VALUE_WIDTH, 20); + tft.set_background(COLOR_BACKGROUND); + tft.add_text(CUR_STEP_VALUE_WIDTH - tft_string.width(), 0, COLOR_AXIS_HOMED, tft_string); +} + +#if HAS_Z_AXIS + void drawCurZSelection() { + tft_string.set('Z'); + tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), 20); + tft.set_background(COLOR_BACKGROUND); + tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + + tft.queue.sync(); + + tft_string.set(F("Offset")); + tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + 34, tft_string.width(), 20); + tft.set_background(COLOR_BACKGROUND); + #if HAS_BED_PROBE + if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) + tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + #endif + } +#endif + +#if HAS_EXTRUDERS + void drawCurESelection() { + tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft_string.set('E'); + tft.add_text(0, 0, E_BTN_COLOR, tft_string); + tft.add_text(tft_string.width(), 0, E_BTN_COLOR, ui8tostr3rj(motionAxisState.e_selection)); + } +#endif + +void drawMessage_P(PGM_P const msg) { + tft.canvas(X_MARGIN, + #if ENABLED(TFT_COLOR_UI_PORTRAIT) + TFT_HEIGHT - 2 * BTN_HEIGHT, TFT_WIDTH - X_MARGIN + #else + TFT_HEIGHT - Y_MARGIN - 29, (TFT_WIDTH / 2) - (BTN_WIDTH / 2) - X_MARGIN + #endif + , FONT_LINE_HEIGHT + ); + tft.set_background(COLOR_BACKGROUND); + tft.add_text(0, 0, COLOR_STATUS_MESSAGE, msg); +} + +void drawAxisValue(const AxisEnum axis) { + const float value = ( + TERN_(HAS_BED_PROBE, axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE ? probe.offset.z :) + ui.manual_move.axis_value(axis) + ); + xy_int_t pos; + uint16_t color; + switch (axis) { + #if HAS_X_AXIS + case X_AXIS: pos = motionAxisState.xValuePos; color = X_BTN_COLOR; break; + #endif + #if HAS_Y_AXIS + case Y_AXIS: pos = motionAxisState.yValuePos; color = Y_BTN_COLOR; break; + #endif + #if HAS_Z_AXIS + case Z_AXIS: pos = motionAxisState.zValuePos; color = Z_BTN_COLOR; break; + #endif + #if HAS_EXTRUDERS + case E_AXIS: pos = motionAxisState.eValuePos; color = E_BTN_COLOR; break; + #endif + default: return; + } + tft.canvas(pos.x, pos.y, BTN_WIDTH + X_MARGIN, FONT_LINE_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft_string.set(ftostr52sp(value)); + tft.add_text(0, 0, color, tft_string); +} + +void drawBtn(const int x, const int y, const char *label, intptr_t data, const MarlinImage img, uint16_t bgColor, const bool enabled/*=true*/) { + drawBtn(x, y, label, data, imgBtn39Rounded, img, bgColor, enabled); +} + +void MarlinUI::move_axis_screen() { + // Reset + defer_status_screen(true); + motionAxisState.blocked = false; + TERN_(TOUCH_SCREEN, touch.enable()); + + ui.clear_lcd(); + + TERN_(TOUCH_SCREEN, touch.clear()); + + const bool busy = printingIsActive(); + + // Babysteps during printing? Select babystep for Z probe offset + #if ENABLED(BABYSTEP_ZPROBE_OFFSET) + if (busy) motionAxisState.z_selection = Z_SELECTION_Z_PROBE; + #endif + + #if ENABLED(TFT_COLOR_UI_PORTRAIT) + + /************************************************************************** + * ROW 1: | [E+] | [Y+] | [Z+] | + *************************************************************************/ + + int x = X_MARGIN, y = Y_MARGIN, spacing = 0; + + TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", e_plus, imgUp, E_BTN_COLOR, !busy)); + + spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; + x += BTN_WIDTH + spacing; + uint16_t yplus_x = x; + + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", y_plus, imgUp, Y_BTN_COLOR, !busy)); + + x += BTN_WIDTH + spacing; + uint16_t zplus_x = x; + + #if HAS_Z_AXIS + drawBtn(x, y, "Z+", z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have baby step + #endif + + /************************************************************************** + * ROW 2: | "Ex" | Current Y | "Z" | + *************************************************************************/ + + x = X_MARGIN; + y += BTN_HEIGHT + 2; + + #if HAS_EXTRUDERS + motionAxisState.eNamePos.set(x, y); + drawCurESelection(); + TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, e_select)); + #endif + + #if HAS_Y_AXIS + motionAxisState.yValuePos.set(yplus_x, y); + drawAxisValue(Y_AXIS); + #endif + + #if HAS_Z_AXIS + motionAxisState.zTypePos.set(zplus_x, y); + drawCurZSelection(); + #endif + + /************************************************************************** + * ROW 3: | [X-] | [Home] | [X+] | "Z" | + *************************************************************************/ + + y += (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3 - 2; + x = X_MARGIN; + + #if HAS_X_AXIS + drawBtn(x, y, "X-", x_minus, imgLeft, X_BTN_COLOR, !busy); + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, do_home, imgHome, !busy)); + drawBtn(zplus_x, y, "X+", x_plus, imgRight, X_BTN_COLOR, !busy); + #endif + + #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) + if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, z_select); + #endif + + /************************************************************************** + * ROW 4: | Current X | + *************************************************************************/ + + y += BTN_HEIGHT + 2; + + #if HAS_X_AXIS + motionAxisState.xValuePos.set(x, y); + drawAxisValue(X_AXIS); + #endif + + /************************************************************************** + * ROW 5: | [E-] | [Y-] | [Z-] | + *************************************************************************/ + + y += (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3 - 2; + x = X_MARGIN; + + #if HAS_EXTRUDERS + drawBtn(x, y, "E-", e_minus, imgDown, E_BTN_COLOR, !busy); + motionAxisState.eValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(E_AXIS); + #endif + + x += BTN_WIDTH + spacing; + + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", y_minus, imgDown, Y_BTN_COLOR, !busy)); + + x += BTN_WIDTH + spacing; + + #if HAS_Z_AXIS + drawBtn(x, y, "Z-", z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have baby step + motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(Z_AXIS); + #endif + + /************************************************************************** + * ROW 6: | Step Size | [Disable Steppers] | [Back] | + *************************************************************************/ + + y = TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT; + x = zplus_x - CUR_STEP_VALUE_WIDTH - 10; + motionAxisState.stepValuePos.set(X_MARGIN + BTN_WIDTH - CUR_STEP_VALUE_WIDTH, y); + + if (!busy) { + drawCurStepValue(); + TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, step_size)); + } + + // Aligned with x+ + drawBtn(yplus_x, y, "off", disable_steppers, imgCancel, COLOR_WHITE, !busy); + + #else // !TFT_COLOR_UI_PORTRAIT + + /************************************************************************** + * ROW 1: | [E+] | [Y+] | Current Y | [Z+] | + *************************************************************************/ + + int x = X_MARGIN, y = Y_MARGIN, spacing = 0; + + TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", e_plus, imgUp, E_BTN_COLOR, !busy)); + + spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; + x += BTN_WIDTH + spacing; + uint16_t yplus_x = x; + + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", y_plus, imgUp, Y_BTN_COLOR, !busy)); + + x += BTN_WIDTH; + + // Current Y + #if HAS_Y_AXIS + motionAxisState.yValuePos.set(x + 2, y); + drawAxisValue(Y_AXIS); + #endif + + x += spacing; + + #if HAS_Z_AXIS + drawBtn(x, y, "Z+", z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have baby step + #endif + + /************************************************************************** + * ROW 2: | "Ex" | [X-] | [Home] | [X+] | "Z" | + *************************************************************************/ + + y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; + x = X_MARGIN; + spacing = (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; + + #if HAS_EXTRUDERS + motionAxisState.eNamePos.set(x, y); + drawCurESelection(); + TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, e_select)); + #endif + + x += BTN_WIDTH + spacing; + + TERN_(HAS_X_AXIS, drawBtn(x, y, "X-", x_minus, imgLeft, X_BTN_COLOR, !busy)); + + x += BTN_WIDTH + spacing; + + #if ALL(HAS_X_AXIS, TOUCH_SCREEN) + add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, do_home, imgHome, !busy); + #endif + + x += BTN_WIDTH + spacing; + const uint16_t xplus_x = x; + + TERN_(HAS_X_AXIS, drawBtn(x, y, "X+", x_plus, imgRight, X_BTN_COLOR, !busy)); + + x += BTN_WIDTH + spacing; + + #if HAS_Z_AXIS + motionAxisState.zTypePos.set(x, y); + drawCurZSelection(); + #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) + if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, 34 * 2, z_select); + #endif + #endif + + /************************************************************************** + * ROW 3: | [E-] | Current X | [Y-] | [Z-] | + *************************************************************************/ + + y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; + x = X_MARGIN; + spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; + + #if HAS_EXTRUDERS + drawBtn(x, y, "E-", e_minus, imgDown, E_BTN_COLOR, !busy); + motionAxisState.eValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(E_AXIS); + #endif + + // Current X + #if HAS_X_AXIS + motionAxisState.xValuePos.set(BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4, y - 10); + drawAxisValue(X_AXIS); + #endif + + x += BTN_WIDTH + spacing; + + // Current Y + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", y_minus, imgDown, Y_BTN_COLOR, !busy)); + + x += BTN_WIDTH + spacing; + + // Current Z + #if HAS_Z_AXIS + drawBtn(x, y, "Z-", z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have baby step + motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(Z_AXIS); + #endif + + /************************************************************************** + * ROW 4: | Step Size | [Disable Steppers] | [Back] | + *************************************************************************/ + + y = TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT; + x = xplus_x - CUR_STEP_VALUE_WIDTH - 10; + motionAxisState.stepValuePos.set(yplus_x + BTN_WIDTH - CUR_STEP_VALUE_WIDTH, y); + if (!busy) { + drawCurStepValue(); + TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, step_size)); + } + + // Aligned with x+ + drawBtn(xplus_x, y, "off", disable_steppers, imgCancel, COLOR_WHITE, !busy); + + #endif // !TFT_COLOR_UI_PORTRAIT + + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); +} + +#endif // MOVE_AXIS_SCREEN +#endif // HAS_UI_320x240 diff --git a/Marlin/src/lcd/tft/ui_move_axis_screen_480.cpp b/Marlin/src/lcd/tft/ui_move_axis_screen_480.cpp new file mode 100644 index 000000000000..e311c7e8ecd2 --- /dev/null +++ b/Marlin/src/lcd/tft/ui_move_axis_screen_480.cpp @@ -0,0 +1,400 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../inc/MarlinConfigPre.h" + +#if HAS_UI_480x320 || HAS_UI_480x272 + +#include "ui_common.h" + +#if ENABLED(MOVE_AXIS_SCREEN) + +#include "../marlinui.h" +#include "../menu/menu.h" +#include "../../libs/numtostr.h" + +#include "../../sd/cardreader.h" +#include "../../module/temperature.h" +#include "../../module/printcounter.h" +#include "../../module/planner.h" +#include "../../module/motion.h" + +#if ENABLED(BABYSTEP_ZPROBE_OFFSET) + #include "../../feature/babystep.h" +#endif + +#if HAS_BED_PROBE + #include "../../module/probe.h" +#endif + +#if ENABLED(TFT_COLOR_UI_PORTRAIT) + #define MOVE_AXIS_TOTAL_ROWS_HEIGHT (7 * BTN_HEIGHT + FONT_LINE_HEIGHT + 12) + #define MOVE_AXIS_MARGIN_REGIONS 6 + #define MOVE_AXIS_MARGIN_SIZE ((TFT_HEIGHT - MOVE_AXIS_TOTAL_ROWS_HEIGHT) / MOVE_AXIS_MARGIN_REGIONS) +#endif + +#define BTN_WIDTH 64 +#define BTN_HEIGHT 52 +#define X_MARGIN 20 +#define Y_MARGIN 15 +#define Y_OFFSET TERN(HAS_UI_480x272, 28, 34) + +#define CUR_STEP_VALUE_WIDTH 104 +void drawCurStepValue() { + tft_string.set(ftostr52sp(motionAxisState.currentStepSize)); + tft_string.trim(); + tft_string.add(F("mm")); + tft.canvas(motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft.add_text(0, 0, COLOR_AXIS_HOMED, tft_string); +} + +#if HAS_Z_AXIS + void drawCurZSelection() { + tft_string.set('Z'); + tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, tft_string.width(), FONT_LINE_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + + tft.queue.sync(); + + tft_string.set(F("Offset")); + tft.canvas(motionAxisState.zTypePos.x, motionAxisState.zTypePos.y + Y_OFFSET, tft_string.width(), Y_OFFSET TERN_(HAS_UI_480x272, - 10)); + tft.set_background(COLOR_BACKGROUND); + #if HAS_BED_PROBE + if (motionAxisState.z_selection == Z_SELECTION_Z_PROBE) + tft.add_text(0, 0, Z_BTN_COLOR, tft_string); + #endif + } +#endif + +#if HAS_EXTRUDERS + void drawCurESelection() { + tft.canvas(motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT); + tft.set_background(COLOR_BACKGROUND); + tft_string.set('E'); + tft_string.add(utostr3(motionAxisState.e_selection)); + tft.add_text(tft_string.center(BTN_WIDTH), 0, E_BTN_COLOR, tft_string); + } +#endif + +void drawMessage_P(PGM_P const msg) { + #if ENABLED(TFT_COLOR_UI_PORTRAIT) + tft.canvas(X_MARGIN, TFT_HEIGHT - 2 * MOVE_AXIS_MARGIN_SIZE - BTN_HEIGHT - FONT_LINE_HEIGHT, TFT_WIDTH - X_MARGIN * 2, FONT_LINE_HEIGHT); + #else + tft.canvas(X_MARGIN, TFT_HEIGHT - Y_MARGIN - Y_OFFSET, TFT_HEIGHT / 2, Y_OFFSET); + #endif + tft.set_background(COLOR_BACKGROUND); + tft.add_text(0, 0, COLOR_STATUS_MESSAGE, msg); +} + +void drawAxisValue(const AxisEnum axis) { + const float value = ( + TERN_(HAS_BED_PROBE, axis == Z_AXIS && motionAxisState.z_selection == Z_SELECTION_Z_PROBE ? probe.offset.z :) + ui.manual_move.axis_value(axis) + ); + xy_int_t pos; + uint16_t color; + switch (axis) { + #if HAS_X_AXIS + case X_AXIS: pos = motionAxisState.xValuePos; color = X_BTN_COLOR; break; + #endif + #if HAS_Y_AXIS + case Y_AXIS: pos = motionAxisState.yValuePos; color = Y_BTN_COLOR; break; + #endif + #if HAS_Z_AXIS + case Z_AXIS: pos = motionAxisState.zValuePos; color = Z_BTN_COLOR; break; + #endif + #if HAS_EXTRUDERS + case E_AXIS: pos = motionAxisState.eValuePos; color = E_BTN_COLOR; break; + #endif + default: return; + } + tft.canvas(pos.x, pos.y, BTN_WIDTH + X_MARGIN, BTN_HEIGHT TERN_(HAS_UI_480x272, / 2)); + tft.set_background(COLOR_BACKGROUND); + tft_string.set(ftostr52sp(value)); + tft_string.trim(); + tft.add_text(tft_string.center(BTN_WIDTH + X_MARGIN), 0, color, tft_string); +} + +void drawBtn(const int x, const int y, const char *label, intptr_t data, const MarlinImage img, uint16_t bgColor, const bool enabled/*=true*/) { + drawBtn(x, y, label, data, imgBtn52Rounded, img, bgColor, enabled); +} + +void MarlinUI::move_axis_screen() { + // Reset + defer_status_screen(true); + motionAxisState.blocked = false; + TERN_(TOUCH_SCREEN, touch.enable()); + + ui.clear_lcd(); + + TERN_(TOUCH_SCREEN, touch.clear()); + + const bool busy = printingIsActive(); + + // Babysteps during printing? Select babystep for Z probe offset + #if ENABLED(BABYSTEP_ZPROBE_OFFSET) + if (busy) motionAxisState.z_selection = Z_SELECTION_Z_PROBE; + #endif + + #if ENABLED(TFT_COLOR_UI_PORTRAIT) + + int y = MOVE_AXIS_MARGIN_SIZE; + + /************************************************************************** + * ROW 1: | [E+] | [Y+] | [Z+] | + *************************************************************************/ + + TERN_(HAS_EXTRUDERS, drawBtn(TFT_WIDTH / 6 - BTN_WIDTH / 2, y, "E+", e_plus, imgUp, E_BTN_COLOR, !busy)); + TERN_(HAS_Y_AXIS, drawBtn(TFT_WIDTH / 2 - BTN_WIDTH / 2, y, "Y+", y_plus, imgUp, Y_BTN_COLOR, !busy)); + TERN_(HAS_Z_AXIS, drawBtn(TFT_WIDTH * 5 / 6 - BTN_WIDTH / 2, y, "Z+", z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET))); + + y += BTN_HEIGHT + 4; + + /************************************************************************** + * ROW 2: | "Ex" (E0, E1, etc.) | Current Y | "Z" | + *************************************************************************/ + + // Label "Ex" (E0, E1, etc.) + #if HAS_EXTRUDERS + motionAxisState.eNamePos.set(TFT_WIDTH / 6 - BTN_WIDTH / 2, y); + drawCurESelection(); + #if ENABLED(TOUCH_SCREEN) + if (!busy) touch.add_control(BUTTON, motionAxisState.eNamePos.x, motionAxisState.eNamePos.y, BTN_WIDTH, BTN_HEIGHT, e_select); + #endif + #endif + + // Current Y + #if HAS_Y_AXIS + motionAxisState.yValuePos.set(TFT_WIDTH / 2 - (BTN_WIDTH + X_MARGIN) / 2, y); + drawAxisValue(Y_AXIS); + #endif + + // Label "Z" + #ifdef HAS_Z_AXIS + motionAxisState.zTypePos.set(TFT_WIDTH * 5 / 6 - BTN_WIDTH / 2, y); + drawCurZSelection(); + #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) + if (!busy) touch.add_control(BUTTON, motionAxisState.zTypePos.x, motionAxisState.zTypePos.y, BTN_WIDTH, FONT_LINE_HEIGHT * 2, z_select); + #endif + #endif + + y += BTN_HEIGHT + MOVE_AXIS_MARGIN_SIZE; + + /************************************************************************** + * ROW 3: | [X-] | [Home] | [X+] | + *************************************************************************/ + + #if HAS_X_AXIS + drawBtn(TFT_WIDTH / 6 - BTN_WIDTH / 2, y, "X-", x_minus, imgLeft, X_BTN_COLOR, !busy); + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, do_home, imgHome, !busy)); + drawBtn(TFT_WIDTH * 5 / 6 - BTN_WIDTH / 2, y, "X+", x_plus, imgRight, X_BTN_COLOR, !busy); + #endif + + y += BTN_HEIGHT + 4; + + /************************************************************************** + * ROW 4: | Current X | + *************************************************************************/ + + #ifdef HAS_X_AXIS + motionAxisState.xValuePos.set(TFT_WIDTH / 6 - (BTN_WIDTH + X_MARGIN) / 2, y); + drawAxisValue(X_AXIS); + #endif + + y += BTN_HEIGHT + MOVE_AXIS_MARGIN_SIZE; + + /************************************************************************** + * ROW 5: | [E-] | [Y-] | [Z-] | + *************************************************************************/ + + TERN_(HAS_EXTRUDERS, drawBtn(TFT_WIDTH / 6 - BTN_WIDTH / 2, y, "E-", e_minus, imgDown, E_BTN_COLOR, !busy)); + TERN_(HAS_Y_AXIS, drawBtn(TFT_WIDTH / 2 - BTN_WIDTH / 2, y, "Y-", y_minus, imgDown, Y_BTN_COLOR, !busy)); + TERN_(HAS_Z_AXIS, drawBtn(TFT_WIDTH * 5 / 6 - BTN_WIDTH / 2, y, "Z-", z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET))); + + y += BTN_HEIGHT + 4; + + /************************************************************************** + * ROW 6: | Current Ex | Current Z | + *************************************************************************/ + + // Current Ex value + #ifdef HAS_EXTRUDERS + motionAxisState.eValuePos.set(TFT_WIDTH / 6 - (BTN_WIDTH + X_MARGIN) / 2, y); + drawAxisValue(E_AXIS); + #endif + + #ifdef HAS_Z_AXIS + motionAxisState.zValuePos.set(TFT_WIDTH * 5 / 6 - (BTN_WIDTH + X_MARGIN) / 2, y); + drawAxisValue(Z_AXIS); + #endif + + y += BTN_HEIGHT + MOVE_AXIS_MARGIN_SIZE; + + /************************************************************************** + * ROW 7: | Message - drawMessage(...) function | + *************************************************************************/ + + y += FONT_LINE_HEIGHT + MOVE_AXIS_MARGIN_SIZE; + + /************************************************************************** + * ROW 8: | Step Size | [Disable Steppers] | [Back] | + *************************************************************************/ + + // Step size + motionAxisState.stepValuePos.set(X_MARGIN, y + 12); + if (!busy) { + drawCurStepValue(); + TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y + 12, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, step_size)); + } + + // Button "Disable steppers" + drawBtn(TFT_WIDTH / 2, y, "off", disable_steppers, imgCancel, COLOR_WHITE, !busy); + + // Button "Back" + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH * 5 / 6 - images[imgBack].width / 2, y + 12, BACK, imgBack)); + + #else // !TFT_COLOR_UI_PORTRAIT + + /************************************************************************** + * ROW 1: | [E+] | [Y+] | [Z+] | + *************************************************************************/ + + int x = X_MARGIN, y = Y_MARGIN, spacing = 0; + + TERN_(HAS_EXTRUDERS, drawBtn(x, y, "E+", e_plus, imgUp, E_BTN_COLOR, !busy)); + + spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; + x += BTN_WIDTH + spacing; + + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y+", y_plus, imgUp, Y_BTN_COLOR, !busy)); + + x += BTN_WIDTH; + + // Current Y + #if HAS_Y_AXIS + motionAxisState.yValuePos.set(x + 2, y); + drawAxisValue(Y_AXIS); + #endif + + x += spacing; + + #if HAS_Z_AXIS + drawBtn(x, y, "Z+", z_plus, imgUp, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have baby step + #endif + + /************************************************************************** + * ROW 2: | "Ex" | [X-] | [Home] | [X+] | "Z" | + *************************************************************************/ + + y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; + x = X_MARGIN; + spacing = (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4; + + #if HAS_EXTRUDERS + motionAxisState.eNamePos.set(x, y); + drawCurESelection(); + TERN_(TOUCH_SCREEN, if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, BTN_HEIGHT, e_select)); + #endif + + x += BTN_WIDTH + spacing; + + TERN_(HAS_X_AXIS, drawBtn(x, y, "X-", x_minus, imgLeft, X_BTN_COLOR, !busy)); + + x += BTN_WIDTH + spacing; + + #if ALL(HAS_X_AXIS, TOUCH_SCREEN) + add_control(TFT_WIDTH / 2 - images[imgHome].width / 2, y - (images[imgHome].width - BTN_HEIGHT) / 2, BUTTON, do_home, imgHome, !busy); + #endif + + x += BTN_WIDTH + spacing; + const uint16_t xplus_x = x; + + TERN_(HAS_X_AXIS, drawBtn(x, y, "X+", x_plus, imgRight, X_BTN_COLOR, !busy)); + + x += BTN_WIDTH + spacing; + + #if HAS_Z_AXIS + motionAxisState.zTypePos.set(x, y); + drawCurZSelection(); + #if ALL(HAS_BED_PROBE, TOUCH_SCREEN) + if (!busy) touch.add_control(BUTTON, x, y, BTN_WIDTH, Y_OFFSET * 2, z_select); + #endif + #endif + + /************************************************************************** + * ROW 3: | [E-] | Current X | [Y-] | [Z-] | + *************************************************************************/ + + y += BTN_HEIGHT + (TFT_HEIGHT - Y_MARGIN * 2 - 4 * BTN_HEIGHT) / 3; + x = X_MARGIN; + spacing = (TFT_WIDTH - X_MARGIN * 2 - 3 * BTN_WIDTH) / 2; + + #if HAS_EXTRUDERS + drawBtn(x, y, "E-", e_minus, imgDown, E_BTN_COLOR, !busy); + motionAxisState.eValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(E_AXIS); + #endif + + // Current X + #if HAS_X_AXIS + motionAxisState.xValuePos.set(BTN_WIDTH + (TFT_WIDTH - X_MARGIN * 2 - 5 * BTN_WIDTH) / 4, y - 10); + drawAxisValue(X_AXIS); + #endif + + x += BTN_WIDTH + spacing; + + // Current Y + TERN_(HAS_Y_AXIS, drawBtn(x, y, "Y-", y_minus, imgDown, Y_BTN_COLOR, !busy)); + + x += BTN_WIDTH + spacing; + + // Current Z + #if HAS_Z_AXIS + drawBtn(x, y, "Z-", z_minus, imgDown, Z_BTN_COLOR, !busy || ENABLED(BABYSTEP_ZPROBE_OFFSET)); // Only enabled when not busy or have baby step + motionAxisState.zValuePos.set(x, y + BTN_HEIGHT + 2); + drawAxisValue(Z_AXIS); + #endif + + /************************************************************************** + * ROW 4: | Step Size | [Disable Steppers] | [Back] | + *************************************************************************/ + + y = TFT_HEIGHT - Y_MARGIN - TERN(HAS_UI_480x272, BTN_WIDTH / 2, 32); + x = TFT_WIDTH / 2 - CUR_STEP_VALUE_WIDTH / 2; + motionAxisState.stepValuePos.set(x, y); + if (!busy) { + drawCurStepValue(); + TERN_(TOUCH_SCREEN, touch.add_control(BUTTON, motionAxisState.stepValuePos.x, motionAxisState.stepValuePos.y, CUR_STEP_VALUE_WIDTH, BTN_HEIGHT, step_size)); + } + + // Aligned with x+ + drawBtn(xplus_x, TFT_HEIGHT - Y_MARGIN - BTN_HEIGHT, "off", disable_steppers, imgCancel, COLOR_WHITE, !busy); + + TERN_(TOUCH_SCREEN, add_control(TFT_WIDTH - X_MARGIN - BTN_WIDTH, y, BACK, imgBack)); + + #endif // !TFT_COLOR_UI_PORTRAIT +} + +#endif // MOVE_AXIS_SCREEN +#endif // HAS_UI_480x320 || HAS_UI_480x272 diff --git a/Marlin/src/lcd/tft/ui_theme.h b/Marlin/src/lcd/tft/ui_theme.h new file mode 100644 index 000000000000..1925cdc071fb --- /dev/null +++ b/Marlin/src/lcd/tft/ui_theme.h @@ -0,0 +1,35 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include "../../inc/MarlinConfigPre.h" + +#ifndef TFT_THEME + #define TFT_THEME BLUE_MARLIN +#endif + +#define TFT_THEME_INCL_(M) STRINGIFY_(themes/theme_##M.h) +#define TFT_THEME_INCL(M) TFT_THEME_INCL_(M) + +#include "tft_color.h" +#include TFT_THEME_INCL(TFT_THEME) +#include "themes/theme_default.h" diff --git a/Marlin/src/lcd/tft_io/tft_orientation.h b/Marlin/src/lcd/tft_io/tft_orientation.h index 99c6a13c6446..d85e6b12db2f 100644 --- a/Marlin/src/lcd/tft_io/tft_orientation.h +++ b/Marlin/src/lcd/tft_io/tft_orientation.h @@ -58,11 +58,6 @@ #define TFT_COLOR_RGB _BV32(3) #define TFT_COLOR_BGR _BV32(4) -// Each TFT Driver is responsible for its default color mode. -//#ifndef TFT_COLOR -// #define TFT_COLOR TFT_COLOR_RGB -//#endif - #define TOUCH_ORIENTATION_NONE 0 #define TOUCH_LANDSCAPE 1 #define TOUCH_PORTRAIT 2 diff --git a/buildroot/share/PlatformIO/scripts/common-dependencies.h b/buildroot/share/PlatformIO/scripts/common-dependencies.h index b37a377df994..2def0d88b683 100644 --- a/buildroot/share/PlatformIO/scripts/common-dependencies.h +++ b/buildroot/share/PlatformIO/scripts/common-dependencies.h @@ -110,14 +110,219 @@ #endif #if HAS_GRAPHICAL_TFT - #define NOTOSANS 1 - #define UNIFONT 2 - #define HELVETICA 3 + #include "../../../../Marlin/src/lcd/tft/fontdata/fontdata.h" + #define UI_INCL_(W, H) STRINGIFY_(../../../../Marlin/src/lcd/tft/ui_##W##x##H.h) + #define UI_INCL(W, H) UI_INCL_(W, H) + #include UI_INCL(TFT_WIDTH, TFT_HEIGHT) + + #define Latin_Extended_A 1 + #define Cyrillic 2 + #define Greek 3 + #define Katakana 4 + #define Korean 5 + #define Vietnamese 6 + #define Simplified_Chinese 7 + #define Traditional_Chinese 8 + #if TFT_FONT == NOTOSANS - #define TFT_FONT_NOTOSANS + #if FONT_SIZE == 14 + #define TFT_FONT_NOTOSANS_14 + #if FONT_EXTRA == Latin_Extended_A + #define TFT_FONT_NOTOSANS_14_LATIN + #elif FONT_EXTRA == Cyrillic + #define TFT_FONT_NOTOSANS_14_CYRIL + #elif FONT_EXTRA == Greek + #define TFT_FONT_NOTOSANS_14_GREEK + #elif FONT_EXTRA == Katakana + #define TFT_FONT_NOTOSANS_14_KATA + #elif FONT_EXTRA == Korean + #define TFT_FONT_NOTOSANS_14_KO + #elif FONT_EXTRA == Vietnamese + #define TFT_FONT_NOTOSANS_14_VI + #elif FONT_EXTRA == Simplified_Chinese + #define TFT_FONT_NOTOSANS_14_ZH_CN + #elif FONT_EXTRA == Traditional_Chinese + #define TFT_FONT_NOTOSANS_14_ZH_TW + #endif + #elif FONT_SIZE == 16 + #define TFT_FONT_NOTOSANS_16 + #if FONT_EXTRA == Latin_Extended_A + #define TFT_FONT_NOTOSANS_16_LATIN + #elif FONT_EXTRA == Cyrillic + #define TFT_FONT_NOTOSANS_16_CYRIL + #elif FONT_EXTRA == Greek + #define TFT_FONT_NOTOSANS_16_GREEK + #elif FONT_EXTRA == Katakana + #define TFT_FONT_NOTOSANS_16_KATA + #elif FONT_EXTRA == Korean + #define TFT_FONT_NOTOSANS_16_KO + #elif FONT_EXTRA == Vietnamese + #define TFT_FONT_NOTOSANS_16_VI + #elif FONT_EXTRA == Simplified_Chinese + #define TFT_FONT_NOTOSANS_16_ZH_CN + #elif FONT_EXTRA == Traditional_Chinese + #define TFT_FONT_NOTOSANS_16_ZH_TW + #endif + #elif FONT_SIZE == 19 + #define TFT_FONT_NOTOSANS_19 + #if FONT_EXTRA == Latin_Extended_A + #define TFT_FONT_NOTOSANS_19_LATIN + #elif FONT_EXTRA == Cyrillic + #define TFT_FONT_NOTOSANS_19_CYRIL + #elif FONT_EXTRA == Greek + #define TFT_FONT_NOTOSANS_19_GREEK + #elif FONT_EXTRA == Katakana + #define TFT_FONT_NOTOSANS_19_KATA + #elif FONT_EXTRA == Korean + #define TFT_FONT_NOTOSANS_19_KO + #elif FONT_EXTRA == Vietnamese + #define TFT_FONT_NOTOSANS_19_VI + #elif FONT_EXTRA == Simplified_Chinese + #define TFT_FONT_NOTOSANS_19_ZH_CN + #elif FONT_EXTRA == Traditional_Chinese + #define TFT_FONT_NOTOSANS_19_ZH_TW + #endif + #elif FONT_SIZE == 26 + #define TFT_FONT_NOTOSANS_26 + #if FONT_EXTRA == Latin_Extended_A + #define TFT_FONT_NOTOSANS_26_LATIN + #elif FONT_EXTRA == Cyrillic + #define TFT_FONT_NOTOSANS_26_CYRIL + #elif FONT_EXTRA == Greek + #define TFT_FONT_NOTOSANS_26_GREEK + #elif FONT_EXTRA == Katakana + #define TFT_FONT_NOTOSANS_26_KATA + #elif FONT_EXTRA == Korean + #define TFT_FONT_NOTOSANS_26_KO + #elif FONT_EXTRA == Vietnamese + #define TFT_FONT_NOTOSANS_26_VI + #elif FONT_EXTRA == Simplified_Chinese + #define TFT_FONT_NOTOSANS_26_ZH_CN + #elif FONT_EXTRA == Traditional_Chinese + #define TFT_FONT_NOTOSANS_26_ZH_TW + #endif + #elif FONT_SIZE == 27 + #define TFT_FONT_NOTOSANS_27 + #if FONT_EXTRA == Latin_Extended_A + #define TFT_FONT_NOTOSANS_27_LATIN + #elif FONT_EXTRA == Cyrillic + #define TFT_FONT_NOTOSANS_27_CYRIL + #elif FONT_EXTRA == Greek + #define TFT_FONT_NOTOSANS_27_GREEK + #elif FONT_EXTRA == Katakana + #define TFT_FONT_NOTOSANS_27_KATA + #elif FONT_EXTRA == Korean + #define TFT_FONT_NOTOSANS_27_KO + #elif FONT_EXTRA == Vietnamese + #define TFT_FONT_NOTOSANS_27_VI + #elif FONT_EXTRA == Simplified_Chinese + #define TFT_FONT_NOTOSANS_27_ZH_CN + #elif FONT_EXTRA == Traditional_Chinese + #define TFT_FONT_NOTOSANS_27_ZH_TW + #endif + #elif FONT_SIZE == 28 + #define TFT_FONT_NOTOSANS_28 + #if FONT_EXTRA == Latin_Extended_A + #define TFT_FONT_NOTOSANS_28_LATIN + #elif FONT_EXTRA == Cyrillic + #define TFT_FONT_NOTOSANS_28_CYRIL + #elif FONT_EXTRA == Greek + #define TFT_FONT_NOTOSANS_28_GREEK + #elif FONT_EXTRA == Katakana + #define TFT_FONT_NOTOSANS_28_KATA + #elif FONT_EXTRA == Korean + #define TFT_FONT_NOTOSANS_28_KO + #elif FONT_EXTRA == Vietnamese + #define TFT_FONT_NOTOSANS_28_VI + #elif FONT_EXTRA == Simplified_Chinese + #define TFT_FONT_NOTOSANS_28_ZH_CN + #elif FONT_EXTRA == Traditional_Chinese + #define TFT_FONT_NOTOSANS_28_ZH_TW + #endif + #elif FONT_SIZE == 29 + #define TFT_FONT_NOTOSANS_29 + #if FONT_EXTRA == Latin_Extended_A + #define TFT_FONT_NOTOSANS_29_LATIN + #elif FONT_EXTRA == Cyrillic + #define TFT_FONT_NOTOSANS_29_CYRIL + #elif FONT_EXTRA == Greek + #define TFT_FONT_NOTOSANS_29_GREEK + #elif FONT_EXTRA == Katakana + #define TFT_FONT_NOTOSANS_29_KATA + #elif FONT_EXTRA == Korean + #define TFT_FONT_NOTOSANS_29_KO + #elif FONT_EXTRA == Vietnamese + #define TFT_FONT_NOTOSANS_29_VI + #elif FONT_EXTRA == Simplified_Chinese + #define TFT_FONT_NOTOSANS_29_ZH_CN + #elif FONT_EXTRA == Traditional_Chinese + #define TFT_FONT_NOTOSANS_29_ZH_TW + #endif + #endif #elif TFT_FONT == UNIFONT - #define TFT_FONT_UNIFONT + #if FONT_SIZE == 10 + #define TFT_FONT_UNIFONT_10 + #if FONT_EXTRA == Latin_Extended_A + #define TFT_FONT_UNIFONT_10_LATIN + #elif FONT_EXTRA == Cyrillic + #define TFT_FONT_UNIFONT_10_CYRIL + #elif FONT_EXTRA == Greek + #define TFT_FONT_UNIFONT_10_GREEK + #elif FONT_EXTRA == Katakana + #define TFT_FONT_UNIFONT_10_KATA + #elif FONT_EXTRA == Korean + #define TFT_FONT_UNIFONT_10_KO + #elif FONT_EXTRA == Vietnamese + #define TFT_FONT_UNIFONT_10_VI + #elif FONT_EXTRA == Simplified_Chinese + #define TFT_FONT_UNIFONT_10_ZH_CN + #elif FONT_EXTRA == Traditional_Chinese + #define TFT_FONT_UNIFONT_10_ZH_TW + #endif + #elif FONT_SIZE == 20 + #define TFT_FONT_UNIFONT_20 + #if FONT_EXTRA == Latin_Extended_A + #define TFT_FONT_UNIFONT_20_LATIN + #elif FONT_EXTRA == Cyrillic + #define TFT_FONT_UNIFONT_20_CYRIL + #elif FONT_EXTRA == Greek + #define TFT_FONT_UNIFONT_20_GREEK + #elif FONT_EXTRA == Katakana + #define TFT_FONT_UNIFONT_20_KATA + #elif FONT_EXTRA == Korean + #define TFT_FONT_UNIFONT_20_KO + #elif FONT_EXTRA == Vietnamese + #define TFT_FONT_UNIFONT_20_VI + #elif FONT_EXTRA == Simplified_Chinese + #define TFT_FONT_UNIFONT_20_ZH_CN + #elif FONT_EXTRA == Traditional_Chinese + #define TFT_FONT_UNIFONT_20_ZH_TW + #endif + #elif FONT_SIZE == 30 + #define TFT_FONT_UNIFONT_30 + #if FONT_EXTRA == Latin_Extended_A + #define TFT_FONT_UNIFONT_30_LATIN + #elif FONT_EXTRA == Cyrillic + #define TFT_FONT_UNIFONT_30_CYRIL + #elif FONT_EXTRA == Greek + #define TFT_FONT_UNIFONT_30_GREEK + #elif FONT_EXTRA == Katakana + #define TFT_FONT_UNIFONT_30_KATA + #elif FONT_EXTRA == Korean + #define TFT_FONT_UNIFONT_30_KO + #elif FONT_EXTRA == Vietnamese + #define TFT_FONT_UNIFONT_30_VI + #elif FONT_EXTRA == Simplified_Chinese + #define TFT_FONT_UNIFONT_30_ZH_CN + #elif FONT_EXTRA == Traditional_Chinese + #define TFT_FONT_UNIFONT_30_ZH_TW + #endif + #endif #elif TFT_FONT == HELVETICA - #define TFT_FONT_HELVETICA + #if FONT_SIZE == 14 + #define TFT_FONT_HELVETICA_14 + #elif FONT_SIZE == 19 + #define TFT_FONT_HELVETICA_19 + #endif #endif #endif diff --git a/buildroot/share/PlatformIO/scripts/common-dependencies.py b/buildroot/share/PlatformIO/scripts/common-dependencies.py index e90ba24dd349..faa44292a8c2 100644 --- a/buildroot/share/PlatformIO/scripts/common-dependencies.py +++ b/buildroot/share/PlatformIO/scripts/common-dependencies.py @@ -94,7 +94,7 @@ def load_features(): val = None if val: opt = mat[1].upper() - blab("%s.custom_marlin.%s = '%s'" % ( env['PIOENV'], opt, val )) + blab("%s.custom_marlin.%s = '%s'" % ( env['PIOENV'], opt, val ), 2) add_to_feat_cnf(opt, val) def get_all_known_libs(): @@ -202,14 +202,14 @@ def addentry(fullpath, info=None): relp = os.path.relpath(fullpath, marlinbasedir) if srcfilepattern.match(relp): if info: - blab("Added src file %s (%s)" % (relp, str(info))) + blab("Added src file %s (%s)" % (relp, str(info)), 3) else: - blab("Added src file %s " % relp) + blab("Added src file %s " % relp, 3) cur_srcs.add(relp) # Special rule: If a direct folder is specified add all files within. fullplain = os.path.join(marlinbasedir, plain) if os.path.isdir(fullplain): - blab("Directory content addition for %s " % plain) + blab("Directory content addition for %s " % plain, 3) gpattern = os.path.join(fullplain, "**") for fname in glob.glob(gpattern, recursive=True): addentry(fname, "dca") @@ -227,12 +227,12 @@ def srepl(matchi): # Special rule: If a direct folder is specified then remove all files within. def onremove(relp, info=None): if info: - blab("Removed src file %s (%s)" % (relp, str(info))) + blab("Removed src file %s (%s)" % (relp, str(info)), 3) else: - blab("Removed src file %s " % relp) + blab("Removed src file %s " % relp, 3) fullplain = os.path.join(marlinbasedir, plain) if os.path.isdir(fullplain): - blab("Directory content removal for %s " % plain) + blab("Directory content removal for %s " % plain, 2) def filt(x): common = os.path.commonpath([plain, x]) if not common == os.path.normpath(plain): return True @@ -248,10 +248,10 @@ def filt(x): cur_srcs = set(filter(filt, cur_srcs)) # Transform the resulting set into a string. for x in cur_srcs: - if len(build_src_filter) > 0: build_src_filter += ' ' + if build_src_filter != "": build_src_filter += ' ' build_src_filter += "+<" + x + ">" - #blab("Final build_src_filter: " + build_src_filter) + #blab("Final build_src_filter: " + build_src_filter, 3) else: build_src_filter = build_filters @@ -281,7 +281,7 @@ def load_marlin_features(): # def MarlinHas(env, feature): load_marlin_features() - r = re.compile('^' + feature + '$') + r = re.compile('^' + feature + '$', re.IGNORECASE) found = list(filter(r.match, env['MARLIN_FEATURES'])) # Defines could still be 'false' or '0', so check @@ -294,7 +294,7 @@ def MarlinHas(env, feature): elif val in env['MARLIN_FEATURES']: some_on = env.MarlinHas(val) - #blab("%s is %s" % (feature, str(some_on))) + #blab("%s is %s" % (feature, str(some_on)), 2) return some_on diff --git a/ini/features.ini b/ini/features.ini index 96a27b3ff961..2b1d09e20f25 100644 --- a/ini/features.ini +++ b/ini/features.ini @@ -56,10 +56,114 @@ DWIN_CREALITY_LCD = build_src_filter=+ DWIN_CREALITY_LCD_JYERSUI = build_src_filter=+ IS_DWIN_MARLINUI = build_src_filter=+ -HAS_GRAPHICAL_TFT = build_src_filter=+ - -TFT_FONT_HELVETICA = build_src_filter=+ -TFT_FONT_NOTOSANS = build_src_filter=+ -TFT_FONT_UNIFONT = build_src_filter=+ +HAS_GRAPHICAL_TFT = build_src_filter=+ - - +HAS_UI_320X.+ = build_src_filter=+ +HAS_UI_480X.+ = build_src_filter=+ +HAS_UI_1024X.+ = build_src_filter=+ +# Helvetica 14 +TFT_FONT_HELVETICA_14 = build_src_filter=+ +# Helvetica 19 +TFT_FONT_HELVETICA_19 = build_src_filter=+ +# Notosans 14 +TFT_FONT_NOTOSANS_14 = build_src_filter=+ + +TFT_FONT_NOTOSANS_14_LATIN = build_src_filter=+ +TFT_FONT_NOTOSANS_14_CYRIL = build_src_filter=+ +TFT_FONT_NOTOSANS_14_GREEK = build_src_filter=+ +TFT_FONT_NOTOSANS_14_KATA = build_src_filter=+ +TFT_FONT_NOTOSANS_14_KO = build_src_filter=+ +TFT_FONT_NOTOSANS_14_ZH_CN = build_src_filter=+ +TFT_FONT_NOTOSANS_14_ZH_TW = build_src_filter=+ +TFT_FONT_NOTOSANS_14_VI = build_src_filter=+ +# Notosans 16 +TFT_FONT_NOTOSANS_16 = build_src_filter=+ + +TFT_FONT_NOTOSANS_16_LATIN = build_src_filter=+ +TFT_FONT_NOTOSANS_16_CYRIL = build_src_filter=+ +TFT_FONT_NOTOSANS_16_GREEK = build_src_filter=+ +TFT_FONT_NOTOSANS_16_KATA = build_src_filter=+ +TFT_FONT_NOTOSANS_16_KO = build_src_filter=+ +TFT_FONT_NOTOSANS_16_ZH_CN = build_src_filter=+ +TFT_FONT_NOTOSANS_16_ZH_TW = build_src_filter=+ +TFT_FONT_NOTOSANS_16_VI = build_src_filter=+ +# Notosans 19 +TFT_FONT_NOTOSANS_19 = build_src_filter=+ + +TFT_FONT_NOTOSANS_19_LATIN = build_src_filter=+ +TFT_FONT_NOTOSANS_19_CYRIL = build_src_filter=+ +TFT_FONT_NOTOSANS_19_GREEK = build_src_filter=+ +TFT_FONT_NOTOSANS_19_KATA = build_src_filter=+ +TFT_FONT_NOTOSANS_19_KO = build_src_filter=+ +TFT_FONT_NOTOSANS_19_ZH_CN = build_src_filter=+ +TFT_FONT_NOTOSANS_19_ZH_TW = build_src_filter=+ +TFT_FONT_NOTOSANS_19_VI = build_src_filter=+ +# Notosans 26 +TFT_FONT_NOTOSANS_26 = build_src_filter=+ + +TFT_FONT_NOTOSANS_26_LATIN = build_src_filter=+ +TFT_FONT_NOTOSANS_26_CYRIL = build_src_filter=+ +TFT_FONT_NOTOSANS_26_GREEK = build_src_filter=+ +TFT_FONT_NOTOSANS_26_KATA = build_src_filter=+ +TFT_FONT_NOTOSANS_26_KO = build_src_filter=+ +TFT_FONT_NOTOSANS_26_ZH_CN = build_src_filter=+ +TFT_FONT_NOTOSANS_26_ZH_TW = build_src_filter=+ +TFT_FONT_NOTOSANS_26_VI = build_src_filter=+ +# Notosans 27 +TFT_FONT_NOTOSANS_27 = build_src_filter=+ + +TFT_FONT_NOTOSANS_27_LATIN = build_src_filter=+ +TFT_FONT_NOTOSANS_27_CYRIL = build_src_filter=+ +TFT_FONT_NOTOSANS_27_GREEK = build_src_filter=+ +TFT_FONT_NOTOSANS_27_KATA = build_src_filter=+ +TFT_FONT_NOTOSANS_27_KO = build_src_filter=+ +TFT_FONT_NOTOSANS_27_ZH_CN = build_src_filter=+ +TFT_FONT_NOTOSANS_27_ZH_TW = build_src_filter=+ +TFT_FONT_NOTOSANS_27_VI = build_src_filter=+ +# Notosans 28 +TFT_FONT_NOTOSANS_28 = build_src_filter=+ + +TFT_FONT_NOTOSANS_28_LATIN = build_src_filter=+ +TFT_FONT_NOTOSANS_28_CYRIL = build_src_filter=+ +TFT_FONT_NOTOSANS_28_GREEK = build_src_filter=+ +TFT_FONT_NOTOSANS_28_KATA = build_src_filter=+ +TFT_FONT_NOTOSANS_28_KO = build_src_filter=+ +TFT_FONT_NOTOSANS_28_ZH_CN = build_src_filter=+ +TFT_FONT_NOTOSANS_28_ZH_TW = build_src_filter=+ +TFT_FONT_NOTOSANS_28_VI = build_src_filter=+ +# Notosans 29 +TFT_FONT_NOTOSANS_29 = build_src_filter=+ + +TFT_FONT_NOTOSANS_29_LATIN = build_src_filter=+ +TFT_FONT_NOTOSANS_29_CYRIL = build_src_filter=+ +TFT_FONT_NOTOSANS_29_GREEK = build_src_filter=+ +TFT_FONT_NOTOSANS_29_KATA = build_src_filter=+ +TFT_FONT_NOTOSANS_29_KO = build_src_filter=+ +TFT_FONT_NOTOSANS_29_ZH_CN = build_src_filter=+ +TFT_FONT_NOTOSANS_29_ZH_TW = build_src_filter=+ +TFT_FONT_NOTOSANS_29_VI = build_src_filter=+ +# Unifont 10 +TFT_FONT_UNIFONT_10 = build_src_filter=+ + +TFT_FONT_UNIFONT_10_LATIN = build_src_filter=+ +TFT_FONT_UNIFONT_10_CYRIL = build_src_filter=+ +TFT_FONT_UNIFONT_10_GREEK = build_src_filter=+ +TFT_FONT_UNIFONT_10_KATA = build_src_filter=+ +TFT_FONT_UNIFONT_10_KO = build_src_filter=+ +TFT_FONT_UNIFONT_10_ZH_CN = build_src_filter=+ +TFT_FONT_UNIFONT_10_ZH_TW = build_src_filter=+ +TFT_FONT_UNIFONT_10_VI = build_src_filter=+ +# Unifont 20 +TFT_FONT_UNIFONT_20 = build_src_filter=+ + +TFT_FONT_UNIFONT_20_LATIN = build_src_filter=+ +TFT_FONT_UNIFONT_20_CYRIL = build_src_filter=+ +TFT_FONT_UNIFONT_20_GREEK = build_src_filter=+ +TFT_FONT_UNIFONT_20_KATA = build_src_filter=+ +TFT_FONT_UNIFONT_20_KO = build_src_filter=+ +TFT_FONT_UNIFONT_20_ZH_CN = build_src_filter=+ +TFT_FONT_UNIFONT_20_ZH_TW = build_src_filter=+ +TFT_FONT_UNIFONT_20_VI = build_src_filter=+ +# Unifont 30 +TFT_FONT_UNIFONT_30 = build_src_filter=+ + +TFT_FONT_UNIFONT_30_LATIN = build_src_filter=+ +TFT_FONT_UNIFONT_30_CYRIL = build_src_filter=+ +TFT_FONT_UNIFONT_30_GREEK = build_src_filter=+ +TFT_FONT_UNIFONT_30_KATA = build_src_filter=+ +TFT_FONT_UNIFONT_30_KO = build_src_filter=+ +TFT_FONT_UNIFONT_30_ZH_CN = build_src_filter=+ +TFT_FONT_UNIFONT_30_ZH_TW = build_src_filter=+ +TFT_FONT_UNIFONT_30_VI = build_src_filter=+ IS_TFTGLCD_PANEL = build_src_filter=+ HAS_TOUCH_BUTTONS = build_src_filter=+ HAS_MARLINUI_MENU = build_src_filter=+ - From 885e9cc0576af2c6a79d8bfa9a4f1560c6748b27 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Tue, 18 Jul 2023 00:41:02 +0000 Subject: [PATCH 372/427] [cron] Bump distribution date (2023-07-18) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 9b48bdda7200..07a652980c8b 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-17" +//#define STRING_DISTRIBUTION_DATE "2023-07-18" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index aa5089e42e8c..bb12b390f91f 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-17" + #define STRING_DISTRIBUTION_DATE "2023-07-18" #endif /** From 45193b4a1d82023f1b763c0340e40ec5b6fcc51c Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Wed, 19 Jul 2023 21:12:32 -0500 Subject: [PATCH 373/427] =?UTF-8?q?=F0=9F=94=A5=20Always=20use=20ISR=20for?= =?UTF-8?q?=20BABYSTEPPING=20(#26035)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 1 - Marlin/src/HAL/ESP32/inc/SanityCheck.h | 4 ---- Marlin/src/feature/babystep.cpp | 4 ++-- Marlin/src/feature/babystep.h | 9 ++------- Marlin/src/inc/Changes.h | 2 ++ Marlin/src/module/stepper.cpp | 20 ++++++++++---------- Marlin/src/module/stepper.h | 4 ++-- Marlin/src/module/temperature.cpp | 8 -------- 8 files changed, 18 insertions(+), 34 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index b1fde0a45d5f..f97f9d01736e 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -2206,7 +2206,6 @@ */ //#define BABYSTEPPING #if ENABLED(BABYSTEPPING) - //#define INTEGRATED_BABYSTEPPING // Integration of babystepping into the Stepper ISR //#define EP_BABYSTEPPING // M293/M294 babystepping with EMERGENCY_PARSER support //#define BABYSTEP_WITHOUT_HOMING //#define BABYSTEP_ALWAYS_AVAILABLE // Allow babystepping at all times (not just during movement) diff --git a/Marlin/src/HAL/ESP32/inc/SanityCheck.h b/Marlin/src/HAL/ESP32/inc/SanityCheck.h index e6c364a6fe4c..dd199c390ded 100644 --- a/Marlin/src/HAL/ESP32/inc/SanityCheck.h +++ b/Marlin/src/HAL/ESP32/inc/SanityCheck.h @@ -52,10 +52,6 @@ #error "FAST_PWM_FAN is not available on TinyBee." #endif -#if ALL(I2S_STEPPER_STREAM, BABYSTEPPING) && DISABLED(INTEGRATED_BABYSTEPPING) - #error "BABYSTEPPING on I2S stream requires INTEGRATED_BABYSTEPPING." -#endif - #if USING_PULLDOWNS #error "PULLDOWN pin mode is not available on ESP32 boards." #endif diff --git a/Marlin/src/feature/babystep.cpp b/Marlin/src/feature/babystep.cpp index e431e40165ff..c6717268a64f 100644 --- a/Marlin/src/feature/babystep.cpp +++ b/Marlin/src/feature/babystep.cpp @@ -66,7 +66,7 @@ void Babystep::add_mm(const AxisEnum axis, const_float_t mm) { steps[BS_AXIS_IND(axis)] = distance; TERN_(BABYSTEP_DISPLAY_TOTAL, axis_total[BS_TOTAL_IND(axis)] = distance); TERN_(BABYSTEP_ALWAYS_AVAILABLE, gcode.reset_stepper_timeout()); - TERN_(INTEGRATED_BABYSTEPPING, if (has_steps()) stepper.initiateBabystepping()); + TERN_(BABYSTEPPING, if (has_steps()) stepper.initiateBabystepping()); } #endif @@ -77,7 +77,7 @@ void Babystep::add_steps(const AxisEnum axis, const int16_t distance) { steps[BS_AXIS_IND(axis)] += distance; TERN_(BABYSTEP_DISPLAY_TOTAL, axis_total[BS_TOTAL_IND(axis)] += distance); TERN_(BABYSTEP_ALWAYS_AVAILABLE, gcode.reset_stepper_timeout()); - TERN_(INTEGRATED_BABYSTEPPING, if (has_steps()) stepper.initiateBabystepping()); + TERN_(BABYSTEPPING, if (has_steps()) stepper.initiateBabystepping()); } #if ENABLED(EP_BABYSTEPPING) diff --git a/Marlin/src/feature/babystep.h b/Marlin/src/feature/babystep.h index df88da6e147a..38a19a3b1473 100644 --- a/Marlin/src/feature/babystep.h +++ b/Marlin/src/feature/babystep.h @@ -23,13 +23,8 @@ #include "../inc/MarlinConfigPre.h" -#if ENABLED(INTEGRATED_BABYSTEPPING) - #define BABYSTEPS_PER_SEC 1000UL - #define BABYSTEP_TICKS ((STEPPER_TIMER_RATE) / (BABYSTEPS_PER_SEC)) -#else - #define BABYSTEPS_PER_SEC 976UL - #define BABYSTEP_TICKS ((TEMP_TIMER_RATE) / (BABYSTEPS_PER_SEC)) -#endif +#define BABYSTEPS_PER_SEC 1000UL +#define BABYSTEP_TICKS ((STEPPER_TIMER_RATE) / (BABYSTEPS_PER_SEC)) #if ANY(IS_CORE, BABYSTEP_XY, I2C_POSITION_ENCODERS) #define BS_AXIS_IND(A) A diff --git a/Marlin/src/inc/Changes.h b/Marlin/src/inc/Changes.h index 8a4a9c2b48fa..b64b6a7ca766 100644 --- a/Marlin/src/inc/Changes.h +++ b/Marlin/src/inc/Changes.h @@ -659,6 +659,8 @@ #error "Z3_USE_ENDSTOP is obsolete. Instead set Z2_STOP_PIN directly. (e.g., 'Z3_USE_ENDSTOP _ZMAX_' becomes 'Z3_STOP_PIN Z_MAX_PIN')" #elif defined(Z4_USE_ENDSTOP) #error "Z4_USE_ENDSTOP is obsolete. Instead set Z4_STOP_PIN directly. (e.g., 'Z4_USE_ENDSTOP _ZMAX_' becomes 'Z4_STOP_PIN Z_MAX_PIN')" +#elif defined(INTEGRATED_BABYSTEPPING) + #error "INTEGRATED_BABYSTEPPING is no longer needed and should be removed." #endif // L64xx stepper drivers have been removed diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index d1c8eef69c05..9bafe7443db1 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -106,7 +106,7 @@ Stepper stepper; // Singleton #include "../feature/bedlevel/bdl/bdl.h" #endif -#if ENABLED(INTEGRATED_BABYSTEPPING) +#if ENABLED(BABYSTEPPING) #include "../feature/babystep.h" #endif @@ -273,7 +273,7 @@ uint32_t Stepper::advance_divisor = 0, #endif #endif -#if ENABLED(INTEGRATED_BABYSTEPPING) +#if ENABLED(BABYSTEPPING) hal_timer_t Stepper::nextBabystepISR = BABYSTEP_NEVER; #endif @@ -1543,7 +1543,7 @@ void Stepper::isr() { // Define 2.5 msec task for auxilliary functions. if (!fxdTiCtrl_nextAuxISR) { endstops.update(); - TERN_(INTEGRATED_BABYSTEPPING, if (babystep.has_steps()) babystepping_isr()); + TERN_(BABYSTEPPING, if (babystep.has_steps()) babystepping_isr()); fxdTiCtrl_refreshAxisDidMove(); fxdTiCtrl_nextAuxISR = 0.0025f * (STEPPER_TIMER_RATE); } @@ -1574,7 +1574,7 @@ void Stepper::isr() { nextAdvanceISR = la_interval; #endif - #if ENABLED(INTEGRATED_BABYSTEPPING) + #if ENABLED(BABYSTEPPING) const bool is_babystep = (nextBabystepISR == 0); // 0 = Do Babystepping (XY)Z pulses if (is_babystep) nextBabystepISR = babystepping_isr(); #endif @@ -1583,7 +1583,7 @@ void Stepper::isr() { if (!nextMainISR) nextMainISR = block_phase_isr(); // Manage acc/deceleration, get next block - #if ENABLED(INTEGRATED_BABYSTEPPING) + #if ENABLED(BABYSTEPPING) if (is_babystep) // Avoid ANY stepping too soon after baby-stepping NOLESS(nextMainISR, (BABYSTEP_TICKS) / 8); // FULL STOP for 125µs after a baby-step @@ -1596,7 +1596,7 @@ void Stepper::isr() { TERN_(INPUT_SHAPING_X, NOMORE(interval, ShapingQueue::peek_x())); // Time until next input shaping echo for X TERN_(INPUT_SHAPING_Y, NOMORE(interval, ShapingQueue::peek_y())); // Time until next input shaping echo for Y TERN_(LIN_ADVANCE, NOMORE(interval, nextAdvanceISR)); // Come back early for Linear Advance? - TERN_(INTEGRATED_BABYSTEPPING, NOMORE(interval, nextBabystepISR)); // Come back early for Babystepping? + TERN_(BABYSTEPPING, NOMORE(interval, nextBabystepISR)); // Come back early for Babystepping? // // Compute remaining time for each ISR phase @@ -1608,7 +1608,7 @@ void Stepper::isr() { nextMainISR -= interval; TERN_(HAS_ZV_SHAPING, ShapingQueue::decrement_delays(interval)); TERN_(LIN_ADVANCE, if (nextAdvanceISR != LA_ADV_NEVER) nextAdvanceISR -= interval); - TERN_(INTEGRATED_BABYSTEPPING, if (nextBabystepISR != BABYSTEP_NEVER) nextBabystepISR -= interval); + TERN_(BABYSTEPPING, if (nextBabystepISR != BABYSTEP_NEVER) nextBabystepISR -= interval); } // standard motion control @@ -2807,7 +2807,7 @@ hal_timer_t Stepper::block_phase_isr() { #endif // LIN_ADVANCE -#if ENABLED(INTEGRATED_BABYSTEPPING) +#if ENABLED(BABYSTEPPING) // Timer interrupt for baby-stepping hal_timer_t Stepper::babystepping_isr() { @@ -3669,7 +3669,7 @@ void Stepper::report_positions() { // No other ISR should ever interrupt this! void Stepper::do_babystep(const AxisEnum axis, const bool direction) { - IF_DISABLED(INTEGRATED_BABYSTEPPING, cli()); + IF_DISABLED(BABYSTEPPING, cli()); switch (axis) { @@ -3750,7 +3750,7 @@ void Stepper::report_positions() { default: break; } - IF_DISABLED(INTEGRATED_BABYSTEPPING, sei()); + IF_DISABLED(BABYSTEPPING, sei()); } #endif // BABYSTEPPING diff --git a/Marlin/src/module/stepper.h b/Marlin/src/module/stepper.h index 8ec4024ea60a..7dbb6b8b5a1d 100644 --- a/Marlin/src/module/stepper.h +++ b/Marlin/src/module/stepper.h @@ -416,7 +416,7 @@ class Stepper { static bool la_active; // Whether linear advance is used on the present segment. #endif - #if ENABLED(INTEGRATED_BABYSTEPPING) + #if ENABLED(BABYSTEPPING) static constexpr hal_timer_t BABYSTEP_NEVER = HAL_TIMER_TYPE_MAX; static hal_timer_t nextBabystepISR; #endif @@ -475,7 +475,7 @@ class Stepper { static void advance_isr(); #endif - #if ENABLED(INTEGRATED_BABYSTEPPING) + #if ENABLED(BABYSTEPPING) // The Babystepping ISR phase static hal_timer_t babystepping_isr(); FORCE_INLINE static void initiateBabystepping() { diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index d7bf9c8b7936..d7c764540b4b 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -160,10 +160,6 @@ #include "stepper.h" #endif -#if ENABLED(BABYSTEPPING) && DISABLED(INTEGRATED_BABYSTEPPING) - #include "../feature/babystep.h" -#endif - #if ENABLED(FILAMENT_WIDTH_SENSOR) #include "../feature/filwidth.h" #endif @@ -4122,10 +4118,6 @@ void Temperature::isr() { // Additional ~1kHz Tasks // - #if ENABLED(BABYSTEPPING) && DISABLED(INTEGRATED_BABYSTEPPING) - babystep.task(); - #endif - // Check fan tachometers TERN_(HAS_FANCHECK, fan_check.update_tachometers()); From 6bc42300a1ce3fcbf2b396a6e1fbf11453f77544 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 20 Jul 2023 06:06:07 +0000 Subject: [PATCH 374/427] [cron] Bump distribution date (2023-07-20) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 07a652980c8b..4d497d77fd3d 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-18" +//#define STRING_DISTRIBUTION_DATE "2023-07-20" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index bb12b390f91f..eb1db1bc5e98 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-18" + #define STRING_DISTRIBUTION_DATE "2023-07-20" #endif /** From a0e3dea8b879aba8e0d2d7e4dc6a6447b3fe76ad Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 20 Jul 2023 20:25:39 -0500 Subject: [PATCH 375/427] =?UTF-8?q?=F0=9F=9A=B8=20ColorUI=20Touch=20Calibr?= =?UTF-8?q?ate=20in=20CW=20order?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/macros.h | 6 +++--- Marlin/src/inc/Conditionals_LCD.h | 12 +++++++----- Marlin/src/lcd/HD44780/marlinui_HD44780.cpp | 2 ++ Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp | 3 ++- Marlin/src/lcd/dogm/status_screen_DOGM.cpp | 2 +- .../src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp | 10 +++++----- Marlin/src/lcd/e3v2/jyersui/dwin.cpp | 8 ++++---- Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp | 6 +++--- .../src/lcd/extui/mks_ui/draw_touch_calibration.cpp | 6 +++--- .../src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp | 2 +- Marlin/src/lcd/tft/tft_string.h | 5 ++++- Marlin/src/lcd/tft/ui_common.cpp | 10 +++++----- Marlin/src/lcd/tft/ui_common.h | 2 +- Marlin/src/lcd/tft_io/touch_calibration.cpp | 6 +++--- Marlin/src/lcd/tft_io/touch_calibration.h | 6 +++--- Marlin/src/lcd/touch/touch_buttons.cpp | 2 +- Marlin/src/libs/W25Qxx.cpp | 10 ++++++---- 17 files changed, 54 insertions(+), 44 deletions(-) diff --git a/Marlin/src/core/macros.h b/Marlin/src/core/macros.h index da17450c2b9f..bb2bea2e3028 100644 --- a/Marlin/src/core/macros.h +++ b/Marlin/src/core/macros.h @@ -396,9 +396,9 @@ FORCE_INLINE constexpr T operator|(T x, T y) { return static_cast(static_cast(x) | static_cast(y)); } \ FORCE_INLINE constexpr T operator^(T x, T y) { return static_cast(static_cast(x) ^ static_cast(y)); } \ FORCE_INLINE constexpr T operator~(T x) { return static_cast(~static_cast(x)); } \ - FORCE_INLINE T & operator&=(T &x, T y) { return x &= y; } \ - FORCE_INLINE T & operator|=(T &x, T y) { return x |= y; } \ - FORCE_INLINE T & operator^=(T &x, T y) { return x ^= y; } + FORCE_INLINE T & operator&=(T &x, T y) { x = x & y; return x; } \ + FORCE_INLINE T & operator|=(T &x, T y) { x = x | y; return x; } \ + FORCE_INLINE T & operator^=(T &x, T y) { x = x ^ y; return x; } // C++11 solution that is standard compliant. is not available on all platform namespace Private { diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 01bc2805d948..084a3d74e91a 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -1782,20 +1782,22 @@ #define HAS_UI_1024x600 1 #endif +// Number of text lines the screen can display (may depend on font used) +// Touch screens leave space for extra buttons at the bottom #if ANY(HAS_UI_320x240, HAS_UI_480x272) #if ENABLED(TFT_COLOR_UI_PORTRAIT) - #define LCD_HEIGHT TERN(TOUCH_SCREEN, 8, 9) // Fewer lines with touch buttons onscreen + #define LCD_HEIGHT TERN(TOUCH_SCREEN, 8, 9) #else - #define LCD_HEIGHT TERN(TOUCH_SCREEN, 6, 7) // Fewer lines with touch buttons onscreen + #define LCD_HEIGHT TERN(TOUCH_SCREEN, 6, 7) #endif #elif HAS_UI_480x320 #if ENABLED(TFT_COLOR_UI_PORTRAIT) - #define LCD_HEIGHT TERN(TOUCH_SCREEN, 9, 10) // Fewer lines with touch buttons onscreen + #define LCD_HEIGHT TERN(TOUCH_SCREEN, 9, 10) #else - #define LCD_HEIGHT TERN(TOUCH_SCREEN, 6, 7) // Fewer lines with touch buttons onscreen + #define LCD_HEIGHT TERN(TOUCH_SCREEN, 6, 7) #endif #elif HAS_UI_1024x600 - #define LCD_HEIGHT TERN(TOUCH_SCREEN, 12, 13) // Fewer lines with touch buttons onscreen + #define LCD_HEIGHT TERN(TOUCH_SCREEN, 12, 13) #endif // This emulated DOGM has 'touch/xpt2046', not 'tft/xpt2046' diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp index 148d0877cf57..b59ec150a1a5 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp @@ -784,6 +784,7 @@ void MarlinUI::draw_status_message(const bool blink) { } #if HAS_PRINT_PROGRESS + #define TPOFFSET (LCD_WIDTH - 1) static uint8_t timepos = TPOFFSET - 6; static char buffer[8]; @@ -837,6 +838,7 @@ void MarlinUI::draw_status_message(const bool blink) { } } #endif + #endif // HAS_PRINT_PROGRESS /** diff --git a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp index 02e5f05d92a1..4cec4dfa43bd 100644 --- a/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp +++ b/Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp @@ -596,8 +596,8 @@ FORCE_INLINE void _draw_axis_value(const AxisEnum axis, const char *value, const #endif // HAS_CUTTER - #if HAS_PRINT_PROGRESS // UNTESTED!!! + #define TPOFFSET (LCD_WIDTH - 1) static uint8_t timepos = TPOFFSET - 6; @@ -648,6 +648,7 @@ FORCE_INLINE void _draw_axis_value(const AxisEnum axis, const char *value, const } } #endif + #endif // HAS_PRINT_PROGRESS #if ENABLED(LCD_PROGRESS_BAR) diff --git a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp index 5bce83849f83..2067a8428da6 100644 --- a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp +++ b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp @@ -773,7 +773,7 @@ void MarlinUI::draw_status_screen() { u8g.drawBox(PROGRESS_BAR_X + 1, PROGRESS_BAR_Y + 1, progress_bar_solid_width, 2); // Progress strings - if (PAGE_CONTAINS(EXTRAS_BASELINE - INFO_FONT_ASCENT, EXTRAS_BASELINE - 1)){ + if (PAGE_CONTAINS(EXTRAS_BASELINE - INFO_FONT_ASCENT, EXTRAS_BASELINE - 1)) { ui.rotate_progress(); lcd_put_u8str(PROGRESS_BAR_X, EXTRAS_BASELINE, bufferc); } diff --git a/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp b/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp index 48c49b5c3312..c6aff38dc9b5 100644 --- a/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp +++ b/Marlin/src/lcd/dogm/u8g_dev_tft_upscale_from_128x64.cpp @@ -510,8 +510,8 @@ U8G_PB_DEV(u8g_dev_tft_320x240_upscale_from_128x64, WIDTH, HEIGHT, PAGE_HEIGHT, } else { // clear last cross - x = touch_calibration.calibration_points[_MIN(stage - 1, CALIBRATION_BOTTOM_RIGHT)].x; - y = touch_calibration.calibration_points[_MIN(stage - 1, CALIBRATION_BOTTOM_RIGHT)].y; + x = touch_calibration.calibration_points[_MIN(stage - 1, CALIBRATION_BOTTOM_LEFT)].x; + y = touch_calibration.calibration_points[_MIN(stage - 1, CALIBRATION_BOTTOM_LEFT)].y; drawCross(x, y, TFT_MARLINBG_COLOR); } @@ -519,10 +519,10 @@ U8G_PB_DEV(u8g_dev_tft_320x240_upscale_from_128x64, WIDTH, HEIGHT, PAGE_HEIGHT, if (stage < CALIBRATION_SUCCESS) { // handle current state switch (stage) { - case CALIBRATION_TOP_LEFT: str = GET_TEXT_F(MSG_TOP_LEFT); break; - case CALIBRATION_BOTTOM_LEFT: str = GET_TEXT_F(MSG_BOTTOM_LEFT); break; - case CALIBRATION_TOP_RIGHT: str = GET_TEXT_F(MSG_TOP_RIGHT); break; + case CALIBRATION_TOP_LEFT: str = GET_TEXT_F(MSG_TOP_LEFT); break; + case CALIBRATION_TOP_RIGHT: str = GET_TEXT_F(MSG_TOP_RIGHT); break; case CALIBRATION_BOTTOM_RIGHT: str = GET_TEXT_F(MSG_BOTTOM_RIGHT); break; + case CALIBRATION_BOTTOM_LEFT: str = GET_TEXT_F(MSG_BOTTOM_LEFT); break; default: break; } diff --git a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp index fea1f081f6fe..5156848a436f 100644 --- a/Marlin/src/lcd/e3v2/jyersui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/jyersui/dwin.cpp @@ -1420,7 +1420,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra case MLEVEL_BL: if (draw) - drawMenuItem(row, ICON_AxisBL, F("Bottom Left")); + drawMenuItem(row, ICON_AxisBL, GET_TEXT_F(MSG_BOTTOM_LEFT)); else { popupHandler(Popup_MoveWait); if (use_probe) { @@ -1443,7 +1443,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra break; case MLEVEL_TL: if (draw) - drawMenuItem(row, ICON_AxisTL, F("Top Left")); + drawMenuItem(row, ICON_AxisTL, GET_TEXT_F(MSG_TOP_LEFT)); else { popupHandler(Popup_MoveWait); if (use_probe) { @@ -1466,7 +1466,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra break; case MLEVEL_TR: if (draw) - drawMenuItem(row, ICON_AxisTR, F("Top Right")); + drawMenuItem(row, ICON_AxisTR, GET_TEXT_F(MSG_TOP_RIGHT)); else { popupHandler(Popup_MoveWait); if (use_probe) { @@ -1489,7 +1489,7 @@ void JyersDWIN::menuItemHandler(const uint8_t menu, const uint8_t item, bool dra break; case MLEVEL_BR: if (draw) - drawMenuItem(row, ICON_AxisBR, F("Bottom Right")); + drawMenuItem(row, ICON_AxisBR, GET_TEXT_F(MSG_BOTTOM_RIGHT)); else { popupHandler(Popup_MoveWait); if (use_probe) { diff --git a/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp b/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp index cf87bacf3be7..470fe10c43a3 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/vyper_extui.cpp @@ -60,10 +60,10 @@ namespace ExtUI { void onPrintTimerStopped() { dgus.timerEvent(AC_timer_stopped); } void onPrintDone() {} - void onFilamentRunout(const extruder_t) { dgus.filamentRunout(); } + void onFilamentRunout(const extruder_t) { dgus.filamentRunout(); } - void onUserConfirmRequired(const char * const msg) { dgus.confirmationRequest(msg); } - void onStatusChanged(const char * const msg) { dgus.statusChange(msg); } + void onUserConfirmRequired(const char * const msg) { dgus.confirmationRequest(msg); } + void onStatusChanged(const char * const msg) { dgus.statusChange(msg); } void onHomingStart() { dgus.homingStart(); } void onHomingDone() { dgus.homingComplete(); } diff --git a/Marlin/src/lcd/extui/mks_ui/draw_touch_calibration.cpp b/Marlin/src/lcd/extui/mks_ui/draw_touch_calibration.cpp index dda9ee1c29a2..0fd2aa0ee9f7 100644 --- a/Marlin/src/lcd/extui/mks_ui/draw_touch_calibration.cpp +++ b/Marlin/src/lcd/extui/mks_ui/draw_touch_calibration.cpp @@ -62,8 +62,8 @@ void lv_update_touch_calibration_screen() { } else { // clear last cross - x = touch_calibration.calibration_points[_MIN(stage - 1, CALIBRATION_BOTTOM_RIGHT)].x; - y = touch_calibration.calibration_points[_MIN(stage - 1, CALIBRATION_BOTTOM_RIGHT)].y; + x = touch_calibration.calibration_points[_MIN(stage - 1, CALIBRATION_BOTTOM_LEFT)].x; + y = touch_calibration.calibration_points[_MIN(stage - 1, CALIBRATION_BOTTOM_LEFT)].y; drawCross(x, y, LV_COLOR_BACKGROUND.full); } @@ -72,9 +72,9 @@ void lv_update_touch_calibration_screen() { // handle current state switch (stage) { case CALIBRATION_TOP_LEFT: str = GET_TEXT(MSG_TOP_LEFT); break; - case CALIBRATION_BOTTOM_LEFT: str = GET_TEXT(MSG_BOTTOM_LEFT); break; case CALIBRATION_TOP_RIGHT: str = GET_TEXT(MSG_TOP_RIGHT); break; case CALIBRATION_BOTTOM_RIGHT: str = GET_TEXT(MSG_BOTTOM_RIGHT); break; + case CALIBRATION_BOTTOM_LEFT: str = GET_TEXT(MSG_BOTTOM_LEFT); break; default: break; } diff --git a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp index 09b9c7a53e19..a53e0d606b7c 100644 --- a/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp +++ b/Marlin/src/lcd/extui/mks_ui/tft_lvgl_configuration.cpp @@ -310,7 +310,7 @@ static bool get_point(int16_t *x, int16_t *y) { #if ENABLED(TOUCH_SCREEN_CALIBRATION) const calibrationState state = touch_calibration.get_calibration_state(); - if (state >= CALIBRATION_TOP_LEFT && state <= CALIBRATION_BOTTOM_RIGHT) { + if (WITHIN(state, CALIBRATION_TOP_LEFT, CALIBRATION_BOTTOM_LEFT)) { if (touch_calibration.handleTouch(*x, *y)) lv_update_touch_calibration_screen(); return false; } diff --git a/Marlin/src/lcd/tft/tft_string.h b/Marlin/src/lcd/tft/tft_string.h index ae05df40f00d..008064f69272 100644 --- a/Marlin/src/lcd/tft/tft_string.h +++ b/Marlin/src/lcd/tft/tft_string.h @@ -173,7 +173,10 @@ class TFT_String { static uint16_t *string() { return data; } static uint16_t width() { return span; } static uint16_t center(const uint16_t width) { return span > width ? 0 : (width - span) / 2; } - static uint16_t vcenter(const uint16_t height) { return (height + font_header->capitalAHeight + 1) / 2 > font_header->fontAscent ? (height + font_header->capitalAHeight + 1) / 2 - font_header->fontAscent : 0 ; } + static uint16_t vcenter(const uint16_t height) { + const uint16_t mid = (height + font_header->capitalAHeight + 1) / 2; + return mid > font_header->fontAscent ? mid - font_header->fontAscent : 0; + } }; extern TFT_String tft_string; diff --git a/Marlin/src/lcd/tft/ui_common.cpp b/Marlin/src/lcd/tft/ui_common.cpp index 09364d846ba6..5f426294dce9 100644 --- a/Marlin/src/lcd/tft/ui_common.cpp +++ b/Marlin/src/lcd/tft/ui_common.cpp @@ -440,8 +440,8 @@ void MarlinUI::clear_lcd() { stage = touch_calibration.calibration_start(); } else { - x = touch_calibration.calibration_points[_MIN(stage - 1, CALIBRATION_BOTTOM_RIGHT)].x; - y = touch_calibration.calibration_points[_MIN(stage - 1, CALIBRATION_BOTTOM_RIGHT)].y; + x = touch_calibration.calibration_points[_MIN(stage - 1, CALIBRATION_BOTTOM_LEFT)].x; + y = touch_calibration.calibration_points[_MIN(stage - 1, CALIBRATION_BOTTOM_LEFT)].y; tft.canvas(x - 15, y - 15, 31, 31); tft.set_background(COLOR_BACKGROUND); } @@ -450,10 +450,10 @@ void MarlinUI::clear_lcd() { if (stage < CALIBRATION_SUCCESS) { switch (stage) { - case CALIBRATION_TOP_LEFT: tft_string.set(GET_TEXT(MSG_TOP_LEFT)); break; - case CALIBRATION_BOTTOM_LEFT: tft_string.set(GET_TEXT(MSG_BOTTOM_LEFT)); break; - case CALIBRATION_TOP_RIGHT: tft_string.set(GET_TEXT(MSG_TOP_RIGHT)); break; + case CALIBRATION_TOP_LEFT: tft_string.set(GET_TEXT(MSG_TOP_LEFT)); break; + case CALIBRATION_TOP_RIGHT: tft_string.set(GET_TEXT(MSG_TOP_RIGHT)); break; case CALIBRATION_BOTTOM_RIGHT: tft_string.set(GET_TEXT(MSG_BOTTOM_RIGHT)); break; + case CALIBRATION_BOTTOM_LEFT: tft_string.set(GET_TEXT(MSG_BOTTOM_LEFT)); break; default: break; } diff --git a/Marlin/src/lcd/tft/ui_common.h b/Marlin/src/lcd/tft/ui_common.h index 592bf3184e6e..8229ab36abfa 100644 --- a/Marlin/src/lcd/tft/ui_common.h +++ b/Marlin/src/lcd/tft/ui_common.h @@ -109,7 +109,7 @@ void disable_steppers(); bool lcd_sleep_task(); #endif -void draw_heater_status(uint16_t x, uint16_t y, const int8_t Heater); +void draw_heater_status(uint16_t x, uint16_t y, const int8_t heater); void draw_fan_status(uint16_t x, uint16_t y, const bool blink); void text_line(const uint16_t y, uint16_t color=COLOR_BACKGROUND); diff --git a/Marlin/src/lcd/tft_io/touch_calibration.cpp b/Marlin/src/lcd/tft_io/touch_calibration.cpp index c239a94b41f9..3cd73fe6204c 100644 --- a/Marlin/src/lcd/tft_io/touch_calibration.cpp +++ b/Marlin/src/lcd/tft_io/touch_calibration.cpp @@ -103,10 +103,10 @@ bool TouchCalibration::handleTouch(const uint16_t x, const uint16_t y) { } switch (calibration_state) { - case CALIBRATION_TOP_LEFT: calibration_state = CALIBRATION_BOTTOM_LEFT; break; - case CALIBRATION_BOTTOM_LEFT: calibration_state = CALIBRATION_TOP_RIGHT; break; + case CALIBRATION_TOP_LEFT: calibration_state = CALIBRATION_TOP_RIGHT; break; case CALIBRATION_TOP_RIGHT: calibration_state = CALIBRATION_BOTTOM_RIGHT; break; - case CALIBRATION_BOTTOM_RIGHT: validate_calibration(); break; + case CALIBRATION_BOTTOM_RIGHT: calibration_state = CALIBRATION_BOTTOM_LEFT; break; + case CALIBRATION_BOTTOM_LEFT: validate_calibration(); break; default: break; } diff --git a/Marlin/src/lcd/tft_io/touch_calibration.h b/Marlin/src/lcd/tft_io/touch_calibration.h index e9d3110c56d6..2dd8a81ab7cc 100644 --- a/Marlin/src/lcd/tft_io/touch_calibration.h +++ b/Marlin/src/lcd/tft_io/touch_calibration.h @@ -43,9 +43,9 @@ typedef struct __attribute__((__packed__)) { enum calibrationState : uint8_t { CALIBRATION_TOP_LEFT = 0x00, - CALIBRATION_BOTTOM_LEFT, CALIBRATION_TOP_RIGHT, CALIBRATION_BOTTOM_RIGHT, + CALIBRATION_BOTTOM_LEFT, CALIBRATION_SUCCESS, CALIBRATION_FAIL, CALIBRATION_NONE, @@ -73,12 +73,12 @@ class TouchCalibration { calibration_state = CALIBRATION_TOP_LEFT; calibration_points[CALIBRATION_TOP_LEFT].x = 30; calibration_points[CALIBRATION_TOP_LEFT].y = 30; - calibration_points[CALIBRATION_BOTTOM_LEFT].x = 30; - calibration_points[CALIBRATION_BOTTOM_LEFT].y = TFT_HEIGHT - 31; calibration_points[CALIBRATION_TOP_RIGHT].x = TFT_WIDTH - 31; calibration_points[CALIBRATION_TOP_RIGHT].y = 30; calibration_points[CALIBRATION_BOTTOM_RIGHT].x = TFT_WIDTH - 31; calibration_points[CALIBRATION_BOTTOM_RIGHT].y = TFT_HEIGHT - 31; + calibration_points[CALIBRATION_BOTTOM_LEFT].x = 30; + calibration_points[CALIBRATION_BOTTOM_LEFT].y = TFT_HEIGHT - 31; failed_count = 0; return calibration_state; } diff --git a/Marlin/src/lcd/touch/touch_buttons.cpp b/Marlin/src/lcd/touch/touch_buttons.cpp index 856594c31a28..1ae5397b2ef6 100644 --- a/Marlin/src/lcd/touch/touch_buttons.cpp +++ b/Marlin/src/lcd/touch/touch_buttons.cpp @@ -80,7 +80,7 @@ uint8_t TouchButtons::read_buttons() { #if ENABLED(TOUCH_SCREEN_CALIBRATION) const calibrationState state = touch_calibration.get_calibration_state(); - if (WITHIN(state, CALIBRATION_TOP_LEFT, CALIBRATION_BOTTOM_RIGHT)) { + if (WITHIN(state, CALIBRATION_TOP_LEFT, CALIBRATION_BOTTOM_LEFT)) { if (touch_calibration.handleTouch(x, y)) ui.refresh(); return 0; } diff --git a/Marlin/src/libs/W25Qxx.cpp b/Marlin/src/libs/W25Qxx.cpp index 591d0d069318..558d604ea52d 100644 --- a/Marlin/src/libs/W25Qxx.cpp +++ b/Marlin/src/libs/W25Qxx.cpp @@ -48,10 +48,12 @@ void W25QXXFlash::init(uint8_t spiRate) { * STM32F1 has 3 SPI ports, SPI1 in APB2, SPI2/SPI3 in APB1 * so the minimum prescale of SPI1 is DIV4, SPI2/SPI3 is DIV2 */ - #if SPI_DEVICE == 1 - #define SPI_CLOCK_MAX SPI_CLOCK_DIV4 - #else - #define SPI_CLOCK_MAX SPI_CLOCK_DIV2 + #ifndef SPI_CLOCK_MAX + #if SPI_DEVICE == 1 + #define SPI_CLOCK_MAX SPI_CLOCK_DIV4 + #else + #define SPI_CLOCK_MAX SPI_CLOCK_DIV2 + #endif #endif uint8_t clock; switch (spiRate) { From 9135e3f7d3fd0d634656f1c54c70a0ba1f878bfd Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 20 Jul 2023 21:10:03 -0500 Subject: [PATCH 376/427] =?UTF-8?q?=F0=9F=9A=B8=20Revert=20M206=20Home=20O?= =?UTF-8?q?ffset=20behavior=20(#25996)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 13 ++++--- Marlin/src/MarlinCore.cpp | 2 +- Marlin/src/feature/powerloss.cpp | 13 +++---- Marlin/src/feature/powerloss.h | 4 +-- Marlin/src/gcode/calibrate/G28.cpp | 9 +---- Marlin/src/gcode/gcode.cpp | 4 +-- Marlin/src/gcode/gcode.h | 4 +-- Marlin/src/gcode/geometry/G53-G59.cpp | 7 +--- Marlin/src/gcode/geometry/G92.cpp | 12 +++---- Marlin/src/gcode/geometry/M206_M428.cpp | 4 +-- Marlin/src/gcode/probe/M951.cpp | 4 +-- Marlin/src/inc/Conditionals_adv.h | 1 + Marlin/src/inc/Conditionals_post.h | 12 +++---- Marlin/src/lcd/menu/menu_advanced.cpp | 2 +- Marlin/src/module/delta.cpp | 2 +- Marlin/src/module/delta.h | 2 +- Marlin/src/module/motion.cpp | 28 ++++----------- Marlin/src/module/motion.h | 45 +++++++++---------------- Marlin/src/module/settings.cpp | 7 ++-- Marlin/src/module/tool_change.cpp | 23 ++++--------- ini/features.ini | 2 +- 21 files changed, 70 insertions(+), 130 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index f97f9d01736e..6c29900cdf47 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -3835,14 +3835,17 @@ //#define REPETIER_GCODE_M360 // Add commands originally from Repetier FW /** - * Enable this option for a leaner build of Marlin that removes all - * workspace offsets, simplifying coordinate transformations, leveling, etc. - * - * - M206 and M428 are disabled. - * - G92 will revert to its behavior from Marlin 1.0. + * Enable this option for a leaner build of Marlin that removes + * workspace offsets to slightly optimize performance. + * G92 will revert to its behavior from Marlin 1.0. */ //#define NO_WORKSPACE_OFFSETS +/** + * Disable M206 and M428 if you don't need home offsets. + */ +//#define NO_HOME_OFFSETS + /** * CNC G-code options * Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc. diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index 03b5e8c7a996..43a3cf04a870 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -1337,7 +1337,7 @@ void setup() { SETUP_RUN(touchBt.init()); #endif - TERN_(HAS_M206_COMMAND, current_position += home_offset); // Init current position based on home_offset + TERN_(HAS_HOME_OFFSET, current_position += home_offset); // Init current position based on home_offset sync_plan_position(); // Vital to init stepper/planner equivalent for current_position diff --git a/Marlin/src/feature/powerloss.cpp b/Marlin/src/feature/powerloss.cpp index 7c49aee2477e..7fb60349c6e5 100644 --- a/Marlin/src/feature/powerloss.cpp +++ b/Marlin/src/feature/powerloss.cpp @@ -207,7 +207,7 @@ void PrintJobRecovery::save(const bool force/*=false*/, const float zraise/*=POW TERN_(GCODE_REPEAT_MARKERS, info.stored_repeat = repeat); TERN_(HAS_HOME_OFFSET, info.home_offset = home_offset); - TERN_(HAS_POSITION_SHIFT, info.position_shift = position_shift); + TERN_(HAS_WORKSPACE_OFFSET, info.workspace_offset = workspace_offset); E_TERN_(info.active_extruder = active_extruder); #if DISABLED(NO_VOLUMETRICS) @@ -552,10 +552,7 @@ void PrintJobRecovery::resume() { TERN_(GCODE_REPEAT_MARKERS, repeat = info.stored_repeat); TERN_(HAS_HOME_OFFSET, home_offset = info.home_offset); - TERN_(HAS_POSITION_SHIFT, position_shift = info.position_shift); - #if HAS_HOME_OFFSET || HAS_POSITION_SHIFT - LOOP_NUM_AXES(i) update_workspace_offset((AxisEnum)i); - #endif + TERN_(HAS_WORKSPACE_OFFSET, workspace_offset = info.workspace_offset); // Relative axis modes gcode.axis_relative = info.axis_relative; @@ -600,11 +597,11 @@ void PrintJobRecovery::resume() { DEBUG_EOL(); #endif - #if HAS_POSITION_SHIFT - DEBUG_ECHOPGM("position_shift: "); + #if HAS_WORKSPACE_OFFSET + DEBUG_ECHOPGM("workspace_offset: "); LOOP_NUM_AXES(i) { if (i) DEBUG_CHAR(','); - DEBUG_ECHO(info.position_shift[i]); + DEBUG_ECHO(info.workspace_offset[i]); } DEBUG_EOL(); #endif diff --git a/Marlin/src/feature/powerloss.h b/Marlin/src/feature/powerloss.h index df46545825ec..a69862b25957 100644 --- a/Marlin/src/feature/powerloss.h +++ b/Marlin/src/feature/powerloss.h @@ -67,8 +67,8 @@ typedef struct { #if HAS_HOME_OFFSET xyz_pos_t home_offset; #endif - #if HAS_POSITION_SHIFT - xyz_pos_t position_shift; + #if HAS_WORKSPACE_OFFSET + xyz_pos_t workspace_offset; #endif #if HAS_MULTI_EXTRUDER uint8_t active_extruder; diff --git a/Marlin/src/gcode/calibrate/G28.cpp b/Marlin/src/gcode/calibrate/G28.cpp index 33a8ed76e606..b364c0382c09 100644 --- a/Marlin/src/gcode/calibrate/G28.cpp +++ b/Marlin/src/gcode/calibrate/G28.cpp @@ -120,14 +120,7 @@ * (Z is already at the right height) */ constexpr xy_float_t safe_homing_xy = { Z_SAFE_HOMING_X_POINT, Z_SAFE_HOMING_Y_POINT }; - #if HAS_HOME_OFFSET && DISABLED(Z_SAFE_HOMING_POINT_ABSOLUTE) - xy_float_t okay_homing_xy = safe_homing_xy; - okay_homing_xy -= home_offset; - #else - constexpr xy_float_t okay_homing_xy = safe_homing_xy; - #endif - - destination.set(okay_homing_xy, current_position.z); + destination.set(safe_homing_xy, current_position.z); TERN_(HOMING_Z_WITH_PROBE, destination -= probe.offset_xy); diff --git a/Marlin/src/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index 16847eb1f1f7..fd2a78d1fd26 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -715,7 +715,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 204: M204(); break; // M204: Set acceleration case 205: M205(); break; // M205: Set advanced settings - #if HAS_M206_COMMAND + #if HAS_HOME_OFFSET case 206: M206(); break; // M206: Set home offsets #endif @@ -881,7 +881,7 @@ void GcodeSuite::process_parsed_command(const bool no_ok/*=false*/) { case 425: M425(); break; // M425: Tune backlash compensation #endif - #if HAS_M206_COMMAND + #if HAS_HOME_OFFSET case 428: M428(); break; // M428: Apply current_position to home_offset #endif diff --git a/Marlin/src/gcode/gcode.h b/Marlin/src/gcode/gcode.h index 23f245faa17f..f9ee81f2eb0c 100644 --- a/Marlin/src/gcode/gcode.h +++ b/Marlin/src/gcode/gcode.h @@ -860,7 +860,7 @@ class GcodeSuite { static void M205(); static void M205_report(const bool forReplay=true); - #if HAS_M206_COMMAND + #if HAS_HOME_OFFSET static void M206(); static void M206_report(const bool forReplay=true); #endif @@ -1043,7 +1043,7 @@ class GcodeSuite { static void M425_report(const bool forReplay=true); #endif - #if HAS_M206_COMMAND + #if HAS_HOME_OFFSET static void M428(); #endif diff --git a/Marlin/src/gcode/geometry/G53-G59.cpp b/Marlin/src/gcode/geometry/G53-G59.cpp index c51c29f4233f..017b54a084a4 100644 --- a/Marlin/src/gcode/geometry/G53-G59.cpp +++ b/Marlin/src/gcode/geometry/G53-G59.cpp @@ -37,12 +37,7 @@ bool GcodeSuite::select_coordinate_system(const int8_t _new) { xyz_float_t new_offset{0}; if (WITHIN(_new, 0, MAX_COORDINATE_SYSTEMS - 1)) new_offset = coordinate_system[_new]; - LOOP_NUM_AXES(i) { - if (position_shift[i] != new_offset[i]) { - position_shift[i] = new_offset[i]; - update_workspace_offset((AxisEnum)i); - } - } + workspace_offset = new_offset; return true; } diff --git a/Marlin/src/gcode/geometry/G92.cpp b/Marlin/src/gcode/geometry/G92.cpp index dfe4170620ec..626441f4e25c 100644 --- a/Marlin/src/gcode/geometry/G92.cpp +++ b/Marlin/src/gcode/geometry/G92.cpp @@ -63,10 +63,7 @@ void GcodeSuite::G92() { #if ENABLED(CNC_COORDINATE_SYSTEMS) && !IS_SCARA case 1: // G92.1 - Zero the Workspace Offset - LOOP_NUM_AXES(i) if (position_shift[i]) { - position_shift[i] = 0; - update_workspace_offset((AxisEnum)i); - } + workspace_offset.reset(); break; #endif @@ -92,10 +89,9 @@ void GcodeSuite::G92() { v = TERN0(HAS_EXTRUDERS, i == E_AXIS) ? l : LOGICAL_TO_NATIVE(l, i), // Axis position in NATIVE space (applying the existing offset) d = v - current_position[i]; // How much is the current axis position altered by? if (!NEAR_ZERO(d)) { - #if HAS_POSITION_SHIFT && NONE(IS_SCARA, POLARGRAPH) // When using workspaces... + #if HAS_WORKSPACE_OFFSET && NONE(IS_SCARA, POLARGRAPH) // When using workspaces... if (TERN1(HAS_EXTRUDERS, i != E_AXIS)) { - position_shift[i] += d; // ...most axes offset the workspace... - update_workspace_offset((AxisEnum)i); + workspace_offset[i] += d; // ...most axes offset the workspace... } else { #if HAS_EXTRUDERS @@ -120,7 +116,7 @@ void GcodeSuite::G92() { #if ENABLED(CNC_COORDINATE_SYSTEMS) // Apply Workspace Offset to the active coordinate system if (WITHIN(active_coordinate_system, 0, MAX_COORDINATE_SYSTEMS - 1)) - coordinate_system[active_coordinate_system] = position_shift; + coordinate_system[active_coordinate_system] = workspace_offset; #endif if (sync_XYZE) sync_plan_position(); diff --git a/Marlin/src/gcode/geometry/M206_M428.cpp b/Marlin/src/gcode/geometry/M206_M428.cpp index b055f0e20734..7017eabbdc3e 100644 --- a/Marlin/src/gcode/geometry/M206_M428.cpp +++ b/Marlin/src/gcode/geometry/M206_M428.cpp @@ -22,7 +22,7 @@ #include "../../inc/MarlinConfig.h" -#if HAS_M206_COMMAND +#if HAS_HOME_OFFSET #include "../gcode.h" #include "../../module/motion.h" @@ -101,4 +101,4 @@ void GcodeSuite::M428() { OKAY_BUZZ(); } -#endif // HAS_M206_COMMAND +#endif // HAS_HOME_OFFSET diff --git a/Marlin/src/gcode/probe/M951.cpp b/Marlin/src/gcode/probe/M951.cpp index 7a06400e3336..93feffdce999 100644 --- a/Marlin/src/gcode/probe/M951.cpp +++ b/Marlin/src/gcode/probe/M951.cpp @@ -46,7 +46,7 @@ void mpe_settings_init() { mpe_settings.parking_xpos[0] = pex[0]; // M951 L mpe_settings.parking_xpos[1] = pex[1]; // M951 R mpe_settings.grab_distance = PARKING_EXTRUDER_GRAB_DISTANCE; // M951 I - TERN_(HAS_HOME_OFFSET, set_home_offset(X_AXIS, mpe_settings.grab_distance * -1)); + TERN_(HAS_HOME_OFFSET, set_home_offset(X_AXIS, -mpe_settings.grab_distance)); mpe_settings.slow_feedrate = MMM_TO_MMS(MPE_SLOW_SPEED); // M951 J mpe_settings.fast_feedrate = MMM_TO_MMS(MPE_FAST_SPEED); // M951 H mpe_settings.travel_distance = MPE_TRAVEL_DISTANCE; // M951 D @@ -59,7 +59,7 @@ void GcodeSuite::M951() { if (parser.seenval('R')) mpe_settings.parking_xpos[1] = parser.value_linear_units(); if (parser.seenval('I')) { mpe_settings.grab_distance = parser.value_linear_units(); - TERN_(HAS_HOME_OFFSET, set_home_offset(X_AXIS, mpe_settings.grab_distance * -1)); + TERN_(HAS_HOME_OFFSET, set_home_offset(X_AXIS, -mpe_settings.grab_distance)); } if (parser.seenval('J')) mpe_settings.slow_feedrate = MMM_TO_MMS(parser.value_linear_units()); if (parser.seenval('H')) mpe_settings.fast_feedrate = MMM_TO_MMS(parser.value_linear_units()); diff --git a/Marlin/src/inc/Conditionals_adv.h b/Marlin/src/inc/Conditionals_adv.h index eac9e2111048..25050d972f32 100644 --- a/Marlin/src/inc/Conditionals_adv.h +++ b/Marlin/src/inc/Conditionals_adv.h @@ -97,6 +97,7 @@ #if !HAS_X_AXIS //#define LCD_SHOW_E_TOTAL #define NO_WORKSPACE_OFFSETS + #define NO_HOME_OFFSETS #undef AUTOTEMP #undef CALIBRATION_MEASURE_LEFT #undef CALIBRATION_MEASURE_RIGHT diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 8cc3f6bc2db8..442fcfbafdb8 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -3140,15 +3140,15 @@ #undef MOTOR_CURRENT #endif -// Updated G92 behavior shifts the workspace +// G92 shifts the workspace #if DISABLED(NO_WORKSPACE_OFFSETS) - #define HAS_POSITION_SHIFT 1 + #define HAS_WORKSPACE_OFFSET 1 +#endif +#if DISABLED(NO_HOME_OFFSETS) #if IS_CARTESIAN - #define HAS_HOME_OFFSET 1 // The home offset also shifts the coordinate space - #define HAS_WORKSPACE_OFFSET 1 // Cumulative offset to workspace to save some calculation - #define HAS_M206_COMMAND 1 // M206 sets the home offset for Cartesian machines + #define HAS_HOME_OFFSET 1 // M206 affects the Native Machine Space on G28 #elif IS_SCARA - #define HAS_SCARA_OFFSET 1 // The SCARA home offset applies only on G28 + #define HAS_SCARA_OFFSET 1 // The SCARA home offset applies only on G28 #endif #endif diff --git a/Marlin/src/lcd/menu/menu_advanced.cpp b/Marlin/src/lcd/menu/menu_advanced.cpp index 7c142d839085..7cf4d34cb706 100644 --- a/Marlin/src/lcd/menu/menu_advanced.cpp +++ b/Marlin/src/lcd/menu/menu_advanced.cpp @@ -695,7 +695,7 @@ void menu_advanced_settings() { } #endif - #if HAS_M206_COMMAND + #if HAS_HOME_OFFSET // M428 - Set Home Offsets ACTION_ITEM(MSG_SET_HOME_OFFSETS, []{ queue.inject(F("M428")); ui.return_to_status(); }); #endif diff --git a/Marlin/src/module/delta.cpp b/Marlin/src/module/delta.cpp index 58dc13972cb2..cfa134860b86 100644 --- a/Marlin/src/module/delta.cpp +++ b/Marlin/src/module/delta.cpp @@ -101,7 +101,7 @@ void recalc_delta_settings() { * * Suggested optimizations include: * - * - Disable the home_offset (M206) and/or position_shift (G92) + * - Disable the home_offset (M206) and/or workspace_offset (G92) * features to remove up to 12 float additions. */ diff --git a/Marlin/src/module/delta.h b/Marlin/src/module/delta.h index 0a0c6124eecf..041094fd7fcb 100644 --- a/Marlin/src/module/delta.h +++ b/Marlin/src/module/delta.h @@ -64,7 +64,7 @@ void recalc_delta_settings(); * * Suggested optimizations include: * - * - Disable the home_offset (M206) and/or position_shift (G92) + * - Disable the home_offset (M206) and/or workspace_offset (G92) * features to remove up to 12 float additions. * * - Use a fast-inverse-sqrt function and add the reciprocal. diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index c97523cbd316..cd768d9e40fd 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -177,16 +177,12 @@ xyz_pos_t cartes; * The workspace can be offset by some commands, or * these offsets may be omitted to save on computation. */ -#if HAS_POSITION_SHIFT - // The distance that XYZ has been offset by G92. Reset by G28. - xyz_pos_t position_shift{0}; -#endif #if HAS_HOME_OFFSET // This offset is added to the configured home position. // Set by M206, M428, or menu item. Saved to EEPROM. xyz_pos_t home_offset{0}; #endif -#if HAS_HOME_OFFSET && HAS_POSITION_SHIFT +#if HAS_WORKSPACE_OFFSET // The above two are combined to save on computes xyz_pos_t workspace_offset{0}; #endif @@ -2468,7 +2464,7 @@ void set_axis_is_at_home(const AxisEnum axis) { #if ENABLED(DUAL_X_CARRIAGE) if (axis == X_AXIS && (active_extruder == 1 || dual_x_carriage_mode == DXC_DUPLICATION_MODE)) { - current_position.x = x_home_pos(active_extruder); + current_position.x = SUM_TERN(HAS_HOME_OFFSET, x_home_pos(active_extruder), home_offset.x); return; } #endif @@ -2478,7 +2474,7 @@ void set_axis_is_at_home(const AxisEnum axis) { #elif ENABLED(DELTA) current_position[axis] = (axis == Z_AXIS) ? DIFF_TERN(HAS_BED_PROBE, delta_height, probe.offset.z) : base_home_pos(axis); #else - current_position[axis] = base_home_pos(axis); + current_position[axis] = SUM_TERN(HAS_HOME_OFFSET, base_home_pos(axis), home_offset[axis]); #endif /** @@ -2499,10 +2495,7 @@ void set_axis_is_at_home(const AxisEnum axis) { TERN_(BABYSTEP_DISPLAY_TOTAL, babystep.reset_total(axis)); - #if HAS_POSITION_SHIFT - position_shift[axis] = 0; - update_workspace_offset(axis); - #endif + TERN_(HAS_WORKSPACE_OFFSET, workspace_offset[axis] = 0); if (DEBUGGING(LEVELING)) { #if HAS_HOME_OFFSET @@ -2513,20 +2506,11 @@ void set_axis_is_at_home(const AxisEnum axis) { } } -#if HAS_WORKSPACE_OFFSET - void update_workspace_offset(const AxisEnum axis) { - workspace_offset[axis] = home_offset[axis] + position_shift[axis]; - if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Axis ", AS_CHAR(AXIS_CHAR(axis)), " home_offset = ", home_offset[axis], " position_shift = ", position_shift[axis]); - } -#endif - -#if HAS_M206_COMMAND +#if HAS_HOME_OFFSET /** - * Change the home offset for an axis. - * Also refreshes the workspace offset. + * Set the home offset for an axis. */ void set_home_offset(const AxisEnum axis, const_float_t v) { home_offset[axis] = v; - update_workspace_offset(axis); } #endif diff --git a/Marlin/src/module/motion.h b/Marlin/src/module/motion.h index 9d5da849e5a9..fceeffa70748 100644 --- a/Marlin/src/module/motion.h +++ b/Marlin/src/module/motion.h @@ -147,12 +147,6 @@ inline float home_bump_mm(const AxisEnum axis) { return pgm_read_any(&home_bump_mm_P[axis]); } -#if HAS_WORKSPACE_OFFSET - void update_workspace_offset(const AxisEnum axis); -#else - inline void update_workspace_offset(const AxisEnum) {} -#endif - #if HAS_HOTEND_OFFSET extern xyz_pos_t hotend_offset[HOTENDS]; void reset_hotend_offsets(); @@ -484,32 +478,23 @@ void home_if_needed(const bool keeplev=false); #define BABYSTEP_ALLOWED() ((ENABLED(BABYSTEP_WITHOUT_HOMING) || all_axes_trusted()) && (ENABLED(BABYSTEP_ALWAYS_AVAILABLE) || printer_busy())) +#if HAS_HOME_OFFSET + extern xyz_pos_t home_offset; +#endif + /** * Workspace offsets */ -#if HAS_HOME_OFFSET || HAS_POSITION_SHIFT - #if HAS_HOME_OFFSET - extern xyz_pos_t home_offset; - #endif - #if HAS_POSITION_SHIFT - extern xyz_pos_t position_shift; - #endif - #if HAS_HOME_OFFSET && HAS_POSITION_SHIFT - extern xyz_pos_t workspace_offset; - #define _WS workspace_offset - #elif HAS_HOME_OFFSET - #define _WS home_offset - #else - #define _WS position_shift - #endif - #define NATIVE_TO_LOGICAL(POS, AXIS) ((POS) + _WS[AXIS]) - #define LOGICAL_TO_NATIVE(POS, AXIS) ((POS) - _WS[AXIS]) - FORCE_INLINE void toLogical(xy_pos_t &raw) { raw += _WS; } - FORCE_INLINE void toLogical(xyz_pos_t &raw) { raw += _WS; } - FORCE_INLINE void toLogical(xyze_pos_t &raw) { raw += _WS; } - FORCE_INLINE void toNative(xy_pos_t &raw) { raw -= _WS; } - FORCE_INLINE void toNative(xyz_pos_t &raw) { raw -= _WS; } - FORCE_INLINE void toNative(xyze_pos_t &raw) { raw -= _WS; } +#if HAS_WORKSPACE_OFFSET + extern xyz_pos_t workspace_offset; + #define NATIVE_TO_LOGICAL(POS, AXIS) ((POS) + workspace_offset[AXIS]) + #define LOGICAL_TO_NATIVE(POS, AXIS) ((POS) - workspace_offset[AXIS]) + FORCE_INLINE void toLogical(xy_pos_t &raw) { raw += workspace_offset; } + FORCE_INLINE void toLogical(xyz_pos_t &raw) { raw += workspace_offset; } + FORCE_INLINE void toLogical(xyze_pos_t &raw) { raw += workspace_offset; } + FORCE_INLINE void toNative(xy_pos_t &raw) { raw -= workspace_offset; } + FORCE_INLINE void toNative(xyz_pos_t &raw) { raw -= workspace_offset; } + FORCE_INLINE void toNative(xyze_pos_t &raw) { raw -= workspace_offset; } #else #define NATIVE_TO_LOGICAL(POS, AXIS) (POS) #define LOGICAL_TO_NATIVE(POS, AXIS) (POS) @@ -633,7 +618,7 @@ void home_if_needed(const bool keeplev=false); #endif -#if HAS_M206_COMMAND +#if HAS_HOME_OFFSET void set_home_offset(const AxisEnum axis, const_float_t v); #endif diff --git a/Marlin/src/module/settings.cpp b/Marlin/src/module/settings.cpp index c8ce84cd83e4..c125577f5ce9 100644 --- a/Marlin/src/module/settings.cpp +++ b/Marlin/src/module/settings.cpp @@ -670,10 +670,7 @@ void MarlinSettings::postprocess() { #endif // Software endstops depend on home_offset - LOOP_NUM_AXES(i) { - update_workspace_offset((AxisEnum)i); - update_software_endstops((AxisEnum)i); - } + LOOP_NUM_AXES(i) update_software_endstops((AxisEnum)i); TERN_(ENABLE_LEVELING_FADE_HEIGHT, set_z_fade_height(new_z_fade_height, false)); // false = no report @@ -3701,7 +3698,7 @@ void MarlinSettings::reset() { // // M206 Home Offset // - TERN_(HAS_M206_COMMAND, gcode.M206_report(forReplay)); + TERN_(HAS_HOME_OFFSET, gcode.M206_report(forReplay)); // // M218 Hotend offsets diff --git a/Marlin/src/module/tool_change.cpp b/Marlin/src/module/tool_change.cpp index d65b3fb32ab5..4c286c81a0ad 100644 --- a/Marlin/src/module/tool_change.cpp +++ b/Marlin/src/module/tool_change.cpp @@ -1417,19 +1417,13 @@ void tool_change(const uint8_t new_tool, bool no_move/*=false*/) { #if ANY(TC_GCODE_USE_GLOBAL_X, TC_GCODE_USE_GLOBAL_Y, TC_GCODE_USE_GLOBAL_Z) // G0/G1/G2/G3/G5 moves are relative to the active tool. // Shift the workspace to make custom moves relative to T0. - xyz_pos_t old_position_shift; + xyz_pos_t old_workspace_offset; if (new_tool > 0) { - old_position_shift = position_shift; + old_workspace_offset = workspace_offset; const xyz_pos_t &he = hotend_offset[new_tool]; - #if ENABLED(TC_GCODE_USE_GLOBAL_X) - position_shift.x -= he.x; update_workspace_offset(X_AXIS); - #endif - #if ENABLED(TC_GCODE_USE_GLOBAL_Y) - position_shift.y -= he.y; update_workspace_offset(Y_AXIS); - #endif - #if ENABLED(TC_GCODE_USE_GLOBAL_Z) - position_shift.z -= he.z; update_workspace_offset(Z_AXIS); - #endif + TERN_(TC_GCODE_USE_GLOBAL_X, workspace_offset.x -= he.x); + TERN_(TC_GCODE_USE_GLOBAL_Y, workspace_offset.y -= he.y); + TERN_(TC_GCODE_USE_GLOBAL_Z, workspace_offset.z -= he.z); } #endif @@ -1462,12 +1456,7 @@ void tool_change(const uint8_t new_tool, bool no_move/*=false*/) { } #if ANY(TC_GCODE_USE_GLOBAL_X, TC_GCODE_USE_GLOBAL_Y, TC_GCODE_USE_GLOBAL_Z) - if (new_tool > 0) { - position_shift = old_position_shift; - TERN_(TC_GCODE_USE_GLOBAL_X, update_workspace_offset(X_AXIS)); - TERN_(TC_GCODE_USE_GLOBAL_Y, update_workspace_offset(Y_AXIS)); - TERN_(TC_GCODE_USE_GLOBAL_Z, update_workspace_offset(Z_AXIS)); - } + if (new_tool > 0) workspace_offset = old_workspace_offset; #endif // If using MECHANICAL_SWITCHING extruder/nozzle, set HOTEND_OFFSET in Z axis after running EVENT_GCODE_TOOLCHANGE diff --git a/ini/features.ini b/ini/features.ini index 2b1d09e20f25..1a3546e575fd 100644 --- a/ini/features.ini +++ b/ini/features.ini @@ -318,7 +318,7 @@ PARK_HEAD_ON_PAUSE = build_src_filter=+ CNC_WORKSPACE_PLANES = build_src_filter=+ CNC_COORDINATE_SYSTEMS = build_src_filter=+ -HAS_M206_COMMAND = build_src_filter=+ +HAS_HOME_OFFSET = build_src_filter=+ EXPECTED_PRINTER_CHECK = build_src_filter=+ HOST_KEEPALIVE_FEATURE = build_src_filter=+ AUTO_REPORT_POSITION = build_src_filter=+ From 91c6a7180d8aa3f2ab8b9bbb486d68dc9657dbff Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 21 Jul 2023 06:06:24 +0000 Subject: [PATCH 377/427] [cron] Bump distribution date (2023-07-21) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 4d497d77fd3d..af787a2c11c7 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-20" +//#define STRING_DISTRIBUTION_DATE "2023-07-21" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index eb1db1bc5e98..13fc73012231 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-20" + #define STRING_DISTRIBUTION_DATE "2023-07-21" #endif /** From 6379d4dbca389b264cf5b404bd6fd9f5c3221be8 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Sat, 22 Jul 2023 15:05:04 +1200 Subject: [PATCH 378/427] =?UTF-8?q?=F0=9F=A9=B9=20Suppress=20G33=20string?= =?UTF-8?q?=20warning=20(#26095)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/calibrate/G33.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/gcode/calibrate/G33.cpp b/Marlin/src/gcode/calibrate/G33.cpp index a3cb7f0b9d22..7530737dde75 100644 --- a/Marlin/src/gcode/calibrate/G33.cpp +++ b/Marlin/src/gcode/calibrate/G33.cpp @@ -649,7 +649,7 @@ void GcodeSuite::G33() { SERIAL_ECHOLNPGM("Save with M500 and/or copy to Configuration.h"); } else { // !end iterations - SString<14> msg; + SString<15> msg; if (iterations < 31) msg.setf(F("Iteration : %02i"), (unsigned int)iterations); else From e451dec674d9093c8c10f953c5f6bcc7f9ed42b0 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 22 Jul 2023 06:05:47 +0000 Subject: [PATCH 379/427] [cron] Bump distribution date (2023-07-22) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index af787a2c11c7..293a90aaa1c8 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-21" +//#define STRING_DISTRIBUTION_DATE "2023-07-22" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 13fc73012231..205a5d8c4281 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-21" + #define STRING_DISTRIBUTION_DATE "2023-07-22" #endif /** From 5bcaae62f2c7965ee7f99eb44a44022f1cbad959 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Mon, 24 Jul 2023 15:31:39 +1200 Subject: [PATCH 380/427] =?UTF-8?q?=E2=9A=A1=EF=B8=8F=20Compact=20RGB565?= =?UTF-8?q?=20TFT=20boot=20images=20(#26011)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/Configuration.h | 2 + Marlin/src/HAL/LPC1768/tft/tft_spi.h | 6 +- Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h | 2 +- Marlin/src/HAL/STM32/tft/tft_fsmc.h | 6 +- Marlin/src/HAL/STM32/tft/tft_ltdc.h | 6 +- Marlin/src/HAL/STM32/tft/tft_spi.h | 6 +- Marlin/src/HAL/STM32F1/tft/tft_fsmc.h | 6 +- Marlin/src/HAL/STM32F1/tft/tft_spi.h | 6 +- Marlin/src/lcd/tft/canvas.cpp | 108 +- Marlin/src/lcd/tft/images/back_32x32x4.cpp | 6 +- .../lcd/tft/images/background_320x30x16.cpp | 6 +- .../lcd/tft/images/bootscreen_1024x600x16.cpp | 4184 +++++++++++++++++ .../lcd/tft/images/bootscreen_112x38x1.cpp | 13 +- .../lcd/tft/images/bootscreen_195x59x16.cpp | 97 +- .../lcd/tft/images/bootscreen_228x255x2.cpp | 10 +- .../lcd/tft/images/bootscreen_228x255x4.cpp | 10 +- .../lcd/tft/images/bootscreen_240x250x16.cpp | 376 ++ .../lcd/tft/images/bootscreen_320x240x16.cpp | 274 +- .../lcd/tft/images/bootscreen_480x320x16.cpp | 451 +- .../lcd/tft/images/btn_rounded_42x39x4.cpp | 6 +- .../lcd/tft/images/btn_rounded_64x52x4.cpp | 6 +- Marlin/src/lcd/tft/images/cancel_64x64x4.cpp | 6 +- Marlin/src/lcd/tft/images/chamber_64x64x4.cpp | 8 +- Marlin/src/lcd/tft/images/confirm_64x64x4.cpp | 6 +- .../src/lcd/tft/images/decrease_64x64x4.cpp | 6 +- .../src/lcd/tft/images/directory_32x32x4.cpp | 6 +- Marlin/src/lcd/tft/images/down_32x32x4.cpp | 6 +- Marlin/src/lcd/tft/images/fan_64x64x4.cpp | 8 +- .../src/lcd/tft/images/fan_fast_64x64x4.cpp | 8 +- .../src/lcd/tft/images/fan_slow_64x64x4.cpp | 8 +- .../src/lcd/tft/images/feedrate_32x32x4.cpp | 6 +- .../src/lcd/tft/images/flowrate_32x32x4.cpp | 6 +- .../src/lcd/tft/images/heated_bed_64x64x4.cpp | 8 +- Marlin/src/lcd/tft/images/home_64x64x4.cpp | 6 +- Marlin/src/lcd/tft/images/hotend_64x64x4.cpp | 6 +- .../src/lcd/tft/images/increase_64x64x4.cpp | 6 +- Marlin/src/lcd/tft/images/left_32x32x4.cpp | 6 +- .../src/lcd/tft/images/leveling_32x32x4.cpp | 6 +- Marlin/src/lcd/tft/images/menu_64x64x4.cpp | 6 +- Marlin/src/lcd/tft/images/pause_64x64x4.cpp | 6 +- Marlin/src/lcd/tft/images/refresh_32x32x4.cpp | 6 +- Marlin/src/lcd/tft/images/right_32x32x4.cpp | 6 +- Marlin/src/lcd/tft/images/sd_64x64x4.cpp | 6 +- .../src/lcd/tft/images/settings_64x64x4.cpp | 6 +- Marlin/src/lcd/tft/images/slider_8x16x4.cpp | 6 +- .../lcd/tft/images/time_elapsed_32x32x4.cpp | 7 +- .../lcd/tft/images/time_remaining_32x32x4.cpp | 7 +- Marlin/src/lcd/tft/images/up_32x32x4.cpp | 6 +- Marlin/src/lcd/tft/tft.h | 16 +- Marlin/src/lcd/tft/tft_image.h | 11 +- Marlin/src/lcd/tft/tft_queue.cpp | 6 +- Marlin/src/lcd/tft/ui_1024x600.h | 12 +- Marlin/src/lcd/tft/ui_240x320.h | 8 +- Marlin/src/lcd/tft/ui_480x320.h | 2 +- Marlin/src/lcd/tft/ui_color_ui.cpp | 2 +- Marlin/src/lcd/tft_io/tft_io.h | 4 +- Marlin/src/lcd/tft_io/tft_orientation.h | 2 +- Marlin/src/pins/linux/pins_RAMPS_LINUX.h | 2 +- Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h | 4 +- Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h | 2 +- Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h | 4 +- Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h | 4 +- .../src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h | 2 +- Marlin/src/pins/stm32f1/pins_CHITU3D_common.h | 2 +- Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h | 2 +- Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h | 2 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h | 2 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h | 2 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h | 2 +- .../src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h | 2 +- .../pins/stm32f1/pins_MKS_ROBIN_NANO_common.h | 2 +- Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h | 2 +- .../pins/stm32f4/pins_BTT_SKR_V2_0_common.h | 2 +- .../pins/stm32f4/pins_MKS_MONSTER8_common.h | 2 +- Marlin/src/pins/stm32f4/pins_MKS_ROBIN2.h | 2 +- .../stm32f4/pins_MKS_ROBIN_NANO_V3_common.h | 2 +- .../src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h | 2 +- Marlin/src/pins/stm32f4/pins_TRONXY_V10.h | 2 +- .../pins/stm32h7/pins_BTT_SKR_V3_0_common.h | 2 +- .../share/pixmaps/logo/marlin-240x250.png | Bin 0 -> 27169 bytes .../scripts/rle16_compress_cpp_image_data.py | 142 + buildroot/tests/LERDGEK | 2 +- 82 files changed, 5777 insertions(+), 241 deletions(-) create mode 100644 Marlin/src/lcd/tft/images/bootscreen_1024x600x16.cpp create mode 100644 Marlin/src/lcd/tft/images/bootscreen_240x250x16.cpp create mode 100644 buildroot/share/pixmaps/logo/marlin-240x250.png create mode 100755 buildroot/share/scripts/rle16_compress_cpp_image_data.py diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 90a5939a246d..3127d59e8b40 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -3313,6 +3313,8 @@ #define TFT_THEME BLACK_MARLIN //#define TFT_SHARED_IO // I/O is shared between TFT display and other devices. Disable async data transfer. + + #define COMPACT_MARLIN_BOOT_LOGO // Use compressed data to save Flash space #endif #if ENABLED(TFT_LVGL_UI) diff --git a/Marlin/src/HAL/LPC1768/tft/tft_spi.h b/Marlin/src/HAL/LPC1768/tft/tft_spi.h index 0ebb29dd60f2..6d5829fc73f3 100644 --- a/Marlin/src/HAL/LPC1768/tft/tft_spi.h +++ b/Marlin/src/HAL/LPC1768/tft/tft_spi.h @@ -49,7 +49,7 @@ #define DATASIZE_8BIT SSP_DATABIT_8 #define DATASIZE_16BIT SSP_DATABIT_16 #define TFT_IO_DRIVER TFT_SPI -#define DMA_MAX_SIZE 0xFFF +#define DMA_MAX_WORDS 0xFFF #define DMA_MINC_ENABLE 1 #define DMA_MINC_DISABLE 0 @@ -82,8 +82,8 @@ class TFT_SPI { static void writeSequence(uint16_t *data, uint16_t count) { transmit(DMA_MINC_ENABLE, data, count); } static void writeMultiple(uint16_t color, uint32_t count) { while (count > 0) { - transmit(DMA_MINC_DISABLE, &color, count > DMA_MAX_SIZE ? DMA_MAX_SIZE : count); - count = count > DMA_MAX_SIZE ? count - DMA_MAX_SIZE : 0; + transmit(DMA_MINC_DISABLE, &color, count > DMA_MAX_WORDS ? DMA_MAX_WORDS : count); + count = count > DMA_MAX_WORDS ? count - DMA_MAX_WORDS : 0; } } }; diff --git a/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h b/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h index c388f3288bbc..944b8267f6fa 100644 --- a/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h +++ b/Marlin/src/HAL/NATIVE_SIM/tft/tft_spi.h @@ -33,7 +33,7 @@ #define DATASIZE_8BIT 8 #define DATASIZE_16BIT 16 #define TFT_IO_DRIVER TFT_SPI -#define DMA_MAX_SIZE 0xFFFF +#define DMA_MAX_WORDS 0xFFFF #define DMA_MINC_ENABLE 1 #define DMA_MINC_DISABLE 0 diff --git a/Marlin/src/HAL/STM32/tft/tft_fsmc.h b/Marlin/src/HAL/STM32/tft/tft_fsmc.h index e710e5511cf4..1776cbdb0f65 100644 --- a/Marlin/src/HAL/STM32/tft/tft_fsmc.h +++ b/Marlin/src/HAL/STM32/tft/tft_fsmc.h @@ -45,7 +45,7 @@ #define DATASIZE_8BIT SPI_DATASIZE_8BIT #define DATASIZE_16BIT SPI_DATASIZE_16BIT #define TFT_IO_DRIVER TFT_FSMC -#define DMA_MAX_SIZE 0xFFFF +#define DMA_MAX_WORDS 0xFFFF #define TFT_DATASIZE TERN(TFT_INTERFACE_FSMC_8BIT, DATASIZE_8BIT, DATASIZE_16BIT) typedef TERN(TFT_INTERFACE_FSMC_8BIT, uint8_t, uint16_t) tft_data_t; @@ -85,8 +85,8 @@ class TFT_FSMC { static void writeSequence(uint16_t *data, uint16_t count) { transmit(DMA_PINC_ENABLE, data, count); } static void writeMultiple(uint16_t color, uint32_t count) { while (count > 0) { - transmit(DMA_MINC_DISABLE, &color, count > DMA_MAX_SIZE ? DMA_MAX_SIZE : count); - count = count > DMA_MAX_SIZE ? count - DMA_MAX_SIZE : 0; + transmit(DMA_MINC_DISABLE, &color, count > DMA_MAX_WORDS ? DMA_MAX_WORDS : count); + count = count > DMA_MAX_WORDS ? count - DMA_MAX_WORDS : 0; } } }; diff --git a/Marlin/src/HAL/STM32/tft/tft_ltdc.h b/Marlin/src/HAL/STM32/tft/tft_ltdc.h index 22c3a13778fc..90cc58d8a525 100644 --- a/Marlin/src/HAL/STM32/tft/tft_ltdc.h +++ b/Marlin/src/HAL/STM32/tft/tft_ltdc.h @@ -32,7 +32,7 @@ #define DATASIZE_8BIT SPI_DATASIZE_8BIT #define DATASIZE_16BIT SPI_DATASIZE_16BIT #define TFT_IO_DRIVER TFT_LTDC -#define DMA_MAX_SIZE 0xFFFF +#define DMA_MAX_WORDS 0xFFFF #define TFT_DATASIZE DATASIZE_16BIT typedef uint16_t tft_data_t; @@ -71,8 +71,8 @@ class TFT_LTDC { static void writeSequence(uint16_t *data, uint16_t count) { transmit(DMA_PINC_ENABLE, data, count); } static void writeMultiple(uint16_t color, uint32_t count) { while (count > 0) { - transmit(DMA_PINC_DISABLE, &color, count > DMA_MAX_SIZE ? DMA_MAX_SIZE : count); - count = count > DMA_MAX_SIZE ? count - DMA_MAX_SIZE : 0; + transmit(DMA_PINC_DISABLE, &color, count > DMA_MAX_WORDS ? DMA_MAX_WORDS : count); + count = count > DMA_MAX_WORDS ? count - DMA_MAX_WORDS : 0; } } }; diff --git a/Marlin/src/HAL/STM32/tft/tft_spi.h b/Marlin/src/HAL/STM32/tft/tft_spi.h index 3d1f9829e3c0..6345c91f6ce3 100644 --- a/Marlin/src/HAL/STM32/tft/tft_spi.h +++ b/Marlin/src/HAL/STM32/tft/tft_spi.h @@ -42,7 +42,7 @@ #define DATASIZE_16BIT SPI_DATASIZE_16BIT #define DATASIZE_32BIT SPI_DATASIZE_32BIT #define TFT_IO_DRIVER TFT_SPI -#define DMA_MAX_SIZE 0xFFFF +#define DMA_MAX_WORDS 0xFFFF class TFT_SPI { private: @@ -81,8 +81,8 @@ class TFT_SPI { static void writeSequence(uint16_t *data, uint16_t count) { transmit(DMA_MINC_ENABLE, data, count); } static void writeMultiple(uint16_t color, uint32_t count) { while (count > 0) { - transmit(DMA_MINC_DISABLE, &color, count > DMA_MAX_SIZE ? DMA_MAX_SIZE : count); - count = count > DMA_MAX_SIZE ? count - DMA_MAX_SIZE : 0; + transmit(DMA_MINC_DISABLE, &color, count > DMA_MAX_WORDS ? DMA_MAX_WORDS : count); + count = count > DMA_MAX_WORDS ? count - DMA_MAX_WORDS : 0; } } }; diff --git a/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h b/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h index 67a2b9cd53c1..214acf127e63 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h +++ b/Marlin/src/HAL/STM32F1/tft/tft_fsmc.h @@ -40,7 +40,7 @@ #define DATASIZE_8BIT DMA_SIZE_8BITS #define DATASIZE_16BIT DMA_SIZE_16BITS #define TFT_IO_DRIVER TFT_FSMC -#define DMA_MAX_SIZE 0xFFFF +#define DMA_MAX_WORDS 0xFFFF #define DMA_PINC_ENABLE DMA_PINC_MODE #define DMA_PINC_DISABLE 0 @@ -77,8 +77,8 @@ class TFT_FSMC { static void writeSequence(uint16_t *data, uint16_t count) { transmit(DMA_PINC_ENABLE, data, count); } static void writeMultiple(uint16_t color, uint32_t count) { while (count > 0) { - transmit(DMA_PINC_DISABLE, &color, count > DMA_MAX_SIZE ? DMA_MAX_SIZE : count); - count = count > DMA_MAX_SIZE ? count - DMA_MAX_SIZE : 0; + transmit(DMA_PINC_DISABLE, &color, count > DMA_MAX_WORDS ? DMA_MAX_WORDS : count); + count = count > DMA_MAX_WORDS ? count - DMA_MAX_WORDS : 0; } } }; diff --git a/Marlin/src/HAL/STM32F1/tft/tft_spi.h b/Marlin/src/HAL/STM32F1/tft/tft_spi.h index 5a57081c2abd..af53f352be4c 100644 --- a/Marlin/src/HAL/STM32F1/tft/tft_spi.h +++ b/Marlin/src/HAL/STM32F1/tft/tft_spi.h @@ -56,7 +56,7 @@ #define DATASIZE_8BIT DATA_SIZE_8BIT #define DATASIZE_16BIT DATA_SIZE_16BIT #define TFT_IO_DRIVER TFT_SPI -#define DMA_MAX_SIZE 0xFFFF +#define DMA_MAX_WORDS 0xFFFF #define DMA_MINC_ENABLE DMA_MINC_MODE #define DMA_MINC_DISABLE 0 @@ -89,8 +89,8 @@ class TFT_SPI { static void writeSequence(uint16_t *data, uint16_t count) { transmit(DMA_MINC_ENABLE, data, count); } static void writeMultiple(uint16_t color, uint32_t count) { while (count > 0) { - transmit(DMA_MINC_DISABLE, &color, count > DMA_MAX_SIZE ? DMA_MAX_SIZE : count); - count = count > DMA_MAX_SIZE ? count - DMA_MAX_SIZE : 0; + transmit(DMA_MINC_DISABLE, &color, count > DMA_MAX_WORDS ? DMA_MAX_WORDS : count); + count = count > DMA_MAX_WORDS ? count - DMA_MAX_WORDS : 0; } } }; diff --git a/Marlin/src/lcd/tft/canvas.cpp b/Marlin/src/lcd/tft/canvas.cpp index 4a056524a2e5..4bded7225125 100644 --- a/Marlin/src/lcd/tft/canvas.cpp +++ b/Marlin/src/lcd/tft/canvas.cpp @@ -37,12 +37,14 @@ void Canvas::instantiate(uint16_t x, uint16_t y, uint16_t width, uint16_t height startLine = 0; endLine = 0; + // The TFT handles DMA within the given canvas rectangle + // so whatever is drawn will be offset on the screen by x,y. tft.set_window(x, y, x + width - 1, y + height - 1); } void Canvas::next() { startLine = endLine; - endLine = TFT_BUFFER_SIZE < width * (height - startLine) ? startLine + TFT_BUFFER_SIZE / width : height; + endLine = (TFT_BUFFER_WORDS) < width * (height - startLine) ? startLine + (TFT_BUFFER_WORDS) / width : height; } bool Canvas::toScreen() { @@ -99,28 +101,84 @@ void Canvas::addImage(int16_t x, int16_t y, MarlinImage image, uint16_t *colors) uint16_t *data = (uint16_t *)images[image].data; if (!data) return; - uint16_t image_width = images[image].width, - image_height = images[image].height; + const uint16_t image_width = images[image].width, + image_height = images[image].height; colorMode_t color_mode = images[image].colorMode; - if (color_mode != HIGHCOLOR) - return addImage(x, y, image_width, image_height, color_mode, (uint8_t *)data, colors); - - // HIGHCOLOR - 16 bits per pixel - - for (int16_t i = 0; i < image_height; i++) { - int16_t line = y + i; - if (line >= startLine && line < endLine) { - uint16_t *pixel = buffer + x + (line - startLine) * width; - for (int16_t j = 0; j < image_width; j++) { - if ((x + j >= 0) && (x + j < width)) *pixel = ENDIAN_COLOR(*data); - pixel++; - data++; + if (color_mode == HIGHCOLOR) { + // HIGHCOLOR - 16 bits per pixel + int16_t line = y; + for (int16_t i = 0; i < image_height; i++, line++) { + if (WITHIN(line, startLine, endLine - 1)) { + uint16_t *pixel = buffer + x + (line - startLine) * width; + uint16_t cx = x; + for (int16_t j = 0; j < image_width; j++, cx++) { + if (WITHIN(cx, 0, width - 1)) { + uint16_t color = ENDIAN_COLOR(*data); + if (color == 0x0001) color = COLOR_BACKGROUND; + *pixel = color; + } + pixel++; + data++; + } } + else + data += image_width; } - else - data += image_width; + return; } + + #if ENABLED(COMPACT_MARLIN_BOOT_LOGO) + // RLE16 HIGHCOLOR - 16 bits per pixel + if (color_mode == RLE16) { + uint8_t *bytedata = (uint8_t *)images[image].data; + if (!bytedata) return; + + // Loop through the image data advancing the row and column as needed + int16_t srcy = 0, srcx = 0, // Image data line / column index + dsty = y, dstx = x; // Destination line / column index + + uint16_t color = 0; // Persist the last fetched color value + bool done = false; + while (!done) { + uint8_t count = *bytedata++; // Get the count byte + const bool uniq = bool(count & 0x80); // >= 128 is a distinct run; < 128 is a repeat run + count = (count & 0x7F) + 1; // Actual count is 7-bit plus 1 + + bool getcol = true; // Get at least one color word + while (count--) { // Emit 'count' pixels + + if (getcol) { + getcol = uniq; // Keep getting colors if not RLE + const uint16_t msb = *bytedata++, // Color most-significant bits + lsb = *bytedata++; // Color least-significant bits + color = ENDIAN_COLOR((msb << 8) | lsb); // Color with proper endianness + if (color == 0x0001) color = COLOR_BACKGROUND; // 0x0001 is "transparent" + } + + if (WITHIN(dsty, startLine, endLine - 1)) { // Dest pixel Y within the segment? + if (WITHIN(dstx, 0, width - 1)) { // Dest pixel X within the canvas? + uint16_t * const pixel = buffer + dstx + (dsty - startLine) * width; + *pixel = color; // Store the color in the pixel + } + } + + ++srcx; ++dstx; // Advance the pixel column + if (srcx >= image_width) { // Past the right edge of the source image? + ++srcy; ++dsty; // Advance to the next line + srcx = 0; dstx = x; // May be shifted within the canvas, but usually not + if (dsty >= endLine || srcy >= image_height) { // Done with the segment or the image? + done = true; // Set a flag to end the loop... + break; // ...and break out of while(count--) + } + } + } + } + return; + } + #endif // COMPACT_MARLIN_BOOT_LOGO + + addImage(x, y, image_width, image_height, color_mode, (uint8_t *)data, colors); } void Canvas::addImage(int16_t x, int16_t y, uint8_t image_width, uint8_t image_height, colorMode_t color_mode, uint8_t *data, uint16_t *colors) { @@ -138,8 +196,8 @@ void Canvas::addImage(int16_t x, int16_t y, uint8_t image_width, uint8_t image_h colors--; for (int16_t i = 0; i < image_height; i++) { - int16_t line = y + i; - if (line >= startLine && line < endLine) { + const int16_t line = y + i; + if (WITHIN(line, startLine, endLine - 1)) { uint16_t *pixel = buffer + x + (line - startLine) * width; uint8_t offset = 8 - bitsPerPixel; for (int16_t j = 0; j < image_width; j++) { @@ -147,7 +205,7 @@ void Canvas::addImage(int16_t x, int16_t y, uint8_t image_width, uint8_t image_h data++; offset = 8 - bitsPerPixel; } - if ((x + j >= 0) && (x + j < width)) { + if (WITHIN(x + j, 0, width - 1)) { const uint8_t color = ((*data) >> offset) & mask; if (color) *pixel = *(colors + color); } @@ -165,8 +223,8 @@ void Canvas::addRect(uint16_t x, uint16_t y, uint16_t rectangleWidth, uint16_t r if (endLine < y || startLine > y + rectangleHeight) return; for (uint16_t i = 0; i < rectangleHeight; i++) { - uint16_t line = y + i; - if (line >= startLine && line < endLine) { + const uint16_t line = y + i; + if (WITHIN(line, startLine, endLine - 1)) { uint16_t *pixel = buffer + x + (line - startLine) * width; if (i == 0 || i == rectangleHeight - 1) { for (uint16_t j = 0; j < rectangleWidth; j++) *pixel++ = color; @@ -184,8 +242,8 @@ void Canvas::addBar(uint16_t x, uint16_t y, uint16_t barWidth, uint16_t barHeigh if (endLine < y || startLine > y + barHeight) return; for (uint16_t i = 0; i < barHeight; i++) { - uint16_t line = y + i; - if (line >= startLine && line < endLine) { + const uint16_t line = y + i; + if (WITHIN(line, startLine, endLine - 1)) { uint16_t *pixel = buffer + x + (line - startLine) * width; for (uint16_t j = 0; j < barWidth; j++) *pixel++ = color; } diff --git a/Marlin/src/lcd/tft/images/back_32x32x4.cpp b/Marlin/src/lcd/tft/images/back_32x32x4.cpp index d19bc7650981..d858956c9771 100644 --- a/Marlin/src/lcd/tft/images/back_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/back_32x32x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t back_32x32x4[]; -const tImage Back_32x32x4 = { (void *)back_32x32x4, 32, 32, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t back_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -63,4 +61,6 @@ const uint8_t back_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, }; +const tImage Back_32x32x4 = { (void *)back_32x32x4, 32, 32, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/background_320x30x16.cpp b/Marlin/src/lcd/tft/images/background_320x30x16.cpp index 8710bd2ea061..9e2916a3e506 100644 --- a/Marlin/src/lcd/tft/images/background_320x30x16.cpp +++ b/Marlin/src/lcd/tft/images/background_320x30x16.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint16_t background_320x30x16[]; -const tImage Background320x30x16 = { (void *)background_320x30x16, 320, 30, HIGHCOLOR }; +#include "../tft_image.h" const uint16_t background_320x30x16[9600] = { 0x10F2, 0x18D2, 0x18D2, 0x10D2, 0x18D2, 0x18D2, 0x18D2, 0x18D2, 0x18D2, 0x18D2, 0x18D2, 0x18D2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18D2, 0x18F2, 0x18F2, 0x18D2, 0x18D2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F2, 0x18F3, 0x18F3, 0x20F2, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x2112, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x2113, 0x20F2, 0x20F3, 0x20F2, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x2113, 0x28F3, 0x2113, 0x20F3, 0x2113, 0x28F3, 0x20F3, 0x2113, 0x2113, 0x2113, 0x2113, 0x2113, 0x2113, 0x2113, 0x28F3, 0x28F3, 0x2113, 0x2113, 0x2113, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2113, 0x2913, 0x2913, 0x2913, 0x2914, 0x2913, 0x2913, 0x28F3, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x28F3, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x28F3, 0x2913, 0x2913, 0x2914, 0x2913, 0x2913, 0x2913, 0x2113, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2913, 0x2113, 0x2113, 0x2113, 0x28F3, 0x28F3, 0x2113, 0x2113, 0x2113, 0x2113, 0x2113, 0x2113, 0x2113, 0x20F3, 0x28F3, 0x2113, 0x20F3, 0x2113, 0x28F3, 0x2113, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F2, 0x20F3, 0x20F2, 0x2113, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x2112, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x20F3, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x20F2, 0x18F3, 0x18F3, 0x18F2, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F3, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, 0x18F2, @@ -61,4 +59,6 @@ const uint16_t background_320x30x16[9600] = { 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x006D, 0x004D, 0x004D, 0x004D, 0x0150, 0x01F1, 0x0150, 0x006D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x006D, 0x004D, 0x004E, 0x004D, 0x004D, 0x004D, 0x0150, 0x01F1, 0x00AE, 0x006D, 0x004D, 0x004D, 0x004D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x004D, 0x006D, 0x006D, 0x004D, 0x006D, 0x004D, 0x006D, 0x006D, 0x006D, 0x0170, 0x01B1, 0x006D, 0x006D, 0x004D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006D, 0x004E, 0x006E, 0x01D1, 0x010F, 0x006D, 0x006D, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x004D, 0x006D, 0x006E, 0x004E, 0x0212, 0x004D, 0x004E, 0x006E, 0x006D, 0x004D, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006D, 0x006D, 0x010F, 0x01D1, 0x006E, 0x004E, 0x006D, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x004D, 0x006D, 0x006D, 0x01B1, 0x0170, 0x006D, 0x006D, 0x006D, 0x004D, 0x006D, 0x004D, 0x006D, 0x006D, 0x004D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x004D, 0x004D, 0x004D, 0x006D, 0x00AE, 0x01F1, 0x0150, 0x004D, 0x004D, 0x004D, 0x004E, 0x004D, 0x006D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D }; +const tImage Background320x30x16 = { (void *)background_320x30x16, 320, 30, HIGHCOLOR }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/bootscreen_1024x600x16.cpp b/Marlin/src/lcd/tft/images/bootscreen_1024x600x16.cpp new file mode 100644 index 000000000000..fb97dc8e5295 --- /dev/null +++ b/Marlin/src/lcd/tft/images/bootscreen_1024x600x16.cpp @@ -0,0 +1,4184 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../../inc/MarlinConfigPre.h" + +#if ALL(HAS_GRAPHICAL_TFT, SHOW_BOOTSCREEN) + +#include "../tft_image.h" + +const uint16_t marlin_logo_1024x600x16[614400] = { + 0x20EF,0x20EF,0x20EF,0x210F,0x210F,0x210F,0x20EE,0x20EE,0x20EE,0x20EF,0x20EF,0x20EF,0x20EE,0x210E,0x210E,0x210E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190F,0x190F,0x210F,0x20EF,0x210F,0x210F,0x190F,0x210F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210E,0x210E,0x210F,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210F,0x210F,0x210F,0x20EF,0x210F,0x190F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x20EF,0x290F,0x28EF,0x210F,0x2110,0x1931,0x1933,0x0934,0x0155,0x0177,0x0197,0x01B8,0x01FA,0x01DA,0x01FA,0x01FA,0x01D9,0x01D9,0x01FA,0x01F9,0x01D8,0x0197,0x0155,0x0135,0x08F3,0x1113,0x1952,0x2131,0x2111,0x2910,0x2910,0x2910,0x20EF,0x290F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x210F,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2910,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x212F,0x212F,0x210F,0x2930,0x210F,0x2110,0x20EF,0x2110,0x2110,0x2110,0x2131,0x2132,0x1953,0x1954,0x1174,0x11B6,0x19F7,0x11D6,0x0995,0x0974,0x0954,0x0953,0x1133,0x1132,0x1972,0x2172,0x2192,0x2992,0x2171,0x2971,0x2151,0x2151,0x2151,0x2151,0x2130,0x2151,0x2151,0x2951,0x2131,0x2951,0x2131,0x2931,0x2930,0x2951,0x2130,0x2151,0x2151,0x2151,0x2151,0x2151,0x2171,0x2192,0x2151,0x2151,0x1931,0x1930,0x2151,0x2172,0x1952,0x1972,0x1973,0x1174,0x1195,0x11B6,0x09B7,0x09D7,0x09B7,0x09D7,0x09F8,0x09F8,0x09F8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D7,0x0997,0x0975,0x1133,0x1112,0x1911,0x1911,0x1910,0x2110,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x20F0,0x2910,0x2110,0x2110,0x2131,0x1932,0x1952,0x1953,0x1995,0x19D6,0x1A18,0x19F8,0x19F8,0x11D7,0x0975,0x0113,0x0933,0x1132,0x1132,0x1931,0x1910,0x2110,0x210F,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x1932,0x1953,0x1195,0x11D6,0x11F7,0x11D6,0x11B6,0x0974,0x0974,0x1174,0x0973,0x0973,0x0954,0x0975,0x09B6,0x09D7,0x11F7,0x19D7,0x1974,0x1933,0x1911,0x2111,0x2131,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x20F0,0x20F0,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x2132,0x1933,0x1154,0x1996,0x19D7,0x11D7,0x11B7,0x0954,0x1132,0x1131,0x1951,0x1951,0x10F1,0x1112,0x1133,0x1996,0x1A19,0x11F9,0x11B8,0x0956,0x1134,0x1134,0x1133,0x1134,0x1154,0x1175,0x0976,0x09B7,0x11F7,0x19F7,0x1195,0x1174,0x1133,0x1132,0x1952,0x1132,0x1153,0x0973,0x0974,0x11B6,0x1A17,0x1A17,0x11B6,0x1154,0x1132,0x1911,0x1910,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x20EF,0x210F,0x20EF,0x2910,0x2910,0x2110,0x2130,0x2110,0x2110,0x2130,0x1931,0x1932,0x0913,0x19D7,0x1A19,0x19F8,0x19B7,0x10F3,0x18F2,0x1911,0x2130,0x2130,0x2130,0x18EF,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2110,0x2110,0x2131,0x1931,0x1132,0x0933,0x19B6,0x19D7,0x19F7,0x19B6,0x1132,0x1131,0x1931,0x1930,0x2131,0x1931,0x1112,0x0913,0x11B6,0x11F7,0x1A18,0x19D7,0x1133,0x1912,0x2111,0x2111,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x214F,0x192F,0x1930,0x1910,0x10F0,0x2153,0x2174,0x2195,0x2195,0x1996,0x19B6,0x0975,0x0954,0x0913,0x0912,0x1131,0x1930,0x2110,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x1930,0x1930,0x1910,0x1930,0x1931,0x1111,0x08F2,0x19F6,0x11F7,0x11F7,0x11B5,0x0912,0x1932,0x2131,0x2130,0x2110,0x2110,0x2110,0x2110,0x2131,0x1931,0x1132,0x1994,0x19F7,0x19D7,0x11B7,0x0975,0x1154,0x1153,0x1931,0x1931,0x1910,0x2110,0x210F,0x210F,0x292F,0x292F,0x292F,0x2930,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2930,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2910,0x2930,0x2110,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2131,0x2131,0x1912,0x08F2,0x1994,0x21F6,0x29F6,0x1995,0x1113,0x1132,0x1932,0x1132,0x1132,0x1132,0x1132,0x0933,0x1995,0x19B6,0x21F6,0x19B5,0x0912,0x1932,0x1931,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x290F,0x210F,0x210F,0x2930,0x2910,0x20F0,0x18F1,0x10F2,0x0934,0x0955,0x0176,0x0176,0x0196,0x0197,0x0176,0x0976,0x0955,0x0934,0x1113,0x1133,0x1932,0x1911,0x1911,0x1910,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210E,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x20EF,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x20EF,0x2110,0x210F,0x210F,0x2130,0x2130,0x2150,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x20EF,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x20EF,0x210F,0x20EF,0x20EF,0x20EF,0x210F,0x20EF,0x210F,0x190F,0x1910,0x1910,0x1910,0x1910,0x1911,0x10F1,0x1133,0x11D7,0x09D8,0x09FA,0x01DA,0x01BA,0x01BA,0x01BA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01BA,0x01DA,0x01D9,0x01B9,0x01DA,0x01B9,0x01B9,0x01DA,0x01BA,0x01BA,0x01DA,0x01DA,0x01BA,0x01BA,0x01DA,0x01B9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01B8,0x11D9,0x19D7,0x08B1,0x18D0,0x20F0,0x20EF,0x20EE,0x210E,0x20EE,0x20EE,0x210F,0x210F,0x210F,0x20EF,0x20EF,0x20EF,0x18EF,0x18EF, + 0x20EF,0x20EF,0x20EF,0x20EF,0x210F,0x18EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x210F,0x210E,0x210E,0x210E,0x212F,0x190E,0x212E,0x190E,0x190E,0x190E,0x190E,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x190F,0x210F,0x210F,0x210F,0x20EE,0x210F,0x20EE,0x210F,0x210E,0x210F,0x20EE,0x210E,0x210E,0x210F,0x20EE,0x210E,0x210E,0x210F,0x20EE,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x20EF,0x28EF,0x28EF,0x290F,0x2910,0x2110,0x1931,0x1132,0x0933,0x0975,0x0177,0x01B8,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01D9,0x01F9,0x01D8,0x01D8,0x0997,0x0955,0x0913,0x1113,0x1932,0x1911,0x2111,0x20F0,0x2910,0x2910,0x28EF,0x20EF,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2110,0x2910,0x2110,0x2110,0x210F,0x2130,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x210F,0x210F,0x2110,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2130,0x210F,0x212F,0x210F,0x2930,0x210F,0x212F,0x210F,0x2930,0x2110,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2111,0x2131,0x1932,0x1933,0x1174,0x1195,0x19F7,0x19F7,0x11D6,0x1195,0x0954,0x0933,0x0912,0x0912,0x10F1,0x1111,0x1110,0x1110,0x1910,0x1911,0x1910,0x1931,0x1910,0x1910,0x1910,0x1930,0x1910,0x1910,0x1910,0x1910,0x2110,0x2110,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1931,0x1931,0x1110,0x1110,0x1910,0x1110,0x1910,0x1931,0x1910,0x1911,0x1111,0x1111,0x0912,0x0933,0x0134,0x1196,0x09B7,0x09D7,0x09D7,0x11F8,0x09F8,0x09F8,0x09D8,0x09B7,0x09D8,0x09D8,0x09D8,0x09D7,0x09B7,0x1175,0x1133,0x1112,0x1932,0x1910,0x2110,0x210F,0x212F,0x212F,0x212F,0x190F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2131,0x1931,0x1932,0x1133,0x1174,0x1195,0x11B6,0x19D7,0x19D7,0x11B7,0x19D7,0x1175,0x0912,0x1132,0x1932,0x1931,0x2131,0x2110,0x2130,0x210F,0x210F,0x210F,0x290F,0x20EE,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x1932,0x1133,0x1195,0x11D6,0x11F7,0x11F7,0x11B6,0x0974,0x0953,0x0953,0x0953,0x0953,0x0954,0x0975,0x09D6,0x11F7,0x11D7,0x11B6,0x1974,0x1932,0x1911,0x2111,0x2131,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2111,0x2131,0x2132,0x1932,0x1154,0x1995,0x19D7,0x19D7,0x11B6,0x0954,0x0932,0x1131,0x1951,0x1931,0x1911,0x1112,0x1954,0x19B6,0x19F8,0x11F8,0x0997,0x0956,0x0934,0x0913,0x0913,0x1133,0x0934,0x0955,0x0996,0x11D7,0x11F8,0x11F7,0x11B5,0x1174,0x1153,0x1132,0x1132,0x1132,0x1153,0x0953,0x0974,0x11B6,0x1A17,0x19F7,0x1195,0x1134,0x1132,0x1911,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x20EF,0x2910,0x290F,0x2110,0x210F,0x2110,0x2130,0x2130,0x1931,0x1111,0x0913,0x19F7,0x19F8,0x19F8,0x1996,0x1113,0x1912,0x1911,0x1910,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x210F,0x2110,0x2130,0x2130,0x1931,0x1132,0x0933,0x19B6,0x19D7,0x19F7,0x19B5,0x1132,0x1111,0x1931,0x1910,0x2131,0x1931,0x1112,0x0912,0x11B6,0x11F7,0x1A18,0x19D6,0x1113,0x1912,0x2111,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x210F,0x2930,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x210F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x212F,0x212F,0x212F,0x192F,0x190F,0x1910,0x1911,0x2152,0x2153,0x2174,0x1975,0x21B6,0x19B6,0x11B6,0x1195,0x0933,0x1132,0x1932,0x1930,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x212F,0x1930,0x2130,0x1930,0x2130,0x1931,0x1131,0x0912,0x19D6,0x11F7,0x11F7,0x1195,0x0912,0x1932,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x1931,0x1932,0x1153,0x19D7,0x19F8,0x11B7,0x1176,0x1154,0x1153,0x1932,0x1931,0x2130,0x190F,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x2930,0x2930,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x2930,0x210F,0x210F,0x290F,0x212F,0x210F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2131,0x2131,0x1912,0x08F2,0x1994,0x21D6,0x29F6,0x1994,0x1112,0x1132,0x1952,0x1132,0x1932,0x1132,0x1133,0x0933,0x1995,0x19D6,0x21F6,0x1995,0x0912,0x1132,0x1931,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x2930,0x210F,0x2110,0x2111,0x1912,0x1133,0x1175,0x0996,0x0997,0x09B7,0x01B7,0x01B7,0x0197,0x0997,0x0976,0x0934,0x1133,0x1133,0x1932,0x1931,0x1931,0x2131,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x20EF,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x20EF,0x210F,0x210F,0x210F,0x20EF,0x210F,0x20EF,0x210F,0x20EF,0x210F,0x20EF,0x210F,0x20EF,0x20EF,0x210F,0x210F,0x210F,0x18EF,0x190F,0x1910,0x1910,0x1910,0x1911,0x10F1,0x0913,0x11D7,0x09F9,0x01D9,0x01BA,0x01BA,0x01BA,0x01BA,0x01BA,0x01DA,0x01DA,0x01BA,0x01DA,0x01BA,0x01BA,0x01B9,0x01DA,0x01B9,0x01B9,0x01B9,0x01B9,0x01B9,0x01BA,0x01BA,0x01DA,0x01BA,0x01BA,0x01BA,0x01BA,0x01BA,0x01BA,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B8,0x11F9,0x11B7,0x08D2,0x18D0,0x20F0,0x20EF,0x20EF,0x20EE,0x20EE,0x20EE,0x210F,0x210F,0x210F,0x20EF,0x20EF,0x20EF,0x20EF,0x18EF, + 0x210F,0x20EF,0x20EF,0x20EF,0x210F,0x210F,0x20EE,0x210F,0x20EE,0x210E,0x20EE,0x20EF,0x20EE,0x20EE,0x210E,0x210E,0x210E,0x212F,0x210F,0x212F,0x190E,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210E,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x292F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x1911,0x1953,0x1154,0x0996,0x09B8,0x01D8,0x01D9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01D9,0x01F9,0x01D9,0x01D9,0x01D8,0x09D8,0x11D7,0x1195,0x1133,0x2153,0x2111,0x20F0,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x292F,0x210F,0x2930,0x2130,0x210F,0x2130,0x2130,0x2110,0x2130,0x2110,0x2910,0x2910,0x2910,0x2910,0x210F,0x2110,0x210F,0x212F,0x2130,0x212F,0x2930,0x2130,0x2930,0x212F,0x2930,0x2930,0x2130,0x2930,0x2110,0x210F,0x2930,0x210F,0x2930,0x290F,0x212F,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x2930,0x2930,0x290F,0x212F,0x292F,0x212F,0x2930,0x2130,0x210F,0x2130,0x210F,0x2130,0x2130,0x2110,0x2131,0x1911,0x1932,0x1953,0x1994,0x1195,0x19D6,0x19D6,0x19D6,0x1196,0x0954,0x0933,0x0912,0x08F1,0x08F1,0x08F0,0x08F0,0x10F1,0x10F0,0x10F0,0x10F0,0x10F0,0x10F0,0x10F0,0x10F0,0x1111,0x1111,0x1111,0x10F1,0x10F1,0x18F1,0x10F1,0x1111,0x10F1,0x1911,0x1111,0x10F1,0x1111,0x1111,0x08F0,0x08F1,0x1111,0x10F1,0x10F1,0x10F1,0x10F0,0x10F1,0x08F1,0x0911,0x0912,0x0933,0x0975,0x0996,0x1218,0x09D7,0x11D7,0x09D7,0x0996,0x0997,0x0196,0x0176,0x09B7,0x09D8,0x1219,0x11F8,0x11B7,0x1175,0x1113,0x1912,0x1931,0x2131,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2930,0x210F,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2930,0x2110,0x2910,0x2910,0x2930,0x2910,0x210F,0x290F,0x2910,0x2910,0x2910,0x210F,0x2910,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x2910,0x2910,0x2110,0x2110,0x2130,0x2151,0x1931,0x1932,0x1133,0x1154,0x1175,0x19B6,0x19D7,0x19D7,0x19B6,0x19D6,0x1995,0x0912,0x1111,0x1931,0x2151,0x2130,0x2150,0x2130,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x292F,0x290F,0x210F,0x212F,0x2110,0x2930,0x2930,0x2130,0x2130,0x2110,0x2110,0x2131,0x1911,0x1932,0x1174,0x19D6,0x19F7,0x1A17,0x11B6,0x0995,0x0933,0x0954,0x0953,0x0954,0x0954,0x0975,0x0996,0x11D7,0x11D7,0x11B6,0x1974,0x1932,0x1911,0x2111,0x2131,0x2130,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2950,0x2130,0x2110,0x2110,0x2131,0x2131,0x2132,0x1932,0x1954,0x1995,0x19B6,0x19D7,0x11B6,0x0974,0x0912,0x1131,0x1951,0x1951,0x1931,0x1932,0x1953,0x19B6,0x19D7,0x11D8,0x0997,0x0976,0x0954,0x0913,0x0913,0x0913,0x0934,0x0954,0x0996,0x11D7,0x19F7,0x19F7,0x11B5,0x1174,0x1152,0x1132,0x1131,0x1132,0x1132,0x1173,0x0974,0x11D6,0x1A17,0x19F7,0x1175,0x1133,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x2130,0x2110,0x2130,0x2131,0x1932,0x0933,0x19F7,0x1A18,0x1A18,0x1196,0x1113,0x1911,0x1931,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x1910,0x1911,0x1132,0x1153,0x11B6,0x19D7,0x19F7,0x19B6,0x1132,0x1111,0x2131,0x2130,0x1931,0x1911,0x1112,0x1113,0x1195,0x11F7,0x1A18,0x19D6,0x1112,0x1912,0x2111,0x2110,0x2130,0x2130,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x1911,0x1932,0x1953,0x1933,0x1954,0x1995,0x21D6,0x11B6,0x1195,0x1174,0x1133,0x1952,0x1931,0x2130,0x2110,0x210F,0x210F,0x2130,0x2930,0x212F,0x212F,0x2130,0x1930,0x2130,0x1931,0x1932,0x1132,0x11D6,0x11D6,0x11F7,0x1195,0x1112,0x1931,0x2131,0x2131,0x20F0,0x2110,0x2110,0x2130,0x2110,0x1931,0x1932,0x1153,0x19B5,0x19F7,0x19D7,0x19B7,0x1175,0x1133,0x1132,0x1951,0x2131,0x2130,0x2130,0x210F,0x210F,0x212F,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x210F,0x210F,0x2910,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2910,0x2910,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x210F,0x212F,0x210F,0x2930,0x212F,0x210F,0x2110,0x2110,0x2130,0x2930,0x210F,0x210F,0x290F,0x210F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2131,0x2131,0x1932,0x1112,0x1974,0x21F6,0x2A17,0x1994,0x1112,0x1112,0x1932,0x1932,0x1932,0x1132,0x1132,0x1133,0x1995,0x21D6,0x21F6,0x1194,0x1132,0x1132,0x1932,0x2131,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x2130,0x2130,0x2110,0x2130,0x2130,0x2132,0x1953,0x1995,0x1196,0x11F8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x11B7,0x1196,0x1154,0x1112,0x1932,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x2930,0x210F,0x210F,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2110,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x210F,0x2910,0x2910,0x210F,0x2930,0x210F,0x210F,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x2930,0x2930,0x2930,0x2110,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x292F,0x290F,0x292F,0x2930,0x2930,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x18EF,0x2130,0x2110,0x1910,0x1910,0x1111,0x0912,0x11D7,0x09D8,0x01D9,0x01BA,0x01BA,0x01BA,0x01BA,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01B9,0x01BA,0x01B9,0x01DA,0x01B9,0x01B9,0x01B9,0x01BA,0x01B9,0x01DA,0x01BA,0x01BA,0x01DA,0x01DA,0x01BA,0x01BA,0x01BA,0x01BA,0x01DA,0x01DA,0x01D9,0x01F9,0x01B9,0x01B9,0x01B9,0x0198,0x11F9,0x11B6,0x08D1,0x18F0,0x2110,0x210F,0x20EE,0x210E,0x20EE,0x20EE,0x20EE,0x20EE,0x210F,0x210F,0x210F,0x20EE,0x18EE,0x210F, + 0x210F,0x20EF,0x210F,0x210F,0x20EE,0x210E,0x210F,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x210E,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210E,0x212F,0x210E,0x210F,0x210E,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210E,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x2130,0x2110,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2110,0x1911,0x1133,0x11B5,0x11F8,0x09D8,0x09F9,0x01D9,0x01D9,0x01B9,0x01DA,0x01FA,0x01DA,0x01FA,0x01F9,0x01D9,0x0A1A,0x01F9,0x09F8,0x11F8,0x19D7,0x1133,0x1932,0x2111,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x292F,0x290F,0x212F,0x2930,0x210F,0x2130,0x2130,0x210F,0x2130,0x210F,0x2110,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x210F,0x2130,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x2930,0x2930,0x210F,0x210F,0x2930,0x210F,0x2930,0x210F,0x290F,0x2930,0x292F,0x212F,0x2130,0x210F,0x212F,0x2130,0x212F,0x292F,0x2930,0x2110,0x2130,0x2111,0x1931,0x1932,0x1932,0x1953,0x1974,0x1195,0x19B6,0x19D6,0x19D7,0x19D7,0x19B6,0x19B5,0x1154,0x1153,0x1153,0x0932,0x1132,0x0912,0x1133,0x1132,0x1132,0x1132,0x1153,0x1153,0x1153,0x1132,0x1153,0x1953,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1153,0x1133,0x0933,0x0933,0x0933,0x1133,0x1133,0x1133,0x1132,0x1133,0x1132,0x1133,0x0933,0x0954,0x0975,0x0996,0x11D7,0x11D7,0x09D7,0x09B7,0x0996,0x0976,0x0155,0x0156,0x0156,0x0176,0x09B7,0x11F8,0x11F8,0x11D7,0x1196,0x1153,0x1932,0x2131,0x2131,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2910,0x2910,0x2110,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x212F,0x212F,0x2930,0x210F,0x210F,0x2130,0x210F,0x2930,0x2130,0x210F,0x212F,0x2130,0x212F,0x212F,0x2930,0x2130,0x2130,0x2130,0x212F,0x210F,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x2110,0x2930,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2930,0x2110,0x2110,0x2130,0x2110,0x2130,0x1931,0x1931,0x1932,0x1133,0x1134,0x1154,0x19B6,0x19B6,0x19D7,0x19D6,0x19D6,0x1994,0x0912,0x1111,0x1931,0x2151,0x2151,0x2130,0x2110,0x290F,0x290F,0x290F,0x292F,0x3150,0x292F,0x210F,0x210F,0x212F,0x2110,0x2930,0x2930,0x2130,0x2930,0x2130,0x2110,0x2110,0x1911,0x1932,0x1153,0x19B6,0x19F7,0x1A17,0x11D7,0x1196,0x0954,0x0954,0x0954,0x0954,0x0974,0x0975,0x09B6,0x11D7,0x11D7,0x1196,0x1974,0x1932,0x2131,0x2131,0x2130,0x2130,0x2930,0x2950,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2150,0x2950,0x2130,0x2130,0x2130,0x2110,0x2131,0x1911,0x1932,0x1974,0x1995,0x19D7,0x19D7,0x11B7,0x1175,0x0932,0x1131,0x1931,0x1951,0x1931,0x1932,0x1133,0x1995,0x11B6,0x11D7,0x11F7,0x11B7,0x0975,0x0954,0x0934,0x0934,0x0934,0x0955,0x0996,0x11D7,0x11F7,0x1A17,0x11B5,0x1173,0x1952,0x1931,0x1131,0x1132,0x1152,0x1153,0x0974,0x11D6,0x19F7,0x19F7,0x1195,0x1133,0x1112,0x1911,0x2111,0x2110,0x2130,0x2130,0x2130,0x2930,0x210F,0x290F,0x292F,0x2930,0x2930,0x2110,0x2130,0x2930,0x2930,0x210F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x2930,0x2930,0x2110,0x2110,0x2130,0x1931,0x1932,0x0913,0x19F7,0x1A18,0x19F8,0x19B6,0x1132,0x1911,0x2131,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x212F,0x2130,0x2110,0x2110,0x2130,0x1931,0x1932,0x1133,0x19B6,0x19D7,0x19F7,0x19D6,0x1112,0x1911,0x2131,0x2130,0x2131,0x1931,0x1912,0x1112,0x11B6,0x11F7,0x1A17,0x19D6,0x1112,0x1912,0x1911,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x210F,0x2110,0x212F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x290F,0x290F,0x210F,0x290F,0x292F,0x292F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2150,0x2130,0x1910,0x1911,0x1912,0x1932,0x1933,0x1974,0x21D6,0x19D6,0x1195,0x19D5,0x1173,0x1952,0x1931,0x1930,0x2110,0x210F,0x2130,0x2930,0x2130,0x212F,0x212F,0x2130,0x2150,0x2130,0x1931,0x1932,0x0912,0x19D6,0x11F7,0x19F7,0x1195,0x1112,0x1931,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x1910,0x1911,0x1132,0x1174,0x19D6,0x19F7,0x19D7,0x19D6,0x1154,0x1132,0x1952,0x1931,0x2151,0x2130,0x2110,0x210F,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x2930,0x2910,0x2910,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2910,0x2930,0x2910,0x210F,0x210F,0x2930,0x210F,0x2930,0x2930,0x212F,0x2110,0x2110,0x2130,0x210F,0x2930,0x212F,0x210F,0x290F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2150,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2111,0x2131,0x1932,0x1112,0x1974,0x21D6,0x2A17,0x1995,0x1132,0x1132,0x1932,0x1932,0x1932,0x1932,0x1133,0x1133,0x19B5,0x21D6,0x21F6,0x19B4,0x1132,0x1932,0x1931,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2110,0x2131,0x1953,0x1994,0x11B6,0x11D8,0x09F9,0x09D8,0x09F9,0x01F9,0x09F9,0x01D8,0x09D8,0x09D7,0x19D7,0x19B6,0x1153,0x1932,0x1932,0x2152,0x2131,0x2151,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x2930,0x210F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2130,0x2110,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2950,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2950,0x212F,0x2930,0x2930,0x2110,0x2130,0x2130,0x2930,0x210F,0x210F,0x292F,0x290F,0x292F,0x290F,0x292F,0x292F,0x290F,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x1910,0x10F0,0x08F2,0x11D7,0x09D8,0x01D9,0x01DA,0x01BA,0x01DA,0x01BA,0x01BA,0x01DA,0x01BA,0x01DA,0x01B9,0x01B9,0x01BA,0x01BA,0x01BA,0x01BA,0x01B9,0x01DA,0x01B9,0x01DA,0x01BA,0x01BA,0x01DA,0x01BA,0x01DA,0x01BA,0x01BA,0x01BA,0x01DA,0x01BA,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x09D9,0x11D8,0x11B6,0x08F1,0x18F0,0x2110,0x210F,0x210F,0x210E,0x20EE,0x210E,0x210F,0x210E,0x20EF,0x20EF,0x210F,0x20EE,0x210E,0x210E, + 0x210F,0x210F,0x20EF,0x20EE,0x210F,0x210F,0x20EE,0x210E,0x210E,0x20EE,0x210E,0x210F,0x210F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210E,0x210E,0x210E,0x210E,0x210F,0x210F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x210F,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x2930,0x290F,0x2930,0x2930,0x2110,0x10F1,0x1153,0x11D6,0x11F8,0x09D8,0x09F9,0x01D9,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01D9,0x01FA,0x01D9,0x01F9,0x01D9,0x09F9,0x09D8,0x19F7,0x1154,0x1912,0x2111,0x2110,0x2910,0x28EF,0x290F,0x28EF,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x2110,0x2910,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x210F,0x2910,0x210F,0x210F,0x210F,0x20EF,0x2930,0x2130,0x210F,0x210F,0x212F,0x210F,0x212F,0x292F,0x2930,0x2130,0x2130,0x2130,0x2131,0x1911,0x1931,0x1932,0x1953,0x1174,0x19B5,0x19B6,0x11B6,0x19B7,0x19D7,0x19F7,0x19D7,0x19F7,0x19F7,0x19D6,0x19D7,0x19D6,0x19B6,0x11B6,0x11B6,0x11B6,0x1196,0x1195,0x1196,0x11B6,0x1195,0x1195,0x1195,0x1196,0x1195,0x1195,0x1196,0x19B6,0x1196,0x11B6,0x11B6,0x11B6,0x11B6,0x1196,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19D6,0x19D6,0x11D7,0x11B7,0x11D7,0x11D8,0x11D8,0x11B7,0x0996,0x0976,0x0996,0x0155,0x0155,0x0135,0x0156,0x0996,0x11D7,0x11F8,0x19D7,0x19B6,0x1974,0x1932,0x1911,0x2110,0x2130,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2110,0x2110,0x2930,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x212F,0x2130,0x2110,0x2110,0x210F,0x290F,0x210F,0x2930,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x210F,0x2930,0x2930,0x212F,0x210F,0x2930,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x212F,0x2930,0x212F,0x290F,0x2930,0x2930,0x210F,0x210F,0x2910,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2910,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x1910,0x1911,0x1932,0x1112,0x1153,0x1995,0x1995,0x21D6,0x21F7,0x19D6,0x19D6,0x1974,0x1112,0x1111,0x1931,0x2131,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2110,0x2130,0x2950,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1153,0x1174,0x19F7,0x1A17,0x11D7,0x11B7,0x0976,0x0955,0x0975,0x0975,0x0975,0x1196,0x11D7,0x11D7,0x11D7,0x1996,0x1953,0x1932,0x2131,0x2111,0x2110,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2930,0x2130,0x2110,0x2110,0x2130,0x2131,0x1911,0x1953,0x1995,0x19D7,0x19F7,0x19D7,0x1195,0x0933,0x1132,0x1951,0x1951,0x1951,0x1932,0x1932,0x1154,0x1195,0x11D7,0x11D7,0x11D7,0x11B7,0x0975,0x0955,0x0955,0x0975,0x0996,0x11B6,0x11D7,0x19F7,0x19D6,0x1994,0x1153,0x1952,0x1951,0x1911,0x1132,0x1153,0x1173,0x11B5,0x1A17,0x19F7,0x19F7,0x1195,0x1154,0x1112,0x1911,0x2111,0x2110,0x2130,0x2130,0x210F,0x2930,0x2930,0x290F,0x2910,0x2930,0x2930,0x2110,0x2110,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x2930,0x2130,0x2130,0x2110,0x2110,0x1931,0x1912,0x1113,0x19D7,0x19F8,0x19F8,0x1196,0x1112,0x1911,0x1911,0x2110,0x2150,0x2130,0x210F,0x212F,0x212F,0x292F,0x290F,0x290F,0x210F,0x2930,0x2130,0x2110,0x2130,0x1931,0x1932,0x1133,0x19B6,0x19D7,0x19F8,0x19B6,0x08F2,0x1111,0x1931,0x2131,0x2131,0x1932,0x1932,0x1112,0x11B6,0x19F7,0x1A38,0x19D6,0x1112,0x1912,0x2111,0x2110,0x2130,0x2110,0x2110,0x2130,0x212F,0x212F,0x2930,0x2110,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x2930,0x2110,0x212F,0x212F,0x212F,0x2930,0x210F,0x2930,0x210F,0x2110,0x210F,0x210F,0x212F,0x212F,0x2930,0x210F,0x2930,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x212F,0x2130,0x2130,0x2130,0x2930,0x2110,0x2930,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2150,0x2130,0x1910,0x1931,0x1932,0x1912,0x1932,0x1953,0x19B5,0x19B6,0x1195,0x19F6,0x19D5,0x1973,0x1952,0x1931,0x1910,0x2110,0x2130,0x2110,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x2131,0x1932,0x1112,0x19D6,0x11F7,0x1A17,0x1195,0x1111,0x2152,0x2151,0x2951,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x1931,0x1932,0x1153,0x1995,0x19D7,0x19F7,0x19D7,0x19B6,0x1154,0x1133,0x1952,0x2152,0x2151,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2130,0x2110,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x290F,0x2130,0x2110,0x2110,0x2130,0x2950,0x212F,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x2110,0x2930,0x210F,0x210F,0x210F,0x2110,0x2910,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x2930,0x210F,0x2130,0x212F,0x212F,0x210F,0x210F,0x2930,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2111,0x1932,0x1932,0x1112,0x1974,0x21F6,0x2A17,0x1994,0x1112,0x1132,0x1932,0x1932,0x1932,0x1132,0x1152,0x1153,0x19B5,0x21F6,0x2216,0x1994,0x0912,0x1932,0x1931,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2930,0x2130,0x2130,0x2131,0x1931,0x1932,0x1994,0x19B6,0x11D7,0x09D8,0x09F9,0x01F9,0x01F9,0x01D9,0x01D9,0x01F9,0x01D8,0x09D8,0x11D8,0x19D7,0x1975,0x1953,0x1952,0x1952,0x1931,0x1931,0x2131,0x1931,0x2131,0x2130,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2931,0x2931,0x2931,0x2130,0x2131,0x2131,0x2131,0x2130,0x2931,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2131,0x2130,0x2130,0x2130,0x2931,0x2131,0x2130,0x2131,0x2131,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2110,0x2131,0x2131,0x2130,0x2130,0x2131,0x2110,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x290F,0x292F,0x292F,0x292F,0x2930,0x2910,0x2110,0x2110,0x2110,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2110,0x10F0,0x08F2,0x19F7,0x1219,0x01B9,0x01BA,0x0199,0x01BA,0x01DA,0x01DA,0x01BA,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01B9,0x01BA,0x01BA,0x01B9,0x01DA,0x01DA,0x01FA,0x01DA,0x01B9,0x01B9,0x01BA,0x01DA,0x01BA,0x01BA,0x01BA,0x01BA,0x01DA,0x01D9,0x01FA,0x01F9,0x01D9,0x01B9,0x01D9,0x09D9,0x1219,0x1196,0x08D1,0x18F0,0x2110,0x210F,0x210F,0x212F,0x20EE,0x20EE,0x20EE,0x210F,0x20EF,0x20EE,0x210F,0x210E,0x210E,0x210E, + 0x210F,0x190F,0x210F,0x210E,0x210E,0x210E,0x210E,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210F,0x210E,0x210F,0x210F,0x210F,0x20EF,0x20EF,0x210F,0x210F,0x210F,0x210E,0x210E,0x210E,0x210E,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x290F,0x2930,0x290F,0x2930,0x2130,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2110,0x2110,0x10F1,0x1154,0x11B6,0x11F8,0x09F9,0x01F9,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01DA,0x01FA,0x01D9,0x01FA,0x01F9,0x01D9,0x09D8,0x11D7,0x1175,0x1112,0x2131,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x292F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x2130,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x1930,0x1931,0x1931,0x1932,0x1953,0x1974,0x1995,0x1996,0x19B6,0x19D7,0x11D7,0x19D7,0x11D7,0x1A18,0x1A18,0x2238,0x1A18,0x2238,0x1A18,0x2238,0x1A18,0x1A18,0x1A38,0x19F8,0x1A18,0x2218,0x2218,0x1A18,0x1A18,0x2218,0x2218,0x1A18,0x1A18,0x1A18,0x19F8,0x19F8,0x19F8,0x1A19,0x1A39,0x2239,0x19F8,0x21F8,0x19D7,0x21F8,0x19F7,0x19F7,0x19F7,0x19F7,0x11F8,0x11D8,0x11D8,0x09B8,0x0997,0x0976,0x0955,0x0955,0x0135,0x0135,0x0135,0x0955,0x0976,0x11B7,0x19F8,0x19D7,0x19B6,0x1994,0x1932,0x1911,0x2110,0x2110,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2930,0x210F,0x210F,0x2910,0x2110,0x2930,0x212F,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x2110,0x2930,0x210F,0x290F,0x290F,0x2910,0x2930,0x2110,0x2110,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x210F,0x290F,0x2930,0x2910,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2130,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x2930,0x2110,0x2910,0x2110,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2110,0x2130,0x1931,0x1911,0x1932,0x1153,0x1974,0x19B5,0x19D6,0x19D6,0x19D6,0x21D6,0x1174,0x1133,0x1112,0x1931,0x2131,0x2131,0x2130,0x2930,0x292F,0x210F,0x210F,0x290F,0x2930,0x2930,0x210F,0x210F,0x210F,0x2130,0x2950,0x2130,0x2130,0x2130,0x2130,0x1931,0x1911,0x1953,0x1174,0x19D6,0x1A17,0x11D7,0x11B7,0x1197,0x1196,0x0996,0x0996,0x11B6,0x11B6,0x11D7,0x11D7,0x19B7,0x1975,0x1953,0x1911,0x1911,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x1911,0x1953,0x1994,0x19B6,0x19D7,0x19D7,0x1196,0x1153,0x1132,0x1131,0x1931,0x1931,0x1931,0x1952,0x1153,0x1195,0x19D6,0x11F7,0x1218,0x09D7,0x09B6,0x0976,0x0996,0x0996,0x09B6,0x11D6,0x19F6,0x19D6,0x1194,0x1973,0x1952,0x1952,0x1931,0x1932,0x1932,0x1133,0x1153,0x1195,0x19F7,0x19F7,0x19D6,0x1175,0x1154,0x1112,0x1911,0x2111,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x2930,0x2930,0x2930,0x2930,0x210F,0x2110,0x2930,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2110,0x2110,0x2130,0x2130,0x1911,0x1912,0x0912,0x19D7,0x1A18,0x19F8,0x1175,0x1132,0x1911,0x1910,0x2110,0x2130,0x2130,0x2130,0x2930,0x212F,0x2930,0x210F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2130,0x1930,0x1111,0x1153,0x11B6,0x11D7,0x19F8,0x19B6,0x10F2,0x10F1,0x2111,0x2111,0x2131,0x1932,0x1912,0x1112,0x11B5,0x11F7,0x1A17,0x19D6,0x1112,0x1911,0x2111,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2930,0x210F,0x2110,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x2110,0x212F,0x212F,0x210F,0x212F,0x290F,0x290F,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x190F,0x2130,0x1931,0x1931,0x1932,0x1932,0x1132,0x1153,0x1174,0x1174,0x2216,0x19F6,0x1174,0x1152,0x1952,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1911,0x0912,0x19D6,0x11D6,0x19D6,0x1195,0x1111,0x1931,0x2151,0x2130,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x1911,0x1911,0x1932,0x1153,0x19B6,0x21F7,0x19F7,0x19D7,0x19B6,0x1154,0x1133,0x1932,0x2132,0x2131,0x2131,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x292F,0x290F,0x292F,0x290F,0x292F,0x290F,0x210F,0x212F,0x2130,0x210F,0x2130,0x212F,0x210F,0x2130,0x212F,0x210F,0x290F,0x210F,0x2930,0x210F,0x2110,0x290F,0x210F,0x210F,0x2110,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2910,0x210F,0x2910,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2131,0x1931,0x1932,0x1112,0x1974,0x21B6,0x2A17,0x1995,0x1112,0x1132,0x1932,0x1932,0x1952,0x1932,0x1132,0x1153,0x1994,0x21D6,0x21F6,0x1994,0x0912,0x1932,0x1931,0x1910,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x1174,0x11B6,0x09B8,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D8,0x09B8,0x11D8,0x19B6,0x1174,0x1953,0x1932,0x1932,0x1931,0x1911,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2111,0x2111,0x2131,0x2130,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x210F,0x210F,0x212F,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2110,0x2110,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x2930,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x2130,0x1910,0x08F1,0x11D7,0x09F8,0x01B9,0x01BA,0x01BA,0x01BA,0x01BA,0x01BA,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01B9,0x01BA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01BA,0x01DA,0x01BA,0x01DA,0x01BA,0x01BA,0x01BA,0x01DA,0x01DA,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01B8,0x01D8,0x11D8,0x1195,0x08D1,0x18F0,0x20F0,0x210F,0x210F,0x210F,0x20EE,0x20EE,0x20EE,0x210E,0x210F,0x20EE,0x20EE,0x210E,0x210E,0x210E, + 0x190F,0x190F,0x210F,0x210F,0x210E,0x210E,0x20EE,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210E,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x20EF,0x210E,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EE,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x212F,0x2110,0x2110,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2130,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2110,0x2110,0x1911,0x1112,0x19B6,0x1A18,0x09D8,0x01D9,0x01B9,0x01B9,0x01DA,0x01DA,0x01DA,0x01FA,0x01D9,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D8,0x09D7,0x1195,0x1112,0x2131,0x2931,0x2910,0x2930,0x2930,0x20EF,0x210F,0x2930,0x210F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2910,0x2110,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x212F,0x212F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2910,0x2110,0x2110,0x2130,0x2930,0x2930,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x1930,0x1931,0x2152,0x1932,0x1953,0x1953,0x1995,0x1995,0x19D6,0x19F7,0x2218,0x1A18,0x19F8,0x19F7,0x1A18,0x2218,0x2218,0x2238,0x2218,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2238,0x2238,0x2238,0x1A18,0x2239,0x1A19,0x19F8,0x19F8,0x19F8,0x19F8,0x21F8,0x21F7,0x21F7,0x19D7,0x19F7,0x1A18,0x19F8,0x11D7,0x11B7,0x11B7,0x11D8,0x0997,0x0155,0x0135,0x0935,0x0955,0x0134,0x0135,0x0155,0x0996,0x1196,0x11D7,0x19D7,0x1996,0x1974,0x1912,0x18F1,0x2110,0x2130,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x210F,0x2930,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2930,0x2910,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x2930,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2151,0x1931,0x1952,0x1953,0x1974,0x1995,0x19B6,0x19D7,0x21F7,0x21F7,0x1174,0x0912,0x1111,0x1931,0x2131,0x2130,0x2930,0x2930,0x210F,0x20EF,0x210F,0x290F,0x292F,0x2930,0x212F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2150,0x2130,0x2131,0x1931,0x1932,0x1953,0x19B5,0x19D7,0x11D7,0x11D7,0x11D7,0x1197,0x11B7,0x11B6,0x11B7,0x19D7,0x11D7,0x11B6,0x19B6,0x1974,0x1953,0x2131,0x2111,0x2110,0x2110,0x2110,0x2130,0x2130,0x2150,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x1931,0x1953,0x1974,0x19B6,0x19D7,0x19F7,0x19D7,0x1174,0x0932,0x1131,0x1931,0x1931,0x1931,0x1932,0x1952,0x1173,0x11B5,0x1A17,0x1218,0x11F7,0x09B7,0x09B6,0x09B6,0x11D7,0x11D7,0x11D6,0x19D6,0x1994,0x1173,0x1953,0x1932,0x1931,0x1931,0x1931,0x1132,0x1153,0x1174,0x11B6,0x19F7,0x1A18,0x19D6,0x1175,0x1153,0x1111,0x1911,0x2131,0x2110,0x2110,0x2130,0x2110,0x210F,0x210F,0x212F,0x290F,0x2910,0x210F,0x210F,0x2110,0x2930,0x2110,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2131,0x2131,0x1912,0x1133,0x19D7,0x1A18,0x19F8,0x1195,0x1132,0x1951,0x1930,0x2110,0x2130,0x2130,0x2130,0x2930,0x2130,0x2930,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1153,0x19B6,0x19D7,0x19F8,0x19B6,0x08F2,0x10F1,0x2111,0x2111,0x2111,0x1932,0x1912,0x1112,0x11B5,0x11D6,0x1A17,0x19D6,0x1112,0x1931,0x2111,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x212F,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x2130,0x2110,0x2930,0x2930,0x2110,0x210F,0x212F,0x290F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2131,0x2152,0x1932,0x1911,0x1132,0x1153,0x1153,0x0954,0x19F6,0x2216,0x19B5,0x1132,0x1132,0x1931,0x1931,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x2131,0x1911,0x1112,0x19D6,0x19F7,0x19F7,0x1195,0x1112,0x1931,0x2151,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1911,0x1932,0x1974,0x19B6,0x21F7,0x21F7,0x19D7,0x1196,0x1154,0x1113,0x1112,0x2132,0x2131,0x2131,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2930,0x210F,0x2930,0x290F,0x290F,0x2910,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x2930,0x210F,0x290F,0x210F,0x2910,0x210F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x212F,0x2930,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x2950,0x2130,0x2130,0x2130,0x2130,0x2131,0x2132,0x1932,0x1113,0x1975,0x21D6,0x2A17,0x1994,0x0912,0x1132,0x1932,0x1932,0x1932,0x1952,0x1132,0x1153,0x1994,0x21D6,0x21F6,0x1994,0x0912,0x1132,0x1931,0x2131,0x2130,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1132,0x1153,0x11B6,0x11D8,0x09B8,0x01D9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x11D8,0x1196,0x0955,0x1154,0x1133,0x08F2,0x08F2,0x08F1,0x10F2,0x1112,0x1111,0x1912,0x1931,0x1931,0x1911,0x1111,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1911,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1911,0x1911,0x1911,0x1911,0x1111,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x10F1,0x1911,0x1911,0x1911,0x10F1,0x10F1,0x1911,0x1911,0x1911,0x1111,0x1911,0x1911,0x1111,0x1911,0x1111,0x1112,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1131,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x10F1,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2110,0x2910,0x2930,0x210F,0x2910,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2110,0x18F0,0x1112,0x11D6,0x1219,0x09D9,0x01DA,0x01BA,0x01DA,0x0199,0x01B9,0x01BA,0x01B9,0x01DA,0x01DA,0x01DA,0x01B9,0x01B9,0x0199,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01BA,0x01B9,0x01B9,0x0199,0x01BA,0x01DA,0x01DA,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01B8,0x11D8,0x1175,0x08F1,0x1910,0x2110,0x210F,0x210F,0x210E,0x20EE,0x20EE,0x210E,0x210F,0x210E,0x20EE,0x20EE,0x210E,0x210E,0x210E, + 0x190E,0x190F,0x210E,0x210F,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x20EF,0x290F,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2930,0x210F,0x2110,0x212F,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x212F,0x210F,0x2110,0x2930,0x2910,0x2130,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x2910,0x2110,0x2110,0x2111,0x2131,0x1112,0x19D6,0x11B7,0x09D8,0x01B9,0x01B9,0x01B9,0x01BA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01D9,0x01DA,0x01D9,0x01F9,0x01D8,0x09D8,0x11B6,0x1112,0x2132,0x2131,0x2931,0x2910,0x2930,0x2910,0x2930,0x2110,0x2130,0x2130,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2930,0x2110,0x2110,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1911,0x1932,0x1932,0x1953,0x1153,0x1174,0x1195,0x1195,0x1195,0x19B6,0x1995,0x1995,0x1995,0x1195,0x1195,0x11B6,0x19B6,0x11B6,0x19D6,0x19B6,0x19B6,0x19B6,0x1995,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x1195,0x19B6,0x11B6,0x19B6,0x19B6,0x11B6,0x19B6,0x1996,0x1996,0x19B6,0x1995,0x1995,0x1995,0x19B6,0x11B6,0x19D6,0x11B7,0x11B7,0x11F8,0x11D8,0x11B7,0x0976,0x0955,0x0935,0x0955,0x0135,0x0135,0x0955,0x0996,0x11B7,0x19D7,0x19B7,0x1996,0x1954,0x1912,0x1911,0x2110,0x2130,0x2930,0x210F,0x292F,0x210F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2910,0x2910,0x2110,0x210F,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2910,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2110,0x2910,0x210F,0x210F,0x2930,0x2930,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x292F,0x2930,0x2930,0x2930,0x2150,0x2151,0x1931,0x1932,0x1933,0x1954,0x1995,0x19D6,0x19F7,0x2217,0x21F7,0x1154,0x1112,0x1111,0x1911,0x2131,0x2130,0x2130,0x212F,0x210F,0x290F,0x210F,0x292F,0x2930,0x212F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2150,0x2150,0x2131,0x1931,0x1932,0x1933,0x1174,0x19D6,0x19B7,0x11D7,0x19F8,0x11B7,0x1197,0x11B7,0x19B7,0x11B7,0x19D7,0x19B6,0x1995,0x1953,0x1932,0x2111,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2130,0x1931,0x1932,0x1974,0x1995,0x19D7,0x19D7,0x19D7,0x11B5,0x0933,0x1132,0x1931,0x1931,0x1931,0x1931,0x1952,0x1153,0x1174,0x11D5,0x19F7,0x11D7,0x11D6,0x11D7,0x11D7,0x11D6,0x11B6,0x19D6,0x19B5,0x1994,0x1953,0x1952,0x1932,0x1932,0x1932,0x1932,0x1933,0x1153,0x1174,0x19B6,0x2218,0x2218,0x19B6,0x1174,0x1953,0x1911,0x2131,0x2131,0x2110,0x2130,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x1912,0x1113,0x19F7,0x1A18,0x19D8,0x1996,0x1133,0x1931,0x1910,0x2130,0x2110,0x2950,0x2110,0x2930,0x2130,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1133,0x1195,0x19F7,0x19D8,0x19B6,0x1112,0x10F1,0x2111,0x2111,0x2131,0x1932,0x1912,0x1133,0x19B6,0x19F7,0x1A17,0x19D6,0x1112,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x210F,0x2930,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2930,0x212F,0x212F,0x210F,0x290F,0x290F,0x2930,0x2130,0x2930,0x210F,0x210F,0x290F,0x290F,0x2930,0x292F,0x290F,0x210F,0x2930,0x290F,0x210F,0x292F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x292F,0x292F,0x212F,0x292F,0x292F,0x210F,0x210F,0x212F,0x2110,0x2131,0x2152,0x1931,0x1111,0x1132,0x1132,0x1153,0x1154,0x19B5,0x21F6,0x21D6,0x1132,0x1132,0x1932,0x1931,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1112,0x19D6,0x19F7,0x19D7,0x19B5,0x0911,0x1931,0x2151,0x2951,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2111,0x1931,0x1911,0x1132,0x1974,0x19D6,0x19F7,0x2218,0x19D7,0x1996,0x1134,0x1133,0x1932,0x2132,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x2930,0x210F,0x290F,0x210F,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x2930,0x2110,0x2930,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2950,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1932,0x1112,0x1974,0x29F6,0x2A17,0x1994,0x1112,0x1132,0x1932,0x1932,0x1932,0x1932,0x1132,0x1133,0x1994,0x21F6,0x21F6,0x1194,0x0912,0x1132,0x1952,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1952,0x1132,0x1174,0x1196,0x11D8,0x09F9,0x01B9,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x09D9,0x09D8,0x11D8,0x11B7,0x1196,0x1175,0x0954,0x0954,0x0934,0x1133,0x1133,0x1133,0x1133,0x0912,0x1112,0x0912,0x0912,0x1112,0x0912,0x0912,0x0912,0x0912,0x1113,0x0912,0x0913,0x1113,0x08F2,0x1112,0x08F2,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x1113,0x0913,0x0912,0x0912,0x1112,0x0912,0x0912,0x1112,0x0912,0x0912,0x0912,0x1112,0x0912,0x0912,0x1112,0x1112,0x08F2,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0932,0x0912,0x0932,0x0932,0x0912,0x0912,0x0912,0x0912,0x0912,0x1112,0x1112,0x1112,0x1132,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1112,0x1912,0x1912,0x2132,0x2111,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x2930,0x210F,0x290F,0x290F,0x2910,0x2910,0x210F,0x2910,0x290F,0x2930,0x2910,0x2910,0x2910,0x2110,0x210F,0x2930,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x18F0,0x1132,0x11B6,0x1A39,0x09D9,0x01B9,0x01BA,0x01BA,0x01B9,0x01B9,0x01BA,0x01B9,0x01DA,0x01D9,0x01DA,0x01B9,0x01BA,0x01BA,0x01BA,0x01DA,0x01BA,0x01BA,0x01DA,0x01DA,0x01DA,0x01BA,0x01BA,0x0199,0x01B9,0x01B9,0x01B9,0x01B9,0x01B9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09B8,0x11D8,0x1175,0x08F1,0x18F0,0x2110,0x20EF,0x212F,0x210F,0x20EE,0x210F,0x210F,0x20EE,0x210E,0x20EE,0x20EE,0x210E,0x210E,0x210E, + 0x190E,0x210E,0x190E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x210F,0x290F,0x2930,0x290F,0x210F,0x212F,0x212F,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x2110,0x2110,0x2110,0x2111,0x1912,0x1133,0x21F7,0x11F9,0x01B8,0x01D9,0x0199,0x01BA,0x01DA,0x01DA,0x01FA,0x01FA,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01F9,0x01F9,0x09F8,0x19F7,0x1153,0x1932,0x2131,0x2131,0x2131,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x2131,0x2131,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1931,0x1952,0x1952,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1132,0x1132,0x1132,0x1153,0x1153,0x1153,0x1153,0x1132,0x1132,0x1953,0x1132,0x1132,0x1112,0x1112,0x1112,0x1132,0x1133,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1953,0x1953,0x1953,0x1973,0x1153,0x1153,0x0934,0x0954,0x0976,0x11B7,0x11F8,0x11F8,0x11B7,0x0976,0x0955,0x0955,0x0955,0x0955,0x0996,0x11D7,0x19F8,0x19F7,0x19B6,0x1175,0x1933,0x1912,0x2111,0x2110,0x2130,0x210F,0x292F,0x210F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2930,0x2130,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2930,0x290F,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x290F,0x290F,0x2930,0x212F,0x2930,0x210F,0x212F,0x210F,0x2930,0x2930,0x210F,0x2910,0x2110,0x2910,0x2910,0x290F,0x290F,0x2930,0x2930,0x210F,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2910,0x2910,0x2910,0x290F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x290F,0x292F,0x210F,0x212F,0x2950,0x2130,0x2130,0x1931,0x1912,0x1933,0x1154,0x1996,0x19F7,0x2217,0x2217,0x19F6,0x1174,0x1112,0x1112,0x1911,0x2151,0x2131,0x2950,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x212F,0x210F,0x212F,0x210F,0x2150,0x2151,0x2131,0x2131,0x1911,0x1932,0x1954,0x1975,0x1176,0x1196,0x19D7,0x11B7,0x11B7,0x11B7,0x1196,0x19B6,0x1196,0x1175,0x1974,0x1932,0x1931,0x1910,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2130,0x2130,0x1931,0x1952,0x1953,0x1975,0x19B6,0x19D7,0x19D7,0x19B6,0x1174,0x1132,0x1132,0x1952,0x1931,0x1952,0x1952,0x1152,0x1173,0x1194,0x1195,0x1195,0x11B5,0x19F7,0x19D6,0x1195,0x11B5,0x19B5,0x1994,0x1152,0x1132,0x1952,0x1932,0x2152,0x1932,0x1112,0x1133,0x1154,0x1195,0x19D7,0x19F7,0x19D7,0x1195,0x1994,0x1932,0x1911,0x2110,0x2110,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x212F,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x1911,0x1912,0x1113,0x21F7,0x2219,0x19D8,0x1175,0x1153,0x1931,0x1910,0x2110,0x2110,0x2930,0x2930,0x290F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1153,0x19B6,0x19D7,0x19F8,0x19B6,0x1112,0x10F1,0x2111,0x2111,0x2131,0x2132,0x1932,0x1113,0x19B6,0x19F7,0x1A18,0x19D6,0x1112,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2151,0x2131,0x1931,0x1911,0x1932,0x1132,0x1133,0x1153,0x1195,0x21D6,0x21F6,0x0933,0x1132,0x1932,0x1931,0x1930,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2131,0x1911,0x1112,0x19D6,0x19F7,0x19D7,0x1175,0x08F1,0x1931,0x2131,0x2130,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2110,0x2130,0x2131,0x1911,0x1911,0x1132,0x1154,0x19B6,0x2217,0x2218,0x19D7,0x1995,0x1134,0x1133,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2910,0x210F,0x290F,0x290F,0x210F,0x2930,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x210F,0x2930,0x210F,0x290F,0x210F,0x2910,0x2910,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x2130,0x210F,0x2130,0x2131,0x1932,0x1932,0x1132,0x1974,0x21F6,0x2A16,0x19B4,0x1132,0x1132,0x1932,0x1932,0x1932,0x1932,0x1132,0x1133,0x1994,0x21F6,0x21F6,0x1995,0x0912,0x1932,0x1931,0x1931,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x2110,0x2111,0x2132,0x1932,0x1153,0x1196,0x11B8,0x09D9,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01B9,0x01B9,0x01B9,0x09D9,0x09F8,0x11F8,0x11F8,0x11F8,0x11D7,0x11D7,0x11D7,0x11B7,0x11B6,0x11B6,0x11B6,0x1195,0x11B6,0x1195,0x1195,0x1196,0x1196,0x1196,0x11B6,0x1196,0x1196,0x1196,0x1197,0x1196,0x11B6,0x1196,0x1196,0x1196,0x11B6,0x11B6,0x11B6,0x11B6,0x1196,0x11B6,0x11B6,0x1196,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x1196,0x11B6,0x11B6,0x1196,0x1196,0x1196,0x11B6,0x19B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11D6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11D6,0x11D6,0x11D6,0x11D6,0x11D6,0x11D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D7,0x19D7,0x19D6,0x19D7,0x19B6,0x19D6,0x19D6,0x19B6,0x19B6,0x1975,0x1134,0x1113,0x1912,0x1912,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x212F,0x210F,0x210F,0x2910,0x210F,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x18EF,0x1911,0x1953,0x1175,0x1218,0x09F9,0x01DA,0x01B9,0x01B9,0x0199,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01B9,0x01DA,0x01B9,0x01B9,0x01BA,0x01DA,0x0199,0x01B9,0x01B9,0x01B9,0x01B9,0x01D9,0x01DA,0x01B9,0x01D9,0x01B9,0x01B9,0x01D9,0x01B9,0x09B8,0x11D8,0x1155,0x08F1,0x1911,0x2110,0x210F,0x210F,0x212F,0x210E,0x210E,0x210E,0x210F,0x210F,0x210E,0x210E,0x210E,0x210E,0x210E, + 0x190E,0x190E,0x190E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210F,0x210F,0x20EE,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x290F,0x290F,0x20EF,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x292F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x292F,0x212F,0x210F,0x212F,0x2930,0x210F,0x290F,0x2930,0x290F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2930,0x2930,0x210F,0x212F,0x210F,0x210F,0x2930,0x2910,0x210F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2111,0x1912,0x1154,0x19F8,0x11F9,0x09D9,0x01B9,0x01B9,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01D9,0x021A,0x09F9,0x09D8,0x11F8,0x0954,0x1133,0x1932,0x1931,0x1931,0x1911,0x1910,0x1910,0x1910,0x1910,0x2131,0x2131,0x2131,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x1931,0x2131,0x2131,0x1931,0x2131,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x2111,0x2111,0x2131,0x2111,0x2111,0x2131,0x1911,0x1911,0x2131,0x2131,0x1911,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x1910,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2131,0x1930,0x1931,0x1911,0x1931,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x18F1,0x1911,0x1911,0x1911,0x1111,0x1911,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1111,0x1132,0x1132,0x1133,0x0933,0x0955,0x11B6,0x11D7,0x19F8,0x11F8,0x11B7,0x0976,0x0976,0x0955,0x0976,0x11B7,0x19F8,0x19F8,0x19D7,0x1996,0x1954,0x1933,0x2132,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2110,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x210F,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1932,0x1133,0x1975,0x1195,0x19D7,0x19F7,0x2217,0x19D6,0x1154,0x0912,0x10F1,0x1931,0x2151,0x2151,0x2130,0x212F,0x212F,0x210F,0x210F,0x2130,0x212F,0x2130,0x212F,0x2130,0x2130,0x2150,0x2150,0x2130,0x1910,0x1911,0x1932,0x1933,0x1154,0x1155,0x1196,0x11D7,0x11D7,0x11B7,0x1196,0x1196,0x1196,0x1175,0x1153,0x1952,0x1911,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2910,0x210F,0x210F,0x292F,0x210F,0x210F,0x292F,0x290F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2950,0x2130,0x2130,0x2130,0x1930,0x1931,0x1952,0x1154,0x1996,0x19B7,0x19F8,0x19D7,0x1195,0x0933,0x1132,0x1932,0x1931,0x1931,0x1951,0x1952,0x1952,0x1973,0x1173,0x1174,0x1195,0x1195,0x19B5,0x1174,0x1174,0x1973,0x1973,0x1952,0x1952,0x1931,0x1932,0x1932,0x1932,0x1113,0x1133,0x1175,0x1196,0x19D7,0x2218,0x19D7,0x1975,0x1973,0x1932,0x1911,0x2110,0x2130,0x2130,0x210F,0x2930,0x290F,0x210F,0x210F,0x2930,0x290F,0x210F,0x2930,0x290F,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x1911,0x1912,0x1112,0x21F7,0x2219,0x19D8,0x1175,0x1953,0x1931,0x2130,0x2130,0x2930,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2131,0x1932,0x1133,0x19B6,0x19D7,0x19F7,0x19B6,0x1112,0x1111,0x1911,0x2111,0x2131,0x2132,0x1912,0x1133,0x19D6,0x19F7,0x1A17,0x19D6,0x0912,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x212F,0x212F,0x2930,0x290F,0x212F,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x212F,0x2930,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x212F,0x2930,0x2930,0x2110,0x2910,0x2910,0x2930,0x2910,0x292F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1952,0x1132,0x1153,0x1153,0x1174,0x21F6,0x2A17,0x1153,0x1112,0x1952,0x1952,0x1931,0x1910,0x2110,0x2130,0x292F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1112,0x19D6,0x19F7,0x19F7,0x1195,0x0911,0x1910,0x2151,0x2950,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1111,0x1133,0x1174,0x19D6,0x19F7,0x19F7,0x19D7,0x1995,0x1154,0x1133,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2110,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2910,0x2110,0x2110,0x2930,0x2930,0x2110,0x210F,0x2110,0x2110,0x2910,0x210F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1932,0x1932,0x1112,0x1974,0x21F6,0x2216,0x19B5,0x1112,0x1132,0x1952,0x1112,0x1932,0x1932,0x1132,0x1133,0x1994,0x21F6,0x21F6,0x19B5,0x0912,0x1132,0x1952,0x1951,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2111,0x1931,0x1932,0x1133,0x1196,0x11D8,0x09F9,0x01FA,0x01BA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x09F9,0x11F9,0x11F9,0x1219,0x1219,0x1219,0x1A19,0x1A39,0x1A39,0x1A38,0x2239,0x2239,0x2259,0x2259,0x2259,0x2259,0x2A59,0x2A59,0x2A7A,0x225A,0x2A5A,0x2A5A,0x2A5A,0x2A5A,0x2A5A,0x225A,0x2A5A,0x2A5A,0x2A7A,0x2A5A,0x2A5A,0x227A,0x227A,0x227A,0x227A,0x2A7A,0x2259,0x2259,0x2A79,0x2A79,0x2A79,0x2A79,0x2A79,0x2259,0x2A59,0x2A59,0x2A59,0x2A59,0x2A59,0x2A59,0x2A59,0x2259,0x2A79,0x2259,0x2259,0x2259,0x2259,0x2259,0x2279,0x2279,0x2279,0x2259,0x2279,0x2279,0x2279,0x2279,0x2259,0x2259,0x2259,0x2259,0x2259,0x2239,0x2259,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x1A18,0x2238,0x1A38,0x1A18,0x2238,0x2218,0x21F8,0x21D7,0x1975,0x1113,0x1933,0x1912,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2110,0x2930,0x2130,0x2130,0x2930,0x2930,0x210F,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x18EF,0x1911,0x1953,0x0954,0x1A18,0x09F9,0x09DA,0x01DA,0x01B9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01B9,0x01B9,0x01D9,0x01B9,0x01B9,0x01DA,0x01B9,0x01DA,0x01B9,0x01B9,0x01B9,0x09B9,0x01B9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01B9,0x01D9,0x01B9,0x09B8,0x19D8,0x0934,0x1112,0x1911,0x2110,0x2110,0x210F,0x210F,0x210E,0x210E,0x210F,0x292F,0x210F,0x210F,0x20EE,0x20EE,0x210E,0x210E, + 0x210F,0x210F,0x210E,0x212E,0x210E,0x212E,0x212F,0x210E,0x210E,0x210E,0x210E,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x212F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x290F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x2930,0x2930,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2930,0x2130,0x2930,0x2930,0x290F,0x290F,0x2930,0x212F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x2110,0x2130,0x2110,0x1911,0x1932,0x1133,0x2239,0x09F9,0x09FA,0x01BA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01D9,0x01F9,0x01D9,0x09D8,0x09B7,0x0954,0x0912,0x0912,0x1112,0x1111,0x1111,0x1911,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x1932,0x1911,0x1911,0x1931,0x1111,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1111,0x1111,0x1111,0x1911,0x1911,0x1111,0x1931,0x1931,0x1111,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1910,0x1910,0x2130,0x2131,0x2110,0x2130,0x2110,0x2110,0x20F0,0x18F0,0x18F0,0x1911,0x1931,0x1931,0x1910,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x1910,0x2111,0x2110,0x2131,0x2131,0x1910,0x1911,0x2131,0x1931,0x1931,0x1931,0x2131,0x1910,0x2131,0x1931,0x1911,0x1111,0x1111,0x1112,0x1174,0x1195,0x19B6,0x19D7,0x19D7,0x11D7,0x1196,0x1196,0x11B6,0x11B7,0x19F7,0x19F8,0x19D7,0x1996,0x1974,0x1133,0x1932,0x2132,0x2951,0x2931,0x2930,0x292F,0x292F,0x292F,0x210F,0x292F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x2910,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x2110,0x2110,0x210F,0x2110,0x2930,0x210F,0x210F,0x2110,0x2110,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x292F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x1911,0x1931,0x1932,0x1954,0x1155,0x1196,0x19D7,0x2218,0x19F7,0x19D6,0x1174,0x0912,0x10F1,0x1911,0x2131,0x2150,0x2130,0x212F,0x20EF,0x210F,0x210F,0x212F,0x2150,0x212F,0x212F,0x2130,0x2130,0x2150,0x2110,0x2110,0x2131,0x1931,0x1932,0x1933,0x1134,0x1175,0x19D7,0x11D7,0x11B7,0x1196,0x1175,0x1175,0x1153,0x1132,0x1931,0x1931,0x190F,0x190F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2910,0x2910,0x290F,0x2930,0x290F,0x292F,0x292F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1132,0x1153,0x1175,0x19D7,0x19D7,0x19F7,0x19B6,0x1154,0x1133,0x1112,0x1932,0x1131,0x1931,0x1131,0x1952,0x1952,0x1152,0x1153,0x1153,0x1974,0x1974,0x1153,0x1153,0x1952,0x1952,0x1932,0x1931,0x1911,0x1931,0x1932,0x1133,0x1133,0x1154,0x1175,0x19D6,0x2218,0x2218,0x1995,0x1154,0x1953,0x1931,0x1910,0x2110,0x2110,0x2930,0x2130,0x210F,0x2910,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x1911,0x1911,0x1133,0x21F7,0x19F8,0x19B7,0x1175,0x1153,0x1931,0x2131,0x2130,0x2130,0x2930,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1133,0x19B6,0x19F7,0x19F8,0x19B6,0x1112,0x1911,0x1911,0x2131,0x2111,0x2132,0x1112,0x1133,0x19D6,0x11F7,0x1A17,0x19B6,0x1112,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x2110,0x212F,0x212F,0x290F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2110,0x210F,0x212F,0x210F,0x2130,0x2110,0x2910,0x2910,0x210F,0x2930,0x210F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2950,0x2110,0x2130,0x2130,0x1930,0x1951,0x1952,0x1153,0x1133,0x1154,0x21F6,0x2A17,0x1153,0x1132,0x1952,0x1952,0x1951,0x1930,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1112,0x19D6,0x19F8,0x19F8,0x1196,0x0912,0x1931,0x2151,0x2150,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2150,0x2131,0x1911,0x1911,0x1132,0x1133,0x1174,0x19D6,0x19F7,0x19F7,0x21F7,0x1995,0x1974,0x1933,0x1912,0x2131,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x292F,0x292F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2910,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2910,0x2910,0x210F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2930,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x290F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1932,0x1132,0x1132,0x1994,0x21F6,0x2A17,0x1994,0x1132,0x1132,0x1952,0x1932,0x1932,0x1932,0x1132,0x1132,0x1974,0x21F6,0x21F6,0x1995,0x0912,0x1932,0x1972,0x1931,0x2130,0x2130,0x212F,0x2130,0x210F,0x210F,0x2110,0x2130,0x2131,0x2131,0x1912,0x1113,0x1175,0x11D7,0x11F9,0x09D9,0x01BA,0x01BA,0x01B9,0x01DA,0x01DA,0x01B9,0x01D9,0x01D9,0x09F9,0x09F9,0x09D9,0x09D8,0x11D8,0x11D8,0x11D8,0x11F8,0x11F8,0x19F8,0x19F8,0x1A18,0x1A18,0x19F8,0x2218,0x2218,0x2218,0x2238,0x1A18,0x1A18,0x2219,0x19F8,0x19F8,0x1A18,0x19F8,0x19D8,0x19F8,0x19F8,0x19F8,0x19F8,0x1A18,0x19F8,0x1A18,0x1A18,0x1A18,0x1A18,0x19F8,0x19F8,0x19F8,0x1A18,0x1A18,0x19F8,0x19F8,0x1A18,0x19F8,0x19F8,0x19F7,0x19F7,0x19D7,0x21F8,0x19F8,0x19F7,0x19D7,0x19F7,0x19F8,0x19D7,0x19D7,0x19F7,0x19D7,0x19D7,0x19F7,0x19D7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19D7,0x19F7,0x19F7,0x19D7,0x19F8,0x19D8,0x19D8,0x19D8,0x19D8,0x19D8,0x19D8,0x19D7,0x19F7,0x19D7,0x19F7,0x2218,0x1A18,0x19F7,0x19F8,0x19F8,0x19F8,0x19D8,0x21D7,0x19B6,0x1134,0x1113,0x1911,0x1911,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2910,0x2910,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x212F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x20EF,0x190F,0x1931,0x1952,0x0933,0x11D7,0x09D8,0x09D9,0x09FA,0x01DA,0x01B9,0x01B9,0x01D9,0x09F9,0x01B8,0x01B8,0x01D9,0x01B8,0x01B9,0x01D9,0x01B9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01B9,0x09B9,0x0998,0x09B8,0x09B8,0x09B8,0x09D8,0x01B8,0x01B9,0x09FA,0x01D9,0x01D9,0x09F9,0x09B8,0x0997,0x19F7,0x1134,0x1112,0x1911,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x20EE,0x20EE,0x20EE,0x210E, + 0x212F,0x212F,0x210F,0x212F,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x292F,0x212F,0x210F,0x212F,0x212F,0x292F,0x212F,0x292F,0x212F,0x212F,0x2930,0x290F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x212F,0x210F,0x210F,0x2110,0x2930,0x290F,0x2930,0x2930,0x212F,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2110,0x2110,0x2111,0x1911,0x1912,0x1134,0x1A18,0x1219,0x01B9,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01F9,0x01D9,0x09F9,0x09B7,0x0996,0x0954,0x0934,0x0933,0x1133,0x1133,0x1133,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1133,0x1133,0x1132,0x1132,0x1112,0x1112,0x1112,0x1911,0x1911,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1932,0x1132,0x1154,0x1175,0x1196,0x19B6,0x19D7,0x19B7,0x19F7,0x19F7,0x19F7,0x21F7,0x19D6,0x19B6,0x1154,0x1133,0x1912,0x2132,0x2131,0x2931,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x292F,0x292F,0x2930,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x210F,0x2930,0x2130,0x2130,0x2130,0x212F,0x212F,0x290F,0x290F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x210F,0x2910,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x290F,0x2910,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1911,0x1933,0x1133,0x1154,0x1195,0x19B6,0x2218,0x2217,0x19D6,0x1154,0x1133,0x1111,0x1931,0x2131,0x2150,0x210F,0x210F,0x210F,0x212F,0x2950,0x212F,0x212F,0x2150,0x212F,0x212F,0x210F,0x2110,0x2110,0x2131,0x2131,0x1932,0x1933,0x1134,0x1155,0x19D7,0x11D7,0x11D7,0x11B6,0x1175,0x1154,0x1132,0x1132,0x1931,0x1910,0x212F,0x212F,0x212F,0x212F,0x212F,0x2950,0x2130,0x210F,0x2130,0x2130,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1932,0x1153,0x1174,0x1196,0x19D7,0x19D7,0x19D7,0x1996,0x1134,0x1133,0x1132,0x1932,0x1932,0x1952,0x1952,0x1952,0x1952,0x1932,0x1932,0x1132,0x1132,0x1152,0x1132,0x1932,0x1932,0x1931,0x1911,0x1911,0x1932,0x1132,0x1133,0x1154,0x1175,0x11B6,0x19F7,0x2218,0x19F7,0x1174,0x1953,0x1932,0x1911,0x2130,0x2110,0x2110,0x2930,0x2110,0x210F,0x2930,0x2930,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x1911,0x1912,0x1113,0x21F8,0x2219,0x19B8,0x1175,0x1933,0x1931,0x1910,0x2110,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x2130,0x1910,0x1931,0x1133,0x19B6,0x19F7,0x19F8,0x19B6,0x1112,0x1911,0x1911,0x2111,0x2131,0x1931,0x1932,0x0933,0x11B6,0x11F7,0x1A17,0x19B6,0x1112,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2930,0x212F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x2930,0x290F,0x290F,0x210F,0x2110,0x2110,0x2930,0x212F,0x210F,0x212F,0x2110,0x2110,0x2110,0x290F,0x290F,0x292F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1930,0x1931,0x1952,0x1132,0x1153,0x1174,0x21D6,0x21F6,0x1174,0x1112,0x1952,0x1931,0x1951,0x1930,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2132,0x1112,0x19B6,0x19F8,0x19F8,0x11B6,0x0932,0x1131,0x2151,0x2151,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x1931,0x1111,0x1132,0x1133,0x1174,0x19D6,0x21F7,0x21F7,0x21F7,0x1995,0x1954,0x1932,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x212F,0x292F,0x2930,0x2930,0x290F,0x210F,0x210F,0x290F,0x2910,0x2910,0x290F,0x2930,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x290F,0x2930,0x210F,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2930,0x210F,0x290F,0x290F,0x292F,0x212F,0x292F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1931,0x1152,0x1132,0x1994,0x21F6,0x2216,0x19B5,0x0912,0x1132,0x1932,0x1932,0x1932,0x1932,0x1132,0x1132,0x1994,0x21D6,0x21F6,0x19B5,0x0912,0x1932,0x1952,0x1931,0x2131,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2111,0x1912,0x1133,0x1175,0x11B7,0x11D8,0x09D9,0x09DA,0x01BA,0x01DA,0x01BA,0x01DA,0x01B9,0x01D9,0x01D9,0x09F9,0x09D8,0x09B8,0x11B8,0x0997,0x11B7,0x1196,0x1196,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1155,0x1175,0x1175,0x1155,0x1175,0x1196,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1154,0x1175,0x1155,0x1155,0x1155,0x1155,0x1175,0x1155,0x1154,0x1154,0x1175,0x1154,0x1154,0x1175,0x1154,0x1175,0x1154,0x1175,0x1175,0x1175,0x1175,0x1175,0x1154,0x1155,0x1175,0x1155,0x1155,0x1155,0x1155,0x1155,0x1175,0x1155,0x1175,0x1154,0x1175,0x1175,0x1174,0x1175,0x1195,0x11B6,0x19D7,0x19F8,0x19D8,0x21F8,0x19B7,0x19B6,0x1954,0x1112,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x292F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x292F,0x212F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x292F,0x210F,0x292F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2110,0x2131,0x1952,0x1133,0x1175,0x09B7,0x09F9,0x09D9,0x01D9,0x01D9,0x09D9,0x09D8,0x01B8,0x09B7,0x09D8,0x09B7,0x09B8,0x09B8,0x09B8,0x09D9,0x09B9,0x01B8,0x09D9,0x01D9,0x09D9,0x09B8,0x0998,0x11B8,0x11B8,0x11D8,0x11B7,0x11D8,0x11B7,0x0997,0x09D9,0x01D9,0x01F9,0x09F9,0x09D9,0x09B8,0x0997,0x11B6,0x1133,0x1111,0x1911,0x2110,0x210F,0x210F,0x210F,0x210F,0x292F,0x210E,0x210F,0x210F,0x20EE,0x20EE,0x210E,0x210E,0x210E, + 0x212F,0x190F,0x210F,0x210F,0x210F,0x210E,0x210F,0x210E,0x210E,0x210F,0x210F,0x210F,0x210E,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x290F,0x290F,0x20EF,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x2930,0x210F,0x2930,0x2910,0x290F,0x210F,0x212F,0x2930,0x212F,0x2130,0x2110,0x2110,0x212F,0x210F,0x2930,0x210F,0x210F,0x212F,0x2110,0x2130,0x2130,0x210F,0x2130,0x2110,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2131,0x1911,0x1112,0x1134,0x19F8,0x09D9,0x01D9,0x01DA,0x01FB,0x01FA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01D9,0x01FA,0x01FA,0x09F9,0x09D9,0x09F8,0x09D7,0x11D7,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x1196,0x19B6,0x1196,0x1196,0x11B6,0x11B6,0x11B6,0x1196,0x1196,0x1195,0x1195,0x1195,0x1196,0x11B6,0x11B6,0x11B6,0x11B6,0x1196,0x1196,0x1196,0x1195,0x1196,0x1196,0x11B6,0x1196,0x1196,0x1196,0x11B6,0x1196,0x19B6,0x1196,0x1196,0x11B6,0x1196,0x1196,0x11B6,0x11B6,0x11B6,0x19B6,0x11B6,0x11B6,0x11B6,0x11B6,0x19B6,0x11B6,0x19B6,0x1195,0x1154,0x1153,0x1932,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2150,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1953,0x1133,0x1154,0x1174,0x1996,0x19D7,0x19D7,0x2217,0x2217,0x21D6,0x19B5,0x1154,0x1133,0x1912,0x1912,0x2131,0x2931,0x2910,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x212F,0x2130,0x212F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x2930,0x2930,0x290F,0x2930,0x210F,0x2930,0x290F,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x2930,0x2130,0x212F,0x212F,0x210F,0x2130,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2910,0x210F,0x2930,0x210F,0x290F,0x210F,0x290F,0x292F,0x212F,0x290F,0x290F,0x2930,0x212F,0x2130,0x2110,0x2110,0x2130,0x212F,0x292F,0x292F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1932,0x1912,0x1133,0x1154,0x1195,0x19F7,0x2238,0x2217,0x19D6,0x1154,0x0912,0x1132,0x1931,0x2151,0x2130,0x212F,0x212F,0x210F,0x2950,0x2130,0x212F,0x2150,0x2950,0x212F,0x210F,0x210F,0x2110,0x2130,0x2131,0x2152,0x1933,0x1133,0x1154,0x19D7,0x19F7,0x19F7,0x11B6,0x1175,0x0933,0x1132,0x1111,0x1930,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x290F,0x2910,0x2910,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1951,0x1953,0x1154,0x1195,0x19D7,0x19D7,0x19D7,0x1196,0x1154,0x0913,0x1112,0x1933,0x1932,0x1952,0x1952,0x1952,0x1952,0x1932,0x1932,0x1932,0x1932,0x1952,0x1952,0x1952,0x1932,0x1131,0x1131,0x1132,0x1133,0x1133,0x1154,0x1175,0x1196,0x19D7,0x1A18,0x21F7,0x19B6,0x1133,0x1932,0x1931,0x2131,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2930,0x2910,0x2910,0x210F,0x2930,0x2930,0x2110,0x2930,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1911,0x1912,0x1133,0x2218,0x2219,0x19B7,0x1155,0x1953,0x2132,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2930,0x2930,0x2130,0x2111,0x1911,0x1133,0x19B5,0x19F7,0x19F8,0x19B6,0x1112,0x1911,0x2131,0x2111,0x2131,0x1932,0x1932,0x1133,0x11D6,0x11F7,0x1A18,0x19B6,0x1112,0x1912,0x2111,0x2111,0x2130,0x2110,0x2130,0x2930,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x2110,0x2930,0x212F,0x212F,0x2930,0x210F,0x212F,0x2930,0x212F,0x210F,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x212F,0x212F,0x210F,0x2130,0x1930,0x1931,0x1932,0x1132,0x1133,0x1995,0x2A17,0x2A17,0x1174,0x1112,0x1132,0x1951,0x1951,0x1930,0x1930,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2132,0x1112,0x1995,0x19F8,0x19F8,0x19D7,0x1154,0x1111,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x2130,0x2151,0x1931,0x1931,0x1112,0x1133,0x1175,0x19B6,0x2218,0x2217,0x19D6,0x1995,0x1153,0x1133,0x1952,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2110,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2910,0x2110,0x2910,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x210F,0x1910,0x1930,0x1931,0x1952,0x1132,0x1994,0x2216,0x2216,0x1994,0x0912,0x1112,0x1932,0x1932,0x1932,0x1932,0x1932,0x1133,0x1995,0x21F6,0x21F7,0x1175,0x0912,0x1132,0x1931,0x1931,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2111,0x1911,0x1932,0x1974,0x19B6,0x09B7,0x09D9,0x09D9,0x09DA,0x01B9,0x01B9,0x01DA,0x01DA,0x09FA,0x09F9,0x09F9,0x11F9,0x11B7,0x0976,0x1175,0x1154,0x0933,0x0912,0x1113,0x1113,0x1133,0x1133,0x1133,0x1953,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1133,0x1132,0x1132,0x1112,0x1112,0x1132,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1933,0x1933,0x1933,0x1132,0x1132,0x1932,0x1112,0x1112,0x1132,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1133,0x1133,0x1133,0x1133,0x1933,0x1113,0x1933,0x1933,0x1113,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x08F2,0x0913,0x1154,0x1996,0x19D8,0x19D8,0x21D8,0x21D7,0x1996,0x1954,0x1112,0x1912,0x2132,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x2930,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x2930,0x212F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x290F,0x292F,0x292F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2130,0x2151,0x1931,0x1132,0x1134,0x0976,0x11D8,0x09D8,0x09B8,0x09D9,0x09B8,0x09D8,0x09B7,0x0996,0x0996,0x1196,0x1196,0x1196,0x0997,0x0997,0x0997,0x11F9,0x09D9,0x1219,0x09D8,0x0997,0x0956,0x1176,0x1176,0x19B6,0x1996,0x1155,0x0955,0x0976,0x0997,0x09D8,0x09D9,0x09D9,0x09D8,0x0997,0x0955,0x1154,0x0912,0x1931,0x1910,0x2110,0x212F,0x210F,0x20EE,0x210E,0x210E,0x210E,0x210F,0x210E,0x210E,0x210E,0x210E,0x20EE,0x210E, + 0x1910,0x190F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210E,0x210E,0x210F,0x210F,0x210F,0x210E,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x290F,0x2910,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x210F,0x210F,0x290F,0x290F,0x212F,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x2130,0x2110,0x2110,0x2111,0x1911,0x1933,0x0934,0x1A19,0x09D9,0x01B9,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01FA,0x01FA,0x01FA,0x01F9,0x01D9,0x1219,0x1219,0x1219,0x1A18,0x1A18,0x1A39,0x1A18,0x1A18,0x2218,0x1A18,0x2218,0x2218,0x2218,0x2218,0x2239,0x1A18,0x2239,0x2238,0x1A18,0x2218,0x1A18,0x1A18,0x2238,0x2238,0x2238,0x1A18,0x2239,0x2218,0x2218,0x2218,0x2218,0x1A18,0x2219,0x1A18,0x2218,0x1A18,0x2218,0x2218,0x2219,0x2218,0x2218,0x1A18,0x2218,0x2218,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x19F8,0x1A18,0x19F8,0x19F8,0x1A18,0x1A18,0x19F7,0x19B6,0x1174,0x1133,0x1932,0x1931,0x1931,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x292F,0x210F,0x290F,0x210F,0x290F,0x212F,0x212F,0x2930,0x210F,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x212F,0x212F,0x2110,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x292F,0x2930,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1932,0x1933,0x1154,0x1174,0x1174,0x1995,0x1994,0x1994,0x1974,0x1953,0x1932,0x1932,0x1911,0x1911,0x2131,0x2110,0x2910,0x210F,0x290F,0x292F,0x210F,0x292F,0x292F,0x210F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x212F,0x210F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x290F,0x2930,0x212F,0x212F,0x2930,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x290F,0x2930,0x290F,0x2110,0x210F,0x2110,0x2130,0x2130,0x212F,0x292F,0x210F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1912,0x1932,0x1133,0x1174,0x19B6,0x19F7,0x2218,0x19F7,0x19D6,0x0933,0x1112,0x1931,0x1930,0x2130,0x2150,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2151,0x2132,0x1932,0x1133,0x1154,0x19D6,0x19F7,0x19F7,0x11B6,0x1154,0x0932,0x1111,0x1931,0x2150,0x2150,0x214F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2910,0x2130,0x2130,0x2930,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1932,0x1153,0x1175,0x1996,0x19D7,0x19D7,0x19D7,0x1196,0x1154,0x1133,0x1113,0x1132,0x1932,0x1952,0x1952,0x1932,0x1932,0x1931,0x1111,0x1932,0x1111,0x1131,0x1952,0x1932,0x1132,0x1132,0x1133,0x1153,0x1154,0x0954,0x1195,0x19D7,0x1A18,0x1A17,0x19D6,0x1154,0x1132,0x1932,0x1911,0x2110,0x2130,0x2130,0x2930,0x210F,0x210F,0x2130,0x2110,0x2930,0x2110,0x2930,0x2910,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1911,0x1112,0x1154,0x2218,0x2219,0x19B7,0x1155,0x1933,0x1911,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2131,0x1931,0x1132,0x19B5,0x19F7,0x19F8,0x19B6,0x1112,0x1911,0x1931,0x2131,0x2131,0x1932,0x1932,0x0933,0x11D6,0x11F7,0x19F7,0x19D6,0x08F2,0x1912,0x2111,0x2110,0x2130,0x2930,0x2110,0x2930,0x2930,0x2930,0x212F,0x212F,0x2930,0x212F,0x2110,0x2110,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x290F,0x2930,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2130,0x1931,0x1932,0x1132,0x1133,0x1975,0x29F7,0x29F7,0x1974,0x08F2,0x1932,0x1952,0x1951,0x1930,0x2130,0x2130,0x2150,0x2130,0x2110,0x2130,0x2151,0x2131,0x1912,0x1174,0x19F7,0x19F8,0x19F7,0x1154,0x1132,0x1131,0x1931,0x2131,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x2930,0x292F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1911,0x1132,0x1133,0x1175,0x19B6,0x19D7,0x21F7,0x19D6,0x1995,0x1153,0x1153,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x2930,0x290F,0x210F,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x210F,0x2930,0x2110,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x212F,0x210F,0x2130,0x1930,0x1951,0x1152,0x1132,0x1994,0x21F6,0x21F6,0x19B5,0x0912,0x1112,0x1932,0x1932,0x1932,0x1932,0x1952,0x1132,0x1995,0x21D6,0x21F7,0x1995,0x0912,0x1132,0x1931,0x1931,0x2130,0x2130,0x2110,0x212F,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x1911,0x1932,0x1133,0x1995,0x19B7,0x11D8,0x09F9,0x09D9,0x01B9,0x09D9,0x09D9,0x09D9,0x09F9,0x09F9,0x11F8,0x11D7,0x1175,0x1174,0x1133,0x1132,0x1112,0x1112,0x1932,0x1912,0x1932,0x1932,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x1912,0x1912,0x1912,0x1912,0x1912,0x18F1,0x1911,0x1912,0x18F1,0x1911,0x1911,0x1931,0x1911,0x1931,0x1111,0x1111,0x1112,0x0913,0x1134,0x1155,0x19B7,0x21D7,0x19D7,0x21D7,0x1996,0x1134,0x1113,0x1912,0x2132,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x210F,0x212F,0x2930,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1932,0x1113,0x1175,0x11B7,0x11D8,0x09B8,0x09D8,0x11D8,0x0996,0x0134,0x0934,0x1174,0x0954,0x0934,0x1155,0x0955,0x0955,0x0956,0x0997,0x11F8,0x11D8,0x09B7,0x0955,0x00F4,0x08F3,0x1113,0x1154,0x1113,0x1133,0x0912,0x0913,0x0955,0x09B7,0x09B8,0x09D8,0x11D8,0x0976,0x0934,0x0912,0x1111,0x1910,0x1910,0x2130,0x210F,0x210E,0x210F,0x210E,0x210E,0x210F,0x210E,0x210F,0x210E,0x20EE,0x210E,0x210E,0x210E, + 0x1930,0x1910,0x1910,0x190F,0x190F,0x210F,0x190F,0x190E,0x210E,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x2930,0x210F,0x290F,0x212F,0x292F,0x292F,0x290F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2930,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2910,0x2910,0x212F,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2130,0x2130,0x2111,0x1911,0x1112,0x1155,0x1A39,0x09F9,0x01B9,0x01BA,0x01DA,0x01FB,0x01FB,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01D9,0x01D8,0x1219,0x1219,0x1218,0x1A18,0x1A18,0x19F8,0x19F8,0x1A18,0x19F8,0x19F7,0x19F8,0x19F8,0x19F8,0x21F8,0x19F8,0x21F8,0x19F8,0x19F8,0x1A18,0x1A18,0x1A18,0x1A18,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x1A18,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19D8,0x19D8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x1A18,0x1A18,0x1A18,0x1A18,0x19F8,0x19D7,0x19F7,0x19F7,0x19D6,0x1174,0x1133,0x1112,0x1931,0x1931,0x2131,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x292F,0x2930,0x292F,0x292F,0x290F,0x290F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2930,0x2110,0x2130,0x2930,0x2110,0x2910,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x290F,0x290F,0x292F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2131,0x2132,0x1932,0x1952,0x1953,0x1132,0x1132,0x1132,0x1132,0x1932,0x1932,0x1911,0x1911,0x2131,0x2130,0x2130,0x2930,0x2110,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x2130,0x2130,0x212F,0x210F,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x2110,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2130,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x212F,0x2930,0x212F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2910,0x2910,0x210F,0x2930,0x290F,0x290F,0x2930,0x210F,0x2910,0x2930,0x2110,0x2110,0x2130,0x2130,0x210F,0x212F,0x292F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x2930,0x2930,0x2131,0x2131,0x2131,0x1912,0x1912,0x1133,0x1154,0x1195,0x19F7,0x2217,0x2217,0x19D6,0x1133,0x1111,0x1911,0x1930,0x2150,0x2150,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2131,0x1931,0x1932,0x1112,0x1154,0x19D6,0x19F7,0x19F7,0x11B6,0x0953,0x0912,0x1111,0x1930,0x2151,0x2970,0x2950,0x212F,0x210F,0x212F,0x212F,0x214F,0x212F,0x212F,0x210F,0x2930,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x290F,0x2910,0x290F,0x2910,0x2930,0x2130,0x2130,0x2930,0x2910,0x2910,0x2910,0x2110,0x2930,0x2130,0x2130,0x2110,0x212F,0x2130,0x2130,0x1931,0x1931,0x1132,0x1133,0x1175,0x19B6,0x19D7,0x21F8,0x19D7,0x19B6,0x1155,0x1134,0x1133,0x0912,0x1112,0x1132,0x1132,0x1952,0x1952,0x1932,0x1932,0x1112,0x1132,0x1953,0x1953,0x1132,0x1153,0x1154,0x1154,0x1175,0x1195,0x19D7,0x2218,0x2218,0x19F7,0x1133,0x10F2,0x1912,0x1911,0x1910,0x2110,0x2110,0x2130,0x2130,0x212F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1112,0x1154,0x2239,0x21F8,0x19B7,0x1154,0x1953,0x1931,0x1910,0x2110,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x1910,0x1931,0x1953,0x11B5,0x19F7,0x19F8,0x1995,0x1112,0x10F1,0x1911,0x2131,0x2131,0x1932,0x1132,0x0933,0x11D7,0x11F8,0x1A18,0x11B6,0x10F2,0x1911,0x2131,0x2130,0x2130,0x2110,0x2930,0x2930,0x2110,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2110,0x212F,0x210F,0x290F,0x290F,0x2930,0x212F,0x2930,0x210F,0x212F,0x212F,0x2110,0x2110,0x2930,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x292F,0x290F,0x290F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x290F,0x290F,0x210F,0x292F,0x292F,0x292F,0x2930,0x292F,0x212F,0x290F,0x210F,0x290F,0x2930,0x290F,0x210F,0x212F,0x2130,0x1931,0x1932,0x1932,0x1133,0x1995,0x2A17,0x21F7,0x1154,0x08F2,0x1112,0x1952,0x1951,0x2131,0x1930,0x2130,0x2130,0x210F,0x2130,0x2130,0x2151,0x1931,0x1932,0x1154,0x2217,0x19F8,0x19F7,0x0974,0x0913,0x1112,0x1952,0x1931,0x2131,0x2951,0x2130,0x2130,0x212F,0x210F,0x292F,0x292F,0x212F,0x210F,0x2130,0x2130,0x2131,0x2131,0x1931,0x1112,0x1133,0x1174,0x19B6,0x19D7,0x21F7,0x21F7,0x1995,0x0933,0x1132,0x1932,0x1931,0x2151,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2110,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x290F,0x2910,0x210F,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2910,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x2930,0x210F,0x292F,0x210F,0x292F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1132,0x1132,0x1994,0x21F6,0x21F6,0x1994,0x0912,0x1112,0x1932,0x1911,0x1932,0x1932,0x1932,0x1133,0x19B5,0x21F6,0x21D6,0x1995,0x0912,0x1132,0x1952,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x1911,0x1932,0x1953,0x1995,0x19D7,0x1A19,0x11F9,0x09F9,0x09D9,0x09D9,0x11F9,0x1219,0x11F8,0x1196,0x1174,0x1133,0x1132,0x1932,0x1932,0x1931,0x1911,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x1910,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1910,0x1931,0x2131,0x2131,0x2131,0x2131,0x1910,0x2131,0x2131,0x2131,0x2131,0x2131,0x2110,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x1931,0x1911,0x2110,0x2111,0x2110,0x2110,0x2131,0x1910,0x2131,0x1930,0x2151,0x2130,0x1910,0x1910,0x1930,0x1910,0x1931,0x1911,0x2131,0x2131,0x2131,0x1911,0x2111,0x2111,0x2111,0x2111,0x2131,0x2111,0x2110,0x2130,0x2130,0x2131,0x2131,0x2131,0x2151,0x1911,0x1112,0x1112,0x1134,0x1155,0x1996,0x21D7,0x21F8,0x21D7,0x19D7,0x1134,0x08F2,0x1912,0x2132,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2930,0x2110,0x2130,0x212F,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x2930,0x2910,0x2910,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2110,0x2131,0x1911,0x1112,0x1134,0x1196,0x11D7,0x09D8,0x09B7,0x09B7,0x0935,0x00F3,0x08F2,0x1112,0x0912,0x1113,0x1133,0x0913,0x0934,0x0934,0x0996,0x11B7,0x11F8,0x1196,0x0934,0x08D3,0x08F2,0x10F2,0x1932,0x1132,0x08F1,0x08F1,0x08F2,0x0954,0x11D7,0x11F8,0x11D8,0x09B7,0x0975,0x0913,0x1132,0x1111,0x1910,0x2130,0x210F,0x20EF,0x20EE,0x20EE,0x210E,0x210E,0x292F,0x210F,0x210F,0x210E,0x20EE,0x210E,0x210F,0x210F, + 0x1911,0x1931,0x1910,0x1910,0x190F,0x190F,0x190F,0x190F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x2110,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x2930,0x212F,0x292F,0x292F,0x212F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x2110,0x2110,0x2910,0x2930,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x292F,0x210F,0x292F,0x210F,0x292F,0x2930,0x2930,0x212F,0x2130,0x2130,0x2110,0x2111,0x1931,0x1112,0x1155,0x1A19,0x01B9,0x01B9,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01D9,0x01B8,0x09D7,0x09B6,0x11B6,0x11B6,0x1196,0x11B6,0x1196,0x1196,0x19B6,0x19B6,0x1195,0x1996,0x1996,0x1996,0x1996,0x19B6,0x1996,0x19B6,0x19B6,0x19B6,0x19B6,0x11B5,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x11B6,0x11B6,0x19B6,0x19B6,0x1996,0x19B6,0x19B6,0x19B6,0x19B6,0x1996,0x1996,0x19B6,0x1996,0x19B6,0x1996,0x1996,0x19B6,0x19B6,0x19B6,0x1196,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19D6,0x19D6,0x19F7,0x19F7,0x21F7,0x19D6,0x1994,0x1133,0x1111,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x2930,0x2130,0x2131,0x2131,0x1931,0x1932,0x1931,0x1932,0x1912,0x1932,0x1931,0x1911,0x1931,0x1911,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x290F,0x212F,0x2130,0x212F,0x2130,0x212F,0x2130,0x2930,0x2930,0x212F,0x2930,0x210F,0x210F,0x2130,0x2130,0x2910,0x210F,0x210F,0x2130,0x2130,0x2930,0x212F,0x2130,0x212F,0x210F,0x290F,0x2930,0x210F,0x210F,0x292F,0x292F,0x212F,0x292F,0x292F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x210F,0x2910,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x28F0,0x2910,0x2910,0x290F,0x290F,0x2930,0x292F,0x292F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2111,0x2111,0x1912,0x1912,0x1133,0x1154,0x19B6,0x2217,0x19F7,0x21F7,0x1995,0x1132,0x1912,0x1910,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x2950,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2131,0x1932,0x1133,0x1133,0x19D6,0x1A17,0x19F7,0x11B6,0x1153,0x0912,0x1111,0x1930,0x2151,0x2950,0x2950,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x20EF,0x2110,0x2930,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x1910,0x1931,0x1932,0x1133,0x1154,0x1175,0x19B7,0x19D7,0x21D7,0x19D7,0x19B6,0x1175,0x1154,0x0933,0x0912,0x0912,0x0912,0x1132,0x1132,0x1132,0x1112,0x1132,0x1133,0x1133,0x1133,0x1153,0x1154,0x1154,0x1175,0x11B6,0x19D7,0x1A18,0x2218,0x2217,0x1995,0x1112,0x10F1,0x1911,0x1911,0x2110,0x2110,0x2110,0x2950,0x2130,0x210F,0x2130,0x2130,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2131,0x1931,0x1931,0x1112,0x0913,0x21D7,0x2239,0x21F8,0x19B6,0x1954,0x1952,0x2131,0x2130,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2131,0x1931,0x1153,0x1195,0x19F7,0x2218,0x1195,0x1112,0x1911,0x1911,0x2131,0x1911,0x1932,0x1132,0x1133,0x11D6,0x11F8,0x1A18,0x19B6,0x10F2,0x1911,0x2111,0x2130,0x2110,0x2930,0x2930,0x2110,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x2110,0x2110,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2930,0x290F,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2930,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x2930,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x2130,0x2131,0x1932,0x1132,0x1133,0x1975,0x2A17,0x29F7,0x1974,0x08F2,0x1112,0x1932,0x2151,0x2131,0x2110,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x1911,0x1932,0x1133,0x19D6,0x19F8,0x19F8,0x11B6,0x0934,0x1133,0x1132,0x1932,0x1931,0x2151,0x2130,0x210F,0x210F,0x212F,0x212F,0x2950,0x292F,0x210F,0x210F,0x2110,0x2151,0x2131,0x1931,0x1911,0x1112,0x1133,0x1975,0x1996,0x21F7,0x21F7,0x19D6,0x19B5,0x1153,0x1132,0x1932,0x1931,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2910,0x290F,0x290F,0x210F,0x2930,0x2110,0x210F,0x2910,0x2910,0x210F,0x2910,0x2110,0x2110,0x210F,0x2910,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x212F,0x2130,0x212F,0x212F,0x292F,0x292F,0x210F,0x212F,0x2130,0x2131,0x1931,0x1932,0x1132,0x1994,0x21F6,0x21F6,0x19B5,0x0912,0x1112,0x1932,0x1932,0x1932,0x1932,0x1932,0x1133,0x19B5,0x21D6,0x21D6,0x19B5,0x0912,0x1132,0x1952,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2930,0x212F,0x2930,0x2130,0x2110,0x2130,0x1931,0x1932,0x1954,0x1995,0x11B6,0x11D7,0x19F8,0x11D8,0x11D7,0x11B7,0x1196,0x1175,0x1154,0x1133,0x1932,0x1932,0x1931,0x1931,0x1931,0x1930,0x2131,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2131,0x2131,0x1931,0x1931,0x1112,0x1112,0x1133,0x1154,0x19B6,0x19D7,0x21F8,0x21F7,0x1996,0x1134,0x08F2,0x1912,0x2152,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x290F,0x292F,0x290F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x2910,0x210F,0x2910,0x210F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2110,0x2110,0x1911,0x1111,0x1113,0x1996,0x11D7,0x11D8,0x11B7,0x1196,0x0934,0x0912,0x1112,0x1112,0x1912,0x1912,0x1112,0x1133,0x1133,0x0933,0x1196,0x19F7,0x11D7,0x11B6,0x0914,0x08F2,0x1112,0x1111,0x1111,0x1111,0x1111,0x1111,0x0912,0x0933,0x11B7,0x11D8,0x11B7,0x11D7,0x0954,0x08F2,0x10F1,0x1110,0x1910,0x210F,0x210F,0x210F,0x210E,0x210F,0x210E,0x210F,0x210F,0x210F,0x212F,0x212F,0x20EE,0x292F,0x210F,0x210F, + 0x1132,0x1131,0x1931,0x1910,0x1910,0x1910,0x190F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x212F,0x212F,0x290F,0x210F,0x212F,0x2930,0x212F,0x210F,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x290F,0x2930,0x2910,0x2910,0x290F,0x210F,0x2930,0x2110,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x290F,0x290F,0x210F,0x292F,0x212F,0x212F,0x2930,0x2130,0x2130,0x2110,0x2131,0x1932,0x1132,0x0934,0x1A19,0x09D9,0x01B9,0x01DA,0x01DA,0x01DB,0x01FA,0x01DA,0x01FA,0x01DA,0x01FA,0x01FB,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01D9,0x01B8,0x0976,0x0934,0x0933,0x1133,0x1153,0x1154,0x1153,0x1133,0x1153,0x1153,0x1153,0x1974,0x1933,0x1133,0x1933,0x1933,0x1933,0x1933,0x1953,0x1153,0x1152,0x1153,0x1953,0x1153,0x1133,0x1133,0x1133,0x1133,0x1153,0x1153,0x1153,0x1133,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1133,0x1153,0x1153,0x1133,0x1153,0x1153,0x1133,0x1133,0x1153,0x1133,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1154,0x1995,0x19F6,0x2217,0x2217,0x19D6,0x19B5,0x1153,0x1111,0x1911,0x1931,0x2151,0x2150,0x2130,0x2110,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x290F,0x290F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x212F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2130,0x2131,0x2131,0x2131,0x1931,0x1931,0x2131,0x1931,0x2131,0x2131,0x1930,0x2130,0x2110,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x212F,0x2130,0x2930,0x2130,0x2930,0x2930,0x2130,0x2130,0x212F,0x210F,0x212F,0x2930,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2910,0x2910,0x2930,0x210F,0x2910,0x210F,0x2910,0x2930,0x210F,0x290F,0x2910,0x210F,0x290F,0x290F,0x292F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2111,0x1931,0x1932,0x1153,0x1174,0x19B6,0x19D6,0x19F7,0x21F6,0x1994,0x1932,0x1911,0x1911,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1932,0x1132,0x1153,0x19D6,0x1A17,0x11D6,0x11B5,0x1154,0x1132,0x1911,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2930,0x2930,0x210F,0x2110,0x2930,0x2930,0x2910,0x210F,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x210F,0x212F,0x2130,0x2130,0x2151,0x1931,0x1932,0x1933,0x1154,0x1175,0x1996,0x19B7,0x19D7,0x19D7,0x19D7,0x19B6,0x1195,0x0954,0x0933,0x0933,0x0933,0x0933,0x1153,0x1133,0x1133,0x1133,0x0933,0x1154,0x1175,0x1175,0x11B6,0x19D7,0x1A17,0x1A18,0x2218,0x19D7,0x1995,0x1133,0x10F1,0x1911,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x2130,0x212F,0x2130,0x2130,0x212F,0x210F,0x290F,0x290F,0x292F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x2130,0x210F,0x2110,0x2110,0x2130,0x2131,0x1931,0x1932,0x1112,0x1133,0x19B6,0x2A58,0x2218,0x19B7,0x1155,0x1133,0x1932,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2130,0x2110,0x1910,0x1931,0x1132,0x11B5,0x1A18,0x2218,0x1195,0x1132,0x1932,0x1911,0x2131,0x1931,0x2152,0x1132,0x0933,0x11D6,0x11F8,0x1A18,0x19D6,0x10F2,0x1911,0x2111,0x2110,0x2110,0x2930,0x2930,0x2110,0x210F,0x212F,0x2930,0x2130,0x212F,0x212F,0x2930,0x2930,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x210F,0x212F,0x210F,0x212F,0x2930,0x212F,0x210F,0x2930,0x210F,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x292F,0x210F,0x212F,0x292F,0x212F,0x2930,0x2110,0x210F,0x2910,0x210F,0x210F,0x2930,0x210F,0x2130,0x2130,0x2131,0x1952,0x1932,0x1113,0x1975,0x2A17,0x21F7,0x1974,0x1112,0x1932,0x1932,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x2130,0x2131,0x1932,0x1133,0x0933,0x19F7,0x1A18,0x19F7,0x11B6,0x0934,0x0913,0x1953,0x1932,0x2152,0x2131,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2151,0x2131,0x1911,0x1932,0x1133,0x1174,0x19B6,0x21F7,0x21F7,0x19D6,0x1195,0x1153,0x1132,0x1931,0x1931,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2910,0x210F,0x2910,0x210F,0x2910,0x2910,0x2910,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x210F,0x212F,0x210F,0x212F,0x292F,0x292F,0x292F,0x2130,0x2130,0x2131,0x1952,0x1952,0x1153,0x1995,0x21F6,0x21F6,0x19B5,0x0912,0x1112,0x1112,0x1911,0x1932,0x1952,0x1952,0x1153,0x19B5,0x21D6,0x2217,0x19B5,0x0912,0x1112,0x1932,0x2131,0x1930,0x2130,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x210F,0x2130,0x2130,0x1931,0x1932,0x1953,0x1153,0x1974,0x1995,0x1175,0x1154,0x1154,0x1154,0x1153,0x1952,0x1931,0x1931,0x1931,0x1910,0x1910,0x1930,0x1930,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2150,0x2130,0x2131,0x1931,0x1931,0x1932,0x1112,0x1153,0x1174,0x19B6,0x19D7,0x21F7,0x19D7,0x1996,0x1154,0x08F2,0x1932,0x2132,0x2131,0x2151,0x2131,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x210F,0x290F,0x290F,0x2930,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2930,0x290F,0x210F,0x2930,0x210F,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x212F,0x292F,0x290F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2111,0x1911,0x10F2,0x1154,0x11B7,0x11B7,0x11D8,0x11B7,0x0934,0x1112,0x1111,0x1911,0x1932,0x1911,0x1932,0x1132,0x1133,0x0933,0x19D6,0x2238,0x19D7,0x1195,0x0913,0x1112,0x1912,0x1931,0x1911,0x1931,0x1931,0x1131,0x1111,0x1153,0x11B6,0x11D8,0x1A18,0x11D7,0x0933,0x08F1,0x1111,0x1930,0x18EF,0x210F,0x210F,0x210E,0x210E,0x210E,0x210F,0x212F,0x210F,0x210E,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F, + 0x1974,0x1153,0x1932,0x1931,0x1931,0x1910,0x1910,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x290F,0x2930,0x210F,0x2930,0x212F,0x212F,0x212F,0x2930,0x210F,0x290F,0x2910,0x2910,0x2930,0x210F,0x210F,0x2110,0x290F,0x290F,0x290F,0x210F,0x290F,0x212F,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x212F,0x212F,0x2930,0x2110,0x2110,0x2130,0x2131,0x1931,0x1112,0x1154,0x1A19,0x09F9,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x09F9,0x0197,0x0975,0x0933,0x1132,0x1132,0x1112,0x1112,0x1912,0x1912,0x1112,0x1112,0x1932,0x1912,0x1912,0x1912,0x1912,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1912,0x1932,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1932,0x1932,0x1932,0x1932,0x1931,0x1111,0x1932,0x1911,0x1931,0x1111,0x1932,0x1112,0x1132,0x1132,0x1132,0x1133,0x1174,0x19F6,0x21F7,0x21F7,0x19D6,0x1994,0x1153,0x1132,0x1931,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x210F,0x210F,0x2910,0x2910,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x2110,0x2930,0x2910,0x210F,0x2910,0x210F,0x210F,0x210F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x292F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x2131,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x292F,0x290F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x290F,0x290F,0x2910,0x2930,0x210F,0x2910,0x290F,0x290F,0x2910,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x210F,0x210F,0x292F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2131,0x1931,0x1932,0x1153,0x1194,0x11D6,0x19D7,0x1A17,0x21F6,0x1133,0x1912,0x1911,0x1910,0x2951,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x2110,0x2130,0x2131,0x1932,0x1132,0x1133,0x19D6,0x1A17,0x11D6,0x19B6,0x1154,0x1112,0x1911,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x2910,0x2910,0x290F,0x2910,0x2910,0x290F,0x292F,0x292F,0x2930,0x2910,0x2910,0x2910,0x2910,0x28F0,0x2910,0x2110,0x2930,0x2110,0x210F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1931,0x1932,0x1933,0x1154,0x1955,0x1175,0x19B6,0x19D7,0x19D7,0x19F7,0x19D7,0x19D6,0x1195,0x1175,0x0954,0x0954,0x0954,0x0954,0x0954,0x0934,0x1155,0x1175,0x1196,0x19D7,0x19F8,0x19F8,0x2218,0x19F7,0x19D6,0x1195,0x1153,0x1112,0x1911,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x210F,0x2930,0x2110,0x2130,0x2131,0x2131,0x1932,0x1132,0x1133,0x1195,0x2A58,0x2218,0x19D7,0x1996,0x1133,0x1933,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2130,0x2130,0x1930,0x1932,0x1133,0x19B6,0x1A18,0x19F7,0x1195,0x1132,0x1911,0x1911,0x1911,0x2131,0x1932,0x1932,0x0933,0x11D6,0x11F8,0x19F8,0x19D6,0x10F2,0x1911,0x2111,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2110,0x212F,0x212F,0x2930,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x2930,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2910,0x210F,0x2930,0x290F,0x210F,0x2110,0x2130,0x2130,0x1931,0x1932,0x1932,0x1133,0x1975,0x2A17,0x21F7,0x1995,0x08F2,0x1932,0x2152,0x2131,0x2130,0x2110,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2131,0x1931,0x1932,0x0933,0x1195,0x19F8,0x19F8,0x19F8,0x1196,0x0934,0x1133,0x1132,0x1932,0x2131,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2131,0x2131,0x1932,0x1132,0x1153,0x1174,0x19B6,0x21F7,0x21F7,0x21F6,0x1995,0x1153,0x1932,0x1932,0x2131,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2110,0x2910,0x210F,0x210F,0x210F,0x2930,0x210F,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x210F,0x2910,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x2930,0x2130,0x2130,0x2131,0x1952,0x1952,0x1133,0x1995,0x21F6,0x21F7,0x19B5,0x0912,0x1112,0x1112,0x1932,0x1932,0x1952,0x1132,0x1153,0x19B5,0x21F6,0x2217,0x19D6,0x0912,0x1112,0x1932,0x2151,0x2131,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1910,0x1931,0x1931,0x1932,0x1932,0x1132,0x1132,0x1933,0x1953,0x1932,0x1932,0x1931,0x1910,0x1910,0x2130,0x1910,0x2110,0x1930,0x1930,0x2110,0x210F,0x2130,0x210F,0x2130,0x210F,0x210F,0x212F,0x210F,0x2130,0x212F,0x212F,0x2110,0x2110,0x210F,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x2130,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x210F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2930,0x2130,0x2930,0x2910,0x2910,0x2110,0x2930,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2151,0x1931,0x1932,0x1132,0x1153,0x1154,0x1996,0x19D7,0x19D7,0x21F7,0x19B6,0x1134,0x1112,0x1912,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x210F,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2930,0x210F,0x290F,0x290F,0x210F,0x210F,0x2130,0x212F,0x210F,0x290F,0x2930,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x2930,0x292F,0x292F,0x2930,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2110,0x2131,0x1911,0x10F1,0x1133,0x19B7,0x19F8,0x11D7,0x11B6,0x0933,0x1112,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1132,0x0933,0x19B6,0x19F7,0x19D7,0x1995,0x0913,0x10F2,0x1911,0x1910,0x1930,0x1910,0x1930,0x1910,0x1111,0x1133,0x11B6,0x11D7,0x11D8,0x11B7,0x0933,0x08F1,0x1911,0x1910,0x1910,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F, + 0x2217,0x1174,0x1153,0x1132,0x1932,0x1931,0x1931,0x2130,0x190F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x212F,0x212F,0x2930,0x2110,0x212F,0x212F,0x290F,0x290F,0x212F,0x2930,0x2930,0x210F,0x2930,0x212F,0x2930,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x290F,0x210F,0x292F,0x210F,0x292F,0x210F,0x290F,0x2930,0x2930,0x2130,0x2131,0x1911,0x1112,0x1154,0x1A19,0x09D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01FA,0x09F9,0x09B7,0x0975,0x1153,0x1153,0x1932,0x1932,0x1912,0x1932,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1930,0x1931,0x1911,0x1931,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x2131,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1132,0x1153,0x1154,0x19B5,0x21F7,0x19F6,0x19D6,0x19B5,0x1153,0x1132,0x1911,0x1931,0x2151,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2910,0x2910,0x210F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x212F,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x2930,0x2930,0x212F,0x212F,0x2130,0x2130,0x210F,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x292F,0x290F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2131,0x1931,0x1953,0x1174,0x1195,0x11D6,0x19F7,0x19D6,0x1174,0x1133,0x1911,0x1931,0x2131,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1952,0x1133,0x1133,0x19F7,0x2217,0x19F7,0x1195,0x1153,0x1112,0x1911,0x2131,0x2130,0x2130,0x2110,0x2130,0x210F,0x2130,0x212F,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x290F,0x212F,0x212F,0x290F,0x210F,0x292F,0x290F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1932,0x1912,0x1933,0x1134,0x1955,0x1175,0x1196,0x1196,0x11B6,0x11B6,0x11D7,0x11D6,0x19D6,0x11D6,0x11D6,0x11D6,0x11D6,0x11B6,0x19D7,0x19D7,0x19D7,0x19F7,0x19F8,0x19D7,0x19D7,0x19B6,0x1175,0x1154,0x1133,0x1933,0x1932,0x1931,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x292F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2111,0x2131,0x1932,0x1132,0x1153,0x1995,0x2A38,0x2A18,0x19B7,0x1996,0x1954,0x1112,0x1932,0x1931,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x2930,0x210F,0x2110,0x2130,0x2110,0x2151,0x1951,0x1132,0x1133,0x19D6,0x2238,0x19F7,0x1175,0x1132,0x1932,0x1931,0x1911,0x2131,0x2152,0x1932,0x1133,0x19D7,0x1A18,0x1A18,0x19B6,0x10F2,0x1911,0x2111,0x2130,0x2110,0x2930,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x2110,0x2910,0x210F,0x2930,0x2110,0x2930,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x290F,0x290F,0x2910,0x2130,0x2130,0x1910,0x1931,0x1932,0x1133,0x1995,0x2A17,0x21F7,0x1975,0x1112,0x1932,0x2152,0x2131,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2131,0x1952,0x1133,0x1154,0x19B6,0x19D7,0x19F8,0x2218,0x1175,0x0933,0x1133,0x1132,0x1932,0x2171,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x292F,0x2930,0x2930,0x2130,0x2131,0x1911,0x1932,0x1953,0x1153,0x1174,0x19B6,0x19F7,0x2217,0x19D6,0x1995,0x1153,0x1132,0x1932,0x2131,0x2111,0x2131,0x2130,0x2130,0x2110,0x2130,0x2930,0x292F,0x212F,0x212F,0x212F,0x212F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2930,0x2910,0x290F,0x210F,0x2910,0x210F,0x2910,0x2910,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x292F,0x210F,0x292F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1932,0x0912,0x1995,0x21F6,0x2217,0x19B6,0x0912,0x1112,0x1932,0x1932,0x1932,0x1952,0x1932,0x1132,0x1994,0x21F6,0x19F6,0x19D6,0x0913,0x1112,0x1932,0x1951,0x2151,0x2130,0x2130,0x210F,0x2130,0x2950,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x1930,0x1930,0x1931,0x1931,0x1952,0x1932,0x1932,0x1911,0x1931,0x2131,0x2131,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2930,0x212F,0x292F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2930,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2930,0x210F,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2150,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2910,0x20EF,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2131,0x1931,0x1931,0x1112,0x1153,0x1174,0x1196,0x19F7,0x2218,0x21F7,0x19B6,0x1134,0x1933,0x1112,0x1911,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x214F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x290F,0x2930,0x210F,0x210F,0x212F,0x212F,0x290F,0x210F,0x2930,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x1911,0x18F1,0x1953,0x19D7,0x11D7,0x19F8,0x11B6,0x1133,0x1111,0x1911,0x2130,0x2110,0x2110,0x1911,0x1911,0x1132,0x1133,0x19B6,0x2217,0x19D7,0x1995,0x0913,0x10F2,0x1931,0x1931,0x1910,0x1910,0x1910,0x1930,0x1931,0x1153,0x11B6,0x19F8,0x19F8,0x19D7,0x0913,0x1111,0x1931,0x1930,0x190F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F, + 0x2238,0x19B6,0x1175,0x1133,0x1132,0x1932,0x1931,0x1931,0x1910,0x1910,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x212F,0x290F,0x210F,0x212F,0x210F,0x210F,0x2910,0x2910,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x2910,0x2910,0x212F,0x212F,0x290F,0x290F,0x212F,0x212F,0x290F,0x290F,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x210F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x210F,0x292F,0x292F,0x290F,0x2910,0x2110,0x2110,0x2110,0x1931,0x1932,0x1134,0x1A18,0x09D9,0x09FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01FA,0x01FA,0x01F9,0x09D9,0x09B7,0x0975,0x0933,0x1132,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x2131,0x2111,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x2151,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1132,0x1153,0x1174,0x19B5,0x21F7,0x21F7,0x21D6,0x1995,0x1153,0x1112,0x1911,0x1931,0x2131,0x2151,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x212F,0x212F,0x2130,0x2110,0x210F,0x212F,0x2130,0x210F,0x2130,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x212F,0x292F,0x290F,0x290F,0x210F,0x2130,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x2930,0x2930,0x292F,0x292F,0x212F,0x212F,0x210F,0x2110,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x210F,0x2930,0x2930,0x2930,0x290F,0x210F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x290F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x1931,0x1932,0x1973,0x1174,0x11B6,0x19F7,0x19F7,0x19B6,0x1154,0x1932,0x1931,0x2110,0x2130,0x2110,0x2930,0x2130,0x212F,0x292F,0x212F,0x292F,0x212F,0x2130,0x2110,0x2131,0x1932,0x1132,0x1153,0x19D6,0x2217,0x19D6,0x1995,0x1154,0x1112,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x292F,0x292F,0x292F,0x290F,0x290F,0x212F,0x212F,0x2930,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x292F,0x210F,0x2930,0x2130,0x2110,0x2130,0x1911,0x1931,0x1932,0x1932,0x1933,0x1154,0x1175,0x1175,0x1175,0x11B6,0x11D6,0x11B6,0x11D7,0x19F7,0x1A17,0x2218,0x1A17,0x1A17,0x19F7,0x19D7,0x19D7,0x19D7,0x19B6,0x19B7,0x1195,0x1175,0x1154,0x1133,0x1933,0x1932,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2930,0x2931,0x2111,0x1911,0x1112,0x1133,0x1995,0x2217,0x2218,0x21F7,0x1996,0x1134,0x1133,0x1912,0x1911,0x2131,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x2950,0x292F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2131,0x1951,0x1931,0x1132,0x0933,0x21F7,0x2238,0x19D7,0x1175,0x1933,0x1931,0x1911,0x1911,0x2131,0x2152,0x1932,0x1133,0x11B6,0x19F8,0x1A18,0x19D6,0x08F2,0x1911,0x2131,0x2110,0x2110,0x2110,0x2130,0x2930,0x210F,0x2930,0x2930,0x290F,0x2110,0x2110,0x290F,0x210F,0x2930,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x210F,0x2930,0x212F,0x212F,0x2930,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2910,0x210F,0x210F,0x210F,0x2130,0x2130,0x2131,0x1932,0x1932,0x1133,0x1975,0x2A18,0x21F7,0x1995,0x08F2,0x1933,0x2152,0x2131,0x2130,0x2130,0x212F,0x212F,0x292F,0x292F,0x212F,0x210F,0x2130,0x2131,0x1952,0x1932,0x1133,0x1154,0x19B6,0x19F7,0x21F8,0x19F7,0x1175,0x0933,0x1133,0x1932,0x2152,0x2151,0x1910,0x2130,0x2130,0x2130,0x210F,0x210F,0x292F,0x2930,0x290F,0x2910,0x2130,0x2130,0x2131,0x1952,0x1932,0x1153,0x1133,0x1154,0x19B6,0x19F7,0x2217,0x19D6,0x1995,0x1953,0x1112,0x1932,0x2152,0x2131,0x2131,0x2110,0x2110,0x2110,0x2130,0x2930,0x210F,0x210F,0x210F,0x212F,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2110,0x2930,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2130,0x2930,0x290F,0x292F,0x210F,0x210F,0x2110,0x2131,0x1911,0x1912,0x1112,0x1995,0x21F6,0x21F7,0x21D6,0x0913,0x1112,0x1932,0x1932,0x1932,0x1952,0x1932,0x1132,0x1994,0x21D6,0x21F7,0x21F7,0x1134,0x1112,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1911,0x1931,0x1911,0x1910,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x2130,0x210F,0x2930,0x2110,0x2930,0x2930,0x292F,0x292F,0x292F,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x2110,0x2110,0x2930,0x2130,0x2930,0x2930,0x212F,0x2930,0x2930,0x290F,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x210F,0x2930,0x292F,0x212F,0x2930,0x2930,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x1930,0x1931,0x1131,0x1132,0x1153,0x1174,0x19D6,0x19D7,0x2218,0x2217,0x1996,0x1154,0x1113,0x1112,0x1911,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x290F,0x290F,0x212F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x2110,0x210F,0x210F,0x2930,0x290F,0x2910,0x2910,0x290F,0x2930,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x210F,0x292F,0x292F,0x212F,0x210F,0x292F,0x210F,0x210F,0x2930,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x1910,0x1911,0x1133,0x19D7,0x11D7,0x11B7,0x19B6,0x1133,0x1911,0x1911,0x2110,0x2110,0x2110,0x2111,0x1911,0x1932,0x1133,0x19B5,0x2217,0x19D7,0x1195,0x0912,0x10F1,0x1911,0x1910,0x2130,0x2130,0x1910,0x1930,0x1931,0x1153,0x11B6,0x11D7,0x19F8,0x19D7,0x0933,0x1111,0x1931,0x1930,0x190F,0x190F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F, + 0x19F7,0x19F7,0x1195,0x1154,0x1133,0x1132,0x1932,0x1932,0x1931,0x1930,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2110,0x2910,0x2910,0x210F,0x212F,0x212F,0x210F,0x2910,0x210F,0x292F,0x210F,0x290F,0x290F,0x212F,0x212F,0x292F,0x292F,0x212F,0x210F,0x290F,0x290F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2930,0x2930,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x292F,0x212F,0x212F,0x292F,0x292F,0x212F,0x210F,0x290F,0x210F,0x2910,0x2930,0x2110,0x2130,0x1931,0x1932,0x1154,0x1A18,0x09F9,0x01D9,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01F9,0x01F9,0x09D9,0x09B7,0x1195,0x1153,0x1132,0x1932,0x1931,0x1931,0x1911,0x1911,0x2151,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x2131,0x2131,0x1931,0x1931,0x2131,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1930,0x2131,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x1931,0x1931,0x2131,0x2151,0x1931,0x1952,0x1931,0x1931,0x1931,0x1932,0x1932,0x1132,0x1133,0x1133,0x1154,0x19B6,0x21F7,0x2217,0x19D6,0x1174,0x1153,0x1132,0x1112,0x1932,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2130,0x2130,0x2930,0x2910,0x2930,0x2930,0x210F,0x210F,0x290F,0x2930,0x2930,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x212F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2930,0x2110,0x210F,0x2110,0x2930,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x292F,0x212F,0x2930,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x2930,0x2930,0x290F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x292F,0x212F,0x210F,0x2130,0x2930,0x2130,0x2130,0x2131,0x1911,0x1132,0x1153,0x1195,0x11D7,0x1A17,0x19D7,0x1154,0x1953,0x1931,0x2111,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x2130,0x2110,0x2131,0x2132,0x1112,0x1153,0x19D6,0x2217,0x19D6,0x1995,0x1153,0x1112,0x1931,0x2131,0x2131,0x2131,0x2110,0x2130,0x2930,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2130,0x212F,0x212F,0x2130,0x2930,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2910,0x2110,0x290F,0x210F,0x210F,0x290F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1932,0x1933,0x1953,0x1954,0x1995,0x19B5,0x19D6,0x19F7,0x2217,0x1A17,0x1A17,0x1A17,0x2217,0x19D6,0x19B6,0x19D6,0x19B6,0x19B6,0x19B5,0x1995,0x1154,0x1153,0x1132,0x1912,0x1911,0x1911,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x292F,0x290F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x2130,0x2951,0x2131,0x2111,0x1911,0x1112,0x1133,0x1995,0x19D6,0x2238,0x21F7,0x1995,0x1134,0x1112,0x1932,0x1931,0x2131,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x294F,0x292F,0x212F,0x210F,0x2930,0x2130,0x210F,0x2110,0x2131,0x2151,0x1951,0x1132,0x0912,0x1195,0x2218,0x1A18,0x19B6,0x1154,0x1933,0x1931,0x2111,0x2111,0x2131,0x2132,0x1932,0x1133,0x11D6,0x11F7,0x19F8,0x19D6,0x08F2,0x1911,0x2131,0x2130,0x2110,0x2110,0x2110,0x2930,0x2130,0x210F,0x290F,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2930,0x210F,0x210F,0x290F,0x2110,0x2930,0x210F,0x210F,0x210F,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x210F,0x2130,0x210F,0x1910,0x1910,0x1932,0x1932,0x1133,0x1995,0x2A18,0x2217,0x1995,0x08F2,0x1112,0x1932,0x2131,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2151,0x2151,0x1932,0x1112,0x1113,0x1154,0x19B6,0x19D7,0x2218,0x19D6,0x0974,0x0933,0x0912,0x1952,0x1952,0x2151,0x2130,0x190F,0x2130,0x2130,0x2130,0x210F,0x290F,0x290F,0x290F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1132,0x1133,0x1194,0x19D6,0x2217,0x2217,0x19D6,0x1995,0x1153,0x1112,0x1932,0x2131,0x2131,0x2111,0x2110,0x2110,0x2930,0x2930,0x2930,0x212F,0x2130,0x2110,0x210F,0x290F,0x2930,0x2930,0x2930,0x290F,0x210F,0x2910,0x2930,0x2110,0x2910,0x210F,0x290F,0x290F,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x292F,0x210F,0x2130,0x2130,0x2930,0x2930,0x2910,0x2930,0x2110,0x2130,0x2110,0x1911,0x1911,0x1132,0x1995,0x21F7,0x21F7,0x19B6,0x0913,0x1113,0x1932,0x1952,0x1932,0x1932,0x1932,0x1132,0x1974,0x21D6,0x19D6,0x19F6,0x1175,0x0912,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2930,0x2910,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2150,0x2150,0x210F,0x210F,0x210F,0x212F,0x2930,0x2110,0x2930,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x2910,0x2930,0x2910,0x210F,0x210F,0x210F,0x212F,0x2130,0x2150,0x2150,0x1930,0x1110,0x1131,0x1173,0x1174,0x19D6,0x21F7,0x2218,0x21F7,0x1995,0x1154,0x1112,0x1112,0x1911,0x2111,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2910,0x2930,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x212F,0x292F,0x2930,0x210F,0x210F,0x210F,0x290F,0x292F,0x210F,0x292F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x1911,0x1912,0x1953,0x19F7,0x19F8,0x19D7,0x1995,0x1133,0x1931,0x1910,0x2110,0x2110,0x2110,0x2111,0x1911,0x1112,0x1133,0x19B6,0x2218,0x21F7,0x1995,0x1113,0x1112,0x1911,0x1930,0x1910,0x190F,0x2130,0x1930,0x1111,0x1132,0x11D6,0x11F8,0x1A19,0x19D7,0x0933,0x1132,0x1931,0x1910,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F, + 0x11B6,0x11D7,0x19F7,0x19B6,0x1174,0x1133,0x1133,0x1112,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2930,0x2930,0x212F,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2910,0x210F,0x2930,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x292F,0x212F,0x212F,0x210F,0x2930,0x290F,0x210F,0x212F,0x2930,0x212F,0x2930,0x212F,0x2930,0x2930,0x2930,0x210F,0x2930,0x210F,0x2930,0x212F,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x212F,0x212F,0x292F,0x292F,0x210F,0x292F,0x210F,0x212F,0x210F,0x212F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2130,0x1931,0x1112,0x1154,0x1A38,0x09D8,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x01D9,0x01FA,0x01D9,0x01D9,0x09D8,0x09B7,0x0975,0x1153,0x1132,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x1931,0x2131,0x1931,0x1931,0x1931,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x1932,0x1932,0x1952,0x1932,0x1952,0x1952,0x1952,0x1952,0x1952,0x1932,0x1932,0x1132,0x1133,0x1154,0x1154,0x19D6,0x19F7,0x19D7,0x19D6,0x1195,0x1133,0x1133,0x1132,0x1931,0x1931,0x2131,0x2131,0x1910,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2950,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2110,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x1930,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1930,0x2131,0x2131,0x2131,0x2131,0x2130,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x2110,0x2110,0x2910,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x2910,0x2110,0x2930,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2930,0x210F,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1132,0x1133,0x1195,0x11F7,0x1A18,0x11D7,0x1175,0x1132,0x1932,0x2111,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2152,0x1932,0x1133,0x19D6,0x2217,0x19D6,0x19B5,0x1153,0x1112,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x292F,0x210F,0x290F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1932,0x1952,0x1953,0x1953,0x1974,0x1995,0x1995,0x1995,0x19B5,0x1195,0x1995,0x1995,0x1995,0x1974,0x1974,0x1974,0x1954,0x1133,0x1132,0x1132,0x1911,0x1911,0x1911,0x1910,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x2131,0x18F1,0x10F2,0x1953,0x1995,0x21F6,0x2238,0x21F7,0x1995,0x1154,0x1113,0x1912,0x1911,0x2131,0x2130,0x2130,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1112,0x1154,0x19D7,0x2238,0x19D7,0x1175,0x1174,0x1932,0x1911,0x2131,0x2111,0x2131,0x2132,0x1932,0x1133,0x11B6,0x11F7,0x1A18,0x19D7,0x08F2,0x1931,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x2930,0x290F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x290F,0x210F,0x210F,0x290F,0x2910,0x2910,0x210F,0x290F,0x2930,0x2910,0x2110,0x2910,0x2910,0x2910,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x2130,0x2130,0x1931,0x1931,0x1132,0x1113,0x1975,0x21F7,0x21F7,0x1995,0x08F2,0x1932,0x2152,0x2131,0x2130,0x2110,0x210F,0x212F,0x212F,0x2930,0x210F,0x212F,0x2130,0x2131,0x2131,0x1931,0x1932,0x1912,0x1133,0x1975,0x1996,0x21F7,0x2217,0x19D6,0x1174,0x1153,0x1132,0x1932,0x1952,0x1931,0x2130,0x1910,0x2130,0x2130,0x210F,0x210F,0x292F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1911,0x1912,0x1132,0x1133,0x1994,0x19D6,0x2217,0x19F6,0x19D6,0x19B5,0x1153,0x1132,0x1912,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x2930,0x2930,0x212F,0x290F,0x2930,0x2110,0x2930,0x2110,0x210F,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x290F,0x290F,0x2910,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x210F,0x292F,0x210F,0x212F,0x2930,0x2930,0x2130,0x2930,0x2930,0x2930,0x2110,0x2110,0x2131,0x2111,0x1932,0x1112,0x1995,0x21F7,0x19D7,0x19D6,0x1133,0x1113,0x1933,0x1952,0x1932,0x1932,0x1932,0x1932,0x1973,0x21D5,0x19D6,0x19F6,0x19D6,0x1154,0x1112,0x1932,0x1931,0x2131,0x2151,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x290F,0x290F,0x2930,0x210F,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x292F,0x290F,0x210F,0x2930,0x2930,0x210F,0x2930,0x290F,0x2930,0x2930,0x2130,0x212F,0x212F,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2950,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x210F,0x2130,0x2110,0x2110,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2110,0x212F,0x210F,0x212F,0x212F,0x2130,0x2150,0x2130,0x1930,0x1931,0x1131,0x1153,0x1174,0x19B6,0x19F7,0x19F7,0x21F7,0x19B6,0x1974,0x1133,0x1912,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x290F,0x290F,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x210F,0x2110,0x2930,0x2910,0x210F,0x290F,0x210F,0x210F,0x292F,0x210F,0x290F,0x210F,0x212F,0x290F,0x210F,0x212F,0x210F,0x292F,0x212F,0x210F,0x292F,0x210F,0x290F,0x210F,0x210F,0x292F,0x2930,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2111,0x1911,0x1933,0x19F7,0x19F7,0x19B7,0x1995,0x1953,0x1911,0x1910,0x2110,0x2110,0x2110,0x2111,0x1912,0x1912,0x0913,0x19B6,0x2217,0x19F7,0x1195,0x1113,0x1112,0x1931,0x1930,0x2130,0x212F,0x1930,0x1930,0x1131,0x1133,0x11B6,0x1A18,0x1A18,0x19D7,0x0913,0x1111,0x1931,0x1930,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F, + 0x1196,0x11B6,0x19D6,0x1A17,0x19D6,0x1174,0x1133,0x1113,0x1932,0x1912,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2110,0x212F,0x212F,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x210F,0x212F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930,0x2930,0x290F,0x212F,0x212F,0x2930,0x212F,0x2930,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x292F,0x290F,0x2930,0x210F,0x2930,0x290F,0x290F,0x292F,0x210F,0x292F,0x210F,0x292F,0x212F,0x292F,0x292F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2130,0x2111,0x1912,0x1134,0x2239,0x09F9,0x01D9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x09D8,0x09B7,0x0975,0x0933,0x1133,0x1133,0x1132,0x1132,0x1111,0x1911,0x1932,0x1932,0x1932,0x1932,0x1911,0x1911,0x1932,0x1932,0x1911,0x1111,0x1912,0x1112,0x1111,0x1111,0x1132,0x1132,0x1112,0x1932,0x1111,0x1912,0x1111,0x1111,0x1111,0x1911,0x1111,0x1111,0x1911,0x1111,0x1111,0x1111,0x1911,0x1911,0x1111,0x1111,0x1911,0x1111,0x1111,0x1111,0x1111,0x1111,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1953,0x1133,0x1113,0x1113,0x0933,0x1154,0x19B6,0x19D7,0x19F7,0x19D6,0x1175,0x1153,0x1133,0x1132,0x1931,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2111,0x2131,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1910,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2930,0x2910,0x2910,0x2930,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2930,0x2110,0x2110,0x2910,0x290F,0x2930,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2110,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x290F,0x2930,0x292F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1911,0x1112,0x1154,0x11D7,0x1A18,0x11D7,0x1155,0x1112,0x1911,0x1911,0x2131,0x2130,0x2130,0x2930,0x290F,0x210F,0x292F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2131,0x1132,0x1133,0x19D6,0x2217,0x19D6,0x19B5,0x1153,0x1112,0x1931,0x2131,0x2131,0x2130,0x2110,0x2930,0x2110,0x2910,0x2930,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x1931,0x1911,0x1932,0x1912,0x1932,0x1132,0x1933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1953,0x1933,0x1112,0x1912,0x1112,0x1912,0x1911,0x1911,0x1931,0x1931,0x2131,0x2130,0x2130,0x212F,0x290F,0x292F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x2930,0x2930,0x290F,0x210F,0x210F,0x292F,0x2930,0x2150,0x2951,0x2131,0x2111,0x1911,0x1912,0x1953,0x1974,0x21D6,0x2217,0x21F7,0x19B6,0x1154,0x1112,0x1112,0x1911,0x1911,0x2131,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x2950,0x212F,0x212F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2131,0x1931,0x1932,0x1132,0x1174,0x19D6,0x2218,0x21D7,0x1196,0x1175,0x1954,0x1952,0x1931,0x2111,0x2110,0x2131,0x2131,0x1912,0x1113,0x11B6,0x1A18,0x1A18,0x19D6,0x08F2,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x212F,0x212F,0x2110,0x2930,0x210F,0x212F,0x290F,0x290F,0x212F,0x2930,0x2110,0x2910,0x2930,0x210F,0x2930,0x290F,0x210F,0x290F,0x210F,0x2910,0x2930,0x2930,0x2910,0x2910,0x210F,0x290F,0x2910,0x2910,0x210F,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x1931,0x1932,0x1132,0x1113,0x1995,0x2A18,0x2218,0x1996,0x08F2,0x1932,0x2152,0x2131,0x2130,0x210F,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x2130,0x2130,0x1910,0x2131,0x1931,0x1932,0x1912,0x1133,0x1154,0x19B6,0x2217,0x2238,0x19F6,0x1174,0x0933,0x1132,0x1932,0x1951,0x1930,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2151,0x2151,0x2131,0x1911,0x1911,0x1112,0x1132,0x1994,0x21D6,0x19D6,0x21F7,0x19D6,0x19B5,0x1153,0x1132,0x1912,0x2131,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2930,0x212F,0x2130,0x2110,0x290F,0x210F,0x2110,0x2110,0x210F,0x2910,0x210F,0x2110,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x210F,0x212F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x2130,0x2110,0x2131,0x1932,0x1933,0x1975,0x21F7,0x19D7,0x19D6,0x1134,0x1113,0x1933,0x1953,0x1932,0x1932,0x1931,0x1111,0x1153,0x1994,0x19B6,0x19F6,0x19D6,0x19B6,0x1154,0x1112,0x1912,0x1931,0x2151,0x2151,0x2131,0x2130,0x190F,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2930,0x2930,0x210F,0x2930,0x212F,0x212F,0x2930,0x210F,0x210F,0x2930,0x2930,0x210F,0x290F,0x210F,0x2110,0x210F,0x2930,0x212F,0x212F,0x2930,0x2130,0x2130,0x210F,0x2130,0x2930,0x2930,0x2110,0x210F,0x2130,0x2930,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x2910,0x210F,0x210F,0x2930,0x2110,0x2110,0x2930,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1911,0x1932,0x1133,0x1174,0x1195,0x21F7,0x21F7,0x21D7,0x19B6,0x1153,0x1112,0x1912,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x292F,0x290F,0x210F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x292F,0x290F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x292F,0x210F,0x212F,0x210F,0x292F,0x210F,0x212F,0x292F,0x292F,0x292F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1911,0x1911,0x1133,0x21F7,0x1A18,0x19B7,0x1995,0x1953,0x1931,0x1910,0x2110,0x2110,0x2110,0x2131,0x1932,0x1932,0x1133,0x19B6,0x2217,0x19F7,0x1995,0x1112,0x1111,0x1931,0x1930,0x2130,0x2130,0x2130,0x1930,0x1932,0x1153,0x11B6,0x1A18,0x1A18,0x19B7,0x1133,0x1111,0x1911,0x1910,0x1910,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F, + 0x0954,0x1175,0x11D6,0x19F7,0x19F7,0x19D6,0x1175,0x1133,0x1113,0x1112,0x1932,0x1931,0x2131,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x212F,0x292F,0x210F,0x212F,0x210F,0x292F,0x292F,0x212F,0x212F,0x2110,0x210F,0x212F,0x212F,0x290F,0x290F,0x212F,0x2930,0x2930,0x2110,0x210F,0x290F,0x290F,0x2930,0x290F,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x292F,0x290F,0x210F,0x290F,0x2910,0x2110,0x2110,0x2110,0x1911,0x1912,0x1133,0x1A18,0x09D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01D9,0x01D9,0x01FA,0x01D9,0x01D9,0x09D9,0x0997,0x0996,0x0975,0x0954,0x1154,0x1154,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1112,0x1133,0x1133,0x1133,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1113,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x0912,0x1133,0x1133,0x1133,0x1133,0x1133,0x0933,0x0933,0x0933,0x0933,0x1133,0x1154,0x1954,0x1154,0x0913,0x0933,0x0933,0x1175,0x19B6,0x19F7,0x19F7,0x19D6,0x1175,0x1174,0x1133,0x1132,0x1932,0x2151,0x2151,0x2131,0x2130,0x2131,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x1911,0x1931,0x1911,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1112,0x1132,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1932,0x1132,0x1132,0x1132,0x1132,0x1932,0x1931,0x1911,0x1911,0x1931,0x2131,0x2110,0x2130,0x2110,0x2930,0x2930,0x2930,0x2110,0x212F,0x212F,0x210F,0x212F,0x210F,0x290F,0x2910,0x2910,0x2110,0x210F,0x2910,0x290F,0x290F,0x2910,0x210F,0x2910,0x2110,0x2910,0x2910,0x2910,0x2110,0x2130,0x2110,0x2130,0x212F,0x212F,0x212F,0x2130,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x2910,0x290F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1911,0x1112,0x1134,0x11D6,0x1A18,0x19F7,0x1195,0x1133,0x1932,0x2131,0x2110,0x2130,0x2130,0x2110,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x2130,0x2110,0x2131,0x1932,0x1133,0x19D6,0x2217,0x19D6,0x19B5,0x1153,0x1112,0x1931,0x2131,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x292F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2111,0x1911,0x1911,0x1911,0x1912,0x1912,0x1932,0x1932,0x1932,0x1932,0x1912,0x1911,0x1911,0x1911,0x18F1,0x1911,0x1911,0x2111,0x2131,0x2151,0x2130,0x210F,0x2930,0x292F,0x290F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x2130,0x212F,0x292F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x290F,0x2930,0x2130,0x2151,0x2151,0x2131,0x1911,0x1112,0x1133,0x1995,0x21D6,0x21F7,0x21F7,0x19B5,0x1154,0x1112,0x1112,0x1911,0x2131,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1952,0x1932,0x1132,0x1153,0x19D6,0x2217,0x2218,0x1996,0x1154,0x1954,0x1953,0x2152,0x2131,0x2130,0x2130,0x2130,0x2131,0x1932,0x1113,0x11B6,0x11F7,0x1A18,0x19D6,0x08F2,0x1932,0x2131,0x2110,0x2110,0x2130,0x2130,0x2110,0x2930,0x212F,0x2930,0x210F,0x212F,0x212F,0x2930,0x290F,0x212F,0x2930,0x2910,0x2910,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x2910,0x2930,0x2930,0x210F,0x210F,0x2910,0x290F,0x290F,0x2910,0x2930,0x210F,0x212F,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2110,0x2110,0x210F,0x2110,0x2130,0x1931,0x1932,0x1932,0x1113,0x1995,0x29F7,0x21F7,0x21B6,0x08F2,0x1932,0x1952,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x1911,0x1912,0x1133,0x1174,0x19B6,0x2237,0x2237,0x19D6,0x1194,0x1153,0x1132,0x1952,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2151,0x1931,0x1911,0x1112,0x1132,0x1974,0x19B5,0x21D6,0x21F7,0x21D6,0x19B5,0x1153,0x1933,0x1932,0x1911,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x212F,0x210F,0x290F,0x292F,0x292F,0x210F,0x212F,0x212F,0x292F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x2110,0x2110,0x2131,0x1932,0x1932,0x1954,0x21F7,0x21F7,0x19D7,0x1155,0x0913,0x1113,0x1953,0x1932,0x1932,0x1952,0x1132,0x1132,0x1153,0x1995,0x19D6,0x2217,0x21F7,0x21D6,0x1133,0x1112,0x1912,0x2152,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x212F,0x2130,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2130,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2110,0x2110,0x2930,0x2110,0x2130,0x210F,0x290F,0x210F,0x212F,0x212F,0x2110,0x2130,0x2130,0x1911,0x1932,0x1133,0x1174,0x19B6,0x21F7,0x2218,0x21F7,0x19B5,0x1153,0x1112,0x1911,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x292F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2110,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x2130,0x2930,0x2130,0x2130,0x2150,0x2131,0x2131,0x1911,0x1912,0x1112,0x19D6,0x19F7,0x19B6,0x1995,0x1973,0x1931,0x1910,0x2110,0x2110,0x2110,0x1910,0x1911,0x1132,0x0933,0x19B6,0x2217,0x19F7,0x1995,0x1112,0x1911,0x1931,0x1930,0x2130,0x2130,0x1930,0x1931,0x1132,0x1133,0x11B6,0x11F8,0x19F8,0x19D7,0x1113,0x1111,0x1910,0x1910,0x190F,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F, + 0x0933,0x0933,0x1175,0x19B6,0x1A17,0x19F7,0x19D7,0x1175,0x1134,0x1112,0x1112,0x1931,0x1931,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x210F,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2910,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x2930,0x290F,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x292F,0x212F,0x210F,0x212F,0x292F,0x212F,0x292F,0x212F,0x292F,0x290F,0x290F,0x210F,0x2110,0x2130,0x2110,0x2111,0x1912,0x1154,0x2239,0x09D9,0x01D9,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01F9,0x09F9,0x09D9,0x09B8,0x0997,0x09B7,0x1197,0x11B7,0x1196,0x1196,0x1196,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1196,0x1195,0x1195,0x1195,0x1196,0x1196,0x1996,0x1196,0x1196,0x1196,0x1196,0x1196,0x1196,0x1196,0x1196,0x1196,0x11B6,0x1196,0x11B6,0x1196,0x1195,0x11B6,0x11B5,0x1195,0x1195,0x1195,0x11B5,0x11B5,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11D6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B7,0x1196,0x0954,0x1154,0x1154,0x1134,0x1133,0x0913,0x1154,0x1175,0x19B6,0x19D7,0x19F7,0x19D6,0x1995,0x1174,0x1153,0x1132,0x1911,0x1911,0x2111,0x2110,0x2110,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x212F,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x210F,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2111,0x2131,0x1932,0x1132,0x1153,0x1153,0x1174,0x1154,0x1154,0x1154,0x1154,0x0954,0x1174,0x1174,0x1174,0x1154,0x1154,0x1154,0x1174,0x1174,0x1174,0x1154,0x1174,0x1175,0x1154,0x1154,0x1154,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1194,0x1174,0x1174,0x1153,0x1153,0x1932,0x1932,0x1932,0x1931,0x2131,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2910,0x2110,0x2110,0x2910,0x2930,0x210F,0x2910,0x2930,0x2910,0x2910,0x290F,0x2910,0x2930,0x2110,0x2110,0x2130,0x210F,0x210F,0x212F,0x212F,0x2130,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x210F,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x212F,0x2930,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2150,0x2131,0x2131,0x1931,0x1112,0x1154,0x11D7,0x19F8,0x11D7,0x1195,0x1132,0x1932,0x2131,0x2131,0x2110,0x2930,0x2110,0x210F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x2130,0x2131,0x1932,0x1133,0x19D6,0x2217,0x19D6,0x19B5,0x1973,0x1111,0x1911,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2930,0x210F,0x290F,0x290F,0x2930,0x2930,0x210F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2110,0x2111,0x1911,0x1911,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x18F0,0x2111,0x2110,0x2111,0x2131,0x2130,0x2130,0x2930,0x2130,0x2930,0x212F,0x210F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x292F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2151,0x2131,0x1912,0x1112,0x1153,0x1995,0x21F7,0x21F7,0x21F7,0x19B6,0x1154,0x1112,0x1111,0x1931,0x1911,0x2131,0x2130,0x2110,0x2110,0x2130,0x210F,0x2130,0x2130,0x212F,0x210F,0x2130,0x210F,0x210F,0x2130,0x2151,0x2131,0x1911,0x1911,0x1132,0x1974,0x1995,0x2217,0x2A38,0x19D6,0x1134,0x1133,0x1953,0x1952,0x2152,0x2130,0x2130,0x2110,0x2130,0x2131,0x1912,0x1133,0x11D6,0x11F7,0x1A38,0x19F7,0x0912,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x212F,0x212F,0x210F,0x210F,0x2930,0x212F,0x2930,0x290F,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x292F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2110,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2131,0x1932,0x1932,0x1113,0x1995,0x29F7,0x21F7,0x1995,0x08F2,0x1912,0x1952,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2131,0x2131,0x2131,0x1932,0x1912,0x1132,0x1174,0x19D6,0x2217,0x2217,0x19F6,0x1174,0x1153,0x1132,0x1952,0x1931,0x2131,0x2131,0x1930,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2151,0x2131,0x1931,0x1911,0x1112,0x1133,0x1154,0x19B5,0x21F7,0x21F7,0x21F7,0x19B5,0x1174,0x1132,0x1912,0x1911,0x2131,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x2930,0x2910,0x2910,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x212F,0x212F,0x210F,0x292F,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x1911,0x1932,0x1974,0x21F7,0x21F7,0x21F7,0x1996,0x0913,0x08F2,0x1112,0x1932,0x1932,0x1973,0x1952,0x1132,0x1152,0x1153,0x1195,0x1A17,0x2238,0x21F7,0x1995,0x1133,0x1112,0x1912,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x2110,0x210F,0x2110,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2930,0x210F,0x2110,0x2110,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x210F,0x210F,0x2110,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1931,0x2131,0x2130,0x2110,0x1910,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x292F,0x2930,0x2130,0x2130,0x2130,0x1931,0x1932,0x1133,0x1154,0x19D6,0x2217,0x2217,0x21F6,0x1995,0x1153,0x1132,0x1911,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x2930,0x2930,0x290F,0x290F,0x2930,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x210F,0x290F,0x210F,0x212F,0x212F,0x292F,0x212F,0x292F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x10F1,0x1133,0x19D6,0x19F7,0x19D7,0x19B5,0x1953,0x1911,0x2130,0x2110,0x2110,0x2131,0x2111,0x1932,0x1112,0x1133,0x19D6,0x2217,0x21F7,0x1195,0x1132,0x1932,0x1931,0x1910,0x2130,0x2130,0x1930,0x1931,0x1132,0x1153,0x11D6,0x1A18,0x1A19,0x11B6,0x1112,0x1111,0x1931,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130, + 0x1112,0x1132,0x0933,0x1175,0x11B6,0x19F7,0x2218,0x19D7,0x1995,0x1133,0x1133,0x1932,0x1932,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x292F,0x292F,0x292F,0x212F,0x2930,0x2930,0x2110,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2110,0x2910,0x2110,0x2910,0x2930,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x2930,0x212F,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x210F,0x2910,0x210F,0x290F,0x290F,0x2910,0x2910,0x2110,0x212F,0x210F,0x212F,0x210F,0x212F,0x292F,0x292F,0x212F,0x212F,0x2930,0x290F,0x2930,0x2910,0x2110,0x2110,0x2110,0x2111,0x1912,0x1133,0x1A39,0x09D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01D9,0x01FA,0x09FA,0x09F9,0x09D9,0x11F9,0x11F9,0x19F9,0x19F9,0x19F9,0x1A19,0x1A18,0x19F8,0x19F8,0x2218,0x19F7,0x2218,0x2218,0x2218,0x2218,0x2218,0x1A18,0x2218,0x21F8,0x2218,0x21F8,0x2218,0x2218,0x2218,0x2239,0x1A18,0x2238,0x2238,0x1A18,0x2238,0x1A18,0x2239,0x2238,0x1A18,0x1A18,0x1A38,0x2238,0x1A18,0x2238,0x2238,0x1A18,0x1A38,0x1A18,0x1A38,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x11F8,0x11F8,0x11F8,0x1A39,0x1A18,0x1196,0x0955,0x0954,0x1154,0x1133,0x1133,0x0933,0x0934,0x1175,0x19B6,0x19F7,0x19F7,0x19D6,0x19B5,0x1154,0x1153,0x1932,0x1911,0x1911,0x2111,0x2111,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x1910,0x1910,0x2130,0x1930,0x1930,0x1930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x1930,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2131,0x2130,0x2131,0x2130,0x2131,0x2131,0x1911,0x1932,0x1953,0x1174,0x1195,0x1195,0x11B5,0x11B6,0x11B6,0x1196,0x11B6,0x11B6,0x11B6,0x11B6,0x11B7,0x11B7,0x11B7,0x11B7,0x11B7,0x11B7,0x11D7,0x11D7,0x11B7,0x11B7,0x11D7,0x11B7,0x11B6,0x11B6,0x11B6,0x11B6,0x11B7,0x11D7,0x11B7,0x11B7,0x11B6,0x11B6,0x11B6,0x11B6,0x11D6,0x11B6,0x11B6,0x1195,0x1195,0x1174,0x1153,0x1153,0x1932,0x1932,0x1931,0x2131,0x2110,0x2110,0x2130,0x2130,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x210F,0x2110,0x2110,0x2910,0x210F,0x2910,0x2930,0x2910,0x2910,0x2910,0x290F,0x210F,0x2910,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x210F,0x290F,0x212F,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2150,0x2151,0x2131,0x1911,0x1112,0x0933,0x11D7,0x19F8,0x11F7,0x1195,0x1133,0x1932,0x2131,0x2131,0x2130,0x2110,0x210F,0x2130,0x210F,0x210F,0x292F,0x290F,0x210F,0x210F,0x2110,0x2131,0x1932,0x1133,0x19D6,0x21F7,0x19D6,0x19B5,0x1153,0x1111,0x1911,0x2131,0x2130,0x2930,0x2110,0x2110,0x2910,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x2130,0x210F,0x210F,0x2130,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x2930,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x210F,0x2130,0x2130,0x210F,0x212F,0x212F,0x290F,0x290F,0x292F,0x292F,0x2930,0x212F,0x2930,0x2130,0x2930,0x2130,0x2130,0x2130,0x2110,0x2131,0x1910,0x1910,0x2110,0x1910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x292F,0x212F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2151,0x2131,0x1911,0x1112,0x1133,0x1995,0x21F7,0x21F7,0x2217,0x19D6,0x1154,0x1132,0x1111,0x1931,0x1911,0x1910,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x1931,0x1111,0x1132,0x1153,0x1995,0x2A17,0x2A38,0x21F7,0x1995,0x1134,0x1133,0x1932,0x1931,0x2151,0x2130,0x2130,0x2110,0x2130,0x2131,0x1932,0x1112,0x11B6,0x11F7,0x1A18,0x19F7,0x08F2,0x1932,0x2132,0x2131,0x2110,0x2130,0x2110,0x2930,0x212F,0x212F,0x290F,0x290F,0x212F,0x2930,0x2930,0x210F,0x210F,0x2930,0x2910,0x2910,0x210F,0x210F,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x292F,0x210F,0x290F,0x290F,0x2930,0x290F,0x2110,0x210F,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x2930,0x210F,0x2930,0x2130,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x1931,0x1932,0x1112,0x1112,0x1995,0x21F7,0x21D7,0x21B6,0x10F2,0x1912,0x2152,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x1931,0x1112,0x1133,0x1174,0x19D6,0x2217,0x2217,0x21F6,0x1174,0x1153,0x1952,0x1931,0x1931,0x1931,0x2151,0x1930,0x2130,0x2130,0x212F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1132,0x1133,0x1174,0x19B6,0x21F7,0x2217,0x19D6,0x19B6,0x1154,0x1133,0x1912,0x1911,0x2131,0x2131,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x292F,0x210F,0x212F,0x212F,0x292F,0x212F,0x210F,0x292F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x1911,0x1912,0x1953,0x21D6,0x21F7,0x21F7,0x19B6,0x1175,0x1133,0x0912,0x1933,0x1932,0x1952,0x1952,0x1131,0x1132,0x1153,0x1174,0x11D6,0x2238,0x21F7,0x21D6,0x1995,0x1133,0x1132,0x1912,0x1931,0x2131,0x2151,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x2110,0x210F,0x210F,0x210F,0x290F,0x2930,0x2110,0x2110,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x290F,0x290F,0x292F,0x212F,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1931,0x1932,0x1932,0x1931,0x1932,0x1911,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2130,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930,0x210F,0x2130,0x2131,0x2151,0x2152,0x1132,0x1153,0x1174,0x19D6,0x21F7,0x21F7,0x21F6,0x19B5,0x1153,0x1132,0x1912,0x1911,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x210F,0x212F,0x212F,0x210F,0x292F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x292F,0x212F,0x210F,0x212F,0x292F,0x212F,0x212F,0x292F,0x210F,0x292F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1932,0x1133,0x19D6,0x19F7,0x19D7,0x19B5,0x1952,0x1931,0x2110,0x2110,0x2110,0x2110,0x2131,0x1911,0x1132,0x0933,0x19D6,0x2217,0x19F7,0x1995,0x1132,0x1911,0x1931,0x1930,0x2130,0x212F,0x2130,0x1931,0x1932,0x1133,0x11B6,0x1A18,0x1A18,0x19B7,0x1133,0x1911,0x1911,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F, + 0x1111,0x1111,0x0912,0x0933,0x0954,0x19B6,0x19F7,0x21F8,0x19D7,0x1195,0x1154,0x1113,0x1932,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x292F,0x212F,0x210F,0x292F,0x210F,0x292F,0x2930,0x2930,0x2930,0x292F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x212F,0x2930,0x210F,0x2130,0x212F,0x2930,0x2930,0x212F,0x212F,0x2930,0x2110,0x2930,0x290F,0x2110,0x2930,0x2930,0x290F,0x2910,0x2910,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x290F,0x210F,0x2910,0x2910,0x2930,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x210F,0x292F,0x212F,0x212F,0x2930,0x210F,0x290F,0x2910,0x2110,0x2110,0x2110,0x1911,0x1912,0x1154,0x2239,0x11F9,0x09DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FB,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x09FA,0x09FA,0x09D9,0x11F9,0x1A19,0x1A19,0x1A19,0x1A19,0x19F8,0x19F8,0x19D7,0x19F8,0x19D7,0x19B7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x21D8,0x19B7,0x21F8,0x19D8,0x19D7,0x19D7,0x19D7,0x19D7,0x19F7,0x19F7,0x19F7,0x19D7,0x19F7,0x19F7,0x19F7,0x19F7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x19F8,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x11D7,0x11D7,0x11D7,0x19F7,0x19F8,0x11D7,0x11D7,0x19F8,0x19F8,0x11B6,0x1195,0x0954,0x0933,0x1133,0x0913,0x1133,0x1154,0x1175,0x11B6,0x19F7,0x19F7,0x19D6,0x19B5,0x1174,0x1153,0x1132,0x1932,0x1911,0x1911,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x2131,0x2131,0x2131,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x1931,0x2151,0x2151,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x1911,0x1911,0x1911,0x1911,0x1931,0x1932,0x1953,0x1174,0x11B5,0x11D6,0x11D7,0x11D7,0x09D7,0x09D7,0x09D8,0x09D8,0x09D8,0x09F8,0x09F8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x11F8,0x11F8,0x11F8,0x09F8,0x1218,0x11F8,0x11F8,0x11D7,0x11D7,0x11B6,0x1195,0x1174,0x1174,0x1153,0x1932,0x1911,0x1911,0x2110,0x2110,0x2130,0x2930,0x2930,0x290F,0x2930,0x212F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2910,0x2110,0x2930,0x2910,0x2110,0x2110,0x210F,0x290F,0x2910,0x2910,0x2110,0x210F,0x2910,0x290F,0x292F,0x210F,0x292F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2110,0x210F,0x290F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2110,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x212F,0x2130,0x2131,0x2131,0x1931,0x1112,0x1133,0x19F7,0x1A18,0x1A18,0x1195,0x1133,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2110,0x2110,0x1931,0x1932,0x1133,0x21F6,0x2217,0x19D6,0x19B5,0x1153,0x1111,0x1911,0x2131,0x2110,0x2110,0x2110,0x210F,0x2930,0x292F,0x290F,0x210F,0x290F,0x210F,0x2150,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2930,0x290F,0x2930,0x2930,0x292F,0x292F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x292F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2150,0x2151,0x2131,0x1910,0x1111,0x1112,0x1134,0x1996,0x21D7,0x21F7,0x21F7,0x19B6,0x1154,0x1132,0x1111,0x1931,0x1930,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2110,0x2130,0x2130,0x2110,0x1911,0x1931,0x1932,0x1132,0x1153,0x1974,0x2A17,0x21F7,0x19B6,0x19B6,0x1974,0x1133,0x1932,0x1911,0x1911,0x2151,0x2130,0x2110,0x2110,0x2130,0x2131,0x1931,0x1133,0x11B6,0x11F8,0x1A19,0x19D7,0x08F2,0x1932,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x290F,0x210F,0x2930,0x2110,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1911,0x1931,0x1932,0x1112,0x21B5,0x29F7,0x21D7,0x1995,0x1112,0x1112,0x1931,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2151,0x2151,0x1931,0x1111,0x1133,0x1174,0x19D6,0x19F6,0x2217,0x21F6,0x1174,0x1153,0x1953,0x1932,0x1931,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2151,0x1931,0x1111,0x1132,0x1133,0x1174,0x19D6,0x21F7,0x2217,0x21F7,0x19B5,0x1153,0x1132,0x1911,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2930,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x2110,0x210F,0x2910,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x292F,0x290F,0x2930,0x2930,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x2130,0x2111,0x1911,0x1932,0x1974,0x21F6,0x21F7,0x19D6,0x19B6,0x1175,0x08F2,0x1112,0x1132,0x1973,0x1952,0x1111,0x1132,0x1132,0x1153,0x1194,0x19D6,0x19F7,0x21F7,0x21F7,0x1995,0x1133,0x1112,0x1912,0x2132,0x2131,0x2131,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2110,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x292F,0x212F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x290F,0x210F,0x2130,0x210F,0x2130,0x212F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x210F,0x210F,0x290F,0x2930,0x20EF,0x290F,0x290F,0x290F,0x2930,0x2930,0x2130,0x2130,0x2130,0x1930,0x1910,0x1911,0x1931,0x1932,0x1953,0x1953,0x1153,0x1132,0x1932,0x1932,0x1931,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x210F,0x290F,0x290F,0x2930,0x2130,0x2130,0x2151,0x2152,0x2152,0x1132,0x1133,0x1154,0x19B5,0x21F6,0x2217,0x19D6,0x19B5,0x1153,0x1132,0x1932,0x1911,0x2111,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2930,0x292F,0x290F,0x210F,0x290F,0x292F,0x210F,0x210F,0x290F,0x292F,0x212F,0x292F,0x210F,0x290F,0x290F,0x2930,0x2930,0x212F,0x210F,0x290F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x292F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1930,0x1931,0x1932,0x1132,0x1154,0x19D6,0x19D7,0x21F7,0x19B5,0x1932,0x1911,0x1910,0x2110,0x2110,0x2130,0x2131,0x1912,0x1133,0x1154,0x19D6,0x19F7,0x19F6,0x1994,0x1132,0x1931,0x1910,0x2110,0x2130,0x2130,0x2130,0x1931,0x1932,0x1154,0x11D7,0x1A18,0x1A18,0x19B7,0x1133,0x1911,0x2111,0x2110,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F, + 0x1931,0x1911,0x1111,0x1112,0x0912,0x0954,0x1196,0x19D7,0x2218,0x21F7,0x1996,0x1134,0x1133,0x1932,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x210F,0x2130,0x2930,0x212F,0x212F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2110,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x210F,0x2110,0x2130,0x2930,0x210F,0x2110,0x2910,0x2910,0x2110,0x2110,0x290F,0x210F,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x290F,0x210F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x2910,0x2930,0x290F,0x290F,0x290F,0x2910,0x2110,0x2130,0x2110,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x290F,0x2910,0x2930,0x2110,0x2110,0x1911,0x1911,0x1134,0x2219,0x09D9,0x09D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x09FA,0x09D9,0x0997,0x1197,0x1197,0x11B7,0x1197,0x1996,0x1996,0x1196,0x1195,0x1195,0x1175,0x19B5,0x1195,0x1195,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1996,0x1996,0x1976,0x1976,0x1996,0x1996,0x1996,0x1996,0x1195,0x1195,0x1195,0x1995,0x1195,0x1195,0x1195,0x1195,0x1195,0x19B5,0x1995,0x19B6,0x1195,0x1995,0x1196,0x1196,0x11B6,0x11B6,0x1196,0x1195,0x11B6,0x11B6,0x1196,0x11B6,0x11B6,0x11B6,0x11B6,0x19F7,0x1A18,0x1A18,0x11B6,0x1175,0x0954,0x1154,0x1133,0x1133,0x1133,0x1154,0x1175,0x11B6,0x19F7,0x19F7,0x19D6,0x1195,0x1154,0x1153,0x1133,0x1112,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1932,0x1932,0x1952,0x1931,0x1932,0x1931,0x1932,0x1932,0x1932,0x2132,0x1932,0x2132,0x2132,0x1932,0x1952,0x1952,0x1931,0x1931,0x1932,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1952,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x18F1,0x1911,0x1911,0x1911,0x1911,0x1911,0x1112,0x1112,0x1133,0x0954,0x0996,0x09B7,0x09D8,0x09F8,0x09D8,0x09D8,0x09F8,0x09F9,0x09F9,0x01D9,0x01D9,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01D9,0x01D9,0x09D9,0x09D9,0x01D8,0x09D9,0x01D8,0x09D9,0x01D8,0x09D9,0x09D9,0x09D9,0x09D9,0x01D9,0x09F9,0x09F9,0x09D9,0x09F9,0x09F8,0x09F9,0x09F8,0x11F8,0x11D8,0x11D7,0x11B6,0x1195,0x1174,0x1953,0x1932,0x1931,0x1911,0x2130,0x2110,0x2130,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x290F,0x2910,0x2910,0x2110,0x2930,0x2910,0x2910,0x290F,0x292F,0x290F,0x292F,0x210F,0x210F,0x2910,0x210F,0x2930,0x2910,0x2930,0x2930,0x210F,0x212F,0x290F,0x2930,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1112,0x1133,0x19D6,0x1A18,0x1A18,0x1195,0x1132,0x1931,0x1931,0x2130,0x2130,0x2130,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x2130,0x2131,0x1931,0x1132,0x1133,0x19D6,0x2217,0x19D6,0x19B5,0x1153,0x1112,0x1931,0x2131,0x2110,0x2110,0x2110,0x2930,0x292F,0x292F,0x292F,0x292F,0x290F,0x2110,0x2150,0x2130,0x2130,0x2110,0x210F,0x2130,0x210F,0x290F,0x210F,0x210F,0x2130,0x2130,0x210F,0x2930,0x2930,0x2930,0x290F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x212F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x20EF,0x210F,0x210F,0x290F,0x2110,0x2910,0x2130,0x2110,0x2110,0x210F,0x2930,0x2930,0x2910,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x212F,0x210F,0x292F,0x292F,0x292F,0x292F,0x212F,0x210F,0x2930,0x290F,0x292F,0x290F,0x290F,0x292F,0x2930,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2151,0x2131,0x1931,0x1111,0x1112,0x1134,0x1995,0x21F7,0x2218,0x21F7,0x19B6,0x1154,0x1112,0x1111,0x1911,0x1930,0x1930,0x2130,0x2130,0x2130,0x210F,0x212F,0x2930,0x210F,0x212F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2131,0x2131,0x1932,0x1932,0x1112,0x1153,0x1174,0x2A17,0x2A17,0x21D7,0x1975,0x1133,0x1133,0x1953,0x1932,0x1911,0x1910,0x2130,0x2130,0x2110,0x2130,0x2130,0x2151,0x1931,0x1133,0x11B6,0x11F8,0x1A18,0x19D7,0x08F2,0x1912,0x2131,0x2110,0x2110,0x2930,0x2110,0x2110,0x212F,0x212F,0x290F,0x210F,0x212F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x290F,0x2910,0x2910,0x290F,0x2930,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x212F,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x2110,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1112,0x1995,0x21F7,0x21F7,0x1995,0x1112,0x1112,0x1931,0x2131,0x2131,0x2110,0x2110,0x2130,0x210F,0x2930,0x210F,0x2130,0x210F,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2130,0x2151,0x1931,0x1931,0x1132,0x1133,0x1995,0x19B6,0x21F7,0x2237,0x19D6,0x1174,0x1154,0x1133,0x1932,0x1931,0x2131,0x2111,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x212F,0x2130,0x2130,0x2950,0x2130,0x2130,0x1931,0x1131,0x1132,0x1133,0x1154,0x19D6,0x2217,0x19F7,0x19F6,0x19B5,0x1133,0x1932,0x1932,0x2131,0x2131,0x2130,0x2110,0x2130,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x2110,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x290F,0x2910,0x290F,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2110,0x1911,0x1912,0x1953,0x1995,0x21D7,0x19D7,0x19D7,0x19B5,0x1154,0x1113,0x1112,0x1932,0x1952,0x1952,0x1932,0x1952,0x1153,0x1133,0x1154,0x19D6,0x21F7,0x21F7,0x21D7,0x1975,0x1133,0x1112,0x1912,0x2132,0x2131,0x2111,0x2110,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2130,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x2110,0x2110,0x2110,0x2930,0x210F,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x2110,0x2130,0x2110,0x1910,0x1931,0x1911,0x1111,0x1132,0x1153,0x1974,0x19B5,0x19D6,0x19D6,0x1995,0x1154,0x1133,0x1132,0x1932,0x1911,0x1911,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2130,0x2130,0x2131,0x2152,0x1932,0x1112,0x1133,0x1174,0x21F6,0x21F7,0x2237,0x19D6,0x1194,0x1154,0x1953,0x1932,0x1931,0x1911,0x2131,0x2931,0x2951,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x212F,0x210F,0x2930,0x2930,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x2930,0x212F,0x210F,0x212F,0x2130,0x2131,0x1931,0x1931,0x1132,0x1153,0x1175,0x19D6,0x19D7,0x21F7,0x19B5,0x1932,0x1911,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1133,0x1154,0x19D6,0x21F7,0x19D6,0x1994,0x1932,0x1931,0x2130,0x2110,0x2130,0x2130,0x2130,0x1931,0x1932,0x1154,0x11D7,0x1A18,0x1A18,0x19D7,0x1133,0x1911,0x2111,0x2110,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F, + 0x2131,0x1931,0x1951,0x1131,0x1111,0x1132,0x0954,0x19B6,0x2217,0x2218,0x21F7,0x19B6,0x0913,0x1133,0x1912,0x1932,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x290F,0x290F,0x290F,0x2110,0x2930,0x2130,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x2930,0x2110,0x210F,0x2930,0x290F,0x2110,0x210F,0x2930,0x2930,0x2110,0x210F,0x210F,0x2110,0x2910,0x210F,0x2910,0x2910,0x2110,0x2910,0x290F,0x210F,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2110,0x2110,0x290F,0x290F,0x290F,0x2930,0x212F,0x212F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x210F,0x290F,0x290F,0x2910,0x2910,0x2130,0x2130,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2930,0x2110,0x2110,0x2111,0x1912,0x1133,0x2219,0x11F9,0x09D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x09D9,0x0997,0x0976,0x0934,0x1154,0x1154,0x1954,0x1954,0x1933,0x1953,0x1953,0x1153,0x1973,0x1953,0x1973,0x1973,0x1973,0x1153,0x1953,0x1953,0x1953,0x1933,0x1933,0x1133,0x1933,0x1953,0x1933,0x1133,0x1953,0x1153,0x1153,0x1153,0x1953,0x1953,0x1953,0x1153,0x1153,0x1133,0x1153,0x1153,0x1153,0x1133,0x1153,0x1153,0x1153,0x1153,0x1153,0x1973,0x1153,0x1153,0x1153,0x1153,0x1974,0x1974,0x1174,0x1174,0x1174,0x1195,0x2258,0x1A38,0x11B6,0x1196,0x1175,0x1154,0x1174,0x1133,0x0933,0x1133,0x1154,0x1175,0x11B5,0x19F7,0x19F7,0x19D6,0x1175,0x1155,0x1154,0x1133,0x1113,0x1112,0x1112,0x1111,0x1111,0x1111,0x10F1,0x1112,0x1112,0x1112,0x1133,0x1132,0x1112,0x1112,0x1932,0x1932,0x1112,0x1932,0x1912,0x1912,0x1912,0x1912,0x1112,0x1112,0x1112,0x1112,0x1112,0x1932,0x1132,0x1112,0x1112,0x1112,0x1932,0x1132,0x1932,0x1132,0x1932,0x1932,0x1111,0x1932,0x1932,0x1912,0x1932,0x1932,0x1112,0x1912,0x1112,0x1112,0x1132,0x1132,0x1112,0x1112,0x1112,0x1112,0x1111,0x1112,0x1912,0x1112,0x10F2,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1113,0x1133,0x1154,0x0975,0x0996,0x09D8,0x09D8,0x09F9,0x09F9,0x01D9,0x01F9,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x01F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x09F9,0x09D8,0x09D8,0x09D7,0x11B6,0x1195,0x1154,0x1153,0x1932,0x1931,0x1911,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x210F,0x2930,0x2130,0x2130,0x2130,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2910,0x2930,0x290F,0x210F,0x210F,0x210F,0x290F,0x2910,0x290F,0x210F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x290F,0x212F,0x210F,0x2110,0x2910,0x2110,0x2910,0x210F,0x210F,0x290F,0x210F,0x290F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x1911,0x1111,0x1133,0x19B6,0x1A18,0x19F8,0x11B6,0x1133,0x1931,0x1931,0x2110,0x2130,0x2130,0x210F,0x210F,0x292F,0x210F,0x292F,0x212F,0x2130,0x2130,0x1931,0x1952,0x1133,0x1133,0x19F6,0x2217,0x19D6,0x19B5,0x1153,0x1112,0x1911,0x2131,0x2930,0x2930,0x2930,0x210F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x2930,0x212F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x2910,0x2930,0x2130,0x2130,0x210F,0x210F,0x2130,0x2930,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x2150,0x2131,0x1951,0x1932,0x1112,0x1154,0x1175,0x19D7,0x21F8,0x21F7,0x21D6,0x1154,0x1112,0x1111,0x1911,0x1930,0x1930,0x2130,0x2110,0x2110,0x2130,0x212F,0x210F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2111,0x2131,0x2132,0x1932,0x1113,0x1154,0x1175,0x21D7,0x2A38,0x21F7,0x1174,0x1133,0x0912,0x1132,0x2172,0x2131,0x1910,0x2110,0x2130,0x2130,0x20EF,0x210F,0x2110,0x2130,0x1911,0x1132,0x11B6,0x19F8,0x1A18,0x19D7,0x10F2,0x1912,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x2910,0x2910,0x212F,0x212F,0x2930,0x2930,0x210F,0x210F,0x2110,0x2110,0x2910,0x2910,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2110,0x210F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x1931,0x1931,0x1932,0x1112,0x21B5,0x21F7,0x21F7,0x19B6,0x1113,0x1932,0x1931,0x2131,0x2130,0x2110,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x2130,0x2110,0x2930,0x2930,0x2110,0x210F,0x210F,0x2130,0x2130,0x2151,0x2151,0x1931,0x1132,0x1133,0x1174,0x19B6,0x2217,0x2217,0x1195,0x1175,0x1154,0x1933,0x1932,0x1911,0x1911,0x2131,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x1951,0x1931,0x1111,0x1132,0x1174,0x19D5,0x19D6,0x2217,0x19D6,0x1995,0x1133,0x1112,0x2132,0x2131,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2930,0x210F,0x290F,0x210F,0x2910,0x2930,0x2930,0x2110,0x2110,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1954,0x1995,0x19B6,0x21D7,0x19D6,0x19B5,0x1133,0x1112,0x1112,0x1932,0x1952,0x1952,0x1952,0x1152,0x1112,0x0932,0x1174,0x19B6,0x2218,0x2218,0x19B6,0x1195,0x1133,0x1112,0x1932,0x1911,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x2930,0x210F,0x2930,0x290F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x290F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2110,0x210F,0x2910,0x210F,0x2110,0x2930,0x210F,0x2110,0x2110,0x210F,0x210F,0x212F,0x210F,0x2930,0x2130,0x2130,0x2110,0x2110,0x2910,0x2110,0x2930,0x2930,0x210F,0x290F,0x290F,0x2910,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x2130,0x2110,0x2130,0x2131,0x1931,0x1931,0x1952,0x1153,0x1174,0x19B5,0x19D6,0x19F7,0x1A18,0x1A18,0x1A18,0x1A18,0x11B6,0x1154,0x1133,0x1932,0x1931,0x1911,0x2130,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x2130,0x2130,0x212F,0x2130,0x210F,0x2110,0x2130,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2110,0x2110,0x2151,0x2152,0x1911,0x1112,0x1153,0x1174,0x21F7,0x2217,0x19D6,0x19D6,0x1174,0x1153,0x1953,0x1912,0x1911,0x2111,0x2111,0x2131,0x2110,0x2110,0x2130,0x2130,0x2950,0x2110,0x2110,0x2130,0x212F,0x210F,0x292F,0x212F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x2930,0x210F,0x210F,0x2130,0x2130,0x1910,0x1911,0x1932,0x1153,0x1174,0x19D6,0x19D7,0x19D7,0x19D6,0x1994,0x1932,0x1931,0x2131,0x2131,0x2130,0x2131,0x1931,0x1112,0x1133,0x1174,0x19D6,0x19F7,0x19D6,0x1974,0x1932,0x1931,0x2110,0x2110,0x2130,0x2110,0x2130,0x2131,0x1932,0x1134,0x11B7,0x1A18,0x1A19,0x19B7,0x1133,0x1932,0x2131,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F, + 0x2130,0x2151,0x1931,0x1931,0x1111,0x1111,0x0932,0x1154,0x19B6,0x2217,0x2218,0x19D7,0x19B6,0x1134,0x1113,0x1932,0x2132,0x2131,0x2131,0x2110,0x2130,0x2150,0x2130,0x212F,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x212F,0x212F,0x2930,0x212F,0x2930,0x210F,0x2130,0x2110,0x2110,0x2110,0x290F,0x2930,0x210F,0x2130,0x2130,0x212F,0x212F,0x2930,0x2910,0x210F,0x2910,0x2910,0x210F,0x2910,0x2910,0x210F,0x2910,0x2910,0x210F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2110,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2111,0x18F2,0x1133,0x2219,0x11D9,0x09D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x021B,0x01FA,0x01DA,0x01D9,0x01F9,0x09D8,0x0997,0x0955,0x1133,0x1113,0x1912,0x1912,0x1912,0x1912,0x1911,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1911,0x1912,0x1912,0x1912,0x1912,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1931,0x1932,0x1931,0x1931,0x1931,0x1931,0x1932,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x0932,0x0933,0x0995,0x1A38,0x19F7,0x11B6,0x1195,0x1195,0x1154,0x1133,0x1133,0x0913,0x1133,0x1134,0x1175,0x19B6,0x19F7,0x19F7,0x11B6,0x1196,0x0955,0x1155,0x1134,0x1133,0x1113,0x1133,0x1112,0x1112,0x1112,0x1113,0x0913,0x1133,0x0913,0x1133,0x1133,0x1133,0x1132,0x1133,0x1133,0x1133,0x1133,0x1113,0x1113,0x1113,0x1112,0x1112,0x1112,0x1113,0x1113,0x1133,0x1132,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1133,0x1132,0x1132,0x1133,0x1133,0x1133,0x1133,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1113,0x1133,0x1133,0x1133,0x1153,0x1153,0x1153,0x1154,0x1154,0x1175,0x1175,0x0996,0x09B7,0x09B8,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01D9,0x01DA,0x01DA,0x01DA,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01DA,0x01FA,0x01FA,0x01D9,0x01D9,0x01FA,0x01DA,0x01FA,0x01D9,0x01F9,0x01F9,0x01D9,0x01F9,0x09F9,0x09D8,0x09D7,0x11B7,0x1195,0x1174,0x1153,0x1132,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x210F,0x210F,0x2130,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x290F,0x290F,0x290F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2131,0x1911,0x1111,0x1133,0x11B6,0x1A18,0x19F7,0x19B6,0x1133,0x1931,0x2131,0x2110,0x2110,0x2130,0x212F,0x210F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1952,0x1133,0x0933,0x19D6,0x2217,0x19D6,0x19B5,0x1153,0x1112,0x1911,0x2131,0x2930,0x2110,0x210F,0x210F,0x290F,0x292F,0x292F,0x290F,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2930,0x2110,0x2130,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x210F,0x2110,0x2110,0x2910,0x210F,0x2910,0x2910,0x2910,0x2930,0x2930,0x212F,0x212F,0x2930,0x210F,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x2130,0x210F,0x212F,0x2930,0x2110,0x2910,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2151,0x1111,0x1132,0x1154,0x1995,0x21F7,0x2218,0x21F8,0x19B6,0x1154,0x1112,0x1912,0x1911,0x2131,0x1910,0x2130,0x212F,0x2130,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2131,0x2132,0x1912,0x1113,0x1134,0x1996,0x21D7,0x2218,0x21F7,0x1175,0x1154,0x1133,0x1132,0x1111,0x1931,0x1910,0x2110,0x2110,0x2930,0x2130,0x2110,0x2110,0x2130,0x2130,0x1931,0x1132,0x11B6,0x19F8,0x1A19,0x19D7,0x10F2,0x1911,0x2111,0x2130,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x2910,0x2930,0x210F,0x2930,0x2910,0x2910,0x2910,0x2110,0x210F,0x2110,0x2910,0x2910,0x2930,0x210F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x212F,0x292F,0x210F,0x212F,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x2110,0x2130,0x2130,0x1931,0x1931,0x1932,0x1112,0x21B5,0x2A17,0x21F7,0x19B6,0x1113,0x1932,0x2132,0x2131,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x2930,0x2110,0x2130,0x2130,0x210F,0x212F,0x292F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1931,0x1132,0x1133,0x1174,0x19B6,0x21F7,0x2218,0x19B6,0x1975,0x1954,0x1112,0x1912,0x2131,0x2131,0x2110,0x2110,0x2130,0x2930,0x210F,0x212F,0x212F,0x210F,0x2930,0x2950,0x210F,0x2130,0x2151,0x1931,0x1111,0x1111,0x1132,0x1194,0x11B5,0x19D6,0x2217,0x19D6,0x1995,0x1133,0x1932,0x2111,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2930,0x2930,0x2110,0x210F,0x290F,0x2910,0x2910,0x2910,0x2930,0x2930,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2110,0x2130,0x1931,0x1932,0x1153,0x1975,0x1175,0x19D7,0x21D7,0x19B6,0x1995,0x1153,0x1132,0x1932,0x1932,0x1952,0x1952,0x1131,0x1131,0x1132,0x0933,0x1195,0x11B6,0x19F7,0x1A17,0x19D6,0x1995,0x1133,0x1132,0x1912,0x2131,0x2111,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2930,0x290F,0x290F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2110,0x210F,0x2910,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x292F,0x210F,0x210F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1953,0x1994,0x1195,0x1A17,0x1A17,0x2238,0x1A38,0x11F8,0x1A39,0x1A59,0x1A39,0x1A18,0x19D7,0x1155,0x1133,0x1932,0x1931,0x2131,0x2151,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2930,0x2110,0x2930,0x2930,0x2110,0x2930,0x2130,0x2130,0x210F,0x2130,0x2110,0x2130,0x2130,0x1931,0x1932,0x1112,0x1153,0x1174,0x19B6,0x21F7,0x19F7,0x19D6,0x1995,0x1154,0x1133,0x1112,0x1912,0x2111,0x2111,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2930,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x210F,0x2130,0x2130,0x2151,0x1911,0x1911,0x1153,0x1154,0x1995,0x19D7,0x21F7,0x21F7,0x1995,0x1974,0x1932,0x1931,0x2131,0x2131,0x2131,0x2131,0x1932,0x1112,0x1133,0x1195,0x19D6,0x21F7,0x21D6,0x1974,0x1952,0x2131,0x2130,0x2110,0x2110,0x2130,0x2131,0x1931,0x1933,0x1134,0x19B7,0x1A18,0x1A18,0x19D7,0x1133,0x1912,0x2111,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F, + 0x210F,0x210F,0x2130,0x2131,0x1931,0x1131,0x1132,0x1133,0x1995,0x19B6,0x21F7,0x2218,0x19F7,0x1995,0x1134,0x1113,0x1932,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x2910,0x2110,0x2110,0x210F,0x2930,0x2930,0x2110,0x2930,0x212F,0x2930,0x212F,0x212F,0x2930,0x212F,0x2930,0x290F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x2910,0x210F,0x2910,0x2910,0x2930,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2110,0x2110,0x2110,0x18F1,0x10F1,0x1134,0x2219,0x09D9,0x01B9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01FA,0x021A,0x021A,0x01FA,0x01FA,0x01F9,0x01F9,0x09B8,0x0976,0x1154,0x1113,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1910,0x1910,0x1910,0x1910,0x1910,0x1930,0x1910,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x2131,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1911,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1911,0x1911,0x1931,0x1911,0x1931,0x1932,0x1932,0x1932,0x1931,0x1932,0x1132,0x1112,0x0933,0x0954,0x19F7,0x2238,0x2238,0x11B6,0x1175,0x1174,0x1133,0x1133,0x0913,0x0933,0x1154,0x1195,0x19D7,0x19F8,0x1A18,0x19F7,0x11D7,0x19D7,0x19B6,0x19B5,0x19B6,0x19B5,0x21D6,0x21D6,0x19B6,0x19B6,0x19B5,0x19B6,0x19B6,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x21B5,0x21B5,0x21B5,0x21B5,0x21B5,0x21B5,0x21B5,0x2195,0x2195,0x2195,0x2195,0x1995,0x21B5,0x21B5,0x21B5,0x2195,0x19B5,0x19B5,0x21B5,0x19B5,0x21B5,0x21B5,0x21B4,0x1994,0x1994,0x1994,0x19B5,0x19B5,0x19B5,0x1995,0x19B5,0x1995,0x19B5,0x19B5,0x21B5,0x19B5,0x21B5,0x19B5,0x1995,0x21B5,0x21B5,0x2195,0x21B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B6,0x1996,0x19B6,0x19B6,0x11B6,0x09B7,0x09B8,0x09F9,0x01D9,0x01D9,0x01FA,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01F9,0x01D9,0x09F9,0x09D8,0x09B7,0x0996,0x0954,0x1153,0x1932,0x1931,0x2131,0x2131,0x2131,0x2110,0x2110,0x2130,0x2110,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2110,0x210F,0x2130,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x2930,0x212F,0x2930,0x2910,0x210F,0x2110,0x2910,0x210F,0x290F,0x290F,0x2930,0x2910,0x2930,0x2130,0x2110,0x2130,0x2130,0x1931,0x1932,0x1133,0x11B6,0x1A18,0x19F7,0x1195,0x1132,0x1931,0x1931,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x2110,0x1910,0x1932,0x1132,0x1113,0x0933,0x19D6,0x21F7,0x19D6,0x19B5,0x1174,0x1132,0x1932,0x2131,0x2130,0x2930,0x290F,0x292F,0x210F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x292F,0x292F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x290F,0x2910,0x210F,0x210F,0x2110,0x2930,0x210F,0x2930,0x2910,0x2910,0x2910,0x2110,0x210F,0x212F,0x210F,0x212F,0x210F,0x2930,0x2930,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2110,0x210F,0x2930,0x2110,0x2930,0x290F,0x2110,0x2930,0x2930,0x2130,0x212F,0x2130,0x2130,0x2151,0x1910,0x10F1,0x1132,0x1153,0x19B6,0x19F7,0x2218,0x21F7,0x19B6,0x1154,0x1112,0x1112,0x1911,0x1910,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2951,0x2131,0x1911,0x1912,0x1133,0x1133,0x1175,0x21D7,0x2A38,0x21F7,0x1975,0x1134,0x1133,0x1132,0x1952,0x2152,0x1910,0x1910,0x2130,0x2130,0x2930,0x2110,0x2130,0x2110,0x2110,0x2131,0x1932,0x1133,0x11B6,0x1A18,0x1A19,0x19D7,0x08F2,0x1911,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x212F,0x2930,0x290F,0x290F,0x2930,0x210F,0x2910,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x292F,0x212F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1911,0x1912,0x1132,0x21B5,0x21F7,0x21F7,0x1995,0x1113,0x1112,0x2132,0x2131,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1953,0x1153,0x1154,0x19B6,0x2218,0x2218,0x1996,0x1975,0x1954,0x1912,0x18F1,0x1911,0x1911,0x2110,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x2930,0x2950,0x18EF,0x190F,0x2151,0x2171,0x1911,0x1931,0x1132,0x1132,0x1153,0x1995,0x2217,0x2217,0x19D6,0x1174,0x1112,0x1932,0x2131,0x2111,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2930,0x210F,0x292F,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2910,0x290F,0x2930,0x2910,0x290F,0x290F,0x290F,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x1134,0x1996,0x21D7,0x21D7,0x19B6,0x1975,0x1974,0x1132,0x10F1,0x1932,0x1952,0x1951,0x1931,0x1152,0x1132,0x0933,0x1174,0x19B6,0x1A17,0x2218,0x21F7,0x1995,0x1133,0x1112,0x18F1,0x2131,0x2111,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x210F,0x2930,0x210F,0x290F,0x2930,0x2930,0x290F,0x2930,0x210F,0x2110,0x2110,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1930,0x1931,0x1132,0x1153,0x1174,0x11D6,0x1A17,0x2238,0x1A18,0x11D7,0x09B7,0x0996,0x09B7,0x11F8,0x1A39,0x1A18,0x11B6,0x1154,0x1112,0x1931,0x1931,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x2130,0x2130,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x2152,0x1932,0x1112,0x1133,0x1174,0x19D6,0x2217,0x21F7,0x19D6,0x1175,0x1154,0x1112,0x1912,0x1911,0x2131,0x2111,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x290F,0x210F,0x210F,0x2930,0x290F,0x212F,0x212F,0x290F,0x210F,0x212F,0x210F,0x212F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2950,0x2130,0x210F,0x2110,0x2151,0x2151,0x1931,0x1132,0x1153,0x1175,0x19D7,0x19F7,0x21F7,0x19D6,0x1974,0x1133,0x1131,0x1931,0x2151,0x2151,0x2131,0x1932,0x1112,0x1113,0x0913,0x0934,0x19D7,0x21F7,0x21D6,0x1973,0x1952,0x1931,0x2130,0x2110,0x2110,0x2110,0x2131,0x1932,0x1133,0x1154,0x11B6,0x19F8,0x2218,0x19B6,0x1133,0x1912,0x2131,0x2110,0x2110,0x212F,0x210F,0x210F,0x212F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F, + 0x210F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1111,0x1132,0x1153,0x1174,0x19D6,0x2217,0x2217,0x21F7,0x1996,0x1133,0x1133,0x1952,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2110,0x2930,0x210F,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x212F,0x2130,0x210F,0x212F,0x2130,0x212F,0x210F,0x210F,0x290F,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x18F1,0x18F2,0x1133,0x19F8,0x11F9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x021A,0x01FA,0x01FA,0x01F9,0x01F9,0x09D8,0x0996,0x1154,0x1112,0x1912,0x1911,0x2111,0x2111,0x2111,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x1930,0x1930,0x1930,0x2131,0x2131,0x1910,0x2131,0x2131,0x2131,0x2131,0x2111,0x2111,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1930,0x2131,0x2131,0x1910,0x1931,0x1931,0x2131,0x1931,0x1911,0x2131,0x1931,0x1931,0x1931,0x1931,0x1132,0x1132,0x0912,0x0974,0x2238,0x2217,0x19F7,0x11B6,0x1175,0x1154,0x1133,0x0933,0x0933,0x0933,0x1154,0x1196,0x19F7,0x1A18,0x1A18,0x2238,0x2218,0x2217,0x2217,0x21F7,0x2A17,0x2A38,0x2A38,0x2A38,0x2A38,0x2A38,0x2237,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A17,0x2A37,0x2A17,0x2A38,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A17,0x2A16,0x2A17,0x29F6,0x2A16,0x2A16,0x2A16,0x2A17,0x2A17,0x21F7,0x2A37,0x2217,0x2217,0x2217,0x2217,0x2217,0x2A17,0x2217,0x2A17,0x2A17,0x2A17,0x21F7,0x29F7,0x21F7,0x2A17,0x21F6,0x21F7,0x21F7,0x21F7,0x19D6,0x21F7,0x19D7,0x19D7,0x11B7,0x09D8,0x09D8,0x01D9,0x01F9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01D9,0x01FA,0x01D9,0x01D9,0x09D8,0x09D8,0x09D7,0x11B6,0x1174,0x1133,0x1932,0x1931,0x2131,0x2131,0x2130,0x2110,0x2130,0x2110,0x2110,0x210F,0x2130,0x2110,0x2130,0x212F,0x210F,0x2130,0x212F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x2930,0x2910,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x2930,0x2930,0x2930,0x210F,0x2130,0x2110,0x2130,0x2131,0x1932,0x1133,0x19D6,0x19F7,0x19F7,0x1996,0x1132,0x1911,0x1931,0x2130,0x2130,0x2130,0x212F,0x292F,0x292F,0x212F,0x212F,0x210F,0x2130,0x1910,0x1911,0x1132,0x1133,0x0933,0x19D6,0x19F7,0x19D6,0x19D5,0x1174,0x1112,0x1931,0x2131,0x2130,0x210F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x290F,0x290F,0x2930,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2930,0x2930,0x2930,0x2110,0x2110,0x2910,0x2910,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x212F,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2930,0x290F,0x2930,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x1911,0x1111,0x1112,0x1133,0x19B6,0x21F7,0x2217,0x2218,0x19B6,0x1154,0x1112,0x1112,0x1911,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1911,0x1912,0x1133,0x1133,0x1995,0x21F7,0x21F8,0x21F7,0x19B6,0x1154,0x1133,0x1112,0x1111,0x2152,0x2151,0x1930,0x190F,0x2130,0x2130,0x2930,0x2130,0x2130,0x2110,0x2130,0x2131,0x1932,0x1113,0x19D6,0x11F8,0x1A18,0x19D7,0x08F2,0x1931,0x2131,0x2110,0x2110,0x2930,0x2930,0x2930,0x210F,0x210F,0x2910,0x2910,0x2910,0x2930,0x210F,0x2910,0x2110,0x210F,0x2930,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2110,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x290F,0x292F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2110,0x1931,0x1931,0x1932,0x1112,0x19B5,0x2A17,0x21F7,0x19B6,0x08F2,0x1912,0x2132,0x2131,0x2131,0x2130,0x210F,0x210F,0x2930,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x1133,0x1154,0x19B6,0x2A38,0x21F8,0x1996,0x1995,0x1133,0x1912,0x1912,0x2131,0x2131,0x2131,0x2130,0x2110,0x210F,0x2130,0x210F,0x2930,0x2950,0x20EF,0x18EF,0x2151,0x2151,0x1931,0x1931,0x1131,0x1131,0x1132,0x1154,0x19D6,0x2217,0x2217,0x19B5,0x1133,0x1932,0x1911,0x2131,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x2910,0x290F,0x290F,0x290F,0x210F,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910,0x2930,0x2930,0x2930,0x212F,0x212F,0x292F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2151,0x1932,0x1932,0x1133,0x1974,0x19B6,0x21D6,0x21D6,0x21B6,0x1995,0x1954,0x1112,0x10F1,0x1932,0x1952,0x1952,0x1952,0x1152,0x0912,0x1154,0x1154,0x11D6,0x2238,0x2217,0x19D6,0x1995,0x1133,0x1112,0x1911,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2110,0x2130,0x2130,0x1931,0x1931,0x1132,0x1153,0x11B6,0x19F7,0x11F8,0x11B7,0x0996,0x0976,0x0976,0x0996,0x0976,0x0976,0x0997,0x11F8,0x19D8,0x1996,0x1133,0x1912,0x1911,0x1910,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x210F,0x212F,0x2130,0x2930,0x2930,0x2930,0x2130,0x210F,0x2130,0x2930,0x2930,0x2130,0x2930,0x212F,0x212F,0x2130,0x2130,0x2131,0x2952,0x2131,0x1911,0x1112,0x1133,0x1174,0x21F7,0x21F7,0x21F7,0x19D6,0x1175,0x1154,0x1112,0x1932,0x1932,0x2111,0x2111,0x2111,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x292F,0x292F,0x290F,0x210F,0x212F,0x292F,0x210F,0x212F,0x210F,0x290F,0x292F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x1931,0x1112,0x1153,0x1174,0x19B6,0x19F7,0x2218,0x21F7,0x1995,0x1153,0x1932,0x1931,0x1931,0x1931,0x2151,0x1931,0x1912,0x1133,0x1133,0x1154,0x1196,0x21D7,0x21D6,0x21B5,0x1973,0x1952,0x2131,0x2110,0x2110,0x2130,0x2131,0x2132,0x1932,0x1113,0x1154,0x11B6,0x2218,0x2218,0x19B6,0x1133,0x1911,0x2111,0x2110,0x2130,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110, + 0x210F,0x2110,0x2110,0x2150,0x2130,0x1930,0x1910,0x1111,0x1111,0x1153,0x1174,0x19B6,0x19F7,0x2218,0x21F7,0x1995,0x0933,0x1133,0x1953,0x1932,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2950,0x2130,0x2130,0x2930,0x2930,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x210F,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2910,0x2910,0x210F,0x2910,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x290F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2930,0x2110,0x2110,0x1911,0x1912,0x1974,0x1A18,0x09B8,0x09FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01FA,0x021A,0x01DA,0x01DA,0x01D9,0x01D9,0x1219,0x1A18,0x0934,0x1133,0x1912,0x2132,0x2111,0x2111,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x1930,0x1931,0x2131,0x2131,0x2131,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2130,0x2131,0x2131,0x2131,0x2131,0x2110,0x2131,0x2110,0x2131,0x2151,0x2131,0x2131,0x2131,0x2131,0x1910,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1132,0x0912,0x0933,0x0954,0x1195,0x19D6,0x19D7,0x19D6,0x19B6,0x1154,0x1154,0x0933,0x0933,0x0933,0x1154,0x1174,0x19B5,0x19D6,0x19D6,0x19D6,0x21F7,0x21F6,0x21F6,0x21F7,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21F6,0x21F6,0x21F6,0x21D6,0x21F6,0x21F6,0x21F6,0x21D6,0x21F6,0x21F7,0x21D6,0x21F6,0x21F6,0x21D6,0x21D6,0x21F7,0x21D6,0x21D6,0x21D6,0x21D6,0x21F6,0x21D6,0x21D6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21D6,0x21D6,0x21D6,0x21D6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F7,0x19D6,0x19D6,0x21D6,0x21D6,0x19D6,0x21F7,0x21D6,0x21D6,0x21D6,0x21D6,0x21D7,0x21D6,0x21F7,0x21F6,0x19D6,0x21F7,0x21F7,0x19D7,0x19D7,0x11D8,0x11D8,0x09D9,0x09F9,0x01D9,0x01B9,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FB,0x01FB,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01F9,0x01F9,0x01D9,0x09D9,0x09D8,0x11F8,0x11B6,0x1175,0x1133,0x1111,0x1931,0x1910,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x210F,0x212F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x2930,0x2910,0x2910,0x210F,0x2930,0x210F,0x290F,0x290F,0x2910,0x210F,0x210F,0x2930,0x2110,0x2130,0x2130,0x1911,0x1932,0x1133,0x19F6,0x1A18,0x19F7,0x1196,0x1153,0x1931,0x2131,0x2110,0x2130,0x2950,0x2130,0x292F,0x292F,0x212F,0x210F,0x212F,0x2130,0x2130,0x1931,0x1132,0x1153,0x1154,0x19F6,0x19F7,0x19D6,0x19D5,0x1174,0x1111,0x1911,0x2130,0x2930,0x2930,0x292F,0x290F,0x290F,0x292F,0x2930,0x2930,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2151,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x2930,0x2930,0x212F,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x290F,0x2910,0x2910,0x20EF,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x290F,0x2930,0x290F,0x2930,0x290F,0x290F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2130,0x2130,0x2130,0x2151,0x1952,0x1112,0x1112,0x1133,0x19B5,0x2217,0x2217,0x21F7,0x1995,0x1154,0x1132,0x1112,0x1931,0x2131,0x2130,0x2130,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x212F,0x2130,0x2130,0x2130,0x2131,0x2132,0x1932,0x1112,0x1133,0x1995,0x2A38,0x21F7,0x19B7,0x1996,0x1154,0x1113,0x1132,0x1932,0x1911,0x2151,0x2151,0x2150,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x2110,0x2150,0x2151,0x1932,0x1133,0x19D6,0x1A18,0x1A19,0x19B7,0x1112,0x1931,0x2131,0x2130,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2910,0x2930,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x2930,0x210F,0x2910,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x2930,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2930,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x2130,0x2110,0x2130,0x1910,0x1931,0x1932,0x1112,0x21B5,0x29F7,0x21F7,0x19B5,0x08F2,0x10F2,0x1932,0x2131,0x2131,0x2130,0x2110,0x20EF,0x2930,0x2930,0x2130,0x2110,0x2130,0x2130,0x2110,0x210F,0x2130,0x212F,0x210F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2131,0x2131,0x2152,0x1932,0x1132,0x1133,0x1154,0x19B6,0x21F7,0x21F7,0x21D7,0x1995,0x1153,0x1112,0x1932,0x1931,0x2131,0x2131,0x2110,0x2110,0x2130,0x2930,0x2930,0x2930,0x2130,0x2110,0x2150,0x2151,0x2151,0x2130,0x2151,0x1931,0x1132,0x1132,0x0954,0x19D6,0x2217,0x21F7,0x19B5,0x1132,0x1931,0x1931,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2930,0x210F,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x292F,0x212F,0x2130,0x2151,0x1931,0x1931,0x1932,0x1932,0x1953,0x1995,0x19B5,0x21D6,0x21D6,0x21D6,0x1995,0x1974,0x1112,0x1111,0x1931,0x1952,0x1952,0x1973,0x1153,0x0912,0x0933,0x0954,0x19D6,0x2238,0x2217,0x19D6,0x1995,0x1953,0x1112,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x210F,0x210F,0x210F,0x2930,0x2910,0x210F,0x2110,0x2110,0x2910,0x2930,0x2910,0x290F,0x290F,0x290F,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2110,0x2910,0x210F,0x210F,0x290F,0x2930,0x2930,0x210F,0x210F,0x2930,0x210F,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2110,0x1910,0x1931,0x1132,0x19D6,0x2239,0x19F8,0x11B7,0x0976,0x0975,0x0975,0x0975,0x0955,0x0975,0x0976,0x0976,0x0976,0x11B7,0x2A59,0x1175,0x1112,0x1931,0x2111,0x2110,0x212F,0x210F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x2930,0x2930,0x2130,0x2930,0x2130,0x2930,0x2110,0x2130,0x2930,0x2930,0x212F,0x210F,0x2110,0x2130,0x2131,0x2131,0x2131,0x1912,0x1912,0x1133,0x1154,0x21D6,0x21F7,0x21F7,0x19D6,0x1995,0x1154,0x1112,0x1912,0x2132,0x2131,0x2111,0x2110,0x2130,0x2130,0x2130,0x2150,0x2130,0x212F,0x210F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1911,0x1111,0x1133,0x1174,0x19D6,0x2218,0x2218,0x21F7,0x1195,0x1153,0x1133,0x1932,0x1931,0x1931,0x1931,0x1951,0x1932,0x1112,0x1133,0x1975,0x19D7,0x2218,0x19D7,0x19B6,0x1974,0x1953,0x2152,0x2131,0x2110,0x2110,0x2131,0x2152,0x1932,0x1112,0x0913,0x1175,0x21F8,0x2239,0x21F8,0x1995,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130, + 0x2130,0x210F,0x2130,0x2130,0x2130,0x1910,0x1910,0x1910,0x1111,0x1132,0x1153,0x1174,0x19B6,0x19D7,0x2218,0x21F7,0x19B6,0x0934,0x1133,0x1932,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2930,0x2110,0x2110,0x2110,0x2910,0x210F,0x2910,0x2910,0x2110,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x2910,0x210F,0x290F,0x2910,0x2930,0x2930,0x290F,0x2930,0x2930,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x1911,0x1112,0x1154,0x19F8,0x09D9,0x09FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x021A,0x01FA,0x01FA,0x01DA,0x01FA,0x01F9,0x1219,0x11D8,0x0954,0x1133,0x1912,0x1932,0x2132,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x2131,0x2131,0x1931,0x2131,0x1931,0x2131,0x1931,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1952,0x1932,0x1952,0x1953,0x1133,0x0912,0x1133,0x1174,0x1175,0x19D7,0x19F7,0x19F7,0x19B6,0x1174,0x1154,0x0933,0x0913,0x1153,0x1133,0x1174,0x1174,0x1174,0x1995,0x1974,0x1995,0x1974,0x1974,0x1995,0x1975,0x1975,0x1995,0x1995,0x1995,0x1994,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1994,0x19B5,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x19B5,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1195,0x19B5,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1975,0x1995,0x1995,0x1995,0x1995,0x1995,0x1196,0x1196,0x1197,0x09B8,0x09D8,0x01D9,0x01D9,0x01D9,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FB,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x09F9,0x09F9,0x09F8,0x11D7,0x0996,0x1154,0x1132,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x210F,0x2910,0x210F,0x2930,0x210F,0x2110,0x2910,0x210F,0x2110,0x2910,0x2110,0x2110,0x210F,0x210F,0x290F,0x292F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x2930,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x1911,0x1932,0x1133,0x19D6,0x1A38,0x19D7,0x19B6,0x1153,0x1931,0x2131,0x2130,0x2130,0x2950,0x212F,0x210F,0x212F,0x292F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1932,0x1133,0x1154,0x19F6,0x19F7,0x19F6,0x19D5,0x1174,0x1132,0x1931,0x2130,0x2130,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2110,0x2130,0x2110,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x210F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x2110,0x2930,0x210F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x290F,0x20EF,0x2930,0x2930,0x210F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1111,0x1112,0x1133,0x1995,0x21F7,0x2217,0x21F7,0x19B6,0x1154,0x1132,0x1112,0x1911,0x1931,0x1930,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2110,0x2131,0x2131,0x1912,0x1112,0x1133,0x1154,0x2A38,0x21F8,0x21D7,0x19B6,0x1154,0x1133,0x1932,0x1911,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2151,0x1932,0x1133,0x19D6,0x1A18,0x19F8,0x19D7,0x08F2,0x1931,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x212F,0x290F,0x290F,0x2930,0x2930,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x2110,0x2110,0x2110,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x20EF,0x210F,0x2930,0x2930,0x18EF,0x1910,0x1910,0x1931,0x1932,0x1112,0x21B5,0x21F6,0x2217,0x21B6,0x08F2,0x10F2,0x1932,0x2131,0x2131,0x2130,0x20EF,0x210F,0x2930,0x2930,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2131,0x2131,0x2131,0x1931,0x1932,0x1132,0x1133,0x1154,0x19B6,0x2217,0x2217,0x21F7,0x1995,0x1133,0x1112,0x1912,0x2132,0x2111,0x2130,0x2110,0x2930,0x2930,0x2130,0x210F,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1911,0x1132,0x0933,0x1195,0x2217,0x2237,0x21D6,0x1133,0x1112,0x1931,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2110,0x2910,0x2910,0x210F,0x290F,0x2930,0x210F,0x290F,0x2930,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x212F,0x2150,0x2150,0x2130,0x2131,0x1931,0x1912,0x1933,0x1933,0x1995,0x19B5,0x21D6,0x19B6,0x21D6,0x21B6,0x1974,0x1132,0x1132,0x1132,0x1952,0x1973,0x1952,0x1132,0x0912,0x0953,0x1174,0x19D6,0x2217,0x2217,0x21F7,0x1975,0x1953,0x1112,0x1911,0x2111,0x2131,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x2930,0x212F,0x2930,0x210F,0x212F,0x290F,0x2930,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x290F,0x2910,0x2930,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x1910,0x1931,0x1153,0x19F7,0x1A18,0x1A19,0x09B7,0x0955,0x0955,0x0934,0x0975,0x0955,0x0955,0x0975,0x0975,0x0976,0x11B7,0x2259,0x1996,0x10F2,0x1911,0x2111,0x2110,0x212F,0x212F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2130,0x2110,0x2110,0x2930,0x2930,0x2930,0x2130,0x2930,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2131,0x2111,0x1912,0x1912,0x1133,0x1954,0x19B6,0x21F7,0x21F7,0x21D6,0x1995,0x1154,0x1112,0x1912,0x1932,0x1911,0x2111,0x2131,0x2130,0x2130,0x2950,0x2130,0x212F,0x210F,0x210F,0x290F,0x292F,0x292F,0x212F,0x2130,0x212F,0x210F,0x212F,0x210F,0x292F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1931,0x1111,0x1112,0x1954,0x1995,0x21F7,0x2218,0x2218,0x19B6,0x1154,0x1133,0x1132,0x1131,0x1931,0x1931,0x1951,0x1932,0x1132,0x1133,0x1175,0x19B6,0x19F7,0x19F7,0x19D7,0x19B5,0x1953,0x1932,0x1931,0x1911,0x2130,0x2131,0x2151,0x2152,0x1112,0x1112,0x1154,0x19D7,0x2238,0x2218,0x19D7,0x1154,0x1111,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x290F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2130,0x2110, + 0x2130,0x2130,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2151,0x1931,0x1932,0x1133,0x1174,0x19D6,0x21F7,0x2218,0x19F7,0x19B6,0x1154,0x1133,0x1932,0x1932,0x2151,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x2110,0x2110,0x2930,0x2910,0x2930,0x2910,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2930,0x2930,0x290F,0x290F,0x290F,0x2910,0x2930,0x2910,0x290F,0x210F,0x2910,0x2930,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x1911,0x1912,0x1134,0x1A18,0x09F9,0x09DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x021A,0x021A,0x01FA,0x01FA,0x01F9,0x09D8,0x0976,0x0955,0x0913,0x1113,0x1112,0x1912,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1910,0x1911,0x1931,0x1931,0x1111,0x1932,0x1932,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1111,0x1112,0x1932,0x1953,0x1153,0x1133,0x0933,0x1174,0x1175,0x1195,0x11B6,0x11B6,0x19B6,0x1175,0x1174,0x1154,0x1153,0x1133,0x1133,0x1153,0x1153,0x1133,0x1133,0x1133,0x1933,0x1112,0x1933,0x1933,0x1933,0x1933,0x1953,0x1133,0x1153,0x1153,0x1153,0x1153,0x1133,0x1133,0x1153,0x1133,0x1153,0x1133,0x1933,0x1153,0x1153,0x1953,0x1953,0x1153,0x1153,0x1953,0x1953,0x1133,0x1153,0x1153,0x1153,0x1153,0x1953,0x1933,0x1933,0x1953,0x1153,0x1953,0x1953,0x1953,0x1953,0x1133,0x1133,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1954,0x1134,0x1954,0x1133,0x1133,0x1133,0x1133,0x1133,0x1154,0x0934,0x0955,0x0176,0x01B8,0x09F9,0x01D9,0x01D9,0x01D9,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x09F9,0x09F9,0x09D8,0x09B6,0x0975,0x1153,0x1932,0x2152,0x2131,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2930,0x2110,0x212F,0x212F,0x290F,0x210F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x2930,0x290F,0x2910,0x2910,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x1931,0x1932,0x1133,0x19D6,0x1A17,0x19F7,0x1196,0x1133,0x1911,0x1911,0x2130,0x2130,0x2150,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x2130,0x2130,0x1931,0x1931,0x1132,0x1154,0x19D6,0x19D6,0x19D6,0x19B5,0x1153,0x1112,0x1911,0x2130,0x2130,0x292F,0x292F,0x290F,0x292F,0x2930,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2111,0x1911,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x2110,0x2110,0x2910,0x210F,0x2910,0x2910,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2151,0x2151,0x1911,0x1111,0x1112,0x1154,0x19B5,0x2217,0x21F7,0x19B6,0x19B6,0x1154,0x1132,0x1111,0x1911,0x1910,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x210F,0x2130,0x2110,0x2130,0x2130,0x212F,0x2110,0x2110,0x2130,0x2130,0x2111,0x1912,0x1132,0x1133,0x1995,0x21F7,0x21F7,0x19B7,0x19B6,0x1154,0x1133,0x1932,0x1932,0x1931,0x1931,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2151,0x1932,0x0912,0x19D7,0x1A18,0x19F8,0x19B6,0x08F2,0x1911,0x2131,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x2930,0x2110,0x2110,0x2910,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x2930,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1112,0x21D5,0x2A17,0x2217,0x19B5,0x08F2,0x1912,0x1932,0x2151,0x2130,0x2930,0x2110,0x210F,0x2930,0x2110,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x2131,0x1931,0x1932,0x1933,0x1933,0x1154,0x19B6,0x21F7,0x2218,0x21F7,0x1175,0x0933,0x1133,0x1112,0x1931,0x2131,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1912,0x1133,0x1995,0x21F7,0x2217,0x21F7,0x1133,0x1112,0x1932,0x2151,0x2131,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2110,0x2110,0x2910,0x2910,0x210F,0x2110,0x2930,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1911,0x1911,0x1912,0x1912,0x1954,0x1974,0x1995,0x1996,0x21D6,0x21D6,0x21D6,0x1974,0x1112,0x1132,0x1111,0x1952,0x1952,0x1952,0x1153,0x1133,0x1153,0x1174,0x19B6,0x19B6,0x21F7,0x21D7,0x1975,0x1133,0x1112,0x1911,0x1911,0x2110,0x2110,0x2130,0x2130,0x2130,0x2930,0x2130,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x210F,0x290F,0x290F,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x2930,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x1910,0x1931,0x1153,0x19D6,0x1A18,0x1A18,0x11D7,0x0976,0x0955,0x0934,0x0954,0x0954,0x0955,0x0955,0x11B6,0x11B7,0x19F8,0x2218,0x1155,0x08F2,0x1911,0x2131,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2930,0x2110,0x210F,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x2131,0x1911,0x1912,0x1933,0x1954,0x1995,0x21F7,0x21F7,0x21D6,0x1995,0x1134,0x1133,0x1112,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2950,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x1931,0x1931,0x1132,0x1132,0x1974,0x1995,0x19D6,0x19D7,0x21D7,0x1995,0x1154,0x1153,0x1132,0x1932,0x1931,0x1931,0x1951,0x1931,0x1132,0x1133,0x1995,0x1996,0x19D7,0x21F8,0x19D7,0x19B6,0x1974,0x1932,0x1932,0x1911,0x1911,0x2131,0x2152,0x1931,0x1912,0x1112,0x1154,0x19B6,0x2218,0x2218,0x19D7,0x19B5,0x1153,0x1111,0x1931,0x2151,0x2130,0x2130,0x210F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110, + 0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2151,0x2131,0x1931,0x1931,0x1132,0x1133,0x1174,0x19B6,0x1A17,0x1A17,0x19F7,0x19B6,0x0934,0x1133,0x1932,0x2152,0x2131,0x2130,0x2110,0x2110,0x2930,0x2110,0x2930,0x210F,0x2110,0x210F,0x2930,0x2110,0x2910,0x210F,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x2930,0x212F,0x212F,0x210F,0x2930,0x2930,0x212F,0x292F,0x290F,0x2910,0x2910,0x2910,0x2930,0x210F,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x212F,0x212F,0x212F,0x210F,0x292F,0x210F,0x292F,0x292F,0x210F,0x2110,0x2130,0x2130,0x2131,0x1911,0x10F2,0x1134,0x1A18,0x09D9,0x01D9,0x01DA,0x01FA,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x021A,0x021A,0x01FA,0x01DA,0x01FA,0x01D9,0x01B8,0x0177,0x0996,0x0955,0x0934,0x1133,0x1113,0x1113,0x1133,0x1133,0x1133,0x1133,0x1132,0x1112,0x1132,0x1132,0x1132,0x1132,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1133,0x1132,0x1132,0x1132,0x1133,0x1133,0x1133,0x1133,0x1132,0x1133,0x1112,0x1133,0x1132,0x0912,0x0912,0x1112,0x1133,0x1133,0x1133,0x0933,0x1174,0x1175,0x1195,0x11B6,0x11B6,0x11B6,0x1195,0x1154,0x1154,0x1153,0x1153,0x1953,0x1132,0x1932,0x1932,0x1932,0x1932,0x1912,0x1932,0x1912,0x1932,0x1932,0x1912,0x1932,0x1932,0x1932,0x1112,0x1932,0x1932,0x1132,0x1112,0x1132,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1132,0x1132,0x1932,0x1932,0x1932,0x1932,0x1132,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1132,0x1932,0x1132,0x1932,0x1132,0x1132,0x1132,0x1952,0x1952,0x1932,0x1953,0x1132,0x1932,0x1933,0x1112,0x1932,0x1132,0x1932,0x1932,0x1132,0x1133,0x1134,0x0954,0x0976,0x09D8,0x01D8,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FB,0x01FB,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01D9,0x09F9,0x09D8,0x09D7,0x11B6,0x1174,0x1952,0x1952,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2910,0x2910,0x212F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x210F,0x2110,0x2130,0x2130,0x1931,0x1112,0x1133,0x19D6,0x1A18,0x19D7,0x19B6,0x1133,0x1932,0x2131,0x2110,0x2130,0x2130,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2131,0x1911,0x1132,0x0953,0x19D6,0x19F7,0x19D6,0x19B5,0x1174,0x1112,0x1931,0x2130,0x2930,0x290F,0x292F,0x292F,0x290F,0x292F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1931,0x1911,0x1932,0x1932,0x1932,0x1932,0x1952,0x1932,0x2132,0x1911,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x2930,0x212F,0x2930,0x210F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2110,0x2910,0x210F,0x210F,0x290F,0x210F,0x2930,0x212F,0x212F,0x210F,0x292F,0x292F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x292F,0x210F,0x212F,0x2130,0x2951,0x2151,0x1931,0x1111,0x1132,0x0933,0x19B5,0x21F7,0x2217,0x19D6,0x1995,0x1153,0x1132,0x1931,0x1911,0x1931,0x1910,0x1910,0x2130,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2131,0x1932,0x1112,0x1153,0x19B5,0x21F7,0x2218,0x19D7,0x1996,0x1154,0x1133,0x1932,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x1930,0x2151,0x1932,0x1112,0x19D7,0x1A18,0x19F8,0x19B7,0x08F2,0x1931,0x2111,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x210F,0x2110,0x210F,0x2910,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x2110,0x210F,0x2910,0x2910,0x2110,0x2910,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x2930,0x2930,0x210F,0x210F,0x2110,0x2930,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x08F2,0x21B5,0x2A17,0x2217,0x21D6,0x10F2,0x1112,0x2152,0x2151,0x2130,0x2110,0x210F,0x210F,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x2930,0x2130,0x210F,0x2130,0x2110,0x2130,0x2110,0x2131,0x2131,0x1932,0x1933,0x1133,0x1154,0x1995,0x21F7,0x2217,0x19D7,0x1195,0x1154,0x1133,0x1932,0x1932,0x2111,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x1910,0x1911,0x1931,0x1112,0x1154,0x21F7,0x21F7,0x2217,0x1153,0x1112,0x1912,0x2132,0x2131,0x2130,0x2130,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x290F,0x290F,0x2930,0x210F,0x290F,0x2910,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2910,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x1911,0x1911,0x1912,0x1932,0x1933,0x1954,0x1995,0x21D6,0x19B6,0x21D6,0x19B5,0x1154,0x1133,0x1112,0x1111,0x1131,0x1973,0x1993,0x1132,0x1133,0x0933,0x1154,0x19B6,0x19D7,0x21F7,0x19B6,0x1995,0x1133,0x1932,0x1911,0x2131,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x210F,0x210F,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x210F,0x2930,0x290F,0x290F,0x210F,0x210F,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2930,0x2110,0x2930,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2130,0x210F,0x2110,0x1910,0x1911,0x1153,0x11B6,0x1A18,0x19F8,0x11D8,0x0996,0x0955,0x0954,0x0934,0x0934,0x0955,0x0955,0x11B7,0x11F8,0x1A19,0x19F8,0x0955,0x08F2,0x1911,0x2131,0x2130,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x210F,0x2930,0x2930,0x2930,0x2130,0x2130,0x212F,0x2130,0x2930,0x210F,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2110,0x2111,0x2111,0x1911,0x1912,0x1933,0x1954,0x19B6,0x21F7,0x21F7,0x21F7,0x1995,0x1154,0x1113,0x1912,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2910,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2950,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x1931,0x1931,0x1112,0x1132,0x1174,0x1995,0x19D6,0x21F7,0x19D6,0x19B6,0x1134,0x1112,0x1112,0x1131,0x1131,0x1951,0x1952,0x1932,0x1932,0x1133,0x1174,0x1996,0x19D7,0x21F7,0x21F7,0x19B6,0x1974,0x1133,0x1932,0x1911,0x1911,0x2131,0x2152,0x1952,0x1912,0x10F2,0x1954,0x1995,0x2218,0x2218,0x19D7,0x19B6,0x1154,0x1132,0x1931,0x2151,0x2130,0x2130,0x2130,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2110,0x2130,0x2130, + 0x2131,0x2130,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1132,0x1132,0x1174,0x19B6,0x2218,0x2218,0x19D7,0x1195,0x1133,0x1112,0x1912,0x2132,0x2131,0x2130,0x2910,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x210F,0x292F,0x290F,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x2930,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1912,0x1133,0x1A39,0x09F9,0x01B9,0x01DA,0x01FA,0x021A,0x01DA,0x01FA,0x01DA,0x01FB,0x01FB,0x021B,0x01FA,0x01FA,0x01FB,0x01FA,0x021A,0x01FA,0x01B9,0x0198,0x11F8,0x11F8,0x0996,0x1196,0x1196,0x1196,0x11B6,0x1196,0x1196,0x1196,0x1195,0x1195,0x11B5,0x1195,0x1195,0x11B5,0x1196,0x1196,0x11B6,0x1196,0x11B6,0x1195,0x1196,0x1196,0x1196,0x1195,0x1196,0x11B6,0x11B6,0x1195,0x1195,0x1195,0x11B5,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x1196,0x1196,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x19D6,0x11D6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x19D6,0x1195,0x1154,0x1153,0x1153,0x0933,0x0933,0x0933,0x1154,0x1175,0x11B6,0x19D6,0x19D7,0x11B6,0x11B5,0x1154,0x1133,0x1133,0x1132,0x1932,0x1932,0x1932,0x1911,0x1911,0x2132,0x1932,0x2132,0x2132,0x1932,0x1932,0x1932,0x1911,0x1931,0x1932,0x1911,0x1931,0x1931,0x1931,0x1931,0x1911,0x1932,0x1911,0x1931,0x1911,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1932,0x1931,0x1931,0x1931,0x1932,0x1932,0x1931,0x1931,0x1931,0x1932,0x1952,0x1132,0x1133,0x0934,0x0955,0x09B7,0x09F9,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x0A1A,0x09F9,0x09D7,0x11B6,0x1195,0x1132,0x1932,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x2910,0x2930,0x2930,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x210F,0x2910,0x2930,0x2910,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2910,0x2930,0x210F,0x210F,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2130,0x1931,0x1912,0x0913,0x19D6,0x1A18,0x19D7,0x1196,0x1133,0x1932,0x1931,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x1910,0x1911,0x1132,0x1154,0x19D6,0x19F6,0x19D6,0x19B5,0x1173,0x1112,0x1931,0x2130,0x2930,0x2930,0x292F,0x290F,0x290F,0x290F,0x2130,0x2110,0x2130,0x2131,0x1931,0x1931,0x1932,0x1932,0x1132,0x1132,0x1133,0x1133,0x1953,0x1953,0x1953,0x1952,0x1932,0x1931,0x1911,0x2111,0x2131,0x2130,0x2110,0x2110,0x2130,0x210F,0x290F,0x210F,0x2930,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x2910,0x2910,0x210F,0x210F,0x2910,0x2930,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x212F,0x2930,0x2930,0x2130,0x2930,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2150,0x2131,0x1951,0x1132,0x0912,0x1153,0x19B5,0x19F7,0x2217,0x21F6,0x19B5,0x1133,0x1112,0x1131,0x1911,0x1910,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2131,0x1931,0x1112,0x1954,0x1995,0x21F7,0x2A38,0x21F7,0x1995,0x1154,0x1133,0x1132,0x1911,0x1911,0x2131,0x2131,0x2131,0x2130,0x2110,0x210F,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2131,0x1911,0x1112,0x19D7,0x1A18,0x1A19,0x19B7,0x08F2,0x1911,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2930,0x210F,0x2110,0x2910,0x2110,0x2910,0x2910,0x2930,0x210F,0x290F,0x210F,0x290F,0x290F,0x2930,0x210F,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x2152,0x1111,0x10F2,0x21B5,0x2A17,0x21F7,0x21B6,0x1112,0x1912,0x2132,0x2131,0x2131,0x2930,0x2930,0x210F,0x210F,0x2910,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2130,0x2110,0x2110,0x2130,0x2131,0x2131,0x1932,0x1112,0x1112,0x1174,0x19B5,0x21F7,0x21F7,0x19D6,0x1195,0x1154,0x1112,0x1112,0x1931,0x1911,0x2131,0x2110,0x210F,0x210F,0x210F,0x20EF,0x210F,0x2130,0x2130,0x210F,0x2130,0x1931,0x1931,0x1112,0x1133,0x21D6,0x21F7,0x2A17,0x1974,0x1112,0x1912,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2910,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x210F,0x2910,0x2110,0x2930,0x210F,0x2110,0x2110,0x2910,0x2930,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x292F,0x292F,0x2930,0x2930,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x1911,0x1931,0x1932,0x1932,0x1932,0x1953,0x1974,0x1995,0x21D6,0x21F7,0x21D6,0x21D6,0x1954,0x1112,0x10F1,0x1111,0x1952,0x2173,0x1952,0x1132,0x0912,0x1133,0x1174,0x19B6,0x19D6,0x21F7,0x19B6,0x19B5,0x1954,0x1112,0x1911,0x1911,0x2131,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x292F,0x292F,0x212F,0x212F,0x210F,0x2110,0x2910,0x210F,0x210F,0x2930,0x2930,0x290F,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x210F,0x2930,0x210F,0x2910,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x1931,0x1153,0x19B6,0x19F7,0x11D8,0x11D8,0x0975,0x0955,0x0954,0x0954,0x0934,0x0934,0x0955,0x0996,0x11D8,0x11F8,0x19F8,0x0955,0x08F2,0x1932,0x2131,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x2130,0x212F,0x2130,0x2130,0x212F,0x292F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x2131,0x1911,0x1912,0x1953,0x1954,0x21D6,0x21F7,0x21F7,0x21F6,0x19B6,0x1154,0x1112,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x2930,0x212F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x2110,0x210F,0x2110,0x210F,0x212F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x1931,0x1911,0x1132,0x1154,0x1995,0x19D6,0x19D7,0x19B6,0x19B6,0x1974,0x1112,0x1111,0x1111,0x1131,0x1931,0x1951,0x1952,0x1132,0x1132,0x1154,0x1995,0x19B6,0x19F7,0x21F7,0x19B6,0x1975,0x1133,0x1112,0x1911,0x1911,0x1931,0x2152,0x1952,0x1112,0x1112,0x1133,0x1995,0x21F7,0x2218,0x21F7,0x19B6,0x1174,0x1132,0x1111,0x1931,0x2130,0x2130,0x2130,0x2930,0x212F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130, + 0x1931,0x2131,0x2131,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2131,0x1931,0x1132,0x1133,0x1174,0x11B6,0x1A17,0x2218,0x19F7,0x1195,0x1133,0x1133,0x1932,0x2131,0x2131,0x2110,0x2910,0x2110,0x210F,0x2110,0x2130,0x2110,0x2130,0x2110,0x210F,0x2930,0x210F,0x290F,0x290F,0x2930,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2910,0x2910,0x2930,0x2930,0x2110,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x210F,0x2130,0x212F,0x2130,0x210F,0x2930,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2110,0x2130,0x2130,0x2130,0x2131,0x2111,0x1911,0x1912,0x0913,0x1A39,0x09F9,0x01D9,0x01FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FB,0x01FB,0x01DB,0x01FB,0x01DA,0x01FB,0x01FB,0x01FA,0x01FA,0x09DA,0x01B9,0x1219,0x1219,0x1219,0x1218,0x1A18,0x1A39,0x1A39,0x1A39,0x1A39,0x2239,0x2239,0x2238,0x2238,0x2258,0x2238,0x2238,0x2259,0x2239,0x2239,0x2238,0x2239,0x2239,0x2239,0x2239,0x2259,0x2238,0x2239,0x2239,0x2259,0x2259,0x2238,0x2238,0x2239,0x2239,0x2239,0x2239,0x2259,0x2259,0x2238,0x2239,0x2259,0x2238,0x2239,0x2259,0x2259,0x2238,0x2238,0x1A18,0x2238,0x1A38,0x1A18,0x1A18,0x1A18,0x1A38,0x1A38,0x1A17,0x11B6,0x1195,0x1154,0x1153,0x0932,0x0933,0x0933,0x1154,0x1195,0x19D6,0x19D6,0x19D7,0x19D6,0x1195,0x1154,0x1133,0x1132,0x1132,0x1911,0x1932,0x1911,0x1932,0x2132,0x1911,0x2132,0x1911,0x1932,0x1932,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x2131,0x1931,0x1911,0x1931,0x1931,0x1931,0x2131,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1132,0x1112,0x0934,0x0955,0x09B7,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DB,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x09F9,0x09F9,0x09F8,0x11B7,0x1195,0x1153,0x1932,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x2930,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2910,0x210F,0x290F,0x2930,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x2930,0x2930,0x210F,0x2930,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2110,0x2130,0x2110,0x2110,0x2130,0x1931,0x1932,0x0912,0x19D6,0x1A18,0x11D7,0x19B6,0x1133,0x1912,0x1931,0x2130,0x2130,0x2130,0x212F,0x292F,0x294F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x1911,0x1132,0x1154,0x19D6,0x19F6,0x19D6,0x19D5,0x1173,0x1111,0x1931,0x2130,0x2930,0x2930,0x292F,0x292F,0x290F,0x2930,0x2930,0x2130,0x2130,0x2131,0x1931,0x1932,0x1153,0x1133,0x1154,0x1174,0x1175,0x1175,0x1154,0x0934,0x1133,0x1133,0x1133,0x1932,0x1932,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x212F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2910,0x210F,0x2910,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x2130,0x210F,0x2130,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x2930,0x2930,0x212F,0x210F,0x210F,0x212F,0x2950,0x2951,0x2151,0x1931,0x1111,0x1112,0x0933,0x19B5,0x21F7,0x2218,0x19F6,0x19B5,0x1154,0x1112,0x1111,0x1911,0x1910,0x1910,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1932,0x1153,0x19B5,0x21F7,0x2218,0x21F7,0x1995,0x1174,0x1133,0x1932,0x1911,0x1911,0x1910,0x1930,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2150,0x1931,0x1911,0x1113,0x19D7,0x1A18,0x1A19,0x19B7,0x08F2,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x2910,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2930,0x290F,0x2930,0x2910,0x2930,0x2930,0x210F,0x2930,0x210F,0x2910,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2110,0x2130,0x2130,0x2151,0x2132,0x1911,0x10F1,0x21B5,0x2A17,0x21F7,0x21B6,0x1113,0x1912,0x2132,0x2131,0x2131,0x2110,0x2110,0x2110,0x210F,0x2910,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1911,0x1932,0x1132,0x1174,0x1995,0x19D6,0x2218,0x2217,0x19B6,0x1154,0x1112,0x1912,0x1931,0x2131,0x2130,0x210F,0x2930,0x2130,0x210F,0x210F,0x2950,0x2150,0x190F,0x2150,0x2151,0x1911,0x1112,0x1133,0x19B6,0x21F7,0x2A17,0x1974,0x1112,0x1932,0x1931,0x2131,0x2130,0x2110,0x2130,0x2130,0x210F,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x290F,0x2910,0x2930,0x2910,0x2910,0x2110,0x210F,0x2110,0x2910,0x210F,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2131,0x2131,0x1911,0x1911,0x1932,0x1933,0x1153,0x1974,0x1995,0x19D6,0x21D6,0x19B6,0x19B5,0x1953,0x1132,0x1111,0x1111,0x1952,0x1952,0x1111,0x1132,0x1133,0x1133,0x1995,0x1995,0x19B6,0x2217,0x21F7,0x19B5,0x1154,0x1112,0x1111,0x1911,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2930,0x2930,0x292F,0x292F,0x212F,0x2930,0x210F,0x2930,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x210F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x1931,0x1932,0x1174,0x19D7,0x11D7,0x11D7,0x11B6,0x0975,0x0134,0x0955,0x0934,0x0114,0x0135,0x0997,0x11B8,0x11D8,0x11D8,0x1175,0x08F2,0x1911,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2150,0x212F,0x2130,0x212F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1911,0x1912,0x1953,0x1954,0x19B5,0x21F7,0x21F7,0x21F7,0x1995,0x1154,0x1112,0x1912,0x1931,0x2131,0x2150,0x2130,0x212F,0x212F,0x210F,0x292F,0x292F,0x210F,0x210F,0x2910,0x2910,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1931,0x1112,0x1953,0x1995,0x19D6,0x21F7,0x19D6,0x19D6,0x1974,0x1133,0x1112,0x10F1,0x1111,0x1931,0x1931,0x1931,0x1132,0x1132,0x1153,0x1995,0x19B6,0x19D7,0x21F7,0x19B6,0x1975,0x1133,0x1912,0x1912,0x10F1,0x1931,0x1952,0x1952,0x1132,0x1112,0x1154,0x1995,0x21F7,0x2217,0x21F7,0x19B6,0x1974,0x1132,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x212F,0x292F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x292F,0x2930, + 0x1911,0x1931,0x2131,0x1911,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2131,0x2131,0x1931,0x1111,0x1133,0x1174,0x19D6,0x19F7,0x2218,0x19F7,0x1175,0x1133,0x1112,0x1932,0x2131,0x2131,0x2910,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x210F,0x2930,0x2110,0x2110,0x2110,0x2130,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2130,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2930,0x2910,0x2910,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x2930,0x292F,0x212F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2131,0x2111,0x1911,0x1912,0x1133,0x2239,0x0A19,0x01B9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FB,0x021B,0x01FB,0x01DA,0x01FB,0x01DA,0x01FA,0x01FA,0x01DA,0x09DA,0x09D9,0x1219,0x11F8,0x11D8,0x11D8,0x11D8,0x19F8,0x19F8,0x1A18,0x19F8,0x19F8,0x19F7,0x19F7,0x1A17,0x19F7,0x19F7,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x2218,0x19F8,0x2218,0x19F8,0x19F7,0x19F7,0x19D7,0x19F7,0x2218,0x19F7,0x19F8,0x19F8,0x19F8,0x19F7,0x19D7,0x19F8,0x19F8,0x19F8,0x19F7,0x19F7,0x19D7,0x19D7,0x19D7,0x19F7,0x19F7,0x19F7,0x1A18,0x1A18,0x1A18,0x1A17,0x19F7,0x11D7,0x11B6,0x11B6,0x1195,0x1174,0x0933,0x0933,0x0933,0x0933,0x0954,0x1195,0x19D7,0x19F7,0x19D6,0x11B6,0x1195,0x1154,0x1132,0x1132,0x1112,0x1932,0x1932,0x1911,0x1932,0x1931,0x1911,0x1931,0x1911,0x18F1,0x1911,0x1931,0x1911,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x2152,0x1931,0x1931,0x2131,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x1931,0x1911,0x1931,0x1911,0x2131,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1132,0x1132,0x0934,0x0955,0x09B7,0x01D9,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FB,0x01DA,0x01FB,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01F9,0x09F9,0x11F9,0x11F8,0x19D6,0x1133,0x1932,0x1931,0x2131,0x2110,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x212F,0x212F,0x210F,0x2110,0x2930,0x2110,0x2910,0x2110,0x2930,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2110,0x210F,0x2110,0x2130,0x2110,0x2130,0x1931,0x1932,0x1133,0x19D7,0x1A18,0x19D7,0x19B6,0x1133,0x1111,0x1931,0x2110,0x2130,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2150,0x2131,0x1911,0x1132,0x1154,0x19D6,0x19F7,0x19D6,0x19B5,0x1973,0x1112,0x1931,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2131,0x1931,0x1132,0x1133,0x1174,0x19D6,0x2238,0x1A18,0x2238,0x2258,0x2258,0x2238,0x1A17,0x19D6,0x1195,0x1154,0x1112,0x1932,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x290F,0x2910,0x2910,0x2930,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x210F,0x210F,0x2130,0x212F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x2910,0x2930,0x2930,0x290F,0x2930,0x2130,0x2110,0x2151,0x2151,0x1911,0x1111,0x1112,0x1133,0x19B5,0x2217,0x2217,0x21F7,0x19B5,0x1153,0x1132,0x1111,0x1911,0x1910,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x2130,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1912,0x1933,0x21B5,0x21F7,0x2217,0x21F7,0x1995,0x1174,0x1133,0x1132,0x1952,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x2950,0x212F,0x212F,0x212F,0x2130,0x2131,0x1932,0x1113,0x19D7,0x19F8,0x1A19,0x19D7,0x08F2,0x1912,0x2151,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x2930,0x290F,0x2910,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x2930,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x2130,0x2930,0x2110,0x2110,0x2110,0x2130,0x2131,0x2152,0x1912,0x1112,0x21B5,0x2A17,0x21F7,0x21B6,0x1113,0x1912,0x1932,0x2131,0x2931,0x2110,0x2910,0x210F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x292F,0x290F,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1912,0x1112,0x1154,0x11B5,0x2237,0x2238,0x2238,0x19B5,0x0933,0x1112,0x1932,0x1931,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2151,0x1931,0x1111,0x1133,0x19B5,0x2217,0x2217,0x1994,0x1112,0x1932,0x1931,0x2131,0x2110,0x2130,0x2110,0x2130,0x2110,0x2930,0x2930,0x212F,0x210F,0x290F,0x212F,0x210F,0x210F,0x210F,0x2910,0x2930,0x2910,0x2110,0x2110,0x2110,0x2930,0x2930,0x290F,0x210F,0x2110,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x210F,0x2930,0x212F,0x2930,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x2910,0x2110,0x2130,0x2110,0x2131,0x2151,0x2131,0x1931,0x1911,0x1932,0x1953,0x1953,0x1954,0x1995,0x21D6,0x21D6,0x19B6,0x19B5,0x1953,0x1112,0x1111,0x1931,0x2172,0x1932,0x1932,0x1112,0x1132,0x1133,0x1174,0x1995,0x21F7,0x2217,0x19D6,0x19B6,0x1974,0x1112,0x18F1,0x2111,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2930,0x210F,0x292F,0x292F,0x2930,0x290F,0x210F,0x290F,0x210F,0x210F,0x212F,0x2930,0x2110,0x210F,0x2930,0x2930,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x210F,0x2910,0x2930,0x2110,0x2110,0x2910,0x2930,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2110,0x2930,0x210F,0x2110,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x2110,0x2110,0x2110,0x1910,0x1932,0x1174,0x11B6,0x11B7,0x19F7,0x11F7,0x19F7,0x11B6,0x0996,0x0976,0x0976,0x09B7,0x11D8,0x0997,0x11B8,0x19D8,0x0975,0x08F2,0x1111,0x1911,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x212F,0x210F,0x290F,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1912,0x1933,0x1974,0x19B5,0x21F7,0x21F7,0x21F7,0x1995,0x1154,0x1112,0x1911,0x2151,0x2131,0x2951,0x2130,0x2130,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x2110,0x2110,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x2930,0x2930,0x2130,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1132,0x1953,0x1154,0x1995,0x21F7,0x21F7,0x19B5,0x1974,0x1153,0x1132,0x1111,0x1911,0x1951,0x1952,0x1111,0x1111,0x1132,0x1153,0x1195,0x19D6,0x19D7,0x19D7,0x19B6,0x1975,0x1133,0x1912,0x1912,0x1912,0x1911,0x1931,0x1952,0x1932,0x1132,0x0933,0x19B5,0x2217,0x2218,0x2217,0x19B6,0x1154,0x1133,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x212F,0x210F,0x290F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F, + 0x1932,0x1932,0x1932,0x1931,0x2111,0x2110,0x2130,0x2110,0x2930,0x2930,0x2130,0x2130,0x2110,0x2131,0x1931,0x1112,0x1133,0x1174,0x19B6,0x19F7,0x2218,0x19D7,0x1996,0x1134,0x1112,0x1912,0x2131,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x290F,0x210F,0x210F,0x212F,0x210F,0x290F,0x2930,0x290F,0x2930,0x2930,0x2110,0x2930,0x2110,0x2110,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x2910,0x290F,0x2930,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x2930,0x210F,0x292F,0x292F,0x210F,0x292F,0x290F,0x292F,0x290F,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2131,0x2110,0x1911,0x1912,0x0913,0x1A38,0x0A19,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FB,0x01FB,0x01FB,0x01FB,0x01FB,0x01FB,0x01FB,0x01DA,0x01FA,0x01DA,0x01D9,0x09D9,0x09D8,0x09B7,0x0996,0x1196,0x11B6,0x1196,0x11B6,0x1196,0x1195,0x11B6,0x1195,0x1195,0x1195,0x1195,0x1195,0x1995,0x1175,0x1195,0x1195,0x1175,0x1196,0x1196,0x1195,0x1995,0x1995,0x1195,0x1195,0x1995,0x1175,0x1195,0x1195,0x1175,0x1995,0x1175,0x1175,0x1175,0x1175,0x1195,0x1175,0x1195,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1975,0x1175,0x1175,0x1175,0x1195,0x1195,0x1195,0x11B6,0x11B5,0x11B6,0x11D6,0x11D6,0x19F7,0x11B6,0x19B5,0x1174,0x1153,0x0933,0x0913,0x0933,0x0954,0x1195,0x19D6,0x19D6,0x19F7,0x11B6,0x11B5,0x1174,0x1153,0x1132,0x1132,0x1132,0x1132,0x1932,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1932,0x1912,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1952,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1932,0x1932,0x1932,0x1932,0x1931,0x1932,0x1932,0x1932,0x1932,0x1931,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1132,0x1132,0x1133,0x0934,0x0155,0x09B7,0x01D9,0x01FA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01FB,0x01DA,0x01DB,0x01DA,0x01DA,0x01DA,0x01DA,0x01FB,0x01DB,0x01DA,0x01DA,0x01DB,0x01DA,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DB,0x01DB,0x01DA,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01F9,0x09F9,0x09F9,0x11D7,0x11B6,0x1974,0x1111,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x212F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2910,0x2910,0x290F,0x2930,0x2910,0x2910,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2910,0x2930,0x290F,0x2930,0x210F,0x290F,0x290F,0x2910,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x1911,0x1932,0x1133,0x19D6,0x19F8,0x19D7,0x19B6,0x1133,0x1932,0x1931,0x2110,0x2130,0x2930,0x212F,0x292F,0x212F,0x294F,0x292F,0x212F,0x212F,0x2130,0x2131,0x1931,0x1132,0x1154,0x19D6,0x19F7,0x19B6,0x19B5,0x1953,0x1112,0x1931,0x2131,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2131,0x2131,0x1932,0x1133,0x1995,0x11B6,0x19F8,0x1218,0x11D7,0x11F8,0x09D7,0x09D8,0x11F8,0x1A38,0x1A38,0x1A18,0x21F7,0x1174,0x1933,0x1932,0x2111,0x2130,0x2110,0x2110,0x2130,0x210F,0x2110,0x2110,0x210F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2930,0x290F,0x2910,0x290F,0x290F,0x2930,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x2910,0x2910,0x2910,0x290F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x210F,0x2910,0x2930,0x2930,0x2130,0x2130,0x2151,0x2131,0x10F1,0x1112,0x1133,0x1995,0x21F7,0x2217,0x21F7,0x1995,0x1133,0x1112,0x1111,0x1931,0x1930,0x1910,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2150,0x2130,0x2110,0x2131,0x1931,0x1911,0x1112,0x1953,0x21B5,0x21F7,0x2217,0x21F7,0x19B5,0x1154,0x1133,0x1932,0x1931,0x1931,0x1931,0x2130,0x2130,0x2110,0x2110,0x2130,0x210F,0x2150,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2151,0x1911,0x1113,0x19D7,0x19F9,0x19F9,0x19D7,0x08F2,0x1932,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2930,0x212F,0x292F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2131,0x2132,0x1912,0x10F2,0x21B6,0x2A17,0x21F7,0x21B6,0x1113,0x1912,0x1932,0x2111,0x2110,0x2110,0x2910,0x2110,0x290F,0x2910,0x2930,0x2110,0x2110,0x2130,0x212F,0x212F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x1931,0x1111,0x1132,0x1174,0x11B5,0x2238,0x2218,0x19F7,0x19B5,0x1133,0x1132,0x1932,0x1931,0x2110,0x2130,0x2130,0x210F,0x210F,0x2110,0x2130,0x210F,0x1910,0x2131,0x1931,0x1112,0x1132,0x19B5,0x2217,0x2217,0x19B5,0x1112,0x1932,0x1931,0x2131,0x2131,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2910,0x210F,0x2110,0x210F,0x210F,0x290F,0x290F,0x210F,0x2910,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2110,0x210F,0x2910,0x210F,0x212F,0x290F,0x210F,0x2910,0x2110,0x2930,0x2130,0x2131,0x2131,0x2151,0x2131,0x1931,0x1952,0x1932,0x1932,0x1953,0x1953,0x1995,0x21D6,0x21D6,0x21D6,0x21B5,0x1953,0x1132,0x1131,0x1972,0x1952,0x1932,0x1932,0x1112,0x1112,0x1953,0x1174,0x19B5,0x2238,0x19D6,0x19D7,0x21D6,0x1154,0x1112,0x1911,0x2110,0x2110,0x2110,0x2130,0x210F,0x212F,0x210F,0x210F,0x212F,0x292F,0x2930,0x290F,0x210F,0x2930,0x212F,0x210F,0x212F,0x2930,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2110,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x2930,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x210F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2110,0x1910,0x1931,0x1153,0x1174,0x19B6,0x19F7,0x19F7,0x1A18,0x1A17,0x19F7,0x11B7,0x11D8,0x11F8,0x11F8,0x11D8,0x11B8,0x11D8,0x0975,0x08F2,0x1111,0x1911,0x2131,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x292F,0x292F,0x290F,0x2930,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2150,0x2130,0x2131,0x1911,0x1932,0x1953,0x1174,0x19D6,0x21F7,0x21F7,0x21F7,0x19B5,0x1154,0x1112,0x1912,0x2131,0x2131,0x2130,0x2130,0x2130,0x292F,0x292F,0x292F,0x292F,0x290F,0x2930,0x210F,0x2130,0x212F,0x210F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x1932,0x1133,0x1174,0x19B5,0x19D6,0x21F6,0x21D6,0x1974,0x1153,0x1132,0x1111,0x10F1,0x1931,0x1952,0x1931,0x1111,0x1112,0x1153,0x1195,0x19D6,0x19D7,0x19D7,0x21D7,0x1975,0x1934,0x1912,0x1912,0x1912,0x1912,0x1932,0x1952,0x1932,0x1112,0x1133,0x1195,0x21F7,0x2238,0x2217,0x21D6,0x1154,0x1113,0x1112,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2930,0x210F,0x292F,0x292F,0x290F,0x290F,0x2930,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F, + 0x1994,0x1133,0x1953,0x1932,0x1911,0x2131,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2131,0x2131,0x1911,0x1111,0x1133,0x1195,0x19D6,0x19F7,0x19F7,0x21F7,0x1996,0x1134,0x1112,0x1912,0x2131,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x2930,0x210F,0x212F,0x2930,0x292F,0x292F,0x290F,0x290F,0x2910,0x2110,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x290F,0x290F,0x210F,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x290F,0x210F,0x212F,0x212F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2910,0x2910,0x2110,0x2130,0x2130,0x2131,0x2131,0x1911,0x1912,0x1133,0x1A18,0x1219,0x01B9,0x01DA,0x01DA,0x01DA,0x01FA,0x01FB,0x01DA,0x01FB,0x01FB,0x01DB,0x01FB,0x01FB,0x01BA,0x01BA,0x01DA,0x01D9,0x09D9,0x09D8,0x0976,0x0954,0x0954,0x0933,0x1153,0x1153,0x1153,0x1133,0x1133,0x1132,0x1132,0x1132,0x1152,0x1952,0x1132,0x1932,0x1133,0x1133,0x1133,0x1953,0x1133,0x1133,0x1133,0x1112,0x1133,0x1953,0x1933,0x1133,0x1133,0x1133,0x1132,0x1132,0x1933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x1133,0x1133,0x1133,0x1933,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1133,0x1133,0x1153,0x1153,0x0913,0x1174,0x19F6,0x19F7,0x19F7,0x11D6,0x11B5,0x1174,0x0933,0x0913,0x0913,0x0933,0x1154,0x1175,0x19B6,0x19D7,0x19F7,0x11D6,0x1195,0x1174,0x1154,0x1153,0x0933,0x0932,0x1132,0x1112,0x1112,0x1132,0x1132,0x1112,0x1132,0x1132,0x1932,0x1132,0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1132,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1132,0x1112,0x1112,0x1932,0x1932,0x1112,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1132,0x1133,0x0933,0x0954,0x0176,0x01B8,0x01B9,0x01DA,0x01BA,0x01DA,0x01FB,0x01DA,0x01FA,0x01FB,0x01DA,0x01DA,0x01BA,0x01DA,0x01BA,0x01BA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DB,0x01DB,0x01DA,0x01DA,0x01DB,0x01DA,0x01DA,0x01DA,0x01FB,0x01DB,0x01DB,0x01DA,0x01FB,0x01FB,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01D9,0x01D9,0x01F9,0x09F9,0x09F9,0x09D7,0x19D6,0x1173,0x10F1,0x1911,0x2131,0x2130,0x2130,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x2910,0x2910,0x210F,0x2930,0x290F,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2130,0x2130,0x2131,0x1931,0x1932,0x0933,0x19D7,0x1A18,0x19F8,0x1196,0x1133,0x1911,0x2131,0x2131,0x2130,0x2130,0x212F,0x210F,0x212F,0x292F,0x212F,0x212F,0x2130,0x2130,0x1910,0x1911,0x1132,0x1174,0x19F6,0x19F7,0x19B5,0x19B5,0x1973,0x1111,0x1910,0x2110,0x2930,0x2930,0x2930,0x2910,0x2930,0x2130,0x2130,0x2110,0x1931,0x1932,0x1174,0x19D6,0x19F8,0x11D8,0x09B8,0x01B7,0x01B8,0x01B8,0x0197,0x01B8,0x09D8,0x09F8,0x11F8,0x11F7,0x19F7,0x1974,0x1932,0x2131,0x2131,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x2910,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x292F,0x290F,0x2110,0x210F,0x2110,0x2930,0x2930,0x2130,0x2131,0x2131,0x1111,0x1112,0x1132,0x1995,0x2217,0x2238,0x21F7,0x1995,0x1133,0x1112,0x1112,0x1911,0x1931,0x2131,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x214F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1111,0x1132,0x1153,0x1995,0x21F7,0x21F7,0x21F7,0x19B6,0x1133,0x1112,0x1932,0x1911,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1911,0x1113,0x19B7,0x1A19,0x1A19,0x19B7,0x10F3,0x1912,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x210F,0x290F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x292F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2110,0x2130,0x2151,0x2132,0x1112,0x1113,0x21D6,0x21F7,0x2A17,0x21B6,0x1113,0x1932,0x1911,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x210F,0x2110,0x2130,0x2110,0x2110,0x212F,0x292F,0x292F,0x292F,0x212F,0x210F,0x292F,0x292F,0x292F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2131,0x2131,0x1952,0x1132,0x1112,0x1153,0x11B5,0x1A17,0x2217,0x21F7,0x1995,0x1154,0x1112,0x1931,0x1910,0x2151,0x2930,0x2110,0x2110,0x2110,0x2950,0x210F,0x2110,0x1931,0x1931,0x1111,0x1112,0x19B5,0x2A37,0x21F6,0x1994,0x1112,0x1932,0x1952,0x1931,0x2131,0x2131,0x2130,0x2110,0x2110,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2910,0x210F,0x2930,0x2930,0x210F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x290F,0x2930,0x2930,0x2930,0x210F,0x2110,0x2930,0x2130,0x2130,0x2131,0x2131,0x2131,0x1931,0x1951,0x1932,0x1932,0x1932,0x1953,0x1995,0x21D6,0x21D6,0x21F6,0x2195,0x1953,0x1112,0x1932,0x1952,0x1972,0x1932,0x1912,0x1112,0x1132,0x1133,0x1174,0x19B6,0x19B6,0x19D7,0x2218,0x19D6,0x1133,0x1912,0x1911,0x2110,0x2930,0x2930,0x2130,0x212F,0x210F,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2930,0x2110,0x2910,0x2110,0x2910,0x2930,0x210F,0x212F,0x2930,0x210F,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x1911,0x1932,0x1153,0x1174,0x11B6,0x19F7,0x19F7,0x19F7,0x19F7,0x19D7,0x11B7,0x11B7,0x19F8,0x1218,0x11F8,0x11D8,0x1196,0x0913,0x1112,0x10F1,0x1931,0x2151,0x2130,0x2130,0x2130,0x210F,0x212F,0x2130,0x210F,0x212F,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x292F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2110,0x2110,0x212F,0x210F,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2131,0x1931,0x1932,0x1133,0x1974,0x19B5,0x21F7,0x2217,0x21F7,0x19B6,0x1154,0x1112,0x1111,0x1911,0x2131,0x2130,0x2130,0x2130,0x212F,0x292F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x2110,0x2930,0x210F,0x290F,0x292F,0x292F,0x210F,0x290F,0x210F,0x2930,0x2930,0x212F,0x2110,0x2110,0x2130,0x2130,0x2131,0x2151,0x2151,0x2132,0x1912,0x1132,0x1974,0x19B6,0x21F6,0x19D6,0x19B6,0x1995,0x1133,0x1132,0x10F1,0x10F0,0x1911,0x2152,0x1951,0x1111,0x1132,0x1133,0x1175,0x19F7,0x19D7,0x19D7,0x19D7,0x1995,0x1934,0x1933,0x1932,0x2132,0x1932,0x1932,0x1932,0x1132,0x1132,0x0933,0x1195,0x21F7,0x2217,0x19F7,0x19D6,0x1174,0x1113,0x10F2,0x1111,0x2151,0x2151,0x2130,0x210F,0x210F,0x210F,0x2930,0x2930,0x290F,0x2930,0x210F,0x2110,0x2930,0x2930,0x210F,0x212F,0x212F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F, + 0x21F6,0x1175,0x1154,0x1953,0x1932,0x1911,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x2131,0x1111,0x1132,0x1133,0x1995,0x19B6,0x21F7,0x21F8,0x19D7,0x1996,0x1134,0x1933,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x2910,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x212F,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2930,0x2110,0x2910,0x2110,0x2130,0x2110,0x2130,0x2110,0x1910,0x1911,0x0912,0x19F7,0x1219,0x09D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DB,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01D9,0x01B8,0x09B8,0x09B7,0x0134,0x0913,0x0932,0x1132,0x1132,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1931,0x1911,0x1931,0x1932,0x1912,0x1912,0x1932,0x1911,0x1912,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1112,0x1112,0x0933,0x1195,0x1A17,0x19F7,0x19D6,0x11D6,0x11B5,0x1174,0x1133,0x0913,0x0913,0x0934,0x0934,0x1175,0x19D7,0x19F7,0x19F7,0x11D6,0x11B6,0x1195,0x1195,0x0974,0x0953,0x0953,0x0953,0x0933,0x1153,0x1153,0x1153,0x1153,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x0932,0x1133,0x0933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x1132,0x1133,0x1153,0x1132,0x1133,0x1133,0x1153,0x0933,0x0933,0x0933,0x0933,0x0933,0x0933,0x0953,0x1153,0x1153,0x1153,0x1153,0x1174,0x1175,0x0976,0x09B7,0x09D8,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DB,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DB,0x01DB,0x01DB,0x01DB,0x01DB,0x01DB,0x01DA,0x01DA,0x01DA,0x01DA,0x01DB,0x01DB,0x01DB,0x01DA,0x01DA,0x01DA,0x01DB,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D8,0x11F8,0x19F7,0x1174,0x1111,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2910,0x2930,0x2910,0x290F,0x2910,0x2910,0x290F,0x2930,0x210F,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x212F,0x2130,0x2110,0x2130,0x2130,0x1931,0x1932,0x0933,0x19D6,0x1A18,0x11D7,0x19B6,0x1133,0x1911,0x1931,0x2131,0x2110,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1132,0x1154,0x19D6,0x2217,0x19D6,0x19B5,0x1973,0x10F1,0x1931,0x2130,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2130,0x2131,0x1931,0x1132,0x1154,0x11D7,0x11D8,0x09B8,0x01B8,0x01B8,0x01B8,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x09F8,0x09D8,0x11D7,0x1195,0x1132,0x1911,0x2111,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x210F,0x2930,0x210F,0x210F,0x290F,0x210F,0x2910,0x2930,0x210F,0x2110,0x2110,0x2110,0x210F,0x2910,0x290F,0x210F,0x210F,0x212F,0x210F,0x290F,0x292F,0x292F,0x292F,0x290F,0x210F,0x290F,0x290F,0x2910,0x210F,0x2110,0x2110,0x2931,0x2131,0x2131,0x1911,0x10F1,0x1112,0x1174,0x2217,0x2217,0x2217,0x19B6,0x1134,0x1113,0x1112,0x1111,0x1931,0x1910,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2130,0x2131,0x1931,0x1911,0x1132,0x1154,0x1175,0x21F7,0x2218,0x21F7,0x19B6,0x1154,0x1133,0x1932,0x1911,0x1931,0x1910,0x2110,0x2130,0x2930,0x2130,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2131,0x1911,0x1113,0x19B7,0x19F9,0x19F9,0x19B7,0x08F2,0x1912,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2910,0x2910,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2130,0x210F,0x210F,0x2130,0x2130,0x2131,0x1911,0x1112,0x1134,0x21F7,0x21F7,0x21F7,0x21B6,0x1133,0x1912,0x1931,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x2930,0x2110,0x2110,0x2130,0x2130,0x292F,0x212F,0x210F,0x212F,0x212F,0x210F,0x292F,0x292F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2131,0x2172,0x2152,0x1111,0x0912,0x0933,0x19D6,0x19F7,0x2217,0x19F7,0x1174,0x1153,0x1132,0x1911,0x2151,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2131,0x1931,0x1112,0x1112,0x19B5,0x2A17,0x21F6,0x1995,0x1112,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2110,0x210F,0x2910,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2910,0x2110,0x2910,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x290F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x2930,0x212F,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x1930,0x1931,0x1931,0x1931,0x1932,0x1933,0x1953,0x1975,0x21D6,0x21D6,0x21D6,0x1995,0x1133,0x1132,0x1952,0x1952,0x1932,0x1932,0x1911,0x1932,0x1133,0x1153,0x1174,0x11B6,0x19D7,0x1A18,0x19F7,0x1995,0x1133,0x1911,0x2111,0x2110,0x2130,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x210F,0x210F,0x212F,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x210F,0x2110,0x1910,0x1911,0x1132,0x1153,0x1174,0x1195,0x19B6,0x11B6,0x1196,0x1196,0x0976,0x0976,0x11B7,0x11F8,0x11F8,0x11F8,0x11D7,0x0954,0x0912,0x1112,0x1911,0x2131,0x2131,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2910,0x290F,0x292F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2110,0x2110,0x2110,0x2131,0x2131,0x1932,0x1932,0x1133,0x1174,0x19D6,0x19F7,0x2217,0x21F7,0x19B5,0x1154,0x1112,0x1911,0x1911,0x2131,0x2130,0x2130,0x2130,0x2930,0x2930,0x212F,0x2930,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2110,0x2130,0x210F,0x2130,0x210F,0x2930,0x2930,0x290F,0x2910,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x2132,0x1932,0x1932,0x1133,0x1954,0x19B5,0x19F6,0x19D6,0x19D6,0x1995,0x1154,0x1132,0x1111,0x1911,0x1910,0x1931,0x1931,0x1931,0x1132,0x1153,0x1194,0x19D6,0x19F7,0x19D7,0x19D7,0x1996,0x1954,0x1933,0x1912,0x1932,0x2132,0x1932,0x1932,0x1932,0x1132,0x1133,0x1175,0x21F7,0x2217,0x19F7,0x19D6,0x1154,0x1133,0x1112,0x1111,0x1931,0x2151,0x2951,0x2130,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2910,0x290F,0x210F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F, + 0x19F7,0x11D6,0x1195,0x1134,0x1132,0x1932,0x1911,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x2151,0x1931,0x1911,0x1112,0x1133,0x1174,0x19B6,0x21D7,0x21F8,0x19D7,0x1995,0x1134,0x1113,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2130,0x2930,0x2110,0x2930,0x2930,0x290F,0x210F,0x290F,0x290F,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x2930,0x212F,0x210F,0x290F,0x290F,0x292F,0x292F,0x210F,0x292F,0x290F,0x2910,0x2930,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x1910,0x1911,0x1953,0x19D7,0x1219,0x09D9,0x01D9,0x01B9,0x01D9,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01B9,0x01B9,0x01B8,0x09D8,0x11F8,0x11D7,0x0113,0x0932,0x1132,0x1131,0x1931,0x1931,0x1910,0x1910,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2131,0x1910,0x2131,0x1931,0x1911,0x1911,0x2131,0x2111,0x2131,0x1911,0x1911,0x2111,0x2131,0x1911,0x2131,0x2131,0x2110,0x1910,0x2111,0x2131,0x2131,0x1931,0x1910,0x2130,0x2131,0x2110,0x2131,0x1911,0x2131,0x2111,0x2131,0x1911,0x2131,0x1931,0x2131,0x2131,0x2131,0x1931,0x1931,0x1931,0x1932,0x1112,0x1153,0x1174,0x11B6,0x19D7,0x19F7,0x19D6,0x19D6,0x1154,0x0933,0x0933,0x0913,0x0934,0x0954,0x1175,0x11B6,0x19F7,0x19F7,0x19F7,0x11D6,0x11B6,0x11B6,0x11B5,0x11B5,0x11B5,0x11B5,0x1195,0x11B5,0x11B6,0x1195,0x1995,0x1995,0x1995,0x19B5,0x1995,0x1995,0x1995,0x19B5,0x1995,0x19B6,0x1995,0x19B5,0x1195,0x1995,0x1996,0x1195,0x1195,0x1996,0x1195,0x1195,0x11B5,0x1195,0x1195,0x11B5,0x1195,0x1995,0x1995,0x1195,0x1195,0x19B5,0x1995,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x1995,0x19B5,0x19B5,0x19B5,0x1995,0x19B5,0x19B5,0x19B5,0x11B5,0x19B5,0x19B5,0x19D5,0x19D5,0x19D5,0x19D5,0x19D5,0x19D6,0x19D5,0x19D5,0x19D6,0x11D6,0x11D7,0x09B7,0x09F8,0x01D9,0x01FA,0x01DA,0x01B9,0x01BA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01DB,0x01FB,0x01DB,0x01DB,0x01DA,0x01DA,0x01FB,0x01DA,0x01DB,0x01DA,0x01FB,0x01DA,0x01DB,0x01DA,0x01FB,0x01DA,0x01DB,0x01DA,0x01FB,0x01DA,0x01DB,0x01DB,0x01DA,0x01DA,0x01DA,0x01DA,0x01FB,0x01FB,0x01FB,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01F9,0x09F9,0x09F8,0x19F7,0x1174,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x2910,0x2910,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x2930,0x290F,0x210F,0x212F,0x210F,0x2110,0x2130,0x2130,0x1931,0x1932,0x0933,0x19F7,0x1A18,0x11D7,0x1196,0x1133,0x1932,0x2131,0x2110,0x2130,0x2130,0x210F,0x2930,0x210F,0x210F,0x292F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1132,0x1154,0x19D6,0x19F7,0x11B5,0x19B5,0x1953,0x1111,0x1931,0x2131,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x2110,0x2131,0x1911,0x1132,0x1154,0x11D7,0x11D8,0x09B8,0x01B8,0x01D9,0x01FA,0x01D9,0x01FA,0x01F9,0x01F9,0x09F9,0x09F9,0x11F9,0x11F8,0x1175,0x1112,0x1911,0x2111,0x2110,0x2110,0x2110,0x2130,0x2930,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x2910,0x290F,0x210F,0x2910,0x2930,0x2110,0x2930,0x2110,0x210F,0x210F,0x290F,0x2930,0x2930,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x212F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x1111,0x1112,0x1174,0x21F7,0x2217,0x21F7,0x19B6,0x1154,0x0913,0x1112,0x1932,0x1931,0x2131,0x2110,0x2130,0x2130,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2150,0x2130,0x2130,0x1910,0x1931,0x1112,0x1133,0x1974,0x1995,0x21F7,0x21F8,0x21F7,0x19B6,0x1154,0x1133,0x1932,0x1931,0x1931,0x2130,0x2130,0x2110,0x210F,0x2930,0x212F,0x2930,0x210F,0x212F,0x292F,0x210F,0x212F,0x2130,0x2110,0x210F,0x2130,0x2130,0x2130,0x210F,0x212F,0x2130,0x2131,0x1911,0x1112,0x19B7,0x1A19,0x19F9,0x19B7,0x10F2,0x1911,0x2131,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x290F,0x290F,0x2910,0x290F,0x210F,0x2910,0x2910,0x2910,0x2110,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x2110,0x2930,0x2930,0x290F,0x210F,0x210F,0x212F,0x2930,0x2930,0x210F,0x210F,0x210F,0x292F,0x2930,0x2930,0x2130,0x2150,0x2131,0x1911,0x1112,0x1154,0x21D7,0x21F7,0x21F7,0x1995,0x1133,0x1932,0x1911,0x2110,0x2110,0x2930,0x2930,0x2930,0x210F,0x210F,0x2110,0x2130,0x2110,0x2130,0x2930,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x2930,0x2110,0x20EF,0x2110,0x2130,0x2972,0x2172,0x1931,0x10F1,0x1132,0x1153,0x11B5,0x19F7,0x2217,0x19D6,0x1174,0x1132,0x1931,0x1931,0x2151,0x2130,0x2130,0x2110,0x2110,0x210F,0x1910,0x2131,0x1931,0x1932,0x1132,0x21D5,0x2A37,0x21F6,0x1994,0x1112,0x1111,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2110,0x2910,0x2930,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x210F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2151,0x2131,0x1931,0x1931,0x1932,0x1932,0x1953,0x21B5,0x21F7,0x21F7,0x19B6,0x1994,0x1112,0x1132,0x1952,0x1952,0x1932,0x1931,0x1932,0x1932,0x1132,0x1153,0x1154,0x19D7,0x1A18,0x19F7,0x19B7,0x1134,0x1912,0x2111,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2910,0x2910,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x2130,0x2130,0x2131,0x1911,0x1912,0x1912,0x1133,0x1153,0x1174,0x1174,0x1174,0x1154,0x0955,0x0955,0x0956,0x11B7,0x11F8,0x11F8,0x19F8,0x11B6,0x0954,0x1113,0x10F1,0x1911,0x2131,0x2131,0x2110,0x2110,0x2130,0x2110,0x210F,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2131,0x1911,0x1932,0x1133,0x1154,0x19B6,0x19F7,0x19F7,0x19F7,0x19B5,0x1153,0x1112,0x10F1,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2131,0x2111,0x1911,0x1111,0x1932,0x1133,0x1974,0x19B6,0x19D6,0x19F6,0x19D6,0x1995,0x1133,0x1132,0x1932,0x1932,0x1931,0x1931,0x1931,0x1932,0x1132,0x1133,0x1174,0x19D6,0x19F7,0x19F7,0x19D7,0x1996,0x1154,0x1133,0x1112,0x1912,0x1912,0x1932,0x1932,0x1912,0x1133,0x1153,0x1175,0x21F7,0x2217,0x19F7,0x19B6,0x1154,0x1133,0x1112,0x1912,0x1931,0x2151,0x2151,0x2130,0x210F,0x210F,0x210F,0x2930,0x2930,0x290F,0x290F,0x210F,0x2930,0x2910,0x2910,0x210F,0x2910,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F, + 0x11F8,0x11D8,0x11B7,0x1175,0x1154,0x1132,0x1931,0x1931,0x2131,0x2110,0x2130,0x2930,0x2110,0x2130,0x2110,0x2131,0x2131,0x2131,0x1911,0x1112,0x1133,0x1154,0x19B6,0x19D7,0x21F8,0x21D7,0x1996,0x1154,0x1132,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2110,0x212F,0x2930,0x290F,0x290F,0x210F,0x290F,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2910,0x290F,0x290F,0x2910,0x2910,0x210F,0x290F,0x2110,0x210F,0x290F,0x210F,0x290F,0x292F,0x212F,0x2110,0x2110,0x290F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x2910,0x2930,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2110,0x1911,0x1911,0x1953,0x1175,0x1A18,0x09D8,0x09D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01B9,0x09D9,0x09F8,0x1A18,0x11B6,0x0933,0x1152,0x1131,0x1951,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x2110,0x2110,0x2110,0x2111,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2131,0x2130,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1911,0x1911,0x1132,0x1133,0x1175,0x19D6,0x19F7,0x19F7,0x19D6,0x1996,0x1155,0x0934,0x0913,0x0913,0x0934,0x0954,0x1175,0x19B6,0x19F7,0x19F7,0x1A17,0x19F7,0x11F6,0x19F6,0x19F6,0x19F6,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19D6,0x19D6,0x21F7,0x21F7,0x21F6,0x2217,0x21F7,0x21F7,0x21F7,0x21F7,0x21F7,0x2217,0x21F7,0x2217,0x21F7,0x2217,0x19F7,0x21F7,0x21F7,0x21F7,0x21F7,0x2217,0x2217,0x2217,0x21F7,0x2217,0x21F7,0x2217,0x2217,0x2217,0x2217,0x2217,0x21F7,0x2217,0x2217,0x2217,0x2217,0x2217,0x21F6,0x2217,0x2217,0x2217,0x2217,0x2217,0x2217,0x19F6,0x19F6,0x1A16,0x19F6,0x19F6,0x19F6,0x19F6,0x19F6,0x19F6,0x19F6,0x11D6,0x11D7,0x11D7,0x09D7,0x09D8,0x01D9,0x01D9,0x01B9,0x01B9,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01FB,0x01DA,0x01FB,0x01DA,0x01FB,0x01DA,0x01FB,0x01DA,0x01FB,0x01DA,0x01DB,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x01D9,0x09F9,0x11F8,0x11D7,0x1175,0x1112,0x1911,0x2131,0x2131,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2910,0x2910,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x2930,0x210F,0x2910,0x210F,0x2930,0x290F,0x290F,0x2930,0x2130,0x2110,0x2130,0x2130,0x2131,0x1932,0x1133,0x19D7,0x1A18,0x11D7,0x11B6,0x1133,0x1932,0x2131,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x292F,0x292F,0x2930,0x2130,0x2130,0x2131,0x1911,0x1112,0x1154,0x19D6,0x19F7,0x19B6,0x1995,0x1973,0x1111,0x2131,0x2130,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1133,0x1175,0x11B7,0x09D8,0x01B9,0x01B9,0x01D9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01D9,0x09D9,0x09F9,0x11D8,0x1195,0x1112,0x2131,0x2110,0x2110,0x2930,0x2930,0x2110,0x2930,0x210F,0x210F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x210F,0x2910,0x2910,0x292F,0x210F,0x2910,0x2110,0x210F,0x212F,0x290F,0x290F,0x290F,0x292F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2930,0x210F,0x292F,0x290F,0x292F,0x210F,0x212F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2111,0x2131,0x1932,0x1112,0x1133,0x21D6,0x21F7,0x2218,0x19B6,0x0914,0x08F3,0x1112,0x1112,0x1952,0x1931,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1112,0x1154,0x19B6,0x21D7,0x2218,0x21D7,0x19B6,0x1134,0x1113,0x1112,0x1931,0x2131,0x2131,0x2130,0x2110,0x2110,0x210F,0x290F,0x290F,0x2930,0x290F,0x292F,0x292F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2930,0x210F,0x210F,0x2130,0x2130,0x2131,0x1911,0x10F2,0x19B7,0x19F8,0x19F9,0x19B7,0x10F2,0x1931,0x1910,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x2910,0x290F,0x2910,0x2910,0x210F,0x210F,0x2110,0x2110,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x210F,0x210F,0x2930,0x292F,0x290F,0x290F,0x210F,0x290F,0x2930,0x212F,0x210F,0x210F,0x292F,0x212F,0x2930,0x2930,0x2130,0x2131,0x1931,0x1112,0x1133,0x1155,0x21F7,0x21D7,0x21F7,0x1995,0x1933,0x1932,0x2131,0x2110,0x2110,0x2930,0x2930,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x292F,0x210F,0x212F,0x292F,0x292F,0x292F,0x210F,0x212F,0x2130,0x212F,0x2130,0x212F,0x212F,0x210F,0x2130,0x2930,0x2130,0x2110,0x20EF,0x2110,0x2951,0x2151,0x2131,0x1911,0x1131,0x0932,0x1194,0x11B5,0x19F7,0x2217,0x19B5,0x1153,0x1132,0x1931,0x2131,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x1911,0x1952,0x1132,0x1112,0x19B5,0x2A17,0x21D6,0x19B5,0x1112,0x1932,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x2930,0x2130,0x2130,0x210F,0x2930,0x2930,0x290F,0x2910,0x2930,0x2110,0x2110,0x2110,0x2930,0x210F,0x2110,0x2930,0x212F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1132,0x1974,0x19B6,0x21F7,0x19B6,0x1995,0x1153,0x1132,0x1952,0x1952,0x1931,0x1931,0x1932,0x1932,0x1952,0x1153,0x0954,0x19B6,0x11D7,0x2218,0x19B7,0x1154,0x1112,0x1911,0x2111,0x2110,0x2110,0x210F,0x210F,0x290F,0x212F,0x2930,0x290F,0x290F,0x212F,0x2930,0x212F,0x212F,0x210F,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x2930,0x2130,0x2110,0x2111,0x1911,0x1911,0x1932,0x1132,0x1132,0x1953,0x1153,0x1154,0x1154,0x1155,0x0935,0x0975,0x11B7,0x19F8,0x1A18,0x1A17,0x11D6,0x0954,0x0912,0x1112,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x2111,0x1931,0x1112,0x1153,0x1154,0x1195,0x19F7,0x19F7,0x21F7,0x19D6,0x1154,0x1112,0x1912,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x1911,0x1911,0x10F2,0x1112,0x1133,0x1995,0x19B6,0x19D6,0x19F7,0x19D6,0x1995,0x1153,0x1132,0x1112,0x1932,0x1932,0x1931,0x1952,0x1932,0x1132,0x1153,0x1174,0x19D6,0x19F7,0x19F7,0x19D6,0x1995,0x1154,0x1133,0x1112,0x1912,0x1912,0x1932,0x1932,0x1932,0x1112,0x1154,0x1195,0x19F6,0x2217,0x19F7,0x19D6,0x1155,0x1133,0x1112,0x1112,0x1932,0x2131,0x2131,0x2130,0x210F,0x210F,0x210F,0x212F,0x2130,0x2930,0x290F,0x2930,0x2910,0x2910,0x290F,0x290F,0x2930,0x2910,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x292F, + 0x11F9,0x11F8,0x11D8,0x11B7,0x1175,0x1153,0x1132,0x1931,0x1911,0x2131,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2131,0x2151,0x2131,0x1911,0x1112,0x1133,0x1154,0x1996,0x21F7,0x21F8,0x19D7,0x19B6,0x0933,0x1133,0x1952,0x1931,0x1930,0x2110,0x2110,0x2130,0x212F,0x212F,0x292F,0x212F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x2110,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x212F,0x2930,0x2930,0x290F,0x210F,0x2930,0x2930,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x2930,0x290F,0x2930,0x2110,0x2110,0x2110,0x2110,0x292F,0x212F,0x210F,0x210F,0x212F,0x292F,0x290F,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1953,0x1134,0x19B7,0x11D8,0x09D9,0x09D9,0x09D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01B9,0x01DA,0x01DA,0x01D9,0x01D9,0x09D9,0x11F9,0x09D8,0x19D7,0x1175,0x1153,0x1152,0x1952,0x1951,0x2151,0x2151,0x2130,0x2130,0x212F,0x212F,0x2930,0x2930,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2131,0x1911,0x1111,0x1112,0x1133,0x1174,0x19B6,0x19D7,0x19B7,0x19D7,0x1196,0x1154,0x1154,0x0913,0x1134,0x0933,0x1154,0x1174,0x1195,0x11B5,0x11D6,0x19F6,0x19F6,0x1A17,0x1A17,0x19F6,0x19F6,0x19F6,0x19D6,0x19D6,0x19D6,0x19B6,0x19D6,0x19D6,0x19B6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19B6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x21D6,0x19D6,0x21D6,0x21D6,0x19D6,0x21F6,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19F6,0x19D6,0x19D6,0x19D6,0x19D6,0x19B5,0x19D6,0x19D5,0x11B5,0x19D5,0x19D6,0x19F6,0x19F6,0x19F6,0x11D6,0x11D6,0x19F7,0x11D7,0x09B7,0x09D8,0x09F9,0x01D9,0x01DA,0x01B9,0x01B9,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01FB,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x021B,0x01FA,0x01FA,0x01FA,0x01DA,0x01D9,0x09F9,0x09F9,0x19F8,0x1175,0x1112,0x1911,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x1911,0x1111,0x0933,0x19D6,0x19F8,0x19F7,0x1196,0x1132,0x1111,0x1911,0x2110,0x2110,0x2130,0x2130,0x2930,0x292F,0x292F,0x210F,0x210F,0x2930,0x2130,0x2131,0x1931,0x1132,0x1154,0x19F6,0x19F7,0x19D6,0x1995,0x1974,0x1112,0x2131,0x2131,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1132,0x11B5,0x1A18,0x09F9,0x09D9,0x01B9,0x01B9,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01B9,0x01D9,0x09F9,0x11F8,0x19B6,0x10F2,0x1911,0x2111,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x212F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x210F,0x2910,0x290F,0x290F,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2130,0x2130,0x210F,0x2130,0x2110,0x2930,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2111,0x1931,0x1912,0x1112,0x19B5,0x2217,0x21F7,0x21D7,0x1134,0x08F3,0x10F2,0x1132,0x1931,0x1951,0x2131,0x2130,0x2130,0x2130,0x210F,0x212F,0x2950,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2151,0x1931,0x1952,0x1952,0x1113,0x1154,0x1995,0x21D7,0x2218,0x21F7,0x19B6,0x1154,0x1113,0x1112,0x1932,0x1931,0x2151,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2131,0x1931,0x1113,0x19D7,0x1A19,0x1A19,0x19B7,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x212F,0x212F,0x290F,0x290F,0x212F,0x210F,0x290F,0x290F,0x290F,0x2110,0x2130,0x2130,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x1931,0x1932,0x1933,0x1134,0x21D7,0x21D7,0x21D7,0x21D6,0x1954,0x1912,0x1932,0x2131,0x2131,0x2130,0x2110,0x2930,0x2110,0x2910,0x210F,0x2930,0x2930,0x2110,0x2130,0x292F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2930,0x2130,0x20F0,0x20F0,0x2110,0x2110,0x2130,0x2130,0x2131,0x1931,0x1132,0x1153,0x0954,0x19B6,0x2238,0x21F7,0x1994,0x1132,0x1932,0x1931,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x1931,0x1932,0x1932,0x1112,0x21B5,0x2A17,0x21F6,0x1974,0x1112,0x1932,0x1931,0x1931,0x2131,0x2110,0x2130,0x2110,0x2930,0x2110,0x210F,0x2130,0x210F,0x210F,0x212F,0x210F,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x20EF,0x20EF,0x210F,0x2930,0x2930,0x292F,0x292F,0x210F,0x212F,0x292F,0x210F,0x2130,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1112,0x1112,0x1154,0x19B6,0x19B6,0x19B6,0x1174,0x1132,0x1952,0x1932,0x1952,0x1931,0x1931,0x1931,0x1932,0x1153,0x0933,0x1196,0x19D7,0x19F8,0x19B7,0x1154,0x1112,0x1931,0x2111,0x2110,0x2110,0x210F,0x210F,0x2910,0x210F,0x212F,0x290F,0x290F,0x2930,0x212F,0x2130,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2110,0x2110,0x2130,0x2110,0x2111,0x1911,0x1911,0x1932,0x1932,0x1932,0x1932,0x1953,0x1153,0x1974,0x1154,0x0954,0x0975,0x11D7,0x1A18,0x1A18,0x1A17,0x11B6,0x1133,0x0912,0x1111,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x212F,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2151,0x1932,0x1932,0x1132,0x1154,0x1195,0x19D6,0x2217,0x19F7,0x1995,0x1134,0x08F2,0x1112,0x1952,0x2151,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2131,0x2131,0x2131,0x2132,0x1932,0x1112,0x1113,0x1134,0x1154,0x1996,0x19D7,0x21F7,0x19D6,0x1195,0x1174,0x1132,0x1111,0x1111,0x1932,0x1932,0x1952,0x1932,0x1953,0x1174,0x1174,0x11B6,0x19F7,0x2217,0x19D6,0x1995,0x1154,0x1153,0x1132,0x1912,0x1932,0x1932,0x1932,0x1912,0x1133,0x1154,0x1174,0x19D6,0x2217,0x2217,0x19D6,0x1174,0x1134,0x1113,0x1932,0x1931,0x2131,0x2131,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130, + 0x09D9,0x09D8,0x11F9,0x11D8,0x11B6,0x1175,0x1153,0x1132,0x1931,0x1931,0x2131,0x2131,0x2131,0x2110,0x2130,0x2110,0x2110,0x2131,0x2130,0x1911,0x1911,0x1112,0x1133,0x1975,0x19B6,0x21F7,0x21F7,0x19F7,0x19B6,0x1154,0x1133,0x1132,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x210F,0x292F,0x292F,0x212F,0x2930,0x2930,0x2130,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2930,0x2110,0x2910,0x290F,0x290F,0x2910,0x210F,0x2110,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x2110,0x2130,0x2130,0x2131,0x1931,0x1952,0x0912,0x1175,0x19F8,0x11D8,0x09D8,0x09D9,0x09D9,0x09D9,0x09FA,0x01B9,0x01D9,0x09DA,0x01D9,0x09D9,0x01D9,0x09D8,0x09B7,0x11B7,0x1195,0x1154,0x1132,0x1952,0x1951,0x2151,0x2150,0x2150,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x210F,0x2110,0x2130,0x2110,0x2110,0x2930,0x2110,0x2130,0x2930,0x2110,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2930,0x2110,0x2130,0x2110,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x1910,0x1911,0x1111,0x1112,0x1153,0x1174,0x1996,0x19D7,0x19B7,0x19D7,0x1996,0x1155,0x0934,0x0933,0x0913,0x1134,0x1154,0x1154,0x1174,0x1194,0x11B5,0x1194,0x11B5,0x11B5,0x11B5,0x11B5,0x1195,0x1174,0x1995,0x1194,0x1995,0x1995,0x1194,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1175,0x1194,0x1995,0x1995,0x1175,0x1195,0x1995,0x1195,0x1195,0x1995,0x1995,0x1194,0x1194,0x1174,0x1174,0x1194,0x1995,0x1174,0x1974,0x1174,0x1174,0x1174,0x1194,0x1174,0x1174,0x1195,0x1195,0x1174,0x1194,0x1995,0x1995,0x1194,0x1194,0x1194,0x1994,0x1994,0x1994,0x1194,0x19B4,0x1995,0x1995,0x19B5,0x1194,0x11B5,0x11B5,0x11B5,0x11B5,0x11B6,0x09B6,0x09B7,0x0A19,0x01F9,0x01D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01D9,0x09D8,0x11D8,0x1175,0x1112,0x1932,0x2151,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x292F,0x292F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2110,0x210F,0x2910,0x2910,0x210F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x2131,0x1911,0x1912,0x1133,0x11B6,0x1A18,0x19F8,0x1196,0x1133,0x1911,0x2131,0x2110,0x2130,0x2930,0x2110,0x2930,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2151,0x1931,0x1132,0x1154,0x19D6,0x2217,0x19B6,0x19B5,0x1953,0x10F1,0x2131,0x2151,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x1911,0x1132,0x1195,0x1A38,0x09F8,0x01D9,0x01B9,0x01DA,0x01DA,0x01DA,0x01FA,0x01B9,0x01DA,0x01DA,0x09D9,0x11F9,0x19F8,0x1175,0x1112,0x2131,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x2130,0x2110,0x2910,0x2110,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x290F,0x290F,0x210F,0x2910,0x290F,0x210F,0x2110,0x2110,0x210F,0x290F,0x290F,0x210F,0x212F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x292F,0x290F,0x292F,0x292F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2110,0x2111,0x1932,0x1111,0x1133,0x21F6,0x2217,0x2A18,0x1155,0x08F3,0x10F2,0x1112,0x1931,0x1911,0x1910,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2950,0x292F,0x2950,0x212F,0x212F,0x210F,0x1930,0x1931,0x1931,0x1932,0x1153,0x1133,0x1995,0x21F7,0x21F7,0x21F8,0x1996,0x1154,0x1133,0x1932,0x1911,0x1931,0x2131,0x2130,0x2130,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x212F,0x210F,0x2110,0x212F,0x210F,0x210F,0x2930,0x2110,0x2131,0x1911,0x1112,0x19D7,0x1A18,0x19F9,0x19B7,0x0912,0x1931,0x2151,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2110,0x2930,0x2930,0x2110,0x2110,0x2130,0x2930,0x2130,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x292F,0x210F,0x290F,0x2930,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x212F,0x2130,0x2130,0x1930,0x1931,0x1932,0x1133,0x1175,0x19B7,0x19D7,0x21D7,0x1996,0x1133,0x1912,0x1931,0x2131,0x2130,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x2930,0x2930,0x2110,0x210F,0x212F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x210F,0x2110,0x2130,0x2130,0x1931,0x1931,0x1132,0x1133,0x1175,0x21F7,0x2217,0x19B5,0x1133,0x1112,0x1931,0x2131,0x2110,0x2130,0x2110,0x2130,0x1910,0x1911,0x1931,0x1132,0x1132,0x19B5,0x2A17,0x21F6,0x1994,0x1112,0x1112,0x1931,0x2131,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x210F,0x2930,0x210F,0x2110,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2110,0x210F,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x20EF,0x210F,0x290F,0x210F,0x290F,0x292F,0x292F,0x290F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2131,0x1931,0x1911,0x1112,0x1133,0x19B6,0x19D7,0x19B6,0x19B5,0x1153,0x1152,0x1952,0x1931,0x1931,0x2131,0x1931,0x1931,0x1952,0x0913,0x1175,0x19F7,0x19D8,0x19D7,0x1155,0x1112,0x1911,0x2111,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x210F,0x210F,0x212F,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x290F,0x292F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2930,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2130,0x2110,0x2110,0x2131,0x1911,0x1911,0x1911,0x1911,0x1932,0x1952,0x1953,0x1133,0x1133,0x0933,0x0954,0x19F7,0x1A17,0x1A17,0x2217,0x1195,0x1154,0x1112,0x1111,0x1931,0x2131,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x212F,0x210F,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2950,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1132,0x1153,0x1154,0x1195,0x19D6,0x21F7,0x21F7,0x1195,0x1154,0x0912,0x1132,0x1952,0x1951,0x1930,0x1930,0x1951,0x1930,0x1930,0x1930,0x1910,0x2130,0x1930,0x2131,0x2131,0x1911,0x2111,0x2111,0x2111,0x2131,0x2131,0x2131,0x1911,0x2131,0x1931,0x1912,0x1112,0x1112,0x1133,0x1134,0x1175,0x19B6,0x19F7,0x19F7,0x19D6,0x19B5,0x1974,0x1133,0x1112,0x1932,0x1931,0x1932,0x1912,0x1932,0x1953,0x1154,0x1174,0x11B6,0x19F7,0x19F7,0x19D6,0x1995,0x1154,0x1133,0x1132,0x1112,0x1932,0x1932,0x1932,0x1932,0x1133,0x1133,0x1175,0x19D6,0x2217,0x2217,0x19D6,0x1154,0x0933,0x1133,0x1132,0x1932,0x1931,0x2131,0x2130,0x2110,0x210F,0x210F,0x210F,0x2930,0x2130,0x210F,0x2110,0x2110,0x210F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130, + 0x09D8,0x09D8,0x09D8,0x11F8,0x11F8,0x1196,0x1175,0x1133,0x1132,0x1932,0x1911,0x2111,0x2131,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2131,0x2131,0x1931,0x1953,0x1133,0x1174,0x19B6,0x19F7,0x1A17,0x2238,0x11B6,0x0933,0x1133,0x1132,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x212F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x292F,0x292F,0x2930,0x2110,0x2930,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x2910,0x210F,0x210F,0x212F,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x2930,0x2910,0x210F,0x2930,0x2910,0x290F,0x2910,0x2910,0x2910,0x2110,0x2910,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x2930,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2130,0x2130,0x2110,0x1911,0x1911,0x10F1,0x0933,0x19F7,0x11F7,0x09B7,0x09D8,0x09B8,0x11F9,0x09B9,0x09D9,0x09D9,0x09B9,0x09B8,0x09B8,0x09F8,0x11F8,0x11F8,0x19D7,0x0954,0x1133,0x1952,0x1951,0x2151,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2110,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x2130,0x210F,0x2110,0x210F,0x210F,0x2110,0x2930,0x210F,0x2110,0x210F,0x2110,0x2130,0x2110,0x2110,0x2930,0x210F,0x210F,0x2110,0x2130,0x2110,0x210F,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2131,0x1931,0x1931,0x1112,0x1133,0x1154,0x1996,0x19B7,0x19D7,0x19D7,0x1175,0x1155,0x0934,0x0933,0x1133,0x1133,0x1153,0x1153,0x1153,0x1153,0x0953,0x0953,0x0953,0x0953,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1133,0x1153,0x1153,0x1133,0x1153,0x1133,0x1133,0x1153,0x1153,0x1153,0x1153,0x1132,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x1132,0x1132,0x1133,0x1133,0x1153,0x1153,0x1153,0x1153,0x1154,0x0954,0x0975,0x0176,0x09D8,0x09D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01D9,0x09F9,0x11F9,0x11F8,0x1175,0x10F2,0x1912,0x2131,0x2131,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x2910,0x2930,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x290F,0x2930,0x2130,0x2110,0x2110,0x2130,0x1931,0x1932,0x1133,0x19D6,0x19F8,0x11D7,0x1196,0x1133,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2930,0x292F,0x210F,0x292F,0x210F,0x2130,0x2130,0x2131,0x1911,0x1132,0x1154,0x19D6,0x19F7,0x11B5,0x1995,0x1953,0x1111,0x1911,0x2130,0x2110,0x2930,0x210F,0x2110,0x2110,0x2130,0x2931,0x2131,0x1911,0x1933,0x1174,0x11D7,0x09D8,0x09D9,0x01B9,0x01B9,0x01B9,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x09F9,0x1219,0x19F8,0x1154,0x1112,0x1911,0x2110,0x2130,0x2930,0x2110,0x2110,0x210F,0x210F,0x2930,0x2930,0x2910,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x290F,0x210F,0x290F,0x2930,0x210F,0x2930,0x2110,0x2910,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x290F,0x210F,0x290F,0x290F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2131,0x2152,0x1911,0x08D1,0x1954,0x2A17,0x2217,0x21D7,0x08F3,0x08D2,0x1953,0x2152,0x1911,0x1910,0x2130,0x2130,0x2130,0x2130,0x212F,0x190F,0x210F,0x210F,0x2930,0x2930,0x2930,0x212F,0x2110,0x1930,0x1951,0x1932,0x1133,0x1133,0x19B6,0x21F7,0x2218,0x21F7,0x1996,0x1134,0x1112,0x1112,0x1932,0x2131,0x2151,0x2130,0x210F,0x210F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x2130,0x2131,0x1911,0x1113,0x19D7,0x1A18,0x1A19,0x19B6,0x1112,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x2130,0x212F,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x210F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x2930,0x290F,0x210F,0x210F,0x2930,0x2910,0x2930,0x2130,0x2110,0x2131,0x1931,0x1932,0x1133,0x1174,0x19B6,0x19D7,0x21F8,0x21D7,0x1974,0x1132,0x1911,0x1911,0x2131,0x2130,0x2130,0x2110,0x2930,0x2930,0x210F,0x210F,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x2130,0x210F,0x210F,0x210F,0x292F,0x2930,0x2130,0x2110,0x2110,0x2130,0x2930,0x2930,0x290F,0x210F,0x2110,0x2130,0x2131,0x1931,0x1132,0x1133,0x1175,0x19D6,0x2217,0x21F6,0x1153,0x1132,0x1911,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x1910,0x1911,0x1132,0x1112,0x19B5,0x2A37,0x21F6,0x19B5,0x1112,0x1932,0x1931,0x2131,0x2110,0x2110,0x2130,0x2110,0x2110,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x290F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x212F,0x2930,0x2130,0x2151,0x2131,0x1911,0x1912,0x1133,0x1975,0x19B6,0x19B6,0x2217,0x1974,0x1152,0x1951,0x1911,0x1910,0x1931,0x2151,0x1931,0x1132,0x1113,0x1154,0x19F7,0x19F8,0x19F8,0x1175,0x1112,0x1911,0x2110,0x2110,0x2130,0x2110,0x2930,0x2910,0x2930,0x2930,0x212F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x2930,0x2910,0x2910,0x2110,0x2910,0x2910,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2930,0x2130,0x2110,0x2110,0x1910,0x1911,0x1931,0x1932,0x1932,0x1932,0x1932,0x1132,0x0912,0x0933,0x11B5,0x1A17,0x2238,0x2217,0x1995,0x1133,0x1112,0x1932,0x2152,0x2131,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x212F,0x2110,0x2110,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x212F,0x210F,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2931,0x2131,0x2131,0x2131,0x1932,0x1132,0x1153,0x1154,0x1195,0x19D6,0x19D7,0x19D7,0x19B6,0x1154,0x0912,0x0912,0x1111,0x1131,0x1111,0x1131,0x1111,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x10F1,0x10F1,0x10F2,0x0912,0x1133,0x1154,0x1195,0x19B6,0x19F7,0x19D7,0x19F7,0x19B6,0x1174,0x1133,0x1112,0x1111,0x1931,0x1952,0x1912,0x1112,0x1132,0x1133,0x1174,0x1195,0x19F7,0x19F7,0x19D6,0x19B5,0x1173,0x1153,0x1112,0x1932,0x1932,0x1952,0x1952,0x1933,0x1133,0x1153,0x1195,0x21F7,0x2217,0x2218,0x19B6,0x1154,0x1133,0x1112,0x1111,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x2930,0x2130,0x2110,0x2110,0x2110,0x2130,0x210F,0x2930,0x290F,0x210F,0x290F,0x290F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130, + 0x09D8,0x09B8,0x09D8,0x09F8,0x11F8,0x11D7,0x11B6,0x1175,0x1153,0x1132,0x1932,0x1911,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x2131,0x2131,0x2152,0x1932,0x1932,0x1133,0x1174,0x19B6,0x2218,0x1A17,0x2218,0x1195,0x0933,0x1153,0x1932,0x1911,0x2131,0x2131,0x2130,0x2130,0x212F,0x212F,0x292F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x2930,0x2110,0x2910,0x2910,0x210F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2110,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x2910,0x2930,0x210F,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x290F,0x2930,0x290F,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x1911,0x1911,0x0912,0x11B5,0x19F6,0x11B6,0x11D7,0x11B7,0x11B8,0x09B8,0x0998,0x09B8,0x09B8,0x09B7,0x09B7,0x11D7,0x1A18,0x19F7,0x1174,0x1132,0x1932,0x1931,0x1930,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x292F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x2930,0x210F,0x210F,0x2910,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x212F,0x210F,0x2130,0x210F,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x1931,0x1911,0x1112,0x1133,0x1154,0x19B6,0x19B7,0x19B7,0x19B7,0x1996,0x1154,0x1134,0x1133,0x1133,0x1153,0x1132,0x1153,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1152,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1932,0x1132,0x1111,0x1112,0x1932,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1133,0x0934,0x0175,0x09F8,0x01D8,0x01F9,0x01D9,0x01B9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01DA,0x01FA,0x01F9,0x0A19,0x11F8,0x1175,0x1112,0x1932,0x2131,0x2131,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x2930,0x2930,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2131,0x1932,0x1133,0x19D6,0x11F7,0x11D7,0x11B6,0x1133,0x1932,0x2131,0x2110,0x2110,0x2130,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2131,0x1911,0x1112,0x1154,0x19B6,0x21F7,0x19B6,0x19B5,0x1973,0x1112,0x1911,0x2130,0x2130,0x2930,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x1911,0x1932,0x1154,0x11B6,0x11F8,0x09F9,0x01D9,0x01B9,0x01B9,0x01DA,0x01DA,0x01D9,0x01DA,0x01D9,0x09F9,0x1219,0x11B6,0x1133,0x1912,0x1911,0x2131,0x2130,0x2130,0x2930,0x2910,0x2930,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x210F,0x290F,0x210F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910,0x2910,0x2930,0x210F,0x210F,0x2130,0x2110,0x2110,0x2930,0x2110,0x2910,0x2110,0x2110,0x2910,0x290F,0x290F,0x290F,0x2930,0x212F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2151,0x1911,0x08D1,0x1974,0x2A17,0x21F7,0x19D6,0x08D3,0x08D2,0x2153,0x1931,0x1910,0x2110,0x2110,0x2130,0x2110,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x1931,0x1952,0x1132,0x1153,0x1175,0x21D7,0x21F7,0x21F7,0x1996,0x1954,0x1113,0x1912,0x1911,0x1911,0x2131,0x2130,0x2130,0x210F,0x210F,0x210F,0x2930,0x290F,0x2910,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x290F,0x292F,0x292F,0x210F,0x290F,0x210F,0x210F,0x2110,0x2130,0x2131,0x1912,0x1113,0x19D7,0x1A19,0x1A19,0x19D7,0x1112,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x210F,0x2130,0x212F,0x210F,0x290F,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x2930,0x2130,0x212F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2930,0x292F,0x212F,0x292F,0x292F,0x212F,0x292F,0x292F,0x212F,0x290F,0x210F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2131,0x1931,0x1932,0x1132,0x1154,0x19B5,0x21F7,0x2218,0x21D7,0x1975,0x1953,0x1932,0x1911,0x1910,0x2131,0x2130,0x2130,0x210F,0x2930,0x290F,0x210F,0x210F,0x212F,0x2130,0x2930,0x210F,0x212F,0x292F,0x212F,0x210F,0x212F,0x292F,0x290F,0x290F,0x2930,0x2130,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x210F,0x210F,0x2130,0x2930,0x2930,0x210F,0x290F,0x2910,0x2130,0x2130,0x1931,0x1931,0x1112,0x1154,0x19B6,0x2238,0x19F6,0x1153,0x1112,0x1932,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x1911,0x1911,0x1132,0x1132,0x19B5,0x2A37,0x21F6,0x19B5,0x1112,0x1932,0x1952,0x1931,0x2130,0x2110,0x2130,0x2110,0x2930,0x2930,0x2930,0x212F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x210F,0x2930,0x212F,0x210F,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2930,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x212F,0x292F,0x292F,0x2930,0x2130,0x2131,0x2131,0x1932,0x1113,0x1154,0x19B6,0x19B6,0x21F6,0x1994,0x1111,0x1931,0x1931,0x1931,0x1931,0x2131,0x1911,0x1932,0x1133,0x1154,0x19F7,0x19F8,0x19F8,0x1175,0x1112,0x1911,0x2110,0x2130,0x2110,0x2930,0x2930,0x2910,0x2110,0x2110,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x2930,0x2110,0x2130,0x2110,0x2110,0x2111,0x2111,0x2111,0x1911,0x1932,0x1112,0x1112,0x1112,0x1133,0x19B6,0x21F7,0x2237,0x2217,0x1995,0x1133,0x1112,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2930,0x2930,0x2930,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1932,0x1133,0x1174,0x1195,0x19D6,0x19F7,0x21F7,0x19D7,0x1154,0x0933,0x0932,0x0932,0x0932,0x0932,0x0932,0x1132,0x1132,0x1152,0x1152,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1133,0x0933,0x1153,0x1154,0x1195,0x19D6,0x19F7,0x19F7,0x19F7,0x19D7,0x1195,0x1994,0x1153,0x1112,0x1131,0x1932,0x1952,0x1932,0x1112,0x1112,0x1133,0x1154,0x1195,0x19F7,0x1A17,0x1A17,0x19B5,0x1174,0x1132,0x1132,0x1932,0x1911,0x1932,0x1953,0x1953,0x1133,0x1154,0x1195,0x19D7,0x2218,0x21F7,0x21F7,0x1174,0x1113,0x1112,0x1111,0x1931,0x2131,0x2130,0x2110,0x2110,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x292F,0x292F,0x210F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110, + 0x09B8,0x09B7,0x09D8,0x09D8,0x11F8,0x11F8,0x11D8,0x11B6,0x1175,0x1133,0x1933,0x1932,0x1931,0x2131,0x2131,0x2110,0x2110,0x2110,0x2130,0x2131,0x2151,0x2131,0x1910,0x1911,0x1111,0x1132,0x1174,0x19B6,0x19D7,0x19F7,0x21F7,0x1175,0x0933,0x1133,0x1932,0x1931,0x2131,0x2130,0x2130,0x2110,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2910,0x2910,0x210F,0x210F,0x2910,0x2110,0x2930,0x2110,0x2910,0x2930,0x2930,0x290F,0x210F,0x2910,0x2910,0x2910,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x2930,0x210F,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x2910,0x2910,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x2130,0x2930,0x212F,0x210F,0x212F,0x212F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x1951,0x1132,0x1153,0x1994,0x1195,0x19D6,0x19D7,0x19D7,0x11D7,0x11D7,0x19F7,0x19F7,0x19D7,0x19F7,0x19D6,0x19B5,0x1974,0x1132,0x1932,0x1911,0x1910,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x20EF,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2910,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2131,0x1931,0x1931,0x1112,0x1113,0x1154,0x1175,0x19B7,0x19F7,0x19D7,0x19D6,0x1154,0x0933,0x1133,0x0912,0x1132,0x1132,0x1132,0x1132,0x1152,0x1952,0x1952,0x1932,0x1932,0x1931,0x1911,0x1932,0x1932,0x1932,0x1912,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x1131,0x1131,0x1131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1952,0x1131,0x1931,0x1931,0x1931,0x1931,0x1131,0x1931,0x1931,0x1111,0x1131,0x1931,0x1911,0x1932,0x1952,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1932,0x1932,0x2152,0x1932,0x1932,0x1932,0x1931,0x1931,0x1952,0x1932,0x1952,0x1132,0x1113,0x0913,0x0155,0x09D8,0x09F9,0x09F9,0x01D9,0x01D9,0x01FA,0x01DA,0x01B9,0x01FA,0x01B9,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FB,0x01DA,0x01FA,0x01FA,0x01F9,0x01D9,0x09F8,0x11D8,0x1175,0x1133,0x2152,0x2131,0x2131,0x2110,0x210F,0x212F,0x210F,0x290F,0x210F,0x210F,0x2910,0x2110,0x2930,0x2110,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x2110,0x2930,0x2910,0x290F,0x2930,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x290F,0x2930,0x2930,0x290F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x1911,0x1932,0x1133,0x19D7,0x1A18,0x19F8,0x1195,0x1133,0x1912,0x2132,0x2131,0x2110,0x210F,0x2130,0x212F,0x210F,0x210F,0x292F,0x212F,0x2930,0x2130,0x2131,0x1911,0x1112,0x1154,0x19B6,0x19D7,0x19B6,0x19B5,0x1153,0x1112,0x2131,0x2131,0x2130,0x2110,0x2910,0x2910,0x2930,0x2130,0x2130,0x2110,0x1911,0x1932,0x1154,0x1196,0x11F8,0x11F9,0x09D9,0x01D9,0x01B9,0x01B9,0x01B9,0x01DA,0x09FA,0x0A1A,0x1219,0x1A18,0x1175,0x1132,0x1932,0x2131,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x2910,0x2110,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x292F,0x210F,0x2910,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2930,0x2910,0x2910,0x290F,0x290F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1930,0x2131,0x1931,0x1932,0x08F1,0x1994,0x21F6,0x21F7,0x19B6,0x08D2,0x1112,0x1932,0x1911,0x2130,0x2130,0x210F,0x2930,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x2130,0x1931,0x1931,0x1132,0x1133,0x1154,0x21D7,0x21F7,0x21D7,0x19B6,0x1154,0x1112,0x1112,0x1931,0x2131,0x2131,0x2110,0x2130,0x212F,0x210F,0x210F,0x212F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x210F,0x2910,0x2110,0x2130,0x2110,0x1911,0x1113,0x19D7,0x1A18,0x1A19,0x19D7,0x1112,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2930,0x2930,0x2930,0x2910,0x210F,0x2130,0x210F,0x2130,0x2130,0x2930,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x2930,0x2130,0x2130,0x2110,0x2930,0x210F,0x210F,0x2930,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x292F,0x2930,0x2930,0x2110,0x2110,0x1910,0x1931,0x1932,0x1132,0x1153,0x1995,0x21F7,0x2218,0x21F7,0x1154,0x1113,0x1953,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x290F,0x210F,0x290F,0x210F,0x292F,0x212F,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x212F,0x2110,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2130,0x1931,0x1931,0x1112,0x1133,0x19B6,0x2A38,0x21F6,0x1154,0x08F1,0x1111,0x1931,0x1930,0x2130,0x2110,0x2130,0x1910,0x1931,0x1931,0x1932,0x1132,0x19B5,0x2A37,0x2217,0x1994,0x1112,0x1112,0x2152,0x2151,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x212F,0x210F,0x292F,0x292F,0x212F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x212F,0x2930,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x210F,0x210F,0x20EF,0x2910,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x212F,0x2110,0x2130,0x2151,0x1932,0x1113,0x1134,0x1996,0x21D7,0x21D6,0x1974,0x10F1,0x1911,0x1931,0x1931,0x2131,0x1931,0x1911,0x1931,0x1112,0x1154,0x19F7,0x1A18,0x2218,0x1196,0x1112,0x1911,0x2131,0x2110,0x2110,0x2110,0x2910,0x2930,0x210F,0x2110,0x212F,0x2930,0x2930,0x2130,0x2110,0x2110,0x2110,0x210F,0x290F,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x2930,0x2930,0x2930,0x2110,0x2110,0x2910,0x2110,0x2910,0x290F,0x290F,0x2930,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x2930,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2131,0x2151,0x2152,0x1911,0x1111,0x1112,0x1133,0x1995,0x2217,0x2A38,0x21F7,0x1995,0x1153,0x08F2,0x1912,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2930,0x2931,0x2131,0x2131,0x2131,0x1911,0x1932,0x1953,0x1174,0x19B5,0x19D6,0x19D7,0x2217,0x2218,0x19D6,0x11B6,0x11B5,0x11D6,0x11D5,0x11D6,0x11B5,0x11B5,0x11D6,0x11B5,0x11B5,0x11B5,0x11B6,0x11B6,0x11B5,0x11B6,0x11B6,0x19D6,0x11B6,0x19D6,0x19F6,0x19D6,0x19D6,0x19F6,0x19D6,0x2217,0x1A17,0x1A17,0x19F7,0x19B6,0x1195,0x1154,0x1132,0x1111,0x1111,0x1931,0x1952,0x1952,0x1932,0x1133,0x1154,0x1154,0x1196,0x19D7,0x1A18,0x1A17,0x19D6,0x1174,0x1133,0x1932,0x1932,0x1111,0x1911,0x1112,0x1932,0x1953,0x1974,0x1195,0x19F7,0x19F7,0x19F7,0x21F7,0x1175,0x0912,0x10F2,0x1931,0x1951,0x1910,0x2110,0x2110,0x210F,0x290F,0x290F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2950,0x212F,0x212F,0x210F,0x210F,0x292F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x2930, + 0x0997,0x0997,0x09B7,0x09D8,0x11D8,0x11F8,0x11F8,0x11D7,0x11B6,0x1175,0x1154,0x1933,0x1932,0x1931,0x2131,0x2111,0x2130,0x2130,0x2130,0x2951,0x2130,0x2130,0x1910,0x1910,0x1931,0x1132,0x1133,0x1174,0x19B5,0x19D6,0x2218,0x21F7,0x1175,0x1133,0x1133,0x1932,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x210F,0x212F,0x292F,0x290F,0x210F,0x2930,0x290F,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x290F,0x2930,0x2910,0x2930,0x210F,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2130,0x212F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x292F,0x290F,0x2930,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2130,0x2130,0x1931,0x1931,0x1132,0x1132,0x1153,0x1174,0x1175,0x19B6,0x19F6,0x19D6,0x19D6,0x1995,0x19B5,0x1974,0x1153,0x1133,0x1112,0x1911,0x1911,0x1910,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2131,0x1931,0x1911,0x1112,0x1113,0x1154,0x1996,0x19D7,0x2218,0x19F7,0x1195,0x1154,0x0933,0x0932,0x1132,0x1132,0x1152,0x1132,0x1932,0x1932,0x1931,0x1952,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1931,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1952,0x1932,0x1932,0x1952,0x1932,0x1931,0x1952,0x1952,0x1932,0x1931,0x1931,0x1931,0x2132,0x1911,0x1911,0x1931,0x1931,0x1932,0x1932,0x1132,0x1133,0x1154,0x0955,0x09B7,0x09D8,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01F9,0x01F9,0x09F9,0x11D8,0x1195,0x1112,0x1932,0x2131,0x2130,0x2110,0x2130,0x210F,0x212F,0x2930,0x210F,0x290F,0x2930,0x210F,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x290F,0x2930,0x290F,0x290F,0x2930,0x2910,0x2910,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x2930,0x2930,0x210F,0x2930,0x290F,0x2930,0x292F,0x292F,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x290F,0x2930,0x2910,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x1931,0x1111,0x1133,0x11D6,0x1A18,0x19F8,0x1196,0x1113,0x1932,0x2131,0x2131,0x2110,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x2930,0x2930,0x2130,0x2131,0x1911,0x1112,0x1154,0x19B6,0x21F7,0x19B6,0x1995,0x1153,0x1112,0x2131,0x2131,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x2130,0x2110,0x2111,0x1952,0x1153,0x1175,0x11B7,0x1A19,0x11F9,0x09B8,0x01B9,0x01B9,0x01B9,0x09D9,0x09D9,0x1219,0x1219,0x11D7,0x1133,0x1132,0x1931,0x2131,0x2130,0x2130,0x2110,0x2930,0x2110,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x212F,0x2930,0x290F,0x210F,0x290F,0x2930,0x292F,0x210F,0x210F,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2910,0x2910,0x290F,0x2930,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x08F1,0x1994,0x21F6,0x21F7,0x1995,0x08F3,0x1112,0x1931,0x2130,0x2130,0x2930,0x2130,0x2930,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x292F,0x212F,0x2130,0x2130,0x1931,0x1132,0x1133,0x0933,0x19D6,0x21F7,0x21F7,0x1996,0x1154,0x1133,0x1932,0x1911,0x1931,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2110,0x2110,0x1932,0x1113,0x11B7,0x1A19,0x1A19,0x19D7,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x2910,0x2930,0x2130,0x2110,0x2130,0x210F,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2930,0x2130,0x2130,0x2930,0x2930,0x2110,0x2110,0x2910,0x290F,0x292F,0x210F,0x292F,0x212F,0x210F,0x212F,0x210F,0x2930,0x2930,0x2930,0x2110,0x2110,0x1911,0x1931,0x1932,0x1132,0x1153,0x1995,0x21F7,0x2217,0x2217,0x1975,0x1133,0x1132,0x1952,0x1932,0x1931,0x2130,0x2130,0x2130,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x2130,0x2930,0x210F,0x210F,0x2930,0x2930,0x2130,0x2130,0x1931,0x1931,0x1132,0x1133,0x19B6,0x21F7,0x21F7,0x1174,0x0912,0x1132,0x1931,0x1910,0x2130,0x2110,0x2110,0x2131,0x1931,0x1931,0x1132,0x1132,0x19B5,0x2217,0x21F6,0x1995,0x1112,0x1112,0x2152,0x2151,0x2130,0x1910,0x2110,0x2130,0x2930,0x2930,0x210F,0x2930,0x210F,0x2930,0x210F,0x212F,0x2930,0x2930,0x210F,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2930,0x210F,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2130,0x1931,0x1932,0x1132,0x1133,0x1996,0x21D6,0x21D6,0x1994,0x1111,0x1911,0x1931,0x1911,0x2131,0x2131,0x1931,0x1931,0x1112,0x0933,0x19D7,0x1A18,0x19F8,0x1196,0x1112,0x1911,0x2111,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x210F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x210F,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x290F,0x2910,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2130,0x210F,0x2110,0x2130,0x2131,0x2130,0x2131,0x1931,0x1911,0x1911,0x1112,0x1133,0x1995,0x21F7,0x2A17,0x21F7,0x1995,0x1133,0x1112,0x1912,0x2131,0x2111,0x2130,0x2131,0x2930,0x2130,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x290F,0x2930,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2111,0x1911,0x1932,0x1932,0x1953,0x1974,0x1995,0x19B6,0x19D7,0x2218,0x2218,0x1A38,0x1A38,0x1A17,0x1A38,0x1A17,0x1A17,0x1A17,0x1A17,0x1A38,0x1A38,0x1A18,0x1A18,0x2238,0x1A18,0x1A38,0x1A18,0x1A18,0x19F7,0x1A18,0x19F7,0x19F7,0x11F7,0x19F7,0x19F7,0x19F7,0x19F6,0x19F6,0x19D6,0x1195,0x1174,0x1153,0x1111,0x1111,0x1931,0x2151,0x1952,0x1932,0x1132,0x1153,0x1154,0x1195,0x19D7,0x1A18,0x1A17,0x19D6,0x1194,0x1132,0x1132,0x1932,0x1932,0x1911,0x1912,0x1932,0x1133,0x1154,0x19B6,0x19D7,0x19F7,0x2218,0x19D7,0x1175,0x0933,0x1112,0x1111,0x1931,0x2131,0x2110,0x2110,0x210F,0x210F,0x210F,0x292F,0x290F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x292F,0x210F,0x292F,0x210F,0x290F,0x210F,0x2130,0x2110,0x2110,0x2930,0x210F,0x2930,0x2930, + 0x0955,0x0975,0x0976,0x09B7,0x11D8,0x11F8,0x11F8,0x11F8,0x11B7,0x11B6,0x0955,0x1154,0x1953,0x1932,0x1931,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2151,0x1931,0x1132,0x1132,0x1974,0x19B6,0x19F7,0x2218,0x21F7,0x1195,0x1134,0x1133,0x1932,0x2132,0x2151,0x2130,0x2110,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2930,0x210F,0x210F,0x2910,0x210F,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x2131,0x1931,0x1911,0x1932,0x1132,0x1132,0x1133,0x1133,0x1153,0x1133,0x1113,0x1112,0x1112,0x1132,0x1912,0x1912,0x1911,0x1911,0x2131,0x2130,0x2130,0x210F,0x212F,0x210F,0x290F,0x292F,0x210F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x2910,0x2110,0x2130,0x2930,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x2130,0x2930,0x210F,0x210F,0x2110,0x2130,0x2130,0x2131,0x1931,0x1911,0x1112,0x1153,0x1154,0x19B6,0x19B6,0x11B6,0x11B6,0x1195,0x1174,0x1153,0x0933,0x1153,0x1152,0x1132,0x1932,0x1131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x2132,0x1932,0x1911,0x1932,0x1932,0x1932,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1952,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x2132,0x2132,0x2111,0x1911,0x2131,0x1932,0x2152,0x1932,0x1112,0x1133,0x0934,0x0955,0x09D7,0x09F9,0x01D9,0x01B9,0x01D9,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01F9,0x01D9,0x09D8,0x11D7,0x1175,0x1112,0x1911,0x2131,0x2130,0x2110,0x2130,0x210F,0x210F,0x2930,0x290F,0x210F,0x290F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x210F,0x210F,0x2910,0x290F,0x290F,0x210F,0x2910,0x2910,0x210F,0x290F,0x2930,0x2910,0x210F,0x210F,0x210F,0x290F,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x2110,0x290F,0x210F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x1912,0x1133,0x19D7,0x1A18,0x19F7,0x1196,0x0912,0x1932,0x2131,0x2131,0x2110,0x2130,0x210F,0x212F,0x292F,0x212F,0x292F,0x212F,0x2950,0x2130,0x2131,0x1931,0x1132,0x1154,0x19D6,0x19F7,0x19D6,0x19B5,0x1153,0x1112,0x2131,0x2131,0x2930,0x2930,0x210F,0x210F,0x2930,0x2130,0x2110,0x2110,0x2131,0x1931,0x1932,0x1154,0x1175,0x11B7,0x11B8,0x09B8,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x11F9,0x19F8,0x1175,0x1132,0x1932,0x1931,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x212F,0x2930,0x2910,0x210F,0x210F,0x290F,0x290F,0x2110,0x2110,0x2110,0x2910,0x290F,0x210F,0x290F,0x2930,0x2930,0x2910,0x2910,0x2910,0x210F,0x2930,0x290F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x1910,0x2131,0x2151,0x1932,0x08F1,0x19B5,0x21F6,0x21F7,0x19B5,0x0913,0x1112,0x1931,0x2130,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2950,0x212F,0x212F,0x212F,0x2110,0x1930,0x1951,0x1152,0x1153,0x1995,0x21F7,0x21F7,0x1996,0x1134,0x1153,0x1932,0x1931,0x2131,0x2130,0x2130,0x210F,0x2110,0x2930,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2110,0x2111,0x1932,0x1113,0x11B7,0x19F8,0x1A19,0x19D7,0x1132,0x1931,0x1910,0x2110,0x2130,0x2130,0x2110,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x210F,0x2130,0x2110,0x2110,0x2910,0x210F,0x2910,0x2930,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2111,0x1911,0x1911,0x1932,0x1133,0x1153,0x1974,0x21F7,0x2A17,0x21F7,0x1154,0x1113,0x1932,0x1952,0x1952,0x1931,0x2131,0x2130,0x2130,0x210F,0x212F,0x292F,0x210F,0x210F,0x290F,0x290F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x290F,0x2930,0x210F,0x210F,0x290F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x212F,0x212F,0x212F,0x2930,0x2930,0x292F,0x290F,0x2930,0x2110,0x2130,0x2130,0x2131,0x1931,0x1132,0x1133,0x21D6,0x2A38,0x21F7,0x1194,0x0912,0x1132,0x1931,0x1931,0x1910,0x2110,0x2130,0x2131,0x1931,0x1931,0x1932,0x1133,0x21D6,0x2A17,0x21F6,0x1995,0x0912,0x1932,0x2152,0x1931,0x2131,0x2130,0x2130,0x2110,0x2930,0x2930,0x2110,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x2930,0x210F,0x2910,0x2910,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x290F,0x290F,0x212F,0x212F,0x292F,0x292F,0x292F,0x210F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x290F,0x292F,0x210F,0x210F,0x212F,0x2130,0x2110,0x2130,0x2151,0x1932,0x1132,0x1133,0x1995,0x21D6,0x19D5,0x1974,0x10F1,0x1911,0x1931,0x2131,0x1910,0x2131,0x1931,0x1931,0x1112,0x1174,0x19F7,0x1A18,0x19F8,0x1195,0x1112,0x1911,0x2111,0x2110,0x2110,0x2130,0x2110,0x2930,0x2110,0x212F,0x210F,0x2930,0x2930,0x212F,0x2110,0x2110,0x210F,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x1910,0x2131,0x2131,0x1931,0x1911,0x1932,0x1153,0x1995,0x21F7,0x21F7,0x21D6,0x19B5,0x1133,0x1112,0x1912,0x1911,0x2131,0x2131,0x2130,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x2930,0x2110,0x210F,0x2110,0x2130,0x2130,0x2930,0x2131,0x2131,0x2131,0x1931,0x1931,0x1953,0x1974,0x19B5,0x19B6,0x1996,0x19D6,0x19D7,0x19F7,0x19F7,0x19F7,0x19F7,0x1A17,0x19F7,0x19F7,0x19F7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x19F7,0x19F7,0x11D7,0x11D7,0x19F7,0x19F7,0x19F7,0x19F7,0x11D6,0x11B6,0x11B5,0x11B5,0x19B5,0x1994,0x1994,0x1152,0x1132,0x1931,0x1931,0x2151,0x1931,0x1931,0x1132,0x1133,0x1154,0x1195,0x19D7,0x1A18,0x19F7,0x19B6,0x1174,0x1133,0x1112,0x1132,0x1932,0x1932,0x1932,0x1132,0x1133,0x1154,0x1995,0x19D7,0x2218,0x19F8,0x19B6,0x1154,0x0912,0x1112,0x1932,0x1931,0x2130,0x2110,0x2130,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x2130,0x2110,0x2110,0x210F,0x290F,0x292F, + 0x1133,0x0934,0x1155,0x1196,0x11B7,0x11D8,0x11D8,0x11F8,0x11F8,0x11D7,0x1196,0x1175,0x1154,0x1953,0x1932,0x1911,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x2150,0x2150,0x1930,0x1930,0x1910,0x1131,0x1132,0x1994,0x19B6,0x21F7,0x2218,0x19D7,0x1995,0x1154,0x1933,0x1912,0x2132,0x2111,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x290F,0x2930,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x212F,0x212F,0x210F,0x292F,0x210F,0x210F,0x2930,0x2910,0x2110,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x1910,0x1911,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1112,0x1912,0x1912,0x1912,0x1911,0x1911,0x1911,0x2131,0x1910,0x2110,0x2130,0x2130,0x2130,0x2930,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x2930,0x2910,0x2930,0x2930,0x210F,0x212F,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1931,0x1132,0x1153,0x1154,0x1195,0x11B6,0x19D6,0x19D6,0x19D6,0x1174,0x1154,0x1153,0x1132,0x1132,0x1132,0x1131,0x1131,0x1111,0x1931,0x1911,0x1932,0x1912,0x1912,0x1932,0x1932,0x1932,0x1932,0x1912,0x1932,0x1931,0x1931,0x1932,0x1932,0x1931,0x1931,0x1932,0x1932,0x1931,0x1932,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1932,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1912,0x1912,0x1911,0x1911,0x1912,0x1912,0x1912,0x1912,0x1912,0x1911,0x1912,0x1911,0x1932,0x1912,0x1932,0x1953,0x1133,0x0934,0x0155,0x11D8,0x09D9,0x09FA,0x01B9,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DB,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01FA,0x01F9,0x01F9,0x09D8,0x11D7,0x0954,0x1112,0x1932,0x2131,0x2131,0x2110,0x2130,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2930,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x2930,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2110,0x210F,0x290F,0x290F,0x210F,0x212F,0x2110,0x2110,0x2130,0x2130,0x1931,0x1112,0x0912,0x19D7,0x11F8,0x11F7,0x1196,0x1112,0x1912,0x2132,0x2131,0x2130,0x2130,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x2930,0x2150,0x2131,0x1911,0x1132,0x1154,0x19D6,0x19F7,0x19B6,0x19B6,0x1153,0x1111,0x2131,0x2931,0x2930,0x2910,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x1931,0x1932,0x1133,0x1154,0x1176,0x11B7,0x11D8,0x11D8,0x09D8,0x09F9,0x09D8,0x11D8,0x11D8,0x1175,0x0933,0x1132,0x1931,0x1930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2930,0x2910,0x2910,0x2930,0x2930,0x210F,0x2910,0x2930,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1911,0x10F1,0x1994,0x21F6,0x21F6,0x19B5,0x08F2,0x1112,0x1931,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x1931,0x1132,0x1153,0x1154,0x21F7,0x21F7,0x21F7,0x1154,0x0913,0x1132,0x1931,0x2131,0x2130,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x290F,0x210F,0x2110,0x2110,0x2131,0x1932,0x1113,0x11B6,0x19F8,0x1A19,0x19D7,0x1133,0x1911,0x2131,0x2130,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x210F,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2130,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x212F,0x2930,0x2910,0x2910,0x2110,0x210F,0x2910,0x2110,0x2930,0x212F,0x212F,0x212F,0x2930,0x2130,0x2130,0x1910,0x1911,0x1932,0x1932,0x1133,0x1153,0x1975,0x21F7,0x2A17,0x21F7,0x1954,0x1112,0x1112,0x1932,0x1931,0x1931,0x1910,0x1930,0x2130,0x2130,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x292F,0x210F,0x290F,0x2110,0x210F,0x2110,0x2130,0x2130,0x2130,0x212F,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x290F,0x210F,0x2930,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x21B6,0x2A38,0x2217,0x1995,0x0912,0x1132,0x1952,0x1931,0x2131,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1133,0x21B5,0x2A17,0x21F6,0x19B5,0x0912,0x1112,0x1952,0x2151,0x2131,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x212F,0x2930,0x292F,0x212F,0x212F,0x2110,0x2930,0x2110,0x2930,0x2130,0x2110,0x2130,0x2130,0x2930,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x2910,0x210F,0x290F,0x2930,0x210F,0x210F,0x2930,0x290F,0x210F,0x292F,0x212F,0x292F,0x212F,0x212F,0x290F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x2930,0x210F,0x210F,0x212F,0x2130,0x2130,0x2110,0x1931,0x1931,0x1132,0x1133,0x1995,0x21D6,0x21D5,0x1994,0x1111,0x1911,0x2131,0x2131,0x2131,0x1910,0x1930,0x1931,0x1112,0x1153,0x19F7,0x1A18,0x19F8,0x1196,0x1112,0x1911,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x2930,0x212F,0x212F,0x210F,0x2930,0x210F,0x212F,0x2110,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910,0x210F,0x2110,0x210F,0x2930,0x2910,0x2910,0x2910,0x210F,0x2930,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2110,0x2130,0x2131,0x2131,0x2131,0x1911,0x1932,0x1153,0x1974,0x21F6,0x2217,0x21F7,0x1995,0x1133,0x1112,0x1911,0x1911,0x2131,0x2111,0x2930,0x2130,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x2910,0x2930,0x290F,0x2930,0x2930,0x210F,0x292F,0x210F,0x210F,0x290F,0x2930,0x212F,0x2930,0x2130,0x2130,0x2130,0x2131,0x2110,0x2131,0x1932,0x1932,0x1953,0x1154,0x1174,0x1174,0x1175,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1175,0x1995,0x1175,0x1195,0x1175,0x1175,0x1195,0x1195,0x1195,0x1195,0x1195,0x1174,0x1174,0x1194,0x1174,0x1174,0x1153,0x1153,0x1952,0x1131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1132,0x1153,0x1195,0x19D6,0x2218,0x1A17,0x19D6,0x1175,0x1133,0x1132,0x1132,0x1932,0x1931,0x1932,0x1132,0x1133,0x1154,0x1995,0x19D7,0x21F8,0x21F8,0x19D7,0x1175,0x0913,0x1112,0x1111,0x2151,0x2151,0x2130,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2110,0x2110,0x2130,0x2110,0x2130,0x212F,0x210F,0x212F,0x292F,0x292F,0x212F,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x2110,0x290F,0x210F,0x292F,0x292F, + 0x1112,0x1133,0x1133,0x1154,0x1196,0x11B7,0x11F8,0x11F8,0x11F8,0x11F8,0x11D7,0x1196,0x1175,0x1133,0x1133,0x1952,0x2131,0x2131,0x1910,0x2130,0x2110,0x2130,0x2130,0x2150,0x2150,0x1930,0x1910,0x1911,0x1952,0x1133,0x1995,0x19B6,0x2218,0x2218,0x19D7,0x1175,0x1154,0x1133,0x1912,0x2132,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x2930,0x212F,0x292F,0x212F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x210F,0x2110,0x2910,0x210F,0x2910,0x2930,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x2910,0x2130,0x2130,0x2130,0x1910,0x1910,0x1931,0x1931,0x1911,0x1952,0x1932,0x1932,0x1912,0x1911,0x1931,0x2131,0x2131,0x2131,0x2130,0x2131,0x2130,0x2110,0x2130,0x2130,0x2110,0x210F,0x210F,0x2910,0x210F,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1133,0x1154,0x1195,0x19D6,0x1A17,0x11B6,0x0954,0x0954,0x0953,0x1133,0x0932,0x1132,0x0912,0x1112,0x1111,0x1111,0x1112,0x1112,0x1112,0x1112,0x10F2,0x10F2,0x1112,0x1112,0x10F2,0x1112,0x1112,0x1112,0x1112,0x1112,0x1111,0x1111,0x1112,0x1112,0x1112,0x1112,0x10F1,0x1111,0x1112,0x1111,0x1112,0x1112,0x1111,0x1111,0x1112,0x1111,0x1111,0x1112,0x10F1,0x10F1,0x1111,0x1111,0x1112,0x1112,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x10F2,0x10F2,0x1112,0x1112,0x1112,0x1113,0x0913,0x0914,0x0176,0x09B8,0x09D9,0x01B9,0x01D9,0x01D9,0x021A,0x01FA,0x01D9,0x01DA,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x021A,0x01FA,0x01FA,0x01FA,0x01FA,0x01F9,0x01F9,0x11F8,0x11F7,0x1154,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x1911,0x1112,0x1133,0x19F7,0x1A18,0x1A18,0x1196,0x1113,0x1912,0x2132,0x2131,0x2130,0x2130,0x210F,0x2930,0x292F,0x292F,0x212F,0x210F,0x212F,0x2150,0x2131,0x1931,0x1132,0x1154,0x21F7,0x21F7,0x19D6,0x19B5,0x1133,0x1112,0x2131,0x2931,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2131,0x1932,0x1932,0x1133,0x1154,0x1196,0x11B7,0x11D8,0x09B8,0x11D8,0x11D8,0x1197,0x1176,0x0933,0x1132,0x1931,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2930,0x2910,0x2910,0x2930,0x2110,0x2910,0x2910,0x2110,0x2910,0x2910,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x2930,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x10F1,0x1994,0x21F6,0x19D6,0x1995,0x0912,0x1112,0x1931,0x1930,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130,0x1910,0x1931,0x1932,0x1132,0x1195,0x2217,0x2A38,0x19B6,0x0913,0x1132,0x1111,0x1931,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x294F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930,0x20EF,0x210F,0x2110,0x2131,0x1932,0x1113,0x11B6,0x19F8,0x1A19,0x19D7,0x1113,0x1911,0x2111,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x210F,0x2110,0x212F,0x212F,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x210F,0x212F,0x2130,0x212F,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2930,0x210F,0x212F,0x2930,0x2930,0x2910,0x2910,0x2930,0x2110,0x2930,0x2110,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1932,0x1933,0x1133,0x1133,0x1975,0x21F7,0x2A17,0x21F6,0x1954,0x1133,0x1112,0x1932,0x1952,0x1951,0x1931,0x1930,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2930,0x2930,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1932,0x1932,0x1133,0x19B5,0x2A38,0x21F7,0x1195,0x0933,0x1112,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x1930,0x1931,0x1132,0x1112,0x21B5,0x2A17,0x21F6,0x1994,0x0912,0x1111,0x1952,0x2151,0x2131,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x210F,0x212F,0x2930,0x210F,0x2110,0x2910,0x2110,0x2110,0x2110,0x2130,0x2930,0x290F,0x290F,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x212F,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2930,0x210F,0x212F,0x2130,0x210F,0x2110,0x2131,0x1932,0x1932,0x1132,0x19B5,0x21F6,0x21D5,0x1994,0x1112,0x1911,0x1931,0x2131,0x2131,0x2131,0x1910,0x1911,0x1111,0x1153,0x19F7,0x1A18,0x1A18,0x1195,0x1132,0x1931,0x2131,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x292F,0x212F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x2910,0x290F,0x28EF,0x290F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x2111,0x1911,0x1912,0x1933,0x1995,0x21F7,0x2217,0x21F7,0x1975,0x1133,0x1932,0x1911,0x1911,0x2131,0x2130,0x2130,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x212F,0x2110,0x2930,0x290F,0x290F,0x292F,0x292F,0x212F,0x212F,0x292F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2131,0x1931,0x1932,0x1132,0x1132,0x1132,0x1152,0x1153,0x1153,0x1153,0x1153,0x1953,0x1153,0x1133,0x1953,0x1953,0x1933,0x1133,0x1132,0x1933,0x1133,0x1133,0x1153,0x1133,0x1153,0x1153,0x1153,0x1973,0x1973,0x1153,0x1132,0x1132,0x1132,0x1931,0x1952,0x1931,0x1931,0x1931,0x2152,0x1932,0x1112,0x1112,0x1133,0x1195,0x19D6,0x2217,0x19F7,0x19D6,0x1195,0x1154,0x1153,0x1132,0x1131,0x1131,0x1111,0x1132,0x1133,0x1174,0x1195,0x19D7,0x19F7,0x19F7,0x19D7,0x1175,0x1133,0x1112,0x1111,0x1931,0x2151,0x2150,0x2130,0x2130,0x2130,0x212F,0x210F,0x290F,0x292F,0x292F,0x290F,0x290F,0x2910,0x2930,0x2110,0x210F,0x2130,0x292F,0x292F,0x292F,0x210F,0x292F,0x212F,0x292F,0x210F,0x212F,0x212F,0x292F,0x2930,0x210F,0x210F,0x290F,0x292F,0x292F, + 0x1911,0x1932,0x1932,0x1153,0x1175,0x1196,0x11B7,0x11D8,0x11F8,0x11F9,0x11F8,0x11D7,0x11B6,0x1154,0x1154,0x1132,0x1932,0x1931,0x2131,0x2130,0x2110,0x2130,0x212F,0x2130,0x2130,0x1930,0x2130,0x2131,0x1911,0x1932,0x1133,0x1154,0x19B6,0x2217,0x2218,0x19D7,0x1995,0x1133,0x1112,0x1932,0x2152,0x2151,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x292F,0x290F,0x292F,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x212F,0x210F,0x2910,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x212F,0x292F,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x2110,0x210F,0x290F,0x2930,0x290F,0x2930,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1911,0x1910,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x210F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2930,0x210F,0x210F,0x2910,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x212F,0x292F,0x292F,0x210F,0x2930,0x210F,0x2110,0x2910,0x2930,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1153,0x1154,0x19B6,0x19D6,0x2218,0x1196,0x1175,0x0954,0x1154,0x0953,0x0933,0x0932,0x0932,0x0932,0x1132,0x0932,0x1113,0x1113,0x1113,0x1113,0x10F3,0x1113,0x1113,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1133,0x1132,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1112,0x1133,0x1113,0x1113,0x1113,0x1113,0x1113,0x1113,0x1133,0x1133,0x1133,0x1134,0x0934,0x0955,0x0955,0x0176,0x01B8,0x01D9,0x01D9,0x01D9,0x01B9,0x01FA,0x01DA,0x01DA,0x01DA,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01FA,0x0A1A,0x09F9,0x11F8,0x19F7,0x1175,0x1112,0x1931,0x1931,0x2131,0x2130,0x2130,0x210F,0x210F,0x2130,0x210F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x290F,0x210F,0x212F,0x292F,0x292F,0x210F,0x2930,0x290F,0x2930,0x210F,0x210F,0x2910,0x2930,0x2930,0x210F,0x212F,0x292F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2131,0x1931,0x1932,0x0933,0x19D7,0x1A18,0x1A18,0x11B6,0x1113,0x1932,0x2131,0x2131,0x2130,0x2130,0x212F,0x292F,0x292F,0x212F,0x212F,0x2950,0x212F,0x2130,0x2131,0x1932,0x1132,0x1154,0x19D6,0x19F7,0x19D6,0x19B6,0x1153,0x1112,0x2131,0x2130,0x2930,0x210F,0x212F,0x212F,0x290F,0x2930,0x210F,0x2110,0x2110,0x2110,0x1931,0x1932,0x1933,0x1133,0x1155,0x1196,0x1196,0x11B7,0x11B7,0x11B7,0x1196,0x0934,0x1133,0x1132,0x1931,0x2131,0x2131,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x1911,0x10F1,0x1994,0x21F6,0x19D6,0x19B5,0x08F2,0x1112,0x1931,0x1930,0x2150,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2950,0x212F,0x212F,0x2130,0x2130,0x1910,0x1931,0x1932,0x1132,0x1195,0x2217,0x2A38,0x1195,0x1133,0x1132,0x1931,0x1930,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x210F,0x290F,0x290F,0x20EF,0x210F,0x2110,0x2131,0x1932,0x1133,0x1196,0x1A19,0x1A19,0x19F8,0x1113,0x1912,0x2131,0x2110,0x2110,0x2110,0x2910,0x2930,0x2930,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x212F,0x210F,0x212F,0x212F,0x2930,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x290F,0x2930,0x2910,0x2910,0x2110,0x2910,0x2110,0x2930,0x2130,0x2130,0x210F,0x2130,0x2130,0x2131,0x1911,0x1932,0x1953,0x1153,0x1133,0x1174,0x21F7,0x2A17,0x21F6,0x1974,0x10F2,0x1912,0x1931,0x1931,0x1951,0x1930,0x1930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x210F,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2910,0x290F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1932,0x1932,0x1133,0x19B5,0x2A38,0x19D6,0x19B5,0x0933,0x1132,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x1930,0x1931,0x1132,0x1132,0x21D5,0x2217,0x21D6,0x1995,0x1112,0x1112,0x2152,0x2151,0x2131,0x2110,0x2110,0x2130,0x2930,0x2110,0x2110,0x2930,0x210F,0x212F,0x292F,0x212F,0x2910,0x210F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2930,0x210F,0x290F,0x2930,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x2930,0x290F,0x292F,0x212F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x2930,0x2930,0x210F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2131,0x1931,0x1932,0x1132,0x1994,0x21F6,0x21D5,0x1994,0x1112,0x1911,0x1931,0x2131,0x2131,0x2131,0x1910,0x1931,0x1131,0x1153,0x19F7,0x1A18,0x19F7,0x11B6,0x1132,0x1931,0x1910,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x2930,0x290F,0x2930,0x290F,0x2930,0x212F,0x2930,0x212F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2130,0x212F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2930,0x210F,0x2930,0x2910,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2110,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x28F0,0x2910,0x290F,0x290F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2111,0x18F1,0x18F1,0x1932,0x1133,0x1995,0x21F7,0x21F7,0x21F7,0x1995,0x1953,0x1112,0x1911,0x1911,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x2930,0x292F,0x2930,0x292F,0x2130,0x2110,0x2130,0x2930,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x2930,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1912,0x1932,0x1932,0x1911,0x1911,0x1932,0x1932,0x1911,0x1911,0x1912,0x1932,0x1912,0x1932,0x1932,0x1112,0x1132,0x1132,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x2132,0x1931,0x1111,0x1112,0x0933,0x1174,0x19D6,0x21F7,0x2217,0x19D6,0x1174,0x1153,0x1133,0x1932,0x1132,0x1932,0x1132,0x1132,0x1132,0x1153,0x19B5,0x19B6,0x19F7,0x21F8,0x19B7,0x1175,0x1134,0x1132,0x1911,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2110,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x210F,0x290F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x292F, + 0x1931,0x1931,0x1912,0x1933,0x1154,0x1175,0x1196,0x11B7,0x11D8,0x11F8,0x1219,0x11F8,0x11D7,0x1196,0x1154,0x1133,0x1112,0x1932,0x2131,0x2131,0x2130,0x2150,0x192F,0x192F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x10F1,0x1112,0x1154,0x19B6,0x21F7,0x2218,0x19D6,0x1995,0x1113,0x1112,0x1952,0x1952,0x2151,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x212F,0x210F,0x2930,0x2110,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2910,0x2930,0x2910,0x2910,0x210F,0x290F,0x290F,0x2930,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x2110,0x2930,0x2130,0x2130,0x1910,0x2130,0x2131,0x2131,0x2131,0x2110,0x2110,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x210F,0x2910,0x2930,0x2930,0x2110,0x2110,0x210F,0x2910,0x2910,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1953,0x1154,0x1996,0x19B6,0x21F7,0x19F7,0x19D6,0x19B6,0x19B5,0x19B5,0x19B5,0x19B5,0x19D5,0x19B5,0x19B5,0x19B5,0x19B6,0x1995,0x1996,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x21B5,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1994,0x1994,0x1995,0x1994,0x19B5,0x1995,0x1995,0x1995,0x1995,0x1995,0x21B5,0x19B6,0x19B6,0x21B6,0x21D6,0x21D6,0x21D6,0x19B6,0x19D6,0x19D6,0x19D7,0x19D7,0x19D7,0x11D8,0x11F9,0x09D9,0x01F9,0x01FA,0x01B9,0x01B9,0x01D9,0x01D9,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01FA,0x01FB,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01D9,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x09F9,0x11F8,0x11D7,0x1154,0x1112,0x1932,0x1931,0x2130,0x2130,0x2110,0x2110,0x210F,0x2130,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x212F,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x2930,0x210F,0x290F,0x290F,0x2930,0x290F,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2110,0x1931,0x1932,0x1133,0x19F7,0x1A18,0x19F8,0x11B6,0x1113,0x1912,0x2131,0x2131,0x2130,0x2130,0x212F,0x292F,0x212F,0x210F,0x210F,0x212F,0x2930,0x2130,0x1910,0x1911,0x1132,0x1154,0x19D6,0x19D7,0x19B6,0x19B5,0x1154,0x1112,0x1931,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x2130,0x2130,0x2131,0x1952,0x1952,0x1133,0x0933,0x1195,0x1196,0x11B7,0x11B7,0x1196,0x1175,0x1133,0x1132,0x1931,0x1931,0x2131,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2110,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x210F,0x210F,0x2930,0x212F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x1911,0x10F1,0x2194,0x2A16,0x21D6,0x1994,0x0912,0x1112,0x1931,0x1951,0x2130,0x212F,0x212F,0x2950,0x210F,0x210F,0x2950,0x2950,0x210F,0x212F,0x212F,0x2130,0x2131,0x1931,0x1132,0x0912,0x19B5,0x2A38,0x19F7,0x1175,0x1113,0x1132,0x1931,0x2151,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x214F,0x214F,0x214F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2110,0x2131,0x2131,0x1932,0x1113,0x1196,0x19F8,0x1A19,0x19D7,0x1113,0x1912,0x2131,0x2131,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x290F,0x2910,0x2910,0x2910,0x2930,0x2130,0x2930,0x2130,0x2130,0x2130,0x2131,0x1931,0x1952,0x1953,0x1133,0x1153,0x1174,0x2217,0x2A17,0x21D6,0x1954,0x1112,0x10F1,0x1911,0x1931,0x1931,0x2151,0x2150,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x212F,0x2130,0x2130,0x2930,0x2930,0x210F,0x212F,0x290F,0x2930,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1932,0x1932,0x1133,0x19B5,0x2A38,0x21F7,0x1195,0x0913,0x1132,0x1952,0x1931,0x2131,0x2130,0x2130,0x2130,0x1910,0x1931,0x1932,0x1132,0x21F6,0x2A37,0x21F6,0x1994,0x0912,0x1132,0x1952,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x212F,0x2930,0x2930,0x290F,0x210F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x292F,0x292F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x212F,0x2930,0x2930,0x212F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1132,0x1994,0x21F6,0x21D5,0x1973,0x1112,0x1911,0x2131,0x2131,0x2131,0x1910,0x1930,0x1931,0x1111,0x1153,0x1A17,0x1A38,0x1A17,0x1195,0x1132,0x1911,0x1910,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x2110,0x2930,0x2110,0x210F,0x210F,0x2130,0x2930,0x2130,0x2930,0x210F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2951,0x2131,0x2111,0x1911,0x1912,0x1133,0x1975,0x21D7,0x2A18,0x21D7,0x19B5,0x1153,0x1132,0x1111,0x1931,0x2131,0x2951,0x2930,0x2130,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2130,0x2130,0x2950,0x2130,0x2130,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1930,0x1930,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x2132,0x1911,0x1911,0x2131,0x1911,0x1910,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x1931,0x2151,0x2131,0x1911,0x1111,0x1112,0x1133,0x1174,0x19B6,0x21F7,0x2217,0x19D6,0x1154,0x1133,0x1132,0x1132,0x1952,0x1952,0x1932,0x1132,0x1132,0x1153,0x1175,0x19B6,0x21F7,0x21F8,0x19D7,0x1175,0x1113,0x1112,0x1111,0x2132,0x2151,0x2151,0x1910,0x210F,0x210F,0x2130,0x2130,0x212F,0x210F,0x290F,0x292F,0x292F,0x210F,0x210F,0x290F,0x2910,0x290F,0x2910,0x290F,0x212F,0x292F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F, + 0x2151,0x1911,0x1911,0x1932,0x1933,0x1133,0x1175,0x1196,0x11D7,0x11F8,0x11F8,0x11F9,0x11F8,0x11D7,0x1196,0x1154,0x1133,0x1132,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x2110,0x2151,0x2130,0x2111,0x1911,0x1912,0x1133,0x1974,0x19B6,0x2217,0x2217,0x19D6,0x1995,0x1133,0x1132,0x1132,0x1932,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x2110,0x2110,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x2910,0x2910,0x2930,0x290F,0x290F,0x2910,0x2110,0x2930,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x290F,0x2110,0x2930,0x2910,0x210F,0x2910,0x2910,0x210F,0x2930,0x290F,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2910,0x2910,0x2910,0x210F,0x2930,0x210F,0x290F,0x2910,0x2910,0x2910,0x290F,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x2930,0x2910,0x2930,0x2910,0x2110,0x2110,0x2930,0x2930,0x2110,0x2910,0x210F,0x290F,0x210F,0x2110,0x210F,0x2110,0x210F,0x2930,0x2910,0x2110,0x2910,0x2910,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x2130,0x2130,0x2130,0x2150,0x2150,0x2130,0x1931,0x1931,0x1932,0x1133,0x1954,0x1975,0x19D6,0x2217,0x2217,0x21F7,0x2217,0x2217,0x2217,0x2217,0x2A37,0x2A37,0x2A38,0x2A38,0x2A38,0x3238,0x3238,0x3238,0x2A38,0x2A38,0x2A38,0x3238,0x2A18,0x2A18,0x2A38,0x2A38,0x2A38,0x2A38,0x2A38,0x2A38,0x2A38,0x2A38,0x3238,0x2A38,0x2A38,0x2A38,0x2A37,0x2A38,0x2A37,0x2A37,0x2A38,0x2A38,0x2A38,0x2A37,0x2A17,0x3238,0x3238,0x2A37,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A37,0x2A17,0x29F7,0x2A17,0x2A17,0x2A17,0x21F7,0x2A17,0x21F7,0x21F7,0x21F7,0x2218,0x2217,0x2217,0x19F7,0x19F8,0x1A18,0x19F8,0x11F8,0x1219,0x01F9,0x09FA,0x01D9,0x01D9,0x01D9,0x01B9,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01D9,0x01DA,0x01DA,0x01B9,0x01DA,0x01DA,0x01D9,0x01D9,0x09D8,0x11F8,0x11D7,0x1154,0x1132,0x1931,0x2131,0x1910,0x2130,0x2110,0x2110,0x210F,0x2130,0x210F,0x2930,0x210F,0x290F,0x290F,0x292F,0x290F,0x2910,0x2910,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x290F,0x290F,0x2930,0x210F,0x2130,0x2130,0x2130,0x1911,0x1112,0x1133,0x19D7,0x1A18,0x19F7,0x11B6,0x1113,0x1912,0x2131,0x2110,0x2130,0x2130,0x212F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x1911,0x1132,0x1154,0x19D6,0x2217,0x19D6,0x19B6,0x1133,0x1112,0x2131,0x2130,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2110,0x2131,0x1931,0x1931,0x1932,0x1132,0x1133,0x1174,0x11B6,0x1196,0x11B6,0x11B6,0x1154,0x1112,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x212F,0x2910,0x2930,0x210F,0x2930,0x2910,0x2110,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2110,0x2110,0x2130,0x290F,0x290F,0x2930,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x2930,0x212F,0x210F,0x2130,0x2110,0x2130,0x2110,0x2130,0x2131,0x1911,0x10D0,0x1994,0x2A16,0x21F6,0x19B5,0x0912,0x1112,0x1931,0x1931,0x2130,0x210F,0x212F,0x2950,0x210F,0x210F,0x2950,0x2130,0x212F,0x212F,0x2130,0x2130,0x1931,0x1952,0x1132,0x0912,0x19D6,0x2218,0x11B6,0x1175,0x1133,0x1932,0x1951,0x2131,0x2130,0x2130,0x212F,0x2130,0x2150,0x212F,0x210F,0x212F,0x212F,0x212F,0x214F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x2910,0x2110,0x2131,0x2152,0x1932,0x0913,0x11B7,0x19F8,0x1A19,0x19D8,0x1113,0x1932,0x2111,0x2111,0x2110,0x2110,0x2910,0x2930,0x210F,0x2930,0x2930,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x290F,0x2930,0x290F,0x290F,0x2910,0x2930,0x290F,0x2930,0x2930,0x2930,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x290F,0x2910,0x2910,0x2910,0x20EF,0x2910,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x1931,0x1932,0x1953,0x1153,0x1153,0x1174,0x21F7,0x2A38,0x21D6,0x1974,0x1932,0x1111,0x1911,0x1911,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x212F,0x210F,0x210F,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x210F,0x290F,0x290F,0x210F,0x292F,0x290F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1931,0x1132,0x1133,0x19B5,0x2217,0x21F7,0x11B5,0x0913,0x1132,0x1932,0x1931,0x2131,0x2110,0x2130,0x2130,0x2130,0x1931,0x1132,0x1132,0x21F5,0x2216,0x21F6,0x19B5,0x0912,0x1132,0x2152,0x2151,0x2151,0x2130,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x292F,0x2930,0x210F,0x210F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2910,0x2910,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x292F,0x292F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x2930,0x2930,0x2930,0x2130,0x2110,0x2110,0x2130,0x2130,0x2131,0x2151,0x1932,0x1112,0x1994,0x21F6,0x21D5,0x21B4,0x1111,0x1911,0x2131,0x2131,0x2131,0x2130,0x2130,0x1931,0x1131,0x1132,0x19F6,0x1A38,0x1A17,0x11B5,0x1132,0x1931,0x2131,0x2130,0x2130,0x2110,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2930,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x2110,0x2930,0x2110,0x2910,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2111,0x1912,0x1912,0x1133,0x1995,0x21D7,0x2A18,0x21F7,0x1995,0x1154,0x1132,0x1111,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2130,0x2130,0x2150,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x1930,0x1931,0x1931,0x1931,0x1931,0x2111,0x2131,0x2131,0x2131,0x2111,0x2110,0x2131,0x2111,0x2111,0x2111,0x2131,0x2131,0x2111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x2131,0x1931,0x2131,0x1931,0x1931,0x1931,0x1911,0x1911,0x1132,0x1133,0x1174,0x19B5,0x21F7,0x2217,0x19B6,0x1174,0x1133,0x1132,0x1132,0x1132,0x1932,0x1952,0x1132,0x1153,0x1153,0x1174,0x19B6,0x21F7,0x19F7,0x19D7,0x1175,0x1113,0x1112,0x1911,0x1911,0x2131,0x2151,0x2130,0x210F,0x210F,0x2130,0x2130,0x210F,0x212F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x212F,0x212F,0x292F,0x290F,0x212F,0x210F,0x290F,0x290F,0x210F,0x292F,0x290F,0x210F, + 0x2131,0x2131,0x1911,0x1911,0x1912,0x1932,0x1133,0x1154,0x1175,0x11B7,0x11F8,0x11F9,0x11F8,0x11F8,0x11D7,0x1195,0x1154,0x1133,0x1132,0x1932,0x1911,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x1931,0x1911,0x1112,0x1112,0x1174,0x19D6,0x19F7,0x1A17,0x21F7,0x1195,0x0953,0x1132,0x1112,0x2152,0x2131,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x210F,0x290F,0x290F,0x2130,0x212F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x290F,0x210F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2930,0x212F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2930,0x210F,0x290F,0x290F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x20EF,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x20EF,0x210F,0x2910,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x290F,0x210F,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x2910,0x210F,0x2910,0x210F,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x2130,0x2150,0x2130,0x2130,0x2131,0x1931,0x1932,0x1933,0x1933,0x21B5,0x21D6,0x1995,0x1995,0x19B5,0x19B5,0x21D6,0x21F6,0x21F6,0x21D6,0x21D6,0x21D6,0x21D6,0x21B6,0x21B6,0x21D6,0x21D6,0x21D6,0x21D7,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21F7,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21F6,0x21D6,0x21F6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21D6,0x21D6,0x21D6,0x21F6,0x21F6,0x21D6,0x21D6,0x21D7,0x19B6,0x19B6,0x19B6,0x11B6,0x11D7,0x11B6,0x11B7,0x09B7,0x09B8,0x09D9,0x01D9,0x01D9,0x01B8,0x01B9,0x01D9,0x01D9,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x09F9,0x09F9,0x09F9,0x11F8,0x19D7,0x1174,0x1112,0x1931,0x1931,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x2910,0x290F,0x290F,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x2930,0x212F,0x212F,0x290F,0x290F,0x212F,0x212F,0x290F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x1931,0x1111,0x1133,0x19F7,0x1A18,0x19F8,0x1196,0x0912,0x1111,0x1931,0x2131,0x2130,0x2930,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x2130,0x2131,0x1911,0x1132,0x1154,0x19B6,0x19F7,0x19D6,0x19B5,0x1133,0x1112,0x2111,0x2130,0x2110,0x290F,0x210F,0x292F,0x2930,0x2930,0x210F,0x210F,0x2110,0x2130,0x1910,0x1931,0x1932,0x1132,0x1133,0x1174,0x19D6,0x19D7,0x19F7,0x11B6,0x1154,0x1132,0x1932,0x1931,0x1910,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x290F,0x290F,0x2910,0x210F,0x210F,0x290F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x1911,0x10F1,0x1974,0x21F6,0x21D5,0x1994,0x08F2,0x1112,0x1931,0x1931,0x2130,0x2130,0x2150,0x2150,0x210F,0x212F,0x212F,0x2150,0x210F,0x2130,0x2130,0x2130,0x1951,0x1932,0x1132,0x0933,0x2217,0x2238,0x19D6,0x1174,0x1133,0x1953,0x1951,0x2131,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x2130,0x2130,0x2151,0x2152,0x1112,0x0913,0x11D7,0x1A19,0x1A19,0x19D7,0x10F2,0x1912,0x2111,0x2110,0x2910,0x2910,0x210F,0x2910,0x2930,0x210F,0x2930,0x2910,0x210F,0x210F,0x2930,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x290F,0x2930,0x290F,0x2910,0x2930,0x2910,0x2930,0x2130,0x2130,0x2130,0x2110,0x1931,0x1911,0x1932,0x1953,0x1154,0x1174,0x21D6,0x2A17,0x21D6,0x2195,0x1112,0x10F1,0x1911,0x2131,0x2131,0x2130,0x2130,0x190F,0x2130,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x292F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x210F,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x2130,0x2930,0x2130,0x210F,0x210F,0x212F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1112,0x1113,0x19B5,0x2217,0x19F7,0x11B5,0x0933,0x1112,0x1932,0x1931,0x2111,0x2130,0x2130,0x2130,0x1930,0x1931,0x1132,0x1132,0x21D5,0x2216,0x21D6,0x1994,0x1112,0x1112,0x2152,0x2151,0x2131,0x2110,0x2130,0x2110,0x2110,0x2910,0x210F,0x2930,0x2930,0x292F,0x210F,0x290F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x2930,0x210F,0x210F,0x210F,0x212F,0x2130,0x2110,0x210F,0x2130,0x2130,0x2131,0x2131,0x1932,0x1132,0x19B4,0x2A16,0x19D5,0x1994,0x1112,0x1911,0x1931,0x2131,0x1911,0x2131,0x1930,0x1931,0x1131,0x1153,0x1A16,0x1A17,0x19F7,0x11B5,0x1132,0x1931,0x1910,0x2110,0x2130,0x2130,0x2130,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x290F,0x210F,0x2930,0x210F,0x2930,0x290F,0x210F,0x2930,0x2930,0x2930,0x2910,0x2910,0x210F,0x2930,0x2930,0x2110,0x2110,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x2930,0x2110,0x210F,0x2910,0x210F,0x2930,0x2910,0x210F,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2111,0x1911,0x1932,0x1933,0x1975,0x21F7,0x2217,0x19F6,0x1195,0x1153,0x1112,0x10F1,0x10F0,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2951,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2151,0x1930,0x1931,0x2131,0x2131,0x2131,0x2111,0x2111,0x2131,0x2111,0x2110,0x2131,0x2131,0x1911,0x2111,0x2131,0x1911,0x1931,0x2131,0x1911,0x1911,0x2111,0x2111,0x2111,0x2111,0x2131,0x2131,0x1911,0x1911,0x1931,0x1911,0x1932,0x1132,0x1133,0x1154,0x19B5,0x21F7,0x21F7,0x19B5,0x1174,0x1153,0x1153,0x1152,0x1132,0x1932,0x1111,0x1111,0x1132,0x1153,0x1195,0x19D6,0x19D7,0x21F7,0x19D7,0x1175,0x1133,0x10F2,0x1911,0x2111,0x2131,0x2110,0x2110,0x210F,0x2130,0x2110,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F, + 0x2131,0x1911,0x2131,0x1911,0x1911,0x1912,0x1933,0x1153,0x1154,0x1176,0x11B7,0x11F8,0x11F9,0x11F9,0x11F8,0x11D7,0x1195,0x1174,0x1133,0x1132,0x1931,0x1911,0x2131,0x2151,0x2130,0x2150,0x2130,0x2110,0x2110,0x2130,0x2131,0x2151,0x1931,0x1111,0x1133,0x1174,0x19D6,0x2217,0x1A17,0x19F6,0x19B5,0x1133,0x1132,0x1932,0x2151,0x2131,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x292F,0x290F,0x290F,0x212F,0x210F,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x2930,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x212F,0x292F,0x290F,0x290F,0x2930,0x2110,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2910,0x290F,0x290F,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2910,0x28EF,0x290F,0x290F,0x290F,0x2910,0x210F,0x2910,0x210F,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x210F,0x2910,0x210F,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x212F,0x212F,0x2130,0x2950,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1912,0x1912,0x1932,0x1953,0x1933,0x1953,0x1953,0x1973,0x1153,0x1973,0x1974,0x1954,0x1974,0x1974,0x1974,0x1974,0x1954,0x1954,0x1974,0x1974,0x1954,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1174,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1954,0x1974,0x1974,0x1954,0x1974,0x1974,0x1974,0x1974,0x1174,0x1994,0x1994,0x1994,0x1974,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x21B5,0x1995,0x19B5,0x19B6,0x21D6,0x19B6,0x19D6,0x19D6,0x19D7,0x19D7,0x11D7,0x11D8,0x11F9,0x09D9,0x09D9,0x01B8,0x09F9,0x01D8,0x01D9,0x01B9,0x01B9,0x01B9,0x09D9,0x01B9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01B9,0x01D9,0x01DA,0x01B9,0x01B9,0x01B9,0x01B9,0x01B9,0x01D9,0x01B9,0x01D9,0x01B9,0x01D9,0x01B9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x01FA,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x09D9,0x09D9,0x09F9,0x09D8,0x11D8,0x11B6,0x1154,0x1112,0x2132,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x2930,0x2130,0x2130,0x2110,0x2130,0x1931,0x1111,0x1133,0x19D6,0x1A18,0x19F8,0x19B6,0x0912,0x1932,0x2131,0x2130,0x2130,0x2930,0x212F,0x292F,0x292F,0x292F,0x210F,0x212F,0x212F,0x2130,0x2130,0x1911,0x1132,0x1154,0x19B6,0x19F7,0x19D6,0x19B6,0x1133,0x1912,0x2131,0x2110,0x2930,0x290F,0x212F,0x210F,0x290F,0x2930,0x210F,0x210F,0x2130,0x2130,0x2110,0x1911,0x1932,0x1932,0x1112,0x1154,0x19B5,0x19D6,0x11D6,0x1195,0x0913,0x1132,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x2930,0x292F,0x290F,0x292F,0x210F,0x290F,0x210F,0x210F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2930,0x290F,0x210F,0x212F,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x1911,0x10F1,0x1974,0x21D6,0x21D5,0x19B5,0x0912,0x1112,0x1952,0x1931,0x2150,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x2950,0x212F,0x2130,0x2130,0x2130,0x1931,0x1932,0x0932,0x0954,0x1A17,0x1A18,0x19F7,0x1175,0x1133,0x1953,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210E,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2131,0x2151,0x1931,0x1112,0x0913,0x19D7,0x19F8,0x1A19,0x19D7,0x10F2,0x1911,0x2111,0x2110,0x2910,0x2110,0x2930,0x2910,0x210F,0x210F,0x2930,0x290F,0x2930,0x210F,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2930,0x2930,0x2130,0x2130,0x2131,0x1931,0x1931,0x1932,0x1933,0x1153,0x1174,0x21D6,0x2A17,0x21D6,0x1974,0x1933,0x1932,0x1911,0x1910,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x2150,0x212F,0x212F,0x212F,0x292F,0x210F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x292F,0x292F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1932,0x1112,0x1995,0x2217,0x19F7,0x11B6,0x0933,0x1132,0x1952,0x1931,0x2131,0x2130,0x2130,0x2130,0x1930,0x1931,0x1132,0x0932,0x19D5,0x2A17,0x21F6,0x1995,0x1112,0x1112,0x2152,0x2151,0x2131,0x2130,0x2130,0x2110,0x2930,0x2910,0x210F,0x2930,0x212F,0x2930,0x292F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x212F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x2930,0x2910,0x290F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x212F,0x292F,0x292F,0x212F,0x210F,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x2930,0x210F,0x2930,0x2110,0x2110,0x2130,0x2131,0x2151,0x1931,0x1132,0x1994,0x21F6,0x19D5,0x19B4,0x1112,0x1931,0x1931,0x2131,0x2131,0x2131,0x1910,0x1931,0x1131,0x1153,0x1A17,0x1A17,0x11F7,0x11B6,0x1132,0x1931,0x1930,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x2930,0x212F,0x290F,0x290F,0x290F,0x2930,0x212F,0x2930,0x2930,0x210F,0x2930,0x2930,0x212F,0x2930,0x2930,0x2130,0x212F,0x212F,0x2930,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x210F,0x210F,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x210F,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2111,0x2111,0x1911,0x1912,0x1953,0x1975,0x19D7,0x2218,0x19F7,0x19B5,0x0953,0x0912,0x10F1,0x1111,0x1910,0x1910,0x1910,0x1910,0x2131,0x2131,0x1911,0x2111,0x2111,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2130,0x1910,0x2131,0x2111,0x2130,0x2131,0x2131,0x2131,0x1931,0x1931,0x1931,0x1931,0x1910,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1132,0x1133,0x1154,0x19B6,0x21F7,0x2217,0x19B5,0x1194,0x1153,0x1133,0x1152,0x1952,0x1932,0x1111,0x1132,0x1132,0x1153,0x19B5,0x19D6,0x19F7,0x21F7,0x19D7,0x1175,0x1133,0x1112,0x1911,0x2131,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x292F,0x2930,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x292F, + 0x2132,0x1931,0x1911,0x1911,0x1911,0x1911,0x1912,0x1132,0x1153,0x1154,0x1196,0x11B7,0x19F8,0x11F8,0x1A39,0x11F8,0x11D6,0x1195,0x1154,0x1133,0x1132,0x1931,0x1911,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2151,0x2152,0x1931,0x1112,0x1133,0x1174,0x19D6,0x2217,0x2217,0x19D6,0x1195,0x1153,0x1132,0x1952,0x1931,0x1910,0x2110,0x2110,0x2130,0x210F,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x2930,0x210F,0x290F,0x212F,0x212F,0x292F,0x292F,0x2930,0x2930,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x2910,0x290F,0x290F,0x2930,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x2910,0x210F,0x210F,0x2910,0x2930,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x2910,0x2910,0x2910,0x28F0,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x28EF,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x210F,0x2910,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2910,0x210F,0x210F,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2930,0x2910,0x2110,0x2110,0x2110,0x2130,0x210F,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2111,0x2132,0x1912,0x1912,0x1912,0x1912,0x1112,0x1132,0x1932,0x1112,0x1112,0x1912,0x1112,0x1112,0x1112,0x1132,0x1112,0x1113,0x1133,0x1113,0x1133,0x1933,0x1113,0x1113,0x1113,0x1113,0x1113,0x1112,0x1112,0x1112,0x1113,0x1113,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1112,0x1112,0x1133,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1132,0x1132,0x1112,0x1112,0x1112,0x1132,0x1933,0x1133,0x1933,0x1153,0x1153,0x1154,0x1974,0x1995,0x1175,0x1195,0x11B7,0x11D7,0x19F8,0x1219,0x1A19,0x11F8,0x1A19,0x1219,0x09B8,0x09D8,0x09F9,0x09F9,0x09D8,0x09D8,0x09D9,0x09D8,0x09D9,0x09F9,0x09D9,0x09D9,0x09F9,0x09D9,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x01D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01D9,0x09F9,0x01D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09B9,0x09B9,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x09F8,0x11F8,0x19F7,0x19D6,0x1153,0x1912,0x1911,0x2131,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2130,0x2130,0x2131,0x1931,0x1111,0x1133,0x19D6,0x1A18,0x19F8,0x1196,0x1112,0x1911,0x2131,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x2950,0x2130,0x2130,0x1911,0x1132,0x1174,0x19F6,0x19F7,0x19D6,0x1995,0x1133,0x1912,0x2131,0x2110,0x2110,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2111,0x2131,0x1932,0x1112,0x1153,0x19D6,0x21F7,0x19F7,0x11B5,0x0912,0x1132,0x1931,0x2131,0x2110,0x2130,0x210F,0x212F,0x2130,0x212F,0x2930,0x292F,0x212F,0x292F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x2930,0x2930,0x2110,0x2110,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2930,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x10F1,0x2174,0x29F6,0x21F6,0x1994,0x1112,0x1112,0x1931,0x1931,0x2130,0x2150,0x2150,0x190F,0x212F,0x212F,0x2950,0x2150,0x2130,0x2130,0x2130,0x2131,0x1931,0x1112,0x0933,0x0954,0x19F7,0x1A18,0x1A18,0x11B6,0x0933,0x1132,0x1931,0x1931,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2151,0x2131,0x1911,0x1112,0x1154,0x19F8,0x1A18,0x1A39,0x19D7,0x1112,0x2111,0x2111,0x2110,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x28EF,0x20EF,0x290F,0x290F,0x2950,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x292F,0x292F,0x292F,0x290F,0x290F,0x2910,0x2930,0x2130,0x2130,0x2110,0x1910,0x1931,0x1932,0x1933,0x1954,0x1175,0x21D6,0x21F7,0x21D6,0x1974,0x1132,0x1912,0x1911,0x1931,0x2130,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x290F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1132,0x1133,0x19B5,0x2217,0x19F7,0x11B5,0x0933,0x1132,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x1910,0x1931,0x1132,0x1132,0x19D5,0x2217,0x21F6,0x1995,0x1112,0x1112,0x1932,0x2151,0x2151,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x2910,0x2110,0x2930,0x2930,0x212F,0x210F,0x290F,0x290F,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x210F,0x290F,0x210F,0x292F,0x2930,0x2930,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x1931,0x1132,0x19B4,0x21F5,0x21D5,0x1994,0x1112,0x1911,0x2131,0x2131,0x2131,0x2131,0x1931,0x1931,0x1112,0x1133,0x1A17,0x1A38,0x1A18,0x11B5,0x1132,0x1911,0x1930,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x212F,0x212F,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x212F,0x2930,0x210F,0x212F,0x2930,0x2110,0x2110,0x2930,0x212F,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x210F,0x2910,0x2910,0x2930,0x2910,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2110,0x2910,0x2930,0x2130,0x2130,0x2110,0x2110,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2131,0x2931,0x2131,0x2131,0x2111,0x1911,0x1912,0x1953,0x19B5,0x19D6,0x1A17,0x1A17,0x11B5,0x0954,0x0912,0x08F1,0x08F1,0x10F1,0x10F1,0x10F1,0x10F1,0x10F1,0x1911,0x1911,0x10F1,0x1911,0x1911,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x18F1,0x1911,0x1911,0x1111,0x1111,0x1111,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1912,0x1112,0x1112,0x1112,0x1112,0x10F1,0x10F1,0x1911,0x1911,0x1911,0x1911,0x1912,0x1911,0x18F1,0x10F1,0x10F1,0x1112,0x1112,0x1133,0x1133,0x1154,0x1195,0x21F7,0x21F7,0x19B6,0x1995,0x1153,0x1132,0x1112,0x1132,0x1952,0x1932,0x1132,0x1132,0x1153,0x1994,0x19D6,0x19F7,0x2218,0x19D6,0x1175,0x1133,0x1132,0x1911,0x1911,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x292F,0x212F,0x292F,0x210F,0x290F,0x210F,0x292F,0x292F,0x292F,0x292F, + 0x1932,0x1932,0x1911,0x1931,0x1931,0x1931,0x1911,0x1111,0x1132,0x1953,0x1154,0x1175,0x11B7,0x19F8,0x1218,0x1218,0x1218,0x11D6,0x1195,0x1174,0x1133,0x1132,0x1911,0x1931,0x2131,0x2110,0x2930,0x2130,0x2130,0x2130,0x2110,0x2151,0x2151,0x1931,0x1111,0x1112,0x0912,0x1174,0x19D6,0x19F7,0x2217,0x21F6,0x1195,0x1153,0x1132,0x1932,0x2131,0x2111,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x292F,0x210F,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2910,0x2910,0x290F,0x210F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x290F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x20EF,0x210F,0x210F,0x2910,0x210F,0x210F,0x2910,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2910,0x290F,0x2910,0x2910,0x210F,0x290F,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x2910,0x210F,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2910,0x2910,0x290F,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2910,0x2110,0x2910,0x2110,0x210F,0x210F,0x2130,0x2930,0x212F,0x212F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2130,0x2131,0x2111,0x2111,0x2111,0x1911,0x1912,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1912,0x1912,0x1932,0x1932,0x1912,0x1932,0x1912,0x1912,0x1932,0x1912,0x1112,0x1912,0x1932,0x1912,0x1912,0x1912,0x1932,0x1912,0x1912,0x1932,0x1912,0x1932,0x1912,0x1112,0x1112,0x1932,0x1932,0x1912,0x1912,0x1912,0x1912,0x1932,0x1932,0x1912,0x1912,0x1932,0x1912,0x1912,0x1912,0x1932,0x1911,0x1932,0x1932,0x1931,0x1931,0x1932,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1912,0x1912,0x1912,0x1911,0x1912,0x1912,0x1912,0x1132,0x1132,0x1133,0x1134,0x1154,0x1175,0x1196,0x1196,0x11B6,0x11B6,0x19D7,0x11D7,0x19D8,0x19F8,0x11D8,0x11F8,0x19F8,0x11D8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x19F9,0x11D8,0x11F8,0x11F9,0x11D8,0x11D8,0x11F9,0x11D8,0x11F8,0x11D8,0x11F8,0x11D8,0x11F8,0x11F8,0x11F8,0x09D8,0x11F9,0x11D8,0x11D8,0x11D8,0x11B8,0x11D8,0x11B8,0x11B8,0x11D8,0x11D8,0x11D8,0x11F8,0x19D7,0x19D6,0x21B5,0x1932,0x1911,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2110,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x290F,0x212F,0x292F,0x292F,0x212F,0x212F,0x292F,0x212F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1112,0x0933,0x19D6,0x1A18,0x1A18,0x11B6,0x1132,0x1911,0x2131,0x2130,0x2130,0x2130,0x212F,0x292F,0x212F,0x292F,0x292F,0x292F,0x2950,0x2130,0x2130,0x1931,0x1132,0x1154,0x19D6,0x19D6,0x19F7,0x19B5,0x1133,0x1912,0x2111,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2131,0x1932,0x1112,0x1133,0x19B5,0x19F6,0x19D6,0x19B5,0x0912,0x1132,0x1931,0x2131,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x2930,0x212F,0x292F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x2910,0x2910,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1911,0x10F2,0x2174,0x29F6,0x21F6,0x1994,0x1112,0x1112,0x1952,0x1931,0x2151,0x2130,0x212F,0x190F,0x212F,0x2130,0x2150,0x2150,0x2130,0x2130,0x2130,0x1910,0x1932,0x1132,0x1133,0x0954,0x11D7,0x1A18,0x1A18,0x19F7,0x0934,0x1132,0x1932,0x1931,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2150,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2130,0x2151,0x1931,0x1111,0x1133,0x1175,0x19F8,0x19F8,0x1A18,0x19B6,0x1932,0x2111,0x2111,0x2910,0x2910,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x210F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x20CE,0x20CE,0x28EF,0x290F,0x3150,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x2930,0x2930,0x2130,0x2131,0x2131,0x1911,0x1132,0x1974,0x1174,0x21D6,0x2A17,0x21F7,0x1154,0x1133,0x1111,0x1911,0x1911,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x2930,0x290F,0x290F,0x210F,0x212F,0x2130,0x212F,0x212F,0x2930,0x2930,0x212F,0x2930,0x2910,0x2930,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1932,0x1133,0x19B5,0x2217,0x1A17,0x19B6,0x0933,0x1132,0x1952,0x1911,0x2131,0x2130,0x2130,0x2130,0x1930,0x1931,0x1132,0x1132,0x19D5,0x2216,0x19F6,0x19B5,0x08F2,0x1932,0x1952,0x2151,0x2131,0x2110,0x2110,0x2930,0x2930,0x2930,0x2110,0x210F,0x212F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x2930,0x2910,0x2110,0x2110,0x2930,0x210F,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2930,0x210F,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1132,0x1994,0x21F5,0x21D5,0x1994,0x1112,0x1911,0x2131,0x2131,0x2131,0x2131,0x1911,0x1931,0x1932,0x1133,0x19F7,0x1A38,0x1A18,0x11B5,0x1132,0x1931,0x1930,0x2130,0x2110,0x2130,0x212F,0x212F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x210F,0x2130,0x2110,0x2930,0x210F,0x212F,0x2930,0x2930,0x210F,0x290F,0x2930,0x210F,0x212F,0x212F,0x210F,0x2930,0x2110,0x2110,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x210F,0x2910,0x2910,0x2930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2931,0x2110,0x2110,0x2131,0x2111,0x1911,0x1932,0x1153,0x19B5,0x19F7,0x1A17,0x2237,0x19F6,0x1195,0x1174,0x0913,0x0912,0x08F2,0x08F2,0x08F2,0x1113,0x08F2,0x0912,0x1113,0x1112,0x0912,0x1112,0x1112,0x1112,0x1112,0x1112,0x0912,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1133,0x1112,0x1112,0x1112,0x0912,0x0912,0x1132,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x0912,0x0912,0x1112,0x1112,0x1112,0x0912,0x1113,0x0912,0x1133,0x0933,0x0913,0x1113,0x1113,0x1112,0x1112,0x1133,0x1132,0x1132,0x1113,0x1112,0x1112,0x1112,0x1113,0x1133,0x1133,0x1154,0x1195,0x19D6,0x2217,0x2217,0x19B6,0x1995,0x1153,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1153,0x1174,0x19D6,0x19F7,0x2217,0x21F7,0x1995,0x1133,0x1132,0x1932,0x1931,0x2110,0x2130,0x2110,0x2910,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x212F,0x2930,0x210F,0x292F,0x210F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F, + 0x1953,0x1132,0x1952,0x1932,0x1931,0x1911,0x2131,0x1931,0x1932,0x1112,0x1933,0x1154,0x1175,0x11B7,0x11D8,0x1218,0x1218,0x11F8,0x11D7,0x1196,0x1174,0x1133,0x1132,0x1912,0x1911,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x2110,0x2151,0x2151,0x1931,0x1111,0x1112,0x1133,0x1174,0x19B5,0x2217,0x2217,0x19F6,0x1995,0x1153,0x1132,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x210F,0x212F,0x210F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x292F,0x292F,0x210F,0x2130,0x212F,0x2130,0x2930,0x212F,0x2930,0x212F,0x210F,0x210F,0x290F,0x2930,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2930,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x210F,0x2910,0x2910,0x2910,0x210F,0x2110,0x210F,0x210F,0x2930,0x290F,0x2910,0x2930,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x290F,0x210F,0x210F,0x292F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x292F,0x290F,0x210F,0x2910,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x2111,0x2111,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x2132,0x1931,0x2152,0x1932,0x1931,0x1931,0x1932,0x1932,0x1931,0x1911,0x1932,0x1911,0x1952,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1932,0x1931,0x1931,0x1931,0x2132,0x1911,0x1931,0x1911,0x2132,0x1911,0x1931,0x1911,0x2131,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1911,0x2151,0x2131,0x2131,0x1911,0x1911,0x1911,0x2131,0x1931,0x1911,0x1911,0x2132,0x1932,0x1932,0x1912,0x1133,0x1133,0x1154,0x1154,0x1154,0x1154,0x1154,0x1955,0x1975,0x1155,0x1155,0x1175,0x1175,0x1155,0x1175,0x1175,0x1176,0x1175,0x1996,0x1175,0x1175,0x1196,0x1176,0x1176,0x1196,0x1175,0x1196,0x1996,0x1196,0x1176,0x1196,0x1196,0x1196,0x1196,0x1196,0x11B6,0x1176,0x1196,0x1196,0x1175,0x1996,0x1996,0x1155,0x1176,0x1996,0x1196,0x19B6,0x19B6,0x19B6,0x19B6,0x1995,0x1974,0x2173,0x1932,0x1910,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x212F,0x212F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x2110,0x2910,0x210F,0x210F,0x290F,0x210F,0x2910,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x290F,0x290F,0x292F,0x212F,0x212F,0x292F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2130,0x2130,0x2130,0x1931,0x1112,0x1133,0x19F7,0x1A38,0x1A18,0x11B6,0x1133,0x1932,0x2131,0x2110,0x2130,0x2950,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x2930,0x2130,0x2130,0x1931,0x1132,0x1174,0x19F6,0x19F7,0x19F7,0x19B5,0x1133,0x1912,0x2131,0x2110,0x2110,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2130,0x2110,0x2110,0x2131,0x1932,0x1912,0x1133,0x1995,0x21F7,0x19D6,0x1195,0x0912,0x1132,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2130,0x2130,0x210F,0x2930,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2930,0x2930,0x212F,0x212F,0x210F,0x2930,0x2930,0x210F,0x2910,0x2910,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2131,0x2131,0x1912,0x10F2,0x2174,0x29F6,0x21D6,0x1995,0x1112,0x1112,0x1952,0x2131,0x2151,0x2150,0x2130,0x190F,0x212F,0x2150,0x2150,0x2150,0x2110,0x2131,0x1910,0x1911,0x1932,0x1153,0x0934,0x1175,0x11D7,0x11D7,0x1A18,0x19F8,0x0954,0x0933,0x1132,0x1952,0x2151,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2110,0x1911,0x1931,0x1952,0x1153,0x21F6,0x19F8,0x19F8,0x19F8,0x1995,0x1932,0x2131,0x2130,0x2110,0x2910,0x2910,0x2930,0x2930,0x210F,0x2930,0x290F,0x290F,0x2930,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x28EE,0x28EF,0x290F,0x28CE,0x20AD,0x20AD,0x20CE,0x20CE,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2930,0x292F,0x2930,0x2130,0x2130,0x2130,0x2111,0x1911,0x1953,0x1974,0x1174,0x19B6,0x2A38,0x2A17,0x1974,0x1112,0x1912,0x1931,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x292F,0x212F,0x292F,0x212F,0x212F,0x212F,0x292F,0x290F,0x210F,0x2910,0x2110,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2110,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2150,0x2131,0x1931,0x1932,0x1133,0x19B5,0x2218,0x21F7,0x19B6,0x0933,0x1132,0x1952,0x1931,0x2131,0x2130,0x2130,0x2130,0x1951,0x1931,0x1132,0x1132,0x19D5,0x2216,0x21F6,0x1995,0x08F2,0x1112,0x2152,0x2152,0x2131,0x2110,0x2130,0x2130,0x2930,0x2910,0x2110,0x2110,0x2930,0x212F,0x210F,0x290F,0x2930,0x210F,0x2910,0x2910,0x2930,0x2930,0x2110,0x2110,0x210F,0x2930,0x210F,0x290F,0x290F,0x2910,0x290F,0x290F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2910,0x210F,0x2910,0x2910,0x210F,0x2930,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2111,0x1931,0x1931,0x1132,0x1994,0x21F5,0x19D5,0x1994,0x1112,0x1931,0x2131,0x2131,0x2131,0x2111,0x1911,0x1931,0x1932,0x1153,0x19F7,0x1218,0x1A18,0x1195,0x1133,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x210F,0x292F,0x292F,0x210F,0x292F,0x212F,0x292F,0x292F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x212F,0x2930,0x210F,0x212F,0x2130,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x28F0,0x28EF,0x290F,0x2910,0x290F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x292F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x1911,0x1112,0x1133,0x1195,0x19F7,0x1A38,0x1A58,0x1A38,0x1A18,0x19F7,0x19F7,0x19D7,0x19B7,0x1196,0x1196,0x11B7,0x1196,0x1196,0x1196,0x11B6,0x1196,0x11B6,0x1195,0x11B6,0x1196,0x19B6,0x1996,0x1996,0x19B6,0x19B6,0x11B6,0x11B6,0x11B6,0x19B6,0x19D6,0x11B6,0x11B6,0x1196,0x11B6,0x11B6,0x1196,0x11D6,0x11B6,0x11B6,0x19B6,0x1196,0x11B6,0x1196,0x1195,0x11B5,0x1195,0x1195,0x1195,0x11B6,0x1196,0x11B6,0x11B6,0x11B6,0x11B6,0x19B6,0x11B6,0x11D6,0x11B6,0x11B6,0x19B6,0x11B6,0x11B5,0x11B6,0x11B5,0x19D6,0x19D6,0x19B6,0x19D6,0x19B6,0x19B6,0x19D6,0x19D6,0x19F7,0x19F7,0x1A17,0x1A17,0x1A17,0x19D6,0x1174,0x1154,0x1133,0x1132,0x1132,0x1932,0x1132,0x1132,0x1133,0x1174,0x1995,0x19F6,0x19D7,0x19D7,0x21F7,0x1995,0x1133,0x1112,0x1111,0x1931,0x2151,0x2130,0x2110,0x2130,0x210F,0x2930,0x2930,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x212F,0x210F,0x292F,0x212F, + 0x21F6,0x1174,0x1153,0x1932,0x1932,0x1911,0x2131,0x2131,0x1911,0x1912,0x1912,0x1933,0x1154,0x1175,0x11D7,0x11F8,0x11F8,0x1218,0x11F8,0x11D7,0x11B6,0x1175,0x1154,0x1933,0x1932,0x1911,0x2131,0x2131,0x2110,0x2110,0x2130,0x2110,0x2130,0x2151,0x2151,0x1931,0x1111,0x1112,0x1133,0x1174,0x19B5,0x2217,0x2217,0x19D6,0x19B5,0x1133,0x1132,0x1932,0x1931,0x2131,0x2131,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x290F,0x290F,0x2930,0x210F,0x2930,0x292F,0x292F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2930,0x2930,0x212F,0x2930,0x210F,0x210F,0x2930,0x212F,0x210F,0x212F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x2930,0x210F,0x210F,0x2130,0x210F,0x212F,0x210F,0x2930,0x210F,0x210F,0x2110,0x2130,0x212F,0x212F,0x2930,0x290F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x2130,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2110,0x2910,0x2910,0x210F,0x2930,0x210F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x1931,0x1930,0x2131,0x2111,0x2131,0x2111,0x2111,0x1931,0x1931,0x2131,0x2131,0x1911,0x2131,0x2131,0x2111,0x1911,0x2131,0x2131,0x1910,0x1911,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2111,0x2111,0x2131,0x2111,0x2131,0x2111,0x2131,0x2131,0x2131,0x2110,0x2111,0x1910,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x2131,0x2111,0x1911,0x1932,0x1932,0x1933,0x1932,0x1953,0x1933,0x1933,0x1913,0x1933,0x1113,0x1133,0x1113,0x1133,0x1934,0x1133,0x1113,0x1133,0x1133,0x1134,0x1133,0x1133,0x1133,0x1134,0x1134,0x1133,0x1134,0x1134,0x1113,0x1134,0x1134,0x1134,0x1133,0x1134,0x1134,0x1133,0x1134,0x1134,0x1133,0x1133,0x1133,0x1153,0x1133,0x1133,0x1134,0x1134,0x1134,0x1134,0x1134,0x1154,0x1133,0x1932,0x1912,0x1911,0x2111,0x2110,0x2110,0x2130,0x2930,0x210F,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x2910,0x2910,0x290F,0x292F,0x2930,0x210F,0x2930,0x210F,0x2910,0x2910,0x290F,0x290F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x210F,0x292F,0x292F,0x292F,0x292F,0x2130,0x2130,0x2131,0x2131,0x1931,0x1112,0x1133,0x19F7,0x1A18,0x11F7,0x19D6,0x1133,0x1932,0x2131,0x2130,0x2130,0x2950,0x212F,0x210F,0x210F,0x292F,0x210F,0x292F,0x212F,0x2130,0x2130,0x1931,0x1132,0x1174,0x19D6,0x19F7,0x19D6,0x19B5,0x1113,0x1912,0x2131,0x2130,0x2110,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2130,0x2110,0x2111,0x1932,0x1932,0x1133,0x1995,0x19D6,0x19D6,0x19B5,0x1132,0x1111,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x2930,0x292F,0x2930,0x212F,0x2930,0x210F,0x210F,0x2930,0x212F,0x212F,0x2930,0x2930,0x2930,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x210F,0x2130,0x212F,0x212F,0x210F,0x2110,0x210F,0x2930,0x2110,0x2910,0x2910,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2111,0x2132,0x1912,0x10F2,0x1974,0x29F6,0x21D6,0x21B5,0x1112,0x1112,0x1952,0x2151,0x2150,0x2130,0x212F,0x212F,0x212F,0x2150,0x2130,0x2151,0x2130,0x2131,0x1911,0x1911,0x1933,0x1154,0x0954,0x0976,0x11D7,0x11D8,0x11F8,0x11F8,0x11B6,0x0954,0x1153,0x1952,0x1952,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x290F,0x210F,0x290F,0x292F,0x212F,0x210F,0x290F,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x1931,0x1911,0x1932,0x1132,0x1995,0x21F7,0x19F7,0x19F8,0x19D7,0x1154,0x1932,0x2131,0x2130,0x2110,0x2910,0x2930,0x2930,0x210F,0x292F,0x292F,0x290F,0x2930,0x210F,0x212F,0x292F,0x2930,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x28EE,0x28CE,0x28CD,0x28AD,0x184B,0x49F2,0x4190,0x208D,0x20CE,0x28EF,0x292F,0x290F,0x290F,0x292F,0x290F,0x2910,0x2930,0x290F,0x210F,0x2930,0x2930,0x2130,0x2130,0x2131,0x1932,0x1953,0x1174,0x1996,0x2A18,0x2A17,0x1174,0x1113,0x1912,0x1931,0x1910,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x2930,0x292F,0x292F,0x292F,0x292F,0x212F,0x290F,0x292F,0x210F,0x2910,0x2110,0x210F,0x2110,0x210F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x19B5,0x21F7,0x19F7,0x19B6,0x1133,0x1132,0x1932,0x1931,0x2130,0x2130,0x2130,0x2150,0x1951,0x1931,0x1132,0x1132,0x19B5,0x2217,0x21F6,0x1995,0x08F2,0x1112,0x2152,0x2151,0x2131,0x2110,0x2110,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x290F,0x2930,0x2910,0x2910,0x2930,0x2110,0x2910,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2930,0x210F,0x2910,0x2110,0x2910,0x2110,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2111,0x1931,0x1931,0x1132,0x1994,0x21F5,0x19D5,0x1994,0x1132,0x1911,0x2131,0x2131,0x2111,0x2131,0x1911,0x1931,0x1112,0x1153,0x19F7,0x1A38,0x11F8,0x11B6,0x0932,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2130,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x210F,0x2130,0x2930,0x2930,0x2930,0x210F,0x2910,0x2110,0x2110,0x2110,0x2930,0x212F,0x210F,0x212F,0x212F,0x2930,0x2110,0x290F,0x290F,0x2910,0x2110,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x2930,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x1911,0x1931,0x1111,0x1133,0x1195,0x11D6,0x2238,0x2259,0x2279,0x2259,0x2A5A,0x2A7A,0x2A5A,0x2A5A,0x2A7A,0x2A5A,0x225A,0x2A7A,0x2279,0x2259,0x2259,0x2A79,0x2259,0x2259,0x2A59,0x2A79,0x2A59,0x2A39,0x2259,0x2A59,0x2259,0x2259,0x2259,0x227A,0x2259,0x2A7A,0x2259,0x2239,0x2259,0x2259,0x2259,0x227A,0x227A,0x2A7A,0x2259,0x2259,0x2259,0x2239,0x2259,0x2239,0x2A59,0x2A59,0x2A59,0x2259,0x2259,0x2259,0x2279,0x2279,0x2259,0x2259,0x2259,0x2259,0x2259,0x2259,0x2239,0x2259,0x2259,0x2258,0x2258,0x2259,0x2238,0x2259,0x1A18,0x2238,0x2238,0x1A18,0x19F8,0x1A18,0x19F7,0x1A18,0x19F7,0x19D6,0x1175,0x1154,0x1153,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1154,0x1195,0x19D6,0x19D7,0x21F7,0x21F7,0x1995,0x1154,0x1132,0x1911,0x1931,0x1910,0x2130,0x2130,0x210F,0x212F,0x2930,0x2930,0x2930,0x210F,0x210F,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x294F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2151,0x2131,0x2131,0x2151,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x290F,0x2930,0x212F,0x212F,0x212F,0x212F, + 0x2237,0x19D6,0x1174,0x1133,0x1112,0x1932,0x1931,0x2131,0x2131,0x1911,0x1911,0x1912,0x1133,0x1154,0x1195,0x11B7,0x11F8,0x1218,0x11F8,0x11F8,0x11B7,0x1196,0x1175,0x1134,0x1133,0x1932,0x1911,0x2111,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2151,0x1931,0x1111,0x1112,0x1133,0x1174,0x19B5,0x2217,0x1A17,0x19F6,0x19B5,0x0933,0x1132,0x1932,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2930,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x292F,0x2110,0x210F,0x210F,0x2910,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2930,0x2930,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2910,0x2110,0x2910,0x2110,0x2130,0x2110,0x2930,0x2930,0x2930,0x290F,0x2930,0x210F,0x2130,0x2130,0x210F,0x2930,0x2930,0x290F,0x2930,0x210F,0x2930,0x210F,0x210F,0x292F,0x212F,0x212F,0x210F,0x2130,0x2930,0x2130,0x2130,0x210F,0x210F,0x2110,0x2130,0x212F,0x290F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x292F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x292F,0x212F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2930,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2930,0x2130,0x212F,0x2930,0x2930,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x2111,0x1911,0x2132,0x2132,0x1912,0x1912,0x1911,0x1912,0x1932,0x1912,0x1932,0x1932,0x1112,0x1912,0x1912,0x1912,0x1112,0x1112,0x1912,0x1932,0x1912,0x1912,0x1932,0x1932,0x1912,0x1932,0x1912,0x1912,0x1112,0x1912,0x1912,0x1912,0x1112,0x1112,0x1112,0x1932,0x1912,0x1912,0x1932,0x1912,0x1932,0x1952,0x1112,0x1112,0x1912,0x1932,0x1912,0x1932,0x1912,0x1932,0x1911,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2110,0x2130,0x2130,0x212F,0x212F,0x2930,0x2910,0x2910,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2910,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x290F,0x292F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x2110,0x2110,0x2131,0x1911,0x1132,0x1133,0x19F7,0x1A38,0x11F8,0x11B6,0x1133,0x1111,0x1931,0x2130,0x2130,0x2930,0x212F,0x212F,0x292F,0x290F,0x210F,0x210F,0x292F,0x2130,0x2110,0x1911,0x1132,0x1154,0x21D6,0x19F7,0x19F7,0x1995,0x1133,0x1912,0x1911,0x2131,0x2930,0x2930,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1932,0x1133,0x19B5,0x2217,0x19D6,0x1995,0x1132,0x1932,0x1911,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x210F,0x2930,0x2930,0x210F,0x290F,0x2930,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2930,0x212F,0x210F,0x2930,0x210F,0x210F,0x2110,0x212F,0x212F,0x2930,0x2110,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2131,0x2132,0x1912,0x10F2,0x1974,0x21D6,0x21B6,0x1995,0x10F2,0x1112,0x1931,0x1910,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1932,0x1932,0x1954,0x1175,0x1176,0x1196,0x11F8,0x11F8,0x11D7,0x11D7,0x11D7,0x1196,0x1154,0x1133,0x1932,0x1932,0x2151,0x2131,0x2130,0x2110,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2930,0x212F,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2151,0x1931,0x1911,0x1932,0x1132,0x1974,0x21F6,0x21F7,0x19F7,0x21F7,0x1975,0x1112,0x1911,0x2131,0x2110,0x2110,0x2930,0x2110,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x28CD,0x28AD,0x28AD,0x206C,0x392E,0x9C3A,0xDE3F,0xBD5E,0x102B,0x28CE,0x290F,0x290F,0x28EF,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2110,0x2130,0x1911,0x1912,0x1154,0x1175,0x21F8,0x2218,0x1975,0x1113,0x1912,0x1932,0x1911,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x210F,0x2930,0x210F,0x210F,0x292F,0x292F,0x212F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x1910,0x1931,0x1112,0x1113,0x21B6,0x2A17,0x21F7,0x1995,0x1133,0x1112,0x1931,0x1930,0x2130,0x2130,0x2130,0x2150,0x1931,0x1931,0x1132,0x1133,0x19B5,0x2217,0x21F6,0x1995,0x08F2,0x1112,0x1952,0x1931,0x2130,0x2110,0x2130,0x2130,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x210F,0x2910,0x2930,0x2110,0x2910,0x2910,0x2910,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2910,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x2930,0x2910,0x210F,0x210F,0x2910,0x2930,0x2930,0x212F,0x210F,0x210F,0x210F,0x212F,0x2110,0x2110,0x2130,0x2130,0x2151,0x1931,0x1131,0x1132,0x1994,0x21F5,0x19D5,0x1994,0x1112,0x1911,0x1931,0x2131,0x1910,0x2111,0x2131,0x1931,0x1112,0x1133,0x19F7,0x1A38,0x1218,0x11B6,0x1133,0x1931,0x2131,0x2110,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x210F,0x292F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2930,0x2130,0x2930,0x2130,0x2110,0x210F,0x2110,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x212F,0x292F,0x292F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1932,0x1132,0x1154,0x1195,0x19D7,0x19D7,0x19D7,0x19D8,0x19D8,0x19D8,0x2219,0x2219,0x19F8,0x21F8,0x1A18,0x19F8,0x2218,0x1A18,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F7,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x1A18,0x19F8,0x1A18,0x1A18,0x19F8,0x19F8,0x19D8,0x19D8,0x19F8,0x19F8,0x1A18,0x19F8,0x1A18,0x1A18,0x19D7,0x19F8,0x21F8,0x19F8,0x2218,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19D8,0x19D8,0x2218,0x19F7,0x19F7,0x1A17,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19D7,0x19F7,0x19F7,0x19F7,0x1A18,0x19F7,0x19F7,0x19D6,0x19D6,0x1995,0x1174,0x1153,0x1953,0x1133,0x1132,0x1132,0x1132,0x1132,0x1133,0x1154,0x1175,0x19B6,0x19D7,0x19D7,0x21D7,0x1995,0x1133,0x1932,0x1932,0x1931,0x1910,0x2110,0x2110,0x2130,0x2930,0x292F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2151,0x1931,0x2151,0x2151,0x2151,0x2131,0x2151,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F, + 0x1218,0x11F7,0x11B6,0x1174,0x1133,0x1132,0x1932,0x2152,0x2131,0x2111,0x1911,0x1911,0x1912,0x1133,0x1154,0x1196,0x11B7,0x11F8,0x11F8,0x11F9,0x11F8,0x11D8,0x1196,0x1175,0x1154,0x1133,0x1932,0x1911,0x2131,0x2130,0x2130,0x2930,0x210F,0x210F,0x2130,0x2151,0x2131,0x1931,0x1111,0x1112,0x1133,0x1174,0x19B5,0x2217,0x19F7,0x19F7,0x19B5,0x0933,0x1132,0x1952,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x2930,0x212F,0x2110,0x2930,0x2930,0x2110,0x2930,0x2130,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2910,0x210F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x290F,0x2930,0x2930,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2910,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2910,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x20F0,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2111,0x2131,0x2131,0x2111,0x2111,0x2111,0x2111,0x2111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1932,0x1911,0x1911,0x1911,0x1931,0x1931,0x1932,0x1911,0x1911,0x1931,0x1931,0x1932,0x1931,0x1911,0x1911,0x2132,0x1911,0x1911,0x1911,0x1932,0x1931,0x1911,0x1911,0x1911,0x1911,0x1931,0x2132,0x1931,0x1911,0x1932,0x1911,0x1911,0x1911,0x2111,0x2111,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x212F,0x210F,0x2130,0x210F,0x210F,0x212F,0x292F,0x210F,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x290F,0x2910,0x2910,0x290F,0x2110,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x212F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1112,0x1133,0x19F7,0x1A39,0x1A18,0x19D6,0x0933,0x1932,0x2151,0x2130,0x2130,0x2950,0x212F,0x292F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2110,0x2130,0x1931,0x1132,0x1153,0x19D6,0x21F7,0x19F7,0x19B6,0x1133,0x1912,0x2131,0x2110,0x2130,0x2910,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x1911,0x1912,0x1133,0x1995,0x2217,0x19F6,0x19B5,0x1133,0x1132,0x1931,0x1910,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2130,0x210F,0x2930,0x210F,0x2930,0x2930,0x212F,0x2110,0x2110,0x2110,0x2930,0x2910,0x2930,0x210F,0x2930,0x210F,0x2110,0x2110,0x210F,0x212F,0x2130,0x212F,0x212F,0x210F,0x2910,0x2910,0x210F,0x2130,0x210F,0x2110,0x290F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1912,0x10F2,0x1975,0x21D6,0x21B6,0x19B5,0x1112,0x1112,0x2151,0x2130,0x2130,0x210F,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x1911,0x1911,0x1912,0x1133,0x1154,0x19B6,0x19D7,0x11B7,0x11D8,0x09B7,0x0997,0x0997,0x11F8,0x11D7,0x19D6,0x1174,0x1133,0x1952,0x1952,0x1931,0x2110,0x2130,0x2110,0x210F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x292F,0x210F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1931,0x1112,0x1132,0x1974,0x21D6,0x2217,0x21F7,0x19D7,0x1995,0x1133,0x1912,0x1911,0x2110,0x2110,0x2110,0x2930,0x2910,0x2930,0x290F,0x292F,0x292F,0x292F,0x2930,0x292F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290E,0x28CD,0x30CD,0x288C,0x202A,0x6A32,0xC51D,0xCD9F,0xD5DF,0x9C5A,0x102B,0x20CE,0x28EE,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x290F,0x2930,0x290F,0x2910,0x2910,0x2130,0x2130,0x1931,0x1932,0x1154,0x19D7,0x2218,0x21D7,0x1114,0x10F2,0x1932,0x1931,0x1910,0x2110,0x2130,0x2130,0x212F,0x2130,0x212F,0x210F,0x292F,0x292F,0x210F,0x210F,0x212F,0x292F,0x210F,0x2930,0x290F,0x290F,0x2930,0x2930,0x210F,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2131,0x1911,0x1912,0x1112,0x1995,0x21F7,0x21F7,0x19B5,0x1133,0x1112,0x1931,0x1910,0x2130,0x2130,0x2130,0x2150,0x1930,0x1951,0x1132,0x1132,0x21D6,0x21F6,0x19D6,0x19B5,0x0912,0x1111,0x2152,0x2151,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x290F,0x290F,0x290F,0x2930,0x2110,0x2930,0x2110,0x2910,0x2110,0x2110,0x2130,0x212F,0x210F,0x2930,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x290F,0x210F,0x2930,0x2930,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2110,0x2130,0x2130,0x2131,0x1931,0x1131,0x1131,0x19B4,0x21F5,0x19D5,0x1994,0x1132,0x1931,0x2131,0x2131,0x2111,0x2110,0x2111,0x1931,0x1932,0x0933,0x19F7,0x1A38,0x1218,0x1196,0x1153,0x1932,0x2131,0x2110,0x2130,0x212F,0x292F,0x212F,0x292F,0x210F,0x290F,0x292F,0x212F,0x212F,0x2930,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2130,0x2110,0x210F,0x2930,0x212F,0x212F,0x2930,0x292F,0x212F,0x212F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x210F,0x2910,0x212F,0x212F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1112,0x1133,0x1133,0x1134,0x1154,0x1155,0x1134,0x1155,0x1155,0x1155,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1995,0x1155,0x1175,0x1155,0x1175,0x1175,0x1175,0x1175,0x1155,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1155,0x1175,0x1175,0x1155,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1155,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1195,0x1175,0x1195,0x1175,0x1174,0x1175,0x1174,0x1154,0x1133,0x1133,0x1133,0x1132,0x1932,0x1132,0x1152,0x1132,0x1133,0x1154,0x1175,0x19B6,0x19F7,0x19D7,0x21F7,0x1996,0x1154,0x1932,0x1911,0x1911,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1932,0x1952,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F, + 0x09F8,0x11F8,0x11D7,0x1196,0x1175,0x1133,0x1132,0x1911,0x1911,0x2131,0x2111,0x2131,0x1932,0x1112,0x1112,0x1134,0x1196,0x11D7,0x11D8,0x11F9,0x1219,0x11F8,0x11D8,0x1196,0x1175,0x1134,0x1112,0x1911,0x1911,0x2130,0x2950,0x2930,0x210F,0x210F,0x2130,0x2130,0x2131,0x2131,0x1910,0x1911,0x1132,0x1153,0x1994,0x19B5,0x19D6,0x19F7,0x2217,0x1195,0x0933,0x1133,0x1953,0x1932,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x292F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2130,0x2130,0x210F,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x212F,0x212F,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2930,0x2110,0x210F,0x210F,0x2910,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x2910,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x2110,0x2930,0x212F,0x2110,0x2910,0x2930,0x2910,0x2910,0x2910,0x290F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2110,0x210F,0x210F,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2111,0x2131,0x2131,0x1910,0x1910,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2111,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1910,0x2131,0x2131,0x2152,0x2131,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x210F,0x212F,0x212F,0x212F,0x2930,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x292F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x290F,0x290F,0x290F,0x2930,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2930,0x290F,0x2930,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1911,0x1112,0x0934,0x11D7,0x1A18,0x11F8,0x11D6,0x0932,0x1111,0x1951,0x2151,0x2130,0x2130,0x212F,0x210F,0x2930,0x290F,0x290F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1132,0x1974,0x19B6,0x19D6,0x19D6,0x19B5,0x1133,0x1112,0x2131,0x2131,0x2130,0x2110,0x2110,0x210F,0x2930,0x2930,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1912,0x1133,0x1975,0x21F6,0x19F6,0x19D6,0x1153,0x1132,0x1911,0x1930,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x292F,0x292F,0x2930,0x290F,0x290F,0x2930,0x212F,0x212F,0x212F,0x2130,0x2110,0x2930,0x210F,0x2130,0x2930,0x2110,0x2110,0x2930,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2930,0x2930,0x210F,0x210F,0x2130,0x2130,0x2930,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1112,0x10F2,0x1995,0x21F6,0x21F6,0x1995,0x0912,0x10F1,0x1931,0x2130,0x2110,0x2130,0x2950,0x2130,0x2130,0x2110,0x2130,0x2131,0x18F0,0x10F1,0x1133,0x1175,0x19F7,0x1A18,0x11D8,0x09B7,0x0997,0x0997,0x0997,0x0997,0x11B7,0x11F8,0x1A39,0x11D7,0x1995,0x1133,0x1952,0x1931,0x2130,0x2110,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x1930,0x1931,0x1111,0x1132,0x1174,0x21D6,0x2A38,0x2217,0x19D7,0x1975,0x1133,0x1112,0x1911,0x2131,0x2110,0x2130,0x2110,0x2930,0x2930,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x2910,0x290F,0x292F,0x292F,0x290F,0x290F,0x28CD,0x30CD,0x284B,0x38AC,0xA3D8,0xDD7E,0xC4DC,0xBCDC,0xCD9F,0x4990,0x184C,0x20CE,0x290F,0x290F,0x292F,0x290F,0x210F,0x292F,0x292F,0x290F,0x2930,0x2930,0x2910,0x2910,0x2130,0x2131,0x1911,0x1112,0x1995,0x2218,0x2218,0x1996,0x08F3,0x1112,0x1932,0x2131,0x2130,0x2130,0x2110,0x210F,0x212F,0x2130,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x210F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x2910,0x290F,0x292F,0x2930,0x2930,0x2910,0x2910,0x290F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x292F,0x290F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2131,0x2131,0x1912,0x1132,0x21B5,0x2217,0x19D6,0x19B6,0x1154,0x1132,0x1932,0x1931,0x2130,0x2130,0x2130,0x210F,0x2130,0x1931,0x1111,0x0932,0x21D6,0x2217,0x21F6,0x1994,0x0912,0x1131,0x2151,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x292F,0x290F,0x2930,0x210F,0x2130,0x2130,0x2130,0x210F,0x2110,0x2130,0x2130,0x210F,0x2930,0x210F,0x2910,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x212F,0x292F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2110,0x210F,0x290F,0x210F,0x2110,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x19B4,0x21F5,0x19D5,0x1994,0x1132,0x1932,0x1931,0x2131,0x2131,0x2110,0x2110,0x1911,0x1932,0x1154,0x1A17,0x1A38,0x1218,0x11B6,0x1133,0x1931,0x2131,0x2130,0x2130,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x2930,0x212F,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2111,0x1911,0x1931,0x1932,0x1912,0x1912,0x1912,0x1112,0x1912,0x1912,0x1912,0x1112,0x1112,0x1112,0x1933,0x1132,0x1112,0x1132,0x1112,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1113,0x1113,0x1133,0x1133,0x1133,0x1133,0x1113,0x1112,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1112,0x1113,0x1113,0x1133,0x1133,0x1133,0x1113,0x1113,0x1112,0x1112,0x1112,0x1133,0x1133,0x1113,0x1112,0x1133,0x1133,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1112,0x1112,0x1133,0x1133,0x1153,0x1153,0x1133,0x1132,0x1112,0x1112,0x1111,0x1911,0x1111,0x1112,0x1132,0x1132,0x1153,0x1153,0x1154,0x1195,0x19F7,0x19F7,0x2217,0x19B6,0x1133,0x1112,0x1931,0x1931,0x2111,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x212F,0x210F,0x2110,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x292F,0x2930,0x294F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1911,0x1132,0x1133,0x1133,0x1133,0x1132,0x1132,0x1112,0x1932,0x1932,0x1931,0x1931,0x1910,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F, + 0x09F9,0x09F8,0x11D8,0x11D8,0x11B6,0x1175,0x1153,0x1112,0x1911,0x2131,0x2131,0x2131,0x2131,0x1911,0x1112,0x1112,0x1154,0x11B6,0x11B7,0x1A19,0x11F9,0x1219,0x11F9,0x09D7,0x11B7,0x1175,0x1154,0x1132,0x1931,0x2131,0x2110,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x1911,0x1932,0x1153,0x1174,0x19D5,0x19D6,0x2217,0x2217,0x1195,0x0933,0x1133,0x1952,0x2132,0x2131,0x2130,0x2110,0x2930,0x2930,0x2110,0x210F,0x210F,0x212F,0x2130,0x2930,0x212F,0x212F,0x292F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2930,0x2110,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x210F,0x2130,0x2930,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x2910,0x2910,0x2110,0x2110,0x210F,0x2910,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x210F,0x2910,0x2910,0x2910,0x210F,0x210F,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2151,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x292F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2930,0x212F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2930,0x290F,0x2930,0x210F,0x212F,0x212F,0x210F,0x212F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2150,0x2130,0x1931,0x1112,0x1113,0x0934,0x19F8,0x1218,0x1218,0x11D7,0x0933,0x1111,0x1951,0x2151,0x2130,0x2130,0x2130,0x2930,0x212F,0x2930,0x210F,0x210F,0x210F,0x2130,0x2110,0x1931,0x1932,0x1154,0x19B6,0x19D6,0x21F7,0x19B5,0x1112,0x1111,0x2131,0x2131,0x2110,0x2110,0x2110,0x210F,0x2930,0x2930,0x210F,0x210F,0x2930,0x2930,0x2130,0x2130,0x2131,0x1931,0x1912,0x1133,0x1974,0x19B6,0x19D6,0x21F6,0x1154,0x1952,0x1931,0x1930,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x290F,0x2930,0x2930,0x292F,0x290F,0x210F,0x212F,0x2130,0x2130,0x2130,0x212F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2930,0x290F,0x290F,0x292F,0x212F,0x212F,0x290F,0x290F,0x212F,0x2930,0x212F,0x210F,0x210F,0x2110,0x210F,0x2110,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1112,0x08F2,0x1995,0x21D6,0x21D6,0x19B5,0x1112,0x1111,0x1931,0x2130,0x2130,0x2930,0x212F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1911,0x10F1,0x0933,0x19D6,0x19F7,0x11F8,0x09B7,0x0976,0x0976,0x0976,0x0976,0x0996,0x0996,0x11D7,0x1218,0x19F8,0x1195,0x1133,0x1932,0x1931,0x2151,0x2110,0x210F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x210F,0x2130,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1132,0x1154,0x21D6,0x2217,0x2217,0x21F7,0x1975,0x1133,0x1112,0x1911,0x1911,0x2131,0x2130,0x2110,0x2130,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x290F,0x2910,0x290F,0x290F,0x290E,0x28CD,0x28AC,0x284A,0x490D,0xC4BB,0xD51D,0xC4BB,0xC4BB,0xC4FD,0xAC7B,0x288C,0x208D,0x20CE,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x2930,0x2930,0x290F,0x2930,0x2110,0x2110,0x2110,0x2131,0x1911,0x1112,0x19B6,0x19F7,0x19D7,0x1196,0x0913,0x1112,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x290F,0x2930,0x290F,0x292F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2910,0x2910,0x290F,0x2930,0x212F,0x210F,0x212F,0x292F,0x210F,0x292F,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2131,0x1932,0x1112,0x19B5,0x2217,0x19D6,0x19D6,0x1154,0x1112,0x1932,0x1931,0x2130,0x2110,0x210F,0x210F,0x2130,0x2131,0x1131,0x1132,0x19D5,0x2217,0x21F6,0x1994,0x0912,0x1932,0x2151,0x2130,0x2130,0x2950,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x290F,0x210F,0x2930,0x2910,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x212F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2930,0x210F,0x2910,0x2110,0x2130,0x2130,0x2130,0x1931,0x1931,0x1131,0x19B4,0x21F5,0x19D5,0x19B4,0x1132,0x1932,0x2152,0x2131,0x2131,0x2110,0x2110,0x2131,0x1932,0x1133,0x1A17,0x1A18,0x11F8,0x11B6,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x2930,0x2930,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2951,0x2131,0x2131,0x2111,0x2110,0x2110,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2930,0x2110,0x2110,0x2110,0x290F,0x210F,0x2930,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2131,0x2111,0x2111,0x1911,0x1911,0x2111,0x2111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1911,0x1911,0x1932,0x1911,0x1912,0x1932,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1111,0x1912,0x1912,0x1932,0x1111,0x1911,0x1911,0x1911,0x1911,0x1932,0x1932,0x1132,0x1153,0x0953,0x1174,0x11B5,0x19F7,0x19F7,0x19F7,0x19B6,0x1154,0x1112,0x1111,0x1931,0x1910,0x2110,0x2110,0x2130,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2130,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1932,0x1132,0x1133,0x1154,0x1154,0x1174,0x1174,0x1174,0x1133,0x1153,0x1153,0x1132,0x1911,0x1931,0x1930,0x1930,0x2130,0x2130,0x212F,0x212F,0x212F, + 0x09F9,0x09F9,0x11D8,0x11D8,0x11D7,0x11B6,0x1175,0x1133,0x1112,0x1911,0x1911,0x2131,0x2131,0x2131,0x2132,0x1932,0x1132,0x1154,0x1175,0x11B7,0x11D8,0x11F9,0x11F9,0x11F9,0x11D8,0x11B6,0x1195,0x1153,0x1952,0x1931,0x2131,0x2130,0x210F,0x2110,0x2110,0x2930,0x2930,0x2130,0x2151,0x2130,0x2131,0x1931,0x1132,0x1153,0x1194,0x19B5,0x19F6,0x1A17,0x2217,0x11B5,0x0934,0x1133,0x1912,0x2131,0x2131,0x2130,0x2930,0x2110,0x2130,0x2130,0x212F,0x2130,0x2930,0x2930,0x210F,0x292F,0x292F,0x290F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x212F,0x2930,0x2110,0x210F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x2930,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x2930,0x2110,0x210F,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x20F0,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x2130,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x212F,0x210F,0x210F,0x2110,0x2130,0x2930,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2130,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x290F,0x290F,0x2930,0x290F,0x210F,0x212F,0x210F,0x212F,0x2930,0x212F,0x212F,0x2130,0x212F,0x2130,0x212F,0x2130,0x2950,0x2151,0x2131,0x1931,0x1112,0x1113,0x0954,0x1A18,0x1219,0x1219,0x1A18,0x0974,0x0912,0x1931,0x1930,0x2150,0x2130,0x2130,0x2930,0x212F,0x2130,0x210F,0x210F,0x212F,0x2130,0x2110,0x1911,0x1132,0x1174,0x19B6,0x19F7,0x2217,0x19D6,0x1133,0x1111,0x2131,0x2130,0x2930,0x2930,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x1911,0x1932,0x1933,0x1995,0x21F7,0x19D6,0x19B6,0x1154,0x1132,0x1951,0x2151,0x2131,0x2130,0x2130,0x2930,0x2130,0x212F,0x292F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2910,0x210F,0x2130,0x210F,0x2110,0x210F,0x212F,0x212F,0x2930,0x2110,0x212F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x2930,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2930,0x212F,0x210F,0x212F,0x2930,0x2930,0x212F,0x210F,0x210F,0x2130,0x2130,0x2110,0x1911,0x1932,0x1133,0x19B5,0x19D6,0x19D6,0x19B5,0x1133,0x1932,0x1951,0x1910,0x2130,0x2950,0x210F,0x210F,0x2130,0x2130,0x2151,0x2151,0x1931,0x1112,0x1195,0x1A17,0x11D7,0x11B7,0x0997,0x0976,0x0976,0x0976,0x0976,0x0976,0x0976,0x11B7,0x11F8,0x11D7,0x11B6,0x0934,0x1132,0x1931,0x2131,0x2130,0x2130,0x212F,0x292F,0x2950,0x292F,0x292F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1132,0x1174,0x19D6,0x2217,0x21F7,0x21D7,0x1995,0x1133,0x1112,0x1911,0x1911,0x2111,0x2131,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x2930,0x212F,0x2930,0x290F,0x290F,0x2930,0x2930,0x3130,0x290F,0x28CE,0x28AD,0x288C,0x284A,0x512D,0xD53D,0xD4DB,0xCCBB,0xCCBB,0xC47A,0xD53E,0x6A73,0x208C,0x208D,0x20CE,0x2930,0x292F,0x290F,0x290F,0x210F,0x212F,0x292F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2930,0x2131,0x1911,0x1112,0x19B6,0x19F7,0x19D7,0x19B6,0x0912,0x1932,0x1911,0x2131,0x2130,0x210F,0x2110,0x2130,0x212F,0x212F,0x212F,0x2930,0x290F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x290F,0x2930,0x2930,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2930,0x2110,0x210F,0x2110,0x2110,0x2131,0x1932,0x1132,0x21B5,0x2217,0x19F6,0x19B6,0x1154,0x1112,0x1132,0x1931,0x2130,0x2130,0x212F,0x2130,0x2130,0x2131,0x1131,0x1133,0x19D6,0x19F7,0x19F6,0x1995,0x0912,0x1131,0x1931,0x1910,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2930,0x2930,0x290F,0x210F,0x210F,0x212F,0x2130,0x2130,0x210F,0x2130,0x212F,0x210F,0x2110,0x210F,0x2930,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x2910,0x290F,0x2930,0x210F,0x210F,0x2930,0x2930,0x210F,0x290F,0x210F,0x210F,0x292F,0x292F,0x292F,0x212F,0x2130,0x212F,0x210F,0x2110,0x2130,0x2130,0x2110,0x210F,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x19B4,0x21D5,0x19D5,0x19B4,0x1132,0x1132,0x1931,0x1931,0x2131,0x2131,0x2111,0x1931,0x1932,0x1153,0x1A17,0x1A18,0x11F8,0x1195,0x1132,0x1931,0x2151,0x2130,0x2130,0x2930,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x2950,0x2130,0x2130,0x2110,0x2951,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2111,0x2131,0x2131,0x2151,0x2131,0x2131,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x292F,0x292F,0x292F,0x212F,0x292F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2111,0x2110,0x2131,0x2131,0x2110,0x2110,0x2111,0x2111,0x2131,0x2110,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x1911,0x2131,0x2111,0x2111,0x1911,0x2131,0x2111,0x2131,0x1931,0x2131,0x2131,0x1931,0x1911,0x2131,0x1911,0x2131,0x1911,0x2131,0x2131,0x2131,0x1931,0x2131,0x1931,0x1931,0x1911,0x2131,0x2111,0x2131,0x1910,0x2111,0x2131,0x1910,0x2131,0x2131,0x1931,0x2131,0x1931,0x2131,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1952,0x1932,0x1932,0x1932,0x1133,0x1133,0x1174,0x19B6,0x19F7,0x2217,0x19D6,0x1175,0x1133,0x1132,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x292F,0x210F,0x210F,0x20EF,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1930,0x1952,0x1953,0x1154,0x1175,0x19D6,0x19F7,0x1A17,0x21F7,0x21F7,0x21F7,0x21F6,0x21D6,0x21B5,0x1994,0x1952,0x1931,0x1910,0x2130,0x2130,0x212F,0x214F,0x214F, + 0x09D9,0x09D8,0x11D8,0x11D8,0x11D8,0x11B7,0x1196,0x1175,0x1153,0x1932,0x1911,0x1911,0x2131,0x2151,0x2152,0x1932,0x1111,0x1112,0x1154,0x1196,0x11B7,0x11F8,0x1219,0x1219,0x1219,0x11F8,0x11B6,0x1175,0x1133,0x1132,0x1931,0x2131,0x2131,0x2130,0x2130,0x2930,0x2930,0x2950,0x2950,0x2151,0x2130,0x1911,0x1931,0x1932,0x1153,0x1194,0x11B5,0x19F6,0x2237,0x2217,0x1195,0x1133,0x1112,0x1932,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x292F,0x292F,0x2930,0x2930,0x2910,0x2910,0x2110,0x2930,0x2110,0x2930,0x2930,0x2130,0x2930,0x2110,0x210F,0x290F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x2110,0x2930,0x2110,0x2910,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x2910,0x290F,0x210F,0x210F,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x210F,0x2910,0x2910,0x2930,0x210F,0x2910,0x2930,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x2130,0x210F,0x2110,0x2110,0x210F,0x2130,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x2130,0x210F,0x2110,0x2110,0x2130,0x2930,0x2110,0x2930,0x2930,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2930,0x2930,0x2110,0x2930,0x210F,0x2930,0x290F,0x290F,0x2930,0x2930,0x2130,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x2910,0x290F,0x2910,0x290F,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2930,0x2930,0x2110,0x2930,0x2110,0x2130,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x290F,0x290F,0x2930,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x2130,0x2971,0x2130,0x1930,0x1931,0x1132,0x1133,0x0955,0x1218,0x1219,0x1219,0x1A39,0x1195,0x0932,0x1131,0x1931,0x2151,0x2150,0x2130,0x2130,0x210F,0x2930,0x210F,0x290F,0x212F,0x2130,0x2110,0x1931,0x1132,0x1174,0x19D6,0x19D6,0x21F7,0x19D6,0x1112,0x1112,0x1931,0x2131,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x290F,0x20EF,0x2930,0x2130,0x210F,0x210F,0x2110,0x2131,0x1931,0x1933,0x1974,0x21F7,0x19F7,0x1196,0x1154,0x1113,0x1952,0x2151,0x2131,0x2130,0x2130,0x2130,0x2950,0x212F,0x2930,0x292F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x2930,0x210F,0x212F,0x212F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x210F,0x290F,0x2910,0x2930,0x2910,0x2910,0x2930,0x2930,0x212F,0x2130,0x210F,0x210F,0x210F,0x292F,0x2130,0x2130,0x2131,0x1911,0x1932,0x1112,0x19B5,0x21F6,0x19D6,0x19D5,0x1132,0x1112,0x1931,0x1910,0x2110,0x2930,0x210F,0x210F,0x2130,0x2130,0x2130,0x2151,0x1932,0x1133,0x11B5,0x11D7,0x11D7,0x11B7,0x0976,0x0955,0x0956,0x0955,0x0955,0x0955,0x0976,0x0997,0x11F8,0x11D8,0x11B7,0x0954,0x1953,0x1932,0x2131,0x2130,0x2930,0x212F,0x292F,0x292F,0x292F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2131,0x2131,0x1932,0x1132,0x1174,0x19D6,0x2218,0x2217,0x21D7,0x1995,0x1133,0x1112,0x1911,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x292F,0x2930,0x292F,0x290F,0x2930,0x292F,0x292F,0x290F,0x290F,0x28CE,0x28AD,0x28AC,0x2009,0x61F0,0xCCDB,0xD4DB,0xD4DB,0xCCBA,0xD4DB,0xD4FC,0xB43A,0x30AC,0x208D,0x20AD,0x20EF,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2930,0x2130,0x2131,0x1911,0x1112,0x19B6,0x19F8,0x19D7,0x19B6,0x1133,0x1931,0x1931,0x2110,0x2130,0x2110,0x2130,0x2130,0x2950,0x2930,0x210F,0x290F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x290F,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2910,0x210F,0x210F,0x2110,0x2110,0x1931,0x1931,0x1132,0x19B5,0x21F7,0x19F6,0x19B6,0x1154,0x1112,0x1132,0x1931,0x2130,0x2130,0x212F,0x2130,0x2110,0x1930,0x1131,0x1133,0x19B5,0x2217,0x19F7,0x19B5,0x0912,0x1131,0x1931,0x1910,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x210F,0x2930,0x290F,0x290F,0x290F,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x2910,0x2910,0x2910,0x210F,0x2910,0x290F,0x290F,0x2910,0x210F,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1911,0x1132,0x19B4,0x21F5,0x19D5,0x19B4,0x1132,0x1932,0x1931,0x2131,0x2131,0x2131,0x2131,0x1931,0x1932,0x1133,0x19F7,0x1A18,0x11F7,0x11B6,0x0932,0x1931,0x2131,0x2130,0x2130,0x2930,0x290F,0x292F,0x292F,0x290F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2971,0x2151,0x2131,0x1931,0x1911,0x1911,0x1911,0x1932,0x2173,0x2173,0x2152,0x1932,0x1931,0x1931,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x2130,0x2930,0x210F,0x210F,0x2930,0x2930,0x2110,0x210F,0x2130,0x212F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x212F,0x212F,0x2930,0x2930,0x210F,0x2930,0x212F,0x2130,0x210F,0x2930,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x2130,0x1910,0x2131,0x1911,0x1911,0x2131,0x1931,0x1931,0x1931,0x1952,0x1952,0x1952,0x1132,0x1153,0x1154,0x19B5,0x21F7,0x2217,0x21F7,0x1995,0x1133,0x1112,0x1111,0x1932,0x2131,0x2151,0x2130,0x2130,0x2930,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x290F,0x210F,0x210F,0x2930,0x292F,0x212F,0x212F,0x212F,0x1930,0x2130,0x1911,0x1132,0x1174,0x1195,0x19D7,0x19F7,0x1A17,0x1A18,0x19F7,0x2218,0x2218,0x2217,0x19F7,0x19D6,0x21D5,0x1973,0x1952,0x1931,0x1930,0x2130,0x2150,0x2150,0x2170, + 0x09B7,0x09B7,0x09B8,0x11F8,0x11F8,0x11D8,0x11D7,0x1196,0x1174,0x1133,0x1932,0x1911,0x1911,0x2131,0x2152,0x2151,0x1911,0x1131,0x1153,0x1174,0x11B6,0x09B7,0x11F8,0x1219,0x1219,0x1218,0x09D7,0x11D7,0x1175,0x1153,0x1112,0x1912,0x1911,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x1910,0x1931,0x1152,0x1132,0x1174,0x11B5,0x2217,0x2238,0x19D7,0x1195,0x1133,0x1112,0x1912,0x2131,0x2110,0x2110,0x2110,0x2130,0x212F,0x2130,0x212F,0x2130,0x2130,0x2930,0x210F,0x290F,0x2110,0x2930,0x2910,0x2910,0x2930,0x2110,0x2910,0x2930,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x2110,0x2930,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x2930,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x2130,0x2130,0x210F,0x2930,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x210F,0x2110,0x2110,0x210F,0x2130,0x2110,0x2110,0x2130,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2110,0x2110,0x210F,0x210F,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x2930,0x2130,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x2110,0x2130,0x2930,0x2130,0x2930,0x2110,0x2110,0x2930,0x2930,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x212F,0x2930,0x210F,0x210F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2110,0x2910,0x210F,0x2910,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x2110,0x2130,0x212F,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x190F,0x18F0,0x1111,0x1133,0x1134,0x0955,0x11F8,0x11F9,0x1219,0x11F8,0x11B6,0x0933,0x1132,0x1131,0x1931,0x2151,0x2150,0x2130,0x212F,0x212F,0x20EF,0x210F,0x2930,0x2130,0x2130,0x1931,0x1932,0x1154,0x21F6,0x19F7,0x19F7,0x19B5,0x1112,0x1111,0x1931,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x20EF,0x210F,0x2930,0x292F,0x210F,0x210F,0x2110,0x2131,0x1911,0x1132,0x1174,0x21F7,0x2217,0x19F7,0x1195,0x1133,0x1112,0x1932,0x2151,0x2131,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x210F,0x2130,0x212F,0x2930,0x2110,0x210F,0x2130,0x2930,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2110,0x1911,0x1932,0x1112,0x21D6,0x21F6,0x19D6,0x19D5,0x1133,0x1112,0x1931,0x2131,0x2110,0x2130,0x210F,0x210F,0x210F,0x2930,0x2130,0x2131,0x1931,0x0912,0x11B5,0x11F7,0x11F8,0x0997,0x0955,0x0955,0x0955,0x0975,0x0934,0x0934,0x0955,0x1197,0x11F8,0x19F8,0x11B7,0x1155,0x1112,0x1932,0x2131,0x2130,0x2930,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2131,0x2131,0x2131,0x1932,0x1133,0x1174,0x19D6,0x2217,0x21F7,0x19D7,0x1996,0x1154,0x10F2,0x18F1,0x1911,0x2111,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x28CE,0x208D,0x288C,0x306B,0x7A93,0xE57E,0xD4DB,0xD4DB,0xD49A,0xD4BA,0xDD3C,0xCCBB,0x48ED,0x30AD,0x20AD,0x28EE,0x2930,0x28EF,0x28EF,0x290F,0x292F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2930,0x2131,0x1911,0x1112,0x19B6,0x19F7,0x19D7,0x19D6,0x1132,0x1931,0x1930,0x2130,0x2110,0x2130,0x2110,0x2130,0x2930,0x2930,0x2130,0x2930,0x290F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x2930,0x2930,0x210F,0x290F,0x2930,0x2930,0x212F,0x292F,0x2930,0x212F,0x2130,0x2130,0x212F,0x210F,0x2930,0x290F,0x2930,0x2930,0x210F,0x2110,0x2131,0x2131,0x1932,0x1132,0x19B5,0x2217,0x19D6,0x19B6,0x0933,0x1132,0x1132,0x1911,0x2130,0x2130,0x212F,0x2930,0x2110,0x1910,0x1111,0x1133,0x19B5,0x2217,0x19F7,0x1995,0x0912,0x1132,0x1931,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x290F,0x292F,0x290F,0x290F,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2910,0x290F,0x210F,0x2930,0x2910,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x292F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2110,0x1931,0x1931,0x1132,0x1994,0x21D5,0x19D5,0x1994,0x1112,0x1111,0x1931,0x1931,0x2131,0x2131,0x2111,0x1911,0x1932,0x1154,0x19F7,0x1A18,0x19F8,0x1195,0x1132,0x1131,0x1930,0x2130,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2171,0x2151,0x1911,0x1931,0x1932,0x1932,0x1953,0x1953,0x1953,0x1132,0x1112,0x1132,0x1932,0x1952,0x1932,0x2131,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x2910,0x210F,0x2110,0x2910,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x290F,0x292F,0x290F,0x290F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2130,0x2110,0x2110,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x1931,0x1931,0x1932,0x1153,0x1153,0x1174,0x19D6,0x19F6,0x21F7,0x21F6,0x1995,0x1154,0x1132,0x1111,0x1911,0x1931,0x2131,0x2130,0x2130,0x2130,0x2930,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2131,0x1911,0x1111,0x1953,0x1995,0x11B6,0x11B7,0x19F8,0x1A18,0x11B6,0x1196,0x11B6,0x19D7,0x19F7,0x19D7,0x19D6,0x19B5,0x1994,0x1152,0x1931,0x1930,0x1930,0x2150,0x2170,0x2150, + 0x0976,0x0996,0x11B7,0x11D8,0x11D8,0x11F8,0x09D8,0x11B7,0x1196,0x1175,0x1133,0x1932,0x1931,0x1911,0x2131,0x2131,0x2131,0x1952,0x1152,0x1173,0x1174,0x1196,0x09B7,0x11F8,0x11F8,0x11F8,0x1218,0x11D7,0x11B7,0x1175,0x1154,0x1132,0x1932,0x1931,0x1911,0x2110,0x2130,0x2930,0x2110,0x2130,0x2130,0x2130,0x1910,0x1931,0x1931,0x1152,0x1153,0x1174,0x11B5,0x19F7,0x2217,0x19D7,0x1995,0x1154,0x1112,0x1912,0x2131,0x2110,0x2110,0x2130,0x2130,0x210F,0x212F,0x2130,0x2130,0x210F,0x2110,0x2930,0x210F,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x210F,0x2910,0x2110,0x2910,0x290F,0x210F,0x2910,0x2110,0x2110,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2110,0x2910,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2930,0x2110,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x2930,0x212F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2930,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x2130,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2910,0x2910,0x210F,0x210F,0x2930,0x2910,0x2110,0x2910,0x2910,0x2930,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2930,0x2110,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x2130,0x2930,0x2930,0x2110,0x2110,0x2930,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x2930,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2910,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2110,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x2930,0x210F,0x2130,0x2130,0x1910,0x1931,0x1132,0x1133,0x0955,0x0976,0x09B8,0x09F9,0x09F9,0x11F9,0x09B6,0x0954,0x1173,0x1132,0x1951,0x2131,0x2131,0x2130,0x2930,0x292F,0x210F,0x210F,0x212F,0x2130,0x2130,0x1931,0x1132,0x1154,0x19F6,0x19F7,0x19D7,0x19B6,0x1112,0x1112,0x1931,0x2131,0x2130,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2130,0x1910,0x1932,0x1153,0x19D6,0x2238,0x2218,0x19B6,0x1154,0x1113,0x1112,0x1931,0x2131,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x2130,0x2930,0x210F,0x2130,0x2930,0x2110,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x292F,0x290F,0x290F,0x2910,0x2910,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x10F1,0x1112,0x21B5,0x21D6,0x19D6,0x19D6,0x0933,0x1132,0x1952,0x1931,0x2131,0x2130,0x210F,0x212F,0x2930,0x2130,0x2130,0x1931,0x1911,0x08F2,0x1195,0x19F7,0x11D7,0x11B7,0x0955,0x0955,0x0955,0x0955,0x0114,0x0114,0x0935,0x1196,0x11F8,0x1A19,0x19D7,0x0954,0x1112,0x1931,0x2111,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x1911,0x1932,0x1132,0x1974,0x21D6,0x21F7,0x2217,0x21F7,0x1995,0x1133,0x1112,0x18F1,0x1911,0x2131,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x292F,0x212F,0x292F,0x290F,0x210F,0x290F,0x290F,0x28EF,0x28AD,0x28AC,0x2009,0x8AD4,0xDD1C,0xD4DB,0xDCDB,0xDCBA,0xD499,0xD4BA,0xE55D,0xABD8,0x282A,0x286C,0x20AD,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2131,0x18F1,0x1133,0x19D6,0x19D7,0x11D7,0x19D6,0x0912,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x2130,0x2110,0x210F,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x2930,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2910,0x2930,0x212F,0x210F,0x2130,0x2131,0x1931,0x1932,0x1112,0x19B5,0x21F7,0x19D6,0x19D6,0x1154,0x1112,0x1932,0x1931,0x2130,0x2130,0x210F,0x2130,0x2130,0x1911,0x1132,0x0933,0x19B6,0x19F7,0x19D6,0x19D6,0x0912,0x1932,0x2152,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x290F,0x290F,0x292F,0x210F,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2910,0x2910,0x290F,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2910,0x210F,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2111,0x1931,0x1932,0x1132,0x19B5,0x19D5,0x19D5,0x1994,0x1132,0x1111,0x1931,0x2131,0x2131,0x2111,0x1911,0x1932,0x1932,0x1153,0x19F7,0x1A38,0x19F8,0x1195,0x0932,0x1931,0x1931,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1931,0x1911,0x1932,0x1133,0x1153,0x1974,0x1994,0x1174,0x1154,0x1154,0x1154,0x1133,0x1133,0x1112,0x1932,0x1931,0x2131,0x2131,0x2111,0x2130,0x2130,0x2110,0x2930,0x2110,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2110,0x2130,0x210F,0x2110,0x2910,0x210F,0x210F,0x210F,0x2110,0x2110,0x2910,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x212F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x212F,0x2130,0x2110,0x2110,0x212F,0x2130,0x2130,0x2110,0x2130,0x212F,0x210F,0x2130,0x212F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x1910,0x1910,0x1911,0x1911,0x1932,0x1132,0x1133,0x1174,0x19B5,0x21F7,0x21F7,0x21D6,0x1995,0x1133,0x1132,0x1111,0x1931,0x1931,0x1910,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x2930,0x212F,0x212F,0x2130,0x2130,0x1931,0x1911,0x1112,0x1154,0x1995,0x11B6,0x11D7,0x19F8,0x1196,0x0975,0x0955,0x0955,0x0975,0x11B6,0x11B6,0x19D6,0x11B5,0x1994,0x1953,0x1931,0x1931,0x1930,0x1930,0x1930,0x2150, + 0x1175,0x0975,0x0996,0x11B7,0x11D8,0x11F8,0x11F8,0x11F8,0x09B7,0x1196,0x1154,0x1133,0x1112,0x1911,0x1910,0x2131,0x2131,0x1931,0x1931,0x1132,0x1153,0x1174,0x0975,0x11B7,0x09D8,0x1219,0x11F8,0x11F8,0x11D7,0x11B6,0x1196,0x1154,0x1133,0x1932,0x1931,0x2131,0x18F0,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1133,0x1174,0x19B5,0x19D7,0x2218,0x21F7,0x1995,0x1133,0x1112,0x1911,0x2131,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x2930,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x2110,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x2130,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x210F,0x2110,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x290F,0x2930,0x2130,0x2110,0x2910,0x2930,0x2910,0x210F,0x2910,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x212F,0x290F,0x2930,0x210F,0x2130,0x210F,0x2130,0x2110,0x210F,0x210F,0x2930,0x290F,0x210F,0x2910,0x2910,0x210F,0x2910,0x210F,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x290F,0x2910,0x2910,0x2910,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x210F,0x210F,0x2930,0x210F,0x210F,0x2930,0x2930,0x210F,0x2110,0x2910,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x292F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x292F,0x210F,0x2930,0x2930,0x2130,0x2130,0x2131,0x1932,0x1153,0x1195,0x1197,0x09B8,0x09B8,0x09D9,0x0A1A,0x1219,0x09D7,0x0975,0x1195,0x1153,0x1132,0x1951,0x2131,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1132,0x1154,0x19D6,0x19F7,0x19B6,0x1195,0x1113,0x1112,0x1931,0x2131,0x2930,0x2910,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x292F,0x210F,0x212F,0x2130,0x2130,0x1910,0x1911,0x1132,0x1995,0x2218,0x2238,0x19F7,0x1196,0x1134,0x1112,0x1912,0x2131,0x2111,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x210F,0x212F,0x2930,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x292F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2152,0x10F1,0x10F2,0x21B6,0x21D6,0x19D6,0x19D6,0x0933,0x0912,0x1972,0x2151,0x2151,0x2130,0x2130,0x212F,0x2130,0x2130,0x2150,0x2131,0x1911,0x1112,0x1195,0x19F7,0x11F7,0x11D7,0x0955,0x0935,0x0955,0x0934,0x0934,0x0934,0x0134,0x11B6,0x19F8,0x11D8,0x19F7,0x1174,0x1112,0x1931,0x2111,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x2111,0x1932,0x1133,0x1974,0x19D6,0x21F7,0x2217,0x19D7,0x1975,0x1133,0x1112,0x1111,0x1911,0x2111,0x2951,0x2130,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2930,0x292F,0x290F,0x290F,0x28AD,0x288C,0x306B,0x82B3,0xE57E,0xD4BA,0xDCDA,0xD499,0xDC99,0xDCBA,0xD4BA,0xDCFC,0x82B3,0x284A,0x206C,0x28EE,0x28EF,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x1911,0x18F2,0x1133,0x21F7,0x19F8,0x19D7,0x19B6,0x00D1,0x1111,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2130,0x2930,0x2930,0x2930,0x292F,0x212F,0x2930,0x212F,0x2110,0x2930,0x212F,0x292F,0x290F,0x290F,0x2930,0x2930,0x2910,0x2930,0x292F,0x2930,0x2930,0x2910,0x290F,0x290F,0x2930,0x2110,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2110,0x2131,0x1931,0x1952,0x1132,0x19B5,0x2217,0x19D6,0x19D6,0x1154,0x1132,0x1111,0x1930,0x2130,0x2130,0x212F,0x2130,0x2130,0x1911,0x1132,0x1154,0x19D7,0x21F7,0x19D6,0x1195,0x0913,0x1953,0x2152,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x290F,0x210F,0x290F,0x2910,0x210F,0x2110,0x2110,0x2130,0x292F,0x292F,0x212F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x210F,0x290F,0x290F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x210F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1132,0x19B5,0x21F6,0x19D5,0x1994,0x1132,0x1931,0x1931,0x1931,0x2131,0x2131,0x2111,0x1911,0x1112,0x1154,0x19D7,0x1A18,0x1A18,0x1195,0x0932,0x1931,0x1931,0x2130,0x2130,0x212F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1932,0x1152,0x1173,0x1195,0x19D6,0x19D6,0x19F6,0x21F6,0x21F7,0x21D6,0x21D6,0x1995,0x1995,0x1112,0x1912,0x1911,0x2111,0x2111,0x2131,0x2130,0x2930,0x2930,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x2910,0x20EF,0x2910,0x210F,0x2110,0x210F,0x2110,0x2930,0x210F,0x290F,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2930,0x2110,0x2930,0x2130,0x2130,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2131,0x2131,0x2130,0x2131,0x2110,0x2130,0x1931,0x1931,0x1932,0x1132,0x1132,0x1154,0x19B5,0x21F7,0x21F7,0x21F6,0x1995,0x1112,0x1112,0x1111,0x1931,0x2151,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x2930,0x2130,0x2110,0x2130,0x2130,0x1931,0x1911,0x1112,0x1995,0x21D7,0x11B6,0x11D7,0x11B7,0x0975,0x0955,0x0934,0x0934,0x0955,0x0975,0x1196,0x11B6,0x19D6,0x1995,0x1974,0x1952,0x1931,0x1930,0x1930,0x1930,0x1930, + 0x1134,0x1154,0x1175,0x1196,0x11B7,0x11F8,0x11F8,0x11D8,0x11F8,0x11D7,0x1196,0x1174,0x1153,0x1111,0x1911,0x2131,0x2131,0x2151,0x1910,0x1931,0x1132,0x1153,0x1174,0x0975,0x11D7,0x11F8,0x11F8,0x11F9,0x11F8,0x11F8,0x11B7,0x1196,0x1133,0x1112,0x1952,0x1931,0x2131,0x2130,0x2110,0x2110,0x2950,0x2130,0x2130,0x2150,0x1930,0x1931,0x1911,0x1912,0x1132,0x1174,0x19B6,0x21F7,0x2218,0x21F7,0x1996,0x1133,0x1132,0x1932,0x2131,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x210F,0x2110,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2930,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2910,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x210F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x210F,0x2130,0x210F,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x2130,0x210F,0x2130,0x210F,0x2110,0x2110,0x2130,0x2130,0x2930,0x2110,0x2110,0x2930,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x210F,0x2930,0x2110,0x2930,0x2110,0x2110,0x210F,0x290F,0x2110,0x2110,0x290F,0x290F,0x210F,0x2910,0x2910,0x210F,0x210F,0x2110,0x290F,0x290F,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x2910,0x2110,0x2110,0x2110,0x210F,0x290F,0x290F,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2910,0x290F,0x210F,0x2910,0x210F,0x2110,0x210F,0x210F,0x2910,0x2930,0x2910,0x2910,0x2930,0x2930,0x290F,0x210F,0x210F,0x2110,0x2910,0x2930,0x2110,0x2110,0x2110,0x210F,0x2930,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x210F,0x290F,0x2930,0x2930,0x2910,0x2910,0x2110,0x210F,0x290F,0x2930,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x2110,0x2110,0x2110,0x2930,0x210F,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x292F,0x292F,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x2930,0x2130,0x2130,0x1931,0x1932,0x1953,0x19B6,0x19F8,0x11F9,0x09D9,0x01B9,0x01B9,0x09FA,0x09F9,0x09F9,0x11F8,0x19F7,0x11B5,0x1132,0x1952,0x1931,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x1931,0x1132,0x1153,0x19D6,0x19F7,0x19F7,0x19B5,0x1133,0x1112,0x1911,0x2131,0x2930,0x2910,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x1910,0x1931,0x1132,0x1153,0x19B6,0x2238,0x1A18,0x19F7,0x1996,0x1133,0x1112,0x1912,0x1911,0x2111,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x210F,0x212F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x212F,0x292F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x2152,0x10F1,0x08F2,0x21B6,0x21D7,0x19D7,0x19F7,0x0953,0x08F2,0x1973,0x2152,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2151,0x2151,0x1911,0x1112,0x1195,0x19F7,0x11D7,0x11D8,0x0996,0x0155,0x0134,0x0934,0x0934,0x0134,0x0955,0x11D7,0x19F8,0x1A18,0x19D7,0x1174,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2130,0x2130,0x2110,0x2131,0x2131,0x2131,0x1912,0x1132,0x1154,0x21D6,0x21F7,0x2217,0x19D6,0x1995,0x1133,0x1112,0x1911,0x1911,0x2111,0x2130,0x2130,0x2110,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x292F,0x28CD,0x286C,0x2009,0x7251,0xDD1C,0xDCDA,0xDCB9,0xD498,0xD478,0xDC99,0xD499,0xDCBA,0xE55D,0x7211,0x282A,0x288C,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2111,0x1911,0x1112,0x1134,0x19D7,0x19F8,0x19D7,0x19D6,0x0912,0x1111,0x1931,0x2131,0x2151,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x212F,0x212F,0x212F,0x2930,0x212F,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x292F,0x292F,0x210F,0x2930,0x290F,0x290F,0x2110,0x210F,0x210F,0x290F,0x2930,0x290F,0x212F,0x212F,0x210F,0x212F,0x2930,0x212F,0x2930,0x210F,0x212F,0x2130,0x212F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1931,0x1932,0x1132,0x19B5,0x2217,0x19D6,0x19D6,0x1174,0x0912,0x1932,0x1931,0x2130,0x2130,0x2130,0x2130,0x2111,0x1932,0x1133,0x0954,0x19D7,0x19F7,0x19D7,0x11B6,0x0933,0x1133,0x1972,0x1951,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x212F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2130,0x212F,0x212F,0x292F,0x290F,0x290F,0x2910,0x2910,0x290F,0x2110,0x2930,0x210F,0x2930,0x212F,0x212F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2930,0x290F,0x2910,0x290F,0x290F,0x290F,0x2930,0x290F,0x2110,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1112,0x1132,0x19B5,0x19D6,0x19D5,0x19B4,0x1132,0x1931,0x1951,0x1931,0x2131,0x2131,0x1931,0x1911,0x1932,0x1153,0x19F7,0x1A18,0x19F8,0x1195,0x1132,0x1931,0x2151,0x2130,0x2130,0x210F,0x2130,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1132,0x1153,0x1995,0x19D6,0x19D6,0x19F7,0x21F7,0x19F7,0x21F7,0x21F7,0x19F7,0x19D7,0x19B6,0x1974,0x1133,0x1912,0x1911,0x1911,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2150,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2110,0x2131,0x2131,0x1911,0x1931,0x1931,0x1132,0x1132,0x0933,0x19B5,0x21F7,0x21F7,0x21F7,0x1995,0x1133,0x1112,0x1111,0x1911,0x1911,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2110,0x2110,0x2130,0x2110,0x2131,0x1932,0x1132,0x21B5,0x19D7,0x11D7,0x11D7,0x0975,0x0955,0x0954,0x0954,0x0934,0x0934,0x0955,0x1176,0x19B6,0x19D6,0x19D6,0x1994,0x1932,0x1931,0x1910,0x1910,0x1930,0x2130, + 0x1113,0x1133,0x1154,0x1175,0x1196,0x11B7,0x11F8,0x1219,0x11F8,0x11F8,0x11D7,0x1195,0x1174,0x1132,0x1111,0x1911,0x1930,0x2130,0x1910,0x1931,0x1111,0x1132,0x1153,0x1174,0x1196,0x09B7,0x11F8,0x11F8,0x11F9,0x11D8,0x19F9,0x11B7,0x0955,0x1154,0x1133,0x1932,0x2152,0x2111,0x2110,0x2130,0x2110,0x2130,0x2930,0x2930,0x2130,0x2131,0x1911,0x1911,0x1932,0x1133,0x1974,0x19B6,0x2217,0x2217,0x21F7,0x19B5,0x1153,0x1132,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2950,0x2130,0x2130,0x2930,0x2110,0x2910,0x2910,0x2930,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x290F,0x2930,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x2930,0x290F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x210F,0x2910,0x2910,0x2910,0x2930,0x2910,0x2110,0x2110,0x2930,0x290F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x210F,0x2930,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x2930,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x2130,0x212F,0x210F,0x210F,0x212F,0x2130,0x210F,0x2130,0x2130,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2910,0x2930,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x210F,0x2910,0x210F,0x210F,0x2110,0x2910,0x2110,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x210F,0x290F,0x290F,0x2930,0x2930,0x210F,0x212F,0x2130,0x210F,0x2930,0x2910,0x2110,0x2110,0x2110,0x2910,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2910,0x2110,0x2910,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x2910,0x210F,0x2910,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x210F,0x212F,0x212F,0x2930,0x290F,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x2930,0x2110,0x2930,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1932,0x1133,0x1995,0x19D7,0x11F9,0x121A,0x09D9,0x01B9,0x01DA,0x09DA,0x09FA,0x09F9,0x09F9,0x11F8,0x11D7,0x1174,0x1153,0x1932,0x2151,0x2130,0x2130,0x210F,0x212F,0x2130,0x2150,0x2151,0x1931,0x1132,0x1133,0x19D6,0x2217,0x19F7,0x11B6,0x1154,0x1132,0x1931,0x2131,0x2931,0x2930,0x290F,0x290F,0x290F,0x2930,0x292F,0x290F,0x290F,0x210F,0x210F,0x212F,0x2130,0x2110,0x2130,0x1911,0x1931,0x1953,0x1174,0x19B6,0x19F7,0x2218,0x2218,0x1175,0x1133,0x1112,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x2930,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x10F2,0x1134,0x21D7,0x19D7,0x19D7,0x19D7,0x0954,0x00D1,0x1953,0x1952,0x1931,0x2130,0x2130,0x2130,0x2110,0x2130,0x2150,0x2131,0x1931,0x1132,0x1174,0x11B6,0x11D7,0x11D7,0x11D7,0x11D7,0x0155,0x0955,0x0975,0x0976,0x11F7,0x1A18,0x19F8,0x19D7,0x19B6,0x1154,0x1932,0x1931,0x2111,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x1912,0x1132,0x1954,0x19B6,0x21F7,0x21F7,0x19D6,0x1175,0x1133,0x1112,0x1111,0x1911,0x2131,0x2951,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x210F,0x212F,0x292F,0x292F,0x290F,0x20AD,0x206B,0x200A,0x512D,0xE55D,0xD4BA,0xD479,0xD478,0xDC78,0xDC78,0xDC78,0xDC99,0xDCDA,0xE55D,0x510D,0x280A,0x30CD,0x28EE,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2130,0x2110,0x2110,0x2110,0x2111,0x1911,0x1911,0x1113,0x1975,0x19D7,0x11D8,0x11D7,0x19B7,0x0912,0x1112,0x1952,0x2151,0x2131,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2130,0x2130,0x210F,0x2130,0x2130,0x2930,0x290F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x2110,0x2110,0x210F,0x212F,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x2130,0x212F,0x212F,0x1930,0x1930,0x1931,0x1132,0x1112,0x19B5,0x2217,0x19D6,0x19B5,0x1154,0x1132,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x1911,0x1932,0x1153,0x1174,0x19D7,0x19D7,0x19D7,0x19B6,0x0934,0x1153,0x1972,0x1931,0x2151,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x210F,0x2930,0x212F,0x2930,0x210F,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x290F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1112,0x1133,0x19B5,0x19D5,0x19D5,0x1994,0x1132,0x1932,0x1952,0x1931,0x2151,0x1931,0x1931,0x1931,0x1932,0x1154,0x1A17,0x1A18,0x19F8,0x1195,0x1132,0x1951,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2131,0x1911,0x1931,0x1132,0x19B5,0x19D6,0x19D6,0x19F7,0x19F7,0x11B6,0x1196,0x19B6,0x19B7,0x19D7,0x19D7,0x19B7,0x19B6,0x1174,0x1133,0x1932,0x1912,0x1931,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2131,0x2130,0x2130,0x2130,0x2110,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2131,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x2131,0x1911,0x2131,0x2131,0x1931,0x1932,0x1953,0x1174,0x19D6,0x19D6,0x19D6,0x19D6,0x1995,0x1133,0x1112,0x1931,0x1931,0x2131,0x2110,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x290F,0x210F,0x2910,0x2110,0x2130,0x2130,0x2131,0x2131,0x1932,0x1133,0x21B6,0x21F7,0x19D7,0x11B6,0x0955,0x0954,0x1195,0x1195,0x0934,0x0934,0x0955,0x1196,0x11B6,0x19B6,0x19D6,0x1995,0x1932,0x1911,0x1910,0x1910,0x1910,0x2130, + 0x1112,0x1132,0x1133,0x1154,0x1195,0x0996,0x11D7,0x11F8,0x11F8,0x11F8,0x11D8,0x11B7,0x1196,0x1174,0x1132,0x1111,0x1911,0x1910,0x2131,0x1910,0x1931,0x1931,0x1132,0x1173,0x1174,0x11B6,0x09B7,0x11F8,0x11D8,0x11D9,0x11F9,0x11D8,0x11D7,0x1195,0x1154,0x1973,0x1932,0x1911,0x2131,0x2110,0x2110,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2111,0x1911,0x1932,0x1133,0x1974,0x19B6,0x19F7,0x2217,0x21F7,0x19B5,0x1153,0x1112,0x1932,0x2152,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x290F,0x290F,0x2930,0x2930,0x2910,0x2110,0x210F,0x2930,0x212F,0x210F,0x212F,0x2930,0x290F,0x2110,0x2110,0x2110,0x2930,0x210F,0x2110,0x2930,0x2930,0x210F,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x290F,0x212F,0x2930,0x290F,0x2910,0x2110,0x2110,0x210F,0x210F,0x2130,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x290F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x2130,0x212F,0x2930,0x2930,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x290F,0x290F,0x290F,0x2930,0x2910,0x290F,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2110,0x2910,0x2930,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x2930,0x2910,0x2930,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x2910,0x210F,0x2910,0x290F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x290F,0x210F,0x290F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2110,0x290F,0x2930,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x290F,0x210F,0x2110,0x2110,0x210F,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x212F,0x210F,0x210F,0x290F,0x2930,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x290F,0x2110,0x2110,0x2930,0x2110,0x210F,0x2930,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x19B7,0x11D8,0x11FA,0x09FA,0x01B9,0x01B9,0x01B9,0x01BA,0x09DA,0x01D9,0x09F9,0x09D8,0x09B7,0x1195,0x1153,0x1952,0x2152,0x2130,0x2110,0x2130,0x2130,0x2130,0x2151,0x2151,0x1931,0x1932,0x1132,0x19B5,0x19F7,0x19F7,0x19D6,0x0954,0x1132,0x1911,0x2131,0x2931,0x2930,0x2930,0x292F,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x290F,0x212F,0x2110,0x2110,0x2130,0x2131,0x1931,0x1112,0x1133,0x1154,0x19D6,0x2218,0x2218,0x21F7,0x1154,0x1133,0x1932,0x1932,0x1911,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x290F,0x292F,0x2930,0x210F,0x210F,0x210F,0x212F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1932,0x10F2,0x10F2,0x1975,0x19B7,0x11B7,0x11D8,0x11D7,0x11B6,0x00F2,0x1153,0x1952,0x1931,0x2131,0x2151,0x2130,0x210F,0x210F,0x2130,0x2131,0x1931,0x1932,0x1153,0x1195,0x11B6,0x11F8,0x11F8,0x11F8,0x11D7,0x11B7,0x11B7,0x11D7,0x1A18,0x11D7,0x19F7,0x19B6,0x1175,0x1133,0x1932,0x2131,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x2131,0x1911,0x1112,0x1154,0x19B6,0x21F7,0x21F7,0x19D7,0x1995,0x1133,0x1112,0x1911,0x1911,0x2131,0x2131,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x292F,0x210F,0x292F,0x290F,0x28EE,0x28AC,0x202A,0x40CC,0xCC9A,0xDCDA,0xDCB9,0xDC78,0xDC57,0xDC78,0xDC58,0xDC78,0xDC78,0xDCBA,0xED7D,0x48CC,0x282A,0x30EE,0x28EE,0x28EF,0x290F,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x2130,0x2110,0x2110,0x2110,0x2111,0x1911,0x1911,0x1112,0x1133,0x1175,0x19D8,0x11D8,0x11D8,0x19D7,0x1154,0x0912,0x1932,0x2132,0x2131,0x2110,0x2130,0x2110,0x2130,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x1930,0x1931,0x1132,0x1112,0x19B5,0x2217,0x19D6,0x19B6,0x1154,0x1132,0x1932,0x1931,0x2130,0x2130,0x2130,0x2131,0x1932,0x1132,0x1154,0x0975,0x11B6,0x11F8,0x19F8,0x11B7,0x0954,0x1133,0x1973,0x1952,0x1931,0x2131,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x292F,0x2930,0x210F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2130,0x2110,0x2110,0x212F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x28F0,0x2910,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x1911,0x1932,0x1932,0x1133,0x19B5,0x21F6,0x19D5,0x1994,0x1132,0x1932,0x1952,0x1931,0x2131,0x2131,0x1931,0x1931,0x1132,0x1154,0x19F7,0x1A18,0x19F8,0x1195,0x1132,0x1931,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1111,0x1953,0x19B5,0x11B6,0x19D7,0x19D7,0x1196,0x0955,0x0955,0x0955,0x1176,0x11B6,0x11D7,0x19F8,0x11B7,0x11B6,0x1195,0x1133,0x1112,0x1932,0x1932,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2131,0x2131,0x2131,0x2130,0x2131,0x2131,0x2131,0x2130,0x2131,0x2130,0x2130,0x1930,0x1910,0x1910,0x1931,0x1931,0x1911,0x1931,0x1931,0x1910,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2111,0x1931,0x1931,0x1911,0x1931,0x1931,0x1911,0x1931,0x2131,0x1911,0x1911,0x1911,0x1911,0x1910,0x1910,0x1910,0x1931,0x1910,0x1911,0x1931,0x2131,0x1911,0x1910,0x1910,0x1910,0x1911,0x1911,0x1931,0x2131,0x1911,0x2111,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1910,0x1930,0x1931,0x1931,0x1930,0x1930,0x2130,0x2130,0x1930,0x1930,0x1910,0x2131,0x1910,0x1910,0x1910,0x1910,0x1910,0x1911,0x1911,0x1911,0x1911,0x1911,0x18F1,0x18F1,0x1911,0x1911,0x1911,0x1911,0x1912,0x1932,0x1953,0x1974,0x19D5,0x21F7,0x19F7,0x19D6,0x1995,0x1133,0x1112,0x1911,0x1931,0x1910,0x2131,0x2110,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x2910,0x2110,0x2130,0x2110,0x2131,0x1911,0x1932,0x1933,0x19B6,0x21F7,0x19F7,0x11B6,0x0975,0x0954,0x0975,0x0974,0x0133,0x0934,0x0955,0x1196,0x11B6,0x19D7,0x21D6,0x1994,0x1932,0x1931,0x1911,0x2110,0x2110,0x2951, + 0x1932,0x1932,0x1932,0x1153,0x1154,0x1195,0x0996,0x09D7,0x11F8,0x09F8,0x1219,0x11F8,0x11B7,0x11B6,0x1154,0x1132,0x1111,0x1931,0x1931,0x1930,0x1931,0x1931,0x1972,0x1132,0x1153,0x1175,0x1196,0x11B7,0x09B7,0x11D8,0x09D8,0x11D8,0x11D8,0x09B6,0x1196,0x1154,0x1133,0x1932,0x1911,0x2131,0x2110,0x2931,0x2110,0x2110,0x2110,0x2110,0x2130,0x2131,0x2111,0x1911,0x1111,0x1132,0x1174,0x19B6,0x19F7,0x2218,0x19F7,0x1195,0x1174,0x1133,0x1932,0x1931,0x2111,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x2910,0x2910,0x2910,0x210F,0x2910,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x2110,0x2930,0x210F,0x212F,0x210F,0x210F,0x2930,0x2110,0x2910,0x2910,0x2930,0x290F,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2930,0x210F,0x2910,0x2930,0x2910,0x290F,0x290F,0x210F,0x2110,0x2930,0x2930,0x290F,0x212F,0x2930,0x210F,0x2910,0x2110,0x2930,0x2110,0x2130,0x2130,0x2930,0x2110,0x2110,0x210F,0x292F,0x290F,0x290F,0x290F,0x2930,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x210F,0x210F,0x2130,0x212F,0x212F,0x210F,0x212F,0x2930,0x212F,0x212F,0x2130,0x2930,0x212F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x212F,0x212F,0x210F,0x212F,0x2930,0x2930,0x2930,0x210F,0x210F,0x290F,0x2910,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2910,0x2910,0x290F,0x290F,0x2930,0x2910,0x210F,0x210F,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2910,0x210F,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x2910,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x2930,0x210F,0x210F,0x2910,0x210F,0x210F,0x290F,0x2910,0x210F,0x210F,0x2910,0x2910,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2110,0x2930,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x2930,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2130,0x2130,0x210F,0x2930,0x2130,0x2930,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2151,0x2151,0x1911,0x1132,0x1154,0x19F8,0x09B8,0x09D9,0x09DA,0x01DA,0x01BA,0x01DA,0x01BA,0x01DA,0x09DA,0x09D9,0x09D9,0x09B7,0x11B6,0x1195,0x1153,0x2152,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x1951,0x1952,0x1132,0x19D5,0x2237,0x1A17,0x11D6,0x1174,0x1132,0x1111,0x1931,0x2131,0x2131,0x2930,0x2930,0x2910,0x2910,0x2930,0x210F,0x292F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2131,0x2131,0x1932,0x1112,0x1133,0x1174,0x19D6,0x21F7,0x2218,0x21F7,0x1155,0x1133,0x1933,0x1932,0x1932,0x1931,0x2131,0x2151,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x292F,0x292F,0x210F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x2930,0x212F,0x212F,0x292F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x1931,0x1931,0x1932,0x1113,0x1134,0x19B7,0x19D8,0x11B8,0x11D8,0x11D8,0x11D7,0x0975,0x0912,0x1952,0x1931,0x1931,0x2151,0x2151,0x2110,0x210F,0x2130,0x2130,0x1910,0x1932,0x1933,0x1134,0x1155,0x11B6,0x19F8,0x1A18,0x19F8,0x11F7,0x11D7,0x11D7,0x19F8,0x19F7,0x19D7,0x1995,0x1112,0x1912,0x1931,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x1911,0x1912,0x1112,0x1154,0x21D6,0x2217,0x21F7,0x19D6,0x1995,0x1153,0x1112,0x1111,0x2131,0x2131,0x2131,0x2110,0x2110,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2930,0x210F,0x290F,0x290F,0x210E,0x290E,0x28AD,0x204B,0x306A,0xD51C,0xDCDA,0xDCB9,0xDC78,0xDC98,0xDC78,0xDC57,0xDC78,0xDC78,0xDC78,0xDC99,0xE51C,0xBC5A,0x492E,0x286C,0x28EE,0x28EF,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2110,0x2110,0x2111,0x1911,0x1912,0x1133,0x1175,0x1196,0x11D8,0x11D8,0x11D9,0x11D8,0x1175,0x0933,0x1953,0x1952,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x2130,0x2130,0x210F,0x2130,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2910,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x2930,0x2910,0x290F,0x290F,0x2930,0x2930,0x290F,0x212F,0x2930,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x2130,0x1930,0x1931,0x1132,0x1133,0x19B5,0x21F7,0x19B6,0x19B5,0x1153,0x1112,0x1932,0x1931,0x2131,0x2131,0x1911,0x1911,0x1932,0x1153,0x1195,0x11B6,0x11B7,0x11D7,0x11F8,0x11D7,0x0975,0x0934,0x1153,0x1132,0x1911,0x1931,0x2131,0x2130,0x2130,0x2930,0x210F,0x210F,0x2930,0x212F,0x2130,0x212F,0x210F,0x2930,0x2110,0x2130,0x2110,0x2130,0x212F,0x292F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x212F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x212F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x1911,0x1932,0x1132,0x1133,0x19B5,0x19D6,0x19D5,0x1994,0x1132,0x1931,0x1931,0x1951,0x1930,0x1910,0x1931,0x1931,0x1132,0x1154,0x19F7,0x19F8,0x19F8,0x1195,0x1132,0x1111,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x1911,0x1932,0x1994,0x19F6,0x11B6,0x11D7,0x11B7,0x1176,0x0955,0x0955,0x0955,0x0955,0x0976,0x11B7,0x11F8,0x11D8,0x11D7,0x11B6,0x0955,0x0913,0x1112,0x1112,0x1112,0x1111,0x1111,0x1931,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1111,0x1911,0x1911,0x1931,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1111,0x1911,0x1931,0x1111,0x1911,0x1911,0x1911,0x1111,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1911,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1912,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1932,0x1931,0x1911,0x1931,0x1911,0x1111,0x1911,0x1911,0x1911,0x1931,0x1931,0x1111,0x1911,0x1911,0x1911,0x1111,0x1111,0x1911,0x1111,0x1911,0x1912,0x1912,0x1911,0x1912,0x1912,0x1912,0x1112,0x1112,0x1112,0x1112,0x1132,0x1133,0x1154,0x1174,0x19F6,0x2217,0x19D6,0x1174,0x1133,0x1132,0x1931,0x1911,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x290F,0x212F,0x212F,0x210E,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x2930,0x2930,0x2130,0x2110,0x210F,0x210F,0x210F,0x2110,0x2910,0x2910,0x2930,0x2130,0x2111,0x2111,0x1912,0x1112,0x1995,0x21F7,0x19F8,0x11D7,0x0976,0x0975,0x0975,0x0954,0x0954,0x0954,0x0955,0x1196,0x11B6,0x19D7,0x1995,0x1974,0x1932,0x1911,0x1910,0x1910,0x2130,0x2130, + 0x2131,0x1911,0x1931,0x1932,0x1153,0x1174,0x0975,0x0996,0x09B7,0x11F8,0x11F8,0x11F8,0x11D8,0x11B7,0x1196,0x1174,0x1153,0x1932,0x1931,0x2151,0x2151,0x2151,0x1931,0x1932,0x1132,0x1153,0x1174,0x1195,0x11B6,0x11B7,0x11D8,0x1219,0x11F8,0x11F8,0x11B6,0x0975,0x1133,0x1132,0x1932,0x2132,0x2131,0x2931,0x2910,0x2910,0x2910,0x2930,0x2110,0x2130,0x2130,0x1911,0x1911,0x1932,0x1133,0x1174,0x19B6,0x19F7,0x2217,0x21F7,0x1195,0x1154,0x1132,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x210F,0x212F,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910,0x210F,0x2930,0x2930,0x210F,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x2110,0x2910,0x2110,0x2930,0x2110,0x212F,0x292F,0x292F,0x210F,0x210F,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x2930,0x290F,0x292F,0x2930,0x210F,0x212F,0x2110,0x210F,0x2910,0x2930,0x2110,0x2910,0x2910,0x2910,0x290F,0x2930,0x290F,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x2930,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x2930,0x2110,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x290F,0x2930,0x290F,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2930,0x2110,0x210F,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x2110,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x210F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x2930,0x2930,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x212F,0x2130,0x2130,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2910,0x2910,0x2930,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2910,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2910,0x210F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2910,0x2910,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x290F,0x210F,0x2930,0x290F,0x290F,0x210F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x212F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2930,0x2930,0x210F,0x2130,0x2130,0x2130,0x2151,0x2131,0x1912,0x1112,0x1154,0x11D8,0x11D9,0x09DA,0x01BA,0x01BA,0x01BA,0x01BA,0x01BA,0x01BA,0x01D9,0x01B9,0x09F9,0x09D8,0x11D7,0x11B6,0x1133,0x1952,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2151,0x1952,0x1132,0x1995,0x2217,0x1A17,0x19D6,0x1195,0x0933,0x1112,0x1911,0x2131,0x2131,0x2931,0x2930,0x2110,0x2110,0x2110,0x210F,0x2930,0x292F,0x212F,0x210F,0x212F,0x210F,0x2110,0x2131,0x2111,0x1911,0x1911,0x1912,0x1133,0x1975,0x19B6,0x21F7,0x2A38,0x21D7,0x1155,0x1133,0x1933,0x1932,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2930,0x210F,0x292F,0x292F,0x292F,0x290F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2930,0x290F,0x292F,0x292F,0x292F,0x212F,0x210F,0x2930,0x210F,0x212F,0x210F,0x212F,0x210F,0x2930,0x290F,0x290F,0x210F,0x2110,0x2130,0x2130,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x1951,0x1932,0x1133,0x0914,0x19B7,0x11B8,0x11B8,0x09D8,0x11F9,0x09D8,0x11D8,0x11B6,0x0953,0x1153,0x1952,0x1911,0x2151,0x2131,0x2110,0x2110,0x2130,0x2110,0x2131,0x2131,0x1932,0x1133,0x1134,0x1155,0x1195,0x19F7,0x19D7,0x11B6,0x11B6,0x19F7,0x19B6,0x19B6,0x1995,0x1133,0x1912,0x1911,0x2110,0x2130,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x1931,0x1912,0x1112,0x1154,0x21F6,0x2217,0x2217,0x21F7,0x1995,0x1133,0x1112,0x1912,0x1931,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x2130,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x290E,0x28CD,0x28AC,0x2829,0xABF7,0xDD1B,0xDCBA,0xDC99,0xDC98,0xDC57,0xDC57,0xDC57,0xDC57,0xDC58,0xD458,0xDC99,0xDCFB,0xDD1D,0x492E,0x288D,0x28CE,0x28EF,0x290F,0x210F,0x290F,0x2930,0x290F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2111,0x1911,0x1912,0x1953,0x1174,0x1196,0x11B7,0x11D9,0x09D9,0x11D9,0x11D8,0x11B7,0x1196,0x1175,0x1133,0x1911,0x1911,0x2131,0x2130,0x2130,0x2130,0x2930,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2930,0x2930,0x2930,0x2910,0x2930,0x290F,0x2910,0x2910,0x2110,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x290F,0x2930,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1932,0x1132,0x1133,0x19B5,0x21F7,0x19B6,0x19B5,0x1154,0x1112,0x1932,0x1931,0x2131,0x1931,0x1911,0x1932,0x1953,0x1174,0x11B6,0x09B7,0x09B7,0x09B8,0x11F8,0x1218,0x0976,0x0954,0x1195,0x1153,0x1132,0x1911,0x2131,0x2130,0x2130,0x2110,0x210F,0x210F,0x290F,0x2930,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x2930,0x2110,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2111,0x1911,0x1932,0x1133,0x1153,0x19B5,0x19D6,0x19B5,0x1994,0x1132,0x1931,0x1952,0x1931,0x1930,0x1930,0x1930,0x1931,0x1132,0x1153,0x19F7,0x1A18,0x19D8,0x1196,0x1132,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1952,0x1994,0x19B6,0x11D7,0x11B7,0x0976,0x0976,0x0975,0x0934,0x0934,0x0934,0x0955,0x0996,0x11D8,0x11D8,0x11F8,0x09D7,0x0976,0x0935,0x0913,0x0913,0x0913,0x0913,0x0912,0x0912,0x0912,0x1112,0x1112,0x1112,0x0912,0x1112,0x0912,0x1112,0x0912,0x0912,0x0912,0x1112,0x0912,0x0912,0x0912,0x0912,0x0912,0x1112,0x1112,0x0912,0x0912,0x0912,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1133,0x1112,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1132,0x1153,0x1153,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1132,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1113,0x1113,0x1113,0x1133,0x1133,0x1154,0x1154,0x1175,0x21F7,0x2217,0x19F7,0x1174,0x1153,0x1132,0x1931,0x1911,0x2131,0x2130,0x2130,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x2930,0x2930,0x2130,0x2130,0x2111,0x1911,0x1912,0x1112,0x1175,0x19F7,0x19F7,0x19F8,0x11B7,0x0976,0x0975,0x0955,0x0975,0x0975,0x0995,0x11B6,0x19B7,0x19B6,0x19B6,0x1974,0x1932,0x1911,0x2110,0x20F0,0x2110,0x2930, + 0x2130,0x2110,0x1911,0x1931,0x1932,0x1133,0x1154,0x1175,0x0996,0x09B7,0x11D8,0x11F8,0x09D8,0x11D8,0x11D7,0x1196,0x1154,0x1133,0x1932,0x1931,0x2131,0x2131,0x1911,0x1931,0x1911,0x1132,0x1153,0x1174,0x1195,0x11B7,0x1218,0x11F8,0x1219,0x1218,0x11D7,0x0996,0x0954,0x1153,0x1132,0x1911,0x2131,0x2131,0x2931,0x2110,0x2110,0x2910,0x2110,0x2130,0x2130,0x2130,0x2131,0x1911,0x1131,0x1132,0x1154,0x19B5,0x2217,0x2217,0x19D6,0x1995,0x1133,0x1133,0x1932,0x2132,0x2131,0x2131,0x2130,0x2130,0x210F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x210F,0x2910,0x2910,0x290F,0x210F,0x2930,0x2930,0x2910,0x210F,0x2930,0x2110,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2110,0x2110,0x2910,0x2110,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x210F,0x2930,0x2930,0x2910,0x210F,0x2930,0x2910,0x2910,0x2110,0x2910,0x2930,0x2910,0x2110,0x2910,0x2930,0x2910,0x210F,0x2910,0x2930,0x210F,0x2910,0x2910,0x2930,0x2910,0x2910,0x2930,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x2110,0x2110,0x210F,0x210F,0x210F,0x2910,0x2930,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x2110,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x2930,0x210F,0x210F,0x290F,0x2910,0x290F,0x2910,0x2910,0x2930,0x210F,0x2930,0x2910,0x290F,0x210F,0x2930,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2930,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2930,0x210F,0x210F,0x2930,0x2910,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x290F,0x292F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2930,0x2910,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x290F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2151,0x2131,0x1932,0x1133,0x1175,0x1A18,0x11F9,0x01D9,0x01BA,0x01BA,0x01DA,0x01BA,0x01BA,0x01DA,0x01DA,0x09D9,0x09D8,0x09D8,0x11F7,0x19D6,0x1133,0x1932,0x2152,0x2131,0x2130,0x2130,0x2130,0x2131,0x2151,0x2151,0x1931,0x1132,0x1974,0x21F6,0x19F6,0x19F7,0x1195,0x1154,0x1153,0x10F1,0x1932,0x2131,0x2951,0x2131,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1932,0x1133,0x1154,0x19B6,0x2218,0x2238,0x1996,0x1154,0x1154,0x1133,0x1932,0x1931,0x1911,0x2131,0x2110,0x2130,0x2110,0x2110,0x210F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2930,0x212F,0x2130,0x2130,0x212F,0x210F,0x290F,0x2910,0x2110,0x2930,0x212F,0x2930,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x1931,0x1952,0x1974,0x0934,0x1196,0x19B8,0x0998,0x11D9,0x09D9,0x09D9,0x09F9,0x09F8,0x11D8,0x11B6,0x0933,0x1953,0x1932,0x2152,0x2130,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x2152,0x1932,0x1112,0x1112,0x1953,0x1974,0x1154,0x1974,0x1994,0x1994,0x1994,0x1953,0x1132,0x1911,0x1910,0x1910,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x1931,0x2152,0x1932,0x1112,0x1174,0x21F6,0x2217,0x2238,0x21F7,0x1995,0x1133,0x1111,0x1911,0x1931,0x2131,0x2130,0x2130,0x2110,0x2110,0x210F,0x20EF,0x2930,0x2910,0x2930,0x210F,0x210F,0x210F,0x2110,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x28CE,0x288C,0x2009,0x8AD3,0xDD3C,0xDCDA,0xDC99,0xDC78,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xDC78,0xDC78,0xDC99,0xE51C,0xBC19,0x304B,0x28AD,0x28CE,0x28EF,0x290F,0x2910,0x2930,0x2930,0x290F,0x210F,0x210F,0x2110,0x2130,0x2131,0x1931,0x1932,0x1953,0x1995,0x11B6,0x0997,0x09B8,0x09D9,0x09D9,0x09D9,0x09D9,0x09D8,0x11B7,0x1196,0x1174,0x1953,0x1931,0x2131,0x2130,0x2130,0x2130,0x2930,0x2130,0x212F,0x212F,0x2110,0x2130,0x2130,0x2930,0x2930,0x210F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x290F,0x2930,0x2930,0x210F,0x210F,0x212F,0x2930,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x1930,0x1931,0x1931,0x1932,0x1133,0x19B6,0x2217,0x19D6,0x1995,0x1974,0x1132,0x1131,0x1911,0x1931,0x1931,0x1952,0x1953,0x1154,0x1195,0x0996,0x09B7,0x01B8,0x09D9,0x1219,0x1219,0x0997,0x0176,0x0995,0x0974,0x1153,0x1932,0x2131,0x2131,0x2131,0x2930,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x2110,0x2930,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x292F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2930,0x2930,0x2110,0x2110,0x2130,0x2110,0x1911,0x1931,0x1973,0x1153,0x1154,0x19B5,0x19B5,0x19B5,0x1974,0x1132,0x1932,0x1951,0x2151,0x1910,0x1930,0x1930,0x1931,0x1111,0x1153,0x19F7,0x1A18,0x19D7,0x1195,0x1112,0x1931,0x1910,0x2130,0x2110,0x2130,0x2110,0x210F,0x2130,0x210F,0x2130,0x2130,0x210F,0x2110,0x2130,0x1931,0x1931,0x1132,0x1995,0x19D6,0x11D7,0x0996,0x0956,0x0976,0x1196,0x1175,0x0114,0x0934,0x0955,0x0976,0x09D8,0x09D8,0x11F9,0x11F8,0x09B8,0x0997,0x11B7,0x11B7,0x19D7,0x11D7,0x11B6,0x11B6,0x1196,0x1196,0x1196,0x1196,0x1196,0x1195,0x1196,0x1196,0x1196,0x1196,0x1195,0x1195,0x1196,0x1196,0x11B6,0x1196,0x1196,0x1196,0x1196,0x1196,0x11B6,0x11B6,0x11B6,0x1196,0x19B6,0x19B6,0x19B6,0x19B6,0x11B6,0x1196,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x19B6,0x11B6,0x1196,0x1196,0x1196,0x1196,0x11B6,0x1196,0x1196,0x1196,0x1196,0x1195,0x1195,0x1195,0x1196,0x1196,0x1196,0x1196,0x1196,0x1196,0x11B6,0x1196,0x11B6,0x1196,0x11B6,0x1196,0x11B6,0x11B6,0x1195,0x11B6,0x11B6,0x1195,0x11B6,0x11B6,0x11B6,0x11B6,0x19B6,0x11B6,0x11B6,0x11B6,0x19B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x19B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x19B6,0x11B6,0x11B6,0x11B6,0x11B6,0x19B6,0x19B6,0x11B5,0x11B5,0x1195,0x1195,0x1195,0x11B6,0x1195,0x1195,0x1195,0x11B5,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x11B6,0x11B6,0x11B6,0x1196,0x11B6,0x11B6,0x11B6,0x11B6,0x1196,0x1196,0x19D7,0x19D7,0x19F7,0x19F7,0x19D6,0x1174,0x1153,0x1132,0x1131,0x1931,0x2131,0x2110,0x2110,0x2110,0x210F,0x2930,0x2930,0x2930,0x2930,0x20EF,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1112,0x1113,0x1175,0x19D7,0x11D8,0x11D8,0x09B7,0x0997,0x0996,0x0176,0x0996,0x09B6,0x11B7,0x11D7,0x11B7,0x19B6,0x1995,0x1953,0x1932,0x2111,0x2110,0x2110,0x2110,0x2110, + 0x2110,0x2110,0x2131,0x2131,0x1911,0x1111,0x1133,0x1154,0x1175,0x0996,0x11B7,0x11D8,0x11F8,0x11F8,0x11D8,0x11D7,0x11B6,0x0954,0x1133,0x1932,0x1931,0x1911,0x2131,0x1911,0x1931,0x1931,0x1932,0x1153,0x1174,0x1195,0x11D7,0x11F8,0x09F8,0x1218,0x11F8,0x11D7,0x11B6,0x1195,0x1133,0x1932,0x1932,0x2111,0x2931,0x2111,0x2110,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x1931,0x1931,0x1111,0x1132,0x1174,0x19B5,0x21F7,0x2217,0x19B6,0x1995,0x1134,0x1112,0x1932,0x1932,0x2111,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2930,0x210F,0x212F,0x2930,0x2130,0x212F,0x210F,0x2930,0x212F,0x210F,0x210F,0x2910,0x2910,0x2930,0x210F,0x2930,0x290F,0x2910,0x210F,0x210F,0x212F,0x2910,0x2930,0x2910,0x210F,0x210F,0x2910,0x210F,0x2910,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x2910,0x210F,0x290F,0x210F,0x2910,0x2110,0x2110,0x210F,0x210F,0x2130,0x2110,0x2110,0x2130,0x2930,0x2930,0x2930,0x292F,0x292F,0x290F,0x292F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x212F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x212F,0x292F,0x210F,0x212F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2131,0x2152,0x1932,0x1133,0x1195,0x11D8,0x09D8,0x01D9,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x09D9,0x09D8,0x11D7,0x19D6,0x0912,0x1932,0x2152,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1153,0x21D6,0x2217,0x19F7,0x11D6,0x1195,0x1153,0x0912,0x1111,0x1931,0x2131,0x2111,0x2931,0x2130,0x2130,0x2930,0x2110,0x2930,0x210F,0x212F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2111,0x2131,0x2131,0x1912,0x1912,0x1933,0x1154,0x19B6,0x2218,0x2A38,0x19B6,0x1975,0x1133,0x1112,0x1912,0x1932,0x2131,0x2110,0x2130,0x2110,0x2110,0x210F,0x2930,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x212F,0x2130,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x290F,0x290F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x1931,0x1953,0x1174,0x0955,0x11D8,0x0998,0x0998,0x09B9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D8,0x11F7,0x1175,0x1153,0x1932,0x2131,0x2131,0x2131,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x1911,0x2152,0x1932,0x1932,0x1932,0x1932,0x1112,0x1932,0x1911,0x10F1,0x1931,0x1910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x1931,0x1931,0x1931,0x1132,0x1132,0x1154,0x21F6,0x2217,0x2217,0x21F7,0x1995,0x1133,0x1112,0x1911,0x1931,0x2131,0x1910,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x2910,0x2930,0x2110,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x28EE,0x28AD,0x202A,0x61D0,0xDD3C,0xDCDA,0xDC99,0xDC98,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC78,0xDC78,0xDC99,0xED5D,0x9AF5,0x302B,0x28AD,0x28EE,0x290F,0x2910,0x2930,0x2930,0x2910,0x2110,0x2130,0x2930,0x2130,0x2130,0x1911,0x1911,0x1932,0x1974,0x1195,0x11B7,0x09D8,0x01B8,0x01B9,0x01DA,0x09DA,0x09DA,0x09D9,0x09D8,0x11B7,0x1196,0x1974,0x1932,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x2910,0x2930,0x290F,0x210F,0x210F,0x212F,0x2930,0x2930,0x210F,0x2930,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x1931,0x1952,0x1132,0x1113,0x19B6,0x2217,0x19B6,0x19B5,0x1174,0x1112,0x1132,0x1931,0x1931,0x1952,0x1952,0x1974,0x1195,0x11D7,0x11D8,0x09F9,0x01B8,0x01B9,0x09F9,0x09F9,0x01D8,0x09F8,0x1218,0x11D6,0x1154,0x1132,0x1932,0x2131,0x2130,0x2130,0x2930,0x210F,0x2910,0x2910,0x2110,0x2130,0x2110,0x2110,0x2930,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x212F,0x212F,0x210F,0x290F,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x1931,0x1952,0x1973,0x1153,0x1174,0x19B5,0x21D6,0x19B5,0x1973,0x1132,0x1931,0x2151,0x2131,0x1930,0x1930,0x1930,0x1931,0x1932,0x1153,0x19F7,0x1A18,0x19D7,0x1195,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x1930,0x1931,0x1931,0x1132,0x1195,0x19F7,0x11B7,0x09B7,0x0976,0x0976,0x0975,0x0955,0x0934,0x0934,0x0955,0x0976,0x0197,0x09D8,0x11F9,0x09D8,0x1219,0x11F9,0x11F9,0x225A,0x225A,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2219,0x2239,0x2239,0x2218,0x2218,0x2219,0x2218,0x2238,0x2218,0x2218,0x2218,0x2218,0x1A18,0x2218,0x1A18,0x1A18,0x1A18,0x2218,0x2218,0x1A18,0x1A18,0x2218,0x2218,0x1A18,0x1A18,0x2218,0x1A18,0x2218,0x2218,0x1A18,0x1A18,0x2218,0x1A18,0x2218,0x2218,0x2238,0x1A18,0x2218,0x2218,0x2218,0x1A18,0x2218,0x19F8,0x2218,0x1A18,0x2218,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2218,0x1A18,0x2218,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x19F8,0x1A18,0x1A18,0x19F8,0x1A18,0x2218,0x1A18,0x2238,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x2218,0x1A18,0x1A18,0x2218,0x1A18,0x1A18,0x2238,0x2238,0x2218,0x2218,0x2238,0x2218,0x2238,0x2218,0x2238,0x2218,0x2238,0x2238,0x2238,0x2238,0x2239,0x2238,0x2239,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2218,0x19D6,0x1175,0x1153,0x1132,0x1932,0x1931,0x1931,0x2110,0x2110,0x2110,0x2110,0x290F,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x292F,0x212F,0x212F,0x292F,0x212F,0x212F,0x2150,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x1932,0x1132,0x1133,0x1175,0x11D7,0x11D7,0x09D8,0x09B8,0x09B8,0x09B7,0x09B7,0x11D7,0x11D7,0x11F8,0x19F7,0x19D7,0x19B6,0x1174,0x1952,0x1931,0x2111,0x2110,0x2110,0x2110,0x2110, + 0x2110,0x2110,0x2110,0x2110,0x2131,0x1931,0x1932,0x1132,0x1154,0x1175,0x11D7,0x11D8,0x1219,0x11F9,0x11F8,0x09D8,0x11D7,0x1196,0x1154,0x1133,0x1911,0x1931,0x2131,0x2131,0x2131,0x2131,0x1911,0x1132,0x1133,0x1174,0x1196,0x09B7,0x09D7,0x09F8,0x09F8,0x11F8,0x11F8,0x1196,0x1995,0x1133,0x1932,0x1932,0x18F1,0x2131,0x2931,0x2110,0x2110,0x2110,0x2930,0x2130,0x2151,0x2131,0x1931,0x1931,0x1131,0x1132,0x1174,0x19B5,0x19F7,0x19F7,0x19D7,0x1995,0x1133,0x1133,0x1912,0x2132,0x2111,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x210F,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x2110,0x2110,0x2910,0x210F,0x2910,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x2110,0x2130,0x210F,0x212F,0x292F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2150,0x2150,0x1930,0x1930,0x2150,0x2130,0x2150,0x2130,0x2130,0x2130,0x210F,0x2930,0x212F,0x212F,0x212F,0x2130,0x2131,0x2131,0x1911,0x1112,0x1195,0x19F8,0x09B8,0x01B9,0x01B9,0x01BA,0x01BA,0x01DA,0x01BA,0x01BA,0x01B9,0x09D9,0x09D9,0x11D8,0x1A17,0x1195,0x0912,0x1131,0x1951,0x2151,0x2151,0x2130,0x2130,0x2130,0x2131,0x2151,0x1931,0x1931,0x1132,0x1994,0x2217,0x2238,0x1A17,0x19D7,0x11B5,0x1133,0x10F2,0x1912,0x1931,0x2131,0x2131,0x2130,0x2130,0x2930,0x2110,0x2130,0x212F,0x212F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x1912,0x1932,0x1133,0x1154,0x1995,0x2A38,0x2218,0x19B6,0x1975,0x1133,0x1112,0x1912,0x1931,0x2131,0x2131,0x2130,0x2110,0x2110,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1932,0x1133,0x0934,0x1A19,0x11F9,0x0998,0x09B9,0x01B9,0x01DA,0x01DA,0x01D9,0x01D9,0x01B8,0x1219,0x1A18,0x0933,0x1132,0x1931,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x1931,0x1932,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2131,0x1931,0x1931,0x1132,0x1132,0x1174,0x21F7,0x2217,0x2217,0x21F6,0x1174,0x1133,0x1132,0x1931,0x1931,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x210F,0x2910,0x210F,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x28EE,0x20AD,0x286B,0x40CC,0xD4DB,0xD4BA,0xDC99,0xDCB9,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC77,0xDC57,0xDC78,0xD478,0xE51C,0x8A93,0x302A,0x288C,0x28EE,0x290F,0x290F,0x210F,0x210F,0x2930,0x2110,0x2130,0x2110,0x2130,0x2131,0x1911,0x1911,0x1933,0x19B6,0x11D7,0x11F8,0x09D9,0x09D9,0x01D9,0x01DA,0x01DA,0x09DA,0x09FA,0x09D9,0x11D8,0x11B7,0x1175,0x1133,0x1932,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2910,0x210F,0x290F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x1930,0x1930,0x1931,0x1132,0x1113,0x19B6,0x21F7,0x19B6,0x19B6,0x1174,0x1132,0x1131,0x1131,0x1931,0x1952,0x1973,0x1175,0x1196,0x11D8,0x1219,0x09F9,0x01B9,0x01D9,0x01F9,0x01F9,0x01F9,0x0A1A,0x123A,0x11F7,0x0975,0x1133,0x1932,0x2131,0x2131,0x2110,0x2110,0x210F,0x290F,0x2910,0x2130,0x2130,0x2130,0x2130,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1932,0x1952,0x1974,0x1154,0x1195,0x19B6,0x19B6,0x21B5,0x1153,0x1132,0x1931,0x2151,0x2131,0x2130,0x1930,0x1930,0x1930,0x1131,0x1173,0x1A17,0x1A18,0x19F7,0x1195,0x1132,0x1931,0x1910,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x212F,0x2930,0x2130,0x2110,0x2130,0x2131,0x1931,0x1911,0x1112,0x1194,0x19D7,0x11B6,0x11D7,0x0996,0x0955,0x0955,0x0934,0x0955,0x0935,0x0135,0x0976,0x09B7,0x09D8,0x09D8,0x09D8,0x11F8,0x11F8,0x11F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19D8,0x21F8,0x19F8,0x19D7,0x21F8,0x19D7,0x19F8,0x21F8,0x21F8,0x19F8,0x19F8,0x19F8,0x19F8,0x2218,0x2218,0x19F8,0x19F8,0x21F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x21F8,0x21F8,0x19F8,0x2218,0x19F7,0x19F8,0x2218,0x19F7,0x19F7,0x19F8,0x19F7,0x19F8,0x19F8,0x19F7,0x19F7,0x19F7,0x19F7,0x19F8,0x19D7,0x19F7,0x19F8,0x19D7,0x19F8,0x19F7,0x19F7,0x19F8,0x19F8,0x19F7,0x19F7,0x19D7,0x19F8,0x19F8,0x19F7,0x19F7,0x19F8,0x19D7,0x19D7,0x19D7,0x19F7,0x19F8,0x19F7,0x19F7,0x19F7,0x19F7,0x19D7,0x19F7,0x19D7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19D7,0x19D7,0x19F7,0x19F7,0x19D7,0x19D7,0x19F7,0x19D7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19D7,0x19D7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x1A17,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x21F8,0x19F7,0x19F7,0x2218,0x2218,0x19F8,0x1A18,0x19F8,0x19F7,0x19F7,0x19F7,0x19F7,0x19F8,0x19F8,0x1A18,0x1A18,0x2218,0x2218,0x19D7,0x19D7,0x19B6,0x1174,0x1133,0x1132,0x1932,0x1931,0x1931,0x2110,0x2110,0x2130,0x2110,0x2930,0x2910,0x290F,0x210F,0x210F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x190F,0x1910,0x2151,0x1932,0x1153,0x1154,0x1175,0x19D7,0x11D8,0x09B8,0x09D8,0x09B8,0x09D8,0x11D8,0x19F8,0x1A18,0x1A38,0x1A17,0x19B6,0x1974,0x1132,0x1931,0x1931,0x2110,0x2930,0x2910,0x2910,0x20F0, + 0x2110,0x2110,0x2110,0x2130,0x2130,0x1910,0x1911,0x1932,0x1132,0x1174,0x1195,0x11B7,0x11D8,0x11F8,0x1218,0x11F8,0x11F8,0x11D7,0x1196,0x1154,0x1132,0x1911,0x2131,0x2151,0x2131,0x1931,0x1911,0x1931,0x1132,0x1133,0x1174,0x1196,0x11D7,0x11F8,0x11F8,0x1219,0x11F8,0x11D7,0x1196,0x1155,0x1133,0x1912,0x1912,0x2111,0x2951,0x2131,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x1931,0x1131,0x1132,0x1174,0x19D6,0x2217,0x21F7,0x21F7,0x1995,0x1134,0x1933,0x1932,0x1911,0x2111,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x292F,0x290F,0x2930,0x292F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2910,0x2910,0x210F,0x2910,0x2910,0x2930,0x2910,0x2110,0x210F,0x2110,0x2910,0x2910,0x2110,0x2930,0x212F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2930,0x212F,0x210F,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x212F,0x212F,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x212F,0x212F,0x2110,0x2110,0x210F,0x210F,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x2110,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2110,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2110,0x210F,0x2110,0x2130,0x210F,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2930,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x292F,0x292F,0x290F,0x292F,0x212F,0x292F,0x212F,0x2130,0x2130,0x2130,0x1950,0x1130,0x090F,0x1150,0x1130,0x1930,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1132,0x1174,0x19F8,0x11D8,0x09D9,0x01B9,0x01B9,0x01BA,0x01DA,0x01DA,0x01BA,0x01B9,0x01B9,0x09D8,0x09D7,0x19F7,0x1174,0x1132,0x1931,0x1951,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1931,0x1932,0x1953,0x19B5,0x2217,0x1A18,0x1A18,0x19D7,0x1174,0x1133,0x1112,0x1912,0x2132,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x2130,0x2930,0x2930,0x2110,0x2110,0x2110,0x2111,0x2111,0x2132,0x1912,0x1133,0x1134,0x1995,0x2A38,0x21F7,0x19B6,0x1995,0x1153,0x1132,0x1932,0x1931,0x2131,0x2111,0x2110,0x2110,0x2110,0x290F,0x290F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x2930,0x210F,0x2910,0x2110,0x2110,0x212F,0x212F,0x212F,0x2130,0x212F,0x2930,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2131,0x1932,0x1133,0x0955,0x11F9,0x09D9,0x01B9,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01D9,0x09D8,0x11F8,0x1195,0x1133,0x1932,0x1931,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x2131,0x1931,0x2131,0x1911,0x1931,0x1911,0x1910,0x1910,0x2130,0x2130,0x2930,0x2930,0x2130,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1112,0x0912,0x1174,0x21F6,0x2217,0x2217,0x19F6,0x1194,0x1133,0x1112,0x1911,0x1911,0x2131,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2110,0x210F,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x28CD,0x286C,0x2009,0xB3F8,0xDCDA,0xDCB9,0xE4B9,0xDC78,0xDC77,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC78,0xDC99,0xE51B,0x9B15,0x386B,0x28AD,0x28EE,0x28EF,0x290F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2111,0x1911,0x1912,0x1133,0x1196,0x11D7,0x09D9,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x09D9,0x09D9,0x11B8,0x19D7,0x1174,0x1932,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2930,0x290F,0x290F,0x2910,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x292F,0x290F,0x290F,0x2930,0x210F,0x212F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1930,0x1931,0x1132,0x1113,0x19B6,0x21F7,0x19B6,0x19B6,0x1154,0x1132,0x1132,0x1131,0x1131,0x1152,0x1174,0x1195,0x1197,0x11D9,0x09F9,0x01FA,0x01D9,0x01D9,0x01FA,0x01FA,0x01D9,0x01D9,0x09F9,0x09F8,0x11D7,0x1154,0x1932,0x2131,0x2131,0x2110,0x2110,0x2930,0x2910,0x2910,0x2130,0x2130,0x2130,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x212F,0x290F,0x210F,0x212F,0x212F,0x290F,0x290F,0x290F,0x292F,0x212F,0x292F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x1911,0x1932,0x1953,0x1174,0x1154,0x19B6,0x19B6,0x19B5,0x21B5,0x1953,0x1932,0x1931,0x2131,0x2130,0x2151,0x2130,0x1930,0x1931,0x1132,0x1153,0x19F7,0x1A18,0x19F7,0x11B5,0x1132,0x1931,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x1930,0x1931,0x1931,0x1132,0x1154,0x19B6,0x11D7,0x11D8,0x09B7,0x0976,0x0155,0x0135,0x0955,0x0955,0x0976,0x0997,0x09B7,0x09D7,0x11D8,0x11D7,0x11B7,0x11B7,0x11B6,0x1196,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1995,0x1996,0x1195,0x1195,0x1996,0x1996,0x1195,0x1995,0x1995,0x1996,0x1996,0x19B6,0x1995,0x1996,0x1995,0x1995,0x1996,0x1996,0x1995,0x1995,0x1195,0x1996,0x1195,0x19B6,0x1195,0x19B6,0x1195,0x1995,0x1995,0x1995,0x1995,0x1996,0x1995,0x1996,0x1195,0x1195,0x1995,0x1996,0x1195,0x1996,0x1996,0x1995,0x1195,0x1195,0x1195,0x1995,0x1195,0x1995,0x1195,0x1195,0x1195,0x1995,0x1195,0x1995,0x1175,0x1195,0x1195,0x1195,0x1995,0x1995,0x1195,0x1995,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1995,0x1995,0x1175,0x1195,0x1195,0x1995,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1995,0x1995,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1995,0x19B5,0x1995,0x1995,0x1195,0x1195,0x1195,0x1195,0x1195,0x1175,0x1175,0x1195,0x1175,0x1175,0x1175,0x1195,0x1195,0x1195,0x1195,0x1155,0x1154,0x1154,0x1133,0x1133,0x1132,0x1932,0x1931,0x1931,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1910,0x1931,0x1932,0x1132,0x1974,0x1154,0x11B6,0x19D7,0x11D8,0x11D8,0x11D8,0x11D8,0x11B7,0x11D7,0x19F7,0x19D7,0x19D6,0x19B5,0x1994,0x1953,0x1932,0x1931,0x1930,0x2110,0x2130,0x2930,0x2910,0x2910, + 0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x1931,0x1952,0x1152,0x1153,0x0975,0x0996,0x09D7,0x1218,0x1219,0x11F8,0x11F8,0x11B7,0x1196,0x1154,0x1112,0x1911,0x1931,0x2151,0x2131,0x1931,0x1931,0x1931,0x1132,0x1133,0x1174,0x1195,0x09B7,0x09D7,0x11F8,0x1219,0x11F8,0x11B7,0x1196,0x1155,0x1133,0x1912,0x1912,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2151,0x1931,0x1132,0x1153,0x1174,0x19B6,0x19D7,0x19F7,0x21F7,0x1975,0x1154,0x1933,0x1932,0x1911,0x2111,0x2131,0x2130,0x2110,0x2930,0x2930,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x292F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x290F,0x290F,0x210F,0x2910,0x2930,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x2930,0x212F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x210F,0x210F,0x210F,0x2910,0x2930,0x2910,0x2930,0x2910,0x2930,0x2910,0x2930,0x210F,0x2910,0x2910,0x2930,0x210F,0x2910,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2930,0x210F,0x210F,0x210F,0x290F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x210F,0x2930,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2910,0x2910,0x210F,0x292F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2930,0x290F,0x290F,0x210F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x292F,0x212F,0x2130,0x210F,0x212F,0x2150,0x2171,0x1950,0x00CE,0x32D6,0x4358,0x0930,0x1130,0x1930,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1112,0x1154,0x11B6,0x11D8,0x11F9,0x0A1A,0x09FA,0x01DA,0x01B9,0x09DA,0x01B9,0x09D9,0x09F9,0x11F9,0x11F8,0x1195,0x1153,0x1953,0x1952,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x1911,0x1932,0x1932,0x1133,0x1174,0x19D7,0x2218,0x2218,0x19D6,0x1174,0x1113,0x1112,0x1912,0x2132,0x2151,0x2131,0x2130,0x2110,0x2130,0x210F,0x2130,0x212F,0x212F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2111,0x2152,0x2152,0x1932,0x1132,0x1133,0x1995,0x21F7,0x21F7,0x21F7,0x1975,0x1133,0x1113,0x1932,0x1932,0x2131,0x2111,0x2110,0x2110,0x2910,0x292F,0x292F,0x290F,0x290F,0x292F,0x210F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1952,0x0954,0x11B7,0x09D8,0x01B9,0x09DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x09FA,0x09F9,0x09D8,0x19F8,0x1154,0x1112,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x2110,0x2131,0x2131,0x2131,0x1911,0x2131,0x2131,0x2131,0x2130,0x2130,0x210F,0x2110,0x2930,0x2930,0x210F,0x2110,0x2110,0x2110,0x2150,0x2151,0x2131,0x1931,0x1931,0x1132,0x1133,0x1174,0x19F6,0x2237,0x2217,0x19D6,0x1995,0x1133,0x1112,0x1911,0x1911,0x2131,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x2110,0x210F,0x210F,0x210F,0x2910,0x2930,0x2930,0x210F,0x210F,0x2930,0x2910,0x2910,0x290F,0x28EF,0x28CE,0x206C,0x282A,0x8293,0xE53C,0xDC99,0xDCB9,0xDC78,0xDC78,0xDC78,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC78,0xDC78,0xDC99,0xE4FB,0x92D3,0x302A,0x30CD,0x28CE,0x28EF,0x290F,0x20EF,0x210F,0x2110,0x2930,0x2130,0x2130,0x2110,0x2111,0x1911,0x1112,0x1995,0x19F8,0x1219,0x09D9,0x01D9,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01D9,0x09D9,0x09D8,0x2239,0x19B6,0x1112,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x2930,0x290F,0x210F,0x2930,0x210F,0x2930,0x2930,0x2910,0x290F,0x290F,0x210F,0x2930,0x2930,0x290F,0x290F,0x2930,0x210F,0x2110,0x2930,0x210F,0x210F,0x2930,0x2930,0x292F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2150,0x1930,0x1931,0x1112,0x1113,0x19B6,0x2217,0x19D6,0x1995,0x1154,0x0912,0x1952,0x1952,0x1132,0x1153,0x1994,0x11B6,0x11D8,0x09D9,0x01D9,0x01FA,0x01FA,0x01FA,0x01FA,0x021A,0x01D9,0x01B9,0x09F9,0x11F9,0x1A18,0x1175,0x1112,0x1931,0x2131,0x2930,0x2930,0x2110,0x2910,0x2930,0x210F,0x2130,0x2130,0x2130,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x2132,0x1932,0x1132,0x1174,0x1995,0x19D6,0x21F7,0x19B6,0x1995,0x1994,0x1953,0x1932,0x2151,0x2131,0x1910,0x2130,0x1930,0x1950,0x1931,0x1132,0x1174,0x19F7,0x19F8,0x19F7,0x1195,0x1152,0x1951,0x2151,0x2130,0x2130,0x2110,0x2130,0x210F,0x2130,0x2930,0x210F,0x2110,0x2130,0x2130,0x2131,0x2131,0x1931,0x1112,0x1153,0x1195,0x11D7,0x11F8,0x1A19,0x11F8,0x0996,0x0175,0x0976,0x0996,0x11D7,0x09D7,0x11F8,0x11F8,0x11B6,0x0975,0x1154,0x1134,0x1133,0x1133,0x1112,0x1132,0x1133,0x1133,0x1133,0x1132,0x1132,0x1933,0x1133,0x1933,0x1133,0x1112,0x1133,0x1133,0x1133,0x1133,0x1133,0x1112,0x1133,0x1133,0x1133,0x1133,0x1133,0x1112,0x1132,0x1933,0x1933,0x1132,0x1133,0x1132,0x1132,0x1133,0x1933,0x1133,0x1133,0x1133,0x1132,0x1133,0x1133,0x1133,0x1933,0x1933,0x1133,0x1133,0x1933,0x1933,0x1933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x1133,0x1133,0x1132,0x1132,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1133,0x1953,0x1953,0x1133,0x1133,0x1133,0x1132,0x1133,0x1133,0x1132,0x1133,0x1933,0x1933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1933,0x1132,0x1132,0x1133,0x1133,0x1132,0x1132,0x1133,0x1133,0x1133,0x1133,0x1153,0x1153,0x1133,0x1132,0x1133,0x1133,0x1133,0x1112,0x1133,0x1933,0x1133,0x1133,0x1112,0x1112,0x1132,0x1132,0x1112,0x1112,0x1132,0x1133,0x1133,0x1133,0x1112,0x1112,0x1112,0x1932,0x1951,0x1931,0x1930,0x2130,0x2110,0x2110,0x2130,0x2110,0x2930,0x290F,0x290F,0x290F,0x292F,0x212F,0x210F,0x210F,0x2130,0x210F,0x2130,0x212F,0x2930,0x212F,0x292F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2150,0x2130,0x190F,0x1910,0x1910,0x1931,0x1952,0x1953,0x1154,0x1195,0x19D7,0x19F8,0x19F8,0x11D7,0x0976,0x0955,0x1175,0x1175,0x1154,0x1153,0x1153,0x1132,0x1952,0x1932,0x1931,0x1930,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930, + 0x2130,0x2130,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x0953,0x0995,0x09B6,0x11F8,0x1219,0x11F8,0x11D8,0x11D8,0x19D7,0x1195,0x1154,0x1132,0x1911,0x1931,0x1931,0x2151,0x2131,0x1911,0x1931,0x1132,0x1153,0x1174,0x11B6,0x09B6,0x11D7,0x11F8,0x11F8,0x11F8,0x11B7,0x1196,0x1175,0x1133,0x1912,0x1912,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2131,0x2151,0x1931,0x1132,0x1133,0x1154,0x19B6,0x19D7,0x21F8,0x21D7,0x1975,0x1954,0x1912,0x1932,0x1911,0x2131,0x2131,0x2110,0x2930,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x2930,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2930,0x2910,0x2910,0x2910,0x2110,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x2930,0x212F,0x212F,0x2930,0x212F,0x292F,0x212F,0x210F,0x212F,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x2910,0x2910,0x210F,0x2930,0x290F,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x2910,0x2910,0x292F,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x212F,0x2130,0x212F,0x210F,0x2130,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2131,0x2131,0x2151,0x2152,0x2131,0x2131,0x2131,0x2130,0x2110,0x2110,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x292F,0x2930,0x2130,0x212F,0x212F,0x2150,0x2171,0x1150,0x010F,0x0170,0x4C3B,0x545B,0x1A33,0x0130,0x1110,0x1930,0x2150,0x2130,0x210F,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1153,0x1175,0x11B7,0x11F9,0x11FA,0x09FA,0x09DA,0x09B9,0x01B9,0x01B9,0x09D9,0x09F9,0x1219,0x19F7,0x1174,0x1153,0x1972,0x2152,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x1931,0x1912,0x1953,0x1153,0x1995,0x21F7,0x2218,0x2217,0x21D6,0x1975,0x1113,0x1112,0x1912,0x2132,0x2131,0x2110,0x2931,0x2930,0x2110,0x2130,0x210F,0x210F,0x210F,0x2950,0x2110,0x2110,0x2110,0x2110,0x2130,0x2131,0x2131,0x2131,0x1931,0x1912,0x1133,0x1133,0x19B6,0x2218,0x21F7,0x21D7,0x1975,0x1133,0x1133,0x1932,0x1932,0x2111,0x2111,0x2110,0x2930,0x2930,0x210F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2950,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x2930,0x2130,0x2130,0x1931,0x1132,0x1195,0x11F8,0x09B8,0x01D9,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x09F9,0x1A19,0x1175,0x1112,0x1911,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x2130,0x2131,0x2130,0x2130,0x2151,0x2150,0x2130,0x210F,0x20EF,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x2131,0x2151,0x1931,0x1911,0x1132,0x0932,0x1174,0x21F6,0x2217,0x2217,0x21F7,0x1995,0x0912,0x1111,0x1111,0x1911,0x2131,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2930,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x28EE,0x28AD,0x202B,0x514E,0xCCBB,0xDCDA,0xDCB9,0xDC98,0xDC77,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC78,0xDC99,0xDCDA,0xB3B7,0x302A,0x38EE,0x28CE,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2130,0x2130,0x1910,0x2111,0x1911,0x1933,0x1175,0x1A18,0x11F9,0x01B8,0x01B9,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01D9,0x09D9,0x09D8,0x1A18,0x19D6,0x08F2,0x1932,0x2131,0x2131,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2930,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x2930,0x292F,0x210F,0x212F,0x292F,0x2950,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x1930,0x1931,0x1112,0x1113,0x19B6,0x21F7,0x19D7,0x19B6,0x1154,0x1112,0x1152,0x1952,0x1132,0x1153,0x1175,0x1196,0x09B8,0x09D9,0x01D9,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01B9,0x01B9,0x09F9,0x09F9,0x19F8,0x1175,0x1112,0x1931,0x2131,0x2951,0x2110,0x210F,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2130,0x2130,0x1931,0x2152,0x1932,0x1132,0x1133,0x1995,0x19D6,0x21F7,0x19D6,0x19B6,0x1974,0x1953,0x1932,0x2152,0x2131,0x2130,0x1910,0x2130,0x2130,0x1930,0x1931,0x1132,0x1174,0x1A18,0x11F8,0x11F8,0x11B6,0x1153,0x1952,0x2131,0x2130,0x2130,0x210F,0x210F,0x212F,0x2930,0x2110,0x210F,0x2110,0x2130,0x2110,0x2110,0x1911,0x1911,0x1931,0x1132,0x1154,0x11B6,0x19F8,0x11F8,0x1218,0x11F8,0x11F8,0x11D7,0x11F7,0x11F8,0x11F7,0x1218,0x11B6,0x1175,0x1154,0x1133,0x1112,0x1112,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1932,0x1911,0x1911,0x1911,0x1911,0x1932,0x1911,0x1911,0x1932,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1932,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1932,0x1932,0x1911,0x1911,0x1911,0x1932,0x1932,0x1931,0x1931,0x1932,0x1911,0x1931,0x1931,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1932,0x1931,0x1911,0x1931,0x1931,0x1931,0x1911,0x1911,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1911,0x1931,0x1931,0x1931,0x1931,0x1930,0x1930,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x210F,0x2110,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x1910,0x1931,0x1911,0x1932,0x1133,0x1154,0x1195,0x19F7,0x2218,0x19F8,0x19D7,0x0975,0x0934,0x1134,0x1154,0x1153,0x1933,0x1932,0x1931,0x1931,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930, + 0x2130,0x2110,0x210F,0x210F,0x210F,0x212F,0x2130,0x2110,0x2130,0x1931,0x1932,0x1152,0x1174,0x0995,0x11B6,0x11D7,0x11F8,0x11F8,0x1A19,0x11F8,0x19F7,0x1175,0x1154,0x1112,0x1112,0x2152,0x1931,0x2131,0x1931,0x1931,0x1931,0x1132,0x1173,0x1194,0x1195,0x11B6,0x11D7,0x11F8,0x11F8,0x19F8,0x11B7,0x1196,0x1175,0x1133,0x1932,0x1932,0x1911,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2151,0x1931,0x1931,0x1932,0x1133,0x1174,0x19D6,0x21F7,0x21F7,0x19B6,0x1975,0x1954,0x1112,0x1932,0x2131,0x2131,0x2131,0x2950,0x2930,0x2930,0x290F,0x2930,0x212F,0x2930,0x292F,0x212F,0x212F,0x2130,0x2930,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x210F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x212F,0x2130,0x2930,0x2930,0x210F,0x210F,0x2130,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x292F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x292F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x212F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x2110,0x2110,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x212F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x212F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x210F,0x212F,0x210F,0x212F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2132,0x1932,0x1932,0x1931,0x2132,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x292F,0x292F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2991,0x1930,0x092F,0x010F,0x3358,0x441A,0x443A,0x3357,0x0130,0x0930,0x1130,0x1950,0x2150,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2131,0x1931,0x1952,0x1974,0x1175,0x1197,0x11B8,0x11D9,0x11D9,0x11D9,0x11F9,0x11F9,0x11F8,0x11F8,0x19F8,0x19B6,0x1153,0x1132,0x1931,0x1930,0x1910,0x2110,0x2110,0x210F,0x2130,0x212F,0x2130,0x2110,0x2130,0x2130,0x2131,0x1931,0x1932,0x1953,0x1154,0x1175,0x19D7,0x2217,0x2217,0x19D6,0x1974,0x1112,0x10F1,0x1911,0x1911,0x2131,0x2130,0x2930,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2110,0x2130,0x2110,0x2130,0x2130,0x2111,0x2132,0x1932,0x1133,0x1154,0x19B6,0x21F7,0x2218,0x21F7,0x1175,0x1113,0x1113,0x1112,0x2132,0x2132,0x2131,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x292F,0x290F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2110,0x2130,0x1931,0x1132,0x11D6,0x1219,0x09D9,0x09DA,0x01BA,0x01BA,0x01BA,0x01DA,0x01BA,0x01BA,0x01DA,0x01DA,0x01D9,0x09F9,0x1A19,0x19B6,0x08F1,0x1931,0x1910,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2131,0x2151,0x1930,0x1931,0x1931,0x1932,0x1132,0x1174,0x19F6,0x2217,0x2217,0x19D6,0x1994,0x1133,0x1111,0x1911,0x1911,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x2930,0x2930,0x210F,0x2930,0x2910,0x290F,0x2930,0x290F,0x28EF,0x28EF,0x28CE,0x286C,0x282A,0xBC39,0xDCFB,0xE4DA,0xDC98,0xDC78,0xDC77,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC78,0xDCBA,0xDD3C,0x512D,0x308C,0x28CE,0x28EF,0x20EF,0x210F,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x1931,0x1911,0x1132,0x1154,0x11B7,0x09D8,0x01D9,0x01B9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01B9,0x01D9,0x09B9,0x09B8,0x19F8,0x19D6,0x0912,0x1932,0x2152,0x2130,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2930,0x290F,0x2910,0x210F,0x2930,0x2930,0x2930,0x290F,0x212F,0x210F,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1930,0x1911,0x1112,0x1133,0x21D6,0x21F7,0x19B6,0x1995,0x1133,0x1133,0x1152,0x1152,0x1132,0x1174,0x1195,0x11D7,0x09D8,0x09F9,0x01D9,0x01FA,0x01DA,0x01DA,0x01FB,0x01DA,0x01B9,0x01B9,0x09F9,0x1219,0x11F8,0x1175,0x1112,0x1932,0x2131,0x2130,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x292F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2131,0x2152,0x1111,0x1132,0x1133,0x1994,0x19B6,0x19B6,0x21F7,0x19D6,0x1975,0x1933,0x1932,0x1912,0x1931,0x1931,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1132,0x0954,0x1A18,0x1A19,0x11F8,0x11B6,0x1132,0x1131,0x1931,0x2130,0x2130,0x2150,0x212F,0x212F,0x212F,0x2930,0x2910,0x2110,0x2130,0x2130,0x2131,0x2131,0x1910,0x1911,0x1912,0x1133,0x1175,0x11B6,0x11D7,0x19F8,0x1A18,0x11F7,0x11D7,0x11F7,0x11D7,0x11D6,0x11B6,0x1174,0x0932,0x1132,0x1932,0x1911,0x1931,0x1911,0x1931,0x1910,0x1911,0x1931,0x1931,0x1931,0x1910,0x1910,0x2131,0x1910,0x1910,0x1910,0x2131,0x1910,0x2131,0x1911,0x2111,0x2111,0x2111,0x1910,0x2111,0x1911,0x2131,0x1910,0x2111,0x1910,0x1910,0x1910,0x2110,0x1910,0x2111,0x1910,0x2131,0x1910,0x2131,0x1911,0x2131,0x1910,0x1911,0x1911,0x1911,0x1910,0x2111,0x2110,0x2111,0x2110,0x2111,0x2111,0x2111,0x2111,0x2131,0x1910,0x2131,0x1910,0x1931,0x1911,0x2111,0x2111,0x2130,0x1910,0x1931,0x1910,0x2131,0x1931,0x2131,0x2131,0x2131,0x1911,0x2131,0x1911,0x1911,0x2131,0x1910,0x1910,0x1910,0x1910,0x2131,0x2111,0x2111,0x1911,0x2111,0x2111,0x2131,0x1910,0x2111,0x2131,0x1931,0x1910,0x1910,0x1910,0x1910,0x1910,0x2131,0x2111,0x2131,0x1911,0x2131,0x2131,0x1931,0x1911,0x2131,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1911,0x2111,0x1911,0x1911,0x1911,0x2131,0x1911,0x2131,0x1910,0x2131,0x1931,0x1931,0x1910,0x2131,0x2131,0x2131,0x1931,0x2131,0x2131,0x1911,0x1910,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x290F,0x210F,0x210F,0x292F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x1910,0x1931,0x1132,0x1133,0x1154,0x19B5,0x21F7,0x2218,0x21F7,0x1996,0x0934,0x0913,0x1113,0x1113,0x1953,0x1932,0x1932,0x1931,0x1911,0x1931,0x1910,0x1910,0x2130,0x2150,0x212F,0x210F,0x2130,0x210F,0x2930,0x2910, + 0x2110,0x2110,0x2130,0x2930,0x212F,0x212F,0x2930,0x2130,0x2130,0x1930,0x1931,0x1952,0x1152,0x1154,0x1175,0x1196,0x11D7,0x1A18,0x11F8,0x1A19,0x11F8,0x11D7,0x1195,0x1154,0x1133,0x1132,0x1932,0x1952,0x2151,0x1931,0x1931,0x1931,0x1132,0x1153,0x1174,0x1195,0x11B7,0x11D8,0x11F8,0x11F8,0x11F8,0x11D7,0x1196,0x1154,0x1953,0x1932,0x1911,0x1911,0x2151,0x2151,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2151,0x1911,0x1932,0x1133,0x1995,0x19B6,0x21F7,0x21F7,0x19B6,0x1975,0x1954,0x1933,0x1912,0x1911,0x2131,0x2130,0x2130,0x2130,0x2930,0x2130,0x212F,0x2930,0x2930,0x2930,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x212F,0x292F,0x212F,0x210F,0x290F,0x210F,0x2110,0x2910,0x2910,0x212F,0x210F,0x210F,0x2930,0x212F,0x210F,0x2930,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x2930,0x210F,0x212F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x212F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2110,0x210F,0x2930,0x210F,0x290F,0x292F,0x2930,0x210F,0x2910,0x290F,0x210F,0x212F,0x292F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x290F,0x2930,0x2930,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2152,0x1932,0x1932,0x1932,0x1932,0x1132,0x1932,0x1932,0x1931,0x2131,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x2930,0x2930,0x292F,0x210F,0x212F,0x2130,0x2150,0x2170,0x2171,0x090F,0x010F,0x01B1,0x3C1A,0x341A,0x341A,0x33D9,0x0A12,0x010F,0x0930,0x1150,0x1950,0x2150,0x2130,0x2130,0x2150,0x2950,0x2130,0x2110,0x2130,0x2130,0x2131,0x1931,0x1952,0x1954,0x1175,0x1176,0x1197,0x11B8,0x11D8,0x1A18,0x11D7,0x11D7,0x11D6,0x1175,0x1153,0x1152,0x1931,0x1930,0x1930,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1952,0x1932,0x1933,0x1154,0x1175,0x19D7,0x21F7,0x2217,0x21F6,0x1174,0x1133,0x1111,0x1911,0x2131,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x2130,0x212F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2132,0x1953,0x1133,0x1954,0x1996,0x21D7,0x2218,0x21D7,0x1175,0x1113,0x1113,0x1933,0x2132,0x2132,0x2110,0x2110,0x2130,0x2930,0x2110,0x2930,0x210F,0x212F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2110,0x1931,0x1133,0x11B6,0x11F8,0x09D9,0x01B9,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x09FA,0x09F9,0x11F8,0x19D7,0x0912,0x1931,0x2130,0x2130,0x2130,0x2950,0x2130,0x2130,0x2930,0x2110,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1911,0x1132,0x1112,0x1174,0x21F6,0x2217,0x2237,0x19D6,0x1994,0x1132,0x1111,0x1911,0x1911,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x2930,0x2930,0x210F,0x212F,0x292F,0x2930,0x210F,0x2130,0x2110,0x2110,0x290F,0x290F,0x290F,0x28EF,0x28EF,0x28AD,0x282B,0x8AF4,0xDCFB,0xDCDA,0xDCB9,0xDC98,0xDC78,0xDC36,0xDC57,0xDC57,0xDC57,0xE457,0xDC37,0xE457,0xDC37,0xDC57,0xDC37,0xDC58,0xDC78,0xDCBA,0xE53C,0x61CF,0x284B,0x28CE,0x20CE,0x290F,0x2910,0x2930,0x2110,0x2130,0x2110,0x2130,0x2131,0x1911,0x1932,0x1953,0x1174,0x19D7,0x11F9,0x01B9,0x01D9,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x09DA,0x09D9,0x09B8,0x11D7,0x19D6,0x1133,0x1111,0x2131,0x2131,0x2130,0x2110,0x210F,0x210F,0x2130,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x1930,0x1931,0x1112,0x1113,0x19B6,0x21F8,0x19B6,0x1995,0x1134,0x1112,0x1153,0x1152,0x1152,0x1174,0x1195,0x11D7,0x09D8,0x09D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01BA,0x01B9,0x0A1A,0x1219,0x11D8,0x1175,0x1112,0x1911,0x2131,0x2130,0x2110,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x210F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2910,0x210F,0x2910,0x210F,0x2930,0x2930,0x210F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x210F,0x212F,0x2930,0x2930,0x292F,0x212F,0x210F,0x2130,0x2130,0x1931,0x1932,0x1132,0x1133,0x1174,0x19D6,0x19D6,0x19B6,0x21D6,0x1995,0x1954,0x1933,0x1932,0x1911,0x2131,0x2131,0x2130,0x2130,0x2110,0x2131,0x1931,0x1131,0x1132,0x1174,0x1A18,0x1219,0x11F8,0x11B6,0x1133,0x1131,0x1931,0x2130,0x2130,0x2950,0x2930,0x212F,0x212F,0x212F,0x210F,0x2930,0x2110,0x2130,0x2131,0x2110,0x2110,0x2131,0x1931,0x1953,0x1154,0x1175,0x1175,0x11B6,0x11D6,0x11B5,0x1195,0x1195,0x0974,0x1174,0x1153,0x1132,0x1132,0x1931,0x1931,0x1911,0x1910,0x1910,0x2131,0x2110,0x2130,0x2130,0x2130,0x1910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x1910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x1910,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x1910,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x210F,0x2930,0x210F,0x2110,0x290F,0x290F,0x210F,0x212F,0x2130,0x210F,0x210F,0x2110,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x292F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x1931,0x1911,0x1932,0x1132,0x1153,0x19B5,0x21D6,0x2217,0x21F7,0x19B6,0x1134,0x0913,0x0912,0x1132,0x1932,0x1932,0x1931,0x2131,0x2130,0x1910,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2910, + 0x2130,0x2110,0x2130,0x210F,0x212F,0x210F,0x212F,0x2930,0x2930,0x2130,0x2130,0x1931,0x1952,0x1133,0x1133,0x1154,0x1196,0x11D7,0x1A18,0x1218,0x1A39,0x1A18,0x11B7,0x1176,0x0954,0x1133,0x1953,0x1952,0x1952,0x1931,0x1931,0x1931,0x1931,0x1132,0x1153,0x1174,0x1195,0x11B6,0x11F8,0x11F8,0x1218,0x11F8,0x11D7,0x1196,0x1174,0x1133,0x1932,0x1932,0x2131,0x2131,0x2151,0x2150,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x1910,0x1911,0x1912,0x1133,0x1995,0x21D7,0x21F7,0x19F7,0x19B6,0x1975,0x1153,0x1132,0x1912,0x1931,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2930,0x210F,0x2130,0x210F,0x2930,0x2910,0x210F,0x2910,0x2930,0x210F,0x2110,0x210F,0x210F,0x2930,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x210F,0x2910,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2910,0x2910,0x290F,0x2930,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x2930,0x210F,0x2910,0x2910,0x2930,0x290F,0x2110,0x210F,0x2930,0x2930,0x2930,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2930,0x2110,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x290F,0x210F,0x2910,0x210F,0x2930,0x2930,0x2910,0x2930,0x2930,0x2110,0x2930,0x2930,0x290F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x210F,0x2110,0x210F,0x2930,0x2110,0x2930,0x2930,0x2930,0x2910,0x2110,0x2130,0x2130,0x2110,0x210F,0x2930,0x2930,0x2930,0x2130,0x212F,0x212F,0x2930,0x2930,0x2930,0x210F,0x210F,0x2930,0x210F,0x210F,0x2910,0x2910,0x210F,0x212F,0x210F,0x290F,0x210F,0x2930,0x210F,0x2910,0x290F,0x2930,0x2910,0x2910,0x210F,0x210F,0x210F,0x2910,0x2930,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x292F,0x2910,0x2910,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2130,0x2131,0x2131,0x2132,0x1932,0x1933,0x1933,0x1133,0x1153,0x1133,0x1133,0x1133,0x1132,0x1932,0x1931,0x1931,0x2130,0x2110,0x2130,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2150,0x110F,0x010F,0x010F,0x2B57,0x2BF9,0x2C3A,0x2419,0x2C19,0x2B98,0x0191,0x0130,0x090F,0x1950,0x1950,0x2150,0x2130,0x2130,0x210F,0x2130,0x2930,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x1954,0x1154,0x1155,0x1155,0x1995,0x1975,0x1154,0x1153,0x1112,0x1111,0x1951,0x1931,0x1930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x210F,0x2910,0x2910,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1912,0x1133,0x1154,0x1175,0x19D7,0x2217,0x19F7,0x21D6,0x1174,0x1112,0x1111,0x1911,0x2131,0x2131,0x2931,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2131,0x2132,0x1912,0x1133,0x1154,0x19B6,0x21F7,0x2218,0x19D7,0x1175,0x1133,0x1113,0x1933,0x1932,0x1911,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x210F,0x212F,0x290F,0x2910,0x2910,0x2930,0x2930,0x292F,0x292F,0x290F,0x212F,0x2130,0x2130,0x2131,0x1132,0x1195,0x09D7,0x09B8,0x01D9,0x01DA,0x01DA,0x01DA,0x01DB,0x01DA,0x01DA,0x01DA,0x09FA,0x09FA,0x09D9,0x11F8,0x1195,0x0912,0x1931,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2151,0x2131,0x2152,0x1911,0x1111,0x1111,0x1132,0x1974,0x21D6,0x2217,0x2217,0x19D6,0x1995,0x1112,0x10F1,0x18F1,0x1911,0x2111,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x292F,0x290F,0x290F,0x290F,0x28CE,0x204B,0x40ED,0xD4DB,0xD4DA,0xDCB9,0xDC78,0xDC78,0xDC77,0xDC57,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC37,0xDC57,0xDC78,0xDCB9,0xDD1B,0xABF8,0x202A,0x30EE,0x28CE,0x20EF,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2131,0x2131,0x1911,0x1932,0x1174,0x11B7,0x09F8,0x01D9,0x01B9,0x01DA,0x01DA,0x01FA,0x01DA,0x01BA,0x01DA,0x01B9,0x09B9,0x11F9,0x19F7,0x19D6,0x1112,0x1932,0x1931,0x2110,0x2130,0x2110,0x210F,0x210F,0x2930,0x2110,0x2930,0x2930,0x2930,0x292F,0x212F,0x212F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x210F,0x210F,0x2930,0x2910,0x290F,0x2930,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x2150,0x2150,0x1930,0x1931,0x1112,0x1113,0x19B6,0x21F7,0x19B6,0x19B6,0x1154,0x1112,0x1152,0x1152,0x1152,0x1153,0x1195,0x1196,0x09D8,0x09F9,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01B9,0x09F9,0x1219,0x11D8,0x1175,0x1112,0x1932,0x2151,0x2130,0x2110,0x210F,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x292F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x212F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2910,0x290F,0x2910,0x2930,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x2130,0x2130,0x1911,0x1932,0x1132,0x1133,0x1174,0x19D6,0x2237,0x19B6,0x1995,0x1995,0x1954,0x1933,0x1912,0x1911,0x1931,0x2131,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1132,0x0933,0x0975,0x11F8,0x11F9,0x11F8,0x11B7,0x0933,0x1112,0x1911,0x1910,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x1911,0x1932,0x1953,0x1953,0x1953,0x1153,0x1974,0x1153,0x1133,0x1133,0x1953,0x1132,0x1932,0x1932,0x1911,0x1910,0x1910,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x2930,0x2930,0x2130,0x2110,0x210F,0x2130,0x2130,0x2131,0x2111,0x1931,0x1932,0x1133,0x1153,0x1995,0x19D6,0x21D7,0x21D6,0x1995,0x1154,0x1113,0x08F1,0x1111,0x1931,0x1951,0x1930,0x1930,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2150,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F, + 0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2131,0x1911,0x1932,0x1133,0x1154,0x1154,0x11B6,0x11D7,0x19F8,0x1219,0x11F8,0x11D8,0x11D7,0x1196,0x0954,0x1153,0x1153,0x1952,0x1952,0x2151,0x1931,0x1931,0x1931,0x1932,0x1153,0x1174,0x1196,0x11B7,0x11F8,0x11F8,0x1A19,0x1A18,0x11B7,0x1196,0x1154,0x1133,0x1932,0x1911,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x212F,0x2150,0x2130,0x2110,0x1910,0x1911,0x1912,0x1133,0x1995,0x19D6,0x2218,0x19D6,0x19B6,0x1994,0x1153,0x1132,0x1111,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x2130,0x210F,0x212F,0x2130,0x212F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x2910,0x2110,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2910,0x2910,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x210F,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x210F,0x210F,0x2910,0x2910,0x290F,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x2110,0x2910,0x2110,0x212F,0x212F,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x210F,0x2910,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x210F,0x2110,0x210F,0x2930,0x210F,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2930,0x2930,0x2930,0x2110,0x2930,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x210F,0x2930,0x2930,0x210F,0x210F,0x2930,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2930,0x210F,0x2130,0x210F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2110,0x2930,0x210F,0x2110,0x2110,0x2930,0x2130,0x210F,0x210F,0x2110,0x2910,0x2910,0x2910,0x210F,0x2930,0x2930,0x2910,0x290F,0x290F,0x210F,0x2930,0x212F,0x2950,0x2130,0x2130,0x2130,0x1911,0x1932,0x1932,0x1133,0x1154,0x1174,0x1195,0x1195,0x1195,0x1195,0x1175,0x1174,0x1133,0x1132,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2110,0x2150,0x2130,0x2130,0x210F,0x2130,0x2930,0x2930,0x212F,0x2130,0x2130,0x1950,0x112F,0x010F,0x01D1,0x2BD9,0x2419,0x2419,0x1BF9,0x2419,0x2C19,0x1AD5,0x0150,0x012F,0x110F,0x1970,0x1930,0x2130,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1932,0x1932,0x1932,0x1933,0x1113,0x1112,0x1112,0x1132,0x1112,0x1931,0x1931,0x1930,0x1930,0x1930,0x210F,0x2130,0x2130,0x2110,0x2930,0x2910,0x2930,0x2910,0x2910,0x2930,0x2110,0x2130,0x2130,0x2110,0x2111,0x1911,0x1932,0x1133,0x1154,0x1195,0x19D6,0x2217,0x2217,0x21D6,0x1994,0x1133,0x1112,0x1911,0x2111,0x2111,0x2110,0x2931,0x2130,0x210F,0x210F,0x212F,0x210F,0x212F,0x2950,0x212F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2111,0x1911,0x1932,0x1133,0x1975,0x19B6,0x21D7,0x2218,0x19D7,0x1175,0x1134,0x1133,0x1932,0x1932,0x2131,0x2131,0x2110,0x2110,0x2130,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x210F,0x212F,0x292F,0x2930,0x2910,0x2910,0x2910,0x2930,0x292F,0x290F,0x290F,0x212F,0x2130,0x2130,0x1931,0x1932,0x1195,0x11F8,0x09B8,0x09D9,0x01DA,0x09FA,0x01DA,0x01DA,0x01FB,0x01FA,0x01DA,0x09FA,0x09D9,0x11D8,0x19D7,0x1174,0x1112,0x1931,0x2130,0x2130,0x2130,0x210F,0x212F,0x2930,0x212F,0x210F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x292F,0x2930,0x210F,0x210F,0x2131,0x2152,0x1931,0x1911,0x1112,0x1112,0x1154,0x21F6,0x2217,0x2217,0x21F6,0x1994,0x1132,0x10F1,0x18F1,0x18F0,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2910,0x210F,0x212F,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x28EE,0x288D,0x1809,0x9B55,0xDCFB,0xDCB9,0xDCB9,0xDC58,0xDC78,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC16,0xE457,0xDC37,0xDC37,0xDC57,0xE478,0xDCB9,0xDCDA,0xCCFB,0x2009,0x28CE,0x28CE,0x20EF,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1154,0x19D7,0x11F8,0x09F9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01B9,0x01B9,0x01B9,0x09D9,0x11F9,0x1A17,0x19B5,0x1112,0x1932,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x2110,0x2110,0x212F,0x212F,0x292F,0x2930,0x212F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x290F,0x210F,0x2930,0x2910,0x2930,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2130,0x210F,0x2930,0x2930,0x2110,0x2930,0x2110,0x210F,0x210F,0x212F,0x2130,0x2130,0x212F,0x2150,0x2150,0x1930,0x1911,0x1112,0x1133,0x19B6,0x21F7,0x19D7,0x19B6,0x1154,0x1112,0x1152,0x1152,0x1132,0x1153,0x1174,0x11B6,0x11D7,0x09D9,0x09D9,0x01D9,0x01B9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x09F9,0x1219,0x11B7,0x1154,0x1112,0x1932,0x2131,0x2130,0x2110,0x210F,0x2930,0x2930,0x2130,0x2110,0x2110,0x210F,0x212F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x212F,0x210F,0x2930,0x212F,0x210F,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x292F,0x210F,0x210F,0x2930,0x2130,0x2130,0x1931,0x1931,0x1112,0x1133,0x1154,0x19D6,0x2217,0x19F6,0x1995,0x1154,0x1134,0x1133,0x1933,0x1932,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x0934,0x0975,0x11F8,0x11F9,0x11F9,0x11D8,0x0954,0x1133,0x1931,0x1931,0x2130,0x2130,0x2130,0x210F,0x2930,0x212F,0x212F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2130,0x2131,0x2131,0x2131,0x1931,0x1931,0x1932,0x1932,0x1112,0x1111,0x1932,0x1932,0x1911,0x1931,0x1911,0x1911,0x1911,0x2130,0x1910,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x210F,0x212F,0x210F,0x2110,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x210F,0x2110,0x2130,0x2110,0x2130,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x210F,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x2110,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x2131,0x1911,0x1911,0x1133,0x1133,0x1995,0x21D6,0x21D7,0x21D6,0x1995,0x1133,0x1112,0x1112,0x1931,0x1951,0x1951,0x1930,0x1930,0x1930,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x290F, + 0x2130,0x2130,0x2930,0x2130,0x212F,0x2130,0x210F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1912,0x1132,0x1153,0x1154,0x1196,0x11B7,0x11F8,0x1219,0x11F8,0x11F8,0x11D7,0x0995,0x1174,0x1133,0x1132,0x1952,0x1951,0x1951,0x1930,0x1931,0x1931,0x1132,0x1153,0x1174,0x1176,0x11B7,0x11F8,0x11F8,0x1A19,0x11F8,0x11B7,0x1196,0x1174,0x1133,0x1112,0x1931,0x1931,0x2151,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2930,0x2131,0x1911,0x1911,0x1112,0x1133,0x1995,0x19D6,0x19D6,0x19D6,0x19D5,0x1994,0x1153,0x1132,0x1132,0x1931,0x1931,0x2131,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2930,0x2930,0x2930,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2930,0x2130,0x2930,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x20F0,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x2110,0x2930,0x2110,0x2910,0x2910,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2930,0x2110,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x210F,0x210F,0x212F,0x210F,0x1910,0x1930,0x1911,0x1932,0x1153,0x1175,0x19B6,0x11D7,0x11F8,0x1218,0x1218,0x11F8,0x11F7,0x11D7,0x1195,0x1153,0x1952,0x1931,0x1910,0x2130,0x2130,0x2110,0x2130,0x2930,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x1930,0x1950,0x092F,0x014F,0x2B57,0x23F9,0x1C19,0x13F9,0x13F9,0x1C19,0x243A,0x2BB8,0x01B1,0x014F,0x092F,0x1970,0x2150,0x2150,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2151,0x2131,0x2152,0x2152,0x1911,0x1932,0x1932,0x1912,0x1932,0x1931,0x1931,0x1910,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x2110,0x2910,0x2930,0x2910,0x2910,0x2930,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x2131,0x2132,0x1912,0x1133,0x1133,0x1195,0x19F6,0x2237,0x2237,0x21D6,0x1994,0x1133,0x10F1,0x1911,0x18F0,0x2111,0x2130,0x2930,0x2950,0x2130,0x212F,0x210F,0x212F,0x2150,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2111,0x1932,0x1132,0x1133,0x1155,0x19B7,0x2218,0x2218,0x21F8,0x1175,0x0913,0x1133,0x1933,0x1932,0x2131,0x2131,0x2110,0x2130,0x2130,0x212F,0x2130,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x290F,0x290F,0x2930,0x2910,0x2930,0x2930,0x292F,0x290F,0x210F,0x210F,0x2130,0x2110,0x1910,0x1931,0x1154,0x19D7,0x11D8,0x09D9,0x09B9,0x09DA,0x01BA,0x01B9,0x09FA,0x01D9,0x09D9,0x09D9,0x09D8,0x11D8,0x19F7,0x1174,0x1132,0x1931,0x2130,0x2130,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2110,0x2131,0x2152,0x1932,0x1112,0x1112,0x1154,0x21F6,0x2217,0x2237,0x19D6,0x1174,0x1132,0x10F1,0x1911,0x2111,0x2110,0x2130,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x290F,0x28EF,0x20AD,0x286B,0x490D,0xDD3C,0xDCDA,0xDCB9,0xDC78,0xDC57,0xDC57,0xDC37,0xDC57,0xE457,0xE457,0xDC16,0xE437,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xDC57,0xDC78,0xDC99,0xDCFB,0xABB7,0x286B,0x28AD,0x28CE,0x20EF,0x210F,0x210F,0x210F,0x2130,0x210F,0x2130,0x2131,0x2131,0x1911,0x1911,0x1133,0x1175,0x11D7,0x09D8,0x09F9,0x01D9,0x01D9,0x01D9,0x01DA,0x01B9,0x01B9,0x09D9,0x09D8,0x11F8,0x2217,0x1994,0x1112,0x1911,0x1910,0x2130,0x2130,0x2110,0x2130,0x212F,0x290F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x2930,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x2110,0x2930,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x2150,0x2150,0x1930,0x1911,0x1112,0x1133,0x19D6,0x2218,0x19D7,0x1195,0x1154,0x1133,0x1152,0x1952,0x1132,0x1132,0x1173,0x11B5,0x11B7,0x09D8,0x09D9,0x01D9,0x09F9,0x09F9,0x01D9,0x01D9,0x09F9,0x09F9,0x11F8,0x11D8,0x1175,0x1133,0x1112,0x1931,0x2131,0x2110,0x2130,0x210F,0x2110,0x2930,0x2130,0x2110,0x2130,0x2930,0x210F,0x292F,0x210F,0x2910,0x2910,0x2930,0x2910,0x2110,0x2110,0x210F,0x212F,0x2930,0x2930,0x2130,0x2130,0x210F,0x2930,0x2930,0x2910,0x2910,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2950,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1132,0x1112,0x1174,0x19D6,0x21F7,0x21F7,0x19B6,0x1175,0x1133,0x1113,0x1932,0x1932,0x1931,0x1931,0x1910,0x2130,0x2130,0x2110,0x2110,0x2131,0x1931,0x1932,0x1133,0x0934,0x0996,0x11F9,0x09F9,0x09F9,0x09D8,0x0975,0x0933,0x1132,0x1931,0x1911,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x1931,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x2111,0x2111,0x2110,0x1910,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x2930,0x210F,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2110,0x2130,0x2130,0x210F,0x2130,0x2930,0x210F,0x210F,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x2930,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x2130,0x2110,0x2130,0x2930,0x2110,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x294F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x1911,0x1932,0x1133,0x1154,0x1995,0x21F6,0x21F7,0x21D6,0x1975,0x1113,0x1112,0x1112,0x1931,0x2152,0x1951,0x2151,0x2130,0x192F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F, + 0x2930,0x2130,0x2130,0x2130,0x2150,0x2130,0x210F,0x210F,0x210F,0x290F,0x2930,0x2110,0x2130,0x2131,0x2111,0x1932,0x1132,0x1153,0x1155,0x1196,0x11D7,0x11F8,0x1219,0x1219,0x11F8,0x11D7,0x11B6,0x0954,0x1153,0x1132,0x1952,0x1951,0x1951,0x1931,0x1931,0x1931,0x1132,0x1153,0x1175,0x1196,0x11B7,0x19F8,0x11F8,0x11F8,0x11F8,0x11B7,0x1196,0x1174,0x1153,0x1132,0x1931,0x1931,0x2151,0x2130,0x2130,0x2130,0x212F,0x2950,0x2130,0x2130,0x2111,0x2111,0x18F1,0x1112,0x1133,0x1175,0x19D6,0x19F6,0x19D6,0x19D6,0x1174,0x1153,0x1132,0x1132,0x1931,0x1931,0x2151,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x1910,0x1930,0x1931,0x1952,0x1974,0x1995,0x11D6,0x11F8,0x11F8,0x09F8,0x09D8,0x09F9,0x09F8,0x1218,0x11F8,0x11D7,0x11B5,0x1994,0x1952,0x1931,0x2131,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2150,0x2150,0x112F,0x092F,0x01D1,0x33F9,0x23F9,0x1419,0x1419,0x1419,0x13F9,0x243A,0x2C3A,0x12D4,0x0150,0x012F,0x112F,0x2150,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1910,0x1911,0x2131,0x1911,0x1911,0x2131,0x1930,0x2130,0x2130,0x2130,0x2150,0x212F,0x212F,0x2130,0x2930,0x2930,0x2910,0x2910,0x2910,0x290F,0x2930,0x290F,0x2930,0x2110,0x2930,0x2930,0x2130,0x2111,0x2111,0x1911,0x1912,0x1133,0x1154,0x1195,0x2217,0x2217,0x2217,0x21F6,0x1954,0x1933,0x1912,0x1911,0x2111,0x2131,0x2931,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1132,0x1134,0x1175,0x19B7,0x2218,0x2218,0x19D7,0x1175,0x1133,0x1133,0x1932,0x1931,0x1931,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x292F,0x212F,0x290F,0x2930,0x2930,0x2910,0x2910,0x210F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x1911,0x1132,0x1995,0x11D7,0x11F9,0x09B9,0x09B9,0x09B9,0x09B9,0x01B9,0x01B9,0x09D9,0x11D8,0x11F8,0x19D7,0x1194,0x1132,0x1131,0x1931,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x290F,0x2930,0x2110,0x1910,0x2131,0x2132,0x1912,0x1112,0x1133,0x21D6,0x2217,0x2217,0x19D6,0x1994,0x1132,0x10F1,0x1911,0x1910,0x2110,0x2130,0x2130,0x2110,0x2110,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x20CE,0x28AD,0x282A,0xABF8,0xDCFB,0xDCB9,0xD478,0xD457,0xDC78,0xDC37,0xDC37,0xDC37,0xE457,0xDC16,0xE457,0xDC37,0xE437,0xE437,0xDC16,0xDC37,0xE478,0xDC37,0xE478,0xDC99,0xDCBA,0x8AD4,0x308C,0x28AD,0x28EE,0x20EF,0x210F,0x210F,0x2930,0x2130,0x210F,0x2130,0x2130,0x2111,0x2131,0x1931,0x1932,0x1154,0x11B6,0x11D8,0x09D9,0x09D9,0x09D9,0x09D9,0x01B9,0x01B9,0x09D9,0x11F8,0x11D8,0x19D7,0x1995,0x1133,0x1132,0x1931,0x1910,0x2110,0x2130,0x2130,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2910,0x290F,0x2930,0x2930,0x210F,0x2930,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2130,0x210F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2150,0x1930,0x1911,0x1112,0x1133,0x19B6,0x2218,0x19D7,0x19B6,0x1133,0x1133,0x1952,0x1952,0x1132,0x1152,0x1173,0x1195,0x11B6,0x11B7,0x11D8,0x09F9,0x0A19,0x09F9,0x09F9,0x09D8,0x09F8,0x11F8,0x11F8,0x11B7,0x1175,0x1133,0x1932,0x1931,0x2131,0x2130,0x2130,0x210F,0x2930,0x2930,0x2130,0x2130,0x210F,0x2110,0x292F,0x292F,0x210F,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x210F,0x2930,0x212F,0x212F,0x2930,0x2130,0x2130,0x2930,0x2930,0x2910,0x2910,0x292F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1932,0x1112,0x1974,0x19B6,0x21F7,0x21F7,0x19D6,0x1995,0x1154,0x1133,0x1132,0x1932,0x1931,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1953,0x1175,0x0976,0x09B8,0x09F9,0x09F9,0x09F9,0x09D8,0x09B7,0x1195,0x1174,0x1932,0x1931,0x1911,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x2930,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2910,0x290F,0x210F,0x210F,0x212F,0x292F,0x210F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2110,0x210F,0x2110,0x210F,0x2930,0x210F,0x212F,0x212F,0x2930,0x2930,0x212F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x210F,0x210F,0x212F,0x2110,0x2110,0x2110,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x210E,0x212F,0x2950,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1932,0x1932,0x1112,0x1154,0x1995,0x21D6,0x21F6,0x21D6,0x1995,0x1133,0x1112,0x1911,0x1911,0x1931,0x2151,0x2150,0x2150,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F, + 0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x210F,0x2930,0x2930,0x2930,0x2130,0x2131,0x2132,0x1932,0x1132,0x1133,0x1175,0x0996,0x11B7,0x11F8,0x1219,0x1A39,0x11F8,0x09B6,0x0975,0x0953,0x1133,0x1132,0x1931,0x1951,0x1931,0x1931,0x1931,0x1931,0x1932,0x1153,0x1174,0x1196,0x11B7,0x11D8,0x11F8,0x11D8,0x19F8,0x11B7,0x1195,0x1154,0x1132,0x1132,0x1951,0x2171,0x2130,0x2150,0x2150,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2111,0x1912,0x1112,0x1133,0x1174,0x19B6,0x21F6,0x19D6,0x21D6,0x1974,0x1153,0x1112,0x1111,0x1932,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x2131,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2131,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2110,0x2111,0x2110,0x2110,0x2110,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2111,0x2111,0x2131,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2111,0x2130,0x2110,0x2111,0x2111,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2111,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x2110,0x2110,0x2110,0x2110,0x2111,0x2111,0x2110,0x2111,0x2110,0x2110,0x2110,0x2111,0x2110,0x2131,0x2110,0x2111,0x2110,0x2110,0x2110,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x2110,0x2131,0x2110,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x1910,0x1931,0x1931,0x1952,0x1952,0x1974,0x1195,0x11D6,0x11D7,0x09D8,0x09D9,0x01D9,0x01D9,0x09F9,0x09D9,0x0A19,0x1219,0x11F8,0x11D7,0x19D5,0x1173,0x1111,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2150,0x212F,0x212F,0x212F,0x212F,0x194F,0x112F,0x012F,0x12B4,0x2C19,0x2439,0x1419,0x0BF8,0x1419,0x13F8,0x1C19,0x2C39,0x343A,0x01F2,0x012F,0x090F,0x192F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x2110,0x2111,0x2151,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2131,0x2131,0x1932,0x1952,0x1132,0x1153,0x1194,0x19D6,0x2217,0x2217,0x21D6,0x1954,0x1933,0x1912,0x18F1,0x2111,0x2110,0x2951,0x2130,0x2930,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2131,0x1932,0x1132,0x1133,0x1175,0x19B7,0x21F8,0x2218,0x21D7,0x1175,0x1133,0x1133,0x1952,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x292F,0x292F,0x290F,0x292F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x212F,0x290F,0x210F,0x2930,0x2130,0x2110,0x1931,0x1912,0x1133,0x1996,0x19F8,0x1A19,0x11F9,0x11F9,0x09D9,0x11F9,0x1219,0x1A19,0x1A38,0x2217,0x19B5,0x0912,0x1111,0x1931,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x212F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2111,0x1911,0x1912,0x1912,0x1113,0x1995,0x21F7,0x2217,0x21D6,0x1995,0x1132,0x1111,0x1911,0x1931,0x2110,0x2951,0x2130,0x2110,0x2110,0x210F,0x2110,0x2910,0x2110,0x2910,0x2910,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x20AD,0x182A,0x61D0,0xDD3C,0xD4B9,0xDC99,0xDC78,0xDC78,0xDC57,0xDC57,0xDC37,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xE437,0xE437,0xDC37,0xDC57,0xE457,0xDC57,0xDC78,0xDC99,0xDCDB,0x7A31,0x202A,0x28CD,0x20CE,0x20EF,0x290F,0x290F,0x2930,0x2130,0x2130,0x2110,0x2131,0x2131,0x2131,0x1931,0x1932,0x1994,0x21F6,0x11F7,0x11F8,0x11D8,0x09D8,0x11F9,0x11F9,0x11D8,0x11F8,0x19F8,0x1196,0x1155,0x1113,0x1112,0x1932,0x1931,0x2131,0x2130,0x2130,0x2110,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x2930,0x210F,0x290F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x212F,0x292F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2130,0x2930,0x2930,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2150,0x1930,0x1911,0x1112,0x1134,0x19D6,0x21F7,0x19B6,0x1195,0x1133,0x1132,0x1932,0x1932,0x1131,0x1131,0x1153,0x1174,0x1195,0x11B6,0x11D7,0x11F8,0x1A19,0x11F8,0x11F8,0x11F8,0x11F8,0x11F7,0x11B6,0x1195,0x1954,0x1112,0x1931,0x2131,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x212F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2150,0x2130,0x2131,0x1911,0x1111,0x1132,0x1974,0x19B5,0x21F7,0x21F7,0x19D6,0x1174,0x1133,0x1953,0x1952,0x1932,0x2152,0x1911,0x1910,0x1910,0x1910,0x2130,0x2130,0x2151,0x1931,0x1932,0x1133,0x1174,0x11B6,0x09B7,0x09D9,0x09D9,0x09FA,0x09D9,0x09D9,0x09D8,0x11B7,0x11B6,0x1154,0x1932,0x1932,0x1931,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x2910,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2130,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x2910,0x2110,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x2930,0x290F,0x2930,0x2910,0x2110,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x210F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x210F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x2910,0x290F,0x290F,0x2930,0x290F,0x2910,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x2130,0x2130,0x212F,0x210F,0x212F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2951,0x2151,0x2131,0x1911,0x1931,0x10F1,0x1113,0x1154,0x1995,0x19D6,0x21D6,0x21D6,0x1995,0x1112,0x10F2,0x1911,0x1911,0x2131,0x2131,0x1930,0x1930,0x190F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212E,0x212E,0x212F,0x212F,0x212F,0x212F,0x212F, + 0x212F,0x210F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x212F,0x2930,0x290F,0x290F,0x2930,0x2930,0x2130,0x2111,0x1931,0x1932,0x1133,0x1154,0x1175,0x11B7,0x11B7,0x11F8,0x1218,0x1218,0x11F8,0x11B7,0x1195,0x1174,0x1153,0x1132,0x1931,0x1951,0x1951,0x1931,0x1931,0x1932,0x1132,0x1153,0x1154,0x1176,0x11B7,0x11B7,0x11F8,0x11F8,0x11D8,0x11D7,0x1195,0x1174,0x1153,0x1132,0x1951,0x1931,0x2151,0x2150,0x2130,0x210F,0x2130,0x2130,0x2130,0x2951,0x2131,0x1911,0x1912,0x1112,0x1133,0x1995,0x19B5,0x21D6,0x21D6,0x19B5,0x1974,0x1153,0x1112,0x1112,0x1111,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x1911,0x1911,0x2131,0x2131,0x2130,0x2111,0x2111,0x2111,0x1911,0x2111,0x1911,0x1931,0x1931,0x1931,0x2111,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1910,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2111,0x1911,0x2131,0x2111,0x1911,0x2131,0x2131,0x2131,0x2131,0x1931,0x2131,0x2111,0x2111,0x1931,0x1911,0x2111,0x2111,0x1931,0x2131,0x2111,0x2111,0x1931,0x1911,0x1931,0x1911,0x1931,0x1931,0x2111,0x2131,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1931,0x2131,0x1911,0x1911,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1910,0x1931,0x1931,0x1911,0x1931,0x1931,0x1911,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x1911,0x2111,0x2111,0x2111,0x2111,0x1911,0x2111,0x2111,0x2111,0x1911,0x2111,0x2111,0x2111,0x2131,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2131,0x2111,0x2111,0x2131,0x2111,0x1911,0x2111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x2111,0x1911,0x2111,0x1911,0x2111,0x2111,0x2111,0x2111,0x1911,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x2111,0x2111,0x1911,0x2111,0x2111,0x1911,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x1911,0x1911,0x1911,0x1911,0x2111,0x2111,0x2111,0x2111,0x2111,0x1911,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2131,0x2111,0x2111,0x2131,0x1931,0x2111,0x2111,0x2131,0x1911,0x2131,0x2111,0x2111,0x1911,0x2111,0x2111,0x1911,0x2111,0x2111,0x2111,0x2111,0x1911,0x2111,0x1911,0x1911,0x1911,0x2111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1132,0x1132,0x1153,0x0954,0x0996,0x09B7,0x09D8,0x01D8,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01D9,0x09F9,0x09D8,0x09B7,0x11D6,0x1174,0x1912,0x1911,0x1910,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x192F,0x192F,0x112F,0x0190,0x2B98,0x2419,0x13F8,0x13F8,0x0BF8,0x0BF9,0x1419,0x1419,0x2C5A,0x3C7A,0x1AD5,0x0150,0x090F,0x190F,0x2130,0x2130,0x210F,0x2130,0x2950,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x212F,0x2150,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x290F,0x2110,0x2110,0x2110,0x2131,0x2131,0x1931,0x1932,0x1153,0x1153,0x1195,0x19D6,0x2217,0x21F6,0x21B5,0x2195,0x1953,0x1912,0x1911,0x2111,0x2131,0x2130,0x2951,0x2130,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1932,0x1133,0x1154,0x19D6,0x21F7,0x2218,0x21F7,0x1174,0x1153,0x1953,0x1932,0x1931,0x2131,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x210E,0x292F,0x292F,0x210F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x210F,0x2130,0x2110,0x2130,0x1911,0x1931,0x1912,0x1133,0x1996,0x11B7,0x19D8,0x2219,0x19F9,0x2239,0x19F8,0x19D7,0x19B6,0x1174,0x1132,0x1111,0x1931,0x1910,0x1910,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2131,0x1911,0x1931,0x1912,0x1113,0x1954,0x21F6,0x2217,0x21F7,0x1995,0x0912,0x10F1,0x1911,0x1931,0x2131,0x2110,0x2130,0x2110,0x2110,0x210F,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x292F,0x210F,0x290F,0x290F,0x20CE,0x206C,0x2009,0xCCDB,0xD4DA,0xDC99,0xDC99,0xDC78,0xDC57,0xDC57,0xDC57,0xDC36,0xE457,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xDC37,0xDC37,0xE457,0xE457,0xE478,0xDC58,0xDC78,0xDCDA,0x7A51,0x1809,0x28EE,0x28CE,0x210F,0x292F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1973,0x21D5,0x19B5,0x19D7,0x19D7,0x19D8,0x11D8,0x1A18,0x19F8,0x19D7,0x19B6,0x1955,0x1133,0x1912,0x1912,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x290F,0x290F,0x290F,0x210F,0x2930,0x212F,0x212F,0x2930,0x212F,0x210F,0x290F,0x290F,0x2910,0x2930,0x212F,0x292F,0x290F,0x2930,0x212F,0x212F,0x2910,0x2930,0x2930,0x2930,0x290F,0x210F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x2930,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1910,0x1911,0x1132,0x1133,0x19B6,0x21F7,0x19D7,0x1995,0x1133,0x1133,0x1952,0x1931,0x1931,0x1931,0x1132,0x1973,0x1994,0x1995,0x1195,0x19B6,0x11D7,0x11D7,0x19F7,0x11D7,0x19D7,0x19B6,0x1995,0x1974,0x1933,0x1912,0x1911,0x2131,0x2150,0x2110,0x2130,0x212F,0x290F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x210F,0x210F,0x2910,0x2110,0x2110,0x210F,0x2930,0x2910,0x2930,0x2930,0x290F,0x210F,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2150,0x2130,0x1911,0x1111,0x1132,0x1954,0x21B5,0x21F6,0x21F7,0x21D6,0x1174,0x1133,0x1132,0x1132,0x1932,0x1951,0x1931,0x2130,0x1910,0x1910,0x1910,0x2130,0x2151,0x2151,0x1931,0x1132,0x1154,0x1175,0x11D7,0x09D9,0x09D9,0x09FA,0x01DA,0x01D9,0x09D9,0x09F9,0x09D8,0x11B7,0x1175,0x1153,0x1932,0x1931,0x2111,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2930,0x2930,0x2910,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2910,0x2110,0x210F,0x2910,0x290F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2930,0x2910,0x2910,0x2930,0x210F,0x2110,0x2910,0x2910,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2910,0x2110,0x2930,0x2110,0x2910,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x2930,0x210F,0x290F,0x210F,0x2930,0x2930,0x290F,0x210F,0x2930,0x290F,0x2910,0x2910,0x2910,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x290F,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x210F,0x210F,0x212F,0x2130,0x210F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2151,0x2131,0x2131,0x1911,0x1112,0x1933,0x1954,0x1995,0x19D6,0x21F7,0x21F6,0x1995,0x1153,0x1112,0x1911,0x1911,0x2111,0x2131,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212E,0x212F,0x210F,0x210F,0x212F,0x212F, + 0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2110,0x2131,0x1931,0x1932,0x1133,0x1154,0x1175,0x1196,0x11D7,0x11F8,0x1218,0x1A18,0x11F8,0x19F7,0x0975,0x0933,0x1133,0x1112,0x1952,0x1931,0x1931,0x1931,0x1952,0x1932,0x1132,0x1133,0x1154,0x1175,0x1197,0x11D8,0x11D8,0x11F8,0x11D7,0x11D7,0x1195,0x1154,0x1133,0x1132,0x1952,0x1931,0x2131,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2951,0x2131,0x1911,0x1111,0x1132,0x1133,0x1974,0x1995,0x19B6,0x21D6,0x19B5,0x1995,0x1174,0x1133,0x1112,0x1112,0x1112,0x1112,0x1111,0x1111,0x1112,0x1112,0x1112,0x1932,0x1112,0x1912,0x1912,0x1932,0x1912,0x1911,0x1911,0x1911,0x1931,0x1911,0x1912,0x1912,0x1912,0x1912,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1912,0x1912,0x1912,0x1932,0x1912,0x1912,0x1911,0x1932,0x1911,0x1912,0x1912,0x1912,0x1912,0x1932,0x1932,0x1932,0x1912,0x1912,0x1911,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1912,0x1932,0x1932,0x1932,0x1932,0x1912,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1912,0x1912,0x1912,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1931,0x1932,0x1932,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1912,0x1931,0x1932,0x1931,0x1931,0x1932,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1912,0x1912,0x1911,0x1932,0x1912,0x1912,0x1912,0x1911,0x1912,0x1912,0x1912,0x1912,0x1932,0x1932,0x1932,0x1912,0x1912,0x1911,0x1911,0x1911,0x1912,0x1932,0x1932,0x1932,0x1932,0x1912,0x1932,0x1932,0x1932,0x1912,0x1912,0x1932,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1932,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1932,0x1932,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1932,0x1932,0x1912,0x1912,0x1932,0x1912,0x1912,0x1912,0x1912,0x1911,0x1912,0x1912,0x1932,0x1912,0x1912,0x1912,0x1932,0x1912,0x1932,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1932,0x1912,0x1932,0x1912,0x1912,0x1912,0x1932,0x1911,0x1912,0x1912,0x1932,0x1932,0x1932,0x1911,0x1911,0x1932,0x1912,0x1912,0x1932,0x1932,0x1911,0x1911,0x1932,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1111,0x1911,0x1111,0x10F1,0x1112,0x1112,0x1112,0x1112,0x1112,0x0933,0x0954,0x1196,0x09B7,0x09D8,0x09D9,0x01D9,0x01DA,0x01FA,0x01D9,0x01FA,0x01FA,0x09FA,0x09D9,0x09B8,0x09B7,0x11B6,0x1995,0x1132,0x2132,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2110,0x2110,0x2130,0x210F,0x2130,0x2150,0x212F,0x212F,0x192F,0x112F,0x010E,0x1232,0x33F9,0x23F8,0x13F8,0x1419,0x0BF9,0x0BF9,0x0BF9,0x13D8,0x2439,0x3C7B,0x3398,0x0170,0x092F,0x1930,0x2150,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2110,0x2930,0x2930,0x2930,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2131,0x2151,0x1951,0x1132,0x1132,0x1173,0x1194,0x19B6,0x2217,0x2217,0x21B6,0x1995,0x1133,0x1912,0x1911,0x1910,0x2131,0x2130,0x2150,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2131,0x2131,0x1932,0x1112,0x1133,0x1174,0x19D6,0x21F7,0x2217,0x21F7,0x1174,0x1153,0x1133,0x1932,0x1932,0x1911,0x1931,0x2131,0x2110,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x212F,0x2930,0x212F,0x2130,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1953,0x1953,0x1134,0x1134,0x1135,0x1134,0x1134,0x1134,0x1133,0x1133,0x1973,0x1932,0x1911,0x1910,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1931,0x1132,0x1133,0x21B6,0x2217,0x21F7,0x19B5,0x0913,0x08F1,0x1111,0x1931,0x2131,0x2151,0x2130,0x2110,0x2130,0x210F,0x2110,0x210F,0x2110,0x2910,0x2910,0x2930,0x2930,0x2930,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x290F,0x290F,0x20EE,0x208D,0x284B,0x8AF5,0xDD3C,0xDCBA,0xDC99,0xDC78,0xDC78,0xDC57,0xDC37,0xDC36,0xDC36,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xDC36,0xDC36,0xDC37,0xDC37,0xDC57,0xDC57,0xE478,0xDC99,0xE4DA,0xA376,0x2009,0x28AD,0x28CE,0x20EE,0x292F,0x2930,0x210F,0x2930,0x20EF,0x20EF,0x2110,0x2130,0x2130,0x2130,0x2111,0x1911,0x1932,0x1953,0x1954,0x1975,0x0934,0x1155,0x19B6,0x1995,0x1995,0x1974,0x1933,0x1932,0x1912,0x1911,0x2131,0x2131,0x2130,0x2110,0x2130,0x210F,0x210F,0x210F,0x290F,0x290F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x2910,0x210F,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x212F,0x210F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x290F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x1930,0x1911,0x1132,0x1133,0x19B6,0x2218,0x19D7,0x1995,0x1133,0x1133,0x1952,0x1951,0x1931,0x1931,0x1951,0x1952,0x1973,0x1973,0x1153,0x1974,0x1174,0x1995,0x1995,0x1175,0x1975,0x1974,0x1953,0x1932,0x18F1,0x1911,0x2131,0x2131,0x2130,0x210F,0x212F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x290F,0x210F,0x2930,0x2910,0x2910,0x2930,0x2110,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x1910,0x1931,0x1911,0x1112,0x1974,0x21D6,0x21F7,0x21F7,0x19B6,0x1995,0x1133,0x1112,0x1111,0x1931,0x1931,0x2151,0x2131,0x2130,0x18EF,0x210F,0x2130,0x2130,0x1930,0x2152,0x1932,0x1133,0x1995,0x11D7,0x11D8,0x09F9,0x09FA,0x01FA,0x01DA,0x01DA,0x01D9,0x09F9,0x11F9,0x11D8,0x11B6,0x1154,0x1133,0x1932,0x2132,0x2111,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2110,0x210F,0x210F,0x2930,0x210F,0x210F,0x2930,0x2110,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x2930,0x2910,0x2910,0x210F,0x210F,0x2930,0x2910,0x2110,0x2110,0x2930,0x2910,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x2910,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x2110,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x212F,0x2930,0x2930,0x292F,0x210F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2131,0x2131,0x1931,0x10F1,0x1112,0x1933,0x1153,0x1995,0x21D6,0x21F7,0x19D6,0x1995,0x1954,0x1132,0x1911,0x1911,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x212F,0x210E,0x212F,0x212F,0x212F,0x212F,0x212F, + 0x212F,0x212F,0x2930,0x2130,0x210F,0x210F,0x2130,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2110,0x2130,0x2131,0x1931,0x1932,0x1133,0x1154,0x1175,0x1196,0x11B7,0x11F8,0x1A18,0x1A19,0x19F8,0x11D7,0x1195,0x0954,0x1132,0x1112,0x1931,0x1931,0x1931,0x1931,0x1931,0x1912,0x1932,0x1153,0x1154,0x1196,0x11B7,0x11F8,0x11F8,0x11F8,0x11F8,0x11D7,0x1195,0x0954,0x1133,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x2131,0x1931,0x1931,0x1911,0x1132,0x1953,0x1974,0x19B5,0x21D6,0x19D6,0x19D6,0x19B5,0x1195,0x1174,0x1154,0x1133,0x1133,0x1133,0x1133,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1113,0x1133,0x1133,0x1113,0x1113,0x1133,0x1133,0x1112,0x1133,0x1133,0x1133,0x1133,0x1133,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1153,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1112,0x1132,0x1133,0x1133,0x1112,0x1133,0x1133,0x1133,0x0912,0x0912,0x1113,0x0913,0x0933,0x0933,0x0934,0x0954,0x0955,0x0996,0x0996,0x09D8,0x09D8,0x01D9,0x01D9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01D9,0x01D9,0x09D9,0x09B8,0x11D7,0x19D6,0x1112,0x1911,0x1911,0x2131,0x2130,0x2110,0x2130,0x2130,0x2930,0x2130,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x194F,0x112F,0x094F,0x43D9,0x3C3A,0x2419,0x13F9,0x0BF9,0x0BF9,0x0BF9,0x1419,0x13D8,0x2419,0x345A,0x3BF9,0x09D1,0x094F,0x112F,0x2150,0x2130,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2110,0x2130,0x2930,0x2910,0x210F,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1152,0x1153,0x1194,0x19D6,0x21F7,0x2A17,0x21D6,0x1974,0x1933,0x1912,0x1911,0x1931,0x2131,0x2151,0x2130,0x2130,0x210F,0x2130,0x212F,0x2930,0x212F,0x210F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1911,0x1132,0x1132,0x1174,0x19B5,0x21F7,0x2A38,0x21D6,0x1174,0x1154,0x1933,0x1932,0x1932,0x1911,0x2111,0x1910,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x1932,0x1932,0x1932,0x1933,0x1913,0x1113,0x1113,0x1112,0x1932,0x1932,0x1931,0x1931,0x2131,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x212F,0x2930,0x212F,0x210F,0x2110,0x2130,0x2131,0x1931,0x1932,0x1132,0x1153,0x21F7,0x2217,0x21F7,0x1133,0x08D2,0x1111,0x1932,0x2131,0x2131,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2110,0x210F,0x2910,0x2930,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x28EF,0x28CE,0x206B,0x40ED,0xCC9A,0xDCDB,0xDCB9,0xDC78,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xDC37,0xDC37,0xE457,0xDC36,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xE477,0xDC78,0xDC98,0xDCDA,0xC438,0x284A,0x286C,0x20AD,0x20EE,0x290F,0x210F,0x290F,0x210F,0x20EF,0x2110,0x2110,0x2110,0x2130,0x2110,0x2111,0x2111,0x1911,0x1912,0x1932,0x1933,0x1933,0x1933,0x1113,0x1133,0x1112,0x1912,0x1932,0x1911,0x1911,0x2111,0x2131,0x2130,0x2110,0x2110,0x2110,0x2130,0x210F,0x212F,0x292F,0x292F,0x210F,0x210F,0x290F,0x2930,0x2110,0x2110,0x2910,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x290F,0x210F,0x212F,0x2930,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x292F,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1930,0x1911,0x1132,0x1133,0x19D6,0x21F7,0x19D7,0x1996,0x1134,0x1133,0x1952,0x1951,0x1930,0x1930,0x1931,0x1931,0x1931,0x1932,0x1932,0x1933,0x1933,0x1133,0x1133,0x1133,0x1933,0x1912,0x1912,0x1911,0x18F1,0x1910,0x2130,0x2131,0x2130,0x2930,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2910,0x292F,0x212F,0x2930,0x212F,0x210F,0x210F,0x212F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1112,0x1112,0x1974,0x21D6,0x21F6,0x21F7,0x21F6,0x1995,0x1153,0x1112,0x1931,0x1931,0x2131,0x1910,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1154,0x1996,0x11D8,0x09D9,0x09FA,0x01DA,0x01DA,0x01B9,0x01B9,0x01D9,0x01D9,0x09F9,0x09D8,0x11B7,0x1195,0x1954,0x1932,0x2132,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x290F,0x210F,0x210F,0x210F,0x2110,0x2110,0x20EF,0x2130,0x2110,0x2110,0x2130,0x2110,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x2930,0x2910,0x210F,0x210F,0x2110,0x2930,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x210F,0x2910,0x210F,0x2910,0x210F,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x210F,0x2130,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x2910,0x2110,0x2930,0x2110,0x2910,0x2110,0x2110,0x2910,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2910,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x210F,0x2910,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x212F,0x2930,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x2930,0x210F,0x210F,0x210F,0x2130,0x2130,0x2131,0x1911,0x1111,0x1112,0x1133,0x1153,0x1995,0x21F6,0x21F7,0x19D6,0x1995,0x1153,0x1132,0x1931,0x1911,0x1910,0x2130,0x2110,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F, + 0x210F,0x210F,0x20EF,0x210F,0x2130,0x210F,0x210F,0x212F,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x1931,0x1931,0x1132,0x1132,0x1154,0x1175,0x1196,0x11B7,0x11F8,0x19F8,0x1A18,0x19F8,0x11B7,0x1175,0x1133,0x1132,0x1132,0x1932,0x1931,0x1931,0x1911,0x1931,0x1911,0x1932,0x1953,0x1154,0x1195,0x0996,0x11D7,0x11F8,0x1A19,0x1A18,0x11B6,0x1175,0x1154,0x1133,0x1932,0x1931,0x1931,0x2110,0x2110,0x2130,0x2130,0x212F,0x2130,0x2130,0x2151,0x2151,0x1931,0x1911,0x1112,0x1153,0x1994,0x19B6,0x21F7,0x19D7,0x19D7,0x19D7,0x11B6,0x11B6,0x1196,0x1196,0x11B6,0x1196,0x1196,0x1196,0x11B6,0x1196,0x1196,0x1196,0x1196,0x1196,0x1196,0x1196,0x1196,0x1195,0x1196,0x1196,0x1196,0x1195,0x1195,0x1175,0x1175,0x1175,0x1175,0x1175,0x1195,0x1175,0x1175,0x1175,0x1175,0x0975,0x1175,0x1175,0x1175,0x1175,0x1175,0x0975,0x1175,0x1175,0x0975,0x1175,0x1175,0x1175,0x1175,0x1175,0x0975,0x1175,0x1175,0x1175,0x1195,0x1175,0x1195,0x1195,0x1175,0x1175,0x1175,0x1175,0x0975,0x1195,0x1195,0x1175,0x1175,0x1175,0x1175,0x1175,0x1195,0x1195,0x1195,0x1175,0x1195,0x1195,0x1195,0x1175,0x1195,0x1195,0x1175,0x1175,0x1175,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1175,0x1175,0x1195,0x1195,0x1175,0x1195,0x1195,0x1195,0x1175,0x1175,0x1195,0x1195,0x1175,0x1195,0x1195,0x1195,0x0975,0x1195,0x1195,0x1195,0x1175,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1175,0x1175,0x1175,0x1175,0x0975,0x1195,0x1175,0x1195,0x1175,0x1195,0x1195,0x1196,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1175,0x1196,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1175,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1175,0x1175,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1175,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1175,0x1195,0x1175,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1175,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1175,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1175,0x1175,0x1195,0x1175,0x1195,0x0975,0x1195,0x1196,0x1196,0x0996,0x11B6,0x11D7,0x1197,0x11B7,0x09B7,0x0997,0x09D8,0x09D8,0x09F9,0x09FA,0x01D9,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x09D9,0x11D8,0x19F8,0x21F7,0x1112,0x1911,0x1911,0x2131,0x2110,0x2130,0x2130,0x210F,0x2130,0x2930,0x2110,0x2930,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x194F,0x092F,0x32D5,0x64DD,0x44BB,0x2439,0x1419,0x0BF9,0x0C19,0x0C19,0x1419,0x1C19,0x2C5A,0x3C5A,0x549B,0x3316,0x094F,0x114F,0x1950,0x2150,0x2150,0x2130,0x2130,0x2150,0x212F,0x212F,0x2130,0x192F,0x2150,0x1930,0x2130,0x2130,0x2130,0x2130,0x2930,0x2910,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x210F,0x210F,0x2930,0x2910,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x2151,0x1952,0x1152,0x1153,0x1194,0x19F6,0x2217,0x19D6,0x21D6,0x1974,0x1133,0x1932,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1932,0x1132,0x1174,0x19B5,0x2217,0x2217,0x19B6,0x1175,0x1974,0x1133,0x1932,0x1912,0x1911,0x2131,0x2110,0x2110,0x2110,0x2110,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1911,0x1912,0x1932,0x1932,0x1932,0x1911,0x1911,0x1931,0x2131,0x2131,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x210F,0x290F,0x2910,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x1910,0x1911,0x1932,0x1112,0x1995,0x2A17,0x2A17,0x19B6,0x08F3,0x08D2,0x1932,0x2152,0x2131,0x2130,0x2130,0x2110,0x210F,0x210F,0x212F,0x2930,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x212F,0x212F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x28EE,0x288D,0x200A,0xA397,0xE51C,0xDCBA,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC36,0xDC37,0xDC37,0xDC36,0xDC37,0xE457,0xDC57,0xDC57,0xDC57,0xE457,0xDC16,0xDC36,0xDC57,0xDC98,0xD498,0xC438,0x61CF,0x204A,0x28AD,0x28EE,0x290F,0x290F,0x290F,0x2910,0x210F,0x210F,0x2110,0x2930,0x2130,0x2110,0x2110,0x2111,0x1911,0x1931,0x1911,0x1911,0x1912,0x1912,0x1932,0x1932,0x1911,0x1911,0x1911,0x2131,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x2930,0x2930,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x2910,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x2930,0x2930,0x210F,0x2930,0x212F,0x212F,0x2930,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1930,0x1911,0x1112,0x1133,0x19D6,0x21F7,0x21F7,0x1195,0x1154,0x1132,0x1952,0x1931,0x1930,0x1930,0x1930,0x1950,0x1910,0x1911,0x1911,0x1911,0x1932,0x1932,0x1932,0x1932,0x1911,0x18F1,0x1911,0x2111,0x2111,0x1910,0x2130,0x2130,0x2110,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x290F,0x2930,0x290F,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x212F,0x2930,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2152,0x1932,0x1132,0x1113,0x1974,0x21D6,0x21F7,0x21F7,0x21D6,0x1995,0x1133,0x1112,0x1911,0x1931,0x1931,0x2130,0x2110,0x2110,0x210F,0x2110,0x2110,0x2150,0x2151,0x2130,0x1931,0x1932,0x1133,0x1996,0x19F8,0x11D8,0x09D9,0x09DA,0x09FA,0x01BA,0x01BA,0x01B9,0x01B9,0x01DA,0x09D9,0x09D9,0x11D8,0x19D7,0x1154,0x1932,0x1932,0x2131,0x2131,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x2110,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2130,0x210F,0x212F,0x210F,0x2910,0x210F,0x210F,0x210F,0x2930,0x210F,0x2110,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x210F,0x2130,0x210F,0x2130,0x210F,0x2110,0x2930,0x2930,0x2930,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x212F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x210F,0x2910,0x2910,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x2930,0x292F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x292F,0x212F,0x210F,0x292F,0x290F,0x210F,0x210F,0x2930,0x210F,0x212F,0x2930,0x2930,0x212F,0x210F,0x210F,0x212F,0x292F,0x292F,0x210F,0x2930,0x210F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1911,0x1111,0x1953,0x1153,0x19B5,0x21F6,0x19F7,0x21F7,0x19B5,0x1133,0x1112,0x1111,0x1931,0x2131,0x2130,0x2110,0x2110,0x210F,0x212F,0x210F,0x212F,0x214F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F, + 0x2130,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2130,0x1931,0x1931,0x1132,0x1133,0x1153,0x1175,0x1196,0x11B7,0x19F8,0x1A18,0x19F8,0x19F8,0x11B7,0x1175,0x1154,0x1133,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1153,0x1174,0x1196,0x11B7,0x11D8,0x11F8,0x11F8,0x11F8,0x11B7,0x1175,0x1154,0x1153,0x1932,0x1932,0x2131,0x2110,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2151,0x2131,0x1911,0x1931,0x1132,0x1133,0x1174,0x19B5,0x19F7,0x1A18,0x1A18,0x1A18,0x11F8,0x19F8,0x19F8,0x19F8,0x1A18,0x2218,0x19F8,0x2239,0x2219,0x2219,0x19F8,0x2219,0x2219,0x1A18,0x2219,0x2239,0x1A18,0x2239,0x2239,0x2238,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2218,0x1A18,0x2218,0x1A18,0x2239,0x2238,0x2218,0x2218,0x2238,0x2218,0x2218,0x2238,0x1A18,0x1A18,0x2239,0x1A18,0x1A18,0x2218,0x1A18,0x2218,0x2218,0x1A18,0x2218,0x1A18,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2218,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x2238,0x2218,0x2238,0x1A18,0x2218,0x1A18,0x1A18,0x1A18,0x2238,0x1A18,0x2218,0x1A18,0x2238,0x2218,0x1A18,0x1A18,0x2218,0x2218,0x1A18,0x1A18,0x2238,0x2238,0x1A18,0x1A18,0x2218,0x2218,0x1A18,0x1A18,0x2238,0x2238,0x2218,0x1A18,0x2238,0x2218,0x1A18,0x1A18,0x2218,0x2218,0x1A18,0x1A18,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x2218,0x2218,0x1A18,0x1A18,0x1A38,0x1A18,0x1A18,0x1A18,0x2238,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2218,0x1A18,0x2218,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2218,0x1A18,0x1A18,0x1A18,0x2218,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x2238,0x1A18,0x2218,0x1A18,0x1A18,0x1A18,0x2218,0x1A18,0x1A18,0x2218,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x2238,0x1A38,0x1A18,0x2218,0x2238,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2238,0x2218,0x1A18,0x1A18,0x1A18,0x1A18,0x1A38,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2238,0x2238,0x1A18,0x1A38,0x1A38,0x1A18,0x1A38,0x2238,0x2238,0x1A18,0x2238,0x1A18,0x1A38,0x1A38,0x1A18,0x11F7,0x1A18,0x1A18,0x1A18,0x11F8,0x1A19,0x11D8,0x11F8,0x11F9,0x09D8,0x09F9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01BA,0x01DA,0x09DA,0x09D9,0x11D8,0x11D7,0x19D6,0x08F2,0x1911,0x1931,0x2110,0x2130,0x2110,0x210F,0x210F,0x2130,0x2930,0x2930,0x2110,0x2930,0x2130,0x2130,0x212F,0x212F,0x192F,0x194F,0x114F,0x2233,0x22B5,0x2356,0x23D8,0x1C19,0x0BF9,0x0C19,0x0C19,0x1439,0x1C39,0x2BD8,0x3BF9,0x43F9,0x3B36,0x1170,0x114F,0x194F,0x1950,0x1950,0x2150,0x194F,0x192F,0x192F,0x192F,0x1930,0x1950,0x1950,0x1930,0x2150,0x2150,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x212F,0x2130,0x2130,0x212F,0x210F,0x2910,0x2910,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x1931,0x1931,0x1152,0x1173,0x1194,0x19D6,0x2217,0x19D6,0x19B6,0x1995,0x1113,0x1112,0x1912,0x2131,0x2131,0x2130,0x2930,0x2130,0x210F,0x210F,0x212F,0x292F,0x2150,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1131,0x1132,0x1174,0x19B5,0x2217,0x2217,0x1996,0x1995,0x1954,0x1133,0x1912,0x1912,0x2111,0x2131,0x2110,0x2110,0x2910,0x2910,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x290F,0x290F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2110,0x2131,0x2131,0x2111,0x2131,0x2131,0x1911,0x1911,0x2111,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x2910,0x210F,0x210F,0x2130,0x210F,0x210F,0x2910,0x2930,0x2910,0x2910,0x210F,0x212F,0x210F,0x210F,0x2130,0x210F,0x210F,0x2110,0x2130,0x2130,0x2131,0x1911,0x1932,0x1112,0x19B5,0x2A17,0x21F7,0x1995,0x08F3,0x10F2,0x1952,0x1931,0x1910,0x2130,0x2130,0x2130,0x210F,0x212F,0x2130,0x2930,0x2130,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x28EE,0x28CD,0x286C,0x514E,0xE53D,0xDCBA,0xDC99,0xDC78,0xDC58,0xDC57,0xDC37,0xDC37,0xDC37,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xDC37,0xE457,0xDC57,0xDC57,0xE457,0xDC16,0xE457,0xDC77,0xDC98,0xDC99,0xCC99,0xDD7E,0x412D,0x206B,0x28CE,0x28EE,0x290F,0x2910,0x2910,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2131,0x1910,0x1911,0x1910,0x1931,0x1931,0x1911,0x1911,0x1911,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x2110,0x210F,0x2910,0x2910,0x2930,0x212F,0x212F,0x2110,0x2930,0x2910,0x290F,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x2930,0x2130,0x212F,0x212F,0x2130,0x212F,0x290F,0x2930,0x290F,0x2930,0x212F,0x214F,0x2130,0x212F,0x2150,0x2130,0x1930,0x1931,0x1132,0x1133,0x19D6,0x2217,0x19D7,0x1996,0x1133,0x1132,0x1932,0x1930,0x2130,0x2130,0x2130,0x2130,0x2110,0x1910,0x1910,0x2131,0x1911,0x1911,0x1911,0x18F1,0x1911,0x1911,0x2111,0x18F0,0x2110,0x2110,0x2130,0x2930,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x290F,0x2930,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x292F,0x212F,0x2930,0x2930,0x2930,0x2110,0x2130,0x2110,0x2110,0x2131,0x2131,0x1931,0x1932,0x1112,0x1133,0x1175,0x21F7,0x21F7,0x21F7,0x21D6,0x1995,0x1133,0x1112,0x1111,0x1911,0x2151,0x1910,0x2130,0x2130,0x210F,0x210F,0x2910,0x2110,0x2150,0x2151,0x1931,0x1911,0x1111,0x1113,0x1996,0x11D8,0x11D8,0x09B9,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01D9,0x09D9,0x11D8,0x19B7,0x1174,0x1112,0x1931,0x2131,0x2151,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x2930,0x210F,0x2110,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x212F,0x210F,0x2930,0x290F,0x212F,0x2930,0x2110,0x2930,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x2110,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x212F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x290F,0x2930,0x290F,0x290F,0x2930,0x2910,0x2910,0x2930,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2930,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x210F,0x2930,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x2930,0x2930,0x290F,0x290F,0x210F,0x2930,0x2910,0x210F,0x292F,0x210F,0x210F,0x290F,0x292F,0x210F,0x290F,0x210F,0x292F,0x2930,0x212F,0x2930,0x2930,0x212F,0x210F,0x2930,0x2930,0x2930,0x210F,0x2130,0x2930,0x2130,0x2130,0x2131,0x18F1,0x1112,0x1133,0x1153,0x19B5,0x21F6,0x21F7,0x21F7,0x19B5,0x1153,0x1112,0x1111,0x1911,0x1930,0x2110,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x2950,0x212F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F, + 0x2950,0x2130,0x2110,0x2110,0x2910,0x210F,0x210F,0x2930,0x2930,0x292F,0x292F,0x292F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2151,0x1931,0x1952,0x1132,0x1133,0x1154,0x1196,0x11B7,0x19F8,0x1A19,0x19F8,0x11F8,0x11B7,0x1175,0x1174,0x1133,0x1132,0x1932,0x1932,0x1931,0x2151,0x1952,0x1932,0x1132,0x1153,0x1174,0x1196,0x11B7,0x11B7,0x11F8,0x1218,0x11F8,0x19D7,0x1175,0x1154,0x1133,0x1932,0x1931,0x2131,0x2130,0x2110,0x210F,0x210F,0x2130,0x2950,0x2150,0x2151,0x2151,0x2131,0x1931,0x1912,0x1132,0x1132,0x1974,0x19B6,0x19F7,0x2218,0x1A18,0x19F8,0x19F8,0x2218,0x2218,0x2218,0x21F8,0x21F8,0x21F8,0x21F9,0x21F9,0x21F8,0x19F8,0x19F8,0x2219,0x2239,0x1A18,0x2259,0x2239,0x1A18,0x1A18,0x1A18,0x2238,0x1A18,0x2238,0x2218,0x2218,0x2238,0x2238,0x2239,0x2238,0x2238,0x2238,0x2238,0x2238,0x2238,0x2238,0x2218,0x2238,0x2218,0x2238,0x2238,0x2238,0x2238,0x2238,0x2218,0x2238,0x2238,0x2218,0x2238,0x2218,0x2238,0x2238,0x2238,0x2239,0x2238,0x2218,0x2218,0x2238,0x2238,0x2238,0x2238,0x1A18,0x2238,0x2238,0x2238,0x2238,0x1A18,0x2238,0x2238,0x2218,0x2238,0x2238,0x2218,0x2218,0x2238,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2238,0x2238,0x2238,0x2238,0x2238,0x2238,0x2238,0x2218,0x2238,0x2238,0x2238,0x2218,0x2238,0x2238,0x2218,0x2218,0x2218,0x2218,0x2238,0x2238,0x2238,0x2238,0x2238,0x2218,0x2238,0x2238,0x2218,0x2218,0x2218,0x2238,0x2238,0x2238,0x2238,0x2238,0x2218,0x2218,0x2238,0x2238,0x2238,0x2218,0x2238,0x1A18,0x2238,0x1A18,0x19F8,0x2218,0x2218,0x2218,0x2238,0x2238,0x1A18,0x2218,0x2218,0x2218,0x1A18,0x2218,0x1A18,0x2238,0x2218,0x1A18,0x2218,0x2238,0x2239,0x2238,0x2218,0x2218,0x2218,0x2218,0x2238,0x2218,0x2238,0x2218,0x2238,0x2218,0x2218,0x2218,0x2238,0x2238,0x2238,0x1A18,0x1A18,0x2238,0x2238,0x2218,0x2238,0x2218,0x2218,0x2238,0x2238,0x2238,0x2238,0x2218,0x2238,0x2238,0x2238,0x2218,0x2238,0x2238,0x2238,0x2238,0x2238,0x2238,0x2238,0x2238,0x2238,0x2238,0x2238,0x2218,0x2218,0x2238,0x2238,0x2218,0x2238,0x2238,0x2238,0x2218,0x1A18,0x1A18,0x2218,0x2238,0x2238,0x2218,0x2238,0x2238,0x1A18,0x2238,0x2238,0x2218,0x2238,0x2238,0x1A18,0x2238,0x1A38,0x1A38,0x2238,0x2238,0x2238,0x2238,0x2238,0x2238,0x2238,0x2238,0x2259,0x2238,0x2258,0x2258,0x2238,0x2238,0x1A38,0x2258,0x2238,0x2238,0x2258,0x2238,0x1A38,0x2238,0x2258,0x2259,0x2238,0x1A38,0x1A18,0x1A39,0x1A19,0x19F9,0x11F9,0x11D8,0x09D8,0x09F9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01BA,0x09DA,0x09D9,0x11D8,0x19F8,0x19B5,0x08F1,0x1911,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x2130,0x2930,0x2930,0x2910,0x2930,0x2930,0x2950,0x212F,0x212F,0x214F,0x192F,0x112F,0x010E,0x00EE,0x014F,0x0212,0x1BF9,0x1419,0x1439,0x1439,0x1419,0x2419,0x0190,0x00CD,0x00CD,0x010E,0x114F,0x112F,0x194F,0x112F,0x112F,0x090E,0x090E,0x090E,0x090E,0x090E,0x090E,0x090E,0x112F,0x110F,0x110F,0x112F,0x190F,0x190F,0x2130,0x2110,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210E,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2910,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1951,0x1952,0x1952,0x1153,0x1195,0x19D6,0x2217,0x21F7,0x19B6,0x1995,0x1133,0x1112,0x1911,0x1911,0x2151,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x212F,0x212F,0x212F,0x210F,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x1930,0x1910,0x1952,0x1132,0x1153,0x19B6,0x2A38,0x2218,0x19B6,0x1995,0x1154,0x1133,0x1932,0x1932,0x2132,0x2131,0x2930,0x2930,0x2110,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x290F,0x290F,0x290F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x2110,0x2131,0x2130,0x2130,0x2110,0x2110,0x2910,0x210F,0x2910,0x290F,0x2910,0x2130,0x2130,0x210F,0x210F,0x2930,0x210F,0x2910,0x210F,0x2930,0x212F,0x210F,0x212F,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x2131,0x1932,0x1932,0x1112,0x21D5,0x2A17,0x21F6,0x1995,0x08F2,0x1932,0x2152,0x2131,0x2130,0x2130,0x210F,0x2130,0x210F,0x212F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x290F,0x290F,0x28EE,0x28AD,0x304B,0xB3D8,0xDCBA,0xDC99,0xDC78,0xDC58,0xDC57,0xDC37,0xE457,0xE457,0xDC37,0xDC37,0xDC37,0xDC37,0xDC36,0xE457,0xE457,0xE457,0xDC37,0xDC36,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xDC98,0xD478,0xDD1B,0xDD7D,0x9BF8,0x180A,0x28AD,0x28EE,0x290F,0x2930,0x2930,0x2930,0x2930,0x210F,0x20EF,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x2130,0x2130,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x2110,0x2110,0x2910,0x2910,0x2930,0x290F,0x2930,0x210F,0x290F,0x2930,0x2930,0x2930,0x2910,0x2910,0x210F,0x290F,0x2110,0x2110,0x2930,0x2930,0x2930,0x2130,0x2930,0x212F,0x2130,0x2930,0x290F,0x210F,0x2910,0x210F,0x212F,0x212F,0x212F,0x212F,0x2150,0x2130,0x1930,0x1911,0x1112,0x1133,0x19B6,0x21F7,0x21D7,0x1995,0x1113,0x1112,0x1931,0x1910,0x2130,0x192F,0x2150,0x2130,0x2130,0x2130,0x2130,0x2111,0x2131,0x2131,0x2131,0x1931,0x2111,0x2110,0x2131,0x2130,0x2110,0x2110,0x2130,0x2930,0x210F,0x210F,0x2930,0x292F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x2910,0x290F,0x292F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x2130,0x2930,0x2131,0x2131,0x2131,0x1111,0x10F2,0x1133,0x1174,0x21F7,0x2218,0x21F7,0x21D6,0x1974,0x1133,0x10F2,0x1911,0x1931,0x1931,0x2130,0x190F,0x210F,0x2930,0x2930,0x210F,0x2110,0x210F,0x2150,0x2130,0x1911,0x1911,0x10F2,0x1133,0x19B6,0x19F8,0x09B8,0x09D9,0x01B9,0x01BA,0x01BA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x09D9,0x11D8,0x19D7,0x1975,0x10F2,0x1911,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x292F,0x290F,0x2930,0x290F,0x210F,0x2910,0x2110,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2110,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x2130,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2930,0x2110,0x2930,0x2110,0x2930,0x210F,0x2110,0x210F,0x2110,0x2910,0x2910,0x290F,0x2910,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x2910,0x2110,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x290F,0x2930,0x2930,0x210F,0x210F,0x210F,0x2910,0x2110,0x2110,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x212F,0x210F,0x212F,0x210F,0x292F,0x210F,0x2930,0x2930,0x292F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2110,0x1911,0x1912,0x1133,0x1173,0x19B5,0x21F6,0x21F7,0x19F6,0x1995,0x1133,0x0912,0x1111,0x1931,0x1911,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x292F, + 0x2950,0x2130,0x2110,0x2910,0x2930,0x2910,0x290F,0x210F,0x210F,0x212F,0x292F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1931,0x1132,0x1153,0x1154,0x1196,0x19B7,0x19F8,0x19F9,0x19F8,0x11D8,0x11D7,0x1196,0x1154,0x1153,0x1132,0x1932,0x1932,0x1931,0x1931,0x1931,0x1932,0x1132,0x1153,0x1174,0x1196,0x11B7,0x11B7,0x11F8,0x1A19,0x19F8,0x11B7,0x1196,0x1154,0x1133,0x1932,0x1932,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2951,0x2131,0x2131,0x2151,0x1931,0x1911,0x1932,0x1132,0x1133,0x1174,0x1175,0x1195,0x1996,0x1996,0x1996,0x19B6,0x1996,0x19B6,0x19B6,0x1996,0x19B7,0x19B7,0x19B6,0x19B6,0x19B7,0x19B6,0x11B6,0x11B6,0x11B6,0x11B6,0x19D6,0x19D6,0x11B6,0x19B6,0x19B6,0x19B6,0x19D6,0x19D6,0x19B6,0x19B6,0x19B6,0x19B6,0x19D6,0x19D6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B5,0x19B5,0x19D6,0x19B6,0x19D6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B5,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19D6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x1996,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x1996,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x11B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x1996,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19D6,0x19B6,0x19B6,0x19B6,0x19D6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B5,0x19B6,0x19B6,0x19B6,0x19B5,0x19B6,0x19B6,0x19B6,0x19B5,0x19B6,0x19B6,0x19B6,0x11B5,0x19B5,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19D6,0x19B5,0x19B6,0x19B6,0x19B5,0x19B5,0x19B6,0x19B6,0x19B6,0x19B6,0x19D6,0x19B6,0x19B6,0x19D5,0x11B5,0x19D6,0x19D6,0x19B5,0x19B5,0x19B6,0x19B6,0x19B5,0x19D6,0x19D6,0x19B6,0x19D6,0x19D6,0x19D6,0x11D6,0x19D6,0x19D7,0x19B7,0x19D7,0x11B7,0x11B7,0x11B8,0x09B8,0x09D8,0x09F9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x09D9,0x09D9,0x11D8,0x19F7,0x1175,0x1112,0x1931,0x2131,0x2131,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x2110,0x2910,0x2930,0x2930,0x212F,0x212F,0x214F,0x212F,0x192F,0x194F,0x114F,0x092F,0x014F,0x01F1,0x23F9,0x1C19,0x1419,0x1419,0x1C19,0x23D9,0x014F,0x00CD,0x00EE,0x092F,0x1970,0x114F,0x114F,0x092F,0x010E,0x00EE,0x010E,0x010E,0x012E,0x012E,0x010E,0x010E,0x00ED,0x00ED,0x010E,0x00ED,0x00AD,0x00CE,0x1910,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2151,0x1952,0x1132,0x1153,0x1195,0x2217,0x21F8,0x21F7,0x19D6,0x1174,0x1953,0x1112,0x1911,0x2131,0x2131,0x2930,0x2130,0x2130,0x212F,0x2930,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1154,0x19D6,0x2A38,0x19D7,0x19B6,0x1995,0x1153,0x1933,0x1912,0x2131,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2930,0x2910,0x2910,0x2930,0x290F,0x2930,0x210F,0x2130,0x210F,0x210F,0x2110,0x210F,0x2930,0x290F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x210F,0x2110,0x2130,0x2130,0x1931,0x1931,0x1932,0x1112,0x21B5,0x2A17,0x19D6,0x1995,0x1112,0x1932,0x2152,0x2131,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x2130,0x2950,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2950,0x290F,0x290F,0x28EF,0x28AD,0x286B,0x512E,0xD4BB,0xDC9A,0xE4B9,0xDC78,0xDC37,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC36,0xDC57,0xE457,0xDC36,0xDC36,0xDC37,0xE457,0xDC36,0xDC37,0xE457,0xE457,0xDC37,0xE457,0xDC57,0xDC78,0xDC98,0xE51B,0xD51B,0xBCBA,0x1809,0x20AD,0x20CE,0x290F,0x2910,0x2930,0x210F,0x2110,0x20EF,0x2910,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2930,0x2930,0x2110,0x2110,0x210F,0x2930,0x212F,0x212F,0x210F,0x2930,0x210F,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2910,0x2930,0x2930,0x2930,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x210F,0x2930,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1930,0x1931,0x1112,0x1133,0x21D6,0x21F7,0x21D7,0x1995,0x1133,0x1112,0x1931,0x1930,0x1930,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1910,0x1910,0x2130,0x2110,0x2130,0x2130,0x2110,0x2930,0x2130,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x2930,0x2910,0x292F,0x292F,0x290F,0x2910,0x2910,0x290F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2930,0x2130,0x2131,0x2131,0x1932,0x1112,0x0912,0x1154,0x21F7,0x2218,0x21F7,0x21D6,0x1974,0x1133,0x10F1,0x10F1,0x18F0,0x2131,0x2130,0x190F,0x190F,0x210F,0x2930,0x2930,0x2910,0x210F,0x2110,0x2130,0x2130,0x1911,0x1911,0x1112,0x1133,0x19D7,0x11D8,0x11D9,0x09D9,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01B9,0x01B9,0x09D9,0x11F9,0x19D7,0x1975,0x1112,0x1911,0x1911,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2930,0x290F,0x2110,0x2110,0x2110,0x2110,0x2950,0x2110,0x2130,0x2110,0x2110,0x2930,0x2910,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x210F,0x2130,0x2130,0x212F,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x210F,0x210F,0x212F,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2930,0x2110,0x2910,0x2910,0x2930,0x2930,0x2930,0x290F,0x2930,0x210F,0x2910,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2930,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x290F,0x210F,0x290F,0x290F,0x292F,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2110,0x2930,0x2930,0x290F,0x290F,0x2930,0x210F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2110,0x212F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x2111,0x1911,0x1911,0x1132,0x1154,0x1995,0x21F6,0x19F6,0x21F6,0x1995,0x1133,0x1112,0x1111,0x1931,0x1931,0x2131,0x2130,0x2110,0x2130,0x2110,0x2930,0x2130,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x210F,0x2110,0x2910,0x2930, + 0x2130,0x2110,0x2110,0x210F,0x2110,0x212F,0x212F,0x210F,0x2930,0x290F,0x290F,0x292F,0x290F,0x290F,0x2930,0x210F,0x212F,0x292F,0x210F,0x2110,0x2130,0x2130,0x2131,0x1931,0x1952,0x1152,0x1153,0x1174,0x1195,0x11B7,0x19F8,0x19F9,0x19F8,0x11F8,0x11D7,0x1175,0x1154,0x1133,0x1112,0x1932,0x1931,0x2131,0x1931,0x1931,0x1932,0x1132,0x1132,0x1154,0x1196,0x11D7,0x11B7,0x11F8,0x11F8,0x19F8,0x11B7,0x1176,0x1154,0x1133,0x1112,0x1932,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x2131,0x1931,0x1932,0x1952,0x1132,0x1132,0x1112,0x1112,0x1112,0x1112,0x1113,0x1113,0x1933,0x1933,0x1933,0x1933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1153,0x1153,0x1133,0x1153,0x1153,0x1133,0x1153,0x1153,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1932,0x1132,0x1932,0x1132,0x1932,0x1912,0x1932,0x1132,0x1132,0x1132,0x1933,0x1933,0x1933,0x1933,0x1132,0x1132,0x1953,0x1132,0x1133,0x1133,0x1133,0x1933,0x1933,0x1133,0x1933,0x1933,0x1933,0x1932,0x1132,0x1933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1933,0x1133,0x1133,0x1933,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1132,0x1933,0x1932,0x1132,0x1933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1933,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x1132,0x1132,0x1933,0x1133,0x1133,0x1933,0x1933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1933,0x1133,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1933,0x1133,0x1133,0x1933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x1132,0x1133,0x1132,0x1132,0x1133,0x1132,0x1132,0x1133,0x1132,0x1932,0x1932,0x1932,0x1132,0x1932,0x1932,0x1132,0x1132,0x1132,0x1132,0x1932,0x1132,0x1132,0x1132,0x1132,0x1932,0x1932,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1132,0x1112,0x1132,0x1112,0x1132,0x1953,0x1932,0x1132,0x1132,0x1132,0x1132,0x1932,0x1132,0x1132,0x1932,0x1132,0x1932,0x1132,0x1132,0x1132,0x1932,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1132,0x1132,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1133,0x1133,0x1154,0x1154,0x1154,0x1155,0x1176,0x1197,0x11D8,0x09D8,0x09F9,0x01FA,0x01D9,0x01DA,0x01FA,0x01FA,0x01D9,0x09D9,0x09F8,0x19F8,0x21F7,0x1154,0x1112,0x1931,0x2131,0x2110,0x2951,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x2130,0x210F,0x212F,0x212F,0x192F,0x1950,0x1950,0x1150,0x0950,0x014F,0x01F1,0x2C19,0x1C19,0x1419,0x1419,0x1C19,0x2C19,0x014F,0x00ED,0x094F,0x114F,0x1990,0x114F,0x114F,0x00EE,0x3336,0x4C5B,0x3C3A,0x3C3A,0x3C7A,0x3C7A,0x44BB,0x44BB,0x44BB,0x447A,0x443A,0x3BF9,0x4C1A,0x32D5,0x00CE,0x190F,0x2150,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x2930,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x210F,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1132,0x1153,0x1175,0x19D6,0x21F7,0x21F7,0x19B6,0x1974,0x1133,0x1111,0x1911,0x2131,0x2131,0x2930,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2151,0x2151,0x1931,0x1111,0x1132,0x1154,0x19B6,0x21F7,0x19D7,0x21F7,0x19B5,0x1153,0x1112,0x1911,0x1911,0x2111,0x2110,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x212F,0x210F,0x212F,0x2930,0x290F,0x210F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x210F,0x2110,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2910,0x2930,0x2930,0x210F,0x2110,0x210F,0x2130,0x212F,0x2130,0x210F,0x2110,0x210F,0x290F,0x2930,0x210F,0x212F,0x212F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1932,0x1112,0x21B5,0x2217,0x19B6,0x1974,0x10F2,0x1912,0x2132,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2930,0x2130,0x2130,0x2930,0x2930,0x212F,0x210F,0x210F,0x212F,0x292F,0x2930,0x292F,0x28EF,0x28CE,0x286C,0x2009,0xB419,0xDCDA,0xDC99,0xDC78,0xDC57,0xDC57,0xE457,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC36,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xE457,0xDC57,0xDC37,0xDC57,0xDC78,0xDC78,0xC437,0xDD5C,0xAC59,0x1809,0x208C,0x20EE,0x290F,0x2910,0x2910,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x210F,0x2930,0x210F,0x212F,0x2930,0x2930,0x2910,0x2910,0x2910,0x290F,0x210F,0x2910,0x2110,0x2930,0x2930,0x2930,0x290F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2130,0x212F,0x2130,0x2110,0x2930,0x290F,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x1931,0x1911,0x1112,0x1133,0x21D6,0x2217,0x21F7,0x1995,0x1133,0x1932,0x1931,0x1930,0x1930,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x210F,0x2930,0x2910,0x2930,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2110,0x2131,0x1932,0x1112,0x0913,0x1154,0x19D7,0x2238,0x21F7,0x19B6,0x1995,0x1953,0x10D1,0x10D0,0x1910,0x2131,0x2151,0x2150,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2950,0x2130,0x1910,0x1911,0x1912,0x1133,0x21D7,0x19D8,0x09D8,0x09B9,0x09DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01BA,0x01B9,0x09D9,0x11F9,0x19D7,0x1174,0x1112,0x1911,0x1910,0x1910,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2130,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x2930,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2130,0x210F,0x2110,0x2910,0x2930,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2930,0x2910,0x2910,0x210F,0x2910,0x210F,0x2930,0x2930,0x2110,0x2110,0x2910,0x2930,0x2110,0x2930,0x2930,0x2110,0x2930,0x2930,0x2110,0x2930,0x2910,0x2910,0x2110,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x2110,0x212F,0x212F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2910,0x2110,0x2110,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2930,0x210F,0x2930,0x2930,0x2930,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x292F,0x212F,0x212F,0x210F,0x212F,0x2950,0x2130,0x210F,0x2110,0x2130,0x2131,0x2111,0x1911,0x1112,0x1133,0x1154,0x1995,0x21F6,0x21F7,0x21F7,0x1195,0x1133,0x1112,0x1111,0x1931,0x1931,0x2151,0x2131,0x2130,0x2130,0x2110,0x2110,0x2930,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110, + 0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x212F,0x212F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2131,0x1951,0x1932,0x1953,0x1153,0x1174,0x1196,0x19B7,0x19F8,0x19F9,0x11F8,0x11F8,0x11B7,0x1196,0x1154,0x1133,0x1932,0x1911,0x1911,0x2131,0x1931,0x1931,0x1931,0x1132,0x1153,0x1174,0x19B6,0x11B7,0x11D7,0x11F8,0x11F8,0x19F8,0x11B7,0x1196,0x1154,0x1133,0x1932,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1912,0x1912,0x1911,0x1912,0x1932,0x1111,0x1912,0x1932,0x1111,0x1932,0x1931,0x1931,0x1932,0x1911,0x1911,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1912,0x1912,0x1911,0x18F1,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1932,0x1932,0x1911,0x1932,0x1912,0x1912,0x1932,0x1912,0x1912,0x1911,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1911,0x1912,0x1911,0x1912,0x1912,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x18F1,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x18F1,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1932,0x1932,0x1912,0x1933,0x1954,0x1154,0x1196,0x11B7,0x11D8,0x09F9,0x09F9,0x01D9,0x01F9,0x01F9,0x01F9,0x01D9,0x09F8,0x11F8,0x2218,0x1175,0x1112,0x1912,0x1911,0x2130,0x2110,0x2130,0x2110,0x210F,0x292F,0x292F,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x192F,0x1950,0x1150,0x0950,0x014F,0x01D1,0x2BF9,0x1BF9,0x1C19,0x1C3A,0x1BF9,0x2BD9,0x014F,0x00ED,0x114F,0x112F,0x1990,0x114F,0x092F,0x012E,0x3397,0x44BB,0x2C5A,0x2439,0x1C39,0x1C18,0x1C59,0x1C39,0x2439,0x2439,0x347A,0x3C9B,0x4C7B,0x3B98,0x00AE,0x10EF,0x1930,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x212F,0x2930,0x210F,0x2930,0x210F,0x290F,0x290F,0x2110,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1952,0x1133,0x1133,0x1175,0x19B6,0x21F7,0x21F7,0x19B6,0x1974,0x1132,0x1112,0x10F1,0x2131,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2150,0x2130,0x1930,0x1931,0x1112,0x1132,0x1154,0x19D6,0x2217,0x19F7,0x21D6,0x1995,0x1954,0x1933,0x1911,0x1911,0x2131,0x2931,0x2130,0x2110,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x292F,0x290F,0x210F,0x2130,0x2130,0x2110,0x210F,0x2930,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2910,0x2930,0x210F,0x2110,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x2930,0x2110,0x2930,0x290F,0x212F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2930,0x2130,0x2130,0x2110,0x1931,0x1932,0x1932,0x1112,0x19B5,0x21F7,0x21D6,0x1974,0x1112,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x292F,0x210F,0x212F,0x292F,0x292F,0x210F,0x290F,0x28EF,0x28AD,0x202B,0x48ED,0xDD1C,0xDC99,0xDC78,0xDC78,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC57,0xE457,0xDC57,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xDC37,0xE457,0xE457,0xDC58,0xDC99,0xCC78,0xD51C,0x7251,0x1809,0x208C,0x20CE,0x28EF,0x290F,0x2910,0x2110,0x2110,0x2910,0x2930,0x2930,0x2130,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x212F,0x2130,0x2110,0x2110,0x2130,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2910,0x2910,0x2930,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2910,0x290F,0x2910,0x2110,0x2930,0x2910,0x2930,0x2930,0x290F,0x210F,0x2930,0x212F,0x2930,0x212F,0x212F,0x2110,0x2110,0x2930,0x210F,0x2110,0x2930,0x2930,0x210F,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x2110,0x1931,0x1911,0x1112,0x1133,0x21D6,0x2217,0x21F7,0x1996,0x1133,0x1912,0x1931,0x1910,0x2130,0x2130,0x190F,0x190F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x2910,0x2930,0x290F,0x2930,0x290F,0x210F,0x290F,0x2910,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2111,0x2131,0x1932,0x1133,0x1154,0x19D6,0x2238,0x2218,0x21D7,0x1995,0x1953,0x1111,0x10F0,0x1910,0x2131,0x2151,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x1910,0x2111,0x1912,0x1933,0x1996,0x19D7,0x11D8,0x09D9,0x09D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01B9,0x09D9,0x11F8,0x19D6,0x1174,0x1112,0x1911,0x1930,0x2130,0x2950,0x2930,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x2130,0x2110,0x2130,0x210F,0x2110,0x2930,0x2930,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x212F,0x212F,0x2130,0x210F,0x2930,0x210F,0x2110,0x2910,0x2930,0x2910,0x2110,0x2110,0x2110,0x210F,0x290F,0x2930,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x2130,0x2130,0x212F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x290F,0x2930,0x2910,0x2910,0x290F,0x2910,0x2910,0x2930,0x2930,0x210F,0x210F,0x2930,0x2910,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x2930,0x2930,0x2910,0x2910,0x2110,0x2130,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x2110,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x290F,0x290F,0x2930,0x292F,0x290F,0x290F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2950,0x2950,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x2130,0x2110,0x2130,0x2130,0x2131,0x1911,0x1112,0x1133,0x1133,0x1995,0x21F6,0x21F7,0x21F6,0x1995,0x1153,0x1132,0x1111,0x1931,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110, + 0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2930,0x212F,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2110,0x1910,0x1931,0x1931,0x1932,0x1133,0x1154,0x1174,0x1175,0x19B7,0x19F8,0x19F9,0x11F8,0x11F8,0x11B7,0x1195,0x1154,0x1133,0x1932,0x1932,0x1932,0x1931,0x2152,0x1931,0x1932,0x1132,0x1133,0x1154,0x1175,0x11B7,0x19F8,0x11F8,0x11F8,0x19F8,0x11B7,0x1175,0x0933,0x1133,0x1112,0x1911,0x1931,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2131,0x2130,0x2131,0x1910,0x2130,0x2130,0x2130,0x2110,0x2111,0x2131,0x1910,0x2111,0x2111,0x2131,0x2111,0x2111,0x2131,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x1910,0x1910,0x2130,0x1910,0x2131,0x2110,0x2110,0x2110,0x2111,0x2110,0x2110,0x1910,0x2111,0x2110,0x1910,0x2130,0x2110,0x1910,0x2111,0x1910,0x1910,0x2110,0x2110,0x2111,0x2111,0x18F0,0x2111,0x2131,0x2110,0x2110,0x2111,0x1910,0x2111,0x2110,0x2110,0x1910,0x2111,0x2110,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2110,0x2111,0x2110,0x2111,0x2110,0x2111,0x1910,0x2110,0x2110,0x2111,0x2110,0x2110,0x1910,0x2110,0x2131,0x2111,0x1910,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2131,0x1911,0x1911,0x2111,0x1910,0x1910,0x2111,0x1910,0x2131,0x1910,0x2131,0x2110,0x2110,0x1910,0x2111,0x1910,0x2111,0x1911,0x2111,0x1911,0x2111,0x1910,0x2111,0x2110,0x1910,0x1910,0x2110,0x2111,0x2110,0x1910,0x2111,0x2111,0x2111,0x1910,0x2111,0x2110,0x2110,0x1910,0x1910,0x2111,0x1911,0x1910,0x2111,0x1911,0x1911,0x1910,0x2111,0x18F0,0x1931,0x2131,0x1910,0x1910,0x2131,0x1911,0x2111,0x2111,0x1911,0x1910,0x2111,0x2111,0x2131,0x1911,0x2111,0x2111,0x2131,0x1910,0x2131,0x2131,0x2110,0x1910,0x2111,0x2111,0x2110,0x1910,0x2111,0x2110,0x1910,0x1910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x1910,0x1910,0x1910,0x2110,0x1910,0x2110,0x2110,0x2111,0x1910,0x2111,0x2111,0x2110,0x1910,0x2111,0x2111,0x1910,0x1910,0x2111,0x2110,0x2111,0x2110,0x2110,0x2110,0x2130,0x1910,0x2110,0x1910,0x1910,0x2130,0x2130,0x2110,0x2130,0x1910,0x2110,0x2130,0x1910,0x1910,0x2110,0x2110,0x1910,0x1910,0x2110,0x2110,0x1910,0x1910,0x2131,0x1910,0x2130,0x1910,0x2110,0x2110,0x2110,0x1910,0x2110,0x2131,0x1910,0x1910,0x2131,0x2110,0x2131,0x1910,0x1911,0x1931,0x1931,0x1911,0x1932,0x1932,0x1932,0x1912,0x1933,0x1954,0x1175,0x1196,0x11D7,0x11F8,0x09F8,0x09F8,0x0A39,0x0A19,0x1218,0x1218,0x19D7,0x1975,0x1112,0x1111,0x1911,0x1931,0x2130,0x2130,0x2110,0x210F,0x212F,0x212F,0x292F,0x292F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x192F,0x192F,0x112F,0x0950,0x014F,0x01D1,0x2BFA,0x243A,0x1C19,0x1C3A,0x1BF9,0x23B8,0x016F,0x010E,0x112F,0x112F,0x1990,0x196F,0x092E,0x014E,0x2377,0x349B,0x245A,0x1439,0x0C18,0x0C38,0x0C19,0x0C18,0x0BF8,0x13F8,0x1C39,0x2C5A,0x3C5A,0x2B57,0x00EE,0x08EF,0x1930,0x1930,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x210F,0x210F,0x290F,0x2930,0x2110,0x2110,0x2930,0x2930,0x290F,0x290F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1952,0x1133,0x1154,0x1175,0x19B6,0x21F7,0x21F7,0x21D6,0x1975,0x1133,0x10F1,0x1911,0x1910,0x2130,0x2930,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x210F,0x212F,0x2130,0x210F,0x2130,0x2130,0x2131,0x1931,0x1952,0x1133,0x1174,0x19D6,0x19D7,0x21F7,0x19D6,0x1995,0x1154,0x1112,0x1911,0x1911,0x2111,0x2931,0x2931,0x2930,0x2130,0x212F,0x2110,0x2930,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x210F,0x2110,0x210F,0x212F,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x1932,0x1932,0x1112,0x21B5,0x2A17,0x21D6,0x1974,0x10F2,0x1912,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2910,0x2930,0x2930,0x2930,0x2110,0x2930,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x28EF,0x28CE,0x28AD,0x280A,0xABB8,0xD49A,0xDC99,0xE499,0xE478,0xDC57,0xDC37,0xDC57,0xDC37,0xDC37,0xDC57,0xDC37,0xDC57,0xDC36,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC58,0xDC98,0xDCBA,0xDD1C,0x48EC,0x1809,0x28CD,0x312F,0x290F,0x290F,0x2910,0x210F,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2930,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x210F,0x2910,0x2910,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x212F,0x2110,0x210F,0x2930,0x2930,0x2930,0x2930,0x2110,0x2130,0x212F,0x212F,0x212F,0x2930,0x210F,0x2930,0x2930,0x212F,0x210F,0x210F,0x2910,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x2150,0x2130,0x1931,0x1911,0x1132,0x1133,0x21D6,0x21F7,0x21D7,0x1995,0x1133,0x1932,0x1931,0x1931,0x1930,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x210F,0x2130,0x2130,0x210F,0x210F,0x2110,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x292F,0x290F,0x290F,0x292F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1932,0x1133,0x19B6,0x2218,0x19F7,0x19D7,0x1975,0x1133,0x1932,0x1111,0x18F0,0x1910,0x2131,0x2131,0x20F0,0x20EF,0x210F,0x210F,0x210F,0x2950,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2131,0x1911,0x1912,0x1954,0x19B6,0x19D8,0x11F8,0x09B8,0x01D9,0x01B9,0x01D9,0x01B9,0x01B9,0x09D9,0x09D9,0x11D8,0x19D7,0x19B6,0x1153,0x10F1,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x2110,0x210F,0x212F,0x210F,0x210F,0x2930,0x2930,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x212F,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x2130,0x2930,0x2930,0x2910,0x2110,0x2910,0x210F,0x212F,0x212F,0x2930,0x2130,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x2930,0x210F,0x2930,0x2930,0x2930,0x210F,0x290F,0x2930,0x290F,0x210F,0x2930,0x2130,0x2930,0x2110,0x2110,0x210F,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2930,0x290F,0x290F,0x2930,0x2130,0x2110,0x2130,0x2110,0x2910,0x2110,0x2910,0x210F,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2910,0x290F,0x290F,0x210F,0x290F,0x2910,0x290F,0x290F,0x2910,0x210F,0x210F,0x290F,0x2910,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x292F,0x290F,0x292F,0x210F,0x292F,0x2930,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2110,0x1931,0x1911,0x1912,0x1133,0x1154,0x1995,0x21F7,0x2217,0x19D6,0x1195,0x1133,0x1112,0x1132,0x1931,0x2152,0x2151,0x2151,0x2131,0x2131,0x1910,0x2110,0x2110,0x2110,0x2110,0x2131,0x2110,0x2130,0x2130,0x2131,0x2131,0x2131,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x1910,0x2131,0x1910,0x1931,0x2131,0x2131,0x1910,0x2111,0x2131, + 0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2110,0x1930,0x1931,0x1932,0x1952,0x1953,0x1133,0x1155,0x1196,0x11D7,0x19F8,0x11F8,0x19F9,0x19F8,0x11B7,0x1175,0x1154,0x1153,0x1932,0x1932,0x1931,0x1931,0x2152,0x1952,0x1932,0x1132,0x1112,0x1154,0x1196,0x11B6,0x19D8,0x11F8,0x11F8,0x11F8,0x11B7,0x1175,0x1154,0x0912,0x1132,0x1932,0x1931,0x1931,0x2110,0x2111,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2131,0x2111,0x2111,0x2111,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x1911,0x2131,0x2131,0x1912,0x1912,0x1953,0x1174,0x1195,0x19D7,0x11D7,0x11F7,0x1A18,0x1A18,0x1A17,0x19D6,0x1174,0x1133,0x1111,0x1911,0x1910,0x2130,0x2130,0x2110,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x190F,0x192F,0x192F,0x1150,0x0970,0x014F,0x01D1,0x2BFA,0x241A,0x1C3A,0x1C19,0x1BF9,0x23B8,0x014F,0x00ED,0x114F,0x114F,0x1970,0x114F,0x090E,0x014E,0x2376,0x2C7A,0x1419,0x1439,0x0C38,0x0C38,0x0C39,0x0418,0x0C18,0x0C19,0x1C19,0x243A,0x345A,0x2357,0x00EE,0x090F,0x1930,0x1950,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x210F,0x292F,0x290F,0x2930,0x2930,0x2110,0x2930,0x290F,0x2930,0x2930,0x2930,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x1154,0x1175,0x19D6,0x21F7,0x21F7,0x21F6,0x1974,0x1133,0x1111,0x1931,0x2131,0x2131,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x212F,0x2130,0x210F,0x210F,0x2130,0x2130,0x2131,0x2172,0x1952,0x1132,0x0933,0x1174,0x19B6,0x19D6,0x2217,0x19D6,0x1995,0x1154,0x1112,0x1911,0x2111,0x2131,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x210F,0x2130,0x212F,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2110,0x2110,0x210F,0x210F,0x290F,0x210F,0x2910,0x290F,0x2930,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2910,0x2910,0x210F,0x2930,0x2910,0x2110,0x2130,0x210F,0x210F,0x2930,0x292F,0x290F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1932,0x1112,0x21B5,0x2A17,0x21D6,0x1974,0x1112,0x1932,0x2132,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2110,0x2930,0x2930,0x212F,0x292F,0x292F,0x212F,0x212F,0x210F,0x290F,0x28EF,0x28CE,0x286C,0x512E,0xD4BB,0xD499,0xDC99,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xDC57,0xDC36,0xDC57,0xDC57,0xDC36,0xDC37,0xE457,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC37,0xDC37,0xE457,0xE457,0xDC57,0xDC78,0xDCB9,0xD4DB,0x61AF,0x2009,0x30EE,0x290E,0x28EF,0x290F,0x20EF,0x2910,0x2910,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x2930,0x2110,0x210F,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x2930,0x210F,0x210F,0x2930,0x290F,0x2930,0x212F,0x212F,0x210F,0x290F,0x2930,0x290F,0x2910,0x2930,0x2110,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x2930,0x290F,0x2930,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1932,0x1132,0x1133,0x19B6,0x29F7,0x21D7,0x21B6,0x1113,0x1932,0x1931,0x1931,0x2130,0x2150,0x190F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x2130,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x210F,0x2930,0x2930,0x210F,0x2930,0x290F,0x2910,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x290F,0x292F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2131,0x1932,0x1132,0x1174,0x21F7,0x2218,0x19F7,0x19B6,0x1133,0x10F2,0x1111,0x1911,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2111,0x1911,0x1912,0x1933,0x1995,0x19D7,0x11D7,0x09D8,0x09D9,0x01B8,0x01D9,0x01B9,0x01B9,0x09D8,0x09D8,0x11B7,0x19B6,0x1995,0x1132,0x1911,0x1911,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x2930,0x2130,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x210F,0x2910,0x210F,0x2930,0x212F,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2930,0x2930,0x2110,0x2930,0x290F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x212F,0x2930,0x2110,0x210F,0x210F,0x210F,0x2110,0x2930,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x212F,0x2930,0x212F,0x2930,0x212F,0x212F,0x2930,0x210F,0x290F,0x210F,0x290F,0x212F,0x212F,0x2930,0x212F,0x210F,0x210F,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x290F,0x210F,0x2130,0x212F,0x212F,0x2130,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2110,0x2930,0x2910,0x2930,0x2910,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x210F,0x290F,0x290F,0x20EF,0x2910,0x290F,0x290F,0x2930,0x2910,0x290F,0x290F,0x290F,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x290F,0x292F,0x290F,0x210F,0x2930,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2131,0x1911,0x1932,0x1113,0x1154,0x1995,0x21F7,0x2217,0x21F6,0x1975,0x1133,0x1112,0x1111,0x1932,0x1952,0x2152,0x2151,0x2151,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2111,0x2131,0x2111,0x2131,0x2111,0x2111,0x2131,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1931,0x1931,0x1911,0x1911, + 0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x2930,0x2130,0x2130,0x210F,0x2110,0x2910,0x2910,0x2930,0x292F,0x290F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2150,0x1930,0x1931,0x1932,0x1953,0x1133,0x1133,0x1155,0x1196,0x11D7,0x11D8,0x19F9,0x19F9,0x11F8,0x19D7,0x1175,0x1154,0x1133,0x1112,0x1932,0x1931,0x1931,0x2152,0x2132,0x1932,0x1112,0x1133,0x1154,0x1175,0x1196,0x11D7,0x19F8,0x11F8,0x11D8,0x19D7,0x1196,0x1195,0x0933,0x1112,0x1932,0x2152,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x1930,0x1930,0x1930,0x2130,0x2130,0x1910,0x2130,0x2110,0x2111,0x2111,0x2110,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2110,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2110,0x2110,0x2130,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x2110,0x2131,0x2111,0x1911,0x1932,0x1933,0x1974,0x1974,0x1974,0x1174,0x1995,0x1974,0x1133,0x1132,0x1112,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x292F,0x292F,0x292F,0x2930,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2150,0x1950,0x1950,0x1170,0x012F,0x01D1,0x2BF9,0x243A,0x245A,0x1C3A,0x1BF9,0x2398,0x014F,0x010E,0x112F,0x112F,0x1970,0x1970,0x090E,0x014F,0x23B7,0x247A,0x0C18,0x0C39,0x0418,0x0418,0x0C59,0x0C39,0x0418,0x0C18,0x13F8,0x1C19,0x2C39,0x2B77,0x00EE,0x090F,0x1950,0x1950,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x212F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x290F,0x212F,0x2130,0x2930,0x2130,0x212F,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1132,0x1154,0x1174,0x19D6,0x2217,0x21F7,0x19D6,0x1994,0x1112,0x1111,0x1911,0x2151,0x2151,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2110,0x210F,0x2110,0x2130,0x2130,0x2130,0x2151,0x1931,0x1931,0x1112,0x1133,0x1174,0x19B5,0x2217,0x21F7,0x19D6,0x1995,0x1153,0x1112,0x1932,0x2131,0x2131,0x2130,0x2930,0x2930,0x2930,0x2930,0x2130,0x210F,0x212F,0x212F,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2930,0x2930,0x210F,0x292F,0x2930,0x2930,0x2930,0x2910,0x210F,0x2110,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2131,0x1932,0x1932,0x1112,0x21B5,0x2A17,0x21F6,0x1974,0x1112,0x1932,0x2152,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2110,0x212F,0x212F,0x292F,0x292F,0x212F,0x292F,0x210F,0x28EF,0x28AD,0x180A,0xA397,0xDCDB,0xDCDA,0xE499,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xDC36,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC37,0xE477,0xE457,0xDC58,0xDC99,0xDCBA,0xD4FB,0x306B,0x206B,0x20AD,0x28EE,0x290F,0x2910,0x2910,0x2110,0x2110,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2930,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2930,0x290F,0x290F,0x290F,0x2910,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x2910,0x2910,0x290F,0x2930,0x210F,0x2930,0x212F,0x212F,0x212F,0x2930,0x212F,0x2930,0x2930,0x2930,0x210F,0x2930,0x2950,0x2930,0x210F,0x2130,0x2130,0x2130,0x1930,0x1931,0x1932,0x1133,0x1133,0x19B6,0x21F7,0x21D7,0x1996,0x1133,0x1112,0x1952,0x1931,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2130,0x2930,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x2910,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2910,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2111,0x1912,0x1133,0x21D6,0x2238,0x19F7,0x19D6,0x0954,0x1112,0x1111,0x1911,0x1910,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x2130,0x2930,0x210F,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1911,0x1912,0x1933,0x1954,0x19B6,0x19F7,0x11D7,0x09D8,0x09D8,0x09F8,0x09D8,0x09D8,0x11D7,0x11F7,0x11B6,0x1995,0x2194,0x1953,0x1931,0x1931,0x2130,0x2150,0x2150,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2930,0x290F,0x292F,0x292F,0x292F,0x2930,0x212F,0x210F,0x212F,0x292F,0x292F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x2930,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x292F,0x292F,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x2910,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x212F,0x2930,0x212F,0x210F,0x2930,0x212F,0x210F,0x210F,0x2910,0x290F,0x290F,0x210F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2110,0x210F,0x2130,0x212F,0x2130,0x2930,0x290F,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2110,0x2110,0x212F,0x212F,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x2950,0x2130,0x2130,0x2110,0x2110,0x1911,0x1111,0x1112,0x1154,0x1996,0x21F7,0x2217,0x19D6,0x1975,0x1133,0x1112,0x1131,0x1931,0x1931,0x1931,0x2152,0x2151,0x1951,0x1931,0x1951,0x1931,0x1931,0x1932,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1912,0x1912,0x1911,0x1911,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1111,0x1911,0x1912,0x1912,0x1111,0x1932,0x1932,0x1912, + 0x212F,0x210F,0x2930,0x2930,0x210F,0x212F,0x2930,0x2130,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2930,0x2910,0x210F,0x2930,0x2930,0x290F,0x212F,0x292F,0x212F,0x2150,0x2150,0x1930,0x1931,0x1931,0x1932,0x1932,0x1133,0x1154,0x1175,0x11B6,0x11D7,0x11F8,0x19F9,0x1A19,0x11D8,0x11B7,0x1176,0x1154,0x1133,0x1132,0x1932,0x1931,0x2131,0x2131,0x1931,0x1932,0x1112,0x1133,0x1154,0x1175,0x1196,0x11D7,0x19F8,0x1A19,0x11F8,0x11D7,0x11D7,0x1175,0x0933,0x0912,0x1132,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1951,0x1951,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2111,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2150,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x210F,0x2110,0x2130,0x210F,0x2110,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2110,0x210F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x210F,0x210F,0x2110,0x210F,0x210F,0x2110,0x2110,0x2130,0x210F,0x2110,0x2130,0x2110,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2111,0x2131,0x2131,0x1931,0x1932,0x1932,0x1932,0x1932,0x1112,0x1111,0x1911,0x1911,0x1911,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2150,0x2150,0x194F,0x114F,0x0950,0x012F,0x01D1,0x2BD9,0x2419,0x1C39,0x2439,0x1C19,0x2398,0x014F,0x00EE,0x194F,0x110E,0x194F,0x1970,0x090E,0x012E,0x2BD8,0x1C39,0x0C18,0x0418,0x0418,0x0439,0x0418,0x03F8,0x0418,0x0C19,0x1439,0x1C19,0x2C5A,0x2357,0x010F,0x090F,0x1150,0x1950,0x1930,0x2130,0x212F,0x212F,0x292F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x290F,0x212F,0x210F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x210F,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2151,0x1952,0x1133,0x1154,0x1175,0x19D6,0x2217,0x2217,0x21F6,0x1974,0x1132,0x1111,0x1911,0x2131,0x2151,0x2130,0x2950,0x2130,0x212F,0x292F,0x210F,0x290F,0x2930,0x2110,0x2130,0x2130,0x2130,0x2150,0x2110,0x2130,0x1930,0x1911,0x1111,0x1132,0x1132,0x1974,0x19D6,0x21F7,0x21F7,0x19B6,0x1995,0x1133,0x1112,0x1911,0x2131,0x2130,0x2110,0x2930,0x2110,0x2930,0x2130,0x212F,0x2130,0x2930,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2910,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x2930,0x292F,0x2930,0x2930,0x210F,0x2930,0x2110,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2131,0x1932,0x1932,0x1112,0x21B5,0x2A17,0x21D6,0x1994,0x1112,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x210F,0x212F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2930,0x292F,0x212F,0x292F,0x292F,0x212F,0x292F,0x290F,0x28EE,0x288C,0x388C,0xD4FC,0xDCDA,0xDCB9,0xE498,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC36,0xDC57,0xDC57,0xDC37,0xDC36,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xE457,0xDC36,0xDC37,0xE457,0xE457,0xDC58,0xDC78,0xDCB9,0xE55D,0x6A11,0x200A,0x28AD,0x28EE,0x290F,0x2910,0x210F,0x210F,0x2110,0x2930,0x210F,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2910,0x2110,0x2930,0x210F,0x290F,0x290F,0x210F,0x2910,0x210F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x210F,0x2930,0x212F,0x2930,0x212F,0x212F,0x2930,0x2110,0x210F,0x210F,0x290F,0x2930,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x1930,0x1952,0x1132,0x1133,0x19B6,0x21D7,0x21D7,0x19B6,0x1113,0x1112,0x1932,0x1931,0x2130,0x2130,0x190F,0x210F,0x210F,0x2930,0x212F,0x212F,0x2110,0x2130,0x2110,0x2110,0x210F,0x2110,0x210F,0x2130,0x210F,0x210F,0x212F,0x292F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2930,0x212F,0x2930,0x2130,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x1932,0x1153,0x2217,0x1A17,0x2218,0x1195,0x0913,0x1112,0x1911,0x1931,0x1910,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2930,0x210F,0x2110,0x2930,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2131,0x2110,0x2111,0x1911,0x1912,0x1133,0x1174,0x1995,0x11B6,0x19F7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D6,0x19B5,0x1994,0x1973,0x1952,0x1931,0x2151,0x2151,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2930,0x212F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x292F,0x2930,0x2930,0x210F,0x290F,0x210F,0x210F,0x2930,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x212F,0x210F,0x2930,0x210F,0x290F,0x292F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2910,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x212F,0x212F,0x212F,0x2930,0x212F,0x2930,0x290F,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x2910,0x290F,0x210F,0x2930,0x290F,0x210F,0x2930,0x2930,0x210F,0x290F,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2150,0x2150,0x2130,0x2130,0x2130,0x1911,0x1911,0x1112,0x1133,0x1995,0x21F7,0x21F7,0x21F7,0x1995,0x1133,0x1112,0x1111,0x1932,0x1931,0x1951,0x1931,0x1931,0x1931,0x1931,0x1931,0x1952,0x1952,0x1132,0x1932,0x1932,0x1932,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1133,0x1133,0x1112,0x1133,0x1132,0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132, + 0x290F,0x210F,0x210F,0x2110,0x2930,0x2930,0x210F,0x210F,0x212F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x290F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2150,0x2150,0x2130,0x1931,0x1931,0x1932,0x1933,0x1113,0x1154,0x1175,0x1196,0x11D7,0x19F9,0x19F9,0x19F9,0x19F8,0x1197,0x1175,0x1154,0x1133,0x1111,0x1931,0x1910,0x2131,0x2131,0x2131,0x1931,0x1932,0x1953,0x1154,0x1196,0x19B7,0x11D7,0x11D7,0x19F8,0x11F8,0x11B7,0x11B6,0x0975,0x0934,0x00F2,0x08F2,0x1112,0x1112,0x1111,0x1111,0x1112,0x1111,0x1131,0x1111,0x1111,0x1111,0x1131,0x1111,0x1111,0x1111,0x10F1,0x10F1,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1930,0x1930,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2110,0x2110,0x2130,0x2130,0x2930,0x210F,0x2130,0x2110,0x2110,0x210F,0x2110,0x2910,0x210F,0x210F,0x2930,0x2930,0x2130,0x210F,0x210F,0x2110,0x2930,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2110,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x210F,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2131,0x2131,0x2131,0x1931,0x1911,0x1911,0x1911,0x2131,0x1931,0x1910,0x1910,0x2130,0x2130,0x2130,0x2130,0x2950,0x212F,0x210F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x214F,0x192F,0x114F,0x1150,0x012F,0x01B1,0x2BD9,0x241A,0x245A,0x1C19,0x1C19,0x23B8,0x016F,0x010E,0x194F,0x194F,0x194F,0x194F,0x092F,0x012F,0x2BF8,0x247A,0x1439,0x0C39,0x0418,0x0438,0x0418,0x0418,0x0418,0x0418,0x1439,0x1C39,0x2C39,0x2B97,0x010F,0x0930,0x1150,0x1930,0x192F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x290F,0x290F,0x2930,0x2930,0x2910,0x290F,0x290F,0x290F,0x2930,0x292F,0x292F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2151,0x2172,0x1932,0x1132,0x1133,0x1174,0x19F7,0x2217,0x2217,0x21F6,0x1974,0x1133,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x1930,0x1931,0x1911,0x1112,0x1133,0x1154,0x19D6,0x2217,0x19D7,0x21F7,0x1174,0x1112,0x1912,0x1911,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x2110,0x290F,0x290F,0x2930,0x2110,0x2930,0x2930,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2930,0x212F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x210F,0x210F,0x2910,0x2110,0x2930,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2132,0x1952,0x1112,0x21B5,0x2A17,0x21D6,0x1174,0x1112,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2910,0x2910,0x290F,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x30EE,0x284B,0x8AF4,0xDD1B,0xDCB9,0xDCB9,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC36,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xDC37,0xDC37,0xDC57,0xE457,0xDC58,0xDC78,0xDC99,0xE55C,0xB459,0x284A,0x28CD,0x28EE,0x290F,0x290F,0x290F,0x2910,0x2110,0x2930,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2910,0x2910,0x2110,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x2110,0x2930,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x2110,0x2930,0x2910,0x290F,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x212F,0x212F,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x2930,0x2930,0x212F,0x210F,0x2130,0x2150,0x2130,0x2151,0x1931,0x1131,0x1132,0x1133,0x19B6,0x21F8,0x21F7,0x19B6,0x0913,0x10F2,0x1932,0x2151,0x2130,0x2130,0x210F,0x210F,0x212F,0x2930,0x210F,0x2130,0x2130,0x2110,0x210F,0x2110,0x2110,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x212F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x2930,0x2130,0x2130,0x2930,0x2130,0x2110,0x2111,0x1911,0x1112,0x19B5,0x2238,0x2218,0x19F7,0x0913,0x08F2,0x1112,0x1931,0x2151,0x2131,0x2130,0x2110,0x210F,0x2110,0x2110,0x2930,0x2930,0x2110,0x2930,0x2950,0x2930,0x2110,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x2111,0x1931,0x1932,0x1112,0x1153,0x1974,0x1195,0x1175,0x1195,0x1195,0x1154,0x1154,0x1953,0x1112,0x1111,0x1911,0x1910,0x2131,0x1930,0x2130,0x210F,0x210F,0x2130,0x2150,0x2150,0x2130,0x2150,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2930,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x210F,0x2130,0x2130,0x2930,0x2930,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x210F,0x210F,0x2130,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x290F,0x292F,0x292F,0x212F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2930,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x290F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2150,0x2130,0x2131,0x1911,0x1931,0x1932,0x1133,0x1995,0x19D6,0x21F7,0x21F7,0x1995,0x1112,0x1112,0x1111,0x1931,0x2152,0x2172,0x1931,0x1111,0x1111,0x1111,0x1132,0x1152,0x1153,0x1173,0x1153,0x1153,0x1153,0x1153,0x1173,0x1174,0x1154,0x1974,0x1954,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1994,0x1974,0x1974,0x1995,0x1994,0x1994,0x1995,0x1994,0x1994,0x1994,0x1994, + 0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x292F,0x212F,0x292F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2131,0x2111,0x1931,0x1932,0x1932,0x1133,0x1153,0x1175,0x11B6,0x11B7,0x19F9,0x19F9,0x11F9,0x11F8,0x11B7,0x1175,0x1154,0x1153,0x1931,0x1931,0x1931,0x2131,0x2131,0x1931,0x1932,0x1932,0x1953,0x1175,0x1996,0x1196,0x11D7,0x11D8,0x11D8,0x11D8,0x11D7,0x11D7,0x11B6,0x0975,0x0954,0x1154,0x1154,0x1153,0x0953,0x0953,0x0933,0x0953,0x0933,0x0932,0x0932,0x0932,0x0932,0x0912,0x1133,0x1133,0x1112,0x1112,0x1132,0x1132,0x0912,0x1132,0x1112,0x0932,0x0912,0x1112,0x1112,0x0911,0x1112,0x1112,0x1111,0x1111,0x1931,0x1911,0x1931,0x2130,0x2130,0x2130,0x2930,0x2130,0x2930,0x210F,0x210F,0x210F,0x2110,0x2930,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x2930,0x2930,0x212F,0x210F,0x2930,0x292F,0x212F,0x212F,0x2110,0x2930,0x290F,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x212F,0x2930,0x2110,0x2930,0x212F,0x210F,0x2930,0x2110,0x2930,0x2930,0x2930,0x212F,0x212F,0x292F,0x292F,0x290F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x210F,0x212F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2110,0x2130,0x2130,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x2110,0x2110,0x210F,0x2110,0x2930,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x1910,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x214F,0x194F,0x1950,0x1150,0x012F,0x01B1,0x2BD9,0x2419,0x1C39,0x1C3A,0x2419,0x23B8,0x014F,0x00EE,0x194F,0x192F,0x192F,0x1950,0x092F,0x012F,0x2BD8,0x247A,0x1459,0x0C39,0x0418,0x0418,0x0418,0x0439,0x0439,0x0C19,0x0C18,0x1419,0x2C3A,0x2357,0x010E,0x092F,0x1150,0x1930,0x1930,0x2130,0x212F,0x212F,0x210F,0x292F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2130,0x2130,0x2151,0x1931,0x1132,0x1133,0x1154,0x1195,0x21F7,0x2217,0x2217,0x21F6,0x1974,0x1133,0x1112,0x1931,0x1931,0x2130,0x2130,0x2130,0x210F,0x290F,0x2930,0x2130,0x2130,0x2110,0x2930,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2131,0x1931,0x1911,0x1112,0x1133,0x1175,0x19D7,0x19F7,0x19F7,0x19B6,0x1133,0x1932,0x1932,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x2110,0x292F,0x290F,0x2110,0x2110,0x2930,0x2930,0x210F,0x2910,0x2910,0x290F,0x290F,0x210F,0x2930,0x290F,0x2910,0x2910,0x2930,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2110,0x2110,0x210F,0x212F,0x292F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2130,0x2131,0x2131,0x1932,0x1932,0x1112,0x1995,0x2A17,0x21D6,0x1974,0x1112,0x1932,0x2152,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x290F,0x290F,0x292F,0x212F,0x292F,0x292F,0x292F,0x290F,0x28EE,0x30EE,0x308B,0xC47A,0xDCDA,0xDCB9,0xDC78,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xDC36,0xDC37,0xDC57,0xDC37,0xDC37,0xDC57,0xDC37,0xDC37,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xDC37,0xDC57,0xDC37,0xE458,0xDC58,0xDC78,0xDC99,0xE51C,0xCCBB,0x40ED,0x28AC,0x20AD,0x28EF,0x290F,0x290F,0x210F,0x2930,0x2910,0x2110,0x212F,0x2930,0x212F,0x2930,0x212F,0x2930,0x2930,0x212F,0x212F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2910,0x2930,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x2110,0x2110,0x210F,0x210F,0x2930,0x290F,0x2910,0x290F,0x210F,0x2930,0x292F,0x290F,0x212F,0x210F,0x210F,0x2930,0x2930,0x212F,0x2930,0x2910,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1932,0x1132,0x1134,0x1996,0x21F8,0x21D8,0x19B7,0x0913,0x10F2,0x1932,0x2151,0x2131,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x210F,0x212F,0x212F,0x2930,0x210F,0x212F,0x2930,0x290F,0x210F,0x292F,0x2930,0x2910,0x2930,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x2930,0x212F,0x2130,0x2110,0x2130,0x2110,0x2110,0x2111,0x10F1,0x19B5,0x2238,0x1A18,0x19D6,0x0913,0x10F1,0x1931,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x2950,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x1911,0x1931,0x1931,0x1932,0x1132,0x1133,0x1133,0x1133,0x1933,0x1132,0x1111,0x1931,0x1931,0x1930,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x290F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2930,0x2110,0x2130,0x2930,0x210F,0x210F,0x212F,0x2130,0x210F,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x292F,0x210F,0x212F,0x2930,0x2930,0x290F,0x210F,0x2110,0x210F,0x2130,0x2130,0x212F,0x210F,0x2130,0x2150,0x2150,0x2130,0x2130,0x2130,0x2131,0x1911,0x1911,0x1932,0x1153,0x1995,0x21F6,0x21F7,0x21F7,0x1175,0x1133,0x1112,0x1111,0x1931,0x1952,0x2152,0x1931,0x1911,0x1131,0x1111,0x1132,0x1973,0x21D5,0x21F6,0x21F6,0x2216,0x2A17,0x2A17,0x2A37,0x2A57,0x2A37,0x3237,0x3237,0x2A17,0x3237,0x2A17,0x3237,0x3237,0x2A37,0x3237,0x2A37,0x3237,0x2A37,0x2A37,0x2A17,0x2A17,0x2A16,0x2A16,0x21F6,0x29D6,0x29D6, + 0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2130,0x212F,0x212F,0x2130,0x2130,0x2110,0x2930,0x2910,0x2110,0x2110,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2111,0x2131,0x1932,0x1912,0x1132,0x1153,0x1175,0x11B6,0x11B8,0x11F9,0x1219,0x1219,0x11F8,0x11B7,0x1175,0x1174,0x1132,0x1131,0x1931,0x1931,0x2131,0x2131,0x1911,0x1932,0x1932,0x1133,0x1154,0x1155,0x1196,0x11B7,0x11F8,0x11F8,0x11F8,0x09D7,0x11D7,0x11F7,0x11D7,0x19F7,0x19F7,0x19F7,0x19F7,0x11F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x1A17,0x1A17,0x19F7,0x19F7,0x19D7,0x19D7,0x19D7,0x19F7,0x19D7,0x19D7,0x19D7,0x19F6,0x11D6,0x19D6,0x19D6,0x19D6,0x11D6,0x19D6,0x11B5,0x1174,0x1153,0x1952,0x1911,0x1911,0x1911,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x212F,0x2130,0x212F,0x2130,0x210F,0x212F,0x210F,0x210F,0x212F,0x2130,0x212F,0x2130,0x2130,0x210F,0x2110,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x212F,0x210F,0x210F,0x2130,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2130,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x210F,0x2130,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2910,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2150,0x212F,0x2150,0x212F,0x212F,0x212F,0x2130,0x2150,0x212F,0x212F,0x212F,0x194F,0x1950,0x1170,0x012F,0x01D2,0x2BF9,0x2419,0x1C39,0x243A,0x243A,0x23B8,0x012F,0x00EE,0x1950,0x110F,0x194F,0x1950,0x092F,0x012E,0x2BD8,0x1C39,0x0C19,0x0418,0x0438,0x0418,0x0418,0x0439,0x0418,0x0C19,0x0BF8,0x1419,0x2C5A,0x1B36,0x010F,0x092F,0x1130,0x1930,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x290F,0x290F,0x290F,0x2930,0x292F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1952,0x1952,0x1133,0x1153,0x1174,0x19D6,0x2217,0x21F7,0x19D6,0x1174,0x1133,0x1112,0x1912,0x1931,0x2130,0x2130,0x210F,0x2110,0x2930,0x20EF,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2151,0x2151,0x1931,0x1932,0x1132,0x1154,0x1175,0x19F7,0x19F8,0x19D7,0x1154,0x1112,0x1932,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x2930,0x290F,0x2930,0x2930,0x290F,0x2910,0x210F,0x2110,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x290F,0x2930,0x210F,0x210F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x210F,0x290F,0x2910,0x2110,0x2930,0x2110,0x2910,0x290F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2131,0x2131,0x2132,0x1932,0x1112,0x1995,0x29F7,0x21D6,0x1954,0x10F2,0x1912,0x2152,0x2151,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x212F,0x2930,0x2930,0x2110,0x2910,0x2910,0x2910,0x2930,0x292F,0x292F,0x290F,0x290F,0x290F,0x290E,0x28CE,0x206B,0x59AF,0xDD1B,0xDCDA,0xDCB9,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC37,0xDC37,0xDC36,0xDC37,0xDC37,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC37,0xDC37,0xDC58,0xDC58,0xDC78,0xD499,0xCC9A,0x512D,0x412E,0x20AD,0x28EE,0x20EF,0x290F,0x2910,0x210F,0x2930,0x2910,0x210F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2910,0x2930,0x210F,0x2930,0x290F,0x210F,0x212F,0x2930,0x210F,0x2910,0x2930,0x2930,0x2930,0x2930,0x292F,0x2950,0x210F,0x210F,0x210F,0x210F,0x2950,0x2150,0x2130,0x2130,0x1931,0x1932,0x1133,0x1134,0x19B7,0x21F8,0x19F8,0x19B7,0x0914,0x1112,0x1112,0x1931,0x2151,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x2930,0x212F,0x2930,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2910,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x2910,0x2910,0x2930,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2111,0x1911,0x1112,0x19B5,0x1A18,0x1A18,0x19B6,0x08F2,0x1111,0x1931,0x2131,0x2130,0x2110,0x2130,0x2930,0x2110,0x2930,0x2130,0x2130,0x2130,0x2930,0x2110,0x2930,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x1910,0x1931,0x1952,0x1952,0x1932,0x1932,0x1912,0x1932,0x2152,0x1951,0x1931,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2150,0x192F,0x2150,0x2150,0x2150,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x214F,0x214F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x192F,0x212F,0x212F,0x212F,0x214F,0x214F,0x212F,0x212F,0x214F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x292F,0x212F,0x210F,0x212F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x290F,0x210F,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2110,0x2130,0x2110,0x2131,0x2110,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2930,0x212F,0x212F,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x2130,0x210F,0x212F,0x2930,0x2130,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x2950,0x2150,0x2130,0x2130,0x1910,0x1911,0x1931,0x1952,0x1153,0x1995,0x21F6,0x2217,0x21F6,0x1995,0x1153,0x1112,0x1111,0x1931,0x1951,0x1952,0x1931,0x1111,0x1112,0x1112,0x1974,0x21D5,0x21F6,0x21F6,0x2217,0x2A37,0x21F7,0x21F7,0x2217,0x2A17,0x2A37,0x2A37,0x2A37,0x2A37,0x2A17,0x21F6,0x21F6,0x21F6,0x29F6,0x29F6,0x29F6,0x29F6,0x2A16,0x2A16,0x2A16,0x29F6,0x2A16,0x29F6,0x21F6,0x21D6,0x21D6,0x21D6, + 0x2910,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2110,0x2131,0x2111,0x1911,0x1932,0x1132,0x1154,0x1175,0x0996,0x11D8,0x1A19,0x1219,0x1A19,0x11F8,0x11B7,0x1195,0x1154,0x1132,0x1932,0x1911,0x1931,0x1931,0x1931,0x1931,0x1911,0x1912,0x1133,0x1154,0x1995,0x1196,0x19D7,0x11D7,0x11D8,0x11D8,0x11F8,0x11F8,0x1218,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11D8,0x11F8,0x11F8,0x11F8,0x11D8,0x11F8,0x11F8,0x11F8,0x11D8,0x1218,0x1218,0x1218,0x11F8,0x1218,0x1A18,0x1A18,0x1A18,0x19F7,0x11B5,0x1154,0x1133,0x1112,0x1931,0x2111,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2930,0x2910,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x212F,0x212F,0x210F,0x2110,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x212F,0x210F,0x2110,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2930,0x210F,0x210F,0x2130,0x210F,0x2130,0x212F,0x2130,0x210F,0x212F,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2930,0x212F,0x2130,0x212F,0x212F,0x212F,0x2930,0x210F,0x2910,0x2110,0x2910,0x2910,0x2910,0x2930,0x212F,0x2110,0x2110,0x2110,0x210F,0x2930,0x290F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x2130,0x212F,0x192F,0x2150,0x194F,0x192F,0x192F,0x192F,0x2150,0x2150,0x212F,0x212F,0x212F,0x212F,0x194F,0x114F,0x1170,0x012F,0x01D1,0x2BD9,0x241A,0x245A,0x1C39,0x1BF9,0x2398,0x014F,0x00CD,0x1950,0x194F,0x194F,0x112F,0x092F,0x010E,0x2BD8,0x1C19,0x0C18,0x0C39,0x0418,0x0439,0x0439,0x0419,0x0419,0x0C19,0x1439,0x1C39,0x347B,0x1AF5,0x010F,0x092F,0x1150,0x1930,0x2130,0x2130,0x212F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2910,0x2910,0x2110,0x2930,0x2110,0x2910,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x212F,0x292F,0x210F,0x292F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2110,0x2131,0x2151,0x2152,0x1932,0x1132,0x1133,0x1175,0x19D6,0x2217,0x2218,0x19D6,0x1154,0x1153,0x1112,0x1911,0x1931,0x2131,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x2130,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1132,0x1133,0x0934,0x19B6,0x19F8,0x19F7,0x19B5,0x1132,0x1932,0x1932,0x2131,0x2110,0x2930,0x2110,0x2110,0x2930,0x2930,0x210F,0x212F,0x212F,0x290F,0x210F,0x290F,0x2910,0x210F,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x2930,0x290F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2930,0x2910,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2132,0x1932,0x1112,0x21B5,0x21F6,0x21D6,0x1995,0x10F2,0x1912,0x2152,0x2151,0x2130,0x2110,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x2930,0x290F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x28EE,0x28CE,0x202A,0xA3B6,0xD4DA,0xDC99,0xDC98,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC58,0xDC99,0xDC99,0xCC59,0x48EC,0x38ED,0x28AD,0x28CE,0x20EE,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x2910,0x2930,0x2110,0x2110,0x2910,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x2910,0x2910,0x210F,0x210F,0x290F,0x2930,0x2930,0x210F,0x2930,0x2930,0x212F,0x2930,0x2930,0x210F,0x2950,0x2930,0x212F,0x212F,0x210F,0x212F,0x2950,0x2150,0x2130,0x2151,0x1931,0x1932,0x1133,0x0934,0x19B7,0x19F8,0x19D8,0x19D7,0x1155,0x0913,0x1132,0x1952,0x2151,0x2130,0x2130,0x2130,0x210F,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x210F,0x2930,0x210F,0x212F,0x210F,0x210F,0x2930,0x2910,0x212F,0x212F,0x2930,0x290F,0x290F,0x2930,0x210F,0x2930,0x290F,0x210F,0x2930,0x2930,0x210F,0x290F,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x210F,0x2910,0x210F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x1911,0x1112,0x19D6,0x1A18,0x19F7,0x11B6,0x0912,0x1111,0x2131,0x2131,0x2130,0x210F,0x2130,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2950,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x1930,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2151,0x2150,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x1930,0x1930,0x1950,0x2150,0x2150,0x192F,0x1950,0x2150,0x192F,0x2150,0x2130,0x212F,0x212F,0x212F,0x2150,0x212F,0x2150,0x212F,0x214F,0x214F,0x212F,0x212F,0x2130,0x2150,0x2130,0x2130,0x2130,0x1930,0x1930,0x1930,0x192F,0x192F,0x192F,0x2150,0x214F,0x212F,0x212F,0x2150,0x194F,0x1950,0x192F,0x2150,0x192F,0x1930,0x1930,0x1930,0x192F,0x1930,0x2130,0x212F,0x212F,0x2130,0x212F,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x1930,0x1930,0x2130,0x1930,0x1930,0x1930,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x1911,0x1932,0x1931,0x1931,0x1932,0x1931,0x2131,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x210F,0x2110,0x2910,0x210F,0x210F,0x2110,0x2130,0x2130,0x210F,0x210F,0x2110,0x2910,0x290F,0x290F,0x210F,0x2910,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x2130,0x2150,0x1910,0x1910,0x1911,0x1932,0x1132,0x1153,0x1194,0x19D6,0x2217,0x2217,0x1995,0x1153,0x1112,0x1111,0x1131,0x1931,0x1952,0x1952,0x1111,0x1111,0x1132,0x1974,0x21D6,0x21F6,0x21F7,0x21F7,0x21D6,0x21D6,0x21D6,0x21D6,0x19B5,0x21B5,0x1995,0x1995,0x1995,0x1974,0x1994,0x1994,0x1974,0x1994,0x1994,0x1974,0x1974,0x2194,0x1974,0x1994,0x1994,0x1994,0x1994,0x2195,0x1974,0x1974,0x1974,0x1974, + 0x290F,0x290F,0x210F,0x210F,0x292F,0x290F,0x210F,0x2930,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2930,0x210F,0x2110,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2130,0x2130,0x2151,0x1931,0x1932,0x1132,0x1133,0x1175,0x0996,0x11D8,0x1219,0x1219,0x1A19,0x11F8,0x11D7,0x1175,0x1153,0x1133,0x1952,0x1932,0x1931,0x1931,0x1911,0x1911,0x1912,0x1932,0x1933,0x1154,0x19B6,0x11B6,0x11D7,0x11B7,0x09B7,0x09B7,0x0996,0x0996,0x0997,0x0997,0x0997,0x09B7,0x09B7,0x0997,0x09B7,0x0997,0x09B7,0x09B7,0x09B7,0x09B7,0x09B7,0x09B7,0x09B7,0x09B7,0x09B7,0x0997,0x09B7,0x09B7,0x09B7,0x0997,0x09B7,0x09B7,0x0997,0x09B7,0x09B7,0x09B7,0x09B7,0x11D8,0x1218,0x1A18,0x11B6,0x1154,0x1133,0x1932,0x1911,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x290F,0x2910,0x210F,0x2930,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x212F,0x2930,0x2930,0x2930,0x2110,0x2110,0x210F,0x2930,0x210F,0x210F,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x292F,0x290F,0x210F,0x212F,0x212F,0x2130,0x210F,0x2130,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2130,0x212F,0x290F,0x290F,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x2130,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x212F,0x212F,0x2130,0x210F,0x2930,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x2910,0x210F,0x290F,0x290F,0x2930,0x210F,0x2930,0x290F,0x210F,0x210F,0x290F,0x210F,0x2110,0x210F,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2150,0x194F,0x194F,0x1950,0x194F,0x192F,0x192F,0x192F,0x192F,0x192F,0x2130,0x192F,0x2150,0x2170,0x1970,0x1170,0x012F,0x01B1,0x2BD9,0x241A,0x243A,0x1C3A,0x241A,0x2398,0x014F,0x00EE,0x112F,0x110F,0x1970,0x1950,0x092F,0x012E,0x2397,0x2419,0x1419,0x0C19,0x03F8,0x0418,0x0418,0x0439,0x03F8,0x03F8,0x1439,0x245A,0x3C7B,0x12B4,0x010F,0x090F,0x1130,0x1930,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x210F,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x290F,0x210F,0x290F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2151,0x2152,0x1952,0x1111,0x1132,0x1154,0x1995,0x19D6,0x2218,0x2218,0x19B6,0x1975,0x1153,0x1132,0x1911,0x1911,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x2110,0x210F,0x2130,0x2130,0x2950,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1132,0x1133,0x1154,0x19F7,0x2218,0x2217,0x1133,0x1112,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x212F,0x212F,0x210F,0x2930,0x2930,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2110,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1932,0x1112,0x21B5,0x2A17,0x21D6,0x1974,0x10F1,0x1932,0x2152,0x2131,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2110,0x2110,0x2110,0x2930,0x2910,0x292F,0x292F,0x292F,0x292F,0x292F,0x290E,0x28EE,0x288C,0x30AC,0xCCDB,0xDCB9,0xDCB9,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC36,0xDC37,0xDC37,0xDC57,0xE457,0xDC37,0xDC37,0xDC36,0xDC36,0xDC37,0xDC36,0xDC36,0xDC37,0xDC57,0xE457,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC78,0xE4BA,0xE4FB,0x8251,0x282A,0x288C,0x20AD,0x28EE,0x290F,0x292F,0x290F,0x2930,0x2930,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x290F,0x2910,0x210F,0x210F,0x2930,0x290F,0x290F,0x2110,0x2110,0x2910,0x2910,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x292F,0x2930,0x212F,0x2930,0x210F,0x2930,0x290F,0x212F,0x210F,0x212F,0x2150,0x2150,0x2130,0x1931,0x1931,0x1132,0x1153,0x0954,0x19D7,0x1A18,0x19D8,0x11B7,0x1155,0x0913,0x1112,0x1932,0x2151,0x2131,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x2930,0x212F,0x210F,0x2930,0x210F,0x290F,0x212F,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2930,0x2110,0x210F,0x210F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x1912,0x1112,0x19D6,0x1A18,0x19F7,0x1195,0x0912,0x1931,0x2151,0x2130,0x18EF,0x210F,0x210F,0x2930,0x2130,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x210F,0x210F,0x210F,0x2110,0x212F,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x1910,0x1910,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2150,0x1930,0x1950,0x1950,0x1950,0x194F,0x1950,0x1950,0x1950,0x1950,0x1950,0x1950,0x1950,0x192F,0x194F,0x192F,0x192F,0x192F,0x212F,0x192F,0x212F,0x212F,0x214F,0x2150,0x2150,0x2150,0x2150,0x1930,0x1950,0x1930,0x1950,0x1950,0x1950,0x1950,0x1950,0x1950,0x1950,0x194F,0x192F,0x1950,0x1950,0x1950,0x1950,0x192F,0x1950,0x1950,0x1930,0x1930,0x1930,0x192F,0x192F,0x1950,0x1950,0x1930,0x1930,0x1930,0x2150,0x2150,0x1930,0x1950,0x1930,0x1950,0x1950,0x1930,0x1950,0x1950,0x1930,0x1930,0x1930,0x1930,0x1950,0x1930,0x192F,0x192F,0x192F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x210F,0x2950,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1911,0x1911,0x1932,0x1132,0x1132,0x1112,0x1132,0x1112,0x1112,0x1932,0x1931,0x1931,0x2131,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2930,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x2930,0x290F,0x2930,0x2130,0x210F,0x2130,0x2930,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2930,0x2930,0x212F,0x210F,0x2110,0x2130,0x2130,0x2131,0x1910,0x1911,0x1111,0x1132,0x1153,0x19B5,0x19F6,0x2217,0x21D6,0x1995,0x1153,0x1112,0x1111,0x1111,0x1952,0x1952,0x1931,0x1111,0x1111,0x1133,0x1974,0x21D6,0x21D6,0x21F7,0x21D6,0x1995,0x1154,0x1954,0x1133,0x1133,0x1133,0x1113,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1912, + 0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x210F,0x2130,0x210F,0x2130,0x212F,0x210F,0x2130,0x2110,0x2110,0x2930,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x2130,0x2130,0x2131,0x2131,0x1931,0x1131,0x1132,0x1154,0x1175,0x11B7,0x11D7,0x1A19,0x1219,0x11F9,0x11D8,0x11B7,0x1195,0x1154,0x1153,0x1932,0x1932,0x1911,0x2131,0x1931,0x1911,0x1932,0x1932,0x1933,0x1154,0x1995,0x19D6,0x11D7,0x11D7,0x11D7,0x11B7,0x11B7,0x09B7,0x11B7,0x09B7,0x0997,0x11B7,0x11D8,0x09B7,0x09B7,0x11B8,0x09B7,0x09B7,0x11D8,0x11B8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x09B7,0x11D8,0x11D8,0x09B7,0x09B7,0x11D8,0x09D7,0x09D7,0x09B7,0x09B7,0x09B7,0x09D7,0x11D8,0x11D8,0x11B7,0x1175,0x1153,0x1132,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2110,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x2910,0x210F,0x2910,0x2930,0x210F,0x2930,0x290F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2130,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x2930,0x2930,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x292F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2110,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x210F,0x2110,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x212F,0x210F,0x2130,0x210F,0x2930,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2910,0x210F,0x290F,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x290F,0x290F,0x2930,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2150,0x1950,0x194F,0x1150,0x1150,0x1150,0x114F,0x1150,0x112F,0x1950,0x1930,0x1930,0x1950,0x1950,0x1950,0x114F,0x1150,0x012F,0x01B2,0x2BB9,0x241A,0x1C1A,0x243A,0x2419,0x2398,0x014F,0x00CD,0x112F,0x192F,0x1950,0x194F,0x114F,0x010E,0x2B97,0x2C39,0x1C19,0x0C19,0x03F8,0x0418,0x03F8,0x0418,0x0418,0x0C19,0x1419,0x245A,0x3C7B,0x1294,0x00EE,0x090F,0x110F,0x190F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x2930,0x290F,0x292F,0x2930,0x292F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1132,0x1954,0x1995,0x19D6,0x2217,0x2217,0x21D6,0x1975,0x1953,0x1932,0x1911,0x1911,0x2131,0x2130,0x2930,0x2930,0x2110,0x2110,0x210F,0x2130,0x210F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1112,0x0933,0x19D7,0x2238,0x21F7,0x1153,0x10F2,0x1912,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2110,0x2910,0x2910,0x2110,0x2910,0x2910,0x290F,0x2930,0x210F,0x290F,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x290F,0x290F,0x210F,0x2910,0x2110,0x2110,0x2930,0x292F,0x210F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2131,0x2131,0x1932,0x1932,0x1112,0x21B5,0x2A17,0x21D6,0x1974,0x10F2,0x1932,0x2152,0x2131,0x2130,0x2930,0x2130,0x2930,0x2930,0x2930,0x2130,0x2930,0x2130,0x2930,0x2930,0x2910,0x2930,0x290F,0x292F,0x292F,0x292F,0x292F,0x28EE,0x28CD,0x204B,0x6A32,0xD4DB,0xDCDA,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC36,0xDC36,0xDC37,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xDC36,0xE457,0xDC37,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC37,0xDC58,0xE499,0xE4FB,0xCC9A,0x2809,0x30AC,0x28AD,0x28EE,0x290F,0x2930,0x290F,0x210F,0x2930,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x290F,0x210F,0x2910,0x210F,0x210F,0x210F,0x2910,0x2910,0x290F,0x210F,0x2930,0x210F,0x210F,0x2110,0x2110,0x210F,0x2930,0x290F,0x290F,0x292F,0x210F,0x290F,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x290F,0x2930,0x290F,0x2110,0x2130,0x2130,0x2130,0x2151,0x1930,0x1951,0x1952,0x1152,0x1133,0x0954,0x19F7,0x19F8,0x11D8,0x11B7,0x1196,0x0913,0x1112,0x1932,0x2151,0x2131,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x2930,0x2930,0x2130,0x2930,0x2930,0x290F,0x290F,0x2930,0x212F,0x212F,0x2930,0x2930,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2131,0x2111,0x1912,0x1113,0x19F7,0x1217,0x11D7,0x1195,0x1112,0x1931,0x2131,0x2110,0x210F,0x210F,0x212F,0x2930,0x2130,0x210F,0x20EF,0x2930,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x2930,0x2930,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x1950,0x1950,0x1950,0x112F,0x1950,0x114F,0x1950,0x114F,0x1150,0x1150,0x1150,0x114F,0x1150,0x112F,0x112F,0x112F,0x192F,0x192F,0x192F,0x194F,0x194F,0x194F,0x192F,0x1950,0x1950,0x1950,0x1950,0x1950,0x1950,0x112F,0x1150,0x1150,0x1150,0x1150,0x1950,0x1950,0x1950,0x1950,0x1950,0x1950,0x1950,0x1150,0x1150,0x1150,0x1150,0x1150,0x1150,0x1150,0x1150,0x114F,0x1150,0x1150,0x1150,0x1930,0x1930,0x1950,0x112F,0x1130,0x1950,0x1150,0x1150,0x1150,0x1150,0x1150,0x1150,0x1150,0x1150,0x1150,0x1150,0x1130,0x1130,0x1130,0x112F,0x112F,0x192F,0x192F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x2930,0x212F,0x2130,0x2950,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2150,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2110,0x1911,0x1911,0x1911,0x1112,0x1132,0x1133,0x1174,0x1195,0x1195,0x1195,0x1154,0x1153,0x1133,0x1132,0x1931,0x1931,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x210F,0x2110,0x2130,0x2130,0x2110,0x2930,0x2130,0x2930,0x2130,0x2130,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1131,0x1152,0x1153,0x1195,0x19F6,0x2217,0x2217,0x1995,0x1153,0x1132,0x1111,0x1911,0x1931,0x1931,0x1931,0x1111,0x1132,0x1132,0x1174,0x19B6,0x21D6,0x21F7,0x21D6,0x1974,0x1154,0x1133,0x1113,0x1113,0x1112,0x1112,0x1112,0x1112,0x10F1,0x1112,0x1112,0x1112,0x1912,0x1932,0x1932,0x1932,0x1911,0x1931,0x1931,0x1911,0x1911,0x1931,0x1911,0x1931,0x1911,0x1932,0x1911,0x1912,0x1912, + 0x2910,0x290F,0x2910,0x20EF,0x210F,0x290F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2110,0x2930,0x2930,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2951,0x2130,0x1931,0x1931,0x1111,0x1132,0x1154,0x1175,0x11B7,0x11D8,0x11F8,0x11F9,0x11D8,0x11D8,0x11B7,0x1195,0x1154,0x1133,0x1932,0x1932,0x2152,0x2132,0x2132,0x1932,0x1912,0x1932,0x1132,0x1133,0x1974,0x19B5,0x19B6,0x19D6,0x1A17,0x19F7,0x1A18,0x1A18,0x1A18,0x19F8,0x1A18,0x19F8,0x19F8,0x1A18,0x19F8,0x19F8,0x1A18,0x19F8,0x19F8,0x1A18,0x1A18,0x19F8,0x1A18,0x1A18,0x1A18,0x1A18,0x19F8,0x1A18,0x11F7,0x1A18,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x09D8,0x11F8,0x11D8,0x11D8,0x11F8,0x11B7,0x1175,0x1174,0x1132,0x1952,0x1931,0x2151,0x2151,0x2130,0x2150,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x210F,0x2930,0x290F,0x2930,0x2930,0x290F,0x2910,0x2910,0x210F,0x2110,0x2130,0x2130,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x2110,0x2110,0x2910,0x210F,0x2930,0x2910,0x2910,0x2930,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2930,0x2930,0x2110,0x210F,0x2930,0x2930,0x2110,0x210F,0x2110,0x2930,0x2110,0x2110,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x212F,0x2930,0x2130,0x2930,0x210F,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x210F,0x290F,0x212F,0x2930,0x210F,0x210F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2130,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x212F,0x212F,0x210F,0x212F,0x2110,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x2110,0x2130,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2150,0x1950,0x114F,0x114F,0x1150,0x0970,0x0970,0x094F,0x094F,0x0950,0x1150,0x1150,0x1130,0x1930,0x192F,0x112F,0x112F,0x1150,0x012F,0x01D2,0x2BD9,0x2C3A,0x1BF9,0x1BF9,0x1BF9,0x23B8,0x016F,0x00EE,0x114F,0x190F,0x2150,0x1950,0x194F,0x012F,0x3377,0x449B,0x2C5A,0x1C5A,0x1439,0x0C18,0x0C39,0x0C19,0x0C39,0x1439,0x1C39,0x2C5A,0x449B,0x1AB5,0x010E,0x112F,0x1930,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2910,0x2930,0x212F,0x212F,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x290F,0x210F,0x2110,0x2930,0x2110,0x2110,0x210F,0x2910,0x2910,0x290F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2151,0x1932,0x1932,0x1133,0x1954,0x1995,0x21F7,0x2A38,0x21F7,0x19B6,0x1995,0x1153,0x1933,0x1911,0x2131,0x2131,0x2951,0x2930,0x2110,0x2930,0x2110,0x2110,0x210F,0x212F,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2131,0x1932,0x1112,0x0913,0x19D7,0x2A38,0x2217,0x1153,0x10F2,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2930,0x2130,0x2930,0x210F,0x2930,0x210F,0x2110,0x2910,0x2910,0x2910,0x290F,0x2910,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x292F,0x210F,0x210F,0x292F,0x212F,0x210F,0x2110,0x2130,0x2110,0x2130,0x2131,0x2132,0x1932,0x1112,0x21D5,0x2A17,0x21D6,0x1974,0x1112,0x1912,0x2152,0x2131,0x2130,0x2130,0x2930,0x2930,0x2930,0x2130,0x2930,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x292F,0x292F,0x290F,0x290E,0x30CD,0x306B,0xABF8,0xD4BA,0xDC98,0xDC78,0xDC77,0xDC57,0xE457,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC36,0xE436,0xE457,0xDC37,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xE457,0xDC57,0xDC37,0xDC78,0xE4DA,0xED7D,0x7A52,0x306B,0x30AD,0x28CE,0x28EF,0x290F,0x290F,0x292F,0x2930,0x2930,0x2910,0x2930,0x210F,0x2110,0x2910,0x2910,0x2910,0x2930,0x290F,0x292F,0x212F,0x292F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x212F,0x212F,0x292F,0x2930,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x210F,0x2110,0x2110,0x2110,0x2130,0x2131,0x1931,0x1931,0x1952,0x1173,0x0974,0x0995,0x1A18,0x11F8,0x11B7,0x11B7,0x11B6,0x1154,0x1133,0x1952,0x2152,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x212F,0x2130,0x212F,0x212F,0x2930,0x290F,0x210F,0x2110,0x210F,0x2110,0x210F,0x290F,0x2910,0x2910,0x212F,0x212F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x2910,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2131,0x2131,0x1912,0x1133,0x19F7,0x1A18,0x19F7,0x1175,0x1111,0x1931,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x2130,0x1950,0x112F,0x092F,0x092F,0x092F,0x092F,0x092F,0x092F,0x092F,0x092F,0x092F,0x094F,0x094F,0x092F,0x092F,0x092F,0x092F,0x112F,0x114F,0x112F,0x192F,0x194F,0x1950,0x1950,0x1950,0x112F,0x112F,0x092F,0x092F,0x092F,0x092F,0x092F,0x092F,0x092F,0x092F,0x1150,0x1150,0x0930,0x1150,0x1150,0x1150,0x0950,0x0950,0x1150,0x0950,0x092F,0x092F,0x094F,0x092F,0x092F,0x092F,0x092F,0x092F,0x092F,0x090F,0x090F,0x090F,0x010F,0x012F,0x012F,0x012F,0x012F,0x012F,0x012F,0x012F,0x012F,0x012F,0x092F,0x092F,0x092F,0x092F,0x094F,0x092F,0x092F,0x090E,0x090F,0x110F,0x110F,0x190F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x212F,0x2130,0x2110,0x2130,0x2131,0x1931,0x1932,0x1933,0x1153,0x1175,0x19F7,0x1A18,0x2259,0x2279,0x1A59,0x1A38,0x1A18,0x19D6,0x1194,0x1153,0x1132,0x1931,0x1911,0x2131,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1952,0x1973,0x1174,0x1195,0x19D6,0x19D6,0x21F6,0x1995,0x1153,0x1112,0x1111,0x1111,0x1931,0x2152,0x1931,0x1111,0x1132,0x1133,0x1174,0x19D6,0x21D6,0x21F7,0x19D6,0x1974,0x1133,0x1112,0x1112,0x1112,0x1112,0x1912,0x1932,0x1932,0x1932,0x1911,0x2152,0x1931,0x2152,0x1952,0x1911,0x1911,0x2131,0x1931,0x1931,0x1910,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x2131,0x2111,0x2111,0x2111, + 0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x210F,0x292F,0x2130,0x2130,0x2130,0x2131,0x1911,0x1932,0x1132,0x1154,0x1175,0x1196,0x11D8,0x11D8,0x11F9,0x11F9,0x11D8,0x11B7,0x1196,0x1154,0x1133,0x1932,0x1932,0x2152,0x2152,0x1931,0x1932,0x1932,0x1911,0x1932,0x1932,0x1153,0x1173,0x1174,0x11B5,0x11B5,0x19B5,0x1195,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x11B6,0x19B6,0x19B6,0x19D7,0x19B6,0x19B6,0x11B6,0x11B6,0x11B6,0x19B6,0x11B6,0x19D6,0x11B6,0x19D6,0x19D6,0x11D6,0x11D6,0x19D7,0x19D7,0x19F7,0x11F7,0x19F8,0x1A19,0x1218,0x11F9,0x11F9,0x11F8,0x11D7,0x11B7,0x0954,0x1154,0x1153,0x1932,0x1951,0x2151,0x2150,0x2150,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2110,0x2110,0x210F,0x2110,0x290F,0x210F,0x290F,0x290F,0x2910,0x210F,0x2930,0x2910,0x2910,0x210F,0x2110,0x2110,0x2910,0x2110,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x2930,0x210F,0x2930,0x2930,0x212F,0x2930,0x212F,0x210F,0x290F,0x2930,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x212F,0x210F,0x292F,0x210F,0x212F,0x2930,0x290F,0x290F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x210F,0x2930,0x290F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x212F,0x210F,0x212F,0x2930,0x212F,0x2110,0x2130,0x212F,0x212F,0x290F,0x290F,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x290F,0x290F,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2110,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2910,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2110,0x210F,0x2110,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x210F,0x2110,0x2110,0x2110,0x2130,0x212F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x2150,0x1950,0x1950,0x094F,0x094F,0x016F,0x014F,0x01B0,0x0A12,0x0A12,0x0190,0x012F,0x012F,0x1150,0x1130,0x1150,0x112F,0x1150,0x0950,0x0130,0x01B1,0x2BD9,0x2419,0x1C19,0x243A,0x23F9,0x2BB8,0x016F,0x090E,0x194F,0x10EE,0x194F,0x1950,0x1950,0x094F,0x1A74,0x3378,0x2BD8,0x2419,0x1C5A,0x0BF8,0x0C19,0x0C19,0x1419,0x1C5A,0x2C3A,0x3419,0x3BD9,0x1A74,0x094F,0x1130,0x1930,0x2130,0x2130,0x2930,0x210F,0x210F,0x212F,0x212F,0x290F,0x2930,0x210F,0x2930,0x2130,0x212F,0x2930,0x212F,0x212F,0x2930,0x290F,0x2930,0x210F,0x2930,0x2930,0x2930,0x2130,0x2110,0x2110,0x2110,0x2930,0x2910,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x2110,0x2130,0x2131,0x2151,0x2131,0x1932,0x1933,0x1154,0x1995,0x21F7,0x2217,0x21F7,0x19B6,0x1995,0x1153,0x1132,0x1911,0x2131,0x2131,0x2110,0x2930,0x2110,0x2930,0x2130,0x210F,0x210F,0x2150,0x2130,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1112,0x08F3,0x19D6,0x2A38,0x21F7,0x1154,0x1112,0x1911,0x2131,0x2111,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930,0x210F,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x2910,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2930,0x290F,0x290F,0x2930,0x210F,0x2930,0x2910,0x210F,0x2110,0x2910,0x2110,0x2930,0x2110,0x2910,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2130,0x2131,0x2132,0x1912,0x1112,0x21B5,0x21F6,0x21D6,0x1974,0x1112,0x1932,0x2151,0x2131,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x292F,0x292F,0x292F,0x28EE,0x28AC,0x40AC,0xCC7A,0xD499,0xDC99,0xDC78,0xDC37,0xE457,0xDC57,0xDC57,0xDC36,0xDC57,0xDC56,0xDC36,0xE457,0xDC57,0xDC57,0xDC37,0xDC57,0xDC37,0xE457,0xDC36,0xDC36,0xDC36,0xDC36,0xE457,0xDC37,0xDC37,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xDC57,0xDC57,0xDC57,0xDC58,0xDC99,0xE4FB,0xCCBB,0x61AF,0x286B,0x30CE,0x28EE,0x290F,0x290F,0x292F,0x2930,0x290F,0x2910,0x2930,0x2910,0x2930,0x2910,0x2910,0x210F,0x2910,0x210F,0x290F,0x210F,0x212F,0x292F,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x212F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x2110,0x2930,0x2910,0x2930,0x2930,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1952,0x1153,0x1174,0x1175,0x11B6,0x1A18,0x11F8,0x11D8,0x11D7,0x11D7,0x1175,0x1153,0x1132,0x2152,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x2930,0x290F,0x2110,0x2930,0x2110,0x2110,0x210F,0x2930,0x2910,0x210F,0x212F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x2110,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2111,0x1912,0x1133,0x19F7,0x19F7,0x11D7,0x1174,0x1111,0x1931,0x2110,0x2130,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x2110,0x2930,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x2130,0x2930,0x2930,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2150,0x1930,0x110F,0x00CE,0x010E,0x012F,0x012F,0x010E,0x010E,0x010E,0x010E,0x012E,0x014F,0x016F,0x012E,0x012E,0x012E,0x012E,0x010E,0x012E,0x094F,0x114F,0x112F,0x1950,0x1950,0x1950,0x1970,0x092F,0x010E,0x010E,0x012F,0x014F,0x014F,0x016F,0x012F,0x012E,0x010E,0x010E,0x014F,0x0950,0x0950,0x0950,0x0150,0x014F,0x012F,0x010E,0x012F,0x012F,0x014F,0x014F,0x014F,0x016F,0x016F,0x0190,0x11B1,0x094F,0x010F,0x010F,0x012F,0x014F,0x016F,0x0190,0x0190,0x0190,0x0190,0x0190,0x0170,0x0190,0x016F,0x016F,0x016F,0x016F,0x014F,0x016F,0x016F,0x016F,0x012E,0x012E,0x012F,0x112F,0x110F,0x192F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2150,0x2150,0x2150,0x1930,0x192F,0x192F,0x190F,0x190F,0x190F,0x190F,0x192F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x210F,0x2130,0x2110,0x2131,0x1931,0x1932,0x1953,0x1974,0x19B6,0x11F7,0x1218,0x1218,0x1219,0x0A19,0x1219,0x09F9,0x1218,0x11F8,0x11F7,0x19F6,0x1994,0x1952,0x1932,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x1910,0x1910,0x1930,0x1931,0x1931,0x1931,0x1931,0x1952,0x1153,0x1174,0x1195,0x19F6,0x19D6,0x19D6,0x1995,0x1133,0x1132,0x1112,0x1931,0x1911,0x1932,0x1931,0x1111,0x1132,0x1133,0x1174,0x19D6,0x21F7,0x21D6,0x21D6,0x1974,0x1133,0x1112,0x1111,0x1912,0x1932,0x1932,0x1932,0x1931,0x1911,0x1931,0x1931,0x2131,0x2131,0x2151,0x2131,0x1931,0x1910,0x2130,0x2130,0x2110,0x1910,0x2110,0x2130,0x2110,0x2110,0x2111,0x2111,0x2111,0x2110,0x2111,0x2111, + 0x2910,0x2910,0x2910,0x2910,0x2930,0x290F,0x2910,0x210F,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x2130,0x2110,0x2930,0x2910,0x2930,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x20EE,0x20EE,0x20EF,0x210F,0x2130,0x2131,0x2131,0x1931,0x1932,0x1132,0x1153,0x1195,0x11B7,0x11D8,0x11F8,0x11F9,0x11F8,0x11F8,0x11D7,0x1196,0x1154,0x1113,0x1112,0x1932,0x1931,0x1931,0x2131,0x2131,0x1931,0x1911,0x1932,0x1952,0x1952,0x1952,0x1152,0x1132,0x1132,0x1132,0x1113,0x1113,0x0913,0x1113,0x1113,0x0913,0x1113,0x0913,0x0913,0x1133,0x1113,0x0913,0x0913,0x0913,0x1133,0x1133,0x0933,0x0933,0x0913,0x0933,0x0913,0x0933,0x1134,0x0933,0x0933,0x0954,0x0934,0x0955,0x11B7,0x11D8,0x11F9,0x1219,0x1219,0x11F8,0x11B6,0x0954,0x0912,0x1112,0x1111,0x1931,0x2151,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2910,0x2110,0x2110,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x2110,0x2130,0x2110,0x2930,0x2910,0x2110,0x2110,0x2930,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x2910,0x2910,0x210F,0x210F,0x210F,0x2910,0x290F,0x210F,0x210F,0x2910,0x2110,0x2130,0x2130,0x210F,0x212F,0x2130,0x212F,0x212F,0x2130,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2130,0x2130,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x290F,0x210F,0x2910,0x2110,0x292F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x2930,0x2930,0x2110,0x2130,0x212F,0x212F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x2110,0x2130,0x212F,0x212F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2930,0x2110,0x2130,0x212F,0x210F,0x210F,0x212F,0x2130,0x212F,0x2930,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x192F,0x112F,0x092F,0x014F,0x016F,0x0A52,0x2336,0x3C3A,0x3C5A,0x447B,0x445A,0x3BF9,0x1A94,0x0991,0x0970,0x1150,0x1150,0x092F,0x0970,0x0130,0x01F2,0x2BD9,0x2419,0x2419,0x1C19,0x23F9,0x2377,0x014F,0x00EE,0x192F,0x192F,0x2150,0x1950,0x192F,0x112F,0x0950,0x012F,0x012F,0x01D1,0x23F9,0x1419,0x1419,0x0BF8,0x13F8,0x2419,0x12D5,0x014F,0x012E,0x010E,0x1150,0x1950,0x2150,0x2130,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x292F,0x290F,0x292F,0x210F,0x292F,0x2930,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x212F,0x210F,0x212F,0x292F,0x2930,0x2130,0x2930,0x2110,0x2930,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x292F,0x212F,0x2130,0x2130,0x2131,0x2111,0x1931,0x1932,0x1933,0x1133,0x1975,0x21D6,0x2237,0x19F6,0x19B6,0x1174,0x1953,0x1112,0x1911,0x18F0,0x2110,0x2931,0x2930,0x2950,0x2930,0x2130,0x210F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1932,0x1113,0x21D6,0x2A38,0x21D6,0x1133,0x1132,0x1932,0x1931,0x1910,0x2110,0x2110,0x2130,0x2130,0x2930,0x2930,0x212F,0x210F,0x290F,0x2930,0x290F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x210F,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2930,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2131,0x1932,0x1912,0x1112,0x21D5,0x2217,0x21D6,0x1974,0x1112,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930,0x2130,0x2130,0x2930,0x2930,0x2910,0x2910,0x2930,0x292F,0x292F,0x292F,0x290F,0x290F,0x28CD,0x204B,0x69F0,0xDCFB,0xDCB9,0xDC98,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC37,0xDC36,0xDC36,0xE457,0xDC37,0xDC57,0xDC37,0xDC37,0xDC57,0xDC37,0xDC57,0xDC57,0xDC56,0xDC36,0xE457,0xE437,0xDC37,0xDC36,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC37,0xDC57,0xDC58,0xDC78,0xD479,0xDCFB,0xCCFC,0x40CD,0x30AD,0x28EE,0x290E,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x210F,0x2930,0x292F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x210F,0x292F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2930,0x2910,0x2910,0x290F,0x290F,0x210F,0x2910,0x290F,0x2930,0x290F,0x210F,0x212F,0x210F,0x2930,0x2930,0x2930,0x212F,0x210F,0x2930,0x2910,0x2910,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1132,0x1174,0x1195,0x1196,0x11B7,0x1A18,0x11F8,0x11D8,0x11D8,0x19F8,0x11D7,0x0954,0x1133,0x1952,0x1952,0x2151,0x2131,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x210F,0x210F,0x2930,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2111,0x1932,0x1133,0x19F7,0x11F7,0x11F7,0x1174,0x1132,0x2151,0x2110,0x210F,0x210F,0x2150,0x2950,0x2130,0x210F,0x210F,0x210F,0x2930,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x20EF,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x110F,0x00CD,0x2AF5,0x4419,0x33D9,0x3BF9,0x445B,0x4C7B,0x4C9B,0x4C7B,0x4CBC,0x4CDC,0x4CBB,0x4C9B,0x4C9B,0x445A,0x445A,0x4C5A,0x43F9,0x3B57,0x0970,0x1150,0x1150,0x1150,0x1950,0x1170,0x0950,0x4378,0x43B8,0x3BD8,0x441A,0x443A,0x445B,0x3C3A,0x3BF9,0x33B8,0x3BF9,0x09F2,0x012F,0x0130,0x0150,0x0191,0x0190,0x1AD5,0x3C19,0x3C19,0x33F9,0x3C19,0x445A,0x445A,0x443A,0x4C7B,0x5C9C,0x3357,0x010F,0x00EE,0x3B57,0x5CBC,0x443A,0x445A,0x447B,0x447B,0x447B,0x3C5A,0x449B,0x44BB,0x44BB,0x449B,0x4CBC,0x4CBC,0x449B,0x449B,0x4CBB,0x449A,0x447A,0x445A,0x4C7B,0x43D9,0x012F,0x112F,0x1930,0x1930,0x2150,0x2130,0x2130,0x2130,0x2150,0x2150,0x1950,0x1950,0x112F,0x112F,0x112F,0x110F,0x110F,0x10EF,0x08EF,0x10EF,0x110F,0x110F,0x1910,0x2110,0x2130,0x2930,0x2930,0x2930,0x2110,0x2130,0x2130,0x2131,0x2152,0x1952,0x1953,0x1175,0x11D7,0x11D8,0x09D8,0x09F9,0x01D9,0x01D9,0x01D9,0x01D9,0x09F9,0x09D8,0x09F8,0x11D7,0x1195,0x1154,0x1132,0x1932,0x1932,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x1911,0x1931,0x1931,0x1910,0x2131,0x2151,0x1911,0x1911,0x1931,0x1931,0x1952,0x1973,0x1952,0x1132,0x1153,0x1195,0x19D6,0x19D6,0x21F7,0x1995,0x0933,0x1112,0x1132,0x1952,0x1932,0x1932,0x1911,0x1111,0x1132,0x1153,0x1174,0x19D6,0x19F6,0x19D6,0x21F6,0x1994,0x1132,0x1112,0x1932,0x1931,0x2132,0x1911,0x2131,0x1931,0x2131,0x2131,0x2110,0x1910,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x20F0, + 0x2910,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x2910,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2910,0x2110,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x2130,0x2950,0x2151,0x2131,0x1931,0x1931,0x1132,0x1154,0x1175,0x11B6,0x11D7,0x11F8,0x11F9,0x11F9,0x11D8,0x19D7,0x1996,0x1154,0x1113,0x1112,0x1912,0x1931,0x2131,0x2151,0x2131,0x2131,0x1931,0x1931,0x1931,0x1931,0x1111,0x1131,0x1112,0x1932,0x1932,0x1932,0x1932,0x1112,0x1912,0x1112,0x1112,0x1112,0x1112,0x1112,0x1912,0x1912,0x1932,0x1932,0x1112,0x1112,0x1933,0x1132,0x1132,0x1112,0x1132,0x1112,0x1112,0x1112,0x1133,0x1112,0x1133,0x0933,0x0934,0x1196,0x11D8,0x1A19,0x1218,0x1218,0x11F7,0x0996,0x0954,0x0933,0x1111,0x1111,0x1931,0x2131,0x2150,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2110,0x2910,0x2910,0x2930,0x2910,0x210F,0x2930,0x2930,0x2910,0x210F,0x2130,0x2110,0x2930,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x2110,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2930,0x210F,0x210F,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x290F,0x2930,0x290F,0x2910,0x2910,0x2910,0x2910,0x2130,0x2130,0x2130,0x2110,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x2910,0x2930,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x212F,0x212F,0x2110,0x2110,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2910,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2930,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2930,0x2910,0x2930,0x2910,0x2130,0x210F,0x210F,0x2130,0x212F,0x212F,0x2130,0x2150,0x212F,0x1950,0x112F,0x094F,0x0170,0x3377,0x3C3A,0x2C19,0x2C3A,0x2419,0x2C39,0x2C19,0x343A,0x3C3A,0x3377,0x09B1,0x0950,0x1150,0x0950,0x0950,0x0150,0x01B1,0x2BD9,0x2C1A,0x2419,0x2419,0x241A,0x2378,0x012F,0x00EE,0x112F,0x192F,0x192F,0x192F,0x1950,0x1950,0x1150,0x092F,0x012F,0x0190,0x23F9,0x1C19,0x1419,0x13F8,0x1BF9,0x347B,0x0212,0x010E,0x010E,0x092F,0x1950,0x1950,0x2130,0x2130,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x292F,0x292F,0x292F,0x290F,0x292F,0x212F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x212F,0x292F,0x292F,0x2130,0x2930,0x2930,0x2930,0x2110,0x2930,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x1153,0x1195,0x21F7,0x21F7,0x19D6,0x19D6,0x1174,0x1953,0x1912,0x1911,0x2111,0x2131,0x2931,0x2130,0x2130,0x2110,0x212F,0x212F,0x2150,0x2130,0x2130,0x2130,0x2110,0x2130,0x1911,0x1932,0x1133,0x19B5,0x2A17,0x21F7,0x1154,0x1132,0x1932,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x290F,0x210F,0x290F,0x290F,0x210F,0x2930,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1932,0x1112,0x21B5,0x21F6,0x21D6,0x1974,0x1112,0x1911,0x2131,0x2131,0x2131,0x2130,0x2130,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x2930,0x2910,0x2930,0x2910,0x290F,0x292F,0x290F,0x290F,0x28EE,0x28CD,0x200A,0xA396,0xDCDA,0xDC99,0xDC98,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xDC36,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC36,0xE457,0xDC36,0xDC36,0xDC37,0xDC57,0xDC37,0xE457,0xDC37,0xDC37,0xDC57,0xDC37,0xDC57,0xDC57,0xDC58,0xDC78,0xDC79,0xDCBA,0xFE1F,0x6A11,0x308C,0x28CD,0x28EE,0x290F,0x290F,0x290F,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x290F,0x2930,0x210F,0x292F,0x292F,0x210F,0x2930,0x2110,0x2910,0x290F,0x2930,0x290F,0x290F,0x290F,0x292F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x210F,0x210F,0x2930,0x2930,0x210F,0x290F,0x210F,0x290F,0x2930,0x2930,0x210F,0x210F,0x2930,0x210F,0x210F,0x2930,0x2910,0x2910,0x2930,0x2130,0x2130,0x2130,0x2110,0x1931,0x1132,0x1153,0x0974,0x11B6,0x11B7,0x11B7,0x11F8,0x11F8,0x11F8,0x11D8,0x1A18,0x19F8,0x0975,0x0934,0x1133,0x1952,0x1931,0x2111,0x2130,0x2110,0x2130,0x2930,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x2930,0x290F,0x290F,0x2930,0x212F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2130,0x210F,0x2110,0x212F,0x212F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2111,0x1932,0x1113,0x19D6,0x1A18,0x11D6,0x11B5,0x1132,0x1931,0x2130,0x210F,0x212F,0x2150,0x2950,0x2130,0x210F,0x2930,0x2110,0x2130,0x2950,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x212F,0x192F,0x110F,0x00CD,0x549B,0x54FD,0x345A,0x2C3A,0x2C19,0x2419,0x2419,0x1BD8,0x23F8,0x1BF8,0x23F8,0x23D8,0x23F8,0x2BF8,0x3419,0x3419,0x3C39,0x43D8,0x014F,0x0950,0x1150,0x1150,0x1170,0x1170,0x012F,0x4BD9,0x64FD,0x4C7B,0x3419,0x23F8,0x2C19,0x2C19,0x3C9B,0x3C9B,0x3C7A,0x2356,0x0170,0x0150,0x0170,0x0191,0x0A94,0x449B,0x347A,0x2C39,0x2C39,0x23F9,0x2C19,0x2BF8,0x3439,0x3C5A,0x4C5B,0x0A12,0x010F,0x012F,0x4C3A,0x443A,0x33F9,0x2C19,0x2419,0x1BD8,0x2419,0x1BF8,0x2439,0x2419,0x2419,0x1C18,0x2419,0x1C18,0x1C18,0x1BF8,0x23F8,0x23F8,0x2C39,0x3459,0x3C5A,0x4419,0x012F,0x112F,0x192F,0x1930,0x192F,0x2130,0x2150,0x2150,0x1950,0x1950,0x1150,0x0950,0x014F,0x012E,0x010E,0x010E,0x00EE,0x00EE,0x00EE,0x00CE,0x00CE,0x00EF,0x1110,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2132,0x1953,0x1154,0x1196,0x11D7,0x09F8,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x09D8,0x09B7,0x0996,0x1175,0x1133,0x1133,0x1132,0x1932,0x1932,0x1932,0x1911,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1932,0x1911,0x1911,0x1911,0x1911,0x2131,0x1911,0x1911,0x1931,0x1932,0x1911,0x1911,0x1911,0x1931,0x1932,0x1952,0x1932,0x1932,0x1932,0x1132,0x1952,0x1153,0x1132,0x0933,0x1195,0x19B6,0x19D6,0x19D6,0x1995,0x1154,0x1112,0x1132,0x1932,0x1932,0x1912,0x1932,0x1912,0x1112,0x1153,0x1174,0x19B6,0x19F6,0x21F7,0x21F6,0x1995,0x1133,0x1132,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x20F0, + 0x2910,0x2110,0x2910,0x2930,0x210F,0x210F,0x2910,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2910,0x2910,0x2910,0x210F,0x290F,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x212F,0x292F,0x290F,0x292F,0x212F,0x2130,0x2130,0x2950,0x2151,0x2131,0x1931,0x1952,0x1132,0x1133,0x1175,0x1196,0x11D7,0x1A19,0x11F9,0x19F9,0x11D8,0x11B7,0x1176,0x1154,0x1133,0x1112,0x1911,0x1911,0x2131,0x2111,0x2131,0x1910,0x2131,0x1930,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1932,0x1911,0x1932,0x1932,0x1911,0x1912,0x1912,0x1911,0x2132,0x1911,0x1931,0x1932,0x1911,0x1911,0x1931,0x1931,0x1932,0x1931,0x1931,0x1911,0x1911,0x1932,0x1932,0x1112,0x1932,0x1153,0x0933,0x0954,0x1196,0x11D7,0x1A18,0x1A19,0x1218,0x11D7,0x11B6,0x0954,0x1133,0x1112,0x1111,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x212F,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2910,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x210F,0x2910,0x2930,0x2910,0x2930,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2910,0x2110,0x2910,0x2910,0x2110,0x2130,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x2130,0x212F,0x2930,0x2930,0x2930,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x2930,0x2910,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2110,0x210F,0x2910,0x210F,0x212F,0x2930,0x2930,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x212F,0x210F,0x2930,0x290F,0x2930,0x210F,0x210F,0x2110,0x212F,0x212F,0x210F,0x210F,0x2930,0x212F,0x2930,0x2110,0x210F,0x210F,0x212F,0x2930,0x210F,0x290F,0x290F,0x2930,0x2930,0x212F,0x290F,0x2930,0x290F,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x292F,0x212F,0x292F,0x212F,0x290F,0x210F,0x292F,0x212F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2930,0x2130,0x2930,0x212F,0x212F,0x2930,0x2930,0x2930,0x210F,0x2910,0x2910,0x2930,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x192F,0x112F,0x092F,0x0150,0x3BB9,0x33F9,0x23D8,0x23F9,0x1BD8,0x1BD8,0x1BD8,0x1BD8,0x1BD8,0x23D8,0x33D9,0x2B57,0x0170,0x014F,0x0950,0x0950,0x0150,0x01D2,0x2BD9,0x23F9,0x1BD9,0x1BF9,0x2C1A,0x2B98,0x014F,0x090E,0x192F,0x190F,0x214F,0x214F,0x192F,0x1950,0x112F,0x112F,0x010F,0x01B0,0x2BF9,0x1C19,0x13F8,0x13F9,0x1BF9,0x345B,0x0A12,0x012F,0x0970,0x1170,0x1950,0x1930,0x2130,0x210F,0x212F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2930,0x290F,0x2930,0x210F,0x2930,0x2930,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x210F,0x210F,0x2130,0x212F,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x1153,0x1174,0x19D6,0x21F7,0x2217,0x19D6,0x1974,0x1133,0x1932,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x1995,0x2A38,0x2A17,0x1174,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x292F,0x292F,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2930,0x2930,0x212F,0x210F,0x292F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1933,0x1133,0x21B5,0x21F7,0x21D6,0x1974,0x1112,0x1932,0x2151,0x2131,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2950,0x2930,0x290F,0x28CE,0x208C,0x282A,0xCC9A,0xDCDA,0xDC99,0xDC98,0xDC57,0xDC37,0xDC57,0xDC57,0xDC36,0xDC37,0xDC37,0xDC36,0xE457,0xDC37,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xDC36,0xE457,0xDC37,0xDC37,0xE457,0xE457,0xDC36,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC78,0xDC99,0xDC99,0xD4BA,0x618F,0x286B,0x30EE,0x28EE,0x20EE,0x290F,0x2930,0x2930,0x2930,0x2110,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x210F,0x210F,0x2110,0x2930,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2930,0x2930,0x290F,0x210F,0x2930,0x210F,0x210F,0x2910,0x290F,0x2930,0x2910,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x290F,0x2110,0x2110,0x210F,0x2930,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2130,0x2110,0x2130,0x2130,0x2110,0x1911,0x1132,0x1154,0x11D6,0x19F7,0x11B7,0x09B7,0x11D7,0x11D7,0x11D7,0x11B7,0x11F8,0x1A19,0x19F8,0x1196,0x1175,0x1133,0x1932,0x2111,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x212F,0x212F,0x2930,0x2130,0x212F,0x212F,0x2930,0x2910,0x2930,0x2930,0x2930,0x292F,0x212F,0x212F,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2110,0x2110,0x1911,0x1932,0x1133,0x19D6,0x11F7,0x11D6,0x1195,0x1131,0x1910,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x210F,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x210F,0x292F,0x290F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x192F,0x110F,0x010E,0x445A,0x345A,0x2439,0x1C19,0x13F8,0x1419,0x13F8,0x13F8,0x13F8,0x1C18,0x1C18,0x1BF8,0x1BF8,0x1BF8,0x23F8,0x2BD8,0x33F8,0x3BD8,0x014F,0x0950,0x1150,0x1150,0x1150,0x1150,0x0950,0x0190,0x4C1A,0x445A,0x2C3A,0x23F9,0x13B8,0x13B8,0x1BF8,0x1C18,0x2439,0x23F8,0x1316,0x01F1,0x01D1,0x0233,0x23F9,0x2419,0x1C19,0x13F8,0x13F8,0x13F8,0x1BD8,0x23F8,0x23F8,0x3C3A,0x3398,0x0190,0x012F,0x0150,0x3BF9,0x33F9,0x2C19,0x23F8,0x1BD8,0x1BF9,0x1C19,0x1418,0x1419,0x1419,0x1439,0x1418,0x1418,0x1418,0x13F8,0x1418,0x1BF8,0x1BF8,0x2418,0x2C18,0x3C5A,0x4419,0x010E,0x1150,0x1930,0x1930,0x1930,0x2130,0x2130,0x2150,0x1950,0x1150,0x0970,0x0170,0x01D0,0x0A93,0x2376,0x3418,0x3C7A,0x447B,0x4C9B,0x4C7B,0x549C,0x3B78,0x0130,0x1110,0x1930,0x1930,0x2130,0x2130,0x2130,0x2130,0x2110,0x1911,0x1932,0x1933,0x19B5,0x19F7,0x11D8,0x09D8,0x09D9,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x09FA,0x01D9,0x09F9,0x09D8,0x09B7,0x0976,0x0955,0x0934,0x0912,0x1112,0x1132,0x1112,0x1112,0x1932,0x1912,0x1912,0x1932,0x1932,0x1912,0x1912,0x1111,0x1912,0x1912,0x1112,0x1112,0x1112,0x1112,0x1912,0x1112,0x1912,0x1912,0x1912,0x1912,0x1112,0x1112,0x1932,0x1932,0x1112,0x1932,0x1932,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x0912,0x0953,0x11B5,0x21F7,0x19F7,0x19B6,0x1174,0x1154,0x1133,0x1132,0x1932,0x1912,0x1932,0x1932,0x1912,0x1133,0x1954,0x1174,0x19B6,0x19F7,0x21F7,0x19D6,0x1974,0x1112,0x1112,0x1931,0x1931,0x1931,0x1930,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910, + 0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x210F,0x290F,0x290F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2930,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x212F,0x212F,0x292F,0x212F,0x2930,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2151,0x1931,0x1931,0x1132,0x1153,0x1175,0x11B6,0x11D8,0x19F9,0x19F9,0x11D8,0x19D8,0x19D7,0x1196,0x1174,0x1133,0x1932,0x1931,0x1931,0x2131,0x2110,0x2130,0x2130,0x2130,0x1930,0x2130,0x1930,0x1910,0x1930,0x1930,0x1931,0x1931,0x1931,0x1931,0x1911,0x2111,0x1911,0x1911,0x2131,0x2131,0x2111,0x1911,0x1910,0x1931,0x1931,0x1910,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1132,0x1133,0x1155,0x1196,0x11D7,0x1218,0x1A19,0x1A19,0x11D7,0x11B6,0x1155,0x1133,0x1112,0x1111,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2910,0x2910,0x2930,0x290F,0x2930,0x2910,0x2910,0x292F,0x290F,0x2110,0x2910,0x2110,0x2930,0x2910,0x2910,0x290F,0x2930,0x210F,0x2910,0x2930,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2930,0x210F,0x212F,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x2910,0x210F,0x212F,0x212F,0x210F,0x292F,0x212F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x2930,0x210F,0x212F,0x2930,0x210F,0x210F,0x2930,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x210F,0x210F,0x2930,0x2930,0x2930,0x210F,0x2110,0x2130,0x2130,0x212F,0x290F,0x2930,0x212F,0x212F,0x2110,0x2110,0x210F,0x212F,0x210F,0x212F,0x2930,0x290F,0x2910,0x2930,0x212F,0x212F,0x210F,0x2930,0x292F,0x210F,0x2910,0x2910,0x210F,0x210F,0x290F,0x2930,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x2930,0x2930,0x292F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2930,0x2930,0x210F,0x2930,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x2930,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x2910,0x290F,0x290F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2150,0x192F,0x112F,0x012F,0x22B5,0x3BF9,0x23B8,0x1BB8,0x1BD9,0x13D9,0x13D8,0x13B8,0x13D8,0x1BF9,0x1BD8,0x23B8,0x33D8,0x1A74,0x014F,0x014F,0x0970,0x0150,0x01D2,0x33D9,0x23D9,0x23F9,0x23F9,0x23D9,0x2B98,0x014F,0x08EE,0x192F,0x192F,0x212F,0x2150,0x214F,0x1950,0x110F,0x112F,0x092F,0x0170,0x2BF9,0x1BD9,0x1BF9,0x1BF9,0x23F9,0x3C3A,0x01B1,0x010F,0x0970,0x1150,0x1950,0x2130,0x2130,0x212F,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x2930,0x2910,0x2930,0x210F,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2130,0x210F,0x210F,0x212F,0x212F,0x292F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1932,0x1133,0x1153,0x1195,0x21F6,0x2217,0x2217,0x19D6,0x1974,0x1133,0x1912,0x18F1,0x2131,0x2130,0x2130,0x2130,0x2130,0x2150,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1953,0x1133,0x1975,0x2A17,0x2A17,0x1974,0x1112,0x1932,0x1931,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2910,0x290F,0x290F,0x2930,0x210F,0x2930,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x210F,0x2930,0x2930,0x290F,0x2930,0x2910,0x2110,0x2930,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x2130,0x210F,0x2130,0x2130,0x2131,0x2131,0x1932,0x1933,0x1113,0x21B5,0x21F7,0x21D6,0x1974,0x1112,0x2152,0x2152,0x2151,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x28CE,0x204B,0x48ED,0xDCFC,0xDCBA,0xDC98,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC36,0xDC37,0xDC36,0xDC37,0xDC37,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xE457,0xDC36,0xDC37,0xE457,0xE477,0xDC36,0xDC37,0xDC37,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC58,0xDC78,0xD479,0xCC79,0x8AB3,0x2809,0x30CD,0x28ED,0x20EE,0x290F,0x290F,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x2110,0x2110,0x210F,0x2110,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2110,0x212F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2930,0x212F,0x2930,0x210F,0x2930,0x290F,0x2930,0x212F,0x210F,0x2130,0x2130,0x2130,0x2111,0x1911,0x1133,0x1195,0x19F7,0x11F8,0x0996,0x0996,0x0996,0x0976,0x0976,0x0976,0x0996,0x19F8,0x1A19,0x11D8,0x1996,0x1133,0x1932,0x1911,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x212F,0x2930,0x2930,0x212F,0x212F,0x2930,0x210F,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2110,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x1911,0x1932,0x1133,0x11D6,0x19F7,0x11D6,0x1194,0x1131,0x1931,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x292F,0x2930,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x192F,0x090F,0x010E,0x3C3A,0x2419,0x13F8,0x1419,0x1419,0x1419,0x0C18,0x0C18,0x0BF8,0x1418,0x1418,0x13F8,0x1BF8,0x1BF8,0x23F8,0x2BF8,0x33F8,0x33B8,0x0170,0x0950,0x1150,0x1150,0x1150,0x1170,0x1170,0x0150,0x1253,0x445B,0x23F9,0x1BF8,0x13D8,0x13D8,0x0BD8,0x1418,0x1419,0x1C18,0x1BD8,0x02B4,0x0232,0x0B16,0x13D8,0x1418,0x0BF8,0x0BF8,0x0BF8,0x1419,0x1BF8,0x1BF8,0x2C19,0x3C3A,0x1274,0x0170,0x014F,0x0190,0x3BF9,0x2BD9,0x23D8,0x1BF8,0x1BF8,0x13F8,0x13F8,0x0C19,0x0BF8,0x0BF8,0x0C19,0x0C18,0x0C19,0x0BF8,0x0C18,0x1418,0x13F8,0x1C19,0x1C19,0x2439,0x345A,0x3BD9,0x012F,0x1130,0x1930,0x1930,0x2130,0x2130,0x2130,0x2150,0x1150,0x094F,0x1212,0x3BD8,0x3C5A,0x3C9A,0x349A,0x2479,0x2459,0x2439,0x2C7A,0x3C7A,0x44BC,0x441A,0x0130,0x0930,0x1130,0x1930,0x2110,0x2130,0x2130,0x2130,0x2110,0x2131,0x1912,0x1133,0x1995,0x11B7,0x09D8,0x09D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x09F9,0x09D9,0x09D8,0x09B7,0x0996,0x1175,0x0934,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1133,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1112,0x1113,0x1113,0x0912,0x0913,0x1133,0x1134,0x19B5,0x2A38,0x2217,0x19D6,0x1995,0x1154,0x1133,0x1112,0x1932,0x1912,0x1912,0x1912,0x1912,0x1112,0x1134,0x1975,0x19B6,0x21F7,0x21F7,0x21D6,0x1995,0x1133,0x1112,0x1911,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930, + 0x2910,0x2110,0x2110,0x2930,0x2910,0x2930,0x2910,0x2910,0x210F,0x210F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2910,0x2110,0x2130,0x2930,0x290F,0x210F,0x212F,0x210F,0x292F,0x212F,0x2930,0x210F,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1974,0x1175,0x1196,0x11B7,0x19F8,0x19F8,0x19F9,0x19D8,0x11B7,0x1196,0x1154,0x1133,0x1112,0x1932,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1910,0x2131,0x2131,0x2131,0x2132,0x1932,0x1132,0x1154,0x1195,0x11B6,0x11D7,0x1218,0x1A19,0x1A19,0x11D8,0x1196,0x0955,0x1134,0x1112,0x1912,0x1911,0x2151,0x2951,0x2951,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x210F,0x2130,0x2110,0x2110,0x2910,0x210F,0x2110,0x2130,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2930,0x290F,0x290F,0x2930,0x292F,0x2930,0x292F,0x292F,0x290F,0x210F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x2930,0x2130,0x2130,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x212F,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x2930,0x290F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x290F,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x292F,0x2930,0x210F,0x2910,0x2910,0x2930,0x290F,0x2910,0x210F,0x2110,0x2910,0x2910,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x290F,0x290F,0x2930,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x2110,0x2110,0x2130,0x2930,0x290F,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2930,0x2130,0x210F,0x2930,0x212F,0x2930,0x212F,0x2930,0x212F,0x212F,0x212F,0x2110,0x210F,0x2130,0x212F,0x2130,0x2130,0x2130,0x210F,0x2110,0x2930,0x212F,0x2930,0x290F,0x2910,0x2110,0x2910,0x2910,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x292F,0x290F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x214F,0x192F,0x090F,0x0970,0x43D9,0x2B98,0x1BB9,0x1BF9,0x13F9,0x13D9,0x13F9,0x13D9,0x13D9,0x13D9,0x1BD8,0x1BB8,0x2377,0x3357,0x0190,0x014F,0x0150,0x0130,0x01B1,0x33B9,0x2BD9,0x23F9,0x23F9,0x23D9,0x2B78,0x012F,0x08EE,0x192F,0x212F,0x212F,0x212F,0x212F,0x192F,0x192F,0x112F,0x010F,0x0170,0x33F9,0x1BF9,0x241A,0x23F9,0x23D9,0x33FA,0x0150,0x010F,0x1170,0x1970,0x1950,0x2150,0x2130,0x2130,0x210F,0x210F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2930,0x290F,0x290F,0x290F,0x2910,0x290F,0x210F,0x290F,0x290F,0x292F,0x212F,0x292F,0x292F,0x292F,0x2930,0x2930,0x292F,0x290F,0x2930,0x2910,0x2930,0x2930,0x2130,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1932,0x1953,0x1153,0x1195,0x19D6,0x2217,0x21F7,0x19B5,0x1174,0x1133,0x1912,0x1911,0x2131,0x2130,0x2110,0x2130,0x212F,0x2150,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1953,0x1153,0x1995,0x2A17,0x2A17,0x1974,0x1112,0x1932,0x2131,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x2110,0x210F,0x2130,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2110,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2131,0x2111,0x1912,0x1932,0x1113,0x21B5,0x21F6,0x21F6,0x1974,0x1112,0x1932,0x2151,0x2151,0x2131,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x310E,0x284B,0x8293,0xDCDB,0xDC99,0xDC99,0xDC78,0xDC57,0xDC37,0xDC57,0xDC37,0xDC57,0xE457,0xDC36,0xDC36,0xDC36,0xE457,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC36,0xE457,0xDC36,0xDC36,0xDC37,0xE457,0xDC36,0xDC37,0xDC37,0xDC37,0xDC57,0xDC36,0xDC36,0xDC37,0xDC57,0xDC58,0xDC58,0xD478,0xD499,0xD4BA,0x510D,0x202A,0x28CD,0x290E,0x290F,0x2930,0x2930,0x210F,0x210F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2930,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x210F,0x2930,0x2930,0x2930,0x2910,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2110,0x2930,0x210F,0x292F,0x210F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2130,0x212F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2131,0x2131,0x1932,0x1154,0x19F7,0x19F8,0x11D8,0x0976,0x0975,0x0955,0x0135,0x0134,0x0134,0x0955,0x11B7,0x11F8,0x19F8,0x19D7,0x1134,0x1932,0x2131,0x2131,0x2930,0x210F,0x210F,0x2910,0x210F,0x210F,0x212F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2110,0x2130,0x1931,0x1932,0x1133,0x11B5,0x19F7,0x19F7,0x1194,0x1111,0x1931,0x1910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x192F,0x192F,0x090E,0x012E,0x3C5A,0x1C19,0x1419,0x1439,0x0C19,0x0C18,0x0C18,0x0C18,0x0C18,0x0BF8,0x1418,0x13F8,0x13F8,0x1BF8,0x23F8,0x23D8,0x33F8,0x3397,0x0150,0x0950,0x1150,0x1150,0x1150,0x1170,0x1150,0x0950,0x0170,0x3398,0x2C19,0x1BF9,0x13F8,0x1419,0x0BD8,0x0BF8,0x0C18,0x0C18,0x1418,0x0BB7,0x0315,0x0BB7,0x1418,0x0BF8,0x0C19,0x0BF8,0x0BF8,0x13F8,0x1BF9,0x23F9,0x2C19,0x2357,0x01F2,0x014F,0x014F,0x01B1,0x3BF9,0x23B8,0x23D8,0x1BD8,0x13D8,0x13F8,0x1419,0x0C19,0x0C19,0x0C19,0x0418,0x0C19,0x0C19,0x0C19,0x0BF8,0x0BF8,0x1419,0x1419,0x1BF8,0x23F8,0x3439,0x4419,0x012F,0x1150,0x1930,0x1930,0x2150,0x2130,0x1930,0x1950,0x1150,0x012F,0x3BB8,0x447B,0x2418,0x1C18,0x1418,0x1418,0x0BF8,0x0BD8,0x1418,0x2419,0x345A,0x33B9,0x0170,0x0950,0x1130,0x1930,0x1930,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1133,0x21D7,0x19F7,0x09D8,0x09D9,0x01D9,0x01FA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x09FA,0x09D9,0x09D9,0x11D8,0x11B8,0x1196,0x11B6,0x1195,0x1995,0x1995,0x1995,0x1994,0x1994,0x1995,0x1994,0x1974,0x1994,0x1974,0x1994,0x1994,0x1974,0x1974,0x1974,0x1994,0x1994,0x1974,0x1974,0x1974,0x1974,0x1974,0x1994,0x1994,0x1974,0x1974,0x1974,0x1974,0x1994,0x1994,0x1994,0x1995,0x1995,0x21B5,0x21D5,0x21D6,0x21D6,0x21D6,0x21F6,0x19F6,0x21D6,0x1995,0x1153,0x1133,0x1932,0x1932,0x1912,0x1912,0x1912,0x1912,0x1113,0x1134,0x1155,0x1996,0x21F8,0x19D7,0x21F7,0x1995,0x1133,0x1132,0x1931,0x1931,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910, + 0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x2910,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x1931,0x2152,0x1932,0x1954,0x1175,0x1196,0x11B7,0x19F8,0x11D9,0x11F9,0x11F8,0x11B7,0x1196,0x1154,0x1133,0x1112,0x1931,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x1910,0x2130,0x2130,0x2130,0x2131,0x1931,0x1952,0x1132,0x1153,0x1175,0x11B6,0x11D7,0x11F8,0x1A39,0x11F9,0x11D8,0x11B7,0x1175,0x1133,0x1112,0x10F1,0x2131,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x212F,0x210F,0x2130,0x2130,0x210F,0x210F,0x2910,0x2930,0x210F,0x2930,0x290F,0x2930,0x290F,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x2930,0x2110,0x2110,0x212F,0x212F,0x210F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2110,0x210F,0x2110,0x2930,0x210F,0x2130,0x2130,0x2110,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x212F,0x292F,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x2110,0x2910,0x2910,0x212F,0x212F,0x2930,0x290F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2930,0x2110,0x2930,0x2110,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x2130,0x210F,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x2930,0x2910,0x2910,0x2910,0x210F,0x2910,0x2930,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x2910,0x2910,0x290F,0x292F,0x2930,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x214F,0x192F,0x090F,0x1A13,0x441A,0x2BB9,0x1BD9,0x13D9,0x13B9,0x13D9,0x13D9,0x13F9,0x13D9,0x1BF9,0x1BD9,0x23D9,0x2B98,0x3378,0x09D1,0x012F,0x012F,0x0130,0x01B1,0x33D9,0x341A,0x2C1A,0x23FA,0x2BF9,0x2B78,0x012F,0x08EE,0x194F,0x212F,0x212F,0x212F,0x212F,0x212F,0x192F,0x112F,0x010F,0x0170,0x33F9,0x23D9,0x23F9,0x23F9,0x2BF9,0x33D9,0x012F,0x010F,0x1170,0x1950,0x1930,0x2130,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x290F,0x2910,0x2910,0x290F,0x290F,0x292F,0x292F,0x292F,0x212F,0x2930,0x292F,0x2930,0x292F,0x292F,0x292F,0x290F,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2110,0x2930,0x212F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1953,0x1174,0x1195,0x21F7,0x2217,0x19D6,0x1995,0x1954,0x1953,0x1911,0x1931,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x1931,0x1932,0x1132,0x1153,0x1995,0x2A17,0x2A17,0x1994,0x1112,0x1912,0x1931,0x2131,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x210F,0x212F,0x2910,0x2110,0x212F,0x212F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2930,0x210F,0x290F,0x2110,0x2110,0x2110,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1912,0x1932,0x1113,0x21B5,0x21F6,0x21D6,0x1994,0x1112,0x1932,0x2151,0x2151,0x2130,0x2130,0x2130,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290E,0x310E,0x306B,0xABD8,0xD4BA,0xDC99,0xDC78,0xDC78,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC37,0xDC36,0xDC36,0xE457,0xDC37,0xDC57,0xDC37,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC36,0xDC36,0xDC37,0xE437,0xDC37,0xE457,0xDC37,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xDC37,0xDC58,0xDC58,0xDC78,0xD479,0xD479,0x92F3,0x2008,0x288B,0x30EE,0x290F,0x292F,0x290F,0x2930,0x290F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x210F,0x290F,0x210F,0x2910,0x290F,0x210F,0x2930,0x2930,0x292F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x2910,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1175,0x19F8,0x19F8,0x11D8,0x0976,0x0955,0x0935,0x0134,0x0934,0x0134,0x0155,0x0976,0x11F8,0x1A19,0x19D7,0x1155,0x1112,0x2131,0x2111,0x2110,0x2930,0x2910,0x2910,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x212F,0x2930,0x212F,0x212F,0x210F,0x2930,0x290F,0x212F,0x2930,0x2110,0x2130,0x2130,0x2930,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x292F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1932,0x1133,0x19D6,0x11F6,0x11D6,0x1195,0x1132,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2130,0x2110,0x2130,0x2110,0x2930,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x1930,0x112F,0x090E,0x012F,0x345A,0x1C19,0x0C19,0x0C39,0x0C19,0x0C39,0x0C18,0x0BF8,0x0BF8,0x0BF8,0x0BF8,0x0BD8,0x1BF8,0x1BD8,0x23D8,0x23D8,0x33F8,0x2B77,0x014F,0x0950,0x1150,0x1970,0x1150,0x1150,0x1150,0x0950,0x0150,0x1253,0x345A,0x1BF9,0x1419,0x1419,0x0C18,0x0C18,0x0C18,0x0C18,0x0C18,0x0C18,0x03D7,0x0BF8,0x0C18,0x03F8,0x0C39,0x0C18,0x0BF8,0x13F8,0x1C19,0x23F9,0x3419,0x0212,0x0190,0x012F,0x012F,0x01B1,0x441A,0x2BB8,0x23D8,0x1BD8,0x13F8,0x1419,0x0BF8,0x0C18,0x0C39,0x0419,0x0419,0x03F8,0x0419,0x0C19,0x0C19,0x0BF8,0x13F9,0x13F8,0x1BF9,0x23F9,0x3419,0x43F9,0x012F,0x1130,0x1930,0x1930,0x2130,0x2150,0x1930,0x1950,0x1150,0x012F,0x33B8,0x3439,0x1C18,0x1418,0x0BF8,0x03F8,0x0C18,0x0C19,0x1439,0x1C19,0x2C5A,0x2BB8,0x0170,0x0930,0x1150,0x1130,0x1930,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1153,0x11B5,0x11D7,0x09D8,0x09F9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x09D9,0x09F9,0x11D9,0x11B8,0x11D7,0x2238,0x2217,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x3237,0x2A37,0x2A37,0x2A17,0x2A17,0x2A16,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x3237,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x29F6,0x2A17,0x29F6,0x2A17,0x21F6,0x21F6,0x21F6,0x21F6,0x19B5,0x19B5,0x19B5,0x1994,0x1974,0x1933,0x1112,0x1912,0x1912,0x1912,0x1912,0x1933,0x1933,0x1134,0x1155,0x19B7,0x21F8,0x21F8,0x21F7,0x1975,0x1133,0x1112,0x1911,0x2151,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x2930,0x2130,0x210F,0x2130,0x2130,0x2130,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2110,0x2910,0x2930, + 0x2110,0x2110,0x210F,0x2110,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x212F,0x2930,0x212F,0x210F,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x2152,0x1932,0x1133,0x1155,0x1196,0x11B7,0x19D8,0x11F9,0x11F9,0x19F9,0x11B7,0x1196,0x1154,0x1133,0x1132,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x210F,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1132,0x1133,0x1175,0x1196,0x11D8,0x1A39,0x1A39,0x1A19,0x11D8,0x1197,0x1155,0x1134,0x1113,0x18F2,0x1911,0x2111,0x2111,0x2110,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2930,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x210F,0x212F,0x210F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x292F,0x212F,0x210F,0x290F,0x2930,0x2930,0x2130,0x2130,0x2130,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x212F,0x2930,0x2910,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x2930,0x292F,0x212F,0x212F,0x210F,0x292F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x290F,0x290F,0x2110,0x2110,0x2910,0x210F,0x2930,0x292F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x2130,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2110,0x2110,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x212F,0x210F,0x290F,0x210F,0x2930,0x2930,0x292F,0x212F,0x2930,0x2930,0x2930,0x2130,0x212F,0x2130,0x2930,0x2110,0x2910,0x2930,0x292F,0x292F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x214F,0x192F,0x00EE,0x2AB5,0x4C5B,0x2BD9,0x23FA,0x13D9,0x13D9,0x13D9,0x13D9,0x13F9,0x13D9,0x13D9,0x1BD9,0x1BB8,0x2BB8,0x3B98,0x09D1,0x012F,0x0130,0x0130,0x01B2,0x33DA,0x23B9,0x23D9,0x23D9,0x2BD9,0x33B9,0x014F,0x090E,0x192F,0x212F,0x214F,0x212F,0x210F,0x212F,0x1950,0x112F,0x010F,0x0170,0x33D9,0x2BF9,0x23B9,0x23D9,0x2BF9,0x443A,0x0170,0x0950,0x1150,0x1930,0x2150,0x2130,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x212F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x210F,0x2930,0x2930,0x290F,0x292F,0x292F,0x212F,0x292F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2131,0x2131,0x1931,0x1932,0x1953,0x1974,0x1995,0x19D6,0x19F7,0x19B5,0x1995,0x1994,0x1932,0x1931,0x1931,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1133,0x1133,0x1995,0x2A17,0x2A17,0x1974,0x1112,0x1912,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2110,0x2110,0x290F,0x2930,0x210F,0x290F,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x2110,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2111,0x1932,0x1932,0x1133,0x19B5,0x21D6,0x21D6,0x1974,0x1132,0x1952,0x2152,0x2151,0x2131,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x30EE,0x40CD,0xD4BB,0xDC9A,0xDC99,0xDC78,0xDC58,0xDC58,0xDC37,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC36,0xDC36,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC37,0xDC57,0xDC56,0xE456,0xDC36,0xE437,0xDC16,0xE437,0xE457,0xE457,0xDC57,0xDC37,0xDC37,0xDC57,0xDC37,0xDC57,0xDC17,0xDC37,0xDC58,0xDC99,0xD499,0xC439,0x594E,0x282A,0x288C,0x30EE,0x310F,0x2930,0x2930,0x2930,0x212F,0x2130,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x2930,0x2910,0x2910,0x290F,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x2930,0x210F,0x2130,0x2130,0x212F,0x2930,0x2930,0x2110,0x2930,0x2930,0x2110,0x2131,0x1911,0x1112,0x1175,0x1A18,0x1A39,0x11F8,0x0976,0x0135,0x0954,0x0934,0x0134,0x0954,0x0955,0x0976,0x1A19,0x223A,0x19D8,0x1134,0x10F2,0x2131,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x210F,0x2930,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x2110,0x1910,0x1931,0x1132,0x1153,0x19D6,0x19F7,0x19F6,0x1194,0x1132,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2910,0x2110,0x2110,0x2130,0x212F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x1930,0x112F,0x00EE,0x014F,0x3C9B,0x1C39,0x1439,0x0C39,0x03F8,0x0418,0x03F8,0x0C18,0x0BF8,0x1419,0x1C39,0x245A,0x2419,0x2C39,0x345A,0x3C5A,0x4C9B,0x3BB8,0x012F,0x1170,0x1950,0x112F,0x1930,0x1950,0x1150,0x1150,0x0130,0x014F,0x2397,0x2439,0x1419,0x0C19,0x0C18,0x0C19,0x03F8,0x0418,0x0418,0x0C39,0x03F8,0x0418,0x0418,0x0418,0x0C39,0x0C19,0x0C18,0x1419,0x1BF9,0x2C1A,0x2337,0x0170,0x014F,0x010E,0x010F,0x09D1,0x545B,0x3C1A,0x33F9,0x2C39,0x1C19,0x13F8,0x0C19,0x0C39,0x03F8,0x0419,0x0418,0x0419,0x03F8,0x03F9,0x0BF9,0x0BF9,0x1419,0x1C39,0x243A,0x343A,0x445B,0x543A,0x092F,0x1950,0x1950,0x1930,0x2130,0x1930,0x1930,0x1950,0x112F,0x010E,0x3BD8,0x345A,0x1C18,0x0C18,0x0BF8,0x0C39,0x0C18,0x0C18,0x0BF9,0x1419,0x243A,0x2BF9,0x0150,0x0950,0x1150,0x1950,0x1930,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1133,0x11B5,0x11D7,0x09D7,0x01F9,0x01D9,0x01DA,0x01B9,0x01BA,0x01BA,0x01BA,0x01BA,0x09DA,0x09FA,0x09D9,0x09D9,0x11D8,0x11B7,0x19B7,0x21F7,0x21F7,0x21F7,0x21F7,0x29F7,0x29F7,0x29F7,0x2A17,0x2A17,0x29F6,0x29F6,0x2A17,0x2A16,0x29F6,0x29F6,0x29F6,0x29F6,0x29F6,0x29D6,0x29F6,0x29F6,0x21F6,0x2A16,0x29F6,0x29F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21F6,0x21D5,0x21B5,0x21B5,0x1974,0x1953,0x1932,0x1111,0x1911,0x1911,0x1912,0x1912,0x1932,0x1113,0x1134,0x1155,0x19B7,0x21F8,0x21F8,0x21D7,0x1995,0x1133,0x1112,0x1931,0x1931,0x2151,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x2130,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2930, + 0x2110,0x210F,0x2110,0x210F,0x2910,0x2910,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x2930,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2111,0x1911,0x1933,0x1954,0x1155,0x1196,0x11B7,0x11D8,0x11F9,0x11F9,0x11F8,0x11B7,0x0976,0x1174,0x1133,0x1132,0x1931,0x2131,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1911,0x1132,0x1154,0x1175,0x11B7,0x11D8,0x1A19,0x1A19,0x11F9,0x11B8,0x1197,0x1155,0x1134,0x1933,0x18F2,0x1911,0x2111,0x2111,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x212F,0x212F,0x2930,0x2930,0x212F,0x212F,0x2930,0x212F,0x210F,0x2930,0x2110,0x2110,0x2930,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2930,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2110,0x210F,0x2910,0x2930,0x2930,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x292F,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x192F,0x00CE,0x2A95,0x4C5B,0x2BDA,0x1BD9,0x1BD9,0x13D9,0x13D9,0x13FA,0x1BFA,0x1BFA,0x13D9,0x1BD9,0x23B8,0x2BB8,0x3357,0x11F2,0x012F,0x012F,0x012F,0x01B1,0x3BDA,0x2399,0x23B9,0x23D9,0x2BFA,0x33B9,0x014F,0x08EE,0x192F,0x212F,0x212F,0x212F,0x190F,0x212F,0x1950,0x112F,0x010F,0x09B1,0x33D9,0x2BB9,0x23D9,0x2BD9,0x33FA,0x441A,0x0170,0x092F,0x1150,0x1930,0x2130,0x2130,0x212F,0x212F,0x2930,0x292F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2910,0x2110,0x2910,0x2930,0x2930,0x292F,0x292F,0x292F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x1931,0x1932,0x1953,0x1133,0x1154,0x1195,0x19B6,0x21F7,0x19D6,0x21D6,0x1994,0x1111,0x1931,0x1930,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x1133,0x1995,0x2217,0x21F7,0x1995,0x1112,0x1932,0x1931,0x2131,0x2131,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x212F,0x290F,0x2930,0x212F,0x2930,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2930,0x210F,0x290F,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x2910,0x2930,0x210F,0x2110,0x2110,0x210F,0x212F,0x292F,0x292F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2131,0x2131,0x1931,0x1932,0x1133,0x19B5,0x21F6,0x21D6,0x1994,0x1132,0x1952,0x2152,0x2151,0x2131,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x312F,0x30CD,0x596F,0xDCFC,0xDC99,0xDCB9,0xDC78,0xDC58,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC36,0xDC37,0xDC36,0xE457,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC36,0xDC56,0xDC56,0xE457,0xDC36,0xDC36,0xE437,0xE437,0xE457,0xDC36,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC37,0xDC37,0xDC58,0xDC79,0xDC79,0xD479,0xC459,0x7A72,0x200A,0x28AD,0x28EE,0x3130,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x210F,0x2910,0x2930,0x290F,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2110,0x2130,0x210F,0x210F,0x2130,0x2110,0x2930,0x2110,0x2110,0x2111,0x1912,0x1112,0x1175,0x1A18,0x1A18,0x11F8,0x0976,0x0955,0x0954,0x0954,0x0954,0x0954,0x0155,0x0976,0x1A19,0x223A,0x19D8,0x0934,0x1112,0x1911,0x2131,0x2130,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x2930,0x2930,0x290F,0x210F,0x210F,0x2930,0x212F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x292F,0x292F,0x290F,0x212F,0x212F,0x2130,0x212F,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x1931,0x1932,0x1133,0x19D6,0x19F6,0x19F6,0x1195,0x1132,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2910,0x2910,0x2930,0x2910,0x210F,0x212F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x1930,0x192F,0x08EE,0x014F,0x3C9B,0x1439,0x0C19,0x0C19,0x0418,0x0418,0x0C19,0x1419,0x1C5A,0x2C5A,0x345A,0x343A,0x3439,0x33F8,0x33B8,0x3BD8,0x545A,0x3316,0x012F,0x1150,0x194F,0x192F,0x1950,0x1950,0x1950,0x1150,0x0950,0x014F,0x0232,0x2C5A,0x1C19,0x1419,0x0C18,0x0C39,0x0418,0x0418,0x0438,0x0418,0x0418,0x0418,0x0418,0x0439,0x0418,0x0C19,0x0C39,0x13F8,0x23F9,0x2BF9,0x01B0,0x010F,0x010F,0x010F,0x0950,0x0991,0x2274,0x2AF5,0x3398,0x3C19,0x2C19,0x1BF8,0x1418,0x0418,0x0418,0x0419,0x0439,0x0439,0x03F8,0x03F8,0x0C19,0x1419,0x2C3A,0x343A,0x3419,0x3BF9,0x3B98,0x1A53,0x1150,0x1950,0x1930,0x1930,0x2130,0x1930,0x1950,0x1950,0x112F,0x00EE,0x2B77,0x345A,0x1C18,0x0BF8,0x0BF8,0x03F8,0x0C39,0x03F8,0x1439,0x13F9,0x243A,0x23B8,0x0150,0x0950,0x0930,0x1150,0x1950,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1152,0x1194,0x11D7,0x09F8,0x09F8,0x01D9,0x01D9,0x01DA,0x01BA,0x01BA,0x01BA,0x01B9,0x09FA,0x09F9,0x09D9,0x11D8,0x11B7,0x1996,0x1976,0x1995,0x1975,0x1974,0x1974,0x1974,0x1974,0x1995,0x1974,0x1994,0x1994,0x1994,0x1974,0x1994,0x1994,0x1974,0x1974,0x1994,0x1994,0x1974,0x1994,0x1974,0x1994,0x1994,0x1974,0x1994,0x1994,0x1994,0x1994,0x1994,0x1974,0x1974,0x1974,0x1974,0x1974,0x1153,0x1974,0x1974,0x1953,0x1953,0x1953,0x1133,0x1932,0x1932,0x1911,0x1911,0x1911,0x1911,0x1932,0x1932,0x1112,0x1154,0x1155,0x1996,0x2218,0x21F8,0x21D7,0x1995,0x1133,0x1112,0x1911,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x2930,0x290F, + 0x290F,0x210F,0x210F,0x2110,0x2930,0x2910,0x2910,0x2110,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x2910,0x2910,0x2110,0x2130,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x212F,0x2130,0x2930,0x212F,0x210F,0x2130,0x2130,0x2110,0x2131,0x1932,0x1932,0x1954,0x1155,0x1176,0x11B8,0x11D8,0x11F9,0x1219,0x11F8,0x11D7,0x0975,0x1154,0x1133,0x1111,0x1931,0x1931,0x2131,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x20EF,0x210F,0x20EF,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2111,0x1931,0x10F1,0x1112,0x1133,0x1175,0x1196,0x11D8,0x11F9,0x1A19,0x11F8,0x11D8,0x1197,0x1155,0x1134,0x1113,0x1912,0x2112,0x2111,0x2111,0x2111,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x2130,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x290F,0x2930,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2950,0x2930,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x2930,0x212F,0x2110,0x2930,0x2110,0x210F,0x212F,0x210F,0x2930,0x2930,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2110,0x210F,0x2110,0x2110,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x210F,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x212F,0x2930,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x1930,0x090F,0x11D2,0x4C3B,0x3C1A,0x23D9,0x1BD9,0x1BDA,0x1BD9,0x1BFA,0x1BFA,0x1BDA,0x1BD9,0x23D9,0x2BD9,0x3BFA,0x3B57,0x0970,0x010F,0x010F,0x010F,0x09B1,0x43FA,0x341A,0x2BFA,0x2BFA,0x2BD9,0x3BD9,0x0970,0x08EE,0x190F,0x18EF,0x212F,0x214F,0x190F,0x212F,0x192F,0x090E,0x00CE,0x1A74,0x3C1A,0x33D9,0x33FA,0x33FA,0x3BFA,0x43FA,0x0130,0x0930,0x1130,0x1930,0x2110,0x2130,0x212F,0x2950,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x290F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x292F,0x212F,0x292F,0x292F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2131,0x1932,0x1932,0x1133,0x1153,0x1175,0x19D6,0x19F7,0x2217,0x19B5,0x1153,0x1131,0x1931,0x1931,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x1911,0x1932,0x1933,0x1153,0x1995,0x2217,0x2217,0x1974,0x10F2,0x1912,0x1931,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2930,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2910,0x290F,0x210F,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x2110,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2131,0x2111,0x1931,0x1932,0x1132,0x21B5,0x21F6,0x21F6,0x1974,0x1112,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x2930,0x2930,0x290F,0x310F,0x288C,0x8AB3,0xE51C,0xDCB9,0xDC99,0xDC58,0xDC57,0xDC37,0xDC37,0xDC57,0xE457,0xDC37,0xDC16,0xDC37,0xDC36,0xDC36,0xDC36,0xDC57,0xDC57,0xDC57,0xE457,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xE457,0xE437,0xE437,0xDC37,0xE457,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC38,0xDC58,0xDC79,0xDC9A,0xDCDB,0xD51D,0x82D4,0x200A,0x28AD,0x3110,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2910,0x2110,0x2110,0x290F,0x290F,0x2930,0x2910,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2910,0x2910,0x210F,0x290F,0x2910,0x2910,0x2910,0x2930,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1911,0x1112,0x1175,0x19F8,0x1A18,0x11D8,0x0976,0x0135,0x0134,0x0134,0x0954,0x0154,0x0155,0x0996,0x19F8,0x19F8,0x19D7,0x1154,0x1112,0x1931,0x2131,0x2130,0x2130,0x2110,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x210F,0x210F,0x290F,0x210F,0x2930,0x212F,0x212F,0x2930,0x2930,0x212F,0x2130,0x2110,0x210F,0x210F,0x212F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x290F,0x290F,0x292F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1932,0x1153,0x19D6,0x19F7,0x19F6,0x1195,0x1132,0x1111,0x1931,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2110,0x2910,0x2930,0x2110,0x210F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x2110,0x2110,0x2910,0x2110,0x2930,0x212F,0x2930,0x212F,0x212F,0x2150,0x212F,0x212F,0x1950,0x112F,0x00EE,0x014F,0x3CBB,0x1439,0x0C19,0x0418,0x0419,0x0418,0x0C19,0x0BB7,0x0273,0x01F0,0x018F,0x014E,0x014E,0x012E,0x00ED,0x00CD,0x00AD,0x00EE,0x1150,0x112F,0x1970,0x192F,0x1930,0x1930,0x1950,0x1950,0x1150,0x014F,0x016F,0x2377,0x2439,0x1419,0x0C39,0x0419,0x03F8,0x0418,0x0438,0x0438,0x0439,0x0439,0x0418,0x0419,0x0418,0x03F8,0x1439,0x1C19,0x2BD9,0x0233,0x012F,0x010E,0x1170,0x19B1,0x1170,0x092F,0x00EE,0x00EE,0x00EE,0x012F,0x014F,0x0293,0x1C39,0x0C18,0x0C39,0x0419,0x03F8,0x0439,0x0C19,0x0C19,0x0BF9,0x2C7B,0x01F2,0x0170,0x012F,0x012F,0x010F,0x092F,0x1150,0x1930,0x1930,0x1910,0x2150,0x2150,0x1930,0x1950,0x092F,0x010E,0x22F5,0x449B,0x1C19,0x1419,0x0C18,0x0C19,0x0C19,0x0C19,0x1439,0x1C3A,0x245A,0x2BB8,0x0150,0x0950,0x0930,0x1950,0x1930,0x2130,0x2150,0x2130,0x2131,0x2131,0x1911,0x1132,0x1153,0x11D6,0x1218,0x0A19,0x09F9,0x01D9,0x01D9,0x01DA,0x09FA,0x09FA,0x0A1A,0x0A1A,0x11F9,0x11D8,0x11B7,0x1196,0x1175,0x1134,0x1113,0x1112,0x1112,0x1112,0x1132,0x1933,0x1132,0x1112,0x1132,0x1932,0x1912,0x1932,0x1932,0x1132,0x1933,0x1933,0x1133,0x1133,0x1132,0x1933,0x1133,0x1132,0x1933,0x1932,0x1932,0x1953,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1953,0x1952,0x1953,0x1953,0x1932,0x1932,0x1112,0x1912,0x1932,0x1931,0x1932,0x1931,0x1931,0x1931,0x1931,0x1932,0x1953,0x1974,0x1154,0x19B6,0x21F7,0x21F7,0x21F7,0x1995,0x1112,0x1111,0x1111,0x1931,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x290F,0x292F, + 0x2930,0x212F,0x212F,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x212F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1933,0x1134,0x1175,0x1196,0x11B7,0x11F9,0x1219,0x1219,0x11F8,0x11B7,0x1196,0x1154,0x1132,0x1932,0x1931,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2110,0x1910,0x1931,0x1112,0x1133,0x1175,0x1196,0x11D7,0x1A19,0x1A19,0x19F8,0x11D8,0x1196,0x1175,0x1154,0x1933,0x1912,0x1911,0x2111,0x2111,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x212F,0x210F,0x290F,0x210F,0x212F,0x212F,0x292F,0x210F,0x292F,0x212F,0x212F,0x292F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x2151,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2930,0x2930,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2910,0x2910,0x2930,0x210F,0x290F,0x210F,0x2910,0x2910,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x212F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x192F,0x1930,0x1130,0x0950,0x4399,0x441A,0x33FA,0x23FA,0x23FA,0x23FA,0x23FA,0x1BDA,0x1BD9,0x23DA,0x2BFA,0x33D9,0x43DA,0x3AF6,0x090F,0x08EF,0x090F,0x010F,0x09D2,0x43FA,0x33DA,0x33FA,0x2BD9,0x33B9,0x43D9,0x094F,0x08EE,0x212F,0x212F,0x212F,0x2150,0x212F,0x192F,0x112F,0x00CE,0x0991,0x4BDA,0x3BDA,0x33DA,0x33D9,0x33DA,0x3BFA,0x43DA,0x0130,0x1150,0x1930,0x1930,0x2110,0x2130,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2910,0x2910,0x210F,0x2910,0x210F,0x290F,0x2910,0x2910,0x2910,0x2930,0x2110,0x210F,0x2130,0x210F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x2930,0x2930,0x212F,0x2930,0x2130,0x212F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1153,0x1174,0x1175,0x19F7,0x19F6,0x21D6,0x21B5,0x1132,0x1931,0x1931,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x1931,0x1932,0x1933,0x1133,0x1995,0x21F7,0x2217,0x1995,0x1112,0x1912,0x1931,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2930,0x212F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2930,0x210F,0x210F,0x2910,0x290F,0x210F,0x2910,0x2910,0x2930,0x2930,0x2910,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x1931,0x1932,0x1133,0x19B5,0x21D6,0x21D6,0x1994,0x1132,0x1932,0x2151,0x2131,0x2131,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x3130,0x290F,0x30EF,0x284B,0xABD8,0xE4FB,0xDC99,0xDC98,0xDC78,0xDC57,0xDC58,0xDC57,0xDC57,0xDC37,0xDC37,0xE437,0xDC37,0xDC36,0xE436,0xDC37,0xDC57,0xDC57,0xDC37,0xDC57,0xDC37,0xDC57,0xDC57,0xDC36,0xDC36,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC58,0xDC79,0xDC79,0xDCBA,0xED7E,0xABF9,0x284B,0x286C,0x28EF,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x2930,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2110,0x2910,0x210F,0x2910,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1132,0x1154,0x19D7,0x11D8,0x11D8,0x0997,0x0155,0x0134,0x0134,0x0134,0x0134,0x0155,0x09B7,0x1A18,0x1A18,0x19D7,0x1154,0x1112,0x1931,0x2131,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x2930,0x290F,0x2930,0x2930,0x212F,0x212F,0x2930,0x210F,0x2930,0x210F,0x2930,0x2930,0x212F,0x2930,0x210F,0x212F,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x1931,0x1132,0x1153,0x19D6,0x19F7,0x11D6,0x11B5,0x1132,0x1931,0x1931,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2910,0x210F,0x2910,0x210F,0x210F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x290F,0x2110,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x194F,0x194F,0x00EE,0x012F,0x3C9B,0x1C39,0x0BF8,0x0419,0x0C39,0x0419,0x0C19,0x0BD8,0x02B4,0x0232,0x0232,0x0232,0x0A52,0x1252,0x09F1,0x012F,0x00EE,0x00AD,0x112F,0x1950,0x1950,0x1950,0x2130,0x192F,0x1930,0x1950,0x1150,0x0950,0x016F,0x0211,0x345A,0x1C19,0x0C19,0x0C39,0x0418,0x0439,0x0438,0x0418,0x0439,0x0439,0x0418,0x0419,0x0439,0x0C39,0x1419,0x2439,0x2357,0x016F,0x010F,0x092F,0x1970,0x1950,0x1150,0x1150,0x1150,0x1150,0x092F,0x012F,0x010E,0x01F1,0x2439,0x0C18,0x0418,0x0C39,0x03F8,0x0419,0x0C39,0x0C19,0x13F9,0x347B,0x0190,0x012F,0x0150,0x0930,0x1150,0x1150,0x1930,0x1930,0x1930,0x1930,0x2130,0x2150,0x192F,0x1950,0x112F,0x010E,0x1253,0x449B,0x1BF9,0x1439,0x0C19,0x0C39,0x0C19,0x0C39,0x1439,0x1C39,0x243A,0x2398,0x0150,0x0950,0x1150,0x1130,0x1950,0x2150,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1153,0x1195,0x11D6,0x1218,0x09F9,0x09F9,0x09D9,0x09FA,0x0A1A,0x09F9,0x1219,0x09D8,0x11D8,0x11B7,0x1175,0x1174,0x1133,0x1113,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1932,0x1932,0x1911,0x1911,0x1932,0x1932,0x1932,0x1932,0x1932,0x1912,0x1932,0x1912,0x1912,0x1932,0x1932,0x1912,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1952,0x1932,0x1111,0x1932,0x1911,0x1911,0x1911,0x1931,0x2131,0x1931,0x2151,0x1931,0x1931,0x1932,0x1952,0x1153,0x1994,0x19B6,0x19F7,0x2217,0x21F7,0x1995,0x1153,0x1111,0x1111,0x1931,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x212F,0x210F,0x210F,0x2130,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x212F,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x2930,0x290F, + 0x212F,0x210F,0x210F,0x210F,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x292F,0x290F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x212F,0x2930,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2132,0x1932,0x1933,0x1133,0x1155,0x1196,0x11B7,0x1A19,0x1219,0x1219,0x11F8,0x11B6,0x1175,0x1154,0x1133,0x1952,0x1931,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x2930,0x212F,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x1911,0x1911,0x1112,0x1133,0x1154,0x11B6,0x19D8,0x11F8,0x1A19,0x1A19,0x19D8,0x11B6,0x1175,0x1954,0x1933,0x1932,0x1911,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x292F,0x210F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2110,0x210F,0x210F,0x210F,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x1910,0x1910,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x2130,0x212F,0x2130,0x210F,0x212F,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x212F,0x2130,0x210F,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x290F,0x2930,0x2930,0x2930,0x290F,0x212F,0x212F,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x212F,0x210F,0x212F,0x212F,0x2110,0x2110,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x290F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x1930,0x1930,0x1130,0x2234,0x43DA,0x3BFA,0x33FA,0x2BFA,0x2BDA,0x2BDA,0x23DA,0x2BDA,0x2BB9,0x33DA,0x43DA,0x4399,0x2A33,0x110F,0x08EF,0x08EF,0x010F,0x09B2,0x4C1A,0x33D9,0x33D9,0x2BB9,0x33B9,0x3B99,0x092F,0x08CE,0x210F,0x210F,0x212F,0x2130,0x192F,0x1950,0x00EE,0x2233,0x541B,0x43FA,0x3BFA,0x33DA,0x33B9,0x3BDA,0x441A,0x4BFA,0x010F,0x1130,0x1930,0x2130,0x2130,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x210F,0x210F,0x2910,0x2110,0x2910,0x2910,0x2130,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x310F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2110,0x2930,0x2930,0x290F,0x292F,0x290F,0x292F,0x2930,0x212F,0x210F,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x2131,0x1911,0x1931,0x1132,0x1153,0x1154,0x1195,0x21F7,0x19D6,0x29F6,0x1953,0x1131,0x1931,0x2151,0x2130,0x212F,0x210F,0x2130,0x2110,0x2131,0x1932,0x1933,0x1133,0x19B6,0x2217,0x2217,0x1995,0x1112,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x210F,0x292F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x212F,0x210F,0x2910,0x2910,0x2110,0x2930,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2910,0x2930,0x2110,0x290F,0x290F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2131,0x2131,0x1932,0x1932,0x1133,0x21D6,0x21F6,0x21D6,0x1974,0x1132,0x1932,0x2151,0x2131,0x2931,0x2930,0x2950,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x2930,0x2950,0x2930,0x3130,0x3130,0x3130,0x310F,0x30EE,0x282B,0xCCBB,0xE4FA,0xDC98,0xDC78,0xDC58,0xDC57,0xDC57,0xDC37,0xDC57,0xDC37,0xE457,0xDC37,0xDC37,0xDC57,0xE457,0xDC36,0xDC57,0xDC57,0xDC57,0xE457,0xDC37,0xDC36,0xDC57,0xDC57,0xE457,0xDC37,0xE457,0xDC37,0xE457,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC17,0xDC37,0xDC38,0xDC58,0xD479,0xDCDB,0x8293,0x38AC,0x30CE,0x28CE,0x28EF,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2130,0x210F,0x2110,0x2110,0x2130,0x2130,0x2131,0x2132,0x1932,0x1154,0x1996,0x11B7,0x11D7,0x09D7,0x0197,0x0156,0x0156,0x0176,0x0176,0x0997,0x1A18,0x11D7,0x11D7,0x19B6,0x1154,0x1932,0x2131,0x2130,0x2110,0x2130,0x2130,0x2110,0x210F,0x2930,0x2930,0x210F,0x210F,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2930,0x212F,0x212F,0x2930,0x210F,0x290F,0x210F,0x212F,0x2130,0x212F,0x2130,0x212F,0x210F,0x210F,0x2110,0x2130,0x1931,0x1132,0x1153,0x19D6,0x1A17,0x19F6,0x1194,0x1112,0x1911,0x1911,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x2930,0x2930,0x2110,0x2910,0x2910,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x292F,0x290F,0x292F,0x212F,0x212F,0x2130,0x212F,0x2150,0x192F,0x00EE,0x012F,0x3C7B,0x1419,0x0C18,0x0C39,0x03F8,0x0419,0x0419,0x0C19,0x1419,0x1C39,0x245A,0x2C3A,0x2C5A,0x345A,0x3C3A,0x4C5B,0x1A33,0x00CE,0x112F,0x1950,0x192F,0x212F,0x2130,0x2130,0x2130,0x1930,0x192F,0x1150,0x094F,0x016F,0x1B15,0x2C5A,0x1C5A,0x0C18,0x0419,0x0418,0x0438,0x0438,0x0438,0x0439,0x0418,0x0418,0x0419,0x0C19,0x13F9,0x343A,0x0212,0x012F,0x092F,0x1970,0x1950,0x192F,0x1950,0x192F,0x1930,0x1130,0x114F,0x094F,0x00EE,0x0190,0x2439,0x1419,0x0418,0x03F8,0x0418,0x0C19,0x03F8,0x0BF9,0x1C19,0x44BC,0x0170,0x0150,0x0950,0x1171,0x1150,0x1950,0x1950,0x1930,0x1930,0x1930,0x2130,0x192F,0x1930,0x1950,0x112F,0x012F,0x0170,0x3C3A,0x1BD8,0x0BF8,0x0BF8,0x0BF9,0x0C19,0x0C19,0x1419,0x1419,0x243A,0x23B8,0x0150,0x0950,0x1170,0x1950,0x1950,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x1931,0x1952,0x1974,0x1195,0x11D6,0x11D7,0x11D8,0x11F9,0x09D8,0x11F9,0x11F9,0x11D8,0x11B7,0x1196,0x1175,0x1174,0x1933,0x1932,0x1932,0x1931,0x1911,0x1911,0x2131,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x2132,0x1911,0x1931,0x2131,0x1911,0x1911,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1951,0x1931,0x1931,0x1931,0x1931,0x1911,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x1931,0x1931,0x1132,0x1133,0x1174,0x19D6,0x2217,0x2217,0x19D7,0x1995,0x1133,0x1111,0x1111,0x1931,0x2151,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2930,0x2930, + 0x212F,0x212F,0x212F,0x2110,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x210F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1932,0x1933,0x1154,0x1155,0x1196,0x11D7,0x11F8,0x1219,0x1218,0x19F8,0x19D7,0x1175,0x1174,0x1133,0x1912,0x1932,0x2111,0x2131,0x2931,0x2130,0x2110,0x2930,0x292F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1112,0x1153,0x1175,0x1196,0x11D7,0x1A18,0x1A18,0x1A18,0x19D7,0x1196,0x1175,0x1954,0x1113,0x1912,0x1912,0x1912,0x1932,0x1931,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x290F,0x2930,0x2110,0x210F,0x212F,0x2110,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1931,0x1930,0x2151,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2110,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x290F,0x2930,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2110,0x2110,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2110,0x210F,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x1930,0x1130,0x1171,0x3B38,0x43FA,0x3BDA,0x33DA,0x2BD9,0x2BDA,0x2BDA,0x33DA,0x33BA,0x43DA,0x4B99,0x2A54,0x110F,0x10EE,0x190F,0x08EF,0x010F,0x11B2,0x4C1B,0x3BDA,0x33DA,0x33DA,0x3BDA,0x4379,0x090F,0x08AE,0x210F,0x212F,0x212F,0x2130,0x1930,0x110F,0x21F2,0x53DA,0x4BDA,0x43DA,0x3BB9,0x33B9,0x3BBA,0x43DA,0x4C1B,0x4399,0x00EF,0x1130,0x1930,0x2130,0x2130,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2910,0x2910,0x2910,0x2930,0x210F,0x210F,0x290F,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x2930,0x212F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2130,0x2130,0x210F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2131,0x1931,0x1932,0x1132,0x1133,0x1174,0x19D6,0x21F6,0x21D6,0x1973,0x1112,0x1931,0x2131,0x2150,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1933,0x1133,0x19B6,0x2A17,0x21F7,0x1995,0x1112,0x1932,0x1931,0x2131,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x292F,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2930,0x290F,0x2910,0x2910,0x290F,0x2910,0x2910,0x2110,0x210F,0x290F,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2110,0x2131,0x2131,0x1932,0x1932,0x1133,0x21D6,0x21F6,0x21F6,0x1974,0x1112,0x1952,0x2152,0x2131,0x2931,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2950,0x2950,0x2950,0x2930,0x3151,0x3130,0x3130,0x3110,0x310F,0x30AE,0x38AC,0xE53D,0xDCB9,0xDC78,0xDC78,0xDC57,0xDC57,0xDC57,0xE457,0xDC57,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xDC17,0xDC37,0xDC38,0xDC58,0xDC99,0xDCDB,0x7A11,0x302A,0x410E,0x30EE,0x28EE,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x290F,0x210F,0x290F,0x210F,0x2930,0x290F,0x290F,0x2930,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2110,0x2110,0x2930,0x2110,0x210F,0x2130,0x2130,0x2131,0x2131,0x1932,0x1933,0x1175,0x19B6,0x19F8,0x1218,0x1219,0x11F8,0x11F8,0x11D8,0x11D8,0x1A18,0x19F8,0x19D7,0x1175,0x1154,0x1953,0x1932,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x2930,0x210F,0x2930,0x212F,0x212F,0x2930,0x2930,0x212F,0x2930,0x2930,0x290F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x210F,0x290F,0x2930,0x290F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x1931,0x1932,0x0933,0x19D6,0x19F7,0x19D6,0x11B5,0x1112,0x1911,0x1911,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x212F,0x2930,0x2930,0x2910,0x2110,0x2930,0x2910,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2930,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x192F,0x192F,0x00EE,0x012F,0x3C5A,0x1C19,0x1439,0x0418,0x0C19,0x0419,0x0419,0x0C19,0x0C19,0x0C19,0x1419,0x13F9,0x1C19,0x1BF8,0x23F9,0x3C3A,0x1212,0x00CE,0x1130,0x1930,0x192F,0x212F,0x2130,0x2130,0x212F,0x192F,0x1950,0x112F,0x1170,0x016F,0x01B0,0x343A,0x245A,0x1439,0x03F8,0x0419,0x0439,0x0459,0x0439,0x0439,0x0418,0x0C39,0x0C19,0x1419,0x2419,0x2377,0x012F,0x012F,0x1150,0x1150,0x1950,0x192F,0x192F,0x192F,0x192F,0x1930,0x112F,0x1150,0x010E,0x014F,0x2C3A,0x0BF8,0x0C19,0x0C39,0x0C19,0x0BF9,0x1439,0x13F9,0x1C19,0x343A,0x0150,0x0950,0x0950,0x1150,0x1130,0x1950,0x1950,0x1930,0x1930,0x192F,0x2130,0x192F,0x1950,0x192F,0x1150,0x010F,0x010F,0x2B77,0x23F9,0x1419,0x0BF8,0x0C19,0x0BF9,0x0C19,0x13F9,0x13F9,0x2C5A,0x2398,0x0150,0x0950,0x1150,0x1950,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1953,0x1154,0x1175,0x1196,0x11B6,0x11D7,0x11D7,0x11D7,0x11B7,0x1196,0x1195,0x1174,0x1153,0x1932,0x1932,0x1911,0x1911,0x2131,0x2131,0x2131,0x2111,0x2131,0x2110,0x2131,0x2131,0x2110,0x2111,0x2131,0x2131,0x2131,0x1910,0x2110,0x2110,0x2130,0x2130,0x2111,0x2110,0x2131,0x2110,0x2111,0x1910,0x2131,0x2131,0x2111,0x1910,0x2110,0x1910,0x2131,0x1930,0x1930,0x1930,0x1931,0x1930,0x1930,0x1910,0x2130,0x2110,0x2110,0x2110,0x2131,0x1931,0x1931,0x1132,0x1953,0x1994,0x19B5,0x2217,0x1A17,0x21F7,0x19B5,0x1133,0x1112,0x1111,0x1931,0x2151,0x2150,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x210F,0x2910,0x290F,0x210F,0x290F,0x212F,0x210F,0x2930,0x210F,0x210F,0x2930,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110, + 0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x2110,0x2110,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x1931,0x1952,0x1953,0x1154,0x1175,0x1176,0x11B7,0x11F8,0x1218,0x1A39,0x19F8,0x19D7,0x1175,0x1134,0x1933,0x1932,0x2132,0x2111,0x2110,0x2110,0x2130,0x2930,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x292F,0x212F,0x2130,0x2930,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x1931,0x1932,0x1932,0x1133,0x1175,0x1196,0x11D7,0x1A39,0x1A39,0x11D8,0x11D7,0x1196,0x1175,0x1133,0x1133,0x1112,0x1932,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x292F,0x292F,0x210F,0x290F,0x212F,0x292F,0x210F,0x212F,0x2930,0x2930,0x212F,0x212F,0x2930,0x210F,0x212F,0x2110,0x2130,0x292F,0x212F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x2130,0x2130,0x2150,0x2130,0x2131,0x2131,0x1931,0x1932,0x1932,0x1132,0x1132,0x1932,0x1952,0x1952,0x1952,0x1951,0x1931,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x210F,0x290F,0x292F,0x212F,0x212F,0x2930,0x210F,0x2930,0x2930,0x210F,0x212F,0x210F,0x2930,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2930,0x290F,0x2930,0x2930,0x2930,0x210F,0x2930,0x212F,0x2930,0x290F,0x2930,0x210F,0x2930,0x210F,0x212F,0x212F,0x290F,0x290F,0x2930,0x2930,0x2930,0x290F,0x2930,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x2110,0x210F,0x210F,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1930,0x1910,0x1110,0x19D2,0x4BDA,0x43DA,0x3BDA,0x33B9,0x33B9,0x3BBA,0x43DA,0x439A,0x4379,0x3295,0x1130,0x10EE,0x18EE,0x2150,0x192F,0x00EE,0x19D2,0x4BFB,0x3BB9,0x3BDA,0x3BDA,0x3BBA,0x4399,0x090F,0x10AE,0x2110,0x2130,0x2130,0x1950,0x00CE,0x2A13,0x5BFB,0x4BBA,0x4BBA,0x3B99,0x3BB9,0x43DA,0x3BBA,0x43DA,0x541B,0x32B6,0x1150,0x1950,0x1930,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2910,0x2910,0x2930,0x2110,0x2930,0x212F,0x210F,0x2110,0x2930,0x2930,0x210F,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x2930,0x2130,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x2910,0x210F,0x290F,0x212F,0x2130,0x212F,0x210F,0x210F,0x212F,0x2130,0x2110,0x2130,0x2130,0x1931,0x1931,0x1132,0x1132,0x1153,0x19B6,0x21D6,0x21D6,0x1154,0x1132,0x1932,0x1951,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1912,0x1134,0x21B6,0x2A17,0x2217,0x1995,0x1112,0x1932,0x1931,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x212F,0x210F,0x2930,0x2910,0x210F,0x210F,0x2930,0x290F,0x210F,0x212F,0x212F,0x210F,0x290F,0x2930,0x210F,0x210F,0x2930,0x2110,0x2930,0x2910,0x2910,0x290F,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2131,0x2131,0x1932,0x1932,0x1153,0x21D6,0x21D6,0x21F6,0x1995,0x1132,0x1952,0x2152,0x2131,0x2131,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x2950,0x2950,0x2930,0x2950,0x3130,0x3131,0x3131,0x3110,0x30EF,0x308D,0x596F,0xE55C,0xDCB9,0xDC98,0xDC78,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xE457,0xDC37,0xDC37,0xE457,0xDC37,0xDC57,0xDC37,0xDC37,0xDC16,0xDC37,0xDC37,0xDC37,0xDC16,0xDC17,0xDC37,0xDC37,0xDC17,0xDC37,0xDC17,0xDC58,0xDC59,0xDCBA,0xAB56,0x3009,0x410E,0x392F,0x310F,0x312F,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x2930,0x290F,0x210F,0x210F,0x2930,0x2930,0x290F,0x292F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x210F,0x2910,0x2930,0x212F,0x212F,0x2130,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1912,0x1133,0x1995,0x19F7,0x1A38,0x1A59,0x1A39,0x1A19,0x19F8,0x1A18,0x2259,0x2238,0x19B6,0x1154,0x1953,0x1932,0x1931,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x292F,0x292F,0x212F,0x210F,0x210F,0x2930,0x2930,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1932,0x1133,0x19D6,0x19F6,0x11D6,0x1195,0x1112,0x1931,0x2131,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x210F,0x2110,0x2930,0x2110,0x2110,0x210F,0x292F,0x2930,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x2130,0x1930,0x192F,0x00EE,0x012F,0x449B,0x1C39,0x1439,0x0C39,0x0C18,0x0C19,0x0C19,0x0C19,0x0C19,0x0C19,0x0C19,0x1439,0x1419,0x13D8,0x1BF8,0x343A,0x01B1,0x00CE,0x1150,0x1950,0x2150,0x2150,0x212F,0x212F,0x212F,0x2130,0x2150,0x1950,0x1170,0x0970,0x012F,0x0A73,0x347B,0x1C3A,0x0C19,0x0419,0x0418,0x0439,0x0439,0x0418,0x0439,0x0419,0x1419,0x2419,0x2BF9,0x01D1,0x010E,0x114F,0x114F,0x1950,0x192F,0x2150,0x212F,0x2150,0x192F,0x192F,0x192F,0x114F,0x010E,0x0170,0x343A,0x13F9,0x1419,0x0C19,0x0BF8,0x0C19,0x0BD8,0x1C19,0x243A,0x341A,0x0150,0x0950,0x0950,0x1150,0x1130,0x1950,0x1930,0x190F,0x212F,0x212F,0x212F,0x2150,0x192F,0x1950,0x1950,0x092F,0x00EE,0x1274,0x23B8,0x13F8,0x0BF8,0x0C19,0x0C19,0x1419,0x13F9,0x1C19,0x2C1A,0x2398,0x0150,0x0950,0x1150,0x1150,0x1930,0x190F,0x2110,0x210F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1132,0x1153,0x1154,0x1174,0x1175,0x1195,0x1175,0x1175,0x1174,0x1173,0x1132,0x1952,0x1931,0x1931,0x2111,0x2131,0x2131,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x1930,0x1930,0x1910,0x2130,0x2131,0x2151,0x2130,0x2131,0x1910,0x1911,0x1932,0x1953,0x1174,0x19D5,0x19F6,0x2217,0x2217,0x1995,0x1133,0x1112,0x1111,0x1910,0x2130,0x2150,0x2130,0x2110,0x20EF,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x210F,0x2930,0x290F,0x210F,0x290F,0x292F,0x292F,0x292F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x212F,0x2130,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2930, + 0x292F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x292F,0x292F,0x290F,0x290F,0x2910,0x290F,0x212F,0x2930,0x2110,0x210F,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x2930,0x210F,0x210F,0x212F,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2131,0x2131,0x1932,0x1932,0x1153,0x1153,0x1154,0x1175,0x11B7,0x1A18,0x1218,0x1A19,0x19F8,0x11B7,0x1176,0x1134,0x1933,0x1912,0x2131,0x2111,0x2130,0x2130,0x2130,0x2130,0x2950,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x212F,0x2130,0x210F,0x2130,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x2131,0x1911,0x1911,0x1912,0x1133,0x1174,0x11B6,0x11D7,0x1A18,0x1A39,0x11F8,0x11D7,0x11B6,0x1195,0x1154,0x1134,0x1133,0x1133,0x1133,0x1132,0x1932,0x1932,0x1932,0x1931,0x1931,0x2131,0x1910,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2930,0x2110,0x2130,0x2110,0x2110,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x212F,0x2130,0x2130,0x1931,0x1931,0x1932,0x1932,0x1153,0x1974,0x1994,0x1994,0x19B5,0x1994,0x1974,0x1973,0x1973,0x1953,0x1932,0x1931,0x1931,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x290F,0x290F,0x212F,0x2930,0x2130,0x210F,0x210F,0x212F,0x2930,0x2930,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x290F,0x2930,0x290F,0x2930,0x290F,0x2930,0x212F,0x2930,0x2930,0x290F,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x292F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2110,0x212F,0x212F,0x2930,0x212F,0x210F,0x212F,0x2130,0x2130,0x210F,0x190F,0x1910,0x1110,0x0910,0x4338,0x4BBA,0x43DA,0x3BB9,0x3BDA,0x43BA,0x4BDB,0x3B38,0x19B2,0x08EF,0x10CE,0x18EE,0x212F,0x2150,0x190F,0x08CE,0x19B2,0x541B,0x3B99,0x43FB,0x43DA,0x4399,0x4B79,0x0910,0x08AE,0x2110,0x2110,0x190F,0x10EF,0x3254,0x5BBA,0x539A,0x4B99,0x439A,0x439A,0x43BA,0x43BA,0x4BDA,0x4BDA,0x4B99,0x1171,0x1150,0x1950,0x2130,0x210F,0x2130,0x2930,0x2130,0x210F,0x210F,0x212F,0x212F,0x2930,0x212F,0x2130,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x2110,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x292F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x2110,0x2930,0x2910,0x2910,0x2930,0x290F,0x210F,0x212F,0x210F,0x210F,0x2130,0x212F,0x2130,0x2130,0x2130,0x1930,0x1931,0x1932,0x1132,0x1133,0x19D6,0x21F7,0x1995,0x1974,0x1133,0x1932,0x2151,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x1932,0x1933,0x1133,0x1996,0x21F7,0x2A17,0x19B5,0x1112,0x1932,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2930,0x2910,0x212F,0x2930,0x2930,0x290F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x210F,0x212F,0x212F,0x2930,0x2910,0x2910,0x210F,0x2930,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x292F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2110,0x2131,0x1932,0x1932,0x1153,0x21D6,0x21F6,0x21D6,0x1995,0x1112,0x1952,0x2152,0x2151,0x2931,0x2931,0x2930,0x2950,0x2930,0x2950,0x3150,0x2950,0x2950,0x3151,0x2930,0x3130,0x3130,0x3131,0x3130,0x30EF,0x308C,0x7A73,0xE55C,0xDCB9,0xDC78,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xE437,0xE437,0xDC37,0xE437,0xE457,0xDC37,0xDC37,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC17,0xDC37,0xDC17,0xDC37,0xDC17,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC38,0xDC58,0xDC79,0xCC39,0x404A,0x308C,0x390E,0x310F,0x310F,0x312F,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x212F,0x290F,0x2930,0x2930,0x290F,0x2930,0x2910,0x2910,0x2930,0x290F,0x2930,0x290F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2131,0x2111,0x1931,0x1932,0x1133,0x1995,0x11B5,0x19F7,0x19D7,0x11B6,0x11B6,0x19B6,0x19B6,0x1195,0x1154,0x1133,0x1932,0x1931,0x1931,0x2130,0x2130,0x2110,0x2130,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2110,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x210F,0x210F,0x212F,0x212F,0x2110,0x210F,0x210F,0x2910,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1932,0x1133,0x19D6,0x19F7,0x19D7,0x1195,0x1132,0x1911,0x2131,0x2110,0x2130,0x2930,0x210F,0x210F,0x292F,0x292F,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x290F,0x290F,0x292F,0x2930,0x292F,0x292F,0x2930,0x212F,0x2130,0x1930,0x1930,0x08EE,0x012F,0x447B,0x243A,0x1C39,0x0C19,0x0C18,0x0C19,0x0C19,0x0C39,0x0C19,0x0BF9,0x0BF9,0x0BF9,0x1419,0x1419,0x1C19,0x3C5A,0x0190,0x00AD,0x1950,0x2170,0x2150,0x2150,0x212F,0x212F,0x2150,0x2130,0x2130,0x1950,0x114F,0x1150,0x0950,0x0150,0x2BD9,0x243A,0x13F9,0x0C19,0x0C19,0x0419,0x0419,0x0C39,0x0C19,0x0C39,0x1419,0x2C1A,0x2B98,0x010E,0x012F,0x1150,0x112F,0x192F,0x212F,0x2130,0x212F,0x212F,0x212F,0x192F,0x192F,0x194F,0x010E,0x014F,0x341A,0x1C19,0x1C19,0x0BF8,0x0BF8,0x13F9,0x1C19,0x1BF9,0x2C1A,0x2BD9,0x012F,0x0950,0x1150,0x1150,0x1950,0x1930,0x192F,0x192F,0x212F,0x212F,0x212F,0x212F,0x212F,0x1950,0x1950,0x112F,0x00EE,0x09F2,0x341A,0x1BF9,0x13F9,0x1419,0x0BF9,0x13F9,0x1C19,0x1BF9,0x2C3A,0x2378,0x0150,0x0950,0x1150,0x1950,0x1930,0x2130,0x2130,0x2130,0x2130,0x2931,0x2130,0x2110,0x2131,0x2131,0x1932,0x1932,0x1932,0x1133,0x1133,0x1133,0x1133,0x1953,0x1132,0x1132,0x1131,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2930,0x2110,0x210F,0x2130,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2131,0x1931,0x1911,0x1932,0x1953,0x1174,0x19D6,0x2217,0x2217,0x19F6,0x1195,0x1153,0x1152,0x1111,0x1931,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2910,0x2110,0x2930,0x2910,0x210F,0x2930,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2930,0x210F,0x210F,0x2930,0x210F,0x212F,0x2130,0x210F,0x2930,0x2930, + 0x292F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x210F,0x212F,0x292F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2910,0x2930,0x290F,0x2930,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x2131,0x2132,0x1932,0x1132,0x1133,0x1154,0x1195,0x11B7,0x19F8,0x1A19,0x11F9,0x11D8,0x1197,0x1176,0x1134,0x1133,0x1932,0x2131,0x1911,0x2131,0x2130,0x2130,0x2150,0x2150,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2910,0x2110,0x210F,0x210F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2951,0x2951,0x2131,0x2131,0x1911,0x1112,0x1133,0x1154,0x1196,0x11D7,0x1A18,0x1A18,0x11F8,0x11D7,0x11B7,0x0996,0x0975,0x0954,0x1154,0x1134,0x1133,0x1133,0x1133,0x1952,0x1932,0x1932,0x1931,0x2131,0x2131,0x2131,0x1910,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x2930,0x2110,0x210F,0x212F,0x2930,0x2110,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x212F,0x2150,0x2130,0x2131,0x1931,0x1932,0x1133,0x1154,0x1995,0x19D6,0x19F7,0x19F7,0x19F7,0x1A17,0x19F7,0x19D6,0x11B5,0x1195,0x1153,0x1112,0x1932,0x1951,0x2151,0x2151,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2151,0x2131,0x2130,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x290F,0x2930,0x210F,0x212F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2930,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x212F,0x2130,0x190F,0x18EF,0x08EF,0x21F3,0x53DA,0x4BDA,0x43B9,0x43BA,0x43BA,0x4359,0x21F4,0x008E,0x10AE,0x10CE,0x212F,0x212F,0x2130,0x190F,0x08CF,0x19B2,0x5C1C,0x4BDB,0x43BA,0x43BA,0x439A,0x53BA,0x0910,0x10AF,0x2110,0x18EF,0x1930,0x5318,0x63FB,0x5BBA,0x4B79,0x4B59,0x4B7A,0x4BBA,0x4B9A,0x4BBA,0x4BBA,0x539A,0x1191,0x0910,0x1930,0x1930,0x2130,0x2130,0x2130,0x2930,0x2930,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x210F,0x290F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2930,0x2950,0x2130,0x1930,0x1931,0x1931,0x1153,0x1133,0x19D6,0x21F7,0x1995,0x1154,0x1133,0x1932,0x1931,0x2151,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1912,0x1133,0x21B6,0x21F7,0x21F7,0x1995,0x1112,0x1912,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x212F,0x212F,0x2930,0x290F,0x212F,0x212F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x210F,0x2110,0x2930,0x210F,0x2930,0x2930,0x290F,0x210F,0x2910,0x2910,0x210F,0x2910,0x2110,0x2110,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x1932,0x1132,0x1153,0x21D6,0x21F6,0x21D6,0x1995,0x1112,0x1952,0x2152,0x2151,0x2131,0x2931,0x2931,0x2951,0x2930,0x2930,0x2950,0x3150,0x2950,0x2950,0x3151,0x3130,0x3151,0x3131,0x310F,0x390F,0x308C,0x9336,0xE51C,0xDC99,0xDC98,0xDC78,0xDC57,0xDC57,0xDC37,0xDC37,0xDC36,0xDC37,0xE457,0xDC37,0xE457,0xDC37,0xDC57,0xDC36,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC37,0xDC37,0xE457,0xDC37,0xE437,0xDC37,0xDC37,0xDC16,0xDC16,0xDC37,0xDC37,0xDC37,0xDC37,0xDC38,0xDC38,0xDC58,0xDC59,0xE4FB,0x614E,0x2009,0x28AC,0x310E,0x310F,0x290F,0x290F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x2111,0x1911,0x1932,0x1932,0x1953,0x1953,0x1133,0x1954,0x1153,0x1133,0x1953,0x1933,0x1932,0x1931,0x1911,0x2131,0x2130,0x2110,0x2130,0x2110,0x2930,0x2930,0x2910,0x2110,0x2930,0x212F,0x210F,0x2130,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x2910,0x2910,0x2110,0x2910,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1932,0x1133,0x19D6,0x19F7,0x19F7,0x1195,0x1132,0x1911,0x2131,0x2131,0x2130,0x2930,0x210F,0x210F,0x210F,0x292F,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x290F,0x290F,0x292F,0x292F,0x292F,0x212F,0x2930,0x2130,0x2130,0x1930,0x08EF,0x010F,0x3C3B,0x23F9,0x1C19,0x1419,0x0BD8,0x0BD8,0x0BF9,0x0BF9,0x141A,0x0C19,0x1419,0x1419,0x13F9,0x1BF9,0x1BF9,0x44BC,0x09D1,0x00CE,0x1130,0x1930,0x2150,0x192F,0x2150,0x2130,0x2130,0x212F,0x2130,0x192F,0x1950,0x1970,0x092F,0x010F,0x0253,0x241A,0x13F9,0x13F9,0x1419,0x0C19,0x0C19,0x0C39,0x0C19,0x1419,0x1BF9,0x343A,0x1AB5,0x010E,0x010F,0x1150,0x1950,0x192F,0x212F,0x212F,0x2150,0x212F,0x210F,0x212F,0x2150,0x1950,0x08EE,0x012F,0x33D9,0x23D9,0x1BF9,0x1BF9,0x13D8,0x13D9,0x13D9,0x23F9,0x2C1A,0x33D9,0x012F,0x0950,0x1150,0x1950,0x1950,0x1950,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x192F,0x192F,0x192F,0x112F,0x00EF,0x11F2,0x3C5B,0x2419,0x1C19,0x1419,0x0BD8,0x13D9,0x1BF9,0x241A,0x343A,0x2B98,0x0150,0x0950,0x1150,0x1930,0x2130,0x2130,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2111,0x2131,0x2131,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1952,0x1951,0x1951,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x210F,0x210F,0x2930,0x2130,0x212F,0x2130,0x212F,0x2130,0x210F,0x2130,0x2130,0x2130,0x210F,0x212F,0x2130,0x2930,0x2930,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2131,0x1911,0x1932,0x1953,0x1174,0x19F6,0x21F7,0x21F7,0x19D6,0x1995,0x1153,0x1132,0x1131,0x1931,0x1931,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x212F,0x210F,0x2910,0x2910,0x2910,0x210F,0x210F,0x2930,0x210F,0x292F,0x292F, + 0x292F,0x292F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x210F,0x210F,0x292F,0x292F,0x290F,0x210F,0x290F,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x2930,0x2930,0x2930,0x210F,0x210F,0x292F,0x212F,0x210F,0x2130,0x2930,0x2910,0x2110,0x2110,0x2130,0x2130,0x1931,0x1931,0x1932,0x1132,0x1153,0x1174,0x1195,0x11B7,0x11D8,0x11F9,0x19F9,0x11D8,0x11B7,0x1175,0x1154,0x1133,0x1932,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2930,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2110,0x2930,0x2110,0x2930,0x2130,0x2131,0x2131,0x1911,0x1932,0x1132,0x1133,0x1175,0x1196,0x11F7,0x1A19,0x11F8,0x11F8,0x11F8,0x09D7,0x0996,0x0996,0x0975,0x0954,0x1154,0x1154,0x1154,0x1154,0x1953,0x1953,0x1952,0x1932,0x2131,0x1931,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x210F,0x2110,0x210F,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x2910,0x2110,0x2110,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1932,0x1112,0x1153,0x1195,0x19F7,0x19F7,0x1A17,0x1A17,0x19F7,0x1A18,0x1A18,0x19F7,0x19F7,0x19D6,0x1195,0x0933,0x1133,0x1952,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x1931,0x2131,0x2131,0x2111,0x2131,0x2111,0x2111,0x2111,0x2131,0x2131,0x2111,0x2111,0x2111,0x2131,0x1911,0x1911,0x1910,0x2131,0x2111,0x2111,0x2131,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2131,0x2131,0x2131,0x2111,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x212F,0x212F,0x210F,0x2130,0x2110,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x2930,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x212F,0x212F,0x2130,0x210F,0x2110,0x290F,0x290F,0x212F,0x212F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2130,0x210F,0x2110,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2910,0x2910,0x2910,0x290F,0x210F,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x212F,0x210F,0x212F,0x2110,0x18EF,0x10EF,0x1971,0x5BDA,0x53DA,0x4BDA,0x4BBA,0x4B9A,0x4B79,0x1951,0x088E,0x10AE,0x2110,0x212F,0x210F,0x190F,0x18EF,0x10CF,0x21B2,0x5BDB,0x4BBA,0x4BBA,0x4B9A,0x4B9A,0x539A,0x08EF,0x10AF,0x10CF,0x18F0,0x5318,0x6BDB,0x63BB,0x5B9A,0x4B7A,0x4B7A,0x4B9A,0x4BBA,0x4BBA,0x4B9A,0x539A,0x19B2,0x090F,0x1110,0x1910,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x292F,0x210F,0x212F,0x212F,0x292F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2930,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x212F,0x212F,0x212F,0x210F,0x2950,0x2130,0x210F,0x1910,0x1930,0x1952,0x1132,0x1133,0x19B6,0x21F7,0x21B6,0x1974,0x1133,0x1952,0x1951,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x21B6,0x21F7,0x21F7,0x1995,0x1112,0x1912,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x212F,0x2930,0x210F,0x212F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2910,0x210F,0x2910,0x210F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2930,0x2110,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1132,0x1153,0x21D6,0x21F6,0x21F6,0x19B5,0x1133,0x1953,0x2152,0x2151,0x2951,0x2931,0x2951,0x2950,0x2950,0x2930,0x2950,0x2950,0x3150,0x3151,0x3150,0x3151,0x3151,0x3950,0x310F,0x38EE,0x308C,0xABD8,0xDCFB,0xDCB9,0xDC78,0xDC78,0xDC57,0xDC37,0xDC57,0xDC37,0xDC57,0xDC37,0xDC37,0xDC36,0xE457,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xE437,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC17,0xDC17,0xDC37,0xDC17,0xDC17,0xDC17,0xDC17,0xDC37,0xDC17,0xDC37,0xDC38,0xDC38,0xDC9A,0xC3F8,0x2808,0x306B,0x30CD,0x30EE,0x310F,0x290F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2910,0x2930,0x210F,0x210F,0x2930,0x290F,0x2910,0x2910,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2910,0x2910,0x2930,0x290F,0x2910,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2111,0x1911,0x1911,0x1911,0x1911,0x1912,0x1932,0x1911,0x1911,0x1931,0x1911,0x1911,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x210F,0x2930,0x210F,0x2130,0x2130,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x212F,0x212F,0x210F,0x290F,0x2930,0x2910,0x210F,0x2930,0x2910,0x2110,0x2910,0x2110,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x1931,0x1932,0x1133,0x11D6,0x1A17,0x19D7,0x1995,0x1132,0x1911,0x2131,0x2131,0x2130,0x2930,0x2930,0x2930,0x290F,0x292F,0x212F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x210F,0x212F,0x292F,0x290F,0x292F,0x290F,0x2930,0x290F,0x212F,0x210F,0x2130,0x1910,0x1930,0x08EF,0x010F,0x441B,0x23B9,0x23FA,0x1BFA,0x13B8,0x0BB8,0x0BB9,0x0BB8,0x0BD9,0x13F9,0x1C1A,0x13D9,0x13D9,0x2419,0x2C1A,0x447B,0x11F2,0x00CE,0x1130,0x1930,0x2150,0x2150,0x212F,0x2130,0x212F,0x212F,0x2130,0x2150,0x2150,0x1930,0x08EF,0x00AE,0x2B37,0x2BFA,0x23D9,0x1BD9,0x1BF9,0x1C19,0x13F9,0x13F9,0x13D9,0x1BF9,0x23D9,0x33FA,0x1A74,0x00EE,0x090F,0x1130,0x192F,0x192F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x192F,0x08EE,0x00EE,0x3BFA,0x2398,0x23F9,0x23F9,0x1BD9,0x1BD9,0x1BB9,0x2BD9,0x33FA,0x3BD9,0x010F,0x1150,0x1150,0x1130,0x1930,0x2150,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x192F,0x2130,0x1930,0x08EF,0x0991,0x3C1A,0x2BF9,0x23F9,0x13D9,0x13B8,0x1BD9,0x23D9,0x2BFA,0x33FA,0x3378,0x012F,0x0930,0x1130,0x1930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1951,0x1930,0x2150,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x2130,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x1911,0x1932,0x1153,0x1974,0x19D6,0x2217,0x2217,0x21F7,0x1995,0x1133,0x1132,0x1131,0x1931,0x1930,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x212F,0x210F,0x212F,0x292F,0x210F,0x290F,0x210F,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x2910,0x2910,0x210F,0x210F,0x2910,0x2930,0x210F,0x2910,0x290F,0x290F,0x210F,0x210F,0x292F,0x290F, + 0x292F,0x292F,0x212F,0x210F,0x2930,0x290F,0x290F,0x2930,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2910,0x2930,0x2110,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x1931,0x1931,0x1931,0x1132,0x1153,0x1174,0x19B6,0x19B7,0x19D8,0x19F9,0x1A19,0x19F9,0x11D7,0x1175,0x1975,0x1133,0x1932,0x1932,0x2152,0x2131,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x210F,0x292F,0x210F,0x292F,0x292F,0x290F,0x210F,0x292F,0x210F,0x290F,0x290F,0x2110,0x210F,0x2110,0x2930,0x2110,0x2110,0x2130,0x2131,0x1931,0x1931,0x2152,0x1932,0x1133,0x1154,0x11B6,0x11F7,0x11F8,0x09F8,0x0A19,0x0A19,0x09D8,0x09B7,0x0996,0x0976,0x11B6,0x19B6,0x19B6,0x19B6,0x19B5,0x1974,0x1953,0x1953,0x1932,0x2132,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x2930,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1132,0x1153,0x19D6,0x19F7,0x19F7,0x19F7,0x19F7,0x11B6,0x11B6,0x11B6,0x11D7,0x19F8,0x19F8,0x11D8,0x11D7,0x11B6,0x0934,0x08F2,0x1112,0x1111,0x1111,0x10F1,0x10F1,0x1911,0x1911,0x1111,0x1111,0x1932,0x1911,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x10F1,0x18F1,0x18F1,0x18F1,0x10F1,0x10F1,0x10F1,0x1111,0x10F1,0x18F1,0x18F1,0x10F1,0x10F1,0x18F1,0x18F1,0x10F1,0x1911,0x10F1,0x10F1,0x10F1,0x10F1,0x1911,0x18F1,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x212F,0x212F,0x210F,0x212F,0x2930,0x2930,0x212F,0x210F,0x2930,0x210F,0x210F,0x212F,0x2930,0x292F,0x210F,0x290F,0x2930,0x212F,0x2110,0x2930,0x290F,0x210F,0x210F,0x210F,0x212F,0x292F,0x292F,0x212F,0x212F,0x210F,0x210F,0x2130,0x210F,0x2930,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x210F,0x2110,0x2110,0x210F,0x290F,0x210F,0x290F,0x292F,0x210F,0x210F,0x290F,0x2930,0x2910,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x2910,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x210F,0x2130,0x2950,0x212F,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x18EF,0x18EF,0x1951,0x63FB,0x5BDA,0x53BA,0x53BA,0x53BA,0x5B9A,0x08CF,0x086E,0x18EF,0x2930,0x2130,0x210F,0x20EF,0x18EF,0x08AE,0x2192,0x5BDB,0x539A,0x539A,0x539A,0x539A,0x535A,0x08AF,0x002D,0x18CF,0x5B19,0x637A,0x637A,0x5B7A,0x5359,0x537A,0x539A,0x539A,0x53BA,0x539A,0x5BBA,0x21F3,0x1110,0x1930,0x1910,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2151,0x1932,0x1112,0x1112,0x21B6,0x29F7,0x21F6,0x1995,0x1133,0x1132,0x1951,0x1950,0x2130,0x212F,0x2130,0x2130,0x2130,0x1931,0x1932,0x1113,0x21B5,0x29F7,0x2A17,0x2195,0x1112,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x2930,0x2110,0x2110,0x2930,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2930,0x2930,0x210F,0x2910,0x2910,0x2910,0x210F,0x2910,0x2930,0x2910,0x2110,0x2110,0x212F,0x212F,0x290F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1132,0x1153,0x21D6,0x21F6,0x19F6,0x19B5,0x1133,0x1953,0x2173,0x2952,0x2951,0x2931,0x2951,0x2950,0x2950,0x3171,0x3150,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3930,0x392F,0x390E,0x388C,0xB3F8,0xDCDB,0xDC99,0xDC78,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xE457,0xDC36,0xDC36,0xDC36,0xDC57,0xDC57,0xDC57,0xDC37,0xE457,0xDC37,0xE437,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xDC17,0xDC17,0xE437,0xDC16,0xDC16,0xDC17,0xDC17,0xDBF6,0xDC17,0xDC37,0xDC38,0xDC58,0xDC9A,0xBC19,0x40AC,0x306B,0x30CE,0x30EE,0x290F,0x290F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x2930,0x2930,0x2910,0x2910,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2910,0x290F,0x290F,0x290F,0x2930,0x2910,0x2930,0x210F,0x2910,0x210F,0x2930,0x2110,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2131,0x2111,0x2111,0x2111,0x2111,0x2131,0x2131,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x210F,0x2930,0x2130,0x2130,0x2930,0x212F,0x2930,0x2930,0x212F,0x210F,0x210F,0x2930,0x212F,0x210F,0x212F,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2110,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x2110,0x2910,0x2910,0x2110,0x2910,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x11D6,0x11F7,0x11D7,0x1195,0x1132,0x1911,0x2111,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x290F,0x210F,0x290F,0x290F,0x210F,0x292F,0x290F,0x210F,0x292F,0x292F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x2910,0x290F,0x290F,0x2930,0x210F,0x2110,0x1910,0x1910,0x08EF,0x00EF,0x545C,0x33DA,0x2BDA,0x23B9,0x1378,0x1BB9,0x1BB9,0x1BB9,0x23FA,0x23FA,0x2C1B,0x2C1A,0x23FA,0x2BFA,0x343A,0x549C,0x11B2,0x00CE,0x1930,0x2150,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1930,0x1110,0x008E,0x3275,0x4BFB,0x3BBA,0x33DA,0x2BDA,0x23B9,0x23B9,0x23DA,0x23B9,0x23B9,0x2399,0x33DA,0x441B,0x3B38,0x00AE,0x1110,0x190F,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x190F,0x190F,0x110F,0x012F,0x543B,0x33D9,0x33B9,0x2BB9,0x2399,0x2BB9,0x2BB9,0x33BA,0x3BFA,0x3B79,0x00EF,0x090F,0x1130,0x1950,0x1930,0x2130,0x190F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2150,0x1930,0x08CF,0x0950,0x43B9,0x33D9,0x2BFA,0x23D9,0x1BB9,0x23D9,0x2BDA,0x33FA,0x3BFA,0x3B78,0x010F,0x1130,0x110F,0x1910,0x2130,0x2130,0x2110,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x1931,0x1931,0x1931,0x1931,0x1930,0x1930,0x1930,0x1930,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x210F,0x212F,0x210F,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x2130,0x2130,0x2930,0x2130,0x2130,0x1910,0x1911,0x1932,0x1133,0x1174,0x19B6,0x2217,0x21F7,0x21F7,0x1995,0x1133,0x1112,0x1911,0x1931,0x1931,0x1930,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F, + 0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2110,0x2110,0x2110,0x212F,0x2930,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x1930,0x1931,0x1951,0x1132,0x1153,0x1174,0x1196,0x19B7,0x19F9,0x1A19,0x1A39,0x1A19,0x11B7,0x1196,0x1174,0x1133,0x1132,0x1932,0x1932,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x210F,0x2110,0x210F,0x292F,0x212F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x2130,0x2130,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x2132,0x1932,0x1912,0x1133,0x1154,0x11D6,0x11F8,0x1218,0x09F8,0x0A19,0x09F8,0x09B7,0x09B7,0x11B7,0x11B7,0x11B6,0x11B7,0x19F7,0x2218,0x19D7,0x1995,0x1154,0x1953,0x1952,0x1911,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2910,0x210F,0x210F,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x2110,0x2110,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2130,0x1931,0x1112,0x1195,0x19D7,0x19D7,0x11D7,0x11B6,0x0996,0x0976,0x0975,0x0975,0x0975,0x11B6,0x11D7,0x11D8,0x11D8,0x11D8,0x1196,0x0934,0x0933,0x0912,0x0912,0x0912,0x0912,0x0912,0x1112,0x1112,0x0912,0x0912,0x0913,0x0912,0x0912,0x0912,0x1112,0x0912,0x08F2,0x08F2,0x0912,0x08F2,0x0912,0x08F2,0x08F2,0x0912,0x08F2,0x08F2,0x0912,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08D2,0x08D2,0x08F2,0x08F2,0x08D2,0x08F2,0x08F2,0x08F2,0x0912,0x08F2,0x08F1,0x08F1,0x10F2,0x1112,0x1932,0x1932,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2930,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x2110,0x210F,0x2930,0x2930,0x290F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x212F,0x210F,0x290F,0x210F,0x290F,0x210F,0x2910,0x290F,0x290F,0x210F,0x2910,0x210F,0x2110,0x210F,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x210F,0x290F,0x210F,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x2110,0x210F,0x2130,0x2930,0x2130,0x2930,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x18CF,0x10EF,0x63BA,0x5BBA,0x539A,0x539A,0x539A,0x5B7A,0x088E,0x108E,0x20F0,0x2110,0x210F,0x210F,0x210F,0x18CF,0x10CF,0x2171,0x63DB,0x53BB,0x539B,0x539B,0x537B,0x5B7B,0x004E,0x18F0,0x6339,0x635A,0x5B39,0x5B5A,0x5B5A,0x535A,0x537A,0x5B9B,0x5BBB,0x5B9A,0x5B9A,0x21D3,0x10EF,0x1930,0x190F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2910,0x290F,0x210F,0x210F,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x2151,0x2972,0x1932,0x1112,0x1112,0x1975,0x29F7,0x21D6,0x1974,0x1133,0x1932,0x1951,0x2151,0x2150,0x212F,0x2130,0x2130,0x2130,0x2131,0x1932,0x1133,0x21B5,0x21F7,0x29F7,0x21B5,0x1112,0x1912,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x212F,0x2930,0x2930,0x212F,0x212F,0x212F,0x2110,0x2110,0x210F,0x210F,0x290F,0x2930,0x210F,0x2930,0x290F,0x210F,0x2910,0x2910,0x2930,0x2930,0x2110,0x2930,0x2910,0x2910,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x210F,0x290F,0x292F,0x290F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1911,0x1132,0x1174,0x19D6,0x19F7,0x19F6,0x19B5,0x1133,0x1933,0x2973,0x2952,0x2952,0x2931,0x2951,0x3151,0x2950,0x3150,0x3150,0x3151,0x3151,0x3171,0x3151,0x3151,0x3150,0x3950,0x392F,0x390E,0x40AC,0xBC19,0xDCDA,0xE4B9,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC56,0xDC36,0xDC56,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC17,0xE437,0xDC17,0xDC17,0xE437,0xE417,0xDBF6,0xDC16,0xDC16,0xDBF6,0xDBF7,0xDC17,0xDC37,0xDC38,0xD418,0xD438,0xDCBB,0xCC9B,0x6190,0x308C,0x38EE,0x310F,0x310F,0x290F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x290F,0x290F,0x290F,0x2930,0x2910,0x2930,0x2910,0x2930,0x2110,0x2130,0x2930,0x212F,0x210F,0x2110,0x2110,0x2930,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2910,0x210F,0x2910,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x2930,0x210F,0x210F,0x212F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x2910,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2110,0x2910,0x2910,0x2910,0x20F0,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1932,0x1133,0x11D6,0x11F7,0x11D7,0x1995,0x1132,0x1911,0x2111,0x2110,0x2110,0x2110,0x2930,0x290F,0x212F,0x212F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2930,0x212F,0x212F,0x212F,0x292F,0x2930,0x290F,0x2930,0x2930,0x2110,0x2110,0x210F,0x2130,0x1910,0x08CF,0x00AF,0x647D,0x4BFB,0x43FB,0x339A,0x3BFB,0x4C7D,0x443C,0x443C,0x441B,0x3BBA,0x3BDB,0x3BDB,0x441B,0x43FB,0x4C1B,0x53DA,0x0910,0x10CF,0x1910,0x2130,0x2130,0x212F,0x212F,0x212F,0x214F,0x212F,0x2150,0x2130,0x2130,0x18F0,0x10F0,0x5B9A,0x4B7A,0x437A,0x439A,0x3B9A,0x3B9A,0x339A,0x339A,0x339A,0x33BA,0x3BBA,0x43BA,0x4B9A,0x641C,0x1951,0x10F0,0x1910,0x2110,0x2130,0x210F,0x2130,0x212F,0x292F,0x2930,0x212F,0x210F,0x190F,0x10EF,0x00EE,0x5C1B,0x439A,0x3B9A,0x3B9A,0x3379,0x3BBA,0x3B79,0x3B7A,0x4BFB,0x4379,0x00CE,0x1110,0x1930,0x1930,0x192F,0x212F,0x192F,0x190F,0x212F,0x2130,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x10CF,0x0910,0x53DB,0x43BA,0x3BDA,0x33DA,0x33BA,0x33BA,0x339A,0x3BDA,0x4BFB,0x4358,0x010F,0x1130,0x1910,0x1910,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x1931,0x1930,0x1931,0x1930,0x1930,0x1930,0x1930,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2950,0x2130,0x2130,0x1911,0x1932,0x1133,0x1174,0x19D6,0x2217,0x2217,0x19F6,0x1175,0x1153,0x1132,0x1112,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x292F,0x290F,0x2930,0x290F,0x290F,0x290F,0x292F,0x212F,0x292F,0x210F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2930,0x2910,0x2910,0x2910,0x290F,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F, + 0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2930,0x2930,0x290F,0x210F,0x290F,0x2930,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930,0x2910,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2910,0x290F,0x210F,0x2930,0x2930,0x2110,0x2930,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2150,0x2151,0x1951,0x1972,0x1952,0x1153,0x1174,0x1196,0x19B7,0x19F8,0x1A19,0x1A19,0x11F8,0x19D7,0x1195,0x1154,0x1133,0x1112,0x1932,0x1932,0x2131,0x2131,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2930,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x2151,0x2131,0x2131,0x2131,0x1912,0x1112,0x1133,0x1175,0x11D7,0x11F8,0x09F8,0x09F9,0x09D8,0x09B8,0x09B7,0x11B7,0x11B6,0x0975,0x1176,0x11B7,0x2219,0x2218,0x19D7,0x19B7,0x21D6,0x1153,0x1111,0x1911,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x2930,0x2110,0x210F,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2130,0x2130,0x210F,0x290F,0x210F,0x2910,0x2910,0x210F,0x2910,0x210F,0x2930,0x290F,0x212F,0x210F,0x292F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2131,0x1911,0x1112,0x19D6,0x19F7,0x11D7,0x11B7,0x0996,0x1196,0x0975,0x0955,0x0954,0x0955,0x0955,0x0976,0x11D8,0x11D8,0x11D8,0x11F8,0x11D7,0x11B6,0x11B6,0x11B6,0x11D7,0x11B7,0x11D7,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x1196,0x11B6,0x1196,0x11B6,0x11B6,0x19D7,0x19D7,0x19D7,0x11B6,0x19B7,0x11B6,0x11B6,0x11B6,0x11D6,0x11D6,0x11B6,0x11B6,0x11B6,0x11B6,0x19D6,0x11B6,0x11B7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x19F7,0x19F7,0x19F7,0x19F7,0x19D7,0x19D7,0x19D6,0x19B6,0x1154,0x1133,0x1112,0x1112,0x1932,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x2930,0x2930,0x210F,0x210F,0x210F,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x2130,0x2930,0x210F,0x212F,0x2930,0x2930,0x2910,0x2930,0x210F,0x2930,0x2910,0x2910,0x290F,0x2930,0x290F,0x2930,0x290F,0x290F,0x210F,0x2130,0x212F,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2130,0x2930,0x2130,0x2130,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x18EF,0x18EF,0x6BBA,0x63BB,0x5B9A,0x5BBA,0x5B9A,0x5B7A,0x088E,0x18AF,0x2110,0x2110,0x210F,0x210F,0x20EF,0x20EF,0x10CF,0x29B2,0x63BB,0x5B9A,0x5B9B,0x5B7A,0x5B7B,0x639B,0x3A15,0x633A,0x6B7B,0x635A,0x637B,0x5B5A,0x5319,0x5B5A,0x5B9A,0x5BBB,0x5B9A,0x5B79,0x21B2,0x10EF,0x1930,0x1930,0x2130,0x2110,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2130,0x2130,0x2930,0x2910,0x2110,0x2910,0x2110,0x2930,0x2130,0x2130,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x290F,0x210F,0x292F,0x292F,0x210F,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2151,0x2151,0x1932,0x1112,0x1133,0x21B5,0x21F7,0x21D6,0x1974,0x1133,0x1112,0x1931,0x1930,0x2150,0x2150,0x212F,0x2130,0x2110,0x1931,0x1132,0x1133,0x21B5,0x21F7,0x2A17,0x19B5,0x1112,0x1932,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x210F,0x212F,0x2930,0x2930,0x212F,0x212F,0x212F,0x2930,0x210F,0x2910,0x290F,0x2930,0x2910,0x2910,0x2930,0x210F,0x290F,0x2930,0x290F,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2930,0x2930,0x2110,0x2930,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2151,0x2151,0x1931,0x1111,0x1133,0x19B5,0x19F7,0x19F7,0x19F7,0x19B6,0x1154,0x1953,0x2173,0x2952,0x2972,0x2951,0x2951,0x3171,0x2950,0x3150,0x2950,0x3151,0x3151,0x3171,0x3171,0x3171,0x3150,0x3930,0x392F,0x412F,0x48ED,0xD4BB,0xDCBA,0xDC99,0xDC58,0xDC58,0xDC37,0xDC37,0xE457,0xDC36,0xE457,0xDC57,0xDC56,0xDC56,0xE457,0xDC56,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC16,0xDC17,0xDC37,0xE417,0xDC17,0xE417,0xDC16,0xDC17,0xDC16,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC18,0xDC38,0xDC59,0xD47A,0xDCFC,0xA397,0x40CD,0x38EE,0x310F,0x310F,0x3130,0x3130,0x2930,0x2950,0x2950,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2930,0x2910,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x210F,0x290F,0x210F,0x2930,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2110,0x2930,0x2910,0x2110,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2110,0x2930,0x2910,0x290F,0x2930,0x2930,0x292F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x2930,0x212F,0x2130,0x2130,0x210F,0x2930,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2910,0x290F,0x212F,0x292F,0x210F,0x210F,0x212F,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x1910,0x1931,0x1132,0x0933,0x11D6,0x19F7,0x19F7,0x1995,0x1132,0x1911,0x2111,0x2110,0x2110,0x210F,0x2110,0x2930,0x212F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x292F,0x292F,0x290F,0x210F,0x2930,0x212F,0x2930,0x2930,0x212F,0x292F,0x2930,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2110,0x2930,0x2110,0x2130,0x1910,0x10CF,0x008E,0x6C3D,0x4B5A,0x537B,0x3AF9,0x3B19,0x32F8,0x6C9E,0x19F4,0x006E,0x006E,0x004E,0x004E,0x004E,0x004E,0x004E,0x002D,0x108F,0x18AF,0x20EF,0x210F,0x2950,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x18F0,0x10AF,0x5AD8,0x6B7B,0x5B5A,0x5B5B,0x535B,0x4B5A,0x537B,0x4B7B,0x4B7A,0x4B7A,0x4B9B,0x4B9B,0x537A,0x535A,0x637A,0x637A,0x086E,0x20F0,0x2110,0x2110,0x2910,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x10EE,0x08CE,0x63DB,0x4B5A,0x4B7A,0x4B7A,0x4B7A,0x4B7A,0x435A,0x4B7A,0x5BFC,0x63FC,0x008F,0x1110,0x1930,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x10CF,0x1110,0x6BFC,0x53BB,0x4B9B,0x437A,0x437A,0x439A,0x437A,0x4BBB,0x5BDB,0x5379,0x08EF,0x1110,0x1910,0x1910,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x1911,0x1931,0x1931,0x1951,0x1931,0x1931,0x1930,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x212F,0x210F,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x2930,0x2110,0x2930,0x2130,0x2131,0x1911,0x1111,0x1133,0x1174,0x19D6,0x2217,0x2217,0x19F6,0x1995,0x1133,0x1112,0x1932,0x1931,0x2151,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x292F,0x210F,0x290F,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x212F,0x292F,0x290F,0x210F,0x210F,0x290F,0x2110,0x2910,0x2930,0x290F,0x2930,0x2930,0x290F,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F, + 0x210F,0x212F,0x210F,0x290F,0x290F,0x2930,0x210F,0x2930,0x2910,0x2910,0x2910,0x210F,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2930,0x290F,0x210F,0x290F,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x2910,0x2910,0x210F,0x212F,0x210F,0x290F,0x290F,0x210F,0x292F,0x290F,0x292F,0x210F,0x210F,0x210F,0x212F,0x2150,0x2130,0x2151,0x1951,0x1932,0x1932,0x1153,0x1175,0x1196,0x11B7,0x19F8,0x1A19,0x1A19,0x1A18,0x11D7,0x1195,0x1154,0x1133,0x1132,0x1932,0x2152,0x2131,0x2130,0x2110,0x2130,0x212F,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x212F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2130,0x210F,0x290F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2111,0x1931,0x1912,0x1112,0x1153,0x11B6,0x11F7,0x09F8,0x09F8,0x09D8,0x09D8,0x09B7,0x0996,0x0955,0x0955,0x0976,0x0976,0x11B7,0x19F8,0x11F8,0x19F8,0x19B7,0x1154,0x1111,0x1911,0x1910,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2930,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2131,0x1911,0x1112,0x19B6,0x11D7,0x11D7,0x0996,0x0975,0x0975,0x0955,0x0954,0x0954,0x0954,0x0955,0x0956,0x0997,0x09B8,0x09D8,0x11F9,0x1219,0x1A39,0x1A39,0x1A39,0x2259,0x2239,0x225A,0x2259,0x227A,0x2259,0x2259,0x2259,0x225A,0x227A,0x225A,0x225A,0x2A7A,0x225A,0x225A,0x225A,0x227A,0x225A,0x225A,0x225A,0x225A,0x225A,0x227A,0x227A,0x227A,0x2259,0x2259,0x2A79,0x2A7A,0x2259,0x227A,0x225A,0x225A,0x2259,0x225A,0x2259,0x225A,0x2239,0x2259,0x2239,0x2259,0x2259,0x2259,0x2239,0x2259,0x2239,0x2259,0x2A59,0x21F7,0x1995,0x1133,0x1132,0x1932,0x1951,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x290F,0x212F,0x2930,0x212F,0x210F,0x212F,0x212F,0x2130,0x2930,0x210F,0x210F,0x2110,0x210F,0x2110,0x2910,0x2910,0x2910,0x210F,0x2910,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x2930,0x210F,0x212F,0x2910,0x2910,0x210F,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x2930,0x210F,0x2930,0x290F,0x2110,0x210F,0x2110,0x290F,0x210F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x210F,0x20EF,0x10AE,0x6B9A,0x6BBB,0x639A,0x639A,0x5B7A,0x635A,0x108F,0x18AF,0x2110,0x20EF,0x2930,0x2930,0x20EF,0x2110,0x10AE,0x2992,0x63BB,0x639B,0x639B,0x5B7B,0x5B3A,0x5B3A,0x631A,0x631A,0x633A,0x6B5B,0x635A,0x635A,0x5B3A,0x5B5A,0x639B,0x639A,0x5B7A,0x2192,0x10EF,0x190F,0x2130,0x190F,0x2130,0x2110,0x2130,0x2130,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x210F,0x210F,0x212F,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2910,0x2110,0x290F,0x2910,0x2110,0x2930,0x2110,0x2130,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x292F,0x290F,0x292F,0x292F,0x210F,0x292F,0x212F,0x212F,0x210F,0x212F,0x2930,0x210F,0x2130,0x2130,0x2131,0x1911,0x1132,0x1133,0x19D5,0x2217,0x19D6,0x1995,0x1133,0x1932,0x1931,0x2130,0x2150,0x2150,0x210F,0x210F,0x2110,0x1931,0x1132,0x1133,0x21B5,0x2A17,0x21F6,0x21B5,0x1112,0x1932,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x210F,0x2930,0x210F,0x2930,0x2130,0x210F,0x212F,0x212F,0x212F,0x2930,0x2910,0x2930,0x2930,0x2930,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2910,0x2910,0x2930,0x2910,0x2930,0x2110,0x2110,0x2110,0x2930,0x292F,0x290F,0x292F,0x290F,0x292F,0x290F,0x2910,0x2930,0x2130,0x2130,0x2151,0x2151,0x1931,0x1111,0x1132,0x1153,0x19B6,0x19F7,0x19F7,0x19F7,0x11B6,0x1174,0x1953,0x2173,0x2153,0x2952,0x2951,0x2951,0x2951,0x3151,0x3151,0x3151,0x3171,0x3151,0x3171,0x3171,0x3151,0x3150,0x3930,0x392F,0x410E,0x48ED,0xDCDC,0xDCBA,0xDC99,0xDC78,0xDC57,0xDC57,0xDC37,0xDC37,0xDC36,0xDC57,0xDC36,0xDC57,0xDC56,0xDC57,0xE457,0xDC36,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC36,0xDC37,0xDC37,0xDC37,0xDC36,0xDC36,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC16,0xDC16,0xE417,0xDC17,0xDC16,0xDC16,0xDC17,0xDC17,0xDBF6,0xDC17,0xDC17,0xDC17,0xDBF7,0xDC17,0xDC18,0xDC38,0xDC59,0xDC59,0xD49A,0xDD1D,0x8AB4,0x308C,0x390F,0x310F,0x310F,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2930,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2930,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2130,0x2130,0x2130,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2110,0x210F,0x2930,0x2130,0x212F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x1931,0x1131,0x1153,0x11D6,0x19F7,0x19D7,0x1995,0x1132,0x1911,0x2131,0x2110,0x2130,0x2110,0x2110,0x2930,0x210F,0x212F,0x2930,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2110,0x2130,0x2930,0x2130,0x2110,0x18EF,0x10AF,0x004E,0x73DC,0x637B,0x6B7C,0x5B1A,0x52FA,0x635A,0x6BBC,0x31B4,0x1890,0x186F,0x102F,0x102F,0x102F,0x102F,0x102F,0x102E,0x102E,0x20AF,0x20AF,0x20EF,0x210F,0x2130,0x212F,0x212F,0x2150,0x2930,0x2110,0x20F0,0x188F,0x3153,0x733A,0x6B1A,0x6B1B,0x6B1B,0x633B,0x633B,0x635B,0x5B5B,0x635B,0x5B3B,0x5B5B,0x633B,0x633B,0x631A,0x631A,0x7B7B,0x49F5,0x20B0,0x20F0,0x2910,0x2910,0x290F,0x290F,0x292F,0x292F,0x212F,0x212F,0x210F,0x10EE,0x088E,0x637B,0x635B,0x637B,0x637C,0x5B5B,0x5B3B,0x635B,0x637B,0x639C,0x73DD,0x088F,0x18D0,0x1910,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2110,0x18CF,0x10AF,0x6BBB,0x637B,0x637B,0x533B,0x535B,0x533B,0x535B,0x639B,0x63BB,0x5B59,0x10CF,0x18F0,0x1910,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2110,0x2110,0x2130,0x2130,0x2131,0x1931,0x1931,0x1931,0x1931,0x1952,0x1951,0x1931,0x1951,0x1931,0x2151,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x212F,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x292F,0x2930,0x2130,0x2110,0x2130,0x2130,0x2131,0x1911,0x1112,0x1133,0x1154,0x19D6,0x1A17,0x2217,0x21F7,0x1995,0x1133,0x1112,0x1911,0x1952,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x292F,0x210F,0x292F,0x212F,0x212F,0x290F,0x210F,0x290F,0x292F,0x2910,0x2930,0x290F,0x292F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2910,0x2930,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F, + 0x212F,0x210F,0x2930,0x212F,0x2930,0x2930,0x210F,0x210F,0x2910,0x2910,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x2110,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2151,0x1931,0x1931,0x1911,0x1132,0x1974,0x1975,0x1196,0x11B7,0x11F8,0x1219,0x11F8,0x11F8,0x11B7,0x0975,0x1134,0x1133,0x1912,0x1932,0x2131,0x2131,0x2150,0x2130,0x212F,0x212F,0x2130,0x2930,0x2130,0x212F,0x2930,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x290F,0x210F,0x290F,0x212F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x1911,0x1911,0x1132,0x1194,0x19D7,0x11F8,0x11F8,0x09D8,0x09B7,0x0996,0x0955,0x0955,0x0935,0x0955,0x0976,0x0996,0x11B7,0x11D8,0x11D8,0x19D7,0x1154,0x1112,0x1911,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2130,0x2130,0x2131,0x1911,0x1133,0x19D6,0x19F7,0x11D7,0x11B7,0x0996,0x0975,0x0955,0x0975,0x0954,0x0954,0x0955,0x0976,0x0997,0x11D8,0x09D8,0x09D8,0x11F8,0x1A19,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19D8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19D8,0x19F8,0x19F8,0x19F8,0x19F8,0x19D7,0x19F8,0x19F7,0x19D7,0x19D7,0x19F7,0x19F8,0x19D8,0x19F8,0x19F8,0x19D8,0x19D8,0x19D8,0x19F8,0x19F8,0x19D7,0x19F8,0x19F8,0x19D7,0x19F8,0x19F8,0x19F8,0x19F8,0x1A18,0x1A18,0x2217,0x19D6,0x1154,0x1132,0x1111,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x290F,0x292F,0x290F,0x290F,0x2930,0x2930,0x212F,0x212F,0x2130,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2930,0x212F,0x2930,0x210F,0x212F,0x2130,0x210F,0x2930,0x290F,0x210F,0x2910,0x210F,0x2110,0x2910,0x210F,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x20EF,0x20EF,0x18CF,0x6B9A,0x6BBB,0x637A,0x637B,0x637A,0x633A,0x10AF,0x18AF,0x20F0,0x20F0,0x2930,0x2930,0x20EF,0x20EF,0x10AF,0x2151,0x6BBB,0x637B,0x635B,0x633B,0x633B,0x633B,0x631A,0x631A,0x633B,0x633A,0x635B,0x6B7B,0x635A,0x637A,0x639A,0x637A,0x2171,0x190F,0x1930,0x1930,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x2910,0x210F,0x2910,0x2910,0x2930,0x2910,0x290F,0x292F,0x210F,0x210F,0x2910,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2130,0x2110,0x2110,0x210F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x2110,0x2110,0x1910,0x1911,0x1132,0x1153,0x19B5,0x21D6,0x21D6,0x1995,0x1133,0x1952,0x1931,0x2130,0x2150,0x2130,0x212F,0x210F,0x2110,0x1931,0x1132,0x1153,0x19B5,0x21F6,0x21F6,0x1994,0x1112,0x1912,0x1911,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x212F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2110,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x210F,0x2930,0x290F,0x290F,0x2910,0x2930,0x2910,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x290F,0x290F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2131,0x2152,0x1931,0x1132,0x1133,0x1154,0x0975,0x19F7,0x19F8,0x19F7,0x11D7,0x11B6,0x1174,0x1974,0x2173,0x2152,0x2952,0x2951,0x2951,0x3151,0x3151,0x3151,0x3171,0x3171,0x3171,0x3171,0x3171,0x3951,0x3950,0x414F,0x410E,0x48CD,0xDCDC,0xDCBA,0xDC99,0xDC78,0xDC58,0xDC57,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC36,0xE457,0xDC36,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC37,0xDC37,0xE457,0xDC37,0xDC36,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC36,0xDC37,0xDC16,0xDC16,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC16,0xDC16,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDBF7,0xDC38,0xDC38,0xD439,0xCC39,0xDD1D,0x408C,0x40EE,0x392F,0x3930,0x3130,0x2930,0x2930,0x2950,0x2950,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x212F,0x210F,0x290F,0x292F,0x210F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x20EF,0x290F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2930,0x210F,0x292F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x2930,0x2930,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x212F,0x2930,0x2930,0x290F,0x290F,0x210F,0x212F,0x290F,0x2930,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1111,0x1132,0x19D6,0x19F7,0x19D7,0x1175,0x1112,0x1911,0x2131,0x2110,0x2110,0x2930,0x2910,0x2930,0x292F,0x292F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2930,0x292F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x212F,0x210F,0x290F,0x2930,0x2930,0x2110,0x2930,0x2130,0x2130,0x2110,0x2110,0x20F0,0x18AF,0x108F,0x8BFD,0x7B5B,0x733B,0x731B,0x7B3C,0x7B5C,0x72DA,0x8B9D,0x9BFF,0x9BDE,0x9BBE,0x9BBE,0x9BBE,0x9BDE,0x937C,0x93BD,0x9C1D,0x7319,0x206E,0x28F0,0x20EF,0x210F,0x212F,0x212F,0x2930,0x2930,0x20F0,0x20AF,0x2090,0x72B9,0x831B,0x82FB,0x831C,0x7B1C,0x7B1C,0x733C,0x6AFB,0x6B1B,0x733B,0x733B,0x733C,0x731C,0x7B3C,0x7B3C,0x7AFB,0x72B9,0x831B,0x30D1,0x28D0,0x28D0,0x28F0,0x28EF,0x20EF,0x210F,0x292F,0x292F,0x210E,0x18EE,0x18CE,0x106E,0x737B,0x735C,0x7B7D,0x733C,0x6AFB,0x6AFB,0x733C,0x733C,0x735C,0x7BBC,0x106F,0x18D0,0x18F0,0x18EF,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2950,0x212F,0x210F,0x2110,0x20D0,0x20D0,0x737B,0x735B,0x737C,0x733C,0x62FB,0x62FB,0x6B3B,0x739C,0x7BBC,0x6B3A,0x18AF,0x18CF,0x18CF,0x18EF,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x1911,0x1931,0x1931,0x1932,0x1132,0x1132,0x1152,0x1152,0x1152,0x1952,0x1932,0x1911,0x1911,0x1911,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x210F,0x210F,0x2110,0x210F,0x2130,0x2131,0x2131,0x1931,0x1932,0x1133,0x1154,0x19B6,0x21F7,0x2217,0x19D6,0x1174,0x1133,0x1112,0x1932,0x2132,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x212F,0x212F,0x292F,0x290F, + 0x212F,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2930,0x290F,0x290F,0x210F,0x2110,0x290F,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x1930,0x1931,0x1931,0x1952,0x1953,0x1954,0x1175,0x1196,0x11D7,0x11F8,0x1219,0x1219,0x11F8,0x11B7,0x1175,0x1134,0x1113,0x1912,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x292F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x18F1,0x1912,0x1133,0x11B6,0x11F7,0x11F8,0x09F8,0x09B7,0x0976,0x0135,0x0134,0x0955,0x0955,0x0955,0x0976,0x09B7,0x11D8,0x11D8,0x19B7,0x1154,0x1112,0x1911,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2930,0x2110,0x210F,0x210F,0x212F,0x212F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1112,0x19D6,0x19F7,0x11D7,0x11B7,0x0996,0x0975,0x0955,0x0954,0x0954,0x0954,0x0975,0x0996,0x09B7,0x11D8,0x09B8,0x11D8,0x11B7,0x1196,0x1196,0x1196,0x1195,0x1196,0x1195,0x1175,0x1175,0x1175,0x1175,0x1196,0x1195,0x1196,0x1176,0x1175,0x1175,0x1176,0x1155,0x1155,0x1175,0x1155,0x1175,0x1175,0x1175,0x1175,0x1175,0x1155,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1155,0x1175,0x1175,0x1175,0x1175,0x1175,0x1996,0x1196,0x1196,0x1196,0x11B6,0x11D7,0x19F7,0x1A18,0x19F7,0x19D6,0x1974,0x1132,0x1912,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2130,0x2930,0x212F,0x212F,0x292F,0x292F,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2930,0x210F,0x210F,0x212F,0x212F,0x290F,0x210F,0x290F,0x210F,0x2930,0x212F,0x212F,0x210F,0x212F,0x2130,0x210F,0x212F,0x210F,0x212F,0x210F,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2110,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x210F,0x2930,0x210F,0x2130,0x210F,0x2130,0x2130,0x2930,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x20EF,0x10AE,0x73BB,0x6B7B,0x6B7B,0x635B,0x635B,0x633A,0x18B0,0x18AF,0x20CF,0x20EF,0x2910,0x290F,0x20EF,0x20EF,0x10AE,0x2952,0x6B9B,0x6B7B,0x635B,0x633B,0x6B3B,0x631A,0x6B1A,0x6B1B,0x6B3B,0x6B3B,0x635A,0x6B7B,0x637A,0x6B9B,0x6359,0x2171,0x18CF,0x2110,0x212F,0x190F,0x2130,0x210F,0x212F,0x212F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x210F,0x2910,0x210F,0x2910,0x2930,0x212F,0x210F,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x2910,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2131,0x1911,0x1132,0x1153,0x19D6,0x21F6,0x19B6,0x1995,0x1153,0x1932,0x1931,0x1930,0x2130,0x2110,0x2110,0x2130,0x2131,0x1931,0x1932,0x1133,0x19B5,0x21F7,0x21F6,0x19B5,0x1112,0x1932,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x290F,0x2910,0x2110,0x2930,0x2910,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x290F,0x2910,0x2930,0x2130,0x2131,0x1911,0x1912,0x1112,0x1154,0x1175,0x1175,0x0996,0x11D7,0x11F8,0x11F8,0x11D7,0x19D7,0x19B6,0x1995,0x1974,0x2153,0x2952,0x2951,0x2951,0x3151,0x3171,0x3171,0x3171,0x3171,0x3171,0x3171,0x3971,0x3971,0x3950,0x4150,0x410E,0x48ED,0xDCDC,0xDC9A,0xDC99,0xDC78,0xDC58,0xE457,0xDC37,0xE457,0xDC37,0xDC37,0xE457,0xDC36,0xDC36,0xDC36,0xDC57,0xDC57,0xDC37,0xDC57,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC16,0xDC37,0xDC16,0xDC37,0xDC17,0xDC16,0xDC16,0xDC16,0xDC16,0xDC17,0xDC16,0xDBF6,0xDC16,0xDC16,0xDBF6,0xDBF6,0xDC17,0xDC17,0xDBF7,0xDBF7,0xDC17,0xDC38,0xDC59,0xD459,0xC439,0x408B,0x304B,0x410F,0x310F,0x3130,0x3130,0x3130,0x3150,0x2950,0x2950,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2110,0x2110,0x210F,0x210F,0x2910,0x2930,0x292F,0x292F,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x20EF,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2930,0x290F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x210F,0x2130,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x212F,0x2930,0x2930,0x210F,0x2130,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1931,0x0912,0x11B5,0x19F7,0x11D6,0x1195,0x1132,0x1911,0x2111,0x2131,0x2930,0x2930,0x2910,0x2930,0x2930,0x292F,0x2930,0x290F,0x210F,0x212F,0x210F,0x212F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x292F,0x2930,0x212F,0x210F,0x2930,0x2110,0x2110,0x2930,0x2930,0x2110,0x2930,0x2110,0x20EF,0x188F,0x104E,0x93BD,0x8B3C,0x831C,0x8AFC,0x82DB,0x82BB,0x8ADB,0x829A,0x8A9B,0x8A9B,0x92BB,0x8A9B,0x92DB,0x92FB,0x9B3C,0x9B7C,0x9BBD,0x939B,0x206E,0x28D0,0x20EF,0x210F,0x212F,0x2930,0x210F,0x2910,0x28F0,0x204F,0x4954,0x8AFB,0x8ADB,0x92DC,0x8ADC,0x8AFC,0x82DC,0x82FC,0x7AFB,0x7AFB,0x7B1B,0x831C,0x82FC,0x82DB,0x8B1C,0x8AFC,0x8AFC,0x82BB,0x82DB,0x7A99,0x202F,0x30B0,0x28D0,0x28F0,0x290F,0x210F,0x292F,0x292F,0x212F,0x20EE,0x18AE,0x102E,0x7B3B,0x831C,0x8B1D,0x82DC,0x82DC,0x82DC,0x82DC,0x7AFB,0x833C,0x8B9D,0x2090,0x20B0,0x20D0,0x20EF,0x2930,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x20F0,0x20D0,0x2090,0x833B,0x833C,0x8B5D,0x82FC,0x7ABB,0x7ADC,0x7AFC,0x833C,0x8B7C,0x731A,0x208F,0x20AF,0x20CF,0x20EF,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2111,0x1911,0x1911,0x1932,0x1132,0x1153,0x1174,0x1194,0x1994,0x19B5,0x19B4,0x1174,0x1153,0x1112,0x1912,0x1911,0x1911,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x290F,0x2930,0x212F,0x212F,0x212F,0x210F,0x2110,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2131,0x2131,0x1911,0x1932,0x1133,0x1154,0x19B6,0x21F7,0x2217,0x21F7,0x1174,0x0913,0x1112,0x1932,0x1931,0x2131,0x2130,0x2110,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x292F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2910,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F, + 0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x210F,0x210F,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x292F,0x2910,0x210F,0x210F,0x2930,0x212F,0x292F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1932,0x1932,0x1953,0x1153,0x1174,0x1196,0x11D7,0x1218,0x1A19,0x1A19,0x19F8,0x11B7,0x1155,0x1134,0x1133,0x1933,0x1932,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x18F0,0x1111,0x1112,0x1174,0x11F7,0x11F8,0x1219,0x11F8,0x0996,0x0114,0x0114,0x0934,0x1175,0x1195,0x0976,0x0976,0x11B7,0x19F8,0x11B7,0x1175,0x1112,0x1931,0x2110,0x2130,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x2110,0x210F,0x210F,0x290F,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x212F,0x2130,0x2930,0x2930,0x210F,0x210F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2111,0x1911,0x10F2,0x19D6,0x19F7,0x11B7,0x11B7,0x0976,0x0955,0x0934,0x0934,0x0954,0x0954,0x0955,0x0976,0x09B7,0x11D8,0x11D8,0x11B7,0x0954,0x0933,0x1133,0x1113,0x1132,0x0912,0x1133,0x1133,0x1133,0x1132,0x1133,0x1133,0x1132,0x1132,0x1113,0x1112,0x1113,0x1113,0x1113,0x1913,0x1113,0x1112,0x1112,0x1113,0x1113,0x1113,0x1133,0x1133,0x1133,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1112,0x1112,0x1112,0x1112,0x1132,0x1133,0x1133,0x1174,0x1174,0x0934,0x1155,0x11B6,0x19F7,0x2218,0x19F7,0x19B6,0x1974,0x1112,0x1112,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2930,0x212F,0x210F,0x210F,0x2910,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x2130,0x210F,0x2130,0x2930,0x210F,0x2930,0x212F,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x290F,0x210F,0x210F,0x210F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x20F0,0x18CF,0x83FC,0x739B,0x737B,0x737B,0x6B5B,0x735B,0x186F,0x188F,0x20D0,0x28F0,0x20EF,0x20EF,0x20EF,0x20F0,0x10AF,0x2952,0x73BC,0x6B7B,0x6B7C,0x6B5C,0x631B,0x6B1B,0x733B,0x6B1B,0x6B1B,0x6B3B,0x6B5B,0x6B5A,0x6B9B,0x635A,0x2971,0x18EF,0x1910,0x2110,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2930,0x290F,0x210F,0x2930,0x210F,0x210F,0x2930,0x210F,0x2110,0x210F,0x2930,0x212F,0x2930,0x2910,0x210F,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x210F,0x212F,0x290F,0x210F,0x290F,0x212F,0x210F,0x290F,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2910,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x2110,0x2130,0x2110,0x1931,0x1932,0x1133,0x1994,0x19D6,0x19D6,0x19B5,0x1994,0x1132,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1932,0x1153,0x19B6,0x2217,0x21F7,0x1994,0x1112,0x1911,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x212F,0x2930,0x290F,0x290F,0x2930,0x2110,0x2930,0x2930,0x210F,0x290F,0x2110,0x2930,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x290F,0x292F,0x290F,0x2930,0x2910,0x290F,0x2910,0x2910,0x2930,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x2110,0x2110,0x2930,0x2151,0x1931,0x1911,0x1113,0x1154,0x1996,0x19D7,0x19F8,0x11D7,0x11B7,0x11D8,0x11F8,0x11D8,0x19D8,0x19D7,0x19B6,0x1995,0x2174,0x2973,0x2952,0x2951,0x3171,0x3171,0x3171,0x3171,0x3151,0x3171,0x3171,0x3971,0x3971,0x3950,0x4150,0x410E,0x510E,0xDCDC,0xDCBA,0xDC99,0xDC58,0xDC58,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xDC16,0xDC36,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC16,0xDC17,0xDC37,0xDC37,0xDC17,0xDC17,0xDC17,0xDBF6,0xDC16,0xDC16,0xDC17,0xDC16,0xDC16,0xDC16,0xDBF6,0xDC17,0xDC17,0xDBF7,0xDBF7,0xDC17,0xDC17,0xDC38,0xDC59,0xD459,0x79F0,0x2809,0x38AD,0x390F,0x310F,0x3130,0x3150,0x3150,0x3150,0x2950,0x2950,0x2950,0x2950,0x2950,0x2930,0x2951,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2910,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x290F,0x290F,0x292F,0x210F,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x292F,0x290F,0x290F,0x290F,0x20EF,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x212F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1931,0x1133,0x19D6,0x1A17,0x11D6,0x1195,0x1132,0x1911,0x2111,0x2110,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x290F,0x210F,0x2930,0x2930,0x2930,0x290F,0x210F,0x292F,0x292F,0x2930,0x290F,0x290F,0x290F,0x292F,0x292F,0x2930,0x2930,0x2930,0x292F,0x292F,0x210F,0x2110,0x2930,0x2930,0x2930,0x2110,0x210F,0x20CF,0x188F,0x204F,0x9B9D,0x931C,0x9B1D,0x9AFC,0x9ADC,0x9ABC,0x9A9C,0x9A7C,0x9A7C,0xA29C,0x9A7C,0x9A7B,0x9A9B,0x9A9B,0x9A9B,0x92BA,0x92FA,0x935B,0x286F,0x28D0,0x28EF,0x290F,0x210F,0x290F,0x20EF,0x28D0,0x286F,0x282F,0x92DB,0x9ADC,0xA2DD,0x9ABC,0x927C,0x92BC,0x929C,0x8ADC,0x8ADC,0x7A7A,0x82BB,0x931D,0x8ADC,0x92DC,0x92BC,0x92BC,0x929C,0x92BC,0x92DC,0x9B5D,0x5154,0x3070,0x30D0,0x28F0,0x2930,0x290F,0x292F,0x210F,0x210F,0x20EF,0x208E,0x206F,0x935C,0x92FD,0x92DD,0x9ABD,0x929C,0x92BD,0x8A7B,0x8A9B,0x931C,0xA3FF,0x2870,0x206F,0x20CF,0x20EF,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x28F0,0x20AF,0x2870,0x9B7C,0x9B3D,0x9AFD,0x92BC,0x92BC,0x92BC,0x8ABC,0x92FC,0x933C,0x82FA,0x2870,0x28B0,0x20D0,0x2910,0x20F0,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x1911,0x1932,0x1932,0x1153,0x1174,0x11B5,0x11B6,0x19F7,0x1A17,0x19F7,0x19F7,0x19F7,0x19D6,0x1995,0x1133,0x1112,0x1911,0x1932,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2930,0x2130,0x2110,0x2131,0x2152,0x1911,0x1911,0x1932,0x1133,0x1174,0x19B6,0x21F7,0x2218,0x19D6,0x1174,0x1133,0x1112,0x1911,0x1931,0x2131,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F, + 0x210F,0x212F,0x210F,0x2930,0x210F,0x2930,0x2930,0x210F,0x290F,0x290F,0x2910,0x210F,0x210F,0x290F,0x2910,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2910,0x290F,0x2910,0x292F,0x290F,0x290F,0x290F,0x210F,0x212F,0x290F,0x290F,0x2910,0x2930,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1932,0x1133,0x1153,0x1175,0x11B6,0x11D7,0x11F8,0x1A19,0x1A19,0x19F9,0x1197,0x1175,0x1154,0x1133,0x1912,0x1931,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x210F,0x210F,0x2930,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x1910,0x1911,0x1111,0x1153,0x11B6,0x11F8,0x1218,0x1218,0x09B6,0x0955,0x0114,0x0934,0x0975,0x0975,0x0976,0x0976,0x11D7,0x1A18,0x19D7,0x1174,0x1132,0x1931,0x2130,0x2110,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2910,0x2110,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2111,0x1911,0x1112,0x1174,0x21F7,0x19D7,0x11B7,0x0996,0x0955,0x0955,0x0934,0x0934,0x0134,0x0975,0x11B7,0x11D7,0x11D7,0x19D7,0x1155,0x1133,0x1133,0x1112,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1931,0x1931,0x1911,0x1931,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x18F1,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x10F1,0x1911,0x1911,0x1911,0x1111,0x1111,0x1112,0x1112,0x1133,0x0934,0x11B6,0x19D7,0x21F7,0x21F7,0x19B6,0x1974,0x1133,0x1912,0x1932,0x2132,0x2111,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2930,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x210F,0x2930,0x210F,0x210F,0x2930,0x2930,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x290F,0x290F,0x2930,0x290F,0x212F,0x212F,0x2930,0x290F,0x2930,0x210F,0x212F,0x212F,0x210F,0x2930,0x2930,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2110,0x2110,0x2930,0x2110,0x2910,0x2930,0x290F,0x210F,0x212F,0x2950,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2110,0x2110,0x20F0,0x18AF,0x7BBB,0x737B,0x735B,0x735B,0x735B,0x7B7C,0x5237,0x2090,0x28D0,0x28D0,0x20EF,0x20EF,0x2110,0x2110,0x18AF,0x2931,0x739C,0x739C,0x6B5B,0x6B1B,0x6B1B,0x731B,0x731B,0x731B,0x6B1B,0x6B3B,0x6B5B,0x739B,0x6B5A,0x2952,0x18EF,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x210F,0x2910,0x290F,0x210F,0x290F,0x2930,0x210F,0x210F,0x2930,0x2930,0x290F,0x290F,0x2910,0x290F,0x2910,0x2910,0x2910,0x2110,0x2930,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1132,0x1153,0x1195,0x19D6,0x19D6,0x19B5,0x1994,0x1152,0x1932,0x2151,0x2131,0x2130,0x2110,0x2130,0x2130,0x2131,0x2152,0x1933,0x1153,0x19B5,0x21F7,0x21F7,0x1994,0x1112,0x1911,0x2131,0x2131,0x2110,0x2130,0x2110,0x2930,0x2110,0x2930,0x2930,0x212F,0x290F,0x2930,0x2930,0x212F,0x2930,0x2930,0x210F,0x2930,0x2110,0x2110,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x2930,0x2930,0x290F,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x2930,0x2130,0x2130,0x2131,0x1911,0x1112,0x1113,0x1996,0x19D7,0x1A19,0x19F8,0x11D8,0x09B7,0x11B7,0x11B8,0x11B8,0x19D8,0x19D7,0x19D7,0x21B6,0x2195,0x2173,0x2972,0x2951,0x3151,0x3171,0x3171,0x3171,0x3171,0x3992,0x3151,0x3971,0x3951,0x4151,0x4150,0x40EE,0x592E,0xDCDC,0xDC9A,0xDC99,0xDC78,0xE458,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC36,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC17,0xE437,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC17,0xDC17,0xDC16,0xDC17,0xDC16,0xDC16,0xDC17,0xDBF6,0xDC16,0xDC16,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDC16,0xDBF6,0xDBF6,0xDC17,0xDBF6,0xDBF7,0xDC17,0xDC17,0xDC18,0xD438,0xDC59,0xD47A,0x698F,0x388C,0x410E,0x390F,0x3130,0x3130,0x3130,0x3130,0x3151,0x3151,0x3151,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x210F,0x2130,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2951,0x2930,0x2930,0x2930,0x290F,0x290F,0x292F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x28EF,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x210F,0x210F,0x212F,0x292F,0x210F,0x212F,0x212F,0x210F,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2930,0x212F,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x11D6,0x11F7,0x11D6,0x1195,0x1132,0x1911,0x2131,0x2110,0x2130,0x2930,0x2910,0x290F,0x2930,0x2930,0x210F,0x290F,0x2930,0x2930,0x210F,0x2930,0x292F,0x2930,0x2930,0x210F,0x210F,0x290F,0x292F,0x2930,0x210F,0x292F,0x292F,0x292F,0x212F,0x2930,0x2930,0x2930,0x292F,0x292F,0x210F,0x2930,0x2110,0x2930,0x210F,0x2110,0x2110,0x20CF,0x208F,0x204F,0x9B7D,0xA31D,0xA2BC,0xA2BC,0xA29C,0xA27C,0xA25C,0xAA5C,0xAA7D,0xAA5C,0xAA5C,0xAA5C,0xAA7C,0xA27C,0xAA9C,0xA2BB,0x9ADB,0xA37C,0x284F,0x30D0,0x28CF,0x20EF,0x290F,0x2910,0x28D0,0x28B0,0x304F,0x69B6,0x9ADC,0xA2BC,0xAA9C,0xAA9D,0xA27C,0xA29C,0x9ABC,0x9ABC,0x9B1D,0x7A19,0x4893,0x92DC,0x9ADC,0x9ABC,0x9ABC,0xA2BD,0xA29D,0xA2BD,0x9A9C,0x9ADC,0x8ABB,0x3891,0x30B0,0x30D0,0x28EF,0x290F,0x292F,0x292F,0x210F,0x20EF,0x208E,0x284F,0x9B1D,0x9ADD,0xA2BD,0xA29D,0xA2BD,0xA29D,0xA29C,0x9A9C,0x9AFC,0xABDF,0x3050,0x2870,0x20AF,0x28EF,0x2910,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x20CF,0x288F,0x284F,0x9B1C,0xA2FC,0xA2BC,0xA29C,0xA29C,0xA29D,0x9A9C,0x9ABC,0x9B1D,0x8ADB,0x3070,0x30B0,0x28D0,0x2910,0x28F0,0x20F0,0x2110,0x2110,0x2111,0x2111,0x2131,0x1932,0x1932,0x1954,0x1995,0x19D6,0x19F7,0x19F7,0x1A18,0x11F7,0x1A18,0x19F8,0x11F7,0x19F7,0x19D7,0x1995,0x1133,0x1112,0x1932,0x1932,0x2132,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2931,0x2130,0x2930,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2132,0x2132,0x1912,0x1132,0x1133,0x1174,0x19B6,0x2217,0x21F8,0x21D7,0x1995,0x1113,0x1112,0x1911,0x1931,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x2130,0x212F,0x2130,0x212F,0x210F,0x2930,0x210F,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F, + 0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x210F,0x290F,0x290F,0x2910,0x290F,0x290F,0x2910,0x2910,0x292F,0x290F,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x2910,0x2930,0x2930,0x2910,0x2930,0x292F,0x292F,0x290F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x2152,0x1952,0x1952,0x1133,0x1154,0x1175,0x11B6,0x11D8,0x1A19,0x1A19,0x1A19,0x11D8,0x11B7,0x1155,0x1134,0x1133,0x1111,0x1931,0x1931,0x2131,0x1910,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x292F,0x292F,0x212F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x210F,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1111,0x1132,0x1175,0x19F7,0x1A19,0x1218,0x11D7,0x0955,0x0114,0x0934,0x0954,0x0975,0x0955,0x0976,0x19F7,0x19F8,0x19D7,0x1174,0x1132,0x2131,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x2930,0x2930,0x290F,0x2930,0x210F,0x2910,0x2110,0x2930,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x1911,0x1112,0x1133,0x19B5,0x19B6,0x11D7,0x11D7,0x11D7,0x0976,0x0975,0x0996,0x1196,0x19D7,0x19F7,0x11B7,0x1196,0x1155,0x1134,0x1933,0x1932,0x1932,0x1931,0x1911,0x1910,0x1911,0x1911,0x1931,0x1930,0x2131,0x2131,0x2131,0x1910,0x1910,0x1910,0x2131,0x2111,0x2131,0x2111,0x2111,0x2111,0x2111,0x2111,0x2131,0x1910,0x2111,0x2131,0x2131,0x2111,0x2131,0x2131,0x2110,0x1910,0x2110,0x2110,0x2110,0x1910,0x2131,0x2131,0x1931,0x1930,0x2131,0x2131,0x2131,0x1911,0x1931,0x1931,0x1931,0x1911,0x10F1,0x10F2,0x1133,0x0933,0x19B6,0x21F7,0x21F7,0x21F7,0x19B6,0x1154,0x1133,0x1912,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2910,0x290F,0x210F,0x212F,0x212F,0x2130,0x212F,0x2930,0x210F,0x212F,0x210F,0x2930,0x210F,0x292F,0x290F,0x2930,0x290F,0x2930,0x212F,0x2110,0x2110,0x2930,0x290F,0x2930,0x210F,0x2930,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2910,0x2910,0x290F,0x290F,0x212F,0x210F,0x2930,0x2950,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x18AF,0x739A,0x7B9B,0x735B,0x733B,0x731B,0x7B1B,0x837C,0x5A37,0x28B0,0x28D0,0x28F0,0x20CF,0x20CF,0x20F0,0x188F,0x3993,0x737B,0x735B,0x733B,0x731B,0x731B,0x6AFB,0x731B,0x733B,0x735B,0x735B,0x739B,0x6B3A,0x18D0,0x18CF,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x212F,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x212F,0x292F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1932,0x1133,0x1153,0x19D5,0x19F6,0x19F6,0x19D5,0x1993,0x1131,0x1931,0x2172,0x2151,0x2130,0x2110,0x2130,0x2131,0x2152,0x1932,0x1933,0x1133,0x19B5,0x21F7,0x21F7,0x1995,0x1132,0x1932,0x2131,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x212F,0x212F,0x290F,0x290F,0x212F,0x212F,0x2930,0x2930,0x212F,0x2930,0x210F,0x2930,0x290F,0x290F,0x210F,0x2910,0x2930,0x290F,0x290F,0x290F,0x292F,0x210F,0x2930,0x2930,0x210F,0x2930,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2131,0x2131,0x1911,0x1112,0x1134,0x19D8,0x19F8,0x19F9,0x19F8,0x11B7,0x0997,0x1197,0x0997,0x1197,0x1197,0x19D7,0x2218,0x21D7,0x21B6,0x2194,0x2973,0x3172,0x3172,0x3172,0x3151,0x3171,0x3171,0x3972,0x3971,0x3971,0x3951,0x4151,0x4130,0x40EE,0x616F,0xDCFC,0xDC9A,0xDC79,0xDC58,0xE458,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xDC37,0xDC37,0xE437,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC17,0xDC37,0xDC17,0xDC17,0xDC37,0xDC16,0xDC17,0xDC17,0xDC16,0xDC17,0xDC17,0xDC17,0xDC16,0xDC16,0xDBF6,0xDC17,0xDBF6,0xDC17,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBF6,0xDBF7,0xDC17,0xDC17,0xDC17,0xD417,0xDC58,0xDC7A,0xCC59,0x614F,0x386C,0x38EE,0x390F,0x3130,0x3130,0x3151,0x3151,0x3151,0x3131,0x2930,0x3151,0x2930,0x2951,0x2951,0x2930,0x2930,0x2930,0x2930,0x3151,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x28EF,0x28EF,0x28EE,0x28EF,0x28EE,0x28EE,0x28EE,0x28EE,0x28EE,0x28EE,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x292F,0x292F,0x2930,0x2130,0x2930,0x2130,0x2130,0x2130,0x212F,0x292F,0x210F,0x290F,0x290F,0x212F,0x212F,0x212F,0x2130,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x2930,0x210F,0x290F,0x292F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x19D6,0x19F7,0x11F7,0x1195,0x1112,0x1911,0x2131,0x2130,0x2130,0x2930,0x2110,0x2910,0x210F,0x212F,0x2930,0x2110,0x212F,0x212F,0x210F,0x210F,0x292F,0x2930,0x2930,0x210F,0x290F,0x292F,0x2930,0x292F,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x212F,0x210F,0x2930,0x2110,0x2930,0x210F,0x210F,0x20EF,0x20CF,0x208F,0x3070,0xAB7E,0xAAFD,0xAABD,0xAA7D,0xB27D,0xB27D,0xBA9E,0xBA7E,0xB23C,0xB23D,0xBA7D,0xB25D,0xB27D,0xBA9D,0xB2BD,0xAABC,0xA2DB,0xA35C,0x282E,0x308F,0x28CF,0x20CF,0x28EF,0x28F0,0x30D0,0x38D1,0x4091,0x9ABB,0xAABC,0xB29D,0xB29D,0xB27D,0xB27D,0xAA7C,0xAABC,0xA2DC,0xA33D,0x50B3,0x4031,0x8A7A,0xAAFD,0xA2BC,0xA29D,0xAA9D,0xB2BE,0xB2BE,0xAABD,0xAADD,0xAB1D,0x6976,0x3850,0x30D0,0x28AF,0x20EF,0x20EE,0x210E,0x210F,0x20CE,0x206E,0x282F,0xAB5E,0xAADD,0xB2BE,0xAA7D,0xB29E,0xB27D,0xAA9D,0xAA9D,0xAAFD,0xAB9E,0x3030,0x2870,0x288F,0x28CF,0x2910,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x20EF,0x28CF,0x288F,0x3870,0xA31C,0xAADC,0xB2DD,0xB2BD,0xAA5C,0xAA5C,0xAA9D,0xAABD,0xAB1D,0x9AFC,0x3030,0x3070,0x28D0,0x20CF,0x20EF,0x2910,0x2910,0x2910,0x2111,0x2131,0x2132,0x1932,0x1954,0x19B5,0x19D6,0x19D7,0x19D7,0x11D7,0x11D7,0x11D7,0x11B7,0x11B7,0x11D7,0x19F8,0x19F7,0x19D7,0x1175,0x1113,0x1133,0x1932,0x2153,0x1932,0x1911,0x1931,0x1931,0x1931,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2111,0x2111,0x2111,0x2131,0x1911,0x2131,0x2132,0x1931,0x2131,0x2131,0x2131,0x1931,0x2131,0x2131,0x2111,0x2131,0x1932,0x1912,0x1932,0x1112,0x1133,0x1154,0x1995,0x21F7,0x21F7,0x21F7,0x1975,0x1113,0x10F2,0x1911,0x2131,0x2131,0x2131,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x210F,0x2110,0x2910,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930, + 0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x210F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2151,0x2151,0x2131,0x1931,0x1932,0x1932,0x1133,0x1154,0x1175,0x1196,0x11D8,0x11F9,0x1A1A,0x1A19,0x19F8,0x1197,0x1155,0x1134,0x1133,0x1932,0x1931,0x2131,0x1910,0x1910,0x2150,0x2130,0x2130,0x2130,0x210F,0x212F,0x2930,0x2930,0x2130,0x212F,0x210F,0x2110,0x2110,0x2930,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x1931,0x1911,0x1132,0x1154,0x11B6,0x11F8,0x1A39,0x1A18,0x0996,0x0155,0x0955,0x0955,0x0955,0x0955,0x11B6,0x19F8,0x19F7,0x19D6,0x1974,0x1911,0x1910,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2910,0x2910,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x210F,0x2930,0x2110,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x1911,0x1911,0x1112,0x1153,0x19B6,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19D7,0x19F7,0x19D7,0x19D7,0x19D7,0x1995,0x1134,0x1933,0x1932,0x1932,0x2131,0x2131,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1931,0x2131,0x1911,0x1112,0x1113,0x1134,0x1995,0x19D7,0x2218,0x21F7,0x1996,0x1974,0x1113,0x1912,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x290F,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2930,0x2930,0x292F,0x292F,0x290F,0x290F,0x212F,0x2930,0x210F,0x2110,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x210F,0x2110,0x2910,0x2930,0x2930,0x212F,0x2930,0x210F,0x2930,0x2930,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x20EF,0x2110,0x20EF,0x2110,0x108E,0x6B39,0x83BC,0x7B5B,0x7B1B,0x7B1B,0x7B1B,0x7B1B,0x8B7C,0x6A78,0x28B0,0x28D0,0x28F0,0x20AF,0x20AF,0x186E,0x3994,0x7B5C,0x733B,0x733C,0x731C,0x731B,0x7B1C,0x731B,0x7B3B,0x7B5B,0x7B9C,0x6B1A,0x2911,0x18AF,0x20F0,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x290F,0x2910,0x2930,0x2910,0x2910,0x2910,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1930,0x1931,0x1932,0x1153,0x1174,0x19D6,0x19F7,0x21F6,0x21D5,0x1152,0x1111,0x1931,0x2151,0x2151,0x1910,0x2110,0x2130,0x2131,0x2131,0x1932,0x1112,0x1133,0x19B6,0x21F7,0x21F7,0x1995,0x1932,0x1932,0x2131,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x212F,0x210F,0x290F,0x2930,0x292F,0x210F,0x212F,0x2930,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x2910,0x2930,0x2930,0x210F,0x292F,0x290F,0x210F,0x210F,0x290F,0x2930,0x210F,0x2930,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x212F,0x212F,0x2130,0x2930,0x2130,0x2131,0x1911,0x1112,0x1175,0x21F8,0x19D8,0x19D8,0x0977,0x0956,0x0976,0x1176,0x0976,0x0976,0x1176,0x19B7,0x2218,0x19D7,0x21B6,0x2195,0x2973,0x2972,0x3152,0x3172,0x3172,0x3172,0x3172,0x3972,0x3972,0x3971,0x4171,0x4151,0x4150,0x40CE,0x6990,0xDCDC,0xD479,0xDC99,0xDC58,0xDC58,0xDC37,0xDC37,0xDC37,0xDC17,0xE457,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE437,0xDC37,0xDC37,0xDC37,0xDC37,0xE437,0xDC37,0xDC17,0xDC37,0xDC37,0xDC37,0xDC17,0xDC17,0xDC16,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDBF6,0xDBF6,0xDC17,0xDC16,0xDC17,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBD6,0xDBF7,0xDC17,0xDC17,0xDC17,0xDC17,0xDC38,0xD459,0xCC39,0xB3B7,0x48AC,0x40AD,0x390F,0x3930,0x3150,0x3150,0x3151,0x3151,0x3151,0x3131,0x3151,0x3151,0x2950,0x2951,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2950,0x292F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x20EF,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x310F,0x310F,0x30EF,0x28EE,0x30EE,0x30CE,0x30EE,0x30EE,0x30EE,0x30EE,0x30EE,0x30EE,0x30EE,0x30EE,0x30EE,0x30EE,0x28EE,0x30EE,0x28EE,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x292F,0x212F,0x212F,0x210F,0x292F,0x290F,0x290F,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x19D6,0x19F7,0x11F7,0x1195,0x1132,0x1911,0x2131,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x292F,0x2110,0x210F,0x212F,0x2930,0x210F,0x210F,0x2930,0x2930,0x210F,0x290F,0x290F,0x292F,0x2930,0x2930,0x290F,0x292F,0x2930,0x2930,0x2110,0x210F,0x2930,0x2950,0x2930,0x212F,0x2930,0x2930,0x2930,0x2130,0x210F,0x210F,0x210F,0x20AF,0x206F,0x304F,0xB39E,0xB2DD,0xB27C,0xBA7D,0xB25D,0xC27E,0xC29E,0xC25E,0xBA3D,0xBA3D,0xC25D,0xC27E,0xC27E,0xBA7D,0xBA9D,0xB2BD,0xA2BB,0xA33C,0x302F,0x30B0,0x28AF,0x28D0,0x28F0,0x30D0,0x38B1,0x3891,0x7196,0xAAFC,0xB2BD,0xBA9D,0xBA7D,0xBA9E,0xBABE,0xB29D,0xB2BC,0xB31D,0x927A,0x3810,0x3810,0x7176,0xAADD,0xAA9C,0xB29D,0xB2BE,0xBABE,0xBABE,0xBADE,0xB2DE,0xB2DD,0xB33E,0x4051,0x3891,0x28D0,0x28EF,0x210F,0x210F,0x210F,0x20CE,0x206E,0x280E,0xAB5E,0xB2DE,0xB29D,0xBA7E,0xBA7E,0xBA7D,0xB29D,0xB2BD,0xB2DD,0xBB9F,0x3830,0x3070,0x288F,0x28EF,0x2910,0x2930,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x20EF,0x28CF,0x288F,0x3850,0xAB1C,0xBAFD,0xBA9D,0xBA7D,0xB25D,0xBA7D,0xB27D,0xB2BD,0xB2FE,0xA2FD,0x3830,0x3090,0x28B0,0x28F0,0x28EF,0x2910,0x2930,0x2930,0x2110,0x2111,0x1911,0x1932,0x1174,0x19D6,0x19D7,0x19F7,0x11D7,0x11B7,0x0976,0x0976,0x0976,0x0976,0x0996,0x11D7,0x19F8,0x11D7,0x19B6,0x1175,0x1133,0x1113,0x1132,0x1912,0x1932,0x1912,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1932,0x1912,0x1912,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1112,0x1112,0x1133,0x1133,0x1154,0x19B6,0x21F7,0x21F7,0x21F7,0x1175,0x1134,0x10F2,0x18F1,0x1911,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2910,0x2110,0x2930,0x2110,0x2110,0x2910,0x2930,0x2910,0x2910,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910, + 0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2910,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2110,0x2910,0x2910,0x210F,0x2910,0x2910,0x290F,0x290F,0x292F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2150,0x2130,0x2131,0x1931,0x1931,0x1132,0x1133,0x1154,0x1175,0x1196,0x11D8,0x11F9,0x1A1A,0x1A19,0x19F8,0x1197,0x1155,0x1133,0x1132,0x1932,0x1931,0x1931,0x1910,0x2131,0x2151,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x210F,0x212F,0x210F,0x210F,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x1931,0x1911,0x1112,0x1133,0x1175,0x11D7,0x1A18,0x11F8,0x11F7,0x0976,0x0975,0x0976,0x0976,0x0996,0x19F8,0x11D7,0x11B6,0x19D6,0x1974,0x1911,0x1910,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x290F,0x2910,0x212F,0x2130,0x2110,0x2910,0x2110,0x2110,0x2930,0x2930,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x210F,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2130,0x2131,0x1931,0x1111,0x1132,0x1995,0x19F7,0x2217,0x19F7,0x19F7,0x19F7,0x19D7,0x19F7,0x19F7,0x19D6,0x21D6,0x1174,0x1112,0x1932,0x2152,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x290F,0x2930,0x2110,0x2930,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2150,0x2130,0x2151,0x2152,0x1932,0x10F2,0x1133,0x1154,0x19B6,0x21F7,0x2218,0x21F7,0x19B6,0x1154,0x1113,0x1912,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x2930,0x290F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x210F,0x2930,0x2930,0x292F,0x210F,0x2110,0x2110,0x2930,0x290F,0x290F,0x210F,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x2110,0x2110,0x2930,0x290F,0x210F,0x2930,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x210F,0x2110,0x2930,0x2930,0x2930,0x5A97,0x83BC,0x7B5B,0x7B3B,0x7B1B,0x7AFB,0x82FB,0x831B,0x833B,0x72D9,0x3932,0x28D0,0x288F,0x208F,0x206F,0x4173,0x837C,0x7B3C,0x833C,0x7B1C,0x72FB,0x7B1C,0x7B3C,0x7B5C,0x7B7C,0x62D9,0x20F1,0x20D0,0x20D0,0x20EF,0x2110,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x212F,0x210F,0x2910,0x210F,0x290F,0x210F,0x210F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x212F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x2130,0x2950,0x2130,0x1930,0x1911,0x1131,0x1132,0x1154,0x19B5,0x19F7,0x21F7,0x19D6,0x1994,0x1952,0x1910,0x1930,0x2151,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1912,0x1112,0x1133,0x19B6,0x21F7,0x21F7,0x1974,0x1932,0x1912,0x2111,0x2131,0x2111,0x2110,0x2130,0x2130,0x2110,0x210F,0x212F,0x2930,0x290F,0x2930,0x212F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x212F,0x2910,0x2110,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x2930,0x2110,0x2131,0x1911,0x1112,0x21F7,0x2239,0x19D8,0x1197,0x0935,0x0956,0x1176,0x1196,0x1196,0x1196,0x1176,0x19B7,0x2218,0x21F8,0x21B6,0x2195,0x2973,0x3173,0x3172,0x3172,0x3171,0x3151,0x3992,0x3972,0x3992,0x4172,0x4172,0x4171,0x4150,0x40EE,0x7211,0xDCFC,0xD499,0xDC99,0xDC58,0xDC58,0xDC37,0xDC37,0xDC57,0xDC57,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC17,0xDC37,0xE437,0xDC17,0xDC17,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC16,0xDC16,0xDC16,0xDC16,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDBF6,0xDBF6,0xDBF6,0xDC17,0xDBF6,0xDBF6,0xDBF6,0xDC17,0xDBF6,0xDBF6,0xDBF7,0xDBF6,0xDBF7,0xDBF6,0xDC17,0xDC17,0xDC38,0xDC38,0xD438,0xCC39,0xCC9B,0x594F,0x40EE,0x3930,0x3951,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x2930,0x2930,0x2950,0x2950,0x2950,0x2950,0x2930,0x2950,0x2950,0x2930,0x2951,0x3131,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x310F,0x290F,0x290E,0x30EE,0x30EE,0x30CD,0x30CD,0x30CD,0x30CD,0x30AD,0x30AD,0x308C,0x308C,0x306C,0x306C,0x306C,0x306C,0x308D,0x30AD,0x30AD,0x30CE,0x30CE,0x30EE,0x30EE,0x30EE,0x28EE,0x28EE,0x290F,0x290F,0x210F,0x210F,0x290F,0x2110,0x2110,0x2930,0x2110,0x210F,0x210F,0x292F,0x292F,0x290F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2110,0x210F,0x2930,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x292F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x19D6,0x1A17,0x11D7,0x11B5,0x1132,0x1911,0x2131,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x2930,0x2930,0x212F,0x210F,0x292F,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2910,0x2110,0x2930,0x2930,0x2930,0x212F,0x210F,0x210F,0x2930,0x2930,0x2930,0x210F,0x210F,0x20CF,0x208F,0x38B1,0xBBBF,0xBAFD,0xBABE,0xBA7D,0xC25D,0xC25E,0xCA5E,0xCA5E,0xCA5E,0xCA5E,0xC23D,0xCA9E,0xC25D,0xC27D,0xBA7C,0xB29C,0xB2DC,0xBB9E,0x300F,0x3090,0x28B0,0x28AF,0x28D0,0x30D0,0x38B1,0x48B2,0xBB7E,0xB2DD,0xBABD,0xC2BE,0xC2BE,0xCABE,0xBA9D,0xBA9D,0xB2BC,0xBB3E,0x50B2,0x300F,0x3810,0x58B3,0x9A7B,0xB2DD,0xBADE,0xBABE,0xBA7D,0xBA9E,0xC2BE,0xBADE,0xBADE,0xC37F,0x79B7,0x4071,0x30B0,0x28EF,0x290F,0x290F,0x292F,0x28EF,0x288F,0x3050,0xB37E,0xBADE,0xBABE,0xC29E,0xBA7E,0xC29E,0xC29E,0xBABD,0xB2DD,0xC3BF,0x4050,0x3070,0x30B0,0x28F0,0x2910,0x2930,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2910,0x28CF,0x308F,0x48D2,0xAB1C,0xBADD,0xC2BE,0xC29E,0xC27D,0xC29E,0xBA7D,0xBABE,0xBB1E,0xB33E,0x3830,0x3890,0x30D0,0x28EF,0x2910,0x290F,0x2910,0x2930,0x2111,0x2111,0x1911,0x1112,0x1174,0x19D6,0x19F7,0x19F7,0x0996,0x0975,0x0975,0x0955,0x0135,0x0155,0x0976,0x0996,0x11D8,0x19F8,0x19F8,0x1196,0x0934,0x1134,0x1153,0x1133,0x1132,0x1112,0x1132,0x1132,0x1911,0x1911,0x1931,0x1131,0x1111,0x1932,0x1932,0x1932,0x1932,0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1131,0x1132,0x1111,0x1111,0x1112,0x1132,0x1132,0x1133,0x1134,0x1114,0x1175,0x19B6,0x21F7,0x21F7,0x19B6,0x1175,0x1113,0x10F2,0x1911,0x2152,0x2131,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2930,0x2930,0x2930,0x2110,0x2130,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110, + 0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2910,0x2910,0x212F,0x210F,0x290F,0x2930,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x2930,0x2930,0x210F,0x2930,0x210F,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1133,0x1154,0x1175,0x1197,0x11B8,0x19F9,0x1A19,0x1A19,0x19F8,0x11B7,0x1175,0x1154,0x1133,0x1932,0x1931,0x1911,0x2131,0x2151,0x2130,0x2110,0x2130,0x2130,0x210F,0x2930,0x2130,0x2110,0x210F,0x2110,0x2110,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x2910,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x1911,0x1912,0x1133,0x1154,0x1196,0x11F8,0x1A18,0x1218,0x11D7,0x11D7,0x11B7,0x11B7,0x19F7,0x19F7,0x19D7,0x1195,0x1994,0x1953,0x1911,0x2110,0x2130,0x2110,0x210F,0x2130,0x2110,0x210F,0x2130,0x2130,0x2130,0x212F,0x210F,0x292F,0x290F,0x2910,0x2130,0x210F,0x2110,0x2910,0x2110,0x210F,0x2110,0x2110,0x290F,0x210F,0x2930,0x290F,0x210F,0x210F,0x2910,0x210F,0x290F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2131,0x1931,0x1931,0x1132,0x1153,0x1995,0x19B5,0x19B6,0x19B6,0x11B6,0x11B5,0x11B5,0x1995,0x1995,0x1974,0x1133,0x1932,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2150,0x2130,0x212F,0x2130,0x212F,0x212F,0x210F,0x212F,0x2130,0x210F,0x2930,0x210F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x2950,0x2130,0x2130,0x2951,0x2152,0x1932,0x1112,0x1133,0x1134,0x1995,0x21F7,0x21F7,0x21F7,0x19B6,0x1974,0x1133,0x1932,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x2930,0x2910,0x2910,0x290F,0x2930,0x210F,0x2110,0x210F,0x210F,0x210F,0x2110,0x2910,0x290F,0x290F,0x210F,0x212F,0x212F,0x2930,0x290F,0x212F,0x2930,0x2110,0x2110,0x2930,0x290F,0x2930,0x212F,0x212F,0x212F,0x2930,0x212F,0x2930,0x210F,0x2930,0x290F,0x2130,0x2130,0x212F,0x2930,0x210F,0x2930,0x210F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2130,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2910,0x2910,0x39B3,0x8BDC,0x7B5B,0x7B3B,0x831B,0x831C,0x82FC,0x82FB,0x8B1B,0x8B3B,0x7AD9,0x4974,0x2890,0x204F,0x180E,0x4154,0x8B5D,0x831C,0x831C,0x831C,0x7B1C,0x7B1C,0x7B3C,0x839D,0x6298,0x20B0,0x18AF,0x20F0,0x20F0,0x20EF,0x2910,0x210F,0x290F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x212F,0x2930,0x212F,0x2930,0x2930,0x210F,0x210F,0x290F,0x210F,0x2910,0x210F,0x210F,0x210F,0x2110,0x2910,0x210F,0x290F,0x290F,0x2910,0x2930,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2150,0x1930,0x1931,0x1111,0x1132,0x1174,0x1995,0x19D6,0x19F7,0x21F7,0x21B5,0x1973,0x1931,0x1930,0x1930,0x2150,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1912,0x1112,0x1133,0x19B6,0x21F7,0x21F7,0x1975,0x1932,0x1932,0x2131,0x2111,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x212F,0x212F,0x290F,0x290F,0x212F,0x212F,0x290F,0x210F,0x2930,0x210F,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x290F,0x2930,0x210F,0x290F,0x2930,0x2930,0x2930,0x210F,0x212F,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2130,0x2131,0x1932,0x1133,0x2217,0x19F8,0x19D8,0x0976,0x0955,0x0955,0x1175,0x1196,0x1175,0x1175,0x1175,0x19B7,0x19F8,0x21F8,0x21D7,0x2195,0x2974,0x3173,0x3172,0x3972,0x3172,0x3972,0x3992,0x4192,0x4192,0x4172,0x4171,0x4151,0x4971,0x40CD,0x7A32,0xDCFC,0xD479,0xDC79,0xDC58,0xDC58,0xDC37,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC37,0xDC37,0xE437,0xE437,0xE437,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC36,0xDC36,0xDC16,0xDC16,0xDC37,0xDC16,0xDC16,0xDC16,0xDBF6,0xDC17,0xDC17,0xDC17,0xDBF6,0xDC16,0xDC16,0xDBF6,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDC17,0xDC17,0xDBF7,0xDBF6,0xDBF6,0xDBF6,0xDC17,0xDBF7,0xDBF7,0xDC17,0xDC58,0xD459,0xD47A,0x9AF5,0x386C,0x410F,0x3910,0x3951,0x3151,0x3151,0x3151,0x3151,0x3131,0x3151,0x3151,0x2950,0x2950,0x2950,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x3131,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x290F,0x290F,0x310F,0x28EF,0x28EF,0x30EF,0x30EE,0x28CE,0x30CD,0x30AD,0x30AD,0x308C,0x308C,0x304B,0x280A,0x280A,0x280A,0x300A,0x300A,0x300A,0x300A,0x382B,0x382B,0x382B,0x302B,0x300B,0x280B,0x280B,0x304C,0x308D,0x30AD,0x30CD,0x30CE,0x30EE,0x28EE,0x28EE,0x290F,0x290F,0x20EF,0x290F,0x210F,0x210F,0x2910,0x2910,0x290F,0x2930,0x290F,0x290F,0x292F,0x292F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2110,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2110,0x2930,0x210F,0x290F,0x2930,0x290F,0x2930,0x212F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2110,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x19D6,0x1A17,0x11D6,0x11B5,0x1132,0x1911,0x2131,0x2131,0x2130,0x2930,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x212F,0x212F,0x2930,0x2930,0x210F,0x210F,0x212F,0x292F,0x2930,0x2930,0x2110,0x2110,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x212F,0x2930,0x212F,0x210F,0x210F,0x20CF,0x206E,0x3890,0xC3DF,0xBAFE,0xC2DE,0xC29E,0xC27E,0xCA5E,0xCA5E,0xCA5E,0xD27E,0xCA7E,0xCA5E,0xCA7E,0xCA7E,0xC29D,0xBA9C,0xB2BC,0xB2DC,0xC3FF,0x380F,0x3890,0x288F,0x28B0,0x30B0,0x30B0,0x3870,0x8A79,0xC39F,0xBB1E,0xC2DD,0xC2BE,0xCABE,0xC2BE,0xC2BD,0xBADD,0xBAFD,0xAB1D,0x380F,0x300F,0x300F,0x3810,0x9239,0xBAFE,0xC2FE,0xC2BE,0xBA9E,0xC29E,0xBA9D,0xBABE,0xBAFE,0xBB3E,0xB33D,0x50B2,0x3090,0x30F0,0x290F,0x292F,0x20EF,0x28EF,0x206E,0x302F,0xB37E,0xBAFE,0xC2DE,0xC2BF,0xC2BE,0xC29E,0xC2BE,0xC2DD,0xBAFD,0xC3BF,0x4051,0x3070,0x28AF,0x28EF,0x2910,0x290F,0x2930,0x210F,0x2930,0x212F,0x212F,0x2150,0x212F,0x210F,0x20EF,0x28EF,0x286F,0x48D1,0xBB5D,0xC2FD,0xC2DE,0xCABE,0xC29E,0xC29E,0xC29E,0xC2DE,0xC33F,0xB35E,0x3830,0x3890,0x30D0,0x28EF,0x28EF,0x290F,0x2910,0x2930,0x2111,0x2131,0x1932,0x1132,0x1174,0x19D6,0x19F7,0x11D7,0x0955,0x0955,0x0935,0x0934,0x0935,0x0935,0x0155,0x0976,0x09B7,0x11F8,0x11F8,0x11D7,0x0955,0x1155,0x0934,0x1154,0x1154,0x1153,0x1133,0x1153,0x1132,0x1132,0x1152,0x1152,0x1132,0x1132,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1153,0x1133,0x1134,0x1154,0x1975,0x19D7,0x2218,0x21D7,0x21D7,0x1995,0x1113,0x1112,0x1911,0x2131,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2131,0x2110,0x2110,0x2110,0x2110,0x2131,0x2110,0x2130,0x2130,0x2110,0x2131,0x2131,0x2111,0x2111,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110, + 0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2110,0x2110,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2910,0x2930,0x290F,0x210F,0x210F,0x290F,0x2930,0x212F,0x2930,0x290F,0x2910,0x2930,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x2110,0x2130,0x2151,0x1951,0x1131,0x1132,0x1154,0x1175,0x1197,0x11B8,0x11F9,0x19F9,0x1A19,0x19D8,0x19B7,0x1175,0x1154,0x1133,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x1910,0x1931,0x1132,0x1133,0x1175,0x11B6,0x11D7,0x1A18,0x1A18,0x11F8,0x11D7,0x11D7,0x2238,0x1A17,0x1195,0x1154,0x1974,0x1952,0x18F0,0x1910,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x210F,0x212F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2910,0x210F,0x2910,0x2910,0x290F,0x210F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x290F,0x2110,0x2110,0x2110,0x2130,0x2131,0x1931,0x1931,0x1932,0x1953,0x1154,0x1974,0x1154,0x1174,0x1174,0x1153,0x1153,0x1133,0x1112,0x1932,0x1931,0x1931,0x1931,0x2130,0x2110,0x2110,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2151,0x2152,0x1911,0x1111,0x1112,0x1134,0x1995,0x21F7,0x19F7,0x19D7,0x21D6,0x1174,0x1133,0x1932,0x1911,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2930,0x210F,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x210F,0x2910,0x2930,0x2930,0x2930,0x290F,0x212F,0x212F,0x2910,0x2910,0x212F,0x212F,0x2930,0x210F,0x290F,0x2930,0x290F,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x290F,0x290F,0x2930,0x212F,0x212F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2930,0x2930,0x212F,0x2930,0x292F,0x290F,0x292F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2110,0x20EF,0x18CF,0x18AF,0x18AF,0x5236,0x837C,0x7B3B,0x831C,0x831C,0x82FC,0x8B1C,0x8B1C,0x8B3C,0x8B1B,0x82FA,0x40F2,0x200F,0x200F,0x4934,0x8B3C,0x82FC,0x8B3D,0x831C,0x831C,0x831C,0x8B7D,0x6258,0x184F,0x20AF,0x18CF,0x20EF,0x2110,0x210F,0x2930,0x2930,0x2910,0x290F,0x292F,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x2110,0x2130,0x2130,0x1910,0x1111,0x1132,0x1994,0x1174,0x19B6,0x19F7,0x21F7,0x19B5,0x1974,0x1932,0x1931,0x1930,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x10F1,0x1112,0x1154,0x19D6,0x2217,0x21F7,0x1974,0x1933,0x1932,0x2131,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x212F,0x290F,0x290F,0x210F,0x292F,0x2930,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x2910,0x210F,0x2910,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x2130,0x2131,0x1932,0x1133,0x21D7,0x2218,0x19D8,0x1197,0x0955,0x0955,0x0955,0x1175,0x1155,0x1155,0x1155,0x21D8,0x2219,0x21F8,0x21B7,0x2195,0x2974,0x3173,0x3172,0x3972,0x3171,0x3972,0x3992,0x4192,0x4192,0x4192,0x4171,0x4151,0x4950,0x48EE,0x8AB4,0xDCFC,0xD499,0xDC79,0xDC58,0xDC58,0xDC37,0xDC37,0xE458,0xE437,0xDC37,0xDC36,0xDC37,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC16,0xDC17,0xDC17,0xDC37,0xDC37,0xDC36,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC17,0xDC16,0xDC16,0xDC17,0xDC17,0xDC17,0xDC16,0xDC17,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xD3D6,0xDBD6,0xDBF6,0xDBF7,0xDC17,0xD3D6,0xDBF6,0xDBF7,0xDC17,0xDC18,0xDC39,0xDC7A,0xAB56,0x48AD,0x40AE,0x38EF,0x3930,0x3951,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x2930,0x2930,0x2951,0x2950,0x3151,0x2930,0x3131,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x290F,0x290F,0x2930,0x3130,0x3110,0x28EF,0x30EF,0x30CE,0x30CE,0x30CE,0x308D,0x286C,0x284C,0x282B,0x302A,0x302A,0x48AC,0x592E,0x71B0,0x8232,0x9294,0xAB57,0xBBB8,0xC3F9,0xC41A,0xC43A,0xC43A,0xBBFA,0xBBD9,0xB398,0xA336,0x9AF5,0x8253,0x616F,0x48AC,0x382B,0x302A,0x282B,0x308C,0x30CE,0x30EE,0x28EE,0x28EE,0x28EF,0x28EF,0x290F,0x290F,0x2930,0x2910,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x212F,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x2930,0x2930,0x290F,0x210F,0x210F,0x212F,0x212F,0x2930,0x290F,0x210F,0x212F,0x2130,0x212F,0x2930,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2131,0x1931,0x1932,0x1133,0x19D6,0x1A17,0x11D6,0x1195,0x1132,0x1911,0x2131,0x2130,0x2930,0x2130,0x210F,0x210F,0x292F,0x212F,0x290F,0x290F,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2110,0x2130,0x210F,0x212F,0x2930,0x2930,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x28EF,0x28AF,0x3890,0xCC3F,0xCB9F,0xCB5F,0xCB1F,0xD2FF,0xD2FF,0xD2DF,0xD2DF,0xD2FF,0xD2FF,0xD2DF,0xD2FF,0xD2FF,0xD31F,0xCB3E,0xC33E,0xCBDF,0xDCBF,0x300F,0x3890,0x30B0,0x30D0,0x30D0,0x38B0,0x5954,0xBBFF,0xC3BF,0xC35E,0xC2FE,0xCB1F,0xCB1F,0xCB1E,0xCB1E,0xCB5E,0xC39F,0x9A9A,0x300F,0x302F,0x3030,0x3830,0x8A18,0xC35E,0xC33F,0xCB1F,0xC2FE,0xCB1F,0xCB1F,0xCB3F,0xCB7F,0xC37F,0xCC1F,0x8A99,0x304F,0x30F0,0x3130,0x290F,0x210F,0x20CE,0x28AF,0x3890,0xC3FF,0xCB9F,0xCB5F,0xCB1F,0xCAFE,0xCAFE,0xCAFE,0xC31E,0xCB9F,0xD43F,0x3850,0x3070,0x28B0,0x28F0,0x2930,0x2930,0x292F,0x290F,0x2930,0x212F,0x212F,0x212F,0x2950,0x2930,0x20EF,0x28CF,0x288F,0x40B0,0xCC1F,0xD39F,0xD35F,0xCB1F,0xCADE,0xC2DE,0xC2FE,0xC31F,0xCB9F,0xC3DF,0x382F,0x3090,0x28CF,0x20EF,0x290F,0x292F,0x210F,0x2110,0x2110,0x1911,0x1912,0x1133,0x1174,0x19F7,0x1A18,0x11D7,0x0955,0x0935,0x0955,0x0955,0x0935,0x0955,0x0955,0x0956,0x0997,0x11D8,0x1A18,0x11D7,0x0975,0x1175,0x1195,0x1195,0x1195,0x1195,0x1174,0x1174,0x1974,0x1973,0x1973,0x1973,0x1974,0x1974,0x1974,0x1974,0x1974,0x1995,0x1174,0x1174,0x1974,0x1174,0x1174,0x1974,0x1173,0x1173,0x1994,0x1973,0x1994,0x19B5,0x19B5,0x19B6,0x21B6,0x21D7,0x21D7,0x21D7,0x21D7,0x1995,0x1133,0x10F2,0x1911,0x1911,0x2131,0x2951,0x2130,0x2130,0x210F,0x2110,0x2130,0x2930,0x210F,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2131,0x2110,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2110,0x2111,0x2111,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2111,0x2111,0x2111,0x2111,0x2131,0x2111,0x2131,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x1910,0x2110,0x2111, + 0x210F,0x210F,0x2930,0x210F,0x212F,0x2930,0x210F,0x290F,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2110,0x210F,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x212F,0x210F,0x2930,0x290F,0x210F,0x2910,0x2930,0x2110,0x2910,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1951,0x1930,0x1931,0x1132,0x1154,0x1155,0x1196,0x11B7,0x19F9,0x1A19,0x1A19,0x19F8,0x11B6,0x1175,0x1154,0x1933,0x1911,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x210F,0x290F,0x210F,0x290F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x292F,0x212F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2131,0x1932,0x1152,0x1153,0x1174,0x11B5,0x19F7,0x19D6,0x19D6,0x19D6,0x19B6,0x19D6,0x19B5,0x1174,0x1153,0x1952,0x1932,0x18F0,0x2110,0x2130,0x2930,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x2930,0x210F,0x210F,0x2910,0x2930,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x1931,0x1931,0x1932,0x1953,0x1953,0x1973,0x1153,0x1153,0x1153,0x1952,0x1932,0x1931,0x1911,0x1911,0x2131,0x2110,0x2110,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2110,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x210F,0x212F,0x212F,0x210F,0x2130,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2151,0x1911,0x1112,0x1112,0x1134,0x1995,0x19D7,0x2218,0x2217,0x19D6,0x1154,0x1133,0x1132,0x1932,0x1931,0x1931,0x2131,0x2130,0x2130,0x2150,0x2130,0x2130,0x210F,0x210F,0x2110,0x210F,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x210F,0x210F,0x2930,0x2910,0x2910,0x210F,0x2930,0x2910,0x210F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x2930,0x290F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x2950,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2910,0x210F,0x20EF,0x20CF,0x20CF,0x20AF,0x5216,0x835C,0x831B,0x831B,0x8AFB,0x8B1C,0x8AFC,0x931C,0x933C,0x8B1B,0x82BA,0x5175,0x200F,0x40D3,0x8AFC,0x82FC,0x8B1C,0x8B1C,0x8B1C,0x8B3C,0x6238,0x182F,0x208F,0x20CF,0x20CF,0x20EF,0x210F,0x2930,0x2930,0x2930,0x290F,0x290F,0x292F,0x2930,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2910,0x2930,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x292F,0x212F,0x292F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1111,0x1132,0x1153,0x1175,0x19D6,0x19D7,0x21F7,0x21D6,0x1974,0x1132,0x1911,0x1930,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1912,0x1133,0x1154,0x21F7,0x2217,0x21F7,0x1974,0x1933,0x1932,0x2111,0x2110,0x2130,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x292F,0x210F,0x2930,0x210F,0x212F,0x290F,0x2930,0x210F,0x2930,0x212F,0x2930,0x2930,0x290F,0x2910,0x2910,0x292F,0x210F,0x290F,0x290F,0x2910,0x2930,0x2930,0x210F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x292F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x2130,0x2130,0x2131,0x1911,0x1132,0x1975,0x2218,0x19D8,0x19D8,0x1196,0x0975,0x0975,0x0955,0x0934,0x0935,0x1156,0x19D8,0x21F9,0x21F8,0x21D7,0x29B6,0x2974,0x3173,0x3972,0x3952,0x3972,0x3972,0x3972,0x4192,0x4192,0x4192,0x4172,0x4951,0x4971,0x40CD,0x92D4,0xDCDB,0xD479,0xDC79,0xDC58,0xDC58,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC36,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC36,0xDC36,0xDC37,0xDC37,0xDC37,0xDC16,0xDC37,0xDC16,0xDC16,0xDC36,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDBF6,0xDBF6,0xDC16,0xDC16,0xDBF6,0xDBF6,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBF6,0xDBF6,0xDBF7,0xDBF7,0xD3D6,0xDBF6,0xDBF7,0xDC17,0xDBF7,0xDC38,0xDC38,0xCBF8,0x694F,0x40AE,0x38CF,0x3910,0x3931,0x3951,0x3971,0x3971,0x3171,0x3151,0x3150,0x3151,0x3150,0x3151,0x3151,0x3151,0x3151,0x3131,0x3151,0x2930,0x3130,0x3131,0x3130,0x3130,0x3130,0x2930,0x3150,0x3130,0x2930,0x2930,0x292F,0x290F,0x290F,0x290F,0x310F,0x310F,0x30EF,0x30CE,0x30CE,0x30AD,0x38AD,0x306C,0x280A,0x280A,0x382B,0x592E,0x7A32,0x9B16,0xB3B8,0xC3F9,0xCC19,0xCC19,0xCC19,0xCBF9,0xCBF9,0xCBF9,0xCC19,0xCBF9,0xCC19,0xCBF9,0xCC1A,0xC3D9,0xC3D9,0xC3D9,0xC3F9,0xC3F9,0xCC3A,0xCC3A,0xB3D8,0x9B36,0x71F1,0x40AC,0x280A,0x282B,0x288D,0x28AD,0x28EE,0x28EF,0x28EF,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x212F,0x2930,0x290F,0x210F,0x212F,0x212F,0x2930,0x290F,0x290F,0x2930,0x212F,0x2930,0x212F,0x210F,0x2930,0x2930,0x212F,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2110,0x1930,0x1911,0x1932,0x1133,0x19D6,0x1A17,0x11D6,0x1195,0x1132,0x1911,0x2131,0x2130,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x2930,0x2130,0x210F,0x212F,0x2930,0x2930,0x2110,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x290F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x212F,0x210F,0x2930,0x290F,0x210F,0x2930,0x28EF,0x28CF,0x38B0,0xAB9D,0xC3BF,0xBB3D,0xBB1E,0xC31E,0xC33E,0xC31E,0xC31E,0xC33E,0xC33E,0xC33E,0xC33E,0xBB1D,0xBB3D,0xB33D,0xB35C,0xAB5C,0x9B3B,0x40D1,0x38D0,0x30D0,0x30F0,0x30F0,0x30D0,0x82B8,0xB3FE,0xAB5D,0xAB3D,0xB33D,0xBB3D,0xB31D,0xAADC,0xB31C,0xB33C,0x92BA,0x50F3,0x304F,0x3090,0x3070,0x3870,0x58F3,0x927A,0xB31D,0xBB3D,0xBB3E,0xBB5E,0xBB5E,0xBB5E,0xB35D,0xB37D,0xBBDE,0xABDD,0x30B0,0x30F0,0x290F,0x290F,0x290F,0x20EF,0x28CF,0x30B0,0xB3DE,0xC3BF,0xB33D,0xBB1D,0xBB1D,0xBB1D,0xBB1D,0xB33D,0xBBBE,0xAB9C,0x304F,0x288F,0x20AF,0x28EF,0x2910,0x2930,0x210F,0x210F,0x292F,0x2130,0x212F,0x2130,0x212F,0x210F,0x210F,0x28EF,0x30CF,0x40D0,0xB3BD,0xCBDF,0xC37E,0xC35E,0xBB1D,0xBB1D,0xBB1D,0xBB5E,0xC3DF,0xAB9D,0x3870,0x30AF,0x28CF,0x20EF,0x292F,0x292F,0x210F,0x2110,0x2110,0x1931,0x1932,0x1133,0x1195,0x19F7,0x1A18,0x11D7,0x0955,0x0935,0x0955,0x0955,0x0955,0x0955,0x0955,0x0956,0x0996,0x11D8,0x11F8,0x11D7,0x0996,0x19F7,0x2238,0x2217,0x2217,0x21F7,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x2A16,0x21F6,0x29F6,0x29F6,0x21F6,0x21F6,0x21F7,0x21F6,0x21D6,0x21F6,0x21F6,0x21F5,0x21F6,0x21F6,0x2A16,0x2A16,0x2A16,0x2A16,0x2A17,0x21F7,0x21F7,0x21D7,0x21B6,0x21B6,0x1975,0x1933,0x1932,0x1911,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x1910,0x1911,0x1911,0x1931,0x1911,0x1911,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x2111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x2131,0x1911,0x1931,0x1911,0x1931,0x1931,0x1931, + 0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x2910,0x2110,0x2110,0x2910,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2110,0x210F,0x290F,0x292F,0x210F,0x290F,0x290F,0x210F,0x2930,0x2930,0x290F,0x2910,0x2910,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x212F,0x210F,0x212F,0x212F,0x2150,0x2130,0x1930,0x1931,0x1111,0x1132,0x1154,0x1175,0x1196,0x11B8,0x19F9,0x1A19,0x1A19,0x19D8,0x11B6,0x1175,0x1133,0x1132,0x1912,0x2131,0x1910,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2930,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x210F,0x2930,0x2110,0x2130,0x2130,0x1931,0x1931,0x1932,0x1953,0x1973,0x1994,0x1994,0x1994,0x1153,0x1153,0x1973,0x1953,0x1932,0x1932,0x1952,0x1931,0x1910,0x2110,0x2930,0x2930,0x2910,0x2110,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x2910,0x2110,0x210F,0x210F,0x2910,0x2930,0x290F,0x2930,0x2910,0x2910,0x290F,0x210F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x1910,0x1911,0x1931,0x1952,0x1952,0x1952,0x1952,0x1952,0x1931,0x1931,0x1910,0x1910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x210F,0x210F,0x20EF,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x2130,0x2930,0x2951,0x2151,0x1911,0x1112,0x1112,0x1134,0x1195,0x21F7,0x2217,0x19F7,0x1195,0x1174,0x1174,0x1132,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2930,0x2110,0x210F,0x2910,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x2910,0x210F,0x2110,0x212F,0x212F,0x210F,0x210F,0x2930,0x210F,0x2910,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2910,0x210F,0x210F,0x210F,0x2930,0x212F,0x2130,0x212F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2910,0x210F,0x2110,0x20F0,0x20D0,0x208F,0x5A16,0x833B,0x831C,0x8B3C,0x8B1C,0x92FC,0x92FB,0x92FB,0x92FB,0x92FC,0x931C,0x7A5A,0x69F8,0x829B,0x8ABC,0x92FC,0x8AFC,0x8AFC,0x8B1C,0x2030,0x204F,0x20D0,0x20F0,0x2110,0x2130,0x2130,0x212F,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x2910,0x2930,0x210F,0x2910,0x2910,0x290F,0x290F,0x2930,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x210F,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x292F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x1911,0x1911,0x1132,0x1974,0x19B5,0x19F7,0x21F7,0x19B6,0x21D6,0x1995,0x1112,0x1911,0x1911,0x2130,0x2150,0x2150,0x2130,0x212F,0x2110,0x2130,0x2151,0x2131,0x1911,0x1112,0x1133,0x1195,0x2217,0x2217,0x19D6,0x1174,0x1953,0x1932,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x212F,0x212F,0x212F,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x2930,0x292F,0x210F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2931,0x2131,0x1911,0x1912,0x1134,0x19B7,0x19D8,0x19D8,0x11D7,0x11B6,0x0975,0x0955,0x0955,0x0956,0x1176,0x19B8,0x2219,0x21F8,0x21D7,0x2195,0x3194,0x3173,0x3952,0x3952,0x3972,0x3972,0x4192,0x4172,0x4172,0x4192,0x4172,0x4971,0x5171,0x48EE,0x9B15,0xE4FC,0xD479,0xDC58,0xDC58,0xE458,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC36,0xDC36,0xDC36,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xDC16,0xDC17,0xDC17,0xDC37,0xDC16,0xDC16,0xDC36,0xDC16,0xDC16,0xDC17,0xDC16,0xDC16,0xDC17,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDBF6,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDC17,0xDBF6,0xDBF6,0xDBD6,0xDBF7,0xDBD6,0xDBD6,0xDBD6,0xDBF6,0xDBF7,0xDBF7,0xDBF7,0xDC18,0xD419,0x9273,0x488D,0x40EF,0x38EF,0x3110,0x3931,0x3951,0x3151,0x3171,0x3151,0x3151,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x3130,0x3150,0x3150,0x3130,0x3130,0x2930,0x3130,0x292F,0x292F,0x290F,0x310F,0x310F,0x28CE,0x30AE,0x30AD,0x308D,0x304B,0x384B,0x406B,0x610E,0x8A53,0xB397,0xCC3A,0xD43A,0xCC19,0xC3B8,0xC397,0xC397,0xC377,0xCB77,0xCB97,0xCB77,0xCB97,0xCB97,0xCB97,0xCB97,0xC397,0xC398,0xC3B8,0xC398,0xC3B8,0xC3B8,0xBB97,0xBB77,0xB377,0xB377,0xB377,0xB397,0xB3D8,0xBBF9,0x9B16,0x69B0,0x388C,0x282B,0x286C,0x30CE,0x28EE,0x28EF,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x290F,0x290F,0x2910,0x210F,0x210F,0x212F,0x2930,0x2110,0x210F,0x2930,0x210F,0x212F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1112,0x1133,0x19D6,0x1A17,0x11D7,0x1195,0x1132,0x1911,0x1910,0x2130,0x2130,0x2930,0x2930,0x210F,0x212F,0x212F,0x292F,0x2930,0x2130,0x2130,0x210F,0x2110,0x2110,0x2930,0x2110,0x210F,0x210F,0x2930,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x2910,0x2910,0x2930,0x2930,0x2110,0x2130,0x210F,0x212F,0x210F,0x290F,0x210F,0x2910,0x2910,0x28CF,0x200D,0x280D,0x280E,0x300E,0x300E,0x300E,0x300E,0x300E,0x300E,0x300E,0x300E,0x300E,0x280E,0x280D,0x280D,0x200D,0x200D,0x180C,0x30CF,0x28CF,0x20AF,0x20CF,0x28CF,0x28D0,0x204E,0x180D,0x200D,0x200D,0x200D,0x280D,0x280E,0x280D,0x280D,0x200D,0x200D,0x284E,0x30D0,0x28D0,0x28D0,0x30B0,0x282E,0x200D,0x280E,0x280E,0x300E,0x300E,0x300E,0x280E,0x280D,0x280D,0x280D,0x284E,0x28CF,0x20EF,0x20EF,0x210F,0x20EF,0x20EF,0x28EF,0x30CF,0x200D,0x280D,0x300E,0x300E,0x300E,0x300E,0x300E,0x280D,0x200D,0x200D,0x28AF,0x28CF,0x2910,0x2930,0x2930,0x2930,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x3110,0x30AF,0x200D,0x280D,0x300E,0x300E,0x300E,0x300E,0x300E,0x280E,0x280D,0x282E,0x30D0,0x28CF,0x290F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2151,0x1931,0x1932,0x1112,0x1195,0x21F7,0x19F7,0x11B7,0x0956,0x0955,0x0955,0x0955,0x0955,0x0955,0x0955,0x0956,0x0996,0x11D7,0x11F7,0x11D7,0x11F7,0x2238,0x2A79,0x2A38,0x2A38,0x2A38,0x2A37,0x2A37,0x2A37,0x2A17,0x2A37,0x2A17,0x2A37,0x2A17,0x2A17,0x3237,0x3238,0x3238,0x3258,0x2A37,0x2A17,0x2A37,0x2A37,0x2A37,0x2A16,0x29F6,0x2A16,0x2A16,0x2A16,0x2A17,0x2A17,0x29F6,0x2A17,0x29F6,0x2175,0x1954,0x1933,0x1912,0x2111,0x2111,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2110,0x2131,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1911,0x1911,0x1111,0x1911,0x1912,0x1111,0x1111,0x1111,0x1111,0x10F1,0x1111,0x1911,0x1111,0x1111,0x1111,0x1111,0x1112,0x1112,0x1112,0x1112,0x1912,0x1912,0x1912,0x1111,0x1111,0x1912,0x1911,0x1911,0x1932,0x1932,0x1131,0x1111,0x1111,0x1912, + 0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2910,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2910,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1930,0x1931,0x1132,0x1954,0x1155,0x1196,0x11B8,0x19F9,0x1A19,0x1A19,0x19F8,0x1196,0x1175,0x1153,0x1932,0x1932,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2930,0x2930,0x212F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1931,0x1931,0x1932,0x1952,0x1932,0x1932,0x1952,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1910,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x2930,0x2930,0x210F,0x2930,0x290F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2110,0x1910,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1910,0x1910,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x210F,0x290F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x2110,0x2910,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2110,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x2930,0x2930,0x2130,0x2131,0x2131,0x1911,0x1112,0x1133,0x1154,0x1195,0x19F7,0x1A17,0x2217,0x19B6,0x1174,0x1153,0x1132,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x292F,0x292F,0x290F,0x210F,0x290F,0x290F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2910,0x210F,0x2910,0x290F,0x210F,0x290F,0x2930,0x290F,0x2930,0x290F,0x2930,0x2910,0x2910,0x2930,0x212F,0x2930,0x210F,0x210F,0x2930,0x2910,0x2910,0x290F,0x290F,0x210F,0x2930,0x2910,0x210F,0x2930,0x210F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x2930,0x210F,0x212F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2930,0x292F,0x212F,0x210F,0x212F,0x292F,0x212F,0x210F,0x212F,0x292F,0x212F,0x2930,0x2930,0x290F,0x2110,0x2110,0x20F0,0x20D0,0x28D0,0x2090,0x5A17,0x8B3C,0x8AFB,0x931C,0x931C,0x92FB,0x92FC,0x92FC,0x92DC,0x92FC,0x92DC,0x8A9C,0x8A7B,0x92DC,0x92DC,0x92DC,0x92FC,0x82FB,0x200E,0x184F,0x28F0,0x2910,0x2110,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2910,0x210F,0x2910,0x2930,0x2930,0x210F,0x290F,0x210F,0x2910,0x2910,0x210F,0x290F,0x210F,0x2910,0x210F,0x2910,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x1911,0x1111,0x1112,0x1974,0x1995,0x19D6,0x21F7,0x21F7,0x1996,0x1974,0x1953,0x1932,0x1911,0x1910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1912,0x1112,0x1154,0x1995,0x2217,0x2217,0x19D6,0x1174,0x1953,0x1932,0x2131,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x210F,0x212F,0x212F,0x212F,0x2110,0x210F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x290F,0x2930,0x290F,0x210F,0x210F,0x212F,0x292F,0x210F,0x290F,0x290F,0x292F,0x292F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2110,0x2111,0x2111,0x1912,0x1133,0x1975,0x19D7,0x19F8,0x19F8,0x11D7,0x0976,0x0976,0x0976,0x0997,0x11B8,0x19F9,0x2219,0x21D7,0x21B6,0x2975,0x3173,0x3173,0x3972,0x3972,0x3972,0x4172,0x4172,0x4172,0x4192,0x4192,0x4992,0x4971,0x5171,0x48EE,0xA356,0xDCDB,0xD479,0xDC78,0xDC58,0xDC37,0xDC37,0xDC37,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC16,0xDC37,0xDC37,0xDC16,0xDC37,0xDC16,0xDC17,0xDC17,0xDC16,0xDC16,0xDC16,0xDC36,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDBF6,0xDC16,0xDBF6,0xDC17,0xDC16,0xDBF6,0xDBF6,0xDC16,0xDBF6,0xDBF6,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBF7,0xDBD7,0xDBD7,0xDC18,0xD418,0xCBF9,0x79D1,0x40AD,0x410F,0x38F0,0x3910,0x3951,0x3971,0x3171,0x3151,0x3171,0x3171,0x3151,0x3171,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x3150,0x3130,0x3130,0x3130,0x3150,0x310F,0x312F,0x310F,0x30EE,0x30EE,0x38EE,0x38CD,0x388C,0x302B,0x384B,0x6990,0xA2F5,0xC3D9,0xCBF9,0xD3F9,0xCBB8,0xD3B8,0xCB97,0xCB97,0xCB97,0xCB97,0xCB77,0xCB56,0xCB77,0xD377,0xCB77,0xCB97,0xCB97,0xCB97,0xC377,0xC377,0xC397,0xC397,0xC397,0xC397,0xBB97,0xBBB7,0xBB97,0xBB97,0xBB97,0xB397,0xB377,0xB397,0xAB97,0xAB97,0xB3D9,0xA398,0x7A94,0x38AD,0x180B,0x208C,0x28CE,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x210F,0x2930,0x290F,0x2910,0x2910,0x2930,0x2930,0x2130,0x2110,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1132,0x0933,0x19D6,0x11F7,0x11D7,0x1195,0x1132,0x1911,0x2131,0x2130,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x292F,0x2930,0x212F,0x2130,0x210F,0x2130,0x2130,0x2930,0x2110,0x2110,0x212F,0x212F,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x210F,0x2910,0x2930,0x2930,0x2930,0x2130,0x212F,0x2130,0x210F,0x2930,0x210F,0x290F,0x290F,0x2910,0x28AE,0x206E,0x204D,0x202D,0x202D,0x202D,0x202D,0x200D,0x180D,0x180D,0x202D,0x202D,0x204D,0x204E,0x206E,0x204D,0x186D,0x208E,0x20AF,0x20CF,0x20CF,0x20CF,0x20EF,0x20F0,0x20CF,0x20AF,0x208F,0x208E,0x206E,0x206E,0x206E,0x206E,0x206E,0x206E,0x208E,0x28AF,0x28CF,0x28F0,0x28CF,0x28F0,0x28CF,0x288F,0x286E,0x286E,0x284E,0x204E,0x284E,0x204E,0x206E,0x206E,0x206E,0x208E,0x20CF,0x20EF,0x20EF,0x210F,0x210F,0x210F,0x20EF,0x28EF,0x28AF,0x286E,0x286E,0x284E,0x284E,0x284E,0x286E,0x286E,0x288E,0x28AF,0x28CF,0x290F,0x210F,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x28EF,0x28EF,0x28AF,0x286E,0x284E,0x286E,0x284E,0x286E,0x286E,0x286E,0x286E,0x288E,0x28CF,0x290F,0x210F,0x210F,0x210F,0x210E,0x212F,0x2950,0x2130,0x1911,0x1931,0x1132,0x1174,0x21F7,0x19F7,0x19F7,0x0976,0x0976,0x0955,0x0955,0x0955,0x0955,0x0976,0x0976,0x0996,0x11D7,0x19F7,0x11D6,0x11B6,0x11B6,0x19B6,0x19B6,0x19B6,0x1995,0x19B5,0x19B5,0x1995,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x1995,0x2195,0x2195,0x21B5,0x21B5,0x21B5,0x21B5,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1974,0x1974,0x1974,0x1954,0x1953,0x1912,0x1912,0x1911,0x2131,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1911,0x1911,0x1932,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1112,0x1132,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1153,0x1133,0x1133, + 0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2930,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2131,0x1931,0x2152,0x1933,0x1133,0x1155,0x1197,0x19D8,0x19F9,0x1A19,0x19F8,0x19F8,0x1196,0x1155,0x1153,0x1932,0x2152,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x292F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2131,0x1910,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1910,0x2151,0x2131,0x2110,0x2110,0x2110,0x2910,0x20F0,0x20F0,0x2110,0x2930,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x2930,0x212F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2930,0x210F,0x2110,0x210F,0x210F,0x212F,0x2930,0x290F,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x1910,0x1910,0x1910,0x1930,0x2151,0x2130,0x2110,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x210F,0x2110,0x2110,0x2130,0x2110,0x2130,0x2930,0x2930,0x2930,0x2130,0x210F,0x2130,0x2110,0x2130,0x210F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2130,0x2151,0x2152,0x1932,0x1112,0x1132,0x1153,0x11B5,0x19F7,0x2217,0x2217,0x1195,0x1174,0x1133,0x1132,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x290F,0x292F,0x290F,0x290F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x290F,0x210F,0x290F,0x210F,0x210F,0x2110,0x212F,0x212F,0x210F,0x2910,0x2910,0x2930,0x2910,0x2930,0x290F,0x210F,0x2930,0x210F,0x2930,0x290F,0x210F,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x290F,0x2910,0x2110,0x2110,0x2930,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x28F0,0x20D0,0x2890,0x6237,0x8B3C,0x8B1C,0x931C,0x92FC,0x92FC,0x92DC,0x92DC,0x92BC,0x9ADC,0x929C,0x9ABC,0x9ADD,0x9ADD,0x92DC,0x92FC,0x8AFB,0x180E,0x208F,0x28F0,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x2910,0x290F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x292F,0x290F,0x292F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2111,0x1911,0x1912,0x1112,0x1953,0x1995,0x1995,0x2218,0x2217,0x1996,0x1154,0x1112,0x1912,0x1911,0x1910,0x2151,0x2150,0x2130,0x210F,0x2130,0x2150,0x2130,0x2130,0x2151,0x1931,0x1132,0x1133,0x0954,0x11B5,0x2217,0x2217,0x19B5,0x1153,0x1932,0x1931,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x292F,0x212F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x290F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2110,0x2110,0x2131,0x2132,0x1933,0x1954,0x21D7,0x2218,0x1A18,0x19F7,0x1196,0x11B7,0x1A18,0x2239,0x2239,0x2219,0x2218,0x21D7,0x2195,0x2974,0x2952,0x3152,0x3972,0x3972,0x4172,0x4192,0x4192,0x4192,0x4192,0x4992,0x4992,0x4971,0x5171,0x490E,0xA357,0xE4FC,0xDC79,0xDC58,0xDC58,0xDC57,0xDC57,0xDC37,0xDC57,0xDC36,0xDC36,0xDC37,0xDC37,0xDC16,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC17,0xDC16,0xDC17,0xDC17,0xDBF6,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDBF6,0xDBF6,0xDC16,0xDBF6,0xDBF6,0xD3F6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF7,0xDBF6,0xDBD7,0xDBF7,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBD6,0xDBD6,0xDBD7,0xDBF8,0xDC18,0xD419,0xD45A,0x58EE,0x48EF,0x4930,0x3930,0x3951,0x3951,0x3971,0x3951,0x3150,0x3150,0x3151,0x3171,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x3130,0x3130,0x3130,0x3150,0x3130,0x312F,0x310F,0x310F,0x30EE,0x30EE,0x38EE,0x38AD,0x386C,0x408C,0x696F,0x9AF4,0xD47A,0xDC7B,0xCBF8,0xC377,0xCB77,0xCB77,0xD397,0xD397,0xD377,0xD377,0xD356,0xD356,0xD377,0xD377,0xCB56,0xD377,0xCB76,0xCB76,0xCB76,0xC376,0xC397,0xC377,0xBB76,0xBB97,0xBB97,0xB397,0xB3B7,0xB397,0xB3B8,0xB3B8,0xB3B8,0xB3B8,0xABD8,0xABB8,0xABB8,0x9B77,0x9337,0x8B36,0x9378,0x9BD9,0x72B5,0x390E,0x208D,0x20AE,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x2930,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x2130,0x2130,0x212F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1932,0x1153,0x19F6,0x19F7,0x11D7,0x1195,0x1133,0x1911,0x2131,0x2131,0x2930,0x2110,0x210F,0x210F,0x210F,0x292F,0x2930,0x2130,0x2130,0x210F,0x210F,0x2130,0x2930,0x2930,0x2930,0x210F,0x2930,0x290F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x210F,0x2930,0x2930,0x212F,0x2130,0x212F,0x210F,0x290F,0x2930,0x2930,0x290F,0x2910,0x28EF,0x28EF,0x28EF,0x28EF,0x28CF,0x28AE,0x28AF,0x28CF,0x28CF,0x28CF,0x28CF,0x28CF,0x20CF,0x20CF,0x28CF,0x28EF,0x20CF,0x20CF,0x20EF,0x20EF,0x20EF,0x210F,0x2110,0x2930,0x20EF,0x28F0,0x28F0,0x20EF,0x28EF,0x28EF,0x28EF,0x28EF,0x28EF,0x2910,0x28EF,0x20EF,0x28EF,0x2910,0x2910,0x2910,0x2910,0x2910,0x28CF,0x28AF,0x28CF,0x28CF,0x28CF,0x28AF,0x28EF,0x28F0,0x20CF,0x20CF,0x290F,0x210F,0x212F,0x210F,0x210F,0x292F,0x290F,0x2930,0x28EF,0x28EF,0x28EF,0x28CF,0x28CF,0x28CF,0x28EF,0x28EF,0x28EF,0x28EF,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x210F,0x290F,0x290F,0x3110,0x30F0,0x30F0,0x28AF,0x28CF,0x28CF,0x28CF,0x28CF,0x28EF,0x28CF,0x2910,0x2930,0x210F,0x210F,0x210E,0x210F,0x212F,0x210F,0x2110,0x1930,0x1931,0x1132,0x1133,0x19B5,0x21F7,0x19F7,0x1196,0x1176,0x0976,0x1196,0x0955,0x0975,0x0996,0x11B7,0x11F7,0x1A18,0x19F7,0x0995,0x0913,0x0913,0x0933,0x0933,0x0913,0x1113,0x0912,0x0912,0x1112,0x1132,0x1112,0x1112,0x1132,0x1133,0x1132,0x1112,0x1113,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1112,0x1112,0x1932,0x1112,0x1112,0x10F2,0x18F2,0x1911,0x1911,0x2111,0x2110,0x2110,0x2110,0x210F,0x292F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2150,0x2130,0x2130,0x2131,0x2131,0x1931,0x1912,0x1932,0x1933,0x1153,0x1954,0x1974,0x1974,0x1974,0x1994,0x1974,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x21B5,0x21B4,0x21B5,0x21B5,0x21D5,0x21B5,0x21D5,0x21D5,0x21D5,0x21D5,0x21D5,0x21D5,0x21D5,0x21B5,0x21D5,0x21D5,0x21D5,0x21D5,0x21F6,0x29F5,0x29F5,0x21F5,0x21D5,0x21D5,0x21D5,0x21D5, + 0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x210F,0x290F,0x212F,0x2930,0x212F,0x210F,0x2930,0x290F,0x210F,0x2930,0x2930,0x290F,0x290F,0x2930,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x290F,0x290F,0x2910,0x292F,0x292F,0x290F,0x290F,0x210F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x294F,0x212F,0x212F,0x2130,0x2130,0x2131,0x2131,0x1932,0x1933,0x1154,0x1155,0x1197,0x11D8,0x11F8,0x1A19,0x19F8,0x19D8,0x1196,0x1154,0x1133,0x1932,0x2132,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2110,0x2130,0x2130,0x1910,0x2130,0x1910,0x1910,0x1931,0x1931,0x1910,0x2111,0x1910,0x1930,0x1910,0x2131,0x2130,0x2110,0x2110,0x2930,0x2910,0x2110,0x2910,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x2110,0x210F,0x212F,0x210F,0x290F,0x2930,0x2930,0x2110,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x2110,0x2910,0x2930,0x2930,0x2110,0x2110,0x2910,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2130,0x2110,0x210F,0x2130,0x2930,0x2930,0x2930,0x2930,0x2130,0x2110,0x2110,0x2130,0x210F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2151,0x2131,0x1931,0x1132,0x1133,0x1154,0x1195,0x19D6,0x2238,0x21F7,0x1195,0x1174,0x1132,0x1132,0x1932,0x1931,0x2130,0x2130,0x2110,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2930,0x210F,0x212F,0x210F,0x2110,0x2910,0x2930,0x2930,0x2930,0x290F,0x212F,0x212F,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x2910,0x290F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2910,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x290F,0x290F,0x212F,0x212F,0x210F,0x292F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2910,0x210F,0x2110,0x20F0,0x28F0,0x28B0,0x2070,0x59D6,0x8B3C,0x931C,0x931C,0x92FC,0x9AFC,0x9ADC,0x9ABC,0x9ADC,0x9ABC,0x9ABC,0x9A9C,0xA2FD,0x9ADD,0x9AFC,0x82DA,0x180E,0x208F,0x20EF,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x210F,0x290F,0x210F,0x2910,0x210F,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x210F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1912,0x1132,0x1953,0x1995,0x19B6,0x21F7,0x2217,0x19B6,0x1974,0x1133,0x1932,0x1931,0x1931,0x2110,0x2130,0x2150,0x2130,0x2110,0x2130,0x2130,0x2130,0x2151,0x1931,0x1132,0x1133,0x1133,0x1175,0x21F7,0x2217,0x21F6,0x1994,0x1152,0x1931,0x1931,0x2131,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x212F,0x210F,0x212F,0x290F,0x290F,0x292F,0x292F,0x2930,0x2930,0x290F,0x2930,0x290F,0x2930,0x210F,0x2930,0x290F,0x292F,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x212F,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x2130,0x2131,0x2131,0x2132,0x1932,0x1953,0x1975,0x21F7,0x21F7,0x19F7,0x19F7,0x1A18,0x2239,0x2239,0x2239,0x21F8,0x21D7,0x21B6,0x2995,0x2974,0x3173,0x3972,0x3972,0x4172,0x4172,0x4192,0x4192,0x4192,0x4992,0x4192,0x4992,0x4992,0x5191,0x48EE,0xA356,0xE4FC,0xDC79,0xDC58,0xDC57,0xDC57,0xDC37,0xDC36,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC16,0xDC37,0xDC17,0xDC16,0xDC17,0xDC16,0xDC17,0xDBF6,0xDC16,0xDC16,0xDBF6,0xDC16,0xDC16,0xDC16,0xDC16,0xDC17,0xDC16,0xDC16,0xDC17,0xDBF6,0xDBF6,0xDBF6,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF7,0xDBF6,0xDBD6,0xDBF6,0xDBF6,0xDBD7,0xDBD6,0xDBB6,0xDBD6,0xDBB6,0xDBB6,0xDBD6,0xDBD7,0xDBF7,0xDBF7,0xDBF8,0xD3F8,0xD43A,0xB357,0x592F,0x490F,0x4130,0x4130,0x3930,0x3951,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3171,0x3151,0x3150,0x3130,0x3150,0x3150,0x3130,0x312F,0x312F,0x310F,0x38EE,0x38EE,0x40CE,0x386C,0x48CD,0x8A94,0xCC39,0xD439,0xD419,0xD3D8,0xD3B7,0xCB96,0xCB76,0xD376,0xD376,0xD377,0xD356,0xD356,0xD376,0xD356,0xD356,0xCB56,0xD376,0xCB76,0xCB76,0xC335,0xCB96,0xC376,0xC397,0xBB97,0xBB97,0xB397,0xAB97,0xAB97,0xABB7,0xA3D8,0xA3D8,0xA3F8,0xA419,0xA419,0xA3F9,0xA3F9,0xA3F9,0x9BD9,0x9BD9,0x93B9,0x93B8,0x8BB8,0x8378,0x8B98,0x8BB9,0x6AD5,0x20AD,0x20AD,0x28EF,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x2930,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x2930,0x212F,0x2930,0x2930,0x2930,0x290F,0x292F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1133,0x19D6,0x1A17,0x11D7,0x11B6,0x1133,0x1911,0x2131,0x2130,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x210F,0x2930,0x290F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x292F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x290F,0x28EF,0x2910,0x2910,0x2910,0x20EF,0x2910,0x2910,0x2910,0x28EF,0x2930,0x2910,0x2910,0x20EF,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x20EF,0x290F,0x210F,0x20EF,0x20EF,0x2930,0x2910,0x290F,0x20EF,0x210F,0x210F,0x2910,0x2930,0x2930,0x290F,0x28EF,0x28EF,0x20EF,0x28EF,0x28EF,0x28EF,0x2910,0x290F,0x20EF,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x28EF,0x28EF,0x28EF,0x28EF,0x290F,0x28EF,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2950,0x212F,0x210F,0x210F,0x212F,0x210F,0x290F,0x210F,0x212F,0x210F,0x290F,0x20EF,0x2910,0x28F0,0x2910,0x28EF,0x28EF,0x28EF,0x290F,0x28EF,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2110,0x1930,0x1931,0x1952,0x1132,0x1153,0x19D6,0x21F7,0x19D7,0x19D7,0x11B6,0x11B6,0x1196,0x11B6,0x19D7,0x19F7,0x19F7,0x11D6,0x1194,0x0953,0x1133,0x1133,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1112,0x1112,0x1132,0x1112,0x1132,0x1932,0x1932,0x1932,0x1112,0x1111,0x1912,0x1911,0x1911,0x1911,0x1932,0x1931,0x1932,0x1931,0x1932,0x1911,0x2132,0x1911,0x1911,0x1911,0x1911,0x2131,0x2130,0x2110,0x210F,0x212F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2150,0x2130,0x2130,0x2131,0x1931,0x1932,0x1932,0x1953,0x2195,0x21D6,0x29F7,0x2A38,0x2A17,0x3238,0x2A37,0x3237,0x3258,0x3258,0x3258,0x3278,0x3258,0x3258,0x3278,0x3278,0x3257,0x3278,0x3257,0x3257,0x3257,0x3257,0x3237,0x3258,0x3257,0x3237,0x2A37,0x3237,0x3237,0x2A37,0x2A37,0x2A37,0x2A17,0x2A37,0x2A16,0x2A37,0x2A16,0x2A16,0x2A16,0x2A16,0x29F6, + 0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2910,0x2910,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x2930,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2130,0x2131,0x2131,0x1932,0x1933,0x1134,0x1155,0x0996,0x11D8,0x1A19,0x1A19,0x11F8,0x11D7,0x1196,0x1154,0x1112,0x1932,0x1911,0x2131,0x2130,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x210F,0x2130,0x2930,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x1910,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x2930,0x2110,0x2130,0x210F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x210F,0x212F,0x2130,0x2110,0x2910,0x2910,0x2930,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2110,0x2130,0x2131,0x1931,0x1132,0x1132,0x1154,0x1175,0x19D6,0x2218,0x21F7,0x19D6,0x1174,0x0912,0x1112,0x1931,0x1931,0x2151,0x2130,0x212F,0x212F,0x292F,0x2930,0x292F,0x290F,0x290F,0x290F,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x210F,0x212F,0x210F,0x212F,0x2930,0x2930,0x290F,0x210F,0x2930,0x2930,0x2110,0x2110,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2110,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x210F,0x2910,0x290F,0x210F,0x290F,0x290F,0x212F,0x212F,0x210F,0x290F,0x2930,0x2910,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x290F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x2110,0x2910,0x20D0,0x20B0,0x204F,0x59D5,0x933C,0x931C,0x9AFC,0x9AFC,0x9ADC,0x9ABC,0xA2DD,0xA2BD,0x9A9C,0x9A9C,0xA2BD,0xA2DD,0x9B1D,0x8ADA,0x180D,0x208F,0x20EF,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2930,0x292F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2910,0x2930,0x2110,0x2110,0x2910,0x210F,0x2910,0x2910,0x290F,0x290F,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2110,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x212F,0x292F,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1912,0x1112,0x1133,0x1995,0x19D6,0x21F7,0x21F7,0x1995,0x1154,0x1953,0x1132,0x1952,0x1931,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2151,0x2131,0x2131,0x1931,0x1932,0x1133,0x1133,0x1995,0x21F7,0x2217,0x21D6,0x19B5,0x1153,0x1132,0x1910,0x1931,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2910,0x290F,0x210F,0x210F,0x2910,0x2930,0x2110,0x2110,0x2110,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x3130,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2931,0x2131,0x2152,0x2132,0x1953,0x1974,0x1995,0x21F6,0x2217,0x21F7,0x19F7,0x21F7,0x21D7,0x21B6,0x2195,0x2195,0x2995,0x3173,0x3173,0x3972,0x4172,0x4172,0x4192,0x4192,0x4192,0x4192,0x49B2,0x4992,0x49B2,0x4992,0x5191,0x512F,0x92D5,0xDCDC,0xDC99,0xDC78,0xDC78,0xDC57,0xDC37,0xDC36,0xDC36,0xDC37,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC16,0xDC37,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC16,0xDC17,0xDC17,0xDC17,0xDC16,0xDC16,0xDC16,0xDBF6,0xDC16,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBD7,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBD7,0xDBD7,0xDBF8,0xD3F8,0xE4BB,0xA316,0x510F,0x4930,0x4130,0x3930,0x3951,0x3971,0x3971,0x3991,0x3971,0x3971,0x3171,0x3971,0x3951,0x3151,0x3151,0x3151,0x3151,0x3150,0x3150,0x3130,0x3130,0x312F,0x390F,0x38EE,0x40CD,0x48AD,0x612F,0xA2F5,0xDC5A,0xD419,0xCB97,0xCB97,0xCB97,0xCB76,0xD396,0xD376,0xD396,0xD376,0xCB56,0xD356,0xD356,0xD356,0xD356,0xD356,0xCB56,0xCB76,0xC355,0xCB76,0xCB96,0xC396,0xBB96,0xBB96,0xB376,0xAB76,0xABB7,0xA3B7,0x9BB7,0x9BF8,0x93F8,0x9418,0x9419,0x9419,0x9419,0x8C19,0x9439,0x945A,0x943A,0x945A,0x9C7B,0x947B,0x945B,0x945A,0x945B,0x941A,0x8BD9,0x8BD9,0x7B78,0x41B1,0x20CE,0x20EE,0x28EF,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x212F,0x2930,0x292F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x11D6,0x11F7,0x11D7,0x1195,0x1133,0x1911,0x2131,0x2110,0x2130,0x2930,0x212F,0x2930,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2110,0x2930,0x290F,0x210F,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x2930,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x292F,0x290F,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x210F,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2910,0x20EF,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x20EF,0x290F,0x28EF,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x292F,0x212F,0x210F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x28EF,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x290F,0x210F,0x2930,0x210F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1931,0x1952,0x1132,0x1994,0x19D6,0x19D7,0x19D7,0x19F7,0x19F7,0x19F7,0x19F7,0x19D7,0x19D6,0x19B6,0x1154,0x1153,0x1152,0x1152,0x1132,0x1132,0x1952,0x1952,0x1931,0x1931,0x1931,0x1131,0x1111,0x1911,0x1911,0x1932,0x1931,0x1952,0x1932,0x1932,0x1931,0x1931,0x1911,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2111,0x2131,0x2130,0x2110,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2150,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1953,0x1994,0x29F6,0x2A17,0x2A17,0x2A17,0x29F7,0x2A17,0x2A17,0x2A17,0x29F7,0x29F6,0x29F6,0x2A16,0x29F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21F6,0x29F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21D6,0x21F5,0x21F5,0x21B5,0x21B5,0x21D5,0x21D5,0x21B5,0x21B5, + 0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x290F,0x292F,0x292F,0x2910,0x2910,0x2110,0x2930,0x2930,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2131,0x2131,0x1932,0x1133,0x1154,0x0975,0x11B7,0x11F8,0x1A19,0x1A19,0x11F8,0x11D7,0x1196,0x1154,0x1133,0x1932,0x2131,0x2131,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x2910,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2930,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2110,0x2130,0x2110,0x2130,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2930,0x210F,0x212F,0x210F,0x210F,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x2930,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x1931,0x1931,0x1132,0x1153,0x1174,0x1175,0x19D6,0x2218,0x21F7,0x19D6,0x1174,0x1112,0x1112,0x1931,0x2151,0x2130,0x2130,0x2130,0x2930,0x2930,0x212F,0x210F,0x2930,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x290F,0x290F,0x212F,0x212F,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x2930,0x2910,0x210F,0x290F,0x2930,0x210F,0x212F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x210F,0x212F,0x2930,0x210F,0x2930,0x2930,0x210F,0x20EF,0x20F0,0x20D0,0x28B0,0x286F,0x5194,0x935C,0x931C,0x9AFC,0x9ADC,0xA2FD,0x9ABC,0x9A9D,0x9A9D,0x9A7C,0xA2BD,0xA2DD,0xA31D,0x829A,0x180D,0x208F,0x20EF,0x210F,0x2930,0x212F,0x2130,0x2130,0x210F,0x210F,0x2930,0x2930,0x292F,0x292F,0x290F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2910,0x210F,0x2110,0x290F,0x210F,0x210F,0x2910,0x210F,0x210F,0x2910,0x2910,0x290F,0x210F,0x2930,0x210F,0x210F,0x2930,0x2910,0x2930,0x2910,0x2930,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1911,0x1111,0x1112,0x1133,0x1975,0x21D6,0x21F7,0x21F7,0x19B6,0x1154,0x1133,0x1132,0x1931,0x1951,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x1911,0x1932,0x1113,0x1133,0x1175,0x21F7,0x2218,0x21F7,0x19B5,0x1974,0x1152,0x1131,0x1930,0x1930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x210F,0x2930,0x2910,0x2930,0x2110,0x2110,0x2930,0x2110,0x290F,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x212F,0x2930,0x212F,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x2930,0x2930,0x2130,0x2931,0x2131,0x2131,0x2132,0x2132,0x2132,0x1953,0x21B4,0x21D5,0x19B5,0x19B5,0x21B5,0x2195,0x2195,0x2194,0x2994,0x2973,0x3173,0x3973,0x3972,0x4172,0x4992,0x4992,0x4993,0x4992,0x4192,0x49B2,0x49B3,0x4992,0x51B2,0x51B1,0x5150,0x8A94,0xE4FC,0xDC9A,0xDC78,0xDC58,0xDC57,0xDC36,0xDC36,0xDC36,0xDC37,0xDC37,0xDC57,0xD417,0xD417,0xDC37,0xDC37,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC16,0xDC17,0xDC16,0xDBF6,0xDC16,0xDC17,0xDC16,0xDBF6,0xDC16,0xDBF6,0xDC17,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF7,0xDBF6,0xD3D6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBB6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBD7,0xDBF8,0xDBF8,0xD419,0xE4DC,0x71B1,0x510F,0x4930,0x4150,0x4151,0x3951,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3131,0x3951,0x3951,0x3950,0x3950,0x3930,0x392F,0x390F,0x390F,0x40EE,0x386C,0x6970,0xB377,0xD43A,0xDBF9,0xD3B8,0xD377,0xD376,0xD376,0xD376,0xD376,0xD356,0xD356,0xD376,0xD376,0xD356,0xD356,0xCB56,0xCB56,0xCB76,0xCB76,0xCB76,0xC376,0xBB76,0xC3B7,0xB396,0xAB96,0xAB96,0x9B55,0x9B76,0x9BB7,0x93B7,0x9C18,0x9C59,0x9C9A,0x9CBB,0x94BB,0x9CFC,0x9CFD,0x9D1D,0x9D3D,0x94FD,0x94DC,0x9D1D,0x9D1D,0x9CFD,0x9CFD,0x9CFD,0x9CFD,0x9C9C,0x947C,0x947B,0x8BFA,0x8BF9,0x8BFA,0x5253,0x20CE,0x20EF,0x20EF,0x290F,0x292F,0x2910,0x290F,0x210F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x2110,0x212F,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x290F,0x292F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1133,0x11B6,0x19F7,0x11D7,0x11B6,0x1133,0x1911,0x2131,0x2110,0x2130,0x2930,0x2930,0x2930,0x210F,0x212F,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x210F,0x2930,0x212F,0x210F,0x210F,0x2910,0x210F,0x2930,0x2910,0x210F,0x2930,0x2930,0x290F,0x292F,0x292F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x2930,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2930,0x210F,0x2930,0x2110,0x2910,0x2110,0x2930,0x2110,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x290F,0x2910,0x2910,0x20EF,0x210F,0x290F,0x2930,0x2130,0x212F,0x212F,0x2950,0x212F,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x210F,0x210F,0x292F,0x212F,0x212F,0x210F,0x210F,0x20EF,0x2930,0x210F,0x210F,0x292F,0x292F,0x292F,0x290F,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x210F,0x2130,0x2130,0x1931,0x1951,0x1951,0x1132,0x1132,0x1153,0x1995,0x19D6,0x19B6,0x19B6,0x19B6,0x19B5,0x1995,0x1174,0x1154,0x1133,0x1132,0x1131,0x1931,0x1931,0x1931,0x1931,0x1951,0x1951,0x1951,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x2150,0x2130,0x2130,0x1930,0x2131,0x1931,0x1931,0x1932,0x1953,0x1995,0x21F6,0x2A17,0x21F7,0x21D6,0x21B6,0x1995,0x1995,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1174,0x1174,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1994,0x1994,0x1994,0x1994,0x1994,0x1974,0x1994,0x1994,0x1974,0x1994,0x1974,0x1994,0x1974,0x1974, + 0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x212F,0x2930,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x290F,0x210F,0x210F,0x292F,0x292F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x2910,0x2930,0x2930,0x2110,0x2930,0x292F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2130,0x2131,0x1911,0x1912,0x1133,0x1174,0x1195,0x11B7,0x11D8,0x1219,0x1A19,0x11F8,0x19D7,0x1196,0x1154,0x1933,0x1912,0x1931,0x2130,0x2130,0x2110,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x2910,0x2110,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x290F,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x210F,0x2910,0x2930,0x290F,0x210F,0x2910,0x2910,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x210F,0x2910,0x2110,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2930,0x2930,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2110,0x2910,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x210F,0x212F,0x2930,0x212F,0x2110,0x2930,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x292F,0x2930,0x210F,0x290F,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1951,0x1952,0x1153,0x1154,0x1175,0x19B6,0x21F7,0x2217,0x19D6,0x1154,0x1112,0x1112,0x1931,0x2151,0x2951,0x2930,0x210F,0x210F,0x2130,0x2130,0x210F,0x2110,0x212F,0x2130,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x212F,0x212F,0x290F,0x2930,0x210F,0x290F,0x2910,0x2910,0x2110,0x2110,0x2930,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x2110,0x2110,0x2130,0x2930,0x290F,0x210F,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2110,0x2930,0x2110,0x2110,0x28F0,0x20CF,0x28B0,0x286F,0x5174,0x933B,0x9B1C,0xA31C,0xA2FD,0x9ABC,0xA29C,0xA29D,0xA29D,0xAADD,0xAADD,0xA2FC,0x8ADA,0x180D,0x20AF,0x28EF,0x210F,0x212F,0x212F,0x2130,0x2130,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x292F,0x292F,0x210F,0x212F,0x212F,0x290F,0x2930,0x290F,0x210F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x2910,0x290F,0x290F,0x210F,0x2110,0x2930,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1911,0x1112,0x1153,0x19B5,0x2A37,0x21F7,0x19D6,0x21D6,0x1974,0x1113,0x1112,0x1931,0x1931,0x2150,0x2130,0x212F,0x210F,0x2130,0x2130,0x2110,0x2131,0x2131,0x2132,0x1912,0x1113,0x1134,0x1976,0x21D7,0x2218,0x21F7,0x19B6,0x1994,0x1953,0x1932,0x1931,0x1930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x2930,0x212F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x210F,0x2930,0x290F,0x210F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2130,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2130,0x2130,0x2930,0x2951,0x2931,0x2931,0x2952,0x2152,0x2152,0x2173,0x2194,0x21B4,0x21B4,0x2194,0x2174,0x2174,0x2994,0x2973,0x2973,0x3173,0x3972,0x3972,0x4172,0x4172,0x4992,0x4992,0x4993,0x49B3,0x49B3,0x49B2,0x49B2,0x51B2,0x51B1,0x492F,0x7212,0xDCFC,0xD499,0xD458,0xDC58,0xDC57,0xDC57,0xDC37,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC17,0xD416,0xDC16,0xDC17,0xDC17,0xE417,0xDC17,0xDBF7,0xDBF6,0xDC17,0xDC16,0xDC17,0xDC17,0xDC37,0xDC16,0xDC16,0xDC17,0xDC16,0xDBF6,0xDBF7,0xDBF6,0xDBF7,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBD7,0xDBD7,0xD3D7,0xD3D8,0xCBD8,0xB357,0x488D,0x4930,0x4150,0x4150,0x4171,0x3971,0x3971,0x3971,0x3971,0x3991,0x3971,0x3971,0x3971,0x3951,0x3951,0x3950,0x3930,0x392F,0x390F,0x40CE,0x40AD,0x6990,0xBBB8,0xE4BC,0xD3F9,0xCB77,0xD377,0xD377,0xD376,0xD377,0xD356,0xD356,0xD356,0xD356,0xD376,0xD356,0xD356,0xCB56,0xCB56,0xCB76,0xCB76,0xC396,0xC3B6,0xBBB6,0xBBB6,0xABB6,0xA396,0x9BB7,0x9BD7,0x93F7,0x9438,0x9438,0x9479,0x9CBA,0x9CFB,0xAD7D,0xB5DF,0xB5FF,0xB5FF,0x953D,0x953E,0x953E,0x84DC,0x8CFD,0x8D3E,0x84FD,0x84DD,0x8CBD,0x8CBD,0x8CBD,0x8CBD,0x9CDD,0x9CDD,0x9C9C,0x9C7C,0x943B,0x945B,0x83B9,0x41D2,0x290F,0x20EF,0x210F,0x210F,0x2930,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x11D6,0x19F7,0x19F7,0x11B6,0x1133,0x1911,0x1911,0x2110,0x2130,0x2930,0x2930,0x2930,0x210F,0x210F,0x2910,0x2910,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x212F,0x2930,0x212F,0x2110,0x210F,0x210F,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x212F,0x212F,0x292F,0x292F,0x290F,0x292F,0x2930,0x2930,0x2930,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x2130,0x210F,0x2930,0x2930,0x292F,0x212F,0x210F,0x2930,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x20EF,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x2930,0x290F,0x212F,0x292F,0x210F,0x212F,0x210F,0x2130,0x212F,0x2130,0x212F,0x2130,0x212F,0x2930,0x2930,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x210F,0x290F,0x290F,0x2930,0x210F,0x292F,0x212F,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1951,0x1931,0x1111,0x1132,0x1973,0x1994,0x1974,0x1174,0x1154,0x1174,0x1994,0x1153,0x1132,0x1111,0x1931,0x1931,0x1951,0x1930,0x1930,0x1930,0x2131,0x2151,0x2130,0x2130,0x2130,0x1930,0x1930,0x1930,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x210F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1931,0x1131,0x1132,0x1153,0x1995,0x21F6,0x21F7,0x21D6,0x21B6,0x1974,0x1154,0x1133,0x1133,0x1133,0x1133,0x1132,0x1112,0x1132,0x1132,0x1132,0x1933,0x1132,0x1132,0x1112,0x1132,0x1933,0x1112,0x1932,0x1933,0x1132,0x1132,0x1132,0x1112,0x1132,0x1953,0x1132,0x1933,0x1132,0x1132,0x1132,0x1953,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1953, + 0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x292F,0x290F,0x210F,0x292F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x2930,0x290F,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x292F,0x290F,0x2930,0x210F,0x210F,0x2130,0x210F,0x290F,0x292F,0x2930,0x2930,0x2130,0x2111,0x1931,0x1932,0x1153,0x1174,0x1175,0x11B6,0x11F8,0x1218,0x1A19,0x1A18,0x19D7,0x19B6,0x1154,0x1133,0x1912,0x1911,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2930,0x212F,0x212F,0x2110,0x210F,0x212F,0x2930,0x210F,0x2110,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x210F,0x210F,0x212F,0x210F,0x212F,0x290F,0x290F,0x2930,0x210F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2910,0x2910,0x2930,0x2910,0x210F,0x210F,0x210F,0x290F,0x292F,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x2110,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x210F,0x2910,0x2910,0x2930,0x2910,0x2910,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x2930,0x212F,0x2930,0x2130,0x2130,0x2110,0x2930,0x2130,0x2130,0x2110,0x2110,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x290F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x212F,0x2930,0x2930,0x290F,0x2930,0x2130,0x2130,0x2950,0x2150,0x2130,0x2130,0x2130,0x1930,0x1952,0x1152,0x1153,0x1154,0x1155,0x19D7,0x2218,0x2217,0x19D6,0x1154,0x1112,0x1112,0x1931,0x2151,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x2130,0x212F,0x2130,0x2110,0x2930,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2930,0x2110,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x2910,0x290F,0x2910,0x2910,0x210F,0x290F,0x2930,0x210F,0x290F,0x2910,0x2910,0x2110,0x2110,0x210F,0x2930,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x212F,0x210F,0x292F,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x20EF,0x28CF,0x28AF,0x286F,0x5153,0x933B,0xA33C,0xA2FD,0xA2DD,0xA2BD,0xA29D,0xA29D,0xAABD,0xAADD,0xA2FD,0x8ABA,0x200E,0x208F,0x28F0,0x2910,0x212F,0x212F,0x2130,0x2930,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x290F,0x290F,0x210F,0x212F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x290F,0x210F,0x2910,0x290F,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x2930,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1111,0x1112,0x1133,0x1995,0x2217,0x2217,0x21F7,0x19B6,0x1154,0x1133,0x1932,0x1911,0x1931,0x1930,0x2130,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1932,0x1912,0x1113,0x1114,0x1176,0x21D7,0x2218,0x21F8,0x21D7,0x1995,0x1153,0x1952,0x1951,0x1930,0x2150,0x2130,0x2930,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2910,0x210F,0x2130,0x212F,0x210F,0x2930,0x290F,0x2930,0x2930,0x210F,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2910,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2931,0x2931,0x2951,0x2931,0x2931,0x2931,0x2952,0x2131,0x2152,0x2152,0x2172,0x2173,0x2973,0x2973,0x2973,0x3173,0x3172,0x3172,0x3972,0x4172,0x4172,0x4993,0x4172,0x4993,0x4993,0x49B3,0x49B3,0x49B3,0x49B2,0x51B2,0x51B2,0x5150,0x71F2,0xD4DC,0xD479,0xDC78,0xDC58,0xDC78,0xDC57,0xD437,0xD436,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC17,0xDC37,0xDC16,0xDC16,0xDC16,0xDBF6,0xDC17,0xDBF7,0xDBF7,0xDC17,0xDC16,0xDC17,0xDC16,0xDC17,0xDBF6,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBF6,0xDBF6,0xDBD6,0xDBD6,0xDBF6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB7,0xDBD7,0xDBD8,0xD3D8,0xC3B8,0x79D1,0x40AD,0x4930,0x4130,0x4171,0x3951,0x3951,0x4171,0x4192,0x3971,0x3971,0x4171,0x4171,0x4151,0x3930,0x4130,0x410F,0x40EE,0x386C,0x6150,0xBBB8,0xDC7B,0xDC19,0xD3B8,0xD377,0xD377,0xDB77,0xD356,0xD356,0xDB77,0xD336,0xD356,0xD356,0xD356,0xD376,0xCB56,0xCB56,0xCB76,0xC396,0xC3B7,0xBBD7,0xB3B7,0xABB6,0xA3D7,0x9BD6,0x8BB6,0x9438,0x8C38,0x8C79,0x8C99,0x8499,0x951B,0x951B,0xA5BE,0xADFF,0xADBF,0x8CFC,0x63B7,0x42D4,0x21B0,0x1990,0x116F,0x1970,0x1990,0x114F,0x1970,0x1970,0x2190,0x1970,0x2991,0x29B1,0x39F2,0x4212,0x5274,0x5A94,0x5A74,0x5A54,0x41D2,0x3130,0x292F,0x290F,0x210F,0x290F,0x210F,0x2910,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x290F,0x290F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1133,0x11D6,0x11F7,0x11F7,0x11B6,0x1133,0x1911,0x2111,0x2110,0x2930,0x2930,0x2110,0x2930,0x210F,0x2930,0x2930,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x212F,0x2930,0x212F,0x2930,0x2930,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x210F,0x2930,0x212F,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2910,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x290F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x212F,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x2150,0x2130,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x292F,0x210F,0x290F,0x292F,0x2930,0x292F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1132,0x1133,0x1953,0x1132,0x1952,0x1931,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1132,0x1133,0x19B5,0x2217,0x21F7,0x21F7,0x19B6,0x1974,0x1133,0x1132,0x1132,0x1932,0x1932,0x1112,0x1932,0x1912,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1912,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1912,0x1932,0x1932,0x1112,0x1932,0x1932,0x1932,0x1932,0x1932,0x1111,0x1932,0x1932, + 0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x2910,0x290F,0x2930,0x210F,0x290F,0x292F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2930,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2910,0x2930,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2931,0x2111,0x1911,0x1932,0x1133,0x0953,0x1175,0x11B6,0x11F8,0x1A19,0x1219,0x1A19,0x19F8,0x19B6,0x1154,0x1133,0x1112,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2930,0x210F,0x290F,0x210F,0x2910,0x2930,0x2910,0x2910,0x210F,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x290F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x290F,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x2910,0x2930,0x2910,0x2110,0x2910,0x2910,0x290F,0x292F,0x290F,0x292F,0x2130,0x2130,0x2130,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x290F,0x290F,0x210F,0x2930,0x290F,0x2930,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2151,0x1931,0x1932,0x1133,0x1154,0x1195,0x19D7,0x2238,0x2218,0x19B6,0x1154,0x1133,0x1112,0x1932,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x2110,0x2930,0x212F,0x2930,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x2930,0x2930,0x2110,0x2110,0x2130,0x210F,0x292F,0x290F,0x2910,0x2930,0x2110,0x2110,0x2930,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2130,0x2110,0x20EF,0x2110,0x290F,0x290F,0x28F0,0x28D0,0x288F,0x5153,0x9B3C,0xA31D,0xA2FD,0xA2BD,0xA27C,0xA25C,0xAABD,0xAADD,0xA2FD,0x92FB,0x200E,0x208F,0x28EF,0x20EF,0x210F,0x212F,0x2930,0x2930,0x212F,0x212F,0x210F,0x290F,0x2930,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2930,0x210F,0x2910,0x2930,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x210F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1111,0x1112,0x1173,0x19B5,0x19D6,0x2217,0x2217,0x19B5,0x1154,0x1133,0x1932,0x1911,0x1910,0x1910,0x2151,0x2130,0x210F,0x210F,0x2130,0x2130,0x2131,0x2131,0x2132,0x1912,0x1113,0x1134,0x1176,0x19D8,0x2219,0x21F8,0x21D7,0x1975,0x1133,0x1112,0x1931,0x2151,0x2151,0x2130,0x2130,0x2110,0x2930,0x2910,0x2110,0x2110,0x2910,0x2930,0x2930,0x2910,0x290F,0x2930,0x2110,0x210F,0x210F,0x2930,0x2930,0x2930,0x210F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x2951,0x2931,0x3131,0x3151,0x2931,0x2931,0x2931,0x2931,0x2952,0x2952,0x2972,0x2952,0x2952,0x3193,0x3193,0x3172,0x3972,0x4192,0x4172,0x4172,0x4172,0x49B3,0x4993,0x49B3,0x49B3,0x49B3,0x49B3,0x49B2,0x51B2,0x59D2,0x5991,0x7212,0xD4DC,0xCC59,0xD458,0xD437,0xD457,0xD457,0xD457,0xDC57,0xDC57,0xDC57,0xD437,0xDC37,0xDC37,0xDC37,0xD437,0xDC37,0xDC17,0xDC17,0xDC17,0xDC16,0xDC17,0xDBF6,0xDBF7,0xDC17,0xDC17,0xDC16,0xDBF6,0xDBF6,0xDC16,0xDC17,0xDC17,0xDC16,0xDC17,0xDBF7,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xD3D6,0xD3B6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDBB6,0xDB96,0xDBD6,0xDBB6,0xDBB7,0xDBD7,0xDBF8,0xD3D8,0xCBF9,0x612F,0x40AD,0x4930,0x4971,0x4191,0x4171,0x4171,0x4151,0x4191,0x4171,0x3951,0x4151,0x4130,0x410F,0x40EE,0x40AD,0x612E,0xB357,0xE4BC,0xD3D9,0xCB98,0xD377,0xD377,0xD377,0xDB77,0xD356,0xD356,0xDB76,0xD336,0xD356,0xD356,0xCB56,0xCB56,0xCB76,0xC376,0xC397,0xC3B7,0xB397,0xABB7,0x9BB7,0x9BF7,0x9438,0x8438,0x8478,0x7458,0x6C58,0x74D9,0x7D1A,0x855B,0x8DBD,0x8D5C,0x95BE,0x7CDB,0x42B4,0x114E,0x008C,0x08AC,0x08CD,0x10EE,0x10EE,0x10EE,0x10EE,0x10EE,0x10EE,0x10EE,0x10CE,0x10EE,0x190F,0x10AD,0x10AD,0x18AD,0x108D,0x18AD,0x18AD,0x188D,0x186D,0x18AE,0x20EE,0x20EF,0x290F,0x292F,0x292F,0x2930,0x292F,0x290F,0x292F,0x2930,0x290F,0x2930,0x290F,0x2910,0x2110,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x212F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x19D6,0x19F7,0x11F7,0x11B6,0x1112,0x1911,0x2131,0x2110,0x2930,0x2930,0x2110,0x2130,0x210F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2110,0x2110,0x2930,0x210F,0x212F,0x210F,0x290F,0x2930,0x2910,0x2910,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x2930,0x2930,0x212F,0x212F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x2930,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2110,0x2930,0x2930,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1951,0x1931,0x1931,0x2151,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1132,0x1153,0x1995,0x21F7,0x21F7,0x21F7,0x19B6,0x1974,0x1133,0x1932,0x1912,0x1912,0x1911,0x1911,0x1931,0x1931,0x1931,0x1952,0x1952,0x1931,0x1931,0x1931,0x1931,0x2131,0x1911,0x2132,0x1931,0x1931,0x2132,0x1931,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1932,0x1931,0x1931,0x1931, + 0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2910,0x2930,0x212F,0x2930,0x212F,0x212F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2110,0x2910,0x290F,0x210F,0x290F,0x290F,0x292F,0x212F,0x292F,0x212F,0x292F,0x292F,0x290F,0x210F,0x2930,0x210F,0x2110,0x2930,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2130,0x2110,0x2131,0x1931,0x1132,0x1132,0x1174,0x0975,0x11D7,0x11D7,0x11F8,0x1A19,0x11F8,0x19F8,0x11B6,0x1154,0x1133,0x1132,0x1932,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2930,0x2910,0x210F,0x2930,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x290F,0x290F,0x290F,0x210F,0x2910,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2110,0x2910,0x2930,0x2910,0x2910,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2910,0x2110,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x290F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2930,0x290F,0x290F,0x292F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x212F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x290F,0x2110,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1953,0x1154,0x1195,0x19D7,0x1A18,0x2218,0x19B6,0x1154,0x1133,0x1112,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x212F,0x210F,0x290F,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x2910,0x210F,0x290F,0x210F,0x2930,0x290F,0x2910,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x2110,0x2110,0x212F,0x292F,0x290F,0x290F,0x2110,0x2110,0x2110,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2130,0x210F,0x210F,0x2130,0x212F,0x210F,0x290F,0x28EF,0x28CF,0x308F,0x5153,0xA33D,0xA31D,0xAAFD,0xAA9D,0xA27C,0xAA9D,0xB2DD,0xAAFD,0x9ADB,0x200E,0x208F,0x28F0,0x20EF,0x210F,0x2930,0x2910,0x2930,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2930,0x210F,0x210F,0x2930,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2131,0x2131,0x1911,0x1932,0x1112,0x1153,0x19B5,0x19F6,0x2217,0x2217,0x19D6,0x1174,0x1132,0x1932,0x1911,0x1910,0x2130,0x2130,0x2950,0x2130,0x210F,0x2110,0x2130,0x2130,0x2131,0x2152,0x1932,0x1113,0x1113,0x1155,0x21D8,0x2219,0x2218,0x21D7,0x1975,0x1133,0x1112,0x1911,0x1931,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2910,0x2930,0x2110,0x2930,0x290F,0x2930,0x210F,0x2910,0x2930,0x290F,0x290F,0x210F,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x292F,0x290F,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2931,0x2951,0x3151,0x3131,0x3131,0x2931,0x2931,0x2931,0x2951,0x2951,0x3152,0x3152,0x3152,0x3172,0x3172,0x3172,0x3172,0x3972,0x4192,0x4192,0x4172,0x4993,0x4993,0x4993,0x49B3,0x49B3,0x49D3,0x51D3,0x51D3,0x51D3,0x51B2,0x5191,0x69F2,0xD4FD,0xCC7A,0xCC58,0xD438,0xD457,0xD457,0xD477,0xDC98,0xDC57,0xDC58,0xD437,0xD437,0xD437,0xD457,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC36,0xDC16,0xDC17,0xDC17,0xDC17,0xDC16,0xDC17,0xDC17,0xDC17,0xD3F6,0xDC37,0xDC37,0xDC16,0xDC17,0xDBF6,0xDBF7,0xDBF6,0xDBD6,0xDBD6,0xDBF6,0xDBD6,0xDBD6,0xDBF6,0xDBF6,0xDBF6,0xDBF7,0xD3B6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDB96,0xDBB6,0xDB96,0xDB96,0xDB96,0xDBB6,0xDBB6,0xDBD7,0xDBB7,0xDBD7,0xD3D7,0xCBD8,0xC3B8,0x590E,0x48EE,0x4950,0x4971,0x4171,0x4171,0x4171,0x4171,0x4171,0x4151,0x4130,0x490F,0x40CD,0x50CD,0xA316,0xD45A,0xDC3A,0xD3B8,0xD377,0xD377,0xD376,0xD356,0xDB56,0xDB56,0xDB56,0xD356,0xD356,0xD356,0xCB56,0xCB77,0xCB56,0xC377,0xC3B7,0xBB97,0xAB97,0xA3B7,0x9BB7,0x93F8,0x8C38,0x8458,0x7458,0x7CDA,0x751A,0x751B,0x755C,0x7DBD,0x7DDD,0x85BD,0x859D,0x8DBE,0x6459,0x094E,0x00ED,0x090E,0x10EE,0x10EE,0x18EE,0x18EF,0x18EF,0x190F,0x18EE,0x190F,0x18EE,0x190F,0x190F,0x18EE,0x18EE,0x18EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EF,0x20EF,0x20EF,0x20EF,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2910,0x2910,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x210F,0x2130,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x19B6,0x19F7,0x11D7,0x11B6,0x1133,0x1911,0x2111,0x2110,0x2130,0x2930,0x2930,0x2930,0x212F,0x212F,0x2930,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x2930,0x2930,0x210F,0x210F,0x2930,0x210F,0x290F,0x2930,0x2110,0x2110,0x210F,0x210F,0x2910,0x2910,0x290F,0x210F,0x290F,0x292F,0x212F,0x292F,0x2930,0x2930,0x212F,0x2930,0x210F,0x2930,0x290F,0x2930,0x210F,0x2930,0x2930,0x212F,0x2930,0x212F,0x2130,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x210F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2950,0x212F,0x212F,0x212F,0x2150,0x212F,0x2150,0x2130,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2150,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x2930,0x210F,0x290F,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x214F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x214F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2930,0x2130,0x212F,0x2930,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x1930,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1951,0x1930,0x1930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1912,0x1133,0x1153,0x1195,0x2217,0x21F7,0x21F7,0x19B6,0x1154,0x1933,0x1912,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1911,0x1911,0x2131,0x1931,0x1910,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x1911,0x2131,0x2131,0x2111,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x1911,0x1911,0x1931,0x1910,0x2131,0x2131,0x2131,0x2111,0x2111,0x2131, + 0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x212F,0x210F,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x2130,0x2110,0x2130,0x1910,0x1931,0x1932,0x1132,0x0953,0x0975,0x0996,0x11F8,0x11F8,0x1A19,0x11F8,0x19F8,0x1196,0x1154,0x1133,0x1112,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2910,0x2110,0x210F,0x2110,0x2910,0x2930,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2930,0x2930,0x2110,0x210F,0x290F,0x290F,0x210F,0x2110,0x2110,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x292F,0x2930,0x2930,0x2130,0x2130,0x2110,0x2130,0x1910,0x1930,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1952,0x1932,0x1133,0x1154,0x1195,0x19D7,0x2218,0x2218,0x19B6,0x1154,0x0912,0x1112,0x1932,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x212F,0x212F,0x2130,0x2930,0x212F,0x2930,0x2930,0x290F,0x212F,0x212F,0x2930,0x2930,0x2930,0x210F,0x290F,0x2910,0x290F,0x290F,0x2910,0x210F,0x290F,0x290F,0x2930,0x2910,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x292F,0x290F,0x210F,0x290F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x292F,0x212F,0x292F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x28CF,0x28AF,0x304F,0x5113,0xA2FD,0xAAFD,0xAADE,0xAA9D,0xAA9D,0xB2BD,0xAADD,0x9ADB,0x280E,0x206F,0x28CF,0x28F0,0x20EF,0x210F,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x212F,0x212F,0x2110,0x210F,0x2130,0x2131,0x1931,0x1912,0x1112,0x1153,0x1995,0x21F6,0x2217,0x21F6,0x1995,0x1154,0x1132,0x1131,0x1111,0x1910,0x2130,0x2130,0x2971,0x2130,0x2130,0x210F,0x2110,0x2130,0x2131,0x1911,0x1952,0x1133,0x1113,0x1155,0x19D7,0x2218,0x2219,0x21D7,0x1975,0x1113,0x10F2,0x1911,0x1911,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2110,0x2910,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x290F,0x292F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x290F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2931,0x2930,0x2930,0x2930,0x2931,0x2931,0x2931,0x3131,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3172,0x3172,0x3172,0x3172,0x3972,0x3992,0x3992,0x3972,0x4172,0x4192,0x4193,0x4993,0x4993,0x4993,0x49B3,0x49B4,0x49D3,0x51D3,0x51D3,0x51D3,0x51D2,0x4970,0x61D2,0xD51D,0xCCBB,0xD499,0xCC58,0xD458,0xD478,0xD457,0xD478,0xD478,0xD457,0xD457,0xD458,0xD458,0xD457,0xD457,0xD437,0xD436,0xD437,0xD437,0xDC36,0xDC36,0xDC17,0xDC17,0xDC17,0xDC37,0xDC37,0xDC37,0xDC17,0xDC17,0xDBF6,0xD3F6,0xD3F6,0xD3F6,0xDBF6,0xDBF6,0xDBF6,0xDBF7,0xDBF6,0xDBF6,0xDBF6,0xDBF7,0xDBD6,0xDBD6,0xD3D6,0xDBD6,0xD3D6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBD6,0xDBB6,0xDBB6,0xDB96,0xDB96,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDBB7,0xDBB7,0xDBD7,0xD3F8,0xCBF9,0xCC3A,0x590E,0x490F,0x4950,0x4971,0x4171,0x4971,0x4151,0x4150,0x4930,0x490F,0x50CE,0x8212,0xD45A,0xDC3A,0xD3B8,0xD397,0xD377,0xD376,0xDB77,0xDB77,0xDB56,0xDB56,0xD336,0xD356,0xD356,0xD356,0xCB76,0xCB76,0xCB97,0xC3B7,0xB397,0xAB97,0xA3D8,0x93D7,0x8C18,0x8C99,0x7C58,0x6C58,0x74FA,0x7D7C,0x755B,0x7D9C,0x7DDD,0x7DBD,0x7DDD,0x759D,0x7D9D,0x857D,0x53F7,0x010D,0x112E,0x112F,0x192F,0x190F,0x190F,0x18EF,0x190F,0x190F,0x190F,0x190F,0x210F,0x190F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x20EF,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2910,0x210F,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x2110,0x2130,0x212F,0x212F,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2131,0x1931,0x1932,0x1133,0x19D6,0x19F8,0x11D7,0x11B6,0x1133,0x1111,0x1911,0x2110,0x2130,0x2930,0x2930,0x2130,0x210F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x210F,0x210F,0x2930,0x2930,0x2930,0x290F,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930,0x212F,0x292F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2910,0x210F,0x2110,0x2110,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2110,0x2930,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2150,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2950,0x2130,0x2150,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x292F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2950,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2151,0x2130,0x1930,0x1930,0x2131,0x2131,0x2131,0x2130,0x1930,0x1930,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x2130,0x2130,0x1931,0x1931,0x1932,0x1953,0x1153,0x1995,0x2217,0x2217,0x21F7,0x19B5,0x1153,0x1132,0x1912,0x1911,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110, + 0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x290F,0x210F,0x2110,0x2930,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x2110,0x2110,0x2110,0x1930,0x1931,0x1132,0x1152,0x0953,0x0975,0x0996,0x11D7,0x11F8,0x1A19,0x1A19,0x19D8,0x11B6,0x1155,0x1133,0x1112,0x1911,0x1931,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x212F,0x212F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x292F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x2110,0x210F,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x2930,0x2130,0x210F,0x2130,0x2130,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x2110,0x2110,0x2130,0x1910,0x1930,0x1931,0x1931,0x1931,0x1932,0x1932,0x1952,0x1952,0x2152,0x1931,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x292F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2151,0x2131,0x1932,0x1112,0x1133,0x1154,0x1175,0x19D7,0x2218,0x2218,0x1196,0x1154,0x1112,0x1932,0x1932,0x1931,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x2930,0x290F,0x290F,0x210F,0x2130,0x212F,0x210F,0x2110,0x2930,0x210F,0x290F,0x290F,0x210F,0x2930,0x290F,0x210F,0x2930,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x2930,0x210F,0x2930,0x212F,0x210F,0x2930,0x292F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x210F,0x292F,0x290F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x28EF,0x28CF,0x3090,0x3050,0x50B3,0xA2DD,0xB2FE,0xAA9D,0xAA9D,0xB2BD,0xB2DD,0xA2DC,0x280E,0x288F,0x28CF,0x28EF,0x2910,0x2930,0x2930,0x290F,0x290F,0x290F,0x292F,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2110,0x2110,0x2910,0x210F,0x2910,0x2910,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1911,0x1132,0x1153,0x19B5,0x21F6,0x2217,0x21F7,0x19B5,0x1133,0x1112,0x1131,0x1111,0x1931,0x1910,0x2150,0x2150,0x2130,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1132,0x1133,0x1154,0x21D7,0x2218,0x2218,0x21F7,0x1975,0x1113,0x10F2,0x18F1,0x1911,0x2131,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x290F,0x2930,0x210F,0x290F,0x292F,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x292F,0x292F,0x292F,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2931,0x2930,0x2931,0x2931,0x3131,0x3151,0x3131,0x3151,0x3171,0x3171,0x3171,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x4192,0x4192,0x4192,0x4192,0x4192,0x4993,0x49B3,0x49B3,0x49B3,0x49B4,0x49D3,0x49D3,0x51D3,0x51D3,0x51F3,0x4971,0x59D1,0xCCFD,0xCCDB,0xCCBA,0xCC99,0xCC99,0xCC78,0xCC78,0xCC78,0xCC78,0xCC78,0xCC58,0xCC57,0xD478,0xD478,0xCC57,0xD457,0xD457,0xD436,0xD436,0xD457,0xD436,0xDC37,0xD437,0xD416,0xD417,0xD437,0xD417,0xD417,0xDC37,0xD416,0xD3F6,0xD3F6,0xD417,0xD3F6,0xDC17,0xDC17,0xDC17,0xDC17,0xDBF6,0xDBF7,0xDBF7,0xDBF7,0xD3D6,0xDBD6,0xDBD6,0xDBD6,0xD3D6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDBB6,0xDB96,0xDBB6,0xDBB6,0xDBB6,0xDBB7,0xDBD7,0xDBD7,0xD3D8,0xD419,0xBBF9,0x592F,0x490F,0x4971,0x4971,0x4971,0x4950,0x5150,0x48CE,0x612F,0xC3F9,0xD43A,0xD3D8,0xD3B7,0xD397,0xD376,0xD376,0xD336,0xD356,0xDB56,0xDB56,0xD356,0xD356,0xCB36,0xD377,0xCB97,0xCBB7,0xC3F8,0xBBD8,0xAB97,0x9BB7,0x9C19,0x9459,0x8459,0x7458,0x6C78,0x74FA,0x7D5B,0x7D9C,0x759C,0x759C,0x7DBD,0x7DBD,0x759C,0x755C,0x751B,0x7D3C,0x74BB,0x094E,0x114F,0x112F,0x192F,0x192F,0x190F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2910,0x2910,0x2910,0x2930,0x290F,0x2930,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x212F,0x210F,0x2930,0x210F,0x212F,0x2930,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x1931,0x1931,0x1932,0x1133,0x19B6,0x19F7,0x11D7,0x19B6,0x1113,0x1912,0x2111,0x2110,0x2130,0x2930,0x2930,0x2930,0x212F,0x2930,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2930,0x290F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2130,0x2130,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x292F,0x290F,0x212F,0x292F,0x212F,0x212F,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x292F,0x292F,0x2930,0x2930,0x2110,0x2110,0x2930,0x2930,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x210F,0x292F,0x292F,0x20EF,0x2910,0x210F,0x290F,0x2110,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2150,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x2130,0x2150,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x2930,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2150,0x212F,0x192F,0x2130,0x2130,0x212F,0x2130,0x210F,0x2130,0x212F,0x212F,0x2130,0x2130,0x1910,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x2930,0x2130,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1133,0x1153,0x1995,0x21F7,0x2217,0x21F7,0x19B5,0x1174,0x1132,0x1932,0x1911,0x2131,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110, + 0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2930,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x210F,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2151,0x1931,0x1131,0x1132,0x0953,0x0975,0x11B6,0x11D7,0x1A19,0x1A19,0x1A19,0x19F8,0x1176,0x1134,0x1113,0x1112,0x1911,0x1911,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x290F,0x210F,0x290F,0x292F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2910,0x2910,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x210F,0x210F,0x2910,0x212F,0x210F,0x2110,0x2110,0x210F,0x2130,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x212F,0x210F,0x210F,0x212F,0x2930,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x2930,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x212F,0x2910,0x2930,0x210F,0x212F,0x2930,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x1931,0x1911,0x1111,0x1132,0x1132,0x1133,0x1133,0x08F2,0x08F2,0x1112,0x1111,0x1911,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x290F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1932,0x1133,0x1174,0x1196,0x19D7,0x2218,0x19F7,0x19B6,0x1154,0x1133,0x1932,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x2110,0x2930,0x290F,0x290F,0x290F,0x292F,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x210F,0x292F,0x292F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2910,0x210F,0x210F,0x2930,0x2930,0x2930,0x212F,0x292F,0x290F,0x292F,0x292F,0x212F,0x292F,0x212F,0x292F,0x2930,0x292F,0x212F,0x292F,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x28EF,0x28AF,0x3070,0x3810,0x6935,0xB31E,0xB2BD,0xB29D,0xB2BD,0xB2BD,0xA2DC,0x280E,0x286E,0x28F0,0x28F0,0x2910,0x2930,0x2930,0x2930,0x292F,0x292F,0x290F,0x292F,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2110,0x2130,0x2151,0x2131,0x1911,0x1112,0x1133,0x19B5,0x2217,0x2218,0x21F7,0x19B6,0x1154,0x0912,0x10F1,0x1951,0x2151,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x2130,0x2151,0x1931,0x1931,0x1932,0x1133,0x1154,0x21F7,0x2A38,0x2218,0x19D7,0x1995,0x1134,0x10F2,0x18F1,0x1911,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2910,0x2110,0x2910,0x2110,0x2930,0x2110,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x2910,0x290F,0x2930,0x210F,0x290F,0x2910,0x2930,0x290F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x212F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2930,0x2931,0x2931,0x2931,0x3131,0x3131,0x3151,0x3151,0x3151,0x3171,0x3151,0x3972,0x3151,0x3972,0x3972,0x4192,0x4192,0x4192,0x4192,0x4193,0x4993,0x4993,0x4993,0x49B3,0x49B3,0x51D4,0x51D3,0x51D3,0x51D3,0x51F3,0x51D2,0x51B1,0x5A12,0xC51D,0xBCDB,0xBC99,0xC4B9,0xC498,0xC498,0xC478,0xBC57,0xBC57,0xBC37,0xB437,0xC478,0xC478,0xC457,0xC457,0xCC57,0xCC56,0xCC56,0xCC57,0xCC57,0xCC57,0xD457,0xD457,0xD437,0xD437,0xD437,0xD437,0xD417,0xD417,0xD437,0xD437,0xD417,0xD417,0xD417,0xD417,0xD3F6,0xD417,0xD416,0xD3F6,0xDC17,0xD3F7,0xD3F7,0xD3F7,0xD3D6,0xD3D6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDB96,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xD396,0xD395,0xD396,0xDBB7,0xD3B7,0xD3D7,0xD3D8,0xCC19,0xC3F9,0x590F,0x5950,0x5151,0x5151,0x50EF,0x58EE,0x9294,0xDC9B,0xCBD8,0xCBB7,0xD397,0xD376,0xD376,0xDB96,0xDB76,0xDB76,0xD356,0xD356,0xD335,0xD356,0xD376,0xCB97,0xCB97,0xC3D7,0xB3B7,0xABB7,0x9BD7,0x9418,0x949A,0x7C79,0x7479,0x6C99,0x751A,0x7D9C,0x759C,0x757C,0x757C,0x7D9D,0x755C,0x6CFB,0x74FB,0x7D3B,0x7CDB,0x8D1C,0x8CFC,0x4AD4,0x2190,0x214F,0x2150,0x212F,0x212F,0x214F,0x214F,0x212F,0x2150,0x2950,0x2970,0x2950,0x212F,0x210F,0x212F,0x210F,0x292F,0x210F,0x292F,0x210F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2930,0x2930,0x290F,0x210F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2930,0x290F,0x212F,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1133,0x19D6,0x19F7,0x11D7,0x11B6,0x1133,0x1111,0x1911,0x2110,0x2110,0x2930,0x2110,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x2110,0x2110,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x290F,0x2930,0x2930,0x212F,0x210F,0x210F,0x2930,0x212F,0x210F,0x2930,0x2130,0x210F,0x2110,0x2110,0x210F,0x290F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x292F,0x2930,0x2910,0x2910,0x2930,0x2130,0x2130,0x2130,0x2130,0x2150,0x2150,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2110,0x2130,0x2930,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2150,0x2130,0x2130,0x1930,0x2150,0x2130,0x2130,0x2130,0x212F,0x2130,0x2150,0x212F,0x2150,0x2130,0x2130,0x1910,0x2131,0x2131,0x2150,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2111,0x2131,0x2131,0x2130,0x2131,0x2130,0x2110,0x2110,0x2110,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x210F,0x210F,0x2110,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x1912,0x1132,0x1154,0x1995,0x21F7,0x2217,0x19D6,0x19B5,0x1153,0x1132,0x1911,0x1931,0x1911,0x1910,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x20EF,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x2110,0x210F,0x2130,0x210F, + 0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x2110,0x212F,0x212F,0x212F,0x2930,0x290F,0x290F,0x2930,0x2130,0x212F,0x2130,0x2930,0x2130,0x212F,0x212F,0x292F,0x292F,0x210F,0x2130,0x2130,0x1930,0x1931,0x1132,0x1132,0x1154,0x0975,0x11B6,0x11D7,0x19F9,0x1A19,0x19F9,0x19F8,0x1196,0x1154,0x1133,0x1112,0x1911,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2130,0x2110,0x2930,0x2110,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2910,0x210F,0x210F,0x292F,0x292F,0x290F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x292F,0x290F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2130,0x2130,0x2110,0x2110,0x2130,0x210F,0x2110,0x2930,0x210F,0x212F,0x2110,0x2110,0x210F,0x2130,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2930,0x210F,0x2910,0x290F,0x210F,0x2930,0x212F,0x212F,0x292F,0x290F,0x292F,0x290F,0x2930,0x212F,0x210F,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x290F,0x292F,0x292F,0x210F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1951,0x1931,0x1953,0x1974,0x1995,0x19D6,0x21F7,0x19D6,0x19D6,0x19B5,0x1174,0x1133,0x1112,0x1111,0x1911,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x290F,0x210F,0x290F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2131,0x1931,0x1132,0x1133,0x1154,0x1196,0x19F7,0x2218,0x2218,0x19B6,0x1154,0x1133,0x1952,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2110,0x2910,0x290F,0x2930,0x210F,0x290F,0x290F,0x2930,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x210F,0x2910,0x2910,0x290F,0x290F,0x2930,0x210F,0x2910,0x2930,0x210F,0x212F,0x210F,0x2930,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x210F,0x2930,0x290F,0x290F,0x292F,0x292F,0x292F,0x2930,0x292F,0x212F,0x2930,0x212F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x28EF,0x30D0,0x3090,0x3830,0x5072,0xB2FD,0xB2BD,0xB29D,0xBABD,0xB2BD,0xA2BC,0x300E,0x286E,0x28F0,0x28EF,0x2910,0x2930,0x2930,0x290F,0x2930,0x292F,0x292F,0x2930,0x2930,0x210F,0x290F,0x2930,0x210F,0x290F,0x292F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x2910,0x2910,0x2930,0x2930,0x2930,0x290F,0x2930,0x2130,0x2130,0x212F,0x292F,0x292F,0x210F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2110,0x2130,0x2130,0x2151,0x1911,0x10F1,0x1133,0x1174,0x2217,0x2217,0x2217,0x19B6,0x1974,0x0912,0x1111,0x1931,0x2151,0x2150,0x2150,0x2150,0x2130,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1154,0x19B6,0x2238,0x2218,0x19D7,0x1175,0x1133,0x10F2,0x18F1,0x1911,0x2131,0x2131,0x2130,0x2110,0x2930,0x2110,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x292F,0x290F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2950,0x2950,0x2930,0x2951,0x3151,0x3131,0x3131,0x3151,0x3151,0x3151,0x3151,0x3171,0x3972,0x3951,0x3951,0x3972,0x3972,0x4172,0x4172,0x4192,0x4193,0x4993,0x4993,0x49B3,0x49B3,0x49B3,0x49B3,0x51B3,0x51D3,0x51D3,0x51D3,0x51F3,0x51F2,0x49D1,0x5A32,0xB4FC,0xB4BA,0xB479,0xB458,0xB478,0xB457,0xBC78,0xBC78,0xBC78,0xBC98,0xBC98,0xBC98,0xC4B8,0xC498,0xC477,0xC477,0xCC97,0xC477,0xC477,0xCC77,0xC457,0xCC57,0xCC57,0xCC37,0xCC37,0xCC57,0xCC37,0xCC37,0xCC37,0xCC57,0xCC37,0xCC57,0xCC37,0xCC37,0xCC37,0xCC37,0xC417,0xCC37,0xCBF6,0xCBF7,0xCC17,0xD417,0xD3F7,0xD3F7,0xD3F7,0xD3F7,0xD3F6,0xD3D6,0xD3D6,0xDBD6,0xDBB6,0xDB96,0xDBB6,0xDBB6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDBB6,0xDBB6,0xDBB7,0xDBD7,0xDBD7,0xD3D7,0xD3D8,0xDC7B,0x9AB5,0x6130,0x6171,0x592F,0x58CD,0xBBB8,0xD419,0xCBD7,0xCB97,0xD396,0xD376,0xD355,0xD355,0xD376,0xD356,0xDB97,0xD356,0xD356,0xCB56,0xCB97,0xCBB7,0xCBF8,0xBBB7,0xA396,0x9BB7,0x9418,0x8C79,0x8479,0x6C58,0x6478,0x753B,0x7D9D,0x75BC,0x759C,0x759C,0x755C,0x753B,0x751B,0x74FB,0x74BA,0x7CBA,0x84DB,0x847A,0x8C7A,0x5293,0x210E,0x292F,0x212F,0x2130,0x2130,0x214F,0x214F,0x2950,0x2150,0x2950,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2910,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x2930,0x292F,0x290F,0x2930,0x212F,0x212F,0x292F,0x2930,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x19D6,0x19F7,0x11D7,0x19B6,0x1133,0x1912,0x2111,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x212F,0x212F,0x2110,0x2930,0x2130,0x210F,0x2930,0x290F,0x210F,0x2130,0x210F,0x2930,0x212F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2910,0x210F,0x290F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x2910,0x2110,0x2110,0x2130,0x2131,0x2131,0x2110,0x2130,0x1930,0x2150,0x2150,0x2150,0x2130,0x1930,0x2130,0x1930,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x2910,0x2910,0x290F,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2150,0x212F,0x2130,0x2130,0x2130,0x2151,0x1930,0x1950,0x1950,0x1950,0x2150,0x2150,0x2150,0x2130,0x2150,0x2150,0x192F,0x2150,0x1930,0x2130,0x2131,0x2131,0x2131,0x2130,0x2130,0x2131,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x2130,0x1931,0x2131,0x2131,0x1930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x1910,0x2131,0x1931,0x1932,0x1132,0x1133,0x1995,0x21D7,0x21F7,0x21F7,0x19B5,0x1154,0x1132,0x1131,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x210F,0x210F,0x212F,0x2930,0x2930,0x2930,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x2930,0x2930, + 0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2910,0x2910,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1952,0x1132,0x1154,0x1175,0x11B7,0x11D8,0x19F9,0x1A19,0x1A19,0x19F8,0x11B6,0x0954,0x1113,0x1132,0x1931,0x1931,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2930,0x2130,0x212F,0x210F,0x2130,0x2110,0x290F,0x2930,0x2930,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2930,0x210F,0x2130,0x2930,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x212F,0x212F,0x2110,0x2130,0x2130,0x2130,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x290F,0x2910,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2930,0x212F,0x210F,0x290F,0x290F,0x292F,0x292F,0x2950,0x2930,0x2130,0x2130,0x2151,0x1951,0x1952,0x1173,0x1994,0x1195,0x11B6,0x11D7,0x11D7,0x11F8,0x1218,0x11F8,0x1A18,0x19F7,0x19D6,0x1994,0x1953,0x1952,0x2131,0x2151,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x2130,0x2130,0x2930,0x2130,0x212F,0x210F,0x2910,0x2930,0x290F,0x2910,0x210F,0x290F,0x290F,0x292F,0x290F,0x210F,0x292F,0x210F,0x2110,0x2130,0x2131,0x2131,0x1952,0x1932,0x1153,0x1174,0x11B6,0x19F7,0x2218,0x2218,0x19D6,0x1154,0x1133,0x1932,0x1931,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x2130,0x212F,0x210F,0x2130,0x2930,0x212F,0x212F,0x2930,0x212F,0x292F,0x292F,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x290F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x210F,0x212F,0x2130,0x2930,0x212F,0x212F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x28EF,0x28D0,0x3090,0x3850,0x58F4,0xB2FD,0xB2BD,0xB29D,0xBA9D,0xB2BD,0xAAFC,0x300E,0x286E,0x30D0,0x28EF,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2930,0x2910,0x2930,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x2910,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930,0x2910,0x2930,0x2130,0x2130,0x2130,0x2930,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2130,0x2131,0x1911,0x1112,0x1133,0x1154,0x21D6,0x2217,0x19F7,0x19D6,0x1154,0x1132,0x1111,0x1931,0x1931,0x2150,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x2130,0x2110,0x2130,0x1911,0x1932,0x1153,0x1995,0x2238,0x2218,0x19F7,0x1195,0x1153,0x08F2,0x1111,0x2131,0x2131,0x2951,0x2130,0x2930,0x2110,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2110,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x3151,0x2951,0x3151,0x3152,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3951,0x3952,0x3952,0x3972,0x4172,0x4172,0x4192,0x4993,0x4993,0x4993,0x49B3,0x49B3,0x51D3,0x49B3,0x51B4,0x51D3,0x51D3,0x51F3,0x51F3,0x51F2,0x51F2,0x6AF5,0xCDBF,0xBD1C,0xBCFA,0xB499,0xBCD9,0xBCD9,0xBCD9,0xC4FA,0xC4F9,0xBCD9,0xBCB8,0xBC98,0xBCB8,0xC4B8,0xC498,0xC498,0xC498,0xBC97,0xBC97,0xC498,0xBC97,0xBC77,0xBC77,0xBC57,0xC477,0xC477,0xC457,0xC457,0xC457,0xBC37,0xBC57,0xBC57,0xBC37,0xBC37,0xBC57,0xBC37,0xBC37,0xBC37,0xC437,0xC437,0xC417,0xC417,0xCC17,0xCBF7,0xD3F7,0xD3D6,0xD3D6,0xD3D6,0xD3B6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDBB6,0xDBB6,0xD396,0xDB96,0xDBB7,0xD3B7,0xD3B7,0xD3D8,0xCBF9,0x60CD,0x482B,0x60CD,0xCBD9,0xD3F8,0xCB97,0xCB96,0xD3B7,0xD396,0xD376,0xDB76,0xD356,0xD356,0xD356,0xCB56,0xD376,0xCB97,0xCB97,0xC397,0xBBB7,0xABD7,0x9BD7,0x9438,0x949A,0x8479,0x6C78,0x6478,0x6D1A,0x7DBD,0x75BD,0x6D7C,0x75BD,0x7DBD,0x753B,0x74DA,0x7CDA,0x7CBA,0x7C79,0x8459,0x73B7,0x83D8,0x947A,0x6B15,0x186C,0x290E,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2950,0x2950,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x212F,0x292F,0x2930,0x210F,0x210F,0x292F,0x290F,0x290F,0x2930,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2910,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x1931,0x1112,0x1133,0x19D7,0x19F7,0x11D7,0x11B6,0x1113,0x1912,0x2111,0x2111,0x2130,0x2930,0x2930,0x2930,0x2110,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x290F,0x290F,0x2110,0x210F,0x2930,0x210F,0x212F,0x212F,0x2930,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x2910,0x2930,0x212F,0x212F,0x2930,0x2930,0x2930,0x212F,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2111,0x2111,0x2111,0x2131,0x1911,0x1931,0x1931,0x2151,0x2151,0x1950,0x1930,0x1950,0x1951,0x1930,0x1910,0x1911,0x1931,0x1931,0x2151,0x1931,0x2131,0x2130,0x2131,0x2131,0x2131,0x1911,0x1931,0x1910,0x1931,0x1930,0x2130,0x2130,0x2130,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x212F,0x2130,0x2131,0x2111,0x2111,0x2131,0x2131,0x2131,0x2131,0x2150,0x2130,0x2130,0x2130,0x2151,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1951,0x2151,0x1950,0x2150,0x2150,0x1950,0x1950,0x1951,0x1931,0x1931,0x1931,0x1931,0x1931,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x1911,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x1910,0x2151,0x2151,0x2151,0x2131,0x1931,0x1931,0x2131,0x2131,0x1931,0x1951,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2150,0x2150,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2131,0x1931,0x1931,0x1932,0x1132,0x1153,0x1995,0x19D6,0x21F7,0x21F7,0x1995,0x1153,0x1112,0x1111,0x1931,0x1931,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F, + 0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x212F,0x2930,0x2110,0x2110,0x2910,0x2110,0x2910,0x20F0,0x2110,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2930,0x210F,0x212F,0x212F,0x292F,0x210F,0x290F,0x210F,0x210F,0x2110,0x210F,0x2130,0x2930,0x2930,0x2930,0x212F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2131,0x1931,0x1932,0x1133,0x1154,0x1175,0x1176,0x11D8,0x19F9,0x1A19,0x1A19,0x19F8,0x1196,0x1155,0x1133,0x1132,0x1931,0x1911,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2930,0x212F,0x2130,0x212F,0x2130,0x2130,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x212F,0x2130,0x210F,0x212F,0x212F,0x292F,0x292F,0x212F,0x2130,0x210F,0x2930,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x210F,0x212F,0x2130,0x2110,0x2110,0x210F,0x2110,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x2110,0x210F,0x210F,0x2930,0x2930,0x290F,0x2910,0x2910,0x290F,0x290F,0x292F,0x210F,0x212F,0x212F,0x210F,0x292F,0x210F,0x212F,0x2930,0x2930,0x212F,0x212F,0x2130,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2130,0x2130,0x2130,0x1931,0x1932,0x1153,0x1174,0x1195,0x1196,0x11B7,0x11D8,0x09F9,0x09D9,0x09F9,0x09D8,0x09F9,0x09D8,0x11D7,0x19B6,0x1994,0x1952,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x2910,0x2910,0x290F,0x2910,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x2110,0x2130,0x2110,0x2131,0x1931,0x1932,0x1932,0x1153,0x1174,0x1195,0x19D7,0x2217,0x2238,0x19B6,0x1154,0x1153,0x1932,0x1931,0x1931,0x2111,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2930,0x210F,0x2930,0x2930,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2950,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x28EF,0x28D0,0x3090,0x3850,0x50B3,0xB2FD,0xB2BD,0xBA9D,0xBABD,0xBABD,0xB31D,0x300E,0x284E,0x30CF,0x28F0,0x290F,0x2930,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x290F,0x210F,0x210F,0x290F,0x2910,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x210F,0x290F,0x290F,0x210F,0x2930,0x2930,0x2930,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x2110,0x2930,0x2131,0x2111,0x10F1,0x1112,0x1174,0x19D6,0x2217,0x21F7,0x19D6,0x1154,0x1133,0x1112,0x1911,0x2151,0x2150,0x2130,0x210F,0x212F,0x2930,0x210F,0x210F,0x2910,0x2930,0x2130,0x2130,0x2111,0x1911,0x1153,0x1174,0x19F7,0x2238,0x1A17,0x11B5,0x0933,0x1112,0x1111,0x1911,0x2131,0x2130,0x2130,0x2130,0x2110,0x210F,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x3151,0x3151,0x3171,0x3151,0x3151,0x3151,0x3171,0x3151,0x3951,0x3952,0x3952,0x4172,0x3972,0x4172,0x4192,0x4172,0x4192,0x4993,0x4993,0x49B3,0x49B3,0x51B3,0x51B3,0x51D4,0x51D4,0x51D3,0x51F4,0x51F3,0x51F3,0x51F2,0x51F2,0x7315,0xCDBE,0xBD3C,0xBD1B,0xBD1A,0xBCFA,0xBCF9,0xC4FA,0xC4FA,0xC4FA,0xC51A,0xC4F9,0xC4F9,0xCCFA,0xC4F9,0xC4D9,0xCCD9,0xC4D9,0xC4F9,0xC4F9,0xC519,0xC4F9,0xC519,0xC519,0xC4F9,0xC4F9,0xC4D9,0xC4D9,0xC4D9,0xBCB9,0xBCB8,0xB498,0xB498,0xB498,0xA457,0xA457,0xA457,0xA457,0xA436,0xB478,0xB458,0xBC78,0xBC78,0xC458,0xC438,0xCC17,0xCBF7,0xCBD6,0xD3D6,0xD3D6,0xD3B6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBD6,0xD3B6,0xDBB6,0xDBB6,0xD396,0xD396,0xDBB6,0xD396,0xD396,0xDB96,0xDB96,0xDBB7,0xDBB7,0xDBD8,0xD3B8,0x91F1,0x790E,0xCBB8,0xD3B7,0xD397,0xCB76,0xD397,0xD376,0xD396,0xD376,0xD356,0xD376,0xD376,0xD376,0xCB97,0xCBB7,0xC3B7,0xBBF8,0xABB7,0x9BB7,0x9C59,0x9479,0x84BA,0x6C58,0x5C57,0x6CFA,0x759C,0x7DDD,0x75DD,0x759C,0x755B,0x753B,0x6CB9,0x7CDA,0x84DA,0x8499,0x8459,0x83F7,0x83D8,0x8BB8,0x9C3A,0x6AD5,0x30EE,0x310E,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x292F,0x2950,0x2930,0x212F,0x212F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x210F,0x210F,0x290F,0x2930,0x292F,0x2930,0x2930,0x292F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2110,0x210F,0x2910,0x290F,0x290F,0x2930,0x2930,0x290F,0x2930,0x2110,0x2930,0x2930,0x210F,0x2930,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x292F,0x290F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x1931,0x1932,0x1113,0x19D6,0x19F8,0x11D7,0x19B6,0x1113,0x1912,0x2131,0x2111,0x2130,0x2130,0x2930,0x2110,0x2110,0x2930,0x2930,0x290F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x290F,0x290F,0x212F,0x2930,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x2930,0x210F,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x292F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x292F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2131,0x2111,0x2132,0x1912,0x1932,0x1912,0x1932,0x1952,0x1931,0x1951,0x1931,0x1951,0x1951,0x1951,0x1952,0x1932,0x1932,0x1932,0x1932,0x1952,0x2152,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1132,0x1131,0x1931,0x1931,0x1951,0x1931,0x2130,0x2130,0x2110,0x2910,0x2910,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x292F,0x212F,0x2110,0x2131,0x1931,0x2152,0x1932,0x1952,0x1932,0x1932,0x1932,0x1951,0x2151,0x1931,0x1931,0x1931,0x1931,0x1952,0x1132,0x1152,0x1132,0x1932,0x1952,0x1951,0x1951,0x1951,0x1951,0x1951,0x1951,0x1951,0x1152,0x1952,0x1952,0x1932,0x1952,0x1931,0x2131,0x2131,0x1931,0x1931,0x1952,0x1952,0x1932,0x1932,0x1932,0x1932,0x1932,0x2152,0x1952,0x1931,0x1931,0x1952,0x1952,0x2152,0x1932,0x1952,0x1952,0x1932,0x1952,0x1931,0x1951,0x1952,0x1931,0x1952,0x1952,0x1952,0x1952,0x1952,0x1932,0x1932,0x1931,0x1931,0x2131,0x2130,0x1930,0x2130,0x2150,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1931,0x1931,0x1932,0x1132,0x1153,0x1995,0x21F6,0x21F7,0x21F7,0x1995,0x1153,0x1132,0x1111,0x1911,0x1910,0x1930,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x210F,0x290F,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x292F, + 0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x2910,0x2910,0x2110,0x2910,0x2110,0x2910,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x210F,0x2110,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x2930,0x2130,0x2130,0x1931,0x1111,0x1133,0x1134,0x1175,0x1196,0x11D7,0x19F9,0x1A19,0x1A19,0x11D8,0x11B7,0x1155,0x1174,0x1932,0x1932,0x2131,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2930,0x2930,0x212F,0x212F,0x2930,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x212F,0x2930,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2910,0x2910,0x290F,0x290F,0x292F,0x292F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x2930,0x2930,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x2930,0x2130,0x2110,0x1931,0x1931,0x1132,0x1174,0x1175,0x1196,0x11B7,0x09D9,0x09F9,0x09FA,0x01D9,0x01D9,0x01D9,0x09D9,0x09D9,0x09D8,0x11B6,0x1175,0x1133,0x1932,0x1911,0x1910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2930,0x290F,0x210F,0x2910,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x292F,0x210F,0x2110,0x2110,0x2130,0x2130,0x1931,0x1931,0x1132,0x1153,0x1154,0x1175,0x19D6,0x2217,0x2217,0x19B5,0x1154,0x1153,0x1932,0x1932,0x2131,0x2111,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x2930,0x2110,0x2110,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x2110,0x2110,0x2910,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2930,0x2130,0x210F,0x2930,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x292F,0x290F,0x2930,0x3110,0x28B0,0x3070,0x3850,0x5072,0xB31E,0xB2BD,0xBA9D,0xBA9E,0xB29D,0xB31D,0x300E,0x282D,0x30CF,0x28EF,0x28EF,0x290F,0x210F,0x290F,0x292F,0x292F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2910,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2930,0x210F,0x2930,0x290F,0x2930,0x210F,0x290F,0x290F,0x2910,0x210F,0x2910,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x292F,0x212F,0x292F,0x290F,0x290F,0x2110,0x2130,0x2131,0x18F1,0x08D1,0x1133,0x19D6,0x2238,0x2217,0x19B6,0x0934,0x1113,0x1112,0x1911,0x2151,0x2131,0x2130,0x2110,0x20EF,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2131,0x18F0,0x1112,0x1154,0x19D6,0x2238,0x1A17,0x11B5,0x0933,0x1132,0x1932,0x1931,0x2131,0x2131,0x2130,0x2110,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2910,0x290F,0x210F,0x2930,0x210F,0x290F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3151,0x3171,0x3171,0x3171,0x3171,0x3151,0x3151,0x3951,0x3971,0x3972,0x3972,0x4172,0x4172,0x4192,0x4172,0x4192,0x4993,0x4993,0x49B3,0x49B3,0x51B4,0x51B3,0x51D4,0x51D4,0x51D4,0x51D4,0x51D3,0x51D3,0x59F3,0x59F3,0x49B1,0x72F5,0xBD1C,0xBD3C,0xBD3B,0xC51B,0xC51A,0xBCFA,0xC4FA,0xC4FA,0xC51A,0xC51A,0xC51A,0xC4FA,0xC4D9,0xCCFA,0xCCFA,0xCCFA,0xC4D9,0xC4FA,0xC51A,0xC51A,0xBD1A,0xBD19,0xBD19,0xBD1A,0xB519,0xBD3A,0xB53A,0xB53A,0xB53A,0xB53A,0xAD3A,0xAD39,0xAD39,0xAD5A,0xA539,0xA539,0x9CF8,0x9CB8,0x9477,0x9C57,0x9C37,0xA437,0xAC17,0xBC58,0xBC17,0xC417,0xCC17,0xD3F7,0xD3D6,0xD3D6,0xD3B6,0xDBB6,0xDBB6,0xD3B6,0xD3B6,0xD395,0xD3B6,0xD3B6,0xD3B6,0xDBB6,0xDBB6,0xDB96,0xDB96,0xD376,0xDB76,0xD376,0xD376,0xDB97,0xDBB7,0xDBB7,0xD397,0xDBD8,0xDBB7,0xD396,0xD396,0xD396,0xD376,0xD356,0xD376,0xD376,0xD376,0xCB76,0xCB76,0xCB97,0xC397,0xBBB7,0xB3D8,0x9BB7,0x93F8,0x8C79,0x7438,0x6417,0x5C37,0x6CFA,0x7DBC,0x7DBC,0x75BC,0x759C,0x7D7C,0x74FA,0x6C99,0x7CB9,0x8CB9,0x8418,0x83D6,0x7B75,0x8396,0x8BB7,0x9C39,0x93B8,0x5A32,0x28CD,0x310F,0x310F,0x312F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x210F,0x212F,0x292F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x212F,0x212F,0x210F,0x290F,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1133,0x19D7,0x11F8,0x11D7,0x19D6,0x1133,0x1912,0x2132,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2930,0x2930,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2930,0x210F,0x2130,0x212F,0x2930,0x290F,0x210F,0x210F,0x2930,0x2110,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2910,0x2910,0x290F,0x210F,0x212F,0x212F,0x2110,0x2110,0x2130,0x210F,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x290F,0x2910,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2131,0x1932,0x1933,0x1133,0x1133,0x1133,0x1153,0x1133,0x1953,0x1952,0x1132,0x1131,0x1173,0x1173,0x1153,0x1153,0x1133,0x1133,0x1133,0x1953,0x1973,0x1933,0x1932,0x1132,0x1933,0x1133,0x1133,0x1133,0x1153,0x1133,0x1153,0x1952,0x1972,0x2131,0x2131,0x2110,0x2110,0x2910,0x210F,0x210F,0x2930,0x2930,0x2930,0x2130,0x290F,0x210F,0x210F,0x210F,0x2130,0x2130,0x1952,0x1953,0x1953,0x1974,0x1154,0x1954,0x1953,0x1953,0x1952,0x1952,0x1932,0x1132,0x1132,0x1153,0x1174,0x1174,0x1154,0x1153,0x1153,0x1153,0x1973,0x1972,0x1931,0x1952,0x1152,0x1153,0x1173,0x1174,0x1174,0x1173,0x1153,0x1132,0x1952,0x1952,0x1952,0x1931,0x1952,0x1973,0x1973,0x1153,0x1133,0x1133,0x1133,0x1133,0x1953,0x1952,0x1932,0x1132,0x1132,0x1153,0x1153,0x1153,0x1153,0x1153,0x1953,0x1953,0x1152,0x1152,0x1132,0x1152,0x1153,0x1153,0x1973,0x1973,0x1953,0x1953,0x1932,0x1932,0x1952,0x1951,0x1931,0x1930,0x1930,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2110,0x2130,0x2110,0x2131,0x2131,0x2131,0x2131,0x2152,0x1952,0x1932,0x1952,0x1132,0x1132,0x1153,0x1194,0x21F6,0x21F7,0x21F7,0x1995,0x1153,0x1132,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2930,0x292F,0x2930,0x2930,0x212F,0x2930,0x2930,0x212F,0x212F,0x290F,0x210F,0x292F,0x212F,0x2930,0x210F,0x290F,0x210F,0x290F,0x210F,0x2110,0x210F,0x212F,0x210F,0x210F,0x210F, + 0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2930,0x2910,0x2910,0x2110,0x2910,0x210F,0x290F,0x2930,0x210F,0x292F,0x2130,0x2130,0x2131,0x1931,0x1112,0x1133,0x1154,0x1175,0x1196,0x11B7,0x19F8,0x1A19,0x1A19,0x11D8,0x11B6,0x1175,0x1174,0x1132,0x1911,0x2111,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2930,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x2910,0x210F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x2910,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2930,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x290F,0x2910,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x290F,0x210F,0x290F,0x290F,0x292F,0x210F,0x2130,0x2110,0x2130,0x1911,0x1932,0x1133,0x1154,0x1195,0x09B7,0x09D8,0x09F9,0x01FA,0x01DA,0x01BA,0x01DA,0x01DA,0x01FA,0x01D9,0x09F9,0x11D8,0x1196,0x1154,0x1932,0x1931,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x290F,0x290F,0x2930,0x210F,0x2110,0x2130,0x2130,0x1931,0x1931,0x1932,0x1153,0x1154,0x1175,0x19D6,0x2218,0x2218,0x19B6,0x1154,0x1133,0x1912,0x2132,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x2130,0x212F,0x2130,0x212F,0x212F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2930,0x2110,0x2930,0x2910,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x292F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x212F,0x212F,0x2130,0x212F,0x212F,0x292F,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x212F,0x210F,0x2930,0x2910,0x30F0,0x30B0,0x3070,0x3830,0x4811,0xBAFE,0xBABE,0xBA9D,0xC29E,0xC2BE,0xBB1D,0x380E,0x280D,0x30AF,0x30CF,0x28EF,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x212F,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x210F,0x210F,0x2930,0x2930,0x290F,0x210F,0x210F,0x2930,0x2910,0x2910,0x210F,0x210F,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x292F,0x292F,0x290F,0x2110,0x2110,0x2131,0x18F1,0x08D1,0x1175,0x21F7,0x2218,0x2217,0x1174,0x08F2,0x10F2,0x1111,0x1931,0x2151,0x2130,0x210F,0x210F,0x210F,0x2110,0x2910,0x2910,0x2910,0x2930,0x2930,0x2110,0x2131,0x1911,0x1112,0x1174,0x19F7,0x1A38,0x1A17,0x0953,0x0912,0x1132,0x1931,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2110,0x2910,0x2930,0x290F,0x290F,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x2930,0x2930,0x3151,0x3150,0x2930,0x2930,0x3150,0x3150,0x3151,0x3171,0x3171,0x3171,0x3971,0x3971,0x3951,0x3971,0x3972,0x4172,0x4172,0x4192,0x4192,0x4192,0x4993,0x4993,0x49B3,0x51B3,0x49B3,0x51B3,0x51B3,0x51D4,0x51B3,0x59D4,0x59D3,0x59D3,0x59D3,0x59F2,0x51B1,0x51B0,0xB4DC,0xC55D,0xBD1B,0xC4FA,0xC4FA,0xC4DA,0xBCB9,0xC4B9,0xC4B9,0xC4B9,0xC4B9,0xC498,0xC499,0xC499,0xC499,0xC499,0xC4B9,0xC499,0xC4D9,0xC4DA,0xBCFA,0xBCF9,0xBD1A,0xB53A,0xB51A,0xB53A,0xB53A,0xB53A,0xB55A,0xB55A,0xAD7B,0xAD7B,0xAD9B,0xAD9B,0xA59B,0xA59B,0xA59B,0xA59B,0xA59B,0xA57B,0xA55A,0xA51A,0xACD9,0xA478,0xA3F6,0xABD6,0xB3F6,0xC417,0xC3F7,0xCBF7,0xD3D7,0xD3D6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xDBB6,0xDBB6,0xD396,0xD396,0xDB96,0xDB76,0xDB76,0xDB96,0xDB76,0xDB97,0xDB96,0xDB76,0xDB96,0xDB96,0xD376,0xD376,0xD376,0xCB55,0xD376,0xD376,0xCB56,0xCB76,0xCB97,0xC3B7,0xBB97,0xB3B7,0xA3D7,0x93F7,0x8C38,0x7C59,0x6C38,0x6478,0x6CFA,0x6D3B,0x7DDD,0x7DDD,0x7D9C,0x7D5B,0x751A,0x74B9,0x7438,0x7C38,0x9499,0x9417,0x8B96,0x8B55,0x9396,0x9396,0xA419,0xA43A,0x5A12,0x30CD,0x30EE,0x312F,0x312F,0x312F,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x290F,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2111,0x1931,0x1952,0x1132,0x1154,0x19D7,0x11F8,0x11D7,0x19D7,0x1153,0x1932,0x2132,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x210F,0x210F,0x2930,0x2130,0x212F,0x290F,0x290F,0x212F,0x212F,0x2130,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x2930,0x2910,0x2110,0x2910,0x290F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x2130,0x210F,0x2930,0x2110,0x2110,0x2930,0x212F,0x2930,0x212F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2131,0x1932,0x1933,0x1974,0x1995,0x19B6,0x21D7,0x21D6,0x19B5,0x1974,0x1153,0x0932,0x0932,0x1173,0x1194,0x19F6,0x19D6,0x19B6,0x19B6,0x1995,0x1995,0x1154,0x1133,0x1133,0x1133,0x1954,0x1996,0x19D6,0x19D7,0x19D7,0x11B6,0x1195,0x1174,0x1953,0x1932,0x2151,0x2131,0x2930,0x2110,0x210F,0x210F,0x2110,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x1931,0x1953,0x1974,0x19B5,0x19B6,0x19B6,0x19B6,0x1995,0x1195,0x1974,0x1153,0x1153,0x1153,0x1154,0x1195,0x19D6,0x19D7,0x19D6,0x19D6,0x1195,0x1995,0x1974,0x1153,0x1952,0x1153,0x1173,0x1194,0x19D6,0x19D6,0x19F7,0x19D6,0x19B5,0x1974,0x1153,0x1952,0x1932,0x1132,0x1952,0x1973,0x19B5,0x19B5,0x19B6,0x19B6,0x19B5,0x1995,0x1994,0x1173,0x1953,0x1133,0x1154,0x1995,0x19B5,0x19B6,0x19B6,0x19B6,0x1995,0x1974,0x1174,0x1153,0x1153,0x1153,0x1153,0x1194,0x19B5,0x1995,0x21B6,0x1995,0x1995,0x1974,0x1953,0x1952,0x1951,0x1931,0x1930,0x2151,0x2130,0x2130,0x2130,0x1931,0x2131,0x1931,0x1931,0x2132,0x1932,0x1932,0x1932,0x1932,0x1952,0x1953,0x1153,0x1132,0x1133,0x1153,0x1174,0x21F6,0x21F7,0x21F7,0x19B5,0x1154,0x1132,0x1932,0x1931,0x1930,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x2130,0x2110,0x210F,0x210F,0x212F,0x290F,0x210F,0x212F,0x212F,0x2930,0x212F,0x292F,0x292F,0x290F,0x2930,0x212F,0x212F,0x2930,0x2930,0x2930,0x210F,0x210F,0x212F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F, + 0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x2910,0x2910,0x2930,0x290F,0x292F,0x292F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x290F,0x2930,0x290F,0x210F,0x210F,0x2110,0x2110,0x2151,0x1931,0x1112,0x1113,0x1134,0x1175,0x11B6,0x19D7,0x11D8,0x1A19,0x19F8,0x19F8,0x0996,0x1175,0x1153,0x1132,0x1911,0x1931,0x2130,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x290F,0x2930,0x2930,0x210F,0x210F,0x2130,0x210F,0x2130,0x2930,0x2930,0x2910,0x2910,0x290F,0x290F,0x292F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x292F,0x2110,0x2110,0x2930,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2130,0x2130,0x1931,0x1932,0x1153,0x1175,0x11B7,0x11D8,0x09F9,0x09FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x09FA,0x11F9,0x11B7,0x1154,0x1933,0x2132,0x2131,0x2110,0x2110,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x212F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2151,0x1931,0x1931,0x1932,0x1153,0x1154,0x1175,0x19B6,0x2258,0x2238,0x19B6,0x1174,0x1112,0x1912,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x212F,0x2930,0x212F,0x210F,0x212F,0x212F,0x210F,0x2930,0x212F,0x2110,0x210F,0x2910,0x290F,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x212F,0x210F,0x292F,0x292F,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x2930,0x2930,0x2110,0x2930,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x212F,0x2930,0x2930,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x212F,0x212F,0x292F,0x292F,0x212F,0x290F,0x2910,0x28CF,0x28D0,0x30B0,0x3871,0x4031,0x5032,0xC2FE,0xC27D,0xC27E,0xC27D,0xCA9E,0xBABC,0x380E,0x280D,0x388F,0x30AF,0x30CF,0x28CF,0x28EF,0x28EF,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2910,0x210F,0x2930,0x290F,0x210F,0x210F,0x2910,0x2910,0x210F,0x2910,0x2110,0x2910,0x290F,0x290F,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x292F,0x292F,0x290F,0x2110,0x2110,0x1911,0x1912,0x1953,0x19B6,0x21F7,0x2238,0x19B6,0x0913,0x08F2,0x10F1,0x1911,0x2151,0x2951,0x2110,0x210F,0x210F,0x2930,0x2930,0x2930,0x20EF,0x290F,0x2910,0x2910,0x2110,0x2110,0x1911,0x1153,0x1195,0x1A38,0x1A38,0x11B6,0x0112,0x0911,0x1952,0x2151,0x2131,0x2130,0x2110,0x2930,0x2110,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x2930,0x2950,0x2930,0x2930,0x2930,0x2110,0x2930,0x2910,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x290F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x3130,0x2930,0x3130,0x3130,0x3130,0x3130,0x3150,0x3151,0x3130,0x3150,0x3150,0x3150,0x3151,0x3151,0x3151,0x3171,0x3171,0x3971,0x3971,0x3951,0x3971,0x3972,0x4172,0x4192,0x4172,0x4193,0x4193,0x4993,0x4993,0x4993,0x49B3,0x51B3,0x51B3,0x51D4,0x51D4,0x51D4,0x59D3,0x59B3,0x59D3,0x59B2,0x492F,0x61D1,0xBCBB,0xD55D,0xD55C,0xABF7,0xA3D6,0xBC38,0xBC58,0xC478,0xC458,0xBC17,0xC437,0xBC17,0xBC17,0xC437,0xC417,0xC417,0xC417,0xC417,0xBBF7,0xBC17,0xB437,0xB458,0xAC58,0xA437,0xA458,0xA478,0xA498,0xA4B8,0xA4D9,0xA4D9,0xA4D9,0xAD1A,0xA53A,0xA51A,0xA53A,0xA57A,0xA57A,0xA57B,0xA59B,0xA59B,0xAD9B,0xAD7B,0xAD7B,0xB55B,0xB51A,0xB4FA,0xB4D9,0xBC98,0xB457,0xB3F6,0xBBB6,0xBBB6,0xCBF7,0xCBD6,0xCBD6,0xCBD6,0xCBD6,0xD3D6,0xD3D6,0xD3B6,0xD3B6,0xD396,0xD396,0xD396,0xD396,0xDB96,0xDB96,0xD376,0xDB76,0xDB76,0xDB76,0xDB96,0xDB96,0xDB76,0xD356,0xD396,0xD376,0xCB55,0xD376,0xCB75,0xCB75,0xCB96,0xC3B7,0xB376,0xB3B7,0xA3D8,0x93D7,0x9459,0x7C38,0x6C17,0x5C17,0x751A,0x7D9C,0x7DDD,0x759C,0x759C,0x7D7B,0x7D1A,0x7498,0x7C37,0x8417,0x9417,0x93F7,0x8B55,0x9355,0x9376,0x9B96,0x9BB7,0xAC39,0xA419,0x51D1,0x28AD,0x30EF,0x310F,0x3130,0x3130,0x3130,0x2930,0x3150,0x3150,0x3130,0x3130,0x3130,0x3130,0x2930,0x2930,0x3130,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2110,0x2110,0x212F,0x2930,0x212F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x212F,0x2130,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x2131,0x1931,0x1932,0x1133,0x0934,0x11D7,0x11D7,0x11D7,0x11B7,0x1133,0x1112,0x1932,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x2930,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2930,0x290F,0x212F,0x2930,0x2930,0x210F,0x2930,0x210F,0x2910,0x2910,0x290F,0x210F,0x290F,0x2910,0x2930,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x2130,0x210F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x210F,0x2110,0x2130,0x210F,0x212F,0x210F,0x2130,0x2110,0x1931,0x1953,0x1974,0x19B6,0x19D7,0x2218,0x2218,0x19F7,0x19B6,0x1996,0x1154,0x0933,0x0913,0x0954,0x11B6,0x1A17,0x19F7,0x1A17,0x19F7,0x19F7,0x11B6,0x1174,0x1134,0x1133,0x1133,0x1175,0x19F7,0x1A18,0x1A18,0x1A19,0x1A18,0x11D7,0x1195,0x1153,0x1953,0x1952,0x2131,0x2931,0x2930,0x2110,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x1910,0x1932,0x1973,0x1195,0x11D6,0x11F7,0x1A18,0x11F7,0x11D7,0x11B6,0x19B5,0x1174,0x1153,0x0933,0x0974,0x11B6,0x1A38,0x1A18,0x1A18,0x1A18,0x11D7,0x11B6,0x1995,0x1153,0x1153,0x1153,0x1194,0x11B6,0x11F7,0x1218,0x1A18,0x19F8,0x11D7,0x1195,0x1974,0x1953,0x1132,0x1132,0x1153,0x1174,0x19F6,0x1A17,0x1A18,0x1A18,0x1A18,0x19F7,0x19B5,0x1195,0x1154,0x0913,0x0954,0x11B6,0x2238,0x19F8,0x19F8,0x19D7,0x19D7,0x11B6,0x1174,0x1154,0x1174,0x1154,0x1174,0x11B5,0x19D7,0x19D7,0x21F8,0x19D7,0x19D7,0x19B6,0x1954,0x1953,0x1952,0x1931,0x1931,0x1931,0x1930,0x1931,0x2152,0x1952,0x1932,0x1932,0x1952,0x1932,0x1933,0x1953,0x1133,0x1133,0x1153,0x1154,0x0933,0x0913,0x0934,0x1175,0x19F7,0x2217,0x21F7,0x19B5,0x1154,0x1132,0x1932,0x1931,0x1930,0x1930,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x290F,0x2930,0x212F,0x212F,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x2930,0x2930, + 0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2910,0x20EF,0x2110,0x210F,0x210F,0x292F,0x290F,0x212F,0x292F,0x210F,0x210F,0x292F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x2930,0x292F,0x210F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1911,0x1932,0x1133,0x1154,0x1175,0x1196,0x11D7,0x19F8,0x1A18,0x1A18,0x11F8,0x0996,0x1174,0x1153,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x212F,0x212F,0x2930,0x212F,0x210F,0x290F,0x2930,0x210F,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2130,0x2930,0x210F,0x2910,0x290F,0x290F,0x212F,0x292F,0x212F,0x210F,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2130,0x2130,0x1931,0x1932,0x1154,0x1195,0x09B7,0x09D8,0x09FA,0x01FA,0x01DA,0x01BA,0x01DA,0x01DB,0x01FB,0x01DA,0x01DA,0x09DA,0x09D9,0x11B7,0x1175,0x1953,0x2152,0x2111,0x2130,0x2930,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x2110,0x2930,0x292F,0x210F,0x212F,0x292F,0x210F,0x290F,0x210F,0x290F,0x212F,0x2130,0x2950,0x2150,0x2130,0x1930,0x1930,0x1931,0x1132,0x1153,0x1154,0x1175,0x19D6,0x2238,0x2218,0x1195,0x1974,0x1112,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2110,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x290F,0x212F,0x212F,0x210F,0x292F,0x212F,0x210F,0x292F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x2930,0x212F,0x210F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x2910,0x3110,0x30F0,0x30D0,0x3891,0x4051,0x4810,0x78F6,0xCADE,0xCA5D,0xCA5E,0xCA5E,0xCA7E,0xC27C,0x5010,0x380E,0x380E,0x386F,0x308F,0x30CF,0x28CF,0x28F0,0x2910,0x2910,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x2930,0x2930,0x290F,0x2910,0x2910,0x2910,0x290F,0x2930,0x210F,0x2910,0x290F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2930,0x2110,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x2910,0x2930,0x290F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x210F,0x292F,0x292F,0x290F,0x2110,0x2110,0x2131,0x1932,0x1954,0x19D6,0x2218,0x19F8,0x1196,0x1133,0x1112,0x1911,0x1910,0x2151,0x2130,0x2110,0x210F,0x210F,0x2930,0x2950,0x2910,0x290F,0x290F,0x290F,0x2910,0x2110,0x2131,0x1932,0x1153,0x11B6,0x1A18,0x1A18,0x1195,0x0912,0x1112,0x1931,0x2131,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x2930,0x2910,0x210F,0x290F,0x210F,0x2910,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x290F,0x2930,0x2910,0x2910,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x3130,0x3130,0x3130,0x3130,0x3130,0x3130,0x3150,0x3150,0x3151,0x3151,0x3151,0x3151,0x3171,0x3171,0x3971,0x3971,0x3971,0x3972,0x4172,0x4172,0x4172,0x4193,0x4193,0x4993,0x49B3,0x4993,0x49B3,0x51B3,0x51B3,0x51D4,0x51D3,0x51D3,0x59D4,0x59D3,0x59B2,0x61B2,0x512F,0x69F1,0xC49B,0xCCDB,0xCCBA,0xC499,0xC479,0xC458,0xC458,0xCC79,0xCC58,0xCC58,0xCC58,0xCC38,0xCC38,0xCC38,0xCC38,0xCC38,0xCC38,0xCC18,0xCC38,0xCC18,0xC438,0xC438,0xBC38,0xBC58,0xB458,0xB458,0xAC58,0xAC58,0xAC57,0xA457,0xA478,0xA478,0xA457,0x9C57,0x9C77,0x9C77,0x9477,0x9497,0x9497,0x9498,0x94B8,0x9CB8,0xA4D9,0xACF9,0xB51A,0xB51A,0xBD3A,0xBCFA,0xBCD9,0xBCB9,0xC4B9,0xCCBA,0xBC17,0xB3D6,0xBBB6,0xC3F6,0xC417,0xCC17,0xCBF7,0xCBF7,0xCBD6,0xCBB6,0xD396,0xD396,0xD375,0xD396,0xDB96,0xDB96,0xDB76,0xD376,0xDB76,0xDB56,0xDB96,0xDB76,0xDB56,0xDB76,0xD355,0xD396,0xD396,0xCB76,0xCB96,0xCBB6,0xC3F7,0xB3D7,0x9B96,0x93D7,0x9439,0x8C79,0x7479,0x6458,0x6CFA,0x64DA,0x755B,0x85FE,0x7DBC,0x755B,0x855B,0x7499,0x7C37,0x83F6,0x8BD6,0x93D7,0xA3F7,0x9B75,0x9B76,0xA376,0x9B76,0xA3B7,0xAC5A,0xB49B,0x6A74,0x30AD,0x310F,0x310F,0x3110,0x3130,0x3130,0x3130,0x3150,0x3150,0x3150,0x3150,0x3150,0x3150,0x3130,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2930,0x212F,0x2930,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x2930,0x2130,0x2110,0x2110,0x2110,0x2131,0x2131,0x1931,0x1952,0x1132,0x1133,0x0954,0x11B7,0x11D8,0x11D8,0x11B7,0x1155,0x08F2,0x1912,0x2132,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x2930,0x2110,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x2910,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x2930,0x210F,0x2110,0x2130,0x2111,0x1932,0x1953,0x1975,0x11B7,0x11D7,0x1A18,0x19F8,0x11D7,0x11D7,0x1196,0x0955,0x0933,0x0933,0x0974,0x11B6,0x11D7,0x11F7,0x11F8,0x11F7,0x11D7,0x11B6,0x1175,0x0954,0x1154,0x0934,0x1175,0x11B7,0x11F8,0x11F9,0x1219,0x11F8,0x11F8,0x11B6,0x1174,0x1953,0x1932,0x2131,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x1931,0x1932,0x1153,0x1195,0x11D7,0x11F8,0x1218,0x11F8,0x11D7,0x11B7,0x1196,0x0974,0x0954,0x0954,0x0975,0x11B7,0x11F8,0x1219,0x1219,0x1219,0x11D8,0x11B7,0x1175,0x1154,0x1154,0x1154,0x1175,0x11B6,0x11D7,0x11F8,0x1219,0x1219,0x11D7,0x11B6,0x1195,0x1153,0x1133,0x1132,0x1153,0x1174,0x11D6,0x11F8,0x1218,0x1218,0x11F8,0x11D7,0x11B6,0x1175,0x0934,0x0913,0x0955,0x11B6,0x1A18,0x11F8,0x11F8,0x11D8,0x11D7,0x11D7,0x1195,0x1174,0x0934,0x0954,0x1175,0x11B6,0x19D7,0x11D8,0x19F8,0x19D8,0x19D7,0x19D6,0x1975,0x1953,0x1953,0x1932,0x1931,0x1931,0x1931,0x1931,0x1932,0x1953,0x1153,0x1153,0x1153,0x1154,0x1154,0x1154,0x1175,0x1175,0x1175,0x0975,0x1196,0x0996,0x11B6,0x19F7,0x2218,0x21F7,0x19B5,0x1174,0x1132,0x1131,0x1931,0x1910,0x1930,0x1910,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x2930,0x212F,0x2930,0x2930,0x2930, + 0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x210F,0x292F,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2910,0x2930,0x2130,0x2110,0x210F,0x2110,0x210F,0x210F,0x292F,0x210F,0x290F,0x290F,0x210F,0x212F,0x2130,0x2131,0x1911,0x1912,0x1932,0x1133,0x1133,0x1175,0x1196,0x11D7,0x1A18,0x1A39,0x1A19,0x11F8,0x0996,0x1154,0x1132,0x1932,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x2930,0x2930,0x210F,0x290F,0x210F,0x290F,0x212F,0x212F,0x292F,0x292F,0x212F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x2930,0x2910,0x2110,0x2930,0x210F,0x2930,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x2110,0x2110,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x210F,0x290F,0x290F,0x210F,0x2910,0x2110,0x2110,0x2930,0x2930,0x2910,0x2910,0x2930,0x210F,0x210F,0x210F,0x2930,0x2910,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x210F,0x290F,0x290F,0x292F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x292F,0x212F,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x2110,0x2130,0x1910,0x1911,0x1932,0x1154,0x11B6,0x11F8,0x09D9,0x01DA,0x01B9,0x01DA,0x01DB,0x01DB,0x01FB,0x01FB,0x01DA,0x01DA,0x09D9,0x11F9,0x11B7,0x1175,0x1133,0x1911,0x1911,0x2110,0x2930,0x2930,0x210F,0x210F,0x212F,0x2930,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x2930,0x212F,0x2930,0x212F,0x290F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1951,0x1932,0x1133,0x1154,0x1175,0x19D6,0x2218,0x21F7,0x19B6,0x1154,0x10F2,0x1911,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x2130,0x212F,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x292F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x210F,0x210F,0x290F,0x290F,0x2910,0x30F0,0x30D0,0x3890,0x4030,0x4811,0x8116,0xCA9E,0xD27E,0xD23E,0xD23E,0xD23E,0xD25E,0xD29E,0xC2BD,0xA239,0x68D3,0x4830,0x384F,0x3890,0x30B0,0x28F0,0x2910,0x2910,0x2930,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x292F,0x210F,0x290F,0x2110,0x2110,0x2111,0x1912,0x1113,0x2217,0x2238,0x19F8,0x1195,0x1133,0x1932,0x1911,0x2131,0x2130,0x2110,0x210F,0x210F,0x210F,0x290F,0x2930,0x2910,0x290F,0x290F,0x290F,0x2110,0x2110,0x2131,0x1932,0x1133,0x19F7,0x1A38,0x1A18,0x1196,0x0913,0x1932,0x1931,0x2131,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x210F,0x2930,0x292F,0x290F,0x2930,0x290F,0x210F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x3130,0x3130,0x3150,0x3151,0x3151,0x3151,0x3150,0x3150,0x3151,0x3171,0x3151,0x3171,0x3971,0x3972,0x3992,0x4192,0x3972,0x3972,0x3972,0x4172,0x4193,0x4193,0x4193,0x4993,0x49B3,0x49B4,0x49B3,0x49B3,0x51D3,0x51D4,0x59D3,0x59D3,0x59B3,0x5992,0x6191,0x592F,0x8AD4,0xD4FC,0xCCBB,0xCC9A,0xCC99,0xCC79,0xCC58,0xCC38,0xCC58,0xD438,0xD437,0xD437,0xD417,0xD417,0xD417,0xD417,0xD437,0xD438,0xD437,0xD437,0xD438,0xD438,0xCC38,0xCC38,0xCC38,0xCC38,0xC458,0xC437,0xC458,0xC438,0xC458,0xC458,0xBC58,0xBC58,0xBC58,0xBC58,0xB458,0xB457,0xAC57,0xAC57,0xA437,0xA437,0xA437,0xA437,0xAC37,0xAC17,0xAC57,0xB478,0xBC99,0xB499,0xBCFA,0xC51A,0xB4B9,0xB478,0xAC58,0xB478,0xB458,0xB417,0xABD6,0xB3B6,0xBBF7,0xC3F7,0xCBF7,0xCBD7,0xD3D7,0xD3B6,0xD3B6,0xD396,0xD396,0xDB96,0xD376,0xDB76,0xD356,0xDB76,0xD355,0xD355,0xD335,0xD355,0xD335,0xD376,0xD396,0xCB96,0xC3D6,0xBBD6,0xBC58,0xA458,0x8C17,0x73D7,0x6C18,0x6C99,0x6D1B,0x6D5B,0x7DBC,0x7DBD,0x753B,0x7D5B,0x8D7C,0x84D9,0x7C57,0x83D6,0x8374,0x9375,0xA3F7,0xABD7,0xABD7,0xABD7,0xA396,0x9B76,0xA3B7,0xAC19,0xB49B,0x8377,0x28AD,0x310F,0x3950,0x3150,0x3950,0x3150,0x3150,0x3150,0x3130,0x3150,0x3150,0x3130,0x3151,0x3151,0x3150,0x3150,0x2930,0x2930,0x2930,0x3130,0x2930,0x2930,0x290F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x290F,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x2930,0x212F,0x212F,0x290F,0x290F,0x292F,0x212F,0x2930,0x2930,0x212F,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2110,0x1910,0x2131,0x1932,0x1952,0x1133,0x1174,0x1196,0x11D7,0x09D8,0x11D8,0x11D8,0x11B6,0x1174,0x1112,0x1912,0x1911,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x2110,0x210F,0x2930,0x2110,0x210F,0x210F,0x2110,0x2930,0x2110,0x2910,0x2930,0x290F,0x210F,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x2930,0x212F,0x2930,0x212F,0x212F,0x2930,0x210F,0x2110,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x1911,0x1932,0x1954,0x1995,0x19F7,0x11F8,0x11F8,0x11F8,0x11F8,0x11D7,0x1196,0x0975,0x0954,0x0934,0x1195,0x11D6,0x11D7,0x11D8,0x11D8,0x09D7,0x11D7,0x11B7,0x0976,0x0954,0x0954,0x0954,0x0976,0x0997,0x11D8,0x09D8,0x09F9,0x09F9,0x11F8,0x11D7,0x1175,0x1953,0x1952,0x2131,0x2131,0x2110,0x2110,0x210F,0x2910,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2110,0x1931,0x1953,0x1174,0x11B6,0x11D7,0x11F8,0x11F8,0x11F8,0x09D8,0x11D7,0x11B6,0x0975,0x0954,0x0954,0x0996,0x11D7,0x11F9,0x1219,0x1219,0x11F9,0x11D8,0x11B7,0x1175,0x1174,0x1174,0x1174,0x1195,0x11B6,0x11F8,0x11F9,0x1219,0x11F9,0x09D8,0x09B7,0x1195,0x1174,0x1153,0x1133,0x1174,0x1195,0x11D7,0x11F8,0x11F8,0x11F8,0x11D8,0x11D7,0x11B6,0x1196,0x0954,0x0914,0x0975,0x11D7,0x11F8,0x11D8,0x11D8,0x09D8,0x11D8,0x11D7,0x11B6,0x1175,0x0934,0x0934,0x11B6,0x11D7,0x11D8,0x11D8,0x11D8,0x11B7,0x11D8,0x19D7,0x1995,0x1153,0x1953,0x1932,0x1931,0x1931,0x1931,0x1932,0x1153,0x1154,0x1195,0x11B6,0x11D7,0x11D7,0x11D8,0x11F8,0x11F8,0x11D8,0x11F8,0x11F8,0x1A19,0x11F8,0x1A18,0x1A18,0x19D7,0x1195,0x1974,0x1132,0x1111,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x290F,0x2930,0x290F,0x210F,0x212F,0x2130,0x2930,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x2930,0x212F, + 0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2910,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2110,0x2130,0x2130,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x2130,0x2110,0x2111,0x2131,0x1932,0x1932,0x1133,0x1154,0x1175,0x19B6,0x11D7,0x1A18,0x1A39,0x1A18,0x11D7,0x1196,0x1174,0x1132,0x1112,0x1931,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x290F,0x212F,0x210F,0x292F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x290F,0x290F,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x292F,0x210F,0x210F,0x2930,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x210F,0x2910,0x2110,0x2910,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x210F,0x210F,0x210F,0x290F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x212F,0x212F,0x290F,0x290F,0x290F,0x2110,0x2110,0x2110,0x1911,0x1132,0x1154,0x1196,0x09B8,0x09D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DB,0x01FB,0x01DB,0x01DA,0x01DA,0x09B9,0x11D9,0x19D7,0x1195,0x1133,0x1912,0x1911,0x2110,0x2930,0x2930,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x292F,0x2930,0x210F,0x2110,0x2110,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1133,0x1154,0x1175,0x19D7,0x2218,0x21F7,0x19B6,0x1153,0x1112,0x1912,0x1911,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x290F,0x210F,0x2930,0x2910,0x2910,0x290F,0x290F,0x292F,0x292F,0x212F,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x212F,0x292F,0x290F,0x2910,0x2910,0x30F0,0x38B0,0x4050,0x5031,0x99F9,0xCABE,0xD27E,0xD23E,0xDA1E,0xDA3E,0xDA1E,0xDA3E,0xDA5E,0xD29D,0xCABD,0xC2FD,0xA25A,0x4830,0x382F,0x3890,0x30D0,0x28F0,0x2910,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2110,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2130,0x212F,0x2130,0x210F,0x212F,0x210F,0x290F,0x2910,0x2110,0x2110,0x2131,0x1912,0x1113,0x2217,0x1A38,0x19D7,0x1175,0x1133,0x1912,0x1911,0x2110,0x2110,0x2110,0x2910,0x290F,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x2930,0x2930,0x2930,0x2131,0x1911,0x0933,0x19F7,0x1A38,0x19F8,0x1196,0x1133,0x1932,0x1931,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x210F,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x2930,0x3130,0x3130,0x3130,0x3130,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3971,0x3972,0x4192,0x4192,0x4172,0x4172,0x3972,0x4172,0x4193,0x4993,0x4993,0x4993,0x49D4,0x49D4,0x49B3,0x51D3,0x51D3,0x59D3,0x59B3,0x59B2,0x5992,0x5971,0x590F,0x9B16,0xDCDC,0xD4BA,0xD49A,0xD479,0xD458,0xD458,0xD458,0xD437,0xD437,0xD417,0xD437,0xD417,0xD417,0xD417,0xD417,0xD417,0xD417,0xD417,0xD417,0xD417,0xD417,0xD417,0xD417,0xD417,0xD417,0xD437,0xCC17,0xCC17,0xCC17,0xCC17,0xCC37,0xCC17,0xCC17,0xCC17,0xCC17,0xCC17,0xC437,0xC417,0xC437,0xC437,0xBC37,0xBC37,0xC437,0xBC37,0xBC17,0xBBF7,0xBC17,0xB3D6,0xB3F6,0xB417,0xB458,0xB499,0xB499,0xB4BA,0xAC78,0xBCDA,0xBCD9,0xC4DA,0xBC78,0xB438,0xB3F7,0xB3B6,0xB3B6,0xBBB6,0xC3B6,0xCBD6,0xCBB7,0xD3B7,0xD3B7,0xD396,0xDB97,0xD376,0xD376,0xDB56,0xD356,0xD356,0xD355,0xD355,0xD375,0xD376,0xD376,0xCBB7,0xCBF7,0xBC18,0xB499,0xA4DA,0x8CDA,0x74BA,0x64BA,0x5CB9,0x6D7C,0x6DBD,0x7E1E,0x85FE,0x6CDA,0x6417,0x7C78,0x8417,0x8BF6,0x8B54,0x9B95,0xA395,0xB3D7,0xB3F7,0xAB96,0xABB7,0xA397,0x9BB7,0xA43A,0xAC9B,0x9C5B,0x3970,0x290F,0x3130,0x3150,0x3150,0x3971,0x3151,0x3971,0x3151,0x3150,0x3151,0x3150,0x3151,0x3130,0x3151,0x3151,0x3150,0x3150,0x3130,0x3130,0x3130,0x3130,0x3130,0x2910,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x2930,0x2930,0x210F,0x292F,0x210F,0x2130,0x292F,0x212F,0x2930,0x2930,0x290F,0x212F,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x210F,0x210F,0x2930,0x2130,0x2110,0x1910,0x1931,0x1952,0x1153,0x1175,0x1196,0x09B7,0x09D8,0x09D8,0x09D8,0x11D8,0x11D7,0x11B6,0x1995,0x1112,0x1911,0x1931,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x2110,0x210F,0x2910,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2910,0x2910,0x2910,0x2110,0x2910,0x290F,0x2110,0x210F,0x2930,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2130,0x2130,0x210F,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x1911,0x1932,0x1133,0x1175,0x11D7,0x11D8,0x11D8,0x11F8,0x11F8,0x11F8,0x09B7,0x0975,0x0954,0x0134,0x0995,0x09B6,0x09D7,0x11D8,0x11D8,0x09D8,0x11D7,0x11B7,0x1196,0x0935,0x0934,0x0954,0x0976,0x0997,0x11D8,0x09D9,0x09D8,0x09D9,0x09D8,0x09D7,0x1195,0x1153,0x1932,0x2131,0x2110,0x2110,0x2110,0x2930,0x2910,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1154,0x1175,0x11D7,0x11F8,0x09F9,0x09F9,0x11F8,0x09D7,0x0996,0x0975,0x0954,0x0134,0x0976,0x09D7,0x11F9,0x1219,0x09F9,0x11F9,0x11D9,0x11B7,0x1175,0x1154,0x1154,0x1154,0x1175,0x09B6,0x09B8,0x11F9,0x09F9,0x09F9,0x11F9,0x11D7,0x1195,0x1174,0x1133,0x1133,0x1174,0x0975,0x11B7,0x11F8,0x11F8,0x11F8,0x09D8,0x11D8,0x11B7,0x1176,0x0934,0x0934,0x0976,0x09B7,0x11F9,0x09D9,0x09D9,0x09D8,0x11D8,0x11D8,0x11B6,0x0954,0x0113,0x0934,0x0996,0x11B7,0x11D8,0x11D8,0x09B8,0x11D8,0x11B8,0x11B7,0x1195,0x1154,0x1953,0x1932,0x1932,0x1932,0x1932,0x1132,0x1154,0x1195,0x11D7,0x11F8,0x1219,0x09F8,0x09D8,0x09D8,0x09F9,0x09F9,0x01D9,0x09D9,0x09D9,0x09D8,0x11F9,0x11D8,0x19B6,0x1174,0x1112,0x1111,0x1931,0x1930,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2930,0x210F,0x210F,0x292F,0x290F,0x290F,0x210F,0x2930,0x2930,0x2930,0x2130,0x212F,0x212F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x210F,0x210F,0x2930,0x212F, + 0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2910,0x290F,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x292F,0x210F,0x212F,0x210F,0x290F,0x210F,0x210F,0x2130,0x2110,0x2111,0x1911,0x1932,0x1932,0x1133,0x1974,0x1175,0x1196,0x11D7,0x1A18,0x1A19,0x11F8,0x11D7,0x1196,0x1154,0x1133,0x1112,0x1931,0x1931,0x2131,0x2130,0x2151,0x2130,0x2110,0x2130,0x2130,0x212F,0x2930,0x290F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2110,0x2910,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2930,0x2910,0x2930,0x2910,0x2910,0x2930,0x210F,0x290F,0x290F,0x210F,0x2910,0x290F,0x2910,0x2910,0x2910,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x290F,0x210F,0x290F,0x210F,0x2130,0x2130,0x1931,0x1931,0x1133,0x1154,0x11B7,0x09D8,0x09F9,0x01FA,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01BA,0x01B9,0x09D9,0x11F9,0x19F7,0x1995,0x1133,0x1931,0x2111,0x2110,0x2130,0x2930,0x210F,0x290F,0x210F,0x292F,0x2930,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2910,0x2110,0x212F,0x212F,0x210F,0x212F,0x2110,0x2130,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2150,0x2151,0x1952,0x1952,0x1973,0x1174,0x1175,0x19D6,0x19F7,0x21F7,0x21D6,0x1154,0x1112,0x10F2,0x1911,0x2151,0x2151,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x212F,0x210F,0x2130,0x2930,0x2930,0x2910,0x2930,0x2110,0x2930,0x2930,0x2110,0x210F,0x210F,0x210F,0x292F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2131,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2131,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x292F,0x290F,0x2910,0x28D0,0x30B0,0x3870,0x5892,0xB2DC,0xD31F,0xD27E,0xDA3E,0xE23F,0xE21E,0xE1FE,0xE21F,0xE21F,0xE23E,0xDA5E,0xD27D,0xCA9D,0xBA9C,0xBB1D,0x7134,0x382F,0x3890,0x30D0,0x28EF,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x290F,0x2910,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2110,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2131,0x2131,0x1932,0x1113,0x2218,0x1A38,0x19D7,0x1195,0x1133,0x1932,0x1911,0x2130,0x2130,0x2130,0x2110,0x290F,0x2930,0x2930,0x2910,0x290F,0x290F,0x210F,0x290F,0x2130,0x2130,0x1910,0x1932,0x1133,0x19F7,0x1A18,0x19F8,0x1196,0x0912,0x1932,0x1911,0x2130,0x2110,0x2930,0x2910,0x2930,0x210F,0x292F,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x290F,0x2930,0x2930,0x292F,0x292F,0x2930,0x210F,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x2930,0x3130,0x3130,0x3130,0x3151,0x3151,0x3151,0x3151,0x3151,0x3971,0x3151,0x3171,0x3971,0x3971,0x3971,0x3971,0x3951,0x3971,0x3971,0x4172,0x4192,0x41B3,0x41B3,0x4193,0x49B3,0x49B3,0x49B3,0x49D4,0x51D4,0x51D3,0x51D3,0x51D3,0x51B2,0x59B2,0x5991,0x5950,0x590F,0x9AF5,0xDCDC,0xD47A,0xD479,0xDC99,0xD458,0xD437,0xDC37,0xD437,0xD417,0xDC37,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xD416,0xDC17,0xDC17,0xD417,0xD417,0xDC17,0xD3F7,0xDC17,0xD417,0xD417,0xD416,0xD417,0xD417,0xD3F6,0xD3F7,0xD417,0xD3F7,0xD417,0xD3F7,0xD3F7,0xD3F7,0xD3F7,0xD3F7,0xCBF6,0xCBF6,0xCBF7,0xCBF7,0xCBF7,0xCBF7,0xCBF7,0xCBF7,0xCBF7,0xCBF7,0xC3F7,0xC437,0xB3F6,0xA3B6,0x9B96,0xAC18,0xAC37,0xB478,0xC4FA,0xBCD9,0xB498,0xB478,0xBC98,0xBC78,0xBC37,0xBBD6,0xBBB6,0xBB95,0xBB96,0xC396,0xCBB7,0xCB96,0xD396,0xD396,0xDB97,0xD376,0xDB76,0xDB76,0xDB76,0xDB96,0xD375,0xD376,0xCB76,0xC355,0xBB76,0xABB6,0xAC79,0xA4FA,0x8D1B,0x857C,0x7DDE,0x6DBD,0x551B,0x4CDA,0x6DBD,0x755C,0x5BD7,0x6BD7,0x83D7,0x8BD6,0x9396,0xABD6,0xB3F7,0xB3D7,0xAB96,0xA335,0xA356,0x9B76,0x9BD8,0x9C5A,0xA4BC,0xA4DD,0x5A95,0x290F,0x2930,0x3151,0x3971,0x3971,0x3971,0x3971,0x3971,0x3171,0x3150,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x3130,0x3130,0x3150,0x3130,0x3130,0x3130,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x292F,0x212F,0x2910,0x2910,0x210F,0x212F,0x2130,0x212F,0x212F,0x290F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2930,0x2110,0x2930,0x2131,0x2130,0x1911,0x1932,0x1953,0x1174,0x0975,0x09B7,0x09D8,0x09D8,0x09D9,0x09D9,0x09D8,0x11D8,0x11B7,0x1195,0x1154,0x1952,0x1931,0x2131,0x2131,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x210F,0x2910,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2930,0x290F,0x2910,0x210F,0x2910,0x2910,0x2910,0x2930,0x2130,0x2930,0x2130,0x292F,0x292F,0x2910,0x2930,0x290F,0x2930,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2131,0x1931,0x1932,0x1133,0x1195,0x11D8,0x11F9,0x09F9,0x09F9,0x09F8,0x09D8,0x09D7,0x0175,0x0154,0x0154,0x0996,0x11B7,0x09D8,0x09D8,0x09F8,0x09D8,0x11D8,0x11B7,0x0976,0x0955,0x0934,0x0955,0x0955,0x0997,0x11D8,0x09F9,0x09D9,0x09D9,0x09D8,0x09D7,0x1175,0x1154,0x1932,0x2131,0x2110,0x2910,0x290F,0x2910,0x290F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1953,0x1154,0x1196,0x11D8,0x11F9,0x09F9,0x09F9,0x11F9,0x09D8,0x0996,0x0955,0x0955,0x0955,0x0976,0x09B7,0x09F9,0x0A1A,0x09FA,0x09F9,0x09D9,0x11B8,0x1196,0x1154,0x0954,0x0954,0x0975,0x0997,0x09D8,0x09F9,0x09F9,0x09F9,0x09D9,0x09B7,0x1196,0x1174,0x0933,0x0933,0x1174,0x11B6,0x11D7,0x11F8,0x11F9,0x11F9,0x11D9,0x11B8,0x11B7,0x1196,0x0914,0x0934,0x0976,0x09D8,0x09F9,0x09F9,0x09D9,0x09D8,0x09D8,0x11D8,0x11B6,0x0955,0x0913,0x0914,0x1197,0x11D8,0x11D9,0x09D9,0x09B8,0x09D9,0x11D9,0x11D8,0x1196,0x1154,0x1112,0x1912,0x1931,0x1931,0x1932,0x1953,0x1195,0x11D7,0x09D8,0x09F9,0x09D9,0x01D9,0x01B8,0x01D9,0x01F9,0x01FA,0x01D9,0x01D9,0x01B9,0x09D9,0x11D9,0x11B7,0x0955,0x0913,0x10F1,0x1911,0x1931,0x2130,0x2150,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x292F,0x2930,0x2930,0x2930,0x212F,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x292F,0x290F,0x292F,0x2930,0x212F,0x212F,0x210F,0x2930,0x2930,0x212F,0x212F,0x2930,0x210F,0x2930,0x2930,0x212F,0x210F,0x210F,0x290F, + 0x212F,0x212F,0x210F,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x212F,0x2910,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x290F,0x210F,0x290F,0x2130,0x2110,0x2130,0x1931,0x1931,0x1932,0x1932,0x1933,0x1133,0x1154,0x1196,0x11D7,0x19F8,0x1A19,0x1A19,0x11D7,0x11B6,0x1174,0x1133,0x1132,0x1911,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2930,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2910,0x2910,0x210F,0x2930,0x2110,0x2930,0x210F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x2930,0x210F,0x2910,0x290F,0x290F,0x2910,0x2910,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x212F,0x2130,0x2130,0x1931,0x1932,0x1133,0x1175,0x0996,0x11F9,0x09D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x09D9,0x09D9,0x19F8,0x19F7,0x1995,0x1132,0x1911,0x2111,0x2130,0x2110,0x2930,0x290F,0x290F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x2110,0x210F,0x2930,0x210F,0x2910,0x210F,0x292F,0x292F,0x212F,0x2930,0x2930,0x2130,0x2130,0x2930,0x210F,0x2130,0x2130,0x2130,0x2150,0x2130,0x2151,0x1952,0x1952,0x1953,0x1153,0x1154,0x19D6,0x21F7,0x2218,0x21D7,0x1134,0x08F2,0x10F1,0x1911,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2930,0x2930,0x2110,0x2930,0x2930,0x2110,0x2130,0x2110,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2110,0x2131,0x2131,0x2131,0x1931,0x1931,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x2131,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x292F,0x290F,0x290F,0x2910,0x28F0,0x30D0,0x3070,0x4871,0xAA7A,0xD31E,0xD2BE,0xDA3D,0xE21E,0xE21E,0xE1FE,0xE1FF,0xE1FE,0xEA1F,0xE21E,0xE23E,0xDA5E,0xDA9E,0xCA9D,0xC2BC,0xC31D,0x60D3,0x382F,0x30B0,0x28CF,0x28F0,0x2910,0x2910,0x2930,0x290F,0x210F,0x212F,0x210F,0x210F,0x2930,0x290F,0x210F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2130,0x2131,0x1932,0x0913,0x1A17,0x1A39,0x19F7,0x1195,0x1133,0x1932,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x2930,0x2930,0x290F,0x290F,0x212F,0x2930,0x2110,0x2130,0x2131,0x1931,0x0912,0x19D7,0x2239,0x19F8,0x1195,0x0912,0x1932,0x2111,0x2110,0x2130,0x2930,0x290F,0x2930,0x2930,0x292F,0x2950,0x292F,0x212F,0x292F,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x3130,0x3130,0x3150,0x3130,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3971,0x3151,0x3951,0x3971,0x3971,0x3972,0x3971,0x3971,0x3972,0x4172,0x41B3,0x49B3,0x49B3,0x4193,0x4993,0x49B3,0x51D4,0x49B3,0x51D3,0x51D3,0x51B3,0x51B2,0x59B2,0x5991,0x6191,0x614F,0x9AF5,0xDCBB,0xDC7A,0xDC79,0xDC79,0xD438,0xD437,0xDC37,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDBF6,0xDC17,0xDC17,0xDC16,0xDC16,0xDC16,0xDBF6,0xDC17,0xD3F6,0xDBF7,0xDC17,0xDC17,0xD3F6,0xDC17,0xD3F6,0xD3F6,0xD3F6,0xD3F6,0xD3F6,0xD3F6,0xDBF7,0xDBF7,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3F6,0xD3F6,0xCBF7,0xCBF7,0xC3F7,0xC417,0xBC17,0xB418,0xABD7,0xABF7,0xB437,0xBC58,0xBC78,0xB458,0xC499,0xC499,0xBC78,0xC478,0xBC38,0xC438,0xBBD7,0xB396,0xBB96,0xBB75,0xC396,0xCB76,0xCB76,0xD396,0xDBB7,0xDB96,0xDB96,0xDB96,0xD376,0xD376,0xD396,0xCB76,0xBB96,0xB3B7,0xA3F7,0x9CDA,0x955C,0x8DBD,0x757C,0x5D5C,0x551B,0x449A,0x4C99,0x5C99,0x7479,0x8438,0x8BB6,0x9BB6,0xA3B6,0xB3F7,0xBC18,0xB3D7,0xAB96,0xA396,0x9376,0x9BD8,0x945A,0x947B,0x9D1E,0x5B37,0x190F,0x2950,0x3171,0x3971,0x3971,0x3971,0x3971,0x3971,0x3151,0x3171,0x3151,0x3171,0x3151,0x3151,0x3151,0x3151,0x3171,0x3151,0x3130,0x3130,0x3130,0x3150,0x3130,0x3130,0x3130,0x3150,0x2930,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x292F,0x212F,0x2910,0x2910,0x210F,0x212F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2110,0x2130,0x2131,0x1931,0x1111,0x1132,0x1154,0x1195,0x0996,0x11F8,0x09D8,0x09F9,0x01D9,0x01B9,0x01D9,0x09F9,0x09B7,0x11B7,0x1195,0x1994,0x1132,0x1911,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2930,0x2130,0x212F,0x2930,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x2110,0x2930,0x2110,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x2930,0x290F,0x2910,0x2910,0x290F,0x2910,0x210F,0x2910,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2130,0x2130,0x2130,0x292F,0x292F,0x2910,0x2930,0x2910,0x290F,0x290F,0x2930,0x2130,0x2130,0x212F,0x2130,0x2110,0x2130,0x2110,0x2131,0x1931,0x1933,0x1954,0x1196,0x11D8,0x11F9,0x09F9,0x0A19,0x09D8,0x09D8,0x09B7,0x0176,0x0134,0x0134,0x0996,0x11D7,0x09D8,0x09D8,0x09D8,0x09F8,0x09D8,0x09B7,0x0997,0x0955,0x0955,0x0955,0x0976,0x0997,0x09D8,0x09D9,0x09D9,0x09D9,0x09D8,0x11D8,0x1176,0x1154,0x1932,0x2131,0x2130,0x2910,0x290F,0x290F,0x290F,0x290F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2111,0x1932,0x1953,0x1975,0x1196,0x11D8,0x09F9,0x09F9,0x09F9,0x09D9,0x09D8,0x0996,0x0955,0x0955,0x0975,0x0996,0x09B7,0x09F9,0x09FA,0x09F9,0x09FA,0x11D9,0x09B8,0x1196,0x0954,0x0954,0x0954,0x0976,0x09B7,0x09D9,0x09F9,0x0A1A,0x09F9,0x09D9,0x09B7,0x1196,0x1174,0x0933,0x0933,0x1175,0x1196,0x11D7,0x11F9,0x1219,0x11F9,0x09D8,0x09B8,0x1197,0x1176,0x0934,0x0114,0x0976,0x09D8,0x0A19,0x01F9,0x01D9,0x09D8,0x09B8,0x11D8,0x11B7,0x1175,0x0914,0x0914,0x0997,0x11D8,0x09D9,0x09D9,0x09D9,0x09B9,0x09D9,0x11D8,0x1196,0x1154,0x1133,0x1932,0x1911,0x1932,0x1932,0x1954,0x1196,0x11D8,0x09B8,0x09D9,0x01D9,0x01B9,0x01B9,0x01D9,0x01DA,0x01D9,0x01DA,0x01B9,0x01DA,0x09DA,0x09B9,0x1197,0x1155,0x1133,0x1112,0x1911,0x1930,0x2130,0x2150,0x2150,0x212F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x212F,0x210F,0x2930,0x2930,0x292F,0x292F,0x2930,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2930, + 0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x2930,0x290F,0x2930,0x210F,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x2910,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x292F,0x292F,0x290F,0x290F,0x210F,0x212F,0x2130,0x2110,0x2131,0x2151,0x1931,0x1932,0x1932,0x1132,0x1133,0x1154,0x11B6,0x11D7,0x11F8,0x11F8,0x1A19,0x19F7,0x19B6,0x1154,0x1132,0x1132,0x1911,0x2131,0x2151,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2110,0x212F,0x212F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x290F,0x290F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2910,0x2910,0x2110,0x2930,0x2930,0x290F,0x290F,0x210F,0x2910,0x2930,0x210F,0x2910,0x2910,0x290F,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x210F,0x2930,0x2930,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x212F,0x210F,0x2130,0x2131,0x1931,0x1932,0x1113,0x1155,0x1197,0x09D8,0x09D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x09FA,0x09D9,0x11F8,0x19F8,0x19B6,0x1954,0x1912,0x1911,0x2131,0x2110,0x2930,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2110,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1132,0x1153,0x1995,0x19D7,0x2218,0x2218,0x19D6,0x1154,0x1113,0x10F2,0x1911,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2110,0x2130,0x2110,0x2111,0x2111,0x1911,0x2132,0x1932,0x1933,0x1933,0x1133,0x1153,0x1133,0x1132,0x1132,0x1132,0x1932,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x290F,0x2910,0x2910,0x30D1,0x3850,0x7976,0xCAFD,0xD2BE,0xDA5D,0xE25E,0xE21E,0xE9FF,0xEA1F,0xE9FF,0xE9FF,0xE9FF,0xE9FE,0xE23E,0xE23E,0xDA5E,0xDA7D,0xD2BD,0xC2BC,0xB2DC,0x5071,0x386F,0x30B0,0x28CF,0x28EF,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2930,0x290F,0x2930,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2930,0x2110,0x2110,0x290F,0x210F,0x2930,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x2930,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2131,0x1912,0x1113,0x2218,0x2259,0x19F8,0x1175,0x1133,0x1932,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x210F,0x210F,0x292F,0x2130,0x2130,0x2110,0x1910,0x1931,0x1112,0x19D7,0x1A18,0x19F8,0x1175,0x1112,0x1911,0x2111,0x2131,0x2130,0x2130,0x2930,0x2930,0x290F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3971,0x3151,0x3971,0x3971,0x3971,0x3972,0x3971,0x3972,0x4192,0x4192,0x4192,0x4193,0x4193,0x49B3,0x49B3,0x49B3,0x4993,0x49B3,0x49B3,0x51B3,0x51B3,0x51B3,0x59B2,0x59B2,0x6191,0x614F,0xAB36,0xDCBB,0xDC7A,0xDC79,0xDC58,0xDC38,0xDC37,0xDC37,0xDC17,0xDC17,0xDC16,0xDC16,0xDC17,0xDC17,0xDC17,0xDC17,0xDBF6,0xDBF6,0xDC16,0xDBF6,0xDC16,0xDC16,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xD3D6,0xD3D6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBF7,0xDBD6,0xD3D6,0xD3D6,0xDBD6,0xDBD6,0xDBD6,0xD3D6,0xDBD6,0xD3D6,0xDBF6,0xD3D6,0xDBD6,0xDBD6,0xD3D6,0xD3D6,0xD3B6,0xCBD6,0xCBF6,0xCBF7,0xCBD7,0xC3D7,0xC3D7,0xC3D7,0xC3F7,0xBBB6,0xB396,0xB3D6,0xC479,0xC479,0xBC78,0xBC58,0xB437,0xB438,0xBC58,0xBC38,0xBC17,0xBBB6,0xBB96,0xBB76,0xCB96,0xCB76,0xD396,0xD376,0xD376,0xD376,0xD376,0xD376,0xD397,0xCB97,0xC397,0xB396,0xA3B7,0x93D7,0x949A,0x851B,0x85BE,0x6D7D,0x5D3C,0x5D1C,0x5CFB,0x6CFB,0x7479,0x73F7,0x93F7,0xA417,0xABF7,0xABD6,0xABB6,0xA396,0xA3B7,0x9BF8,0x8BF8,0x8C39,0x94FC,0x953E,0x6BD9,0x194F,0x192F,0x31B1,0x39B2,0x3991,0x3991,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3151,0x3151,0x3171,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x3150,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x2110,0x2110,0x210F,0x2930,0x2930,0x2130,0x212F,0x2130,0x212F,0x2110,0x210F,0x2130,0x2131,0x2131,0x1911,0x1111,0x1973,0x19B5,0x1197,0x09D8,0x09F9,0x01D9,0x01F9,0x01FA,0x01B9,0x01B9,0x09F9,0x09F8,0x11D7,0x11B6,0x19B5,0x1132,0x10F1,0x2151,0x2151,0x2951,0x2110,0x210F,0x2930,0x2930,0x2130,0x210F,0x210F,0x210F,0x290F,0x2930,0x2110,0x2110,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x2910,0x2110,0x2930,0x2130,0x2110,0x2930,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x290F,0x210F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2110,0x2131,0x2131,0x1911,0x1932,0x1954,0x1196,0x11F8,0x09F9,0x09F9,0x09F9,0x09F9,0x09D8,0x0997,0x0176,0x0135,0x0135,0x0976,0x09B7,0x09F8,0x09D8,0x09D8,0x09D8,0x09B8,0x09B8,0x0997,0x0955,0x0955,0x0955,0x0976,0x0997,0x09B8,0x09D9,0x09D9,0x09D9,0x09F9,0x09B8,0x0976,0x1134,0x1932,0x2131,0x2130,0x2910,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2131,0x1932,0x1933,0x1154,0x1196,0x11D8,0x11F9,0x09F9,0x09F9,0x09D9,0x09D8,0x09B7,0x0975,0x0955,0x0955,0x0976,0x09B7,0x09F9,0x09FA,0x09FA,0x09FA,0x09F9,0x09B8,0x1196,0x0954,0x0954,0x0955,0x0975,0x0997,0x09D8,0x09F9,0x0A1A,0x121A,0x09D9,0x09B8,0x1196,0x1175,0x0913,0x0933,0x0974,0x0996,0x11D8,0x09F9,0x11F9,0x1219,0x09D9,0x09B8,0x11B7,0x1196,0x0934,0x0114,0x0176,0x09D8,0x0A19,0x09F9,0x01D9,0x09D9,0x09B8,0x09B7,0x1196,0x0955,0x0914,0x0934,0x09B7,0x09B8,0x09D9,0x09FA,0x09D9,0x09D9,0x09D9,0x09B8,0x11B7,0x1175,0x1133,0x1932,0x1911,0x1911,0x1932,0x1974,0x11B6,0x11F8,0x09F9,0x09FA,0x01B9,0x01B9,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x09FA,0x09FA,0x09B9,0x1197,0x1175,0x1133,0x1112,0x1931,0x2131,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x292F,0x2930,0x292F,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2110,0x2130,0x212F,0x212F, + 0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x212F,0x292F,0x292F,0x290F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1931,0x1132,0x1133,0x1154,0x1175,0x11B6,0x11D7,0x19F8,0x1A19,0x1A18,0x19F8,0x1196,0x1174,0x1153,0x1111,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x2930,0x290F,0x210F,0x210F,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x210F,0x210F,0x290F,0x2910,0x2110,0x2910,0x2910,0x290F,0x210F,0x2910,0x2910,0x2930,0x210F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1132,0x1134,0x1175,0x0997,0x09D8,0x09B9,0x09D9,0x09DA,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x11F9,0x11F8,0x19F8,0x19B6,0x1154,0x1132,0x1912,0x1911,0x2110,0x2110,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x212F,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1911,0x1953,0x1154,0x1995,0x19D7,0x21F8,0x2218,0x19B6,0x1154,0x1113,0x1112,0x1111,0x2131,0x2131,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x2111,0x2111,0x1911,0x1932,0x1913,0x1133,0x1134,0x1154,0x1154,0x1174,0x1175,0x1174,0x1194,0x1994,0x1973,0x1952,0x1911,0x1911,0x2111,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x2930,0x292F,0x212F,0x210F,0x210F,0x290F,0x2910,0x2910,0x28F0,0x30B0,0x4030,0xAA7A,0xD2DD,0xDA9E,0xE25E,0xE23E,0xEA1F,0xEA1F,0xF1FF,0xF1FF,0xF1FF,0xE9FF,0xE9FF,0xEA1F,0xE23E,0xE23E,0xE25E,0xDA7E,0xD29D,0xCB1D,0xA259,0x380F,0x3090,0x28AF,0x28F0,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x2930,0x290F,0x290F,0x2910,0x2110,0x2930,0x210F,0x210F,0x2930,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x2110,0x2910,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2910,0x2110,0x2130,0x2110,0x2130,0x2130,0x1911,0x1932,0x0913,0x2218,0x1A39,0x19F8,0x1196,0x1133,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x1931,0x1911,0x1112,0x19D7,0x1A18,0x19F8,0x1196,0x1112,0x1912,0x2111,0x2110,0x2130,0x2130,0x2930,0x290F,0x212F,0x292F,0x292F,0x292F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3130,0x3130,0x3130,0x3151,0x3131,0x3151,0x3151,0x3151,0x3151,0x3151,0x3171,0x3151,0x3151,0x3971,0x3971,0x3972,0x3972,0x3971,0x3972,0x4192,0x4192,0x4192,0x4193,0x4193,0x4193,0x4193,0x49B3,0x49B3,0x49B3,0x4993,0x49B3,0x51B3,0x51B2,0x59B2,0x61B2,0x61B1,0x614F,0xAB56,0xDCBB,0xDC9A,0xDC59,0xDC38,0xDC38,0xDC37,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC37,0xDC17,0xDC17,0xDC17,0xDC16,0xDC16,0xDBF6,0xDC16,0xDC16,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDBD6,0xDBD6,0xD3D6,0xDBD6,0xDBB6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD3D6,0xD3B6,0xD3D7,0xD3D7,0xCBB7,0xCBB7,0xCBB7,0xCBB7,0xBB96,0xBBB6,0xBBF7,0xBC38,0xC479,0xBC79,0xBC79,0xBC58,0xB458,0xBC58,0xBC38,0xBBF7,0xC3D7,0xBB76,0xBB55,0xC376,0xCB76,0xD396,0xCB56,0xD396,0xD376,0xD376,0xD397,0xCB96,0xC397,0xB3B7,0xA3B7,0x9418,0x8C9A,0x7CBA,0x6CDB,0x5CBB,0x64FC,0x5C9A,0x6CDA,0x84DA,0x8C99,0x9438,0x9BD6,0xA3D6,0xA3B6,0x9B95,0xA3D7,0x93F7,0x8C18,0x8C9A,0x8CDC,0x8D3E,0x851D,0x2A12,0x112F,0x2170,0x39B2,0x3991,0x3992,0x3991,0x3971,0x3991,0x3991,0x3971,0x3971,0x3971,0x3951,0x3151,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x3130,0x3130,0x3130,0x3130,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x210F,0x2930,0x290F,0x290F,0x2930,0x210F,0x290F,0x2930,0x292F,0x210F,0x2930,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2110,0x2110,0x2131,0x2131,0x1911,0x1111,0x1153,0x11B6,0x09B7,0x09D9,0x09D9,0x01DA,0x01FA,0x01DA,0x01DA,0x01B9,0x01F9,0x09F9,0x09D8,0x11B7,0x11B5,0x1173,0x10F1,0x1931,0x2151,0x2931,0x2110,0x210F,0x2930,0x2930,0x292F,0x212F,0x290F,0x290F,0x2910,0x2930,0x2910,0x2930,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2910,0x290F,0x2910,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2111,0x1912,0x1932,0x1134,0x1196,0x11D8,0x09F9,0x09F9,0x09F9,0x09D9,0x09D8,0x09B8,0x0156,0x0135,0x0135,0x0976,0x09B7,0x09D8,0x09F9,0x09D8,0x09D8,0x09B8,0x09B8,0x0977,0x0955,0x0955,0x0955,0x1176,0x0977,0x09D8,0x09D9,0x09D9,0x09D9,0x09D9,0x09D8,0x0976,0x1154,0x1932,0x2131,0x2110,0x2910,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x212F,0x2130,0x2110,0x2111,0x1912,0x1933,0x1155,0x1196,0x09B8,0x09F9,0x09F9,0x09FA,0x09D9,0x09D8,0x0997,0x0975,0x0955,0x0955,0x0996,0x09B8,0x09F9,0x09FA,0x09FA,0x09FA,0x09D9,0x09B8,0x0996,0x0955,0x0954,0x0954,0x0976,0x0997,0x09D9,0x09FA,0x09F9,0x0A1A,0x09D9,0x09B8,0x1196,0x1175,0x1134,0x0933,0x0974,0x1196,0x09D8,0x11F9,0x09F9,0x121A,0x09D9,0x09B8,0x0997,0x1196,0x0935,0x0114,0x0976,0x01B8,0x09F9,0x0A1A,0x09F9,0x01D9,0x09D8,0x09B7,0x1196,0x1175,0x0113,0x0935,0x11B7,0x09D8,0x09D9,0x09FA,0x09D9,0x09D9,0x09D9,0x11F9,0x11B7,0x1175,0x1133,0x1932,0x1931,0x1911,0x1932,0x1974,0x1196,0x11F8,0x09F9,0x01D9,0x01B9,0x01DA,0x01BA,0x01BA,0x01DA,0x01DA,0x01BA,0x01BA,0x09DA,0x09DA,0x11D9,0x11B7,0x1154,0x1133,0x1911,0x1911,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x292F,0x290F,0x2930,0x2930,0x210F,0x212F,0x2930,0x2930,0x2930,0x2930,0x212F,0x2130,0x212F,0x212F,0x2930,0x212F,0x210F,0x2930,0x210F,0x290F,0x2930,0x2930,0x290F,0x2930,0x290F,0x2930,0x2110,0x210F,0x212F,0x212F, + 0x2130,0x212F,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x290F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x290F,0x292F,0x292F,0x292F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x1910,0x1931,0x1931,0x1931,0x1952,0x1133,0x1133,0x1154,0x1176,0x11D7,0x11F8,0x1A19,0x19F8,0x19D7,0x1195,0x1154,0x1133,0x1932,0x2131,0x2131,0x2131,0x2130,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2110,0x2110,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2910,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x292F,0x2930,0x210F,0x210F,0x2110,0x2930,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x2930,0x210F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x292F,0x210F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x1952,0x1133,0x1154,0x1175,0x0997,0x11D8,0x09F9,0x09D9,0x09D9,0x01D9,0x09D9,0x01D9,0x09D9,0x11F9,0x11F8,0x19D7,0x1996,0x1974,0x1133,0x1912,0x1911,0x2111,0x2110,0x2110,0x2930,0x2910,0x290F,0x290F,0x210F,0x210F,0x2110,0x2130,0x212F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x292F,0x290F,0x210F,0x290F,0x210F,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2110,0x2110,0x2111,0x1931,0x1912,0x1933,0x1133,0x1175,0x19D7,0x2218,0x2218,0x19B6,0x1155,0x08F2,0x1112,0x1932,0x1932,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x1911,0x1911,0x1912,0x1132,0x1133,0x1154,0x1175,0x19B6,0x11B7,0x19F7,0x11F7,0x1A18,0x11F7,0x11D6,0x11B5,0x11B5,0x1173,0x1132,0x1931,0x1911,0x2131,0x2110,0x2110,0x2110,0x2110,0x2130,0x2930,0x212F,0x292F,0x292F,0x292F,0x290F,0x2910,0x28F0,0x28D0,0x3070,0x6114,0xCB1D,0xDADE,0xDA5D,0xE21E,0xEA1E,0xEA1F,0xF21F,0xF1FF,0xF1DF,0xF1FF,0xF1DF,0xF1FF,0xEA1F,0xEA1F,0xEA1E,0xE23E,0xDA3D,0xDA7D,0xDAFE,0xCB5E,0x4830,0x304F,0x30D0,0x28F0,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x2930,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x2930,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x290F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2930,0x210F,0x212F,0x212F,0x2110,0x2110,0x2131,0x2131,0x1932,0x1133,0x1A18,0x1A39,0x19F8,0x1176,0x1113,0x1932,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x2110,0x2130,0x2130,0x2131,0x1911,0x1112,0x19F7,0x1A18,0x19F8,0x1175,0x1112,0x1911,0x2111,0x2910,0x2110,0x2930,0x290F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x2930,0x3130,0x2930,0x2930,0x2930,0x3130,0x3130,0x3150,0x3151,0x3151,0x3151,0x3151,0x3131,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3971,0x3972,0x3972,0x3972,0x3972,0x3972,0x4192,0x4192,0x41B3,0x4193,0x4193,0x4193,0x4193,0x4993,0x49B3,0x51B3,0x51D3,0x51B3,0x51B2,0x59B2,0x59B2,0x6191,0x614F,0xA336,0xDC9B,0xDC59,0xDC59,0xDC58,0xDC38,0xDC17,0xDC37,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC16,0xDC17,0xDC17,0xDC16,0xDC16,0xDC16,0xDC16,0xDBF6,0xDC16,0xDC16,0xDBF6,0xDBF6,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDB95,0xDBB6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xD395,0xD396,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xDBD7,0xD3B7,0xD3B7,0xD3B7,0xCB96,0xCB96,0xCBD7,0xC3B6,0xBBD7,0xB3D7,0xAB96,0xBC38,0xBC58,0xBC58,0xB438,0xB438,0xBC38,0xBC17,0xC3F7,0xBBB6,0xC396,0xC376,0xC376,0xCB76,0xD376,0xCB76,0xCB56,0xCB76,0xCB97,0xCB96,0xC397,0xB397,0xA3B7,0x9418,0x949A,0x84BB,0x749A,0x74FC,0x7D3C,0x7CDA,0x7417,0x8C79,0xA4DA,0xA479,0x9BD6,0x9BD6,0x9BF7,0x8BD7,0x8438,0x849A,0x8D3C,0x8D5E,0x853E,0x42F5,0x110F,0x2991,0x31B2,0x39D2,0x39B2,0x3992,0x4192,0x4192,0x3991,0x3971,0x3971,0x3971,0x3971,0x3951,0x3951,0x3972,0x3951,0x3151,0x3151,0x3151,0x3171,0x3151,0x3151,0x3131,0x3131,0x3151,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x210F,0x210F,0x2910,0x290F,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x210F,0x2930,0x2930,0x210F,0x2130,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x2131,0x1911,0x1132,0x1154,0x19D7,0x11F9,0x09D9,0x01B9,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01D9,0x09F9,0x09F9,0x11D8,0x11D6,0x1174,0x08D1,0x1931,0x2952,0x2931,0x2130,0x2110,0x210F,0x292F,0x292F,0x212F,0x290F,0x2930,0x2110,0x2110,0x2910,0x2930,0x290F,0x210F,0x2930,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x210F,0x2110,0x2131,0x2111,0x2132,0x1932,0x1134,0x1196,0x11B7,0x09F9,0x09F9,0x09F9,0x09D9,0x09D8,0x0997,0x0156,0x0135,0x0135,0x0976,0x09B7,0x09D8,0x09D8,0x09B8,0x09B8,0x09D8,0x09B8,0x0976,0x0955,0x0955,0x0955,0x0976,0x0997,0x09D8,0x09D9,0x09D9,0x09D9,0x09D9,0x09B8,0x0975,0x1154,0x1953,0x2131,0x2110,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2111,0x1912,0x1933,0x1154,0x1196,0x09B8,0x09D9,0x09D9,0x09DA,0x09D9,0x09D8,0x0997,0x0976,0x0955,0x0955,0x0176,0x09B7,0x09F9,0x09FA,0x09FA,0x09FA,0x09D9,0x09B8,0x0976,0x0954,0x0954,0x0954,0x0975,0x09B7,0x09D9,0x09FA,0x0A1A,0x09F9,0x09D9,0x09B8,0x1196,0x1175,0x0934,0x0934,0x0955,0x0996,0x09D8,0x09F9,0x09F9,0x09F9,0x09D9,0x11D8,0x1197,0x1196,0x0914,0x0114,0x0976,0x09D8,0x09F9,0x01F9,0x01D9,0x01D9,0x09D9,0x09D8,0x11B6,0x1175,0x0113,0x0934,0x0997,0x09B8,0x09FA,0x09FA,0x09D9,0x01B9,0x09B9,0x09B8,0x11B7,0x1175,0x1153,0x1932,0x1111,0x1932,0x1932,0x1974,0x11B6,0x09D8,0x09F9,0x01D9,0x01D9,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01BA,0x01BA,0x09DA,0x09B9,0x11D9,0x1196,0x1154,0x1132,0x1931,0x2131,0x2150,0x2130,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2110,0x290F,0x210F,0x290F,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x212F,0x2930,0x2930,0x210F,0x212F,0x212F,0x2930,0x2130,0x212F,0x2130,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x292F,0x290F,0x2930,0x210F,0x2930,0x212F,0x212F,0x212F, + 0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1951,0x1932,0x1132,0x1133,0x1154,0x1196,0x11B7,0x19F8,0x1A39,0x19F8,0x19D7,0x1196,0x1174,0x1133,0x1912,0x1911,0x2131,0x2131,0x2131,0x2110,0x2110,0x2130,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2910,0x210F,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x2110,0x2110,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x292F,0x292F,0x290F,0x2930,0x290F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2131,0x2131,0x1931,0x1132,0x1154,0x1175,0x1196,0x11D8,0x11F9,0x11F9,0x09D9,0x09D9,0x09D9,0x09D8,0x09D8,0x11F8,0x11D7,0x19B7,0x1175,0x1954,0x1933,0x1912,0x1911,0x1911,0x2110,0x2130,0x2110,0x2930,0x2110,0x210F,0x2930,0x210F,0x2930,0x2110,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x212F,0x292F,0x292F,0x210F,0x292F,0x210F,0x210F,0x2910,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2132,0x1912,0x1112,0x1134,0x1175,0x19D7,0x2218,0x21F8,0x19D7,0x1154,0x0913,0x1112,0x1953,0x1952,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2111,0x1931,0x1931,0x2131,0x1931,0x1931,0x2131,0x2132,0x2131,0x1931,0x1931,0x2131,0x2131,0x2131,0x1911,0x2131,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1932,0x1953,0x1154,0x1195,0x1196,0x11B7,0x11D8,0x11D8,0x11F9,0x11F8,0x1219,0x11F8,0x11F7,0x11F7,0x11B6,0x1195,0x1173,0x1132,0x1931,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x212F,0x212F,0x210F,0x2910,0x28F0,0x28D0,0x2890,0x3850,0x81D7,0xD33E,0xDA9D,0xDA3D,0xEA3E,0xEA1E,0xE9FF,0xF1FF,0xF1DF,0xF1DF,0xF1DF,0xF9FF,0xF1FF,0xF1FF,0xE9FE,0xEA1E,0xEA1E,0xE23E,0xE27E,0xDABD,0xDB9F,0x60F3,0x384F,0x30B0,0x28F0,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x2910,0x210F,0x2910,0x2110,0x2910,0x290F,0x2930,0x2910,0x2930,0x210F,0x210F,0x290F,0x2930,0x212F,0x212F,0x2930,0x290F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x2110,0x2930,0x2110,0x2131,0x1932,0x1113,0x1A18,0x1A39,0x19D8,0x1196,0x1133,0x1932,0x1931,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2110,0x2130,0x2130,0x2131,0x1932,0x0912,0x19F7,0x1A18,0x19F8,0x1155,0x1113,0x1912,0x2111,0x2110,0x2930,0x2110,0x2930,0x292F,0x212F,0x212F,0x292F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3130,0x3130,0x3130,0x3130,0x3150,0x3151,0x3151,0x3151,0x3131,0x3151,0x3151,0x3151,0x3151,0x3971,0x3951,0x3971,0x3972,0x3972,0x4192,0x3972,0x3972,0x4192,0x4192,0x4193,0x4193,0x4193,0x4193,0x4192,0x4992,0x49B3,0x51D3,0x51D3,0x51B3,0x5192,0x59B2,0x59B1,0x61B1,0x696F,0xAB77,0xDC9B,0xDC79,0xDC59,0xDC38,0xDC17,0xDC17,0xDC37,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC16,0xDC17,0xDC16,0xDBF6,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBD6,0xDBD6,0xDBB6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDB96,0xD396,0xD396,0xDB96,0xDB96,0xDBB6,0xDB96,0xDB96,0xDB96,0xDB96,0xDBB7,0xD396,0xCBB7,0xCBD7,0xC3D7,0xB3B7,0xB3B7,0xB3D7,0xBC18,0xB418,0xB417,0xBC58,0xBC38,0xBC18,0xBC17,0xC3F7,0xC3D7,0xC396,0xC376,0xC356,0xCB76,0xD376,0xD376,0xD396,0xCB76,0xCB97,0xBB76,0xB397,0xA397,0xA439,0x947A,0x8C9A,0x84DB,0x84BB,0x84DB,0x8C99,0x9479,0x9C99,0xA499,0x9C38,0x9C58,0x9C58,0x8C58,0x8CBA,0x8D3C,0x959E,0x959F,0x6C5B,0x1170,0x2191,0x31D2,0x39D2,0x41B2,0x39B2,0x4192,0x4192,0x4192,0x4172,0x3971,0x3972,0x3972,0x3971,0x3951,0x3972,0x3951,0x3951,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x3150,0x3150,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x210F,0x2910,0x212F,0x2930,0x210F,0x210F,0x2930,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x2152,0x1932,0x1132,0x1154,0x19D7,0x11F9,0x09D9,0x01BA,0x01DA,0x01FA,0x01FB,0x01DA,0x01B9,0x01DA,0x09D9,0x09D9,0x09D8,0x19D7,0x1995,0x10F2,0x1911,0x2952,0x2131,0x2130,0x2110,0x2130,0x2130,0x212F,0x292F,0x2930,0x2910,0x2910,0x2110,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x212F,0x2930,0x2130,0x2110,0x2111,0x1912,0x1932,0x1154,0x1196,0x11D8,0x09D8,0x09F9,0x09F9,0x09F9,0x09F9,0x0997,0x0156,0x0135,0x0135,0x0996,0x09B7,0x09D8,0x09D8,0x09D8,0x09D8,0x09B8,0x09B8,0x0997,0x0155,0x0955,0x0955,0x0976,0x11B7,0x09B8,0x09D9,0x09D9,0x09D9,0x09D9,0x09D8,0x0976,0x1154,0x1932,0x2131,0x2131,0x2110,0x210F,0x290F,0x292F,0x210F,0x292F,0x212F,0x210F,0x2110,0x2110,0x2111,0x1932,0x1933,0x1154,0x1196,0x09B8,0x09D9,0x09D9,0x09FA,0x09F9,0x09B8,0x0997,0x0976,0x0955,0x0155,0x0996,0x09B7,0x09D9,0x0A1A,0x09FA,0x09FA,0x09D9,0x09B8,0x1196,0x0955,0x0954,0x0955,0x0976,0x09B7,0x09D9,0x0A1A,0x09FA,0x0A1A,0x09D9,0x09B8,0x1196,0x1175,0x1154,0x0934,0x0955,0x0996,0x09D8,0x11F9,0x09F9,0x121A,0x09D9,0x11D8,0x11B7,0x1196,0x0914,0x0934,0x0976,0x09D8,0x09F9,0x09FA,0x01FA,0x09F9,0x09D9,0x09D8,0x1196,0x1175,0x0914,0x0934,0x0997,0x09D8,0x09F9,0x09DA,0x09DA,0x09B9,0x09B9,0x09B8,0x0996,0x1195,0x1153,0x1932,0x1932,0x1932,0x1932,0x1974,0x11D7,0x11F8,0x09D9,0x01DA,0x01B9,0x01DA,0x01FB,0x01FA,0x01DA,0x01BA,0x01DA,0x09DA,0x09BA,0x09B9,0x11B8,0x1175,0x1133,0x1932,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2930,0x212F,0x2130,0x2110,0x2130,0x2110,0x2110,0x290F,0x210F,0x290F,0x210F,0x212F,0x290F,0x290F,0x210F,0x2930,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2110,0x2110,0x290F,0x290F,0x2930,0x290F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2930,0x212F, + 0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x290F,0x290F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2910,0x2910,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2151,0x1952,0x1932,0x1132,0x1133,0x1155,0x1196,0x11D8,0x1A19,0x1A19,0x19F8,0x19D7,0x1196,0x1154,0x1133,0x1912,0x1912,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2910,0x210F,0x2110,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x2130,0x2930,0x2110,0x2110,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x292F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x212F,0x212F,0x292F,0x2930,0x210F,0x210F,0x212F,0x212F,0x290F,0x292F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1153,0x1175,0x1196,0x11D8,0x11F8,0x11F9,0x09D9,0x09D9,0x09B8,0x11D8,0x11B8,0x11B7,0x1196,0x1175,0x1975,0x1953,0x1112,0x1912,0x1912,0x1911,0x2131,0x2131,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x2130,0x2130,0x210F,0x2110,0x2130,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x292F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1912,0x1133,0x1133,0x1975,0x19D6,0x21F7,0x21F7,0x21D7,0x1995,0x0913,0x0912,0x10F2,0x1112,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x10F1,0x1111,0x1911,0x1111,0x1111,0x1111,0x1111,0x1111,0x1932,0x1932,0x1912,0x1912,0x1111,0x1112,0x10F1,0x10F1,0x1912,0x1911,0x1911,0x1912,0x10F1,0x10F1,0x10F1,0x10F2,0x10F2,0x10F2,0x10F2,0x1112,0x1113,0x0934,0x0955,0x0976,0x0997,0x09B8,0x09B8,0x09D9,0x09D9,0x09F9,0x09F9,0x09F9,0x1219,0x1218,0x11D7,0x11B6,0x1194,0x1152,0x1111,0x1931,0x2151,0x2131,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x292F,0x290F,0x2930,0x2910,0x28D0,0x308F,0x3830,0x9219,0xD2FE,0xDA5D,0xE25E,0xF25F,0xEA1F,0xF1FF,0xF1FF,0xF1FF,0xF1DF,0xF9DF,0xF9FF,0xF9FF,0xF1FF,0xF1FF,0xF21F,0xF23F,0xF25F,0xE25E,0xDA7D,0xD31E,0x7135,0x380F,0x3090,0x28D0,0x2910,0x20EF,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x292F,0x210F,0x210F,0x2930,0x212F,0x2930,0x212F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2131,0x1912,0x1113,0x19F7,0x1A39,0x19D8,0x1176,0x1133,0x1932,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x1931,0x1932,0x1133,0x19F7,0x1A18,0x1A18,0x1175,0x1113,0x1912,0x2111,0x2110,0x2930,0x2930,0x290F,0x292F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3130,0x3150,0x3130,0x3150,0x3150,0x3130,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3152,0x3151,0x3151,0x3972,0x3972,0x3972,0x3972,0x3972,0x3952,0x3972,0x3992,0x4192,0x4192,0x4193,0x4192,0x4193,0x4192,0x49B3,0x49B3,0x51D3,0x51D3,0x51B3,0x51B2,0x51B2,0x5992,0x5991,0x596F,0x6990,0xBBD8,0xDCBB,0xDC79,0xDC58,0xD417,0xDC17,0xDC37,0xDC38,0xDC17,0xDC17,0xDC37,0xDC17,0xDC17,0xDC17,0xDC17,0xDC16,0xDC17,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xD395,0xDB96,0xDB96,0xDBB6,0xDBB6,0xDBB6,0xDB95,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xD376,0xDB96,0xDB76,0xDB76,0xDB76,0xDB76,0xD396,0xD396,0xD396,0xCBB7,0xCBB7,0xC3D7,0xC3B7,0xBBB6,0xB396,0xBBF7,0xBBF7,0xBBF7,0xB3F7,0xBC18,0xBC38,0xBC18,0xBBF7,0xBBF7,0xBBB7,0xC396,0xC355,0xC336,0xD376,0xCB76,0xCB76,0xCB97,0xCB97,0xBB76,0xB376,0xAB97,0xA418,0x9C5A,0x949A,0x8C7A,0x8459,0x8438,0x83D7,0x9479,0x9C99,0x9C99,0x9499,0x94DA,0x953B,0x8D3C,0x8D7D,0x8D5D,0x74BC,0x19D1,0x21B1,0x31D2,0x41F3,0x41D2,0x41B2,0x41D3,0x4192,0x4192,0x4192,0x4192,0x4192,0x4172,0x3971,0x3972,0x3972,0x3992,0x3972,0x3972,0x3951,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x3130,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x2930,0x210F,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x2110,0x2110,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2131,0x2131,0x1912,0x1112,0x1175,0x19F8,0x11F9,0x09D9,0x0199,0x01BA,0x01DA,0x01FA,0x01DA,0x01DA,0x01B9,0x09DA,0x09B9,0x09B8,0x11D7,0x21F6,0x08F2,0x1911,0x2152,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x212F,0x2930,0x2910,0x2930,0x210F,0x292F,0x2930,0x290F,0x210F,0x210F,0x2910,0x2910,0x210F,0x290F,0x2910,0x210F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2910,0x2930,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2130,0x2110,0x2110,0x2131,0x1912,0x1932,0x1154,0x1196,0x11D8,0x09D8,0x09D9,0x09D9,0x09F9,0x09D9,0x09B8,0x0176,0x0135,0x0135,0x0976,0x09B7,0x09F8,0x09D9,0x09D8,0x09D8,0x09B8,0x09B8,0x0997,0x0155,0x0955,0x0135,0x0976,0x0997,0x09B8,0x09D9,0x09D8,0x09D8,0x09D8,0x09D8,0x0995,0x0933,0x1132,0x1931,0x2131,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2111,0x1911,0x1933,0x1154,0x1176,0x09B8,0x09F9,0x09F9,0x09F9,0x09D9,0x09D8,0x09B7,0x0956,0x0955,0x0155,0x0176,0x09B7,0x09D9,0x09FA,0x09FA,0x09D9,0x09D9,0x09B8,0x0976,0x0954,0x0934,0x0955,0x0976,0x0997,0x09B8,0x09F9,0x09F9,0x09F9,0x09D8,0x09B7,0x11B6,0x1175,0x1154,0x0934,0x0975,0x0996,0x09D8,0x09F9,0x09F9,0x121A,0x09D9,0x09B8,0x11B7,0x1196,0x0934,0x0114,0x0176,0x09D8,0x09F9,0x09FA,0x09FA,0x09D9,0x09D9,0x09B8,0x11B7,0x1175,0x0914,0x0955,0x0997,0x09B8,0x09D9,0x09FA,0x09DA,0x09D9,0x09B9,0x09B8,0x0996,0x1154,0x1133,0x1132,0x1932,0x1931,0x1932,0x1954,0x11B6,0x11F8,0x09F9,0x01D9,0x0199,0x01BA,0x01DA,0x01DA,0x01BA,0x01BA,0x01BA,0x09DA,0x09D9,0x11D9,0x1197,0x1155,0x1112,0x1931,0x1911,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2930,0x292F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x2110,0x2110,0x2930,0x2930,0x290F,0x290F,0x210F,0x2110,0x210F,0x210F,0x2910,0x210F,0x290F,0x290F,0x210F,0x2910,0x210F,0x210F,0x290F,0x2930,0x2930,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2910,0x2930,0x2930,0x290F,0x210F,0x292F, + 0x212F,0x212F,0x210F,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x2910,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2150,0x1931,0x1931,0x1932,0x1132,0x1154,0x1175,0x11B7,0x11D8,0x1A19,0x1A19,0x19F8,0x11D7,0x1196,0x1175,0x1133,0x1932,0x1912,0x1931,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x2110,0x2930,0x212F,0x2930,0x290F,0x290F,0x2930,0x292F,0x210F,0x210F,0x292F,0x212F,0x210F,0x2930,0x2130,0x212F,0x2930,0x210F,0x212F,0x290F,0x290F,0x210F,0x290F,0x292F,0x210F,0x292F,0x212F,0x292F,0x212F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x292F,0x212F,0x292F,0x210F,0x290F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x210F,0x210F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2131,0x1931,0x1932,0x1153,0x1174,0x11B6,0x11D7,0x11F8,0x1219,0x11F8,0x11D8,0x11D8,0x11B7,0x11B7,0x1196,0x1155,0x1154,0x1133,0x1132,0x1912,0x1912,0x1911,0x1911,0x2131,0x2131,0x2130,0x2930,0x2910,0x210F,0x210F,0x210F,0x2910,0x2930,0x210F,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2110,0x2930,0x292F,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1932,0x1932,0x1132,0x1153,0x1174,0x19D6,0x21F7,0x21F7,0x21D7,0x21B6,0x1154,0x0913,0x1113,0x0912,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x10F2,0x10F2,0x08F2,0x08F2,0x1112,0x1112,0x1112,0x1112,0x10F2,0x10F2,0x1112,0x1112,0x10F2,0x1112,0x10F2,0x1112,0x1112,0x10F2,0x10F2,0x10F2,0x10F2,0x1112,0x1113,0x1133,0x1133,0x1134,0x1154,0x1175,0x0976,0x09B7,0x09D8,0x09D9,0x09D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x09D9,0x09F8,0x11D8,0x11B7,0x19B6,0x1994,0x1112,0x1931,0x1931,0x2130,0x1910,0x2130,0x2130,0x2130,0x210F,0x2930,0x212F,0x2930,0x2910,0x3110,0x28D0,0x286F,0x380F,0x9219,0xD2FE,0xDA7D,0xEA5E,0xEA3E,0xF21F,0xF21F,0xFA1F,0xF9FF,0xF9FF,0xF9FF,0xF9DF,0xF9FF,0xF9FF,0xF1FF,0xFA1F,0xF23F,0xEA1E,0xEA5E,0xDA7D,0xDB1F,0x89B7,0x380F,0x3090,0x30D0,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x2930,0x2910,0x210F,0x290F,0x290F,0x210F,0x2910,0x2110,0x210F,0x2110,0x2110,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x212F,0x2130,0x210F,0x212F,0x2130,0x210F,0x210F,0x2930,0x2910,0x2110,0x212F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1932,0x1113,0x1A18,0x1A19,0x19D8,0x1176,0x1133,0x1932,0x2131,0x2110,0x2130,0x212F,0x210F,0x2130,0x212F,0x2950,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x1931,0x1932,0x1113,0x19F7,0x1A18,0x19F8,0x1175,0x1113,0x1912,0x2131,0x2131,0x2130,0x2930,0x290F,0x292F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x2930,0x3150,0x3130,0x3150,0x3130,0x3150,0x3150,0x3151,0x3151,0x3171,0x3151,0x3151,0x3171,0x3151,0x3971,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4993,0x49B3,0x49B3,0x51D3,0x51B3,0x51B3,0x5192,0x5192,0x5991,0x5991,0x592F,0x7A32,0xCC59,0xDCBB,0xDC79,0xD438,0xDC38,0xDC38,0xDC17,0xDC37,0xDC37,0xDBF7,0xDC17,0xDC17,0xDC17,0xDC17,0xDBF6,0xDC17,0xDC16,0xDC16,0xDBF6,0xDBF6,0xDC16,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBD6,0xDBB6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDBB6,0xDBB6,0xDB96,0xDB96,0xDBB6,0xDB96,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDB96,0xDB96,0xDB76,0xDB76,0xDB76,0xDB96,0xD376,0xDB96,0xD376,0xD396,0xCB96,0xCB96,0xCB96,0xC3B6,0xC3B7,0xBB96,0xBBB6,0xBBD7,0xBBF7,0xBBF8,0xB3F7,0xBC38,0xBC18,0xBC17,0xBBF7,0xC3F8,0xC396,0xC336,0xCB56,0xCB76,0xCB97,0xCB76,0xCB76,0xCB76,0xC376,0xB376,0xB3D8,0xA3F8,0xA459,0x9C7A,0x9459,0x8C39,0x8C38,0x8417,0x8C38,0x8C79,0x94BA,0x951B,0x955D,0x957D,0x959E,0x8D3D,0x3252,0x2190,0x31B1,0x39D2,0x49F3,0x41B2,0x49D2,0x49B2,0x49B2,0x4192,0x4192,0x4172,0x4172,0x4172,0x4192,0x3972,0x3972,0x3972,0x3972,0x3992,0x3972,0x3151,0x3972,0x3151,0x3151,0x3171,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3130,0x3130,0x3150,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x290F,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x2910,0x2910,0x2930,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x2110,0x2110,0x2131,0x2111,0x1911,0x1132,0x1995,0x19F8,0x1219,0x09DA,0x01BA,0x01BA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x09DA,0x09D9,0x11D8,0x11D7,0x21F6,0x1112,0x1111,0x2152,0x2131,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x210F,0x2930,0x2930,0x290F,0x292F,0x212F,0x210F,0x2930,0x212F,0x2110,0x2930,0x2910,0x210F,0x2930,0x2910,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x292F,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x292F,0x292F,0x210F,0x290F,0x212F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1912,0x1933,0x1154,0x1196,0x11F8,0x09D8,0x09D9,0x09F9,0x01D9,0x09D8,0x09B8,0x0156,0x0155,0x0135,0x0976,0x11D8,0x09D8,0x09F9,0x09D8,0x09D8,0x09B8,0x09D8,0x0996,0x0155,0x0955,0x0975,0x0976,0x0997,0x09D8,0x09D9,0x09D8,0x09D8,0x09D8,0x09D7,0x0995,0x0953,0x1132,0x1951,0x2131,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2131,0x1932,0x1933,0x1154,0x1196,0x11D8,0x09D9,0x09D9,0x09F9,0x09D9,0x11D8,0x0997,0x0955,0x0955,0x0975,0x0976,0x09B7,0x09F9,0x09F9,0x09FA,0x11FA,0x11F9,0x11B8,0x0996,0x0954,0x0954,0x0955,0x0976,0x0997,0x09D9,0x09F9,0x09F9,0x09F9,0x09D8,0x09B7,0x1196,0x1175,0x0954,0x0954,0x0975,0x0996,0x11D8,0x09F9,0x09F9,0x121A,0x09D8,0x09B8,0x0997,0x1196,0x0934,0x0134,0x0976,0x09D8,0x09F9,0x09F9,0x09F9,0x09F9,0x09D9,0x09B8,0x1196,0x1175,0x0914,0x0934,0x0997,0x09B8,0x09D9,0x09FA,0x09DA,0x09D9,0x09D9,0x09B8,0x1196,0x1154,0x1153,0x1932,0x1911,0x1931,0x1932,0x1953,0x1175,0x11D8,0x09F9,0x01D9,0x01B9,0x01B9,0x01B9,0x01BA,0x01BA,0x01B9,0x01B9,0x09B9,0x09D9,0x11D8,0x1196,0x1154,0x1932,0x1931,0x1931,0x2110,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x210F,0x2910,0x210F,0x210F,0x290F,0x290F,0x2110,0x2110,0x2910,0x2910,0x210F,0x2930,0x2930,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x2910,0x290F,0x2930,0x292F,0x292F, + 0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2110,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x2930,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x210F,0x2930,0x210F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x2930,0x2130,0x2110,0x2110,0x2110,0x2910,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2150,0x2130,0x2151,0x2152,0x1932,0x1132,0x1134,0x1175,0x11B6,0x11D8,0x1A18,0x19F8,0x19F8,0x11D7,0x11B6,0x1154,0x1133,0x1132,0x1932,0x1931,0x2131,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x2130,0x2930,0x292F,0x210F,0x210F,0x290F,0x290F,0x2930,0x292F,0x2930,0x292F,0x2930,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x292F,0x292F,0x212F,0x292F,0x292F,0x212F,0x210F,0x292F,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x292F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x292F,0x292F,0x292F,0x290F,0x290F,0x212F,0x212F,0x292F,0x212F,0x292F,0x212F,0x2930,0x2130,0x2130,0x212F,0x210F,0x290F,0x212F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1111,0x1133,0x1174,0x1196,0x11D7,0x11F8,0x11F8,0x1219,0x1219,0x11D8,0x11B7,0x1175,0x1154,0x1154,0x1133,0x1132,0x1112,0x1911,0x1911,0x1911,0x1911,0x2131,0x2110,0x2130,0x2130,0x2930,0x2910,0x2910,0x210F,0x2110,0x210F,0x210F,0x290F,0x2910,0x2910,0x2930,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2131,0x2152,0x1932,0x1912,0x1132,0x1133,0x1995,0x21D6,0x21F7,0x21D7,0x1996,0x21B6,0x21D6,0x21D6,0x21D5,0x21B5,0x19B5,0x1994,0x1994,0x1994,0x1994,0x1974,0x1974,0x1994,0x1974,0x1974,0x1974,0x1974,0x1974,0x1994,0x1994,0x1974,0x1994,0x1994,0x1995,0x1995,0x1994,0x1994,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x21D6,0x21D6,0x19D6,0x19D7,0x19F7,0x11D7,0x11F8,0x09F8,0x09F9,0x01D9,0x01D9,0x01DA,0x01D9,0x01DA,0x01DA,0x01B9,0x01D9,0x09D9,0x09D8,0x11D8,0x19D7,0x19B5,0x1953,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x2930,0x2930,0x2910,0x28F0,0x28D0,0x3090,0x3830,0x9A39,0xDB1E,0xDA7D,0xE23E,0xEA1E,0xF1FE,0xF1FF,0xF9FF,0xF9DF,0xF9FF,0xF9DF,0xF9DF,0xF9FF,0xF9FF,0xF9FF,0xF1FF,0xF1FE,0xEA1E,0xE23E,0xDA7E,0xDB3F,0x91F8,0x380F,0x306F,0x28D0,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2930,0x2930,0x210F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x210F,0x2110,0x210F,0x290F,0x210F,0x212F,0x212F,0x2110,0x2130,0x2131,0x1932,0x1133,0x2218,0x1A39,0x19F8,0x1176,0x1113,0x1911,0x2111,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x2110,0x2930,0x2910,0x2130,0x2110,0x2131,0x1932,0x1133,0x19F7,0x1A18,0x19F8,0x1175,0x1112,0x1932,0x2111,0x2110,0x2930,0x2930,0x292F,0x292F,0x292F,0x212F,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x2930,0x2910,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x3150,0x3130,0x3150,0x3150,0x3151,0x3151,0x3151,0x3151,0x3171,0x3171,0x3972,0x3971,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x4172,0x4193,0x4993,0x49B3,0x49B3,0x49B3,0x4992,0x4992,0x5192,0x5192,0x5171,0x5171,0x5991,0x5970,0x616F,0x9B15,0xE51D,0xDC9A,0xDC79,0xD438,0xDC38,0xDC38,0xDC37,0xDC37,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDBF6,0xDBF6,0xDBF6,0xDC17,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xD3D6,0xDBD6,0xDBD6,0xDBD6,0xD3D6,0xDBD6,0xDBD6,0xDBB6,0xD3B6,0xD3B6,0xDBB6,0xDBB6,0xD3B6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xD396,0xDBB6,0xD396,0xDB96,0xDB96,0xDBB6,0xD396,0xD376,0xD376,0xDB96,0xDB76,0xDB96,0xDB96,0xDB76,0xDB96,0xDB76,0xDB96,0xD376,0xD376,0xD376,0xD396,0xD396,0xCB96,0xCB96,0xCB96,0xC396,0xBB96,0xBB96,0xBBB7,0xBBF7,0xB3D7,0xB3D7,0xBC18,0xBBF8,0xB3B7,0xBBD7,0xC3B7,0xC356,0xC356,0xC356,0xCB76,0xCB56,0xCB56,0xC376,0xBB56,0xB356,0xB3D7,0xAC39,0xA439,0x9C59,0x9439,0x8C59,0x94BA,0x8438,0x5AF3,0x7C39,0x8CFB,0x8CFC,0x955D,0x8CDC,0x52F5,0x31B0,0x41D1,0x49F2,0x51F3,0x49B2,0x4992,0x4992,0x4992,0x4972,0x4992,0x49B3,0x4172,0x4172,0x4172,0x3972,0x3972,0x4192,0x3972,0x3972,0x3971,0x3972,0x3971,0x3971,0x3951,0x3951,0x3151,0x3151,0x3151,0x3151,0x3131,0x3151,0x3131,0x3131,0x3130,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x290F,0x2930,0x2930,0x2930,0x2110,0x210F,0x212F,0x2930,0x2930,0x2930,0x210F,0x212F,0x210F,0x2930,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1132,0x1995,0x19F8,0x11F9,0x09DA,0x01DA,0x01BA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x09B9,0x09B9,0x11B8,0x11D7,0x21D6,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x2110,0x210F,0x212F,0x212F,0x2130,0x212F,0x2930,0x2930,0x212F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x212F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2930,0x2910,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x2930,0x2130,0x2130,0x2110,0x2131,0x2131,0x1932,0x1933,0x1154,0x1175,0x11D7,0x09D8,0x09D9,0x09F9,0x09D8,0x09D8,0x0197,0x0156,0x0155,0x0135,0x0976,0x09B7,0x09D8,0x01D8,0x09D8,0x09D8,0x09D8,0x09D8,0x0997,0x0155,0x0135,0x0134,0x0976,0x0997,0x09B8,0x09D8,0x09D8,0x09F8,0x09F8,0x09D7,0x0995,0x1154,0x1952,0x1931,0x1931,0x2130,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1932,0x1933,0x1154,0x1196,0x11D8,0x09D9,0x09D9,0x09F9,0x09D9,0x09B8,0x0997,0x0955,0x0935,0x0955,0x0156,0x0997,0x09F9,0x09F9,0x09D9,0x09D9,0x09B8,0x0997,0x1196,0x0955,0x0974,0x0955,0x0976,0x0997,0x09D9,0x09F9,0x09F9,0x09F9,0x09B8,0x0997,0x1196,0x1175,0x0934,0x0954,0x0975,0x0996,0x09D8,0x09D8,0x1219,0x09F9,0x11D9,0x09B8,0x11B7,0x1196,0x0934,0x0134,0x0976,0x09D8,0x09F9,0x09F9,0x01D9,0x09D9,0x09B8,0x0997,0x1196,0x1175,0x0934,0x0934,0x0996,0x09B8,0x09F9,0x09FA,0x09D9,0x09D9,0x09B9,0x09B8,0x1196,0x1175,0x1953,0x1932,0x1931,0x1911,0x1912,0x1933,0x1155,0x11B7,0x09D8,0x09D9,0x01B9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x09F9,0x09F9,0x11D8,0x11B7,0x19B6,0x1953,0x1932,0x1931,0x2131,0x2130,0x2130,0x210F,0x2110,0x210F,0x212F,0x212F,0x2930,0x2930,0x212F,0x210F,0x210F,0x2930,0x2130,0x2110,0x2930,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x210F,0x2930,0x2110,0x2930,0x290F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x2930,0x2930, + 0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x210F,0x2930,0x290F,0x290F,0x292F,0x212F,0x290F,0x2930,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x292F,0x290F,0x212F,0x212F,0x2930,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x292F,0x210F,0x292F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2131,0x2151,0x1911,0x1932,0x1132,0x1154,0x1175,0x11B6,0x11D7,0x1A19,0x1A19,0x11F8,0x11F8,0x11B6,0x1174,0x1153,0x1132,0x1911,0x2131,0x2111,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x212F,0x292F,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x212F,0x212F,0x292F,0x292F,0x212F,0x292F,0x290F,0x292F,0x210F,0x292F,0x212F,0x210F,0x292F,0x212F,0x210F,0x212F,0x210F,0x210F,0x292F,0x290F,0x292F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x292F,0x212F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x292F,0x210F,0x292F,0x292F,0x292F,0x212F,0x2130,0x2130,0x2130,0x210F,0x290F,0x290F,0x292F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1133,0x1174,0x1195,0x11B7,0x11F8,0x1A19,0x1A19,0x11F8,0x19F8,0x11B6,0x1175,0x1154,0x1154,0x1112,0x1112,0x1912,0x1911,0x1911,0x1911,0x2110,0x2110,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x2930,0x2910,0x210F,0x2910,0x210F,0x2910,0x2930,0x292F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x212F,0x210F,0x2110,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x2131,0x1931,0x1931,0x1132,0x1133,0x1974,0x21B6,0x21D6,0x21B6,0x21B6,0x21D6,0x2A17,0x2A17,0x2A17,0x2A37,0x3237,0x3237,0x3257,0x3258,0x3257,0x3258,0x3258,0x3258,0x3237,0x3257,0x3258,0x3237,0x3237,0x3237,0x3237,0x2A37,0x2A37,0x3237,0x2A37,0x2A37,0x2A16,0x2A37,0x2A37,0x2A37,0x2A17,0x2A37,0x2217,0x2217,0x21F7,0x19F7,0x19F7,0x19F7,0x11D8,0x11F8,0x09D8,0x09F9,0x01D9,0x01D9,0x01DA,0x01DA,0x01BA,0x01DA,0x0199,0x01DA,0x09D9,0x09B8,0x11D8,0x11B7,0x19D6,0x1133,0x1911,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x290F,0x2910,0x2910,0x28F0,0x28D0,0x3090,0x3830,0x9239,0xD33E,0xDA9D,0xE25E,0xEA3F,0xF21F,0xF1FF,0xF9FF,0xF9FF,0xF9FF,0xF9FF,0xF9DF,0xF9DF,0xF9FF,0xF9FF,0xF9FF,0xF1FE,0xEA1E,0xEA3E,0xE29E,0xDB5F,0x89F8,0x382F,0x3090,0x28CF,0x28EF,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x290F,0x2930,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x210F,0x2130,0x2110,0x2910,0x290F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1911,0x1112,0x2218,0x1A39,0x19F8,0x1176,0x1113,0x1932,0x2131,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x2130,0x210F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2131,0x2131,0x1912,0x1113,0x19D7,0x2219,0x19D7,0x1196,0x1112,0x1932,0x2131,0x2130,0x2130,0x212F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x3150,0x3150,0x3150,0x3151,0x3151,0x3151,0x3151,0x3171,0x3171,0x3972,0x3972,0x3971,0x3972,0x3972,0x3972,0x4192,0x3972,0x3972,0x3972,0x3972,0x4193,0x4192,0x49B3,0x49B3,0x4993,0x49B3,0x49B2,0x5192,0x5192,0x5172,0x5151,0x5971,0x5991,0x594F,0x71D0,0xCC5A,0xDCDB,0xDC7A,0xDC79,0xDC58,0xDC38,0xD417,0xDC17,0xDC37,0xDC37,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC16,0xDBF6,0xDC17,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDC17,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBF6,0xD3D6,0xDBD6,0xD3D6,0xD3D6,0xD3D6,0xDBD6,0xDBD6,0xD3D6,0xD3B6,0xD3B6,0xD3B6,0xD3D6,0xD3B6,0xDBD6,0xD3B6,0xD3B6,0xD3B6,0xDBB6,0xD3B6,0xD3B6,0xD396,0xDBB6,0xDB96,0xD396,0xD375,0xD376,0xDB96,0xDB96,0xDB76,0xDB76,0xDB76,0xDB76,0xDB96,0xDB76,0xDB76,0xD376,0xD376,0xD396,0xD376,0xD396,0xD376,0xD396,0xCB96,0xCB96,0xC397,0xBB76,0xBBB7,0xBBD7,0xBBD7,0xB3D7,0xB3D7,0xB3B7,0xBBB7,0xBBB7,0xC3B7,0xBB76,0xC397,0xC376,0xC356,0xCB76,0xC335,0xCB76,0xBB76,0xB376,0xB3D7,0xB459,0xA47A,0x9459,0x8C7A,0x94DB,0x8CBA,0x7C39,0x5314,0x5B76,0x847A,0x849A,0x6B76,0x6B15,0x6294,0x51B0,0x494F,0x5191,0x5192,0x5191,0x5171,0x5192,0x4992,0x4972,0x4992,0x4992,0x4172,0x4192,0x4192,0x4172,0x4172,0x4192,0x3972,0x3972,0x3972,0x3951,0x3972,0x3952,0x3972,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3131,0x3131,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x1911,0x1112,0x1974,0x19D7,0x11B8,0x09D9,0x09DA,0x01BA,0x01BA,0x01DA,0x01FB,0x09FA,0x01DA,0x09B9,0x11D9,0x11B8,0x19D7,0x21D6,0x1112,0x1911,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x212F,0x210F,0x212F,0x2130,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x2110,0x2130,0x2130,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2930,0x210F,0x210F,0x2910,0x290F,0x290F,0x210F,0x290F,0x210F,0x212F,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x290F,0x290F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x1931,0x1932,0x1132,0x1154,0x1195,0x11D7,0x09F8,0x09F9,0x09F9,0x09D8,0x09D8,0x09B7,0x0176,0x0135,0x0135,0x0976,0x0997,0x09F8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D7,0x0996,0x0155,0x0134,0x0134,0x0975,0x09B7,0x09B8,0x09D8,0x09D8,0x09F8,0x09F8,0x11D7,0x0995,0x1154,0x1153,0x1931,0x1931,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1932,0x1953,0x1154,0x1196,0x11D8,0x11D9,0x09D9,0x09D9,0x11D9,0x09B8,0x0996,0x0955,0x0955,0x0935,0x0976,0x0997,0x09F9,0x09F9,0x09F9,0x09F9,0x11D9,0x11B8,0x0996,0x0975,0x0954,0x0975,0x0976,0x0997,0x09D8,0x09F9,0x09F9,0x09F9,0x11D8,0x11B7,0x1196,0x1175,0x1154,0x0934,0x0975,0x0996,0x09D8,0x09F9,0x09F9,0x1219,0x11F9,0x09B7,0x0996,0x1196,0x0934,0x0934,0x0976,0x09B8,0x09F9,0x09F9,0x09F9,0x09D9,0x09D8,0x0997,0x1196,0x1175,0x0934,0x0934,0x0976,0x09D8,0x09D9,0x09D9,0x09FA,0x09D9,0x09B8,0x11B8,0x1196,0x1174,0x1953,0x1932,0x1911,0x1911,0x1932,0x1932,0x1975,0x11B6,0x11D8,0x09D9,0x09D9,0x09D8,0x01B8,0x09D9,0x01D8,0x09F8,0x09F8,0x11D8,0x19F7,0x19B6,0x1154,0x1933,0x1931,0x1931,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x290F,0x290F,0x210F,0x2110,0x290F,0x290F,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930, + 0x212F,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x2930,0x290F,0x290F,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2930,0x290F,0x210F,0x290F,0x2110,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x2930,0x2930,0x292F,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x2110,0x2130,0x2110,0x2110,0x1911,0x1911,0x1932,0x1154,0x1175,0x1196,0x11D7,0x11F8,0x1A18,0x11D7,0x11D7,0x11B6,0x0974,0x1153,0x1132,0x1931,0x1931,0x1910,0x1910,0x2130,0x2130,0x2150,0x2930,0x2130,0x2930,0x210F,0x210F,0x290F,0x210F,0x290F,0x292F,0x292F,0x292F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x210F,0x290F,0x292F,0x210F,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x290F,0x210F,0x292F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x210F,0x290F,0x292F,0x292F,0x292F,0x2930,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1932,0x1133,0x1154,0x1175,0x11B7,0x11D8,0x11F9,0x11F8,0x19F8,0x11B7,0x1196,0x1175,0x1154,0x1953,0x1132,0x1111,0x1911,0x1931,0x2131,0x2151,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2930,0x2910,0x2110,0x210F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x2151,0x1931,0x1932,0x1132,0x1974,0x1995,0x21D7,0x21D7,0x21F6,0x21D6,0x21D6,0x21D6,0x21F6,0x21F6,0x29F6,0x21F6,0x2A16,0x2A16,0x29F6,0x29F6,0x29F6,0x29F6,0x29F6,0x29F6,0x29F6,0x29F6,0x2A16,0x21D6,0x21F6,0x29F6,0x29F6,0x21F6,0x21F6,0x29F6,0x29F6,0x21F6,0x21F6,0x21F6,0x21F6,0x19D6,0x21F6,0x21F7,0x19D7,0x11B7,0x11B7,0x09B7,0x09D8,0x09D8,0x01D9,0x01D9,0x01DA,0x01DA,0x01BA,0x01BA,0x01DB,0x01DB,0x01BA,0x09B9,0x09B9,0x11D8,0x19D7,0x19B6,0x1132,0x1932,0x1931,0x1931,0x1910,0x2130,0x210F,0x2130,0x210F,0x210F,0x2910,0x210F,0x2910,0x28F0,0x28D0,0x3090,0x3850,0x89F8,0xCB1E,0xDA9D,0xE27E,0xEA3F,0xF23F,0xFA3F,0xF9FF,0xF9FF,0xF9DF,0xF9FF,0xF9FF,0xF9FF,0xF9DF,0xF1FF,0xFA1F,0xF23F,0xEA3E,0xE23E,0xDA9E,0xD31E,0x7976,0x3850,0x30B0,0x28CF,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x210F,0x2930,0x2930,0x290F,0x210F,0x290F,0x2110,0x2110,0x290F,0x210F,0x210F,0x290F,0x212F,0x212F,0x292F,0x212F,0x210F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x292F,0x212F,0x210F,0x212F,0x2130,0x2130,0x1911,0x1132,0x2238,0x2239,0x19F8,0x1176,0x1133,0x1932,0x2131,0x2110,0x2130,0x2130,0x210F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x2110,0x2910,0x2910,0x2110,0x2111,0x1912,0x1113,0x19D7,0x2218,0x19F7,0x1175,0x1112,0x1911,0x2130,0x2130,0x2130,0x2930,0x292F,0x292F,0x210F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3130,0x3150,0x3150,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x4192,0x4192,0x4192,0x4192,0x4192,0x4193,0x4192,0x4192,0x4993,0x49B3,0x51B2,0x51B2,0x5171,0x5171,0x5991,0x6191,0x5950,0x6990,0x9B15,0xE51C,0xDC9A,0xD459,0xDC79,0xDC58,0xDC37,0xDC58,0xDC37,0xDC37,0xDC17,0xDC17,0xDC16,0xDC16,0xDC17,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDBF6,0xDC16,0xDC16,0xD3F6,0xDC17,0xDC17,0xD3F7,0xDC17,0xD3F6,0xD3F6,0xD3F6,0xD3F6,0xD3F6,0xD3F6,0xD3D6,0xD3D6,0xD3F6,0xD3F6,0xD3F6,0xD3D6,0xD3F6,0xD3F7,0xD3F6,0xD3D6,0xD3B6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3B6,0xD3B6,0xD3D6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD396,0xD396,0xD396,0xD396,0xD396,0xD396,0xDB96,0xDB96,0xDB75,0xDB76,0xDB76,0xDB76,0xD335,0xD355,0xD355,0xD376,0xD376,0xD376,0xD376,0xD396,0xD376,0xD376,0xD376,0xCB96,0xCB97,0xC376,0xBB76,0xBB96,0xBBB7,0xBBB7,0xBBD7,0xBBB7,0xBBB7,0xBBB7,0xBB97,0xBB76,0xC376,0xCB97,0xCB96,0xCB76,0xCB56,0xC376,0xBB55,0xB356,0xA397,0xA419,0xA4BB,0x949A,0x847A,0x84DB,0x8CFB,0x8CFB,0x6BD7,0x5B14,0x6B55,0x8BF8,0xA439,0xAC3A,0xABD9,0x92F5,0x71D2,0x5950,0x5951,0x5992,0x5992,0x5192,0x5192,0x4992,0x4992,0x4992,0x4172,0x4193,0x4172,0x4192,0x4192,0x4192,0x3972,0x3972,0x3972,0x3971,0x3951,0x3972,0x3972,0x3952,0x3971,0x3971,0x3151,0x3151,0x3151,0x3131,0x3131,0x3151,0x3130,0x3130,0x2930,0x2930,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x290F,0x2910,0x2110,0x212F,0x212F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x212F,0x292F,0x2130,0x210F,0x2130,0x2110,0x2131,0x1911,0x1132,0x1994,0x19D7,0x11B7,0x09B8,0x09DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x09FA,0x09FA,0x11D9,0x11B8,0x19B6,0x1154,0x1112,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x210F,0x210F,0x2930,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x210F,0x290F,0x2930,0x2910,0x2930,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x1911,0x1132,0x1153,0x1195,0x11D7,0x11F8,0x09D8,0x09D8,0x09F8,0x09F8,0x09B7,0x0156,0x0135,0x0134,0x0955,0x09B7,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D7,0x09B7,0x0155,0x0955,0x0954,0x0975,0x0996,0x09D7,0x09F8,0x09D8,0x09D8,0x09F7,0x11D7,0x1195,0x1154,0x1152,0x1932,0x1931,0x2130,0x2110,0x210F,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1154,0x1176,0x11B8,0x11D9,0x11D9,0x11D9,0x11D8,0x11B8,0x1197,0x0955,0x0955,0x0955,0x0975,0x09B7,0x09D8,0x09F9,0x09F9,0x11F9,0x11D8,0x0997,0x0975,0x0975,0x1154,0x0954,0x0976,0x0997,0x09D8,0x09F9,0x09F9,0x11F9,0x11D8,0x1197,0x1196,0x1175,0x0954,0x0954,0x0975,0x0996,0x09D7,0x11F8,0x09F8,0x11F9,0x09D8,0x09B7,0x11B6,0x11B6,0x0934,0x0934,0x0976,0x09D7,0x09D8,0x09F9,0x09F9,0x09D9,0x09B8,0x0997,0x11B6,0x1195,0x0934,0x0934,0x0976,0x09B7,0x09D8,0x09D9,0x09F9,0x09D9,0x09D8,0x09B7,0x1196,0x1974,0x1932,0x1911,0x1911,0x18F0,0x1911,0x1912,0x1954,0x1195,0x19D8,0x11F8,0x11F8,0x11F8,0x1219,0x09F8,0x1219,0x1218,0x1218,0x19F7,0x1175,0x1133,0x1112,0x1911,0x1931,0x1930,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2910,0x2910,0x2110,0x2110,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x2910,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930, + 0x212F,0x212F,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2930,0x290F,0x210F,0x2910,0x2930,0x290F,0x292F,0x290F,0x292F,0x210F,0x210F,0x290F,0x210F,0x2910,0x290F,0x210F,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x2110,0x2110,0x2110,0x2131,0x1911,0x1931,0x1132,0x1153,0x1175,0x11B6,0x11F7,0x11F8,0x1218,0x11F8,0x11D7,0x11B6,0x1174,0x1153,0x1132,0x1932,0x1931,0x1911,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x210F,0x292F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x2930,0x290F,0x292F,0x290F,0x292F,0x292F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2130,0x2131,0x1932,0x1933,0x1133,0x1155,0x11B7,0x11F8,0x11F8,0x11F9,0x19F8,0x19D8,0x19B6,0x1975,0x1113,0x1133,0x1932,0x1911,0x1911,0x1911,0x2131,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x210F,0x2910,0x290F,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x210F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1132,0x1953,0x1154,0x1954,0x1974,0x1954,0x1954,0x1974,0x1953,0x1953,0x1974,0x1974,0x1953,0x1974,0x1974,0x1974,0x1994,0x1994,0x1974,0x1974,0x1974,0x1994,0x1974,0x1994,0x1974,0x1974,0x1974,0x1974,0x1974,0x1994,0x2194,0x1974,0x1994,0x1994,0x1994,0x1995,0x1995,0x1995,0x1995,0x19B6,0x1196,0x11D7,0x09B7,0x09D8,0x01D9,0x01D9,0x01DA,0x01DA,0x01BA,0x01DA,0x01DB,0x01BA,0x01BA,0x09B9,0x09B9,0x11B8,0x19B7,0x19B5,0x1112,0x1932,0x1951,0x1930,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x2910,0x2910,0x28F0,0x28F0,0x30B0,0x3870,0x6935,0xCB3E,0xD2BD,0xE29E,0xEA7F,0xEA3E,0xF21F,0xF9FF,0xF1DF,0xF9FF,0xF9DF,0xF9FF,0xF9FF,0xF9FF,0xFA1F,0xF21F,0xF25F,0xEA3E,0xE27E,0xD29D,0xD35F,0x5072,0x3850,0x30B0,0x28F0,0x2910,0x2910,0x290F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2110,0x2110,0x2910,0x2930,0x2110,0x2930,0x290F,0x210F,0x290F,0x210F,0x210F,0x2110,0x290F,0x210F,0x290F,0x2930,0x212F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2910,0x2910,0x290F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x1911,0x1112,0x2218,0x2239,0x19D8,0x1196,0x1133,0x1932,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x2910,0x2910,0x2131,0x2131,0x1912,0x1113,0x19F7,0x19F8,0x19F8,0x1195,0x1112,0x1931,0x2110,0x2130,0x2130,0x2930,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x3150,0x3130,0x3130,0x3150,0x3151,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3971,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x4192,0x4192,0x4172,0x4192,0x4192,0x4993,0x4192,0x4192,0x4992,0x4993,0x51B3,0x5192,0x5191,0x5171,0x5991,0x61B1,0x6190,0x8A73,0xCC7A,0xE4FB,0xDC99,0xDC58,0xDC58,0xDC58,0xDC37,0xDC37,0xDC17,0xDC37,0xDC37,0xDC37,0xDC16,0xDC16,0xDC17,0xDC17,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC17,0xDC16,0xDC17,0xD416,0xD416,0xD417,0xD416,0xD417,0xD417,0xD417,0xD417,0xD417,0xCC16,0xCC17,0xCBF6,0xCBF6,0xCBF6,0xCBF7,0xCBF6,0xCC17,0xCBF6,0xCBF7,0xCBF7,0xCBF6,0xCBF6,0xCBD6,0xCBD6,0xCBF7,0xCBD6,0xCBF6,0xCBD6,0xCBD6,0xCBF7,0xCBD7,0xCBD6,0xCBD6,0xCBD6,0xCBD6,0xCBB6,0xCBD6,0xCBD6,0xD3B6,0xD3B6,0xCBB6,0xD3B6,0xD396,0xD396,0xDB96,0xDB96,0xDB76,0xDB76,0xDB76,0xDB55,0xDB55,0xD355,0xDB76,0xD376,0xDB76,0xDB76,0xD376,0xD376,0xD376,0xDB96,0xD356,0xD356,0xD376,0xCB76,0xCB76,0xC376,0xBB76,0xBB97,0xBB97,0xBB97,0xB397,0xB396,0xBB97,0xBB76,0xBB76,0xC376,0xC376,0xCB76,0xC356,0xC356,0xC356,0xBB56,0xAB56,0xA397,0x9C19,0x9CBB,0x849A,0x7C9A,0x7CBA,0x84FB,0x8CFB,0x73F8,0x6B35,0x8BB7,0x9BD7,0xA3B7,0xB3B7,0xB377,0xB398,0x9AD6,0x6991,0x5930,0x5971,0x5992,0x5992,0x5172,0x5192,0x4992,0x4972,0x4992,0x4172,0x4192,0x4192,0x4192,0x4172,0x4172,0x3972,0x3972,0x3972,0x3972,0x3951,0x3972,0x3951,0x3951,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x3130,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2131,0x1931,0x1932,0x1153,0x1995,0x1197,0x11B8,0x09D9,0x09FA,0x01D9,0x09FA,0x01DA,0x09DA,0x09D9,0x09F9,0x11D8,0x19B7,0x1995,0x1112,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2110,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x212F,0x210F,0x290F,0x290F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x1931,0x1911,0x1932,0x1953,0x1175,0x11D7,0x11D7,0x11F8,0x09F8,0x09F8,0x09D7,0x0997,0x0155,0x0134,0x0934,0x0975,0x11B6,0x11D7,0x09D8,0x09D7,0x09D7,0x09D7,0x11D7,0x0996,0x0975,0x0955,0x0934,0x0975,0x1196,0x11D7,0x11F8,0x09D7,0x11F8,0x11F7,0x11D6,0x1195,0x1174,0x1953,0x1932,0x1951,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1954,0x1175,0x11B7,0x11D8,0x11D8,0x11D8,0x11D8,0x11B7,0x1196,0x0955,0x0954,0x0955,0x0975,0x0996,0x11D8,0x11F9,0x09D9,0x11F9,0x11B8,0x11B7,0x1195,0x1154,0x1154,0x0954,0x0975,0x0996,0x11D8,0x11F8,0x11F9,0x11F8,0x11D7,0x11B6,0x1195,0x1174,0x1154,0x1154,0x1174,0x0995,0x11D7,0x11D8,0x09D8,0x11F8,0x11D7,0x11B7,0x11B6,0x1195,0x0934,0x0934,0x0996,0x09B7,0x11F8,0x09F8,0x09F8,0x11D8,0x11B8,0x1197,0x1196,0x1175,0x0913,0x0914,0x0975,0x1197,0x11D8,0x09D8,0x09D8,0x09D8,0x09B7,0x11B7,0x1195,0x1974,0x1932,0x1911,0x2111,0x2131,0x1911,0x1912,0x1933,0x1154,0x1196,0x19B7,0x19F7,0x11D7,0x19F8,0x11F7,0x11F7,0x11D6,0x11D6,0x1195,0x1153,0x1933,0x1111,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x2110,0x2910,0x2910,0x2110,0x210F,0x210F,0x2910,0x2930,0x290F,0x2910,0x2910,0x2930,0x290F,0x2910,0x2910,0x210F,0x2930,0x290F,0x290F,0x2930,0x210F,0x2930,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x2930,0x210F,0x210F,0x290F, + 0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x210F,0x290F,0x2910,0x290F,0x210F,0x2930,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x292F,0x290F,0x210F,0x210F,0x2110,0x2130,0x2131,0x2131,0x1911,0x1132,0x1133,0x1174,0x11B6,0x11D7,0x1A18,0x1218,0x1218,0x11D7,0x1195,0x1174,0x1174,0x1153,0x1952,0x1931,0x1931,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x2930,0x2930,0x210F,0x212F,0x210F,0x210F,0x292F,0x290F,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2910,0x2930,0x210F,0x2910,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2910,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2131,0x2111,0x1932,0x10F2,0x1113,0x1175,0x1196,0x11D8,0x11F8,0x1A39,0x1A19,0x19F8,0x19B6,0x1154,0x1133,0x1112,0x1911,0x1931,0x2131,0x2131,0x2110,0x2110,0x2130,0x2110,0x210F,0x210F,0x2130,0x2110,0x2110,0x210F,0x210F,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x292F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x1931,0x1932,0x1112,0x1112,0x1912,0x1132,0x1112,0x1112,0x1912,0x1112,0x1112,0x10F2,0x1112,0x1112,0x1112,0x1112,0x1132,0x1112,0x1112,0x1112,0x1932,0x1112,0x1112,0x1112,0x1132,0x1112,0x1112,0x1132,0x1132,0x1132,0x1932,0x1912,0x1912,0x1112,0x1112,0x1112,0x1112,0x1132,0x1133,0x1133,0x1154,0x1175,0x0976,0x09B7,0x09B7,0x01D8,0x01D9,0x01B9,0x01BA,0x01BA,0x01BA,0x01BA,0x01BA,0x01DA,0x09D9,0x09B9,0x0997,0x19D7,0x1995,0x1112,0x1931,0x1931,0x1930,0x2150,0x2130,0x2130,0x2130,0x210F,0x2110,0x2930,0x290F,0x290F,0x290F,0x28F0,0x30D0,0x3890,0x4850,0xB2BC,0xD2FE,0xDABE,0xE25E,0xEA3E,0xF21F,0xF21F,0xF9FF,0xF9FF,0xFA1F,0xF1FF,0xF1FF,0xF1FF,0xF1FF,0xF23F,0xEA3E,0xE23E,0xDA9E,0xDAFE,0xC31E,0x400F,0x3870,0x30B0,0x28F0,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x2910,0x210F,0x2110,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2110,0x1911,0x1112,0x2218,0x2239,0x19F8,0x1196,0x1133,0x1932,0x1931,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2910,0x2110,0x2931,0x2131,0x1912,0x1113,0x2218,0x1A39,0x19F8,0x1195,0x1112,0x1911,0x2110,0x2130,0x2130,0x2930,0x292F,0x292F,0x210F,0x290F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3130,0x3150,0x3150,0x3150,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3171,0x3171,0x3151,0x3151,0x3951,0x3971,0x3972,0x3972,0x3972,0x3972,0x4172,0x4172,0x4172,0x4192,0x4192,0x4192,0x4192,0x4192,0x4992,0x49B3,0x49B2,0x4992,0x4971,0x5171,0x5171,0x5970,0x6990,0x79F1,0xBBD8,0xE51C,0xDC9A,0xDC79,0xDC58,0xE479,0xDC37,0xDC37,0xDC58,0xDC37,0xDC37,0xDC17,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC37,0xDC16,0xDC16,0xDC16,0xDBF6,0xDBF6,0xDC16,0xDC16,0xD416,0xD3F6,0xD417,0xCC16,0xCC37,0xCC37,0xCC37,0xC437,0xC437,0xC417,0xC437,0xC437,0xC417,0xC417,0xC437,0xBC17,0xBC17,0xBC17,0xC437,0xBC17,0xBC37,0xBC17,0xBC17,0xBC17,0xC417,0xBC17,0xBC17,0xBC17,0xBC17,0xBBF7,0xBBF6,0xBBF6,0xC3F7,0xC3F6,0xC3F6,0xC3F6,0xC3F6,0xC3F6,0xC3D6,0xC3D6,0xC3D6,0xC3B6,0xCBB6,0xCBB5,0xCB95,0xCB95,0xD375,0xD376,0xD355,0xD355,0xDB96,0xDB96,0xDB76,0xDB56,0xDB75,0xDB76,0xD355,0xD375,0xD375,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD376,0xCB76,0xCB56,0xC356,0xC377,0xBB97,0xBB97,0xBB77,0xBB97,0xBB97,0xB356,0xBB76,0xBB56,0xC376,0xCB76,0xCB76,0xC376,0xC376,0xB336,0xA336,0x9376,0x8BF8,0x8419,0x84BB,0x8D3C,0x7CFB,0x749A,0x8CDB,0x8C9A,0x83B7,0x9396,0x9B76,0xAB77,0xB377,0xB357,0xBB78,0xBB98,0xA2D6,0x7191,0x5910,0x5971,0x6192,0x5992,0x5192,0x5192,0x4992,0x4992,0x4192,0x4192,0x4192,0x4172,0x4172,0x4172,0x4192,0x4192,0x3971,0x3971,0x3992,0x3972,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3151,0x3130,0x3131,0x3130,0x3150,0x2950,0x2950,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x292F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2110,0x2130,0x2131,0x1931,0x1931,0x1932,0x1974,0x1175,0x11B7,0x19F8,0x1219,0x121A,0x09D9,0x09D9,0x09B9,0x11F9,0x1A19,0x19F8,0x21F7,0x1133,0x1111,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x2130,0x2130,0x2110,0x210F,0x2130,0x2930,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x212F,0x292F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x2110,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2131,0x2111,0x1911,0x1932,0x1953,0x1995,0x2217,0x11F7,0x11F7,0x11F8,0x11F8,0x1A18,0x11B7,0x0955,0x0934,0x0914,0x0975,0x11B6,0x11F7,0x11D7,0x11D7,0x11D7,0x11D7,0x19F7,0x1196,0x0954,0x0954,0x0954,0x1175,0x11B6,0x1A18,0x11F8,0x11F8,0x11F7,0x1A17,0x19F7,0x1174,0x1153,0x1952,0x1951,0x2151,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1953,0x1995,0x19D7,0x19D8,0x19F8,0x11F8,0x19D8,0x19D7,0x1196,0x1154,0x1134,0x1154,0x1175,0x11B6,0x11F8,0x11F9,0x1219,0x11F8,0x11D7,0x1196,0x1195,0x1154,0x0933,0x1154,0x0974,0x1196,0x11D7,0x11F8,0x1218,0x11F8,0x11D7,0x11B6,0x19B5,0x1174,0x1153,0x1153,0x1154,0x1175,0x11D6,0x11F7,0x11F7,0x11F8,0x11D7,0x11B6,0x19D6,0x11B5,0x0933,0x0913,0x0975,0x11B6,0x11F8,0x11F8,0x11F8,0x11F8,0x11B7,0x1196,0x19B6,0x1175,0x0913,0x0913,0x1175,0x1196,0x19D8,0x11D8,0x11F8,0x11F8,0x11B7,0x11B6,0x19B5,0x1953,0x1932,0x1911,0x2131,0x2110,0x2131,0x1911,0x1912,0x1113,0x1133,0x1154,0x1154,0x1154,0x1175,0x1174,0x1133,0x1154,0x1974,0x1953,0x1112,0x1911,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2910,0x2910,0x210F,0x210F,0x2110,0x2910,0x2910,0x2930,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x210F,0x290F,0x292F,0x210F,0x2930,0x290F, + 0x2150,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x2930,0x290F,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2930,0x2130,0x2130,0x1931,0x1931,0x1132,0x1153,0x1175,0x11B6,0x11D7,0x11F8,0x1A19,0x11F8,0x11F7,0x11B6,0x0974,0x1174,0x1153,0x1932,0x1931,0x1931,0x1910,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x212F,0x210F,0x2110,0x2910,0x210F,0x2930,0x2110,0x2110,0x290F,0x210F,0x2110,0x2110,0x212F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x2910,0x290F,0x290F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x1911,0x1932,0x1112,0x1133,0x1154,0x1196,0x11D7,0x1218,0x1A39,0x1A19,0x19F8,0x19B7,0x1155,0x1133,0x1912,0x1911,0x2111,0x2111,0x2131,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x2130,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x210F,0x2930,0x2910,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x294F,0x212F,0x210F,0x2130,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2930,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1911,0x1911,0x1912,0x1932,0x1932,0x1912,0x1911,0x1911,0x1911,0x1932,0x1912,0x1911,0x1911,0x1932,0x1911,0x1911,0x1931,0x1911,0x1912,0x1932,0x1932,0x1932,0x1912,0x1932,0x1932,0x1912,0x1932,0x1912,0x1912,0x1932,0x1912,0x1912,0x1912,0x1932,0x1912,0x1932,0x1112,0x1133,0x1153,0x1154,0x1175,0x1196,0x09D7,0x09D8,0x01D9,0x01D9,0x01DA,0x01DA,0x01DB,0x01DA,0x01DA,0x09DA,0x09D9,0x09B9,0x0997,0x19B6,0x1974,0x1112,0x1931,0x1931,0x2151,0x2130,0x2130,0x212F,0x212F,0x2130,0x2930,0x290F,0x290F,0x290F,0x28EF,0x28EF,0x30F0,0x38B0,0x4050,0x7955,0xD33E,0xD2BE,0xDA7E,0xEA5E,0xF25F,0xF23F,0xFA3F,0xF21F,0xFA1F,0xF1FF,0xF21F,0xF21F,0xF23F,0xEA3E,0xE25E,0xE27E,0xDABE,0xDB5F,0x89B7,0x380F,0x3090,0x28B0,0x28F0,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x2930,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x210F,0x290F,0x212F,0x212F,0x212F,0x210F,0x2130,0x1910,0x1911,0x1112,0x2218,0x2239,0x19F8,0x1196,0x1133,0x1932,0x1931,0x2131,0x2130,0x2130,0x2150,0x2130,0x212F,0x212F,0x212F,0x2130,0x210F,0x2910,0x2110,0x2931,0x2131,0x2132,0x1912,0x1113,0x2218,0x1A19,0x19F8,0x1196,0x1112,0x1931,0x2131,0x2130,0x2130,0x2130,0x2930,0x292F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3130,0x3150,0x3150,0x3150,0x3150,0x3150,0x3151,0x3150,0x3150,0x3151,0x3150,0x3151,0x3151,0x3171,0x3171,0x3171,0x3151,0x3971,0x3971,0x3972,0x3972,0x3972,0x3972,0x4172,0x4172,0x4172,0x4192,0x4192,0x4192,0x4192,0x49B3,0x4992,0x4992,0x4992,0x4992,0x4992,0x5192,0x5191,0x5170,0x5970,0x6990,0x9AF4,0xDCFC,0xDCBB,0xDC99,0xDC59,0xDC58,0xDC58,0xDC37,0xDC17,0xDC37,0xDC37,0xDC37,0xDC17,0xDC37,0xDC16,0xDC17,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDBF6,0xDC16,0xDBF6,0xDC16,0xDC16,0xD416,0xD417,0xCC17,0xCC37,0xC437,0xC478,0xBC57,0xBC78,0xB457,0xB477,0xB477,0xB498,0xB478,0xB498,0xAC78,0xB478,0xB478,0xAC78,0xAC78,0xB498,0xAC78,0xB498,0xB478,0xB498,0xAC78,0xB478,0xB478,0xB498,0xB478,0xB498,0xB478,0xB458,0xB458,0xB458,0xB458,0xB457,0xB437,0xBC58,0xBC37,0xBC37,0xB417,0xBC17,0xC417,0xC3F6,0xC3D6,0xC3D6,0xCBB5,0xD3B6,0xCB75,0xCB75,0xD355,0xD396,0xDB96,0xD376,0xDB76,0xD375,0xD376,0xD376,0xD355,0xD375,0xD355,0xD356,0xD356,0xD356,0xD335,0xD356,0xD356,0xD356,0xD356,0xCB56,0xCB76,0xC356,0xC377,0xC397,0xC397,0xBB76,0xBB76,0xBB76,0xBB56,0xBB56,0xC376,0xC356,0xC376,0xC376,0xC376,0xBB56,0xB356,0xA377,0x9397,0x8BD8,0x8439,0x8D1C,0x7CFB,0x7CFB,0x749A,0x7C7A,0x94BB,0x8BD7,0x9376,0xA377,0xAB56,0xBB77,0xBB57,0xBB78,0xBB58,0xBB58,0x9AB6,0x6130,0x5910,0x5972,0x5992,0x5192,0x4972,0x51B3,0x4992,0x4992,0x4192,0x4172,0x4192,0x4192,0x4172,0x3972,0x3972,0x3972,0x3972,0x3972,0x3951,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x3151,0x3130,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2910,0x290F,0x2930,0x2910,0x290F,0x2910,0x290F,0x2910,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x292F,0x292F,0x212F,0x210F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1952,0x1954,0x1975,0x1196,0x19D7,0x19F8,0x11D8,0x11B8,0x11D8,0x19D8,0x21F8,0x21D6,0x1954,0x1112,0x1911,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2110,0x210F,0x212F,0x210F,0x2130,0x210F,0x212F,0x2130,0x2130,0x212F,0x2930,0x212F,0x212F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2130,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2111,0x1931,0x1932,0x1932,0x1974,0x19D5,0x19D6,0x19F7,0x19F7,0x19D7,0x19D6,0x19D6,0x1154,0x0934,0x0933,0x1174,0x19D6,0x19F6,0x19D7,0x19D7,0x11D7,0x19F7,0x19D6,0x19B5,0x1154,0x1153,0x1174,0x1174,0x19B5,0x19D6,0x19F7,0x19F7,0x19D6,0x19F7,0x19B5,0x1974,0x1953,0x1952,0x1951,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x1931,0x1952,0x1953,0x1974,0x1995,0x19B6,0x19D7,0x19F7,0x19D7,0x19B6,0x1995,0x1154,0x1133,0x1154,0x1174,0x1195,0x19F7,0x19F8,0x19F7,0x19D7,0x19D7,0x19B6,0x1974,0x1153,0x1153,0x1153,0x0953,0x1195,0x11B6,0x11D7,0x11F7,0x11D7,0x19D6,0x19B6,0x1995,0x1173,0x1152,0x1153,0x1153,0x1174,0x11B5,0x19F6,0x19F7,0x11D6,0x11B6,0x19B6,0x19B5,0x19B5,0x0933,0x0913,0x1174,0x11B6,0x11D7,0x11D7,0x11D7,0x11D7,0x11B6,0x1996,0x1995,0x1974,0x1133,0x1133,0x1154,0x1196,0x19B6,0x11B7,0x11D6,0x11D6,0x19B6,0x19B5,0x1994,0x1953,0x1931,0x2131,0x2130,0x2131,0x2131,0x2111,0x1911,0x1912,0x1932,0x1132,0x1133,0x1933,0x1132,0x1132,0x1932,0x1932,0x1112,0x1932,0x1932,0x1931,0x1910,0x2131,0x2130,0x2150,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2110,0x2110,0x2130,0x210F,0x2130,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x210F,0x2110,0x2910,0x210F,0x290F,0x2930,0x290F,0x290F,0x2930,0x290F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F, + 0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x290F,0x210F,0x212F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x212F,0x292F,0x2930,0x2110,0x2130,0x2951,0x2151,0x2131,0x1952,0x1132,0x1153,0x1174,0x1196,0x11D7,0x1A18,0x1A18,0x1A18,0x11D7,0x11B6,0x0955,0x1133,0x1153,0x1932,0x1932,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x2930,0x2110,0x2130,0x2130,0x2930,0x2130,0x2110,0x2930,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x2931,0x2110,0x2130,0x2931,0x2130,0x2130,0x2110,0x2111,0x2110,0x2110,0x2131,0x2110,0x2110,0x2110,0x2110,0x2131,0x2130,0x2131,0x2131,0x2130,0x2130,0x2930,0x2130,0x2110,0x2130,0x2130,0x2930,0x2910,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x2131,0x2152,0x1932,0x1953,0x1174,0x1154,0x1196,0x19F8,0x1A19,0x1A19,0x1A39,0x19F8,0x19B7,0x1134,0x1113,0x10F1,0x18F1,0x2111,0x2110,0x2151,0x2130,0x2130,0x2110,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x212F,0x2130,0x212F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x290F,0x2910,0x2910,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x292F,0x210F,0x2930,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x2930,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x210E,0x210F,0x210F,0x212F,0x2150,0x2130,0x2131,0x1931,0x1931,0x1911,0x1911,0x1931,0x2131,0x1911,0x2131,0x1911,0x2131,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x2131,0x1931,0x1911,0x1931,0x2131,0x1931,0x1931,0x1932,0x1931,0x1952,0x1932,0x1932,0x1112,0x1112,0x1133,0x0955,0x11B7,0x11D8,0x09F9,0x0A1A,0x09FA,0x01DA,0x01DA,0x01DA,0x01DA,0x0A1B,0x121A,0x09D9,0x11B7,0x1175,0x1154,0x1132,0x1952,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x210F,0x2930,0x2930,0x2910,0x28F0,0x28F0,0x30D0,0x4090,0x4850,0xA25A,0xD33E,0xDA9E,0xDA5E,0xEA5E,0xF23F,0xF21F,0xF21E,0xF21E,0xF25F,0xF25F,0xEA1E,0xEA3E,0xE23E,0xE27E,0xDABE,0xDB3F,0xBADC,0x5051,0x3870,0x30B0,0x28D0,0x28F0,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2930,0x210F,0x290F,0x210F,0x212F,0x210F,0x2110,0x2130,0x2131,0x1912,0x1133,0x19F8,0x19F8,0x1A19,0x11B7,0x1154,0x1132,0x1932,0x1931,0x1931,0x1930,0x2151,0x2130,0x2130,0x212F,0x212F,0x212F,0x2930,0x2110,0x2930,0x2931,0x2111,0x1911,0x1933,0x1154,0x19F8,0x11F8,0x1A18,0x19D6,0x1153,0x1111,0x1911,0x2131,0x2131,0x2130,0x2950,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3150,0x3150,0x3150,0x3151,0x3151,0x3151,0x3150,0x3151,0x3151,0x3151,0x3151,0x3971,0x3971,0x3171,0x3171,0x3151,0x3971,0x3992,0x3972,0x3972,0x3972,0x3972,0x4172,0x4192,0x4192,0x4192,0x4192,0x4993,0x49B3,0x49B3,0x49B2,0x4992,0x4992,0x4992,0x5192,0x5171,0x5971,0x6170,0x7A11,0xC439,0xED3C,0xDC79,0xD458,0xDC78,0xDC58,0xDC58,0xDC37,0xDC37,0xE437,0xDC17,0xDC16,0xDC16,0xDC16,0xDC37,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDBF6,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDC16,0xDC37,0xD437,0xD457,0xCC57,0xBC57,0xB457,0xAC78,0xA457,0xA498,0x9477,0x9497,0x8C77,0x94B8,0x8C97,0x8C98,0x8C77,0x8C77,0x8C77,0x8C98,0x8C77,0x8C77,0x8457,0x8C57,0x8457,0x8457,0x8436,0x8C57,0x8437,0x8436,0x8436,0x8C37,0x8416,0x8C16,0x83F6,0x8C16,0x8BF6,0x8BF6,0x8BF6,0x9416,0x9416,0x9C37,0x9C17,0xA417,0xA416,0xB437,0xB417,0xBBF7,0xC3F7,0xC3F6,0xCBD6,0xCBD6,0xCB96,0xD3B6,0xD396,0xD396,0xD376,0xD375,0xD375,0xCB55,0xD375,0xD376,0xD376,0xD356,0xD356,0xDB76,0xDB56,0xD335,0xD356,0xD336,0xD336,0xD356,0xCB36,0xD356,0xCB56,0xC336,0xC356,0xC376,0xC376,0xC356,0xBB35,0xB335,0xBB36,0xC377,0xC376,0xC356,0xC356,0xC377,0xC377,0xB356,0xA356,0x9377,0x8397,0x7C18,0x851C,0x7D1C,0x7D1C,0x6C9A,0x6C59,0x8459,0x8BD8,0x8B56,0xA356,0xAB57,0xBB37,0xBB57,0xBB57,0xBB37,0xBB58,0xBB78,0x9254,0x610F,0x5910,0x5971,0x5172,0x5172,0x4992,0x4992,0x4992,0x4992,0x4992,0x4192,0x4172,0x4172,0x4192,0x3972,0x3972,0x3972,0x3971,0x3971,0x3971,0x3151,0x3151,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3130,0x3151,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x290F,0x2930,0x2930,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x2130,0x2110,0x2110,0x2130,0x2131,0x2131,0x2152,0x1933,0x1953,0x1154,0x1175,0x1995,0x1996,0x1996,0x1954,0x1133,0x1112,0x1111,0x1910,0x1910,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x212F,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x292F,0x290F,0x210F,0x290F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2930,0x2130,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1952,0x1952,0x1153,0x1154,0x1974,0x1174,0x1174,0x1174,0x1174,0x1154,0x1973,0x1153,0x1973,0x1974,0x1994,0x1995,0x1195,0x1994,0x1174,0x1174,0x1973,0x1153,0x1953,0x1153,0x1973,0x1974,0x1974,0x1174,0x1174,0x1174,0x1153,0x1153,0x1952,0x1931,0x1931,0x2131,0x2110,0x2130,0x2130,0x212F,0x212F,0x292F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1952,0x1953,0x1974,0x1974,0x1994,0x1995,0x1174,0x1153,0x1973,0x1953,0x1953,0x1153,0x1174,0x1194,0x1195,0x1195,0x1195,0x1195,0x1995,0x1974,0x1953,0x1132,0x1952,0x1952,0x1973,0x1194,0x1194,0x1195,0x11B5,0x19B5,0x1994,0x1974,0x1973,0x1952,0x1932,0x1132,0x1973,0x1973,0x1994,0x1194,0x19B5,0x19B5,0x1194,0x1174,0x1974,0x1953,0x1953,0x1152,0x1974,0x1194,0x1194,0x1195,0x19B5,0x19B5,0x1174,0x1954,0x1953,0x1953,0x1953,0x1953,0x1174,0x1174,0x1995,0x19B5,0x1995,0x1994,0x1994,0x1974,0x1952,0x1952,0x2151,0x2130,0x2110,0x2110,0x2130,0x2131,0x1910,0x1931,0x1931,0x1932,0x1952,0x1932,0x1952,0x1952,0x1931,0x1931,0x1932,0x1931,0x2151,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2930,0x2130,0x2130,0x210F,0x210F,0x212F,0x2930,0x290F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2910,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x2930,0x210F,0x2910,0x2910,0x290F,0x2930,0x210F,0x210F,0x2110,0x210F,0x210F,0x290F, + 0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x210F,0x290F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2910,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2910,0x290F,0x290F,0x290F,0x210F,0x2110,0x210F,0x2910,0x2110,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x290F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2151,0x2151,0x1932,0x1132,0x1133,0x1175,0x1196,0x11B7,0x1A19,0x1A18,0x19F8,0x11D7,0x1196,0x0955,0x0934,0x1133,0x1933,0x1932,0x1932,0x2132,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1930,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2152,0x2152,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2132,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2931,0x2131,0x2131,0x2131,0x2131,0x2152,0x2152,0x2132,0x1932,0x1112,0x1133,0x1153,0x1175,0x11B6,0x19F8,0x1A19,0x1A19,0x1A39,0x19F8,0x19B7,0x1175,0x1113,0x10F1,0x18F1,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x210E,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x2131,0x2111,0x2110,0x2130,0x2131,0x2131,0x1910,0x2131,0x1931,0x1931,0x2131,0x2131,0x1910,0x2111,0x2131,0x2131,0x2131,0x1931,0x1911,0x2131,0x1931,0x1911,0x1910,0x2131,0x1931,0x2131,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1133,0x1154,0x1195,0x09B7,0x11D8,0x09F9,0x09D9,0x09FA,0x01DA,0x09FA,0x09FA,0x09FA,0x1219,0x11D8,0x11B7,0x1175,0x1153,0x1932,0x1931,0x2131,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x290F,0x290F,0x28F0,0x30D0,0x38B0,0x4070,0x5030,0xBABC,0xDB5F,0xDA9E,0xE27E,0xE23E,0xEA5F,0xEA3E,0xEA5E,0xEA5F,0xEA5E,0xE23E,0xE25E,0xDA5D,0xD29D,0xD31E,0xD39F,0x60B3,0x4050,0x3890,0x30D0,0x28D0,0x28F0,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2930,0x210F,0x290F,0x210F,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2930,0x2930,0x2930,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2930,0x290F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1952,0x1132,0x1134,0x19F8,0x1219,0x11F9,0x19F8,0x0954,0x1153,0x1953,0x1932,0x1931,0x1931,0x2151,0x2130,0x1930,0x2130,0x212F,0x2930,0x210F,0x2110,0x2931,0x2131,0x1911,0x1912,0x1133,0x1155,0x19D8,0x1A19,0x19F8,0x19F7,0x1174,0x1132,0x1932,0x1931,0x2131,0x2131,0x2951,0x2930,0x210F,0x292F,0x290F,0x2910,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3150,0x3150,0x3150,0x3151,0x3130,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3151,0x3151,0x3971,0x3151,0x3151,0x3151,0x3972,0x3972,0x3972,0x3992,0x3972,0x4172,0x4172,0x4192,0x4192,0x4192,0x4192,0x4993,0x49B3,0x49B2,0x4992,0x4992,0x5192,0x5192,0x5191,0x5191,0x5950,0x592E,0xA336,0xDCDB,0xE4BA,0xDC59,0xDC79,0xDC58,0xDC37,0xDC37,0xDC37,0xDC17,0xDC17,0xDC17,0xDC37,0xDC17,0xDC16,0xDC16,0xDC16,0xDC37,0xDC16,0xDC16,0xDC16,0xDC16,0xE417,0xDC16,0xDBF6,0xDC16,0xDC16,0xDC37,0xD457,0xD478,0xC457,0xBC78,0xA457,0x9457,0x9497,0x8477,0x84D8,0x74B7,0x74B7,0x74D7,0x6CB7,0x6CB7,0x74D8,0x6CB7,0x6CB7,0x6CB7,0x6CB7,0x6CB7,0x6CB7,0x6C97,0x6C97,0x6C97,0x6C97,0x6CB7,0x6C97,0x6C97,0x6C97,0x6C97,0x7497,0x6C77,0x7497,0x7497,0x7477,0x7457,0x7457,0x7436,0x6C16,0x6BF5,0x6BF5,0x6BB4,0x73B4,0x73B4,0x83D5,0x8BF5,0x9BF6,0xA3F6,0xABF6,0xB3F6,0xB3F6,0xB3D6,0xBBD6,0xBBB6,0xC3D7,0xC3B6,0xC3B6,0xC375,0xCBB6,0xCB96,0xCB75,0xCB76,0xCB76,0xD376,0xD376,0xD355,0xD356,0xD335,0xD336,0xD356,0xD336,0xD336,0xD356,0xCB36,0xCB36,0xCB36,0xCB56,0xCB76,0xC356,0xC356,0xBB15,0xBB35,0xBB36,0xC356,0xC336,0xC336,0xCB56,0xC376,0xBB56,0xB356,0xA357,0x93B8,0x7BB7,0x7C5A,0x7CFC,0x753C,0x753C,0x6CDB,0x74BA,0x849A,0x8C18,0x8B56,0xA357,0xAB57,0xBB78,0xB2F6,0xBB37,0xBB16,0xBB57,0xC378,0xB317,0x79B2,0x58EF,0x5951,0x5972,0x5172,0x5192,0x5192,0x4992,0x4992,0x4172,0x4172,0x4192,0x4192,0x4172,0x3972,0x3992,0x3972,0x3972,0x3972,0x3971,0x3971,0x3971,0x3171,0x3151,0x3171,0x3151,0x3151,0x3130,0x3131,0x3130,0x3151,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2910,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2131,0x2131,0x2132,0x1932,0x1932,0x1933,0x1933,0x1133,0x1112,0x1912,0x18F1,0x1911,0x1910,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x1931,0x1932,0x1932,0x1933,0x1933,0x1132,0x1133,0x1133,0x1132,0x1933,0x1132,0x1132,0x1132,0x1132,0x1132,0x1152,0x1153,0x1132,0x1132,0x1132,0x1132,0x1932,0x1932,0x1932,0x1932,0x1952,0x1933,0x1133,0x1953,0x1933,0x1933,0x1932,0x1932,0x1931,0x2130,0x2130,0x2130,0x2930,0x212F,0x290F,0x290F,0x290F,0x210F,0x2130,0x2150,0x2130,0x212F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1952,0x1952,0x1953,0x1152,0x1952,0x1952,0x1931,0x1931,0x1932,0x1952,0x1952,0x1153,0x1153,0x1153,0x1153,0x1153,0x1953,0x1953,0x1932,0x1931,0x1951,0x1972,0x1952,0x1152,0x1173,0x1153,0x1153,0x1153,0x1153,0x1952,0x1952,0x1952,0x1931,0x1931,0x1951,0x1952,0x1952,0x1152,0x1153,0x1153,0x1153,0x1132,0x1932,0x1932,0x1952,0x1952,0x1152,0x1153,0x1173,0x1153,0x1153,0x1153,0x1953,0x1932,0x1932,0x1932,0x1952,0x1932,0x1952,0x1152,0x1153,0x1153,0x1153,0x1152,0x1952,0x1952,0x1931,0x1931,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x1910,0x1931,0x1931,0x1931,0x1931,0x1911,0x1910,0x2131,0x2131,0x2131,0x2131,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2930,0x2930,0x210F,0x2930,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2910,0x210F,0x2910,0x210F,0x290F,0x2910,0x210F,0x210F,0x210F,0x210F,0x2930, + 0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x210F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x212F,0x292F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x290F,0x210F,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x1931,0x1931,0x1932,0x1954,0x1175,0x1196,0x11D7,0x1A19,0x1A19,0x11D8,0x11B7,0x1196,0x0955,0x0934,0x0933,0x1113,0x10F2,0x10F2,0x10F1,0x10F1,0x1111,0x10F0,0x10F0,0x1931,0x1911,0x1911,0x1111,0x1111,0x1911,0x1911,0x1111,0x1931,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x10F1,0x1911,0x1911,0x1911,0x10F1,0x1111,0x10F1,0x1111,0x10F1,0x10F1,0x10F1,0x1911,0x10F1,0x10F1,0x10F1,0x10F1,0x10F1,0x10F1,0x10F1,0x10F1,0x10F1,0x1111,0x1111,0x1111,0x1111,0x1111,0x10F1,0x10F1,0x10F1,0x1911,0x1111,0x10F1,0x10F1,0x1111,0x10F1,0x1111,0x1111,0x1111,0x1111,0x1912,0x1912,0x1911,0x1111,0x1911,0x1911,0x1911,0x10F1,0x1911,0x18F0,0x10F0,0x18F0,0x18F1,0x10F1,0x10F1,0x08F1,0x10F1,0x08D1,0x08D1,0x08D1,0x08F2,0x0913,0x0955,0x1196,0x11F8,0x11F8,0x1219,0x1A19,0x19D8,0x1196,0x1155,0x1113,0x1912,0x1911,0x2111,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x212F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x290F,0x290F,0x2910,0x210F,0x210F,0x210F,0x2930,0x290F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2110,0x2910,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x1910,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x2110,0x1910,0x2130,0x2130,0x2130,0x1931,0x1911,0x1911,0x1932,0x1953,0x1174,0x1195,0x11B7,0x11D8,0x11D8,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x11F8,0x11D7,0x1195,0x1974,0x1932,0x1932,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x28EF,0x30F0,0x38D0,0x40B0,0x4850,0x5851,0xB29B,0xDB5F,0xD29E,0xDA7E,0xDA5E,0xE25E,0xDA5E,0xE27E,0xE27E,0xDA5D,0xD27D,0xD29D,0xD33F,0xC31D,0x7114,0x4030,0x3890,0x30D0,0x28D0,0x28F0,0x2910,0x2910,0x290F,0x290F,0x2910,0x2930,0x2930,0x2910,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x2910,0x2930,0x290F,0x2930,0x290F,0x2110,0x2930,0x212F,0x2130,0x2930,0x2910,0x2910,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2110,0x210F,0x2930,0x2130,0x2110,0x2130,0x2130,0x1931,0x1111,0x1133,0x1175,0x11F8,0x11F9,0x11F9,0x09B8,0x0975,0x0974,0x1174,0x1153,0x1152,0x1131,0x1931,0x1930,0x2130,0x2130,0x210F,0x2130,0x210F,0x2110,0x2110,0x2111,0x1912,0x1113,0x1134,0x1176,0x11B7,0x11F8,0x11F8,0x11D7,0x1175,0x1133,0x1133,0x1932,0x1911,0x1931,0x2131,0x2130,0x2110,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x3150,0x3150,0x3150,0x3150,0x3130,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3971,0x3971,0x3971,0x3972,0x3972,0x3972,0x3992,0x3972,0x3972,0x4192,0x4172,0x4192,0x4192,0x4172,0x4172,0x4993,0x4992,0x4992,0x4993,0x49B3,0x4992,0x4992,0x5171,0x5171,0x5170,0x594F,0x7A11,0xCC7A,0xE4FB,0xD479,0xDC79,0xDC58,0xDC58,0xDC37,0xDC37,0xE437,0xDC37,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC37,0xDC16,0xDC16,0xDC37,0xDC37,0xDC17,0xDC16,0xDBF6,0xDBF6,0xDC16,0xDC36,0xDC37,0xDC37,0xD437,0xC437,0xBC57,0xAC57,0x9C98,0x9D19,0x955A,0x857A,0x7D9B,0x75BA,0x75DB,0x761C,0x761B,0x761B,0x761C,0x6E1C,0x761C,0x6E1C,0x6E1C,0x763C,0x763C,0x763C,0x763C,0x765D,0x765D,0x763D,0x763C,0x763C,0x7E3C,0x7E3C,0x761C,0x7E3D,0x7E1C,0x7E1C,0x7E1C,0x7DFC,0x7DFC,0x7DFC,0x7DFC,0x7DFC,0x7DFC,0x7DFC,0x7DDC,0x7DBB,0x7D7A,0x7D39,0x7CB8,0x7C97,0x7C56,0x8436,0x83F5,0x83B5,0x8BB5,0x8BB5,0x9BB5,0xA3D6,0xABD6,0xB3F6,0xB3F6,0xBBD6,0xBB96,0xBBB6,0xC396,0xCB96,0xCB75,0xCB55,0xD376,0xD376,0xD356,0xD356,0xD336,0xD336,0xD336,0xD336,0xD336,0xCB36,0xCB36,0xCB35,0xCB15,0xCB56,0xCB56,0xC336,0xBB15,0xBAF5,0xBAF5,0xC315,0xC336,0xCB77,0xC336,0xC356,0xBB56,0xB356,0xA357,0x93B8,0x7BB8,0x6BD8,0x855D,0x755D,0x757D,0x6CFB,0x6CBA,0x7CBB,0x8418,0x8B76,0x9315,0xAB57,0xBB77,0xBB36,0xBB16,0xBB16,0xBB16,0xBB37,0xC378,0xA2D6,0x7171,0x6110,0x5952,0x5992,0x5192,0x4992,0x4992,0x4992,0x4992,0x4992,0x4192,0x4192,0x4192,0x4192,0x3992,0x3972,0x3971,0x3951,0x3151,0x3971,0x3171,0x3171,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2910,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x2910,0x290F,0x2930,0x2930,0x2930,0x210F,0x210F,0x290F,0x292F,0x292F,0x292F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x2132,0x1931,0x1931,0x1912,0x1911,0x2131,0x2111,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x2130,0x2130,0x2110,0x210F,0x212F,0x212F,0x2130,0x2930,0x2110,0x2110,0x212F,0x210F,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x290F,0x210F,0x292F,0x290F,0x290F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x1931,0x1931,0x1932,0x1952,0x1952,0x1952,0x1932,0x1932,0x1932,0x1931,0x1111,0x1931,0x1931,0x1931,0x1952,0x1952,0x1952,0x1952,0x1931,0x1911,0x1911,0x1911,0x1931,0x1931,0x1932,0x1952,0x1952,0x1952,0x1953,0x1952,0x1932,0x1932,0x2131,0x2111,0x2130,0x2110,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x1931,0x1952,0x1952,0x1952,0x1972,0x1951,0x1931,0x1931,0x1931,0x1911,0x1931,0x1131,0x1152,0x1152,0x1952,0x1952,0x1952,0x1952,0x1952,0x1931,0x1931,0x1910,0x1931,0x1931,0x1931,0x1931,0x1952,0x1952,0x1972,0x1952,0x1952,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1952,0x1972,0x1932,0x1952,0x1931,0x1931,0x1931,0x1931,0x1931,0x1952,0x1952,0x1952,0x1952,0x1972,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1132,0x1952,0x1952,0x1952,0x1952,0x1931,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2910,0x210F,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x2910,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x2930,0x290F,0x2910,0x2910,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930, + 0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x290F,0x2930,0x2930,0x2930,0x2910,0x2930,0x210F,0x210F,0x2910,0x2910,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2910,0x290F,0x210F,0x2930,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x2110,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x1911,0x1932,0x1933,0x1154,0x1175,0x1196,0x11D8,0x1A19,0x1A19,0x19F9,0x11D8,0x11D7,0x1197,0x1176,0x1175,0x0934,0x1134,0x1133,0x1133,0x1133,0x1132,0x1112,0x1112,0x1132,0x1132,0x1132,0x1133,0x0932,0x1133,0x1133,0x1133,0x1133,0x1133,0x1113,0x1133,0x0933,0x1113,0x1113,0x0912,0x0912,0x0912,0x0912,0x1133,0x0912,0x0912,0x1113,0x1113,0x1113,0x1113,0x1113,0x1133,0x1132,0x1132,0x1133,0x1132,0x0932,0x1133,0x1133,0x0913,0x1133,0x0933,0x0912,0x0933,0x0933,0x0913,0x1133,0x0913,0x1133,0x1113,0x1113,0x1133,0x1133,0x0912,0x1113,0x0933,0x0913,0x0913,0x0913,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x08F2,0x08F1,0x08F2,0x0912,0x0913,0x0933,0x0933,0x0933,0x1154,0x1174,0x1175,0x1196,0x11B7,0x19F8,0x11F8,0x1218,0x1A19,0x11F8,0x1196,0x1155,0x1133,0x1112,0x1911,0x2111,0x2131,0x2130,0x2930,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x290F,0x2910,0x2930,0x2930,0x210F,0x210F,0x290F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x2131,0x1932,0x1132,0x1154,0x1175,0x1196,0x1196,0x11B7,0x11B7,0x11B8,0x11D8,0x11B7,0x11B6,0x1195,0x1974,0x1953,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x28EF,0x30F0,0x38B0,0x4090,0x4870,0x5030,0x99F9,0xD33F,0xD2FE,0xCA9D,0xCA7D,0xD29E,0xCA7D,0xCA7D,0xCA9D,0xCABD,0xD37F,0xBB1D,0x60D3,0x4030,0x3890,0x30B0,0x28D0,0x28F0,0x2910,0x2910,0x2930,0x290F,0x2910,0x2930,0x2930,0x290F,0x210F,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x2910,0x2930,0x210F,0x212F,0x210F,0x2910,0x2910,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2131,0x1931,0x1112,0x0933,0x1196,0x11F8,0x09F9,0x09F9,0x09D8,0x09B7,0x11B6,0x11B5,0x1194,0x1174,0x1152,0x1131,0x1931,0x2151,0x2130,0x2110,0x210F,0x2110,0x2110,0x2111,0x1912,0x1933,0x1134,0x1175,0x11B7,0x11D8,0x11D8,0x11F8,0x11D8,0x11B6,0x1175,0x1154,0x1953,0x1932,0x1931,0x2131,0x2131,0x2130,0x2930,0x2930,0x2930,0x2930,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2950,0x3150,0x3150,0x3150,0x3150,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3951,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x4172,0x4192,0x4192,0x4192,0x4192,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x51B2,0x5192,0x5171,0x5991,0x594F,0x8AB4,0xDCDB,0xDCBA,0xDC99,0xDC78,0xDC58,0xDC37,0xDC37,0xDC17,0xDC37,0xDC37,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC37,0xDC16,0xDC16,0xDC16,0xDC17,0xDC37,0xDC16,0xDC37,0xDBF6,0xDC16,0xDC37,0xDC57,0xD457,0xC457,0xAC57,0x9C57,0x94D8,0x8D5A,0x8E1C,0x7E3C,0x765D,0x6E7D,0x6EBE,0x66DE,0x66FE,0x66DE,0x66FE,0x5EDE,0x66FE,0x66FE,0x5EFE,0x5EFE,0x66FE,0x5EDE,0x66FE,0x5EDE,0x5EDE,0x5EDE,0x5EBE,0x66BE,0x66BE,0x5EBE,0x66BE,0x66BE,0x66BE,0x66BE,0x66BE,0x669E,0x66BE,0x669E,0x669E,0x6E9E,0x6EBE,0x6E9E,0x6EBE,0x76DF,0x76DF,0x7EBE,0x86BE,0x8E9F,0x8E7E,0x8E5E,0x963D,0x95FC,0x8D9B,0x8519,0x7CB8,0x7456,0x73F5,0x7BF5,0x8C16,0x9436,0x9C16,0xAC37,0xB437,0xABD6,0xBBD7,0xBB96,0xC396,0xCB96,0xCB76,0xCB76,0xCB56,0xD376,0xD356,0xD356,0xD356,0xD336,0xD336,0xD336,0xCB15,0xCB15,0xD356,0xCB36,0xCB36,0xC335,0xC315,0xBAF5,0xBAD5,0xC315,0xCB56,0xCB36,0xCB36,0xC336,0xBB56,0xB357,0xA377,0x93B8,0x73D8,0x6419,0x753C,0x6D9D,0x6D7D,0x6D5D,0x64DB,0x7CFB,0x8C9A,0x8376,0x9335,0xA356,0xBB77,0xBB36,0xBB36,0xBAF6,0xC316,0xC316,0xC337,0xBB38,0x89F3,0x6110,0x6151,0x5972,0x5172,0x5172,0x4992,0x4992,0x4992,0x4192,0x4192,0x4172,0x4192,0x4172,0x3972,0x3972,0x3972,0x3972,0x3971,0x3151,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x3151,0x3151,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x290F,0x292F,0x212F,0x2130,0x292F,0x212F,0x292F,0x290F,0x2930,0x290F,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2131,0x2110,0x2110,0x2131,0x2111,0x2111,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x2910,0x2110,0x2110,0x2110,0x2130,0x2930,0x290F,0x212F,0x292F,0x290F,0x292F,0x2930,0x2130,0x2930,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1910,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1931,0x2131,0x2131,0x2131,0x2130,0x2130,0x2930,0x292F,0x290F,0x292F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1930,0x1931,0x1951,0x1951,0x1951,0x1931,0x1931,0x1930,0x1930,0x1931,0x1931,0x1931,0x1931,0x1951,0x1952,0x1952,0x1931,0x1931,0x1952,0x1931,0x1931,0x1910,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2151,0x2131,0x2130,0x2130,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1930,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2110,0x2130,0x2130,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2930,0x290F,0x210F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930, + 0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x290F,0x210F,0x290F,0x290F,0x212F,0x210F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2910,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x290F,0x210F,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x292F,0x292F,0x2130,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x2930,0x212F,0x212F,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2131,0x1931,0x1931,0x1932,0x1153,0x1175,0x1196,0x11D8,0x11D8,0x11F9,0x1A19,0x11F9,0x11D8,0x11D8,0x11D8,0x11D8,0x19F8,0x19F8,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19D7,0x19F7,0x19D7,0x19F7,0x19F7,0x19F7,0x19D7,0x19F7,0x19D7,0x19F7,0x19F7,0x19F7,0x19D7,0x19F7,0x19F7,0x19F8,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x2217,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x1A17,0x19F7,0x19F8,0x19F8,0x19F7,0x19F7,0x2218,0x19F7,0x1A18,0x19F7,0x2218,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19D7,0x11D7,0x19F7,0x19F8,0x1A38,0x2239,0x2238,0x2259,0x2239,0x1A39,0x1A18,0x1A18,0x1A39,0x1219,0x1A39,0x11F8,0x11D8,0x1196,0x1175,0x1134,0x10F2,0x1911,0x2111,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x290F,0x210F,0x292F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2131,0x1911,0x1931,0x1112,0x1933,0x1974,0x1995,0x19B6,0x1995,0x1995,0x1975,0x1154,0x1153,0x1953,0x1952,0x1911,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x2130,0x2130,0x2130,0x2930,0x292F,0x210F,0x292F,0x292F,0x290F,0x28EF,0x30F0,0x30B0,0x38B0,0x4090,0x4030,0x5872,0x9219,0xB2DD,0xC2FE,0xC2FD,0xC2FD,0xC31E,0xC33E,0xBB3D,0x81B6,0x4850,0x4070,0x3890,0x30B0,0x28D0,0x28F0,0x28F0,0x2910,0x2910,0x2930,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x2110,0x2130,0x2110,0x2910,0x210F,0x210F,0x290F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2131,0x1931,0x1932,0x1153,0x1195,0x11F8,0x09F9,0x09F9,0x09F9,0x09F9,0x09D8,0x09D7,0x11F7,0x11D6,0x11B5,0x0974,0x1132,0x1132,0x1951,0x2131,0x2130,0x2110,0x2110,0x2111,0x2132,0x1933,0x1954,0x1996,0x19D7,0x19F8,0x11D8,0x09B8,0x09D8,0x11D8,0x11D7,0x11B7,0x1195,0x1154,0x1133,0x1932,0x1931,0x2131,0x2131,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x2930,0x3150,0x3150,0x3150,0x2930,0x3150,0x3150,0x3151,0x3151,0x3151,0x3150,0x3151,0x3150,0x3151,0x3951,0x3151,0x3151,0x3951,0x3971,0x3951,0x3951,0x3951,0x3971,0x3972,0x3972,0x3972,0x3972,0x3972,0x4192,0x4192,0x4192,0x4172,0x4172,0x4992,0x49B3,0x4992,0x4992,0x4992,0x4992,0x51B2,0x51B2,0x5191,0x5171,0x5950,0x616F,0xABB7,0xDCDB,0xDCBA,0xDC99,0xDC58,0xDC38,0xDC58,0xDC58,0xDC38,0xDC37,0xDC17,0xDC37,0xDC17,0xE437,0xDC16,0xDC16,0xDC16,0xDC16,0xDC17,0xDC37,0xDC17,0xDC17,0xDBF6,0xDBF6,0xD416,0xDC37,0xDC37,0xDC37,0xD437,0xCC58,0xBC57,0xAC57,0x9498,0x84F9,0x7D9B,0x6DFC,0x667D,0x5EBD,0x56FE,0x4EFE,0x46FE,0x46FE,0x3EFE,0x3EFE,0x3EDE,0x3EDE,0x36DE,0x36DE,0x36DE,0x36DD,0x36FE,0x36DE,0x36DE,0x36DE,0x3EDE,0x3EDE,0x3EDE,0x3EDE,0x3EDE,0x3EDE,0x3EDE,0x3EDE,0x3EBE,0x3EDE,0x3EBE,0x46DE,0x46DE,0x46DE,0x46DF,0x46DE,0x46DF,0x46BE,0x46DE,0x46BE,0x4EBE,0x4EBE,0x56BE,0x569E,0x5E9E,0x667E,0x669E,0x6E9E,0x769E,0x769E,0x7E9E,0x765D,0x75FC,0x759A,0x6D19,0x6C97,0x7477,0x7C36,0x7BB5,0x8395,0x9BB6,0xA3B6,0xAB96,0xBB96,0xC396,0xC376,0xC355,0xCB56,0xCB36,0xD336,0xD356,0xD356,0xD336,0xD336,0xD336,0xD316,0xCB16,0xCB36,0xD356,0xD356,0xCB36,0xCB36,0xCB15,0xC2D4,0xCB15,0xCAF5,0xCB16,0xCB36,0xC357,0xBB57,0xAB36,0x9336,0x8BD9,0x73F9,0x6459,0x6D5D,0x659D,0x5D9D,0x659D,0x5CFB,0x751B,0x84DA,0x7BB6,0x8314,0xA356,0xB376,0xC357,0xC316,0xC316,0xC316,0xC2F6,0xC317,0xC338,0xAAB6,0x7171,0x58F0,0x5951,0x5972,0x5172,0x4992,0x4992,0x4992,0x4172,0x4172,0x4192,0x4192,0x3972,0x3972,0x3972,0x3972,0x3972,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x292F,0x290F,0x210F,0x2130,0x212F,0x2130,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x210F,0x210F,0x2910,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2130,0x2131,0x2131,0x2131,0x1931,0x2131,0x2131,0x2131,0x1931,0x2131,0x2151,0x1931,0x1931,0x1951,0x1931,0x1951,0x1951,0x2151,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2910,0x2930,0x290F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x1951,0x1951,0x1931,0x1931,0x2130,0x1930,0x1930,0x1930,0x1951,0x1951,0x1951,0x1951,0x1931,0x2152,0x1931,0x1931,0x2130,0x2110,0x2130,0x1910,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x1930,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1930,0x1931,0x1930,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1930,0x2130,0x2130,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2930,0x210F,0x210F,0x2930,0x2930,0x2130,0x212F,0x2930,0x212F,0x212F,0x210F,0x2910,0x2910,0x210F,0x2930,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930, + 0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2910,0x290F,0x290F,0x210F,0x2930,0x290F,0x210F,0x210F,0x2910,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2930,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x292F,0x292F,0x210F,0x290F,0x290F,0x292F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x212F,0x2930,0x212F,0x210F,0x212F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2131,0x1931,0x1932,0x1954,0x1175,0x1196,0x11D7,0x19F9,0x11D8,0x11F9,0x11F9,0x11D9,0x11D9,0x11D9,0x11F9,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11D8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11D8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x1219,0x11F8,0x19F9,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x19F8,0x11F8,0x11F8,0x11F8,0x19F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11D8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x1218,0x11F8,0x11F8,0x11F8,0x1218,0x11F8,0x11F8,0x11F8,0x1218,0x11F8,0x11F8,0x11F8,0x1218,0x1218,0x1218,0x11F8,0x1218,0x1A39,0x11F9,0x11F9,0x11F9,0x11D8,0x11F8,0x09D8,0x09D8,0x09D7,0x09B7,0x09B7,0x09D7,0x11F8,0x09D7,0x11D7,0x1196,0x1155,0x1134,0x1112,0x1912,0x1911,0x2111,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2910,0x2910,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x2130,0x210F,0x210F,0x2110,0x2110,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2111,0x1931,0x1931,0x1932,0x1932,0x1953,0x1933,0x1933,0x1932,0x1932,0x1931,0x1931,0x1931,0x1930,0x1910,0x2110,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2930,0x2930,0x212F,0x2930,0x212F,0x292F,0x210F,0x290F,0x28EF,0x28EF,0x28EF,0x30CF,0x30B0,0x3890,0x3850,0x3810,0x4010,0x5072,0x60F4,0x6914,0x60D3,0x4851,0x4010,0x380F,0x3870,0x38B0,0x30AF,0x28D0,0x28F0,0x28F0,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x290F,0x2910,0x210F,0x2930,0x290F,0x2930,0x290F,0x290F,0x2910,0x210F,0x2110,0x2930,0x2910,0x210F,0x290F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1953,0x1174,0x11B6,0x1218,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F8,0x09F8,0x11D7,0x11D7,0x11B5,0x1174,0x1153,0x1952,0x1931,0x1910,0x2131,0x2131,0x2132,0x2153,0x1954,0x1995,0x19F7,0x19F8,0x11D8,0x09B7,0x09B7,0x09B7,0x09B8,0x19F9,0x11D8,0x19B7,0x1995,0x1954,0x1953,0x1932,0x2131,0x2131,0x2931,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3130,0x3150,0x3150,0x3150,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3951,0x3951,0x3951,0x3951,0x3971,0x3971,0x3971,0x3971,0x3972,0x3972,0x3972,0x3972,0x3972,0x4192,0x4192,0x4192,0x4172,0x4192,0x4993,0x49B3,0x4992,0x4992,0x4992,0x51B2,0x51B2,0x5192,0x5991,0x5970,0x6190,0xB3F8,0xDCDB,0xDCBA,0xDC79,0xDC58,0xDC58,0xDC57,0xDC37,0xDC58,0xDC37,0xDC37,0xDC16,0xDC17,0xDC37,0xDC17,0xDC16,0xDC16,0xDC16,0xDC17,0xDC17,0xDC17,0xDC37,0xDC17,0xDC16,0xD416,0xD416,0xDC57,0xDC57,0xD478,0xCC57,0xB457,0xA477,0x94B8,0x7D19,0x6D9A,0x663C,0x5EBE,0x4F1E,0x3F1E,0x373E,0x2F1E,0x2F1E,0x26FE,0x26FE,0x26FE,0x1EFE,0x1EDE,0x1EFE,0x1EFE,0x1EFE,0x1F1E,0x1EFE,0x1EDE,0x271E,0x1EFE,0x1EDE,0x1EDE,0x1EDE,0x1EDE,0x1EDE,0x1EDE,0x1EDE,0x1EDE,0x26DE,0x26DE,0x26DE,0x26DE,0x26DE,0x26DE,0x26DE,0x26DE,0x2EDF,0x2EDF,0x2EDE,0x2EDE,0x2EDE,0x36DE,0x36BE,0x36BE,0x369D,0x3E9E,0x3E9E,0x3E9E,0x469E,0x4EBE,0x4EDF,0x56FF,0x66FF,0x6EFF,0x76DF,0x7E9E,0x7E3D,0x7DBB,0x74F9,0x7437,0x73D6,0x83F6,0x8BB6,0x9B95,0xA396,0xAB96,0xBBB7,0xB356,0xC376,0xC336,0xCB56,0xCB36,0xCB56,0xCB36,0xD336,0xD336,0xD336,0xD316,0xD336,0xCB15,0xD336,0xD336,0xCB15,0xCB15,0xCAF5,0xC2D5,0xCAF5,0xCB16,0xCB16,0xC316,0xBB36,0xA316,0x9337,0x8BF9,0x6C19,0x5C9A,0x657D,0x5D9D,0x5DDE,0x5DDD,0x659C,0x64FA,0x8D3C,0x7BF7,0x7AF4,0x9B15,0xBB77,0xC356,0xC316,0xCAF6,0xCAF6,0xC2F6,0xCB17,0xC317,0xBB18,0x89F3,0x58CF,0x6151,0x5972,0x5192,0x5192,0x4992,0x4992,0x4992,0x4172,0x4192,0x4172,0x3972,0x4192,0x3972,0x3972,0x3972,0x3972,0x3151,0x3151,0x3151,0x3151,0x3171,0x3151,0x3151,0x3151,0x3131,0x3150,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x290F,0x2930,0x292F,0x292F,0x2930,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x210F,0x2930,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2951,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2131,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x1910,0x2131,0x2130,0x2131,0x2131,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x2131,0x2131,0x1931,0x2131,0x1931,0x2131,0x2151,0x2151,0x1931,0x1931,0x1951,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x1911,0x2151,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1951,0x2131,0x2131,0x2130,0x2130,0x2131,0x2131,0x1951,0x1951,0x1951,0x1931,0x1931,0x1931,0x2131,0x2131,0x2130,0x2130,0x2131,0x2131,0x2131,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2151,0x2130,0x2131,0x2130,0x2130,0x2131,0x1930,0x1930,0x1931,0x2131,0x1931,0x1931,0x1931,0x1930,0x1931,0x1931,0x1930,0x1910,0x1930,0x2151,0x2130,0x2131,0x1931,0x2131,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2151,0x1930,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2151,0x2131,0x2131,0x2131,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2930,0x212F,0x212F,0x210F,0x2110,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x2110,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910, + 0x212F,0x212F,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x212F,0x290F,0x292F,0x290F,0x2930,0x2930,0x2110,0x2910,0x290F,0x210F,0x2910,0x2910,0x2930,0x2910,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x292F,0x292F,0x210F,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x210F,0x2910,0x2910,0x2910,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x2151,0x1932,0x1932,0x1113,0x1155,0x1196,0x11B7,0x11D8,0x11D8,0x11D8,0x11D9,0x09B8,0x09B8,0x11D8,0x11D8,0x11D8,0x09B8,0x09B8,0x11B8,0x09B7,0x09B7,0x11D8,0x11D8,0x11D8,0x09B8,0x09B8,0x11D8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B7,0x09B8,0x09B8,0x09B8,0x09B8,0x09B7,0x09B8,0x09B8,0x09B7,0x09B7,0x09B7,0x09B7,0x09B7,0x09B7,0x09B7,0x0997,0x09B7,0x09B8,0x09B8,0x0997,0x09B8,0x09B8,0x0997,0x0997,0x09B7,0x09B7,0x09B8,0x09B8,0x09B8,0x09B7,0x0997,0x09B8,0x09B7,0x09B7,0x09B8,0x09B7,0x0997,0x09B7,0x09B7,0x09D8,0x09D8,0x09B8,0x09B8,0x09B8,0x0998,0x0997,0x0997,0x0997,0x09B7,0x09B7,0x09D8,0x09D7,0x11F8,0x09B7,0x19F7,0x11B6,0x0934,0x1113,0x1933,0x1912,0x2132,0x2131,0x2131,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x2130,0x2930,0x2930,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2910,0x2930,0x2930,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2110,0x20F0,0x2910,0x2910,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x2130,0x2930,0x2130,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x1910,0x1910,0x2131,0x1931,0x2131,0x1931,0x1911,0x1931,0x1931,0x1930,0x1930,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x2110,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x3110,0x30F0,0x30D0,0x30B0,0x3090,0x3870,0x3870,0x382F,0x300F,0x300F,0x304F,0x3070,0x306F,0x30AF,0x30D0,0x28F0,0x28F0,0x28EF,0x290F,0x2930,0x2910,0x2910,0x2910,0x2930,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x290F,0x210F,0x290F,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x2910,0x290F,0x2930,0x2930,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2111,0x1912,0x1954,0x1195,0x11D7,0x1219,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x01F9,0x09F9,0x09F8,0x09D7,0x11B6,0x1195,0x1153,0x1932,0x1931,0x1910,0x1910,0x2131,0x1932,0x1954,0x1975,0x21D7,0x19F8,0x19D8,0x11B7,0x09B7,0x0997,0x0997,0x09B7,0x19F9,0x19F9,0x19F8,0x19B6,0x19B5,0x1953,0x1952,0x2132,0x2131,0x2931,0x2951,0x2931,0x2930,0x2931,0x2930,0x2930,0x3130,0x2930,0x2930,0x2930,0x2930,0x3130,0x3150,0x3150,0x3150,0x3150,0x3150,0x3150,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x3951,0x3951,0x3971,0x3951,0x3951,0x3951,0x3951,0x3951,0x3971,0x3992,0x3972,0x4172,0x4172,0x4192,0x4192,0x4192,0x4192,0x4192,0x49B3,0x49B3,0x49B3,0x49B3,0x4992,0x51B3,0x51B2,0x51B2,0x51B2,0x5192,0x5971,0x5950,0x69D1,0xC47A,0xD4BB,0xDC9A,0xDC79,0xDC78,0xDC58,0xDC37,0xDC37,0xDC37,0xDC17,0xDC37,0xDC17,0xDC37,0xDC37,0xDC16,0xDC37,0xDC16,0xDC17,0xDC16,0xDC37,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xD437,0xD437,0xD457,0xCC57,0xC478,0xB457,0x9C77,0x8497,0x7539,0x6E1B,0x669D,0x571E,0x471F,0x373F,0x273E,0x275F,0x1F5F,0x1F5F,0x1F3F,0x171E,0x171F,0x171F,0x171F,0x171F,0x173F,0x171F,0x171F,0x171F,0x173F,0x171F,0x171F,0x16FE,0x171F,0x16FE,0x171F,0x171F,0x16FF,0x171F,0x171F,0x16FF,0x16FF,0x16FF,0x16FF,0x171F,0x171F,0x171F,0x171F,0x1F1F,0x1F1F,0x1F1F,0x1F1F,0x1F1F,0x1F1F,0x271F,0x26FF,0x26FF,0x26FE,0x26DE,0x1EBE,0x26BE,0x26BE,0x2EDE,0x2EBE,0x36DE,0x46DE,0x4EBE,0x5EBF,0x66BF,0x7EBF,0x869F,0x8E5E,0x85BC,0x7D1A,0x7CB9,0x8458,0x8C38,0x8BD6,0x9396,0x9B96,0xAB97,0xB376,0xBB97,0xC376,0xCB77,0xCB36,0xCB36,0xD336,0xCB16,0xD316,0xD316,0xD316,0xCAF5,0xD316,0xD315,0xCAF5,0xCAD5,0xC2B4,0xC2D5,0xCB16,0xCB36,0xCB16,0xCB37,0xBB37,0xA2F6,0x8B57,0x8419,0x6C59,0x549A,0x5DBE,0x55BD,0x55FE,0x5E3E,0x5DBD,0x5CFA,0x855C,0x7C18,0x7B14,0x9AF4,0xBB56,0xC316,0xCB16,0xCB37,0xCAF6,0xC2D6,0xCAF6,0xC2F6,0xC338,0xA296,0x7130,0x6130,0x5972,0x5992,0x5192,0x4992,0x4992,0x4992,0x4192,0x4172,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2910,0x2930,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x2131,0x2131,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2111,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2110,0x2131,0x2131,0x1911,0x1911,0x2131,0x2131,0x1931,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1932,0x1931,0x1931,0x1911,0x1911,0x1911,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x1931,0x2151,0x1950,0x1930,0x1930,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1952,0x1931,0x1932,0x1952,0x1931,0x1931,0x1931,0x1911,0x1910,0x2131,0x2131,0x1931,0x1951,0x1951,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1910,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1951,0x1951,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1952,0x1951,0x1931,0x1931,0x2131,0x2131,0x2131,0x2130,0x2131,0x2130,0x1930,0x2131,0x2130,0x1931,0x2151,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x210F,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2910,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x2910,0x210F,0x290F,0x290F,0x2910,0x2930, + 0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x212F,0x2930,0x210F,0x210F,0x2910,0x2110,0x2910,0x290F,0x290F,0x2910,0x2930,0x2930,0x2910,0x2930,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2110,0x2930,0x2930,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x290F,0x2930,0x292F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x212F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2910,0x2910,0x2110,0x2930,0x2130,0x2110,0x2110,0x2930,0x2930,0x2110,0x2930,0x2130,0x2130,0x2131,0x1911,0x1912,0x1932,0x1933,0x1955,0x1996,0x19B7,0x19D8,0x11D8,0x11D8,0x11D8,0x11F9,0x11B8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11F8,0x11D8,0x11D8,0x11D8,0x11F8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11F8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11F9,0x11D8,0x09B8,0x11D8,0x11D8,0x11D8,0x09B8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x09B7,0x11D8,0x11F8,0x11D8,0x11D8,0x11D7,0x09B7,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x09D8,0x09D8,0x11D8,0x11D8,0x11D8,0x11B8,0x11D8,0x11D8,0x11B8,0x09B7,0x11D8,0x11D8,0x11D8,0x11F8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11F8,0x09D8,0x11F8,0x11D8,0x11B8,0x11B8,0x09B8,0x11B8,0x11F8,0x11D8,0x11F8,0x1A18,0x11D7,0x11F7,0x19F7,0x1195,0x1154,0x1133,0x1932,0x1912,0x2132,0x2111,0x2110,0x2910,0x2110,0x2110,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2930,0x210F,0x2930,0x210F,0x210F,0x2130,0x210F,0x2110,0x210F,0x290F,0x290F,0x2910,0x210F,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2910,0x2110,0x210F,0x2130,0x2110,0x2930,0x2110,0x2130,0x2130,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x2910,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x292F,0x2930,0x2910,0x2910,0x28EF,0x30F0,0x30B0,0x30B0,0x30B0,0x3090,0x38D1,0x30B0,0x3090,0x288F,0x30D0,0x28D0,0x28F0,0x28EF,0x28EF,0x2910,0x2930,0x2930,0x210F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x210F,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x2930,0x2910,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1912,0x1133,0x1196,0x11F8,0x09D8,0x01D9,0x01D9,0x01B9,0x01B9,0x01D9,0x01F9,0x01D9,0x01D8,0x09F8,0x09B7,0x11B6,0x1174,0x1132,0x1111,0x1911,0x1931,0x1912,0x1933,0x1934,0x1996,0x19F7,0x19F8,0x11B8,0x0997,0x0996,0x0996,0x0996,0x0996,0x11B7,0x19F8,0x19F8,0x19D7,0x19B6,0x1974,0x1952,0x2152,0x2151,0x2951,0x2931,0x2931,0x2931,0x2931,0x2930,0x2930,0x2930,0x2930,0x3150,0x3150,0x3150,0x3130,0x3150,0x3130,0x3151,0x3150,0x3150,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3951,0x3951,0x3951,0x3971,0x3971,0x3951,0x3952,0x3972,0x3972,0x3972,0x4192,0x4192,0x4172,0x4192,0x4192,0x4192,0x4192,0x49B2,0x49B3,0x49B3,0x49B3,0x49B2,0x4992,0x5192,0x51B2,0x51B2,0x5992,0x5991,0x514F,0x69D1,0xC45A,0xD49A,0xDC9A,0xDC79,0xDC58,0xDC57,0xDC37,0xDC57,0xDC17,0xDC17,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC16,0xDC36,0xDC16,0xDC16,0xDC36,0xDC37,0xDC17,0xDC37,0xD416,0xD436,0xD457,0xD437,0xD477,0xC457,0xBC78,0xAC78,0x9457,0x84B8,0x757A,0x6E3C,0x5EBD,0x4F1E,0x3F3F,0x2F3E,0x1F5F,0x1F7F,0x175F,0x175F,0x175F,0x0F5F,0x0F3F,0x0F3F,0x0F3F,0x0F3F,0x0F3F,0x0F3F,0x0F3F,0x0F3F,0x0F1F,0x0F1F,0x0F1F,0x0F1F,0x0F1F,0x0F1F,0x0F1F,0x06FF,0x0F1F,0x0F1F,0x0F1F,0x0F1F,0x0F1F,0x0EFF,0x0EFF,0x0EFF,0x0EFF,0x0F1F,0x0F1F,0x0EFF,0x0EFF,0x0F1F,0x0F1F,0x0EFF,0x0EFF,0x0EFF,0x171F,0x16FF,0x171F,0x0EFE,0x16FF,0x16FF,0x16FF,0x16FF,0x16DE,0x1EDE,0x1EDE,0x26BE,0x2EBE,0x369E,0x3E5D,0x467D,0x5E9E,0x669F,0x769F,0x7E7F,0x7E1D,0x85DD,0x7D3B,0x84FA,0x8499,0x8C58,0x93F7,0x9BB7,0xA3B7,0xAB97,0xBB77,0xC357,0xCB77,0xCB36,0xCB16,0xD336,0xCB16,0xD316,0xD316,0xD316,0xD336,0xD316,0xD316,0xCAD5,0xCAB5,0xCAD5,0xD316,0xCB16,0xCB16,0xC337,0xB317,0x9B16,0x8B77,0x7C3A,0x5C59,0x551C,0x5DFE,0x561E,0x4DFE,0x5E5F,0x661E,0x5D1A,0x74DA,0x8458,0x8334,0x92D4,0xBB36,0xC336,0xC316,0xCAF6,0xCAF6,0xCAB5,0xCAF6,0xCAF6,0xC317,0xB2F7,0x79B2,0x58F0,0x5972,0x5992,0x5172,0x4972,0x4992,0x4172,0x4192,0x4172,0x4192,0x3972,0x3992,0x3972,0x3972,0x3972,0x3972,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x2130,0x2130,0x2110,0x2110,0x2130,0x210F,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2130,0x2110,0x2130,0x2131,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1932,0x2132,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x2131,0x1931,0x2131,0x2131,0x1911,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1931,0x1932,0x1932,0x1932,0x1911,0x1932,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1932,0x1932,0x1912,0x1912,0x1932,0x1932,0x1932,0x1931,0x1932,0x1932,0x1931,0x1931,0x1931,0x1131,0x1932,0x1911,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1912,0x1932,0x1912,0x1932,0x1912,0x1932,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1952,0x1952,0x1952,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x1932,0x1931,0x1952,0x1932,0x1952,0x1952,0x1932,0x1932,0x1932,0x1931,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1952,0x1931,0x1952,0x1931,0x1931,0x1952,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1952,0x1932,0x1131,0x1952,0x1932,0x1932,0x1932,0x1932,0x1932,0x1132,0x1932,0x1132,0x1132,0x1932,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x2130,0x212F,0x2930,0x210F,0x2110,0x2110,0x210F,0x2930,0x2110,0x210F,0x2930,0x290F,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930, + 0x2930,0x212F,0x210F,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x2930,0x292F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x2910,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x210F,0x290F,0x2930,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x210F,0x2930,0x2110,0x2130,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x2112,0x1912,0x1953,0x2195,0x21B6,0x19D7,0x19F8,0x19F8,0x19F8,0x19F8,0x19F7,0x19F8,0x1A18,0x1A18,0x19F8,0x19D7,0x19F8,0x19D7,0x19F8,0x19F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11D8,0x11F8,0x19F8,0x19F8,0x19F8,0x1A18,0x1A18,0x19F8,0x19F8,0x19F8,0x1A19,0x19F8,0x1A18,0x19F8,0x19F8,0x1A18,0x19F8,0x19F8,0x19F8,0x19F8,0x1A18,0x19F8,0x19F8,0x1A18,0x19F8,0x19F8,0x1A18,0x1A18,0x19F8,0x1A18,0x1A18,0x1A18,0x19F8,0x19F8,0x1A18,0x1A18,0x19F8,0x19F8,0x19F8,0x1A18,0x1A18,0x19F8,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x19F8,0x1A18,0x2238,0x19F8,0x1A18,0x1A18,0x11F8,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A38,0x1A17,0x2237,0x2237,0x19D6,0x1174,0x1133,0x1932,0x1912,0x1911,0x2111,0x2111,0x2131,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x2930,0x290F,0x2930,0x210F,0x2930,0x290F,0x210F,0x2910,0x290F,0x210F,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2110,0x2930,0x2930,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2910,0x210F,0x212F,0x212F,0x2130,0x2110,0x210F,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x212F,0x2950,0x2130,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x28F0,0x30F0,0x28CF,0x30F0,0x30D0,0x30D0,0x30F0,0x3110,0x28F0,0x28EF,0x28EF,0x290F,0x2910,0x290F,0x210F,0x290F,0x2930,0x2930,0x2910,0x2930,0x2930,0x290F,0x290F,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x210F,0x290F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2111,0x1932,0x1154,0x19B7,0x11F8,0x09F9,0x01B9,0x01D9,0x01B9,0x01B9,0x01DA,0x01FA,0x01D9,0x01D9,0x09D8,0x09D8,0x11D7,0x1195,0x1152,0x1111,0x1951,0x1932,0x1912,0x1912,0x1934,0x21B7,0x19D7,0x11D7,0x0997,0x0976,0x0975,0x0975,0x0975,0x0996,0x0996,0x11B7,0x19D8,0x19D7,0x21D6,0x1974,0x1932,0x2152,0x2152,0x2952,0x2951,0x2931,0x2931,0x2930,0x2931,0x2931,0x3151,0x3150,0x2930,0x3150,0x3150,0x3130,0x3151,0x3151,0x3151,0x3151,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3971,0x3951,0x3951,0x3951,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x4172,0x4172,0x4172,0x4172,0x4172,0x4193,0x4192,0x4192,0x4192,0x4172,0x4992,0x49B3,0x49B3,0x51B3,0x51B3,0x51B2,0x51B2,0x51B2,0x5192,0x5971,0x5950,0x7212,0xD4BB,0xD47A,0xD479,0xDC79,0xDC58,0xDC37,0xDC37,0xDC37,0xDC17,0xDC37,0xDC17,0xDC16,0xDC16,0xDC16,0xDC37,0xDC17,0xDC16,0xDC16,0xDC36,0xDC36,0xDC36,0xD416,0xD416,0xD416,0xD436,0xD457,0xCC57,0xCC98,0xC4B8,0xB4B8,0x9C36,0x8456,0x7CF8,0x75BA,0x6E9D,0x5EBD,0x4F3F,0x373E,0x273E,0x1F5F,0x177F,0x0F5E,0x0F5F,0x0F5F,0x0F5F,0x0F5F,0x0F3F,0x0F3F,0x0F3F,0x0F3F,0x0F1F,0x0F1F,0x071F,0x071F,0x071F,0x071F,0x071F,0x071F,0x071F,0x071F,0x06FF,0x071F,0x071F,0x06FF,0x071F,0x071F,0x06FF,0x06FF,0x06FF,0x0EFF,0x06FF,0x06FF,0x06FF,0x071F,0x06FF,0x06FF,0x06FF,0x0F1F,0x06FF,0x0EFF,0x06FF,0x0EFF,0x0F1F,0x0EFF,0x0EFF,0x0EFF,0x0EFF,0x0EFF,0x0EFF,0x16FF,0x16FF,0x1EDF,0x1EDF,0x26DF,0x2EBF,0x2EBF,0x369E,0x3E9E,0x4E9F,0x56BF,0x66BF,0x667F,0x663E,0x65BC,0x653A,0x6CDA,0x74BA,0x7C59,0x8BF8,0x9397,0x9B77,0xAB77,0xBB77,0xC398,0xCB57,0xCB36,0xD337,0xCB16,0xCAF6,0xCAF6,0xCAF5,0xD316,0xD316,0xDB37,0xCAD5,0xC294,0xC2B5,0xCAD5,0xCAF6,0xC2F6,0xC357,0xB337,0x92F6,0x8377,0x7C5A,0x5479,0x5DDE,0x4DFE,0x45FD,0x45FD,0x565F,0x665F,0x6DBD,0x74FA,0x7C37,0x7B34,0x92F4,0xB335,0xBAF5,0xCB16,0xCAF6,0xCAD6,0xC295,0xCAD6,0xCAF6,0xCB17,0xBB17,0x9234,0x58EF,0x5931,0x5992,0x5172,0x4972,0x4972,0x4992,0x4192,0x4193,0x3972,0x3972,0x3972,0x3972,0x3972,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x3151,0x3150,0x2930,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x2930,0x2930,0x290F,0x290F,0x210F,0x212F,0x212F,0x2130,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x2930,0x2930,0x2930,0x212F,0x212F,0x2930,0x2930,0x2930,0x2130,0x2110,0x2131,0x1931,0x1931,0x1931,0x1932,0x1132,0x1132,0x1112,0x1932,0x1112,0x1932,0x1112,0x1112,0x1112,0x1112,0x1112,0x10F2,0x10F1,0x1112,0x10F2,0x1112,0x10F2,0x1112,0x10F1,0x10F2,0x10F2,0x10F2,0x10F2,0x1112,0x10F2,0x10F2,0x10F2,0x10F2,0x10F2,0x10F2,0x10F1,0x10F2,0x10F1,0x10F2,0x10F2,0x10F2,0x10F1,0x10F1,0x10F1,0x10F1,0x10F1,0x10F2,0x10F2,0x10F2,0x10F2,0x10F1,0x10F1,0x1112,0x10F1,0x10F1,0x10F1,0x10F1,0x10F1,0x10F2,0x10F2,0x10F2,0x10F2,0x10F1,0x10F1,0x10F1,0x10D1,0x10F1,0x10F1,0x10F1,0x10F2,0x10F1,0x08F1,0x10F2,0x10F2,0x10F2,0x10F2,0x10F2,0x08F1,0x10F2,0x08F1,0x08F1,0x08F1,0x0912,0x0911,0x0911,0x08F1,0x08F1,0x08F1,0x08D1,0x08F1,0x0912,0x0912,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x10F2,0x1112,0x10F2,0x10F2,0x10F2,0x10F2,0x08F1,0x10F1,0x10F1,0x10F1,0x10F1,0x10D1,0x10D2,0x10D2,0x08D1,0x1112,0x0912,0x08F1,0x0911,0x0911,0x1111,0x1111,0x08F1,0x10F2,0x10F2,0x10F2,0x08F1,0x10F2,0x10F1,0x1112,0x10F1,0x1112,0x1112,0x1112,0x08F2,0x0912,0x08F2,0x1112,0x1112,0x1112,0x10F2,0x10F1,0x08F1,0x1111,0x10F1,0x1112,0x0911,0x0912,0x0912,0x0912,0x0912,0x0912,0x1112,0x1112,0x08F2,0x1112,0x1112,0x1112,0x1112,0x1112,0x0911,0x0911,0x0911,0x0911,0x0911,0x0911,0x0911,0x0912,0x0912,0x1132,0x1112,0x1112,0x10F1,0x1111,0x10F1,0x10F1,0x10F1,0x10F2,0x10F2,0x10F2,0x08F2,0x1112,0x08F2,0x1112,0x08F2,0x0911,0x0911,0x08F2,0x08F2,0x1112,0x08F2,0x0912,0x08F2,0x08F2,0x08F2,0x0912,0x0912,0x0912,0x0912,0x0912,0x10F2,0x10F1,0x10F1,0x10F1,0x10F1,0x08F1,0x10F1,0x10F1,0x10F1,0x1112,0x1111,0x1112,0x1112,0x1132,0x1132,0x1112,0x1132,0x1932,0x1932,0x1931,0x1911,0x1911,0x2131,0x2131,0x2131,0x2131,0x2150,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x2130,0x2930,0x212F,0x292F,0x212F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x290F,0x210F,0x2930,0x2930,0x2930,0x2910,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910,0x210F,0x290F,0x210F,0x210F,0x2930,0x290F,0x2930,0x2930, + 0x290F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x2930,0x2910,0x2910,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x290F,0x210F,0x2930,0x290F,0x210F,0x290F,0x2930,0x290F,0x2930,0x210F,0x2110,0x2110,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2930,0x2110,0x210F,0x2110,0x2910,0x2110,0x2930,0x2110,0x2910,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x290F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x2110,0x210F,0x212F,0x2130,0x2130,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x2111,0x2111,0x1912,0x1932,0x1953,0x1954,0x1995,0x1995,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19D6,0x19D7,0x19B6,0x19D7,0x11D6,0x19D7,0x19B6,0x19D6,0x19B6,0x19B6,0x11B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19D7,0x19B7,0x19D7,0x19B7,0x19D7,0x19B6,0x19B7,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19D6,0x19D6,0x19D6,0x19B6,0x19B6,0x19B6,0x19B6,0x11B6,0x19D6,0x19B6,0x11B6,0x11B6,0x19B6,0x19B6,0x19B6,0x1196,0x19D6,0x11B6,0x19D6,0x11D6,0x19D6,0x19B6,0x19D6,0x11B6,0x19D6,0x19D6,0x11B6,0x19B6,0x11B6,0x19B6,0x19B6,0x11B6,0x19B6,0x1195,0x19B5,0x1194,0x1174,0x1153,0x1132,0x1132,0x1912,0x1911,0x1911,0x2111,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x212F,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x2930,0x2910,0x2910,0x292F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2930,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2910,0x2910,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x212F,0x210F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x28EF,0x28EF,0x28EF,0x28F0,0x28F0,0x28F0,0x28EF,0x2910,0x20EF,0x2910,0x2930,0x2910,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2910,0x290F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x2930,0x290F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2111,0x1912,0x1154,0x11B7,0x1219,0x09F9,0x01D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01D9,0x01DA,0x01D9,0x01D9,0x09D8,0x11D7,0x11B6,0x1153,0x1131,0x2173,0x1952,0x1912,0x1112,0x1954,0x19B7,0x19F8,0x11B7,0x0976,0x0955,0x0154,0x0974,0x0975,0x0975,0x0976,0x1196,0x19B7,0x19D7,0x21B6,0x1974,0x1952,0x2152,0x2131,0x2131,0x2931,0x2951,0x2931,0x2931,0x3151,0x3151,0x2930,0x3150,0x3150,0x3150,0x3150,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3151,0x3151,0x3971,0x3971,0x3971,0x3971,0x3951,0x3971,0x3971,0x3971,0x3972,0x3972,0x3972,0x4172,0x4172,0x4192,0x4192,0x4172,0x4172,0x4193,0x4193,0x4192,0x4993,0x4992,0x4992,0x4993,0x51B3,0x51B3,0x51B2,0x51B2,0x51B2,0x59B2,0x5991,0x512F,0x71F2,0xC45A,0xD479,0xDC99,0xD458,0xD437,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC16,0xDC37,0xDC37,0xDC37,0xDC16,0xDC37,0xDC16,0xDC37,0xDC37,0xDC36,0xD436,0xD436,0xD436,0xCC36,0xD477,0xCC77,0xCC98,0xC498,0xBCB8,0xA477,0x8C56,0x84B7,0x7D39,0x75FB,0x667D,0x5EFE,0x473E,0x375E,0x1F3E,0x175E,0x0F5E,0x0F5F,0x075F,0x075F,0x075F,0x075F,0x075F,0x0F5F,0x073F,0x071F,0x071F,0x071F,0x071F,0x071F,0x071F,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x071F,0x06FF,0x071F,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06DF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x0EFF,0x0EFF,0x06DF,0x0EDF,0x0EDF,0x0EDF,0x0EDF,0x16DF,0x16DF,0x1EDF,0x1EBF,0x269E,0x269E,0x2E9E,0x3EBF,0x46DF,0x4EDF,0x56BF,0x5E7F,0x5E1E,0x657C,0x6D1B,0x74BA,0x8C9A,0xA49B,0x9397,0x9336,0xA336,0xBB98,0xCB98,0xCB78,0xC317,0xCAF6,0xCB16,0xCAF6,0xD337,0xD316,0xD336,0xCAF5,0xD2F6,0xC294,0xC294,0xCAF6,0xC2D5,0xC2F6,0xBB37,0xB337,0x9316,0x83B8,0x747A,0x4CBA,0x5E1F,0x4E1E,0x35DD,0x463E,0x4E5E,0x5E3E,0x6DFE,0x753B,0x7C37,0x8335,0x9B15,0xB336,0xC316,0xCAF6,0xCAB5,0xCAD6,0xCAB5,0xCAD6,0xCAD6,0xCB17,0xC317,0xAAD6,0x6110,0x6151,0x5972,0x5172,0x4992,0x4992,0x4992,0x4192,0x4192,0x3972,0x3972,0x3972,0x3972,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x292F,0x292F,0x290F,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x2130,0x1910,0x1911,0x1911,0x1111,0x1112,0x1112,0x0912,0x0913,0x0913,0x08F3,0x0913,0x0913,0x08F3,0x0913,0x0913,0x0913,0x0913,0x0913,0x0913,0x0913,0x0913,0x0913,0x0913,0x0913,0x0913,0x0913,0x08F3,0x0913,0x0913,0x0913,0x08F3,0x0913,0x08F3,0x08F3,0x0913,0x0913,0x0913,0x08F3,0x0913,0x0913,0x0913,0x0913,0x0913,0x0913,0x0912,0x08F2,0x0912,0x0913,0x0913,0x08F3,0x0913,0x0913,0x0913,0x0913,0x0913,0x0913,0x0933,0x0933,0x1133,0x0913,0x1134,0x1134,0x1134,0x1133,0x1134,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1154,0x1134,0x1154,0x1134,0x1134,0x1133,0x1133,0x1133,0x0913,0x0933,0x1133,0x0933,0x0933,0x0933,0x0933,0x1153,0x0933,0x0933,0x1134,0x1154,0x0954,0x0954,0x1154,0x0934,0x1154,0x0934,0x0934,0x0934,0x1134,0x1134,0x1154,0x1154,0x1154,0x0934,0x1154,0x0933,0x1133,0x1134,0x1114,0x1134,0x1134,0x0913,0x0933,0x1154,0x1154,0x0933,0x0933,0x0933,0x1133,0x0913,0x0914,0x1134,0x0934,0x0913,0x1133,0x1133,0x1133,0x1133,0x1133,0x0913,0x0933,0x0933,0x0934,0x0933,0x0934,0x1134,0x1134,0x1134,0x1134,0x0933,0x0913,0x0933,0x0954,0x0933,0x0954,0x0954,0x0954,0x0954,0x0954,0x1154,0x0954,0x0933,0x1154,0x1134,0x0933,0x0933,0x1154,0x0953,0x0953,0x0953,0x0953,0x0953,0x0953,0x0953,0x0953,0x0953,0x0954,0x0933,0x1154,0x1133,0x1154,0x1133,0x1154,0x1133,0x1133,0x1133,0x1134,0x0933,0x0934,0x1154,0x1154,0x0933,0x1154,0x0953,0x0954,0x0934,0x1154,0x1134,0x0934,0x0934,0x0934,0x0954,0x0954,0x0934,0x0954,0x0954,0x1154,0x0934,0x1134,0x1134,0x1133,0x1133,0x1133,0x1133,0x1133,0x0933,0x0933,0x0913,0x0933,0x0933,0x0933,0x0933,0x0933,0x0912,0x0912,0x0912,0x1112,0x1112,0x1112,0x1911,0x1911,0x1911,0x2131,0x2131,0x2151,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2110,0x2930,0x210F,0x210F,0x2930,0x2110,0x292F,0x292F,0x2930,0x290F,0x2910,0x210F,0x2910,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930, + 0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2110,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x210F,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2910,0x2910,0x210F,0x2110,0x210F,0x290F,0x292F,0x290F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x2110,0x210F,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x1911,0x1911,0x1912,0x1912,0x1933,0x1133,0x1112,0x1112,0x1112,0x1112,0x10F2,0x1112,0x10F2,0x1112,0x1113,0x1113,0x1113,0x1113,0x1133,0x1133,0x1113,0x1113,0x0913,0x0913,0x0913,0x1113,0x1113,0x0913,0x1113,0x1113,0x0913,0x0913,0x08F3,0x08F3,0x1113,0x0913,0x0913,0x1113,0x1113,0x08F3,0x1113,0x0913,0x08F2,0x08F2,0x08F3,0x08F2,0x0912,0x1113,0x0912,0x0913,0x0913,0x0912,0x0913,0x1113,0x0912,0x0913,0x0913,0x0913,0x0913,0x08F2,0x0913,0x0913,0x0913,0x0913,0x0913,0x08F2,0x1113,0x1113,0x1113,0x08F2,0x0913,0x0913,0x0912,0x0912,0x0912,0x0912,0x0913,0x08F3,0x0913,0x0913,0x0913,0x0913,0x0912,0x1112,0x08F2,0x10F2,0x10F2,0x1112,0x1132,0x1132,0x1932,0x1911,0x1911,0x1911,0x2131,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x210F,0x2910,0x2910,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x2930,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2930,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x2930,0x2110,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2930,0x210F,0x210F,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x212F,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2910,0x210F,0x2110,0x2110,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x210F,0x2110,0x2110,0x2110,0x210F,0x2130,0x210F,0x210F,0x210F,0x212F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2930,0x2930,0x210F,0x2930,0x290F,0x2930,0x290F,0x290F,0x2930,0x290F,0x210F,0x2930,0x210F,0x2910,0x2930,0x2110,0x2110,0x2910,0x2930,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x2930,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1911,0x1933,0x1975,0x1A18,0x11F9,0x09D9,0x01FA,0x01D9,0x01D9,0x01DA,0x01FA,0x01DA,0x01DA,0x01B9,0x01D9,0x09D8,0x11F8,0x11B6,0x1153,0x1132,0x2193,0x1953,0x1912,0x1933,0x1975,0x2218,0x2218,0x11D7,0x0956,0x0935,0x0954,0x0974,0x0974,0x0975,0x0955,0x0976,0x11B7,0x19D7,0x21D6,0x2195,0x1932,0x2152,0x2152,0x2951,0x2931,0x2931,0x2931,0x2931,0x3151,0x2931,0x2951,0x3150,0x2930,0x3130,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3951,0x3951,0x3971,0x3971,0x3971,0x3971,0x3971,0x4192,0x4172,0x3972,0x3972,0x4172,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4993,0x4192,0x49B3,0x49B3,0x51D3,0x51B3,0x51B3,0x51B3,0x51B2,0x51B2,0x5192,0x59B2,0x5970,0x71F1,0xCC9B,0xCC5A,0xDC9A,0xD458,0xDC58,0xDC58,0xDC37,0xDC37,0xD416,0xDC16,0xDC37,0xDC37,0xD3F6,0xDC37,0xDC17,0xDC16,0xDC37,0xDC37,0xD416,0xD416,0xD416,0xD436,0xCC37,0xCC57,0xCC77,0xC498,0xC498,0xB498,0xAC77,0x9477,0x8CB7,0x8539,0x85DB,0x763C,0x66BD,0x4EDE,0x3F3F,0x2F3E,0x1F5F,0x175E,0x0F3E,0x075E,0x075F,0x075F,0x075F,0x075F,0x073F,0x073F,0x071F,0x071F,0x071F,0x06FF,0x071F,0x06FF,0x06DF,0x06FF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06FF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06DF,0x06DF,0x06DF,0x06DF,0x06FF,0x0EFF,0x0EFF,0x0EFF,0x06DF,0x0EDF,0x0EDF,0x0EDF,0x16DF,0x16DF,0x16BF,0x1EBF,0x1E9E,0x1E7E,0x267F,0x2EBF,0x3EBF,0x4EBF,0x567F,0x5DFE,0x655C,0x649A,0x63F9,0x73D9,0x9C7B,0x9BF9,0x9B57,0xA357,0xBB78,0xCB98,0xCB58,0xCB37,0xCB17,0xC2F6,0xCAF6,0xCAF6,0xCAD5,0xCAF6,0xCAD5,0xCAB5,0xC294,0xCAF6,0xC2F6,0xC2F6,0xC337,0xAB36,0x9377,0x8419,0x5C38,0x5D7D,0x563E,0x461E,0x35FD,0x3E3E,0x4E5E,0x561E,0x767F,0x7D7C,0x7C38,0x7B14,0x9B55,0xB336,0xC336,0xCAF5,0xCAF6,0xCAB5,0xCAB5,0xCAD6,0xCAF6,0xCB17,0xC317,0xBB38,0x7151,0x6110,0x5993,0x5152,0x4972,0x4972,0x4993,0x4192,0x4192,0x4192,0x3972,0x3972,0x3971,0x3971,0x3951,0x3951,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x2950,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x290F,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x292F,0x290F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x1910,0x1910,0x1911,0x1112,0x1133,0x1174,0x1995,0x19D6,0x19F7,0x19F8,0x2218,0x2218,0x2218,0x2218,0x2219,0x2218,0x2239,0x2218,0x2238,0x2218,0x2218,0x2218,0x2238,0x2238,0x2238,0x2238,0x2238,0x2238,0x2A39,0x2238,0x2238,0x2238,0x2238,0x2218,0x2238,0x2A39,0x2A38,0x2218,0x2A39,0x2238,0x2239,0x2238,0x2239,0x2218,0x2238,0x2218,0x2238,0x2238,0x2238,0x2218,0x2239,0x2239,0x2A39,0x2239,0x2A39,0x2238,0x2238,0x2218,0x2A59,0x2238,0x2238,0x2238,0x2A18,0x21F8,0x2A18,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2238,0x2218,0x2239,0x2218,0x2A39,0x2239,0x2218,0x2218,0x2238,0x2218,0x2238,0x2218,0x2238,0x2238,0x2238,0x2218,0x2238,0x2218,0x2218,0x2218,0x2239,0x2238,0x2219,0x2219,0x2218,0x1A18,0x2238,0x1A18,0x2239,0x2218,0x2238,0x1A18,0x2238,0x2238,0x2218,0x2218,0x2218,0x2218,0x2218,0x21F8,0x1A18,0x2218,0x2238,0x2218,0x2218,0x1A18,0x2238,0x1A18,0x21F8,0x21F8,0x21F8,0x21F8,0x2218,0x2218,0x2218,0x21F8,0x21F8,0x21F8,0x2218,0x19F8,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x21F8,0x2218,0x19F8,0x1A18,0x1A18,0x1A38,0x1A38,0x1A38,0x1A38,0x2238,0x2218,0x2238,0x2218,0x2218,0x19F8,0x1A18,0x1A18,0x2238,0x2218,0x2238,0x2238,0x2238,0x1A18,0x1A38,0x1A38,0x1A38,0x1A18,0x2238,0x1A18,0x2238,0x2218,0x2218,0x2218,0x21F8,0x21F8,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2238,0x2218,0x2218,0x2218,0x2218,0x2218,0x2239,0x2218,0x2218,0x2218,0x2239,0x1A18,0x1A18,0x19F8,0x2218,0x1A18,0x2219,0x2218,0x2219,0x2218,0x2219,0x2218,0x2238,0x2238,0x2238,0x2218,0x2218,0x2238,0x1A18,0x1A17,0x1A38,0x1A17,0x2217,0x19F7,0x19F7,0x19B6,0x19B6,0x1175,0x1113,0x1113,0x1112,0x1112,0x1111,0x1931,0x2131,0x2130,0x2130,0x2150,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x2110,0x210F,0x2930,0x290F,0x2930,0x2910,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910,0x210F,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930, + 0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2910,0x2930,0x2110,0x2910,0x2910,0x2110,0x2110,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2111,0x2111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x18F1,0x1912,0x1912,0x1912,0x1112,0x1912,0x1912,0x1112,0x1112,0x1912,0x1912,0x1112,0x1112,0x1112,0x1112,0x1112,0x1912,0x10F2,0x1112,0x1912,0x10F1,0x1112,0x1112,0x1112,0x1112,0x1912,0x1112,0x1912,0x1112,0x1112,0x10F2,0x1912,0x1112,0x1912,0x1912,0x1112,0x10F1,0x1912,0x1112,0x1112,0x1112,0x1112,0x10F2,0x1112,0x1112,0x1112,0x1112,0x1932,0x1112,0x1112,0x1112,0x1132,0x1112,0x1912,0x1912,0x1912,0x1112,0x1912,0x1912,0x1912,0x1112,0x1912,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1912,0x1912,0x1912,0x1912,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x2111,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2930,0x2110,0x2930,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2910,0x2910,0x2910,0x2910,0x2110,0x212F,0x212F,0x212F,0x2930,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2910,0x2910,0x210F,0x2930,0x290F,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2930,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x210F,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x2930,0x210F,0x2110,0x2110,0x210F,0x210F,0x290F,0x290F,0x212F,0x212F,0x290F,0x290F,0x2930,0x210F,0x290F,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x210F,0x2910,0x2930,0x2110,0x210F,0x210F,0x2110,0x210F,0x2930,0x2110,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x210F,0x2930,0x210F,0x212F,0x212F,0x292F,0x212F,0x212F,0x292F,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x20EF,0x290F,0x290F,0x2930,0x290F,0x2910,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x210F,0x2910,0x2930,0x2910,0x2910,0x210F,0x290F,0x290F,0x2910,0x2930,0x290F,0x290F,0x2930,0x210F,0x212F,0x2110,0x210F,0x2910,0x210F,0x210F,0x210F,0x2910,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1911,0x1933,0x1175,0x19F8,0x11F9,0x09F9,0x01FA,0x01D9,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01B9,0x09D9,0x11F9,0x11D7,0x19D6,0x1153,0x1111,0x2173,0x2173,0x1912,0x1113,0x1975,0x21F7,0x2218,0x11D7,0x0976,0x0955,0x0954,0x0954,0x0974,0x0954,0x0955,0x1176,0x19D7,0x21F8,0x21B6,0x2195,0x1953,0x2152,0x2131,0x2931,0x2951,0x2931,0x2931,0x2951,0x2931,0x3131,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3151,0x3951,0x3951,0x3151,0x3951,0x3951,0x3951,0x3971,0x3972,0x3972,0x3972,0x4192,0x4172,0x4172,0x4192,0x4192,0x4172,0x4192,0x4192,0x4993,0x4992,0x49B3,0x4993,0x49B3,0x49B3,0x49B3,0x51D3,0x51B3,0x51B3,0x51B3,0x51B3,0x59B2,0x5991,0x5970,0x69B1,0xBC19,0xCC5A,0xDC7A,0xDC79,0xDC58,0xDC38,0xDC17,0xDC37,0xDC37,0xDC16,0xDC37,0xDC37,0xDC57,0xDC16,0xDC37,0xDC37,0xDC37,0xD437,0xD417,0xD416,0xD437,0xCC37,0xCC37,0xCC98,0xC498,0xBCB8,0xB4B8,0xA477,0x9456,0x8C97,0x8518,0x859A,0x7E1C,0x6E9D,0x5EDE,0x4EFE,0x371E,0x2F5F,0x1F5E,0x0F3E,0x075E,0x075E,0x075F,0x075F,0x075F,0x075F,0x073F,0x073F,0x071F,0x071F,0x06FF,0x06FF,0x06FF,0x06FF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06BF,0x06DF,0x06DF,0x06DF,0x06BF,0x06BF,0x06DF,0x06DF,0x06DF,0x06BF,0x06DF,0x06DF,0x06BF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06FF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x0EFF,0x0EFF,0x06FF,0x06FF,0x06DF,0x06DF,0x06DF,0x06DF,0x0EDF,0x0EDF,0x0EBF,0x0EBF,0x0E9F,0x0E9F,0x167E,0x1E7E,0x267E,0x365F,0x4E5F,0x5E3F,0x65BE,0x547B,0x5419,0x747B,0x8CBD,0x8C1A,0x8B99,0x9B58,0xAB58,0xBB99,0xC379,0xC338,0xC2F6,0xCB17,0xCAF6,0xD316,0xD2F6,0xD2F6,0xD2F6,0xC274,0xC295,0xC2B6,0xC2D6,0xBAF6,0xBB37,0x9B36,0x8BB8,0x7C7A,0x5CBA,0x5DFE,0x565F,0x35FD,0x361D,0x363D,0x4EBF,0x563E,0x767F,0x7D9D,0x6BF7,0x72F4,0x9B35,0xB356,0xC316,0xC2F5,0xCAD5,0xCAB5,0xCAB5,0xCAB5,0xCAD6,0xCB17,0xC317,0xBB17,0x81D3,0x58F0,0x5972,0x5152,0x4972,0x4972,0x4992,0x4192,0x4172,0x4172,0x3972,0x3972,0x3971,0x3972,0x3972,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3131,0x3151,0x3151,0x2930,0x2950,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x290F,0x292F,0x292F,0x290F,0x292F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2110,0x2130,0x2130,0x1910,0x1910,0x1911,0x1131,0x1953,0x1974,0x19B6,0x19D7,0x19F7,0x11D7,0x11D8,0x09B7,0x11D8,0x09D8,0x11D8,0x09D8,0x11D8,0x09B8,0x11D8,0x11B8,0x11D8,0x11D8,0x11D8,0x11B8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x09D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11B8,0x11D8,0x11D8,0x11D8,0x11B8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11B8,0x11D8,0x11B8,0x11D8,0x11D8,0x11B8,0x11B8,0x11D8,0x09D8,0x11D8,0x09B7,0x11D8,0x11B8,0x11D8,0x11B8,0x11D8,0x11B8,0x11D8,0x11B8,0x11D8,0x09B7,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D7,0x11D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x11D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x11F8,0x09D8,0x09F8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x11D8,0x09D8,0x11D8,0x09B7,0x11D8,0x09B7,0x11D7,0x11D7,0x11D8,0x11D8,0x11F8,0x11D8,0x11D8,0x11B8,0x11F9,0x11D8,0x11D8,0x11D9,0x11D8,0x11B8,0x11D8,0x11B8,0x11D8,0x09D8,0x11D8,0x09D8,0x11D8,0x09B8,0x11B8,0x11B8,0x11D8,0x11D8,0x09B8,0x09B8,0x09F8,0x09D8,0x09D8,0x09B7,0x09D8,0x09D8,0x09D8,0x09B7,0x11D8,0x09D8,0x11D8,0x09D8,0x09D8,0x09B8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D7,0x09F8,0x09D7,0x09D8,0x09D8,0x09D8,0x09D8,0x11D8,0x11D8,0x11D8,0x09B8,0x11D8,0x11D8,0x11D8,0x09B8,0x11D8,0x11D8,0x11F8,0x09D8,0x11D8,0x11D8,0x11F8,0x09D8,0x11D8,0x11D8,0x11D8,0x11B8,0x11D8,0x11B8,0x11D8,0x09B8,0x11D8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x11D8,0x09B8,0x11D8,0x11D8,0x11D8,0x11D8,0x11F8,0x11D8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x1A18,0x1A18,0x2218,0x19D7,0x1175,0x0934,0x1133,0x1132,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2930,0x210F,0x290F,0x2930,0x210F,0x2910,0x2110,0x2930,0x212F,0x2930,0x212F,0x212F,0x212F,0x2930,0x210F,0x290F,0x290F,0x210F,0x2910,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x290F, + 0x212F,0x210F,0x212F,0x212F,0x2930,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x2110,0x2910,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2110,0x210F,0x2910,0x2910,0x2930,0x2930,0x2910,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x212F,0x292F,0x210F,0x292F,0x212F,0x212F,0x210F,0x210F,0x292F,0x290F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x1910,0x2131,0x1911,0x1931,0x1911,0x1911,0x1911,0x2111,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1932,0x1911,0x1932,0x1932,0x1932,0x1912,0x1931,0x1931,0x1931,0x1911,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1932,0x1932,0x2132,0x1932,0x1931,0x1911,0x1931,0x1931,0x1932,0x1932,0x1911,0x1911,0x1932,0x1911,0x1931,0x2131,0x2131,0x1911,0x2131,0x1931,0x1931,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2930,0x2110,0x290F,0x290F,0x290F,0x210F,0x2910,0x2110,0x210F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x2110,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x2930,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2930,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x2110,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x210F,0x212F,0x210F,0x2910,0x2110,0x2110,0x2910,0x2910,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x290F,0x290F,0x2910,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x20EF,0x2910,0x2910,0x210F,0x2910,0x2910,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2910,0x290F,0x2930,0x2910,0x2110,0x2110,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2110,0x2930,0x2910,0x2110,0x2110,0x210F,0x2910,0x2910,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2111,0x1911,0x1913,0x1175,0x19D7,0x11D9,0x09D9,0x09F9,0x01D9,0x01D9,0x01DA,0x01DA,0x01D9,0x01B9,0x01B9,0x09B9,0x09B8,0x11B7,0x1995,0x1132,0x1111,0x1952,0x1932,0x1912,0x1113,0x1975,0x21D7,0x19F8,0x11F8,0x0976,0x0955,0x1175,0x0954,0x0954,0x0954,0x0976,0x19D7,0x19D7,0x19D7,0x19B6,0x1975,0x2153,0x2152,0x2132,0x2951,0x2951,0x2931,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3971,0x3951,0x3951,0x3951,0x3971,0x3971,0x3971,0x3972,0x3972,0x3972,0x3972,0x3972,0x4172,0x4172,0x4192,0x4192,0x4192,0x4193,0x4193,0x4993,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x51D3,0x51D3,0x51D3,0x51D3,0x51B2,0x5992,0x5130,0x594F,0xBC19,0xCC7A,0xD47A,0xD459,0xD417,0xDC58,0xDC38,0xDC37,0xD416,0xDC16,0xDC37,0xD416,0xD436,0xDC37,0xDC37,0xD416,0xD437,0xD437,0xD437,0xCC37,0xCC37,0xC457,0xC478,0xC4B8,0xBCD9,0xB4B8,0x9C97,0x9497,0x84B7,0x7D38,0x7DBA,0x75FB,0x6E5C,0x5E9D,0x4EDE,0x3EFE,0x375F,0x275F,0x173E,0x0F3E,0x075E,0x075F,0x075F,0x075F,0x075F,0x075F,0x073F,0x073F,0x073F,0x071F,0x06FF,0x06FF,0x06FF,0x06FF,0x06DF,0x06DF,0x06DF,0x06BF,0x06DF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x069F,0x069F,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06DF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x069F,0x06BF,0x06BF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06BF,0x0EBF,0x0EBF,0x0E9F,0x0E5E,0x165E,0x1E3E,0x261E,0x35FF,0x45DF,0x4D9F,0x555E,0x54BC,0x3357,0x4338,0x6BBB,0x8C1C,0x9BFB,0xA3BA,0xAB58,0xBB58,0xC337,0xC317,0xCB17,0xD337,0xCAF6,0xCAD6,0xCAD6,0xCAB6,0xC295,0xC295,0xC2B6,0xC2F7,0xBB17,0xAB16,0x8AD5,0x8C19,0x6C79,0x551B,0x5E3F,0x4E5E,0x361D,0x2E1D,0x365E,0x4EBF,0x567E,0x663E,0x7DDD,0x63B6,0x7314,0x9315,0xB336,0xC336,0xC2D5,0xCAD5,0xCA95,0xCA95,0xCA95,0xCAB5,0xCAD6,0xC2F6,0xC358,0x9234,0x6110,0x5952,0x5152,0x4931,0x4972,0x4992,0x4192,0x4192,0x4172,0x4172,0x3972,0x3972,0x3972,0x3972,0x3972,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x290F,0x290F,0x292F,0x290F,0x212F,0x2130,0x2930,0x210F,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x1910,0x1931,0x1932,0x1952,0x1174,0x1175,0x1196,0x11B7,0x09B7,0x09D8,0x09D8,0x09B8,0x09B8,0x09D8,0x01B8,0x09D9,0x09D9,0x01B8,0x09D8,0x09B8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09B8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D9,0x09B8,0x09D8,0x09D8,0x09B8,0x09B8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x01B8,0x09D8,0x09D9,0x09D9,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09B8,0x11D8,0x11D8,0x09D9,0x09D9,0x09D8,0x09D8,0x09D9,0x09D9,0x09D9,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D9,0x09D9,0x09B8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09B8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x01D8,0x09D8,0x09D8,0x09D9,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D9,0x09D9,0x09D9,0x09B9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09B8,0x09D8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D9,0x09D8,0x09D9,0x09D9,0x09D9,0x09D9,0x09B9,0x01B8,0x01D8,0x01D8,0x01B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D9,0x09D8,0x09D9,0x09D9,0x09D8,0x09D8,0x09D9,0x09D9,0x09D8,0x09D8,0x09F9,0x09D8,0x09D8,0x09D8,0x09D8,0x09B8,0x09D9,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D8,0x09D9,0x09D9,0x09D8,0x09F9,0x09D8,0x09F9,0x09D8,0x09F8,0x09F8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09B8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09B8,0x09B8,0x09D9,0x09B8,0x09B9,0x09D9,0x09B8,0x09B8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09F8,0x09D8,0x09D8,0x09D8,0x09B8,0x11D8,0x1A19,0x1A18,0x11D7,0x0954,0x0913,0x1112,0x1911,0x1931,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x210F,0x212F,0x212F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2910, + 0x212F,0x2930,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x212F,0x210F,0x2110,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x292F,0x290F,0x290F,0x210F,0x2930,0x210F,0x212F,0x210F,0x212F,0x292F,0x212F,0x210F,0x290F,0x290F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2131,0x2110,0x2131,0x2111,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2111,0x1910,0x2111,0x2110,0x2111,0x1910,0x2131,0x2131,0x2131,0x1911,0x2131,0x2131,0x2111,0x2131,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x1910,0x2131,0x1910,0x2131,0x2131,0x2111,0x2131,0x2111,0x2111,0x2111,0x2131,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2131,0x2111,0x2111,0x1910,0x2111,0x1911,0x2111,0x2111,0x2131,0x1911,0x2131,0x2111,0x1911,0x2131,0x1911,0x1911,0x1911,0x1910,0x1911,0x2131,0x2111,0x2110,0x2111,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x212F,0x2110,0x2930,0x210F,0x2930,0x290F,0x290F,0x210F,0x2910,0x2110,0x2110,0x210F,0x210F,0x210F,0x290F,0x212F,0x212F,0x210F,0x290F,0x2930,0x212F,0x210F,0x2110,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x292F,0x290F,0x2930,0x290F,0x2910,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x212F,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2910,0x210F,0x210F,0x210F,0x2910,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x2130,0x2130,0x2110,0x2910,0x2910,0x210F,0x210F,0x2110,0x210F,0x2910,0x210F,0x210F,0x2910,0x2110,0x2130,0x2110,0x2130,0x2930,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2910,0x2910,0x290F,0x20EF,0x290F,0x290F,0x2930,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x290F,0x2930,0x210F,0x2910,0x2910,0x290F,0x210F,0x2930,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2110,0x2110,0x2910,0x2930,0x2910,0x290F,0x210F,0x290F,0x210F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2111,0x2111,0x1913,0x1155,0x11B7,0x11B8,0x09D9,0x09F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09B9,0x09B8,0x09B7,0x11B6,0x1174,0x1953,0x1932,0x1911,0x1911,0x1912,0x1933,0x1954,0x21B7,0x19F8,0x19F8,0x11B7,0x1176,0x1175,0x1175,0x0954,0x0955,0x11B6,0x19D7,0x21F8,0x21D7,0x21B6,0x2195,0x2174,0x2152,0x2952,0x2951,0x2951,0x2951,0x3151,0x3151,0x3171,0x3151,0x3131,0x3151,0x3151,0x3151,0x3151,0x3951,0x3971,0x3971,0x3971,0x3971,0x3951,0x3972,0x3971,0x3972,0x3972,0x3971,0x3972,0x3972,0x4192,0x4172,0x4172,0x4192,0x4192,0x4193,0x4192,0x4193,0x49B3,0x49B3,0x49B3,0x4993,0x49B3,0x49B3,0x51D3,0x49B3,0x49B3,0x51B3,0x51D3,0x51D3,0x59D3,0x59D3,0x59B2,0x5971,0x5970,0xAB77,0xCC7A,0xD49A,0xD459,0xD438,0xD437,0xD417,0xDC37,0xDC37,0xD416,0xD436,0xDC57,0xDC57,0xD457,0xD457,0xD457,0xCC57,0xC437,0xC437,0xC478,0xC478,0xC4B8,0xBCB9,0xB498,0xA498,0x9C97,0x8497,0x84F8,0x8579,0x7DDB,0x763C,0x6E7C,0x5E9C,0x56DE,0x46FE,0x3F3F,0x2F5F,0x1F5F,0x173F,0x0F5E,0x073E,0x075F,0x075F,0x075F,0x075F,0x075F,0x073F,0x073F,0x073F,0x073F,0x06FF,0x06DF,0x06FF,0x06DF,0x06DF,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x069F,0x06BF,0x06BF,0x06BF,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x067F,0x069F,0x069F,0x069F,0x069F,0x069F,0x06BF,0x06BF,0x06BF,0x069F,0x06BF,0x069F,0x06BF,0x06BF,0x069F,0x069F,0x067F,0x067F,0x067F,0x067F,0x069F,0x06BF,0x06BF,0x06DF,0x06DF,0x06BF,0x06BF,0x06BF,0x06DF,0x06BF,0x06BF,0x06BF,0x0E9F,0x0E9F,0x0E7F,0x165F,0x163F,0x1DFE,0x1DBE,0x2D9E,0x357E,0x3D3E,0x3C7C,0x33DB,0x3318,0x42F7,0x6359,0x941C,0xAC3C,0xB3FB,0xB338,0xBB38,0xC338,0xC2F7,0xCB17,0xCAF7,0xCAB6,0xD2F7,0xCAB6,0xC296,0xCAB6,0xBA95,0xBAD6,0xB317,0xA337,0x8316,0x845A,0x6479,0x65BD,0x565E,0x467F,0x2DFC,0x2E3D,0x367E,0x469E,0x569F,0x5E1D,0x7DBD,0x63F7,0x7314,0x92F4,0xB356,0xC315,0xCAF5,0xCAB5,0xCAB5,0xCA94,0xD2B5,0xCAB5,0xCAD6,0xCAD6,0xCB38,0xA275,0x60F0,0x6152,0x5152,0x4972,0x4972,0x4992,0x4192,0x4192,0x4172,0x4172,0x3972,0x3972,0x3972,0x3972,0x3972,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x210F,0x210F,0x2930,0x290F,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1952,0x1953,0x1154,0x0954,0x0996,0x11D8,0x09D9,0x09F9,0x01D8,0x01B8,0x01D9,0x01B9,0x01D9,0x01D9,0x01B9,0x01B9,0x01D9,0x01D9,0x01D9,0x09D9,0x01D9,0x01D9,0x01D9,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x01B9,0x01D9,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09F9,0x01D9,0x01B9,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D8,0x01D8,0x09D8,0x01B8,0x09D9,0x09D9,0x09D9,0x01B9,0x09D9,0x09D9,0x01D9,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x09D9,0x01D9,0x01D9,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x01D9,0x01D8,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09F9,0x01D9,0x01D9,0x09D9,0x01D9,0x09D9,0x09D9,0x01D9,0x01D8,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D8,0x09D8,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x01B9,0x01D9,0x09DA,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x01D9,0x01D9,0x09D9,0x09D9,0x09D9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x09D9,0x01D9,0x09D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x01D8,0x01D8,0x01F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x01D9,0x09D9,0x09D9,0x01D9,0x09F9,0x09D9,0x01D8,0x01F9,0x01F9,0x01D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09B8,0x09D9,0x09D9,0x09D9,0x01D9,0x09D9,0x09D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D8,0x01F9,0x01D9,0x09D9,0x01B8,0x09D8,0x09F8,0x11F8,0x11D7,0x1195,0x1133,0x1111,0x1911,0x1930,0x1910,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x2130,0x2130,0x2930,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x2930,0x212F,0x212F,0x210F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930, + 0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x292F,0x212F,0x2930,0x212F,0x212F,0x290F,0x210F,0x290F,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x2930,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x292F,0x292F,0x290F,0x292F,0x290F,0x210F,0x290F,0x210F,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x2930,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x210F,0x212F,0x212F,0x2930,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2951,0x2130,0x2131,0x2110,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x2110,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2131,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x292F,0x290F,0x290F,0x292F,0x210F,0x2930,0x2110,0x210F,0x210F,0x290F,0x210F,0x2910,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2930,0x212F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2110,0x2930,0x210F,0x212F,0x210F,0x292F,0x290F,0x290F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x292F,0x2930,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x2130,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x2130,0x2110,0x212F,0x210F,0x212F,0x2930,0x212F,0x210F,0x290F,0x2930,0x292F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x2910,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x210F,0x2130,0x2130,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x2910,0x290F,0x290F,0x2110,0x2110,0x290F,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2111,0x1912,0x1154,0x19D7,0x1197,0x09B8,0x09F8,0x09F9,0x0198,0x01B9,0x09D9,0x01B9,0x09D9,0x09D9,0x09D8,0x11B7,0x11B6,0x1174,0x1973,0x1932,0x1931,0x1911,0x1912,0x1912,0x1954,0x1995,0x19F7,0x1A18,0x19F8,0x19D7,0x1195,0x1195,0x1195,0x11B6,0x19F7,0x19F8,0x21F8,0x21D7,0x21B6,0x2195,0x2173,0x2952,0x2952,0x2931,0x2931,0x3151,0x3151,0x3151,0x3151,0x3171,0x3171,0x3171,0x3171,0x3971,0x3971,0x3971,0x3971,0x3971,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x3992,0x3972,0x4192,0x4192,0x4192,0x4193,0x4193,0x4193,0x4193,0x4993,0x4193,0x49B3,0x49B3,0x49B3,0x49B3,0x49D3,0x51D3,0x51D3,0x51D3,0x51D3,0x51D3,0x51D3,0x59D3,0x59B3,0x59B2,0x5991,0x5950,0xAB77,0xCC7A,0xCC59,0xD459,0xD458,0xDC58,0xD437,0xD437,0xD416,0xDC37,0xDC37,0xD457,0xD457,0xD477,0xCC77,0xC477,0xC477,0xBC77,0xBCB8,0xBCD9,0xB4D8,0xACB8,0x9C77,0x9477,0x8CB8,0x8CD8,0x8559,0x85BB,0x7E1C,0x763C,0x665C,0x5E9C,0x56FD,0x471E,0x3F5F,0x2F5F,0x275F,0x173F,0x0F3F,0x0F5F,0x075F,0x075F,0x075F,0x075F,0x073F,0x073F,0x073F,0x071F,0x06FE,0x06DE,0x06DE,0x06DE,0x06DF,0x06DF,0x06BF,0x06BF,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x067F,0x067F,0x067F,0x067F,0x067F,0x067F,0x067F,0x067F,0x065F,0x067F,0x067F,0x067F,0x067F,0x067F,0x065F,0x065F,0x067F,0x067F,0x065F,0x067F,0x067F,0x069F,0x069F,0x069F,0x069F,0x067F,0x067F,0x067F,0x065F,0x067F,0x067F,0x069F,0x069F,0x06BF,0x06BF,0x06BF,0x069F,0x069F,0x06BF,0x069F,0x06BF,0x06BF,0x06BF,0x06BF,0x06BF,0x069F,0x0E7F,0x0E7F,0x165F,0x161F,0x15DE,0x157E,0x1D5E,0x253E,0x2D1E,0x34DE,0x3C7D,0x3BDB,0x2A76,0x3215,0x62D8,0xA43D,0xB41C,0xAB7A,0xAB18,0xB2F8,0xC338,0xCB18,0xCAF7,0xCAF7,0xCAD7,0xCA96,0xC295,0xBA54,0xBAB6,0xBAF7,0xB337,0x9B16,0x7B15,0x7419,0x5CBA,0x5E1E,0x4E9F,0x2DFC,0x263D,0x2E5D,0x369E,0x46BF,0x56BF,0x6E9F,0x7DDD,0x6C17,0x6AF3,0x92F4,0xB315,0xC2F5,0xCAD5,0xCAD5,0xCAB4,0xCA94,0xCA95,0xCA95,0xCAB5,0xCAB6,0xCB38,0xB2F7,0x7151,0x5931,0x5131,0x4972,0x4972,0x4992,0x4172,0x4172,0x4172,0x4172,0x3972,0x3972,0x3972,0x3972,0x3971,0x3951,0x3151,0x3971,0x3151,0x3151,0x3151,0x3151,0x3150,0x3150,0x3150,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x2930,0x2910,0x2910,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1932,0x1112,0x0933,0x0955,0x11D7,0x1219,0x09D8,0x09D9,0x09D9,0x01D9,0x01B9,0x01D9,0x01B9,0x01D9,0x01DA,0x01D9,0x01D9,0x01DA,0x01B9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01FA,0x01DA,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01D9,0x01B9,0x01B9,0x01D9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x09FA,0x01D9,0x09FA,0x09D9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01F9,0x01F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x01F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09F9,0x01D9,0x01D8,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01D9,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x01D9,0x09D9,0x09D9,0x01B9,0x01D9,0x01D9,0x09FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09DA,0x01D9,0x01D9,0x01D9,0x09F9,0x01D9,0x01D9,0x01D9,0x01D9,0x09F9,0x01D9,0x09F9,0x09D8,0x09B7,0x1195,0x1133,0x1111,0x1110,0x1930,0x2110,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2910,0x210F,0x2110,0x2910,0x210F,0x210F,0x2930,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x290F,0x292F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F, + 0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2930,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x210F,0x210F,0x2930,0x2930,0x2930,0x292F,0x212F,0x2930,0x212F,0x212F,0x2930,0x210F,0x2930,0x290F,0x210F,0x290F,0x210F,0x212F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x2110,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x210F,0x212F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x290F,0x292F,0x210F,0x210F,0x292F,0x212F,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2930,0x210F,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x20F0,0x2110,0x2910,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2930,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x292F,0x290F,0x2930,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x290F,0x2930,0x2930,0x290F,0x2930,0x212F,0x290F,0x290F,0x212F,0x212F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x292F,0x290F,0x2910,0x290F,0x290F,0x290F,0x2930,0x210F,0x2110,0x210F,0x2110,0x212F,0x212F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x290F,0x290F,0x2930,0x210F,0x290F,0x212F,0x210F,0x292F,0x212F,0x2930,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2910,0x2110,0x2110,0x2110,0x2130,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x2910,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x210F,0x2930,0x212F,0x210F,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x212F,0x292F,0x2930,0x212F,0x210F,0x2930,0x212F,0x2130,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2910,0x290F,0x290F,0x2110,0x2110,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x292F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x2910,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2111,0x1932,0x1954,0x19B6,0x1197,0x11D8,0x11D8,0x11F8,0x09B8,0x09B8,0x09B8,0x09B8,0x09D8,0x11F9,0x11B7,0x11B6,0x1995,0x1974,0x2173,0x1931,0x2131,0x2131,0x1931,0x1932,0x1953,0x1975,0x19B6,0x2218,0x19F8,0x19F7,0x19B6,0x19D6,0x19B6,0x19D6,0x19F7,0x2218,0x21F7,0x21B6,0x2195,0x2174,0x2173,0x2952,0x2972,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3971,0x3171,0x3171,0x3151,0x3951,0x3951,0x3972,0x3972,0x3992,0x3972,0x3971,0x3972,0x4192,0x3972,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4193,0x4193,0x4193,0x4993,0x49B3,0x49B3,0x49B3,0x49B3,0x49D3,0x49D3,0x49B3,0x51D3,0x51D3,0x51D3,0x51D3,0x51D3,0x51D3,0x51D3,0x59F3,0x59D3,0x5991,0x5950,0x9B16,0xCC7A,0xD47A,0xD479,0xD479,0xD438,0xD437,0xDC57,0xDC57,0xD416,0xD457,0xD477,0xD477,0xCC77,0xC477,0xBCB8,0xBCD8,0xB4D8,0xACF9,0xA4F9,0x94D8,0x8CB7,0x7C97,0x7CD8,0x7D59,0x85BB,0x7DFC,0x765C,0x6E7C,0x669D,0x56BD,0x4EDD,0x471E,0x3F3E,0x375E,0x277F,0x1F5F,0x175F,0x075F,0x075F,0x075F,0x077F,0x075F,0x075F,0x075F,0x073F,0x073F,0x071F,0x06FE,0x06FE,0x06DE,0x06DE,0x06BE,0x06DF,0x06BF,0x06BF,0x06BF,0x069F,0x069F,0x067F,0x067F,0x067F,0x067F,0x067F,0x067F,0x067F,0x067F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x063F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x067F,0x065F,0x067F,0x067F,0x067F,0x067F,0x067F,0x067F,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x069F,0x067F,0x065F,0x0E3F,0x0E1F,0x0DFF,0x0DBF,0x0D7E,0x155E,0x14FE,0x1CDE,0x2CBE,0x349E,0x3BFC,0x32F9,0x2A16,0x39F5,0x6AD8,0x9BDC,0xABDC,0xB37B,0xB2F9,0xBB19,0xCB39,0xCB18,0xCAF8,0xCAD7,0xBA55,0xC2B6,0xBA95,0xBAB6,0xB2F7,0xAB37,0x8AF5,0x7336,0x747A,0x54FA,0x5E7F,0x467E,0x2E5D,0x265D,0x267E,0x369E,0x46DF,0x4E7E,0x6EBF,0x75BC,0x6BF6,0x72F3,0x92D3,0xB335,0xC2F5,0xCAD5,0xCA94,0xCA95,0xCA74,0xD295,0xCA74,0xCAB5,0xCAB6,0xCB17,0xBB18,0x7172,0x5911,0x5972,0x5172,0x4972,0x4992,0x4192,0x4172,0x4172,0x3972,0x3972,0x3972,0x3972,0x3972,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x2930,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x290F,0x290F,0x2930,0x2910,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x1930,0x1931,0x1932,0x1133,0x0933,0x0955,0x11D7,0x11F9,0x09D9,0x01D9,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01B9,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01B9,0x01FA,0x01D9,0x01B9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01FA,0x01D9,0x01DA,0x01DA,0x01D9,0x01FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01D9,0x01DA,0x01DA,0x01D9,0x01D9,0x01DA,0x01DA,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01DA,0x01DA,0x01D9,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x09DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01FA,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01FA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x01D9,0x01DA,0x01DA,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x09D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01DA,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x01D9,0x09D8,0x09B7,0x1175,0x1153,0x1132,0x1911,0x1910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x2930,0x2930,0x2110,0x2110,0x2910,0x210F,0x2930,0x210F,0x290F,0x290F,0x210F,0x292F,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F, + 0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x2110,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x290F,0x210F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x2930,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x2930,0x212F,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2930,0x210F,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2930,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2930,0x2930,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x290F,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x2930,0x2930,0x210F,0x210F,0x212F,0x2930,0x210F,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x290F,0x210F,0x212F,0x290F,0x290F,0x2930,0x2930,0x2910,0x210F,0x2110,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x210F,0x210F,0x210F,0x2910,0x2930,0x2110,0x2110,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2930,0x210F,0x210F,0x2910,0x2930,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2110,0x2930,0x210F,0x2910,0x210F,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x2110,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x292F,0x210F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2930,0x2910,0x2930,0x2930,0x210F,0x2930,0x2930,0x290F,0x290F,0x2910,0x210F,0x2910,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2130,0x2930,0x2130,0x2131,0x1912,0x1933,0x1154,0x1976,0x19B7,0x19F8,0x1A18,0x19F8,0x11D8,0x19F8,0x11D8,0x19F8,0x19F8,0x11B6,0x1995,0x1994,0x1953,0x1932,0x1931,0x2131,0x2111,0x2131,0x1932,0x1953,0x1974,0x1995,0x19B6,0x19F7,0x19F7,0x2217,0x19D6,0x1196,0x19D6,0x2217,0x2217,0x21B6,0x2195,0x2174,0x2153,0x2953,0x2952,0x2951,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3971,0x3171,0x3971,0x3971,0x3972,0x3972,0x3972,0x3972,0x4192,0x4192,0x3972,0x3972,0x4192,0x4192,0x4192,0x4193,0x4192,0x4192,0x4193,0x4193,0x49B3,0x4193,0x4993,0x49B3,0x49D3,0x49D3,0x49B3,0x49D3,0x51D3,0x51D4,0x51D3,0x51D3,0x51D3,0x51D4,0x51F4,0x51D3,0x59D3,0x59D3,0x59B2,0x5970,0x8A74,0xCC5A,0xD47A,0xD47A,0xD479,0xD458,0xD438,0xD437,0xD437,0xD437,0xD457,0xCC57,0xCC77,0xCCB8,0xC4B8,0xB4D8,0xACD8,0x9CD8,0x8CB8,0x7CD8,0x7D18,0x7559,0x75DB,0x761B,0x6E5C,0x665C,0x669D,0x5EBD,0x56DD,0x4EFD,0x471E,0x3F3E,0x375E,0x2F5F,0x277F,0x1F7E,0x177F,0x0F7F,0x0F7F,0x077F,0x077F,0x075F,0x075F,0x077F,0x073F,0x073F,0x071E,0x071E,0x071E,0x06FE,0x06DF,0x06DE,0x06BE,0x06BE,0x06BE,0x069E,0x069F,0x069F,0x069F,0x067F,0x067F,0x067F,0x067F,0x067F,0x065F,0x065F,0x065F,0x065F,0x065F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x065F,0x063F,0x063F,0x063F,0x061F,0x061F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x063F,0x065F,0x065F,0x067F,0x067F,0x067F,0x067F,0x067F,0x067F,0x067F,0x069F,0x067F,0x067F,0x067F,0x065F,0x065F,0x065F,0x061F,0x05FF,0x05DF,0x0DBF,0x0D5E,0x0D1E,0x14FE,0x1CDF,0x143D,0x1BFC,0x2BFD,0x335B,0x2AB9,0x21D6,0x31B6,0x6AB9,0xA3BD,0xABBD,0xB35B,0xB319,0xBAF9,0xCB19,0xCAF8,0xCAD8,0xC296,0xBA76,0xBA96,0xBAD7,0xBB37,0xA337,0x7AD5,0x73B8,0x64BA,0x557C,0x5EDF,0x367E,0x263D,0x1E5D,0x269E,0x2E9E,0x46FF,0x4E7E,0x76DF,0x7DFD,0x6C17,0x6AD3,0x92D3,0xB315,0xC2F5,0xCAD5,0xCA94,0xCA94,0xCA95,0xCA95,0xD295,0xCA95,0xCAB6,0xC2D7,0xC338,0x7972,0x58F0,0x5951,0x5172,0x4972,0x4972,0x4172,0x4172,0x4172,0x3971,0x3971,0x3971,0x3972,0x3951,0x3151,0x3951,0x3131,0x3151,0x3171,0x3151,0x3150,0x3150,0x2930,0x3150,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x290F,0x290F,0x290F,0x2930,0x2110,0x2110,0x2110,0x210F,0x2930,0x2950,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1932,0x1112,0x0913,0x0955,0x19D7,0x09B8,0x09B9,0x09F9,0x01D9,0x01B9,0x01DA,0x01D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01B9,0x01B9,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01D9,0x01D9,0x01D9,0x01FA,0x01D9,0x01D9,0x01D9,0x01FA,0x01DA,0x01DA,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01B9,0x01B9,0x01B9,0x01B9,0x01D9,0x01DA,0x01B9,0x01B9,0x01DA,0x01D9,0x01DA,0x01DA,0x01B9,0x01D9,0x01B9,0x01B9,0x01D9,0x01D9,0x01DA,0x01DA,0x01D9,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01FA,0x01D9,0x01DA,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01F9,0x01B9,0x01D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x01B9,0x01DA,0x01DA,0x01DA,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01D9,0x01DA,0x01DA,0x01D9,0x01D9,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09DA,0x01B9,0x01DA,0x01D9,0x01D9,0x01F9,0x01D9,0x01FA,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01B9,0x01B9,0x01DA,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x09F9,0x09F8,0x09B7,0x1175,0x0912,0x1132,0x1911,0x2111,0x2110,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2910,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2110,0x2930,0x290F,0x210F,0x290F,0x290F, + 0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2930,0x2110,0x2910,0x2910,0x290F,0x210F,0x292F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x290F,0x292F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x2910,0x290F,0x2930,0x290F,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2931,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2930,0x2930,0x2930,0x210F,0x290F,0x210F,0x212F,0x2130,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2910,0x210F,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x210F,0x210F,0x2930,0x210F,0x212F,0x210F,0x290F,0x2910,0x2110,0x210F,0x210F,0x2930,0x2930,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x2110,0x290F,0x290F,0x290F,0x2910,0x210F,0x2910,0x292F,0x290F,0x210F,0x2930,0x2110,0x210F,0x2910,0x2930,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x292F,0x210F,0x210F,0x2110,0x2930,0x2110,0x210F,0x2110,0x2910,0x2110,0x2110,0x2910,0x210F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2930,0x210F,0x290F,0x210F,0x2110,0x2110,0x2910,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x210F,0x210F,0x2930,0x2110,0x2110,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2930,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2930,0x210F,0x292F,0x2930,0x210F,0x292F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2910,0x210F,0x20EF,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x2930,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2130,0x2130,0x2131,0x2131,0x1932,0x1933,0x1954,0x1996,0x1196,0x19D7,0x19F7,0x19B6,0x21F8,0x11B6,0x19D7,0x19B6,0x1995,0x1974,0x1953,0x1932,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2132,0x2153,0x2194,0x1995,0x19B5,0x19D6,0x19D6,0x19B6,0x1995,0x19B6,0x21D6,0x21D6,0x21B5,0x2174,0x2153,0x2973,0x2952,0x2952,0x3151,0x3171,0x3151,0x3171,0x3151,0x3951,0x3951,0x3951,0x3951,0x3971,0x3972,0x3972,0x3972,0x3972,0x3972,0x4192,0x3992,0x4192,0x4192,0x4192,0x3972,0x4192,0x4193,0x4192,0x4192,0x4192,0x4193,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x51D4,0x51D3,0x49B3,0x49B3,0x51D3,0x51D3,0x51D4,0x51D3,0x51D3,0x51D3,0x59F4,0x59D3,0x61F3,0x61D2,0x5950,0x7A33,0xC41A,0xD47A,0xD47A,0xD479,0xD479,0xD458,0xD457,0xD457,0xCC77,0xCC77,0xCCB8,0xC4B8,0xBCB8,0xAC97,0x9C97,0x8C56,0x7C97,0x74B7,0x7559,0x75BB,0x763C,0x769D,0x6EBE,0x5EBD,0x56FE,0x46DD,0x3EFD,0x3F1E,0x373E,0x2F5E,0x2F7F,0x277E,0x1F7F,0x177F,0x177F,0x0F7E,0x0F7F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x075F,0x075F,0x073F,0x071E,0x071E,0x06FE,0x06FE,0x06DE,0x06BE,0x06BE,0x06BE,0x069E,0x069E,0x069F,0x069F,0x069F,0x067F,0x067F,0x067F,0x065F,0x065F,0x063F,0x065F,0x063F,0x063F,0x063F,0x063F,0x063F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x063F,0x063F,0x063F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x063F,0x063F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x065F,0x063F,0x065F,0x063F,0x061F,0x05FF,0x05DF,0x05BF,0x057F,0x053F,0x04FE,0x0CBE,0x0C7E,0x0C3D,0x13DC,0x1B9C,0x2B7C,0x2B1B,0x327A,0x2176,0x3975,0x7299,0xB3FF,0xB3BD,0xB33B,0xBAFA,0xBAD9,0xC2F9,0xC2D8,0xC2D8,0xBA96,0xBAB6,0xB2D6,0xB317,0x9B17,0x7B16,0x6C19,0x655C,0x55FD,0x4EBF,0x2E5D,0x1E7D,0x1E7D,0x1E7E,0x2EDF,0x3EBF,0x56BF,0x6E7E,0x85FD,0x6BD6,0x72D3,0x9AF4,0xBB35,0xC2F5,0xCAB5,0xCA94,0xCA94,0xD295,0xCA74,0xCA75,0xCA95,0xCAB6,0xC2B6,0xC318,0x81B3,0x58F0,0x5951,0x5172,0x4972,0x4972,0x4172,0x4172,0x4192,0x4171,0x4192,0x3972,0x3971,0x3971,0x3951,0x3151,0x3152,0x3151,0x3151,0x3151,0x3151,0x2950,0x2930,0x3150,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2910,0x290F,0x2930,0x2930,0x290F,0x2930,0x2110,0x2110,0x2110,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x10F2,0x0913,0x1175,0x11B7,0x11D8,0x09D9,0x01D9,0x01DA,0x01B9,0x01DA,0x01DA,0x01D9,0x01DA,0x01DA,0x01FA,0x01DA,0x01B9,0x01B9,0x01DA,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01FA,0x01D9,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01DA,0x01D9,0x01DA,0x01D9,0x01B9,0x01D9,0x01D9,0x01B9,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01FA,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01B9,0x01D9,0x01DA,0x01D9,0x01DA,0x01D9,0x01DA,0x01D9,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01D9,0x01D9,0x01F9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x09F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01D9,0x01FA,0x01D9,0x01DA,0x01DA,0x01DA,0x01B9,0x01D9,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01D9,0x01F9,0x01FA,0x01D9,0x01D9,0x01D9,0x01FA,0x01D9,0x09F9,0x09F8,0x11B7,0x0974,0x1153,0x1112,0x1911,0x2111,0x2131,0x2110,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x292F,0x212F,0x210F,0x2130,0x212F,0x212F,0x2130,0x2130,0x2110,0x2910,0x2910,0x210F,0x2930,0x292F,0x292F,0x292F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F, + 0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x290F,0x2930,0x2930,0x2930,0x2930,0x2130,0x210F,0x212F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2110,0x212F,0x210F,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2930,0x2930,0x210F,0x212F,0x2130,0x2130,0x2930,0x2130,0x2930,0x2930,0x210F,0x212F,0x210F,0x2930,0x212F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2910,0x2930,0x2930,0x2930,0x2910,0x2910,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x212F,0x212F,0x2930,0x210F,0x212F,0x210F,0x2910,0x2110,0x212F,0x2130,0x210F,0x2110,0x210F,0x210F,0x2130,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x210F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x210F,0x2110,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x210F,0x2930,0x2110,0x2110,0x210F,0x210F,0x2910,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2930,0x2130,0x2110,0x2930,0x210F,0x212F,0x210F,0x2110,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x292F,0x2930,0x210F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2930,0x210F,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x212F,0x212F,0x290F,0x210F,0x210F,0x290F,0x210F,0x292F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2130,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x292F,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x2930,0x2110,0x2930,0x2110,0x2910,0x210F,0x290F,0x2910,0x2910,0x2930,0x212F,0x210F,0x210F,0x2930,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x210F,0x290F,0x290F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x2130,0x2130,0x2131,0x1911,0x1932,0x1953,0x1954,0x1974,0x1974,0x1954,0x1954,0x1954,0x1955,0x1975,0x1974,0x1953,0x1953,0x1931,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2131,0x2131,0x2152,0x2173,0x2193,0x21B4,0x21D5,0x19B5,0x1994,0x1974,0x1974,0x21B5,0x2195,0x2974,0x2953,0x2952,0x2952,0x2952,0x3151,0x3151,0x3171,0x3171,0x3151,0x3971,0x3951,0x3951,0x3951,0x3971,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x4192,0x4192,0x4192,0x4192,0x41B3,0x4192,0x41B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x4993,0x49B3,0x51D3,0x51D3,0x49B3,0x51D3,0x51D3,0x51D4,0x51D4,0x51D4,0x59F4,0x59F4,0x59D3,0x61F3,0x59B2,0x5950,0x7A33,0xC41A,0xCC7A,0xD47A,0xCC59,0xD459,0xCC58,0xCC58,0xCC78,0xCC98,0xC4B8,0xC4D8,0xB4B8,0xA497,0x9497,0x8CB7,0x8518,0x859A,0x7DDB,0x763C,0x767D,0x667D,0x5EBD,0x56FE,0x46FD,0x3F1E,0x373E,0x2F5E,0x2F7F,0x277F,0x1F7F,0x1F9F,0x179F,0x179F,0x179F,0x0F9F,0x0F9F,0x079F,0x079F,0x079F,0x077F,0x077F,0x077F,0x077F,0x075F,0x075F,0x073F,0x071E,0x071F,0x06FE,0x06FE,0x06DE,0x06BE,0x06BE,0x069E,0x069E,0x069E,0x069F,0x067E,0x067E,0x065E,0x067F,0x067F,0x065F,0x065F,0x063F,0x063F,0x063F,0x063F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x05FF,0x061F,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x061F,0x061F,0x061F,0x061F,0x063F,0x061F,0x061F,0x063F,0x063F,0x065F,0x063F,0x063F,0x063F,0x065F,0x063F,0x065F,0x061F,0x061F,0x05FF,0x05BF,0x05BF,0x059F,0x057F,0x051F,0x04DF,0x047E,0x0C5E,0x143E,0x1BFE,0x1B9D,0x1B1C,0x1ABB,0x2A9B,0x3219,0x2936,0x4156,0x82DB,0xABBE,0xBB7D,0xBB1B,0xC31A,0xC2F9,0xC2D8,0xBA97,0xB276,0xBAD7,0xB2F7,0xA317,0x8AF6,0x6B36,0x74DB,0x551B,0x567F,0x3E9F,0x267E,0x1E7E,0x1EBE,0x167E,0x2EBF,0x3EDF,0x56BF,0x6E7E,0x85FD,0x7417,0x72F3,0x92D3,0xB2F5,0xC2F5,0xCAB4,0xCA94,0xD295,0xCA74,0xCA54,0xCA74,0xCA75,0xCA95,0xC2B6,0xBAF7,0x89D3,0x58CF,0x5131,0x5152,0x4972,0x4992,0x4172,0x4192,0x4192,0x4192,0x3972,0x3971,0x3971,0x3951,0x3952,0x3952,0x3151,0x3151,0x3151,0x3151,0x3150,0x3150,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1112,0x1133,0x1175,0x11B7,0x11D9,0x09D9,0x09FA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01B9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x09F9,0x01D9,0x01B9,0x09D9,0x01B9,0x01D9,0x09D9,0x01D9,0x01D9,0x09D9,0x09D9,0x01D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01B9,0x01D9,0x01D9,0x01B9,0x01D9,0x09D9,0x01D9,0x01D9,0x09F9,0x01D9,0x01D9,0x09D9,0x01D9,0x09D9,0x09D9,0x01D9,0x09D9,0x09D9,0x01B8,0x09D9,0x09D9,0x09D9,0x01B9,0x01B9,0x09D9,0x01D9,0x09D9,0x09D9,0x09D9,0x01D9,0x09D9,0x01D9,0x01D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01D9,0x01D9,0x09D9,0x09D9,0x01B9,0x01B9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01B9,0x09D9,0x09D9,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x01D9,0x01D9,0x09D9,0x09D9,0x01D9,0x09D9,0x01B9,0x01D9,0x01D9,0x01D9,0x09D9,0x01D9,0x01D9,0x09D9,0x09F9,0x01D9,0x09D9,0x09D9,0x01D9,0x09D9,0x09D9,0x09D9,0x01D9,0x09D9,0x01D9,0x09D9,0x09D9,0x09D9,0x01D9,0x09D9,0x09D9,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01D9,0x01D9,0x09D9,0x09D9,0x09D9,0x09F9,0x01D9,0x01B9,0x01D9,0x09F9,0x01D9,0x09F9,0x09F9,0x01D9,0x01D9,0x01B9,0x09D9,0x01B9,0x01B8,0x01D9,0x01D9,0x09D9,0x01B9,0x01B9,0x09D9,0x01D9,0x01B9,0x01D9,0x09D9,0x01B9,0x01B9,0x09D9,0x09D9,0x09D9,0x01B8,0x01D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01B8,0x09D9,0x09D9,0x09D9,0x01D9,0x01B9,0x09D9,0x09D9,0x01B9,0x01D9,0x01D9,0x01B9,0x01D9,0x09FA,0x01F9,0x01D9,0x01D9,0x01FA,0x01D9,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01F9,0x09F9,0x09F8,0x11B7,0x0975,0x1133,0x1112,0x1911,0x2131,0x2931,0x2131,0x2110,0x2130,0x2130,0x2130,0x292F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x290F,0x290F,0x290F, + 0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x2910,0x2930,0x2930,0x210F,0x2930,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x210F,0x2130,0x212F,0x210F,0x210F,0x2110,0x2110,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x210F,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2110,0x2930,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2930,0x2110,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2930,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x2930,0x290F,0x292F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x2930,0x210F,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x290F,0x2910,0x2910,0x2910,0x210F,0x210F,0x2930,0x290F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2910,0x290F,0x290F,0x210F,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x210F,0x212F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x210F,0x2930,0x210F,0x2910,0x2910,0x2930,0x2930,0x290F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x290F,0x290F,0x2910,0x2910,0x2930,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x210F,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x2910,0x290F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1953,0x1933,0x1933,0x1953,0x1933,0x1933,0x1933,0x1933,0x1932,0x1932,0x1931,0x2131,0x2131,0x2130,0x2930,0x2930,0x2930,0x2930,0x2931,0x2931,0x2952,0x2152,0x2172,0x2173,0x1973,0x1973,0x1973,0x2173,0x2174,0x2153,0x2173,0x2153,0x2952,0x2952,0x2952,0x3151,0x3151,0x3151,0x3171,0x3151,0x3151,0x3971,0x3971,0x3971,0x3972,0x3972,0x3972,0x3992,0x3972,0x3972,0x3972,0x3972,0x4172,0x4192,0x4192,0x4193,0x4192,0x41B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x4993,0x49B3,0x49D3,0x49D3,0x49B3,0x49B3,0x51D4,0x51D3,0x51D3,0x51D3,0x51D3,0x51F4,0x51F4,0x51F4,0x59F4,0x59D3,0x61F3,0x61D2,0x5970,0x71F2,0xBBF9,0xCC7B,0xCC7A,0xCC79,0xD499,0xC458,0xCC98,0xCCD9,0xC4F9,0xBD19,0xA4B7,0x9476,0x8CB7,0x8D39,0x857A,0x85DB,0x7E3C,0x765D,0x6EBD,0x5EBD,0x56DE,0x4EDD,0x3EFD,0x371D,0x2F3E,0x275E,0x277F,0x177E,0x179F,0x0F9F,0x0FBF,0x0FBF,0x0FBF,0x07BF,0x07BF,0x07BF,0x079F,0x079F,0x079F,0x079F,0x077F,0x077F,0x077F,0x077F,0x077F,0x075F,0x073F,0x071F,0x06FE,0x06FE,0x06DE,0x06DE,0x06BE,0x069E,0x069E,0x069E,0x069F,0x069E,0x067E,0x067E,0x065E,0x065E,0x065E,0x065F,0x063F,0x063F,0x063F,0x063F,0x061F,0x061F,0x061F,0x061F,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05DF,0x05FF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x061F,0x063F,0x061F,0x05FF,0x05FF,0x05FF,0x05DF,0x05BF,0x059F,0x057F,0x051F,0x04DF,0x04BF,0x0C7E,0x041E,0x0BFE,0x13BE,0x0B3C,0x0A9B,0x127B,0x227C,0x323B,0x31B8,0x20D5,0x4136,0x933D,0xC3FF,0xBB5C,0xB2FA,0xBB1A,0xBAD9,0xBAD8,0xBAD8,0xB2D7,0xB338,0x9B17,0x7AF5,0x73F8,0x6D1C,0x55DD,0x4E9F,0x36BF,0x1E7E,0x167E,0x1EBF,0x1E9E,0x26DF,0x3EDF,0x56BE,0x6E7F,0x85BC,0x7417,0x7AD3,0x9AF4,0xBB15,0xC2D5,0xCAB5,0xCA54,0xD295,0xD254,0xD275,0xCA54,0xD275,0xCA95,0xC295,0xC338,0x9214,0x58F0,0x5951,0x5151,0x4972,0x4992,0x4992,0x4171,0x4172,0x4172,0x3971,0x3971,0x3972,0x3972,0x3151,0x3152,0x3151,0x3171,0x3171,0x3150,0x3150,0x3150,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2130,0x2110,0x2130,0x2130,0x2130,0x2151,0x1911,0x1112,0x1133,0x1155,0x11B7,0x11D9,0x09F9,0x01D9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01B9,0x01D9,0x01D9,0x09F9,0x09D9,0x09F9,0x09D9,0x09D9,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D9,0x09B8,0x09D9,0x09D8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x11F9,0x09D8,0x09D8,0x09D8,0x09D9,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09F8,0x09D8,0x09F9,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D9,0x09D8,0x09D9,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D9,0x09D9,0x09B8,0x11F9,0x09D8,0x11F9,0x09F8,0x09F8,0x09D8,0x09D8,0x09D8,0x11D9,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D9,0x09D8,0x09D8,0x09F8,0x09D8,0x09D8,0x09D8,0x09F9,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D9,0x09D8,0x09D9,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x11F9,0x09D8,0x09D8,0x09D9,0x09D9,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09F9,0x09D8,0x09D8,0x09D8,0x09D8,0x09F9,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09F9,0x09D8,0x09F8,0x09F9,0x09D8,0x09D8,0x09D8,0x09D8,0x09B8,0x09D8,0x09B8,0x09B8,0x09D8,0x09B8,0x09D8,0x09B8,0x09B8,0x09B8,0x09D8,0x09B8,0x09D8,0x09D8,0x09B8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09F9,0x09D8,0x09D9,0x09F9,0x09F9,0x09F9,0x01D9,0x09F9,0x01D9,0x01D9,0x01D9,0x01B9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01D9,0x09F9,0x09D8,0x09B6,0x1175,0x1133,0x1111,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2930,0x2130,0x2930,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x2110,0x2910,0x2110,0x210F,0x290F,0x290F,0x210F,0x292F,0x292F,0x290F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F, + 0x2131,0x2131,0x1930,0x2130,0x2130,0x2130,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x212F,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2131,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x2130,0x2110,0x2930,0x2110,0x2130,0x2930,0x2930,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2130,0x210F,0x2130,0x2110,0x2110,0x2130,0x210F,0x210F,0x2910,0x2110,0x2110,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x210F,0x2910,0x210F,0x290F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x2110,0x2910,0x2910,0x2110,0x2110,0x210F,0x2130,0x2130,0x2110,0x2930,0x290F,0x210F,0x2910,0x2910,0x290F,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x2930,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2110,0x2110,0x290F,0x210F,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x292F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2110,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2910,0x2910,0x2910,0x290F,0x290F,0x2110,0x2930,0x212F,0x212F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x212F,0x2930,0x2110,0x210F,0x2910,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x2930,0x2910,0x290F,0x290F,0x2910,0x210F,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2110,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x210F,0x2110,0x2110,0x2130,0x210F,0x2930,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x2132,0x2132,0x2152,0x1932,0x1932,0x1932,0x2132,0x2132,0x2132,0x2131,0x2131,0x2131,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2931,0x2911,0x2931,0x2951,0x2952,0x2152,0x2972,0x2173,0x2173,0x2173,0x2153,0x2152,0x2952,0x2932,0x2952,0x3152,0x3152,0x3151,0x3151,0x3151,0x3971,0x3971,0x3971,0x3992,0x3971,0x3972,0x3972,0x3972,0x3972,0x3972,0x4192,0x4192,0x4192,0x41B3,0x4192,0x41B2,0x41B3,0x4193,0x4192,0x4192,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x51D3,0x49D3,0x51D3,0x51F3,0x51D3,0x51D3,0x51F3,0x51D3,0x51F4,0x51F4,0x51F4,0x51F4,0x59F4,0x59F3,0x61B2,0x6191,0x7A53,0xBC1A,0xCC7A,0xCC7A,0xCC79,0xCC99,0xCCB9,0xCCD9,0xC4D9,0xACB8,0x9496,0x8496,0x7CD7,0x7D79,0x7DDB,0x6DFB,0x6E5D,0x667D,0x5EDE,0x56FE,0x4EFE,0x471E,0x3F1E,0x373E,0x2F5E,0x277E,0x279F,0x1F9F,0x17BF,0x17BF,0x0FBF,0x0FBF,0x0FBF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x077F,0x075F,0x073E,0x06FE,0x06FE,0x06DE,0x06FE,0x06BE,0x06BE,0x06BE,0x069E,0x069E,0x069E,0x069F,0x067E,0x065E,0x065E,0x065E,0x063E,0x063E,0x063E,0x063F,0x061E,0x061E,0x061F,0x061F,0x05FE,0x05FF,0x05DF,0x05DF,0x05FF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05BF,0x05BF,0x05DF,0x05DF,0x05DF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05DF,0x05BF,0x05BF,0x05BF,0x05DF,0x05BF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x05DF,0x05BF,0x05BF,0x059F,0x057F,0x051F,0x04FF,0x04BF,0x049F,0x0C5F,0x0C1E,0x0BBE,0x0B5D,0x0B1D,0x0ABC,0x0A3B,0x1A3B,0x221B,0x31FB,0x2958,0x2094,0x59B8,0xA37E,0xB39E,0xB33C,0xB2DA,0xBAD9,0xB2D9,0xB2D8,0xB339,0xAB38,0x9337,0x6AF5,0x747A,0x5D3C,0x565E,0x3E9F,0x269E,0x167E,0x16BE,0x16BF,0x1EBE,0x26DF,0x46FF,0x4E9E,0x6E5E,0x7D7C,0x7C17,0x7AD3,0x9AD4,0xBAD5,0xC2B5,0xCAB5,0xCA54,0xD274,0xD275,0xD254,0xD275,0xD275,0xCA95,0xC295,0xC2F7,0x89D3,0x58F0,0x5951,0x5151,0x4972,0x4972,0x4172,0x4172,0x4172,0x4172,0x3972,0x3952,0x3952,0x3972,0x3151,0x3151,0x3151,0x3171,0x3151,0x3150,0x3150,0x2950,0x2930,0x2950,0x2950,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2131,0x2131,0x1911,0x1112,0x1133,0x0954,0x11B7,0x11F9,0x09F9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01F9,0x01D9,0x09D9,0x09D9,0x09D8,0x1219,0x11F8,0x1218,0x1A18,0x11F8,0x19F8,0x19F8,0x19F8,0x1A18,0x1A18,0x19F8,0x1A18,0x1A18,0x19F8,0x19F8,0x19F8,0x11F8,0x19F8,0x19F8,0x19F8,0x11F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x11F8,0x19F8,0x11D7,0x19F8,0x11F8,0x11D7,0x11F8,0x19F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11D8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11D8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x19F8,0x11F8,0x11F8,0x19F8,0x19F8,0x11F8,0x11F8,0x11F8,0x11F8,0x19F8,0x11F8,0x11F8,0x19F8,0x11D8,0x11D8,0x11F8,0x11F8,0x11F8,0x11D8,0x11F8,0x19F8,0x11F8,0x11F8,0x19F8,0x19F8,0x11F8,0x11F8,0x11D7,0x11F8,0x11F8,0x11F8,0x11F8,0x1A18,0x11F8,0x11F7,0x1218,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11D8,0x19F8,0x19F8,0x11F8,0x11D7,0x11F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x11F8,0x19F8,0x19F8,0x11F8,0x11F8,0x11F8,0x11D8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11D8,0x11F8,0x11F8,0x11F8,0x19F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x19F8,0x11F8,0x19F8,0x11F8,0x11F8,0x19F8,0x11F8,0x11F8,0x11D8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x19F8,0x19F8,0x11F8,0x19F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11D8,0x11F8,0x1218,0x11F8,0x11F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x1A18,0x1A18,0x1A18,0x1A18,0x19F7,0x1A18,0x1A18,0x1218,0x11F8,0x1218,0x11F8,0x1218,0x11F8,0x11F8,0x11F8,0x11F8,0x09F8,0x09D8,0x09F9,0x09F9,0x01D9,0x01F9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x0A1A,0x01F9,0x09F9,0x09F8,0x09B6,0x0954,0x1153,0x1111,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x290F,0x210F,0x2930,0x2130,0x2130,0x210F,0x2130,0x2130, + 0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x2131,0x2131,0x2111,0x2110,0x2110,0x2110,0x2110,0x2130,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2111,0x2111,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2131,0x2130,0x2110,0x2130,0x2110,0x2110,0x2131,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2111,0x2111,0x2111,0x2110,0x2110,0x2111,0x2131,0x2131,0x2110,0x2130,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x2130,0x210F,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x210F,0x2910,0x210F,0x2910,0x210F,0x210F,0x2110,0x210F,0x290F,0x2110,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x290F,0x212F,0x212F,0x2910,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x290F,0x2930,0x210F,0x210F,0x2930,0x290F,0x290F,0x2910,0x2910,0x2930,0x2910,0x290F,0x290F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x210F,0x210F,0x2930,0x2110,0x2930,0x210F,0x2930,0x2130,0x212F,0x210F,0x292F,0x212F,0x212F,0x292F,0x290F,0x290F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2910,0x210F,0x290F,0x210F,0x2110,0x210F,0x2930,0x292F,0x290F,0x210F,0x2910,0x2110,0x2930,0x210F,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x2910,0x2910,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x210F,0x212F,0x210F,0x2930,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2110,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x2910,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x210F,0x2930,0x212F,0x212F,0x2130,0x2130,0x210F,0x292F,0x2930,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x3131,0x3131,0x2931,0x2911,0x2931,0x2931,0x2931,0x2932,0x2952,0x2952,0x2932,0x2952,0x2952,0x2952,0x2931,0x3151,0x3151,0x3171,0x3171,0x3971,0x3971,0x3971,0x3972,0x3971,0x3971,0x3971,0x3972,0x3972,0x3972,0x4192,0x4172,0x4192,0x41B3,0x4193,0x41B3,0x4192,0x4192,0x4192,0x4193,0x4192,0x49B3,0x49B3,0x49B3,0x49B3,0x49D3,0x49B3,0x49D3,0x51D3,0x51D3,0x51F3,0x51D3,0x51F3,0x51F3,0x51F3,0x51F3,0x51F3,0x5214,0x5214,0x49F3,0x51D3,0x59F3,0x59B2,0x5991,0x8294,0xBC3A,0xCC9A,0xCC9A,0xCC9A,0xCCDA,0xCCFA,0xBCB8,0xA477,0x9456,0x7C55,0x7CF7,0x7D79,0x761B,0x6E5C,0x66BD,0x5EDE,0x4EFE,0x471F,0x3F3F,0x371E,0x2F5E,0x2F5E,0x275F,0x277F,0x1F7E,0x179E,0x179F,0x0FBF,0x0FBF,0x0FBF,0x0FBF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x077F,0x075F,0x071E,0x06FE,0x06DE,0x06DE,0x06DE,0x06BE,0x06BE,0x069E,0x069E,0x067E,0x067E,0x067E,0x067E,0x065E,0x065E,0x065E,0x063E,0x063E,0x063E,0x061E,0x061E,0x05FE,0x05FE,0x05FF,0x05FE,0x05FF,0x05DE,0x05DF,0x05DF,0x05DF,0x05BF,0x05BF,0x05DF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x059F,0x05BF,0x059F,0x059F,0x059F,0x059F,0x059F,0x059F,0x059F,0x059F,0x059F,0x059F,0x05BF,0x059F,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05BF,0x05DF,0x05FF,0x05DF,0x05BF,0x05BF,0x05BF,0x059F,0x057F,0x055F,0x051F,0x04FF,0x04DF,0x049F,0x045F,0x03FE,0x0BFF,0x037E,0x033D,0x02DD,0x0A9D,0x0A3C,0x09FB,0x19FB,0x29FC,0x31BA,0x28F7,0x2874,0x721A,0xB3DF,0xBB9E,0xB31B,0xAAB9,0xB2FA,0xAAF9,0xAB39,0xA359,0x8337,0x6357,0x6CDB,0x559D,0x4E9F,0x2E9F,0x1EBF,0x16BE,0x16BF,0x0E9E,0x16BE,0x26DF,0x46FF,0x569F,0x6E3E,0x7D5C,0x73B6,0x82F4,0xA2D4,0xBAF5,0xC2B5,0xCA74,0xD274,0xD275,0xD275,0xD234,0xD254,0xD275,0xCA75,0xC2B5,0xBAD7,0x91F4,0x58AF,0x5951,0x5172,0x4992,0x4972,0x4192,0x4172,0x4172,0x4172,0x3972,0x3952,0x3972,0x3972,0x3151,0x3151,0x3151,0x3171,0x3150,0x3150,0x3150,0x2950,0x2950,0x2930,0x2950,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x292F,0x290F,0x2930,0x2110,0x2130,0x2131,0x2131,0x1911,0x1112,0x1133,0x1154,0x11D7,0x09F8,0x09F9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x09FA,0x0A1A,0x09F9,0x1219,0x11F8,0x11D8,0x11D7,0x19F8,0x19F7,0x19F7,0x19F7,0x21F7,0x19D7,0x21F7,0x19D6,0x19D7,0x19D6,0x19D7,0x19D6,0x19D7,0x19D6,0x21F7,0x21D7,0x19D6,0x19D6,0x19D7,0x19D7,0x19D7,0x19D7,0x21D7,0x19D7,0x21D7,0x19D6,0x21D7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D6,0x19D7,0x19D7,0x19F7,0x19D6,0x19D6,0x19F7,0x19D7,0x19D7,0x19F7,0x19F7,0x21F7,0x19D7,0x21F7,0x19D7,0x21F7,0x19D7,0x19D7,0x19D7,0x21F7,0x19D6,0x21F7,0x19D6,0x19D7,0x19D7,0x21F7,0x19D7,0x19D7,0x19D6,0x21F7,0x19F6,0x21F7,0x19D6,0x19D6,0x19D7,0x19D6,0x19D7,0x19D7,0x19D6,0x19D7,0x19D6,0x19D7,0x19D7,0x19D7,0x19B6,0x19D7,0x19D7,0x19D6,0x19D7,0x19F7,0x19D7,0x19F7,0x19D7,0x19F7,0x19D6,0x19F7,0x19D7,0x19F7,0x19D6,0x19F7,0x19D6,0x19F7,0x19D6,0x19F7,0x19D7,0x19D7,0x19D6,0x19D7,0x19D6,0x19D6,0x19B6,0x19D7,0x19B6,0x19D6,0x19B6,0x19B6,0x19B6,0x19D6,0x19D6,0x19D7,0x19B6,0x19D6,0x19D6,0x19B6,0x19B6,0x19D6,0x19B6,0x19D6,0x19B6,0x19D6,0x19D6,0x19D6,0x19B6,0x19D6,0x19D6,0x19D6,0x19B6,0x19B6,0x19B6,0x19D7,0x19B6,0x19D6,0x19D6,0x19D7,0x19D6,0x19D6,0x19B6,0x19D7,0x19D6,0x19D6,0x19D6,0x19D7,0x19D6,0x19D6,0x19D6,0x19D7,0x19D6,0x19D6,0x19D6,0x19D7,0x19B6,0x19D7,0x19D6,0x19D7,0x19D6,0x19D6,0x19D6,0x19D7,0x19D6,0x19D7,0x19F7,0x21F7,0x19F7,0x21F7,0x21F7,0x21F7,0x21F7,0x21F7,0x21F7,0x21F7,0x21F7,0x21F7,0x21F7,0x21F7,0x19F7,0x21F7,0x21F7,0x2217,0x21F7,0x21F7,0x21F7,0x21F7,0x21F7,0x21F7,0x21F7,0x21F7,0x19F6,0x2217,0x21F7,0x21F7,0x19F7,0x2217,0x19F7,0x21F7,0x19D7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x11F8,0x11F8,0x09F8,0x09F9,0x09F9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01F9,0x09F9,0x09D8,0x11D7,0x0954,0x1133,0x1931,0x1931,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2110,0x2110,0x2930,0x210F,0x2130,0x212F,0x210F,0x292F,0x290F,0x210F,0x292F,0x210F,0x292F,0x290F,0x212F,0x210F,0x2130,0x2130,0x2130, + 0x1973,0x1973,0x1952,0x1952,0x1952,0x1952,0x1952,0x1931,0x2152,0x1931,0x1931,0x1911,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x2131,0x2131,0x2131,0x2131,0x2151,0x1951,0x1951,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x2131,0x2131,0x2131,0x1910,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1930,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x2131,0x2151,0x2131,0x2151,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2111,0x2131,0x2111,0x2111,0x2111,0x2111,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2930,0x2110,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x212F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2910,0x2910,0x210F,0x2130,0x2930,0x2110,0x290F,0x210F,0x210F,0x2910,0x290F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2110,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x2110,0x212F,0x212F,0x210F,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x2930,0x210F,0x290F,0x210F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x2930,0x2910,0x2930,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x290F,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x210F,0x212F,0x292F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x2930,0x2110,0x2910,0x2930,0x290F,0x210F,0x210F,0x2910,0x290F,0x2930,0x210F,0x210F,0x210F,0x2910,0x2930,0x290F,0x2910,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x290F,0x2930,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2110,0x2930,0x2110,0x2910,0x2910,0x2910,0x2110,0x2930,0x2910,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x290F,0x2910,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x2930,0x290F,0x2910,0x290F,0x2910,0x2930,0x2910,0x290F,0x2910,0x2930,0x210F,0x210F,0x290F,0x2930,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x2930,0x292F,0x292F,0x292F,0x292F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2150,0x2130,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x3130,0x3151,0x3131,0x3131,0x2931,0x2951,0x2931,0x2931,0x2952,0x2952,0x3152,0x3152,0x3152,0x3151,0x3131,0x3151,0x3972,0x3972,0x3992,0x3992,0x3992,0x3971,0x3971,0x3972,0x3971,0x3972,0x3992,0x3972,0x4172,0x4172,0x4193,0x4193,0x4192,0x4192,0x4192,0x4192,0x4192,0x49B3,0x49B3,0x49B3,0x49B3,0x4993,0x49B3,0x51B3,0x49D3,0x49D3,0x49D3,0x49B2,0x49D3,0x51F3,0x51F3,0x51F3,0x49F3,0x49F3,0x5214,0x5234,0x4A34,0x4A13,0x4A33,0x49F3,0x49B1,0x59D1,0x82F5,0xAC19,0xCCFB,0xCCDB,0xCD1B,0xC4DA,0xB4B9,0xA477,0x9456,0x8CB7,0x8517,0x7DBA,0x865C,0x6E7C,0x66DD,0x56FE,0x46FE,0x3F1E,0x373F,0x2F5F,0x275F,0x279F,0x1F7F,0x177F,0x177F,0x0F9F,0x0FBF,0x0FBF,0x0FBF,0x0FDF,0x07DF,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x079F,0x07BF,0x07BF,0x077F,0x073E,0x071E,0x06DE,0x06DE,0x06BE,0x06BE,0x06BE,0x06BE,0x069E,0x067E,0x067E,0x067E,0x067E,0x065E,0x065E,0x065E,0x065E,0x063E,0x063E,0x063E,0x061E,0x061E,0x061E,0x061E,0x05FE,0x05FE,0x05FF,0x05DE,0x05DE,0x05DF,0x05DF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x059F,0x059F,0x059F,0x059F,0x057F,0x059F,0x059F,0x059F,0x057F,0x059F,0x059F,0x057F,0x059F,0x059F,0x057F,0x057F,0x057F,0x059F,0x059F,0x059F,0x059F,0x059F,0x059F,0x057F,0x057F,0x059F,0x059F,0x059F,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x059F,0x05BF,0x059F,0x059F,0x057F,0x057F,0x055F,0x051F,0x04FF,0x04DF,0x04BF,0x047F,0x043F,0x03DE,0x0BBF,0x037E,0x031E,0x02DD,0x029D,0x129E,0x0A1C,0x11BB,0x21DC,0x219A,0x3179,0x2095,0x38B5,0x829C,0xB3DF,0xB37D,0xA2DA,0xA2DA,0xA2F9,0xA33A,0x8B18,0x7B58,0x63F9,0x54DB,0x55FE,0x3E9F,0x26BF,0x169E,0x0EBE,0x0EBE,0x16FF,0x16BE,0x2EDF,0x3EDF,0x5EDF,0x6DFD,0x7D3B,0x6B35,0x82B4,0xA2B4,0xBAB5,0xCA95,0xCA74,0xD254,0xD254,0xD254,0xD254,0xD254,0xCA54,0xCA95,0xCAB6,0xBAD7,0x89F4,0x50AF,0x5951,0x4951,0x4972,0x4992,0x4172,0x4172,0x4172,0x3972,0x3952,0x3972,0x3972,0x3971,0x3151,0x3151,0x3171,0x3151,0x3150,0x3150,0x2930,0x2950,0x2950,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x2110,0x2130,0x2131,0x2131,0x1932,0x1112,0x1133,0x0954,0x11D7,0x11F9,0x01F9,0x01F9,0x01FA,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x09D9,0x09B8,0x11D9,0x11D8,0x11B7,0x0955,0x0934,0x08F3,0x00D2,0x00D2,0x08D2,0x08B1,0x08D2,0x08D2,0x08B1,0x08D1,0x08B1,0x08D1,0x08D2,0x08D2,0x08D2,0x08D2,0x08D2,0x08D2,0x08D2,0x08F2,0x10F2,0x08D2,0x10F2,0x10F2,0x10F2,0x10F2,0x08F2,0x08D2,0x08F2,0x10F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x1112,0x0912,0x10F2,0x08F2,0x10F2,0x08F2,0x08F2,0x08F2,0x1112,0x1112,0x10F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x10F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x10F2,0x1113,0x10F2,0x10F2,0x10F2,0x1113,0x1113,0x08F2,0x1113,0x1113,0x1112,0x1112,0x08F2,0x08F3,0x1113,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F3,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x1112,0x08F2,0x08F2,0x08F2,0x0912,0x0912,0x08F2,0x08F2,0x1112,0x10F2,0x1113,0x10F3,0x10F2,0x10F2,0x10F2,0x10F2,0x10F3,0x10F2,0x10F2,0x10F2,0x10F2,0x10F2,0x08F2,0x10F2,0x10F2,0x08F2,0x10F2,0x10F2,0x10F2,0x10F2,0x10F2,0x10F2,0x10F2,0x08F2,0x10F3,0x10F2,0x08F2,0x08F2,0x10F3,0x08F2,0x1113,0x1112,0x08F2,0x1113,0x1112,0x08F2,0x1113,0x10F3,0x1113,0x10F2,0x1113,0x1113,0x1112,0x1112,0x10F2,0x10F2,0x1113,0x1113,0x08F3,0x08F3,0x1113,0x1113,0x1113,0x08F2,0x1113,0x1113,0x08F2,0x08F2,0x1113,0x08F2,0x08F2,0x08F2,0x08F2,0x08D2,0x08F2,0x08D2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08D2,0x08F2,0x08F2,0x08D2,0x08D2,0x08D2,0x08D2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08D2,0x08F2,0x08F2,0x08D2,0x08D2,0x08D2,0x08F2,0x08D2,0x08D2,0x08D2,0x08D2,0x08F2,0x08F2,0x08D2,0x08F2,0x0913,0x0913,0x0975,0x1196,0x09B7,0x09D8,0x09F9,0x09F9,0x01B9,0x01B9,0x01BA,0x01DA,0x01BA,0x01DA,0x01DA,0x01D9,0x01FA,0x01F9,0x09F9,0x11F8,0x11D7,0x0954,0x1112,0x1931,0x1931,0x2130,0x2110,0x2130,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2910,0x2110,0x2930,0x2130,0x2130,0x212F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2130,0x2110,0x2130,0x2130, + 0x21F5,0x21D5,0x2194,0x1973,0x1953,0x1132,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x2132,0x1931,0x1931,0x1931,0x1931,0x1951,0x1931,0x1931,0x1951,0x1952,0x1952,0x1931,0x1951,0x1952,0x1931,0x1932,0x2132,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2132,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1931,0x1931,0x1931,0x1932,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1951,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1931,0x2132,0x1931,0x1931,0x1931,0x1931,0x1932,0x2132,0x1932,0x1931,0x1931,0x1931,0x1932,0x1931,0x1932,0x1932,0x1932,0x1931,0x1931,0x1932,0x1932,0x1932,0x1931,0x1931,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x2132,0x1911,0x1911,0x1911,0x1912,0x1912,0x1911,0x1932,0x2132,0x1911,0x2131,0x1911,0x2111,0x2131,0x2131,0x2111,0x2131,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x2930,0x210F,0x210F,0x2130,0x210F,0x210F,0x212F,0x2130,0x2130,0x2930,0x2110,0x2930,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2910,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x290F,0x210F,0x2930,0x2910,0x210F,0x2110,0x2110,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x210F,0x290F,0x210F,0x2930,0x290F,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2910,0x2930,0x210F,0x290F,0x2930,0x290F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x290F,0x212F,0x210F,0x2930,0x2930,0x210F,0x2930,0x290F,0x210F,0x292F,0x212F,0x292F,0x292F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x212F,0x212F,0x2910,0x2930,0x210F,0x212F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x210F,0x212F,0x290F,0x2930,0x290F,0x290F,0x292F,0x292F,0x210F,0x292F,0x212F,0x210F,0x290F,0x210F,0x2910,0x2910,0x290F,0x2910,0x290F,0x210F,0x2910,0x2910,0x2910,0x210F,0x2910,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x210F,0x210F,0x2910,0x2910,0x210F,0x2110,0x2930,0x2910,0x2110,0x2930,0x2910,0x2910,0x2910,0x210F,0x2910,0x2110,0x2930,0x210F,0x2110,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2930,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x2930,0x3131,0x3131,0x3131,0x3131,0x3151,0x3151,0x3151,0x3151,0x2951,0x3172,0x3172,0x3151,0x3152,0x3151,0x3972,0x3972,0x3972,0x3992,0x3972,0x3992,0x3971,0x3972,0x3972,0x3971,0x4192,0x4192,0x4192,0x4193,0x4192,0x4993,0x4192,0x4192,0x4192,0x4192,0x49B3,0x4992,0x49B3,0x49B3,0x49B3,0x49B3,0x51B3,0x51D3,0x51B3,0x51D3,0x49B3,0x49D3,0x49B2,0x51F3,0x51F3,0x5213,0x49F3,0x49F3,0x49F3,0x4A33,0x4234,0x3A12,0x31D1,0x3A12,0x5273,0x62B4,0x8B97,0xB49A,0xC4FB,0xCD1B,0xCD5B,0xBCFA,0xA478,0x8415,0x8476,0x8D59,0x85BA,0x761B,0x6E7C,0x66DD,0x56FD,0x46FD,0x36FD,0x375F,0x2F7F,0x277F,0x1F7F,0x177F,0x0F7F,0x0F9F,0x0FBF,0x0FBF,0x0FDF,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x077F,0x073E,0x071E,0x06FE,0x06BD,0x06BD,0x06BE,0x06BE,0x06BE,0x069E,0x067E,0x067E,0x067E,0x065E,0x067E,0x065E,0x065E,0x065E,0x063D,0x063E,0x061E,0x061E,0x061E,0x05FE,0x061E,0x05FE,0x05FE,0x05FF,0x05DE,0x05DE,0x05BE,0x05BE,0x05BF,0x05BF,0x059F,0x059F,0x059F,0x057F,0x057F,0x057F,0x057F,0x057F,0x057F,0x057F,0x057F,0x057F,0x057F,0x057F,0x055F,0x055F,0x057F,0x055F,0x055F,0x055F,0x057F,0x057F,0x057F,0x055F,0x057F,0x057F,0x057F,0x057F,0x057F,0x057F,0x057F,0x057F,0x059F,0x059F,0x059F,0x059F,0x059F,0x059F,0x059F,0x057F,0x057F,0x057F,0x057F,0x055F,0x057F,0x055F,0x051F,0x04FF,0x04DF,0x049F,0x049F,0x043F,0x041F,0x0BFF,0x039F,0x035E,0x02FE,0x02BE,0x0A9E,0x0A3D,0x0A1C,0x09BB,0x19BC,0x21BB,0x31BB,0x3139,0x2895,0x4916,0x9B5E,0xB3BF,0xA31C,0x9AFB,0x9AFA,0x933A,0x7AF8,0x6B99,0x5C5A,0x5D9D,0x4E7F,0x36BF,0x26BF,0x16DF,0x0EDF,0x0EDE,0x16DF,0x1EFF,0x2EDF,0x3EBE,0x5EBF,0x6DDD,0x7CFB,0x7355,0x92F5,0xAAB4,0xC2B5,0xCA74,0xCA74,0xD254,0xD274,0xD254,0xD254,0xD254,0xD274,0xCA95,0xC2B6,0xC318,0x89D3,0x5910,0x5151,0x5172,0x4972,0x4972,0x4172,0x4172,0x4172,0x3972,0x3972,0x3951,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3150,0x3150,0x3150,0x3150,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x292F,0x292F,0x292F,0x2130,0x2130,0x2131,0x2131,0x1911,0x1132,0x1134,0x1175,0x11B7,0x09F8,0x09F9,0x01F9,0x01D9,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01B9,0x09B9,0x09B8,0x11B8,0x0976,0x0935,0x0914,0x0913,0x1113,0x10F2,0x10F2,0x10F2,0x18F2,0x10F2,0x10F1,0x10F1,0x1912,0x18F2,0x10F1,0x18F2,0x18F2,0x10F1,0x18F2,0x18F2,0x10F1,0x18F2,0x1912,0x10F2,0x1912,0x18F2,0x10F1,0x18F2,0x18F2,0x18F2,0x18F2,0x10F2,0x18F2,0x18F2,0x1912,0x1912,0x1912,0x18F2,0x1912,0x1112,0x1912,0x1912,0x1912,0x10F1,0x1912,0x1912,0x1911,0x10F1,0x1912,0x18F2,0x10F1,0x1112,0x18F2,0x1912,0x10F1,0x18F2,0x18F2,0x18F1,0x10F1,0x10F1,0x18F2,0x18F2,0x18F2,0x10F1,0x1112,0x10F1,0x1912,0x18F2,0x18F2,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x18F2,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1112,0x1912,0x1912,0x1912,0x1112,0x1912,0x10F2,0x1912,0x1912,0x18F2,0x10F2,0x18F2,0x1112,0x1912,0x1112,0x1912,0x1112,0x18F2,0x18F2,0x1912,0x1912,0x1912,0x18F2,0x1912,0x1912,0x1912,0x1912,0x18F2,0x18F2,0x18F2,0x18F2,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x18F2,0x18F2,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x18F2,0x1112,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1112,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x18F2,0x18F2,0x18F2,0x1912,0x18F2,0x18F2,0x18F2,0x18F2,0x10F2,0x1912,0x1912,0x10F1,0x18F2,0x1912,0x10F1,0x1912,0x18F2,0x10F1,0x1912,0x18F2,0x10F1,0x1912,0x1912,0x18F2,0x10F1,0x1912,0x10F1,0x18F2,0x18F2,0x1912,0x10F1,0x18F2,0x1912,0x1112,0x10F2,0x1912,0x1112,0x1933,0x1133,0x1133,0x1154,0x0975,0x09B7,0x11F8,0x09D9,0x09D9,0x09DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01B9,0x01DA,0x021A,0x01D9,0x09D8,0x11F8,0x11D6,0x1174,0x1132,0x1931,0x2151,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x212F,0x292F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x2130,0x2110,0x2130,0x2110, + 0x19D6,0x19D6,0x19B5,0x1154,0x1133,0x1113,0x1112,0x1133,0x1133,0x1933,0x1933,0x1132,0x1132,0x1132,0x1112,0x1112,0x1932,0x1112,0x1932,0x1932,0x1112,0x1132,0x1932,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1932,0x1932,0x1932,0x1932,0x1112,0x1112,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1112,0x1932,0x1932,0x1912,0x1912,0x1932,0x1932,0x1132,0x1132,0x1112,0x1932,0x1912,0x1932,0x1932,0x1932,0x1912,0x1932,0x1112,0x1112,0x1132,0x1932,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1132,0x1132,0x1112,0x1132,0x1132,0x1132,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1131,0x1132,0x1132,0x1132,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1912,0x1912,0x1111,0x1932,0x1932,0x1932,0x1112,0x1932,0x1112,0x1932,0x1932,0x1932,0x1132,0x1132,0x1932,0x1932,0x1932,0x1112,0x1932,0x1932,0x1112,0x1112,0x1112,0x1112,0x1112,0x1932,0x1112,0x1112,0x1112,0x1932,0x1112,0x1932,0x1932,0x1932,0x1912,0x1912,0x1112,0x1112,0x1112,0x1912,0x1912,0x1912,0x1932,0x1932,0x1932,0x1932,0x1112,0x1912,0x1912,0x1912,0x1932,0x1932,0x1932,0x1912,0x2111,0x2111,0x2111,0x2111,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x210F,0x212F,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x2910,0x210F,0x2930,0x2930,0x210F,0x290F,0x210F,0x290F,0x2930,0x210F,0x290F,0x2930,0x2910,0x210F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x210F,0x2910,0x2930,0x2930,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x2910,0x2110,0x210F,0x2910,0x290F,0x210F,0x210F,0x290F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2110,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x292F,0x292F,0x210F,0x292F,0x2930,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2930,0x2930,0x212F,0x212F,0x210F,0x292F,0x212F,0x210F,0x210F,0x2910,0x2110,0x2930,0x2910,0x2930,0x210F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x2930,0x212F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x210F,0x290F,0x2930,0x290F,0x290F,0x2910,0x210F,0x2910,0x2930,0x210F,0x2930,0x2930,0x2930,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2110,0x2110,0x210F,0x2110,0x2930,0x212F,0x210F,0x292F,0x290F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x210F,0x290F,0x210F,0x212F,0x2930,0x212F,0x210F,0x2130,0x2130,0x210F,0x2130,0x212F,0x210F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2910,0x2930,0x2930,0x210F,0x210F,0x2930,0x212F,0x2130,0x2130,0x210F,0x2110,0x2130,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3151,0x3131,0x3131,0x3131,0x2931,0x3151,0x3151,0x3151,0x3172,0x3172,0x3172,0x3172,0x3172,0x3152,0x3152,0x3972,0x3972,0x3992,0x3992,0x3992,0x3992,0x3972,0x3972,0x4172,0x4172,0x4192,0x4192,0x4192,0x4192,0x4193,0x4193,0x4193,0x4193,0x4192,0x4992,0x4992,0x49B3,0x49B3,0x51B3,0x51D3,0x51B3,0x51B2,0x51B2,0x51D3,0x51D3,0x51F3,0x51F3,0x51F3,0x51D3,0x51D3,0x5213,0x5233,0x4A34,0x4213,0x3A33,0x3A73,0x3A94,0x4B56,0x6C39,0x84BB,0xA51C,0xAD1C,0xBD5C,0xBD5B,0xB4FA,0x9C78,0x7BF5,0x7C76,0x8D9A,0x861B,0x6E1B,0x667C,0x5EDD,0x4EDD,0x46FD,0x371E,0x375E,0x2F7F,0x1F5E,0x177F,0x177F,0x0F9F,0x0F9F,0x0FBF,0x0FBF,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x075E,0x073E,0x06FD,0x06DD,0x06DD,0x06BD,0x06BD,0x06BD,0x06BE,0x069E,0x067D,0x067E,0x065E,0x065D,0x067D,0x065D,0x065D,0x065D,0x063D,0x063D,0x061D,0x061D,0x061E,0x05FE,0x05FE,0x05FE,0x05DE,0x05DE,0x05BE,0x05DE,0x05BE,0x05BE,0x05BE,0x05BE,0x059E,0x059E,0x059F,0x057E,0x057E,0x057E,0x055F,0x057F,0x055F,0x055F,0x055F,0x055F,0x055F,0x055F,0x053F,0x053F,0x055F,0x055F,0x053F,0x053F,0x055F,0x055F,0x055F,0x055F,0x055F,0x055F,0x055F,0x055F,0x055F,0x055F,0x055F,0x055F,0x057F,0x057F,0x055F,0x055F,0x055F,0x055F,0x057F,0x057F,0x055F,0x055F,0x055F,0x053F,0x053F,0x053F,0x053F,0x04FF,0x04BF,0x04BF,0x049F,0x045F,0x043F,0x03FF,0x039F,0x037F,0x033F,0x02DE,0x027D,0x025E,0x0A3D,0x09FD,0x09DC,0x11BC,0x19BC,0x29BC,0x319B,0x28F8,0x2075,0x59DA,0x933E,0x9B3E,0x92DB,0x8ADA,0x7AB8,0x62F8,0x5BB9,0x54BB,0x5E1F,0x469F,0x2E9E,0x16BE,0x16DF,0x0EDE,0x0EDE,0x16FE,0x271F,0x2EFF,0x3EDF,0x567E,0x763E,0x6C79,0x7B55,0x92D4,0xAA94,0xC2B4,0xCAB5,0xD274,0xCA34,0xD254,0xD254,0xD254,0xD254,0xCA54,0xCA75,0xC2B6,0xBAF7,0x7972,0x5931,0x5131,0x4952,0x4972,0x4972,0x4172,0x4172,0x4172,0x3972,0x3971,0x3972,0x3971,0x3151,0x3151,0x3171,0x3151,0x3150,0x3150,0x3150,0x3150,0x2930,0x2950,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x292F,0x2930,0x2130,0x2131,0x2131,0x1911,0x1112,0x1154,0x1196,0x11D7,0x1219,0x09F9,0x01D9,0x01FA,0x01F9,0x01FA,0x01D9,0x01D9,0x01DA,0x01DA,0x01B9,0x01D9,0x09B9,0x11F9,0x19D8,0x1996,0x1154,0x1113,0x1133,0x1112,0x1932,0x1932,0x1932,0x1911,0x1911,0x2132,0x2132,0x2132,0x2131,0x1911,0x1931,0x1911,0x1932,0x1932,0x2132,0x1931,0x2131,0x2131,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x2131,0x1911,0x1931,0x1931,0x2131,0x1931,0x1932,0x1932,0x2132,0x2132,0x2132,0x1931,0x2132,0x1911,0x2132,0x2132,0x2132,0x2132,0x2152,0x2132,0x2132,0x2132,0x1932,0x2132,0x2132,0x2111,0x2132,0x2132,0x2132,0x2132,0x2132,0x2132,0x2132,0x2132,0x2132,0x1911,0x2132,0x1931,0x2131,0x2131,0x1911,0x1911,0x2131,0x1911,0x2132,0x1911,0x2131,0x2131,0x2132,0x1911,0x1931,0x1931,0x1911,0x1911,0x2132,0x2132,0x2132,0x2132,0x1931,0x2132,0x2132,0x1911,0x2132,0x2132,0x2132,0x1932,0x2152,0x2132,0x2132,0x1911,0x1911,0x1911,0x2132,0x2132,0x1931,0x1931,0x1932,0x1911,0x2132,0x1911,0x2132,0x2132,0x1911,0x1911,0x1931,0x1911,0x1931,0x1911,0x1911,0x2132,0x2132,0x1911,0x2132,0x1911,0x1931,0x2132,0x1911,0x2131,0x1931,0x1911,0x1911,0x1911,0x1931,0x2132,0x1911,0x1911,0x1911,0x2132,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1931,0x1911,0x2132,0x2132,0x1931,0x1931,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x2132,0x1931,0x1911,0x1911,0x1911,0x2132,0x1911,0x1911,0x1931,0x1911,0x2132,0x2132,0x2132,0x1911,0x2132,0x2111,0x2131,0x2131,0x2132,0x1911,0x2132,0x2132,0x2132,0x1911,0x2132,0x1931,0x2132,0x2132,0x2132,0x2132,0x2132,0x2131,0x1931,0x2131,0x2132,0x1911,0x2131,0x1911,0x2131,0x2111,0x2132,0x2132,0x2132,0x2132,0x2152,0x1932,0x1932,0x1932,0x1932,0x1932,0x1953,0x1153,0x1174,0x1175,0x0976,0x11B8,0x11F9,0x0A1A,0x09DA,0x01BA,0x01BA,0x01BA,0x01DA,0x01DA,0x01D9,0x01D9,0x0A1A,0x01D9,0x09D8,0x09D7,0x11B6,0x1174,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x2950,0x2930,0x2150,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x210F,0x210F,0x212F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x212F,0x210F,0x212F, + 0x1196,0x19B6,0x1195,0x0954,0x0954,0x1134,0x0933,0x1133,0x1113,0x1133,0x1133,0x1134,0x1133,0x1133,0x1113,0x1113,0x1113,0x1133,0x1112,0x1133,0x1133,0x1112,0x1133,0x1133,0x1133,0x0932,0x1133,0x1133,0x0932,0x1132,0x1133,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1132,0x1133,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1132,0x1132,0x1133,0x1113,0x1133,0x1132,0x1132,0x1133,0x1132,0x1132,0x1133,0x1133,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1112,0x1133,0x1133,0x1133,0x1132,0x1132,0x1113,0x1133,0x1132,0x1132,0x1133,0x1133,0x1132,0x0932,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1132,0x1132,0x1112,0x1133,0x1112,0x1133,0x1133,0x1133,0x1133,0x1133,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1113,0x1133,0x1133,0x1133,0x1133,0x1953,0x1953,0x1953,0x1953,0x1153,0x1153,0x1133,0x1133,0x1132,0x1133,0x1132,0x1112,0x1932,0x1912,0x1912,0x2111,0x2131,0x2110,0x2110,0x2931,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x212F,0x292F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x210F,0x2110,0x2930,0x2930,0x210F,0x290F,0x210F,0x210F,0x2910,0x210F,0x210F,0x2910,0x210F,0x290F,0x2910,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x210F,0x210F,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x2910,0x2910,0x2930,0x2110,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x2910,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2910,0x2910,0x2930,0x210F,0x290F,0x210F,0x212F,0x210F,0x212F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x212F,0x212F,0x290F,0x292F,0x210F,0x212F,0x290F,0x2910,0x210F,0x2110,0x2910,0x2910,0x210F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2910,0x210F,0x2110,0x210F,0x2930,0x210F,0x2110,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2130,0x210F,0x210F,0x290F,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2930,0x2130,0x2130,0x2930,0x2130,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2950,0x2930,0x3131,0x3131,0x3131,0x3151,0x3131,0x3151,0x3151,0x3151,0x3171,0x3151,0x3172,0x3172,0x3172,0x3151,0x3172,0x3972,0x3972,0x3972,0x3972,0x3972,0x3992,0x3972,0x3972,0x4172,0x4172,0x4192,0x4193,0x4172,0x4192,0x4993,0x4993,0x4192,0x49B3,0x49B3,0x49B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51D3,0x51B2,0x51D3,0x51D3,0x51D2,0x51F3,0x51D3,0x51D3,0x51D3,0x5213,0x5253,0x4253,0x3212,0x3A93,0x5BD8,0x74FC,0x857D,0x95BE,0x959D,0xADBD,0xB5DD,0xB59C,0xA519,0x7C15,0x6BF5,0x8539,0x85FC,0x765C,0x665C,0x5EDD,0x4EFD,0x3F1E,0x2EFD,0x2F5F,0x277F,0x277F,0x1F7E,0x177F,0x0F9F,0x0FBF,0x0FBF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079E,0x075E,0x073E,0x071D,0x06DD,0x06BD,0x06BD,0x06BD,0x06BD,0x069D,0x069D,0x067D,0x067D,0x065D,0x065D,0x065D,0x065D,0x065D,0x063D,0x063D,0x063D,0x061D,0x061D,0x061D,0x05FD,0x05FE,0x05DE,0x05DE,0x05DE,0x05BE,0x05BE,0x05BE,0x05BE,0x05BE,0x059E,0x059E,0x059E,0x057E,0x057E,0x057E,0x055E,0x055E,0x055F,0x053E,0x053E,0x053F,0x053F,0x053F,0x053F,0x053F,0x051F,0x051F,0x053F,0x053F,0x051F,0x053F,0x053F,0x053F,0x053F,0x051F,0x051F,0x053F,0x053F,0x053F,0x053F,0x053F,0x055F,0x055F,0x053F,0x053F,0x053F,0x053F,0x055F,0x055F,0x055F,0x053F,0x051F,0x053F,0x051F,0x051F,0x051F,0x051F,0x04FF,0x04BF,0x04BF,0x049F,0x047F,0x045F,0x03FF,0x03BF,0x037F,0x037F,0x02FE,0x02BE,0x027E,0x023D,0x021D,0x01FD,0x01BC,0x099C,0x119C,0x21BC,0x29BC,0x317A,0x1896,0x30B6,0x7ABD,0x8B1D,0x7A9A,0x7ADA,0x72F9,0x6379,0x5C3A,0x4D1B,0x5E7F,0x3EBF,0x26DE,0x0EBE,0x0EFF,0x0EFF,0x171F,0x16FE,0x271F,0x2F1F,0x46FF,0x563E,0x865F,0x7478,0x7314,0x9AF5,0xB2D5,0xC2B4,0xCA74,0xCA54,0xD254,0xD254,0xD254,0xD234,0xCA34,0xD275,0xCA95,0xC2B6,0xBAF7,0x7131,0x6131,0x5152,0x4952,0x4972,0x4172,0x4172,0x4172,0x3972,0x3971,0x3971,0x3971,0x3951,0x3151,0x3171,0x3171,0x3150,0x3130,0x3150,0x3150,0x3150,0x2950,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2110,0x2930,0x2130,0x2131,0x1911,0x1112,0x1154,0x1196,0x11D8,0x09F9,0x09F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x09D9,0x09D9,0x11F9,0x19D8,0x1175,0x1113,0x1112,0x10F2,0x1912,0x1911,0x1911,0x1911,0x2131,0x1911,0x2131,0x2111,0x2111,0x1910,0x2131,0x2131,0x2131,0x1910,0x2131,0x1911,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2111,0x2131,0x1911,0x1910,0x2131,0x2111,0x2131,0x2131,0x2131,0x1910,0x1910,0x2131,0x2110,0x2110,0x2131,0x1910,0x2131,0x2111,0x2131,0x2111,0x2111,0x2111,0x2131,0x2130,0x2131,0x2111,0x2131,0x2111,0x2131,0x2111,0x1931,0x1910,0x2111,0x2111,0x2110,0x2111,0x2111,0x2111,0x2131,0x2131,0x2131,0x2111,0x2131,0x2111,0x2111,0x2110,0x2110,0x2110,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x1910,0x1911,0x1910,0x2111,0x2110,0x2131,0x2111,0x2131,0x1910,0x2131,0x1910,0x2111,0x2131,0x2111,0x2131,0x2131,0x2111,0x2131,0x2111,0x2131,0x2111,0x2111,0x2111,0x2131,0x2111,0x2131,0x1911,0x2131,0x2131,0x1931,0x1931,0x2111,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2131,0x1911,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1911,0x2131,0x2131,0x2111,0x2131,0x2111,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2111,0x1931,0x1911,0x2131,0x2131,0x1911,0x1910,0x2131,0x2111,0x1911,0x1910,0x2111,0x2111,0x1910,0x1911,0x2131,0x2111,0x2131,0x2111,0x2131,0x1910,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2131,0x2131,0x2131,0x2111,0x2111,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2111,0x2111,0x2131,0x2110,0x2111,0x2111,0x2131,0x2131,0x2131,0x2111,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1952,0x1132,0x1133,0x1134,0x1176,0x09B7,0x1219,0x09D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01FA,0x01D9,0x09F9,0x09F8,0x09D7,0x11D7,0x1195,0x1132,0x1911,0x1931,0x2131,0x2130,0x2951,0x2130,0x2150,0x2130,0x2110,0x2110,0x210F,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x292F,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F, + 0x1176,0x1196,0x1195,0x1195,0x1175,0x1175,0x1175,0x1175,0x1175,0x1174,0x1975,0x1975,0x1975,0x1154,0x1154,0x1154,0x1154,0x1154,0x1154,0x1154,0x1974,0x1154,0x1154,0x1174,0x1174,0x1154,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1174,0x1974,0x1974,0x1974,0x1174,0x1974,0x1174,0x1174,0x1174,0x1974,0x1154,0x1974,0x1154,0x1974,0x1174,0x1174,0x1154,0x1174,0x1154,0x1174,0x1154,0x1174,0x1154,0x1154,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1154,0x1154,0x1154,0x1174,0x1174,0x1174,0x1154,0x1154,0x1154,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1974,0x1174,0x1974,0x1974,0x1174,0x1974,0x1974,0x1154,0x1974,0x1974,0x1174,0x1174,0x1974,0x1974,0x1974,0x1154,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1954,0x1974,0x1974,0x1974,0x1174,0x1174,0x1974,0x1174,0x1975,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1174,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1174,0x1974,0x1994,0x1974,0x1994,0x1974,0x1994,0x1174,0x1974,0x1974,0x1154,0x1154,0x1133,0x1933,0x1932,0x1911,0x2131,0x2111,0x2131,0x2110,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x210F,0x2930,0x292F,0x212F,0x292F,0x2930,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x2910,0x2930,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x2110,0x2930,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2910,0x2910,0x2110,0x212F,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x290F,0x292F,0x290F,0x290F,0x2930,0x292F,0x292F,0x292F,0x212F,0x2930,0x290F,0x2930,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2130,0x2130,0x2110,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2110,0x2910,0x2910,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x210F,0x210F,0x210F,0x290F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x212F,0x292F,0x290F,0x2930,0x210F,0x290F,0x290F,0x2930,0x2930,0x210F,0x292F,0x2930,0x290F,0x2930,0x290F,0x290F,0x210F,0x2930,0x212F,0x2930,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2130,0x2930,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x290F,0x290F,0x292F,0x210F,0x290F,0x2930,0x290F,0x290F,0x292F,0x212F,0x212F,0x2930,0x2930,0x2130,0x212F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2950,0x2930,0x2130,0x2950,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x3150,0x3150,0x2930,0x2930,0x2930,0x2930,0x2931,0x3131,0x3151,0x3151,0x3151,0x3151,0x3151,0x3171,0x3151,0x3171,0x3171,0x3171,0x3171,0x3972,0x3151,0x3972,0x3972,0x3972,0x3972,0x3972,0x3992,0x4192,0x4193,0x4193,0x4192,0x4192,0x4193,0x49B3,0x49B3,0x4993,0x51B3,0x49B3,0x49B3,0x51B3,0x51B3,0x5192,0x51B2,0x51B2,0x5192,0x5192,0x5192,0x5192,0x59B2,0x59D2,0x59D2,0x59D2,0x51B2,0x51B2,0x51B2,0x49D2,0x41D2,0x4A53,0x6397,0x84FB,0x959E,0x8DDE,0x8DDE,0x8DFE,0x961E,0x9DFD,0xA5FD,0x9D9B,0x8497,0x7476,0x7D39,0x85FB,0x75FB,0x661B,0x5EBD,0x571E,0x471E,0x373E,0x2F5E,0x279F,0x1F9F,0x179F,0x179F,0x17BF,0x0FBF,0x0FBF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x079E,0x079E,0x075E,0x071D,0x06FD,0x06DD,0x06BC,0x069C,0x06BD,0x06BD,0x069D,0x069D,0x069D,0x067D,0x065D,0x065C,0x065D,0x065D,0x063D,0x063D,0x063D,0x061D,0x061D,0x061D,0x061D,0x05FD,0x05FD,0x05DD,0x05DD,0x05DE,0x05BE,0x05BE,0x05BE,0x05BE,0x05BE,0x059E,0x059E,0x059E,0x057E,0x057E,0x055E,0x055E,0x055E,0x055E,0x053E,0x053E,0x053E,0x053F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x051F,0x053F,0x051F,0x051F,0x051F,0x053F,0x053F,0x053F,0x051F,0x051F,0x051F,0x04FF,0x04FF,0x051F,0x04FF,0x04BF,0x049F,0x049F,0x047F,0x043F,0x03FF,0x03BF,0x039F,0x037F,0x0B5F,0x0B1F,0x029E,0x027E,0x023E,0x01FD,0x01DE,0x01BD,0x099D,0x119D,0x199C,0x219C,0x31BC,0x397A,0x2075,0x38D6,0x7ADD,0x8B5D,0x72FA,0x6319,0x63FA,0x545A,0x55BE,0x467F,0x36FF,0x1EBE,0x0EFE,0x06DE,0x06FE,0x0EFF,0x171F,0x273F,0x371F,0x4EDF,0x667E,0x7DFD,0x6BF6,0x8335,0x9AB4,0xBAD5,0xC294,0xCA74,0xD254,0xD234,0xD234,0xD254,0xD254,0xD254,0xCA55,0xCA96,0xC2D7,0xB2D7,0x6911,0x5951,0x5152,0x4972,0x4972,0x4152,0x4152,0x3972,0x3972,0x3972,0x3951,0x3971,0x3971,0x3171,0x3151,0x3151,0x3150,0x3150,0x3150,0x2930,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2130,0x2130,0x2131,0x1931,0x1132,0x1154,0x1175,0x11B8,0x11F9,0x01D9,0x09FA,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09F9,0x09F9,0x11F9,0x19B7,0x1155,0x1113,0x1112,0x1911,0x18F1,0x18F0,0x2111,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2111,0x2111,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x20F0,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x1930,0x1930,0x1930,0x1911,0x1911,0x1932,0x1112,0x1113,0x1134,0x1196,0x11D8,0x09B8,0x09D9,0x09DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01F9,0x01F9,0x0A19,0x11F8,0x11B6,0x1195,0x1132,0x1111,0x1931,0x2131,0x2131,0x2130,0x2150,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x290F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x290F,0x290F,0x212F,0x210F,0x210F,0x210F, + 0x1196,0x19B6,0x19D6,0x2217,0x2237,0x2217,0x21F7,0x2217,0x2217,0x2A17,0x2A38,0x2A17,0x2A38,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x29F7,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A37,0x2A17,0x2A17,0x2216,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x29F7,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A37,0x2A17,0x2A37,0x2A17,0x2A37,0x2A37,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A16,0x2A16,0x29F6,0x21F6,0x2A16,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x2217,0x21F7,0x21D6,0x1995,0x1133,0x1933,0x1932,0x2132,0x2131,0x2111,0x2131,0x2131,0x2110,0x2130,0x2930,0x2930,0x2930,0x2110,0x2130,0x2130,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x212F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x2930,0x2910,0x2910,0x2930,0x290F,0x2910,0x2910,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2910,0x2910,0x290F,0x210F,0x2910,0x210F,0x2930,0x2110,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2910,0x210F,0x2910,0x210F,0x2930,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x292F,0x290F,0x292F,0x212F,0x212F,0x2930,0x2110,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x2930,0x2930,0x2930,0x2130,0x2130,0x212F,0x2930,0x2930,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x210F,0x2930,0x2910,0x2910,0x290F,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2930,0x290F,0x290F,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2930,0x210F,0x290F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x290F,0x210F,0x292F,0x290F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2930,0x212F,0x210F,0x2110,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x292F,0x212F,0x2930,0x2930,0x210F,0x212F,0x290F,0x290F,0x290F,0x2930,0x212F,0x292F,0x212F,0x2130,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x292F,0x212F,0x2930,0x2930,0x2930,0x2950,0x2930,0x2910,0x2930,0x2930,0x2910,0x2110,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x2930,0x2950,0x2951,0x2951,0x2951,0x2930,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3171,0x3171,0x3171,0x3971,0x3971,0x3971,0x3972,0x3972,0x3972,0x3972,0x4172,0x4193,0x4192,0x4193,0x4193,0x4193,0x4192,0x49B3,0x4993,0x49B3,0x49B3,0x49B3,0x51B3,0x51B3,0x49B2,0x51B2,0x51B2,0x51B2,0x5192,0x5191,0x5191,0x5171,0x59B1,0x5991,0x59B1,0x5190,0x5170,0x4970,0x59D1,0x6253,0x7B37,0x943A,0x9CDC,0x9D3D,0x957D,0x95BD,0x8DBD,0x85DD,0x8E1D,0x963E,0x961D,0x8DDC,0x7D19,0x6C97,0x6CB7,0x7DBA,0x7E3C,0x663B,0x5E7C,0x56DE,0x471E,0x373E,0x2F5E,0x277F,0x1F9F,0x17BF,0x0F9F,0x0F9F,0x0FBF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x077E,0x073D,0x071D,0x06FC,0x06DC,0x06BC,0x06BC,0x06BC,0x069C,0x06BD,0x069C,0x069D,0x067C,0x067C,0x067C,0x065C,0x063C,0x063C,0x063C,0x063C,0x063D,0x061D,0x061D,0x061D,0x05FD,0x05FD,0x05FD,0x05DD,0x05DD,0x05BD,0x05BD,0x05BD,0x05BE,0x05BE,0x059E,0x059E,0x057E,0x057E,0x057E,0x055E,0x055E,0x053E,0x053E,0x053E,0x053E,0x051E,0x051F,0x051F,0x051F,0x04FF,0x04FF,0x04FE,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x051F,0x051F,0x051F,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04DF,0x04DF,0x04DF,0x04FF,0x049F,0x049F,0x049F,0x047F,0x043F,0x041F,0x03DF,0x039F,0x035F,0x035F,0x031F,0x02DF,0x029F,0x025E,0x021E,0x021F,0x01DE,0x019E,0x09BE,0x097C,0x095B,0x197C,0x299C,0x39DC,0x3139,0x28B6,0x6A9C,0x837D,0x6AF9,0x6359,0x643B,0x4CDB,0x567F,0x3EDF,0x26DE,0x16DE,0x0EFE,0x06FE,0x0F1F,0x173F,0x173F,0x273F,0x3F3F,0x4EFF,0x6EBF,0x7DDD,0x6BB6,0x7AD4,0xA2F5,0xBAB5,0xC274,0xCA54,0xD254,0xD234,0xD254,0xD234,0xD234,0xD255,0xCA55,0xC276,0xC2D7,0xAAB7,0x60D0,0x5952,0x5152,0x4972,0x4972,0x4152,0x4192,0x4172,0x3972,0x3971,0x3972,0x3971,0x3151,0x3151,0x3151,0x3150,0x3151,0x3150,0x3130,0x3150,0x2930,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2131,0x2131,0x1931,0x1132,0x1154,0x1175,0x11D8,0x09D9,0x09FA,0x01D9,0x01D9,0x01D9,0x01DA,0x01FA,0x01D9,0x01FA,0x01D9,0x01D9,0x09F9,0x121A,0x11F8,0x19F8,0x1155,0x1113,0x1912,0x1911,0x18F1,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2130,0x2130,0x210F,0x2110,0x2130,0x2110,0x2110,0x2130,0x210F,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x20EF,0x2110,0x2110,0x2110,0x2110,0x2110,0x20EF,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2131,0x1911,0x1912,0x1133,0x1134,0x1176,0x11B8,0x11D9,0x09D9,0x09FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01D9,0x01F9,0x01F9,0x09F8,0x11F8,0x11D7,0x19B5,0x1133,0x1111,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x290F,0x292F, + 0x0935,0x1175,0x1996,0x2217,0x2A37,0x2217,0x2217,0x2217,0x2217,0x2217,0x2A17,0x2A37,0x2A37,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A37,0x2A17,0x2A17,0x2A38,0x2A38,0x2A37,0x2A37,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2217,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2217,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A18,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A18,0x2A17,0x2A18,0x2A18,0x2A17,0x2A17,0x2A17,0x2A18,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A17,0x2A37,0x2A37,0x2A37,0x2A17,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A17,0x2A17,0x2A37,0x2A17,0x2A37,0x2A37,0x2A37,0x2A37,0x2A38,0x2A37,0x2A37,0x2217,0x2A37,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A37,0x2A16,0x2A17,0x2A37,0x2A37,0x2A37,0x2A17,0x2A17,0x2A37,0x2A37,0x2A37,0x2217,0x19B6,0x19B5,0x21B5,0x1954,0x1953,0x1933,0x2132,0x2131,0x2111,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x210F,0x212F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x210F,0x2910,0x2910,0x210F,0x2910,0x2110,0x2910,0x2910,0x2930,0x290F,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2110,0x210F,0x2910,0x210F,0x290F,0x2930,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x290F,0x210F,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x212F,0x290F,0x290F,0x212F,0x2930,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2930,0x292F,0x292F,0x292F,0x290F,0x210F,0x210F,0x290F,0x2930,0x2110,0x2930,0x2910,0x2930,0x210F,0x210F,0x2910,0x2910,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2930,0x2910,0x2910,0x2930,0x2910,0x290F,0x2910,0x2930,0x2930,0x212F,0x210F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x290F,0x2930,0x210F,0x212F,0x210F,0x2930,0x2130,0x210F,0x212F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x210F,0x210F,0x2930,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x212F,0x212F,0x292F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x2930,0x3150,0x3151,0x3151,0x2951,0x3151,0x3151,0x3151,0x2950,0x3171,0x3171,0x3151,0x3171,0x3171,0x3171,0x3171,0x3171,0x3971,0x3971,0x3971,0x3972,0x3972,0x3972,0x3972,0x4192,0x4172,0x4172,0x4193,0x4193,0x4192,0x4993,0x49B3,0x49B3,0x49B3,0x49B3,0x4992,0x4992,0x4992,0x51B2,0x51B2,0x51B2,0x51B2,0x5192,0x5991,0x5991,0x5970,0x5970,0x5990,0x69D1,0x7252,0x8B35,0x9BD8,0xB4DC,0xBD1D,0xC59F,0xB51D,0xA51C,0x8CBA,0x7C79,0x8D5B,0x95FD,0x963E,0x963E,0x965D,0x85DC,0x7559,0x64B7,0x4C35,0x6518,0x7E1C,0x661B,0x5E7C,0x5EFE,0x4F1E,0x3F1E,0x2F5E,0x277F,0x1F9F,0x179F,0x0F9F,0x0F9F,0x0F9F,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x079F,0x07BF,0x07BF,0x07BF,0x079E,0x075D,0x073D,0x071D,0x06DC,0x06BC,0x06BC,0x06BC,0x06BC,0x06BC,0x069C,0x069C,0x069C,0x069C,0x067C,0x065C,0x065C,0x065C,0x065C,0x063C,0x063C,0x063C,0x061C,0x063C,0x061C,0x05FC,0x05FD,0x05FD,0x05DD,0x05DD,0x05BD,0x05BD,0x05BD,0x05BD,0x059D,0x059D,0x059E,0x059E,0x057E,0x055E,0x055E,0x055E,0x053E,0x053E,0x053E,0x053E,0x051E,0x051F,0x051F,0x04FE,0x04FF,0x04FF,0x04FE,0x04FF,0x04DE,0x04DE,0x04DF,0x04DE,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04FF,0x04BF,0x049F,0x047F,0x047F,0x045F,0x043F,0x041F,0x03DF,0x03BF,0x037F,0x035F,0x02FF,0x02DF,0x029F,0x029F,0x025F,0x021F,0x01FF,0x01DE,0x019E,0x019D,0x099D,0x097C,0x115B,0x197B,0x31BC,0x317A,0x28D6,0x6ABC,0x7B7C,0x6319,0x63DA,0x5C9B,0x55BD,0x4E9F,0x3F1F,0x26FE,0x173F,0x0F1E,0x0F1E,0x0F1E,0x175F,0x173F,0x273F,0x371F,0x571F,0x6EBF,0x7D9C,0x6B75,0x7A52,0xAAB4,0xC2B5,0xCA74,0xCA33,0xD234,0xCA13,0xD214,0xD234,0xD235,0xCA34,0xCA55,0xC276,0xC2F8,0xA256,0x60F0,0x5951,0x5172,0x4952,0x4172,0x4151,0x3951,0x3971,0x3972,0x3972,0x3972,0x3151,0x3151,0x3151,0x3951,0x3130,0x3150,0x3150,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2131,0x2131,0x1931,0x1132,0x1154,0x0975,0x11D8,0x121A,0x09D9,0x01B9,0x01DA,0x01B9,0x01DA,0x01DA,0x01D9,0x01FA,0x01FA,0x01D9,0x01D9,0x09D8,0x11F8,0x19D7,0x1155,0x1113,0x1112,0x18F1,0x2111,0x2111,0x2131,0x2931,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x210F,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2930,0x2130,0x210F,0x2110,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x210F,0x210F,0x2910,0x2110,0x2130,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x2930,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2930,0x2130,0x210F,0x2110,0x2130,0x2130,0x210F,0x2110,0x2930,0x210F,0x210F,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2930,0x2930,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x210F,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2910,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2131,0x1952,0x1932,0x1132,0x1133,0x1176,0x11B7,0x11D9,0x09F9,0x01DA,0x01DA,0x01D9,0x01D9,0x01DA,0x01FA,0x01FA,0x01D9,0x01D9,0x01F9,0x09F9,0x11F8,0x11D7,0x19B5,0x1132,0x1111,0x1911,0x1911,0x1910,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F, + 0x1114,0x1113,0x1134,0x1154,0x1174,0x1994,0x1994,0x1974,0x1974,0x1995,0x1995,0x1974,0x1994,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x19B5,0x1995,0x1995,0x1995,0x19B5,0x1995,0x1995,0x1995,0x1995,0x2195,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1994,0x19B5,0x1995,0x1994,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x19B5,0x19B5,0x1994,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1975,0x1995,0x1995,0x1975,0x1975,0x2195,0x2195,0x1975,0x1995,0x1995,0x1975,0x1975,0x1975,0x1975,0x1995,0x1975,0x1975,0x1995,0x1995,0x1975,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x19B5,0x1995,0x19B5,0x1995,0x1995,0x1995,0x19B5,0x1995,0x1995,0x21B5,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x19B5,0x1995,0x1995,0x1995,0x19B5,0x19B5,0x19B5,0x19B5,0x1995,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1994,0x1994,0x1994,0x1995,0x1995,0x1994,0x19B5,0x19B5,0x19B5,0x21D5,0x21D6,0x21F6,0x21F6,0x21F6,0x2217,0x21D6,0x21B5,0x1154,0x1933,0x1932,0x2132,0x2111,0x2111,0x2131,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x292F,0x290F,0x290F,0x290F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x210F,0x2930,0x290F,0x290F,0x2910,0x2910,0x2110,0x2110,0x2910,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x2930,0x290F,0x2910,0x2910,0x2110,0x210F,0x2930,0x2930,0x210F,0x210F,0x290F,0x2910,0x2930,0x2930,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x290F,0x292F,0x290F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x2130,0x2130,0x2130,0x2930,0x2110,0x2130,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2930,0x2110,0x210F,0x2910,0x2930,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x290F,0x2930,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x2910,0x210F,0x2930,0x2910,0x2910,0x2910,0x2930,0x210F,0x2910,0x2110,0x2130,0x212F,0x210F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x292F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x2110,0x2930,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x2910,0x2110,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x292F,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3150,0x3151,0x2951,0x2951,0x2951,0x3151,0x3171,0x3171,0x3151,0x3171,0x3171,0x3151,0x3171,0x3171,0x3971,0x3991,0x3971,0x3971,0x3992,0x3971,0x3972,0x4192,0x4192,0x4192,0x4192,0x4193,0x4193,0x4192,0x4172,0x4992,0x49B3,0x49B2,0x49B2,0x49B2,0x4992,0x51B2,0x5192,0x51B2,0x51B2,0x5191,0x5991,0x5991,0x5150,0x5970,0x61D1,0x8B16,0xB45A,0xC4FC,0xD59E,0xD59E,0xC57D,0xBD5D,0xAD1B,0x9CBA,0x8458,0x84B9,0x8D5B,0x9DFE,0x963E,0x965E,0x861C,0x861C,0x75BA,0x6517,0x5CD7,0x6538,0x761B,0x6E3B,0x667C,0x5EBD,0x4EFE,0x3F3E,0x375F,0x275E,0x1F5E,0x177E,0x179F,0x0F7E,0x0FBF,0x07BF,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BE,0x079E,0x077E,0x075D,0x071C,0x06FC,0x06DC,0x06BC,0x06BC,0x06BC,0x06BC,0x069B,0x069B,0x069B,0x069B,0x067B,0x067B,0x067B,0x065B,0x067B,0x065B,0x063B,0x063C,0x063C,0x063C,0x061C,0x061C,0x05FC,0x05FC,0x05FC,0x05DC,0x05BC,0x05DD,0x05BD,0x05BD,0x05BD,0x059D,0x059D,0x059D,0x057D,0x057E,0x055E,0x055E,0x055E,0x053E,0x053E,0x051E,0x051E,0x051E,0x04FE,0x04FE,0x04FE,0x04FF,0x04DE,0x04DE,0x04DE,0x04FF,0x04DF,0x04DE,0x04BE,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x049F,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x049F,0x049F,0x047F,0x045F,0x045F,0x043F,0x043F,0x03FF,0x03BF,0x037F,0x035F,0x031F,0x02DF,0x02BF,0x02BF,0x027F,0x023F,0x021F,0x01FF,0x01DE,0x01BE,0x019D,0x019D,0x099C,0x095B,0x113A,0x29BC,0x319A,0x3137,0x733D,0x737C,0x6359,0x641A,0x54FB,0x5E5F,0x46DF,0x2F1F,0x1F3F,0x0F1E,0x0F3F,0x0F3F,0x0F3F,0x173F,0x1F5F,0x2F5F,0x371F,0x56FF,0x767F,0x74DA,0x7314,0x8A73,0xB2B4,0xC2B4,0xCA74,0xCA34,0xD234,0xD214,0xDA35,0xD235,0xD235,0xCA35,0xCA55,0xC276,0xBAB7,0x91F4,0x58D0,0x5952,0x4951,0x4972,0x4151,0x3951,0x3972,0x3972,0x3971,0x3971,0x3971,0x3971,0x3951,0x3951,0x3151,0x3130,0x3150,0x3130,0x3130,0x3150,0x2930,0x2950,0x2930,0x2930,0x2950,0x2930,0x2131,0x2131,0x1931,0x1932,0x1153,0x1195,0x11D7,0x11F9,0x09D9,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01D9,0x01D9,0x09F9,0x11F8,0x11B7,0x1154,0x1133,0x1112,0x1911,0x1911,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x212F,0x210F,0x2930,0x2110,0x210F,0x210F,0x2110,0x2110,0x2130,0x210F,0x2110,0x2110,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2930,0x2930,0x2130,0x2930,0x2110,0x2930,0x2930,0x210F,0x2930,0x212F,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2110,0x210F,0x2930,0x2930,0x2910,0x210F,0x2930,0x2910,0x2930,0x2930,0x290F,0x2930,0x2930,0x212F,0x2930,0x2930,0x210F,0x290F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x2130,0x212F,0x2930,0x2930,0x2930,0x212F,0x2930,0x2130,0x2130,0x212F,0x2110,0x2110,0x2130,0x2130,0x2930,0x210F,0x2130,0x210F,0x2910,0x2910,0x210F,0x210F,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x2930,0x210F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2930,0x2930,0x2110,0x210F,0x2130,0x2130,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x2930,0x2910,0x210F,0x210F,0x2110,0x2110,0x2930,0x210F,0x290F,0x210F,0x290F,0x2930,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x212F,0x292F,0x290F,0x210F,0x290F,0x210F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1132,0x1134,0x1196,0x11B7,0x11D9,0x09D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01FA,0x01FA,0x01D9,0x01FA,0x01D9,0x01D9,0x0A19,0x11F8,0x11D7,0x19B5,0x1132,0x1132,0x1931,0x2131,0x2110,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F, + 0x1133,0x1112,0x1112,0x1132,0x1132,0x1132,0x1112,0x1112,0x1132,0x1132,0x1133,0x1132,0x1132,0x1133,0x1112,0x1113,0x1133,0x1132,0x1112,0x1133,0x1133,0x1132,0x1113,0x1933,0x1133,0x1133,0x1933,0x1113,0x1113,0x1933,0x1113,0x1113,0x1933,0x1133,0x1133,0x1133,0x1132,0x1132,0x1133,0x1933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x1133,0x1133,0x1132,0x1153,0x1133,0x1132,0x1132,0x1133,0x1133,0x1133,0x1953,0x1133,0x1133,0x1953,0x1133,0x1133,0x1133,0x1133,0x1133,0x1933,0x1933,0x1933,0x1113,0x1113,0x1933,0x1933,0x1933,0x1133,0x1113,0x1933,0x1133,0x1933,0x1933,0x1933,0x1933,0x1933,0x1933,0x1933,0x1113,0x1933,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1112,0x1132,0x1133,0x1133,0x1133,0x1933,0x1133,0x1133,0x1133,0x1132,0x1133,0x1133,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1133,0x1133,0x1133,0x1933,0x1133,0x1132,0x1133,0x1112,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1933,0x1113,0x1112,0x1112,0x1112,0x1132,0x1132,0x1133,0x1133,0x1132,0x1132,0x1132,0x1132,0x08F2,0x0912,0x0912,0x1133,0x1995,0x2217,0x2A37,0x21F6,0x1995,0x1954,0x1953,0x1932,0x2132,0x2111,0x2111,0x2110,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2130,0x2930,0x2930,0x2930,0x2130,0x212F,0x2130,0x2130,0x210F,0x2110,0x2910,0x2910,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x2930,0x2110,0x2130,0x2130,0x2131,0x2131,0x2110,0x2131,0x2131,0x2131,0x2131,0x1931,0x1951,0x1931,0x1952,0x1951,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2930,0x292F,0x292F,0x292F,0x290F,0x2930,0x2910,0x2910,0x2110,0x2930,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2910,0x2930,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x290F,0x210F,0x2130,0x212F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x2110,0x2110,0x2930,0x290F,0x2930,0x2930,0x2930,0x292F,0x210F,0x210F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x3151,0x3151,0x3151,0x2951,0x3171,0x2951,0x3171,0x3151,0x3171,0x3171,0x3171,0x3151,0x3971,0x3171,0x3971,0x3971,0x3971,0x3971,0x3971,0x4172,0x4192,0x4172,0x4192,0x4192,0x4192,0x4172,0x4993,0x4993,0x49B3,0x4992,0x4992,0x4992,0x4992,0x5192,0x5192,0x5191,0x51B2,0x5191,0x5991,0x5990,0x5990,0x69F2,0x8AF5,0xB43A,0xCD1D,0xD57E,0xCD5D,0xC57D,0xACFB,0x9CB9,0x8C78,0x8437,0x951A,0x9D9C,0x95DC,0x961D,0x8E3D,0x8E5E,0x7E1C,0x6DDB,0x7E5C,0x7E5C,0x6578,0x5D99,0x765C,0x6E9C,0x667C,0x569D,0x56FE,0x473E,0x373E,0x275E,0x1F7E,0x177E,0x0F7E,0x0F9E,0x0FBF,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x075D,0x073D,0x071C,0x06FC,0x06DC,0x06BB,0x06BC,0x06BC,0x06BB,0x06BB,0x069B,0x069B,0x069B,0x069B,0x067B,0x067B,0x065B,0x065B,0x065B,0x065B,0x065B,0x063B,0x063B,0x061B,0x063C,0x061C,0x05FC,0x05FC,0x05DC,0x05DC,0x05DD,0x05BC,0x059C,0x059D,0x059D,0x059D,0x059D,0x057D,0x055D,0x055D,0x055E,0x053E,0x053E,0x053E,0x053E,0x053E,0x04FE,0x04FE,0x04FE,0x04DE,0x04DE,0x04DE,0x04DE,0x04DE,0x04DE,0x04BE,0x04BF,0x04BF,0x04BF,0x04BF,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x04BF,0x049F,0x049F,0x049F,0x047F,0x047F,0x049F,0x047F,0x049F,0x049F,0x049F,0x047F,0x047F,0x047F,0x047F,0x047F,0x045F,0x043F,0x043F,0x041F,0x03FF,0x03DF,0x039F,0x035F,0x033F,0x031F,0x02DF,0x02BF,0x029F,0x025F,0x021F,0x01FF,0x01FF,0x01DE,0x01BE,0x01BE,0x09BD,0x099D,0x117C,0x113B,0x29BC,0x319A,0x4A19,0x7B7D,0x6319,0x5B99,0x4C19,0x557D,0x567F,0x3EDF,0x271F,0x173E,0x177F,0x0F3E,0x0F5F,0x0F5F,0x175F,0x1F3F,0x2F3F,0x3EFE,0x5EFF,0x7E5E,0x7C99,0x6A92,0x9293,0xB294,0xC274,0xCA54,0xD254,0xD234,0xD214,0xD214,0xD1F4,0xD235,0xCA34,0xCA55,0xC276,0xC2F8,0x8192,0x58F0,0x5952,0x4972,0x4972,0x4172,0x3972,0x3972,0x3972,0x3972,0x3972,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x3130,0x3130,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2951,0x2152,0x1932,0x1153,0x1175,0x19F8,0x11F8,0x09D9,0x09D9,0x01BA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01D9,0x01D9,0x01D9,0x09F9,0x11F9,0x1196,0x1134,0x1112,0x1112,0x1932,0x1931,0x2131,0x2130,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x210F,0x2110,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x212F,0x2930,0x210F,0x212F,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x212F,0x210F,0x2130,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2110,0x2110,0x2930,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2110,0x2110,0x2110,0x2910,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x2130,0x212F,0x2130,0x2150,0x1930,0x1951,0x1952,0x1953,0x1134,0x1155,0x11B7,0x11F9,0x09D9,0x09FA,0x01D9,0x01B9,0x01D9,0x01DA,0x01FA,0x01FA,0x01D9,0x01F9,0x01D8,0x09D8,0x11F8,0x11D6,0x1195,0x1133,0x1112,0x1931,0x1931,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F, + 0x1912,0x1912,0x1912,0x1912,0x1911,0x1911,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1932,0x1932,0x1912,0x1112,0x1912,0x1932,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1932,0x1932,0x1932,0x1912,0x1912,0x1932,0x1932,0x1932,0x1932,0x1112,0x1112,0x1932,0x1912,0x1932,0x1132,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1132,0x1932,0x1932,0x1932,0x1132,0x1932,0x1912,0x1912,0x1932,0x1932,0x1912,0x1932,0x1912,0x1912,0x1912,0x1912,0x1912,0x1932,0x1912,0x1912,0x1912,0x1932,0x1912,0x1932,0x1912,0x1912,0x1932,0x1912,0x1932,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1932,0x1912,0x1932,0x1112,0x1912,0x1932,0x1932,0x1932,0x1912,0x1932,0x1912,0x1912,0x1912,0x1912,0x1932,0x1932,0x1112,0x1932,0x1132,0x1932,0x1932,0x1112,0x1132,0x1932,0x1932,0x1132,0x1132,0x1912,0x1912,0x1932,0x1932,0x1912,0x1912,0x1932,0x1112,0x1112,0x1912,0x1112,0x1112,0x1112,0x1112,0x1932,0x1112,0x1912,0x1112,0x1912,0x1932,0x1112,0x1112,0x1932,0x1912,0x1912,0x1912,0x1112,0x1111,0x1912,0x1912,0x1111,0x1111,0x1932,0x1112,0x1112,0x1112,0x1112,0x1112,0x1133,0x1995,0x21F6,0x2217,0x21D6,0x1995,0x1154,0x1953,0x1932,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x2930,0x2910,0x210F,0x2930,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2910,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2130,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x210F,0x2110,0x210F,0x2910,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1952,0x1952,0x1952,0x1952,0x1931,0x2131,0x2131,0x2130,0x2110,0x210F,0x292F,0x292F,0x212F,0x292F,0x2930,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x2910,0x2910,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2110,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x210F,0x2130,0x2110,0x210F,0x2910,0x210F,0x212F,0x290F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x292F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x2110,0x2110,0x2930,0x2930,0x292F,0x212F,0x212F,0x210F,0x210F,0x292F,0x2930,0x292F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3151,0x3151,0x2930,0x3151,0x3151,0x3151,0x2951,0x2951,0x3171,0x3171,0x3151,0x3151,0x3171,0x3171,0x3971,0x3171,0x3971,0x3971,0x3971,0x3971,0x3971,0x4171,0x4192,0x4192,0x4172,0x4172,0x4192,0x4992,0x4992,0x4993,0x4993,0x4992,0x51B2,0x4992,0x5192,0x5192,0x5192,0x59B2,0x5991,0x5970,0x5150,0x5970,0x7A53,0xABD9,0xCCDC,0xD55D,0xD55D,0xCD7D,0xB4FA,0x9C98,0x8416,0x7416,0x84D8,0x8D7B,0x8DDC,0x8E1D,0x861C,0x7E3C,0x763C,0x765D,0x661C,0x661B,0x665C,0x665B,0x5E1A,0x5E1A,0x667B,0x5E9C,0x56DD,0x4EDD,0x471E,0x371E,0x2F3E,0x277E,0x1F9F,0x179F,0x0F9F,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x0FBF,0x075D,0x073C,0x06FC,0x06DC,0x06DB,0x06BB,0x06DC,0x06BB,0x069B,0x06BB,0x069B,0x069B,0x069A,0x069A,0x067A,0x067A,0x067A,0x067A,0x065B,0x065B,0x065B,0x063B,0x061B,0x061B,0x061B,0x061B,0x05FB,0x05FB,0x05DC,0x05DC,0x05DC,0x05BC,0x05BC,0x05BC,0x059C,0x059D,0x059D,0x057D,0x057D,0x055D,0x055D,0x055D,0x053E,0x051D,0x051D,0x051E,0x04FE,0x04FE,0x04FE,0x04DE,0x04DE,0x04DE,0x04DE,0x04DE,0x04BE,0x04BE,0x04BF,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x047F,0x047F,0x049F,0x047F,0x047F,0x047F,0x047F,0x047F,0x047F,0x045F,0x045F,0x047F,0x047F,0x047F,0x047F,0x045F,0x045F,0x045F,0x047F,0x045F,0x045F,0x043F,0x043F,0x041F,0x03FF,0x03FF,0x03DF,0x03BF,0x037F,0x035F,0x031F,0x02FF,0x02BF,0x02BF,0x025F,0x023F,0x021F,0x01FF,0x01DF,0x01DE,0x01BE,0x01BE,0x09BE,0x099D,0x117C,0x113A,0x29BB,0x3178,0x5A9B,0x83FE,0x5319,0x5C1B,0x4C9B,0x5E1F,0x4EDF,0x371F,0x1F3F,0x173E,0x0F5F,0x0F5F,0x0F7F,0x0F7F,0x175F,0x1F5F,0x2F1F,0x46FF,0x66DF,0x861E,0x73F6,0x7293,0x9A94,0xBA94,0xCA74,0xCA54,0xD234,0xD214,0xD1F4,0xD214,0xD214,0xD214,0xCA35,0xCA35,0xC256,0xC2F8,0x7131,0x6111,0x5152,0x4972,0x4172,0x4172,0x3972,0x3972,0x3972,0x3972,0x3971,0x3972,0x3151,0x3151,0x3151,0x3130,0x3130,0x3151,0x3130,0x3130,0x2930,0x2950,0x2950,0x2950,0x2931,0x2151,0x2152,0x1953,0x1154,0x11B6,0x1219,0x11F9,0x01B9,0x01B9,0x01BA,0x01DA,0x01DA,0x01FA,0x01FA,0x01D9,0x01D9,0x01D9,0x09F9,0x11F9,0x11B7,0x1134,0x1113,0x1932,0x1911,0x1911,0x2130,0x2130,0x2130,0x2130,0x2910,0x290F,0x2910,0x2910,0x2910,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x2110,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2930,0x2130,0x212F,0x2130,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x210F,0x2130,0x2110,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2110,0x2930,0x2130,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x2130,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x210F,0x292F,0x2930,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2151,0x2151,0x1932,0x1933,0x1154,0x1175,0x11B7,0x11F9,0x09F9,0x09D9,0x01B9,0x01B9,0x01DA,0x01FA,0x01DA,0x01FA,0x01D9,0x01D9,0x01F9,0x09D8,0x09D8,0x19F7,0x1195,0x1132,0x1112,0x1931,0x1910,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x210F,0x2930,0x212F,0x212F,0x210F,0x210F,0x2110,0x210F,0x2110,0x290F,0x210F,0x292F,0x290F,0x290F, + 0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1911,0x1931,0x1911,0x1911,0x18F1,0x1911,0x1911,0x18F1,0x18F1,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1932,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1932,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1931,0x1932,0x1932,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1911,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1931,0x1931,0x1911,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1931,0x1932,0x1932,0x1911,0x1911,0x1911,0x1932,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1932,0x1931,0x1932,0x1112,0x1952,0x1953,0x1994,0x21D6,0x2217,0x21F6,0x19B5,0x1154,0x1133,0x1912,0x1911,0x1931,0x1910,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x2910,0x2910,0x210F,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x290F,0x2910,0x210F,0x2110,0x210F,0x212F,0x212F,0x2910,0x2910,0x210F,0x2110,0x2910,0x2930,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x210F,0x2910,0x210F,0x210F,0x290F,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1132,0x1153,0x1153,0x1153,0x1133,0x1133,0x1132,0x1132,0x1132,0x1932,0x1911,0x1910,0x2130,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2910,0x2930,0x2910,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x2110,0x2930,0x2910,0x290F,0x290F,0x2930,0x2910,0x210F,0x290F,0x2930,0x2910,0x210F,0x2910,0x2910,0x2910,0x2930,0x2110,0x2910,0x2110,0x2110,0x2930,0x2930,0x2110,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x210F,0x2110,0x2110,0x2910,0x210F,0x2110,0x2110,0x210F,0x2910,0x2930,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x210F,0x2110,0x2110,0x2110,0x2930,0x290F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2110,0x210F,0x210F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x2930,0x2930,0x3150,0x2930,0x2930,0x2950,0x3151,0x3151,0x2930,0x3151,0x3151,0x2951,0x2951,0x3171,0x3151,0x3171,0x3172,0x3172,0x3151,0x3171,0x3971,0x3971,0x3971,0x3991,0x4192,0x4192,0x4171,0x4192,0x4192,0x4192,0x4192,0x49B2,0x49B2,0x49B3,0x4993,0x4993,0x4992,0x4972,0x4971,0x5192,0x5191,0x59B2,0x5991,0x5970,0x5970,0x69B1,0x8AB4,0xB3F9,0xCCDC,0xD4FD,0xCCFC,0xCD1C,0xB4DA,0xA498,0x9498,0x8CD8,0x8D7A,0x8E1C,0x865D,0x765C,0x665C,0x5E5C,0x5E7C,0x5EBD,0x56DD,0x56BD,0x569D,0x4E7C,0x463B,0x461A,0x465B,0x4E7B,0x46BC,0x46FD,0x473E,0x3F3E,0x2F3E,0x275E,0x1F9F,0x179E,0x0F9E,0x0F9F,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07BF,0x079E,0x075D,0x071C,0x06FC,0x06DB,0x06DB,0x06DB,0x06DC,0x06BB,0x06BB,0x06BA,0x069A,0x069A,0x069A,0x069A,0x069A,0x067A,0x065A,0x065A,0x065A,0x065A,0x063A,0x063B,0x063B,0x063B,0x061B,0x061B,0x05FB,0x05FB,0x05DB,0x05DB,0x05DC,0x05DC,0x05BC,0x05BC,0x05BC,0x059C,0x059D,0x059D,0x057D,0x055D,0x055D,0x055D,0x053D,0x053D,0x051D,0x051E,0x051E,0x04FE,0x04FE,0x04FE,0x04DE,0x04DE,0x04DE,0x04DE,0x049E,0x049E,0x049F,0x047E,0x047E,0x047E,0x047E,0x047F,0x049F,0x047F,0x047F,0x047F,0x045F,0x045F,0x045F,0x045F,0x045F,0x045F,0x045F,0x045F,0x045F,0x045F,0x045F,0x045F,0x045F,0x043F,0x045F,0x045F,0x045F,0x045F,0x045F,0x043F,0x043F,0x041F,0x041F,0x03FF,0x03FF,0x03BF,0x039F,0x037F,0x035F,0x031F,0x02FF,0x02DF,0x02BF,0x027F,0x025F,0x021F,0x01FF,0x01FF,0x01BE,0x01BE,0x01BE,0x01BE,0x09BE,0x099D,0x119C,0x197A,0x299A,0x2998,0x739E,0x6B9C,0x537A,0x5C5B,0x4CDB,0x5E7F,0x3EDF,0x271F,0x173F,0x0F5F,0x0F5F,0x077F,0x0F9F,0x177F,0x1F7F,0x273F,0x371F,0x4EDE,0x76BF,0x7D9C,0x7395,0x7A72,0xA294,0xBA94,0xCA54,0xCA34,0xD234,0xD214,0xD214,0xD1F4,0xD214,0xD214,0xCA14,0xC235,0xC296,0xBAD7,0x68F0,0x5931,0x5151,0x4972,0x4151,0x4172,0x3972,0x3972,0x3972,0x3972,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3130,0x3150,0x2950,0x2950,0x2930,0x2950,0x2951,0x2131,0x2152,0x1953,0x1195,0x11D7,0x11F8,0x0198,0x09B9,0x01B9,0x09FA,0x01DA,0x01DA,0x01BA,0x01B9,0x01D9,0x09F9,0x09F9,0x1219,0x11B7,0x1155,0x1954,0x1932,0x1931,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x2910,0x210F,0x2110,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2930,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x2930,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x2910,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2930,0x210F,0x2130,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x210F,0x2110,0x210F,0x210F,0x212F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2930,0x210F,0x2110,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x290F,0x210F,0x212F,0x2930,0x212F,0x2930,0x210F,0x290F,0x2930,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x2930,0x2930,0x2110,0x2930,0x2110,0x2930,0x210F,0x2110,0x2930,0x2110,0x2930,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2930,0x2130,0x2130,0x210F,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x2930,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2150,0x2151,0x1931,0x1931,0x1112,0x1134,0x1155,0x1197,0x11D8,0x09D9,0x09FA,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01D9,0x01D9,0x01D9,0x09F8,0x09D8,0x11D7,0x1195,0x0912,0x1111,0x1931,0x2131,0x2131,0x2130,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930, + 0x2110,0x2111,0x2131,0x2131,0x2131,0x2111,0x2111,0x2111,0x1910,0x2111,0x2111,0x2111,0x2111,0x2110,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x1911,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x1911,0x2111,0x2131,0x2111,0x1911,0x1931,0x1931,0x2111,0x1911,0x1910,0x1910,0x1910,0x1911,0x2131,0x1911,0x1911,0x1910,0x2131,0x1910,0x1931,0x1931,0x1931,0x1910,0x2131,0x2111,0x1911,0x1911,0x2111,0x2111,0x2131,0x1911,0x1911,0x1911,0x2131,0x2111,0x2111,0x2111,0x2111,0x1910,0x2131,0x2111,0x2111,0x2111,0x2111,0x2111,0x2131,0x2111,0x2131,0x2111,0x2111,0x2111,0x2131,0x2111,0x2111,0x2111,0x2131,0x1911,0x2131,0x1911,0x2111,0x2111,0x2111,0x2111,0x1911,0x2111,0x1911,0x2111,0x2131,0x2111,0x2111,0x1910,0x2111,0x1911,0x2131,0x1931,0x2131,0x1911,0x1910,0x1911,0x1931,0x1911,0x1931,0x1931,0x2131,0x2111,0x2111,0x1911,0x2111,0x2131,0x2111,0x2110,0x2131,0x2131,0x2130,0x2130,0x2131,0x2111,0x2131,0x2131,0x2111,0x2131,0x2131,0x1911,0x2111,0x1911,0x2131,0x1931,0x1911,0x1911,0x1931,0x1910,0x1910,0x1910,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1111,0x1132,0x1133,0x1174,0x21F6,0x2237,0x2217,0x1995,0x1974,0x1133,0x1932,0x1911,0x1931,0x1931,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x212F,0x210F,0x2130,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x210F,0x2930,0x290F,0x2910,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2910,0x210F,0x212F,0x212F,0x2910,0x2930,0x2110,0x2110,0x2910,0x2910,0x210F,0x2930,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x292F,0x2930,0x2130,0x2130,0x2131,0x1932,0x1932,0x1132,0x1173,0x1174,0x19B5,0x19B5,0x1194,0x1174,0x0954,0x1154,0x1153,0x1132,0x1111,0x1911,0x1910,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x2910,0x2930,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x2110,0x210F,0x212F,0x2930,0x212F,0x210F,0x2930,0x290F,0x290F,0x210F,0x2910,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2930,0x2910,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x2930,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x210F,0x2910,0x210F,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2950,0x2950,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2950,0x3150,0x3151,0x2930,0x3130,0x3131,0x3151,0x3151,0x3151,0x3171,0x3171,0x3171,0x3151,0x3171,0x3151,0x3971,0x3992,0x3992,0x3992,0x4192,0x4191,0x4192,0x4191,0x4191,0x4192,0x41B2,0x49B2,0x49D2,0x49B2,0x4992,0x4972,0x4992,0x5192,0x5172,0x5191,0x5191,0x5170,0x5150,0x512F,0x69B1,0x92D5,0xC43A,0xD4BC,0xD4DC,0xD4FC,0xCCFC,0xC4DB,0xA478,0x9477,0x8497,0x8519,0x85BB,0x865C,0x6E7C,0x5E7C,0x465B,0x469C,0x3EBC,0x3F1D,0x3F1D,0x36DD,0x36DD,0x36BC,0x3EBC,0x3EBC,0x46DD,0x46FD,0x3F1D,0x3F3D,0x375E,0x2F5E,0x275E,0x1F7E,0x177E,0x179E,0x0FBF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07DF,0x0FDF,0x0FBE,0x0F9E,0x075C,0x071B,0x06FB,0x06DB,0x06DB,0x06FB,0x06DB,0x06BB,0x06BA,0x06BA,0x06BA,0x06BA,0x069A,0x069A,0x069A,0x069A,0x067A,0x067A,0x065A,0x065A,0x065A,0x063A,0x063A,0x063A,0x061A,0x061A,0x061A,0x05FB,0x05FB,0x05FB,0x05DB,0x05DB,0x05DB,0x05BB,0x05BC,0x05BC,0x059C,0x057C,0x057C,0x057D,0x055D,0x055D,0x053D,0x053D,0x051D,0x051D,0x04FD,0x04FD,0x04FD,0x04FE,0x04DE,0x04DE,0x04BE,0x04BE,0x049E,0x049E,0x049E,0x047E,0x047E,0x049F,0x047E,0x047F,0x045F,0x045F,0x045F,0x045F,0x045F,0x045F,0x043F,0x043F,0x043F,0x043F,0x043F,0x043F,0x043F,0x043F,0x043F,0x043F,0x043F,0x041F,0x043F,0x043F,0x043F,0x043F,0x043F,0x041F,0x043F,0x041F,0x03FF,0x03DF,0x03BF,0x039F,0x039F,0x035F,0x035F,0x033F,0x02FF,0x02DF,0x02BF,0x029F,0x025F,0x023F,0x021F,0x01FF,0x01DF,0x01DF,0x01BE,0x01BE,0x01BE,0x09BE,0x099D,0x119C,0x21BB,0x29BA,0x421A,0x7BFF,0x5B5B,0x53BA,0x4C5B,0x55BE,0x4EDF,0x371F,0x1F3F,0x175F,0x0F7F,0x0F9F,0x077F,0x0F7F,0x0F7F,0x1F7F,0x2F5F,0x3F1F,0x56BE,0x7EBF,0x853B,0x6AF3,0x8AB3,0xAA94,0xC274,0xCA54,0xD234,0xD213,0xD214,0xD1F4,0xD214,0xD1F4,0xD235,0xCA14,0xC255,0xC2B7,0xA276,0x60F0,0x5951,0x4951,0x4172,0x4172,0x4172,0x3971,0x3972,0x3951,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3130,0x2930,0x2950,0x2950,0x2950,0x2151,0x2152,0x2153,0x1154,0x11B6,0x11F8,0x09B8,0x09B8,0x09D9,0x09D9,0x01DA,0x01DA,0x01BA,0x01BA,0x01DA,0x01D9,0x09F9,0x1A19,0x11D7,0x0954,0x1154,0x1932,0x1911,0x1931,0x1930,0x2130,0x2130,0x2130,0x212F,0x2930,0x2130,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2110,0x210F,0x210F,0x2930,0x2910,0x210F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x2130,0x2110,0x2110,0x2130,0x2110,0x210F,0x2130,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2930,0x2110,0x2130,0x210F,0x212F,0x210F,0x290F,0x2930,0x210F,0x212F,0x2930,0x2130,0x2110,0x2130,0x210F,0x210F,0x2130,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x2110,0x2110,0x210F,0x2110,0x2130,0x2110,0x210F,0x2130,0x2130,0x210F,0x2130,0x2110,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x210F,0x2110,0x2930,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1133,0x1175,0x1197,0x11D8,0x11F9,0x09D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01D9,0x01D9,0x01D9,0x01D8,0x09F8,0x11B6,0x1195,0x1132,0x10F1,0x1931,0x2151,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x2930,0x2110,0x210F,0x2130,0x2130,0x2110,0x2930,0x2930, + 0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x20F0,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x2110,0x2131,0x2110,0x2131,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2110,0x2131,0x2110,0x2131,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x2151,0x2151,0x2151,0x1931,0x1931,0x1911,0x1911,0x1112,0x1133,0x1994,0x21F6,0x2217,0x19D6,0x19D6,0x1174,0x1953,0x1932,0x1932,0x2131,0x2151,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2930,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x2930,0x2910,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x210F,0x210F,0x2910,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2930,0x210F,0x210F,0x20EF,0x292F,0x292F,0x290F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x1174,0x11B5,0x19D6,0x11D6,0x2217,0x2217,0x19F7,0x19F7,0x2217,0x19F6,0x21D6,0x1974,0x1932,0x1911,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2110,0x2130,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x210F,0x2930,0x212F,0x212F,0x212F,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x28EF,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2930,0x2910,0x210F,0x2110,0x2110,0x2110,0x2910,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x2930,0x2910,0x2910,0x210F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x3130,0x3150,0x3150,0x3171,0x3171,0x3151,0x3151,0x3150,0x3151,0x3171,0x3171,0x3972,0x3972,0x3972,0x3972,0x3972,0x4192,0x4191,0x4191,0x4191,0x4191,0x41B2,0x49B2,0x4191,0x4191,0x4171,0x4991,0x4991,0x51B2,0x5192,0x5192,0x5171,0x5150,0x512F,0x594F,0x7212,0xAB97,0xCC9B,0xD4DC,0xCC9B,0xCC9B,0xCCDB,0xC49A,0xB499,0xA478,0x8C77,0x84D8,0x85BA,0x865C,0x769D,0x669C,0x4E9C,0x3EDC,0x371D,0x2F5E,0x2F7E,0x277E,0x1F5D,0x275D,0x275E,0x2F5E,0x375E,0x375E,0x375E,0x377E,0x2F7E,0x279E,0x279E,0x1F9F,0x179E,0x179E,0x0F9E,0x0FBF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x0FBF,0x0FBE,0x17DE,0x0F9D,0x073C,0x06FB,0x06DA,0x06DA,0x06BA,0x06BA,0x06DA,0x06BA,0x06DA,0x06BA,0x06DA,0x06B9,0x0699,0x0699,0x0699,0x0699,0x0679,0x0679,0x067A,0x065A,0x0659,0x065A,0x063A,0x0619,0x061A,0x061A,0x05FA,0x05FA,0x05FA,0x05DA,0x05FB,0x05DB,0x05BB,0x05BB,0x05BB,0x05BB,0x059B,0x057C,0x057C,0x057C,0x055C,0x055C,0x055D,0x053D,0x053D,0x051D,0x051D,0x04FD,0x04FD,0x04FE,0x04DE,0x04DE,0x04DE,0x04BE,0x049E,0x049E,0x049E,0x049E,0x049F,0x047E,0x047E,0x047E,0x045F,0x045F,0x045F,0x043F,0x043F,0x043F,0x043F,0x043F,0x041F,0x041F,0x043F,0x041F,0x043F,0x043F,0x043F,0x043F,0x041F,0x041F,0x043F,0x041F,0x041F,0x041F,0x041F,0x041F,0x03FF,0x03FF,0x03FF,0x03DF,0x03BF,0x039F,0x037F,0x035F,0x033F,0x031F,0x031F,0x02DF,0x02DF,0x02BF,0x025F,0x023F,0x01FF,0x01FF,0x01DF,0x01DF,0x01DF,0x01BE,0x01BE,0x019E,0x099D,0x099C,0x117C,0x21BB,0x2999,0x5AFD,0x6B7C,0x5B9B,0x53FA,0x4CDB,0x4E5F,0x3EDF,0x2F3F,0x175F,0x0F7F,0x0F7F,0x0F7F,0x0F7F,0x0F7F,0x177F,0x1F7F,0x2F3F,0x471F,0x569E,0x867F,0x6C57,0x72F3,0x9293,0xBAD5,0xC274,0xCA13,0xD214,0xD1F4,0xD1F4,0xD1F4,0xD214,0xD214,0xD234,0xCA35,0xC255,0xC2D7,0x91F4,0x58CF,0x5151,0x4951,0x4151,0x4172,0x4172,0x4172,0x3971,0x3972,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x2930,0x2930,0x2930,0x2951,0x2951,0x2132,0x2153,0x1153,0x1195,0x1A39,0x09F9,0x09B9,0x09B9,0x01B9,0x01BA,0x01DA,0x01DA,0x01DA,0x09DA,0x09D9,0x11D8,0x0976,0x1154,0x1954,0x1933,0x1932,0x1911,0x1910,0x1910,0x1910,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x2110,0x2930,0x2930,0x2130,0x2130,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x2910,0x2930,0x2110,0x210F,0x2910,0x2110,0x2110,0x210F,0x2910,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x2110,0x2110,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x210F,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x2930,0x2110,0x2110,0x2130,0x2130,0x210F,0x2110,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x212F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2930,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x210F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2151,0x2151,0x1931,0x1953,0x1133,0x1175,0x1197,0x09B8,0x11F9,0x09DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01FA,0x01D9,0x09D8,0x09D8,0x0996,0x1175,0x1132,0x1111,0x1911,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2130,0x2930,0x212F,0x2930,0x2930,0x2110, + 0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2151,0x2151,0x2131,0x2131,0x1931,0x1931,0x1912,0x1132,0x1133,0x1995,0x21F7,0x2217,0x19F7,0x19B5,0x1174,0x1133,0x1932,0x1932,0x2131,0x1911,0x2110,0x2130,0x2130,0x2930,0x2110,0x2130,0x2110,0x2130,0x2930,0x2930,0x2930,0x210F,0x212F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2910,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2930,0x2930,0x210F,0x290F,0x2930,0x210F,0x2910,0x210F,0x2930,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2930,0x210F,0x292F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x212F,0x212F,0x2130,0x210F,0x2110,0x2930,0x210F,0x210F,0x290F,0x292F,0x292F,0x290F,0x292F,0x292F,0x2130,0x2130,0x2131,0x1932,0x1932,0x1154,0x1195,0x1A17,0x19F7,0x19F7,0x19F7,0x19F7,0x2218,0x1A17,0x1A17,0x1A17,0x19F6,0x21D6,0x1973,0x1932,0x2111,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x290F,0x2930,0x210F,0x2910,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2130,0x210F,0x2110,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x210F,0x210F,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2910,0x290F,0x290F,0x2930,0x2930,0x2930,0x2910,0x2110,0x2930,0x290F,0x2930,0x2930,0x2930,0x290F,0x292F,0x290F,0x210F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3151,0x3151,0x3171,0x3171,0x3151,0x3151,0x3151,0x3151,0x3971,0x3171,0x3971,0x3972,0x3971,0x4172,0x3972,0x4171,0x4191,0x3971,0x3971,0x4171,0x4192,0x49B2,0x49B2,0x4171,0x4971,0x4971,0x5191,0x5191,0x5991,0x5171,0x512F,0x48CE,0x594F,0x8AB5,0xB3B8,0xCC7B,0xD4BB,0xD4DB,0xD4BB,0xD4DB,0xCCDB,0xBCBA,0xAC98,0x9457,0x8477,0x7D39,0x7E1B,0x767C,0x669C,0x4E9C,0x3EBC,0x36DD,0x2F5E,0x279E,0x1F9E,0x177E,0x0F7E,0x179E,0x179E,0x1F9E,0x1F7E,0x279E,0x277E,0x277E,0x1F7E,0x1F9E,0x179E,0x0F9E,0x0FBE,0x0FBF,0x07BE,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x0FBF,0x0FBE,0x17BE,0x1FDE,0x177D,0x0F1B,0x0EFA,0x06DA,0x06BA,0x06B9,0x06B9,0x06BA,0x06DA,0x06D9,0x06D9,0x06D9,0x06B9,0x0699,0x0699,0x0699,0x0699,0x0679,0x0679,0x0679,0x0679,0x0659,0x0659,0x0639,0x0639,0x0639,0x0639,0x0619,0x05F9,0x05F9,0x05F9,0x05FA,0x05DA,0x05DA,0x05DA,0x05BA,0x05BB,0x059B,0x057B,0x057B,0x057C,0x055C,0x055C,0x055C,0x053C,0x051C,0x051C,0x051D,0x04FD,0x04FD,0x04DD,0x04DD,0x04DD,0x04BE,0x04BE,0x04BE,0x049E,0x049E,0x049E,0x047E,0x047E,0x047E,0x045E,0x045F,0x045F,0x043F,0x043F,0x043F,0x043F,0x043F,0x041F,0x041F,0x041F,0x041F,0x041F,0x041F,0x041F,0x041F,0x041F,0x041F,0x041F,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03DF,0x03DF,0x03DF,0x03BF,0x03BF,0x03BF,0x037F,0x037F,0x035F,0x033F,0x033F,0x031F,0x02FF,0x02DF,0x029F,0x027F,0x025F,0x023F,0x021F,0x01FF,0x01DF,0x01DF,0x01DF,0x01BF,0x019E,0x019E,0x099D,0x099D,0x117B,0x219A,0x31B9,0x73BF,0x6B9C,0x5BDB,0x4C5B,0x457D,0x46BF,0x2EFF,0x1F3F,0x175F,0x0F7F,0x0F7F,0x077F,0x0F9F,0x0F7F,0x179F,0x279F,0x373F,0x4EFE,0x6E9E,0x861E,0x6B95,0x7AD3,0xA2D4,0xBA94,0xC233,0xCA13,0xD214,0xD214,0xD1F3,0xD1F3,0xD1F4,0xD214,0xD235,0xC234,0xBA55,0xC2F8,0x8192,0x58F0,0x5131,0x4951,0x4152,0x4172,0x4172,0x3972,0x3972,0x3971,0x3971,0x3151,0x3151,0x3151,0x3131,0x3151,0x3131,0x3130,0x3151,0x2951,0x2951,0x2951,0x2152,0x2153,0x1153,0x19D6,0x11F8,0x09F9,0x09B9,0x09B9,0x01B9,0x09DA,0x01DA,0x09DA,0x09FA,0x09D9,0x09D8,0x11B7,0x1155,0x1133,0x1932,0x1911,0x1911,0x1910,0x2130,0x2130,0x2130,0x2130,0x2950,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2930,0x2930,0x290F,0x210F,0x2930,0x2910,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2930,0x210F,0x2930,0x2130,0x210F,0x2130,0x2110,0x210F,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2910,0x2110,0x210F,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x2930,0x2110,0x2930,0x2930,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x210F,0x2110,0x212F,0x210F,0x2130,0x2110,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x2110,0x2930,0x210F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2930,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x2110,0x2930,0x210F,0x210F,0x210F,0x2130,0x2110,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x292F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2151,0x2151,0x1931,0x1952,0x1133,0x1155,0x1197,0x11D8,0x11FA,0x09FA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01D9,0x01F9,0x09D9,0x09B7,0x11D7,0x1195,0x1112,0x1111,0x1911,0x2131,0x2131,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x2130, + 0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x20EF,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x20EF,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2930,0x210F,0x2110,0x2110,0x2110,0x20EF,0x2110,0x2110,0x2110,0x2110,0x2110,0x20F0,0x2110,0x2110,0x2110,0x2110,0x2130,0x20EF,0x2110,0x2110,0x2110,0x2110,0x2130,0x20EF,0x210F,0x210F,0x210F,0x2130,0x2110,0x210F,0x2130,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x20EF,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x1910,0x2110,0x2130,0x2130,0x2151,0x2151,0x2131,0x2131,0x1931,0x1932,0x1132,0x1133,0x1995,0x21F7,0x19F7,0x19F7,0x1995,0x1154,0x1153,0x1132,0x1911,0x1911,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x210F,0x2110,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x2930,0x2910,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x290F,0x2930,0x2910,0x210F,0x290F,0x290F,0x210F,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x210F,0x210F,0x212F,0x2130,0x212F,0x2130,0x210F,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x2110,0x2110,0x1931,0x1932,0x1133,0x1154,0x2217,0x2238,0x11D7,0x11B7,0x11B6,0x11B6,0x11B6,0x11B6,0x11D6,0x19F7,0x19F7,0x19D6,0x1994,0x1932,0x2132,0x2131,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x210F,0x2110,0x210F,0x2110,0x2910,0x2930,0x2910,0x290F,0x210F,0x290F,0x2910,0x210F,0x2930,0x212F,0x2930,0x2930,0x210F,0x210F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2930,0x2130,0x2930,0x2930,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x290F,0x290F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x3171,0x3151,0x3151,0x3151,0x3130,0x3150,0x3151,0x3151,0x3971,0x3971,0x3951,0x3951,0x3951,0x3951,0x3971,0x3951,0x4171,0x4171,0x3931,0x4171,0x4171,0x4191,0x4992,0x49B2,0x4971,0x4971,0x4971,0x5191,0x5191,0x5150,0x512F,0x50EE,0x590F,0x79F2,0xA336,0xC41A,0xCC9B,0xD49B,0xD49B,0xD49A,0xD4DB,0xD4DB,0xCCFA,0xBCB9,0x9C57,0x8C97,0x8539,0x8E3C,0x7E9D,0x66BD,0x56BD,0x46FD,0x371D,0x2F5E,0x2F9F,0x1F9F,0x179E,0x0FBE,0x0FBE,0x0FDF,0x079E,0x0FBE,0x0F9E,0x179E,0x179E,0x179E,0x179F,0x17BF,0x0FBF,0x0FBE,0x07BE,0x07BF,0x07BF,0x07DF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x0FDF,0x0FBE,0x1F9E,0x1F9E,0x2F9E,0x1F1B,0x16DA,0x16BA,0x16DA,0x0EB9,0x06B9,0x06B9,0x06B9,0x06D9,0x06D9,0x06D9,0x06D9,0x06B8,0x06B8,0x0698,0x0698,0x0698,0x0698,0x0698,0x0698,0x0678,0x0658,0x0658,0x0658,0x0638,0x0658,0x0638,0x0618,0x0618,0x0618,0x05F9,0x05F9,0x05F9,0x05D9,0x05DA,0x05BA,0x05BA,0x059A,0x059B,0x059B,0x057B,0x057B,0x057C,0x055C,0x053C,0x051C,0x051C,0x051C,0x04FD,0x04FD,0x04FD,0x04FD,0x04DD,0x04DE,0x04BE,0x04BE,0x049E,0x049E,0x049E,0x047E,0x047E,0x045E,0x045E,0x043E,0x043F,0x043F,0x043F,0x041F,0x041F,0x041F,0x041F,0x041F,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03DF,0x03DF,0x03DF,0x03DF,0x03DF,0x03DF,0x03BF,0x03BF,0x03DF,0x039F,0x03BF,0x039F,0x039F,0x037F,0x037F,0x035F,0x035F,0x033F,0x031F,0x031F,0x02FF,0x02DF,0x02BF,0x029F,0x027F,0x023F,0x021F,0x021F,0x01FF,0x01DF,0x01BF,0x01BF,0x019E,0x019E,0x019E,0x099D,0x117C,0x21BC,0x2159,0x52BC,0x6B9D,0x6C1E,0x541B,0x3CBB,0x4E5F,0x36BF,0x271F,0x171F,0x0F7F,0x0F9F,0x079F,0x0FBF,0x0F9F,0x179F,0x1F9F,0x277F,0x371E,0x56BE,0x769F,0x7D5B,0x6313,0x7A72,0xAAB4,0xBA74,0xCA33,0xD234,0xD1F3,0xD1F3,0xD1F3,0xD1F3,0xD1F3,0xD214,0xCA34,0xC235,0xBA55,0xBAD7,0x6910,0x58F0,0x5131,0x4931,0x4151,0x3951,0x3951,0x3971,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3131,0x3151,0x2951,0x2951,0x2951,0x2131,0x1932,0x1953,0x1995,0x1A18,0x09D8,0x09B8,0x0999,0x09B9,0x09DA,0x09FA,0x09D9,0x09D9,0x09B8,0x11D7,0x1175,0x1113,0x1912,0x1911,0x1911,0x2111,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x290F,0x2930,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2930,0x2910,0x210F,0x210F,0x2910,0x210F,0x2910,0x210F,0x210F,0x2930,0x2910,0x2910,0x2110,0x2110,0x210F,0x2930,0x2930,0x2110,0x210F,0x2930,0x210F,0x210F,0x2130,0x210F,0x210F,0x2130,0x2110,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2110,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x212F,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x210F,0x2110,0x212F,0x210F,0x212F,0x212F,0x2130,0x2930,0x2110,0x2110,0x2910,0x210F,0x210F,0x2910,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x290F,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2130,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x1910,0x1911,0x1112,0x1954,0x1175,0x1197,0x11D8,0x09D9,0x01DA,0x01BA,0x01BA,0x01BA,0x01DA,0x01DA,0x01FA,0x01DA,0x01D9,0x01D9,0x09F9,0x09D8,0x11B7,0x1175,0x1112,0x10F1,0x1911,0x2111,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F, + 0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2110,0x2110,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2110,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2151,0x1931,0x1932,0x1912,0x1132,0x1133,0x1195,0x19F7,0x19F7,0x21F7,0x19B6,0x1174,0x1153,0x1132,0x1931,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x2930,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x2110,0x2110,0x2110,0x2930,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x290F,0x2930,0x2930,0x212F,0x212F,0x212F,0x2130,0x2910,0x2110,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x212F,0x212F,0x2110,0x1910,0x1931,0x1112,0x1133,0x1995,0x2218,0x19F7,0x1196,0x1196,0x1175,0x0975,0x0975,0x0955,0x0995,0x11D7,0x1A17,0x19D6,0x19B5,0x1974,0x1932,0x2131,0x2131,0x2110,0x2130,0x2130,0x210F,0x2110,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x290F,0x2910,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x212F,0x212F,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2930,0x212F,0x212F,0x2930,0x212F,0x212F,0x292F,0x212F,0x210F,0x292F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x290F,0x292F,0x2930,0x2930,0x292F,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3151,0x3150,0x3150,0x3151,0x3150,0x3151,0x3151,0x3130,0x3151,0x3151,0x3151,0x3951,0x3971,0x3950,0x3950,0x3950,0x3951,0x3951,0x3931,0x4151,0x4151,0x4971,0x4991,0x4991,0x4991,0x4971,0x4950,0x4950,0x4950,0x5150,0x490F,0x48CD,0x50EE,0x69B1,0x9AF5,0xBBF9,0xCC3A,0xD47A,0xD45A,0xD47A,0xD49A,0xD4BA,0xDCFB,0xD4FB,0xCD1A,0xB498,0x8C15,0x84B7,0x8DBA,0x7E5C,0x6EBD,0x56BD,0x46DD,0x3F1E,0x2F3D,0x279F,0x1F9F,0x17BF,0x0FBF,0x0FBF,0x07BF,0x07DF,0x07DF,0x07DF,0x07BF,0x0FBF,0x0FBF,0x0FBF,0x0FBF,0x0F9F,0x0FBF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07FF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x0FDF,0x0FDF,0x17BE,0x277D,0x275D,0x2F1C,0x26BA,0x269A,0x2699,0x2F1B,0x1EFA,0x0ED9,0x06B9,0x06B9,0x06B9,0x06D9,0x06D8,0x06D8,0x06D8,0x06D8,0x06B8,0x06B8,0x0698,0x0698,0x0698,0x0698,0x0678,0x0677,0x0678,0x0657,0x0658,0x0657,0x0637,0x0617,0x0638,0x0617,0x0618,0x05F8,0x05F8,0x05F9,0x05D8,0x05D9,0x05B9,0x05BA,0x059A,0x059A,0x057A,0x057B,0x055B,0x055B,0x053B,0x053B,0x053C,0x051C,0x051C,0x04FC,0x04FC,0x04FD,0x04DD,0x04DD,0x04BE,0x049E,0x049E,0x047E,0x047E,0x047E,0x045E,0x045E,0x045E,0x043E,0x043E,0x043E,0x043E,0x043F,0x041F,0x041F,0x041F,0x041F,0x03FF,0x03FF,0x03FF,0x03DF,0x03DF,0x03DF,0x03DF,0x03DF,0x03BF,0x03BF,0x03BF,0x03BF,0x03BF,0x03BF,0x039F,0x039F,0x039F,0x039F,0x037F,0x037F,0x035F,0x035F,0x033F,0x031F,0x031F,0x031F,0x02FF,0x02DF,0x02DF,0x029F,0x027F,0x023F,0x021F,0x01FF,0x01FF,0x01DF,0x01DF,0x01BF,0x01BF,0x01BE,0x019E,0x099E,0x099D,0x115B,0x219B,0x2979,0x6B7F,0x639D,0x5C1D,0x3C3B,0x3D3D,0x4EFF,0x2EFF,0x1F3F,0x175F,0x0F7F,0x0F9F,0x079F,0x0F9F,0x0F9F,0x179F,0x1F7F,0x2F5F,0x3EFE,0x5E9E,0x865E,0x7458,0x72D3,0x9293,0xBAB5,0xC233,0xCA33,0xC9F3,0xD213,0xD1F3,0xD9F4,0xD1F3,0xD214,0xD214,0xCA14,0xC234,0xBA96,0xB2D7,0x58AF,0x5911,0x5131,0x4952,0x4151,0x3951,0x3951,0x3951,0x3972,0x3151,0x3971,0x3171,0x3151,0x3171,0x3151,0x3151,0x3151,0x2931,0x2931,0x2931,0x2131,0x2132,0x1933,0x1974,0x19D7,0x19F8,0x19F9,0x09B8,0x0998,0x09B9,0x09B8,0x09B8,0x09B8,0x11B7,0x1195,0x1153,0x1932,0x1911,0x1911,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x292F,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x210F,0x2930,0x210F,0x2910,0x290F,0x290F,0x2930,0x210F,0x2930,0x2930,0x290F,0x210F,0x2930,0x290F,0x2910,0x2930,0x2930,0x210F,0x2930,0x2930,0x212F,0x212F,0x2930,0x210F,0x212F,0x2930,0x212F,0x292F,0x2930,0x210F,0x212F,0x2130,0x2110,0x2930,0x2930,0x210F,0x2110,0x2930,0x2930,0x2110,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2910,0x290F,0x210F,0x2910,0x2910,0x290F,0x210F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2910,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x210F,0x290F,0x290F,0x2910,0x2930,0x290F,0x290F,0x2930,0x2930,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2910,0x212F,0x212F,0x292F,0x212F,0x210F,0x210F,0x2930,0x212F,0x2930,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2930,0x210F,0x2930,0x212F,0x212F,0x2930,0x2930,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x2130,0x210F,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2110,0x210F,0x2130,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x2110,0x1931,0x1911,0x1932,0x1134,0x1175,0x1197,0x11D9,0x11FA,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01D9,0x09D8,0x09D8,0x19D7,0x1175,0x1132,0x1111,0x1911,0x2110,0x2110,0x2131,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F, + 0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x2110,0x2110,0x2110,0x2930,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x2110,0x2130,0x2110,0x2110,0x2930,0x2930,0x2110,0x2910,0x2910,0x210F,0x2110,0x2930,0x210F,0x210F,0x2130,0x210F,0x212F,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1911,0x1112,0x1112,0x0933,0x1195,0x19F7,0x2218,0x1A17,0x11B5,0x1174,0x1133,0x1132,0x1931,0x1931,0x2151,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x2930,0x2930,0x210F,0x210F,0x212F,0x2930,0x290F,0x290F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x210F,0x2910,0x2110,0x2110,0x2910,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x212F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2130,0x2130,0x2930,0x2910,0x2910,0x210F,0x290F,0x292F,0x210F,0x210F,0x212F,0x210F,0x2110,0x1910,0x1931,0x1933,0x1133,0x21D6,0x19F7,0x1196,0x1196,0x0976,0x0955,0x0954,0x0934,0x0934,0x0975,0x11B6,0x19F7,0x19F7,0x19D6,0x1974,0x1112,0x1932,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2110,0x2110,0x2930,0x2930,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x2930,0x20EF,0x210F,0x290F,0x2930,0x2110,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x212F,0x2130,0x210F,0x212F,0x212F,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x290F,0x210F,0x210F,0x292F,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x3150,0x3150,0x3151,0x3130,0x3150,0x3150,0x3951,0x3951,0x3950,0x3950,0x3930,0x3950,0x3950,0x4171,0x4150,0x4971,0x4971,0x4971,0x4971,0x4950,0x4950,0x4950,0x490F,0x490F,0x48CE,0x50EE,0x592E,0x79F1,0xA315,0xC419,0xD47B,0xD45A,0xD45A,0xD45A,0xDC7A,0xDC9A,0xD49A,0xD4BA,0xD4DA,0xCCBA,0xBC98,0x9C56,0x8456,0x8D59,0x8E3C,0x765C,0x669D,0x4EDD,0x3F1E,0x375E,0x277F,0x1F9F,0x179F,0x0F9E,0x0FBF,0x0FBF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x0FDF,0x17DE,0x1F9E,0x2F5D,0x2EFC,0x2E7A,0x2E18,0x2E38,0x3679,0x3F1B,0x2ED9,0x1EF9,0x0ED9,0x06B8,0x06D8,0x06D8,0x06F8,0x06F8,0x06D8,0x06D7,0x06D7,0x06D7,0x06B7,0x06B7,0x06B7,0x0697,0x0697,0x0677,0x0677,0x0677,0x0677,0x0656,0x0636,0x0637,0x0637,0x0637,0x0617,0x0617,0x0617,0x0618,0x05F8,0x05D8,0x05D8,0x05D9,0x05B9,0x0599,0x059A,0x057A,0x057A,0x055A,0x055B,0x053B,0x053B,0x053C,0x051C,0x04FC,0x04FC,0x04DC,0x04DD,0x04BD,0x04BD,0x04BE,0x049E,0x049E,0x047E,0x047E,0x045E,0x045E,0x045E,0x045E,0x043F,0x043E,0x043F,0x043F,0x041F,0x041E,0x041F,0x03FF,0x03FF,0x03FF,0x03DF,0x03DF,0x03DF,0x03BF,0x03BF,0x03BF,0x03BF,0x03BF,0x03BF,0x039F,0x039F,0x039F,0x039F,0x037F,0x037F,0x037F,0x037F,0x037F,0x035F,0x033F,0x033F,0x031F,0x031F,0x02FF,0x02FF,0x02DF,0x02BF,0x029F,0x027F,0x025F,0x023F,0x021F,0x01FF,0x01DF,0x01DF,0x01DF,0x01BF,0x01BF,0x019E,0x01BE,0x09BE,0x119D,0x199C,0x217A,0x31FA,0x5B5D,0x5BDD,0x441B,0x349B,0x463F,0x36DF,0x271F,0x175F,0x0F7F,0x0F9F,0x0FBF,0x0F9F,0x0F9F,0x0F9F,0x179F,0x277F,0x371E,0x4EDE,0x6E9E,0x7DDD,0x6BB6,0x7252,0xA2B4,0xBA74,0xC1F3,0xD213,0xC9F3,0xD1F3,0xD1F3,0xDA14,0xD214,0xC9F3,0xC9F4,0xCA14,0xC255,0xC2D7,0xA276,0x60D0,0x5931,0x4931,0x4952,0x4172,0x3951,0x3951,0x3951,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3131,0x2951,0x2951,0x2931,0x2131,0x1912,0x1933,0x21B6,0x2218,0x2219,0x1A19,0x1A19,0x1219,0x1219,0x1218,0x19D7,0x1175,0x1974,0x1132,0x1911,0x1911,0x2111,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x290F,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2930,0x2110,0x2910,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2910,0x210F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2910,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x212F,0x210F,0x292F,0x290F,0x210F,0x290F,0x2930,0x2930,0x290F,0x210F,0x2110,0x2930,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x2930,0x290F,0x290F,0x2930,0x290F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x1931,0x1932,0x1953,0x1154,0x1175,0x11B7,0x11D9,0x09D9,0x01D9,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x09D8,0x11D8,0x11B6,0x1174,0x1132,0x1111,0x1931,0x2131,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F, + 0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x2110,0x2130,0x2110,0x2930,0x2930,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2951,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1132,0x1133,0x0954,0x11B6,0x19D7,0x1A17,0x1A17,0x11B5,0x1194,0x1153,0x1132,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2950,0x2130,0x210F,0x210F,0x2930,0x210F,0x210F,0x290F,0x292F,0x2930,0x212F,0x210F,0x210F,0x210F,0x212F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2130,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x210F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x292F,0x210F,0x210F,0x2130,0x2930,0x2930,0x2110,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x2110,0x2110,0x1911,0x1932,0x1953,0x1175,0x19D7,0x11B7,0x0976,0x0976,0x0976,0x0975,0x0934,0x0954,0x0954,0x0975,0x11B6,0x19F7,0x19F7,0x19D7,0x1174,0x1933,0x1932,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x210F,0x2110,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2930,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x212F,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x290F,0x2910,0x210F,0x2910,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x20EF,0x210F,0x210F,0x2110,0x210F,0x2110,0x210F,0x210F,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2930,0x2130,0x210F,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x292F,0x292F,0x210F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x290F,0x292F,0x3130,0x3150,0x3130,0x3150,0x3150,0x3150,0x3130,0x3130,0x3930,0x3930,0x3930,0x3930,0x3930,0x4150,0x4150,0x4150,0x4950,0x4930,0x492F,0x492F,0x492F,0x490E,0x40CD,0x40AD,0x48AD,0x614F,0x8AB4,0xB397,0xCC3A,0xD45A,0xD47A,0xDC5A,0xDC59,0xDC59,0xDC79,0xDC9A,0xDC99,0xDC9A,0xD4B9,0xCCB9,0xCCFA,0xB498,0x8C15,0x8CB7,0x95BA,0x863B,0x6E5B,0x569C,0x4EFD,0x3F3E,0x2F5E,0x279F,0x179F,0x0F9E,0x0FBF,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x0FDE,0x17BE,0x277D,0x2F3C,0x2E9A,0x3619,0x3597,0x45F8,0x4638,0x4658,0x3EB9,0x26D9,0x16D8,0x0ED8,0x06D8,0x06F8,0x06F7,0x06F7,0x06F7,0x06F7,0x06F7,0x06D6,0x06D6,0x06B6,0x06B6,0x06B6,0x0696,0x0696,0x06B6,0x0696,0x0696,0x0676,0x0676,0x0656,0x0656,0x0636,0x0636,0x0636,0x0636,0x0616,0x0617,0x05F7,0x05F7,0x05D7,0x05D8,0x05B8,0x05B8,0x0598,0x0599,0x0579,0x055A,0x055A,0x055A,0x053B,0x051B,0x051B,0x04FB,0x04FC,0x04FC,0x04DC,0x04BD,0x04BD,0x049D,0x047E,0x047E,0x045D,0x045E,0x045E,0x045E,0x045E,0x043E,0x043E,0x043E,0x043F,0x041E,0x041F,0x03FF,0x03FF,0x03FF,0x03DF,0x03DF,0x03BF,0x03BF,0x03DF,0x03BF,0x039F,0x039F,0x039F,0x039F,0x039F,0x037F,0x037F,0x037F,0x035F,0x035F,0x035F,0x035F,0x033F,0x033F,0x033F,0x031F,0x02FF,0x02FF,0x02FF,0x02DF,0x02BF,0x02BF,0x029F,0x027F,0x025F,0x023F,0x023F,0x01FF,0x01FF,0x01DF,0x01DF,0x01DF,0x01BF,0x01BE,0x019E,0x09BE,0x097D,0x117C,0x219C,0x1959,0x52FD,0x539D,0x543E,0x3C7C,0x351C,0x46BF,0x2EFF,0x1F3F,0x0F5F,0x0F7F,0x0F9F,0x0FBF,0x079F,0x0F9F,0x17BF,0x1F9F,0x2F5F,0x3F1F,0x4E9E,0x769F,0x855B,0x62F3,0x8A93,0xAA94,0xBA34,0xCA13,0xD213,0xD1F3,0xD1F3,0xD1F3,0xD1F3,0xC9F3,0xD214,0xD234,0xC214,0xC255,0xBA97,0x8993,0x58AF,0x5931,0x4931,0x4151,0x4151,0x3951,0x3972,0x3972,0x3971,0x3171,0x3151,0x3151,0x3150,0x3151,0x3151,0x3151,0x3151,0x2931,0x2931,0x2131,0x2132,0x2132,0x1953,0x1995,0x19B6,0x19B7,0x2238,0x1A18,0x1A18,0x11B6,0x1154,0x1954,0x1112,0x1931,0x1931,0x2111,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2930,0x290F,0x2930,0x210F,0x210F,0x210F,0x2110,0x2910,0x290F,0x210F,0x290F,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2910,0x2910,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x212F,0x212F,0x2910,0x210F,0x2930,0x210F,0x2910,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x2930,0x2930,0x212F,0x210F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x210F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2131,0x1931,0x1932,0x1933,0x1154,0x1175,0x11B8,0x11F9,0x09D9,0x01D9,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01B9,0x09D9,0x09D9,0x09B7,0x11B6,0x1175,0x1132,0x1111,0x1931,0x1911,0x2131,0x2130,0x2130,0x2951,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F, + 0x2110,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2110,0x2131,0x2131,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2111,0x2110,0x2110,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2131,0x2110,0x2131,0x2130,0x2110,0x2110,0x2131,0x2110,0x2111,0x2110,0x2131,0x2130,0x2111,0x2111,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2111,0x2110,0x2131,0x2130,0x2110,0x2131,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2151,0x2130,0x2151,0x2151,0x2172,0x1931,0x1952,0x1112,0x1133,0x0954,0x1195,0x19F7,0x1A17,0x19F7,0x19D6,0x1174,0x1153,0x1112,0x1911,0x1931,0x2131,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2110,0x210F,0x2930,0x2930,0x210F,0x2910,0x290F,0x210F,0x2930,0x290F,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2930,0x2110,0x2930,0x2910,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x290F,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2930,0x2910,0x2910,0x210F,0x290F,0x210F,0x290F,0x210F,0x2130,0x2130,0x2110,0x1911,0x1932,0x1153,0x19B6,0x2218,0x1196,0x0976,0x0976,0x0976,0x1175,0x0954,0x0934,0x0954,0x0955,0x11B6,0x11D7,0x19F7,0x19D7,0x1995,0x1133,0x1932,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x2930,0x212F,0x292F,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x20EF,0x210F,0x2930,0x212F,0x212F,0x2130,0x212F,0x2930,0x2950,0x2130,0x2930,0x2950,0x2930,0x2130,0x2930,0x2110,0x2930,0x2130,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x3130,0x3130,0x3150,0x3150,0x3130,0x3130,0x3150,0x312F,0x312F,0x312F,0x312F,0x3930,0x4170,0x390F,0x390F,0x412F,0x412F,0x410F,0x40EE,0x40CD,0x40AD,0x40AD,0x40AD,0x48CD,0x594E,0x8273,0xAB97,0xCC7A,0xDCDB,0xD49B,0xD47A,0xD459,0xD459,0xDC59,0xDC59,0xDC59,0xDC79,0xDC79,0xDC79,0xD479,0xD499,0xD4D9,0xC4D9,0x9C36,0x8C76,0x957A,0x8E1B,0x763B,0x667C,0x56FD,0x4F3E,0x375E,0x277E,0x1F7E,0x0F7E,0x0F9E,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x0FBE,0x179D,0x275C,0x36FB,0x3639,0x45F8,0x3D15,0x4D76,0x5DD8,0x4DD7,0x4658,0x2E98,0x1ED8,0x0ED8,0x0EF7,0x0717,0x0717,0x06F7,0x06F7,0x06F6,0x06F6,0x06F6,0x06F6,0x06F6,0x06F6,0x06D5,0x06D5,0x06B5,0x06B5,0x06B5,0x06B5,0x0695,0x0675,0x0675,0x0675,0x0675,0x0655,0x0655,0x0655,0x0635,0x0635,0x0615,0x05F6,0x05F6,0x05F7,0x05D7,0x05B7,0x05B7,0x0597,0x0598,0x0578,0x0578,0x0559,0x0539,0x0539,0x053A,0x051A,0x051B,0x04FC,0x04DC,0x04DC,0x04BD,0x04BD,0x049D,0x047D,0x047E,0x047E,0x045E,0x043E,0x045E,0x043E,0x043E,0x041E,0x041E,0x041E,0x041F,0x041F,0x03FF,0x03DF,0x03DF,0x03DF,0x03BF,0x03BF,0x03BF,0x03BF,0x03BF,0x039F,0x039F,0x037F,0x037F,0x037F,0x037F,0x035F,0x035F,0x033F,0x033F,0x033F,0x033F,0x033F,0x031F,0x031F,0x02FF,0x02DF,0x02DF,0x02DF,0x02DF,0x02BF,0x029F,0x027F,0x025F,0x023F,0x023F,0x021F,0x01FF,0x01FF,0x01DF,0x01DF,0x01BF,0x01BE,0x019E,0x019D,0x097D,0x097C,0x199C,0x197A,0x29FB,0x537E,0x4BDE,0x4C7E,0x245B,0x3E1F,0x36DF,0x1F1F,0x175F,0x0F9F,0x0FBF,0x079F,0x079F,0x079F,0x0F9F,0x177F,0x279F,0x2F3E,0x471F,0x5EBE,0x7E5E,0x7458,0x72D3,0x9273,0xB274,0xC233,0xD234,0xD213,0xD1F3,0xD1F4,0xD1D3,0xD1F3,0xD214,0xD214,0xCA14,0xC235,0xC276,0xB297,0x7131,0x58F0,0x5131,0x4951,0x4951,0x4151,0x4172,0x3951,0x3971,0x3971,0x3151,0x3151,0x2930,0x3130,0x3151,0x3151,0x2931,0x2951,0x2931,0x2951,0x2951,0x2132,0x2173,0x2153,0x1933,0x1133,0x1133,0x1133,0x1133,0x1132,0x1112,0x1912,0x1911,0x1931,0x2131,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x2930,0x212F,0x2930,0x2930,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2110,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2930,0x2130,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2131,0x1911,0x1911,0x1933,0x1154,0x1175,0x11B8,0x1219,0x09F9,0x01B9,0x01BA,0x01BA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01D9,0x0A19,0x09D8,0x09B6,0x1195,0x1133,0x1112,0x1932,0x1911,0x2131,0x2110,0x2151,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x212F,0x214F,0x212F, + 0x1931,0x1931,0x2131,0x2131,0x1931,0x2131,0x2131,0x2131,0x2111,0x2111,0x2131,0x2131,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x1910,0x2111,0x1911,0x1911,0x2111,0x2131,0x1910,0x1910,0x1930,0x2130,0x1930,0x1930,0x1931,0x1911,0x1931,0x1911,0x1911,0x2111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x2111,0x2111,0x1910,0x2111,0x2111,0x2111,0x1911,0x1911,0x1911,0x1911,0x2110,0x2110,0x1910,0x2110,0x2111,0x1910,0x2111,0x1910,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1911,0x1931,0x1911,0x2111,0x1911,0x2111,0x2111,0x2111,0x1911,0x1911,0x2111,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x2111,0x2111,0x1911,0x1911,0x1911,0x1911,0x2131,0x1911,0x1911,0x1911,0x1910,0x1910,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1910,0x1911,0x1911,0x1911,0x1910,0x1911,0x1910,0x1911,0x18F0,0x1910,0x1910,0x1910,0x1911,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x2130,0x1910,0x1910,0x2130,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x2111,0x1911,0x1911,0x1910,0x1910,0x1910,0x1910,0x2110,0x1910,0x2131,0x2111,0x2131,0x2131,0x2151,0x2151,0x2151,0x2151,0x1932,0x1953,0x1132,0x0933,0x0954,0x0995,0x19F7,0x2238,0x2217,0x19D6,0x1974,0x1133,0x1932,0x1911,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x2910,0x2110,0x210F,0x210F,0x2130,0x210F,0x212F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x2110,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x2110,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x2930,0x2130,0x2130,0x1910,0x1911,0x1112,0x1153,0x19D6,0x19F7,0x1197,0x1197,0x0976,0x0976,0x0955,0x0954,0x0934,0x0934,0x0155,0x11B6,0x11D7,0x1A18,0x19D7,0x1995,0x1933,0x1932,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x292F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x28EE,0x290F,0x290E,0x290E,0x292F,0x292F,0x290F,0x290F,0x290E,0x292F,0x292F,0x290F,0x292F,0x312F,0x312F,0x310F,0x312F,0x310F,0x312F,0x310F,0x310F,0x30EE,0x30EE,0x30EE,0x310E,0x390E,0x412F,0x410E,0x38CD,0x38AC,0x304B,0x302A,0x302A,0x386B,0x48ED,0x6190,0x8AB4,0xABB8,0xCC7A,0xD4DB,0xDCFB,0xDCBB,0xDCBA,0xDC99,0xDC79,0xDC79,0xDC79,0xDC79,0xDC79,0xE479,0xDC58,0xDC79,0xDC99,0xD479,0xCCB9,0xCCD9,0xB497,0x9C36,0x94F8,0x95BA,0x7DFB,0x6E3B,0x5EBC,0x4F1D,0x3F3E,0x2F5E,0x275E,0x177E,0x0F9E,0x0F9E,0x0FBF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DE,0x07BE,0x0F9D,0x177D,0x273C,0x3EFB,0x4659,0x55F8,0x4D15,0x54F5,0x6556,0x5D76,0x5618,0x3E78,0x2EB8,0x16B7,0x0F17,0x0717,0x0717,0x0717,0x0716,0x0716,0x0716,0x0715,0x0715,0x06F5,0x06F5,0x06F4,0x06F4,0x06D4,0x06D4,0x06D4,0x06B4,0x06B4,0x0694,0x0694,0x0694,0x0694,0x0674,0x0674,0x0674,0x0674,0x0654,0x0634,0x0634,0x0614,0x0615,0x05F5,0x05F5,0x05D5,0x05B6,0x05B6,0x0596,0x0597,0x0577,0x0557,0x0558,0x0559,0x0539,0x051A,0x04FA,0x04FB,0x04DB,0x04BC,0x049C,0x049D,0x047D,0x047D,0x045D,0x043D,0x045E,0x043E,0x043E,0x043E,0x041E,0x041E,0x041E,0x041E,0x03FF,0x03FF,0x03DF,0x03DF,0x03DF,0x03BF,0x03BF,0x03BF,0x03BF,0x039F,0x037F,0x037F,0x037F,0x037F,0x035F,0x035F,0x035F,0x035F,0x033F,0x033F,0x033F,0x031F,0x031F,0x031F,0x02FF,0x02FF,0x02DF,0x02DF,0x02DF,0x02BF,0x029F,0x029F,0x027F,0x025F,0x025F,0x023F,0x021F,0x021F,0x01DF,0x01FF,0x01BF,0x01DF,0x01BE,0x019E,0x017D,0x019D,0x099D,0x097C,0x199C,0x0959,0x3ADD,0x53FF,0x441D,0x347D,0x24FC,0x3EBF,0x271F,0x173F,0x0F7F,0x0F9F,0x07BF,0x07BF,0x079F,0x079F,0x0F9F,0x179F,0x277F,0x373F,0x46DE,0x6EBF,0x85DD,0x7396,0x8273,0xAA94,0xBA34,0xCA34,0xCA13,0xD1F3,0xD1D3,0xD1F3,0xD1D3,0xD1F3,0xD1F3,0xCA14,0xCA14,0xC255,0xBA76,0xA235,0x60D0,0x58F0,0x5131,0x4951,0x4151,0x4151,0x3951,0x3971,0x3971,0x3171,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x2951,0x2931,0x2931,0x2931,0x2931,0x2132,0x2132,0x2152,0x2132,0x1932,0x1932,0x1932,0x1931,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2110,0x210F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2930,0x292F,0x2930,0x2930,0x210F,0x210F,0x292F,0x2930,0x292F,0x210F,0x210F,0x2930,0x2930,0x290F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2930,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x2910,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x210F,0x2930,0x2130,0x210F,0x210F,0x210F,0x2110,0x2130,0x2950,0x2130,0x1910,0x1910,0x1931,0x1911,0x1933,0x1154,0x1175,0x11D7,0x11D9,0x09D9,0x09B9,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D8,0x09D8,0x11B7,0x1195,0x1153,0x1112,0x1911,0x1911,0x2110,0x2130,0x2130,0x2950,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F, + 0x1912,0x1111,0x1932,0x1932,0x1932,0x1911,0x1911,0x1911,0x1911,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1111,0x1911,0x1911,0x1911,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1911,0x1111,0x1111,0x1911,0x1911,0x1912,0x1912,0x1912,0x1911,0x1912,0x1912,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1932,0x1932,0x1112,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1111,0x1911,0x1911,0x1911,0x1111,0x1111,0x10F1,0x1911,0x10F1,0x1911,0x1911,0x1911,0x1911,0x1911,0x10F1,0x1111,0x1911,0x1111,0x1911,0x1911,0x1911,0x1911,0x1111,0x1911,0x1111,0x1111,0x1911,0x1111,0x1911,0x1911,0x1111,0x1111,0x1111,0x1111,0x1911,0x1911,0x1911,0x1911,0x10F1,0x1911,0x10F1,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1910,0x2131,0x1931,0x1931,0x1951,0x1952,0x1132,0x1132,0x0933,0x0953,0x1195,0x19F7,0x1A17,0x2217,0x19B5,0x1154,0x1132,0x1112,0x1911,0x2131,0x2111,0x2110,0x2130,0x2130,0x2130,0x2930,0x2930,0x290F,0x210F,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x290F,0x210F,0x2910,0x290F,0x290F,0x290F,0x2930,0x2110,0x2930,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x2910,0x2930,0x2110,0x2110,0x2110,0x2930,0x2910,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x292F,0x210F,0x212F,0x290F,0x290F,0x210F,0x290F,0x2930,0x292F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2110,0x2910,0x290F,0x292F,0x290F,0x2930,0x2130,0x2130,0x2130,0x1930,0x1931,0x1132,0x1153,0x19B6,0x19D7,0x11D8,0x11B7,0x0997,0x0976,0x0955,0x0954,0x0934,0x0934,0x0955,0x11B6,0x19F8,0x19F8,0x19D7,0x1975,0x1913,0x1932,0x2131,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x292F,0x290E,0x290E,0x290F,0x290E,0x290E,0x290E,0x28EE,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x292F,0x210F,0x210F,0x292F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2910,0x2110,0x2930,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2930,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290E,0x292F,0x292F,0x290F,0x292F,0x28EE,0x28EE,0x28EE,0x28EE,0x28EE,0x28EE,0x290E,0x292F,0x292F,0x312F,0x290F,0x310F,0x290F,0x28EE,0x290F,0x310F,0x30EE,0x30EE,0x310E,0x310E,0x390E,0x390E,0x30ED,0x30CD,0x30AC,0x288C,0x286B,0x286B,0x284B,0x306B,0x304B,0x40AC,0x512E,0x69D0,0x7A32,0x9B15,0xBC18,0xD4BB,0xE53D,0xE53C,0xDD1C,0xDCDB,0xD4BA,0xD499,0xD499,0xD479,0xD478,0xDC79,0xE499,0xDC79,0xDC78,0xDC58,0xDC37,0xDC58,0xDC58,0xD478,0xD499,0xD4FA,0xC4B8,0xA456,0x9496,0x9538,0x8DDA,0x75FB,0x6E9C,0x56DD,0x471E,0x373D,0x275E,0x1F5E,0x177E,0x0FBF,0x0FBF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x079D,0x0F9D,0x177D,0x273C,0x3EFB,0x4E9A,0x5E19,0x5D36,0x5CB5,0x64B5,0x64F5,0x6DF8,0x5699,0x3ED8,0x2F18,0x16F7,0x0EF6,0x06F6,0x0716,0x0736,0x0736,0x0735,0x0715,0x0715,0x0714,0x0714,0x06F4,0x06F4,0x06F4,0x06F4,0x06F3,0x06D3,0x06D3,0x06D3,0x06D3,0x06D3,0x06B2,0x06B2,0x0692,0x0692,0x0672,0x0672,0x0672,0x0652,0x0653,0x0633,0x0633,0x0613,0x05F4,0x05F4,0x05D4,0x05B4,0x05B4,0x0595,0x0595,0x0576,0x0556,0x0557,0x0538,0x0519,0x04F9,0x04DA,0x04DB,0x04BB,0x049C,0x047C,0x047D,0x045D,0x045D,0x045D,0x043D,0x043E,0x041E,0x041E,0x041E,0x041E,0x03FE,0x03DE,0x03DF,0x03BF,0x03BF,0x03BF,0x03DF,0x03BF,0x03BF,0x039F,0x039F,0x037F,0x037F,0x037F,0x037F,0x035F,0x035F,0x033F,0x033F,0x033F,0x035F,0x033F,0x031F,0x031F,0x02FF,0x02DF,0x02DF,0x02DF,0x02DF,0x02BF,0x029F,0x029F,0x029F,0x027F,0x027F,0x025F,0x023F,0x021F,0x01FF,0x021F,0x01DF,0x01DF,0x01BE,0x01BE,0x01DF,0x01BE,0x01BE,0x019D,0x09BD,0x11BD,0x11BB,0x1199,0x437F,0x43FE,0x3C9E,0x24BC,0x2E3F,0x2EFF,0x171F,0x0F5F,0x0F9F,0x0F9F,0x0FBF,0x07BF,0x079F,0x0F9F,0x179F,0x1F9F,0x273E,0x371E,0x56DE,0x765E,0x84DA,0x6A93,0x8A53,0xB274,0xC254,0xCA34,0xC9D2,0xD1F3,0xC9D3,0xD1F4,0xD1D3,0xD1D3,0xC9F3,0xC9F4,0xC1F4,0xC235,0xB276,0x89B3,0x506E,0x5110,0x4931,0x4131,0x4151,0x3951,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x2931,0x2931,0x2931,0x2931,0x2931,0x2931,0x2131,0x2131,0x2152,0x2152,0x2152,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x2910,0x2930,0x2930,0x2930,0x212F,0x2930,0x2130,0x2130,0x2930,0x212F,0x292F,0x2930,0x2930,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2930,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x2930,0x212F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2130,0x212F,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1931,0x1933,0x1133,0x1155,0x11B7,0x11B8,0x09B9,0x09D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x09D9,0x09F8,0x11B7,0x1195,0x1954,0x10F2,0x1911,0x1911,0x18F0,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F, + 0x1133,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x1112,0x1112,0x1112,0x1112,0x1132,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1112,0x1112,0x1133,0x1133,0x1132,0x1112,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1132,0x1132,0x1133,0x1113,0x1133,0x1133,0x1132,0x1132,0x1133,0x1133,0x1133,0x1112,0x1133,0x1132,0x1132,0x1133,0x1133,0x1113,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1113,0x1133,0x1133,0x1133,0x1113,0x1133,0x1133,0x1132,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1153,0x1132,0x1132,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1952,0x1952,0x1132,0x0933,0x0953,0x1174,0x19D6,0x19F7,0x2237,0x19B5,0x1174,0x1133,0x1932,0x1911,0x2131,0x2111,0x2131,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2930,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x210F,0x2910,0x2910,0x290F,0x290F,0x210F,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2930,0x2910,0x2930,0x2910,0x2110,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2930,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2910,0x2930,0x2930,0x290F,0x2930,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1154,0x1196,0x19F8,0x11F8,0x11B8,0x0997,0x0977,0x0976,0x0955,0x0935,0x0135,0x0976,0x19F8,0x19F8,0x19F8,0x19B6,0x1134,0x1912,0x2132,0x2131,0x2130,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x292F,0x2930,0x292F,0x292F,0x210F,0x290F,0x292F,0x290F,0x28EE,0x28EE,0x28EE,0x28EE,0x28EE,0x28CD,0x28EE,0x28EE,0x28EE,0x28EE,0x28EE,0x28EE,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x20EE,0x20EE,0x20EE,0x20EE,0x210F,0x20EE,0x20EF,0x290F,0x20EF,0x20EF,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2930,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x312F,0x290F,0x290E,0x28EE,0x290E,0x28EE,0x28EE,0x28EE,0x28CE,0x28CE,0x28EE,0x28EE,0x290E,0x290E,0x290E,0x28ED,0x28CD,0x28AD,0x28AD,0x28CD,0x28AD,0x28AD,0x30CD,0x308C,0x30AC,0x306B,0x284A,0x2829,0x2009,0x2009,0x2829,0x38AB,0x596E,0x7A52,0x9B56,0xABF8,0xC47A,0xCCBB,0xD4DC,0xDCFC,0xDCFC,0xDCFB,0xDCFB,0xDCDA,0xDCDA,0xDCB9,0xD499,0xD499,0xD499,0xDC99,0xD478,0xDC78,0xD458,0xDC58,0xDC78,0xDC78,0xDC78,0xDC57,0xDC57,0xDC78,0xD498,0xD4D9,0xC4B8,0xA456,0x9456,0x94F8,0x8D79,0x7DDA,0x6E3B,0x5EBC,0x4EDD,0x3F1D,0x2F3E,0x1F5E,0x177E,0x0F9E,0x0FBF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07BE,0x07BE,0x07BD,0x077D,0x0F5C,0x273C,0x3EFB,0x4EBB,0x6639,0x6D98,0x6454,0x5BF2,0x7D16,0x75B7,0x6658,0x4ED8,0x36F8,0x1ED7,0x0ED6,0x06F6,0x0716,0x0736,0x0735,0x0735,0x0735,0x0734,0x0714,0x0714,0x0714,0x0714,0x0713,0x06F3,0x0713,0x06F2,0x06F2,0x06F2,0x06F2,0x06F2,0x06D1,0x06D1,0x06D1,0x06D1,0x06B1,0x06B1,0x0691,0x0691,0x0671,0x0671,0x0651,0x0651,0x0631,0x0632,0x0612,0x05F2,0x05F2,0x05D2,0x05B3,0x0594,0x0594,0x0555,0x0556,0x0516,0x0517,0x04F8,0x04D9,0x04B9,0x04BA,0x049B,0x047C,0x047C,0x045C,0x045D,0x043D,0x043D,0x041D,0x041D,0x03FE,0x03FE,0x03FE,0x03DE,0x03DE,0x03DF,0x03BF,0x03BF,0x03BF,0x039F,0x039F,0x039F,0x037F,0x037F,0x037F,0x037F,0x037F,0x035F,0x035F,0x035F,0x033F,0x033F,0x033F,0x033F,0x031F,0x02FF,0x02FF,0x02DF,0x02DF,0x02DF,0x02BF,0x02BF,0x029F,0x029F,0x027F,0x027F,0x025F,0x025F,0x023F,0x021F,0x021F,0x01FF,0x01FF,0x01DF,0x01BF,0x01BF,0x01DF,0x01BF,0x01BE,0x019E,0x017D,0x017D,0x09BC,0x017A,0x1A5B,0x43FF,0x343E,0x2CBD,0x153D,0x2EDF,0x1F1F,0x0F5F,0x0F7F,0x0F9F,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x179F,0x27BF,0x2F5F,0x46DE,0x66BF,0x85FE,0x6B75,0x7A73,0x9A54,0xBA74,0xC234,0xCA13,0xC9F3,0xD1F3,0xD1F3,0xD1D3,0xD1D3,0xD1F4,0xD1F4,0xCA14,0xC235,0xBA35,0xB276,0x7952,0x58F0,0x5131,0x4931,0x4151,0x4151,0x3971,0x3951,0x3971,0x3171,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3131,0x3131,0x2931,0x2931,0x2931,0x2931,0x2931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2930,0x2130,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x2930,0x2930,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2930,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2130,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1931,0x1931,0x1132,0x1153,0x1175,0x19D8,0x11F9,0x09D9,0x09D9,0x01DA,0x01BA,0x01DA,0x01FB,0x01DA,0x01DA,0x01FA,0x01FA,0x01D9,0x09D9,0x09D8,0x11B7,0x1996,0x1133,0x1912,0x1932,0x2111,0x2110,0x2110,0x2130,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F, + 0x1195,0x1196,0x11B6,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1196,0x1195,0x1195,0x1195,0x1196,0x1196,0x1195,0x1195,0x1196,0x1196,0x11B6,0x1195,0x1196,0x1195,0x11B6,0x1195,0x1196,0x11B6,0x1196,0x1196,0x11B6,0x1196,0x1196,0x1196,0x11B6,0x1196,0x1196,0x1196,0x1196,0x1195,0x1196,0x11B6,0x11B6,0x1195,0x11B6,0x11B6,0x11B6,0x1195,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x1195,0x1196,0x1196,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B5,0x11B6,0x11B6,0x11B6,0x1195,0x11B6,0x1195,0x11B6,0x1195,0x11B6,0x11B6,0x19B6,0x11B5,0x11B6,0x11B6,0x11B5,0x1195,0x11B6,0x1195,0x1195,0x1196,0x1196,0x1196,0x1196,0x1196,0x1196,0x1196,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1196,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x11B6,0x11B6,0x1196,0x1195,0x11B6,0x11B6,0x1196,0x11B6,0x11B5,0x11B6,0x1196,0x11B6,0x11B6,0x11B6,0x1195,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x19B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x19D6,0x11D6,0x19B6,0x19B6,0x19D6,0x11B6,0x11B6,0x19B6,0x11B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19D6,0x19B6,0x19B5,0x1995,0x1174,0x1153,0x1133,0x1132,0x1932,0x1931,0x1931,0x1931,0x1931,0x2152,0x2172,0x1972,0x1132,0x1132,0x1153,0x1195,0x19D6,0x2237,0x2217,0x19B5,0x1174,0x1153,0x1932,0x1911,0x2111,0x2110,0x2131,0x2130,0x2110,0x2130,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2930,0x212F,0x212F,0x210F,0x2910,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2910,0x2910,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x210F,0x210F,0x290F,0x2930,0x2910,0x290F,0x290F,0x2930,0x290F,0x292F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2930,0x2930,0x2930,0x292F,0x292F,0x212F,0x210F,0x2130,0x2150,0x1931,0x1111,0x1132,0x1154,0x1196,0x19F8,0x11F8,0x11D8,0x0997,0x0977,0x0976,0x0956,0x0956,0x0996,0x11F8,0x1A18,0x19F8,0x21F8,0x1995,0x1133,0x1912,0x2111,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x2930,0x2930,0x210F,0x292F,0x292F,0x292F,0x2930,0x2930,0x292F,0x290F,0x28EE,0x20CE,0x20AD,0x208C,0x206C,0x206C,0x206C,0x206C,0x288C,0x288C,0x208C,0x288C,0x288C,0x28AC,0x28CD,0x28CD,0x28AD,0x28ED,0x28CD,0x28EE,0x28ED,0x290E,0x28EE,0x28EE,0x290E,0x290E,0x290E,0x28EE,0x28EE,0x290F,0x28EE,0x20EE,0x20EE,0x210F,0x20EF,0x20EF,0x20EF,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x20EF,0x210F,0x290F,0x210F,0x20EF,0x290F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x28EE,0x290E,0x290F,0x28EE,0x290F,0x28EE,0x28EE,0x28EE,0x28CD,0x28CE,0x28CE,0x28CD,0x28CD,0x28CD,0x28CD,0x30EE,0x30EE,0x30ED,0x310D,0x28ED,0x28AC,0x208B,0x206B,0x202A,0x202A,0x282A,0x280A,0x200A,0x282A,0x302A,0x386A,0x40AB,0x512D,0x7210,0x92D3,0xABB6,0xCC79,0xD4FB,0xDD1B,0xE51C,0xDCFB,0xDCDA,0xD4BA,0xD49A,0xD499,0xD479,0xD499,0xD499,0xD499,0xDCB9,0xDC99,0xDC99,0xD478,0xDC78,0xD478,0xDC78,0xD458,0xD458,0xDC58,0xDC78,0xD437,0xD437,0xD457,0xD477,0xDC98,0xDCB8,0xD4D9,0xC4B8,0xAC76,0x9C76,0x94D7,0x8D79,0x85DA,0x765C,0x667C,0x56DD,0x46FD,0x375E,0x275E,0x1F7E,0x179E,0x0FBE,0x0FDF,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DE,0x07DE,0x07BE,0x07BE,0x07BE,0x07BE,0x07BE,0x07BE,0x07BE,0x077D,0x077C,0x0F5C,0x1F3C,0x371B,0x4EDB,0x665A,0x6D98,0x74B6,0x6392,0x7C75,0x8577,0x7618,0x5E78,0x46B8,0x26B6,0x16B6,0x0EF6,0x0F36,0x0756,0x0756,0x0755,0x0734,0x0734,0x0734,0x0734,0x0733,0x0733,0x0733,0x0733,0x0732,0x0732,0x0732,0x0732,0x0711,0x0711,0x0710,0x0710,0x0710,0x0710,0x070F,0x06EF,0x06F0,0x06EF,0x06CF,0x06CF,0x06AF,0x068F,0x068F,0x066F,0x0650,0x0650,0x0630,0x0630,0x05F1,0x05D1,0x05B1,0x0592,0x0573,0x0554,0x0535,0x0516,0x04F7,0x04D8,0x04D9,0x0499,0x049A,0x047B,0x047B,0x045C,0x045C,0x043D,0x041D,0x041D,0x041D,0x03FE,0x03FE,0x03FE,0x03DE,0x03DF,0x03BF,0x03BF,0x03BF,0x03BF,0x039F,0x039F,0x037F,0x037F,0x037F,0x035F,0x035F,0x035F,0x035F,0x035F,0x033F,0x033F,0x033F,0x031F,0x031F,0x02FF,0x02FF,0x02DF,0x02DF,0x02DF,0x02BF,0x029F,0x029F,0x027F,0x027F,0x027F,0x025F,0x025F,0x023F,0x023F,0x01FF,0x01FF,0x01FF,0x01DF,0x01DF,0x01BF,0x01BE,0x01BE,0x019E,0x019E,0x019E,0x019D,0x09BD,0x09BC,0x01BA,0x1ADD,0x2BFE,0x249E,0x0CDD,0x15DE,0x1F1F,0x0F1F,0x0F5F,0x0F9F,0x0FBF,0x07BF,0x07BF,0x07BF,0x079F,0x0F9F,0x17BF,0x277F,0x371E,0x4EDE,0x767E,0x7D1B,0x62D4,0x8253,0xA233,0xBA34,0xCA34,0xC9F3,0xD214,0xD1F3,0xD1D3,0xD1D3,0xC9D3,0xC9F3,0xCA14,0xCA14,0xBA14,0xB235,0xAA56,0x60AF,0x5911,0x5151,0x4130,0x4151,0x3951,0x3971,0x3971,0x3171,0x3171,0x3171,0x3151,0x3151,0x3131,0x3131,0x3131,0x2930,0x2930,0x2931,0x2931,0x2931,0x2931,0x2951,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x292F,0x2930,0x292F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x290F,0x2910,0x2910,0x2930,0x2930,0x2930,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2930,0x2130,0x2930,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x212F,0x290F,0x290F,0x290F,0x292F,0x292F,0x2930,0x290F,0x290F,0x2110,0x2110,0x2930,0x2910,0x290F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2130,0x2930,0x212F,0x210F,0x210F,0x2110,0x2930,0x2110,0x210F,0x2110,0x2930,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x2930,0x2110,0x2930,0x212F,0x212F,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x290F,0x210F,0x2110,0x210F,0x2130,0x212F,0x212F,0x2930,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1112,0x1153,0x1195,0x11D8,0x11F9,0x09D9,0x0199,0x01B9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01B9,0x01D9,0x09D8,0x09D8,0x11B7,0x1175,0x1133,0x1912,0x1911,0x2111,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F, + 0x1A18,0x1A18,0x1A18,0x19F8,0x2218,0x1A18,0x1A18,0x2218,0x2238,0x1A18,0x2239,0x1A18,0x2238,0x1A38,0x1A39,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x1A39,0x2239,0x2239,0x2219,0x2219,0x2239,0x2239,0x1A18,0x2239,0x2239,0x1A38,0x2239,0x1A18,0x1A18,0x1A18,0x2238,0x1A38,0x1A38,0x1A38,0x2238,0x1A38,0x1A38,0x1A18,0x1A18,0x1A18,0x1A38,0x1A18,0x1A18,0x1A18,0x1A38,0x1A18,0x2238,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x2238,0x1A38,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x2218,0x2238,0x1A18,0x2238,0x2218,0x2238,0x2238,0x2238,0x1A18,0x2238,0x2218,0x1A18,0x1A18,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x2218,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x2238,0x1A18,0x1A18,0x1A18,0x1A18,0x2238,0x1A38,0x1A18,0x1A38,0x1A18,0x1A18,0x1A18,0x2238,0x2238,0x1A18,0x1A18,0x2239,0x2238,0x2239,0x2238,0x2239,0x2239,0x2239,0x2239,0x2239,0x1A18,0x2238,0x1A38,0x2238,0x1A18,0x2238,0x2238,0x2238,0x1A18,0x1A18,0x1A18,0x1A18,0x2238,0x2238,0x2218,0x2238,0x2238,0x2238,0x2238,0x2238,0x2217,0x19F6,0x1995,0x1133,0x1132,0x1932,0x1932,0x1931,0x1931,0x2131,0x2972,0x1952,0x1932,0x1132,0x1133,0x1153,0x1195,0x19D6,0x2217,0x2217,0x19B5,0x1174,0x1953,0x1912,0x1912,0x2131,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x2130,0x212F,0x2930,0x210F,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x290F,0x210F,0x292F,0x290F,0x2930,0x2930,0x290F,0x2910,0x2910,0x2930,0x2930,0x290F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2930,0x2910,0x292F,0x292F,0x2930,0x2130,0x2130,0x2131,0x1931,0x1132,0x1133,0x0954,0x1196,0x11D8,0x11D8,0x11D8,0x11B8,0x0997,0x0997,0x11B7,0x11D7,0x11F8,0x1A18,0x1A18,0x2218,0x19B6,0x1134,0x1112,0x1911,0x2111,0x2130,0x2930,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2910,0x2930,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x292F,0x292F,0x290F,0x2930,0x292F,0x292F,0x290F,0x28EF,0x20CE,0x188C,0x20AC,0x208B,0x184B,0x202A,0x202A,0x204B,0x202A,0x204B,0x284B,0x204A,0x202A,0x204A,0x204B,0x288B,0x30AC,0x30AC,0x28AC,0x28AC,0x28AC,0x28CC,0x28AC,0x28CD,0x28CD,0x28AD,0x28ED,0x28ED,0x28CD,0x28CD,0x28EE,0x28CD,0x20CD,0x20CD,0x28CE,0x20CE,0x20CD,0x20CE,0x28EE,0x20CE,0x20CE,0x20CE,0x28CE,0x28CE,0x20CE,0x20CE,0x20CE,0x20CE,0x20AD,0x20CD,0x20CE,0x20CE,0x20CE,0x28EE,0x20CE,0x20CE,0x20CE,0x28CE,0x28CE,0x28CE,0x28CD,0x20AD,0x20AD,0x28CD,0x28CD,0x28CD,0x28CE,0x28AD,0x28AD,0x288C,0x288C,0x28AC,0x30AD,0x30CD,0x30CD,0x288C,0x30AC,0x308C,0x286B,0x286B,0x202A,0x1809,0x1808,0x1808,0x1808,0x2008,0x2829,0x40CC,0x598F,0x7A72,0x9B36,0xABB7,0xBC59,0xCCBB,0xDCFC,0xDCFC,0xDCFB,0xDCFB,0xDCDA,0xDCDA,0xDCDA,0xDCB9,0xDCB9,0xDC99,0xDC99,0xDC99,0xDC99,0xDC99,0xDC78,0xDC78,0xDC79,0xDC99,0xDC98,0xDC78,0xDC78,0xDC78,0xD457,0xD457,0xD457,0xDC78,0xD457,0xD457,0xD458,0xD478,0xD477,0xD497,0xD4B8,0xD4D8,0xC497,0xAC56,0x9C35,0x94B6,0x8D18,0x85DA,0x7E3B,0x6E7C,0x5EBD,0x4EFD,0x3F1E,0x2F5E,0x1F7E,0x179E,0x0F9E,0x0FBE,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x0FDF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DE,0x07BE,0x07BE,0x079E,0x079E,0x079E,0x079E,0x079E,0x079D,0x079D,0x077D,0x0F5C,0x1F5C,0x2F3C,0x46FB,0x563A,0x6D78,0x7CB6,0x7BF4,0x7BD3,0x84D6,0x7D97,0x6E38,0x5698,0x36B7,0x1EB6,0x16F6,0x0F36,0x0F56,0x0755,0x0755,0x0754,0x0754,0x0754,0x0753,0x0753,0x0753,0x0753,0x0732,0x0732,0x0752,0x0751,0x0751,0x0731,0x0730,0x0730,0x072F,0x072F,0x072E,0x072E,0x072E,0x072E,0x070E,0x070E,0x070E,0x06EE,0x06EE,0x06CE,0x06CE,0x06AE,0x06AE,0x068E,0x066E,0x064F,0x062F,0x060F,0x05D0,0x05B0,0x0591,0x0572,0x0553,0x0534,0x04F5,0x04F6,0x04D7,0x04B8,0x0499,0x047A,0x047A,0x045B,0x045B,0x043C,0x041C,0x041C,0x03FD,0x03FD,0x03DD,0x03DE,0x03DE,0x03BE,0x03BF,0x03BF,0x039F,0x039F,0x037F,0x037F,0x037F,0x037F,0x035F,0x035F,0x035F,0x035F,0x033F,0x033F,0x033F,0x031F,0x031F,0x031F,0x02FF,0x02FF,0x02DF,0x02DF,0x02BF,0x029F,0x029F,0x027F,0x029F,0x027F,0x027F,0x025F,0x025F,0x023F,0x023F,0x01FF,0x01FF,0x01FF,0x01DF,0x01DF,0x01BF,0x01BF,0x019E,0x01BF,0x01BF,0x019E,0x01BE,0x017D,0x019D,0x017B,0x01FB,0x1B3D,0x1C1E,0x14FF,0x0D5E,0x169F,0x173F,0x0F5F,0x0F7F,0x0FBF,0x07BF,0x07BF,0x07BF,0x07BF,0x0FBF,0x0F9F,0x1F9F,0x273E,0x3EFE,0x5E9E,0x7E1E,0x7C59,0x7293,0x9A94,0xB254,0xC234,0xCA14,0xD1F3,0xD1D3,0xD1F4,0xD1D3,0xD1D3,0xD1F4,0xC9F4,0xC9F4,0xC214,0xBA14,0xB255,0x91F4,0x58AF,0x5931,0x4931,0x4151,0x3951,0x3951,0x3971,0x3171,0x3171,0x3171,0x3151,0x3171,0x3151,0x3131,0x3131,0x3131,0x3131,0x2931,0x2930,0x2930,0x2930,0x2110,0x2130,0x2130,0x2110,0x2130,0x210F,0x292F,0x292F,0x292F,0x2930,0x290F,0x290F,0x2910,0x290F,0x2910,0x2910,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2910,0x2910,0x2930,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x212F,0x210F,0x2930,0x2130,0x2110,0x2110,0x2130,0x212F,0x290F,0x290F,0x2110,0x2110,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2930,0x2110,0x2110,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2130,0x210F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x20EF,0x210F,0x2110,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x212F,0x212F,0x2110,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x2130,0x2110,0x210F,0x2930,0x2110,0x2110,0x2110,0x212F,0x212F,0x210F,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2130,0x212F,0x212F,0x2930,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1132,0x0933,0x11B6,0x11D8,0x11D8,0x09D9,0x09DA,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01B9,0x01D9,0x01D9,0x01B8,0x09B8,0x11B7,0x1996,0x1133,0x1112,0x1911,0x2111,0x2130,0x2110,0x2130,0x2130,0x210F,0x2130,0x210F, + 0x1A18,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x1A18,0x2218,0x2218,0x2218,0x2238,0x2238,0x1A18,0x1A18,0x1A18,0x2218,0x2219,0x19F8,0x2239,0x1A18,0x2219,0x2219,0x2218,0x2218,0x2219,0x2219,0x2218,0x19F8,0x1A18,0x2218,0x1A18,0x2218,0x2218,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A17,0x1A18,0x19F7,0x19F7,0x19D7,0x19F7,0x19F7,0x19F7,0x19F8,0x19F8,0x19F8,0x19F8,0x19F7,0x19F8,0x19F8,0x19F7,0x19F7,0x1A17,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x1A18,0x2218,0x19F7,0x19F7,0x1A18,0x19F7,0x19F7,0x19F8,0x19F7,0x19F7,0x19F8,0x19F8,0x19F7,0x1A18,0x19F7,0x19F7,0x1A18,0x19F8,0x1A18,0x1A18,0x19F8,0x19F8,0x1A18,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x19F8,0x1A18,0x19F8,0x19F8,0x19F8,0x19F8,0x1A18,0x19F8,0x1A18,0x1A18,0x1A18,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x1A18,0x19F7,0x19F8,0x19F7,0x19F7,0x19F8,0x19F7,0x19F8,0x19F7,0x19F7,0x1A17,0x1A17,0x19F7,0x2218,0x19B6,0x19B6,0x19D7,0x19F7,0x2238,0x1A17,0x19F7,0x19F7,0x19D6,0x1154,0x1112,0x1132,0x1911,0x1911,0x2111,0x2131,0x2131,0x2132,0x1932,0x1132,0x1153,0x1153,0x1174,0x19D6,0x2217,0x2217,0x1995,0x1174,0x1954,0x1932,0x1932,0x2111,0x2131,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910,0x2930,0x2930,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2130,0x2130,0x2910,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x290F,0x210F,0x2110,0x2110,0x2130,0x1951,0x1952,0x1132,0x1133,0x0954,0x11B6,0x19F8,0x11D8,0x09B8,0x11D8,0x09B7,0x11B7,0x11D7,0x19F8,0x1A18,0x2239,0x2238,0x19B6,0x1154,0x1112,0x1911,0x2131,0x2131,0x2130,0x2110,0x210F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x292F,0x292F,0x2930,0x2930,0x292F,0x290F,0x290F,0x290F,0x28EE,0x8BD9,0xCDBF,0xD5FF,0xBD3D,0xAC9B,0xA45A,0x93B8,0x9BB8,0x8B36,0x7293,0x6A32,0x6A32,0x59B0,0x59AF,0x494E,0x40EC,0x38CC,0x308B,0x30AB,0x286A,0x286B,0x284A,0x286B,0x284A,0x284A,0x286A,0x286B,0x202A,0x204B,0x202A,0x182A,0x182A,0x180A,0x180A,0x180A,0x182A,0x182B,0x204B,0x182B,0x204B,0x204B,0x202B,0x202B,0x204B,0x204B,0x184B,0x184B,0x182B,0x182B,0x204B,0x204B,0x202B,0x204B,0x204B,0x202B,0x202B,0x200A,0x180A,0x180A,0x1809,0x1809,0x1809,0x1809,0x1809,0x200A,0x200A,0x200A,0x2009,0x200A,0x2009,0x284A,0x306B,0x308B,0x38AC,0x40CC,0x410D,0x514E,0x598F,0x69F0,0x7A72,0x8B14,0xA3B6,0xB459,0xCCFB,0xDD5C,0xE59D,0xE59E,0xE59D,0xE57D,0xE53C,0xDD1C,0xDCDB,0xD49A,0xD499,0xD479,0xDC79,0xDC79,0xDC78,0xDC78,0xDC98,0xDC78,0xE499,0xDC78,0xE498,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC58,0xDC58,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xD457,0xD457,0xD457,0xD457,0xD477,0xD498,0xD4B8,0xCCD8,0xC4B8,0xAC77,0x9C76,0x94B7,0x9559,0x8DBA,0x865C,0x767C,0x66BD,0x4EDD,0x3F1E,0x373E,0x277E,0x1F7E,0x179E,0x17BE,0x0FDF,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x0FBF,0x0FBF,0x0FBF,0x0F9F,0x0FBF,0x0FBF,0x0FBF,0x07BF,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BE,0x07BE,0x07BE,0x07BE,0x077D,0x077D,0x079D,0x079D,0x07BE,0x079D,0x079D,0x077D,0x0F7C,0x175C,0x275C,0x3EFB,0x565A,0x6578,0x84F7,0x9496,0x83B3,0x73B2,0x84F6,0x75D8,0x5E38,0x46B8,0x2696,0x1EF6,0x1736,0x0F56,0x0735,0x0755,0x0775,0x0774,0x0774,0x0774,0x0753,0x0753,0x0773,0x0772,0x0772,0x0772,0x0771,0x0771,0x0770,0x0750,0x076F,0x074F,0x076F,0x076E,0x074D,0x074D,0x074D,0x074D,0x074D,0x074D,0x074E,0x074D,0x074D,0x072D,0x072D,0x070D,0x070D,0x070D,0x06EE,0x0EEE,0x0ECF,0x068F,0x064F,0x060F,0x05CF,0x0590,0x0571,0x0552,0x0533,0x0514,0x04D5,0x04B6,0x04B7,0x0498,0x0479,0x045A,0x045A,0x043B,0x043B,0x041C,0x03FC,0x03FD,0x03DD,0x03DE,0x03BE,0x03BE,0x03BE,0x039F,0x039F,0x039F,0x037F,0x037F,0x035F,0x035F,0x033F,0x035F,0x033F,0x033F,0x031F,0x033F,0x031F,0x031F,0x02FF,0x02FF,0x02FF,0x02DF,0x02DF,0x02BF,0x029F,0x029F,0x027F,0x027F,0x027F,0x027F,0x023F,0x023F,0x025F,0x023F,0x023F,0x01FF,0x01DF,0x01DF,0x01BF,0x01DF,0x01BF,0x01BF,0x01BF,0x019E,0x01BF,0x019E,0x01DE,0x01BE,0x019C,0x019B,0x025B,0x13BE,0x0C7E,0x0D3E,0x05DE,0x16BF,0x173F,0x0F7F,0x0F9F,0x0FBF,0x0FDF,0x07BF,0x07DF,0x07BF,0x079E,0x179F,0x277F,0x2F1E,0x46DE,0x665D,0x85BD,0x6314,0x8AB4,0xAA74,0xBA34,0xCA14,0xC1B2,0xC9D3,0xD1D3,0xD1D3,0xD1B3,0xD1F4,0xC9D3,0xC9D3,0xCA14,0xC215,0xBA35,0xBAB7,0x68F0,0x58CF,0x5972,0x4951,0x4151,0x3951,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3131,0x3131,0x3151,0x3131,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x212F,0x2930,0x292F,0x290F,0x2910,0x290F,0x290F,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2930,0x2110,0x2110,0x2110,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x210F,0x290F,0x2930,0x290F,0x2930,0x290F,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2110,0x210F,0x210F,0x2110,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x2110,0x2110,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2110,0x2110,0x2130,0x210F,0x2130,0x2930,0x212F,0x2930,0x2930,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2910,0x290F,0x2930,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x212F,0x2950,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1133,0x1175,0x11B7,0x11F9,0x09D9,0x09FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01FA,0x01F9,0x09D9,0x11F8,0x11B7,0x1195,0x1133,0x10F1,0x1911,0x2111,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F, + 0x1175,0x1175,0x1175,0x1996,0x1195,0x19B6,0x1996,0x1996,0x1196,0x1196,0x1996,0x1196,0x11B6,0x11B6,0x19B6,0x19B6,0x19B6,0x1996,0x1996,0x19B6,0x11B6,0x19B6,0x19B6,0x19B6,0x1996,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x1996,0x1996,0x1996,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B5,0x19B6,0x19B6,0x19B5,0x19B5,0x19B5,0x19B5,0x1195,0x19B6,0x1196,0x19B6,0x11B6,0x1195,0x19B6,0x19D6,0x1995,0x19B5,0x1996,0x19B6,0x19B6,0x1195,0x19B6,0x19B6,0x1196,0x19B6,0x1195,0x19B5,0x19B5,0x19B5,0x1995,0x1995,0x19B5,0x19B5,0x1995,0x19B5,0x1995,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x1195,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x11B6,0x19B6,0x11B6,0x11B6,0x11B6,0x11B6,0x1196,0x19B6,0x11B6,0x1196,0x19B6,0x1196,0x1196,0x19B6,0x1996,0x1195,0x1196,0x19B6,0x19B6,0x19B6,0x1196,0x1196,0x19B6,0x1996,0x1996,0x19B6,0x1196,0x1196,0x11B6,0x19B6,0x1195,0x19B6,0x1196,0x1196,0x1196,0x1196,0x1196,0x1195,0x1996,0x1996,0x1196,0x1196,0x1196,0x1196,0x1195,0x1995,0x1995,0x1995,0x1195,0x1196,0x1196,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1175,0x1175,0x1975,0x1154,0x1175,0x1195,0x19D6,0x19F7,0x2218,0x19F7,0x19F6,0x1174,0x0912,0x1112,0x1932,0x2131,0x2111,0x2131,0x2131,0x1931,0x1952,0x1132,0x1133,0x1174,0x1174,0x19D6,0x2218,0x2217,0x1195,0x1175,0x1954,0x1912,0x1912,0x2111,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x212F,0x210F,0x290F,0x2930,0x290F,0x2930,0x2930,0x2930,0x210F,0x2910,0x2910,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2930,0x2930,0x2910,0x2910,0x2110,0x210F,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x2930,0x2930,0x210F,0x212F,0x2130,0x212F,0x210F,0x212F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2930,0x2130,0x2130,0x2151,0x1951,0x1132,0x1133,0x1154,0x0975,0x11D7,0x11F8,0x11D8,0x11B7,0x11B7,0x11D7,0x11D7,0x11B6,0x19F7,0x19D7,0x19D6,0x19B5,0x1974,0x1133,0x1911,0x1911,0x2131,0x2130,0x2110,0x2130,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x2910,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2930,0x292F,0x292F,0x2930,0x2930,0x292F,0x290F,0x290F,0x20EE,0x20CE,0x8398,0xEE9F,0xE65F,0xE65F,0xE61F,0xD59E,0xCD5E,0xC4FC,0xC4BB,0xC4DC,0xC4DB,0xCCFC,0xC4BB,0xCCDB,0xC49A,0xBC9A,0xB459,0xB439,0xABF8,0xA3D7,0xA3B7,0x9B96,0x9355,0x9356,0x9335,0x9376,0x8B35,0x9355,0x82D4,0x7A93,0x6A11,0x61D0,0x514E,0x410D,0x38AC,0x388B,0x304A,0x284A,0x2829,0x282A,0x2829,0x2829,0x2809,0x2809,0x2809,0x2009,0x2009,0x2809,0x2809,0x282A,0x282A,0x282A,0x282A,0x304A,0x304A,0x304A,0x306A,0x388B,0x40AB,0x40AB,0x40EC,0x596E,0x6A31,0x82D4,0x8B15,0x9B77,0x9B97,0x9B97,0xA3B7,0xABD8,0xBC59,0xCCDB,0xCCFC,0xD53D,0xDD3D,0xD53D,0xDD3D,0xDD5D,0xE57D,0xE55D,0xDD3C,0xDD3C,0xDD1B,0xDD1B,0xDCFA,0xDCFA,0xD4DA,0xD4B9,0xDCB9,0xDCB9,0xDC99,0xD478,0xDC79,0xDC79,0xDC79,0xDC78,0xDC58,0xDC78,0xDC78,0xDC57,0xDC78,0xDC58,0xDC58,0xE478,0xDC57,0xE458,0xE458,0xE458,0xE457,0xE458,0xDC37,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xD457,0xD477,0xD498,0xCCB8,0xCCD9,0xC4D8,0xAC97,0x9C96,0x94D7,0x9538,0x8DBA,0x861B,0x765C,0x669C,0x56BC,0x46FD,0x371E,0x2F5E,0x1F7E,0x1F9E,0x179E,0x0F9E,0x0FBE,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x0FBF,0x0FBF,0x179F,0x0F7E,0x179F,0x1F9F,0x1F7E,0x179F,0x17BF,0x17BF,0x0FBF,0x0FBF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BE,0x07BE,0x07BE,0x07BE,0x079D,0x079E,0x079D,0x07BE,0x07BD,0x079D,0x079D,0x079D,0x077C,0x175C,0x1F5C,0x371C,0x569B,0x6DD9,0x84D6,0x9476,0x93F4,0x7B92,0x8454,0x8577,0x65B7,0x5E98,0x3ED8,0x2717,0x1716,0x0F36,0x0755,0x0775,0x0775,0x0775,0x0774,0x0774,0x0773,0x0773,0x0772,0x0772,0x0772,0x0792,0x0771,0x0771,0x0770,0x0770,0x076F,0x076F,0x078E,0x076E,0x076D,0x076D,0x076D,0x076D,0x076D,0x076C,0x076D,0x074C,0x076C,0x076C,0x074C,0x074C,0x074C,0x074C,0x072C,0x072D,0x072D,0x0F0D,0x0EEE,0x0ECE,0x0EAE,0x064E,0x060F,0x05CF,0x0590,0x0571,0x0532,0x0513,0x04F4,0x04D5,0x0496,0x0477,0x0478,0x0459,0x0439,0x041A,0x041B,0x03FC,0x03DC,0x03DD,0x03BD,0x03BE,0x039E,0x039E,0x039E,0x037F,0x037F,0x035F,0x035F,0x035F,0x033F,0x033F,0x033F,0x033F,0x033F,0x031F,0x031F,0x02FF,0x02FF,0x02DF,0x02FF,0x02DF,0x02BF,0x02BF,0x029F,0x029F,0x027F,0x027F,0x027F,0x027F,0x025F,0x023F,0x023F,0x023F,0x021F,0x01FF,0x01FF,0x01DF,0x01DF,0x01DF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x019E,0x01BE,0x01BD,0x019C,0x01FB,0x02FD,0x0BFE,0x0CDE,0x057F,0x061F,0x16FF,0x175F,0x0F7F,0x0F9F,0x07BF,0x07BF,0x07BF,0x07BF,0x0FBF,0x0F9F,0x1F9F,0x275F,0x3F1E,0x569E,0x7E5E,0x7CBA,0x7293,0x9A74,0xB254,0xC214,0xC9F3,0xC9D3,0xD1D3,0xD1B3,0xD9F4,0xD1B3,0xD1D3,0xC9D4,0xCA14,0xC214,0xBA14,0xBA55,0xA215,0x60AF,0x5931,0x5151,0x4151,0x3951,0x3951,0x3971,0x3171,0x3151,0x3151,0x3171,0x3131,0x3131,0x3131,0x3151,0x3131,0x3151,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x290F,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x212F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x210F,0x210F,0x2910,0x2910,0x2910,0x290F,0x210F,0x2910,0x2930,0x290F,0x2930,0x290F,0x2930,0x210F,0x212F,0x2130,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2130,0x210F,0x2110,0x210F,0x212F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2910,0x2110,0x2930,0x2910,0x2910,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x210F,0x2930,0x2130,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x210F,0x2930,0x2930,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x212F,0x210F,0x2110,0x2130,0x210F,0x2130,0x2130,0x2110,0x210F,0x2130,0x2110,0x2110,0x2130,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x212F,0x212F,0x2130,0x210F,0x210F,0x2110,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x2110,0x2930,0x210F,0x210F,0x2110,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1931,0x1112,0x1133,0x1196,0x11B7,0x1219,0x09D9,0x01D9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x09D9,0x11D8,0x11D7,0x1995,0x1133,0x1912,0x1911,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110, + 0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x1133,0x1133,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1933,0x1133,0x1133,0x1112,0x1133,0x1133,0x1133,0x1133,0x1113,0x1113,0x1133,0x1133,0x1933,0x1933,0x1112,0x1133,0x1113,0x1113,0x1933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1953,0x1133,0x1132,0x1953,0x1132,0x1132,0x1132,0x1132,0x1153,0x1153,0x1973,0x1153,0x1153,0x1953,0x1153,0x1153,0x1153,0x1133,0x1953,0x1953,0x1933,0x1933,0x1933,0x1953,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1152,0x1953,0x1953,0x1153,0x1133,0x1953,0x1133,0x1133,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1153,0x1133,0x1133,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1133,0x1133,0x1953,0x1133,0x1133,0x1153,0x1133,0x1953,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1112,0x1133,0x1133,0x1133,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1133,0x1153,0x1133,0x1953,0x1133,0x1153,0x1133,0x1133,0x1154,0x1195,0x19F7,0x2238,0x1A17,0x19F6,0x1194,0x1133,0x1112,0x1911,0x2131,0x2152,0x2152,0x2151,0x1931,0x1911,0x1932,0x1953,0x1153,0x0954,0x19B6,0x2238,0x2218,0x1175,0x1975,0x1113,0x1912,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x292F,0x292F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2110,0x2910,0x2930,0x2930,0x2930,0x2930,0x2110,0x2910,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2930,0x2110,0x2110,0x2110,0x2910,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x210F,0x292F,0x290F,0x290F,0x2930,0x2930,0x210F,0x2130,0x2930,0x2130,0x2130,0x2130,0x210F,0x212F,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x1931,0x1931,0x1931,0x1153,0x1153,0x1175,0x19D7,0x1A39,0x1A18,0x11B7,0x0976,0x11B6,0x11B6,0x1195,0x1195,0x1154,0x1153,0x1133,0x1132,0x1952,0x1932,0x1911,0x1910,0x2130,0x2110,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x2930,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x2930,0x2930,0x292F,0x292F,0x290F,0x20EF,0x20EE,0x208C,0x5A32,0xAC7B,0xDDFF,0xDDDF,0xCD3D,0xCD3D,0xCCFC,0xCCFC,0xC49A,0xC49A,0xCCDB,0xCCDB,0xCCBA,0xCCBA,0xCCBA,0xCCBA,0xCCBA,0xCC9A,0xD4DA,0xD4DA,0xDCFB,0xDCFB,0xDD1C,0xD4FB,0xDD3C,0xE53C,0xDD3C,0xE53C,0xE53C,0xE55D,0xE57D,0xE57D,0xE57D,0xED7D,0xE55D,0xE57D,0xE57D,0xE55D,0xE57D,0xE57D,0xE57D,0xE57D,0xE57D,0xE57D,0xE57D,0xDD5D,0xE55D,0xDD3C,0xE55D,0xDD3C,0xE55D,0xDD5C,0xE55D,0xDD3C,0xE55D,0xDD3C,0xE55D,0xE55D,0xE57D,0xE55D,0xE55C,0xE55C,0xDD3C,0xDD3C,0xDD1C,0xDCFB,0xDD1B,0xD4DA,0xD4BA,0xD4BA,0xCC99,0xD499,0xD499,0xCC79,0xD499,0xD499,0xCC79,0xD479,0xD478,0xD479,0xD499,0xD499,0xD499,0xD499,0xDC99,0xD498,0xDC99,0xD478,0xDC99,0xDC78,0xDC78,0xDC78,0xDC78,0xDC58,0xE478,0xDC57,0xDC57,0xDC57,0xDC57,0xE477,0xDC57,0xDC57,0xDC57,0xE457,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xD457,0xDC77,0xDC98,0xDCB8,0xD4B8,0xC4B8,0xAC97,0x9C97,0x9D18,0x9DBA,0x8DDA,0x863B,0x765B,0x667C,0x5EBD,0x4EDD,0x3EFD,0x375E,0x275E,0x1F7E,0x179E,0x179E,0x0FBE,0x0FBE,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x0FBF,0x0F9F,0x179F,0x1F7F,0x277F,0x275E,0x273E,0x379F,0x2F5E,0x277E,0x1F7E,0x179F,0x0F9F,0x0FBF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DE,0x07BE,0x07BE,0x07BE,0x079E,0x07BD,0x07BD,0x07BD,0x079D,0x079D,0x079D,0x077C,0x0F7C,0x1F5C,0x371C,0x4EBB,0x6DFA,0x84D7,0x8C15,0xA476,0x8BB3,0x83B3,0x8CF6,0x7556,0x6638,0x4EF9,0x2F17,0x16F6,0x0F36,0x0755,0x0775,0x0775,0x0775,0x0794,0x0794,0x0773,0x0773,0x0773,0x0772,0x0792,0x0791,0x0791,0x0791,0x0790,0x0790,0x078F,0x078F,0x078E,0x078E,0x078D,0x078D,0x078D,0x078D,0x076C,0x078C,0x078C,0x078C,0x076C,0x078C,0x076B,0x076B,0x076B,0x076B,0x074B,0x074B,0x074B,0x074B,0x0F4C,0x0F4C,0x0F2C,0x0F2D,0x0F0E,0x0EEE,0x0EAE,0x064E,0x05EF,0x05B0,0x0570,0x0511,0x04D3,0x0494,0x0475,0x0456,0x0437,0x0418,0x0419,0x03FA,0x03FB,0x03DC,0x03BC,0x03BD,0x039D,0x039E,0x039E,0x039E,0x037F,0x035F,0x037F,0x035F,0x033F,0x033F,0x033F,0x033F,0x031F,0x031F,0x031F,0x031F,0x02FF,0x02FF,0x02DF,0x02BF,0x02BF,0x02BF,0x02BF,0x029F,0x029F,0x027F,0x025F,0x027F,0x025F,0x023F,0x021F,0x021F,0x021F,0x021F,0x01DF,0x01DF,0x01DF,0x01DF,0x01DF,0x01DF,0x019F,0x019F,0x019F,0x019F,0x019E,0x019E,0x01BE,0x019D,0x01FD,0x027C,0x035D,0x0C5E,0x0D5F,0x05DF,0x065F,0x173F,0x0F7F,0x0FBF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x0FBF,0x179F,0x1F7F,0x2F3E,0x46FE,0x667E,0x85FE,0x7376,0x7A53,0xA254,0xBA34,0xCA14,0xC9F3,0xC9D3,0xD1D3,0xD1D3,0xD1D3,0xD1D4,0xD1D3,0xC9F4,0xC9F4,0xC214,0xBA14,0xBA96,0x8151,0x508F,0x5131,0x4951,0x4151,0x4172,0x3971,0x3951,0x3171,0x3151,0x3171,0x3971,0x3151,0x3151,0x3151,0x3131,0x3151,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2110,0x2130,0x2131,0x2131,0x2111,0x2111,0x2131,0x2131,0x2110,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x210F,0x2110,0x2110,0x210F,0x2910,0x210F,0x290F,0x2930,0x2930,0x2910,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x2110,0x2930,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2910,0x2910,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2930,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2930,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x210F,0x2930,0x2110,0x210F,0x210F,0x2930,0x210F,0x212F,0x2130,0x2110,0x2110,0x212F,0x212F,0x210F,0x2930,0x212F,0x210F,0x2110,0x2110,0x210F,0x210F,0x2130,0x2130,0x2930,0x212F,0x210F,0x2930,0x212F,0x212F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x1931,0x1911,0x1132,0x0933,0x1176,0x0997,0x09B8,0x09D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01D9,0x01B9,0x09F9,0x11F8,0x19F8,0x1195,0x1133,0x1111,0x1911,0x2131,0x2131,0x2130,0x2130,0x2110, + 0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1912,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1932,0x1911,0x1111,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1932,0x1911,0x1111,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1912,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1112,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1911,0x1111,0x1911,0x1932,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1912,0x1911,0x1111,0x1111,0x1912,0x1911,0x1912,0x1912,0x1912,0x1912,0x10F1,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1912,0x1912,0x1932,0x1111,0x1931,0x1911,0x1931,0x1931,0x1111,0x1111,0x1111,0x1112,0x1132,0x1133,0x0933,0x1195,0x19D6,0x1A17,0x1A17,0x19F6,0x1194,0x1133,0x1112,0x1912,0x2132,0x2152,0x2131,0x2131,0x2131,0x1932,0x1932,0x1953,0x1153,0x0954,0x19D6,0x2A59,0x19D7,0x1175,0x1154,0x1933,0x1932,0x1932,0x2131,0x2131,0x2131,0x2930,0x2930,0x2130,0x210F,0x210F,0x212F,0x2930,0x210F,0x212F,0x210F,0x212F,0x210F,0x2110,0x2930,0x2930,0x2110,0x2910,0x210F,0x212F,0x2930,0x2930,0x210F,0x2930,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x2110,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2110,0x2130,0x2131,0x1931,0x1931,0x1132,0x1153,0x1174,0x11B6,0x1A18,0x1A38,0x11D7,0x1196,0x1175,0x1175,0x1174,0x1153,0x1132,0x1132,0x1932,0x1911,0x1911,0x1911,0x1911,0x2130,0x2110,0x2110,0x2130,0x212F,0x290F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2910,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x2930,0x2930,0x2930,0x2930,0x292F,0x210F,0x210F,0x20EF,0x28EF,0x28CE,0x288D,0x286C,0x496F,0x9BB8,0xD57E,0xD57E,0xD53D,0xD51C,0xD51C,0xDD3C,0xD4FB,0xD4DB,0xD4DB,0xD4DA,0xD4DA,0xD4DA,0xD4DA,0xD4DA,0xD4DA,0xD4B9,0xDCBA,0xDCBA,0xDCBA,0xD4BA,0xDCBA,0xD499,0xDCB9,0xD499,0xDC99,0xDC99,0xDC99,0xDCB9,0xDCB9,0xDCB9,0xDCB9,0xDCB9,0xDCB9,0xDCDA,0xDCD9,0xDCD9,0xDCDA,0xDCDA,0xDCDA,0xDCB9,0xDCDA,0xDCDA,0xE4FA,0xDCDA,0xE4FA,0xDCDA,0xE4FA,0xDCDA,0xDCDA,0xDCDA,0xDCDA,0xDCDA,0xDCDA,0xDCDA,0xDCB9,0xDCB9,0xDCB9,0xDCB9,0xD498,0xD499,0xD499,0xDC99,0xD498,0xD478,0xD478,0xDC78,0xD478,0xDC78,0xD478,0xDC99,0xD478,0xD478,0xD478,0xDC78,0xD458,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC58,0xD458,0xDC78,0xDC78,0xDC58,0xDC58,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xE477,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xDC37,0xDC36,0xE457,0xDC37,0xE477,0xDC57,0xDC57,0xDC36,0xDC57,0xDC57,0xDC77,0xDC98,0xDC98,0xCC77,0xBC36,0xAC57,0xACF9,0xA55A,0x95BA,0x85FB,0x763B,0x6E7C,0x5E9C,0x56DD,0x46FD,0x3F1D,0x2F3D,0x2F7E,0x1F7E,0x179E,0x179E,0x17BE,0x0FBE,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x0F9F,0x179F,0x175E,0x275E,0x2F3E,0x371E,0x3F1E,0x46FE,0x471E,0x471E,0x3F5F,0x2F3E,0x275E,0x1F7E,0x179E,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DE,0x07DE,0x07BE,0x07BE,0x07BE,0x07BE,0x07BE,0x07BD,0x07BD,0x07BD,0x07BD,0x079D,0x079C,0x0F7C,0x1F7C,0x2F3C,0x4EBB,0x6E1A,0x7CD6,0x9435,0xAC97,0x9BD4,0x8B93,0x8414,0x8D57,0x6DB7,0x5EF9,0x3F18,0x1F17,0x0F36,0x0F56,0x0776,0x0775,0x0775,0x0795,0x0794,0x0794,0x0794,0x0793,0x0793,0x0792,0x0792,0x07B2,0x0791,0x0791,0x0790,0x0790,0x078F,0x078F,0x078E,0x078E,0x07AE,0x078D,0x078D,0x078C,0x078C,0x078C,0x078C,0x078B,0x078B,0x078B,0x078B,0x078B,0x078A,0x078A,0x076A,0x076A,0x076A,0x076A,0x076A,0x076A,0x076B,0x076B,0x0F4C,0x0F4C,0x0F0D,0x0EEE,0x0EAF,0x0E4F,0x05D0,0x0591,0x0511,0x04D2,0x0493,0x0474,0x0455,0x0437,0x0418,0x03F9,0x03DA,0x03DB,0x03BB,0x03BC,0x03BD,0x039D,0x039E,0x037E,0x037F,0x035F,0x035F,0x035F,0x033F,0x031F,0x033F,0x031F,0x031F,0x031F,0x02FF,0x02FF,0x02DF,0x02BF,0x02DF,0x02BF,0x029F,0x029F,0x029F,0x029F,0x027F,0x027F,0x025F,0x025F,0x023F,0x021F,0x021F,0x021F,0x01FF,0x01FF,0x01FF,0x01DF,0x01DF,0x01DF,0x01BF,0x01BF,0x019F,0x019F,0x019F,0x019F,0x01BF,0x019E,0x01BE,0x01BD,0x021C,0x02DD,0x039D,0x0CDF,0x0D9F,0x061F,0x0EBF,0x177F,0x0F9F,0x0FBF,0x07BF,0x07BF,0x07DF,0x07BF,0x0FBF,0x0F9F,0x177F,0x277F,0x373F,0x4E9D,0x765E,0x8D3C,0x6A73,0xA2D5,0xB234,0xC213,0xC9F3,0xC9D3,0xD1B3,0xD1D4,0xD1D3,0xD1D3,0xD1D3,0xC9D3,0xC9F3,0xC9F4,0xC235,0xBA35,0xB296,0x586E,0x58F0,0x5131,0x4951,0x4172,0x4172,0x3972,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x2930,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x18F0,0x2131,0x2131,0x2132,0x2132,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2110,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2930,0x2110,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x292F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2930,0x212F,0x212F,0x2930,0x2930,0x210F,0x2130,0x210F,0x2130,0x2110,0x2930,0x212F,0x210F,0x2930,0x2930,0x210F,0x2930,0x290F,0x210F,0x212F,0x212F,0x2930,0x2130,0x2930,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2110,0x2110,0x212F,0x212F,0x290F,0x290F,0x212F,0x2130,0x2110,0x2110,0x2130,0x212F,0x2130,0x212F,0x2930,0x212F,0x212F,0x2930,0x212F,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x2930,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1133,0x0934,0x0955,0x11B8,0x09D9,0x0A1A,0x01FA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01F9,0x09F9,0x09D8,0x11D7,0x1995,0x1133,0x1111,0x1931,0x2131,0x2131,0x2130,0x2130, + 0x1910,0x1910,0x2110,0x1910,0x1910,0x1910,0x1910,0x2111,0x2131,0x1911,0x2111,0x2111,0x2111,0x2131,0x2111,0x2111,0x2131,0x1931,0x2131,0x2131,0x2131,0x1910,0x2131,0x2111,0x2111,0x2131,0x2111,0x2111,0x2131,0x1911,0x2111,0x2111,0x1910,0x2111,0x2111,0x2131,0x2131,0x1931,0x1931,0x2131,0x1910,0x1910,0x1910,0x2131,0x2131,0x2130,0x2131,0x1910,0x1930,0x1930,0x1930,0x1910,0x1931,0x1931,0x1931,0x1931,0x1931,0x1910,0x1911,0x1911,0x1910,0x1910,0x2111,0x1910,0x1911,0x1911,0x1931,0x1911,0x1931,0x1931,0x1911,0x1910,0x1910,0x1910,0x1930,0x1931,0x1910,0x1910,0x1910,0x1910,0x1931,0x1911,0x1911,0x1911,0x1931,0x2131,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x2131,0x2131,0x2131,0x1911,0x1911,0x2131,0x1911,0x1911,0x2111,0x1911,0x1931,0x1911,0x2131,0x1911,0x1911,0x1931,0x2111,0x1910,0x1911,0x1911,0x1911,0x2131,0x1931,0x2131,0x2131,0x1911,0x2131,0x1931,0x1911,0x2111,0x1910,0x1911,0x2111,0x1910,0x2131,0x1931,0x1911,0x1911,0x2151,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1112,0x1153,0x1154,0x1175,0x19B6,0x19F7,0x1A17,0x19D6,0x1174,0x1153,0x1112,0x1911,0x2131,0x2132,0x2131,0x2131,0x2151,0x1931,0x1932,0x1153,0x1153,0x1175,0x19D7,0x21F8,0x19D7,0x19B6,0x1154,0x1133,0x1912,0x1911,0x2131,0x2131,0x2130,0x2130,0x2110,0x210F,0x212F,0x2930,0x210F,0x2930,0x212F,0x2930,0x2930,0x212F,0x2130,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x210F,0x290F,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x290F,0x290F,0x292F,0x292F,0x292F,0x2930,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x210F,0x2110,0x2130,0x2131,0x2152,0x1932,0x1132,0x0932,0x1174,0x19D6,0x1A17,0x1A18,0x19F7,0x1196,0x0954,0x1154,0x1133,0x1133,0x1932,0x1931,0x1931,0x1931,0x1911,0x1910,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x292F,0x212F,0x212F,0x210F,0x210F,0x292F,0x2930,0x2130,0x2130,0x2930,0x2930,0x2930,0x292F,0x2930,0x290F,0x28EF,0x28EE,0x28CD,0x28AD,0x288C,0x202A,0x40ED,0x8B36,0xD55E,0xE5BF,0xE57E,0xDD1C,0xDD1C,0xD4FB,0xD4DB,0xDCFB,0xD4DA,0xDCDA,0xD49A,0xD4BA,0xD4BA,0xDCDA,0xDCBA,0xDCBA,0xDCBA,0xDCBA,0xDCBA,0xDCBA,0xDCB9,0xDCB9,0xDC99,0xDC99,0xDC99,0xDC99,0xDC99,0xDC99,0xE4B9,0xDCB9,0xE4B9,0xDC99,0xDCB9,0xDC99,0xDC99,0xDC78,0xDC99,0xDC98,0xDC78,0xDC78,0xDC78,0xDC78,0xDC79,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC99,0xDC99,0xDC99,0xDC99,0xDC78,0xDC99,0xDC98,0xDC98,0xDC98,0xDC78,0xDC78,0xDC98,0xDC78,0xDC99,0xDC78,0xDC78,0xDC78,0xDC78,0xDC58,0xDC78,0xDC58,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xDC58,0xDC58,0xDC57,0xDC58,0xDC58,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC37,0xDC37,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xD437,0xD437,0xCC57,0xCCD8,0xCD7A,0xB57A,0x9D9A,0x8DDB,0x7E1B,0x765C,0x66BD,0x56DD,0x4F1D,0x3F1D,0x375E,0x2F5E,0x277E,0x1F7E,0x179E,0x17BF,0x0FBE,0x0FBE,0x0FDF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x0F9F,0x177E,0x1F7F,0x2F5E,0x371E,0x4F3F,0x5F1E,0x5EBD,0x5E7C,0x5E5C,0x567D,0x56DE,0x4F1E,0x473E,0x2F5E,0x1F7E,0x179E,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DE,0x07DE,0x07DE,0x07BE,0x07BE,0x07BE,0x07BE,0x07BD,0x07BE,0x07BD,0x07BD,0x07BD,0x07BD,0x079C,0x0F7C,0x177C,0x2F5C,0x4EDC,0x661A,0x7D17,0x9456,0xAC56,0xA3D4,0x9BB3,0x83B3,0x8CF6,0x7D97,0x5E78,0x46F9,0x2F38,0x1757,0x0F76,0x0776,0x0796,0x0795,0x07B5,0x0795,0x0794,0x07B4,0x0794,0x07B3,0x0793,0x07B3,0x07B2,0x07B2,0x07B1,0x07B1,0x07B0,0x07B0,0x07AF,0x07AF,0x07AF,0x07AE,0x07AE,0x07AD,0x078D,0x07AD,0x07AC,0x07AC,0x07AC,0x07AB,0x07AB,0x078B,0x078A,0x07AA,0x07AA,0x07AA,0x078A,0x07AA,0x0789,0x0789,0x0789,0x0789,0x076A,0x076A,0x076B,0x0F6B,0x0F2C,0x0F2D,0x0EEE,0x16F0,0x16D1,0x1692,0x0E32,0x0592,0x0512,0x04B2,0x0453,0x0435,0x03F6,0x03F7,0x03F8,0x03DA,0x03DB,0x03BC,0x03BC,0x039D,0x039E,0x037E,0x035E,0x033E,0x033F,0x033F,0x033F,0x031F,0x031F,0x031F,0x02FF,0x02FF,0x02DF,0x02DF,0x02BF,0x02BF,0x02BF,0x02BF,0x029F,0x029F,0x029F,0x029F,0x027F,0x025F,0x025F,0x023F,0x023F,0x021F,0x021F,0x01FF,0x01FF,0x01FF,0x01DF,0x01DF,0x01DF,0x01BF,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x019F,0x019E,0x019E,0x019D,0x01BC,0x027C,0x031C,0x0C3E,0x153F,0x0DDF,0x065F,0x0EFF,0x179F,0x0FBF,0x0FBF,0x07BF,0x07BF,0x07BF,0x07BF,0x0FBF,0x179F,0x1F9F,0x2F3E,0x46FE,0x5E7D,0x8E3E,0x6BB6,0x82B4,0xA253,0xBA34,0xC1F3,0xC9F4,0xD1D3,0xD1D4,0xD9D4,0xD193,0xD1B3,0xC9B3,0xC9D3,0xC9D3,0xC1F4,0xC234,0xBA55,0x91B3,0x586E,0x5911,0x4951,0x4151,0x4151,0x3972,0x3971,0x3171,0x3151,0x3151,0x3171,0x3151,0x3151,0x3151,0x3151,0x2950,0x2930,0x2930,0x2951,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2110,0x2130,0x2151,0x2151,0x2131,0x1911,0x1911,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930,0x2110,0x2910,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x212F,0x210F,0x2130,0x212F,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2110,0x2930,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2910,0x2930,0x2110,0x2110,0x2910,0x2910,0x2110,0x2130,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x292F,0x292F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2130,0x212F,0x212F,0x2930,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2930,0x2130,0x2131,0x1911,0x1911,0x1133,0x1154,0x0975,0x11D7,0x09F9,0x09FA,0x0A1A,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01D9,0x01B8,0x09F9,0x11D8,0x11B7,0x1195,0x1133,0x1111,0x1111,0x1931,0x1931,0x1931, + 0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2151,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x1930,0x2130,0x2130,0x1930,0x1930,0x1930,0x2130,0x2110,0x2130,0x2110,0x2110,0x2131,0x2110,0x1910,0x2111,0x2110,0x1910,0x1910,0x2110,0x1910,0x1910,0x1910,0x1910,0x1910,0x2130,0x1910,0x1910,0x1910,0x2130,0x2110,0x2131,0x2110,0x2131,0x1910,0x2111,0x2111,0x2131,0x2131,0x2131,0x1910,0x2131,0x2131,0x1931,0x1910,0x2131,0x1931,0x1910,0x1931,0x1910,0x1910,0x1910,0x2110,0x2130,0x1910,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x2110,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2110,0x2131,0x2110,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1112,0x1133,0x1133,0x1154,0x19B6,0x2217,0x19F7,0x19D6,0x1174,0x1133,0x1112,0x1911,0x2152,0x2152,0x2151,0x2131,0x1931,0x1931,0x1132,0x1153,0x1154,0x1175,0x19F7,0x2238,0x21F8,0x19B6,0x1154,0x1133,0x1932,0x1931,0x2131,0x2111,0x2130,0x2110,0x2130,0x2930,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x212F,0x2930,0x2110,0x2930,0x2930,0x2110,0x210F,0x2930,0x290F,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x290F,0x290F,0x2910,0x2930,0x2930,0x210F,0x210F,0x2930,0x290F,0x292F,0x290F,0x2930,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x2110,0x2130,0x2131,0x2152,0x1932,0x1132,0x1153,0x0954,0x11B6,0x1A17,0x1A17,0x19F7,0x1196,0x1154,0x1133,0x1133,0x1932,0x1932,0x1931,0x1931,0x2111,0x2111,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x2930,0x292F,0x2930,0x290F,0x290F,0x290F,0x28EF,0x28EE,0x28CE,0x28AD,0x28AC,0x288C,0x284B,0x38AC,0x61B0,0xA377,0xCCDB,0xE59E,0xE57E,0xDD3D,0xD4FB,0xD4DB,0xD4BA,0xD4DB,0xD4DB,0xD4BA,0xDCDA,0xDCBA,0xDCBA,0xDCBA,0xDCBA,0xDCBA,0xDCBA,0xDCBA,0xDCBA,0xDC99,0xDC99,0xDC99,0xDC99,0xE499,0xE499,0xDC98,0xE499,0xE499,0xE499,0xE498,0xDC78,0xDC98,0xDC99,0xDC78,0xDC78,0xDC78,0xDC58,0xDC78,0xDC78,0xDC78,0xE479,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC78,0xDC78,0xDC58,0xDC78,0xDC78,0xDC78,0xDC58,0xDC58,0xDC78,0xDC78,0xDC57,0xE478,0xDC37,0xDC78,0xDC57,0xDC57,0xDC57,0xDC58,0xDC37,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC58,0xDC37,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xDC37,0xDC37,0xDC17,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC37,0xDC57,0xDC57,0xDC36,0xE457,0xDC57,0xDC57,0xDC37,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xD436,0xDC57,0xD457,0xD477,0xCCD8,0xC539,0xB55A,0x9D7A,0x8DDA,0x863C,0x767C,0x669C,0x56FD,0x46FD,0x3F3E,0x373E,0x2F5E,0x277E,0x277E,0x1F9E,0x179E,0x179E,0x0FBF,0x0FDF,0x0FDF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x0FBF,0x0F9F,0x179F,0x277F,0x375F,0x471E,0x5EFE,0x669D,0x6E3C,0x75FB,0x6D79,0x6D59,0x6559,0x65BA,0x667D,0x5EFE,0x4F3E,0x2F3E,0x1F5E,0x179E,0x0FBE,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DE,0x07DE,0x07BE,0x07BE,0x07BE,0x07BE,0x07BE,0x07DE,0x07BD,0x07DE,0x07BD,0x07BD,0x079C,0x0F9C,0x177C,0x273C,0x46FC,0x5E3A,0x8579,0x9456,0xAC56,0xB416,0x9B93,0x8B72,0x8C55,0x8557,0x65F7,0x4ED9,0x3759,0x1F58,0x0F57,0x0F97,0x0796,0x0796,0x07B6,0x07B5,0x07B5,0x07B5,0x07B4,0x07B4,0x07B4,0x07B3,0x07B3,0x07B2,0x07B2,0x07B2,0x07B1,0x07B1,0x07B0,0x07B0,0x07AF,0x07AF,0x07AE,0x07AE,0x07AE,0x07AD,0x07AD,0x07AD,0x07AC,0x07AC,0x07AC,0x07AB,0x07AB,0x07AB,0x07AA,0x07AA,0x07AA,0x07A9,0x07A9,0x07A9,0x07A9,0x0789,0x0789,0x0789,0x078A,0x076A,0x076B,0x0F6C,0x0F4D,0x0F4E,0x0F2F,0x0F10,0x16F1,0x16D2,0x1653,0x0DD2,0x0532,0x04B2,0x0473,0x0454,0x0436,0x0417,0x03F9,0x03B9,0x03BB,0x039C,0x039D,0x037D,0x037E,0x035E,0x033E,0x033F,0x033F,0x031F,0x031F,0x02FF,0x02FF,0x02FF,0x02DF,0x02BF,0x02BF,0x02BF,0x02BF,0x029F,0x029F,0x029F,0x027F,0x027F,0x027F,0x025F,0x025F,0x023F,0x023F,0x021F,0x021F,0x01FF,0x01FF,0x01FF,0x01DF,0x01DF,0x01DF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x019F,0x019F,0x019E,0x019D,0x019C,0x021C,0x02BD,0x035C,0x14BF,0x1DDF,0x0E1F,0x0E9F,0x173F,0x17BF,0x0FBF,0x0FBF,0x07BF,0x07BF,0x0FBF,0x0FBF,0x17BF,0x177E,0x2F9F,0x373E,0x4EDE,0x7EBF,0x855B,0x72F4,0x8A73,0xAA33,0xC214,0xC9F3,0xD1D3,0xD1B3,0xD1B4,0xD193,0xD193,0xD1B3,0xD1D3,0xC9B3,0xC1B3,0xC214,0xBA35,0xB255,0x68CF,0x58D0,0x5131,0x4952,0x4152,0x3971,0x3972,0x3171,0x3171,0x3151,0x3151,0x3171,0x3171,0x3151,0x3150,0x2930,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1933,0x1133,0x1133,0x1153,0x1154,0x1174,0x1994,0x1974,0x1953,0x1932,0x1932,0x1932,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2930,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x290F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2910,0x210F,0x290F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x2930,0x210F,0x210F,0x2910,0x2910,0x2930,0x290F,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x212F,0x2930,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x2110,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x212F,0x210F,0x2130,0x212F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2930,0x210F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1911,0x1911,0x1132,0x1154,0x11B6,0x0997,0x09F9,0x09F9,0x01D9,0x01B9,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01D9,0x01B9,0x09F9,0x09B8,0x11D8,0x19F7,0x11B5,0x1153,0x1112,0x1111,0x1931,0x1931, + 0x210F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2110,0x2131,0x2111,0x2130,0x2110,0x2110,0x2110,0x2110,0x2131,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x2111,0x2110,0x2110,0x2110,0x2110,0x2130,0x1910,0x1910,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x1910,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x1930,0x1930,0x2130,0x2110,0x1910,0x1910,0x2130,0x2130,0x2110,0x1910,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x1910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x2130,0x2130,0x2131,0x1911,0x1911,0x1112,0x1133,0x1195,0x19D6,0x19F7,0x19F7,0x21D6,0x1174,0x1112,0x10F2,0x10F1,0x2152,0x2152,0x2151,0x1931,0x1931,0x1931,0x1932,0x1152,0x1153,0x1195,0x21F7,0x2238,0x2217,0x19B6,0x1174,0x1133,0x1932,0x1931,0x2131,0x2131,0x2131,0x2930,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2130,0x212F,0x212F,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x2110,0x2930,0x2910,0x210F,0x2910,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x210F,0x2910,0x2910,0x2910,0x2910,0x2110,0x210F,0x2930,0x210F,0x2930,0x2910,0x2910,0x210F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2130,0x2131,0x1931,0x1932,0x1153,0x1174,0x0954,0x19B6,0x1A17,0x1A17,0x21F7,0x19B5,0x0933,0x1112,0x1132,0x1132,0x1931,0x1931,0x1911,0x1910,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x2110,0x2930,0x2930,0x2930,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x2130,0x2930,0x210F,0x292F,0x292F,0x292F,0x210F,0x290F,0x290F,0x28EE,0x28EE,0x28CD,0x28CD,0x28AD,0x30AC,0x286B,0x2009,0x2809,0x514E,0x7A73,0xA3B8,0xBC5A,0xD4FC,0xDD3D,0xDD3D,0xDD1C,0xDD1C,0xDCFC,0xDCFC,0xDCDB,0xDCDB,0xDCBA,0xDCBA,0xDCBA,0xDC9A,0xDC99,0xDC99,0xDC9A,0xDC99,0xDC99,0xDC99,0xDC99,0xDC79,0xE499,0xDC58,0xE479,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xE499,0xE499,0xDC58,0xDC58,0xDC38,0xDC58,0xE499,0xDC78,0xDC58,0xE479,0xDC38,0xDC58,0xDC78,0xDC58,0xDC78,0xDC78,0xDC58,0xDC58,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC17,0xDC17,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xDC37,0xE457,0xDC36,0xDC16,0xDC36,0xDC36,0xDC36,0xDC36,0xDC57,0xDC37,0xDC57,0xDC57,0xE457,0xDC37,0xDC36,0xDC57,0xDC57,0xDC77,0xDC77,0xDC57,0xDC57,0xDC57,0xD477,0xCC57,0xC477,0xBCF9,0xB5BB,0xA5FC,0x8E1B,0x7E1B,0x6E5C,0x5E9C,0x4EBC,0x46FD,0x3F1D,0x373E,0x2F3E,0x277E,0x1F7E,0x1F9E,0x179F,0x179F,0x0F9F,0x0FBF,0x0FBF,0x0FBF,0x07BF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x0FBF,0x17BF,0x279F,0x2F3E,0x4F1E,0x669D,0x659A,0x85BB,0x8539,0x8CB8,0x7C35,0x8C97,0x8497,0x6C56,0x6CF8,0x761C,0x6EDE,0x3E9C,0x371E,0x279E,0x179E,0x0FBE,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07BE,0x07BE,0x07BE,0x07BE,0x07BD,0x07BD,0x079D,0x079C,0x179D,0x275D,0x46FC,0x5E5B,0x859A,0x8C76,0xAC77,0xBC57,0xA394,0x9332,0x8BD3,0x8D17,0x75F8,0x5EB9,0x4739,0x2758,0x1757,0x0F77,0x0F97,0x0796,0x07B6,0x07B6,0x07B6,0x07B5,0x07B5,0x07B5,0x07B4,0x07B4,0x07B3,0x07B3,0x07D3,0x07D2,0x07B2,0x07B1,0x07D1,0x07D1,0x07D0,0x07D0,0x07CF,0x07AF,0x07AE,0x07CE,0x07AE,0x07AD,0x07CD,0x07CD,0x07AC,0x07AC,0x07AC,0x07AB,0x07AB,0x07AB,0x07CB,0x07CA,0x07CA,0x07AA,0x07A9,0x07A9,0x0789,0x0789,0x078A,0x078A,0x078B,0x078B,0x076C,0x0F6D,0x0F6D,0x0F4E,0x0F2E,0x0F0F,0x0EF0,0x16D1,0x16D3,0x1673,0x0DF3,0x0553,0x04B3,0x0454,0x0416,0x03D7,0x03B8,0x039A,0x039B,0x037C,0x035C,0x035D,0x035E,0x035E,0x033E,0x031E,0x031F,0x031F,0x02FF,0x02FF,0x02FF,0x02DF,0x02BF,0x029F,0x029F,0x029F,0x029F,0x029F,0x027F,0x027F,0x025F,0x025F,0x025F,0x023F,0x023F,0x023F,0x021F,0x021F,0x021F,0x01FF,0x01DF,0x01BF,0x01DF,0x01DF,0x01BF,0x019F,0x01BF,0x01BF,0x019F,0x01BF,0x019F,0x01BE,0x019E,0x019C,0x01DC,0x023C,0x02FC,0x03BC,0x1D5F,0x15FF,0x0E5F,0x069E,0x175F,0x17BF,0x0FBF,0x0FBF,0x07BF,0x0FDF,0x0FBF,0x0FBF,0x0F7E,0x1F9F,0x2F3E,0x3EDE,0x66BE,0x865E,0x7417,0x6A31,0x9A32,0xBA33,0xCA14,0xD1D3,0xD1B3,0xD1D4,0xD193,0xD193,0xD1B3,0xD1D3,0xC9B3,0xC9D3,0xC9F4,0xC235,0xBA56,0x99D4,0x504E,0x50F1,0x5152,0x4152,0x3951,0x3971,0x3971,0x3151,0x3131,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3131,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x2930,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x210F,0x290F,0x290F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x1154,0x1195,0x19D6,0x19D6,0x19D7,0x19D7,0x19F7,0x19F7,0x19F7,0x1195,0x1153,0x1133,0x1112,0x1932,0x1931,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x2130,0x212F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2110,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x210F,0x2130,0x2110,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2110,0x210F,0x290F,0x290F,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x290F,0x2930,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x212F,0x2930,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1911,0x1911,0x1132,0x1133,0x1195,0x11D7,0x09D8,0x01D9,0x01D9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01B9,0x01B9,0x09F9,0x09F9,0x11F8,0x11D7,0x11B6,0x0933,0x08F2,0x1112,0x1133, + 0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2110,0x2131,0x2131,0x2131,0x2131,0x2130,0x2131,0x2131,0x2110,0x2131,0x2130,0x2130,0x2110,0x2110,0x2111,0x2111,0x2111,0x2110,0x2111,0x2111,0x2111,0x2110,0x2110,0x2131,0x2110,0x2130,0x2131,0x2130,0x2130,0x2130,0x1910,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x1910,0x1930,0x1930,0x2130,0x1910,0x2130,0x2130,0x1910,0x2130,0x1910,0x2130,0x2110,0x2110,0x2130,0x1910,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2150,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x1911,0x1912,0x1132,0x0933,0x1195,0x19D6,0x21F7,0x21F7,0x19B6,0x1974,0x1133,0x1111,0x1931,0x1931,0x2151,0x2171,0x1931,0x1910,0x1931,0x1131,0x1153,0x1153,0x1195,0x19F7,0x19F7,0x2218,0x19B6,0x1174,0x1153,0x1932,0x1931,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x210F,0x2130,0x2930,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x212F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x2930,0x2910,0x2910,0x210F,0x2910,0x2910,0x2110,0x210F,0x290F,0x210F,0x2930,0x210F,0x2910,0x2910,0x2110,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2910,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x292F,0x292F,0x292F,0x2930,0x2930,0x2130,0x2151,0x1931,0x1932,0x1132,0x1153,0x1174,0x19B6,0x19F7,0x2217,0x19F7,0x19B5,0x1133,0x1112,0x1112,0x1932,0x1931,0x1911,0x1910,0x2110,0x2130,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x2930,0x2930,0x292F,0x2930,0x2110,0x2930,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x210F,0x292F,0x210F,0x210F,0x290F,0x28EE,0x28EE,0x28EE,0x28CD,0x28CD,0x28AC,0x28AD,0x28AC,0x286C,0x284B,0x282B,0x282A,0x388C,0x512E,0x7211,0x8AD4,0xABB8,0xBC5A,0xCCDC,0xDD1D,0xE55E,0xE55D,0xE51D,0xDCFC,0xD4BB,0xD49A,0xD49A,0xD49A,0xD47A,0xDC9A,0xDC9A,0xDC79,0xDC79,0xDC79,0xDC79,0xDC79,0xDC79,0xDC79,0xDC79,0xDC79,0xDC79,0xDC99,0xDC99,0xE499,0xDC79,0xDC58,0xD458,0xDC58,0xDC79,0xDC99,0xDC79,0xDC58,0xD438,0xDC58,0xDC58,0xDC79,0xDC58,0xDC58,0xDC58,0xDC38,0xDC58,0xDC58,0xDC37,0xDC58,0xDC38,0xDC58,0xDC38,0xDC58,0xDC58,0xDC58,0xDC37,0xDC37,0xDC57,0xDC58,0xDC37,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC58,0xDC37,0xDC57,0xDC57,0xDC37,0xDC37,0xE457,0xDC57,0xDC57,0xE457,0xDC37,0xDC57,0xDC57,0xDC57,0xDC37,0xDC16,0xDC37,0xDC16,0xDC36,0xDC36,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC77,0xDC57,0xDC77,0xDC77,0xDC77,0xD457,0xC457,0xBC77,0xB4F8,0xB59A,0xA5FB,0x963C,0x7E5C,0x767C,0x669C,0x569C,0x4EBC,0x46FD,0x3EFD,0x371E,0x2F3D,0x2F7E,0x277E,0x1F7E,0x1F7E,0x177E,0x179F,0x17BF,0x0FBF,0x0FBF,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x0FBF,0x0F9F,0x1F9E,0x2F5E,0x3EFD,0x567C,0x6DBB,0x74B7,0x8436,0x8BF5,0xAC97,0xAC77,0xBCD8,0xAC97,0x9C77,0x73F5,0x74D8,0x75FB,0x565C,0x46FD,0x377E,0x1F9E,0x0F9E,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07BE,0x07BE,0x07BE,0x07BE,0x07BD,0x07BD,0x079D,0x0F9D,0x179D,0x277D,0x471D,0x5E5B,0x7D99,0x94B7,0xA436,0xB436,0xAB94,0xA353,0x9373,0x8C75,0x7DB8,0x6679,0x4EF9,0x3739,0x1F58,0x1778,0x0F97,0x07B7,0x07B7,0x07D7,0x07B6,0x07B6,0x07B5,0x07B5,0x07B5,0x07B5,0x07B4,0x07D4,0x07D3,0x07D3,0x07D3,0x07D2,0x07D2,0x07D1,0x07D1,0x07D1,0x07B0,0x07D0,0x07CF,0x07AF,0x07AF,0x07CE,0x07CE,0x07CE,0x07CD,0x07CD,0x07CC,0x07AC,0x07AC,0x07AC,0x07CB,0x07CB,0x07CB,0x07CA,0x07AA,0x07AA,0x07AA,0x07AA,0x078A,0x078A,0x078B,0x078B,0x078B,0x078C,0x078C,0x076D,0x076D,0x074D,0x0F2E,0x0F4F,0x0F10,0x16F1,0x16D3,0x1E94,0x1615,0x0D54,0x04B4,0x0435,0x03F6,0x03B7,0x03B8,0x039A,0x039B,0x035B,0x035C,0x033D,0x033D,0x033E,0x031E,0x031E,0x02FF,0x02FF,0x02FF,0x02DF,0x02BF,0x029F,0x029F,0x029F,0x027F,0x027F,0x027F,0x025F,0x025F,0x027F,0x023F,0x023F,0x023F,0x023F,0x021F,0x01FF,0x01FF,0x01FF,0x01DF,0x01DF,0x01DF,0x01DF,0x01BF,0x01BF,0x019F,0x019F,0x019F,0x019F,0x01BF,0x01BE,0x01DE,0x01BD,0x019B,0x01DB,0x023B,0x031C,0x0C7E,0x1D9F,0x161F,0x0E7F,0x0EDF,0x179F,0x17BF,0x0FBF,0x0FBF,0x07BF,0x0FBF,0x079F,0x17BF,0x177F,0x2F9F,0x371E,0x4EBD,0x76DF,0x8D9C,0x62D3,0x8A52,0xAA33,0xC213,0xC9F3,0xC9B3,0xD193,0xD1B4,0xD193,0xD1B3,0xD1D4,0xD1B3,0xC9D4,0xC9D3,0xC1F4,0xBA35,0xBA97,0x7931,0x58B0,0x5131,0x4952,0x4152,0x3951,0x3972,0x3972,0x3151,0x3151,0x3151,0x3971,0x3151,0x3130,0x3151,0x3151,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x292F,0x292F,0x2930,0x292F,0x292F,0x212F,0x212F,0x2110,0x2110,0x2930,0x2930,0x290F,0x290F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1111,0x1112,0x0934,0x11B6,0x1A18,0x1A18,0x1A18,0x19F8,0x1A18,0x1A18,0x1A18,0x1A18,0x19D6,0x1175,0x1174,0x1133,0x1132,0x1932,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2930,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x292F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x2110,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x212F,0x292F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x290F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2150,0x2130,0x1930,0x1931,0x1911,0x1132,0x1133,0x1175,0x11D7,0x09D8,0x09F9,0x01FA,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x09F9,0x01D9,0x09D9,0x09D8,0x11D7,0x11B6,0x0955,0x08F3,0x1134, + 0x2130,0x212F,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x2110,0x2131,0x2131,0x2131,0x2131,0x2131,0x1911,0x2131,0x2131,0x1931,0x2131,0x2131,0x1930,0x2130,0x2131,0x1930,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x2131,0x1911,0x1910,0x2111,0x2131,0x1931,0x1931,0x2131,0x2131,0x1931,0x2131,0x1931,0x1911,0x2131,0x2131,0x2131,0x2131,0x1931,0x1910,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x1910,0x2131,0x2111,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x1930,0x1931,0x1931,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x2131,0x2131,0x1931,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x294F,0x212F,0x212F,0x2930,0x2930,0x2130,0x2131,0x2132,0x1912,0x1132,0x1133,0x1995,0x21F6,0x21F7,0x21F7,0x19B5,0x1154,0x1132,0x1111,0x1931,0x2151,0x2172,0x2131,0x1910,0x1931,0x1952,0x1932,0x1132,0x0933,0x1195,0x19F7,0x2218,0x2217,0x19B6,0x1174,0x1153,0x1932,0x1912,0x2111,0x2111,0x2131,0x2130,0x2130,0x2130,0x2930,0x2950,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2130,0x2930,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x2930,0x2910,0x2930,0x2110,0x2110,0x210F,0x2930,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2930,0x2930,0x210F,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2110,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2930,0x292F,0x292F,0x292F,0x212F,0x2150,0x2150,0x2151,0x1952,0x1132,0x1153,0x1174,0x11D6,0x1A17,0x2218,0x21F7,0x1995,0x1133,0x1112,0x1111,0x1911,0x1931,0x2131,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x210F,0x210F,0x2130,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x292F,0x292F,0x212F,0x210F,0x210F,0x20EE,0x292F,0x290F,0x290E,0x28EE,0x28EE,0x28EE,0x28EE,0x28CD,0x28AD,0x28AD,0x30AD,0x30AD,0x308C,0x286C,0x202B,0x200A,0x1809,0x2009,0x280A,0x386B,0x514E,0x61D0,0x7A72,0x92F5,0xABD8,0xBC3A,0xC45A,0xCC9B,0xD4DC,0xDCFC,0xDCFC,0xE51C,0xE51C,0xE51C,0xED1C,0xE4FC,0xE4FB,0xE4FB,0xE4DB,0xE4DB,0xDCDB,0xDCBA,0xD49A,0xD479,0xD49A,0xD479,0xD479,0xD479,0xCC58,0xD458,0xD459,0xDC79,0xD479,0xDC79,0xDC79,0xDC79,0xD438,0xD458,0xDC59,0xDC79,0xDC79,0xDC58,0xDC58,0xDC58,0xD438,0xDC38,0xDC38,0xDC38,0xDC58,0xDC58,0xDC58,0xDC58,0xDC37,0xDC57,0xDC57,0xDC58,0xDC58,0xDC58,0xDC58,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE458,0xDC37,0xDC37,0xDC37,0xDC16,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC36,0xDC37,0xDC37,0xDC37,0xDC36,0xDC37,0xDC37,0xDC57,0xDC36,0xD416,0xDC56,0xDC57,0xDC57,0xDC57,0xD436,0xDC36,0xDC57,0xDC57,0xDC57,0xDC77,0xDC77,0xDC78,0xD478,0xCC98,0xBC97,0xA436,0x8C56,0x84B7,0x7D18,0x7D9A,0x7E1C,0x765C,0x6E9D,0x669D,0x5EDD,0x56DD,0x46FD,0x3EFD,0x371E,0x373E,0x2F3E,0x2F5E,0x275E,0x1F7F,0x179F,0x179F,0x0FBF,0x0FBF,0x0FBF,0x0FBF,0x0FDF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x0F9F,0x179F,0x1F7E,0x375E,0x571E,0x6E7D,0x95FB,0x8C76,0x9C16,0xB436,0xC497,0xC477,0xCCB8,0xC477,0xBC77,0x9C16,0x8436,0x857A,0x6E3B,0x5EFD,0x473D,0x2F5E,0x177E,0x0FBE,0x07BE,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07BE,0x07DE,0x07BE,0x07DE,0x07BD,0x079D,0x079D,0x179D,0x2F7D,0x471D,0x565B,0x85BA,0x8CB7,0xA436,0xB416,0xB3D5,0xABB4,0x9B73,0x83D3,0x7D37,0x7659,0x4E99,0x3F19,0x2738,0x1778,0x0F98,0x0798,0x07D8,0x07D7,0x07B7,0x07D7,0x07D6,0x07D6,0x07B6,0x07B5,0x07D5,0x07D5,0x07D4,0x07D4,0x07D3,0x07D3,0x07D3,0x07D2,0x07D2,0x07D2,0x07D1,0x07D1,0x07D0,0x07D0,0x07CF,0x07CF,0x07CF,0x07CE,0x07CE,0x07CE,0x07CD,0x07CD,0x07CD,0x07CD,0x07CC,0x07AC,0x07CC,0x07AB,0x07AB,0x07AB,0x07CB,0x07AB,0x07AB,0x07AB,0x078B,0x07AB,0x078B,0x078C,0x078C,0x078C,0x078C,0x078D,0x078D,0x076E,0x0F6F,0x0F50,0x0F31,0x1712,0x16D3,0x1EB5,0x1E56,0x15D7,0x04D5,0x0455,0x03F6,0x03B7,0x0378,0x037A,0x037B,0x035C,0x033C,0x033D,0x031E,0x031E,0x02FE,0x02FF,0x02DF,0x02DF,0x02BF,0x02BF,0x029F,0x029F,0x027F,0x029F,0x027F,0x025F,0x025F,0x025F,0x025F,0x023F,0x025F,0x023F,0x023F,0x021F,0x01FF,0x01FF,0x01DF,0x01DF,0x01FF,0x01DF,0x01DF,0x01BF,0x01BF,0x019F,0x019F,0x019F,0x01BF,0x01BE,0x09FE,0x09DD,0x019C,0x017B,0x021B,0x025A,0x037C,0x1D3F,0x1DDF,0x163F,0x065E,0x173F,0x17BF,0x0FBF,0x0FBF,0x0FDF,0x0FBF,0x0FBF,0x0FBF,0x179F,0x1F7F,0x2F5F,0x3EFE,0x5EBE,0x865E,0x63B5,0x69F0,0x9A12,0xBA13,0xC9F3,0xC9B3,0xD1B3,0xD1B3,0xD193,0xD1B3,0xD1B3,0xD1D4,0xC9B3,0xC9B3,0xC9F4,0xC235,0xC276,0xAA35,0x586F,0x5911,0x5152,0x4152,0x4151,0x3971,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1112,0x0933,0x11B6,0x1A18,0x19F8,0x19F8,0x11D7,0x0997,0x11B7,0x19F8,0x19F8,0x11F8,0x11D7,0x19F8,0x19D7,0x19D6,0x1154,0x1133,0x1112,0x1111,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1930,0x1931,0x1931,0x1931,0x1931,0x1951,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x2930,0x2110,0x212F,0x210F,0x2930,0x290F,0x212F,0x212F,0x212F,0x210F,0x2110,0x210F,0x212F,0x210F,0x2130,0x212F,0x210F,0x210F,0x212F,0x212F,0x2110,0x2130,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x292F,0x210F,0x212F,0x212F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2150,0x2150,0x2130,0x2130,0x1930,0x1910,0x1111,0x1133,0x0974,0x11D7,0x11F9,0x09D9,0x09FA,0x01DA,0x01BA,0x01DA,0x01DA,0x01D9,0x01B9,0x01D9,0x01B9,0x01D9,0x09F9,0x09D8,0x11D8,0x11B7,0x0955,0x0935, + 0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2151,0x2130,0x2130,0x2130,0x2131,0x2111,0x2111,0x2111,0x2111,0x1911,0x2131,0x1911,0x1911,0x1932,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2151,0x2131,0x2131,0x2150,0x2150,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x2930,0x2130,0x2951,0x2131,0x2132,0x1912,0x1132,0x1133,0x1995,0x21D6,0x21F7,0x21F7,0x19B5,0x1174,0x1132,0x1111,0x1111,0x2151,0x2151,0x2131,0x2131,0x2151,0x1952,0x1132,0x1132,0x0953,0x1195,0x19F7,0x2238,0x2217,0x19B6,0x1974,0x1133,0x1912,0x1912,0x2111,0x2131,0x2131,0x2931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x2930,0x2130,0x2110,0x2110,0x2930,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x212F,0x2130,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x2910,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x2930,0x292F,0x2930,0x2130,0x2130,0x2150,0x1951,0x1131,0x1132,0x1153,0x1174,0x11B6,0x1A17,0x2217,0x19D7,0x1995,0x1133,0x1112,0x18F1,0x1911,0x1911,0x1911,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x2930,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210E,0x20EE,0x290E,0x290E,0x28CD,0x28CD,0x28CE,0x28CE,0x28CE,0x28CE,0x28CE,0x28AD,0x28AD,0x288C,0x286C,0x284C,0x284B,0x202A,0x200A,0x280A,0x280A,0x280A,0x302A,0x384B,0x408C,0x48CC,0x512E,0x616E,0x69D0,0x71F1,0x8A93,0x92F5,0xAB97,0xBC18,0xD4DB,0xDD1D,0xDD1C,0xE55E,0xE55E,0xED7E,0xE55E,0xE53D,0xDD1C,0xDCFC,0xD4DB,0xD4BA,0xD4BB,0xD49A,0xDCBB,0xDCBB,0xDC9A,0xD49A,0xD47A,0xDC9A,0xDC7A,0xDC9A,0xDC9A,0xDC9A,0xDC9A,0xDC79,0xDC79,0xDC79,0xDC59,0xDC59,0xDC58,0xDC58,0xDC58,0xDC58,0xDC78,0xDC78,0xDC58,0xDC78,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xDC37,0xDC37,0xE437,0xE457,0xE457,0xDC57,0xDC36,0xDC36,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xDC77,0xDC78,0xD457,0xD477,0xCCB8,0xCCD9,0xBCF9,0xACF9,0x9CD8,0x84B7,0x7CB7,0x74D7,0x7539,0x75BA,0x763C,0x767D,0x76BD,0x669D,0x5EBD,0x4EBD,0x4EDD,0x471E,0x3F3E,0x375E,0x275E,0x277E,0x1F7E,0x179F,0x17BF,0x0FBF,0x0FBF,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BE,0x0FBF,0x0FBF,0x1F9E,0x277E,0x475F,0x5EBD,0x7E1C,0xA5BB,0x93D4,0xBC36,0xCC57,0xD457,0xCC16,0xD457,0xCC16,0xC436,0xB457,0x9416,0x7C76,0x7DDA,0x6E9C,0x4EBC,0x373D,0x277E,0x179E,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07BE,0x07BE,0x07DE,0x07BE,0x07BD,0x079D,0x179D,0x277D,0x3F1D,0x565B,0x7DDA,0x8CF8,0x9C15,0xB416,0xBC16,0xB3B5,0xABB5,0x8B93,0x7C95,0x8619,0x5E79,0x46FA,0x2F39,0x1F79,0x0F78,0x0F98,0x07B8,0x07D8,0x07D8,0x07D7,0x07D7,0x07D7,0x07D7,0x07D6,0x07D6,0x07D5,0x07D5,0x07D5,0x07D4,0x07D4,0x07D4,0x07D3,0x07D3,0x07D3,0x07D2,0x07D2,0x07D1,0x07D1,0x07D0,0x07D0,0x07D0,0x07D0,0x07CF,0x07CF,0x07CF,0x07CE,0x07CE,0x07CE,0x07CD,0x07CD,0x07CD,0x07CD,0x07CD,0x07CC,0x07CC,0x07CC,0x07AC,0x07AC,0x07AC,0x078C,0x07AC,0x078C,0x07AC,0x07AC,0x07AD,0x07AD,0x078D,0x078D,0x078E,0x076F,0x0F70,0x0F51,0x1732,0x1F34,0x16D5,0x1EB6,0x1E77,0x1DF8,0x0D17,0x0456,0x03D6,0x03B7,0x0379,0x035A,0x035B,0x033C,0x031D,0x031D,0x02FE,0x02FE,0x02DE,0x02DF,0x02BF,0x02BF,0x029F,0x029F,0x027F,0x027F,0x027F,0x025F,0x025F,0x025F,0x023F,0x023F,0x023F,0x021F,0x021F,0x021F,0x01FF,0x01DF,0x01FF,0x01DF,0x01DF,0x01DF,0x01DF,0x01BF,0x01BF,0x019F,0x017F,0x019F,0x019F,0x01BF,0x01BE,0x09DE,0x015B,0x015A,0x11FB,0x023A,0x029A,0x1C5E,0x2DDF,0x1DFF,0x167F,0x0EBF,0x177F,0x17BF,0x0FDF,0x07BF,0x0FDF,0x0FDF,0x079F,0x0FBF,0x177E,0x277F,0x2F1E,0x4EDE,0x76BF,0x7D5B,0x5A51,0x8A12,0xB233,0xCA14,0xC9D3,0xC9B3,0xD1B3,0xD1B3,0xD1B3,0xD1B3,0xD1B3,0xD1D4,0xC9B3,0xC9D3,0xC1F4,0xC235,0xBA76,0x8131,0x50AF,0x5952,0x4952,0x4152,0x3951,0x3971,0x3972,0x3171,0x3151,0x3131,0x3151,0x3151,0x3151,0x3151,0x3150,0x3150,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x212F,0x210F,0x2930,0x290F,0x2910,0x2910,0x290F,0x210F,0x2130,0x2110,0x2110,0x2131,0x2111,0x1931,0x1112,0x0954,0x19F8,0x19F8,0x1A39,0x11D8,0x0976,0x0976,0x0976,0x0956,0x0996,0x11B7,0x11B7,0x1A18,0x2218,0x19B6,0x1155,0x1154,0x1133,0x1112,0x1112,0x1131,0x1111,0x1911,0x1911,0x1911,0x1911,0x1111,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1951,0x1931,0x1931,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x290F,0x292F,0x2930,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2130,0x2930,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x210F,0x2130,0x212F,0x210F,0x290F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x2910,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1931,0x1131,0x0933,0x1195,0x09B7,0x11F9,0x09D9,0x01D9,0x01B9,0x01BA,0x01DA,0x01DA,0x01FA,0x01D9,0x01D9,0x01D9,0x09F9,0x09F9,0x09D8,0x11D8,0x0997,0x0136, + 0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x2130,0x210F,0x2130,0x2130,0x190F,0x1910,0x1931,0x1911,0x1910,0x1911,0x1911,0x10F1,0x1911,0x1911,0x18F1,0x1912,0x1112,0x10F2,0x10F2,0x10F2,0x10F2,0x10F2,0x1112,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1911,0x1911,0x1912,0x1111,0x1112,0x1112,0x1111,0x1111,0x1111,0x1111,0x1112,0x1112,0x1112,0x1112,0x1131,0x1111,0x1111,0x1911,0x1111,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x10F0,0x1110,0x1931,0x1911,0x1931,0x1931,0x1910,0x1930,0x1930,0x1930,0x2130,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210E,0x210E,0x210F,0x212F,0x292F,0x2130,0x2130,0x2131,0x1931,0x1932,0x1112,0x1133,0x1995,0x19D6,0x2217,0x21F7,0x19B5,0x1174,0x0912,0x1111,0x1110,0x1931,0x2131,0x2131,0x2151,0x2152,0x1931,0x1131,0x1132,0x0953,0x1174,0x19F7,0x2238,0x1A17,0x19D6,0x1175,0x1113,0x1912,0x18F1,0x2111,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x290F,0x210F,0x2910,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2930,0x212F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x2910,0x2910,0x2930,0x2930,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2930,0x2930,0x292F,0x2930,0x210F,0x2930,0x292F,0x290F,0x290F,0x212F,0x292F,0x2930,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2930,0x2930,0x210F,0x2930,0x2130,0x2130,0x2151,0x1911,0x1111,0x1132,0x1153,0x1174,0x19D6,0x2217,0x2238,0x19D6,0x1975,0x1133,0x1112,0x1911,0x1911,0x2131,0x2131,0x2110,0x2130,0x2110,0x2110,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2110,0x2130,0x2130,0x212F,0x210F,0x210F,0x2130,0x212F,0x210F,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x212F,0x210F,0x212F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x28EE,0x28EE,0x28EE,0x28CE,0x28EE,0x28AD,0x28AD,0x288D,0x28AD,0x28AD,0x28AD,0x30AD,0x28AD,0x28AC,0x288C,0x288C,0x286C,0x286C,0x204B,0x202B,0x202A,0x1809,0x1809,0x1809,0x1809,0x1809,0x2009,0x200A,0x282A,0x306B,0x5990,0x6A32,0x82B4,0x9336,0x9B77,0xABD9,0xC4BB,0xCCDC,0xD4FD,0xDD1E,0xDD1D,0xDD1D,0xE55E,0xE53E,0xE53E,0xE53D,0xE51D,0xE53D,0xE51C,0xE4FC,0xE4FC,0xE4FB,0xDCDB,0xDCDB,0xDCBA,0xDC9A,0xDC99,0xDCBA,0xDC99,0xDC99,0xDC99,0xDC99,0xDC99,0xDC99,0xDC99,0xDC99,0xDC79,0xDC79,0xDC78,0xDC99,0xDC58,0xDC58,0xDC78,0xE478,0xE478,0xE478,0xE478,0xE478,0xDC58,0xDC58,0xDC37,0xDC57,0xE458,0xE478,0xE458,0xE457,0xE458,0xE458,0xDC37,0xDC37,0xDC16,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC37,0xDC57,0xD437,0xDC37,0xDC78,0xD478,0xCC37,0xC457,0xC477,0xC4B8,0xC519,0xBD1A,0xB51A,0xAD19,0x9CD8,0x8C97,0x7C76,0x7CD7,0x8D7A,0x8DFC,0x8E3D,0x7E5D,0x7EBD,0x6EBD,0x56BD,0x469D,0x3EFD,0x371E,0x2F5E,0x275E,0x1F7E,0x179E,0x179E,0x0FBE,0x0FBF,0x0FBF,0x07BF,0x07BF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BE,0x0F9E,0x17BF,0x279E,0x377E,0x46FD,0x665C,0x7559,0xA539,0xAC56,0xCC78,0xD457,0xCBF6,0xD3F6,0xD3F6,0xCBD5,0xD437,0xCC78,0xAC17,0x83D5,0x7CF8,0x7E3C,0x565B,0x46FD,0x377E,0x1F9E,0x0FBE,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DE,0x07DE,0x07DF,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07BE,0x0F9D,0x179E,0x277E,0x36FD,0x567B,0x7DFA,0x9559,0x9415,0xABF6,0xC437,0xC3F6,0xB3B5,0x9394,0x7BF3,0x8D98,0x6E5A,0x56DA,0x373A,0x275A,0x1779,0x0F99,0x07B9,0x07B9,0x07D9,0x07D8,0x07D8,0x07D8,0x07D7,0x07D7,0x07D7,0x07D6,0x07D6,0x07D6,0x07D5,0x07D5,0x07D5,0x07D5,0x07D4,0x07D4,0x07D3,0x07D3,0x07D2,0x07D2,0x07D2,0x07D1,0x07D1,0x07D1,0x07D0,0x07D0,0x07D0,0x07D0,0x07CF,0x07CF,0x07CF,0x07CE,0x07CE,0x07CE,0x07CE,0x07CE,0x07CD,0x07AD,0x07CD,0x07CD,0x07CD,0x07CD,0x07CD,0x07AD,0x07AD,0x07AD,0x07AD,0x07AD,0x07AD,0x07AE,0x07AE,0x078F,0x076F,0x0F70,0x0F51,0x0F32,0x1774,0x1715,0x16F5,0x1ED7,0x2698,0x1E18,0x1578,0x0497,0x03D7,0x0377,0x0338,0x033A,0x033C,0x031C,0x031D,0x02FE,0x02DE,0x02BE,0x02BE,0x029E,0x029F,0x029F,0x029F,0x027F,0x027F,0x025F,0x025F,0x025F,0x023F,0x023F,0x023F,0x023F,0x021F,0x021F,0x01DF,0x01DF,0x01DF,0x01FF,0x01DF,0x01BF,0x01BF,0x01BF,0x01BF,0x019F,0x019F,0x019F,0x019F,0x019E,0x09BE,0x11BE,0x093C,0x091A,0x21FC,0x1A5B,0x01F8,0x135B,0x3D9F,0x25DF,0x1E3F,0x167F,0x173F,0x179F,0x0FDF,0x0FDF,0x0FDF,0x0FDF,0x0FBF,0x0F9F,0x17BF,0x1F7F,0x275F,0x3EFE,0x5EBE,0x863E,0x6BB6,0x69D0,0xA233,0xBA14,0xCA14,0xC9D3,0xD1B3,0xD1B4,0xD173,0xD193,0xD193,0xD1B3,0xC993,0xC9B3,0xC1D3,0xC214,0xC276,0xB276,0x608F,0x58F1,0x5172,0x4131,0x3951,0x3972,0x4192,0x3992,0x3151,0x3131,0x3131,0x3151,0x3151,0x3151,0x3130,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x292F,0x292F,0x292F,0x292F,0x212F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x2110,0x2110,0x2110,0x2130,0x2131,0x1911,0x10F2,0x1995,0x2238,0x1A18,0x11F8,0x11B7,0x0976,0x0935,0x0134,0x0935,0x0935,0x0976,0x11B7,0x1A19,0x19F8,0x11B7,0x1155,0x0934,0x0913,0x0912,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1111,0x1111,0x1111,0x1111,0x1111,0x1131,0x1131,0x1131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2930,0x2110,0x2130,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2930,0x210F,0x212F,0x212F,0x212F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x212F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x210F,0x290F,0x210F,0x212F,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2130,0x2130,0x1910,0x1911,0x1152,0x1153,0x0975,0x11B7,0x11F9,0x09D9,0x01B9,0x01BA,0x01DA,0x01DA,0x09FA,0x01DA,0x01DA,0x01B9,0x01D9,0x01D9,0x09FA,0x09D9,0x09B8,0x0198, + 0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x1910,0x1110,0x1111,0x1111,0x1111,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1113,0x1113,0x1113,0x1113,0x1113,0x1113,0x1133,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x0912,0x1112,0x0912,0x0912,0x1112,0x1132,0x0912,0x0912,0x0912,0x1132,0x0932,0x0932,0x0912,0x0912,0x0912,0x0912,0x1112,0x0912,0x0912,0x0912,0x0912,0x1112,0x0911,0x0911,0x1112,0x0912,0x0911,0x0911,0x08F1,0x08F1,0x08F1,0x0911,0x1111,0x1132,0x1131,0x1111,0x1911,0x1911,0x1110,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2131,0x2152,0x1912,0x1132,0x1153,0x1995,0x19D6,0x21F7,0x21F7,0x19B5,0x1174,0x1132,0x1111,0x1111,0x1911,0x2131,0x2131,0x2131,0x1951,0x1951,0x1131,0x1132,0x0953,0x1174,0x19F6,0x2217,0x19F7,0x19B6,0x1174,0x1933,0x1912,0x1911,0x2111,0x2111,0x2130,0x2130,0x2130,0x2930,0x2910,0x2910,0x2930,0x2110,0x2910,0x2910,0x2110,0x2130,0x2130,0x212F,0x292F,0x212F,0x292F,0x290F,0x212F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2910,0x2910,0x210F,0x2110,0x212F,0x212F,0x210F,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x2930,0x2930,0x2930,0x2130,0x2130,0x1931,0x1931,0x1131,0x1132,0x1153,0x1153,0x19D6,0x2217,0x2217,0x21D6,0x1975,0x1133,0x1912,0x1912,0x1911,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x2910,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2151,0x2131,0x2151,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x2130,0x2130,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x292F,0x292F,0x212F,0x210F,0x210F,0x290F,0x290F,0x28EF,0x28EE,0x290F,0x28EE,0x28EE,0x28EE,0x290E,0x28EE,0x28CE,0x28CE,0x28CE,0x28CE,0x28CE,0x28CD,0x28CE,0x20AD,0x28CE,0x28CE,0x20AD,0x20AD,0x28CE,0x28CD,0x28CD,0x20AD,0x20AD,0x20AD,0x20AD,0x20AC,0x208C,0x206C,0x206B,0x204B,0x206C,0x286C,0x204B,0x200A,0x200A,0x202A,0x284B,0x306B,0x388C,0x38AD,0x48ED,0x594F,0x69B1,0x7212,0x8AB4,0x9B36,0xAB97,0xB3F9,0xCCDB,0xD51C,0xE55E,0xE57E,0xEDBF,0xED9E,0xED7E,0xED5D,0xE53C,0xDCFB,0xE51C,0xDCDB,0xE4FB,0xDCDB,0xE4DB,0xDCBA,0xDCBA,0xDCBA,0xDC9A,0xDC9A,0xDC9A,0xDC99,0xDC79,0xDC79,0xDC79,0xDC79,0xDC99,0xDC99,0xE499,0xE499,0xDC99,0xDC79,0xDC78,0xDC78,0xDC58,0xDC78,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xE458,0xDC37,0xDC58,0xDC58,0xDC78,0xDC57,0xDC57,0xDC58,0xDC78,0xDC78,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC58,0xD437,0xD457,0xD457,0xCC58,0xCC78,0xCC78,0xCC98,0xCCB9,0xC4D9,0xC4D9,0xBCD8,0xB4D9,0xACB8,0x9456,0x8415,0x7C35,0x8D19,0xA67D,0x9F1F,0x7EBE,0x6E9D,0x569D,0x56FD,0x471D,0x3F3E,0x2F5E,0x275D,0x1F5D,0x1F7E,0x179E,0x17BF,0x0FBF,0x0FBE,0x0FBF,0x07BF,0x0FDF,0x0FBF,0x0FBF,0x0F9E,0x179E,0x277E,0x373E,0x4EBD,0x65DB,0x8539,0x9456,0xBC98,0xCC78,0xCBF6,0xD416,0xDBF6,0xD3D6,0xDBF6,0xDC57,0xCC37,0xC458,0x9C37,0x7436,0x757A,0x663C,0x4EBC,0x3F5E,0x277E,0x17BF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07FF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DE,0x07DE,0x07DE,0x07BE,0x0F9E,0x179D,0x279E,0x371D,0x4E7C,0x761B,0x9579,0x93F5,0xABF5,0xBC16,0xC3F6,0xBBD5,0xA394,0x8BD4,0x84D6,0x867B,0x5EBA,0x3F1A,0x275A,0x177A,0x0F9A,0x07B9,0x07B9,0x07D9,0x07D9,0x07D9,0x07D9,0x07D8,0x07D8,0x07D8,0x07D7,0x07D7,0x07D7,0x07D6,0x07D6,0x07D6,0x07D5,0x07D5,0x07D5,0x07D4,0x07D4,0x07D3,0x07D3,0x07D3,0x07D3,0x07D2,0x07D2,0x07D2,0x07D1,0x07D1,0x07D1,0x07D1,0x07D0,0x07D0,0x07D0,0x07D0,0x07CF,0x07CF,0x07CF,0x07CF,0x07CF,0x07CF,0x07CE,0x07CE,0x07CE,0x07CE,0x07CE,0x07CE,0x07CE,0x07CE,0x07AE,0x07CE,0x07AE,0x07AF,0x07AF,0x078F,0x0790,0x0770,0x0F71,0x0F52,0x0F53,0x1754,0x1735,0x1EF6,0x1EB7,0x2699,0x265A,0x1D9A,0x0478,0x03B7,0x0358,0x0339,0x033B,0x031C,0x02FD,0x02FE,0x02BD,0x029E,0x02BE,0x029E,0x029F,0x027F,0x027F,0x027F,0x025F,0x025F,0x023F,0x023F,0x023F,0x021F,0x021F,0x021F,0x01FF,0x01FF,0x01DF,0x01DF,0x01DF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x019F,0x019F,0x099F,0x099E,0x119D,0x113C,0x193B,0x42BF,0x3ADD,0x2ABB,0x0258,0x3CFF,0x35BF,0x261F,0x165F,0x0EBE,0x175F,0x17BF,0x0FBF,0x07DF,0x07DF,0x07BF,0x07BF,0x0F9F,0x179F,0x279F,0x2F1E,0x46BE,0x769F,0x8D5B,0x5A31,0x9253,0xB234,0xC214,0xC9D3,0xD1B3,0xD193,0xD1B3,0xD193,0xD1B3,0xD1B3,0xC9B3,0xC9D3,0xC9D4,0xC214,0xC235,0xBA96,0x8993,0x58B0,0x5931,0x4951,0x4152,0x3951,0x3971,0x3992,0x3151,0x3131,0x3151,0x3151,0x3151,0x3131,0x3151,0x3130,0x2930,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x212F,0x292F,0x212F,0x212F,0x210F,0x210F,0x2910,0x2910,0x2930,0x2910,0x2110,0x2130,0x2130,0x1911,0x1911,0x10F2,0x1196,0x1A18,0x1A18,0x11B7,0x0976,0x0955,0x0935,0x0114,0x0934,0x0114,0x0135,0x0976,0x11D8,0x11D8,0x0997,0x0956,0x0955,0x0934,0x0933,0x1153,0x1133,0x1133,0x1133,0x1132,0x1132,0x1112,0x1112,0x1132,0x1112,0x1111,0x1132,0x1131,0x1131,0x1132,0x1132,0x1111,0x1112,0x1112,0x1112,0x1932,0x1932,0x1932,0x1931,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x290F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x2930,0x2130,0x210F,0x2130,0x2110,0x2110,0x2130,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x210F,0x212F,0x210F,0x2130,0x2110,0x210F,0x2130,0x212F,0x212F,0x212F,0x2930,0x290F,0x212F,0x212F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x2930,0x290F,0x212F,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x2130,0x210F,0x210F,0x210F,0x290F,0x212F,0x2930,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x292F,0x2930,0x2130,0x2130,0x2130,0x1931,0x1111,0x1132,0x0933,0x0975,0x11D7,0x11F9,0x09D9,0x01B9,0x01D9,0x01FA,0x01DA,0x01BA,0x01B9,0x01DA,0x01D9,0x01DA,0x01F9,0x01D9,0x01D9,0x01B9, + 0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2130,0x1910,0x1931,0x1131,0x1152,0x1973,0x1974,0x1994,0x1994,0x1994,0x1995,0x1994,0x1974,0x1974,0x1974,0x1974,0x1975,0x1975,0x1975,0x1995,0x1995,0x1974,0x1974,0x1994,0x1995,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1974,0x1974,0x1974,0x1974,0x1974,0x1994,0x1974,0x1974,0x1974,0x1973,0x1974,0x1973,0x1973,0x1974,0x1973,0x1974,0x1974,0x1974,0x1994,0x1974,0x1974,0x1974,0x1994,0x1974,0x1974,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1974,0x1994,0x1994,0x1994,0x1994,0x19B4,0x1994,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x21D5,0x19D5,0x19B4,0x21D5,0x21B5,0x19B4,0x1994,0x1973,0x1952,0x1132,0x1111,0x1932,0x1911,0x1911,0x2131,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2151,0x2172,0x1932,0x1112,0x1132,0x1133,0x1995,0x19D6,0x21F7,0x19F7,0x19D5,0x1174,0x1132,0x1111,0x1911,0x1931,0x1911,0x1931,0x2151,0x1951,0x1931,0x1131,0x1132,0x0933,0x1195,0x19F7,0x19F7,0x19F7,0x19B6,0x1154,0x1953,0x1912,0x1911,0x2131,0x1910,0x2110,0x2110,0x2130,0x2110,0x2110,0x2930,0x2930,0x2930,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2910,0x290F,0x210F,0x2930,0x212F,0x210F,0x290F,0x290F,0x292F,0x212F,0x2930,0x2930,0x290F,0x210F,0x2930,0x290F,0x2930,0x292F,0x2930,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1131,0x1132,0x1153,0x1174,0x19D6,0x21F7,0x2217,0x19D6,0x1995,0x1933,0x1112,0x18F1,0x18F1,0x2111,0x2110,0x2130,0x2130,0x2950,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x212F,0x2930,0x292F,0x292F,0x290F,0x290F,0x2930,0x2910,0x2930,0x2930,0x2930,0x2110,0x2131,0x2111,0x2131,0x2131,0x1931,0x1931,0x2152,0x2131,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x28EE,0x28EF,0x28EE,0x28EE,0x28EE,0x28EE,0x28EE,0x28EE,0x20CE,0x20CE,0x20EE,0x20CE,0x20EE,0x20CE,0x20CE,0x20CE,0x20CE,0x20AD,0x20AD,0x20AD,0x28CE,0x28CE,0x30EE,0x30CD,0x30EE,0x30CD,0x28AD,0x288C,0x288C,0x286C,0x284B,0x284B,0x202A,0x200A,0x2009,0x2009,0x2009,0x2009,0x2009,0x2829,0x388B,0x48EC,0x596E,0x69F0,0x8293,0x9315,0xABD7,0xBC19,0xC45A,0xCC7A,0xCC9B,0xD4DC,0xD4DB,0xD4FC,0xDCFC,0xDD1C,0xE51D,0xE51D,0xE53D,0xED5D,0xED3C,0xED3C,0xE51C,0xE4FC,0xE4DB,0xDCDB,0xE4DB,0xDCBA,0xDCBA,0xDCBA,0xDC99,0xDC79,0xDC79,0xDC99,0xDC79,0xDC79,0xDC79,0xDC79,0xDC79,0xDC59,0xDC78,0xE479,0xDC58,0xDC58,0xDC78,0xDC78,0xDC58,0xD458,0xD438,0xDC58,0xDC58,0xDC78,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC78,0xD458,0xD458,0xD458,0xD458,0xCC57,0xD458,0xCC57,0xCC78,0xCC78,0xC477,0xC4B8,0xC4D8,0xC4F9,0xB4D8,0x9456,0x6B93,0x5B93,0x74D8,0x861C,0x86BE,0x76BE,0x6EFE,0x5EFD,0x573E,0x473D,0x3F3D,0x2F3D,0x275D,0x1F7E,0x179E,0x179E,0x0FBE,0x0FBF,0x0F9E,0x0F9E,0x0F9E,0x179E,0x1F9F,0x2F5E,0x471E,0x569C,0x6DBA,0x84D8,0x9C36,0xBC37,0xCC37,0xD416,0xDC16,0xDBF6,0xD3B6,0xDBF7,0xD3F6,0xD437,0xCC78,0xBCB9,0x8C36,0x74B7,0x761C,0x5EBD,0x3EFD,0x275E,0x1F9F,0x0FBF,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07DE,0x07DF,0x07DF,0x07DE,0x07DE,0x07BE,0x0F9E,0x179E,0x277E,0x36FD,0x4E7C,0x763B,0x957A,0x8BF5,0xABD5,0xBBF6,0xC3D6,0xC3D6,0xB3B5,0x9394,0x7C14,0x8E3B,0x6EBB,0x46FB,0x2F3B,0x175A,0x0F7A,0x07BA,0x07BA,0x07DA,0x07FA,0x07DA,0x07D9,0x07D9,0x07D9,0x07F9,0x07F8,0x07F8,0x07D8,0x07D7,0x07D7,0x07D7,0x07F7,0x07D6,0x07D6,0x07D5,0x07F5,0x07D5,0x07D4,0x07D4,0x07D4,0x07D3,0x07D3,0x07F3,0x07D3,0x07D2,0x07D2,0x07F2,0x07F2,0x07F2,0x07F1,0x07F1,0x07F1,0x07D1,0x07D0,0x07D0,0x07D0,0x07D0,0x07D0,0x07D0,0x07D0,0x07CF,0x07CF,0x07CF,0x07CF,0x07CF,0x07CF,0x07CF,0x07AF,0x07AF,0x07D0,0x07B0,0x07B0,0x0790,0x0791,0x0771,0x0F72,0x0773,0x0F54,0x1755,0x1716,0x16D7,0x1EB8,0x269A,0x263B,0x1D9B,0x0499,0x03B8,0x0359,0x031A,0x02FB,0x02BC,0x02BD,0x02BE,0x029E,0x029E,0x029E,0x027E,0x027F,0x027F,0x027F,0x025F,0x023F,0x023F,0x021F,0x01FF,0x021F,0x01FF,0x01FF,0x01FF,0x01FF,0x01DF,0x01DF,0x01BF,0x01BF,0x019F,0x01BF,0x019F,0x019F,0x01BF,0x019F,0x019F,0x099F,0x099E,0x119D,0x193C,0x215C,0x5AFF,0x52DD,0x4B3D,0x1A38,0x237A,0x3D5F,0x2DFF,0x1E1F,0x169F,0x173F,0x17BF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07BF,0x079F,0x0F9F,0x179F,0x273E,0x3EFE,0x66BF,0x8E3E,0x6355,0x7A73,0xA233,0xC254,0xC1F3,0xC9B3,0xD1B3,0xD193,0xD193,0xD193,0xD1B3,0xD1B3,0xC993,0xC193,0xC1D4,0xC214,0xC276,0xAA56,0x68B0,0x50D0,0x5152,0x4151,0x4152,0x3972,0x3972,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3131,0x3130,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x292F,0x2930,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2910,0x2930,0x2110,0x2130,0x2131,0x18F1,0x10F2,0x19B6,0x1A19,0x11D8,0x0997,0x0955,0x0955,0x0955,0x0955,0x0934,0x0934,0x0935,0x0956,0x11F8,0x11D8,0x0997,0x0997,0x1196,0x1195,0x1195,0x1995,0x1995,0x1995,0x1995,0x1994,0x1994,0x1994,0x1994,0x1994,0x19B4,0x19B4,0x19B4,0x19B4,0x19B4,0x1994,0x1994,0x1994,0x1994,0x1954,0x1954,0x1133,0x1113,0x10F2,0x1912,0x1932,0x1931,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2110,0x2110,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x210F,0x2130,0x212F,0x212F,0x290F,0x290F,0x2930,0x212F,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x210F,0x212F,0x212F,0x2930,0x290F,0x212F,0x212F,0x2130,0x2930,0x2930,0x2930,0x2130,0x2930,0x2130,0x2930,0x2930,0x290F,0x212F,0x212F,0x290F,0x290F,0x212F,0x212F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2130,0x2130,0x2130,0x1931,0x1931,0x1112,0x0933,0x0975,0x11D7,0x09D8,0x09D9,0x09FA,0x01FA,0x01DA,0x01BA,0x01DA,0x01B9,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x01D9, + 0x2110,0x2110,0x2130,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x292F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1930,0x1931,0x1952,0x1973,0x19B4,0x19B5,0x21D6,0x21F6,0x21F6,0x21F7,0x21F6,0x21F6,0x29F7,0x29F6,0x29F7,0x29F7,0x29F6,0x29F7,0x2A17,0x29F7,0x2A17,0x2A17,0x2A17,0x29F6,0x2A17,0x2A37,0x29F6,0x2A16,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A16,0x2A37,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A16,0x2A16,0x2A16,0x2A16,0x2A16,0x2A16,0x2A16,0x2A16,0x2A16,0x2A16,0x2A16,0x2A16,0x2A16,0x2A17,0x2A17,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A17,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x3237,0x3257,0x2A37,0x3237,0x3237,0x3257,0x2A37,0x3257,0x2A37,0x2A37,0x2A16,0x2A17,0x2A37,0x2A37,0x2A57,0x2A37,0x2A17,0x2A17,0x2A16,0x29F6,0x21D6,0x21B5,0x1953,0x1132,0x1912,0x1912,0x1911,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x292F,0x2130,0x2130,0x2151,0x2172,0x1931,0x1911,0x1112,0x1133,0x1174,0x19D6,0x2217,0x19F7,0x19D6,0x1174,0x1153,0x1111,0x1931,0x1931,0x1911,0x2152,0x2151,0x2151,0x1931,0x1111,0x1132,0x0953,0x1194,0x19F7,0x2218,0x2217,0x19B6,0x1154,0x1933,0x1932,0x1931,0x2131,0x2110,0x2110,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x210F,0x2130,0x210F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x210F,0x290F,0x2910,0x2930,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x290F,0x290F,0x210F,0x2930,0x292F,0x212F,0x210F,0x292F,0x292F,0x292F,0x212F,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x292F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1153,0x1154,0x19D5,0x2217,0x21F7,0x21D7,0x1975,0x1133,0x1932,0x1911,0x1911,0x18F0,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x212F,0x292F,0x212F,0x292F,0x290F,0x290F,0x2930,0x2930,0x2910,0x2930,0x2930,0x2910,0x2110,0x2131,0x2111,0x1911,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1952,0x1932,0x2132,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x290F,0x20EF,0x20EF,0x210F,0x210F,0x290F,0x20EF,0x20EE,0x20EE,0x20EE,0x20EE,0x28EE,0x28EE,0x28CE,0x28CE,0x28EE,0x28EE,0x28EE,0x28CE,0x28CE,0x28CD,0x28CD,0x28CD,0x28AD,0x28CD,0x28CD,0x288C,0x28AC,0x208C,0x288B,0x288B,0x204B,0x204A,0x284A,0x202A,0x282A,0x282A,0x282A,0x282A,0x282A,0x282A,0x302A,0x304B,0x388B,0x388B,0x386B,0x388B,0x388B,0x48ED,0x512E,0x596F,0x69D0,0x7211,0x8272,0x92F4,0xA356,0xABB7,0xC47A,0xCCBB,0xDCFC,0xE53D,0xE55D,0xED7E,0xED7E,0xED5D,0xED3D,0xE51C,0xDCDB,0xDCBA,0xD49A,0xD47A,0xD47A,0xDC7A,0xDC7A,0xDC7A,0xDC79,0xDC79,0xDC79,0xDC99,0xDC79,0xDC79,0xDC79,0xDC79,0xDC58,0xDC58,0xDC58,0xDC78,0xDC58,0xDC58,0xDC58,0xDC58,0xDC78,0xDC78,0xDC58,0xD458,0xDC58,0xD437,0xD458,0xD457,0xD457,0xD457,0xD457,0xD477,0xCC77,0xCC97,0xC4B8,0xBCB8,0xBCF9,0xACF9,0x94B7,0x7C76,0x6C56,0x6CD7,0x75BA,0x7E5C,0x76BD,0x66DD,0x5EFD,0x575E,0x473E,0x375E,0x2F5E,0x277E,0x177E,0x179F,0x179E,0x0F9E,0x179E,0x177E,0x1F5E,0x2F3E,0x471E,0x5E5C,0x7DDB,0x8477,0xA436,0xC437,0xCBF6,0xD3F6,0xDBF6,0xDBD6,0xD3B6,0xDBB6,0xDBF6,0xDC37,0xCC37,0xC4B9,0x9457,0x7497,0x7E1C,0x5E9D,0x3EFD,0x2F5E,0x1F9F,0x0F9F,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07BE,0x0F9E,0x179E,0x277E,0x3F1E,0x4E7C,0x763B,0x8D7A,0x9415,0xABD5,0xBBD5,0xC3D6,0xC3D6,0xBBD6,0xA3B5,0x7B93,0x8D99,0x7EBC,0x4EDB,0x2F3B,0x1F7B,0x0F9B,0x0FBB,0x07DB,0x07DB,0x07DB,0x07DA,0x07DA,0x07DA,0x07DA,0x07D9,0x07F9,0x07D9,0x07D8,0x07F8,0x07F8,0x07D8,0x07D7,0x07D7,0x07D7,0x07D6,0x07D6,0x07D6,0x07D5,0x07D5,0x07D5,0x07D4,0x07D4,0x07D4,0x07D4,0x07D4,0x07D4,0x07D3,0x07F3,0x07F3,0x07F3,0x07F3,0x07F2,0x07D2,0x07F2,0x07D2,0x07D1,0x07D1,0x07D1,0x07D1,0x07F1,0x07D1,0x07D1,0x07D1,0x07D1,0x07D1,0x07D1,0x07B0,0x07B0,0x07D0,0x07D1,0x07D1,0x07B1,0x07B1,0x07B1,0x07B2,0x0792,0x0793,0x0773,0x0F54,0x0F35,0x0F16,0x16F6,0x16B8,0x1E99,0x1E5A,0x1DFB,0x1D3B,0x0C3A,0x0379,0x031A,0x02FB,0x02DC,0x02BD,0x029D,0x029E,0x027E,0x027F,0x027F,0x025F,0x025F,0x025F,0x023F,0x023F,0x021F,0x021F,0x01FF,0x01FF,0x01FF,0x01FF,0x01FF,0x01FF,0x01DF,0x01DF,0x01BF,0x01BF,0x019F,0x019F,0x019F,0x019F,0x01BF,0x019F,0x097E,0x117E,0x199E,0x191C,0x293B,0x5ABF,0x5ABD,0x5B1D,0x3A9A,0x1216,0x3C7E,0x357F,0x1DDE,0x165F,0x16FF,0x177F,0x0FBF,0x07BF,0x07BF,0x07DF,0x07BF,0x079F,0x0F9F,0x179F,0x279F,0x371E,0x56DE,0x86BF,0x853B,0x72D4,0x8A32,0xAA33,0xC213,0xC9D3,0xC9B3,0xD1D4,0xD1B3,0xD193,0xD193,0xD1B3,0xC9B3,0xC9B3,0xC1B3,0xC1D4,0xC235,0xBA56,0x8993,0x58AF,0x5952,0x4952,0x4152,0x3951,0x3951,0x3992,0x3971,0x3151,0x3971,0x3151,0x3131,0x3151,0x3131,0x3151,0x3130,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x1931,0x1911,0x08F2,0x19D7,0x19F8,0x11D8,0x0997,0x0956,0x0955,0x0955,0x0955,0x0934,0x0134,0x0955,0x0976,0x11D8,0x11F8,0x11D8,0x11D8,0x11F7,0x1A18,0x2238,0x2238,0x2A38,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x3257,0x3278,0x3277,0x3277,0x2A37,0x2A37,0x2A37,0x2A37,0x2A17,0x2A17,0x2A17,0x29F7,0x21B6,0x2195,0x1134,0x1113,0x1932,0x1932,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x2930,0x212F,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x292F,0x290F,0x290F,0x290F,0x2910,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x210F,0x2130,0x212F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x292F,0x2930,0x2130,0x2930,0x2130,0x2130,0x1910,0x1911,0x1132,0x1153,0x1195,0x11D7,0x09F8,0x01D9,0x09F9,0x01D9,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA, + 0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1951,0x1932,0x1153,0x19B4,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x29D6,0x2A17,0x29F6,0x29F7,0x2A17,0x29F6,0x29F6,0x29F6,0x29F6,0x29F6,0x29F6,0x29F6,0x29F6,0x29F6,0x29F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21D6,0x21F6,0x2216,0x21F6,0x21F6,0x21F6,0x21D6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21D6,0x21D6,0x21D6,0x21F6,0x21D6,0x21D6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F5,0x21F6,0x21F6,0x21F6,0x21D6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21D6,0x21F6,0x21F6,0x21D6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21D6,0x21D6,0x21F6,0x21D6,0x21D6,0x21D6,0x21F6,0x21F6,0x21D6,0x21D6,0x21F6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21F6,0x29F6,0x29F6,0x29F7,0x21D6,0x21D6,0x21F6,0x21F6,0x21F6,0x29F6,0x21F6,0x2A17,0x2217,0x2217,0x21D6,0x1974,0x1133,0x1112,0x1912,0x1932,0x1931,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x212F,0x2130,0x2130,0x2971,0x2152,0x1931,0x1111,0x1111,0x1153,0x1195,0x19F6,0x2217,0x1A17,0x19B6,0x1174,0x1153,0x1112,0x1932,0x1911,0x1911,0x1931,0x2151,0x2172,0x1931,0x1131,0x1112,0x0933,0x19B5,0x19F7,0x2238,0x2218,0x1996,0x1154,0x1953,0x1932,0x2132,0x2131,0x2131,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2130,0x2130,0x2110,0x210F,0x2930,0x2930,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x210F,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x2910,0x290F,0x290F,0x210F,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x292F,0x292F,0x212F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x1931,0x1931,0x1952,0x1973,0x1174,0x19B5,0x21F6,0x21F7,0x21D6,0x1975,0x1113,0x1112,0x1932,0x2131,0x2131,0x2110,0x20F0,0x2110,0x2110,0x2930,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x1931,0x1932,0x1932,0x1133,0x1133,0x1133,0x1134,0x1134,0x1134,0x1133,0x1912,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x212F,0x2930,0x2930,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x20EF,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x290F,0x290F,0x20EE,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x310F,0x28EE,0x28EE,0x28EE,0x28EE,0x290E,0x290E,0x310F,0x28EE,0x28CE,0x28CD,0x28EE,0x28AD,0x28EE,0x28CD,0x28CD,0x20AD,0x28CD,0x28AC,0x28CD,0x28CD,0x30CD,0x28AC,0x30AD,0x28AD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30EE,0x30CD,0x288C,0x28AC,0x288C,0x288C,0x286C,0x204B,0x202A,0x200A,0x1809,0x1809,0x2009,0x2009,0x2009,0x282A,0x304B,0x40CD,0x512E,0x7211,0x7A73,0x9316,0xA398,0xB3F9,0xC47B,0xCCBC,0xDCFD,0xE51E,0xE51E,0xED3E,0xED5E,0xED1D,0xED1D,0xED1D,0xE4DC,0xDCDB,0xDCBB,0xDC9A,0xDC79,0xDC79,0xDC79,0xDC59,0xDC79,0xDC58,0xDC58,0xDC58,0xE478,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xD458,0xDC58,0xD457,0xDC78,0xD458,0xD457,0xD477,0xCC57,0xCC77,0xC498,0xBCB8,0xBCF9,0xB4F9,0xAD19,0x9CB7,0x8435,0x7455,0x7D18,0x7DFB,0x7E7D,0x6E9D,0x66DD,0x56FD,0x46FD,0x373E,0x2F5E,0x1F5E,0x1F7E,0x177E,0x177E,0x1F5E,0x273E,0x371D,0x4EFD,0x5E7C,0x861C,0x8CB7,0xA456,0xC436,0xD457,0xDBF6,0xD3D6,0xD3B6,0xDBB6,0xDBD6,0xD3B6,0xD3F7,0xCC17,0xB3F6,0x9C57,0x7CB8,0x7DFB,0x669D,0x3EDD,0x2F5E,0x1F9F,0x0FBF,0x07BF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BE,0x07BF,0x0FBE,0x179E,0x277E,0x3F1E,0x569D,0x763C,0x8D59,0x8BF5,0xABD5,0xB3B5,0xC3B5,0xCBF6,0xC3D6,0xB3B5,0x8B73,0x84D7,0x869C,0x56BC,0x373C,0x1F7C,0x0F9C,0x0FBC,0x07BC,0x07DB,0x07DB,0x07FB,0x07FB,0x07DB,0x07DA,0x07DA,0x07FA,0x07FA,0x07D9,0x07D9,0x07D9,0x07D9,0x07D8,0x07D8,0x07D8,0x07D7,0x07D7,0x07D7,0x07D6,0x07D6,0x07D6,0x07D5,0x07D6,0x07D5,0x07D5,0x07D5,0x07D5,0x07D5,0x07D5,0x07D4,0x07D4,0x07F4,0x07D4,0x07D4,0x07D3,0x07D3,0x07F3,0x07D3,0x07D3,0x07F3,0x07F3,0x07D2,0x07D2,0x07D2,0x07D2,0x07D2,0x07D2,0x07B2,0x07B1,0x07D1,0x07D1,0x07D2,0x07D2,0x07D2,0x07D2,0x07D2,0x07B3,0x07B3,0x0794,0x0774,0x0754,0x0F35,0x0F36,0x0EF7,0x16D8,0x1699,0x1E7A,0x1DDA,0x1D7B,0x1CFC,0x0C1B,0x035A,0x02DA,0x02DC,0x02BD,0x029D,0x029E,0x025E,0x023E,0x023E,0x025F,0x023F,0x023F,0x023F,0x021F,0x021F,0x021F,0x01DF,0x01FF,0x01DF,0x01FF,0x01DF,0x01DF,0x021F,0x01DF,0x01DF,0x01BF,0x019F,0x019F,0x019F,0x019F,0x017E,0x097E,0x117D,0x197D,0x213C,0x20FA,0x629F,0x627C,0x62DC,0x5AFC,0x21F7,0x1AF9,0x2CDE,0x1D7E,0x15FE,0x1EDF,0x0F1F,0x0F9F,0x07BF,0x07BF,0x07DF,0x07BF,0x07BF,0x07BF,0x0F9F,0x1F9F,0x273E,0x3EDE,0x6EDF,0x969F,0x7BF7,0x7232,0xA233,0xBA13,0xC1B2,0xC9B3,0xD1D4,0xD1B4,0xD1B3,0xD193,0xD193,0xD1D4,0xC993,0xC9B3,0xC1B3,0xC1F4,0xBA35,0xB256,0x60AF,0x50D0,0x5152,0x4952,0x3931,0x3951,0x3972,0x3971,0x3971,0x3951,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2130,0x1911,0x1912,0x1133,0x19D7,0x19F8,0x11D8,0x11B8,0x0956,0x0955,0x0935,0x0955,0x0155,0x0155,0x0976,0x11D7,0x09D8,0x09D8,0x11D8,0x11D7,0x11D7,0x19F7,0x1A17,0x2217,0x21F7,0x2217,0x21F6,0x21F6,0x29F6,0x21F6,0x2A16,0x2A16,0x2216,0x21F6,0x21D5,0x21F5,0x21F6,0x21F6,0x21F6,0x2217,0x2A17,0x2A17,0x2A17,0x21F7,0x21B6,0x21B6,0x1975,0x1134,0x1953,0x1932,0x2132,0x2131,0x2130,0x2151,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x290F,0x2930,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x290F,0x290F,0x210F,0x290F,0x212F,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x292F,0x290F,0x212F,0x210F,0x2930,0x290F,0x210F,0x2110,0x2110,0x2110,0x2910,0x2930,0x290F,0x290F,0x2130,0x2130,0x212F,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x2110,0x210F,0x212F,0x2930,0x2930,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x290F,0x290F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2910,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2930,0x210F,0x290F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x1910,0x1111,0x1132,0x1153,0x11B6,0x11F8,0x11F8,0x09B8,0x01B8,0x01B9,0x01B9,0x01FA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA, + 0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x212F,0x212F,0x292F,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1953,0x1974,0x11B5,0x19D6,0x19D6,0x19D6,0x19D6,0x19D6,0x19B5,0x19B5,0x19B5,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x1994,0x1994,0x1994,0x1974,0x1974,0x1974,0x1974,0x1974,0x2195,0x1974,0x1974,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1995,0x1994,0x1994,0x1994,0x1974,0x1995,0x1974,0x1995,0x1974,0x1974,0x1994,0x1974,0x1974,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1994,0x1974,0x1974,0x1994,0x1994,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1994,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1154,0x1974,0x1974,0x1974,0x1954,0x1954,0x1974,0x1954,0x1974,0x1974,0x1974,0x1974,0x1974,0x1954,0x1974,0x1974,0x1974,0x1974,0x1954,0x1954,0x1954,0x1995,0x19B5,0x21F7,0x2218,0x2217,0x21F7,0x1995,0x1133,0x1133,0x1932,0x1932,0x2131,0x2111,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x292F,0x212F,0x2110,0x2130,0x2130,0x1931,0x1911,0x1931,0x1132,0x1153,0x11B5,0x19D6,0x19F7,0x19F7,0x19D6,0x1174,0x1133,0x1932,0x1932,0x1911,0x1931,0x2151,0x2151,0x1931,0x1931,0x1131,0x1152,0x1173,0x11B5,0x19D6,0x19F7,0x2217,0x1995,0x1974,0x1953,0x1932,0x1911,0x2111,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x212F,0x292F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x290F,0x2930,0x2910,0x2910,0x210F,0x290F,0x2910,0x2930,0x290F,0x210F,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x2930,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x210F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1132,0x1153,0x1174,0x1995,0x21F7,0x21F7,0x21F7,0x1975,0x1133,0x1112,0x1912,0x1911,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2110,0x2910,0x2930,0x2910,0x2910,0x2110,0x2110,0x2111,0x1911,0x1932,0x1973,0x1994,0x1175,0x1195,0x1196,0x1196,0x11B7,0x19B7,0x1175,0x1134,0x1112,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x290F,0x2910,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2910,0x2930,0x2910,0x2110,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x292F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x20EF,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x292F,0x290F,0x210E,0x20EE,0x20EE,0x28EE,0x290E,0x290F,0x290F,0x290E,0x28EE,0x28CE,0x28EE,0x28EE,0x290F,0x290E,0x28EE,0x28EE,0x28CE,0x28EE,0x28EE,0x28EE,0x28EE,0x28EE,0x28EE,0x28CE,0x28EE,0x20CD,0x28CE,0x28CE,0x28CE,0x28CE,0x28CE,0x20CE,0x28CE,0x28CE,0x20CE,0x20CE,0x28CE,0x28CD,0x28CE,0x28CD,0x28CD,0x28AD,0x288C,0x288C,0x288C,0x286C,0x284C,0x284B,0x284B,0x284B,0x304B,0x304B,0x306C,0x306C,0x388D,0x40AD,0x48EE,0x512F,0x69B1,0x71F2,0x8A94,0x9B16,0xB3D9,0xC45A,0xDCFD,0xED5E,0xED5E,0xED5E,0xE51C,0xDCBB,0xDC9A,0xDC7A,0xDC79,0xDC79,0xDC79,0xE479,0xDC79,0xDC58,0xDC79,0xDC79,0xDC79,0xDC58,0xDC58,0xDC58,0xDC58,0xDC78,0xDC58,0xDC57,0xDC57,0xD457,0xD458,0xD457,0xCC77,0xCC77,0xCC98,0xC498,0xC4D8,0xC4F9,0xBCF9,0xACB8,0x9476,0x7415,0x6C76,0x7539,0x7E3C,0x769D,0x66FE,0x571E,0x3EFD,0x3F5E,0x2F3E,0x275E,0x275E,0x273E,0x2F3E,0x3EFD,0x4EDD,0x669D,0x7DBA,0x8CD7,0xAC97,0xC457,0xCC16,0xDC17,0xDBF6,0xD3B6,0xDBD6,0xDBD7,0xDBD7,0xD3F7,0xCC17,0xB417,0x9C78,0x84D8,0x7DFB,0x66BD,0x46FD,0x273E,0x177F,0x0F9F,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x0FBF,0x179F,0x277E,0x3F1E,0x569D,0x763C,0x8D39,0x9415,0xA3B5,0xB395,0xC3B5,0xC3B6,0xCBD6,0xBBD5,0x9B94,0x73F4,0x8E5C,0x5EBC,0x371C,0x275C,0x179C,0x0FBC,0x07DC,0x07DC,0x07FC,0x07DC,0x07FC,0x07DB,0x07DB,0x07DB,0x07FB,0x07FB,0x07DA,0x07DA,0x07DA,0x07DA,0x07D9,0x07D9,0x07D9,0x07D8,0x07D8,0x07D8,0x07D7,0x07D7,0x07D7,0x07D7,0x07D7,0x07D6,0x07D6,0x07D6,0x07D6,0x07D6,0x07D6,0x07D6,0x07D6,0x07D5,0x07D5,0x07D5,0x07D5,0x07D5,0x07F4,0x07F4,0x07F4,0x07F4,0x07F4,0x07D4,0x07D4,0x07D3,0x07D3,0x07D4,0x07D4,0x07B3,0x07B3,0x07D3,0x07D3,0x07D3,0x07D3,0x07D3,0x07D3,0x07D3,0x07D3,0x07B4,0x07B4,0x0794,0x0775,0x0755,0x0736,0x0F36,0x0EF7,0x16D8,0x1698,0x1E7A,0x261B,0x1D5A,0x24FB,0x1C5C,0x0B7A,0x02FA,0x02BC,0x029C,0x027D,0x025E,0x023E,0x025E,0x023E,0x023F,0x023F,0x023F,0x023F,0x021F,0x01FF,0x01FF,0x01FF,0x01FF,0x01FF,0x01DF,0x01DF,0x01DF,0x01DF,0x01DF,0x01BF,0x01BF,0x019F,0x019F,0x017E,0x017E,0x095E,0x119E,0x195D,0x211B,0x28FA,0x5A3D,0x6A7D,0x623A,0x6ADC,0x4238,0x11B5,0x347D,0x1CFD,0x159E,0x165F,0x171F,0x0F7F,0x0FBF,0x07BF,0x07BF,0x07DF,0x07BF,0x07BF,0x0F9F,0x179F,0x277F,0x36FE,0x4E9D,0x8F1F,0x7CFA,0x6AD3,0x8A12,0xB233,0xC1D3,0xC9B3,0xD1B3,0xD1B4,0xD1B3,0xD193,0xD193,0xD1B3,0xC993,0xC993,0xC9D4,0xC1D4,0xC214,0xBA56,0x89B4,0x58AF,0x5131,0x4952,0x4151,0x3951,0x3971,0x3971,0x3951,0x3971,0x3151,0x3971,0x3151,0x3151,0x3131,0x3151,0x3150,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x2110,0x2130,0x1931,0x1912,0x1113,0x1196,0x1A18,0x19F9,0x11D8,0x0996,0x0976,0x0155,0x0155,0x0155,0x0975,0x0996,0x09B7,0x09D8,0x11F8,0x11F8,0x11D7,0x11D6,0x11B6,0x1195,0x1195,0x1195,0x1174,0x1974,0x1974,0x1974,0x1974,0x1974,0x1173,0x1173,0x1173,0x1173,0x1173,0x1174,0x1173,0x1174,0x1174,0x1975,0x19B5,0x21F7,0x21F7,0x21F7,0x21F7,0x19B6,0x1995,0x1154,0x1953,0x1932,0x1932,0x2131,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x212F,0x2130,0x212F,0x210F,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2930,0x2930,0x212F,0x2930,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x292F,0x212F,0x212F,0x2930,0x210F,0x212F,0x2130,0x2110,0x2110,0x2110,0x290F,0x2930,0x210F,0x2930,0x2130,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2930,0x2910,0x212F,0x212F,0x212F,0x212F,0x2930,0x290F,0x2930,0x212F,0x2930,0x212F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x210F,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2930,0x290F,0x2910,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x1930,0x1910,0x1931,0x1132,0x1133,0x1196,0x11D7,0x09B8,0x09D8,0x09D9,0x01D9,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA, + 0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2130,0x2130,0x2130,0x1910,0x1911,0x1931,0x1932,0x1953,0x1154,0x1174,0x19B5,0x19D6,0x19B6,0x19B5,0x1995,0x1174,0x1153,0x1153,0x1133,0x1132,0x1133,0x1132,0x1133,0x1133,0x1132,0x1132,0x1133,0x1132,0x1132,0x1133,0x1132,0x1112,0x1132,0x1133,0x1132,0x1932,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1132,0x1133,0x1133,0x1933,0x1133,0x1133,0x1133,0x1132,0x1133,0x1132,0x1153,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1132,0x1132,0x1112,0x1132,0x1132,0x1132,0x1132,0x1933,0x1132,0x1132,0x1112,0x1132,0x1132,0x1112,0x1112,0x1933,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x10F2,0x1112,0x1112,0x1112,0x1933,0x1133,0x1933,0x1133,0x1113,0x1154,0x19B6,0x2217,0x21F7,0x21F7,0x19B6,0x1154,0x1113,0x1912,0x1932,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2130,0x2151,0x1951,0x1132,0x1153,0x1153,0x1195,0x19D6,0x19F7,0x19F7,0x19D6,0x1175,0x1113,0x1132,0x1932,0x1931,0x1911,0x1931,0x1911,0x1931,0x1931,0x1131,0x1152,0x1153,0x1174,0x19D6,0x2238,0x2217,0x1195,0x1974,0x1953,0x1912,0x1931,0x2131,0x2131,0x2951,0x2930,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x2930,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2930,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2930,0x290F,0x290F,0x292F,0x2930,0x2930,0x2930,0x290F,0x2910,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x2930,0x2930,0x290F,0x292F,0x292F,0x290F,0x210F,0x2130,0x2130,0x2950,0x2150,0x2151,0x2131,0x1911,0x1931,0x1932,0x1973,0x1174,0x1194,0x2217,0x2217,0x21D6,0x1975,0x1133,0x1912,0x1912,0x1911,0x1911,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2930,0x2950,0x212F,0x2130,0x2130,0x2110,0x2930,0x2910,0x2931,0x2131,0x2131,0x18F0,0x1911,0x1153,0x19B5,0x19F7,0x11F7,0x11F8,0x1218,0x1A39,0x1A39,0x1A39,0x1A19,0x19D7,0x1154,0x1112,0x1931,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x212F,0x212F,0x290F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x210F,0x2910,0x210F,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2910,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x20EE,0x210F,0x210F,0x290F,0x292F,0x292F,0x210F,0x290F,0x20EE,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x20EE,0x20EE,0x20EE,0x210E,0x292F,0x292F,0x292F,0x292F,0x28EE,0x20EE,0x20EE,0x20EE,0x290F,0x290F,0x20EE,0x20EE,0x20EE,0x20EE,0x28EF,0x20CE,0x28EF,0x28EF,0x28EF,0x28EE,0x28EF,0x28CE,0x28EE,0x28EE,0x30EF,0x28CE,0x30EE,0x30CE,0x30CE,0x30CE,0x30CE,0x30CE,0x30CE,0x30CE,0x38CE,0x30CE,0x38CE,0x38CE,0x30CE,0x30AE,0x308D,0x284C,0x304C,0x282B,0x280A,0x300A,0x384B,0x48AC,0x616F,0x7A11,0xA357,0xBBF9,0xD49B,0xE4DC,0xE4FC,0xED1C,0xECFC,0xE4BB,0xE49A,0xDC79,0xDC9A,0xDC99,0xDC79,0xDC79,0xDC79,0xDC79,0xD458,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xD458,0xD458,0xD457,0xCC57,0xCC57,0xCC57,0xCC78,0xCC98,0xC4B8,0xC4F9,0xBD19,0xA4B7,0x7C15,0x7456,0x7D59,0x7E1C,0x767D,0x66DE,0x4EBD,0x46FD,0x371D,0x371D,0x2F1D,0x3F1E,0x46FD,0x56DD,0x667C,0x7DFB,0x84B7,0xA456,0xBC16,0xCBF6,0xDBF6,0xD3B6,0xDBD6,0xE3F7,0xE3F7,0xD3D7,0xCBD7,0xCC38,0xB437,0x9478,0x8519,0x761C,0x5EBD,0x473E,0x275E,0x177F,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07FF,0x07DF,0x07BF,0x07BF,0x0F9F,0x179F,0x277F,0x3F1E,0x569D,0x7E3C,0x8D39,0x9C56,0xABD5,0xBBB5,0xC395,0xC395,0xCBB6,0xBBB5,0xA3B5,0x7373,0x85BB,0x5E9C,0x3F1C,0x275D,0x179D,0x0FBD,0x07DD,0x07DD,0x07DD,0x07FC,0x07FC,0x07DC,0x07DC,0x07DC,0x07DB,0x07FB,0x07FB,0x07FB,0x07DA,0x07DA,0x07DA,0x07FA,0x07FA,0x07F9,0x07F9,0x07F9,0x07D8,0x07D8,0x07D8,0x07F8,0x07F8,0x07D8,0x07F8,0x07D7,0x07D7,0x07D7,0x07D7,0x07D7,0x07D7,0x07D7,0x07D6,0x07D6,0x07D6,0x07D6,0x07D6,0x07F5,0x07F5,0x07F5,0x07F5,0x07D5,0x07F5,0x07D5,0x07D5,0x07D5,0x07D5,0x07D5,0x07D5,0x07D5,0x07D5,0x07D4,0x07D4,0x07D4,0x07D4,0x07D4,0x07D4,0x07D4,0x07B5,0x07B5,0x0795,0x0776,0x0756,0x0736,0x0F16,0x0F17,0x16D8,0x1E99,0x263A,0x361B,0x357B,0x2C9B,0x2C5C,0x1B9C,0x0AFB,0x029C,0x025C,0x023D,0x023E,0x025E,0x023E,0x023F,0x023F,0x023F,0x023F,0x021F,0x01FF,0x01FF,0x01FF,0x01FF,0x01FF,0x01DF,0x01DF,0x01DF,0x01DF,0x01DF,0x01BF,0x019F,0x019F,0x01BF,0x019F,0x099F,0x097E,0x119E,0x21BE,0x293C,0x28FA,0x623D,0x6A3C,0x61D9,0x727B,0x629A,0x1974,0x2B7A,0x2CDE,0x151D,0x0DDE,0x16BF,0x175F,0x17BF,0x0FBF,0x07BF,0x07BF,0x07BF,0x079F,0x079F,0x179F,0x1F7F,0x2F3E,0x3EBD,0x6EBE,0x85DD,0x6334,0x79F1,0xAA33,0xC214,0xC9F3,0xC992,0xC9B3,0xD1B3,0xD1B4,0xD1B3,0xD1B3,0xC993,0xC9B3,0xC9D4,0xC9D4,0xC1D4,0xBA35,0xAA56,0x608F,0x50B0,0x5131,0x4972,0x4151,0x3951,0x3951,0x3951,0x3151,0x3171,0x3151,0x3171,0x3151,0x3151,0x3130,0x3151,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x2110,0x2130,0x2131,0x1911,0x10F2,0x0934,0x19D7,0x19F9,0x1A19,0x11F8,0x09B7,0x0976,0x0976,0x0975,0x0996,0x09B7,0x11F8,0x1218,0x11F8,0x11D7,0x0995,0x0954,0x0953,0x0933,0x0933,0x0912,0x0912,0x0912,0x1112,0x1112,0x1112,0x1112,0x1112,0x1111,0x1112,0x1152,0x1153,0x1153,0x1132,0x0912,0x0912,0x0912,0x0913,0x1134,0x1975,0x21D6,0x21F7,0x2217,0x19D6,0x1174,0x1154,0x1953,0x1932,0x2132,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2930,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x212F,0x2930,0x210F,0x2930,0x290F,0x212F,0x212F,0x2110,0x2110,0x210F,0x2130,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x212F,0x2930,0x292F,0x210F,0x290F,0x290F,0x2930,0x212F,0x212F,0x212F,0x2930,0x2930,0x290F,0x212F,0x212F,0x212F,0x2930,0x290F,0x212F,0x2930,0x290F,0x290F,0x212F,0x212F,0x212F,0x2930,0x2930,0x212F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x210F,0x2130,0x210F,0x2110,0x2910,0x210F,0x210F,0x2110,0x210F,0x210F,0x2110,0x2130,0x2110,0x2130,0x2130,0x2131,0x1951,0x1911,0x1112,0x1133,0x1175,0x11D7,0x11F8,0x09D8,0x01B8,0x01D9,0x01B9,0x01D9,0x01FA,0x01FA,0x01DA,0x01FA, + 0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x2930,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1933,0x1153,0x1974,0x21D6,0x21D6,0x19D6,0x1995,0x1174,0x1153,0x1133,0x1132,0x1112,0x1112,0x1132,0x1132,0x1932,0x1132,0x1112,0x1132,0x1132,0x1132,0x1932,0x1112,0x1112,0x1132,0x1932,0x1912,0x1932,0x1932,0x1932,0x1932,0x1132,0x1131,0x1132,0x1132,0x1132,0x1132,0x1131,0x1112,0x1111,0x1131,0x1932,0x1112,0x1112,0x1112,0x1912,0x1912,0x1912,0x1112,0x1132,0x1132,0x1132,0x1112,0x1132,0x1132,0x1111,0x1132,0x1131,0x1131,0x1932,0x1131,0x1932,0x1112,0x1111,0x1132,0x1132,0x1112,0x1912,0x1932,0x1932,0x1912,0x1111,0x1932,0x1932,0x1912,0x1912,0x1932,0x1932,0x1912,0x1912,0x1932,0x1912,0x1912,0x1912,0x1912,0x1111,0x1912,0x1911,0x1912,0x1912,0x1911,0x1912,0x1912,0x1911,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1113,0x1113,0x1134,0x19B6,0x21F7,0x2217,0x21F7,0x1995,0x1134,0x1112,0x1112,0x1932,0x1932,0x1931,0x1931,0x2131,0x2131,0x2111,0x2131,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x212F,0x2150,0x2130,0x2130,0x2151,0x2172,0x1951,0x1952,0x1132,0x1154,0x1175,0x19B6,0x19F7,0x19F7,0x19B6,0x1155,0x1113,0x1912,0x1932,0x1931,0x1911,0x2151,0x2151,0x1931,0x1952,0x1131,0x1132,0x1153,0x1174,0x19D6,0x2238,0x19F7,0x1195,0x1974,0x1953,0x1932,0x1931,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x290F,0x212F,0x210F,0x2910,0x2110,0x2130,0x210F,0x2110,0x2110,0x2130,0x2110,0x2910,0x2930,0x2130,0x2130,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x292F,0x290F,0x2930,0x290F,0x290F,0x292F,0x290F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2151,0x2131,0x1931,0x1931,0x1932,0x1953,0x1153,0x1995,0x21F7,0x21F7,0x21D6,0x1975,0x1113,0x1112,0x1912,0x1911,0x1911,0x2131,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x2930,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2131,0x2111,0x2131,0x2151,0x2151,0x1911,0x1132,0x1174,0x19F7,0x1A38,0x1218,0x09F9,0x09F9,0x0A19,0x0A19,0x09F9,0x11F9,0x11D8,0x19B6,0x1953,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x290F,0x2930,0x2930,0x210F,0x210F,0x210F,0x2130,0x2930,0x2930,0x2110,0x2110,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2130,0x210F,0x292F,0x292F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x20EF,0x292F,0x210F,0x210F,0x290F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x20EF,0x20EF,0x20EF,0x290F,0x290F,0x20EF,0x290F,0x290F,0x290F,0x28EF,0x290F,0x28EF,0x290F,0x290F,0x310F,0x310F,0x310F,0x310F,0x310F,0x310F,0x30EF,0x30EF,0x30EF,0x30EF,0x310F,0x310F,0x310F,0x30EF,0x390F,0x310F,0x390F,0x390F,0x390F,0x38EF,0x410F,0x410E,0x40EE,0x40CE,0x48CD,0x48AD,0x48CD,0x48AD,0x50CD,0x58ED,0x698F,0x8232,0xA336,0xC3F9,0xDCDC,0xED3D,0xE4FC,0xDCDB,0xDC9A,0xD47A,0xDC7A,0xDC7A,0xDC79,0xDC79,0xDC59,0xDC58,0xDC58,0xDC58,0xDC58,0xDC59,0xDC58,0xD437,0xD458,0xD437,0xD458,0xCC37,0xCC58,0xCC78,0xCC98,0xC498,0xC4B8,0xBCD9,0xA4B8,0x8456,0x6C36,0x74F8,0x863D,0x767D,0x6EDE,0x5EDE,0x4EDD,0x4EFE,0x46FD,0x4EDD,0x569D,0x665C,0x7E1B,0x8538,0xA497,0xBC57,0xC3F6,0xD3F6,0xDBF7,0xDBF7,0xDC17,0xDBF7,0xCBB6,0xCC17,0xBC17,0xA437,0x8457,0x7539,0x765D,0x56DD,0x3F3E,0x1F7E,0x179F,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x0F9F,0x179F,0x277F,0x3F1E,0x569D,0x7E1C,0x8D39,0x9C36,0xABD5,0xBBB5,0xBB75,0xCB95,0xCBB6,0xC3B6,0xABB5,0x72F2,0x8D7A,0x6EBD,0x471D,0x275D,0x1F9D,0x0F9D,0x07DD,0x07DD,0x07DD,0x07DD,0x07DD,0x07FD,0x07DC,0x07DC,0x07DC,0x07FC,0x07FC,0x07FB,0x07FB,0x07DB,0x07DB,0x07FB,0x07FA,0x07FA,0x07FA,0x07DA,0x07D9,0x07D9,0x07D9,0x07D9,0x07F9,0x07D8,0x07D8,0x07F8,0x07D8,0x07D8,0x07D8,0x07D8,0x07D8,0x07D8,0x07D7,0x07D7,0x07D7,0x07D7,0x07D7,0x07D6,0x07D6,0x07D6,0x07F6,0x07D6,0x07F7,0x07D7,0x07D7,0x07D7,0x07D6,0x07D6,0x07D6,0x07D6,0x07D6,0x07D6,0x07D6,0x07D6,0x07D5,0x07D5,0x07D5,0x07D5,0x07B5,0x07B6,0x0796,0x0796,0x0776,0x0756,0x0736,0x0F37,0x16F7,0x1EB8,0x2E99,0x3E5B,0x45DB,0x455C,0x3CBC,0x2BFB,0x239C,0x1B3C,0x0A9C,0x025C,0x025D,0x023D,0x023E,0x023F,0x023F,0x023F,0x021F,0x021F,0x01FF,0x01FF,0x01FF,0x01FF,0x01FF,0x01DF,0x01DF,0x01BF,0x01BF,0x01DF,0x01BF,0x01BF,0x01BF,0x019F,0x019F,0x099F,0x119E,0x115D,0x219E,0x295C,0x2098,0x6A3D,0x723C,0x69B8,0x7A3A,0x7ADB,0x39F6,0x1A57,0x347D,0x1CDD,0x0D7D,0x0E5F,0x173F,0x179F,0x0FBF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x0F9F,0x179F,0x275F,0x36FE,0x56BE,0x7E7F,0x7458,0x7A93,0x91F2,0xB213,0xC9F3,0xC192,0xC9B3,0xC9B3,0xD1B3,0xD193,0xD1B3,0xC993,0xC9B3,0xC9B3,0xC9D3,0xC1D4,0xC1F4,0xBA56,0x8972,0x506F,0x5911,0x5152,0x4151,0x4151,0x3951,0x3971,0x3951,0x3951,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x2130,0x2130,0x2131,0x1911,0x10F2,0x1113,0x1175,0x11D7,0x1A39,0x1A38,0x1A18,0x11D7,0x11B7,0x0996,0x11D7,0x11D7,0x11F7,0x11F7,0x09B6,0x0995,0x0954,0x0933,0x0932,0x1112,0x1111,0x1132,0x1111,0x1111,0x1932,0x1111,0x1111,0x1931,0x1111,0x1931,0x1931,0x1111,0x1131,0x1131,0x1132,0x1952,0x1132,0x1112,0x1112,0x1133,0x1134,0x1154,0x19B6,0x21F7,0x2217,0x19D6,0x1174,0x1154,0x1953,0x1932,0x1931,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2110,0x2930,0x2130,0x2130,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x2930,0x210F,0x210F,0x212F,0x210F,0x2110,0x212F,0x292F,0x212F,0x212F,0x210F,0x2930,0x2110,0x2110,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x2930,0x290F,0x212F,0x212F,0x2110,0x2110,0x212F,0x212F,0x2110,0x2110,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x210F,0x2930,0x210F,0x2930,0x210F,0x2930,0x210F,0x290F,0x290F,0x292F,0x212F,0x292F,0x290F,0x290F,0x210F,0x2930,0x292F,0x290F,0x292F,0x2930,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x210F,0x212F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x2930,0x2930,0x210F,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2131,0x2131,0x1931,0x1912,0x1112,0x1154,0x1195,0x11D7,0x11F8,0x09D8,0x01D9,0x01D9,0x01D9,0x01D9,0x01FA,0x01DA,0x01DA, + 0x2930,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2111,0x1911,0x1911,0x1932,0x1132,0x1153,0x1974,0x21D6,0x21F6,0x21D6,0x19B5,0x1974,0x1153,0x1132,0x1132,0x1132,0x1132,0x1952,0x1932,0x1932,0x1932,0x1952,0x1952,0x1952,0x1952,0x1952,0x1932,0x1932,0x1932,0x1932,0x1932,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1952,0x1952,0x1951,0x1931,0x1931,0x1931,0x1951,0x1931,0x1931,0x1931,0x1911,0x1911,0x1932,0x1931,0x1932,0x1912,0x1911,0x1931,0x1931,0x1931,0x1931,0x1111,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1911,0x1932,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1911,0x1931,0x1911,0x1931,0x1931,0x1931,0x1911,0x2131,0x2131,0x1931,0x1911,0x2131,0x1931,0x1931,0x1931,0x2132,0x2132,0x2131,0x1911,0x2132,0x1931,0x2132,0x1931,0x2132,0x1931,0x2152,0x1932,0x2152,0x1932,0x1932,0x1912,0x10F2,0x10F2,0x1133,0x1133,0x19B6,0x21F7,0x2217,0x21D7,0x1995,0x1134,0x0912,0x1132,0x1132,0x1932,0x1931,0x1931,0x2131,0x1931,0x2151,0x2151,0x2131,0x1931,0x1910,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2150,0x2130,0x2130,0x2131,0x2151,0x1952,0x1952,0x1132,0x1153,0x1154,0x19B6,0x21F8,0x21F8,0x19B6,0x1175,0x1133,0x1112,0x1111,0x1931,0x2151,0x2151,0x2131,0x1931,0x1111,0x1932,0x1153,0x1154,0x0954,0x19D6,0x2238,0x19F7,0x1195,0x1174,0x1132,0x1912,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x2930,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2930,0x2910,0x2110,0x2910,0x290F,0x292F,0x290F,0x290F,0x2930,0x290F,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2910,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x1952,0x1953,0x1153,0x19B5,0x21D6,0x2217,0x21D7,0x1975,0x1113,0x10F2,0x18F2,0x1911,0x2132,0x2131,0x1910,0x1910,0x2110,0x2110,0x2931,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2151,0x2151,0x2152,0x2152,0x1952,0x1132,0x1974,0x19D6,0x19F7,0x11F7,0x1218,0x01D8,0x01D9,0x01D9,0x01D9,0x09F9,0x09F9,0x09D8,0x11D8,0x11B7,0x19B5,0x1132,0x1911,0x1931,0x2151,0x2131,0x2130,0x2130,0x210F,0x212F,0x2130,0x292F,0x2930,0x212F,0x212F,0x210F,0x2930,0x290F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x292F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2930,0x290F,0x210F,0x2930,0x2130,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x210F,0x2110,0x210F,0x2110,0x210F,0x2130,0x2130,0x2130,0x210F,0x2930,0x210F,0x2110,0x2110,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x292F,0x290F,0x210F,0x290F,0x210F,0x292F,0x210F,0x292F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x2930,0x2930,0x2930,0x2910,0x2930,0x290F,0x290F,0x290F,0x3130,0x2930,0x3130,0x3130,0x3130,0x310F,0x3130,0x3110,0x3130,0x3130,0x3130,0x3130,0x3130,0x3930,0x3130,0x3130,0x3930,0x3930,0x3950,0x3930,0x3930,0x3930,0x4130,0x410F,0x4930,0x492F,0x5150,0x4930,0x5150,0x5170,0x5170,0x5150,0x514F,0x490E,0x40CD,0x408D,0x592F,0x69B1,0x92B5,0xB3B8,0xD49B,0xDCDC,0xE4FC,0xDCDB,0xDC9A,0xDC7A,0xDC59,0xDC79,0xDC59,0xDC79,0xDC59,0xDC59,0xE479,0xDC58,0xDC58,0xD438,0xD438,0xD458,0xD438,0xD438,0xD458,0xCC58,0xCC78,0xC498,0xC498,0xBCD9,0xACD8,0x8C36,0x7415,0x8519,0x8E1C,0x869E,0x76DE,0x5E7C,0x569C,0x569C,0x5E7C,0x663B,0x7E1B,0x9DFB,0xA519,0xAC16,0xBBF6,0xCBF6,0xD3F6,0xD417,0xDC17,0xD417,0xCBF6,0xBBF6,0xAC37,0x9C77,0x7477,0x75DB,0x66BD,0x46FE,0x2F5E,0x1F7E,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07BF,0x07BF,0x0FBF,0x1FBF,0x2F7F,0x3F1F,0x5E7D,0x7DFB,0x8CD8,0x93D5,0xABB5,0xC3D6,0xCBB5,0xCB95,0xCB96,0xCBB6,0xBBD6,0x7AF2,0x84F9,0x76DE,0x471D,0x2F7E,0x1FBE,0x0FBD,0x07BD,0x07DE,0x07DD,0x07DD,0x07DD,0x07DD,0x07DD,0x07FD,0x07FD,0x07DC,0x07DC,0x07DC,0x07FC,0x07DC,0x07DB,0x07DB,0x07FB,0x07DB,0x07DB,0x07DA,0x07DA,0x07DA,0x07DA,0x07FA,0x07F9,0x07F9,0x07F9,0x07D9,0x07D9,0x07D9,0x07D9,0x07D9,0x07D9,0x07D9,0x07D8,0x07D8,0x07D8,0x07F8,0x07F8,0x07D7,0x07F7,0x07D7,0x07D7,0x07D7,0x07D7,0x07F8,0x07D8,0x07D8,0x07D8,0x07D8,0x07D8,0x07D7,0x07D7,0x07D7,0x07D7,0x07D7,0x07D7,0x07D7,0x07D7,0x07D7,0x07B7,0x07B7,0x0797,0x0797,0x0797,0x0777,0x0757,0x0F37,0x1717,0x1ED7,0x3699,0x4E9B,0x563B,0x5DDC,0x5D7D,0x54DD,0x441C,0x233B,0x231C,0x1ABD,0x0A5C,0x025D,0x023E,0x021E,0x023E,0x021F,0x021F,0x021F,0x01FF,0x01FF,0x01FF,0x01DF,0x01FF,0x01DF,0x01DF,0x01BF,0x01BF,0x01DF,0x01BF,0x01FF,0x01DF,0x019F,0x019F,0x017E,0x097E,0x117D,0x217D,0x295C,0x28B9,0x6A1C,0x827C,0x79B8,0x8A5A,0x8ADA,0x6299,0x1174,0x33DC,0x249D,0x0D1D,0x0DBD,0x16BF,0x175F,0x0FBF,0x0FBF,0x07DF,0x07BF,0x07BF,0x07BF,0x0F9F,0x179F,0x1F7F,0x2F3F,0x46DE,0x6E9E,0x7D7C,0x7B55,0x79D1,0xA1D2,0xB9D3,0xC1D3,0xC9B3,0xC993,0xC993,0xD193,0xD193,0xC993,0xC993,0xC9B3,0xC9B3,0xC1B3,0xC1F4,0xBA35,0xB256,0x608F,0x58D0,0x5131,0x4131,0x4151,0x3971,0x3971,0x3971,0x3151,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2130,0x210F,0x212F,0x212F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x2130,0x2131,0x1911,0x18F1,0x1113,0x1134,0x1175,0x19D7,0x19F7,0x1A17,0x1A17,0x11F7,0x11D7,0x11D7,0x19F7,0x19F7,0x1195,0x0974,0x1173,0x1153,0x1152,0x1132,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x2151,0x1931,0x2151,0x1931,0x1931,0x1931,0x1951,0x1931,0x1951,0x1931,0x1932,0x1932,0x1112,0x1132,0x1153,0x1174,0x1995,0x19D6,0x2217,0x21F6,0x1175,0x1133,0x1132,0x1912,0x1911,0x2111,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2110,0x2130,0x210F,0x2930,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2130,0x212F,0x2930,0x210F,0x210F,0x2930,0x290F,0x212F,0x2930,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x2930,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x210F,0x2110,0x210F,0x212F,0x210F,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x2130,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2131,0x1911,0x1911,0x1112,0x1133,0x1195,0x11D7,0x1219,0x09D8,0x09F9,0x01D9,0x01F9,0x01FA,0x01DA,0x01DA, + 0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2131,0x1911,0x1911,0x1932,0x1132,0x1133,0x1974,0x21D6,0x21F6,0x21D6,0x1995,0x1174,0x1133,0x1132,0x1132,0x1132,0x1132,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1952,0x1952,0x1932,0x1952,0x1952,0x1952,0x1952,0x1952,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1951,0x1931,0x2151,0x1931,0x1931,0x1931,0x2151,0x2151,0x2131,0x1910,0x1910,0x1931,0x1911,0x2131,0x2131,0x2111,0x1911,0x1911,0x2131,0x1931,0x1931,0x1910,0x1931,0x1931,0x1931,0x1930,0x1931,0x1931,0x1910,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x1931,0x1931,0x1910,0x2131,0x2131,0x2131,0x2131,0x2131,0x2110,0x2130,0x2110,0x2111,0x2111,0x2131,0x2131,0x2111,0x2110,0x2130,0x2130,0x2131,0x2131,0x2131,0x2130,0x2111,0x2110,0x2131,0x2131,0x2131,0x1910,0x2131,0x1931,0x2131,0x1931,0x2131,0x2131,0x1931,0x2131,0x2152,0x2152,0x1932,0x1912,0x1112,0x1112,0x1153,0x19B6,0x19D6,0x19D7,0x21D7,0x1996,0x1154,0x0933,0x0933,0x1132,0x1132,0x1932,0x1932,0x1932,0x1952,0x1952,0x1952,0x1931,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1933,0x1154,0x1175,0x19B7,0x21F8,0x21F8,0x19B6,0x1175,0x1133,0x1132,0x1931,0x1931,0x2152,0x1910,0x1910,0x1931,0x1952,0x1932,0x1973,0x1154,0x0954,0x19D6,0x2238,0x19F7,0x1995,0x1974,0x1133,0x1932,0x1911,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x210F,0x2930,0x2110,0x2910,0x210F,0x290F,0x290F,0x2910,0x2930,0x2910,0x2110,0x2930,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x292F,0x290F,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1952,0x1952,0x1153,0x1995,0x21F6,0x21F7,0x21D7,0x1995,0x1134,0x10F2,0x18F2,0x1912,0x1911,0x2131,0x2131,0x1911,0x1910,0x2110,0x2110,0x2131,0x2131,0x2111,0x2111,0x2111,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x1931,0x1931,0x1951,0x1932,0x1932,0x1932,0x1112,0x1153,0x1175,0x19D7,0x09D7,0x09D8,0x01B8,0x01B8,0x01B9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x11D8,0x19D6,0x1994,0x1111,0x1931,0x2151,0x2151,0x2130,0x2130,0x2130,0x212F,0x2130,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x2930,0x212F,0x210F,0x2130,0x210F,0x210F,0x2130,0x2130,0x212F,0x210F,0x210F,0x292F,0x210F,0x290F,0x292F,0x210F,0x212F,0x212F,0x2930,0x2930,0x210F,0x2930,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2110,0x210F,0x2110,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2930,0x2910,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x292F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x3130,0x3110,0x3130,0x3130,0x3150,0x3130,0x3130,0x3130,0x3130,0x3950,0x3130,0x3950,0x3950,0x3950,0x3950,0x3950,0x3950,0x4150,0x4150,0x4150,0x4951,0x4951,0x4951,0x4971,0x4971,0x4971,0x4971,0x5191,0x4971,0x5191,0x5992,0x5991,0x5970,0x5970,0x590F,0x592F,0x69B0,0x92B4,0xB3B8,0xCC7B,0xE4FD,0xDCBC,0xDC9B,0xDC7A,0xDC7A,0xDC59,0xDC79,0xDC59,0xDC59,0xDC59,0xDC59,0xD438,0xD418,0xD438,0xD438,0xD458,0xD458,0xD458,0xCC57,0xCC77,0xC477,0xC498,0xBCB8,0xAC98,0x8BF5,0x73F5,0x8539,0x967D,0x8EBE,0x767D,0x665C,0x6E5C,0x765C,0x7E1B,0x95DB,0xA55A,0x9C56,0xBC57,0xC458,0xC3F6,0xCC37,0xC417,0xC417,0xC478,0xB498,0x9436,0x7C77,0x6D59,0x6E9D,0x56DD,0x3F3E,0x275E,0x179E,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07BF,0x0FBF,0x179F,0x2F7F,0x471E,0x5E7D,0x85FC,0x8CB8,0x93D5,0xB3B5,0xBBB5,0xCB95,0xCB75,0xCB95,0xCBB6,0xBBB6,0x82F3,0x8498,0x769D,0x4F1E,0x2F7E,0x1F9E,0x0FBE,0x07BE,0x07DE,0x07DE,0x07DE,0x07DE,0x07FE,0x07FD,0x07FD,0x07FD,0x07DD,0x07DD,0x07DC,0x07FC,0x07DC,0x07FC,0x07FC,0x07FC,0x07DC,0x07DB,0x07DB,0x07DB,0x07DB,0x07DB,0x07FA,0x07FA,0x07FA,0x07FA,0x07DA,0x07DA,0x07DA,0x07DA,0x07D9,0x07D9,0x07D9,0x07D9,0x07D9,0x07D9,0x07D9,0x07D8,0x07F8,0x07D8,0x07F8,0x07D8,0x07D8,0x07F9,0x07F9,0x07F9,0x07F9,0x07F9,0x07D9,0x07D9,0x07D9,0x07D9,0x07D8,0x07D8,0x07D8,0x07D8,0x07D8,0x07D8,0x07D8,0x07B8,0x07B8,0x07B8,0x0797,0x0798,0x0798,0x0798,0x0F58,0x1717,0x1ED7,0x2677,0x4699,0x5E7B,0x65FC,0x6DBC,0x655D,0x5C9C,0x4C1C,0x2ADA,0x22BB,0x22FE,0x129D,0x0A3D,0x023D,0x023E,0x021E,0x021E,0x021F,0x021F,0x01FF,0x01FF,0x01FF,0x01DF,0x01DF,0x01DF,0x01BF,0x01DF,0x01DF,0x01DF,0x01BF,0x01BF,0x019F,0x019F,0x017E,0x097D,0x095D,0x197D,0x297C,0x28D9,0x69FC,0x8A9C,0x81D9,0x9219,0x8A79,0x7ADA,0x2974,0x22B8,0x2C7E,0x14BD,0x0D7D,0x0E5F,0x171F,0x179F,0x0FBF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x0F9F,0x1F9F,0x275F,0x3EFE,0x569E,0x7E3E,0x8459,0x71F1,0x91D2,0xB1F3,0xC1F4,0xC9B3,0xC993,0xC972,0xD193,0xD193,0xD193,0xC993,0xC9B3,0xC9B3,0xC9D4,0xC1D4,0xB9D4,0xC297,0x8952,0x58B0,0x5111,0x4931,0x4151,0x4171,0x4171,0x3951,0x3951,0x3951,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x2950,0x3151,0x2930,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x290F,0x290F,0x210F,0x2130,0x2130,0x2111,0x1911,0x1912,0x1133,0x1134,0x1154,0x1175,0x1195,0x11B5,0x1195,0x11B5,0x19D6,0x11B5,0x19B5,0x1174,0x1153,0x1132,0x1952,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x1910,0x1910,0x1930,0x2131,0x2151,0x2131,0x2130,0x2130,0x1930,0x1930,0x1930,0x1930,0x1931,0x1931,0x1931,0x1911,0x1112,0x1132,0x1133,0x1174,0x1195,0x19D6,0x2A38,0x21F7,0x1174,0x1153,0x1132,0x1912,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2110,0x2130,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x2930,0x210F,0x210F,0x2930,0x212F,0x212F,0x290F,0x290F,0x210F,0x2930,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2110,0x2110,0x2130,0x1910,0x1910,0x1911,0x1911,0x1132,0x0933,0x0974,0x11D7,0x11D8,0x09D8,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9, + 0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2110,0x20EF,0x2110,0x2130,0x2131,0x2131,0x1911,0x1112,0x1132,0x1153,0x19B5,0x21F6,0x2217,0x19D6,0x1974,0x1153,0x1133,0x1953,0x1932,0x1952,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1132,0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x1112,0x1132,0x1952,0x1952,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x2131,0x1910,0x1910,0x2130,0x2130,0x2130,0x1910,0x2110,0x2110,0x2110,0x2131,0x2110,0x2131,0x2131,0x20F0,0x2110,0x2130,0x2110,0x2130,0x2130,0x1910,0x1930,0x1930,0x1930,0x1930,0x1930,0x1930,0x1930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1910,0x1910,0x1910,0x2131,0x2151,0x2151,0x2152,0x1931,0x1932,0x1112,0x1132,0x1153,0x1175,0x19B6,0x21F7,0x19F7,0x11D7,0x1195,0x1175,0x0934,0x1133,0x1133,0x1153,0x1132,0x1953,0x1152,0x1952,0x1952,0x1952,0x1931,0x2151,0x2131,0x2150,0x2130,0x2130,0x2150,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1954,0x1154,0x1976,0x19B7,0x2218,0x2218,0x19D6,0x1154,0x1133,0x1111,0x1111,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1132,0x1974,0x1154,0x1195,0x19D6,0x19F7,0x19D7,0x19B6,0x1174,0x1132,0x1112,0x1931,0x1931,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2151,0x1931,0x1111,0x1132,0x1153,0x19B5,0x19D6,0x2217,0x21D6,0x1975,0x1134,0x1113,0x1912,0x1912,0x1932,0x2131,0x2132,0x2131,0x1911,0x1911,0x1911,0x1911,0x1932,0x1932,0x1932,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1911,0x1111,0x1111,0x1111,0x1111,0x10F1,0x08F1,0x08F1,0x08F1,0x08F2,0x0913,0x0934,0x0955,0x0996,0x09D8,0x01F9,0x01D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01FA,0x09FA,0x09D9,0x11D8,0x19D7,0x1994,0x1112,0x1931,0x2151,0x1931,0x2131,0x2130,0x2130,0x210F,0x2130,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x2930,0x2910,0x210F,0x210F,0x2110,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x210F,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x2910,0x290F,0x290F,0x210F,0x2910,0x210F,0x2930,0x2910,0x2910,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x3150,0x3150,0x2930,0x3130,0x3130,0x3130,0x3151,0x3151,0x3151,0x3130,0x3151,0x3151,0x3951,0x3951,0x3951,0x3951,0x3971,0x3971,0x4171,0x4171,0x4171,0x4151,0x4972,0x4972,0x4992,0x4992,0x4992,0x4992,0x51B2,0x51B2,0x5192,0x5192,0x59B2,0x59B2,0x61D3,0x61D2,0x69D2,0x69D2,0x6170,0x510F,0x6150,0x71B1,0x92D5,0xB3B8,0xCC3A,0xDC9B,0xE4BB,0xDC7A,0xDC59,0xDC39,0xD439,0xDC59,0xDC58,0xDC58,0xD438,0xD438,0xD417,0xD437,0xD437,0xD437,0xD457,0xCC57,0xCC57,0xCC78,0xC498,0xBCB8,0xAC98,0x83D4,0x73F4,0x8D5A,0x8E3D,0x865D,0x7E1B,0x7E1B,0x861B,0x8DDB,0x9D9A,0x9497,0xA477,0xAC57,0xB478,0xB477,0xBC98,0xB477,0xA457,0x8C36,0x7436,0x64D7,0x7EDE,0x5F1E,0x3F3E,0x2F7E,0x1FBF,0x17BF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07BF,0x0F9E,0x179F,0x2F7F,0x3EFE,0x5E7D,0x85DC,0x8CB8,0x9BD5,0xB3B5,0xC395,0xCB75,0xCB55,0xD376,0xCB75,0xBB95,0x8AF3,0x8477,0x7E9E,0x4F1E,0x2F5E,0x1F7E,0x0F9E,0x07BE,0x07DE,0x07DE,0x07DE,0x07DE,0x07FE,0x07FE,0x07FE,0x07FD,0x07FD,0x07FD,0x07FD,0x07DD,0x07DD,0x07DD,0x07FD,0x07FC,0x07DC,0x07DC,0x07DC,0x07DC,0x07DC,0x07DB,0x07DB,0x07DB,0x07FB,0x07DB,0x07DB,0x07DA,0x07DA,0x07DA,0x07DA,0x07DA,0x07DA,0x07DA,0x07DA,0x07DA,0x07D9,0x07D9,0x07D9,0x07F9,0x07F9,0x07FA,0x07FA,0x07FA,0x07FA,0x07FA,0x07FA,0x07FA,0x07FA,0x07FA,0x07DA,0x07FA,0x07F9,0x07F9,0x07F9,0x07D9,0x07D9,0x07D9,0x07D9,0x07B9,0x07B9,0x07B9,0x07B9,0x07B9,0x0799,0x0799,0x0778,0x1779,0x2739,0x2ED8,0x2E17,0x567A,0x6E7C,0x6DFC,0x6D7C,0x6D1C,0x647D,0x5C1D,0x22B9,0x1A7A,0x22DD,0x127D,0x0A7E,0x023E,0x023E,0x021E,0x021F,0x021F,0x01FF,0x01FF,0x021F,0x01FF,0x01DF,0x01DF,0x01BF,0x01BF,0x01DF,0x01BF,0x01BF,0x01BF,0x019F,0x019F,0x019E,0x097E,0x119D,0x197D,0x297C,0x28F9,0x6A1C,0x929D,0x89F9,0x9219,0x9238,0x8ABA,0x4A17,0x11B5,0x2BFC,0x147C,0x0D1D,0x161F,0x0EBF,0x177F,0x17BF,0x07BF,0x07DF,0x07BF,0x07BF,0x07BF,0x0FBF,0x179F,0x1F5F,0x2F3F,0x4EBE,0x767E,0x8D5C,0x6252,0x89F2,0xAA13,0xC213,0xC1D3,0xC9D3,0xD1D4,0xD193,0xD193,0xD193,0xD193,0xC993,0xC9B3,0xC9B3,0xC1B3,0xC1D4,0xBA35,0xAA36,0x68B0,0x6131,0x5131,0x4951,0x4151,0x4171,0x3951,0x3971,0x3951,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2110,0x210F,0x2110,0x2110,0x2111,0x1911,0x1932,0x1933,0x1953,0x1133,0x1153,0x1153,0x1174,0x1174,0x1174,0x1994,0x1973,0x1953,0x1932,0x1931,0x1951,0x1930,0x1910,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x2110,0x2130,0x2130,0x1930,0x1911,0x1911,0x1931,0x1932,0x1952,0x1973,0x1974,0x1995,0x19D6,0x2217,0x21D6,0x19B5,0x1133,0x1112,0x1912,0x1932,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x292F,0x212F,0x290F,0x210F,0x290F,0x212F,0x292F,0x292F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x2930,0x210F,0x290F,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x290F,0x2930,0x210F,0x212F,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x212F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2151,0x1931,0x1911,0x1111,0x1152,0x1174,0x1154,0x1176,0x1197,0x09B8,0x09B8,0x09D9,0x01B9,0x01B9, + 0x212F,0x210F,0x2930,0x290F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2111,0x2131,0x1911,0x1932,0x1133,0x1153,0x19B5,0x21F7,0x21F7,0x21F6,0x1994,0x1153,0x1133,0x1132,0x1932,0x1952,0x1952,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1133,0x1153,0x0932,0x0933,0x0933,0x0933,0x0933,0x0933,0x1132,0x0912,0x1132,0x1132,0x1952,0x1952,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x2151,0x1952,0x1131,0x1132,0x1132,0x1154,0x1175,0x19D7,0x19F8,0x11F7,0x11F7,0x11D7,0x11B6,0x11B6,0x1175,0x1175,0x1174,0x1174,0x0953,0x0933,0x1133,0x1153,0x1952,0x1952,0x1931,0x2151,0x2150,0x2130,0x212F,0x212F,0x212F,0x2130,0x2930,0x2110,0x2110,0x2111,0x2132,0x2133,0x1933,0x1134,0x1175,0x19D7,0x2218,0x2218,0x19D6,0x1174,0x1132,0x1111,0x10F1,0x1951,0x2152,0x2152,0x2151,0x1931,0x1911,0x1932,0x1974,0x1154,0x1175,0x19D7,0x2218,0x19F7,0x19B6,0x1154,0x1133,0x1112,0x1911,0x2131,0x2131,0x2130,0x2130,0x2110,0x2930,0x2130,0x2130,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x2930,0x2110,0x2110,0x210F,0x2910,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x2151,0x1931,0x1931,0x1132,0x1153,0x1995,0x21F6,0x21F7,0x21F7,0x1995,0x1134,0x1113,0x1932,0x1912,0x1932,0x2132,0x2131,0x2111,0x2131,0x1931,0x1911,0x1912,0x1112,0x1112,0x1132,0x1132,0x1132,0x1112,0x0912,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x0913,0x0113,0x0933,0x0934,0x0955,0x1196,0x11B7,0x09D8,0x01D9,0x01D9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x09DA,0x09D9,0x11D8,0x11D7,0x19B5,0x1132,0x1932,0x1952,0x1931,0x2131,0x2130,0x2110,0x210F,0x2130,0x2930,0x210F,0x292F,0x292F,0x210F,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x210F,0x212F,0x210F,0x2130,0x2110,0x2910,0x2910,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2930,0x2910,0x210F,0x2110,0x2910,0x210F,0x2910,0x2910,0x2910,0x210F,0x2930,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x210F,0x2930,0x290F,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3971,0x3951,0x3971,0x3971,0x3971,0x4171,0x4172,0x4172,0x4172,0x4172,0x4992,0x4992,0x49B3,0x4992,0x49B2,0x49B3,0x51B3,0x5193,0x51B3,0x59B3,0x59B3,0x61D3,0x61D3,0x61D3,0x69F3,0x69F3,0x69F3,0x69D3,0x71D2,0x6991,0x71B1,0x79D1,0x9AB4,0xBBB8,0xD45A,0xDC9B,0xDC7A,0xDC5A,0xD459,0xDC79,0xD458,0xD438,0xD438,0xD438,0xD437,0xD437,0xD437,0xD437,0xD458,0xD437,0xCC57,0xC457,0xC478,0xBC98,0xA477,0x7BB4,0x7435,0x959A,0x9E5D,0x8DFB,0x8DFB,0x95DB,0x9DBB,0x9D5A,0x94B8,0xA4B8,0x9457,0x9456,0xA4B8,0x9CD8,0x8476,0x6C56,0x6D18,0x6E7C,0x5EFE,0x3F3D,0x273D,0x1F7E,0x17BF,0x0FBF,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07BF,0x07BF,0x0F9F,0x1F9F,0x2F5E,0x471E,0x669D,0x85DB,0x8C77,0xA3D5,0xB375,0xC395,0xCB95,0xD396,0xCB55,0xD395,0xC395,0x9334,0x7C36,0x7E9E,0x4EFE,0x2F5E,0x1F9E,0x0F9E,0x0FBE,0x07DE,0x07DE,0x07FE,0x07DE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07DE,0x07FD,0x07DD,0x07FD,0x07FD,0x07FD,0x07FD,0x07FD,0x07FD,0x07DC,0x07DC,0x07DC,0x07DC,0x07DC,0x07DC,0x07DC,0x07DB,0x07DB,0x07DB,0x07DB,0x07DB,0x07DB,0x07DB,0x07DB,0x07DB,0x07FB,0x07DA,0x07DA,0x07DA,0x07DA,0x07FA,0x07DA,0x07FB,0x07FB,0x07FB,0x07FB,0x07FB,0x07FB,0x07FB,0x07FB,0x07FB,0x07FB,0x07FB,0x07FA,0x07FA,0x07FA,0x07FB,0x07DB,0x07DB,0x07DA,0x07BA,0x07BA,0x07DA,0x07BA,0x07BA,0x0799,0x0799,0x0799,0x1779,0x1F59,0x2F3A,0x3698,0x35D7,0x667B,0x765C,0x6DBB,0x753B,0x74DC,0x6C7C,0x5C1D,0x2A99,0x1A39,0x229C,0x127D,0x0A5D,0x0A5E,0x021E,0x021F,0x021E,0x01FF,0x01FF,0x01FF,0x01FF,0x01DF,0x01BF,0x01DF,0x01BF,0x01BF,0x01BF,0x01BF,0x019F,0x01BF,0x01BF,0x019E,0x017E,0x097D,0x117D,0x217C,0x28F9,0x61BA,0x9ABD,0x9A3A,0x91D8,0x9217,0x9299,0x6258,0x1933,0x2B7B,0x1C5C,0x14DD,0x0D9E,0x167F,0x171F,0x17BF,0x0FBF,0x07BF,0x07BF,0x07DF,0x079F,0x0FBF,0x0F9F,0x1F9F,0x275F,0x3EDE,0x669E,0x8E1E,0x7396,0x71F1,0x99F2,0xB1F3,0xC1D3,0xC9B3,0xC993,0xC993,0xD193,0xD193,0xD1B3,0xC993,0xD1B3,0xC9B3,0xC1B3,0xC1D4,0xB9F4,0xBA56,0x8131,0x6111,0x5111,0x4931,0x4151,0x4171,0x3971,0x3971,0x3971,0x3971,0x3971,0x3151,0x3151,0x3151,0x3131,0x3131,0x3131,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x190F,0x2110,0x2131,0x2131,0x2132,0x1912,0x1912,0x1912,0x1932,0x1132,0x1132,0x1132,0x1953,0x1132,0x1932,0x1931,0x1931,0x1930,0x1930,0x1930,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2131,0x1931,0x1931,0x1931,0x1932,0x1953,0x1974,0x1194,0x21F7,0x2217,0x2217,0x1995,0x1153,0x1112,0x1111,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2930,0x292F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x210F,0x2930,0x212F,0x2130,0x2130,0x2110,0x2930,0x2130,0x210F,0x2110,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x2130,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x290F,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2930,0x210F,0x2930,0x2930,0x290F,0x290F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2930,0x2130,0x2150,0x2151,0x2130,0x1910,0x1931,0x1111,0x1132,0x1153,0x1154,0x1176,0x1197,0x09B7,0x11F9,0x11F9,0x09D9, + 0x2130,0x2130,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2131,0x1911,0x1911,0x1932,0x1133,0x1153,0x1995,0x21F6,0x21F6,0x21F7,0x19B5,0x1174,0x1133,0x1112,0x1112,0x1932,0x1952,0x1952,0x1152,0x1132,0x1153,0x1133,0x1154,0x1174,0x1195,0x11B5,0x11D6,0x11D6,0x19D6,0x19F7,0x19F6,0x11D6,0x11B5,0x11B5,0x1194,0x1173,0x1133,0x1132,0x1132,0x1931,0x1931,0x1931,0x1931,0x2151,0x2131,0x2130,0x2130,0x2130,0x2930,0x2110,0x210F,0x2110,0x2110,0x2930,0x2930,0x2110,0x2910,0x20EF,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2130,0x210F,0x212F,0x210F,0x2130,0x210F,0x210F,0x212F,0x2150,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2130,0x2172,0x2172,0x1131,0x1112,0x1133,0x1154,0x1196,0x11D7,0x1A18,0x11F8,0x11D8,0x09B7,0x09B7,0x09B7,0x11F8,0x11F8,0x1A18,0x11D7,0x11D7,0x1195,0x0974,0x1153,0x1953,0x1952,0x1931,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x2930,0x2110,0x2131,0x2111,0x2132,0x2132,0x1913,0x1134,0x1195,0x19D7,0x1A17,0x1A17,0x19D6,0x1174,0x0912,0x1111,0x1111,0x1931,0x2152,0x2131,0x2131,0x1931,0x1932,0x1932,0x1133,0x1154,0x1195,0x19F7,0x19F7,0x19F7,0x19D6,0x1154,0x1133,0x1112,0x1911,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x212F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x212F,0x212F,0x290F,0x290F,0x210F,0x290F,0x212F,0x212F,0x212F,0x212F,0x290F,0x292F,0x210F,0x212F,0x210F,0x2930,0x2930,0x2930,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x1931,0x1932,0x1132,0x1153,0x1994,0x21F6,0x21F7,0x21F7,0x1995,0x1133,0x1133,0x1912,0x1911,0x1911,0x1911,0x2111,0x1911,0x1911,0x1912,0x1932,0x1933,0x1133,0x1133,0x1154,0x1174,0x19B5,0x1195,0x1195,0x1196,0x11B6,0x1196,0x11B6,0x11D6,0x19D7,0x19D7,0x19F7,0x19F8,0x19F8,0x19F8,0x1A18,0x1A18,0x1A18,0x1A19,0x11F8,0x11D8,0x09B8,0x09D8,0x01F9,0x01DA,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x09DA,0x09D9,0x11B8,0x19D7,0x19D6,0x1133,0x1932,0x1932,0x2131,0x2131,0x2131,0x2130,0x2130,0x212F,0x290F,0x210F,0x290F,0x292F,0x292F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x2110,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x2910,0x210F,0x2910,0x210F,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x210F,0x2910,0x2110,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x2930,0x212F,0x2930,0x212F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x3150,0x3151,0x3151,0x3171,0x3151,0x3151,0x3131,0x3951,0x3130,0x3151,0x3971,0x3972,0x3971,0x3971,0x3972,0x4192,0x4192,0x4192,0x4192,0x4193,0x4192,0x4192,0x49B3,0x49B3,0x49D3,0x49B3,0x51D4,0x51B4,0x51B4,0x51B3,0x59B3,0x61D4,0x61F4,0x61D3,0x61D3,0x61B3,0x61D3,0x69D3,0x71F3,0x71D3,0x7A13,0x7A13,0x71F2,0x6970,0x71B1,0x8232,0xAB36,0xC3D8,0xCC5A,0xD47A,0xD479,0xD459,0xD438,0xD458,0xD458,0xD438,0xD437,0xD437,0xCC16,0xD437,0xD437,0xCC37,0xCC57,0xC457,0xBC77,0xBCB8,0x9C56,0x83D4,0x8C97,0x9DBB,0x9DFC,0x95DB,0x95DB,0x9DBB,0x9D9B,0x9D7A,0x9D9A,0x9559,0x8539,0x7518,0x7559,0x6DDA,0x6EBD,0x56FD,0x3F3E,0x275D,0x1F9E,0x179E,0x0FBF,0x0FDF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07BF,0x0FBF,0x1F9F,0x2F5E,0x3EFE,0x667D,0x85BB,0x8C16,0xABF6,0xBB95,0xCB96,0xD375,0xD376,0xD355,0xD375,0xC3B6,0x9313,0x8457,0x7E7D,0x571E,0x375E,0x1F9F,0x179E,0x0FBE,0x07DE,0x07DE,0x07FF,0x07FF,0x07FF,0x07FE,0x07FE,0x07FE,0x07DE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FD,0x07FD,0x07FD,0x07DD,0x07DD,0x07DD,0x07DD,0x07DC,0x07DC,0x07DC,0x07FC,0x07FC,0x07DC,0x07DC,0x07DB,0x07FB,0x07FC,0x07FC,0x07FC,0x07FB,0x07FB,0x07FB,0x07FB,0x07FB,0x07DB,0x07DC,0x07DC,0x07DB,0x07DC,0x07DC,0x07FC,0x07FC,0x07FC,0x07FC,0x07FC,0x07FC,0x07FC,0x07FC,0x07FB,0x07FC,0x07FB,0x07DB,0x07DB,0x07DB,0x07DB,0x07DB,0x07BB,0x07DB,0x07DB,0x07BB,0x07BA,0x079A,0x0F7A,0x177A,0x1F3A,0x373B,0x3EBA,0x3DF8,0x665B,0x763C,0x759B,0x74FB,0x74BB,0x749D,0x6C3D,0x2A78,0x1A19,0x125B,0x125D,0x0A3D,0x023E,0x025F,0x021E,0x021F,0x01FF,0x01FF,0x01FF,0x01FF,0x01FF,0x01DF,0x01DF,0x01BF,0x01BF,0x01BF,0x01BF,0x01DF,0x019E,0x017E,0x017D,0x097D,0x119D,0x219C,0x313A,0x61DB,0xA2FE,0x9A3A,0x99D7,0x9A17,0x9A99,0x7A79,0x2953,0x2277,0x2C3D,0x147C,0x0D5D,0x0E1E,0x16DF,0x179F,0x0FBF,0x0FDF,0x07BF,0x07DF,0x07DF,0x079F,0x0F9F,0x179F,0x1F5F,0x371F,0x56BF,0x867F,0x84DA,0x59F1,0x89D1,0xA9F3,0xC1D3,0xC9B3,0xC9B3,0xC993,0xD193,0xC973,0xD193,0xC993,0xD1B3,0xC9B3,0xC9B3,0xC1D3,0xB9F4,0xC276,0xA215,0x60D0,0x5911,0x4910,0x4151,0x4151,0x4171,0x3971,0x3971,0x3151,0x3171,0x3151,0x3151,0x3151,0x3131,0x3131,0x3131,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x290F,0x210F,0x2910,0x2910,0x20EF,0x210F,0x210F,0x2130,0x2110,0x210F,0x2110,0x2130,0x2131,0x2151,0x2131,0x2111,0x1911,0x1911,0x1911,0x1932,0x1932,0x1931,0x1932,0x1911,0x1911,0x1931,0x1930,0x1930,0x2130,0x2130,0x212F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x2110,0x2110,0x210F,0x2930,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1133,0x1174,0x19B6,0x2217,0x2217,0x2217,0x1995,0x1153,0x1132,0x1932,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x210F,0x212F,0x292F,0x212F,0x210F,0x212F,0x210F,0x2930,0x212F,0x2130,0x2130,0x2930,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x292F,0x212F,0x290F,0x2930,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x290F,0x210F,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x2910,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x2930,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2130,0x2131,0x2130,0x1910,0x1911,0x1932,0x1912,0x1133,0x1995,0x1996,0x19D7,0x11B8,0x11F9,0x11F9, + 0x2130,0x212F,0x212F,0x292F,0x292F,0x292F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1911,0x1911,0x1112,0x1133,0x1154,0x1995,0x21F6,0x21F7,0x21F7,0x19B5,0x1174,0x1153,0x1132,0x1932,0x1932,0x1132,0x1952,0x1153,0x1153,0x1154,0x1174,0x1175,0x1195,0x19B6,0x19D7,0x19F7,0x11F7,0x1A38,0x1A18,0x1A38,0x1A18,0x1A38,0x1A17,0x19F7,0x19F6,0x19D6,0x19D5,0x19B4,0x1153,0x1132,0x1132,0x1111,0x1931,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2910,0x2930,0x2910,0x290F,0x20EF,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x210F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x2910,0x210F,0x210F,0x212F,0x2930,0x210F,0x290F,0x292F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x2130,0x2151,0x2151,0x1931,0x1132,0x1112,0x1133,0x0954,0x11D6,0x11F7,0x09D8,0x09F8,0x09D8,0x09D9,0x09D9,0x09D9,0x09F9,0x1219,0x1219,0x1219,0x1A18,0x11B6,0x1195,0x1153,0x1952,0x2152,0x2131,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x2110,0x2930,0x2930,0x2111,0x2111,0x1911,0x1912,0x1933,0x1154,0x1195,0x19D6,0x19F7,0x2217,0x19B6,0x1174,0x1132,0x1132,0x1932,0x2152,0x2131,0x2152,0x1911,0x1911,0x1912,0x1132,0x1153,0x1154,0x1195,0x19F7,0x2218,0x2217,0x1195,0x1153,0x1132,0x1112,0x1931,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x2930,0x292F,0x210F,0x210F,0x210F,0x212F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x290F,0x290F,0x2930,0x2130,0x210F,0x2130,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x1132,0x1153,0x1994,0x21F6,0x21F6,0x21F6,0x19B5,0x1153,0x1132,0x1112,0x1911,0x1931,0x1911,0x2131,0x2111,0x1911,0x1912,0x1912,0x1133,0x1134,0x1154,0x1996,0x19D7,0x2218,0x2A79,0x2A79,0x2A9A,0x2A79,0x2279,0x2A7A,0x2A9A,0x227A,0x2A7A,0x225A,0x225A,0x223A,0x1A3A,0x1A19,0x1A19,0x1A19,0x1A19,0x11F9,0x11F9,0x11F9,0x09D8,0x09F9,0x01D9,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x09FA,0x09DA,0x09B9,0x11B8,0x19D7,0x19D6,0x1133,0x1932,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2930,0x2930,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2930,0x2930,0x2110,0x210F,0x210F,0x2910,0x210F,0x2910,0x2930,0x210F,0x210F,0x2910,0x2910,0x210F,0x2910,0x210F,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x212F,0x2130,0x2130,0x212F,0x2930,0x2930,0x2130,0x212F,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2950,0x2930,0x2930,0x2950,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3971,0x3971,0x3971,0x3972,0x3972,0x3972,0x3972,0x4192,0x4192,0x4193,0x41B3,0x49B3,0x49B3,0x49B3,0x49B3,0x51B4,0x51B4,0x51B3,0x51B4,0x59B4,0x59D4,0x59D4,0x59B3,0x61D4,0x69F4,0x69F4,0x69D4,0x69F4,0x71F4,0x7213,0x7213,0x7A34,0x7213,0x71D2,0x71B1,0x696F,0x71B0,0x8A72,0x9B15,0xBC18,0xCC9A,0xD49A,0xCC59,0xD458,0xD458,0xD458,0xD437,0xD437,0xD437,0xD417,0xD417,0xD437,0xCC57,0xCC57,0xC457,0xBC57,0xB477,0xA457,0x83D4,0x94D8,0xADFC,0xA5FC,0x9DDB,0x95DB,0x95DB,0x95FB,0x8E1B,0x85FB,0x761B,0x6E7C,0x6EFE,0x5F5F,0x3F1D,0x2F5E,0x1F7E,0x179E,0x0FBE,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07BF,0x0FBF,0x1F7E,0x2F5E,0x46FE,0x667D,0x857A,0x8BF5,0xABD5,0xC3B6,0xCB75,0xD375,0xD355,0xDB75,0xCB55,0xC396,0x9B33,0x8416,0x7E7D,0x56FE,0x375E,0x1F7E,0x0F9E,0x0FBE,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FD,0x07DD,0x07FD,0x07FD,0x07DD,0x07DD,0x07DD,0x07FD,0x07FC,0x07DC,0x07DC,0x07FC,0x07FC,0x07FC,0x07FC,0x07FC,0x07FC,0x07FC,0x07FC,0x07FC,0x07DC,0x07DC,0x07DC,0x07DC,0x07DC,0x07DC,0x07DD,0x07FD,0x07FC,0x07FD,0x07FD,0x07FD,0x07FC,0x07FC,0x07FC,0x07FC,0x07FC,0x07FC,0x07DC,0x07DC,0x07DC,0x07DC,0x07DC,0x07DC,0x07DC,0x07DB,0x07DC,0x07BB,0x079B,0x0F9B,0x0F7B,0x175B,0x273B,0x371B,0x3E9A,0x45F9,0x6E3B,0x7E1C,0x7D7B,0x7CDA,0x7CBB,0x7C9D,0x6C3E,0x2A38,0x1A19,0x1A3B,0x0A1C,0x0A3D,0x021E,0x021E,0x023F,0x021F,0x01FF,0x01DF,0x01DF,0x01DF,0x01DF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BE,0x019E,0x097D,0x117D,0x219C,0x313A,0x599A,0x9ADE,0x9A19,0x99D7,0xA1F7,0x9A58,0x8AB9,0x4194,0x19B5,0x33FC,0x1C3C,0x0CDD,0x15DE,0x169F,0x175F,0x17BF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07BF,0x0FBF,0x0F9F,0x1F7F,0x2F3F,0x46DF,0x6E9F,0x8DDE,0x62F4,0x71F1,0xA213,0xB9D3,0xC1B3,0xC993,0xD1B3,0xD193,0xD193,0xD193,0xD193,0xC9B3,0xC9B3,0xC9B3,0xC9D3,0xC1F4,0xBA14,0xC2D7,0x68F0,0x6131,0x4910,0x4951,0x4151,0x4171,0x3971,0x3951,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3151,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x2111,0x2131,0x2111,0x1911,0x2131,0x1931,0x1931,0x1931,0x1911,0x1931,0x1930,0x1910,0x2130,0x1910,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2130,0x210F,0x292F,0x292F,0x292F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1911,0x1932,0x1953,0x1154,0x19D6,0x21F7,0x2217,0x2217,0x1195,0x1154,0x1132,0x1112,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2110,0x2110,0x2910,0x2930,0x2910,0x2110,0x212F,0x210F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2130,0x212F,0x210F,0x210F,0x2930,0x2910,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x2130,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x2110,0x210F,0x210F,0x290F,0x290F,0x210F,0x2910,0x210F,0x210F,0x210F,0x2110,0x2910,0x2110,0x210F,0x210F,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x2110,0x210F,0x290F,0x290F,0x210F,0x212F,0x2930,0x210F,0x2130,0x212F,0x210F,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2111,0x1911,0x1932,0x1933,0x1953,0x1975,0x1175,0x1196,0x19B7,0x1197, + 0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x1931,0x1911,0x1112,0x1133,0x1154,0x1995,0x19F7,0x2217,0x19D6,0x19B5,0x1154,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1153,0x1154,0x1174,0x1175,0x1195,0x11B6,0x11B6,0x11B7,0x11B7,0x11B7,0x11D7,0x19F8,0x19F7,0x19F7,0x19F7,0x11F7,0x11F7,0x11F7,0x11F7,0x11D6,0x11D6,0x11B5,0x19B5,0x1174,0x1133,0x1132,0x1111,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x210F,0x2130,0x210F,0x2110,0x2930,0x290F,0x210F,0x292F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2131,0x1911,0x1931,0x1112,0x1132,0x1154,0x11B6,0x11D7,0x09D8,0x09F9,0x01D9,0x09F9,0x09FA,0x01D9,0x09F9,0x09FA,0x09FA,0x121A,0x11F9,0x11D8,0x11B7,0x1175,0x1153,0x1952,0x2131,0x2131,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2130,0x2110,0x2111,0x1911,0x1912,0x1112,0x1153,0x1195,0x19F6,0x2217,0x21F7,0x19D6,0x1174,0x1153,0x1111,0x1932,0x2132,0x2132,0x2111,0x18F0,0x1911,0x1932,0x1132,0x1133,0x0954,0x11B5,0x19F7,0x2238,0x2217,0x1195,0x1174,0x1112,0x1932,0x2132,0x2131,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x210F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x2930,0x290F,0x210F,0x212F,0x212F,0x290F,0x290F,0x212F,0x2930,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2131,0x2131,0x2131,0x1932,0x1932,0x1932,0x1153,0x1994,0x19F6,0x2217,0x21F6,0x19B5,0x1153,0x1132,0x1111,0x1911,0x1911,0x1911,0x2131,0x2131,0x2131,0x1912,0x1912,0x1133,0x1154,0x1175,0x19D7,0x2218,0x2218,0x19F8,0x19F8,0x19F8,0x19F7,0x11D7,0x19D7,0x19D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D8,0x19D8,0x19F8,0x19F8,0x19F8,0x11D8,0x11F8,0x11F8,0x11F8,0x11D8,0x09D8,0x09D9,0x01D9,0x01D9,0x01DA,0x01FA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x09D9,0x09B8,0x11B8,0x19D7,0x1975,0x1133,0x1932,0x1932,0x1931,0x2131,0x2130,0x2110,0x2130,0x2910,0x2910,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2930,0x2930,0x2110,0x2930,0x210F,0x290F,0x2910,0x210F,0x2930,0x2910,0x2910,0x2110,0x210F,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x2930,0x2110,0x2130,0x2110,0x2110,0x2910,0x2910,0x2110,0x20EF,0x2110,0x2110,0x2930,0x2110,0x2930,0x2910,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x2930,0x292F,0x212F,0x2930,0x212F,0x292F,0x292F,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2951,0x2950,0x2930,0x3131,0x3151,0x3131,0x3151,0x3151,0x3151,0x3151,0x3972,0x3971,0x3972,0x3972,0x3972,0x3992,0x3992,0x3992,0x4193,0x4193,0x4193,0x49B3,0x49B3,0x49D4,0x51D4,0x51B4,0x51B4,0x51D4,0x59D4,0x59B4,0x59D4,0x59D4,0x61F4,0x61F4,0x61F4,0x6A14,0x69F4,0x6A14,0x7214,0x7214,0x7213,0x7A34,0x7213,0x6991,0x6190,0x7A32,0x9B76,0x9355,0x82F4,0x7A92,0x7A92,0xA396,0xBC59,0xCC9A,0xCC79,0xCC38,0xD458,0xD438,0xD438,0xD437,0xD437,0xD417,0xD437,0xCC37,0xCC37,0xCC57,0xC457,0xBC37,0xB478,0x93B5,0x8BF6,0xA59B,0xAE1D,0x9DDB,0x95FB,0x85FB,0x863C,0x7E7D,0x6E9D,0x66DE,0x4F1E,0x36FD,0x2F5E,0x1F9E,0x179E,0x0F9E,0x0FBF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x0FBF,0x0F9F,0x1F7E,0x2F3E,0x4EFE,0x76BE,0x8519,0x8BB4,0xB3B6,0xC375,0xCB55,0xD355,0xDB55,0xD335,0xD355,0xC396,0x92F3,0x8416,0x867D,0x571E,0x375F,0x1F7E,0x179E,0x0FBE,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DE,0x07FF,0x07FF,0x07FF,0x07FF,0x07FE,0x07DE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FD,0x07FD,0x07DD,0x07DD,0x07DD,0x07FD,0x07FD,0x07DD,0x07DD,0x07FD,0x07FD,0x07FD,0x07FD,0x07FD,0x07DD,0x07DD,0x07FD,0x07DD,0x07DD,0x07DD,0x07FD,0x07FD,0x07DD,0x07DD,0x07FD,0x07FD,0x07FD,0x07FD,0x07FD,0x07FD,0x07FD,0x07FD,0x07FD,0x07FD,0x07DD,0x07DD,0x07DD,0x07DD,0x07BD,0x07DD,0x07DD,0x07DC,0x07DC,0x07BC,0x07BC,0x07BC,0x0F9C,0x179C,0x1F7C,0x2F5C,0x3F3C,0x469B,0x4DD9,0x6E3B,0x7DDB,0x855B,0x84DB,0x7C9B,0x8CBE,0x741D,0x2A18,0x1A19,0x1A3C,0x0A3C,0x021D,0x021E,0x021E,0x021F,0x01FE,0x01FF,0x01DF,0x01DF,0x01DF,0x01BF,0x01BF,0x01BF,0x019F,0x01BF,0x01DF,0x019E,0x01BE,0x01BE,0x099D,0x117D,0x217C,0x397B,0x4939,0x92BD,0x9A3A,0x99D7,0xA1D7,0xA278,0x9AD9,0x6236,0x1953,0x43DC,0x1BFB,0x14DD,0x0D9E,0x165F,0x173F,0x179F,0x0FBF,0x0FDF,0x07DF,0x07DF,0x0FDF,0x0FBF,0x0F9F,0x1F9F,0x275F,0x3F1F,0x569E,0x867F,0x7438,0x61F1,0x9212,0xB213,0xB992,0xC993,0xD1B3,0xD193,0xD193,0xC973,0xD193,0xC993,0xC9B3,0xC9B3,0xC193,0xC1D3,0xB9F4,0xC2D7,0x8192,0x58F0,0x5131,0x4951,0x4151,0x4151,0x3971,0x3971,0x3971,0x3971,0x3971,0x3171,0x3151,0x3151,0x3151,0x3151,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x2930,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x2131,0x2131,0x2131,0x2131,0x1931,0x1931,0x1931,0x1910,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2930,0x212F,0x2930,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1133,0x1153,0x19B5,0x2217,0x2217,0x2217,0x1195,0x1153,0x1132,0x1912,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2110,0x2110,0x2910,0x2930,0x2110,0x2930,0x212F,0x212F,0x212F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x210F,0x2110,0x2130,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x212F,0x290F,0x290F,0x2910,0x2910,0x290F,0x2930,0x212F,0x212F,0x210F,0x2930,0x210F,0x212F,0x2930,0x2930,0x210F,0x210F,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x292F,0x290F,0x290F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x2930,0x2110,0x212F,0x212F,0x292F,0x212F,0x210F,0x210F,0x2930,0x212F,0x290F,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x214F,0x212F,0x212F,0x2130,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1932,0x1932,0x1953,0x1974,0x1975,0x1134,0x1134, + 0x2130,0x2130,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1112,0x1133,0x1153,0x1195,0x19F7,0x19F7,0x19F7,0x19B6,0x1154,0x1133,0x1133,0x1132,0x1132,0x1132,0x1132,0x1153,0x1154,0x1174,0x1195,0x11B6,0x19D7,0x19F7,0x11D7,0x11B7,0x11B7,0x11B6,0x19B7,0x11B6,0x1196,0x11B6,0x11B6,0x11B6,0x11F7,0x11F7,0x19F7,0x19F7,0x11D7,0x11D6,0x19F6,0x1195,0x1195,0x1154,0x1132,0x1112,0x1911,0x1931,0x2131,0x1910,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x1910,0x1931,0x1931,0x1932,0x1132,0x1133,0x1175,0x11D7,0x09D8,0x09D8,0x09FA,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01FA,0x09DA,0x09D9,0x09F9,0x11D8,0x11B6,0x1174,0x1932,0x2131,0x2110,0x2110,0x2130,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x2130,0x2110,0x2110,0x2131,0x1911,0x1911,0x1112,0x1153,0x1995,0x19F6,0x2217,0x21F7,0x19D6,0x1994,0x1132,0x10F2,0x1912,0x2132,0x2131,0x2131,0x1931,0x1911,0x1932,0x1132,0x1133,0x0953,0x11B6,0x19F7,0x2217,0x1A17,0x19B5,0x1153,0x1133,0x1932,0x1931,0x2111,0x2110,0x2130,0x2930,0x2930,0x2110,0x2910,0x2930,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2930,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1932,0x1133,0x1153,0x19B5,0x19D6,0x21F7,0x21F6,0x1995,0x1153,0x1132,0x1111,0x1931,0x1110,0x1910,0x1931,0x1931,0x2131,0x1932,0x1912,0x1133,0x1154,0x1996,0x21F7,0x2218,0x21F8,0x19F7,0x19B6,0x1175,0x1175,0x0954,0x1174,0x1154,0x1174,0x1175,0x1175,0x1175,0x1175,0x1195,0x1175,0x1176,0x1176,0x1176,0x1196,0x1196,0x1196,0x11B7,0x11B7,0x11B7,0x09D8,0x09D9,0x01D9,0x01F9,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x09D9,0x09B9,0x09B8,0x11B7,0x19B6,0x1133,0x1933,0x1932,0x1932,0x2131,0x2131,0x2110,0x2110,0x2110,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2910,0x210F,0x2910,0x2910,0x210F,0x2110,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2930,0x2930,0x2930,0x2930,0x292F,0x212F,0x292F,0x2930,0x2130,0x212F,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2950,0x2930,0x2930,0x2950,0x2950,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3971,0x3151,0x3972,0x3972,0x3972,0x3972,0x3972,0x4192,0x3992,0x3992,0x3993,0x4193,0x41B3,0x4193,0x49B3,0x49B4,0x49B3,0x49B4,0x51D4,0x51D4,0x51B4,0x51B4,0x59D4,0x59D4,0x59D4,0x61F4,0x61F4,0x69F4,0x6A34,0x6A14,0x7214,0x7214,0x7213,0x69D2,0x6191,0x7233,0x9B97,0xAC18,0xA418,0xAC79,0x8BD7,0x7314,0x72F4,0x6272,0x6210,0x8B14,0xB418,0xCC99,0xC438,0xCC38,0xD458,0xD438,0xD438,0xD437,0xD437,0xD437,0xD437,0xD438,0xCC17,0xCC37,0xC438,0xB417,0xA3F7,0x8394,0x94B8,0xADFD,0x9E1C,0x8E1C,0x7E3C,0x6E5C,0x5E9D,0x4EDD,0x3EFD,0x2F5E,0x277E,0x179E,0x0FBF,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x0FBF,0x17BF,0x1F7E,0x373E,0x4EDD,0x767D,0x84D8,0x93B5,0xB3B6,0xC355,0xCB55,0xD355,0xDB55,0xD335,0xD375,0xC396,0x9B13,0x8416,0x7E5D,0x56FE,0x375F,0x1F9F,0x179E,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07DD,0x07FE,0x07FD,0x07FD,0x07DD,0x07FD,0x07DD,0x07DD,0x07FD,0x07FD,0x07FD,0x07DD,0x07DD,0x07DD,0x07FD,0x07FE,0x07DD,0x07FE,0x07FE,0x07FE,0x07FE,0x07FD,0x07FE,0x07FD,0x07FD,0x07FD,0x07FE,0x07FD,0x07FD,0x07FE,0x07FD,0x07FD,0x07FE,0x07DE,0x07DD,0x07DE,0x07DD,0x07BD,0x07DD,0x07DD,0x07DD,0x07DD,0x07BD,0x07BD,0x07BC,0x0F9C,0x177C,0x1F5C,0x2F3C,0x473D,0x4E7A,0x55F9,0x761B,0x7DBB,0x853B,0x84BA,0x8C9C,0x8CBE,0x73FD,0x21F7,0x221A,0x121B,0x0A1C,0x01FD,0x021E,0x01FE,0x021F,0x01FF,0x01FF,0x01DF,0x01DF,0x01DF,0x01DF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BE,0x019E,0x019E,0x017D,0x119D,0x197C,0x317B,0x38D8,0x929D,0xA25A,0xA1F8,0xA1B6,0xA257,0x9AB8,0x7A98,0x2933,0x3B1A,0x23BB,0x149C,0x155D,0x0E1E,0x16FF,0x177F,0x0FBF,0x07BF,0x07DF,0x07DF,0x0FDF,0x07BF,0x0F9F,0x179F,0x1F7F,0x2F1E,0x46BE,0x76BF,0x8DBD,0x5A72,0x9253,0xB213,0xB9B3,0xC9B3,0xC993,0xD193,0xC973,0xD193,0xD193,0xD1B3,0xD1B3,0xC993,0xC9B3,0xC1D3,0xB9D3,0xBA55,0xA256,0x58AF,0x6172,0x4931,0x4151,0x4151,0x4172,0x3971,0x3972,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x2950,0x2930,0x2950,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x210F,0x2130,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2110,0x2910,0x2930,0x2930,0x212F,0x2930,0x2930,0x2130,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2930,0x2130,0x2130,0x2130,0x2131,0x1910,0x1931,0x1932,0x1133,0x1154,0x19B5,0x19F7,0x2237,0x2217,0x1995,0x1154,0x1132,0x1931,0x1911,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x292F,0x210F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2110,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x290F,0x290F,0x292F,0x212F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x212F,0x210F,0x2910,0x2930,0x2110,0x212F,0x212F,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x212F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x292F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2930,0x212F,0x212F,0x292F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2130,0x2110,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x2950,0x2130,0x2130,0x2130,0x2111,0x1911,0x1932,0x1932,0x1932,0x1132,0x1133,0x1133, + 0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1930,0x1931,0x1931,0x1112,0x1132,0x1153,0x1195,0x19F7,0x2217,0x19F7,0x1195,0x1175,0x1153,0x1153,0x1132,0x1132,0x1132,0x1132,0x1153,0x1153,0x1174,0x1195,0x1196,0x19D7,0x19F7,0x19F7,0x11B6,0x11B6,0x1195,0x1154,0x1154,0x1154,0x1154,0x1154,0x1153,0x0954,0x0954,0x0954,0x1195,0x11D6,0x19F7,0x1A17,0x19F7,0x1A17,0x19D7,0x1195,0x1154,0x0912,0x1112,0x1931,0x1931,0x2131,0x2131,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x292F,0x290F,0x2910,0x210F,0x2910,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x210F,0x2110,0x1910,0x2131,0x2152,0x1932,0x1112,0x1154,0x11D7,0x09F8,0x09F9,0x09F9,0x01B9,0x01B9,0x01BA,0x01BA,0x01BA,0x01BA,0x01BA,0x09DA,0x09F9,0x09D9,0x19F8,0x1195,0x1112,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2930,0x2930,0x2110,0x2130,0x2131,0x2131,0x1931,0x1911,0x1112,0x1153,0x1194,0x19D6,0x2A38,0x2217,0x19B6,0x1974,0x1112,0x10F1,0x1911,0x2152,0x2151,0x2131,0x1911,0x1931,0x1931,0x1132,0x1133,0x0953,0x1195,0x19F7,0x2217,0x19F6,0x19B5,0x1153,0x1132,0x1932,0x1931,0x2131,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x290F,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2111,0x2131,0x1911,0x1932,0x1933,0x1153,0x1174,0x19D6,0x19F6,0x2217,0x19D6,0x1995,0x1153,0x1132,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1932,0x1133,0x1154,0x19B6,0x21F7,0x21F7,0x21F7,0x19D6,0x1995,0x1153,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1153,0x1153,0x0912,0x1132,0x1133,0x1133,0x1153,0x1153,0x0933,0x0933,0x0933,0x0954,0x0955,0x0996,0x09B7,0x09D8,0x09F9,0x01F9,0x01D9,0x01FA,0x01DA,0x01D9,0x09D9,0x11F9,0x11F9,0x19F8,0x1155,0x1133,0x1932,0x1932,0x1931,0x2111,0x2131,0x2130,0x2110,0x2110,0x2910,0x2910,0x20EF,0x290F,0x290F,0x210F,0x290F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x210F,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x212F,0x2130,0x292F,0x292F,0x290F,0x210F,0x292F,0x212F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x2950,0x2950,0x2950,0x3151,0x3151,0x3131,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3951,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x4192,0x4192,0x4193,0x4193,0x4193,0x49B3,0x49D4,0x49B4,0x49B4,0x51B4,0x51D4,0x51D4,0x59D4,0x59D4,0x59D4,0x59F4,0x61F4,0x59B3,0x61D4,0x61D3,0x61F3,0x69F4,0x69F3,0x69D2,0x69B2,0x7A12,0xA377,0xBC7A,0xB479,0xAC79,0xACFA,0xA4FA,0x6354,0x4A91,0x5AF3,0x6314,0x62F4,0x5A51,0x51D0,0x7293,0xABF8,0xCC9A,0xCC38,0xD438,0xD438,0xD418,0xD418,0xD417,0xD418,0xD418,0xD3F7,0xD417,0xCC17,0xCC18,0xC438,0xBC58,0x8B74,0x83F5,0x9D9B,0x961C,0x863C,0x767D,0x5EBD,0x4EFD,0x371E,0x2F5E,0x1F7E,0x179E,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07BF,0x0FBF,0x177E,0x275F,0x3F3E,0x56BD,0x763C,0x7C57,0x9BB5,0xBBB6,0xCB76,0xD355,0xDB35,0xDB35,0xDB35,0xD375,0xC375,0x92F3,0x8437,0x7E5D,0x56FE,0x375F,0x1F7F,0x0F9E,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DE,0x07DE,0x07DE,0x07FE,0x07FE,0x07DE,0x07DE,0x07DE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07DE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DD,0x07DD,0x07BD,0x07BD,0x07BD,0x0F9D,0x177D,0x1F5D,0x2F3C,0x471C,0x4E9B,0x5E3B,0x75FB,0x7D7B,0x851B,0x8CBB,0x847B,0x94FF,0x73FD,0x29F7,0x221A,0x121B,0x0A1C,0x021E,0x021E,0x01FE,0x01FE,0x01FF,0x01DF,0x01DF,0x01DF,0x01DF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x019E,0x017D,0x097D,0x197C,0x295B,0x30B8,0x823C,0xAA9C,0xAA39,0xA1B6,0xA217,0xA298,0x92D9,0x4154,0x3278,0x237A,0x1C7C,0x0D1D,0x0DFE,0x0E9E,0x177F,0x17DF,0x0FDF,0x07DF,0x07DF,0x07DF,0x07BF,0x0FBF,0x0FBF,0x179F,0x275F,0x36FE,0x5EDF,0x865F,0x5B34,0x8A73,0xAA13,0xB9F3,0xC9D3,0xC9D3,0xC9B3,0xC993,0xD193,0xC973,0xD1B3,0xD1B3,0xC9B3,0xC9B3,0xC1D3,0xB9D3,0xB214,0xB296,0x6910,0x6151,0x5151,0x4951,0x4171,0x4171,0x3972,0x3972,0x3972,0x3151,0x3951,0x3151,0x3151,0x3151,0x3151,0x3150,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x290F,0x292F,0x2930,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x2131,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x212F,0x2930,0x2930,0x2930,0x2130,0x212F,0x210F,0x212F,0x290F,0x292F,0x292F,0x210F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2131,0x2111,0x1931,0x1932,0x1153,0x1174,0x11B5,0x2217,0x2237,0x19D6,0x19B5,0x1153,0x1112,0x1931,0x1911,0x1910,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x290F,0x210F,0x2930,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x2910,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x2930,0x290F,0x212F,0x212F,0x290F,0x2930,0x2110,0x2110,0x2930,0x2930,0x290F,0x210F,0x290F,0x2910,0x2930,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x290F,0x290F,0x2930,0x290F,0x2930,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x2930,0x2910,0x2910,0x210F,0x290F,0x2910,0x2910,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x2930,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x2930,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2930,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2950,0x2950,0x2130,0x2130,0x2130,0x2110,0x2131,0x1931,0x1931,0x1931,0x1932,0x1932,0x1112, + 0x2150,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1132,0x1153,0x1995,0x19D6,0x21F7,0x19F7,0x19B6,0x1175,0x1154,0x1133,0x1153,0x1132,0x1132,0x1132,0x1153,0x1154,0x1195,0x1195,0x11B6,0x11D6,0x19F7,0x19D7,0x19B6,0x1195,0x1175,0x1154,0x1153,0x1133,0x1153,0x1133,0x1153,0x1132,0x1153,0x1153,0x1153,0x0954,0x0954,0x1195,0x11B6,0x19F7,0x19F7,0x19F7,0x19D6,0x11B6,0x1174,0x1133,0x1132,0x1911,0x1931,0x1931,0x1910,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x212F,0x210F,0x212F,0x210F,0x2930,0x210F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x290F,0x290F,0x212F,0x2930,0x2110,0x210F,0x2910,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2930,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x2930,0x292F,0x210F,0x210F,0x2110,0x2130,0x2151,0x2131,0x1932,0x10F2,0x1133,0x11B6,0x11F8,0x01D8,0x09F9,0x01B9,0x01BA,0x01BA,0x01BA,0x01BA,0x01BA,0x01BA,0x01DA,0x01B9,0x09F9,0x11F8,0x1196,0x1112,0x1931,0x2111,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2131,0x2131,0x1911,0x1911,0x1132,0x1153,0x1995,0x21D6,0x21F7,0x21F7,0x19B6,0x1974,0x1133,0x1112,0x1931,0x2131,0x2131,0x2131,0x1911,0x1931,0x1952,0x1112,0x1132,0x1154,0x1195,0x2217,0x2237,0x21F6,0x1194,0x1153,0x1132,0x1932,0x1931,0x1931,0x2131,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2131,0x2110,0x2131,0x2131,0x2131,0x2111,0x2111,0x1911,0x1932,0x1132,0x1133,0x1154,0x19B6,0x21F7,0x21F7,0x19D6,0x1995,0x1153,0x1133,0x1112,0x1932,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1112,0x1133,0x1154,0x19B6,0x2217,0x21F7,0x19D6,0x1995,0x1154,0x1112,0x1111,0x1111,0x1911,0x1111,0x1111,0x1931,0x1931,0x1931,0x1931,0x1931,0x1111,0x1931,0x1911,0x1911,0x1932,0x1132,0x1111,0x1132,0x1132,0x1153,0x1153,0x1174,0x0975,0x11B6,0x09D7,0x09F8,0x09F9,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x11F9,0x2239,0x21F8,0x1154,0x1112,0x1932,0x1931,0x2131,0x2131,0x2131,0x2130,0x2110,0x2110,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x2930,0x290F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x212F,0x212F,0x2110,0x2110,0x2110,0x2930,0x2130,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x2130,0x2930,0x290F,0x292F,0x2930,0x290F,0x292F,0x292F,0x212F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x2950,0x2950,0x2950,0x2930,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3151,0x3971,0x3971,0x3972,0x3972,0x4172,0x3972,0x4192,0x4192,0x4192,0x4193,0x4193,0x41B3,0x49B3,0x49B3,0x49B4,0x49D4,0x51B4,0x51B4,0x59D4,0x51D4,0x59D4,0x59D4,0x59D4,0x59D4,0x61F4,0x59D3,0x61D3,0x61D3,0x69F3,0x7213,0x6191,0x71D2,0x9B57,0xBC5B,0xBC9A,0xAC58,0xACB9,0xB55B,0x9CD9,0x6BF5,0x5BB4,0x5394,0x5374,0x4B34,0x5313,0x5B14,0x5AB3,0x5211,0x518F,0x7A92,0xB3F8,0xD49A,0xCC39,0xD438,0xD439,0xD418,0xD418,0xD418,0xD3F8,0xD418,0xD418,0xD3F7,0xCBF8,0xCC38,0xC479,0x9BF6,0x83D5,0xA5BC,0x8E1D,0x7E5D,0x669D,0x4EBD,0x3F1E,0x2F3E,0x1F7E,0x17BF,0x0FBF,0x0FBF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x0F9F,0x1F7F,0x2F5F,0x3F1E,0x5EBE,0x7DFC,0x7C16,0xA3D6,0xBB96,0xCB55,0xD335,0xDB55,0xDB35,0xDB55,0xD355,0xCB96,0x92F3,0x8416,0x7E5D,0x571E,0x375F,0x1F7F,0x0F9F,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DE,0x07FE,0x07FE,0x07FE,0x07FE,0x07DE,0x07DE,0x07FE,0x07FE,0x07DE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DD,0x07BD,0x07BD,0x0F9D,0x0F9D,0x177D,0x275D,0x373D,0x471D,0x567B,0x6E5C,0x75DB,0x7D5A,0x8D3B,0x8CBB,0x949C,0x9D1F,0x6BBD,0x29D7,0x1A1A,0x121C,0x01FC,0x01FD,0x01FE,0x01FF,0x01DF,0x01FF,0x01DF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x019F,0x019F,0x01BF,0x019E,0x09BE,0x099D,0x115C,0x29BD,0x30D9,0x69BB,0xAABC,0xB259,0xA1B6,0xA9F6,0xA237,0xA2FA,0x59B5,0x29B5,0x337A,0x1C5C,0x151D,0x0DDE,0x0E9F,0x175F,0x17BF,0x0FDF,0x07DF,0x07DF,0x07BF,0x07DF,0x07BF,0x0FBF,0x179F,0x1F7F,0x2F3F,0x4EDF,0x76BF,0x7499,0x7A73,0xA233,0xB1F3,0xC1D3,0xC9B3,0xC993,0xD193,0xD193,0xD193,0xD1B3,0xD1B3,0xD1B3,0xC9B3,0xC9B3,0xC1D4,0xB1F4,0xB276,0x89B2,0x6110,0x5951,0x4951,0x4151,0x4172,0x3972,0x3972,0x3972,0x3971,0x3951,0x3151,0x3151,0x3151,0x3130,0x3151,0x3150,0x2930,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2910,0x2910,0x2930,0x2930,0x290F,0x2930,0x292F,0x210F,0x290F,0x290F,0x290F,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x2130,0x212F,0x210F,0x2110,0x2110,0x2130,0x2111,0x2131,0x2131,0x2131,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x2130,0x2130,0x2130,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x292F,0x2930,0x2130,0x2130,0x2131,0x1911,0x1932,0x1932,0x1133,0x1174,0x1195,0x19F7,0x2217,0x21F6,0x1995,0x1153,0x1132,0x1932,0x1931,0x2111,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x290F,0x290F,0x290F,0x2930,0x2930,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x210F,0x290F,0x292F,0x210F,0x290F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x2930,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x290F,0x212F,0x292F,0x210F,0x290F,0x2110,0x2110,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x2910,0x2910,0x290F,0x210F,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x2930,0x2910,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x210F,0x290F,0x212F,0x2130,0x2130,0x2110,0x2130,0x210F,0x212F,0x210F,0x2930,0x212F,0x212F,0x212F,0x292F,0x2930,0x2130,0x2930,0x2110,0x2130,0x2130,0x1910,0x1930,0x1931,0x1931,0x1931, + 0x2930,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1911,0x1931,0x1932,0x1153,0x1153,0x19B5,0x19D6,0x19F7,0x19D6,0x1196,0x1175,0x1154,0x1133,0x1133,0x1132,0x1132,0x1132,0x1132,0x1194,0x11B5,0x11B5,0x11B6,0x11D6,0x19D7,0x11B6,0x1195,0x1154,0x1154,0x1154,0x1153,0x1953,0x1953,0x1952,0x1952,0x1953,0x1952,0x1953,0x1153,0x1132,0x1133,0x1154,0x1154,0x1175,0x1195,0x11D6,0x19D7,0x11B6,0x19D7,0x21F7,0x1174,0x1133,0x1132,0x1111,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x212F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x2930,0x2930,0x290F,0x290F,0x292F,0x212F,0x2930,0x212F,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x2930,0x292F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2151,0x2132,0x10F1,0x0912,0x11B6,0x1218,0x09F8,0x01D9,0x01B9,0x01BA,0x01FA,0x021B,0x01FB,0x01FA,0x01BA,0x01BA,0x01B9,0x09F9,0x1219,0x19D7,0x08F2,0x1911,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2151,0x2131,0x1931,0x1931,0x1132,0x1153,0x1995,0x21D6,0x21F7,0x21D6,0x21B6,0x1154,0x1133,0x10F1,0x1911,0x1931,0x1931,0x1931,0x2152,0x1952,0x1131,0x1112,0x1132,0x1153,0x19B5,0x2217,0x21F7,0x19F6,0x1195,0x1153,0x1153,0x1932,0x1932,0x1932,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x1931,0x2131,0x2131,0x2130,0x1910,0x2131,0x2131,0x2130,0x2130,0x2131,0x2131,0x2131,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1911,0x2131,0x2132,0x1932,0x1932,0x1132,0x1133,0x1154,0x21D6,0x21F7,0x19D6,0x21D7,0x1975,0x1153,0x1132,0x1112,0x1932,0x1931,0x1931,0x1931,0x1931,0x1952,0x1932,0x1132,0x1133,0x1154,0x19B6,0x2217,0x19F7,0x19D6,0x1175,0x1133,0x1112,0x1111,0x1911,0x2131,0x1911,0x2131,0x1930,0x2131,0x1930,0x1931,0x2131,0x1931,0x1931,0x2131,0x1911,0x2131,0x2131,0x1931,0x1911,0x1931,0x1931,0x1931,0x1132,0x1153,0x1174,0x1175,0x0996,0x11D7,0x11D8,0x09D8,0x09D8,0x09D9,0x09D8,0x11B8,0x11D7,0x2218,0x1996,0x1112,0x1912,0x1931,0x2131,0x2131,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x290F,0x2930,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x2930,0x2130,0x2130,0x2130,0x212F,0x210F,0x2110,0x2110,0x2910,0x2110,0x212F,0x210F,0x2130,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2930,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2930,0x212F,0x2130,0x2930,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2930,0x2950,0x2950,0x2950,0x3130,0x3151,0x3151,0x3131,0x3151,0x3151,0x3971,0x3971,0x3951,0x3951,0x3972,0x3972,0x4172,0x3972,0x3992,0x4192,0x3992,0x4193,0x4193,0x41B3,0x49B3,0x49B4,0x49B4,0x49B4,0x51B4,0x51B4,0x51B3,0x51B4,0x59D4,0x59B3,0x59B3,0x61D3,0x61D3,0x61D3,0x69F3,0x7213,0x69B1,0x8AD5,0xC49B,0xC4BB,0xB439,0xA417,0xACF9,0xAD3A,0x94F9,0x6C15,0x74B7,0x6477,0x5436,0x4BD5,0x4B74,0x4B54,0x5334,0x5B14,0x5AD3,0x5A92,0x51D0,0x492E,0x7232,0xB3B8,0xCC5A,0xCC39,0xCC18,0xD418,0xD418,0xD3F8,0xD3D7,0xD3D7,0xDC18,0xD3F8,0xCBF7,0xCC18,0xBC38,0xA417,0x7333,0x955B,0x8E1D,0x6E5D,0x56BD,0x46FE,0x2F3E,0x275E,0x177E,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07BF,0x0FBF,0x179F,0x277F,0x2F3E,0x46FE,0x669D,0x7DDB,0x8416,0xABB6,0xC3B6,0xCB35,0xDB56,0xDB56,0xDB36,0xDB55,0xD335,0xBB55,0x8AF2,0x8477,0x7E9D,0x4EFD,0x375F,0x1F7F,0x0F9E,0x07BF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FE,0x07FF,0x07FE,0x07FF,0x07DE,0x07DE,0x07FF,0x07FE,0x07FF,0x07FE,0x07FE,0x07FE,0x07FE,0x07FF,0x07FF,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FE,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DF,0x07DE,0x07DE,0x07DE,0x07FE,0x07DE,0x07DE,0x07DE,0x07BE,0x079D,0x0F9E,0x177E,0x277E,0x375D,0x3EBC,0x567C,0x765C,0x7DDB,0x855B,0x8CFB,0x8C9B,0x947C,0xA51F,0x5AFA,0x21F8,0x19FA,0x09FB,0x01FD,0x01BD,0x01DE,0x01DF,0x01DF,0x01DF,0x01BF,0x01BF,0x01DF,0x019F,0x01BF,0x019F,0x01BF,0x01BF,0x019E,0x019E,0x099E,0x117D,0x217C,0x28B9,0x5139,0xAA9C,0xB25A,0xA1B6,0xA1B6,0xA216,0xA2B9,0x7237,0x3173,0x2AF8,0x2C7C,0x14FD,0x15DE,0x0E7F,0x175F,0x17BF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x0FBF,0x1F9F,0x275F,0x3EFE,0x66BF,0x85DD,0x6AB3,0x9233,0xAA13,0xB9D3,0xC192,0xC9B3,0xC9B3,0xD193,0xD193,0xD193,0xD193,0xC993,0xC9B3,0xC9B3,0xC1B3,0xB9D4,0xBA55,0xA255,0x58AF,0x5911,0x4931,0x4151,0x4172,0x4172,0x3972,0x3972,0x3951,0x3951,0x3151,0x3151,0x3151,0x3151,0x3151,0x3130,0x2930,0x3150,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x210F,0x290F,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2111,0x1911,0x1912,0x1932,0x1912,0x1933,0x1933,0x1133,0x1133,0x1933,0x1932,0x1932,0x1931,0x1911,0x1910,0x2110,0x2130,0x2130,0x292F,0x292F,0x292F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x2930,0x2110,0x2130,0x2130,0x2131,0x2131,0x1911,0x1932,0x1153,0x1174,0x19B5,0x2217,0x21F7,0x19D6,0x19B5,0x1153,0x1132,0x1912,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x290F,0x290F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x292F,0x2930,0x212F,0x2930,0x292F,0x2930,0x210F,0x2110,0x2130,0x2130,0x2111,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x2910,0x2910,0x210F,0x2110,0x212F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x2930,0x2930,0x210F,0x2930,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x2930,0x2930,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x290F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x1930,0x2151,0x2151, + 0x2930,0x212F,0x292F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2110,0x1911,0x1931,0x1932,0x1153,0x1153,0x19B5,0x19F6,0x19F7,0x19D6,0x1995,0x1154,0x1154,0x1133,0x1953,0x1132,0x1132,0x1132,0x1132,0x1173,0x1195,0x11B5,0x11D6,0x19F7,0x11D6,0x11B6,0x1195,0x1154,0x1153,0x1153,0x1133,0x1953,0x1952,0x1932,0x1952,0x1952,0x1952,0x1932,0x1952,0x1973,0x1952,0x1153,0x1133,0x1133,0x1153,0x1174,0x1175,0x11B6,0x19D7,0x19D7,0x2218,0x2217,0x1153,0x1132,0x1112,0x1931,0x1931,0x1931,0x2131,0x2110,0x2130,0x212F,0x212F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2130,0x2110,0x2910,0x2110,0x2910,0x2110,0x210F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2130,0x212F,0x210F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x212F,0x292F,0x2110,0x2930,0x210F,0x290F,0x292F,0x292F,0x210F,0x212F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1112,0x11B5,0x11F8,0x09F8,0x0A1A,0x01B9,0x01DA,0x01FA,0x0A1B,0x021B,0x01DA,0x01BA,0x01BA,0x01B9,0x09F9,0x1A19,0x19B6,0x10F2,0x1911,0x2111,0x2131,0x2110,0x2130,0x2110,0x210F,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x1951,0x1932,0x1132,0x1133,0x1975,0x21D6,0x21F7,0x21D7,0x19B6,0x1174,0x1112,0x1111,0x1931,0x2152,0x2151,0x1951,0x1951,0x1931,0x1131,0x1132,0x1133,0x1174,0x19B5,0x21F7,0x2217,0x19F6,0x11B5,0x1153,0x1133,0x1133,0x1932,0x1932,0x1932,0x1911,0x1931,0x1911,0x1911,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1912,0x1932,0x1912,0x1912,0x1133,0x1133,0x1154,0x19B6,0x21F7,0x21F7,0x21F7,0x1175,0x1154,0x1132,0x1932,0x1932,0x1931,0x1931,0x2131,0x1931,0x1932,0x1932,0x1132,0x0913,0x1154,0x19D6,0x2217,0x21F7,0x19D6,0x1175,0x1133,0x1132,0x1111,0x1911,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2131,0x2110,0x2110,0x2131,0x1910,0x2131,0x1931,0x1951,0x1951,0x1132,0x1153,0x1154,0x1175,0x1195,0x11B6,0x11D7,0x11B7,0x11D7,0x11B7,0x11B6,0x1175,0x1154,0x1133,0x1932,0x1911,0x1931,0x2131,0x2130,0x2110,0x2130,0x2130,0x2110,0x2930,0x2930,0x210F,0x292F,0x210F,0x210F,0x2930,0x2930,0x290F,0x2110,0x210F,0x2930,0x2110,0x2110,0x2110,0x210F,0x2930,0x2110,0x2910,0x2110,0x210F,0x2930,0x2930,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2110,0x2110,0x2930,0x2130,0x2110,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x2130,0x2130,0x210F,0x210F,0x2930,0x2910,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2930,0x290F,0x2930,0x210F,0x2930,0x2930,0x2930,0x2110,0x2130,0x2930,0x2130,0x2930,0x2130,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x2950,0x2950,0x3150,0x3130,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3151,0x3951,0x3972,0x3972,0x3972,0x3972,0x3972,0x3992,0x3992,0x4193,0x4193,0x4193,0x49B3,0x4993,0x49B3,0x49B3,0x51B4,0x51B4,0x5193,0x51B3,0x59B3,0x59B3,0x59B3,0x61D3,0x61D3,0x61D3,0x69F3,0x69B1,0x8274,0xB419,0xC49B,0xBC79,0xAC38,0xAC78,0xACFA,0xA55A,0x84B7,0x6C76,0x6476,0x5476,0x5476,0x4C56,0x4C35,0x4BF5,0x4394,0x4B53,0x5354,0x5314,0x5AD3,0x5A72,0x5A32,0x59F1,0x61B0,0x7A32,0xAB97,0xCC5A,0xC418,0xCC19,0xD419,0xD3F8,0xD3F8,0xD3F8,0xD3F8,0xD418,0xD417,0xCC17,0xBC38,0xA3F7,0x6B13,0x955B,0x863D,0x665D,0x4EBD,0x3F1E,0x2F3E,0x1F7E,0x179F,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x0FBF,0x1F9F,0x275E,0x373E,0x4EDE,0x767D,0x7D39,0x8BF6,0xABB6,0xC396,0xD355,0xDB56,0xDB36,0xDB35,0xDB55,0xD376,0xC375,0x9313,0x8497,0x767D,0x4F1E,0x2F5E,0x1F7F,0x0F9F,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DE,0x07FF,0x07FE,0x07FF,0x07FE,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07FF,0x07DE,0x07FE,0x07DE,0x07DE,0x07BE,0x07BE,0x0F9E,0x0F9E,0x177E,0x277E,0x375E,0x46DD,0x5E7C,0x763C,0x7D9B,0x851A,0x94DB,0x947B,0xA4BD,0xA4FF,0x4258,0x21D8,0x19FB,0x11FC,0x01DD,0x01BD,0x01DE,0x01DF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x019F,0x01BF,0x01BF,0x01BF,0x01DF,0x017E,0x099E,0x097D,0x197D,0x28FA,0x48D8,0xA27C,0xBA9B,0xA9D7,0xA1B5,0xA1F6,0xA298,0x8A98,0x3972,0x2AB7,0x2C5C,0x1CFD,0x0D7D,0x0E5E,0x173F,0x17BF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x0FBF,0x179F,0x275F,0x371E,0x56DF,0x865F,0x7376,0x7A12,0xAA54,0xBA13,0xB9B2,0xC9D3,0xD1D3,0xC993,0xC993,0xD193,0xD193,0xD193,0xC973,0xC9B3,0xC9D4,0xC1D4,0xB1F4,0xBAB7,0x68F0,0x5911,0x4931,0x4951,0x4172,0x4172,0x4192,0x3971,0x3971,0x3971,0x3171,0x3151,0x3151,0x3151,0x3151,0x3130,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x290F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2111,0x1911,0x1911,0x1112,0x1133,0x1133,0x1154,0x1175,0x1995,0x1175,0x1175,0x1154,0x1133,0x1133,0x1132,0x1932,0x1931,0x2131,0x2130,0x2130,0x2930,0x2130,0x212F,0x212F,0x292F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2930,0x2930,0x2110,0x2910,0x2930,0x290F,0x290F,0x2110,0x2930,0x2130,0x2130,0x2111,0x1911,0x1932,0x1932,0x1953,0x1154,0x1995,0x2217,0x21F7,0x21F6,0x1995,0x1133,0x1133,0x1112,0x1911,0x2131,0x2110,0x2110,0x2130,0x2110,0x2130,0x2930,0x2930,0x2930,0x210F,0x212F,0x2130,0x212F,0x2130,0x212F,0x2930,0x2110,0x2930,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x1911,0x1931,0x1911,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x2910,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x2910,0x290F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x210F,0x210F,0x292F,0x292F,0x290F,0x2910,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130, + 0x2930,0x292F,0x290F,0x290F,0x210F,0x210F,0x212F,0x2930,0x210F,0x2130,0x2110,0x2110,0x1931,0x1931,0x1953,0x1153,0x1174,0x1195,0x19F6,0x2217,0x19F7,0x1195,0x1154,0x1133,0x1133,0x1933,0x1932,0x1112,0x1111,0x1111,0x1133,0x1174,0x11B5,0x11B6,0x11D6,0x11B6,0x19D7,0x1196,0x1974,0x1133,0x1132,0x1132,0x1112,0x1111,0x1931,0x1931,0x1111,0x1911,0x1931,0x1931,0x1931,0x1932,0x1952,0x1952,0x1953,0x1133,0x1133,0x1133,0x1133,0x1175,0x1195,0x19B6,0x2218,0x2217,0x19B5,0x1153,0x1132,0x1111,0x1931,0x1931,0x2131,0x2131,0x2130,0x2110,0x212F,0x210F,0x292F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2910,0x292F,0x292F,0x2930,0x2930,0x290F,0x210F,0x2930,0x2930,0x2930,0x292F,0x212F,0x212F,0x2130,0x2110,0x210F,0x210F,0x212F,0x212F,0x2930,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1132,0x1195,0x1A18,0x09D8,0x09F9,0x01B9,0x01D9,0x01B9,0x01FA,0x01DA,0x01DA,0x01B9,0x01B9,0x01D9,0x11F9,0x1A18,0x1195,0x10F2,0x1911,0x2111,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2151,0x2172,0x1932,0x1912,0x1112,0x1133,0x1995,0x21D7,0x21F7,0x21F7,0x19B5,0x1174,0x0912,0x1132,0x1952,0x1931,0x1931,0x1931,0x1931,0x1951,0x1932,0x1132,0x1153,0x1153,0x19B5,0x2217,0x19F7,0x19D6,0x1175,0x1154,0x0913,0x1133,0x1112,0x1132,0x1112,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1132,0x1132,0x1932,0x1932,0x1132,0x1132,0x1932,0x1932,0x1131,0x1132,0x1932,0x1932,0x1932,0x1132,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1912,0x1912,0x1912,0x1112,0x1932,0x1932,0x1112,0x1112,0x1112,0x1112,0x1112,0x1133,0x1133,0x1113,0x1134,0x1175,0x19D7,0x19D7,0x19D6,0x1975,0x1113,0x1132,0x1932,0x1932,0x1932,0x1952,0x1911,0x1911,0x2152,0x1952,0x1112,0x1112,0x1174,0x19D6,0x2217,0x2217,0x19B6,0x1175,0x1153,0x1132,0x1932,0x1911,0x2131,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1132,0x1133,0x1154,0x1175,0x19B6,0x1196,0x19D6,0x19B6,0x1154,0x1133,0x1132,0x1911,0x1931,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x212F,0x212F,0x292F,0x212F,0x210F,0x210F,0x212F,0x2130,0x210F,0x2910,0x2930,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2930,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2910,0x2910,0x2110,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x2130,0x210F,0x2130,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2930,0x2950,0x2930,0x2950,0x2930,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3971,0x3951,0x3972,0x3951,0x3972,0x3972,0x3972,0x3992,0x4193,0x4193,0x4193,0x41B3,0x49B3,0x49B3,0x4993,0x4993,0x51B3,0x51B3,0x51B3,0x59B3,0x59B3,0x59B3,0x61D3,0x61B2,0x69B2,0x69B1,0x79F2,0xAB97,0xD4DC,0xC47A,0xB438,0xB499,0xB4F9,0xAD3A,0x94D8,0x7CB7,0x6CD7,0x6D18,0x5CD7,0x4C95,0x4C96,0x4C76,0x4455,0x4435,0x5436,0x4BB4,0x4B53,0x5334,0x5314,0x5AD3,0x62B3,0x5A52,0x5A11,0x6212,0x61B0,0x8293,0xABB7,0xC43A,0xCC19,0xCBF8,0xD3D8,0xD3D8,0xD3D7,0xD3F7,0xD3F7,0xD417,0xCC18,0xC458,0xAC58,0x7354,0x9D9C,0x861D,0x669D,0x56FE,0x3F3E,0x277E,0x179F,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07BF,0x0F9F,0x1F9F,0x2F7F,0x471E,0x5EBE,0x7E1C,0x7C98,0x93F6,0xBBD6,0xC355,0xD356,0xDB35,0xDB35,0xDB35,0xD335,0xD376,0xB334,0x82F2,0x8477,0x769D,0x4F3E,0x2F3E,0x177F,0x0FBF,0x07BF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FE,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07DE,0x07BE,0x07BF,0x0FBE,0x0F9E,0x179E,0x277E,0x3F3E,0x46BC,0x5E7C,0x7E3C,0x859B,0x8CFA,0x94BA,0x9C9B,0xA4BE,0x947E,0x39F7,0x19B8,0x19DB,0x11FC,0x09DD,0x01BE,0x01BE,0x01BE,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x019F,0x017E,0x099E,0x195D,0x293B,0x40B8,0x89DA,0xB27B,0xA9D7,0xA9B5,0xA9D5,0xAA77,0x9AD8,0x49D3,0x2234,0x345C,0x1CFD,0x159E,0x0E3E,0x173F,0x0F7F,0x0FBF,0x07DF,0x07DF,0x07BF,0x07DF,0x07BF,0x07BF,0x0FBF,0x17BF,0x1F7F,0x2F3E,0x46BE,0x767F,0x7C79,0x6A32,0x9A53,0xA9F3,0xB1B2,0xC1D3,0xC9D3,0xC9B3,0xD1B3,0xD1B3,0xC973,0xD193,0xC973,0xC993,0xC1B3,0xC1D4,0xB9D4,0xBA55,0x8972,0x58D0,0x5131,0x4951,0x4172,0x4172,0x3972,0x3992,0x3971,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3131,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x290F,0x2930,0x292F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2130,0x1911,0x1932,0x1133,0x1154,0x1175,0x19B7,0x11D7,0x19F8,0x1A19,0x1A39,0x1A18,0x1A18,0x11B7,0x1175,0x1154,0x1133,0x1932,0x1911,0x1911,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2931,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2930,0x2930,0x2130,0x2110,0x2110,0x2110,0x2131,0x2152,0x1932,0x1153,0x1154,0x19B5,0x2217,0x2217,0x19D6,0x1174,0x1154,0x1953,0x1932,0x1931,0x2111,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1931,0x1931,0x1932,0x1932,0x1953,0x1133,0x1133,0x1153,0x1153,0x1153,0x1133,0x1112,0x1932,0x1911,0x1931,0x2110,0x2110,0x2130,0x210F,0x212F,0x210F,0x212F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2910,0x210F,0x2910,0x2930,0x2930,0x2930,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x2930,0x290F,0x290F,0x210F,0x2910,0x2930,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x212F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F, + 0x292F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2110,0x2111,0x1931,0x1911,0x1932,0x1153,0x1154,0x1175,0x19F6,0x2217,0x19D6,0x19B6,0x1174,0x1133,0x1112,0x1932,0x1912,0x1912,0x1911,0x1131,0x1132,0x1153,0x1174,0x1195,0x19D7,0x19D7,0x19D6,0x1195,0x1175,0x1153,0x1132,0x1112,0x1111,0x1111,0x1911,0x1131,0x1111,0x1931,0x1931,0x1111,0x1111,0x1931,0x1131,0x1931,0x1952,0x1952,0x1952,0x1132,0x1132,0x1133,0x1133,0x1174,0x19B6,0x19D7,0x21F7,0x21F7,0x1194,0x1153,0x1132,0x1111,0x1911,0x2131,0x2131,0x2130,0x2110,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2110,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x2930,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x210F,0x2930,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2131,0x1931,0x1932,0x1174,0x19F7,0x11F8,0x01B8,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01DA,0x01B9,0x09D8,0x1219,0x1A18,0x1174,0x1112,0x1911,0x2111,0x2110,0x2110,0x2110,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1912,0x1912,0x1933,0x1154,0x19B6,0x19D6,0x19D7,0x19D6,0x19B6,0x1154,0x1133,0x1132,0x1932,0x1931,0x1931,0x1951,0x2152,0x1931,0x1131,0x1132,0x1133,0x1154,0x19B5,0x19F7,0x1A17,0x19D6,0x1175,0x0954,0x1154,0x0933,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1132,0x1133,0x1133,0x1133,0x1133,0x1133,0x1132,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1133,0x1133,0x1132,0x1132,0x1132,0x1132,0x1152,0x1132,0x1132,0x1133,0x1132,0x1133,0x1132,0x1133,0x1133,0x1133,0x1133,0x1113,0x1133,0x1133,0x1133,0x1134,0x1995,0x21F7,0x19D6,0x19D6,0x1975,0x1133,0x1132,0x1932,0x1932,0x1931,0x1931,0x1931,0x1911,0x1932,0x1932,0x1112,0x1113,0x1154,0x19D6,0x2217,0x2217,0x19F6,0x1195,0x1133,0x1132,0x1932,0x1931,0x1931,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x1931,0x1931,0x1932,0x1932,0x1132,0x1153,0x1153,0x1153,0x1153,0x1153,0x1132,0x1931,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2930,0x2110,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2130,0x210F,0x2930,0x2910,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2950,0x2950,0x3150,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3971,0x3971,0x3951,0x3972,0x3972,0x3972,0x3972,0x3972,0x4193,0x4193,0x4193,0x4193,0x49B3,0x4993,0x5193,0x51B3,0x5193,0x5193,0x59B3,0x59B2,0x61B2,0x69D2,0x6191,0x612F,0x9AD5,0xCC7B,0xCC9A,0xC459,0xBC79,0xBCB9,0xB4F9,0xAD39,0x94F8,0x7CB7,0x6CF7,0x5CF6,0x5517,0x5517,0x4CF7,0x44B6,0x44B6,0x4496,0x4C76,0x4C35,0x5415,0x53B4,0x4B33,0x52F3,0x5AF4,0x62F4,0x5272,0x5A52,0x6252,0x6232,0x61F1,0x596F,0x7A52,0xB3B8,0xCC19,0xCBF8,0xD3F8,0xD3F8,0xD3D7,0xD3D7,0xD3F7,0xD418,0xC417,0xC438,0xA417,0x83D5,0x959B,0x7E3D,0x66BD,0x4EFD,0x375E,0x1F7E,0x17BF,0x0FBF,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x0FBF,0x17BF,0x1F7F,0x373F,0x4EFE,0x6E9D,0x85DC,0x7C36,0xA3D6,0xBBB6,0xCB55,0xD335,0xD335,0xDB15,0xDB35,0xD335,0xD396,0xB354,0x8312,0x84F9,0x6E9D,0x471E,0x2F5E,0x177F,0x0F9F,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DF,0x07DE,0x07DE,0x07DE,0x07DF,0x07BF,0x07BF,0x07BF,0x0FBF,0x0F9E,0x177E,0x2F7F,0x3F3E,0x4EBC,0x665C,0x7DFC,0x855A,0x8CDA,0x949A,0x9C7B,0xA4DE,0x8C3E,0x2175,0x21D9,0x19DB,0x09DD,0x01BD,0x01BE,0x01DE,0x01DF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x019F,0x017E,0x019E,0x099E,0x115D,0x295C,0x3098,0x819A,0xB27B,0xA9D8,0xA9D6,0xA9D5,0xA215,0xA2F8,0x6255,0x21F3,0x3C1B,0x24DD,0x1DBE,0x165F,0x171F,0x179F,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x0FBF,0x1FBF,0x273F,0x3EBE,0x6E9F,0x857C,0x62B3,0x9294,0x99D2,0xB1D2,0xC1D3,0xC9B3,0xD1B3,0xD1B3,0xC973,0xD193,0xC973,0xC973,0xC993,0xC9B4,0xC1B4,0xB9D4,0xB1F5,0xA215,0x68D0,0x5931,0x4951,0x4972,0x4172,0x3972,0x3992,0x3951,0x3971,0x3951,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x290F,0x2930,0x292F,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x290F,0x2910,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2131,0x1932,0x1153,0x1175,0x19D7,0x19F8,0x1A39,0x11F9,0x11F9,0x09D9,0x09F9,0x09F9,0x1219,0x11F8,0x11B7,0x1196,0x1154,0x1153,0x1932,0x1932,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2111,0x2131,0x2131,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x1931,0x1932,0x1953,0x1154,0x19B5,0x21F7,0x2217,0x19D7,0x1175,0x1154,0x1953,0x1932,0x1932,0x1911,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x292F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x1931,0x1931,0x1932,0x1952,0x1973,0x1974,0x1174,0x1195,0x1195,0x1195,0x11B5,0x1195,0x1174,0x1154,0x1132,0x1932,0x1911,0x2131,0x2130,0x2130,0x2110,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x2910,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x210F,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x290F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F, + 0x2930,0x2930,0x2910,0x290F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1911,0x1132,0x1953,0x1154,0x1154,0x19F6,0x2238,0x19D6,0x1195,0x1994,0x1153,0x1132,0x1932,0x1912,0x1932,0x1911,0x1911,0x1132,0x1153,0x1154,0x0954,0x19D6,0x19F7,0x19B6,0x1195,0x1174,0x1153,0x1132,0x1132,0x1111,0x1111,0x1932,0x1931,0x1131,0x1131,0x1131,0x1111,0x1111,0x1132,0x1111,0x1132,0x1132,0x1952,0x1952,0x1952,0x1932,0x1112,0x1112,0x1133,0x1154,0x1195,0x19B6,0x2217,0x2238,0x19D6,0x1154,0x1112,0x10F1,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x210F,0x2930,0x2910,0x2910,0x210F,0x212F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x210F,0x210F,0x2110,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2910,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2910,0x2110,0x2930,0x212F,0x210F,0x290F,0x2930,0x2930,0x2930,0x290F,0x212F,0x2110,0x210F,0x210F,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x1932,0x1153,0x19D6,0x1218,0x09F8,0x01D9,0x01D9,0x01D9,0x01FA,0x01D9,0x01D9,0x01D9,0x01B8,0x11F8,0x1A18,0x21F7,0x1153,0x1912,0x1911,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x210F,0x2110,0x2110,0x2131,0x2131,0x1912,0x1912,0x1133,0x1154,0x1995,0x19D6,0x19D6,0x19F6,0x21F6,0x1174,0x0912,0x1112,0x1911,0x1931,0x1931,0x2151,0x2152,0x1952,0x1911,0x1132,0x1132,0x1154,0x1195,0x19F7,0x1A17,0x19F7,0x11B6,0x1195,0x1195,0x1194,0x1994,0x1974,0x1974,0x1974,0x1974,0x1974,0x1994,0x1974,0x1174,0x1974,0x1974,0x1974,0x1974,0x1974,0x1994,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1174,0x1994,0x1974,0x1974,0x1174,0x1974,0x1974,0x1954,0x1974,0x1974,0x1974,0x1974,0x1174,0x1174,0x1975,0x1975,0x1975,0x1995,0x19B6,0x21D6,0x2217,0x21F7,0x21F6,0x1974,0x1133,0x1132,0x1932,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x1912,0x1112,0x1133,0x1154,0x19D7,0x2217,0x2217,0x19D6,0x1174,0x0933,0x1112,0x1132,0x1931,0x1931,0x2130,0x1910,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2930,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1952,0x1932,0x1931,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x212F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x2910,0x2910,0x290F,0x210F,0x2930,0x210F,0x2110,0x210F,0x20EF,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x2950,0x2950,0x2950,0x3150,0x3150,0x3151,0x3151,0x3151,0x3171,0x3971,0x3971,0x3972,0x3971,0x3972,0x3972,0x3972,0x3972,0x3992,0x4193,0x41B3,0x41B3,0x4193,0x4193,0x4993,0x4993,0x5193,0x5193,0x5193,0x5992,0x5992,0x6192,0x6191,0x6170,0x8253,0xC43A,0xE4FC,0xCC7A,0xCC99,0xC479,0xBCB9,0xB4F9,0xA4F8,0x84B7,0x7CF7,0x6CF7,0x6517,0x5516,0x5537,0x4D16,0x5537,0x4D17,0x4CF6,0x4496,0x4475,0x4C56,0x4BF5,0x53D5,0x5395,0x5B54,0x52F3,0x52B3,0x5AD3,0x62B3,0x5A52,0x5A32,0x6252,0x6A52,0x61F1,0x596F,0x8253,0xB397,0xCC19,0xCBF8,0xCBD7,0xCBD7,0xCBD7,0xCBF7,0xCBF7,0xCC37,0xC458,0x9BB6,0x7395,0x8D9B,0x763C,0x5EBD,0x3EFD,0x275E,0x179E,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x0FDF,0x0F9F,0x177F,0x275F,0x3F1F,0x569D,0x763C,0x8D5A,0x83D5,0xB417,0xBB96,0xCB76,0xD336,0xDB35,0xDB35,0xDB35,0xD355,0xD396,0xB354,0x7B12,0x8519,0x6EDE,0x473E,0x277F,0x17BF,0x0FBF,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DE,0x07DE,0x07BE,0x07DF,0x07DF,0x07BF,0x07DF,0x07BF,0x07BF,0x0FBF,0x179F,0x1F7E,0x2F5E,0x3EFD,0x567C,0x6E5C,0x85DB,0x8D5A,0x8CB9,0x947A,0xA4BC,0xB51F,0x8BFE,0x2976,0x21BA,0x11DC,0x099C,0x01BD,0x019D,0x01BE,0x01BF,0x01BF,0x01BF,0x019F,0x019F,0x01BF,0x019F,0x019F,0x019F,0x017E,0x099E,0x119D,0x297C,0x38F9,0x7199,0xB29C,0xA9F8,0xA9D6,0xA9B5,0xA1F4,0xA2D8,0x7275,0x29D3,0x2B59,0x249C,0x157E,0x165E,0x173F,0x179F,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x0FBF,0x179F,0x277F,0x36FE,0x569E,0x7DDD,0x6334,0x82B4,0x9A13,0xA9D2,0xC1F3,0xC1B2,0xC993,0xC993,0xD193,0xD193,0xD193,0xC952,0xC993,0xD1D4,0xC9D4,0xC1D4,0xB9F4,0xBA76,0x7110,0x5910,0x4931,0x4951,0x4172,0x4192,0x3971,0x3971,0x3951,0x3951,0x3171,0x3171,0x3171,0x3151,0x3151,0x3151,0x3150,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2110,0x2910,0x2110,0x2110,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x2130,0x2131,0x1932,0x1154,0x1196,0x11D8,0x11F9,0x121A,0x09D9,0x01B9,0x01D9,0x01B9,0x01B9,0x09F9,0x1219,0x11F8,0x09B7,0x1196,0x1154,0x1133,0x1132,0x1932,0x1932,0x2151,0x2151,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2111,0x2111,0x2111,0x2111,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1932,0x1953,0x1174,0x19B5,0x21F7,0x21F7,0x19D7,0x1175,0x1154,0x1133,0x1932,0x1932,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1932,0x1133,0x1174,0x1195,0x19D6,0x19F7,0x19F7,0x11F7,0x1A38,0x1A18,0x1A18,0x19D7,0x1175,0x1154,0x1112,0x1932,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x2910,0x290F,0x290F,0x2910,0x290F,0x2930,0x290F,0x2930,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x210F,0x2910,0x2930,0x210F,0x2930,0x2930,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x292F,0x212F,0x210F,0x212F,0x2930,0x2930,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x292F,0x212F,0x2110,0x2130,0x212F,0x2130,0x210F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x2130,0x2130, + 0x2930,0x290F,0x2910,0x2910,0x2110,0x2130,0x2130,0x2131,0x2131,0x1911,0x1912,0x1132,0x1133,0x1154,0x1154,0x19B6,0x2217,0x21F7,0x1995,0x1974,0x1153,0x1132,0x1932,0x1911,0x1931,0x1931,0x1931,0x1911,0x1932,0x1153,0x1174,0x1195,0x19F7,0x19F7,0x1196,0x1174,0x1133,0x1132,0x1132,0x1111,0x1932,0x1932,0x1952,0x1132,0x1152,0x1132,0x1153,0x1173,0x1173,0x1173,0x1153,0x1153,0x1132,0x1132,0x1132,0x1952,0x1932,0x1911,0x1912,0x1932,0x1132,0x1974,0x1175,0x19D6,0x2238,0x1A17,0x1175,0x1133,0x1112,0x1911,0x1911,0x2131,0x2110,0x2110,0x2130,0x2130,0x210F,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x212F,0x210F,0x2910,0x2930,0x2110,0x210F,0x290F,0x210F,0x290F,0x290F,0x2930,0x2910,0x210F,0x210F,0x2110,0x2910,0x2910,0x290F,0x2930,0x210F,0x290F,0x2930,0x2910,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2110,0x210F,0x2930,0x2930,0x290F,0x210F,0x290F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2930,0x2130,0x2110,0x2110,0x2111,0x1932,0x1132,0x1194,0x1A17,0x1218,0x1219,0x09D9,0x01D9,0x09F9,0x01D9,0x09D8,0x01B8,0x11F8,0x1A18,0x19F7,0x1174,0x1132,0x1931,0x2111,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x2130,0x2930,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x210F,0x2110,0x2110,0x2131,0x2131,0x2132,0x1932,0x1932,0x1133,0x1154,0x1995,0x19B6,0x2217,0x21F7,0x19D6,0x1154,0x0912,0x1112,0x1932,0x1931,0x2151,0x2131,0x1931,0x1931,0x1111,0x1132,0x1133,0x1153,0x1195,0x19D6,0x2217,0x2A58,0x2A58,0x2A58,0x2A37,0x3258,0x2A37,0x3237,0x2A17,0x2A37,0x2A37,0x2A37,0x2A17,0x2A38,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A16,0x2A16,0x2A37,0x2A37,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A37,0x2A17,0x2A38,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x21F6,0x19B5,0x1174,0x1153,0x1932,0x1932,0x1931,0x1911,0x1931,0x1931,0x1931,0x1932,0x1912,0x1112,0x1133,0x1154,0x19D6,0x2217,0x2217,0x19D6,0x1174,0x0933,0x1132,0x1132,0x1931,0x1931,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x290F,0x210F,0x2130,0x210F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2110,0x2110,0x2930,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2930,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2930,0x2110,0x2110,0x2930,0x2930,0x2930,0x290F,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2930,0x2930,0x2950,0x2930,0x2950,0x3150,0x3151,0x3171,0x3151,0x3151,0x3151,0x3171,0x3971,0x3151,0x3972,0x3972,0x3972,0x3972,0x4192,0x4192,0x4192,0x4193,0x41B3,0x4993,0x4993,0x4993,0x5193,0x5193,0x51B3,0x5992,0x5992,0x6191,0x6171,0x614F,0xAB57,0xDCBB,0xDCBB,0xD47A,0xCC79,0xC478,0xBCB9,0xBCF9,0xA4F8,0x84B6,0x74D6,0x6CF6,0x5CF6,0x5D37,0x5537,0x4D16,0x4D16,0x4D37,0x4D37,0x4D17,0x54F7,0x4CB6,0x4C55,0x5436,0x5BF5,0x5BB5,0x5B74,0x5B34,0x5AF3,0x5AD3,0x5AB3,0x5A93,0x6293,0x6272,0x6252,0x6A52,0x6A11,0x61B0,0x592E,0x8A52,0xBBD8,0xD439,0xCBF8,0xCBF8,0xCBD7,0xCBF7,0xCC17,0xC438,0xB438,0x8B95,0x7C37,0x85DC,0x665C,0x4EFD,0x375E,0x1F7E,0x17BF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x0FBF,0x0F9F,0x1F7F,0x2F3F,0x46FE,0x667D,0x7DFC,0x8C98,0x93D6,0xB3B6,0xC375,0xCB35,0xD335,0xDB35,0xDB35,0xDB35,0xD376,0xCB96,0xA354,0x7B53,0x859B,0x66DE,0x3F5E,0x277F,0x179F,0x0FBF,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x0FBF,0x179E,0x277E,0x375E,0x46DD,0x5E7C,0x763C,0x85BB,0x953A,0x94B9,0x9C9A,0xAC9C,0xB4FF,0x731B,0x2157,0x19BA,0x11BC,0x09BD,0x01BE,0x019E,0x01BF,0x01BF,0x01BF,0x01BF,0x019F,0x019F,0x019F,0x017F,0x019F,0x017E,0x099E,0x19BE,0x215C,0x3119,0x6138,0xA25B,0xAA39,0xA9D6,0xB216,0xA1F4,0xA296,0x7A76,0x4214,0x2AF7,0x2CBC,0x1D9E,0x163E,0x173F,0x179F,0x0FBF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07BF,0x07BF,0x0F9F,0x279F,0x373F,0x4E9E,0x763E,0x7458,0x72B4,0x8A12,0xAA12,0xB9D2,0xC9D3,0xC992,0xC992,0xD193,0xD193,0xD193,0xC973,0xC993,0xC993,0xC9D4,0xC1D4,0xB9D4,0xBA56,0x8152,0x58D0,0x5151,0x4951,0x4992,0x4171,0x3971,0x3971,0x3971,0x3951,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x1931,0x1132,0x0954,0x11B7,0x09B8,0x09FA,0x01DA,0x01D9,0x01BA,0x01BA,0x01DA,0x01B9,0x01B9,0x09F9,0x09F9,0x09F8,0x09B7,0x0975,0x0954,0x1133,0x1132,0x1132,0x1932,0x1931,0x1931,0x1931,0x1911,0x1931,0x2131,0x2131,0x2131,0x1931,0x2132,0x1932,0x1932,0x1932,0x1932,0x1911,0x2131,0x2111,0x2111,0x2131,0x2131,0x2130,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x1931,0x1932,0x1133,0x1154,0x19B5,0x21F7,0x2218,0x19D7,0x1175,0x1154,0x1133,0x1112,0x1932,0x2152,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x1931,0x1931,0x1931,0x1932,0x1133,0x1174,0x1195,0x11D6,0x11F8,0x11F8,0x1219,0x09F8,0x1219,0x1219,0x1218,0x11F8,0x11D7,0x1195,0x1153,0x1952,0x1931,0x2131,0x2130,0x2130,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x212F,0x290F,0x290F,0x2930,0x210F,0x2910,0x290F,0x290F,0x2910,0x2910,0x2110,0x290F,0x290F,0x2910,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x210F,0x2930,0x290F,0x210F,0x2910,0x2910,0x290F,0x2910,0x2930,0x210F,0x210F,0x2110,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2110,0x2930,0x2930,0x2910,0x2930,0x2910,0x2910,0x2110,0x2910,0x2910,0x290F,0x290F,0x210F,0x2910,0x2910,0x210F,0x290F,0x2930,0x290F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x210F,0x2930,0x290F,0x292F,0x212F,0x212F,0x2130,0x2110,0x210F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130, + 0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x1931,0x1112,0x1132,0x1133,0x1154,0x1175,0x19D6,0x2217,0x2217,0x19B6,0x1994,0x1953,0x1112,0x1932,0x1931,0x2151,0x2131,0x2131,0x1911,0x1111,0x1953,0x1154,0x1175,0x19D6,0x1A17,0x19D6,0x1174,0x1133,0x1132,0x1132,0x1952,0x1932,0x1132,0x1132,0x1132,0x1153,0x1194,0x19B5,0x19D6,0x19D6,0x19F6,0x19D6,0x1196,0x1195,0x1194,0x1153,0x1132,0x1132,0x1932,0x1932,0x1931,0x1111,0x1112,0x1133,0x1133,0x1195,0x19F7,0x1A18,0x19B6,0x1154,0x1112,0x1911,0x1911,0x2111,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2110,0x2910,0x2930,0x2910,0x2910,0x210F,0x2930,0x2910,0x2910,0x290F,0x210F,0x2930,0x2910,0x210F,0x210F,0x2930,0x2910,0x210F,0x210F,0x2930,0x210F,0x2930,0x2930,0x2930,0x290F,0x290F,0x2910,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1132,0x1195,0x19F7,0x1A18,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x11F8,0x1A38,0x19F7,0x1994,0x1112,0x1911,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2131,0x2151,0x2132,0x1932,0x1932,0x1112,0x1133,0x1174,0x19D6,0x2217,0x21F7,0x19B5,0x1154,0x1133,0x1112,0x1111,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1132,0x1153,0x1153,0x1174,0x1995,0x21F6,0x2A17,0x29F6,0x2A17,0x2A17,0x3237,0x3258,0x2A17,0x3237,0x3238,0x2A17,0x3238,0x2A38,0x2A17,0x2A17,0x2A37,0x2A17,0x2A37,0x2A37,0x2A17,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2217,0x2A37,0x2A37,0x2A17,0x2A17,0x2A37,0x2A17,0x3257,0x2A37,0x2A17,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A17,0x29F7,0x29F7,0x29F7,0x21D6,0x1153,0x1133,0x1153,0x1952,0x1932,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1112,0x1132,0x1133,0x1154,0x19D6,0x2237,0x2217,0x19B6,0x1154,0x1133,0x1132,0x1932,0x1931,0x1931,0x2130,0x1910,0x2110,0x2110,0x2110,0x2130,0x2110,0x2930,0x2110,0x2110,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x2930,0x210F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2151,0x2131,0x2131,0x2130,0x2150,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2130,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2910,0x210F,0x2930,0x290F,0x210F,0x290F,0x292F,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2951,0x2930,0x2930,0x2910,0x2930,0x2950,0x3150,0x3150,0x3151,0x3151,0x3171,0x3171,0x3151,0x3151,0x3171,0x3171,0x3971,0x3972,0x3972,0x3951,0x3972,0x4192,0x4192,0x4192,0x4172,0x4193,0x4993,0x4993,0x51B3,0x51B2,0x4972,0x5171,0x5971,0x5971,0x592F,0x79D1,0xCC5A,0xE4DC,0xDC9A,0xD49A,0xCC79,0xCC99,0xBC98,0xB4B8,0xA4B7,0x8C96,0x7CD6,0x64D6,0x6537,0x5D37,0x5536,0x4D16,0x4D37,0x4D57,0x4D16,0x4CF6,0x4CF7,0x54F7,0x54D7,0x5C96,0x5C56,0x6416,0x63B5,0x6375,0x6375,0x6313,0x6B34,0x62D3,0x5A92,0x5A52,0x5A72,0x6252,0x6272,0x6A52,0x61F1,0x69F0,0x594E,0x592E,0x8A72,0xBBD8,0xCC18,0xCC18,0xCBF7,0xC417,0xC438,0xC478,0xAC37,0x7B94,0x74B8,0x75FC,0x5EDD,0x3F3E,0x277E,0x179E,0x0FBE,0x07BE,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x0F9F,0x177F,0x275F,0x373F,0x56FE,0x6E3C,0x95FC,0x7BB5,0xA3B6,0xC3D6,0xCB55,0xD355,0xDB56,0xD315,0xD315,0xD335,0xCB55,0xC3B6,0x9B33,0x7BB4,0x85DB,0x66FE,0x373E,0x277F,0x179F,0x0F9F,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07BF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DE,0x07DF,0x07DF,0x07BF,0x07DF,0x07BF,0x07DF,0x07BF,0x07DF,0x07BF,0x0FBF,0x0FBF,0x179E,0x277E,0x3F3E,0x4EBD,0x667C,0x7E1B,0x95DB,0x951A,0x9CBA,0xA49A,0xB4DE,0xBD1F,0x5A7A,0x2137,0x199A,0x119C,0x09BD,0x09BE,0x017E,0x019E,0x019F,0x01BF,0x01BF,0x019F,0x017F,0x017E,0x019F,0x017E,0x09BF,0x11BE,0x197C,0x313A,0x50F8,0x9A5B,0xAA5A,0xA9F7,0xB216,0xA9F5,0x9A55,0x8AB6,0x5275,0x3B58,0x453D,0x2DBE,0x163E,0x171F,0x177F,0x0FBF,0x0FDF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07DF,0x07BF,0x0F9F,0x1F7F,0x2F3F,0x46DE,0x6E7E,0x857C,0x62D3,0x71F1,0xA253,0xBA33,0xCA13,0xC9D3,0xC992,0xC972,0xD193,0xD193,0xC972,0xC993,0xD1B4,0xC9D4,0xC193,0xB9B4,0xBA15,0xA1F4,0x58AF,0x5952,0x5151,0x4972,0x3951,0x3951,0x3951,0x3971,0x3971,0x3971,0x3951,0x3151,0x3151,0x3151,0x3131,0x3131,0x3151,0x2950,0x3150,0x2930,0x2950,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x2930,0x292F,0x2930,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x2930,0x2110,0x2110,0x2131,0x1911,0x1113,0x19B6,0x19F9,0x09B9,0x01B9,0x01BA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01D9,0x09F9,0x09F9,0x09B8,0x0996,0x0975,0x0954,0x0933,0x1133,0x1112,0x1111,0x1111,0x1911,0x1911,0x1912,0x1912,0x1932,0x1111,0x1111,0x1932,0x1932,0x1932,0x1912,0x1912,0x1912,0x1932,0x1932,0x1912,0x2132,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2151,0x2131,0x1931,0x1932,0x1132,0x1154,0x19B6,0x2217,0x2238,0x19D7,0x1175,0x1154,0x08F2,0x1112,0x1912,0x1931,0x2152,0x2151,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1932,0x1133,0x1174,0x1196,0x11F7,0x11F8,0x09D8,0x09F9,0x09F9,0x09D9,0x09F9,0x09F9,0x123A,0x09F9,0x09D8,0x11D7,0x1995,0x1953,0x1912,0x2111,0x2131,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2910,0x290F,0x2930,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x290F,0x210F,0x2930,0x2930,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2110,0x20F0,0x2910,0x2910,0x292F,0x210F,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x292F,0x212F,0x2130,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2130,0x2130, + 0x2110,0x210F,0x2110,0x2110,0x2110,0x2131,0x2131,0x1931,0x1112,0x1112,0x1133,0x0934,0x1195,0x19D6,0x21F7,0x2217,0x19B6,0x1995,0x1953,0x1932,0x1911,0x1911,0x1931,0x2151,0x2131,0x1931,0x1911,0x1911,0x1133,0x1174,0x1196,0x1A18,0x19F7,0x1195,0x1174,0x1132,0x1132,0x1931,0x1931,0x1932,0x1112,0x1132,0x0953,0x1194,0x19F6,0x19F6,0x1A17,0x1A17,0x19F7,0x19F7,0x19F7,0x19F7,0x11B6,0x1195,0x1174,0x1133,0x1932,0x1932,0x1931,0x1911,0x1932,0x1112,0x1133,0x1175,0x19F7,0x2239,0x11D7,0x1175,0x1112,0x1912,0x1911,0x18F0,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2930,0x2930,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2910,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x290F,0x210F,0x2930,0x2910,0x2910,0x2930,0x2910,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2130,0x2130,0x2110,0x1931,0x1911,0x1133,0x1995,0x19D6,0x1A18,0x11F7,0x11D7,0x11D7,0x11D7,0x19F7,0x2217,0x1995,0x1132,0x1932,0x1931,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x212F,0x2130,0x292F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2131,0x1931,0x1911,0x1932,0x1932,0x1132,0x1153,0x1994,0x21D6,0x21F7,0x21F6,0x19D6,0x1174,0x1133,0x1112,0x1931,0x1931,0x1931,0x1951,0x1952,0x1931,0x1932,0x1952,0x1132,0x1132,0x1133,0x1153,0x1153,0x1953,0x1954,0x1953,0x1974,0x1974,0x1974,0x1995,0x1995,0x1995,0x1995,0x1975,0x1995,0x1995,0x1995,0x19B5,0x19B5,0x1995,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x19B5,0x1995,0x19B5,0x19B5,0x1994,0x1995,0x19B5,0x19B5,0x1995,0x19B5,0x1994,0x1974,0x1994,0x1974,0x1974,0x1994,0x1994,0x1994,0x1974,0x1974,0x1954,0x1153,0x1113,0x1112,0x1932,0x1932,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1932,0x1912,0x1112,0x1153,0x1174,0x19B6,0x2217,0x2216,0x19D5,0x1174,0x1132,0x1132,0x1931,0x1931,0x1931,0x1910,0x2130,0x2110,0x2110,0x2130,0x2110,0x210F,0x210F,0x2130,0x210F,0x2930,0x2110,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x210F,0x290F,0x212F,0x210F,0x2930,0x2130,0x2930,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2110,0x2110,0x2930,0x2110,0x2930,0x2910,0x2930,0x2910,0x210F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2110,0x2110,0x2910,0x210F,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2910,0x2910,0x2930,0x3150,0x3151,0x2950,0x3151,0x3151,0x3151,0x3151,0x3151,0x3971,0x3151,0x3971,0x3971,0x3971,0x3951,0x3972,0x3972,0x4192,0x4192,0x4192,0x4172,0x4192,0x4172,0x49B3,0x5192,0x5192,0x5171,0x5150,0x5950,0x590E,0xA315,0xD47B,0xDCBB,0xDC9A,0xD479,0xD478,0xCC58,0xC478,0xC4B9,0xACB8,0x9476,0x8496,0x74B6,0x6D17,0x64F6,0x5CF6,0x5D16,0x5D16,0x5516,0x5D16,0x5CF6,0x5CF6,0x64D6,0x64B6,0x6C96,0x6C76,0x6C36,0x6BF5,0x73D5,0x6B74,0x6B54,0x6313,0x5AD2,0x5250,0x5251,0x5A71,0x5230,0x4A30,0x5271,0x5A92,0x5A72,0x5A72,0x5A72,0x5A31,0x51EF,0x59EF,0x8334,0xAC38,0xB458,0xB458,0xB458,0xAC99,0xA479,0x8C37,0x5BD5,0x759B,0x5EBD,0x471D,0x2F5E,0x1F9E,0x17BE,0x0FBE,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x0F9F,0x177F,0x1F5E,0x2F1E,0x471E,0x5E9D,0x7DFC,0x9519,0x8B95,0xB3B6,0xC375,0xCB35,0xD356,0xD335,0xD315,0xCB35,0xCB56,0xC396,0xB3B6,0x8353,0x7436,0x7E3C,0x56FE,0x373E,0x1F7F,0x179F,0x0F9F,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x077F,0x077F,0x077F,0x077F,0x077F,0x07BF,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07DF,0x07BF,0x07DF,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x07BF,0x07BF,0x0FBF,0x0FBF,0x1F9F,0x275E,0x3F1D,0x4EBC,0x665C,0x7DFB,0x8D7A,0x94FA,0x9C9A,0xAC9B,0xB4BE,0xA49F,0x41B7,0x2137,0x199B,0x119C,0x099D,0x099D,0x017E,0x01BE,0x01DF,0x01BF,0x019F,0x017E,0x019F,0x017E,0x019E,0x017E,0x11BE,0x197C,0x317B,0x38B7,0x8A3B,0xA25A,0xAA38,0xA9F6,0xA1F5,0x91F4,0x92F8,0x5A55,0x3AF6,0x451D,0x257C,0x1E1D,0x1EFF,0x177F,0x0F9F,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07BF,0x0FBF,0x179F,0x277F,0x3F1F,0x5E7E,0x861E,0x6355,0x7252,0x9A33,0xBA33,0xC1F3,0xC9B3,0xC992,0xD193,0xC972,0xD193,0xD193,0xC993,0xC993,0xC9B4,0xC9B4,0xC1B4,0xB9F4,0xB276,0x68F0,0x5931,0x5172,0x4971,0x4151,0x3951,0x4171,0x3971,0x3971,0x3971,0x3151,0x3151,0x3151,0x3131,0x3130,0x3131,0x3151,0x3151,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x290F,0x2930,0x292F,0x2930,0x2930,0x290F,0x292F,0x292F,0x290F,0x290F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x2130,0x2110,0x2130,0x2131,0x1912,0x1133,0x11B7,0x09B8,0x09B9,0x09DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x09F9,0x09D9,0x09D8,0x09B8,0x0996,0x1196,0x0934,0x0933,0x0933,0x1112,0x1112,0x1112,0x1112,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x10F2,0x1112,0x1112,0x1912,0x1932,0x1931,0x1911,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1911,0x1931,0x1132,0x1153,0x1154,0x19B6,0x2217,0x2218,0x19D7,0x1196,0x1154,0x0913,0x1112,0x1112,0x1952,0x1952,0x2152,0x2131,0x2131,0x2131,0x2111,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x1911,0x1932,0x1932,0x1133,0x1154,0x0954,0x1196,0x09B7,0x09F8,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01F9,0x09F9,0x09D9,0x11D8,0x19B6,0x1154,0x1912,0x1911,0x2131,0x2110,0x2110,0x2930,0x2110,0x2930,0x210F,0x212F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x292F,0x212F,0x210F,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x292F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x292F,0x290F,0x292F,0x292F,0x212F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x290F,0x2930,0x290F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x292F,0x2930,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110, + 0x212F,0x210F,0x2930,0x2930,0x2931,0x2131,0x18F1,0x1911,0x1133,0x1154,0x1174,0x19B6,0x19D7,0x21F7,0x21F7,0x19D6,0x1974,0x1133,0x1932,0x1911,0x1911,0x1910,0x2131,0x2131,0x2130,0x1910,0x1911,0x1112,0x1174,0x1175,0x11B7,0x2238,0x19D6,0x0974,0x1174,0x1152,0x1131,0x1951,0x1931,0x1131,0x1132,0x1153,0x1195,0x11D6,0x11F7,0x11F7,0x11F7,0x11D7,0x11B7,0x11D7,0x19D7,0x19D7,0x19F7,0x11B6,0x1195,0x1154,0x1132,0x1932,0x1931,0x1931,0x1931,0x1932,0x1153,0x1174,0x1A18,0x1A39,0x11F7,0x1195,0x1133,0x1912,0x1911,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x2910,0x2930,0x2930,0x210F,0x210F,0x2930,0x2910,0x210F,0x2930,0x290F,0x2930,0x210F,0x290F,0x290F,0x2910,0x290F,0x2930,0x2930,0x2910,0x290F,0x290F,0x290F,0x2910,0x210F,0x2930,0x2930,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x2930,0x2930,0x2130,0x2131,0x1931,0x1931,0x1132,0x1154,0x1995,0x19B6,0x19B6,0x19D6,0x1995,0x1154,0x1133,0x1133,0x1932,0x1931,0x2131,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2131,0x2151,0x1931,0x1931,0x1912,0x1932,0x1953,0x1153,0x1995,0x19D6,0x21F7,0x21F7,0x19B6,0x1154,0x1133,0x1132,0x1931,0x1931,0x2152,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1911,0x1912,0x1912,0x1932,0x1932,0x1132,0x1953,0x1132,0x1132,0x1112,0x1112,0x1133,0x1133,0x1133,0x1133,0x1132,0x1112,0x1133,0x1133,0x1133,0x1153,0x1133,0x1133,0x1132,0x1133,0x1133,0x1133,0x1132,0x1112,0x1132,0x1132,0x1132,0x1133,0x1132,0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1953,0x1112,0x1112,0x1112,0x1112,0x1952,0x1952,0x1931,0x1931,0x1930,0x1930,0x2151,0x2152,0x1931,0x1911,0x1132,0x1153,0x1154,0x19D6,0x21F6,0x21B4,0x21B4,0x1973,0x1952,0x1931,0x1931,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x212F,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x3150,0x3130,0x3130,0x3151,0x3151,0x3150,0x3151,0x3150,0x3151,0x3151,0x3151,0x3951,0x3971,0x3972,0x3972,0x4172,0x4192,0x4172,0x4172,0x4192,0x4192,0x4192,0x4192,0x4992,0x4992,0x4991,0x5191,0x5170,0x5170,0x616F,0x79F1,0xBB97,0xD459,0xDC79,0xDC79,0xDC99,0xD479,0xD478,0xCC78,0xBC77,0xB497,0xACB7,0x9CB7,0x8496,0x7CB6,0x74D6,0x74D6,0x74F6,0x74F6,0x74D6,0x74D6,0x7CD7,0x84F7,0x8CF8,0x8CD8,0x94F8,0x8CB7,0x8C77,0x8C56,0x8C36,0x9437,0x9437,0x9437,0x9457,0x9458,0x9478,0x94B9,0x8C99,0x8CB9,0x8499,0x7C78,0x7478,0x6C57,0x6C78,0x6C58,0x6458,0x6C78,0x6457,0x6C37,0x6C16,0x7437,0x7C58,0x8479,0x7C78,0x7C78,0x7458,0x6458,0x4457,0x45DA,0x4F3E,0x377E,0x1F9E,0x17BE,0x0FDF,0x0FDF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x0FDF,0x17BF,0x1FBF,0x279F,0x375F,0x473E,0x5F1E,0x7EDE,0x8D7A,0x8BF6,0xAB95,0xBB56,0xC356,0xCB36,0xD336,0xD336,0xCB56,0xC376,0xBB96,0xB3D7,0xA3F7,0x8416,0x64D7,0x5E7C,0x4F3E,0x377F,0x1F9F,0x17BF,0x0FBF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x07BF,0x079F,0x079F,0x079F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x075F,0x075F,0x075F,0x075F,0x075F,0x073F,0x075F,0x075F,0x073F,0x075F,0x075F,0x075F,0x077F,0x077F,0x079F,0x07BF,0x07BF,0x07BF,0x07BF,0x07DF,0x07BF,0x07DF,0x07BF,0x07BF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x0F9E,0x1F9E,0x275E,0x3F3E,0x571E,0x667C,0x7DFB,0x8D7B,0x9CFA,0xA4BA,0xAC9B,0xAC9C,0xACBF,0x3175,0x2157,0x197A,0x117B,0x119C,0x099D,0x099D,0x099E,0x019E,0x019E,0x019E,0x019F,0x019F,0x099F,0x099E,0x117D,0x197C,0x293B,0x30D8,0x6199,0x9A7A,0xAA59,0xAA38,0xAA57,0x9A57,0x8A77,0x72B7,0x4B16,0x4CBB,0x461F,0x369F,0x26FF,0x1F7F,0x0F9F,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07DF,0x07DF,0x0FDF,0x17BF,0x2F7F,0x467D,0x763E,0x6C38,0x6A52,0x9232,0xB233,0xC1D2,0xC9B2,0xC992,0xC993,0xD193,0xD1B3,0xC993,0xC993,0xC993,0xC9B3,0xC9B4,0xC1D4,0xB9F4,0xB276,0x7972,0x58F0,0x5972,0x4951,0x4171,0x4171,0x4171,0x3971,0x3971,0x3971,0x3151,0x3951,0x3951,0x3151,0x3151,0x3151,0x3151,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x290F,0x2930,0x2930,0x290F,0x2930,0x290F,0x292F,0x292F,0x290F,0x210F,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2131,0x1912,0x1133,0x19D7,0x11D9,0x09D9,0x09DA,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01D9,0x01D9,0x09F9,0x09D9,0x09D9,0x09B8,0x09B7,0x11B7,0x1196,0x1195,0x1995,0x1975,0x1974,0x1974,0x1994,0x1974,0x1995,0x1995,0x21B5,0x19B5,0x21D6,0x21F6,0x21D5,0x21D6,0x21B5,0x21B5,0x21D5,0x21B5,0x21B5,0x1974,0x1953,0x1112,0x1912,0x1931,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x1931,0x1951,0x1132,0x1132,0x1154,0x19B6,0x21F7,0x21F7,0x19F7,0x19D6,0x1175,0x0933,0x0912,0x08F1,0x1111,0x1132,0x1932,0x1931,0x1932,0x1912,0x1912,0x1932,0x1912,0x1912,0x1912,0x1932,0x1112,0x1112,0x1133,0x1133,0x1154,0x1196,0x11B7,0x09D8,0x09F9,0x01F9,0x01F9,0x01D9,0x01D9,0x01B9,0x01D9,0x01F9,0x09F9,0x09D9,0x09D8,0x11D7,0x1174,0x1932,0x1932,0x2131,0x2131,0x2131,0x2930,0x2110,0x2110,0x2110,0x2110,0x290F,0x210F,0x210F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x2930,0x2110,0x2910,0x2910,0x210F,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x292F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2130,0x210F,0x212F,0x210F,0x290F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130, + 0x212F,0x2130,0x2130,0x2130,0x2131,0x2111,0x18F1,0x1112,0x1133,0x1175,0x11B6,0x19F7,0x19F7,0x19F7,0x19D6,0x1974,0x1132,0x1112,0x1911,0x1910,0x1910,0x2130,0x2130,0x2130,0x2130,0x1930,0x1911,0x1112,0x1154,0x1175,0x19F7,0x2238,0x1196,0x1154,0x1974,0x1152,0x1931,0x1931,0x1931,0x1931,0x1133,0x1174,0x11B6,0x1217,0x11F7,0x11F7,0x11D7,0x0996,0x1196,0x1196,0x11B7,0x19D7,0x19D8,0x11D7,0x19B6,0x1995,0x1953,0x1952,0x1932,0x1931,0x1931,0x1932,0x1132,0x1174,0x11F7,0x1A39,0x11F8,0x1196,0x1154,0x1932,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x210F,0x292F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x210F,0x2930,0x2930,0x2110,0x2910,0x2910,0x2910,0x210F,0x2110,0x2910,0x2930,0x212F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2930,0x210F,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2110,0x210F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2131,0x1931,0x1911,0x1112,0x1133,0x1153,0x1954,0x1153,0x1133,0x1933,0x1912,0x1111,0x1931,0x2131,0x2110,0x2110,0x2130,0x2110,0x290F,0x212F,0x212F,0x210F,0x212F,0x2930,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1932,0x1932,0x1953,0x1153,0x1995,0x19B6,0x21F7,0x19D6,0x1195,0x1174,0x1153,0x1112,0x1932,0x1931,0x1931,0x2151,0x1931,0x1931,0x1931,0x1911,0x1931,0x1911,0x1931,0x1911,0x1932,0x1911,0x1932,0x1932,0x1911,0x1932,0x1932,0x1912,0x1932,0x1112,0x1112,0x1932,0x1112,0x1132,0x1932,0x1132,0x1132,0x1132,0x1132,0x1932,0x1932,0x1932,0x1112,0x1912,0x1912,0x1932,0x1932,0x1932,0x1112,0x1932,0x1912,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1911,0x1932,0x1932,0x1932,0x1932,0x2152,0x1931,0x1911,0x1910,0x1930,0x2151,0x2151,0x1931,0x1932,0x1112,0x1153,0x1174,0x19D6,0x21F6,0x21F5,0x21B3,0x2193,0x1952,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2930,0x2930,0x212F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2130,0x212F,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x292F,0x292F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x3151,0x3130,0x2930,0x3150,0x3151,0x3150,0x3151,0x3151,0x3151,0x3951,0x3971,0x3971,0x3971,0x3971,0x4172,0x4172,0x4172,0x4192,0x4192,0x4192,0x4192,0x4992,0x4991,0x4991,0x4971,0x4950,0x5170,0x594E,0x92B3,0xD479,0xDC79,0xDC79,0xDC78,0xDC78,0xDC98,0xD478,0xD458,0xC457,0xBC77,0xB477,0xA477,0x8C55,0x8475,0x8496,0x84B6,0x7CB6,0x7CB6,0x7CB6,0x84B6,0x8496,0x8496,0x8476,0x8C55,0x8C35,0x8C35,0x9436,0x9436,0x9436,0x9436,0x9436,0x9437,0x9437,0x9457,0x8C58,0x8C58,0x8478,0x7C78,0x7478,0x6C98,0x6498,0x5C98,0x5497,0x4497,0x4497,0x3C76,0x3476,0x3456,0x3435,0x3415,0x3C36,0x4457,0x5498,0x5C78,0x5C78,0x5C78,0x5458,0x4498,0x3D9A,0x46DD,0x2F1D,0x1F7E,0x17BE,0x0FDF,0x0FDF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x0FDF,0x17BF,0x17BF,0x1F9F,0x2F7E,0x3F3E,0x4F1D,0x6EDD,0x865C,0x8CB8,0xA3B6,0xB376,0xC356,0xCB36,0xCB56,0xD356,0xCB56,0xCB56,0xC376,0xB396,0xA3D6,0x8BD6,0x7457,0x5D79,0x56DD,0x3F5E,0x2F7E,0x1F9F,0x179F,0x0FBF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x079F,0x079F,0x079F,0x079F,0x077F,0x077F,0x077F,0x077F,0x077F,0x075F,0x075F,0x073F,0x073F,0x073F,0x073F,0x073F,0x073F,0x073F,0x073F,0x073F,0x073F,0x073F,0x075F,0x073F,0x075F,0x075F,0x077F,0x079F,0x0F9F,0x0FBF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x0FBF,0x17BF,0x1F9E,0x2F5E,0x473E,0x56BD,0x6E1C,0x7D9B,0x953B,0xA4DA,0xACBA,0xB4BB,0xB4BC,0x8BBC,0x3155,0x2158,0x197A,0x117B,0x099C,0x099D,0x099D,0x099E,0x099E,0x019E,0x019E,0x099E,0x099E,0x099E,0x117D,0x197D,0x215C,0x28F9,0x5138,0x923A,0xA259,0xA238,0xA237,0x9A37,0x8A57,0x7296,0x5B57,0x4C7A,0x45BD,0x2E3E,0x1EBE,0x1F5F,0x179F,0x0FDF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x0FDF,0x279F,0x3EBE,0x769F,0x855C,0x5A51,0x9252,0xB213,0xB9D2,0xC9D3,0xC9B2,0xC9B3,0xD1B3,0xC992,0xD193,0xC993,0xC993,0xD1B4,0xC9B3,0xC1D4,0xB9F4,0xB235,0x9A15,0x58AF,0x5972,0x4951,0x4151,0x4151,0x4171,0x3971,0x3971,0x3971,0x3151,0x3951,0x3971,0x3171,0x3151,0x3151,0x3151,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x2910,0x2930,0x2930,0x290F,0x2930,0x290F,0x292F,0x292F,0x290F,0x292F,0x2910,0x2910,0x2110,0x2930,0x2930,0x2110,0x2930,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2131,0x1932,0x1954,0x19B7,0x11F9,0x09B9,0x01B9,0x01DA,0x01DA,0x01DA,0x01FB,0x01DA,0x01DA,0x01DA,0x09FA,0x01D9,0x01D9,0x09D9,0x09B8,0x11B8,0x19D8,0x21F8,0x2A18,0x2A38,0x3238,0x3A58,0x3238,0x3258,0x3237,0x3237,0x3237,0x3258,0x3257,0x3258,0x2A17,0x2A37,0x21F6,0x2A16,0x29F6,0x29F6,0x29F6,0x2A17,0x2A17,0x29F6,0x21B5,0x1133,0x1112,0x1931,0x2131,0x2131,0x2131,0x2951,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2151,0x1951,0x1931,0x1132,0x1132,0x1154,0x1995,0x2217,0x2217,0x19F7,0x1A17,0x11B6,0x0954,0x0912,0x0112,0x0912,0x0933,0x0932,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1133,0x1153,0x1133,0x1154,0x1154,0x1175,0x0976,0x0997,0x09D8,0x01D9,0x01F9,0x01FA,0x01D9,0x01D9,0x01DA,0x01B9,0x01DA,0x01D9,0x01D9,0x0A1A,0x09D8,0x11B7,0x1995,0x1132,0x1932,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x290F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x2930,0x290F,0x2910,0x210F,0x2910,0x2910,0x290F,0x292F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x290F,0x290F,0x2910,0x2930,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x2910,0x2910,0x2930,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x292F,0x212F,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x212F,0x292F,0x212F,0x212F,0x210F,0x2130,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2910,0x210F,0x290F,0x210F,0x210F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130, + 0x212F,0x210F,0x2130,0x2131,0x2111,0x1911,0x1912,0x1133,0x1175,0x1196,0x19F7,0x2218,0x19F7,0x19B6,0x1154,0x1133,0x1112,0x1911,0x1910,0x1910,0x2110,0x2110,0x2130,0x2110,0x2130,0x1911,0x1911,0x1132,0x1174,0x1196,0x1A18,0x2218,0x1175,0x1154,0x1153,0x1932,0x1932,0x1952,0x1931,0x1112,0x1133,0x1195,0x1A18,0x1218,0x11F8,0x11B7,0x1196,0x1196,0x1175,0x0955,0x1196,0x11B7,0x19F8,0x19D8,0x11B7,0x1996,0x1154,0x1933,0x1912,0x1931,0x1911,0x1111,0x1132,0x1154,0x11D6,0x1A18,0x11F8,0x11B7,0x1154,0x1912,0x2131,0x2131,0x2110,0x2110,0x2110,0x2930,0x210F,0x2110,0x2110,0x2930,0x212F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2910,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x290F,0x2910,0x290F,0x2930,0x210F,0x210F,0x2910,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x212F,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x210F,0x210F,0x2110,0x2130,0x2130,0x2151,0x2110,0x1911,0x1911,0x1911,0x1932,0x1952,0x1952,0x1932,0x1911,0x1911,0x1931,0x1931,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x292F,0x292F,0x212F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210E,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1931,0x1932,0x1932,0x1132,0x1153,0x19B5,0x19F6,0x11B6,0x19D6,0x19B5,0x1174,0x1153,0x1112,0x1911,0x1931,0x1931,0x1931,0x2131,0x2131,0x1910,0x1910,0x1910,0x1910,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x1931,0x2152,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2151,0x1931,0x1931,0x1132,0x1153,0x1174,0x19D6,0x19F7,0x19F6,0x21B4,0x2193,0x2172,0x1951,0x1931,0x1930,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x292F,0x292F,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3151,0x3150,0x3151,0x3171,0x3151,0x3171,0x3971,0x3971,0x3971,0x3971,0x3972,0x4172,0x4172,0x4172,0x4172,0x4192,0x4192,0x4192,0x4171,0x4171,0x4971,0x4970,0x514F,0x594F,0xA355,0xD479,0xD458,0xDC58,0xDC78,0xDC58,0xDC58,0xDC78,0xD458,0xD458,0xCC57,0xBC57,0xAC36,0xA456,0x9435,0x8C55,0x9496,0x8C96,0x8CB6,0x8CD6,0x8CB6,0x8CB7,0x8CB7,0x8CB7,0x94B7,0x94B7,0x9497,0x9497,0x9497,0x9498,0x9C98,0x9C98,0x9C98,0x9498,0x9458,0x8C58,0x8C58,0x8458,0x7C78,0x7498,0x6C98,0x64D9,0x5D19,0x5D9B,0x5E1C,0x5E9D,0x5EDE,0x5EFE,0x5EFE,0x5EFE,0x5EFE,0x5EDE,0x66BE,0x5E5D,0x4D7A,0x4D3A,0x4CF9,0x551A,0x4C78,0x3CB8,0x359A,0x3EBD,0x271D,0x1F9E,0x17DF,0x0FDF,0x0FFF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x0FBF,0x17BF,0x17BF,0x1F9F,0x277E,0x2F5E,0x3F1D,0x56DD,0x76BD,0x85BB,0x8BF6,0xAB96,0xBB56,0xC356,0xCB56,0xCB56,0xCB56,0xCB55,0xC375,0xC376,0xB396,0xA3B6,0x8396,0x7478,0x5DDB,0x56FE,0x3F5E,0x277F,0x1F7F,0x177F,0x0F9F,0x0F9F,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x079F,0x079F,0x077F,0x079F,0x077F,0x077F,0x075F,0x075F,0x075F,0x075F,0x075F,0x073F,0x073F,0x073F,0x073F,0x071F,0x071F,0x071F,0x071F,0x071F,0x071F,0x071F,0x071F,0x071F,0x071F,0x071F,0x073F,0x071E,0x073E,0x073E,0x075F,0x077F,0x0F9F,0x079F,0x079F,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x07BF,0x079F,0x079F,0x077F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x077F,0x079F,0x079F,0x07BF,0x07BF,0x079F,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x079F,0x0F9F,0x179F,0x1F9E,0x2F7E,0x3F3E,0x56BD,0x663C,0x7DBB,0x8D5B,0x9CFA,0xACDA,0xB4BA,0xB4BB,0xB4BE,0x62B8,0x2136,0x195A,0x117B,0x097C,0x099D,0x099D,0x099E,0x019E,0x099E,0x099E,0x099E,0x099E,0x099E,0x097D,0x197D,0x215C,0x291A,0x40F8,0x8A19,0xA259,0xA217,0xA237,0x9A17,0x8A37,0x7296,0x6358,0x4C59,0x457C,0x363E,0x1EBE,0x1F5F,0x17BF,0x0FDF,0x0FDF,0x0FFF,0x07FF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x0FDF,0x1F9F,0x36DE,0x669E,0x85FD,0x5AB2,0x8A32,0xB233,0xB9D3,0xC9B2,0xC9B2,0xC992,0xD1B3,0xC992,0xD193,0xD193,0xC973,0xC993,0xC993,0xC1B3,0xB9D4,0xB215,0xAA76,0x60D0,0x6152,0x5151,0x4931,0x4151,0x4171,0x3971,0x3971,0x3972,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x212F,0x2130,0x2110,0x2130,0x2110,0x2111,0x1911,0x1133,0x19B6,0x11D8,0x09B9,0x09D9,0x01DA,0x01BA,0x01BA,0x01DA,0x01BA,0x01B9,0x01DA,0x01B9,0x09FA,0x09D9,0x11F9,0x11D9,0x11D8,0x19F8,0x21F8,0x21F7,0x21D7,0x29F7,0x3217,0x29F7,0x2A17,0x29F6,0x29D6,0x21D6,0x21B5,0x21D6,0x21D6,0x21D6,0x21F6,0x21F6,0x29F6,0x21D5,0x21D6,0x21D6,0x21F6,0x21F6,0x19D6,0x19D6,0x21B5,0x1153,0x1112,0x1911,0x1931,0x2131,0x2131,0x2131,0x2951,0x2951,0x2130,0x2130,0x2130,0x2130,0x2151,0x2151,0x1911,0x1131,0x1112,0x1153,0x1995,0x19F6,0x1A17,0x1A17,0x19F7,0x11D6,0x11B5,0x09B5,0x09B5,0x0995,0x11B6,0x11B6,0x0995,0x0995,0x1196,0x11B6,0x1195,0x1196,0x1196,0x1196,0x1196,0x1196,0x0996,0x0997,0x09B8,0x09B8,0x09F9,0x01D9,0x01D9,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01D9,0x09D9,0x11F9,0x19F7,0x1995,0x1112,0x1911,0x1911,0x1910,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x2930,0x290F,0x210F,0x210F,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x210F,0x2910,0x290F,0x210F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2910,0x2930,0x2910,0x290F,0x210F,0x290F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x212F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2130,0x212F,0x210F,0x290F,0x2930,0x210F,0x210F,0x2110,0x2130,0x210F,0x212F,0x2130,0x2130,0x2110,0x2130,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110, + 0x2110,0x2110,0x2110,0x1910,0x18F1,0x1912,0x1113,0x1155,0x19B6,0x19F7,0x2218,0x2217,0x19B6,0x1174,0x1133,0x1112,0x1111,0x1910,0x1910,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x1911,0x1911,0x1133,0x1174,0x1196,0x1A18,0x1A18,0x1195,0x1154,0x1133,0x1932,0x1932,0x1931,0x1932,0x1132,0x1134,0x11B6,0x1A18,0x1218,0x11B7,0x0996,0x0976,0x0955,0x0955,0x0955,0x0935,0x1175,0x19B7,0x11B7,0x19D7,0x1996,0x1974,0x1953,0x1932,0x1911,0x1911,0x1911,0x1132,0x1153,0x1196,0x1A39,0x1A18,0x11D7,0x1154,0x1953,0x1931,0x2131,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2130,0x210F,0x210F,0x290F,0x290F,0x2930,0x212F,0x212F,0x210F,0x2930,0x2110,0x2910,0x2910,0x210F,0x2910,0x2930,0x210F,0x212F,0x2930,0x290F,0x2930,0x212F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x2111,0x2111,0x1911,0x1931,0x1931,0x1911,0x1931,0x1910,0x1910,0x2110,0x2130,0x2130,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x292F,0x210F,0x290F,0x292F,0x210F,0x292F,0x292F,0x210E,0x210E,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1911,0x1931,0x1911,0x1112,0x1132,0x1153,0x19B5,0x19F6,0x19F6,0x19D6,0x19D6,0x1174,0x1132,0x1132,0x1931,0x1931,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x1910,0x2131,0x1931,0x1910,0x1931,0x1930,0x1930,0x2131,0x1910,0x2131,0x2131,0x2131,0x1931,0x1931,0x1930,0x1931,0x1931,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1910,0x2131,0x2131,0x2130,0x2130,0x2131,0x1910,0x2131,0x2131,0x2131,0x1910,0x2130,0x2130,0x2131,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2151,0x1951,0x1911,0x1132,0x1153,0x1195,0x19D6,0x2217,0x19F7,0x21F6,0x1952,0x1952,0x1931,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x212F,0x292F,0x212F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3151,0x3171,0x3171,0x3171,0x3171,0x3971,0x3971,0x3971,0x3971,0x3972,0x4172,0x4172,0x4172,0x4172,0x4192,0x4172,0x4171,0x4191,0x4171,0x4970,0x516F,0x61B0,0xBC19,0xD49A,0xD479,0xDC78,0xDC78,0xDC78,0xDC78,0xDC58,0xD458,0xD457,0xD457,0xCC57,0xC457,0xB456,0xB476,0xA476,0xA496,0xA4D7,0xA4D7,0x9CD7,0x9CF7,0x9CF7,0xA518,0xA519,0xA539,0xAD5A,0xA55A,0xAD7A,0xAD5A,0xA55B,0xA53A,0xA51A,0x9D1A,0x94FA,0x8CDA,0x8CB9,0x84B9,0x7C99,0x7498,0x6CF9,0x6D3A,0x6D7B,0x65DC,0x5E1C,0x5E9E,0x56DE,0x4EFE,0x471E,0x471E,0x3F3E,0x3F1E,0x3F1D,0x3EFD,0x46DD,0x4EDD,0x56BD,0x569E,0x563D,0x561C,0x34D8,0x24B7,0x25BA,0x2EDD,0x273D,0x1F9E,0x17DF,0x0FDF,0x0FFF,0x07FF,0x07FF,0x07DF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x0FDF,0x0FDF,0x0FDF,0x17BF,0x17BF,0x1F9F,0x277E,0x2F7E,0x3F3E,0x4F1D,0x66BD,0x7E3C,0x84B8,0x9BB6,0xB376,0xC356,0xC336,0xCB56,0xCB56,0xCB56,0xCB76,0xC375,0xC396,0xB376,0x9B75,0x7BB6,0x74D9,0x5E5C,0x471E,0x375E,0x1F5E,0x175F,0x177F,0x0F9F,0x0F9F,0x07BF,0x07BF,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x077F,0x077F,0x077F,0x077F,0x075F,0x075F,0x073F,0x073F,0x073F,0x073F,0x073F,0x073F,0x071F,0x071F,0x071F,0x06FE,0x06FF,0x06FF,0x071F,0x06FE,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FE,0x06FE,0x06FE,0x06FE,0x071E,0x071E,0x073F,0x075F,0x075F,0x079F,0x079F,0x07BF,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x0F9F,0x179F,0x1F9F,0x277E,0x3F5E,0x4EFD,0x667C,0x75FC,0x8D7B,0x9D1A,0xA4DA,0xACBA,0xB4BB,0xBCBC,0xB4FF,0x41D7,0x2138,0x115B,0x117C,0x097D,0x097D,0x099E,0x099E,0x099E,0x099E,0x099E,0x099E,0x099E,0x117E,0x197D,0x215C,0x293A,0x40F8,0x81F9,0xA259,0xA218,0xA217,0x91F6,0x8A36,0x7A96,0x6B38,0x4C39,0x455C,0x363E,0x26DE,0x1F5F,0x17BF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07FF,0x07FF,0x07FF,0x07DF,0x07DF,0x0FDF,0x179F,0x2F1E,0x56BE,0x867F,0x6354,0x8232,0xA9F2,0xB9D3,0xC9D3,0xC192,0xC9B3,0xC993,0xD1B3,0xD193,0xC973,0xC973,0xC993,0xC993,0xC9D4,0xC1D4,0xB1F5,0xAA76,0x68F0,0x6132,0x5152,0x4951,0x4151,0x4171,0x4192,0x3971,0x3972,0x3151,0x3171,0x3151,0x3151,0x3151,0x3131,0x3150,0x3150,0x2930,0x2930,0x2930,0x3130,0x2910,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x212F,0x2930,0x2110,0x2110,0x2110,0x2110,0x1911,0x1912,0x1975,0x19B7,0x11D8,0x09D9,0x01D9,0x01D9,0x01BA,0x01DA,0x01DA,0x01D9,0x01D9,0x01D9,0x09FA,0x11F9,0x11D9,0x11B8,0x11B7,0x1997,0x1975,0x1975,0x1975,0x1974,0x1954,0x1954,0x1974,0x1953,0x1954,0x1974,0x1954,0x1974,0x1953,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1995,0x21B5,0x19D6,0x19D6,0x21F7,0x19D6,0x21D6,0x1174,0x1132,0x1111,0x1931,0x2131,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2151,0x2130,0x1931,0x1931,0x1931,0x1931,0x1132,0x1153,0x19B5,0x19D6,0x19F7,0x1A17,0x1A18,0x1A18,0x1A38,0x1A18,0x1A18,0x1A18,0x11F7,0x1218,0x1218,0x11F7,0x11F7,0x11F7,0x11D7,0x19F7,0x11D7,0x11D7,0x11D7,0x11F8,0x11F8,0x09D9,0x09F9,0x09FA,0x01D9,0x01D9,0x01DA,0x01FA,0x01FA,0x01DA,0x01BA,0x01DA,0x09FA,0x09F9,0x11F8,0x19D7,0x1174,0x1112,0x1911,0x1931,0x1910,0x2131,0x2130,0x2110,0x2110,0x2110,0x2910,0x210F,0x212F,0x290F,0x210F,0x290F,0x210F,0x290F,0x2930,0x290F,0x292F,0x210F,0x2930,0x210F,0x210F,0x2110,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x2910,0x2910,0x290F,0x290F,0x2910,0x2110,0x2930,0x210F,0x2910,0x210F,0x210F,0x2930,0x2910,0x210F,0x290F,0x290F,0x2910,0x2910,0x2110,0x212F,0x210F,0x212F,0x2130,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2910,0x2910,0x210F,0x292F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2110,0x2130,0x210F,0x210F,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2910,0x210F, + 0x1911,0x1931,0x10F1,0x10F1,0x10F2,0x1113,0x1955,0x19B6,0x19D7,0x19F7,0x19D7,0x19B6,0x1175,0x1133,0x10F1,0x10F1,0x1910,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x1910,0x1932,0x1953,0x1175,0x11B6,0x19F8,0x19F8,0x1195,0x1154,0x1132,0x1932,0x1932,0x1932,0x1911,0x1132,0x1154,0x19D7,0x1A18,0x11F8,0x0976,0x0976,0x0955,0x0955,0x0934,0x0934,0x0934,0x0934,0x1196,0x19B7,0x19D8,0x19D7,0x1995,0x1954,0x1932,0x1932,0x1931,0x1911,0x1132,0x1174,0x0995,0x11F8,0x1A19,0x11B7,0x1154,0x1933,0x1931,0x2111,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x212F,0x290F,0x290F,0x212F,0x2930,0x2930,0x2930,0x210F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x290F,0x2930,0x212F,0x212F,0x2930,0x212F,0x290F,0x290F,0x210F,0x2910,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2910,0x210F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x212F,0x2930,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x2111,0x2110,0x2110,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210E,0x290F,0x210E,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x1111,0x1132,0x1153,0x11B5,0x19D6,0x2217,0x19F6,0x19B5,0x1173,0x1112,0x1132,0x1932,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x2130,0x2130,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2150,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2150,0x2130,0x2130,0x2110,0x2130,0x2151,0x1931,0x1911,0x1112,0x1133,0x1174,0x11D6,0x1A17,0x1A17,0x19F6,0x1995,0x1932,0x1931,0x2131,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x212F,0x292F,0x2930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x212F,0x2930,0x2930,0x2930,0x292F,0x2930,0x290F,0x2930,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3150,0x3151,0x3171,0x3151,0x3971,0x3171,0x3171,0x3971,0x3971,0x3971,0x3971,0x3971,0x4172,0x4172,0x4171,0x4171,0x4171,0x4171,0x4150,0x4950,0x514F,0x69F0,0xD4BB,0xDC9A,0xDC79,0xDC78,0xDC78,0xDC58,0xDC78,0xDC78,0xD458,0xD437,0xD457,0xD457,0xCC57,0xCC77,0xC477,0xC497,0xBC97,0xB496,0xB4B7,0xB4B7,0xACD7,0xACD7,0xACD7,0xACF8,0xA4F8,0xA4F9,0x9CF9,0x9CD9,0x94B8,0x9498,0x8C78,0x8C79,0x8499,0x84B9,0x84DA,0x7CFA,0x7D5B,0x7D9C,0x75DC,0x761D,0x6E1C,0x663D,0x5E5D,0x569D,0x4EBD,0x4EFE,0x471E,0x3F3E,0x373E,0x375E,0x375E,0x2F5E,0x2F5E,0x2F3E,0x373D,0x373D,0x3F1E,0x3F1E,0x471E,0x471E,0x473F,0x473F,0x2EDD,0x273D,0x27BF,0x17BF,0x17DF,0x0FFF,0x0FFF,0x07FF,0x07FF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x0FDF,0x0FDF,0x0FDF,0x0FDF,0x17BF,0x17BE,0x1FBF,0x279E,0x2F9E,0x375E,0x473D,0x56DD,0x765C,0x84F9,0x8BF6,0xAB96,0xBB56,0xC356,0xCB56,0xCB56,0xCB55,0xCB55,0xCB75,0xC395,0xBBB6,0xB376,0x8B55,0x73F6,0x6D5A,0x5E9D,0x3F1E,0x2F3E,0x1F5F,0x175F,0x0F5F,0x0F7F,0x0F9F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x077F,0x077F,0x075F,0x075F,0x075F,0x073F,0x073F,0x075F,0x073F,0x073F,0x073F,0x071F,0x071F,0x071F,0x071F,0x06FF,0x06FF,0x06FF,0x06FF,0x06FE,0x06FF,0x06FF,0x06FF,0x06DE,0x06FF,0x06DE,0x06DE,0x06DE,0x06DE,0x06DE,0x06DE,0x06DE,0x06DE,0x06DE,0x06FF,0x071F,0x071E,0x073F,0x077F,0x077F,0x077F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x077F,0x079F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x079F,0x079F,0x079F,0x079F,0x079F,0x07BF,0x07BF,0x079F,0x07BF,0x0F9F,0x0F9F,0x179F,0x279F,0x375E,0x471E,0x569D,0x6E1C,0x85BB,0x955B,0xA4FA,0xACBA,0xB49A,0xBCBB,0xBCDE,0x9C1E,0x39B7,0x1959,0x115B,0x097C,0x097D,0x099D,0x099E,0x099E,0x019E,0x099E,0x099E,0x099E,0x097E,0x197D,0x215C,0x293B,0x38F8,0x7198,0x9A5A,0xA218,0xA217,0x99F6,0x8A16,0x7A76,0x6B58,0x4BD8,0x451B,0x363D,0x26BE,0x1F5F,0x179F,0x0FBF,0x0FDF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x17BF,0x2F3F,0x4EDE,0x7E9F,0x63F6,0x7A52,0xAA13,0xC234,0xC9F3,0xC192,0xC992,0xC972,0xD193,0xC973,0xD193,0xC973,0xC973,0xC993,0xC1B3,0xC1D4,0xB1F4,0xBA97,0x7952,0x60F1,0x5932,0x4931,0x4951,0x4171,0x4192,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x2950,0x2930,0x2930,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x290F,0x2910,0x2110,0x2130,0x1911,0x1932,0x1974,0x19B6,0x1197,0x09B8,0x09D9,0x09FA,0x01DA,0x01DA,0x01D9,0x01D9,0x09F9,0x09F9,0x09D9,0x09B8,0x1197,0x1176,0x1155,0x1134,0x1113,0x1113,0x1112,0x1112,0x1912,0x1112,0x1112,0x1112,0x1112,0x1132,0x1932,0x1132,0x1932,0x1932,0x1932,0x1932,0x1953,0x1953,0x1933,0x1133,0x1133,0x1154,0x1195,0x21F7,0x2218,0x21F7,0x19B5,0x1174,0x1133,0x1112,0x1911,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2131,0x2151,0x1951,0x1952,0x1153,0x1974,0x19D6,0x21F7,0x2238,0x1A38,0x1A38,0x1A18,0x1A38,0x1A18,0x1A18,0x1A38,0x1A38,0x1217,0x1A18,0x11F7,0x19F7,0x19F7,0x11F7,0x19F7,0x19F8,0x11D8,0x09B8,0x09D9,0x09D9,0x09FA,0x01FA,0x01D9,0x01BA,0x01DA,0x01DA,0x01BA,0x01BA,0x01B9,0x09DA,0x09D9,0x11D8,0x19D7,0x1174,0x10F1,0x1911,0x2131,0x2130,0x2131,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x2910,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x210F,0x210F,0x212F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2110,0x2110,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2110,0x2130,0x212F,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2910,0x2930,0x2930,0x212F,0x2930,0x210F,0x2930,0x2110,0x2910,0x2910, + 0x1132,0x1112,0x1112,0x08F2,0x1113,0x1175,0x1996,0x21F7,0x21F7,0x19D7,0x19B6,0x1154,0x1133,0x1112,0x1111,0x1910,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1153,0x1175,0x11B6,0x19F7,0x1A18,0x1196,0x1154,0x1112,0x1912,0x2132,0x1931,0x1932,0x1133,0x0954,0x19F7,0x1A19,0x11F8,0x0996,0x0955,0x0935,0x0954,0x0954,0x0934,0x0934,0x0934,0x1175,0x19D7,0x19D7,0x19D7,0x21B6,0x1974,0x1933,0x1932,0x1931,0x1912,0x1953,0x1154,0x0995,0x11F8,0x1A19,0x19D7,0x1975,0x1933,0x1911,0x2111,0x2110,0x2110,0x2130,0x2930,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x290F,0x210F,0x212F,0x2930,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2910,0x2930,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2910,0x2930,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1111,0x1111,0x1132,0x1153,0x19B5,0x19D6,0x19F6,0x19D5,0x19B5,0x1154,0x1133,0x1112,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x1131,0x1112,0x1153,0x1174,0x11D6,0x1A17,0x1A17,0x19F6,0x19B5,0x1153,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x212F,0x292F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x2930,0x2930,0x292F,0x2930,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x212F,0x212F,0x292F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x2950,0x3150,0x3150,0x3150,0x3171,0x3151,0x3151,0x3151,0x3151,0x3971,0x3971,0x3971,0x3971,0x3971,0x4171,0x4172,0x4171,0x3951,0x4151,0x4150,0x412F,0x490E,0x8AD4,0xD4BB,0xDC99,0xDC99,0xDC78,0xDC78,0xDC78,0xDC58,0xDC78,0xD458,0xD437,0xD457,0xD457,0xD457,0xCC57,0xCC77,0xC477,0xC477,0xBC77,0xBC77,0xBC97,0xB4B7,0xB4B7,0xACB7,0xACD8,0xA4B8,0x9C98,0x9498,0x8C98,0x8498,0x8498,0x7C98,0x7498,0x6C78,0x74D9,0x74FA,0x757C,0x759C,0x6DFD,0x6E3D,0x665D,0x5E7D,0x569D,0x4EBD,0x4EDD,0x46FE,0x3F1E,0x3F3E,0x375E,0x2F5E,0x2F7E,0x277E,0x277E,0x279E,0x279E,0x279E,0x279E,0x277E,0x2F7E,0x2F7E,0x2F7E,0x2F7E,0x2F7E,0x2F7E,0x279E,0x1F9E,0x1FBF,0x17DF,0x0FDF,0x0FDF,0x07DF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x0FDF,0x0FDF,0x0FDF,0x0FDF,0x0FBF,0x17BF,0x17BF,0x179E,0x1F9E,0x277E,0x2F7E,0x377E,0x3F5D,0x56FD,0x6E7C,0x7D79,0x8C16,0xA3B6,0xB376,0xC356,0xCB36,0xCB56,0xCB55,0xCB55,0xCB75,0xC375,0xC396,0xBBD7,0xA356,0x8376,0x7498,0x65DB,0x4EBD,0x371E,0x273E,0x1F5F,0x175F,0x0F5F,0x0F7F,0x0F7F,0x079F,0x079F,0x079F,0x077F,0x077F,0x077F,0x077F,0x075F,0x075F,0x075F,0x073F,0x073F,0x073F,0x073F,0x071F,0x071F,0x071F,0x071F,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06DF,0x06DE,0x06DF,0x06DE,0x06DE,0x06DE,0x06DE,0x06DE,0x06BE,0x06BE,0x06BE,0x06BE,0x06BE,0x06BE,0x06BE,0x06BE,0x06BE,0x06BE,0x06BE,0x06DE,0x071F,0x073F,0x075F,0x075F,0x0F7F,0x0F7F,0x0F7F,0x0F7F,0x0F7F,0x0F7F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x075F,0x077F,0x077F,0x077F,0x077F,0x077F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x0F9F,0x179F,0x1F9F,0x2F7E,0x3F3E,0x4EBD,0x665C,0x75FB,0x8D7B,0x9D1A,0xACBA,0xB49A,0xBCBB,0xBCBC,0xB4BE,0x7B3B,0x2117,0x113A,0x095C,0x097D,0x099D,0x099D,0x099E,0x099E,0x099E,0x099E,0x097E,0x097E,0x117E,0x217D,0x293B,0x38F9,0x6138,0x923A,0xA218,0xA217,0x99D6,0x8A16,0x8276,0x7337,0x53D8,0x44FA,0x3E3E,0x26DE,0x1F5F,0x179F,0x0FBF,0x0FDF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x17BF,0x2F7F,0x46FE,0x6EBF,0x7CFA,0x7272,0x99F2,0xBA13,0xC1D3,0xC192,0xC992,0xC993,0xC972,0xD193,0xD193,0xD193,0xC993,0xC993,0xC9D4,0xC1D4,0xB1D4,0xBA76,0x89B3,0x58D0,0x6152,0x4931,0x4951,0x4171,0x4172,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2930,0x2110,0x2110,0x2910,0x210F,0x2130,0x2130,0x2110,0x1932,0x1954,0x1975,0x1197,0x19F8,0x11F9,0x09F9,0x09D9,0x01D9,0x09D9,0x09D9,0x09F9,0x09D8,0x11B7,0x1197,0x1176,0x1155,0x1134,0x1133,0x1913,0x1912,0x1912,0x1912,0x1912,0x1911,0x1932,0x1931,0x1911,0x1931,0x1932,0x1911,0x1932,0x1911,0x1932,0x1932,0x1932,0x1932,0x1932,0x1112,0x1933,0x1953,0x1154,0x19B5,0x19D6,0x2217,0x19F7,0x19B5,0x1154,0x1133,0x1112,0x1911,0x2132,0x2131,0x2131,0x2131,0x2130,0x2130,0x2150,0x2130,0x2130,0x2151,0x2131,0x2131,0x1931,0x1932,0x1132,0x1153,0x1974,0x19B5,0x19D6,0x19F6,0x19D6,0x19D6,0x19D6,0x19F6,0x11D6,0x19D6,0x19D6,0x11B5,0x11B5,0x19D6,0x11B5,0x11B6,0x19B6,0x11B6,0x11B7,0x11B7,0x09B8,0x09D9,0x09F9,0x09DA,0x01D9,0x01DA,0x01BA,0x01BA,0x01DA,0x01DA,0x01B9,0x01D9,0x09D9,0x11D8,0x19B6,0x1174,0x1112,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2910,0x2110,0x2930,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x210F,0x2930,0x212F,0x2130,0x2110,0x210F,0x292F,0x2930,0x292F,0x2930,0x212F,0x212F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x2930,0x212F,0x210F,0x2930,0x210F,0x210F,0x290F,0x2930,0x290F,0x2910,0x2910,0x2930,0x2910,0x2910,0x210F,0x290F,0x290F,0x2930,0x2130,0x210F,0x2130,0x210F,0x212F,0x2930,0x212F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2910,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2930,0x2910, + 0x11B6,0x1195,0x1175,0x1175,0x19B6,0x11B6,0x21F7,0x19F7,0x21F7,0x19B6,0x1134,0x1112,0x1111,0x1111,0x1911,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x1910,0x1930,0x1952,0x1153,0x1174,0x11B6,0x11D7,0x19F7,0x1195,0x1154,0x1112,0x1932,0x1931,0x1931,0x1932,0x1133,0x1174,0x19D7,0x1A39,0x11F8,0x0997,0x0955,0x0955,0x0954,0x0954,0x0954,0x0933,0x0934,0x1175,0x19D7,0x19D7,0x19B6,0x21B6,0x1974,0x1953,0x1932,0x1911,0x1111,0x1932,0x1154,0x0975,0x11F8,0x19F8,0x19B7,0x1974,0x1953,0x1911,0x2111,0x2110,0x2110,0x2930,0x2930,0x2110,0x2130,0x2930,0x2930,0x212F,0x212F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x2930,0x212F,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2930,0x2910,0x2910,0x290F,0x2930,0x2930,0x2930,0x2910,0x2930,0x2110,0x2930,0x2110,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x2930,0x2930,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2151,0x2151,0x1931,0x1931,0x1131,0x1152,0x1173,0x19B5,0x19D5,0x19F6,0x19D6,0x19B5,0x1974,0x1133,0x1112,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2150,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2130,0x2930,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1153,0x1174,0x11B6,0x19F7,0x1A17,0x19D6,0x1995,0x1133,0x1112,0x1931,0x2131,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x212F,0x2930,0x2930,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x2950,0x2950,0x3151,0x3151,0x3151,0x3151,0x3150,0x3151,0x3151,0x3151,0x3171,0x3971,0x3971,0x3971,0x3971,0x3971,0x4171,0x4171,0x3951,0x4151,0x4150,0x412F,0x5990,0xABB7,0xDCDB,0xDC99,0xDC78,0xDC78,0xDC78,0xDC58,0xDC58,0xDC58,0xD457,0xD457,0xD437,0xD457,0xD457,0xD457,0xCC57,0xCC77,0xC477,0xC477,0xC477,0xBC77,0xBC97,0xB4B8,0xB4D8,0xACB8,0x9C77,0x9C78,0x8C78,0x8498,0x7CB8,0x74D9,0x7519,0x6D5B,0x75BC,0x765E,0x6E5E,0x6E5E,0x665D,0x5E7E,0x567D,0x569D,0x4EBD,0x46DD,0x46FE,0x3F1E,0x3F3E,0x373E,0x373E,0x2F5E,0x277E,0x277E,0x277E,0x279F,0x1F9E,0x1FBF,0x1F9E,0x1F9E,0x1F9E,0x1F9E,0x1F7E,0x279E,0x279E,0x279E,0x279E,0x279E,0x1F9E,0x1FBE,0x17BE,0x17DF,0x0FDE,0x0FDF,0x0FFF,0x07FF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x0FDF,0x0FBF,0x0FDF,0x0FBF,0x17BF,0x17BF,0x1F9F,0x1F9E,0x279E,0x2F7E,0x2F7E,0x3F5D,0x4EFC,0x6E9C,0x7D7A,0x8437,0x9BB6,0xB376,0xBB56,0xC336,0xCB56,0xCB55,0xD355,0xCB55,0xCB76,0xC376,0xBB96,0xB3B7,0x9335,0x7BD7,0x6D5A,0x565C,0x3EDD,0x2F1E,0x273E,0x173F,0x173F,0x0F5F,0x0F7F,0x077F,0x077F,0x077F,0x077F,0x077F,0x075F,0x075F,0x075F,0x075F,0x075F,0x073F,0x073F,0x071F,0x071F,0x071F,0x071F,0x071F,0x06FE,0x06FF,0x06FE,0x06FF,0x06FE,0x06FE,0x06FF,0x06DE,0x06DE,0x06DE,0x06DF,0x06BE,0x06BE,0x06BE,0x06BE,0x06BE,0x06DF,0x06BE,0x06BE,0x069E,0x069E,0x069E,0x069E,0x067E,0x067E,0x067E,0x067E,0x069E,0x067E,0x069E,0x06DF,0x06FF,0x071F,0x071F,0x071F,0x071F,0x073F,0x073F,0x073F,0x075F,0x077F,0x077F,0x077F,0x077F,0x075F,0x077F,0x077F,0x075F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x0F9F,0x1F9F,0x277E,0x373E,0x46FD,0x5EBC,0x6E3C,0x859B,0x951A,0xA4B9,0xB49A,0xBC9A,0xC49B,0xBCBC,0xB4BF,0x5219,0x2159,0x115B,0x097C,0x097D,0x099D,0x099E,0x099E,0x09BE,0x099E,0x017E,0x097E,0x117E,0x197D,0x295C,0x311A,0x5918,0x91FA,0xA238,0xA217,0x99F6,0x9216,0x8296,0x7B38,0x5397,0x44BA,0x3E3D,0x2EDF,0x1F3F,0x177F,0x17BF,0x0FBF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x0FBF,0x1F7F,0x3F1F,0x5EBE,0x85FD,0x6A72,0x91D1,0xBA34,0xC1D3,0xC1B2,0xC992,0xC993,0xC993,0xD193,0xC993,0xD193,0xC993,0xC993,0xC9D4,0xB993,0xB9D4,0xB235,0xA235,0x60B0,0x5911,0x5131,0x4951,0x4171,0x4171,0x3971,0x3992,0x3171,0x3151,0x3151,0x3151,0x3131,0x3131,0x3151,0x3150,0x3150,0x2950,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2910,0x2930,0x2130,0x2110,0x1911,0x1953,0x1974,0x1975,0x19B7,0x19D8,0x11F8,0x11F9,0x11F9,0x11F9,0x11F8,0x19F9,0x11D8,0x1176,0x1175,0x1974,0x1974,0x1933,0x1932,0x1932,0x1911,0x1931,0x1911,0x2131,0x1911,0x1931,0x1931,0x1951,0x1931,0x2151,0x2152,0x1931,0x1931,0x1911,0x1931,0x2151,0x1931,0x2152,0x1932,0x1912,0x1112,0x1954,0x1154,0x1995,0x19D6,0x19F7,0x19F7,0x19B5,0x1174,0x1113,0x10F2,0x18F1,0x2111,0x2152,0x2131,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1911,0x1911,0x1111,0x10F1,0x1112,0x1112,0x1112,0x1112,0x1133,0x1132,0x1153,0x1153,0x1153,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1133,0x0934,0x0934,0x0956,0x0997,0x0998,0x09D9,0x09D9,0x09DA,0x01B9,0x01D9,0x01B9,0x01DA,0x09FA,0x09FA,0x09F9,0x11D7,0x19D6,0x1173,0x1932,0x1931,0x2131,0x2130,0x2110,0x2110,0x2130,0x210F,0x2910,0x2930,0x2930,0x2930,0x2910,0x2110,0x2930,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x210F,0x290F,0x210F,0x212F,0x212F,0x2930,0x2110,0x210F,0x212F,0x292F,0x290F,0x2110,0x2930,0x2110,0x2110,0x212F,0x212F,0x210F,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2130,0x212F,0x2930,0x210F,0x2930,0x210F,0x290F,0x292F,0x290F,0x2910,0x2910,0x2910,0x210F,0x290F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F, + 0x11F7,0x11D7,0x19F7,0x19D7,0x19D7,0x19F7,0x19F7,0x19D7,0x19B5,0x1154,0x1132,0x1111,0x1911,0x1911,0x2131,0x2130,0x2130,0x212F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x1930,0x1931,0x1953,0x1175,0x11B6,0x1A18,0x1A17,0x1195,0x1154,0x1133,0x1932,0x1931,0x1931,0x1912,0x1933,0x1154,0x11B6,0x1A19,0x11F8,0x09B7,0x0976,0x0975,0x0154,0x0954,0x0954,0x0954,0x0954,0x1195,0x19D7,0x19D6,0x19B6,0x1995,0x1953,0x1932,0x1911,0x1911,0x1932,0x1132,0x1154,0x1196,0x11F8,0x19F8,0x19D7,0x1975,0x1933,0x1931,0x2131,0x2110,0x2110,0x2930,0x2130,0x2110,0x2110,0x2130,0x2930,0x2130,0x210F,0x2930,0x2930,0x210F,0x2110,0x2110,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x2930,0x212F,0x210F,0x290F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x2130,0x212F,0x212F,0x2930,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2910,0x2910,0x2110,0x210F,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x212F,0x290F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2151,0x1931,0x1931,0x1131,0x1152,0x1173,0x1194,0x19F6,0x21F6,0x19D6,0x19B5,0x1974,0x1133,0x1112,0x1911,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x2130,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x1931,0x1132,0x0933,0x0974,0x11B6,0x19F7,0x19F7,0x19F7,0x1995,0x1133,0x1112,0x1111,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x292F,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x3151,0x3151,0x3971,0x3971,0x3971,0x3972,0x3971,0x3971,0x3971,0x3951,0x3950,0x4150,0x410E,0x61D0,0xBC19,0xD4BA,0xDC99,0xDC78,0xDC78,0xDC58,0xDC58,0xDC58,0xD458,0xD458,0xD457,0xD437,0xD437,0xD457,0xD457,0xCC57,0xCC77,0xCC77,0xC478,0xC498,0xBC98,0xBC98,0xBCD9,0xAC98,0x9C77,0x9497,0x8C98,0x8CB8,0x7CB8,0x74F9,0x7D9B,0x7DFC,0x763D,0x6E5D,0x669E,0x5EBE,0x56BE,0x56DE,0x4EDE,0x4EDE,0x46DE,0x46FE,0x3F1D,0x3F3E,0x373E,0x375E,0x2F5E,0x2F5E,0x2F7E,0x277E,0x277E,0x1F9E,0x1F9E,0x1F9E,0x179E,0x179E,0x179E,0x1FBE,0x1FBE,0x1FBE,0x179E,0x1F9E,0x1F9E,0x1F9E,0x1FBE,0x1FBE,0x1FBE,0x17BE,0x17BE,0x0FBE,0x0FDE,0x0FDE,0x07DE,0x07DF,0x07DF,0x07DF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x0FDF,0x0FDF,0x0FBF,0x17BF,0x17BF,0x17BF,0x1FBF,0x1F9E,0x279E,0x279E,0x2F7E,0x375D,0x3F3D,0x4EFD,0x669C,0x7DBA,0x8477,0x9BB6,0xB376,0xBB36,0xC336,0xCB36,0xCB35,0xCB55,0xD375,0xCB75,0xC376,0xC396,0xBB97,0xA356,0x8356,0x7479,0x65FC,0x4EBD,0x36FD,0x271E,0x1F3E,0x173E,0x0F3F,0x0F5F,0x0F5F,0x077F,0x077F,0x077F,0x075F,0x077F,0x075F,0x075F,0x075F,0x075F,0x073F,0x073F,0x071F,0x071F,0x071F,0x071F,0x071F,0x06FF,0x06FF,0x06FE,0x06FE,0x06FE,0x06FE,0x06DE,0x06DF,0x06DF,0x06DF,0x06BE,0x06BF,0x06BE,0x06BE,0x069E,0x069E,0x069E,0x069E,0x069E,0x069E,0x069E,0x069E,0x067E,0x065E,0x067E,0x065E,0x065E,0x065E,0x065E,0x065E,0x065E,0x067E,0x067E,0x069F,0x06BF,0x06BF,0x06DF,0x06DF,0x06FF,0x06FF,0x071F,0x0F3F,0x0F5F,0x0F5F,0x075F,0x075F,0x077F,0x077F,0x075F,0x075F,0x075F,0x075F,0x075F,0x075F,0x075F,0x075F,0x077F,0x077F,0x077F,0x077F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x0F9F,0x179F,0x1F7E,0x2F5E,0x3F1D,0x4EDD,0x667C,0x7DDB,0x8D3A,0x9CB9,0xAC99,0xBC9A,0xC49A,0xC49B,0xBCBD,0x8B9D,0x41D9,0x195A,0x115C,0x097C,0x099D,0x099D,0x099E,0x09BE,0x099E,0x099E,0x097E,0x117E,0x197D,0x215D,0x311B,0x50F8,0x81DA,0xA239,0xAA38,0x99F6,0x91F6,0x8A76,0x7B17,0x5B97,0x4C99,0x463E,0x2EDF,0x1F3F,0x175F,0x17BF,0x0FBF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x0FBF,0x1F9F,0x371E,0x56DE,0x8E5F,0x6AF4,0x89F1,0xB233,0xC1F3,0xC1B3,0xC9B2,0xC993,0xC972,0xC993,0xD193,0xD1B3,0xC993,0xC9B3,0xC1B3,0xC1B3,0xB9D4,0xB215,0xB276,0x68D0,0x6111,0x5151,0x4951,0x4171,0x4172,0x3992,0x3992,0x3171,0x3151,0x3171,0x3151,0x3131,0x3151,0x3151,0x2930,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x1931,0x1953,0x1954,0x1975,0x1196,0x19B7,0x19D7,0x11B7,0x11B7,0x11B7,0x1196,0x1195,0x1174,0x1953,0x1132,0x1932,0x1931,0x1911,0x1931,0x1931,0x2131,0x1931,0x2131,0x2131,0x1931,0x1910,0x1931,0x1930,0x1930,0x1931,0x1910,0x1930,0x1931,0x2131,0x1910,0x2131,0x2131,0x1931,0x1911,0x1932,0x1932,0x1133,0x1133,0x1174,0x19B6,0x2217,0x19D7,0x19B6,0x1154,0x1113,0x1112,0x18F1,0x2111,0x2111,0x2931,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1912,0x1112,0x1133,0x1155,0x1176,0x11B7,0x11D8,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x09F9,0x09D8,0x11F8,0x19F7,0x19B5,0x1973,0x1931,0x2131,0x2131,0x2130,0x2110,0x210F,0x210F,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x2110,0x2130,0x2110,0x2930,0x2110,0x2910,0x2910,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x290F,0x290F,0x212F,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x210F,0x2110,0x2110,0x2930,0x2110,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x212F,0x292F,0x210F,0x2130,0x2110,0x210F,0x2930,0x210F,0x2110,0x2130,0x2130,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F, + 0x11D7,0x19F7,0x19F8,0x19F7,0x19F7,0x19D7,0x19D6,0x1995,0x1974,0x1132,0x1911,0x1911,0x1910,0x2110,0x2110,0x2930,0x2110,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x1910,0x1910,0x1932,0x1174,0x11B6,0x1A38,0x1A18,0x1195,0x0954,0x1133,0x1932,0x1932,0x2152,0x1911,0x1112,0x1133,0x1196,0x19F8,0x11F8,0x09B7,0x09B7,0x0996,0x0975,0x0995,0x0154,0x0974,0x1195,0x11D6,0x19F7,0x11B6,0x1995,0x1153,0x1932,0x1932,0x1911,0x1911,0x1911,0x1112,0x1133,0x11D7,0x2239,0x19F8,0x19B7,0x1974,0x1132,0x1931,0x2131,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x2110,0x2930,0x2930,0x2930,0x2110,0x2110,0x2130,0x2110,0x210F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x2930,0x2930,0x212F,0x2930,0x2930,0x290F,0x210F,0x210F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x212F,0x2930,0x2930,0x290F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x290F,0x292F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x210F,0x290F,0x210F,0x292F,0x292F,0x212F,0x210F,0x210F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2151,0x1951,0x1931,0x1131,0x1132,0x1173,0x19B4,0x19D5,0x2217,0x21D6,0x1995,0x1174,0x1133,0x1112,0x1911,0x1911,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x1930,0x1931,0x1132,0x1133,0x1174,0x11D6,0x19F7,0x19F7,0x19D7,0x1995,0x1153,0x1132,0x1111,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x2950,0x3151,0x3150,0x3151,0x3151,0x3131,0x3151,0x3151,0x3150,0x3171,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3951,0x3950,0x392F,0x410E,0x7252,0xCCBA,0xD499,0xDC99,0xDC78,0xDC58,0xDC58,0xDC58,0xD457,0xD457,0xD457,0xD458,0xD437,0xD457,0xCC57,0xCC57,0xCC78,0xCC78,0xCC78,0xC478,0xBC98,0xBC99,0xB4B9,0xACDA,0x9458,0x8C78,0x84B8,0x84F9,0x7D39,0x7D9A,0x863C,0x7E7D,0x767D,0x667D,0x667D,0x5E9D,0x56BD,0x4EDD,0x4EFD,0x46FD,0x471E,0x471E,0x3F3E,0x3F3E,0x373E,0x375E,0x2F5E,0x2F5E,0x2F7E,0x277E,0x277E,0x277E,0x1F9E,0x1F9E,0x1F9E,0x179E,0x179E,0x17BE,0x17BE,0x17BE,0x17BE,0x17BE,0x17BE,0x17BE,0x1FBE,0x1FBE,0x1FBE,0x1FBE,0x1FBE,0x17BE,0x17BE,0x17BE,0x0FBE,0x0FBE,0x0FBE,0x0FDF,0x0FDF,0x07DF,0x07DF,0x07BF,0x0FDF,0x0FBF,0x0FDF,0x0FBF,0x0FBF,0x0FBF,0x17BF,0x17BF,0x1FBF,0x1F9E,0x1F9E,0x279E,0x2F7E,0x2F7D,0x375D,0x471C,0x56FC,0x6E9C,0x7D79,0x8457,0x9396,0xAB56,0xBB36,0xC315,0xCB56,0xD376,0xCB35,0xCB55,0xCB76,0xCB76,0xC396,0xC397,0xB356,0x9335,0x73B7,0x6D1A,0x5E9E,0x3F1E,0x2F3E,0x275E,0x1F3E,0x173E,0x0F3F,0x0F5F,0x0F5F,0x075F,0x075F,0x075F,0x073F,0x075F,0x073F,0x073F,0x073F,0x073F,0x071F,0x071F,0x071F,0x06FF,0x06FF,0x06FF,0x06FE,0x06FE,0x06FF,0x06DE,0x06DE,0x06DE,0x06DE,0x06DE,0x06BE,0x06BE,0x06BE,0x06BE,0x069E,0x069E,0x069E,0x069E,0x069E,0x069E,0x069E,0x067E,0x067E,0x067E,0x065E,0x065E,0x065E,0x065E,0x063E,0x063E,0x063E,0x063E,0x061E,0x061E,0x063E,0x063E,0x063E,0x065F,0x065F,0x065F,0x067F,0x067F,0x069F,0x06BF,0x0EFF,0x0EFF,0x0F3F,0x073F,0x075F,0x075F,0x075F,0x075F,0x075F,0x075F,0x075F,0x075F,0x075F,0x075F,0x075F,0x075F,0x077F,0x077F,0x077F,0x077F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x0F9F,0x179E,0x277E,0x373D,0x471D,0x5EBC,0x761C,0x857A,0x9CD9,0xAC99,0xBC99,0xC49A,0xCC7A,0xC49C,0xB47E,0x7AFB,0x2138,0x195B,0x115C,0x097D,0x099D,0x099E,0x099E,0x099E,0x099E,0x097E,0x097E,0x117D,0x215D,0x313B,0x40D8,0x79B9,0xA259,0xAA38,0xA1F6,0x91F6,0x8A56,0x82F7,0x5B57,0x4C99,0x463E,0x36DF,0x273F,0x175F,0x0F9F,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x07DF,0x0FDF,0x1F9F,0x2F3F,0x4EDE,0x8EBF,0x7376,0x79D1,0xAA13,0xB9D3,0xC1D3,0xC9B3,0xC992,0xC993,0xC972,0xC972,0xD1B3,0xC993,0xC9B3,0xC1B3,0xC1B3,0xB9F4,0xB215,0xB256,0x70F1,0x60F1,0x5951,0x4931,0x4971,0x4171,0x4192,0x3992,0x3171,0x3151,0x3971,0x3971,0x3151,0x3151,0x3150,0x3150,0x3150,0x2950,0x2950,0x2950,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2910,0x2930,0x2930,0x2910,0x2930,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2930,0x2930,0x20EF,0x2110,0x2111,0x1912,0x1912,0x1933,0x1974,0x1975,0x1975,0x1975,0x1975,0x1975,0x1954,0x1953,0x1132,0x1912,0x1911,0x1931,0x1911,0x1910,0x2131,0x1910,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x2131,0x2131,0x2131,0x2132,0x1932,0x1112,0x1133,0x1975,0x21D6,0x19D6,0x19D7,0x19D6,0x1134,0x1113,0x10F2,0x1911,0x2111,0x2110,0x2110,0x2110,0x2130,0x210F,0x2110,0x2130,0x2110,0x2110,0x2131,0x2131,0x2131,0x2131,0x2110,0x2130,0x2110,0x2110,0x18F0,0x1910,0x1910,0x1910,0x1910,0x1931,0x1910,0x2130,0x1910,0x2131,0x1911,0x2131,0x1932,0x1932,0x1933,0x1954,0x1975,0x19B7,0x11B7,0x11D8,0x11F9,0x11F9,0x09F8,0x11F9,0x11F9,0x1219,0x1A18,0x11B6,0x1196,0x1995,0x1953,0x1911,0x1910,0x2130,0x2130,0x2110,0x210F,0x2130,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x212F,0x2930,0x290F,0x210F,0x210F,0x212F,0x2930,0x2110,0x2110,0x2130,0x2130,0x212F,0x210F,0x292F,0x290F,0x2930,0x2110,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2930,0x2110,0x2930,0x2930,0x290F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2930,0x212F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2130,0x2110,0x2110,0x2130,0x2930,0x2930,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x2910,0x2910,0x210F,0x210F,0x292F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x2910,0x210F,0x290F,0x210F,0x290F,0x290F, + 0x1195,0x1196,0x19B6,0x19B6,0x19B6,0x1175,0x1154,0x1133,0x1112,0x1931,0x1911,0x1910,0x2130,0x2130,0x2110,0x2110,0x210F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x1910,0x1952,0x1154,0x11B6,0x19F7,0x1A38,0x11B6,0x0954,0x1153,0x1932,0x1952,0x1911,0x1911,0x1112,0x1133,0x1175,0x11D7,0x1A18,0x11D7,0x11D7,0x09B7,0x0996,0x0995,0x0975,0x0995,0x11D6,0x19F6,0x19D6,0x19B6,0x1974,0x1933,0x1932,0x1911,0x1911,0x1911,0x1912,0x1133,0x1134,0x19D7,0x2239,0x19F8,0x19B7,0x1974,0x1933,0x1931,0x2111,0x2110,0x2130,0x2930,0x2130,0x210F,0x2130,0x2130,0x2110,0x2130,0x2110,0x2910,0x2930,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2930,0x290F,0x290F,0x292F,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x2110,0x2130,0x210F,0x2110,0x2930,0x2930,0x2130,0x210F,0x2110,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x212F,0x290F,0x210F,0x292F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x1930,0x1931,0x1131,0x1152,0x1173,0x19B5,0x19D6,0x19D6,0x21D6,0x19B5,0x1174,0x1153,0x1112,0x1912,0x1931,0x1931,0x2131,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2131,0x1931,0x1111,0x1153,0x1174,0x11B5,0x19F7,0x19F7,0x19F7,0x1195,0x1153,0x1112,0x1911,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x210F,0x2930,0x292F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x3150,0x3150,0x3150,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3971,0x3971,0x3971,0x3971,0x3971,0x3951,0x3951,0x3950,0x392F,0x410E,0x7A93,0xCCBA,0xD4B9,0xDC99,0xDC78,0xDC78,0xD457,0xD458,0xD457,0xD457,0xD457,0xD457,0xD457,0xD457,0xCC57,0xCC57,0xCC78,0xCC98,0xC499,0xC499,0xBC99,0xAC78,0x9C78,0x9478,0x8C99,0x7C78,0x8519,0x8D9B,0x85FC,0x863C,0x765C,0x6E9C,0x667C,0x5E9C,0x5EBD,0x56BD,0x56DD,0x4EDD,0x46FD,0x471D,0x471D,0x3F3D,0x3F3D,0x3F3E,0x375E,0x375E,0x2F5E,0x2F5E,0x2F5E,0x277E,0x277E,0x277E,0x277E,0x1F9E,0x1F9E,0x1F9E,0x1F9E,0x1FBE,0x1FBE,0x17BE,0x17BE,0x17BE,0x17BE,0x17BE,0x17BE,0x1FBE,0x1F9E,0x1FBE,0x1FBE,0x1FBE,0x1FBE,0x17BE,0x17BE,0x17BE,0x17BF,0x17BF,0x0FBF,0x17DF,0x0FBF,0x0FBF,0x0FBF,0x0FBF,0x17BF,0x17BF,0x17BF,0x17BF,0x17BF,0x1FBF,0x1F9F,0x279E,0x279E,0x2F7E,0x2F7E,0x375D,0x3F3D,0x46FC,0x5EDC,0x767C,0x7D79,0x8437,0x9396,0xAB56,0xBB16,0xC315,0xCB36,0xCB56,0xD356,0xCB55,0xCB55,0xCB76,0xCB96,0xC396,0xB377,0x9AF5,0x8356,0x6C58,0x65BC,0x4EBD,0x371E,0x273E,0x1F3E,0x173E,0x0F1E,0x0F3F,0x0F3F,0x073F,0x075F,0x073F,0x073F,0x073F,0x073F,0x073F,0x073F,0x071F,0x071F,0x071F,0x071F,0x06FF,0x06FE,0x06FF,0x06FF,0x06FE,0x06DE,0x06DE,0x06DE,0x06DE,0x06DE,0x06DF,0x06BE,0x06BE,0x06BE,0x06BE,0x069E,0x06BE,0x069E,0x069E,0x069E,0x067E,0x067E,0x067E,0x065E,0x065E,0x065E,0x065E,0x063E,0x063E,0x063E,0x063E,0x061E,0x061E,0x061E,0x05FE,0x05FF,0x05FE,0x05FE,0x05FF,0x05FE,0x05FE,0x05FE,0x05FE,0x05FF,0x05FF,0x061F,0x0E5F,0x065F,0x0EBF,0x0EDF,0x0F1F,0x073F,0x075F,0x075F,0x075F,0x073F,0x073F,0x075F,0x075F,0x075F,0x075F,0x075F,0x075F,0x077F,0x077F,0x077F,0x077F,0x079F,0x079F,0x079F,0x079F,0x079F,0x0F9F,0x179F,0x1F7E,0x2F5E,0x3F3D,0x56DD,0x6E5C,0x7DBB,0x951A,0xA4B9,0xB479,0xC47A,0xCC7A,0xCC7A,0xC47C,0xAC3E,0x4198,0x2119,0x195B,0x117C,0x097D,0x097D,0x099E,0x099E,0x099E,0x099E,0x097E,0x117D,0x197D,0x293C,0x38D9,0x6979,0x9A5A,0xAA38,0xA1D6,0x99F6,0x9236,0x82B6,0x6357,0x5479,0x4E3E,0x36DF,0x273F,0x175F,0x0F9F,0x0FBF,0x0FBF,0x07BF,0x07BF,0x07DF,0x07DF,0x07BF,0x07BF,0x07DF,0x07DF,0x0FDF,0x179F,0x2F5F,0x46DE,0x7EBF,0x8459,0x69D1,0xA254,0xBA13,0xC1D3,0xC9B3,0xC993,0xC972,0xC972,0xC993,0xC993,0xC993,0xC9B3,0xC1B3,0xC1D3,0xB9D4,0xB1F4,0xBA76,0x8973,0x60D0,0x5951,0x5151,0x4951,0x4171,0x3971,0x41B2,0x3951,0x3951,0x3971,0x3971,0x3131,0x3131,0x3151,0x3150,0x2950,0x2950,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2910,0x2910,0x2930,0x292F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x290F,0x210F,0x2110,0x2110,0x2110,0x2111,0x1911,0x1932,0x1932,0x1933,0x1933,0x1933,0x1933,0x1933,0x1912,0x1912,0x1932,0x1931,0x1911,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x2131,0x1911,0x1911,0x1932,0x1133,0x1995,0x21D6,0x21F7,0x19D7,0x19B6,0x1154,0x1113,0x1911,0x1911,0x2111,0x2110,0x2110,0x2930,0x2930,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2111,0x1911,0x1932,0x1912,0x1133,0x1975,0x1995,0x11B6,0x1196,0x11D7,0x11D7,0x11D7,0x19F7,0x11D7,0x11B6,0x1175,0x1974,0x1932,0x1911,0x1910,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x2110,0x2930,0x2930,0x2930,0x210F,0x2130,0x2130,0x2110,0x2130,0x2930,0x2930,0x2930,0x2910,0x2910,0x290F,0x292F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2110,0x2110,0x2930,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x290F,0x290F,0x292F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x212F,0x292F,0x290F,0x290F,0x2110,0x2110,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x2930,0x290F,0x292F,0x290F,0x290F,0x210F,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x2130,0x210F,0x2130,0x210F,0x2930,0x210F,0x210F,0x2910,0x2930,0x290F,0x210F,0x212F,0x210F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F, + 0x1113,0x1113,0x1112,0x1133,0x1133,0x1132,0x10F1,0x1911,0x1911,0x1911,0x2131,0x2130,0x2130,0x2110,0x210F,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x210F,0x210F,0x1910,0x1931,0x1973,0x1195,0x19F7,0x1A18,0x11B6,0x1154,0x1153,0x1132,0x1932,0x1931,0x1911,0x1911,0x1132,0x1154,0x11B6,0x11F7,0x11F8,0x11D7,0x11D7,0x11D7,0x0996,0x0996,0x11B6,0x11D6,0x1A17,0x19D6,0x19B5,0x1954,0x1932,0x1932,0x1931,0x1911,0x1911,0x1932,0x1133,0x1175,0x19F7,0x2239,0x19D7,0x1996,0x1154,0x1932,0x2132,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x292F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x2130,0x210F,0x2930,0x2930,0x290F,0x210F,0x2910,0x2910,0x2930,0x290F,0x2910,0x2910,0x210F,0x210F,0x2930,0x290F,0x212F,0x212F,0x2930,0x2930,0x212F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2910,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x2130,0x212F,0x212F,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x292F,0x292F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x1930,0x1931,0x1931,0x1131,0x1152,0x1153,0x1995,0x19D6,0x19D6,0x19D6,0x19B6,0x1174,0x1133,0x1113,0x1932,0x1932,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2131,0x2131,0x2130,0x2131,0x2131,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x1932,0x1952,0x1153,0x1154,0x1195,0x19D6,0x19F7,0x21F7,0x1996,0x1133,0x1112,0x1111,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x292F,0x212F,0x212F,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x212F,0x212F,0x292F,0x2930,0x2930,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x3150,0x3150,0x3150,0x3130,0x3150,0x3151,0x3951,0x3971,0x3971,0x3971,0x3971,0x3951,0x3951,0x3930,0x3930,0x390F,0x38EE,0x82B3,0xCC9A,0xD499,0xDC98,0xDC78,0xDC78,0xD458,0xD458,0xD457,0xD457,0xD457,0xD457,0xCC57,0xCC57,0xCC77,0xCC77,0xCC78,0xC498,0xBCBA,0xB4BA,0xACBA,0x9C79,0x8C99,0x84B9,0x851A,0x857B,0x963D,0x863C,0x7E3C,0x765C,0x767C,0x6E7C,0x669C,0x5EBC,0x5EBC,0x56BD,0x56DD,0x4EDD,0x4EFD,0x46FD,0x471D,0x471D,0x3F3D,0x3F3D,0x3F3D,0x373E,0x375E,0x375E,0x2F5E,0x2F5E,0x2F7E,0x2F7E,0x2F7E,0x277E,0x277E,0x277E,0x279F,0x279F,0x279E,0x1F9E,0x1F9E,0x1F9E,0x1FBE,0x1F9E,0x1F9E,0x1F9E,0x1F9E,0x1F9E,0x1F9E,0x1F9E,0x1F9E,0x1F9E,0x1FBE,0x1F9E,0x1F9E,0x1FBF,0x1FBF,0x179F,0x17BF,0x17BF,0x1FBF,0x1FBF,0x1F9F,0x1F9F,0x1F9F,0x1F9F,0x1F9F,0x279F,0x279E,0x277E,0x2F7E,0x377E,0x375D,0x3F3D,0x471C,0x56FC,0x669B,0x7E3B,0x7476,0x83B5,0x9B76,0xAB56,0xBB56,0xC356,0xCB56,0xCB56,0xCB55,0xCB35,0xCB35,0xCB55,0xCB76,0xC376,0xBB77,0xAB36,0x8B36,0x7C18,0x655B,0x565D,0x3EFE,0x2F3E,0x273E,0x1F1E,0x171E,0x0F1F,0x0F3F,0x0F3F,0x071F,0x073F,0x071F,0x073F,0x073F,0x073F,0x071F,0x071F,0x071F,0x071F,0x06FF,0x06FF,0x06FF,0x06FF,0x06FF,0x06DE,0x06DE,0x06DE,0x06DE,0x06BE,0x06DF,0x06BE,0x06BF,0x06BF,0x06BE,0x06BE,0x069E,0x069E,0x069E,0x067E,0x067E,0x067E,0x067E,0x065E,0x065E,0x065E,0x065E,0x063E,0x063E,0x061E,0x061E,0x061E,0x061E,0x05FE,0x05FF,0x05FF,0x05DE,0x05DE,0x05BE,0x05BE,0x059E,0x059E,0x057E,0x057E,0x055E,0x055E,0x053E,0x053E,0x055D,0x057E,0x059E,0x05DE,0x0E7F,0x0EDF,0x0F3F,0x073F,0x073F,0x073F,0x073F,0x073F,0x073F,0x073F,0x073F,0x075F,0x075F,0x075F,0x077F,0x077F,0x077F,0x079F,0x079F,0x079F,0x079F,0x079F,0x079F,0x0F9F,0x179E,0x277E,0x375E,0x4EFD,0x669C,0x75FB,0x8D5A,0xA4F9,0xAC58,0xC459,0xCC79,0xCC7A,0xCC7B,0xBC7D,0x7B1B,0x3158,0x215A,0x117C,0x097C,0x097D,0x097D,0x099E,0x099E,0x099E,0x097E,0x117E,0x197D,0x295C,0x38F9,0x50F7,0x9A5A,0xAA38,0xA1D6,0x99F6,0x9215,0x8296,0x6B37,0x5459,0x4E1E,0x3EDF,0x271F,0x1F5F,0x0F7F,0x0F9F,0x0FBF,0x07BF,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x07DF,0x0FDF,0x179F,0x2F5F,0x3EDE,0x6E7E,0x8D5C,0x61F0,0x9A33,0xB214,0xB9F3,0xC1B3,0xC992,0xC993,0xC993,0xC973,0xC993,0xC9B3,0xC993,0xC193,0xC1D3,0xB9D4,0xB1D4,0xB235,0x91B4,0x60D0,0x5931,0x5151,0x4151,0x4171,0x4172,0x4192,0x3951,0x3951,0x3951,0x3971,0x3151,0x3131,0x3151,0x3150,0x3150,0x3150,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2930,0x290F,0x290F,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2930,0x292F,0x292F,0x2930,0x2130,0x2110,0x2131,0x1911,0x2152,0x1932,0x1912,0x1912,0x1932,0x1932,0x1911,0x1911,0x1931,0x2131,0x2131,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2111,0x1911,0x1911,0x1132,0x1995,0x21F6,0x21F7,0x21F7,0x1995,0x1153,0x1112,0x1911,0x2131,0x2111,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2930,0x2130,0x2110,0x2110,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2111,0x2111,0x1911,0x1912,0x1932,0x1933,0x1133,0x1154,0x1975,0x1995,0x1975,0x1975,0x1154,0x1154,0x1112,0x1112,0x1911,0x1911,0x1910,0x2110,0x2930,0x2130,0x2930,0x2110,0x2130,0x210F,0x2130,0x212F,0x2930,0x210F,0x2910,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x292F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x2930,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2910,0x2110,0x2110,0x290F,0x290F,0x292F,0x290F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x210F,0x212F,0x2930,0x210F,0x2110,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2110,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x292F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F, + 0x1911,0x18F1,0x1911,0x1912,0x1911,0x1911,0x1911,0x1911,0x1911,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x1910,0x1911,0x1953,0x1174,0x19D7,0x1A18,0x19D7,0x1175,0x1133,0x1133,0x1932,0x1931,0x1931,0x1911,0x1132,0x1133,0x1174,0x19D6,0x19D7,0x11D7,0x11D7,0x09B7,0x11B7,0x11D7,0x11D7,0x19D7,0x19F6,0x19D6,0x1994,0x1153,0x1932,0x1931,0x1931,0x1931,0x1932,0x1932,0x1153,0x1195,0x1A18,0x2239,0x19D7,0x1995,0x1133,0x1932,0x1931,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x210F,0x2110,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2110,0x2110,0x2910,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x290F,0x210F,0x2930,0x212F,0x2930,0x210F,0x290F,0x2930,0x2910,0x210F,0x2930,0x210F,0x2910,0x2930,0x210F,0x212F,0x2930,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x210F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x290F,0x210F,0x212F,0x290F,0x210F,0x290F,0x2930,0x2930,0x2930,0x210F,0x2110,0x2930,0x290F,0x292F,0x292F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x292F,0x2930,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x1931,0x1930,0x1111,0x1111,0x1132,0x1174,0x19B5,0x19D6,0x19D6,0x19D6,0x19B6,0x1175,0x1134,0x1133,0x1132,0x1932,0x1931,0x1931,0x2131,0x1911,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2130,0x2131,0x2131,0x2111,0x2131,0x2131,0x2111,0x2131,0x2111,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x1911,0x1911,0x1931,0x1911,0x1932,0x1932,0x1133,0x1174,0x1195,0x19D7,0x19F7,0x19F7,0x1996,0x1154,0x1113,0x1912,0x1931,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x292F,0x212F,0x2130,0x2130,0x212F,0x292F,0x2930,0x2930,0x292F,0x212F,0x2130,0x2930,0x292F,0x292F,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x3150,0x3150,0x3150,0x3150,0x3151,0x3971,0x3971,0x3971,0x3951,0x3951,0x3951,0x3130,0x3130,0x3130,0x390F,0x38EE,0x7A72,0xCC9A,0xD4B9,0xD498,0xDC78,0xD457,0xD478,0xD458,0xD458,0xD457,0xD457,0xCC57,0xCC57,0xCC57,0xCC78,0xC478,0xC498,0xBCB9,0xAC78,0x9C58,0x9499,0x8478,0x84B9,0x8D9C,0x8DDC,0x8E1D,0x861D,0x7E3C,0x763C,0x6E5C,0x6E7C,0x6E9C,0x669C,0x669C,0x5EBC,0x5EBC,0x56BC,0x56DD,0x56DD,0x4EDD,0x4EFD,0x4EFD,0x471D,0x471D,0x471D,0x3F1D,0x3F1D,0x3F3E,0x3F3E,0x3F3E,0x3F3E,0x3F3E,0x373E,0x375E,0x375E,0x2F5E,0x2F5E,0x2F5E,0x2F7E,0x2F9E,0x2F9E,0x2F9E,0x2F9E,0x279E,0x279E,0x279E,0x279E,0x279E,0x279E,0x277E,0x279E,0x279E,0x279E,0x279E,0x279E,0x279E,0x279E,0x279F,0x279F,0x279E,0x279E,0x279F,0x277E,0x277E,0x277E,0x277E,0x277E,0x2F7E,0x2F5E,0x375E,0x375E,0x3F5E,0x3F1D,0x471D,0x56DC,0x66BC,0x767C,0x85DA,0x7C76,0x93B5,0xAB76,0xB336,0xBB36,0xC356,0xCB56,0xCB56,0xCB55,0xCB35,0xCB35,0xCB55,0xCB55,0xCB76,0xC356,0xAB36,0x9B36,0x83F8,0x74FB,0x5DFD,0x4EDE,0x371E,0x2F3F,0x1F1E,0x16FE,0x16FE,0x0F1E,0x0F1F,0x0F1F,0x071E,0x0F1F,0x0F1F,0x0F1F,0x06FF,0x071F,0x071F,0x0EFF,0x06FF,0x06FF,0x06FF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DF,0x06DE,0x06DE,0x06BE,0x06BE,0x06BF,0x06BE,0x06BF,0x06BF,0x069E,0x069E,0x069E,0x067E,0x067E,0x067E,0x067E,0x067E,0x065E,0x065E,0x065E,0x063E,0x063E,0x063E,0x061E,0x061E,0x05FE,0x05FE,0x05FE,0x05DF,0x05DF,0x05DF,0x05BF,0x05BF,0x059F,0x059E,0x057E,0x055E,0x053E,0x051E,0x04FE,0x04DE,0x04DE,0x04BD,0x04BD,0x04DD,0x04FD,0x053D,0x05BE,0x063F,0x0EFF,0x0EFF,0x0F1F,0x071F,0x073F,0x071F,0x071F,0x073F,0x073F,0x073F,0x075F,0x075F,0x075F,0x077F,0x077F,0x077F,0x077F,0x079F,0x079F,0x079F,0x079F,0x0F7F,0x177E,0x1F7E,0x2F5E,0x471E,0x56BD,0x6E3C,0x85BB,0x9D1A,0xAC79,0xBC59,0xCC59,0xCC79,0xCC5A,0xC47C,0xAC1E,0x49B7,0x2959,0x195B,0x115C,0x097D,0x097D,0x099E,0x099E,0x097E,0x097E,0x117E,0x197D,0x215C,0x311A,0x48D7,0x923A,0xAA38,0xA1D6,0xA1F6,0x9215,0x8276,0x6B17,0x5C39,0x55DD,0x3E9F,0x2EFF,0x173F,0x0F5F,0x0F7F,0x079F,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x07DF,0x179F,0x275F,0x3EFE,0x669E,0x95FE,0x6272,0x9274,0xA1F3,0xB9D3,0xC1D3,0xC193,0xC993,0xC993,0xC993,0xC9B3,0xC993,0xC993,0xC193,0xC1D3,0xC1F4,0xB9F4,0xB215,0xA1F4,0x68D0,0x6151,0x5151,0x4951,0x4151,0x4172,0x3972,0x3971,0x3951,0x3951,0x3951,0x3951,0x3131,0x3151,0x3150,0x3150,0x2950,0x2950,0x294F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2110,0x2110,0x2930,0x292F,0x292F,0x2930,0x2130,0x2130,0x2110,0x2110,0x1910,0x2131,0x1911,0x2131,0x1911,0x1911,0x2111,0x2131,0x2130,0x2131,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x1911,0x1912,0x1132,0x19B5,0x21D6,0x21D6,0x21F6,0x21D5,0x1153,0x1132,0x1911,0x2111,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2930,0x210F,0x212F,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2111,0x2131,0x1931,0x1911,0x1932,0x1932,0x1912,0x1933,0x1912,0x1912,0x1912,0x1912,0x1911,0x1911,0x1911,0x2110,0x2110,0x2110,0x2930,0x2930,0x2130,0x2110,0x2110,0x2130,0x210F,0x212F,0x2930,0x290F,0x210F,0x210F,0x2130,0x212F,0x2130,0x2130,0x292F,0x212F,0x210F,0x2930,0x290F,0x210F,0x290F,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2110,0x210F,0x2930,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x2130,0x2130,0x210F,0x2110,0x2930,0x2910,0x210F,0x2930,0x2910,0x2930,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2930,0x212F,0x212F,0x210F,0x292F,0x2930,0x2930,0x2930,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x290F,0x2930,0x210F,0x2110,0x2930,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x292F,0x210F,0x212F,0x292F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F, + 0x2111,0x2131,0x2111,0x2111,0x2131,0x2131,0x2131,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x210F,0x1910,0x1931,0x1152,0x1174,0x19D6,0x19F8,0x19F8,0x11B6,0x1154,0x1113,0x1932,0x1931,0x2152,0x1952,0x1911,0x1112,0x1133,0x1174,0x1195,0x19D7,0x11B7,0x11B6,0x11D7,0x19D7,0x11B6,0x19B6,0x19D6,0x1994,0x1153,0x1932,0x1931,0x1911,0x1911,0x1931,0x1932,0x1133,0x1154,0x1195,0x1A17,0x2218,0x19D7,0x1175,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x2950,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x212F,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x2910,0x290F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2930,0x2930,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x214F,0x212F,0x212F,0x212F,0x2130,0x2930,0x290F,0x292F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2151,0x2151,0x1931,0x1110,0x1111,0x1132,0x1153,0x1995,0x19B6,0x19D7,0x19D7,0x19B6,0x1175,0x0933,0x0913,0x1132,0x1112,0x10F1,0x10F1,0x1911,0x10F1,0x1911,0x1911,0x10F1,0x10F1,0x10F1,0x10F1,0x1911,0x1911,0x1911,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x18F1,0x18F1,0x1911,0x1911,0x1912,0x1912,0x1912,0x1932,0x1912,0x1911,0x1912,0x1912,0x10F1,0x1111,0x1912,0x1112,0x1112,0x1133,0x1154,0x1195,0x19D7,0x19F7,0x21F7,0x1996,0x1154,0x1113,0x1932,0x1931,0x2131,0x2130,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x3150,0x3150,0x3150,0x3150,0x3151,0x3151,0x3951,0x3951,0x3951,0x3950,0x3951,0x3950,0x3950,0x392F,0x40EE,0x82B4,0xCC9A,0xD499,0xD498,0xD478,0xD478,0xD478,0xD458,0xD457,0xD457,0xD457,0xD477,0xCC57,0xCC57,0xC477,0xC498,0xBCB9,0xB4DA,0x9C58,0x8C58,0x84B9,0x84FA,0x95FC,0x963D,0x861C,0x7E3C,0x7E3C,0x765C,0x765C,0x6E7C,0x6E7C,0x6E7C,0x669D,0x669D,0x669D,0x669D,0x66BD,0x5EBD,0x5EBD,0x5EBD,0x5EDD,0x56DD,0x56DD,0x56DD,0x4EDD,0x4EFD,0x4EDD,0x4EDD,0x4EDD,0x4EDD,0x46BD,0x46DD,0x46DD,0x46FD,0x3EFD,0x3F1E,0x3F1E,0x3F1E,0x371E,0x373E,0x373D,0x373D,0x373D,0x373D,0x375E,0x377E,0x377E,0x377E,0x377E,0x2F7E,0x377E,0x2F5E,0x377E,0x377E,0x2F5E,0x2F5E,0x2F5E,0x2F5E,0x2F5E,0x2F5E,0x2F5E,0x2F5E,0x2F5E,0x2F5E,0x2F5E,0x2F5E,0x375E,0x375E,0x375E,0x3F3D,0x471D,0x46FD,0x4EDC,0x569C,0x669C,0x765C,0x7D79,0x7C76,0x8BD5,0x9B96,0xAB56,0xBB56,0xC336,0xC336,0xCB56,0xCB56,0xD355,0xD335,0xD335,0xCB35,0xCB55,0xCB55,0xC356,0xBB57,0xA336,0x8BB7,0x7CBA,0x6DDC,0x569E,0x46FE,0x371E,0x26FE,0x16BD,0x16DE,0x16FE,0x0EFE,0x0F1E,0x0F1F,0x0F1F,0x0EFF,0x0EFF,0x0EFF,0x0EFF,0x0EFF,0x0EFF,0x0EFF,0x0EDF,0x0EDF,0x06DE,0x06DF,0x06DF,0x06DF,0x06BF,0x06BF,0x06BE,0x06BE,0x06BE,0x06BE,0x069E,0x069E,0x069E,0x069E,0x069F,0x069E,0x067E,0x067E,0x065E,0x065E,0x065E,0x065E,0x065E,0x065E,0x063E,0x063E,0x063E,0x061E,0x061E,0x061E,0x05FF,0x05DE,0x05BE,0x05BE,0x05BF,0x059F,0x059E,0x059F,0x059F,0x057F,0x055F,0x055F,0x053F,0x04FF,0x04DE,0x04BE,0x047D,0x045D,0x047D,0x047D,0x047D,0x04BD,0x04FD,0x055D,0x05FF,0x0E9F,0x0EDF,0x06FF,0x06FF,0x06FE,0x071F,0x071F,0x071F,0x073F,0x073F,0x073F,0x075F,0x075F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x0F7F,0x1F7E,0x2F7E,0x3F3E,0x4EDD,0x667C,0x7DFB,0x953A,0xA479,0xB458,0xC459,0xCC59,0xCC59,0xCC7B,0xC47D,0x935C,0x3138,0x215B,0x195C,0x117D,0x119D,0x099E,0x097E,0x017E,0x099E,0x119E,0x117D,0x213C,0x311B,0x40D8,0x81D9,0xA259,0xA1F7,0xA1F6,0x9A15,0x8255,0x72D6,0x63F9,0x559D,0x3E5E,0x2EBF,0x1F1F,0x0F1F,0x073F,0x077F,0x079F,0x079F,0x07BF,0x079F,0x07BF,0x07BF,0x07BF,0x07DF,0x07DF,0x17BF,0x277F,0x36FE,0x567E,0x965F,0x7395,0x8A94,0xA234,0xB213,0xC1D3,0xC192,0xC993,0xC993,0xC993,0xD1D4,0xC9B3,0xC192,0xC192,0xC1B3,0xC1D3,0xC1F4,0xB214,0xAA15,0x68D0,0x6151,0x5172,0x4951,0x4152,0x4172,0x4192,0x3972,0x3951,0x3951,0x3972,0x3951,0x3151,0x3151,0x3150,0x3150,0x3150,0x2950,0x294F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2110,0x2930,0x2110,0x2110,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x2110,0x2930,0x2110,0x210F,0x212F,0x292F,0x290F,0x212F,0x2930,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x210F,0x290F,0x210F,0x2930,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x2930,0x2130,0x2131,0x1911,0x1912,0x1132,0x1994,0x21D6,0x21F6,0x2216,0x19B5,0x1153,0x1112,0x1911,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x2110,0x2110,0x2130,0x2110,0x2131,0x1931,0x1911,0x1911,0x1911,0x1931,0x1912,0x1911,0x1932,0x1932,0x2131,0x1911,0x2131,0x2110,0x2110,0x2110,0x2951,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2110,0x2930,0x2910,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x2930,0x2930,0x212F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F, + 0x2131,0x2110,0x2111,0x2111,0x2131,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x2950,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x1910,0x1931,0x1953,0x1174,0x1195,0x19F7,0x19F8,0x19D7,0x1195,0x1133,0x1132,0x1932,0x1931,0x1952,0x1931,0x1931,0x1112,0x1133,0x1153,0x1195,0x1175,0x19B6,0x11B6,0x11B6,0x19B5,0x1195,0x1174,0x1153,0x1132,0x1932,0x1931,0x1931,0x1931,0x1931,0x1132,0x1133,0x1174,0x19B6,0x2218,0x2218,0x19B6,0x1154,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x2950,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2910,0x210F,0x2910,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x290F,0x210F,0x2930,0x290F,0x210F,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x2130,0x210F,0x210F,0x212F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x292F,0x292F,0x210F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x292F,0x292F,0x212F,0x212F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2150,0x2130,0x2130,0x1910,0x1931,0x1112,0x1153,0x1154,0x1195,0x19B6,0x19D7,0x19D7,0x11B6,0x1175,0x0954,0x0934,0x0913,0x0913,0x1113,0x1113,0x1113,0x1112,0x1112,0x1112,0x0912,0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1133,0x1133,0x1112,0x1133,0x1113,0x1113,0x1113,0x1133,0x1133,0x1133,0x1153,0x1174,0x1195,0x11B6,0x19F7,0x19F7,0x21F7,0x1996,0x1154,0x1133,0x1932,0x1931,0x1911,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x292F,0x2930,0x292F,0x292F,0x292F,0x212F,0x2950,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x2130,0x2150,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2130,0x2930,0x2930,0x2930,0x292F,0x212F,0x212F,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x3150,0x3150,0x3150,0x3150,0x3151,0x3950,0x3150,0x3150,0x3150,0x3950,0x3950,0x3930,0x392F,0x410E,0x7252,0xCC9A,0xD4B9,0xD498,0xDC98,0xD478,0xD478,0xD478,0xD457,0xCC57,0xCC78,0xCC77,0xCC78,0xC477,0xC478,0xC4B9,0xB498,0x9437,0x8C37,0x8498,0x8D7B,0x8DDC,0x8E1D,0x861C,0x7E3C,0x765C,0x765C,0x6E5C,0x6E5C,0x6E7C,0x6E7D,0x6E9D,0x6E7D,0x6E7D,0x6E7D,0x6E7D,0x6E7D,0x6E7D,0x6E7D,0x6E7D,0x6E5D,0x6E7D,0x6E7D,0x6E7D,0x667D,0x6E9D,0x669D,0x669D,0x667D,0x665C,0x5E5C,0x5E5D,0x5E5C,0x5E7D,0x569D,0x56BD,0x56BD,0x4EBD,0x4EDD,0x4EDD,0x46DD,0x46FD,0x3EFD,0x46FD,0x3EFD,0x3EFD,0x3F1D,0x3F1D,0x3F3D,0x3F3D,0x3F3D,0x3F1D,0x3F1D,0x3F3D,0x3F3D,0x3F1D,0x3EFD,0x3EFD,0x3F1D,0x3F1E,0x3F1E,0x3F3E,0x3F1E,0x3F1E,0x3F1E,0x3F1E,0x3F1E,0x471E,0x471D,0x4EFD,0x56DD,0x5E9C,0x5E5B,0x6E3B,0x6DFA,0x85DB,0x84F8,0x83F5,0x9B95,0xAB55,0xBB56,0xBB36,0xC336,0xCB36,0xCB56,0xCB56,0xD355,0xD335,0xD315,0xD335,0xD376,0xCB56,0xC356,0xBB36,0xAB56,0x9B97,0x8C59,0x755B,0x663D,0x4EBE,0x3EDE,0x36FF,0x1E9D,0x1EBE,0x1EDE,0x16FE,0x16FE,0x16FE,0x16FF,0x16FF,0x16FF,0x16DE,0x16DF,0x16DF,0x16DF,0x16DF,0x0EDF,0x0EDF,0x0EBF,0x0EBF,0x0EBE,0x0EBF,0x0EBF,0x06BF,0x06BF,0x0EBF,0x069E,0x069E,0x069E,0x069E,0x069E,0x069E,0x067E,0x067E,0x067E,0x065E,0x065E,0x065E,0x065E,0x063E,0x063E,0x063E,0x063E,0x061E,0x061E,0x061E,0x061E,0x05FE,0x05FE,0x05DE,0x05BE,0x05BF,0x059F,0x059F,0x059F,0x057F,0x057F,0x057F,0x055F,0x053F,0x051F,0x04DF,0x04BE,0x047E,0x045E,0x045E,0x043D,0x041D,0x043D,0x043D,0x045D,0x047D,0x049D,0x053D,0x0DFF,0x0E9F,0x0EDF,0x0EFF,0x06FE,0x06FF,0x06FF,0x06FE,0x071F,0x071E,0x073F,0x073F,0x075F,0x075F,0x075F,0x077F,0x077F,0x077F,0x077F,0x077F,0x077F,0x0F7F,0x177F,0x277E,0x373E,0x4EFD,0x5E7C,0x761C,0x8D7B,0x9C99,0xAC38,0xC458,0xCC59,0xCC59,0xCC5A,0xCC7B,0xC49F,0x4998,0x2939,0x195B,0x117D,0x117D,0x097D,0x097E,0x099E,0x099E,0x119E,0x117D,0x195C,0x293B,0x38F8,0x7198,0x9A39,0xA1F7,0xA1F6,0x99F5,0x8A35,0x72B6,0x63B8,0x555C,0x3DFE,0x2E9F,0x1EDF,0x0EDF,0x06FF,0x077F,0x077F,0x079F,0x079F,0x079F,0x079F,0x07BF,0x07DF,0x07DF,0x07DF,0x0F9F,0x277F,0x371F,0x56BE,0x865F,0x7C79,0x7273,0x9A53,0xB213,0xB9D3,0xC193,0xC9B3,0xC993,0xC993,0xD1B3,0xC9B3,0xC172,0xC193,0xC1B3,0xC1D4,0xB9D4,0xB1F4,0xAA35,0x68D0,0x6131,0x5172,0x4972,0x4151,0x4172,0x4192,0x3972,0x3972,0x3951,0x3972,0x3951,0x3151,0x3151,0x3150,0x3150,0x2950,0x2950,0x294F,0x2950,0x2950,0x2930,0x2950,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x292F,0x210F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x2930,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x2130,0x2130,0x2131,0x1911,0x1112,0x1153,0x19B5,0x19D6,0x2216,0x2216,0x19B4,0x1973,0x1112,0x1931,0x2131,0x2111,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x2930,0x2130,0x2930,0x2130,0x2130,0x2130,0x2131,0x2111,0x2110,0x1910,0x2111,0x1911,0x1911,0x2131,0x2131,0x1910,0x2151,0x2131,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2930,0x2910,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x210F,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x2910,0x2910,0x2930,0x210F,0x2930,0x290F,0x290F,0x2910,0x290F,0x210F,0x290F,0x292F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x290F,0x290F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x212F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F, + 0x2130,0x2110,0x2131,0x2110,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x210F,0x2930,0x212F,0x212F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x1911,0x1952,0x1153,0x1174,0x11B6,0x19F7,0x19F7,0x19D7,0x1174,0x0912,0x1132,0x1111,0x1911,0x1931,0x1931,0x1932,0x1112,0x1112,0x1133,0x1953,0x1954,0x1974,0x1154,0x1133,0x1133,0x1152,0x1952,0x1932,0x1952,0x1931,0x1931,0x1111,0x1111,0x1133,0x1174,0x1195,0x2217,0x2218,0x2217,0x1195,0x1133,0x1132,0x1931,0x2131,0x2151,0x2130,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2930,0x2110,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2930,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x290F,0x2930,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x212F,0x2930,0x2930,0x2910,0x290F,0x290F,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x290F,0x2930,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x212F,0x210F,0x212F,0x210F,0x212F,0x292F,0x2930,0x2930,0x210F,0x290F,0x210F,0x292F,0x292F,0x292F,0x292F,0x2950,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2930,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x210F,0x212F,0x212F,0x2930,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x1931,0x1132,0x1133,0x1154,0x1175,0x11B6,0x19F7,0x19D7,0x11D7,0x11B7,0x19D7,0x19B7,0x19B7,0x19B7,0x19B7,0x19B6,0x19D6,0x19D6,0x19B6,0x19D6,0x19D6,0x19D6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B5,0x19D6,0x19B6,0x19D6,0x19B6,0x19D6,0x19B6,0x19B6,0x19B6,0x19B6,0x1996,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19D6,0x19D6,0x19F7,0x19D6,0x19F7,0x19F7,0x19F7,0x19F7,0x1A17,0x2238,0x19D6,0x1195,0x1153,0x1133,0x1932,0x1931,0x2131,0x2131,0x2110,0x210F,0x210F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x294F,0x292F,0x2930,0x2930,0x292F,0x2930,0x2950,0x212F,0x212F,0x2950,0x2950,0x2930,0x2950,0x2950,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x292F,0x292F,0x292F,0x2930,0x292F,0x292F,0x292F,0x292F,0x2930,0x292F,0x292F,0x292F,0x292F,0x212F,0x2950,0x212F,0x292F,0x292F,0x212F,0x2130,0x2930,0x212F,0x292F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x212F,0x292F,0x2930,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2950,0x2950,0x3150,0x3150,0x3130,0x3150,0x3951,0x3951,0x3950,0x3130,0x3930,0x3930,0x3930,0x390F,0x38EE,0x82B3,0xCCBA,0xD499,0xD499,0xD498,0xD478,0xD478,0xD457,0xD477,0xCC78,0xCC78,0xCC78,0xC478,0xC498,0xC4B9,0xBCDA,0xA458,0x8C17,0x8498,0x957B,0x9E3E,0x861C,0x7E1C,0x7E3D,0x765C,0x6E5C,0x6E7D,0x6E7D,0x6E7D,0x6E7D,0x667D,0x6E7D,0x6E7D,0x6E5D,0x763D,0x75FC,0x75DC,0x75BC,0x759B,0x759B,0x759B,0x757B,0x757B,0x757B,0x755A,0x755A,0x755A,0x755A,0x755A,0x755A,0x757A,0x757A,0x759B,0x6DBB,0x75FC,0x6E1C,0x6E3C,0x6E3C,0x665D,0x665C,0x5E7D,0x5E9D,0x56BD,0x56DD,0x56DD,0x56DD,0x56DD,0x56DD,0x56FD,0x4EFD,0x571D,0x571D,0x56FD,0x56FD,0x56FD,0x56FD,0x571D,0x56FD,0x56FD,0x4EFD,0x571E,0x4EFD,0x56FD,0x56FD,0x56FD,0x56DD,0x56DD,0x56BD,0x5EBD,0x669D,0x665C,0x6DFB,0x6D9A,0x7D39,0x7CB8,0x8477,0x83B5,0x9395,0xA396,0xB376,0xBB56,0xC356,0xC336,0xCB56,0xCB56,0xD356,0xD355,0xD335,0xD335,0xD335,0xD355,0xD376,0xCB56,0xC336,0xB315,0xA376,0x9418,0x8CFA,0x75DC,0x5E5D,0x4E9E,0x46BE,0x2E5D,0x267E,0x1EBE,0x1EDE,0x1EFE,0x16FE,0x16FE,0x16DE,0x16DE,0x16DF,0x16BE,0x1EDF,0x16BE,0x1EBF,0x1EBF,0x1EBF,0x16BE,0x169E,0x169E,0x0E9F,0x0E9F,0x0E9F,0x0E9F,0x0E9E,0x069E,0x069E,0x069E,0x067E,0x067E,0x067E,0x067E,0x067E,0x067E,0x065E,0x065E,0x065E,0x063E,0x063E,0x063E,0x061E,0x061E,0x061E,0x061E,0x061E,0x05FE,0x05DE,0x05DE,0x05BE,0x05BE,0x059E,0x059F,0x057F,0x057F,0x057F,0x055F,0x053F,0x051F,0x04FF,0x04DF,0x049E,0x047E,0x045E,0x045E,0x043E,0x043E,0x041D,0x041D,0x041D,0x041D,0x041D,0x041D,0x043D,0x047D,0x04DC,0x0DDF,0x167F,0x0EDF,0x0EDF,0x0EDF,0x06DE,0x06DE,0x06FE,0x071E,0x071E,0x073F,0x073F,0x073F,0x075F,0x075F,0x075F,0x077F,0x077F,0x077F,0x0F7F,0x0F7F,0x177F,0x277E,0x373E,0x46FE,0x56BD,0x6E3C,0x85BB,0x94B8,0xA438,0xBC58,0xC438,0xCC38,0xCC39,0xCC3A,0xC47D,0x937D,0x3137,0x215A,0x195C,0x117D,0x097D,0x099E,0x099E,0x099E,0x099E,0x117D,0x195C,0x293B,0x3919,0x6978,0x9A5A,0xA1F7,0xA1F7,0x99F6,0x8A15,0x7A96,0x6378,0x54DB,0x3DBE,0x2E3F,0x1EBF,0x0EBF,0x06DF,0x073F,0x075F,0x077F,0x077F,0x077F,0x079F,0x07BF,0x07BF,0x07DF,0x07BF,0x0F9F,0x1F5F,0x2F1F,0x4EBE,0x767E,0x853B,0x5A31,0x8A12,0xAA13,0xB9F3,0xC1D3,0xC9B3,0xC993,0xC973,0xD1B3,0xC993,0xC993,0xC993,0xC193,0xC1D4,0xB9B3,0xB1F4,0xB276,0x7911,0x5911,0x5151,0x4951,0x4172,0x4172,0x4192,0x3972,0x3972,0x3131,0x3951,0x3951,0x3951,0x3151,0x3150,0x2930,0x2930,0x2950,0x2950,0x2971,0x2951,0x2951,0x2930,0x2931,0x2930,0x2930,0x2130,0x2931,0x2130,0x2931,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2930,0x210F,0x210F,0x2930,0x2930,0x2110,0x2930,0x2110,0x2130,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x210F,0x212F,0x210F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x292F,0x290F,0x290F,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2151,0x1931,0x1911,0x1111,0x1153,0x1194,0x19F6,0x2237,0x1A16,0x19B5,0x1153,0x1112,0x1931,0x2131,0x2131,0x2130,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x20EF,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2930,0x2930,0x290F,0x2930,0x210F,0x210F,0x290F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x290F,0x290F,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x210F,0x2110,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x2110,0x2910,0x2910,0x210F,0x2110,0x2110,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2930,0x2930,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x2130,0x210F,0x2130,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x210F, + 0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x2130,0x2930,0x210F,0x292F,0x210F,0x290F,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2130,0x2110,0x2110,0x2111,0x1911,0x1932,0x1953,0x1154,0x1195,0x19F7,0x19F7,0x19F7,0x19D6,0x1154,0x1132,0x1112,0x1111,0x1931,0x2152,0x2172,0x1932,0x1932,0x1911,0x1112,0x1932,0x1132,0x1112,0x1132,0x1932,0x1932,0x1952,0x1952,0x1932,0x1932,0x1111,0x1112,0x1132,0x1153,0x1195,0x19D6,0x2217,0x2238,0x19D6,0x1154,0x1153,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x294F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2930,0x210F,0x290F,0x290F,0x2930,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x2130,0x212F,0x212F,0x210F,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x212F,0x2930,0x290F,0x210F,0x290F,0x2930,0x212F,0x212F,0x2910,0x210F,0x2930,0x2930,0x212F,0x212F,0x2930,0x290F,0x210F,0x290F,0x292F,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x294F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x292F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2130,0x2130,0x2130,0x2110,0x2131,0x1931,0x1931,0x1932,0x1133,0x1154,0x1175,0x19B6,0x19F7,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x19F8,0x1A18,0x1A18,0x19F8,0x19F7,0x19F7,0x19F7,0x2218,0x19F7,0x2218,0x1A18,0x2218,0x19F8,0x1A18,0x19F8,0x2218,0x2218,0x2218,0x2218,0x1A18,0x19F8,0x19F8,0x19F8,0x19F7,0x19F7,0x19F8,0x19F7,0x1A18,0x19F7,0x19F8,0x19F7,0x19F7,0x19F7,0x1A18,0x19F7,0x1195,0x1154,0x1132,0x1112,0x1911,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x292F,0x2930,0x2930,0x2130,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2950,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x212F,0x2130,0x2930,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3150,0x3150,0x3150,0x3151,0x3150,0x3150,0x3150,0x3130,0x3130,0x3930,0x390F,0x40EE,0x7A93,0xCCBA,0xD4B9,0xD499,0xD478,0xD478,0xD478,0xD478,0xCC77,0xCC78,0xCC78,0xC478,0xC478,0xBCB9,0xB4B9,0x9C37,0x9457,0x7C17,0x9D7B,0x95DC,0x8E1C,0x861C,0x7E3C,0x763C,0x6E5C,0x6E7D,0x6E5D,0x6E7D,0x667D,0x669D,0x669D,0x6E5D,0x6E5D,0x765E,0x761D,0x75BC,0x755B,0x753B,0x7D1B,0x7D1A,0x851A,0x851A,0x84FA,0x84DA,0x8CDA,0x8CD9,0x8CD9,0x8CD9,0x8CD9,0x8CB8,0x8CD8,0x8CD8,0x8CD9,0x8CF9,0x8519,0x853A,0x855A,0x857B,0x7D7B,0x7D9B,0x759B,0x7DDB,0x7E1C,0x7E5D,0x7E7D,0x7E7D,0x765D,0x763C,0x765C,0x767D,0x769D,0x767D,0x767D,0x767D,0x767D,0x767D,0x767D,0x769D,0x767D,0x767D,0x767D,0x767D,0x767D,0x767D,0x765D,0x765D,0x763C,0x763D,0x75FC,0x75DB,0x757A,0x7519,0x7CB8,0x8477,0x8C16,0x93D6,0x9B95,0xA355,0xB356,0xBB56,0xC376,0xC356,0xCB56,0xCB56,0xCB56,0xD356,0xD335,0xD335,0xD335,0xD335,0xD355,0xD356,0xCB56,0xC335,0xBB15,0xAB15,0xA3B7,0x9479,0x855B,0x75FC,0x665D,0x567E,0x3E1C,0x363D,0x367E,0x26BE,0x26BE,0x1EDE,0x1EDF,0x1EDE,0x1EBE,0x1EBE,0x1E9E,0x1E9E,0x1EBE,0x1E9E,0x1E9E,0x269E,0x269E,0x1E9E,0x1E7E,0x1E7E,0x167E,0x167E,0x167F,0x0E7F,0x0E7E,0x0E7E,0x0E7E,0x0E9F,0x067E,0x065E,0x067E,0x065E,0x065E,0x065E,0x063E,0x063E,0x063E,0x063E,0x063E,0x061E,0x061E,0x05FE,0x05FE,0x05FE,0x05FE,0x05DE,0x05BE,0x05BE,0x059E,0x059E,0x057F,0x0D7F,0x0D7F,0x0D5F,0x055F,0x053F,0x04FE,0x04DE,0x049E,0x047E,0x045E,0x045E,0x043E,0x043E,0x041E,0x041E,0x041D,0x03FD,0x03FD,0x03DD,0x03DD,0x03DD,0x03DC,0x041C,0x043C,0x051D,0x15FF,0x169F,0x16BF,0x0EBF,0x0EBE,0x0EBE,0x06DE,0x06FE,0x06FE,0x071F,0x071F,0x073F,0x073F,0x073F,0x075F,0x075F,0x0F7F,0x0F7F,0x0F7F,0x177F,0x175E,0x275E,0x2F3E,0x3F1E,0x4EBD,0x665C,0x7DDB,0x8CF9,0xA478,0xB458,0xC438,0xCC38,0xCC18,0xCC39,0xCC5B,0xBC5E,0x4976,0x2959,0x195C,0x115C,0x097D,0x099E,0x099E,0x099E,0x097E,0x117D,0x115C,0x215C,0x393A,0x6158,0x923A,0xA218,0xA1F7,0x99D6,0x9216,0x7A76,0x6B38,0x547B,0x3D5D,0x2DFE,0x1E5F,0x0E7F,0x069F,0x06FF,0x073F,0x077F,0x077F,0x079F,0x079F,0x079F,0x07BF,0x07BF,0x07BF,0x0F9F,0x1F5F,0x375F,0x46DE,0x667E,0x8DFE,0x5A92,0x8253,0xA233,0xB9F3,0xC1B3,0xC993,0xC993,0xC973,0xC973,0xC993,0xC993,0xC192,0xC193,0xC1D3,0xC1D4,0xB9F4,0xB235,0x7931,0x58F0,0x5972,0x4951,0x4172,0x4172,0x4172,0x3972,0x3972,0x3951,0x3951,0x3951,0x3951,0x3151,0x3151,0x2930,0x2930,0x2950,0x2971,0x2951,0x2951,0x2951,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2930,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2930,0x212F,0x2110,0x2930,0x2910,0x2930,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2150,0x2131,0x1931,0x1111,0x1132,0x1153,0x1194,0x19F6,0x1A17,0x1A17,0x19B5,0x1153,0x1112,0x1932,0x2131,0x2111,0x2110,0x2130,0x2931,0x2110,0x2110,0x2130,0x2110,0x2130,0x2930,0x210F,0x2130,0x210F,0x212F,0x212F,0x292F,0x210F,0x2130,0x2130,0x2930,0x20EF,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x2930,0x210F,0x2910,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2110,0x2910,0x2910,0x2930,0x2130,0x2930,0x2110,0x210F,0x2930,0x2110,0x2930,0x2930,0x2910,0x2930,0x2910,0x210F,0x2910,0x2930,0x210F,0x210F,0x210F,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2110,0x2910,0x2910,0x2910,0x2930,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F, + 0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x2930,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x292F,0x2930,0x2930,0x2110,0x2130,0x2130,0x2110,0x2111,0x1931,0x1932,0x1133,0x1174,0x19D6,0x19F7,0x19F7,0x19F7,0x11B5,0x0953,0x1133,0x1112,0x1932,0x1932,0x2152,0x2152,0x1931,0x1931,0x1911,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1952,0x1952,0x1932,0x1132,0x1112,0x1132,0x1153,0x1195,0x19D6,0x2217,0x2238,0x19D6,0x1174,0x1153,0x1932,0x1931,0x1931,0x2131,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x292F,0x290F,0x2910,0x2910,0x2910,0x2930,0x2910,0x2110,0x2910,0x2910,0x292F,0x210F,0x2930,0x212F,0x2930,0x2930,0x212F,0x212F,0x2930,0x210F,0x2130,0x2130,0x210F,0x290F,0x2930,0x210F,0x2930,0x2930,0x210F,0x290F,0x2110,0x2930,0x290F,0x290F,0x2910,0x210F,0x212F,0x212F,0x2930,0x290F,0x210F,0x212F,0x2930,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x292F,0x212F,0x292F,0x2930,0x292F,0x290F,0x290F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1153,0x1974,0x1995,0x19B6,0x19D7,0x19D7,0x19D7,0x19D8,0x19D7,0x19D7,0x19D7,0x19F8,0x19D7,0x19F7,0x19F7,0x19D7,0x11D7,0x19F8,0x19F7,0x19F7,0x19F7,0x19F7,0x19D7,0x19D7,0x19F7,0x19D7,0x19D7,0x19D7,0x19D7,0x19F7,0x19D7,0x19F7,0x19F7,0x19F7,0x19F8,0x19F8,0x19D7,0x19F7,0x19F8,0x19F8,0x19F7,0x19F7,0x19F8,0x19F8,0x19D7,0x19D7,0x19D7,0x19F7,0x19F7,0x19D7,0x19F7,0x19F7,0x19B6,0x1154,0x1154,0x1132,0x1111,0x1911,0x1911,0x2131,0x2130,0x2130,0x2130,0x2110,0x2930,0x212F,0x2930,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2930,0x292F,0x292F,0x2930,0x292F,0x2930,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3150,0x3150,0x3150,0x3150,0x3150,0x3150,0x3150,0x3130,0x3130,0x310F,0x390F,0x38CD,0x7A93,0xCCBA,0xD499,0xD499,0xD478,0xD478,0xD478,0xD478,0xCC78,0xCC77,0xCC78,0xC498,0xC4B9,0xB4BA,0xA479,0x83F7,0x8C78,0x951A,0xA63E,0x8DFC,0x861C,0x7E3C,0x765C,0x765D,0x6E5D,0x6E7D,0x6E7D,0x6E7D,0x669D,0x669D,0x669E,0x6E7E,0x765E,0x7E3E,0x757C,0x74FA,0x74DA,0x84FA,0x84DA,0x8CBA,0x8CBA,0x94B9,0x94B9,0x9499,0x9C99,0x9C99,0x9C99,0x9CB9,0xA499,0xA498,0xA478,0xA478,0x9C57,0x9C57,0x9C37,0x9C37,0x9437,0x9437,0x9417,0x8C17,0x8C17,0x8C17,0x8417,0x8417,0x7BF6,0x7C17,0x73F6,0x7416,0x73F6,0x7416,0x73F6,0x7416,0x7416,0x7437,0x7416,0x7417,0x7437,0x7437,0x73F6,0x73F6,0x73F6,0x73F6,0x73F6,0x73F6,0x73F6,0x73F6,0x73D6,0x7BD6,0x7BB6,0x7BB6,0x7BB6,0x83B6,0x8B96,0x9396,0x9B96,0xA396,0xAB76,0xB376,0xBB76,0xC376,0xC376,0xCB56,0xCB56,0xCB56,0xD356,0xD336,0xD336,0xD335,0xD336,0xD336,0xD336,0xD356,0xD356,0xC335,0xBB15,0xB315,0xA356,0x9BD7,0x8CB9,0x855B,0x75DC,0x6E3D,0x5DDC,0x45BC,0x461E,0x3E7E,0x2E9E,0x2EBE,0x26BE,0x269E,0x269E,0x267E,0x267E,0x267E,0x2EBE,0x2EBE,0x2E9E,0x2E9E,0x2E7E,0x2E7E,0x2E5E,0x2E5E,0x265E,0x267E,0x1E7E,0x167E,0x167E,0x0E7E,0x0E7E,0x0E5E,0x0E7E,0x0E7E,0x0E5E,0x065E,0x065E,0x065E,0x063E,0x063E,0x063E,0x061E,0x061E,0x061E,0x061E,0x05FE,0x0DFE,0x05DE,0x0DDE,0x0DBE,0x0DBE,0x0DBE,0x0D9E,0x0D7E,0x0D7E,0x0D7F,0x0D5F,0x0D5F,0x0D3F,0x0CFE,0x0CDE,0x04BE,0x049E,0x045E,0x045E,0x043E,0x043E,0x041E,0x041E,0x03FE,0x03FE,0x03FD,0x03FD,0x03FD,0x0BFD,0x03DD,0x03DD,0x03BC,0x03DC,0x03FC,0x047D,0x04FD,0x15DF,0x163F,0x169F,0x16BF,0x0EBE,0x0E9E,0x0EBE,0x0EDF,0x0EFF,0x0EFF,0x0F1F,0x0F1E,0x0F3F,0x0F3F,0x0F3F,0x0F5F,0x0F5F,0x0F5F,0x175E,0x1F5E,0x275E,0x2F3E,0x3F1E,0x4EBD,0x5E5C,0x75FC,0x8D5A,0x9CB8,0xAC38,0xC418,0xCC18,0xCC18,0xCC18,0xCC3A,0xCC7D,0x933C,0x28F7,0x193B,0x115C,0x117D,0x097D,0x099E,0x099E,0x097D,0x117D,0x197D,0x215C,0x313A,0x5958,0x89F9,0xA218,0xAA17,0x99F6,0x9216,0x8256,0x6AF8,0x53FA,0x3CDC,0x2D9E,0x1E1F,0x0E1E,0x065F,0x06DF,0x071F,0x075F,0x077F,0x079F,0x079F,0x079F,0x07BF,0x07DF,0x07DF,0x0F9F,0x1F7F,0x2F5F,0x3EFF,0x5E7E,0x863E,0x6334,0x7232,0xA254,0xB1F3,0xC1D3,0xC193,0xC172,0xC993,0xC993,0xD193,0xC992,0xC993,0xC193,0xC1D4,0xC1D4,0xB9F4,0xB255,0x8151,0x58D0,0x5972,0x4951,0x4172,0x4151,0x4172,0x3972,0x3972,0x3951,0x3951,0x3951,0x3951,0x3971,0x3151,0x3151,0x2950,0x2951,0x2951,0x2951,0x2131,0x2131,0x1931,0x1932,0x1932,0x1932,0x1931,0x1932,0x1932,0x2152,0x1931,0x2131,0x2131,0x2110,0x2130,0x2130,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x212F,0x212F,0x210F,0x2110,0x2910,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2150,0x2151,0x2151,0x1931,0x1111,0x1132,0x1153,0x1194,0x19F6,0x19F7,0x19F6,0x19D5,0x1133,0x1112,0x1912,0x2131,0x2111,0x2131,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x20EF,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x2910,0x210F,0x292F,0x292F,0x290F,0x2930,0x2930,0x290F,0x2930,0x290F,0x210F,0x2930,0x2930,0x2110,0x290F,0x210F,0x2930,0x2930,0x2930,0x2910,0x2110,0x210F,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x210F,0x2110,0x210F,0x2130,0x2130,0x210F,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F, + 0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x1931,0x1911,0x1932,0x1153,0x1175,0x19F7,0x11F7,0x1A17,0x19D7,0x1195,0x1154,0x1133,0x1132,0x1132,0x1952,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1132,0x1132,0x1132,0x1133,0x1154,0x1175,0x11B6,0x19F7,0x2238,0x2217,0x1995,0x1133,0x1132,0x1932,0x1931,0x1930,0x2150,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x2930,0x210F,0x290F,0x2110,0x2130,0x2130,0x2930,0x290F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2110,0x290F,0x2930,0x2930,0x2910,0x210F,0x2930,0x290F,0x290F,0x210F,0x210F,0x2110,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2110,0x210F,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x2930,0x210F,0x210F,0x2130,0x212F,0x2930,0x2130,0x210F,0x2930,0x2110,0x2930,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2910,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2930,0x2110,0x2110,0x2130,0x2110,0x2130,0x2131,0x1911,0x1931,0x1932,0x1152,0x1153,0x1174,0x1195,0x19B6,0x1196,0x19B6,0x11B6,0x19B7,0x1196,0x1196,0x19B6,0x19D6,0x11B6,0x19B6,0x11B6,0x11B6,0x19B6,0x19B6,0x11B6,0x19B6,0x1996,0x19B6,0x19B6,0x19B6,0x1996,0x19B6,0x1196,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x1996,0x19B6,0x1996,0x19B6,0x19B6,0x19B6,0x1996,0x19B6,0x19B6,0x1196,0x1996,0x1996,0x1196,0x1176,0x1195,0x1195,0x1175,0x1174,0x0933,0x1153,0x1132,0x1111,0x1931,0x1910,0x1911,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x3150,0x3150,0x3150,0x3150,0x3150,0x3150,0x3130,0x312F,0x310F,0x390F,0x38ED,0x7252,0xCCBB,0xD4B9,0xD499,0xDC78,0xD478,0xD478,0xD478,0xCC78,0xCC78,0xC498,0xC499,0xC4DA,0x93B5,0x7B74,0x9CDA,0x9D5C,0x9DDD,0x9DFD,0x8E1C,0x863C,0x7E3C,0x765C,0x765D,0x6E5D,0x6E5D,0x6E5D,0x6E5E,0x6E5E,0x765E,0x767F,0x7E9F,0x865F,0x7DBD,0x6499,0x6438,0x7439,0x7C59,0x8C7A,0x8C7A,0x947A,0x9C9A,0xA499,0xA499,0xA499,0xA479,0xAC79,0xAC78,0xAC78,0xAC58,0xAC58,0xAC58,0xAC37,0xB437,0xB437,0xB417,0xB417,0xAC17,0xABF7,0xABF7,0xABF7,0xABF7,0xA3D7,0xA3D7,0xA3D7,0x9BD7,0x9BD7,0x9BD7,0x9BD7,0x9BD7,0x9BD7,0x9BB7,0x9BD7,0x9BD7,0x9BD7,0x9BD7,0x9BD7,0x9BD7,0x9BD7,0x93B6,0x9BB6,0x9BB6,0x9B96,0x9BB6,0x9BB6,0x9B96,0x9B96,0x9B96,0x9B76,0x9B76,0x9B56,0xA356,0xA356,0xAB56,0xAB76,0xB376,0xBB76,0xBB76,0xC376,0xC376,0xCB56,0xCB56,0xCB56,0xCB56,0xD336,0xD336,0xD336,0xD336,0xD335,0xD335,0xD335,0xD356,0xD356,0xCB56,0xBB15,0xBB36,0xB376,0xA396,0x9C38,0x94F9,0x853A,0x7DBB,0x6DBB,0x657B,0x5DBC,0x55FD,0x4E3E,0x3E7E,0x369E,0x2E7D,0x265D,0x2E5D,0x2E3D,0x2E5D,0x369E,0x3E7E,0x467E,0x465E,0x465E,0x4E5E,0x463E,0x463E,0x3E3D,0x363E,0x2E5E,0x265E,0x1E5E,0x165E,0x165E,0x0E5E,0x0E5E,0x0E5E,0x0E3E,0x0E3E,0x0E3E,0x0E3E,0x0E3E,0x063E,0x061E,0x061E,0x0E1E,0x0E1E,0x0DFE,0x0DFE,0x0DDE,0x0DDE,0x0DBE,0x0D9E,0x0D9E,0x0D9E,0x0D7E,0x0D7E,0x0D5E,0x0D5E,0x0D3E,0x0D3E,0x0D1F,0x0CFE,0x0CDE,0x0C9E,0x0C7E,0x0C5E,0x0C3E,0x0C3D,0x0C1D,0x0C1E,0x0C1E,0x0BFE,0x0BFD,0x0BFD,0x0BDD,0x0BDD,0x0BDD,0x0BDD,0x0BBD,0x0BBC,0x0BBC,0x0BBC,0x0BBC,0x03FC,0x043C,0x151D,0x1DBE,0x1E5F,0x1E7E,0x1E7E,0x165E,0x167E,0x169F,0x16BE,0x16DF,0x16DF,0x16FF,0x171E,0x171E,0x173F,0x173F,0x175F,0x175E,0x173E,0x1F5E,0x273E,0x2F3E,0x3F1E,0x46DD,0x569D,0x6E3C,0x8D9B,0x94B8,0xAC38,0xBC18,0xC418,0xCC18,0xD418,0xD439,0xCC3B,0xC47F,0x3937,0x2119,0x195B,0x117D,0x097D,0x097D,0x099E,0x099E,0x119D,0x117D,0x215C,0x313A,0x5138,0x81FA,0xA239,0xAA18,0xA217,0x9216,0x8236,0x6AB7,0x5399,0x3C5B,0x2D5E,0x1DBE,0x0E1F,0x061E,0x069F,0x06DF,0x073F,0x075F,0x077F,0x079F,0x079F,0x079F,0x07DF,0x0FDF,0x0F9F,0x177F,0x275F,0x36FF,0x569E,0x867F,0x6BF7,0x6211,0x9A74,0xB1F3,0xC1D3,0xC9B3,0xC193,0xC993,0xD193,0xC993,0xC993,0xC993,0xC193,0xC1D3,0xC1D4,0xB9D4,0xB215,0x8972,0x58D0,0x5152,0x5172,0x4972,0x4172,0x4192,0x3972,0x4192,0x3951,0x3131,0x3951,0x3951,0x3151,0x3151,0x3171,0x3151,0x2951,0x2951,0x2131,0x2131,0x1932,0x1952,0x1953,0x1173,0x1173,0x1152,0x1132,0x1153,0x1132,0x1932,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2110,0x210F,0x212F,0x292F,0x2930,0x210F,0x212F,0x210F,0x210F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2950,0x2130,0x2130,0x2130,0x2151,0x2151,0x1931,0x1111,0x1132,0x1153,0x1174,0x19F6,0x2217,0x2217,0x19B5,0x0933,0x1112,0x1912,0x1912,0x2111,0x2111,0x2111,0x2111,0x2111,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x212F,0x2130,0x2130,0x2110,0x2110,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x290F,0x290F,0x2930,0x2930,0x2950,0x2950,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x210F,0x210F,0x2110,0x210F,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x292F,0x290F,0x2930,0x210F,0x2930,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2930,0x2110,0x2930,0x2930,0x2930,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x2930,0x2930,0x290F,0x2930,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x290F, + 0x210F,0x2130,0x2110,0x2110,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x2930,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2131,0x2131,0x2131,0x1911,0x1112,0x1153,0x1195,0x19F7,0x1A18,0x1A18,0x19D7,0x1175,0x1154,0x0933,0x1153,0x1153,0x1953,0x1952,0x1952,0x1952,0x1952,0x1972,0x2192,0x1952,0x1952,0x1952,0x1132,0x1132,0x1133,0x1154,0x1174,0x1195,0x11B6,0x19D7,0x19F7,0x2218,0x19D6,0x1154,0x1132,0x1111,0x1931,0x1931,0x2130,0x2130,0x2930,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2910,0x2910,0x2930,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x2130,0x2110,0x210F,0x2110,0x210F,0x210F,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x212F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x212F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x212F,0x212F,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x2910,0x2910,0x210F,0x210F,0x292F,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x1951,0x1952,0x1953,0x1153,0x1153,0x1154,0x1154,0x1154,0x1154,0x1154,0x1154,0x1154,0x1133,0x1153,0x1154,0x1153,0x1153,0x1153,0x1153,0x1154,0x1154,0x1954,0x1154,0x1154,0x1133,0x1154,0x1154,0x1154,0x1154,0x1154,0x1154,0x1974,0x1154,0x1954,0x1974,0x1154,0x1154,0x1154,0x1154,0x1154,0x1154,0x1974,0x1974,0x1154,0x1154,0x1954,0x1154,0x0933,0x0933,0x1133,0x1133,0x1133,0x1132,0x1132,0x1951,0x1931,0x1931,0x1930,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2150,0x2130,0x2151,0x2130,0x2150,0x2150,0x2150,0x2150,0x2151,0x2151,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3150,0x3150,0x3150,0x3150,0x3150,0x3150,0x3150,0x3130,0x310F,0x310F,0x310F,0x38CD,0x6A11,0xCCBB,0xD49A,0xD499,0xD478,0xD478,0xD478,0xD478,0xCC78,0xCC78,0xCC98,0xC499,0xB498,0x93F6,0x9CB8,0xB5BC,0xA59C,0x9DBC,0x95FC,0x8E1C,0x861C,0x863D,0x7E5D,0x763D,0x765D,0x765E,0x765E,0x7E5F,0x75FE,0x75BD,0x6D3C,0x5459,0x4355,0x3AB3,0x3A73,0x4273,0x52B4,0x62F5,0x7316,0x7B36,0x8377,0x8BB8,0x9C19,0xAC59,0xAC79,0xAC79,0xAC79,0xB479,0xB479,0xB459,0xB458,0xB438,0xB438,0xBC38,0xBC38,0xBC38,0xBC38,0xBC18,0xBC18,0xBC18,0xBC18,0xBC18,0xB418,0xB417,0xB417,0xB417,0xB417,0xB417,0xABF7,0xABF7,0xABF7,0xABF7,0xABF7,0xAC17,0xABF7,0xAC17,0xABF7,0xABF7,0xABF7,0xABF7,0xABF7,0xABF7,0xABF7,0xABD7,0xABB6,0xAB96,0xAB96,0xABB6,0xAB96,0xB3B7,0xB3B7,0xB3B7,0xB3B7,0xBBB7,0xBBB7,0xBB97,0xC377,0xC376,0xC376,0xC356,0xCB56,0xCB56,0xCB56,0xCB36,0xD336,0xD336,0xD336,0xD336,0xD335,0xD335,0xD336,0xD336,0xD336,0xCB56,0xBB15,0xBB56,0xBB77,0xB3D7,0xB459,0xAD1A,0x9D5B,0x957A,0x8D9B,0x85BB,0x85BC,0x7DFD,0x6DDD,0x5DFD,0x4E3D,0x467E,0x3E9E,0x3E9E,0x367E,0x3E5D,0x3E5D,0x465D,0x4E1D,0x4DBC,0x557C,0x553B,0x5D7C,0x5D7C,0x5DBD,0x55DD,0x4E1D,0x463D,0x365D,0x2E5E,0x1E1D,0x163E,0x163E,0x165E,0x0E3E,0x0E5E,0x0E3E,0x0E3E,0x0E3E,0x0E1E,0x0E1E,0x0E1E,0x0E1E,0x0DFE,0x0DFE,0x0DDE,0x0DDE,0x0DBE,0x0DBE,0x0D9E,0x0D7E,0x157E,0x155E,0x153E,0x153E,0x151E,0x151E,0x14FE,0x14DE,0x14BE,0x149E,0x147D,0x145D,0x145D,0x143D,0x143D,0x141D,0x141D,0x141D,0x141D,0x13FD,0x13FD,0x13DD,0x13DD,0x13BC,0x13DD,0x13BC,0x13BC,0x13BC,0x139C,0x0B9C,0x0B9C,0x0B9C,0x0BDC,0x147D,0x1CFD,0x259E,0x25DE,0x261E,0x261D,0x1E3E,0x1E3E,0x1E5E,0x167E,0x1E9E,0x16BE,0x1EDE,0x1EFE,0x1F1E,0x171E,0x1F3E,0x1F3E,0x1F3E,0x273E,0x273E,0x373E,0x3F1E,0x46DD,0x56BD,0x6E7D,0x85DB,0x94D8,0xA438,0xBBF8,0xC418,0xCC18,0xD418,0xD419,0xD43A,0xCC5D,0x82DC,0x3138,0x213B,0x115C,0x095D,0x097D,0x099E,0x099E,0x097D,0x117D,0x197C,0x315B,0x5159,0x79DA,0xA239,0xAA38,0xA217,0x9216,0x8236,0x72B7,0x5B59,0x441A,0x2CFD,0x1D9E,0x0DBE,0x05FE,0x065F,0x06BF,0x071F,0x073F,0x077F,0x079F,0x079F,0x079F,0x07DF,0x07DF,0x0F9F,0x177F,0x275F,0x371F,0x4EBE,0x7EDF,0x7499,0x5A11,0x9253,0xB234,0xB9D3,0xC1B3,0xC173,0xC973,0xC993,0xD1B3,0xC993,0xC993,0xC9B3,0xC1B3,0xC1D3,0xB9F4,0xB235,0x91D3,0x58B0,0x5131,0x5172,0x4992,0x4172,0x4172,0x4192,0x4192,0x3951,0x3951,0x3131,0x3971,0x3151,0x3151,0x3151,0x3151,0x2951,0x2951,0x2952,0x2152,0x1953,0x1994,0x19B5,0x19D6,0x19F6,0x11D6,0x11B5,0x1195,0x1195,0x1153,0x1133,0x1932,0x1931,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2950,0x2130,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x212F,0x2130,0x2130,0x2151,0x2151,0x1911,0x1111,0x1132,0x1153,0x11B5,0x19F6,0x2217,0x2217,0x1995,0x1133,0x1133,0x1912,0x2132,0x2111,0x2111,0x2111,0x2111,0x2131,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x290F,0x292F,0x2930,0x2930,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2950,0x2930,0x2130,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2930,0x2930,0x2930,0x210F,0x210F,0x2110,0x2930,0x210F,0x210F,0x2130,0x2930,0x212F,0x212F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x2930,0x2930,0x2930,0x212F,0x210F,0x212F,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x290F,0x292F, + 0x292F,0x292F,0x210F,0x2930,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2930,0x2130,0x2110,0x2111,0x2111,0x1911,0x1911,0x1132,0x1174,0x11B6,0x19F7,0x1A18,0x19F7,0x19B7,0x1196,0x1154,0x1154,0x0933,0x1133,0x1153,0x1152,0x1132,0x1952,0x1151,0x1152,0x1132,0x1132,0x1132,0x1132,0x1153,0x1154,0x1175,0x1195,0x19D6,0x19F7,0x19F7,0x19F7,0x19B6,0x1175,0x1153,0x1132,0x1131,0x1931,0x2130,0x2130,0x2130,0x2930,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2130,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x212F,0x212F,0x2930,0x2930,0x212F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2110,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x290F,0x2930,0x2910,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x2151,0x2151,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x2151,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x1931,0x1932,0x1932,0x1132,0x1133,0x1133,0x1133,0x1113,0x1113,0x1133,0x1113,0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x1112,0x1112,0x1112,0x1112,0x1113,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1113,0x1113,0x1112,0x1112,0x1113,0x1113,0x1133,0x1133,0x1113,0x1113,0x1112,0x1112,0x1113,0x1113,0x1113,0x1113,0x1113,0x1113,0x1113,0x1112,0x1112,0x1112,0x1132,0x1932,0x1931,0x1951,0x1951,0x2151,0x2151,0x2131,0x2151,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x1930,0x1930,0x1931,0x1931,0x1931,0x1931,0x1930,0x1931,0x1931,0x1930,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1930,0x1930,0x1930,0x2130,0x2130,0x2130,0x2130,0x1930,0x2131,0x1930,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1930,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1930,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1910,0x1931,0x1931,0x1930,0x1930,0x1931,0x1931,0x1930,0x1930,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1930,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1930,0x1931,0x1930,0x1930,0x1931,0x1930,0x1930,0x1930,0x1930,0x1931,0x1930,0x1930,0x1930,0x1930,0x1930,0x1930,0x1930,0x1930,0x1931,0x1930,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3150,0x3150,0x3150,0x3130,0x3130,0x3150,0x3150,0x3130,0x310F,0x310F,0x30CD,0x516F,0xCCBB,0xD4BA,0xD499,0xD499,0xD478,0xD478,0xD478,0xD478,0xCC78,0xCC98,0xC499,0xB498,0x8B94,0xB55B,0xB5BC,0xA59B,0x9DBC,0x95DC,0x95FD,0x8DFD,0x8E1D,0x8E3E,0x8E5F,0x8E7F,0x863E,0x5D1A,0x3BF7,0x2B14,0x22B3,0x2252,0x2232,0x2A32,0x3A13,0x4213,0x4A13,0x5234,0x5233,0x5A34,0x6254,0x6A74,0x7295,0x7AD5,0x8B16,0x9B97,0xAC19,0xB47A,0xBC7A,0xB45A,0xB439,0xBC59,0xBC39,0xBC39,0xBC38,0xBC38,0xBC38,0xC418,0xBC18,0xC418,0xC418,0xC418,0xC418,0xC417,0xBBF7,0xBBF7,0xBBF7,0xBBF7,0xBBF7,0xBBF7,0xBBF7,0xBBF7,0xBBF7,0xBBF7,0xBBF7,0xBBF7,0xBBF7,0xBBF7,0xBBD7,0xBBD7,0xBBD7,0xB3D7,0xB3D7,0xB3D7,0xBBD7,0xBBD7,0xBBB6,0xBBB6,0xBB96,0xBBB6,0xBBB6,0xBB96,0xBBB7,0xBBB7,0xBB97,0xC397,0xC376,0xC376,0xC376,0xCB76,0xCB56,0xCB56,0xCB56,0xD356,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xCB56,0xC336,0xBB16,0xBB77,0xB397,0xB3F8,0xBCDA,0xB51A,0xA53A,0x9D3A,0x9D5A,0x955A,0x957B,0x8D7B,0x7D5B,0x6D7B,0x5DDC,0x561D,0x4E5D,0x467E,0x465D,0x463D,0x45FC,0x4DDC,0x553A,0x64FA,0x6CBA,0x6479,0x6438,0x6418,0x6479,0x64DA,0x657C,0x55BC,0x4DFD,0x3E3D,0x2E3D,0x1DFD,0x1E1E,0x163E,0x161E,0x0E3E,0x0E1E,0x0E1E,0x0E1E,0x0E1E,0x0DFE,0x0DFE,0x0DFE,0x0DDE,0x0DDE,0x0DBE,0x0DBE,0x159E,0x159E,0x157E,0x155E,0x155E,0x1D3E,0x1D1D,0x1CFD,0x1CFE,0x1CDD,0x1CBD,0x1C9D,0x1C5D,0x1C3D,0x1C3C,0x1C1C,0x1C1C,0x1BFC,0x1BFC,0x1BDC,0x23DC,0x23DC,0x23DC,0x23DC,0x23BC,0x23BC,0x1B9B,0x23BB,0x1B9B,0x1B9B,0x1B9B,0x1B7B,0x1B7B,0x1B5B,0x1B5B,0x133A,0x1B7B,0x1BBB,0x243C,0x2CDD,0x353D,0x359E,0x35BD,0x35DD,0x2DDD,0x2DFE,0x2E1E,0x2E3E,0x265D,0x2E7E,0x269D,0x26DE,0x26FD,0x26FE,0x26FE,0x271E,0x2F1E,0x2F1E,0x371E,0x471E,0x4EFE,0x5EBD,0x6E7D,0x85FB,0x8CF9,0xA437,0xB3F8,0xC3F8,0xCBF8,0xD3F8,0xD418,0xD419,0xCC3C,0xB3FE,0x4177,0x295A,0x195C,0x117C,0x097D,0x099E,0x119E,0x119D,0x117D,0x197C,0x295B,0x4939,0x71BA,0x9A3A,0xAA38,0x99F7,0x91F6,0x8A36,0x7297,0x5B18,0x43BA,0x34DD,0x1D5E,0x0D7E,0x05BE,0x065F,0x069F,0x06FF,0x071F,0x075F,0x077F,0x079F,0x079F,0x07DF,0x07DF,0x0F9F,0x179F,0x277F,0x2F3F,0x46BE,0x76DF,0x7D3B,0x5231,0x9273,0xA9F3,0xB1B2,0xC1B3,0xC193,0xC993,0xC993,0xC9B3,0xC993,0xC193,0xC1B3,0xC1D3,0xB9B3,0xB9F4,0xB214,0x99D4,0x58D0,0x5131,0x4952,0x4992,0x4172,0x4172,0x3972,0x3972,0x3971,0x3951,0x3951,0x3951,0x3151,0x3151,0x3151,0x3151,0x2951,0x2951,0x2132,0x1953,0x1974,0x19D6,0x19F7,0x11F7,0x1217,0x1218,0x1218,0x1A18,0x1A18,0x19F7,0x11B5,0x1174,0x1152,0x1132,0x1931,0x1931,0x2131,0x2131,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x2131,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1111,0x1152,0x1153,0x1195,0x19D6,0x19F6,0x19D6,0x1995,0x1133,0x1133,0x1112,0x1912,0x1912,0x1931,0x2131,0x2131,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x212F,0x210F,0x290F,0x292F,0x210F,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x292F,0x292F,0x210F,0x212F,0x212F,0x2130,0x210F,0x2930,0x2930,0x2951,0x2951,0x2951,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x2110,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2110,0x2110,0x2130,0x2930,0x2130,0x2930,0x212F,0x2130,0x2130,0x210F,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x292F,0x210F,0x290F, + 0x210F,0x292F,0x210F,0x210F,0x210F,0x2130,0x210F,0x212F,0x212F,0x210F,0x2930,0x2930,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x2930,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2131,0x1931,0x1111,0x1133,0x1174,0x19B6,0x19D7,0x19F7,0x19D7,0x19D7,0x11B6,0x1195,0x0955,0x0954,0x0933,0x0953,0x1153,0x1153,0x1132,0x0932,0x1112,0x0912,0x1133,0x1153,0x1174,0x1195,0x19F7,0x1A17,0x1A17,0x1A17,0x19D6,0x1195,0x1133,0x1133,0x1132,0x1131,0x1931,0x1930,0x2130,0x2130,0x2130,0x292F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x2910,0x2930,0x2930,0x2110,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x290F,0x210F,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x290F,0x2930,0x212F,0x2930,0x212F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x2111,0x1911,0x1911,0x1911,0x1911,0x1911,0x10F1,0x1911,0x1110,0x1110,0x10F0,0x1910,0x10F0,0x1911,0x1110,0x1110,0x1111,0x10F1,0x10F0,0x1111,0x10F1,0x10F1,0x10F1,0x1111,0x1111,0x1111,0x10F1,0x1111,0x10F1,0x10F1,0x10F1,0x1111,0x10F1,0x10F1,0x10F0,0x10F0,0x10F0,0x10D0,0x10D1,0x10F1,0x10F1,0x10D1,0x10D1,0x10D1,0x10D1,0x10F1,0x10F1,0x10F0,0x10F0,0x10F0,0x10F0,0x10F0,0x10F0,0x08F1,0x08F1,0x08F1,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x0912,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F1,0x08F1,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08D2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x10F2,0x08F2,0x08F2,0x10F2,0x10F2,0x0912,0x0912,0x10F2,0x10F2,0x08F1,0x10F1,0x1111,0x1111,0x1111,0x1110,0x10F0,0x10F0,0x1110,0x1110,0x1110,0x10F0,0x1111,0x10F0,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1131,0x1131,0x1111,0x1911,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1131,0x1111,0x1111,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1111,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1111,0x1131,0x1111,0x1111,0x1111,0x1111,0x1111,0x1931,0x1111,0x1931,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1131,0x1111,0x1111,0x1911,0x1111,0x1131,0x1111,0x1111,0x1111,0x1131,0x1111,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1111,0x1111,0x1111,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1132,0x1131,0x1131,0x1111,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1931,0x1131,0x1131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3150,0x3130,0x3130,0x3130,0x3130,0x3130,0x312F,0x312F,0x310F,0x30CE,0x516F,0xBC39,0xD4BB,0xD499,0xD499,0xD499,0xD478,0xD478,0xD478,0xCC78,0xCC99,0xC478,0xAC37,0xAC98,0xC5BD,0xB57B,0xADBC,0x9DBC,0x95BC,0x95DD,0x95DE,0x855C,0x74FB,0x5C38,0x3AD4,0x19D0,0x118F,0x118F,0x19B0,0x21B1,0x21D2,0x29B2,0x31D2,0x39D2,0x41D3,0x41D3,0x49D3,0x51D3,0x51D3,0x51F3,0x59F3,0x61F3,0x61D3,0x61D2,0x61D2,0x61B2,0x5170,0x61B2,0x7234,0x8AF6,0xA398,0xB41A,0xBC1A,0xC45A,0xC439,0xC438,0xC438,0xC418,0xC418,0xC418,0xC418,0xC3F8,0xC3F7,0xC3F7,0xC3F7,0xC3F7,0xC3D7,0xC3D7,0xC3D7,0xC3F7,0xC3D7,0xC3D7,0xC3D7,0xC3D7,0xC3D7,0xC3D7,0xC3D7,0xC3D7,0xC3D7,0xC3B7,0xC3B7,0xC3B7,0xC3B7,0xC3B7,0xC3B7,0xC3B6,0xC396,0xC3B7,0xC397,0xC397,0xC397,0xC396,0xC397,0xC396,0xC397,0xCB76,0xCB76,0xCB56,0xCB56,0xCB56,0xCB56,0xD356,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xC316,0xC316,0xB316,0xB336,0xA2F5,0xAB96,0xBCBA,0xB4D9,0xACD9,0xA4B8,0xA498,0x9C97,0x9C98,0x9CB9,0x8478,0x7499,0x6D1A,0x5D7C,0x55DC,0x4E1D,0x4E1D,0x4DFC,0x55BB,0x54D9,0x5C17,0x7418,0x7BF9,0x83F9,0x83B8,0x83B8,0x7336,0x6B56,0x6397,0x5C38,0x553A,0x55FC,0x463D,0x363D,0x1DFD,0x1DFD,0x161E,0x161E,0x161E,0x0DFE,0x0DFE,0x0DFE,0x0DFE,0x0DDE,0x0DDE,0x0DBE,0x0DBE,0x0D9E,0x157D,0x155D,0x155E,0x1D5E,0x1D3E,0x253E,0x251E,0x24FD,0x2CDD,0x2CDD,0x2C9D,0x2C7C,0x2C3C,0x2C1C,0x2BDB,0x2BBB,0x2B9A,0x2B9A,0x2B7A,0x2B79,0x2B79,0x2B79,0x3379,0x3359,0x3359,0x3379,0x2B59,0x3359,0x3359,0x3359,0x3339,0x3339,0x3339,0x3339,0x2B19,0x2B19,0x2B19,0x2B19,0x2319,0x2B5A,0x2BBA,0x341B,0x449C,0x44FD,0x557D,0x4D9E,0x4DDE,0x4DFE,0x4E1E,0x4E3E,0x465D,0x469D,0x46BD,0x3EDD,0x3EDD,0x3EFD,0x36DD,0x36FE,0x3EFD,0x3EFE,0x46DD,0x4EDD,0x5EBD,0x6E7D,0x861C,0x8D39,0x9C37,0xB3F7,0xC3F7,0xCBF8,0xD3F8,0xD3F8,0xD419,0xD41B,0xC43D,0x7259,0x2938,0x193B,0x115C,0x117D,0x097D,0x099E,0x097D,0x117D,0x197C,0x215B,0x393A,0x5959,0x9A3A,0xA239,0x99F7,0x91F6,0x8A37,0x7A77,0x62D8,0x4359,0x347C,0x251D,0x0D3D,0x057E,0x05FE,0x065F,0x06DF,0x071F,0x075F,0x077F,0x079F,0x079F,0x07BF,0x07DF,0x079F,0x0F7F,0x1F7F,0x2F3F,0x3EDE,0x66BF,0x85BD,0x5251,0x8A94,0xAA13,0xB9B3,0xC1B3,0xC993,0xC993,0xD1B4,0xD1B3,0xC193,0xC193,0xC172,0xC1B3,0xC1D4,0xBA14,0xB214,0x99F4,0x58D0,0x5111,0x5172,0x4992,0x4172,0x3972,0x3972,0x3972,0x3951,0x3951,0x3131,0x3951,0x3151,0x3151,0x3151,0x3151,0x2951,0x2932,0x2153,0x2174,0x1995,0x11B6,0x11D7,0x1218,0x0A18,0x09F8,0x09F8,0x09F8,0x1239,0x1218,0x1A18,0x19F7,0x11B5,0x1153,0x1132,0x1131,0x1931,0x1931,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x2131,0x2131,0x2131,0x2131,0x1930,0x2131,0x2131,0x2151,0x2151,0x1930,0x2130,0x2130,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2151,0x2151,0x1951,0x1131,0x1132,0x1173,0x1174,0x19B6,0x19D7,0x21F7,0x19B5,0x1154,0x1133,0x1113,0x1132,0x1932,0x1952,0x1952,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2150,0x2130,0x2130,0x2130,0x1930,0x2130,0x2131,0x2130,0x2130,0x2930,0x290F,0x2910,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x292F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2951,0x2951,0x2951,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2951,0x2130,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x2150,0x2151,0x2130,0x2131,0x2131,0x2131,0x2130,0x2131,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x210F,0x210F, + 0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x2930,0x2930,0x2930,0x2930,0x210F,0x290F,0x292F,0x292F,0x290F,0x212F,0x2130,0x2110,0x2110,0x2930,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2131,0x1911,0x1911,0x1112,0x1133,0x1174,0x19B6,0x19D7,0x19F7,0x21F8,0x11D7,0x19F7,0x19D7,0x1196,0x0975,0x0974,0x0933,0x0953,0x0953,0x0933,0x0933,0x1154,0x1174,0x1195,0x19B6,0x19F7,0x1A17,0x1A17,0x2217,0x19D6,0x19B5,0x1153,0x1113,0x1112,0x1132,0x1931,0x1931,0x2130,0x2130,0x2130,0x2950,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2110,0x2110,0x2110,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x212F,0x212F,0x2930,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x2930,0x212F,0x210F,0x210F,0x212F,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1910,0x1910,0x10F1,0x10F1,0x10F1,0x10F2,0x0912,0x0912,0x0912,0x08F2,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0913,0x0913,0x0913,0x0913,0x1133,0x0933,0x0933,0x0933,0x0933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1133,0x1154,0x1134,0x1134,0x1154,0x1154,0x1133,0x1154,0x1153,0x1133,0x1133,0x1153,0x1132,0x1153,0x1132,0x1153,0x1153,0x1153,0x0953,0x1174,0x1174,0x0954,0x0954,0x0954,0x0954,0x1154,0x1154,0x1154,0x1154,0x1154,0x1154,0x1154,0x1154,0x0954,0x1154,0x1154,0x0934,0x1154,0x1154,0x1134,0x1154,0x1154,0x0934,0x1154,0x1134,0x1154,0x1134,0x1134,0x1154,0x1154,0x0934,0x0934,0x1154,0x1134,0x0934,0x1134,0x1134,0x0934,0x1134,0x1154,0x0934,0x0934,0x0934,0x0934,0x0934,0x0913,0x1133,0x0933,0x0933,0x1133,0x1133,0x1133,0x1133,0x1132,0x0912,0x0932,0x0932,0x1133,0x0932,0x0932,0x0912,0x0912,0x0912,0x08F2,0x00F2,0x08F2,0x00D1,0x08F2,0x00F2,0x00F2,0x00F2,0x08F2,0x00F2,0x00F2,0x00F2,0x08F2,0x00F2,0x00F2,0x00F2,0x08F2,0x00F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08D1,0x08F2,0x08D2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x00D1,0x00F1,0x00D1,0x00F2,0x00D1,0x00D1,0x00D1,0x00D1,0x00D1,0x00D1,0x00F1,0x00F2,0x00F1,0x00F2,0x00F2,0x00F2,0x00F2,0x00F2,0x00F2,0x00F2,0x00F2,0x00F2,0x00F2,0x08F2,0x00F2,0x08F2,0x00F2,0x00F2,0x00D1,0x00F2,0x00F2,0x08F2,0x00F2,0x00F2,0x00F2,0x00F2,0x00F2,0x0912,0x00F2,0x08F2,0x08F2,0x0912,0x00F2,0x0912,0x00F2,0x0912,0x00F2,0x0912,0x00F2,0x00F2,0x00F2,0x00F2,0x00F2,0x0112,0x00F2,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0932,0x0932,0x0912,0x0932,0x0912,0x0933,0x0933,0x0933,0x0912,0x0933,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0913,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0912,0x0932,0x0912,0x1132,0x1132,0x1932,0x1932,0x1931,0x2131,0x2131,0x2130,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x3130,0x3130,0x3130,0x3130,0x312F,0x312F,0x310E,0x30CE,0x38CD,0xABD8,0xD4DB,0xDCBA,0xDC99,0xD499,0xD499,0xD478,0xD478,0xCC98,0xCC99,0xC499,0xB458,0xC51B,0xBD5C,0xBD7C,0xB59D,0xA5BD,0xA5FE,0x8D5C,0x4B55,0x2A51,0x21F0,0x19AF,0x1990,0x21B1,0x29B1,0x2991,0x29B2,0x31B2,0x31B2,0x39D3,0x39B3,0x39B3,0x41B3,0x41B3,0x49D3,0x49D3,0x51B3,0x51B3,0x51B2,0x51B2,0x59B2,0x5192,0x5192,0x5972,0x5972,0x5972,0x5951,0x5951,0x5951,0x5951,0x6191,0x69D2,0x7A33,0xB3B8,0xCC7B,0xCC5A,0xC439,0xC439,0xC419,0xCC19,0xCBF8,0xCBF8,0xCBF8,0xCBD7,0xCBD7,0xCBB7,0xCBB7,0xCBD7,0xCBD7,0xCBD7,0xCBD7,0xCBD7,0xCBD7,0xCBB7,0xCBB7,0xCBB6,0xCBB7,0xCBB7,0xCB96,0xC396,0xCB96,0xC396,0xC396,0xCB96,0xCB96,0xCB96,0xCB96,0xCB76,0xCB76,0xCB76,0xCB76,0xCB76,0xCB76,0xCB76,0xCB56,0xCB76,0xCB56,0xD356,0xD356,0xD336,0xD356,0xD336,0xD336,0xD316,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xCB37,0xC316,0xBB37,0xAAD6,0x8A33,0x8A32,0xB3F8,0xBC99,0xBC98,0xB498,0xB498,0xB477,0xB477,0xB498,0xB4B8,0x9C78,0x8C79,0x7CDA,0x6D5B,0x5D7B,0x55FD,0x55FD,0x55FD,0x5D9B,0x64FA,0x6BD7,0x8BD8,0x93B8,0x9BB8,0x9B98,0x9B57,0x92F6,0x82B5,0x72B5,0x6B36,0x6438,0x5D3B,0x55DC,0x463D,0x2DFD,0x25FD,0x1DFE,0x15FE,0x15FE,0x15FE,0x15FE,0x15DE,0x15DE,0x15BD,0x159D,0x157D,0x157D,0x155D,0x1D3D,0x1D1D,0x251D,0x251D,0x2CFE,0x2CFE,0x34DD,0x3CDD,0x44BD,0x449C,0x447C,0x443B,0x4C1B,0x4BDA,0x4B9A,0x4B79,0x4358,0x4B78,0x5378,0x5398,0x5B99,0x5BD9,0x63DA,0x63FA,0x63FA,0x63FA,0x63DA,0x63DA,0x63DA,0x63DA,0x63DA,0x63DA,0x6399,0x6399,0x6399,0x63B9,0x6399,0x5B79,0x4B18,0x42F7,0x4338,0x4B79,0x53FA,0x5C7B,0x64DB,0x6D3C,0x6D5D,0x6D9D,0x6DBD,0x6DFD,0x661D,0x663D,0x5E7D,0x5E9D,0x56BD,0x4EBD,0x4EBD,0x46BD,0x46DD,0x4EBD,0x4EBD,0x56BD,0x669D,0x767D,0x861C,0x957A,0xA458,0xB418,0xC3F7,0xCBF8,0xD3D7,0xD3F8,0xDBF8,0xD41A,0xCC3C,0xABBD,0x3937,0x191A,0x195B,0x117D,0x119D,0x097D,0x097D,0x117D,0x197D,0x215B,0x313A,0x4918,0x923A,0xA259,0x99F7,0x91F7,0x8A17,0x7A77,0x62B8,0x4B19,0x343C,0x24BD,0x151E,0x055D,0x05DF,0x063F,0x06BF,0x06FF,0x073F,0x075F,0x079F,0x079F,0x07DF,0x07DF,0x0F9F,0x0F7F,0x177F,0x275F,0x36FE,0x5EDF,0x865F,0x52B2,0x8273,0xA213,0xB1D3,0xC1B3,0xC193,0xC9B3,0xC9B3,0xC9B3,0xC993,0xC193,0xC193,0xC1B3,0xC1D4,0xB9F4,0xB1F4,0xA215,0x6111,0x5111,0x5172,0x4972,0x4172,0x4171,0x4172,0x3972,0x3972,0x3971,0x3131,0x3151,0x3972,0x3151,0x3151,0x3151,0x2931,0x2952,0x2133,0x1974,0x19B6,0x11B7,0x09B7,0x09F8,0x09F9,0x01D8,0x01F9,0x01D9,0x09F9,0x09F9,0x1219,0x1218,0x11F7,0x11D6,0x1174,0x1153,0x1112,0x1111,0x1111,0x1931,0x1931,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1911,0x1910,0x1931,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2151,0x2151,0x1931,0x1931,0x1132,0x1153,0x1194,0x19B6,0x21F7,0x2217,0x19B6,0x1154,0x0933,0x0913,0x1132,0x1132,0x1952,0x1952,0x1952,0x1952,0x1931,0x1931,0x1931,0x2131,0x2110,0x2131,0x2130,0x2110,0x2130,0x2130,0x2150,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2151,0x2130,0x2130,0x2930,0x2930,0x2930,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x18F0,0x1910,0x1910,0x2110,0x2131,0x2151,0x2131,0x2151,0x2131,0x2130,0x2130,0x2131,0x1910,0x2131,0x2151,0x2151,0x2131,0x2130,0x1910,0x2110,0x1910,0x2130,0x2131,0x2151,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2150,0x2951,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2150,0x2151,0x2130,0x2131,0x2130,0x2131,0x2131,0x2130,0x2131,0x2131,0x2151,0x2130,0x2150,0x2130,0x2130,0x2151,0x2150,0x2151,0x2130,0x2131,0x2151,0x2151,0x2131,0x2151,0x2151,0x2151,0x2951,0x2931,0x2931,0x2130,0x2951,0x2130,0x2130,0x2991,0x2971,0x2151,0x2131,0x2131,0x2131,0x2131,0x1910,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x212F,0x210F,0x210F, + 0x290F,0x290F,0x290F,0x290F,0x212F,0x2130,0x212F,0x212F,0x292F,0x212F,0x2930,0x2930,0x2110,0x2930,0x2910,0x210F,0x2930,0x2930,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x2131,0x1931,0x1932,0x1133,0x1154,0x1975,0x1996,0x19D7,0x19F7,0x19F7,0x11D7,0x11D7,0x11B7,0x11B7,0x11D7,0x11D6,0x11B6,0x1195,0x11B6,0x11B6,0x19D6,0x19D6,0x19D6,0x19D6,0x19F7,0x19F7,0x21F6,0x1995,0x1994,0x1132,0x1111,0x1911,0x1931,0x1931,0x2130,0x2130,0x2130,0x212F,0x292F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2930,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2110,0x2110,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x212F,0x2930,0x2930,0x210F,0x210F,0x2930,0x290F,0x2930,0x2110,0x2930,0x2110,0x210F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x290F,0x212F,0x212F,0x2130,0x2130,0x212F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2131,0x1911,0x1911,0x1932,0x1133,0x1174,0x19B6,0x19B6,0x19F7,0x19F8,0x1A18,0x19F8,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2239,0x1A18,0x2219,0x1A18,0x1A19,0x1A18,0x2239,0x1A18,0x1A19,0x1A19,0x1A19,0x1A18,0x1A18,0x1A18,0x1A39,0x1A18,0x2239,0x1A18,0x1A18,0x1A18,0x2218,0x19F8,0x1A18,0x19F8,0x19F8,0x19F8,0x19F8,0x11F7,0x19F8,0x19F8,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F8,0x1A18,0x1A18,0x11F8,0x11F8,0x11F8,0x11F8,0x1218,0x11F8,0x11F8,0x1A18,0x11F8,0x1A18,0x19F8,0x1A18,0x11F8,0x1A18,0x1218,0x11F8,0x11F8,0x11F8,0x11F8,0x1A18,0x19F8,0x19F8,0x11F8,0x11F8,0x11F8,0x19F8,0x11F8,0x19F8,0x19F8,0x19F8,0x11F8,0x1A19,0x19F8,0x19F8,0x19F8,0x19F8,0x11F8,0x19F8,0x11F8,0x19F8,0x11F8,0x1A19,0x19F8,0x1A19,0x1A19,0x1A19,0x19F8,0x1A18,0x1A18,0x2239,0x1A18,0x1A38,0x1A18,0x1A18,0x1A18,0x1A38,0x1A18,0x1A39,0x1A19,0x2239,0x1A18,0x2238,0x2218,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x19F8,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A19,0x1A18,0x1A19,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2218,0x1A18,0x1A19,0x1A18,0x2218,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A38,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A38,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x19F8,0x1A18,0x19F8,0x1A18,0x19F8,0x19F8,0x11F8,0x19F8,0x11D7,0x19F8,0x11F8,0x19F8,0x11D7,0x19F8,0x11D8,0x19F8,0x11F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x19F8,0x1A18,0x19F8,0x1A18,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x11F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F7,0x19F7,0x19D7,0x19B6,0x1195,0x1974,0x1973,0x1952,0x2131,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x2930,0x3130,0x2930,0x2930,0x292F,0x312F,0x290F,0x30EE,0x38CD,0x9B77,0xD4FC,0xD4BA,0xDCB9,0xDC99,0xD479,0xD479,0xD478,0xD478,0xCC99,0xCC99,0xC4B9,0xC4FA,0xBD3B,0xBD7D,0xAD5C,0x94DB,0x6376,0x21B0,0x196F,0x2190,0x2190,0x2191,0x2991,0x29B1,0x29B2,0x31B2,0x39D3,0x31D3,0x31D3,0x39D3,0x39D3,0x39D3,0x41B3,0x41B3,0x49B3,0x49B3,0x49D3,0x51D3,0x51B3,0x49B2,0x5192,0x5192,0x5192,0x5192,0x5192,0x59B2,0x5993,0x5992,0x5992,0x5972,0x5972,0x5972,0x5992,0x5971,0x5130,0x510F,0x7A74,0xA357,0xABB8,0xC41A,0xC419,0xCC19,0xCBF8,0xCBF8,0xCBF8,0xD3F8,0xCBD7,0xD3D7,0xCBB7,0xCBB7,0xCBB7,0xCBB7,0xCBB7,0xCBB7,0xCBB7,0xCBB7,0xCBB6,0xCB96,0xCB96,0xCB96,0xCB96,0xCB96,0xCB76,0xCB76,0xCB76,0xCB76,0xCB76,0xCB76,0xCB76,0xCB56,0xCB56,0xCB56,0xCB56,0xD376,0xD356,0xD376,0xD356,0xD356,0xD356,0xD356,0xD336,0xD356,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xCB37,0xCB57,0xB2F6,0xA295,0x79D2,0x79D1,0x9293,0xCC9A,0xCCB9,0xCCB9,0xC4B8,0xC4B8,0xC4B8,0xC4B8,0xC4D8,0xC4D9,0xB499,0x9C99,0x8D1B,0x755C,0x659C,0x5DFD,0x561D,0x5E1D,0x65BC,0x6D1A,0x73D7,0x93B8,0x9B98,0xA378,0xAB78,0xAB57,0xA2F5,0x9AB5,0x8A54,0x8295,0x7316,0x6418,0x5D3B,0x4DDC,0x3DFD,0x2DFD,0x25FD,0x1DFD,0x1DFD,0x15DD,0x15BD,0x15BD,0x159E,0x1D9E,0x259E,0x257E,0x255D,0x253D,0x2D1D,0x2CFD,0x34DD,0x34DD,0x34BD,0x3C9C,0x447C,0x445B,0x543B,0x5C3B,0x643A,0x6C1A,0x7C5A,0x8C7B,0x9CDC,0xB53D,0xBD5E,0xBD5D,0xBD5D,0xBD3D,0xBD3D,0xBD3D,0xBD3D,0xBD3D,0xBD1D,0xBD1D,0xB51D,0xB51D,0xB51D,0xBD1C,0xB51C,0xBD1C,0xBD1D,0xBD3D,0xBD1C,0xBD1C,0xBD1D,0xBD1C,0xBD3D,0xB53D,0xA4BB,0x9C9B,0x94BB,0x8C9A,0x8C9A,0x847A,0x84BA,0x84DB,0x84FB,0x853C,0x7D5C,0x7D9C,0x75BC,0x75FD,0x6E3D,0x665D,0x5E7D,0x5E9D,0x5E9D,0x5EBD,0x5E9D,0x669D,0x6E7D,0x765C,0x8E1C,0x9DBB,0xA478,0xB3F7,0xC3F7,0xD3D7,0xD3D7,0xD3D7,0xDBD8,0xD3F9,0xD41A,0xC43E,0x59D8,0x2939,0x195B,0x117C,0x117D,0x097D,0x097D,0x117D,0x117D,0x215C,0x295B,0x40F8,0x79D9,0x9A19,0x91F7,0x91F7,0x8A17,0x8257,0x6A98,0x5319,0x3BFB,0x2C9D,0x14DD,0x0D3D,0x05BE,0x063F,0x069F,0x06FF,0x073F,0x077F,0x079F,0x07BF,0x07BF,0x07DF,0x07BF,0x0F9F,0x179F,0x277F,0x2EFE,0x4E9E,0x86BF,0x5333,0x7A73,0x99F2,0xBA14,0xC1B3,0xC193,0xC993,0xC993,0xC9B3,0xC173,0xC193,0xC193,0xC1B3,0xB9B3,0xB9F4,0xB214,0xAA35,0x6911,0x50F1,0x5152,0x5192,0x4992,0x4171,0x3971,0x4172,0x3971,0x3971,0x3971,0x3151,0x3971,0x3151,0x3151,0x3152,0x2911,0x2112,0x2133,0x2195,0x11B7,0x11F8,0x01B8,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01B9,0x01B9,0x01F9,0x0A19,0x09F8,0x11D7,0x0995,0x0933,0x0912,0x0912,0x1112,0x1112,0x1132,0x1112,0x1911,0x10F1,0x1911,0x1931,0x1911,0x1911,0x1932,0x1932,0x1112,0x1932,0x1932,0x1131,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1912,0x1111,0x1112,0x1111,0x1111,0x1111,0x1131,0x1131,0x1111,0x1911,0x1931,0x1931,0x1911,0x1911,0x1931,0x1911,0x2111,0x2131,0x2110,0x2130,0x2110,0x2110,0x2930,0x2110,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2150,0x2150,0x2151,0x1910,0x1931,0x1952,0x1153,0x1174,0x19B6,0x2218,0x2218,0x1196,0x0934,0x0933,0x0913,0x0933,0x1133,0x1153,0x1153,0x1173,0x1152,0x1952,0x1932,0x1911,0x1911,0x2111,0x2130,0x2110,0x2110,0x2950,0x2150,0x2130,0x212F,0x212F,0x212F,0x2150,0x2150,0x2150,0x2130,0x2131,0x2131,0x1931,0x1931,0x2152,0x2131,0x2131,0x2130,0x2131,0x2131,0x2130,0x1910,0x2131,0x1911,0x1910,0x1910,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2950,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2151,0x2151,0x2131,0x1910,0x18F0,0x18F0,0x1910,0x1910,0x1910,0x1931,0x2131,0x2131,0x2130,0x2130,0x2131,0x2151,0x1910,0x1910,0x1931,0x1931,0x1911,0x1910,0x2131,0x1910,0x2151,0x1931,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x1910,0x1930,0x1910,0x1910,0x1910,0x2131,0x2151,0x1911,0x2131,0x2111,0x2110,0x2130,0x2130,0x2130,0x2130,0x1910,0x1910,0x1910,0x18F0,0x1910,0x1910,0x18F0,0x1910,0x1931,0x1931,0x1910,0x2110,0x2110,0x18F0,0x2110,0x2130,0x190F,0x190F,0x2130,0x2130,0x1910,0x1910,0x1910,0x1911,0x1911,0x1910,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x1910,0x1910,0x2130,0x2131,0x2130,0x1910,0x1910,0x1910,0x1910,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x290F,0x2930,0x2930, + 0x2910,0x2910,0x2930,0x290F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x2111,0x1911,0x1912,0x1112,0x1133,0x1154,0x1195,0x19B6,0x19F7,0x1A18,0x19F8,0x19F8,0x19F8,0x11F8,0x11F7,0x1A18,0x1A18,0x19F8,0x19F7,0x19F7,0x11B6,0x19D6,0x19D6,0x19B6,0x1995,0x1174,0x1153,0x1952,0x1132,0x1911,0x1931,0x1930,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x212F,0x210F,0x210F,0x212F,0x292F,0x2930,0x292F,0x292F,0x292F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x210F,0x290F,0x292F,0x292F,0x290F,0x290F,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2930,0x2910,0x2110,0x212F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x212F,0x212F,0x2110,0x2110,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2110,0x210F,0x2110,0x2130,0x2130,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1953,0x1954,0x1995,0x11B6,0x11D7,0x11D8,0x11F9,0x11D8,0x11F9,0x11F9,0x11F9,0x09D9,0x09F9,0x09D8,0x09D9,0x09D9,0x09D9,0x09D8,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x09D8,0x09D9,0x09D9,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D8,0x11F9,0x09D9,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09F8,0x09D8,0x09F8,0x09F8,0x09F8,0x09F8,0x09F8,0x09F8,0x09F8,0x09F9,0x09F9,0x09D8,0x09F9,0x09D8,0x09F8,0x09F8,0x09F8,0x09D8,0x09F8,0x09F8,0x09F9,0x09D9,0x09F9,0x09D8,0x09F9,0x09D9,0x09F9,0x09D9,0x09F9,0x09F9,0x09F9,0x09D8,0x09F9,0x09F9,0x09F9,0x09F9,0x11F9,0x09D9,0x09F9,0x09F9,0x09F9,0x09D9,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x09D8,0x09D9,0x09D9,0x09F9,0x09D8,0x09D9,0x09D8,0x09D9,0x09D8,0x09D9,0x09D9,0x09D9,0x09B8,0x11F9,0x11F8,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x09F9,0x09F9,0x09F9,0x09F9,0x11F9,0x09F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x09F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x09F9,0x09F9,0x11F9,0x11F9,0x09F9,0x09F9,0x11F9,0x11F9,0x09F9,0x09F9,0x09F9,0x11F9,0x09F9,0x11F9,0x11F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x11F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09D9,0x09D9,0x09F9,0x11F9,0x09F9,0x09F9,0x09F9,0x09D9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x11F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09D9,0x09D9,0x09D9,0x09F9,0x09D9,0x09F9,0x09D9,0x09F9,0x09F9,0x11F9,0x09F9,0x09F9,0x11F9,0x11F9,0x09D9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F8,0x11F8,0x19F8,0x19D7,0x21B5,0x2194,0x2132,0x2131,0x2130,0x2930,0x2930,0x2950,0x2930,0x2930,0x3130,0x3150,0x3130,0x3130,0x292F,0x292F,0x292F,0x290F,0x30EE,0x288C,0x7A93,0xD4DC,0xD4BA,0xDCBA,0xDC99,0xDC99,0xD499,0xD479,0xD499,0xCC99,0xCC99,0xCCBA,0xC4DA,0xC51C,0xBD3D,0x5AB3,0x39D0,0x294F,0x2170,0x2990,0x2991,0x2991,0x3192,0x31B2,0x31B2,0x31B2,0x39B3,0x39B3,0x39B3,0x39D3,0x39D3,0x39D3,0x41D3,0x41D3,0x41D3,0x41B3,0x49D3,0x49D3,0x49D4,0x49D3,0x49D3,0x49B3,0x51B3,0x51B3,0x51B3,0x51B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x5993,0x5993,0x5992,0x5192,0x5192,0x5992,0x5171,0x5971,0x6191,0x71D2,0x8A94,0xAB37,0xBBD8,0xCC19,0xD419,0xCBF8,0xD3F8,0xD3D8,0xD3D8,0xD3B7,0xCB97,0xCB97,0xCB97,0xD397,0xD397,0xD396,0xCB96,0xCB96,0xD396,0xD376,0xD376,0xD376,0xD376,0xD376,0xD376,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD336,0xD336,0xD356,0xD356,0xD336,0xD336,0xD336,0xD336,0xD357,0xD357,0xD357,0xCB57,0xC337,0xB2D6,0x9234,0x7991,0x71B1,0x71B1,0xCC39,0xD499,0xD4B9,0xD4D9,0xD4B8,0xCCB8,0xD4B8,0xD4B8,0xCCB8,0xCCD9,0xBC98,0xA498,0x8D1B,0x755B,0x657B,0x5DDC,0x5E1D,0x5E1D,0x65DC,0x6D1B,0x7BF8,0x9BB8,0xA357,0xAB37,0xB316,0xBB16,0xB2D5,0xB2B5,0xA275,0x9A75,0x7A54,0x7316,0x6479,0x5D7B,0x45BC,0x35BC,0x2DDD,0x25DD,0x1DDD,0x1DBD,0x1DBD,0x1D9D,0x259E,0x2D7E,0x357E,0x3D7E,0x3D5E,0x453E,0x44FD,0x4CDD,0x54BC,0x549C,0x545B,0x5C5B,0x5C3A,0x6C3A,0x7C7B,0x8CBC,0x9CFC,0xACFC,0xB4FC,0xBCFC,0xC4FB,0xC4DB,0xC4DA,0xC4DA,0xCCDA,0xC4DA,0xC4DA,0xCCDA,0xC4DA,0xCCDA,0xCCBA,0xCCBA,0xCCBA,0xCCBA,0xCCBA,0xCCBA,0xCCDA,0xCCBA,0xCCDA,0xCCDA,0xCCDA,0xCCBA,0xCCDA,0xCCDA,0xC4D9,0xC4DA,0xBCDA,0xBCDA,0xBCDA,0xB4DA,0xACBA,0xA479,0xA49A,0xA49A,0xA4BA,0x9CBA,0x94DA,0x8CDA,0x8CFB,0x853B,0x7D7B,0x759B,0x75FC,0x763D,0x765D,0x767D,0x767D,0x765D,0x7E5D,0x863C,0x95FC,0xA57B,0xAC99,0xBBF7,0xCBF7,0xD3D7,0xD3D7,0xD3D7,0xDBD7,0xDBF8,0xD3F9,0xCC3D,0x82DB,0x3938,0x215A,0x197C,0x117C,0x097D,0x097D,0x119D,0x117D,0x195C,0x295B,0x3919,0x6979,0x921A,0x91F8,0x91F7,0x89F7,0x7A37,0x6A98,0x5319,0x3BBB,0x2C5D,0x1CDD,0x0D1D,0x0DBE,0x061F,0x069F,0x06FF,0x073F,0x077F,0x079F,0x07BF,0x07BF,0x07DF,0x079F,0x0F9F,0x179F,0x1F7F,0x2F1F,0x46BE,0x7EDF,0x5BD6,0x7252,0xA233,0xB1D3,0xC1B3,0xC193,0xC993,0xC9B3,0xC9B3,0xC173,0xC9B3,0xC9B3,0xC1B3,0xC1B3,0xB9F4,0xB1D4,0xAA35,0x7132,0x50F0,0x5152,0x5172,0x4972,0x4171,0x4171,0x4172,0x3971,0x3971,0x3951,0x3151,0x3151,0x3172,0x3152,0x3152,0x2931,0x2132,0x2153,0x2196,0x19D8,0x09D8,0x09D9,0x01F9,0x01D9,0x01DA,0x01DA,0x01B9,0x01DA,0x01B9,0x01D9,0x01F9,0x09F9,0x09D8,0x09B7,0x1196,0x0954,0x1154,0x0933,0x1133,0x1133,0x1132,0x1133,0x1132,0x1112,0x1932,0x1932,0x1932,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1912,0x1912,0x1912,0x1912,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1133,0x1952,0x1953,0x1953,0x1932,0x1932,0x1912,0x1912,0x1911,0x2111,0x2131,0x2111,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2150,0x2130,0x1930,0x1931,0x1931,0x1152,0x1153,0x1175,0x19D6,0x2238,0x19D7,0x0975,0x0954,0x0934,0x0933,0x0133,0x0933,0x0953,0x0953,0x1173,0x1994,0x1153,0x1132,0x1932,0x1931,0x2131,0x2110,0x2110,0x2130,0x2150,0x2130,0x212F,0x210F,0x212F,0x212F,0x2130,0x2150,0x2130,0x2151,0x1931,0x1911,0x1911,0x18F1,0x1911,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2972,0x2152,0x1911,0x1910,0x1911,0x1911,0x2151,0x2171,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x18F0,0x1911,0x1911,0x1911,0x1911,0x18F0,0x18F0,0x1910,0x1910,0x1910,0x2131,0x1931,0x10F0,0x1110,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1930,0x2130,0x2130,0x2951,0x2130,0x1910,0x2131,0x1931,0x2131,0x2130,0x2110,0x2110,0x2130,0x1931,0x1931,0x1931,0x1911,0x1910,0x1911,0x1911,0x2131,0x2131,0x2152,0x2131,0x1931,0x1910,0x1930,0x1910,0x1910,0x1930,0x18EF,0x1910,0x10EF,0x10F0,0x18F0,0x10D0,0x10D0,0x1911,0x2131,0x2131,0x2131,0x2131,0x1910,0x2130,0x2971,0x2130,0x190F,0x1910,0x1930,0x1910,0x1911,0x2152,0x2152,0x1911,0x1911,0x2151,0x2151,0x1931,0x2131,0x2152,0x2152,0x1910,0x1910,0x2151,0x2131,0x2151,0x1930,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x2130,0x1910,0x1910,0x2130,0x2130,0x2110,0x2110,0x210F,0x2930,0x2930,0x2930, + 0x2910,0x20EF,0x2910,0x2930,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2930,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2131,0x2131,0x2131,0x2131,0x1911,0x1911,0x1112,0x1112,0x1133,0x1154,0x1175,0x19B6,0x19D7,0x19F7,0x19F8,0x1A18,0x2238,0x2239,0x2238,0x19F7,0x21F7,0x19F7,0x19D6,0x1995,0x1974,0x1153,0x1153,0x1132,0x1112,0x1932,0x1931,0x2151,0x2151,0x1930,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x210F,0x212F,0x292F,0x292F,0x2930,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x210F,0x2130,0x210F,0x210F,0x2110,0x290F,0x210F,0x290F,0x290F,0x2110,0x2130,0x2130,0x2930,0x2110,0x2910,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x2930,0x212F,0x212F,0x212F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2110,0x212F,0x2930,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2930,0x212F,0x2130,0x212F,0x210F,0x2130,0x2130,0x2150,0x2131,0x1931,0x1111,0x1153,0x1154,0x1195,0x1196,0x11B7,0x09B8,0x09D8,0x09B9,0x09B9,0x09F9,0x09D9,0x09B9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01D9,0x09D9,0x09D9,0x09D9,0x09B9,0x09B9,0x09D9,0x09D9,0x01D9,0x09D9,0x09D9,0x01B9,0x09D9,0x01D9,0x01D9,0x09D9,0x01D9,0x01D9,0x01D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x09D9,0x09F9,0x09FA,0x09F9,0x01D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x09F9,0x01D8,0x09F8,0x09F9,0x01F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x01D8,0x01D9,0x09D9,0x09D9,0x09F9,0x09D9,0x09F9,0x09D9,0x09F9,0x09D9,0x01D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01B9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01D9,0x09B9,0x09D9,0x01B9,0x01B9,0x01B9,0x01D9,0x01D9,0x01D9,0x01B8,0x01B8,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x09D9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09D9,0x09F9,0x09D9,0x09FA,0x09D9,0x09F9,0x09F9,0x09FA,0x09FA,0x09F9,0x09FA,0x09FA,0x09FA,0x09FA,0x09DA,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09D9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09D9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09D9,0x09F9,0x09F9,0x09F9,0x09FA,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09FA,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09D9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09FA,0x09F9,0x09D9,0x09D9,0x09D9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09FA,0x09F9,0x09FA,0x09FA,0x09FA,0x09D9,0x09FA,0x09F9,0x11F9,0x11F9,0x11F9,0x19F8,0x19D7,0x21B5,0x1952,0x2131,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x3130,0x3130,0x312F,0x292F,0x292F,0x290F,0x30EE,0x30CD,0x61D1,0xDD3D,0xD4BA,0xD49A,0xD499,0xD479,0xD479,0xD479,0xD479,0xCC99,0xCC99,0xCCBA,0xCCFB,0xB4DB,0x7B76,0x290E,0x294F,0x2970,0x2970,0x2991,0x2991,0x3191,0x3192,0x3192,0x3192,0x39B2,0x39B2,0x39B3,0x39B3,0x39B3,0x39B3,0x39D3,0x39B3,0x41B3,0x41D3,0x41D3,0x49D3,0x49D3,0x49D3,0x49D3,0x49D3,0x49D3,0x51D3,0x51D3,0x51D3,0x51D3,0x51D3,0x51D3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x59B3,0x51B3,0x51B3,0x51B3,0x5192,0x5992,0x5992,0x5992,0x5971,0x5950,0x71F2,0x7A33,0x9AF5,0xB398,0xC3B8,0xCBF9,0xD3F8,0xD3D8,0xD3D8,0xD3D7,0xD3D7,0xD3B7,0xD3B7,0xD3B7,0xD397,0xD397,0xD397,0xD397,0xD396,0xD396,0xD376,0xD376,0xD376,0xD356,0xD376,0xD376,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xDB56,0xD356,0xD356,0xD356,0xD356,0xD337,0xD357,0xCB57,0xCB57,0xC357,0xB317,0x9A75,0x8A34,0x7191,0x6991,0x7191,0x9AD5,0xDCBB,0xD479,0xD499,0xD499,0xD498,0xD498,0xD498,0xD498,0xD498,0xCCB8,0xBC98,0xA498,0x8D1A,0x7D7B,0x5D7B,0x55DC,0x561D,0x5E1D,0x65DD,0x6D1B,0x7BF8,0x9BD8,0xA316,0xB2D6,0xBAD5,0xC2D6,0xC2B5,0xC295,0xBA95,0xB295,0x91F4,0x7A54,0x6377,0x6CFB,0x559C,0x45BC,0x359C,0x259C,0x259D,0x259D,0x2D9E,0x2D7D,0x355D,0x353E,0x3D1E,0x4CFD,0x54DD,0x64DC,0x853D,0x955D,0x9D5D,0x9D3D,0xA53D,0xAD3D,0xAD3C,0xB51C,0xB4FC,0xB4FC,0xBCDB,0xBCDB,0xC4DB,0xC4DB,0xCCBA,0xCCBA,0xCCBA,0xCCBA,0xCCBA,0xCCBA,0xCCBA,0xCCBA,0xCCBA,0xCC99,0xCC99,0xCC99,0xCC99,0xD499,0xD499,0xD499,0xD499,0xD4B9,0xD4B9,0xD4B9,0xD499,0xD4B9,0xD4B9,0xD4B9,0xD4B9,0xCC99,0xCCB9,0xCCB9,0xCCB9,0xC4B9,0xC499,0xC4B9,0xC4B9,0xC4B9,0xBCB9,0xBCB9,0xAC78,0xA459,0x9C58,0x9479,0x8C99,0x8CDA,0x84DA,0x853B,0x859B,0x85DC,0x85FC,0x85FC,0x8DFC,0x95DC,0x9D9B,0xAD1A,0xB499,0xBBF7,0xCBD7,0xD3B7,0xD3B7,0xDBB7,0xDBD7,0xDBD8,0xDBD9,0xD3FB,0xB3DD,0x59D8,0x2959,0x195B,0x117C,0x117D,0x119D,0x119D,0x119E,0x197D,0x215C,0x313A,0x5938,0x81FA,0x9219,0x9218,0x89F6,0x7A16,0x6A77,0x5B19,0x439A,0x343C,0x1C9D,0x0CFD,0x057E,0x061F,0x067F,0x06FF,0x073F,0x077F,0x07BF,0x07BF,0x07BF,0x07DF,0x079F,0x0F9F,0x179F,0x1F7F,0x273F,0x46FE,0x6EDF,0x6478,0x6A52,0x9A33,0xB1D3,0xB9B3,0xC193,0xC993,0xC993,0xC993,0xC993,0xC993,0xC9B3,0xC1B3,0xC1B3,0xB9F4,0xB1F4,0xAA35,0x7952,0x58F1,0x5952,0x5193,0x4972,0x4151,0x4171,0x3971,0x3971,0x3971,0x3971,0x3151,0x3151,0x3151,0x3152,0x3152,0x2932,0x2132,0x2154,0x21B6,0x19F8,0x1219,0x09FA,0x01D9,0x01DA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x09F9,0x09F8,0x11F8,0x11D7,0x09B5,0x1195,0x1195,0x1195,0x1995,0x1975,0x1995,0x1974,0x2194,0x1974,0x1974,0x1974,0x1974,0x1974,0x1994,0x1994,0x1994,0x1994,0x1994,0x1974,0x1974,0x1974,0x2174,0x2174,0x1974,0x1974,0x1974,0x2194,0x1994,0x1974,0x1995,0x1994,0x1994,0x1994,0x1974,0x1994,0x1994,0x1994,0x1995,0x1994,0x1994,0x19B5,0x1994,0x1974,0x1974,0x1953,0x1953,0x1932,0x2152,0x2131,0x2131,0x2111,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x2130,0x2950,0x210F,0x212F,0x2130,0x2130,0x2130,0x2150,0x2150,0x2131,0x1931,0x1131,0x1132,0x1154,0x1195,0x19D7,0x11D7,0x11B7,0x11D7,0x11D6,0x11D7,0x11D6,0x11F6,0x11F6,0x1A16,0x1A16,0x19D6,0x19B5,0x1174,0x1133,0x1953,0x1931,0x1911,0x2130,0x2130,0x2150,0x212F,0x212F,0x190F,0x212F,0x212F,0x2150,0x2150,0x2131,0x2151,0x1952,0x2173,0x2193,0x2153,0x1912,0x1931,0x1911,0x1911,0x1910,0x1931,0x1911,0x2993,0x2173,0x2132,0x2152,0x2993,0x2973,0x2172,0x2152,0x2172,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2110,0x2130,0x2130,0x1910,0x1910,0x1931,0x31F4,0x2993,0x29B3,0x31F4,0x29D4,0x2172,0x1931,0x1931,0x2152,0x1910,0x1910,0x1911,0x1911,0x1952,0x2193,0x21B3,0x21B3,0x29B4,0x29B4,0x2993,0x2173,0x1952,0x1952,0x2152,0x2131,0x1910,0x2130,0x2930,0x2151,0x2151,0x2152,0x2172,0x2152,0x2971,0x2110,0x2131,0x2151,0x2172,0x2173,0x2173,0x1972,0x1952,0x1931,0x1932,0x1952,0x2172,0x2193,0x2173,0x2152,0x1931,0x2151,0x2971,0x2992,0x29B2,0x29B2,0x31D3,0x29B3,0x3A35,0x3A35,0x31F4,0x2173,0x2152,0x2152,0x2131,0x1931,0x2131,0x1910,0x2151,0x2992,0x2130,0x190F,0x2130,0x1930,0x1910,0x1931,0x29D4,0x29B4,0x1932,0x1111,0x1932,0x1952,0x1931,0x1911,0x2152,0x2973,0x1910,0x1931,0x2131,0x2131,0x2151,0x1931,0x1910,0x1931,0x2972,0x2172,0x2972,0x2152,0x2151,0x2151,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x210F,0x210F,0x2910,0x290F, + 0x290F,0x2910,0x2910,0x2910,0x292F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x290F,0x210F,0x210F,0x210F,0x2910,0x2930,0x2130,0x2110,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2131,0x2131,0x1931,0x1911,0x1912,0x1132,0x1133,0x1133,0x1174,0x1154,0x1195,0x1995,0x1175,0x19B6,0x19B5,0x1995,0x1195,0x1154,0x1154,0x1133,0x1112,0x1132,0x1112,0x1912,0x1911,0x1911,0x1931,0x2151,0x2130,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2930,0x290F,0x290F,0x290F,0x290F,0x2130,0x2110,0x2130,0x2110,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x212F,0x210F,0x210F,0x212F,0x2930,0x290F,0x2930,0x212F,0x212F,0x2110,0x2110,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2110,0x2130,0x2130,0x2151,0x1911,0x1111,0x1133,0x1154,0x1175,0x11B7,0x11D8,0x09D9,0x09D9,0x09D9,0x09D9,0x09FA,0x09D9,0x09D9,0x01D9,0x09DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01DA,0x09DA,0x09D9,0x01D9,0x09DA,0x09D9,0x01D9,0x09DA,0x09DA,0x09DA,0x01DA,0x01D9,0x01DA,0x01DA,0x01D9,0x01D9,0x01DA,0x01D9,0x09F9,0x09FA,0x01DA,0x09DA,0x09DA,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09FA,0x09D9,0x09F9,0x09F9,0x01F9,0x01F9,0x01F9,0x01FA,0x01FA,0x09DA,0x09D9,0x09D9,0x09D9,0x09F9,0x01D9,0x01D9,0x01F9,0x01F9,0x09F9,0x01D9,0x01D9,0x01D9,0x01D9,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01D9,0x09D9,0x09F9,0x01D9,0x01D9,0x09F9,0x09D9,0x01D9,0x09D9,0x09FA,0x09FA,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01D9,0x09D9,0x09DA,0x09DA,0x09D9,0x09D9,0x01D9,0x09D9,0x09D9,0x09D9,0x09DA,0x09D9,0x09DA,0x09D9,0x09D9,0x09D9,0x01D9,0x01B9,0x09D9,0x09F9,0x01D9,0x01D9,0x01D9,0x01D9,0x09FA,0x09DA,0x09FA,0x09D9,0x09F9,0x09D9,0x09DA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09DA,0x09DA,0x09DA,0x09DA,0x09FA,0x09FA,0x09FA,0x09DA,0x09DA,0x09FA,0x09FA,0x09DA,0x09DA,0x09FA,0x09FA,0x09DA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09F9,0x09F9,0x09FA,0x09FA,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09FA,0x09FA,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09F9,0x09F9,0x09FA,0x09FA,0x09F9,0x09F9,0x09FA,0x09FA,0x09F9,0x09F9,0x09D9,0x09FA,0x09FA,0x09FA,0x09DA,0x09DA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09F9,0x09F9,0x09D9,0x09FA,0x09F9,0x09F9,0x09D9,0x09DA,0x09D9,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x11F9,0x11F9,0x19F8,0x19D7,0x21B5,0x2173,0x2151,0x2131,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x292F,0x290F,0x290F,0x290E,0x30EE,0x412E,0xBC9B,0xD4BB,0xD49A,0xD499,0xD499,0xD479,0xD479,0xD479,0xCC99,0xCCBA,0xCCBA,0xC4FB,0x93B7,0x416F,0x312F,0x2950,0x2971,0x3171,0x3171,0x3191,0x3191,0x3192,0x3192,0x3992,0x3992,0x39B3,0x39B2,0x39B3,0x39B3,0x41B3,0x41B3,0x41B3,0x41B3,0x41B3,0x41B3,0x41B3,0x41B3,0x49D3,0x49D3,0x49D3,0x49D3,0x49D3,0x49D3,0x49D3,0x49B3,0x51D3,0x51D3,0x51D3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B2,0x5192,0x5192,0x5171,0x5971,0x5970,0x69B1,0x8233,0x9AD5,0xBB98,0xD43A,0xD3F9,0xD3F8,0xD3F8,0xD3F8,0xD3D8,0xD3D8,0xD3B7,0xD397,0xD397,0xD377,0xD397,0xD377,0xDB97,0xDB97,0xD377,0xD376,0xD376,0xD376,0xD376,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD356,0xD357,0xCB57,0xCB57,0xC357,0xBB37,0xAAD6,0x81D2,0x79D3,0x71B2,0x6992,0x6991,0x7191,0xBBD8,0xDCBA,0xDC99,0xDC99,0xD478,0xD457,0xD457,0xD477,0xD478,0xD498,0xCC98,0xBC98,0xA498,0x8D1A,0x755B,0x5D9B,0x5DFD,0x561D,0x5E1D,0x65BC,0x6D1B,0x7BF8,0xA3D8,0xAB16,0xB2B5,0xBA95,0xC254,0xC254,0xC274,0xC275,0xBA75,0xA1F4,0x81F4,0x6A95,0x6C39,0x655C,0x4D9C,0x459C,0x357C,0x357C,0x357D,0x355D,0x455D,0x451D,0x4CFD,0x5CDD,0x64DC,0x74DC,0x8CFC,0xA53D,0xAD1C,0xB51B,0xBD1B,0xBCFB,0xBCFB,0xBCDA,0xC4DA,0xC4DA,0xC4BA,0xCCDA,0xCCBA,0xCCBA,0xCC9A,0xCC99,0xCC99,0xD499,0xD499,0xD499,0xD499,0xD499,0xD499,0xD499,0xD499,0xD479,0xD479,0xD499,0xD479,0xD499,0xD478,0xD499,0xD499,0xD499,0xD478,0xDC99,0xDC98,0xDC98,0xD498,0xD498,0xD498,0xD498,0xD498,0xD498,0xD478,0xD478,0xCC78,0xCC78,0xCC98,0xCC78,0xCC78,0xC458,0xBC58,0xB458,0xAC59,0xA479,0xA479,0x9C79,0x9499,0x94D9,0x8CD9,0x951A,0x953B,0x9D5B,0xA53A,0xA4D9,0xB4B9,0xBC58,0xC3F7,0xCBD7,0xD3B7,0xD3B7,0xDBB7,0xDBB7,0xDBB7,0xDBD8,0xD3DA,0xC3FD,0x7259,0x3159,0x215B,0x197C,0x117D,0x119D,0x119E,0x119E,0x197D,0x217C,0x313A,0x4918,0x79FA,0x9239,0x9A38,0x81D6,0x79F6,0x6A77,0x6319,0x437A,0x33FC,0x24BD,0x14DD,0x0D7E,0x05DF,0x067F,0x06DF,0x073F,0x077F,0x079F,0x07BF,0x07DF,0x07DF,0x079F,0x0F9F,0x0F9F,0x1F9F,0x277F,0x371E,0x5EDF,0x755B,0x6A92,0x9212,0xA9D3,0xB9B3,0xC193,0xC9B3,0xC993,0xC973,0xC993,0xC993,0xC993,0xC9B3,0xC1B3,0xB9D3,0xB1F4,0xAA35,0x81B3,0x50D0,0x5152,0x5172,0x4992,0x4171,0x4192,0x3972,0x3971,0x3151,0x3971,0x3171,0x3151,0x3151,0x3172,0x3152,0x2932,0x2112,0x1934,0x21B6,0x11D8,0x1219,0x09FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x09F9,0x09F9,0x1219,0x1A38,0x1A38,0x2238,0x2238,0x2238,0x2A38,0x2A38,0x2A38,0x2A37,0x3237,0x3217,0x3237,0x3237,0x3237,0x3237,0x3237,0x2A37,0x3258,0x2A57,0x3258,0x3237,0x3237,0x3237,0x3238,0x3237,0x3238,0x3258,0x3238,0x3237,0x3237,0x3237,0x3258,0x2A37,0x3237,0x3237,0x3237,0x2A37,0x2A37,0x2A17,0x2A37,0x2A17,0x2A37,0x2217,0x2A17,0x2217,0x21F6,0x21B5,0x1974,0x1953,0x1932,0x1932,0x1912,0x2111,0x2131,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2950,0x2130,0x212F,0x2130,0x2130,0x2130,0x2950,0x2130,0x2130,0x1930,0x1931,0x1132,0x1133,0x1154,0x1195,0x11B7,0x19D7,0x2239,0x2259,0x2238,0x19F7,0x1217,0x1217,0x1A17,0x1A17,0x1A38,0x2217,0x19D6,0x19B5,0x1973,0x1952,0x1911,0x1910,0x2130,0x2130,0x2150,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x2152,0x1952,0x29B4,0x3216,0x31F5,0x1953,0x1932,0x1931,0x1911,0x1911,0x1931,0x1931,0x2193,0x29B4,0x2173,0x2993,0x29B3,0x2193,0x2193,0x2172,0x2172,0x2152,0x2151,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x1910,0x2172,0x3215,0x21B3,0x2173,0x2193,0x2173,0x1952,0x2173,0x2173,0x2993,0x2131,0x1931,0x1911,0x1931,0x2193,0x21B4,0x21B4,0x2193,0x2193,0x2173,0x2173,0x2173,0x1973,0x2193,0x2152,0x1931,0x1910,0x2130,0x18F0,0x1910,0x2172,0x2193,0x1952,0x1931,0x1931,0x18F0,0x1910,0x2152,0x21B3,0x2193,0x1973,0x2193,0x1952,0x1111,0x1111,0x1932,0x2173,0x2193,0x2152,0x1911,0x1110,0x1910,0x1910,0x1930,0x2151,0x2151,0x2172,0x2172,0x29D4,0x29B3,0x2173,0x1932,0x1931,0x1931,0x1911,0x1911,0x1931,0x1910,0x2151,0x2992,0x2150,0x190F,0x1910,0x1910,0x1931,0x1931,0x29D4,0x3215,0x29D4,0x1932,0x1932,0x1932,0x1932,0x1111,0x2173,0x29B3,0x1931,0x2131,0x2131,0x1911,0x1911,0x1931,0x2152,0x29B3,0x29B3,0x2993,0x29B3,0x29B3,0x31B3,0x31B3,0x31B3,0x2993,0x2992,0x2971,0x2131,0x2130,0x2130,0x2110,0x210F,0x210F, + 0x290F,0x290F,0x2910,0x2110,0x210F,0x212F,0x212F,0x212F,0x210F,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x290F,0x292F,0x290F,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2131,0x2131,0x2131,0x2131,0x1931,0x1911,0x1912,0x1932,0x1912,0x1932,0x1133,0x1112,0x1112,0x1132,0x1132,0x1112,0x1112,0x1132,0x1132,0x1932,0x1932,0x1932,0x1931,0x1911,0x1911,0x1931,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2910,0x210F,0x2930,0x290F,0x290F,0x290F,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x2930,0x2930,0x2930,0x2131,0x2131,0x1932,0x1953,0x1154,0x1196,0x11D7,0x11D8,0x11F9,0x09F9,0x09FA,0x09F9,0x09D9,0x01D9,0x09DA,0x09FA,0x09FA,0x01D9,0x09DA,0x09FA,0x09DA,0x01DA,0x01DA,0x09DA,0x01D9,0x01D9,0x09DA,0x09DA,0x01DA,0x09DA,0x09FA,0x01DA,0x09DA,0x09FA,0x01DA,0x01DA,0x09FA,0x09FA,0x01DA,0x09DA,0x01D9,0x09FA,0x09DA,0x09DA,0x09FA,0x09D9,0x09D9,0x09FA,0x01D9,0x01D9,0x09FA,0x01DA,0x01F9,0x09FA,0x01FA,0x01D9,0x01FA,0x09FA,0x01D9,0x09D9,0x09D9,0x01D9,0x09D9,0x09D9,0x09D9,0x09F9,0x01D9,0x01D9,0x09F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x09DA,0x01D9,0x09D9,0x01D9,0x09D9,0x09D9,0x09D9,0x01D9,0x09D9,0x01D9,0x01D9,0x09FA,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09DA,0x09D9,0x09B9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01D9,0x09D9,0x09D9,0x01D9,0x01D9,0x09DA,0x01B9,0x09DA,0x09D9,0x09DA,0x09D9,0x09D9,0x09DA,0x01D9,0x01D9,0x01D9,0x01D9,0x09FA,0x09FA,0x01DA,0x01D9,0x09D9,0x09F9,0x09FA,0x09DA,0x09FA,0x09D9,0x09DA,0x09FA,0x09DA,0x09DA,0x09DA,0x09FA,0x09DA,0x09DA,0x09DA,0x09FA,0x09DA,0x09DA,0x09FA,0x09DA,0x09DA,0x09DA,0x09DA,0x09DA,0x09DA,0x09FA,0x09DA,0x09FA,0x09DA,0x09DA,0x09FA,0x09FA,0x09DA,0x09FA,0x09FA,0x09FA,0x09D9,0x09FA,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09F9,0x09F9,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09F9,0x09D9,0x09FA,0x09F9,0x09FA,0x09D9,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09DA,0x09DA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09DA,0x09DA,0x09DA,0x09DA,0x09DA,0x09DA,0x09FA,0x09DA,0x09FA,0x09D9,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09F9,0x11F9,0x11F9,0x19F8,0x19D7,0x19B5,0x2173,0x2151,0x2131,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x290E,0x28EE,0x30AC,0xABF9,0xD4DB,0xD49A,0xD49A,0xD499,0xDC99,0xD499,0xD499,0xD499,0xCC9A,0xCCDB,0xBC9B,0x72B4,0x310E,0x312F,0x3150,0x2951,0x3171,0x3171,0x3171,0x3192,0x3192,0x3992,0x3992,0x3992,0x3992,0x39B2,0x41B2,0x41B2,0x41B3,0x41B3,0x41B3,0x41B3,0x41B3,0x41B3,0x41B3,0x41B3,0x41B3,0x41B3,0x41B3,0x41B3,0x49B3,0x4192,0x41B3,0x49B3,0x49B3,0x51D3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x51D3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B2,0x5192,0x5192,0x5172,0x5171,0x5171,0x5150,0x5950,0x512F,0x6170,0x9AD5,0xB377,0xC3D9,0xCC19,0xD3F9,0xD3D8,0xD3B8,0xDBB7,0xDBB7,0xD397,0xD397,0xD397,0xD397,0xDB97,0xD397,0xD397,0xD397,0xD377,0xD376,0xD376,0xD376,0xD376,0xD376,0xD376,0xD356,0xD356,0xDB77,0xD356,0xD357,0xD357,0xD357,0xD357,0xD357,0xD357,0xD357,0xCB57,0xC357,0xBB58,0xAAF7,0x8213,0x6991,0x71D3,0x69B3,0x69B2,0x6192,0x6171,0x8A53,0xD47A,0xDC9A,0xDC99,0xDC78,0xDC58,0xDC57,0xDC57,0xDC57,0xD457,0xCC57,0xC477,0xB477,0x9C98,0x84F9,0x6D3A,0x5DBC,0x55FD,0x55FD,0x55FC,0x5D9C,0x6D1B,0x7C18,0xA3D8,0xAAF6,0xBA95,0xC254,0xC214,0xC213,0xCA14,0xCA34,0xC255,0xB215,0x91F4,0x7A35,0x6B37,0x751C,0x5D9C,0x559D,0x4D9C,0x457C,0x457D,0x4D3D,0x5D3D,0x85DF,0x8D7E,0x851C,0x94FC,0x9D1C,0xAD1C,0xB4FB,0xBCFB,0xBCFB,0xC4FB,0xC4DA,0xC4DA,0xC4DA,0xCCBA,0xCCBA,0xCCBA,0xCCBA,0xCC9A,0xD49A,0xD49A,0xD499,0xD499,0xD499,0xD499,0xD499,0xD499,0xD499,0xD479,0xD479,0xD479,0xD478,0xD478,0xD478,0xD478,0xD478,0xD478,0xD458,0xDC78,0xDC78,0xDC78,0xDC78,0xDC98,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xD478,0xD457,0xD477,0xD477,0xD457,0xCC58,0xCC58,0xCC58,0xC478,0xC478,0xBC98,0xBC99,0xB499,0xAC99,0xAC58,0xA458,0xA438,0xA438,0xAC18,0xAC17,0xB418,0xBC38,0xCC58,0xCBF7,0xD3B7,0xD3B6,0xDBB6,0xDBB6,0xDBB7,0xDBB7,0xDBB8,0xD3D9,0xCBFC,0xABBD,0x3937,0x215A,0x197C,0x119D,0x119D,0x099D,0x117D,0x117D,0x217C,0x315B,0x4118,0x71BA,0x925A,0x9A59,0x81D7,0x79F6,0x6A78,0x631A,0x433A,0x33DC,0x245D,0x14DD,0x0D5E,0x05DE,0x065F,0x06DF,0x073F,0x077F,0x0FBF,0x07BF,0x07DF,0x07DF,0x079F,0x0FBF,0x077F,0x179F,0x1F7F,0x373E,0x56FF,0x865E,0x62B2,0x8A12,0xA9F3,0xB9B3,0xC193,0xC9B3,0xC973,0xC973,0xC993,0xC993,0xC9B3,0xC9B4,0xC1B3,0xB9D3,0xB1D4,0xAA35,0x89D4,0x58F1,0x5132,0x5172,0x4972,0x4192,0x4192,0x3972,0x3971,0x3971,0x3971,0x3151,0x3151,0x3151,0x3172,0x3172,0x2932,0x2132,0x2134,0x2196,0x19F8,0x09D9,0x01B9,0x01BA,0x01DA,0x01DA,0x01BA,0x01BA,0x01DA,0x01DA,0x01DA,0x01D9,0x09D9,0x09B8,0x09D8,0x11F7,0x1A17,0x1A37,0x2238,0x2238,0x2A58,0x2A38,0x2A38,0x3258,0x2A17,0x29F7,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A17,0x2A38,0x2A37,0x2A37,0x2A37,0x2A37,0x3237,0x3237,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x29F6,0x29F7,0x29F7,0x29F7,0x2A17,0x2A17,0x2217,0x2237,0x2217,0x21F6,0x19B5,0x1174,0x1133,0x10F2,0x1912,0x1911,0x2131,0x2131,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1930,0x1932,0x1132,0x1154,0x1155,0x19B7,0x11D7,0x19F8,0x11D7,0x0996,0x0975,0x0155,0x0995,0x11D6,0x19F7,0x1A18,0x1A38,0x2238,0x21F7,0x1994,0x1132,0x1111,0x1931,0x1930,0x2130,0x2130,0x2130,0x210F,0x212F,0x2150,0x2150,0x2130,0x2131,0x2152,0x2152,0x1932,0x1932,0x1933,0x1932,0x1932,0x1932,0x1931,0x1931,0x1952,0x1952,0x29D4,0x2193,0x1932,0x1931,0x1911,0x1931,0x2172,0x2193,0x2173,0x2172,0x2172,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x2151,0x1931,0x2193,0x1973,0x1952,0x1932,0x1112,0x1932,0x1932,0x1932,0x1952,0x2193,0x2152,0x1931,0x2152,0x1952,0x1953,0x1953,0x1132,0x1132,0x1112,0x1111,0x1111,0x1932,0x1973,0x2194,0x2194,0x2173,0x2131,0x2110,0x18F0,0x18F0,0x2193,0x2194,0x2173,0x1932,0x1911,0x18F0,0x1911,0x2152,0x21B4,0x2194,0x1994,0x1974,0x1953,0x1132,0x1112,0x1952,0x2194,0x2193,0x2173,0x1931,0x1910,0x1910,0x1930,0x1930,0x1930,0x1930,0x1931,0x2152,0x2193,0x1952,0x1912,0x1932,0x1932,0x1931,0x1911,0x1911,0x1911,0x1910,0x2151,0x2992,0x2150,0x1910,0x1910,0x1930,0x1931,0x1932,0x21B4,0x29F5,0x29D5,0x1953,0x1932,0x1932,0x1932,0x1112,0x2193,0x29B4,0x1932,0x1931,0x1931,0x1931,0x1931,0x1932,0x31D4,0x2173,0x1911,0x1931,0x2152,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2930,0x2930,0x2930, + 0x292F,0x290F,0x210F,0x2110,0x212F,0x212F,0x210F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2910,0x210F,0x290F,0x210F,0x2130,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2151,0x2131,0x2131,0x2131,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1910,0x2131,0x2130,0x2130,0x2110,0x2130,0x210F,0x2110,0x2130,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x210F,0x2910,0x2910,0x290F,0x2930,0x290F,0x290F,0x2930,0x212F,0x290F,0x290F,0x210F,0x212F,0x210F,0x2130,0x2130,0x210F,0x212F,0x292F,0x212F,0x212F,0x2930,0x290F,0x290F,0x292F,0x210F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2131,0x2131,0x1931,0x1132,0x1154,0x1195,0x11B7,0x11F8,0x09F9,0x09F9,0x09F9,0x09FA,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01B9,0x09D9,0x09D9,0x01D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09FA,0x09F9,0x09D9,0x09F9,0x09F9,0x09D9,0x09FA,0x09F9,0x09D9,0x09F9,0x09F9,0x09D9,0x09D9,0x09F9,0x09F9,0x09F9,0x09D9,0x09F9,0x09F9,0x09D9,0x09FA,0x09F9,0x09D9,0x09D9,0x09F9,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x09D9,0x09D9,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09B9,0x09B9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x09D9,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x11F9,0x09F9,0x11F9,0x09F9,0x09F9,0x09F9,0x09D9,0x09FA,0x09DA,0x09F9,0x09F9,0x09FA,0x09FA,0x09FA,0x09FA,0x09D9,0x09F9,0x09F9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09D9,0x09F9,0x09D9,0x09FA,0x09FA,0x09F9,0x09F9,0x09FA,0x09FA,0x09F9,0x09F9,0x09F9,0x09F9,0x09D9,0x09D9,0x09F9,0x09D9,0x09D9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x11F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09FA,0x09F9,0x09FA,0x09F9,0x09F9,0x09FA,0x09FA,0x09FA,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09D9,0x09F9,0x09FA,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09D9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09FA,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x09F9,0x11FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09FA,0x09D9,0x09FA,0x09FA,0x09FA,0x09F9,0x09F9,0x09FA,0x09D9,0x09FA,0x09F9,0x09F9,0x09FA,0x09F9,0x09F9,0x11FA,0x11FA,0x11FA,0x11F9,0x11F9,0x11F9,0x11F8,0x19F8,0x19D6,0x1994,0x1952,0x2131,0x2151,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x292F,0x28EE,0x28CD,0x7AD4,0xD4FC,0xD4BB,0xDCBA,0xDCBA,0xDCBA,0xD4BA,0xD4BA,0xD4BA,0xCCDB,0xCCFC,0x82F5,0x496F,0x310E,0x292F,0x2950,0x3171,0x3171,0x3171,0x3171,0x3192,0x3171,0x3992,0x3992,0x3992,0x39B2,0x3992,0x3992,0x3992,0x4192,0x41B2,0x41B2,0x41B2,0x41B3,0x41B3,0x41B3,0x41B3,0x41B2,0x41B2,0x4192,0x41B3,0x41B3,0x41B2,0x41B3,0x41B3,0x4192,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x51B3,0x51B3,0x51B3,0x51B2,0x5192,0x5192,0x5192,0x5192,0x5192,0x5172,0x5172,0x5171,0x5151,0x5150,0x592F,0x6990,0x79D1,0xA2D5,0xC3D9,0xDC3A,0xD3F9,0xD3D8,0xD3B8,0xD3B8,0xD398,0xD397,0xD397,0xD397,0xD397,0xD377,0xD377,0xD397,0xD397,0xD377,0xD397,0xD397,0xD377,0xD377,0xDB97,0xDB97,0xDB97,0xDB97,0xD377,0xD398,0xD398,0xD378,0xCB77,0xCB77,0xC398,0xB317,0x79D2,0x6991,0x6171,0x61B2,0x61D3,0x69B3,0x61B2,0x6191,0x6150,0xB397,0xD459,0xDC79,0xDC78,0xDC58,0xDC58,0xDC58,0xDC37,0xDC37,0xD457,0xCC37,0xC457,0xAC57,0x9478,0x74F9,0x657B,0x5DDC,0x55FD,0x561D,0x55DC,0x5D9C,0x751B,0x8418,0x9B97,0xAAD6,0xBA75,0xC234,0xC214,0xC9F3,0xC9F3,0xCA14,0xC215,0xBA15,0xA1F4,0x81F5,0x6A95,0x74BB,0x653C,0x5D7C,0x5D9D,0x5D7D,0x553C,0x5CFC,0x6CDC,0x851C,0x9D3D,0xA51C,0xA4DB,0xB4FB,0xB4DB,0xBCDA,0xBCDA,0xC4DA,0xC4DA,0xCCDA,0xCCDA,0xCCBA,0xCCBA,0xCCBA,0xD4BA,0xD4BA,0xD49A,0xD49A,0xD499,0xD499,0xD499,0xD499,0xD499,0xD499,0xD499,0xDC99,0xDC99,0xDC99,0xDC99,0xDC79,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC58,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xD457,0xD437,0xD437,0xD437,0xD437,0xCC37,0xCC37,0xCC57,0xC457,0xC478,0xC458,0xBC58,0xBC38,0xBBF8,0xBBF8,0xBBD7,0xBBD7,0xC3D7,0xC3D7,0xC3F7,0xD418,0xD3D7,0xD3B6,0xD396,0xDB96,0xDB96,0xDB96,0xDBB7,0xDBB7,0xD3B9,0xD3FA,0xC43E,0x4978,0x2139,0x197B,0x117C,0x097D,0x099D,0x097D,0x117D,0x197D,0x295B,0x3919,0x619A,0x925B,0x9A59,0x81D7,0x71D7,0x6A78,0x631A,0x4B1A,0x339B,0x2C5D,0x14BD,0x0D5E,0x05BE,0x065F,0x06BF,0x073F,0x075F,0x0FBF,0x07BF,0x07DF,0x07DF,0x07BF,0x079F,0x0F9F,0x179F,0x1F9F,0x2F3E,0x4EFE,0x86BF,0x62F3,0x8212,0xA1F3,0xB1B3,0xC1B3,0xC993,0xC993,0xC993,0xC993,0xC993,0xC993,0xC9B4,0xC1D4,0xC1F4,0xB1D4,0xAA35,0x89D4,0x58F1,0x5132,0x5173,0x5192,0x4172,0x4172,0x3971,0x3971,0x3972,0x3971,0x3951,0x3971,0x3131,0x3172,0x3172,0x2912,0x2132,0x2134,0x2196,0x19D8,0x09B8,0x09B9,0x09DA,0x01DA,0x01BA,0x01BA,0x01BA,0x01DA,0x01DA,0x01D9,0x01B9,0x01B8,0x09B8,0x09B7,0x09D6,0x09B6,0x11B5,0x11B5,0x11B5,0x11B5,0x1995,0x1995,0x1995,0x1995,0x2195,0x1975,0x1995,0x1995,0x1995,0x1995,0x1995,0x1995,0x19B5,0x1995,0x1995,0x1994,0x1995,0x1995,0x1995,0x19B5,0x19B5,0x1995,0x1995,0x19B5,0x1995,0x1994,0x1995,0x1995,0x1995,0x1995,0x1994,0x1994,0x1974,0x1974,0x1995,0x1975,0x1995,0x1995,0x19B6,0x2217,0x2238,0x2217,0x2217,0x21D6,0x1974,0x1953,0x1932,0x1911,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2930,0x2110,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x1931,0x1932,0x1133,0x1154,0x1176,0x19D7,0x11D7,0x11B7,0x0976,0x0155,0x0955,0x0955,0x0955,0x0975,0x09B6,0x11D7,0x1A18,0x2217,0x19D6,0x1153,0x1132,0x1931,0x2151,0x2151,0x2130,0x2130,0x210F,0x212F,0x2950,0x2130,0x2130,0x2131,0x2131,0x2132,0x2153,0x2173,0x1933,0x1932,0x1932,0x1952,0x1931,0x1952,0x1952,0x1132,0x21B4,0x21B3,0x1952,0x1931,0x1931,0x1931,0x1932,0x1972,0x2172,0x2152,0x2172,0x2131,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1931,0x2193,0x1973,0x1112,0x1112,0x1912,0x1112,0x1932,0x1952,0x1973,0x2193,0x1931,0x1911,0x1932,0x1952,0x1953,0x1953,0x1974,0x1133,0x1932,0x1112,0x1912,0x1932,0x1953,0x1994,0x1974,0x1953,0x2152,0x1910,0x18F0,0x1911,0x2173,0x2173,0x1953,0x1952,0x1931,0x18F0,0x1911,0x2152,0x2193,0x21B4,0x2194,0x1973,0x1953,0x1132,0x1112,0x1933,0x1973,0x2173,0x2173,0x1931,0x1911,0x1931,0x2131,0x1930,0x2150,0x1930,0x1931,0x1951,0x2193,0x1953,0x1932,0x1932,0x1932,0x1911,0x1931,0x1911,0x1931,0x1910,0x2151,0x2992,0x2150,0x1930,0x2130,0x1931,0x1931,0x1932,0x1973,0x21B5,0x21B4,0x1953,0x1953,0x1132,0x1112,0x1112,0x2194,0x2194,0x1111,0x1931,0x1931,0x1911,0x1931,0x1932,0x29B4,0x2153,0x1931,0x1931,0x1931,0x1932,0x1932,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930, + 0x290F,0x210F,0x290F,0x210F,0x212F,0x212F,0x2110,0x2910,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x20EF,0x210F,0x290F,0x290F,0x2930,0x2130,0x210F,0x210F,0x2130,0x212F,0x2930,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x2111,0x2111,0x2111,0x2110,0x2131,0x2131,0x1930,0x1930,0x2130,0x2130,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x292F,0x290F,0x210F,0x210F,0x2930,0x2930,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x212F,0x212F,0x2930,0x210F,0x292F,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2930,0x2930,0x210F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2910,0x2910,0x2930,0x212F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2130,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2930,0x212F,0x212F,0x2130,0x2130,0x212F,0x292F,0x212F,0x2130,0x2930,0x2930,0x2131,0x2151,0x10F1,0x1112,0x1154,0x1196,0x11B7,0x11F8,0x09D8,0x09F9,0x09D9,0x01B9,0x01B9,0x01B8,0x01B8,0x01B8,0x11F9,0x11F9,0x09F9,0x11F9,0x11F9,0x09D9,0x11F9,0x11F9,0x1219,0x1219,0x1219,0x11F9,0x11F9,0x1219,0x1219,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x09D8,0x11F9,0x09D8,0x11F9,0x09D8,0x11F9,0x11D9,0x11D9,0x11F9,0x11F9,0x11F9,0x11F9,0x09F9,0x09F9,0x09F9,0x09F9,0x11F9,0x11F9,0x09F9,0x09D9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11D9,0x11D9,0x11F9,0x11D9,0x11F9,0x11F9,0x11D8,0x11F9,0x09F9,0x09F9,0x0A19,0x09F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11D9,0x11F9,0x1219,0x11F9,0x11F9,0x1219,0x1219,0x11F9,0x11F9,0x11F9,0x11F9,0x1219,0x1219,0x11F9,0x11F9,0x11F9,0x11F9,0x1219,0x11F9,0x11F9,0x1219,0x11F9,0x11F9,0x1219,0x11F9,0x11F9,0x1219,0x11F9,0x11F9,0x1219,0x11F9,0x11F9,0x11F9,0x1219,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x09F8,0x11F8,0x11F9,0x11F9,0x11F9,0x11D8,0x11F8,0x11F9,0x11F8,0x11F9,0x11F9,0x11D9,0x11F9,0x11F9,0x11F9,0x11F9,0x09D9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11D9,0x11D9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x1219,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x1219,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11D9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F9,0x11F8,0x11F8,0x19F8,0x19D7,0x21B5,0x1953,0x1931,0x2131,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x290F,0x290E,0x30EE,0x496F,0xBC7B,0xD4BB,0xDCBB,0xDCBB,0xDCBA,0xD4BA,0xD4BA,0xD4BB,0xC49B,0x8B36,0x38ED,0x30EE,0x310F,0x3130,0x3150,0x3151,0x3171,0x3171,0x3171,0x3991,0x3992,0x3992,0x3992,0x3992,0x3992,0x4192,0x3992,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x41B2,0x41B2,0x41B2,0x49B3,0x41B3,0x41B2,0x49B3,0x41B3,0x49B3,0x41B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x4192,0x4993,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49B3,0x49D3,0x49B3,0x49B3,0x49B3,0x49B3,0x51B3,0x51B3,0x49B2,0x49B2,0x4992,0x4992,0x4992,0x4992,0x4992,0x4972,0x4972,0x5172,0x5171,0x5171,0x5151,0x5150,0x510F,0x50EF,0x590F,0x8213,0xA317,0xB378,0xC3B9,0xCBD9,0xCBD9,0xCBB8,0xCBB8,0xD3B8,0xD397,0xD397,0xD397,0xD397,0xD397,0xD397,0xD397,0xD398,0xD397,0xD398,0xD398,0xD398,0xD398,0xCB98,0xCB98,0xC398,0xBB78,0xB337,0x9AD6,0x79F2,0x6150,0x6171,0x5972,0x5992,0x59B2,0x61B3,0x61B3,0x6192,0x6171,0x71B1,0xCC39,0xDC59,0xDC79,0xDC78,0xDC58,0xE458,0xE458,0xE457,0xDC37,0xD457,0xCC37,0xB437,0xA458,0x8CB9,0x6D1A,0x5D9C,0x55DD,0x4DFD,0x4DFD,0x55DC,0x5D7C,0x751B,0x83D8,0x9B16,0xAA75,0xBA55,0xC234,0xCA34,0xCA14,0xC9F4,0xC9F4,0xC1D4,0xB1D4,0xA1F4,0x9235,0x7AB6,0x84BB,0x753C,0x6D5C,0x6D7D,0x6D7D,0x757D,0x7D3D,0x853D,0x9D3D,0xAD5D,0xAD1C,0xBD1C,0xBD1C,0xC4FB,0xC4FB,0xC4DB,0xCCDB,0xCCDB,0xCCDB,0xCCBA,0xD4BA,0xD4BA,0xD4BA,0xD4BA,0xD4BA,0xD4BA,0xD4BA,0xDCBA,0xD49A,0xDC99,0xDC99,0xD499,0xD499,0xDC99,0xDC99,0xDC99,0xDC99,0xDC99,0xDC99,0xDC99,0xDC98,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC78,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xD437,0xD437,0xD437,0xD437,0xD417,0xD437,0xD437,0xD437,0xCC37,0xCC37,0xCC37,0xCC37,0xCC17,0xC417,0xC417,0xC3F7,0xCBF7,0xCBF7,0xCBD7,0xCBD7,0xCBD7,0xD3F7,0xD3D7,0xD3B6,0xD396,0xD396,0xDB96,0xDB96,0xDBB7,0xDB97,0xDBB8,0xD3DA,0xCC1D,0x727A,0x3159,0x215B,0x117C,0x097D,0x097D,0x097D,0x117D,0x197D,0x297C,0x391A,0x5138,0x927B,0x925A,0x81F8,0x71F7,0x6A78,0x6B1A,0x4B1A,0x337B,0x241C,0x149D,0x0D1E,0x05BE,0x065F,0x06BF,0x071F,0x075F,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07BF,0x079F,0x0F9F,0x17BF,0x177F,0x2F5F,0x46FE,0x86FF,0x6354,0x71D1,0x99F2,0xB1D3,0xC1D4,0xC9B3,0xC993,0xC993,0xC993,0xC993,0xC993,0xC993,0xC1B3,0xB9D3,0xB9F4,0xB235,0x91F4,0x58F1,0x5111,0x5172,0x4992,0x4992,0x4171,0x3971,0x3971,0x3971,0x3971,0x3951,0x3151,0x3151,0x3152,0x3172,0x2932,0x2132,0x2133,0x2196,0x19F8,0x11F9,0x09B9,0x09DA,0x01DA,0x09FA,0x01BA,0x01BA,0x01BA,0x09DA,0x09D9,0x09D9,0x11F9,0x11D8,0x11D7,0x0975,0x0954,0x0933,0x0933,0x0933,0x0932,0x1133,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1113,0x1112,0x1113,0x1133,0x1133,0x1133,0x1133,0x1112,0x1132,0x1112,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1112,0x10F2,0x1132,0x1112,0x1132,0x1112,0x1133,0x1113,0x08F2,0x0913,0x0933,0x1154,0x19D6,0x21F7,0x2217,0x21F6,0x1995,0x1153,0x1933,0x1911,0x2111,0x2131,0x2931,0x2930,0x2110,0x2110,0x2930,0x2930,0x2910,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1132,0x1154,0x1155,0x1196,0x11B7,0x11B7,0x1197,0x0976,0x0955,0x0934,0x0934,0x0955,0x0975,0x0996,0x11D7,0x19F7,0x21F7,0x1174,0x1112,0x1932,0x2152,0x2151,0x2130,0x2130,0x210F,0x2130,0x2950,0x2130,0x2110,0x2110,0x2131,0x1932,0x2153,0x2173,0x2174,0x2174,0x2173,0x1932,0x1932,0x1932,0x1952,0x1132,0x1993,0x2193,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1952,0x2173,0x2172,0x2152,0x2131,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x2173,0x1953,0x10F1,0x1112,0x1112,0x1932,0x1932,0x1952,0x29B4,0x1952,0x1911,0x1911,0x1911,0x1932,0x1132,0x1953,0x1953,0x1974,0x1953,0x1132,0x1112,0x1933,0x1973,0x1973,0x1974,0x1953,0x2131,0x1911,0x1910,0x2132,0x1953,0x1953,0x1973,0x1952,0x1931,0x1911,0x1911,0x2152,0x1973,0x1973,0x1994,0x1953,0x1153,0x1132,0x1973,0x1973,0x1953,0x1973,0x2173,0x1932,0x1931,0x2131,0x2151,0x1930,0x1930,0x1930,0x1931,0x1931,0x2173,0x1973,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1911,0x2151,0x2992,0x2130,0x1930,0x2151,0x1931,0x1931,0x1932,0x1953,0x1973,0x1973,0x1953,0x1973,0x1953,0x1113,0x1933,0x29B5,0x1953,0x1112,0x1931,0x1931,0x1931,0x1931,0x1952,0x2193,0x1952,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1952,0x2152,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110, + 0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x210F,0x2910,0x290F,0x292F,0x2910,0x2930,0x2110,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2130,0x210F,0x212F,0x2930,0x2930,0x2930,0x210F,0x290F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x210F,0x290F,0x2910,0x2910,0x2930,0x210F,0x2930,0x290F,0x292F,0x212F,0x2130,0x210F,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x2930,0x212F,0x210F,0x210F,0x2110,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x2930,0x212F,0x2130,0x2130,0x2131,0x2131,0x1911,0x1132,0x1954,0x1175,0x11B7,0x11D8,0x09F9,0x09F9,0x09D9,0x09D9,0x01B9,0x01B8,0x09B8,0x09D8,0x11F8,0x19F9,0x11D8,0x11D8,0x11D8,0x11D7,0x11D7,0x19D7,0x11B7,0x11D7,0x11B7,0x11B7,0x11B7,0x11B7,0x11B7,0x19D7,0x11B7,0x11B7,0x11B7,0x11B7,0x11B7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11B7,0x11B7,0x11B7,0x11B7,0x11B7,0x11B7,0x11D7,0x19D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x19D7,0x11D7,0x19D7,0x19D7,0x11D7,0x11B6,0x19D7,0x11D7,0x11D7,0x11B7,0x19B7,0x19B7,0x11B7,0x19B7,0x19D8,0x11B7,0x19D7,0x19D7,0x19F7,0x11D7,0x19F8,0x11F7,0x11D7,0x19D7,0x11D7,0x19D7,0x19D8,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x11D7,0x11D7,0x19D7,0x19B7,0x19D7,0x19D7,0x19B7,0x19B7,0x19D7,0x19D7,0x19B7,0x19D7,0x19D7,0x11B7,0x19D7,0x19D7,0x19B7,0x11B7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x11B7,0x19D7,0x19D7,0x19D7,0x19D7,0x11D7,0x11B7,0x11D7,0x19D7,0x11D7,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x19F7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x19F7,0x11D7,0x19F7,0x11D7,0x19F7,0x11D7,0x19F8,0x19D8,0x19D8,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x19D8,0x19D7,0x19D7,0x11D7,0x11D7,0x11D7,0x19D7,0x11D7,0x11D7,0x11D7,0x11D7,0x19D8,0x19D8,0x19D8,0x19D8,0x19D8,0x19D8,0x19D8,0x11D7,0x11D7,0x19D8,0x19F8,0x19F8,0x19F7,0x19D8,0x19D8,0x19F8,0x19F7,0x19D8,0x19F8,0x19F8,0x19F8,0x19F8,0x19D8,0x19D8,0x19D8,0x19D8,0x19D8,0x19F8,0x19F7,0x19D8,0x11D7,0x11D7,0x19D7,0x11D7,0x11D7,0x11D7,0x19D7,0x19D7,0x19D7,0x11D7,0x19D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x19D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x19D7,0x11D7,0x19D7,0x11D7,0x11D7,0x11D7,0x11D7,0x19D7,0x19D8,0x19D8,0x19D8,0x19F8,0x19D8,0x19F8,0x19F8,0x19F8,0x19D7,0x19D7,0x19D7,0x19D7,0x19D7,0x11D7,0x19D7,0x19D7,0x11D7,0x11D7,0x19D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x19D8,0x19D8,0x19D7,0x19D7,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F7,0x21F7,0x21D6,0x1994,0x1953,0x1932,0x2131,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x290F,0x28EE,0x288C,0x8B56,0xCCFC,0xDCDC,0xDCDB,0xDCDB,0xDCBB,0xD4BB,0xD4FC,0xABD8,0x494F,0x30CD,0x30EE,0x310F,0x3130,0x3150,0x3151,0x3151,0x3171,0x3171,0x3991,0x3971,0x3991,0x3991,0x3992,0x3992,0x3972,0x3992,0x4192,0x3992,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x41B2,0x41B2,0x41B2,0x41B2,0x41B2,0x41B3,0x41B2,0x41B2,0x41B2,0x41B2,0x4192,0x4192,0x4192,0x4192,0x41B2,0x49B2,0x49B2,0x49B2,0x49B2,0x49B3,0x49B2,0x49B2,0x49B2,0x49B2,0x49B2,0x49B2,0x49B2,0x49B2,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4972,0x4972,0x4972,0x4971,0x4951,0x5151,0x5130,0x5130,0x510F,0x592F,0x6970,0x71B1,0x8213,0x9AB5,0xAB37,0xC3D9,0xD41A,0xD3F9,0xCBD9,0xCBB8,0xCBB8,0xCB98,0xCBB8,0xCBD9,0xCBD9,0xD3F9,0xCBD9,0xC3B9,0xB337,0xA2B5,0x8A33,0x7191,0x7191,0x6150,0x5950,0x5971,0x5992,0x5992,0x5992,0x5992,0x59B3,0x59B3,0x59B2,0x61B2,0x6171,0xA336,0xDC7A,0xDC79,0xE499,0xE478,0xE458,0xE458,0xE458,0xE457,0xDC37,0xD437,0xC437,0xB438,0x9C78,0x84D9,0x6D5B,0x5DBC,0x55FD,0x4DFD,0x4DFD,0x55BC,0x657C,0x74FB,0x8377,0x9AD6,0xAA75,0xBA35,0xC234,0xCA35,0xCA14,0xC9F4,0xC1D3,0xC1D4,0xB1D4,0xA9F5,0x9A36,0x8AD7,0x8C5B,0x851D,0x855E,0x857E,0x8D9F,0x959F,0x9D7F,0x9CFD,0x9CBC,0xACFD,0xC55E,0xCD5E,0xCD3D,0xCD1D,0xCD1C,0xCCFC,0xCCDC,0xCCDB,0xCCDC,0xCCDB,0xD4DB,0xD4DB,0xD4BB,0xD4BB,0xD4BB,0xD4BB,0xD4BB,0xD4BA,0xD4BA,0xD4BA,0xD49A,0xD49A,0xD49A,0xD49A,0xD49A,0xD49A,0xD499,0xD499,0xDC99,0xDC99,0xDC99,0xDC99,0xDC99,0xDC99,0xDC79,0xDC78,0xDC78,0xE479,0xDC78,0xDC78,0xDC58,0xDC38,0xDC38,0xDC37,0xDC37,0xDC37,0xDC38,0xDC37,0xDC37,0xDC17,0xDC17,0xD417,0xD417,0xD417,0xD417,0xD417,0xD417,0xD417,0xD417,0xD417,0xD3F7,0xCBF7,0xCBF7,0xCBF7,0xCBF7,0xD3F7,0xD3D7,0xD3D7,0xD3D7,0xD3D7,0xD3D7,0xD3B7,0xD396,0xDB96,0xDB96,0xDB96,0xDB96,0xDBB7,0xDB97,0xDBB8,0xD3B9,0xCBFC,0x933C,0x4158,0x297A,0x197C,0x117D,0x097D,0x099D,0x117D,0x197D,0x215C,0x313A,0x4939,0x8A7C,0x927A,0x81F8,0x7A18,0x7299,0x62FA,0x4AFA,0x335B,0x2C3D,0x149D,0x0D1E,0x059E,0x065F,0x06BF,0x071F,0x075F,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07BF,0x07BF,0x0F9F,0x0F9F,0x179F,0x273E,0x3EFE,0x7EFF,0x73F7,0x69D1,0x9A13,0xB1F3,0xB9D3,0xC9D3,0xC193,0xC993,0xC9B4,0xC9B4,0xC993,0xC993,0xC1B3,0xC1D3,0xB1D4,0xB235,0x9215,0x6111,0x5111,0x5172,0x4972,0x4992,0x4172,0x3971,0x3951,0x3971,0x3951,0x3951,0x3151,0x3151,0x3152,0x3172,0x2932,0x2132,0x2153,0x2175,0x19D7,0x19F9,0x11D9,0x09DA,0x09DA,0x01DA,0x01BA,0x01BA,0x01B9,0x09B9,0x09D9,0x11F9,0x11F8,0x11B7,0x0995,0x0954,0x0953,0x1153,0x1132,0x1132,0x1132,0x1132,0x1932,0x1912,0x1932,0x1912,0x1932,0x1912,0x1912,0x1912,0x1912,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1932,0x1132,0x1132,0x1932,0x1131,0x1932,0x1932,0x1932,0x1932,0x1912,0x1912,0x1932,0x1932,0x1932,0x1912,0x1932,0x1912,0x1932,0x1912,0x1932,0x1933,0x1933,0x1113,0x1113,0x1133,0x1134,0x1995,0x21F6,0x21F6,0x21F6,0x21B5,0x1153,0x1112,0x1911,0x2111,0x2131,0x2131,0x2110,0x2910,0x2110,0x2930,0x2110,0x2910,0x2110,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x1931,0x1932,0x1954,0x1996,0x11B7,0x11B7,0x11B7,0x1196,0x0976,0x0955,0x0954,0x0955,0x0954,0x0975,0x0975,0x1196,0x19D7,0x19D6,0x1195,0x1133,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1932,0x1932,0x2173,0x1974,0x1973,0x1973,0x1932,0x1932,0x1932,0x1111,0x1111,0x2193,0x2193,0x1112,0x1952,0x1932,0x1132,0x1932,0x1932,0x1952,0x2193,0x2172,0x2172,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x2173,0x1953,0x1112,0x1932,0x1932,0x1132,0x1952,0x29B4,0x29D4,0x2152,0x1931,0x1931,0x1911,0x1932,0x1973,0x1974,0x1953,0x1973,0x1973,0x1953,0x1973,0x1973,0x1974,0x1994,0x1973,0x1932,0x1931,0x1910,0x1911,0x1931,0x2173,0x1973,0x1973,0x1972,0x1931,0x1910,0x1911,0x1952,0x2173,0x1974,0x1974,0x1133,0x1133,0x1953,0x2194,0x1974,0x1953,0x1973,0x2173,0x1932,0x1931,0x1931,0x2131,0x1930,0x1930,0x1930,0x1910,0x1931,0x2193,0x1973,0x1132,0x1932,0x1952,0x1931,0x1951,0x1931,0x1931,0x18F0,0x2151,0x2992,0x2131,0x2131,0x2131,0x1931,0x1931,0x1132,0x1973,0x2194,0x1973,0x1973,0x1973,0x1133,0x1133,0x1934,0x2195,0x1953,0x1912,0x1911,0x1931,0x1952,0x1932,0x1972,0x2173,0x1952,0x1932,0x1932,0x1932,0x1932,0x1132,0x1132,0x1932,0x1931,0x1931,0x2131,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130, + 0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x2930,0x2930,0x210F,0x292F,0x2930,0x210F,0x2930,0x2110,0x2910,0x2910,0x2930,0x212F,0x212F,0x2930,0x2110,0x2910,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2130,0x212F,0x2130,0x2110,0x2130,0x210F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x2930,0x2930,0x210F,0x290F,0x290F,0x212F,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x210F,0x2130,0x2930,0x2930,0x212F,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2930,0x2910,0x2910,0x210F,0x212F,0x292F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x2930,0x2930,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2910,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x2131,0x1911,0x1112,0x1133,0x1175,0x1197,0x11B8,0x09D8,0x09F9,0x09F9,0x09D9,0x09D9,0x09D8,0x09B8,0x09B8,0x11D8,0x11B7,0x1175,0x0934,0x0913,0x00F2,0x1134,0x1113,0x0912,0x1112,0x10F2,0x10F2,0x1112,0x0912,0x1133,0x1112,0x1112,0x1112,0x1112,0x10F2,0x1112,0x1112,0x1133,0x1112,0x1132,0x1112,0x1112,0x1112,0x1133,0x1113,0x1133,0x1133,0x1133,0x1133,0x1113,0x1113,0x1113,0x1113,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x0912,0x1112,0x0912,0x0912,0x1113,0x1113,0x1133,0x1133,0x08F2,0x08F2,0x10F3,0x10F2,0x1133,0x1133,0x0912,0x0912,0x08F2,0x08F2,0x1113,0x1112,0x1113,0x1112,0x10F2,0x1112,0x1112,0x10F2,0x1112,0x1112,0x10F2,0x10F2,0x10F2,0x1112,0x10F2,0x10F2,0x10F2,0x10F2,0x10F2,0x10F2,0x10F2,0x1112,0x1113,0x10F2,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1133,0x1112,0x1112,0x1112,0x1112,0x1113,0x1112,0x1113,0x1113,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1133,0x1133,0x1153,0x1153,0x1153,0x1133,0x1133,0x1133,0x1133,0x1132,0x1132,0x0932,0x0912,0x0912,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x0913,0x0933,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1153,0x1153,0x1153,0x1153,0x1154,0x1154,0x1154,0x1153,0x1153,0x1153,0x1153,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1154,0x1154,0x1154,0x1174,0x1154,0x1154,0x1154,0x1154,0x1154,0x1154,0x1154,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1133,0x1133,0x1153,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x0933,0x1133,0x0933,0x0933,0x1133,0x1133,0x1132,0x1132,0x1132,0x1932,0x1932,0x2131,0x2131,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x290F,0x290E,0x28ED,0x5190,0xCCDC,0xD4DB,0xD4DB,0xDCDB,0xD4BB,0xD4BB,0xC4BB,0x8AF5,0x286B,0x30EE,0x310F,0x310F,0x3130,0x3150,0x3151,0x3171,0x3171,0x3171,0x3971,0x3971,0x3971,0x3971,0x3991,0x3991,0x3992,0x3992,0x3992,0x3992,0x3992,0x3992,0x4192,0x4192,0x4192,0x3992,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4992,0x4192,0x4192,0x4992,0x4992,0x4992,0x4992,0x4992,0x4993,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4972,0x4972,0x4972,0x4951,0x5151,0x5150,0x5150,0x5150,0x5130,0x510F,0x490F,0x48EE,0x48EE,0x592F,0x7A12,0x8A74,0x9AD6,0xA2F6,0x9AF6,0x92B5,0x8233,0x6991,0x6150,0x5910,0x510F,0x5110,0x5950,0x5971,0x5971,0x5971,0x5992,0x5192,0x59B2,0x59B3,0x59D3,0x59D3,0x59B3,0x5992,0x5992,0x5991,0x6191,0xBBF9,0xDC7A,0xE499,0xE499,0xE478,0xE438,0xE437,0xE437,0xDC37,0xD417,0xCC17,0xBBF7,0xAC17,0x9478,0x7D1A,0x657C,0x55DD,0x4DFD,0x4DFD,0x4DDD,0x55BC,0x657C,0x749A,0x8316,0x9A95,0xAA55,0xBA35,0xC214,0xCA14,0xC9F4,0xC9F4,0xC1D4,0xC1D4,0xB9F4,0xAA15,0x9A56,0x8AB7,0x8BBA,0x83FB,0x5AF7,0x5295,0x4213,0x41F3,0x49F3,0x49F3,0x51D3,0x51D2,0x5191,0x61F2,0x7295,0x82F6,0x9B98,0xABF9,0xABFA,0xAC1A,0xABFA,0xB3FA,0xABD9,0xB3F9,0xB3F9,0xB3F9,0xBC19,0xBC3A,0xC45A,0xC45A,0xC45A,0xC45A,0xCC7A,0xCC7B,0xCC7A,0xD49B,0xD49B,0xD4BB,0xD4BB,0xDCDB,0xDCBB,0xDCBA,0xDC9A,0xDCBA,0xDC99,0xDC99,0xDC99,0xDC79,0xDC79,0xDC79,0xDC78,0xDC78,0xDC78,0xDC58,0xDC58,0xDC58,0xDC58,0xDC58,0xDC38,0xDC38,0xDC37,0xDC37,0xDC17,0xDC37,0xDC17,0xD417,0xD417,0xD417,0xD3F7,0xD3F7,0xD3F7,0xD3F7,0xD3F7,0xD3F7,0xD3F7,0xD3F7,0xD3D7,0xD3D7,0xD3D6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD396,0xDB96,0xD396,0xDB96,0xDB96,0xDB96,0xDB97,0xD397,0xD398,0xD3B9,0xCBDB,0xAB9D,0x59D9,0x295A,0x197C,0x117C,0x097D,0x097D,0x119D,0x199D,0x217C,0x313B,0x3919,0x7A3B,0x8A7B,0x7A18,0x7238,0x7299,0x62FA,0x4AFA,0x3B7B,0x2C1C,0x1C9D,0x0D1E,0x059E,0x063F,0x06BF,0x071F,0x075F,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x0F9F,0x179F,0x275F,0x3EDE,0x76BF,0x84DA,0x6211,0x9A74,0xB213,0xB9D3,0xC1B3,0xC9B4,0xC993,0xC994,0xC993,0xC993,0xC9B4,0xC1B3,0xC1B3,0xB1B4,0xAA15,0x9A35,0x6131,0x5131,0x5172,0x5192,0x4172,0x4172,0x3972,0x3972,0x3951,0x3951,0x3951,0x3151,0x3172,0x3172,0x3152,0x2952,0x2932,0x2133,0x2175,0x1976,0x11B7,0x11F9,0x09D9,0x09FA,0x09FA,0x09DA,0x01D9,0x09F9,0x1219,0x11D8,0x11B7,0x0996,0x0975,0x1154,0x1174,0x1153,0x1132,0x1932,0x1932,0x1952,0x1931,0x2131,0x2131,0x1911,0x1911,0x2132,0x1911,0x2132,0x1932,0x1912,0x1912,0x1912,0x1911,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x2152,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x2152,0x2131,0x2131,0x2132,0x2132,0x1932,0x1952,0x1932,0x1132,0x1112,0x1113,0x1133,0x1974,0x19D6,0x21F7,0x21D6,0x21D6,0x1153,0x1112,0x1912,0x2131,0x2131,0x2131,0x2110,0x20F0,0x2110,0x2110,0x2110,0x2110,0x212F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2131,0x1912,0x1133,0x19D6,0x19F8,0x11B7,0x11B7,0x0135,0x0955,0x0975,0x0974,0x1195,0x0974,0x0975,0x0975,0x1196,0x11B6,0x11B6,0x1174,0x1133,0x1932,0x1911,0x1910,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1912,0x1932,0x21B4,0x21D5,0x2194,0x1993,0x1952,0x1931,0x1111,0x1111,0x1111,0x21D4,0x21B4,0x1932,0x1952,0x1932,0x1932,0x1112,0x1112,0x1932,0x2173,0x2172,0x2151,0x2151,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x2173,0x29D4,0x1973,0x1973,0x21B4,0x21B4,0x29D4,0x29B4,0x2152,0x1932,0x2152,0x1911,0x1911,0x1911,0x21B4,0x1974,0x1974,0x1974,0x2194,0x2173,0x2193,0x21B4,0x1974,0x1973,0x1953,0x1932,0x1931,0x1911,0x1910,0x2152,0x2173,0x1973,0x1973,0x1972,0x1931,0x10F0,0x1931,0x2172,0x2173,0x1973,0x1953,0x1132,0x1953,0x1953,0x1994,0x1994,0x1973,0x1973,0x1953,0x1932,0x1931,0x1931,0x1910,0x1910,0x2130,0x2130,0x1910,0x1931,0x29B4,0x2194,0x1132,0x1932,0x1131,0x1931,0x1951,0x1931,0x1931,0x1910,0x2972,0x31D3,0x2151,0x1930,0x1910,0x1911,0x1932,0x1952,0x1973,0x21B4,0x1974,0x1933,0x1953,0x1133,0x1934,0x1975,0x1954,0x1933,0x1932,0x1931,0x1951,0x1951,0x1952,0x2193,0x2193,0x1953,0x1932,0x1952,0x1932,0x1952,0x1973,0x1993,0x2193,0x1973,0x2172,0x2151,0x2131,0x2130,0x2130,0x1910,0x2130,0x2110, + 0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x2110,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2930,0x210F,0x2930,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x212F,0x2110,0x2110,0x2130,0x212F,0x212F,0x210F,0x210F,0x2130,0x210F,0x290F,0x290F,0x290F,0x210F,0x2110,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x2130,0x212F,0x2930,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x212F,0x2130,0x210F,0x212F,0x2930,0x2130,0x2130,0x210F,0x2930,0x2110,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2910,0x2930,0x212F,0x212F,0x210F,0x290F,0x290F,0x2910,0x2110,0x2910,0x2910,0x210F,0x290F,0x2930,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2130,0x210F,0x212F,0x212F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2110,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2111,0x1911,0x1112,0x1133,0x1175,0x1196,0x11B8,0x09D8,0x09D9,0x09D9,0x09D9,0x09D9,0x09D8,0x09D8,0x11D8,0x11B7,0x0975,0x0913,0x08F2,0x08F2,0x1112,0x1112,0x1912,0x1912,0x1911,0x18F1,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x18F1,0x1911,0x18F1,0x1911,0x1911,0x18F1,0x18F1,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x18F1,0x1912,0x1912,0x18F1,0x18F2,0x18F1,0x18F1,0x1911,0x1911,0x1912,0x1911,0x1911,0x1911,0x18F1,0x1911,0x1911,0x1911,0x1911,0x18F1,0x18F1,0x1911,0x2131,0x1911,0x1911,0x18F1,0x18F1,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x18F1,0x18F1,0x1912,0x1911,0x18F1,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1912,0x1911,0x1911,0x2131,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1131,0x1131,0x1131,0x1132,0x1132,0x1932,0x1932,0x1132,0x1132,0x1932,0x1932,0x1132,0x1132,0x1932,0x1132,0x1932,0x1932,0x1932,0x1132,0x1931,0x1931,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1952,0x1952,0x1932,0x1952,0x1952,0x1952,0x1952,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1931,0x1932,0x1932,0x1932,0x1131,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1132,0x1952,0x1932,0x1932,0x1131,0x1132,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1131,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x290F,0x28EE,0x30ED,0xA3F9,0xCCDC,0xD4DC,0xD4DC,0xD4DB,0xD4DB,0xD51D,0x6A52,0x30AD,0x30EE,0x30EF,0x310F,0x3130,0x3130,0x3151,0x3151,0x3171,0x3151,0x3171,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3992,0x3971,0x3992,0x3992,0x3992,0x3992,0x3992,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x49B2,0x4192,0x4992,0x4992,0x4192,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4972,0x4972,0x4992,0x4972,0x4971,0x4971,0x4971,0x4951,0x4951,0x4971,0x4951,0x4951,0x4950,0x4930,0x5130,0x5130,0x510F,0x510F,0x5130,0x5150,0x5151,0x5151,0x5171,0x5171,0x5171,0x5192,0x5192,0x5192,0x5192,0x51B2,0x51B2,0x51B3,0x51B3,0x59D3,0x59F4,0x59D4,0x59B3,0x59B2,0x5991,0x71D1,0xD47A,0xDC7A,0xE479,0xE478,0xDC38,0xDC37,0xDC17,0xDBF7,0xDBF7,0xD3F7,0xCBF7,0xB3F7,0xA418,0x8C79,0x7D1B,0x659C,0x55DD,0x4DFD,0x4DFD,0x4DDD,0x5DBD,0x655B,0x7C79,0x82F6,0xA275,0xB255,0xBA35,0xC214,0xC1F4,0xC1F4,0xC1D3,0xC1D3,0xC1F4,0xBA15,0xAA35,0x9A56,0x8A77,0x7AB7,0x6255,0x5A15,0x5A15,0x59F5,0x59F4,0x59F4,0x59F4,0x59F4,0x59D4,0x59D4,0x59D3,0x59B3,0x59B2,0x5992,0x5991,0x5991,0x5991,0x5991,0x5971,0x5971,0x5971,0x5970,0x5970,0x6191,0x6191,0x69B1,0x69D1,0x69D1,0x69D1,0x69F2,0x71F2,0x7212,0x7212,0x7A12,0x7A32,0x8253,0x8AB4,0xA336,0xB3B8,0xCC5A,0xDCDC,0xDCDB,0xDCBB,0xDC9A,0xDC9A,0xDC9A,0xDC79,0xDC79,0xDC79,0xDC79,0xDC78,0xDC58,0xDC58,0xDC58,0xDC58,0xDC38,0xDC37,0xDC37,0xDC37,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xD3F7,0xDBF7,0xDBF7,0xD3F7,0xD3D7,0xD3D7,0xD3D7,0xD3D7,0xD3D7,0xD3D7,0xD3D6,0xD3D6,0xD3B6,0xD3B6,0xDBB6,0xD396,0xD396,0xD396,0xDB96,0xDB96,0xDB96,0xDB96,0xD376,0xD377,0xD397,0xD399,0xCBBA,0xBBDD,0x725A,0x3159,0x195B,0x117C,0x097D,0x119D,0x119D,0x119D,0x197C,0x295B,0x3919,0x61BA,0x825B,0x7A19,0x7A59,0x72BA,0x62DA,0x4AFA,0x3B5B,0x2C1C,0x1C9D,0x0D1E,0x059E,0x065F,0x069F,0x071F,0x075F,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x0F9F,0x179F,0x275F,0x3EFE,0x66BF,0x95BD,0x5A31,0x9A94,0xA9F3,0xB9F3,0xB9B3,0xC1B3,0xC9B4,0xC973,0xC993,0xC9B4,0xC993,0xC193,0xC1D4,0xB9D4,0xB215,0x9215,0x6932,0x5932,0x4932,0x4992,0x4172,0x4192,0x4172,0x3972,0x3971,0x3951,0x3951,0x3972,0x3172,0x3131,0x3152,0x2952,0x2932,0x2132,0x2154,0x1975,0x1196,0x11D8,0x1219,0x09F9,0x09F9,0x09F9,0x09F9,0x11F9,0x11F8,0x11B7,0x1196,0x1175,0x1154,0x1153,0x1153,0x1132,0x1931,0x1931,0x1931,0x2131,0x2130,0x2131,0x2110,0x2131,0x2111,0x2111,0x2131,0x2111,0x2111,0x2111,0x2111,0x1911,0x2131,0x1931,0x1911,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2131,0x1910,0x1930,0x2131,0x2111,0x1910,0x2131,0x1910,0x1911,0x2111,0x2131,0x2110,0x2131,0x2111,0x2111,0x2131,0x2131,0x1932,0x1932,0x1932,0x1112,0x1112,0x1153,0x1974,0x19B5,0x21F6,0x21F6,0x19B5,0x1954,0x1112,0x1932,0x1931,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x290F,0x210F,0x210F,0x2110,0x2110,0x2131,0x1911,0x1133,0x1995,0x19F8,0x19D8,0x11B7,0x0976,0x0135,0x0954,0x0954,0x0974,0x0974,0x0975,0x0975,0x1196,0x11B6,0x19D6,0x1995,0x1953,0x1932,0x1911,0x1910,0x2110,0x2130,0x210F,0x210F,0x2110,0x2130,0x2131,0x2131,0x1911,0x1912,0x1932,0x1932,0x1973,0x21B4,0x2193,0x1952,0x1932,0x1932,0x1932,0x1932,0x21B3,0x21B4,0x1112,0x1932,0x1952,0x1932,0x1112,0x1932,0x1952,0x2173,0x2172,0x2172,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x2173,0x29D4,0x21B4,0x1973,0x2173,0x1952,0x1952,0x1952,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1973,0x1973,0x1973,0x1953,0x1952,0x1952,0x1973,0x2193,0x1973,0x1953,0x1932,0x1932,0x1931,0x1931,0x1910,0x2151,0x2173,0x2173,0x1973,0x1972,0x1911,0x10F0,0x1931,0x2172,0x2193,0x2193,0x1933,0x1112,0x1132,0x1953,0x1973,0x2194,0x21B4,0x2194,0x1953,0x1932,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x1911,0x29B4,0x2173,0x1932,0x1932,0x1951,0x1131,0x1951,0x1931,0x1931,0x18F0,0x2992,0x31B2,0x2151,0x1910,0x1910,0x1911,0x1911,0x1952,0x2194,0x21B4,0x1932,0x1112,0x1933,0x1933,0x1954,0x2175,0x2155,0x1953,0x1932,0x1910,0x1931,0x1931,0x1932,0x2193,0x21B4,0x1973,0x1932,0x1932,0x1932,0x1953,0x1993,0x21B4,0x29D4,0x21B4,0x21B3,0x2152,0x2131,0x2131,0x1930,0x2130,0x2130,0x2130, + 0x212F,0x210F,0x2930,0x210F,0x210F,0x212F,0x2930,0x2930,0x212F,0x210F,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x2930,0x212F,0x2930,0x290F,0x2910,0x2910,0x290F,0x2930,0x2930,0x210F,0x290F,0x2930,0x212F,0x2930,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x2110,0x210F,0x210F,0x290F,0x290F,0x212F,0x2930,0x2110,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x2930,0x2130,0x212F,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2930,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2910,0x2930,0x210F,0x290F,0x290F,0x292F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x2930,0x2910,0x2930,0x2930,0x2110,0x2130,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2111,0x1911,0x1932,0x1154,0x1175,0x11B7,0x09B8,0x11D9,0x09D9,0x09B9,0x09B8,0x09B8,0x09D8,0x09D8,0x19F8,0x11B6,0x1154,0x0913,0x1112,0x1953,0x1932,0x1932,0x1911,0x1911,0x2131,0x2131,0x2110,0x2110,0x1910,0x2110,0x2131,0x2131,0x2131,0x2110,0x1910,0x2110,0x2110,0x1910,0x1910,0x2130,0x2130,0x2131,0x1930,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1911,0x1910,0x2131,0x2131,0x2111,0x1910,0x18F0,0x1910,0x1910,0x2110,0x2130,0x2131,0x2131,0x1910,0x2131,0x2111,0x1911,0x2111,0x2111,0x2131,0x2111,0x1911,0x2111,0x2111,0x2131,0x2131,0x2111,0x2110,0x2131,0x2110,0x2131,0x2111,0x2111,0x2111,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2110,0x2111,0x2111,0x2131,0x2111,0x2131,0x2110,0x2110,0x2110,0x2111,0x2111,0x2111,0x2111,0x2111,0x2110,0x2111,0x2111,0x2111,0x2110,0x2111,0x2110,0x2110,0x2131,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x1930,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1952,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x1931,0x2131,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x1931,0x1931,0x1931,0x2151,0x1931,0x1931,0x1931,0x1931,0x1931,0x1951,0x1931,0x1931,0x1931,0x1931,0x1951,0x1931,0x1931,0x2131,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x1931,0x2131,0x1931,0x2151,0x1931,0x1931,0x1951,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2130,0x2130,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x290F,0x290E,0x28ED,0x4990,0xBCBB,0xCCDC,0xD4FC,0xD4DC,0xCCDC,0xC49B,0x61F1,0x30AD,0x30EE,0x310F,0x312F,0x3130,0x3150,0x3150,0x3150,0x3151,0x3171,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3992,0x3991,0x3992,0x3971,0x3992,0x3992,0x4192,0x4192,0x4192,0x3992,0x3992,0x3992,0x4192,0x4192,0x4192,0x4192,0x3972,0x4192,0x4192,0x4192,0x4172,0x4172,0x4192,0x4192,0x4192,0x4172,0x4172,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4172,0x4192,0x4192,0x4192,0x4172,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4971,0x4971,0x4971,0x4171,0x4171,0x4171,0x4971,0x4971,0x4971,0x4971,0x4951,0x4951,0x4971,0x4971,0x4971,0x4972,0x4972,0x4972,0x4972,0x4972,0x4992,0x5192,0x51B2,0x5192,0x51B2,0x51B3,0x51B3,0x51B3,0x51B3,0x59D3,0x59D3,0x59B3,0x59B2,0x5971,0x9AD5,0xDCBB,0xDC79,0xE458,0xE458,0xDC17,0xDC17,0xDBF7,0xDBD6,0xDBD7,0xD3F7,0xC3F7,0xABD7,0x9C18,0x8479,0x753B,0x5DBD,0x55FD,0x4DFD,0x4DFD,0x4DDD,0x5D9D,0x6D1B,0x7BF8,0x8AB5,0xA255,0xB235,0xBA35,0xC214,0xC1F4,0xC1F4,0xC1D3,0xC1D3,0xC1F4,0xBA15,0xAA36,0x9236,0x8235,0x6A15,0x6215,0x5A15,0x6215,0x6215,0x59F4,0x59F4,0x59F4,0x59F4,0x59D4,0x59D4,0x59D4,0x59D3,0x59D3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B2,0x61B2,0x59B2,0x59B2,0x59B2,0x59B2,0x59B2,0x5992,0x5992,0x5992,0x59B2,0x5992,0x5992,0x5992,0x5991,0x5991,0x5991,0x5991,0x5971,0x5950,0x5950,0x512F,0x594F,0x8294,0xA356,0xBC19,0xC43A,0xD47B,0xDCBB,0xDCBB,0xDCBA,0xDC9A,0xDC99,0xDC79,0xDC79,0xDC59,0xDC58,0xDC58,0xDC38,0xDC38,0xDC38,0xDC37,0xDC37,0xDC37,0xDC17,0xD3F7,0xDC17,0xDBF7,0xD3F7,0xD3F7,0xD3D7,0xD3D7,0xD3D6,0xDBD7,0xDBD7,0xDBD7,0xD3B6,0xD3B6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDB96,0xDB96,0xDB96,0xD376,0xD376,0xD376,0xD377,0xD397,0xD398,0xD3BA,0xC3DC,0x931C,0x3138,0x213A,0x117C,0x117D,0x099D,0x119D,0x119D,0x197C,0x295B,0x393A,0x5179,0x721A,0x7A19,0x7A59,0x72BA,0x62DA,0x4AFA,0x3B7B,0x2C1C,0x1C7D,0x0D1D,0x059E,0x063F,0x069F,0x071F,0x0F7F,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07BF,0x0FDF,0x0FBF,0x179F,0x1F5E,0x36FE,0x66BF,0x9E3F,0x62B2,0x92B4,0xA213,0xBA33,0xC1F3,0xC1B3,0xC193,0xC993,0xC9B3,0xC173,0xC193,0xC1B3,0xC1B3,0xB9F5,0xB235,0x9A35,0x6131,0x5111,0x5152,0x4972,0x4192,0x4172,0x4172,0x3971,0x3972,0x3971,0x3951,0x3972,0x3952,0x3152,0x3152,0x3172,0x2932,0x2932,0x2153,0x2174,0x1995,0x19F7,0x1A18,0x1A39,0x1A39,0x1A39,0x11F8,0x11B7,0x1196,0x1196,0x1175,0x1974,0x1953,0x1932,0x1932,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2130,0x2110,0x2111,0x2111,0x2111,0x2131,0x2111,0x2111,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2131,0x2110,0x2110,0x2131,0x2131,0x2131,0x1932,0x1912,0x1112,0x1933,0x1953,0x1995,0x19B5,0x19B6,0x21F6,0x21D6,0x1153,0x1112,0x1111,0x1932,0x2131,0x2131,0x2130,0x2110,0x2110,0x210F,0x2930,0x292F,0x290F,0x212F,0x2130,0x2131,0x2111,0x18F1,0x10F2,0x1975,0x21F8,0x19F8,0x19F8,0x0996,0x0955,0x0134,0x0133,0x0934,0x0134,0x0975,0x0996,0x11D7,0x19D7,0x19D6,0x1995,0x1953,0x1932,0x1931,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x2930,0x2131,0x2131,0x2132,0x1912,0x1912,0x1912,0x2173,0x2194,0x1973,0x1952,0x1952,0x1932,0x1931,0x1952,0x2193,0x21B3,0x1111,0x1111,0x1932,0x1912,0x1112,0x2173,0x2173,0x2152,0x2172,0x2151,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x2193,0x1973,0x1952,0x1932,0x1911,0x1931,0x1931,0x1931,0x1911,0x1910,0x2131,0x2130,0x1910,0x1911,0x2152,0x2173,0x1953,0x1932,0x1932,0x1932,0x1932,0x1952,0x1952,0x1953,0x1952,0x1931,0x1931,0x1931,0x1910,0x2131,0x2172,0x2173,0x2173,0x2152,0x1911,0x10F0,0x1931,0x2192,0x2193,0x2193,0x1932,0x1112,0x1932,0x1953,0x1973,0x2194,0x21B4,0x21B4,0x2193,0x1932,0x1952,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2131,0x2993,0x2194,0x1932,0x1952,0x1951,0x1931,0x1971,0x1951,0x1931,0x1910,0x2992,0x31B3,0x2151,0x2130,0x1910,0x1911,0x1911,0x2173,0x21B4,0x2194,0x1132,0x1112,0x1933,0x1933,0x1955,0x2196,0x29B6,0x2174,0x2152,0x1931,0x1910,0x1110,0x1931,0x1972,0x29D4,0x1953,0x1112,0x1112,0x1912,0x1912,0x1932,0x1953,0x1953,0x1952,0x1952,0x1931,0x1910,0x1910,0x1910,0x1910,0x2130,0x2110, + 0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2910,0x2910,0x210F,0x210F,0x2910,0x2910,0x2930,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2130,0x210F,0x2930,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x210F,0x2910,0x2110,0x2930,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x210F,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x2930,0x210F,0x2930,0x212F,0x2130,0x210F,0x2130,0x2110,0x2110,0x2930,0x290F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1911,0x1932,0x1153,0x1175,0x1196,0x09D8,0x09D8,0x09D9,0x09B9,0x09B9,0x09B9,0x09B8,0x11D8,0x11F8,0x19D7,0x1154,0x1113,0x1112,0x1911,0x1932,0x2132,0x2131,0x2131,0x2131,0x2110,0x2130,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2150,0x2151,0x2150,0x2130,0x2130,0x2130,0x2130,0x2110,0x1910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2111,0x2111,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2150,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x290F,0x28EE,0x28AC,0x8315,0xC4DC,0xCCFC,0xCCFC,0xCCDC,0xC4DC,0x59D1,0x30CD,0x30EE,0x310F,0x310F,0x312F,0x3130,0x3950,0x3950,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3972,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3992,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x4192,0x3972,0x3972,0x4172,0x4172,0x4172,0x4172,0x4172,0x4172,0x4172,0x4172,0x4172,0x4192,0x4172,0x4172,0x4172,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4992,0x4992,0x4992,0x4992,0x4972,0x4992,0x4992,0x4992,0x4992,0x4171,0x4172,0x4172,0x4171,0x4192,0x4171,0x4171,0x4971,0x4972,0x4972,0x4972,0x4992,0x4972,0x4972,0x4992,0x4972,0x4992,0x4992,0x4992,0x4992,0x49B2,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x5192,0x59B2,0x5950,0xC419,0xE4BA,0xE479,0xDC38,0xDC17,0xDC17,0xDBF7,0xDBF7,0xDBD6,0xDBD7,0xD3D7,0xC3D7,0xABF7,0x9418,0x7C79,0x6D3B,0x5DBD,0x4DFD,0x4DFD,0x4DFD,0x55DD,0x659D,0x74BB,0x7B77,0x9296,0xAA35,0xB235,0xBA14,0xC1F4,0xC1F3,0xC1D3,0xC1D3,0xC1D4,0xB9F4,0xB1F5,0xA215,0x89F5,0x79D5,0x69D4,0x61F5,0x59F5,0x59F5,0x5A15,0x59F4,0x59F5,0x59F4,0x59F4,0x59F4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59B3,0x59D4,0x59D3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x51B2,0x51B2,0x5993,0x5993,0x59B2,0x59B2,0x5992,0x5992,0x5992,0x5992,0x5992,0x5991,0x5971,0x5970,0x5950,0x69B1,0x71F2,0x79F1,0x92D5,0xB3B8,0xD49B,0xE4FC,0xDCBB,0xDC9A,0xDC7A,0xDC7A,0xDC79,0xDC59,0xDC59,0xDC38,0xDC18,0xDC18,0xDC18,0xDC17,0xDC17,0xDBF7,0xDBF7,0xDBF7,0xD3D7,0xD3D6,0xD3D6,0xD3D6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xD376,0xD376,0xD376,0xD377,0xD397,0xD398,0xD399,0xCBBB,0xAB9D,0x4158,0x213A,0x195B,0x119C,0x099D,0x11BD,0x119D,0x199C,0x217C,0x315A,0x4139,0x61DA,0x723A,0x7A7A,0x729A,0x62DA,0x4AFA,0x3B7B,0x2C1C,0x1C7C,0x151D,0x057E,0x063F,0x069F,0x071F,0x0F7F,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x0F9F,0x179F,0x275F,0x3F1F,0x5EBF,0x9E9F,0x62F3,0x8293,0xA233,0xB213,0xB9D3,0xB992,0xC193,0xC9B3,0xC9B3,0xC173,0xC993,0xC1B3,0xC1D4,0xB9D4,0xB215,0x9A15,0x6952,0x5111,0x5172,0x4992,0x4192,0x4172,0x4172,0x4172,0x3971,0x3951,0x3951,0x3952,0x3951,0x3151,0x3151,0x3151,0x2951,0x2952,0x2952,0x2153,0x1974,0x1974,0x1995,0x19B6,0x11B6,0x11B6,0x1195,0x1175,0x1975,0x1154,0x1974,0x1953,0x1112,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x2131,0x1931,0x1931,0x1932,0x1912,0x1933,0x1953,0x1994,0x19B5,0x21D6,0x21F6,0x21D6,0x1153,0x1112,0x1112,0x2132,0x2151,0x2130,0x2130,0x2110,0x2130,0x212F,0x2930,0x2930,0x2130,0x2130,0x2110,0x2111,0x18F1,0x10F2,0x1134,0x19D7,0x1A18,0x1A19,0x19F8,0x0996,0x0154,0x0134,0x0134,0x0134,0x0975,0x11D7,0x1A18,0x19F7,0x19D6,0x1974,0x1953,0x1952,0x2131,0x2131,0x2130,0x2930,0x210F,0x210F,0x210F,0x2110,0x2110,0x2131,0x2132,0x1912,0x1912,0x1112,0x1112,0x1132,0x1952,0x1952,0x1932,0x1932,0x1911,0x1931,0x2173,0x29B3,0x1111,0x1111,0x10F1,0x1112,0x1953,0x2173,0x2173,0x2172,0x2152,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x1931,0x2172,0x1952,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1930,0x1910,0x2130,0x2130,0x2110,0x2131,0x2172,0x2173,0x1952,0x1932,0x1911,0x1911,0x1911,0x1932,0x1972,0x1972,0x2173,0x1932,0x2151,0x1931,0x1910,0x2131,0x2172,0x2173,0x2173,0x2152,0x1911,0x10F0,0x2151,0x2192,0x2193,0x2193,0x1932,0x1912,0x1912,0x1932,0x1932,0x2173,0x2194,0x2194,0x2173,0x2152,0x2152,0x2131,0x2130,0x2110,0x2130,0x212F,0x2130,0x2130,0x2193,0x2993,0x1932,0x1932,0x1951,0x1930,0x1951,0x1951,0x1930,0x1910,0x2972,0x31B3,0x2131,0x2131,0x1931,0x1911,0x1931,0x1952,0x2194,0x2193,0x1112,0x1912,0x1932,0x1933,0x1954,0x29B6,0x29B6,0x2174,0x2152,0x1930,0x1930,0x1910,0x1951,0x1952,0x2193,0x2193,0x1132,0x1112,0x1932,0x1912,0x1132,0x1932,0x1952,0x1932,0x1931,0x1931,0x1931,0x1910,0x1910,0x1930,0x2130,0x2110, + 0x290F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x2910,0x210F,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2950,0x210F,0x2130,0x2930,0x2130,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2930,0x292F,0x210F,0x210F,0x212F,0x2930,0x210F,0x2930,0x2930,0x212F,0x212F,0x2930,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x2130,0x212F,0x210F,0x2930,0x2910,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2110,0x2930,0x210F,0x2110,0x2910,0x2910,0x290F,0x210F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x212F,0x212F,0x2930,0x212F,0x2930,0x2110,0x210F,0x210F,0x2110,0x2110,0x2130,0x2131,0x2131,0x1931,0x1111,0x1132,0x1133,0x1175,0x11D7,0x11F8,0x09D8,0x09D9,0x09D9,0x09D9,0x09B9,0x09D8,0x09B8,0x11D7,0x19D7,0x1175,0x1133,0x1112,0x10F1,0x1911,0x1911,0x2131,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x18EF,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2151,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x210F,0x2110,0x2110,0x210F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2150,0x2150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x290F,0x290E,0x28EE,0x392E,0xCD3D,0xCCFD,0xCCFC,0xC4BC,0xA3F9,0x496F,0x30AD,0x30EE,0x30EF,0x310F,0x312F,0x312F,0x3130,0x3950,0x3950,0x3950,0x3950,0x3971,0x3971,0x3951,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3972,0x3971,0x3971,0x3972,0x4192,0x4172,0x3972,0x3972,0x3971,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x4172,0x4172,0x4172,0x3972,0x3972,0x4172,0x4172,0x4172,0x4172,0x4172,0x4172,0x3972,0x4192,0x4172,0x4192,0x4172,0x4172,0x4192,0x4172,0x4172,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4192,0x4172,0x4192,0x4192,0x4192,0x4192,0x4192,0x4992,0x4192,0x4192,0x4992,0x4992,0x4192,0x4172,0x4171,0x4992,0x4172,0x4192,0x4192,0x4192,0x4192,0x4992,0x4972,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x49B2,0x49B3,0x49B3,0x51B3,0x51B3,0x4992,0x4992,0x5192,0x5992,0x69B1,0xDCDC,0xE49A,0xE459,0xDC38,0xE438,0xDC17,0xE3F7,0xE3F7,0xDBD6,0xD3B6,0xCBB6,0xBBB7,0xA3D7,0x8C18,0x7479,0x6D3C,0x5DBD,0x55FD,0x4DDD,0x4DDD,0x559C,0x6D5C,0x7C5A,0x8316,0x9A55,0xAA15,0xBA15,0xB9F4,0xC1F3,0xC1D3,0xC1F3,0xC1F4,0xC1F4,0xB9F5,0xAA15,0x99F5,0x81D4,0x71D4,0x69D4,0x61D5,0x59D4,0x59F4,0x59F4,0x59F4,0x59F4,0x59F4,0x59F4,0x59F4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59D3,0x59B3,0x59B3,0x59B3,0x59B3,0x59D3,0x59D3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B2,0x59B2,0x5992,0x59B2,0x5992,0x5991,0x5991,0x6191,0x5991,0x5970,0x5950,0x594F,0x8A94,0xAB77,0xC41A,0xCC3A,0xD47A,0xDC7A,0xDC59,0xDC39,0xDC38,0xDC38,0xDC18,0xDC18,0xDC18,0xDC18,0xDBF7,0xDBF7,0xD3F7,0xDBF7,0xDBD7,0xD3D7,0xDBD7,0xDBB6,0xD3B6,0xD396,0xDB96,0xDB96,0xDB96,0xDB96,0xDBB6,0xDB96,0xDB96,0xDB96,0xDB96,0xD376,0xD376,0xD376,0xDB97,0xDB97,0xD398,0xD399,0xCBBA,0xBBDD,0x51B9,0x2939,0x195B,0x117C,0x119D,0x119D,0x119D,0x119D,0x217C,0x295B,0x3919,0x59BA,0x725B,0x7A7A,0x72BA,0x62DA,0x4AB9,0x3B1A,0x2BDB,0x1C9D,0x0CFD,0x055E,0x061F,0x069F,0x0F1F,0x0F7F,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x0F9F,0x179F,0x1F5F,0x371F,0x5EBE,0x9EFF,0x6395,0x7252,0x9A12,0xAA13,0xB9D3,0xC193,0xC9B3,0xC9B3,0xC993,0xC173,0xC993,0xC193,0xC1B4,0xB9D4,0xB215,0x9A15,0x6932,0x5932,0x5152,0x4992,0x4992,0x4172,0x4172,0x4172,0x3972,0x3951,0x3951,0x3951,0x3951,0x3151,0x3131,0x3151,0x3131,0x2931,0x2931,0x2132,0x2132,0x1932,0x1953,0x1133,0x1933,0x1133,0x1953,0x1953,0x1933,0x1932,0x1932,0x1931,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x2131,0x2131,0x1931,0x1911,0x1932,0x1933,0x1153,0x1974,0x19D5,0x21F6,0x21F7,0x19B5,0x1153,0x1112,0x1112,0x1931,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2111,0x18F1,0x1912,0x1133,0x1996,0x19F8,0x1A18,0x1A39,0x1A18,0x0976,0x0155,0x0975,0x0996,0x11D7,0x11F8,0x1A18,0x19F7,0x1195,0x1154,0x1953,0x1932,0x2131,0x2131,0x2130,0x2130,0x2130,0x210F,0x2930,0x2110,0x2972,0x2172,0x2152,0x2152,0x2173,0x29D4,0x29B5,0x2194,0x2193,0x1932,0x1931,0x1911,0x1911,0x1911,0x2193,0x29D4,0x1932,0x2173,0x29D4,0x21B4,0x2173,0x2172,0x2193,0x2152,0x1931,0x2131,0x2131,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x2151,0x2172,0x1952,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1930,0x1910,0x2130,0x2130,0x2131,0x1931,0x2172,0x2193,0x1952,0x1932,0x1931,0x1911,0x1931,0x1931,0x1952,0x1952,0x2173,0x2152,0x2172,0x1930,0x1910,0x1931,0x2172,0x2173,0x2152,0x1952,0x1910,0x18F0,0x1931,0x2172,0x2193,0x2173,0x1912,0x1912,0x1911,0x1932,0x1932,0x2173,0x21B3,0x2193,0x2173,0x1952,0x2152,0x2131,0x2130,0x2130,0x210F,0x210F,0x2130,0x2131,0x2193,0x2173,0x1932,0x1931,0x1930,0x1930,0x1950,0x2151,0x1930,0x1910,0x2951,0x2972,0x2131,0x2110,0x2131,0x1911,0x1931,0x1932,0x2193,0x1972,0x1911,0x1911,0x1912,0x1933,0x2154,0x2175,0x29B6,0x2174,0x2172,0x1930,0x1910,0x1910,0x2151,0x1952,0x2193,0x2193,0x21B4,0x2193,0x2193,0x2173,0x2193,0x2193,0x21B4,0x2193,0x2173,0x2151,0x2151,0x2131,0x2131,0x2130,0x2130,0x2130, + 0x290F,0x210F,0x290F,0x210F,0x2930,0x212F,0x2930,0x2910,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2930,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x212F,0x212F,0x212F,0x2930,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x290F,0x290F,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x290F,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x292F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x2130,0x210F,0x2110,0x2130,0x2130,0x2131,0x2131,0x1911,0x1912,0x1133,0x1133,0x1175,0x11B6,0x11D7,0x09D8,0x09D8,0x09D8,0x01B9,0x09D9,0x09D8,0x09D8,0x11F8,0x19D7,0x1155,0x1133,0x10F2,0x10F1,0x1911,0x2131,0x2130,0x2131,0x2130,0x1910,0x2110,0x2110,0x2110,0x2130,0x2130,0x2930,0x2130,0x2130,0x2930,0x210F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2130,0x2110,0x2110,0x210F,0x210F,0x190F,0x2110,0x2130,0x2150,0x2150,0x2951,0x2951,0x2131,0x2951,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x212F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2950,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x2930,0x292F,0x292F,0x290F,0x290F,0x290E,0x310E,0x7B16,0xD57F,0xCD3D,0xC4FD,0x9BB8,0x410E,0x30CD,0x30EE,0x310F,0x310F,0x312F,0x312F,0x3130,0x3930,0x3950,0x3950,0x3950,0x3950,0x3950,0x3951,0x3951,0x3951,0x3151,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x3951,0x3972,0x3972,0x3972,0x3972,0x3972,0x4172,0x4172,0x3971,0x3972,0x3952,0x3972,0x3972,0x3972,0x3972,0x3972,0x3972,0x4172,0x4172,0x4172,0x4172,0x4172,0x4172,0x4172,0x4172,0x3972,0x4172,0x4172,0x3972,0x4172,0x4172,0x4172,0x4172,0x4192,0x4172,0x4172,0x4172,0x4172,0x4172,0x4172,0x4171,0x4172,0x4192,0x4192,0x4172,0x4172,0x4171,0x4172,0x4171,0x4192,0x4172,0x4172,0x4192,0x4192,0x4172,0x4172,0x4172,0x4192,0x4192,0x4172,0x4992,0x4972,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x49B2,0x49B3,0x49B3,0x49B2,0x4992,0x4992,0x5191,0x5971,0x8A94,0xE4DB,0xE479,0xDC38,0xDC17,0xE418,0xE3F7,0xE3F7,0xDBD7,0xDBB6,0xD3B6,0xC396,0xB3B7,0x9BB7,0x8C18,0x749A,0x653C,0x5DBD,0x55FD,0x4DDD,0x4DBD,0x5D7C,0x6D1C,0x7BD9,0x8A96,0xA235,0xB1F5,0xB9F4,0xC1F4,0xB9D3,0xC1D3,0xC1F3,0xC214,0xBA14,0xB215,0xA1F5,0x89B4,0x79B4,0x69B4,0x69D4,0x61D4,0x61F4,0x59F4,0x59F4,0x59F4,0x59F4,0x59D4,0x59F4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59B3,0x59B3,0x59D4,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59D3,0x51B3,0x51B3,0x51B3,0x51D3,0x51B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x5992,0x59B2,0x59B2,0x5992,0x5992,0x5992,0x59B2,0x5992,0x5992,0x6191,0x6170,0x6170,0x69B1,0x79F1,0x8232,0xB377,0xD45A,0xD45A,0xD459,0xD439,0xD418,0xD418,0xD418,0xDBF8,0xDC18,0xDBF7,0xDBF7,0xDBF7,0xDBD7,0xDBD7,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xD396,0xD396,0xD396,0xD376,0xD376,0xD376,0xD377,0xD377,0xD399,0xCBBA,0xBBDD,0x6A19,0x3138,0x217B,0x119C,0x119D,0x119D,0x119D,0x119D,0x197C,0x215B,0x311A,0x499A,0x727B,0x7A9B,0x72BB,0x62BA,0x4A79,0x3AFA,0x2BFC,0x1C9D,0x14DD,0x055E,0x0E3F,0x06BF,0x0F1F,0x0F5F,0x0F9F,0x0FBF,0x07DF,0x07DF,0x07BF,0x07BF,0x07BF,0x0FBF,0x179F,0x277F,0x371F,0x56DF,0x8EBF,0x7437,0x6A31,0x9A53,0xA1F2,0xB9F3,0xC1B3,0xC9B3,0xC9B3,0xC993,0xC993,0xC993,0xC1B3,0xC1D4,0xB9D4,0xB235,0x9A15,0x6952,0x5111,0x5152,0x4972,0x4992,0x4152,0x4172,0x3971,0x3971,0x3951,0x3951,0x3131,0x3951,0x3131,0x3131,0x3151,0x3130,0x2931,0x2931,0x2931,0x2131,0x2131,0x2131,0x2132,0x1932,0x1912,0x1932,0x1932,0x1932,0x1931,0x1911,0x1910,0x2130,0x2130,0x2130,0x2130,0x212F,0x292F,0x212F,0x212F,0x292F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x290F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x1931,0x1911,0x1911,0x1932,0x1953,0x1153,0x1994,0x19B5,0x21F6,0x21F7,0x19B5,0x1153,0x1132,0x1111,0x1931,0x2151,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2111,0x1911,0x1912,0x1113,0x1174,0x19B6,0x1A18,0x1A18,0x1A18,0x11D7,0x11D7,0x11B6,0x11B7,0x11F8,0x11F8,0x19F7,0x11B6,0x1995,0x1153,0x1932,0x1931,0x1911,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x2151,0x2152,0x2152,0x1932,0x2173,0x29B4,0x2194,0x2173,0x2172,0x1931,0x1911,0x1911,0x1911,0x1911,0x2172,0x29B4,0x2172,0x2173,0x29B4,0x2193,0x1952,0x1952,0x2172,0x1931,0x2131,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2150,0x2130,0x2172,0x2172,0x1931,0x1931,0x1931,0x1931,0x2151,0x2131,0x2130,0x2130,0x2150,0x2150,0x2110,0x1910,0x2152,0x2993,0x2152,0x1931,0x2152,0x1931,0x1931,0x1931,0x1952,0x2152,0x2173,0x2152,0x2151,0x1910,0x2130,0x2130,0x2172,0x2172,0x2152,0x2152,0x1910,0x18F0,0x2131,0x2172,0x2172,0x2172,0x1932,0x1911,0x1931,0x1932,0x1932,0x1952,0x2173,0x21B3,0x2172,0x1931,0x2131,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x2130,0x2172,0x2173,0x1931,0x1931,0x1950,0x1930,0x1950,0x2150,0x1910,0x190F,0x2951,0x2972,0x2130,0x2110,0x2130,0x2131,0x1931,0x1952,0x2152,0x1952,0x1931,0x1931,0x1931,0x1912,0x1933,0x2154,0x2174,0x2173,0x2172,0x1930,0x1930,0x1930,0x1931,0x1931,0x1932,0x1932,0x29B3,0x29D4,0x2193,0x2172,0x2193,0x2193,0x2193,0x2172,0x2172,0x2152,0x2131,0x2131,0x2151,0x2130,0x2130,0x2130, + 0x290F,0x210F,0x210F,0x2910,0x212F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x292F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2930,0x210F,0x2930,0x2130,0x210F,0x2110,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x210F,0x2130,0x210F,0x2110,0x2130,0x2130,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x292F,0x212F,0x292F,0x292F,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x2930,0x212F,0x210F,0x212F,0x2930,0x2930,0x212F,0x212F,0x2930,0x290F,0x290F,0x290F,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x2930,0x2910,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x212F,0x292F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2930,0x2110,0x2930,0x2110,0x2130,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1912,0x1132,0x1154,0x1175,0x0996,0x09D7,0x09D8,0x09F8,0x01D8,0x01D8,0x01D9,0x09D9,0x11F9,0x11F8,0x19D7,0x1175,0x1113,0x1112,0x1911,0x1911,0x2152,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2930,0x2110,0x210F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x190F,0x18EF,0x1910,0x1910,0x2130,0x2130,0x2151,0x2930,0x2130,0x2130,0x210F,0x2930,0x212F,0x2130,0x2930,0x2130,0x2130,0x212F,0x210F,0x2930,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2110,0x2130,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x210F,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x2110,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2950,0x292F,0x292F,0x2950,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x290F,0x210F,0x292F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x310E,0x392F,0xAC7B,0xCD7F,0xCD3E,0x9398,0x414F,0x30ED,0x30EE,0x30EE,0x310F,0x310F,0x310F,0x3130,0x3130,0x3930,0x3930,0x3130,0x3150,0x3150,0x3150,0x3150,0x3951,0x3151,0x3951,0x3951,0x3150,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3971,0x3951,0x3951,0x3971,0x3951,0x3951,0x3951,0x3951,0x3951,0x3971,0x3951,0x3951,0x3951,0x3971,0x3951,0x3951,0x3971,0x3951,0x3951,0x3972,0x3972,0x3952,0x3952,0x3952,0x3951,0x3952,0x3972,0x3972,0x3952,0x3972,0x3952,0x3971,0x3971,0x3971,0x3972,0x3972,0x3972,0x3951,0x3971,0x3972,0x3972,0x3971,0x3971,0x3971,0x3971,0x3971,0x4172,0x3971,0x3971,0x3971,0x3971,0x3971,0x3971,0x4171,0x4171,0x4171,0x4171,0x4171,0x4171,0x4171,0x4171,0x4171,0x4171,0x4171,0x4171,0x4172,0x4172,0x4172,0x4172,0x4172,0x4172,0x4192,0x4172,0x4992,0x4972,0x4972,0x4172,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x49B2,0x49B2,0x4992,0x5191,0x5950,0xA336,0xE4BB,0xE479,0xDC18,0xDBF7,0xDBF7,0xDBD7,0xDBB6,0xDB96,0xDB96,0xD396,0xC376,0xB396,0x9BB7,0x83F8,0x749A,0x653C,0x5DBD,0x55FD,0x55DD,0x559D,0x655C,0x74BB,0x7B17,0x9255,0xAA15,0xB1F4,0xB9F4,0xC1F4,0xC1D3,0xC1D3,0xC1F4,0xC214,0xBA15,0xAA15,0x91D4,0x7994,0x7194,0x69B4,0x61B4,0x61D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59F4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x51D4,0x51D4,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x5992,0x5992,0x6192,0x6192,0x6192,0x6191,0x6191,0x6150,0x6150,0x7A12,0xA336,0xBBB8,0xC3F9,0xCBF9,0xCBF8,0xD3F8,0xD3F8,0xD3F7,0xD3F7,0xD3D7,0xDBD7,0xDBD7,0xDBD6,0xDBB6,0xDBB6,0xDB96,0xDB96,0xDB96,0xDB96,0xDB76,0xDB76,0xD376,0xDB96,0xDB96,0xDB96,0xD376,0xD376,0xD356,0xD356,0xD377,0xD398,0xD399,0xC3DC,0x82BB,0x4178,0x297A,0x199C,0x119C,0x11BD,0x11BD,0x119D,0x199D,0x217C,0x293A,0x3119,0x727C,0x7ABB,0x72BA,0x629A,0x4A79,0x3AFA,0x2BFC,0x249D,0x14FD,0x0D5E,0x0E3F,0x0EBF,0x0F1F,0x073F,0x0F9F,0x0FBF,0x0FDF,0x07DF,0x07BF,0x07BF,0x07BF,0x079F,0x179F,0x277F,0x2F1F,0x4EBE,0x7EBF,0x7498,0x6231,0x9253,0xA1D2,0xB9F3,0xC1B3,0xC1B3,0xC193,0xC993,0xC994,0xC994,0xC193,0xC1D4,0xB9D4,0xB235,0x9A15,0x6931,0x5111,0x5152,0x4972,0x4172,0x4152,0x3972,0x3972,0x3972,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3151,0x3151,0x3130,0x3131,0x2931,0x2931,0x2931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x2130,0x2110,0x2130,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x2131,0x1931,0x1911,0x1932,0x1953,0x1153,0x1974,0x21B6,0x2A17,0x2217,0x19B5,0x1153,0x1132,0x1132,0x1931,0x2131,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2131,0x1931,0x1931,0x1132,0x1133,0x1174,0x19B6,0x19F7,0x19F8,0x19F7,0x11D7,0x11B7,0x11D7,0x19F7,0x19F7,0x11B6,0x1195,0x1974,0x1933,0x1932,0x1931,0x2131,0x2110,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2131,0x2111,0x2131,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1911,0x1911,0x2131,0x2172,0x2152,0x1911,0x1911,0x1911,0x1931,0x2152,0x2172,0x2151,0x1910,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2171,0x1930,0x1931,0x1931,0x1930,0x2151,0x2151,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2131,0x2152,0x2152,0x1931,0x2131,0x1911,0x2131,0x2131,0x2131,0x2152,0x2152,0x2131,0x2151,0x2110,0x2110,0x2110,0x1910,0x2131,0x2152,0x2151,0x2131,0x2110,0x2110,0x2131,0x2151,0x2152,0x2131,0x1911,0x1931,0x1931,0x1931,0x1931,0x2172,0x2172,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x2152,0x2152,0x1911,0x1931,0x1930,0x1930,0x2150,0x2130,0x190F,0x190F,0x2130,0x2951,0x2110,0x2110,0x2110,0x1910,0x2131,0x2131,0x2152,0x1951,0x2152,0x1931,0x1911,0x1911,0x1912,0x1932,0x2153,0x2152,0x2151,0x2130,0x1930,0x2130,0x1930,0x2151,0x1931,0x1931,0x2152,0x2152,0x1931,0x1931,0x1931,0x1952,0x1952,0x1932,0x1931,0x1931,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F, + 0x290F,0x290F,0x2910,0x2110,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2910,0x2930,0x210F,0x290F,0x2930,0x210F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x212F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x210F,0x292F,0x290F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2930,0x2930,0x212F,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x290F,0x290F,0x2910,0x2110,0x2910,0x2110,0x210F,0x2930,0x2930,0x2930,0x290F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1912,0x1933,0x1154,0x0975,0x0996,0x09D7,0x09D8,0x09D8,0x01D8,0x01B8,0x01D8,0x09D9,0x09F9,0x11F8,0x11D7,0x1175,0x1113,0x10F2,0x1911,0x1911,0x2132,0x2131,0x2131,0x1931,0x2131,0x2131,0x1931,0x2131,0x1911,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1910,0x1931,0x1910,0x1910,0x18F0,0x18F0,0x1910,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x2930,0x210F,0x2930,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2130,0x212F,0x210F,0x210F,0x2930,0x210F,0x2930,0x2930,0x210F,0x2110,0x2110,0x210F,0x2930,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2930,0x2930,0x212F,0x2930,0x292F,0x292F,0x292F,0x2930,0x292F,0x292F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x2930,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x212F,0x210F,0x292F,0x212F,0x212F,0x292F,0x212F,0x212F,0x290F,0x290F,0x292F,0x2930,0x2930,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x310E,0x4170,0x9C3A,0x9BF9,0x7294,0x390E,0x30CD,0x30EE,0x30EE,0x30EE,0x310F,0x310F,0x310F,0x310F,0x3130,0x3930,0x3130,0x3130,0x3130,0x3130,0x3130,0x3130,0x3130,0x3130,0x3150,0x3951,0x3150,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3951,0x3151,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3952,0x3952,0x3952,0x3951,0x3951,0x3951,0x3951,0x3951,0x3971,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x4171,0x4171,0x4151,0x4171,0x4171,0x4171,0x4171,0x4171,0x4171,0x4171,0x4171,0x4151,0x4171,0x4171,0x4171,0x4172,0x4171,0x4171,0x4172,0x4172,0x4972,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x5192,0x5191,0x596F,0xBBF9,0xE49A,0xE459,0xDBF7,0xDBD7,0xDBB7,0xDBB6,0xDB96,0xDB76,0xD375,0xCB76,0xC376,0xB396,0x9B97,0x83F8,0x749A,0x653B,0x5DDD,0x5DDD,0x5DDD,0x5D7C,0x6D1C,0x7C3A,0x82B6,0x9A15,0xA9F4,0xB1D4,0xB9F4,0xB9F3,0xC1F3,0xB9F3,0xB9F4,0xBA15,0xB215,0xA1F4,0x8193,0x7193,0x6994,0x61B4,0x61B4,0x61D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x51D4,0x51B3,0x51D3,0x51D4,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x5193,0x51B3,0x51B3,0x51B3,0x5192,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x5993,0x5993,0x59B3,0x59B3,0x59B3,0x5993,0x5993,0x5992,0x5992,0x5992,0x5992,0x5992,0x61B2,0x61B2,0x6192,0x6192,0x6191,0x69B1,0x8212,0x9AB4,0xBBB8,0xCBF9,0xCBF8,0xCBD8,0xD3D7,0xD3D7,0xD3B6,0xD3B6,0xD3B6,0xDBB6,0xDBB7,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xD376,0xD376,0xDB96,0xD375,0xD376,0xD376,0xD376,0xD356,0xD356,0xD377,0xD378,0xD399,0xC3DB,0x931B,0x4998,0x297A,0x199B,0x19BD,0x11BD,0x11BD,0x099D,0x119D,0x219C,0x215B,0x2939,0x6A7C,0x7ADC,0x6A9B,0x629A,0x4A79,0x3ADA,0x33DC,0x249D,0x14FD,0x055D,0x0E3F,0x0E9F,0x0F1F,0x073F,0x0F9F,0x0FBF,0x0FDF,0x07DF,0x07DF,0x07BF,0x07BF,0x0FBF,0x0F9F,0x1F7F,0x2F3F,0x46BE,0x7EDF,0x7D3B,0x6272,0x8232,0xA1F2,0xB1D3,0xB9B3,0xC9B3,0xC9B3,0xC993,0xC9B4,0xC9B4,0xC193,0xC1B3,0xB9D4,0xB215,0x9A15,0x6952,0x5131,0x4952,0x4972,0x4172,0x4172,0x3972,0x3972,0x3972,0x3951,0x3951,0x3951,0x3131,0x3951,0x3951,0x3150,0x3130,0x3150,0x3150,0x3150,0x2930,0x2951,0x2931,0x2930,0x2930,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x210F,0x210F,0x212F,0x2130,0x2110,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2151,0x2131,0x1931,0x1911,0x1932,0x1932,0x1932,0x1953,0x1974,0x19B6,0x2217,0x2217,0x19B5,0x1153,0x1132,0x1112,0x1932,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1911,0x1931,0x1132,0x1133,0x1154,0x1175,0x19B6,0x19B6,0x1196,0x1196,0x11B6,0x1196,0x1195,0x1174,0x1154,0x1933,0x1932,0x1911,0x1931,0x2130,0x2110,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2111,0x2111,0x2111,0x2111,0x1911,0x2131,0x2131,0x1911,0x1931,0x1931,0x1931,0x1931,0x2131,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2150,0x1930,0x1930,0x1930,0x1930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x2131,0x2111,0x2111,0x2131,0x2111,0x2131,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2131,0x2151,0x2131,0x2110,0x2110,0x2130,0x2131,0x2131,0x2131,0x1931,0x2151,0x1931,0x1931,0x1931,0x1931,0x2151,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x2151,0x2131,0x1910,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2951,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x1931,0x2151,0x1930,0x1931,0x1931,0x1911,0x1912,0x1932,0x2132,0x2131,0x2130,0x2130,0x2130,0x1930,0x1930,0x2131,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x2152,0x1931,0x1931,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F, + 0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2930,0x212F,0x212F,0x292F,0x290F,0x292F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x292F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x2110,0x2930,0x2110,0x2910,0x290F,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x2110,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2131,0x2131,0x1911,0x1912,0x1933,0x1134,0x1175,0x11B6,0x11F8,0x09B7,0x09D8,0x01B8,0x01D8,0x09D9,0x09D9,0x09D8,0x11F8,0x11D7,0x1175,0x0913,0x10F2,0x1912,0x1912,0x2152,0x2132,0x2131,0x2132,0x1932,0x1932,0x1932,0x1931,0x1931,0x1911,0x1931,0x1931,0x1910,0x1911,0x1910,0x2110,0x2130,0x2130,0x292F,0x292F,0x210F,0x292F,0x292F,0x212F,0x2110,0x2130,0x2130,0x1931,0x2152,0x2152,0x1952,0x1932,0x1111,0x1111,0x10F1,0x1911,0x1910,0x2130,0x2130,0x2930,0x2110,0x2110,0x210F,0x2130,0x2930,0x2130,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2930,0x2110,0x2110,0x2130,0x2130,0x2930,0x2930,0x210F,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x2130,0x210F,0x210F,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x210F,0x2130,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x20EF,0x290F,0x290F,0x290F,0x290F,0x28EF,0x290F,0x290F,0x290F,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x210F,0x290F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x28EF,0x28EE,0x3950,0x394F,0x30CD,0x30EE,0x30EE,0x30EE,0x30EE,0x30EE,0x30EE,0x30EF,0x30EF,0x30EF,0x30EF,0x3110,0x3110,0x3110,0x3110,0x3130,0x3110,0x3130,0x3130,0x3130,0x3110,0x3130,0x3130,0x3130,0x3130,0x3130,0x3130,0x3130,0x3130,0x3130,0x3131,0x3131,0x3131,0x3131,0x3131,0x3131,0x3130,0x3131,0x3151,0x3131,0x3130,0x3131,0x3131,0x3131,0x3931,0x3131,0x3131,0x3931,0x3931,0x3931,0x3131,0x3931,0x3931,0x3931,0x3931,0x3931,0x3131,0x3931,0x3931,0x3931,0x3931,0x3131,0x3931,0x3131,0x3931,0x3931,0x3931,0x3931,0x3931,0x3931,0x3931,0x3931,0x3931,0x3931,0x3931,0x3931,0x3931,0x3931,0x3931,0x3931,0x3931,0x3931,0x3931,0x3951,0x3951,0x3951,0x3951,0x3951,0x3931,0x3931,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x4151,0x4151,0x3951,0x4151,0x4151,0x4151,0x4151,0x4151,0x4151,0x4151,0x4151,0x4171,0x4171,0x4151,0x4171,0x4171,0x4972,0x4992,0x4171,0x4971,0x4971,0x4951,0x5150,0x594F,0xC3F8,0xE479,0xE438,0xDBD7,0xDBB7,0xDBB6,0xDB96,0xDB76,0xD355,0xD355,0xCB56,0xC355,0xB376,0x9B97,0x8C18,0x74BA,0x6D5C,0x65DD,0x65DD,0x659D,0x651C,0x747B,0x8399,0x9276,0xA215,0xB215,0xBA14,0xB9F4,0xB9F3,0xB9D3,0xB9D3,0xB9F4,0xB1F4,0xA9F5,0x9193,0x7973,0x6973,0x6173,0x6194,0x61B4,0x61D4,0x59B4,0x59B3,0x59B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x5193,0x51B3,0x5193,0x5193,0x5193,0x5193,0x5193,0x5193,0x5193,0x5193,0x5193,0x5193,0x5193,0x5193,0x5193,0x5193,0x5192,0x5192,0x5193,0x5193,0x5193,0x5193,0x5193,0x5193,0x5192,0x5192,0x5193,0x5193,0x5193,0x51B3,0x5193,0x5192,0x5193,0x5993,0x5993,0x59B3,0x5993,0x5993,0x5993,0x5993,0x5993,0x5992,0x5992,0x5992,0x5992,0x5992,0x61B2,0x6192,0x6192,0x6192,0x6191,0x6171,0x6150,0x612F,0x8A53,0xAB36,0xBBB7,0xCBF8,0xD3D7,0xD3B7,0xD3D7,0xDBB7,0xDBB6,0xDB96,0xDB96,0xDB76,0xDB96,0xDB96,0xDB96,0xD376,0xD375,0xD375,0xD375,0xD376,0xD376,0xD356,0xD356,0xD356,0xD377,0xD378,0xD399,0xC3BB,0xAB7C,0x6219,0x3179,0x219B,0x19BD,0x19DE,0x09BD,0x09BE,0x11BD,0x19BD,0x29BC,0x295A,0x521B,0x72BC,0x6A7B,0x627A,0x4A59,0x3ABA,0x33BC,0x2C9D,0x14FE,0x0D7E,0x0E1F,0x0E9F,0x0F1F,0x0F5F,0x0F9F,0x0FBF,0x0FBF,0x0FDF,0x07DF,0x07BF,0x07BF,0x0FBF,0x179F,0x1F7F,0x2F3F,0x46FF,0x6EDF,0x861D,0x5AB2,0x7A32,0xA233,0xB1F3,0xC1D3,0xC9B4,0xC173,0xC973,0xC993,0xC993,0xC193,0xC1B3,0xB9D4,0xB215,0x9A15,0x6932,0x5111,0x5152,0x4972,0x4172,0x4172,0x3972,0x3972,0x3972,0x3972,0x3951,0x3151,0x3131,0x3131,0x3151,0x3130,0x3130,0x3130,0x3130,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x290F,0x210F,0x2910,0x210F,0x2130,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x212F,0x2930,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x210F,0x2930,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2151,0x2131,0x2131,0x1931,0x1932,0x1932,0x1933,0x1153,0x1995,0x19B6,0x21F7,0x21F7,0x19B6,0x1154,0x08F2,0x1112,0x1911,0x2131,0x2151,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x1930,0x1910,0x1911,0x1931,0x1932,0x1953,0x1974,0x1174,0x1174,0x1174,0x1174,0x1153,0x1153,0x1953,0x1932,0x1932,0x1931,0x1911,0x2110,0x2110,0x2110,0x2130,0x2930,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x2152,0x2131,0x2131,0x2110,0x2110,0x2111,0x2110,0x2131,0x2151,0x2131,0x1911,0x1931,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x2130,0x2130,0x2110,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x20F0,0x2110,0x2130,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2131,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x2131,0x1931,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x210F,0x2130,0x2930,0x2930,0x210F,0x210F,0x2130,0x2951,0x2131,0x2110,0x2110,0x2130,0x2130,0x2150,0x2130,0x212F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x1930,0x2131,0x1911,0x1911,0x2131,0x2131,0x2110,0x190F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1910,0x1910,0x1910,0x1910,0x1911,0x1931,0x1931,0x2131,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2130, + 0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x290F,0x212F,0x210F,0x292F,0x210F,0x212F,0x210F,0x2930,0x292F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2110,0x2110,0x2930,0x290F,0x210F,0x2930,0x290F,0x210F,0x2910,0x2910,0x2930,0x2110,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x290F,0x292F,0x290F,0x210F,0x210F,0x290F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x1912,0x1133,0x1134,0x1175,0x11B7,0x09B7,0x09B8,0x09D8,0x09D8,0x01D8,0x01D8,0x09D8,0x09D8,0x11F8,0x11D7,0x1175,0x0913,0x1112,0x10F1,0x1912,0x2152,0x2132,0x1932,0x1932,0x1932,0x1953,0x1132,0x0912,0x0912,0x1112,0x0912,0x1132,0x1112,0x1111,0x1931,0x1931,0x2131,0x2110,0x2130,0x2930,0x292F,0x290F,0x290F,0x290F,0x292F,0x2130,0x2130,0x1931,0x1952,0x1132,0x1132,0x1153,0x1974,0x1994,0x1974,0x1953,0x1112,0x10F1,0x1911,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x1930,0x1931,0x1932,0x1132,0x1132,0x1132,0x1132,0x0911,0x1111,0x1911,0x1911,0x2111,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x210F,0x212F,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2110,0x2930,0x2110,0x2110,0x212F,0x2930,0x210F,0x2130,0x210F,0x212F,0x290F,0x290F,0x212F,0x2130,0x212F,0x210F,0x2930,0x2930,0x210F,0x2930,0x210F,0x212F,0x210F,0x292F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x28EF,0x20EE,0x20EE,0x20EE,0x20EE,0x28EF,0x20EE,0x20EF,0x20EE,0x20EE,0x20EE,0x20EE,0x28EE,0x28EF,0x20EE,0x20EE,0x28EF,0x28EF,0x28EF,0x28EF,0x28EF,0x28EF,0x20EE,0x20EE,0x28EF,0x20CE,0x20EE,0x20CE,0x20CE,0x20CE,0x20EE,0x20CE,0x20CE,0x20CE,0x20CE,0x20EE,0x20CE,0x20EE,0x20EE,0x20EE,0x20EE,0x20CE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EF,0x20EF,0x20EF,0x20EE,0x20EF,0x20EE,0x20EE,0x20EE,0x20EE,0x20EF,0x20EE,0x20EE,0x20EF,0x20EF,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EF,0x20CF,0x20EF,0x20EF,0x28EF,0x20EF,0x20EE,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EE,0x20EF,0x20EE,0x20EE,0x20EE,0x20EF,0x20EF,0x20EF,0x20EF,0x20EE,0x20EF,0x20EF,0x28EF,0x28EF,0x28EF,0x28EE,0x28EE,0x28EE,0x28CE,0x28CE,0x28CE,0x28CD,0x28AD,0x28CD,0x28CD,0x28CE,0x28CE,0x30CE,0x30CE,0x30EE,0x30CE,0x30EE,0x30EF,0x30EF,0x30EF,0x30EF,0x30EF,0x28EF,0x30EF,0x310F,0x290F,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3111,0x3111,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3130,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3110,0x3130,0x3130,0x3930,0x3910,0x3910,0x3910,0x3931,0x3910,0x3931,0x3931,0x3931,0x3930,0x3931,0x3931,0x3930,0x3930,0x3931,0x3930,0x3930,0x3931,0x3931,0x4131,0x4131,0x4131,0x4131,0x4131,0x4131,0x4151,0x4151,0x4151,0x4151,0x4151,0x4151,0x4151,0x4151,0x4130,0x4930,0x512F,0x614E,0xCC19,0xDC39,0xE3F8,0xDBB7,0xDB96,0xDB96,0xDB76,0xDB76,0xD355,0xD335,0xCB35,0xBB15,0xB356,0x9B77,0x8BF8,0x7CBA,0x755B,0x6DBD,0x6DBD,0x6D5C,0x74BB,0x83FA,0x8AF7,0x9A56,0xA9F5,0xB215,0xBA14,0xB9F4,0xC1F4,0xB9F3,0xB9F4,0xB1D4,0xA9D4,0x9193,0x8152,0x7152,0x6953,0x6173,0x6193,0x6193,0x5993,0x5993,0x5193,0x5193,0x5193,0x5193,0x5193,0x5193,0x5193,0x5193,0x5173,0x5172,0x5172,0x5173,0x5172,0x4972,0x4972,0x4972,0x4972,0x4972,0x4972,0x4972,0x4972,0x4972,0x4972,0x4972,0x4972,0x4972,0x4972,0x4972,0x4972,0x4972,0x4972,0x5172,0x5172,0x4972,0x5172,0x5172,0x5172,0x5172,0x5172,0x5172,0x5172,0x5172,0x5192,0x5172,0x5172,0x5172,0x5172,0x5172,0x5992,0x5972,0x5992,0x5992,0x5972,0x5992,0x5992,0x5992,0x5972,0x5992,0x5991,0x6171,0x6171,0x6171,0x6150,0x6150,0x612F,0x718F,0x8A32,0xC3B7,0xD418,0xD3D7,0xD3B7,0xDBB7,0xDB96,0xD396,0xDB76,0xD376,0xD376,0xDB76,0xD376,0xD375,0xD375,0xD375,0xD376,0xD376,0xD355,0xD355,0xD356,0xD377,0xD377,0xD398,0xC3BA,0xAB9C,0x6A39,0x3179,0x219B,0x19DD,0x19DE,0x09BE,0x09DE,0x11DE,0x19DE,0x29DD,0x299B,0x41BA,0x6ABD,0x6A7B,0x5A5A,0x4A3A,0x3A9A,0x337C,0x245D,0x1CFE,0x0D5E,0x0DFF,0x067F,0x0F1F,0x0F5F,0x0F9F,0x0FBF,0x0FBF,0x0FDF,0x07DF,0x07DF,0x07BF,0x079F,0x0F9F,0x1F7F,0x2F5F,0x3EFE,0x66DF,0x8E5E,0x52F3,0x7232,0x9A33,0xB1D2,0xC1B3,0xC9B3,0xC993,0xC993,0xC993,0xC993,0xC9B3,0xC1B3,0xB9D4,0xB215,0x9A15,0x6952,0x5111,0x5173,0x4972,0x4172,0x4172,0x4172,0x3972,0x3972,0x3952,0x3951,0x3151,0x3951,0x3131,0x3151,0x3130,0x3130,0x3130,0x312F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x1931,0x1932,0x1933,0x1153,0x1174,0x19D6,0x2218,0x21F7,0x19B5,0x1154,0x1112,0x1111,0x1931,0x2131,0x2110,0x2130,0x2110,0x2130,0x2151,0x2130,0x2130,0x2130,0x1930,0x1911,0x1911,0x1932,0x1932,0x1933,0x1133,0x1132,0x1953,0x1932,0x1932,0x1932,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2131,0x1910,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2930,0x2931,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x2130,0x2130,0x2131,0x2130,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x2950,0x292F,0x210F,0x210F,0x2910,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2110,0x1910,0x2131,0x2131,0x2110,0x2130,0x2130,0x212F,0x2130,0x2150,0x2130,0x2130,0x1910,0x1910,0x1910,0x1910,0x2111,0x1910,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130, + 0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2930,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x292F,0x212F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x290F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2910,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2930,0x2930,0x2110,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x1911,0x1911,0x1133,0x1154,0x1175,0x11B7,0x09D7,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09F8,0x11F8,0x11B6,0x1155,0x1133,0x1112,0x1112,0x1912,0x1911,0x1931,0x1932,0x1912,0x1933,0x1954,0x0933,0x1174,0x19F6,0x19F7,0x2217,0x19F6,0x2217,0x21F6,0x19B5,0x1953,0x1932,0x1931,0x2131,0x2130,0x2130,0x2930,0x210F,0x20EF,0x292F,0x2130,0x2130,0x1931,0x1111,0x1132,0x1153,0x19D5,0x19F7,0x1A17,0x2217,0x19F6,0x19B6,0x1174,0x1953,0x1931,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x2130,0x2130,0x1910,0x1931,0x1931,0x1972,0x1153,0x1194,0x2237,0x2237,0x2237,0x2217,0x19F6,0x1994,0x1932,0x1931,0x2111,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2930,0x2130,0x2130,0x212F,0x2930,0x2930,0x212F,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x212F,0x2130,0x2130,0x2130,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x28EE,0x290F,0x28EE,0x20EE,0x20EE,0x20CE,0x20CE,0x20CE,0x20CE,0x20AD,0x20AD,0x20AD,0x20AD,0x20AD,0x20AD,0x20AE,0x20AE,0x20AE,0x20AD,0x20AD,0x20AD,0x20AD,0x20AE,0x20AD,0x20AD,0x20AD,0x20AD,0x20AE,0x20AE,0x20AD,0x20AE,0x20AE,0x20AE,0x20AE,0x20AD,0x20AE,0x20AE,0x20AD,0x20AD,0x20AD,0x20AD,0x20AD,0x20AD,0x20AD,0x20AD,0x20AD,0x20AD,0x20AE,0x20AE,0x20AD,0x20AD,0x20AE,0x20AD,0x20AD,0x20AD,0x20AD,0x20CE,0x20CE,0x20AD,0x20AE,0x20AE,0x20AD,0x20AD,0x20AD,0x20AD,0x20CD,0x20AD,0x20AE,0x20AE,0x20AD,0x20CE,0x20AD,0x20CE,0x20AD,0x20AD,0x20AE,0x20AE,0x20CE,0x20CE,0x20AD,0x20AE,0x20AD,0x20AD,0x20AE,0x20AE,0x20AE,0x20AD,0x20AE,0x20AE,0x20CE,0x20CE,0x20AE,0x20AE,0x20AD,0x20AD,0x20AE,0x20AE,0x20AD,0x20AD,0x20CE,0x20CE,0x20AD,0x20CE,0x20CD,0x20CE,0x20CE,0x20AE,0x20AE,0x20AE,0x20AE,0x20AD,0x20AD,0x20AD,0x20AD,0x28AD,0x28AD,0x288D,0x28AD,0x28AD,0x28AD,0x28AD,0x28AD,0x28AD,0x28CD,0x28CE,0x30CE,0x28CE,0x28CE,0x30CE,0x28CE,0x28CE,0x28EE,0x28CE,0x28CE,0x28CE,0x28CF,0x28CF,0x28EF,0x28CF,0x28CF,0x28CF,0x28CF,0x28CF,0x28CF,0x28CF,0x28CF,0x28CF,0x30EF,0x28CF,0x30EF,0x28CF,0x30EF,0x28CF,0x28EF,0x30EF,0x28CF,0x28CF,0x28CF,0x30EF,0x28CF,0x30EF,0x28CF,0x28CF,0x30EF,0x30CF,0x30EF,0x30CF,0x30CF,0x30CF,0x30CF,0x30CF,0x30CF,0x30CF,0x30CF,0x30CF,0x30CF,0x30F0,0x30CF,0x30CF,0x30CF,0x30CF,0x30EF,0x30EF,0x30F0,0x30CF,0x30EF,0x30EF,0x30EF,0x30EF,0x30EF,0x30EF,0x30EF,0x30EF,0x30CF,0x30EF,0x30EF,0x30EF,0x30EF,0x30EF,0x30EF,0x30EF,0x30EF,0x30EF,0x30EF,0x30EF,0x30EF,0x30EF,0x30F0,0x30F0,0x30EF,0x30EF,0x30F0,0x30F0,0x30EF,0x38F0,0x30EF,0x30EF,0x38EF,0x38F0,0x38F0,0x38F0,0x38F0,0x38EF,0x38F0,0x38F0,0x3910,0x3910,0x3910,0x3910,0x3910,0x4130,0x4110,0x4110,0x410F,0x410F,0x490F,0x510E,0x612E,0xCC18,0xDC18,0xDBD7,0xDB96,0xDB96,0xDB76,0xDB56,0xDB56,0xD335,0xD315,0xCB15,0xC315,0xB336,0xA376,0x9BF8,0x8CBA,0x853B,0x7D9D,0x7D7D,0x7CDB,0x843A,0x8B58,0x9276,0xA215,0xA9F4,0xB1F4,0xB9F4,0xB9D4,0xB9D3,0xB9D3,0xB9D4,0xA9B3,0x9973,0x8132,0x7131,0x6932,0x6152,0x6152,0x5952,0x5972,0x5152,0x5152,0x5152,0x5172,0x5172,0x4952,0x5152,0x4952,0x4952,0x4952,0x4952,0x4951,0x4951,0x4951,0x4931,0x4931,0x4931,0x4931,0x4931,0x4131,0x4931,0x4131,0x4131,0x4931,0x4931,0x4931,0x4931,0x4931,0x4931,0x4931,0x4931,0x4951,0x4951,0x4951,0x4951,0x4951,0x4951,0x4951,0x4951,0x4951,0x4951,0x4951,0x4951,0x5151,0x5151,0x5151,0x5151,0x5151,0x5151,0x5151,0x5151,0x5151,0x5151,0x5151,0x5151,0x5951,0x5951,0x5951,0x5951,0x5951,0x5951,0x5951,0x5951,0x5951,0x6150,0x6150,0x612F,0x612F,0x610E,0x60CD,0x81B0,0xB2F4,0xC355,0xD396,0xDB96,0xDB96,0xDB96,0xDB96,0xD376,0xD375,0xD375,0xD375,0xD375,0xD375,0xD355,0xD375,0xD355,0xCB55,0xD356,0xD376,0xD377,0xCB78,0xC399,0xB3BB,0x7ABA,0x2958,0x219B,0x19DC,0x19FE,0x09DE,0x09DE,0x11FE,0x19FE,0x21FD,0x219B,0x319A,0x5A7D,0x629C,0x5A5B,0x4A19,0x3A5A,0x2B1B,0x23FD,0x1CDE,0x0D5E,0x05DE,0x065E,0x0F1F,0x0F7F,0x0F9F,0x0FBF,0x0FBF,0x07DF,0x07DF,0x07BF,0x07BF,0x079F,0x0F9F,0x177F,0x2F5F,0x3EFE,0x5EDE,0x8EBF,0x52F3,0x6A11,0x9A33,0xB213,0xC1D3,0xC9B3,0xC9B3,0xC993,0xC173,0xC993,0xC1B3,0xC193,0xB9D4,0xB215,0x9A15,0x6952,0x5911,0x5152,0x5193,0x4992,0x4172,0x4172,0x3952,0x3972,0x3972,0x3972,0x3972,0x3951,0x3151,0x3151,0x3150,0x3130,0x3130,0x3130,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x290F,0x2910,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x292F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x210F,0x2130,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2111,0x2151,0x1932,0x1932,0x1132,0x1153,0x1995,0x21D7,0x2217,0x19F6,0x19B5,0x0933,0x1132,0x1111,0x1931,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1911,0x1911,0x2132,0x1932,0x1932,0x1931,0x1911,0x1911,0x2131,0x2131,0x2151,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2930,0x2930,0x2130,0x2930,0x2950,0x2950,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x2910,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x2950,0x2930,0x210F,0x210F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x210F,0x210F,0x212F,0x2930,0x212F,0x2130,0x210F,0x2130,0x2950,0x2130,0x2130,0x2130,0x210F,0x190F,0x212F,0x212F,0x2130,0x2131,0x2131,0x2131,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2151,0x2130,0x2150,0x190F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130, + 0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x290F,0x2930,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x292F,0x292F,0x290F,0x212F,0x210F,0x292F,0x2930,0x292F,0x290F,0x2930,0x290F,0x210F,0x2930,0x290F,0x2930,0x290F,0x290F,0x210F,0x2930,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x290F,0x2910,0x210F,0x290F,0x210F,0x290F,0x290F,0x2910,0x290F,0x210F,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x212F,0x2130,0x2130,0x210F,0x212F,0x2130,0x2130,0x2110,0x210F,0x290F,0x210F,0x2910,0x290F,0x210F,0x292F,0x290F,0x2910,0x2110,0x2910,0x2910,0x2110,0x2131,0x2131,0x1911,0x1911,0x1933,0x1154,0x0975,0x11D7,0x09D8,0x09D8,0x09D9,0x09D9,0x01D8,0x09D8,0x09D8,0x09D8,0x11F8,0x11B7,0x1175,0x1133,0x1112,0x1111,0x1911,0x1911,0x1932,0x1932,0x1932,0x1133,0x1154,0x1175,0x19F7,0x11F7,0x1A18,0x11F7,0x11F7,0x11D7,0x11D7,0x11D6,0x19D6,0x1974,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x1931,0x1111,0x1153,0x1194,0x19D6,0x11F7,0x1218,0x1218,0x1218,0x11F7,0x11D7,0x19B6,0x1995,0x1953,0x1931,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x1931,0x1931,0x1932,0x1953,0x1174,0x19F6,0x1A37,0x1A38,0x09F7,0x11F8,0x09F7,0x1A17,0x1A16,0x1974,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2930,0x2930,0x212F,0x212F,0x2930,0x212F,0x2930,0x2930,0x2110,0x2110,0x2130,0x212F,0x210F,0x212F,0x210F,0x212F,0x2930,0x210F,0x2110,0x210F,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x210F,0x212F,0x210F,0x290F,0x292F,0x292F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x292F,0x2930,0x292F,0x292F,0x292F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290E,0x28EE,0x28EE,0x28CD,0x28CD,0x28AD,0x208C,0x206B,0x184B,0x182A,0x180A,0x1009,0x1809,0x1009,0x1009,0x1009,0x1809,0x1009,0x1809,0x1809,0x1009,0x1009,0x1809,0x1809,0x1809,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1809,0x1809,0x1809,0x1009,0x1809,0x1809,0x1809,0x1009,0x1809,0x1809,0x1809,0x1009,0x1809,0x1009,0x1809,0x1809,0x1809,0x1009,0x1809,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1809,0x1009,0x1009,0x1009,0x1809,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1809,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1009,0x1809,0x1809,0x1809,0x1809,0x1809,0x1809,0x1809,0x1809,0x1809,0x1809,0x1809,0x1809,0x1809,0x1809,0x1809,0x1809,0x2009,0x2009,0x2009,0x2009,0x2009,0x2029,0x202A,0x202A,0x202A,0x202A,0x202A,0x202A,0x204A,0x202A,0x202A,0x202A,0x202A,0x202A,0x202A,0x182A,0x202A,0x202A,0x202A,0x200A,0x202B,0x202A,0x202B,0x202A,0x202A,0x202A,0x200B,0x200B,0x202B,0x202A,0x202B,0x202A,0x202A,0x202A,0x202A,0x202A,0x202A,0x200A,0x202A,0x202A,0x202A,0x202A,0x202A,0x200A,0x202A,0x202A,0x200A,0x200A,0x200A,0x200A,0x202A,0x202A,0x200A,0x200A,0x200A,0x200A,0x200B,0x200A,0x202B,0x200A,0x200A,0x202B,0x200B,0x202B,0x202B,0x200B,0x202B,0x202B,0x202B,0x202A,0x202B,0x202A,0x202B,0x200A,0x202B,0x202B,0x202B,0x202B,0x202B,0x202B,0x202B,0x202A,0x202B,0x202B,0x202B,0x202B,0x202B,0x202B,0x202B,0x202B,0x282B,0x202B,0x202B,0x202B,0x202B,0x282B,0x202B,0x202B,0x282B,0x282B,0x282B,0x282B,0x282B,0x284B,0x284B,0x284B,0x284B,0x306B,0x306B,0x306C,0x306C,0x306B,0x306C,0x386B,0x408C,0x48AC,0x79AF,0xD418,0xDBF8,0xDBD7,0xDB97,0xDB76,0xDB56,0xDB56,0xDB36,0xDB35,0xD315,0xCAF5,0xC2F5,0xBB15,0xAB36,0xA3B7,0x9C7A,0x9CFB,0x9D3C,0x94FC,0x943A,0x9358,0x9296,0xA235,0xAA14,0xB1F4,0xB9F4,0xB9D3,0xB9D3,0xB9D3,0xB1D3,0xA9B2,0x9150,0x80EF,0x68AE,0x60AE,0x58AE,0x50AE,0x50CE,0x48CE,0x48EE,0x48EE,0x48CE,0x40CE,0x40CE,0x40CE,0x40CE,0x40AD,0x40AD,0x388D,0x38AD,0x388D,0x38AD,0x388D,0x388D,0x388D,0x388D,0x388D,0x388D,0x388D,0x388D,0x388D,0x388D,0x386D,0x388D,0x386D,0x386D,0x386C,0x388D,0x388D,0x388D,0x408D,0x408D,0x408D,0x408D,0x40AD,0x408D,0x40AD,0x40AD,0x40AD,0x40AD,0x40AD,0x40AD,0x40AD,0x40AD,0x48AD,0x48AD,0x48AD,0x48AD,0x48AD,0x48AD,0x48AD,0x48CE,0x48AD,0x48AD,0x48CD,0x48CD,0x50CE,0x50EE,0x50EE,0x50EE,0x50EE,0x50EE,0x58EE,0x58EE,0x58EE,0x58EE,0x58ED,0x58CD,0x58CD,0x692E,0x796E,0x9210,0x9A31,0xB292,0xB2B2,0xC2F3,0xC314,0xCB34,0xCB55,0xCB55,0xCB55,0xD355,0xD355,0xD355,0xCB55,0xCB55,0xCB55,0xCB55,0xCB55,0xCB56,0xD377,0xCB97,0xC3B9,0xB3BB,0x82FB,0x3157,0x219A,0x21DC,0x19FE,0x09FE,0x09FE,0x09FE,0x11FE,0x221E,0x21DD,0x297A,0x4A3D,0x629D,0x629C,0x4A1A,0x3A3A,0x2ABB,0x239C,0x1CBE,0x0D3E,0x0DDF,0x065E,0x0F1F,0x0F7F,0x0F9F,0x0FBF,0x0FBF,0x0FDF,0x07BF,0x07BF,0x07BF,0x079F,0x0F9F,0x177F,0x275F,0x36FF,0x56DE,0x8EFF,0x5354,0x6231,0x9A53,0xB233,0xB9D3,0xC1B3,0xC9B4,0xC993,0xC173,0xC173,0xC193,0xC1B3,0xB9F4,0xB215,0x9A35,0x6932,0x5911,0x5152,0x4972,0x4972,0x4172,0x3972,0x3972,0x3972,0x3952,0x3951,0x3972,0x3951,0x3151,0x3151,0x3150,0x3130,0x3150,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2130,0x2110,0x2130,0x2130,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x212F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x212F,0x210F,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1932,0x1132,0x1153,0x1995,0x19F6,0x21F7,0x2217,0x19B5,0x1153,0x1112,0x1111,0x1931,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1911,0x2111,0x1910,0x1910,0x2110,0x2110,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2910,0x290F,0x2910,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2950,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x2130,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2950,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x2930,0x2930,0x290F,0x2910,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2150,0x212F,0x212F,0x210F,0x2930,0x210F,0x210F,0x290F,0x2930,0x2910,0x2110,0x2910,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2930,0x2930,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x1910,0x2130,0x2150,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2110, + 0x212F,0x210F,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2110,0x212F,0x212F,0x292F,0x212F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2110,0x2110,0x212F,0x2930,0x212F,0x212F,0x2910,0x2110,0x2130,0x2130,0x2930,0x290F,0x210F,0x2930,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x2950,0x212F,0x2130,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x2930,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x2930,0x2930,0x292F,0x292F,0x290F,0x2910,0x290F,0x290F,0x290F,0x2910,0x2930,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x210F,0x2110,0x2910,0x2930,0x210F,0x210F,0x290F,0x2930,0x2930,0x2910,0x2910,0x2110,0x2131,0x1911,0x1911,0x1933,0x1133,0x1175,0x11B7,0x09B7,0x09D8,0x09D9,0x09F9,0x09D9,0x01D8,0x09D8,0x09D8,0x09B7,0x11B6,0x1175,0x0912,0x10F1,0x1111,0x1911,0x2152,0x2152,0x1932,0x1132,0x1133,0x1154,0x1196,0x11F8,0x09D7,0x09D7,0x09B7,0x09D8,0x09B7,0x01B7,0x09D7,0x09B7,0x0996,0x1195,0x1133,0x1932,0x2131,0x2131,0x2951,0x2930,0x2930,0x2130,0x2111,0x1911,0x1132,0x1174,0x11B6,0x11D7,0x09D7,0x11F8,0x09F8,0x09D8,0x09F8,0x09D8,0x09D7,0x11B7,0x19D6,0x1974,0x10F1,0x1910,0x2131,0x2131,0x2151,0x2151,0x2131,0x1931,0x1931,0x1931,0x1132,0x1973,0x1174,0x19D6,0x11F7,0x09F8,0x01D7,0x09D8,0x01D8,0x01B7,0x0A18,0x11F7,0x11B5,0x1153,0x1932,0x2131,0x2151,0x2131,0x2130,0x2110,0x2110,0x2110,0x2930,0x2130,0x212F,0x212F,0x2130,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x210F,0x210F,0x2930,0x2130,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2110,0x210F,0x2930,0x2930,0x210F,0x290F,0x292F,0x212F,0x212F,0x292F,0x290F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2110,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x20EE,0x20CE,0x20CD,0x20AC,0x208C,0x288B,0x390D,0x496E,0x6A51,0x8B34,0xAC18,0xC4DB,0xD55D,0xDD9D,0xE5BE,0xE5BE,0xE5BD,0xE5BE,0xE5BD,0xE5BD,0xDDBD,0xDDBD,0xDDBD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5DD,0xE5DD,0xDDBD,0xE5DD,0xDDBD,0xE5DD,0xDDBD,0xDDBD,0xDDBD,0xDDBD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xDDBD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xDDBD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5DD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5DD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5DD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xDDBD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xDDBD,0xDD9D,0xDD9D,0xDD9D,0xDD9D,0xDD9D,0xDD9D,0xDD9D,0xDD9D,0xDD9D,0xDD9D,0xDD9D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xDD9D,0xDDBD,0xDDBD,0xDDBD,0xDDBD,0xDDBD,0xE59D,0xE5BD,0xDDBD,0xE5BD,0xE5BD,0xE5BD,0xDDBD,0xDD9D,0xE59D,0xE5BD,0xE59D,0xE5BD,0xE59D,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE59D,0xE5BD,0xE59D,0xE5BD,0xE5BD,0xE59D,0xE59D,0xE59D,0xE5BD,0xE5BD,0xE59D,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE5BD,0xE59D,0xE5BD,0xE59D,0xE59D,0xE5BD,0xE59D,0xE5BD,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE5BD,0xE59D,0xE5BD,0xE5BE,0xE59D,0xE5BD,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE59D,0xE57D,0xE57D,0xDD7D,0xE55D,0xE55D,0xE55D,0xE53C,0xE51C,0xE4DB,0xE49A,0xDC18,0xDBD7,0xDB97,0xDB76,0xDB56,0xDB36,0xDB36,0xDB15,0xD2F5,0xD2F5,0xD2D5,0xCAD5,0xC2D5,0xB2D5,0xAAF6,0xAB77,0xA398,0xA3B8,0x9B37,0x92B6,0x9A55,0xA235,0xA9F4,0xB214,0xB9F4,0xB9D3,0xB9D3,0xB1B3,0xB1B2,0xA9D2,0xBAB4,0xE419,0xECDB,0xECFC,0xED1C,0xE51C,0xE53C,0xE53C,0xE55D,0xE55C,0xE57D,0xE55D,0xE57D,0xE57D,0xE57D,0xE55D,0xE57D,0xE57D,0xE57D,0xE57D,0xE57D,0xE57D,0xE57D,0xE57D,0xE57D,0xE57D,0xE57D,0xE57D,0xE57D,0xE57D,0xE57D,0xE55D,0xE55D,0xE55D,0xE55D,0xE53C,0xE53C,0xE53C,0xE53C,0xED3D,0xE51C,0xED3C,0xE53C,0xED3C,0xED3C,0xED3C,0xE53C,0xED3C,0xED3C,0xED3C,0xE51C,0xED3C,0xED3C,0xED3C,0xED3C,0xED3C,0xED3C,0xED3C,0xED3C,0xED3C,0xED1C,0xED3C,0xED3C,0xED3C,0xED3C,0xED3C,0xE51C,0xE51C,0xE51C,0xE51C,0xE51C,0xE4FC,0xE4FC,0xECFC,0xED1C,0xECFB,0xECFB,0xECDB,0xECFB,0xECDA,0xECBA,0xE499,0xEC99,0xEC99,0xEC78,0xEC78,0xEC78,0xEC78,0xEC78,0xEC58,0xE458,0xE437,0xE438,0xE438,0xE437,0xE458,0xE438,0xEC58,0xEC58,0xEC59,0xEC59,0xE459,0xDC5A,0xC41B,0x8B3B,0x3157,0x219A,0x21FC,0x1A1D,0x09FE,0x09FE,0x0A1E,0x0A1E,0x1A1E,0x21FD,0x219B,0x39FC,0x62BD,0x62BC,0x4A3B,0x3A3A,0x2A5A,0x1B1B,0x1C7E,0x153E,0x0DFF,0x067F,0x0EFF,0x0F5F,0x0F9F,0x0FBF,0x0FBF,0x0FDF,0x07BF,0x07BF,0x079F,0x079F,0x0FBF,0x179F,0x275F,0x36FF,0x4EBE,0x7E9F,0x5BB5,0x5A11,0x9253,0xA9F3,0xC1F4,0xC193,0xC9B4,0xC993,0xC993,0xC993,0xC193,0xC1B3,0xB9D4,0xB215,0x9A15,0x6932,0x5911,0x5152,0x4972,0x4972,0x4172,0x4172,0x3972,0x3972,0x3952,0x3951,0x3972,0x3151,0x3151,0x3131,0x3150,0x3130,0x3130,0x3150,0x2950,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x290F,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x2110,0x2130,0x210F,0x2130,0x212F,0x210F,0x2930,0x212F,0x212F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1132,0x1153,0x1995,0x21F6,0x2237,0x2237,0x19B5,0x1153,0x1112,0x1931,0x1931,0x2131,0x2130,0x2110,0x20EF,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x18EF,0x20EF,0x210F,0x2130,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2930,0x2930,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x20EF,0x290F,0x2910,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x2910,0x2910,0x2930,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x290F,0x2930,0x210F,0x290F,0x2910,0x2910,0x290F,0x2910,0x2910,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930, + 0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2110,0x2130,0x2110,0x2110,0x2930,0x2930,0x2930,0x212F,0x212F,0x292F,0x292F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x290F,0x292F,0x290F,0x290F,0x2930,0x2930,0x2930,0x290F,0x292F,0x290F,0x2910,0x290F,0x290F,0x210F,0x290F,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x210F,0x2930,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x210F,0x290F,0x2930,0x210F,0x2930,0x2110,0x2110,0x2111,0x2111,0x1911,0x1912,0x1933,0x1154,0x1175,0x11B7,0x09B8,0x09D8,0x09D9,0x09F9,0x09D9,0x09D9,0x09D8,0x09D8,0x09B7,0x11B6,0x1175,0x1112,0x1111,0x1111,0x1911,0x1931,0x2152,0x1932,0x1132,0x0912,0x1174,0x11B6,0x09D7,0x09D8,0x09D8,0x09D8,0x01D8,0x01D8,0x01D8,0x01D8,0x09D8,0x09D8,0x11D7,0x11B6,0x1153,0x1932,0x1911,0x2951,0x2131,0x2130,0x2131,0x2111,0x1911,0x1133,0x1175,0x11B6,0x11F7,0x09F8,0x09F8,0x01D8,0x01D8,0x01F8,0x01D8,0x01B8,0x09D8,0x09D7,0x11D7,0x19B5,0x1112,0x1911,0x1910,0x2131,0x2131,0x2151,0x1931,0x1931,0x1111,0x1112,0x1153,0x1195,0x19F7,0x11F8,0x09D8,0x01D8,0x01D8,0x01D9,0x01F9,0x01D8,0x09F8,0x11F8,0x19D6,0x1174,0x1132,0x1931,0x2131,0x2131,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x212F,0x2930,0x212F,0x210F,0x2930,0x2930,0x2110,0x2110,0x290F,0x290F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x210F,0x210F,0x290F,0x292F,0x210F,0x2930,0x290F,0x210F,0x212F,0x292F,0x2930,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x292F,0x2950,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x20EF,0x28EF,0x20EE,0x20CE,0x20AD,0x208C,0x206B,0x28AC,0x59D0,0x9BD7,0xBC9A,0xCCFB,0xD53C,0xD53B,0xDD3B,0xD51A,0xD51A,0xD4FA,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD519,0xD4F9,0xD4F9,0xD519,0xD519,0xD519,0xD519,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xDCF9,0xDCF9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD519,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD519,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F8,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4F9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4B9,0xD4B9,0xDC99,0xDC99,0xDC78,0xDC38,0xDBF7,0xDBB7,0xD376,0xD356,0xDB36,0xDB16,0xDB16,0xDAF5,0xDAD5,0xD2B5,0xD295,0xCA95,0xCA95,0xBA95,0xB275,0xA254,0xA274,0xA275,0xA255,0xA234,0xAA14,0xB1F4,0xB1F4,0xB1F4,0xB9F3,0xB9D3,0xB1D3,0xB1D2,0xB1F2,0xCB16,0xE439,0xE479,0xDC99,0xDC98,0xDCB9,0xDCB9,0xDCB9,0xD4B9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4F9,0xD4D9,0xD4D9,0xD4D9,0xDCF9,0xD4D9,0xD4D9,0xDCD9,0xDCD9,0xDCD9,0xDCD9,0xDCD9,0xDCD9,0xDCB9,0xE4B9,0xE4B9,0xE4B9,0xE4B9,0xE4B9,0xE499,0xE4B9,0xE4B9,0xE4B9,0xE4B9,0xE4B9,0xE4B9,0xE4B9,0xE4B8,0xE4B9,0xE4B9,0xE4B9,0xE4B9,0xE4B9,0xE4B9,0xE4B9,0xE4B9,0xE4B9,0xE4B9,0xE4B9,0xE499,0xE4B9,0xE4B9,0xE4B9,0xE499,0xE4B9,0xE499,0xE499,0xE499,0xE499,0xE499,0xE499,0xE498,0xE499,0xE499,0xE498,0xE498,0xE478,0xE478,0xE478,0xE478,0xE477,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE437,0xE437,0xE437,0xE437,0xE457,0xE457,0xE458,0xE458,0xEC58,0xEC58,0xEC79,0xEC79,0xE47A,0xCC3B,0x9B7B,0x3977,0x219A,0x21FC,0x1A1D,0x0A1E,0x021E,0x021F,0x0A3E,0x123E,0x1A1D,0x19BC,0x21BB,0x5ADE,0x5ADD,0x4A7C,0x3A3B,0x223A,0x12BB,0x13FD,0x14FE,0x0DDF,0x0E5F,0x0EFF,0x0F3F,0x0F9F,0x0FBF,0x0FDF,0x0FDF,0x07DF,0x07DF,0x07BF,0x07BF,0x0F9F,0x179F,0x277F,0x36FE,0x4EDF,0x769F,0x6C58,0x51F0,0x9273,0xA9F2,0xB9B3,0xC9B3,0xC993,0xC993,0xC993,0xC9B4,0xC193,0xC1B4,0xB9D4,0xB215,0x99F5,0x6952,0x5932,0x5152,0x5172,0x4972,0x4172,0x4172,0x3972,0x3952,0x3952,0x3972,0x3151,0x3131,0x3151,0x3151,0x3151,0x3150,0x3150,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x210F,0x2910,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x290F,0x292F,0x212F,0x2130,0x2110,0x2130,0x2130,0x2131,0x1931,0x1911,0x1932,0x1153,0x19B5,0x19D6,0x2217,0x21F6,0x1994,0x1153,0x1112,0x1931,0x1931,0x1910,0x2110,0x212F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x28EF,0x290F,0x290F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2910,0x2110,0x2910,0x2110,0x210F,0x2910,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x210F,0x2110,0x2910,0x2110,0x2110,0x2130,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x20EF,0x290F,0x290F,0x2910,0x2930,0x2110,0x210F,0x210F,0x210F,0x2910,0x2930,0x2910,0x2910,0x212F,0x2930,0x2930,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x290F,0x2930,0x210F,0x210F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2910, + 0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2930,0x2110,0x2130,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x212F,0x210F,0x210F,0x210F,0x2130,0x212F,0x2950,0x212F,0x2130,0x2130,0x212F,0x212F,0x2930,0x2930,0x212F,0x292F,0x290F,0x2930,0x2930,0x210F,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x212F,0x210F,0x210F,0x2910,0x2110,0x2110,0x2930,0x2111,0x2111,0x2132,0x1912,0x1112,0x1154,0x1196,0x11D7,0x09D8,0x09D8,0x09D9,0x09D9,0x09D9,0x09D9,0x09D8,0x09B8,0x0996,0x19B7,0x1995,0x1133,0x10F1,0x1111,0x1931,0x1931,0x2152,0x1932,0x1112,0x1133,0x1174,0x11B6,0x09B7,0x09F9,0x09D8,0x01D9,0x01D9,0x01F9,0x01D9,0x01B8,0x01B8,0x09F9,0x09F8,0x11D8,0x11D7,0x1154,0x1932,0x1911,0x2131,0x2131,0x2131,0x1911,0x10F1,0x1133,0x1195,0x11B6,0x09D7,0x09F9,0x09F9,0x01D9,0x01D9,0x01D9,0x01D8,0x01D8,0x01D8,0x09D8,0x09D8,0x11F7,0x19D6,0x1132,0x1911,0x2151,0x2151,0x2131,0x1931,0x1931,0x1132,0x1132,0x1174,0x11B6,0x19F8,0x11F8,0x09D8,0x01D8,0x01D9,0x01F9,0x01D9,0x01D9,0x01F9,0x0A19,0x1219,0x11F7,0x1174,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2130,0x210F,0x2110,0x2930,0x2110,0x210F,0x2930,0x210F,0x2110,0x2930,0x210F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2930,0x2930,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x2910,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x212F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x290F,0x20EE,0x20CD,0x20CD,0x288C,0x38EC,0x7A92,0xBC79,0xDD5C,0xD4FA,0xD4FA,0xD4FA,0xD4FA,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4D9,0xD4D8,0xD4B8,0xD4B8,0xD4B8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xD4D8,0xCCD8,0xCCD8,0xCCD8,0xCCD8,0xCCD8,0xCCD8,0xCCB8,0xCCB8,0xCCD8,0xCCD8,0xCCD8,0xCCD8,0xCCD8,0xCCD8,0xCCD8,0xCCD8,0xCCB8,0xCCD8,0xCCD8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCD8,0xCCD8,0xD4D8,0xCCB8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4D8,0xD4B8,0xCCB8,0xCCB8,0xD4B8,0xD4B8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xD4D8,0xCCB8,0xCCD8,0xCCD8,0xCCD8,0xCCD8,0xCCD8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4D8,0xD4D8,0xD4B8,0xD4D8,0xCCB8,0xD4D8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4D8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xD4B8,0xCCB8,0xCCB8,0xCCB8,0xD4B8,0xCCB8,0xD4B8,0xD4B8,0xD4B8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xD4B8,0xD4B8,0xCCB8,0xD4B8,0xD4B8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xCCB8,0xD4B8,0xD4B8,0xCCB8,0xCCB8,0xD4B8,0xD4B8,0xD498,0xD498,0xD478,0xDC78,0xDC58,0xDC17,0xDBD7,0xD396,0xD376,0xDB56,0xDB36,0xDAF6,0xD2D5,0xDAB5,0xDA95,0xD274,0xD274,0xD274,0xD275,0xC254,0xBA34,0xB214,0xB214,0xB214,0xB214,0xB214,0xB1F4,0xB1F4,0xB9F4,0xB1D3,0xB1D3,0xB1D3,0xB1D2,0xB212,0xCB15,0xDBD8,0xDC18,0xDC78,0xDC78,0xD478,0xD478,0xD498,0xD498,0xD498,0xD498,0xD498,0xCCB8,0xD498,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xD4B8,0xCC98,0xD4B8,0xD4B8,0xD4B8,0xD498,0xD4B8,0xD498,0xD4B8,0xD498,0xD498,0xD4B8,0xD498,0xD498,0xDC98,0xDC98,0xDC98,0xDC98,0xDC98,0xDC98,0xE4B8,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE498,0xE478,0xE478,0xE478,0xE478,0xE478,0xE477,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE437,0xE457,0xDC37,0xE437,0xE437,0xE437,0xE457,0xE457,0xE458,0xEC58,0xEC59,0xEC79,0xE47A,0xCC3B,0x9B7B,0x41B7,0x29BA,0x221C,0x1A3D,0x0A3E,0x0A3F,0x023F,0x0A3E,0x125E,0x123D,0x11FC,0x19DB,0x427D,0x5AFE,0x429D,0x323C,0x19FA,0x0A5A,0x0B7C,0x0C9E,0x0D9F,0x0E3F,0x0EDF,0x0F3F,0x0F7F,0x0FBF,0x0FDF,0x0FFF,0x07DF,0x07DF,0x07BF,0x079F,0x0F9F,0x177F,0x277F,0x373F,0x46DE,0x76BF,0x74B9,0x5A71,0x9A94,0xB233,0xB9D3,0xC9B3,0xC173,0xC973,0xC993,0xC994,0xC193,0xC1B4,0xB9D4,0xB215,0x99F5,0x6932,0x5911,0x5152,0x5193,0x4972,0x4172,0x4172,0x3951,0x3951,0x3931,0x3951,0x3972,0x3151,0x3151,0x3151,0x3150,0x2930,0x3151,0x3151,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x2931,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x292F,0x290F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x210F,0x2130,0x212F,0x212F,0x2930,0x2930,0x212F,0x212F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2930,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1911,0x1132,0x1153,0x1994,0x19D6,0x2217,0x21F6,0x1995,0x1173,0x1112,0x1911,0x1931,0x1910,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x20F0,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2130,0x212F,0x210F,0x210F,0x2130,0x212F,0x292F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2930,0x2130,0x2130,0x2110,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2130,0x210F,0x2930,0x2930,0x2110,0x2110,0x210F,0x2910,0x210F,0x2110,0x2910,0x2930,0x210F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2910,0x2910,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x2910,0x2930,0x2930,0x2910,0x2910,0x290F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x290F,0x2930,0x2930,0x20EF,0x20EF,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x292F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x210F,0x210F,0x210E,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2910, + 0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x212F,0x2930,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2930,0x212F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x210F,0x210F,0x2930,0x2930,0x2930,0x290F,0x292F,0x290F,0x20EF,0x2910,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x2930,0x2910,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2131,0x2111,0x2132,0x1912,0x1113,0x1154,0x1195,0x11B7,0x09D8,0x09D8,0x09F9,0x01D9,0x09D9,0x09D9,0x09D8,0x09B8,0x0997,0x1196,0x1995,0x1113,0x10F1,0x1111,0x1931,0x1931,0x2132,0x1932,0x1132,0x1132,0x1174,0x11D6,0x11D8,0x09D8,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B8,0x09F9,0x09D8,0x11D8,0x11B7,0x1995,0x1953,0x1912,0x2131,0x2131,0x1911,0x10F1,0x1133,0x1195,0x11B6,0x09D8,0x09D8,0x09F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D8,0x11F8,0x11D7,0x19F6,0x1153,0x1931,0x2131,0x2152,0x1931,0x1931,0x1132,0x1132,0x1154,0x19D6,0x1A18,0x09D8,0x09F9,0x01B8,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x0A19,0x1219,0x11F7,0x1174,0x1952,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2930,0x2930,0x2910,0x2930,0x2110,0x2110,0x2110,0x210F,0x2910,0x2910,0x2930,0x2110,0x2930,0x2930,0x210F,0x290F,0x2930,0x2110,0x2110,0x2130,0x210F,0x2110,0x2910,0x210F,0x2110,0x210F,0x210F,0x2930,0x290F,0x212F,0x210F,0x210F,0x2930,0x212F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x210F,0x20EE,0x20EE,0x20CD,0x20AC,0x206B,0x51AF,0xB459,0xCCDA,0xD4DA,0xD4FA,0xD4D9,0xD4D9,0xD4D9,0xD4B9,0xD4B8,0xD4B8,0xD4B8,0xCCB8,0xCCB8,0xCC98,0xCC98,0xCCB8,0xCC98,0xCC98,0xCC98,0xCC98,0xCC98,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xC497,0xCC97,0xCC97,0xC497,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC77,0xCC77,0xCC77,0xCC77,0xCC77,0xCC77,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC77,0xCC77,0xCC97,0xCC77,0xCC77,0xCC97,0xCC97,0xCC77,0xCC77,0xCC77,0xCC77,0xCC77,0xCC77,0xCC77,0xCC77,0xCC98,0xCC97,0xCC97,0xCC97,0xCC77,0xCC77,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC77,0xCC97,0xCC97,0xCC97,0xCC98,0xCC97,0xCC98,0xCC77,0xCC77,0xCC98,0xCC98,0xCC77,0xCC98,0xCC98,0xCC97,0xCC98,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC98,0xCC98,0xCC97,0xCC97,0xCC77,0xCC97,0xCC97,0xCC97,0xCC77,0xCC97,0xCC98,0xCC98,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC77,0xCC77,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC77,0xCC97,0xCC97,0xCC97,0xCC97,0xCC77,0xCC77,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC77,0xCC77,0xCC97,0xCC97,0xCC77,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC77,0xCC77,0xCC97,0xCC97,0xCC77,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC77,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC97,0xCC98,0xCC98,0xCC98,0xCC78,0xCC77,0xCC78,0xCC78,0xCC78,0xCC78,0xCC78,0xCC98,0xCC78,0xD478,0xD458,0xD478,0xD438,0xD417,0xD3D7,0xD3B7,0xD376,0xD356,0xD336,0xDB16,0xDAF6,0xD2B5,0xDA95,0xDA75,0xD254,0xD254,0xD234,0xD254,0xCA34,0xC214,0xB9F3,0xB9F3,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9D3,0xB9D3,0xB9D3,0xB1B2,0xA9D2,0xB212,0xCB36,0xDBF8,0xDC38,0xD437,0xD458,0xD457,0xD478,0xD457,0xCC57,0xD478,0xCC78,0xCC77,0xCC98,0xCC78,0xCC77,0xCC78,0xCC78,0xCC78,0xCC98,0xCC78,0xCC78,0xCC78,0xCC77,0xCC77,0xCC77,0xCC78,0xCC78,0xCC78,0xCC78,0xCC78,0xCC78,0xD478,0xD478,0xD478,0xD478,0xD478,0xDC78,0xDC77,0xDC77,0xDC77,0xDC77,0xDC77,0xE478,0xE477,0xDC77,0xDC77,0xE477,0xDC77,0xE477,0xE477,0xDC77,0xE477,0xE477,0xE477,0xDC77,0xE498,0xE477,0xE477,0xE478,0xE478,0xE478,0xE478,0xE478,0xE478,0xE478,0xDC57,0xE478,0xDC78,0xDC77,0xDC77,0xDC78,0xDC77,0xDC78,0xDC57,0xDC77,0xDC77,0xE477,0xE477,0xE457,0xE477,0xE477,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC37,0xE457,0xDC37,0xE457,0xE457,0xE437,0xE437,0xE457,0xE437,0xE457,0xEC58,0xEC58,0xEC59,0xDC5A,0xCC3B,0x9B9B,0x49F8,0x31DA,0x221C,0x1A5D,0x0A3E,0x0A5F,0x025F,0x025E,0x0A5E,0x125E,0x1A5E,0x1A3D,0x2A3C,0x4AFF,0x3A9D,0x2A5C,0x19FB,0x0A3A,0x0AFC,0x0BFD,0x0D3F,0x0DFF,0x0EBF,0x0F3F,0x0F9F,0x0FBF,0x0FFF,0x0FFF,0x07DF,0x07DF,0x07BF,0x07BF,0x0F9F,0x179F,0x277F,0x2F3F,0x46DF,0x6E9F,0x74FA,0x5A51,0x9293,0xAA13,0xB9D3,0xC1B3,0xC173,0xC993,0xC993,0xC9B4,0xC193,0xC1B4,0xB9F4,0xB215,0x9A15,0x6932,0x5912,0x5152,0x5172,0x4992,0x4172,0x4172,0x3952,0x4172,0x3951,0x3951,0x3971,0x3171,0x3151,0x3151,0x3150,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x290F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2110,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x292F,0x210F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2130,0x2110,0x2130,0x2131,0x1931,0x1911,0x1112,0x1953,0x1974,0x19D6,0x2217,0x21F6,0x19B5,0x1173,0x1112,0x1931,0x1931,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2110,0x20F0,0x210F,0x210F,0x2910,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x2930,0x2110,0x2110,0x2130,0x2930,0x210F,0x210F,0x210F,0x2130,0x212F,0x210F,0x212F,0x292F,0x292F,0x290F,0x290F,0x2930,0x2930,0x2930,0x290F,0x2910,0x2110,0x2130,0x2110,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2110,0x2910,0x2910,0x20EF,0x2910,0x2110,0x2910,0x2930,0x290F,0x290F,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2930,0x2910,0x210F,0x210F,0x2930,0x292F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x2910,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2910,0x210F,0x292F,0x2930,0x210F,0x290F,0x2930,0x290F,0x210F,0x290F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2950,0x212F,0x292F,0x210F,0x2930,0x210F,0x210F,0x2910,0x2110, + 0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2930,0x212F,0x292F,0x212F,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x292F,0x292F,0x212F,0x212F,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2110,0x2930,0x2130,0x2131,0x1911,0x1912,0x10F2,0x1113,0x1154,0x1196,0x0996,0x0997,0x09D8,0x09D9,0x09F9,0x09D9,0x09D9,0x09B8,0x09B8,0x11D8,0x1196,0x1995,0x1112,0x10F1,0x1911,0x2152,0x1931,0x1931,0x1932,0x1132,0x1132,0x1174,0x11B6,0x09D7,0x09D8,0x01D9,0x01F9,0x01FA,0x01DA,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01B8,0x09B7,0x1196,0x1995,0x1953,0x1912,0x1911,0x18F1,0x10F1,0x1153,0x1195,0x11D7,0x09D8,0x09F9,0x09F9,0x01D9,0x01D9,0x01D9,0x01FA,0x01F9,0x01F9,0x01D9,0x01D9,0x09D8,0x09B7,0x11D7,0x21F7,0x1112,0x1111,0x2152,0x2152,0x1932,0x1932,0x0912,0x1174,0x11B6,0x11F8,0x09D8,0x09D9,0x01D9,0x01D9,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01FA,0x0A19,0x09F8,0x11D7,0x1174,0x1953,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x2930,0x2110,0x2930,0x210F,0x210F,0x2910,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2930,0x290F,0x210F,0x2930,0x212F,0x210F,0x2930,0x210F,0x2930,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x210F,0x210F,0x20EE,0x20EE,0x20CD,0x208C,0x410D,0x9355,0xD51C,0xD4FA,0xD4D9,0xD4D9,0xD4B9,0xD498,0xD498,0xD498,0xCC98,0xCC98,0xCC78,0xCC98,0xCC98,0xCC78,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC457,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC477,0xC457,0xC477,0xC477,0xC477,0xC457,0xC477,0xC457,0xC477,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC456,0xC456,0xC456,0xC457,0xC457,0xC477,0xC456,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC456,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC477,0xC457,0xC477,0xC457,0xC477,0xC477,0xC477,0xC457,0xC477,0xC456,0xC477,0xC456,0xC477,0xC457,0xC477,0xC457,0xC457,0xC457,0xC457,0xC456,0xC457,0xC456,0xC456,0xC456,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC477,0xC457,0xC457,0xC457,0xC457,0xC457,0xC477,0xC477,0xC457,0xC457,0xC477,0xC477,0xC477,0xC457,0xC477,0xC456,0xC477,0xC457,0xC477,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC456,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC477,0xC457,0xC456,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC456,0xC457,0xC456,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC456,0xC456,0xC457,0xC457,0xC457,0xC456,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC456,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xCC78,0xC457,0xCC57,0xCC58,0xCC57,0xCC37,0xCC37,0xD417,0xD3F7,0xD3B7,0xD376,0xD336,0xD316,0xD2F5,0xD2D5,0xD2B5,0xDAB5,0xDA95,0xDA75,0xDA55,0xD234,0xD214,0xCA14,0xCA14,0xC9F4,0xC1F3,0xC1D3,0xC1F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9F3,0xB1B2,0xB1D2,0xA9F2,0xBAB4,0xDC18,0xD438,0xD417,0xCC17,0xCC37,0xCC37,0xCC37,0xCC37,0xCC37,0xCC57,0xCC57,0xCC57,0xC457,0xC457,0xC437,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC457,0xC437,0xC457,0xC457,0xCC57,0xC457,0xC457,0xCC57,0xCC57,0xCC57,0xCC57,0xCC57,0xD458,0xD457,0xD457,0xD457,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC77,0xDC77,0xDC77,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC77,0xDC77,0xE477,0xDC77,0xDC77,0xDC77,0xDC57,0xDC57,0xDC57,0xDC57,0xE477,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xDC57,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE437,0xE437,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xE437,0xDC37,0xE437,0xE437,0xEC58,0xEC58,0xEC59,0xE45A,0xCC1A,0x9B9A,0x5218,0x31FA,0x2A3C,0x1A5D,0x0A5E,0x0A7F,0x0A7F,0x027F,0x0A7E,0x0A7E,0x127E,0x1A5D,0x225D,0x32BE,0x329E,0x225D,0x121B,0x0A5B,0x02BB,0x037C,0x047D,0x0D9F,0x16BF,0x0F3F,0x0F9F,0x0FBF,0x07BF,0x07DF,0x07DF,0x07DF,0x07BF,0x07BF,0x079F,0x179F,0x1F7F,0x2F3F,0x46DE,0x6EBF,0x7D3B,0x5251,0x9273,0xAA13,0xB9F3,0xC1B3,0xC9B3,0xC9B4,0xC993,0xC193,0xC1B3,0xB9B3,0xB9F4,0xB215,0x9A36,0x6952,0x5932,0x5132,0x5173,0x4152,0x4172,0x4172,0x3952,0x3952,0x3951,0x3951,0x3951,0x3171,0x3151,0x3151,0x3150,0x3150,0x2950,0x2950,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2110,0x2910,0x2930,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x2930,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2151,0x2151,0x1911,0x1911,0x1932,0x1953,0x1174,0x19D6,0x2217,0x19D6,0x21D5,0x1153,0x1132,0x1931,0x1930,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2110,0x290F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2910,0x2930,0x2910,0x2110,0x2910,0x2910,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x212F,0x212F,0x2930,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x292F,0x2930,0x210F,0x290F,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x212F,0x212F,0x290F,0x210F,0x210F,0x290F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x2930,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x292F,0x292F,0x210F,0x290F,0x290F,0x210F,0x292F,0x210F,0x290F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x2930,0x212F,0x2110,0x2110,0x210F, + 0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x2110,0x2130,0x2130,0x2110,0x2131,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x292F,0x2930,0x2930,0x212F,0x292F,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x292F,0x2930,0x210F,0x212F,0x210F,0x2910,0x2910,0x2910,0x210F,0x290F,0x2930,0x210F,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2910,0x210F,0x290F,0x2930,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x2930,0x2130,0x2130,0x2131,0x2131,0x1912,0x1112,0x1133,0x1154,0x1196,0x11B7,0x09B8,0x09D8,0x09D9,0x09D9,0x01D9,0x09D9,0x09D9,0x09D8,0x11D8,0x19D7,0x1995,0x1133,0x10F1,0x1911,0x1931,0x1951,0x1931,0x1931,0x1132,0x1153,0x1194,0x11D6,0x09B7,0x01B8,0x09D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01F9,0x01D9,0x09D8,0x09B7,0x11B7,0x11B6,0x1974,0x1953,0x1912,0x1911,0x10D1,0x1133,0x1195,0x11B7,0x09B7,0x01B8,0x09F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01FA,0x021A,0x01F9,0x01D9,0x01D9,0x01B8,0x09B8,0x19F7,0x19D6,0x1112,0x1911,0x1932,0x1932,0x1111,0x1132,0x1174,0x11B6,0x11D7,0x09F8,0x09D9,0x01B9,0x01D9,0x01D9,0x01DA,0x01FA,0x01DA,0x01DA,0x01FA,0x09FA,0x09F9,0x09F8,0x11B6,0x1974,0x1952,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x210F,0x212F,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x212F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x292F,0x292F,0x290F,0x210F,0x210F,0x20EF,0x20EE,0x28CD,0x206B,0x518F,0xB438,0xD4DB,0xD4FA,0xDCD9,0xD4B9,0xD498,0xD498,0xCC78,0xCC78,0xCC78,0xC477,0xC477,0xC477,0xC477,0xBC76,0xBC56,0xB435,0xAC35,0xAC15,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xABF4,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xABF4,0xABF4,0xABF4,0xABF4,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xAC14,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xAC14,0xABF4,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xABF4,0xAC14,0xABF4,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xABF4,0xAC14,0xAC14,0xABF4,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xABF4,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xAC14,0xABF4,0xABF4,0xABF4,0xAC14,0xAC14,0xAC14,0xABF4,0xABF4,0xABF4,0xABF4,0xAC14,0xABF4,0xAC14,0xABF4,0xABF4,0xAC14,0xAC14,0xAC14,0xAC14,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xAC14,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xAC14,0xAC14,0xAC14,0xABF4,0xABF4,0xABF4,0xAC14,0xABF4,0xABF4,0xABF4,0xABF4,0xAC14,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xA3F4,0xABF4,0xA3F4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xA3F4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xAC15,0xAC15,0xAC15,0xAC15,0xABF5,0xABF5,0xB415,0xB415,0xB415,0xB415,0xB3F5,0xBBD5,0xC3D5,0xCB96,0xD356,0xD315,0xD2F5,0xD2D5,0xD2B4,0xD295,0xDA95,0xDA75,0xD255,0xD234,0xC9F4,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xB9D3,0xB9B3,0xB9B3,0xB1B2,0xA9D2,0xA1F1,0xB2D3,0xDCB9,0xDCD9,0xCCB8,0xCC97,0xC476,0xBC35,0xB415,0xB415,0xB415,0xB415,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABD4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF4,0xABF5,0xABF4,0xABF4,0xAC15,0xABF4,0xB415,0xB415,0xBC15,0xC436,0xCC37,0xD437,0xD437,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC77,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC37,0xDC36,0xDC37,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC37,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xE437,0xDC37,0xE437,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xE437,0xE437,0xE437,0xEC58,0xEC58,0xE459,0xDC5A,0xCC1A,0x9B7A,0x5A58,0x3A3A,0x2A5C,0x1A7D,0x127E,0x0A7F,0x0A9F,0x0A9F,0x029E,0x0A7E,0x0A7E,0x129E,0x1A7D,0x229E,0x229E,0x1A7D,0x125C,0x0A7C,0x029C,0x031C,0x03FC,0x051E,0x169F,0x173F,0x179F,0x0FBF,0x0FBF,0x0FDF,0x07DF,0x07DF,0x07BF,0x07BF,0x0FBF,0x179F,0x1F7F,0x2F3F,0x46FF,0x6EBF,0x859D,0x5271,0x9293,0xAA33,0xB9B3,0xC1B3,0xC9B3,0xC993,0xC173,0xC193,0xC1B3,0xC1D4,0xB9F4,0xB215,0x9A15,0x6932,0x5932,0x5132,0x4952,0x4152,0x4172,0x4172,0x3972,0x3951,0x3951,0x3951,0x3951,0x3171,0x3151,0x3150,0x3150,0x2950,0x2950,0x2950,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x2930,0x2910,0x2910,0x2110,0x2930,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x210F,0x212F,0x212F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x290F,0x292F,0x210F,0x212F,0x212F,0x292F,0x292F,0x210F,0x292F,0x212F,0x212F,0x212F,0x292F,0x2930,0x210F,0x2130,0x2130,0x2150,0x2151,0x2131,0x1910,0x1911,0x1911,0x1932,0x1153,0x1174,0x21F6,0x2217,0x21D6,0x19B5,0x1153,0x1132,0x1111,0x1910,0x2130,0x1930,0x2130,0x1910,0x2130,0x2130,0x2110,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2950,0x210F,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x210F,0x2930,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2930,0x210F,0x2910,0x2910,0x2910,0x210F,0x2910,0x2930,0x290F,0x290F,0x2930,0x290F,0x2930,0x2110,0x2910,0x2910,0x2110,0x2110,0x2130,0x210F,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x210F,0x210F,0x212F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x290F,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x212F,0x212F,0x290F,0x210F,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2110,0x2930, + 0x1911,0x2111,0x2111,0x2111,0x2131,0x2131,0x2131,0x2131,0x1910,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x2131,0x2131,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x292F,0x212F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x210F,0x2930,0x210F,0x292F,0x212F,0x210F,0x2930,0x290F,0x290F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2130,0x2130,0x1911,0x10F1,0x1132,0x1153,0x1175,0x1176,0x11B7,0x09D8,0x09F9,0x09D9,0x01B8,0x01D9,0x01D9,0x09D9,0x09D9,0x11F8,0x11B7,0x1175,0x1133,0x1112,0x10F1,0x1931,0x1931,0x1931,0x1131,0x1132,0x0932,0x0974,0x11D6,0x09D7,0x09F8,0x01D8,0x01B9,0x01D9,0x01D9,0x01DA,0x01FA,0x01FA,0x01FA,0x01D9,0x01B9,0x01D9,0x09D9,0x11D8,0x11B7,0x1996,0x1953,0x1112,0x10F1,0x10D1,0x1133,0x1995,0x1196,0x09B7,0x09F9,0x01D9,0x01D9,0x01D9,0x01FA,0x01FA,0x01FA,0x01FA,0x01D9,0x01D9,0x01D9,0x01D9,0x09D8,0x11D8,0x19D7,0x1154,0x1133,0x1952,0x1111,0x10F1,0x1133,0x1154,0x19D7,0x09B7,0x09F9,0x01D9,0x09F9,0x01D9,0x01DA,0x01DA,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x09F9,0x1218,0x1196,0x1953,0x1911,0x1910,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2930,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2110,0x2110,0x2930,0x210F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x290F,0x2930,0x210F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x20EE,0x20EE,0x20AD,0x206B,0x7252,0xCCDB,0xD4FB,0xD4DA,0xD4B9,0xD4B9,0xD498,0xCC78,0xCC78,0xCC78,0xC457,0xC457,0xBC56,0xBC97,0xC4D7,0xC517,0xD5BA,0xE67C,0xF71F,0xFF9F,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFF9F,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFF9F,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFF9F,0xFFBF,0xFF9F,0xFF9F,0xFFBF,0xFF9F,0xFF9F,0xFF7F,0xFF1F,0xE499,0xC314,0xD2F5,0xD2D5,0xD2B5,0xD2B5,0xD295,0xD275,0xD254,0xD214,0xCA14,0xD214,0xC9F3,0xC9D3,0xC9D3,0xC9D3,0xC1D3,0xC1D3,0xC1D3,0xB9B3,0xB9B3,0xB9B3,0xB192,0xA9B1,0xA1F1,0xBB95,0xFE5E,0xFF3F,0xFF7F,0xFF9F,0xFF9F,0xFF9F,0xFF9F,0xFF9F,0xFF9F,0xFF9F,0xFF9F,0xFF9F,0xFF9F,0xFF9F,0xFF9F,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFFBF,0xFF9F,0xFFBF,0xFFBF,0xFF9F,0xFF5F,0xCD39,0xC456,0xCC36,0xD437,0xD437,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC36,0xDC36,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xDC37,0xDC37,0xE457,0xDC37,0xDC37,0xE437,0xE437,0xE457,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xE457,0xDC37,0xDC37,0xE437,0xE437,0xE457,0xEC58,0xEC58,0xEC59,0xDC5A,0xC3FA,0xA37A,0x5A58,0x425A,0x2A5C,0x1A7D,0x127E,0x0A9F,0x029F,0x0ABF,0x02BE,0x029E,0x0A9E,0x0ABE,0x12BE,0x12BE,0x1ABE,0x127E,0x0A9D,0x0A9D,0x02BC,0x02FC,0x039C,0x049D,0x161F,0x16FF,0x177F,0x17BF,0x0FBF,0x0FDF,0x07DF,0x07DF,0x07BF,0x07BF,0x0FBF,0x17BF,0x1F7F,0x2F5F,0x3EDE,0x669F,0x7D9C,0x5272,0x8A73,0xAA33,0xB1B3,0xC193,0xC9B4,0xC193,0xC993,0xC993,0xC193,0xC1B3,0xB9F4,0xB215,0x9A35,0x6932,0x5912,0x5152,0x4952,0x4972,0x4972,0x4172,0x3972,0x3951,0x3971,0x3951,0x3951,0x3171,0x3151,0x3151,0x3150,0x3150,0x2950,0x2950,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x2130,0x2130,0x2930,0x2130,0x2950,0x2110,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2130,0x212F,0x210F,0x2930,0x290F,0x2930,0x210F,0x2930,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2110,0x210F,0x2930,0x290F,0x290F,0x2930,0x2930,0x290F,0x2930,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x210F,0x2130,0x212F,0x210F,0x212F,0x2150,0x2150,0x2110,0x2131,0x1911,0x1932,0x1953,0x1974,0x19B5,0x19D6,0x19B6,0x19B6,0x19B5,0x1153,0x1132,0x1931,0x1931,0x1930,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x2910,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2930,0x2910,0x210F,0x2930,0x2930,0x212F,0x210F,0x2130,0x2110,0x2910,0x2910,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x210F,0x2110,0x210F,0x2130,0x2110,0x2910,0x2110,0x2930,0x2130,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x212F,0x290F,0x292F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x212F,0x2930,0x2110,0x2110,0x2930,0x2910,0x290F,0x212F,0x2930,0x212F,0x212F,0x212F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2930,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x210F,0x2130,0x2130,0x210F,0x210F,0x290F,0x292F,0x292F,0x290F,0x210F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x290F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2110, + 0x1912,0x1932,0x1932,0x1932,0x1932,0x2132,0x2132,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1931,0x1931,0x1952,0x1952,0x1932,0x1952,0x1932,0x1932,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1952,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x212F,0x212F,0x212F,0x212F,0x2930,0x292F,0x2930,0x212F,0x2930,0x290F,0x2930,0x2930,0x2930,0x2910,0x290F,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x210F,0x2930,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x212F,0x2930,0x292F,0x2930,0x210F,0x210F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x290F,0x2930,0x292F,0x2930,0x2930,0x2130,0x2131,0x1911,0x1911,0x1932,0x1153,0x1154,0x1196,0x11B7,0x09D8,0x09D8,0x09D9,0x01B8,0x01D9,0x01B9,0x09D9,0x09D8,0x11F8,0x19F8,0x1175,0x1133,0x1112,0x10F1,0x2132,0x2152,0x1931,0x1932,0x1132,0x1133,0x1194,0x11B6,0x09D7,0x01D8,0x01D8,0x01D8,0x01D9,0x01D9,0x01DA,0x01FA,0x01DA,0x01FA,0x01DA,0x01D9,0x01D9,0x09D9,0x09B8,0x19F8,0x19B6,0x1995,0x1132,0x1112,0x10D1,0x1133,0x1195,0x1196,0x11D8,0x09D9,0x01D9,0x01D9,0x01D9,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01D9,0x01DA,0x01B9,0x09D9,0x09D8,0x11D8,0x19B6,0x1154,0x1133,0x1132,0x0911,0x1132,0x1174,0x11B6,0x11D8,0x09D9,0x09D9,0x01D9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x09FA,0x09F9,0x11F8,0x11D7,0x1174,0x1132,0x1931,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x212F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x2110,0x2930,0x2110,0x2930,0x210F,0x212F,0x2930,0x212F,0x2130,0x2130,0x210F,0x212F,0x2130,0x2130,0x2110,0x2930,0x2110,0x2130,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x20EF,0x20EE,0x28CD,0x206B,0x7AD3,0xCCFB,0xD4DA,0xD4B9,0xD4B9,0xD499,0xD498,0xCC78,0xC457,0xC477,0xBC77,0xB436,0xD559,0xEE7D,0xFEFF,0xFF5F,0xFF7F,0xFF9F,0xFFBF,0xF7BF,0xF7BF,0xF7BF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7BF,0xF7DF,0xF7BF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7BF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7BF,0xF7BF,0xF7DF,0xF7DF,0xF7BF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7BF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7BF,0xF7BF,0xF7BF,0xF7BF,0xF7BF,0xF7BF,0xF7BF,0xF7BF,0xFF9F,0xFF7F,0xD457,0xC2D4,0xCAB4,0xCA94,0xD294,0xD295,0xD275,0xD254,0xCA34,0xCA13,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC9D3,0xC9D3,0xC1D3,0xC1D3,0xC1D3,0xB9B3,0xB9B3,0xB1B2,0xB1D2,0xA1F1,0xC3D6,0xFEBF,0xFF7F,0xFFBF,0xFFDF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7BF,0xF7DF,0xF7DF,0xF7DF,0xF7BF,0xF7BF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xFFBF,0xFF5F,0xD579,0xC436,0xCC56,0xD457,0xD457,0xD437,0xDC57,0xDC77,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC56,0xDC36,0xDC36,0xDC36,0xDC36,0xE457,0xDC37,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC37,0xE437,0xE437,0xE437,0xE437,0xE457,0xE437,0xDC37,0xE437,0xE437,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE437,0xE437,0xE457,0xEC58,0xEC78,0xE459,0xDC59,0xC3F9,0x9B7A,0x5A78,0x427A,0x2A7B,0x1A7D,0x129E,0x0A9E,0x0ABF,0x0ADF,0x0ADF,0x02BE,0x02BE,0x029E,0x0ABE,0x12DF,0x12BF,0x0A9E,0x0A9E,0x02BD,0x02BD,0x02FC,0x035C,0x041C,0x0D9E,0x16BF,0x175F,0x179F,0x17BF,0x0FDF,0x07BF,0x07DF,0x07BF,0x07BF,0x07BF,0x17BF,0x1F7F,0x2F3F,0x3EFF,0x66BF,0x7DDD,0x5292,0x8A93,0xAA13,0xB1B3,0xC1B3,0xC9B3,0xC9B3,0xC993,0xC9B3,0xC1B3,0xC1B4,0xB9D4,0xB215,0x91F5,0x6952,0x5932,0x5152,0x5172,0x4972,0x4172,0x4172,0x3951,0x3972,0x3971,0x3971,0x3971,0x3151,0x3151,0x3151,0x3150,0x3150,0x3150,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x2930,0x212F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2930,0x2130,0x212F,0x2930,0x210F,0x290F,0x210F,0x210F,0x2930,0x290F,0x2910,0x290F,0x2930,0x2930,0x210F,0x210F,0x2930,0x210F,0x2930,0x290F,0x290F,0x210F,0x212F,0x290F,0x290F,0x212F,0x212F,0x2930,0x290F,0x210F,0x212F,0x210F,0x212F,0x292F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2151,0x2132,0x1932,0x1953,0x1174,0x19B6,0x1196,0x19B6,0x2217,0x19B5,0x1132,0x1932,0x1931,0x1911,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2930,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2930,0x210F,0x2930,0x2930,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2930,0x2110,0x2930,0x2930,0x2110,0x2910,0x2910,0x210F,0x210F,0x2130,0x2110,0x210F,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2930,0x2910,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x210F,0x2930,0x2130,0x2130,0x2930,0x2930,0x210F,0x2910,0x2910,0x2910,0x2930,0x2110,0x210F,0x2130,0x2930,0x210F,0x2110,0x2930,0x2930,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x2930,0x210F,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2930,0x2110,0x290F,0x210F,0x2930,0x2130,0x210F,0x290F,0x210F,0x292F,0x2930,0x290F,0x292F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2910,0x2910,0x2930,0x290F,0x2110,0x210F,0x2130,0x2130,0x212F,0x212F,0x292F,0x210F,0x210F,0x292F,0x212F,0x212F,0x292F,0x290F,0x290F,0x210F,0x2930, + 0x08F2,0x08F2,0x10F2,0x10F2,0x10F2,0x10F2,0x1112,0x1112,0x1112,0x1111,0x08F1,0x08F1,0x1112,0x08F1,0x08F1,0x08F1,0x08F1,0x08F1,0x08F1,0x08F1,0x08F1,0x08F1,0x08F1,0x08F1,0x08F1,0x08F1,0x08F1,0x08F1,0x08F1,0x08F1,0x08D1,0x08F1,0x1111,0x10F1,0x08F1,0x1111,0x08F1,0x08F1,0x1112,0x0912,0x0912,0x1112,0x1112,0x1132,0x1132,0x1932,0x1932,0x1931,0x1931,0x1931,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2930,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x2930,0x212F,0x290F,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x2910,0x2910,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x2930,0x290F,0x210F,0x290F,0x2930,0x290F,0x210F,0x2930,0x212F,0x210F,0x210F,0x2130,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2931,0x2131,0x2111,0x1911,0x1112,0x1133,0x1174,0x1196,0x11D8,0x11D8,0x09D8,0x01B8,0x09D9,0x01D9,0x01D9,0x09D9,0x09D8,0x11D8,0x11B7,0x1175,0x1933,0x1912,0x10F1,0x1931,0x2131,0x1931,0x1932,0x1112,0x1153,0x1174,0x11B6,0x09D7,0x01D8,0x01F9,0x01F9,0x01F9,0x01FA,0x01DA,0x01DA,0x01FA,0x01B9,0x01DA,0x01D9,0x01D9,0x01B8,0x09B8,0x09B7,0x11D7,0x1995,0x1133,0x08F1,0x08D1,0x1133,0x1195,0x11D7,0x11F8,0x09D8,0x01D9,0x01D9,0x01FA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FA,0x01D9,0x01B9,0x01D9,0x01D9,0x09D9,0x11F8,0x11B7,0x0934,0x1113,0x1132,0x08F1,0x0913,0x1174,0x19D7,0x11D8,0x1219,0x09F9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x09FA,0x01D9,0x09D8,0x11B7,0x1175,0x1953,0x1932,0x1910,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x2110,0x212F,0x2930,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2930,0x2130,0x212F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x20EE,0x20EE,0x20CD,0x288B,0x8B14,0xD51B,0xD4DA,0xD4B9,0xD4B9,0xD499,0xD478,0xCC78,0xC457,0xBC56,0xBCB7,0xDDFB,0xFF7F,0xFF9F,0xFF9F,0xF79F,0xF7BF,0xF7BF,0xF7BF,0xF7BF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFFF,0xEFFF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFBF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFBF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFFF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFFF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFFF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFFF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xF7DF,0xF7DF,0xEFBF,0xF7BF,0xF7BF,0xF7BF,0xF7BF,0xF7BF,0xFF7F,0xCC17,0xBA93,0xC273,0xCA54,0xCA74,0xD274,0xD254,0xD234,0xCA13,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC9D3,0xC9D3,0xC1D3,0xC1D3,0xC1B3,0xC1B3,0xB9B3,0xB192,0xA9B1,0x99D0,0xB374,0xFF3F,0xFF9F,0xFFBF,0xF7BF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xEFDF,0xF7DF,0xEFDF,0xEFDF,0xF7DF,0xF7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFFF,0xEFFF,0xEFFF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xF7DF,0xF7DF,0xF7BF,0xFFBF,0xFF9F,0xDD9A,0xC456,0xCC36,0xD436,0xD437,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xE457,0xE457,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC57,0xDC36,0xDC57,0xE457,0xE457,0xDC37,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC37,0xDC37,0xE437,0xE437,0xDC37,0xE437,0xE437,0xE437,0xDC37,0xE437,0xE437,0xE457,0xDC37,0xDC37,0xDC37,0xE437,0xE437,0xE457,0xEC58,0xEC58,0xE459,0xDC59,0xC3F9,0x9B79,0x6298,0x429A,0x2A7B,0x1A9D,0x12BE,0x0ABF,0x0ADF,0x0AFF,0x0AFF,0x02DF,0x0AFF,0x02BE,0x02BE,0x0ADE,0x0ADF,0x02BE,0x02BE,0x02BE,0x02DD,0x02FD,0x033C,0x03BC,0x04FD,0x163F,0x1F3F,0x179F,0x17BF,0x0FBF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x0F9F,0x1F7F,0x275F,0x3EFF,0x5EBF,0x7DFD,0x5B34,0x8A93,0xAA33,0xB9D3,0xC1B3,0xC193,0xC993,0xC9B3,0xC193,0xC193,0xC1D4,0xB9F4,0xAA15,0x91F5,0x6932,0x5952,0x5153,0x4972,0x4972,0x4172,0x4172,0x3951,0x3971,0x3951,0x3971,0x3971,0x3171,0x3171,0x3151,0x3150,0x3150,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x210F,0x210F,0x290F,0x210F,0x2930,0x290F,0x2930,0x290F,0x2110,0x2110,0x2910,0x2110,0x2930,0x2110,0x2910,0x2910,0x292F,0x292F,0x292F,0x292F,0x2910,0x290F,0x290F,0x2910,0x210F,0x292F,0x2930,0x2910,0x2110,0x2930,0x290F,0x210F,0x212F,0x2930,0x2930,0x2930,0x212F,0x212F,0x290F,0x290F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2150,0x2150,0x2130,0x2130,0x2131,0x1911,0x1932,0x1153,0x1974,0x1175,0x1196,0x2217,0x21F7,0x1153,0x1132,0x1932,0x1931,0x1910,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x210F,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2110,0x2930,0x2930,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x290F,0x2910,0x290F,0x2930,0x2930,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x210F,0x2910,0x210F,0x2110,0x2910,0x2110,0x210F,0x2110,0x2910,0x2930,0x290F,0x210F,0x2930,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2930,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x2130,0x210F,0x210F,0x2130,0x2930,0x210F,0x212F,0x2130,0x212F,0x2930,0x2110,0x2110,0x2910,0x2110,0x2930,0x2910,0x2110,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x290F,0x210F,0x2930,0x2130,0x212F,0x2930,0x290F,0x290F,0x2910,0x2910,0x290F,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2930,0x210F,0x2910,0x2930,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2910, + 0x0913,0x0934,0x0913,0x0913,0x0913,0x0913,0x0933,0x0933,0x0913,0x0933,0x0933,0x0913,0x0913,0x0933,0x0913,0x0913,0x0933,0x0933,0x0933,0x0933,0x0933,0x0933,0x0933,0x0913,0x0913,0x0933,0x0933,0x0933,0x0933,0x0933,0x1133,0x1133,0x1153,0x1153,0x1153,0x1153,0x1153,0x1153,0x0953,0x1154,0x1154,0x0953,0x0953,0x0933,0x1133,0x1112,0x1112,0x1132,0x1932,0x1931,0x1911,0x2131,0x2131,0x2110,0x2910,0x2110,0x2930,0x2130,0x2110,0x2910,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x2930,0x2930,0x212F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2910,0x2930,0x210F,0x210F,0x2910,0x210F,0x210F,0x290F,0x210F,0x2910,0x2930,0x290F,0x290F,0x2930,0x210F,0x290F,0x2930,0x212F,0x212F,0x2130,0x2130,0x2110,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2930,0x2111,0x2111,0x1911,0x1932,0x1153,0x1154,0x1196,0x11B7,0x09D8,0x09B8,0x09D9,0x09D9,0x01B8,0x09D9,0x09D9,0x09D8,0x11D8,0x1196,0x1175,0x1113,0x1112,0x1911,0x1911,0x2131,0x2131,0x1911,0x1112,0x1153,0x1175,0x11D7,0x09D7,0x01B8,0x01D9,0x01D9,0x01D9,0x01FA,0x01FA,0x01DA,0x01FA,0x01D9,0x01DA,0x01DA,0x01B9,0x01D9,0x09D8,0x09B7,0x11D7,0x19B6,0x1133,0x1112,0x08D2,0x1113,0x1996,0x19D7,0x09D8,0x01D8,0x01D9,0x01B9,0x01D9,0x01DA,0x01FA,0x01FA,0x01FA,0x01FA,0x01FA,0x01D9,0x01D9,0x01D9,0x09D9,0x1219,0x11D7,0x1175,0x1134,0x1133,0x08F2,0x0913,0x1175,0x11D7,0x11F8,0x09D9,0x09F9,0x01B9,0x01DA,0x01BA,0x01DA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01D9,0x09D9,0x11F9,0x11D8,0x1195,0x1153,0x1932,0x1931,0x1930,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2110,0x2930,0x2110,0x210F,0x2910,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x210F,0x210F,0x210F,0x2110,0x210F,0x2930,0x2110,0x210F,0x210F,0x2130,0x2110,0x2110,0x2910,0x2110,0x2110,0x2130,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x210F,0x212F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x20EE,0x20EE,0x20CD,0x288C,0x7AD4,0xD51B,0xD4DA,0xDCB9,0xDC99,0xD498,0xD478,0xCC78,0xC477,0xB456,0xD59A,0xFF1F,0xFF9F,0xF7BF,0xF7DF,0xF7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xEFDF,0xEFFF,0xEFFF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xEFDF,0xE7DF,0xEFDF,0xEFDF,0xE7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFFF,0xE7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFFF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xEFFF,0xE7DF,0xEFFF,0xE7DF,0xEFFF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xE7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFFF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFFF,0xEFFF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xEFFF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xF7DF,0xEFBF,0xEFBF,0xF7BF,0xF7BF,0xFF7F,0xCBF6,0xBA72,0xC253,0xCA53,0xCA54,0xCA54,0xD254,0xCA14,0xCA14,0xC9F3,0xC9F3,0xC9F3,0xC9D3,0xC9D3,0xC1D3,0xC1D3,0xC1B3,0xC193,0xB9B3,0xB992,0xB192,0xA1B1,0xA2B2,0xFEBF,0xFF9F,0xFFDF,0xF7DF,0xF7DF,0xF7DF,0xF7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFFF,0xE7DF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFFF,0xEFDF,0xEFDF,0xEFDF,0xF7DF,0xFFBF,0xFF7F,0xD599,0xBC35,0xCC36,0xD436,0xD437,0xD437,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xE457,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC37,0xE457,0xE457,0xDC37,0xDC37,0xDC37,0xE437,0xE437,0xDC37,0xE437,0xE437,0xE437,0xE437,0xE437,0xDC37,0xDC37,0xDC37,0xDC37,0xE437,0xE457,0xE457,0xEC58,0xEC58,0xE458,0xDC39,0xBBD9,0x9B7A,0x6298,0x429A,0x2A9C,0x1ABD,0x12DE,0x0ADF,0x0ADF,0x02DF,0x02DF,0x02FF,0x02FF,0x02FF,0x02FF,0x02DF,0x02DF,0x02DF,0x02DF,0x02DE,0x02DE,0x02FD,0x031C,0x037C,0x045C,0x0DDE,0x1F3F,0x1F7F,0x179F,0x0FBF,0x07BF,0x07BF,0x07BF,0x07BF,0x07BF,0x0F9F,0x1F9F,0x275F,0x3F1F,0x56BF,0x7E1E,0x5B54,0x8A93,0xA212,0xB1D3,0xC1B3,0xC193,0xC993,0xC993,0xC9B4,0xC1B3,0xB9B3,0xBA15,0xB235,0x91D4,0x6932,0x5952,0x5152,0x4972,0x4972,0x4172,0x4172,0x4171,0x3951,0x3971,0x3972,0x3171,0x3151,0x3151,0x3151,0x3151,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x290F,0x290F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2110,0x2930,0x2910,0x2910,0x210F,0x2910,0x2910,0x210F,0x2930,0x212F,0x210F,0x290F,0x290F,0x2910,0x290F,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x2910,0x290F,0x210F,0x2930,0x2930,0x2930,0x210F,0x212F,0x212F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x190F,0x212F,0x2150,0x2130,0x210F,0x2130,0x2110,0x1910,0x1911,0x1932,0x1954,0x1175,0x1196,0x21F8,0x2217,0x1195,0x1153,0x1952,0x1931,0x2111,0x2110,0x2110,0x2910,0x210F,0x2930,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2910,0x2910,0x290F,0x2910,0x2110,0x2910,0x2110,0x2930,0x2110,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x2910,0x2930,0x2110,0x2930,0x2930,0x2110,0x210F,0x2110,0x2910,0x2910,0x2110,0x212F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930,0x2910,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x2930,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2910,0x210F,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2930,0x2930,0x2930,0x290F,0x290F,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2910,0x2910, + 0x2259,0x1A18,0x1A18,0x1A18,0x1A18,0x1A17,0x1A18,0x1A18,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x21F8,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x19F7,0x21F7,0x2218,0x21F7,0x21F8,0x21F8,0x2218,0x21F8,0x21F7,0x21F7,0x19F7,0x19F7,0x19F7,0x19D7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x21F7,0x19B5,0x1174,0x1133,0x1132,0x1932,0x1911,0x1911,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x212F,0x2930,0x2930,0x2930,0x292F,0x290F,0x292F,0x292F,0x212F,0x290F,0x290F,0x2930,0x212F,0x2930,0x2930,0x210F,0x210F,0x210F,0x2910,0x290F,0x2930,0x2910,0x210F,0x2930,0x210F,0x290F,0x2930,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x212F,0x2130,0x212F,0x2130,0x210F,0x2110,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2910,0x2930,0x2930,0x2110,0x2111,0x1911,0x1912,0x1953,0x1174,0x1196,0x11B7,0x11D8,0x09D8,0x09D8,0x01B8,0x01B8,0x01D9,0x09D9,0x09F9,0x11F8,0x19D7,0x1175,0x0912,0x10F1,0x10F1,0x1911,0x2151,0x2152,0x1911,0x1112,0x1133,0x1175,0x0996,0x09B8,0x09F9,0x01D9,0x01D9,0x01F9,0x01D9,0x01D9,0x01D9,0x01FA,0x01FA,0x01DA,0x01B9,0x01B9,0x01D9,0x09D8,0x11D8,0x11D7,0x1195,0x1134,0x08F2,0x08D2,0x0913,0x1995,0x19D7,0x11D8,0x1219,0x01D9,0x01DA,0x01D9,0x01D9,0x01FA,0x01FA,0x021A,0x01DA,0x01DA,0x01B9,0x01B9,0x01D9,0x09F9,0x11F9,0x11D7,0x1196,0x0934,0x08F3,0x08F2,0x0933,0x1195,0x11D7,0x11D8,0x09F9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01D9,0x09F9,0x1219,0x11B7,0x1175,0x1153,0x1132,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2930,0x2910,0x210F,0x212F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x20EE,0x20CE,0x208C,0x7252,0xCCFB,0xD4DA,0xD4B9,0xD498,0xD478,0xD478,0xCC58,0xC457,0xBC76,0xE65C,0xFF9F,0xF7BF,0xF7BF,0xEFDF,0xEFDF,0xEFFF,0xEFDF,0xEFFF,0xE7FF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7FF,0xE7DF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xEFFF,0xE7DF,0xEFDF,0xEFDF,0xEFBF,0xEFBF,0xEFBF,0xF7BF,0xF7BF,0xFF5F,0xC3D6,0xBA52,0xC253,0xCA54,0xCA54,0xD254,0xCA34,0xCA13,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC9D3,0xC1D3,0xC1D3,0xC1B3,0xC1B3,0xC193,0xB992,0xB192,0xA1B1,0x91D0,0xFEDF,0xFF9F,0xFFBF,0xF7DF,0xF7DF,0xF7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xEFFF,0xEFFF,0xE7DF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xEFFF,0xE7DF,0xEFDF,0xEFFF,0xEFDF,0xEFBF,0xF7BF,0xFF9F,0xD559,0xC456,0xCC56,0xD437,0xD436,0xD437,0xD437,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC37,0xDC37,0xE457,0xE457,0xDC57,0xDC57,0xDC57,0xDC37,0xE457,0xE457,0xE457,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE437,0xDC37,0xE457,0xE437,0xE437,0xDC37,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xE458,0xEC58,0xE459,0xDC39,0xBBF9,0x9B9A,0x62B9,0x429A,0x2ABC,0x1ABD,0x12DE,0x0ADF,0x02DF,0x02DF,0x02DF,0x031F,0x031F,0x02FF,0x02FF,0x02FF,0x02FF,0x02FF,0x02FF,0x02FE,0x02FE,0x031E,0x02FD,0x035C,0x03FC,0x053D,0x271F,0x1F7F,0x1FBF,0x17BF,0x0FBF,0x07DF,0x07DF,0x07DF,0x07BF,0x0F9F,0x177F,0x275F,0x373F,0x56DF,0x7E3E,0x6396,0x8293,0xA213,0xBA14,0xC1B3,0xC173,0xC193,0xC173,0xC9B4,0xC1B3,0xB9B4,0xB9D4,0xB235,0x91F5,0x6952,0x6152,0x5152,0x4972,0x4972,0x4192,0x4172,0x3971,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x3150,0x3150,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x290F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2910,0x2930,0x2110,0x2930,0x2910,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2930,0x2930,0x2930,0x290F,0x212F,0x212F,0x290F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2130,0x1910,0x1911,0x1932,0x1953,0x1154,0x1155,0x19D7,0x2218,0x19B6,0x1153,0x1132,0x1931,0x1910,0x2110,0x2910,0x2910,0x2930,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x290F,0x290F,0x210F,0x20EF,0x210F,0x2910,0x2930,0x2110,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2910,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x212F,0x210F,0x2930,0x212F,0x2130,0x2130,0x2930,0x2930,0x2910,0x2910,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2930,0x212F,0x212F,0x2130,0x212F,0x212F,0x2130,0x2930,0x2110,0x2110,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2930,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x210F,0x210F,0x292F,0x2930,0x210F,0x290F,0x210F,0x2910,0x2930,0x2930,0x2910,0x2930,0x2930,0x2910,0x2910,0x210F,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x210F, + 0x09D8,0x09D8,0x09D8,0x09B8,0x11D8,0x11D7,0x11D8,0x11D7,0x11D7,0x11D7,0x11D8,0x11B7,0x11D8,0x11D7,0x11D8,0x11B7,0x11D8,0x11D8,0x11D8,0x11D8,0x11F8,0x11D7,0x11D8,0x11D7,0x11D7,0x11D8,0x11D8,0x11D8,0x19F8,0x11D7,0x19D8,0x11D8,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11F7,0x11D7,0x11F7,0x11F7,0x11F7,0x11D7,0x11D7,0x19D7,0x2218,0x2218,0x19B6,0x1974,0x1133,0x1932,0x1932,0x1911,0x1931,0x2111,0x2131,0x2130,0x2130,0x2930,0x2110,0x212F,0x212F,0x2930,0x292F,0x292F,0x292F,0x292F,0x210F,0x212F,0x210F,0x2930,0x210F,0x212F,0x2930,0x2930,0x290F,0x2930,0x2910,0x2910,0x210F,0x290F,0x2930,0x2910,0x2930,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x2930,0x212F,0x2130,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x2930,0x212F,0x212F,0x212F,0x2110,0x2130,0x2130,0x2110,0x1911,0x1912,0x1933,0x1974,0x1175,0x11B7,0x11D8,0x09D8,0x09D8,0x09D9,0x01B8,0x09D9,0x09D9,0x09D8,0x11D8,0x19D7,0x1154,0x1112,0x1112,0x18F1,0x1911,0x2131,0x1931,0x1911,0x1932,0x1133,0x1154,0x11B6,0x11D8,0x09D9,0x01B9,0x01D9,0x01F9,0x01D9,0x01FA,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01B9,0x01B9,0x09B8,0x11F9,0x11B7,0x1196,0x1134,0x08F2,0x08D2,0x0913,0x1175,0x19D7,0x11D9,0x09D9,0x09F9,0x01D9,0x01D9,0x01D9,0x01DA,0x01D9,0x01FA,0x01DA,0x01DA,0x01DA,0x01B9,0x01D9,0x09F9,0x1219,0x11D8,0x1196,0x0934,0x0913,0x08F3,0x0934,0x1195,0x11B7,0x11D8,0x09D8,0x09F9,0x01B9,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01BA,0x01B9,0x09D9,0x11F9,0x11F8,0x1175,0x1153,0x1132,0x1931,0x1911,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x2130,0x210F,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2930,0x2910,0x210F,0x2930,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x2110,0x210F,0x2910,0x2110,0x210F,0x2910,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x2930,0x2930,0x2910,0x2910,0x210F,0x2930,0x210F,0x2910,0x2930,0x2910,0x2110,0x2930,0x210F,0x212F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x292F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x20EE,0x20CE,0x288C,0x412E,0xD51C,0xD4DA,0xD4B9,0xD498,0xD498,0xD478,0xCC57,0xC477,0xBC76,0xF6DE,0xFFBF,0xF7DF,0xEFDF,0xEFDF,0xE7FF,0xE7FF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xDFDF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xDFDF,0xDFDF,0xE7DF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xE7FF,0xE7FF,0xDFDF,0xE7FF,0xDFDF,0xE7DF,0xE7DF,0xDFDF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xDFDF,0xDFDF,0xE7FF,0xDFFF,0xDFFF,0xE7FF,0xDFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xE7FF,0xE7DF,0xDFDF,0xDFDF,0xE7DF,0xE7DF,0xE7FF,0xDFDF,0xDFFF,0xDFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xDFDF,0xDFDF,0xDFDF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xF7DF,0xF7BF,0xFF5F,0xC375,0xBA52,0xC253,0xCA34,0xCA34,0xCA34,0xCA13,0xC9F3,0xCA13,0xC9F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1B3,0xC1B3,0xB992,0xB192,0xA991,0x99D0,0xE53B,0xFF7F,0xFFBF,0xF7BF,0xF7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFFF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xEFFF,0xEFFF,0xEFDF,0xF7DF,0xF7BF,0xFF7F,0xD579,0xBC56,0xCC56,0xD437,0xD457,0xD437,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xE457,0xE457,0xDC57,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC36,0xDC37,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC37,0xE457,0xDC37,0xE457,0xDC37,0xE457,0xE437,0xE457,0xEC58,0xE458,0xE459,0xDC59,0xBBF9,0x9B9A,0x62B9,0x429A,0x2ABC,0x22DE,0x12DE,0x0AFF,0x02DF,0x02DF,0x02FF,0x031F,0x031F,0x031F,0x031F,0x031F,0x031F,0x02FF,0x02FF,0x02FF,0x031F,0x031E,0x02FD,0x031C,0x039B,0x04BC,0x26DF,0x1F5F,0x1F9F,0x17BF,0x079F,0x07BF,0x07BF,0x07BF,0x07BF,0x0FBF,0x179F,0x277F,0x373F,0x4EDF,0x763E,0x63B6,0x7A73,0xAA33,0xB1D3,0xB9B3,0xC193,0xC994,0xC994,0xC194,0xC1B4,0xB9B4,0xB9D4,0xB215,0x89B4,0x6952,0x5952,0x5173,0x4972,0x4972,0x4172,0x4172,0x3971,0x3971,0x3951,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x210F,0x2910,0x2930,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x212F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x2930,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2150,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2131,0x1911,0x1933,0x1133,0x1155,0x19B7,0x2218,0x21F7,0x1154,0x1153,0x1932,0x2131,0x2130,0x2930,0x2930,0x290F,0x292F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x290F,0x210F,0x2910,0x2910,0x292F,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x212F,0x2130,0x2130,0x2930,0x2110,0x210F,0x210F,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x210F,0x2130,0x212F,0x212F,0x210F,0x212F,0x2930,0x2110,0x2110,0x2930,0x2110,0x2910,0x2110,0x2910,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x210F,0x212F,0x292F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2930,0x2930,0x210F,0x2930,0x210F,0x2910,0x2110,0x210F,0x2930,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x210F,0x2930,0x210F,0x2130,0x212F, + 0x09D8,0x09D8,0x09D8,0x09D8,0x09B8,0x09B8,0x09D8,0x09B8,0x11D8,0x11D8,0x09B8,0x09B8,0x09B8,0x09B8,0x11B8,0x09B8,0x11D8,0x11D8,0x11D8,0x11D8,0x09D8,0x09D8,0x09B8,0x09B8,0x09D8,0x09B8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x09D8,0x09D7,0x11F8,0x11F8,0x11D8,0x09D8,0x09D8,0x09D8,0x09F8,0x09D8,0x09D8,0x09B7,0x09B7,0x11D7,0x1A18,0x19F7,0x19B6,0x1154,0x1133,0x1132,0x1932,0x1931,0x2131,0x2131,0x2130,0x2930,0x2930,0x2930,0x210F,0x2930,0x292F,0x212F,0x292F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x290F,0x2930,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x2930,0x210F,0x210F,0x2930,0x2110,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x210F,0x210F,0x2910,0x2110,0x2930,0x2130,0x2130,0x2130,0x2131,0x1911,0x1912,0x1953,0x1154,0x1175,0x11B7,0x11D8,0x09D8,0x09B8,0x01B8,0x09D9,0x09D9,0x09D8,0x09D8,0x19F9,0x11B6,0x1154,0x1133,0x1112,0x1111,0x1911,0x1911,0x1931,0x1952,0x1111,0x1112,0x1174,0x11B6,0x11D8,0x01B8,0x01D9,0x01B9,0x01FA,0x01FA,0x01FA,0x01FA,0x021A,0x01D9,0x01B9,0x01B9,0x01DA,0x09D9,0x09D9,0x09D8,0x11D8,0x1196,0x1134,0x08F2,0x08F2,0x0913,0x1175,0x19D7,0x11F9,0x11F9,0x09D9,0x01B9,0x01D9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01B9,0x01B9,0x01B9,0x09D9,0x09F9,0x11D8,0x0976,0x0934,0x00F3,0x08F3,0x1154,0x1196,0x0996,0x11D8,0x09D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01FA,0x01FA,0x01FB,0x01DA,0x01B9,0x01D9,0x09D9,0x11F9,0x11D7,0x1195,0x1174,0x1132,0x1911,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2930,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2910,0x2910,0x2930,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x2930,0x210F,0x2930,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x2930,0x2930,0x2930,0x210F,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2110,0x212F,0x212F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x20EF,0x20EE,0x28CD,0x38ED,0xB439,0xD4DA,0xD4B9,0xD498,0xD498,0xD478,0xCC77,0xC457,0xBC96,0xFF5F,0xFFBF,0xF7DF,0xEFDF,0xEFFF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xE7FF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xDFDF,0xE7FF,0xE7FF,0xE7FF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xE7FF,0xE7FF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xE7FF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xE7DF,0xE7DF,0xE7DF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xE7FF,0xE7FF,0xE7FF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xEFDF,0xF7BF,0xF79F,0xFF5F,0xB313,0xBA33,0xC213,0xC214,0xCA34,0xC213,0xC213,0xC1F3,0xC9F3,0xC1F3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1B3,0xB993,0xB992,0xB172,0x9990,0xB354,0xFF1F,0xFF9F,0xF7BF,0xF7DF,0xF7FF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xEFFF,0xEFDF,0xEFDF,0xF7BF,0xFF9F,0xD5BA,0xBC76,0xCC56,0xD437,0xD437,0xD437,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xE457,0xE437,0xE437,0xDC37,0xDC37,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC37,0xE457,0xE457,0xDC37,0xE457,0xE457,0xDC57,0xE457,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC37,0xE437,0xE457,0xE457,0xE458,0xE458,0xE459,0xDC59,0xBC1A,0x9BBA,0x5AB9,0x3A9A,0x2ADC,0x22FD,0x12FE,0x0B1F,0x031F,0x031F,0x031F,0x033F,0x033F,0x033F,0x033F,0x033F,0x031F,0x031F,0x031F,0x031F,0x033F,0x031E,0x02FD,0x033C,0x037C,0x045C,0x269F,0x1F3F,0x1F7F,0x179F,0x0FBF,0x07BF,0x07BF,0x07BE,0x07DF,0x0FBE,0x17BF,0x277F,0x2F3F,0x4EDF,0x767F,0x5BB6,0x7252,0xA213,0xB9F3,0xC1B3,0xC1B3,0xC994,0xC9B4,0xC194,0xC1B4,0xB9B4,0xB9F5,0xB215,0x8994,0x6112,0x5952,0x5173,0x4972,0x4972,0x4192,0x4192,0x3971,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x2951,0x2951,0x2930,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x290F,0x290F,0x292F,0x2930,0x292F,0x2930,0x2910,0x2910,0x290F,0x2930,0x2930,0x2110,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2930,0x290F,0x290F,0x2930,0x212F,0x2930,0x2930,0x210F,0x210F,0x2910,0x2910,0x2930,0x210F,0x210F,0x2910,0x290F,0x290F,0x210F,0x210F,0x212F,0x2930,0x2930,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2150,0x2130,0x2130,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x1911,0x1932,0x1133,0x1154,0x1196,0x2218,0x21F7,0x1154,0x1133,0x1932,0x1931,0x2110,0x2930,0x2930,0x292F,0x210F,0x292F,0x212F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x2110,0x2910,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x210F,0x290F,0x290F,0x2930,0x212F,0x212F,0x210F,0x2930,0x2910,0x2110,0x2910,0x2930,0x2130,0x2110,0x2130,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x2930,0x212F,0x2130,0x2130, + 0x09D8,0x09D8,0x09B8,0x09D8,0x09B8,0x09D8,0x09B8,0x09D8,0x09D8,0x09B8,0x09B8,0x09B8,0x09D8,0x09D8,0x11D8,0x11D8,0x09D8,0x11D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x11D8,0x11D8,0x09D8,0x09D8,0x09D8,0x11D9,0x09D8,0x09D8,0x09D8,0x11D8,0x09D8,0x09F8,0x09D8,0x09D8,0x09F9,0x09F9,0x09D8,0x09D8,0x09D9,0x09D8,0x09B8,0x09B8,0x09D8,0x1A18,0x11D7,0x11D7,0x1175,0x1154,0x1112,0x1932,0x1952,0x2131,0x2131,0x2130,0x2130,0x2930,0x2110,0x2930,0x292F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x290F,0x2930,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x2910,0x290F,0x2930,0x210F,0x2930,0x2930,0x210F,0x210F,0x2930,0x2110,0x2130,0x212F,0x212F,0x2930,0x212F,0x212F,0x290F,0x292F,0x290F,0x2930,0x2910,0x2910,0x290F,0x2910,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x1911,0x1932,0x1133,0x1134,0x1196,0x11B7,0x11B7,0x09D8,0x09D8,0x09D9,0x01B8,0x09B8,0x09F9,0x11F8,0x11D8,0x11B7,0x1154,0x1112,0x10F1,0x10F1,0x1931,0x1931,0x2152,0x1952,0x1111,0x1112,0x1174,0x11B6,0x11D7,0x01D8,0x01D9,0x01D9,0x01D9,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01B9,0x01DA,0x01B9,0x09D9,0x09D9,0x09B8,0x11F8,0x11B6,0x1134,0x08F3,0x08F2,0x08F2,0x1175,0x19D7,0x11F8,0x09D9,0x09D9,0x01B9,0x01B9,0x01FA,0x01DA,0x01FA,0x01FA,0x01DA,0x01DA,0x01D9,0x01B9,0x01B9,0x09D9,0x11F9,0x11D8,0x1176,0x0914,0x00D3,0x08F3,0x0954,0x1195,0x11B6,0x11D8,0x09B8,0x09F9,0x01D9,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01FB,0x01DA,0x01DA,0x01DA,0x09B9,0x11F9,0x19F8,0x1196,0x1153,0x1112,0x1911,0x1931,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x2930,0x2930,0x212F,0x2930,0x292F,0x212F,0x2930,0x2930,0x290F,0x210F,0x2930,0x290F,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x290F,0x2930,0x212F,0x212F,0x2930,0x290F,0x2930,0x212F,0x2930,0x290F,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x20EE,0x20CD,0x204B,0x8B14,0xD4DB,0xD4B9,0xD498,0xD498,0xD478,0xCC77,0xC477,0xBC96,0xF71F,0xF7BF,0xEFDF,0xEFDF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xE7FF,0xE7DF,0xDFDF,0xE7DF,0xE7FF,0xE7DF,0xE7FF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xE7FF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFDF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xE7FF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xEFBF,0xF7BF,0xFF9F,0xFF1F,0xAAB3,0xB213,0xC213,0xC214,0xC213,0xC1F3,0xC1F3,0xC1F3,0xC1F3,0xC1F3,0xC1F4,0xC1D3,0xC1D3,0xC1D3,0xB9B3,0xB992,0xB992,0xB192,0xA9B1,0x91F0,0xFE9F,0xFF7F,0xF7BF,0xF7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xDFDF,0xE7FF,0xE7FF,0xDFDF,0xE7FF,0xDFFF,0xDFFF,0xDFDF,0xE7FF,0xE7FF,0xE7FF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xEFDF,0xEFDF,0xF7BF,0xFF9F,0xE63C,0xBC55,0xC456,0xCC37,0xD437,0xD437,0xDC57,0xDC37,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xE437,0xDC37,0xDC37,0xE457,0xE457,0xE457,0xE457,0xDC57,0xE457,0xE457,0xE457,0xDC37,0xE457,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xE457,0xDC37,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC57,0xE457,0xE457,0xE457,0xDC37,0xDC37,0xE437,0xE437,0xE457,0xE458,0xE458,0xE459,0xDC5A,0xC43B,0x93BB,0x5298,0x327A,0x2ADC,0x1AFD,0x0AFE,0x0B1F,0x0B3F,0x0B3F,0x033F,0x033F,0x033F,0x033F,0x033F,0x033F,0x033F,0x033F,0x033F,0x031E,0x033F,0x033E,0x031D,0x033D,0x035C,0x041B,0x15FF,0x1F1F,0x1F7F,0x179F,0x0F9F,0x07BE,0x07BF,0x07DF,0x07DE,0x0FBE,0x0F9E,0x1F7F,0x2F3F,0x46DE,0x769F,0x5BF7,0x7252,0xA233,0xB1B3,0xC1D4,0xC1B3,0xC193,0xC994,0xC9B4,0xC193,0xB9B4,0xB1D4,0xB236,0x8193,0x6952,0x5952,0x5172,0x4972,0x4172,0x4192,0x4192,0x3971,0x3972,0x3972,0x3151,0x3151,0x3151,0x3151,0x3131,0x3151,0x3151,0x2930,0x2951,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x2910,0x2930,0x212F,0x210F,0x2930,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2150,0x212F,0x212F,0x212F,0x210F,0x210F,0x2950,0x2930,0x2110,0x1911,0x1932,0x1133,0x1134,0x19B6,0x21F8,0x2217,0x1174,0x1133,0x1132,0x1911,0x1910,0x2110,0x292F,0x292F,0x210F,0x292F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x292F,0x2930,0x292F,0x290F,0x2930,0x2930,0x2930,0x212F,0x212F,0x292F,0x2930,0x212F,0x292F,0x210F,0x212F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2130,0x2130,0x2130,0x2930,0x2930,0x212F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x2110,0x210F,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x210F,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2110,0x2910,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x212F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x212F,0x2130,0x2130, + 0x09B8,0x09D8,0x09B8,0x09D8,0x09D8,0x09B8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x11D8,0x09B8,0x09B8,0x09D8,0x09B8,0x09D8,0x09B8,0x09B8,0x09B8,0x09D8,0x09B8,0x09B8,0x09B8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09F8,0x09D8,0x09D8,0x09F9,0x09D9,0x09D9,0x09D9,0x01B8,0x09F9,0x09F9,0x1219,0x09F8,0x11F9,0x11F8,0x11B7,0x0975,0x1154,0x1113,0x1132,0x1932,0x2131,0x2131,0x2930,0x2930,0x2110,0x2130,0x212F,0x292F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x290F,0x290F,0x212F,0x2930,0x2930,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x290F,0x2910,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2130,0x212F,0x210F,0x212F,0x212F,0x2930,0x292F,0x290F,0x292F,0x290F,0x2910,0x2910,0x2910,0x2930,0x2930,0x2130,0x2131,0x2131,0x1911,0x1112,0x1133,0x1154,0x1196,0x0996,0x11B7,0x09B8,0x09B8,0x09B8,0x09D9,0x09F9,0x09F9,0x09F8,0x11D8,0x1196,0x1154,0x10F2,0x10F1,0x1911,0x1911,0x1931,0x1931,0x1931,0x1111,0x1112,0x1174,0x1196,0x09B7,0x09F9,0x01D9,0x01D9,0x01DA,0x01D9,0x01DA,0x01D9,0x01DA,0x01FA,0x01DA,0x01D9,0x01D9,0x01B9,0x01B8,0x11F8,0x11D8,0x1176,0x0934,0x08F3,0x08F3,0x0913,0x1195,0x19F7,0x11F8,0x11F9,0x01B9,0x01BA,0x01BA,0x01B9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01B9,0x01D9,0x09D9,0x11D9,0x11B8,0x0955,0x0914,0x08F3,0x08F3,0x0934,0x1195,0x11B6,0x11D8,0x09B8,0x09D8,0x01B9,0x01DA,0x01FA,0x01DA,0x021B,0x01FA,0x01BA,0x01DA,0x01DA,0x01DA,0x01D9,0x11F9,0x1A19,0x19B6,0x1133,0x1112,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x210F,0x2130,0x2130,0x210F,0x212F,0x212F,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x2930,0x2910,0x210F,0x2930,0x290F,0x210F,0x2930,0x2930,0x2930,0x290F,0x212F,0x210F,0x290F,0x2930,0x212F,0x212F,0x210F,0x2930,0x290F,0x2930,0x210F,0x212F,0x2130,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x292F,0x292F,0x210F,0x210F,0x20EE,0x20CE,0x28AC,0x496E,0xDD5D,0xD4B9,0xD498,0xD498,0xD478,0xCC77,0xC477,0xB476,0xFF3F,0xF7BF,0xEFDF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xE7FF,0xDFDF,0xE7FF,0xE7FF,0xDFDF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFDF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xDFFF,0xDFFF,0xE7FF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xD7FF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFDF,0xE7DF,0xE7DF,0xEFDF,0xEFBF,0xF7BF,0xFF9F,0xFEFF,0xFDFE,0xBAF5,0xBA13,0xBA13,0xC1F4,0xC1F3,0xC1F3,0xC1F3,0xC1F3,0xC1F3,0xC1D3,0xC1F3,0xC1D3,0xB9D3,0xB9B3,0xB9B3,0xB9B2,0xB192,0xA9B1,0x99F0,0xDCD9,0xFF7F,0xFF9F,0xF7BF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7DF,0xE7FF,0xE7DF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xDFDF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFDF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xEFDF,0xF7BF,0xFF9F,0xEEBD,0xBCB6,0xC456,0xCC37,0xD436,0xD437,0xDC37,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC37,0xDC37,0xE457,0xE457,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xE457,0xDC37,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC37,0xE457,0xE457,0xDC57,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC37,0xE437,0xE437,0xE457,0xE458,0xE458,0xE459,0xD45A,0xC45C,0x8B9A,0x4A78,0x329A,0x2AFD,0x1B1E,0x0AFE,0x031F,0x033F,0x035F,0x033F,0x033F,0x033F,0x031F,0x033F,0x033F,0x033F,0x035F,0x035F,0x033F,0x033F,0x033F,0x031E,0x033D,0x035C,0x03FC,0x0D9E,0x1EDF,0x1F5F,0x179F,0x0F9E,0x07BE,0x07BE,0x07BE,0x07DE,0x0FBE,0x0F9E,0x1F7F,0x2F3E,0x46DE,0x6E9F,0x6417,0x7232,0xA233,0xB1D3,0xB9B3,0xC193,0xC994,0xC194,0xC194,0xC1B4,0xB9B4,0xB1D4,0xAA15,0x8173,0x6952,0x5952,0x5173,0x4972,0x4172,0x4192,0x4192,0x3972,0x3972,0x3151,0x3972,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3151,0x2951,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910,0x2110,0x2930,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x212F,0x290F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2910,0x2930,0x2910,0x2930,0x290F,0x290F,0x2910,0x2910,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2110,0x1931,0x1912,0x1133,0x1134,0x19B6,0x2238,0x2217,0x1195,0x1133,0x1132,0x1911,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x2130,0x2130,0x2930,0x210F,0x2930,0x290F,0x210F,0x212F,0x292F,0x292F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x212F,0x212F,0x292F,0x292F,0x2930,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2930,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x290F,0x2910,0x210F,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2110,0x210F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x210F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x2110,0x2910,0x2910,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x292F,0x2930,0x2930,0x2130,0x2130,0x2130, + 0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x11D8,0x09B8,0x09B8,0x09D8,0x09D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x09B8,0x11D8,0x11D8,0x09B8,0x11D8,0x09D8,0x09D8,0x11D8,0x11D8,0x09B8,0x09B8,0x11B8,0x11D8,0x09D8,0x09D8,0x11B8,0x11B8,0x09D8,0x09D8,0x11D8,0x09B8,0x09D8,0x11D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D9,0x09D8,0x09D9,0x09D9,0x09F9,0x09D9,0x09F9,0x09F9,0x09D9,0x09F8,0x11D7,0x1196,0x0934,0x1133,0x1112,0x1911,0x2131,0x2931,0x2930,0x2130,0x2130,0x212F,0x292F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x210F,0x290F,0x2930,0x290F,0x2930,0x290F,0x210F,0x290F,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x292F,0x290F,0x2930,0x2910,0x2930,0x2110,0x2130,0x2131,0x2111,0x1911,0x1112,0x1153,0x1154,0x1195,0x11B7,0x09B7,0x09B8,0x09B8,0x09D9,0x09D8,0x09F9,0x09F9,0x11F8,0x11F8,0x11B6,0x0934,0x10F2,0x1111,0x1911,0x2131,0x1931,0x1931,0x1911,0x1932,0x1112,0x1174,0x11B6,0x11D8,0x09F8,0x01D8,0x01D9,0x01D9,0x01B9,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01FA,0x01D9,0x01B9,0x09D8,0x11D8,0x11B7,0x1196,0x0934,0x08F3,0x08F3,0x08F3,0x1175,0x19D7,0x11F8,0x09D8,0x09D9,0x01B9,0x01B9,0x01BA,0x01DA,0x01B9,0x01DA,0x01DA,0x01B9,0x01D9,0x01B9,0x01D9,0x09F9,0x11F8,0x11B7,0x1176,0x0914,0x08F3,0x0913,0x0913,0x1196,0x11B7,0x11F8,0x09D8,0x09D8,0x01B8,0x01D9,0x01FA,0x01FA,0x01FA,0x01FA,0x01DA,0x01DA,0x01DA,0x01D9,0x09D9,0x09F9,0x11F8,0x19B6,0x1133,0x1112,0x1911,0x1911,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x2930,0x210F,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2110,0x290F,0x290F,0x2910,0x2110,0x210F,0x212F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x212F,0x292F,0x210F,0x2930,0x212F,0x212F,0x290F,0x2930,0x290F,0x2930,0x212F,0x212F,0x2110,0x2110,0x290F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x210F,0x20EE,0x28CD,0x30AC,0xB439,0xD4DA,0xD4B9,0xD498,0xD478,0xCC77,0xC477,0xBC97,0xEEDE,0xF7BF,0xEFDF,0xE7DF,0xE7FF,0xE7FF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xE7FF,0xE7FF,0xE7DF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xDFFF,0xE7FF,0xDFDF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xD7FF,0xDFFF,0xDFFF,0xDFFF,0xD7FF,0xD7FF,0xDFFF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xDFFF,0xD7FF,0xD7FF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xD7FF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xDFFF,0xD7DF,0xD7DF,0xD7DF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xD7FF,0xD7FF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xD7FF,0xD7FF,0xD7FF,0xD7DF,0xD7FF,0xD7FF,0xDFFF,0xD7FF,0xD7FF,0xDFFF,0xD7FF,0xDFFF,0xDFFF,0xD7FF,0xD7FF,0xDFFF,0xD7DF,0xD7FF,0xD7FF,0xD7FF,0xD7DF,0xD7FF,0xD7FF,0xDFFF,0xD7DF,0xDFFF,0xD7FF,0xDFFF,0xDFFF,0xD7FF,0xD7FF,0xDFFF,0xDFDF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7DF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xE7DF,0xE7DF,0xEFBF,0xF79F,0xFF9F,0xFF3F,0xC457,0xA292,0xBA94,0xB1F3,0xB9F3,0xB9F3,0xB9D3,0xB9F3,0xC1F3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xB9B3,0xB9B3,0xB9B3,0xB192,0xA991,0x99B0,0xA313,0xFEFF,0xFF9F,0xF7BF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFDF,0xDFFF,0xDFDF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xEFBF,0xF79F,0xF71F,0xC4B7,0xC456,0xCC56,0xD437,0xD437,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xE457,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE437,0xE457,0xE457,0xDC37,0xE437,0xDC36,0xE437,0xDC37,0xE437,0xDC37,0xDC37,0xE437,0xE457,0xE457,0xDC57,0xE457,0xDC57,0xDC57,0xE457,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xE457,0xE458,0xE459,0xE479,0xD47B,0xBC3C,0x837B,0x4A99,0x32BB,0x2B1D,0x1B3E,0x0B1E,0x031F,0x033F,0x035F,0x035F,0x035F,0x033F,0x035F,0x035F,0x035F,0x033F,0x035F,0x035F,0x035F,0x035F,0x033E,0x035E,0x035D,0x037D,0x03DC,0x051C,0x26BF,0x275F,0x177F,0x0F9E,0x07BE,0x07BE,0x07BE,0x07BE,0x0FDE,0x0FBE,0x1F7E,0x2F7F,0x3EDE,0x667F,0x6458,0x7252,0x9A13,0xB1D3,0xB993,0xC193,0xC994,0xC194,0xC194,0xC1B4,0xB9B4,0xB1D4,0xAA36,0x8193,0x6132,0x5952,0x5172,0x4972,0x4192,0x4192,0x4192,0x3971,0x3971,0x3972,0x3972,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x3151,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x2110,0x2110,0x2930,0x2930,0x2110,0x2910,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2910,0x2110,0x210F,0x212F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x290F,0x292F,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2131,0x1932,0x1133,0x1133,0x19B6,0x2218,0x2217,0x1195,0x0933,0x1132,0x1931,0x2130,0x2130,0x212F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2930,0x2930,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2110,0x2130,0x2930,0x2930,0x210F,0x2130,0x212F,0x2130,0x212F,0x212F,0x2930,0x292F,0x210F,0x2930,0x2930,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2930,0x212F,0x2910,0x2910,0x212F,0x212F,0x2130,0x2110,0x2110,0x2930,0x210F,0x210F,0x290F,0x2930,0x210F,0x2930,0x2930,0x2110,0x2910,0x2910,0x2910,0x2110,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2910,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x212F,0x292F,0x210F,0x212F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x290F,0x290F,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2910,0x2110,0x2110,0x2130,0x2110,0x2130,0x2930,0x210F,0x290F,0x2930,0x292F,0x212F,0x212F,0x2930,0x212F,0x2930,0x2930,0x2930, + 0x11F8,0x11F8,0x19F8,0x11F8,0x11D7,0x19F8,0x19F8,0x19F8,0x1A18,0x11F7,0x1A18,0x19F8,0x19F8,0x19F8,0x11D7,0x19F8,0x19F8,0x11D7,0x19F8,0x19F8,0x19F8,0x19F8,0x19F7,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x19F8,0x11F8,0x19F8,0x11F8,0x11F7,0x1A18,0x11F8,0x19F8,0x1A18,0x11F7,0x19F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F9,0x09F9,0x09D9,0x0A1A,0x01D9,0x01B8,0x01B9,0x09FA,0x09FA,0x09F9,0x09D8,0x09B7,0x1196,0x0934,0x1133,0x1912,0x1911,0x2131,0x2931,0x2930,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x2930,0x2930,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2111,0x1911,0x1932,0x1153,0x1154,0x0975,0x09B7,0x09B7,0x09F8,0x09D8,0x09D8,0x09D9,0x09D8,0x09D8,0x11F8,0x11D7,0x11B6,0x1154,0x08F2,0x1111,0x18F0,0x1910,0x2131,0x2131,0x1931,0x1111,0x1132,0x0954,0x09B6,0x09D8,0x0A19,0x01D8,0x01D9,0x01D9,0x01FA,0x01DA,0x01FA,0x01FA,0x0199,0x01BA,0x01D9,0x01D9,0x09F9,0x09F9,0x09B7,0x11B7,0x1175,0x1134,0x0913,0x0913,0x08F3,0x1175,0x11B7,0x11F8,0x11F9,0x09F9,0x01B9,0x01B9,0x01B9,0x01DA,0x0A1B,0x01FA,0x01B9,0x01B9,0x01B9,0x01D9,0x01D9,0x09D8,0x11F9,0x11D7,0x1175,0x0913,0x08F3,0x0913,0x0933,0x1196,0x19F8,0x11D8,0x09D8,0x01B8,0x09F9,0x01F9,0x01D9,0x01DA,0x01D9,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x11F9,0x1A19,0x19B6,0x0913,0x1112,0x1911,0x1931,0x1930,0x2130,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x290F,0x290F,0x212F,0x210F,0x2930,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x212F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x292F,0x292F,0x292F,0x210F,0x210F,0x20CE,0x28AC,0x6A11,0xD4FB,0xD4B9,0xD498,0xD498,0xD478,0xCC78,0xBC56,0xDE1B,0xF79F,0xEFBF,0xE7DF,0xE7FF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xD7FF,0xDFDF,0xDFFF,0xDFFF,0xD7FF,0xDFFF,0xD7FF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xDFDF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xE7FF,0xDFFF,0xDFDF,0xDFFF,0xDFFF,0xDFFF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xDFFF,0xDFFF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7FF,0xD7DF,0xD7FF,0xD7FF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xD7FF,0xD7FF,0xDFDF,0xDFFF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xDFFF,0xD7FF,0xD7FF,0xD7DF,0xD7DF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xDFFF,0xD7DF,0xD7DF,0xD7FF,0xD7FF,0xDFDF,0xD7FF,0xDFFF,0xDFFF,0xDFFF,0xE7DF,0xEFBF,0xE6FF,0x726F,0x698D,0x714D,0x89B0,0x99D1,0xA9D2,0xA9D2,0xB1D3,0xB9D3,0xB9F3,0xB9F3,0xB9D3,0xB9F3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xB9B3,0xB9B3,0xB192,0xA992,0xA1B1,0x89CF,0xFEDF,0xFF7F,0xF7BF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xEFFF,0xEFFF,0xE7DF,0xEFFF,0xEFDF,0xEFFF,0xEFFF,0xEFDF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xE7FF,0xDFFF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7DF,0xD7FF,0xDFFF,0xDFDF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFDF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xF79F,0xFF5F,0xC518,0xC476,0xCC56,0xD437,0xD437,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xE457,0xE457,0xE457,0xE457,0xE457,0xE437,0xE437,0xE457,0xE457,0xE437,0xE437,0xDC37,0xE437,0xE437,0xE437,0xE437,0xE437,0xDC37,0xE437,0xE457,0xDC36,0xDC36,0xDC16,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xDC37,0xE457,0xE457,0xE437,0xDC37,0xDC37,0xDC37,0xE437,0xE458,0xE458,0xE479,0xE47A,0xD47B,0xB43C,0x733A,0x429A,0x32DC,0x335E,0x235F,0x0B3E,0x035F,0x035F,0x037F,0x037F,0x035F,0x035F,0x033F,0x035F,0x035F,0x035F,0x035F,0x035F,0x035F,0x035F,0x035E,0x035E,0x037D,0x037D,0x03DC,0x04BC,0x1E7F,0x273F,0x1F7F,0x0F9E,0x07BE,0x07BE,0x07BE,0x07DE,0x07BE,0x17BE,0x1F9E,0x2F7F,0x471F,0x669F,0x6CB9,0x6A72,0x9A33,0xB214,0xB9D3,0xC1B3,0xC9B4,0xC173,0xC173,0xC194,0xB9B4,0xB9F5,0xB236,0x7973,0x6132,0x5972,0x4972,0x4172,0x4172,0x4192,0x4192,0x3971,0x3971,0x3972,0x3151,0x3151,0x3151,0x3151,0x3151,0x3131,0x2930,0x3130,0x3150,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x290F,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x1911,0x1932,0x1132,0x1133,0x19B6,0x2238,0x2217,0x1195,0x1133,0x1112,0x1931,0x1910,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x212F,0x210F,0x2110,0x2930,0x2110,0x2930,0x2930,0x2930,0x2130,0x2110,0x2130,0x212F,0x210F,0x2130,0x2130,0x2930,0x2930,0x2930,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x212F,0x290F,0x210F,0x212F,0x212F,0x2130,0x210F,0x2930,0x2930,0x210F,0x290F,0x2910,0x290F,0x2910,0x210F,0x2110,0x210F,0x2930,0x2110,0x2110,0x2930,0x2930,0x212F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x2910,0x2910,0x210F,0x2910,0x2930,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x2910,0x2910,0x210F,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x290F, + 0x1196,0x1195,0x1196,0x1196,0x1195,0x1175,0x1195,0x1195,0x1195,0x1195,0x11B6,0x1196,0x11B6,0x11B6,0x1196,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x19B6,0x11B6,0x19D6,0x19B6,0x19D6,0x19B6,0x19D6,0x19B6,0x19D6,0x11B6,0x19D6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x19D6,0x11B6,0x11D7,0x11D7,0x19D8,0x11D8,0x11D8,0x11F9,0x123A,0x121A,0x09D9,0x01D9,0x01B9,0x09FA,0x09D9,0x09F9,0x11F9,0x09B7,0x1196,0x1154,0x1113,0x1912,0x1911,0x2131,0x2131,0x2930,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x212F,0x212F,0x2930,0x2110,0x2110,0x210F,0x290F,0x210F,0x2910,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2930,0x2930,0x2910,0x2930,0x2910,0x2910,0x2111,0x1911,0x1911,0x1932,0x1133,0x0954,0x0995,0x11D7,0x09D7,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09F8,0x11D8,0x11D7,0x11B6,0x1154,0x1112,0x10F1,0x18F0,0x2130,0x2130,0x2130,0x2131,0x1911,0x1112,0x1174,0x11B6,0x09D7,0x01D8,0x01D9,0x01B9,0x01D9,0x01FA,0x01DA,0x01FA,0x01FA,0x01BA,0x01BA,0x01DA,0x01B9,0x01D9,0x09F9,0x09D8,0x11B7,0x1195,0x1134,0x0913,0x08F2,0x00F3,0x1175,0x11D7,0x11D8,0x09D8,0x09D9,0x01B8,0x01B9,0x01B9,0x01DA,0x01FA,0x01DA,0x01DA,0x01B9,0x01D9,0x01D9,0x01D9,0x09D8,0x11F8,0x11D7,0x1175,0x0933,0x08F2,0x0913,0x0913,0x1195,0x19F7,0x09B7,0x09D8,0x01B8,0x01D9,0x01D9,0x01D9,0x01FA,0x01D9,0x01FA,0x01FA,0x01DA,0x01B9,0x01DA,0x01D9,0x09F9,0x19F9,0x1196,0x1133,0x1112,0x1911,0x1910,0x1930,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x290F,0x2930,0x2930,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x290F,0x2930,0x2930,0x290F,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x20EE,0x28CE,0x202A,0xC4BA,0xD4DA,0xDCB9,0xDC99,0xD498,0xCC78,0xC477,0xCD39,0xFF9F,0xEFBF,0xE7DF,0xE7FF,0xDFFF,0xDFFF,0xDFDF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xDFFF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xE7FF,0xE7FF,0xE7FF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xEFDF,0xEFBF,0xEFBF,0xEFBF,0xF7BF,0xF7BF,0xF7BF,0xF7BF,0xF7BF,0xF7BF,0xEFBF,0xEFBF,0xEFBF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFDF,0xDFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xEFBF,0xEFBF,0xEFBF,0xF7BF,0xF7BF,0xEFBF,0xF7BF,0xEF9F,0xEFBF,0xEFBF,0xEFBF,0xEFBF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7FF,0xE7FF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xD7DF,0xD7FF,0xD7DF,0xD7FF,0xD7FF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7FF,0xD7DF,0xD7FF,0xD7FF,0xD7DF,0xD7DF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xDFFF,0xDFFF,0xE7DF,0xEF9F,0xEEDF,0x8AF2,0x81D0,0x91B1,0x99B1,0xA1B2,0xA9D2,0xB1D2,0xB1D3,0xB1D3,0xB9D3,0xB9D3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9B3,0xB9B3,0xB1B2,0xB192,0xA1B1,0x91B0,0xDCFA,0xFF7F,0xF7BF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xF7DF,0xEFBF,0xEFBF,0xEFBF,0xEFDF,0xEFDF,0xEFDF,0xE7DF,0xE7FF,0xE7DF,0xE7FF,0xE7FF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xDFFF,0xDFDF,0xDFDF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFFF,0xDFDF,0xE7DF,0xE7DF,0xE7DF,0xEFBF,0xF7BF,0xFF7F,0xBCB6,0xC456,0xCC57,0xD437,0xD437,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC37,0xDC37,0xE437,0xE437,0xE457,0xE437,0xE437,0xE457,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE436,0xDC36,0xE436,0xE437,0xDC36,0xDC36,0xDC16,0xE437,0xDC37,0xE437,0xDC37,0xDC37,0xDC37,0xE437,0xE437,0xE437,0xDC37,0xDC37,0xE437,0xE458,0xE458,0xE459,0xDC5A,0xD49C,0x8319,0x4A58,0x3239,0x227B,0x2B3E,0x237F,0x137F,0x0B7F,0x037F,0x037F,0x037F,0x037F,0x037F,0x0B7F,0x037F,0x037F,0x037F,0x035F,0x037F,0x037F,0x037F,0x035E,0x037E,0x037D,0x039D,0x03BC,0x047B,0x1E3F,0x2F3F,0x1F7F,0x179E,0x0FBE,0x07BE,0x07BE,0x07BE,0x07BD,0x0F9E,0x1F9E,0x275F,0x3F1F,0x669F,0x6CDA,0x7292,0x9A33,0xB1F3,0xB9B3,0xC1B3,0xC194,0xC194,0xC1B4,0xC1B4,0xC1D4,0xB1D4,0xA9F5,0x7952,0x6152,0x5972,0x4972,0x4972,0x4172,0x4172,0x4192,0x3992,0x3971,0x3992,0x3151,0x3951,0x3151,0x3151,0x3151,0x3130,0x3151,0x3130,0x3130,0x2930,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x2910,0x210F,0x2110,0x210F,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2930,0x2930,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2930,0x212F,0x212F,0x292F,0x212F,0x292F,0x212F,0x210F,0x290F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2130,0x2110,0x2131,0x1932,0x1132,0x0933,0x19B6,0x2A38,0x2217,0x19B5,0x1133,0x1132,0x1931,0x1930,0x2130,0x2150,0x212F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x2910,0x210F,0x2910,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x2930,0x290F,0x212F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x210F,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2930,0x210F,0x2930,0x2930,0x2110,0x212F,0x212F,0x212F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2910,0x2910,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x290F,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x210F,0x2910,0x2930,0x2130,0x210F,0x2130,0x212F,0x212F,0x2930,0x290F, + 0x1133,0x1133,0x1113,0x1113,0x1113,0x1112,0x1113,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1113,0x1113,0x1133,0x1133,0x1113,0x1113,0x1133,0x1133,0x1133,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1154,0x1133,0x0933,0x0933,0x0913,0x0914,0x0935,0x0935,0x0156,0x09B8,0x11FA,0x09FA,0x09DA,0x0199,0x01D9,0x01D9,0x09F9,0x11F9,0x11D8,0x1196,0x1154,0x1113,0x1912,0x1911,0x2111,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2930,0x2130,0x2131,0x2131,0x2132,0x1912,0x1133,0x1174,0x0996,0x09B7,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09F9,0x09F9,0x09B8,0x11B7,0x1195,0x1154,0x08F1,0x10F1,0x1911,0x2151,0x2151,0x2130,0x2110,0x1911,0x1132,0x1174,0x11B6,0x11F8,0x09F9,0x01D8,0x01D9,0x01D9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x01BA,0x01B9,0x01D9,0x09D9,0x09D8,0x11D7,0x1195,0x1133,0x08F2,0x08D2,0x0913,0x1175,0x11D7,0x11D8,0x1219,0x01B8,0x01B9,0x01D9,0x01FA,0x01FA,0x01DA,0x01FA,0x01BA,0x01DA,0x01D9,0x01D9,0x01B8,0x09F9,0x09D8,0x11D7,0x1174,0x0933,0x0912,0x0912,0x0913,0x1195,0x19F7,0x09D7,0x09F9,0x01B9,0x01B9,0x01B9,0x01D9,0x01DA,0x01FA,0x01DA,0x01D9,0x01DA,0x01DA,0x01D9,0x01D9,0x09F9,0x11D8,0x1196,0x1154,0x1112,0x1111,0x1931,0x2131,0x2130,0x2110,0x210F,0x210F,0x210F,0x2130,0x2930,0x2130,0x2130,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2930,0x210F,0x2130,0x2110,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x290F,0x290F,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2110,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x20EE,0x28AC,0x6211,0xDD3C,0xD4B9,0xD498,0xD478,0xCC57,0xC457,0xBC97,0xF6DF,0xF79F,0xE7BF,0xE7DF,0xDFDF,0xDFDF,0xDFDF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7FF,0xD7DF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xDFFF,0xDFFF,0xDFFF,0xDFFF,0xE7FF,0xE7FF,0xE7FF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFDF,0xEFBF,0xF7BF,0xF79F,0xF79F,0xFF7F,0xFF5F,0xFF5F,0xFF5F,0xFF5F,0xFF5F,0xFF5F,0xFF7F,0xFF9F,0xFF9F,0xF79F,0xF7BF,0xF7BF,0xEFBF,0xEFBF,0xEFDF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xEFBF,0xEFBF,0xEFBF,0xF79F,0xF79F,0xFF7F,0xFF7F,0xFF5F,0xFF5F,0xFF3F,0xFF3F,0xFF5F,0xFF7F,0xFF7F,0xFF7F,0xFF9F,0xF79F,0xF7BF,0xF7BF,0xEFBF,0xEFBF,0xEFBF,0xEFDF,0xE7DF,0xE7DF,0xE7DF,0xDFDF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7FF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xDFFF,0xDFDF,0xDFDF,0xEFBF,0xEEDF,0x9333,0x89B0,0x99B1,0xA1B1,0xA9D2,0xA9D2,0xB1D2,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9B3,0xB1B3,0xB1B2,0xA992,0x99D1,0x9291,0xFEBF,0xF77F,0xEFBF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xEFDF,0xEFDF,0xEFBF,0xF7BF,0xF7BF,0xFFBF,0xFFBF,0xFF9F,0xFF9F,0xFF9F,0xF79F,0xF7BF,0xF7BF,0xEFBF,0xEFDF,0xE7DF,0xE7DF,0xDFDF,0xDFDF,0xDFFF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xE7DF,0xE7BF,0xEF9F,0xFF5F,0xBCD7,0xC456,0xCC36,0xD417,0xD417,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE437,0xE436,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE436,0xDC16,0xDC36,0xE437,0xE437,0xE437,0xE437,0xE437,0xDC37,0xE437,0xDC37,0xE437,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE438,0xE458,0xE459,0xDC7A,0xD4DE,0x4154,0x2135,0x1998,0x11F9,0x1AFD,0x1B7F,0x139F,0x0BBF,0x039F,0x039F,0x039F,0x039F,0x037F,0x0B9F,0x037F,0x037F,0x037F,0x037F,0x037F,0x037F,0x037F,0x035E,0x037E,0x039E,0x03BD,0x03DC,0x045B,0x1DDE,0x2F3F,0x1F7F,0x17BF,0x0FBE,0x07BE,0x07BE,0x07DE,0x0FDE,0x0FBE,0x179E,0x2F7F,0x3F1F,0x66BF,0x6CDA,0x6A93,0x9A53,0xA9D3,0xB9B3,0xC1B4,0xC1B4,0xC1B4,0xC194,0xB994,0xB9D4,0xB9F5,0xAA15,0x7152,0x6152,0x5172,0x4972,0x4993,0x4172,0x4192,0x4192,0x3992,0x3971,0x3972,0x3951,0x3951,0x3951,0x3951,0x3151,0x3150,0x3150,0x3151,0x3131,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2910,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x290F,0x292F,0x212F,0x210F,0x2930,0x212F,0x212F,0x210F,0x292F,0x210F,0x290F,0x292F,0x212F,0x292F,0x210F,0x210E,0x210F,0x210F,0x292F,0x292F,0x292F,0x212F,0x2130,0x2130,0x2151,0x1952,0x1132,0x1133,0x19B5,0x2238,0x2217,0x1995,0x1133,0x1132,0x2131,0x2131,0x2130,0x210F,0x210F,0x210F,0x2950,0x2930,0x2930,0x210F,0x2910,0x2910,0x2910,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x2930,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x2130,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x2930,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x290F,0x2930,0x2130,0x2130,0x2130,0x2930,0x210F,0x212F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2910,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2910,0x210F,0x2110,0x2110,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x290F,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2930,0x2910,0x290F,0x290F,0x290F,0x210F,0x212F,0x2130,0x212F,0x2130,0x2930,0x290F,0x290F, + 0x1932,0x1932,0x1912,0x1912,0x1912,0x1912,0x1932,0x1932,0x1932,0x1932,0x1932,0x1912,0x1932,0x1912,0x1912,0x1932,0x1912,0x1912,0x1912,0x1912,0x1912,0x1932,0x1912,0x1912,0x1912,0x1932,0x1932,0x1912,0x1932,0x1912,0x1932,0x1912,0x1912,0x1912,0x1932,0x1933,0x1932,0x1132,0x1132,0x1132,0x1132,0x1112,0x1133,0x1133,0x1134,0x1114,0x0935,0x0956,0x09B8,0x121A,0x09D9,0x09DA,0x01B9,0x01B9,0x09D9,0x09FA,0x11F9,0x11D8,0x11B7,0x1154,0x1113,0x1912,0x1931,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2111,0x1932,0x1932,0x1133,0x1174,0x0995,0x09D7,0x09D8,0x09D8,0x09F9,0x09F9,0x01D8,0x0A19,0x09F9,0x11F8,0x11B7,0x1196,0x1134,0x1112,0x10F1,0x1911,0x2151,0x2151,0x2130,0x2110,0x1910,0x1911,0x1153,0x11B6,0x11D8,0x09D8,0x09F9,0x01D9,0x01D9,0x01D9,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x01D9,0x09F9,0x09D8,0x11B7,0x1195,0x1153,0x1112,0x10F2,0x08F2,0x1175,0x11B7,0x11D8,0x09D8,0x09D9,0x01B9,0x01D9,0x01B9,0x01DA,0x01B9,0x01FA,0x01DA,0x01BA,0x01DA,0x01B9,0x01B9,0x09D9,0x11F8,0x11D7,0x1174,0x1133,0x1132,0x1112,0x08F2,0x0953,0x11D6,0x11F8,0x09B8,0x01B8,0x01B9,0x01DA,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01DA,0x01DA,0x01D9,0x09D9,0x11F9,0x11F8,0x1196,0x1134,0x1112,0x1111,0x1911,0x1930,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2130,0x210F,0x2910,0x2930,0x2910,0x2110,0x2110,0x2130,0x2130,0x2930,0x2130,0x2130,0x2110,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x290F,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2910,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x212F,0x210F,0x210F,0x28CD,0x28AC,0xA3F8,0xD4DB,0xD499,0xD478,0xCC58,0xCC57,0xC477,0xBCF7,0xF77F,0xEFBF,0xE7DF,0xDFDF,0xDFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7FF,0xD7DF,0xD7FF,0xD7FF,0xDFFF,0xD7DF,0xD7FF,0xD7DF,0xDFDF,0xDFFF,0xDFDF,0xDFFF,0xE7FF,0xE7DF,0xE7DF,0xEFBF,0xF7BF,0xF79F,0xFF9F,0xFF9F,0xFF7F,0xFF1F,0xE65E,0xD5BB,0xC4F9,0xB477,0xABF5,0xA394,0x9312,0x9312,0xA394,0xABB5,0xB416,0xBC77,0xCD19,0xDDDC,0xF6DF,0xFF7F,0xFF9F,0xFF9F,0xF77F,0xF79F,0xEFBF,0xEFBF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xEFBF,0xEFBF,0xF7BF,0xF79F,0xFF9F,0xFF7F,0xFF5F,0xE63D,0xCD5A,0xBC97,0xA3D5,0x9332,0x9312,0x92F2,0x9312,0x9B73,0xABD5,0xBC57,0xC4B8,0xCD19,0xDD9B,0xEE5D,0xFF1F,0xFF7F,0xFF7F,0xFF7F,0xF77F,0xF79F,0xEFBF,0xE7BF,0xE7DF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xCFDF,0xCFDF,0xD7DF,0xD7DF,0xD7DF,0xCFBF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7BF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7BF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xCFDF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xDFDF,0xDFDF,0xDFDF,0xE79F,0xE6DF,0x9353,0x89B0,0x99B1,0xA1D2,0xA9D2,0xA9D2,0xB1D3,0xB1D3,0xB1F3,0xB1F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9D3,0xB1D3,0xB1B3,0xB1B3,0xA9B2,0x99B1,0x796E,0xBC57,0xFF7F,0xEF9F,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xEFBF,0xEF9F,0xF79F,0xFF9F,0xFF7F,0xE63D,0xCD7A,0xC4F9,0xBC97,0xBC77,0xC4D8,0xD57A,0xE61D,0xFF1F,0xFF7F,0xFF9F,0xF79F,0xEFDF,0xE7DF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xE7DF,0xE7BF,0xF79F,0xF71F,0xBC96,0xC456,0xCC36,0xD417,0xD417,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE436,0xE436,0xDC36,0xE437,0xE437,0xDC37,0xDC37,0xE437,0xE417,0xE437,0xE437,0xE416,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE416,0xE437,0xDC37,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC38,0xE459,0xE459,0xDC5A,0xD4DF,0x28D3,0x1957,0x1198,0x09FA,0x12BC,0x1B5E,0x139F,0x0BBF,0x0B9F,0x039F,0x0BBF,0x0B9F,0x0B9F,0x0B9F,0x0B9F,0x037F,0x0B7F,0x0B7F,0x0B9F,0x0B7F,0x037F,0x037E,0x037E,0x039E,0x03BD,0x03DC,0x043B,0x15BE,0x2F1F,0x1F5F,0x179E,0x0FBE,0x07BD,0x07BD,0x07DD,0x07DE,0x0F9E,0x179E,0x277F,0x3F1F,0x66BF,0x6D1A,0x7293,0x9A33,0xA9D3,0xB9D3,0xC1B3,0xC1B4,0xC194,0xC1B4,0xC1B4,0xB9D4,0xB1F5,0xAA36,0x7152,0x5952,0x5172,0x4972,0x4172,0x4192,0x4172,0x4192,0x3972,0x3972,0x3971,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3150,0x3131,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2110,0x2930,0x2110,0x2930,0x2110,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x212F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x290F,0x290F,0x292F,0x2130,0x2150,0x2130,0x1931,0x1952,0x1132,0x1133,0x1195,0x2A38,0x21F7,0x19B6,0x1133,0x1932,0x2152,0x2131,0x2130,0x2110,0x210F,0x210F,0x2930,0x2930,0x2930,0x210F,0x290F,0x2910,0x2910,0x2910,0x2930,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x2950,0x2930,0x2930,0x2130,0x2130,0x2110,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2110,0x2130,0x210F,0x212F,0x210F,0x292F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2930,0x2110,0x2110,0x210F,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x290F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2130,0x2110,0x2130,0x2130,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2110,0x2930,0x2110,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2930,0x2130,0x212F,0x210F,0x210F, + 0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1932,0x1931,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1912,0x1933,0x1133,0x1134,0x0934,0x0956,0x11B7,0x11F9,0x09D9,0x09DA,0x01B9,0x0199,0x01B9,0x09D9,0x11F9,0x11F8,0x11B6,0x1175,0x1112,0x10F1,0x1911,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2130,0x2131,0x2131,0x1932,0x1111,0x1112,0x1154,0x0995,0x09B7,0x09D8,0x09D8,0x09D9,0x01B8,0x01B8,0x09F9,0x09D8,0x11D8,0x11B7,0x1196,0x1154,0x1112,0x1911,0x1931,0x2130,0x2130,0x2130,0x2110,0x2110,0x1910,0x1932,0x1174,0x11B7,0x09B8,0x01B9,0x01B9,0x01D9,0x01DA,0x01DA,0x01DA,0x01DA,0x01B9,0x01DA,0x01FA,0x01D9,0x01D9,0x09F9,0x11F8,0x11D7,0x0954,0x1133,0x1132,0x1132,0x10F2,0x1133,0x19D7,0x11F8,0x0197,0x01B8,0x01B9,0x01D9,0x01D9,0x01DA,0x01D9,0x01DA,0x01B9,0x01B9,0x01B9,0x01DA,0x01D9,0x09D9,0x11F8,0x19D7,0x1195,0x1133,0x1932,0x1111,0x1111,0x0912,0x19D6,0x1A17,0x09B7,0x0198,0x01B9,0x01D9,0x01DA,0x01BA,0x01DA,0x01DA,0x01DA,0x01DA,0x01DA,0x09DA,0x01B9,0x09D9,0x11D8,0x1196,0x0933,0x1112,0x1111,0x1931,0x1930,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x2130,0x210F,0x210F,0x2910,0x2110,0x2110,0x2930,0x2910,0x2110,0x2130,0x210F,0x2130,0x2130,0x2930,0x212F,0x2130,0x210F,0x212F,0x210F,0x290F,0x292F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x212F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x210F,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x212F,0x210F,0x210F,0x290E,0x28CD,0x38ED,0xBC79,0xCC99,0xD478,0xCC58,0xCC58,0xCC57,0xB415,0xF71F,0xEF9F,0xE7BF,0xDFDF,0xDFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xCFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7FF,0xD7DF,0xD7DF,0xDFDF,0xDFDF,0xDFFF,0xDFFF,0xDFDF,0xE7DF,0xE7DF,0xEFDF,0xEFBF,0xFF9F,0xFF3F,0xEE5E,0xCCFA,0xA333,0x79CF,0x716E,0x796E,0x796E,0x818F,0x818F,0x898F,0x898F,0x8990,0x8990,0x8990,0x8990,0x896F,0x816F,0x816F,0x816E,0x794E,0x794D,0x8A30,0xBBF6,0xEDDD,0xFEDF,0xFF5F,0xF79F,0xEF9F,0xE7BF,0xE7BF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7DF,0xE7BF,0xEFBF,0xF79F,0xF73F,0xEE9E,0xDD9C,0xABD6,0x8A30,0x716E,0x796E,0x816F,0x818F,0x89B0,0x89B0,0x89B0,0x89B0,0x89B0,0x8990,0x898F,0x898F,0x816F,0x816F,0x814E,0x794E,0x794D,0x798E,0x9AF3,0xDD5B,0xF65E,0xFEFF,0xFF7F,0xF79F,0xEFBF,0xE7DF,0xE7DF,0xDFDF,0xDFDF,0xDFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xCFDF,0xCFDF,0xD7DF,0xCFDF,0xCFBF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7BF,0xD7BF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7BF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xCFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xDFDF,0xDFDF,0xE79F,0xEEDF,0x9353,0x89D0,0x99D2,0xA1D2,0xA9D2,0xA9D3,0xB1D3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xA9B2,0x99B1,0xC3D7,0xFE9F,0xFF5F,0xF79F,0xEFBF,0xE7BF,0xE7DF,0xE7DF,0xE7DF,0xE7BF,0xE7BF,0xEFBF,0xF77F,0xF6DF,0xA3B5,0x71AE,0x716E,0x796E,0x796F,0x816F,0x816F,0x816F,0x794E,0x796E,0x714D,0x79CE,0xB436,0xF6BF,0xF79F,0xE7BF,0xE7DF,0xDFDF,0xDFFF,0xDFFF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7BF,0xD7DF,0xD7BF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7BF,0xD7BF,0xD7DF,0xD7BF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xE7DF,0xE7BF,0xEF9F,0xF73F,0xBCD7,0xC436,0xCC16,0xD416,0xD417,0xD417,0xDC17,0xDC17,0xDC37,0xDC17,0xDC37,0xDC37,0xDC17,0xDC37,0xDC36,0xDC16,0xDC16,0xDC16,0xDC17,0xDC16,0xDC17,0xDC17,0xE417,0xE417,0xE417,0xE417,0xE416,0xE416,0xE417,0xE417,0xE417,0xE417,0xE437,0xE417,0xE417,0xE437,0xE417,0xE417,0xDC16,0xE437,0xE417,0xE417,0xE417,0xE437,0xDC16,0xDC16,0xDC17,0xDC17,0xE417,0xE437,0xE437,0xE438,0xE438,0xDC38,0xDC59,0xDC7A,0xD4FF,0x20B2,0x1957,0x1199,0x09DA,0x129C,0x1B3E,0x139F,0x13BF,0x0BBF,0x0BBF,0x0BBF,0x0BBF,0x0B9F,0x0B9F,0x0B9F,0x0B9F,0x0B7F,0x0B9F,0x0B7F,0x0B7F,0x0B7F,0x037E,0x037E,0x039E,0x03BD,0x03FC,0x043B,0x0D5D,0x2F1F,0x1F5F,0x177E,0x0F9E,0x07BD,0x07BD,0x07DD,0x07BD,0x0FBE,0x179E,0x277E,0x3F1F,0x5EBF,0x757C,0x6A93,0x9213,0xB214,0xB9D4,0xB993,0xC194,0xC1B4,0xC1B4,0xB993,0xB9B4,0xB1D4,0xA1F5,0x7993,0x6152,0x5152,0x4152,0x4172,0x4193,0x49B3,0x4192,0x3971,0x3951,0x3951,0x3971,0x3151,0x3151,0x3151,0x3151,0x3130,0x3130,0x3130,0x3150,0x3150,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x210F,0x290F,0x2910,0x2910,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x2930,0x290F,0x2910,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x290F,0x210F,0x292F,0x292F,0x212F,0x210F,0x210F,0x212F,0x292F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x1931,0x1932,0x1132,0x1133,0x19B6,0x2A38,0x21F7,0x1995,0x1133,0x1112,0x1931,0x2131,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2930,0x2930,0x292F,0x292F,0x292F,0x290F,0x292F,0x2930,0x212F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x2130,0x2110,0x2111,0x1911,0x1911,0x2132,0x2132,0x2131,0x1911,0x1911,0x1911,0x2131,0x2131,0x2131,0x2111,0x2131,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x292F,0x292F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x290F,0x290F,0x292F,0x292F,0x290F,0x210F,0x2930,0x2910,0x2110,0x2110,0x2110,0x2130,0x210F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x212F,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x2910,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x2130, + 0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x1910,0x2111,0x2110,0x1911,0x1911,0x2131,0x2131,0x1911,0x2111,0x2131,0x1910,0x1911,0x2111,0x1911,0x1910,0x2131,0x2131,0x1931,0x1931,0x1911,0x1931,0x1911,0x1910,0x1910,0x1931,0x1910,0x1931,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1113,0x1133,0x1134,0x0955,0x1197,0x11F9,0x11F9,0x09FA,0x09B9,0x0199,0x09B9,0x09D9,0x11F9,0x11F8,0x11B7,0x1175,0x1112,0x1932,0x1932,0x2132,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1911,0x1112,0x1133,0x1154,0x0975,0x09B7,0x09D8,0x01B8,0x01D8,0x01D8,0x01D8,0x09D9,0x09F9,0x11D8,0x11B7,0x1196,0x1154,0x1133,0x1911,0x1911,0x2151,0x2110,0x2110,0x2110,0x2110,0x1910,0x1931,0x1133,0x1175,0x0997,0x09B8,0x01B9,0x01B9,0x01DA,0x01DA,0x01FA,0x01DA,0x01DA,0x01D9,0x01DA,0x01D9,0x01D9,0x09F9,0x11F9,0x09B7,0x1175,0x1133,0x1132,0x1111,0x1111,0x1132,0x1154,0x11D7,0x09B8,0x09B8,0x01D9,0x01B9,0x01B9,0x01B9,0x01DA,0x01DA,0x01DA,0x01BA,0x01DA,0x01B9,0x09DA,0x09D9,0x11D8,0x19D7,0x1195,0x1132,0x1132,0x1931,0x1111,0x1111,0x1133,0x19D6,0x09B7,0x09B8,0x09D9,0x01B9,0x01D9,0x01BA,0x01BA,0x01BA,0x01DA,0x01DA,0x01B9,0x01D9,0x09D9,0x11F9,0x11F8,0x0975,0x1154,0x1112,0x1911,0x1910,0x1930,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x2130,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x2930,0x210F,0x2930,0x210F,0x292F,0x210F,0x290F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2110,0x2930,0x210F,0x2110,0x210F,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x2910,0x2930,0x2930,0x290F,0x2930,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x212F,0x210F,0x210F,0x20EE,0x28AD,0x59AF,0xCCBA,0xCC79,0xD478,0xCC58,0xCC58,0xC457,0xBCD8,0xF79F,0xE79F,0xDFBF,0xDFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xCFDF,0xCFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xDFFF,0xDFFF,0xDFDF,0xDFDF,0xE7DF,0xE7DF,0xEFBF,0xF79F,0xFF7F,0xC519,0x9B74,0x8230,0x89D0,0x91B0,0x9191,0x9991,0x9991,0x9991,0x9991,0x9991,0x9991,0x9991,0x9971,0xA191,0x9991,0x9971,0xA192,0xA172,0x9971,0xA171,0x9971,0x9991,0x9190,0x89B0,0x81AF,0x8A91,0xB416,0xF6DF,0xFF9F,0xF79F,0xEF9F,0xE7BF,0xE7BF,0xE7BF,0xE7BF,0xE7DF,0xE7BF,0xEFBF,0xEF9F,0xF77F,0xFF7F,0xF6DF,0xBC77,0x8271,0x81F0,0x89B0,0x91B1,0x9991,0x9991,0x9991,0x9991,0x9992,0x9992,0x9991,0x9991,0x9991,0x9991,0x9991,0x9991,0x9971,0x9971,0x9971,0x9971,0x9971,0x9991,0x9190,0x818F,0x8A30,0x92D2,0xBC57,0xFEFF,0xFF7F,0xF77F,0xEFBF,0xE7BF,0xDFDF,0xDFDF,0xDFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xCFDF,0xCFDF,0xCFDF,0xCFDF,0xCFBF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7DF,0xD7DF,0xCFBF,0xD7DF,0xD7DF,0xCFDF,0xCFDF,0xCFDF,0xCFDF,0xD7DF,0xD7DF,0xCFBF,0xD7DF,0xCFDF,0xCFBF,0xCFDF,0xD7DF,0xD7DF,0xD7DF,0xCFBF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xCFDF,0xCFDF,0xCFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xCFDF,0xCFDF,0xCFDF,0xCFDF,0xD7DF,0xD7DF,0xCFDF,0xCFDF,0xCFDF,0xCFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xCFDF,0xCFDF,0xCFDF,0xCFDF,0xCFDF,0xD7DF,0xD7DF,0xD7DF,0xD7BF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xCFBF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xCFDF,0xCFDF,0xCFDF,0xCFDF,0xCFDF,0xCFDF,0xD7DF,0xD7DF,0xD7FF,0xDFFF,0xDFDF,0xE79F,0xEEFF,0x9353,0x89D0,0x99D2,0xA1D2,0xA9F2,0xA9F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xA9B2,0x91B0,0xD4B9,0xFF3F,0xF77F,0xE79F,0xE7BF,0xE7BF,0xE7BF,0xE7BF,0xE7DF,0xE7BF,0xE7BF,0xEF7F,0xEEBF,0x8AF2,0x79D0,0x8990,0x9191,0x9191,0x9991,0x9991,0x9971,0x9971,0x9991,0x9991,0x9991,0x91B1,0x81AF,0x8A91,0xEE9E,0xF79F,0xE7BF,0xDFDF,0xDFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xDFDF,0xDFDF,0xDFBF,0xDFBF,0xE7BF,0xEF9F,0xF71F,0xBCB7,0xBC36,0xCC16,0xD416,0xD416,0xD416,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC16,0xDC16,0xDC16,0xDC17,0xDC16,0xDC16,0xDC17,0xDC17,0xDC16,0xE416,0xE417,0xE417,0xE417,0xE416,0xE417,0xE417,0xE417,0xE417,0xE417,0xE417,0xE417,0xE417,0xE417,0xE417,0xE416,0xE417,0xDBF6,0xE417,0xE3F7,0xE417,0xE417,0xDC16,0xE417,0xDC17,0xDC17,0xDC17,0xE417,0xE417,0xE438,0xDC38,0xE439,0xDC59,0xD45B,0xCCBF,0x18B3,0x1158,0x1199,0x09FA,0x125C,0x12FE,0x1B9F,0x13BF,0x13BF,0x13BF,0x13BF,0x13BF,0x13BF,0x139E,0x137E,0x137F,0x137F,0x139F,0x137F,0x137E,0x0B7F,0x0B7E,0x037E,0x039E,0x03BD,0x03DC,0x043C,0x0D3D,0x2EFF,0x1F3F,0x177E,0x0F9E,0x0FBE,0x07BD,0x07DD,0x07DD,0x0FBE,0x179E,0x277E,0x3F1F,0x5EDF,0x755B,0x6A93,0x9213,0xA9D3,0xB9D3,0xB9B3,0xB993,0xC1B4,0xC1B4,0xC1D4,0xB9D4,0xB1D4,0xA235,0x79B3,0x5952,0x5152,0x4152,0x4172,0x4193,0x41B3,0x4192,0x3971,0x3951,0x3951,0x3971,0x3151,0x3151,0x3951,0x3151,0x3130,0x3151,0x2950,0x2950,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x290F,0x290F,0x290F,0x292F,0x212F,0x292F,0x212F,0x292F,0x212F,0x292F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2130,0x2130,0x1931,0x1932,0x1132,0x1133,0x19B5,0x2217,0x21F7,0x1995,0x1113,0x1112,0x1931,0x2131,0x2130,0x2110,0x2130,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x292F,0x2930,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2111,0x2131,0x2131,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x2132,0x1911,0x2131,0x2111,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2910,0x2910,0x2930,0x210F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x212F,0x210F,0x2930,0x2130,0x2110,0x2130,0x2130,0x2110,0x2930,0x2930,0x290F,0x2930,0x292F,0x292F,0x292F,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130, + 0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x1910,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x1910,0x2110,0x1930,0x2130,0x2131,0x2131,0x2111,0x1911,0x1932,0x1932,0x1113,0x1134,0x1176,0x11B8,0x11F9,0x09D9,0x09D9,0x09B9,0x0199,0x01B9,0x09B9,0x11F9,0x11F8,0x11B6,0x1155,0x1133,0x1953,0x1932,0x1932,0x1932,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2111,0x2111,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x1931,0x1931,0x2151,0x2131,0x2131,0x1931,0x1911,0x1910,0x1931,0x1911,0x1931,0x2131,0x1931,0x2151,0x2131,0x1931,0x1931,0x1932,0x1953,0x1153,0x0954,0x0975,0x09D7,0x09D8,0x09D8,0x01D9,0x01D9,0x09F9,0x09D9,0x09D8,0x11D8,0x11D7,0x1175,0x1133,0x1112,0x1911,0x2131,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2131,0x1911,0x1153,0x1196,0x09B8,0x09D9,0x01D9,0x01B9,0x01D9,0x01B9,0x01DA,0x01B9,0x01B9,0x01D9,0x01D9,0x09F9,0x0A19,0x09B8,0x0996,0x1175,0x1133,0x1112,0x1111,0x1931,0x1932,0x1112,0x1154,0x19D7,0x09B8,0x09D9,0x01B9,0x01D9,0x01DA,0x01B9,0x01DA,0x01DA,0x01BA,0x01DA,0x01DA,0x01D9,0x09B9,0x11F9,0x19D8,0x1154,0x1133,0x1132,0x1931,0x1910,0x1910,0x1111,0x1153,0x19F7,0x09D7,0x09D8,0x09D9,0x01D9,0x01DA,0x01BA,0x01BA,0x01BA,0x01B9,0x01DA,0x01FA,0x09F9,0x09F9,0x11D7,0x1196,0x0954,0x1132,0x1112,0x1911,0x1910,0x2130,0x2950,0x2930,0x212F,0x212F,0x210F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2910,0x2910,0x2110,0x210F,0x210F,0x2930,0x210F,0x2910,0x2910,0x2930,0x2930,0x2110,0x2910,0x2930,0x290F,0x2930,0x212F,0x212F,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x212F,0x210F,0x20EF,0x20EE,0x206C,0x8B14,0xCC9A,0xCC58,0xCC58,0xCC57,0xC457,0xBC56,0xE65D,0xEF7F,0xDF9F,0xDFBF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xCFBF,0xD7BF,0xD7BF,0xD7DF,0xCFDF,0xCFDF,0xCFDF,0xCFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xDFDF,0xE7BF,0xEF9F,0xF73F,0xDDBC,0x92D2,0x81AF,0x89D0,0x91B1,0x99B1,0x99B2,0xA1B2,0xA1B2,0xA1B2,0xA1B2,0xA1B2,0xA1B2,0xA9B2,0xA9B2,0xA9B2,0xA9B2,0xA9B2,0xA9B2,0xA9B2,0xA992,0xA992,0xA992,0xA192,0xA192,0xA192,0xA191,0x99B1,0x91D1,0x89D0,0x81CF,0xC478,0xF6BF,0xF75F,0xEF9F,0xEF9F,0xE7BF,0xE7BF,0xE7BF,0xEF9F,0xEF7F,0xF75F,0xF6DF,0xC499,0x8210,0x81B0,0x91D1,0x91B1,0x99B2,0xA192,0xA1B2,0xA1B2,0xA1B2,0xA1B2,0xA1B2,0xA192,0xA9B2,0xA1B2,0xA1B2,0xA9B2,0xA9B2,0xA9B2,0xA992,0xA9B2,0xA9B2,0xA9B2,0xA192,0xA192,0xA192,0x99B1,0x99D1,0x91D1,0x89D0,0x79AF,0xB3F6,0xF69F,0xF75F,0xEF9F,0xE7BF,0xDFBF,0xDFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xCFDF,0xCFDF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xD7BF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBE,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBE,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xD7DF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFDF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xD7BF,0xD7DF,0xD7DF,0xDFDF,0xE79F,0xEEDF,0x9354,0x89D0,0x99D2,0xA1F2,0xA9F3,0xA9F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xA9D3,0xA9B2,0x91B0,0xCCB9,0xFF3F,0xEF7F,0xE79F,0xE7BF,0xDFBF,0xDFBF,0xDFBF,0xDFBF,0xE7BF,0xEFBF,0xF77F,0x9B94,0x81F0,0x89B1,0x91B2,0x9992,0x99B2,0xA1B2,0xA1B2,0xA1B2,0xA1B2,0xA1B2,0xA1B2,0xA192,0x9992,0x91B1,0x89D0,0x8AD2,0xF6FF,0xEF9F,0xDFDF,0xDFFF,0xD7DF,0xD7DF,0xD7BF,0xD7BF,0xD7DF,0xD7DF,0xCFBF,0xCFBF,0xD7BF,0xCFBF,0xCFBF,0xCFBF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xDFBF,0xDFDF,0xDFBF,0xE7BF,0xEF7F,0xF75F,0xC538,0xBC36,0xCC16,0xD416,0xD3F6,0xD417,0xD416,0xDBF6,0xDBF6,0xDC16,0xDC16,0xDC17,0xDBF6,0xDC16,0xDBF6,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDC17,0xDBF6,0xDBF6,0xE3F6,0xE3F6,0xE3F6,0xE417,0xDBF6,0xE417,0xDBF6,0xE3F6,0xE417,0xE3F6,0xE3F6,0xE416,0xE3F6,0xDBF6,0xDBF6,0xE3F6,0xDBF6,0xE3F7,0xE3F6,0xE416,0xE416,0xDBF6,0xDBF6,0xDBF7,0xDBF7,0xDC17,0xDC17,0xDC17,0xDC18,0xDC39,0xDC5A,0xD47B,0xC4BF,0x20B3,0x1958,0x1179,0x11DA,0x0A3B,0x129D,0x1B5F,0x1BBF,0x1BBF,0x1B9F,0x1B9E,0x1B7E,0x1B9E,0x1B7E,0x237E,0x235E,0x235E,0x237E,0x237E,0x1B7E,0x137E,0x137E,0x0B9E,0x0B9E,0x03BD,0x03DC,0x041C,0x04DC,0x26BF,0x1F3F,0x177E,0x0FBE,0x07BD,0x07DD,0x07DD,0x07DE,0x0FBE,0x179E,0x277F,0x3F1F,0x5EBF,0x755C,0x6AB3,0x9213,0xB1F4,0xB9B3,0xB9B3,0xC1D4,0xC193,0xC1B4,0xB9B3,0xB9D4,0xB215,0xAA36,0x6932,0x50F1,0x5173,0x4972,0x4993,0x4193,0x4192,0x3972,0x3972,0x3971,0x3951,0x3951,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x210F,0x290F,0x290F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1911,0x1932,0x1132,0x0913,0x19B5,0x2A38,0x21F7,0x19B5,0x1133,0x1132,0x1951,0x2131,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x292F,0x212F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x2150,0x2130,0x2151,0x2131,0x1911,0x1911,0x1931,0x1932,0x1932,0x1932,0x1952,0x1953,0x1153,0x1953,0x1153,0x1953,0x1133,0x1133,0x1132,0x1132,0x1932,0x1912,0x1912,0x2132,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x210F,0x210F,0x292F,0x292F,0x292F,0x2930,0x292F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2910,0x210F,0x292F,0x212F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x212F,0x2130,0x2930,0x212F,0x212F,0x290F,0x292F,0x212F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x210F,0x2110,0x2130,0x210F,0x2130,0x2110, + 0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x210F,0x210F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2131,0x2111,0x1911,0x1912,0x1113,0x1114,0x1176,0x11B7,0x11D9,0x11F9,0x09D9,0x09B9,0x09B9,0x09B9,0x09B8,0x11F9,0x11F8,0x11B7,0x1175,0x1174,0x1153,0x1133,0x1932,0x1932,0x1932,0x1912,0x1912,0x1932,0x1912,0x1932,0x1932,0x1931,0x1932,0x1911,0x1932,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1931,0x1932,0x1932,0x1932,0x1932,0x1131,0x1131,0x1111,0x1932,0x1952,0x1931,0x1952,0x1932,0x1931,0x1932,0x1932,0x1153,0x0953,0x0954,0x0976,0x09B7,0x09D8,0x09F9,0x01D8,0x09D9,0x09F9,0x09F9,0x11F9,0x11F8,0x11D7,0x1195,0x1133,0x1112,0x1911,0x1911,0x2110,0x2110,0x2130,0x210F,0x210F,0x2130,0x2110,0x1910,0x1911,0x1974,0x0976,0x11D8,0x09F9,0x01D9,0x01D9,0x01D9,0x01D9,0x01B9,0x01B9,0x01B9,0x01D9,0x09F9,0x09F9,0x11F8,0x0996,0x1175,0x0933,0x1132,0x1912,0x1911,0x1931,0x1931,0x1112,0x1154,0x11B7,0x11F9,0x01B9,0x0198,0x01D9,0x01B9,0x01B9,0x01DA,0x01B9,0x01D9,0x09DA,0x01B9,0x09D9,0x11F9,0x11D7,0x1155,0x1113,0x1132,0x1911,0x1910,0x1910,0x1910,0x1911,0x1974,0x19F7,0x1219,0x09D8,0x01B9,0x01D9,0x01D9,0x01DA,0x01DA,0x01BA,0x01B9,0x01D9,0x09FA,0x11F9,0x11D8,0x1196,0x0954,0x1133,0x1112,0x1911,0x1910,0x2130,0x2130,0x2130,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2110,0x2130,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x212F,0x212F,0x2930,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x2930,0x2930,0x2130,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x2930,0x2110,0x2930,0x210F,0x2910,0x2910,0x2910,0x2930,0x292F,0x212F,0x292F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x292F,0x212F,0x210F,0x20EF,0x20CE,0x204B,0xB418,0xCC79,0xCC58,0xCC58,0xCC37,0xC457,0xB477,0xEEDF,0xEF9F,0xDF9F,0xDFBF,0xD7BF,0xD7BF,0xD7BF,0xCFBF,0xCFBF,0xCFBF,0xD7BF,0xCFBF,0xCFBF,0xCFBF,0xCFDF,0xCFBF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xDFDF,0xDFDF,0xDFDF,0xE7DF,0xEFBF,0xF79F,0xEEDF,0xA3B4,0x8210,0x91D1,0x99B1,0x99B2,0xA192,0xA1B2,0xA9B2,0xA9B2,0xA9B3,0xA9B2,0xA9B3,0xA9D3,0xA9B3,0xA9D3,0xA9B3,0xA9B3,0xA9D3,0xA9B3,0xA9B3,0xA9B3,0xA9B3,0xA9B3,0xA9B3,0xA9B3,0xA9B3,0xA9B2,0xA992,0xA992,0xA1B2,0xA191,0x99B1,0x89B0,0x92B2,0xE5FD,0xFF5F,0xF77F,0xEF7F,0xEF9F,0xEF9F,0xF77F,0xFF5F,0xE5DC,0x92F3,0x89D0,0x91B1,0x99B1,0xA1B2,0xA1B2,0xA1B2,0xA9B2,0xA9B2,0xA9B3,0xA9B3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9B3,0xA9D3,0xA9D3,0xA9D3,0xA9B3,0xA9B3,0xA9B3,0xA9B3,0xA9B3,0xB1B3,0xA9B3,0xA9B2,0xA9B2,0xA9B2,0xA1B2,0xA1B2,0x99D1,0x91F1,0x8A71,0xC4F9,0xFF7F,0xEF7F,0xE7BF,0xDFBF,0xDFDF,0xD7DF,0xD7DF,0xD7BF,0xCFDF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBE,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBE,0xCFBF,0xCFBF,0xCFBE,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBE,0xCFBE,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xD7BF,0xD7DF,0xD7DF,0xD7BF,0xE79F,0xE6FF,0x9374,0x81D0,0x99F2,0xA1F2,0xA9F3,0xA9F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB9F3,0xB9F3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xA9D2,0xA1B2,0x89B0,0xC498,0xFF5F,0xEF7F,0xE79F,0xDFBF,0xDFBF,0xDF9F,0xDFBF,0xDFBF,0xE7BF,0xEF9F,0xD61C,0x8230,0x89B1,0x91B2,0x99B2,0xA1D2,0xA1D3,0xA1D3,0xA9D3,0xA9D3,0xA9D3,0xA9B3,0xA9B3,0xA9B3,0xA192,0x9992,0x91B1,0x8A10,0xCD3A,0xEF9F,0xDFDF,0xD7DF,0xD7DF,0xD7DF,0xD7BF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xD7BF,0xCFBF,0xCFBF,0xCFBF,0xD7BF,0xCF9F,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xDFBF,0xDFBF,0xDFBF,0xE79F,0xF75F,0xCD59,0xBC15,0xC3F6,0xCBF6,0xD3F6,0xD3F6,0xD3F6,0xD3F6,0xDC16,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xE3F6,0xDBF6,0xDBD6,0xE3F6,0xDBF6,0xDBF6,0xDBF6,0xE3F6,0xE3F6,0xE3F6,0xE3F6,0xE3F6,0xE3F6,0xDBF6,0xDBF6,0xE3F6,0xE3F6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDC18,0xDC18,0xDC39,0xDC3A,0xD45B,0xC49E,0x20D4,0x1978,0x1199,0x11BA,0x121B,0x125C,0x1AFE,0x237F,0x2BBF,0x2B9F,0x237E,0x2B7D,0x2B7D,0x335D,0x335D,0x333D,0x333D,0x335E,0x337E,0x2B7E,0x239E,0x1B7E,0x139E,0x0B9E,0x039D,0x03DC,0x041C,0x04BC,0x1E5F,0x1EFF,0x177E,0x0FBE,0x07BD,0x07DD,0x07DD,0x07BD,0x0FBD,0x179E,0x277E,0x371E,0x5EBF,0x757C,0x6AB3,0x9233,0xA9D3,0xB9B3,0xB9B3,0xC1B4,0xC1B4,0xC1B4,0xC1D4,0xB9D4,0xB1F4,0xAA56,0x60F1,0x50F1,0x5173,0x4972,0x4172,0x4193,0x3972,0x3972,0x3972,0x3971,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x3151,0x2950,0x2951,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x210F,0x2910,0x2910,0x2110,0x2110,0x2910,0x2110,0x2910,0x2930,0x2110,0x2110,0x2130,0x2130,0x2930,0x290F,0x290F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1112,0x1995,0x2A17,0x21F6,0x19B5,0x1112,0x1112,0x1931,0x1910,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2151,0x2131,0x1931,0x1931,0x1932,0x1132,0x1152,0x1153,0x1153,0x1994,0x1995,0x19B5,0x1175,0x19B5,0x1995,0x1995,0x1995,0x1995,0x1174,0x1154,0x1133,0x1112,0x1112,0x1912,0x1912,0x2132,0x2131,0x2131,0x2131,0x2110,0x2130,0x2930,0x2910,0x2930,0x2930,0x2930,0x290F,0x290F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2930,0x2910,0x210F,0x212F,0x292F,0x212F,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2930,0x212F,0x212F,0x2130,0x2930,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2130,0x210F,0x2110,0x210F,0x210F,0x2130,0x2130, + 0x2110,0x2130,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2111,0x1911,0x1912,0x1113,0x1113,0x1175,0x11B7,0x11D8,0x11F9,0x09D9,0x09B9,0x09B9,0x09B9,0x09D9,0x11F9,0x11D8,0x11B7,0x00F3,0x00D2,0x08F2,0x08F2,0x08F2,0x08F2,0x08F2,0x08D2,0x08F2,0x08F2,0x08F2,0x08F2,0x0912,0x08F1,0x08F2,0x08F1,0x08F1,0x0912,0x0912,0x0912,0x08F1,0x08F1,0x08F1,0x08F1,0x08F2,0x08F1,0x08F2,0x08F2,0x08F1,0x08F1,0x08F1,0x08F1,0x0912,0x0912,0x08F1,0x08F1,0x08F1,0x10F1,0x10F1,0x10F1,0x0911,0x0912,0x0913,0x0113,0x0955,0x0976,0x0997,0x09B8,0x01B8,0x01D8,0x09F9,0x09F9,0x09F9,0x1219,0x11F8,0x1196,0x1175,0x1133,0x1112,0x1911,0x18F0,0x1910,0x2110,0x2930,0x212F,0x210F,0x2110,0x2130,0x2110,0x1910,0x1911,0x1133,0x1196,0x11D8,0x09F9,0x09FA,0x01D9,0x01B9,0x01B9,0x01D9,0x01D9,0x01D9,0x09F9,0x09D8,0x11F8,0x11B6,0x1154,0x1133,0x1112,0x1931,0x1911,0x1911,0x2131,0x1911,0x1911,0x1113,0x1A17,0x1219,0x01B8,0x01D9,0x01B9,0x01D9,0x01B9,0x0199,0x01B9,0x01D9,0x09F9,0x09D9,0x11B8,0x0996,0x0934,0x1133,0x1132,0x1931,0x1931,0x1931,0x2131,0x1931,0x1911,0x1953,0x19F8,0x11F8,0x09D9,0x09D9,0x01B9,0x01B9,0x01B9,0x01B9,0x01B9,0x09F9,0x09F9,0x09F8,0x11F8,0x11B6,0x0954,0x1133,0x1132,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2930,0x292F,0x292F,0x290F,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2110,0x2130,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2930,0x2910,0x210F,0x290F,0x2930,0x2910,0x210F,0x2930,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2930,0x2130,0x2110,0x2110,0x2930,0x2110,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x212F,0x210F,0x20EF,0x20CE,0x206B,0xC49A,0xCC59,0xCC38,0xCC37,0xC437,0xBC36,0xB4B7,0xEF1F,0xE79F,0xDF9F,0xD7BF,0xD7BF,0xD7BF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFDF,0xD7DF,0xD7DF,0xD7DF,0xD7DF,0xDFDF,0xDFDF,0xDFBF,0xEF9F,0xF73F,0xD55B,0x8250,0x89D0,0x91D1,0x99D2,0xA1B2,0xA1B2,0xA9B2,0xA9B3,0xA9D3,0xA9B3,0xA9D3,0xA9D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1B3,0xA9B3,0xA9B3,0xA9B2,0xA992,0xA192,0x99B1,0x91B1,0x89D0,0xCC99,0xFEDF,0xFF5F,0xF75F,0xFF5F,0xFEDF,0xCCB9,0x81D0,0x91B0,0x99D2,0xA1B2,0xA1B2,0xA9B2,0xA9B3,0xA9D3,0xA9D3,0xA9B3,0xB1D3,0xB1D3,0xA9D3,0xA9D3,0xB1D3,0xB1D3,0xB1D3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1B3,0xB1B3,0xA9B3,0xA9B2,0xA9B2,0xA1B2,0x99B1,0x99D1,0x81AF,0xA395,0xF6BF,0xEF7F,0xE79F,0xDFBF,0xD7DF,0xD7DF,0xD7DF,0xD7BF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCFBF,0xCF9E,0xCF9E,0xCF9E,0xCF9E,0xCF9E,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBE,0xCFBE,0xCFBE,0xCFBE,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCFBF,0xCF9E,0xCFBF,0xCF9F,0xCFBF,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xCF9E,0xCF9E,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFDF,0xD7DF,0xDFDF,0xE79F,0xE6BF,0x9B94,0x81F0,0x99F1,0xA1F2,0xA9F2,0xA9F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xA9D3,0xA9D3,0xA1B2,0x89B0,0xC4D9,0xF73F,0xE77F,0xDF9F,0xDF9F,0xDFBF,0xDF9F,0xDF9F,0xDFBF,0xE79F,0xEF5F,0xB4B7,0x79F0,0x91D2,0x99F2,0xA1D3,0xA1F3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9D3,0xA9D3,0xA9B3,0xA9B3,0xA1B2,0x99B2,0x91D1,0x92D2,0xF77F,0xDFBF,0xD7DF,0xD7DF,0xD7BF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCF9F,0xCF9F,0xD7BF,0xD7BF,0xCF9F,0xD79F,0xD79F,0xD79F,0xD7BF,0xD7BF,0xDFBF,0xDF9F,0xE77F,0xF75F,0xCD9A,0xB415,0xC3F6,0xCBD6,0xD3D6,0xD3D6,0xD3F6,0xD3D6,0xD3F6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBD6,0xDBF6,0xDBD6,0xDBD6,0xDBF6,0xE3D6,0xE3D6,0xDBD6,0xE3D6,0xE3F6,0xE3D6,0xE3F6,0xE3D6,0xDBD6,0xE3F6,0xE3D6,0xDBF6,0xDBF6,0xDBD6,0xDBF6,0xDBF6,0xE3F6,0xE3F6,0xDBF6,0xDBD6,0xDBF6,0xDBF7,0xDBF7,0xE3F7,0xDBF8,0xE418,0xE419,0xDC3A,0xD45B,0xC47E,0x20D4,0x2199,0x199A,0x11BA,0x11DB,0x121B,0x1ABD,0x2B3E,0x3B9F,0x43BF,0x439E,0x437D,0x4B7D,0x4B5D,0x535D,0x533D,0x535D,0x537D,0x4B7D,0x437E,0x337D,0x239E,0x1B9D,0x13BD,0x039C,0x03DC,0x03FC,0x04BC,0x1E3F,0x1EDF,0x175E,0x0F9D,0x07BD,0x07DD,0x07DD,0x0FDD,0x0FBD,0x179E,0x277E,0x371E,0x5EBF,0x757C,0x6A93,0x9212,0xB1F4,0xB9B3,0xB9D4,0xC1B3,0xC1B4,0xC1B4,0xB9B3,0xB9D4,0xB215,0xAA56,0x68F1,0x5911,0x5973,0x4972,0x4972,0x4192,0x3952,0x3972,0x3971,0x3992,0x3992,0x3971,0x3151,0x3151,0x3151,0x3131,0x2951,0x2951,0x2951,0x2950,0x2950,0x2950,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x290F,0x210F,0x2930,0x2910,0x290F,0x290F,0x210F,0x290F,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x292F,0x290F,0x210F,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x292F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2150,0x2130,0x2131,0x1931,0x1132,0x1133,0x19B5,0x2A17,0x2217,0x1995,0x1112,0x1932,0x1931,0x2130,0x2130,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1132,0x1153,0x1153,0x1174,0x1195,0x11B5,0x11B5,0x19D6,0x19F7,0x19F7,0x19F7,0x19D7,0x11D7,0x19D7,0x19F7,0x19F7,0x19F7,0x19D6,0x19B5,0x1154,0x1133,0x1133,0x1912,0x1912,0x1932,0x1911,0x2131,0x2131,0x2130,0x2130,0x2110,0x2930,0x2910,0x2910,0x2910,0x210F,0x210F,0x212F,0x212F,0x212F,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x2910,0x2910,0x212F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x210F,0x2110,0x2930,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x212F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2130,0x2930, + 0x2130,0x210F,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x2130,0x2130,0x2110,0x2111,0x2131,0x1912,0x1112,0x0913,0x1175,0x19D7,0x11F8,0x11F9,0x11F9,0x09B9,0x09D9,0x01B9,0x09D9,0x11F9,0x11F9,0x0996,0x0135,0x0134,0x0954,0x0934,0x0914,0x0934,0x0914,0x0933,0x0934,0x0934,0x0933,0x0933,0x0933,0x0933,0x0913,0x0933,0x0933,0x0933,0x0933,0x0933,0x0933,0x0953,0x0933,0x0933,0x1154,0x0954,0x0954,0x0954,0x0953,0x0954,0x0954,0x1174,0x1174,0x1174,0x1153,0x1133,0x1133,0x1153,0x0933,0x0933,0x0954,0x1175,0x1196,0x09B7,0x09B8,0x09D9,0x01B9,0x09D9,0x01D9,0x09F9,0x121A,0x1219,0x11D8,0x11B6,0x1175,0x1133,0x1112,0x1911,0x1910,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x2110,0x2110,0x2110,0x1910,0x1911,0x1933,0x1175,0x11D7,0x09D8,0x09F9,0x09D9,0x01D9,0x01B9,0x01B8,0x01D8,0x01B8,0x11F8,0x11B7,0x0975,0x1174,0x1153,0x1132,0x1931,0x1911,0x1911,0x2130,0x2110,0x2111,0x18F1,0x1112,0x19D6,0x1218,0x09B8,0x09D9,0x01D9,0x01D9,0x01B9,0x01B8,0x09D9,0x09F9,0x11D8,0x11D7,0x1196,0x1155,0x1133,0x1132,0x1911,0x1911,0x1931,0x2131,0x1930,0x1911,0x18F1,0x1933,0x19B6,0x11F8,0x11D9,0x09D9,0x09B9,0x09D9,0x01B9,0x01B9,0x09F9,0x09F9,0x11F8,0x11D7,0x1195,0x1154,0x1133,0x1132,0x1132,0x1911,0x2131,0x2130,0x2130,0x2110,0x2130,0x212F,0x210F,0x2930,0x290F,0x290F,0x292F,0x2930,0x212F,0x212F,0x2130,0x2930,0x2130,0x212F,0x212F,0x210F,0x2110,0x2110,0x2130,0x210F,0x2130,0x2930,0x290F,0x290F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2930,0x210F,0x2930,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2930,0x290F,0x2930,0x290F,0x210F,0x212F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x210F,0x210F,0x20EF,0x20CE,0x28AC,0xCCBB,0xCC58,0xCC38,0xCC37,0xC417,0xBC36,0xBCD8,0xEF5F,0xE79F,0xD79F,0xD79F,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xCFBF,0xD7BF,0xD7BF,0xD7DF,0xD7DF,0xD7BF,0xD7BF,0xDFBF,0xE77F,0xF75F,0xAC36,0x8230,0x91D1,0x99B1,0xA1B2,0xA9B2,0xA9D3,0xA9D3,0xA9D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xB1B3,0xB1D3,0xB1B3,0xB1B3,0xA9B3,0xA992,0xA992,0xA192,0x99B1,0x91D0,0xA314,0xEDBD,0xFF1F,0xFE7F,0xAB54,0x91F1,0x99B1,0xA1B2,0xA1B2,0xA9B3,0xA9B3,0xA9B3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1F4,0xB1F4,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xA9B2,0xA9B2,0xA9B2,0xA192,0x99B1,0x89D0,0x92D2,0xEE9F,0xF77F,0xE79F,0xDFBF,0xD7BF,0xD7BF,0xD7BF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xCF9E,0xCF9E,0xCFBF,0xCFBE,0xC79E,0xC7BE,0xCFBE,0xCF9E,0xCF9E,0xCF9E,0xCF9E,0xCF9E,0xCFBF,0xC79E,0xCF9E,0xCF9E,0xCF9E,0xCF9E,0xCF9F,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xCF9F,0xCF9F,0xCFBF,0xCF9E,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBE,0xCFBE,0xCFBE,0xCFBF,0xCF9F,0xCF9F,0xCFBF,0xCFBE,0xCF9E,0xCF9E,0xCFBE,0xC79E,0xCF9E,0xCF9E,0xCFBE,0xCFBE,0xCFBE,0xCFBE,0xCFBE,0xCFBE,0xCF9E,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9E,0xCF9E,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCFBF,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFDF,0xD7DF,0xD7BF,0xDF9F,0xDEBF,0x9BB5,0x81F0,0x99F1,0xA1F2,0xA9F2,0xA9F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xA9D3,0xA9D2,0xA1B2,0x8990,0xC4D9,0xF73F,0xE77F,0xDF9F,0xDF9F,0xD79F,0xD79F,0xD79F,0xDFBF,0xE79F,0xEF3F,0x9394,0x81F0,0x99F2,0x99F2,0xA1F3,0xA1F3,0xAA13,0xAA13,0xB213,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9D3,0xA9B3,0xA9B2,0xA1B2,0x99B1,0x79CF,0xF75F,0xE79F,0xD7BF,0xD7DF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCFBF,0xCF9F,0xCF9F,0xCFBF,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xD79F,0xD79F,0xD79F,0xD79F,0xD79F,0xD79F,0xDF9F,0xE77F,0xEF5F,0xD59A,0xB3F5,0xC3D5,0xCBD6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xD3D6,0xDBD6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xE3D6,0xE3D6,0xDBD6,0xDBD6,0xE3D6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD7,0xDBD7,0xE3F7,0xDBF8,0xE3F8,0xDC19,0xDC3A,0xD43B,0xC45E,0x28F4,0x2978,0x2179,0x199A,0x19BA,0x1A1B,0x2A9D,0x32DD,0x433D,0x535D,0x5B7D,0x637D,0x6B5C,0x6B1B,0x6B1B,0x6B1B,0x62FB,0x631C,0x5B3C,0x535C,0x3B5C,0x339D,0x23BD,0x1BDD,0x0BBC,0x03DC,0x041C,0x049C,0x15FF,0x16BF,0x175F,0x0F9E,0x07BD,0x07DD,0x07DD,0x07DD,0x0FBD,0x179D,0x277E,0x371E,0x5EDF,0x757C,0x6A93,0x9212,0xA9D3,0xB9D4,0xB993,0xC1B3,0xC193,0xC1B4,0xB9B3,0xB9D4,0xB1D4,0xAA15,0x7932,0x58F1,0x5952,0x5172,0x4972,0x4152,0x4152,0x3971,0x3992,0x3991,0x3171,0x3151,0x3171,0x3151,0x3151,0x3151,0x2951,0x2951,0x2951,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x2910,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2110,0x2910,0x2110,0x2110,0x212F,0x212F,0x212F,0x210F,0x290F,0x2910,0x2110,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x292F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1932,0x1132,0x1133,0x1995,0x2A38,0x21F7,0x19B5,0x1133,0x1112,0x1951,0x2131,0x2150,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x212F,0x2130,0x2150,0x2130,0x1931,0x1931,0x1932,0x1152,0x1153,0x1173,0x1195,0x19D6,0x19F6,0x19F7,0x1A17,0x19F7,0x19F7,0x1A18,0x19F7,0x1A18,0x19F7,0x1A18,0x1A18,0x1A38,0x1A18,0x1A17,0x1A17,0x19F7,0x19B6,0x1154,0x1133,0x1133,0x1112,0x1932,0x1932,0x2151,0x2131,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x210F,0x2910,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2910,0x2930,0x2110,0x210F,0x210F,0x290F,0x210F,0x2910,0x2930,0x2910,0x2910,0x2910,0x2110,0x2930,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110, + 0x212F,0x210F,0x2130,0x2110,0x210F,0x2110,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x210F,0x2130,0x2110,0x2130,0x2130,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x2130,0x212F,0x2110,0x2110,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2131,0x2131,0x1911,0x10F1,0x10F2,0x0913,0x1155,0x19D7,0x1A19,0x11F9,0x11F9,0x09B9,0x01B9,0x01B9,0x09B9,0x09D9,0x1219,0x1A39,0x1A39,0x1A19,0x1A18,0x1A18,0x2219,0x2219,0x2239,0x2218,0x2238,0x2238,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2238,0x2238,0x2238,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2238,0x1A18,0x2238,0x1A18,0x1A17,0x1A18,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F8,0x11F9,0x11F9,0x09F9,0x0A1A,0x09FA,0x01D9,0x01D9,0x09D9,0x1219,0x11F9,0x11B7,0x0934,0x1133,0x1111,0x1911,0x1911,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x1911,0x1933,0x1154,0x1197,0x11D8,0x09D9,0x09B8,0x09B8,0x09D8,0x09D8,0x09F8,0x1218,0x11B6,0x1195,0x1154,0x1153,0x1932,0x1931,0x1931,0x2131,0x2130,0x2110,0x2110,0x2110,0x18F1,0x1112,0x1195,0x19F7,0x09B8,0x09B8,0x09D8,0x09D8,0x09B8,0x09D8,0x09B8,0x11B7,0x19D7,0x1196,0x1174,0x1133,0x1112,0x1911,0x1931,0x1931,0x2131,0x2110,0x2110,0x2110,0x1911,0x1912,0x1995,0x11D7,0x11B8,0x09B8,0x09D8,0x09B8,0x09D8,0x09D8,0x11F8,0x1A18,0x11B6,0x1175,0x0933,0x1133,0x1953,0x1132,0x1931,0x1931,0x2151,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2950,0x212F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2910,0x210F,0x290F,0x210F,0x2930,0x2110,0x2130,0x2110,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x212F,0x212F,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x212F,0x2930,0x2930,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x20EE,0x20CD,0x390D,0xCCDB,0xCC38,0xCC38,0xCC17,0xC3F7,0xB416,0xC57A,0xEF5F,0xDF9F,0xD79F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCFBF,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCFBF,0xCF9F,0xCFBF,0xD7BF,0xD7BF,0xD7BF,0xD7BF,0xDFBF,0xE79F,0xF73F,0xABF6,0x81F0,0x91D1,0x99B2,0xA1B2,0xA1B2,0xA9D3,0xA9D3,0xB1D3,0xB1D3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB1F3,0xB1F3,0xB1F3,0xB1F4,0xB1F4,0xB1F4,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1B3,0xB1B3,0xB193,0xA992,0xA992,0xA1B2,0x99B1,0x91D0,0xCB97,0x91D0,0x99B1,0xA1B1,0xA1B2,0xA9B2,0xA9B3,0xB1B3,0xB1B3,0xB1B3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1F4,0xB1D3,0xB1D3,0xB1F4,0xB1F4,0xB1F4,0xB1F4,0xB1D3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1B3,0xA9B3,0xA9B2,0xA9B2,0xA1B1,0x91D1,0x8A30,0xEE1E,0xF75F,0xE79F,0xDFBF,0xD7BF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCF9F,0xC79F,0xCF9F,0xCF9F,0xCF9F,0xC79F,0xC79F,0xC79F,0xC79F,0xC79F,0xC79F,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79F,0xCF9F,0xCF9F,0xC79F,0xC79E,0xC79F,0xCF9E,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9E,0xCF9F,0xCF9F,0xCF9F,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xCF9F,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79F,0xC79F,0xC79E,0xC79E,0xC79E,0xC79F,0xCF9F,0xCF9F,0xCF9F,0xCFBF,0xCF9F,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCF9F,0xCF9E,0xCF9E,0xCF9E,0xC79E,0xC79E,0xCF9F,0xCFBF,0xCFBF,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xD7BF,0xD7BF,0xE79F,0xDE9E,0x9BB5,0x81F0,0x99F2,0xA1F2,0xA9F3,0xA9F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xB1F3,0xB1F3,0xB1D3,0xA9D3,0xA9D2,0xA1B1,0x8990,0xC4D9,0xF73F,0xE75F,0xDF7F,0xD79F,0xD79F,0xD79F,0xD77F,0xDF9F,0xE77F,0xEEFF,0x8B33,0x8A11,0x99F2,0xA1F3,0xA1F3,0xAA13,0xAA13,0xAA13,0xB213,0xB214,0xB214,0xB1F3,0xB1F4,0xA9D3,0xA9D3,0xA9B3,0xA1B2,0xA1D2,0x81D0,0xDE3D,0xE79F,0xD7BF,0xCFBF,0xCFBF,0xCFBF,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xC79F,0xC79F,0xCF9F,0xCF9F,0xC79F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xD79F,0xD79F,0xDF9F,0xE77F,0xF75F,0xD5BA,0xB3F5,0xC3D5,0xCBB6,0xD3B6,0xD3D6,0xD3B6,0xD3D6,0xD3D6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xE3D6,0xDBD6,0xDBD6,0xDBB6,0xDBD6,0xDBB6,0xDBD6,0xDBD7,0xDBD7,0xDBD7,0xDBF8,0xDBF8,0xDC1A,0xD43B,0xBC3D,0x28D4,0x2958,0x2179,0x2199,0x21BA,0x29FB,0x323B,0x3A7B,0x427A,0x5ABB,0x6ADA,0x7B1B,0x831B,0x82DA,0x7A78,0x7278,0x7299,0x72B9,0x6ADA,0x62FB,0x4B3B,0x3B7C,0x33BD,0x23FD,0x13DD,0x0BFC,0x041C,0x049C,0x15BE,0x167E,0x175F,0x0F9E,0x0FBD,0x07BD,0x07BD,0x07BD,0x0FBD,0x179D,0x277E,0x371E,0x56BE,0x759C,0x6AB3,0x9233,0xA9F3,0xB9D3,0xB9B3,0xC1D4,0xC1B3,0xC1D4,0xB9B3,0xB9D4,0xB1B3,0xA9D4,0x8973,0x6911,0x6152,0x5952,0x4972,0x4131,0x4151,0x3972,0x3992,0x3991,0x3971,0x3171,0x3151,0x3151,0x3151,0x3151,0x3151,0x2951,0x2950,0x2951,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2910,0x290F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x290F,0x210F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2131,0x1931,0x1932,0x1113,0x1995,0x2A17,0x21F7,0x19B5,0x1112,0x1132,0x1931,0x1930,0x2130,0x2150,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2151,0x1951,0x1932,0x1152,0x1153,0x1174,0x11B5,0x19F6,0x19F7,0x19F7,0x1A17,0x19F7,0x19D7,0x19D6,0x19D7,0x19D6,0x11B6,0x1196,0x1195,0x11B6,0x19F7,0x1A17,0x1A38,0x1A38,0x1A18,0x1A17,0x19F7,0x11B5,0x0953,0x1133,0x1133,0x1932,0x1932,0x2131,0x2131,0x2110,0x2110,0x2110,0x2910,0x2110,0x210F,0x210F,0x2130,0x2130,0x212F,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2110,0x2910,0x290F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2930,0x2110,0x2110,0x2910,0x2910,0x2930,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910, + 0x212F,0x210F,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x210F,0x210F,0x2130,0x2110,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x210F,0x2130,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2131,0x1911,0x1911,0x1112,0x1113,0x1175,0x11B7,0x1219,0x09D9,0x09D9,0x09D9,0x01B9,0x01B9,0x01B8,0x09B8,0x09D9,0x09D9,0x09D8,0x09D8,0x09D8,0x11D8,0x09D8,0x11D8,0x09B7,0x11D8,0x11D7,0x11D8,0x11D7,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11F8,0x11D7,0x11F8,0x11D8,0x11D8,0x11D8,0x11D8,0x11D8,0x11F8,0x11D7,0x11F8,0x11D8,0x11D7,0x11D7,0x11D7,0x11D7,0x11D7,0x11B7,0x11D7,0x11D7,0x11D7,0x11D8,0x09D8,0x09B8,0x09D9,0x09D9,0x01D9,0x01D9,0x01D9,0x09D9,0x11F9,0x11F9,0x1197,0x1175,0x1113,0x1112,0x1911,0x1910,0x2110,0x2130,0x2130,0x2110,0x210F,0x210F,0x292F,0x2930,0x210F,0x210F,0x2110,0x2110,0x1911,0x1912,0x1934,0x1996,0x11B7,0x11D8,0x11D8,0x09D8,0x11F8,0x11F7,0x11F7,0x11D6,0x1194,0x1153,0x1132,0x1932,0x1931,0x1931,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2111,0x1912,0x1174,0x19D6,0x11B7,0x11D8,0x11D8,0x11F8,0x11D8,0x09B7,0x11B7,0x19B6,0x1175,0x1154,0x1153,0x1132,0x1911,0x1911,0x1930,0x1910,0x2130,0x2130,0x2110,0x2110,0x2111,0x1912,0x1975,0x19D7,0x11B7,0x19F8,0x11D7,0x11D7,0x11F8,0x11F7,0x19F7,0x19B6,0x1174,0x1133,0x1112,0x1932,0x1932,0x1931,0x1931,0x2131,0x2131,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x210F,0x2930,0x2930,0x210F,0x2910,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2110,0x2110,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x2930,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x292F,0x210F,0x210F,0x20EE,0x20AD,0x390D,0xCCBA,0xCC38,0xC3F7,0xC3F7,0xC3F7,0xABF5,0xD5FC,0xEF7F,0xDF9F,0xCF9F,0xCF7F,0xCF7F,0xCF9F,0xCF9F,0xCFBF,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xCFBF,0xCFBF,0xD7BF,0xDF9F,0xE77F,0xF73F,0xA3F5,0x81F0,0x91B1,0xA1B2,0xA9B2,0xA9B3,0xA9D3,0xA9D3,0xA9D3,0xB1D3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB9F3,0xB1F3,0xB9F3,0xB1F3,0xB1F3,0xB9F4,0xB1F3,0xB1F4,0xB1D3,0xB1D3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xB1B3,0xB1B3,0xB193,0xB192,0xB192,0xA992,0xA9B2,0xA192,0xA1B2,0xA9B2,0xA992,0xA9B2,0xB1B3,0xB1B3,0xB1D3,0xB1B3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1F4,0xB9F4,0xB9F4,0xB1D3,0xB1F4,0xB1F4,0xB1F3,0xB9F4,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB9F3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1B3,0xB1B3,0xA992,0xA992,0xA1B1,0x91B1,0x8A31,0xE61D,0xF75F,0xE79F,0xD7BF,0xD7BF,0xCFBF,0xCFBF,0xCF9F,0xC79F,0xC79F,0xC79F,0xC79F,0xC77E,0xC79F,0xC79E,0xC79F,0xC79F,0xC79F,0xC79F,0xC79E,0xC79E,0xC79F,0xC79E,0xC79E,0xC79F,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79F,0xC79E,0xC79E,0xC79E,0xC79F,0xCF9F,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xCF9F,0xCF9F,0xC79E,0xC79F,0xCF9F,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79F,0xC79F,0xC79F,0xC79F,0xC79F,0xC79E,0xC79F,0xC79F,0xC79F,0xC79F,0xC79E,0xC79F,0xC79F,0xC79E,0xCF9F,0xC79E,0xC79E,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xC79E,0xC79F,0xC79E,0xC79E,0xCFBF,0xC79E,0xC79E,0xC79F,0xC79F,0xC79F,0xC79F,0xC79F,0xC79F,0xC79F,0xC79F,0xCF9F,0xCF9F,0xCFBF,0xCFBF,0xD7BF,0xDF9F,0xD69E,0x9BB5,0x81F0,0x99F2,0xA1F2,0xA9F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xB9F3,0xB1F3,0xB1F4,0xB1D3,0xA9D3,0xA9D3,0xA191,0x89B0,0xC4D9,0xF73F,0xE75F,0xD77F,0xD77F,0xD77F,0xD79F,0xD79F,0xDF9F,0xE77F,0xE6DF,0x8B33,0x8A11,0x9A12,0xA1F3,0xA1F3,0xAA13,0xAA34,0xAA13,0xB213,0xB214,0xB213,0xB214,0xB1F3,0xA9D3,0xA9D3,0xA9B3,0xA9D2,0xA1D2,0x89F0,0xC55A,0xE77F,0xD79F,0xCFBF,0xCFBF,0xCFBF,0xC79F,0xCF9F,0xC79F,0xCF9F,0xC79E,0xCF9F,0xC79E,0xC79F,0xC79F,0xC79F,0xC79F,0xC79F,0xC79F,0xC79F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xC77F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xCF9F,0xD79F,0xDF9F,0xE77F,0xEF5F,0xDDFC,0xABD5,0xC3D5,0xCBB5,0xCBB6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xE3B6,0xE3B6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xE3D6,0xDBB6,0xDBB7,0xDBB7,0xDBD7,0xDBD8,0xDBF8,0xDBF9,0xD41A,0xBC1D,0x30D3,0x2937,0x2978,0x3199,0x31B9,0x31B9,0x41F9,0x49F8,0x627A,0x7ADA,0x8AFA,0x92D9,0x92B9,0x9A98,0x9278,0x8A77,0x8A78,0x8AB9,0x7AB9,0x6ADA,0x531B,0x4B9C,0x3BDD,0x2C1E,0x13FD,0x0C1D,0x043C,0x047C,0x0D9E,0x165E,0x175F,0x0F9E,0x0FBD,0x07BD,0x07BD,0x07BD,0x0FBD,0x179D,0x277E,0x371E,0x56BE,0x757C,0x6AB3,0x9233,0xA9F3,0xB1B3,0xB9B3,0xC1B3,0xC1D4,0xC1D4,0xC1D4,0xB9B3,0xB1B4,0xA9B4,0xAA15,0x9A15,0x7172,0x6132,0x5131,0x4131,0x4172,0x4171,0x3971,0x3971,0x3951,0x3971,0x3151,0x3171,0x3151,0x3151,0x3151,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x2910,0x290F,0x2930,0x2910,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x2910,0x2110,0x210F,0x212F,0x210F,0x2930,0x210F,0x210F,0x2930,0x2130,0x2110,0x2110,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x292F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2111,0x1931,0x1912,0x1113,0x1995,0x29F7,0x21F7,0x21D6,0x1133,0x1132,0x1951,0x2130,0x2130,0x2150,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2131,0x1931,0x1932,0x1132,0x1153,0x1194,0x19D6,0x19F6,0x19F7,0x1A17,0x1A17,0x19F7,0x11B6,0x1195,0x1195,0x1174,0x1154,0x1154,0x1154,0x1154,0x0954,0x0954,0x0974,0x11B6,0x19F7,0x1A17,0x1A38,0x1A17,0x1A17,0x11B6,0x1174,0x1153,0x1133,0x1932,0x1932,0x2131,0x2110,0x2130,0x2930,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x212F,0x2930,0x2930,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2110,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x290F,0x212F,0x2930,0x212F,0x210F,0x212F,0x212F,0x2130,0x2930,0x212F,0x212F,0x212F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2930,0x2110,0x2930,0x2910,0x2910,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2910, + 0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2110,0x210F,0x210F,0x2910,0x2910,0x290F,0x210F,0x292F,0x290F,0x290F,0x212F,0x210F,0x2110,0x2130,0x2151,0x1931,0x1111,0x10F2,0x0913,0x1175,0x11B7,0x11F8,0x11D9,0x09D9,0x09B9,0x01B9,0x01B9,0x01B8,0x01B8,0x09D8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09D8,0x09B8,0x09B8,0x09B8,0x09D8,0x11B8,0x09B8,0x09D8,0x09D7,0x11D8,0x09D8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D7,0x09D8,0x09D8,0x09D8,0x09D8,0x11D8,0x11D8,0x11F8,0x11F8,0x1218,0x11F8,0x09D8,0x09D8,0x09B8,0x09B9,0x09B9,0x01B9,0x01B9,0x01B9,0x09D9,0x121A,0x11D8,0x0976,0x0955,0x1113,0x1132,0x1911,0x2131,0x2130,0x2951,0x2130,0x2130,0x210F,0x210F,0x210F,0x20EF,0x2110,0x2930,0x2110,0x2130,0x2130,0x2111,0x1911,0x1912,0x1134,0x1975,0x19B6,0x19D7,0x11B6,0x11B6,0x19B6,0x1194,0x1173,0x1953,0x1932,0x1111,0x1931,0x1931,0x1930,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2111,0x1911,0x1933,0x1974,0x1175,0x19D7,0x19F7,0x11D7,0x19F7,0x19D6,0x1995,0x1974,0x1132,0x1112,0x1931,0x1931,0x1931,0x1910,0x1910,0x2130,0x2110,0x2110,0x2110,0x2110,0x18F0,0x18F1,0x1953,0x21B5,0x19B6,0x11B6,0x19B6,0x19D7,0x21F7,0x19B6,0x1995,0x1133,0x1933,0x1912,0x1111,0x1911,0x1911,0x1931,0x2131,0x2131,0x2110,0x2110,0x2110,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2930,0x2910,0x2110,0x212F,0x212F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x212F,0x2130,0x2930,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x212F,0x212F,0x210F,0x20EE,0x20AD,0x412E,0xCC9A,0xCC18,0xC3F7,0xC3D6,0xBBD6,0xB416,0xD63C,0xE77F,0xDF9F,0xCF9F,0xCF5E,0xCF7F,0xCF9F,0xC77F,0xCF9F,0xCF9F,0xC77F,0xC77F,0xCF9F,0xCF9F,0xCF9F,0xCFBF,0xCF9F,0xCF9F,0xD7BF,0xD79F,0xE77F,0xEF1F,0xAC16,0x81F0,0x91D1,0xA1B2,0xA1D2,0xA9D3,0xA9B3,0xB1D3,0xB1D3,0xB1F3,0xB1D3,0xB1F3,0xB9F3,0xB1D3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB1F3,0xB9F4,0xB9F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB9F3,0xB9F4,0xB9F4,0xB1D3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9F4,0xB9D4,0xB9D4,0xB9F4,0xB9F4,0xB1F4,0xB1F4,0xB1F4,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB1F3,0xB9F3,0xB9F3,0xB1F3,0xB1F3,0xB1F3,0xB9F3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xB1B3,0xB1B3,0xB192,0xA992,0xA1B2,0x99D1,0x8A31,0xE5FD,0xEF5F,0xDF9F,0xD79F,0xCF9F,0xCF9F,0xCF9F,0xC79F,0xC79F,0xC79F,0xC77E,0xC77F,0xC77E,0xC79F,0xC79E,0xC79F,0xC79F,0xC79E,0xC79E,0xC79E,0xC79E,0xC79F,0xC79E,0xC79F,0xC79F,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC77E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79F,0xC79F,0xC79F,0xC79F,0xC79E,0xC79E,0xC79E,0xC79E,0xC79F,0xC79E,0xC79E,0xC79E,0xC79F,0xC79F,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC77E,0xC79E,0xC79E,0xC79E,0xC79E,0xC77E,0xC79E,0xC79F,0xCF9F,0xCFBF,0xCFBF,0xCF9F,0xDF7F,0xD67E,0x9BB5,0x81F0,0x99F2,0xA1F2,0xA9F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB9D3,0xB9F3,0xB9D3,0xB1D3,0xB1F4,0xB1F3,0xA9D3,0xA9D2,0xA191,0x89B0,0xC4D9,0xEF3F,0xDF5F,0xD77F,0xD77F,0xD79F,0xD77F,0xD77F,0xD79F,0xDF7F,0xE6DF,0x8B33,0x8A31,0x9A13,0xA213,0xA1F3,0xAA13,0xA9F3,0xAA13,0xB213,0xB213,0xB213,0xB1F3,0xA9F3,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xA1D2,0x89F0,0xC53A,0xE77F,0xD79F,0xCF9F,0xCFBF,0xC79F,0xC79F,0xC79F,0xC79E,0xC79E,0xC79F,0xC79E,0xC79E,0xC79F,0xC79E,0xC79F,0xC79E,0xC79E,0xC79F,0xC79F,0xC79E,0xC79F,0xC79F,0xC79F,0xC79F,0xC77F,0xC77F,0xC77F,0xC77F,0xCF9F,0xCF9F,0xCF7F,0xCF7F,0xCF7F,0xCF7F,0xCF7F,0xCF7F,0xD77F,0xDF7F,0xE75F,0xEF3F,0xDDFC,0xB3F5,0xC3B5,0xCBB5,0xCBB6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDB96,0xDBB6,0xDB96,0xDB96,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDBB6,0xDBB6,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDBB6,0xDBB7,0xDBB7,0xDBD7,0xDBD8,0xDBF9,0xD3FA,0xC41D,0x38B3,0x3957,0x3978,0x4178,0x4177,0x4136,0x61D7,0x9B3C,0xA31B,0x9AD9,0x9A98,0xA277,0xA277,0xAA77,0xAA97,0xAA97,0xA297,0x9AB8,0x8AD9,0x72D9,0x631A,0x539C,0x43FD,0x341D,0x1C1D,0x0C1C,0x043C,0x049C,0x0D5E,0x0E3E,0x1F5F,0x0F9D,0x0FBD,0x07BD,0x07BD,0x0FBD,0x0FBD,0x179D,0x277E,0x371E,0x56BE,0x757C,0x6AB3,0x9212,0xAA13,0xB9D3,0xB9D3,0xC1B4,0xC1B4,0xC1B4,0xC1D4,0xC1D4,0xB1B3,0xB1B4,0xA9D4,0xAA15,0x9215,0x6111,0x5931,0x4931,0x4951,0x4151,0x4171,0x3971,0x3951,0x3151,0x3151,0x3151,0x3151,0x3151,0x2951,0x2951,0x2951,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2930,0x212F,0x210F,0x2930,0x210F,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x2910,0x2930,0x2130,0x2111,0x1911,0x1912,0x1112,0x21B5,0x2A38,0x21F7,0x1995,0x0912,0x1112,0x1931,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1910,0x1911,0x1932,0x1132,0x1153,0x1174,0x19B6,0x19D6,0x19F7,0x1A17,0x19D6,0x1195,0x1174,0x1174,0x1153,0x1133,0x1133,0x1153,0x1133,0x1133,0x1153,0x1153,0x1173,0x0953,0x0933,0x0974,0x1195,0x19F7,0x1A38,0x1A38,0x1A17,0x19D6,0x1195,0x1153,0x1112,0x1911,0x1911,0x2131,0x2131,0x2130,0x2110,0x2110,0x2130,0x2130,0x2930,0x212F,0x2930,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x210F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2910,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2930,0x2110,0x2110, + 0x292F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2910,0x290F,0x210F,0x2910,0x2930,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2150,0x2151,0x1931,0x1111,0x1112,0x0933,0x1175,0x11D7,0x11F8,0x09D9,0x09F9,0x09B9,0x09D9,0x01B9,0x01B9,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09B8,0x09B8,0x09B8,0x09D8,0x09D8,0x09B8,0x09B8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x11D8,0x11D8,0x11D8,0x11D8,0x09B8,0x09B8,0x09B8,0x09B8,0x09B9,0x09B9,0x01B9,0x01D9,0x09FA,0x123A,0x11F9,0x1197,0x1155,0x1133,0x1133,0x1911,0x1911,0x2151,0x2130,0x2130,0x2110,0x210F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2111,0x1912,0x1933,0x1954,0x1974,0x1995,0x1174,0x1974,0x1153,0x1952,0x1132,0x1931,0x1911,0x1911,0x1911,0x2131,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2131,0x1932,0x1932,0x1153,0x1995,0x19B5,0x19D5,0x1994,0x1153,0x1952,0x1932,0x1911,0x1911,0x1910,0x1930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x20F0,0x2111,0x1932,0x1973,0x1994,0x1974,0x1974,0x1995,0x1974,0x1933,0x1933,0x1932,0x1911,0x1911,0x1911,0x1911,0x2131,0x2131,0x2131,0x2130,0x2110,0x2110,0x210F,0x2930,0x2930,0x2930,0x210F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2930,0x2110,0x212F,0x210F,0x2930,0x210F,0x2930,0x210F,0x2910,0x290F,0x2930,0x212F,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x2930,0x210F,0x2930,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x292F,0x210F,0x210F,0x20EE,0x20AD,0x412E,0xCC9A,0xC417,0xC3D6,0xBBB6,0xBBB6,0xB416,0xDE9E,0xDF7F,0xD79F,0xCF9F,0xCF7F,0xC77F,0xC77F,0xC77F,0xC77F,0xC77F,0xC77F,0xC79F,0xC79F,0xCF9F,0xC79F,0xCF9F,0xCF9F,0xCF9F,0xD7BF,0xDF7F,0xEF3F,0xAC37,0x8210,0x91B1,0xA1B2,0xA9B2,0xA9D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB9F3,0xB9F3,0xB9F3,0xB9D3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB1F3,0xB1F3,0xB1D3,0xB1F3,0xB1F3,0xB1F4,0xB1F4,0xB1F3,0xB1F3,0xB1F3,0xB9F3,0xB9F3,0xB9F4,0xB9D3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB9B3,0xB9B3,0xB1B3,0xB1B3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9F4,0xB9F4,0xB9D4,0xB9D4,0xB9D4,0xB1D3,0xB1D3,0xB1D3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB9F3,0xB1F3,0xB1F3,0xB1F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xB1B3,0xB193,0xB192,0xA992,0xA192,0x99D1,0x8A31,0xE65E,0xEF5F,0xDF7F,0xD79F,0xCF9F,0xCF9F,0xC79F,0xC79F,0xC77E,0xC77E,0xC77E,0xC79F,0xC77E,0xC77E,0xC77E,0xBF7E,0xC77E,0xC77E,0xC77E,0xC79E,0xC79E,0xC79E,0xC79F,0xC79F,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC77E,0xC79E,0xC79E,0xC79E,0xC77E,0xC77E,0xC77E,0xC79E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC77E,0xC79E,0xC79E,0xC79E,0xC79E,0xC77E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79F,0xC79F,0xC79F,0xC79F,0xC79E,0xC79F,0xC79F,0xC79F,0xC77E,0xC77E,0xC77E,0xC77E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC77E,0xC77E,0xC79F,0xC77E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC79F,0xC79F,0xCF9F,0xCF9F,0xCF9F,0xDF7F,0xD67E,0x9BB5,0x81F0,0x99F2,0xA1F2,0xA9F3,0xB213,0xB1F3,0xB1F3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xB9F3,0xB1F4,0xB1F3,0xA9D3,0xA9D2,0x9991,0x89B0,0xC4B9,0xEF3F,0xDF5F,0xD77F,0xD77F,0xCF7F,0xCF7F,0xD79F,0xD79F,0xDF7F,0xE6DF,0x8B33,0x8A31,0x9A13,0xA213,0xA213,0xA9F3,0xAA13,0xAA13,0xAA13,0xA9F3,0xB213,0xB1F3,0xB1F3,0xA9F3,0xA9D3,0xA9D3,0xA1D2,0xA1D2,0x89F0,0xC53A,0xE75F,0xD79F,0xCF9F,0xC79F,0xC79F,0xC79F,0xC79E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC79E,0xC79E,0xC79F,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77F,0xC77F,0xC77F,0xC77F,0xC77F,0xC77F,0xC77E,0xC77F,0xC77E,0xC77E,0xCF7F,0xCF7F,0xCF7F,0xCF7F,0xCF7F,0xCF7F,0xCF7F,0xD77F,0xDF5F,0xEF5F,0xE61C,0xB3F5,0xBBD5,0xC3B5,0xCBB6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD396,0xD396,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB97,0xDB97,0xDBB7,0xDBB8,0xDBD9,0xD3DA,0xC3FC,0x40B3,0x4956,0x4957,0x5177,0x48D4,0x8259,0xA2FA,0xAAD9,0xAAB8,0xAA77,0xAA56,0xB256,0xB256,0xBA76,0xBA76,0xB276,0xB296,0xA297,0x9297,0x7AB8,0x631A,0x5B9C,0x43FD,0x343E,0x1C1D,0x0C1D,0x045C,0x049C,0x0D5E,0x0DFE,0x1F7F,0x0F9D,0x0FBD,0x0FDD,0x07BD,0x07BC,0x0FBD,0x179D,0x277E,0x371D,0x5EBE,0x757B,0x6293,0x9212,0xA9F3,0xB9D3,0xB993,0xC1B4,0xB9B4,0xC1D4,0xC1D4,0xB9D4,0xB9B4,0xB1B4,0xB1B4,0xB215,0xAA36,0x8173,0x6131,0x5131,0x4931,0x4151,0x4171,0x3951,0x3971,0x3971,0x3151,0x3151,0x3151,0x3151,0x2951,0x2951,0x2931,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x292F,0x292F,0x210F,0x210F,0x290F,0x292F,0x212F,0x212F,0x290F,0x290F,0x210F,0x292F,0x2930,0x290F,0x212F,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2111,0x1911,0x1912,0x1112,0x21B5,0x2A17,0x21F7,0x19B6,0x1113,0x1112,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x1911,0x1911,0x1112,0x1153,0x1174,0x19D6,0x19D7,0x19F7,0x19D7,0x19B6,0x1195,0x1154,0x0933,0x1133,0x1132,0x1112,0x1932,0x1112,0x1932,0x1952,0x1132,0x1952,0x1152,0x1132,0x1152,0x1153,0x0953,0x1195,0x11D6,0x2238,0x1A37,0x1A17,0x19D6,0x1195,0x1133,0x1132,0x1911,0x2131,0x2111,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x2110,0x2930,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x210F,0x2130,0x2130,0x2130,0x2110,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x210F,0x290F,0x2930,0x2930,0x290F,0x2930,0x210F,0x2910,0x2110,0x2910,0x2110,0x210F,0x2110,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2930,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130, + 0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2150,0x2151,0x1931,0x1111,0x1112,0x1113,0x1155,0x19D7,0x11F8,0x11F8,0x09B8,0x09B8,0x0198,0x09B8,0x09B8,0x09D9,0x09D8,0x09B8,0x09D9,0x09D8,0x09D8,0x09D8,0x09B8,0x09B8,0x09D8,0x09B8,0x09B8,0x09D8,0x09B8,0x09B8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x09D8,0x11D9,0x09B8,0x09B8,0x09B8,0x0998,0x09B8,0x09B8,0x09B8,0x09B8,0x09D9,0x09D9,0x09F9,0x11F9,0x11D8,0x11B7,0x1155,0x1134,0x1112,0x1912,0x1931,0x2131,0x2131,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x1911,0x18F1,0x2153,0x1933,0x1953,0x1953,0x1973,0x1952,0x1911,0x1911,0x1911,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x1931,0x1931,0x1932,0x1932,0x1952,0x1952,0x1952,0x1932,0x1911,0x1911,0x1910,0x1910,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2131,0x2132,0x1932,0x1932,0x1912,0x1912,0x1932,0x1932,0x1931,0x1911,0x1911,0x2111,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2930,0x212F,0x292F,0x210F,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2930,0x2110,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x212F,0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2130,0x212F,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x292F,0x212F,0x2930,0x2930,0x290F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x292F,0x212F,0x210F,0x20EE,0x20AD,0x412E,0xC47A,0xC3F7,0xBBB6,0xBB96,0xBBB6,0xB436,0xE6FF,0xDF7F,0xD79F,0xCF9F,0xC77E,0xC77E,0xC77F,0xC77F,0xC77E,0xC77E,0xC77F,0xC77F,0xC77F,0xC79F,0xC79F,0xC79F,0xC79F,0xD7BF,0xDF9F,0xEF7F,0xC4F9,0x8230,0x91D1,0xA1B2,0xA9B2,0xA9B3,0xB1B3,0xB1D3,0xB1D3,0xB9D3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9D3,0xB9F3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1F4,0xB1D3,0xB1F4,0xB1F4,0xB1F3,0xB9F4,0xB9F4,0xB9F4,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9B3,0xB9B3,0xB9D3,0xB9B3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D4,0xB9F4,0xB9D3,0xB9D4,0xB1D4,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1F3,0xB1F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F4,0xB9F4,0xB9F3,0xB9D3,0xB1D3,0xB1B3,0xB1B3,0xB1B3,0xB192,0xA992,0xA1B2,0x99F1,0x9AD3,0xEE9F,0xE77F,0xD79F,0xCF9F,0xCF9F,0xC79F,0xC79F,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC79E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC79E,0xC77E,0xC77E,0xC77E,0xC77E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC77E,0xC77E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xBF9E,0xBF9E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xBF9E,0xBF9E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79E,0xC79F,0xC79F,0xC79F,0xC77E,0xC77E,0xC79E,0xC79E,0xC79F,0xC79F,0xC79F,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC79E,0xC79E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC79E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77F,0xC77F,0xC77E,0xC77E,0xC77F,0xC79F,0xCF9F,0xCF9F,0xCF9F,0xDF9F,0xD67E,0x9BB5,0x81D0,0x99F2,0xA1F2,0xA9F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB9D3,0xB1D3,0xB9D3,0xB9F3,0xB9F4,0xB1D3,0xB1D3,0xA9D3,0xA191,0x89B0,0xBCB9,0xEF3F,0xDF5F,0xD77F,0xCF7F,0xCF7F,0xCF7F,0xCF7F,0xD77F,0xDF7F,0xE6DF,0x8B33,0x8A31,0x9A33,0xA213,0xA213,0xA213,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xB1F3,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA1D2,0x89F1,0xBCF9,0xE75F,0xD77F,0xCF9F,0xC79F,0xC79F,0xC79F,0xC77E,0xC77F,0xC77F,0xC77E,0xC77F,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77F,0xC79F,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC75E,0xC77E,0xC77E,0xC77E,0xC75E,0xCF7F,0xCF7F,0xCF7F,0xCF7F,0xCF7F,0xD77F,0xD77F,0xDF5F,0xEF3F,0xE65D,0xB3F5,0xBBB5,0xC395,0xCB96,0xCB96,0xD396,0xD396,0xD396,0xD396,0xD396,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB76,0xDB76,0xDB76,0xDB96,0xDB96,0xDB76,0xDB75,0xDB96,0xDB96,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB96,0xDB96,0xDB76,0xDB77,0xDB97,0xDBB8,0xDB98,0xD3BA,0xCBDC,0x4871,0x5115,0x5915,0x60D4,0xAAFB,0xB2DA,0xB298,0xB277,0xBA77,0xBA76,0xBA56,0xC276,0xC256,0xC256,0xBA56,0xBA56,0xB256,0xAA76,0x9A97,0x7A97,0x6B19,0x5B9C,0x4BFD,0x345E,0x1C1D,0x0C3D,0x045C,0x049C,0x051D,0x05BD,0x1F5F,0x179D,0x0FBD,0x0FBD,0x07BC,0x07BC,0x0FBD,0x179D,0x1F5D,0x371E,0x56BE,0x759C,0x6A92,0x9232,0xA9F3,0xB1B3,0xB9D4,0xB9B3,0xB9B3,0xC1B4,0xB9B3,0xB993,0xB9B4,0xB194,0xB1B4,0xB1D4,0xB256,0xA236,0x6931,0x50F0,0x4910,0x4131,0x4151,0x3951,0x3951,0x3951,0x3951,0x3151,0x3151,0x3151,0x3151,0x3151,0x2931,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x290F,0x2930,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x2910,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x212F,0x290F,0x2930,0x2930,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x290F,0x292F,0x292F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2130,0x2110,0x2130,0x1911,0x1912,0x1133,0x21D6,0x2A37,0x21F7,0x19B5,0x1133,0x1132,0x1951,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2151,0x2131,0x18F1,0x10F2,0x1133,0x1995,0x19B6,0x19D7,0x19D7,0x19D6,0x19D6,0x1175,0x0933,0x0912,0x1132,0x1132,0x1932,0x1952,0x1932,0x1932,0x1932,0x1932,0x1952,0x1952,0x1952,0x1152,0x1132,0x0932,0x0932,0x0933,0x0974,0x11B5,0x1A17,0x2237,0x19F7,0x19B6,0x1174,0x1153,0x1932,0x1911,0x2131,0x2110,0x2131,0x2130,0x2130,0x2130,0x210F,0x210F,0x2930,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x210F,0x2130,0x2130,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x210F,0x210F,0x2930,0x2930,0x210F,0x2910,0x2110,0x2910,0x2110,0x2930,0x210F,0x2910,0x210F,0x290F,0x2910,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2930,0x2130,0x2110,0x2110,0x2130,0x210F,0x210F,0x2110,0x2130,0x2110,0x210F,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130, + 0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x290F,0x2930,0x2110,0x210F,0x210F,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2150,0x2150,0x2151,0x1931,0x1111,0x1112,0x1133,0x1175,0x11B6,0x11F8,0x11D8,0x09B8,0x09B8,0x09D8,0x09B8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x09F8,0x09D8,0x11D8,0x09D8,0x09D8,0x11D8,0x11D8,0x09B8,0x09D8,0x09B8,0x09B8,0x11D8,0x09D8,0x09D8,0x09D8,0x09B8,0x09D8,0x09D8,0x09D8,0x11D8,0x09D8,0x11D8,0x11D8,0x11D8,0x09D8,0x11F8,0x09D8,0x09B8,0x09B8,0x11B8,0x09B8,0x11B8,0x09B8,0x11D8,0x11D8,0x11F9,0x1219,0x11D8,0x1A19,0x11D7,0x1196,0x0955,0x1133,0x1113,0x1912,0x1911,0x2131,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x2910,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2111,0x2111,0x1911,0x1911,0x1931,0x1911,0x1911,0x1931,0x2130,0x1910,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2110,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1910,0x1910,0x2110,0x1910,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x2910,0x2910,0x20F0,0x2110,0x2110,0x2111,0x2111,0x1911,0x1911,0x1911,0x2111,0x1911,0x1911,0x2110,0x1910,0x2110,0x2110,0x2130,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x210F,0x212F,0x212F,0x2930,0x2130,0x212F,0x212F,0x210F,0x2130,0x210F,0x210F,0x2130,0x2110,0x2910,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2130,0x2110,0x210F,0x2110,0x2930,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x2930,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x292F,0x210F,0x210F,0x20EE,0x20AD,0x414E,0xC47A,0xC3F7,0xBB96,0xBB96,0xB396,0xB436,0xEF3F,0xDF7F,0xD79F,0xCF7F,0xC77E,0xC75E,0xC77F,0xC77E,0xC77E,0xC77F,0xC77E,0xC77F,0xC77E,0xC79F,0xC77F,0xC79F,0xCFBF,0xD79F,0xE77F,0xDE5D,0x8251,0x91D1,0xA1B2,0xA9B2,0xA9B3,0xB1B3,0xB1B3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xB9F3,0xB9F3,0xB9F3,0xB9D3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D4,0xB1F4,0xB1D3,0xB1F3,0xB9F4,0xB9F4,0xB9F3,0xB9D3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1F3,0xB9F3,0xB1D3,0xB9F3,0xB9F3,0xB9F4,0xB9F4,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xB1B3,0xB1B3,0xB193,0xB192,0xB192,0xA1B2,0x91D1,0xA375,0xF71F,0xDF7F,0xD79F,0xCF9F,0xC79F,0xC77F,0xC77E,0xC77E,0xBF7E,0xBF7E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xBF7E,0xBF7E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xBF7E,0xBF9E,0xBF7E,0xC79E,0xC79E,0xC79E,0xBF7E,0xBF7E,0xC79E,0xBF7E,0xBF7E,0xBF7E,0xC79E,0xC79E,0xC79E,0xBF9E,0xBF9E,0xBF9E,0xBF9E,0xBF9E,0xBF9E,0xBF9E,0xBF9E,0xBF9E,0xBF9E,0xBF9E,0xBF9E,0xBF7E,0xBF7E,0xC79E,0xBF7E,0xBF7E,0xC79E,0xBF7E,0xBF7E,0xBF7E,0xBF9F,0xC79F,0xC77F,0xC77E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xC77E,0xBF7E,0xBF7E,0xC77E,0xBF7E,0xBF7E,0xC77E,0xBF7E,0xBF7E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77F,0xC79F,0xC79F,0xCF9F,0xCF9F,0xDF9F,0xD69E,0x93B5,0x81F0,0x99F2,0xA1F2,0xA9F3,0xB1F3,0xB1F3,0xB9F3,0xB9D3,0xB1D3,0xB9D3,0xB9D3,0xB9F4,0xB9F4,0xB1D3,0xB1D3,0xA9D3,0xA191,0x89B0,0xBCB9,0xEF3F,0xDF7F,0xD77F,0xCF7F,0xCF7F,0xCF7F,0xCF7F,0xCF7F,0xDF5F,0xE6DF,0x8B33,0x8A32,0x9A12,0x9A13,0xA213,0xA1F3,0xA1F3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9D3,0xA9D3,0xA9D2,0xA9B2,0xA1B2,0xA1D2,0x89F0,0xBCF9,0xE75F,0xD77F,0xC79F,0xC79F,0xC79F,0xC77F,0xBF7E,0xC77E,0xC77F,0xC77E,0xC77E,0xC77E,0xC77E,0xBF7E,0xBF7E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC75E,0xC77F,0xC77E,0xC75F,0xCF5F,0xCF5F,0xCF7F,0xCF5F,0xCF5F,0xD77F,0xDF5F,0xEF3F,0xE65D,0xABD5,0xBBB5,0xC395,0xCB96,0xD396,0xD396,0xD396,0xD376,0xD396,0xD396,0xDB96,0xDB96,0xDB96,0xDB96,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB77,0xDB77,0xDB98,0xDB98,0xD399,0xCBBB,0x480F,0x6934,0x8A18,0xAA99,0xBAB9,0xB257,0xB236,0xBA36,0xC256,0xC256,0xCA56,0xCA56,0xC235,0xC235,0xC235,0xC235,0xBA55,0xB276,0x9A76,0x8297,0x6B19,0x5B9B,0x4C3D,0x345E,0x1C3D,0x0C3D,0x045C,0x049C,0x04FD,0x059D,0x1F5F,0x0F9D,0x0FBD,0x0FBC,0x07BC,0x07BC,0x0FBD,0x179D,0x277D,0x371D,0x56BE,0x757B,0x6A92,0x9212,0xA1D2,0xB9D3,0xB9B3,0xB9B3,0xC1B3,0xB993,0xC1B4,0xB9B4,0xB9B4,0xB9B4,0xB9B4,0xB1B4,0xB1F5,0xB276,0x9215,0x58D0,0x5110,0x4930,0x4151,0x4151,0x3951,0x3951,0x3131,0x3151,0x3151,0x3151,0x3151,0x2951,0x2931,0x2930,0x2930,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2910,0x210F,0x2910,0x2930,0x290F,0x2910,0x2910,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2930,0x212F,0x2930,0x292F,0x292F,0x292F,0x210F,0x292F,0x212F,0x212F,0x2130,0x2110,0x2131,0x1932,0x1112,0x21B6,0x2A17,0x2217,0x19B5,0x0932,0x1132,0x1951,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1912,0x10F2,0x1154,0x19B6,0x19D7,0x19D7,0x19D7,0x19B6,0x1174,0x1133,0x1132,0x1112,0x1111,0x1932,0x1952,0x1952,0x1932,0x1932,0x1952,0x1952,0x1952,0x1931,0x1972,0x1951,0x1952,0x1152,0x1132,0x1133,0x0933,0x0954,0x1195,0x19F6,0x1A17,0x19D6,0x19D6,0x1994,0x1132,0x1932,0x1911,0x2111,0x2131,0x2130,0x2930,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2910,0x2930,0x2930,0x2110,0x2110,0x2110,0x210F,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2910,0x210F,0x2910,0x2910,0x290F,0x290F,0x2930,0x2930,0x212F,0x210F,0x210F,0x212F,0x2930,0x212F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130, + 0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x210F,0x210F,0x290F,0x212F,0x210F,0x210F,0x210F,0x2130,0x212F,0x2110,0x2910,0x210F,0x292F,0x290F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x2130,0x212F,0x210F,0x210F,0x212F,0x2130,0x2151,0x2151,0x1910,0x1911,0x1112,0x1133,0x1995,0x19D6,0x19D7,0x19F7,0x1A18,0x1A18,0x11F8,0x11F8,0x1218,0x11F8,0x11F8,0x11F8,0x11F8,0x1A18,0x19F8,0x11D8,0x11F8,0x11F8,0x19F8,0x19F8,0x19F8,0x11F8,0x11F8,0x19F8,0x19F8,0x1A18,0x19F8,0x19F8,0x1A18,0x11F8,0x1A18,0x1218,0x1A18,0x1218,0x1A18,0x11F8,0x11F8,0x1A18,0x19F8,0x19F9,0x19F8,0x19D8,0x19F8,0x19F8,0x1A19,0x1A18,0x1A18,0x1A18,0x1A18,0x19F7,0x19F7,0x1195,0x0933,0x0912,0x1112,0x1932,0x1931,0x2131,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2130,0x2130,0x2110,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x18F0,0x1910,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x1910,0x1910,0x1910,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x20F0,0x2110,0x2110,0x2110,0x2110,0x2131,0x2111,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2110,0x290F,0x210F,0x212F,0x2130,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x210F,0x2910,0x2910,0x2930,0x2910,0x2910,0x210F,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x210F,0x210F,0x290F,0x210F,0x2930,0x2110,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x210F,0x210F,0x20EE,0x20AD,0x494F,0xC47A,0xC3F7,0xBB96,0xBB75,0xB3B5,0xAC15,0xEF7F,0xD79F,0xCF9F,0xCF7F,0xC75E,0xC75E,0xC77E,0xC77F,0xC77F,0xBF5E,0xC75E,0xC75E,0xC77E,0xC77E,0xC77F,0xC79F,0xCF9F,0xDF7F,0xE6FF,0x9B94,0x89D0,0x99B1,0xA1B2,0xA9B3,0xB1B3,0xB1B3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xB9F3,0xB9D3,0xB9F3,0xB9D3,0xB1D3,0xB1D3,0xB1B3,0xB1D3,0xB1D3,0xB1D3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xB1D3,0xB1B3,0xB1B3,0xB1D3,0xB1D3,0xB1D3,0xB1F3,0xB1F3,0xB9F3,0xB9F3,0xB9F3,0xB9D3,0xB9F4,0xB9D4,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9F4,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB1D3,0xB1B3,0xB1D3,0xB1D3,0xB1D3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1F3,0xB1D3,0xB1F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9B3,0xB9B3,0xB193,0xB192,0xA992,0xA1B1,0x89D0,0xCD3A,0xEF3F,0xD77F,0xCF9F,0xC77F,0xC77F,0xC77E,0xBF7E,0xBF5E,0xBF7E,0xBF7E,0xBF5E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xC77E,0xBF7E,0xBF7E,0xC77E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xC77E,0xBF7E,0xBF7E,0xC77E,0xC77E,0xBF7E,0xC77E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xC77E,0xBF5E,0xC77E,0xC77E,0xC77E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF5E,0xC77E,0xC77E,0xBF5E,0xC77E,0xC77E,0xC77E,0xC77E,0xBF5E,0xC77F,0xC77F,0xC77F,0xC79F,0xC79F,0xC79F,0xCF9F,0xDF9F,0xD67E,0x9BB5,0x81F0,0x99F2,0xA1F2,0xA9F3,0xB213,0xB1F3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9D4,0xB9F4,0xB9F4,0xB1D3,0xB1D3,0xA9D3,0xA191,0x89B0,0xBCB9,0xEF3F,0xDF5F,0xCF7F,0xCF7F,0xCF7F,0xC75F,0xCF5F,0xCF7F,0xDF5F,0xDEBF,0x8B33,0x8231,0x91F2,0x99F2,0x99F3,0xA1F3,0xA1F3,0xA1F3,0xA9F3,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xA9D2,0xA9D2,0xA9D2,0xA1B2,0x99B2,0x89F0,0xB4F9,0xDF3F,0xCF7F,0xC77F,0xC77F,0xBF7F,0xBF7E,0xBF7F,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77E,0xC77F,0xC75E,0xC77E,0xC77E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75F,0xCF5F,0xCF5F,0xCF5F,0xCF5F,0xCF5F,0xD75F,0xDF3F,0xE73F,0xEEBF,0xB3F5,0xBB95,0xC375,0xCB75,0xCB75,0xD375,0xD376,0xD376,0xD376,0xD376,0xD376,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB56,0xDB56,0xDB56,0xDB56,0xDB56,0xDB56,0xDB76,0xDB76,0xDB76,0xDB76,0xDB56,0xDB56,0xDB56,0xDB56,0xDB56,0xDB76,0xDB76,0xDB76,0xDB56,0xDB77,0xDB78,0xDB78,0xDB99,0xC339,0x89B4,0xB2FA,0xB2B9,0xBA99,0xBA77,0xC277,0xC277,0xC256,0xC256,0xCA56,0xCA35,0xC215,0xC215,0xC215,0xC215,0xC235,0xBA35,0xB256,0x9A56,0x8297,0x7319,0x63DC,0x4C5E,0x3C9E,0x247E,0x147D,0x047D,0x049D,0x04FD,0x057C,0x1F5F,0x0F9D,0x0FBD,0x0FBC,0x07BC,0x07BC,0x0F9C,0x179D,0x277D,0x3F1E,0x5EBE,0x757B,0x6AB2,0x9233,0xA9F3,0xB9D3,0xB9B3,0xB9B3,0xC1D4,0xC1B3,0xB993,0xB993,0xB993,0xB994,0xB993,0xB1B4,0xB1D4,0xB256,0xAA97,0x58CF,0x5110,0x4930,0x4151,0x4151,0x3971,0x3951,0x3951,0x3151,0x3151,0x3151,0x2931,0x2931,0x2931,0x3131,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x290F,0x2910,0x290F,0x292F,0x292F,0x2910,0x210F,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x292F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x2130,0x2130,0x2131,0x1932,0x1133,0x19D5,0x2A37,0x2217,0x19B5,0x1133,0x1112,0x1931,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2110,0x2130,0x2130,0x1931,0x1931,0x1133,0x1134,0x19B6,0x21F7,0x19F7,0x11B6,0x1196,0x1154,0x1153,0x0932,0x0911,0x1111,0x1952,0x1972,0x1952,0x1932,0x1952,0x1952,0x1932,0x1111,0x1111,0x1931,0x1131,0x1971,0x1972,0x1952,0x1952,0x1132,0x1132,0x0933,0x0953,0x1195,0x19D6,0x19F7,0x2217,0x19B5,0x1994,0x1112,0x1911,0x1911,0x2111,0x2131,0x2130,0x2130,0x2110,0x210F,0x210F,0x212F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x2110,0x2130,0x2130,0x2130,0x2110,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x210F,0x2110,0x210F,0x2910,0x2910,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2910,0x210F,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x2930,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F, + 0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x2930,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x212F,0x212F,0x2930,0x210F,0x2130,0x2930,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2151,0x2131,0x2131,0x1911,0x1112,0x1112,0x1153,0x1154,0x1175,0x1195,0x1196,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x1196,0x11B6,0x11B6,0x19B6,0x1196,0x1196,0x11B6,0x1196,0x1196,0x11B6,0x1196,0x11B6,0x11B6,0x11B6,0x1196,0x11B6,0x1196,0x19B6,0x1196,0x11B6,0x11B6,0x11D6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B6,0x11B7,0x1196,0x11B6,0x1196,0x11B6,0x11B6,0x11B6,0x1195,0x1195,0x1175,0x0954,0x1154,0x0933,0x1132,0x1112,0x1112,0x1911,0x1931,0x2130,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x2110,0x212F,0x2950,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2150,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2930,0x212F,0x212F,0x212F,0x210F,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2930,0x290F,0x2910,0x2930,0x2910,0x2910,0x210F,0x290F,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x210F,0x2930,0x210F,0x210F,0x2930,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x212F,0x210F,0x212F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x210F,0x210F,0x20EE,0x20AD,0x494F,0xC45A,0xC3D7,0xBB96,0xBB75,0xB395,0xAC15,0xEF7F,0xD77F,0xCF7F,0xC77E,0xC75E,0xBF5E,0xBF5E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xC77F,0xC79F,0xC79F,0xCF9F,0xDF5F,0xC55B,0x8251,0x91D1,0xA1B2,0xA9D3,0xB1D3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9F3,0xB9D3,0xB9F3,0xB9D3,0xB9D3,0xB1D3,0xB1B3,0xB1B3,0xB1B3,0xA9B3,0xA9D3,0xA1D2,0xA1F2,0x99F2,0x99F2,0xA1F2,0xA1F3,0xA9D3,0xA9D3,0xA9B3,0xB1B3,0xB1D3,0xB1D3,0xB1D3,0xB9D3,0xB9F3,0xB9F4,0xB9F4,0xB9D4,0xB9D4,0xB9D4,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB1B3,0xB1B3,0xB1D3,0xA9D3,0xA1D3,0xA1F3,0x99F2,0x99F2,0x99F2,0x99F2,0xA1F2,0xA1D2,0xA9D3,0xA9D3,0xB1B3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9D3,0xB9B3,0xB9B3,0xB9B3,0xB193,0xB192,0xA992,0xA1D1,0x9292,0xEE7F,0xDF5F,0xCF9F,0xC77F,0xC77F,0xBF7E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF5E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF7E,0xBF5E,0xBF5E,0xC77E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xC77F,0xBF5F,0xC77F,0xC77F,0xC77F,0xC79F,0xCF9F,0xD77F,0xD67E,0x9395,0x81F1,0x99F2,0xA1F2,0xA9F3,0xB1F3,0xB1F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D4,0xB9F4,0xB1F3,0xB1D3,0xA9D3,0xA191,0x89B0,0xBCB9,0xE71F,0xD75F,0xCF7F,0xCF5F,0xC75F,0xC75F,0xC75F,0xCF7F,0xD75F,0xDEDF,0x8333,0x8231,0x9212,0x91F2,0x99F2,0x99D2,0x99D2,0xA1F2,0xA1F3,0xA1D2,0xA1D2,0xA1D2,0xA1D2,0xA1B2,0xA1B2,0xA1B2,0x99B2,0x99B1,0x81F0,0xB4F9,0xDF3F,0xCF7F,0xC77F,0xC77F,0xBF7F,0xBF7E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF7E,0xBF7E,0xBF5E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xC77E,0xC77E,0xC77E,0xC75E,0xC77F,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75F,0xCF5F,0xCF5F,0xCF5F,0xCF5F,0xCF5F,0xD75F,0xDF5F,0xEF1F,0xEE5E,0xABD5,0xBB95,0xC375,0xCB75,0xCB75,0xD355,0xD375,0xD375,0xD376,0xD376,0xD375,0xD376,0xD355,0xD355,0xDB55,0xDB55,0xDB55,0xDB55,0xDB56,0xDB56,0xDB56,0xDB56,0xDB56,0xDB56,0xDB56,0xDB56,0xDB55,0xDB55,0xDB55,0xDB55,0xDB55,0xDB55,0xDB55,0xDB56,0xDB56,0xDB56,0xDB56,0xDB36,0xDB57,0xDB57,0xDB78,0xDB79,0xCB19,0x8993,0xB2B8,0xBA98,0xBA98,0xBA77,0xC256,0xC256,0xCA56,0xCA36,0xCA36,0xCA15,0xCA15,0xCA35,0xCA15,0xCA15,0xC215,0xBA35,0xB235,0x9A56,0x8276,0x7319,0x63DC,0x4C7E,0x3C9E,0x249E,0x147D,0x047D,0x04BD,0x04DD,0x055C,0x1F5F,0x0F9D,0x0FBC,0x0FBC,0x07BC,0x07BC,0x0F9C,0x179D,0x275D,0x3F1D,0x5EBE,0x757B,0x6A92,0x9212,0xA1D2,0xB1D3,0xB9B3,0xC1D3,0xC1B3,0xB993,0xC1B3,0xB993,0xB993,0xB993,0xB993,0xB9B4,0xB1B4,0xB215,0xAA96,0x81B2,0x50CF,0x5130,0x4130,0x4151,0x3951,0x3951,0x3951,0x3151,0x3131,0x3151,0x3131,0x3131,0x2931,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x292F,0x212F,0x2130,0x2110,0x1931,0x1932,0x1132,0x19B5,0x2237,0x21F7,0x19B6,0x1133,0x1132,0x1952,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1112,0x1133,0x1995,0x19F7,0x21F8,0x19D7,0x11B6,0x1155,0x0933,0x0932,0x1112,0x1131,0x1131,0x1952,0x1932,0x1932,0x1132,0x1132,0x1112,0x1112,0x1111,0x1111,0x1111,0x08F0,0x1151,0x1131,0x1952,0x1952,0x1952,0x1132,0x0912,0x0933,0x0954,0x11B6,0x19F7,0x19F7,0x2217,0x1995,0x1133,0x1912,0x1911,0x2111,0x2131,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x2930,0x2910,0x2110,0x2110,0x2910,0x2110,0x2930,0x2910,0x2910,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x290F,0x2910,0x210F,0x212F,0x210F,0x210F,0x2110,0x210F,0x2930,0x2930,0x2110,0x2930,0x2110,0x2110,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x292F,0x2930,0x292F,0x2930,0x2130,0x212F,0x212F,0x2130,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x2930,0x212F,0x212F,0x2930,0x212F,0x210F,0x212F,0x2930,0x212F,0x292F,0x292F,0x212F,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2930, + 0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2110,0x2930,0x2110,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2131,0x2111,0x1911,0x1911,0x1112,0x1953,0x1933,0x1112,0x0913,0x0913,0x0913,0x08F2,0x0913,0x1113,0x0913,0x1133,0x1133,0x1113,0x0913,0x0912,0x1133,0x0913,0x0913,0x1133,0x1113,0x1113,0x1133,0x0933,0x0933,0x1113,0x0913,0x0913,0x0913,0x0913,0x1113,0x1113,0x0913,0x1113,0x1113,0x0913,0x0913,0x1134,0x0913,0x1134,0x1133,0x1113,0x1113,0x0912,0x0912,0x1133,0x1133,0x1132,0x1132,0x1132,0x1931,0x1931,0x1931,0x1931,0x2110,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2110,0x210F,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2930,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2110,0x2930,0x2110,0x2910,0x2910,0x2930,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x212F,0x2930,0x210F,0x2910,0x2930,0x290F,0x290F,0x2930,0x210F,0x212F,0x212F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x20EE,0x28AD,0x494F,0xC439,0xC3B7,0xBB76,0xB375,0xB375,0xA3D5,0xEF7F,0xD77F,0xCF7E,0xC77E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF7E,0xC79F,0xC79F,0xD77F,0xE71F,0x8AF3,0x89D1,0x99D2,0xA9D3,0xB1D3,0xB1D3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xB9F3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB1D3,0xB1B3,0xB1B3,0xB1B2,0xA9B2,0xA1D2,0x99F2,0x89F1,0x9273,0x9AD4,0x9AD4,0x92B3,0x9232,0x91F2,0xA1D3,0xA1B2,0xA9B3,0xB1B3,0xB1D3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xC1D3,0xC1D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9B3,0xB1B3,0xB1B2,0xA9D2,0xA1D2,0x91D2,0x9232,0x9AD4,0x9B34,0xA355,0x9B14,0x9272,0x91F1,0xA1D2,0xA1B2,0xA9B3,0xB1B3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB9D3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9B3,0xB9B3,0xB193,0xB192,0xA9B2,0x91D1,0xBC38,0xEF3F,0xD77F,0xCF7F,0xC77F,0xBF7F,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF7E,0xBF5E,0xBF7E,0xB77E,0xB77E,0xB77E,0xB77E,0xB77E,0xBF7E,0xBF7E,0xBF5E,0xBF7E,0xBF7E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF5E,0xBF7E,0xBF5E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF3E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5F,0xC77F,0xC77F,0xC77F,0xD77F,0xCE5E,0x9395,0x81F1,0x99F2,0xA1F3,0xA9F3,0xB1F3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9F4,0xB9F4,0xB9F4,0xB9D3,0xB1D3,0xA9F3,0xA192,0x89B0,0xBC99,0xE71F,0xD75F,0xCF7F,0xC75F,0xC75F,0xC75F,0xC75F,0xC75F,0xD73F,0xDEBF,0x7AF2,0x7A10,0x8A11,0x89F1,0x91D1,0x91D2,0x91D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99B1,0x99B1,0x99B1,0x9991,0x9991,0x91B1,0x91B1,0x79D0,0xB519,0xDF5F,0xCF5F,0xC77F,0xC77F,0xBF7E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF5E,0xBF7E,0xBF7E,0xBF7E,0xBF5E,0xBF5E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC77F,0xC75E,0xC75E,0xC75F,0xC75F,0xC75F,0xC75F,0xCF5F,0xCF5F,0xCF5F,0xD75F,0xD75F,0xDF3F,0xEF1F,0xEE7F,0xABB5,0xBB75,0xC355,0xCB55,0xCB55,0xCB55,0xD355,0xD355,0xD355,0xD355,0xD355,0xD355,0xDB56,0xDB35,0xDB35,0xDB55,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB55,0xDB55,0xDB35,0xDB35,0xDB35,0xDB56,0xDB36,0xDB36,0xDB36,0xDB57,0xDB58,0xDB58,0xDB79,0xCB39,0x99F5,0xB2B9,0xB298,0xBA98,0xBA77,0xC257,0xC236,0xCA36,0xCA15,0xCA15,0xD235,0xCA15,0xCA15,0xCA15,0xCA15,0xC215,0xBA15,0xB235,0x9A35,0x8256,0x6AF8,0x5BDB,0x4C5D,0x349E,0x1C7E,0x147D,0x047D,0x04BD,0x04DD,0x055C,0x277F,0x179D,0x0F9C,0x079C,0x07BC,0x07BC,0x0F9C,0x179D,0x275D,0x3F1D,0x5EBE,0x757B,0x6AB3,0x9212,0xAA13,0xB1D3,0xB9B3,0xB9B3,0xB9B3,0xC1B3,0xC1B3,0xC1B3,0xB993,0xB993,0xB9B3,0xB9B3,0xB1B3,0xB1F4,0xB276,0xA275,0x482D,0x48EF,0x4951,0x4151,0x3930,0x3951,0x3951,0x3151,0x3131,0x3131,0x3131,0x2951,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x210F,0x2110,0x2910,0x290F,0x290F,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x292F,0x292F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x2110,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x292F,0x292F,0x212F,0x2130,0x2130,0x1931,0x1911,0x1112,0x21B5,0x2A17,0x21F7,0x1995,0x0933,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2131,0x2131,0x1932,0x1112,0x1154,0x1996,0x2218,0x19F8,0x19B7,0x1175,0x0913,0x0912,0x1152,0x1952,0x1131,0x1131,0x1931,0x1111,0x1111,0x0912,0x1133,0x1154,0x1174,0x1174,0x1153,0x1153,0x1152,0x0911,0x1111,0x1131,0x1131,0x1952,0x1932,0x1132,0x1133,0x1153,0x1175,0x11B6,0x1A17,0x2217,0x1195,0x1153,0x1112,0x1911,0x1911,0x2111,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x2930,0x2110,0x2110,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2910,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x290F,0x210F,0x212F,0x2930,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x2930,0x2130,0x2930,0x210F,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2930,0x292F,0x212F,0x2930,0x2130,0x2130,0x212F,0x292F,0x212F,0x292F,0x2930,0x2930,0x2930,0x292F,0x2930,0x292F,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x212F,0x2930,0x2930,0x292F,0x212F,0x212F,0x210F,0x210F,0x290F, + 0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2930,0x210F,0x2130,0x2110,0x2130,0x2110,0x2110,0x2910,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2110,0x2110,0x2130,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2131,0x2131,0x1910,0x1931,0x1931,0x1932,0x1932,0x1932,0x1912,0x1912,0x1912,0x1112,0x1932,0x1912,0x1112,0x1912,0x1932,0x1912,0x1932,0x1112,0x1932,0x1112,0x1932,0x1932,0x1932,0x1112,0x1132,0x1132,0x1112,0x1932,0x1112,0x1912,0x1912,0x1912,0x1912,0x1112,0x1112,0x1112,0x1112,0x1112,0x1913,0x1913,0x1112,0x1112,0x1912,0x1912,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x2131,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x292F,0x292F,0x290F,0x212F,0x2130,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x2130,0x2110,0x2130,0x210F,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2910,0x2110,0x2910,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x210F,0x2130,0x2130,0x210F,0x2110,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2910,0x2930,0x2930,0x2930,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2910,0x2910,0x2910,0x290F,0x2910,0x210F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x2110,0x2130,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x290F,0x2910,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x20EE,0x28AD,0x494F,0xC439,0xC3B7,0xBB76,0xB355,0xB355,0xA3B4,0xEF7F,0xCF7F,0xCF5E,0xC75E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF7E,0xC79F,0xCF7F,0xDF3F,0xBD5A,0x81F0,0x99B1,0xA1D2,0xA9D3,0xB1D3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB1B3,0xB1B3,0xB1B2,0xA9B2,0xA1D2,0x99D1,0x9212,0xAB96,0xD53C,0xE61F,0xEE7F,0xEE7F,0xE63F,0xE5BE,0xBC18,0x81D0,0x91F2,0xA1D2,0xA9B3,0xA9B3,0xB1D3,0xB1D3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9B3,0xB1B3,0xA9B2,0xA1D2,0x91D1,0x9272,0xC479,0xDDBE,0xEE7F,0xEEBF,0xEEBF,0xEE9F,0xE5FE,0xCCBA,0x8A31,0x91F1,0xA1D2,0xA9B2,0xB1B3,0xB1B3,0xB1D3,0xB1D3,0xB9D3,0xB9D3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9B3,0xB9B3,0xB9B3,0xB193,0xB1B2,0xA1D2,0x8A10,0xEEDF,0xD75F,0xCF7F,0xC77F,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF3E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xB73E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xBF7E,0xBF7E,0xBF5E,0xBF5E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xB75E,0xB75E,0xBF5E,0xB75E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xC75E,0xBF5E,0xBF5E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xBF3E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF3E,0xBF3E,0xBF3E,0xBF5E,0xBF5E,0xBF5E,0xBF7F,0xC77F,0xC77F,0xD75F,0xCE5E,0x9395,0x89F1,0x99F2,0xA9F3,0xA9F3,0xB1F3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9F4,0xB9F4,0xB9D3,0xB1D3,0xA9D3,0xA192,0x89B0,0xBC99,0xE71F,0xD75F,0xCF7F,0xC75F,0xC73F,0xC73F,0xC75F,0xC75F,0xCF5F,0xD6DF,0x62D0,0x61EE,0x69AE,0x69AE,0x71AE,0x71AF,0x79CF,0x79AF,0x798F,0x798F,0x798E,0x798E,0x798E,0x796E,0x796E,0x796E,0x716E,0x718E,0x598D,0xAD59,0xD75F,0xC75F,0xC77F,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC77F,0xC75F,0xC75F,0xC75F,0xC75F,0xCF5F,0xCF5F,0xCF5F,0xCF5F,0xCF5F,0xD75F,0xD73F,0xD71F,0xE73F,0xEEFF,0xEE3E,0xB3B5,0xBB75,0xC355,0xCB55,0xCB35,0xCB55,0xCB35,0xD355,0xD335,0xD335,0xD335,0xD335,0xD335,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB35,0xDB36,0xDB36,0xDB36,0xDB37,0xDB37,0xDB58,0xDB79,0xCB5A,0x9A17,0xB31B,0xB2FB,0xBAFA,0xBA79,0xBA57,0xC257,0xCA36,0xCA15,0xC9F5,0xC9F5,0xCA15,0xD215,0xD215,0xCA15,0xC215,0xBA15,0xB235,0x9A35,0x8256,0x6B19,0x5BDB,0x4C7D,0x349E,0x1C7E,0x147D,0x047D,0x04BD,0x04DD,0x055C,0x1F3F,0x177D,0x0F9C,0x07BC,0x07BC,0x07BC,0x0FBC,0x177C,0x277D,0x36FD,0x5EBE,0x6D5B,0x6AB3,0x9212,0xA1D3,0xB1D3,0xB9B3,0xB9B3,0xC1B3,0xC1B3,0xC1D4,0xC1B3,0xB973,0xB993,0xB9B3,0xB9B3,0xB1B3,0xB1D3,0xB234,0xB2B6,0x68F0,0x50CF,0x5131,0x4131,0x3931,0x3951,0x3951,0x3151,0x3151,0x3131,0x3131,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2930,0x290F,0x290F,0x2910,0x2910,0x210F,0x290F,0x2910,0x2910,0x2930,0x2930,0x2110,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x212F,0x292F,0x292F,0x212F,0x292F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1932,0x1112,0x19B5,0x2217,0x2217,0x1995,0x0933,0x1112,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x1930,0x1931,0x1932,0x1133,0x1154,0x21F8,0x2218,0x19F8,0x1196,0x1155,0x0913,0x1112,0x1952,0x1931,0x1131,0x1931,0x1131,0x1112,0x0933,0x1174,0x19B5,0x19B6,0x19F7,0x19F7,0x19D6,0x19B5,0x1174,0x1173,0x1132,0x1111,0x1111,0x1911,0x1952,0x1952,0x1112,0x1153,0x0954,0x1196,0x19F7,0x2218,0x19D6,0x1174,0x1132,0x1911,0x2131,0x2111,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2910,0x2930,0x2110,0x2930,0x2910,0x2110,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x212F,0x212F,0x290F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x2130,0x2930,0x2110,0x2930,0x292F,0x2930,0x2930,0x292F,0x212F,0x212F,0x2930,0x212F,0x2930,0x2110,0x2930,0x2130,0x2130,0x2930,0x212F,0x212F,0x212F,0x2130,0x2930,0x292F,0x292F,0x292F,0x290F,0x292F,0x2930,0x2930,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x2130,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x292F, + 0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x290F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1911,0x1931,0x1932,0x1932,0x1911,0x1911,0x1932,0x1931,0x1911,0x1932,0x1932,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1952,0x1931,0x1931,0x1931,0x1931,0x1932,0x1911,0x1911,0x1911,0x1911,0x1932,0x1932,0x1932,0x1932,0x1932,0x1911,0x1912,0x1932,0x1932,0x1932,0x1911,0x1911,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2910,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x2110,0x2930,0x2110,0x2110,0x2910,0x2110,0x2110,0x210F,0x2130,0x2110,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2930,0x2910,0x2910,0x2910,0x2110,0x2910,0x2110,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x212F,0x292F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2910,0x210F,0x20EF,0x2930,0x2930,0x2910,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x2110,0x2930,0x2930,0x2110,0x2910,0x290F,0x2110,0x2110,0x212F,0x210F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2910,0x2910,0x2910,0x212F,0x212F,0x292F,0x212F,0x292F,0x292F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x212F,0x210F,0x2930,0x2930,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x20EE,0x20AD,0x492F,0xBC19,0xBBB7,0xBB76,0xBB75,0xAB54,0xA3D5,0xEF7F,0xD77F,0xCF7F,0xC75E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xB75E,0xB75E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xC77F,0xCF5F,0xDEDF,0x8B54,0x81D0,0x99D2,0xA1D3,0xA9F3,0xB1D3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9B3,0xB1B3,0xB1B2,0xA9B2,0xA1F2,0x91F1,0xA375,0xEE9F,0xEF1F,0xE71F,0xDF1F,0xD6FF,0xD6FF,0xDEFF,0xDEFF,0xE6FF,0xEE7F,0x9B75,0x8A11,0x99D2,0xA9B2,0xB1B3,0xB1D3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xB9B3,0xB9D3,0xB1B2,0xA9B2,0xA1D2,0x9211,0xB438,0xEEBF,0xE6FF,0xDEFF,0xD6FF,0xD6FF,0xD6FF,0xD71F,0xDEFF,0xE6FF,0xEE9F,0xA395,0x91F1,0xA1D2,0xA9B2,0xB1B3,0xB1B3,0xB1B3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9F3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9B3,0xB9B3,0xB993,0xB192,0xA9B2,0x91D0,0xCD5B,0xE73F,0xCF7F,0xC77E,0xBF7E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xC75E,0xC75F,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF3E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xB75E,0xB75E,0xB75E,0xBF5E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xBF5E,0xB75E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF7F,0xBF7F,0xBF7F,0xBF7F,0xBF5E,0xBF7E,0xC77E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75F,0xC75E,0xC75E,0xC75E,0xC75E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF3E,0xBF3E,0xBF3E,0xBF3E,0xBF3E,0xBF3E,0xBF3E,0xBF5E,0xBF5F,0xC77F,0xD75F,0xCE3E,0x9375,0x81F1,0x99F2,0xA9F2,0xB1F3,0xB1F3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D4,0xB9F4,0xB9D3,0xB1D3,0xB1D3,0xA192,0x89D0,0xB478,0xE71F,0xD75F,0xC75F,0xC75F,0xC73E,0xC73F,0xC73F,0xC73F,0xC73F,0xCF3F,0xDF7F,0xEF7F,0xF75F,0xF75F,0xFF5F,0xFF5F,0xFF3F,0xFF3F,0xFF3F,0xFF1F,0xFF1F,0xFF3F,0xFF3F,0xFF1F,0xFF3F,0xFF3F,0xFF5F,0xF73F,0xEF5F,0xD75F,0xC73F,0xC75F,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xC75F,0xC75E,0xC75E,0xC75E,0xC75E,0xC75F,0xC77F,0xC75F,0xC75F,0xC75F,0xCF5F,0xCF5F,0xCF5F,0xCF5F,0xCF5F,0xCF3F,0xD73F,0xD73F,0xD71F,0xDF1F,0xE71F,0xEEFF,0xFEBF,0xB3B5,0xBB54,0xC335,0xCB35,0xCB35,0xCB35,0xD335,0xD335,0xD335,0xD335,0xD335,0xD335,0xDB35,0xDB35,0xDB35,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB35,0xDB36,0xDB16,0xDB16,0xDB37,0xDB37,0xDB38,0xD359,0xCB7B,0x6935,0x58F5,0x4052,0x4811,0x89B7,0xB279,0xC237,0xCA37,0xC9F6,0xC9F5,0xC9F5,0xCA15,0xCA15,0xCA15,0xC9F5,0xC215,0xC215,0xB235,0xA236,0x8A77,0x6B19,0x63FC,0x4C7E,0x3CBF,0x249E,0x149D,0x049D,0x04BD,0x04DD,0x053C,0x1F3E,0x0F7C,0x0F9C,0x07BC,0x07BC,0x07BC,0x0FBC,0x179C,0x279E,0x3F3E,0x5EBE,0x6D7B,0x6AB3,0x9213,0xAA13,0xB9D3,0xB193,0xB9B3,0xB9B3,0xB993,0xC1B3,0xB993,0xC1B4,0xB993,0xB9B3,0xB9B3,0xB9B3,0xB1D4,0xB1F4,0xAA35,0x9A34,0x58AF,0x4910,0x4130,0x4151,0x3951,0x3971,0x3151,0x3151,0x3171,0x3150,0x2930,0x2930,0x2930,0x3150,0x2930,0x2930,0x2930,0x2930,0x292F,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x210F,0x2930,0x2910,0x2910,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2110,0x2130,0x2130,0x212F,0x210F,0x210F,0x292F,0x212F,0x292F,0x292F,0x292F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x2130,0x2130,0x2110,0x2130,0x2151,0x1931,0x1930,0x1910,0x1910,0x2131,0x2131,0x1931,0x1930,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x1910,0x1931,0x1932,0x1133,0x19B5,0x21F7,0x2217,0x19D6,0x1133,0x1132,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1133,0x19B6,0x2238,0x19F8,0x11B7,0x1196,0x1154,0x0912,0x1112,0x1952,0x1951,0x1131,0x1131,0x1152,0x1174,0x19D6,0x19F7,0x19D7,0x19F7,0x1A18,0x1A18,0x1A18,0x11D7,0x11D6,0x1195,0x1153,0x1132,0x10F1,0x1111,0x1952,0x1953,0x1112,0x1132,0x0933,0x1195,0x19D7,0x1A18,0x19D7,0x1195,0x1133,0x1112,0x1911,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x212F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x2910,0x2110,0x2130,0x210F,0x210F,0x210F,0x292F,0x292F,0x212F,0x2130,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x2930,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x292F,0x292F, + 0x210F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2930,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x2930,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1911,0x2131,0x2131,0x2131,0x2111,0x2131,0x1931,0x1911,0x1911,0x1911,0x1911,0x2131,0x2111,0x1911,0x1911,0x1931,0x1911,0x1931,0x2131,0x1931,0x1910,0x1911,0x1911,0x2131,0x2131,0x2111,0x2131,0x2111,0x1911,0x1931,0x2131,0x1911,0x2131,0x1931,0x1911,0x2111,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2910,0x290F,0x290F,0x290F,0x292F,0x210F,0x212F,0x212F,0x210F,0x2130,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2110,0x210F,0x2130,0x2930,0x212F,0x210F,0x292F,0x210F,0x292F,0x210F,0x2110,0x2930,0x2910,0x2910,0x2110,0x2910,0x2910,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x210F,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x210F,0x2910,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2110,0x2110,0x2930,0x212F,0x2930,0x2110,0x290F,0x290F,0x2110,0x2110,0x2130,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x212F,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x212F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x210F,0x20EE,0x20AD,0x494F,0xBC19,0xBBB6,0xBB55,0xB355,0xAB34,0xABF5,0xEF5F,0xCF5E,0xC73E,0xC75E,0xBF5E,0xBF3E,0xB73E,0xB73E,0xB75E,0xB73E,0xB73E,0xBF5E,0xBF5E,0xBF7F,0xC77F,0xD75F,0xCDDD,0x8271,0x91F1,0xA1D2,0xA9F3,0xB1F3,0xB1F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xC1D4,0xC1D3,0xC1D3,0xC1F3,0xC1D3,0xB9D3,0xB9D3,0xB9B3,0xB1B3,0xA9B2,0xA1F2,0x81D0,0xCCBA,0xEEBF,0xDF1F,0xD73F,0xCF3F,0xC73F,0xC71F,0xC71F,0xC71F,0xCF3F,0xCF3F,0xDF1F,0xE6BF,0xBC79,0x89F1,0x99F2,0xA9B2,0xB1D3,0xB1B3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xC1D3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9B3,0xB9D3,0xB1B2,0xA9B2,0xA1F2,0x89F1,0xDD7C,0xE6DF,0xD6FF,0xCF3F,0xC71F,0xC71F,0xC73F,0xC73F,0xC73F,0xCF3F,0xCF3F,0xDF1F,0xE6BF,0xC4BA,0x89F1,0xA1D2,0xA9B2,0xB1D3,0xB1B3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9B3,0xB9B3,0xB9B3,0xB192,0x99D1,0x9B54,0xE6DF,0xD75F,0xC75F,0xBF7F,0xBF5E,0xBF5E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xBF3E,0xBF5E,0xB73E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xC75F,0xC75F,0xC75F,0xC75F,0xC75F,0xC75F,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xC73E,0xBF3E,0xBF3E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB73E,0xB73E,0xB75E,0xB75E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5F,0xC75F,0xC77F,0xC77F,0xC77F,0xC77F,0xC77F,0xC75E,0xC75E,0xC75E,0xC75E,0xC75E,0xCF5F,0xC75E,0xC75F,0xC73E,0xC73E,0xC73E,0xC73E,0xC73E,0xC75F,0xC75E,0xC73E,0xC75F,0xBF3E,0xBF5E,0xBF3E,0xBF3E,0xBF3E,0xBF3E,0xBF3E,0xBF3E,0xBF3E,0xBF5E,0xBF5E,0xC77F,0xD75F,0xCE3E,0x9354,0x89F1,0x99F2,0xA1D2,0xB1F3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D4,0xC1F4,0xB9F4,0xB9D3,0xB1D3,0xB1D3,0xA192,0x89B0,0xB478,0xE71F,0xD73F,0xC75F,0xC75F,0xBF3E,0xBF3E,0xBF3E,0xC73F,0xC73F,0xC75F,0xCF5F,0xD73F,0xD73E,0xDF3E,0xDF3E,0xE73E,0xE71E,0xE71F,0xEF1F,0xEF1F,0xE6FE,0xEF1F,0xE71E,0xE71E,0xE71E,0xDF1E,0xDF1E,0xD73E,0xD73E,0xCF3F,0xC75F,0xBF5E,0xBF5E,0xBF5E,0xB75E,0xB73E,0xB73E,0xBF5E,0xBF5E,0xB73E,0xB73E,0xB73E,0xB73E,0xB75E,0xB75E,0xB75E,0xB75E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xC75F,0xC75F,0xC75F,0xC75F,0xC75F,0xC75F,0xCF7F,0xCF7F,0xCF5F,0xCF5F,0xCF5E,0xCF5F,0xCF3E,0xCF3F,0xCF3F,0xD73F,0xD73F,0xD71F,0xD71F,0xD71F,0xDEFF,0xDF1F,0xE6FF,0xF6DF,0xFE7F,0xC417,0xBB34,0xC334,0xCB35,0xCB35,0xCB35,0xD335,0xD335,0xD335,0xD335,0xD335,0xD315,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDAF5,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB15,0xDB16,0xDB16,0xDB17,0xDB37,0xDB38,0xD359,0xC33B,0x4873,0x40B5,0x40B6,0x48B5,0x5074,0x9A19,0xBA59,0xC237,0xC1F6,0xCA16,0xC9F5,0xC9F5,0xC9F5,0xC9F4,0xC9F5,0xC1F5,0xC215,0xB235,0xA236,0x8276,0x7319,0x63FC,0x4C7E,0x3CBF,0x24BE,0x149E,0x049D,0x04BD,0x04DD,0x053C,0x1F1E,0x177C,0x0F9C,0x07BC,0x07BC,0x0FBC,0x0FBC,0x179C,0x277D,0x371E,0x56BE,0x6D5B,0x6293,0x9233,0xA1D3,0xB1B3,0xB9B3,0xB993,0xC1B4,0xC1B3,0xC1B3,0xB993,0xC1B3,0xB9B3,0xB993,0xB9B3,0xB9D4,0xB1D3,0xB1D4,0xAA14,0xAA96,0x6931,0x48EF,0x4931,0x3931,0x3951,0x3951,0x3151,0x3151,0x3151,0x2930,0x3150,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x292F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x290F,0x292F,0x290F,0x210F,0x2930,0x290F,0x290F,0x2930,0x210F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x212F,0x292F,0x290F,0x210F,0x212F,0x292F,0x292F,0x212F,0x2130,0x2130,0x2130,0x1930,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1951,0x1931,0x1931,0x1951,0x1951,0x1931,0x2130,0x2131,0x2130,0x2130,0x2130,0x1910,0x1931,0x1132,0x1133,0x19B5,0x2217,0x2218,0x19D6,0x1133,0x1112,0x1931,0x2130,0x2130,0x2130,0x212F,0x2130,0x2930,0x2130,0x2110,0x2130,0x1931,0x1932,0x1132,0x0953,0x19F7,0x2238,0x19D7,0x11B6,0x1195,0x1133,0x1112,0x1131,0x1951,0x1931,0x1131,0x1131,0x1994,0x19D5,0x19F6,0x11D7,0x11D7,0x19F8,0x11F8,0x11F8,0x11F8,0x11F8,0x11F7,0x11B6,0x1195,0x1174,0x1132,0x1112,0x1932,0x1932,0x1912,0x1112,0x1133,0x1175,0x1196,0x19F8,0x1A18,0x1196,0x1154,0x1132,0x1911,0x2111,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2930,0x2110,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2110,0x2110,0x2930,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x290F,0x2930,0x290F,0x2930,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x2930,0x2130,0x210F,0x210F,0x212F,0x212F,0x2930,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F, + 0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x2110,0x2930,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x2930,0x210F,0x210F,0x292F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x2930,0x2930,0x2910,0x2910,0x2910,0x290F,0x290F,0x2910,0x290F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x1910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2131,0x2131,0x2131,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x2130,0x212F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2150,0x2130,0x212F,0x210F,0x212F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x2110,0x2910,0x2910,0x2910,0x2110,0x2910,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x290F,0x210F,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x290F,0x210F,0x210F,0x2110,0x290F,0x2910,0x210F,0x2910,0x2930,0x2930,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x2930,0x2930,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x290F,0x292F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x210F,0x20EE,0x20AD,0x492F,0xBBF8,0xBB96,0xB355,0xB335,0xA334,0xAC16,0xE75F,0xCF5F,0xC71E,0xBF3E,0xBF3E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB75E,0xBF7E,0xC79F,0xDF7F,0xA416,0x81F0,0x99F2,0xA1D2,0xA9D3,0xB1F3,0xB9F3,0xB9D3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xB9D3,0xB9B3,0xB9B3,0xB1B2,0xA1D2,0x9231,0xE61F,0xE6FF,0xD71F,0xCF3F,0xC73F,0xC73F,0xBF1E,0xBF3F,0xBF3F,0xC73F,0xC73F,0xC73E,0xC73F,0xD71F,0xE6DF,0xB478,0x8A11,0x99D2,0xA9D3,0xB1B3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9B3,0xB9B3,0xB1B2,0xA1F2,0x9231,0xEE3F,0xE71F,0xD71F,0xCF3F,0xC75F,0xBF3F,0xBF1E,0xBF3E,0xBF3E,0xC75F,0xC75F,0xC73F,0xC71E,0xD71F,0xE6DF,0xB478,0x89F1,0xA1D2,0xA9B3,0xB1B3,0xB1D3,0xB1D3,0xB9D3,0xB9D3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xC1D3,0xB9D3,0xB9D3,0xB9B3,0xB9B3,0xB9B2,0xB192,0xA1D2,0x9292,0xE65F,0xD73F,0xC75F,0xBF5E,0xBF5E,0xBF5E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xC75F,0xC75F,0xC75F,0xCF5F,0xCF7F,0xCF5F,0xCF5F,0xCF5F,0xD75E,0xD75E,0xD75E,0xD75E,0xD75E,0xD75E,0xCF5E,0xCF5E,0xCF3E,0xCF3F,0xCF3E,0xCF3E,0xCF3E,0xCF3F,0xC73F,0xC73E,0xC75F,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF3E,0xBF5E,0xBF5E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73D,0xB75E,0xB75E,0xB73D,0xB73E,0xB73E,0xB73E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xB73D,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xC75F,0xC75F,0xC75F,0xC75F,0xCF5F,0xCF5F,0xCF5F,0xCF5F,0xCF7F,0xCF5E,0xCF5E,0xD75E,0xD75E,0xD75E,0xD75E,0xD75F,0xCF3F,0xCF3F,0xCF3F,0xCF3F,0xCF3F,0xCF3F,0xCF3F,0xC73F,0xC73F,0xC73E,0xC75E,0xBF3E,0xBF3E,0xBF3E,0xBF3E,0xBF3E,0xBF1E,0xBF1E,0xBF3E,0xBF3E,0xBF3E,0xC73F,0xCF3F,0xD65E,0x8B34,0x81F0,0xA1F2,0xA9D2,0xB1F3,0xB1F3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xC1D4,0xB9D4,0xC1F4,0xB9F4,0xB9D3,0xB9D3,0xB1D3,0xA9B2,0x91D0,0xB437,0xE6FF,0xD73F,0xC73F,0xBF3E,0xBF3E,0xBF3E,0xBF1E,0xBF3E,0xBF3E,0xC73E,0xC71F,0xCF1F,0xD71F,0xD71F,0xDF1F,0xDF1F,0xE71F,0xE71F,0xE71F,0xE6FF,0xE6FF,0xE71F,0xE71F,0xE71F,0xDF1F,0xDF1F,0xDF3F,0xD71E,0xCF1F,0xC73F,0xC73F,0xBF5E,0xBF5E,0xBF5E,0xB73E,0xBF5E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB75E,0xB75E,0xB75E,0xB75E,0xB75E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xC75F,0xC75F,0xC75F,0xCF5F,0xCF5F,0xCF5F,0xCF5F,0xD75E,0xD75E,0xD75F,0xD75F,0xD75F,0xD75F,0xD75E,0xD73E,0xD73F,0xD71F,0xDF1F,0xDF1F,0xDEFF,0xDEFF,0xDEFF,0xE6FF,0xE6FF,0xEEDF,0xF6DF,0xFEBF,0xCC57,0xBB14,0xC314,0xCB15,0xCB15,0xD315,0xD315,0xD315,0xD315,0xD315,0xD315,0xD2F5,0xD315,0xDB15,0xDB15,0xDB15,0xDAF5,0xDAF5,0xDB15,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF6,0xDAF6,0xDB17,0xDB17,0xD338,0xD359,0xBB1B,0x4094,0x40D6,0x40F7,0x40F7,0x48B6,0x4853,0xB27A,0xBA38,0xC217,0xC1F6,0xC9F5,0xCA15,0xC9F5,0xC9F5,0xC9F5,0xC9F5,0xC215,0xB215,0xA235,0x8A76,0x7319,0x63FC,0x547E,0x3CBF,0x24BE,0x14BE,0x0CBD,0x04BD,0x04FD,0x053B,0x16FD,0x177C,0x0F9C,0x079B,0x07BB,0x07BC,0x0F9C,0x179C,0x277D,0x371E,0x56BE,0x6D5B,0x6293,0x9213,0xAA14,0xB1D3,0xB9B3,0xB9B4,0xB993,0xC1D4,0xB993,0xB993,0xB993,0xB993,0xB993,0xB9B3,0xB9D3,0xB9D3,0xB1D3,0xB214,0xB296,0x81B3,0x50D0,0x4110,0x3931,0x3931,0x3951,0x3151,0x3151,0x3151,0x3130,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x2930,0x2130,0x2130,0x2110,0x1910,0x1910,0x1131,0x1152,0x1152,0x1132,0x1132,0x1132,0x1952,0x1952,0x1131,0x1131,0x1952,0x1952,0x1931,0x1910,0x2151,0x2151,0x2131,0x2131,0x1931,0x1932,0x1953,0x1133,0x1995,0x2217,0x2218,0x19B6,0x1133,0x1111,0x1931,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2131,0x1931,0x1132,0x0953,0x19D6,0x1A18,0x11B6,0x1196,0x1175,0x1133,0x1112,0x1931,0x1931,0x1951,0x1131,0x1973,0x1174,0x19D6,0x11D7,0x11D7,0x11B7,0x11B7,0x09B7,0x09B7,0x11B7,0x11D8,0x11D7,0x11F7,0x19D7,0x1195,0x1974,0x1112,0x1912,0x1932,0x1932,0x1112,0x1133,0x1154,0x1196,0x11D7,0x19F8,0x11D7,0x1175,0x1133,0x1912,0x1911,0x2110,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2130,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x290F,0x290F,0x2930,0x290F,0x2930,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2930,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2150,0x2150,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x212F,0x292F,0x2930,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x210F,0x210F,0x212F,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130, + 0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x2930,0x210F,0x2930,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x2110,0x210F,0x2110,0x2110,0x2110,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x2930,0x212F,0x292F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2110,0x2110,0x210F,0x210F,0x2110,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x210F,0x210F,0x212F,0x292F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x212F,0x292F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2930,0x2930,0x210F,0x2910,0x2930,0x2930,0x290F,0x292F,0x210F,0x212F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2110,0x2110,0x210F,0x290F,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2930,0x2910,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x210F,0x20EE,0x28AD,0x492F,0xBC19,0xBB96,0xB335,0xAB14,0xA314,0xAC16,0xE75F,0xCF5F,0xC73E,0xBF3E,0xBF3E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB75E,0xBF5E,0xBF7E,0xC77F,0xDF5F,0x82B2,0x89D1,0x99D2,0xA1D2,0xA9F3,0xB9F3,0xB9D3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xB9D3,0xB9D3,0xB1B2,0xA9D2,0x9211,0xDD7C,0xE6FF,0xCF1F,0xC73F,0xC73F,0xBF3E,0xBF3E,0xBF3F,0xBF3E,0xBF3E,0xBF1E,0xBF3E,0xBF3E,0xBF5F,0xC73F,0xD73F,0xE6DF,0xA3D6,0x8A11,0xA1D2,0xA9B2,0xB1B3,0xB1D3,0xB9D3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9B3,0xB9B2,0xA9D2,0x9211,0xDD5C,0xE71F,0xCF3F,0xC73F,0xBF5F,0xBF5E,0xBF3E,0xB71E,0xBF1E,0xBF1E,0xBF3E,0xBF3E,0xBF5F,0xBF5F,0xC73F,0xCF1F,0xE6DF,0xABD7,0x91F1,0xA1D2,0xB1B3,0xB1B3,0xB9D3,0xB9D3,0xB9D3,0xB9F3,0xB9F3,0xB9D3,0xC1D3,0xC1D3,0xB9D3,0xB9D3,0xB9B3,0xB9B3,0xB9B3,0xB192,0xA9B2,0x91F1,0xDDBD,0xDF1F,0xC75F,0xBF5E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xBF5E,0xBF5E,0xBF5E,0xBF7F,0xC75F,0xCF5F,0xCF3F,0xD73F,0xDF3F,0xDF1F,0xE71F,0xEF3F,0xEF3F,0xF73F,0xF73F,0xF73F,0xF73F,0xF73F,0xF73F,0xF73F,0xF73F,0xEF1F,0xEF1F,0xE6FF,0xE6FF,0xE71F,0xDF1F,0xDF1F,0xD71F,0xD73F,0xCF3F,0xC75F,0xC75E,0xBF3E,0xBF3E,0xBF5E,0xBF3E,0xBF3E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73D,0xB73E,0xB73E,0xB73E,0xB73D,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73D,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xBF5E,0xBF5E,0xBF5E,0xBF3E,0xC75F,0xCF5F,0xD73F,0xD73F,0xDF3F,0xE73F,0xEF3F,0xEF5F,0xF75F,0xF75F,0xF73F,0xF73F,0xF75F,0xF73F,0xF75F,0xF73F,0xEF3F,0xEF1F,0xEF1F,0xE71F,0xE71F,0xE6FF,0xDF1F,0xDF1F,0xD71F,0xD71F,0xCF3F,0xC73E,0xC73E,0xC73E,0xBF3E,0xBF3E,0xBF1E,0xBF1E,0xBF1E,0xBF1E,0xBF3E,0xBF3E,0xC73F,0xCF1F,0xD65E,0x8B13,0x89F1,0xA1F2,0xA9F2,0xB1F3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xC1D3,0xC1D4,0xC1D4,0xC1F4,0xC1F4,0xB9D3,0xB1D3,0xB1D3,0xA1B1,0x91D0,0xB437,0xE6FF,0xD73F,0xC73F,0xBF1E,0xBF1E,0xBF1E,0xBF1E,0xBF3E,0xC73F,0xC73F,0xCF1F,0xCEFF,0xD6FF,0xDF1F,0xDF1F,0xE6FF,0xE6FF,0xE6FF,0xEEFF,0xEEFF,0xEEFF,0xEEDF,0xEEFF,0xEEFF,0xE6FF,0xE6FF,0xDEFF,0xD6FF,0xD71F,0xCF3F,0xC73F,0xBF3E,0xBF3E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xBF5E,0xB73E,0xB73E,0xB73E,0xB75E,0xB75E,0xB75E,0xB75E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xBF5E,0xC75F,0xCF5F,0xCF3F,0xD73F,0xDF3F,0xE71F,0xEF3F,0xF75F,0xF73F,0xF75F,0xFF3F,0xFF3F,0xFF3F,0xFF3F,0xFF3F,0xFF3F,0xFF3F,0xF6FF,0xF6FF,0xEEDF,0xEEDF,0xEEDF,0xEEDF,0xEEDF,0xF6DF,0xF6DF,0xF6DF,0xFEBF,0xFE7F,0xDC99,0xB2F4,0xC314,0xCB15,0xCB15,0xD315,0xD2F5,0xD2F5,0xD2F5,0xD315,0xD2F5,0xD2F5,0xD315,0xDAF5,0xD2F5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF5,0xDAF6,0xDAF6,0xD2F6,0xDB17,0xD338,0xCB5A,0xB2FB,0x4094,0x38F7,0x4118,0x4139,0x38F7,0x48D6,0x7957,0xB279,0xC238,0xC1D5,0xC1D5,0xC1F5,0xC9F5,0xC9F5,0xC9F5,0xC9F5,0xC1F5,0xB215,0xA215,0x8A76,0x7319,0x6C1C,0x549E,0x3CBE,0x2CDE,0x1CDE,0x0CBD,0x04DD,0x04FD,0x055B,0x16DD,0x0F5C,0x0F7C,0x0FBC,0x07BC,0x07BB,0x0F9C,0x179C,0x1F7D,0x373E,0x5EDF,0x6D5B,0x6293,0x8A13,0xA1D3,0xB9F4,0xB193,0xB9B4,0xC1B3,0xB993,0xC1D4,0xB993,0xB993,0xB993,0xB9B3,0xB9B3,0xB9B3,0xB9D4,0xB1D3,0xBA35,0xB276,0xA296,0x5911,0x40F0,0x3910,0x3931,0x3151,0x3151,0x3151,0x3151,0x3151,0x3150,0x3150,0x2930,0x2950,0x2930,0x2930,0x292F,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2930,0x290F,0x2930,0x290F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1131,0x1153,0x1194,0x19B5,0x1995,0x19B5,0x1995,0x19B5,0x1994,0x1173,0x1173,0x1153,0x1952,0x1931,0x1931,0x2131,0x2151,0x2131,0x2131,0x2151,0x1932,0x1153,0x1133,0x1195,0x19F7,0x19F7,0x19D6,0x0912,0x1112,0x1931,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x2930,0x2130,0x2130,0x2131,0x1931,0x1153,0x0953,0x19D6,0x2218,0x11B6,0x1195,0x1154,0x1133,0x1111,0x1951,0x1951,0x1931,0x1152,0x1173,0x11B5,0x19D6,0x11D6,0x11B7,0x0996,0x0996,0x0976,0x0976,0x0976,0x0996,0x11D7,0x11D7,0x11D7,0x19D6,0x1994,0x1133,0x1932,0x1912,0x1932,0x1112,0x1112,0x1154,0x1196,0x11D7,0x1A18,0x19D7,0x1195,0x1133,0x1912,0x1911,0x2110,0x2130,0x2110,0x2130,0x210F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2910,0x290F,0x290F,0x212F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x2930,0x2110,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2930,0x2930,0x212F,0x210F,0x210F,0x210F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130, + 0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2130,0x2930,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x210F,0x290F,0x210F,0x2910,0x2910,0x290F,0x210F,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x290F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x212F,0x2130,0x2110,0x2130,0x210F,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2130,0x2110,0x2130,0x2110,0x210F,0x212F,0x2130,0x2130,0x2110,0x210F,0x2130,0x2110,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x2930,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2910,0x2910,0x210F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x212F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2930,0x210F,0x2930,0x2930,0x292F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x290F,0x2930,0x2110,0x2930,0x2930,0x210F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x292F,0x210F,0x212F,0x292F,0x210F,0x2110,0x210F,0x2110,0x2130,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x292F,0x212F,0x210F,0x28EE,0x28AD,0x492F,0xBC19,0xBB96,0xB335,0xAAF4,0xA314,0xAC16,0xE73F,0xCF5F,0xBF1E,0xBF3E,0xB73E,0xB71E,0xB71E,0xB71E,0xB73E,0xB73D,0xB73E,0xB73E,0xB75E,0xBF7F,0xC75F,0xDF1F,0x7A51,0x91F1,0x99D2,0xA9D2,0xB1F3,0xB9F3,0xB9F3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9B3,0xB9B3,0xB9B3,0xB1D2,0x99F1,0xB3F7,0xE6BF,0xD71F,0xC73F,0xBF1E,0xBF3E,0xBF1E,0xBF3F,0xBF3E,0xB73E,0xB71E,0xB71E,0xB71E,0xB73E,0xB73E,0xBF3E,0xC75F,0xD71F,0xDE7E,0x9313,0x91F2,0xA1B2,0xA9B2,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1B3,0xC1D3,0xB9B3,0xB1B2,0xA1F2,0xA375,0xEEBF,0xD71F,0xC73F,0xBF3F,0xB73E,0xB71E,0xB71E,0xB71E,0xB71E,0xB71E,0xB71E,0xB73E,0xB73E,0xB73E,0xBF3E,0xC73F,0xD71F,0xDE5E,0x92F3,0x99F2,0xA9D3,0xB1B3,0xB1B3,0xB9D3,0xB9D3,0xB9F3,0xB9F3,0xC1F3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9B3,0xB9B3,0xB9B2,0xA9B2,0x99F1,0xB3F7,0xE71F,0xC73F,0xBF3E,0xBF3E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xBF5E,0xBF5E,0xBF5E,0xC75F,0xCF3F,0xD6FF,0xE6FF,0xE69F,0xDDFD,0xD55C,0xC458,0xA335,0x9A92,0x89F0,0x818F,0x816E,0x816E,0x814E,0x816E,0x89AF,0x9A52,0xAAF4,0xB396,0xBBF7,0xCC99,0xD4FB,0xDD7C,0xDDDD,0xE65E,0xE6DF,0xDF1F,0xD73F,0xCF3E,0xC75F,0xC75E,0xBF3E,0xBF3E,0xBF3E,0xBF3E,0xB73E,0xB73E,0xB73E,0xB71D,0xB73E,0xAF1D,0xB71D,0xB71D,0xAF1D,0xAF3D,0xAF3D,0xAF3E,0xAF3E,0xAF3E,0xB73E,0xAF3D,0xB73D,0xAF3D,0xAF1D,0xAF1D,0xB73E,0xB73E,0xB73D,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xBF3E,0xBF5E,0xC75F,0xC73F,0xCF1F,0xDF1F,0xE6BF,0xDE3E,0xD59C,0xCCFB,0xAB75,0x9292,0x89F0,0x818F,0x796E,0x794E,0x794E,0x818E,0x89CF,0x9251,0xA2D3,0xB376,0xC418,0xD4BA,0xD4FB,0xDD5C,0xDD9C,0xE63E,0xEE9F,0xE6FF,0xDF1F,0xCF1F,0xCF3F,0xC73F,0xC73E,0xBF3E,0xBF1E,0xBF1E,0xBF1E,0xBF1E,0xBF1E,0xBF3E,0xC73F,0xCF1F,0xD65E,0x8B33,0x89F1,0x99D2,0xA9D2,0xB1F3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xC1D3,0xC1D4,0xC1D3,0xC1D4,0xC1F4,0xB9D3,0xB9D3,0xB1F3,0xA1B1,0x91D0,0xAC37,0xE6FF,0xD73F,0xC73F,0xBF1E,0xBF1E,0xBF1E,0xBF1E,0xBF1E,0xC71F,0xCF1F,0xD71F,0xDEFF,0xE6FF,0xE6FF,0xEEDF,0xF6FF,0xF6DF,0xF6DF,0xFEDF,0xFEDF,0xFEBF,0xFEDF,0xFEDF,0xFEDF,0xF6DF,0xF6DF,0xEEDF,0xE6DF,0xDEFF,0xCF1F,0xC71F,0xBF3E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73D,0xB73D,0xB73E,0xB75E,0xB73E,0xBF5E,0xBF5E,0xBF5E,0xBF5E,0xBF7E,0xC75F,0xC75F,0xCF3F,0xD71F,0xE6DF,0xDE3E,0xD59C,0xC4B9,0xA355,0x9292,0x89F0,0x818F,0x814E,0x814E,0x814E,0x814E,0x898F,0x89AF,0x9A31,0xAB14,0xC3B7,0xCC59,0xE51C,0xED7D,0xED9D,0xF5DE,0xFE3F,0xFEBF,0xFEBF,0xFEBF,0xFE9F,0xFE9F,0xDC99,0xBB14,0xC315,0xCAF4,0xCAF5,0xD2F5,0xD2F5,0xD2D5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xDAF5,0xDAF5,0xDAF5,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xDAF5,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xDAF5,0xDAD5,0xDAF6,0xD2F6,0xD317,0xD338,0xCB5A,0xAB1B,0x3894,0x38F7,0x3939,0x3959,0x3118,0x38F7,0x50F6,0x9A5A,0xBA58,0xC217,0xC1F5,0xC1F5,0xC9F5,0xC9F5,0xC9F5,0xC1F5,0xC1F5,0xBA15,0xA1F5,0x8A36,0x7318,0x6C1C,0x549E,0x3CDE,0x2CDE,0x1CFE,0x0CBD,0x04DD,0x04FC,0x053B,0x16DD,0x177C,0x0F7B,0x079B,0x07BB,0x0FBC,0x0FBC,0x179C,0x1F7D,0x373E,0x56DE,0x655B,0x6293,0x9233,0xA9F3,0xB1B3,0xB9B4,0xB9B4,0xC1B4,0xC1D4,0xB993,0xB993,0xB9B3,0xB993,0xB9B4,0xB9B3,0xB9B3,0xB9B3,0xB193,0xA9B3,0xB255,0xB2F8,0x6952,0x40AF,0x38F0,0x3931,0x3951,0x3151,0x3151,0x3131,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x2930,0x2910,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x210F,0x210F,0x290F,0x210F,0x292F,0x290F,0x2910,0x290F,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x1931,0x1132,0x1153,0x11B5,0x11D6,0x19F7,0x19F7,0x19D7,0x19D7,0x19D7,0x19D6,0x19D6,0x19B5,0x1994,0x1153,0x1932,0x1911,0x1911,0x1911,0x1931,0x1931,0x1931,0x1932,0x1132,0x0933,0x19B6,0x2218,0x2217,0x11B5,0x0912,0x1111,0x1931,0x1930,0x2130,0x212F,0x212F,0x212F,0x292F,0x212F,0x2130,0x2130,0x1931,0x1932,0x1153,0x1174,0x19F7,0x2238,0x1196,0x1175,0x0934,0x1133,0x1932,0x1951,0x1951,0x1951,0x1152,0x1173,0x19F6,0x19D6,0x11B6,0x1196,0x1196,0x0975,0x0955,0x0955,0x0955,0x0975,0x09B7,0x11D7,0x11F8,0x19D7,0x1995,0x1974,0x1912,0x1932,0x1932,0x1912,0x10F2,0x1133,0x1175,0x11D7,0x11F8,0x19F7,0x1196,0x1153,0x1112,0x1911,0x1910,0x2110,0x2130,0x2110,0x2130,0x210F,0x2130,0x2130,0x2110,0x210F,0x2930,0x2110,0x2930,0x2910,0x290F,0x290F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2930,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2110,0x212F,0x212F,0x2110,0x210F,0x210F,0x290F,0x2930,0x290F,0x2930,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2130,0x2930,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2111,0x2111,0x2131,0x2131,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2151,0x2130,0x2131,0x2151,0x2131,0x2131,0x2131,0x2150,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130, + 0x210F,0x212F,0x210F,0x2930,0x2930,0x292F,0x210F,0x212F,0x2930,0x2930,0x2930,0x210F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x292F,0x290F,0x2110,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x2910,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x290F,0x212F,0x212F,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x210F,0x210F,0x2130,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x212F,0x212F,0x210F,0x212F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x210F,0x2930,0x290F,0x210F,0x2930,0x212F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x292F,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x210F,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2910,0x2930,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x212F,0x210F,0x210F,0x2130,0x210F,0x2130,0x210F,0x2110,0x2110,0x2110,0x2910,0x2930,0x210F,0x2930,0x212F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x290F,0x290F,0x2110,0x2930,0x212F,0x2930,0x290F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x2910,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x2950,0x2130,0x2930,0x2130,0x292F,0x292F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x212F,0x290F,0x28EE,0x28AD,0x492F,0xBBF9,0xBB76,0xB315,0xAAF4,0xA314,0xAC16,0xE73F,0xCF3F,0xBF1E,0xBF3E,0xB71E,0xB71E,0xB71D,0xAF1D,0xB71D,0xB71D,0xB73E,0xB73E,0xB75E,0xBF5F,0xCF5F,0xC63D,0x8251,0x91D1,0x99D2,0xA9D2,0xB1F3,0xB9F3,0xB9F3,0xB9D3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xB1B2,0xA9D2,0x89F1,0xEE5F,0xD6FF,0xCF1F,0xBF1E,0xBF1E,0xB71E,0xB73E,0xB71E,0xB73E,0xB71E,0xB71E,0xB71E,0xB71E,0xB71E,0xB73E,0xB73E,0xBF5E,0xC73F,0xD71F,0xCD9C,0x8A31,0x99D2,0xA9D2,0xB1B2,0xB9D3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D4,0xC1D3,0xC1D3,0xC1B3,0xC1D3,0xB9D3,0xB1D2,0x91F1,0xD59C,0xDEFF,0xCF3F,0xBF3F,0xB71E,0xB71E,0xB71E,0xB71E,0xB71E,0xB71E,0xB71E,0xB71E,0xB71E,0xB71E,0xB73E,0xB73E,0xBF5F,0xC73F,0xD6FF,0xC57B,0x8A31,0xA1D2,0xA9D3,0xB1B3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xC1D3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC1D4,0xC1B3,0xB9B3,0xB9B2,0xB1B2,0xA1D1,0xA334,0xE71F,0xC73F,0xBF3E,0xBF3E,0xB73E,0xB71E,0xB73E,0xB73E,0xB71E,0xB73E,0xB73E,0xB73E,0xBF3E,0xBF3E,0xC73F,0xCF1F,0xDF1F,0xEEFF,0xCD7B,0x9B95,0x92D2,0x8A31,0x89F0,0x91B0,0x99B1,0x9971,0xA191,0xA971,0xA971,0xA971,0xA971,0xA971,0xA971,0xA991,0xA191,0xA191,0x99B1,0x99B1,0x91D0,0x91F0,0x8A11,0x92B2,0x9B75,0xCD5B,0xF71F,0xE71F,0xD71F,0xCF1F,0xC73F,0xC73E,0xBF3E,0xBF3E,0xB73E,0xB73E,0xB71E,0xB71E,0xB71D,0xB71E,0xAF1D,0xB71D,0xAF1D,0xAF1D,0xAF3D,0xAF3D,0xAF3E,0xAF3D,0xAF3D,0xAF3D,0xAF3D,0xAF1D,0xAF1D,0xAF1E,0xAF1D,0xB71E,0xB73E,0xB73E,0xB73E,0xB71E,0xB73E,0xB73E,0xB73E,0xBF3E,0xBF3E,0xC73F,0xCF1F,0xDEFF,0xE6DF,0xAC77,0x9334,0x8A71,0x89F0,0x89B0,0x99B1,0x9991,0xA191,0xA171,0xA971,0xA151,0xA971,0xA971,0xA991,0xA191,0xA191,0xA1B1,0x99B1,0x99B1,0x91D0,0x91D0,0x9211,0x9272,0x92F3,0xA3D6,0xDE1E,0xEF1F,0xDEFF,0xD71F,0xC71E,0xC71E,0xBF1E,0xBF1E,0xBF1E,0xBF1E,0xBF1E,0xC71E,0xC71E,0xCEFF,0xD65E,0x8B13,0x89F1,0x99D2,0xA9D2,0xB1F3,0xB9F3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1F4,0xB9D3,0xB9D3,0xB1D3,0xA191,0x91D0,0xB457,0xDEFF,0xCF1F,0xC73F,0xBEFE,0xB71E,0xB71E,0xB71E,0xBF1E,0xC71F,0xC6DE,0x94B7,0xA477,0xAC78,0xAC57,0xAC17,0xB3F7,0xABB6,0xAB95,0xAB54,0xA334,0xA334,0xA334,0xA334,0xA334,0xA354,0xA375,0xA395,0x9BB5,0x8B93,0xAD9A,0xCF1F,0xBF3E,0xB73E,0xB73E,0xB71E,0xB73E,0xAF1E,0xB73E,0xB71E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xBF5E,0xBF5E,0xC75E,0xCF5F,0xD73F,0xDF1F,0xE6FF,0xB4F9,0x9354,0x8251,0x89F1,0x89B0,0x9190,0x9971,0xA171,0xA971,0xA951,0xA951,0xA951,0xA951,0xA971,0xA971,0xA971,0xA191,0xA1B1,0x99B1,0x99B0,0x99D1,0x99F1,0x9A52,0xA2B3,0xB354,0xED7C,0xFE9F,0xFE7F,0xFE5F,0xFE1F,0xE49A,0xBAD4,0xC2F4,0xCAF5,0xCAF5,0xD2D5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xD2B4,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xD2D6,0xD2F6,0xD2F7,0xD318,0xCB3A,0xAB1B,0x3894,0x3118,0x3139,0x315A,0x3139,0x3119,0x40F7,0x71B9,0xB27A,0xC237,0xB9D5,0xC1F5,0xC9F5,0xC9F5,0xC9D5,0xC1D4,0xC1D5,0xB9F5,0xA1F5,0x8A15,0x7B18,0x6C1C,0x5CBE,0x3CFE,0x2CFF,0x1CFE,0x0CFD,0x04FD,0x04FD,0x055B,0x0EBC,0x0F5C,0x0F7B,0x0FBB,0x07BB,0x07BB,0x0F9C,0x179C,0x1F7D,0x373D,0x56DE,0x655B,0x6293,0x9233,0xA1F3,0xB193,0xB9B3,0xB9B4,0xC1D4,0xC1B4,0xB9B4,0xB993,0xB173,0xB9B4,0xB9B3,0xB9D4,0xB9D3,0xB9D4,0xB1B3,0xA9D4,0xAA15,0xB2D8,0x79F4,0x40D0,0x3910,0x3931,0x3130,0x3151,0x3151,0x3151,0x3151,0x2950,0x2930,0x2930,0x2950,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x210F,0x290F,0x292F,0x290F,0x290F,0x2910,0x2910,0x290F,0x2910,0x2110,0x2110,0x2110,0x2110,0x2111,0x1932,0x1133,0x1195,0x11D7,0x11F8,0x11F8,0x11F8,0x11F8,0x11D7,0x11D7,0x11D7,0x19F7,0x19D6,0x19B5,0x1994,0x1953,0x1932,0x1931,0x1911,0x1931,0x1931,0x1911,0x1932,0x1133,0x1133,0x19B6,0x2217,0x2217,0x19B6,0x0912,0x1111,0x1931,0x2130,0x2150,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x2130,0x1931,0x1932,0x1153,0x1174,0x19F7,0x2218,0x1196,0x1175,0x1134,0x1133,0x1932,0x1952,0x1951,0x1951,0x1132,0x1994,0x19F6,0x11B6,0x1196,0x0976,0x0975,0x0955,0x0954,0x0934,0x0954,0x0955,0x0976,0x11F7,0x11D7,0x11D7,0x19B5,0x1954,0x1953,0x1912,0x1932,0x1912,0x1112,0x1113,0x1195,0x11D7,0x11D7,0x1A18,0x1196,0x1154,0x1132,0x1931,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x290F,0x2930,0x290F,0x2930,0x210F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2910,0x2910,0x2930,0x2930,0x2930,0x210F,0x2110,0x2930,0x210F,0x2930,0x290F,0x210F,0x2110,0x2930,0x2130,0x2130,0x2930,0x2930,0x2110,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2131,0x2131,0x2131,0x2152,0x1931,0x1931,0x1931,0x2132,0x2132,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2151,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x1931,0x2131,0x2131,0x1910,0x2131,0x2131,0x2131,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131, + 0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x2930,0x212F,0x292F,0x2930,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x212F,0x292F,0x210F,0x2930,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x290F,0x292F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x212F,0x2930,0x212F,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x212F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x210F,0x210F,0x2930,0x210F,0x210F,0x2130,0x2110,0x2910,0x290F,0x2910,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x210F,0x2110,0x2110,0x2910,0x2110,0x2930,0x2930,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2910,0x2910,0x210F,0x2930,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x212F,0x2130,0x292F,0x292F,0x210F,0x2910,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x210F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x210F,0x28EE,0x28AD,0x492F,0xBBF9,0xBB76,0xB2F4,0xAAF4,0xA2F3,0xAC16,0xDF1F,0xCF3F,0xBF1E,0xBF1E,0xB71E,0xAEFD,0xAEFD,0xAF1D,0xAF1D,0xAF1D,0xAF1E,0xB73E,0xB73E,0xBF5F,0xCF3F,0xBDBB,0x71CF,0x99F2,0xA1D2,0xA9D3,0xB213,0xB9F3,0xB9D3,0xB9D3,0xC1D3,0xC1F3,0xC1D3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9B3,0xB1D2,0xA1F1,0xB3B6,0xEEFF,0xCF1F,0xC71F,0xBF3F,0xB71E,0xB71E,0xB71E,0xB71E,0xB71E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xB73E,0xB75F,0xBF5F,0xC73F,0xE73F,0xA3B6,0x9211,0xA1D2,0xB1B2,0xB9D3,0xB9D3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1B3,0xC1B3,0xB9D3,0xA9D2,0x9251,0xF71F,0xCF1F,0xC73F,0xBF3F,0xB71E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xB73E,0xB73E,0xB73E,0xBF3E,0xCF1F,0xE71F,0x9B55,0x9A12,0xA9D2,0xB1B3,0xB1D3,0xB9D3,0xB9D3,0xC1D3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9B3,0xB9B3,0xB1D2,0xA9B1,0x89F0,0xEEFF,0xC71F,0xBF1E,0xBF1E,0xB71E,0xB71E,0xB71E,0xB71E,0xB71E,0xB71E,0xB73E,0xBF3E,0xC73F,0xCF1F,0xDEFF,0xD63E,0xB458,0x8210,0x89D0,0x91D1,0x99D1,0xA1B1,0xA1B2,0xA9B2,0xA992,0xB192,0xB192,0xB192,0xB992,0xB992,0xB992,0xB972,0xB992,0xB192,0xB192,0xB192,0xB1B2,0xB1B2,0xA9B2,0xA9B2,0xA1D1,0xA1D1,0x99D1,0x89D0,0x81CF,0xBC17,0xDDFD,0xE6FF,0xD71F,0xCF3F,0xC73E,0xBF3E,0xB71E,0xB71E,0xB71E,0xB71E,0xB71E,0xAF1E,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF3D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xB71E,0xB71E,0xB73E,0xAF1E,0xB73E,0xB73E,0xB73E,0xB73E,0xBF3E,0xBF3F,0xCF3F,0xD6FF,0xD61E,0xB458,0x79F0,0x89B0,0x91D1,0x99B1,0xA1B1,0xA1B2,0xA992,0xA992,0xB192,0xB192,0xB192,0xB192,0xB992,0xB1B2,0xB192,0xB192,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xA9B2,0xA9B2,0xA1B1,0xA1D1,0x99D1,0x91F1,0x81B0,0x9B14,0xDD9C,0xE6BF,0xD6FF,0xCEFE,0xC71E,0xC71E,0xBF1E,0xBF1E,0xBF1E,0xBF1E,0xC71E,0xCEFF,0xD63E,0x82F3,0x89F1,0x99D2,0xA9D3,0xB1F3,0xB9F3,0xB9F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1F4,0xC1F4,0xB9F3,0xB9D3,0xB1D3,0xA9B2,0x91D1,0xAC37,0xE6FF,0xCF1F,0xC73E,0xBF1E,0xB71E,0xB71E,0xB71E,0xBF1E,0xC6FF,0xCE9E,0x6AD1,0x69CF,0x79AF,0x81B0,0x8190,0x89B0,0x89B0,0x91B0,0x91B0,0x99B0,0x99B0,0x99B0,0x91B0,0x91B0,0x91B0,0x91B0,0x91D0,0x8A10,0x7A30,0xA4B8,0xCEFF,0xBF1E,0xB71E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAF1D,0xAF1D,0xAF1E,0xAF1D,0xB73D,0xB73E,0xB73E,0xB73E,0xB73E,0xB73E,0xBF3E,0xC73E,0xCF3F,0xD71F,0xD63E,0xB458,0x8210,0x81B0,0x89B0,0x99B1,0x99B1,0xA191,0xA992,0xB192,0xB172,0xB172,0xB972,0xB972,0xB972,0xB972,0xB972,0xB972,0xB972,0xB192,0xB192,0xB1B2,0xB192,0xB1B2,0xA9B2,0xA9B2,0xA9B1,0xA1B1,0x9990,0x99F1,0xECDB,0xFDFF,0xFE1F,0xFE1F,0xEC9A,0xC315,0xC2F4,0xCAD5,0xCAD5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xDAD5,0xDAD5,0xDAB5,0xDAB5,0xDAB5,0xDAB5,0xDAB5,0xDAB5,0xDAB5,0xDAB5,0xDAB5,0xDAD5,0xDAD5,0xDAD5,0xDAD5,0xD2D6,0xD2D6,0xD2F7,0xD318,0xC31A,0xB33C,0x3095,0x3118,0x3139,0x315A,0x295A,0x313A,0x3939,0x48F6,0xAA9B,0xBA58,0xB9F6,0xC1F6,0xC1F5,0xC9F5,0xC1D5,0xC1D5,0xC1F5,0xB9F5,0xA1D5,0x8A15,0x7AF8,0x743C,0x5CDE,0x451F,0x2D1F,0x1CFE,0x0CFD,0x04FD,0x051C,0x055B,0x0EBC,0x0F3B,0x0F9B,0x0FBB,0x0FDB,0x07BB,0x0F9B,0x177C,0x1F7D,0x373D,0x5EDE,0x653A,0x6293,0x8A33,0xAA14,0xB1D4,0xB9B4,0xB9B4,0xB9B4,0xB993,0xC1D4,0xB173,0xB993,0xB9B4,0xB993,0xB193,0xB9D4,0xB1D3,0xA9B3,0x9972,0xAA55,0xAAF8,0x92B7,0x5131,0x4131,0x3931,0x3151,0x3151,0x3151,0x3150,0x2930,0x2930,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x2930,0x2910,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2131,0x2131,0x1932,0x1153,0x19B6,0x19F7,0x11F8,0x11D8,0x11F8,0x11D7,0x0997,0x0996,0x1196,0x11D7,0x19F7,0x19D6,0x19B5,0x1974,0x1953,0x1932,0x1931,0x1931,0x1931,0x1931,0x1932,0x1133,0x0933,0x1995,0x19F7,0x19F7,0x19D6,0x0933,0x1111,0x1931,0x2130,0x2130,0x292F,0x210F,0x212F,0x210F,0x210F,0x2930,0x2130,0x2131,0x1952,0x1953,0x1174,0x19F7,0x2218,0x1176,0x1155,0x1134,0x1133,0x1952,0x1952,0x1131,0x1131,0x1152,0x1174,0x19F6,0x19D6,0x1195,0x0975,0x0955,0x0955,0x0934,0x0934,0x0113,0x0134,0x0155,0x0996,0x11D7,0x19D7,0x1195,0x1153,0x1932,0x1932,0x1932,0x1911,0x1112,0x1133,0x1195,0x11D7,0x11D8,0x19F8,0x1195,0x1153,0x1132,0x1931,0x1910,0x2110,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2910,0x2110,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2910,0x2930,0x212F,0x2930,0x210F,0x210F,0x290F,0x212F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x2111,0x1911,0x1932,0x1932,0x1911,0x1111,0x1912,0x1912,0x1912,0x1932,0x1912,0x1912,0x1912,0x1932,0x1932,0x1912,0x1932,0x1911,0x1911,0x1911,0x1911,0x10F1,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1111,0x1911,0x1911,0x1911,0x1111,0x1111,0x1111,0x1111,0x1911,0x1911,0x10F1,0x1911,0x1111,0x1111,0x1911,0x10F1,0x1111,0x1111,0x1911,0x1911,0x1911,0x10F1,0x1111,0x1111, + 0x210F,0x210F,0x2110,0x2110,0x2130,0x212F,0x2930,0x212F,0x212F,0x2130,0x212F,0x212F,0x2130,0x212F,0x290F,0x2930,0x210F,0x210F,0x290F,0x290F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2910,0x2930,0x2110,0x2110,0x2910,0x2910,0x210F,0x2910,0x2910,0x2110,0x2910,0x210F,0x290F,0x290F,0x212F,0x210F,0x212F,0x210F,0x212F,0x292F,0x212F,0x212F,0x292F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x292F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x292F,0x2130,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x2130,0x2930,0x210F,0x2130,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2910,0x2910,0x2930,0x2910,0x2110,0x2910,0x2110,0x2910,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x292F,0x290F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2910,0x2910,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930,0x212F,0x2930,0x292F,0x290F,0x2910,0x2910,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x2930,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x290F,0x290F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x28EE,0x28AD,0x492F,0xBBD8,0xBB56,0xB2F4,0xAAD4,0x9AD3,0xAC16,0xDF1F,0xC73F,0xBF3E,0xBF1E,0xB6FD,0xAEFD,0xAF1D,0xAF1D,0xAF1D,0xAEFD,0xAF1D,0xAF1E,0xB73E,0xBF5F,0xCF3F,0xACF9,0x79F0,0x99D2,0xA1D2,0xA9F3,0xB213,0xBA14,0xB9F3,0xB9D3,0xC1D3,0xC1D3,0xC1F3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xB9B2,0xB1D2,0x9A31,0xDD7C,0xDEDF,0xC71F,0xBF1E,0xB71E,0xB71E,0xB71E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAF3E,0xB75E,0xB75E,0xBF5F,0xD73F,0xCD7C,0x8A52,0x99F2,0xA9D2,0xB1D3,0xB9D3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1B3,0xB9B3,0xB1D2,0xA1F1,0xBC18,0xE6FF,0xC71F,0xBF1E,0xB71E,0xAF1E,0xAF1E,0xAF1E,0xAF1D,0xAEFD,0xAF1D,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xB71E,0xB71E,0xB73E,0xBF3E,0xBF1E,0xD6FF,0xCD5C,0x9252,0xA1F2,0xB1D3,0xB1D3,0xB9D3,0xB9D3,0xC1F3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1B3,0xB9B3,0xB9D3,0xA9B2,0x89F0,0xDE7E,0xCEFE,0xBEFE,0xBF1E,0xB71E,0xB71E,0xB71E,0xB6FE,0xB71E,0xBF1E,0xBF1E,0xC71F,0xCF1F,0xE6FF,0xB4B9,0x8271,0x89F1,0x99B1,0xA1B1,0xA9B2,0xB1B2,0xB192,0xB9B2,0xB992,0xB992,0xB992,0xB9B3,0xB993,0xC193,0xC193,0xC193,0xC193,0xC193,0xC193,0xC1B3,0xC193,0xB993,0xB993,0xB992,0xB992,0xB192,0xB1B2,0xB1B2,0xA9B2,0xA1D1,0x99F1,0x9251,0xA395,0xDE5E,0xE71F,0xCEFF,0xC71F,0xBF1E,0xBF1E,0xB71E,0xB71E,0xB71E,0xB71E,0xAF1D,0xAEFD,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xB71E,0xAF1E,0xAF1E,0xB73E,0xB73E,0xB73E,0xBF3E,0xC71F,0xCEFF,0xE6FF,0xB4F9,0x8AD3,0x89D0,0x99D1,0xA1B1,0xA9B2,0xA9B2,0xB1B2,0xB1B2,0xB9B3,0xB9B3,0xB9B3,0xB9B3,0xB9B3,0xC1B3,0xC1B3,0xB9B3,0xB9B3,0xB9B3,0xB9B3,0xB9B3,0xB9B3,0xB9B2,0xB9B3,0xB192,0xB192,0xB1B2,0xB1B2,0xA9B2,0xA9B2,0x99D1,0x8A11,0x9B34,0xE65E,0xDEDF,0xD6DE,0xCEFE,0xC71E,0xC71E,0xC71E,0xC71E,0xC71E,0xCEFF,0xD65E,0x82F3,0x89F1,0x99D2,0xA9D3,0xB1F3,0xB9F3,0xB9F3,0xC1F3,0xC1D3,0xC1F4,0xC1D3,0xC1D3,0xC1D3,0xC1F4,0xB9D3,0xB9D3,0xB1D3,0xA9B2,0x91D1,0xB437,0xDEDF,0xCF1F,0xBF1E,0xB71E,0xB71E,0xB71E,0xB71E,0xBF1E,0xC6FF,0xD69F,0x7B12,0x79D0,0x91B1,0x91B1,0x9991,0xA1B1,0xA1B1,0xA1B1,0xA1B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA191,0xA9B1,0xA191,0xA1B1,0x99D1,0x8210,0xA498,0xCEFF,0xBEFE,0xB71E,0xB71E,0xAF1E,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xB73E,0xB73D,0xB73E,0xB73D,0xB73E,0xBF3E,0xC73F,0xCF1F,0xE6FF,0xB4D9,0x8AD3,0x89F1,0x99B1,0xA1B2,0xA9B2,0xA9B2,0xB1B2,0xB1B2,0xB992,0xB993,0xB993,0xB993,0xC193,0xC193,0xC193,0xC193,0xC193,0xC193,0xC193,0xC193,0xC193,0xC192,0xB992,0xB992,0xB992,0xB992,0xB992,0xB992,0xB192,0xA9B2,0xA1D1,0xAA73,0xFD5E,0xFDFF,0xFDBF,0xFD1C,0xBAD4,0xC2D4,0xCAD5,0xCAD5,0xCAD5,0xD2D5,0xD2D5,0xD2D5,0xD2B4,0xD2B4,0xD2B5,0xD2B5,0xDAB5,0xDAB5,0xDAB5,0xDAB5,0xDAB4,0xDAB4,0xDAB4,0xDAB5,0xDAB5,0xDAB5,0xDAB5,0xDAB5,0xDAB5,0xDAB5,0xD2B6,0xD2D6,0xD2D7,0xCAF8,0xC31A,0xAB3C,0x3095,0x2919,0x293A,0x295A,0x297B,0x295A,0x315A,0x4118,0x7998,0xAA59,0xBA17,0xB9F6,0xC1F5,0xC1F5,0xC9F5,0xC1F5,0xC1F5,0xB9F5,0xA1B4,0x89F5,0x7AD8,0x741C,0x5CFF,0x453F,0x2D1F,0x1D1E,0x0D1E,0x051D,0x051D,0x057B,0x0E9C,0x0F5C,0x0F7B,0x0FBB,0x07BB,0x0FDB,0x0F9B,0x179C,0x1F7C,0x373D,0x5EFE,0x651A,0x6293,0x8A33,0xA1F3,0xB1D4,0xB1B3,0xB9B4,0xB9B4,0xC1D4,0xB9D4,0xB173,0xB993,0xB193,0xB193,0xB1B3,0xB1D4,0xB1D4,0xAA15,0x99B3,0x89B3,0x8A35,0x8276,0x5172,0x4131,0x3931,0x3151,0x3151,0x3150,0x3150,0x3150,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x210F,0x2930,0x290F,0x2930,0x290F,0x210F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2110,0x2910,0x2110,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2131,0x2131,0x1932,0x1133,0x19B6,0x19F8,0x11F8,0x09B7,0x11B7,0x0997,0x0976,0x0976,0x0976,0x0996,0x11D7,0x19D7,0x11B6,0x1995,0x1973,0x1953,0x1932,0x1931,0x1931,0x1931,0x1932,0x1133,0x0933,0x1995,0x2217,0x19F7,0x19B6,0x0912,0x1111,0x1931,0x2130,0x2130,0x210F,0x210E,0x212F,0x210F,0x212F,0x212F,0x2130,0x2131,0x1931,0x1153,0x1174,0x19D6,0x2218,0x1176,0x1175,0x1134,0x1133,0x1953,0x1952,0x1131,0x1132,0x1152,0x1174,0x19D6,0x19F7,0x1196,0x1175,0x0955,0x0934,0x0933,0x0913,0x0933,0x0134,0x0955,0x0996,0x11D7,0x19D7,0x1995,0x1174,0x1953,0x1932,0x1932,0x1931,0x1932,0x1133,0x1175,0x11D7,0x11F8,0x19D8,0x1195,0x1153,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x2110,0x2110,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2110,0x212F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2910,0x210F,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x210F,0x212F,0x212F,0x2930,0x2930,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x1911,0x1932,0x1932,0x1932,0x1113,0x1113,0x1113,0x1113,0x1113,0x1133,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x08F2,0x1112,0x1112,0x0912,0x1112,0x1112,0x1112,0x0912,0x0912,0x0912,0x1112,0x0912,0x0912,0x1112,0x1112,0x1113,0x1113,0x0912,0x1112,0x1133,0x1112,0x1112,0x1133,0x1132,0x1112,0x1133,0x1132,0x1112,0x1133,0x1133, + 0x2110,0x2110,0x210F,0x2110,0x2930,0x2930,0x210F,0x2910,0x2110,0x2110,0x2110,0x2130,0x2930,0x2130,0x210F,0x2910,0x210F,0x2930,0x210F,0x2910,0x210F,0x212F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x290F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x210F,0x2110,0x2110,0x2930,0x2910,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x292F,0x292F,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x1930,0x1910,0x1930,0x1930,0x1930,0x2130,0x2130,0x2130,0x2130,0x2110,0x212F,0x210F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2110,0x2110,0x2110,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x2910,0x2930,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2110,0x2130,0x2110,0x2130,0x2930,0x2110,0x2910,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x212F,0x2930,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x210F,0x290F,0x290F,0x212F,0x212F,0x292F,0x290F,0x292F,0x292F,0x210F,0x2110,0x2110,0x2110,0x2131,0x2131,0x2131,0x1931,0x2131,0x1931,0x1930,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2930,0x2930,0x292F,0x292F,0x290F,0x28EF,0x288D,0x512F,0xBBB8,0xBB56,0xB2F4,0xAAD4,0x9AD3,0xABF6,0xDF1F,0xC73F,0xBF3E,0xB71E,0xB6FD,0xAEFD,0xAF1D,0xAF1D,0xAF1D,0xAEFD,0xAEFD,0xAF1E,0xB73E,0xBF5F,0xCF1F,0xA497,0x79F0,0x99D2,0xA1D2,0xB1F3,0xB213,0xB9F3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1F3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xB9B2,0xA9F2,0xA293,0xDD9C,0xD6DF,0xC6FE,0xB6DD,0xB6FE,0xB71E,0xB71E,0xAEFE,0xAEFD,0xAEFD,0xAF1D,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xAEFD,0xAF1D,0xAF1D,0xB73E,0xBF5E,0xCF3F,0xD65E,0x92F3,0x91F2,0xA9D2,0xB1D3,0xB9F3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC9D3,0xC9F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xB1F2,0x9A12,0xDD3C,0xD6DF,0xC71F,0xB6FE,0xB71E,0xAF1E,0xAF1E,0xAF1E,0xAEFE,0xAF1E,0xAEFD,0xAEFD,0xAEFE,0xAEFD,0xAF1E,0xAF1E,0xAF1E,0xAF1E,0xB73E,0xBF1E,0xCF1F,0xDE3E,0x92D3,0x99F2,0xA9D3,0xB1D3,0xB9D3,0xB9F3,0xB9F3,0xC1F3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9B3,0xB9D3,0xA9B2,0x91D0,0xCDBC,0xCEDE,0xBEFE,0xBF1E,0xB6FE,0xB6FE,0xB71E,0xB71E,0xB71E,0xBEFE,0xC6FF,0xD6DF,0xD5FD,0x9333,0x81D0,0x99D1,0xA1B2,0xA9B2,0xB1B2,0xB1B2,0xB9B2,0xB9B3,0xB9B3,0xB9B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC193,0xC193,0xC1B3,0xC193,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC193,0xC193,0xB9B3,0xB9B3,0xB9B3,0xB9B2,0xB1B2,0xA9D2,0xA1F2,0x9A11,0x89F0,0xC499,0xDE5E,0xD6FF,0xC6FF,0xBF1E,0xB71E,0xB71E,0xB6FD,0xB71E,0xAEFD,0xAEFD,0xAF1D,0xAF1D,0xAEFD,0xAF1D,0xAF1D,0xA6FD,0xA6FD,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF3E,0xAF3E,0xAF1E,0xAF1E,0xAF1E,0xB73E,0xB73E,0xBF3E,0xC71F,0xD6DF,0xD61E,0xA3B5,0x81F0,0x91D1,0x99B1,0xA9B2,0xB1D3,0xB1B2,0xB1B3,0xB9B3,0xB9B3,0xB9B3,0xC1B3,0xC1B3,0xC1B3,0xC1D3,0xC1D3,0xC1B3,0xC1B3,0xC1D3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1D3,0xB9B3,0xB9B3,0xB9B3,0xB9B3,0xB992,0xB992,0xB192,0xA9B2,0xA1D2,0x99F1,0x8A10,0xCCFA,0xE69F,0xD6DF,0xCEFE,0xC6FE,0xC6FE,0xC6FE,0xC6FE,0xCEDF,0xD63E,0x8AF3,0x89F1,0x99D2,0xA9D2,0xB1F3,0xB9F3,0xC1F3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D4,0xC1F4,0xC1D3,0xB9F3,0xB1D3,0xA9B1,0x91D0,0xAC17,0xDEDF,0xCEFF,0xBF1E,0xBF1E,0xB6FE,0xB6FE,0xB71E,0xBF1E,0xC6FF,0xD69F,0x8333,0x81F1,0x91D1,0xA1D2,0xA1D2,0xA9D2,0xA9D2,0xA9B2,0xA9D2,0xB1D2,0xB1D2,0xB1D2,0xB1D2,0xB1B2,0xB1B2,0xA9B2,0xA9B2,0xA1D1,0x8A11,0xA477,0xCEDF,0xBEFE,0xB71E,0xAF1E,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xB73E,0xB73D,0xB73E,0xBF5F,0xC73F,0xD71F,0xD63E,0xA395,0x8A11,0x91D1,0x99B1,0xA1B2,0xA9D3,0xB1D3,0xB1B3,0xB9B3,0xB9B3,0xB9B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC193,0xC193,0xC1B3,0xC193,0xC193,0xC1B3,0xC193,0xC192,0xB992,0xB992,0xB9B2,0xB1B2,0xB1D2,0xA1B1,0xE3F9,0xFD7E,0xFD9E,0xFD3D,0xCB36,0xC2D4,0xCAD5,0xCAB5,0xCAB5,0xD2B5,0xD2B5,0xD2B5,0xD2B4,0xD2B4,0xD2B5,0xD2B4,0xDAB4,0xDAB5,0xDA94,0xDA94,0xDA94,0xDA94,0xDA94,0xD294,0xDA95,0xDA95,0xDAB5,0xDAB5,0xDAB5,0xD2B5,0xD2B6,0xD2D7,0xCAF8,0xC31A,0xB33C,0x30B5,0x2919,0x213A,0x215B,0x297B,0x297B,0x295A,0x3939,0x5916,0x9A5A,0xB238,0xB1D5,0xB9F5,0xC216,0xC9F5,0xC9F5,0xC1D5,0xB9D5,0xA9B4,0x91F5,0x7A97,0x73FC,0x651F,0x455F,0x2D3F,0x1D1E,0x0D1E,0x0D3D,0x053D,0x057B,0x065B,0x0F3B,0x0F7B,0x0F9B,0x0FBB,0x07BB,0x0F9B,0x177B,0x277C,0x3F3D,0x5EFE,0x653A,0x62B3,0x9253,0xA1F3,0xB1B3,0xB193,0xB9B3,0xB9B3,0xB993,0xB1B3,0xA111,0xC1F4,0xB9D4,0xB9D4,0xB1B3,0xB1D4,0xB235,0x99D4,0x502D,0x482D,0x384E,0x4110,0x4131,0x3110,0x3151,0x3151,0x3151,0x3150,0x2930,0x2930,0x2950,0x2950,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x2930,0x290F,0x2930,0x2930,0x210F,0x210F,0x2910,0x2910,0x290F,0x2930,0x290F,0x210F,0x2930,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2130,0x2130,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2110,0x2110,0x2130,0x2110,0x2131,0x1911,0x1112,0x1153,0x19B6,0x19F7,0x11B7,0x0996,0x0976,0x0976,0x0955,0x0955,0x0955,0x0976,0x0996,0x11D7,0x19D6,0x19B5,0x1974,0x2173,0x1932,0x1932,0x1931,0x1932,0x1932,0x1153,0x1133,0x1195,0x2218,0x21F7,0x19B5,0x0912,0x1111,0x1931,0x2150,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x1930,0x1931,0x1953,0x1174,0x19D6,0x19F8,0x1196,0x0955,0x1154,0x1133,0x1953,0x1952,0x1131,0x1132,0x1152,0x1174,0x19D6,0x19F7,0x11B6,0x1196,0x0975,0x0955,0x0934,0x0113,0x0934,0x0954,0x0996,0x11D7,0x11D7,0x11D6,0x1195,0x1153,0x1953,0x1932,0x1931,0x1932,0x1932,0x1133,0x1195,0x11D7,0x11D8,0x19D7,0x1175,0x1153,0x1952,0x1931,0x2130,0x2130,0x2110,0x210F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2930,0x2110,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2930,0x2930,0x2910,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2930,0x2910,0x2910,0x2110,0x2930,0x2910,0x210F,0x2930,0x290F,0x210F,0x2930,0x2110,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x2930,0x2110,0x2930,0x2930,0x2110,0x2110,0x2130,0x2110,0x2130,0x2131,0x2131,0x2131,0x1932,0x1932,0x1933,0x1133,0x1975,0x1975,0x1175,0x1175,0x1175,0x1196,0x1196,0x1176,0x1196,0x1195,0x1195,0x1195,0x1195,0x0975,0x0975,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1196,0x1175,0x1196,0x1175,0x1195,0x1195,0x1195,0x1175,0x1196,0x1196,0x1196,0x1196,0x1195,0x1195,0x1196,0x11B6,0x19D6,0x19B6,0x11B6,0x19B6,0x19D6,0x19B6,0x19B6,0x11B6, + 0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x292F,0x290F,0x210F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x210F,0x212F,0x292F,0x212F,0x292F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x210E,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2910,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1911,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2910,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x2930,0x2130,0x2130,0x210F,0x2110,0x2910,0x2910,0x210F,0x210F,0x290F,0x2910,0x210F,0x290F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x210F,0x2930,0x2110,0x2110,0x2930,0x2110,0x2930,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1951,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x28EF,0x288D,0x492F,0xB398,0xB335,0xAAD4,0xAAB3,0x9AB3,0xA3F6,0xDF1F,0xC71E,0xBF1E,0xB71E,0xB6FD,0xAEFD,0xAF1D,0xAF1D,0xAF1D,0xAEFD,0xAEFD,0xAF1D,0xB73E,0xBF3F,0xCF1F,0x9C77,0x81F0,0x99D2,0xA1F3,0xB1F3,0xBA13,0xB9F3,0xB9D3,0xC1D3,0xC1D3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xB9D2,0xA9F2,0xA2F4,0xDDFE,0xD6DF,0xBEFE,0xB6DD,0xB6FD,0xAF1E,0xAF1E,0xAEFD,0xAEFD,0xAEFD,0xAEFD,0xAEFD,0xAEFD,0xAEFD,0xAEFD,0xAEFD,0xAF1D,0xAEFD,0xAF1E,0xB73E,0xC73F,0xD69F,0x8B13,0x9212,0xA9F2,0xB1F3,0xB9D3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC9D3,0xC1D3,0xC9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xA9F2,0x9A72,0xDDBD,0xD6BF,0xBEDE,0xB6FE,0xAEFE,0xAF1E,0xAEFE,0xAF1E,0xAF1E,0xAF1E,0xA6FD,0xA6FD,0xA6FD,0xAEFD,0xAEFD,0xAF1E,0xAEFD,0xAF1E,0xB71E,0xB73E,0xC71F,0xDE7F,0x9313,0x9A12,0xA9D3,0xB1D3,0xB1D3,0xB9F3,0xB9D3,0xC1F3,0xC1F3,0xC1F3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xB9F3,0xA9B1,0x91F1,0xBD1A,0xCEBE,0xC6FE,0xBEFE,0xBEFE,0xBF1E,0xB6FE,0xB6FE,0xBEFE,0xC6DE,0xDEDF,0xB4F9,0x8A91,0x89F0,0x99D1,0xA9B2,0xB1B2,0xB1B2,0xB9B3,0xB9B3,0xB9B3,0xC1B3,0xC1D3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC9B3,0xC1B3,0xC1B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC1B3,0xC9B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xB9B3,0xB9B3,0xB1B2,0xB1D2,0xA9F2,0x9211,0x9B13,0xDDFD,0xDEFF,0xC6FE,0xBEFE,0xB71E,0xB71E,0xB71D,0xAEFD,0xAEFD,0xAEFD,0xAF1D,0xAEFD,0xA6FD,0xAF1D,0xA6FD,0xA6FD,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1E,0xAF1E,0xB73E,0xBF1E,0xC71F,0xD6FF,0xC57B,0x82B2,0x89F0,0x99D1,0xA1D2,0xA9D2,0xB1B3,0xB9B3,0xB9B3,0xB9B3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC9D3,0xC9D3,0xC1D3,0xC1D3,0xC9D3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xB9B3,0xB992,0xB992,0xB1B2,0xB1B2,0xA1D2,0x9211,0xA375,0xEE9F,0xDEBF,0xCEDE,0xCEFE,0xC6FE,0xC6FE,0xCEDF,0xD61E,0x8AF3,0x89F1,0x99D2,0xA9D2,0xB1F3,0xB9F3,0xC1F4,0xC1F3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC1D4,0xC1F4,0xC1F3,0xB9F3,0xB9F3,0xA9B1,0x91D1,0xAC17,0xE6DF,0xCEFF,0xBF1E,0xB6FE,0xB6FD,0xB6FE,0xB71E,0xBF1E,0xC71F,0xD69F,0x8B33,0x8A11,0x99F2,0xA1F2,0xA9F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB9F3,0xB9D3,0xB9F3,0xB9D3,0xB1D3,0xB1D3,0xA9D2,0xA1D2,0x9231,0xAC78,0xCEDF,0xBEFE,0xB71E,0xAF1E,0xAF1D,0xAF1D,0xAF1D,0xAEFD,0xAEFD,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xB73E,0xBF3E,0xC71F,0xD6FF,0xCDDD,0x8AF3,0x89F1,0x99D2,0xA1D2,0xA9D3,0xB1D3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xC1D3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC1B3,0xC1B3,0xC1B3,0xC192,0xC193,0xC1B3,0xB9B2,0xB9B2,0xB9D2,0xA9B2,0xC2D5,0xFD5E,0xFD7E,0xFD3D,0xCB76,0xC2B4,0xCAB4,0xCAB4,0xCAB5,0xCAB4,0xD2B5,0xD2B4,0xD2B4,0xD294,0xD294,0xD294,0xD294,0xDA94,0xDA94,0xDA94,0xD294,0xDA94,0xDA95,0xDA94,0xDA95,0xDA95,0xDA95,0xD295,0xD2B6,0xD2B6,0xCAB7,0xCAF8,0xC319,0xAB3C,0x30B5,0x2939,0x215A,0x215B,0x217B,0x299C,0x297B,0x313A,0x40F7,0x8A3A,0xAA59,0xB9F6,0xB1D5,0xC1D5,0xC1D5,0xC9F5,0xC1F5,0xB9D5,0xA9B4,0x91D4,0x7A76,0x6BBB,0x653F,0x457F,0x2D3F,0x1D3E,0x153E,0x0D3D,0x053D,0x057B,0x065B,0x0F3B,0x0F7B,0x0F9B,0x0FBB,0x07BB,0x0F9B,0x177C,0x277D,0x3F3D,0x66FE,0x6519,0x6AB3,0x9233,0xA1F3,0xB1B3,0xB9B4,0xB9B4,0xB9D4,0xB9B3,0xB1B3,0xA111,0xB9D4,0xB1B3,0xB1B3,0xB1B3,0xB1D4,0xB256,0x8192,0x486E,0x48AF,0x40F0,0x4110,0x3951,0x3951,0x3151,0x3150,0x2950,0x3150,0x2950,0x3150,0x2950,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x210F,0x2930,0x290F,0x2910,0x2930,0x290F,0x2930,0x2930,0x290F,0x210F,0x290F,0x2930,0x292F,0x292F,0x292F,0x290F,0x2110,0x2110,0x2110,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x212F,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x1931,0x1111,0x1133,0x19B5,0x19F7,0x11B7,0x0976,0x0956,0x0935,0x0955,0x0955,0x0955,0x0975,0x0995,0x11D6,0x19D6,0x19B6,0x1174,0x1953,0x1932,0x1931,0x1932,0x1932,0x1932,0x1153,0x1133,0x19B6,0x19F7,0x21F7,0x19B6,0x0912,0x1111,0x1931,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2131,0x1931,0x1953,0x1174,0x19B6,0x21F8,0x19D7,0x0955,0x1154,0x1133,0x1953,0x1952,0x1132,0x1132,0x1153,0x1174,0x19D6,0x19F7,0x19F7,0x11B6,0x1175,0x0975,0x0954,0x0954,0x0954,0x0975,0x11B6,0x11D7,0x19F7,0x19D6,0x1995,0x1153,0x1952,0x1931,0x1931,0x1931,0x1932,0x1153,0x1196,0x11D7,0x11F8,0x19F7,0x1195,0x1153,0x1932,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2930,0x2110,0x290F,0x290F,0x290F,0x290F,0x210F,0x2930,0x210F,0x2110,0x290F,0x290F,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x2930,0x210F,0x212F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2930,0x290F,0x292F,0x2110,0x2110,0x2930,0x2930,0x2110,0x2110,0x2130,0x2151,0x2131,0x2151,0x1931,0x1932,0x1933,0x1953,0x1975,0x21B6,0x21D7,0x21F8,0x2219,0x2218,0x21F8,0x2218,0x2239,0x2239,0x2238,0x2238,0x2259,0x1A38,0x2259,0x2239,0x1A19,0x2239,0x2239,0x2239,0x2219,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2259,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2239,0x2238,0x2239,0x2239,0x1A18,0x2239,0x1A18,0x1A18,0x19F8,0x1A18,0x1A18,0x19F8,0x19F8, + 0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x210F,0x2110,0x2130,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2930,0x210F,0x210F,0x290F,0x212F,0x210F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2110,0x2930,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x290F,0x2930,0x2130,0x2130,0x2131,0x1911,0x1931,0x1952,0x1952,0x1952,0x1132,0x1932,0x1133,0x1132,0x1932,0x1131,0x1931,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x2130,0x210F,0x2930,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x290F,0x290F,0x210F,0x2910,0x210F,0x2910,0x212F,0x210F,0x212F,0x212F,0x2130,0x2110,0x2110,0x2930,0x2130,0x210F,0x2130,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2930,0x210F,0x290F,0x210F,0x290F,0x2930,0x290F,0x2930,0x2930,0x212F,0x292F,0x210F,0x212F,0x2930,0x212F,0x2930,0x210F,0x210F,0x2910,0x2910,0x2110,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x2151,0x1931,0x2151,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x290F,0x28EF,0x28AD,0x512F,0xB377,0xB315,0xAAD4,0xAAB4,0x9AB3,0xA3B5,0xDF1F,0xC6FE,0xBEFE,0xB71E,0xAEDD,0xAEDD,0xAEFD,0xAF1D,0xAF1D,0xA6FD,0xA6FD,0xAF1D,0xB73E,0xBF3F,0xCF3F,0x9C97,0x8210,0x99F2,0xA1F2,0xB1F3,0xBA13,0xB9F3,0xB9D3,0xC1D3,0xC1F3,0xC1D3,0xC9F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9D2,0xA9F2,0xA2F4,0xD59C,0xD6DF,0xBEFE,0xB6DD,0xAEFD,0xAEFD,0xAEFD,0xA6FD,0xA6DD,0xA6DD,0xA6FD,0xA6FD,0xAEFD,0xAEFD,0xAEFD,0xA6FD,0xAF1D,0xAF1D,0xAF1D,0xB73E,0xC71F,0xD69F,0x8B13,0x8A11,0xA1F2,0xA9F3,0xB9F3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC1D3,0xC1D3,0xC1D3,0xB9D2,0xA9F2,0x9AB3,0xDDDD,0xD6BF,0xBEFE,0xB6FE,0xAF1E,0xAEFD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xAEFD,0xAF1E,0xAF1E,0xAF1E,0xB71E,0xC71F,0xD67E,0x9334,0x91F2,0xA9D3,0xB1D3,0xB1F3,0xB9F3,0xB9F3,0xC1F3,0xC1F3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xB9F3,0xA9B2,0x91F1,0xBCD9,0xCE9E,0xC6DE,0xBEFE,0xB6DE,0xBEFE,0xBEFE,0xBEDE,0xC6DE,0xD67E,0xB478,0x8210,0x91D1,0xA1B1,0xA9B2,0xB1D3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9B3,0xC9D3,0xC9D3,0xC9D3,0xC9D4,0xC9D4,0xC9D4,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC1B3,0xC1B3,0xC1D3,0xC1B3,0xC1B3,0xB9B3,0xB9D3,0xB1B2,0xA9F2,0xA1F1,0x8A31,0xC4FA,0xDE9F,0xC6DE,0xBEFE,0xB71E,0xB6FD,0xAEFD,0xAEFD,0xAEFD,0xAEFD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAF1D,0xAEFD,0xAF1D,0xB73E,0xB73E,0xBF1F,0xD6DF,0xBD3A,0x71CF,0x89F1,0x99D1,0xA9D2,0xB1D3,0xB1B3,0xB9D3,0xB9B3,0xC1D3,0xC1D3,0xC1D4,0xC1D4,0xC9D3,0xC9D3,0xC9D4,0xC9D4,0xC9D4,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D4,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC1D3,0xC1D3,0xC1D3,0xC1B3,0xC1B3,0xC1B3,0xB993,0xB9B2,0xB1B2,0xA9D2,0x99F1,0x8A51,0xE5FE,0xDE9F,0xD6DE,0xCEDE,0xCEDE,0xD6BF,0xD61E,0x8AD3,0x89F1,0x99D1,0xA9D2,0xB1F3,0xB9F3,0xC1F4,0xC1F4,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1F4,0xC1F3,0xB9F3,0xB9F3,0xA9B1,0x99D1,0xAC17,0xDE9F,0xC6BE,0xBEFE,0xB6FD,0xB6FD,0xB6FD,0xB6FE,0xB71E,0xC6FF,0xD69F,0x82F2,0x8A11,0xA212,0xA9F3,0xAA13,0xB1F3,0xBA14,0xBA13,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9F3,0xB9D3,0xB9D3,0xB1B3,0xB1D3,0xA9D2,0x9231,0xAC57,0xCEDF,0xBEDE,0xB71E,0xAEFD,0xAEFD,0xAEFD,0xAEFD,0xAEFD,0xAEFD,0xAF1D,0xAF1D,0xAF1D,0xAF1E,0xB73E,0xC71E,0xD6DF,0xCDDD,0x7A31,0x89D1,0x99D2,0xA9B2,0xB1D3,0xB1D3,0xB1D3,0xB9D3,0xB9D4,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC9B3,0xC9D3,0xC9D3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9B3,0xC9B3,0xC9B3,0xC9D3,0xC9B3,0xC9B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xC1B3,0xB9B3,0xB9D3,0xB1D2,0xB233,0xFD3E,0xFD7E,0xFD7E,0xD3B7,0xBA94,0xC2B4,0xCA94,0xCA94,0xCAB4,0xCA94,0xD294,0xD294,0xD294,0xD294,0xD294,0xD294,0xD294,0xDA94,0xDA74,0xDA74,0xDA74,0xDA74,0xDA74,0xD274,0xDA95,0xD295,0xD275,0xD296,0xD2B7,0xCAD8,0xC2F9,0xB35C,0x30B5,0x2939,0x215A,0x195B,0x217C,0x219C,0x217B,0x295A,0x3919,0x6137,0xB27A,0xBA17,0xB1B5,0xB9D5,0xC1B5,0xC9F5,0xC1F5,0xC1F5,0xB1D4,0x99F4,0x7A36,0x6B59,0x655F,0x459F,0x2D7F,0x1D5E,0x155E,0x0D3D,0x055D,0x059C,0x065B,0x0F1B,0x0F5B,0x0F9A,0x07BB,0x0FBB,0x0F9B,0x175B,0x277D,0x473E,0x66DE,0x64D9,0x6AB3,0x9233,0xA9F3,0xB1D4,0xB1B4,0xB9B4,0xB193,0xB9B4,0xB1D4,0xA152,0xB9F4,0xB1D4,0xB1B3,0xB1D4,0xA9D4,0xAA55,0x7151,0x50CF,0x4910,0x4130,0x4131,0x3951,0x3951,0x3151,0x3151,0x3171,0x3150,0x3151,0x2950,0x3150,0x3131,0x3131,0x3130,0x3130,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x2910,0x210F,0x2110,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2131,0x1911,0x1111,0x1153,0x21F7,0x19F7,0x11D7,0x1196,0x0955,0x0955,0x0955,0x0934,0x0955,0x0955,0x0995,0x11D6,0x19D6,0x19B5,0x1974,0x1932,0x1932,0x1911,0x1931,0x1931,0x1932,0x1153,0x1133,0x21F7,0x21F7,0x2217,0x19B5,0x0912,0x1112,0x1931,0x2130,0x2130,0x292F,0x210F,0x210E,0x210F,0x210F,0x2130,0x2130,0x2131,0x1932,0x1953,0x1994,0x1196,0x19F7,0x19F7,0x1175,0x1154,0x1154,0x1153,0x1132,0x1132,0x1132,0x1133,0x1174,0x19B5,0x19F7,0x1A17,0x19F7,0x11B6,0x1196,0x0975,0x0975,0x1196,0x11D6,0x19F7,0x11D7,0x19F7,0x19D6,0x1174,0x1152,0x1952,0x1931,0x1931,0x1911,0x1112,0x1133,0x1196,0x11F7,0x11F8,0x11D7,0x19B5,0x1153,0x1932,0x1931,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2110,0x2930,0x290F,0x210F,0x290F,0x290F,0x2930,0x210F,0x2110,0x2930,0x290F,0x290F,0x290F,0x210F,0x2930,0x2930,0x2910,0x2910,0x2910,0x2910,0x2930,0x2910,0x2930,0x2910,0x2930,0x2910,0x210F,0x210F,0x2910,0x2910,0x210F,0x212F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x2930,0x2910,0x2910,0x2930,0x2130,0x2130,0x2131,0x2151,0x2151,0x1931,0x1932,0x1953,0x1974,0x19B6,0x21D6,0x21F7,0x19B7,0x21F8,0x21F8,0x21F8,0x2218,0x2218,0x2238,0x2238,0x2218,0x2238,0x2238,0x2238,0x2239,0x2239,0x2238,0x1A18,0x1A18,0x1A19,0x1A18,0x1A18,0x2219,0x2218,0x1A18,0x1A18,0x1A18,0x1A18,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x19F8,0x2218,0x2218,0x19F8,0x19F7,0x2218,0x2218,0x2218,0x1A18,0x1A18,0x19F8,0x1A18,0x1A18,0x19F8,0x19F8,0x19F8, + 0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2910,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2910,0x2910,0x2110,0x2110,0x2930,0x210F,0x212F,0x212F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x290F,0x2910,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x290F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2930,0x212F,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2950,0x2930,0x292F,0x292F,0x2930,0x2130,0x2130,0x2131,0x1931,0x1932,0x1953,0x1973,0x1974,0x1974,0x1995,0x1995,0x19B5,0x19B5,0x19B5,0x1974,0x1132,0x1111,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2110,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x290F,0x210F,0x210F,0x2130,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x210F,0x2930,0x210F,0x212F,0x212F,0x2110,0x2930,0x210F,0x2110,0x2130,0x2130,0x2110,0x210F,0x292F,0x212F,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x210F,0x212F,0x290F,0x290F,0x292F,0x292F,0x2930,0x212F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x212F,0x212F,0x210F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2131,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1952,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x28EE,0x28AD,0x512F,0xB378,0xB315,0xAAD4,0xAAB4,0x9A93,0xA395,0xDEFF,0xBEDE,0xBEFE,0xB6FD,0xAEDD,0xAEDD,0xAF1D,0xAF1D,0xA6FD,0xA6FD,0xA6FD,0xAEFD,0xB73E,0xBF3E,0xCF1F,0x9456,0x8210,0x99F2,0xA1F2,0xB213,0xBA13,0xB9F3,0xC1D3,0xC1F3,0xC9F4,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1F3,0xC1D3,0xB9B2,0xA9F2,0x9AD3,0xCD9C,0xCEDF,0xBEFE,0xB6FE,0xAEDD,0xAEFD,0xAEFD,0xA6DD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xAEFD,0xA6FD,0xA6DD,0xA6FD,0xA6FD,0xAEFD,0xAF1D,0xB73E,0xBF1F,0xD69F,0x8313,0x8A31,0xA1F2,0xA9F3,0xB9F3,0xB9D3,0xC1D3,0xC1D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC1D3,0xC1D3,0xC1F3,0xB9D2,0xA9F2,0xA2F4,0xE61E,0xCEBF,0xBEDE,0xB6DE,0xAEFE,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6DD,0xA6DD,0xA6FD,0xAEFD,0xAF1D,0xAF1D,0xB71E,0xC6FE,0xD67E,0x9354,0x9212,0xA9D3,0xA9F3,0xB1F3,0xB9F3,0xB9F3,0xC1F3,0xC1F3,0xC1F3,0xC1D3,0xC9F3,0xC9F3,0xC1D3,0xC1D3,0xB9F3,0xBA13,0xB1D2,0x99F1,0xBCB9,0xD67E,0xC6BE,0xBEDE,0xBEDE,0xBEDE,0xBEDE,0xC6BE,0xDE9F,0x9BB5,0x8211,0x99D1,0xA1D2,0xA9D2,0xB1D3,0xB9D3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9B3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9B3,0xC9B3,0xC9D3,0xC9D3,0xC9D3,0xC1D3,0xC1D3,0xC1D3,0xC1D3,0xC1B3,0xB9B2,0xB9B2,0xB1D2,0xA1F2,0x9251,0xC51A,0xDEDF,0xC6DE,0xBEFE,0xB6FD,0xB6FD,0xAEFD,0xAEFD,0xAEFD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xAEFD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xAF1E,0xAF1E,0xB71E,0xBF1F,0xD6FF,0xB4FA,0x7A30,0x91F1,0x99B1,0xA9D2,0xB1D2,0xB9D3,0xB9F3,0xB9D3,0xC1D3,0xC1D3,0xC1D3,0xC9D4,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D4,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC1D3,0xC1D3,0xC1B3,0xC1B3,0xC193,0xB993,0xB9B2,0xB1B2,0xA1F2,0x9272,0xDDBD,0xDE9F,0xD6BE,0xCEBE,0xD69F,0xDDFE,0x8AD3,0x89F1,0x99D2,0xA9F2,0xB1F3,0xB9F3,0xC1F4,0xC1F4,0xC1F4,0xC9F3,0xC1D3,0xC1D3,0xC1D3,0xC1F4,0xC1F3,0xB9F3,0xB9F3,0xA9B1,0x99D1,0xAC17,0xDE9F,0xC6DE,0xBEDE,0xB6DD,0xB6DD,0xB6DD,0xB6FD,0xB6FE,0xC6FE,0xD67E,0x82F3,0x9232,0xA1F2,0xAA13,0xB213,0xB213,0xBA13,0xBA14,0xB9F3,0xB9F3,0xB9F3,0xC1F3,0xC1F4,0xC1F3,0xB9D3,0xB9D3,0xB1F3,0xA9F2,0x9A32,0xAC78,0xCEBF,0xBEFE,0xB6FE,0xAEFD,0xAEFD,0xAEFD,0xAEFD,0xAEFD,0xAEFD,0xAF1D,0xAF1D,0xAF3E,0xB73E,0xBF1E,0xCEFF,0xBD5B,0x8271,0x89D1,0xA1B2,0xA9B2,0xA9B2,0xB1D3,0xB9D3,0xB9D4,0xB9D4,0xC1D4,0xC1D4,0xC1D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9B3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9B3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC1B3,0xC1B3,0xC1D3,0xB9D3,0xB1F2,0xBA94,0xFD3E,0xFD7E,0xFD7E,0xDBD8,0xBA93,0xC294,0xCA94,0xCA74,0xCA74,0xCA74,0xD274,0xD274,0xD274,0xD274,0xD294,0xD274,0xD274,0xD274,0xD274,0xD274,0xD274,0xD274,0xD274,0xD274,0xD275,0xD275,0xD296,0xD2B7,0xCAD8,0xC2F9,0xAB1C,0x30B6,0x293A,0x215B,0x195B,0x197C,0x217C,0x219C,0x297B,0x313A,0x40B6,0xB2BB,0xBA38,0xB1B5,0xB9D6,0xC1D5,0xC1D5,0xC1D5,0xC1F5,0xB1D4,0x99F4,0x7A15,0x62F8,0x653E,0x459F,0x2D7F,0x1D7E,0x155E,0x0D5D,0x055D,0x059C,0x063B,0x06FB,0x0F5B,0x0F9A,0x0FBB,0x0FBB,0x0F9B,0x177B,0x275C,0x3F1D,0x66DE,0x64B8,0x6A92,0x9A53,0xA1F3,0xB1D3,0xB193,0xB1B4,0xB9B4,0xB9F4,0xA993,0xA152,0xBA15,0xB1D3,0xB1B4,0xA9B3,0xA9F4,0xA255,0x58AF,0x50F0,0x4930,0x4130,0x3951,0x3951,0x3971,0x3151,0x3150,0x3171,0x3151,0x3151,0x2930,0x2930,0x2930,0x2930,0x2930,0x3130,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2910,0x2910,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x292F,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x1931,0x1911,0x1953,0x21D6,0x19F7,0x11D7,0x1196,0x0955,0x0955,0x0954,0x0934,0x0954,0x0955,0x0996,0x11D6,0x19F7,0x19B5,0x1173,0x1953,0x1932,0x1931,0x1911,0x1931,0x1952,0x1133,0x1133,0x19D6,0x2218,0x2217,0x19B5,0x0912,0x1111,0x1931,0x2130,0x2130,0x212F,0x210F,0x210F,0x290F,0x290F,0x2130,0x2110,0x2131,0x1932,0x1953,0x1994,0x1195,0x19D7,0x2218,0x1196,0x1155,0x1134,0x1133,0x1132,0x1132,0x1132,0x1132,0x1174,0x1194,0x19B6,0x19D7,0x19F7,0x19D7,0x11B6,0x11B6,0x11B6,0x11D6,0x11D6,0x19F7,0x19F7,0x19D7,0x19B5,0x1973,0x1132,0x1931,0x1931,0x1931,0x1931,0x1132,0x1133,0x11B6,0x1A18,0x19F8,0x19F7,0x19D6,0x1153,0x1931,0x1931,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2930,0x2110,0x290F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x290F,0x2930,0x290F,0x2110,0x2110,0x290F,0x290F,0x2910,0x2910,0x2910,0x210F,0x2910,0x2930,0x2910,0x2910,0x2930,0x2930,0x2910,0x2910,0x210F,0x210F,0x290F,0x2930,0x292F,0x290F,0x2930,0x210F,0x210F,0x290F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2951,0x2151,0x2151,0x1931,0x1932,0x1953,0x1994,0x19B6,0x21F7,0x21F7,0x21F7,0x21F7,0x21F7,0x21D7,0x21D7,0x21D7,0x19B6,0x19B6,0x1995,0x1995,0x1995,0x1195,0x1195,0x1195,0x1195,0x1195,0x19B6,0x1195,0x1196,0x19B6,0x1196,0x1195,0x1195,0x1195,0x1195,0x1195,0x1996,0x1195,0x1995,0x1195,0x1195,0x1195,0x1195,0x1195,0x1995,0x1195,0x1995,0x1175,0x1995,0x1995,0x1995,0x1995,0x1195,0x1195,0x1195,0x19B6,0x1196,0x1195,0x1196,0x1196,0x1196, + 0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2110,0x2110,0x2110,0x2910,0x2930,0x2930,0x290F,0x2930,0x290F,0x2910,0x2910,0x2930,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2930,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2930,0x2930,0x2930,0x2130,0x2131,0x1931,0x1932,0x1953,0x1153,0x1995,0x19B6,0x19B6,0x19D7,0x19D7,0x19F7,0x19F7,0x19F7,0x19D6,0x1995,0x1153,0x1932,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2930,0x212F,0x212F,0x2930,0x290F,0x290F,0x290F,0x2910,0x2930,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x2910,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x210F,0x290F,0x290F,0x2910,0x2110,0x212F,0x212F,0x212F,0x2930,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x290F,0x290F,0x2930,0x292F,0x292F,0x292F,0x2930,0x2910,0x2910,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x2130,0x2930,0x2930,0x212F,0x2930,0x2130,0x2130,0x2150,0x2130,0x2130,0x1931,0x1931,0x1931,0x1931,0x1932,0x1952,0x1952,0x1932,0x1932,0x1132,0x1932,0x1932,0x1931,0x1931,0x1911,0x2131,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x28EE,0x28AD,0x512F,0xB377,0xB2F5,0xAAB4,0xAAB4,0x9A93,0x9B54,0xDEFF,0xC6DE,0xB6DD,0xB6FD,0xAEDD,0xAEDD,0xAF1D,0xA6FD,0xA6FD,0xA6DC,0xA6DC,0xA6FD,0xAF1E,0xBF1E,0xCF1F,0x9416,0x8210,0x99F1,0xA1F2,0xB1F3,0xB9F3,0xC1F3,0xC1F3,0xC1F3,0xC9F3,0xC9F4,0xC9D3,0xC9D3,0xC9D3,0xC1D3,0xC1D3,0xC1F3,0xB1B2,0xA1D1,0xA2F4,0xD5BC,0xCEDF,0xBEFE,0xB6FD,0xAEFD,0xAEFD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6DC,0xA6FD,0xA6DD,0xA6DD,0xA6FD,0xAEFD,0xAF1D,0xAF1E,0xBF1F,0xCE7E,0x8313,0x8A11,0xA212,0xA9F3,0xB1F3,0xB9F3,0xC1F3,0xC1F3,0xC9F3,0xC9D3,0xC9F3,0xC9D3,0xC9F3,0xC9D3,0xC1D3,0xC1F3,0xC1F3,0xB9D2,0xA9F2,0x9AB3,0xD5BD,0xCEBF,0xBEDE,0xAEBD,0xAEDD,0xA6DD,0xA6DD,0xA6DC,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6DD,0xA6DD,0xA6FD,0xA6FD,0xA6FD,0xAEFD,0xB6FD,0xC6FE,0xCE7E,0x8B13,0x9212,0xA1D2,0xA9F3,0xB1F3,0xB9F3,0xC1F3,0xC1F3,0xC1F3,0xC1F3,0xC1F3,0xC9F3,0xC9F3,0xC9F3,0xC1D3,0xC1F3,0xBA13,0xB1D2,0x99F1,0xBCB9,0xCE7E,0xC6BE,0xBEDE,0xBEDE,0xC6DE,0xCEBF,0xD67F,0xA3D6,0x8211,0x99F1,0xA1D2,0xA9F2,0xB1F3,0xB9F3,0xB9F3,0xC1F3,0xC1D3,0xC1D3,0xC1D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D4,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xD1F4,0xC9D3,0xC9F4,0xC9D3,0xC9D3,0xC9F3,0xC9F3,0xC9F3,0xC9D3,0xC1D3,0xC1D3,0xB9D3,0xB9D3,0xB1D2,0xA1F2,0x8A10,0xC53A,0xD69E,0xC6DE,0xBEFE,0xB6FD,0xAEFD,0xAEFD,0xAEFD,0xA6DD,0xA6DD,0xA6DD,0xA6DD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xAEFD,0xAF1E,0xB73E,0xBF1E,0xCEFF,0xC5DC,0x69CF,0x89F1,0x99D1,0xA9D2,0xB1D2,0xB1D2,0xB9F3,0xC1F4,0xC1F3,0xC9F4,0xC9D4,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9B3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC1D3,0xC1D3,0xC1B3,0xB9B3,0xB9B3,0xB1D2,0xA212,0x8A10,0xEE3F,0xDE9F,0xD69E,0xDE7F,0xD5BD,0x92D3,0x89F1,0xA1F2,0xA9F2,0xB1F3,0xB9F3,0xC1F4,0xC1F4,0xC1F3,0xC9F3,0xC9D3,0xC9F3,0xC9D3,0xC9F4,0xC1F3,0xB9F3,0xBA13,0xA9B2,0x99F1,0xAC17,0xDE9F,0xC6BE,0xBEDE,0xB6BD,0xB6DD,0xB6DD,0xB6DD,0xB6DE,0xC6DE,0xCE5E,0x8313,0x9232,0xA213,0xAA13,0xB213,0xBA13,0xBA13,0xB9F3,0xC1F3,0xC1F3,0xC1F3,0xC1F4,0xC1F3,0xC1F4,0xC1F3,0xB9D3,0xB9D3,0xB1F2,0x9A32,0xAC77,0xCEDF,0xBEDE,0xB6FD,0xAEFD,0xAEFD,0xA6DC,0xAEFD,0xAEFD,0xAF1D,0xAF1D,0xAF1D,0xB73E,0xBF1E,0xCEDF,0xC59C,0x71F0,0x89D1,0x99D1,0xA9D2,0xB1F3,0xB1F3,0xB9F3,0xB9F4,0xC1F4,0xC1F4,0xC1F4,0xC9F4,0xC9F4,0xC9F4,0xC9F3,0xC9D3,0xC9D3,0xC9D4,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC9D3,0xC9D3,0xC9D3,0xC1D3,0xC1D3,0xC1D3,0xB9F3,0xB9F2,0xAA12,0xFD5E,0xFD9E,0xFD9E,0xC356,0xBA93,0xC294,0xC274,0xCA74,0xCA74,0xCA74,0xD254,0xD274,0xD274,0xD274,0xD274,0xD274,0xD274,0xD274,0xD274,0xD254,0xD254,0xD274,0xDA75,0xD275,0xD275,0xD276,0xD297,0xCAB8,0xC2D9,0xB33D,0x30B6,0x293A,0x215B,0x195B,0x197C,0x197C,0x199C,0x219C,0x315B,0x40F7,0x921A,0xBA59,0xB1D6,0xB9D6,0xB9D5,0xC1D5,0xC1D5,0xC1F5,0xB1F4,0xA215,0x81F5,0x6297,0x64DD,0x459F,0x359F,0x1D9F,0x157E,0x0D5D,0x055D,0x059C,0x063A,0x0EFB,0x0F5B,0x0F9A,0x0FDB,0x0FBB,0x0F9B,0x177B,0x2F5C,0x473D,0x6EBE,0x6498,0x7292,0x9A53,0xA9F3,0xB1B3,0xB9D4,0xB9F4,0xB1B3,0xB1D4,0xA172,0x9952,0xBA15,0xB1F4,0xB1F4,0xB215,0xA9D4,0x9A15,0x484D,0x4910,0x4951,0x4151,0x3951,0x3931,0x3951,0x3151,0x3150,0x3150,0x3151,0x2951,0x2930,0x2930,0x2930,0x3130,0x3130,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x2910,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2930,0x290F,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2910,0x2930,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x210F,0x290F,0x212F,0x2130,0x2130,0x2110,0x2930,0x210F,0x210F,0x2930,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1153,0x19D6,0x19F7,0x11F7,0x0996,0x0955,0x0975,0x0954,0x0934,0x0954,0x0955,0x1196,0x11D7,0x11D6,0x19B5,0x1174,0x1953,0x1932,0x2152,0x1931,0x1932,0x1932,0x1112,0x0912,0x19B5,0x2217,0x2217,0x19B6,0x1133,0x1111,0x1931,0x2130,0x2130,0x292F,0x292F,0x290F,0x210F,0x210F,0x2130,0x2130,0x1911,0x1931,0x1953,0x1994,0x1995,0x19F7,0x2218,0x11B6,0x0955,0x0954,0x1132,0x1132,0x1131,0x1932,0x1132,0x1133,0x1153,0x1195,0x19B6,0x19D7,0x11B7,0x11B7,0x19D7,0x11D7,0x11B6,0x19D7,0x19D7,0x19D7,0x1995,0x1154,0x1132,0x1911,0x1931,0x1931,0x1931,0x1911,0x1132,0x1174,0x11B6,0x1A18,0x19F8,0x19D7,0x1195,0x1133,0x1931,0x1930,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x290F,0x210F,0x212F,0x2110,0x2110,0x2110,0x2110,0x290F,0x210F,0x290F,0x2930,0x210F,0x2930,0x210F,0x210F,0x290F,0x2930,0x290F,0x2910,0x210F,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x2930,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x2930,0x2930,0x210F,0x2930,0x290F,0x2930,0x2110,0x2110,0x2131,0x2131,0x2131,0x1932,0x1112,0x1132,0x1153,0x1995,0x19D6,0x2217,0x21F7,0x19D6,0x1995,0x1154,0x1133,0x1112,0x1112,0x10F2,0x10F2,0x10F1,0x10F1,0x10F1,0x10F1,0x1111,0x1111,0x1112,0x1112,0x0912,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1932,0x1112,0x1112,0x1932,0x1132,0x1132,0x1953,0x1132,0x1132,0x1132,0x1112,0x1112,0x1112, + 0x2110,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2110,0x2930,0x2910,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x2910,0x2910,0x2910,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2930,0x290F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x210F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2151,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x1154,0x1175,0x1196,0x11B6,0x19D7,0x19F8,0x11F8,0x1A18,0x11F8,0x11F8,0x11D7,0x19D6,0x19B5,0x1953,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x2930,0x210F,0x2130,0x212F,0x212F,0x2930,0x210F,0x210F,0x2910,0x210F,0x2930,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x2930,0x2910,0x2910,0x210F,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2930,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x292F,0x212F,0x212F,0x292F,0x292F,0x210F,0x212F,0x210F,0x292F,0x292F,0x212F,0x2930,0x210F,0x292F,0x292F,0x292F,0x212F,0x2930,0x2930,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1931,0x1932,0x1952,0x1973,0x1973,0x1973,0x1973,0x1973,0x1973,0x1953,0x1132,0x1132,0x1911,0x1931,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x28EE,0x288D,0x512F,0xB357,0xB2F5,0xAAB4,0xAA94,0xA293,0x9B34,0xE6FF,0xBEDD,0xB6DD,0xB6FD,0xAEDD,0xAEDC,0xA6FD,0xA6FD,0xA6DC,0xA6DC,0xA6DC,0xA6DD,0xAEFD,0xBEFE,0xCEFF,0x9415,0x8210,0x99D1,0xA1F2,0xB1F3,0xB9F3,0xC1F3,0xC1F3,0xC1F3,0xCA14,0xCA14,0xC9F3,0xC9F3,0xC9D3,0xC9F3,0xC1F3,0xC1F3,0xB1D2,0xA212,0x9AF3,0xCDBC,0xCEBE,0xB6FE,0xB6FD,0xAEFD,0xA6DD,0xA6DD,0xA6DC,0xA6FD,0xA6FD,0xA6FD,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DD,0xAEFD,0xAEFD,0xAEFD,0xAEFD,0xBEFE,0xCE7E,0x82F3,0x8A11,0xA1F2,0xA9F3,0xB9F3,0xC1F3,0xC1F3,0xC1F3,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC9D3,0xC9F3,0xC9F3,0xC1F3,0xC1F3,0xB9D2,0xA9F2,0x9AD3,0xD59C,0xCEBE,0xBEDE,0xAEBD,0xAEDD,0xA6DD,0xA6DC,0xA6DC,0xA6DC,0xA6FD,0xA6FD,0xA6FD,0xA6FD,0xA6DD,0xA6DD,0xA6FD,0xA6FD,0xA6FD,0xAEFD,0xAEFD,0xBEFE,0xCE5E,0x8B13,0x9212,0xA1F2,0xA9F3,0xB1F3,0xB9F3,0xC1F3,0xC1F3,0xC1F3,0xC1F3,0xC1F3,0xC9F3,0xC9F3,0xC9F3,0xC1F3,0xC1F3,0xBA13,0xB1D2,0x9A11,0xC4D9,0xD67E,0xC6BE,0xC6BE,0xC6DE,0xCE9E,0xDE7F,0xA3F6,0x8211,0x99F1,0xA1D2,0xA9D2,0xB1F3,0xB9F3,0xB9F3,0xC1F3,0xC1F3,0xC1F3,0xC9F3,0xC9D3,0xC1D3,0xC9D3,0xC9F3,0xC9F3,0xC9D3,0xC9D4,0xC9D4,0xC9D4,0xC9D3,0xC9D4,0xC9D3,0xC9D3,0xC9D4,0xC9D4,0xC9F4,0xC9D3,0xC9D3,0xD1F4,0xC9F3,0xC9D3,0xC9D3,0xC9D3,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC1F3,0xC1F3,0xC1F3,0xB9D3,0xB1D2,0xA1F1,0x9271,0xCD5B,0xD6BF,0xC6DE,0xB6DD,0xAEDD,0xAEFD,0xAEDD,0xAEDD,0xA6DD,0xA6DD,0xA6DD,0xA6DD,0xA6DD,0xA6DD,0xA6DD,0xA6FD,0xA6FD,0xAF1D,0xAF1E,0xB71E,0xC6FF,0xC5FD,0x7A91,0x8A11,0x99D1,0xA9F2,0xB1D2,0xB9F3,0xB9F3,0xC214,0xC1F4,0xC9F4,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9F4,0xC9D4,0xC9D3,0xC9D3,0xC9D3,0xC9B3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9F3,0xC9F3,0xC9F4,0xC9F3,0xC9D3,0xC9D3,0xC1D3,0xC1D3,0xC1D3,0xB9D3,0xB1D2,0xA212,0xA335,0xEE1F,0xDE5F,0xDE5F,0xDDBD,0x92D4,0x91F1,0xA1D2,0xA9F2,0xB213,0xBA13,0xC214,0xC1F4,0xC1F3,0xC9F3,0xC9D3,0xC9F3,0xC9F4,0xC9F3,0xC1F3,0xC213,0xBA13,0xA9D2,0x99F1,0xB437,0xDE9F,0xC6BE,0xBEDD,0xB6BD,0xB6BD,0xB6DD,0xB6DD,0xB6DD,0xC6DE,0xCE5E,0x8313,0x9232,0xA212,0xAA13,0xB213,0xBA13,0xBA13,0xB9F3,0xC1F3,0xC1F3,0xC1F3,0xC1F3,0xC1F3,0xC1F3,0xC1F3,0xB9F3,0xB9F3,0xB1F2,0x9A31,0xAC78,0xCEBE,0xBEDD,0xB6FD,0xAEFD,0xAEDC,0xAEDC,0xAEFD,0xAEFD,0xAEFD,0xAF1D,0xAF1D,0xB71E,0xC6FF,0xBDBB,0x82B2,0x89F1,0x99B1,0xA9D2,0xB1F3,0xB9F3,0xB9F3,0xC1F3,0xC1F3,0xC1F4,0xC1F4,0xC9F3,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D4,0xC9D4,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9D3,0xC9F3,0xC9D3,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC9F4,0xC9F4,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC1F3,0xC1F3,0xC1F3,0xB212,0xBAD4,0xFD7E,0xFDBE,0xFD9E,0xBAD4,0xBA73,0xC274,0xC274,0xCA74,0xCA74,0xCA54,0xD254,0xD274,0xD274,0xD254,0xD254,0xD254,0xD254,0xD274,0xD254,0xD254,0xD254,0xD255,0xD255,0xD255,0xD276,0xD297,0xCAB8,0xC2D9,0xAAFC,0x38B6,0x2919,0x215B,0x217C,0x197C,0x197C,0x199C,0x197C,0x297B,0x3918,0x7178,0xB25A,0xB218,0xB9F6,0xB9D5,0xC1D5,0xC1F5,0xC1D4,0xB1F4,0xA215,0x89F5,0x6276,0x5C7C,0x4D9F,0x359F,0x1D9F,0x157E,0x0D7D,0x057D,0x059C,0x063A,0x06DA,0x0F5B,0x0F9A,0x0F9A,0x0FBB,0x0F7B,0x1F7B,0x2F5C,0x4F3D,0x6EBE,0x6457,0x7292,0x9A33,0xA9F3,0xB1D4,0xB1D4,0xB9D4,0xB1B4,0xB1D4,0xA172,0x9952,0xB1F4,0xB1F4,0xB1F4,0xB1F4,0xA9F4,0x91F4,0x50AF,0x4910,0x4151,0x3951,0x3931,0x3971,0x3151,0x3151,0x3171,0x2971,0x2950,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x210F,0x290F,0x290F,0x2930,0x210F,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x290F,0x210F,0x212F,0x2130,0x2110,0x2130,0x2130,0x210F,0x2930,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1911,0x1153,0x19D6,0x19F7,0x11F7,0x1196,0x0976,0x0975,0x0975,0x0954,0x0134,0x0955,0x11B6,0x19D7,0x19D6,0x1195,0x1173,0x1952,0x1932,0x2152,0x1951,0x1932,0x1932,0x1132,0x1113,0x1995,0x21F7,0x21F7,0x19B6,0x1112,0x1111,0x2151,0x2150,0x2130,0x212F,0x210F,0x290F,0x290F,0x2930,0x2130,0x2110,0x2111,0x1931,0x1932,0x1974,0x1175,0x19B6,0x2218,0x19F7,0x0975,0x0954,0x1133,0x1132,0x1952,0x1931,0x1132,0x1132,0x1953,0x1153,0x1175,0x19B6,0x11B6,0x19B6,0x11B6,0x11B6,0x19B6,0x19B6,0x1196,0x1195,0x1174,0x1953,0x1932,0x1931,0x1931,0x1931,0x1931,0x1112,0x1133,0x1175,0x19D7,0x1A18,0x19D7,0x11B6,0x1153,0x1132,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2110,0x2130,0x2110,0x210F,0x2930,0x2110,0x210F,0x2110,0x2110,0x210F,0x290F,0x290F,0x2930,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2910,0x2110,0x2930,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x210F,0x2930,0x210F,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2131,0x2131,0x1911,0x1112,0x1133,0x1154,0x19B5,0x21F7,0x21F7,0x19D6,0x19B5,0x1154,0x1133,0x1112,0x1111,0x10F1,0x1911,0x1911,0x18F1,0x18F0,0x1910,0x1910,0x1910,0x18F0,0x1910,0x1910,0x1911,0x1931,0x1911,0x1911,0x1931,0x1911,0x1911,0x18F1,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1931, + 0x2110,0x2110,0x2110,0x2110,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2110,0x2110,0x2110,0x2930,0x2910,0x2910,0x2910,0x2110,0x2110,0x2910,0x2910,0x210F,0x210F,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x2930,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x290F,0x2910,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x292F,0x212F,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2151,0x2151,0x2151,0x2151,0x2151,0x2131,0x2151,0x2131,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x1951,0x2151,0x1931,0x1931,0x2151,0x1931,0x2152,0x2131,0x2131,0x2151,0x2131,0x1931,0x1931,0x1931,0x1932,0x1133,0x1154,0x1175,0x1196,0x11B7,0x19F8,0x11F8,0x11B7,0x09B7,0x11D7,0x11F8,0x11F8,0x11F8,0x19F7,0x19B6,0x19B5,0x1953,0x1931,0x2131,0x2110,0x2110,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2110,0x2110,0x210F,0x2110,0x210F,0x212F,0x210F,0x2930,0x210F,0x2110,0x2930,0x2130,0x2930,0x210F,0x290F,0x290F,0x292F,0x292F,0x290F,0x2930,0x2930,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2930,0x210F,0x290F,0x210F,0x212F,0x292F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x292F,0x212F,0x212F,0x210F,0x2130,0x210F,0x2130,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1931,0x1931,0x1952,0x1952,0x1953,0x1974,0x1994,0x21D5,0x21F6,0x2A37,0x2216,0x21D5,0x1994,0x1973,0x1152,0x1952,0x1931,0x1931,0x2131,0x2130,0x2110,0x2130,0x212F,0x212F,0x292F,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x28EE,0x288D,0x512F,0xB337,0xB2D5,0xAA94,0xAA73,0xA273,0x9B13,0xE6FF,0xC6FE,0xBEDD,0xB6FD,0xAEBD,0xAEDC,0xA6DD,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DD,0xAEDD,0xBEFE,0xCEDF,0x93F5,0x8210,0x99F2,0xA1F2,0xB1F3,0xBA13,0xC214,0xC214,0xCA14,0xCA14,0xCA14,0xC9F4,0xC9F4,0xCA14,0xC9F3,0xC1F3,0xC213,0xB9F3,0xAA32,0xAB95,0xCDBC,0xC69E,0xB6DD,0xAEDD,0xAEDD,0xA6DD,0xA6DC,0xA6DC,0xA6DC,0xA6FC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xAEDD,0xAEDD,0xBEBE,0xCE5E,0x82F2,0x8A31,0x99F2,0xAA12,0xBA13,0xC213,0xC214,0xC9F4,0xC9F3,0xC9F4,0xC9F3,0xC9F4,0xC9F3,0xC9F3,0xC1F4,0xC214,0xC213,0xB9D2,0xAA12,0xA314,0xCD7C,0xCEBF,0xBEDE,0xB6DD,0xAEDD,0xA6DD,0xA6DD,0xA6DC,0x9EDC,0xA6DC,0x9EDC,0xA6DC,0xA6DC,0xA6DD,0xA6DD,0xA6FD,0xA6FD,0xA6FD,0xA6DD,0xAEFD,0xBEDE,0xCE5E,0x8B54,0x8A11,0xA212,0xA9F3,0xB1F3,0xBA14,0xC214,0xC214,0xC213,0xC9F3,0xCA13,0xC9F3,0xC9F3,0xC9F3,0xC1F3,0xC1F3,0xBA33,0xB1F2,0x91F1,0xDDBD,0xD67E,0xCE9E,0xC6BE,0xCE9E,0xDE7F,0xAC37,0x81F0,0x91F1,0xA1F2,0xA9F2,0xB1F3,0xBA13,0xC214,0xC214,0xC1F3,0xC1F3,0xCA14,0xC9F4,0xC9F4,0xCA14,0xC9F4,0xC9F4,0xC9F4,0xC9F3,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F3,0xC9F3,0xC9F3,0xC9F4,0xD1F4,0xC9F4,0xC9F4,0xC9F3,0xC9F3,0xCA14,0xCA13,0xC1F3,0xC1F3,0xB9F3,0xB1F2,0xA1F1,0x81F0,0xD5BC,0xCE9E,0xBEBE,0xB6DD,0xAEDD,0xAEDD,0xAEDC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DD,0xA6DD,0xA6FD,0xAEFD,0xAF1D,0xB71E,0xBEFE,0xD69F,0x82D2,0x81F0,0x99F1,0xA9F2,0xB1F3,0xB1F3,0xBA13,0xC214,0xC214,0xCA14,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xD1F4,0xC9F4,0xC9F4,0xD1F4,0xC9D3,0xC9D4,0xD1F4,0xC9D4,0xC9F4,0xC9F4,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC9F4,0xC9F4,0xCA14,0xC9F4,0xC9F4,0xC9F4,0xC9F3,0xC1F4,0xC1D3,0xC1F3,0xB9D3,0xB1F3,0xA232,0xCC39,0xEE3F,0xE61E,0xE5BE,0x9AF4,0x91F1,0xA1D2,0xA9F2,0xB213,0xC214,0xC214,0xC1F3,0xC9F3,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xCA14,0xC214,0xC214,0xBA13,0xB1F2,0x99F1,0xB437,0xDE9F,0xC6BE,0xBEDE,0xB6BD,0xB6BD,0xB6DD,0xB6DD,0xB6DD,0xC6DE,0xCE5E,0x82F3,0x8A31,0xA212,0xAA13,0xB233,0xBA13,0xBA13,0xC214,0xC214,0xC213,0xC1F3,0xCA13,0xC1F3,0xCA14,0xC1F3,0xC1F3,0xB9F3,0xB212,0xA272,0xB4B8,0xCE9E,0xBEDD,0xB6FD,0xAEDC,0xAEDC,0xAEDC,0xAEDC,0xAEDC,0xAEFD,0xAEFD,0xB71E,0xC6FE,0xCE7E,0x8B33,0x8A11,0x99F2,0xA9D2,0xB1F3,0xB9F3,0xBA13,0xC213,0xC1F4,0xC1F4,0xCA14,0xC9F4,0xCA14,0xC9F4,0xC9F4,0xC9F3,0xC9F4,0xC9F4,0xC9D4,0xD1D4,0xC9D3,0xC9D3,0xC9D4,0xC9D4,0xC9F4,0xC9D3,0xC9D3,0xC9D3,0xC9F3,0xC9F3,0xC9F4,0xC9F4,0xC9F3,0xC9F3,0xC9F4,0xC9F3,0xC9F4,0xCA14,0xCA14,0xCA14,0xC9F3,0xC9F3,0xC9F3,0xC1F3,0xC1F3,0xBA13,0xB212,0xD397,0xFDDF,0xFDDE,0xFDBE,0xBB14,0xBA93,0xC273,0xC254,0xCA54,0xCA54,0xCA54,0xD254,0xD254,0xD254,0xD254,0xD254,0xD254,0xD254,0xD254,0xD254,0xD254,0xDA55,0xDA55,0xD255,0xD256,0xD277,0xCA98,0xC2B9,0xAAFC,0x38B6,0x291A,0x215B,0x217C,0x197D,0x117D,0x199D,0x197C,0x297C,0x3939,0x5917,0x9A3A,0xB218,0xB9F7,0xC1D6,0xC1D5,0xC1F5,0xC1F5,0xB9F5,0xA9F5,0x91F5,0x6A76,0x53FA,0x4D5E,0x359F,0x1DBF,0x157E,0x0D7D,0x0D9D,0x05BC,0x063A,0x06DA,0x0F7B,0x0F9A,0x0F9A,0x0F9A,0x0F7A,0x1F5B,0x2F3C,0x4F1D,0x76BE,0x6457,0x7272,0x9A33,0xA1B2,0xB1D3,0xB1D4,0xB1B4,0xB1D4,0xB1F4,0x9952,0xA193,0xA9D4,0xA9D4,0xB1F4,0xA9D4,0xAA15,0x89B3,0x50F0,0x4931,0x4130,0x3951,0x3951,0x3951,0x3151,0x3171,0x2951,0x2951,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x2910,0x210F,0x290F,0x290F,0x2930,0x210F,0x2930,0x290F,0x290F,0x210F,0x210F,0x2910,0x210F,0x2910,0x290F,0x290F,0x2930,0x2910,0x210F,0x2930,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x18F0,0x10F1,0x1132,0x1995,0x19F6,0x19F7,0x11D7,0x11B7,0x11D7,0x09B6,0x0996,0x0976,0x09B6,0x11F7,0x1A17,0x19D6,0x1194,0x1152,0x1131,0x1931,0x1931,0x1931,0x1931,0x1932,0x1112,0x1113,0x21D6,0x2A38,0x2217,0x1995,0x1112,0x1111,0x1931,0x2130,0x2130,0x210F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2110,0x2131,0x2131,0x1932,0x1133,0x1154,0x1996,0x2218,0x1A18,0x0975,0x0934,0x0933,0x1132,0x1952,0x1952,0x1131,0x1932,0x1932,0x1933,0x1154,0x1174,0x1175,0x1175,0x11B5,0x11B5,0x1195,0x1975,0x1974,0x1154,0x1953,0x1932,0x1931,0x1911,0x1931,0x1951,0x1931,0x1132,0x1153,0x19B6,0x1A18,0x1A18,0x19F7,0x1195,0x0912,0x1111,0x1931,0x2130,0x2951,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x290F,0x2910,0x2910,0x2910,0x210F,0x2930,0x2930,0x290F,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2131,0x1911,0x1911,0x1112,0x1133,0x1174,0x19D6,0x21F7,0x21F7,0x19D6,0x1995,0x1153,0x1132,0x1112,0x1111,0x1931,0x1931,0x2131,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x1910,0x1930,0x2131,0x2131,0x1930,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2131,0x2110,0x2130,0x1910,0x2131,0x2131,0x2131,0x1910,0x2130,0x1930,0x1930,0x1910,0x2130,0x2110,0x2131,0x1910,0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2131,0x2130,0x2151,0x2151, + 0x2110,0x210F,0x2910,0x2910,0x2930,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x210F,0x2130,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x2930,0x2910,0x2110,0x2110,0x2910,0x2110,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x2910,0x290F,0x2910,0x2930,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x1911,0x2111,0x1911,0x2111,0x2131,0x2131,0x1931,0x1931,0x2131,0x2131,0x2131,0x1931,0x1931,0x2131,0x1931,0x2131,0x1931,0x1931,0x1931,0x2131,0x2131,0x2131,0x1931,0x1931,0x1931,0x1951,0x1931,0x2152,0x1931,0x2151,0x2151,0x2131,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1931,0x1931,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1911,0x1911,0x1111,0x1112,0x1133,0x1154,0x1175,0x11B6,0x11B7,0x11D7,0x11F8,0x09B7,0x0996,0x0996,0x0976,0x0996,0x09B7,0x11B7,0x19F8,0x11B6,0x19B5,0x1973,0x1932,0x2131,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x210F,0x2110,0x2910,0x2110,0x2110,0x2110,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2910,0x2930,0x2930,0x2930,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x1932,0x1932,0x1953,0x1153,0x1995,0x21D6,0x21F6,0x2217,0x19D6,0x2217,0x2217,0x2217,0x21F6,0x19D5,0x1994,0x1953,0x1952,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x2930,0x292F,0x2930,0x2930,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x28EE,0x288D,0x512F,0xB337,0xB2D5,0xAA94,0xAA73,0xA273,0x92F3,0xE6FF,0xC6FE,0xBEFD,0xB6FD,0xAEBC,0xAEBC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xAEFD,0xB6FD,0xBEDE,0xCEDF,0x93F5,0x8210,0x9A12,0xAA13,0xB213,0xBA34,0xC234,0xCA34,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xC214,0xC213,0xB9F3,0xA232,0xAB95,0xC5BB,0xC69D,0xB6BD,0xAEDD,0xAEDD,0xA6DD,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xAEDC,0xAEDD,0xBEFE,0xCE7E,0x8313,0x8A31,0x9A12,0xAA13,0xBA13,0xC214,0xC214,0xCA14,0xCA14,0xC9F4,0xCA14,0xC9F4,0xC9F4,0xCA14,0xCA14,0xC234,0xC214,0xB9F3,0xAA32,0xAB55,0xCD9C,0xCE9E,0xB6DE,0xB6DD,0xAEDD,0xA6DD,0xA6DD,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DD,0xA6FD,0xA6FD,0xA6FC,0xAEFD,0xAEFD,0xBEFE,0xCE3D,0x8313,0x8A32,0xA213,0xAA33,0xB213,0xBA14,0xC214,0xC214,0xCA14,0xCA14,0xCA14,0xC9F3,0xCA14,0xCA14,0xC213,0xC1F3,0xC233,0xB1F2,0x9211,0xDDBC,0xD65E,0xCE9E,0xCE9E,0xD67E,0xAC78,0x8210,0x91D1,0xA1F2,0xA9F3,0xB1F3,0xBA13,0xC213,0xC234,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F3,0xC9F3,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xD214,0xC9F4,0xCA14,0xCA14,0xCA14,0xCA14,0xCA13,0xCA13,0xC213,0xC213,0xB1D2,0xA211,0x92B2,0xD5DD,0xCE9E,0xBEDD,0xB6DD,0xAEDD,0xAEDD,0xAEFD,0xA6BC,0xA6BC,0xA6BC,0xAEDC,0xAEDC,0xAEFD,0xAEFD,0xAF1D,0xB73E,0xBEFE,0xCEBE,0x8BB4,0x7A10,0x91D1,0xA1F2,0xB213,0xB213,0xBA13,0xC234,0xC214,0xCA14,0xCA14,0xCA14,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xD214,0xC9F4,0xC9F4,0xD1F4,0xD1F4,0xD1F4,0xD1F4,0xD1F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xD1F4,0xC9F3,0xC9F3,0xCA14,0xC9F4,0xCA14,0xC9F4,0xD214,0xCA14,0xCA14,0xCA14,0xC9F4,0xCA14,0xCA14,0xC9F4,0xC9F4,0xC1F4,0xC1D3,0xB9F3,0xB213,0x9A32,0xED7D,0xEDFF,0xE59E,0xA2F4,0x91D1,0xA1D1,0xB213,0xBA13,0xC234,0xC214,0xC213,0xCA14,0xC9F3,0xCA14,0xCA14,0xCA14,0xCA34,0xC234,0xC214,0xC234,0xB1F2,0x99F1,0xB437,0xDE7E,0xC6BE,0xBEBD,0xB6BD,0xB6BC,0xB6BD,0xB6DD,0xB6DD,0xC6DE,0xCE5E,0x82F2,0x8A31,0x9A12,0xAA13,0xB233,0xBA34,0xC234,0xC234,0xC214,0xC214,0xCA13,0xCA13,0xCA13,0xC213,0xC1F3,0xC1F3,0xBA13,0xB212,0x9A52,0xBCD8,0xCE9E,0xBEDD,0xB6DD,0xAEDC,0xAEBC,0xAEDC,0xAEDC,0xAEDC,0xAEDC,0xB71D,0xBF1E,0xCEBE,0x93F6,0x8A51,0x91F2,0xA1F2,0xB1F3,0xBA14,0xC234,0xC214,0xC214,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA13,0xC9F3,0xC9F3,0xC9F4,0xC9F3,0xC9F3,0xC9F3,0xD1F4,0xC9D4,0xC9D4,0xC9D3,0xC9D3,0xC9F3,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F3,0xC9F4,0xC9F4,0xCA14,0xCA13,0xCA14,0xCA14,0xCA14,0xCA14,0xCA13,0xCA14,0xCA14,0xCA13,0xCA13,0xC213,0xC213,0xC213,0xAA11,0xF4FC,0xFDFF,0xFE1F,0xFDDE,0xB2B3,0xBA73,0xC253,0xC253,0xCA54,0xCA54,0xCA54,0xD254,0xD254,0xD254,0xD254,0xD234,0xD234,0xD234,0xD234,0xD254,0xD234,0xDA55,0xD235,0xD255,0xD277,0xCA98,0xC2B9,0xAAFC,0x38B6,0x291A,0x215B,0x217C,0x197C,0x117D,0x199D,0x199D,0x299C,0x313A,0x4918,0x81DA,0xAA39,0xB9F7,0xB9D6,0xC1D5,0xC1F5,0xC1F5,0xB9F5,0xA9D5,0x91F5,0x7256,0x5399,0x4D1E,0x359F,0x25BF,0x159E,0x0D9E,0x0D9D,0x05DC,0x063A,0x06BA,0x0F5B,0x0F9A,0x0F9A,0x0F9A,0x179B,0x1F5B,0x2F3C,0x4F1D,0x767D,0x6437,0x7272,0x9A33,0xA1D3,0xB1D4,0xB1D4,0xB9F5,0xB1B3,0xB215,0x88F0,0x9973,0xA9F4,0xA9D4,0xA9D4,0xA9F4,0xA215,0x8172,0x50F0,0x4930,0x4131,0x3930,0x3151,0x3971,0x3171,0x3171,0x2951,0x2951,0x2951,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2910,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x292F,0x2910,0x2910,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2910,0x210F,0x2910,0x290F,0x290F,0x2910,0x2910,0x210F,0x290F,0x210F,0x2910,0x210F,0x290F,0x210F,0x290F,0x292F,0x212F,0x292F,0x210F,0x212F,0x212F,0x210F,0x2110,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x1910,0x18F0,0x1911,0x1932,0x1973,0x11B5,0x1A17,0x11D7,0x11D7,0x1218,0x11D7,0x09B7,0x09B6,0x11D7,0x11F7,0x19D6,0x1194,0x1173,0x1132,0x1932,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1113,0x19B6,0x2217,0x2217,0x19B5,0x1112,0x1112,0x2131,0x2130,0x2130,0x2130,0x292F,0x290F,0x2930,0x2930,0x2110,0x2130,0x2131,0x2131,0x1932,0x1112,0x1954,0x1995,0x19F7,0x2218,0x1196,0x0954,0x0953,0x1153,0x1152,0x1952,0x1111,0x1931,0x1932,0x1932,0x1953,0x1153,0x1154,0x1174,0x1174,0x1174,0x1174,0x1974,0x1153,0x1953,0x1953,0x1932,0x1111,0x1931,0x1931,0x1932,0x1132,0x1132,0x1175,0x19F7,0x2218,0x19F8,0x19D7,0x1175,0x1112,0x1111,0x1931,0x2130,0x2150,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2910,0x2110,0x2110,0x2910,0x2910,0x2930,0x290F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x290F,0x210F,0x2930,0x210F,0x290F,0x2930,0x210F,0x210F,0x292F,0x210F,0x290F,0x290F,0x2930,0x2930,0x2110,0x2110,0x2130,0x2131,0x2131,0x1911,0x1112,0x1153,0x1174,0x21D6,0x21F7,0x21F7,0x19D6,0x1995,0x1153,0x1132,0x1132,0x1931,0x1931,0x1931,0x2131,0x2130,0x2110,0x2130,0x2110,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130, + 0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2930,0x2910,0x2910,0x210F,0x210F,0x290F,0x210F,0x2930,0x2930,0x2910,0x2930,0x2110,0x2930,0x210F,0x2910,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2150,0x2130,0x2130,0x2130,0x1931,0x1931,0x2131,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1912,0x1932,0x1932,0x1912,0x1932,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1912,0x1112,0x1112,0x1132,0x1132,0x1132,0x1111,0x1111,0x1111,0x1111,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1112,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1133,0x1154,0x1175,0x11B6,0x11D7,0x11B7,0x09B7,0x0997,0x0996,0x0976,0x0975,0x0155,0x0155,0x0976,0x11B6,0x11D7,0x19D7,0x19B5,0x1153,0x1932,0x1931,0x2131,0x2130,0x2110,0x210F,0x210F,0x212F,0x2930,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2930,0x2930,0x212F,0x210F,0x210F,0x210F,0x2110,0x2910,0x2110,0x2930,0x210F,0x2930,0x212F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x290F,0x210F,0x212F,0x2930,0x210F,0x212F,0x2930,0x2930,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x290F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2930,0x2910,0x2910,0x2110,0x2110,0x2110,0x2130,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2110,0x2131,0x2110,0x2131,0x2131,0x2130,0x2110,0x2131,0x2151,0x1931,0x1931,0x1931,0x1932,0x1153,0x1974,0x21D6,0x21F7,0x19D7,0x19D7,0x1196,0x1195,0x1196,0x11B6,0x11D6,0x19F7,0x2217,0x19B5,0x1974,0x1132,0x1931,0x2131,0x2131,0x2130,0x2130,0x212F,0x2930,0x292F,0x2930,0x2930,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x290F,0x28EE,0x288D,0x594F,0xB337,0xB2D5,0xAA94,0xAA73,0xA253,0x92D2,0xE6FF,0xC6FE,0xBEDD,0xB6FD,0xAEBC,0xAEBC,0xA6DC,0xA6BC,0xA6DC,0xA6DC,0xA6DC,0xAEFD,0xB6FD,0xBEFE,0xD6FF,0x9415,0x8210,0x9A12,0xAA13,0xB233,0xBA34,0xC234,0xC234,0xCA34,0xCA34,0xCA14,0xCA14,0xCA14,0xCA14,0xCA34,0xC214,0xC213,0xBA13,0xA252,0xA395,0xC59B,0xC6BE,0xB6DD,0xAEDC,0xAEFD,0xAEDD,0xA6DD,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xAEFC,0xB71D,0xC71E,0xCE7E,0x82F2,0x8A31,0x9A12,0xAA33,0xBA34,0xC234,0xCA34,0xCA34,0xCA14,0xCA34,0xD234,0xCA13,0xCA13,0xCA14,0xCA34,0xC234,0xC233,0xBA13,0xAA32,0xAB96,0xCD9C,0xC67E,0xB6BD,0xAEBC,0xAEDC,0xAEDC,0xAEFD,0xA6FD,0xA6FC,0xA6FC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6FC,0xAEFC,0xAF1D,0xAEFD,0xBEFE,0xCE7E,0x8313,0x8A31,0xA212,0xAA33,0xBA33,0xC234,0xCA34,0xCA34,0xCA34,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xC213,0xC233,0xB212,0xAA93,0xDDBD,0xD65E,0xCE7E,0xD65E,0xD59C,0x8251,0x89F1,0x99D1,0xAA13,0xB233,0xBA34,0xC234,0xC234,0xCA34,0xCA14,0xCA14,0xCA14,0xCA14,0xCA34,0xCA34,0xCA14,0xD214,0xCA14,0xCA14,0xD214,0xCA14,0xC9F4,0xC9F4,0xCA14,0xC9F4,0xCA14,0xCA14,0xCA14,0xC9F4,0xC9F4,0xCA14,0xCA14,0xCA14,0xC9F4,0xCA14,0xCA14,0xCA14,0xD214,0xCA14,0xD214,0xD214,0xCA14,0xCA14,0xCA34,0xCA14,0xCA34,0xCA13,0xC213,0xC233,0xC213,0xB212,0xA232,0x9B34,0xDE9F,0xC6BD,0xBEBD,0xB6DD,0xB6DD,0xAEDD,0xAEDC,0xAEBC,0xAEBC,0xAEDC,0xAEDC,0xAEFD,0xAEFD,0xAEFD,0xB71D,0xC6FE,0xB53A,0x7A50,0x89F1,0x99D1,0xA9F2,0xB233,0xBA33,0xC254,0xC234,0xCA34,0xCA34,0xCA14,0xD234,0xD214,0xCA14,0xCA14,0xCA14,0xD214,0xD1F4,0xD1F4,0xD214,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xCA14,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xCA14,0xCA14,0xCA14,0xCA14,0xD234,0xD234,0xCA14,0xCA14,0xD214,0xD234,0xCA14,0xCA14,0xCA14,0xCA14,0xC214,0xC214,0xBA13,0xB253,0xAAF5,0xF59E,0xED7E,0xA2F4,0x91D1,0xA1D1,0xB213,0xBA33,0xC234,0xC234,0xC213,0xCA13,0xCA14,0xCA34,0xCA14,0xCA34,0xCA34,0xC234,0xC234,0xC234,0xB1F2,0x9A11,0xB437,0xDE7E,0xC6BD,0xBEDD,0xB6BD,0xB6BC,0xB6BC,0xB6BC,0xB6DD,0xC6BE,0xD65E,0x8312,0x8A31,0x9A12,0xAA33,0xB233,0xC254,0xC254,0xC234,0xCA34,0xCA34,0xCA34,0xCA34,0xCA14,0xCA14,0xC213,0xC213,0xC233,0xBA33,0xA272,0xBCB8,0xCE9E,0xBEBD,0xB6DD,0xAEDC,0xAEBC,0xAEDC,0xAEDC,0xAEFC,0xB6FD,0xB73E,0xC6FF,0xC5BC,0x82B2,0x8A11,0x99D2,0xA9F2,0xB233,0xC254,0xC254,0xC234,0xCA34,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xD1F4,0xC9F4,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC9F4,0xC9F4,0xC9F4,0xC9F3,0xC9F4,0xC9F4,0xCA14,0xCA14,0xCA14,0xCA34,0xD234,0xCA34,0xCA34,0xCA34,0xCA34,0xCA14,0xCA34,0xCA34,0xCA34,0xCA33,0xC233,0xBA53,0xBAD4,0xFDDE,0xFE3E,0xFE3E,0xFDFE,0xBB14,0xB273,0xBA33,0xC213,0xCA14,0xCA34,0xCA34,0xCA34,0xD234,0xD234,0xD234,0xD234,0xD234,0xD234,0xD234,0xD234,0xD235,0xD214,0xCA35,0xCA57,0xCA78,0xC299,0xAADC,0x38B6,0x311A,0x215B,0x197C,0x197D,0x117D,0x199D,0x199D,0x217C,0x315B,0x4119,0x5917,0xA23A,0xB1F7,0xB9D6,0xC1D5,0xC1F5,0xC1F5,0xB9D5,0xA9D5,0x91D5,0x7236,0x5339,0x4CBD,0x3D9F,0x25DF,0x159E,0x0D9D,0x0DBD,0x0DFC,0x063A,0x06B9,0x0F5A,0x0F7A,0x077A,0x0F7A,0x179B,0x1F7B,0x375C,0x4F1D,0x6E7D,0x5BD6,0x7273,0x9A33,0xAA14,0xB1F4,0xB1B4,0xB1B4,0xB1F4,0xB1F4,0x80AF,0x9993,0xA9F4,0xA9F4,0xAA15,0xAA15,0x99F4,0x68F0,0x5110,0x4931,0x4151,0x3951,0x3131,0x3951,0x3151,0x3151,0x3171,0x2971,0x2971,0x2950,0x2950,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x2930,0x2930,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x2930,0x290F,0x2930,0x290F,0x2930,0x210F,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x212F,0x212F,0x290F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2110,0x1910,0x1930,0x1931,0x1952,0x1953,0x1974,0x1195,0x1195,0x0996,0x11F8,0x11D7,0x11B7,0x11B7,0x11D7,0x11D6,0x1174,0x1153,0x1153,0x1952,0x1952,0x1951,0x1951,0x1931,0x1931,0x1932,0x1953,0x1133,0x19B6,0x21F7,0x21F7,0x19B5,0x1112,0x1932,0x2131,0x2130,0x2130,0x210F,0x2930,0x2930,0x210F,0x210F,0x2110,0x2130,0x2131,0x2131,0x1911,0x1932,0x1954,0x1995,0x19D6,0x19F7,0x11B6,0x1195,0x1194,0x0953,0x1152,0x1132,0x1932,0x1932,0x1932,0x1932,0x1932,0x1953,0x1153,0x1153,0x1152,0x1153,0x1973,0x1953,0x1952,0x1952,0x1932,0x1911,0x1111,0x1931,0x1931,0x1132,0x1153,0x1174,0x19D6,0x2218,0x19F8,0x19B7,0x1175,0x1134,0x1932,0x1952,0x1931,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x290F,0x290F,0x2930,0x2910,0x210F,0x2910,0x2910,0x2910,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2130,0x2110,0x1911,0x1911,0x1932,0x1953,0x1175,0x21D6,0x21F7,0x21F7,0x19B6,0x1174,0x1133,0x1132,0x1932,0x1931,0x1931,0x1910,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x212F,0x2130,0x2130,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F, + 0x2930,0x290F,0x2910,0x2930,0x2130,0x2130,0x2130,0x2110,0x2930,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x2930,0x2910,0x2110,0x2910,0x2930,0x2110,0x2110,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2110,0x2110,0x210F,0x292F,0x292F,0x210F,0x212F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1910,0x1931,0x1931,0x1932,0x1932,0x1932,0x1952,0x1932,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x10F2,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x0912,0x0912,0x1112,0x1112,0x1112,0x0912,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1133,0x1153,0x1153,0x1154,0x1175,0x1175,0x1196,0x11B7,0x11B7,0x11B7,0x0997,0x0976,0x0996,0x0996,0x0975,0x0154,0x0134,0x0155,0x0996,0x19D7,0x19D7,0x19B6,0x1974,0x1932,0x1931,0x2131,0x2130,0x2110,0x2130,0x2130,0x2930,0x210F,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x2930,0x2930,0x210F,0x2930,0x2910,0x2110,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x212F,0x212F,0x2930,0x2930,0x290F,0x210F,0x292F,0x212F,0x212F,0x2130,0x2930,0x210F,0x2930,0x2930,0x2930,0x292F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2931,0x2111,0x2131,0x2110,0x2110,0x2110,0x2111,0x2111,0x2131,0x2130,0x1910,0x2111,0x2111,0x2111,0x2111,0x2111,0x2131,0x1911,0x2131,0x2111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1910,0x1931,0x1911,0x1931,0x1131,0x1111,0x1133,0x1174,0x19D6,0x19D7,0x19D7,0x11B6,0x0996,0x0976,0x0976,0x0996,0x0975,0x0975,0x11D6,0x1A17,0x19F6,0x1995,0x1133,0x1932,0x2131,0x2131,0x2130,0x2130,0x212F,0x2930,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x2930,0x292F,0x290F,0x28EE,0x288D,0x512F,0xAB16,0xB2B5,0xAA74,0xAA53,0xA253,0x8A92,0xE6FF,0xC6DD,0xBEFD,0xB6FD,0xAEBC,0xAEBC,0xAEDC,0xA6DC,0xA6DC,0xAEDC,0xAEFD,0xAEFD,0xB71D,0xBF1E,0xD6FF,0x9415,0x8230,0x9A12,0xA233,0xB233,0xBA34,0xC234,0xCA34,0xCA34,0xCA34,0xCA34,0xCA34,0xD234,0xD234,0xCA34,0xCA34,0xC234,0xBA13,0xAA73,0xA375,0xC59B,0xCEBE,0xB6DD,0xAEDC,0xAEDC,0xAEDC,0xAEDC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xAEDC,0xAEDC,0xAEFC,0xB71D,0xC6FE,0xCE7E,0x8312,0x8A31,0x9A12,0xAA33,0xBA34,0xC234,0xCA34,0xCA34,0xCA34,0xD234,0xD234,0xD234,0xCA34,0xCA34,0xCA34,0xC234,0xC233,0xB213,0xA252,0xB3F7,0xCDDC,0xC69D,0xB69D,0xB6BC,0xAEDC,0xAEDC,0xAEDC,0xA6FC,0xA6FC,0xA6FC,0xA6FC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xA6FC,0xAEFC,0xAEFD,0xAEFD,0xBEFE,0xCE5D,0x8312,0x8A51,0xA232,0xAA53,0xBA33,0xC254,0xCA54,0xCA34,0xCA34,0xCA34,0xCA34,0xCA14,0xCA34,0xCA34,0xCA14,0xC233,0xC233,0xBA33,0xAA93,0xE5DD,0xD63D,0xD65E,0xE67F,0x9B54,0x89F0,0x99F1,0xAA12,0xB233,0xBA34,0xC254,0xCA54,0xCA34,0xCA33,0xCA34,0xCA13,0xCA13,0xD234,0xD234,0xD234,0xD234,0xCA34,0xD234,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA13,0xCA14,0xC213,0xC213,0xC213,0xC213,0xC213,0xCA14,0xCA14,0xCA14,0xCA14,0xCA34,0xCA34,0xCA34,0xCA14,0xD234,0xD234,0xD234,0xD234,0xCA14,0xCA14,0xCA33,0xCA33,0xCA34,0xCA33,0xCA34,0xC234,0xBA33,0xB232,0x9A72,0xB498,0xD69E,0xC6DD,0xB6DD,0xB6FD,0xB6DD,0xAEDC,0xAEBC,0xAEDC,0xAEDC,0xAEDC,0xAEFD,0xAF1D,0xB71D,0xBF1E,0xD6DE,0x82F2,0x8210,0x9A11,0xAA12,0xB233,0xBA53,0xC254,0xC254,0xCA34,0xCA34,0xCA34,0xCA34,0xD234,0xD214,0xD234,0xD234,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xC213,0xC213,0xC213,0xCA14,0xCA14,0xCA14,0xCA14,0xCA34,0xCA34,0xCA14,0xCA14,0xCA34,0xD234,0xCA34,0xD234,0xD234,0xCA34,0xCA34,0xCA34,0xCA34,0xCA34,0xCA34,0xC234,0xC234,0xBA54,0xAA73,0xECBC,0xED1D,0xAAF5,0x99F1,0xA1D1,0xB213,0xBA34,0xC234,0xCA34,0xCA34,0xCA34,0xCA34,0xCA34,0xCA34,0xCA34,0xCA34,0xCA34,0xC234,0xC254,0xB212,0x9A11,0xB437,0xDE9E,0xCEBD,0xBEBD,0xBEBD,0xB6BC,0xB6BC,0xB6DC,0xBEDD,0xC6DE,0xD65E,0x8312,0x8A31,0x9A32,0xAA33,0xB233,0xBA54,0xC254,0xCA54,0xCA54,0xCA34,0xCA34,0xCA34,0xCA34,0xCA34,0xCA14,0xC213,0xBA13,0xB212,0xA272,0xBCD8,0xCE9D,0xBEDD,0xB6DD,0xB6DC,0xAEDC,0xAEDC,0xAEDC,0xB71D,0xB71D,0xBF1E,0xD6DF,0x9394,0x8231,0x99F1,0xA1D2,0xB233,0xBA54,0xC274,0xCA74,0xCA54,0xCA34,0xCA34,0xCA34,0xCA34,0xCA34,0xD234,0xD234,0xCA34,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA13,0xCA14,0xCA13,0xC213,0xC213,0xC213,0xC1F3,0xC9F3,0xC9F4,0xC9F4,0xC9F4,0xCA14,0xCA14,0xCA14,0xCA34,0xCA34,0xD234,0xCA34,0xD234,0xCA34,0xCA34,0xCA34,0xCA34,0xCA34,0xCA34,0xCA33,0xC233,0xBA53,0xB272,0xF4FB,0xFE5F,0xFE7E,0xFE7F,0xFDFE,0xBB34,0xB232,0xBA12,0xC213,0xCA13,0xCA14,0xCA14,0xCA34,0xD234,0xD234,0xD234,0xD234,0xD234,0xD234,0xD234,0xD234,0xD215,0xD235,0xCA36,0xCA58,0xC299,0xAADC,0x40B7,0x311A,0x215B,0x197C,0x117D,0x119D,0x117D,0x199D,0x219D,0x295C,0x393A,0x48D7,0x91D9,0xB218,0xB1D6,0xC1F6,0xC1D5,0xC1F5,0xB9D5,0xB1F5,0x99F6,0x7A36,0x5AF8,0x545C,0x3D9F,0x25DF,0x1D9E,0x15BE,0x0DBD,0x0DFC,0x065A,0x06B9,0x0F5A,0x0F7A,0x077A,0x0F9A,0x179A,0x1F7B,0x2F3C,0x4EDC,0x767D,0x5BB5,0x7273,0x9A33,0xA1D3,0xB1D4,0xA9B4,0xA9B4,0xA9D4,0xB215,0x80D0,0x9993,0xA1D4,0xAA15,0xAA14,0xAA35,0x9A15,0x60D0,0x50F0,0x4951,0x4151,0x3971,0x3951,0x3951,0x3151,0x3171,0x3171,0x3171,0x2951,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x2930,0x2930,0x290F,0x2930,0x290F,0x210F,0x2930,0x210F,0x290F,0x2930,0x290F,0x210F,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x210F,0x2130,0x2150,0x210F,0x2110,0x1930,0x1931,0x1931,0x1932,0x1973,0x1974,0x1175,0x1196,0x11D7,0x11D7,0x11B7,0x0996,0x11D6,0x1195,0x1153,0x1153,0x1132,0x1952,0x1972,0x1951,0x1931,0x1931,0x1931,0x1932,0x1133,0x1133,0x19B6,0x2218,0x21F7,0x19B6,0x1112,0x1932,0x2151,0x2130,0x2110,0x2130,0x210F,0x2930,0x210F,0x2930,0x2930,0x2130,0x2130,0x2111,0x1911,0x1932,0x1933,0x1974,0x1195,0x11D7,0x19F7,0x19F6,0x11B5,0x1174,0x0932,0x1132,0x1132,0x1932,0x1932,0x1932,0x1952,0x1932,0x1932,0x1132,0x1132,0x1132,0x1132,0x1932,0x1132,0x1132,0x1111,0x1111,0x1131,0x1131,0x1132,0x1133,0x1154,0x19B6,0x2218,0x21F8,0x19D7,0x19B6,0x1154,0x1133,0x1932,0x1931,0x2131,0x2130,0x210F,0x210F,0x212F,0x292F,0x210F,0x292F,0x212F,0x212F,0x210F,0x2130,0x210F,0x210F,0x2930,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x290F,0x2930,0x2930,0x290F,0x2910,0x2930,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2110,0x2110,0x2111,0x1911,0x1112,0x1133,0x1995,0x21D7,0x21F7,0x21F7,0x21D7,0x1995,0x1133,0x1132,0x1932,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F, + 0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2910,0x290F,0x292F,0x290F,0x2910,0x290F,0x2910,0x2910,0x2910,0x2110,0x2110,0x2110,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x210F,0x2930,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x2930,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1931,0x1931,0x1932,0x1132,0x1153,0x1973,0x1974,0x1153,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1995,0x1994,0x1994,0x1994,0x1994,0x1994,0x1995,0x1994,0x1994,0x1995,0x1995,0x1995,0x19B5,0x1995,0x19B5,0x1995,0x1995,0x1995,0x1995,0x1995,0x21B5,0x21B5,0x21B5,0x21B5,0x21B5,0x21D5,0x21D6,0x21B5,0x21B5,0x21B5,0x21D6,0x21D6,0x19D5,0x19B5,0x19B5,0x19B6,0x1995,0x19B5,0x1195,0x1196,0x11B6,0x11B7,0x11B7,0x11D7,0x11D8,0x0997,0x0976,0x0976,0x0996,0x0975,0x0134,0x0134,0x0955,0x11B7,0x19F8,0x19D7,0x21D7,0x1995,0x1932,0x1911,0x1910,0x2110,0x2130,0x2130,0x2130,0x2930,0x2910,0x2910,0x2110,0x2130,0x2110,0x2110,0x210F,0x290F,0x290F,0x210F,0x212F,0x292F,0x292F,0x292F,0x2930,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x212F,0x210F,0x292F,0x210F,0x292F,0x212F,0x212F,0x212F,0x2930,0x2930,0x292F,0x212F,0x212F,0x212F,0x2130,0x2110,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2131,0x2131,0x2111,0x2111,0x2111,0x1911,0x1931,0x1911,0x18F1,0x18F1,0x1911,0x1911,0x1111,0x10F1,0x1911,0x1911,0x10F1,0x1911,0x1911,0x1111,0x10F1,0x10F1,0x10F1,0x10F1,0x10F1,0x10F1,0x10F1,0x10F0,0x08F0,0x08F0,0x08F0,0x08F1,0x0932,0x1174,0x11B5,0x11B6,0x11B7,0x11B7,0x11B7,0x0996,0x0155,0x0155,0x0975,0x0975,0x0996,0x0996,0x19F7,0x19F7,0x19B5,0x1153,0x1932,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x28EE,0x308D,0x512F,0xAB16,0xB294,0xAA53,0xAA33,0xA232,0x8A71,0xEF1F,0xCEFD,0xBEDD,0xBEFD,0xB6BC,0xAEDC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xB6FD,0xB71D,0xC71E,0xD71F,0x9C36,0x7A10,0x9212,0xA212,0xB233,0xBA54,0xC254,0xCA54,0xCA54,0xCA54,0xD254,0xD254,0xD254,0xD234,0xCA34,0xCA34,0xC254,0xBA53,0xAA73,0xABB5,0xCDBB,0xCEBE,0xBEDD,0xB6DC,0xAEDC,0xAEDC,0xAEDC,0xA6DC,0xAEDC,0xAEDC,0xA6DC,0xA6DC,0xA6DC,0xA6DC,0xAEDC,0xAEDC,0xAEDC,0xAEFC,0xB6FC,0xB71D,0xC71E,0xD69E,0x8312,0x8A51,0x9A12,0xAA53,0xBA54,0xC254,0xCA54,0xCA54,0xD254,0xD254,0xD254,0xD234,0xD234,0xCA34,0xCA34,0xC234,0xC254,0xBA33,0xAA93,0xBC78,0xD63D,0xC69D,0xBEDD,0xB6DC,0xAEDC,0xAEDC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xA6FC,0xAEFC,0xA6DC,0xA6DC,0xA6FC,0xA6DC,0xAEFC,0xAEFC,0xAEFC,0xB6FD,0xBEDD,0xCE5D,0x8312,0x8A51,0xA232,0xAA53,0xBA54,0xC254,0xCA54,0xCA54,0xCA54,0xCA34,0xCA34,0xCA34,0xCA34,0xCA54,0xCA34,0xC233,0xC233,0xBA33,0xAAB3,0xEDFE,0xDE1E,0xE63E,0xCD3B,0x79CF,0x91F1,0xA212,0xB253,0xBA54,0xC254,0xC254,0xCA74,0xCA54,0xCA54,0xCA34,0xCA34,0xD254,0xD254,0xD254,0xD234,0xD234,0xD234,0xD234,0xCA34,0xCA34,0xCA14,0xCA14,0xC213,0xC233,0xBA33,0xBA32,0xB232,0xB232,0xB212,0xBA13,0xBA13,0xC213,0xC234,0xCA34,0xCA34,0xCA34,0xCA34,0xCA34,0xD254,0xD255,0xD254,0xD234,0xD234,0xD234,0xCA34,0xCA34,0xCA34,0xCA54,0xCA54,0xCA54,0xC254,0xBA33,0xAA52,0x9AF3,0xDDDD,0xCEBE,0xBEFD,0xBEDD,0xB6FD,0xB6DC,0xAEDC,0xAEDC,0xAEDC,0xAEDC,0xB6FC,0xB71D,0xBF1D,0xCF1E,0xBD9B,0x71CE,0x91F1,0xA232,0xB253,0xBA53,0xBA54,0xC274,0xCA74,0xCA54,0xCA34,0xCA34,0xD254,0xD234,0xD234,0xD234,0xD234,0xD234,0xD234,0xD234,0xD234,0xCA34,0xCA34,0xCA34,0xC233,0xC233,0xBA33,0xBA33,0xBA13,0xBA13,0xC213,0xCA34,0xCA34,0xCA34,0xCA34,0xCA34,0xCA14,0xD234,0xD255,0xD234,0xD254,0xD234,0xD234,0xCA54,0xCA54,0xCA54,0xCA54,0xCA54,0xCA54,0xC254,0xC254,0xBA74,0xC316,0xF51D,0xB315,0x99F1,0xA1F2,0xB213,0xC254,0xC254,0xC234,0xCA54,0xCA34,0xCA54,0xCA54,0xD254,0xCA34,0xCA55,0xCA54,0xC254,0xC254,0xBA13,0xA232,0xB457,0xDE9E,0xCEBD,0xC6FD,0xBEBC,0xB6BC,0xB6DC,0xB6DC,0xBEDD,0xC6DD,0xD67E,0x8312,0x8A51,0x9A32,0xAA33,0xB253,0xC254,0xC254,0xCA54,0xCA54,0xCA54,0xCA54,0xCA54,0xCA54,0xCA54,0xCA34,0xC233,0xC233,0xBA33,0xAAD3,0xBCF9,0xD6BD,0xC6DD,0xB6DC,0xB6DC,0xB6DC,0xB6DC,0xB6DC,0xB71D,0xBF1D,0xC6FE,0xC5FC,0x7A30,0x91F1,0x99F2,0xA9F2,0xBA33,0xC274,0xC274,0xCA74,0xCA54,0xCA54,0xCA54,0xD254,0xD254,0xD254,0xCA34,0xD254,0xCA34,0xCA34,0xCA34,0xCA34,0xCA13,0xCA34,0xCA33,0xC233,0xBA33,0xBA32,0xB232,0xB212,0xBA12,0xC213,0xC213,0xCA13,0xCA14,0xCA14,0xCA34,0xCA34,0xCA34,0xCA34,0xD254,0xD254,0xD254,0xD254,0xD254,0xCA54,0xD254,0xCA54,0xCA54,0xCA54,0xC233,0xC253,0xBA73,0xB2F3,0xFE7F,0xFE7E,0xFE9E,0xFE9E,0xFE3E,0xBB74,0xAA11,0xBA12,0xC1F3,0xC9F3,0xCA13,0xCA14,0xD214,0xD234,0xD234,0xD234,0xD234,0xD234,0xD234,0xD234,0xCA14,0xCA15,0xCA36,0xC258,0xBA79,0xAADC,0x40B7,0x291A,0x215B,0x197C,0x117D,0x117D,0x117D,0x117D,0x219D,0x299D,0x313A,0x40F8,0x7178,0xA219,0xA9B6,0xB9F6,0xC1D5,0xC1D5,0xB9D5,0xB1F6,0xA1F6,0x8237,0x62D8,0x4BDB,0x457F,0x2DDF,0x1DBE,0x15BE,0x0DDD,0x0DFC,0x065A,0x06DA,0x073A,0x0759,0x0F7A,0x0F9A,0x177A,0x1F5B,0x375C,0x4EFD,0x767D,0x5BD6,0x7A73,0x9A13,0xAA14,0xA9D4,0xA9B3,0xA9B4,0xA9B3,0xA193,0x80AF,0xA1F4,0xA1D4,0xA1D4,0xA1F4,0x99F4,0x9A35,0x6110,0x5110,0x4130,0x4171,0x3971,0x3971,0x3951,0x3971,0x3151,0x3151,0x2951,0x2951,0x2950,0x2930,0x2930,0x292F,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x210F,0x290F,0x290F,0x2930,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x210F,0x2110,0x2130,0x1930,0x1931,0x1932,0x1952,0x1973,0x1154,0x1175,0x11D7,0x11D8,0x09B7,0x11B7,0x1195,0x0954,0x1153,0x1152,0x1952,0x1951,0x1971,0x1951,0x1910,0x1931,0x1931,0x1932,0x1953,0x1133,0x19B6,0x21F7,0x21F7,0x1995,0x1112,0x1111,0x2131,0x2130,0x2130,0x2130,0x2130,0x2930,0x212F,0x292F,0x212F,0x2130,0x2130,0x2130,0x2151,0x1931,0x1932,0x1133,0x1174,0x11B6,0x11D6,0x19F7,0x19F6,0x11B5,0x0933,0x1133,0x1132,0x1132,0x1932,0x1952,0x1953,0x1952,0x1932,0x1132,0x1131,0x1131,0x1131,0x1932,0x1932,0x1132,0x1132,0x1132,0x1152,0x1153,0x1133,0x1174,0x1195,0x19F7,0x21F7,0x19D7,0x19B6,0x1975,0x1133,0x1132,0x1932,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x2110,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x210F,0x210F,0x290F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2910,0x210F,0x2910,0x2930,0x210F,0x2930,0x2930,0x210F,0x210F,0x212F,0x212F,0x2930,0x2930,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2111,0x1931,0x1112,0x1133,0x1174,0x19B6,0x21F7,0x21D7,0x21D7,0x1995,0x1974,0x1132,0x1911,0x1931,0x1910,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210E,0x210F,0x210F,0x292F,0x292F, + 0x210F,0x210F,0x2110,0x2110,0x2130,0x210F,0x2110,0x2930,0x2110,0x2930,0x2110,0x2110,0x2110,0x2910,0x290F,0x2910,0x290F,0x292F,0x2910,0x2910,0x2910,0x210F,0x2910,0x2110,0x2110,0x2110,0x210F,0x290F,0x292F,0x292F,0x210F,0x290F,0x212F,0x292F,0x290F,0x290F,0x210F,0x2910,0x2110,0x2910,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1911,0x1912,0x1132,0x1953,0x19B5,0x21F6,0x2A37,0x2A37,0x3257,0x2A57,0x3258,0x3258,0x3278,0x3278,0x3A78,0x3258,0x3258,0x3258,0x3278,0x3278,0x3278,0x3258,0x3258,0x3258,0x3258,0x3258,0x3258,0x3258,0x3258,0x3258,0x3278,0x3258,0x3258,0x2A37,0x3258,0x2A58,0x2A58,0x3258,0x3258,0x2A37,0x3258,0x2A38,0x3238,0x2A37,0x3238,0x2A38,0x2A37,0x2A37,0x2A17,0x2A17,0x2A17,0x2217,0x2217,0x21F7,0x21F6,0x19D6,0x19D6,0x19D7,0x11B6,0x11D7,0x11D7,0x11B7,0x11D7,0x0996,0x0976,0x0955,0x0155,0x0955,0x0134,0x0954,0x0955,0x19B7,0x19D8,0x21F8,0x21F7,0x1974,0x1112,0x1911,0x1910,0x2110,0x2130,0x2130,0x2130,0x212F,0x2110,0x210F,0x210F,0x2130,0x210F,0x2110,0x2930,0x210F,0x290F,0x210F,0x212F,0x292F,0x292F,0x290F,0x2910,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x290F,0x290F,0x292F,0x210F,0x212F,0x292F,0x292F,0x292F,0x212F,0x210F,0x212F,0x212F,0x2930,0x292F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2930,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2151,0x2151,0x2151,0x2131,0x1911,0x1111,0x1112,0x1112,0x1132,0x1132,0x1112,0x10F2,0x08F2,0x0912,0x0912,0x0912,0x08F2,0x1112,0x1112,0x1112,0x0912,0x0912,0x0912,0x08F2,0x08F2,0x08F2,0x0912,0x0912,0x0912,0x0912,0x0912,0x0932,0x0953,0x0973,0x1194,0x11B5,0x11B6,0x11B6,0x1196,0x1197,0x0996,0x0976,0x0155,0x0155,0x0155,0x0155,0x0975,0x0975,0x11F7,0x19F7,0x19D6,0x1154,0x1132,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x28EE,0x288D,0x510F,0xAAF6,0xB294,0xAA53,0xAA33,0xA232,0x8A71,0xEF1F,0xCEFD,0xC6FD,0xC6FD,0xB6DC,0xB6DC,0xB6FC,0xB71C,0xAEFC,0xAEFC,0xAEFC,0xB71D,0xBF1D,0xC71E,0xDF3F,0x9415,0x7A10,0x9211,0xA232,0xB253,0xC274,0xCA74,0xCA74,0xCA54,0xCA54,0xD254,0xD275,0xD254,0xCA54,0xCA54,0xCA54,0xC274,0xBA74,0xAA93,0xABD5,0xCDDB,0xCEDE,0xC71D,0xB6FC,0xB6FC,0xB6FC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xAEDC,0xAEDC,0xAEFC,0xAEDC,0xAEFC,0xAEFC,0xB71C,0xBF1D,0xC71D,0xD69E,0x8312,0x8A51,0x9A32,0xAA53,0xBA54,0xC254,0xCA74,0xCA54,0xCA54,0xD254,0xD254,0xD254,0xD254,0xCA54,0xCA34,0xC254,0xC254,0xBA53,0xAAB3,0xC4B9,0xD67D,0xCEDD,0xBEFD,0xB6FC,0xB6DC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xAEDC,0xAEDC,0xAEFC,0xAEFC,0xAEFC,0xB71C,0xB71C,0xBF1D,0xC6DD,0xD67E,0x8312,0x8A51,0x9A32,0xAA53,0xBA54,0xC274,0xCA74,0xCA54,0xCA54,0xCA54,0xD255,0xD255,0xD254,0xD274,0xCA54,0xC254,0xC253,0xBA53,0xB2D4,0xEDFE,0xE5FE,0xE5DE,0x9AF3,0x9211,0x99F1,0xB253,0xBA74,0xC274,0xC254,0xCA74,0xCA74,0xCA54,0xCA54,0xD254,0xD254,0xD254,0xD254,0xD254,0xD254,0xCA34,0xCA34,0xCA34,0xCA34,0xCA54,0xC253,0xC253,0xB252,0xAA72,0xB2D2,0xC3B5,0xD458,0xE4B9,0xD437,0xB2D3,0xA231,0xB232,0xBA33,0xBA33,0xC254,0xC254,0xCA54,0xCA54,0xCA54,0xD254,0xD254,0xD254,0xD254,0xD254,0xD254,0xD254,0xCA54,0xCA54,0xCA54,0xCA54,0xCA54,0xC274,0xB253,0xA272,0xA395,0xE6FF,0xCEDD,0xBEDD,0xBEFC,0xB6DC,0xB6DC,0xB6DC,0xB6DC,0xB6FC,0xB71D,0xBF1D,0xC71E,0xD6FF,0x8B93,0x8210,0x99F1,0xAA33,0xB253,0xBA74,0xC274,0xCA74,0xCA74,0xD274,0xD254,0xD274,0xD254,0xD254,0xD254,0xD254,0xD234,0xD254,0xD234,0xD254,0xCA54,0xCA54,0xC274,0xBA73,0xB292,0xAA92,0xBB54,0xCBD6,0xCBB6,0xAA51,0xB252,0xBA33,0xBA33,0xC234,0xCA34,0xCA54,0xCA54,0xD255,0xD255,0xD255,0xD254,0xD255,0xD255,0xD275,0xCA54,0xD254,0xCA54,0xCA54,0xCA74,0xCA74,0xC274,0xC274,0xB274,0xEC5B,0xBB16,0x99D1,0xA1F2,0xB233,0xC254,0xC254,0xCA54,0xCA54,0xCA54,0xD254,0xD254,0xD274,0xD274,0xCA75,0xCA74,0xCA74,0xC254,0xBA33,0xA252,0xB457,0xDEBE,0xCEDE,0xC6FD,0xBEDC,0xBEDC,0xBEFD,0xBEFC,0xBEFD,0xCEDD,0xD67E,0x8312,0x8A51,0x9A32,0xAA33,0xB253,0xC274,0xCA74,0xCA74,0xCA74,0xCA54,0xD254,0xCA54,0xCA54,0xCA54,0xCA54,0xCA34,0xC233,0xBA53,0xA2B3,0xBCF9,0xCE9D,0xC6DD,0xBEFD,0xBEFC,0xB6FC,0xB6DC,0xB6FC,0xBF1D,0xC71D,0xCEDE,0x8BD4,0x8231,0x91D1,0xA1F2,0xB253,0xC274,0xCA94,0xCA74,0xCA74,0xCA74,0xD274,0xCA74,0xD254,0xD254,0xD254,0xD254,0xD254,0xCA54,0xCA54,0xCA34,0xCA34,0xCA53,0xC253,0xBA72,0xB292,0xBB13,0xCBD6,0xDC78,0xDC37,0xAAB2,0xAA31,0xB212,0xBA13,0xC213,0xCA34,0xCA34,0xCA54,0xCA54,0xCA54,0xCA54,0xD254,0xCA54,0xCA54,0xD274,0xD274,0xD274,0xCA54,0xCA74,0xCA74,0xCA74,0xC274,0xC273,0xAA72,0xED7C,0xFE9E,0xF6BE,0xF6BE,0xFE9E,0xFE5E,0xC395,0xAA11,0xB9F2,0xC1F3,0xC9F3,0xC9F3,0xCA14,0xCA14,0xD214,0xD214,0xCA13,0xD214,0xD214,0xD214,0xD214,0xC9F5,0xCA36,0xC237,0xBA79,0xAABC,0x40B7,0x291A,0x215B,0x197D,0x199D,0x119D,0x117D,0x117D,0x197D,0x299D,0x295B,0x3919,0x60F7,0x9198,0xA9D7,0xB9F7,0xC1F6,0xC1F5,0xB9D5,0xB1F6,0xA1F6,0x8A37,0x6AB8,0x539A,0x4D5F,0x35DF,0x25DE,0x15BE,0x15DD,0x0E1C,0x065A,0x06B9,0x0F3A,0x0F7A,0x0F79,0x0F7A,0x177A,0x277B,0x373C,0x4EFD,0x765D,0x5395,0x7A93,0x9A33,0xA1F4,0xA9D4,0xA9D4,0xA9D4,0xA9D4,0xA193,0x78AF,0x99D4,0xA215,0xA1F4,0xA1F4,0xA215,0x91F5,0x6111,0x5131,0x4110,0x3931,0x4192,0x3971,0x3971,0x3131,0x3151,0x3151,0x3151,0x2930,0x2950,0x2950,0x2950,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2910,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2930,0x210F,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x1931,0x1931,0x1952,0x1953,0x1153,0x0955,0x11B7,0x11D8,0x09B7,0x11B6,0x1195,0x1153,0x1153,0x1131,0x1931,0x1931,0x1951,0x1931,0x1931,0x1931,0x1931,0x1932,0x1132,0x1133,0x19B6,0x21F7,0x21F7,0x21B6,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1911,0x1112,0x1153,0x1195,0x11B6,0x19F7,0x19F7,0x19D6,0x1195,0x1154,0x1133,0x1133,0x1132,0x1953,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1153,0x1153,0x1153,0x1153,0x0954,0x11B5,0x19F7,0x19F7,0x19D7,0x19B6,0x1975,0x1153,0x1112,0x1112,0x1931,0x2151,0x2151,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x210F,0x212F,0x2930,0x210F,0x2910,0x2910,0x2910,0x2910,0x2910,0x2910,0x290F,0x2910,0x290F,0x2930,0x210F,0x2930,0x2930,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x2910,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2930,0x2930,0x2130,0x2130,0x2110,0x2110,0x2110,0x1911,0x1932,0x1132,0x1154,0x19D6,0x21F7,0x21D7,0x21D7,0x1975,0x1974,0x1132,0x1911,0x1931,0x1910,0x2130,0x2130,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x292F,0x292F, + 0x2130,0x212F,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2910,0x2910,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x2930,0x2110,0x2110,0x2110,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x20EF,0x2910,0x210F,0x2910,0x20EF,0x2910,0x2110,0x2130,0x2130,0x2930,0x210F,0x212F,0x210F,0x2930,0x2930,0x212F,0x210F,0x210F,0x210F,0x2130,0x2950,0x2130,0x2131,0x1911,0x1911,0x1912,0x1933,0x1994,0x21D6,0x21F6,0x21F6,0x21F7,0x2A17,0x2A17,0x2217,0x2217,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D5,0x21D6,0x21D5,0x21D5,0x21D6,0x21D6,0x21D6,0x21F6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21F6,0x21D6,0x21F6,0x21F6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x21D6,0x19B6,0x19B6,0x21D6,0x21D6,0x19D6,0x19D6,0x21D6,0x21D6,0x21F6,0x21F7,0x21F6,0x19F6,0x19D6,0x19F7,0x19F7,0x19F8,0x11F8,0x11D7,0x0996,0x0976,0x0955,0x0955,0x0954,0x0934,0x0134,0x0955,0x1196,0x19D7,0x19D7,0x21D6,0x1154,0x1112,0x1911,0x1910,0x2110,0x2130,0x2130,0x212F,0x212F,0x2130,0x2930,0x212F,0x212F,0x210F,0x2930,0x2930,0x210F,0x2930,0x290F,0x290F,0x210F,0x292F,0x290F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2930,0x2930,0x290F,0x2930,0x2930,0x210F,0x212F,0x212F,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2151,0x2131,0x1931,0x1931,0x1111,0x1132,0x1133,0x1154,0x1174,0x11B5,0x11B5,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x1195,0x19B5,0x19B5,0x19B6,0x11B6,0x19B6,0x19D6,0x19F7,0x19D6,0x19F7,0x1A17,0x11D6,0x11D6,0x11F6,0x09D6,0x11F7,0x11D7,0x11D7,0x11B7,0x0997,0x0976,0x0976,0x0976,0x0155,0x0155,0x0135,0x0155,0x0155,0x0975,0x11F7,0x1A18,0x19F7,0x1174,0x1112,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x28EE,0x308D,0x510F,0xAAF6,0xB294,0xAA33,0xAA33,0xA232,0x8A51,0xF73F,0xD73E,0xCF1D,0xC71D,0xB6DC,0xB6DC,0xB6FC,0xB71C,0xB71C,0xB6FC,0xB6FC,0xB71C,0xBF3D,0xCF3E,0xDF3F,0x93F5,0x7A10,0x91F1,0xA232,0xB273,0xC294,0xCA94,0xCA74,0xD274,0xD274,0xD275,0xD295,0xD275,0xD254,0xCA54,0xCA75,0xCA95,0xBA74,0xAA93,0xB3F5,0xCDFB,0xCEFD,0xC71D,0xBEFC,0xBEFC,0xB6FC,0xB6FC,0xB6FC,0xB6FC,0xB6FC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xB6FC,0xB6FC,0xB6FC,0xB6FC,0xBF1C,0xCF1D,0xD69E,0x8312,0x8A31,0x9A12,0xAA53,0xBA74,0xC274,0xCA74,0xCA74,0xD274,0xD274,0xD274,0xD254,0xD254,0xD274,0xCA74,0xCA74,0xC274,0xBA73,0xAAB3,0xC4D9,0xD69D,0xCEFD,0xC71D,0xBEFC,0xB6FC,0xB6FC,0xB6FC,0xB6FC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xAEFC,0xB6FC,0xB6FC,0xB6FC,0xB71C,0xBF1C,0xBF1D,0xCEFE,0xD67E,0x8312,0x8A51,0x9A32,0xAA53,0xBA74,0xC274,0xCA75,0xCA75,0xD275,0xD275,0xD255,0xD275,0xD275,0xD274,0xCA74,0xCA54,0xC253,0xBA73,0xBB14,0xF5FE,0xE5DD,0xD4DB,0x8A31,0x91F1,0xA212,0xB274,0xC274,0xC294,0xCA74,0xCA74,0xD274,0xCA54,0xD274,0xD274,0xD274,0xD274,0xD274,0xD274,0xD274,0xCA54,0xCA54,0xCA54,0xCA54,0xC273,0xBA73,0xB2F3,0xCC57,0xE5BA,0xFEBD,0xF6DD,0xF6DD,0xF6BD,0xF6BD,0xEE3C,0xDD5A,0xB354,0xA231,0xB212,0xBA13,0xC254,0xC254,0xCA54,0xCA75,0xCA74,0xD254,0xD274,0xD274,0xD274,0xD294,0xD274,0xD274,0xD274,0xCA74,0xCA74,0xCA74,0xCA74,0xC294,0xB273,0x9AB2,0xD5BB,0xD6DE,0xCEFD,0xC71C,0xBEFC,0xB6FC,0xB6DC,0xB6DC,0xB6FC,0xBF1D,0xC73D,0xCF1E,0xD67D,0x7AB0,0x8A10,0xA212,0xB253,0xBA74,0xC274,0xCA94,0xCA95,0xD294,0xCA74,0xD274,0xD274,0xD294,0xD274,0xD274,0xD275,0xD255,0xD254,0xD254,0xCA54,0xC254,0xC293,0xBAD3,0xC3F5,0xF5FB,0xFEFF,0xFEFE,0xF6DD,0xFEBE,0xFE7E,0xCC57,0xAA92,0xAA32,0xBA33,0xC234,0xCA74,0xCA75,0xD275,0xD275,0xD275,0xD275,0xD275,0xD275,0xD275,0xD275,0xD275,0xD275,0xCA74,0xD295,0xCA75,0xCA75,0xC295,0xC294,0xC316,0xBAF5,0x99D1,0xA1F1,0xB233,0xC274,0xCA74,0xCA95,0xD295,0xD295,0xD275,0xD275,0xD274,0xD275,0xD295,0xCA95,0xCA74,0xC274,0xBA53,0xA272,0xB457,0xE6DF,0xD6FE,0xC6FD,0xBEDC,0xBEDC,0xBEFD,0xBEFD,0xC6FD,0xCEFD,0xDE9E,0x8B32,0x8A51,0x9A32,0xAA33,0xB253,0xC274,0xCA95,0xCA94,0xCA74,0xD274,0xD274,0xD274,0xD274,0xD274,0xCA54,0xCA54,0xC253,0xBA73,0xAAD3,0xC519,0xCE9D,0xC6FD,0xBF1D,0xBEFC,0xBEFC,0xB6FC,0xBEFC,0xBF1D,0xCEFE,0xCE1C,0x7AB1,0x89F0,0x99F1,0xAA33,0xBA74,0xCAB5,0xCA95,0xCA94,0xCA94,0xD294,0xD274,0xD274,0xD274,0xD274,0xD274,0xD254,0xD254,0xD254,0xCA74,0xCA54,0xCA73,0xBA93,0xB2D2,0xCC16,0xF5FB,0xFEDE,0xF6DD,0xF6DD,0xFEDD,0xFEBE,0xD4F8,0xA2B1,0xAA31,0xB212,0xC213,0xC234,0xC254,0xCA54,0xCA74,0xCA74,0xCA74,0xD274,0xD274,0xD274,0xD274,0xD274,0xD274,0xD274,0xD274,0xCA74,0xCA94,0xC294,0xBAB3,0xBB95,0xFE7E,0xF6BE,0xF6DE,0xF6DD,0xFEBE,0xFE9E,0xCBF6,0xAA11,0xB9F2,0xC1F2,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xC9F3,0xCA13,0xCA14,0xC9F4,0xD214,0xCA14,0xCA15,0xCA16,0xC237,0xBA59,0xAABC,0x40D7,0x291A,0x215C,0x219D,0x199D,0x119E,0x119D,0x117D,0x117D,0x197D,0x215C,0x3119,0x6179,0x91D9,0x9996,0xB9F7,0xC1F6,0xC1F6,0xB9F5,0xB1D5,0xA1D5,0x9216,0x7A98,0x5B7B,0x4D3E,0x35BF,0x25BE,0x1DDD,0x15DD,0x0E1C,0x067A,0x06B9,0x0719,0x0759,0x0F7A,0x0F7A,0x177A,0x275B,0x373C,0x4EDD,0x765E,0x5BD6,0x7A93,0x9A53,0xAA34,0xA9D4,0xA9D4,0xA9D4,0xA9D4,0x9152,0x78D0,0x99B3,0xA214,0xAA35,0xAA15,0xA235,0x89B4,0x588F,0x5951,0x4110,0x3910,0x3931,0x4172,0x3971,0x3951,0x3151,0x3131,0x3151,0x3151,0x3150,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2130,0x2930,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x2930,0x212F,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x2130,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1132,0x1133,0x0954,0x11B6,0x11D7,0x11B7,0x11B6,0x1175,0x1133,0x1152,0x1931,0x1931,0x1930,0x1951,0x1951,0x1930,0x1910,0x1911,0x1932,0x1132,0x1133,0x19B6,0x21F7,0x21D6,0x1995,0x1112,0x1932,0x1931,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x2130,0x2110,0x2130,0x2151,0x2131,0x1911,0x1911,0x1132,0x1153,0x1195,0x19B6,0x19F6,0x19D6,0x11B5,0x11B5,0x1194,0x1154,0x1153,0x0933,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1153,0x1132,0x0933,0x0933,0x0933,0x0974,0x1195,0x11B6,0x19F7,0x19F7,0x19D7,0x19D6,0x1995,0x1153,0x1132,0x1111,0x1911,0x1931,0x2131,0x2150,0x2130,0x212F,0x210F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x290F,0x290F,0x290F,0x2910,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2930,0x212F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2110,0x2110,0x1911,0x1911,0x1112,0x1133,0x1174,0x19D6,0x21F7,0x19D6,0x21D7,0x1995,0x1953,0x1112,0x1931,0x1931,0x1910,0x2130,0x2110,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F, + 0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2910,0x2930,0x290F,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2910,0x2910,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2930,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2951,0x2131,0x1911,0x1911,0x1912,0x1933,0x1995,0x21F7,0x21F7,0x21F7,0x21F6,0x19B6,0x19B5,0x1995,0x1174,0x1174,0x1194,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1153,0x1173,0x1174,0x1174,0x1153,0x1174,0x1174,0x1174,0x1154,0x1174,0x1154,0x1974,0x1954,0x1154,0x1954,0x1954,0x1174,0x1174,0x1174,0x1174,0x1174,0x1174,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1974,0x1994,0x1974,0x1994,0x1994,0x1995,0x1995,0x1995,0x1995,0x19B5,0x19B5,0x19B6,0x19D6,0x11D7,0x19D7,0x19F7,0x11D7,0x1196,0x0976,0x0135,0x0134,0x0134,0x0934,0x0955,0x1196,0x19B7,0x19B7,0x1995,0x1153,0x1952,0x1931,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x290F,0x210F,0x290F,0x290F,0x292F,0x212F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x212F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2130,0x2130,0x2131,0x2151,0x1931,0x1931,0x1132,0x1132,0x1153,0x19D5,0x2217,0x2218,0x2238,0x2238,0x2259,0x2259,0x2259,0x2258,0x2259,0x2238,0x2238,0x2258,0x2A58,0x2238,0x2258,0x2238,0x2238,0x2238,0x2238,0x1A17,0x1A38,0x1A38,0x1A38,0x1218,0x1A38,0x11F7,0x1217,0x1217,0x11F7,0x11F7,0x11F7,0x11D7,0x11B7,0x0996,0x0976,0x0155,0x0135,0x0135,0x0135,0x0135,0x0155,0x0155,0x11D7,0x1A38,0x19F7,0x1174,0x1132,0x1931,0x1930,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x30EF,0x308D,0x510F,0xB2F6,0xB294,0xAA53,0xAA32,0xA212,0x8A51,0xF73F,0xDF3D,0xD75D,0xC71C,0xBEFC,0xBEFC,0xB6FC,0xB6FC,0xB71C,0xB71C,0xB71C,0xBF1C,0xC75D,0xCF5E,0xE75F,0x93F4,0x7A10,0x9211,0xA232,0xB273,0xC294,0xCAB5,0xCA94,0xD294,0xD295,0xD295,0xD295,0xD295,0xD275,0xD275,0xCA95,0xCAB5,0xC294,0xAAB3,0xB3F5,0xD61B,0xD6FD,0xC71C,0xBF1C,0xBF1C,0xBF1C,0xBEFC,0xB71C,0xB71C,0xB71C,0xB71C,0xB71C,0xB71C,0xB71C,0xB71C,0xB71C,0xB6FB,0xBF1C,0xBF1C,0xC73C,0xCF3D,0xDEBD,0x8312,0x8251,0x9A11,0xAA53,0xBA74,0xC274,0xCA94,0xCA74,0xD274,0xD274,0xD294,0xD274,0xD274,0xD294,0xCA94,0xCA94,0xC294,0xBA94,0xAAD3,0xCD19,0xDEBD,0xCEFD,0xC6FC,0xBEFC,0xBEFC,0xB71C,0xB71C,0xB6FC,0xB71C,0xB71C,0xB71C,0xB6FC,0xB6FC,0xB71C,0xB71C,0xB71B,0xB71B,0xBF3C,0xBF3C,0xC73D,0xD71E,0xDE9D,0x8B12,0x8A51,0x9A32,0xAA73,0xBA74,0xC295,0xCA95,0xCA95,0xD295,0xD275,0xD275,0xD275,0xD295,0xD295,0xCA74,0xCA74,0xCA94,0xC2B4,0xC335,0xF5BE,0xF5DE,0xA2D3,0x91F1,0x99F1,0xAA33,0xBA94,0xC294,0xCA94,0xCA94,0xD295,0xCA74,0xD274,0xD274,0xD294,0xD274,0xD274,0xD274,0xD274,0xD274,0xCA74,0xCA74,0xCA74,0xC293,0xBAB3,0xBB33,0xDD39,0xF69D,0xEEDC,0xE6FC,0xDEFB,0xDEFB,0xDF1B,0xDEFB,0xE6DC,0xEEBC,0xF65D,0xD4B8,0x9A51,0xA211,0xB233,0xBA74,0xC274,0xCA74,0xCA74,0xCA74,0xCA74,0xD274,0xD294,0xD294,0xD294,0xD294,0xD294,0xD294,0xD294,0xCA74,0xCA94,0xCAB4,0xBA73,0xAAB3,0xA394,0xDE9E,0xD6FD,0xC71C,0xC71C,0xBEFC,0xBEFC,0xBEFC,0xBF1C,0xC73D,0xC73D,0xD71E,0xCDDB,0x7A2F,0x9211,0xA212,0xB273,0xBA74,0xCA94,0xCA95,0xD295,0xD2B5,0xD294,0xD294,0xD294,0xD294,0xD274,0xD274,0xD274,0xD274,0xCA74,0xCA74,0xC274,0xBA93,0xBB13,0xDCD8,0xF67C,0xEEFC,0xE6FC,0xDEDB,0xDEFB,0xE6DB,0xEEFD,0xF6DD,0xE57A,0xA291,0xAA32,0xB233,0xC274,0xCA74,0xCA75,0xCA74,0xD275,0xD275,0xD275,0xD295,0xD295,0xD295,0xD295,0xD295,0xCA95,0xD295,0xD295,0xCA95,0xCA95,0xC295,0xC2B5,0xBAD5,0x99D1,0xA1F1,0xB253,0xC294,0xCAB5,0xCA95,0xD2B5,0xD295,0xD295,0xD295,0xD295,0xD295,0xD295,0xCA95,0xCA94,0xC294,0xBA73,0xAA92,0xBC57,0xE6DE,0xD6FE,0xCF1D,0xC6FC,0xC6FC,0xC71D,0xC71D,0xC71D,0xD6FD,0xDE9E,0x8B32,0x8A51,0x9A32,0xAA53,0xB273,0xC294,0xCA94,0xCA94,0xD294,0xD294,0xD294,0xD294,0xD274,0xD274,0xD274,0xCA74,0xC274,0xBA73,0xAAF3,0xC539,0xD6DD,0xCEFD,0xBEFC,0xBEFC,0xBEFC,0xBF1C,0xBF1D,0xC71D,0xD6FE,0xACB8,0x7A30,0x89F1,0x99F1,0xB273,0xC294,0xCAB5,0xCAB5,0xCA95,0xD294,0xD294,0xD294,0xD294,0xD294,0xD294,0xD274,0xD294,0xD274,0xD274,0xCA94,0xCA94,0xBAB3,0xB2F2,0xE539,0xF69D,0xEEDC,0xE6FC,0xE71C,0xDF1C,0xE6FC,0xE6FC,0xF6DD,0xF5FC,0xAB12,0xA231,0xB212,0xBA33,0xC254,0xC274,0xCA94,0xCA94,0xCA94,0xD295,0xD295,0xD295,0xD295,0xD274,0xD294,0xD295,0xD294,0xCA94,0xCA94,0xC2B4,0xBAB3,0xB313,0xF5FD,0xFEBE,0xF6FD,0xF6FD,0xF6DD,0xFEDE,0xFE9E,0xD417,0xA210,0xB1F1,0xB9D2,0xC1D2,0xC1D3,0xC9F3,0xC9F3,0xC9F3,0xC9F4,0xC9F3,0xCA14,0xCA14,0xCA15,0xCA16,0xC237,0xBA59,0xAABC,0x40D7,0x291A,0x215B,0x197D,0x199D,0x11BE,0x119E,0x119D,0x119D,0x115C,0x195C,0x313A,0x595A,0x89DA,0xA1D8,0xB1F7,0xB9F6,0xC216,0xB9F5,0xB1D5,0xA1D5,0x9216,0x7A58,0x6319,0x4CBC,0x3DBE,0x2DDE,0x1DBD,0x1DDD,0x161C,0x0E9A,0x06B9,0x0739,0x0759,0x0779,0x0F7A,0x177A,0x275B,0x373C,0x56DD,0x765D,0x5BB5,0x7A93,0x9A54,0xA213,0xA9F4,0xA9D4,0xA9D4,0xA9F5,0x8111,0x78D0,0x99D4,0xAA35,0xA1F4,0xA214,0xA215,0x89B4,0x506E,0x5131,0x4951,0x3910,0x3931,0x3951,0x3972,0x3972,0x3151,0x3151,0x3151,0x3150,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2950,0x2130,0x2130,0x2930,0x2130,0x2130,0x2930,0x292F,0x2930,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1132,0x1154,0x11B6,0x11D7,0x11B7,0x11B6,0x1174,0x1132,0x1132,0x1931,0x1931,0x1930,0x2151,0x1950,0x1930,0x1930,0x1931,0x1932,0x1133,0x1133,0x19B6,0x21F7,0x21F7,0x1995,0x1112,0x1932,0x2151,0x2130,0x2110,0x2130,0x2130,0x2130,0x212F,0x210F,0x212F,0x2930,0x2110,0x2110,0x2130,0x2110,0x2110,0x2131,0x1931,0x1952,0x1153,0x1195,0x19B6,0x19D6,0x19F6,0x19F6,0x11B5,0x11B5,0x1175,0x1154,0x1153,0x0933,0x1133,0x1153,0x1133,0x1133,0x1133,0x0933,0x0933,0x0933,0x0954,0x1175,0x11B5,0x19F7,0x1A17,0x19F7,0x19F7,0x19B6,0x1995,0x1153,0x1132,0x1111,0x1111,0x1911,0x1930,0x2130,0x2130,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x210F,0x290F,0x290F,0x2910,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x1910,0x2131,0x1911,0x1111,0x1133,0x1174,0x19D6,0x21F7,0x21F7,0x21D6,0x1995,0x1133,0x1932,0x1911,0x1910,0x1910,0x1910,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x210F,0x210F,0x290F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F, + 0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2110,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2130,0x210F,0x2130,0x2130,0x212F,0x2130,0x2130,0x2110,0x2130,0x2131,0x1910,0x18F1,0x1912,0x1933,0x1995,0x21F7,0x21D7,0x21D7,0x19B6,0x1975,0x1154,0x1133,0x1133,0x0933,0x0912,0x0932,0x0912,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1152,0x1132,0x1132,0x1132,0x1132,0x1112,0x1933,0x1133,0x1112,0x1132,0x1933,0x1112,0x1112,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1133,0x1112,0x1112,0x1112,0x1113,0x1133,0x1133,0x1133,0x1133,0x1133,0x1134,0x1155,0x1175,0x1196,0x11B6,0x11B7,0x11D7,0x0975,0x0975,0x0975,0x1196,0x19B7,0x19F7,0x19B7,0x19B6,0x1174,0x1133,0x1932,0x2151,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x290F,0x290F,0x212F,0x212F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1952,0x1952,0x1153,0x1174,0x19F6,0x1A17,0x1A17,0x1A17,0x19F7,0x19F7,0x2238,0x1A18,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x19D7,0x19F7,0x19F7,0x19F7,0x19F7,0x19F7,0x11F7,0x11D7,0x11F7,0x1217,0x11F7,0x1217,0x11F7,0x09D7,0x09B7,0x11D7,0x11D7,0x11D7,0x09B7,0x0996,0x0976,0x0135,0x0135,0x0955,0x0155,0x0155,0x0976,0x11D7,0x19F7,0x19D7,0x1174,0x1112,0x1931,0x1930,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x212F,0x210F,0x292F,0x290F,0x28EF,0x308D,0x510F,0xB2F6,0xB274,0xAA33,0xAA12,0xA212,0x8A30,0xFF5F,0xDF5D,0xD75D,0xCF3C,0xBEFC,0xBEFC,0xBF1C,0xBF1B,0xBF1B,0xB71B,0xBF1B,0xC73C,0xC75D,0xD77E,0xE75F,0x93D4,0x7A30,0x9211,0xA252,0xB294,0xC2B4,0xCAB5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD295,0xD2B5,0xD2B5,0xCAD5,0xC2B4,0xB2D3,0xB415,0xD61B,0xD71D,0xCF3C,0xC71C,0xC71C,0xBF1C,0xBF1C,0xBF1C,0xBF1C,0xBF1B,0xBF1B,0xBF1B,0xBF1C,0xBF1B,0xBF1B,0xBF3C,0xBF1B,0xBF1B,0xC73C,0xC75C,0xD73D,0xDEBD,0x8331,0x8250,0x9231,0xAA73,0xBA94,0xC294,0xCA94,0xD2B5,0xD295,0xD2B5,0xD294,0xD295,0xD294,0xD294,0xCAB4,0xCAB5,0xCAB4,0xC2B4,0xB2F3,0xCD39,0xDEBD,0xD71D,0xCF1C,0xC71C,0xBF1C,0xBF1B,0xBF1C,0xBF1C,0xBF1C,0xBF1C,0xBF1C,0xBF1C,0xBF1B,0xBF1B,0xBF1B,0xBF1B,0xBF1B,0xBF3B,0xC73C,0xC73C,0xD73E,0xDE9D,0x8B12,0x8A51,0x9A11,0xAA53,0xBA94,0xC294,0xCAB5,0xCA95,0xD295,0xD295,0xD295,0xD295,0xD295,0xD295,0xCA94,0xCA94,0xCAB4,0xC2D4,0xC315,0xFD7D,0xCC38,0x89D0,0x99F1,0xA212,0xBA74,0xC294,0xCAB5,0xCAB5,0xD2D5,0xD295,0xD295,0xD2B5,0xD2B5,0xD295,0xD294,0xD295,0xD294,0xD295,0xD294,0xCA94,0xCA94,0xC294,0xB292,0xBBB4,0xEDDB,0xF6DD,0xE6FC,0xDF1C,0xDF1B,0xD71B,0xD71B,0xD71A,0xDF3B,0xDF1B,0xDEDB,0xE6BB,0xF6BD,0xDD59,0x9AB1,0xA231,0xB233,0xBA74,0xC294,0xC294,0xCA94,0xD294,0xD294,0xD2B5,0xD2B5,0xD2B5,0xD294,0xD2B5,0xD2B5,0xD294,0xCA94,0xCAB4,0xCAD5,0xC294,0xB293,0xA313,0xD59B,0xDEFE,0xCF1D,0xCF1C,0xC71C,0xC6FC,0xC6FC,0xC73D,0xC73D,0xCF5D,0xE73F,0xAC36,0x820F,0x9211,0xA232,0xBA74,0xC294,0xCAB5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD294,0xD294,0xD294,0xD294,0xD295,0xD294,0xCA94,0xC294,0xBAB3,0xC374,0xEDBA,0xEE7C,0xEEFC,0xDEFB,0xD6DA,0xD6FB,0xD71B,0xDF1B,0xDF1B,0xE6FC,0xEEDD,0xDD7A,0x9A70,0xA211,0xAA12,0xBA53,0xC274,0xCA95,0xD295,0xD295,0xD295,0xD295,0xD295,0xD295,0xD295,0xD295,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xCAB5,0xC294,0xC294,0xBA94,0xA1F1,0xA1F1,0xB253,0xC294,0xCAB5,0xCAB5,0xD2B5,0xD2B5,0xD2B5,0xD295,0xD295,0xD2B5,0xD2B5,0xCAB5,0xCAB5,0xCAB4,0xBA93,0xAA92,0xBC77,0xEEDE,0xDF1D,0xCF1D,0xC6FC,0xC6FC,0xC71C,0xC71C,0xCF1C,0xD71D,0xDE9E,0x8B32,0x8A51,0x9A31,0xAA52,0xB273,0xC2B4,0xCAB5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD294,0xD294,0xD294,0xD294,0xCA94,0xCA94,0xC2B3,0xAAF3,0xCD59,0xDEDD,0xD71D,0xCF1D,0xC6FC,0xC6FC,0xC73C,0xC73D,0xCF3D,0xDF1F,0x9373,0x81F0,0x91F1,0xA212,0xBA94,0xC2B5,0xCAD5,0xCAD5,0xCAB5,0xD2B5,0xD2B4,0xD2B4,0xD2B5,0xD2B5,0xD295,0xD294,0xD295,0xD294,0xCA74,0xCA94,0xC2B3,0xB312,0xFE1C,0xFEDD,0xEEFC,0xE71C,0xDF1B,0xDF1B,0xDF1B,0xDF1B,0xDF1B,0xE6FC,0xEEFD,0xFF1F,0xAB32,0x9A10,0xAA12,0xB233,0xC294,0xC294,0xCA94,0xCAB5,0xD295,0xD295,0xD2B5,0xD295,0xD295,0xD294,0xD2B5,0xD2B5,0xD2B5,0xCAB4,0xCAB4,0xC2D4,0xAAD3,0xE55A,0xFEBE,0xF6FD,0xEEFD,0xEEFD,0xF6FD,0xFEDD,0xFEBE,0xCC16,0xA210,0xB1D1,0xB9D2,0xC1B3,0xC1D3,0xC9D3,0xC9D3,0xC9F3,0xC9F3,0xC9F4,0xCA14,0xCA15,0xC216,0xBA17,0xBA59,0xAADC,0x40D7,0x291A,0x215B,0x195C,0x117D,0x11BE,0x099E,0x099E,0x119D,0x115C,0x195C,0x293B,0x493A,0x7199,0xA219,0xB218,0xB9F7,0xBA16,0xBA16,0xB216,0xA9F6,0x9A16,0x8217,0x6297,0x543B,0x4D9E,0x35FE,0x25FE,0x1DDD,0x15FB,0x067A,0x06D9,0x0719,0x0F79,0x0F79,0x0F79,0x177A,0x277B,0x371C,0x4EBC,0x765D,0x5BB5,0x7A93,0x9A53,0xAA34,0xA9F4,0xA9F4,0xA9F4,0xA1F4,0x78D0,0x7911,0x8972,0xB276,0xAA15,0xAA35,0xA235,0x91F4,0x588F,0x48EF,0x5171,0x4130,0x3910,0x3110,0x3951,0x3951,0x3951,0x3151,0x3150,0x2930,0x3150,0x2950,0x2930,0x2930,0x292F,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x212F,0x2930,0x292F,0x292F,0x290F,0x290F,0x292F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x292F,0x210F,0x290F,0x210F,0x290F,0x210F,0x2930,0x2930,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x1911,0x1111,0x1112,0x1133,0x11B6,0x11F7,0x11D7,0x11B6,0x1154,0x1132,0x1131,0x1931,0x1930,0x1930,0x1951,0x1930,0x1930,0x1930,0x1951,0x1952,0x1132,0x1133,0x19B6,0x2217,0x21F7,0x19B5,0x1112,0x1932,0x2131,0x2130,0x2130,0x210F,0x212F,0x2930,0x210F,0x290F,0x210F,0x210F,0x290F,0x2930,0x2110,0x2110,0x2130,0x2130,0x2131,0x1931,0x1932,0x1133,0x1154,0x19B5,0x19D6,0x19D6,0x19F7,0x19D6,0x1195,0x1195,0x1195,0x1195,0x1174,0x1174,0x1154,0x1154,0x1154,0x1175,0x1175,0x1196,0x1196,0x19B7,0x19D7,0x19D7,0x21F7,0x19D6,0x19B5,0x1994,0x1153,0x1132,0x1132,0x1111,0x1931,0x1931,0x2130,0x2130,0x2130,0x212F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x2130,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2110,0x2110,0x2930,0x2130,0x2130,0x1910,0x1911,0x1911,0x1132,0x1153,0x1174,0x19B6,0x2217,0x2217,0x21D7,0x1975,0x1132,0x1111,0x1911,0x18F0,0x2110,0x2130,0x2150,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x210F,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x2930,0x212F,0x2930,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2150, + 0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1911,0x1911,0x1111,0x1933,0x1975,0x21D6,0x21F7,0x21F7,0x19B6,0x1154,0x1133,0x1133,0x1133,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1131,0x1131,0x1131,0x1131,0x1951,0x1931,0x1931,0x1131,0x1131,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1912,0x1932,0x1932,0x1932,0x1931,0x1932,0x1932,0x1912,0x1911,0x1911,0x1911,0x1912,0x1912,0x1912,0x1912,0x1912,0x1112,0x1932,0x1111,0x1112,0x1112,0x1112,0x1112,0x1132,0x1112,0x1133,0x1133,0x1134,0x1134,0x1975,0x19B6,0x19D7,0x19D7,0x19F7,0x19F7,0x19D7,0x19F7,0x21F8,0x19D7,0x19D7,0x1995,0x1974,0x1952,0x1931,0x2151,0x2150,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x2110,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1910,0x2131,0x1931,0x1932,0x1132,0x1153,0x1194,0x2217,0x1A17,0x1A17,0x19D6,0x19D6,0x11B6,0x19B6,0x11B6,0x1195,0x1195,0x1195,0x1175,0x1195,0x1175,0x1195,0x1174,0x1174,0x1195,0x1995,0x1175,0x1175,0x1175,0x1174,0x1195,0x1195,0x1195,0x1195,0x0995,0x11B5,0x11B5,0x11B6,0x11B6,0x11B6,0x11B6,0x19F8,0x11B7,0x11F8,0x11B7,0x0976,0x0155,0x0955,0x0955,0x0955,0x0976,0x1196,0x19F7,0x19F7,0x19D6,0x1154,0x1932,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x292F,0x292F,0x290F,0x28EE,0x308D,0x50EF,0xAAD5,0xB274,0xAA33,0xA212,0xA212,0x8A0F,0xFF7F,0xDF5D,0xDF5D,0xCF3C,0xC71B,0xC71B,0xBF1B,0xBF1B,0xBF1B,0xBF3B,0xC73B,0xC73C,0xCF7C,0xD77E,0xE71E,0x8BB3,0x7A2F,0x9211,0xA252,0xB294,0xC2D4,0xCAD5,0xD2D5,0xD2D5,0xD2D5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xCAB5,0xCAD5,0xC2B4,0xB2F3,0xB415,0xDE3B,0xDF1D,0xCF3C,0xCF3C,0xC73C,0xC71B,0xC71C,0xC71B,0xBF1B,0xBF1B,0xBF3B,0xBF1B,0xBF3B,0xBF1B,0xBF1B,0xBF3B,0xBF3B,0xC73B,0xC73C,0xCF5C,0xD75D,0xDEDE,0x8331,0x8250,0x9231,0xAA73,0xBA94,0xC2B5,0xCAD5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B4,0xCAB4,0xCAB4,0xC2B4,0xC2B4,0xAAF3,0xD559,0xDEBD,0xD6FC,0xCF1C,0xCF1C,0xC71B,0xC73B,0xBF3B,0xBF3B,0xBF3B,0xC71B,0xC71B,0xBF1B,0xBF1B,0xBF1B,0xBF1B,0xC73B,0xC73B,0xC73B,0xCF5C,0xCF5C,0xDF5D,0xDE9D,0x8B12,0x8A51,0x9A32,0xAA53,0xBA94,0xCAB5,0xCAD5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B4,0xCAD4,0xCAD5,0xCAF5,0xC315,0xE47A,0xAAB3,0x9A11,0x99F2,0xAA33,0xBAB4,0xC2B5,0xCAB5,0xCAB5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B4,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xCAB4,0xC2B4,0xBAB3,0xBB53,0xEDFB,0xF6DC,0xE71C,0xDF3B,0xD73B,0xD73B,0xD73B,0xD73A,0xD73A,0xD73A,0xD73A,0xDF3B,0xDF1B,0xE6FC,0xEEBC,0xDD9A,0x9AB1,0x9A31,0xAA53,0xBA94,0xC2D5,0xCAD5,0xCAB5,0xD2B4,0xD2B5,0xD2B5,0xD2B5,0xD2D5,0xD2D5,0xD2B5,0xD2B5,0xD2B5,0xD2D5,0xCAD5,0xC2B4,0xBA93,0xAAD3,0xBC36,0xE6DD,0xD71C,0xD71C,0xCF1C,0xCF1C,0xC71C,0xCF5D,0xCF5D,0xCF5D,0xEF5F,0x8B12,0x89F0,0x9A11,0xAA52,0xBA94,0xC2B4,0xCAD5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2B5,0xD2B4,0xD2B5,0xD2B4,0xD2B4,0xD2B4,0xCAB4,0xCA94,0xBAB3,0xBB33,0xE559,0xF6BC,0xE6FB,0xDF1B,0xDF3B,0xD71B,0xD71A,0xD71A,0xD71A,0xD73B,0xDF3B,0xE71C,0xF6DD,0xD4F8,0x9230,0xA1F1,0xB212,0xC274,0xCA94,0xCAB5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xDAD5,0xD2B5,0xD2B5,0xD2B5,0xD295,0xD2B5,0xD2D5,0xD2D5,0xCAB5,0xC2B5,0xBA94,0xA1F1,0xA1F1,0xB253,0xC2B4,0xCAD5,0xD2D5,0xD2D5,0xD2B5,0xD2B5,0xD2B5,0xD295,0xD2B5,0xD2B5,0xD2D5,0xCAB5,0xCAB4,0xC2B3,0xAAB2,0xBC77,0xEEFE,0xDF1D,0xD71D,0xCF1C,0xCEFC,0xCF1C,0xCF3C,0xCF3C,0xDF3D,0xE6BE,0x8B32,0x8A50,0x9A31,0xAA52,0xBA94,0xC2B4,0xCAD5,0xD2D5,0xD2D5,0xD2B5,0xD2D5,0xD2B5,0xD2B5,0xD2B5,0xD294,0xCAB4,0xCAB4,0xC2B4,0xB313,0xCD79,0xDEDD,0xD71D,0xCF3C,0xC6FC,0xC71C,0xCF5D,0xD75D,0xD75D,0xDEBD,0x8290,0x81D0,0x91F1,0xA232,0xBA94,0xC2D5,0xCAD5,0xCAD5,0xD2D5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD294,0xCA94,0xCA94,0xC2B3,0xB2F2,0xED9A,0xF6DD,0xE6FC,0xE71B,0xDF3B,0xDF3B,0xD71B,0xD73B,0xD73B,0xD73B,0xDF3B,0xE73C,0xEF1D,0xEDFB,0x9AB1,0xA231,0xAA12,0xBA73,0xC2B4,0xCAB4,0xCAB5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD2D5,0xD2D5,0xCAD4,0xCAD4,0xC2D4,0xB2D3,0xCC36,0xFEDE,0xEEFD,0xEEFC,0xEF1C,0xEF1C,0xF71D,0xFEFD,0xFEBE,0xE4D9,0x99EF,0xB1D1,0xB9B2,0xC1B2,0xC1D2,0xC9D3,0xC9D3,0xC9F3,0xC9F4,0xCA14,0xCA15,0xC1F5,0xBA17,0xB258,0xA2BC,0x40D7,0x291A,0x215C,0x197D,0x119D,0x119E,0x099E,0x099E,0x119E,0x119D,0x197D,0x213B,0x415A,0x617A,0x921A,0xAA39,0xB217,0xB1F6,0xBA16,0xBA56,0xAA36,0x9A16,0x89F7,0x6A77,0x53BA,0x555E,0x3DDE,0x2DFE,0x1DDD,0x161B,0x0E9A,0x06D8,0x0719,0x0739,0x0F79,0x0F79,0x177A,0x2F7B,0x3F1C,0x4E9C,0x763D,0x5B75,0x7A93,0x9A53,0xA1F3,0xA9F4,0xA9F4,0xA215,0x91B3,0x70D0,0x7911,0x8152,0xA235,0xA235,0xA214,0xA215,0xA235,0x6910,0x48AE,0x5171,0x4951,0x3910,0x3910,0x3951,0x3951,0x3971,0x3150,0x3150,0x3150,0x3150,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x212F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x2110,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1911,0x1132,0x1133,0x1195,0x19F7,0x19F7,0x11B6,0x1153,0x1132,0x1131,0x1931,0x1930,0x1930,0x1950,0x1930,0x1930,0x1930,0x1930,0x1931,0x1132,0x1133,0x19B5,0x21F7,0x21F7,0x1995,0x1112,0x1912,0x1931,0x2130,0x2130,0x210F,0x212F,0x2930,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2930,0x2930,0x2110,0x2130,0x2130,0x1910,0x1911,0x1112,0x1133,0x1974,0x1195,0x19D6,0x19F7,0x19D7,0x19B6,0x19B6,0x11B6,0x19D6,0x19D6,0x19B6,0x1196,0x1196,0x1196,0x19B6,0x19D7,0x19F7,0x19F7,0x19D7,0x19D7,0x19D7,0x19B6,0x19B5,0x1994,0x1973,0x1952,0x1932,0x1931,0x1911,0x1931,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x292F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1911,0x1132,0x1133,0x1174,0x19B5,0x2217,0x2217,0x21D7,0x1995,0x1133,0x1112,0x1110,0x18F0,0x1910,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x212F,0x210F,0x2930,0x2930,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x292F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130, + 0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2110,0x2910,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x2130,0x2130,0x2150,0x2130,0x2131,0x2131,0x1910,0x1911,0x1112,0x1133,0x1974,0x19B6,0x2217,0x2217,0x21B6,0x1974,0x1154,0x1133,0x1112,0x1132,0x1132,0x1152,0x1952,0x1952,0x1132,0x1131,0x1931,0x1931,0x1951,0x1951,0x1931,0x1930,0x1930,0x1930,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x2132,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x2131,0x1931,0x2151,0x1931,0x2152,0x1931,0x1951,0x1931,0x2152,0x1951,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1912,0x1912,0x1112,0x1133,0x1974,0x2195,0x21D7,0x21F7,0x21D7,0x19D7,0x2218,0x2218,0x2A18,0x21F7,0x1995,0x1974,0x1953,0x1952,0x1931,0x2130,0x2150,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x212F,0x210F,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2132,0x1912,0x1132,0x1133,0x1995,0x21F6,0x2217,0x2217,0x19D6,0x1194,0x1174,0x1133,0x1132,0x1153,0x1153,0x1153,0x1132,0x1112,0x1132,0x1112,0x1112,0x1132,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x0912,0x0912,0x1132,0x0932,0x0932,0x0933,0x0933,0x0934,0x0955,0x11B6,0x19F8,0x11D8,0x11F8,0x11D7,0x0976,0x0956,0x0976,0x1196,0x11B7,0x19F8,0x11D7,0x19D7,0x1996,0x1133,0x1932,0x1931,0x2151,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x292F,0x290F,0x28EE,0x308D,0x50EE,0xAAD5,0xB273,0xAA12,0xA212,0xA211,0x8A0F,0xFF5F,0xE75D,0xDF5C,0xD73C,0xC71B,0xC71B,0xC71B,0xC71B,0xC71B,0xC73B,0xC73B,0xC73B,0xCF7C,0xDF7D,0xE6FE,0x8B72,0x7A2F,0x9211,0xA272,0xB2B4,0xC2F5,0xCAF5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2F5,0xCAF5,0xC2D4,0xB313,0xBC35,0xDE3B,0xDF1C,0xD73C,0xCF3B,0xCF3B,0xCF3B,0xC71B,0xC71B,0xC73B,0xC73B,0xC73B,0xC73B,0xC73B,0xC71B,0xC71B,0xC73B,0xC73B,0xC73B,0xCF5B,0xCF7C,0xDF5D,0xE6DD,0x8331,0x8250,0x9231,0xAA73,0xBAB4,0xCAF5,0xCAF5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xCAF5,0xCAD4,0xC2D4,0xB2F3,0xDD9A,0xE6FD,0xDF1C,0xD71B,0xCF3B,0xCF1B,0xC73B,0xC73B,0xC73B,0xC73B,0xC71B,0xC73B,0xC73B,0xC73B,0xC73B,0xC73B,0xC73B,0xC73B,0xCF5B,0xCF5B,0xD75C,0xDF5D,0xE6BD,0x8B11,0x8A30,0x9A11,0xAA53,0xBAB4,0xCAD5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2B5,0xD2D5,0xD2F5,0xD2F5,0xCB15,0xCB36,0xD3B7,0xA232,0x9A12,0xA212,0xB273,0xC2D5,0xCAD5,0xCAD5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2B4,0xD2D5,0xD2D5,0xD2B5,0xD2B4,0xCAB4,0xC2D3,0xBB73,0xEDDA,0xF71D,0xEF3B,0xDF3B,0xDF3B,0xD73B,0xD73A,0xD73A,0xD73A,0xD73A,0xD73A,0xD73A,0xD75A,0xDF5B,0xDF3B,0xDEFB,0xF6FD,0xCCF7,0x8A4F,0x9A11,0xAA52,0xBAB4,0xCAD5,0xCAD5,0xCAB5,0xCAB5,0xD2B5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xCAD5,0xCAD5,0xC2D4,0xB2D3,0xAB53,0xEEBD,0xDF1D,0xDF3C,0xD73C,0xCF1B,0xCF3C,0xCF5C,0xCF5C,0xD75D,0xF77F,0x722E,0x89F0,0x9A11,0xAA53,0xC2D4,0xCAD5,0xCAD5,0xD2F5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2B5,0xD2B5,0xD2B4,0xD2B5,0xD2B5,0xCAB4,0xCAB4,0xBAF3,0xDCF8,0xF6BC,0xEF1C,0xE73B,0xDF5B,0xDF3B,0xD73A,0xD71A,0xD73A,0xD73A,0xD75A,0xDF5B,0xDF5B,0xE71C,0xF69C,0x9B32,0x91EF,0xA1F1,0xB253,0xC2B4,0xCAD5,0xD2F5,0xD2D5,0xD2B5,0xD2D5,0xD2D5,0xDAD5,0xD2D5,0xD2D5,0xD2B5,0xD2B5,0xD2D5,0xD2D5,0xD2D5,0xCAD5,0xC294,0xA1F1,0xA1F1,0xB273,0xC2B4,0xCAD5,0xD2D5,0xD2F5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2F5,0xCAD5,0xCAD4,0xC2B3,0xAAD2,0xC496,0xEEFD,0xDF1D,0xD73C,0xCF1C,0xCF1C,0xCF3C,0xCF3C,0xD73D,0xDF3E,0xE6DE,0x8B31,0x8A50,0x9A31,0xAA52,0xBA94,0xCAD5,0xD2F5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2B5,0xCAB4,0xCAD4,0xC2D4,0xB313,0xD579,0xE6FD,0xDF3D,0xD73C,0xCF1B,0xCF1B,0xD77D,0xD77D,0xDF5D,0xD67C,0x7A0F,0x89F0,0x91F1,0xAA32,0xBAB4,0xCAD5,0xCAD5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2B5,0xD2B5,0xCA94,0xCAB4,0xBAD3,0xD4B7,0xFEBC,0xEEFC,0xE73B,0xDF3B,0xDF3B,0xD71A,0xD73A,0xD73B,0xD73B,0xD73B,0xD73B,0xDF5B,0xE71C,0xE69B,0xB435,0x9A50,0xA231,0xAA32,0xBA94,0xC2B4,0xCAB4,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2F5,0xCAF5,0xCAF5,0xC2D4,0xBAD3,0xB353,0xFEFE,0xEEFC,0xEF1C,0xEF1C,0xEF1C,0xEF1C,0xF71C,0xFF1D,0xFF1E,0xED5A,0x9A0F,0xA9D0,0xB9B1,0xC1B2,0xC1D3,0xC9D3,0xC9F3,0xC9F3,0xCA14,0xC215,0xC1F5,0xBA16,0xB238,0x9A9B,0x40D7,0x291A,0x215C,0x197D,0x119D,0x099D,0x099E,0x099E,0x11BE,0x119E,0x117D,0x195C,0x315B,0x413A,0x6958,0xA23A,0xAA18,0xB216,0xB236,0xB236,0xAA16,0xA216,0x8A17,0x7277,0x5379,0x54DC,0x45DE,0x361E,0x25DD,0x1E1C,0x0E9A,0x06D9,0x0719,0x0738,0x0759,0x0F79,0x1F7A,0x275B,0x3F1C,0x56BD,0x761D,0x5B54,0x7A93,0x9A54,0xA1F3,0xAA14,0xA1D4,0xA1F4,0x89B3,0x70F0,0x7152,0x7111,0x9A15,0xA235,0xA1F4,0xA215,0xA235,0x81B3,0x488E,0x4910,0x5191,0x4150,0x3930,0x3931,0x3951,0x3151,0x3150,0x3150,0x3150,0x3150,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1132,0x1153,0x11B6,0x19F7,0x1A18,0x11B6,0x1153,0x1132,0x1951,0x1951,0x1930,0x1930,0x1950,0x2150,0x1930,0x1930,0x1931,0x1931,0x1132,0x1133,0x21B6,0x21F7,0x21F7,0x1995,0x1112,0x1932,0x2131,0x1910,0x2110,0x2110,0x2130,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x2910,0x2110,0x210F,0x2110,0x2130,0x2131,0x2111,0x1911,0x1932,0x1132,0x1954,0x1975,0x19B6,0x19D6,0x19D7,0x19D7,0x19F7,0x19F7,0x11D7,0x11B7,0x11B7,0x11B7,0x19B7,0x19D7,0x19F7,0x19D7,0x21F7,0x21D7,0x19B6,0x1995,0x1974,0x1153,0x1953,0x1932,0x1931,0x1931,0x1951,0x1930,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x212F,0x212F,0x292F,0x292F,0x290F,0x210F,0x210F,0x210F,0x212F,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x1112,0x1132,0x1174,0x19B5,0x2217,0x2238,0x19D6,0x1175,0x1133,0x1112,0x1111,0x1910,0x1910,0x2130,0x2950,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130, + 0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x292F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2151,0x1931,0x1931,0x1911,0x1132,0x1133,0x1174,0x21D6,0x21F7,0x21F7,0x19D6,0x1974,0x1153,0x1112,0x1112,0x1132,0x1932,0x1932,0x1952,0x1931,0x1931,0x1931,0x1931,0x1930,0x1930,0x1930,0x1930,0x1930,0x1930,0x1930,0x2130,0x1930,0x1930,0x2130,0x1910,0x1910,0x1910,0x2111,0x2131,0x1911,0x1911,0x2111,0x1910,0x2131,0x1930,0x1930,0x1910,0x1930,0x2130,0x2130,0x1930,0x2130,0x1930,0x2131,0x2131,0x2131,0x1910,0x2131,0x1930,0x2151,0x2130,0x2131,0x1910,0x2131,0x1931,0x1931,0x1931,0x1911,0x1932,0x1912,0x1912,0x1932,0x1933,0x1974,0x1975,0x1995,0x1975,0x19B6,0x21D6,0x21B6,0x1975,0x1974,0x1953,0x1932,0x1931,0x1931,0x2130,0x2150,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1932,0x1112,0x1133,0x1995,0x19D6,0x2237,0x2217,0x19B5,0x1153,0x1132,0x1132,0x1132,0x1111,0x1111,0x1111,0x1111,0x1111,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x10F1,0x1911,0x1111,0x1111,0x1111,0x1111,0x1112,0x1112,0x1113,0x0934,0x1175,0x19D7,0x19F7,0x19F8,0x19F8,0x11D7,0x11B7,0x1196,0x1196,0x19D7,0x19F7,0x19F7,0x1196,0x1154,0x1133,0x1932,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x28EF,0x308D,0x50EE,0xAAD5,0xB253,0xAA12,0xA1F2,0xA1F1,0x8A0F,0xFF7F,0xE75D,0xDF5C,0xD73B,0xCF1B,0xCF3B,0xC73B,0xC73A,0xC73A,0xCF3B,0xCF5B,0xCF5B,0xD77C,0xDF5D,0xE6DD,0x8B51,0x822F,0x9231,0xAA93,0xBAD4,0xC2F5,0xD315,0xD315,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xCB15,0xC2F4,0xBB34,0xBC35,0xDE5B,0xDF1C,0xD73B,0xD73B,0xCF3B,0xCF3B,0xCF3B,0xCF3B,0xCF3B,0xC73B,0xC73A,0xC73A,0xC73A,0xC73A,0xC73B,0xC73B,0xCF3B,0xCF5B,0xCF5B,0xD77B,0xDF5D,0xE6FD,0x8331,0x8250,0x9231,0xAA92,0xBAD4,0xCAF5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xDAF5,0xD2F5,0xD2F5,0xD2F5,0xCAF5,0xCAF4,0xC2D4,0xB2F2,0xDDBA,0xE6FC,0xDF1B,0xD71B,0xD73B,0xCF3B,0xCF3B,0xCF3A,0xCF3B,0xCF3B,0xCF3B,0xCF3B,0xCF3B,0xCF3A,0xCF3A,0xCF3A,0xCF3A,0xCF3A,0xCF5B,0xD75B,0xD75C,0xE75D,0xE6BD,0x8B11,0x8A30,0x9A11,0xAA72,0xBAB4,0xCAD5,0xCAD5,0xD2F5,0xD2F5,0xD2D5,0xD2D5,0xD2D5,0xD2F5,0xD2D5,0xD2F5,0xD2F5,0xD315,0xCB15,0xCB36,0xBAF5,0x9A11,0xA212,0xA232,0xBAB4,0xCAF5,0xCAF5,0xCAD5,0xD2D5,0xD2F5,0xD2F5,0xD2D5,0xDAF5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2B5,0xCAD4,0xC2F3,0xBB32,0xDD58,0xFEFD,0xEF3B,0xE73B,0xDF5A,0xDF5A,0xD73A,0xD73A,0xD73A,0xD73A,0xD73A,0xD73A,0xD73A,0xD73A,0xDF5A,0xDF7B,0xDF5B,0xE6FB,0xEEBC,0xB414,0x8A0F,0x9A10,0xAA73,0xC2D5,0xCAD5,0xCAD5,0xCAD5,0xD2D5,0xD2D5,0xD2F5,0xD2F5,0xD2F5,0xD2D5,0xD2F5,0xD2F5,0xD2F5,0xCAF5,0xCB15,0xBAF4,0xAB33,0xD599,0xEF1D,0xDF3C,0xD73C,0xD73B,0xD73B,0xD73C,0xD75C,0xDF7D,0xEF3F,0x71ED,0x9210,0x9A11,0xB273,0xC2D4,0xCAF5,0xD315,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xCAD4,0xC2F3,0xC394,0xF65B,0xEF1C,0xE73B,0xDF3B,0xDF3A,0xD73A,0xD73A,0xD73A,0xD73A,0xD73A,0xD75A,0xD75A,0xDF5B,0xE75C,0xF75D,0xCD38,0x81CE,0x99F0,0xAA32,0xC294,0xCAF5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2F5,0xD2F5,0xC2D4,0xA1F1,0x99F1,0xB273,0xC2D5,0xCAF5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2D5,0xD2F5,0xD2F5,0xD2F5,0xCAF5,0xCAF4,0xC2D3,0xB2D2,0xC4B6,0xF6FD,0xE73D,0xDF3C,0xD71C,0xD73C,0xD73C,0xD73C,0xD73C,0xE75D,0xEEDE,0x8B31,0x8A50,0x9A31,0xAA72,0xBAB4,0xCAF5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2D5,0xD2D5,0xD2D4,0xCAD4,0xC2D4,0xB333,0xD599,0xE6FD,0xDF3C,0xD73C,0xD71B,0xD71B,0xD75C,0xDF7D,0xE75D,0xC599,0x71EE,0x89F0,0x9A11,0xAA73,0xC2D5,0xCAF5,0xCAF5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xCAD4,0xC2D3,0xC374,0xF61B,0xF6FC,0xE6FB,0xDF1A,0xDF3B,0xDF3B,0xDF3A,0xD73A,0xD73A,0xD73A,0xDF5A,0xDF5B,0xDF5B,0xE75B,0xEF3C,0xDDFA,0x92B1,0xA251,0xA211,0xBA93,0xC2D4,0xCAB4,0xCAD5,0xD2F5,0xD2F5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2D5,0xD2F5,0xD315,0xCAF5,0xC2F4,0xBAD3,0xAB12,0xFEFE,0xEF1C,0xEF1C,0xEF1C,0xEF1C,0xEF3C,0xEF3C,0xF73C,0xFF3D,0xFF1E,0xF59B,0xA250,0xA9D0,0xB1B1,0xC1B2,0xC1B2,0xC1D3,0xC9F3,0xC1F4,0xC1F4,0xB9F5,0xBA16,0xAA38,0x9A9B,0x40D7,0x291A,0x215C,0x197D,0x119D,0x099D,0x099E,0x099E,0x099E,0x099E,0x119E,0x115D,0x215C,0x313A,0x4918,0x81FA,0xA239,0xB238,0xAA16,0xAA16,0xAA16,0xA236,0x9216,0x7A57,0x5B17,0x547B,0x4DDE,0x361E,0x2DFD,0x1E1B,0x0E79,0x06D9,0x0718,0x0F59,0x0F79,0x179A,0x1F7A,0x2F7B,0x3F3C,0x56BC,0x75DC,0x5334,0x7A93,0x9233,0x99F4,0xA1F4,0xA1F4,0x99F4,0x7952,0x7111,0x7172,0x6931,0x7972,0xA256,0xA235,0xA215,0x99F4,0x9A15,0x50AE,0x40AE,0x5171,0x4171,0x3930,0x3930,0x3931,0x3151,0x3150,0x3150,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x20EF,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x212F,0x212F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2150,0x2130,0x1931,0x1111,0x1133,0x1195,0x19D7,0x19F7,0x11B5,0x0932,0x1131,0x1931,0x1930,0x1930,0x1930,0x1930,0x2130,0x192F,0x1930,0x1930,0x1951,0x1132,0x1113,0x19B6,0x21F7,0x21F7,0x1995,0x1112,0x1932,0x1931,0x2110,0x2110,0x2930,0x210F,0x2930,0x290F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x2111,0x1911,0x1912,0x1932,0x1133,0x1154,0x1995,0x19B6,0x19D7,0x19D7,0x11D7,0x19D7,0x11D7,0x11B7,0x19B7,0x19B7,0x19D7,0x19D7,0x19B6,0x21B6,0x1995,0x1974,0x1133,0x1133,0x1932,0x1932,0x1931,0x1931,0x1930,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x292F,0x210F,0x292F,0x210F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x2930,0x290F,0x292F,0x292F,0x212F,0x212F,0x2930,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2150,0x2111,0x1931,0x1931,0x1932,0x1133,0x1154,0x19D6,0x19F7,0x2217,0x19D7,0x1175,0x1133,0x1112,0x10F1,0x1910,0x190F,0x2130,0x2950,0x212F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x292F,0x212F,0x212F,0x212F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x212F,0x210F,0x212F,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130, + 0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2910,0x2910,0x2930,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1911,0x1132,0x1133,0x1174,0x21D6,0x21F7,0x21F7,0x21D6,0x1975,0x1133,0x1112,0x1932,0x1932,0x1932,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1910,0x1930,0x1930,0x1930,0x1930,0x1930,0x1930,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x1910,0x2110,0x2110,0x2110,0x1910,0x2110,0x2110,0x1910,0x1910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x1911,0x1911,0x1912,0x1932,0x1933,0x1933,0x1933,0x1933,0x1974,0x1975,0x1954,0x1933,0x1933,0x1932,0x1911,0x1931,0x1930,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1930,0x1910,0x1911,0x1932,0x1132,0x1133,0x1995,0x21D6,0x21F7,0x19D6,0x1195,0x1133,0x1132,0x1111,0x1111,0x1911,0x1910,0x1911,0x1910,0x1910,0x1930,0x1910,0x1910,0x1911,0x1910,0x2131,0x2131,0x2131,0x1931,0x1911,0x1910,0x2111,0x2111,0x2131,0x2110,0x2131,0x2131,0x2131,0x1931,0x1931,0x1911,0x1111,0x10F2,0x1153,0x1174,0x1995,0x19B6,0x19D7,0x19D7,0x19D7,0x19D7,0x19B7,0x19B6,0x21F7,0x21F7,0x19B6,0x1154,0x1133,0x1132,0x1931,0x1931,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x30EF,0x308D,0x50CE,0xAAD5,0xB253,0xAA12,0xA1F1,0xA1F1,0x89EE,0xFF7F,0xEF5D,0xE77C,0xDF3B,0xD73B,0xD73A,0xCF3A,0xCF3A,0xCF3A,0xCF3A,0xD75A,0xD77B,0xDF7B,0xE77D,0xE6BD,0x8B51,0x822F,0x9231,0xAA93,0xBAF4,0xCB15,0xD315,0xD315,0xD315,0xD2F5,0xDB15,0xD315,0xD315,0xD315,0xD2F5,0xCAF5,0xCB15,0xC2F4,0xBB34,0xBC55,0xE65B,0xE73C,0xDF5B,0xD73B,0xD73B,0xD73B,0xD73B,0xCF3B,0xCF3A,0xCF3A,0xCF3A,0xCF3A,0xCF3A,0xCF3A,0xCF3A,0xCF3A,0xCF3A,0xCF5A,0xD75B,0xD77B,0xE77D,0xEEFD,0x8330,0x824F,0x9231,0xAA92,0xBAD4,0xCB15,0xD316,0xD316,0xD316,0xD315,0xD315,0xDAF5,0xDAF5,0xD2F5,0xD2F5,0xD315,0xCB15,0xC2F4,0xB312,0xE5DA,0xEF1C,0xDF1B,0xDF3B,0xD75B,0xD73B,0xD73A,0xD73A,0xCF3A,0xCF5B,0xCF3A,0xCF3A,0xCF5A,0xCF5A,0xCF3A,0xCF3A,0xD73A,0xD73A,0xD75A,0xD75B,0xDF7C,0xE75D,0xEEBD,0x8B11,0x8A30,0x9A11,0xAA73,0xBAB4,0xCAF5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD315,0xD315,0xD315,0xD335,0xD336,0xBAB4,0xA212,0xA212,0xAA53,0xC2D5,0xCB15,0xD315,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xDB15,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2D5,0xD2D5,0xD2D5,0xCAF4,0xC353,0xDD17,0xFF3D,0xF73B,0xE75B,0xE75A,0xDF5A,0xDF5A,0xD73A,0xD73A,0xD73A,0xD73A,0xD73A,0xD73A,0xD73A,0xD73A,0xDF3A,0xDF5A,0xE77B,0xE73A,0xE6FB,0xFF1D,0x92D0,0x89EF,0x9A10,0xBAB4,0xC2F5,0xCAF5,0xCAD5,0xCAF5,0xD2F5,0xD315,0xD2F5,0xD2F5,0xD316,0xD315,0xD2F5,0xD2F5,0xD315,0xCB15,0xC2F4,0xB333,0xC4B6,0xF71D,0xE73C,0xDF5C,0xD71B,0xD71B,0xD73B,0xDF5C,0xE75D,0xDE5C,0x71ED,0x9210,0x9A31,0xB293,0xC2F5,0xCB15,0xD315,0xD315,0xD2F5,0xD315,0xD315,0xD2F5,0xDAF5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xCAF4,0xC334,0xCC76,0xFEFC,0xEF3B,0xE73B,0xDF5A,0xD73A,0xD73A,0xD73A,0xD73A,0xD75A,0xD75A,0xD75A,0xD75A,0xDF7B,0xDF5B,0xEF5C,0xFF1D,0x79CD,0x91CF,0xA211,0xB273,0xCAF5,0xCB15,0xD315,0xD315,0xD2F5,0xD2F5,0xD2D5,0xD2D5,0xDAF5,0xDAF6,0xDAF5,0xDAF5,0xDB16,0xDB16,0xD315,0xCAF5,0x99F1,0x99D0,0xB273,0xC2D5,0xCAF5,0xD316,0xD316,0xD316,0xD315,0xD315,0xD2F5,0xD315,0xD315,0xD315,0xD315,0xCB15,0xC2F4,0xB312,0xC4B6,0xF71D,0xE75C,0xDF5C,0xD73B,0xD73B,0xD73B,0xD75C,0xDF5C,0xE73D,0xEEDD,0x8B31,0x8A50,0x9A31,0xAA72,0xBAD4,0xCB15,0xCAF5,0xD315,0xD315,0xD315,0xD315,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xCAF4,0xC2F4,0xBB53,0xDD99,0xEEFC,0xE73C,0xDF5C,0xD71B,0xD73B,0xDF7C,0xE77D,0xEF7E,0xBD37,0x71CD,0x89F0,0x9A11,0xB293,0xC2F5,0xCB15,0xCAF5,0xD315,0xD315,0xD316,0xD315,0xD2F5,0xD2F6,0xD2F6,0xD2F5,0xD2F5,0xD2F5,0xCB14,0xC334,0xCC56,0xFEDC,0xEF1B,0xE73B,0xE73B,0xDF3A,0xDF3A,0xDF3A,0xDF3A,0xDF3A,0xDF3A,0xDF5A,0xDF5A,0xDF7B,0xE75B,0xEF5B,0xFF7E,0xA352,0x9230,0x91F0,0xAA52,0xC2D4,0xCAD4,0xCAD5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD315,0xD315,0xCB15,0xCB15,0xC2F4,0xA2D1,0xFF3E,0xEF1C,0xEF1C,0xEF3C,0xEF3C,0xEF3C,0xEF3C,0xEF3C,0xF75C,0xFF3D,0xFF1E,0xFE1C,0xA250,0xA9D0,0xB9B1,0xC1B2,0xC1D3,0xC1D3,0xC1F4,0xC1F4,0xB9F5,0xBA16,0xB258,0xA2BB,0x40D7,0x291A,0x215C,0x197D,0x119D,0x119E,0x099E,0x099E,0x099E,0x099E,0x119E,0x119E,0x197D,0x213C,0x391A,0x48D8,0x9A3B,0xAA39,0xAA37,0xAA16,0xAA37,0xA257,0x9216,0x7A36,0x6B18,0x541A,0x4DBD,0x361D,0x2E1D,0x265C,0x0E79,0x06D8,0x06D7,0x0718,0x0F58,0x0F58,0x1F7A,0x2F5A,0x3F1C,0x5EBD,0x759B,0x52F3,0x82B4,0x9A34,0xA235,0xAA35,0x99F4,0x99F4,0x7131,0x6931,0x6952,0x6952,0x6911,0x9215,0xA236,0xAA56,0xA215,0xA276,0x7151,0x384D,0x4910,0x4971,0x4151,0x3950,0x3951,0x3150,0x3150,0x3150,0x3150,0x2950,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x212F,0x292F,0x210F,0x292F,0x292F,0x210E,0x210F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2130,0x2150,0x1931,0x1932,0x1132,0x19B5,0x1A17,0x19F7,0x1195,0x0912,0x1131,0x1951,0x2151,0x1930,0x1930,0x1930,0x192F,0x192F,0x1930,0x1930,0x1931,0x1132,0x1113,0x21B6,0x2A17,0x21F7,0x1995,0x1112,0x1112,0x1931,0x2130,0x2110,0x2110,0x2130,0x2930,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x2130,0x2930,0x2131,0x2131,0x1911,0x1912,0x1912,0x1953,0x1954,0x1974,0x1175,0x1175,0x1195,0x1196,0x1196,0x19B7,0x19B7,0x19B6,0x1996,0x1975,0x1954,0x1133,0x1112,0x1112,0x1912,0x1911,0x1911,0x1931,0x1931,0x1910,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2110,0x1911,0x1911,0x1932,0x1153,0x1174,0x21F6,0x19D6,0x19D7,0x21D7,0x1175,0x0913,0x1112,0x1111,0x1911,0x1930,0x212F,0x2950,0x2950,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2110,0x2930,0x2930,0x212F,0x212F,0x212F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F, + 0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x2130,0x212F,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x20EF,0x2910,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1911,0x1112,0x1953,0x1974,0x19B6,0x21F7,0x2217,0x21F6,0x1974,0x1133,0x1112,0x1932,0x1911,0x1931,0x1931,0x1931,0x1931,0x1910,0x1910,0x2130,0x1910,0x2110,0x1930,0x1930,0x2130,0x190F,0x190F,0x2130,0x2130,0x2110,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1911,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1932,0x1913,0x1933,0x1933,0x1932,0x1932,0x1911,0x1911,0x1930,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x212F,0x210F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1930,0x1930,0x1931,0x1932,0x1132,0x1133,0x1995,0x21F7,0x21F7,0x21F7,0x1995,0x1153,0x1132,0x1111,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2951,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1932,0x1112,0x1132,0x1133,0x1133,0x1174,0x19B5,0x1995,0x19B6,0x19B5,0x1995,0x19B5,0x19B6,0x1995,0x1153,0x1132,0x1932,0x1911,0x1930,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x292F,0x290F,0x290F,0x30EF,0x308D,0x48CE,0xAAD5,0xB253,0xAA12,0xA1F1,0xA1F1,0x89EE,0xFF7F,0xEF5C,0xE77C,0xDF5B,0xD73A,0xD73A,0xD73A,0xD75A,0xD75A,0xD75A,0xD77A,0xDF7B,0xDF7B,0xEF7D,0xE6BC,0x8B31,0x822F,0x9230,0xAAB3,0xBAF4,0xCB35,0xD335,0xD335,0xD315,0xD315,0xD315,0xD315,0xD335,0xDB36,0xD315,0xD315,0xCB15,0xC314,0xBB33,0xC455,0xE65B,0xE73C,0xDF5B,0xDF5B,0xDF3B,0xDF3B,0xD73A,0xD73A,0xD75A,0xD73A,0xD73A,0xCF3A,0xD75A,0xD75A,0xD75A,0xD75A,0xD75A,0xD75A,0xDF7B,0xDF7B,0xE77C,0xEF1D,0x8B30,0x824F,0x9231,0xAA93,0xBAD4,0xCB15,0xD316,0xD316,0xD316,0xD315,0xDB15,0xDB15,0xDB15,0xDB35,0xD315,0xD315,0xCB14,0xC314,0xB312,0xE5DA,0xEF1C,0xE73B,0xDF3A,0xDF3A,0xD73A,0xD75A,0xD75A,0xD75A,0xD75A,0xD75A,0xD73A,0xD75A,0xD75A,0xD73A,0xD73A,0xD75A,0xD73A,0xD75A,0xDF5B,0xDF7C,0xEF7D,0xEEDD,0x8B31,0x8A50,0x9A31,0xAA72,0xC2D4,0xCAF5,0xD315,0xD316,0xD316,0xDB16,0xDB15,0xDB15,0xD315,0xD315,0xD315,0xD315,0xD315,0xD335,0xD336,0xBAB4,0xA212,0xA212,0xB294,0xC2F5,0xCB15,0xD336,0xD315,0xD315,0xD315,0xD315,0xDB15,0xDB15,0xD315,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xD2F4,0xC313,0xCC35,0xFE9B,0xF73C,0xEF5A,0xE73A,0xDF5A,0xDF5A,0xDF5A,0xDF5A,0xDF5A,0xD73A,0xD739,0xD739,0xDF59,0xD739,0xDF5A,0xDF5A,0xDF39,0xDF5A,0xE79B,0xE75A,0xEF1B,0xD558,0x822E,0x91EF,0xA231,0xC2D4,0xCAF5,0xCAF5,0xCAF5,0xD315,0xD315,0xD315,0xD315,0xD315,0xD315,0xD315,0xD315,0xD315,0xCB15,0xC314,0xBB53,0xB3F3,0xF6FD,0xEF3C,0xE75B,0xDF3B,0xDF3B,0xDF5B,0xE75C,0xEF7D,0xC598,0x7A0E,0x9210,0xA231,0xB2B3,0xCB15,0xD336,0xD316,0xD315,0xD315,0xD315,0xDB15,0xDB15,0xDB15,0xDB15,0xD315,0xD315,0xD2F4,0xCB34,0xC373,0xDD38,0xFF1C,0xEF5B,0xE77A,0xDF7A,0xDF5A,0xD73A,0xD739,0xD739,0xD739,0xD75A,0xDF7A,0xDF7A,0xDF9A,0xE79B,0xEF9B,0xFF7E,0x9B31,0x89EF,0x9A11,0xB273,0xC2F4,0xCB15,0xD315,0xD315,0xD315,0xD2F5,0xD2F5,0xD2F5,0xD2F5,0xDAF5,0xDB16,0xDB15,0xDB16,0xDB36,0xD336,0xCB15,0x99F0,0x99F1,0xB273,0xC2F5,0xCB16,0xD316,0xD316,0xD316,0xD316,0xD315,0xD315,0xD315,0xD315,0xD315,0xD335,0xCB34,0xC314,0xBB33,0xCCB6,0xFF1D,0xEF5C,0xDF5B,0xDF5B,0xDF5B,0xDF5B,0xDF5C,0xDF5C,0xEF5D,0xEEFD,0x8B31,0x8A50,0x9A31,0xAA92,0xBAD4,0xCB15,0xD335,0xD315,0xD315,0xD315,0xD315,0xDB15,0xD315,0xD315,0xD315,0xD2F5,0xCAF4,0xC2F4,0xBB53,0xDDB9,0xEEFB,0xE73B,0xE75B,0xDF3B,0xDF3B,0xE77C,0xE77C,0xF77E,0xAC95,0x79EE,0x89F0,0x9A31,0xB2B3,0xCB15,0xD336,0xD316,0xD316,0xD336,0xD336,0xD315,0xD315,0xD2F5,0xD316,0xD316,0xD315,0xD315,0xCB34,0xC373,0xDD38,0xFF1C,0xEF3B,0xE73B,0xE75B,0xDF3A,0xDF3A,0xDF3A,0xDF3A,0xDF3A,0xDF3A,0xDF5A,0xDF5A,0xE77A,0xE77B,0xEF9B,0xFF9E,0xABD3,0x9250,0x91EF,0xA231,0xC2F4,0xCAF5,0xCAF5,0xD2F5,0xD2F5,0xD315,0xDB16,0xD315,0xD315,0xD315,0xD315,0xD315,0xCB15,0xCB14,0xC2F4,0xA2F1,0xFF1E,0xF73C,0xEF3C,0xEF3B,0xEF3C,0xEF3B,0xEF5C,0xEF5C,0xEF5B,0xF77C,0xFF5D,0xFF3E,0xFDFC,0xA270,0xA9D0,0xB9B1,0xC1B2,0xC1D3,0xC1D4,0xB9F4,0xC1F5,0xBA16,0xB258,0x9A9B,0x40F7,0x291A,0x215B,0x197D,0x119D,0x119E,0x099E,0x099E,0x099E,0x097E,0x099E,0x119E,0x115D,0x195D,0x293C,0x391A,0x6118,0x9A5A,0xA238,0xAA37,0xAA57,0xA236,0x9A36,0x8236,0x6AB7,0x5B98,0x555C,0x461D,0x361D,0x265B,0x0E79,0x06D8,0x0718,0x06F7,0x0737,0x1778,0x1F79,0x2F5A,0x471C,0x66BD,0x6D3A,0x5AD3,0x8294,0x9234,0xA214,0xA215,0x99F5,0x91D4,0x7131,0x6952,0x6952,0x6952,0x6111,0x7952,0xA256,0xAA56,0xA1F4,0xA235,0x8A14,0x488E,0x40CF,0x4950,0x4171,0x3930,0x3150,0x3151,0x3150,0x3150,0x2950,0x2950,0x2930,0x2950,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x210E,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1911,0x1132,0x1195,0x19F7,0x19D6,0x1995,0x1112,0x1131,0x1951,0x2151,0x2150,0x192F,0x212F,0x2150,0x192F,0x1930,0x1930,0x1931,0x1132,0x0912,0x19B5,0x21F7,0x21F7,0x1995,0x1112,0x1112,0x1931,0x2130,0x2130,0x210F,0x210F,0x2930,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x212F,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x1931,0x1911,0x1932,0x1133,0x1153,0x1153,0x1153,0x1154,0x1154,0x1154,0x1174,0x1154,0x1153,0x1933,0x1932,0x1932,0x1912,0x1911,0x1911,0x1911,0x1911,0x1931,0x2130,0x2110,0x2130,0x212F,0x2130,0x2130,0x210F,0x2930,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x2930,0x2930,0x210F,0x212F,0x210F,0x212F,0x210F,0x2930,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1910,0x1911,0x1932,0x1153,0x1994,0x19B6,0x19F7,0x21F7,0x21D7,0x1155,0x1134,0x1113,0x1112,0x1911,0x1910,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x290F,0x2930,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F, + 0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2930,0x2130,0x2930,0x210F,0x212F,0x210F,0x292F,0x210F,0x292F,0x292F,0x212F,0x210F,0x292F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2910,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2110,0x1910,0x1931,0x1911,0x1932,0x1953,0x1974,0x19B6,0x2217,0x21F7,0x21F6,0x1974,0x1133,0x1112,0x1911,0x1931,0x1931,0x1931,0x1931,0x1930,0x1910,0x1910,0x1910,0x1910,0x2110,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x2130,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x210F,0x2110,0x2110,0x2130,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x1910,0x1910,0x1910,0x2131,0x1931,0x2131,0x2132,0x1911,0x1911,0x1912,0x1912,0x1912,0x1912,0x1931,0x1931,0x2131,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2130,0x1931,0x1931,0x1933,0x1133,0x1175,0x21F7,0x21F7,0x2217,0x19B5,0x1153,0x1132,0x1131,0x1931,0x2151,0x2131,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2131,0x2131,0x1911,0x1911,0x10F1,0x1111,0x1112,0x1132,0x1973,0x1974,0x1953,0x1953,0x1953,0x1953,0x1132,0x1132,0x1111,0x1931,0x1910,0x2110,0x2130,0x212F,0x212F,0x214F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x28EF,0x308D,0x48AE,0xAAD5,0xB253,0xAA12,0xA9F1,0xA1F1,0x89EE,0xFF7F,0xEF7C,0xEF7C,0xE75B,0xDF3A,0xDF5A,0xDF3A,0xDF5A,0xDF5A,0xDF59,0xDF7A,0xDF7A,0xE79B,0xEF9D,0xE6BC,0x8B51,0x822F,0x9230,0xAAD3,0xBB14,0xCB35,0xD356,0xD336,0xD336,0xD335,0xD315,0xD335,0xDB36,0xDB56,0xD335,0xD315,0xCB35,0xCB34,0xBB74,0xC475,0xE65A,0xEF3C,0xE75B,0xDF5A,0xDF5A,0xDF5A,0xDF5A,0xD75A,0xD75A,0xD73A,0xD75A,0xD75A,0xD75A,0xD75A,0xD75A,0xD75A,0xD75A,0xDF5A,0xDF7A,0xE79B,0xEF7C,0xF71D,0x8B30,0x824F,0x9230,0xAA92,0xBAF4,0xCB36,0xD336,0xD336,0xD336,0xDB36,0xDB36,0xDB36,0xDB35,0xD335,0xD335,0xD335,0xD335,0xCB34,0xB352,0xE5F9,0xF71C,0xEF3B,0xE75A,0xDF5A,0xDF5A,0xDF5A,0xDF5A,0xD75A,0xD75A,0xD75A,0xD75A,0xD75A,0xD75A,0xD75A,0xD75A,0xD759,0xDF5A,0xDF7A,0xE77B,0xE77B,0xEF7D,0xF6FD,0x9331,0x8A50,0x9A31,0xAA92,0xC2D4,0xCB35,0xD336,0xD336,0xD336,0xDB36,0xDB36,0xD315,0xD335,0xD335,0xDB35,0xD335,0xD335,0xD336,0xD356,0xBA94,0xA212,0xA212,0xBAD5,0xCB15,0xD336,0xD336,0xDB56,0xD336,0xD335,0xDB36,0xDB36,0xDB36,0xDB16,0xDB16,0xD315,0xD315,0xD315,0xCB14,0xC353,0xEDD9,0xFEFB,0xF75B,0xEF5A,0xE75A,0xE75A,0xDF59,0xDF59,0xDF59,0xDF59,0xDF5A,0xDF7A,0xDF5A,0xDF59,0xDF59,0xDF59,0xDF59,0xDF59,0xE779,0xE77A,0xE77A,0xEF3B,0xE65A,0x92EF,0x89EE,0x91CF,0xB2B3,0xC2F5,0xCB15,0xD335,0xD336,0xD315,0xD335,0xD335,0xD335,0xD335,0xD335,0xD336,0xD315,0xCB35,0xCB35,0xC354,0xB3D3,0xF69C,0xF73C,0xEF5B,0xE73B,0xE75B,0xE75B,0xE75C,0xF77D,0xBD16,0x7A0E,0x9210,0x9A51,0xB2B3,0xCB36,0xD336,0xD336,0xD315,0xD336,0xD335,0xDB15,0xDB15,0xDB35,0xDB35,0xD315,0xD335,0xD335,0xCB34,0xC3B4,0xEDD9,0xFF5C,0xEF7B,0xE77B,0xE77A,0xDF5A,0xDF5A,0xDF59,0xD759,0xDF7A,0xDF7A,0xDF7A,0xDF7A,0xE79A,0xE79A,0xEFBB,0xFF9D,0xBC75,0x8A2F,0x9230,0xAA72,0xBAF4,0xC315,0xCB35,0xD335,0xD315,0xD315,0xD315,0xD315,0xD2F5,0xDAF5,0xDB15,0xDB15,0xDB35,0xD335,0xD356,0xCB35,0x99D0,0x99D0,0xB293,0xC2F5,0xD336,0xD336,0xD336,0xD336,0xD336,0xD335,0xD335,0xD335,0xD335,0xD335,0xD335,0xCB35,0xCB34,0xBB33,0xCCD6,0xFF3D,0xEF5C,0xE77B,0xE75B,0xDF5B,0xDF5B,0xE77C,0xE77C,0xEF7D,0xF6FD,0x8B31,0x8A4F,0x9231,0xAA92,0xBAF4,0xCB35,0xD336,0xD335,0xD336,0xDB36,0xD335,0xDB35,0xDB35,0xD335,0xD315,0xD315,0xCB14,0xCB34,0xBB73,0xE5D9,0xEF1B,0xEF5B,0xE75B,0xDF3A,0xDF3B,0xE77B,0xEF7C,0xFF7E,0x9BF2,0x820E,0x91F0,0x9A31,0xB2D4,0xCB36,0xD356,0xD336,0xD336,0xD336,0xD336,0xD336,0xD336,0xDB36,0xD336,0xD336,0xD335,0xD335,0xCB54,0xC3D4,0xEDD9,0xFF3C,0xEF7B,0xEF5A,0xE75A,0xDF3A,0xDF39,0xDF5A,0xDF5A,0xDF5A,0xDF5A,0xE75A,0xE75A,0xE75A,0xE77B,0xEF9B,0xFF9D,0xB454,0x8A4F,0x89EF,0x9A10,0xC315,0xD335,0xD335,0xD315,0xD315,0xD336,0xD336,0xD335,0xD335,0xD335,0xD335,0xD335,0xCB15,0xCB35,0xC314,0xAAF1,0xFF3E,0xF75C,0xF75C,0xEF5B,0xEF3B,0xEF3B,0xEF3B,0xEF5B,0xEF5B,0xEF5B,0xF77C,0xFF7D,0xFF5E,0xFE7D,0x99EE,0xA9D0,0xB9B2,0xC1D3,0xC1D3,0xC1D4,0xB9F5,0xB216,0xAA38,0x9A7A,0x40D7,0x311A,0x215B,0x197C,0x117D,0x119E,0x099E,0x099E,0x099E,0x099E,0x099E,0x099E,0x117E,0x115D,0x195D,0x291B,0x38D9,0x71DA,0xA27A,0xA237,0xA216,0xA236,0x9A36,0x8A57,0x7A96,0x5B37,0x5D1B,0x4DFC,0x3E3C,0x2E5B,0x0E78,0x06D8,0x0F38,0x0737,0x0757,0x0F58,0x1F79,0x2F5A,0x471B,0x66BC,0x64D8,0x52B2,0x8294,0x9234,0xA235,0xA215,0x9A15,0x89D4,0x6932,0x6972,0x6172,0x6152,0x6152,0x6931,0x9215,0xA256,0x99F4,0x9A14,0x9A76,0x6930,0x406D,0x40EF,0x4151,0x3950,0x3130,0x3150,0x2930,0x2950,0x2950,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x292F,0x292F,0x2930,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210E,0x210E,0x210F,0x292F,0x210E,0x210F,0x210F,0x2130,0x2130,0x1931,0x1111,0x1112,0x19B5,0x19F7,0x19D6,0x1174,0x1112,0x1931,0x1931,0x2130,0x2130,0x212F,0x214F,0x212F,0x212F,0x1930,0x1930,0x1931,0x1932,0x1133,0x21D6,0x2A17,0x21F7,0x1995,0x1132,0x1132,0x1931,0x2110,0x2110,0x210F,0x292F,0x2930,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x20EF,0x210F,0x2130,0x2110,0x2130,0x2130,0x2131,0x2131,0x2131,0x1911,0x10F1,0x1111,0x1952,0x1952,0x1952,0x1132,0x1112,0x1112,0x1112,0x1111,0x1931,0x1931,0x2152,0x1911,0x1931,0x1931,0x1931,0x1910,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1910,0x1911,0x1111,0x1133,0x1174,0x1995,0x2217,0x19F7,0x21F7,0x1975,0x1113,0x1112,0x1952,0x1952,0x1930,0x1910,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x292F,0x292F,0x210F,0x212F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F, + 0x2131,0x2131,0x2131,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2930,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x212F,0x210F,0x210F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1111,0x1133,0x1974,0x19B6,0x21F7,0x21F7,0x21D6,0x1974,0x1133,0x1132,0x1911,0x1910,0x1930,0x2130,0x2130,0x2130,0x1910,0x2110,0x2110,0x190F,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x212F,0x212F,0x210F,0x210F,0x2130,0x210F,0x2130,0x2110,0x210F,0x2110,0x2130,0x210F,0x210F,0x2110,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2111,0x2111,0x2111,0x2111,0x2111,0x2111,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1910,0x1931,0x1932,0x1133,0x1174,0x21D7,0x2217,0x21F7,0x19B6,0x1174,0x1132,0x1132,0x1931,0x1951,0x2151,0x2151,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x210F,0x210F,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1931,0x1931,0x1931,0x1931,0x1932,0x1932,0x1932,0x1911,0x1911,0x1111,0x1931,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x294F,0x2950,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x28EF,0x308D,0x48AD,0xB2D5,0xB253,0xA9F2,0xA9F1,0xA1F1,0x89EE,0xFF7F,0xEF7C,0xEF9B,0xE77A,0xDF5A,0xDF59,0xDF59,0xDF59,0xDF59,0xDF79,0xDF79,0xE79A,0xE7BB,0xF7BD,0xEEDC,0x9350,0x822F,0x9230,0xAAD3,0xBB14,0xCB35,0xD356,0xDB56,0xDB56,0xD335,0xD335,0xD335,0xDB56,0xDB56,0xD335,0xD335,0xD355,0xCB54,0xBB74,0xC495,0xEE7A,0xEF5B,0xE77B,0xE75A,0xE77A,0xDF5A,0xDF5A,0xDF5A,0xDF5A,0xDF59,0xDF7A,0xDF59,0xDF79,0xDF79,0xDF79,0xDF59,0xDF7A,0xDF7A,0xE77A,0xE79B,0xEF9C,0xF71D,0x8B30,0x824F,0x9230,0xAA92,0xBAF4,0xCB36,0xD356,0xD356,0xD356,0xDB56,0xDB56,0xDB36,0xDB35,0xD335,0xD335,0xD335,0xD355,0xCB34,0xBB73,0xE5D9,0xF73C,0xEF5B,0xE75A,0xE75A,0xE75A,0xDF59,0xDF59,0xDF59,0xDF59,0xDF59,0xDF59,0xDF79,0xDF79,0xDF79,0xDF79,0xDF79,0xDF79,0xDF7A,0xE79A,0xE79B,0xF79D,0xF6FD,0x9330,0x8A50,0x9A51,0xAA92,0xC314,0xCB35,0xD356,0xD356,0xDB56,0xDB56,0xDB56,0xDB36,0xDB36,0xD335,0xDB56,0xD355,0xD356,0xD356,0xDB77,0xB273,0xA212,0xA212,0xBAD5,0xCB36,0xD356,0xD356,0xDB56,0xD356,0xD356,0xDB56,0xDB36,0xDB36,0xDB56,0xDB36,0xD315,0xD315,0xD335,0xCB34,0xCC15,0xFEBB,0xF73B,0xEF5A,0xEF59,0xE759,0xE759,0xE759,0xE759,0xE759,0xE759,0xDF59,0xDF59,0xDF59,0xDF59,0xDF59,0xE779,0xE779,0xE779,0xE77A,0xE77A,0xEF9A,0xF79B,0xFF5D,0xC516,0x79CD,0x91CF,0xA252,0xC2F5,0xCB35,0xD356,0xD356,0xD336,0xD336,0xD356,0xDB56,0xDB56,0xD336,0xD336,0xD336,0xD335,0xCB55,0xC374,0xBBD3,0xF67B,0xF73C,0xEF7B,0xEF5B,0xEF7B,0xEF7B,0xEF7C,0xFF9D,0xBD16,0x822E,0x9230,0xA251,0xB2D3,0xCB56,0xD356,0xD356,0xD336,0xD336,0xDB36,0xDB36,0xDB36,0xDB35,0xDB35,0xDB35,0xD335,0xD335,0xC354,0xC3F4,0xF63A,0xF75C,0xEF7B,0xE77A,0xE79A,0xE77A,0xDF7A,0xDF79,0xDF79,0xDF79,0xDF59,0xDF79,0xDF79,0xE79A,0xE79A,0xEFBB,0xFF9D,0xCD37,0x822E,0x9230,0xA292,0xBB14,0xC334,0xCB35,0xCB35,0xD335,0xD335,0xD335,0xD335,0xD315,0xD2F5,0xD315,0xD315,0xD335,0xD355,0xD376,0xCB55,0x99F0,0x91D0,0xB293,0xC2F5,0xD336,0xD356,0xD336,0xD336,0xD356,0xD336,0xDB56,0xD355,0xD355,0xD355,0xD355,0xCB55,0xCB34,0xBB53,0xCCD6,0xFF3D,0xEF5C,0xE77B,0xE75B,0xE75B,0xE77B,0xE77B,0xEF9C,0xF77D,0xF6FD,0x8B30,0x8A4F,0x9230,0xAAB3,0xBAF4,0xCB55,0xD356,0xD336,0xD356,0xDB56,0xDB56,0xDB56,0xDB56,0xDB36,0xD335,0xD335,0xCB34,0xCB34,0xBB93,0xE5F9,0xF73B,0xEF7B,0xEF7A,0xE75A,0xE75A,0xEF9B,0xF79C,0xFF7D,0xA3F2,0x820E,0x9210,0x9A31,0xB2D4,0xCB56,0xD356,0xD356,0xD356,0xD336,0xDB56,0xD336,0xDB56,0xDB56,0xD336,0xD336,0xD335,0xCB35,0xC374,0xC3F4,0xF63A,0xFF7C,0xF77B,0xEF7A,0xE77A,0xE759,0xDF39,0xDF59,0xDF39,0xDF39,0xE759,0xE75A,0xE77A,0xEF7A,0xEF9A,0xEF9B,0xFFBD,0xBC95,0x8A6F,0x8A0F,0x9A10,0xC315,0xCB35,0xD356,0xDB56,0xD336,0xD336,0xD356,0xD356,0xD356,0xD355,0xD355,0xD355,0xD335,0xCB35,0xC314,0xAB11,0xFF3E,0xF73B,0xF75B,0xF75B,0xEF5B,0xEF5B,0xEF5B,0xEF5A,0xEF5B,0xEF5B,0xF77B,0xF79C,0xFF7D,0xFF5E,0xF59B,0x9A0F,0xB1D1,0xB9D3,0xC1D3,0xB9D4,0xB9F5,0xBA16,0xB238,0x9A5A,0x40D7,0x311A,0x215B,0x197D,0x119D,0x099E,0x099E,0x019E,0x099E,0x099F,0x099E,0x099E,0x097E,0x117E,0x195D,0x213C,0x28FB,0x40D8,0x925B,0xA27A,0xA258,0x9A16,0x9236,0x8A57,0x7A56,0x62D6,0x5C99,0x5DDC,0x4E1C,0x365B,0x1678,0x0ED7,0x0F37,0x0737,0x0757,0x0F37,0x1F79,0x375A,0x4EFB,0x6EBD,0x5C57,0x5A92,0x8294,0x9A54,0x99F4,0xA215,0x9A15,0x8193,0x6952,0x6152,0x6152,0x5952,0x6172,0x6131,0x7152,0x9215,0x9A35,0xA235,0xA296,0x9234,0x508E,0x408E,0x4130,0x3950,0x3950,0x3150,0x3150,0x3150,0x3150,0x2950,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210E,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x2130,0x2130,0x1910,0x1911,0x1112,0x1995,0x19D6,0x19D6,0x1174,0x1111,0x1931,0x2151,0x2150,0x2130,0x212F,0x212F,0x212F,0x212F,0x2150,0x1930,0x1931,0x1132,0x1113,0x19B6,0x2217,0x21F7,0x1995,0x1132,0x1111,0x1931,0x1910,0x2130,0x210F,0x290F,0x290F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1910,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1930,0x1930,0x2131,0x2130,0x2130,0x1930,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x290F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2131,0x1910,0x1111,0x1132,0x1153,0x19B6,0x21F7,0x21F7,0x21F7,0x1995,0x1133,0x1112,0x1112,0x1931,0x1931,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x292F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x212F,0x292F, + 0x1931,0x2132,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x2930,0x210F,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1932,0x1132,0x1974,0x19B6,0x21F7,0x21F7,0x21D6,0x1975,0x1112,0x1111,0x1911,0x1931,0x2151,0x2150,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x210F,0x210F,0x2110,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x290F,0x290F,0x290F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x212F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x210F,0x292F,0x292F,0x2930,0x2130,0x2130,0x1910,0x1910,0x1931,0x1953,0x1153,0x1174,0x21F7,0x2A38,0x21D7,0x1175,0x1133,0x1132,0x1132,0x1931,0x1931,0x1930,0x1930,0x2130,0x2130,0x2130,0x210F,0x210F,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2131,0x2131,0x2131,0x2151,0x2151,0x1911,0x1911,0x1911,0x1931,0x29B2,0x2151,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x28EF,0x308D,0x48AD,0xB2F5,0xB252,0xAA12,0xA9F1,0xA1F1,0x89CD,0xFF7E,0xF77C,0xEF9B,0xEF7A,0xE75A,0xE779,0xE759,0xE759,0xE779,0xE779,0xE779,0xEF9A,0xEFBB,0xFFBD,0xEEDC,0x9350,0x822F,0x8A30,0xAAD3,0xBB35,0xCB56,0xD376,0xDB56,0xDB56,0xDB56,0xDB56,0xD355,0xDB56,0xDB76,0xDB76,0xD355,0xD355,0xCB55,0xC394,0xCCB5,0xEE9A,0xF75B,0xEF9B,0xE77A,0xE77A,0xE77A,0xE779,0xE779,0xE779,0xE779,0xE779,0xDF79,0xDF79,0xE779,0xDF79,0xE779,0xE779,0xE77A,0xE79A,0xE7BB,0xF7BC,0xF71D,0x8B30,0x824F,0x9230,0xA292,0xC314,0xCB56,0xD376,0xD356,0xDB56,0xDB56,0xDB56,0xDB56,0xDB56,0xDB56,0xD355,0xD355,0xD355,0xCB75,0xBB93,0xE5D8,0xFF3C,0xF77B,0xEF9A,0xE77A,0xE779,0xE779,0xE779,0xE779,0xE779,0xE779,0xDF79,0xDF79,0xE799,0xDF79,0xDF79,0xDF79,0xE799,0xE79A,0xE79A,0xEFBB,0xF7BD,0xF6FD,0x9330,0x8A6F,0x9A50,0xAAB2,0xC314,0xD376,0xD356,0xDB76,0xDB56,0xDB56,0xDB56,0xDB56,0xD356,0xDB56,0xDB56,0xDB56,0xDB76,0xDB76,0xDB77,0xB273,0xA212,0xAA32,0xC2F5,0xD356,0xD376,0xD376,0xDB76,0xD356,0xDB56,0xD356,0xDB56,0xDB56,0xDB76,0xD356,0xD355,0xD335,0xD355,0xCB74,0xDCB6,0xFF1C,0xF77B,0xF77A,0xEF79,0xEF79,0xE779,0xE779,0xE759,0xE759,0xE759,0xE759,0xE759,0xE759,0xE779,0xE779,0xE799,0xE779,0xE779,0xE779,0xEF99,0xEFBA,0xEF9B,0xFFBC,0xFF7F,0x718C,0x89CF,0x9A10,0xBAF4,0xCB55,0xD376,0xD356,0xD356,0xD356,0xDB56,0xDB56,0xD356,0xD356,0xD356,0xD356,0xD355,0xCB55,0xC374,0xBBB3,0xF65B,0xFF5C,0xF77B,0xEF7B,0xEF9B,0xEF9B,0xF79C,0xFF9D,0xBD16,0x822E,0x9230,0x9A51,0xB2D3,0xCB56,0xD376,0xD356,0xD356,0xDB56,0xDB56,0xDB56,0xDB56,0xDB56,0xDB56,0xDB55,0xDB55,0xD355,0xCB74,0xC434,0xFE7B,0xFF5B,0xEF7A,0xEF7A,0xE79A,0xE779,0xE779,0xE779,0xE779,0xE779,0xE779,0xE779,0xE779,0xE799,0xEFB9,0xEF9A,0xFF9C,0xD597,0x7A2D,0x8A0E,0x9250,0xB333,0xC354,0xC355,0xCB55,0xCB55,0xD335,0xD355,0xD355,0xD335,0xD335,0xD335,0xD335,0xD375,0xD375,0xD375,0xCB55,0x99F0,0x91D0,0xB293,0xC315,0xD356,0xD377,0xD356,0xD356,0xD356,0xDB76,0xDB76,0xDB56,0xD356,0xD355,0xD355,0xD375,0xCB54,0xBB73,0xCCF6,0xFF3C,0xF77C,0xEF7B,0xE77B,0xE77B,0xE77B,0xEF7B,0xEF9B,0xF79D,0xF6FD,0x9330,0x8A4F,0x9230,0xAAB2,0xBB14,0xCB56,0xD376,0xD376,0xDB76,0xDB76,0xDB76,0xDB76,0xDB56,0xDB56,0xD355,0xD355,0xD355,0xCB74,0xC3D3,0xE618,0xF75B,0xF79B,0xEF9A,0xEF7A,0xEF7A,0xEF9B,0xF79C,0xFF7D,0xA412,0x820E,0x9210,0xA251,0xB2D4,0xCB56,0xD377,0xD376,0xD356,0xD356,0xDB56,0xDB56,0xDB76,0xD356,0xD356,0xD355,0xD355,0xD355,0xC374,0xC3F3,0xF65A,0xFF7C,0xF79A,0xEF7A,0xEF79,0xE779,0xE779,0xE759,0xE759,0xE759,0xE759,0xE759,0xEF79,0xEF9A,0xEF7A,0xF7BB,0xFFBD,0xC4D5,0x92AF,0x8A2F,0x9210,0xBAF4,0xCB35,0xD356,0xD356,0xD356,0xD356,0xD356,0xDB76,0xD376,0xD376,0xD376,0xD376,0xD355,0xCB55,0xCB55,0xB332,0xFF1D,0xF75B,0xF77B,0xF77B,0xF77B,0xF75A,0xEF5A,0xEF5A,0xF77B,0xEF5A,0xEF7B,0xF77B,0xF77C,0xFF7D,0xFF5E,0xE539,0xA1D0,0xB9D2,0xB9D3,0xB9D4,0xB9F5,0xBA16,0xB238,0xA27B,0x48D7,0x311A,0x215C,0x197D,0x119D,0x099E,0x099E,0x099E,0x099F,0x099F,0x099F,0x017E,0x097E,0x097E,0x117E,0x195D,0x293C,0x30FA,0x48D7,0x8A7B,0x9A79,0x9A57,0x9216,0x8A36,0x8256,0x6AB6,0x53B7,0x657B,0x55FC,0x3E5B,0x1657,0x0EB7,0x06D6,0x0716,0x0F57,0x0F57,0x2779,0x375A,0x4F1B,0x76BD,0x53F5,0x5A72,0x7A53,0x9214,0x99F4,0x99F5,0x9A15,0x7973,0x7173,0x6172,0x5952,0x5972,0x5972,0x5951,0x5910,0x7172,0x9A35,0xA276,0xAA96,0xA296,0x6931,0x404D,0x38CE,0x4150,0x3970,0x3130,0x3150,0x3150,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x20EF,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x290F,0x292F,0x210F,0x212F,0x2130,0x2151,0x1931,0x1911,0x1132,0x19B5,0x2217,0x21F7,0x1974,0x1111,0x1911,0x2151,0x2150,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2151,0x1951,0x1132,0x0912,0x21D6,0x2A17,0x21F7,0x19B5,0x1133,0x1132,0x1951,0x2130,0x2130,0x212F,0x292F,0x292F,0x290F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2130,0x2950,0x2130,0x2150,0x2130,0x2130,0x2130,0x2131,0x2131,0x2130,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x2930,0x292F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x2930,0x2130,0x2150,0x2130,0x1910,0x1911,0x1131,0x1152,0x1174,0x19D6,0x2217,0x2217,0x19D6,0x1175,0x1133,0x1112,0x1912,0x1911,0x1911,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x210F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x2930,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2110,0x2110,0x2130,0x1931,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x292F,0x292F, + 0x1133,0x1953,0x1932,0x1931,0x2131,0x2130,0x2110,0x2110,0x2110,0x2930,0x212F,0x2930,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x290F,0x290F,0x210F,0x2930,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1911,0x1132,0x1954,0x19B6,0x21F7,0x21F7,0x21D6,0x1975,0x1113,0x1112,0x1931,0x1931,0x2130,0x2150,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x292F,0x292F,0x210F,0x212F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1911,0x1931,0x1132,0x1133,0x1995,0x21F7,0x2A38,0x2218,0x1996,0x1154,0x1132,0x1112,0x1931,0x1910,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x20EF,0x2110,0x2130,0x2110,0x2130,0x210F,0x210F,0x2930,0x210F,0x210F,0x2930,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x1910,0x1910,0x1910,0x2130,0x2130,0x212F,0x210F,0x210E,0x210E,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x292F,0x292F,0x290F,0x28EF,0x30AE,0x488D,0xB2D5,0xB253,0xA9F1,0xA9F1,0xA1F1,0x89ED,0xFF7E,0xF79C,0xEF9B,0xEF9A,0xEF79,0xE759,0xE759,0xE779,0xE779,0xE779,0xEF99,0xEF99,0xF7BB,0xFFBC,0xF6DB,0x9370,0x822E,0x8A10,0xAAD3,0xBB35,0xCB76,0xD376,0xDB76,0xDB76,0xDB56,0xDB56,0xD355,0xDB76,0xDB76,0xDB76,0xD376,0xD375,0xCB75,0xC393,0xCCB5,0xF69A,0xF77B,0xEF9A,0xEF9A,0xEF9A,0xEF99,0xEF79,0xE799,0xE779,0xE779,0xE799,0xE779,0xE779,0xE779,0xE799,0xE779,0xE799,0xEF99,0xEFBA,0xEFDB,0xF7BC,0xFF1D,0x9330,0x8A4F,0x9230,0xAA92,0xBB14,0xD376,0xD376,0xDB76,0xDB76,0xDB76,0xDB76,0xDB56,0xDB56,0xD376,0xD355,0xD375,0xD375,0xCB75,0xC393,0xE5B8,0xFF3B,0xF79B,0xEF9A,0xEF79,0xEF79,0xE779,0xE779,0xE779,0xE779,0xE779,0xE779,0xE799,0xE799,0xE799,0xE779,0xE799,0xE799,0xEFBA,0xEFBA,0xEFBB,0xF7BC,0xF6FC,0x9350,0x8A6F,0x9250,0xAAB2,0xBB14,0xD376,0xD376,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB96,0xDB76,0xDBB7,0xAA52,0xA212,0xA212,0xC315,0xD377,0xD376,0xD376,0xD376,0xD376,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xD376,0xD355,0xCB75,0xC3B4,0xE578,0xFF5C,0xF77A,0xEF9A,0xEF99,0xEF99,0xEF79,0xEF79,0xEF79,0xEF79,0xE779,0xE779,0xE779,0xE779,0xE779,0xE779,0xE778,0xE779,0xEF99,0xEF99,0xEF99,0xF7BA,0xF7DB,0xF7BC,0xFF9E,0x71CC,0x89CF,0x91EF,0xBAF4,0xCB56,0xD376,0xD376,0xD376,0xD376,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xD376,0xD376,0xD375,0xC374,0xBB92,0xFE5B,0xFF5C,0xF77B,0xF79B,0xF79B,0xF79B,0xF79B,0xFF9D,0xC536,0x822E,0x9230,0x9A51,0xB2F3,0xCB76,0xD396,0xD376,0xDB96,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB75,0xD375,0xD355,0xC374,0xCC54,0xFEBB,0xFF7B,0xEF9A,0xEF9A,0xEF79,0xE779,0xE779,0xE778,0xE779,0xE779,0xE778,0xE798,0xE799,0xEFB9,0xEF99,0xEF99,0xFF9B,0xD5B7,0x724C,0x7A0D,0x8A2E,0xAB32,0xBB73,0xC394,0xC374,0xCB74,0xCB74,0xCB74,0xD374,0xD374,0xD374,0xD374,0xD395,0xD3B5,0xD3B5,0xD3B5,0xC354,0x91EF,0x91D0,0xB293,0xC315,0xD356,0xDB97,0xDB76,0xDB76,0xD376,0xDB76,0xDB76,0xDB76,0xD376,0xD376,0xD375,0xD375,0xCB74,0xBB73,0xD4F6,0xFF5C,0xF77B,0xF79B,0xEF7A,0xEF7A,0xEF7A,0xEF9A,0xEF9B,0xF79C,0xFF1D,0x9350,0x8A4F,0x9230,0xAAB2,0xBB14,0xCB76,0xD396,0xD376,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xD375,0xD375,0xCB74,0xC3D3,0xE618,0xFF5B,0xF7BA,0xEF9A,0xEF99,0xEF9A,0xF7BB,0xF79C,0xFF7D,0xB473,0x820E,0x9230,0x9A51,0xB2D3,0xCB56,0xD377,0xD376,0xD376,0xDB56,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xD376,0xD375,0xD375,0xC394,0xC413,0xFE9A,0xFF7B,0xF79A,0xEF99,0xEF79,0xEF79,0xEF79,0xEF79,0xEF79,0xEF79,0xEF59,0xEF79,0xEF79,0xEF99,0xF7BA,0xF7BB,0xFFBD,0xC4F6,0x92AF,0x8A2F,0x9210,0xBB14,0xCB35,0xD356,0xDB76,0xD356,0xD356,0xD376,0xDB96,0xDB96,0xD376,0xD376,0xD376,0xD355,0xCB55,0xCB54,0xB331,0xFF1D,0xFF7B,0xF77B,0xF77A,0xF77A,0xF75A,0xEF5A,0xF77A,0xF77A,0xF77A,0xF77B,0xF79B,0xF79C,0xFF9C,0xFF9D,0xFF3F,0xA230,0xB1D2,0xB9D3,0xB9D4,0xB9F5,0xBA16,0xB238,0x9A7B,0x48D7,0x311A,0x215C,0x197D,0x119D,0x099E,0x099E,0x099F,0x099F,0x099F,0x019F,0x019E,0x099E,0x097E,0x117E,0x117E,0x195D,0x291B,0x30F9,0x48D7,0x9ADC,0x9A59,0x9237,0x8A16,0x8257,0x7296,0x5B56,0x6D1B,0x65DC,0x4E3A,0x2677,0x0EB6,0x06D6,0x0716,0x0F56,0x1758,0x2779,0x3F5A,0x4EDB,0x769D,0x53B4,0x6272,0x8253,0x9214,0x99F4,0x99F5,0x91F5,0x7173,0x6973,0x6193,0x5972,0x5172,0x5992,0x5151,0x5951,0x5910,0x81F4,0x9A76,0xA255,0xA296,0x8A14,0x50AE,0x38AE,0x390F,0x3950,0x3150,0x3150,0x3150,0x3150,0x2950,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x290F,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x210F,0x2930,0x2950,0x2150,0x1931,0x1932,0x1132,0x19B5,0x2217,0x21F7,0x1174,0x1111,0x1911,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x192F,0x2130,0x1930,0x1951,0x1132,0x1133,0x19B6,0x2A37,0x19D6,0x19B5,0x1133,0x1132,0x1951,0x2130,0x2130,0x212F,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2130,0x2110,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x2130,0x212F,0x292F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x2910,0x210F,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x292F,0x292F,0x210F,0x212F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x2930,0x2130,0x2130,0x2151,0x1930,0x1911,0x1111,0x1132,0x1173,0x19D5,0x2217,0x2217,0x19D6,0x1174,0x1113,0x1112,0x1911,0x1911,0x1911,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x292F,0x292F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2110,0x2130,0x1931,0x1931,0x1931,0x1132,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1132,0x1932,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F, + 0x1195,0x1174,0x1973,0x1932,0x1931,0x2131,0x2110,0x2110,0x2110,0x2910,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1111,0x1132,0x1154,0x19B6,0x2217,0x2217,0x21D6,0x1174,0x1113,0x1132,0x1931,0x1931,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x290F,0x290F,0x20EF,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x210F,0x210E,0x210F,0x210F,0x292F,0x210F,0x212F,0x2930,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x1931,0x1111,0x1112,0x1133,0x19B6,0x19D7,0x21F8,0x21F8,0x19B6,0x1974,0x1133,0x1112,0x1111,0x1931,0x1930,0x1930,0x2130,0x2130,0x190F,0x210F,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x292F,0x290F,0x290F,0x28EF,0x30AE,0x408D,0xB2B5,0xB253,0xA9F1,0xA9F1,0xA1F0,0x81AD,0xFF7E,0xF79B,0xF79B,0xEF9A,0xEF79,0xEF79,0xEF78,0xEF78,0xEF78,0xEF78,0xEF78,0xEF99,0xF7DA,0xFFDC,0xF6DB,0x9B71,0x822E,0x8A0F,0xAAD3,0xC335,0xCB76,0xD396,0xDB96,0xDB96,0xDB76,0xDB76,0xDB76,0xDB76,0xDB96,0xDB96,0xDB76,0xD375,0xCB74,0xC393,0xCCB5,0xF69A,0xFF9B,0xF79A,0xEF99,0xEF99,0xEF99,0xEF99,0xEF99,0xEF78,0xEF78,0xEF78,0xEF99,0xEF98,0xEF98,0xEF98,0xEF99,0xEF99,0xEF99,0xEFBA,0xF7BA,0xFFBC,0xFF1C,0x9350,0x8A4E,0x9250,0xA292,0xC335,0xD396,0xDB97,0xDB97,0xDB97,0xDB97,0xDB96,0xDB76,0xDB76,0xDB96,0xDB96,0xD395,0xD395,0xD395,0xC3B3,0xE5D8,0xFF5B,0xFF9A,0xF7BA,0xF799,0xEF99,0xEF98,0xEF99,0xEF98,0xEF98,0xEF98,0xEF98,0xEF98,0xEF98,0xEF98,0xE798,0xEF99,0xEF99,0xEFB9,0xEFBA,0xF7BB,0xFFBC,0xF6FC,0x9330,0x8A4E,0x922F,0xAAB2,0xC334,0xD376,0xD396,0xDB96,0xDB76,0xDB76,0xDB76,0xDB76,0xDB76,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDBB7,0xAA52,0xA212,0xA232,0xC335,0xD397,0xD396,0xD396,0xD376,0xD396,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xD375,0xD395,0xC3B3,0xEDB9,0xFF7C,0xF79A,0xF799,0xEF99,0xEF99,0xEF99,0xEF99,0xEF79,0xEF79,0xEF79,0xEF79,0xEF79,0xEF78,0xEF78,0xEF78,0xEF98,0xEF99,0xEF99,0xEF99,0xEF99,0xEFBA,0xF7BA,0xF7BB,0xFF9E,0x71CC,0x89CE,0x89CF,0xB2D3,0xCB75,0xD396,0xD396,0xD396,0xD396,0xD376,0xDB96,0xDB76,0xDB76,0xD375,0xDB76,0xDB96,0xD375,0xCB74,0xBBD3,0xFE5A,0xFF5C,0xF79B,0xF77A,0xF79A,0xF79B,0xFF9B,0xFF9D,0xCD36,0x822E,0x9230,0x9A51,0xB2F3,0xCB96,0xD397,0xDB97,0xDB96,0xDB96,0xDB96,0xDB76,0xDB96,0xDB76,0xDB96,0xDB76,0xD375,0xD375,0xCB73,0xC433,0xFEBB,0xFF7B,0xF79A,0xEF99,0xEF99,0xEF98,0xEF98,0xEF98,0xEF98,0xEF98,0xEF78,0xEF98,0xEF98,0xEFB9,0xEFB9,0xF799,0xFF9B,0xD617,0x7ACC,0x82CD,0x92EE,0xA350,0xAB71,0xB391,0xBB91,0xBB92,0xBB92,0xC392,0xC392,0xC393,0xC3B3,0xC3B3,0xCBB3,0xCBD4,0xCBF4,0xCBF5,0xC374,0x91EF,0x91D0,0xB2B3,0xC315,0xD376,0xDB97,0xDB97,0xDB97,0xDB96,0xDB96,0xDB96,0xDB96,0xDB76,0xDB96,0xDB96,0xD395,0xD394,0xC3B3,0xD516,0xFF5C,0xFF7B,0xF79A,0xEF7A,0xEF7A,0xEF9A,0xEF9A,0xF7BB,0xFF9C,0xFF1C,0x9350,0x824E,0x922F,0xA2B2,0xBB34,0xCB96,0xD396,0xDB96,0xDB96,0xDB96,0xDB96,0xDB76,0xDB76,0xDB76,0xDB76,0xD375,0xD375,0xCB94,0xC3F3,0xEE38,0xFF5A,0xF79A,0xF7BA,0xEF99,0xEF99,0xF7BA,0xFFBB,0xFF9D,0xB473,0x7A0D,0x9210,0x9A51,0xB2D3,0xCB76,0xDB97,0xDB97,0xDB97,0xDB96,0xDB76,0xDB96,0xDB96,0xDB96,0xDB76,0xDB96,0xDB96,0xD395,0xCBB4,0xCC54,0xFEBA,0xFF9B,0xF79A,0xF799,0xEF98,0xEF78,0xEF78,0xEF98,0xEF98,0xEF78,0xEF79,0xEF79,0xEF99,0xEF99,0xF7DA,0xF7DA,0xFFBC,0xC4F5,0x92AF,0x8A2E,0x920F,0xC334,0xCB56,0xD376,0xDB96,0xD376,0xDB76,0xDB76,0xDB96,0xDB96,0xD396,0xD396,0xD396,0xD375,0xCB55,0xCB54,0xB351,0xFF3D,0xFF7B,0xF79B,0xF77A,0xF77A,0xF77A,0xF77A,0xF77A,0xF77A,0xF77A,0xF79B,0xF79B,0xFFBC,0xFF9C,0xFF7C,0xFF3E,0xC374,0xA9D1,0xB1D2,0xB1B3,0xB9D5,0xB1F6,0xB258,0x9A5A,0x48F8,0x311A,0x213B,0x197D,0x119D,0x119E,0x099E,0x099F,0x099F,0x099F,0x019F,0x019F,0x019E,0x099E,0x097E,0x117E,0x195D,0x215D,0x293B,0x38F9,0x69B9,0x927A,0x9258,0x8A57,0x8257,0x7297,0x62F6,0x7479,0x7DDC,0x5E3A,0x3698,0x0E75,0x0ED6,0x0F16,0x0F37,0x1737,0x2F79,0x3F3A,0x56FC,0x7E9D,0x4B53,0x6272,0x7A33,0x9234,0x9A15,0xA236,0x81B4,0x6932,0x6993,0x6193,0x5172,0x5172,0x5192,0x5172,0x5151,0x5110,0x6131,0x81D4,0x9235,0x9A76,0xAAF8,0x8214,0x40AE,0x38CE,0x3930,0x3130,0x3150,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x292F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x1910,0x1931,0x1932,0x1133,0x1995,0x19D6,0x19F7,0x1174,0x1111,0x1911,0x2130,0x2130,0x212F,0x190F,0x212F,0x212F,0x212F,0x1930,0x1930,0x1931,0x1112,0x1113,0x19D6,0x2217,0x19D6,0x1195,0x1133,0x1112,0x1931,0x1910,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2930,0x2110,0x210F,0x210F,0x2130,0x210F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x290F,0x20EF,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x292F,0x292F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1931,0x1111,0x1112,0x1154,0x19D6,0x2237,0x2217,0x21F6,0x1174,0x1112,0x1112,0x1911,0x1911,0x2131,0x2111,0x2110,0x2130,0x210F,0x210F,0x212F,0x210F,0x2130,0x210F,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210E,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x1930,0x1931,0x1931,0x1132,0x1153,0x1994,0x19B6,0x19F7,0x19D7,0x19F7,0x19B6,0x1175,0x1133,0x1133,0x1932,0x1932,0x1931,0x1910,0x2130,0x1930,0x2130,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F, + 0x19F7,0x1195,0x1174,0x1133,0x1932,0x1931,0x2110,0x2130,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x2930,0x2930,0x2110,0x2130,0x212F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2930,0x292F,0x210F,0x20EF,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2130,0x2130,0x2130,0x1931,0x1931,0x1112,0x1153,0x19B6,0x21F7,0x2218,0x21F7,0x1975,0x1133,0x1112,0x1931,0x1931,0x1930,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x212F,0x212F,0x210F,0x292F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x212F,0x212F,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1931,0x1112,0x1133,0x1995,0x21F7,0x21F8,0x21F7,0x1996,0x1154,0x1133,0x1112,0x1931,0x1911,0x1930,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210E,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x292F,0x290F,0x290F,0x28EF,0x30AE,0x408D,0xAAB4,0xB252,0xA9F1,0xA9F1,0xA9F0,0x89CD,0xFF7E,0xF79B,0xF79A,0xEF9A,0xEF99,0xEF78,0xEF78,0xEF98,0xEF98,0xEF98,0xEF98,0xF799,0xF7DA,0xFFBC,0xF6DB,0x9B91,0x822E,0x8A0F,0xAAD3,0xC355,0xD396,0xDB97,0xDBB7,0xDB96,0xDB76,0xDB96,0xDB96,0xDB96,0xDBB6,0xDB96,0xDB96,0xD395,0xCB94,0xC3B3,0xCCB4,0xF6BA,0xFF9B,0xF7B9,0xF7B9,0xF7B9,0xF7B9,0xF799,0xF798,0xEF98,0xEF98,0xEF98,0xEF98,0xEF98,0xEF98,0xEF98,0xEF98,0xEFB9,0xF7B9,0xF7B9,0xF7BA,0xFFBB,0xFF1C,0x934F,0x824E,0x922F,0xA2B2,0xBB34,0xD396,0xDBB7,0xDBB7,0xDBB7,0xDB97,0xDB97,0xDBB6,0xDB96,0xDB96,0xDB95,0xDB95,0xD3B5,0xD395,0xC3B3,0xE5D7,0xFF3A,0xFF9A,0xF799,0xF799,0xF798,0xF7B8,0xF798,0xF798,0xEF98,0xEF98,0xEF98,0xEFB8,0xEF98,0xEF98,0xEF98,0xEFB8,0xEFB9,0xEFB9,0xF7BA,0xF7DB,0xFFBC,0xFEFC,0x9350,0x8A4E,0x924F,0xAAB2,0xC354,0xD396,0xDBB6,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDBB6,0xDBB6,0xDB96,0xDBD7,0xAA73,0xA232,0xA232,0xC335,0xD397,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDBB6,0xDB96,0xD396,0xD396,0xDB96,0xDB96,0xDB96,0xD395,0xC3B3,0xFE5A,0xFF7B,0xF79A,0xF7B9,0xF7B9,0xEF99,0xF7B9,0xF799,0xEF99,0xEF98,0xEF98,0xEF98,0xEF98,0xEF98,0xEF98,0xEF98,0xEF98,0xEFB8,0xEFB8,0xF7B9,0xF7B9,0xF7B9,0xF7BA,0xF7BB,0xFF9E,0x71EC,0x81CE,0x89CF,0xB2D3,0xCB96,0xD3B7,0xDBB7,0xD396,0xD396,0xD396,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xD395,0xD375,0xCB94,0xC3D3,0xF639,0xFF5B,0xF77A,0xF79A,0xF79A,0xF79A,0xFF9B,0xFF9D,0xCD77,0x822D,0x922F,0x9A51,0xB2F4,0xD397,0xD3B7,0xDBB7,0xDB96,0xDB96,0xDBB6,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB95,0xD375,0xCB94,0xC433,0xFEBA,0xFF7B,0xF7BA,0xF799,0xEF98,0xEF98,0xEFB8,0xEF98,0xEF98,0xEF98,0xEF98,0xEF98,0xF7B8,0xF7B8,0xF7B9,0xF7B9,0xFFBA,0xFF5A,0xF6D9,0xFEDA,0xFEBA,0xFE9A,0xFE5A,0xFE5A,0xFE5A,0xFE39,0xFE19,0xFDF9,0xF5D9,0xF5B8,0xF5B9,0xF5B8,0xF5B9,0xEDB9,0xED99,0xE4F8,0xC3B4,0x920F,0x91CF,0xB2B3,0xC335,0xD376,0xDBB7,0xDBB7,0xDB97,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xD395,0xCB94,0xC3B3,0xD515,0xFF5C,0xFF7B,0xF79A,0xF79A,0xF79A,0xF7BA,0xF79A,0xF7BB,0xFF9C,0xFF1C,0x9350,0x8A4F,0x922F,0xAAD2,0xBB34,0xD396,0xD3B6,0xDBB6,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xD375,0xD395,0xCB94,0xC3F3,0xEE38,0xFF7A,0xFFBA,0xF7B9,0xF7B9,0xF7B9,0xF7BA,0xFFBB,0xFF9D,0xB494,0x7A0D,0x8A0F,0x9A50,0xB2D3,0xD396,0xDBB7,0xDBB7,0xDBB7,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xDBB6,0xDBB5,0xD395,0xCBB4,0xC453,0xFEBA,0xFF7A,0xF799,0xF798,0xF7B8,0xF798,0xF798,0xEF98,0xEF98,0xEF78,0xF798,0xF7B9,0xF7B9,0xF7B9,0xF7DA,0xF7DA,0xFFBC,0xC4F5,0x92AF,0x8A0E,0x9A2F,0xC355,0xD396,0xDBB7,0xDBB7,0xDB96,0xDB96,0xDB96,0xDB96,0xDB96,0xD396,0xD3B6,0xD396,0xD395,0xD375,0xCB74,0xB351,0xFF3C,0xFF7B,0xF79A,0xF79A,0xFF9A,0xF77A,0xF77A,0xF77A,0xF77A,0xF77A,0xF79A,0xFF9B,0xFFBC,0xFFBC,0xFF7C,0xFF1C,0xE4B8,0xAA10,0xA9D2,0xB1D4,0xB9F5,0xB216,0xB258,0x9A5A,0x48F8,0x291A,0x215B,0x197D,0x119D,0x099E,0x099E,0x099F,0x019F,0x019F,0x099F,0x099F,0x099F,0x099E,0x099E,0x097E,0x117E,0x195D,0x213D,0x291B,0x40F8,0x7A3B,0x8A7A,0x8A58,0x7A37,0x7277,0x6AB6,0x6B97,0x859C,0x663A,0x46B9,0x1EB6,0x0EB5,0x0F16,0x1737,0x1737,0x2739,0x473B,0x5EFC,0x7E5C,0x5333,0x6A72,0x8233,0x9214,0x9A15,0x9A15,0x81B4,0x6952,0x6193,0x5993,0x5172,0x5172,0x4972,0x4971,0x4951,0x5131,0x50F0,0x6131,0x9235,0x9A76,0xA2B6,0xA2F8,0x6171,0x38AE,0x390F,0x3130,0x3150,0x2930,0x2930,0x2950,0x3150,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x1911,0x1912,0x1113,0x1195,0x19D6,0x11B6,0x19B5,0x1112,0x1931,0x2131,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x192F,0x1930,0x1931,0x1132,0x1133,0x19B6,0x2217,0x19D6,0x1995,0x1133,0x1111,0x1931,0x1930,0x2130,0x212F,0x210F,0x292F,0x292F,0x292F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2930,0x2910,0x2930,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2131,0x1931,0x1111,0x1112,0x1153,0x21D6,0x21F7,0x2A38,0x21F7,0x1974,0x1132,0x1912,0x1911,0x1911,0x1931,0x2111,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x2130,0x210F,0x2130,0x2130,0x1931,0x1111,0x1132,0x1174,0x19B5,0x19F7,0x11D7,0x11F8,0x11D8,0x11F8,0x11F8,0x19F8,0x11B6,0x0954,0x1154,0x1973,0x1952,0x1931,0x1931,0x1930,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130, + 0x1A18,0x11D7,0x1195,0x1154,0x1132,0x1932,0x1931,0x2130,0x2131,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x20EF,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x2930,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2110,0x1910,0x1910,0x1911,0x1112,0x1954,0x21F6,0x21F7,0x21F7,0x19B6,0x1175,0x1153,0x1132,0x1932,0x1931,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x290F,0x210F,0x210F,0x210F,0x210E,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2131,0x2131,0x10F1,0x1112,0x1133,0x1995,0x19D7,0x2218,0x21D7,0x1996,0x1133,0x1113,0x1112,0x1911,0x1910,0x1910,0x2130,0x2130,0x2130,0x2150,0x212F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x28EE,0x30AE,0x406C,0xAAB4,0xB252,0xAA11,0xA9F1,0xA9F0,0x89CD,0xFF7E,0xF79B,0xF7BA,0xF7BA,0xF799,0xF798,0xF798,0xF798,0xF798,0xF7B8,0xF7B9,0xF7D9,0xFFDA,0xFFBB,0xF6DB,0xA3B1,0x822E,0x8A0F,0xAAD3,0xC355,0xD3B6,0xDBB7,0xDBB7,0xDBB6,0xDBB6,0xDBB6,0xDB96,0xDBB6,0xE3D6,0xDBB6,0xDBB6,0xD3B5,0xD394,0xCBD4,0xD4F5,0xFEFA,0xFF9A,0xF7B9,0xF7B9,0xF7D9,0xF7D8,0xF7B8,0xF7D8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7D8,0xF7B8,0xF7B8,0xF7D9,0xF7D9,0xFFDA,0xFFBB,0xFF1C,0x934F,0x824E,0x8A0F,0xA2B1,0xBB54,0xD3B6,0xDBD7,0xDBD7,0xDBD7,0xDBD7,0xDBD7,0xDBB6,0xDBB6,0xDBB6,0xDBB5,0xDBB5,0xDBB5,0xD3B5,0xC3D3,0xF659,0xFF7A,0xFF99,0xF798,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7D8,0xF7B9,0xF7D9,0xF7DA,0xF7DA,0xFFBC,0xFEFC,0x9B70,0x8A6E,0x922F,0xAAD2,0xC354,0xD3B6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBD7,0xDBF8,0xAA73,0xA212,0xA232,0xCB56,0xD3B7,0xDBB6,0xDBD6,0xDBB6,0xDBB6,0xDBB6,0xDBD6,0xDBB6,0xDBB6,0xD3B6,0xDBB6,0xDBB6,0xD396,0xD3B5,0xCC14,0xFE7A,0xFF7B,0xFFBA,0xF7B9,0xF7B9,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B9,0xF7B8,0xF798,0xF798,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B9,0xF7B9,0xF7BA,0xFFBB,0xFF9E,0x71CB,0x81CE,0x89CE,0xB2F3,0xD3B6,0xDBD7,0xDBD7,0xDBB7,0xD3B6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xD395,0xD395,0xD3B4,0xC3F3,0xFE7A,0xFF5B,0xFF9A,0xFF9A,0xFFBA,0xFFBA,0xFFBB,0xFF9C,0xD597,0x820D,0x922F,0x9A50,0xBB14,0xD3B7,0xDBB7,0xDBB7,0xDBB7,0xDBD7,0xDBD7,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDB95,0xD395,0xCBB4,0xCC74,0xFEFB,0xFF7A,0xFFB9,0xFFD9,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7D8,0xFFD9,0xFFB9,0xFFBA,0xFF9A,0xFF7A,0xFF5A,0xFF5A,0xFF3A,0xFF3A,0xFF3A,0xFF3A,0xFF3A,0xFF1A,0xFF1B,0xFF3B,0xFF3B,0xFF3B,0xFF5C,0xFF3C,0xFF3C,0xFE5B,0xBBF4,0x89EE,0x89CF,0xAAB3,0xC335,0xD397,0xDBB7,0xDBD7,0xDBB7,0xDBB7,0xDBB6,0xDBD7,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xD3B5,0xD3B5,0xC3D3,0xDD36,0xFF5C,0xFF7A,0xFF9A,0xF79A,0xF7BA,0xF7DA,0xF7DA,0xFFDB,0xFFBC,0xFF1C,0x9B70,0x8A4F,0x922F,0xAAD2,0xC354,0xD3B6,0xDBD7,0xDBB7,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xD395,0xD395,0xD394,0xC3D2,0xFE99,0xFF9A,0xFF99,0xFFB9,0xF7B9,0xFFD9,0xFFBA,0xFFBB,0xFF9C,0xBCB4,0x7A0D,0x8A0F,0x9250,0xB314,0xD3B7,0xDBB7,0xDBB7,0xDBB7,0xDBD7,0xDBB7,0xDBB6,0xDB96,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xD3B5,0xCBD3,0xCC94,0xFEFA,0xFF7A,0xFFB9,0xF7B8,0xF7B8,0xF798,0xF7B8,0xF7B8,0xF7B8,0xF798,0xF7B8,0xF7B8,0xF7B8,0xF7D9,0xF7B9,0xFFDA,0xFFBC,0xC4F5,0x92AF,0x8A0E,0x9A2F,0xC355,0xD396,0xDBB7,0xDBB7,0xDBB7,0xDBB7,0xDBB6,0xDBB6,0xDBB6,0xD3B6,0xD3B6,0xD3B6,0xD3B6,0xD395,0xCB94,0xB372,0xFF5C,0xFF9B,0xFF9A,0xFF9A,0xFF9A,0xF779,0xFF99,0xFF99,0xFF9A,0xFF9A,0xFF9A,0xF79A,0xFFBB,0xFFBC,0xFF7B,0xFF1C,0xED38,0xAA51,0xA9D1,0xA9B3,0xB1F5,0xB216,0xAA38,0x923A,0x48F8,0x291A,0x215C,0x197D,0x119D,0x099E,0x099E,0x099E,0x099F,0x099F,0x099F,0x019F,0x099F,0x099F,0x099F,0x097E,0x097E,0x115E,0x195D,0x213C,0x311B,0x38D8,0x829C,0x8259,0x7A38,0x7257,0x6A76,0x6B16,0x8D3B,0x75FA,0x56DA,0x2696,0x0E74,0x16F6,0x1716,0x1F37,0x2F39,0x3EFA,0x5EDC,0x7E5C,0x52F2,0x72B3,0x8254,0x9214,0x9A15,0x9A36,0x7994,0x6973,0x5972,0x5993,0x5192,0x51B2,0x4992,0x51B2,0x4972,0x4951,0x5151,0x5910,0x7192,0x8A55,0x9255,0x9AB7,0x8255,0x5130,0x38CF,0x3910,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x2930,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2110,0x2130,0x1931,0x1912,0x1112,0x1195,0x19D7,0x19B6,0x1195,0x1112,0x1931,0x2131,0x2130,0x2130,0x212F,0x210F,0x2130,0x212F,0x1930,0x1930,0x1951,0x1932,0x1133,0x19D6,0x2217,0x19F6,0x1995,0x1133,0x1112,0x1931,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x210E,0x210F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x292F,0x210F,0x290F,0x290F,0x210F,0x290F,0x2910,0x2910,0x2910,0x290F,0x210F,0x290F,0x210F,0x292F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2110,0x1910,0x1931,0x1111,0x1112,0x1174,0x21F7,0x21F7,0x21F7,0x19B6,0x1154,0x1132,0x1932,0x1931,0x1911,0x2131,0x2131,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1152,0x1194,0x1195,0x11B6,0x11D7,0x11F8,0x09D8,0x09D8,0x09D9,0x09D8,0x09D8,0x09D8,0x11D7,0x1196,0x0933,0x1132,0x1152,0x1931,0x1951,0x1931,0x1930,0x2130,0x1930,0x190F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130, + 0x11D7,0x11D7,0x11B6,0x1195,0x1153,0x1132,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x2910,0x2110,0x2110,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x2930,0x292F,0x2930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x1910,0x1931,0x1111,0x1132,0x1133,0x21D6,0x21F7,0x21F7,0x21D7,0x1175,0x1133,0x1132,0x1931,0x1931,0x1930,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x2110,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x20EF,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x210F,0x210F,0x2110,0x2110,0x2130,0x2130,0x2151,0x1931,0x1911,0x1112,0x1133,0x1995,0x21F7,0x2218,0x21F7,0x19B6,0x1154,0x1133,0x1112,0x1111,0x1910,0x1910,0x1910,0x2130,0x2930,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EE,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x210F,0x2910,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x28EF,0x30AE,0x406C,0xAA94,0xB252,0xB211,0xA9F1,0xA9F0,0x89CD,0xFF7E,0xF79B,0xF7BA,0xF7B9,0xF798,0xF798,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xF7D8,0xFFD9,0xFFB9,0xFF7A,0xFEDB,0xABB1,0x8A2E,0x8A0F,0xAAF3,0xC355,0xD3B7,0xDBD7,0xDBD7,0xDBD7,0xDBB7,0xDBB6,0xDBB6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xD3B5,0xD3B5,0xCBF4,0xDD15,0xFED9,0xFF99,0xFFB9,0xFFB8,0xF7B8,0xFFB8,0xFFB8,0xFFB8,0xFFB8,0xFFB8,0xFFB8,0xFFB8,0xFFD8,0xFFB8,0xF7B8,0xFFD8,0xFFD8,0xFFD9,0xFFD9,0xFFDA,0xFF9B,0xFF1B,0x9B4F,0x8A4E,0x8A2F,0xAAB2,0xC354,0xD3D7,0xDBF7,0xDBD7,0xDBD7,0xDBD7,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBB5,0xD3B5,0xD3D5,0xCBF3,0xFE59,0xFF7A,0xFF78,0xFF98,0xFFB8,0xF7B7,0xFFB8,0xF7B7,0xFFB8,0xFFB8,0xFFB8,0xF7B7,0xFFB8,0xFFB8,0xFFB8,0xFFD8,0xFFD8,0xFFD9,0xFFD9,0xFFDA,0xFFBA,0xFF9B,0xFEFB,0x9B70,0x8A4E,0x922F,0xAAD2,0xC354,0xD3D6,0xDBD7,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD7,0xDBD7,0xE3F8,0xAA72,0xA232,0xA232,0xCB76,0xD3B7,0xDBD7,0xDBD7,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBD6,0xDBD6,0xDBD6,0xD3B6,0xD3D5,0xCC13,0xFE7A,0xFF5A,0xFF99,0xFFB9,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xFFB8,0xF7B8,0xF7B8,0xFFB8,0xF7B8,0xFFB8,0xF7B8,0xF7B8,0xF7B8,0xF7B8,0xFFB8,0xFFB8,0xF7B8,0xFFB9,0xFFBA,0xFFBB,0xFF9E,0x71CB,0x81CE,0x89CE,0xAAD3,0xD3D6,0xDBF7,0xDBF7,0xDBD7,0xDBB7,0xDBB6,0xDBB6,0xDBB6,0xDBB6,0xDBD6,0xDBB6,0xDBB6,0xD3B5,0xD3D4,0xCC13,0xFE7A,0xFF5B,0xFF9A,0xFF9A,0xFFBA,0xFFBA,0xFF9B,0xFF9C,0xDDB8,0x820D,0x922F,0x9A50,0xB313,0xD3B7,0xDBF7,0xDBD7,0xDBD7,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBD6,0xDBD6,0xDBD6,0xDBB5,0xCBD4,0xCC94,0xFEFA,0xFF7A,0xFF99,0xFFB8,0xFFB8,0xFFB8,0xF7B7,0xF7B7,0xF7B7,0xF7B7,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB8,0xFFB8,0xFFB8,0xFFB9,0xFFB9,0xFF99,0xFF99,0xFF79,0xFF79,0xFF79,0xFF79,0xFF59,0xFF79,0xFF79,0xFF59,0xFF5A,0xFF5A,0xFF7A,0xFF7A,0xFF7B,0xFF5C,0xFE7B,0xBBF3,0x8A0E,0x89CF,0xAAB3,0xC355,0xD3B7,0xDBD7,0xDBD7,0xDBB7,0xDBD7,0xDBB6,0xDBD7,0xDBB6,0xDBD6,0xDBD6,0xDBB6,0xDBD5,0xD3D5,0xCBF4,0xDD56,0xFF3B,0xFF7A,0xFF99,0xFFB9,0xFFB9,0xFFBA,0xFFBA,0xFFBA,0xFF9B,0xFF1C,0x9B70,0x8A4E,0x922F,0xAAD2,0xC354,0xD3D6,0xDBD7,0xDBD7,0xDBB6,0xDBD7,0xDBD6,0xDBD6,0xDBD6,0xDBD6,0xDBB6,0xDBB6,0xD3B5,0xD3B4,0xC3D2,0xFEB9,0xFF79,0xFF99,0xFFB8,0xFFB8,0xFFB9,0xFFB9,0xFF9A,0xFF9C,0xBCB4,0x7A0D,0x8A0F,0x9250,0xB2F3,0xD3B6,0xDBD7,0xDBB7,0xDBD7,0xDBD7,0xDBD7,0xDBB6,0xDBB6,0xDBD6,0xDBD6,0xDBD6,0xDBD5,0xD3B5,0xCBD3,0xD4B4,0xFEF9,0xFF59,0xF778,0xF797,0xFFB8,0xF797,0xF7B7,0xFFB7,0xF7B7,0xFFB8,0xFFB7,0xFFB8,0xFFB8,0xFFD8,0xFFD9,0xFFDA,0xFFBC,0xCCF5,0x92AE,0x8A0D,0x9A2F,0xC355,0xD396,0xDBD7,0xDBD7,0xDBD7,0xDBD7,0xDBB6,0xDBD6,0xDBB6,0xDBD6,0xDBD6,0xDBB6,0xD3B6,0xD3B5,0xCB94,0xB391,0xFF5C,0xFF9A,0xFF9A,0xFF99,0xFF99,0xFF99,0xFF79,0xFF99,0xFF99,0xFF79,0xFF9A,0xFFBA,0xFFBB,0xFFBB,0xFF7B,0xFF1B,0xF599,0xAAB1,0xA1D1,0xA9D3,0xB1F5,0xB216,0xAA38,0x925A,0x4118,0x291A,0x215B,0x199D,0x119D,0x099E,0x099E,0x099E,0x099F,0x019F,0x099F,0x019F,0x099F,0x019F,0x099F,0x099E,0x097E,0x097E,0x117E,0x113D,0x213D,0x311B,0x519A,0x7A9B,0x7A59,0x7237,0x6A57,0x6275,0x7C18,0x7D7A,0x5E9A,0x36B7,0x1654,0x16D6,0x1716,0x1F17,0x373A,0x46FA,0x6EDC,0x7DDB,0x52D2,0x7293,0x8A54,0x9214,0x9A15,0x9216,0x7194,0x6152,0x5973,0x59B3,0x51B3,0x51B3,0x4992,0x4972,0x4971,0x4151,0x4931,0x5151,0x5930,0x71B3,0x8A55,0x8A55,0x92B6,0x7214,0x38CF,0x3910,0x3110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2110,0x2110,0x1911,0x1111,0x1113,0x1195,0x11B6,0x19D6,0x1995,0x1112,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x1951,0x1132,0x0913,0x19B5,0x2217,0x19D6,0x19B5,0x1133,0x1132,0x1931,0x2130,0x2150,0x2150,0x210F,0x210F,0x212F,0x292F,0x210E,0x210F,0x292F,0x290F,0x292F,0x210F,0x290F,0x292F,0x210F,0x210F,0x292F,0x290F,0x292F,0x290F,0x2910,0x210F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x2930,0x2110,0x2930,0x2930,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x292F,0x2950,0x2950,0x292F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1911,0x1911,0x1111,0x1112,0x1133,0x21D6,0x2218,0x21F7,0x21D6,0x1154,0x10F2,0x1911,0x2131,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1132,0x1153,0x11B5,0x11D7,0x11D8,0x09D8,0x09D8,0x01B8,0x01D9,0x01D9,0x01B9,0x01D9,0x09F9,0x09D8,0x11D8,0x1196,0x0933,0x0932,0x1132,0x1132,0x1931,0x1931,0x1931,0x1910,0x1930,0x1910,0x1910,0x1910,0x1910,0x1930,0x1910, + 0x0996,0x1196,0x1196,0x19B6,0x1174,0x1153,0x1153,0x1132,0x1931,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x2110,0x2110,0x2110,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x212F,0x2930,0x2930,0x2930,0x212F,0x210F,0x190F,0x190F,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1932,0x1953,0x1153,0x19B6,0x21F7,0x21D7,0x21D7,0x1975,0x1113,0x1112,0x1111,0x1931,0x1931,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x2930,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1911,0x1952,0x1932,0x1133,0x1975,0x21F7,0x2217,0x21F7,0x1995,0x1974,0x1133,0x1112,0x1111,0x1911,0x2131,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2110,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x30AE,0x406C,0xAAB4,0xB252,0xB211,0xB211,0xA9F0,0x89CD,0xFF5D,0xFF9A,0xFF99,0xFF98,0xF798,0xF797,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB8,0xFFB8,0xFF99,0xFF59,0xFEBA,0xABD1,0x822E,0x8A0F,0xB2F3,0xC375,0xD3D7,0xDBF7,0xDBF7,0xDBD7,0xDBD7,0xE3F7,0xDBD7,0xDBD6,0xE3F7,0xDBF6,0xDBD6,0xD3D5,0xD3D5,0xCBF3,0xDCF4,0xFEB8,0xFF79,0xFF98,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFF96,0xFF96,0xFF96,0xFF96,0xFF97,0xFF97,0xFFB7,0xFFB7,0xFFB7,0xFFB8,0xFFB8,0xFFB9,0xFF9A,0xFF1B,0x9B70,0x8A6E,0x922F,0xAAD2,0xC375,0xD3F7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBD6,0xDBF6,0xDBD6,0xDBD6,0xDBD6,0xDBD5,0xDBD5,0xCBF3,0xF638,0xFF59,0xFF78,0xFF97,0xFF97,0xFF97,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFF97,0xFF97,0xFFB7,0xFFB7,0xFF97,0xFF97,0xFFB7,0xFFB8,0xFFB8,0xFFB9,0xFF99,0xFF7B,0xFEDB,0xA391,0x8A6E,0x924F,0xAAD2,0xC374,0xD3D6,0xDBF7,0xDBF7,0xDBF7,0xDBD6,0xDBD7,0xDBD6,0xDBD6,0xDBF7,0xDBD6,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xAA93,0xA232,0xA231,0xCB76,0xDBD7,0xDBF7,0xDBF7,0xDBF7,0xDBD6,0xDBD6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xDBD6,0xD3F5,0xCC33,0xFE39,0xFF3A,0xFF79,0xFFB8,0xFFB8,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB8,0xFFB8,0xFFB9,0xFFBB,0xFF9D,0x71CB,0x89EE,0x89CE,0xAAD3,0xD3F7,0xDBF8,0xDBF7,0xDBD7,0xDBD7,0xDBD7,0xDBD6,0xDBD6,0xDBD6,0xDBF6,0xDBD6,0xDBD6,0xDBD5,0xD3F4,0xCC13,0xFE59,0xFF5A,0xFF79,0xFF99,0xFF99,0xFF99,0xFF7A,0xFF7C,0xDDB7,0x820D,0x922F,0x9A50,0xB313,0xD3B6,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBD6,0xDBD6,0xDBF6,0xDBD6,0xDBF6,0xDBF6,0xDBD5,0xD3F4,0xD4B4,0xFED9,0xFF38,0xFF77,0xFF97,0xFFB7,0xFFB7,0xFF96,0xFF96,0xFF96,0xFF96,0xFF96,0xFF96,0xFF96,0xFFB6,0xFFB7,0xFF97,0xFF97,0xFF98,0xFF98,0xFF98,0xFF78,0xFF78,0xFF78,0xFF78,0xFF78,0xFF58,0xFF78,0xFF78,0xFF79,0xFF79,0xFF79,0xFF79,0xFF7A,0xFF7A,0xFF5B,0xFE9A,0xBC13,0x8A0E,0x89EF,0xB2D3,0xCB76,0xD3D7,0xDBF8,0xDBF7,0xDBD7,0xDBD7,0xDBF7,0xDBF7,0xDBF7,0xDBD6,0xDBD6,0xDBF6,0xDBF5,0xD3D5,0xCC14,0xDD15,0xFF1A,0xFF39,0xFF58,0xFF78,0xFF98,0xFF99,0xFF99,0xFFBA,0xFF9B,0xFF1B,0xA390,0x8A4E,0x924F,0xAAD2,0xC354,0xD3D6,0xDBF7,0xDBF7,0xDBD7,0xDBD6,0xDBF7,0xDBD7,0xDBD7,0xDBD7,0xDBD6,0xDBB6,0xDBD5,0xD3D5,0xCC13,0xFE57,0xFF58,0xFF78,0xFF98,0xFF98,0xFF98,0xFF99,0xFF9A,0xFF7C,0xC4D4,0x7A0D,0x8A0F,0x9A50,0xB314,0xD3B7,0xDBD7,0xDBD7,0xDBD7,0xDBF7,0xE3F7,0xDBD6,0xDBD6,0xE3F6,0xE3F6,0xDBD6,0xDBD5,0xD3D5,0xCBF3,0xD493,0xFED9,0xFF58,0xFF97,0xFF97,0xFFB7,0xFFB7,0xFFB6,0xFF96,0xFFB6,0xFFB7,0xFFB7,0xFFB7,0xFFB7,0xFFB8,0xFFB8,0xFFD9,0xFF9B,0xCCF4,0x9ACE,0x8A0D,0x920F,0xC354,0xD3B6,0xDBD7,0xDBF7,0xDBF7,0xDBF7,0xDBD7,0xDBD7,0xDBF7,0xDBF7,0xDBF6,0xDBD6,0xDBD6,0xD3D5,0xD3D5,0xBBB2,0xFF1B,0xFF7A,0xFF79,0xFF99,0xFF78,0xFF78,0xFF98,0xFF98,0xFF99,0xFF99,0xFF79,0xFF9A,0xFFBB,0xFFBB,0xFF9B,0xFF3C,0xFDFA,0xBB32,0xA1F1,0xA9D3,0xB1F5,0xB216,0xAA58,0x925A,0x4118,0x293A,0x215B,0x197C,0x119D,0x099E,0x099E,0x019E,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x099F,0x099E,0x097E,0x097E,0x097E,0x115E,0x195D,0x213C,0x291A,0x49BA,0x729B,0x7278,0x6A57,0x6256,0x6B17,0x74D9,0x6659,0x4EF8,0x2ED6,0x1ED6,0x1F17,0x26F7,0x3719,0x4EFB,0x6EDC,0x7D9A,0x52B2,0x7A94,0x8234,0x9235,0x9A36,0x9216,0x7194,0x6173,0x5972,0x5192,0x51B3,0x51B3,0x4992,0x4992,0x4992,0x4992,0x4151,0x4110,0x48F0,0x5110,0x71B2,0x8275,0x8275,0x8295,0x59B2,0x390F,0x3110,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x2930,0x2930,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2930,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2131,0x1911,0x1112,0x1133,0x11B5,0x19D6,0x19D7,0x1995,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x1930,0x1931,0x1952,0x1152,0x1133,0x19B6,0x2217,0x19D6,0x1195,0x1133,0x1112,0x1931,0x1930,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x210E,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x292F,0x2930,0x2930,0x290F,0x2910,0x2930,0x2930,0x210F,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210E,0x210E,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2151,0x2131,0x1911,0x1911,0x1112,0x1133,0x1154,0x19B6,0x2218,0x2218,0x21F7,0x1974,0x10F2,0x1111,0x1911,0x2130,0x2951,0x2930,0x2130,0x210F,0x210F,0x2130,0x2950,0x212F,0x210F,0x212F,0x2130,0x2130,0x2110,0x2110,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x2131,0x1931,0x1111,0x1154,0x19D6,0x11F7,0x11F8,0x09D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x01D9,0x09D9,0x09F9,0x09D7,0x11D6,0x0975,0x0933,0x0912,0x0912,0x1111,0x1132,0x1132,0x1111,0x1131,0x1931,0x1931,0x1911,0x1111,0x1111, + 0x0955,0x1176,0x19D6,0x19D7,0x19B6,0x19B5,0x1174,0x1152,0x1132,0x1131,0x1951,0x2151,0x2151,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x18EF,0x190F,0x1910,0x1910,0x2151,0x2151,0x2151,0x1931,0x1111,0x1132,0x1153,0x1174,0x19B5,0x2217,0x21F8,0x21D7,0x1175,0x1133,0x1132,0x1111,0x1931,0x1930,0x1930,0x1930,0x212F,0x210F,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1153,0x1994,0x21F7,0x2217,0x21F7,0x19B6,0x1154,0x1113,0x1112,0x1111,0x1911,0x1930,0x2130,0x2130,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x292F,0x210F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x30AE,0x386C,0xAAB4,0xB252,0xB211,0xB1F1,0xA9F0,0x91CD,0xFF3C,0xFF7A,0xFF99,0xFF78,0xFF77,0xFF76,0xFF97,0xFF76,0xFF76,0xFF76,0xFF77,0xFF77,0xFF58,0xFF19,0xFE79,0xB3D1,0x8A0D,0x89EF,0xAAF3,0xC375,0xD3D7,0xDC17,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF6,0xDBF7,0xE3F7,0xDBF6,0xDBF6,0xDBF5,0xD414,0xDCF4,0xFE78,0xFF38,0xFF77,0xFF77,0xFF96,0xFF96,0xFF76,0xFF76,0xFF76,0xFF75,0xFF75,0xFF55,0xFF55,0xFF55,0xFF55,0xFF76,0xFF76,0xFF56,0xFF57,0xFF78,0xFF59,0xFEDA,0xA36F,0x8A6E,0x924F,0xAAF2,0xC375,0xD3F7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDC17,0xDBF7,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF5,0xDBF5,0xCC13,0xF5F7,0xFF18,0xFF57,0xFF57,0xFF76,0xFF76,0xFF96,0xFF76,0xFF76,0xFF76,0xFF76,0xFF76,0xFF76,0xFF56,0xFF56,0xFF56,0xFF56,0xFF56,0xFF77,0xFF58,0xFF58,0xFF3A,0xFE9A,0xABB1,0x8A4E,0x922F,0xAAF2,0xC374,0xD3F6,0xDC17,0xDC17,0xDC17,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF6,0xDBF7,0xDBF7,0xDC17,0xDBF7,0xE418,0xB2B3,0xA231,0xA231,0xCB56,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBD6,0xD3F5,0xCC14,0xF5D8,0xFED9,0xFF18,0xFF57,0xFF77,0xFF76,0xFF76,0xFF76,0xFF76,0xFF76,0xFF76,0xFF76,0xFF76,0xFF76,0xFF76,0xFF76,0xFF56,0xFF76,0xFF56,0xFF56,0xFF76,0xFF77,0xFF98,0xFF9A,0xFF7D,0x71CB,0x89EE,0x89CE,0xAAD2,0xD3F7,0xDC18,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF6,0xDBF6,0xDBF6,0xE3F6,0xDBF6,0xDBF6,0xD3F5,0xCC33,0xFE39,0xFF1A,0xFF39,0xFF38,0xFF58,0xFF58,0xFF39,0xFF3B,0xE5B7,0x820C,0x922F,0x9A50,0xB313,0xD3B6,0xDBF7,0xDBF7,0xE417,0xE417,0xDC17,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF6,0xDBF5,0xD3F4,0xD4B4,0xFEB9,0xFF18,0xFF57,0xFF57,0xFF76,0xFF76,0xFF76,0xFF76,0xFF76,0xFF75,0xFF76,0xFF76,0xFF76,0xFF76,0xFF76,0xFF76,0xFF76,0xFF57,0xFF57,0xFF57,0xFF57,0xFF57,0xFF57,0xFF57,0xFF57,0xFF57,0xFF57,0xFF57,0xFF57,0xFF58,0xFF58,0xFF38,0xFF59,0xFF59,0xFF3A,0xFE59,0xBBF2,0x8A0E,0x89EF,0xB2F3,0xCB76,0xDBD7,0xDC18,0xDC18,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF6,0xDC16,0xDBF6,0xDBF5,0xD414,0xD4D4,0xFEB9,0xFF18,0xFF37,0xFF57,0xFF57,0xFF57,0xFF58,0xFF79,0xFF5A,0xFEDB,0xAB90,0x924E,0x922F,0xAAD2,0xC374,0xD3D6,0xDBF7,0xDC17,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF6,0xDBD6,0xDBD5,0xDBF5,0xD413,0xF637,0xFF17,0xFF37,0xFF57,0xFF57,0xFF57,0xFF58,0xFF59,0xFF5B,0xC4D4,0x79ED,0x8A0F,0x9A50,0xB314,0xD3D7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDBD6,0xDBF6,0xE3F6,0xE416,0xE3F6,0xDBF5,0xDBF5,0xD413,0xD4B3,0xFEB8,0xFF38,0xFF77,0xFF76,0xFF76,0xFF96,0xFF76,0xFF76,0xFF55,0xFF75,0xFF76,0xFF76,0xFF76,0xFF77,0xFF98,0xFF99,0xFF7A,0xCCD4,0x9AAE,0x8A0D,0x920F,0xC354,0xD3B7,0xDBD7,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDC17,0xE417,0xDBF7,0xDC17,0xDBF6,0xDBD6,0xD3D5,0xD3D4,0xC3B2,0xFEFA,0xFF59,0xFF58,0xFF78,0xFF78,0xFF57,0xFF57,0xFF57,0xFF58,0xFF58,0xFF58,0xFF38,0xFF59,0xFF7A,0xFF7A,0xFF1B,0xFE1A,0xC393,0xA1F1,0xA9D3,0xB1F5,0xB216,0xAA58,0x925A,0x4118,0x293A,0x215B,0x199D,0x119D,0x099E,0x099E,0x099F,0x019F,0x099F,0x019F,0x019F,0x019F,0x019F,0x019F,0x099F,0x099F,0x099E,0x097E,0x097E,0x117E,0x197D,0x215C,0x20D8,0x521A,0x72BB,0x6278,0x5A36,0x5276,0x5376,0x5D97,0x4EB7,0x4758,0x2717,0x2717,0x26F8,0x36F9,0x4EDA,0x76BC,0x7519,0x5AB2,0x7A94,0x8A34,0x9215,0x9215,0x81D4,0x6973,0x6173,0x5993,0x5172,0x51B3,0x51B3,0x49B2,0x49B2,0x4992,0x4992,0x4131,0x4130,0x4110,0x48F0,0x5951,0x7214,0x7A54,0x7A95,0x6A54,0x4151,0x3110,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x292F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1931,0x1132,0x0912,0x1195,0x19D6,0x19D7,0x1995,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x1930,0x1930,0x1931,0x1132,0x1133,0x19B6,0x2217,0x19D6,0x1995,0x1133,0x1112,0x1931,0x1930,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2910,0x2930,0x2930,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2131,0x2130,0x2130,0x2130,0x2110,0x210F,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x292F,0x210F,0x212F,0x210F,0x2130,0x2130,0x2951,0x2110,0x1931,0x1111,0x1112,0x1153,0x1154,0x19B6,0x21F8,0x2218,0x21D7,0x1174,0x1112,0x1111,0x1910,0x1910,0x2130,0x2130,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2131,0x1911,0x08F1,0x1174,0x19D7,0x11D7,0x09D8,0x01B8,0x01B9,0x01B9,0x01D9,0x01DA,0x01D9,0x01DA,0x01D9,0x09D9,0x09D9,0x09D8,0x11F8,0x11B7,0x1196,0x0934,0x0933,0x0912,0x0912,0x1133,0x1973,0x1153,0x1152,0x1132,0x1132,0x1132,0x1132, + 0x0955,0x0955,0x11B6,0x19F7,0x2217,0x11B5,0x1195,0x1173,0x1153,0x1132,0x1152,0x1952,0x1972,0x1951,0x1931,0x1930,0x2151,0x2131,0x2131,0x2131,0x2131,0x2130,0x2131,0x2131,0x2131,0x2130,0x2131,0x2110,0x2130,0x2131,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x1910,0x1931,0x1931,0x1951,0x1952,0x1952,0x1931,0x1111,0x1132,0x1153,0x1174,0x1195,0x2217,0x2217,0x19B6,0x1154,0x1113,0x1112,0x1932,0x1931,0x2151,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x2130,0x2930,0x212F,0x2930,0x2930,0x210F,0x290F,0x290F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1931,0x1132,0x1132,0x1994,0x21F6,0x21F7,0x2217,0x19B6,0x1133,0x1112,0x10F2,0x1911,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x212F,0x210F,0x210F,0x292F,0x292F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x2110,0x2110,0x2110,0x212F,0x212F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x2930,0x212F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x28EF,0x30AE,0x384C,0xB2B4,0xBA52,0xB211,0xB1F1,0xA9F0,0x91AC,0xFEDB,0xFF19,0xFF38,0xFF37,0xFF16,0xFF15,0xFF15,0xFF14,0xFEF4,0xFEF4,0xFEF5,0xFEF6,0xFEF7,0xFEB8,0xF618,0xBBD1,0x8A0D,0x920E,0xB2F3,0xCB95,0xDBF7,0xDC18,0xDC18,0xDC17,0xDC17,0xE417,0xDBF7,0xDBF7,0xE417,0xE417,0xDC16,0xDC16,0xDBF5,0xDC14,0xDCB4,0xFE17,0xFED7,0xFF16,0xFF16,0xFF15,0xFF15,0xFF14,0xFEF4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED3,0xFED4,0xFEB3,0xFEB4,0xFEB4,0xFEB5,0xFED5,0xFED6,0xFEB7,0xFE58,0xA34F,0x8A4D,0x924F,0xAAF2,0xC395,0xD3F7,0xDC18,0xDC17,0xDC17,0xE417,0xE417,0xDC17,0xE417,0xE417,0xE416,0xDBF6,0xDBF5,0xDC15,0xD433,0xF5D6,0xFEB7,0xFED6,0xFEF6,0xFF16,0xFF15,0xFF15,0xFF14,0xFEF4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED5,0xFED5,0xFED6,0xFED7,0xFEB8,0xF618,0xB391,0x922E,0x922F,0xAAF2,0xC395,0xD3F7,0xDC37,0xE437,0xE417,0xE417,0xE417,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xE438,0xB2B3,0xA231,0xA231,0xBAF4,0xE438,0xE418,0xDC17,0xDC17,0xDC17,0xDC17,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDBF6,0xD3F5,0xD414,0xED57,0xFE57,0xFE96,0xFED6,0xFED5,0xFEF5,0xFED4,0xFED4,0xFED4,0xFEF4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFEF5,0xFEF6,0xFEF8,0xFF1B,0x79CB,0x89EE,0x89EE,0xAAF3,0xD417,0xDC38,0xDC18,0xDC18,0xDC17,0xDC17,0xDBF7,0xDBF7,0xDBF6,0xE417,0xE416,0xE3F6,0xDC16,0xDC15,0xD433,0xFE18,0xFEB9,0xFED8,0xFEF7,0xFEF7,0xFEF7,0xFEB7,0xFEB9,0xDD15,0x820C,0x920F,0x9A50,0xBB13,0xD3D6,0xDC17,0xE417,0xE417,0xE417,0xE417,0xDBF6,0xDC16,0xDC16,0xDC16,0xDC16,0xDC16,0xDBF5,0xD414,0xDCB4,0xFE78,0xFEB7,0xFED6,0xFEF6,0xFEF5,0xFF15,0xFF15,0xFF15,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFF14,0xFF15,0xFF15,0xFF15,0xFF16,0xFF16,0xFF16,0xFF16,0xFF16,0xFF16,0xFF16,0xFF16,0xFF16,0xFF16,0xFEF6,0xFEF6,0xFEF6,0xFEF6,0xFEF7,0xFEF7,0xFED8,0xEDD7,0xB391,0x89ED,0x89CE,0xB2F3,0xCB96,0xD3F7,0xDC18,0xE438,0xDC17,0xDBF7,0xDBF7,0xDBF7,0xDBF7,0xDC17,0xE416,0xDC16,0xDC16,0xDC15,0xDC34,0xDC93,0xFE58,0xFEB7,0xFED6,0xFEF6,0xFEF6,0xFEF6,0xFEF6,0xFEF7,0xFED8,0xF618,0xAB4F,0x924E,0x9A4F,0xB2D2,0xC375,0xD3D6,0xDC17,0xE437,0xDC17,0xDBF7,0xE417,0xDC17,0xE417,0xE417,0xDBF6,0xDBF6,0xDBF5,0xDC15,0xD413,0xFDF6,0xFE96,0xFEB5,0xFED5,0xFEF5,0xFEF6,0xFEF6,0xFEF8,0xFEFA,0xCCB4,0x81EC,0x8A0F,0x9A50,0xBB34,0xD3D7,0xDC18,0xDC18,0xDBF7,0xDC17,0xE417,0xDBF7,0xDBF6,0xE416,0xE416,0xDC16,0xDC15,0xDC15,0xD414,0xDCB3,0xFE57,0xFED7,0xFEF6,0xFF15,0xFEF5,0xFEF5,0xFEF4,0xFEF4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED5,0xFEF5,0xFEF6,0xFF17,0xFEF9,0xCC93,0x9A8E,0x89ED,0x922F,0xC355,0xD3D7,0xDBF7,0xDC18,0xE418,0xDC17,0xDC17,0xDC17,0xE417,0xE417,0xDC17,0xDC16,0xDC16,0xDBF5,0xD3F4,0xC3D2,0xFEB9,0xFF19,0xFF18,0xFF17,0xFEF6,0xFEF6,0xFEF6,0xFEF6,0xFEF6,0xFED6,0xFED6,0xFED6,0xFED7,0xFEF8,0xFEF9,0xFED9,0xFDF9,0xD3F4,0xA1F0,0xA9D3,0xA9F4,0xAA16,0xAA58,0x925A,0x4118,0x293A,0x215B,0x197D,0x119D,0x099E,0x099E,0x099F,0x019F,0x019F,0x019F,0x019F,0x01BF,0x019F,0x019F,0x019E,0x019F,0x019E,0x099E,0x097E,0x119E,0x117D,0x197D,0x215B,0x2118,0x525B,0x5A99,0x5257,0x4A36,0x42D5,0x3C94,0x4E77,0x3ED7,0x26F6,0x2F37,0x2F18,0x36F9,0x4EBA,0x7EBC,0x74F8,0x62D3,0x8294,0x8A54,0x9235,0x9215,0x81D4,0x6973,0x6173,0x5973,0x5193,0x51B3,0x4992,0x4992,0x4192,0x4192,0x4192,0x4992,0x4151,0x4151,0x4110,0x4110,0x4910,0x61B2,0x6A14,0x61F3,0x4151,0x30F0,0x3110,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x2930,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2110,0x1910,0x1931,0x1932,0x1133,0x19B5,0x19D6,0x19F7,0x1995,0x1112,0x1911,0x2151,0x2130,0x2130,0x2150,0x212F,0x212F,0x190F,0x2130,0x1910,0x1931,0x1132,0x1113,0x19D6,0x2217,0x19D6,0x1995,0x1133,0x1111,0x1931,0x2150,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210E,0x210F,0x292F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x2930,0x2930,0x2110,0x2930,0x2130,0x2110,0x2130,0x2131,0x2131,0x2111,0x1911,0x1911,0x2131,0x2111,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2930,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x292F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x212F,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2131,0x1911,0x1911,0x1132,0x1974,0x1174,0x19B6,0x2218,0x2A38,0x19B6,0x1954,0x1112,0x1111,0x1910,0x2110,0x210F,0x2130,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2930,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2151,0x1931,0x1112,0x1995,0x19D7,0x11F8,0x09F8,0x01B8,0x01B9,0x01D9,0x01D9,0x01FA,0x01FA,0x01FA,0x01D9,0x01B9,0x01B8,0x09B8,0x09D8,0x11B7,0x11B6,0x1196,0x1196,0x1995,0x1195,0x1995,0x1995,0x1994,0x1994,0x1994,0x1973,0x1973,0x1973, + 0x1154,0x1154,0x0954,0x11B6,0x19D6,0x19F6,0x19D6,0x19B5,0x1194,0x0953,0x1153,0x1132,0x1131,0x1111,0x1111,0x1111,0x1911,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1910,0x1911,0x1910,0x1910,0x1911,0x1911,0x2131,0x1932,0x1931,0x1932,0x1911,0x1111,0x08F1,0x1111,0x1132,0x0933,0x0954,0x11B5,0x2217,0x2217,0x19D6,0x1154,0x1113,0x1132,0x1111,0x1931,0x1931,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x212F,0x212F,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x210F,0x2130,0x212F,0x210F,0x2130,0x2930,0x212F,0x2930,0x210F,0x290F,0x2930,0x290F,0x290F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x2110,0x2110,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x1931,0x1931,0x1131,0x1132,0x19B5,0x21F6,0x21F7,0x21F6,0x19B6,0x1154,0x1133,0x1912,0x1911,0x1911,0x2131,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2930,0x2930,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x28EF,0x30AE,0x384C,0xAAB4,0xBA52,0xB211,0xB1F1,0xB1F0,0x99CD,0xFDD8,0xF615,0xEE14,0xEE33,0xEDD2,0xEDD1,0xEDF1,0xEE11,0xF631,0xF631,0xF632,0xF633,0xFE35,0xFE16,0xE535,0xB391,0x8A0D,0x920E,0xB2F2,0xCB95,0xDC17,0xE438,0xE438,0xDC17,0xDC17,0xE437,0xDC17,0xDC17,0xE417,0xE417,0xE416,0xE436,0xDC15,0xDC34,0xDC93,0xED74,0xF5F4,0xF613,0xEDF2,0xEDF1,0xEDF1,0xEDD0,0xEDD0,0xEDD0,0xF5D0,0xF5D0,0xF5F0,0xF5F1,0xFE11,0xF611,0xF612,0xF632,0xFE33,0xFE33,0xFE54,0xFE36,0xED95,0xA32E,0x8A2D,0x924F,0xAAF2,0xC395,0xDC17,0xDC18,0xDC18,0xDC18,0xDC17,0xE417,0xE417,0xE417,0xE437,0xE437,0xDC16,0xDC15,0xDC15,0xDC33,0xED14,0xF5B4,0xF5D3,0xEDF2,0xEDD2,0xEDF1,0xEDF1,0xEDF0,0xF5F1,0xF5F1,0xF5F1,0xF5F1,0xF5F1,0xF5F1,0xF5F1,0xF5F1,0xFE12,0xFE12,0xFE33,0xF634,0xFE34,0xFE16,0xE535,0xB350,0x922E,0x922F,0xB312,0xC395,0xDC17,0xE458,0xE438,0xE437,0xDC17,0xE417,0xDC17,0xDC17,0xDC17,0xDC16,0xDC37,0xDC37,0xDC37,0xE458,0xB2D3,0xA211,0xA231,0xAA92,0xE459,0xE438,0xE438,0xDC37,0xDC37,0xDC17,0xDC16,0xDC17,0xDC37,0xDC37,0xE417,0xDC16,0xDC16,0xDBF5,0xD414,0xECF6,0xF5D6,0xF615,0xF634,0xF634,0xFE33,0xFE32,0xF632,0xF611,0xF631,0xF611,0xF631,0xF611,0xF611,0xF611,0xF631,0xF611,0xF631,0xFE32,0xFE32,0xFE32,0xFE54,0xF654,0xF655,0xFE99,0x79CB,0x89EE,0x89EE,0xB2F3,0xDC38,0xDC58,0xDC38,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xE417,0xE416,0xE416,0xE416,0xDC16,0xDC15,0xD433,0xF576,0xF5F6,0xF636,0xF655,0xF655,0xFE56,0xF616,0xF5F6,0xCC73,0x8A0C,0x922F,0x9A50,0xBB33,0xD3F7,0xDC37,0xE437,0xE417,0xE437,0xE417,0xE417,0xE437,0xDC16,0xDC16,0xDC16,0xDC15,0xDC15,0xDC14,0xDC73,0xED54,0xEDB4,0xEDF3,0xEDD2,0xEDD1,0xEDD1,0xEDD1,0xEDB0,0xEDB0,0xEDB0,0xED8F,0xEDB0,0xE590,0xE5AF,0xE58F,0xE5AF,0xE58F,0xE5B0,0xE5B0,0xE5B0,0xE5B0,0xE5B0,0xE5B0,0xE5B0,0xEDB1,0xEDD1,0xEDF1,0xEDF1,0xF612,0xF632,0xF633,0xFE53,0xFE54,0xFE55,0xFE36,0xE535,0xAB50,0x81CD,0x89CE,0xB2F3,0xCBB6,0xDBF7,0xDC38,0xE438,0xDC17,0xDBF7,0xDC17,0xDBF7,0xE437,0xE437,0xE437,0xE436,0xDC16,0xDC15,0xDC14,0xD452,0xF5B6,0xFE35,0xFE54,0xFE54,0xFE54,0xFE54,0xFE54,0xFE55,0xFE36,0xE535,0xA30F,0x922E,0x9A4F,0xB2F2,0xCB75,0xDBF7,0xE437,0xE437,0xDC17,0xDC17,0xDC17,0xDC17,0xE417,0xDC16,0xDC16,0xDBF6,0xDC15,0xDC15,0xD433,0xF595,0xF5F4,0xFE34,0xFE54,0xFE74,0xFE54,0xFE55,0xFE56,0xFE38,0xC452,0x81ED,0x8A0F,0x9A50,0xBB34,0xD3F7,0xDC18,0xDC18,0xDC17,0xDC17,0xE417,0xE417,0xE417,0xE416,0xE416,0xE436,0xDC15,0xDC15,0xDC34,0xDC73,0xED74,0xF5F4,0xEE13,0xEDF2,0xEDF1,0xF5F1,0xF5F1,0xF5F1,0xF5F1,0xF611,0xF611,0xF612,0xFE33,0xFE53,0xF654,0xF654,0xFE56,0xC432,0x9A6D,0x89ED,0x920F,0xC375,0xDBF7,0xDC18,0xE438,0xE418,0xDC17,0xDC17,0xDC17,0xDC17,0xDC17,0xE437,0xDC36,0xDC16,0xDC15,0xDBF4,0xCC12,0xF5B6,0xEDD4,0xEDD3,0xEDD3,0xEDF3,0xF5F3,0xF613,0xF633,0xFE34,0xFE34,0xF634,0xFE34,0xFE55,0xFE56,0xFE77,0xFE58,0xFDB7,0xDC14,0xA1F0,0xA9F3,0xA9F4,0xAA16,0xAA58,0x8A5A,0x4118,0x291A,0x215B,0x197D,0x119D,0x099E,0x099E,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019E,0x099E,0x099E,0x099E,0x097E,0x117D,0x115C,0x193A,0x1938,0x5B3C,0x52F9,0x3A56,0x2293,0x02CD,0x2532,0x2E54,0x2F16,0x2F37,0x2F17,0x3EF9,0x56BA,0x869D,0x6C56,0x62B3,0x8294,0x8234,0x8A35,0x8A15,0x79B4,0x6973,0x5973,0x5993,0x5193,0x4993,0x4992,0x4992,0x49B2,0x4192,0x4192,0x4172,0x4171,0x4151,0x4130,0x4110,0x410F,0x4110,0x4971,0x4951,0x3910,0x3110,0x3130,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2110,0x1910,0x1931,0x1132,0x1133,0x11B5,0x11D6,0x19D6,0x19B5,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x1910,0x1930,0x1931,0x1132,0x1112,0x19B5,0x2217,0x21D6,0x1995,0x1132,0x1131,0x1951,0x2130,0x2130,0x212F,0x210F,0x212F,0x210F,0x292F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x210F,0x292F,0x210F,0x210F,0x2930,0x2110,0x2110,0x2130,0x2131,0x2131,0x2131,0x1932,0x1932,0x1932,0x1932,0x1912,0x1911,0x2131,0x2131,0x2131,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x210F,0x210F,0x292F,0x2950,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2131,0x1911,0x1911,0x1932,0x1153,0x1974,0x19B6,0x2218,0x2A18,0x21D6,0x1974,0x1112,0x1111,0x1911,0x2110,0x2110,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2151,0x1931,0x1132,0x1995,0x11B7,0x11D8,0x09D8,0x01B8,0x01D9,0x01B9,0x01FA,0x01FA,0x01DA,0x01DA,0x01B9,0x09D9,0x09D9,0x09B8,0x09B7,0x09B7,0x11B6,0x19D7,0x21F7,0x2217,0x21F7,0x2217,0x21F6,0x21F6,0x21D5,0x21D5,0x21B5,0x21B5,0x21D5, + 0x1133,0x1133,0x1133,0x1154,0x1175,0x11B6,0x11B6,0x11D6,0x11B5,0x1195,0x0954,0x0933,0x0912,0x08F1,0x08F1,0x08F1,0x1111,0x1112,0x1112,0x1112,0x1111,0x1131,0x1132,0x1132,0x1131,0x1131,0x1111,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1931,0x10F1,0x1912,0x1112,0x1112,0x1112,0x10F2,0x08F2,0x08F2,0x0913,0x0933,0x0954,0x11B5,0x2237,0x2217,0x21D6,0x1154,0x1113,0x10F2,0x1911,0x1931,0x2151,0x2150,0x1930,0x190F,0x190F,0x212F,0x2130,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x2110,0x210F,0x210F,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x2930,0x290F,0x210F,0x290F,0x292F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2110,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2150,0x2130,0x2130,0x2130,0x2110,0x2110,0x2131,0x1931,0x1111,0x1112,0x1153,0x19D5,0x19D6,0x21F6,0x21D6,0x1995,0x1954,0x1133,0x1112,0x1911,0x1911,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x2930,0x2930,0x2930,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2110,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x28EF,0x30CE,0x384C,0xAAB4,0xBA52,0xB212,0xB1F1,0xB1D0,0xA1CD,0xF535,0xF574,0xEDB3,0xED92,0xE530,0xED2F,0xED4F,0xED4E,0xED4F,0xED6F,0xED70,0xED71,0xED92,0xED53,0xDC93,0xB350,0x89ED,0x920E,0xB2F3,0xCB95,0xDC17,0xE458,0xE438,0xDC37,0xE437,0xE437,0xDC17,0xDC17,0xDC17,0xE437,0xE436,0xE436,0xDC15,0xDC34,0xDC53,0xED13,0xED52,0xED71,0xED50,0xED4F,0xED2F,0xED2E,0xED2E,0xED2E,0xED2E,0xED2F,0xED2E,0xED4F,0xED4F,0xED4F,0xED6F,0xED70,0xF570,0xF591,0xF5B2,0xF593,0xE514,0xA30E,0x8A2D,0x922E,0xB2F2,0xCBB5,0xDC17,0xDC38,0xE438,0xDC18,0xE438,0xE437,0xE417,0xE417,0xE437,0xE437,0xE436,0xE436,0xDC15,0xDC34,0xE4D3,0xED33,0xED52,0xED51,0xED30,0xED2F,0xED2F,0xED2E,0xED2E,0xED2E,0xED2E,0xED0E,0xED2F,0xED2E,0xED2E,0xED2F,0xED2F,0xED2F,0xED50,0xED51,0xED72,0xED53,0xE4D3,0xB32F,0x922E,0x9A4F,0xB312,0xCBB5,0xDC17,0xE458,0xE458,0xE437,0xDC37,0xDC37,0xDC17,0xDC37,0xDC37,0xE437,0xDC37,0xE457,0xE457,0xE458,0xB2D3,0x9A11,0x9A31,0xA272,0xE458,0xE438,0xE458,0xE458,0xDC37,0xDC17,0xDC17,0xDC37,0xDC37,0xE437,0xE437,0xE417,0xE416,0xDBF5,0xDC15,0xE474,0xED14,0xED53,0xED73,0xED72,0xED71,0xED70,0xED4F,0xED4E,0xED4E,0xED2E,0xED2E,0xED2E,0xED2E,0xED4E,0xED2F,0xED2F,0xED2F,0xED4F,0xED4F,0xED50,0xED71,0xED92,0xED73,0xF5D7,0x81CB,0x89EE,0x89EE,0xB2F3,0xDC58,0xE458,0xDC38,0xDC17,0xDC17,0xDC37,0xE437,0xDC17,0xE417,0xE417,0xE437,0xE416,0xE416,0xDC35,0xDC34,0xE4B4,0xED34,0xE533,0xE553,0xED73,0xED73,0xED74,0xED55,0xCC32,0x8A0D,0x9A2F,0x9A70,0xBB34,0xDC17,0xE438,0xE438,0xE437,0xE437,0xE437,0xDC37,0xDC36,0xE436,0xE436,0xDC16,0xDC36,0xDC35,0xDC34,0xDC53,0xECF3,0xED53,0xED72,0xED51,0xED30,0xED30,0xED2F,0xED2F,0xED2F,0xED2E,0xE4EE,0xED0E,0xED0E,0xE50E,0xE50E,0xE50E,0xE50E,0xE50E,0xE50E,0xE50E,0xE50E,0xE50E,0xE50E,0xE50E,0xE50E,0xE50E,0xE50E,0xE50E,0xE52E,0xE52E,0xED4F,0xED70,0xED91,0xED92,0xED73,0xDCB3,0xAB0E,0x81AC,0x89CE,0xB313,0xCBB6,0xDC18,0xE438,0xE438,0xDC18,0xDC17,0xDC17,0xE437,0xDC17,0xE437,0xE437,0xDC36,0xE436,0xDC15,0xDC14,0xDC53,0xE4F3,0xED53,0xED72,0xED71,0xED71,0xED71,0xED72,0xE572,0xED74,0xE4F4,0xAAEF,0x922E,0x9A4F,0xB2F2,0xCB95,0xDC17,0xE438,0xE458,0xE437,0xDC17,0xDC37,0xE437,0xE437,0xE436,0xDC16,0xDC16,0xDC15,0xDC35,0xDC33,0xED14,0xED53,0xED72,0xED72,0xED92,0xED72,0xED93,0xED74,0xED34,0xB390,0x89ED,0x920F,0x9A50,0xBB54,0xDC17,0xDC38,0xE438,0xDC17,0xDC17,0xE437,0xE437,0xE437,0xE437,0xE436,0xE436,0xDC35,0xDC35,0xDC34,0xDC73,0xED13,0xED53,0xED71,0xE550,0xED2F,0xED2F,0xED2F,0xED2F,0xED2F,0xED4F,0xED4F,0xED4F,0xED70,0xED91,0xED91,0xED92,0xED94,0xC3F1,0x9A4D,0x89CD,0x9A2F,0xC375,0xDBF7,0xDC18,0xE438,0xE438,0xE438,0xE437,0xDC17,0xDC17,0xDC17,0xE437,0xE437,0xDC36,0xDC15,0xDC14,0xD3F2,0xED34,0xED53,0xED52,0xED31,0xE531,0xED30,0xED30,0xED50,0xED51,0xED71,0xED71,0xED92,0xF5B3,0xF5B4,0xFDD5,0xFDB5,0xFD76,0xE454,0xA1EF,0xA9D2,0xA9F4,0xAA16,0xA258,0x8A5A,0x4118,0x291A,0x215B,0x197D,0x119D,0x099E,0x099E,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019E,0x099E,0x099E,0x099E,0x097E,0x117D,0x117C,0x1179,0x2A79,0x5C3D,0x64DD,0x657B,0x0BAF,0x040C,0x0D4F,0x2ED5,0x2F57,0x3738,0x3ED8,0x569A,0x865C,0x6C16,0x6AD4,0x8294,0x8234,0x8A15,0x81F5,0x7194,0x6994,0x5993,0x5193,0x5193,0x4992,0x4992,0x4992,0x4992,0x4192,0x3971,0x4192,0x4171,0x4192,0x4171,0x3930,0x38EF,0x390F,0x3910,0x38F0,0x3110,0x3130,0x3130,0x3131,0x2930,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x2130,0x2930,0x2130,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2131,0x1931,0x1132,0x1133,0x19B5,0x19D7,0x19D7,0x1995,0x1112,0x1911,0x2131,0x2130,0x2130,0x212F,0x2130,0x210F,0x212F,0x2130,0x1910,0x1911,0x1112,0x1133,0x19B5,0x21F7,0x19D6,0x1994,0x1132,0x1111,0x1930,0x1930,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x2110,0x2130,0x1910,0x1931,0x1932,0x1932,0x1932,0x1953,0x1953,0x1153,0x1133,0x1112,0x1912,0x1911,0x1911,0x1910,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x210F,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2930,0x2951,0x1911,0x1911,0x1112,0x1133,0x1174,0x19D6,0x21F7,0x21F7,0x21F7,0x1974,0x1112,0x10F1,0x18F1,0x1910,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2930,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2930,0x2930,0x212F,0x2130,0x2130,0x2131,0x1931,0x1112,0x1995,0x11B7,0x11D8,0x09B8,0x01B8,0x01B9,0x01B9,0x01DA,0x01FA,0x01DA,0x01DA,0x01D9,0x01B9,0x0198,0x09B8,0x09B7,0x11B7,0x11B6,0x11B6,0x19D6,0x19F6,0x21F6,0x21F6,0x21F6,0x21B5,0x21B5,0x21D5,0x21B5,0x21D5,0x21B5, + 0x1952,0x1132,0x1133,0x1133,0x1154,0x1175,0x11B6,0x19F7,0x11D6,0x11D6,0x1195,0x0974,0x0954,0x0933,0x0913,0x1133,0x1133,0x1133,0x1132,0x1112,0x1132,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1132,0x1132,0x1112,0x1112,0x1112,0x1132,0x1132,0x1112,0x10F2,0x10F2,0x1112,0x08F2,0x08F2,0x0912,0x0913,0x1154,0x1175,0x19F7,0x2A58,0x2217,0x21F6,0x1154,0x1133,0x1112,0x1911,0x1931,0x2131,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x2950,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x210F,0x292F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x1911,0x1911,0x1111,0x1112,0x1133,0x19B5,0x21F6,0x21F6,0x21F6,0x1995,0x1153,0x1112,0x1112,0x1911,0x1910,0x2130,0x2130,0x2110,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2950,0x212F,0x2930,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x28EF,0x28CE,0x384C,0xAAB4,0xBA53,0xB212,0xB1F1,0xB1D0,0xA1AD,0xFD36,0xFD74,0xF593,0xF572,0xF530,0xED2F,0xED0E,0xED2E,0xF52E,0xF52F,0xF54F,0xF530,0xF551,0xED33,0xDC92,0xBB4F,0x920D,0x920E,0xB2F2,0xCBB5,0xDC37,0xE458,0xE458,0xE437,0xE437,0xE437,0xE437,0xDC37,0xDC37,0xDC37,0xE436,0xE436,0xE435,0xDC34,0xE453,0xF514,0xF532,0xED51,0xED30,0xED2F,0xED0F,0xF52F,0xF50E,0xF52F,0xF52F,0xF52F,0xF50E,0xF50E,0xED0E,0xED0E,0xED2F,0xED2F,0xF52F,0xED50,0xF551,0xF553,0xE4D3,0xAB0E,0x922D,0x922F,0xB312,0xCBB5,0xDC17,0xE438,0xE458,0xE438,0xE438,0xE437,0xE417,0xE437,0xE437,0xE437,0xE457,0xE436,0xE435,0xDC33,0xECB3,0xF513,0xED32,0xED31,0xED10,0xED0F,0xED0F,0xF50E,0xED0E,0xED0E,0xF50E,0xF50E,0xF50E,0xF50E,0xF50E,0xF50E,0xF50F,0xF52F,0xF530,0xF530,0xF531,0xF533,0xE4B3,0xBB4F,0x922E,0x9A2F,0xB313,0xCB95,0xDC17,0xDC58,0xE458,0xDC37,0xDC37,0xE437,0xE437,0xE437,0xE437,0xDC37,0xE457,0xDC37,0xDC57,0xE478,0xBAF3,0x9A10,0x9A31,0xA251,0xD3F7,0xE458,0xE438,0xE437,0xDC37,0xDC37,0xDC37,0xDC37,0xE437,0xDC37,0xE437,0xDC36,0xE437,0xDC16,0xDC15,0xDC34,0xECB4,0xECF4,0xF533,0xF532,0xF531,0xF530,0xF50F,0xF52F,0xF52F,0xF52F,0xF50E,0xF50E,0xED0E,0xED0E,0xF50F,0xED0F,0xED0F,0xF52F,0xF52F,0xF530,0xF530,0xF551,0xED52,0xFDD7,0x81CB,0x89EE,0x91EF,0xB2F3,0xDC58,0xDC58,0xDC38,0xDC37,0xDC37,0xE437,0xE437,0xE437,0xE417,0xE437,0xE437,0xE437,0xE436,0xE435,0xDC34,0xECD5,0xED14,0xED33,0xED33,0xED53,0xED53,0xED54,0xED35,0xCC32,0x920D,0x9A4F,0xA291,0xBB54,0xDC17,0xE458,0xE458,0xDC17,0xE417,0xE437,0xDC37,0xE437,0xE456,0xE456,0xE436,0xE436,0xDC35,0xDC34,0xE453,0xF514,0xF553,0xED52,0xED31,0xF530,0xF530,0xF52F,0xF50F,0xF50F,0xF50F,0xF50E,0xF50E,0xF50E,0xF50E,0xF50E,0xF50E,0xF50E,0xF52E,0xF52E,0xF52E,0xF52E,0xF52E,0xF50E,0xF50E,0xED0E,0xF52E,0xED2E,0xED2E,0xED2E,0xED2E,0xED2E,0xED2F,0xED30,0xED51,0xED32,0xE4B2,0xAB0E,0x89CC,0x91EE,0xB313,0xCBD6,0xDC17,0xE458,0xE438,0xDC38,0xDC38,0xE458,0xE437,0xE437,0xDC37,0xDC36,0xE436,0xE436,0xE435,0xDC34,0xDC33,0xECF4,0xED33,0xED52,0xED31,0xED51,0xED51,0xED52,0xED52,0xED53,0xE4D4,0xAAEF,0x9A2E,0xA24F,0xB313,0xCB95,0xDC17,0xE458,0xE457,0xE437,0xDC37,0xDC37,0xE437,0xE457,0xE457,0xE436,0xE436,0xE435,0xE435,0xDC33,0xECF4,0xED13,0xED32,0xED52,0xED52,0xED52,0xED52,0xED53,0xED15,0xB350,0x89ED,0x920F,0x9A50,0xBB54,0xDC17,0xE438,0xDC38,0xDC37,0xDC37,0xE437,0xE437,0xE437,0xE437,0xDC36,0xE436,0xE436,0xE435,0xDC34,0xDC73,0xED13,0xED33,0xED51,0xED30,0xF530,0xF50F,0xF50F,0xF50F,0xF52F,0xF52F,0xED0F,0xED0F,0xED2F,0xED50,0xED51,0xED52,0xF574,0xCBF1,0x9A6D,0x89ED,0x9A2F,0xCB95,0xDC17,0xE438,0xE438,0xE438,0xDC37,0xDC17,0xDC17,0xDC17,0xDC37,0xE437,0xE457,0xE436,0xDC35,0xDC35,0xD412,0xF534,0xF573,0xF552,0xF552,0xF531,0xF531,0xF531,0xF551,0xF551,0xF551,0xED51,0xED51,0xF552,0xF572,0xF593,0xFD74,0xFD55,0xEC75,0xA1EF,0xA1D2,0xAA14,0xAA36,0xA258,0x8A5A,0x4118,0x291A,0x215C,0x199D,0x119D,0x099E,0x019E,0x019E,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019E,0x019E,0x099E,0x099E,0x097E,0x097D,0x097C,0x099A,0x09F8,0x43FC,0x761F,0x6E9D,0x4E58,0x1530,0x054F,0x26B4,0x2F36,0x3738,0x3ED8,0x5E9A,0x8E3C,0x5B74,0x72D4,0x8295,0x8235,0x8A15,0x81F5,0x6973,0x6194,0x5994,0x5193,0x5193,0x49B3,0x4993,0x4992,0x4192,0x4172,0x3971,0x4172,0x3951,0x4191,0x3971,0x3950,0x3930,0x3930,0x3930,0x3930,0x3930,0x3130,0x3130,0x2930,0x2910,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x292F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x210F,0x290F,0x210F,0x212F,0x212F,0x210F,0x292F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x1910,0x1931,0x1932,0x1133,0x19B5,0x19D6,0x19D7,0x1995,0x1112,0x1911,0x2131,0x2130,0x2130,0x212F,0x212F,0x2130,0x212F,0x2130,0x1930,0x1931,0x1112,0x1112,0x19B5,0x21F6,0x21D6,0x19B5,0x1132,0x1111,0x1951,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x210F,0x290F,0x290F,0x2110,0x2110,0x2110,0x1911,0x1911,0x1932,0x1132,0x1133,0x1153,0x1174,0x19B5,0x19B5,0x1995,0x1954,0x1133,0x1112,0x1911,0x1911,0x2111,0x2131,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x2110,0x2130,0x2131,0x2111,0x18F1,0x1112,0x1133,0x1154,0x19B6,0x21F7,0x21F7,0x21D6,0x1154,0x1133,0x1112,0x18F1,0x2110,0x2110,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x2950,0x2950,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x212F,0x212F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2131,0x1911,0x1132,0x1995,0x19D7,0x11D8,0x09D8,0x01B8,0x01B9,0x01B9,0x01DA,0x01DA,0x01DA,0x01FA,0x01D9,0x01B8,0x09B8,0x09B7,0x11D7,0x11D7,0x19D6,0x19B6,0x19B5,0x1194,0x1174,0x1974,0x1153,0x1953,0x1973,0x1953,0x1953,0x1953,0x1953, + 0x1952,0x1932,0x1932,0x1132,0x1132,0x1153,0x19B5,0x19D6,0x2217,0x19F7,0x19D7,0x19D7,0x19D6,0x19B5,0x19B5,0x1995,0x1994,0x1974,0x1974,0x1974,0x1974,0x1174,0x1974,0x1974,0x1974,0x1974,0x1974,0x1153,0x1974,0x1953,0x1954,0x1954,0x1953,0x1153,0x1133,0x1133,0x1154,0x1974,0x1174,0x1995,0x19B5,0x19D6,0x2237,0x2A58,0x2237,0x21F7,0x1995,0x1154,0x1132,0x1112,0x1911,0x2131,0x2130,0x2110,0x2130,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x292F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1911,0x1912,0x1132,0x1133,0x19B5,0x2217,0x2217,0x21F6,0x1995,0x1974,0x1132,0x10F1,0x1911,0x1911,0x2110,0x2130,0x2130,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x28EF,0x28AE,0x384C,0xAAB5,0xBA53,0xB211,0xB1F1,0xB1F0,0xA1CD,0xFD36,0xFD74,0xFDB3,0xF571,0xF550,0xF52F,0xF52F,0xF52F,0xF54F,0xF54F,0xF54F,0xF550,0xF531,0xF532,0xE492,0xBB4F,0x91ED,0x9A2F,0xB313,0xCBB6,0xDC37,0xE478,0xE478,0xE437,0xE457,0xE457,0xDC37,0xE437,0xDC37,0xE437,0xE436,0xE456,0xE435,0xE434,0xE473,0xF513,0xF553,0xF551,0xF530,0xF530,0xF52F,0xF52F,0xFD4F,0xF52F,0xFD4F,0xF52F,0xF52F,0xF50E,0xF52F,0xF50F,0xF50F,0xF52F,0xF530,0xF530,0xF530,0xF552,0xE4B2,0xB30E,0x922D,0x9A4F,0xB313,0xCBB5,0xDC38,0xE458,0xE458,0xE438,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE456,0xE456,0xE435,0xE434,0xECB3,0xF513,0xED11,0xF531,0xF510,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52E,0xF52F,0xFD2F,0xF52F,0xF530,0xF530,0xF531,0xF533,0xE4B2,0xBB4F,0x9A4D,0x9A2F,0xBB13,0xCBB5,0xDC37,0xDC58,0xE457,0xDC37,0xE437,0xE437,0xE437,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC57,0xE457,0xC354,0x9A10,0x9A30,0x9A31,0xD3D6,0xE458,0xE458,0xE458,0xE437,0xDC37,0xDC37,0xDC37,0xE437,0xE437,0xDC37,0xDC36,0xE437,0xE436,0xE416,0xDC15,0xE434,0xEC94,0xF4D3,0xF512,0xFD32,0xFD31,0xFD31,0xFD30,0xFD30,0xFD30,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF530,0xF550,0xF530,0xF550,0xF551,0xF572,0xF573,0xFDD7,0x81CB,0x89EE,0x91EE,0xB2F3,0xDC58,0xDC58,0xDC38,0xDC37,0xDC37,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE457,0xE436,0xE435,0xE454,0xF515,0xF534,0xF554,0xF553,0xF553,0xF553,0xF554,0xF535,0xCC12,0x920D,0x9A2F,0xA291,0xC374,0xDC38,0xE478,0xE458,0xDC37,0xE437,0xE437,0xE437,0xE437,0xE457,0xE436,0xE436,0xE436,0xE435,0xDC34,0xE473,0xF514,0xF553,0xF552,0xF531,0xF530,0xF530,0xF530,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF54F,0xF54F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52F,0xF52E,0xF52E,0xF52F,0xF52F,0xF54F,0xF52F,0xED10,0xF531,0xE4D2,0xB34F,0x89CC,0x91EE,0xBB13,0xD3D6,0xDC17,0xDC58,0xE458,0xDC37,0xE458,0xE458,0xE457,0xDC37,0xDC37,0xDC36,0xE456,0xE456,0xE436,0xE435,0xE453,0xECD4,0xF534,0xF553,0xF572,0xF572,0xF572,0xF572,0xF553,0xF554,0xE4D4,0xB30F,0x9A4E,0xA250,0xBB13,0xCB95,0xDC17,0xE458,0xE457,0xE437,0xDC16,0xDC37,0xE437,0xE457,0xE457,0xE436,0xE436,0xDC35,0xE435,0xE454,0xECF4,0xF513,0xF533,0xF552,0xF552,0xF552,0xF553,0xF554,0xF535,0xBB50,0x89ED,0x920F,0xA271,0xC375,0xDC37,0xE438,0xE458,0xE437,0xDC37,0xE437,0xE457,0xE457,0xE437,0xE457,0xE436,0xE436,0xE455,0xE454,0xE473,0xECF3,0xF553,0xF551,0xF551,0xF530,0xF530,0xF530,0xF52F,0xF52F,0xF54F,0xF52F,0xF52F,0xF54F,0xF550,0xED51,0xED51,0xF574,0xCBF1,0x9A6D,0x89ED,0x9A2F,0xC395,0xDBF7,0xE458,0xE438,0xDC38,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xE456,0xE435,0xDC34,0xDC12,0xFD55,0xFD73,0xFD73,0xFD72,0xFD72,0xF552,0xF551,0xF551,0xF551,0xF551,0xF551,0xF571,0xF572,0xF572,0xF573,0xFD74,0xFD55,0xF4D6,0xA1EF,0xA9D2,0xAA14,0xAA36,0xA278,0x8A5A,0x4118,0x291A,0x215C,0x197D,0x119D,0x099E,0x099E,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019E,0x019E,0x099E,0x099D,0x019D,0x01BB,0x0219,0x2BBB,0x665F,0x5EBD,0x4ED9,0x2E74,0x26B3,0x1EB3,0x2F56,0x3737,0x46D8,0x5E7A,0x8E1C,0x5B33,0x72D4,0x8295,0x8235,0x8215,0x79D4,0x6993,0x6194,0x5993,0x5193,0x5193,0x51B3,0x49B3,0x4992,0x4192,0x4172,0x3972,0x3951,0x3951,0x4171,0x4171,0x3971,0x3971,0x3971,0x3950,0x3951,0x3930,0x3130,0x3130,0x2930,0x2950,0x2950,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x2930,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x2130,0x1910,0x1911,0x1932,0x1133,0x19B5,0x19D6,0x19D7,0x1995,0x08F1,0x1911,0x2131,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x1931,0x1932,0x1112,0x21D6,0x2A17,0x21D6,0x1994,0x1132,0x1111,0x1931,0x2130,0x2130,0x2130,0x212F,0x292F,0x292F,0x292F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x292F,0x290F,0x210F,0x2110,0x2110,0x2111,0x1932,0x1932,0x1974,0x1174,0x1195,0x19B6,0x19D6,0x19D6,0x19F6,0x21F6,0x21F6,0x19B5,0x2194,0x1933,0x1932,0x1911,0x2131,0x2131,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x212F,0x210F,0x290F,0x292F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2131,0x2131,0x18F1,0x1112,0x1133,0x1154,0x19B6,0x21F7,0x21F7,0x19B6,0x1974,0x1933,0x1112,0x1911,0x1911,0x2130,0x2110,0x2930,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2151,0x1911,0x10F1,0x1174,0x19D6,0x11D7,0x09D8,0x01B8,0x01D9,0x0198,0x01B9,0x01BA,0x01BA,0x01DA,0x09D9,0x09D9,0x11D8,0x11F8,0x19F7,0x11B5,0x1154,0x1133,0x0912,0x1112,0x1112,0x1132,0x1132,0x1952,0x1952,0x1952,0x1932,0x1112,0x1932, + 0x1931,0x1931,0x1931,0x1911,0x1932,0x1953,0x1133,0x1194,0x19D5,0x19D6,0x19F7,0x19F7,0x21F7,0x2217,0x2A37,0x2A17,0x2A17,0x2A17,0x2A17,0x2A17,0x2A37,0x2A16,0x2A16,0x2A17,0x2A17,0x2A16,0x2A16,0x2A16,0x3237,0x2A16,0x2A37,0x2A17,0x29F6,0x21F6,0x29F7,0x2A37,0x3257,0x2A37,0x3258,0x3237,0x2A57,0x2A37,0x2A37,0x21F6,0x21D6,0x1994,0x1133,0x1112,0x1111,0x1911,0x1911,0x2110,0x2130,0x210F,0x2110,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x292F,0x212F,0x210F,0x2930,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x292F,0x210F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1931,0x1911,0x1932,0x1932,0x1133,0x1995,0x2217,0x2217,0x21F7,0x1995,0x1954,0x1953,0x1111,0x1911,0x18F0,0x1910,0x2130,0x2930,0x2930,0x292F,0x292F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x210F,0x210F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x28EF,0x30CE,0x384C,0xAAB4,0xB252,0xB212,0xB1F1,0xB1F0,0xA1AD,0xFD36,0xFD74,0xFD92,0xF571,0xF550,0xF52F,0xF52F,0xFD4F,0xFD4F,0xFD6F,0xFD70,0xFD50,0xFD51,0xF532,0xE4B2,0xC370,0x920D,0x920E,0xB2F2,0xCB95,0xDC17,0xE458,0xE478,0xE457,0xDC37,0xE457,0xDC37,0xDC37,0xDC37,0xDC36,0xE436,0xE456,0xE435,0xE434,0xE473,0xF514,0xFD73,0xF551,0xF530,0xFD50,0xF550,0xFD50,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD2F,0xFD4F,0xFD2F,0xFD4F,0xF52F,0xFD50,0xF550,0xFD50,0xFD51,0xFD53,0xECD3,0xB32F,0x922D,0x9A4F,0xB333,0xCBB6,0xDC37,0xE458,0xE458,0xE438,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE436,0xE456,0xE435,0xE454,0xECD3,0xF533,0xF532,0xF531,0xF530,0xFD30,0xFD2F,0xFD2F,0xF52F,0xFD2F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD50,0xFD50,0xFD51,0xFD53,0xE4B2,0xBB6F,0x9A4D,0x9A4F,0xBB13,0xCBB5,0xDC37,0xDC58,0xE457,0xE457,0xE457,0xE457,0xDC37,0xE457,0xE457,0xDC36,0xE457,0xE457,0xE477,0xE477,0xD3F6,0x9A30,0x9A30,0x9A30,0xC375,0xE458,0xE458,0xE458,0xE458,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE436,0xE437,0xE437,0xE436,0xDC15,0xE414,0xE454,0xF4B4,0xF4D3,0xFD13,0xFD32,0xFD31,0xFD31,0xFD51,0xFD51,0xFD50,0xFD30,0xFD30,0xFD50,0xFD30,0xFD50,0xFD50,0xFD50,0xFD50,0xF551,0xF551,0xF552,0xF593,0xFDB6,0x81CB,0x89EE,0x91EE,0xB2F3,0xDC58,0xDC58,0xE458,0xDC38,0xE438,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE436,0xE436,0xE435,0xE454,0xF516,0xFD55,0xF554,0xF554,0xF553,0xF574,0xF554,0xF555,0xD412,0x920D,0x920F,0x9A70,0xBB34,0xDC37,0xE458,0xE458,0xE457,0xE457,0xE437,0xE437,0xE437,0xE456,0xE436,0xE436,0xE436,0xE435,0xE454,0xE473,0xF534,0xF553,0xF552,0xF531,0xF530,0xF530,0xFD50,0xFD30,0xFD50,0xFD2F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xF54F,0xFD4F,0xFD4F,0xF54F,0xF52E,0xF54F,0xFD4F,0xF54F,0xF54F,0xF54F,0xF550,0xF550,0xF552,0xED13,0xBB6F,0x89EC,0x920E,0xAAD2,0xCBB6,0xD417,0xE458,0xE458,0xDC38,0xDC37,0xE457,0xDC57,0xDC37,0xDC37,0xDC36,0xE456,0xE456,0xE456,0xE435,0xE454,0xECD4,0xF534,0xF553,0xFD73,0xFD93,0xF573,0xF573,0xF573,0xF575,0xECF5,0xB30F,0x9A4E,0xA250,0xBB13,0xCB95,0xDC17,0xE458,0xE457,0xE437,0xE437,0xE437,0xE437,0xE457,0xE436,0xE436,0xDC36,0xDC35,0xE455,0xE454,0xF4F4,0xF514,0xF533,0xFD53,0xFD73,0xFD73,0xFD74,0xFD75,0xF536,0xB330,0x89ED,0x920F,0xA271,0xCB95,0xDC38,0xE458,0xE458,0xE457,0xE437,0xE437,0xE457,0xE437,0xE457,0xE457,0xE456,0xE456,0xE455,0xE454,0xE493,0xF4F4,0xF553,0xF551,0xF551,0xFD50,0xFD50,0xFD50,0xFD50,0xFD50,0xFD50,0xFD50,0xFD50,0xF550,0xF550,0xF551,0xF552,0xFD74,0xCBF1,0x9A6E,0x920D,0x9A2F,0xCB95,0xDC17,0xE458,0xDC38,0xDC38,0xDC37,0xE437,0xE437,0xE437,0xDC37,0xE457,0xE457,0xE436,0xE435,0xDC34,0xDC32,0xFD54,0xFD73,0xFD73,0xFD72,0xFD72,0xFD72,0xFD72,0xF571,0xF571,0xF571,0xF572,0xFD72,0xFD72,0xFD72,0xFD73,0xFD73,0xFD75,0xFD37,0xA1EF,0xA1D2,0xAA14,0xAA36,0xA278,0x8A5A,0x4118,0x291A,0x215C,0x199D,0x117D,0x099E,0x019E,0x019E,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019E,0x019E,0x019E,0x019D,0x019D,0x01BB,0x023A,0x23DC,0x5E7F,0x4EBD,0x2E77,0x1E94,0x1ED3,0x16D3,0x2735,0x2F37,0x46D8,0x667A,0x859A,0x5B13,0x7AF5,0x8275,0x8235,0x8215,0x71B4,0x6173,0x5973,0x5993,0x5173,0x5193,0x51B3,0x49B3,0x4972,0x4192,0x4172,0x4192,0x4172,0x3971,0x3971,0x3951,0x3971,0x3950,0x3950,0x3950,0x3950,0x3150,0x3151,0x3130,0x2930,0x2930,0x2930,0x2930,0x2950,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2130,0x1931,0x1932,0x1132,0x19B5,0x19D6,0x19D7,0x1995,0x1112,0x1911,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x1930,0x1931,0x1132,0x1112,0x21B5,0x21F7,0x21D6,0x1995,0x1132,0x1931,0x1931,0x1930,0x2130,0x2130,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x2110,0x2110,0x2131,0x1952,0x1953,0x1174,0x19B6,0x19F7,0x19F7,0x19D7,0x11B6,0x19D6,0x19F7,0x19F7,0x21F7,0x21D6,0x21B5,0x1953,0x1932,0x1931,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x212F,0x2130,0x212F,0x212F,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x2131,0x18F1,0x1112,0x1133,0x1153,0x19B6,0x21F7,0x21F7,0x19D6,0x1954,0x1112,0x1912,0x1911,0x1911,0x2110,0x2130,0x2110,0x2110,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1911,0x1111,0x1153,0x19B6,0x11B6,0x11D8,0x09D9,0x01D9,0x01B9,0x01B9,0x01B9,0x01B9,0x01D9,0x09F9,0x11F9,0x11D8,0x11D7,0x1195,0x1154,0x1132,0x1132,0x1132,0x1932,0x1112,0x1931,0x1932,0x1932,0x1931,0x1931,0x1911,0x1911,0x1931, + 0x2130,0x2130,0x2110,0x1911,0x1931,0x1911,0x1932,0x1133,0x1953,0x1994,0x21B6,0x21D6,0x21F6,0x21F6,0x21F6,0x29F6,0x29F6,0x29F6,0x29F6,0x29F6,0x21F6,0x2A16,0x21D6,0x21F6,0x29F6,0x21F6,0x21F6,0x21F6,0x21F6,0x21F6,0x2A17,0x2A17,0x21F6,0x2A17,0x3238,0x2A17,0x2A37,0x3257,0x2A16,0x29F6,0x21D5,0x1994,0x21B5,0x21B4,0x1994,0x1132,0x10F1,0x1911,0x1911,0x2131,0x2130,0x2130,0x2110,0x210F,0x210F,0x290F,0x292F,0x2930,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x2910,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210E,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2131,0x1931,0x1932,0x1932,0x1133,0x1994,0x21F6,0x21F7,0x21F7,0x19B5,0x1133,0x1112,0x1932,0x1952,0x1911,0x1910,0x2110,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x28CE,0x384C,0xAAB4,0xB252,0xB1F1,0xB1F1,0xB1D0,0xA9CD,0xFD35,0xFD73,0xFDB2,0xFD91,0xF530,0xFD4F,0xFD4F,0xFD4F,0xFD6F,0xFD8F,0xFD70,0xFD70,0xFD51,0xFD52,0xECF3,0xC3B0,0x920D,0x920E,0xB2F2,0xC395,0xD417,0xE478,0xE478,0xE457,0xDC57,0xE457,0xE457,0xE457,0xDC37,0xE437,0xE456,0xE456,0xE435,0xDC14,0xE473,0xFD34,0xFD73,0xFD71,0xF550,0xFD50,0xFD70,0xFD70,0xFD70,0xFD70,0xFD70,0xFD70,0xFD4F,0xFD4F,0xFD70,0xFD70,0xFD70,0xFD70,0xFD70,0xFD71,0xFD71,0xFD93,0xECF3,0xB32F,0x924D,0x9A6F,0xB333,0xCBB5,0xDC37,0xE478,0xE458,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE437,0xE436,0xE456,0xE435,0xE454,0xECD3,0xFD53,0xFD72,0xFD51,0xFD50,0xFD70,0xFD50,0xFD50,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD6F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD50,0xFD70,0xFD71,0xFD73,0xECD3,0xC370,0x9A4D,0x9A4F,0xBB13,0xCBB5,0xDC37,0xE458,0xE458,0xE457,0xE457,0xDC57,0xDC37,0xDC37,0xDC57,0xDC57,0xE457,0xE457,0xE477,0xE497,0xE478,0xA290,0x920F,0x920F,0xB2D2,0xDC17,0xE458,0xE478,0xE458,0xE457,0xDC37,0xDC37,0xDC37,0xDC37,0xE437,0xE457,0xE457,0xE457,0xE436,0xDC16,0xE415,0xE435,0xEC74,0xEC93,0xF4D3,0xF4F2,0xFD32,0xFD32,0xFD52,0xFD51,0xFD51,0xFD51,0xFD51,0xFD51,0xFD51,0xFD51,0xFD51,0xFD51,0xFD51,0xFD51,0xFD51,0xFD72,0xFD93,0xFDD7,0x89CB,0x920F,0x91EF,0xB2F3,0xE458,0xE458,0xE458,0xDC38,0xE438,0xE438,0xE437,0xE437,0xE457,0xE437,0xE437,0xE436,0xE436,0xE455,0xE454,0xF516,0xFD55,0xFD54,0xF553,0xFD53,0xFD54,0xFD54,0xFD55,0xD433,0x920D,0x920E,0x9A50,0xBB33,0xDC17,0xE457,0xE458,0xE457,0xE457,0xE437,0xE437,0xDC36,0xE436,0xE436,0xE436,0xE456,0xE435,0xE454,0xE493,0xFD34,0xFD73,0xF552,0xF551,0xFD51,0xFD70,0xFD50,0xFD50,0xFD50,0xFD50,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD6F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD4F,0xFD6F,0xFD70,0xFD70,0xFD71,0xFD72,0xF553,0xC38F,0x89CB,0x89EE,0xA2B1,0xC375,0xD3F7,0xE458,0xE478,0xDC37,0xDC57,0xDC37,0xE457,0xE457,0xDC37,0xDC36,0xE457,0xE457,0xE456,0xE435,0xE454,0xEC94,0xF534,0xF553,0xFD73,0xFD93,0xF573,0xF573,0xFD74,0xFD75,0xECF5,0xB310,0x9A4F,0xA250,0xB2F2,0xCB95,0xDC17,0xE458,0xE457,0xE437,0xE437,0xE437,0xE457,0xE457,0xE436,0xE436,0xE436,0xE436,0xE455,0xE454,0xF4F5,0xFD34,0xFD74,0xFD74,0xFD74,0xFD74,0xFD74,0xFD55,0xF4F5,0xAACF,0x920D,0x920F,0xA291,0xCBB6,0xDC58,0xE458,0xE458,0xE457,0xE437,0xE437,0xE457,0xE437,0xE457,0xE457,0xE456,0xE456,0xE455,0xE454,0xE473,0xF4F3,0xFD53,0xFD52,0xFD51,0xFD51,0xFD71,0xFD70,0xFD70,0xFD70,0xFD70,0xFD70,0xFD70,0xF570,0xFD71,0xFD71,0xFD72,0xFD94,0xD412,0xA28E,0x920D,0x9A4F,0xCB95,0xDC17,0xE458,0xDC38,0xDC37,0xE437,0xE437,0xE437,0xE437,0xE457,0xE457,0xE457,0xDC36,0xDC35,0xDC34,0xDC32,0xFD54,0xFD73,0xFD73,0xFD72,0xFD52,0xFD72,0xFD72,0xFD72,0xFD92,0xFD92,0xFD92,0xFD92,0xFD93,0xFD93,0xFD93,0xFD94,0xFD95,0xFD57,0xA1EF,0xA1F2,0xAA14,0xA216,0xA278,0x8A5A,0x4118,0x293A,0x217C,0x199D,0x119D,0x099E,0x099E,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x019F,0x019F,0x01BF,0x019E,0x019E,0x019D,0x01BD,0x01FC,0x025A,0x1BFC,0x569F,0x46DD,0x2696,0x16B3,0x1713,0x1713,0x2755,0x2EF6,0x46D8,0x6E9B,0x7D39,0x62D3,0x7AD5,0x8295,0x8255,0x79F5,0x71B4,0x6173,0x5973,0x5994,0x5173,0x5193,0x49B3,0x4972,0x4992,0x4192,0x4171,0x4192,0x4192,0x3971,0x3971,0x3951,0x3951,0x3150,0x3950,0x3150,0x3130,0x3130,0x3130,0x3150,0x3151,0x2930,0x2950,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x2151,0x1931,0x1932,0x1133,0x19B5,0x19D6,0x19D6,0x1995,0x1111,0x1911,0x2130,0x2110,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x1930,0x1931,0x1132,0x1132,0x21D6,0x21F7,0x19B6,0x1994,0x1132,0x1111,0x1930,0x2110,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x292F,0x292F,0x290F,0x2130,0x2130,0x1931,0x2194,0x19B5,0x1195,0x11D7,0x19F7,0x19F7,0x11B6,0x1196,0x11B6,0x11D6,0x19F7,0x19F7,0x19D6,0x1195,0x1133,0x1112,0x1111,0x1911,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2930,0x2110,0x2930,0x2930,0x2930,0x2130,0x2930,0x2930,0x2910,0x2110,0x2130,0x2131,0x2111,0x1911,0x1932,0x1133,0x1154,0x19B5,0x19F6,0x19D6,0x21F6,0x1974,0x1112,0x1111,0x1911,0x2131,0x2151,0x2130,0x2110,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1910,0x1911,0x1153,0x19B5,0x11B6,0x11B7,0x09D8,0x09D9,0x01B9,0x01B9,0x01D9,0x09D9,0x09D9,0x09D8,0x19F8,0x11D7,0x0934,0x0933,0x1152,0x1952,0x1931,0x1931,0x1951,0x1931,0x1951,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931, + 0x2130,0x2110,0x2110,0x2130,0x2130,0x1911,0x1931,0x1911,0x1932,0x1132,0x1133,0x1153,0x1133,0x1954,0x1954,0x1954,0x1974,0x1974,0x1974,0x1974,0x1974,0x1994,0x1974,0x1974,0x1974,0x1994,0x1974,0x1974,0x1174,0x1974,0x1174,0x1974,0x1974,0x1174,0x1975,0x1995,0x1974,0x1153,0x1153,0x1133,0x1132,0x1953,0x1132,0x1932,0x1931,0x1911,0x1910,0x1910,0x2130,0x2130,0x2110,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210E,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1932,0x1933,0x1974,0x21F6,0x21F7,0x21F7,0x1995,0x1153,0x1112,0x1911,0x1931,0x1931,0x1930,0x2110,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x2910,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x30CE,0x384C,0xA294,0xB252,0xB211,0xB1F1,0xB1D0,0xA1CC,0xFD35,0xFD93,0xFDB2,0xFD91,0xFD50,0xFD50,0xFD4F,0xFD4F,0xFD8F,0xFD8F,0xFD90,0xFD91,0xFD92,0xFD73,0xF513,0xCBD1,0x91EC,0x920E,0xAAD2,0xC374,0xD3F6,0xE458,0xE478,0xDC37,0xDC37,0xDC57,0xDC36,0xE457,0xDC36,0xDC36,0xDC36,0xE456,0xE435,0xE434,0xE473,0xFD34,0xFD73,0xFD91,0xFD70,0xFD70,0xFD70,0xFD4F,0xFD70,0xFD70,0xFD70,0xFD70,0xFD70,0xFD70,0xFD70,0xFD6F,0xFD70,0xFD70,0xFD70,0xFD91,0xFD92,0xFD93,0xECF3,0xBB4F,0x924D,0x9A6F,0xB313,0xC3B5,0xDC37,0xE458,0xE458,0xE437,0xE437,0xDC37,0xDC37,0xE437,0xE437,0xE437,0xE436,0xE456,0xE435,0xE454,0xECD3,0xFD53,0xFD72,0xFD71,0xFD71,0xFD70,0xFD70,0xFD70,0xFD6F,0xFD6F,0xFD4F,0xFD6F,0xFD6F,0xFD6F,0xFD4F,0xFD6F,0xFD6F,0xFD6F,0xFD70,0xFD70,0xFD91,0xFD93,0xECD3,0xC36F,0x9A4E,0x9A4F,0xBB33,0xCBB5,0xDC37,0xE458,0xE458,0xDC57,0xE457,0xDC57,0xDC37,0xDC36,0xDC36,0xDC56,0xDC56,0xDC56,0xE476,0xE497,0xECD8,0xBB32,0x920F,0x920F,0xA271,0xCBB6,0xE458,0xE458,0xE478,0xE457,0xDC37,0xDC57,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xE457,0xE457,0xE436,0xE436,0xE435,0xE455,0xEC95,0xF4D5,0xF4F4,0xFD13,0xFD33,0xFD53,0xFD52,0xFD52,0xFD52,0xFD51,0xFD51,0xFD51,0xFD51,0xFD71,0xFD72,0xFD72,0xFD72,0xFD72,0xFD73,0xFD94,0xFDB7,0x89EC,0x920E,0x91EF,0xB2F3,0xE479,0xE458,0xE458,0xDC38,0xE438,0xE438,0xE458,0xE437,0xE457,0xE437,0xE457,0xE436,0xE436,0xE435,0xE454,0xF516,0xFD55,0xFD54,0xFD54,0xFD54,0xFD54,0xFD75,0xFD76,0xDC53,0x920D,0x920F,0x9A50,0xBB33,0xD416,0xDC37,0xE457,0xE457,0xE457,0xE457,0xDC37,0xE437,0xDC36,0xDC36,0xE436,0xE456,0xE435,0xE454,0xE493,0xF534,0xFD73,0xF572,0xFD51,0xFD71,0xFD70,0xFD70,0xFD70,0xFD70,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD4F,0xFD6F,0xFD4F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD90,0xFD90,0xFD91,0xFD92,0xFD73,0xC3D0,0x81CB,0x89CD,0x9A70,0xBB34,0xD3F7,0xE458,0xE478,0xDC38,0xDC57,0xDC37,0xDC37,0xE457,0xE457,0xDC37,0xDC57,0xE456,0xDC36,0xDC35,0xE455,0xEC94,0xF514,0xFD54,0xFD74,0xFD73,0xFD73,0xFD73,0xFD74,0xFD76,0xF516,0xB310,0x9A4F,0x9A50,0xB2F2,0xCB95,0xDC37,0xE458,0xE457,0xE457,0xE457,0xE437,0xE457,0xE436,0xE457,0xE436,0xE436,0xE456,0xE456,0xE475,0xF4F5,0xFD35,0xFD74,0xFD74,0xFD94,0xFD94,0xFD95,0xFD75,0xF4F6,0xAAAE,0x920E,0x920F,0xA2B1,0xCBB6,0xDC37,0xE458,0xE457,0xDC37,0xE457,0xE437,0xE437,0xE457,0xE457,0xDC37,0xDC56,0xE456,0xE435,0xE454,0xE473,0xF514,0xFD73,0xFD72,0xFD71,0xFD71,0xFD71,0xFD70,0xFD70,0xFD50,0xFD50,0xFD70,0xFD70,0xFD90,0xFD91,0xFD91,0xFDB2,0xFDB4,0xD412,0xA28E,0x920D,0x9A4F,0xCB95,0xDC17,0xE458,0xDC38,0xDC37,0xDC37,0xE437,0xE457,0xE457,0xE457,0xE457,0xE456,0xDC36,0xDC35,0xE434,0xDC33,0xF534,0xFD53,0xF552,0xFD72,0xFD72,0xFD72,0xFD72,0xFD92,0xFD92,0xFD92,0xFD92,0xFD92,0xFD93,0xFDB3,0xFDB3,0xFDB4,0xFDB5,0xFD77,0xA210,0xA1D2,0xAA14,0xAA36,0xA278,0x8A5A,0x4138,0x291A,0x215C,0x197D,0x117D,0x099E,0x019E,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x019E,0x019E,0x019D,0x01BD,0x01FB,0x027A,0x1C3C,0x569F,0x46FD,0x1EB6,0x16F4,0x0F13,0x1733,0x1F55,0x2F17,0x46D8,0x76BB,0x74B8,0x62B3,0x7AB5,0x8275,0x8235,0x79F5,0x6994,0x6994,0x6194,0x59B4,0x5193,0x51B3,0x4993,0x4172,0x4172,0x4192,0x4192,0x4192,0x4192,0x4192,0x3951,0x3951,0x3130,0x3150,0x3151,0x3130,0x3130,0x3130,0x3150,0x3150,0x3150,0x2930,0x2930,0x2950,0x292F,0x2930,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x1931,0x1932,0x1132,0x19B5,0x19D6,0x19D6,0x1194,0x1111,0x1931,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1932,0x0912,0x19B5,0x2A17,0x21D6,0x1994,0x1132,0x1111,0x1930,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x292F,0x292F,0x292F,0x290F,0x2130,0x2130,0x1952,0x1173,0x1195,0x11B6,0x19F7,0x11D7,0x11B6,0x0976,0x0975,0x0975,0x0975,0x11B6,0x19F7,0x19F7,0x11B6,0x1195,0x1133,0x1112,0x1111,0x1911,0x1931,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x2130,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x18F1,0x10F1,0x1112,0x1133,0x1154,0x1195,0x21F6,0x2217,0x21F6,0x1174,0x1133,0x1111,0x1911,0x1931,0x2130,0x2130,0x210F,0x210F,0x2130,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1911,0x1132,0x1974,0x1995,0x19D7,0x11D7,0x09F8,0x09D8,0x09F9,0x09D9,0x09B8,0x11D8,0x11D7,0x1196,0x1154,0x1133,0x1152,0x1931,0x1931,0x1931,0x1910,0x1931,0x1930,0x1930,0x1930,0x1910,0x2130,0x1910,0x1910,0x2131,0x2131, + 0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2131,0x1931,0x1931,0x1911,0x1912,0x1912,0x1112,0x1112,0x1112,0x1112,0x1112,0x1932,0x1111,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1133,0x1133,0x1132,0x1132,0x1133,0x1153,0x1133,0x1132,0x1133,0x1132,0x1112,0x1111,0x1111,0x1111,0x1952,0x1931,0x1931,0x1911,0x1911,0x1930,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x28EF,0x28EF,0x290F,0x290F,0x210F,0x292F,0x292F,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x2930,0x290F,0x210F,0x290F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210E,0x210E,0x292F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x292F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2110,0x1911,0x1931,0x1952,0x1133,0x1154,0x21F6,0x2217,0x21F7,0x1995,0x1133,0x1112,0x1932,0x1931,0x1931,0x1930,0x2130,0x2130,0x2150,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x20EF,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x2910,0x2910,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x30CE,0x384C,0xA294,0xB252,0xB212,0xBA11,0xB1F0,0xA1CD,0xFD55,0xFDB4,0xFDD3,0xFDB1,0xFD70,0xFD70,0xFD6F,0xFD6F,0xFD8F,0xFDB0,0xFDB0,0xFDB1,0xFDB2,0xFDB4,0xFD54,0xD411,0x89EC,0x920E,0xAAB1,0xBB54,0xCBF6,0xDC58,0xE478,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC36,0xDC36,0xE456,0xE436,0xE435,0xE434,0xE473,0xFD54,0xFD93,0xFD91,0xFD71,0xFD70,0xFD70,0xFD6F,0xFD6F,0xFD70,0xFD6F,0xFD70,0xFD70,0xFD70,0xFD70,0xFD6F,0xFD70,0xFD70,0xFD90,0xFD91,0xFD91,0xFD93,0xECF3,0xB34E,0x924D,0x9A4F,0xAAF2,0xC395,0xD437,0xE458,0xE458,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xE437,0xE436,0xE436,0xE436,0xE435,0xE453,0xF4F3,0xFD73,0xFD72,0xFD71,0xFD71,0xFD70,0xFD70,0xFD70,0xFD70,0xFD6F,0xFD6F,0xFD8F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD8F,0xFD70,0xFD90,0xFD91,0xFD93,0xECD3,0xBB70,0x9A4D,0x9A4F,0xBB33,0xCBB5,0xDC37,0xE478,0xE458,0xE457,0xE457,0xDC37,0xDC36,0xDC36,0xDC56,0xDC56,0xDC56,0xDC56,0xE476,0xECB7,0xF539,0xE497,0x924F,0x922F,0x9A2F,0xBB33,0xDC17,0xE458,0xE458,0xE457,0xE457,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC36,0xDC36,0xE435,0xE435,0xE454,0xEC94,0xFD15,0xFD14,0xFD33,0xFD33,0xFD53,0xFD52,0xFD52,0xFD52,0xFD52,0xFD72,0xFD72,0xFD72,0xFD72,0xFD72,0xFD73,0xFD94,0xFD94,0xFDB7,0x89EC,0x91EF,0x91EF,0xB313,0xE479,0xE478,0xE458,0xDC37,0xDC57,0xDC37,0xDC37,0xE457,0xE457,0xE437,0xE437,0xE436,0xDC36,0xDC35,0xE454,0xFD16,0xFD55,0xFD75,0xFD74,0xFD74,0xFD74,0xFD75,0xFD76,0xDC54,0x920D,0x9A2F,0xA250,0xC354,0xDC17,0xDC37,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC36,0xDC36,0xDC36,0xE436,0xE456,0xE435,0xE434,0xE493,0xFD34,0xFD73,0xFD72,0xFD71,0xFD71,0xFD90,0xFD70,0xFD90,0xFD90,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD8F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD6F,0xFD8F,0xFD8F,0xFD90,0xFDB0,0xFD91,0xFD92,0xFD73,0xCC10,0x81AB,0x89CD,0x9A30,0xB313,0xD3F7,0xE478,0xE479,0xE458,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC37,0xDC36,0xDC36,0xE436,0xE455,0xEC75,0xF4D4,0xF514,0xFD54,0xFD74,0xFD74,0xFD94,0xFD75,0xFD76,0xECF6,0xB310,0x9A4F,0x9A30,0xB2D2,0xCBB5,0xDC37,0xE458,0xE457,0xE457,0xE457,0xDC37,0xDC37,0xDC36,0xDC36,0xE436,0xE436,0xE456,0xE456,0xE475,0xF4F5,0xFD35,0xFD75,0xFD74,0xFD74,0xFD74,0xFD75,0xFD76,0xF4F6,0xAAAF,0x920E,0x920F,0xAAB1,0xD3F6,0xDC37,0xE457,0xE457,0xE457,0xE437,0xE437,0xE437,0xE457,0xDC37,0xDC57,0xE456,0xE456,0xE435,0xE454,0xE473,0xF533,0xFD73,0xFD72,0xFD71,0xFD71,0xFD71,0xFD70,0xFD70,0xFD70,0xFD70,0xFD90,0xFD90,0xFD91,0xFD91,0xFD91,0xFDB2,0xFDB5,0xD431,0x9A6D,0x920D,0x9A2F,0xC395,0xDC17,0xE458,0xDC38,0xDC37,0xDC57,0xDC37,0xE457,0xE457,0xDC36,0xE457,0xE436,0xDC35,0xDC35,0xDC34,0xDC32,0xFD54,0xFD93,0xFD93,0xFD92,0xFD92,0xFD92,0xFD92,0xFD92,0xFD92,0xFD92,0xFD92,0xFD92,0xFDB3,0xFDB3,0xFDB3,0xFDB4,0xFDB5,0xFD78,0xA210,0xA1F2,0xA1F4,0xA216,0xA258,0x8A5A,0x4118,0x291A,0x215C,0x197D,0x117D,0x099E,0x019E,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BE,0x019E,0x019E,0x019D,0x01BC,0x021B,0x029A,0x1C7D,0x4E9F,0x3F1D,0x1EF7,0x1714,0x0F13,0x0F13,0x1F55,0x2F17,0x4EF9,0x7EDC,0x7477,0x6AB4,0x82B5,0x8255,0x79F5,0x79D5,0x6973,0x6173,0x5973,0x5993,0x51B4,0x5193,0x4993,0x4993,0x4992,0x4992,0x3971,0x3971,0x3972,0x4192,0x3951,0x3951,0x3951,0x3971,0x3151,0x3151,0x3150,0x3130,0x3150,0x3150,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x292F,0x292F,0x2950,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x212F,0x210F,0x292F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x2130,0x2110,0x1911,0x1931,0x1132,0x19B5,0x19D6,0x19F7,0x1194,0x1111,0x1910,0x1910,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x1931,0x1932,0x1112,0x19B5,0x2A17,0x21D6,0x1995,0x1132,0x1111,0x1910,0x1910,0x2110,0x210F,0x212F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x292F,0x292F,0x290F,0x292F,0x210F,0x210F,0x1910,0x1931,0x1173,0x1195,0x11D6,0x11D7,0x11B7,0x0976,0x0975,0x0955,0x0134,0x0954,0x0975,0x11B6,0x11F7,0x11D7,0x11D7,0x1195,0x1154,0x0912,0x08F1,0x1111,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x18F1,0x1911,0x1911,0x10F1,0x1912,0x10F2,0x08F2,0x0933,0x1195,0x2217,0x2237,0x19D6,0x1974,0x1132,0x1932,0x1931,0x1931,0x2130,0x2110,0x2110,0x2930,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2150,0x2130,0x2110,0x1910,0x1910,0x1112,0x1153,0x1995,0x19D6,0x1217,0x1A39,0x1A19,0x1A18,0x1A18,0x19B7,0x1175,0x1133,0x1133,0x1932,0x1931,0x1910,0x1930,0x2130,0x1910,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110, + 0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1912,0x1912,0x1912,0x1932,0x1132,0x1132,0x1132,0x1932,0x1932,0x1932,0x1911,0x1931,0x1931,0x1931,0x1951,0x1931,0x1931,0x2151,0x1910,0x1930,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210E,0x210F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2930,0x2130,0x2130,0x2130,0x2110,0x2131,0x1911,0x1931,0x1952,0x1952,0x1974,0x21D6,0x2A17,0x21F7,0x1995,0x1954,0x1132,0x1912,0x1911,0x1910,0x1930,0x2130,0x2130,0x2130,0x212F,0x212F,0x210E,0x210E,0x212F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210E,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2930,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x28EE,0x30CE,0x384C,0xA294,0xB252,0xB211,0xB1F1,0xB1D0,0xA1CD,0xFD56,0xFDD4,0xFDD3,0xFDB1,0xFD90,0xFD6F,0xFD6F,0xFD8F,0xFDAF,0xFDAF,0xFDB0,0xFDB0,0xFDD2,0xFDD4,0xFD95,0xD412,0x89EC,0x91EE,0xA2B1,0xBB53,0xCBF6,0xDC57,0xE478,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xDC36,0xDC36,0xDC36,0xE456,0xE435,0xDC34,0xE473,0xFD74,0xFD93,0xFD91,0xFD70,0xFD70,0xFD90,0xFD90,0xFD90,0xFD90,0xFD90,0xFD70,0xFD70,0xFD90,0xFD70,0xFD90,0xFD70,0xFD70,0xFD70,0xFD90,0xFD91,0xFD93,0xECF3,0xBB4F,0x924D,0x924F,0xB312,0xC395,0xD437,0xE478,0xE458,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xE457,0xE436,0xE436,0xE455,0xE453,0xECD3,0xFD73,0xFD72,0xFD71,0xFD70,0xFD70,0xFD70,0xFD6F,0xFD70,0xFD6F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD90,0xFD90,0xFD91,0xFDB1,0xFD93,0xECD3,0xC390,0x9A4E,0x9A4F,0xBB13,0xCBB5,0xDC37,0xE458,0xE458,0xE457,0xE457,0xDC37,0xDC37,0xDC36,0xDC56,0xDC56,0xDC56,0xDC56,0xDC76,0xE4B7,0xF558,0xFD79,0xBB72,0x924F,0x922F,0xA2B1,0xCBD6,0xDC37,0xDC57,0xE457,0xE457,0xDC37,0xDC57,0xE457,0xDC37,0xE457,0xE457,0xE457,0xE457,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC35,0xE454,0xE494,0xF4D4,0xFD35,0xFD34,0xFD54,0xFD54,0xFD53,0xFD53,0xFD53,0xFD53,0xFD53,0xFD73,0xFD73,0xFD73,0xFD73,0xFD74,0xFD95,0xFDB8,0x89EC,0x91EF,0x91EF,0xB313,0xE478,0xE458,0xE458,0xE457,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xE437,0xE437,0xE457,0xDC36,0xDC35,0xDC55,0xF516,0xFD56,0xFD75,0xFD75,0xFD75,0xFD75,0xFD55,0xFD56,0xDC54,0x9A0D,0x9A4F,0xA270,0xC374,0xDC37,0xE457,0xDC37,0xE457,0xE457,0xE457,0xDC36,0xDC36,0xDC36,0xE436,0xE436,0xE456,0xE435,0xE433,0xE472,0xFD54,0xFD93,0xFD92,0xFD91,0xFD70,0xFD70,0xFD6F,0xFD90,0xFD8F,0xFD8F,0xFD6F,0xFD6F,0xFD8F,0xFD8F,0xFD8F,0xFD6F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD6F,0xFD8F,0xFD8F,0xFD90,0xFD90,0xFD90,0xFD91,0xFD73,0xE492,0x89CB,0x89EE,0x9A50,0xB2F3,0xD3F7,0xE478,0xE478,0xE458,0xE458,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC37,0xDC36,0xDC36,0xE436,0xE435,0xE455,0xF4D5,0xF4F5,0xFD35,0xFD75,0xFD74,0xFD95,0xFD95,0xFD96,0xF4F6,0xB310,0x9A4F,0x9A30,0xB2D2,0xCB95,0xDC37,0xE478,0xE457,0xE457,0xE457,0xE457,0xDC37,0xDC36,0xDC36,0xE457,0xE436,0xE436,0xE456,0xE435,0xF4D5,0xFD36,0xFD55,0xFD55,0xFD75,0xFD75,0xFD75,0xFD76,0xF4F6,0xA28E,0x920E,0x920F,0xAAB1,0xD416,0xDC37,0xDC57,0xDC37,0xE457,0xE457,0xE457,0xE457,0xDC37,0xDC37,0xDC56,0xDC56,0xE456,0xDC55,0xE454,0xE493,0xFD33,0xFD93,0xFD92,0xFD91,0xFD91,0xFD71,0xFD70,0xFD70,0xFD90,0xFD90,0xFD90,0xFD90,0xFD90,0xFD91,0xFD91,0xFDB2,0xFDD5,0xCC11,0x9A6D,0x920D,0x9A2F,0xC394,0xD417,0xDC38,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC37,0xE437,0xE457,0xE436,0xDC35,0xDC35,0xDC34,0xDC33,0xF554,0xFDB3,0xFDB3,0xFDB3,0xFDB3,0xFD92,0xFDB2,0xFDB2,0xFDB2,0xFD92,0xFDB2,0xFDB2,0xFDB3,0xFDB3,0xFDB3,0xFDB4,0xFDB5,0xFD78,0xA210,0xA1F2,0xA1F4,0xA216,0xA278,0x8A5A,0x4138,0x291A,0x215C,0x197D,0x119E,0x099E,0x099E,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01BE,0x019E,0x019E,0x019D,0x01BC,0x023B,0x02BA,0x1C9D,0x46BF,0x371D,0x16F6,0x0F34,0x0F33,0x0F33,0x2776,0x2F17,0x4ED9,0x7EBC,0x6BF5,0x7294,0x8275,0x8A55,0x8215,0x79D4,0x6173,0x6194,0x5973,0x5993,0x51B3,0x5193,0x49B3,0x4993,0x4993,0x4192,0x3951,0x3971,0x3971,0x4172,0x3951,0x3971,0x3951,0x3951,0x3971,0x3150,0x3130,0x3130,0x3150,0x3150,0x2930,0x2930,0x2930,0x2930,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x2110,0x2131,0x1931,0x1132,0x1995,0x19B6,0x19D6,0x1995,0x1111,0x1911,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1932,0x1112,0x19B5,0x21F6,0x21D6,0x19B5,0x1132,0x1111,0x1931,0x1910,0x2130,0x212F,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x290F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x2110,0x1931,0x1932,0x1153,0x1195,0x11D7,0x11D7,0x0976,0x0975,0x0955,0x0134,0x0934,0x0134,0x0955,0x0155,0x0996,0x11D7,0x11D7,0x19F7,0x19B6,0x1154,0x0913,0x1133,0x1133,0x1132,0x1133,0x1112,0x1132,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x10F1,0x1112,0x1112,0x1112,0x1132,0x1112,0x0912,0x0913,0x0933,0x1195,0x2217,0x2217,0x21F6,0x1994,0x1153,0x1132,0x1931,0x1931,0x2130,0x2130,0x2930,0x210F,0x290F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1910,0x1931,0x1932,0x1953,0x1194,0x11B5,0x19D6,0x11B5,0x19B5,0x1175,0x1154,0x1133,0x1132,0x1931,0x1931,0x1910,0x1910,0x2110,0x2130,0x212F,0x210F,0x212F,0x212F,0x210F,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130, + 0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2130,0x1910,0x2131,0x2131,0x1931,0x2131,0x2131,0x2131,0x2131,0x2131,0x1910,0x1931,0x1931,0x2131,0x1911,0x1931,0x2131,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x2131,0x2131,0x1930,0x1930,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x292F,0x292F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x2930,0x210F,0x290F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x210F,0x292F,0x2930,0x210F,0x2110,0x2130,0x2110,0x2110,0x1911,0x1932,0x1932,0x1132,0x1974,0x21F6,0x2A17,0x21D6,0x1995,0x1953,0x1932,0x1911,0x1911,0x1931,0x2131,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x290F,0x292F,0x210F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x28EF,0x30CE,0x384C,0xA273,0xB252,0xB211,0xB211,0xB1F0,0xAA0D,0xFD76,0xFDD4,0xFDF3,0xFDD1,0xFD90,0xFD90,0xFD8F,0xFDAF,0xFDB0,0xFDAF,0xFDB0,0xFDB0,0xFDD2,0xFDD4,0xFDB5,0xD431,0x89EC,0x920E,0xA291,0xBB33,0xCBF6,0xDC57,0xE478,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC36,0xE436,0xDC36,0xE456,0xE435,0xDC54,0xE472,0xFD74,0xFDD3,0xFDB2,0xFD91,0xFD90,0xFDB0,0xFDB0,0xFDB0,0xFDB0,0xFD90,0xFD90,0xFDB0,0xFD90,0xFD90,0xFD90,0xFD90,0xFD90,0xFDB0,0xFDB1,0xFD91,0xFDB3,0xECF3,0xB34E,0x924D,0x924F,0xB312,0xC3B5,0xDC37,0xE478,0xE478,0xDC37,0xDC37,0xDC37,0xE437,0xE437,0xE457,0xE457,0xE456,0xE456,0xE455,0xE474,0xECF3,0xFD93,0xFD92,0xFD91,0xFD91,0xFD90,0xFD90,0xFD90,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDB0,0xFDB0,0xFDB1,0xFDB1,0xFDB3,0xECF3,0xBB70,0x9A4E,0x9A4F,0xB313,0xCBB5,0xDC37,0xE458,0xE458,0xE457,0xE457,0xDC57,0xDC37,0xDC36,0xDC57,0xDC56,0xDC56,0xDC56,0xDC76,0xE4B6,0xFD78,0xFDB9,0xDCB6,0xA2AF,0x922E,0x9A4F,0xBB74,0xD417,0xDC57,0xE478,0xE478,0xE457,0xE457,0xE457,0xE457,0xDC37,0xDC37,0xDC36,0xDC57,0xDC57,0xDC36,0xDC56,0xDC56,0xDC36,0xDC36,0xDC35,0xE455,0xDC34,0xE454,0xEC94,0xF4D5,0xF4D4,0xFCF4,0xFCF4,0xFD14,0xFD13,0xF513,0xF513,0xF533,0xF533,0xF553,0xFD74,0xFD75,0xFDB8,0x89CD,0x91EF,0x91EF,0xB313,0xE479,0xE458,0xE458,0xE457,0xDC37,0xE457,0xDC57,0xDC57,0xE457,0xDC37,0xE437,0xE436,0xE456,0xE456,0xE455,0xF4F7,0xFD57,0xFD76,0xFD75,0xFD75,0xFD75,0xFD55,0xFD36,0xE454,0x9A0D,0x9A4F,0xA270,0xCB95,0xDC57,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC36,0xDC36,0xE456,0xE456,0xE456,0xE456,0xE435,0xDC33,0xE492,0xFD54,0xFDB3,0xFDB2,0xFD91,0xFD90,0xFD90,0xFD90,0xFD90,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFDAF,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFDAF,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFD8F,0xFDAF,0xFDAF,0xFDB0,0xFDD1,0xFDB1,0xFDB3,0xFD74,0x922B,0x8A0D,0x9A4F,0xAAD2,0xD3D6,0xDC38,0xE458,0xDC57,0xE458,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC36,0xDC56,0xDC36,0xE436,0xE435,0xE475,0xEC95,0xF4D5,0xFD35,0xFD75,0xFD95,0xFD96,0xFD97,0xF517,0xB311,0x9A4F,0x9A30,0xB2D2,0xCBB5,0xDC37,0xE478,0xE457,0xDC37,0xDC37,0xE457,0xDC37,0xDC36,0xDC36,0xE456,0xDC36,0xDC36,0xE436,0xE435,0xF4B6,0xF4F6,0xF4F5,0xF4F5,0xF515,0xF515,0xFD35,0xFD37,0xECB6,0xA24E,0x920E,0x920F,0xAAB1,0xDC16,0xDC37,0xDC37,0xDC37,0xE437,0xE457,0xE457,0xDC57,0xDC37,0xDC57,0xDC56,0xDC56,0xE456,0xDC55,0xDC54,0xE493,0xFD54,0xFDB3,0xFDB2,0xFD91,0xFD91,0xFD91,0xFD90,0xFD90,0xFD90,0xFDB0,0xFDB0,0xFDB0,0xFDB0,0xFD90,0xFDB1,0xFDD2,0xFDD5,0xD431,0x9A6D,0x920D,0x9A2F,0xC374,0xD416,0xDC58,0xE458,0xDC57,0xDC37,0xDC37,0xE457,0xDC37,0xE457,0xE436,0xE456,0xE436,0xE435,0xDC34,0xDC53,0xF574,0xFDD4,0xFDD3,0xFDB3,0xFDB3,0xFDB3,0xFDB2,0xFDB2,0xFDB2,0xFDB2,0xFDD3,0xFDD3,0xFDD3,0xFDD3,0xFDB3,0xFDD4,0xFDD5,0xFD98,0x9A10,0xA1F2,0xA1F4,0xA236,0xA278,0x8A5A,0x4118,0x291A,0x215C,0x197D,0x119E,0x099E,0x099E,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x019E,0x01BE,0x01BE,0x019E,0x01BD,0x01DC,0x023B,0x029A,0x1C7D,0x46DF,0x371D,0x16F6,0x0F13,0x0F33,0x0F53,0x1F76,0x3758,0x56FA,0x7E9C,0x6374,0x7274,0x8255,0x81F4,0x8215,0x71B4,0x6994,0x6193,0x5973,0x5193,0x51B3,0x4993,0x4993,0x4993,0x4992,0x4993,0x4192,0x3972,0x3951,0x3972,0x3971,0x3971,0x3150,0x3151,0x3150,0x3150,0x3150,0x3130,0x2930,0x3150,0x2930,0x2930,0x290F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x212F,0x292F,0x290F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x2930,0x212F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2130,0x1911,0x1112,0x19B5,0x19D6,0x19D6,0x1975,0x1111,0x1911,0x2131,0x2130,0x210F,0x2130,0x212F,0x210F,0x212F,0x2130,0x1910,0x1931,0x1932,0x1112,0x19B5,0x2217,0x21D6,0x1974,0x1132,0x1112,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x210F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290E,0x290F,0x290F,0x210F,0x2130,0x1931,0x1952,0x1174,0x11B6,0x19F7,0x11B7,0x0155,0x0955,0x0955,0x0955,0x0954,0x0954,0x0955,0x0975,0x0996,0x09B7,0x09D7,0x11D8,0x11F7,0x11D7,0x11B6,0x1196,0x11B6,0x1196,0x1195,0x1175,0x1175,0x1175,0x1175,0x1155,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1155,0x1175,0x1155,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1175,0x1195,0x1195,0x1174,0x1195,0x1195,0x19D6,0x19F6,0x2217,0x2237,0x2238,0x2217,0x19D6,0x1174,0x1953,0x1132,0x1931,0x1911,0x2130,0x2130,0x2130,0x2930,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2131,0x1931,0x1931,0x1131,0x1111,0x1132,0x1112,0x1112,0x1932,0x1931,0x1931,0x1910,0x1930,0x2130,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2130, + 0x2150,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2130,0x2131,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2131,0x2131,0x2130,0x1910,0x2131,0x1910,0x2110,0x2130,0x2130,0x2130,0x2130,0x1930,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x20EF,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2110,0x2110,0x2110,0x2131,0x1932,0x1932,0x1133,0x1174,0x21F6,0x21F6,0x21F6,0x2195,0x1953,0x1912,0x1911,0x1911,0x1910,0x2110,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x290F,0x292F,0x290F,0x292F,0x210F,0x290F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x290F,0x290F,0x28EF,0x30CE,0x386C,0xA294,0xB252,0xB232,0xB211,0xB1F0,0xA9ED,0xFD76,0xFDD4,0xFDF3,0xFDD1,0xFDD1,0xFDB0,0xFDB0,0xFDCF,0xFDCF,0xFDAF,0xFDD0,0xFDD0,0xFDF2,0xFDF4,0xFDB5,0xCC11,0x89EC,0x920E,0xA290,0xBB33,0xD3F6,0xDC57,0xE478,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xE456,0xE456,0xE436,0xE435,0xE454,0xE492,0xFD94,0xFDD3,0xFDD2,0xFDB1,0xFDB0,0xFDB0,0xFDD0,0xFDD0,0xFDB0,0xFDB0,0xFDB0,0xFDB0,0xFDB0,0xFDB0,0xFDB0,0xFDB0,0xFDD0,0xFDD0,0xFDD1,0xFDD1,0xFDD3,0xED13,0xB34E,0x924D,0x9A4F,0xB312,0xC3B5,0xDC37,0xE458,0xE458,0xE457,0xE437,0xE437,0xDC37,0xE437,0xE437,0xE457,0xE456,0xE456,0xE455,0xE474,0xED13,0xFDB3,0xFDB2,0xFDB1,0xFDB1,0xFDB0,0xFDB0,0xFDB0,0xFDB0,0xFDAF,0xFDAF,0xFDAF,0xFDCF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDD0,0xFDD0,0xFDD1,0xFDD1,0xFDD3,0xED13,0xC390,0x9A4D,0x9A4F,0xB312,0xCBB5,0xDC37,0xE458,0xDC57,0xE457,0xE457,0xE457,0xDC57,0xE457,0xDC57,0xDC56,0xDC56,0xDC56,0xDC76,0xE496,0xF578,0xFDB8,0xF578,0xB371,0x924E,0x924F,0xAAD1,0xCBB5,0xDC57,0xE478,0xE457,0xE477,0xE477,0xE457,0xE457,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC56,0xDC56,0xDC36,0xE456,0xDC35,0xDC55,0xE455,0xE454,0xE474,0xEC74,0xEC94,0xEC94,0xECB3,0xECB3,0xECB3,0xECD3,0xECF3,0xED14,0xED14,0xF576,0xFDB9,0x89CD,0x91EF,0x91EF,0xB313,0xE478,0xE458,0xE457,0xE457,0xDC37,0xE457,0xDC57,0xE457,0xE457,0xE437,0xE457,0xE457,0xE456,0xE456,0xE456,0xE475,0xE495,0xECD5,0xFD57,0xFD76,0xFD56,0xFD56,0xFD36,0xE454,0xC373,0xC373,0xC394,0xD3F6,0xE457,0xE457,0xDC57,0xDC37,0xE457,0xE437,0xDC36,0xDC56,0xDC56,0xE456,0xE456,0xE456,0xDC35,0xDC33,0xE492,0xFD74,0xFDB3,0xFDD2,0xFDB1,0xFDB1,0xFDB0,0xFDB0,0xFDB0,0xFD8F,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDCF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDAF,0xFDD0,0xFDD0,0xFDD1,0xFDD2,0xFDD4,0xB34F,0x8A0C,0x922E,0xA291,0xCB95,0xDC37,0xE458,0xDC57,0xE457,0xDC57,0xDC57,0xDC37,0xDC57,0xE457,0xE457,0xE457,0xDC57,0xDC56,0xDC36,0xDC35,0xE435,0xE455,0xE474,0xE494,0xF515,0xFD56,0xFD97,0xFD98,0xF518,0xB311,0x9A50,0x9A30,0xB2D3,0xCBB6,0xDC37,0xE478,0xE457,0xDC57,0xDC37,0xDC57,0xDC37,0xDC36,0xE436,0xE456,0xDC36,0xDC36,0xDC36,0xE435,0xE475,0xE455,0xE454,0xE454,0xE474,0xE474,0xE474,0xECB5,0xC372,0x91ED,0x89CD,0x89CE,0xAAB1,0xDC36,0xDC37,0xDC57,0xDC37,0xE457,0xDC37,0xDC37,0xDC57,0xDC57,0xDC56,0xE457,0xE456,0xE456,0xDC55,0xDC54,0xE4B3,0xFD54,0xFDB3,0xFDB2,0xFDB1,0xFDB1,0xFDB1,0xFDB1,0xFDB0,0xFDB0,0xFDB0,0xFDD0,0xFDD0,0xFDD1,0xFDD1,0xFDD1,0xFDD2,0xFDF5,0xD452,0x9A6D,0x920D,0x922E,0xC374,0xD416,0xDC37,0xDC57,0xE457,0xDC57,0xDC37,0xDC57,0xDC37,0xE436,0xE457,0xE456,0xE436,0xE435,0xDC34,0xDC53,0xF574,0xFDD4,0xFDD3,0xFDD3,0xFDB3,0xFDB3,0xFDD3,0xFDD2,0xFDD2,0xFDD2,0xFDD2,0xFDD3,0xFDF3,0xFDF4,0xFDF4,0xFDD4,0xFDF6,0xFDB8,0x9A10,0xA1F2,0xA214,0xA236,0xA278,0x825A,0x4118,0x291A,0x195C,0x197D,0x117E,0x099E,0x019E,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BE,0x01BE,0x019E,0x01BD,0x01DC,0x023B,0x02BA,0x1C9D,0x46DF,0x373D,0x16F6,0x0F54,0x0F53,0x0F53,0x1F56,0x3737,0x56FA,0x7E5C,0x5B13,0x7254,0x8214,0x8215,0x81F5,0x71B4,0x6193,0x6193,0x5993,0x59B3,0x5193,0x4992,0x4992,0x4993,0x4192,0x4172,0x4172,0x4172,0x3972,0x3951,0x3971,0x3951,0x3151,0x3971,0x3150,0x3150,0x3150,0x3130,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x290F,0x292F,0x210F,0x290F,0x212F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x1911,0x1112,0x19B5,0x19D6,0x19D6,0x1975,0x1111,0x1931,0x2131,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2110,0x2130,0x1911,0x1932,0x1132,0x21D5,0x2216,0x21D6,0x1995,0x1133,0x1112,0x2131,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x290E,0x290E,0x290F,0x292F,0x210F,0x2130,0x1931,0x1952,0x1174,0x19D6,0x1A18,0x11B7,0x0975,0x0955,0x0934,0x0934,0x0934,0x0954,0x0955,0x0975,0x0976,0x09B7,0x09B7,0x09D7,0x11D7,0x11F8,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x1A18,0x2218,0x1A18,0x2238,0x2218,0x2218,0x2218,0x2238,0x2218,0x2218,0x2238,0x2238,0x2218,0x2218,0x2239,0x2239,0x2238,0x2239,0x2238,0x2238,0x2239,0x2259,0x2238,0x2259,0x2259,0x2279,0x2258,0x2259,0x2258,0x2258,0x2258,0x2A59,0x2258,0x2258,0x2237,0x21F7,0x19B5,0x1974,0x1953,0x1132,0x1911,0x1931,0x1910,0x2110,0x2130,0x210F,0x210F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x212F,0x292F,0x210F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x210F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x1910,0x1910,0x1910,0x2130,0x1930,0x1930,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x292F,0x212F,0x212F,0x210F,0x212F,0x212F, + 0x1930,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x210F,0x2130,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x292F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x212F,0x292F,0x212F,0x292F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x292F,0x212F,0x292F,0x212F,0x210F,0x210F,0x2130,0x2130,0x2131,0x2131,0x1911,0x1932,0x1133,0x1974,0x21D6,0x21F6,0x21F6,0x1995,0x1953,0x1912,0x1911,0x1911,0x1911,0x1910,0x2110,0x2130,0x2130,0x212F,0x212F,0x210F,0x212F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x290F,0x292F,0x210F,0x292F,0x210F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x28EF,0x30CE,0x384C,0xA2B4,0xB252,0xB232,0xB231,0xB1F0,0xA1CD,0xFD96,0xFDF4,0xFE13,0xFDF1,0xFDF1,0xFDF0,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDF0,0xFDF1,0xFDF2,0xFDF4,0xFDD5,0xCC11,0x89EC,0x920E,0xA290,0xB312,0xD3F6,0xDC57,0xE478,0xDC57,0xDC57,0xDC57,0xE457,0xDC36,0xDC56,0xE456,0xE436,0xE436,0xE435,0xDC54,0xE492,0xFD94,0xFDF3,0xFDF2,0xFDD1,0xFDD0,0xFDD0,0xFDD0,0xFDF0,0xFDD0,0xFDD0,0xFDCF,0xFDCF,0xFDD0,0xFDD0,0xFDD0,0xFDF0,0xFDD0,0xFDF0,0xFDF1,0xFDF1,0xFDF3,0xED33,0xBB6F,0x926D,0x9A6F,0xB312,0xC395,0xDC37,0xE478,0xE458,0xE457,0xE437,0xE437,0xE437,0xE457,0xE457,0xE457,0xE436,0xE455,0xE455,0xE473,0xF513,0xFDB3,0xFDD2,0xFDD1,0xFDD1,0xFDD0,0xFDD0,0xFDD0,0xFDD0,0xFDCF,0xFDD0,0xFDD0,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDF0,0xFDF0,0xFE11,0xFDF1,0xFDF1,0xFDD3,0xED13,0xBB8F,0x9A4D,0x9A2E,0xB2F2,0xCBB5,0xDC37,0xE478,0xE457,0xDC37,0xDC57,0xDC57,0xE457,0xE457,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xE495,0xFD97,0xFDD7,0xFDF8,0xE515,0x926D,0x922E,0x924F,0xB312,0xD416,0xDC57,0xE478,0xE478,0xE477,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xE456,0xE455,0xE455,0xE455,0xE454,0xE474,0xE474,0xE474,0xDC74,0xE494,0xE494,0xE4B4,0xECD4,0xF536,0xFD99,0x91ED,0x91EF,0x91EF,0xB313,0xE478,0xE458,0xE458,0xE457,0xE457,0xDC57,0xE457,0xE457,0xE437,0xE437,0xE457,0xE457,0xE456,0xE456,0xE456,0xDC56,0xDC55,0xDC55,0xDC34,0xD414,0xD413,0xDC34,0xE455,0xE455,0xE477,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC37,0xE457,0xE457,0xDC56,0xE456,0xE456,0xE456,0xE456,0xE456,0xDC35,0xDC53,0xE492,0xFD94,0xFDD3,0xFDD2,0xFDD1,0xFDD1,0xFDD0,0xFDD0,0xFDD0,0xFDD0,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDCF,0xFDF0,0xFDF0,0xFDF1,0xFDF2,0xFDF4,0xDCB2,0x924C,0x922E,0x9A4F,0xBB53,0xDC17,0xE478,0xE478,0xE478,0xE457,0xDC37,0xDC37,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC36,0xDC36,0xE456,0xDC35,0xE455,0xE455,0xE455,0xE474,0xE495,0xECB6,0xECB7,0xB312,0x9A50,0x9A30,0xB2D3,0xCBD6,0xDC37,0xE478,0xE457,0xDC57,0xDC37,0xDC37,0xE457,0xE436,0xE436,0xE436,0xDC36,0xDC36,0xE456,0xDC36,0xDC55,0xDC55,0xDC55,0xDC55,0xDC55,0xDC55,0xE455,0xE475,0xECB7,0xECB8,0xECB8,0xEC98,0xE477,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xDC57,0xDC57,0xDC37,0xE457,0xDC57,0xE457,0xE456,0xE456,0xE455,0xE474,0xE4B3,0xFD74,0xFDB3,0xFDD2,0xFDD1,0xFDD1,0xFDD1,0xFDD1,0xFDD0,0xFDD0,0xFDD0,0xFDD0,0xFDD0,0xFDF1,0xFDF1,0xFDF1,0xFDF2,0xFDF5,0xD472,0x9A6D,0x920D,0x9A2F,0xC374,0xDC17,0xDC37,0xDC57,0xE458,0xDC57,0xDC37,0xDC37,0xDC37,0xE457,0xE456,0xDC36,0xDC35,0xE455,0xDC34,0xDC73,0xED33,0xFDF4,0xFDD3,0xFDD3,0xFDD3,0xFDD3,0xFDF3,0xFDF3,0xFDD2,0xFDF3,0xFDF3,0xFDF3,0xFE13,0xFE13,0xFE14,0xFDF5,0xFDF6,0xFD98,0x9A10,0xA1F3,0xA1F4,0xA236,0x9A58,0x825A,0x4118,0x291A,0x215C,0x197D,0x119E,0x099E,0x019E,0x019E,0x019F,0x019F,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BE,0x019E,0x01BD,0x01DC,0x025B,0x02DA,0x147C,0x3EDF,0x2F3D,0x0EF6,0x0F53,0x0F53,0x0F53,0x1F56,0x3717,0x5EFA,0x7E3C,0x52B2,0x7233,0x79F4,0x8215,0x79D4,0x6993,0x6193,0x5993,0x5993,0x51B3,0x51B3,0x4993,0x4993,0x4993,0x4992,0x4192,0x4172,0x4172,0x3972,0x3951,0x3951,0x3951,0x3951,0x3951,0x3150,0x3130,0x3130,0x3150,0x3150,0x3150,0x2930,0x3130,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1132,0x19B5,0x19D7,0x19D7,0x1995,0x1112,0x1911,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x1931,0x1932,0x1132,0x21D5,0x2217,0x19D6,0x1174,0x1112,0x1112,0x1931,0x2130,0x2110,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x2110,0x1911,0x1932,0x1154,0x19D6,0x1A18,0x11F7,0x0996,0x0155,0x0935,0x0934,0x0934,0x0934,0x0954,0x1196,0x0997,0x11D8,0x11D8,0x11D8,0x11F8,0x19F8,0x19F8,0x2218,0x2218,0x1A18,0x1A18,0x2218,0x1A18,0x19F8,0x2218,0x2218,0x1A18,0x2238,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x21F8,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2218,0x2238,0x2238,0x2238,0x2238,0x2218,0x19F7,0x19D6,0x19B6,0x19B6,0x1195,0x1174,0x1994,0x1974,0x1973,0x1932,0x1911,0x1911,0x2130,0x2110,0x2130,0x212F,0x210F,0x210F,0x292F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x212F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F, + 0x1111,0x1931,0x1931,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x210F,0x2130,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2130,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x2130,0x210F,0x210F,0x2130,0x210F,0x212F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x292F,0x212F,0x212F,0x292F,0x212F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x212F,0x210F,0x210F,0x290F,0x210F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x210F,0x292F,0x210F,0x210F,0x212F,0x292F,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x212F,0x212F,0x210F,0x2130,0x2130,0x2151,0x2131,0x1932,0x1932,0x1133,0x1974,0x21D6,0x21F6,0x21F6,0x19B5,0x1974,0x1932,0x1911,0x1911,0x1910,0x1910,0x2110,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x28EF,0x30CE,0x386C,0xA294,0xB253,0xB232,0xB211,0xA9F0,0xA1CD,0xFD76,0xFDF4,0xFE13,0xFDF1,0xFE11,0xFDF0,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDF0,0xFE11,0xFE12,0xFE14,0xFDF5,0xCC11,0x89EC,0x920E,0xA290,0xB312,0xD3F6,0xDC57,0xE478,0xDC57,0xDC57,0xE457,0xE457,0xDC57,0xE457,0xE456,0xE456,0xE456,0xE455,0xE454,0xE492,0xFDB4,0xFDF3,0xFDF2,0xFDD1,0xFDF1,0xFDF0,0xFDF0,0xFDF0,0xFDF0,0xFDEF,0xFDEF,0xFDEF,0xFDCF,0xFDEF,0xFDEF,0xFDEF,0xFDF0,0xFDF0,0xFDF0,0xFE12,0xFE13,0xF573,0xBB8F,0x926D,0x9A6F,0xAAF2,0xC395,0xDC37,0xE478,0xE458,0xE437,0xE457,0xE458,0xE437,0xE437,0xE457,0xE436,0xDC36,0xE455,0xE455,0xE473,0xF513,0xFDD3,0xFDF2,0xFDF1,0xFDF1,0xFDF0,0xFDF0,0xFDF0,0xFDF0,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDF0,0xFE10,0xFE11,0xFE11,0xFDF3,0xED33,0xBB8F,0x9A4D,0x9A2E,0xB312,0xCBB5,0xDC37,0xE478,0xE477,0xDC37,0xDC57,0xDC57,0xDC56,0xE457,0xDC56,0xDC36,0xDC36,0xDC56,0xDC55,0xDC75,0xFDB7,0xFDD7,0xFDF7,0xFDF7,0xBBD1,0x8A2C,0x8A2D,0x924E,0xC394,0xD416,0xDC57,0xE477,0xE477,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xE456,0xDC56,0xDC56,0xDC55,0xE455,0xDC55,0xDC55,0xDC55,0xDC75,0xDC74,0xE494,0xE4B5,0xED16,0xFD99,0x89CD,0x91EF,0x91EF,0xB313,0xE478,0xE458,0xE458,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC36,0xDC56,0xDC36,0xDC36,0xDC56,0xDC36,0xDC56,0xDC36,0xDC56,0xDC55,0xE456,0xE456,0xE456,0xE457,0xE457,0xE457,0xDC37,0xDC37,0xE457,0xE457,0xDC57,0xDC57,0xE457,0xE457,0xE456,0xE456,0xE456,0xE456,0xDC55,0xDC54,0xE4B3,0xFDB4,0xFDD3,0xFDF2,0xFDF1,0xFDD0,0xFDD0,0xFDF0,0xFDCF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDCF,0xFDEF,0xFDCF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDCF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFE10,0xFE10,0xFE11,0xFE12,0xFE13,0xFDB5,0xA2CC,0x920C,0x922E,0xB2F1,0xCBD5,0xDC57,0xE498,0xE478,0xE457,0xE457,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xDC56,0xDC56,0xDC56,0xE456,0xE456,0xE456,0xE456,0xE456,0xE456,0xE456,0xE476,0xE496,0xE497,0xB312,0x9A50,0x9A30,0xAAD3,0xCBD6,0xDC37,0xE478,0xE457,0xE457,0xDC57,0xDC36,0xDC36,0xE457,0xE457,0xE436,0xE456,0xE456,0xE456,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xE456,0xE456,0xE476,0xE476,0xE476,0xE477,0xE457,0xE457,0xE457,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xDC37,0xDC37,0xE457,0xE457,0xE457,0xE457,0xE456,0xE456,0xDC55,0xDC54,0xE4B3,0xFD74,0xFDD3,0xFDD2,0xFDD1,0xFDD1,0xFDD1,0xFDD1,0xFDF1,0xFDF0,0xFDD0,0xFDF0,0xFDF0,0xFDF1,0xFE11,0xFE12,0xFE13,0xFE15,0xD472,0x9A6D,0x920D,0x922F,0xC374,0xD417,0xDC37,0xDC57,0xE458,0xE457,0xDC57,0xDC57,0xDC36,0xE456,0xE456,0xDC36,0xDC35,0xE455,0xE455,0xDC53,0xF554,0xFDF4,0xFE14,0xFDF3,0xFDF3,0xFDF2,0xFDF2,0xFDF2,0xFDF2,0xFDF3,0xFE13,0xFE13,0xFE13,0xFE13,0xFE14,0xFDF4,0xFDF6,0xFD98,0x9A30,0xA1F3,0x99F4,0x9A16,0x9A58,0x8A7A,0x4138,0x291A,0x215C,0x199D,0x119D,0x099E,0x019E,0x019E,0x019F,0x019F,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x019E,0x019E,0x01BD,0x01DC,0x025B,0x031A,0x14BC,0x3EDF,0x2F3C,0x0EF5,0x0F33,0x0F53,0x0F53,0x2756,0x3718,0x5F1B,0x75FB,0x5272,0x7234,0x81F4,0x81F5,0x7194,0x6993,0x6173,0x61B4,0x5993,0x59B3,0x51B3,0x4993,0x4972,0x4993,0x4992,0x4192,0x4192,0x4172,0x3972,0x3972,0x3971,0x3971,0x3951,0x3951,0x3150,0x3150,0x3150,0x3130,0x2930,0x2930,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210E,0x292F,0x212F,0x210F,0x210F,0x2130,0x2151,0x1931,0x1132,0x19B5,0x19D7,0x19B7,0x1995,0x1111,0x1911,0x2130,0x2130,0x2130,0x2150,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1932,0x1112,0x19B5,0x21F6,0x21D6,0x1995,0x1133,0x1112,0x1931,0x2131,0x2130,0x210F,0x212F,0x212F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x210F,0x212F,0x210F,0x292F,0x292F,0x290F,0x292F,0x290F,0x210F,0x2110,0x1910,0x1932,0x1974,0x19B6,0x11D7,0x1A18,0x11D7,0x0975,0x0955,0x0934,0x0114,0x0934,0x0975,0x11D7,0x11F8,0x11D8,0x11D8,0x11B7,0x11B6,0x1196,0x1196,0x19B6,0x1996,0x1196,0x1996,0x1195,0x1196,0x19B6,0x1195,0x1195,0x1195,0x1195,0x1195,0x1995,0x1195,0x1195,0x1195,0x1995,0x1195,0x1195,0x1175,0x1995,0x1175,0x1195,0x1195,0x1195,0x1175,0x1195,0x1175,0x1174,0x1174,0x1174,0x1174,0x1154,0x1174,0x1154,0x1134,0x1154,0x1153,0x1953,0x1953,0x1952,0x1932,0x1911,0x1911,0x2110,0x2110,0x2130,0x212F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x290F,0x290F,0x292F,0x210F,0x210F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x292F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F, + 0x19B4,0x1132,0x1932,0x1911,0x1910,0x2130,0x2110,0x2130,0x2130,0x212F,0x210F,0x210F,0x212F,0x2130,0x210F,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x2130,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x212F,0x210F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x212F,0x210F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x212F,0x212F,0x212F,0x2150,0x2130,0x1931,0x1931,0x1132,0x1153,0x1994,0x21F6,0x21F7,0x21F6,0x19B5,0x1974,0x1932,0x1911,0x1911,0x1910,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x212F,0x292F,0x292F,0x212F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x292F,0x210F,0x210F,0x290F,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x30CE,0x386C,0xA294,0xB253,0xB212,0xB211,0xA9F0,0xA1ED,0xF515,0xFDD4,0xFE13,0xFE11,0xFE11,0xFDF0,0xFE0F,0xFE0F,0xFE30,0xFE10,0xFE10,0xFE10,0xFE32,0xFE33,0xFE16,0xC3F0,0x89EC,0x920E,0xA290,0xB332,0xD3F6,0xDC78,0xE498,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xE457,0xE456,0xE456,0xE456,0xDC35,0xDC54,0xE492,0xFD94,0xFE13,0xFDF1,0xFE11,0xFDF0,0xFE10,0xFE10,0xFE10,0xFE10,0xFDF0,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDF0,0xFE10,0xFE11,0xFE33,0xF573,0xBB8F,0x926D,0x924E,0xAAF2,0xC395,0xDC37,0xE478,0xE478,0xE437,0xE457,0xE437,0xE437,0xDC37,0xE457,0xE436,0xDC36,0xE456,0xE455,0xE473,0xF533,0xFDF3,0xFE12,0xFE11,0xFE11,0xFE10,0xFDF0,0xFDEF,0xFDF0,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFE0F,0xFE0F,0xFE10,0xFE10,0xFE11,0xFDF1,0xFDF3,0xED53,0xBB8F,0x9A6D,0x9A4F,0xB312,0xCBB5,0xDC37,0xE478,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC57,0xDC56,0xDC56,0xDC36,0xDC55,0xDC74,0xF596,0xFDD6,0xFE16,0xFE16,0xF5B6,0xAB4E,0x8A0B,0x8A0D,0xA2D0,0xC3B4,0xDC37,0xE477,0xE477,0xE477,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC57,0xE457,0xDC57,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC55,0xDC55,0xDC75,0xDC75,0xDC75,0xDC75,0xE495,0xED17,0xFD9A,0x89CE,0x91EF,0x91EF,0xB313,0xE478,0xE458,0xDC57,0xDC57,0xE457,0xDC57,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC36,0xDC36,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xE456,0xE456,0xE457,0xE457,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE476,0xE476,0xE456,0xE455,0xDC35,0xDC54,0xE4B3,0xFD94,0xFDF3,0xFE12,0xFDF1,0xFDF0,0xFDF0,0xFDF0,0xFDEF,0xFDEF,0xFDEF,0xFE0F,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFDEF,0xFE0F,0xFE0F,0xFE10,0xFE10,0xFE31,0xFE31,0xFE32,0xFE34,0xD4B1,0x89EB,0x920D,0x9A6F,0xBB53,0xDC37,0xE478,0xE477,0xE457,0xE457,0xE457,0xDC57,0xDC36,0xDC37,0xDC57,0xE457,0xE457,0xE457,0xE456,0xE456,0xDC56,0xE456,0xE456,0xE456,0xE476,0xE476,0xE497,0xE477,0xB333,0x9A50,0x9A30,0xAAD2,0xCBD6,0xDC37,0xE478,0xE478,0xDC57,0xDC57,0xDC36,0xE457,0xDC57,0xE457,0xE457,0xE457,0xE456,0xE456,0xDC56,0xDC56,0xDC56,0xDC56,0xE456,0xE456,0xE456,0xE456,0xE456,0xE456,0xE456,0xE457,0xE457,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xDC57,0xE457,0xE456,0xE456,0xDC35,0xDC54,0xE492,0xFD74,0xFDD3,0xFDD2,0xFDF2,0xFDF1,0xFDF1,0xFDF1,0xFDF0,0xFE10,0xFDF0,0xFE10,0xFE10,0xFE11,0xFE11,0xFE12,0xFE12,0xFE15,0xD472,0x9A6D,0x920D,0x922F,0xC374,0xD3F6,0xDC37,0xDC57,0xE457,0xE457,0xDC57,0xDC57,0xDC57,0xE457,0xE456,0xE456,0xDC36,0xE455,0xE455,0xDC53,0xF554,0xFE14,0xFE13,0xFE13,0xFE13,0xFE13,0xFE13,0xFE12,0xFE13,0xFE12,0xFE13,0xFE33,0xFE33,0xFE33,0xFDF4,0xFDD4,0xFDD6,0xFD78,0x9A10,0x99F3,0x99F4,0x9A16,0x9A58,0x8A7A,0x3918,0x293A,0x215C,0x197D,0x117D,0x099E,0x099E,0x019E,0x019F,0x019F,0x019F,0x019F,0x01BF,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BE,0x01BE,0x01BD,0x01DC,0x025B,0x035A,0x14DC,0x3EFF,0x2F5C,0x0F15,0x0F33,0x0F53,0x0F33,0x1F56,0x3738,0x673C,0x75FB,0x5292,0x7254,0x8215,0x81F5,0x7194,0x6993,0x6193,0x6193,0x59D4,0x51B3,0x5193,0x4993,0x4993,0x4992,0x49B3,0x4192,0x4172,0x4192,0x3972,0x3971,0x3951,0x3971,0x3951,0x3951,0x3150,0x3150,0x3130,0x3130,0x3150,0x2930,0x2930,0x3130,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x210F,0x292F,0x292F,0x290F,0x292F,0x210F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2930,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x290F,0x210F,0x292F,0x292F,0x210E,0x210F,0x212F,0x212F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1132,0x19B5,0x19D7,0x19D7,0x1975,0x10F1,0x1910,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2132,0x1932,0x1112,0x19B5,0x21F6,0x19D6,0x1994,0x1133,0x1932,0x1931,0x2130,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x290F,0x210F,0x212F,0x212F,0x210F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x2110,0x2110,0x1911,0x1953,0x1195,0x19D7,0x11F8,0x11F8,0x11F7,0x0996,0x0976,0x0975,0x0975,0x19D7,0x19F8,0x1A18,0x19F8,0x11B7,0x1175,0x0934,0x1113,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1132,0x1112,0x1132,0x1132,0x1112,0x1112,0x1111,0x1111,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1112,0x1111,0x1112,0x1112,0x1112,0x1112,0x1132,0x1132,0x1132,0x1952,0x1932,0x1932,0x1932,0x10F1,0x10F1,0x18F1,0x1911,0x1931,0x2110,0x2130,0x2110,0x2130,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x212F,0x212F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x212F,0x292F,0x292F, + 0x2A57,0x1174,0x1133,0x1112,0x1931,0x2131,0x2130,0x2130,0x210F,0x2130,0x210F,0x2130,0x2130,0x212F,0x212F,0x210F,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x210F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x290F,0x292F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x292F,0x210F,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210F,0x210F,0x292F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x2130,0x2130,0x2151,0x1931,0x1131,0x1132,0x1133,0x1174,0x2217,0x21F6,0x21F6,0x21D6,0x1974,0x1932,0x1911,0x1911,0x1910,0x1910,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290F,0x292F,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x290F,0x290F,0x290F,0x28EE,0x30CE,0x386C,0xA294,0xAA53,0xB232,0xB211,0xA9F0,0xA1ED,0xECB4,0xFDD5,0xFE13,0xFE12,0xFE11,0xFE10,0xFE0F,0xFE30,0xFE30,0xFE30,0xFE30,0xFE10,0xFE32,0xFE54,0xFE36,0xC3F0,0x89EC,0x920E,0xA290,0xB332,0xD416,0xE478,0xE498,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC56,0xE456,0xE456,0xDC55,0xDC53,0xDC92,0xFD93,0xFE13,0xFE32,0xFE11,0xFE31,0xFE30,0xFE30,0xFE10,0xFE10,0xFE10,0xFE10,0xFE0F,0xFE30,0xFE30,0xFE0F,0xFE0F,0xFE10,0xFE30,0xFE31,0xFE31,0xFE33,0xED53,0xBB8F,0x924D,0x924E,0xAAF2,0xC395,0xDC37,0xE478,0xE458,0xE457,0xE457,0xDC37,0xDC37,0xE457,0xE457,0xE456,0xE456,0xE456,0xE455,0xDC73,0xF533,0xFDF3,0xFE12,0xFE11,0xFE11,0xFE10,0xFE10,0xFE10,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE10,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE10,0xFE30,0xFE31,0xFE31,0xFE33,0xF573,0xBB8F,0x9A6D,0x9A2F,0xB2F2,0xC395,0xDC37,0xDC57,0xDC57,0xE477,0xE477,0xDC57,0xDC56,0xDC56,0xDC57,0xDC56,0xDC56,0xDC56,0xDC55,0xDC74,0xF596,0xFDF5,0xFE15,0xFE35,0xFE36,0xF5B5,0x9ACC,0x8A2C,0x926E,0xB332,0xCBF5,0xDC36,0xDC77,0xE477,0xDC77,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xDC57,0xE457,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xE476,0xE456,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC76,0xDC75,0xDC96,0xED17,0xFD7A,0x89CE,0x91EF,0x91EF,0xB313,0xE478,0xE478,0xDC58,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xDC36,0xE457,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xE457,0xE457,0xE477,0xE457,0xE457,0xE456,0xE456,0xE456,0xE455,0xDC55,0xDC54,0xE4B3,0xFDB4,0xFE13,0xFE12,0xFE11,0xFE11,0xFE10,0xFE10,0xFE0F,0xFE10,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE0F,0xFE2F,0xFE30,0xFE50,0xFE51,0xFE52,0xFE53,0xFE15,0x9A8B,0x922C,0x9A4E,0xAAF1,0xD416,0xDC57,0xE457,0xE457,0xE477,0xE477,0xDC57,0xDC57,0xDC36,0xDC57,0xDC56,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xE456,0xE476,0xE476,0xE497,0xE477,0xBB33,0x9A51,0x9A31,0xAAD3,0xD3F6,0xDC37,0xE478,0xE477,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xE457,0xDC56,0xE456,0xE456,0xDC56,0xE456,0xE456,0xE456,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xE457,0xE457,0xDC57,0xE457,0xE456,0xE456,0xDC35,0xDC34,0xE492,0xFD94,0xFDF3,0xFDF2,0xFE11,0xFE11,0xFE11,0xFE11,0xFE11,0xFE31,0xFE31,0xFE11,0xFE10,0xFE11,0xFE31,0xFE32,0xFE33,0xFE35,0xD492,0x9A6D,0x920D,0x9A2F,0xC394,0xD417,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE477,0xE456,0xE456,0xE456,0xE455,0xDC55,0xDC53,0xF574,0xFE14,0xFE34,0xFE33,0xFE33,0xFE33,0xFE33,0xFE33,0xFE33,0xFE33,0xFE33,0xFE33,0xFE33,0xFE33,0xFE14,0xFE15,0xFDF6,0xFD57,0x9A10,0x99F3,0x99D4,0x9A16,0x9A58,0x8A7B,0x3918,0x293A,0x215C,0x197D,0x117D,0x097E,0x099E,0x019E,0x019F,0x019F,0x019F,0x019F,0x01BF,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BE,0x01BE,0x01BD,0x01DC,0x027B,0x039A,0x151C,0x36FF,0x2F5C,0x0F15,0x0F53,0x0F53,0x0F33,0x2756,0x3718,0x673C,0x6579,0x4A92,0x7254,0x8235,0x79D4,0x6994,0x6173,0x6193,0x5993,0x59B3,0x51B3,0x4993,0x4993,0x4992,0x4993,0x4992,0x4172,0x4172,0x4172,0x3951,0x3971,0x3971,0x3971,0x3951,0x3151,0x3150,0x3150,0x3130,0x3130,0x3130,0x2930,0x292F,0x3130,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210F,0x2110,0x210F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x290F,0x20EF,0x292F,0x292F,0x210E,0x210F,0x210F,0x212F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1112,0x1995,0x19D7,0x19B6,0x1975,0x10F1,0x1911,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x1910,0x1931,0x1932,0x1112,0x19B5,0x2217,0x21F6,0x1174,0x1132,0x1932,0x1931,0x1910,0x2110,0x2130,0x212F,0x292F,0x210F,0x292F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x290F,0x292F,0x290F,0x210F,0x210F,0x2110,0x2110,0x1911,0x1933,0x1174,0x11B6,0x19F7,0x11F8,0x11F8,0x11B7,0x11B7,0x11B7,0x11B7,0x19F7,0x19F7,0x19D7,0x11B6,0x1995,0x1134,0x1112,0x1112,0x1111,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1910,0x1910,0x1911,0x1931,0x1910,0x1910,0x1930,0x1910,0x1910,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1911,0x1910,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x1911,0x1911,0x1931,0x1911,0x1911,0x1911,0x2111,0x1910,0x2110,0x2110,0x2130,0x2930,0x2930,0x2930,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x292F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F, + 0x1A17,0x19F6,0x1174,0x1133,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x2110,0x210F,0x210F,0x212F,0x2130,0x212F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x212F,0x212F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x292F,0x210F,0x292F,0x290F,0x292F,0x292F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1132,0x1174,0x21F6,0x2217,0x2217,0x19D5,0x1153,0x1112,0x10F1,0x1911,0x1911,0x2130,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x292F,0x292F,0x212F,0x292F,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x2930,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x290F,0x292F,0x212F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x212F,0x212F,0x210F,0x292F,0x290F,0x290E,0x28EE,0x30EE,0x386C,0x9A94,0xB273,0xB232,0xB211,0xA9F0,0xA1EE,0xE493,0xFDD5,0xFE34,0xFE32,0xFE31,0xFE30,0xFE30,0xFE50,0xFE50,0xFE50,0xFE50,0xFE30,0xFE72,0xFE74,0xFE36,0xBBF0,0x89EC,0x920E,0xA290,0xB312,0xD3F6,0xE477,0xE498,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE456,0xE456,0xE456,0xDC55,0xDC53,0xE4B2,0xFDB4,0xFE33,0xFE31,0xFE31,0xFE30,0xFE30,0xFE30,0xFE2F,0xFE2F,0xFE30,0xFE30,0xFE30,0xFE30,0xFE30,0xFE30,0xFE30,0xFE50,0xFE50,0xFE51,0xFE51,0xFE53,0xED73,0xB38F,0x926D,0x9A6F,0xB312,0xC395,0xDC37,0xE478,0xE478,0xE457,0xE437,0xE457,0xE457,0xE457,0xE457,0xE456,0xE456,0xE456,0xE475,0xDC52,0xF552,0xFE13,0xFE32,0xFE31,0xFE30,0xFE30,0xFE30,0xFE30,0xFE2F,0xFE2F,0xFE30,0xFE30,0xFE2F,0xFE2F,0xFE30,0xFE2F,0xFE10,0xFE30,0xFE30,0xFE51,0xFE52,0xFE54,0xF593,0xBB8F,0x924D,0x924F,0xAAF2,0xC395,0xDC57,0xE478,0xDC57,0xDC57,0xE477,0xDC57,0xDC36,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC75,0xDC94,0xF5B5,0xFE35,0xFE34,0xFE34,0xFE54,0xFE55,0xE553,0x92AB,0x8A4C,0x926E,0xBB93,0xCC15,0xDC56,0xDC77,0xDC77,0xDC77,0xDC57,0xDC57,0xDC57,0xDC56,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC56,0xDC57,0xDC56,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xE456,0xDC56,0xDC56,0xDC56,0xDC56,0xDC76,0xDC76,0xDC96,0xED18,0xFD9B,0x89CE,0x9210,0x91EF,0xB313,0xE478,0xDC58,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xE457,0xDC37,0xE457,0xDC57,0xDC36,0xE457,0xE457,0xDC56,0xDC56,0xDC56,0xDC56,0xE457,0xDC36,0xDC57,0xDC36,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC56,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xE456,0xDC56,0xDC55,0xDC55,0xDC53,0xE4B2,0xFDB4,0xFE13,0xFE32,0xFE11,0xFE30,0xFE30,0xFE30,0xFE30,0xFE30,0xFE30,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE2F,0xFE50,0xFE50,0xFE51,0xFE51,0xFE52,0xFE54,0xDCB1,0x926B,0x924D,0x9A6E,0xC393,0xDC56,0xE477,0xE477,0xE477,0xE477,0xE457,0xDC57,0xDC56,0xDC56,0xDC56,0xDC36,0xDC56,0xE457,0xE457,0xDC56,0xE456,0xE456,0xDC56,0xE476,0xE476,0xE497,0xE477,0xBB33,0x9A50,0x9A30,0xB2F3,0xD3F7,0xDC57,0xE478,0xE477,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC36,0xDC56,0xDC57,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xE457,0xDC56,0xDC56,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC36,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC37,0xE457,0xE457,0xE457,0xE456,0xE456,0xDC55,0xDC54,0xE4B3,0xFDB4,0xFE13,0xFE12,0xFE11,0xFE11,0xFE31,0xFE31,0xFE31,0xFE31,0xFE31,0xFE31,0xFE30,0xFE31,0xFE31,0xFE52,0xFE32,0xFE55,0xDCB2,0x9A6D,0x920D,0x9A4F,0xC395,0xD416,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC57,0xE477,0xE476,0xDC56,0xDC36,0xE455,0xDC35,0xDC53,0xF574,0xFE35,0xFE34,0xFE53,0xFE53,0xFE33,0xFE32,0xFE53,0xFE33,0xFE53,0xFE53,0xFE33,0xFE53,0xFE54,0xFE55,0xFE36,0xFE17,0xECF6,0x9A10,0x99D3,0xA1F5,0x9A16,0x9A58,0x825A,0x3918,0x293A,0x215C,0x197D,0x117D,0x099E,0x099E,0x099E,0x019E,0x019F,0x019F,0x019E,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BE,0x01BE,0x01DD,0x01DB,0x027A,0x03FB,0x1D7C,0x36FF,0x2F7C,0x0F15,0x0F33,0x0F53,0x0F33,0x2777,0x3F39,0x5F3C,0x5D38,0x4AB3,0x7274,0x8255,0x71B4,0x6994,0x6194,0x5973,0x61B4,0x59B3,0x5193,0x5193,0x4973,0x4972,0x4993,0x4992,0x4992,0x4172,0x3971,0x3951,0x3951,0x3951,0x3971,0x3951,0x3151,0x3130,0x3130,0x3130,0x3150,0x3130,0x3130,0x3150,0x3130,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x212F,0x212F,0x290F,0x290F,0x210F,0x210F,0x2930,0x2930,0x210F,0x212F,0x210F,0x212F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x210F,0x212F,0x210E,0x210F,0x210F,0x210F,0x210E,0x210F,0x2130,0x2130,0x1931,0x1132,0x1995,0x19D7,0x19D7,0x1195,0x1111,0x1910,0x2130,0x210F,0x2130,0x212F,0x212F,0x212F,0x2130,0x2130,0x2131,0x1931,0x1932,0x1112,0x19B5,0x21F6,0x21F6,0x1995,0x1132,0x1932,0x1931,0x2130,0x2130,0x2110,0x212F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x212F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x210F,0x2110,0x1910,0x1932,0x1133,0x1154,0x1196,0x19D7,0x19F8,0x19D7,0x11B7,0x11B6,0x11B6,0x1196,0x19B5,0x1995,0x1174,0x1954,0x1132,0x1111,0x1911,0x1910,0x1910,0x2151,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2150,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2131,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x1910,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2130,0x210F,0x2930,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F, + 0x11B6,0x19F7,0x19D6,0x1174,0x1153,0x1932,0x1932,0x2131,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x210F,0x212F,0x212F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x210F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1132,0x1152,0x1174,0x21F6,0x2217,0x21F6,0x19B5,0x1974,0x1953,0x1111,0x10F1,0x1911,0x1910,0x2130,0x2130,0x210F,0x2130,0x212F,0x210F,0x212F,0x210E,0x212E,0x210E,0x210E,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x212F,0x292F,0x290F,0x290E,0x28EE,0x30EE,0x386C,0x9A94,0xB273,0xB232,0xAA11,0xA9F1,0xA1EE,0xE493,0xFDF5,0xFE34,0xFE52,0xFE51,0xFE51,0xFE50,0xFE50,0xFE4F,0xFE50,0xFE50,0xFE71,0xFE92,0xFE74,0xFE56,0xBBF0,0x8A0C,0x922E,0xA290,0xB312,0xD3F6,0xE477,0xE477,0xE457,0xE457,0xE457,0xDC57,0xDC57,0xE457,0xE456,0xDC36,0xE455,0xE455,0xDC53,0xDCB2,0xFDD4,0xFE33,0xFE52,0xFE51,0xFE50,0xFE50,0xFE2F,0xFE2F,0xFE2F,0xFE4F,0xFE50,0xFE4F,0xFE4F,0xFE50,0xFE2F,0xFE2F,0xFE50,0xFE71,0xFE71,0xFE72,0xFE53,0xED93,0xB38E,0x926D,0x924E,0xAB12,0xC394,0xDC37,0xE458,0xE458,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xE456,0xE456,0xE455,0xDC54,0xDC52,0xF593,0xFE32,0xFE32,0xFE31,0xFE30,0xFE30,0xFE30,0xFE30,0xFE30,0xFE50,0xFE50,0xFE30,0xFE30,0xFE30,0xFE30,0xFE2F,0xFE30,0xFE30,0xFE50,0xFE71,0xFE72,0xFE54,0xED93,0xB36E,0x924D,0x922E,0xAAF2,0xC3B5,0xDC57,0xE478,0xE457,0xDC57,0xDC57,0xDC36,0xDC56,0xE457,0xDC56,0xDC56,0xDC56,0xDC55,0xDC55,0xDC94,0xF5D5,0xFE55,0xFE54,0xFE54,0xFE73,0xFE54,0xFE55,0xE553,0x928B,0x8A6C,0x9AAF,0xC3D4,0xD415,0xDC56,0xDC77,0xDC77,0xDC77,0xDC77,0xDC56,0xDC77,0xDC77,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xE477,0xDC56,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC76,0xDC76,0xE496,0xECF8,0xFD9B,0x89CE,0x9A10,0x91EF,0xB313,0xE478,0xDC78,0xDC78,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC36,0xDC36,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC55,0xDC55,0xDC53,0xDC92,0xFDB4,0xFE13,0xFE32,0xFE51,0xFE51,0xFE50,0xFE50,0xFE50,0xFE50,0xFE50,0xFE50,0xFE50,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE2F,0xFE4F,0xFE2F,0xFE2F,0xFE4F,0xFE2F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE2F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE70,0xFE70,0xFE71,0xFE71,0xFE53,0xFE14,0xB38D,0x924B,0x924D,0xA2CF,0xD435,0xDC77,0xE477,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xDC57,0xDC36,0xDC56,0xDC36,0xDC57,0xDC56,0xDC56,0xE457,0xDC57,0xE477,0xDC76,0xE477,0xE497,0xE477,0xBB53,0x9A50,0x9A30,0xB2F3,0xCBD6,0xDC57,0xE478,0xE477,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC36,0xDC36,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC36,0xDC36,0xDC57,0xDC36,0xDC57,0xDC57,0xDC56,0xDC56,0xDC56,0xDC57,0xDC57,0xDC37,0xDC57,0xE457,0xDC37,0xDC37,0xDC37,0xDC36,0xDC56,0xDC36,0xDC55,0xDC55,0xDC54,0xE4B3,0xFDB4,0xFE13,0xFE32,0xFE31,0xFE31,0xFE31,0xFE31,0xFE31,0xFE30,0xFE30,0xFE50,0xFE51,0xFE51,0xFE51,0xFE52,0xFE73,0xFE55,0xDCD3,0x9A6C,0x920D,0x922F,0xC374,0xD416,0xDC57,0xE477,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE477,0xE476,0xDC36,0xDC35,0xDC35,0xDC35,0xDC53,0xF594,0xFE35,0xFE54,0xFE53,0xFE53,0xFE52,0xFE52,0xFE53,0xFE53,0xFE53,0xFE53,0xFE74,0xFE54,0xFE54,0xFE75,0xFE56,0xFE18,0xDC75,0x99F1,0xA1F3,0xA1F5,0xA237,0x9A58,0x823A,0x38F8,0x291A,0x215B,0x197D,0x117D,0x097E,0x099E,0x099E,0x019E,0x019F,0x019F,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BE,0x01BE,0x01DD,0x01FB,0x029A,0x0C5B,0x1DBD,0x2EFE,0x2F5B,0x0F15,0x0F33,0x0F33,0x0F33,0x2777,0x3739,0x5F1C,0x4CF7,0x4AD3,0x7295,0x7A15,0x6994,0x6994,0x6193,0x61B4,0x59B4,0x5193,0x5193,0x4993,0x4993,0x4993,0x4972,0x4172,0x4172,0x4172,0x3971,0x3971,0x3951,0x3951,0x3951,0x3951,0x3130,0x3150,0x3150,0x3130,0x3130,0x3130,0x3130,0x2930,0x2930,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x292F,0x210F,0x210F,0x290F,0x292F,0x290F,0x210F,0x210F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1112,0x1995,0x19D7,0x19D7,0x1995,0x1111,0x1910,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x1930,0x1931,0x1932,0x1112,0x1995,0x21F7,0x21F6,0x1995,0x1112,0x1932,0x2151,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x2110,0x2110,0x1911,0x1932,0x1133,0x1154,0x1175,0x19D6,0x11B6,0x1196,0x1195,0x1995,0x1174,0x1154,0x1153,0x1132,0x1932,0x1932,0x1931,0x1931,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x2110,0x2130,0x2130,0x210F,0x2110,0x2110,0x210F,0x20EF,0x2110,0x2110,0x2130,0x210F,0x2930,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x212F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x292F,0x292F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F, + 0x1195,0x11D6,0x11B6,0x19D6,0x1195,0x1133,0x1132,0x1932,0x1931,0x2131,0x2130,0x2930,0x2130,0x2130,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x210F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x210F,0x290F,0x210F,0x290F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x212F,0x292F,0x292F,0x210F,0x212F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1911,0x1132,0x1153,0x1194,0x21F6,0x2217,0x21F6,0x19B5,0x1953,0x1132,0x1111,0x1911,0x1911,0x1910,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x210E,0x210E,0x210E,0x292F,0x290E,0x290E,0x290E,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290E,0x30EE,0x388C,0x9253,0xAA93,0xB252,0xAA12,0xA9F1,0xA1EE,0xD412,0xFDF6,0xFE54,0xFE73,0xFE72,0xFE71,0xFE70,0xFE70,0xFE4F,0xFE6F,0xFE70,0xFE91,0xFE92,0xFE94,0xFE76,0xBBEF,0x8A2C,0x922E,0xA290,0xB332,0xD416,0xE477,0xE477,0xE457,0xE457,0xE457,0xE457,0xDC57,0xE457,0xE456,0xE456,0xE455,0xDC35,0xDC53,0xDCB1,0xFDF4,0xFE53,0xFE71,0xFE71,0xFE70,0xFE50,0xFE50,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE50,0xFE70,0xFE71,0xFE72,0xFE73,0xF5B4,0xB36E,0x8A4C,0x8A0D,0xAAD1,0xC3B5,0xDC57,0xE458,0xE458,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xE457,0xE456,0xE456,0xDC55,0xDC54,0xDC52,0xF593,0xFE32,0xFE51,0xFE51,0xFE50,0xFE50,0xFE50,0xFE50,0xFE50,0xFE50,0xFE50,0xFE50,0xFE50,0xFE50,0xFE50,0xFE4F,0xFE50,0xFE50,0xFE70,0xFE71,0xFE72,0xFE74,0xED93,0xB38E,0x924D,0x924F,0xB312,0xCBB5,0xE458,0xE478,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xDC36,0xDC55,0xDC55,0xD473,0xF5D4,0xFE54,0xFE74,0xFE73,0xFE73,0xFE73,0xFE74,0xFE75,0xDD12,0x92AB,0x926C,0x9A8E,0xC3B3,0xD435,0xDC56,0xDC56,0xDC76,0xDC77,0xDC77,0xDC77,0xDC57,0xDC56,0xDC56,0xDC56,0xDC57,0xDC56,0xDC56,0xDC56,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xE476,0xE476,0xDC76,0xDC76,0xE496,0xF539,0xFD9B,0x89CE,0x9210,0x91EF,0xB2F3,0xE478,0xDC78,0xDC77,0xDC57,0xDC57,0xDC37,0xDC37,0xDC57,0xDC37,0xE457,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xE457,0xE456,0xDC56,0xDC36,0xDC57,0xDC36,0xDC57,0xDC57,0xDC57,0xDC37,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC57,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC55,0xDC53,0xE4B2,0xFDD4,0xFE33,0xFE32,0xFE51,0xFE71,0xFE71,0xFE50,0xFE50,0xFE70,0xFE50,0xFE4F,0xFE50,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE6F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE4F,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE70,0xFE70,0xFE90,0xFE91,0xFE92,0xFE73,0xF5F4,0x928A,0x8A4B,0x924D,0xA2D0,0xD456,0xDC56,0xDC76,0xDC76,0xDC76,0xE477,0xE477,0xDC56,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC57,0xDC77,0xE477,0xE497,0xDC77,0xBB53,0x9A50,0x9A10,0xAAD2,0xCBB6,0xDC57,0xE478,0xE478,0xDC57,0xDC57,0xDC57,0xDC57,0xDC37,0xDC36,0xDC36,0xDC57,0xDC36,0xDC57,0xDC56,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC57,0xDC56,0xDC56,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xDC36,0xDC57,0xE457,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xDC56,0xDC35,0xDC35,0xDC54,0xE4B2,0xFDD4,0xFE33,0xFE32,0xFE52,0xFE51,0xFE51,0xFE51,0xFE51,0xFE30,0xFE51,0xFE51,0xFE71,0xFE71,0xFE71,0xFE72,0xFE93,0xFE75,0xDCD3,0x926C,0x8A0D,0x920E,0xBB74,0xD416,0xDC57,0xE477,0xE477,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xE456,0xDC35,0xDC56,0xDC55,0xDC55,0xD453,0xF594,0xFE55,0xFE74,0xFE73,0xFE53,0xFE52,0xFE53,0xFE53,0xFE53,0xFE73,0xFE73,0xFE74,0xFE74,0xFE75,0xFE75,0xFE57,0xFDF8,0xCBD4,0x99D1,0xA1F4,0xA215,0xA237,0x9A58,0x8239,0x4118,0x291A,0x215B,0x195C,0x197D,0x117E,0x097E,0x099E,0x019E,0x019F,0x019F,0x019F,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BE,0x01BE,0x01BE,0x01DD,0x01FB,0x029A,0x147C,0x1DFD,0x2EFE,0x275B,0x0F15,0x0F33,0x0F53,0x0F34,0x2797,0x3F7A,0x56FC,0x44D8,0x4AD4,0x6A96,0x61D4,0x6173,0x6194,0x61B4,0x61B4,0x59D4,0x51B3,0x5193,0x4993,0x4993,0x4992,0x4172,0x4192,0x4192,0x4172,0x3951,0x3971,0x3951,0x3951,0x3951,0x3951,0x3151,0x3130,0x3130,0x3150,0x3150,0x3130,0x3130,0x2930,0x3130,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x212F,0x292F,0x210F,0x210F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x210F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x1931,0x1112,0x1995,0x19D7,0x19D6,0x1174,0x1111,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2130,0x1930,0x1931,0x1932,0x1112,0x19B5,0x2A17,0x21F7,0x1974,0x1112,0x1932,0x1951,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x290F,0x292F,0x290F,0x292F,0x292F,0x210F,0x2110,0x2110,0x1911,0x1911,0x1932,0x1153,0x1974,0x1994,0x1974,0x1994,0x1973,0x1132,0x1932,0x1911,0x1911,0x1931,0x1931,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2930,0x210F,0x210F,0x212F,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x2910,0x2910,0x210F,0x2930,0x210F,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210E,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210E,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x292F,0x210E,0x292F,0x210F,0x292F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F, + 0x0975,0x1195,0x19D6,0x19F7,0x19F6,0x1195,0x1153,0x1112,0x1931,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x212F,0x210F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x210F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x292F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x292F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x210F,0x212F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x2130,0x2110,0x2130,0x1931,0x1931,0x1111,0x1132,0x19B4,0x21F6,0x2217,0x2216,0x19B5,0x1153,0x1112,0x1111,0x1911,0x1911,0x2131,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210E,0x292F,0x292F,0x290E,0x290E,0x290E,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x290F,0x292F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290E,0x30EE,0x388C,0x8A12,0xAA94,0xAA53,0xAA32,0xA9F1,0xA1EF,0xBB2F,0xFDD7,0xFE34,0xFE73,0xFE72,0xFE71,0xFE91,0xFE90,0xFE6F,0xF66F,0xFE90,0xFEB1,0xFEB2,0xFE94,0xFE96,0xBBEF,0x8A2B,0x922E,0x9A8F,0xB312,0xD416,0xE477,0xE477,0xE477,0xE457,0xE457,0xE457,0xE457,0xDC56,0xDC56,0xE456,0xDC35,0xDC34,0xDC33,0xDCB1,0xFDF4,0xFE52,0xFE71,0xFE71,0xFE70,0xFE70,0xFE70,0xFE6F,0xFE6F,0xFE70,0xFE70,0xFE6F,0xFE6F,0xFE6F,0xFE4F,0xFE6F,0xFE70,0xFE70,0xFE91,0xFE92,0xFE94,0xEDB3,0xB36E,0x924C,0x922E,0xAAF1,0xC3B5,0xDC57,0xE458,0xE458,0xE457,0xDC37,0xE457,0xDC57,0xE457,0xE456,0xE456,0xDC56,0xDC55,0xDC34,0xDC52,0xF5B3,0xFE53,0xFE51,0xFE71,0xFE50,0xFE50,0xFE50,0xFE50,0xFE70,0xFE70,0xFE50,0xFE50,0xFE70,0xFE50,0xFE4F,0xFE4F,0xFE50,0xFE70,0xFE70,0xFE91,0xFE92,0xFE94,0xF5B4,0xB36E,0x924D,0x9A4F,0xB312,0xCBD5,0xE458,0xE458,0xDC57,0xDC57,0xDC57,0xE457,0xDC57,0xDC56,0xDC56,0xDC56,0xDC36,0xDC35,0xDC75,0xD473,0xFDF4,0xFE54,0xFE73,0xFE73,0xFE93,0xFE93,0xFE93,0xFE94,0xFE75,0xE552,0x92AB,0x926C,0x9A8E,0xBB92,0xD456,0xDC76,0xDC76,0xDC76,0xDC76,0xDC76,0xDC77,0xDC77,0xDC76,0xDC77,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xE456,0xE476,0xE476,0xE476,0xE4B7,0xF539,0xFD9B,0x89CE,0x920F,0x91EF,0xB2F2,0xE498,0xDC77,0xDC77,0xDC57,0xDC57,0xDC57,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC37,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC57,0xDC56,0xDC36,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC77,0xE477,0xDC56,0xDC56,0xDC55,0xDC55,0xDC53,0xDCD2,0xFDF4,0xFE53,0xFE52,0xFE71,0xFE71,0xFE70,0xFE70,0xFE70,0xFE70,0xFE70,0xFE70,0xFE6F,0xFE70,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE4F,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE6F,0xFE90,0xFEB0,0xFE90,0xFEB1,0xFE91,0xFE92,0xFE94,0xDD32,0x8A8A,0x926C,0x924D,0xB351,0xD456,0xDC76,0xDC56,0xDC76,0xDC56,0xDC56,0xDC77,0xDC57,0xE477,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC77,0xE497,0xDC57,0xBB54,0x9A50,0x9A30,0xAAD2,0xCBD6,0xDC57,0xE477,0xDC77,0xDC77,0xDC57,0xDC37,0xDC36,0xDC36,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xE457,0xDC56,0xDC36,0xDC56,0xDC56,0xDC35,0xDC55,0xDC53,0xE4B2,0xFDD4,0xFE53,0xFE52,0xFE72,0xFE71,0xFE71,0xFE71,0xFE71,0xFE70,0xFE70,0xFE71,0xFE71,0xFE91,0xFE92,0xFE92,0xFE93,0xFE95,0xDCF3,0x926C,0x8A0D,0x920E,0xBB74,0xD416,0xDC57,0xDC57,0xDC57,0xE477,0xE457,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC35,0xDC55,0xDC55,0xD453,0xFDD5,0xFE74,0xFE74,0xFE73,0xFE73,0xFE73,0xFE73,0xFE73,0xFE73,0xFE73,0xFE73,0xFE94,0xFE94,0xFE75,0xFE96,0xFE77,0xFDD9,0xBB12,0x99F1,0xA1F4,0xA215,0xA237,0x9A58,0x8219,0x4118,0x311A,0x293B,0x215C,0x195D,0x117E,0x119E,0x097E,0x099E,0x019F,0x019F,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01DF,0x01DF,0x01DE,0x01BD,0x01DD,0x01FB,0x029A,0x149C,0x261D,0x26DD,0x275B,0x0F15,0x0F53,0x0F73,0x0F34,0x2797,0x377A,0x46BB,0x44F8,0x42F4,0x6296,0x59D4,0x6194,0x6194,0x61B4,0x59D4,0x59B4,0x51B3,0x51B3,0x51B3,0x4993,0x4972,0x4972,0x4172,0x4172,0x4171,0x3971,0x3971,0x3951,0x3951,0x3951,0x3951,0x3130,0x3150,0x3150,0x3150,0x2930,0x3130,0x3130,0x3130,0x2930,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210E,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x2130,0x1911,0x1112,0x1995,0x19D6,0x19B6,0x1995,0x1111,0x1930,0x2130,0x2110,0x2130,0x2130,0x212F,0x212F,0x2150,0x2130,0x1930,0x1931,0x1111,0x1132,0x21B5,0x21D6,0x21F6,0x1995,0x1112,0x1932,0x2151,0x2151,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x290F,0x292F,0x290F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x2110,0x2110,0x1910,0x1911,0x1931,0x1132,0x1952,0x1952,0x1952,0x1952,0x1932,0x1931,0x1931,0x1930,0x1910,0x2130,0x2130,0x2130,0x2950,0x2130,0x212F,0x210F,0x210F,0x210F,0x20EE,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x20EF,0x210F,0x292F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x2930,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210E,0x290F,0x292F,0x210E,0x292F,0x290F,0x210F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x292F,0x292F, + 0x0934,0x0954,0x11B6,0x19D6,0x19F7,0x19D6,0x1175,0x1133,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x292F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x212F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x290F,0x292F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x290F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x2930,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x2110,0x2130,0x1931,0x1931,0x1132,0x1132,0x19B5,0x21F6,0x21F6,0x21F6,0x19B5,0x1973,0x1132,0x1111,0x1910,0x1910,0x2130,0x2951,0x2110,0x2110,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210E,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x292F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x28EE,0x30EE,0x388D,0x79D1,0xAA94,0xAA53,0xAA32,0xA9F1,0xA1EF,0xAA6E,0xFD56,0xFE35,0xFE73,0xFE92,0xFE91,0xFEB1,0xFEB0,0xFE90,0xFE90,0xFE90,0xFEB1,0xFEB2,0xFEB4,0xFE96,0xBC0F,0x8A2B,0x8A2D,0x9A6F,0xAB11,0xD436,0xDC77,0xE477,0xE477,0xDC57,0xDC57,0xDC56,0xDC56,0xE456,0xDC56,0xE456,0xE455,0xDC34,0xDC53,0xDCB1,0xFE14,0xFE73,0xFE91,0xFE91,0xFE90,0xFE70,0xFE70,0xFE90,0xFE90,0xFE6F,0xFE90,0xFE6F,0xFE6F,0xFE90,0xFE6F,0xFE70,0xFE90,0xFE90,0xFE91,0xFEB2,0xFE94,0xF5D4,0xB38E,0x926D,0x926E,0xB312,0xCBD5,0xDC57,0xE457,0xE477,0xE457,0xE457,0xDC57,0xE457,0xE457,0xDC56,0xE477,0xE456,0xDC55,0xDC54,0xD452,0xF5B3,0xFE52,0xFE71,0xFE71,0xFE70,0xFE70,0xFE70,0xFE70,0xFE70,0xFE70,0xFE70,0xFE70,0xFE70,0xFE6F,0xFE70,0xFE70,0xFE70,0xFE70,0xFE90,0xFE91,0xFEB2,0xFE93,0xF5D4,0xB36E,0x924D,0x922E,0xAAF2,0xCBD5,0xE457,0xE457,0xE457,0xE457,0xE457,0xE457,0xDC56,0xDC56,0xDC56,0xDC56,0xDC36,0xDC55,0xDC54,0xDC73,0xF5D4,0xFE53,0xFE73,0xFE72,0xFE92,0xFE92,0xFE92,0xFE92,0xFE93,0xFE95,0xF5D4,0xA32C,0x926B,0x924C,0xAB30,0xC3D3,0xD455,0xD455,0xDC76,0xDC76,0xDC76,0xDC76,0xDC76,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC36,0xDC36,0xDC56,0xDC56,0xDC56,0xDC56,0xE456,0xE476,0xDC76,0xE496,0xF538,0xFD9B,0x89CD,0x920F,0x91EF,0xAAD2,0xE498,0xDC77,0xDC77,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xDC56,0xDC36,0xDC37,0xDC37,0xDC37,0xDC37,0xDC57,0xDC56,0xDC56,0xDC56,0xDC76,0xDC56,0xDC56,0xDC76,0xDC76,0xDC56,0xDC55,0xDC55,0xDC53,0xE4F2,0xFE14,0xFE73,0xFE72,0xFE71,0xFE71,0xFE70,0xFE70,0xFE70,0xFE90,0xFE70,0xFE70,0xFE70,0xFE6F,0xFE6F,0xFE90,0xFE6F,0xFE6F,0xFE8F,0xFE6F,0xFE8F,0xFE8F,0xFE6F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE90,0xFEB0,0xFEB0,0xFEB0,0xFEB1,0xFEB1,0xFEB2,0xFEB4,0xD510,0x8A8A,0x926C,0x928D,0xBB72,0xDC56,0xDC56,0xDC56,0xDC76,0xDC76,0xDC76,0xDC56,0xDC56,0xDC56,0xDC56,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xDC77,0xE497,0xDC57,0xBB54,0x9A30,0x9A30,0xAAD2,0xCBF6,0xE478,0xDC77,0xDC77,0xDC77,0xDC57,0xDC36,0xDC36,0xDC56,0xDC56,0xDC56,0xDC56,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xDC57,0xDC57,0xDC57,0xDC56,0xDC57,0xDC57,0xDC56,0xDC56,0xDC56,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC55,0xDC55,0xDC73,0xDCD2,0xFDF4,0xFE53,0xFE72,0xFE72,0xFE71,0xFE71,0xFE71,0xFE71,0xFE70,0xFE70,0xFE70,0xFE91,0xFE91,0xFEB2,0xFEB2,0xFEB3,0xFE95,0xDCF3,0x8A4B,0x8A0D,0x920E,0xC374,0xD416,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC55,0xDC55,0xDC54,0xD452,0xFDF5,0xFE74,0xFE93,0xFE93,0xFE93,0xFE93,0xFE93,0xFE93,0xFE93,0xFE93,0xFE94,0xFE94,0xFE95,0xFE95,0xFE96,0xFE58,0xFD59,0xAA51,0xA1F2,0xA1F4,0xA1F5,0xA216,0x9A38,0x79D8,0x48F7,0x3919,0x313B,0x295C,0x215C,0x197D,0x117E,0x099E,0x099E,0x019F,0x019F,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01DF,0x01DF,0x01DE,0x01DE,0x01DD,0x01DC,0x01FB,0x02BA,0x149B,0x1DFC,0x26FD,0x275A,0x0F15,0x0733,0x0F74,0x0F55,0x27B8,0x2F5A,0x3E9B,0x457A,0x4BB7,0x5AF6,0x51F4,0x59D4,0x5993,0x59D4,0x59D4,0x51B4,0x5193,0x4993,0x4993,0x4993,0x4993,0x4172,0x4172,0x4192,0x3971,0x3971,0x3971,0x3971,0x3971,0x3951,0x3151,0x3150,0x3130,0x3130,0x3150,0x3130,0x3130,0x3130,0x3130,0x2930,0x3130,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2130,0x1911,0x1112,0x19B5,0x19D7,0x19D6,0x1975,0x1111,0x1910,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x2150,0x1931,0x1932,0x1112,0x21B5,0x29F6,0x21D6,0x1974,0x1112,0x1912,0x2151,0x1910,0x2110,0x210F,0x210F,0x212F,0x212F,0x292F,0x212F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x2110,0x2130,0x2110,0x1910,0x1911,0x1931,0x1931,0x1951,0x2151,0x2131,0x2130,0x2110,0x2110,0x2110,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x290F,0x290F,0x210F,0x292F,0x212F,0x212F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x210F,0x210F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290E,0x210E,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x210E,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F, + 0x1154,0x1154,0x1154,0x1995,0x19D6,0x19D6,0x19D6,0x1195,0x1133,0x1132,0x1931,0x2131,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x290F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x292F,0x210F,0x210F,0x212F,0x2130,0x2110,0x1931,0x1111,0x1132,0x1133,0x1994,0x21F6,0x21F6,0x21F6,0x19B5,0x1973,0x1132,0x1111,0x1911,0x2110,0x2130,0x2130,0x2930,0x2110,0x212F,0x210F,0x210F,0x210F,0x210E,0x210E,0x292F,0x210E,0x292F,0x292F,0x292F,0x210E,0x290E,0x290F,0x290E,0x292F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x290F,0x290F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290E,0x30EE,0x38AD,0x612F,0xA2B4,0xAA53,0xAA32,0xAA11,0xA1CF,0xA20E,0xE474,0xFE36,0xFE74,0xFE92,0xFE92,0xFEB1,0xFEB1,0xFEB0,0xFEB0,0xFEB0,0xFEB1,0xFEB2,0xFEB3,0xFE95,0xB3EE,0x822B,0x8A2D,0x9A6E,0xB311,0xD415,0xDC76,0xDC77,0xDC56,0xDC56,0xDC56,0xE456,0xDC36,0xE456,0xDC36,0xE455,0xDC35,0xDC34,0xDC52,0xDCB1,0xFE14,0xFE72,0xFE91,0xFE91,0xFE90,0xFE90,0xFE90,0xFE90,0xFE90,0xFE90,0xFE90,0xFE90,0xFE8F,0xFE8F,0xFE90,0xFE90,0xFE90,0xFEB0,0xFEB1,0xFEB2,0xFEB3,0xF5F4,0xAB6D,0x9A8D,0x926E,0xAAF1,0xCBD5,0xDC57,0xDC57,0xDC57,0xDC57,0xE457,0xE457,0xE457,0xE477,0xE477,0xE476,0xE456,0xDC55,0xDC54,0xD451,0xF5D3,0xFE52,0xFE71,0xFE70,0xFE70,0xFE70,0xFE70,0xFE70,0xFE70,0xFE6F,0xFE6F,0xFE90,0xFE90,0xFE70,0xFE90,0xFE8F,0xFE90,0xFE90,0xFEB0,0xFEB1,0xFEB2,0xFE93,0xF5F4,0xAB4D,0x924C,0x922E,0xAAF1,0xCBD5,0xDC57,0xE477,0xE477,0xDC56,0xE457,0xE457,0xE456,0xDC56,0xDC56,0xDC56,0xDC56,0xDC55,0xDC54,0xD472,0xF5D3,0xFE53,0xFE72,0xFE92,0xFE92,0xFE92,0xFEB2,0xFE92,0xFEB2,0xFE93,0xFE94,0xFE34,0xC450,0x8A6A,0x9A8C,0xA2CE,0xBB71,0xD455,0xDC76,0xDC76,0xDC76,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xE456,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC76,0xE496,0xF558,0xFD9A,0x89CD,0x9A0F,0x91EF,0xA291,0xE4B8,0xDC77,0xDC57,0xDC57,0xDC57,0xDC36,0xDC37,0xDC37,0xDC37,0xDC36,0xDC37,0xDC36,0xDC57,0xDC36,0xDC36,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xDC57,0xDC56,0xDC36,0xDC36,0xDC36,0xDC36,0xDC57,0xDC37,0xDC36,0xDC36,0xDC56,0xDC56,0xDC76,0xDC56,0xDC76,0xDC56,0xDC56,0xDC56,0xDC56,0xDC55,0xDC54,0xDC73,0xE4F2,0xFE34,0xFE73,0xFE92,0xFE91,0xFE91,0xFE90,0xFE90,0xFE90,0xFE90,0xFE90,0xFEB0,0xFE90,0xFE90,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFE8F,0xFEAF,0xFEAF,0xFE8F,0xFE8F,0xFEAF,0xFEAF,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED1,0xFED1,0xFEB1,0xFEB2,0xFE94,0xDD52,0x8AAA,0x92AC,0x9A8D,0xB351,0xDC76,0xDC76,0xDC76,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC57,0xDC57,0xDC56,0xDC56,0xDC77,0xE497,0xDC36,0xBB74,0x9A30,0x9A30,0xAAD2,0xCBD5,0xDC77,0xE477,0xDC77,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC57,0xDC56,0xDC56,0xDC56,0xDC36,0xDC36,0xDC56,0xDC56,0xDC56,0xDC36,0xDC36,0xDC36,0xDC36,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC55,0xDC55,0xDC54,0xDC73,0xDCD2,0xFE14,0xFE73,0xFE92,0xFE91,0xFE91,0xFE91,0xFE91,0xFE91,0xFE91,0xFE91,0xFE91,0xFE91,0xFE91,0xFEB2,0xFEB2,0xFEB3,0xFE95,0xDD13,0x8A4B,0x8A0D,0x920E,0xBB74,0xD416,0xDC57,0xDC57,0xDC57,0xDC57,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC55,0xDC35,0xDC34,0xD432,0xFE35,0xFE94,0xFEB3,0xFEB3,0xFEB3,0xFEB3,0xFE93,0xFE93,0xFEB4,0xFEB4,0xFE94,0xFE94,0xFE95,0xFE96,0xFE77,0xFE5A,0xBB32,0xA211,0xA1F3,0xA1F4,0xA1F5,0xA216,0x9A18,0x79D8,0x50F7,0x4119,0x413A,0x313B,0x293B,0x213C,0x197D,0x117E,0x099E,0x099F,0x019F,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01DF,0x01DF,0x01DF,0x01DF,0x01DE,0x01DD,0x01DC,0x01FB,0x02BA,0x14BB,0x1E1C,0x26DC,0x275A,0x0F14,0x0753,0x0F74,0x0F55,0x1F98,0x2F7A,0x369B,0x3D9A,0x64BA,0x5316,0x5235,0x59D4,0x59F4,0x59D4,0x51B4,0x51B3,0x51B3,0x4993,0x4993,0x4993,0x4992,0x4172,0x4192,0x4172,0x4171,0x3971,0x3971,0x3951,0x3951,0x3951,0x3151,0x3150,0x3130,0x3150,0x3130,0x3130,0x3130,0x3130,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x290F,0x292F,0x290F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x290F,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x212F,0x292F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1112,0x19B5,0x19D6,0x19B6,0x1174,0x1111,0x1931,0x2130,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x1931,0x1132,0x1112,0x21B5,0x21F6,0x21D6,0x1995,0x10F2,0x1911,0x2131,0x2130,0x210F,0x212F,0x212F,0x212F,0x294F,0x210F,0x210F,0x292F,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x2930,0x2110,0x2110,0x2110,0x2110,0x2110,0x1910,0x2130,0x2130,0x2110,0x2930,0x290F,0x210F,0x210F,0x210F,0x210E,0x210E,0x210E,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x212F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x20EE,0x20EE,0x210F,0x210F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x210F,0x212F,0x210F,0x210F,0x292F,0x292F,0x210F,0x292F,0x210F,0x212F,0x292F,0x212F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F, + 0x1953,0x1933,0x1133,0x1154,0x1195,0x19D6,0x19F6,0x19F6,0x1995,0x1153,0x1132,0x1931,0x2131,0x2130,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x2930,0x210F,0x212F,0x212F,0x212F,0x212F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x292F,0x210E,0x292F,0x292F,0x292F,0x292F,0x210F,0x212F,0x2130,0x1910,0x1932,0x1953,0x1133,0x1154,0x19D6,0x21F6,0x21F6,0x19B5,0x1133,0x1111,0x1111,0x1910,0x2130,0x2130,0x2930,0x2930,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210E,0x292E,0x292F,0x292E,0x292E,0x290E,0x292F,0x290F,0x210E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210E,0x210F,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290E,0x310E,0x38CD,0x50ED,0x9A94,0xA253,0xAA52,0xAA12,0xA1F0,0x99AE,0xBB10,0xFE57,0xFE94,0xFEB3,0xFEB2,0xFEB1,0xFEB1,0xFEB0,0xFEB0,0xFEB0,0xFEB1,0xFED2,0xFEB3,0xFEB5,0xBC0E,0x822B,0x8A2D,0x9A6E,0xAAF1,0xD415,0xDC76,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC36,0xE435,0xE435,0xDC35,0xDC34,0xDC34,0xDC52,0xDCB1,0xFE34,0xFE93,0xFE91,0xFEB1,0xFE90,0xFE90,0xFE90,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB1,0xFED2,0xFEB3,0xF5F4,0xA32C,0x8A4B,0x8A2D,0xA28F,0xC3B4,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC55,0xDC55,0xDC54,0xDC53,0xD451,0xF5D2,0xFE72,0xFE91,0xFE91,0xFE90,0xFE90,0xFE90,0xFE90,0xFE90,0xFE90,0xFE90,0xFE90,0xFE90,0xFE90,0xFE90,0xFE90,0xFEB0,0xFEB0,0xFEB0,0xFED1,0xFEB1,0xFE93,0xF5D3,0xA30C,0x922C,0x922D,0xAAD0,0xCBF5,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC36,0xDC56,0xDC56,0xDC35,0xDC35,0xDC34,0xDC54,0xD471,0xF5F3,0xFE73,0xFE92,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB3,0xFE95,0xEDB3,0xB38D,0xA2EC,0xAB0F,0xB350,0xC3D3,0xCC14,0xD455,0xD455,0xDC55,0xDC76,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC75,0xE4B6,0xF557,0xFDBA,0x89CD,0x920F,0x920F,0x9A50,0xE4B8,0xDC76,0xDC56,0xDC56,0xDC56,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC57,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC56,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC55,0xDC55,0xDC55,0xDC54,0xDC54,0xD452,0xDCB1,0xFE34,0xFE93,0xFEB2,0xFE91,0xFEB1,0xFE90,0xFE90,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED2,0xFEB2,0xFEB4,0xF614,0xA32C,0x92AC,0x9AAD,0xA2AF,0xCBF4,0xD435,0xDC76,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC76,0xDC77,0xD416,0xBB53,0x9A50,0x9A30,0xAAB1,0xCBB5,0xDC57,0xDC77,0xDC77,0xDC77,0xD436,0xDC36,0xDC36,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC36,0xDC36,0xDC56,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC56,0xDC36,0xDC36,0xDC36,0xDC36,0xDC56,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC34,0xDC34,0xD452,0xDCD1,0xFE34,0xFE93,0xFE92,0xFE91,0xFE91,0xFE91,0xFE91,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB2,0xFEB2,0xFEB2,0xFED3,0xFEB5,0xDD33,0x8A2B,0x8A0D,0x89EE,0xBB73,0xD416,0xDC56,0xDC57,0xDC57,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC55,0xDC35,0xDC34,0xDC54,0xCC31,0xFE75,0xFEB4,0xFEB3,0xFEB3,0xFEB3,0xFEB3,0xFEB3,0xFEB4,0xFEB4,0xFEB4,0xFEB4,0xFEB5,0xFEB5,0xFE97,0xFE78,0xF537,0x99EF,0xA1F2,0xA1F3,0xA1F4,0xA1F5,0xA216,0x9A17,0x7977,0x58F7,0x5939,0x4919,0x38D9,0x517B,0x51FD,0x213C,0x197E,0x097E,0x099E,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01BF,0x01DF,0x01DE,0x01DF,0x01DE,0x01DD,0x01FD,0x021B,0x02B9,0x14BB,0x1E1C,0x26FC,0x275A,0x0F14,0x0F73,0x0F73,0x0F54,0x1F98,0x275A,0x2EBB,0x4E3C,0x6D5C,0x5356,0x5AB6,0x51F4,0x5A15,0x51D4,0x51B4,0x51B3,0x51B3,0x4993,0x4993,0x4992,0x4992,0x4192,0x4192,0x4192,0x4171,0x4171,0x3951,0x3971,0x3971,0x3150,0x3150,0x3150,0x3150,0x3130,0x3130,0x3150,0x3150,0x2930,0x2930,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x290F,0x210F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x210F,0x2130,0x1931,0x1132,0x19B5,0x19D7,0x19D7,0x1174,0x1111,0x1910,0x2130,0x210F,0x2130,0x212F,0x210F,0x212F,0x210F,0x212F,0x1930,0x1931,0x1932,0x1132,0x19B5,0x2A17,0x21D6,0x1974,0x10F2,0x1911,0x2131,0x2130,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x292F,0x210F,0x210E,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x2930,0x210F,0x212F,0x2130,0x2130,0x210F,0x2110,0x20EF,0x290F,0x290F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210E,0x210E,0x210E,0x290F,0x210E,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210E,0x210E,0x210E,0x290F,0x210F,0x210E,0x210E,0x290F,0x290F,0x210E,0x290E,0x290E,0x20EE,0x290F,0x290F,0x290F,0x290F,0x290E,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210E,0x20EE,0x20EE,0x210F,0x292F,0x292F,0x292F,0x212F,0x210F,0x290F,0x292F,0x292F,0x210F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x210E,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210F,0x210F,0x212F,0x210F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x210E,0x210F,0x210F,0x292F, + 0x2152,0x1932,0x1912,0x1133,0x1154,0x19B5,0x19D6,0x19F6,0x21F6,0x1174,0x1153,0x1932,0x1931,0x2130,0x2130,0x2130,0x212F,0x210F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210E,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290E,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290E,0x292F,0x292F,0x290F,0x210F,0x212F,0x212F,0x2130,0x1910,0x1931,0x1152,0x1153,0x1154,0x21F6,0x21F6,0x21F6,0x1995,0x1953,0x1932,0x1911,0x1910,0x2110,0x2930,0x2930,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290E,0x290E,0x310E,0x30CE,0x48CD,0x8A73,0xA273,0xAA52,0xAA32,0xA1F1,0x99CF,0x91CC,0xFDD6,0xFE75,0xFEB3,0xFED2,0xFEB1,0xFEB1,0xFED1,0xFED0,0xFED0,0xFED1,0xFED1,0xFEB3,0xFEB5,0xBC2E,0x822A,0x8A2D,0x926E,0xA2D0,0xD414,0xDC55,0xDC56,0xDC55,0xDC55,0xDC55,0xDC35,0xDC35,0xDC35,0xDC34,0xDC34,0xDC34,0xDC33,0xDC52,0xDCD1,0xFE33,0xFE92,0xFEB1,0xFEB1,0xFEB1,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFED1,0xFED1,0xFED2,0xFEB3,0xF5F3,0x9AEA,0x8A2A,0x8A0C,0x9A6E,0xC3D3,0xDC56,0xDC55,0xDC55,0xDC35,0xDC55,0xDC56,0xDC55,0xDC55,0xDC55,0xDC55,0xDC34,0xDC33,0xDC53,0xD450,0xF5D2,0xFE92,0xFEB1,0xFEB1,0xFEB0,0xFEB0,0xFE90,0xFE90,0xFEB0,0xFE90,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFED1,0xFED1,0xFE93,0xF5F3,0x9AEB,0x8A2B,0x922D,0xA2CF,0xCBF4,0xDC56,0xDC55,0xDC55,0xDC55,0xDC55,0xDC35,0xDC35,0xDC35,0xDC55,0xDC35,0xDC34,0xDC34,0xDC53,0xD451,0xFE13,0xFE92,0xFE92,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFED2,0xFED2,0xFED2,0xFED2,0xFED3,0xFEB4,0xFE54,0xDD11,0xAB4D,0xA32D,0xB36F,0xBBB0,0xC3F2,0xC412,0xD454,0xD454,0xD455,0xDC75,0xD455,0xD455,0xD455,0xDC55,0xDC55,0xDC35,0xDC35,0xDC55,0xDC55,0xDC55,0xDC55,0xDC55,0xDC55,0xDC55,0xDC75,0xDC95,0xED56,0xFDB9,0x89CC,0x920F,0x920F,0x9A2F,0xE4B7,0xDC76,0xDC56,0xDC56,0xDC56,0xDC56,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC35,0xDC35,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC56,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC36,0xDC35,0xDC35,0xDC55,0xDC55,0xDC55,0xDC55,0xDC55,0xDC55,0xD454,0xD454,0xD453,0xD452,0xDCB0,0xFE33,0xFE92,0xFEB1,0xFEB1,0xFED1,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFECF,0xFED0,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFECF,0xFECF,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED2,0xFED2,0xFEB4,0xFE55,0xCC90,0x92CB,0x9AAC,0xA30E,0xB34F,0xBB91,0xCBF3,0xDC75,0xDC75,0xDC55,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC76,0xDC76,0xCC15,0xB332,0x9A50,0x9A2F,0xA290,0xC3B4,0xDC56,0xDC76,0xDC56,0xD456,0xDC56,0xDC35,0xDC55,0xDC56,0xDC55,0xDC35,0xDC55,0xDC55,0xDC56,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC55,0xDC35,0xDC34,0xDC34,0xDC34,0xD433,0xD452,0xD4D1,0xFE54,0xFE93,0xFEB2,0xFEB2,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB2,0xFED2,0xFED2,0xFED3,0xFEB5,0xDD33,0x8A2A,0x8A0C,0x89ED,0xB352,0xD415,0xDC56,0xDC76,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC56,0xDC55,0xDC35,0xDC34,0xDC34,0xD453,0xD471,0xFE75,0xFEB4,0xFED4,0xFEB3,0xFEB3,0xFEB3,0xFEB3,0xFEB3,0xFED4,0xFED4,0xFEB5,0xFEB5,0xFE96,0xFE58,0xFDF9,0xAA8F,0xA1F1,0xA1D3,0xA1F4,0xA1F4,0xA1F5,0xA216,0x91F7,0x7135,0x60F6,0x6958,0x50D7,0x5939,0x829E,0x7A9F,0x313B,0x213C,0x117D,0x097E,0x099F,0x019F,0x019F,0x01BF,0x01BF,0x01BF,0x01DF,0x01BE,0x01DE,0x01DE,0x01DE,0x01DE,0x01DD,0x01FC,0x021B,0x02D9,0x14DB,0x1E1C,0x26DC,0x1F5A,0x0F34,0x0753,0x0F73,0x0F75,0x1FB9,0x1F5A,0x36FC,0x4E7D,0x6DBD,0x4336,0x4A95,0x4A14,0x51F4,0x51D4,0x51B4,0x51B3,0x51B3,0x49B3,0x4993,0x4992,0x4992,0x4192,0x4172,0x4172,0x4192,0x3971,0x3971,0x3971,0x3951,0x3950,0x3150,0x3150,0x3150,0x3150,0x3150,0x3150,0x3150,0x3130,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x292F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x290F,0x210F,0x292F,0x292F,0x210F,0x212F,0x212F,0x2130,0x1911,0x1132,0x1995,0x19F7,0x19D7,0x1995,0x1111,0x1910,0x2130,0x2130,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x1910,0x1931,0x1932,0x1132,0x19B5,0x21F6,0x21D6,0x1975,0x1112,0x1911,0x2131,0x2130,0x2130,0x212F,0x210F,0x212F,0x212F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x212F,0x210F,0x20EF,0x20EF,0x28EF,0x28EF,0x28EF,0x290F,0x290F,0x210F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210E,0x290F,0x292F,0x210E,0x290F,0x210E,0x210F,0x210E,0x210E,0x210E,0x210E,0x290E,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210E,0x210E,0x210E,0x210F,0x292F,0x210F,0x210F,0x212F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210E,0x290F,0x290F,0x290F,0x210E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290E,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x290F,0x210F,0x292F,0x210F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210E,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210E,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F, + 0x2110,0x2131,0x1911,0x1932,0x1132,0x1174,0x19B5,0x21F6,0x19F6,0x19D6,0x1994,0x1953,0x1131,0x1931,0x2130,0x2130,0x2930,0x292F,0x292F,0x292F,0x2930,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210E,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290E,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210E,0x290F,0x290E,0x210E,0x292F,0x292F,0x292F,0x292F,0x212F,0x210F,0x190F,0x1910,0x1931,0x1952,0x1133,0x0933,0x21F6,0x2237,0x21D6,0x1974,0x1973,0x1932,0x1911,0x1910,0x2110,0x210F,0x210F,0x292F,0x290F,0x290F,0x20EF,0x20EF,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290E,0x290E,0x210E,0x292F,0x210E,0x290E,0x290F,0x290E,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x20EE,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210E,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290E,0x290E,0x30EE,0x38AD,0x71D1,0xA273,0xAA53,0xAA32,0xA211,0x99D0,0x91AD,0xCBF1,0xFE36,0xFE94,0xFED2,0xFEB2,0xFEB1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFEB4,0xC46E,0x7A09,0x8A2C,0x926D,0x9AAE,0xCC14,0xD455,0xD455,0xD455,0xDC55,0xDC55,0xDC54,0xDC54,0xDC54,0xDC54,0xDC33,0xDC33,0xDC52,0xD471,0xDCB0,0xFE53,0xFEB2,0xFEB1,0xFEB1,0xFEB0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEF1,0xFEF1,0xFEB2,0xF612,0x92A8,0x8229,0x820A,0x926C,0xBB71,0xDC54,0xDC54,0xDC54,0xDC54,0xDC55,0xDC55,0xDC55,0xDC54,0xDC54,0xD433,0xD433,0xD432,0xD452,0xD470,0xF5D1,0xFEB2,0xFEB1,0xFED1,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFEB2,0xF5F3,0x92C9,0x8A2A,0x8A2C,0x9AAE,0xBB91,0xCC34,0xD434,0xD454,0xDC55,0xDC55,0xDC55,0xDC54,0xDC54,0xDC54,0xDC34,0xDC33,0xD433,0xD452,0xCC50,0xF612,0xFE92,0xFEB1,0xFEB1,0xFEB1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFEF1,0xFEF2,0xFED2,0xFED3,0xFED5,0xFED6,0xD531,0xBC0E,0xB3CE,0xB3AE,0xB3AF,0xBBAF,0xBBD0,0xC3D1,0xC3F2,0xCC13,0xD433,0xD434,0xD434,0xD434,0xD434,0xD434,0xDC34,0xDC54,0xDC55,0xDC54,0xDC54,0xDC54,0xDC74,0xDC74,0xDCB4,0xED35,0xF597,0x81CB,0x920E,0x920E,0x920E,0xDC96,0xDC75,0xDC75,0xDC55,0xDC55,0xDC55,0xDC55,0xDC55,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC34,0xDC35,0xDC35,0xDC34,0xDC55,0xDC35,0xDC35,0xDC35,0xDC35,0xDC35,0xDC55,0xDC35,0xDC35,0xDC34,0xDC34,0xDC34,0xDC54,0xDC34,0xDC54,0xD434,0xD454,0xD453,0xD453,0xD452,0xD451,0xD4CF,0xFE53,0xFEB2,0xFEB1,0xFED1,0xFED0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFECF,0xFECF,0xFED0,0xFED0,0xFECF,0xFECF,0xFECF,0xFECF,0xFED0,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFED0,0xFED0,0xFECF,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED1,0xFED2,0xFED3,0xFED4,0xFEB5,0xFE95,0xD4F0,0xB3AD,0xAB6D,0xAB2D,0xB34F,0xB350,0xC3B2,0xCC13,0xCC14,0xD434,0xD434,0xD435,0xD435,0xD455,0xDC55,0xDC75,0xDC75,0xCBF4,0xB351,0x9A6F,0x924E,0xA2B0,0xBB72,0xD435,0xD455,0xD455,0xD455,0xD455,0xDC55,0xDC55,0xDC55,0xDC55,0xDC55,0xDC55,0xDC55,0xD435,0xDC55,0xDC34,0xD454,0xD454,0xD454,0xD454,0xD434,0xD434,0xD434,0xD434,0xD434,0xD434,0xD434,0xDC34,0xDC34,0xD434,0xD434,0xDC34,0xDC34,0xDC34,0xDC34,0xD434,0xD434,0xD434,0xD434,0xD434,0xD433,0xD452,0xD451,0xD4D0,0xFE74,0xFEB3,0xFED2,0xFED2,0xFEB2,0xFEB1,0xFEB1,0xFED1,0xFEB1,0xFEB1,0xFEB1,0xFED1,0xFED2,0xFED2,0xFED2,0xFEF3,0xFEB4,0xE553,0x8229,0x820B,0x81EC,0xAB31,0xCC14,0xD455,0xDC55,0xDC55,0xDC55,0xDC55,0xDC55,0xDC55,0xDC55,0xDC54,0xDC34,0xD433,0xD452,0xD451,0xDCF1,0xFEB5,0xFED4,0xFED4,0xFED3,0xFED3,0xFEB3,0xFED4,0xFED4,0xFED4,0xFED5,0xFED5,0xFEB6,0xFE57,0xFDD8,0xAA8F,0x99AF,0xA1D2,0xA9D3,0xA9D3,0xA9F4,0xAA15,0xAA36,0x91D6,0x8175,0x7956,0x89D8,0x9A9B,0x9A9B,0x927B,0x8A9D,0x72BF,0x317C,0x195D,0x097E,0x099E,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01DF,0x01DF,0x01DF,0x01DE,0x01DE,0x01FE,0x01FD,0x01FC,0x021B,0x02D9,0x14FC,0x1E3C,0x26FC,0x1F59,0x0734,0x0753,0x0773,0x0754,0x1FD9,0x279B,0x373C,0x4EBE,0x6DFE,0x3B36,0x4275,0x41F3,0x49F4,0x49B3,0x49B3,0x51B3,0x51D4,0x4993,0x4972,0x4972,0x4172,0x4172,0x4192,0x4172,0x4171,0x3951,0x3951,0x3951,0x3150,0x3951,0x3971,0x3150,0x3150,0x3150,0x3130,0x312F,0x3130,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x2130,0x2130,0x1910,0x1111,0x1995,0x19D6,0x19D6,0x1195,0x1111,0x1911,0x2130,0x2130,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x2130,0x1931,0x1932,0x1132,0x21B5,0x29F7,0x21D6,0x1974,0x1112,0x1911,0x2151,0x2130,0x2130,0x212F,0x212F,0x212F,0x292F,0x292F,0x212F,0x292F,0x210F,0x210F,0x292F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290F,0x290E,0x290E,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x28EF,0x28EE,0x290F,0x290F,0x292F,0x210E,0x210F,0x210E,0x210E,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x212F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290E,0x210E,0x290E,0x290F,0x290E,0x290F,0x290E,0x292F,0x290F,0x290E,0x210E,0x210F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x292F,0x210F,0x212F,0x212F,0x212F,0x292F,0x292F,0x290F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x210F,0x292F,0x292F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x292F,0x210E,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210E,0x210E,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F, + 0x20EF,0x2110,0x2110,0x2131,0x1932,0x1953,0x1173,0x19B5,0x19F6,0x21F6,0x21F6,0x1994,0x1152,0x1931,0x2131,0x2130,0x2130,0x210F,0x292F,0x292F,0x292F,0x212F,0x212F,0x292F,0x210F,0x292F,0x210F,0x290F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x210E,0x210E,0x290F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290E,0x290F,0x292F,0x292F,0x290F,0x292F,0x292F,0x210E,0x210F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x292F,0x290E,0x292F,0x292F,0x292F,0x212F,0x2130,0x1930,0x1931,0x1132,0x1152,0x1153,0x21D6,0x2A17,0x21D6,0x1995,0x1974,0x1932,0x1931,0x1930,0x2110,0x212F,0x210F,0x210F,0x290F,0x290F,0x290F,0x20EE,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290E,0x290E,0x290E,0x290F,0x292F,0x290F,0x292F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x210E,0x292F,0x292F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290E,0x290E,0x30EE,0x30CD,0x48EE,0x9A94,0xA253,0xA232,0xA232,0xA1F1,0x99CE,0x9A4D,0xF596,0xFE95,0xFEB3,0xFEB2,0xFEB1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFED3,0xFE74,0x8AC9,0x7A08,0x7A08,0x8249,0xAB6E,0xBBCF,0xC3F0,0xCC31,0xCC31,0xCC31,0xCC31,0xD451,0xD431,0xCC30,0xCC30,0xCC30,0xCC2F,0xCC6E,0xD4CE,0xFE72,0xFEB1,0xFED1,0xFEB0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEF0,0xFEF1,0xFEF1,0xFED2,0xFE93,0xC48D,0xABAC,0x9AEA,0x8A69,0x9ACB,0xBBF0,0xCC31,0xD452,0xD452,0xD452,0xD472,0xD452,0xD452,0xCC51,0xCC51,0xCC50,0xCC50,0xD470,0xCC6E,0xEDF0,0xFEB2,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFEF1,0xFEF1,0xFED2,0xFE73,0xA38A,0x8A88,0x8228,0x8A69,0x92CB,0xB38E,0xC410,0xCC31,0xD451,0xCC31,0xD451,0xD452,0xD451,0xD451,0xD451,0xCC31,0xCC30,0xCC4F,0xC44E,0xF611,0xFEB2,0xFEB1,0xFED1,0xFEB1,0xFED0,0xFED1,0xFED1,0xFED1,0xFEF1,0xFED1,0xFEF1,0xFEF1,0xFEF1,0xFEF2,0xFEF3,0xFEF3,0xFED4,0xFEB5,0xFE55,0xF5F4,0xF5F4,0xF5D4,0xE553,0xD4B1,0xC450,0xC40F,0xBBEF,0xBBEF,0xC410,0xC3F0,0xC410,0xC410,0xCC31,0xCC31,0xCC31,0xCC31,0xCC51,0xCC31,0xCC51,0xCC70,0xCC70,0xD4F1,0xE533,0x6946,0x79C9,0x79E9,0x81E9,0xAB6E,0xBBCF,0xC411,0xCC31,0xCC31,0xD452,0xD452,0xD452,0xD452,0xD452,0xD432,0xD453,0xD432,0xD452,0xCC32,0xD452,0xCC52,0xCC32,0xD432,0xD432,0xD432,0xD432,0xD452,0xD432,0xCC32,0xD452,0xD452,0xCC32,0xD432,0xCC32,0xD432,0xD432,0xD432,0xD451,0xD451,0xCC31,0xCC31,0xCC31,0xCC51,0xCC50,0xCC4F,0xCC4E,0xD4EE,0xFE93,0xFEB2,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFECF,0xFECF,0xFED0,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED1,0xFED2,0xFED2,0xFED3,0xFED3,0xFEB4,0xFE75,0xF5F4,0xF5B4,0xE533,0xCC71,0xBBCF,0xBBCF,0xBBD0,0xBBF0,0xC3F0,0xC3F0,0xC411,0xCC31,0xCC51,0xCC72,0xCC72,0xB38F,0x9AED,0x822A,0x822A,0x928B,0x9AED,0xBBB0,0xC411,0xCC32,0xCC52,0xCC52,0xCC52,0xD452,0xD452,0xD452,0xD452,0xD452,0xCC52,0xCC52,0xCC52,0xCC32,0xCC31,0xCC51,0xCC31,0xCC31,0xCC31,0xCC31,0xCC32,0xCC32,0xCC32,0xCC31,0xCC31,0xCC31,0xCC31,0xCC32,0xCC32,0xCC32,0xCC32,0xCC32,0xCC31,0xCC31,0xCC31,0xCC31,0xCC51,0xCC51,0xCC51,0xCC50,0xCC6F,0xD4CF,0xFE93,0xFED3,0xFED2,0xFED2,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFED2,0xFEF3,0xFED4,0xE592,0x7A47,0x71C7,0x71C8,0x824A,0xA34E,0xC411,0xCC52,0xCC33,0xCC53,0xD453,0xD473,0xD453,0xD452,0xD432,0xD451,0xCC30,0xD491,0xE573,0xFE75,0xFEB4,0xFED4,0xFED3,0xFED4,0xFED4,0xFED4,0xFED4,0xFEF4,0xFEF5,0xFED5,0xFED6,0xFE97,0xFDD7,0xAACF,0x99AE,0xA1B1,0xA9D2,0xA9D3,0xA9D3,0xA9F4,0xAA15,0xAA56,0x91B5,0x91B6,0x91D6,0x9A38,0xA258,0xA259,0x9A7A,0x927C,0x61DB,0x311A,0x215C,0x117E,0x099E,0x019E,0x019E,0x01BF,0x01BF,0x01DF,0x01DF,0x01DF,0x01DF,0x01FF,0x01FF,0x01FE,0x01FD,0x021C,0x023B,0x02D9,0x14FC,0x1E3C,0x26DB,0x1F59,0x0F34,0x0753,0x0773,0x0774,0x1FD9,0x277A,0x2F1C,0x4EBE,0x65BD,0x3B15,0x3A54,0x41F4,0x41B3,0x49B3,0x51D4,0x51F4,0x51B3,0x49B3,0x4992,0x4992,0x4992,0x4192,0x4192,0x4171,0x4171,0x3971,0x3971,0x3971,0x3951,0x3950,0x3150,0x3150,0x3150,0x3130,0x3130,0x312F,0x292F,0x3150,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210E,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x212F,0x2130,0x1931,0x1111,0x1995,0x19D6,0x19D6,0x1195,0x1112,0x1931,0x2150,0x2130,0x212F,0x212F,0x210F,0x212F,0x212F,0x214F,0x1930,0x1931,0x1931,0x1132,0x19B5,0x21F7,0x21F7,0x1995,0x1112,0x1911,0x2131,0x2130,0x212F,0x212F,0x212F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x210E,0x210F,0x290F,0x292F,0x210F,0x290F,0x290F,0x28EE,0x290F,0x28EE,0x290E,0x290E,0x210E,0x210E,0x210E,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x210F,0x290F,0x292F,0x210F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290E,0x292F,0x292F,0x290F,0x290E,0x292F,0x290F,0x290F,0x290F,0x20EE,0x290F,0x290F,0x290F,0x290E,0x290E,0x290F,0x210E,0x290E,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x210F,0x290F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210E,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290E,0x290E,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F, + 0x210F,0x210F,0x210F,0x2110,0x1911,0x1911,0x1973,0x1974,0x19B5,0x21F6,0x21F6,0x19D5,0x1994,0x1132,0x1932,0x2111,0x2130,0x2130,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x290F,0x292F,0x290F,0x292F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x210F,0x292F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210E,0x212F,0x212F,0x212F,0x292F,0x292F,0x292F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290E,0x292F,0x210E,0x210E,0x212F,0x212F,0x2130,0x2131,0x1931,0x1132,0x1133,0x1153,0x21F6,0x2A38,0x21D6,0x1974,0x1153,0x1132,0x1911,0x1910,0x2130,0x2130,0x212F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x210F,0x290F,0x292F,0x292F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210E,0x210F,0x290F,0x210F,0x290F,0x290F,0x210F,0x210F,0x290F,0x20EE,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290E,0x290F,0x290E,0x30EE,0x306C,0x8233,0xA273,0xA252,0xAA32,0xA211,0x99F0,0x91CD,0xB30F,0xFE77,0xFEB4,0xFEB3,0xFED2,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFED2,0xFED3,0xFEF5,0xFF16,0xFEF6,0xFEF6,0xFED6,0xFEB6,0xFE95,0xFE54,0xFE54,0xFE34,0xFE34,0xFE13,0xFE54,0xFE74,0xFE94,0xFEB4,0xFEB4,0xFEB3,0xFE91,0xFEB1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEF1,0xFEF1,0xFEF1,0xFED2,0xFEF3,0xFEF4,0xFEF5,0xFEF6,0xFED6,0xFE95,0xF5F3,0xEDB3,0xEDB3,0xF5D3,0xEDB3,0xF5D3,0xF5F3,0xFE13,0xFE13,0xFE33,0xFE73,0xFE93,0xFE72,0xFED2,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEF0,0xFEF1,0xFEF1,0xFEF2,0xFF14,0xFEF5,0xFEF6,0xFEF6,0xFEF6,0xFED5,0xFE74,0xFE54,0xFE34,0xFE34,0xF613,0xF613,0xF613,0xFE34,0xF613,0xFE33,0xFE53,0xFE94,0xFE72,0xFEB1,0xFED1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED1,0xFEF1,0xFEF1,0xFEF1,0xFEF1,0xFEF2,0xFEF2,0xFEF2,0xFEF3,0xFED4,0xFED4,0xFED4,0xFED4,0xFED5,0xFED5,0xFEF5,0xFEF5,0xFEF5,0xFED5,0xFEF6,0xFED5,0xFEB5,0xFE95,0xFE95,0xFE94,0xFE94,0xFE95,0xFE94,0xFE94,0xFE94,0xFEB5,0xFEB5,0xFED4,0xFED5,0xFEF7,0xFEF7,0xFEF7,0xFEF7,0xFEB6,0xF614,0xEDB3,0xE572,0xE572,0xE572,0xED93,0xE572,0xED93,0xED92,0xEDB3,0xEDB3,0xEDB3,0xEDB3,0xF5D3,0xF5D3,0xF5F3,0xF5D3,0xF5D3,0xF5F3,0xF5F3,0xF5D3,0xF5F3,0xF5D3,0xF5F4,0xF5F3,0xF5F4,0xF5D3,0xF5D3,0xF5D3,0xF5F3,0xF5D3,0xF5F3,0xF5D3,0xF5F3,0xF5F3,0xFE34,0xFE33,0xFE33,0xFE53,0xFE73,0xFE93,0xFEB2,0xFED2,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFED0,0xFED0,0xFED0,0xFECF,0xFED0,0xFED0,0xFECF,0xFECF,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFED2,0xFED3,0xFEB3,0xFEB4,0xFEB4,0xFEB5,0xFED5,0xFED6,0xFED6,0xFEF6,0xFED6,0xFEB5,0xFE95,0xFE75,0xF634,0xF5F3,0xEDF3,0xF614,0xFEB6,0xFED7,0xFEF7,0xFEF7,0xFEF7,0xFED7,0xFEB6,0xFE34,0xF5F4,0xEDB3,0xE593,0xE593,0xE593,0xE572,0xED93,0xED93,0xEDB3,0xEDD3,0xF5F4,0xF5F4,0xF614,0xF634,0xFE35,0xFE34,0xFE35,0xFE35,0xFE35,0xFE35,0xFE35,0xFE35,0xFE35,0xFE35,0xFE35,0xFE34,0xF634,0xF614,0xFE15,0xF615,0xF614,0xF614,0xFE34,0xF614,0xFE34,0xFE34,0xFE34,0xFE54,0xFE74,0xFE73,0xF631,0xFED3,0xFED2,0xFED2,0xFED2,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFED2,0xFEF2,0xFED2,0xFED2,0xFEF3,0xFEF4,0xFF16,0xFF17,0xFF17,0xFEF7,0xFED7,0xF635,0xE573,0xE573,0xDD53,0xDD33,0xDD32,0xE553,0xE573,0xEDB3,0xF614,0xFE95,0xFED6,0xFED5,0xFED4,0xFED4,0xFED3,0xFEF4,0xFED4,0xFED4,0xFEF4,0xFEF4,0xFEF4,0xFEF5,0xFED6,0xFE97,0xFE38,0xAACF,0x99AE,0xA1B0,0xA1B2,0xA9F3,0xB1F4,0xA9F3,0xAA14,0xAA15,0x99D4,0x9194,0x91D6,0x99F6,0xA237,0xAA38,0xA258,0xA279,0x929C,0x599A,0x311A,0x215C,0x117D,0x099E,0x099E,0x01BE,0x01BF,0x01BF,0x01DF,0x01BF,0x01DE,0x01DE,0x01FF,0x01FE,0x01FE,0x01FD,0x021C,0x023B,0x02D9,0x14FC,0x1E3C,0x26FC,0x1F59,0x0714,0x0752,0x0773,0x0F95,0x1FB9,0x1F5A,0x373C,0x4E9E,0x44BA,0x32D5,0x4275,0x4214,0x49D4,0x49D4,0x51F4,0x51D4,0x4993,0x4993,0x4993,0x4992,0x4172,0x4172,0x4192,0x4172,0x4171,0x3971,0x3971,0x3951,0x3150,0x3951,0x3150,0x3150,0x3150,0x3130,0x3130,0x312F,0x312F,0x3150,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210E,0x292F,0x290F,0x290F,0x290F,0x210E,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x210F,0x210E,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x292F,0x210F,0x210E,0x290F,0x292F,0x212F,0x212F,0x212F,0x2130,0x1931,0x1132,0x1995,0x19D7,0x21F7,0x1195,0x1111,0x1910,0x2130,0x2130,0x214F,0x294F,0x212F,0x212F,0x214F,0x212F,0x2150,0x1931,0x1932,0x1133,0x19B5,0x21F7,0x21F6,0x1974,0x1112,0x1932,0x2131,0x2130,0x210F,0x210F,0x212F,0x2930,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292E,0x292F,0x290E,0x210E,0x210E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290E,0x290E,0x292E,0x210E,0x290E,0x290E,0x292F,0x290F,0x290F,0x210F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210E,0x290F,0x292F,0x292E,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290E,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x210E,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290E,0x210E,0x292F,0x292F,0x290E,0x292F,0x292E,0x292F,0x290F,0x290F,0x290E,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210E,0x210E,0x290E,0x290F,0x290F,0x290E,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x292F, + 0x290F,0x210F,0x210F,0x2130,0x1910,0x1931,0x1931,0x1953,0x1974,0x19B5,0x21F6,0x2217,0x19D6,0x1974,0x1112,0x1911,0x2111,0x2110,0x2110,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x210F,0x290F,0x292F,0x292F,0x210F,0x210E,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210E,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x210F,0x292F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x292F,0x210F,0x292F,0x210F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x292F,0x210F,0x292F,0x290F,0x210F,0x292F,0x292F,0x292F,0x210F,0x212F,0x292F,0x292F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290E,0x290E,0x290F,0x292F,0x210F,0x2130,0x2130,0x1930,0x1931,0x1111,0x1132,0x1174,0x19D6,0x2A37,0x21F6,0x1995,0x1953,0x1932,0x1911,0x1910,0x1910,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x290F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x292F,0x210E,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290E,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x292F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290E,0x210E,0x290F,0x292F,0x210E,0x290F,0x290F,0x210E,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x210F,0x210E,0x210F,0x210F,0x290F,0x290F,0x210F,0x210E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290E,0x28EE,0x30CD,0x510E,0x9AB4,0xA253,0xA232,0xA212,0xA1F1,0x99CF,0x91ED,0xE4F4,0xFE76,0xFEB4,0xFED2,0xFED2,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFED2,0xFED2,0xFEF3,0xFEF3,0xFEF3,0xFED3,0xFED3,0xFEF3,0xFED3,0xFED3,0xFEB3,0xFED3,0xFED3,0xFED3,0xFED2,0xFED2,0xFED2,0xFED1,0xFED1,0xFEF1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEF1,0xFEF1,0xFEF1,0xFEF1,0xFEF2,0xFED2,0xFEF2,0xFED3,0xFED3,0xFED3,0xFEB3,0xFEB4,0xFEB4,0xFEB4,0xFEB4,0xFEB3,0xFEB3,0xFEB3,0xFED2,0xFED2,0xFED2,0xFED1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFECF,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFEF1,0xFEF2,0xFEF2,0xFEF2,0xFEF3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFEB3,0xFEB3,0xFEB3,0xFEB3,0xFED2,0xFED2,0xFED2,0xFED1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEF1,0xFEF1,0xFEF1,0xFEF1,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF3,0xFEF2,0xFEF2,0xFEF3,0xFEF3,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFED3,0xFED3,0xFED4,0xFEB4,0xFED4,0xFEB4,0xFEB4,0xFEB4,0xFEB4,0xFED4,0xFEB4,0xFEB4,0xFEB4,0xFEB3,0xFEB4,0xFED4,0xFEB4,0xFEB3,0xFEB3,0xFEB3,0xFEB3,0xFEB3,0xFEB3,0xFEB3,0xFED4,0xFED4,0xFEB4,0xFEB4,0xFEB4,0xFEB4,0xFEB4,0xFEB4,0xFEB4,0xFEB3,0xFEB3,0xFEB3,0xFEB3,0xFEB2,0xFEB2,0xFED2,0xFED2,0xFED2,0xFED1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFED0,0xFECF,0xFECF,0xFED0,0xFECF,0xFECF,0xFECF,0xFECF,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFED2,0xFED2,0xFED3,0xFED3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFED3,0xFED3,0xFED4,0xFED3,0xFED3,0xFEF4,0xFEF3,0xFEF4,0xFEF4,0xFEF4,0xFEF3,0xFED3,0xFED4,0xFED4,0xFEB4,0xFEB4,0xFEB4,0xFEB4,0xFEB4,0xFEB5,0xFEB4,0xFEB4,0xFED4,0xFED4,0xFEB4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED5,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED3,0xFED3,0xFED3,0xFED3,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFEB1,0xFED1,0xFED1,0xFED2,0xFED2,0xFED2,0xFED2,0xFEF2,0xFEF3,0xFF14,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFED5,0xFED5,0xFED6,0xFEB6,0xFEB6,0xFEB6,0xFEB6,0xFED5,0xFED5,0xFED4,0xFED4,0xFED4,0xFED4,0xFEF4,0xFED3,0xFEF3,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF5,0xFED6,0xFEB7,0xFE18,0xAB0F,0x99AE,0xA1B0,0xA1B1,0xA9D2,0xA9F3,0xA9F3,0xAA14,0xAA14,0xA215,0x9193,0x91D4,0x99F6,0xA216,0xA217,0xAA37,0xAA58,0xA259,0x9A9C,0x515A,0x28FA,0x213C,0x197D,0x099E,0x09BE,0x01BE,0x01BF,0x01BF,0x01BF,0x01DF,0x01DF,0x01DF,0x01FE,0x01FE,0x01FE,0x01FD,0x021C,0x023B,0x02D9,0x151C,0x1E3C,0x26FC,0x1F59,0x0714,0x0753,0x0793,0x0F95,0x1F98,0x275A,0x3F3D,0x56BE,0x3C38,0x32B5,0x3A34,0x4A14,0x49D4,0x51D4,0x51F4,0x51B4,0x4993,0x4993,0x49B3,0x4993,0x4192,0x4172,0x4192,0x4171,0x3971,0x3971,0x3971,0x3971,0x3150,0x3950,0x3150,0x3150,0x3130,0x3130,0x3130,0x3130,0x3150,0x312F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x210F,0x290F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x210E,0x292F,0x290F,0x210F,0x292F,0x210F,0x212F,0x2130,0x1931,0x1132,0x1995,0x19D6,0x19F7,0x1995,0x1111,0x1931,0x2130,0x2150,0x214F,0x212F,0x212E,0x212F,0x212F,0x212F,0x2130,0x1931,0x1932,0x1133,0x1994,0x2217,0x21D6,0x19B5,0x1112,0x1912,0x2131,0x2130,0x2130,0x2930,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x210E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x210E,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290E,0x290F,0x290F,0x290E,0x290F,0x290E,0x290E,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290E,0x292F,0x292F,0x292F,0x290F,0x290F,0x290E,0x210E,0x210E,0x290E,0x292E,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x210F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292E,0x290E,0x292E,0x292F,0x292F,0x290E,0x290E,0x292F,0x290F,0x292F,0x292F,0x292F,0x290E,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290E,0x292F,0x290E,0x292F,0x290F,0x292F,0x290E,0x292F,0x292F,0x210E,0x292F,0x292F,0x290E,0x292E,0x292E,0x292E,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x290E,0x290E,0x292F,0x290E,0x290E,0x290F,0x290E,0x290E,0x290F,0x290F,0x290E,0x290E,0x290E,0x292F,0x290E,0x290F,0x292F,0x292F, + 0x210E,0x210E,0x292F,0x2930,0x2130,0x1910,0x18F0,0x1911,0x1153,0x1974,0x19D6,0x21F6,0x2216,0x21F6,0x1974,0x1932,0x1911,0x2131,0x2130,0x2910,0x2910,0x2930,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x292F,0x290F,0x292F,0x290F,0x210F,0x212F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210F,0x290F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210E,0x210E,0x210E,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x212F,0x210F,0x290E,0x290F,0x292F,0x210F,0x210F,0x290F,0x290F,0x292F,0x210F,0x292F,0x212F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x292F,0x292F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x212F,0x2950,0x2130,0x2131,0x1911,0x1131,0x1132,0x1994,0x19D5,0x2217,0x21F6,0x19B5,0x1974,0x1932,0x1110,0x1910,0x1910,0x210F,0x210F,0x292F,0x210E,0x210E,0x210F,0x210F,0x292F,0x290F,0x210E,0x290F,0x290F,0x290F,0x290F,0x290F,0x210E,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x210E,0x290E,0x290E,0x292F,0x292F,0x210E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x210E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x210F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x210E,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290E,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x28EE,0x30CD,0x40AD,0x8253,0x9A73,0xA252,0xA232,0xA232,0xA1F1,0x99EF,0x9A2C,0xF596,0xFE95,0xFED4,0xFED3,0xFED2,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFEF2,0xFED2,0xFEF2,0xFEF2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEB2,0xFEB1,0xFED2,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEF0,0xFED0,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFED2,0xFED1,0xFED1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFECF,0xFED0,0xFED0,0xFECF,0xFECF,0xFECF,0xFECF,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED1,0xFEF1,0xFEF1,0xFED1,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEB2,0xFED1,0xFED1,0xFED1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFEF1,0xFEF2,0xFEF1,0xFEF1,0xFEF1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEB2,0xFEB2,0xFEB2,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFEEF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFED0,0xFED0,0xFECF,0xFECF,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEB2,0xFEB3,0xFEB3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFEB3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFEF3,0xFED3,0xFED2,0xFEF2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED1,0xFED2,0xFED2,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED3,0xFED3,0xFEF3,0xFEF3,0xFEF3,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFED4,0xFEB4,0xFED4,0xFED4,0xFED3,0xFED3,0xFED3,0xFED4,0xFED4,0xFED3,0xFED3,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF5,0xFED5,0xFE96,0xFDF7,0xA28E,0x91AD,0xA1B0,0xA1B1,0xA9D2,0xA9F3,0xA9F3,0xA9F3,0xB214,0xAA35,0xA215,0x91B4,0x91D4,0x99F5,0xA216,0xA216,0xAA37,0xAA38,0xA259,0x9A9C,0x48F9,0x28FA,0x215C,0x117D,0x099E,0x09BE,0x01BE,0x01BF,0x01DF,0x01DE,0x01DF,0x01DF,0x01FF,0x01FF,0x01FF,0x01FE,0x01FD,0x021C,0x023B,0x02F9,0x151C,0x1E3C,0x26FC,0x1F59,0x0714,0x0732,0x0773,0x0F95,0x1F98,0x2719,0x475D,0x6F5F,0x33F6,0x32B4,0x3A13,0x49F4,0x49B3,0x51D4,0x51B4,0x4993,0x4993,0x4972,0x4993,0x4992,0x4972,0x4172,0x4192,0x4171,0x4171,0x3971,0x3971,0x3951,0x3951,0x3150,0x3150,0x3150,0x3150,0x3150,0x292F,0x3130,0x312F,0x312F,0x292F,0x290F,0x312F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210E,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210E,0x210E,0x290F,0x210E,0x210E,0x290F,0x290F,0x20EE,0x210E,0x210F,0x290F,0x290F,0x290F,0x290F,0x210E,0x290F,0x210F,0x290F,0x210E,0x210E,0x210E,0x210E,0x290E,0x290F,0x290E,0x290E,0x292F,0x210E,0x210E,0x290E,0x290E,0x290F,0x292F,0x210F,0x210F,0x210F,0x2130,0x1910,0x1112,0x19B5,0x19D6,0x19D7,0x1174,0x1111,0x1931,0x1930,0x2150,0x212F,0x212F,0x210E,0x212E,0x212F,0x214F,0x210F,0x1930,0x1931,0x1132,0x1994,0x2A17,0x21D6,0x1995,0x1112,0x1932,0x1931,0x2131,0x2930,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290E,0x292E,0x292F,0x290E,0x290E,0x292F,0x290F,0x210F,0x292F,0x210F,0x290F,0x290F,0x292F,0x210E,0x290F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x290F,0x290F,0x28EE,0x290F,0x290F,0x290E,0x210E,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x20EE,0x290F,0x290E,0x290E,0x290F,0x290E,0x290F,0x290E,0x290F,0x292F,0x292F,0x290F,0x292F,0x290F,0x210F,0x210E,0x210E,0x210E,0x210E,0x292F,0x210E,0x292F,0x210E,0x290E,0x290E,0x290E,0x292F,0x292E,0x290E,0x292E,0x292F,0x290E,0x290E,0x290E,0x290F,0x290F,0x210F,0x290F,0x290F,0x290F,0x210E,0x290E,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x210E,0x290F,0x210E,0x210E,0x290E,0x290E,0x210E,0x290F,0x290F,0x290E,0x210E,0x290F,0x290F,0x290F,0x290E,0x292F,0x292F,0x290E,0x290E,0x292F,0x210E,0x292F,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290E,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x210E,0x210E,0x290E,0x290E,0x292F,0x290E,0x292F,0x290F, + 0x292F,0x212E,0x292F,0x2950,0x212F,0x190F,0x1910,0x1931,0x1111,0x1973,0x1174,0x19D6,0x19F6,0x19F6,0x21D6,0x1974,0x1932,0x1911,0x2111,0x2110,0x2910,0x2910,0x2910,0x2910,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x292F,0x210F,0x212F,0x210F,0x210F,0x290F,0x292F,0x210F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x212F,0x212F,0x210F,0x292F,0x210F,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x290F,0x290F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x210E,0x290F,0x292F,0x210F,0x210F,0x290F,0x210F,0x292F,0x212F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x290F,0x290F,0x210F,0x2130,0x2130,0x2131,0x1911,0x1132,0x1132,0x1174,0x19D6,0x2217,0x2217,0x1995,0x1974,0x1952,0x1931,0x1930,0x190F,0x210F,0x210F,0x292F,0x292F,0x210E,0x290F,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x290F,0x210E,0x290F,0x290F,0x292F,0x290F,0x210E,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x292F,0x210E,0x290E,0x290E,0x290E,0x292F,0x210E,0x290E,0x290E,0x210E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x210E,0x290F,0x290F,0x210E,0x290F,0x290F,0x290F,0x290F,0x290E,0x210E,0x210E,0x290F,0x290F,0x290F,0x290E,0x290E,0x210E,0x210E,0x210E,0x290F,0x290F,0x210E,0x290F,0x210F,0x210E,0x210E,0x290F,0x210E,0x290F,0x290E,0x290F,0x290F,0x210E,0x210E,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290E,0x290E,0x290E,0x28CD,0x30AD,0x48EE,0x9A94,0xA273,0xA253,0xA232,0xA212,0x99F0,0x99EE,0x9A6D,0xFE37,0xFE95,0xFED4,0xFED2,0xFED2,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFEB1,0xFED1,0xFED1,0xFED1,0xFEB1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFEB0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED0,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED1,0xFED1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFECF,0xFECF,0xFEAF,0xFEAF,0xFECF,0xFECF,0xFECF,0xFED0,0xFED0,0xFED0,0xFEAF,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFEF1,0xFED0,0xFED0,0xFED1,0xFED1,0xFED1,0xFED0,0xFED1,0xFED1,0xFED0,0xFED1,0xFED1,0xFED1,0xFED1,0xFEB1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFECF,0xFED0,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFED0,0xFED0,0xFED0,0xFEAF,0xFED0,0xFED0,0xFEB0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFEF1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED3,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED3,0xFED3,0xFED3,0xFED3,0xFEF3,0xFEF3,0xFED3,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEF2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED1,0xFED2,0xFED2,0xFED2,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED3,0xFED2,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFEF3,0xFEF4,0xFEF4,0xFEF4,0xFEF5,0xFEF6,0xFE97,0xF5B6,0xAAAE,0x99CE,0xA1B0,0xA1B1,0xA9D2,0xA9F3,0xA9F3,0xAA13,0xAA14,0xAA14,0xAA35,0x99F4,0x91B4,0x91B4,0x99D5,0xA216,0xAA16,0xAA37,0xAA38,0xA259,0x927B,0x40F8,0x291B,0x215C,0x117D,0x09BE,0x01BE,0x01BE,0x01BF,0x01DF,0x01DF,0x01DF,0x01DF,0x01FF,0x01FF,0x01FF,0x01FE,0x01FD,0x021C,0x023B,0x02D9,0x151C,0x265C,0x26FC,0x1F59,0x0714,0x0732,0x0F94,0x1775,0x1F78,0x2F19,0x4F5D,0x66DF,0x33B6,0x3273,0x4214,0x49D3,0x49B3,0x51B4,0x51B4,0x4973,0x4993,0x4993,0x4992,0x4972,0x4972,0x4172,0x4192,0x4171,0x4171,0x3971,0x3951,0x3971,0x3950,0x3950,0x3150,0x3150,0x3150,0x312F,0x3130,0x312F,0x312F,0x312F,0x292F,0x312F,0x292F,0x290F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290E,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x210E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210E,0x210F,0x210F,0x210E,0x290E,0x290E,0x290E,0x210E,0x210E,0x210F,0x290F,0x290F,0x290F,0x290F,0x290E,0x210F,0x290F,0x290F,0x210E,0x210E,0x292F,0x292F,0x290F,0x290F,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x292F,0x210F,0x212F,0x2130,0x1910,0x1132,0x1995,0x19D6,0x19B6,0x1995,0x1111,0x1910,0x1930,0x212F,0x212F,0x212F,0x212E,0x212F,0x294F,0x212F,0x210F,0x1930,0x1931,0x1952,0x1154,0x21F7,0x2217,0x1195,0x1133,0x1132,0x1932,0x2131,0x2930,0x2930,0x210F,0x210F,0x210E,0x292F,0x292F,0x292F,0x210E,0x210E,0x210E,0x292E,0x292E,0x292E,0x292F,0x292F,0x290F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210E,0x210E,0x290E,0x290E,0x290E,0x292F,0x292F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x292F,0x210E,0x290E,0x290F,0x290E,0x290F,0x290F,0x28EF,0x290F,0x290F,0x290F,0x290F,0x28EF,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x28EE,0x290E,0x290E,0x210E,0x290F,0x290F,0x290E,0x210E,0x290E,0x290F,0x290F,0x290F,0x290F,0x210F,0x20EE,0x210E,0x210E,0x290E,0x292F,0x210E,0x210E,0x20EE,0x290E,0x290E,0x290F,0x290F,0x292F,0x290E,0x292F,0x290E,0x290E,0x290E,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290E,0x290E,0x292F,0x292E,0x210E,0x290F,0x290F,0x290F,0x290F,0x290E,0x290F,0x290E,0x292F,0x292F,0x290E,0x290E,0x292F,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290E,0x290F,0x290E,0x290E,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x292F,0x292F, + 0x212E,0x212E,0x212F,0x292F,0x212F,0x210F,0x18EF,0x1910,0x1910,0x1911,0x1973,0x1974,0x19B5,0x21F6,0x21D6,0x19B5,0x1974,0x1932,0x1932,0x1911,0x18F0,0x20F0,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2930,0x210F,0x290F,0x292F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x292F,0x212F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x292F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x290F,0x292F,0x292F,0x292F,0x210F,0x212F,0x212F,0x210F,0x292F,0x210F,0x292F,0x290F,0x292F,0x212F,0x212F,0x210F,0x210F,0x210F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x290F,0x292F,0x292F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x292F,0x292F,0x290F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2130,0x1931,0x1931,0x1132,0x1133,0x1174,0x19D5,0x21F6,0x21D6,0x1994,0x1133,0x1932,0x1931,0x1930,0x190F,0x210F,0x210F,0x212F,0x292F,0x212F,0x292E,0x212E,0x212E,0x212E,0x212E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x210E,0x292F,0x290F,0x210F,0x210F,0x290F,0x210F,0x290F,0x210E,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210E,0x290F,0x292F,0x210E,0x210E,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x210E,0x210E,0x210E,0x290E,0x210E,0x210E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290F,0x290F,0x210E,0x290E,0x210E,0x290E,0x290F,0x290F,0x290E,0x210E,0x210E,0x290E,0x290E,0x290F,0x210E,0x290F,0x290F,0x210E,0x210E,0x210E,0x210E,0x210E,0x290E,0x290E,0x292F,0x210E,0x290E,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x292F,0x292F,0x290E,0x290E,0x28EE,0x30CE,0x38CD,0x6990,0x9212,0xA233,0xAA53,0xA232,0xA211,0x99F0,0x99EE,0xA2CE,0xFDD6,0xFE95,0xFED4,0xFEF3,0xFEF2,0xFED2,0xFED2,0xFED1,0xFED1,0xFED1,0xFEB1,0xFED1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFED0,0xFEB0,0xFEB0,0xFED0,0xFED0,0xFEAF,0xFECF,0xFECF,0xFECF,0xFEAF,0xFECF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED1,0xFEB0,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEAF,0xFED0,0xFECF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED0,0xFED0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB1,0xFED1,0xFED1,0xFED1,0xFEB1,0xFEB0,0xFEB0,0xFED1,0xFED1,0xFEB0,0xFEB0,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED0,0xFEB0,0xFEB0,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFED1,0xFED1,0xFED1,0xFEB1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFECF,0xFECF,0xFECF,0xFECF,0xFEAF,0xFECF,0xFECF,0xFECF,0xFECF,0xFECF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFECF,0xFECF,0xFECF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFECF,0xFECF,0xFEAF,0xFEAF,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFED0,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFEB1,0xFEB1,0xFEB1,0xFED1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB2,0xFEB1,0xFEB1,0xFEB2,0xFEB2,0xFED2,0xFEB2,0xFED2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFED2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEB1,0xFEB1,0xFEB1,0xFEB2,0xFEB2,0xFEB2,0xFED2,0xFED2,0xFEB2,0xFED2,0xFEB2,0xFEB2,0xFEB2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF5,0xFEF6,0xFE97,0xF596,0xAA8E,0x99AD,0xA1B0,0xA9D1,0xA9F2,0xA9F3,0xA9F3,0xAA13,0xAA14,0xAA14,0xAA34,0x91D4,0x89B3,0x89D4,0x91D5,0x99F5,0xA216,0xAA16,0xAA37,0xA238,0xA259,0x821A,0x38D8,0x291B,0x215C,0x119D,0x099E,0x01BE,0x01BF,0x01BF,0x01DF,0x01DF,0x01DF,0x01FF,0x021F,0x01FF,0x01FE,0x021E,0x021D,0x023D,0x025B,0x02F9,0x1D3C,0x267C,0x26FC,0x1F39,0x06F4,0x0712,0x1794,0x1F75,0x2778,0x371A,0x5F7F,0x55FC,0x3375,0x3A74,0x4A55,0x51F4,0x51D4,0x51B4,0x51B4,0x5193,0x5193,0x51B3,0x49B3,0x4972,0x4992,0x4172,0x4191,0x4171,0x4171,0x3971,0x3971,0x3971,0x3150,0x3130,0x3150,0x3150,0x3150,0x312F,0x3150,0x312F,0x312F,0x3150,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210E,0x290F,0x290F,0x290F,0x210E,0x292F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x210E,0x290F,0x290F,0x290F,0x290E,0x290E,0x290F,0x210E,0x210F,0x210F,0x290F,0x290E,0x210E,0x210E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x210E,0x210E,0x290E,0x290E,0x292F,0x292F,0x212F,0x210F,0x2110,0x1910,0x1132,0x1194,0x19B6,0x19B6,0x1195,0x1111,0x1931,0x2130,0x212F,0x212F,0x212F,0x210E,0x212F,0x294F,0x214F,0x212F,0x1930,0x1910,0x1132,0x1153,0x21F6,0x2237,0x19F6,0x0953,0x0912,0x1932,0x1931,0x2951,0x2130,0x210F,0x210F,0x210E,0x290F,0x292F,0x292F,0x210F,0x292F,0x292E,0x292E,0x290E,0x210E,0x292F,0x292F,0x210E,0x210F,0x210F,0x292F,0x210F,0x210F,0x210E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x210E,0x210E,0x290F,0x290F,0x292F,0x290E,0x290E,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x20EE,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x20EE,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292F,0x292F,0x290F,0x292F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x210F,0x210E,0x210E,0x290E,0x290E,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x210E,0x290E,0x290E,0x290E,0x290E,0x210E,0x210F,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290F,0x290E,0x290E,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x210E,0x210E,0x210E,0x290F,0x210E,0x290E,0x290F,0x290F,0x290F,0x290F,0x210E,0x290F,0x290E,0x290E,0x290F,0x290F,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290F,0x290F, + 0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x1910,0x1910,0x1931,0x1153,0x1994,0x19B5,0x19D6,0x21F6,0x21D5,0x1974,0x1953,0x1111,0x18F1,0x18F0,0x18F0,0x2131,0x2131,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x2130,0x2130,0x210F,0x210F,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x212F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x210F,0x290F,0x210F,0x2930,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x2930,0x290F,0x212F,0x210F,0x210F,0x210F,0x210F,0x2110,0x2110,0x2131,0x1911,0x1111,0x1112,0x1132,0x1174,0x19D5,0x21F6,0x21F6,0x1995,0x1133,0x1932,0x1911,0x1910,0x190F,0x190F,0x210F,0x212F,0x294F,0x212F,0x212E,0x210E,0x210E,0x212E,0x212E,0x292F,0x292E,0x210E,0x290E,0x292F,0x290E,0x210E,0x290F,0x210E,0x290F,0x290F,0x210E,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290E,0x290E,0x210E,0x292F,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x292F,0x290E,0x210E,0x290E,0x290E,0x210E,0x210E,0x210E,0x210E,0x290E,0x290F,0x290E,0x290E,0x210E,0x290E,0x210E,0x290F,0x290F,0x290E,0x290E,0x290E,0x210E,0x290F,0x290E,0x292F,0x210E,0x290F,0x290F,0x290E,0x210E,0x290E,0x210E,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292E,0x292E,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292E,0x292E,0x290E,0x290E,0x28EE,0x30CD,0x48EE,0x79D1,0x9A33,0xA253,0xAA53,0xA232,0x99F1,0x99F0,0x91ED,0x9A8D,0xFDF6,0xFE96,0xFED4,0xFED3,0xFED2,0xFED2,0xFED2,0xFED1,0xFED1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEB0,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEAF,0xFEB0,0xFEB0,0xFEAF,0xFEAF,0xFED0,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFED0,0xFED0,0xFEB0,0xFEB0,0xFED0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEAF,0xFED0,0xFECF,0xFED0,0xFED0,0xFED0,0xFEAF,0xFECF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFED0,0xFEB0,0xFED1,0xFED0,0xFED1,0xFEB0,0xFED1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB2,0xFEB1,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB1,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFED2,0xFED2,0xFEB2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEB2,0xFED2,0xFED2,0xFED2,0xFEB2,0xFEB2,0xFEB1,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFED2,0xFED2,0xFEB2,0xFED2,0xFEB2,0xFED2,0xFED2,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFEB3,0xFED3,0xFED3,0xFED3,0xFED4,0xFED4,0xFEF4,0xFEF4,0xFEF4,0xFEF5,0xFED6,0xFEB7,0xF596,0xB2EF,0x99CE,0xA1B0,0xA9D1,0xA9D2,0xA9F3,0xA9F3,0xAA14,0xAA14,0xAA14,0xAA34,0x9A14,0x89B3,0x89B4,0x89D4,0x89B4,0x99F5,0xA216,0xAA37,0xAA37,0xA238,0x9A39,0x79D9,0x38D9,0x291B,0x195C,0x117D,0x019E,0x01BE,0x01BF,0x01DF,0x01DF,0x01FF,0x01FF,0x01FF,0x021F,0x021F,0x021F,0x021E,0x021E,0x023C,0x025B,0x02F9,0x151C,0x267C,0x26FC,0x1F39,0x0714,0x0712,0x1774,0x1F55,0x3778,0x36B9,0x6F5F,0x4519,0x3314,0x4254,0x4A14,0x51D4,0x59D4,0x51B4,0x59D4,0x59B4,0x51B3,0x4992,0x4992,0x4992,0x4992,0x4192,0x4171,0x4171,0x3971,0x3971,0x3970,0x3970,0x3950,0x3950,0x3150,0x3150,0x3150,0x312F,0x312F,0x312F,0x312F,0x312F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290E,0x290E,0x292F,0x292F,0x210E,0x290F,0x290F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290E,0x290E,0x290F,0x290F,0x290E,0x290E,0x290F,0x290E,0x292F,0x290E,0x290E,0x290F,0x290E,0x292F,0x290E,0x292F,0x290E,0x290E,0x292F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290F,0x290F,0x290E,0x210E,0x290E,0x290E,0x290F,0x290F,0x290F,0x290E,0x290E,0x210E,0x212E,0x212E,0x292F,0x290E,0x292F,0x212F,0x210F,0x2130,0x1930,0x1132,0x1174,0x19D6,0x19D6,0x1995,0x1131,0x1931,0x2130,0x210F,0x212F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x1930,0x1930,0x1931,0x1132,0x19B5,0x2237,0x2217,0x1195,0x0912,0x1112,0x1911,0x2131,0x2130,0x2930,0x212F,0x292F,0x210E,0x290F,0x292F,0x292F,0x210E,0x292E,0x290E,0x292E,0x290E,0x292E,0x290E,0x292F,0x292F,0x212F,0x210F,0x292F,0x210F,0x292F,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290E,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x292F,0x210E,0x210E,0x290E,0x290E,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290F,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x210E,0x210E,0x210E,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x290F,0x292F,0x290F,0x290F,0x210F,0x210E,0x210E,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x210E,0x290E,0x292F,0x290E,0x292F,0x210E,0x290F,0x210F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290E,0x290E,0x292F,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290E,0x290F,0x292F,0x290F,0x290E,0x290E,0x292F,0x290F,0x292F,0x210E,0x210E,0x290F,0x290F,0x290F,0x210E,0x290F,0x290E,0x290E,0x290F,0x290F,0x290E,0x290F,0x290E,0x290E,0x290E,0x290F,0x290E,0x290E,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x292F, + 0x212F,0x212F,0x210E,0x210E,0x210E,0x212F,0x2950,0x2150,0x2150,0x1910,0x1910,0x1931,0x1132,0x1174,0x19D5,0x19D6,0x2216,0x19D5,0x1994,0x1153,0x1111,0x1931,0x1932,0x1931,0x2151,0x2172,0x2151,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x212F,0x212F,0x2110,0x2110,0x212F,0x210F,0x2110,0x2110,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x210F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x210F,0x2110,0x2130,0x2130,0x2131,0x1911,0x1932,0x1932,0x1132,0x1133,0x1174,0x19D6,0x2217,0x2216,0x1994,0x1152,0x1131,0x1911,0x1910,0x1910,0x2130,0x212F,0x210F,0x212F,0x212E,0x292F,0x292E,0x210E,0x210E,0x212E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292F,0x292F,0x292F,0x290E,0x292F,0x290F,0x290F,0x290F,0x210F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290E,0x292F,0x292E,0x292E,0x210E,0x290E,0x210E,0x290E,0x292E,0x290E,0x290E,0x292F,0x292E,0x290E,0x290E,0x290E,0x290F,0x290F,0x292F,0x290E,0x292F,0x292F,0x292F,0x210F,0x290E,0x292F,0x292F,0x290E,0x292F,0x290E,0x292F,0x290E,0x290E,0x290E,0x292F,0x292F,0x292F,0x290E,0x290E,0x290E,0x290F,0x290E,0x292F,0x290E,0x292F,0x290E,0x292F,0x290E,0x292F,0x292F,0x292F,0x292F,0x290F,0x290E,0x292F,0x290E,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292E,0x292F,0x292E,0x290E,0x292F,0x292F,0x292F,0x290E,0x292E,0x292F,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x28EE,0x30EE,0x38CE,0x510E,0x8A13,0x9A53,0xAA73,0xAA53,0xA212,0x99F1,0x99F0,0x91EE,0x9A4C,0xED55,0xFE96,0xFED5,0xFED3,0xFED3,0xFED2,0xFED2,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEAF,0xFEB0,0xFEB0,0xFEB0,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEAF,0xFEB0,0xFEAF,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFE90,0xFEB0,0xFE90,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFE90,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEAF,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEAF,0xFEAF,0xFED0,0xFEAF,0xFEB0,0xFEAF,0xFEB0,0xFEB0,0xFEAF,0xFEB0,0xFEB0,0xFEB0,0xFEAF,0xFEAF,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEAF,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB1,0xFEB1,0xFEB0,0xFEB1,0xFEB0,0xFEB1,0xFED1,0xFEB1,0xFEB1,0xFED1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFED1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFED2,0xFED2,0xFED2,0xFEB2,0xFED2,0xFED2,0xFED2,0xFEB2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEB2,0xFEB2,0xFED2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFEB2,0xFED2,0xFEB2,0xFED2,0xFEB2,0xFED2,0xFED2,0xFED3,0xFED2,0xFED3,0xFED3,0xFEB3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED4,0xFEF4,0xFEF4,0xFEF4,0xFEF5,0xFED6,0xFEB7,0xFE18,0xA28E,0x99AE,0xA1B0,0xA1B1,0xA9F2,0xA9F3,0xA9F3,0xA1F3,0xA214,0xAA14,0xAA35,0xA235,0x91F4,0x89F4,0x89D4,0x81B4,0x81B4,0x91F5,0xA216,0xAA37,0xAA37,0xA238,0x923A,0x6178,0x38F9,0x293B,0x197D,0x119D,0x019E,0x01BE,0x01BF,0x01DF,0x01DF,0x01FF,0x01FF,0x01FF,0x021F,0x021F,0x021F,0x021E,0x021D,0x023D,0x027B,0x02F9,0x14FB,0x267D,0x26FC,0x1F39,0x0EF4,0x0F12,0x1F74,0x2735,0x3F38,0x4EBA,0x5E3B,0x2B94,0x3293,0x4213,0x49F4,0x59D4,0x51B4,0x5193,0x5994,0x59B4,0x5193,0x4972,0x4992,0x4972,0x4992,0x4171,0x4191,0x4171,0x4171,0x3970,0x3971,0x3970,0x3950,0x3950,0x312F,0x3150,0x3150,0x312F,0x314F,0x312F,0x314F,0x312F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292E,0x292E,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290E,0x290F,0x290F,0x290F,0x292F,0x290F,0x290E,0x290F,0x292F,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292F,0x292F,0x290E,0x292F,0x292F,0x290E,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290F,0x290F,0x290F,0x292F,0x292E,0x292E,0x292E,0x212E,0x292E,0x292E,0x292F,0x292F,0x210F,0x210F,0x1910,0x1932,0x1994,0x19D6,0x19D6,0x1995,0x1131,0x1930,0x2130,0x212F,0x212F,0x294F,0x212F,0x212F,0x292F,0x212F,0x212F,0x2130,0x1930,0x1931,0x1952,0x1994,0x2216,0x2237,0x19D6,0x1154,0x1112,0x10F1,0x1911,0x2131,0x2950,0x292F,0x292F,0x290F,0x210E,0x210F,0x292F,0x292F,0x292F,0x290E,0x292E,0x292E,0x292E,0x290E,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x292F,0x292E,0x292E,0x292E,0x290E,0x290E,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290E,0x292F,0x292E,0x292E,0x290F,0x292F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290E,0x290F,0x290F,0x290F,0x290F,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x210E,0x210E,0x212F,0x210E,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x292F,0x290F,0x290F,0x290E,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290E,0x290E,0x292F,0x292F,0x290E,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290F,0x290F,0x292F,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290F,0x290E,0x292F,0x292F,0x292F,0x292F,0x290F,0x290E,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290E,0x290F,0x290F,0x290E,0x290E,0x292F,0x292F,0x292F,0x290E,0x292F,0x292F,0x290E,0x290E,0x290F,0x290E,0x292F,0x292F,0x290F,0x290F,0x290E,0x290E,0x290F,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x290F,0x290E,0x290F,0x290E,0x290E,0x292F,0x292F, + 0x212F,0x212E,0x210E,0x210E,0x212E,0x212F,0x212F,0x2970,0x2150,0x190F,0x1910,0x1911,0x1111,0x1152,0x1173,0x19B5,0x21D6,0x21F6,0x19D5,0x19B4,0x1153,0x1152,0x1112,0x1132,0x1131,0x1131,0x1931,0x1931,0x1931,0x2131,0x2130,0x2130,0x2130,0x1930,0x2131,0x2130,0x2130,0x2130,0x2130,0x1930,0x2130,0x1930,0x2130,0x2130,0x1930,0x2130,0x2130,0x2130,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2131,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2131,0x2130,0x2130,0x2130,0x2130,0x1910,0x2130,0x2130,0x2130,0x1930,0x2130,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1910,0x2130,0x2130,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x1910,0x1931,0x1931,0x1911,0x1912,0x1112,0x1133,0x1994,0x21F6,0x2216,0x21F6,0x1994,0x1973,0x1131,0x1911,0x1910,0x1910,0x2130,0x212F,0x210F,0x210F,0x292F,0x292F,0x292E,0x210E,0x212E,0x210E,0x210E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292F,0x292F,0x292F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290E,0x292F,0x292F,0x292F,0x290E,0x290E,0x292E,0x290E,0x292F,0x290E,0x290E,0x292E,0x292E,0x292E,0x292F,0x292E,0x292E,0x290E,0x292F,0x290F,0x290E,0x292F,0x292F,0x290E,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292E,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292F,0x290E,0x292F,0x290E,0x290E,0x290E,0x292F,0x290E,0x290F,0x292F,0x292F,0x292E,0x292E,0x292E,0x292E,0x292E,0x292F,0x290F,0x290F,0x292F,0x292E,0x292E,0x292F,0x292E,0x292E,0x292E,0x290E,0x292F,0x292E,0x292E,0x292E,0x292E,0x292F,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x28EE,0x30EE,0x38AD,0x6170,0x9253,0xA294,0xAA73,0xA233,0xA212,0x99F1,0x99D0,0x91EE,0x922C,0xD492,0xFE77,0xFEB6,0xFEB4,0xFEB3,0xFEB2,0xFEB2,0xFED2,0xFEB2,0xFEB2,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFEB0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFED1,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB1,0xFEB1,0xFEB1,0xFEB0,0xFEB0,0xFEB1,0xFEB1,0xFED1,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB1,0xFEB1,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFEB0,0xFEB0,0xFEB0,0xFED0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFEB0,0xFED0,0xFEB0,0xFED0,0xFEB0,0xFEB0,0xFED0,0xFED0,0xFED1,0xFED0,0xFED0,0xFED0,0xFEB1,0xFED1,0xFED1,0xFED1,0xFED1,0xFEB1,0xFED1,0xFED1,0xFED1,0xFEB1,0xFEB1,0xFEB1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFED2,0xFED2,0xFED2,0xFED2,0xFEB2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEB2,0xFEB2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED3,0xFED2,0xFED2,0xFED2,0xFED3,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEB2,0xFED2,0xFED3,0xFED2,0xFED3,0xFED3,0xFED2,0xFED2,0xFED2,0xFED3,0xFEB2,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED4,0xFED4,0xFEF4,0xFEF5,0xFEF5,0xFED6,0xFEB7,0xFDD7,0xAACE,0x99EF,0xA1B0,0xA1D1,0xA9D2,0xA9F3,0xAA13,0xA9F3,0xAA13,0xA214,0xA214,0xA235,0x91D4,0x89D4,0x89F5,0x81D4,0x81B4,0x81B4,0x91F6,0xA216,0xAA37,0xA217,0xA239,0x8A1A,0x5938,0x391A,0x293C,0x197D,0x099D,0x01BE,0x01DF,0x01DF,0x01DF,0x01FF,0x01FF,0x01FF,0x01FF,0x021F,0x023F,0x023F,0x023E,0x023E,0x025D,0x027B,0x02F9,0x0CBB,0x265D,0x26DC,0x273A,0x0ED4,0x0EF2,0x2754,0x2F14,0x4718,0x569A,0x5559,0x2AF3,0x3A52,0x4A13,0x51F4,0x59B4,0x5193,0x5193,0x59B4,0x5193,0x5193,0x4992,0x4992,0x4992,0x4992,0x4192,0x4192,0x4171,0x4171,0x3971,0x3971,0x3970,0x3950,0x3950,0x3150,0x3150,0x3150,0x312F,0x312F,0x312F,0x312F,0x312F,0x310F,0x310F,0x290F,0x290F,0x290F,0x290E,0x292F,0x290F,0x290F,0x290E,0x292F,0x290E,0x292E,0x292E,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290E,0x290E,0x292F,0x292F,0x290E,0x290E,0x290F,0x292F,0x292E,0x292E,0x292F,0x292E,0x292E,0x292E,0x292E,0x210E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292F,0x290F,0x290E,0x292F,0x292F,0x292E,0x292E,0x290E,0x290E,0x290E,0x292F,0x292F,0x210F,0x212F,0x1910,0x1932,0x1994,0x19B6,0x19D6,0x1995,0x1111,0x1930,0x2130,0x212F,0x212F,0x294F,0x212F,0x210E,0x212F,0x210F,0x212F,0x2130,0x1930,0x1931,0x1932,0x1953,0x19D5,0x2237,0x21F6,0x19B5,0x1154,0x1112,0x1911,0x1911,0x2951,0x2930,0x292F,0x290F,0x210F,0x210E,0x210F,0x292F,0x210E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290F,0x292F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292E,0x290E,0x292F,0x292E,0x290E,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x292F,0x292E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290E,0x290F,0x290F,0x290E,0x292E,0x292E,0x292E,0x210E,0x292E,0x210E,0x212E,0x210E,0x210E,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292F,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x292F,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292F,0x290E,0x290E,0x292F,0x292F,0x290E,0x292F,0x292F,0x290E,0x290E,0x292F,0x290F,0x292F,0x292F,0x290E,0x290F,0x290F,0x292F,0x292E,0x292E,0x290E,0x292F,0x292F,0x292F,0x292F,0x292E,0x292E,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290E,0x290E,0x290E,0x290F,0x290E,0x292F,0x292F,0x292F,0x292F,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290F, + 0x212E,0x212E,0x212E,0x210E,0x210E,0x210E,0x292F,0x210F,0x292F,0x212F,0x2130,0x2110,0x1931,0x1911,0x1932,0x1153,0x1994,0x19B5,0x19B5,0x19B5,0x19B5,0x1174,0x0932,0x0912,0x0911,0x1111,0x1131,0x1111,0x1111,0x1931,0x1110,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1910,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1930,0x1930,0x1930,0x1931,0x1931,0x1930,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1951,0x1931,0x1931,0x1931,0x1930,0x1930,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1930,0x1931,0x1931,0x1930,0x1931,0x1931,0x1931,0x1930,0x1930,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1112,0x1112,0x1133,0x1174,0x21D5,0x21F6,0x19D5,0x1173,0x1132,0x1131,0x1931,0x1910,0x2110,0x210F,0x212F,0x212F,0x292F,0x290E,0x292E,0x290E,0x210E,0x210E,0x210E,0x212E,0x210E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290F,0x292F,0x210E,0x290F,0x292F,0x290E,0x290E,0x292F,0x292F,0x292F,0x292F,0x292F,0x292E,0x290E,0x290E,0x290E,0x290F,0x292F,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290E,0x290E,0x292E,0x290E,0x290E,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290F,0x290E,0x290E,0x290F,0x290F,0x290F,0x292E,0x290E,0x290F,0x290E,0x292F,0x290E,0x290F,0x290F,0x292F,0x290E,0x290F,0x290E,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x292F,0x290E,0x290E,0x290F,0x292F,0x292F,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292F,0x292F,0x292E,0x292E,0x292F,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292F,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x30CE,0x40CE,0x6170,0x9253,0xA253,0xA253,0xAA53,0xA232,0xA211,0x99F0,0x91EF,0x920D,0xAB0F,0xE514,0xFE36,0xFE95,0xFEB4,0xFEB3,0xFEB3,0xFEB3,0xFEB2,0xFEB2,0xFEB2,0xFEB1,0xFEB1,0xFEB1,0xFEB1,0xFED1,0xFEB1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFEF1,0xFED1,0xFED1,0xFED0,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED0,0xFED0,0xFED0,0xFED0,0xFED0,0xFED1,0xFED0,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED0,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED1,0xFED2,0xFED2,0xFED2,0xFEF2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEF2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED3,0xFED3,0xFED2,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFED3,0xFEF3,0xFED3,0xFED3,0xFEF3,0xFED3,0xFED3,0xFED3,0xFED3,0xFEF4,0xFED4,0xFED4,0xFED4,0xFED4,0xFEF4,0xFED5,0xFEF5,0xFED7,0xFE98,0xFDB8,0xA24E,0x99CE,0xA1D1,0xA9D2,0xA9F3,0xA9F3,0xA9F3,0xAA14,0xAA14,0xAA14,0xA214,0xA235,0x9214,0x81D4,0x81D4,0x81D4,0x81D5,0x81B4,0x89B4,0x9A16,0xA216,0xA217,0xA238,0x9A59,0x81FA,0x4918,0x391A,0x295C,0x197D,0x099E,0x01BE,0x01BF,0x01DF,0x01FF,0x01FF,0x01FF,0x021F,0x021F,0x021F,0x023F,0x023F,0x025E,0x025E,0x025D,0x027C,0x02FA,0x045A,0x261C,0x26DC,0x273A,0x0EB4,0x0EB1,0x2F33,0x36F4,0x4EF7,0x7F3C,0x3C14,0x32B2,0x4232,0x5213,0x59F4,0x61D4,0x59B4,0x5993,0x59B4,0x59B3,0x51B3,0x4992,0x5192,0x4992,0x4992,0x4171,0x4191,0x4171,0x4171,0x3971,0x3950,0x3970,0x3950,0x3150,0x3150,0x3130,0x3130,0x312F,0x314F,0x312F,0x312F,0x312F,0x312F,0x312F,0x312F,0x290F,0x292F,0x292F,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290E,0x290E,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290E,0x290F,0x290E,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x210E,0x292E,0x290E,0x292E,0x290E,0x292E,0x290E,0x210E,0x290E,0x290E,0x292F,0x290F,0x290F,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x210E,0x290E,0x292E,0x292F,0x292F,0x210F,0x210F,0x210F,0x1910,0x1931,0x1994,0x19D6,0x21F7,0x1995,0x1111,0x1910,0x2130,0x2930,0x212F,0x212F,0x210E,0x212F,0x210E,0x292F,0x212F,0x212F,0x212F,0x1910,0x1931,0x1952,0x1994,0x19D5,0x19F6,0x21F6,0x19B5,0x1153,0x1112,0x18F1,0x2131,0x2930,0x2950,0x290F,0x292F,0x292F,0x210F,0x210F,0x292F,0x292F,0x210E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290E,0x290E,0x292E,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290F,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x292F,0x290E,0x290F,0x292F,0x290E,0x292F,0x290F,0x292E,0x292E,0x290E,0x290E,0x212E,0x210E,0x290E,0x290E,0x210E,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x210F,0x210F,0x2930,0x2130,0x2930,0x212F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290E,0x292E,0x290E,0x292F,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290F,0x290F,0x290E,0x290E,0x290F,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292F,0x290E,0x292F,0x292F,0x292E,0x290E,0x290E,0x290E,0x292F,0x292E,0x290E,0x290E,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292E,0x290E,0x290E,0x290E,0x292F, + 0x212E,0x212E,0x212E,0x212E,0x292E,0x290E,0x292E,0x210E,0x292F,0x212F,0x212F,0x2930,0x2130,0x1911,0x1911,0x1932,0x1953,0x1994,0x19D5,0x19D6,0x11B5,0x19D5,0x1194,0x1153,0x0932,0x0911,0x1111,0x1132,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1111,0x1131,0x1131,0x1131,0x1131,0x1932,0x1131,0x1952,0x1952,0x1932,0x1932,0x1952,0x1932,0x1932,0x1131,0x1932,0x1932,0x1932,0x1132,0x1132,0x1931,0x1932,0x1131,0x1131,0x1932,0x1931,0x1931,0x1931,0x1131,0x1931,0x1931,0x1131,0x1131,0x1131,0x1131,0x1131,0x1931,0x1952,0x1931,0x1952,0x1952,0x1932,0x1952,0x1952,0x1932,0x1932,0x1952,0x1952,0x1932,0x1932,0x1952,0x1931,0x1952,0x1931,0x1951,0x1951,0x1931,0x1952,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1931,0x1931,0x1932,0x1932,0x1952,0x1931,0x1931,0x1931,0x1951,0x1931,0x1931,0x1931,0x1951,0x1951,0x1931,0x1931,0x1951,0x1951,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1931,0x1951,0x1931,0x1952,0x1951,0x1951,0x1952,0x1952,0x1931,0x1932,0x1932,0x1932,0x1952,0x1952,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1932,0x1931,0x1932,0x1931,0x1931,0x1932,0x1132,0x1132,0x1132,0x1112,0x1112,0x1954,0x21D6,0x21D5,0x21D5,0x1973,0x1132,0x1931,0x1910,0x1910,0x190F,0x212F,0x210F,0x212F,0x210F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210E,0x292E,0x292E,0x210E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x292E,0x292F,0x292F,0x292F,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290E,0x290E,0x290E,0x290F,0x290E,0x290E,0x290E,0x292F,0x292E,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x292E,0x292F,0x292F,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292F,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292F,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x30EE,0x30CE,0x40CD,0x6150,0x8A53,0xA273,0xA273,0xA253,0xA232,0x9A11,0x99F1,0x99F0,0x91EE,0x9A4D,0xAB2E,0xE533,0xFE76,0xFE76,0xFE95,0xFE94,0xFE94,0xFEB3,0xFE93,0xFEB2,0xFEB2,0xFEB2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF1,0xFEF1,0xFEF2,0xFEF2,0xFEF1,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFED2,0xFED2,0xFEF2,0xFEF2,0xFEF2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF1,0xFEF1,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEF2,0xFED2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFED2,0xFED2,0xFEF2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEF2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEF2,0xFED2,0xFED2,0xFED2,0xFEF2,0xFEF2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEF2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFED2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF3,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF2,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF4,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFED5,0xFED5,0xFED5,0xFEB5,0xFED6,0xFEB6,0xFE97,0xFE78,0xE4F5,0x9A4E,0x99CF,0xA1B1,0xA1B2,0xA9F3,0xA9F3,0xAA13,0xA9F3,0xA9F3,0xAA14,0xAA34,0xA235,0x91F4,0x81B3,0x79D4,0x79D4,0x79D4,0x79D4,0x81B4,0x89D5,0x9A16,0xA216,0xA217,0xA238,0x9A5A,0x71DA,0x40F9,0x313B,0x215C,0x117D,0x099E,0x01BE,0x01DF,0x01DF,0x01FF,0x01FF,0x021F,0x023F,0x023F,0x023F,0x025F,0x025F,0x025E,0x027E,0x027D,0x027C,0x02FA,0x03F9,0x25DD,0x2EDD,0x273A,0x0EB4,0x16D2,0x2F33,0x36B4,0x5ED7,0x7EDB,0x3B72,0x3A72,0x4212,0x5A14,0x61F4,0x61D4,0x61D4,0x59B3,0x59B3,0x5193,0x51B3,0x51B3,0x51B2,0x4992,0x4171,0x4192,0x4171,0x4171,0x4171,0x3950,0x3950,0x3950,0x3950,0x3150,0x3130,0x3150,0x312F,0x312F,0x312F,0x312F,0x312F,0x312F,0x312F,0x312F,0x290E,0x292F,0x292F,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290F,0x292F,0x290F,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290F,0x290E,0x290F,0x290E,0x290E,0x210E,0x210E,0x290E,0x290E,0x290E,0x210E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x290E,0x292E,0x290E,0x292E,0x290F,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290F,0x210E,0x292F,0x210F,0x1910,0x1131,0x1994,0x19B6,0x19D6,0x19B5,0x1111,0x1910,0x2130,0x2930,0x212F,0x212F,0x212F,0x212F,0x292F,0x212F,0x294F,0x210F,0x212F,0x2130,0x1930,0x1931,0x1152,0x1173,0x19D5,0x19D6,0x21D6,0x1994,0x1953,0x1112,0x1911,0x2110,0x2130,0x2930,0x292F,0x210F,0x210F,0x210F,0x292F,0x292F,0x210E,0x290F,0x290E,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290F,0x292F,0x290E,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290F,0x290E,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x210E,0x210E,0x292E,0x212E,0x292E,0x290E,0x290E,0x292F,0x212F,0x210F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x292F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292F, + 0x212E,0x212E,0x292E,0x290E,0x290E,0x292E,0x20EE,0x290E,0x290E,0x292F,0x292F,0x212F,0x2950,0x2130,0x1910,0x1931,0x1952,0x1973,0x19B4,0x19D5,0x19F5,0x19D5,0x19B5,0x19B4,0x1194,0x1994,0x1993,0x1173,0x1973,0x1972,0x1952,0x1952,0x1152,0x1152,0x1152,0x1152,0x1972,0x1152,0x1953,0x1152,0x1972,0x1152,0x1152,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1152,0x1953,0x1952,0x1952,0x1952,0x1953,0x1953,0x1953,0x1953,0x1953,0x1953,0x1953,0x1953,0x1953,0x1952,0x1952,0x1972,0x1952,0x1152,0x1972,0x1972,0x1952,0x1952,0x1972,0x1952,0x1952,0x1152,0x1972,0x1152,0x1952,0x1952,0x1952,0x1952,0x1973,0x1952,0x1952,0x1972,0x1953,0x1953,0x1952,0x1972,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1972,0x1973,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1972,0x1152,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1952,0x1973,0x1952,0x1972,0x1952,0x1952,0x1952,0x1973,0x1972,0x1973,0x1952,0x1973,0x1973,0x1973,0x1952,0x1952,0x1952,0x1953,0x1953,0x1953,0x1953,0x1952,0x1953,0x1953,0x1953,0x1953,0x1973,0x1952,0x1952,0x1973,0x1953,0x1973,0x1973,0x1994,0x1994,0x21F6,0x21D5,0x21D5,0x1973,0x1952,0x1111,0x1931,0x1910,0x2130,0x212F,0x212F,0x212F,0x210E,0x210E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x210E,0x210E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x292F,0x292F,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x292F,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x292F,0x290F,0x292F,0x290E,0x290E,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x210E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292F,0x292F,0x292F,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x28EE,0x28EE,0x30CD,0x38AD,0x6170,0x9294,0x9A53,0xA253,0xA232,0xA232,0xA212,0x9A11,0x9A10,0x9A0F,0x920E,0x920C,0x9A8D,0xD493,0xED55,0xFE16,0xFE36,0xFE55,0xFE75,0xFE94,0xFEB4,0xFEB3,0xFED3,0xFED3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFF13,0xFF13,0xFF13,0xFF13,0xFF13,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFF14,0xFEF3,0xFEF3,0xFEF4,0xFEF4,0xFEF3,0xFEF3,0xFEF4,0xFEF4,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFF13,0xFEF3,0xFF14,0xFF14,0xFF14,0xFF14,0xFEF4,0xFEF4,0xFF14,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF13,0xFF13,0xFF13,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFF13,0xFEF3,0xFEF3,0xFF13,0xFF14,0xFF14,0xFEF4,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFF13,0xFF13,0xFEF3,0xFF14,0xFF14,0xFEF4,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF13,0xFEF3,0xFEF3,0xFF13,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFF14,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFF14,0xFEF3,0xFEF3,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFF14,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF4,0xFEF4,0xFEF3,0xFEF3,0xFEF4,0xFEF4,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFF14,0xFEF3,0xFEF4,0xFF14,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF4,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFEF3,0xFF14,0xFF13,0xFF14,0xFF13,0xFF13,0xFF13,0xFF13,0xFF13,0xFEF3,0xFEF3,0xFEF3,0xFF13,0xFF14,0xFF13,0xFF14,0xFF13,0xFF13,0xFF13,0xFF13,0xFEF3,0xFEF3,0xFEF3,0xFF13,0xFF13,0xFF13,0xFF13,0xFF13,0xFF13,0xFF13,0xFEF3,0xFF14,0xFEF4,0xFEF4,0xFF14,0xFF14,0xFF14,0xFF14,0xFEF4,0xFEF4,0xFF14,0xFF14,0xFF14,0xFF14,0xFEF4,0xFEF4,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF14,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF35,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFF15,0xFEF5,0xFF15,0xFF15,0xFF15,0xFF16,0xFF16,0xFF16,0xFF16,0xFF16,0xFF16,0xFF16,0xFEF6,0xFEF6,0xFEF6,0xFED6,0xFEB6,0xFEB6,0xFE97,0xFE98,0xFE58,0xF577,0xBB71,0x91CD,0x99D0,0xA1D1,0xA9D2,0xA9F3,0xA9D3,0xA9F3,0xA9F3,0xA9F3,0xAA14,0xA214,0xA235,0x9A35,0x81D4,0x79D4,0x79D4,0x79D4,0x79D4,0x79D4,0x81B4,0x91F6,0x9A16,0xA216,0xA217,0xA258,0x9A9B,0x617A,0x391A,0x315C,0x217D,0x117D,0x099E,0x01DF,0x01DF,0x01FF,0x01FF,0x021F,0x023F,0x025F,0x025F,0x025F,0x027F,0x027F,0x027F,0x029E,0x029D,0x029C,0x02DA,0x0399,0x155B,0x36FE,0x2F5B,0x0EB4,0x1ED2,0x2EF3,0x3EB4,0x6ED8,0x6DD8,0x4332,0x4AB3,0x5233,0x5A14,0x59D3,0x61B3,0x61D4,0x59B3,0x5993,0x5192,0x5192,0x5192,0x51B2,0x4992,0x4992,0x4171,0x4171,0x4171,0x4171,0x3950,0x3950,0x3971,0x3950,0x3150,0x3970,0x3150,0x312F,0x312F,0x312F,0x312F,0x312F,0x312F,0x310F,0x290F,0x292F,0x292E,0x292F,0x292F,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290F,0x290F,0x292F,0x290E,0x290F,0x290F,0x290E,0x290E,0x290E,0x292F,0x292F,0x290E,0x290E,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210E,0x290E,0x210E,0x290E,0x292E,0x292F,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x292F,0x212F,0x2130,0x1930,0x1932,0x1994,0x19B6,0x19D6,0x19B5,0x1111,0x1910,0x210F,0x212F,0x212F,0x294F,0x212F,0x210E,0x210E,0x210E,0x292F,0x212F,0x212F,0x212F,0x2130,0x1930,0x1111,0x1152,0x1994,0x21D5,0x21D6,0x21D5,0x21B5,0x1133,0x1932,0x1911,0x1910,0x2130,0x2130,0x212F,0x210F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290E,0x290E,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290E,0x290F,0x290F,0x292F,0x292F,0x290E,0x290E,0x292E,0x210E,0x292E,0x290E,0x290E,0x292F,0x292F,0x292F,0x292F,0x292F,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x210E,0x210E,0x212E,0x292E,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2130,0x1910,0x1931,0x2131,0x1931,0x1910,0x1930,0x1930,0x2110,0x2130,0x212F,0x212F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292F,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292F,0x292F,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292F,0x292F,0x290E,0x292E,0x292E,0x292E,0x290E,0x292F,0x290E,0x290E, + 0x210E,0x210E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x292F,0x212F,0x210F,0x2110,0x2131,0x1931,0x1952,0x1152,0x1994,0x19D4,0x19F5,0x21F5,0x21F5,0x21F5,0x21F5,0x21F5,0x29F5,0x2A16,0x2A15,0x29F5,0x29F5,0x29F5,0x21F5,0x29F5,0x21D5,0x21F5,0x21D5,0x29F5,0x21D5,0x21F5,0x21D5,0x29F5,0x21D5,0x21D5,0x21D5,0x29F5,0x29D5,0x29D5,0x21D5,0x21D5,0x21D5,0x21D5,0x21D5,0x21D4,0x21D5,0x21D5,0x21D5,0x29D5,0x21D5,0x21D5,0x21D5,0x21D5,0x21B4,0x21D5,0x21D4,0x21D5,0x21B4,0x21D4,0x21D4,0x21B4,0x21B4,0x21D4,0x21B4,0x21D4,0x21D4,0x21D4,0x21B4,0x21B4,0x21B4,0x21D4,0x21B4,0x21D4,0x21B4,0x21B4,0x21B4,0x21B4,0x21B4,0x21B4,0x21B4,0x21B4,0x21B4,0x21D4,0x21B4,0x21B4,0x21B4,0x21B4,0x21B4,0x21B4,0x21B4,0x21D4,0x21B4,0x21B4,0x21B4,0x21D4,0x21D4,0x21B4,0x21B4,0x21B4,0x21B4,0x21D4,0x21B4,0x21D4,0x21B4,0x21D4,0x21B4,0x21D4,0x21B4,0x21D4,0x21B4,0x21D4,0x21D4,0x21D4,0x21B4,0x21D4,0x21B4,0x21B4,0x21B4,0x21D4,0x21B4,0x21D4,0x21B4,0x21B4,0x21B4,0x21D4,0x21B4,0x21D4,0x21B4,0x21B4,0x21B4,0x21D5,0x21B4,0x21B4,0x21B4,0x21D4,0x21B4,0x21D4,0x21B4,0x21D4,0x21B4,0x21D5,0x21B4,0x21D5,0x21D5,0x21D5,0x21D5,0x2A15,0x29F5,0x29F5,0x29F5,0x29F6,0x29F5,0x2A16,0x2A16,0x29F5,0x21D5,0x1973,0x1952,0x1931,0x1910,0x2110,0x210F,0x210F,0x210F,0x210F,0x212E,0x210E,0x210E,0x210E,0x290E,0x290E,0x210E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290E,0x290E,0x292F,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290E,0x290E,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x28EE,0x28EE,0x30CD,0x38AD,0x616F,0x9294,0x9A73,0x9A53,0xA232,0xA232,0xA232,0x9A11,0x9A11,0x9A11,0x9A10,0x920E,0x920D,0x924C,0x9A8C,0xA2ED,0xC3F0,0xD4B2,0xE553,0xF5F5,0xFE56,0xFEB7,0xFEF8,0xFEF8,0xFEF8,0xFF18,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFF18,0xFEF8,0xFF18,0xFF18,0xFEF8,0xFEF8,0xFF18,0xFEF8,0xFEF8,0xFF18,0xFEF8,0xFEF8,0xFF18,0xFF18,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFEF8,0xFF18,0xFEF8,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFF18,0xFF18,0xFEF8,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFEF8,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFEF8,0xFF18,0xFF18,0xFF18,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFF18,0xFEF8,0xFEF8,0xFEF8,0xFF18,0xFF18,0xFF18,0xFF18,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFF18,0xFEF8,0xFEF8,0xFEF8,0xFF18,0xFEF8,0xFF18,0xFF18,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFF18,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFEF8,0xFF18,0xFF18,0xFEF8,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFEF8,0xFF18,0xFF18,0xFF18,0xFEF8,0xFF18,0xFF18,0xFEF8,0xFEF8,0xFEF8,0xFF18,0xFF18,0xFEF8,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFEF8,0xFF18,0xFF18,0xFEF8,0xFEF8,0xFEF8,0xFF18,0xFF18,0xFF18,0xFF18,0xFF18,0xFF19,0xFF19,0xFF19,0xFF18,0xFF18,0xFF18,0xFEF8,0xFEF8,0xFF18,0xFF18,0xFF19,0xFF19,0xFF18,0xFF18,0xFF19,0xFF19,0xFF19,0xFEF9,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFEF9,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFEF9,0xFF1A,0xFF19,0xFF1A,0xFF19,0xFF1A,0xFF19,0xFF19,0xFF19,0xFF19,0xFEF9,0xFF19,0xFF19,0xFF19,0xFF19,0xFF19,0xFEF9,0xFEF9,0xFEF9,0xFEF9,0xFEF9,0xFF19,0xFEF9,0xFEF9,0xFEF9,0xFF1A,0xFF1A,0xFEFA,0xFF1A,0xFF1A,0xFEFA,0xFEFA,0xFF1A,0xFF1A,0xFED9,0xFEB9,0xFE78,0xFE58,0xFDD6,0xED35,0xD473,0xBB70,0xA2AE,0x99ED,0x99CE,0xA1D0,0xA1B1,0xA9D2,0xA9D2,0xA9F3,0xA9F3,0xA9F3,0xA1F3,0xA1F4,0xA214,0xA235,0x91F4,0x81B3,0x79B4,0x79D4,0x79D4,0x79D4,0x79D4,0x79D4,0x81B4,0x91F6,0x9A16,0xA217,0xA237,0xA259,0x9A9B,0x5159,0x311A,0x295C,0x197D,0x097D,0x01BE,0x01DF,0x01FF,0x01FF,0x021F,0x021F,0x023F,0x027F,0x027F,0x027F,0x027F,0x029F,0x029F,0x02BE,0x02BD,0x029C,0x02DB,0x0359,0x14FB,0x3F1F,0x2F5B,0x16B4,0x1692,0x36F3,0x4673,0x6E97,0x6515,0x4B32,0x5292,0x6274,0x59F3,0x61D3,0x61B3,0x61D4,0x59B3,0x5193,0x5192,0x5192,0x51B2,0x4992,0x4992,0x4992,0x4171,0x4171,0x4171,0x4171,0x3971,0x3950,0x3970,0x3950,0x3950,0x3150,0x312F,0x314F,0x312F,0x312F,0x312F,0x312F,0x312F,0x310F,0x290F,0x292F,0x292E,0x292F,0x292E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290E,0x290F,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x210E,0x292E,0x210E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292F,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x292F,0x292F,0x210F,0x2130,0x1910,0x1931,0x1994,0x19B6,0x19D6,0x21B5,0x1111,0x1910,0x2130,0x212F,0x212F,0x294F,0x210E,0x210E,0x212E,0x212E,0x292F,0x292F,0x212F,0x210F,0x212F,0x1910,0x1910,0x1931,0x1152,0x1994,0x21D5,0x21D6,0x21D6,0x1994,0x1132,0x1111,0x1911,0x2130,0x2130,0x2130,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x210F,0x210F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x292F,0x290E,0x292F,0x290E,0x290E,0x290E,0x292F,0x292E,0x290E,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290E,0x290E,0x290E,0x290E,0x210E,0x290E,0x290E,0x292E,0x212E,0x292E,0x212E,0x292F,0x292F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1910,0x1931,0x1931,0x1932,0x1132,0x1152,0x1132,0x1952,0x1131,0x1111,0x1910,0x1910,0x2130,0x2130,0x2930,0x292F,0x292F,0x292F,0x290F,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290F,0x292F,0x290F,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x292F,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292F,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E, + 0x210E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210E,0x292F,0x292F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1931,0x1152,0x1973,0x21B4,0x21D4,0x2A15,0x21F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x21D5,0x29F5,0x29F5,0x21F5,0x21F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x2A16,0x29F5,0x29F5,0x29F5,0x29D5,0x29F5,0x29F5,0x29D5,0x29F5,0x29F5,0x29F5,0x29D5,0x29D5,0x29D5,0x29D5,0x29D5,0x21D5,0x21D5,0x29F5,0x21D5,0x29D5,0x21D4,0x29D5,0x21D5,0x29F5,0x21D4,0x21D4,0x21F5,0x21D5,0x29F5,0x29F5,0x29D4,0x29F5,0x29D5,0x29F5,0x29D5,0x29D5,0x29D4,0x29F4,0x21D4,0x29D4,0x29D4,0x29D5,0x29F5,0x29D5,0x29D4,0x29F5,0x29D4,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x21F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x21F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x21F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x29F5,0x2A16,0x2A16,0x29F5,0x29F5,0x29F5,0x29F5,0x3216,0x3216,0x29F5,0x29F5,0x29F5,0x29D5,0x1994,0x29F5,0x2A15,0x29F5,0x1952,0x1911,0x1910,0x1910,0x2110,0x210F,0x210F,0x210E,0x20EE,0x210E,0x210E,0x210E,0x210E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292F,0x292E,0x290E,0x290E,0x290E,0x292F,0x290E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x20EE,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290F,0x290E,0x290E,0x290F,0x290F,0x290E,0x290E,0x290E,0x290F,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x28ED,0x30CD,0x30AC,0x512E,0x9294,0x9A73,0x9A53,0xA252,0xA232,0x9A32,0x9A32,0x9A11,0x9A11,0x9A10,0x9A10,0x920F,0x91EE,0x91ED,0x89CC,0x818B,0x798B,0x796A,0x7149,0x7149,0x6929,0x6949,0x6929,0x6929,0x6928,0x6949,0x6928,0x6949,0x6928,0x6928,0x6929,0x6949,0x6929,0x6949,0x6929,0x6949,0x6928,0x6949,0x6928,0x6928,0x6928,0x6948,0x6928,0x6949,0x6929,0x6949,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6928,0x6929,0x6929,0x6929,0x6929,0x6929,0x6928,0x6928,0x6929,0x6928,0x6928,0x6928,0x6928,0x6928,0x6929,0x6929,0x6928,0x6929,0x6929,0x6929,0x6929,0x6928,0x6928,0x6928,0x6928,0x6928,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6928,0x6949,0x6929,0x6929,0x6928,0x6929,0x6928,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6928,0x6929,0x6928,0x6928,0x6929,0x6928,0x6929,0x6929,0x6929,0x6928,0x6928,0x6928,0x6929,0x6929,0x6929,0x6928,0x6928,0x6928,0x6929,0x6928,0x6929,0x6928,0x6949,0x6929,0x6949,0x6929,0x6929,0x6928,0x6928,0x6929,0x6928,0x6948,0x6928,0x6928,0x6928,0x6928,0x6928,0x6928,0x6929,0x6929,0x6929,0x6929,0x6929,0x6928,0x6929,0x6929,0x6929,0x6929,0x6949,0x6928,0x6949,0x6928,0x6948,0x6949,0x6949,0x6949,0x6949,0x6929,0x6929,0x6929,0x6929,0x6928,0x6949,0x6949,0x6929,0x6929,0x6929,0x6928,0x6928,0x6929,0x6949,0x6928,0x6949,0x6929,0x6949,0x6929,0x6949,0x6929,0x6949,0x6929,0x6929,0x6929,0x6929,0x6928,0x6928,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6949,0x6949,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6928,0x6929,0x6929,0x6929,0x6928,0x6929,0x6929,0x6929,0x6128,0x6949,0x6929,0x6929,0x6928,0x6929,0x6929,0x6929,0x6929,0x6928,0x6928,0x6929,0x6928,0x6929,0x6929,0x6929,0x6928,0x6928,0x6928,0x6929,0x6928,0x6929,0x6929,0x6949,0x6928,0x6949,0x6929,0x6929,0x6929,0x6929,0x6929,0x6949,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6909,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6949,0x6929,0x6929,0x6929,0x6929,0x6929,0x6929,0x6909,0x6909,0x6929,0x7129,0x7129,0x7129,0x7129,0x7129,0x7129,0x7129,0x7109,0x7129,0x7109,0x7109,0x7109,0x7109,0x7109,0x7109,0x7109,0x7109,0x7109,0x7109,0x70E9,0x7909,0x7109,0x70E9,0x70E9,0x7109,0x7909,0x7909,0x7109,0x7109,0x7109,0x7909,0x7909,0x70E9,0x70E9,0x7909,0x7109,0x7909,0x70E9,0x7909,0x7109,0x7109,0x7109,0x7109,0x70E9,0x7109,0x7109,0x7109,0x7109,0x7109,0x7109,0x7109,0x7109,0x7109,0x7109,0x7109,0x70E9,0x70E9,0x790A,0x790A,0x78E9,0x790A,0x790A,0x790A,0x790A,0x812A,0x812B,0x894B,0x894C,0x916D,0x918E,0x99AF,0xA1B0,0xA1D1,0xA9D2,0xA9D2,0xA9D3,0xA9D3,0xA9F3,0xAA14,0xAA14,0xAA14,0xA214,0xA214,0x9214,0x81B3,0x79B4,0x79B4,0x79D4,0x79D4,0x79F4,0x81F5,0x81B4,0x89D5,0x91D5,0x99F6,0xA217,0xA238,0xA259,0x929B,0x4119,0x293B,0x217D,0x197D,0x099E,0x01BE,0x01FF,0x021F,0x021F,0x021F,0x023F,0x025F,0x029F,0x029F,0x029F,0x029F,0x029F,0x02BF,0x02BE,0x02BE,0x02BD,0x02DB,0x033A,0x0C7A,0x473F,0x373B,0x1694,0x26B2,0x36D3,0x4E94,0x7657,0x5C73,0x5B53,0x62B3,0x6A94,0x6214,0x61B3,0x61B3,0x61B3,0x59B3,0x5192,0x5193,0x5192,0x51B3,0x51B2,0x4992,0x4992,0x4191,0x4171,0x4171,0x4171,0x4171,0x3970,0x3950,0x3950,0x3970,0x3150,0x3150,0x314F,0x312F,0x314F,0x312F,0x312F,0x314F,0x310F,0x290F,0x312F,0x290E,0x312F,0x292F,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x292F,0x292E,0x290E,0x292F,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292F,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292F,0x292F,0x212F,0x210F,0x1910,0x1111,0x1974,0x21D6,0x19D6,0x19B5,0x1132,0x1930,0x2130,0x212F,0x212F,0x292F,0x212E,0x292E,0x292E,0x292E,0x292E,0x292F,0x212F,0x212F,0x212F,0x2130,0x1910,0x1910,0x1931,0x1132,0x1974,0x21D6,0x21D6,0x21F6,0x1974,0x1132,0x1111,0x1911,0x2130,0x2130,0x2930,0x290F,0x210F,0x292F,0x210F,0x210F,0x292F,0x292F,0x290F,0x2930,0x212F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x210F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x292F,0x292E,0x292F,0x292F,0x212F,0x212F,0x212F,0x292F,0x2950,0x2130,0x2130,0x2130,0x2130,0x1930,0x1931,0x1932,0x1152,0x1994,0x19D5,0x19F5,0x1A16,0x2236,0x21F5,0x19B4,0x1952,0x1952,0x1910,0x1910,0x2110,0x210F,0x212F,0x210F,0x290F,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292F,0x290E,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x292E,0x292F,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292F,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292F,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x210E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E, + 0x210E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292F,0x292F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1931,0x1931,0x1931,0x1952,0x1952,0x1972,0x1972,0x1973,0x1952,0x1952,0x1952,0x1973,0x2173,0x2173,0x1973,0x1973,0x1993,0x1993,0x1973,0x1973,0x1973,0x1993,0x1973,0x1973,0x1973,0x1973,0x1973,0x1973,0x1973,0x1973,0x1973,0x2173,0x1973,0x2173,0x2173,0x2173,0x2173,0x2193,0x2173,0x1973,0x1973,0x2173,0x1973,0x2173,0x1973,0x1973,0x1973,0x1973,0x2173,0x1973,0x1973,0x2173,0x2173,0x1973,0x1973,0x1973,0x1973,0x1973,0x1973,0x1973,0x1973,0x1973,0x1972,0x2173,0x1972,0x2173,0x1973,0x2173,0x2173,0x1972,0x1972,0x1973,0x2173,0x2173,0x1972,0x2173,0x1972,0x1972,0x1972,0x1973,0x1972,0x1972,0x1973,0x1973,0x1973,0x2193,0x1973,0x1993,0x1993,0x1993,0x1993,0x1993,0x1993,0x1973,0x1973,0x1993,0x1993,0x1993,0x1993,0x1993,0x2193,0x1993,0x1973,0x1993,0x1993,0x1993,0x1993,0x2193,0x1973,0x2193,0x2173,0x2193,0x2193,0x2193,0x1973,0x2193,0x2193,0x2193,0x2193,0x2193,0x1973,0x1993,0x1993,0x2193,0x2173,0x2193,0x1973,0x2173,0x2173,0x1993,0x1973,0x1973,0x1973,0x1973,0x1973,0x1953,0x1953,0x1973,0x1973,0x1953,0x1952,0x1952,0x1952,0x1932,0x1932,0x1110,0x1910,0x1910,0x2110,0x210F,0x210F,0x210F,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290F,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x28ED,0x30ED,0x30AC,0x48ED,0x8A53,0x9A94,0x9A73,0x9A53,0x9A52,0xA252,0xA232,0x9A32,0x9A31,0x9A11,0x9A11,0x9A11,0x9A10,0x91F0,0x91F0,0x91F0,0x91CF,0x91CF,0x91CF,0x89AF,0x89AF,0x89AF,0x89AF,0x89AF,0x89AF,0x89AF,0x89AF,0x89AE,0x898E,0x818E,0x818F,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x81AF,0x81AE,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x898E,0x898E,0x898E,0x898E,0x898E,0x89AE,0x89AE,0x89AE,0x898E,0x898E,0x898E,0x898F,0x898E,0x89AE,0x89AE,0x89AF,0x898F,0x898E,0x898E,0x898E,0x898E,0x898E,0x818E,0x818E,0x818E,0x818E,0x818E,0x898E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x89AE,0x89AE,0x898E,0x898E,0x89AE,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818F,0x818F,0x818F,0x818F,0x818E,0x818E,0x818E,0x818E,0x818E,0x898E,0x898E,0x898E,0x898E,0x818E,0x818E,0x89AE,0x89AE,0x89AE,0x89AE,0x898E,0x898E,0x89AE,0x898E,0x898E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818E,0x898E,0x898E,0x818E,0x898E,0x818E,0x818E,0x898E,0x898E,0x818E,0x898E,0x818E,0x818E,0x818E,0x818E,0x818E,0x818F,0x818E,0x898E,0x898E,0x898F,0x898F,0x898F,0x89AF,0x898F,0x898F,0x898F,0x818F,0x818F,0x898F,0x898E,0x898F,0x898F,0x898F,0x898F,0x898F,0x898F,0x898F,0x898F,0x898F,0x898F,0x898F,0x818F,0x818F,0x818F,0x816E,0x816E,0x816E,0x816E,0x816F,0x896F,0x896F,0x896E,0x896E,0x896F,0x896F,0x896F,0x896F,0x896F,0x896F,0x916F,0x918F,0x916F,0x916F,0x916F,0x916F,0x998F,0x998F,0x996F,0x998F,0x998F,0x996F,0x996F,0x998F,0x996F,0x9990,0x996F,0x996F,0x996F,0x996F,0x996F,0xA18F,0x996F,0x996F,0x996F,0x996F,0x996F,0x996F,0x996F,0xA16F,0x996F,0x996F,0x996F,0x996F,0x996F,0x994F,0x994F,0x996F,0x994F,0x994F,0x994F,0x994F,0x914F,0x996F,0x994F,0x994F,0x914F,0x996F,0x914F,0x996F,0x994F,0x996F,0x994F,0x9970,0x994F,0x996F,0x996F,0x9970,0x9970,0xA170,0x9970,0xA170,0xA190,0xA191,0xA191,0xA191,0xA1B1,0xA9B1,0xA9D2,0xA9D2,0xB1F3,0xA9F3,0xB1F3,0xB1F3,0xAA13,0xAA14,0xAA14,0xA214,0xA235,0x89B3,0x81B3,0x79B3,0x79B4,0x79B4,0x79D4,0x79D4,0x81F4,0x81D4,0x89D4,0x91F5,0x91B4,0x99F6,0xA237,0xA258,0x9A79,0x825B,0x4119,0x293B,0x217D,0x117D,0x099E,0x01DE,0x021F,0x023F,0x023F,0x023F,0x025F,0x027F,0x029F,0x029F,0x029F,0x029F,0x02BF,0x02BF,0x02DF,0x02DE,0x02DD,0x02DC,0x02FA,0x03D9,0x4F3F,0x373C,0x1674,0x26B3,0x3ED3,0x5694,0x7616,0x53D2,0x6333,0x6AB3,0x7294,0x69F3,0x61D3,0x61B3,0x59B3,0x59B3,0x59B3,0x51B3,0x51B2,0x49B2,0x4992,0x4992,0x4991,0x4171,0x4171,0x4191,0x4171,0x4171,0x3950,0x3970,0x3950,0x3950,0x3150,0x3150,0x314F,0x314F,0x312F,0x312F,0x312F,0x314F,0x310F,0x312F,0x290E,0x312F,0x312F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290F,0x290E,0x292F,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x292E,0x290F,0x210F,0x212F,0x1910,0x1111,0x1974,0x19B6,0x19D6,0x19D5,0x1132,0x1931,0x2130,0x212F,0x212F,0x212F,0x292E,0x212E,0x292E,0x290E,0x292E,0x292E,0x212E,0x212F,0x212F,0x212F,0x212F,0x1910,0x1911,0x1111,0x1953,0x1974,0x21D6,0x21D6,0x21D6,0x1974,0x1132,0x1111,0x1110,0x1930,0x2110,0x2110,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x210F,0x212F,0x212F,0x210F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x290F,0x290F,0x292F,0x210F,0x292F,0x210F,0x292F,0x292F,0x292F,0x290F,0x290F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x212F,0x292F,0x212F,0x212F,0x214F,0x212F,0x2130,0x2110,0x2130,0x1930,0x1931,0x1931,0x1952,0x1953,0x19B4,0x19F6,0x1A16,0x1A17,0x1A17,0x1A37,0x2216,0x21F6,0x21D5,0x1994,0x1132,0x10F1,0x1910,0x2110,0x212F,0x292F,0x292F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292F,0x292F,0x292F,0x290E,0x292F,0x292F,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292F,0x292E,0x292E,0x292E,0x292E,0x292F,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E, + 0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292F,0x210F,0x212F,0x210F,0x212F,0x2130,0x2130,0x2130,0x1930,0x1910,0x1931,0x1931,0x1910,0x1911,0x1911,0x1911,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1931,0x1931,0x1911,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1911,0x1911,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1910,0x1931,0x1911,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1932,0x1931,0x1931,0x1932,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1911,0x1911,0x1911,0x1931,0x1931,0x1932,0x1931,0x1931,0x1931,0x10F0,0x18F0,0x18EF,0x190F,0x2110,0x210F,0x212F,0x210F,0x210E,0x210F,0x290E,0x292E,0x290E,0x290E,0x290E,0x210E,0x210E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292F,0x290F,0x290E,0x290F,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292F,0x290E,0x292F,0x290E,0x292F,0x290E,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290D,0x28ED,0x28CD,0x30CD,0x304B,0x616F,0x8A53,0x9A94,0x9A73,0x9A52,0xA252,0xA252,0xA252,0xA252,0xA252,0x9A32,0x9A31,0x9A31,0x9A31,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x9210,0x9A11,0x9211,0x9211,0x9211,0x9211,0x9211,0x9211,0x9211,0x9211,0x9211,0x91F0,0x9211,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x9211,0x91F1,0x9211,0x91F1,0x9211,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x9211,0x9211,0x91F1,0x91F0,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91D0,0x91F0,0x91D0,0x91F0,0x91F0,0x91F0,0x91D0,0x91F0,0x91F0,0x91F0,0x91F0,0x9211,0x91F1,0x9A11,0x91F1,0x9211,0x91F0,0x9A11,0x99F1,0x99F1,0x99F1,0x99F1,0x99F1,0x99F1,0x99F1,0x99F1,0x99F1,0x91F1,0x9A11,0x9A11,0x91F1,0x9211,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F0,0x91F1,0x91F1,0x9211,0x91F1,0x91F1,0x91F1,0x99F1,0x91F1,0x91F1,0x9211,0x9A11,0x9210,0x9211,0x9A11,0x9210,0x9A11,0x9A11,0x9211,0x9211,0x9211,0x91F1,0x91F1,0x9211,0x9211,0x91F1,0x91F1,0x9A11,0x91F1,0x99F1,0x99F1,0x9A11,0x9211,0x9211,0x9211,0x9211,0x91F1,0x91F1,0x99F1,0x91F1,0x91F1,0x91F1,0x91F0,0x91F0,0x91D0,0x91F0,0x91F0,0x91F0,0x91F0,0x91F0,0x91F1,0x91F0,0x91F0,0x91F1,0x91F1,0x9211,0x9211,0x9211,0x9A11,0x9A11,0x91F1,0x9211,0x9211,0x9211,0x9211,0x91F1,0x91F1,0x91F1,0x9211,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91D0,0x91F1,0x91F0,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x9211,0x9211,0x9211,0x9211,0x9211,0x9211,0x9A11,0x91F1,0x9211,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x91F1,0x9211,0x9211,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x91F1,0x9A11,0x9A11,0x91F1,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x99F1,0x99F1,0x9A11,0x9A11,0x9A11,0x9A12,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x9A11,0x91F1,0x99F1,0x99F1,0x99F1,0x91F1,0x99F1,0x99F1,0x99F1,0x99D1,0x99F1,0x99D1,0x99D1,0x99D1,0x99D1,0x99D1,0x99D1,0x99D1,0xA1D1,0xA1D1,0xA1B1,0xA1B1,0xA1B1,0xA1D1,0xA1B1,0xA1D1,0xA1D1,0xA1B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA991,0xA9B1,0xA991,0xA991,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B2,0xA9B2,0xA9B1,0xA9B1,0xA9B1,0xA9B1,0xA9B2,0xA9B1,0xA9B1,0xA9B2,0xA9B1,0xA9B2,0xA9B2,0xA9B1,0xA9B2,0xA9B2,0xA9B1,0xA9B1,0xA9B2,0xA9B2,0xA9B2,0xA9B2,0xA9B2,0xA9B2,0xA9B2,0xA9B2,0xA9B2,0xA9B2,0xA9D2,0xA9D2,0xA9D2,0xA9D2,0xA9D2,0xB1D3,0xB1F3,0xB214,0xAA14,0xA9F4,0xA1F4,0x99F4,0x89B3,0x81B3,0x81B3,0x79D4,0x79D4,0x79D4,0x79D4,0x79D4,0x79D4,0x81D4,0x89F5,0x91F5,0x91D5,0x99F6,0xA237,0xA258,0x9A7A,0x7A3A,0x3939,0x297C,0x199D,0x11BE,0x09DE,0x021F,0x023F,0x025F,0x025F,0x027F,0x029F,0x029F,0x02BF,0x02BF,0x02BF,0x02BF,0x02DF,0x02DF,0x02FF,0x02FE,0x02DE,0x02FC,0x02FB,0x0399,0x3EBF,0x371C,0x1E54,0x1E52,0x3E92,0x5674,0x75B5,0x5B91,0x5AB2,0x6A53,0x7254,0x6A14,0x69D4,0x61B3,0x5992,0x5993,0x59D3,0x59B3,0x51B2,0x4992,0x4971,0x4992,0x4171,0x4191,0x4171,0x4171,0x4171,0x4171,0x3950,0x3950,0x3950,0x3950,0x3950,0x314F,0x312F,0x312F,0x312F,0x312F,0x314F,0x314F,0x312F,0x310E,0x290E,0x290E,0x312F,0x290E,0x290E,0x290E,0x292E,0x290E,0x292F,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292F,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292F,0x210F,0x210F,0x1910,0x1111,0x1973,0x21F6,0x19D6,0x19B5,0x1153,0x1131,0x1910,0x2130,0x212F,0x292F,0x292E,0x292E,0x290E,0x292E,0x290E,0x210E,0x290E,0x210E,0x292F,0x292F,0x212F,0x2130,0x2130,0x1911,0x1111,0x1132,0x1974,0x21B5,0x21F6,0x21D5,0x1994,0x1153,0x1132,0x1931,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2130,0x210F,0x292F,0x210F,0x292F,0x292F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x292F,0x292F,0x210F,0x212F,0x212F,0x212F,0x212F,0x212F,0x2130,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x2930,0x2130,0x2930,0x2130,0x212F,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x1930,0x1930,0x1930,0x1931,0x1931,0x1952,0x1994,0x19B5,0x19D5,0x11D5,0x11D5,0x11B5,0x11B5,0x11D5,0x19F6,0x2216,0x19F6,0x19B5,0x1994,0x1132,0x1911,0x2130,0x2110,0x292F,0x292F,0x290F,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x212E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x210E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292F,0x290E,0x290E,0x290F,0x290F,0x292F,0x290E,0x292E,0x292E,0x292E,0x292E,0x292F,0x210E,0x212E,0x212E,0x212E,0x290E,0x210E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x212E,0x292E,0x292E,0x292E,0x292F,0x292E,0x292E,0x292F,0x290E,0x210E,0x210E,0x292E,0x292E,0x292E,0x292E,0x212E,0x212E,0x210E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E, + 0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x210E,0x292F,0x210E,0x212F,0x212F,0x212F,0x2130,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x1910,0x1910,0x2130,0x1910,0x1910,0x2110,0x1910,0x1910,0x1910,0x1910,0x1930,0x1930,0x1910,0x1910,0x1930,0x1930,0x1910,0x2131,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1930,0x1910,0x1910,0x1910,0x1930,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1931,0x1910,0x1910,0x1910,0x1930,0x1910,0x1910,0x1910,0x1930,0x1930,0x1910,0x1910,0x1910,0x1930,0x2130,0x2130,0x1910,0x1910,0x1910,0x1910,0x1930,0x1930,0x1910,0x2130,0x1910,0x1910,0x2110,0x1910,0x2110,0x2110,0x1910,0x2130,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1930,0x1910,0x1910,0x1930,0x1910,0x1910,0x1930,0x1930,0x1910,0x1910,0x1930,0x1910,0x1910,0x1930,0x1910,0x1930,0x1910,0x1910,0x1930,0x1910,0x1911,0x2131,0x1910,0x1911,0x1911,0x1910,0x1910,0x1930,0x1910,0x1910,0x1910,0x1910,0x1910,0x1931,0x1911,0x1910,0x2131,0x1911,0x1911,0x1910,0x1911,0x1911,0x1911,0x1910,0x1910,0x1910,0x1910,0x1910,0x2111,0x2111,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x2130,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210E,0x210E,0x210E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x28ED,0x28ED,0x30CD,0x30AC,0x40AC,0x614F,0x9293,0xA2D4,0x9A93,0x9A93,0x9A73,0x9A73,0xA273,0xA253,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA232,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA273,0xA273,0xA273,0xA273,0xA273,0xA253,0xA273,0xA273,0xA273,0xA273,0xA252,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA273,0xA253,0xA253,0xA253,0xA253,0xA253,0xA273,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA273,0xA252,0xA252,0xA252,0xA252,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA273,0xA253,0xA273,0xA273,0xA273,0xA252,0xA252,0xA252,0xA252,0xA252,0xA273,0xA252,0xA273,0xA273,0xA253,0xA253,0xA253,0xA253,0xA253,0xA252,0xA252,0xA253,0xA253,0xA273,0xA252,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0x9A52,0xA253,0xA273,0xA253,0xA253,0xA253,0xA253,0xA252,0xA252,0xA252,0xA253,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA253,0xA253,0xA252,0xA253,0xA253,0xA253,0xA252,0xA252,0xA252,0xA253,0xA253,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA252,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA273,0xA252,0xA273,0xA253,0xA252,0xA252,0xA252,0xA252,0xA252,0xA253,0xA273,0xA253,0xA273,0xA273,0xA273,0xA273,0xA273,0xA273,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA273,0xA253,0xA273,0xA273,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA273,0xA273,0xA253,0xA252,0xA252,0xA252,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA252,0xA252,0xA252,0xA252,0xA252,0xA253,0xA253,0xA273,0xA253,0xA253,0xA232,0xA252,0xA252,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA233,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA253,0xA233,0xA253,0xA232,0xA232,0xA232,0xA232,0xA232,0xA233,0xA233,0xA232,0xA212,0xA212,0xA213,0xA212,0xA212,0xA1F2,0xA9F2,0xA9F3,0xA9F2,0xA9D2,0xA9F2,0xA9D2,0xA9D2,0xA9D2,0xA9D2,0xA9D2,0xA9D2,0xA9D2,0xA9D2,0xB1B2,0xB1D2,0xB1D2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1D2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1B3,0xB1B3,0xB1B3,0xB1B2,0xB1B2,0xA9B2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1B2,0xB1D3,0xB1B3,0xB1B2,0xB1B2,0xB1D3,0xB1D3,0xB1B2,0xB1B2,0xB1B2,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1D3,0xB1D3,0xB1F3,0xB214,0xA9D3,0x9152,0x9172,0x8993,0x8173,0x8193,0x81B4,0x81D4,0x81D4,0x81D4,0x81D4,0x81D4,0x81D4,0x89D4,0x91F4,0x99F5,0x99D5,0xA216,0xA237,0xA258,0x9279,0x721A,0x395A,0x299C,0x19BD,0x11DE,0x121F,0x0A5F,0x025F,0x027F,0x027F,0x029F,0x02BF,0x02BF,0x02BF,0x02DF,0x02DF,0x02DF,0x02DF,0x02DF,0x02FF,0x031F,0x02FE,0x02FD,0x02FB,0x035A,0x2DFF,0x36DD,0x1E75,0x1E52,0x3E72,0x5E54,0x7575,0x5330,0x6291,0x7273,0x7234,0x7214,0x69D4,0x69B3,0x61B3,0x5993,0x59D3,0x59B3,0x5192,0x4992,0x4992,0x4992,0x4191,0x4191,0x4191,0x4171,0x4171,0x4171,0x4150,0x4150,0x3950,0x3950,0x3950,0x314F,0x314F,0x312F,0x312F,0x312F,0x312F,0x312F,0x310F,0x312F,0x290E,0x290E,0x292F,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x210F,0x210F,0x1910,0x1111,0x1152,0x21F6,0x21F6,0x19D5,0x1153,0x1131,0x1910,0x1910,0x212F,0x212F,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292F,0x292F,0x292F,0x212F,0x2130,0x2110,0x1911,0x1932,0x1132,0x1974,0x21B5,0x21F6,0x19B5,0x1994,0x1153,0x1132,0x1111,0x1910,0x1910,0x1930,0x1930,0x1930,0x1930,0x1910,0x2130,0x1910,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x210F,0x2130,0x2130,0x2130,0x2130,0x210F,0x210F,0x2130,0x2130,0x212F,0x212F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x1930,0x1930,0x1930,0x1930,0x1931,0x1931,0x1931,0x1132,0x1153,0x19B5,0x19B5,0x19F6,0x0995,0x1195,0x0974,0x1194,0x0974,0x0974,0x11B5,0x19D6,0x19F6,0x19B5,0x1994,0x1932,0x1910,0x2130,0x210F,0x292F,0x290F,0x210E,0x292E,0x292F,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x212E,0x212E,0x212E,0x292F,0x212E,0x212E,0x212E,0x292E,0x212E,0x292E,0x210E,0x210E,0x212E,0x292F,0x290E,0x290E,0x292F,0x292F,0x290F,0x292F,0x290F,0x292F,0x292E,0x292E,0x294E,0x212E,0x212E,0x212E,0x212E,0x212E,0x212E,0x292E,0x212E,0x292E,0x292E,0x292E,0x292E,0x292E,0x212E,0x212E,0x212E,0x212E,0x212E,0x212E,0x212E,0x212E,0x212F,0x212E,0x212E,0x210E,0x210E,0x212E,0x212E,0x210E,0x212E,0x210E,0x212E,0x212E,0x210E,0x210E,0x210E,0x212E,0x210E,0x210E,0x210E,0x210E,0x292E,0x290E, + 0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x212E,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x2130,0x2130,0x212F,0x210F,0x210F,0x210F,0x2130,0x2110,0x2130,0x2130,0x190F,0x210F,0x210F,0x210F,0x2130,0x210F,0x2130,0x2110,0x2110,0x2130,0x210F,0x210F,0x2130,0x2130,0x2130,0x210F,0x210F,0x210F,0x212F,0x210F,0x2130,0x210F,0x2130,0x2110,0x2130,0x210F,0x210F,0x210F,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2110,0x2110,0x2130,0x190F,0x2130,0x2110,0x2130,0x210F,0x2110,0x190F,0x212F,0x210F,0x210F,0x190F,0x210F,0x210F,0x2130,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x2110,0x210F,0x2130,0x2130,0x2110,0x190F,0x2130,0x2130,0x2110,0x210F,0x2130,0x2130,0x2110,0x2110,0x2130,0x2130,0x2110,0x210F,0x2110,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x190F,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2130,0x2110,0x2130,0x2110,0x2130,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210E,0x210E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x28EE,0x28ED,0x30CD,0x30CD,0x30AC,0x306B,0x48CD,0x71D1,0x8A73,0x9AB4,0x9AB4,0xA2B4,0xA294,0xA294,0xAA94,0xAA93,0xAA93,0xAA93,0xA273,0xAA73,0xAA93,0xAA93,0xAA93,0xAA93,0xAA73,0xAA93,0xA293,0xAA93,0xA293,0xA293,0xA293,0xA294,0xA293,0xA294,0xA294,0xA294,0xA293,0xAA94,0xA294,0xAA94,0xA294,0xA293,0xAA94,0xAA94,0xAA94,0xA294,0xA294,0xA294,0xA294,0xAA94,0xAA94,0xAA94,0xA294,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAAB4,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xA293,0xA294,0xA293,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAAB4,0xA293,0xAAB4,0xA293,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xA293,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA93,0xAA94,0xAA94,0xA293,0xAA94,0xA294,0xA294,0xA273,0xA294,0xA294,0xA294,0xA293,0xA293,0xA294,0xA294,0xA293,0xA293,0xAA93,0xAA94,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xA293,0xA293,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xA293,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xAA93,0xA293,0xAA93,0xAA93,0xAA93,0xAA93,0xAA94,0xAA93,0xAA93,0xAA94,0xAAB4,0xAA94,0xAAB4,0xAA94,0xAAB4,0xAA94,0xAA94,0xAA94,0xAA93,0xAA94,0xAA93,0xAA93,0xA293,0xAA93,0xAA93,0xA293,0xAA93,0xA293,0xAA94,0xA293,0xA293,0xA293,0xA293,0xA294,0xAA94,0xA293,0xA294,0xA294,0xA294,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAAB4,0xAAB4,0xAAB4,0xA294,0xA294,0xA294,0xA294,0xA294,0xA294,0xA294,0xA294,0xAA94,0xAA94,0xA294,0xAA94,0xA293,0xA293,0xA293,0xA294,0xAA94,0xAA94,0xA294,0xA294,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xAA94,0xA293,0xA294,0xA293,0xA293,0xA293,0xA293,0xA293,0xA293,0xA293,0xA293,0xA273,0xA273,0xA273,0xA273,0xA273,0xA273,0xAA73,0xAA73,0xA273,0xA273,0xA273,0xA273,0xA273,0xA273,0xA274,0xA274,0xA274,0xAA74,0xA273,0xA274,0xA273,0xA253,0xA253,0xA253,0xA253,0xA253,0xA233,0xA233,0xA233,0xAA53,0xA233,0xAA33,0xAA33,0xAA33,0xAA33,0xAA13,0xAA13,0xAA13,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1B3,0xB1D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB1B3,0xB9B3,0xB9D3,0xB9B3,0xB9B3,0xB9B3,0xB1B3,0xB1B3,0xB1B3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1B3,0xB1B3,0xB9D3,0xB1D3,0xB1D3,0xB1D3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB9D3,0xB9B3,0xB9D3,0xB9B3,0xB1B3,0xB1D3,0xB1B3,0xB1B3,0xB1D3,0xB1B3,0xB1B3,0xB1B3,0xB1B3,0xB1D3,0xB1D3,0xB1F4,0xB1D4,0xA172,0x9111,0x8931,0x8952,0x8152,0x7972,0x7973,0x81B3,0x81B4,0x7993,0x79B3,0x81B4,0x81B4,0x81B3,0x89B3,0x91D4,0xA1F4,0xA1F5,0xAA16,0xA237,0xA258,0x9279,0x69F9,0x397A,0x29BC,0x19DD,0x121E,0x125F,0x0A7F,0x027F,0x029F,0x029F,0x02BF,0x02DF,0x02DF,0x02DF,0x02FF,0x02FF,0x02FF,0x02FF,0x02FF,0x031F,0x031F,0x031E,0x02FD,0x02FC,0x033A,0x257E,0x36BD,0x2676,0x2E73,0x3E52,0x5E33,0x7D75,0x6351,0x6A91,0x7253,0x7A34,0x7A14,0x71D3,0x69B3,0x61B3,0x59B3,0x59B3,0x59B3,0x51B3,0x51B2,0x4972,0x4992,0x4991,0x4191,0x4171,0x4171,0x4171,0x4171,0x3950,0x4170,0x3950,0x3950,0x3950,0x312F,0x312F,0x312F,0x314F,0x312F,0x312F,0x312F,0x312F,0x312F,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x212E,0x212F,0x1910,0x1911,0x1152,0x1994,0x2216,0x21F6,0x1173,0x1132,0x1931,0x1930,0x210F,0x210E,0x210E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x210E,0x210E,0x210E,0x212E,0x292F,0x292F,0x2130,0x2110,0x1910,0x1911,0x1932,0x1973,0x21B5,0x21B5,0x19B5,0x1974,0x1153,0x1112,0x1111,0x10F0,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1930,0x1930,0x1930,0x1930,0x1930,0x1930,0x1910,0x1930,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1930,0x1910,0x1910,0x1930,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x18EF,0x18F0,0x1930,0x1910,0x1110,0x1111,0x1111,0x0911,0x1173,0x19B5,0x1A17,0x11D5,0x1194,0x0974,0x0953,0x0953,0x0953,0x0952,0x0953,0x1194,0x19F6,0x19B5,0x21D5,0x1973,0x10F0,0x2110,0x212F,0x210F,0x210E,0x210E,0x210E,0x292E,0x312F,0x290E,0x290E,0x290E,0x292E,0x292E,0x210E,0x210E,0x294E,0x294E,0x214E,0x212E,0x214F,0x212E,0x212F,0x212E,0x210E,0x212E,0x212E,0x212E,0x212E,0x210E,0x210E,0x290E,0x292F,0x290F,0x290F,0x290E,0x290E,0x292E,0x212E,0x212E,0x212E,0x212E,0x212E,0x212E,0x212E,0x212E,0x212E,0x212E,0x212E,0x212E,0x292E,0x292E,0x212E,0x212E,0x212E,0x212E,0x212E,0x212E,0x190E,0x212E,0x212F,0x212E,0x212F,0x212E,0x212E,0x212F,0x210E,0x210E,0x212E,0x212E,0x212F,0x212F,0x210E,0x210E,0x212E,0x212E,0x190E,0x212E,0x212E,0x210E,0x212F,0x212E,0x212E,0x210E, + 0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x212E,0x210E,0x210E,0x210E,0x210E,0x292F,0x212F,0x292F,0x212F,0x212F,0x212F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210E,0x212F,0x210E,0x210E,0x210E,0x210E,0x290E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x312E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x28ED,0x28ED,0x30ED,0x30CD,0x30AC,0x388C,0x40AC,0x50CD,0x592E,0x71B1,0x8A53,0x9AB4,0xA2D5,0xA2D5,0xA2F5,0xA2D5,0xA2F5,0xA2D5,0xAAF5,0xA2F5,0xA2F5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D4,0xA2F5,0x9AD4,0x9AD4,0x9AD4,0xA2D5,0x9AB4,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0x9AB5,0xA2D5,0x9AB5,0xA2D5,0x9AB5,0xA2D5,0xA2D5,0xA2D5,0x9AB4,0xA2D5,0x9AB4,0xA2D5,0xA2B4,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2B4,0xA2D5,0x9AD4,0xA2D5,0xA2D5,0xA2D5,0x9AB4,0xA2D5,0x9AB5,0x9AB5,0x9A94,0x9AB5,0x9A94,0x9A94,0x9A94,0x9A94,0x9A94,0x9A94,0x9A94,0x9A94,0x9A94,0x9A94,0x9A94,0x9A94,0x9A93,0x9AB4,0x9A93,0x9A94,0x9A94,0x9A94,0x9A94,0x9A94,0x9A94,0x9A94,0x9A94,0x9AB4,0x9AB4,0x9AB4,0x9A94,0x9AB4,0x9AB4,0x9AD4,0x9AB4,0xA2D5,0x9AB4,0xA2D5,0x9AB4,0x9AD5,0x9AB4,0x9AD4,0x9AB4,0x9AD4,0x9AB4,0xA2D5,0x9AB4,0xA2D5,0xA2D4,0xA2D5,0xA2D4,0xA2D5,0xA2D4,0xA2D5,0xA2D4,0xA2D5,0xA2D4,0xA2D5,0xA2D4,0xA2F5,0xA2D4,0xA2D5,0xA2D5,0xA2D5,0xA2D4,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D4,0xA2F5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D4,0xA2D5,0xA2D4,0xA2D5,0xA2B4,0xA2D4,0x9AB4,0x9AB4,0x9AB4,0x9AB4,0x9A94,0x9A94,0x9A94,0x9AB4,0x9A94,0x9AB4,0x9AB4,0x9AB4,0x9AB4,0xA2D4,0x9AB4,0xA2D5,0xA2D4,0xA2D5,0xA2D4,0xA2D5,0xA2D4,0xA2D5,0x9AD4,0xA2D5,0x9AD4,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0x9AB4,0xA2D5,0x9AB4,0x9AD4,0x9AB4,0x9AD4,0x9AB4,0x9AB4,0x9AB4,0x9AB4,0x9AB4,0x9AB4,0x9AB4,0x9AD4,0x9AB4,0x9AB5,0x9AB4,0xA2D5,0x9AB4,0xA2D5,0x9AB4,0xA2D5,0x9AB4,0xA2D5,0x9AB4,0xA2D5,0x9AB4,0x9AB4,0x9AB4,0xA2D5,0x9AB4,0xA2D5,0xA2B4,0xA2D5,0x9AB4,0xA2D5,0x9AB4,0xA2D5,0x9AB4,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2F5,0xA2F5,0xA2F5,0xA2D5,0xA2F5,0xA2D5,0xA2D5,0xA2D5,0xA2D5,0xA2B5,0xA2D5,0xA2B5,0xA2D5,0xA2B4,0xA2B5,0xA2B5,0xA2B5,0xA295,0xA2B5,0xA295,0xA2B5,0xA295,0xA274,0xA254,0xA274,0xA254,0xA274,0xAA74,0xAA74,0xAA74,0xAA74,0xAA54,0xAA54,0xAA54,0xB254,0xB234,0xB234,0xB234,0xAA13,0xB213,0xB213,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9F3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D3,0xB9D4,0xB9D4,0xB9D3,0xB9D3,0xB9D3,0xB9D4,0xB9D4,0xB9D4,0xB9D3,0xB9D3,0xB9D4,0xB9D3,0xB9D4,0xB9D4,0xB9D4,0xB9D3,0xB9D3,0xB9D4,0xB9D4,0xB9D3,0xB9D3,0xB9D4,0xB9D4,0xB9B3,0xB9D3,0xB9D3,0xB9B3,0xB9B3,0xB9B3,0xB9B3,0xB9B3,0xB9B3,0xB9B3,0xB9D3,0xB9D3,0xB9D4,0xB9B3,0xB9B3,0xB1B3,0xB1B3,0xA993,0xA972,0xA193,0xA1B3,0x99B3,0x99B3,0x91B3,0x8152,0x8152,0x8152,0x7952,0x8152,0x8172,0x8172,0x91B4,0x99F4,0xA1F4,0xA1F4,0xA9F4,0xAA15,0xAA16,0xA237,0x9A58,0x8A79,0x61F9,0x39BA,0x29FD,0x19FD,0x123E,0x127F,0x0A9F,0x029F,0x02BF,0x02BF,0x02DF,0x02FF,0x02FF,0x02FF,0x02FF,0x02FF,0x031F,0x031F,0x031F,0x033F,0x033F,0x033E,0x031D,0x02FC,0x033A,0x0C9C,0x365D,0x2E97,0x2E73,0x3E53,0x5E13,0x7D75,0x6310,0x6A91,0x7A32,0x8234,0x79F4,0x71B3,0x69B3,0x61B3,0x61B3,0x5993,0x5192,0x51B2,0x51B2,0x4992,0x4992,0x4991,0x4991,0x4191,0x4171,0x4171,0x4150,0x4150,0x3950,0x3950,0x3950,0x3930,0x3950,0x312F,0x312F,0x312F,0x312F,0x312F,0x312F,0x312F,0x312F,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x210E,0x212F,0x190F,0x1910,0x1132,0x1153,0x21D5,0x2216,0x19B5,0x1132,0x1932,0x1931,0x190F,0x210F,0x292F,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x210E,0x210E,0x292F,0x210F,0x210F,0x210F,0x2110,0x1910,0x1911,0x1932,0x1953,0x1994,0x21D6,0x21D6,0x1995,0x1153,0x1152,0x1111,0x1131,0x1111,0x1931,0x1111,0x1931,0x1111,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1911,0x1931,0x1931,0x1911,0x1911,0x1931,0x1911,0x1931,0x1931,0x1931,0x1930,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1111,0x1111,0x1931,0x1110,0x1931,0x1911,0x1911,0x1910,0x1911,0x1910,0x1910,0x1911,0x1110,0x1110,0x1110,0x1110,0x1110,0x1110,0x1910,0x1110,0x10F0,0x1911,0x1931,0x1131,0x1131,0x1112,0x0912,0x0953,0x19F6,0x19F6,0x0994,0x0953,0x0932,0x0953,0x0932,0x0932,0x0932,0x0932,0x0953,0x19D5,0x19F6,0x19B5,0x1973,0x1911,0x190F,0x210F,0x210F,0x210E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x212E,0x210E,0x192E,0x214E,0x214E,0x214E,0x192E,0x194E,0x192E,0x192E,0x192E,0x190E,0x190E,0x192E,0x192E,0x192E,0x190E,0x212E,0x212F,0x210F,0x290F,0x290E,0x290E,0x210E,0x212E,0x212E,0x192E,0x192E,0x192E,0x192E,0x192E,0x192E,0x192E,0x192E,0x212E,0x212E,0x212E,0x214F,0x212E,0x214E,0x212E,0x212E,0x194E,0x192E,0x192E,0x192E,0x190E,0x192E,0x192E,0x192F,0x192F,0x214F,0x214F,0x190E,0x190E,0x192E,0x192E,0x192E,0x192E,0x192E,0x190E,0x192F,0x192F,0x192E,0x192E,0x192E,0x192E,0x192E,0x190E,0x192E,0x192F, + 0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x292F,0x210F,0x210F,0x292F,0x210E,0x292F,0x210F,0x212F,0x292F,0x212F,0x212F,0x212E,0x210E,0x210F,0x210F,0x210F,0x210E,0x292F,0x210E,0x292F,0x212E,0x210F,0x210F,0x210F,0x212F,0x212F,0x210E,0x212E,0x210E,0x210F,0x210E,0x212F,0x210E,0x212F,0x210F,0x212E,0x210E,0x292F,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210E,0x210F,0x210E,0x212F,0x210E,0x290F,0x290E,0x212E,0x210E,0x210F,0x210F,0x212E,0x210E,0x210E,0x210E,0x212F,0x210E,0x212F,0x210E,0x292F,0x210E,0x212E,0x210E,0x212E,0x210E,0x212F,0x210E,0x212F,0x210E,0x210E,0x210F,0x212E,0x210E,0x210F,0x210F,0x210F,0x210E,0x210F,0x210F,0x210E,0x210E,0x210E,0x210E,0x210F,0x210E,0x290F,0x210F,0x210F,0x210E,0x290F,0x210E,0x210E,0x210E,0x292F,0x210F,0x210F,0x210E,0x290F,0x292F,0x210E,0x210E,0x290F,0x290F,0x290F,0x210E,0x210F,0x210F,0x210F,0x210E,0x292F,0x292F,0x292F,0x210E,0x290F,0x292F,0x210E,0x210E,0x290F,0x290F,0x290F,0x210E,0x292F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210E,0x210E,0x292F,0x210F,0x212E,0x292F,0x210E,0x210E,0x290E,0x210E,0x290E,0x210E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292F,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x312E,0x290E,0x310E,0x290E,0x290E,0x290E,0x290E,0x290E,0x28ED,0x28ED,0x30ED,0x30ED,0x30CD,0x30AD,0x30AC,0x308C,0x306C,0x306B,0x304B,0x302B,0x302B,0x302B,0x302A,0x300A,0x300A,0x300A,0x300A,0x300A,0x300A,0x300A,0x300A,0x300A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302B,0x302A,0x302A,0x302A,0x302A,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302B,0x302B,0x302B,0x302B,0x302B,0x304B,0x304B,0x304B,0x304B,0x304B,0x304B,0x304B,0x304B,0x304B,0x304A,0x304A,0x302A,0x302A,0x304B,0x304A,0x304A,0x304A,0x304B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x304B,0x304B,0x302B,0x302A,0x302A,0x302A,0x302B,0x302B,0x302A,0x302A,0x302B,0x302B,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x300A,0x300A,0x300A,0x302A,0x302A,0x302B,0x302B,0x282A,0x302A,0x302A,0x302A,0x302A,0x282A,0x302B,0x302A,0x302A,0x302A,0x302A,0x302B,0x302B,0x302B,0x302B,0x300A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302A,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302A,0x302B,0x302A,0x302B,0x302A,0x302A,0x302A,0x302A,0x302B,0x302B,0x302A,0x302B,0x302B,0x302B,0x302B,0x302B,0x302B,0x302A,0x302B,0x302B,0x302B,0x302B,0x302B,0x304B,0x304B,0x304B,0x302B,0x302B,0x302B,0x302B,0x302B,0x384B,0x384B,0x384B,0x384B,0x384B,0x384C,0x384C,0x384C,0x384C,0x386C,0x386C,0x404C,0x406C,0x406C,0x406C,0x406C,0x406C,0x406C,0x486D,0x486C,0x484C,0x506D,0x504D,0x504D,0x584D,0x586E,0x584D,0x582D,0x580C,0x580C,0x600C,0x600B,0x600B,0x680C,0x700C,0x784D,0x786E,0x808E,0x88AF,0x90F0,0x9110,0x9931,0xA151,0xA152,0xA152,0xA972,0xA992,0xB1B3,0xB1B3,0xB9D3,0xB9D3,0xB9F3,0xB9F4,0xC1F4,0xC1F4,0xC1F4,0xC214,0xC214,0xC1F4,0xC1F4,0xC1F4,0xC1F4,0xC1F4,0xC9F4,0xC1F4,0xC1F4,0xC1F4,0xC1F4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xB9D4,0xB9D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xC1D4,0xB9D4,0xB9D4,0xB9D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xB9D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1B4,0xB9D4,0xB9D3,0xB9B3,0xB9B3,0xB9D3,0xB9D4,0xC1F4,0xB9D4,0xB9D4,0xB9F4,0xB9D4,0xB9D4,0xB9D4,0xB9F4,0xB9F4,0xB9F4,0xBA15,0xBA35,0xBA35,0xB255,0xB276,0xB256,0xB256,0xB276,0xB256,0xB256,0xB256,0xB235,0xB215,0xB215,0xB214,0xB1F4,0xA9F5,0xAA15,0xAA37,0x9A58,0x8259,0x51D9,0x3A1B,0x2A3D,0x1A5E,0x127E,0x0A9F,0x0ABF,0x02DF,0x02DF,0x02FF,0x02FF,0x031F,0x031F,0x031F,0x031F,0x031F,0x031F,0x031F,0x031F,0x033F,0x033F,0x033E,0x031E,0x02FD,0x033B,0x041B,0x2DDD,0x36B8,0x2E53,0x3E33,0x5DF3,0x8555,0x6310,0x7AB2,0x8253,0x8A54,0x8214,0x71B3,0x69B3,0x6193,0x5993,0x5993,0x59B3,0x5192,0x51B2,0x4992,0x4992,0x4971,0x4171,0x4991,0x4171,0x4171,0x4150,0x4150,0x3950,0x3930,0x3930,0x3930,0x312F,0x394F,0x312F,0x312F,0x312F,0x312F,0x312F,0x312F,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292F,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x210E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x290D,0x290D,0x290D,0x292E,0x292E,0x212E,0x210F,0x210F,0x1910,0x1951,0x1973,0x19B4,0x21F6,0x21F6,0x1994,0x1132,0x1111,0x1910,0x210F,0x292F,0x292F,0x292E,0x290E,0x210E,0x290E,0x290E,0x290E,0x210E,0x210E,0x292E,0x292E,0x290E,0x292F,0x292F,0x292F,0x2130,0x1910,0x1931,0x1952,0x1994,0x21B5,0x21D6,0x21F6,0x21F6,0x19D5,0x1993,0x1973,0x1993,0x1973,0x1993,0x1973,0x2193,0x1972,0x1972,0x1972,0x2172,0x2172,0x2172,0x1972,0x2172,0x2172,0x2173,0x1972,0x2173,0x2172,0x2172,0x2172,0x2172,0x2172,0x2172,0x2172,0x2172,0x1972,0x1972,0x1972,0x1972,0x1972,0x1972,0x1972,0x1973,0x1973,0x1972,0x1972,0x2173,0x1972,0x2172,0x1972,0x2173,0x2172,0x2173,0x1972,0x2172,0x1972,0x1972,0x1972,0x1972,0x2193,0x1972,0x1972,0x2193,0x21B3,0x21B4,0x21B4,0x1994,0x1174,0x1195,0x11D6,0x11B5,0x0954,0x0932,0x0932,0x1173,0x0952,0x0952,0x0952,0x0953,0x1153,0x1194,0x1195,0x19D5,0x1973,0x1931,0x1930,0x210F,0x210E,0x292E,0x292E,0x210E,0x290E,0x290E,0x292E,0x292F,0x290E,0x212E,0x190E,0x192E,0x112E,0x110D,0x08ED,0x08ED,0x08CC,0x090D,0x08ED,0x08ED,0x08ED,0x08ED,0x08ED,0x112E,0x110E,0x08CD,0x10ED,0x110E,0x190E,0x210E,0x210F,0x210F,0x210E,0x212E,0x190E,0x192E,0x110E,0x114E,0x112E,0x090D,0x090D,0x092D,0x090E,0x112E,0x112E,0x110E,0x190E,0x190E,0x192E,0x112E,0x112E,0x112E,0x112E,0x112E,0x090E,0x112E,0x08ED,0x090E,0x090E,0x08EE,0x08CE,0x10EE,0x190E,0x192E,0x110E,0x10ED,0x08ED,0x110E,0x110E,0x090E,0x08ED,0x112F,0x112E,0x112E,0x090E,0x090D,0x090D,0x090D,0x08ED,0x090E,0x090E, + 0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x28ED,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x210E,0x212E,0x210E,0x212E,0x292E,0x290E,0x210E,0x290E,0x210E,0x290E,0x210E,0x292E,0x210E,0x292E,0x290E,0x290E,0x210E,0x212E,0x210E,0x212E,0x210E,0x210E,0x210E,0x210E,0x212E,0x292E,0x210E,0x292E,0x290E,0x290E,0x290E,0x210E,0x290E,0x210E,0x210E,0x290E,0x210E,0x210E,0x210E,0x290E,0x210E,0x290E,0x290E,0x292E,0x210E,0x210E,0x210E,0x292E,0x210E,0x210E,0x292F,0x210E,0x210E,0x292E,0x210E,0x292E,0x210E,0x210E,0x210E,0x292E,0x210E,0x292E,0x210E,0x212E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x292E,0x290E,0x290E,0x210E,0x290E,0x210E,0x210E,0x210E,0x290E,0x290E,0x210E,0x210E,0x290E,0x290E,0x292E,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210E,0x290E,0x290E,0x210E,0x290E,0x210E,0x290E,0x210E,0x210E,0x290E,0x292E,0x210E,0x290E,0x210E,0x210E,0x210E,0x292E,0x210E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290D,0x290D,0x28ED,0x30ED,0x30ED,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AC,0x30AC,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AC,0x30AD,0x30AD,0x30AC,0x30AC,0x30AC,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30CD,0x30CD,0x30AD,0x30AD,0x30AC,0x30AD,0x30AD,0x30AD,0x30CD,0x30CD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30CD,0x30CD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AC,0x30AD,0x30AD,0x30AC,0x30AC,0x30AD,0x30AD,0x30AC,0x30AC,0x30AD,0x30AD,0x30AC,0x30AC,0x30AD,0x30AC,0x30AC,0x30AC,0x30AD,0x30AD,0x30AC,0x30AC,0x30AD,0x30AD,0x30CD,0x30CD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AC,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AC,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AC,0x30AC,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AC,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AC,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30CD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30AD,0x30CD,0x30AD,0x30AD,0x30CD,0x30CD,0x30AD,0x30CD,0x30CD,0x30CD,0x30CD,0x30AD,0x38AD,0x38CE,0x38CD,0x38CE,0x38CD,0x38CE,0x38CE,0x38CE,0x38CE,0x38CE,0x38CE,0x38CE,0x40CE,0x40CE,0x40CE,0x40CE,0x40CE,0x40CE,0x40CE,0x40CE,0x48CE,0x48AE,0x48CE,0x50AE,0x508E,0x586E,0x584D,0x580D,0x580C,0x580C,0x600C,0x80F0,0x9992,0xA1D3,0xB214,0xB214,0xB1F4,0xB1F4,0xB1D4,0xB1D3,0xB1D4,0xB1D3,0xB1D3,0xB1D3,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xC1F4,0xB9F4,0xC1F4,0xC214,0xC214,0xC1F4,0xC214,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA15,0xCA15,0xCA15,0xCA14,0xC9F4,0xC9F5,0xC9F4,0xC9F5,0xC9F5,0xC1F4,0xC1F4,0xC1F4,0xC1D4,0xC1F4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1B4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1B3,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1F4,0xC1F4,0xC1F4,0xB9F5,0xBA15,0xBA15,0xBA14,0xBA14,0xBA14,0xBA35,0xB234,0xBA35,0xB214,0xBA35,0xB214,0xBA14,0xBA14,0xB214,0xB1F4,0xB1F4,0xB1F4,0xB1F4,0xAA15,0xA236,0x9A78,0x7A59,0x51D9,0x3A5C,0x2A7D,0x1A9E,0x12BE,0x0ADF,0x0AFF,0x02FF,0x02FF,0x031F,0x031F,0x031F,0x033F,0x033F,0x033F,0x033F,0x033F,0x033F,0x033F,0x035F,0x035F,0x033E,0x033E,0x031D,0x033C,0x03BB,0x255C,0x46FB,0x3695,0x3DF3,0x5DD4,0x7CD4,0x6AEF,0x7A91,0x8252,0x8A54,0x8214,0x71B3,0x6993,0x6193,0x61B3,0x59B3,0x59B3,0x51B3,0x51B2,0x4992,0x4992,0x4991,0x4171,0x4171,0x4171,0x4171,0x4170,0x3950,0x3950,0x3950,0x3950,0x3950,0x312F,0x314F,0x312F,0x312F,0x312F,0x312F,0x312F,0x290E,0x312E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290D,0x292D,0x290D,0x290D,0x292E,0x292E,0x212F,0x210F,0x2130,0x1931,0x1952,0x1973,0x19D5,0x2216,0x19D5,0x1974,0x1132,0x1931,0x18EF,0x210F,0x292F,0x290E,0x210E,0x290E,0x290E,0x210E,0x210E,0x292F,0x210E,0x210E,0x290E,0x290E,0x292F,0x292F,0x210F,0x210F,0x2130,0x2130,0x1931,0x1952,0x2194,0x19B4,0x21F5,0x2A16,0x2A16,0x2A36,0x2A36,0x2A16,0x29F5,0x3215,0x3215,0x3215,0x2A15,0x3215,0x2A15,0x3215,0x29F5,0x29F4,0x29F5,0x31F5,0x29F5,0x3215,0x2A15,0x31F5,0x31F5,0x3215,0x3215,0x31F5,0x3215,0x3215,0x3215,0x3215,0x3215,0x3215,0x3215,0x3215,0x3215,0x3215,0x3215,0x3215,0x3215,0x3215,0x2A15,0x3215,0x3215,0x3215,0x3215,0x31F5,0x29F5,0x2A15,0x29F5,0x2A15,0x29F5,0x29F5,0x29D4,0x29F5,0x29D4,0x21D4,0x21B3,0x21B3,0x21B4,0x21B4,0x19B4,0x21D5,0x19B5,0x11B5,0x11D6,0x11B5,0x0954,0x0933,0x0932,0x0952,0x1152,0x1153,0x1153,0x0953,0x1153,0x1195,0x19D5,0x19B5,0x1973,0x1951,0x1910,0x212F,0x210E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x210E,0x192F,0x112E,0x00ED,0x00ED,0x00EC,0x00ED,0x00ED,0x010D,0x012D,0x012D,0x012E,0x012E,0x014E,0x012E,0x012E,0x010E,0x00ED,0x00CD,0x00ED,0x092E,0x110E,0x190E,0x210F,0x212F,0x212E,0x190E,0x00AC,0x00ED,0x012E,0x012D,0x012D,0x012D,0x014E,0x014E,0x012E,0x010D,0x00CD,0x090E,0x196F,0x1990,0x1990,0x1190,0x00ED,0x010D,0x010E,0x010E,0x012E,0x010E,0x014F,0x012E,0x010E,0x00CD,0x00CD,0x112E,0x1990,0x092E,0x00CC,0x00ED,0x010D,0x012E,0x010E,0x010E,0x010E,0x010E,0x014E,0x012E,0x014E,0x012D,0x012D,0x014E,0x014E,0x014F, + 0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x210E,0x292E,0x290E,0x290E,0x210E,0x292E,0x292E,0x292E,0x292E,0x292E,0x210E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x212E,0x212E,0x210E,0x292E,0x290E,0x290E,0x210E,0x292E,0x210E,0x210E,0x210E,0x292E,0x290E,0x290E,0x210E,0x210E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x210E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x210E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x210E,0x292E,0x290E,0x292E,0x210E,0x290E,0x210E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x292E,0x290E,0x210E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x210E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292F,0x210E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x210E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x210E,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292D,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x312E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x310E,0x310E,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30ED,0x30CD,0x30ED,0x30CD,0x30ED,0x30CD,0x30CD,0x30CD,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30ED,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30ED,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30ED,0x30ED,0x30ED,0x30ED,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30ED,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30ED,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30ED,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30ED,0x30ED,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30ED,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30CD,0x30ED,0x30CD,0x30CD,0x30CD,0x30CD,0x30ED,0x30CD,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x38EE,0x38EE,0x38EE,0x38EE,0x38EE,0x38EE,0x38EE,0x38EE,0x38EE,0x38EE,0x38EE,0x38EE,0x38EE,0x40EF,0x40EF,0x410F,0x40EF,0x40EE,0x40EE,0x48EF,0x48EF,0x48CE,0x48CE,0x50CE,0x50AE,0x588E,0x606D,0x70AE,0x9192,0xBA95,0xDB59,0xD338,0xD317,0xD2F7,0xD2D6,0xD2D6,0xD2B6,0xD2B6,0xD2B6,0xD2B6,0xD296,0xCA96,0xCA96,0xD296,0xCA76,0xCA75,0xD275,0xD255,0xD255,0xD255,0xD235,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xCA14,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F5,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1B4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xB9B3,0xC1B4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D3,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1B3,0xB9B3,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xC1D4,0xB9D4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xBA14,0xBA14,0xB214,0xBA14,0xB214,0xB214,0xB9F4,0xB9F4,0xB1F4,0xB9F4,0xB9F4,0xB1F4,0xB1F4,0xAA15,0xA257,0x9279,0x7239,0x4A1A,0x3A7C,0x2ABE,0x1ABE,0x12DF,0x0AFF,0x0B1F,0x031F,0x031F,0x033F,0x033F,0x033F,0x033F,0x035F,0x035F,0x035F,0x035F,0x035F,0x035F,0x037F,0x035F,0x035F,0x033E,0x033D,0x033C,0x037B,0x14BB,0x4F3C,0x3ED6,0x3DD3,0x65B4,0x7CB4,0x6AAF,0x8291,0x8A52,0x9254,0x9255,0x79B3,0x6993,0x6172,0x5993,0x59B3,0x59B3,0x59B3,0x51B2,0x4992,0x4992,0x4971,0x4991,0x4991,0x4171,0x4171,0x4170,0x4170,0x3950,0x3970,0x3950,0x394F,0x392F,0x312F,0x312F,0x312F,0x312F,0x312F,0x312F,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290E,0x292E,0x212E,0x212F,0x2130,0x1930,0x1951,0x1952,0x1994,0x19D5,0x21F6,0x21D5,0x1973,0x1911,0x1910,0x18EF,0x210F,0x292F,0x292F,0x292F,0x290E,0x210E,0x292E,0x290E,0x210E,0x292E,0x210E,0x292E,0x292E,0x292E,0x292E,0x210E,0x210F,0x210F,0x1910,0x1911,0x1931,0x1952,0x1973,0x1993,0x2194,0x21D4,0x29D5,0x29D5,0x29D5,0x29D5,0x29D4,0x29D4,0x29F4,0x29F4,0x29F4,0x29F4,0x29D4,0x29F4,0x29F4,0x29F4,0x29D4,0x29F4,0x29F5,0x29F5,0x29F4,0x29F4,0x29F4,0x29F5,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F5,0x29D5,0x29F4,0x29D4,0x29F5,0x29F5,0x29F5,0x29D4,0x29F4,0x29D4,0x29D4,0x29F4,0x29F5,0x21B4,0x29D4,0x29D4,0x21B4,0x29D4,0x21D4,0x21D4,0x29F5,0x29D4,0x29D4,0x21B4,0x29D4,0x29F4,0x21F5,0x21D5,0x21D5,0x11B5,0x11D6,0x11F6,0x11F6,0x1195,0x0953,0x0912,0x0932,0x0952,0x0932,0x0932,0x1153,0x1194,0x11B5,0x19D5,0x1994,0x1152,0x1951,0x2130,0x212F,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x210E,0x210E,0x190E,0x112F,0x092E,0x4BB8,0x547A,0x4C7A,0x447A,0x449B,0x44BB,0x4CFC,0x44DB,0x4D1C,0x4D1C,0x4D1C,0x4CFC,0x4CDC,0x449B,0x449B,0x447B,0x4C7B,0x43D8,0x010E,0x110E,0x214F,0x214F,0x216F,0x218F,0x2A52,0x5418,0x4C59,0x447A,0x3C59,0x3459,0x3C9A,0x345A,0x3419,0x2BB7,0x22F5,0x016F,0x094F,0x092F,0x096F,0x014E,0x22F5,0x33F8,0x3C39,0x3C39,0x3C5A,0x3C5A,0x447A,0x445A,0x4419,0x64DC,0x5C3A,0x012E,0x092E,0x010D,0x4C19,0x4C9A,0x447A,0x3C7A,0x3C5A,0x3C5A,0x3C5A,0x3C3A,0x449B,0x449B,0x449B,0x3C7A,0x3C7A,0x3459,0x3439,0x2C19, + 0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290D,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210D,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210D,0x290D,0x290D,0x290E,0x290E,0x290E,0x292E,0x210D,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292D,0x292D,0x292D,0x292E,0x292E,0x292E,0x292E,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x310E,0x310E,0x310E,0x310E,0x310D,0x310D,0x310D,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x28ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x28ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x28ED,0x28ED,0x28ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30EE,0x30ED,0x30ED,0x30EE,0x30EE,0x30EE,0x30ED,0x30EE,0x310E,0x30ED,0x310E,0x30EE,0x38EE,0x30EE,0x390E,0x390E,0x390E,0x390F,0x390F,0x390F,0x390F,0x390F,0x390F,0x390F,0x410F,0x410F,0x410F,0x410F,0x410F,0x490F,0x490F,0x48EF,0x48EF,0x50EF,0x58CF,0x58AE,0x710F,0xB2B6,0xCB17,0xCB17,0xD2F7,0xD2F6,0xD2D6,0xD2D6,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD295,0xD295,0xD295,0xD295,0xD275,0xD275,0xD275,0xD275,0xD255,0xD255,0xD255,0xD255,0xD235,0xD235,0xD255,0xD235,0xD235,0xD214,0xD214,0xD214,0xD214,0xCA14,0xCA14,0xC9F4,0xC9F4,0xCA14,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F5,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D5,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xB9D4,0xC1D4,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB1F4,0xB1F4,0xB9F4,0xB1F4,0xB1F4,0xB9F4,0xB1D4,0xB9D4,0xB9F4,0xB1F4,0xA9F4,0xAA15,0xA257,0x9299,0x6A39,0x4A1A,0x3ABD,0x2AFE,0x1AFE,0x131F,0x0B3F,0x0B3F,0x035F,0x033F,0x035F,0x035F,0x035F,0x035F,0x035F,0x037F,0x035F,0x037F,0x037F,0x037F,0x037F,0x037F,0x035F,0x035E,0x033D,0x033C,0x035C,0x0C3A,0x4F1D,0x46D7,0x3DB3,0x6595,0x7453,0x6A8F,0x7A51,0x8A53,0x9254,0x9234,0x79B3,0x7193,0x6193,0x61B3,0x61B3,0x59B3,0x51B2,0x5192,0x4992,0x4992,0x4971,0x4971,0x4171,0x4170,0x4170,0x4170,0x3950,0x3950,0x3950,0x3950,0x394F,0x3950,0x312F,0x314F,0x312F,0x312F,0x312F,0x312E,0x312E,0x312E,0x312E,0x290E,0x312E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290D,0x292D,0x290D,0x290E,0x292E,0x212E,0x212F,0x212F,0x1930,0x1931,0x1952,0x1973,0x1994,0x21F6,0x21F6,0x21B5,0x1973,0x1911,0x18F0,0x20EF,0x2930,0x292F,0x292F,0x210E,0x210E,0x210E,0x210E,0x292E,0x290E,0x290E,0x290E,0x292E,0x210E,0x210E,0x210E,0x212E,0x210F,0x210F,0x2110,0x1910,0x1910,0x1910,0x1931,0x1931,0x1932,0x1952,0x1952,0x1952,0x2152,0x2173,0x2172,0x2173,0x2173,0x2173,0x2173,0x2193,0x2173,0x2173,0x2193,0x2193,0x2193,0x1972,0x2173,0x2193,0x1972,0x1972,0x2193,0x2172,0x2172,0x2172,0x2172,0x2172,0x2172,0x2172,0x2173,0x2173,0x2172,0x2172,0x2173,0x2173,0x2172,0x2172,0x2172,0x2172,0x2172,0x2172,0x2173,0x2173,0x1952,0x2173,0x1973,0x1973,0x1972,0x1972,0x1973,0x2193,0x2193,0x1972,0x2193,0x1993,0x1993,0x1973,0x1974,0x1174,0x11B5,0x19F6,0x11D6,0x11D6,0x1194,0x0953,0x0932,0x0932,0x0932,0x0932,0x0953,0x11B5,0x19D5,0x19D5,0x1994,0x1152,0x1931,0x2130,0x212F,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x210E,0x210E,0x192E,0x092F,0x014F,0x4C3A,0x447A,0x2C18,0x2418,0x1C18,0x13F8,0x1418,0x1418,0x1438,0x1418,0x1C19,0x13F8,0x13F8,0x1C19,0x2439,0x2C5A,0x345A,0x3C19,0x012E,0x110E,0x110E,0x110E,0x110E,0x112E,0x4B96,0x5C9A,0x3C38,0x2C18,0x2439,0x1C39,0x1C59,0x1C39,0x2439,0x2C39,0x33F9,0x01F1,0x012E,0x012E,0x012E,0x0211,0x3C5A,0x2C39,0x2419,0x1BF8,0x2419,0x2419,0x2419,0x23F8,0x3439,0x54BB,0x3335,0x010D,0x00ED,0x014E,0x54FC,0x347A,0x2439,0x2439,0x1C19,0x1C19,0x1BF8,0x1BF8,0x1C19,0x1C39,0x1C39,0x1C39,0x1C59,0x1418,0x1C38,0x1C38, + 0x290E,0x290D,0x290E,0x290D,0x292E,0x290E,0x290E,0x290E,0x290D,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x210D,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x210D,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290E,0x290D,0x292E,0x290E,0x290E,0x290D,0x292E,0x290D,0x292E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292D,0x292D,0x292D,0x290D,0x292E,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312E,0x290E,0x290E,0x292E,0x312E,0x310E,0x310E,0x310E,0x312E,0x310D,0x310E,0x310E,0x310D,0x310E,0x310D,0x310D,0x310D,0x310D,0x30ED,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x310D,0x310D,0x290D,0x310D,0x310D,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x310D,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x290D,0x290D,0x30ED,0x30ED,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30ED,0x30ED,0x310D,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30ED,0x30ED,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30ED,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310E,0x310D,0x310D,0x310E,0x30ED,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30ED,0x30ED,0x30ED,0x30ED,0x310D,0x310D,0x30ED,0x30ED,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30ED,0x310D,0x30ED,0x310E,0x310E,0x310E,0x30ED,0x310E,0x310E,0x30EE,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x390E,0x390E,0x390E,0x390E,0x390E,0x390F,0x390F,0x390F,0x390F,0x392F,0x392F,0x392F,0x392F,0x412F,0x410F,0x410F,0x412F,0x412F,0x490F,0x490F,0x490F,0x50EF,0x58EE,0x60CE,0x89B1,0xC337,0xCAF6,0xCAF6,0xD2F6,0xCAB5,0xD2B5,0xD2B5,0xD295,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD295,0xD295,0xD295,0xD295,0xD275,0xD275,0xD255,0xD255,0xCA35,0xD255,0xD235,0xD235,0xD235,0xD235,0xD235,0xD235,0xD235,0xD234,0xD214,0xD214,0xD214,0xD214,0xD214,0xD214,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F4,0xC9F5,0xC9F4,0xC9F4,0xC9F5,0xC9F5,0xC9F5,0xC9F5,0xC9D5,0xC9D5,0xC9F5,0xC9F5,0xC1F5,0xC1F5,0xC1D4,0xC1D5,0xC1D5,0xC1D5,0xC1F5,0xC1F5,0xC1D5,0xC1D5,0xC1D5,0xC1D5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1F4,0xC1D4,0xC1D4,0xC1D4,0xB9D4,0xB9D4,0xB9D4,0xB9D3,0xB9D3,0xB9D3,0xB9D4,0xB9D4,0xB9D4,0xB9F4,0xB9F4,0xB1D4,0xB1D4,0xB1D4,0xB9D4,0xB1D4,0xB9F4,0xB9F4,0xB9F4,0xB1F4,0xA9F4,0xA235,0x9A77,0x8A99,0x6219,0x4A5B,0x3AFD,0x231E,0x1B3F,0x0B3F,0x0B5F,0x035F,0x035F,0x035F,0x035F,0x035F,0x035F,0x037F,0x037F,0x037F,0x037F,0x037F,0x039F,0x037F,0x037F,0x037F,0x037F,0x037E,0x035D,0x035D,0x035C,0x0C3B,0x46BD,0x4EFA,0x3DB5,0x6575,0x7413,0x6A6F,0x8271,0x8A32,0x9A54,0x9A55,0x81D3,0x7173,0x6193,0x6193,0x61B3,0x59D3,0x51B2,0x51B2,0x4992,0x4991,0x4971,0x4991,0x4991,0x4171,0x4170,0x4170,0x4170,0x3950,0x394F,0x394F,0x394F,0x394F,0x312F,0x312F,0x312F,0x312F,0x312E,0x312F,0x312E,0x312E,0x312E,0x292E,0x290E,0x312E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290D,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x290E,0x292E,0x292F,0x212F,0x212F,0x1930,0x1951,0x1951,0x1152,0x1994,0x21F5,0x2216,0x21D5,0x1973,0x1911,0x18F0,0x2110,0x2130,0x2930,0x290F,0x210E,0x210E,0x210E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x210E,0x210E,0x292E,0x212E,0x210E,0x212F,0x212F,0x210F,0x1910,0x1910,0x1910,0x18F0,0x1910,0x1911,0x1911,0x18F0,0x1911,0x1911,0x1911,0x1910,0x1910,0x1911,0x1931,0x1931,0x1911,0x1911,0x1911,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1930,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1911,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1110,0x1110,0x1911,0x10F0,0x10F0,0x1110,0x1111,0x1110,0x1110,0x1111,0x1111,0x1111,0x1111,0x10F1,0x0912,0x1174,0x11B5,0x19D6,0x19F6,0x11D5,0x1194,0x0953,0x0953,0x0953,0x0953,0x1194,0x21F6,0x19D5,0x19B5,0x1173,0x1131,0x1951,0x2150,0x212F,0x210E,0x210E,0x210E,0x292E,0x292E,0x292E,0x210E,0x212E,0x192E,0x092E,0x016F,0x445A,0x3459,0x2439,0x1C39,0x1419,0x0C19,0x0C39,0x0C39,0x0C19,0x0C19,0x0C19,0x0C19,0x1419,0x1419,0x1419,0x1C19,0x2C5A,0x3C19,0x016F,0x092E,0x112E,0x110E,0x110D,0x00EC,0x11AF,0x4C38,0x3438,0x2439,0x1418,0x1419,0x1419,0x1419,0x1439,0x1C39,0x2439,0x0AD4,0x01D0,0x016F,0x01F1,0x23D8,0x2418,0x13F8,0x13F8,0x13F8,0x1C19,0x1BF9,0x1BF8,0x23F8,0x3419,0x33D8,0x09D0,0x014E,0x010D,0x018F,0x3C59,0x2439,0x2459,0x1419,0x1419,0x1419,0x1C39,0x1418,0x1439,0x1459,0x0C39,0x0C38,0x0C38,0x0C58,0x0C38,0x0C38, + 0x290D,0x290D,0x292E,0x292D,0x292E,0x292E,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290D,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x290E,0x290D,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x292E,0x292E,0x290D,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x210D,0x290D,0x290E,0x292E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290E,0x292E,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290D,0x290D,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x292E,0x290D,0x292E,0x290E,0x290E,0x290E,0x292E,0x290D,0x292E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290D,0x290E,0x292E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290D,0x290D,0x292E,0x290E,0x292E,0x290E,0x290D,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290D,0x292E,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x292E,0x290D,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290D,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x292E,0x312E,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312E,0x312E,0x290D,0x312E,0x290D,0x312E,0x290D,0x290D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x310D,0x28ED,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310E,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310E,0x310E,0x310D,0x310D,0x310E,0x310E,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310E,0x310D,0x310D,0x310E,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x310D,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x312E,0x312E,0x392F,0x392F,0x390E,0x392E,0x392F,0x392F,0x392F,0x392F,0x392F,0x414F,0x412F,0x412F,0x410F,0x410F,0x490F,0x48EF,0x50EE,0x58EE,0x60CE,0xA295,0xCB37,0xCAF6,0xCAF6,0xD2D5,0xD2D5,0xD2D5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD295,0xD295,0xD295,0xD295,0xD275,0xD275,0xD275,0xD275,0xD255,0xD255,0xD255,0xD255,0xD255,0xD235,0xD255,0xD235,0xD235,0xD235,0xD235,0xD235,0xD235,0xD214,0xD215,0xD214,0xD215,0xD214,0xC9F4,0xD215,0xCA14,0xC9F4,0xC9F5,0xC9F5,0xC9F5,0xC9F5,0xC9F5,0xC9F5,0xC9F5,0xC9F5,0xC9F5,0xC9F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F6,0xC1F6,0xC1F6,0xC1F6,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1D4,0xC1F4,0xC1F4,0xC1F4,0xC1F4,0xC1F4,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9D4,0xB9F4,0xB1D4,0xB9F4,0xB9F4,0xB214,0xA9F4,0xA235,0x9A77,0x8299,0x5A19,0x427B,0x3B1D,0x233E,0x133E,0x0B5F,0x0B7F,0x037F,0x037F,0x037F,0x037F,0x037F,0x039F,0x037F,0x037F,0x037F,0x037F,0x037F,0x039F,0x039F,0x039F,0x039F,0x039F,0x037E,0x037E,0x035D,0x037C,0x041B,0x363C,0x573C,0x3D95,0x6D76,0x7C13,0x6A4F,0x8251,0x9232,0x9A33,0x9A55,0x81D4,0x7172,0x69B3,0x6193,0x61B3,0x59D3,0x51B2,0x5192,0x4992,0x4992,0x4971,0x4971,0x4991,0x4170,0x4170,0x4170,0x4170,0x3950,0x3950,0x3950,0x394F,0x392F,0x394F,0x312F,0x312F,0x314F,0x312F,0x312E,0x312E,0x312E,0x292E,0x312E,0x292E,0x312E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290D,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x292E,0x292E,0x292E,0x212E,0x212F,0x212F,0x1930,0x1930,0x1131,0x1132,0x19B4,0x2215,0x21F5,0x21B5,0x2173,0x10F1,0x1911,0x2110,0x2110,0x210F,0x210F,0x210E,0x210E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290D,0x292E,0x292E,0x292E,0x210E,0x210E,0x212F,0x212F,0x210F,0x210F,0x2110,0x1910,0x2110,0x2110,0x2110,0x1910,0x1910,0x2110,0x1910,0x2110,0x2110,0x2110,0x2110,0x1910,0x1910,0x2110,0x2110,0x190F,0x2110,0x190F,0x1910,0x2110,0x190F,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x2110,0x210F,0x2110,0x2130,0x2110,0x2110,0x2110,0x2110,0x2110,0x1910,0x1910,0x2110,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1930,0x1110,0x1911,0x10F1,0x1132,0x1174,0x11B4,0x19D6,0x19D5,0x19D5,0x1194,0x1174,0x1173,0x1173,0x19D5,0x21F6,0x19D5,0x1994,0x1152,0x1931,0x1910,0x212F,0x212F,0x210E,0x290E,0x292E,0x290E,0x292E,0x290E,0x212E,0x214E,0x112E,0x092E,0x016F,0x445A,0x2C39,0x1418,0x1439,0x0C39,0x0C39,0x0438,0x0439,0x0C39,0x0C39,0x0C39,0x0C39,0x0C19,0x1439,0x1439,0x1C39,0x245A,0x3419,0x016F,0x094E,0x112E,0x112E,0x112E,0x092D,0x00EC,0x2B14,0x3C59,0x2418,0x1419,0x0C18,0x0C19,0x0C19,0x0C39,0x1439,0x1C39,0x1BD8,0x0211,0x0231,0x0B55,0x1BF8,0x13F8,0x0BF8,0x0BF8,0x1419,0x13F9,0x13F9,0x1C19,0x23F8,0x3419,0x0A32,0x018F,0x014E,0x012D,0x01AF,0x3459,0x1C18,0x1418,0x1439,0x0C19,0x0C18,0x0C19,0x0C39,0x0C18,0x0C39,0x0C39,0x0438,0x0438,0x0438,0x0458,0x0438, + 0x292D,0x292D,0x292D,0x292D,0x292E,0x292E,0x290D,0x290D,0x290D,0x292E,0x290D,0x292E,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290D,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290D,0x292E,0x290E,0x292E,0x290D,0x290D,0x290D,0x290E,0x290D,0x290E,0x290E,0x290E,0x290D,0x292E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x292E,0x290E,0x290D,0x290D,0x292E,0x290D,0x290E,0x290E,0x290D,0x292E,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x292E,0x290E,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x292E,0x292E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290D,0x290D,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x292E,0x292E,0x290D,0x290D,0x292E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290D,0x290E,0x290D,0x292E,0x290D,0x290E,0x290E,0x292E,0x290D,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x292E,0x290D,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x292E,0x290D,0x290E,0x290D,0x292E,0x290D,0x290D,0x290D,0x292E,0x290D,0x290E,0x290E,0x292E,0x290D,0x292E,0x290E,0x292E,0x290D,0x290E,0x290D,0x292E,0x290D,0x290E,0x290E,0x292E,0x290D,0x290E,0x290E,0x292E,0x290D,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290E,0x292E,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310E,0x310E,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x312E,0x310D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310E,0x310E,0x310E,0x310E,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310E,0x310E,0x290D,0x290D,0x290D,0x290D,0x312D,0x312D,0x290D,0x290D,0x290D,0x312D,0x290D,0x290D,0x312D,0x310D,0x310D,0x310D,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x392F,0x392F,0x392F,0x392F,0x392F,0x392F,0x392F,0x392F,0x392F,0x392F,0x412F,0x410F,0x410F,0x40EE,0x48CE,0x50CE,0x712F,0xC337,0xCB17,0xCAF6,0xD2F6,0xD2D6,0xD2F6,0xD2D6,0xD2D6,0xD2D6,0xD2B5,0xD2B5,0xD295,0xD295,0xD275,0xD275,0xD255,0xD275,0xD255,0xD255,0xD275,0xD275,0xD255,0xD255,0xD255,0xD255,0xD255,0xD235,0xD235,0xD235,0xD215,0xD235,0xD215,0xD215,0xD235,0xD215,0xD215,0xCA15,0xCA15,0xCA15,0xCA15,0xCA15,0xCA15,0xCA15,0xC9F5,0xC9F5,0xCA15,0xC9F5,0xC9F6,0xCA16,0xC216,0xC1F6,0xC216,0xC216,0xC216,0xC216,0xC216,0xC216,0xC216,0xC216,0xC216,0xC217,0xC216,0xC216,0xC216,0xBA16,0xBA16,0xBA16,0xB9F6,0xBA17,0xBA17,0xB9F6,0xB9F6,0xBA16,0xBA16,0xC1F6,0xB9F6,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1F5,0xC1D5,0xC1F5,0xB9D5,0xC1F5,0xB9D5,0xB9D5,0xB9D5,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xB9D4,0xB9F4,0xB9D4,0xB9D4,0xB9F4,0xB9D4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xBA14,0xB214,0xAA14,0x9A35,0x9277,0x7A98,0x5259,0x42DC,0x333E,0x1B5E,0x137F,0x0B7F,0x0B7F,0x039F,0x039F,0x039F,0x039F,0x039F,0x039F,0x039F,0x039F,0x039F,0x039F,0x039F,0x03BF,0x03BF,0x03BF,0x039F,0x039F,0x039F,0x037E,0x037D,0x037D,0x041B,0x259B,0x571D,0x45B7,0x6D77,0x7C14,0x726F,0x8A51,0x9232,0x9A13,0x9A34,0x89F4,0x7993,0x6993,0x61B3,0x5992,0x59B3,0x5192,0x5192,0x4991,0x4991,0x4991,0x4991,0x4171,0x4171,0x4150,0x4170,0x4150,0x3950,0x3950,0x3950,0x394F,0x394F,0x312F,0x312F,0x314F,0x312E,0x314F,0x312E,0x312F,0x312E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292D,0x290D,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290D,0x290E,0x290E,0x292E,0x290E,0x292E,0x290D,0x290E,0x290E,0x290E,0x290E,0x292E,0x290D,0x290D,0x290E,0x290E,0x290D,0x290D,0x290E,0x290D,0x290D,0x290E,0x290D,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x312E,0x290E,0x290D,0x290D,0x290D,0x292E,0x290E,0x292E,0x292E,0x292E,0x212E,0x212F,0x214F,0x1930,0x10EF,0x1110,0x1152,0x19D4,0x21F6,0x21F6,0x21D5,0x1973,0x1111,0x18F0,0x18F0,0x2930,0x292F,0x292F,0x210E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292E,0x292E,0x290E,0x210E,0x292F,0x292F,0x292F,0x212F,0x212F,0x2130,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x2130,0x212F,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x1910,0x1910,0x1931,0x1152,0x1173,0x1994,0x19B4,0x19D5,0x19D5,0x19D5,0x1194,0x1194,0x19B4,0x19D5,0x19B4,0x1972,0x1131,0x1930,0x212F,0x212F,0x210E,0x290E,0x292D,0x290D,0x290D,0x290D,0x290D,0x212E,0x214E,0x114E,0x012E,0x016F,0x449B,0x2418,0x1418,0x0C18,0x0C18,0x0C39,0x0439,0x0439,0x0419,0x0439,0x0C5A,0x0C39,0x0C39,0x0C3A,0x0C39,0x1419,0x1C39,0x345A,0x016F,0x092E,0x114E,0x194E,0x194E,0x114E,0x092D,0x012D,0x2B96,0x347A,0x1C39,0x1439,0x0BF8,0x0C19,0x0C19,0x0C19,0x0C18,0x1C7A,0x0376,0x0B96,0x1418,0x0C18,0x0C18,0x0C18,0x0C19,0x0C19,0x0BF8,0x13F9,0x1BF8,0x2BF9,0x2B77,0x016F,0x016E,0x012E,0x010D,0x018E,0x3439,0x1C18,0x1418,0x1418,0x0C19,0x0C18,0x0C39,0x0C39,0x0418,0x0418,0x0418,0x0438,0x0459,0x0438,0x0439,0x0438, + 0x292E,0x292D,0x292D,0x292D,0x292D,0x290D,0x292E,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290D,0x290E,0x292E,0x290D,0x290E,0x290E,0x290D,0x290D,0x292E,0x292E,0x290D,0x290D,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290D,0x290D,0x290D,0x290E,0x290D,0x290E,0x290D,0x290D,0x290D,0x290E,0x290E,0x290D,0x290D,0x290D,0x292E,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x292E,0x290D,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290D,0x290E,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x292E,0x292D,0x292E,0x290D,0x292E,0x290D,0x290D,0x290D,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290E,0x290E,0x292E,0x292D,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292D,0x292D,0x292D,0x292D,0x292D,0x292E,0x292D,0x292E,0x292E,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x312D,0x312D,0x290D,0x292D,0x292D,0x290D,0x290D,0x310D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310E,0x310E,0x310E,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310E,0x310E,0x290D,0x290D,0x312D,0x290D,0x290D,0x312E,0x290D,0x290D,0x292D,0x312D,0x312D,0x312D,0x312D,0x312E,0x310E,0x310E,0x312E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312F,0x312F,0x392F,0x392F,0x392F,0x392F,0x392F,0x394F,0x392F,0x392F,0x392F,0x412F,0x410E,0x40EE,0x48CE,0x486C,0x89F2,0xC337,0xCB17,0xD2F6,0xD2F6,0xD2D6,0xD2D6,0xD2D5,0xD2B5,0xD2B5,0xD2B5,0xD295,0xD295,0xD295,0xD275,0xD295,0xD275,0xD255,0xD275,0xD275,0xD255,0xD276,0xD255,0xD256,0xD256,0xD256,0xD256,0xCA56,0xCA56,0xCA36,0xCA35,0xCA36,0xCA15,0xCA15,0xCA15,0xCA16,0xCA16,0xCA16,0xCA36,0xCA36,0xCA36,0xCA36,0xC216,0xC216,0xC216,0xC216,0xBA16,0xBA16,0xBA17,0xBA17,0xBA17,0xB217,0xB217,0xB1F7,0xB218,0xA9F7,0xB217,0xAA17,0xB217,0xAA17,0xB217,0xAA17,0xB218,0xAA17,0xAA18,0xAA17,0xAA17,0xA9F7,0xAA17,0xA1F7,0xA9F8,0xA1D7,0xA9F8,0xA9F7,0xA9F7,0xA9F7,0xB1F7,0xB1F7,0xB1F7,0xB1F6,0xBA16,0xBA16,0xBA16,0xBA16,0xBA16,0xBA16,0xBA16,0xB9F5,0xB9F5,0xB9F5,0xB9F5,0xB9F5,0xB9F5,0xB9D4,0xB9F4,0xB9F4,0xB9F5,0xB9F5,0xB9F5,0xB9F5,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xBA14,0xB215,0xA215,0x9A35,0x8276,0x72B8,0x52B9,0x433C,0x2B7E,0x1B7E,0x139F,0x0B9F,0x039F,0x03BF,0x039F,0x03BF,0x03BF,0x039F,0x03BF,0x03BF,0x03BF,0x03BF,0x03BF,0x03BF,0x03DF,0x03BF,0x03BF,0x03BF,0x03BF,0x03BF,0x039E,0x039D,0x039D,0x041C,0x151A,0x56DE,0x55FA,0x6D58,0x8435,0x7250,0x8A52,0x9212,0x9A13,0x9A34,0x91F4,0x7993,0x6992,0x6193,0x61B3,0x59B2,0x5192,0x5192,0x5192,0x4991,0x4991,0x4991,0x4971,0x4991,0x4170,0x4170,0x4150,0x4150,0x394F,0x3950,0x394F,0x392F,0x312F,0x394F,0x312E,0x312E,0x314E,0x312E,0x310E,0x312E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290D,0x290E,0x290E,0x292E,0x292E,0x290D,0x290D,0x290D,0x290E,0x292E,0x290E,0x290E,0x290E,0x292E,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290E,0x290D,0x290E,0x290E,0x290D,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290D,0x290E,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290E,0x292E,0x292E,0x290E,0x212E,0x212E,0x212F,0x192F,0x190F,0x1110,0x1130,0x1172,0x19B4,0x21F6,0x21F5,0x21D5,0x1973,0x1111,0x1910,0x2110,0x212F,0x292F,0x210E,0x210E,0x292E,0x210D,0x290E,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x292D,0x290E,0x290E,0x290E,0x290E,0x290F,0x292F,0x292F,0x210F,0x292F,0x210F,0x210E,0x210F,0x292F,0x210F,0x210E,0x210E,0x210E,0x212E,0x210E,0x210E,0x210E,0x212E,0x212E,0x212E,0x210E,0x212E,0x292F,0x210E,0x210E,0x290E,0x210E,0x290E,0x210E,0x292E,0x210E,0x290E,0x290E,0x292F,0x210E,0x210E,0x210E,0x290F,0x210F,0x292F,0x210E,0x210E,0x210E,0x210E,0x210E,0x292F,0x290E,0x210E,0x212F,0x212F,0x210E,0x212F,0x210F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x2130,0x1930,0x1930,0x1951,0x1152,0x1173,0x19B4,0x19B4,0x19B4,0x1994,0x19B4,0x1993,0x1973,0x1152,0x1131,0x1930,0x1930,0x212F,0x212E,0x210E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x210E,0x192E,0x114E,0x010E,0x016F,0x4CBB,0x1BF8,0x1439,0x0C39,0x0418,0x0439,0x0439,0x0439,0x0419,0x0439,0x0C39,0x0419,0x145A,0x0C19,0x0C39,0x1439,0x2459,0x3439,0x016E,0x094E,0x112D,0x194E,0x194D,0x194D,0x112D,0x010C,0x01AF,0x3439,0x245A,0x1439,0x0C19,0x0C39,0x0C39,0x0C19,0x0C18,0x0C38,0x0C18,0x0C18,0x0418,0x0418,0x0C18,0x0418,0x0C18,0x0C19,0x1419,0x13F8,0x1BF8,0x3C39,0x01D0,0x012E,0x094E,0x092E,0x010D,0x016E,0x3459,0x1C18,0x1C38,0x1439,0x0C18,0x0C39,0x0C39,0x0C39,0x0418,0x0418,0x0439,0x0439,0x0438,0x0438,0x0459,0x0438, + 0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292E,0x292E,0x290D,0x292E,0x292E,0x290D,0x290E,0x290E,0x292E,0x292E,0x290D,0x292E,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292E,0x290D,0x290D,0x292E,0x290D,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290E,0x290E,0x290E,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x292D,0x290D,0x290D,0x292E,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290D,0x290D,0x292E,0x292D,0x292D,0x290D,0x290D,0x292E,0x290D,0x290D,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x292E,0x290D,0x290D,0x292E,0x290E,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x290D,0x290D,0x290D,0x290D,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292D,0x292D,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x292E,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x312D,0x312D,0x312D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x312D,0x312D,0x312D,0x312D,0x312E,0x310E,0x312E,0x312E,0x310D,0x310D,0x310E,0x310E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x392F,0x392E,0x392F,0x392F,0x392F,0x394F,0x392F,0x392F,0x392F,0x392E,0x410E,0x410E,0x48CD,0x58CE,0xAAB5,0xCB58,0xCAF6,0xD2F6,0xD2F6,0xD2F6,0xD2D6,0xD2B5,0xD2B5,0xD295,0xD295,0xD295,0xD295,0xD275,0xD275,0xD275,0xD275,0xD275,0xD275,0xD275,0xD275,0xD276,0xD276,0xD276,0xD276,0xCA76,0xCA76,0xCA56,0xCA56,0xCA56,0xCA56,0xCA56,0xCA56,0xC256,0xC257,0xC257,0xC257,0xC257,0xC237,0xC257,0xBA57,0xBA57,0xBA37,0xB237,0xB237,0xAA17,0xAA17,0xAA18,0xA1F7,0xA1F8,0xA1D7,0x99F8,0x91D7,0x89B7,0x8997,0x8197,0x8197,0x8197,0x8197,0x8197,0x81B8,0x8198,0x8198,0x8197,0x8198,0x8198,0x8198,0x8198,0x8198,0x8198,0x8198,0x7998,0x7998,0x8198,0x8197,0x81B8,0x89B7,0x89B7,0x91B7,0x99F7,0x99F7,0xA218,0xAA17,0xAA38,0xB237,0xB237,0xB237,0xB237,0xB237,0xB216,0xB216,0xB216,0xB216,0xB215,0xB1F5,0xB1F5,0xB1F5,0xB1F5,0xB1F5,0xB1F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB215,0xAA15,0xA215,0x9256,0x8297,0x62B8,0x4B3A,0x439D,0x239D,0x139E,0x0BBF,0x0BBF,0x03BF,0x03DF,0x03DF,0x03BF,0x03BF,0x03DF,0x03DF,0x03BF,0x03DF,0x03DF,0x03DF,0x03DF,0x03DF,0x03BF,0x03BF,0x03BF,0x03BF,0x03BF,0x03BE,0x03BE,0x03BD,0x041C,0x0CBA,0x3E3D,0x5E7C,0x75BA,0x8C76,0x7A70,0x9272,0x9A33,0x9A13,0x9A34,0x9214,0x7993,0x6972,0x69B3,0x61B3,0x59B3,0x5992,0x5192,0x5192,0x5192,0x4991,0x4991,0x4971,0x4971,0x4170,0x4170,0x4150,0x3950,0x394F,0x394F,0x394F,0x392F,0x312F,0x312F,0x312E,0x312E,0x314E,0x312E,0x312E,0x312E,0x312E,0x292E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x310E,0x290E,0x292E,0x290E,0x292D,0x290D,0x292D,0x290D,0x290D,0x292E,0x292E,0x292E,0x290D,0x290D,0x290D,0x292E,0x290D,0x292E,0x292E,0x292E,0x290D,0x292E,0x290D,0x292D,0x292D,0x292E,0x290D,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290D,0x292E,0x292D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290E,0x290D,0x290E,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290E,0x290D,0x292E,0x290D,0x290D,0x290D,0x290E,0x292E,0x290E,0x292E,0x210D,0x210E,0x212E,0x212F,0x212F,0x192F,0x110F,0x1130,0x1972,0x19B4,0x21F5,0x21F5,0x21B4,0x1953,0x1911,0x1910,0x2130,0x212F,0x210E,0x210E,0x210E,0x292E,0x290E,0x292E,0x290D,0x292E,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x290E,0x292E,0x290E,0x292E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x292E,0x210E,0x292E,0x210E,0x290E,0x290E,0x290E,0x210E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x292E,0x212E,0x292F,0x212E,0x212E,0x212E,0x210E,0x210F,0x212F,0x210F,0x212F,0x210F,0x212F,0x190F,0x190F,0x1910,0x1131,0x1972,0x1993,0x1993,0x1993,0x1972,0x1972,0x1952,0x1931,0x1930,0x192F,0x192F,0x214F,0x212E,0x210D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x292E,0x192E,0x110E,0x010E,0x016F,0x44BB,0x2418,0x1459,0x0C39,0x0438,0x0439,0x0418,0x0438,0x0419,0x0439,0x0419,0x0C39,0x0C19,0x1439,0x1459,0x1C59,0x2459,0x3C59,0x016E,0x114E,0x194D,0x192D,0x194E,0x194E,0x194D,0x090C,0x010D,0x0A72,0x349A,0x1C59,0x0C19,0x0C19,0x0C19,0x0C19,0x0418,0x0418,0x03F8,0x0418,0x0438,0x0418,0x0418,0x0418,0x03F8,0x03F8,0x1419,0x1BF8,0x2BF9,0x1272,0x010D,0x092D,0x114E,0x114E,0x092D,0x01AF,0x447A,0x3479,0x2459,0x2439,0x1C59,0x1C7A,0x1439,0x0C18,0x0C39,0x0439,0x0418,0x0438,0x0418,0x0439,0x0418,0x0438, + 0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290D,0x290D,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292E,0x292E,0x292E,0x292E,0x292D,0x292D,0x290E,0x292E,0x292D,0x292D,0x292E,0x292E,0x292D,0x292D,0x292E,0x292E,0x292D,0x292D,0x292D,0x292D,0x292E,0x292E,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x312D,0x312D,0x312D,0x312E,0x290D,0x312D,0x310D,0x312E,0x310D,0x310E,0x312E,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x312E,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x392F,0x392E,0x392E,0x392E,0x392E,0x392E,0x412E,0x410E,0x40EE,0x48CD,0x692F,0xB316,0xCB17,0xCAF6,0xD2F6,0xD2D5,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xD295,0xD295,0xCA95,0xD275,0xD295,0xD295,0xD275,0xCA75,0xD276,0xD276,0xD276,0xD296,0xD276,0xCA76,0xCA77,0xCA77,0xCA77,0xCA77,0xC277,0xC277,0xC277,0xC278,0xC278,0xBA98,0xBA99,0xBA99,0xBAB9,0xB2BA,0xB2BA,0xB29A,0xB2BA,0xAA9A,0xA27A,0xA27A,0x9A59,0x9A59,0x9219,0x89F9,0x81D8,0x81D9,0x81D8,0x81B8,0x7998,0x7198,0x6978,0x6978,0x6158,0x6158,0x6158,0x6158,0x6158,0x6178,0x6178,0x6158,0x6159,0x5958,0x5959,0x5959,0x5959,0x5959,0x5959,0x5979,0x5979,0x5979,0x5979,0x5979,0x6178,0x6178,0x6978,0x6998,0x6998,0x71B8,0x79B8,0x81F8,0x81F8,0x8A19,0x9239,0x9A7A,0x9A79,0x9A79,0x9A38,0x9A38,0x9A17,0xA237,0xAA37,0xAA37,0xAA36,0xB236,0xB216,0xB215,0xB1F5,0xB1F5,0xB1F5,0xB1F5,0xB1F5,0xB1F5,0xB1F5,0xB1F4,0xB9F4,0xB9F4,0xB9F4,0xB9F4,0xB1F4,0xB1F4,0xB1F5,0xAA15,0xAA15,0x9A35,0x8A56,0x7297,0x5AF9,0x4B9B,0x33DD,0x23BD,0x13DE,0x0BDF,0x0BDF,0x03DF,0x03DF,0x03FF,0x03FF,0x03FF,0x03FF,0x03DF,0x03FF,0x03DF,0x03DF,0x03DF,0x03DF,0x03DF,0x03DF,0x03DF,0x03BF,0x03BF,0x03DF,0x03DE,0x03BE,0x03BE,0x041D,0x0CBB,0x2DBC,0x6EBE,0x75BB,0x8C97,0x7A71,0x9272,0x9A12,0x9A13,0x9A14,0x9A35,0x81D3,0x6972,0x69B3,0x6192,0x5992,0x5992,0x5192,0x5192,0x5192,0x4991,0x4971,0x4991,0x4170,0x4170,0x4150,0x4170,0x4150,0x394F,0x394F,0x394F,0x394F,0x392F,0x392F,0x312F,0x312E,0x312E,0x312E,0x312E,0x312E,0x310E,0x312E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x310E,0x290D,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290D,0x292E,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x292E,0x290D,0x290D,0x292D,0x290D,0x292E,0x212E,0x212E,0x212F,0x192F,0x110F,0x1131,0x1972,0x19B4,0x21D5,0x21D5,0x21B4,0x1973,0x1911,0x1910,0x210F,0x210F,0x210F,0x212E,0x292E,0x290E,0x292E,0x290D,0x292E,0x290D,0x210D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x292E,0x290D,0x292E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290E,0x290E,0x292E,0x290D,0x290E,0x292E,0x210E,0x212E,0x292E,0x292E,0x210E,0x210E,0x210E,0x210E,0x212E,0x212E,0x212E,0x212E,0x210F,0x210F,0x190F,0x1910,0x1930,0x1931,0x1131,0x1931,0x1931,0x1910,0x1910,0x1910,0x190F,0x210F,0x214F,0x212E,0x210D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x292E,0x192E,0x110E,0x010E,0x016F,0x449B,0x2438,0x1438,0x0C38,0x0C38,0x0438,0x0438,0x0438,0x0C39,0x0C39,0x1439,0x1C39,0x2459,0x2439,0x2C59,0x2C38,0x3459,0x3BF8,0x016E,0x114D,0x110D,0x192D,0x194D,0x192D,0x196E,0x114D,0x010D,0x014D,0x1B56,0x349B,0x1419,0x0C39,0x0C19,0x0419,0x0419,0x0418,0x0418,0x0418,0x0418,0x0418,0x0C39,0x0418,0x0C18,0x0C18,0x1419,0x2419,0x2B97,0x014E,0x010D,0x112D,0x112E,0x112D,0x114E,0x096F,0x3B96,0x3BF8,0x3C18,0x3418,0x3418,0x2C39,0x2C39,0x1C39,0x1439,0x0439,0x0439,0x0439,0x0439,0x0438,0x0438,0x0438, + 0x292D,0x292D,0x292D,0x290D,0x292D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292E,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292E,0x290D,0x292E,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x292E,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292E,0x292E,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x312D,0x312D,0x312D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x292D,0x292D,0x292D,0x292E,0x292D,0x312D,0x312D,0x310D,0x310E,0x310D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x394F,0x392E,0x392E,0x392E,0x390E,0x390E,0x390E,0x410E,0x40CD,0x48AD,0x7990,0xC337,0xC2F6,0xCAF6,0xD2D6,0xD2D6,0xD2B5,0xD2B5,0xD2B5,0xD2B5,0xCA95,0xD2B5,0xCA95,0xD295,0xD296,0xD296,0xD296,0xD296,0xD296,0xD296,0xCA97,0xCA97,0xCA97,0xCA97,0xCA97,0xC297,0xC298,0xC298,0xBA98,0xBA78,0xB299,0xB279,0xAA79,0xA259,0x9239,0x81F8,0x79D8,0x6997,0x6157,0x5116,0x48F6,0x40D6,0x40D6,0x40D6,0x38D6,0x38D6,0x40F7,0x40F7,0x40F7,0x4117,0x4118,0x4118,0x4118,0x4118,0x4118,0x4139,0x4139,0x4139,0x4139,0x3939,0x3939,0x3939,0x3939,0x3939,0x3939,0x3939,0x3939,0x3939,0x3919,0x393A,0x3939,0x393A,0x393A,0x393A,0x393A,0x3939,0x3939,0x3939,0x3939,0x3939,0x4139,0x4138,0x4158,0x4138,0x4938,0x4958,0x4958,0x4958,0x4117,0x4117,0x5157,0x5977,0x6197,0x69B7,0x8218,0x8A18,0x9A58,0x9A58,0xA277,0xA257,0xAA56,0xAA36,0xAA36,0xAA36,0xAA15,0xA9F5,0xA9F5,0xA9F5,0xB1F5,0xB1F5,0xB1F5,0xB1F5,0xB1F5,0xB1F5,0xB1F5,0xA9F5,0xA1F5,0x9A15,0x9236,0x8277,0x6AB8,0x5339,0x43FC,0x341D,0x1BDE,0x13FF,0x0BFF,0x0C1F,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03DF,0x03DF,0x03DF,0x03DF,0x03DE,0x03DE,0x03DE,0x043D,0x0CBC,0x257C,0x667F,0x7DFC,0x94B8,0x7A91,0x9273,0x9A33,0xA213,0xA234,0x9A35,0x89D4,0x7172,0x6992,0x61B3,0x5992,0x5992,0x5192,0x5192,0x5192,0x4991,0x4971,0x4991,0x4991,0x4170,0x4170,0x4150,0x4150,0x414F,0x394F,0x394F,0x392F,0x394F,0x392F,0x312E,0x312E,0x312E,0x312E,0x310E,0x310E,0x310E,0x310E,0x292E,0x292E,0x290E,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290E,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292E,0x294F,0x214F,0x190F,0x110F,0x1130,0x1152,0x19B4,0x21D5,0x21D5,0x21D4,0x1972,0x1931,0x1910,0x2130,0x212F,0x212F,0x292E,0x290E,0x292E,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290E,0x290E,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x210D,0x210E,0x292E,0x292E,0x292E,0x290D,0x292E,0x210D,0x212E,0x212E,0x292E,0x292E,0x212E,0x212E,0x210E,0x212F,0x210F,0x190F,0x190F,0x210F,0x210F,0x18EF,0x210F,0x212F,0x210E,0x212E,0x212E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292E,0x192E,0x112E,0x00ED,0x0190,0x44BB,0x1BF8,0x1438,0x0C38,0x0C18,0x0418,0x0438,0x0C38,0x0C18,0x0376,0x0251,0x01F0,0x0210,0x01EF,0x01CF,0x01AE,0x01AE,0x018E,0x116E,0x112D,0x192D,0x192D,0x192D,0x194D,0x214E,0x196E,0x090D,0x010D,0x018F,0x3439,0x2459,0x1419,0x0C39,0x0C39,0x0419,0x0419,0x0439,0x0418,0x03F8,0x0438,0x0418,0x0418,0x0C18,0x1439,0x13F8,0x343A,0x01D0,0x012D,0x112D,0x192E,0x194E,0x192D,0x192D,0x10ED,0x008B,0x00AB,0x00CB,0x00CC,0x00EC,0x00EC,0x012D,0x01F0,0x1C18,0x0C39,0x0C59,0x0418,0x0439,0x0438,0x0438,0x0438, + 0x292D,0x290D,0x292D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292E,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x292E,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x312D,0x290D,0x312D,0x310E,0x310E,0x310E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392E,0x390E,0x390E,0x390E,0x40EE,0x40CD,0x488C,0x9233,0xC337,0xCB16,0xCAF6,0xD2D6,0xD2D6,0xD2D6,0xD2B5,0xD2B5,0xD2B5,0xCAB5,0xCAB5,0xD2B6,0xD2B6,0xD2B6,0xCA96,0xCA96,0xCA97,0xCA97,0xCA97,0xCAB8,0xC2B8,0xC2B8,0xC2B8,0xBAB9,0xBAD9,0xB2DA,0xB2DA,0xAA9A,0xA27A,0x9239,0x8A39,0x81F8,0x71B7,0x6177,0x5956,0x5136,0x4117,0x3917,0x3918,0x3118,0x3118,0x2918,0x2939,0x2939,0x2939,0x2939,0x2939,0x2919,0x2919,0x2919,0x2919,0x2919,0x293A,0x293A,0x293A,0x293A,0x293A,0x293A,0x293A,0x293A,0x213A,0x213A,0x213A,0x213B,0x213B,0x213B,0x213B,0x213B,0x213B,0x213B,0x213B,0x213B,0x213B,0x213B,0x213B,0x213B,0x213B,0x213B,0x295B,0x295B,0x295A,0x295A,0x295A,0x295A,0x295A,0x295A,0x295A,0x297A,0x295A,0x2959,0x3179,0x3979,0x4178,0x4978,0x51B8,0x59B7,0x69F7,0x71F7,0x8258,0x8A78,0x9298,0x9A98,0x9A98,0x9A77,0x9A36,0x91F6,0x9A16,0xA216,0xA216,0xA1F5,0xAA15,0xA9F5,0xA9F5,0xA9F5,0xA9F5,0xA1F5,0x9A15,0x9236,0x8256,0x7297,0x5AD8,0x4B5A,0x441D,0x2C1D,0x1C1E,0x141E,0x0C1F,0x041F,0x041F,0x041F,0x043F,0x041F,0x041F,0x041F,0x03FF,0x041F,0x041F,0x041F,0x041F,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FF,0x03FE,0x043E,0x14FD,0x1D1B,0x561E,0x7DFD,0x94D9,0x7A92,0x8A52,0x9A33,0xA213,0xA214,0x9A14,0x9214,0x7192,0x6992,0x69B3,0x5992,0x59B2,0x5192,0x5192,0x5191,0x4991,0x4991,0x4971,0x4991,0x4170,0x4170,0x4150,0x4150,0x394F,0x394F,0x394F,0x394F,0x392F,0x392F,0x392E,0x312E,0x312E,0x312E,0x310E,0x312E,0x310E,0x310E,0x312E,0x290D,0x312E,0x290D,0x312E,0x290D,0x310E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292E,0x294E,0x212F,0x190F,0x110F,0x1130,0x1952,0x1994,0x21D5,0x21D5,0x21B4,0x2172,0x1110,0x1910,0x212F,0x210E,0x210E,0x290E,0x210D,0x292D,0x290D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x20ED,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x210D,0x292D,0x290D,0x290D,0x290D,0x210D,0x292D,0x292E,0x292E,0x210E,0x292E,0x292E,0x210E,0x20EE,0x210E,0x210F,0x210F,0x210E,0x210F,0x210E,0x210E,0x210D,0x210D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x294E,0x192E,0x112E,0x010E,0x018F,0x449B,0x1BF8,0x1418,0x1459,0x0C38,0x0418,0x0C38,0x0C18,0x1439,0x0335,0x01CF,0x016E,0x014D,0x012D,0x012D,0x010C,0x00EB,0x010C,0x092D,0x192D,0x192D,0x190D,0x214D,0x212D,0x214D,0x214E,0x112D,0x090D,0x012D,0x12B3,0x347A,0x1419,0x0C19,0x0C39,0x0439,0x0418,0x0439,0x0438,0x03F8,0x0439,0x0418,0x0C39,0x0C39,0x13F8,0x23F8,0x1AF5,0x010D,0x092D,0x192D,0x192D,0x212D,0x212D,0x212D,0x212D,0x190D,0x10EC,0x10EC,0x08CC,0x00CC,0x00AB,0x00CC,0x016E,0x2C19,0x1439,0x0C39,0x0C59,0x0418,0x0418,0x0438,0x0438, + 0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x292D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x390E,0x38ED,0x40ED,0x40CD,0x58CD,0xAAF6,0xCB37,0xCB16,0xD2F6,0xD2F6,0xD2D6,0xD2D6,0xD2B5,0xD2B5,0xD2B5,0xD2B6,0xD2B6,0xD2B6,0xD2B6,0xCAB6,0xD2D7,0xCAB7,0xCAB7,0xCAB8,0xC2B8,0xBAB8,0xBAB9,0xB2B9,0xAABA,0xA299,0x8A38,0x79F8,0x6156,0x50F5,0x48D4,0x40D4,0x40D5,0x40F5,0x38F6,0x3916,0x3917,0x3917,0x3118,0x3138,0x2938,0x2939,0x2939,0x2139,0x2139,0x213A,0x213A,0x213A,0x213A,0x215A,0x213A,0x193A,0x213B,0x215B,0x193B,0x215B,0x215B,0x195B,0x195B,0x195B,0x195B,0x193B,0x193B,0x193B,0x195C,0x195C,0x195C,0x195C,0x195C,0x195C,0x195C,0x195C,0x195C,0x195C,0x195C,0x195C,0x113C,0x195C,0x195C,0x195C,0x197C,0x197C,0x197C,0x197C,0x197C,0x197C,0x197C,0x199C,0x197C,0x199C,0x19BC,0x19BB,0x19BB,0x21BB,0x21BB,0x29DB,0x31FA,0x39FA,0x39F9,0x39F9,0x41F8,0x41D7,0x41D7,0x51F7,0x59F7,0x59F7,0x61F7,0x7237,0x7A17,0x8237,0x8A37,0x9237,0x9237,0x9A37,0x9A16,0xA216,0xA216,0x9A16,0x9216,0x8A16,0x8236,0x7277,0x62D8,0x4B39,0x43DB,0x343D,0x243E,0x143E,0x0C3F,0x0C3F,0x045F,0x043F,0x045F,0x045F,0x043F,0x043F,0x043F,0x043F,0x041F,0x043F,0x043F,0x043F,0x041F,0x041F,0x041F,0x03FF,0x03FF,0x041F,0x041F,0x041F,0x041F,0x041F,0x045E,0x0CBD,0x253D,0x459D,0x75BD,0x94DA,0x7272,0x8212,0x9A13,0xA214,0xA234,0xA214,0x9A14,0x7172,0x6951,0x69B2,0x6192,0x59B2,0x5992,0x5192,0x5191,0x4971,0x4971,0x4991,0x4170,0x4990,0x4170,0x4170,0x4170,0x416F,0x394F,0x394F,0x394F,0x394F,0x392E,0x312E,0x312E,0x312E,0x312E,0x310E,0x312E,0x290D,0x290D,0x312E,0x312E,0x312D,0x312D,0x312E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x292D,0x292E,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x292E,0x292E,0x212F,0x190F,0x190F,0x1110,0x1152,0x1994,0x21D4,0x21D5,0x21D4,0x1972,0x10F0,0x1910,0x212F,0x212F,0x292E,0x290E,0x290E,0x292E,0x292D,0x210D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290D,0x290D,0x290D,0x292D,0x292D,0x210D,0x20ED,0x210D,0x20ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x210D,0x210D,0x290D,0x290E,0x290E,0x290E,0x290E,0x210E,0x290E,0x290E,0x28EE,0x290E,0x290D,0x292D,0x290D,0x290D,0x210D,0x210C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x292D,0x212D,0x192E,0x090D,0x00ED,0x018F,0x449B,0x1C18,0x1418,0x0C38,0x0C18,0x0C38,0x0418,0x0C18,0x0C18,0x245A,0x347A,0x3C7A,0x44BB,0x4C9B,0x4C9A,0x549A,0x4C59,0x4396,0x094D,0x192D,0x190D,0x212D,0x212D,0x214D,0x214D,0x212D,0x194D,0x114E,0x012D,0x016E,0x2BD8,0x245A,0x1439,0x0C18,0x03F8,0x0418,0x0418,0x0418,0x0418,0x0418,0x0418,0x0C18,0x1418,0x2419,0x2BB7,0x018F,0x010D,0x112E,0x192E,0x212D,0x212D,0x212D,0x212D,0x212D,0x210D,0x190D,0x214E,0x194E,0x112D,0x08EC,0x00EC,0x014E,0x345A,0x1C19,0x0C19,0x0C19,0x03F8,0x0418,0x0418,0x0418, + 0x292D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392E,0x390E,0x390E,0x38ED,0x40ED,0x40AD,0x590E,0xB317,0xCB57,0xCAF6,0xD316,0xD2F6,0xD2D6,0xD2D6,0xD2D6,0xD2D6,0xD2D6,0xD2B6,0xD2B6,0xD2B6,0xCAB6,0xCAD7,0xCAD7,0xCAD8,0xC2D8,0xC2D9,0xBAFA,0xB2FA,0xAADA,0x8A17,0x71B6,0x6155,0x5935,0x4915,0x40D5,0x38F6,0x3916,0x3116,0x3117,0x3137,0x3117,0x3137,0x2937,0x2938,0x2938,0x2938,0x2139,0x2139,0x2139,0x2159,0x213A,0x193A,0x195A,0x195A,0x195A,0x195A,0x195A,0x195B,0x195B,0x195B,0x195B,0x195B,0x115B,0x115C,0x115C,0x115C,0x115C,0x115C,0x115C,0x115C,0x115C,0x115C,0x115C,0x115D,0x095D,0x095D,0x115D,0x115D,0x095D,0x097D,0x097D,0x097D,0x097D,0x095D,0x097D,0x097D,0x097D,0x099D,0x119D,0x099D,0x119D,0x119D,0x119D,0x11BD,0x11BD,0x11DD,0x11DD,0x11DD,0x11FD,0x11FD,0x11FC,0x1A1D,0x1A1C,0x223C,0x2A5C,0x2A5B,0x2A5B,0x2A5A,0x2A3A,0x325A,0x3A5A,0x3A59,0x4259,0x4A59,0x5A79,0x6278,0x7279,0x7278,0x7A78,0x8258,0x8A58,0x8A58,0x9257,0x9237,0x8A37,0x8236,0x7A37,0x7257,0x6298,0x5AF9,0x4BBA,0x3C3C,0x2C5D,0x1C5E,0x145F,0x0C5F,0x0C7F,0x045F,0x045F,0x045F,0x045F,0x045F,0x045F,0x045F,0x045F,0x043F,0x043F,0x043F,0x043F,0x043F,0x043F,0x041F,0x043F,0x041F,0x041F,0x041F,0x041F,0x041F,0x043F,0x047E,0x0CDE,0x1D1D,0x3D5D,0x75BE,0x94FC,0x6A93,0x8232,0x9A33,0xA213,0xA214,0xA214,0x9A14,0x81D3,0x6951,0x69B3,0x61B2,0x5992,0x5992,0x5992,0x5191,0x4971,0x4991,0x4971,0x4971,0x4170,0x4170,0x4170,0x414F,0x414F,0x394F,0x394F,0x394F,0x394F,0x394F,0x392F,0x312E,0x310E,0x312E,0x312E,0x312E,0x312E,0x310E,0x310E,0x312D,0x312D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x292E,0x212E,0x212E,0x190F,0x10EF,0x1110,0x1952,0x1993,0x21B4,0x21D4,0x21B4,0x1972,0x1110,0x1930,0x212F,0x210E,0x210E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x210D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x28ED,0x28ED,0x290D,0x210D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x292D,0x210D,0x212E,0x112E,0x00ED,0x018F,0x449B,0x2418,0x1C18,0x0C18,0x0C18,0x0C18,0x0C38,0x0BF8,0x0BF8,0x0BD7,0x13D8,0x1BD7,0x1BD8,0x23F8,0x3439,0x3419,0x4459,0x5439,0x092D,0x190D,0x190D,0x210D,0x212D,0x212D,0x214D,0x212D,0x212D,0x192D,0x112E,0x014E,0x0211,0x347A,0x1C19,0x1418,0x0418,0x0418,0x0418,0x0C39,0x0439,0x0439,0x0C39,0x0C18,0x1418,0x3C9B,0x12B3,0x010D,0x090D,0x192E,0x190D,0x210D,0x212D,0x212D,0x210D,0x210D,0x210D,0x210D,0x214D,0x214D,0x194D,0x112D,0x00EC,0x014D,0x3C7A,0x13F8,0x1419,0x03F8,0x03F8,0x0418,0x0418,0x0418, + 0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392E,0x390E,0x390E,0x38ED,0x40ED,0x40AC,0x694F,0xC398,0xC337,0xCB17,0xCAF6,0xD2F6,0xD2D6,0xD2D6,0xD2D6,0xD2D6,0xD2D6,0xD2D6,0xD2D6,0xCAB6,0xCAD7,0xCAD7,0xCAD8,0xC2D8,0xBAF9,0xB2FA,0xA2BA,0x8218,0x5935,0x40D3,0x40F4,0x4115,0x4115,0x4116,0x3936,0x3936,0x3137,0x3137,0x3137,0x3137,0x2937,0x2938,0x2938,0x2938,0x2938,0x2938,0x2139,0x2139,0x2139,0x2159,0x195A,0x195A,0x195A,0x195A,0x195A,0x195A,0x195B,0x115B,0x115B,0x115B,0x115C,0x115C,0x115C,0x115C,0x115C,0x115C,0x115C,0x115C,0x115C,0x115C,0x117D,0x117D,0x117D,0x097D,0x097D,0x097D,0x097D,0x097D,0x097E,0x099E,0x097E,0x097E,0x097E,0x097E,0x099E,0x099E,0x099E,0x099E,0x099E,0x09BE,0x09BE,0x09BE,0x09BE,0x09DE,0x09DE,0x09FE,0x09FE,0x0A1E,0x0A1E,0x0A1E,0x0A1E,0x0A3E,0x123E,0x125D,0x127D,0x1A9D,0x1A9D,0x1A9C,0x229C,0x22BC,0x2ABB,0x2ADB,0x32DB,0x3ADB,0x3ADA,0x42DA,0x4ADA,0x52FA,0x5ADA,0x62BA,0x6ABA,0x7299,0x7299,0x7A99,0x7A98,0x7A78,0x7257,0x6A57,0x5A77,0x52B8,0x4B5A,0x443C,0x347D,0x247D,0x147E,0x147F,0x0C7F,0x0C7F,0x047F,0x047F,0x047F,0x047F,0x047F,0x047F,0x047F,0x047F,0x045F,0x045F,0x045F,0x045F,0x045F,0x043F,0x043F,0x043F,0x043F,0x043F,0x043F,0x043F,0x043F,0x045F,0x049F,0x0CFE,0x1D3E,0x353D,0x659E,0x8D1D,0x72F5,0x8253,0x9A54,0x9A13,0xA214,0xA214,0x9A15,0x9214,0x7171,0x71D3,0x6192,0x5992,0x5991,0x5192,0x5191,0x5191,0x4971,0x4970,0x4971,0x4170,0x4170,0x4170,0x4170,0x414F,0x394F,0x394F,0x394F,0x392F,0x312E,0x312E,0x312E,0x314E,0x314E,0x312E,0x312E,0x312E,0x310E,0x312E,0x312E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x292E,0x292E,0x210E,0x190F,0x1910,0x1931,0x1972,0x1993,0x1993,0x21D4,0x21B4,0x1952,0x10EF,0x190F,0x212F,0x212F,0x292E,0x290E,0x290D,0x210D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x20EC,0x290D,0x290D,0x290D,0x290D,0x210D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292E,0x214E,0x112E,0x00ED,0x018F,0x4C9B,0x23D8,0x1C18,0x1439,0x1418,0x1439,0x03D8,0x0BF8,0x0BF8,0x13F8,0x13D8,0x13D8,0x1BD8,0x1BD8,0x23F8,0x2BF8,0x3C19,0x545A,0x00EC,0x192D,0x212D,0x292D,0x210D,0x212D,0x212D,0x292D,0x210D,0x190D,0x112D,0x094E,0x016F,0x3419,0x2439,0x13F8,0x0C18,0x0C18,0x0418,0x0419,0x0419,0x0C19,0x0C19,0x1419,0x2419,0x2BD8,0x014E,0x00ED,0x112E,0x214E,0x212E,0x212D,0x20ED,0x210D,0x290D,0x292D,0x292D,0x212D,0x212D,0x212D,0x212D,0x112D,0x090D,0x016E,0x447A,0x1BF8,0x1419,0x1419,0x0C18,0x0BF8,0x0C19,0x03F8, + 0x290D,0x290D,0x290C,0x290D,0x292D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x312D,0x310D,0x310D,0x312E,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x390E,0x390D,0x38ED,0x40CD,0x408C,0x71B0,0xBB57,0xC337,0xCB17,0xD2F6,0xD2F6,0xD2F6,0xD2D6,0xD2D6,0xCAD6,0xCAD6,0xCAD6,0xCAD6,0xCAD6,0xCAD7,0xC2D8,0xC2F9,0xBB19,0xB31A,0x8A17,0x6134,0x5114,0x40F4,0x3915,0x3935,0x3136,0x3136,0x3136,0x3136,0x3136,0x3137,0x3137,0x2937,0x2937,0x2937,0x2937,0x2938,0x2938,0x2938,0x2938,0x2138,0x2159,0x2139,0x2159,0x2159,0x2159,0x215A,0x195A,0x195A,0x195A,0x195A,0x195B,0x195B,0x115B,0x115B,0x115B,0x117C,0x117C,0x117C,0x117C,0x117C,0x117C,0x117C,0x117C,0x117D,0x117D,0x117D,0x117D,0x097D,0x097D,0x097D,0x097D,0x097E,0x099E,0x019E,0x019E,0x019E,0x019E,0x019E,0x019E,0x019E,0x019E,0x01BE,0x01BF,0x01BE,0x01BF,0x01BE,0x01DF,0x01DF,0x01FF,0x021F,0x023F,0x023F,0x023F,0x025F,0x025F,0x027E,0x0A7E,0x0A9E,0x0A9E,0x12BE,0x12DD,0x12DD,0x12FD,0x1AFD,0x1AFD,0x231D,0x231C,0x2B3C,0x2B3C,0x335C,0x3B5B,0x3B5B,0x433B,0x4B3B,0x52FA,0x5B1A,0x5AFA,0x6B1A,0x6AFA,0x62D9,0x62D9,0x5AD9,0x4AD8,0x4319,0x3B9B,0x347D,0x249D,0x1C9E,0x149F,0x0C9F,0x0C9F,0x049F,0x049F,0x049F,0x049F,0x047F,0x047F,0x049F,0x049F,0x049F,0x047F,0x045F,0x045F,0x045F,0x045F,0x045F,0x045F,0x045F,0x043F,0x043F,0x043F,0x045F,0x047F,0x049F,0x04BF,0x0CFE,0x1D3E,0x355D,0x5D7E,0x851D,0x7315,0x8253,0x9A53,0xA234,0xA214,0xA1F4,0xA235,0x9235,0x7172,0x6992,0x6192,0x5971,0x5992,0x5992,0x5192,0x5191,0x4991,0x4991,0x4970,0x4170,0x4170,0x4170,0x4170,0x414F,0x394F,0x394F,0x394F,0x312E,0x394F,0x312E,0x312E,0x314E,0x314E,0x312E,0x312E,0x310E,0x312E,0x312E,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290D,0x290C,0x292D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290E,0x290E,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x292D,0x290D,0x210E,0x210E,0x212F,0x190F,0x1910,0x1931,0x1952,0x1993,0x19B4,0x21D4,0x21B4,0x1952,0x1110,0x190F,0x212F,0x210E,0x210E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x210D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x212D,0x190E,0x110E,0x00ED,0x0190,0x4C5A,0x2BF8,0x2419,0x1C19,0x13F8,0x13D8,0x13F8,0x13F8,0x13D8,0x13F9,0x13F8,0x13D8,0x1BD8,0x1BD8,0x23D8,0x2BF9,0x33F9,0x545A,0x00ED,0x190D,0x210D,0x210D,0x210D,0x212D,0x292D,0x292D,0x210D,0x210D,0x192D,0x112E,0x014E,0x2B77,0x3439,0x1BF9,0x13F8,0x1439,0x0BF8,0x0BF9,0x0BF9,0x0C19,0x1419,0x1BD8,0x2BF9,0x0A52,0x00ED,0x090D,0x110D,0x190D,0x210E,0x210D,0x210D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x210D,0x210D,0x192D,0x090C,0x016E,0x4439,0x23F8,0x1BF9,0x13F9,0x13F8,0x0BF8,0x0BF9,0x0BD8, + 0x290D,0x290D,0x292D,0x290D,0x292D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x312D,0x290D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x312D,0x312D,0x312D,0x312E,0x310D,0x310E,0x312E,0x312E,0x392E,0x392E,0x392E,0x390D,0x390D,0x38ED,0x40CD,0x48AC,0x81F2,0xC399,0xC337,0xCB17,0xCB16,0xD2F6,0xD2F6,0xD2F6,0xD2F6,0xCAD6,0xCAD6,0xCAD6,0xCAD6,0xCAD7,0xC2D7,0xC319,0xB2F9,0x9A98,0x6974,0x48D2,0x40F3,0x4114,0x4135,0x3935,0x3935,0x3135,0x3136,0x3136,0x2936,0x2936,0x2936,0x2936,0x2937,0x2937,0x2937,0x2937,0x2937,0x2937,0x2937,0x2937,0x2937,0x2938,0x2958,0x2138,0x2158,0x2158,0x2159,0x2159,0x2159,0x2159,0x215A,0x195A,0x195A,0x195A,0x195A,0x195B,0x195B,0x115B,0x195B,0x195C,0x195C,0x115C,0x117C,0x117C,0x117C,0x117C,0x117C,0x117D,0x117D,0x119D,0x099D,0x099D,0x099E,0x097E,0x099E,0x099E,0x019E,0x019E,0x019E,0x019E,0x019F,0x01BF,0x01BF,0x01BF,0x01BF,0x01DF,0x01FF,0x01DF,0x01FF,0x021F,0x021F,0x023F,0x025F,0x025F,0x027F,0x029F,0x029F,0x02BF,0x02BF,0x02DE,0x02DE,0x0AFE,0x0B1E,0x0B3E,0x133E,0x133E,0x133D,0x1B5D,0x1B5D,0x1B9D,0x1B9D,0x23BD,0x23BD,0x2BBC,0x339C,0x3BBC,0x3B9C,0x4BBC,0x53DC,0x5BDB,0x5BDB,0x5BDB,0x53BB,0x4BDB,0x43FB,0x3BDB,0x2C1C,0x249D,0x1CBE,0x14BE,0x0CBF,0x0CBF,0x0C9F,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x047F,0x047F,0x047F,0x047F,0x045F,0x047F,0x047F,0x045F,0x045F,0x045F,0x047F,0x049F,0x04BF,0x04BF,0x04DE,0x1D1E,0x353E,0x5D9F,0x855E,0x62F5,0x8274,0x9A74,0xA254,0xA214,0xA1F4,0xA215,0x9A34,0x7992,0x6972,0x69B2,0x6192,0x59B2,0x5191,0x5191,0x5191,0x4991,0x4991,0x4970,0x4170,0x4150,0x4170,0x4170,0x416F,0x414F,0x394F,0x394F,0x392F,0x392F,0x394E,0x312E,0x312E,0x312E,0x310E,0x312E,0x312E,0x312D,0x310D,0x312D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x292C,0x290C,0x290C,0x292C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x28EC,0x28ED,0x290D,0x290E,0x210E,0x210E,0x212F,0x210F,0x2130,0x1930,0x1972,0x1993,0x21B4,0x21D4,0x21D4,0x1972,0x1110,0x1910,0x212F,0x212F,0x292E,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x292D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292E,0x212E,0x10ED,0x00ED,0x0990,0x4C1A,0x33D9,0x2BD9,0x23D8,0x1BB8,0x1BD9,0x1BD9,0x1BB8,0x1BD9,0x1BD9,0x1BD9,0x1BD9,0x23D9,0x23D9,0x23D8,0x2BB8,0x33B8,0x545A,0x010D,0x190D,0x210D,0x210D,0x292D,0x292D,0x292D,0x210D,0x212D,0x210D,0x190D,0x112E,0x010E,0x43F9,0x3C3A,0x23D9,0x1BB8,0x1BD9,0x1BF9,0x13D9,0x13F9,0x1BD9,0x1BD9,0x2C1A,0x3C1A,0x22D5,0x008C,0x10EE,0x190E,0x190D,0x210D,0x210D,0x210D,0x292D,0x290D,0x210D,0x290D,0x210D,0x210D,0x210D,0x210C,0x190C,0x08EC,0x094E,0x4419,0x2BD8,0x23B8,0x1BB9,0x1BB9,0x1BD9,0x13B9,0x13B9, + 0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x290D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x312E,0x312D,0x312D,0x312D,0x310D,0x312E,0x312E,0x312E,0x392E,0x392E,0x390E,0x390D,0x38ED,0x40CD,0x406B,0x8212,0xBB78,0xC337,0xCB37,0xD317,0xD317,0xD317,0xD2F6,0xCAF6,0xCAF6,0xCAF6,0xCAF7,0xC2F7,0xC2F7,0xC338,0xC359,0x7993,0x58D1,0x48D2,0x40D2,0x3913,0x3914,0x3934,0x3935,0x3955,0x3135,0x3135,0x2935,0x2935,0x2935,0x2935,0x2935,0x2935,0x2936,0x2936,0x2936,0x2936,0x2936,0x2936,0x2956,0x2956,0x2956,0x3157,0x3157,0x3157,0x2957,0x3157,0x2957,0x2958,0x2958,0x2978,0x2958,0x2958,0x2138,0x2138,0x2138,0x1938,0x1918,0x1938,0x1939,0x1919,0x1939,0x195A,0x195A,0x195B,0x195B,0x195B,0x115B,0x115C,0x117C,0x117C,0x119D,0x097D,0x097D,0x099D,0x099E,0x099E,0x099E,0x019E,0x01BE,0x01BE,0x01BF,0x01BE,0x01BF,0x01BF,0x01DF,0x01FF,0x01FF,0x021F,0x021F,0x023F,0x023F,0x025F,0x027F,0x029F,0x029F,0x02BF,0x02DF,0x02DF,0x02FF,0x031F,0x031F,0x033F,0x035F,0x0B5F,0x0B7F,0x0B7E,0x139F,0x139E,0x13BE,0x13DE,0x13DE,0x13FE,0x13FE,0x1C1E,0x1BFD,0x2C1D,0x2C1D,0x3C3D,0x3C3C,0x445D,0x445C,0x445C,0x447C,0x3C7D,0x347D,0x2C7D,0x249D,0x1CBE,0x14DE,0x0CDF,0x0CDF,0x0CDF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x049F,0x049F,0x049F,0x047F,0x047F,0x047F,0x047F,0x047F,0x045F,0x047F,0x049F,0x04BF,0x04BF,0x04DF,0x0D1E,0x1D5F,0x2D5E,0x557F,0x857F,0x6336,0x7A74,0x9A74,0xA254,0xA214,0x99D3,0x99F4,0xA255,0x89D3,0x7172,0x69B2,0x6192,0x5992,0x5991,0x5191,0x51B1,0x4991,0x4990,0x4970,0x4970,0x4170,0x4170,0x4170,0x416F,0x414F,0x394F,0x394F,0x394F,0x392E,0x394E,0x312E,0x312E,0x312E,0x312E,0x312E,0x310D,0x312E,0x312E,0x310D,0x312D,0x312D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x210D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x28ED,0x290D,0x290D,0x210E,0x292E,0x210E,0x212F,0x210F,0x212F,0x1930,0x1972,0x1993,0x21B4,0x21D4,0x21D4,0x1951,0x1110,0x190F,0x210F,0x210F,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x210D,0x292D,0x210D,0x210C,0x292D,0x292D,0x290C,0x290D,0x210C,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x212D,0x212E,0x190E,0x00CD,0x1170,0x53FA,0x3BB9,0x3BD9,0x33D9,0x2BB9,0x2BB9,0x23B9,0x2BD9,0x2BDA,0x23DA,0x23B9,0x23B9,0x23B9,0x2BD9,0x2BB8,0x33D9,0x3BD9,0x5C3A,0x092E,0x18ED,0x20ED,0x210D,0x210D,0x292D,0x210D,0x290D,0x292D,0x210D,0x210E,0x110E,0x094F,0x5C3B,0x3BD9,0x2B99,0x2378,0x2399,0x23B9,0x23B9,0x23B9,0x2399,0x2B99,0x33BA,0x4BFB,0x643B,0x00AD,0x10AD,0x18EE,0x210E,0x210E,0x290D,0x20ED,0x290D,0x290D,0x210D,0x290D,0x290D,0x292D,0x20EC,0x290D,0x18EC,0x10CC,0x090D,0x541A,0x3398,0x2BB9,0x2BB9,0x23B9,0x23B9,0x2399,0x2399, + 0x290D,0x290D,0x292D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312E,0x312E,0x312E,0x312D,0x312D,0x312E,0x312D,0x312D,0x390D,0x390D,0x390E,0x390D,0x38ED,0x38CC,0x488C,0x8A53,0xC398,0xC337,0xCB37,0xD317,0xD317,0xCB17,0xCAF6,0xCAF6,0xCAF6,0xCAF7,0xC317,0xC338,0xBB38,0xA2B7,0x79D3,0x406F,0x40B1,0x40D1,0x38F2,0x3913,0x3113,0x3113,0x3134,0x3134,0x3134,0x3135,0x3175,0x3975,0x3996,0x3996,0x39B6,0x39B6,0x39B6,0x41B6,0x39B6,0x41B6,0x41B6,0x41B6,0x41D7,0x41D7,0x41D6,0x41D7,0x41D6,0x49D7,0x49F7,0x49F7,0x49F7,0x49D7,0x49F7,0x49D7,0x49D7,0x49F7,0x49F7,0x49F8,0x49F8,0x4A18,0x4A18,0x4A19,0x4A39,0x4A19,0x4A1A,0x49FA,0x41DA,0x3179,0x2938,0x2139,0x2139,0x213A,0x193A,0x193B,0x115B,0x115C,0x117C,0x117D,0x097D,0x099D,0x099E,0x099E,0x019E,0x09BE,0x09BE,0x01BE,0x01BE,0x01DF,0x01DF,0x01DF,0x01FF,0x021F,0x021F,0x023F,0x025F,0x027F,0x027F,0x029F,0x02BF,0x02DF,0x02DF,0x02FF,0x031F,0x031F,0x033F,0x035F,0x037F,0x037F,0x039F,0x0BBF,0x0BBF,0x0BDF,0x0BDF,0x0BFF,0x0C1F,0x143F,0x0C3F,0x0C3E,0x145E,0x147E,0x1C7E,0x249D,0x249D,0x247D,0x349D,0x349D,0x34BD,0x34DD,0x2CDD,0x2CFE,0x24DE,0x1CDE,0x14DE,0x14FE,0x0CDF,0x0CDF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x049F,0x049F,0x049F,0x049F,0x049F,0x047F,0x047F,0x047F,0x047F,0x04BF,0x04DF,0x04DF,0x04FF,0x0D1E,0x153E,0x2D5E,0x4D7F,0x7D7F,0x6336,0x7A94,0x9274,0x9A54,0xA214,0x99D3,0xA1F4,0xA214,0x9234,0x7151,0x6992,0x6192,0x5991,0x5171,0x5192,0x51B1,0x5191,0x4991,0x4990,0x4970,0x4970,0x4170,0x4170,0x414F,0x394F,0x394F,0x392F,0x392F,0x392E,0x394E,0x392E,0x312E,0x312E,0x310E,0x310D,0x310D,0x312E,0x312E,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290C,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x310D,0x28EC,0x28EC,0x28ED,0x290D,0x292E,0x290E,0x292E,0x210E,0x210E,0x210E,0x190F,0x1930,0x1952,0x1993,0x21D4,0x21F4,0x21B3,0x1951,0x1910,0x190F,0x212F,0x210E,0x292E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x292D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x292D,0x290D,0x290D,0x210D,0x290D,0x290D,0x212D,0x212D,0x292D,0x292D,0x292D,0x292D,0x290D,0x292D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x210D,0x210E,0x18EE,0x08CE,0x1971,0x63FB,0x4B9A,0x4BBA,0x43BA,0x3B9A,0x3B9A,0x3B9A,0x3B9A,0x339A,0x3BBA,0x3C1B,0x3BFA,0x3BFA,0x3C1A,0x3BD9,0x43D9,0x4C1A,0x749C,0x194F,0x18ED,0x210D,0x290D,0x20EC,0x210D,0x290D,0x20EC,0x210D,0x210D,0x20EE,0x10CD,0x5B78,0x53BA,0x4379,0x3B79,0x3B9A,0x3B9A,0x3B9A,0x3BBA,0x3BBA,0x43BB,0x3B5A,0x4339,0x4B59,0x5B9A,0x6359,0x10AE,0x18CE,0x20EE,0x290E,0x290E,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x20ED,0x10CD,0x192E,0x641A,0x4BB9,0x43BA,0x3B99,0x3B79,0x3B9A,0x3BBB,0x3B9A, + 0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x312E,0x312D,0x312D,0x312E,0x312D,0x312D,0x312D,0x390D,0x390D,0x390D,0x38ED,0x38CC,0x386B,0x81F2,0xBB57,0xC337,0xCB37,0xD337,0xD337,0xCB17,0xCB17,0xCB17,0xCB17,0xC317,0xC337,0xC358,0x9255,0x6110,0x48AF,0x40D0,0x40F1,0x38F1,0x3912,0x3912,0x3933,0x3133,0x3133,0x3154,0x3154,0x3154,0x3954,0x3974,0x3995,0x3995,0x3994,0x4195,0x3994,0x4194,0x4195,0x41B5,0x41B4,0x41B4,0x41B4,0x41B4,0x41B4,0x41B4,0x41B4,0x41B4,0x49B4,0x49B4,0x49B4,0x49B4,0x49B4,0x49B5,0x49B4,0x49B4,0x51D5,0x51D5,0x51D5,0x51D5,0x51D5,0x51D5,0x51D5,0x51F6,0x51D6,0x49D6,0x51D7,0x51F8,0x51F8,0x41D9,0x3978,0x3158,0x2958,0x2938,0x2139,0x2159,0x1939,0x195A,0x115B,0x117C,0x117C,0x119D,0x099D,0x099D,0x09BE,0x09BE,0x09BE,0x09DE,0x09DE,0x01DE,0x01FF,0x01FF,0x021F,0x023F,0x025F,0x027F,0x029F,0x029F,0x02DF,0x02DF,0x02FF,0x02FF,0x031F,0x033F,0x035F,0x037F,0x039F,0x03BF,0x03BF,0x03DF,0x03DF,0x0BFF,0x0C1F,0x0C1F,0x0C3F,0x0C5F,0x0C5F,0x0C7F,0x0C7F,0x0CBF,0x0CBE,0x14DF,0x14DE,0x1CFE,0x1CDE,0x24FE,0x24FE,0x251E,0x251E,0x1D1E,0x1D3E,0x1D3E,0x151E,0x0D1E,0x0CFF,0x0D1F,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04BF,0x04BF,0x04BF,0x04BF,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x049F,0x04BF,0x04FF,0x04FF,0x051F,0x0D5F,0x153E,0x2D7F,0x4D9F,0x75BF,0x6397,0x6A74,0x9274,0x9A54,0xA234,0x99D3,0xA1F4,0xA234,0xA255,0x7992,0x6972,0x6192,0x5992,0x5992,0x5191,0x5191,0x5191,0x4991,0x4990,0x4970,0x4170,0x4170,0x4170,0x414F,0x414F,0x414F,0x394F,0x394F,0x392E,0x312E,0x392E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x310D,0x312D,0x290D,0x310D,0x290D,0x290D,0x310D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x312D,0x290C,0x292D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x292D,0x292D,0x210D,0x20ED,0x210E,0x210E,0x190F,0x1930,0x1972,0x1993,0x21B4,0x21F4,0x2193,0x1951,0x1910,0x190F,0x210F,0x210E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290C,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x292D,0x212D,0x212D,0x210D,0x212D,0x212D,0x212D,0x212D,0x212E,0x212E,0x212D,0x212D,0x212D,0x292D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x20ED,0x20EE,0x108D,0x2130,0x73FC,0x5B9A,0x5B7B,0x535A,0x4B3A,0x4B3A,0x4B5A,0x4B7A,0x4B5A,0x4B7A,0x5C1C,0x4BDA,0x4BDA,0x4BBA,0x4BBA,0x53B9,0x5BDA,0x743B,0x31B1,0x20EE,0x20ED,0x28ED,0x290D,0x290D,0x290D,0x290D,0x28ED,0x28EE,0x188D,0x4A34,0x6B9A,0x5B39,0x5339,0x537B,0x537A,0x537B,0x4B7A,0x4B5A,0x4B5A,0x535B,0x5B7B,0x5B3A,0x5B19,0x6319,0x6B39,0x41F3,0x104C,0x28EE,0x28ED,0x28ED,0x28ED,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x292D,0x20ED,0x20ED,0x18AC,0x10CD,0x6BDA,0x5B9A,0x5B9A,0x537A,0x535A,0x4B5A,0x4B7B,0x4B5A, + 0x28EC,0x28EC,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x292C,0x292C,0x290C,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x292D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x310D,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x390D,0x390D,0x38ED,0x38CC,0x408C,0x79F2,0xC398,0xC337,0xCB37,0xCB17,0xCB17,0xCB17,0xCB17,0xCB17,0xC317,0xC337,0xB2F7,0x9275,0x50CE,0x408E,0x40CF,0x40F0,0x3910,0x3911,0x3932,0x3952,0x3952,0x4173,0x4194,0x4194,0x4194,0x4194,0x4173,0x3973,0x4173,0x4193,0x4194,0x4193,0x4193,0x4193,0x4193,0x4193,0x4193,0x4193,0x4193,0x4193,0x4193,0x49B3,0x4992,0x4992,0x49B3,0x49B2,0x49B2,0x49B2,0x4992,0x4993,0x49B3,0x49B3,0x49B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51D4,0x51B4,0x51D4,0x51B4,0x51D5,0x51D5,0x51D5,0x51D6,0x51F7,0x51F7,0x5218,0x5218,0x51F8,0x49D8,0x41B8,0x3198,0x2978,0x2179,0x195A,0x195A,0x117B,0x117B,0x119C,0x099D,0x09BD,0x09BD,0x09DD,0x09DE,0x09FE,0x09FE,0x021E,0x023E,0x025F,0x027F,0x027F,0x029F,0x02DF,0x02DF,0x031F,0x031F,0x033F,0x035F,0x037F,0x039F,0x03BF,0x03DF,0x03DF,0x03DF,0x03FF,0x03FF,0x041F,0x043F,0x045F,0x045F,0x0C7F,0x049F,0x04BF,0x04DF,0x0CFF,0x0D1F,0x0D3F,0x0D1E,0x153E,0x153E,0x153E,0x153E,0x153E,0x155E,0x155F,0x155F,0x155F,0x0D3F,0x0D3F,0x051F,0x053F,0x051F,0x051F,0x051F,0x04FF,0x04FF,0x051F,0x04FF,0x04FF,0x04FF,0x04FF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04BF,0x04BF,0x049F,0x049F,0x04BF,0x04BF,0x049F,0x04BF,0x04DF,0x051F,0x051F,0x053F,0x0D7F,0x157F,0x2D9F,0x4DDF,0x75FF,0x5BD8,0x6274,0x8A74,0x9A95,0xA234,0xA1F3,0xA1F4,0xA214,0xA255,0x89D3,0x7171,0x69B2,0x5991,0x5991,0x5191,0x5191,0x5191,0x4991,0x4991,0x4970,0x4170,0x4150,0x4150,0x416F,0x414F,0x414F,0x394F,0x392E,0x392E,0x392E,0x392E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312D,0x290D,0x310D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x210E,0x210E,0x190F,0x1930,0x1951,0x1993,0x21B4,0x21D4,0x21B3,0x1952,0x1910,0x190F,0x210E,0x210E,0x290E,0x290E,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290D,0x212D,0x210D,0x212E,0x212E,0x210E,0x210E,0x190E,0x212E,0x212E,0x212E,0x212E,0x210D,0x210D,0x210D,0x210D,0x290D,0x290D,0x290C,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x20CD,0x188D,0x2931,0x841D,0x737B,0x737B,0x6B5B,0x6B3B,0x633B,0x6B7C,0x6B5B,0x6B9C,0x29B4,0x002E,0x000D,0x000D,0x000D,0x002D,0x002C,0x000C,0x000B,0x20AE,0x28AD,0x28AD,0x28CD,0x290D,0x290D,0x28ED,0x28ED,0x28CD,0x20AD,0x3930,0x7B5A,0x7339,0x733A,0x6B3B,0x6B3B,0x633B,0x633B,0x635B,0x633B,0x633B,0x631B,0x6B3B,0x733B,0x733B,0x7B1B,0x7B1A,0x833A,0x28CF,0x208D,0x28CE,0x28CD,0x28ED,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x20CD,0x20AD,0x20EE,0x7BDB,0x6B7A,0x6B7B,0x633A,0x6B5B,0x6B5B,0x633B,0x5B3B, + 0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x312D,0x312D,0x312D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x390D,0x38ED,0x38CC,0x386B,0x71B0,0xBB77,0xC357,0xCB37,0xCB37,0xCB37,0xCB37,0xCB37,0xC337,0xC357,0xBB78,0x7991,0x58CE,0x408D,0x40CE,0x38EF,0x4110,0x4130,0x3931,0x3951,0x4152,0x3952,0x4172,0x4172,0x4173,0x4173,0x4172,0x4172,0x4172,0x4172,0x4172,0x4192,0x4192,0x4192,0x4192,0x4192,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4992,0x4991,0x4991,0x4991,0x4991,0x4991,0x49B2,0x4992,0x4992,0x51B2,0x51B2,0x5192,0x5192,0x5192,0x51B2,0x51B2,0x51B2,0x51B3,0x51B3,0x51B3,0x51B3,0x51B3,0x51B4,0x51D5,0x59F5,0x59F5,0x59F6,0x51F6,0x51F7,0x51F7,0x49F8,0x41D8,0x39B8,0x31B9,0x2979,0x2159,0x1979,0x197A,0x117B,0x119C,0x11BC,0x11DC,0x11DD,0x11FD,0x0A1E,0x0A1E,0x0A3E,0x0A7E,0x027E,0x029F,0x02BF,0x02DF,0x02FF,0x031F,0x035F,0x037F,0x039F,0x03BF,0x03DF,0x03DF,0x03DF,0x03FF,0x03FF,0x041F,0x041F,0x045F,0x045F,0x047F,0x049F,0x04BF,0x04DF,0x04FF,0x051F,0x0D3F,0x0D5F,0x0D5F,0x0D7F,0x0D7F,0x0D7F,0x0D7F,0x0D7F,0x0D7F,0x0D7F,0x0D9F,0x0D9F,0x0D7F,0x0D7F,0x055F,0x055F,0x055F,0x053F,0x053F,0x053F,0x053F,0x051F,0x051F,0x051F,0x051F,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04DF,0x04DF,0x04DF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04BF,0x04DF,0x04FF,0x053F,0x055F,0x055F,0x0D7F,0x159F,0x259E,0x45DF,0x6E1F,0x5C39,0x5A74,0x8274,0x9254,0xA234,0xA1F3,0xA1D3,0xA1F4,0xAA35,0x9214,0x7151,0x71B2,0x6192,0x5971,0x5191,0x5191,0x5191,0x4991,0x4990,0x4970,0x4170,0x4150,0x4170,0x416F,0x394F,0x394F,0x394F,0x392E,0x392E,0x392E,0x392E,0x312E,0x312E,0x312E,0x310D,0x312E,0x312D,0x312E,0x312D,0x310D,0x310D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x292D,0x210E,0x210E,0x190F,0x1930,0x1951,0x1973,0x21D4,0x21F4,0x21B3,0x1951,0x1910,0x190F,0x210F,0x210E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290C,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x292D,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x210D,0x212D,0x212E,0x212E,0x190E,0x190E,0x192F,0x192F,0x192F,0x192F,0x192E,0x212F,0x210E,0x210E,0x210E,0x210E,0x210D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x28ED,0x20CD,0x188D,0x3111,0x93DD,0x835B,0x833B,0x7B1B,0x7AFB,0x7AFB,0x7AFB,0x7B1B,0x8B9D,0x5A17,0x2070,0x202F,0x180E,0x180E,0x180E,0x180E,0x180D,0x180D,0x180C,0x288D,0x288D,0x30CD,0x28CD,0x30ED,0x28ED,0x28AD,0x28AE,0x202D,0x7AB8,0x82FA,0x7AFA,0x831B,0x831B,0x7B1B,0x7B1B,0x731B,0x731B,0x731B,0x72FB,0x7AFB,0x7AFC,0x82FB,0x82FB,0x82DB,0x82DA,0x82FA,0x7277,0x202D,0x28AE,0x28CD,0x28ED,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x20CD,0x20AD,0x20AE,0x839B,0x835B,0x835B,0x7B1B,0x7AFB,0x7AFB,0x72FB,0x72FB, + 0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x292D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x28EC,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x292D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x390D,0x38ED,0x38CC,0x40AC,0x71D1,0xC3D9,0xC378,0xCB57,0xCB37,0xCB37,0xCB37,0xC337,0xC358,0xB337,0x9274,0x486C,0x40AD,0x40CE,0x40EE,0x390F,0x392F,0x390F,0x3930,0x3951,0x3951,0x3951,0x3951,0x3971,0x3971,0x3971,0x3951,0x3951,0x4171,0x4171,0x4171,0x4171,0x4991,0x4991,0x4991,0x4991,0x4991,0x4991,0x4991,0x4991,0x4991,0x4991,0x4991,0x4991,0x4991,0x4991,0x4991,0x4991,0x4991,0x5191,0x51B1,0x49B1,0x51B1,0x51B1,0x5191,0x51B1,0x51B1,0x51B1,0x5191,0x5191,0x5191,0x5191,0x51B2,0x5192,0x51B2,0x51B2,0x51B2,0x51B2,0x51B3,0x51B3,0x51D3,0x51D4,0x51D4,0x51D5,0x51F5,0x51F6,0x51F6,0x51F6,0x5217,0x5218,0x4A18,0x4219,0x39F9,0x31D9,0x29BA,0x219A,0x19BB,0x19DC,0x19FC,0x1A1D,0x1A3D,0x123D,0x125E,0x127E,0x0A9E,0x0ABE,0x0ADE,0x02FF,0x02FF,0x033F,0x035F,0x037F,0x039F,0x03BF,0x03BF,0x03DF,0x03DF,0x03FF,0x041F,0x043F,0x045F,0x047F,0x049F,0x04BF,0x04BF,0x04FF,0x04FF,0x051F,0x053F,0x055F,0x0D9F,0x0D9F,0x0D9F,0x0DBF,0x0DBF,0x0DBF,0x0D9F,0x0D9F,0x059F,0x0DBF,0x0D9F,0x059F,0x057F,0x057F,0x057F,0x057F,0x055F,0x055F,0x053F,0x055F,0x053F,0x053F,0x051F,0x051F,0x051F,0x051F,0x051F,0x04FF,0x051F,0x04FF,0x04FF,0x04FF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04DF,0x04FF,0x053F,0x055F,0x057F,0x057F,0x0D9F,0x15BF,0x25BF,0x3DFF,0x663F,0x6CFC,0x5273,0x7253,0x9254,0x9A33,0xA1F3,0xA9F4,0xA9F3,0xAA14,0x9A14,0x7992,0x7192,0x6192,0x5971,0x5191,0x5171,0x51B1,0x5191,0x4991,0x4970,0x4170,0x4170,0x4170,0x416F,0x414F,0x414F,0x394F,0x394E,0x392E,0x392E,0x392E,0x394E,0x392E,0x312E,0x310D,0x312D,0x312E,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290C,0x292D,0x290C,0x290C,0x290C,0x292D,0x292D,0x290D,0x292D,0x292E,0x210E,0x210E,0x190F,0x1910,0x1952,0x1993,0x21D4,0x21D4,0x21B3,0x1951,0x1910,0x18EF,0x210F,0x212E,0x292E,0x290E,0x292E,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x292D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x292D,0x290D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x210D,0x210D,0x212E,0x212E,0x192F,0x192F,0x194F,0x1130,0x1950,0x1950,0x1950,0x1950,0x1930,0x1930,0x212F,0x212F,0x210E,0x290E,0x210D,0x290D,0x290D,0x292D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x28CD,0x20AD,0x206D,0x38F0,0x9BBD,0x933C,0x8ADB,0x92DB,0x8ABB,0x92DC,0x8A9B,0x8A9B,0x827A,0x9AFD,0xABBF,0xB3DF,0xABBF,0xB3FF,0xA3BE,0xA39D,0x9B7C,0xABFD,0xB43D,0x7235,0x280C,0x30AE,0x30AD,0x30CD,0x28AD,0x288D,0x284D,0x69F5,0x92FA,0x92BA,0x92DB,0x8ABB,0x92DC,0x92DC,0x8AFC,0x8B1C,0x8AFC,0x8AFC,0x8ADC,0x8ADC,0x8ADC,0x92FC,0x8A9B,0x929B,0x929A,0x92BA,0x8AB9,0x4911,0x200C,0x288D,0x30CD,0x28ED,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x20CC,0x20CD,0x208D,0x288E,0x937B,0x933B,0x92DB,0x92DC,0x8A9B,0x8ABB,0x8ABB,0x8ABB, + 0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x292D,0x290C,0x292D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x292D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x312D,0x312D,0x312D,0x312D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30ED,0x38EC,0x38EC,0x38AB,0x69B0,0xBB98,0xC378,0xCB78,0xCB58,0xCB57,0xC357,0xC357,0xC398,0x81F2,0x58EE,0x488C,0x40CD,0x40EE,0x390E,0x390E,0x392F,0x392F,0x392F,0x4150,0x3950,0x3950,0x4170,0x4170,0x3970,0x4171,0x4170,0x4170,0x4170,0x4170,0x4170,0x4170,0x4170,0x4970,0x4970,0x4970,0x4970,0x4970,0x4990,0x4990,0x4990,0x4990,0x4991,0x4991,0x4990,0x51B1,0x4990,0x5191,0x4990,0x4991,0x51B1,0x51B1,0x4990,0x4990,0x5191,0x5191,0x4990,0x5191,0x5191,0x5191,0x5191,0x5191,0x5191,0x5191,0x5191,0x51B1,0x51B1,0x51B1,0x51B2,0x51B2,0x51B2,0x51B2,0x51B3,0x51B3,0x51B3,0x51D4,0x51D4,0x51D4,0x51D5,0x51F5,0x51F6,0x51F6,0x5217,0x4A18,0x4A18,0x4219,0x39F9,0x29D9,0x29DA,0x29FB,0x221B,0x223C,0x225C,0x1A7D,0x1A9D,0x1ABE,0x12DE,0x0AFE,0x0AFE,0x0B1E,0x035E,0x037F,0x039F,0x03BF,0x03DF,0x03DF,0x03FF,0x041F,0x043F,0x045F,0x047F,0x049F,0x04BF,0x04DF,0x04FF,0x04FF,0x051F,0x053F,0x055F,0x057F,0x059F,0x05BF,0x0DBF,0x0DDF,0x05DF,0x05DF,0x05DF,0x05BF,0x05DF,0x05DF,0x05DF,0x05BF,0x05BF,0x059F,0x059F,0x059F,0x057F,0x059F,0x057F,0x057F,0x055F,0x055F,0x055F,0x053F,0x053F,0x053F,0x053F,0x051F,0x051F,0x051F,0x051F,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x051F,0x055F,0x057F,0x059F,0x059F,0x059F,0x15DF,0x25FF,0x35FF,0x5E5F,0x6D5D,0x4AB4,0x7274,0x9274,0x9A33,0xAA14,0xA9F3,0xA9F4,0xA1F4,0xA235,0x89B2,0x7192,0x6992,0x5992,0x5992,0x5191,0x5191,0x5191,0x4970,0x4990,0x4990,0x4170,0x4170,0x414F,0x414F,0x394F,0x394F,0x394F,0x394F,0x392E,0x392E,0x312E,0x312E,0x312E,0x310D,0x312D,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x294D,0x292D,0x292D,0x292D,0x290D,0x290E,0x210E,0x210E,0x212F,0x1930,0x1951,0x1993,0x21D4,0x21D4,0x21B3,0x1951,0x110F,0x190F,0x190E,0x212E,0x210E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x292D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290C,0x290D,0x290D,0x210D,0x212D,0x212E,0x192E,0x194F,0x1950,0x1951,0x1171,0x1171,0x1992,0x1972,0x1992,0x1972,0x1951,0x1951,0x1930,0x1930,0x210F,0x210E,0x210D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x310D,0x28ED,0x28AD,0x284D,0x38B0,0xAB9D,0xA31C,0x9ADC,0xA2BC,0xA29C,0xA27C,0x9A7C,0x9A7B,0x9A7C,0x9A5B,0x9A5B,0xA29C,0x9A9C,0x927B,0x9A9B,0x9ABB,0xA31C,0xAB3C,0xAB5B,0x8A98,0x300D,0x388E,0x308D,0x30AE,0x308E,0x304E,0x4090,0x9AFA,0x9ABA,0xA29B,0x9A7B,0xA2BC,0xA2BC,0x9ABC,0x9ADC,0x9B1D,0x9AFC,0x9B1D,0x92DC,0x9ABC,0x9ADC,0x9ABC,0xA2BC,0xA29C,0xA29B,0x9A9B,0x9ABA,0x9299,0x382E,0x282D,0x288D,0x30EE,0x28ED,0x28ED,0x290D,0x290D,0x290D,0x290D,0x28ED,0x20AC,0x206C,0x284E,0x9B3B,0xA31C,0xA2BC,0xA29C,0x9A7C,0x9A7C,0x9A7C,0x9A9C, + 0x290D,0x28EC,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30EC,0x38EC,0x40CC,0x6990,0xC3D9,0xBB78,0xC357,0xC357,0xC357,0xC358,0xB337,0x9274,0x488C,0x408C,0x40CD,0x40ED,0x38ED,0x390E,0x392E,0x392E,0x392F,0x394F,0x394F,0x414F,0x4150,0x4150,0x4170,0x4170,0x4170,0x4170,0x4170,0x4170,0x4170,0x4170,0x4170,0x4170,0x4170,0x4970,0x4970,0x4970,0x4970,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x5190,0x5190,0x5190,0x4990,0x4990,0x5190,0x5190,0x5190,0x5190,0x5190,0x5191,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51B2,0x51B2,0x51B2,0x51B2,0x51B2,0x51B2,0x51B3,0x51B3,0x51D3,0x59D4,0x59D4,0x59F5,0x51F5,0x51F6,0x49F6,0x49F7,0x4A18,0x4219,0x4219,0x3A1A,0x321A,0x323B,0x2A5B,0x2A7C,0x229D,0x22DD,0x1AFE,0x1B1E,0x133E,0x135E,0x0B7F,0x0B9F,0x0BBF,0x03DF,0x03FF,0x041F,0x043F,0x045F,0x0C7F,0x0C9F,0x0CBF,0x04DF,0x04DF,0x04FF,0x0D1F,0x051F,0x0D5F,0x0D5F,0x0D7F,0x059F,0x05BF,0x0DDF,0x0DFF,0x0DFF,0x0DFF,0x05FF,0x0DFF,0x05DF,0x05FF,0x05DF,0x05DF,0x05DF,0x05BF,0x05BF,0x059F,0x059F,0x059F,0x059F,0x059F,0x057F,0x057F,0x055F,0x055F,0x055F,0x053F,0x053F,0x053F,0x053F,0x053F,0x053F,0x051F,0x051F,0x04FF,0x04FF,0x04FF,0x04FF,0x04FF,0x051F,0x053F,0x053F,0x057F,0x059F,0x05BF,0x05BF,0x05DF,0x0DDF,0x1E1F,0x361F,0x565F,0x75FF,0x42D4,0x6A73,0x8A73,0x9A33,0xAA34,0xA9F4,0xA9F4,0xA9F4,0xA1F4,0x91D3,0x7172,0x6992,0x5971,0x5991,0x5191,0x5191,0x5191,0x4991,0x4970,0x4990,0x4170,0x4170,0x414F,0x416F,0x414F,0x414F,0x394F,0x394F,0x392E,0x392E,0x392E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312D,0x310D,0x310D,0x310D,0x290D,0x310D,0x310D,0x310D,0x290D,0x310D,0x290D,0x310D,0x310D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x292D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292D,0x292D,0x292E,0x292E,0x290E,0x210E,0x190F,0x1930,0x1951,0x2193,0x21D4,0x21F4,0x21B3,0x1951,0x190F,0x190F,0x190E,0x212E,0x210E,0x292E,0x292D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x292C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x290D,0x290D,0x292D,0x292D,0x212D,0x210E,0x212E,0x194F,0x1950,0x1151,0x1172,0x19B3,0x11B3,0x11B4,0x11B4,0x19B4,0x19B3,0x1993,0x1993,0x1972,0x1951,0x2130,0x212F,0x210E,0x210D,0x290D,0x290D,0x290C,0x290C,0x28EC,0x290C,0x312C,0x310C,0x28CC,0x288C,0x284D,0x408F,0xBBBE,0xAB1C,0xAADC,0xAA9C,0xAA7C,0xAA7C,0xB2BD,0xB29D,0xAA5C,0xAA5C,0xB25C,0xB27C,0xAA7C,0xAA9C,0xAA9C,0xAA9B,0xAA9B,0xAADB,0xAADB,0x9298,0x380E,0x386E,0x386E,0x388E,0x384E,0x404F,0x9299,0xAADB,0xB2DC,0xB29C,0xB29C,0xAA9C,0xA25B,0xA27B,0xA29B,0xAB3E,0x6935,0x7197,0xA2FC,0xA2BB,0xA29C,0xA29C,0xA27C,0xAA7C,0xB29C,0xB2BC,0xAABC,0xAAFB,0x8217,0x300D,0x306D,0x30CD,0x28CD,0x28ED,0x290D,0x290D,0x312D,0x290D,0x28ED,0x28AD,0x286D,0x386E,0xB37D,0xAAFC,0xB2BD,0xAA7C,0xAA7C,0xAA5C,0xAA5C,0xB27C, + 0x290D,0x28EC,0x28EC,0x290D,0x28EC,0x310D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x292D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30EC,0x38EC,0x38AC,0x596F,0xB398,0xBB78,0xBB57,0xBB57,0xBB57,0xBB98,0x9273,0x610E,0x488C,0x40CC,0x38ED,0x38ED,0x38ED,0x390D,0x392E,0x392E,0x392F,0x392F,0x394F,0x394F,0x414F,0x414F,0x416F,0x416F,0x416F,0x416F,0x416F,0x4170,0x416F,0x416F,0x416F,0x416F,0x4190,0x416F,0x416F,0x496F,0x496F,0x496F,0x4970,0x4970,0x4970,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x5190,0x5190,0x5190,0x51B1,0x5191,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51B2,0x51B2,0x51B2,0x51B2,0x51B2,0x51B2,0x51B2,0x51B2,0x59D3,0x59D4,0x59D4,0x59F4,0x51F5,0x51F6,0x51F6,0x4A17,0x4A17,0x4A18,0x4219,0x3A39,0x3A5A,0x327B,0x329B,0x2ADC,0x22FD,0x231D,0x1B3E,0x1B5E,0x139E,0x13BE,0x13FF,0x0BFF,0x0C3F,0x0C3F,0x0C5F,0x0C7F,0x0C9F,0x0CBF,0x0CDF,0x0CDF,0x0CFF,0x0D1F,0x0D3F,0x155F,0x0D7F,0x159F,0x0DBF,0x0DDF,0x0DFF,0x0DFF,0x0DFF,0x0E1F,0x0E1F,0x0E1F,0x0E1F,0x0E1F,0x0E1F,0x05FF,0x05FF,0x05DF,0x05DF,0x05DF,0x05BF,0x05BF,0x059F,0x059F,0x059F,0x059F,0x059F,0x057F,0x057F,0x055F,0x055F,0x055F,0x055F,0x055F,0x053F,0x053F,0x051F,0x051F,0x04FF,0x051F,0x051F,0x051F,0x053F,0x053F,0x055F,0x055F,0x059F,0x05BF,0x05DF,0x05DF,0x05DF,0x0DFF,0x1E1F,0x2E1E,0x4E5F,0x767F,0x4B55,0x5A52,0x8A94,0x9213,0xAA14,0xA9F4,0xA9D3,0xA9D4,0xA9F4,0x9A14,0x81B3,0x6992,0x6192,0x5991,0x5191,0x5191,0x5191,0x4991,0x4990,0x4970,0x4170,0x4170,0x414F,0x416F,0x414F,0x392F,0x414F,0x394E,0x392E,0x392E,0x392E,0x394E,0x312E,0x312E,0x312E,0x312E,0x312D,0x312E,0x312D,0x312D,0x310D,0x312D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x312D,0x292D,0x290C,0x292D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x292E,0x210D,0x210E,0x210E,0x190F,0x1930,0x1951,0x1992,0x21D3,0x21F4,0x1992,0x1951,0x110F,0x190F,0x190E,0x214F,0x292E,0x292E,0x292E,0x290D,0x290D,0x292D,0x290D,0x292D,0x292D,0x290D,0x292D,0x292D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x292D,0x292D,0x290D,0x292D,0x212E,0x212E,0x192F,0x1930,0x1150,0x1171,0x1193,0x11D4,0x11D4,0x11D5,0x11B4,0x11B4,0x1194,0x11B4,0x1193,0x1973,0x1952,0x1931,0x2130,0x210F,0x292E,0x290D,0x290D,0x290D,0x290C,0x28EC,0x290C,0x290C,0x310C,0x28CC,0x288C,0x282D,0x404F,0xC3BE,0xB2FC,0xB29C,0xB27C,0xB25C,0xBA7D,0xBA7D,0xBA5D,0xBA3D,0xBA5D,0xBA5D,0xBA5D,0xBA5C,0xB25C,0xBA9C,0xBA9C,0xB29C,0xB2BC,0xAADB,0xAB1B,0x400E,0x406F,0x384E,0x384E,0x380E,0x79B5,0xB2FC,0xB2DC,0xBABC,0xBA9D,0xBA9D,0xB27C,0xB27C,0xAA7C,0xAABC,0xA2BB,0x4010,0x4010,0x9A7A,0xA2BB,0xAA9C,0xB29C,0xB29D,0xBADD,0xBABD,0xBABD,0xBABC,0xB2BC,0xA2BA,0x5090,0x300C,0x308D,0x30CD,0x30ED,0x28ED,0x312D,0x290D,0x290C,0x28EC,0x28AC,0x284C,0x384E,0xBB7D,0xBAFD,0xB29D,0xB25D,0xB23C,0xBA5D,0xBA5D,0xBA5D, + 0x28EC,0x28EC,0x310D,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290D,0x310D,0x310D,0x290C,0x310D,0x310D,0x310D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292D,0x292C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x292D,0x292C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x292D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x292D,0x290D,0x310D,0x310D,0x312D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30EC,0x38ED,0x38CC,0x510D,0xBBF9,0xBB98,0xBB77,0xBB77,0xBB78,0xA336,0x696F,0x408C,0x40CC,0x40CD,0x38ED,0x390D,0x390D,0x390E,0x392E,0x392E,0x392E,0x394E,0x394E,0x414F,0x394F,0x394F,0x414F,0x414F,0x394F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x414F,0x416F,0x496F,0x416F,0x416F,0x416F,0x416F,0x4970,0x4970,0x4990,0x496F,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x51B0,0x5190,0x4990,0x51B1,0x51B1,0x51B1,0x5191,0x5191,0x51B1,0x51B2,0x51B2,0x51B2,0x51B1,0x5191,0x5191,0x5191,0x51B2,0x59B2,0x59D3,0x59D3,0x59D4,0x51F4,0x51F5,0x51F5,0x51F6,0x5217,0x4A17,0x4218,0x4238,0x3A59,0x3A7A,0x329A,0x2ADB,0x2B1C,0x2B3D,0x237D,0x239D,0x1BDE,0x13FE,0x141E,0x143E,0x0C3E,0x0C5E,0x0C7E,0x149F,0x14BF,0x14DF,0x14FF,0x151F,0x153F,0x155F,0x1D7F,0x1DBF,0x1DDF,0x1DFF,0x1DFF,0x161F,0x161F,0x163F,0x163F,0x163F,0x0E3F,0x0E1F,0x0E1F,0x0E1F,0x061F,0x05FF,0x05FF,0x05FF,0x05FF,0x05DF,0x05DF,0x05BF,0x05BF,0x05BF,0x059F,0x059F,0x059F,0x057F,0x057F,0x057F,0x055F,0x057F,0x055F,0x055F,0x055F,0x053F,0x051F,0x051F,0x051F,0x051F,0x053F,0x053F,0x055F,0x055F,0x057F,0x05BF,0x05DF,0x05FF,0x05FF,0x061F,0x0E1F,0x163F,0x2E5F,0x467F,0x76BF,0x5C38,0x5273,0x8AB4,0x9A33,0xA1F3,0xA9D3,0xA9D3,0xA9F4,0xA1D4,0x99F4,0x89D3,0x7172,0x6992,0x5991,0x5991,0x5191,0x5191,0x5191,0x4991,0x4990,0x4970,0x4170,0x416F,0x416F,0x414F,0x414F,0x414F,0x392E,0x392E,0x392E,0x392E,0x394E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x290D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290D,0x290D,0x310D,0x290C,0x310D,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x20EC,0x20EC,0x20EC,0x290D,0x290D,0x290D,0x290D,0x290E,0x210E,0x210E,0x192F,0x1930,0x1951,0x1992,0x19B3,0x21D3,0x1992,0x1150,0x110F,0x190F,0x214F,0x212F,0x292E,0x210E,0x292E,0x292E,0x292E,0x290D,0x292D,0x292E,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x210D,0x292D,0x290D,0x290D,0x210D,0x292D,0x292D,0x292E,0x292D,0x292E,0x292E,0x212E,0x212E,0x212F,0x1950,0x1971,0x1172,0x1193,0x11B4,0x09D5,0x09D5,0x09B5,0x09B5,0x09B5,0x11B5,0x1194,0x1194,0x1194,0x1973,0x1931,0x1930,0x210F,0x210E,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x310D,0x28CC,0x286C,0x302C,0x4890,0xCBFF,0xBAFC,0xBABC,0xBA7C,0xBA7D,0xC27D,0xC27D,0xC29E,0xC27D,0xC25D,0xC23D,0xCA7D,0xC25D,0xC27C,0xC29C,0xC2BD,0xBA9C,0xB29B,0xB2DB,0xC3BE,0x400E,0x380E,0x382E,0x404E,0x484F,0xBB5D,0xBAFC,0xBADC,0xBA9C,0xC29D,0xBA7C,0xC29D,0xBA9C,0xB29C,0xB2FC,0x81B6,0x400F,0x400F,0x60D3,0xAAFC,0xAABC,0xBABD,0xBA9D,0xBA9D,0xC29D,0xC29D,0xC2BD,0xC2DD,0xBAFC,0xA2BA,0x380E,0x386E,0x30AD,0x30ED,0x28ED,0x310D,0x28EC,0x28EC,0x28CC,0x28AC,0x284C,0x406F,0xC37E,0xBADD,0xC2BD,0xBA7D,0xBA5D,0xBA5D,0xC25D,0xCA7D, + 0x30EC,0x30CC,0x30ED,0x30EC,0x30EC,0x28EC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x310C,0x310D,0x310D,0x310D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292C,0x292C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30ED,0x30ED,0x38CC,0x48CD,0xAB97,0xBBB8,0xBB98,0xBB98,0xBBB8,0x8A73,0x50CD,0x40AC,0x38CC,0x38ED,0x38ED,0x390D,0x390D,0x392E,0x392E,0x392E,0x392E,0x394E,0x394E,0x394E,0x394E,0x394F,0x394E,0x394F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x496F,0x496F,0x496F,0x4970,0x4970,0x4970,0x4970,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4991,0x4991,0x4991,0x5191,0x5191,0x5191,0x51B1,0x51B1,0x51B1,0x5191,0x51B1,0x5191,0x51B1,0x51B2,0x59B2,0x59B2,0x51D2,0x51D3,0x51D3,0x51D4,0x51D4,0x51F5,0x51F5,0x4A16,0x4A16,0x4237,0x4258,0x3A78,0x32B9,0x32FA,0x333B,0x335C,0x2BBD,0x2BFE,0x23FE,0x1C3E,0x1C5E,0x1C7E,0x1C9E,0x149E,0x14BE,0x14BE,0x1CFF,0x1D1F,0x1D3F,0x1D5F,0x257F,0x259F,0x25BF,0x25DF,0x25FF,0x261F,0x263F,0x1E3F,0x1E3F,0x163F,0x163F,0x163F,0x0E3F,0x0E3F,0x0E3F,0x0E1F,0x0E1F,0x0E1F,0x0E1F,0x05FF,0x05FF,0x05DF,0x05BF,0x05DF,0x05DF,0x05BF,0x05BF,0x059F,0x059F,0x059F,0x057F,0x057F,0x057F,0x057F,0x055F,0x055F,0x053F,0x053F,0x053F,0x053F,0x053F,0x053F,0x055F,0x055F,0x057F,0x059F,0x05BF,0x05FF,0x05FF,0x061F,0x061F,0x0E5F,0x167F,0x267F,0x367E,0x6EFF,0x64FB,0x4A92,0x8AD5,0x9212,0xA1F3,0xA9F3,0xB1F4,0xA9F4,0xA9F4,0xA214,0x9214,0x7172,0x6992,0x5971,0x5991,0x5191,0x5191,0x5191,0x4970,0x4970,0x4970,0x4170,0x416F,0x414F,0x414F,0x414F,0x394F,0x392E,0x394E,0x392E,0x392E,0x392E,0x312E,0x312E,0x312D,0x312E,0x312E,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x310D,0x290D,0x290C,0x310C,0x290C,0x290C,0x290C,0x290C,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x210E,0x212E,0x192F,0x1930,0x1951,0x1992,0x19B3,0x21D3,0x19B2,0x1150,0x112F,0x192F,0x212F,0x212E,0x210E,0x210E,0x210E,0x212E,0x212E,0x210E,0x210E,0x212E,0x212E,0x210E,0x210E,0x212E,0x212E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x292E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210E,0x210E,0x210E,0x212E,0x210E,0x210E,0x210E,0x210E,0x292E,0x210D,0x210E,0x210E,0x210E,0x212E,0x212E,0x212E,0x210E,0x210E,0x210E,0x210E,0x210E,0x212E,0x212E,0x212E,0x212E,0x212E,0x212F,0x1930,0x1950,0x1171,0x1193,0x0994,0x09B4,0x09B5,0x01B5,0x01B5,0x01B6,0x01B5,0x09B5,0x09B5,0x11B5,0x1194,0x1173,0x1952,0x1951,0x212F,0x210E,0x290D,0x290D,0x290C,0x312D,0x290C,0x310C,0x310C,0x310C,0x30CC,0x286C,0x302C,0x488F,0xD41F,0xBB1C,0xBADC,0xC2DD,0xC29D,0xC27D,0xC29D,0xC27D,0xCA9D,0xCA7D,0xCA7D,0xC25C,0xC27C,0xC27C,0xC29C,0xBA9C,0xBA9B,0xB2BB,0xB2FB,0xCBFE,0x400E,0x400E,0x380D,0x380D,0x81D6,0xC37D,0xBAFC,0xC2FD,0xC2BC,0xC2BD,0xCABD,0xC2DD,0xC2DD,0xBABC,0xC37E,0x58B2,0x400E,0x380E,0x400E,0x9259,0xC35E,0xBADD,0xC2DD,0xC2DD,0xC2BD,0xC2BD,0xC2BD,0xC2DD,0xCB1D,0xCB9E,0x71B5,0x300D,0x30AD,0x30ED,0x30EC,0x28EC,0x290C,0x290C,0x28CC,0x28AC,0x284C,0x404E,0xC39E,0xC2FD,0xC2BD,0xC29D,0xC27D,0xC27D,0xCA9D,0xD2DE, + 0x308C,0x308C,0x30AC,0x30CC,0x30CC,0x30CC,0x30CC,0x30EC,0x30EC,0x30EC,0x30ED,0x30EC,0x30EC,0x30EC,0x30EC,0x310D,0x28EC,0x290C,0x28EC,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x292D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x292D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292C,0x292C,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x312D,0x292D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30EC,0x38CC,0x40CC,0xAB98,0xBBB8,0xBB98,0xBBB8,0xA336,0x594F,0x388B,0x40CC,0x38CC,0x38ED,0x390D,0x390D,0x390D,0x390D,0x392E,0x392E,0x392E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x414F,0x416F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x4170,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4990,0x4990,0x4990,0x4970,0x4990,0x4990,0x4990,0x4990,0x4991,0x5191,0x4991,0x4991,0x4991,0x4991,0x5191,0x51B1,0x51B1,0x51D1,0x59D2,0x51B2,0x51B2,0x51B2,0x51B2,0x51B2,0x51B2,0x51B2,0x59D3,0x51D4,0x51D4,0x51F4,0x5215,0x4A15,0x4236,0x4236,0x3A77,0x3A98,0x3AD9,0x3B19,0x335A,0x3BFD,0x3C7F,0x2C7E,0x249E,0x24BE,0x24BE,0x24FF,0x24FF,0x251F,0x253F,0x2D5F,0x2D7F,0x2D9F,0x2D9E,0x2DBE,0x2DBE,0x2DDE,0x2DFE,0x2E1E,0x2E1E,0x263F,0x263F,0x1E3F,0x1E3F,0x165F,0x163F,0x163F,0x0E3F,0x0E3F,0x0E3F,0x0E1F,0x0E1F,0x0E1F,0x0DFF,0x05FF,0x0DFF,0x05FF,0x05DF,0x05DF,0x05BF,0x05BF,0x05BF,0x059F,0x059F,0x059F,0x057F,0x057F,0x057F,0x057F,0x055F,0x055F,0x055F,0x053F,0x055F,0x055F,0x057F,0x057F,0x059F,0x05BF,0x05FF,0x05FF,0x061F,0x063F,0x063F,0x0E5F,0x169F,0x269F,0x369E,0x5EBF,0x659D,0x3A92,0x82F4,0x9A53,0x99D2,0xA9D3,0xB1F4,0xB1F4,0xA9D3,0xA1F4,0x91F3,0x7971,0x6971,0x6171,0x5171,0x5171,0x5191,0x5191,0x4991,0x4990,0x4970,0x4170,0x414F,0x414F,0x416F,0x414F,0x414F,0x394E,0x394E,0x392E,0x392E,0x392E,0x312E,0x312D,0x312D,0x312D,0x312E,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x312D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x292D,0x290C,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x212E,0x212F,0x192F,0x1930,0x1951,0x1992,0x21D3,0x21F4,0x19B3,0x1151,0x10EF,0x10EE,0x10EE,0x10EE,0x190E,0x18EE,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x190E,0x210E,0x210E,0x190E,0x210E,0x190E,0x190E,0x190E,0x210E,0x190E,0x190E,0x190E,0x210E,0x210E,0x210E,0x210E,0x190E,0x190E,0x190E,0x190E,0x18EE,0x18EE,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x110F,0x1110,0x1131,0x1172,0x0973,0x09B4,0x01B5,0x01B5,0x01B6,0x0196,0x0196,0x01B6,0x01B6,0x09B6,0x09B5,0x11B5,0x11B4,0x1173,0x1951,0x2130,0x212E,0x290E,0x290D,0x290C,0x290C,0x290C,0x290C,0x312D,0x310D,0x28CC,0x288C,0x304D,0x488F,0xF53F,0xDC3F,0xD39E,0xCB3E,0xD31E,0xD31E,0xD31E,0xDB3F,0xDB1E,0xDB1F,0xE35F,0xDB3F,0xD31E,0xDB5F,0xD35E,0xD37F,0xCB7E,0xCBBE,0xD41F,0xDCBF,0x400D,0x380D,0x380D,0x6112,0xD47F,0xCBBE,0xCB5D,0xCB3D,0xCB1D,0xD31E,0xD33E,0xD35E,0xCB5E,0xD3BF,0xC39D,0x400E,0x380E,0x380D,0x380E,0x6933,0xD41F,0xCB7E,0xCB3E,0xCB3E,0xCB1E,0xD31E,0xD33E,0xD33E,0xD37E,0xD3FF,0xCC3E,0x5131,0x308D,0x30ED,0x310D,0x290C,0x310C,0x28EC,0x30CC,0x30AC,0x306C,0x408E,0xDC7F,0xDBDF,0xD35F,0xCAFE,0xCADE,0xD2FE,0xDB3E,0xE39F, + 0x408C,0x408C,0x386B,0x306B,0x306B,0x308B,0x388B,0x38AC,0x38AC,0x30AC,0x38CC,0x30CC,0x30EC,0x30CC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x30ED,0x30EC,0x30EC,0x28EC,0x310C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x28EC,0x310D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x312D,0x310D,0x310D,0x310D,0x30EC,0x38EC,0x40EC,0x9336,0xB3D8,0xB3B8,0xBBD8,0x92B4,0x48CD,0x38AC,0x38CC,0x38EC,0x38ED,0x390D,0x390D,0x392D,0x392D,0x392D,0x392E,0x392E,0x392E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x414E,0x394E,0x414E,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x4170,0x416F,0x4170,0x4170,0x4970,0x4170,0x4170,0x4170,0x4170,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4990,0x4990,0x4970,0x4970,0x4990,0x4990,0x4990,0x4990,0x4990,0x4970,0x4990,0x4990,0x4991,0x4990,0x4991,0x5191,0x5191,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x5191,0x51B1,0x51B2,0x51B2,0x51B2,0x51D3,0x51D3,0x51D3,0x51F4,0x4A14,0x4A15,0x4235,0x4256,0x4276,0x3A97,0x32B7,0x2AF8,0x443D,0x4CDF,0x3CBE,0x34DF,0x34FE,0x351E,0x351E,0x353F,0x355F,0x3D7F,0x3D9F,0x3D9F,0x3D9E,0x3D9E,0x359D,0x35BD,0x35DD,0x361E,0x361E,0x361E,0x2E3E,0x2E3E,0x263F,0x1E3F,0x1E3F,0x163F,0x163F,0x163F,0x163F,0x163F,0x0E1F,0x0E1F,0x0E1F,0x0DFF,0x0DFF,0x05FF,0x05FF,0x05FF,0x05DF,0x05DF,0x05DF,0x05BF,0x05BF,0x05BF,0x059F,0x057F,0x057F,0x057F,0x057F,0x055F,0x055F,0x055F,0x055F,0x057F,0x057F,0x059F,0x059F,0x05DF,0x05FF,0x061F,0x063F,0x063F,0x065F,0x0E9F,0x0E9F,0x1EBF,0x2EBF,0x4EBF,0x765F,0x3AF3,0x7AD4,0x9253,0x99F2,0xA9D3,0xB1F4,0xB1F4,0xA9F4,0xA1F4,0xA234,0x81B2,0x6971,0x6192,0x5991,0x5191,0x5191,0x5191,0x4990,0x4990,0x4990,0x4970,0x4150,0x4170,0x414F,0x416F,0x414F,0x394F,0x392E,0x392E,0x392E,0x392E,0x392E,0x312E,0x392D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x28EC,0x28EC,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x212E,0x212E,0x192F,0x192F,0x1930,0x1151,0x1992,0x21D4,0x21F4,0x21F3,0x1151,0x090F,0x08EF,0x090F,0x10EF,0x110F,0x110F,0x110F,0x1110,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x1110,0x110F,0x112F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x112F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x110F,0x10EF,0x110F,0x110F,0x1910,0x190F,0x190F,0x110F,0x1130,0x110F,0x1130,0x1130,0x0931,0x0952,0x0973,0x09B4,0x09B5,0x01B5,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x09B6,0x09B6,0x09B5,0x11B4,0x1173,0x1992,0x1930,0x212F,0x292E,0x290D,0x290C,0x290C,0x290C,0x290C,0x310D,0x310D,0x30ED,0x28AD,0x306D,0x48CF,0xCC7E,0xCC1D,0xBB3B,0xBB3C,0xC33C,0xC33D,0xCB5D,0xCB5D,0xC31C,0xCB3D,0xD39E,0xD37E,0xCB7D,0xC35C,0xC33C,0xBB3C,0xB33B,0xB35B,0xB37B,0x9AD8,0x380D,0x382D,0x406E,0x8AB7,0xCC5E,0xB37B,0xB33B,0xBB3B,0xBB1B,0xBB1C,0xBB1C,0xBAFB,0xAADA,0xA2B9,0x6973,0x406E,0x386E,0x386E,0x384E,0x404F,0xAB3B,0xB35C,0xB33C,0xBB3C,0xBB1C,0xC33D,0xC33C,0xBB3C,0xB31B,0xAB3A,0x9B18,0x69F3,0x288C,0x28CD,0x310D,0x312D,0x310C,0x30EC,0x30EC,0x30AC,0x308C,0x40CE,0xCC5E,0xD43F,0xC37D,0xBB3D,0xBB1C,0xC33C,0xCB5D,0xC33C, + 0x9294,0x8A73,0x8A53,0x79D1,0x6990,0x590E,0x48CD,0x408B,0x386B,0x306B,0x386B,0x308B,0x30AC,0x38AC,0x38AC,0x30AC,0x30CC,0x30EC,0x30CC,0x30CC,0x30CC,0x30EC,0x310C,0x28EC,0x310C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x292D,0x292D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x292D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30ED,0x30EC,0x38CC,0x7A52,0xABD8,0xB3B8,0xB3B8,0x7211,0x40AB,0x38CC,0x38EC,0x38ED,0x390D,0x390D,0x390D,0x392D,0x392D,0x392D,0x392D,0x392E,0x392E,0x392E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x414E,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x4170,0x416F,0x4970,0x4170,0x4170,0x4970,0x4970,0x4970,0x4970,0x4970,0x4990,0x4970,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x5191,0x4990,0x4991,0x4991,0x5191,0x4991,0x4990,0x5191,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x59B2,0x59B2,0x59D2,0x51D2,0x51D2,0x51D3,0x51F3,0x51F3,0x49F4,0x4A14,0x4A34,0x4235,0x4255,0x3A55,0x3A76,0x2A56,0x3319,0x4C7E,0x4CFF,0x453F,0x453F,0x455F,0x455F,0x4D5F,0x4D5F,0x557F,0x559F,0x5DFF,0x5E3F,0x5E5F,0x5E7F,0x565E,0x4E5E,0x4E5E,0x465E,0x3E3E,0x3E5E,0x2E1E,0x2E3E,0x263E,0x263E,0x263F,0x1E3F,0x1E3F,0x1E3F,0x161F,0x161F,0x0E1F,0x0DFF,0x0DFF,0x0DFF,0x05FF,0x05FF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05BF,0x059F,0x059F,0x059F,0x059F,0x057F,0x057F,0x057F,0x057F,0x057F,0x057F,0x059F,0x059F,0x05BF,0x05FF,0x061F,0x061F,0x063F,0x065F,0x067F,0x069F,0x0EDF,0x1EDF,0x26DF,0x3EBF,0x6EBF,0x3B74,0x72D4,0x8A33,0xA213,0xA9F3,0xA9F4,0xA9D4,0xA9F4,0xA9F4,0xA214,0x91F3,0x7151,0x6171,0x6191,0x5991,0x5191,0x5191,0x4970,0x4970,0x4970,0x4970,0x4970,0x4170,0x414F,0x412F,0x414F,0x394F,0x394E,0x394E,0x394E,0x392E,0x392E,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x292E,0x212E,0x212F,0x192F,0x192F,0x1930,0x1951,0x1972,0x19B2,0x21D3,0x2A14,0x19D3,0x1192,0x1192,0x19B3,0x1993,0x1993,0x1192,0x1993,0x1193,0x1193,0x1172,0x1992,0x1172,0x1172,0x1172,0x1192,0x1172,0x1172,0x1172,0x1172,0x1172,0x1172,0x1172,0x1972,0x1172,0x1172,0x1172,0x1172,0x1172,0x1172,0x1172,0x1172,0x1172,0x1192,0x1172,0x1172,0x1172,0x1192,0x1192,0x1172,0x1172,0x1992,0x1172,0x1192,0x1172,0x1992,0x1992,0x1993,0x1993,0x19B3,0x19B3,0x1993,0x1993,0x1992,0x1992,0x19B3,0x1192,0x11B3,0x11B3,0x11B3,0x0994,0x0994,0x01B4,0x01B5,0x01D6,0x01D6,0x01B6,0x01B6,0x01B6,0x0196,0x0196,0x09B6,0x0995,0x09B5,0x11B5,0x1193,0x1972,0x1950,0x212F,0x290E,0x292D,0x28EC,0x28EC,0x290C,0x310D,0x28EC,0x310D,0x30ED,0x28CD,0x30CD,0x288D,0x200B,0x280B,0x300B,0x300C,0x300C,0x300C,0x380C,0x300C,0x300C,0x300C,0x300C,0x300C,0x300C,0x300C,0x300B,0x300B,0x300C,0x300B,0x280B,0x280C,0x388E,0x38AE,0x38AE,0x282C,0x280B,0x280B,0x280C,0x300C,0x300C,0x300C,0x300C,0x300C,0x300C,0x300C,0x306D,0x388D,0x308D,0x38AE,0x308D,0x306D,0x280C,0x280C,0x300C,0x300C,0x300C,0x300C,0x300C,0x300B,0x280B,0x280B,0x200B,0x286B,0x30ED,0x28CC,0x28EC,0x28EC,0x310C,0x28EC,0x28EC,0x28EC,0x30CC,0x308C,0x200A,0x280B,0x300C,0x300C,0x300C,0x300C,0x300C,0x300C, + 0x9233,0x9233,0x9A53,0x9253,0x9253,0x9253,0x9273,0x8233,0x79F1,0x614F,0x510E,0x48AC,0x386B,0x304A,0x302A,0x306B,0x308B,0x308C,0x308B,0x30AC,0x30AB,0x30CC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x28EC,0x28EC,0x28EC,0x28EC,0x310C,0x28EC,0x290C,0x290C,0x310D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x292D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x292D,0x292D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x292C,0x290C,0x292C,0x292C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290D,0x292C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x310D,0x310D,0x310D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30ED,0x30CC,0x6A31,0xABD8,0xABB8,0xA397,0x596F,0x38AC,0x38CC,0x38ED,0x30EC,0x390D,0x390D,0x390D,0x392D,0x392D,0x392D,0x392D,0x392E,0x392E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x414E,0x394E,0x414E,0x394E,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x4170,0x4970,0x4970,0x4970,0x4990,0x4970,0x4990,0x4970,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x5191,0x5191,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51B2,0x51D2,0x51D2,0x51D2,0x51F3,0x51F3,0x51F3,0x4A13,0x4A14,0x4A14,0x4214,0x4214,0x3A35,0x3235,0x2A96,0x3BBA,0x5D1F,0x5D5F,0x551E,0x54FE,0x4C7C,0x4C3B,0x4C3A,0x4C5A,0x64FC,0x75BF,0x865F,0x7E5F,0x7E7F,0x765F,0x765F,0x6E5F,0x665F,0x5E5F,0x4E3E,0x3E1E,0x361E,0x2E1E,0x2E1E,0x261E,0x263F,0x1E1F,0x1E3F,0x1E1F,0x161F,0x161F,0x15FF,0x0DFF,0x0E1F,0x0DFF,0x0DFF,0x05FF,0x05FF,0x05DF,0x05DF,0x05BF,0x05BF,0x059F,0x059F,0x059F,0x059F,0x057F,0x059F,0x059F,0x059F,0x059F,0x05BF,0x05BF,0x05DF,0x05FF,0x061F,0x063F,0x065F,0x067F,0x069F,0x06BF,0x0EDF,0x16FF,0x271F,0x3EDF,0x66FF,0x4C57,0x5A93,0x8A73,0x9A13,0xAA13,0xA9F3,0xA9F3,0xA9F4,0xAA14,0xA1F3,0x9A34,0x7992,0x6971,0x6191,0x5991,0x5191,0x5191,0x4970,0x5191,0x4970,0x4970,0x4950,0x4150,0x414F,0x414F,0x394F,0x394F,0x394E,0x392E,0x394E,0x392E,0x392E,0x392E,0x312D,0x312D,0x312E,0x312D,0x312D,0x312D,0x290D,0x310D,0x310D,0x312D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x292D,0x212E,0x212E,0x212F,0x190F,0x192F,0x1950,0x1951,0x1971,0x1992,0x19D4,0x2A35,0x2235,0x2236,0x2215,0x2215,0x2236,0x2215,0x2216,0x2215,0x2236,0x2215,0x2215,0x21F5,0x2215,0x19F4,0x21F5,0x21F5,0x21F5,0x21F5,0x21F5,0x21F5,0x2215,0x21F5,0x21F5,0x21F5,0x2215,0x21F5,0x2215,0x21F5,0x2215,0x21F4,0x2215,0x2215,0x2215,0x2215,0x2215,0x21F5,0x1A15,0x1A14,0x2215,0x21F4,0x21F4,0x21F5,0x2215,0x21F5,0x2215,0x21F4,0x21F5,0x21F4,0x2215,0x21F5,0x21F5,0x19B4,0x21D4,0x19D3,0x19D4,0x19D3,0x19D4,0x11D4,0x11B4,0x09B4,0x09B4,0x09B5,0x01B5,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x0195,0x09B5,0x11B4,0x1193,0x1972,0x1930,0x212F,0x290E,0x290D,0x290D,0x290D,0x290C,0x28EC,0x290D,0x310D,0x290D,0x28ED,0x28CD,0x30ED,0x28AC,0x284B,0x284B,0x284B,0x282B,0x282B,0x282B,0x202A,0x282B,0x282B,0x200A,0x202B,0x282B,0x284B,0x284B,0x284B,0x286C,0x286C,0x286C,0x308C,0x308D,0x30AD,0x30AD,0x288C,0x288C,0x288C,0x288C,0x286C,0x286C,0x286C,0x286C,0x286B,0x286C,0x286C,0x288C,0x30AD,0x28AD,0x30CD,0x30AD,0x30CD,0x30AD,0x286C,0x286C,0x286C,0x284C,0x284B,0x286B,0x286B,0x288C,0x288C,0x28AC,0x28CC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28CC,0x28CC,0x28AC,0x288C,0x286C,0x286C,0x284B,0x282B,0x202B,0x200A, + 0x9A12,0x91F2,0x91F2,0x9A12,0x91F2,0x91F2,0x89F2,0x9232,0x9253,0x9253,0x9253,0x8A53,0x8212,0x71D1,0x71B1,0x594F,0x48AC,0x388C,0x386B,0x306B,0x304B,0x304B,0x306B,0x308C,0x30AC,0x30CC,0x30CC,0x30EC,0x30EC,0x30EC,0x310C,0x310C,0x310C,0x310C,0x310C,0x310D,0x28EC,0x28EC,0x28EC,0x310C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x292D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x292D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x292C,0x290C,0x292C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30EC,0x414E,0x9397,0xA3B8,0x9336,0x40EC,0x38CC,0x38EC,0x38ED,0x38ED,0x310D,0x390D,0x390D,0x390D,0x392D,0x392D,0x392D,0x392E,0x392E,0x392E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x392E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x414F,0x394F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x414F,0x414F,0x414F,0x414F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x5191,0x5191,0x5191,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51D2,0x51D2,0x51D2,0x51D2,0x51D2,0x51F2,0x51F3,0x49F3,0x4A13,0x4A13,0x4A14,0x4A14,0x4214,0x3A35,0x3214,0x3275,0x5C1C,0x6CBE,0x439A,0x42F7,0x4AF7,0x52D6,0x52B5,0x4A74,0x4A54,0x4A53,0x5AD5,0x6377,0x6BF9,0x7CBB,0x7D1C,0x7D7E,0x7DDF,0x6E3F,0x5E5F,0x567F,0x4E5E,0x465E,0x3E3E,0x2DFD,0x25FE,0x25FE,0x261F,0x1E1F,0x1E1F,0x161F,0x161F,0x0E1F,0x0DFF,0x0DFF,0x0DFF,0x05DF,0x05FF,0x05DF,0x05DF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x059F,0x059F,0x059F,0x05BF,0x05BF,0x05BF,0x05DF,0x05DF,0x05FF,0x063F,0x063F,0x067F,0x069F,0x06BF,0x06DF,0x06FF,0x0EFF,0x1F1F,0x36FF,0x5EFF,0x659C,0x4211,0x8253,0x9213,0xA1F3,0xA9F3,0xB214,0xA9D3,0xA9F3,0xAA14,0x9A14,0x89D3,0x6971,0x6191,0x5991,0x5191,0x5171,0x5171,0x4970,0x4970,0x4970,0x4970,0x414F,0x4150,0x414F,0x414F,0x394F,0x394F,0x394E,0x394E,0x392E,0x392E,0x310D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292C,0x290C,0x292D,0x292D,0x292D,0x210D,0x212E,0x212E,0x190E,0x192F,0x1930,0x1950,0x1951,0x1972,0x1172,0x1192,0x19B3,0x19D4,0x19B4,0x19D4,0x19D4,0x19D4,0x19D4,0x19D5,0x19D4,0x19D4,0x19D4,0x19D4,0x19D4,0x19D4,0x19D4,0x19D4,0x19F4,0x21F4,0x19D4,0x19D5,0x21D4,0x21D4,0x21D4,0x21F4,0x21D4,0x19D4,0x19D4,0x21F4,0x21F4,0x21D4,0x21D4,0x21F4,0x19D4,0x19D4,0x19D4,0x19D4,0x19D4,0x19D4,0x19D4,0x19D4,0x19D4,0x19F4,0x19D4,0x19B4,0x19D4,0x21D4,0x19D4,0x19B4,0x19B4,0x19B4,0x19B4,0x19B3,0x19D3,0x19B3,0x19B3,0x11B3,0x1193,0x0993,0x0973,0x0994,0x09B4,0x0195,0x01B5,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x09B6,0x09B6,0x09B5,0x11B4,0x1193,0x1951,0x1930,0x212E,0x290E,0x290D,0x290D,0x290C,0x290C,0x310D,0x290D,0x310D,0x290D,0x290D,0x290D,0x28ED,0x28ED,0x30CD,0x30CC,0x30AC,0x30CC,0x30AC,0x30CC,0x30AC,0x30CC,0x28AC,0x30AC,0x28AC,0x30CC,0x28AC,0x30CC,0x30CC,0x30CD,0x28CC,0x30CC,0x28CC,0x30CD,0x30CD,0x30ED,0x30ED,0x30CD,0x28CC,0x30CC,0x28CC,0x28AC,0x30CC,0x28AC,0x28AC,0x28AC,0x30CC,0x30CD,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30ED,0x30CD,0x30ED,0x28CC,0x28AC,0x28AC,0x28AC,0x28CC,0x28CC,0x28EC,0x28EC,0x310C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x310C,0x28EC,0x28EC,0x28EC,0x310D,0x28EC,0x28EC,0x28CC,0x28CC,0x28CC,0x28AC,0x28AC,0x288C, + 0x99D2,0x91D1,0x99F2,0x91D1,0x91F2,0x91D1,0x91F2,0x91F2,0x91F1,0x9212,0x9212,0x8A12,0x8A12,0x8A33,0x9253,0x8A53,0x8232,0x7A12,0x79F2,0x69B1,0x616F,0x50ED,0x408C,0x304B,0x304A,0x304A,0x306B,0x38AC,0x30AC,0x30CC,0x38EC,0x30EC,0x30EC,0x310C,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x28EC,0x310C,0x30EC,0x310C,0x310C,0x310D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x292D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x292D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x292D,0x290C,0x290D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x310D,0x310D,0x30EC,0x498F,0x59D0,0x516F,0x38CC,0x38EC,0x30EC,0x30EC,0x30ED,0x310D,0x390D,0x390D,0x390D,0x390D,0x392D,0x392D,0x392D,0x392E,0x392D,0x392D,0x392E,0x392E,0x392E,0x394E,0x394E,0x394E,0x394E,0x394E,0x392E,0x394E,0x394E,0x394E,0x394E,0x394E,0x392E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x414F,0x414F,0x394E,0x414F,0x394E,0x394F,0x394F,0x394F,0x394F,0x414E,0x414E,0x414E,0x414E,0x414F,0x394F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x414F,0x414F,0x416F,0x414F,0x416F,0x416F,0x416F,0x416F,0x4170,0x416F,0x416F,0x496F,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4990,0x4990,0x4990,0x4990,0x5191,0x5191,0x5191,0x5191,0x5191,0x5191,0x5191,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51B2,0x51D2,0x51D2,0x51D2,0x51D2,0x51F3,0x51F3,0x51F3,0x49F3,0x49F3,0x49F3,0x41F4,0x39F4,0x3A15,0x4AD7,0x6BBA,0x5AD7,0x62B7,0x6296,0x6A95,0x6A55,0x7254,0x7255,0x7234,0x6A54,0x6254,0x5A54,0x5273,0x52B4,0x4AD4,0x5BF8,0x85DF,0x863F,0x763F,0x663F,0x5E3F,0x4E3F,0x461E,0x361E,0x2DFE,0x25FE,0x261F,0x1E1F,0x1DFF,0x15FF,0x15FF,0x0DFF,0x0DFF,0x0DFF,0x0DFF,0x0DFF,0x05DF,0x05DF,0x05DF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05BF,0x05DF,0x05DF,0x05FF,0x05FF,0x061F,0x063F,0x067F,0x069F,0x06BF,0x06DF,0x06FF,0x06FF,0x0F1F,0x1F3F,0x2EFF,0x4EFF,0x769F,0x3A51,0x7253,0x8A33,0xA213,0xAA13,0xA9F3,0xA1D3,0xA9D3,0xAA14,0xA214,0x9214,0x7171,0x6191,0x5991,0x5991,0x5191,0x5191,0x5171,0x4970,0x4970,0x4970,0x414F,0x4150,0x414F,0x414F,0x394F,0x394F,0x394E,0x312E,0x394E,0x392E,0x312D,0x312E,0x312D,0x312D,0x312D,0x312D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x292D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x292D,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x292D,0x292D,0x290D,0x210D,0x212E,0x212E,0x192F,0x192F,0x1930,0x1950,0x1951,0x1151,0x1151,0x1151,0x1151,0x1152,0x1151,0x1152,0x1972,0x1972,0x1972,0x1992,0x1972,0x1972,0x1992,0x1992,0x1992,0x1993,0x1972,0x1992,0x1993,0x1993,0x1992,0x1992,0x1993,0x1992,0x1992,0x1992,0x1992,0x1992,0x1992,0x1992,0x1972,0x1972,0x1972,0x1972,0x1972,0x1992,0x1992,0x1992,0x1992,0x1992,0x1992,0x1172,0x1972,0x1992,0x1972,0x1972,0x1993,0x1972,0x1972,0x1972,0x1972,0x1972,0x1972,0x1972,0x1972,0x1172,0x1172,0x1193,0x1173,0x1193,0x0994,0x09B4,0x09B5,0x0195,0x09B6,0x01B6,0x09D6,0x01B6,0x01B6,0x01B6,0x09D6,0x09B5,0x09B5,0x11B4,0x1172,0x1951,0x192F,0x210E,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x312D,0x290C,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x30EC,0x28EC,0x30EC,0x30CC,0x30EC,0x30EC,0x30EC,0x28CC,0x28EC,0x28CC,0x28EC,0x28EC,0x28ED,0x28CC,0x30ED,0x28EC,0x28ED,0x28EC,0x28ED,0x28CC,0x310D,0x28ED,0x310D,0x310D,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x310D,0x28EC,0x310D,0x28ED,0x310D,0x30ED,0x30ED,0x30ED,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28CC,0x28EC,0x28CB,0x28EC,0x28EC, + 0x99D2,0x99F2,0x91D1,0x91D1,0x91D1,0x91B1,0x91D1,0x91D2,0x91F2,0x9212,0x9A12,0x9A33,0x91F2,0x9212,0x91F2,0x89F2,0x9233,0x9233,0x9253,0x8A33,0x9253,0x8A53,0x8233,0x7A12,0x71B0,0x592E,0x48AC,0x384B,0x304B,0x304A,0x304A,0x308B,0x30AB,0x30CC,0x30CC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x310C,0x30EC,0x310C,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x28EC,0x290C,0x290C,0x290D,0x290D,0x290D,0x312D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x292D,0x292D,0x290D,0x290C,0x290D,0x290D,0x292D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x28EC,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30EC,0x30EC,0x38ED,0x38ED,0x30ED,0x30ED,0x310D,0x310D,0x310D,0x390D,0x390D,0x390D,0x392D,0x392D,0x392D,0x392D,0x392D,0x392E,0x394E,0x392E,0x392E,0x392E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x392E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394F,0x394F,0x394F,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394F,0x394E,0x394E,0x414E,0x394E,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x416F,0x416F,0x416F,0x414F,0x416F,0x416F,0x416F,0x416F,0x416F,0x496F,0x4970,0x4970,0x4970,0x4970,0x4990,0x4970,0x4970,0x5190,0x4990,0x4991,0x4991,0x4991,0x4991,0x5191,0x5191,0x51B1,0x51B1,0x51B1,0x51B1,0x51D1,0x51B1,0x51D2,0x51D2,0x51D2,0x51D2,0x51F2,0x51F3,0x51F3,0x51D3,0x51F3,0x49F3,0x49D3,0x49D3,0x49D3,0x5234,0x6AD7,0x6AD7,0x72D7,0x72B6,0x7A95,0x8275,0x8255,0x8255,0x8255,0x8255,0x8275,0x7A55,0x7234,0x6A13,0x59F3,0x49D2,0x49F2,0x741A,0x855E,0x85FF,0x6E3F,0x665F,0x565F,0x4E7F,0x3E3F,0x361E,0x25DE,0x25FF,0x1DFF,0x1DFF,0x15FF,0x15FF,0x0DFF,0x0DFF,0x0DFF,0x0DDF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05FF,0x05FF,0x05FF,0x05FF,0x061F,0x061F,0x065F,0x067F,0x069F,0x06BF,0x06FF,0x06FF,0x0F1F,0x0F1F,0x171F,0x2F1F,0x471F,0x873F,0x4B54,0x5A12,0x8A74,0x9A33,0xAA34,0xAA14,0xA1D3,0xAA14,0xA1F3,0xA234,0x9214,0x7971,0x6151,0x5971,0x5171,0x5171,0x5171,0x5191,0x4970,0x4970,0x4970,0x4970,0x414F,0x414F,0x414F,0x394F,0x394F,0x392E,0x394E,0x392E,0x392E,0x392E,0x392E,0x312E,0x310D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x292C,0x292D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290D,0x290D,0x210D,0x210E,0x210E,0x212F,0x192F,0x192F,0x192F,0x1930,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x192F,0x190F,0x190F,0x192F,0x190F,0x190F,0x192F,0x190F,0x1930,0x192F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x1930,0x192F,0x1930,0x192F,0x192F,0x192F,0x110F,0x192F,0x1930,0x110F,0x192F,0x1930,0x1930,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1910,0x1930,0x1930,0x1951,0x1951,0x1951,0x1151,0x1131,0x1152,0x1152,0x1173,0x1194,0x0995,0x0995,0x09B6,0x09B6,0x09B6,0x09D6,0x09B6,0x09D6,0x11D5,0x11D5,0x11B4,0x1172,0x1930,0x192F,0x210E,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290C,0x28EC,0x30EC,0x310D,0x28EC,0x28EC,0x28EC,0x310D,0x290C,0x28EC,0x28EC,0x28ED,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x28EC,0x290D,0x28EC,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x28ED,0x290D,0x290D,0x310D,0x310D,0x28EC,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC, + 0x99D1,0x91B1,0x99F2,0x91D1,0x99D1,0x99D2,0x91D1,0x91D1,0x91F2,0x91D2,0x99F2,0x91D2,0x99F2,0x91F2,0x91D2,0x91D2,0x91F2,0x91F2,0x91F2,0x91F2,0x9233,0x9213,0x9233,0x9233,0x8A33,0x8A53,0x8A73,0x8233,0x71F1,0x592E,0x48AC,0x384B,0x302A,0x284A,0x304A,0x308B,0x308B,0x30AC,0x30AB,0x30CC,0x30EC,0x30EC,0x38EC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x28EC,0x310D,0x310D,0x310D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290D,0x290C,0x290C,0x290D,0x292D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x28EC,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x292D,0x290D,0x292D,0x290C,0x290D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290C,0x292D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x30ED,0x30ED,0x310D,0x310D,0x310D,0x310D,0x390D,0x310D,0x390D,0x392D,0x392D,0x392D,0x392D,0x392D,0x392D,0x392D,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394E,0x394E,0x392E,0x392E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x392E,0x392E,0x394E,0x392E,0x394E,0x394F,0x394F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x414F,0x416F,0x416F,0x416F,0x414F,0x416F,0x496F,0x496F,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4990,0x4990,0x4990,0x4990,0x4990,0x4990,0x5191,0x5191,0x5191,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51B2,0x51D2,0x51D2,0x51D2,0x51D2,0x51D2,0x51D2,0x51D2,0x51D3,0x51D2,0x51D2,0x51D2,0x51D2,0x5A13,0x6A95,0x7AD6,0x82D6,0x8295,0x8A75,0x8A55,0x9255,0x9255,0x9255,0x9255,0x9255,0x8A34,0x9235,0x8A14,0x79D3,0x71F3,0x61F3,0x5A74,0x5316,0x5BF8,0x85DF,0x865F,0x6E3F,0x663F,0x565F,0x461F,0x2DBD,0x259D,0x25DF,0x25FF,0x1DDF,0x15FF,0x15FF,0x0DDF,0x0DFF,0x0DFF,0x05DF,0x05DF,0x05DF,0x05DF,0x05DF,0x05FF,0x05FF,0x05FF,0x061F,0x061F,0x061F,0x063F,0x063F,0x065F,0x069F,0x06BF,0x06DF,0x06FF,0x071F,0x0F3F,0x0F5F,0x175F,0x273F,0x3EDE,0x6F1F,0x751B,0x41F0,0x8AB4,0x9213,0xA233,0xAA13,0xA9F3,0xA1F3,0xAA34,0xA234,0x9A14,0x81D3,0x6151,0x6191,0x5971,0x5191,0x5170,0x5171,0x4970,0x4970,0x4970,0x4170,0x414F,0x414F,0x414F,0x394F,0x392F,0x394F,0x392E,0x394E,0x392E,0x392E,0x392E,0x392E,0x312D,0x312E,0x312D,0x312E,0x312D,0x312D,0x310D,0x312D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x292D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x212D,0x212E,0x210E,0x212E,0x210E,0x210E,0x212F,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x210E,0x210E,0x210E,0x210E,0x20EE,0x210E,0x210D,0x210E,0x210E,0x20EE,0x210E,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x210E,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x210E,0x210E,0x210E,0x210E,0x190E,0x190E,0x210E,0x190E,0x190E,0x190E,0x212E,0x190E,0x190E,0x190E,0x210F,0x210F,0x18EE,0x20EF,0x210F,0x210F,0x190F,0x210F,0x190F,0x190F,0x192F,0x190F,0x1930,0x1930,0x1131,0x1151,0x1973,0x1193,0x1194,0x11B5,0x11B5,0x09B5,0x09B6,0x09B6,0x09B5,0x11D5,0x11B5,0x11B4,0x1193,0x1971,0x1950,0x192F,0x212E,0x292D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x310D,0x310D,0x310D,0x290C,0x28EC,0x310D,0x310D,0x290D,0x28EC,0x290D,0x290D,0x28EC,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x310D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x292D,0x290C,0x28EC,0x290D,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C, + 0x91B1,0x99D1,0x99D1,0x99D1,0x99D1,0x99D1,0x91B1,0x99D1,0x91B1,0x91D1,0x91B1,0x99D2,0x99F2,0x91D2,0x99F2,0x99D2,0x91B2,0x91D2,0x91D2,0x99F2,0x91F2,0x91D2,0x91F2,0x9A13,0x9212,0x9212,0x9212,0x9232,0x8A33,0x9273,0x9294,0x8A93,0x8232,0x69B0,0x594E,0x48CC,0x386B,0x304A,0x306B,0x306A,0x308B,0x30AB,0x38AC,0x38CC,0x38CC,0x38CC,0x30CC,0x30CC,0x30CC,0x30EC,0x30EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x292D,0x290C,0x290D,0x290C,0x290C,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292C,0x292C,0x292D,0x290C,0x290C,0x292C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290D,0x290C,0x290D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x392D,0x392D,0x392D,0x312D,0x392D,0x392D,0x312D,0x312E,0x312E,0x312D,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394E,0x394E,0x392E,0x392E,0x392E,0x394E,0x392E,0x392E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x394E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394F,0x394E,0x394E,0x394E,0x414F,0x414F,0x414F,0x414F,0x414F,0x394F,0x394F,0x394F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x416F,0x416F,0x414F,0x416F,0x496F,0x414F,0x4970,0x4970,0x4970,0x4970,0x4990,0x4990,0x4990,0x4990,0x4990,0x5191,0x5191,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51D1,0x51D2,0x51D2,0x51F2,0x51F2,0x51F2,0x51D2,0x51D2,0x51D2,0x51D2,0x59D2,0x59D2,0x59D2,0x59D2,0x6A13,0x7A75,0x8A95,0x9275,0x9255,0x9234,0x9A14,0x9A14,0x9A14,0x9A34,0x9A34,0x9A34,0x9A54,0x9A75,0x8A14,0x81F4,0x7A14,0x7214,0x6234,0x5213,0x4233,0x6C3A,0x7D7E,0x7E3F,0x665F,0x5E7F,0x4E3F,0x2D9D,0x257D,0x25BF,0x1DDF,0x1DDF,0x15DF,0x15FF,0x0DDF,0x0DDF,0x0DFF,0x05FF,0x05FF,0x05FF,0x05FF,0x05FF,0x061F,0x061F,0x063F,0x063F,0x063F,0x065F,0x069F,0x069F,0x06DF,0x06FF,0x071F,0x073F,0x071F,0x0F3F,0x173F,0x1F1F,0x36FE,0x5EDF,0x8E7F,0x3A30,0x82F5,0x9273,0x9A33,0xA213,0xA9F3,0xA9F3,0xA9F3,0xAA14,0xA214,0x9214,0x6951,0x6171,0x5991,0x5171,0x5170,0x5171,0x4970,0x4970,0x4970,0x4170,0x414F,0x4170,0x414F,0x414F,0x394F,0x394F,0x392E,0x394E,0x394E,0x392E,0x392E,0x312D,0x392E,0x312E,0x314E,0x312D,0x312D,0x312D,0x310D,0x310D,0x312D,0x310D,0x310D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x292C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x292C,0x290C,0x292D,0x290C,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x292D,0x290D,0x210E,0x210E,0x210E,0x292E,0x292E,0x210D,0x290E,0x210D,0x210D,0x20ED,0x290D,0x290D,0x20ED,0x210D,0x290D,0x210D,0x210D,0x210D,0x290D,0x210D,0x210D,0x20ED,0x290D,0x20ED,0x290D,0x210D,0x290D,0x20ED,0x20ED,0x210D,0x290D,0x20ED,0x210D,0x20ED,0x210D,0x20ED,0x290E,0x290E,0x210D,0x210D,0x210D,0x210D,0x210D,0x20ED,0x210D,0x210D,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210F,0x190E,0x190F,0x190F,0x190F,0x1930,0x1951,0x1952,0x1152,0x1173,0x1194,0x11B4,0x11B4,0x11B4,0x1194,0x1194,0x1193,0x1193,0x1171,0x1951,0x1950,0x212E,0x210D,0x292D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x290D,0x28EC,0x290C,0x292D,0x290C,0x290C,0x290D,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x20EC,0x20EC,0x290C,0x290C, + 0x99D1,0x99D1,0x99D1,0x99F2,0x99F2,0x99D1,0x99D1,0x99D1,0x91B1,0x91B1,0x91B1,0x99B1,0x91B1,0x99D2,0x99D2,0x99B2,0x99B2,0x99D2,0x99D2,0x99D2,0x99D2,0x91B1,0x99F2,0x91D2,0x91F2,0x91D1,0x9212,0x91F2,0x9212,0x9212,0x9212,0x9232,0x8A32,0x9273,0x9294,0x9294,0x8A53,0x79F1,0x6990,0x510D,0x48AC,0x386B,0x384B,0x304B,0x306B,0x388B,0x388B,0x38AC,0x30AC,0x30CC,0x30CC,0x30CC,0x30EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x312D,0x290D,0x292D,0x292D,0x290D,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x392D,0x392D,0x392D,0x312D,0x392D,0x312D,0x392D,0x312D,0x312D,0x312E,0x394E,0x392E,0x392E,0x392E,0x312D,0x392E,0x392E,0x312E,0x312E,0x312E,0x392E,0x392E,0x394E,0x392E,0x392E,0x394E,0x392E,0x394E,0x392E,0x392E,0x392E,0x394E,0x392E,0x392E,0x394E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394E,0x394E,0x394E,0x394F,0x394F,0x394F,0x394F,0x394F,0x394F,0x394F,0x414F,0x414F,0x414F,0x414E,0x414E,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x416F,0x416F,0x416F,0x496F,0x416F,0x496F,0x4970,0x4990,0x4970,0x4970,0x4990,0x4990,0x4990,0x4990,0x5191,0x5191,0x5191,0x51B1,0x5191,0x51B1,0x51B1,0x51D1,0x51D2,0x51D2,0x51D2,0x51D2,0x51D2,0x59D2,0x59D2,0x59D2,0x59D2,0x59D2,0x59D2,0x59D2,0x61B2,0x69B2,0x8234,0x9275,0x9A55,0x9A34,0xA214,0xA214,0xA214,0xA214,0xA214,0xA234,0xA234,0x9A34,0x9A14,0x9A35,0x9215,0x9215,0x8A15,0x7A14,0x7214,0x6254,0x5AD5,0x4B56,0x7D9E,0x867F,0x6E5F,0x665F,0x4E1F,0x253C,0x257D,0x25BE,0x25DF,0x1DDF,0x15DF,0x15FF,0x0DFF,0x0DFF,0x05FF,0x061F,0x061F,0x061F,0x063F,0x063F,0x063F,0x065F,0x065F,0x065F,0x069F,0x06DF,0x06DF,0x071F,0x073F,0x073F,0x073F,0x0F3F,0x0F5F,0x1F5F,0x371F,0x4EDF,0x8EFF,0x4333,0x72F4,0x8253,0x9233,0xA213,0xAA13,0xA9F3,0xA9F4,0xAA14,0xA1F4,0x9214,0x79B2,0x6171,0x5991,0x5171,0x5171,0x5171,0x4970,0x4970,0x4970,0x4170,0x4170,0x414F,0x414F,0x414F,0x414F,0x394F,0x394E,0x392E,0x392E,0x392E,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x312D,0x292D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x292C,0x292C,0x292C,0x290C,0x292C,0x290C,0x292C,0x290C,0x292C,0x292C,0x292C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x310C,0x290C,0x310C,0x290C,0x28EC,0x310C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x210D,0x290D,0x290D,0x210D,0x292D,0x210D,0x210D,0x290D,0x290D,0x28ED,0x28ED,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x292E,0x210E,0x210E,0x210E,0x210F,0x212F,0x1930,0x1930,0x1931,0x1951,0x1972,0x1993,0x1993,0x1193,0x1193,0x1193,0x1172,0x1172,0x1151,0x1950,0x192F,0x214F,0x212E,0x212D,0x292D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x210D,0x290D,0x290C,0x290D,0x290C,0x290C,0x28EC,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C, + 0x91B1,0x99B1,0x99B1,0x99D1,0x99D1,0x99D1,0x99D1,0x99D1,0x99D1,0x99D1,0x99D1,0x99B1,0x99D2,0x99D2,0x99B2,0x99B2,0x99B1,0x99B1,0x99D2,0x99B2,0x99D2,0x99D2,0x99B1,0x91B1,0x91D1,0x91B1,0x91D1,0x91D1,0x91F2,0x9A12,0x9A12,0x91F2,0x91F2,0x89D1,0x89F2,0x8A12,0x9232,0x9253,0x9273,0x9253,0x9273,0x8232,0x71B1,0x614F,0x50ED,0x488C,0x408B,0x388B,0x386B,0x308B,0x38AC,0x30AC,0x30CC,0x30EC,0x30CC,0x30EC,0x30EC,0x30EC,0x310C,0x310C,0x310C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x310D,0x290D,0x290D,0x290C,0x290D,0x290C,0x292C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x292D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290C,0x290C,0x290D,0x292D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290C,0x292C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x312D,0x290D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x392D,0x392D,0x312D,0x312D,0x312D,0x312D,0x392D,0x312D,0x312D,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x312E,0x394E,0x394E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394E,0x394F,0x394F,0x394F,0x394E,0x394E,0x414E,0x414E,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x414F,0x496F,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4990,0x4990,0x5191,0x4991,0x5191,0x5191,0x51B1,0x51B1,0x51B1,0x51B1,0x51D2,0x59D2,0x51D2,0x51D2,0x59D2,0x59D2,0x59D2,0x59D2,0x61F2,0x61D2,0x61D2,0x69B2,0x69B2,0x79D3,0x9A34,0x9A14,0xA214,0xAA14,0xAA14,0xAA14,0xAA14,0xAA14,0xAA14,0xA214,0xA214,0xA214,0xA214,0x9A35,0x9A35,0x9255,0x8A55,0x8255,0x7275,0x6AB6,0x5294,0x5B77,0x859F,0x863F,0x767F,0x6EBF,0x4E3F,0x35BD,0x2D9D,0x25BE,0x1DBE,0x1DDE,0x15FE,0x0DFF,0x0E1F,0x061F,0x0E3F,0x063F,0x063F,0x063F,0x065F,0x065F,0x067F,0x069F,0x06BF,0x06DF,0x06FF,0x071F,0x075F,0x075F,0x075F,0x0F5F,0x0F7F,0x1F5F,0x271F,0x46DE,0x7F3F,0x5CB8,0x4A51,0x7A73,0x8A33,0xA234,0xAA14,0xA9F4,0xA9D3,0xAA14,0xA1F4,0x99F3,0x89F3,0x6971,0x6191,0x5971,0x5171,0x5171,0x4970,0x4990,0x4990,0x4990,0x4170,0x416F,0x414F,0x414F,0x414F,0x394F,0x394E,0x394E,0x392E,0x392E,0x392E,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x292C,0x292C,0x290C,0x292C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x310C,0x310C,0x290C,0x290C,0x290C,0x310C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x292E,0x292E,0x292E,0x210E,0x210E,0x210E,0x212F,0x212F,0x2150,0x1950,0x1951,0x1971,0x1972,0x1971,0x1971,0x1971,0x1130,0x1950,0x1950,0x194F,0x192E,0x212E,0x210D,0x210C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x28EC,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x20EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C, + 0x91B1,0x91B1,0x99B1,0x99B1,0x99D1,0x91B1,0x99D1,0x99D1,0x99D1,0x99D1,0x99D2,0x99D1,0x99D1,0x99D2,0x99B1,0x99B1,0x99B2,0x99D2,0x99B2,0x99B2,0x99D2,0x99B1,0x99B1,0x99B1,0x99B1,0x99D1,0x91B1,0x99D1,0x99D2,0x99D2,0x99F2,0x91D2,0x99F2,0x91D2,0x91F2,0x91D2,0x91F2,0x89D1,0x91F2,0x91F2,0x9233,0x9212,0x9253,0x9253,0x8A53,0x8A53,0x8253,0x71F1,0x614F,0x50ED,0x48CD,0x388C,0x306B,0x308B,0x308B,0x30AC,0x30CC,0x30CC,0x30CC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x28EC,0x290C,0x290D,0x28EC,0x290D,0x290D,0x28EC,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x292C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x292C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x312D,0x310D,0x312D,0x312D,0x312D,0x312D,0x312D,0x392E,0x392E,0x312D,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394F,0x394F,0x394F,0x394F,0x394F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x414F,0x414F,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4990,0x4990,0x4990,0x4990,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x51D2,0x59D2,0x59D2,0x59D2,0x59D2,0x61D2,0x61D2,0x61D2,0x61B1,0x6991,0x7191,0x81B2,0x9A14,0xA214,0xAA14,0xAA14,0xB214,0xAA14,0xA9F4,0xAA14,0xAA14,0xAA14,0xAA14,0xAA14,0xA214,0xA234,0x9A34,0x9A35,0x9255,0x8A35,0x8255,0x7A75,0x6A95,0x52D5,0x5397,0x5C79,0x7E5F,0x767F,0x5E5F,0x4DFF,0x463F,0x3E5F,0x2E3F,0x15DD,0x15FE,0x161E,0x0E1F,0x0E3F,0x0E3F,0x065F,0x065F,0x065F,0x067F,0x069F,0x069F,0x06DF,0x06DF,0x071F,0x073F,0x073F,0x075F,0x077F,0x0F7F,0x0F5F,0x175F,0x2F5F,0x36DE,0x66FF,0x7E3D,0x31EF,0x7AD4,0x8A53,0x9A33,0xA1F3,0xA9F4,0xA9F4,0xA9F4,0xA1F4,0xA214,0x9214,0x6951,0x6171,0x5971,0x5171,0x5171,0x4970,0x4990,0x4970,0x4170,0x4170,0x4190,0x394F,0x414F,0x394F,0x414F,0x392E,0x392E,0x392E,0x392E,0x392E,0x310D,0x392E,0x392E,0x312D,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290C,0x292C,0x290C,0x290C,0x292C,0x292C,0x290C,0x292C,0x290C,0x292C,0x292C,0x290C,0x290C,0x292D,0x292C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x292C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x292D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x310D,0x290C,0x28EC,0x310D,0x310C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x292E,0x290E,0x292E,0x210E,0x212F,0x212F,0x212F,0x212F,0x192F,0x1930,0x1930,0x1950,0x1950,0x192F,0x192F,0x192E,0x192E,0x212E,0x210D,0x212D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C, + 0x99D1,0x99D1,0x99D1,0x99D1,0x99D1,0x99D1,0x91B1,0x99B1,0x99D1,0x99D1,0x91D1,0x99D2,0x99D2,0x99D2,0x99B2,0x99D2,0x99D2,0x99B1,0x99B2,0x99B2,0x99B2,0x99D2,0x99B1,0x99B1,0x9191,0x99B1,0x99B1,0x99D2,0x99D1,0x99D2,0x99D2,0x99B1,0x99F2,0x99D2,0x91D2,0x91D2,0x91D1,0x91D2,0x91D2,0x91D2,0x91F2,0x91F2,0x91F2,0x91F2,0x89F2,0x8A12,0x8A32,0x8A33,0x8A53,0x8A53,0x8A73,0x8253,0x79F1,0x618F,0x512E,0x40CC,0x388B,0x306A,0x306B,0x308B,0x30AB,0x30AC,0x30AC,0x30AC,0x30CC,0x30EC,0x30CC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x310C,0x28EC,0x310D,0x310C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x292D,0x290C,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290C,0x290D,0x290C,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x292C,0x292D,0x292D,0x292D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x392D,0x310D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312E,0x312D,0x312E,0x312E,0x312E,0x392E,0x392E,0x312E,0x392E,0x392E,0x392E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394F,0x414F,0x414F,0x394F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x4170,0x4170,0x4970,0x4970,0x4970,0x4950,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4990,0x4990,0x5191,0x5191,0x51B1,0x51B1,0x51B1,0x51D2,0x51D1,0x59D2,0x59D2,0x59D2,0x59B2,0x61D2,0x61B2,0x61D2,0x69B2,0x6991,0x7992,0x8172,0x99F4,0xAA34,0xAA14,0xB214,0xB214,0xB214,0xB214,0xAA14,0xAA14,0xAA14,0xAA14,0xAA14,0xA214,0xA214,0x9A34,0x9A35,0x9235,0x9255,0x8255,0x7A55,0x6A95,0x5AB5,0x4AD5,0x3293,0x3315,0x54BB,0x5D9E,0x55FF,0x567F,0x4EBF,0x46BF,0x265E,0x161E,0x0E3E,0x0E5F,0x0E5F,0x065F,0x067F,0x069F,0x069F,0x069F,0x06BF,0x06DF,0x06FF,0x071F,0x073F,0x075F,0x075F,0x077F,0x077F,0x0F7F,0x175F,0x1F3F,0x371F,0x4EDE,0x871F,0x2A50,0x6293,0x8273,0x9A53,0xA213,0xA9F4,0xA9D3,0xA9D3,0xA1F4,0xA214,0x9A35,0x7171,0x6151,0x6191,0x5150,0x5170,0x4970,0x4990,0x4970,0x4970,0x4170,0x414F,0x414F,0x414F,0x414F,0x394F,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x310D,0x310D,0x312E,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x28EC,0x28EC,0x310C,0x310C,0x290C,0x310D,0x290C,0x290D,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290D,0x290D,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x290D,0x290D,0x292E,0x290D,0x292E,0x212E,0x212E,0x212E,0x210E,0x212E,0x212F,0x212F,0x192E,0x192E,0x190E,0x210E,0x212E,0x210D,0x212D,0x210D,0x290C,0x290C,0x290C,0x290C,0x312C,0x290C,0x310C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x290D,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC, + 0x99D2,0x99D1,0x99D1,0x99D1,0x99D1,0x99D1,0x91B1,0x99F2,0x91B1,0x91D1,0x99D1,0x91D1,0x91B1,0x91B1,0x99D2,0x91B1,0x99D2,0x99B2,0x99B2,0x99B2,0x99D2,0x99B2,0x99D2,0x99B1,0x99B1,0x99B2,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x91D2,0x91D2,0x91D2,0x91F2,0x91D2,0x91F2,0x91F2,0x91F2,0x91F2,0x9212,0x8A12,0x8A12,0x8A12,0x8A53,0x8A73,0x8A73,0x8A73,0x8252,0x71F1,0x69B0,0x590E,0x408C,0x302A,0x302A,0x304A,0x386B,0x308B,0x308B,0x30AC,0x30AC,0x30CC,0x30CC,0x30CC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x292D,0x290C,0x292D,0x290C,0x292D,0x292D,0x290C,0x292C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x314E,0x394E,0x392E,0x392D,0x312D,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394F,0x394F,0x394F,0x394F,0x394F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x4170,0x4170,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4990,0x4990,0x5191,0x5191,0x51B1,0x51B1,0x51B1,0x51B1,0x51B1,0x59B1,0x59B1,0x59B2,0x59B2,0x59B2,0x61D2,0x61D2,0x69B2,0x69B2,0x71B2,0x7171,0x7951,0x91B3,0xAA34,0xAA14,0xAA14,0xB214,0xB214,0xB1F4,0xB1F4,0xB1F4,0xB1F4,0xA9F4,0xA9F4,0xAA14,0xA214,0xA214,0x9A14,0x9A35,0x9234,0x8A55,0x8255,0x7275,0x6A74,0x5A94,0x5294,0x3A93,0x2AD4,0x2334,0x2BB6,0x3499,0x665F,0x569F,0x469F,0x367F,0x265F,0x1E5F,0x165F,0x0E7F,0x0E9F,0x0EBF,0x06BF,0x06BF,0x06DF,0x071F,0x073F,0x075F,0x075F,0x075F,0x077F,0x077F,0x0F9F,0x177F,0x1F5F,0x2F1F,0x3E9D,0x877F,0x4395,0x5252,0x82B4,0x8A13,0x9A13,0xA9F3,0xA9F4,0xA9F4,0xA9F4,0xA1F4,0x9A34,0x89D3,0x6951,0x6171,0x5171,0x5170,0x5191,0x4970,0x4970,0x4970,0x4170,0x414F,0x414F,0x414F,0x414F,0x414F,0x392E,0x392E,0x392E,0x392E,0x392E,0x390D,0x392E,0x310D,0x312E,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x292C,0x290C,0x292C,0x292C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290C,0x290C,0x290D,0x290D,0x290D,0x310D,0x310D,0x310C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x210D,0x210D,0x210E,0x210E,0x212E,0x210D,0x212E,0x210E,0x210D,0x210D,0x292D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x28EC,0x290D,0x28EC,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC, + 0x9991,0x99B1,0x99D1,0x99D2,0x99D1,0x99D2,0x99D2,0x91B1,0x91D1,0x91B1,0x99D2,0x91D1,0x91B1,0x99D2,0x91B1,0x99D2,0x91B1,0x99B2,0x99B1,0x99D2,0x99B2,0x99B2,0x99B1,0x99B1,0x99B1,0x99B2,0x99B2,0x99B2,0x99D2,0x99B2,0x99D2,0x99B1,0x99D2,0x99D2,0x99D2,0x99D2,0x99B2,0x99B2,0x99D2,0x99D2,0x99F2,0x91D2,0x99D2,0x91D2,0x91D2,0x91F2,0x91D1,0x91D2,0x9212,0x9A33,0x9212,0x9212,0x89F2,0x8A12,0x8A12,0x8A12,0x8A32,0x8A32,0x8A33,0x8A33,0x8A33,0x81F2,0x79D1,0x7190,0x50AD,0x406B,0x408C,0x386B,0x304B,0x304A,0x306B,0x306B,0x308B,0x30AC,0x30CC,0x30EC,0x30EC,0x310C,0x310C,0x310C,0x310C,0x290C,0x310D,0x28EC,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x310D,0x310D,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x292D,0x290C,0x292D,0x292D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x292D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290C,0x310D,0x312D,0x290C,0x290C,0x310D,0x312D,0x310D,0x310D,0x310D,0x312D,0x310C,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x312D,0x312D,0x312D,0x312E,0x312D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312D,0x310D,0x312E,0x312E,0x312E,0x312D,0x310D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x310D,0x312E,0x312E,0x392E,0x392E,0x312E,0x312E,0x392E,0x392E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394E,0x394E,0x394F,0x394F,0x394F,0x414F,0x392F,0x414F,0x414F,0x414F,0x414F,0x414F,0x4170,0x414F,0x4170,0x416F,0x4990,0x416F,0x416F,0x416F,0x4170,0x4970,0x4970,0x4970,0x4991,0x4991,0x5191,0x5171,0x5171,0x5191,0x51B2,0x51B2,0x5191,0x5191,0x59B1,0x59B1,0x61B2,0x61B2,0x69B2,0x6151,0x6951,0x7992,0x8172,0x99F4,0xA214,0xA9D3,0xA9F4,0xB1F4,0xA9B3,0xA9D3,0xA9D3,0xB1F4,0xA9B3,0xA9D3,0xA1B3,0xA1D3,0xA1D3,0xAA14,0xAA34,0x9A14,0x9A34,0x9234,0x8213,0x8254,0x8295,0x82F6,0x72F6,0x62D5,0x4232,0x31F1,0x42D4,0x649A,0x7E3F,0x6E9F,0x56BF,0x3E9F,0x265E,0x165E,0x167E,0x0E9F,0x0E9F,0x06DF,0x0EFF,0x071F,0x073F,0x075F,0x077F,0x077F,0x079F,0x079F,0x0F9F,0x179F,0x1F7F,0x2F3F,0x3EDE,0x6EFF,0x6D1B,0x4231,0x82D4,0x9274,0x9A13,0xAA14,0xA1D3,0xA9F4,0xA9F4,0xA214,0xA214,0x9213,0x6951,0x6171,0x5971,0x5170,0x5170,0x4970,0x4970,0x4970,0x4170,0x4170,0x414F,0x414F,0x414F,0x394F,0x394F,0x394F,0x392E,0x392E,0x392E,0x390D,0x390E,0x312E,0x312E,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290C,0x290D,0x310D,0x292D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x210C,0x290D,0x290D,0x210C,0x210C,0x210C,0x210C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290D,0x290D,0x290D,0x290D,0x20ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x212D,0x212D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x28EC,0x28EC,0x290C,0x290D,0x290D,0x28EC,0x28EC,0x28EC,0x290D,0x28EC,0x290D,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x20EC,0x28EC,0x28EC, + 0x9971,0x9971,0x9991,0x99D1,0x99B1,0x99D1,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99F2,0x91D1,0x99D2,0x99D2,0x91B1,0x91D2,0x91B1,0x99B2,0x99B2,0x99B1,0x99B1,0x99B2,0x99B2,0x99B1,0x99B2,0x99B1,0x99D2,0x99B2,0x99B2,0x99D2,0x99D2,0x99B2,0x9191,0x99D2,0x99B2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x91D2,0x91D2,0x91F2,0x91D2,0x91D2,0x91D2,0x91D2,0x91F2,0x91F2,0x91F2,0x91F2,0x9212,0x91F2,0x9212,0x91F2,0x91F2,0x9213,0x9213,0x9212,0x8A12,0x8212,0x81F2,0x71D1,0x616F,0x50ED,0x48AC,0x384B,0x302A,0x304A,0x306A,0x308B,0x30AB,0x30CC,0x30CC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x310C,0x310C,0x310C,0x30EC,0x28EC,0x310C,0x28EC,0x310D,0x310C,0x290C,0x28EC,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290D,0x290C,0x292D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290D,0x290C,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x292D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x292D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x292D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x292D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x292D,0x290C,0x290C,0x290C,0x312D,0x312D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x312D,0x310D,0x310D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x312D,0x310D,0x310D,0x312D,0x312D,0x310D,0x312D,0x312E,0x312E,0x310D,0x312E,0x312E,0x312D,0x310D,0x312D,0x312E,0x310D,0x310D,0x310D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x394E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394E,0x394E,0x392F,0x394F,0x392F,0x392F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x416F,0x416F,0x416F,0x416F,0x416F,0x4170,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4971,0x5171,0x5191,0x5191,0x59B2,0x5191,0x5191,0x5191,0x5991,0x5991,0x61B2,0x6192,0x6171,0x6972,0x6951,0x7972,0x89D3,0x99F4,0xAA14,0xA9F4,0xA9D4,0xA9D3,0xB1F4,0xA9D3,0xA9D3,0xB1F4,0xA9B3,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xA9F3,0xA9F3,0xAA13,0x99D3,0x99F3,0x9A13,0x9214,0x9A75,0x9254,0x8A54,0x8AB5,0x7A74,0x6213,0x39B0,0x3A52,0x5C79,0x7E7F,0x6EDF,0x4EBF,0x367F,0x1E5E,0x167E,0x0E9E,0x0EDF,0x0EFF,0x0F1F,0x073F,0x073F,0x077F,0x077F,0x077F,0x077F,0x077F,0x0F9F,0x175F,0x275F,0x3EFF,0x56BE,0x865F,0x3250,0x7AF4,0x8A33,0x9A13,0xA1D3,0xA9F4,0xA9F4,0xAA14,0xA1F4,0xA214,0x9A34,0x7991,0x6171,0x6191,0x5170,0x5191,0x4970,0x4970,0x4970,0x4970,0x4970,0x414F,0x414F,0x414F,0x394F,0x394F,0x392E,0x394E,0x392E,0x392E,0x392E,0x392E,0x310D,0x312E,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290C,0x292D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x28EC,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x210D,0x290D,0x290D,0x290D,0x290D,0x210C,0x290C,0x290C,0x210C,0x290C,0x290C,0x292C,0x292C,0x312C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x210D,0x290D,0x290D,0x290D,0x290C,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x28EC,0x290D,0x290D,0x290D,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290D,0x28EC,0x28EC,0x290D,0x28EC,0x290D,0x28EC,0x28EC,0x28EC,0x290D,0x28EC,0x28EC,0x290D,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x20EC,0x28EC,0x28EC,0x20EC,0x28CC,0x28EC,0x28EC,0x28EC, + 0x99B1,0x9991,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99D2,0x99D2,0x91B1,0x91B1,0x99D2,0x91B2,0x99D2,0x99D2,0x91D1,0x91B1,0x99D2,0x99B2,0x99D2,0x99B1,0x99D2,0x99D2,0x99B1,0x99B1,0x99D2,0x99B1,0x9191,0x99B1,0x99B1,0x99B2,0x99D2,0x99B2,0x99B2,0x99B1,0x99D2,0x91B1,0x99D2,0x99D2,0x99D2,0x91B2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x91D2,0x91D2,0x99D2,0x91D2,0x99D2,0x91D2,0x99D2,0x91D2,0x91F2,0x99F2,0x99F2,0x99F2,0x99F2,0x99F3,0x99F2,0x91F2,0x9212,0x8A12,0x8A12,0x8A33,0x8A32,0x8A53,0x8A53,0x8232,0x79F1,0x698F,0x50ED,0x408B,0x386B,0x304A,0x306A,0x306B,0x308B,0x30CC,0x30CC,0x30CC,0x30CC,0x30EC,0x30CC,0x30EC,0x30EC,0x28EC,0x310D,0x30EC,0x310C,0x30EC,0x310D,0x310D,0x28EC,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x292D,0x28EC,0x290C,0x290C,0x290C,0x290D,0x312D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x312D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x292D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x28EC,0x290C,0x310D,0x310D,0x290C,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x290D,0x290D,0x310D,0x310D,0x290D,0x312D,0x312D,0x310D,0x310D,0x310D,0x312D,0x312D,0x312E,0x312D,0x312E,0x310D,0x310D,0x310D,0x310D,0x312E,0x312D,0x312E,0x312E,0x312E,0x310D,0x312E,0x312E,0x312E,0x312E,0x310E,0x312E,0x312E,0x312E,0x312D,0x312D,0x312E,0x312D,0x312E,0x312D,0x312E,0x312D,0x312E,0x312E,0x312E,0x312E,0x312E,0x394E,0x312E,0x312E,0x312D,0x312D,0x312E,0x392E,0x312E,0x392E,0x310E,0x392E,0x310E,0x310E,0x312E,0x392E,0x392E,0x392E,0x394E,0x394E,0x392F,0x392E,0x392E,0x394F,0x394F,0x394F,0x394E,0x394E,0x394F,0x414F,0x414F,0x416F,0x414F,0x414F,0x416F,0x416F,0x416F,0x416F,0x4990,0x4970,0x4970,0x4970,0x4970,0x4971,0x5191,0x5191,0x5171,0x5171,0x5171,0x5191,0x5191,0x5991,0x5991,0x5991,0x5991,0x6192,0x6992,0x6972,0x6971,0x7151,0x89F3,0x9A14,0xB276,0xA1F4,0xA9F4,0xA9D3,0xA9D3,0xB1F4,0xA9D3,0xB1F4,0xB1D3,0xA9D3,0xB1D3,0xB1D3,0xA9B2,0xA9D3,0xB1F4,0xA9F3,0xA9F3,0xA1F3,0x99D3,0x99F3,0xA254,0x9A34,0x9A54,0x9254,0x8254,0x7A94,0x6A74,0x39B0,0x3AF4,0x757D,0x6E5F,0x5EBF,0x3E9F,0x2E9E,0x1E9E,0x16BE,0x0EFF,0x0F1F,0x0F5F,0x075F,0x077F,0x077F,0x079F,0x079F,0x079F,0x0F9F,0x177F,0x1F5F,0x373F,0x4EBE,0x86DF,0x3AB2,0x72B3,0x8A53,0xA254,0xAA14,0xAA14,0xA9F3,0xA9F3,0xAA14,0xA234,0x9A34,0x81B2,0x6130,0x6191,0x5970,0x5991,0x5170,0x4970,0x4970,0x4970,0x416F,0x416F,0x414F,0x414F,0x394F,0x394E,0x394E,0x394E,0x392E,0x392E,0x392E,0x392E,0x392E,0x312E,0x312E,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292C,0x292D,0x290C,0x292D,0x292D,0x290C,0x292D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x210C,0x292D,0x290D,0x290D,0x292D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x28ED,0x28EC,0x290C,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x28EC,0x28EC,0x28EC,0x290D,0x290D,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290D,0x28EC,0x290D,0x290D,0x28EC,0x28EC,0x28EC,0x290D,0x290D,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290D,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28CC,0x28EC,0x28EC, + 0xA1B1,0xA1B1,0xA1B1,0xA1B1,0x99B1,0x9991,0x99B1,0x9991,0x9191,0x99B1,0x91B1,0x99D2,0x99D2,0x99D2,0x99D2,0x99B2,0x99D2,0x99D2,0x99B1,0x99D2,0x99D2,0x99B2,0x99B1,0x99B2,0x99B1,0x99B1,0x99D2,0x99B2,0x99B1,0x99B1,0x9191,0x99B2,0x91B1,0x99B2,0x99B2,0x99B2,0x99D2,0x99D2,0x91B2,0x91B1,0x99B2,0x91B1,0x91B1,0x99D2,0x99D2,0x91B1,0x99D2,0x99D2,0x91B2,0x99D2,0x99B2,0x99D2,0x99D2,0x91B2,0x99D2,0x99D2,0x99D2,0x99D2,0x99F2,0x99D2,0x99F2,0x99D2,0x99D2,0x99F2,0x9A12,0x9212,0x9212,0x91F2,0x9212,0x89F2,0x9212,0x8A12,0x9253,0x8A32,0x9273,0x8A53,0x7A12,0x69B0,0x594E,0x48CC,0x386B,0x304A,0x304A,0x308B,0x308B,0x308B,0x30AB,0x30AB,0x30AB,0x30CC,0x30CC,0x30CC,0x30EC,0x30EC,0x310D,0x30EC,0x30EC,0x310D,0x28EC,0x310D,0x28EC,0x290C,0x290C,0x290C,0x290C,0x312D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x28EC,0x310C,0x310D,0x310D,0x28EC,0x310C,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x290D,0x290D,0x290D,0x312D,0x310D,0x310D,0x290D,0x310D,0x310D,0x312D,0x310D,0x310D,0x312D,0x312D,0x312D,0x310D,0x310D,0x312D,0x312E,0x312E,0x312E,0x310E,0x312E,0x312E,0x310E,0x310E,0x312E,0x310D,0x312E,0x312E,0x312E,0x312E,0x312D,0x312D,0x312E,0x312D,0x312D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312D,0x312D,0x312D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x310E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392F,0x392E,0x392E,0x392E,0x392E,0x394E,0x394E,0x394E,0x394E,0x414E,0x414E,0x414F,0x414F,0x414F,0x414F,0x414F,0x416F,0x416F,0x496F,0x496F,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x5171,0x5171,0x5191,0x5191,0x5191,0x5191,0x5171,0x5991,0x61B2,0x6192,0x6192,0x6992,0x6971,0x7171,0x8192,0x99F4,0xA214,0xAA35,0xAA14,0xA1B3,0xA9F4,0xA9D3,0xA9D4,0xB1F4,0xB1F4,0xB1F3,0xB1D3,0xB1D3,0xA9D3,0xB1D3,0xB1F4,0xB1F3,0xA9D3,0xA9D3,0xA9D3,0xA1F3,0xA1F3,0xA214,0xA234,0x9A34,0x8A33,0x8A74,0x7AB5,0x5232,0x29D0,0x5479,0x765F,0x5E7F,0x4EFF,0x36DF,0x26DE,0x16FE,0x171F,0x0F3F,0x0F5F,0x0F7F,0x079F,0x077F,0x079F,0x0FBF,0x0F9F,0x179F,0x1F7F,0x2F5F,0x46FF,0x76FF,0x4394,0x6A93,0x8A53,0x9A13,0xAA14,0xA1D3,0xA9F3,0xA9F4,0xAA14,0xA214,0xA234,0x9214,0x6930,0x6991,0x5970,0x5170,0x5190,0x4970,0x4970,0x4970,0x4170,0x416F,0x414F,0x414F,0x414F,0x394F,0x394E,0x394E,0x392E,0x392E,0x392E,0x392E,0x392E,0x312E,0x312D,0x310D,0x312D,0x312D,0x312D,0x310D,0x310D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x292C,0x292C,0x292C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x292D,0x290D,0x290C,0x292D,0x290C,0x290C,0x292D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290C,0x28EC,0x290D,0x28EC,0x28EC,0x290D,0x28EC,0x290D,0x28EC,0x290C,0x28EC,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290D,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28ED,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC, + 0x9971,0x9991,0xA1B1,0xA1B2,0x9991,0x99B2,0x99B1,0x99B1,0x99B2,0x99B1,0x99B1,0x9191,0x99B1,0x9191,0x9191,0x99B2,0x99B2,0x99D2,0x99B2,0x91B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99D2,0x99B1,0x91B1,0x91B1,0x9191,0x91B1,0x91B1,0x91B1,0x99D2,0x99B1,0x99B2,0x99B2,0x99D2,0x99D2,0x99D2,0x99D2,0x99B2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D1,0x99D2,0x99B1,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x91B2,0x99D2,0x91B2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x91D2,0x99F2,0x99F2,0x91F2,0x91F2,0x91F2,0x91F2,0x91F2,0x9213,0x9232,0x9212,0x9212,0x9233,0x9232,0x8A32,0x9274,0x9273,0x8232,0x79F1,0x71D1,0x616F,0x510D,0x40AC,0x386B,0x306B,0x306A,0x306A,0x308B,0x308B,0x30CC,0x30EC,0x30CC,0x30CC,0x30EC,0x30EC,0x30EC,0x30EC,0x310C,0x28EC,0x310C,0x310C,0x310C,0x28EC,0x310C,0x310D,0x290D,0x290D,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290D,0x310D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x292D,0x292D,0x292D,0x290C,0x292D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x28EC,0x290C,0x28EC,0x310D,0x310D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x292D,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x292D,0x290C,0x290C,0x290C,0x292D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x292D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x292D,0x290D,0x292D,0x292D,0x292D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x292C,0x292D,0x290C,0x290C,0x292C,0x292C,0x292D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x292D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x312D,0x290D,0x310D,0x310D,0x310D,0x310C,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x290D,0x312D,0x310D,0x290D,0x310D,0x312D,0x310D,0x312D,0x310D,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x312D,0x312D,0x310D,0x312E,0x312E,0x310E,0x310E,0x310D,0x310D,0x312E,0x312D,0x312E,0x312E,0x310D,0x310D,0x310D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x312E,0x310D,0x310D,0x310D,0x310D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394E,0x394E,0x392E,0x392E,0x414E,0x414E,0x414E,0x414E,0x414F,0x414F,0x416F,0x414F,0x496F,0x496F,0x414F,0x4970,0x4970,0x4970,0x4970,0x4990,0x4970,0x4970,0x4971,0x5191,0x5191,0x5191,0x5191,0x5191,0x5191,0x5171,0x5991,0x5991,0x61B2,0x69B2,0x6972,0x6972,0x7151,0x89D3,0x99F4,0xA214,0xAA35,0xA9D3,0xA9F4,0xA9B3,0xA9D3,0xB1D4,0xB1B3,0xB1D3,0xB1B3,0xB1B3,0xB1D3,0xB1F4,0xA9D3,0xB1D3,0xA9D3,0xA9D3,0xA9F4,0xA9F3,0xA9F3,0xAA14,0xAA34,0x9A34,0x9233,0x8A33,0x7A74,0x6273,0x318F,0x53D7,0x8E9F,0x669F,0x4E9E,0x36DF,0x26FE,0x171F,0x173F,0x0F5F,0x0F7F,0x077F,0x079F,0x079F,0x079F,0x0F9F,0x179F,0x1F7F,0x273F,0x3F1F,0x6EFF,0x5457,0x5A52,0x8A53,0x9A34,0xA213,0xA1D3,0xA9D3,0xA1D3,0xAA14,0xA1F4,0xA214,0xA255,0x7971,0x6150,0x5950,0x5170,0x5170,0x4970,0x4970,0x496F,0x416F,0x416F,0x416F,0x414F,0x394F,0x394F,0x394F,0x394E,0x394E,0x392E,0x392E,0x392E,0x310D,0x312E,0x312D,0x312D,0x312D,0x310D,0x290D,0x310D,0x312D,0x310D,0x290D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x292C,0x292C,0x292C,0x292C,0x290C,0x292D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x292D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x28EC,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x290C,0x28EC,0x290D,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x20EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC, + 0x9971,0x9971,0x9991,0x9991,0x9991,0x9971,0x9991,0x99B1,0x99B1,0x9991,0x99B1,0x9991,0x99B1,0x9991,0x9991,0x9991,0x9991,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99D2,0x91B1,0x91B1,0x99D2,0x91B1,0x91B1,0x99B1,0x99B1,0x99D2,0x99D2,0x99D2,0x91B1,0x99D2,0x99B2,0x99D2,0x99B2,0x99B1,0x99B1,0x99D1,0x99B1,0x99D2,0x99D2,0x99D2,0x99D2,0x99B2,0x99B2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99B2,0x99B2,0x99B2,0x99D2,0x99F2,0x99D2,0x91D2,0x99F2,0x91D2,0x91D2,0x91F2,0x91F2,0x91D2,0x91F2,0x91F2,0x9A12,0x99F2,0x91F2,0x91F2,0x9212,0x9212,0x9233,0x9233,0x8A33,0x8A33,0x8A53,0x8232,0x71F1,0x6990,0x594E,0x40CC,0x408C,0x386B,0x306B,0x308B,0x286A,0x308B,0x30AB,0x30AC,0x30CC,0x30CC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x310D,0x310C,0x30EC,0x310C,0x310C,0x28EC,0x30EC,0x28EC,0x290C,0x290C,0x290C,0x310D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292D,0x28EC,0x290C,0x290C,0x290C,0x292D,0x292D,0x292D,0x290C,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290C,0x28EC,0x28EC,0x290D,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290D,0x290D,0x292D,0x290C,0x292D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x292C,0x292D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x292D,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290D,0x290D,0x290C,0x292C,0x292D,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x292C,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x290C,0x292D,0x290C,0x290C,0x292C,0x290C,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292D,0x292D,0x290C,0x290C,0x292C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x292D,0x290C,0x290C,0x292C,0x290D,0x292D,0x292C,0x292C,0x292C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292C,0x290C,0x292D,0x290C,0x290C,0x292C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x312D,0x312D,0x310D,0x312D,0x290D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312E,0x310E,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x312D,0x310D,0x310D,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x312D,0x312E,0x312D,0x312D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x310E,0x312E,0x392E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x394E,0x392E,0x392E,0x392E,0x392E,0x394E,0x414F,0x412E,0x414F,0x414F,0x416F,0x414F,0x414F,0x414F,0x416F,0x4970,0x4970,0x4970,0x4970,0x4950,0x4970,0x4970,0x4970,0x5191,0x4970,0x5191,0x5191,0x5191,0x5191,0x5191,0x5991,0x5991,0x5991,0x61B2,0x6192,0x6992,0x7192,0x7151,0x8192,0x91D3,0xA234,0xAA14,0xAA14,0xA9F4,0xA9B3,0xA9D3,0xB1D4,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xA9D3,0xA9B3,0xB1F4,0xA9D3,0xAA13,0xA1F3,0xA214,0x9A13,0x8A33,0x8253,0x6A53,0x39B0,0x4313,0x8E7F,0x6E9F,0x4E9F,0x36FE,0x273F,0x1F3F,0x175F,0x0F7F,0x0F7F,0x079F,0x079F,0x07BF,0x0F9F,0x0F9F,0x179F,0x277F,0x36FF,0x5EDF,0x6D7B,0x5272,0x8253,0x9233,0xA214,0xA1F4,0xA1D3,0xAA14,0xA9F3,0xAA14,0xA214,0x9A34,0x89D2,0x6150,0x6170,0x5970,0x5170,0x5190,0x4970,0x496F,0x414F,0x416F,0x416F,0x414F,0x414F,0x394F,0x394F,0x394E,0x392E,0x392E,0x392E,0x392E,0x392E,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x290D,0x312D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x292D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x310D,0x310C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x20EC,0x20EC,0x28EC,0x290C,0x20EC,0x290C,0x28EC,0x290C,0x20EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C, + 0xA1B2,0xA1B2,0xA1B1,0xA1B1,0xA1B1,0xA1B1,0x9991,0x9991,0x9991,0x9991,0x9991,0x9971,0x9991,0x99B1,0x9991,0x9991,0x99B1,0x99B1,0x99B1,0x9991,0x9191,0x99B1,0x99B1,0x9191,0x99B1,0x99D2,0x99B1,0x91B1,0x91D1,0x91B1,0x99D2,0x99D1,0x91B1,0x99D1,0x91D1,0x99D1,0x91B1,0x99D1,0x99D2,0x99B1,0x99B2,0x99D2,0x99B1,0x99D1,0x99D2,0x99B1,0x99B1,0x99D2,0x99B2,0x99B2,0x99B1,0x99D2,0x99B2,0x99D2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99D2,0x99B2,0x99B2,0x99B2,0x99D2,0x99D2,0x99D2,0x91D2,0x91D2,0x91D2,0x99D2,0x99D2,0x99F2,0x91D2,0x99D2,0x99D2,0x99D2,0x91D2,0x91F2,0x91F2,0x9212,0x9A33,0x9233,0x9212,0x8A12,0x8A12,0x8212,0x8A53,0x8A53,0x8A53,0x8253,0x7A12,0x6190,0x512E,0x48ED,0x40AC,0x386B,0x304A,0x306B,0x306B,0x308B,0x30AC,0x38CC,0x30CC,0x30EC,0x30CC,0x30CC,0x30EC,0x30EC,0x30EC,0x310D,0x310C,0x310C,0x30EC,0x310C,0x310C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290D,0x290C,0x292D,0x292D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x310D,0x30EC,0x28EC,0x310D,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x292C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x292C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290C,0x292C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x292C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x292C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x310D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x310D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x312E,0x312E,0x312D,0x392E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392F,0x412F,0x414F,0x414F,0x414F,0x414F,0x416F,0x416F,0x414F,0x414F,0x414F,0x414F,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x4970,0x5191,0x5170,0x5170,0x5170,0x5191,0x5191,0x5991,0x5991,0x5991,0x5991,0x6171,0x6992,0x6992,0x7172,0x7971,0x89D3,0xA214,0xA1F3,0xAA14,0xB214,0xA9D3,0xB1D4,0xB1D3,0xA9B3,0xB1D3,0xA9B3,0xB1B3,0xB1B3,0xB1D3,0xB1B3,0xB1D3,0xA9D3,0xB1D3,0xA9B3,0xA9B3,0xA9D3,0xA9F3,0xA9F3,0xA213,0x9A33,0x9253,0x8A53,0x7A74,0x49F1,0x2A10,0x85FF,0x7EDF,0x56DF,0x36FE,0x271F,0x1F5F,0x177F,0x0F7F,0x0F9F,0x079F,0x07BF,0x0FBF,0x0FBF,0x179F,0x279F,0x375F,0x56FF,0x7E7F,0x4231,0x7232,0x9233,0xA234,0xA1F4,0xA9F4,0xA9F4,0xA9F4,0xA1D3,0xA214,0x9A14,0x9213,0x6930,0x6150,0x5970,0x5170,0x5190,0x5190,0x496F,0x496F,0x4170,0x416F,0x394F,0x414F,0x394F,0x394F,0x394E,0x392E,0x392E,0x392E,0x392E,0x390D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x312D,0x310D,0x290D,0x312D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x292D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x292D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x292C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x292D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x292D,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x20EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x20EC,0x28EC,0x28EC, + 0xA9D2,0xA1B2,0xA1B1,0xA1D2,0xA1B1,0xA1D2,0xA1B1,0xA1B1,0xA1B2,0x9991,0x99B1,0x9991,0x9991,0x9991,0x9971,0x9991,0x9991,0x9991,0x9991,0x99B1,0x99B1,0x9991,0x99B1,0x99B1,0x99D1,0x99B1,0x99B1,0x99D2,0x99D1,0x91D1,0x91D1,0x99D2,0x99D1,0x91B1,0x99D1,0x99D1,0x99B1,0x99B1,0x99D1,0x99B1,0x91B1,0x99B1,0x99B1,0x99B1,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B1,0x99D2,0x99B2,0x99D2,0x99B2,0x99B2,0x99D2,0x99B2,0x99D2,0x91B2,0x99D2,0x91D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x91D2,0x91F2,0x91F2,0x91F2,0x91F2,0x9212,0x9212,0x9212,0x9212,0x9232,0x8A12,0x8A32,0x8A12,0x8A53,0x8A53,0x8A53,0x8232,0x71D1,0x616F,0x592E,0x40AC,0x388B,0x386B,0x386B,0x388C,0x388C,0x30AC,0x30AC,0x30AB,0x30AC,0x30CC,0x38EC,0x38EC,0x30EC,0x310C,0x30EC,0x30EC,0x28EC,0x30EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x310D,0x28EC,0x290C,0x290C,0x28EC,0x290D,0x310D,0x290D,0x290D,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290D,0x292D,0x292D,0x292D,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x292D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292C,0x292D,0x290C,0x290C,0x292D,0x292D,0x290C,0x290C,0x290C,0x292C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292D,0x292C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x292C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x292D,0x290D,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x292D,0x292D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x292D,0x290C,0x292C,0x292D,0x292C,0x290C,0x290C,0x292C,0x292C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x312D,0x312D,0x310D,0x312D,0x312D,0x312D,0x312D,0x312E,0x312D,0x312D,0x310D,0x312E,0x310D,0x312D,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x414F,0x4150,0x4150,0x4970,0x4950,0x4970,0x4970,0x4970,0x5191,0x4970,0x4991,0x51B1,0x5191,0x5170,0x5191,0x5191,0x5991,0x6191,0x6191,0x6191,0x6992,0x7192,0x7992,0x8192,0x99F3,0xA214,0xB235,0xAA14,0xA9B3,0xA9B3,0xB1D4,0xB1F4,0xB1D3,0xB1D3,0xB1B3,0xB1D3,0xB1D3,0xB1D3,0xB1F4,0xB1D3,0xB1B3,0xB1D3,0xB1D3,0xA9B2,0xB1F3,0xAA13,0xA1F3,0xA213,0x9A33,0x8A33,0x8294,0x5A12,0x29AF,0x7D9D,0x7EFF,0x56DF,0x36DE,0x2F3F,0x1F7F,0x177F,0x0F9F,0x079F,0x07BF,0x0FBF,0x0F9F,0x17BF,0x1F9F,0x2F5F,0x471F,0x7EDF,0x4AD3,0x6A32,0x9253,0x9A13,0xA1F3,0xAA14,0xA9D3,0xA9D3,0xA9F4,0xA1F3,0xA214,0x9A34,0x81D2,0x6150,0x6170,0x5150,0x5170,0x5190,0x4990,0x4990,0x416F,0x414F,0x414F,0x4170,0x394F,0x394E,0x392E,0x392E,0x392E,0x392E,0x390E,0x392E,0x312D,0x312D,0x312D,0x312D,0x312D,0x312D,0x310D,0x290D,0x312D,0x310D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x290D,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x292D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x210C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC, + 0xA9D2,0xA1B2,0xA9F2,0xA1B1,0xA1D2,0xA1D2,0xA1D2,0xA1D1,0xA1D2,0xA1B1,0xA1B1,0xA1B1,0xA1B1,0x9991,0xA1B1,0xA191,0x9991,0x9991,0x9991,0x9991,0x9991,0x9991,0x99B1,0x99B1,0x99B1,0x91B1,0x99B1,0x91B1,0x91B1,0x91B1,0x99D1,0x99D2,0x91B1,0x99B1,0x91B1,0x99B1,0x99D2,0x91B1,0x99B1,0x99B1,0x91B1,0x91B1,0x91B1,0x99B1,0x91B1,0x99B2,0x99B2,0x99B2,0x99B2,0x99B1,0x99B1,0x99B2,0x99B2,0x99B2,0x99D2,0x99B2,0x99B2,0x99B2,0x99B1,0x99D2,0x99B2,0x99D2,0x99B2,0x99D2,0x91B1,0x99D2,0x91D2,0x91D1,0x99D2,0x91B1,0x99B1,0x99D2,0x91B1,0x91B1,0x99B1,0x99B2,0x99B2,0x99B2,0x99D2,0x99D2,0x91D2,0x91D2,0x99D2,0x91D2,0x9A12,0x91F2,0x9212,0x9212,0x9212,0x9A33,0x9A53,0x9A33,0x9212,0x8A12,0x8A12,0x8A12,0x9253,0x9253,0x8A32,0x8212,0x71D1,0x6990,0x612F,0x50EE,0x48AD,0x408C,0x386B,0x386B,0x306B,0x306B,0x306B,0x308B,0x30CC,0x30CC,0x30EC,0x30EC,0x310C,0x30EC,0x30EC,0x30EC,0x310C,0x28EC,0x310D,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x292D,0x292D,0x290C,0x292D,0x292D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x292C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290C,0x292D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x292D,0x312D,0x290D,0x290D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x312D,0x290D,0x290D,0x290D,0x290D,0x310D,0x312D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x312D,0x312D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x312D,0x312D,0x312D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x312D,0x312D,0x312D,0x310D,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392F,0x392E,0x392E,0x394F,0x414F,0x394F,0x414F,0x412F,0x392F,0x392F,0x414F,0x414F,0x4150,0x4150,0x4150,0x4970,0x4150,0x4970,0x4970,0x4990,0x4990,0x4970,0x4990,0x5191,0x5191,0x51B1,0x5191,0x5991,0x5991,0x5991,0x5991,0x6171,0x6191,0x7192,0x79B2,0x9214,0x91F3,0xA234,0xAA34,0xA9F4,0xA9D3,0xA9D3,0xB1D4,0xB1B3,0xB1F4,0xB1D3,0xA9B3,0xB1B3,0xB1D3,0xA9B3,0xB1F4,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xA9B2,0xA9D2,0xA9F3,0xA1F3,0xA213,0x9A33,0x9254,0x8294,0x5A32,0x216E,0x7D5C,0x86FF,0x56FF,0x36FE,0x271E,0x1F7F,0x179F,0x0F9F,0x0FBF,0x0F9F,0x0F9F,0x0F7F,0x177F,0x275F,0x471E,0x7F3F,0x5BD6,0x5A10,0x92B4,0x9A54,0xA213,0xA1F3,0xA1D3,0xA9D3,0xA9F3,0xAA14,0xA214,0x9A34,0x9234,0x610F,0x6150,0x5150,0x5170,0x5170,0x4970,0x4970,0x416F,0x414F,0x414F,0x414F,0x392F,0x392F,0x392E,0x392E,0x392E,0x392E,0x392E,0x312D,0x312D,0x312E,0x310D,0x310D,0x310D,0x312D,0x312D,0x290D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x28EC,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x210C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x20EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x20EC,0x290C,0x290C,0x290C,0x20EC,0x28EC,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EB,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC, + 0xA1D2,0xA1B1,0xA1D2,0xA1D1,0xA1D1,0xA1D1,0xA1D2,0xA1D2,0xA1D2,0xA1B2,0xA1B2,0xA1B2,0xA1B1,0xA1D1,0xA1B1,0xA1B1,0xA1B1,0x9991,0x9991,0x9991,0x9991,0x9991,0x99B1,0x9990,0x99B1,0x99B1,0x91B1,0x91B1,0x91B1,0x91B1,0x91B1,0x91B1,0x91B1,0x91B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x91B1,0x99B1,0x91B1,0x99B1,0x91B1,0x99B1,0x99B2,0x91B1,0x99B2,0x99B2,0x99B1,0x99B2,0x99B2,0x99D2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B1,0x99B2,0x99B2,0x99B2,0x99B2,0x99D2,0x91B2,0x91B2,0x91D1,0x99D2,0x99D2,0x91B1,0x99D2,0x99B1,0x99B1,0x99B1,0x99B1,0x91B1,0x99B1,0x99B2,0x99D2,0x99B2,0x99D2,0x99D2,0x99D2,0x99F2,0x91D2,0x91D2,0x99F2,0x91F2,0x99F2,0x91F2,0x91F2,0x91F2,0x9A33,0x91F2,0x91F2,0x91F2,0x9213,0x9212,0x9213,0x9233,0x8A13,0x8A12,0x8A13,0x81F2,0x8212,0x79D1,0x69B0,0x594F,0x510E,0x408B,0x304B,0x304A,0x306B,0x308B,0x308B,0x30AB,0x30CB,0x30CC,0x30EC,0x30EC,0x30ED,0x30EC,0x30EC,0x28EC,0x28EC,0x28EC,0x28EC,0x30EC,0x28EC,0x290C,0x28EC,0x28EC,0x290C,0x292D,0x290C,0x28EC,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x292D,0x292D,0x292D,0x292D,0x312D,0x292D,0x292D,0x290D,0x290D,0x28EC,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x292D,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x28EC,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x310D,0x312D,0x290D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x310D,0x290D,0x312D,0x290D,0x290D,0x290D,0x310D,0x290D,0x310D,0x312D,0x310D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x312D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x312D,0x310D,0x312D,0x310D,0x310D,0x312D,0x312D,0x310D,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x392F,0x392E,0x394F,0x392E,0x392E,0x392E,0x394F,0x394F,0x414F,0x414F,0x412F,0x412F,0x412F,0x414F,0x4170,0x414F,0x414F,0x4170,0x4170,0x4170,0x4970,0x4970,0x4970,0x4990,0x4991,0x4970,0x5191,0x5191,0x5191,0x5191,0x5991,0x5991,0x5991,0x6191,0x6171,0x6991,0x7191,0x81B2,0x91F3,0x99F3,0xB255,0xB234,0xA1B3,0xA9B3,0xA9D3,0xB1F4,0xB1D4,0xB1D3,0xB1D3,0xB1D3,0xB1B3,0xB1D3,0xB1D3,0xB1F3,0xB1D3,0xB1F3,0xB1D3,0xA9D2,0xB1F3,0xA9F3,0xA9F3,0xA1F3,0x9A13,0x9233,0x8274,0x59F1,0x216E,0x6CFA,0x871F,0x56DF,0x36FE,0x275F,0x1F7F,0x179F,0x0FBF,0x0F9F,0x0FBF,0x0F9F,0x1F9F,0x2F7F,0x3F1E,0x6F1F,0x74FA,0x49EF,0x8AB4,0x9233,0xA213,0xA213,0xAA14,0xA9D3,0xAA14,0xA9F3,0xA213,0xA214,0x9A34,0x6930,0x6150,0x5970,0x5170,0x5170,0x4970,0x4970,0x416F,0x416F,0x414F,0x394F,0x394F,0x394F,0x394F,0x392E,0x392E,0x392E,0x392E,0x310D,0x312E,0x312E,0x310D,0x312D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x292D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x210C,0x290D,0x290C,0x210C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC, + 0xA1B1,0xA1B1,0xA191,0xA1B1,0xA1D1,0xA1D1,0xA1D1,0xA1D1,0xA1D1,0xA1D2,0xA1D1,0xA1D1,0xA1D2,0xA1D1,0xA1D2,0xA1B1,0xA1B1,0xA1B1,0xA1B1,0x99B1,0x99B1,0x99B1,0x9991,0x99B1,0x9991,0x9991,0x99B1,0x91B1,0x91B1,0x9190,0x91B1,0x99B1,0x99B1,0x99B1,0x9191,0x9191,0x99B1,0x99B1,0x9191,0x99B1,0x9191,0x99B1,0x99B1,0x99B1,0x99B2,0x99B2,0x99B2,0x99B2,0x99B1,0x99B1,0x99D2,0x99B1,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99D2,0x99B2,0x99B1,0x99B2,0x99B2,0x99B2,0x99B2,0x91B1,0x99D2,0x99D1,0x99D2,0x99D2,0x99B1,0x99D1,0x91B1,0x99D2,0x91B1,0x99B1,0x99B2,0x99B2,0x99B2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x91B1,0x91B2,0x91D2,0x91B1,0x91B1,0x99F2,0x91D2,0x99F2,0x91F2,0x99F2,0x99F2,0x91D2,0x91F2,0x91F2,0x91F3,0x9A33,0x9A54,0x9233,0x9233,0x9233,0x9253,0x9253,0x8A53,0x8A53,0x8A53,0x7A12,0x71D1,0x510E,0x48CC,0x40AC,0x386B,0x306B,0x286B,0x308B,0x308B,0x30AB,0x30CC,0x30CC,0x30EC,0x30EC,0x30EC,0x310D,0x30EC,0x30EC,0x28EC,0x30EC,0x30EC,0x28EC,0x310C,0x310D,0x290C,0x290D,0x28EC,0x28EC,0x290D,0x290D,0x290C,0x290D,0x290D,0x292D,0x292D,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x312D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x292D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x28EC,0x290C,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x292D,0x290D,0x292D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x292D,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x30ED,0x310D,0x310D,0x310D,0x310D,0x290D,0x290C,0x312D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x312D,0x310D,0x310D,0x312D,0x312D,0x312D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x310D,0x310D,0x312D,0x312D,0x312D,0x312D,0x310D,0x310D,0x312D,0x312E,0x312E,0x312E,0x312E,0x392E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x394F,0x394F,0x394F,0x392F,0x392F,0x394F,0x412F,0x414F,0x414F,0x414F,0x414F,0x414F,0x4170,0x416F,0x4170,0x4970,0x4170,0x4990,0x4970,0x4970,0x4970,0x51B1,0x4970,0x4971,0x5171,0x5171,0x5191,0x5191,0x59B1,0x5991,0x6191,0x6191,0x6971,0x7171,0x79B2,0x89D3,0x99F4,0xAA35,0xAA35,0xA9F4,0xA9B3,0xA9B3,0xA9B3,0xB1F4,0xB1D4,0xB1D3,0xB1F4,0xA9B3,0xB1B3,0xB1B3,0xA9B3,0xB1F3,0xB1F3,0xB1D3,0xA9D3,0xA9D3,0xB1F3,0xA9F3,0xA213,0x9A33,0x9254,0x8274,0x5A11,0x214D,0x751B,0x86FF,0x56DF,0x371E,0x273F,0x177F,0x0F7F,0x0F9F,0x0F9F,0x179F,0x179F,0x277F,0x371E,0x5EDE,0x7DDC,0x3A2F,0x7AB3,0x9273,0x9A33,0xA213,0xA1F3,0xA9F3,0xAA14,0xA9F3,0xA1F3,0xA214,0x9A34,0x89F3,0x590F,0x5950,0x5970,0x5170,0x4950,0x4150,0x414F,0x416F,0x414F,0x414F,0x394F,0x392F,0x394F,0x392E,0x392E,0x312E,0x312E,0x392E,0x312E,0x310D,0x310E,0x310E,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x292D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x292D,0x210D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290C,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x292C,0x292C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x210C,0x20EC,0x210C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x20EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EB,0x28EC,0x28EC, + 0xA1B1,0xA1B1,0xA1B1,0xA1B1,0xA1B1,0xA1B1,0xA1D1,0xA1D2,0xA1B1,0xA1D1,0xA1D1,0xA1B1,0xA1D1,0xA1D1,0xA1D2,0xA1B1,0xA1D2,0xA1D2,0x99B1,0xA1D1,0x99B1,0x99B1,0x99B1,0x99B1,0x9991,0x99B1,0x9991,0x9991,0x99B1,0x91B1,0x91B1,0x91B1,0x9191,0x99B1,0x99B1,0x99B1,0x9991,0x99B1,0x9991,0x9991,0x9991,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99B2,0x99B2,0x99B2,0x99B1,0x99B1,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99D2,0x99B1,0x99B1,0x99D2,0x99D2,0x99D2,0x99D2,0x99D1,0x99D1,0x99D1,0x99D1,0x99B1,0x99D2,0x9191,0x99D2,0x99B1,0x99D2,0x99B2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99B2,0x99B2,0x99D2,0x91B2,0x91B1,0x91B2,0x9191,0x91B2,0x91D2,0x91B2,0x99D2,0x99F3,0x91D2,0x91B2,0x91D2,0x99F3,0x91F2,0x91D2,0x9213,0x91F2,0x9212,0x9212,0x9212,0x89F2,0x9233,0x9233,0x8A53,0x8A33,0x8233,0x8253,0x8253,0x7212,0x69D0,0x512E,0x40CC,0x306B,0x304A,0x306B,0x306B,0x308B,0x30AC,0x38CC,0x38CC,0x30CC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x30EC,0x310D,0x310D,0x30EC,0x28EC,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x292D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290C,0x290D,0x292D,0x290C,0x290D,0x28EC,0x290D,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x28EC,0x290D,0x290C,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x310D,0x310D,0x30ED,0x30ED,0x30ED,0x28ED,0x310D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x290D,0x310D,0x312D,0x312D,0x290D,0x310D,0x310D,0x310D,0x290D,0x310D,0x310D,0x312D,0x290D,0x290D,0x312D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312D,0x312D,0x312E,0x312D,0x312E,0x312E,0x310D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x392E,0x312E,0x392E,0x392E,0x392E,0x392E,0x310E,0x392E,0x394F,0x392F,0x394F,0x392F,0x392F,0x414F,0x414F,0x414F,0x414F,0x416F,0x414F,0x416F,0x416F,0x416F,0x416F,0x416F,0x4970,0x4970,0x4970,0x4970,0x4970,0x4971,0x5191,0x4970,0x5191,0x5191,0x5991,0x5971,0x5991,0x6191,0x6992,0x6991,0x7992,0x81B2,0x91F3,0xA234,0xAA35,0xAA35,0xA1D4,0xA1B3,0xA9D3,0xA9F4,0xA9D4,0xB1F4,0xA9D3,0xB1D3,0xB1D3,0xA9B3,0xA9B3,0xB1D3,0xB1F3,0xA9B3,0xB1D3,0xA9D3,0xB214,0xA9F3,0xA213,0x9A13,0x9233,0x8A74,0x5A11,0x298E,0x7D7C,0x7EFF,0x4EDE,0x2F1E,0x275F,0x179F,0x0F9F,0x17BF,0x179F,0x177E,0x277E,0x3F3E,0x56DE,0x86BF,0x42B1,0x7292,0x9273,0x9A33,0xA213,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xAA13,0xAA14,0xA213,0x9A34,0x6930,0x6150,0x5950,0x5170,0x4950,0x4970,0x4990,0x4170,0x414F,0x414F,0x394F,0x394F,0x394F,0x394F,0x394E,0x314E,0x312E,0x312E,0x312E,0x310E,0x310E,0x310E,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290D,0x290C,0x292D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x310D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x292D,0x290C,0x292C,0x292D,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x292D,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EB,0x28EB,0x28EC,0x28EC, + 0xA1B1,0xA1B1,0xA1B1,0xA1B1,0xA1B1,0xA1B1,0xA1D1,0xA1B1,0xA1F2,0xA1F2,0xA1B1,0xA1D1,0x99B1,0x99B1,0xA1B1,0xA1D1,0xA1D2,0xA1D1,0xA1D2,0xA1D2,0xA1D2,0x99B1,0x99B1,0x99B1,0xA1D2,0x99B1,0x99B2,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x99B1,0x9991,0x99B1,0x99B1,0x99B2,0x9991,0x99B1,0x9991,0x9991,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x9991,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x91B1,0x99D2,0x99D2,0x99B1,0x99D2,0x99B1,0x99D2,0x99B1,0x99D2,0x91B1,0x99B1,0x99D2,0x99B1,0x99B2,0x99B2,0x99B2,0x91B1,0x91B1,0x91B1,0x99D2,0x9191,0x99D2,0x99D2,0x91B1,0x99D2,0x99D2,0x91B2,0x91B2,0x91B2,0x9191,0x91D2,0x99D2,0x91B2,0x91B2,0x91D2,0x91B2,0x91D2,0x91F2,0x91D2,0x91F2,0x91D2,0x9213,0x91F2,0x9212,0x9213,0x9233,0x8A12,0x8A12,0x8A33,0x8A53,0x8A74,0x8A94,0x8A53,0x8253,0x79F2,0x6190,0x50ED,0x408C,0x386B,0x304B,0x306B,0x388B,0x308B,0x30AC,0x30AC,0x30CC,0x30CC,0x30CC,0x30CC,0x30CC,0x30EC,0x30EC,0x30EC,0x30EC,0x310C,0x290C,0x28EC,0x28EC,0x290D,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x28EC,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x292D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x292D,0x290C,0x290C,0x290D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x310D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x312D,0x312D,0x312E,0x310D,0x312D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x314E,0x312E,0x312E,0x312E,0x312E,0x310E,0x312E,0x312E,0x312E,0x392E,0x392E,0x394E,0x312E,0x392E,0x392E,0x392E,0x392F,0x392F,0x414F,0x414F,0x394F,0x414F,0x394F,0x394F,0x416F,0x416F,0x416F,0x416F,0x4170,0x416F,0x4970,0x4970,0x4970,0x4970,0x4991,0x4971,0x5191,0x5191,0x5191,0x5191,0x5191,0x5971,0x5971,0x5971,0x6192,0x6991,0x79D2,0x79B2,0x89F3,0x91F3,0x9A14,0xA235,0xA214,0xA1D3,0xA9D4,0xA9F4,0xA9F4,0xB1F4,0xA9D3,0xA9D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xA9B3,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xA9F3,0xA213,0x9A33,0x9233,0x8274,0x59F1,0x298E,0x861E,0x771F,0x46BE,0x2F3F,0x1F5F,0x177F,0x179F,0x179F,0x1F9F,0x277F,0x2F1D,0x4EBD,0x7EDF,0x4332,0x5A51,0x8A73,0x9A74,0xA213,0xAA14,0xA9F4,0xA9D3,0xA9D3,0xA1D3,0xAA14,0xA234,0xA254,0x7991,0x590F,0x5950,0x492F,0x4950,0x4970,0x4170,0x4170,0x4170,0x414F,0x394F,0x394F,0x394F,0x394F,0x394F,0x314E,0x314E,0x312E,0x312E,0x312E,0x310E,0x310E,0x310D,0x310E,0x292D,0x292D,0x312D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290C,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x210C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x28EC,0x20EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x20EC,0x28EC,0x290C,0x28EC,0x28EC,0x20EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x290C,0x28EC, + 0xA1B1,0xA1B1,0xA1B1,0xA1B1,0xA1D1,0xA1B1,0xA1B1,0xA1B1,0xA1D1,0xA1D1,0xA1D1,0x99B1,0x99D1,0x99B1,0x99B1,0xA1D2,0x99B1,0xA1D2,0xA1D2,0xA1D2,0xA1D2,0xA1D2,0x99B2,0xA1B2,0x99B1,0x99B1,0xA1D2,0x99B2,0x99B1,0x99B1,0x99B1,0x99B1,0x9991,0x9991,0x9991,0x9991,0x99B1,0x99B1,0x9991,0x9991,0x9991,0x99B1,0x99B2,0x9991,0x9991,0x9191,0x99B2,0x99B2,0x9992,0x99B2,0x99B2,0x99B2,0x9191,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x99B2,0x91B2,0x99D2,0x99D2,0x99B2,0x99B2,0x99B2,0x99D2,0x91B1,0x99D2,0x99B2,0x99D2,0x91B1,0x99B1,0x99B2,0x99B2,0x99B2,0x99B2,0x91B2,0x99B2,0x91B2,0x99D2,0x91B1,0x99D2,0x99D2,0x99D2,0x91B2,0x99D2,0x99D2,0x91B2,0x9191,0x91B2,0x99D2,0x99D2,0x91B2,0x91B2,0x91B2,0x91D2,0x91B2,0x91D2,0x91D2,0x91D2,0x91D2,0x91D2,0x91D2,0x91F2,0x91D2,0x91F2,0x9213,0x89F2,0x9212,0x89F2,0x8A12,0x89F2,0x8A33,0x8A13,0x8A53,0x9274,0x9294,0x8A94,0x8253,0x71D1,0x616F,0x48CD,0x388B,0x304A,0x304A,0x306B,0x388B,0x308B,0x30AB,0x30AC,0x30AC,0x30AC,0x30CC,0x30CC,0x30EC,0x28EC,0x28EC,0x28EC,0x310D,0x28ED,0x30EC,0x310C,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x28EC,0x290D,0x290D,0x28EC,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x310D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x310D,0x310D,0x310D,0x310D,0x310D,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x314E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392E,0x392F,0x392F,0x392F,0x394F,0x394F,0x394F,0x394F,0x394F,0x416F,0x414F,0x416F,0x4170,0x4970,0x4170,0x4970,0x4970,0x4970,0x4971,0x4971,0x4991,0x5191,0x5171,0x5191,0x5171,0x5171,0x5992,0x5971,0x6171,0x6192,0x69B2,0x71B2,0x7171,0x81B3,0x91D3,0xA235,0xA215,0xAA15,0xA1D4,0xA1B3,0xA9D4,0xB1F4,0xA9D4,0xB1F4,0xA9D3,0xB1F4,0xA9D3,0xB1D3,0xA9D3,0xB1D3,0xA9D3,0xB1F3,0xA9D3,0xA9F3,0xA1F3,0x9A13,0x8A13,0x8233,0x51D0,0x3230,0x96DF,0x66DF,0x46FE,0x2F3F,0x1F7F,0x177E,0x179E,0x1F9E,0x277E,0x375E,0x46DD,0x6EDE,0x5C76,0x4A30,0x8293,0x9253,0x9A13,0xA1F3,0xA9F4,0xB1F4,0xA9D3,0xA9F4,0xA9F4,0xA214,0xA234,0x9213,0x6110,0x5950,0x5130,0x4950,0x4970,0x4150,0x4170,0x414F,0x414F,0x394F,0x394F,0x394F,0x394F,0x314F,0x314F,0x312E,0x312E,0x312E,0x312E,0x310E,0x310E,0x310E,0x312E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x292D,0x290C,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x290C,0x290C,0x210C,0x292D,0x210C,0x290C,0x290D,0x290C,0x290D,0x28EC,0x290C,0x290C,0x28EC,0x28EC,0x290C,0x290D,0x28EC,0x290C,0x290C,0x290C,0x290C,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x20EC,0x290C,0x20EC,0x28EC,0x20EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x20EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x20EC,0x290C,0x28EC,0x290C,0x290C,0x290C,0x28EC,0x28EC,0x28EC,0x20EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x20EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x20EC,0x20EC,0x290C,0x28EC, + 0xA1B1,0xA1B1,0xA1B1,0x9991,0x99B1,0x9991,0x9991,0xA1D2,0x99B1,0x99B1,0x99B1,0x99B1,0x99D1,0x99B1,0x99B1,0x99B1,0x99B1,0x99D2,0x9991,0x9991,0x99B1,0x99B1,0x99B2,0x99B2,0x9991,0x99B1,0x9991,0x99B1,0x99B1,0x99B1,0x99B2,0x99B2,0x9191,0x9191,0x9191,0x9991,0x9191,0x9191,0x9191,0x9991,0x9191,0x99B1,0x9171,0x9991,0x9191,0x99B2,0x99B1,0x99B2,0x9191,0x9191,0x9191,0x9191,0x99B2,0x99B2,0x9192,0x9192,0x9191,0x99B2,0x9992,0x99B2,0x99B2,0x99B2,0x91B2,0x99B2,0x9191,0x99D2,0x91B2,0x99B2,0x91B1,0x91B1,0x99B2,0x99B2,0x91B1,0x99D2,0x91B2,0x99D2,0x91B2,0x99D2,0x91B2,0x99D2,0x9191,0x91B2,0x99B2,0x91B2,0x91B2,0x91B1,0x91B2,0x91B2,0x91B1,0x91B2,0x91B2,0x99D2,0x99D2,0x91D2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x91B2,0x91B2,0x99F2,0x91B2,0x99D2,0x91B1,0x91B1,0x91B2,0x91D2,0x91D2,0x91D2,0x99F3,0x91D2,0x9A13,0x91D2,0x89D2,0x91F2,0x89F2,0x9213,0x89F2,0x89F2,0x89F2,0x8A12,0x8A13,0x8A13,0x8A33,0x9253,0x9294,0x9294,0x9294,0x8253,0x71D1,0x594F,0x48CC,0x408B,0x386B,0x386B,0x306B,0x308B,0x38AC,0x30AC,0x30AC,0x30CC,0x30CC,0x30CC,0x30EC,0x30EC,0x30EC,0x30EC,0x28EC,0x310C,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x28ED,0x28ED,0x28ED,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x310E,0x290D,0x310E,0x290D,0x310E,0x310E,0x310E,0x312E,0x290E,0x312E,0x292E,0x312E,0x310E,0x310E,0x310E,0x310E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x312E,0x392E,0x392E,0x392E,0x392E,0x392F,0x392F,0x392E,0x392E,0x392F,0x394F,0x394F,0x394F,0x394F,0x394F,0x394F,0x414F,0x414F,0x4150,0x4150,0x4170,0x4971,0x4971,0x4971,0x4991,0x4971,0x5191,0x5191,0x5191,0x5192,0x5172,0x5992,0x5992,0x5972,0x5971,0x6192,0x6992,0x6972,0x7172,0x8192,0x91D4,0xA235,0xA235,0xA214,0xA1D4,0xA9D4,0xA9D4,0xA9F4,0xB1F4,0xA9B3,0xB1D3,0xB1F4,0xB1F4,0xA9D3,0xA9B3,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xA213,0xA234,0x9233,0x7A53,0x418F,0x3AB2,0x973F,0x66FF,0x3F1E,0x2F5E,0x1F7E,0x1F7E,0x1F7E,0x1F5D,0x375E,0x473E,0x66FE,0x75DB,0x4250,0x7272,0x9273,0x9A33,0xA1F3,0xA9F3,0xA9D3,0xA9F4,0xA9D3,0xA9F4,0xA1F3,0xA214,0x9A34,0x7150,0x510F,0x5130,0x4950,0x4970,0x4170,0x4170,0x4170,0x4150,0x394F,0x394F,0x392F,0x394F,0x394F,0x314F,0x312E,0x314F,0x312E,0x310E,0x310E,0x310E,0x310E,0x310E,0x290E,0x290E,0x312E,0x290D,0x290D,0x290D,0x290D,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x210D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x290C,0x290C,0x290C,0x290C,0x290D,0x290D,0x210C,0x210C,0x20EC,0x290D,0x210C,0x28EC,0x290D,0x290D,0x290C,0x290D,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x290D,0x290D,0x290D,0x210C,0x20EC,0x28EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x20EC,0x290C,0x20EC,0x20EC,0x20EC,0x20EC,0x20EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x290C,0x28EC,0x28EC,0x28ED,0x20EC,0x20EC,0x28EC,0x28EC,0x20EC,0x20EC,0x20EC,0x20EC,0x20EC,0x20EC,0x20EC,0x20EC,0x290C,0x290C,0x28EC,0x28EC,0x20EC,0x20EC,0x20EC,0x28EC,0x28EC,0x28EC,0x28EC,0x20EC,0x290C,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x20EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x28EC,0x20EC,0x20EC,0x20EC,0x28EC, + 0x9991,0x9991,0x9991,0x9991,0x9991,0x99B1,0x9991,0x9991,0x99B1,0x9991,0x99B1,0x99D2,0x99B1,0x9191,0x99B1,0x9191,0x99B1,0x9191,0x91B1,0x99B2,0x9191,0x99B1,0x9992,0x9191,0x99B2,0x99B2,0x99B1,0x99B1,0x9191,0x91B1,0x99B2,0x91B2,0x9191,0x91B1,0x9192,0x9192,0x9191,0x9191,0x91B1,0x9191,0x91B1,0x9191,0x91B2,0x91B2,0x9191,0x91B1,0x91B2,0x9191,0x99B2,0x99B2,0x9191,0x9191,0x99B2,0x91B2,0x99B2,0x91B2,0x91B2,0x91B2,0x99B2,0x99B2,0x99B2,0x91B2,0x99B2,0x99D2,0x91B2,0x91B2,0x91B2,0x91B2,0x91B2,0x99D2,0x91B2,0x91B2,0x91D2,0x91B2,0x91B2,0x99D2,0x91D2,0x91D2,0x99D2,0x91B2,0x91B2,0x91B2,0x91B2,0x91B2,0x91B2,0x9191,0x99D2,0x91B2,0x99D2,0x99D2,0x99D2,0x99D2,0x99D2,0x91D2,0x99F2,0x99D2,0x99D2,0x91D2,0x99D2,0x99F3,0x91D2,0x91D2,0x91D2,0x91B2,0x91D2,0x99D2,0x91B2,0x91D2,0x99D2,0x91D2,0x99D2,0x99F2,0x99F2,0x91F2,0x91F2,0x91F2,0x91F2,0x91D2,0x91F2,0x91F2,0x91F2,0x89F2,0x9213,0x89F2,0x89F2,0x89D2,0x8A12,0x8A12,0x8A53,0x8A53,0x9294,0x92B4,0x8A94,0x8273,0x71F1,0x6190,0x592E,0x40AC,0x408C,0x386B,0x388B,0x308B,0x308B,0x308C,0x30AC,0x30CC,0x30CC,0x30CC,0x30EC,0x30EC,0x30ED,0x30ED,0x310D,0x28EC,0x28ED,0x310D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x28ED,0x290D,0x28ED,0x28ED,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x28ED,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290E,0x290E,0x290D,0x290D,0x290D,0x290E,0x290E,0x290D,0x290E,0x290E,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x310E,0x290E,0x290E,0x310E,0x310E,0x290E,0x290E,0x310E,0x310E,0x292E,0x290E,0x312E,0x310E,0x310E,0x310E,0x310E,0x312E,0x310E,0x310E,0x312E,0x312E,0x312E,0x310E,0x312E,0x392F,0x312E,0x312F,0x392F,0x312F,0x312F,0x392F,0x392F,0x392F,0x394F,0x392F,0x394F,0x394F,0x392F,0x414F,0x4150,0x4150,0x4150,0x4170,0x4170,0x4971,0x4971,0x4991,0x4971,0x4991,0x5191,0x5192,0x5192,0x5192,0x5192,0x5192,0x5972,0x5972,0x5992,0x6172,0x6992,0x6992,0x7172,0x7152,0x89B3,0x91D3,0xA255,0x9A14,0xA215,0xA9F5,0xA1B3,0xA9D4,0xB1D4,0xB1F4,0xB1F4,0xB1F4,0xA9D3,0xB1F3,0xA9D3,0xA9D3,0xA9D3,0xAA13,0xA9F3,0xA213,0x9A13,0x8A33,0x7233,0x314E,0x5C16,0x977F,0x4EBE,0x371E,0x2F5E,0x277E,0x277E,0x277E,0x375E,0x473D,0x4EBC,0x765C,0x42D1,0x6272,0x8A94,0x9A33,0xA1F3,0xA9D3,0xA9F4,0xA9F4,0xA9F4,0xA9F4,0xAA14,0xA214,0x9A14,0x81D2,0x590F,0x5150,0x4950,0x4950,0x4150,0x4150,0x4170,0x394F,0x394F,0x394F,0x392F,0x394F,0x394F,0x312F,0x314F,0x312E,0x312E,0x310E,0x312E,0x312E,0x312E,0x312E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x28ED,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290E,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290C,0x290C,0x210C,0x20EC,0x290D,0x210D,0x210D,0x290D,0x210D,0x210D,0x290D,0x210D,0x290D,0x290D,0x290D,0x20ED,0x20ED,0x290D,0x290D,0x28EC,0x28ED,0x28ED,0x28ED,0x290D,0x290D,0x290D,0x20ED,0x210D,0x210D,0x20ED,0x28ED,0x28EC,0x290D,0x20EC,0x20EC,0x290D,0x20EC,0x20EC,0x210C,0x20EC,0x20ED,0x20EC,0x20EC,0x20EC,0x20EC,0x20ED,0x20ED,0x20ED,0x20ED,0x20ED,0x20ED,0x20EC,0x20ED,0x20ED,0x20ED,0x20EC,0x20EC,0x20ED,0x20ED,0x20EC,0x20EC,0x20EC,0x20EC,0x20EC,0x20EC,0x28EC,0x20EC,0x210C,0x210C,0x20EC,0x28EC,0x28EC,0x20EC,0x28EC,0x20EC,0x20EC,0x20EC,0x28EC,0x28EC,0x28EC,0x20EC,0x28ED,0x28ED,0x20EC,0x28EC,0x20CC,0x20EC,0x28EC,0x20EC,0x28EC,0x28EC,0x20EC,0x28EC,0x20EC,0x290C,0x20EC,0x20EC,0x20EC,0x20EC, + 0x9170,0x9170,0x9170,0x9150,0x9150,0x9170,0x9191,0x9171,0x9191,0x9191,0x9170,0x9171,0x9191,0x9191,0x9191,0x9191,0x8970,0x8970,0x8971,0x8971,0x9191,0x9191,0x9192,0x9191,0x9191,0x9191,0x9191,0x9191,0x9191,0x9191,0x9192,0x9192,0x9191,0x9191,0x91B2,0x9191,0x91B2,0x91B1,0x9191,0x9191,0x9191,0x9191,0x9192,0x9191,0x91B2,0x91B2,0x91B2,0x91B2,0x91B2,0x9191,0x91B2,0x91B2,0x91B2,0x91B2,0x91B2,0x9192,0x99D2,0x91B2,0x91B2,0x99B2,0x99B2,0x91B2,0x91B2,0x91B2,0x91B2,0x91B2,0x91B2,0x91B2,0x91D2,0x91B2,0x91B2,0x99D2,0x91B2,0x91B2,0x91D2,0x91B2,0x91B2,0x91B2,0x91B2,0x91B2,0x91B2,0x91B2,0x99D2,0x91B2,0x99F3,0x99D2,0x91D2,0x99D3,0x9191,0x91B2,0x8991,0x9191,0x91B2,0x91B2,0x91D2,0x91B2,0x8971,0x8991,0x91D2,0x91B2,0x91D2,0x99F3,0x91B2,0x99D2,0x91B2,0x91B2,0x99F3,0x91D2,0x99F2,0x99F3,0x9191,0x91B2,0x91D2,0x91F2,0x91D2,0x91D2,0x91F3,0x91D2,0x9A13,0x91F2,0x91F3,0x9213,0x89F2,0x89D2,0x91F2,0x9212,0x89F2,0x89D2,0x89F2,0x8A12,0x8A13,0x89F2,0x8A13,0x8A33,0x9274,0x9274,0x9294,0x8A74,0x8213,0x71F2,0x614F,0x510E,0x48CD,0x40AD,0x306B,0x306B,0x308C,0x308C,0x30AC,0x30AC,0x30AC,0x30CC,0x30CC,0x30EC,0x30ED,0x30ED,0x310D,0x310D,0x28EC,0x28ED,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x292D,0x292D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x28ED,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290E,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x28ED,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x28ED,0x28ED,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x292D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x28ED,0x290D,0x28ED,0x28ED,0x290D,0x290E,0x290E,0x290E,0x28ED,0x28ED,0x290D,0x28ED,0x28ED,0x28ED,0x28EE,0x28EE,0x290E,0x28ED,0x28ED,0x28ED,0x28EE,0x290E,0x290E,0x290E,0x28ED,0x28ED,0x28EE,0x28EE,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x28EE,0x28EE,0x28EE,0x28EE,0x290E,0x290E,0x28ED,0x290E,0x28EE,0x28EE,0x28ED,0x290E,0x290E,0x290E,0x290E,0x290E,0x28EE,0x28EE,0x28ED,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x292E,0x290E,0x290E,0x290E,0x312E,0x28ED,0x290D,0x290D,0x290E,0x290E,0x290E,0x310E,0x28EE,0x290E,0x290E,0x310E,0x290E,0x28EE,0x290E,0x290E,0x290E,0x290E,0x292E,0x312E,0x312E,0x312E,0x310E,0x310E,0x310E,0x310E,0x310E,0x310F,0x312F,0x312F,0x312F,0x310F,0x310F,0x312F,0x312F,0x314F,0x312F,0x312F,0x312F,0x312F,0x392F,0x392F,0x3950,0x3930,0x3930,0x4150,0x3930,0x4150,0x4150,0x4150,0x4150,0x3930,0x4150,0x4171,0x4171,0x4991,0x4992,0x4972,0x4971,0x4972,0x4971,0x5172,0x5172,0x5172,0x5192,0x5992,0x5992,0x6192,0x6192,0x6992,0x6992,0x6952,0x7172,0x81B3,0x9215,0x9A15,0xA1F4,0xAA15,0xA1D4,0xA9D4,0xA9D4,0xA9D4,0xA9D4,0xA9D3,0xB1F4,0xB1F4,0xA9F3,0xA9D3,0xA9D2,0xA9F3,0xAA13,0xA213,0x9A34,0x8A54,0x6212,0x296E,0x6D1B,0x7F5F,0x4F1F,0x3F3E,0x2F5E,0x273D,0x273D,0x375D,0x3F3D,0x4EDC,0x6E9D,0x4BB4,0x5271,0x7A73,0x9253,0xA234,0xA9D3,0xA9F4,0xA9D3,0xA9D4,0xA9D4,0xA1D3,0xAA14,0x9A14,0x9214,0x590F,0x5130,0x5150,0x4950,0x4150,0x4150,0x4150,0x3950,0x3950,0x3950,0x394F,0x3950,0x312F,0x312F,0x312F,0x312F,0x312F,0x312F,0x312F,0x310E,0x312E,0x312E,0x292E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x292E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x28ED,0x290D,0x290E,0x290D,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x28ED,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290D,0x290E,0x290E,0x290E,0x28ED,0x290E,0x290E,0x290E,0x290E,0x290E,0x210D,0x290E,0x210D,0x210D,0x210D,0x210D,0x210D,0x210D,0x210D,0x210D,0x210D,0x290E,0x290D,0x290D,0x290D,0x20ED,0x28ED,0x290D,0x290D,0x290E,0x290E,0x290D,0x210D,0x210D,0x290E,0x210D,0x290D,0x290E,0x290E,0x210D,0x210D,0x210D,0x290E,0x290D,0x210D,0x28ED,0x290E,0x290E,0x210D,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210D,0x210D,0x290E,0x290E,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290D,0x290D,0x290D,0x210D,0x210D,0x210D,0x20ED,0x290E,0x290E,0x210E,0x210E,0x20ED,0x210D,0x210D,0x210D,0x20ED,0x210D,0x210D,0x20ED,0x210D,0x210D,0x210D,0x210D,0x210D,0x210D,0x210D,0x210D,0x210D,0x20ED,0x20ED,0x290D,0x20ED,0x290D,0x290D,0x28ED,0x28ED,0x28ED,0x28ED,0x28ED,0x20ED,0x20ED,0x290D,0x210D,0x210D,0x210D,0x20ED,0x20ED,0x210D,0x20ED,0x210D,0x210D,0x20ED,0x210D,0x20ED,0x20ED,0x210D,0x210D,0x290D,0x210D,0x210D,0x290D,0x20ED,0x20ED,0x20ED,0x20ED,0x20ED,0x20ED,0x210D,0x20ED,0x20ED,0x210D,0x210D,0x20ED,0x20ED,0x20ED,0x20ED,0x20ED,0x20ED,0x210D,0x20EC,0x20EC,0x20EC,0x20ED,0x20EC,0x20EC,0x20EC,0x20EC,0x20EC,0x20EC,0x210D,0x210D,0x20ED,0x20ED,0x20EC,0x20ED,0x28ED,0x28ED,0x28ED,0x290D,0x20ED,0x20ED,0x20CC,0x28ED,0x290D,0x290D,0x290D,0x290D,0x20EC,0x28EC,0x20EC,0x20EC,0x20EC,0x210C,0x20EC,0x210C, + 0x8971,0x8970,0x8971,0x8951,0x8950,0x8971,0x8950,0x8971,0x8991,0x8971,0x8991,0x8991,0x8971,0x8971,0x8971,0x8971,0x8971,0x8991,0x8971,0x8992,0x8971,0x8991,0x8992,0x9192,0x8992,0x89B2,0x8992,0x8992,0x8992,0x91B2,0x8992,0x8992,0x8992,0x91B2,0x8992,0x91B2,0x91B2,0x8991,0x89B2,0x91B2,0x8992,0x91B2,0x9192,0x91B2,0x8992,0x89B2,0x91B2,0x91B2,0x89B2,0x91B2,0x91B2,0x91B2,0x91B2,0x91B2,0x91B2,0x91D3,0x91B2,0x91B2,0x91B2,0x91B2,0x91B2,0x91D2,0x91B2,0x91D2,0x91B2,0x91B2,0x91D2,0x91D2,0x91B2,0x91D2,0x91D2,0x91B2,0x91D2,0x91D3,0x91B2,0x91D3,0x91D2,0x91D2,0x91B2,0x91D3,0x91B2,0x91D3,0x91B2,0x91D3,0x91D3,0x91D3,0x91D3,0x91D3,0x91D2,0x91D2,0x89B2,0x91B2,0x8992,0x91D2,0x91B2,0x89B2,0x89B2,0x91D2,0x89B2,0x91F3,0x89B2,0x91D2,0x91F3,0x91D2,0x91D2,0x99F3,0x91D3,0x91D3,0x91F3,0x91D2,0x91B2,0x91D3,0x91D2,0x91F3,0x91D2,0x91D2,0x91D3,0x91F3,0x91F3,0x91F3,0x91F3,0x89F3,0x9213,0x9213,0x89F3,0x89F3,0x89F3,0x89F3,0x89F3,0x89F3,0x89F3,0x89F3,0x89F3,0x8A13,0x8A13,0x81F3,0x8A33,0x8A33,0x8A54,0x8A54,0x8A54,0x8A95,0x8A95,0x8274,0x69D1,0x5990,0x514F,0x490E,0x40ED,0x308C,0x30AC,0x30AC,0x30AC,0x30CC,0x28CC,0x28CD,0x28ED,0x28ED,0x28ED,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x290D,0x210D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x28ED,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x210D,0x290E,0x290E,0x290E,0x290E,0x290E,0x210D,0x290E,0x290E,0x210D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290D,0x28ED,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290D,0x290E,0x290D,0x290D,0x290E,0x290E,0x290E,0x290D,0x290D,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x28ED,0x290E,0x28ED,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290D,0x290E,0x28ED,0x290D,0x290D,0x290E,0x290D,0x290D,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290E,0x290E,0x290E,0x290D,0x28ED,0x28ED,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x28ED,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x28ED,0x290D,0x28ED,0x290D,0x290D,0x290D,0x290D,0x28EE,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290D,0x290E,0x290E,0x290D,0x290D,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x28EE,0x28EE,0x28EE,0x290E,0x290E,0x28EE,0x290E,0x290E,0x290E,0x28EE,0x28EE,0x28EE,0x28EE,0x290E,0x290E,0x28EE,0x28EE,0x290E,0x28EE,0x290E,0x28EE,0x28EE,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x28EE,0x290E,0x28EE,0x290E,0x290E,0x28EE,0x290E,0x28EE,0x28EE,0x28EE,0x290E,0x28EE,0x28EE,0x290E,0x290E,0x28EE,0x290E,0x28EE,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x28EE,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x312F,0x290E,0x292E,0x312E,0x290E,0x312E,0x312E,0x310E,0x310F,0x310F,0x310F,0x310F,0x312F,0x312F,0x310F,0x312F,0x312F,0x312F,0x3130,0x312F,0x3150,0x312F,0x3130,0x3930,0x3950,0x3930,0x3930,0x3950,0x3930,0x3950,0x3950,0x3950,0x4151,0x3951,0x4151,0x4151,0x4151,0x4150,0x4171,0x4171,0x4972,0x4972,0x4972,0x4992,0x4972,0x4972,0x5192,0x5192,0x51B3,0x5192,0x5172,0x5992,0x5993,0x5992,0x6172,0x6993,0x6993,0x7172,0x7972,0x89D4,0x99F4,0xA235,0xA1F4,0xA9F5,0xA9F4,0xA1B4,0xA9D4,0xB1F4,0xB1F4,0xA9D3,0xA9F3,0xA9D3,0xA9D3,0xA9F3,0xA9F3,0xAA14,0x9A13,0x9233,0x8233,0x51D1,0x21AF,0x865F,0x771F,0x4F1E,0x373E,0x2F3D,0x2F3D,0x2F1D,0x3F3D,0x4F1D,0x6EDD,0x64D8,0x4270,0x7AB3,0x8A33,0x9A13,0xAA14,0xA1B3,0xA9D3,0xB1F4,0xB1F4,0xA9F4,0xA1F4,0x99F4,0x9234,0x71B2,0x5951,0x5171,0x4971,0x4170,0x4170,0x4170,0x4170,0x3970,0x3970,0x3950,0x3950,0x3150,0x3950,0x312F,0x312F,0x314F,0x312F,0x312F,0x310F,0x312F,0x312F,0x292E,0x292E,0x292E,0x292F,0x292F,0x290E,0x290F,0x290F,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210E,0x290E,0x290E,0x210E,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210E,0x290E,0x290E,0x290E,0x210E,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210E,0x290E,0x210E,0x290E,0x290E,0x290E,0x290E,0x290E,0x292E,0x290E,0x290E,0x290E,0x290E,0x290E,0x290E,0x210E,0x290E,0x290E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x290E,0x210E,0x290E,0x290E,0x210E,0x290E,0x210E,0x210E,0x290E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x290E,0x290E,0x210E,0x210E,0x210E,0x210E,0x290E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x212E,0x210E,0x210E,0x210E,0x210E,0x210E,0x290E,0x210E,0x290E,0x210E,0x290E,0x290E,0x290E,0x210E,0x210E,0x210E,0x210D,0x210E,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210D,0x210D,0x210D,0x210D,0x210D,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x20ED,0x210E,0x28EE,0x210E,0x20EE,0x28EE,0x20EE,0x210E,0x210E,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210D,0x210D,0x210D,0x210E,0x210E,0x210E,0x210E,0x210D,0x210E,0x210E,0x210D,0x20ED,0x20ED,0x210D,0x210D,0x20ED,0x210D,0x20ED,0x20ED,0x210D,0x20ED,0x20ED,0x210D,0x20ED,0x20ED,0x20ED,0x20ED,0x20ED,0x210D,0x20ED,0x20ED,0x20ED,0x20ED,0x210D,0x210D,0x20ED,0x210D,0x20ED,0x20ED,0x20ED,0x210D,0x20ED,0x20ED,0x20ED,0x20ED,0x20ED,0x20ED,0x20ED,0x20ED,0x20ED,0x20ED,0x210D,0x20ED,0x20ED,0x210D,0x20ED,0x210D,0x210D,0x20ED,0x210D,0x20ED,0x20ED,0x210D,0x20ED, + 0x8171,0x8171,0x8171,0x8171,0x8171,0x8171,0x8151,0x8972,0x8992,0x8992,0x8191,0x8171,0x8171,0x8191,0x8992,0x8192,0x8192,0x8192,0x8192,0x8992,0x8192,0x8192,0x89B2,0x89B2,0x89B2,0x89B2,0x89B2,0x89B2,0x89B2,0x89B2,0x89B2,0x89B2,0x89B2,0x89B2,0x8992,0x89B2,0x89B2,0x89B2,0x89B2,0x89B2,0x89D3,0x89B2,0x89B3,0x89B2,0x89B2,0x89D3,0x89D3,0x89B3,0x89B3,0x89B3,0x89B3,0x89B3,0x89D3,0x89B3,0x89B3,0x89B3,0x89D3,0x91D3,0x89B3,0x89B3,0x91D3,0x91D3,0x89D3,0x89D3,0x89D3,0x91D3,0x91D3,0x89D3,0x89D3,0x91F3,0x91D3,0x89D3,0x89D2,0x89D3,0x89D3,0x89D3,0x89D3,0x89D3,0x89F3,0x89D3,0x89D3,0x89D3,0x89D3,0x91F3,0x89D3,0x89D3,0x91F3,0x91D3,0x91D3,0x89D3,0x91D3,0x89D3,0x89B2,0x89D3,0x91F3,0x91F3,0x89F3,0x89D2,0x89B2,0x89D3,0x89F3,0x89F3,0x89F3,0x89D3,0x89D3,0x89D3,0x89D3,0x89D3,0x91F3,0x89D3,0x91F3,0x89D3,0x89D3,0x9213,0x91F3,0x91F3,0x91F3,0x91F3,0x89D3,0x9213,0x89F3,0x89F3,0x89F3,0x9214,0x89F3,0x8A14,0x8A14,0x8A14,0x8A13,0x89F3,0x8A14,0x8A14,0x81F3,0x81F3,0x81F3,0x8213,0x8213,0x8213,0x8214,0x8214,0x8214,0x8234,0x7A13,0x7A34,0x8275,0x7A54,0x7234,0x7213,0x69F2,0x59B1,0x494F,0x410E,0x30CD,0x28AC,0x28AC,0x28AC,0x28AC,0x28AD,0x28CD,0x20CD,0x28ED,0x28ED,0x20ED,0x210E,0x20ED,0x20ED,0x210E,0x20ED,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x210E,0x210E,0x20EE,0x210E,0x20EE,0x20EE,0x20EE,0x290E,0x20EE,0x20EE,0x20EE,0x210E,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x210E,0x210E,0x210E,0x210E,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x290E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x290E,0x20EE,0x20EE,0x20EE,0x210E,0x20EE,0x20EE,0x20EE,0x20EE,0x290E,0x290E,0x20EE,0x20EE,0x20EE,0x210E,0x20EE,0x210E,0x20EE,0x20EE,0x20EE,0x210E,0x20EE,0x20EE,0x20EE,0x210E,0x290E,0x210E,0x210E,0x210E,0x210E,0x290E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x20EE,0x20EE,0x210E,0x20EE,0x20EE,0x20EE,0x210E,0x20EE,0x210E,0x20EE,0x210E,0x210E,0x210E,0x290E,0x210E,0x210E,0x20EE,0x290E,0x290E,0x290E,0x290E,0x210E,0x210E,0x20EE,0x210E,0x20EE,0x20EE,0x20EE,0x290E,0x290E,0x290E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x20EE,0x210E,0x20EE,0x20EE,0x290E,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x210E,0x210E,0x290E,0x290E,0x290E,0x290E,0x210E,0x210E,0x210E,0x290E,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x290E,0x290E,0x290E,0x20EE,0x290E,0x290E,0x20EE,0x20EE,0x290E,0x290E,0x210E,0x210E,0x210E,0x210E,0x210E,0x20EE,0x210E,0x210E,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x290E,0x20EE,0x20EE,0x20EE,0x290E,0x20EE,0x20EE,0x20EE,0x290E,0x20EE,0x20EE,0x20EE,0x290E,0x20EE,0x20EE,0x20EE,0x290E,0x20EE,0x290E,0x20EE,0x20EE,0x20EE,0x20EE,0x290E,0x290E,0x20EE,0x290E,0x28EE,0x290E,0x20EE,0x290E,0x210E,0x290E,0x290E,0x20EE,0x20EE,0x290E,0x290E,0x290E,0x20EE,0x290E,0x290E,0x290E,0x20EE,0x20EE,0x210E,0x20EE,0x20EE,0x290E,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x28EE,0x28EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x290E,0x20EE,0x20EE,0x20EE,0x210E,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x290E,0x290E,0x20EE,0x20EE,0x290E,0x290E,0x28EE,0x28EE,0x210E,0x20EE,0x28EE,0x28EE,0x28EE,0x20EE,0x290E,0x20EE,0x290E,0x290E,0x290E,0x290E,0x20EE,0x290E,0x290F,0x290E,0x290E,0x290E,0x290F,0x290F,0x28EE,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290E,0x28EE,0x28EE,0x290F,0x290E,0x290F,0x290F,0x290F,0x28EF,0x290F,0x290F,0x290E,0x290E,0x290F,0x28EF,0x290F,0x290F,0x290F,0x28EF,0x28EF,0x28EF,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x28EF,0x290F,0x290F,0x290F,0x290F,0x290F,0x20EE,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x290F,0x290F,0x292F,0x292F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x292F,0x292F,0x292F,0x292F,0x292F,0x312F,0x290F,0x292F,0x312F,0x312F,0x312F,0x312F,0x3130,0x3130,0x3130,0x3130,0x3130,0x3130,0x3130,0x3150,0x3130,0x3130,0x3130,0x3130,0x3130,0x3131,0x3130,0x3931,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3951,0x3971,0x3951,0x3951,0x4171,0x4172,0x4172,0x4192,0x4992,0x4992,0x4992,0x4992,0x51B3,0x4993,0x5193,0x51B3,0x51B3,0x51B3,0x59B3,0x59B3,0x5993,0x6193,0x6193,0x69B3,0x79D4,0x81D4,0x81D4,0x91F5,0x9A15,0x99D4,0xA1F5,0xA9F4,0xA9D4,0xA193,0xA9F4,0xA9D3,0xA9F4,0xA9D3,0xA9D3,0xA9B2,0xA9D3,0xA9F3,0xA214,0xA254,0x9274,0x8254,0x49D1,0x2A71,0x86BF,0x5EFE,0x46FD,0x371D,0x2F1D,0x2EFC,0x36FC,0x3EBC,0x5E9C,0x6D9A,0x42B1,0x7AF4,0x9294,0x99F3,0xA1D3,0xA9D3,0xA9F4,0xA193,0xA9D4,0xA9F4,0xAA35,0x99D4,0x91F4,0x8214,0x5930,0x5150,0x4951,0x4151,0x4171,0x4191,0x4191,0x3991,0x3971,0x3150,0x3150,0x3150,0x3150,0x3150,0x3150,0x3150,0x3130,0x3130,0x3150,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x292F,0x290F,0x290F,0x290F,0x290F,0x290F,0x292F,0x290F,0x290F,0x290F,0x290F,0x210F,0x210F,0x210F,0x210F,0x290F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210E,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210E,0x210F,0x210F,0x210F,0x292F,0x292F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x212F,0x210F,0x210F,0x210F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x212F,0x212F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210E,0x210E,0x210E,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210E,0x212F,0x210E,0x210E,0x212F,0x210E,0x210E,0x210E,0x210E,0x210E,0x210F,0x210F,0x210E,0x210F,0x210F,0x210E,0x20EE,0x210E,0x210E,0x210E,0x210E,0x20EE,0x20EE,0x210F,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x190F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x190E,0x210E,0x210E,0x190E,0x190E,0x210E,0x210E,0x210E,0x210E,0x210E,0x210E,0x190E,0x190E,0x210E,0x190E,0x190E,0x210E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x190E,0x210E,0x190E,0x210E,0x190E,0x210E,0x190E,0x190E,0x210E,0x210E,0x18ED,0x190D,0x190D,0x18ED,0x18ED,0x18EE,0x18EE,0x210E,0x20EE,0x210E,0x210E,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x210E,0x210E,0x20ED,0x210D,0x210D,0x210D,0x210D,0x210D,0x190D,0x190D,0x210D, + 0x81B2,0x81B3,0x81B2,0x81B3,0x7992,0x7992,0x7992,0x8193,0x81B2,0x7992,0x7992,0x7992,0x7992,0x81B3,0x79B2,0x79B3,0x79B2,0x79B2,0x7992,0x79B3,0x79B3,0x79B3,0x79B3,0x79B3,0x79B3,0x79B3,0x81B3,0x81B3,0x79B3,0x81D3,0x79D3,0x79B3,0x81D3,0x79B3,0x79B3,0x81D3,0x79B3,0x81F3,0x81D3,0x81D3,0x81D3,0x81D3,0x81D3,0x81D3,0x81D3,0x81D3,0x81D3,0x81D4,0x81B3,0x81D3,0x81D3,0x81D4,0x81D3,0x81D4,0x81D4,0x81D4,0x81D3,0x81D4,0x89D4,0x81D4,0x81D4,0x81D4,0x81D4,0x81D4,0x81D3,0x89F4,0x81D3,0x89F4,0x81F3,0x81F3,0x81F3,0x81F3,0x81D3,0x81F4,0x81D3,0x81D3,0x81F4,0x81F4,0x81F4,0x81F4,0x81F4,0x81D3,0x81F4,0x81D3,0x81D3,0x81D4,0x81D3,0x81D4,0x81D4,0x89F4,0x81D4,0x81F4,0x81D3,0x8A14,0x89F4,0x81F3,0x8A14,0x81F4,0x81D3,0x8A14,0x81F3,0x81F3,0x81F3,0x81F3,0x81D3,0x81F4,0x81D3,0x81F4,0x81F4,0x81F4,0x89F4,0x8A14,0x81F3,0x89F4,0x89F4,0x89F4,0x89F4,0x8A14,0x81F4,0x81F4,0x81F4,0x81F4,0x81F4,0x8A14,0x8214,0x8214,0x8A35,0x8214,0x8234,0x8A35,0x8214,0x8214,0x8214,0x8214,0x8214,0x8235,0x8234,0x8234,0x8235,0x8235,0x8255,0x7A14,0x7A14,0x7214,0x7214,0x7A55,0x7A55,0x7234,0x7A75,0x7255,0x7A96,0x7295,0x72B5,0x6254,0x5A13,0x4991,0x394F,0x28EE,0x28AD,0x20CE,0x20AD,0x20CD,0x20CE,0x20EE,0x20EE,0x20EE,0x210E,0x210E,0x210E,0x210F,0x210F,0x210F,0x210F,0x210F,0x20EF,0x210F,0x20EF,0x20EF,0x18EF,0x18EF,0x18EF,0x18EF,0x18EF,0x210F,0x18EF,0x18EF,0x190F,0x18EF,0x18EF,0x190F,0x190F,0x190F,0x190F,0x210F,0x210F,0x210F,0x18EF,0x18EF,0x190F,0x18EF,0x18EF,0x18EF,0x18EF,0x18EF,0x210F,0x18EF,0x18EF,0x18EF,0x190F,0x190F,0x18EF,0x210F,0x210F,0x210F,0x190F,0x190F,0x190F,0x18EF,0x18EF,0x18EF,0x18EF,0x18EF,0x190F,0x210F,0x18EF,0x18EF,0x18EF,0x18EF,0x18EF,0x18EF,0x18EF,0x18EF,0x20EF,0x18EF,0x20EF,0x18EF,0x18EF,0x18EF,0x18EF,0x18EF,0x18EF,0x18EF,0x18EF,0x190F,0x18EF,0x18EF,0x18EF,0x18EF,0x18EF,0x18EF,0x20EF,0x18EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x210F,0x210F,0x20EF,0x190F,0x190F,0x18EF,0x18EF,0x18EF,0x18EF,0x20EF,0x20EF,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x210F,0x18EE,0x190F,0x190F,0x210F,0x210F,0x18EF,0x210F,0x20EF,0x20EF,0x18EF,0x210F,0x20EF,0x20EF,0x18EF,0x210F,0x210F,0x18EF,0x18EF,0x210F,0x20EF,0x20EF,0x18EF,0x18EF,0x18EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x18EE,0x20EE,0x210F,0x20EF,0x20EF,0x210F,0x20EF,0x210F,0x210F,0x20EF,0x210F,0x210F,0x20EF,0x20EF,0x20EF,0x20EF,0x18EF,0x210F,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EE,0x20EE,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EE,0x20EF,0x20EF,0x20EE,0x20EF,0x210F,0x20EE,0x20EF,0x20EF,0x20EF,0x20EF,0x210F,0x20EF,0x210F,0x210F,0x20EE,0x210F,0x20EE,0x20EE,0x20EF,0x20EF,0x20EF,0x20EE,0x20EF,0x210F,0x20EF,0x18EE,0x20EE,0x20EE,0x20EF,0x20EE,0x20EF,0x20EF,0x20EE,0x210F,0x20EF,0x20EF,0x20EF,0x20EE,0x20EE,0x20EF,0x20EF,0x18EF,0x18CF,0x20EF,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x18EE,0x20EE,0x20EE,0x20EE,0x20EE,0x18EE,0x20EE,0x20EE,0x18EE,0x18CE,0x18EE,0x18EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20CE,0x20EF,0x20EE,0x20CE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x18EE,0x20EE,0x210E,0x20EE,0x18EE,0x20EE,0x20EF,0x20EF,0x20EF,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x18EE,0x20EE,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EE,0x20EF,0x20EE,0x210F,0x18CE,0x18EE,0x20EE,0x18EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EE,0x20EF,0x20EE,0x20EE,0x20EF,0x20EE,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EF,0x20EE,0x20EF,0x20EF,0x20EF,0x20EF,0x210F,0x210F,0x20EF,0x20EF,0x210F,0x2930,0x290F,0x2930,0x2930,0x2910,0x2910,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2951,0x2930,0x2930,0x2930,0x2930,0x2930,0x2951,0x2951,0x2951,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2910,0x2930,0x2950,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2950,0x2930,0x2930,0x2951,0x2930,0x2930,0x2950,0x2930,0x2951,0x2951,0x2930,0x2930,0x2930,0x2951,0x2930,0x2930,0x2950,0x2130,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2931,0x2931,0x2930,0x2931,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x2950,0x2930,0x2930,0x2930,0x3130,0x2930,0x3131,0x3131,0x3151,0x3151,0x2931,0x2951,0x2951,0x2931,0x2931,0x3151,0x3131,0x3151,0x3152,0x3152,0x3152,0x3952,0x3152,0x3952,0x3972,0x3972,0x3972,0x3992,0x3992,0x3992,0x4192,0x4192,0x4192,0x4193,0x4192,0x4193,0x49B3,0x49B3,0x4993,0x49B4,0x49B3,0x49B3,0x49B4,0x49B3,0x51F4,0x51D4,0x51B3,0x59D4,0x59B4,0x59B4,0x61D4,0x61B3,0x6993,0x71D4,0x79D5,0x81F5,0x89D4,0x99F5,0x99F5,0xAA15,0xAA15,0xA1D4,0xA9D4,0xA9D3,0xB1F4,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xAA14,0xA1F3,0x9A34,0x9254,0x7253,0x31AF,0x53F6,0x871F,0x56DD,0x46FD,0x3F3D,0x3F3D,0x3F1D,0x3EDC,0x569C,0x763C,0x3B11,0x72F3,0x8A73,0x91F3,0xA1D3,0xA9F3,0xA9F4,0xA9D4,0xA9D4,0xA9F4,0xA1F4,0xA215,0x91F4,0x8A35,0x6151,0x5151,0x4971,0x4171,0x41B2,0x4192,0x39B2,0x39B2,0x3171,0x3191,0x3171,0x3171,0x3171,0x3171,0x2951,0x2951,0x2951,0x3151,0x2930,0x2950,0x2930,0x2930,0x2950,0x2950,0x2950,0x2950,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2930,0x2130,0x2110,0x2130,0x2130,0x2110,0x2110,0x2110,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x212F,0x210F,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2130,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x2130,0x1930,0x2130,0x2130,0x2130,0x1930,0x1910,0x2130,0x1930,0x2130,0x2130,0x2130,0x2130,0x2130,0x2110,0x2130,0x2110,0x2130,0x2110,0x2110,0x2130,0x190F,0x190F,0x190F,0x190F,0x1930,0x190F,0x190F,0x1910,0x1910,0x1930,0x1910,0x1910,0x1910,0x1910,0x190F,0x192F,0x192F,0x190F,0x190F,0x190F,0x190F,0x190F,0x1930,0x1910,0x190F,0x1930,0x192F,0x190F,0x1930,0x190F,0x190F,0x190F,0x190F,0x190F,0x210F,0x190F,0x2110,0x210F,0x210F,0x2110,0x190F,0x1910,0x1910,0x190F,0x18EF,0x1910,0x190F,0x190F,0x190F,0x190F,0x190F,0x192F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x192F,0x190F,0x190F,0x192F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x190F,0x192F,0x190F,0x190F,0x190F,0x190F,0x190E,0x190E,0x190E,0x190E,0x190E,0x18EE,0x18EE,0x18EE,0x18EE,0x18EF,0x18EE,0x190F,0x190F,0x18EF,0x18EF,0x18EE,0x18EE,0x18CE,0x18EF,0x18EE,0x18EE,0x190E,0x18EE,0x18EE,0x190E,0x190E,0x18EE,0x18EE,0x190E,0x190E,0x190E, + 0x8A97,0x8A76,0x8A76,0x8A76,0x8256,0x8A76,0x8A77,0x8A77,0x8A76,0x8A97,0x8A76,0x8A97,0x8A97,0x8A96,0x8A97,0x8AB7,0x8AB7,0x8AB7,0x8AB7,0x8AB7,0x8AB7,0x8AB7,0x8AB7,0x8A97,0x8296,0x8296,0x8276,0x8256,0x8276,0x8276,0x8276,0x8296,0x8256,0x8276,0x8277,0x8277,0x8276,0x8276,0x8276,0x8276,0x8276,0x8276,0x8277,0x8277,0x8A77,0x8A77,0x8257,0x8257,0x8277,0x8277,0x8277,0x8277,0x8256,0x8277,0x8257,0x8A77,0x8277,0x8A77,0x8257,0x8A57,0x8A77,0x8A77,0x8A56,0x8A77,0x8A77,0x8A76,0x8A76,0x8A76,0x8276,0x8276,0x8A76,0x8A97,0x8A97,0x8A97,0x8277,0x8A97,0x8277,0x8A97,0x8A97,0x8A97,0x8A97,0x8A97,0x8A97,0x8AB7,0x8AB7,0x8AB7,0x92B8,0x92B8,0x92B8,0x8A97,0x92B7,0x92B8,0x92D8,0x92B7,0x8A97,0x8A97,0x8A97,0x92B7,0x92D8,0x92D7,0x8AB7,0x8AB7,0x8AB7,0x8A97,0x8A97,0x8AB7,0x8A97,0x8A77,0x8A97,0x8A96,0x8A97,0x8A97,0x8A97,0x9297,0x8A97,0x8A97,0x9297,0x92B7,0x92B7,0x8AB7,0x8A97,0x8A97,0x8A97,0x8AB7,0x8AB7,0x8AB7,0x8AB8,0x8AB7,0x92D8,0x8AB7,0x8A97,0x8AB7,0x8A97,0x8AB7,0x92B7,0x8AB7,0x8AB7,0x8AB7,0x8AB7,0x8AB7,0x8AD8,0x8AD8,0x92F8,0x8AD8,0x8AF8,0x8B18,0x9339,0x9339,0x9359,0x9359,0x9379,0x8B7A,0x93BA,0x93BA,0x9BFB,0x93FB,0x8BDA,0x839A,0x7338,0x6AF7,0x62D6,0x5275,0x4A55,0x4213,0x39F3,0x31B2,0x2991,0x2971,0x2171,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2131,0x2151,0x2171,0x2151,0x2151,0x2131,0x2151,0x2131,0x2151,0x2151,0x2151,0x1951,0x1951,0x1951,0x1951,0x1951,0x1931,0x2151,0x1951,0x1930,0x1910,0x1931,0x1930,0x1931,0x1931,0x1931,0x1931,0x1951,0x1951,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x1931,0x1931,0x2151,0x1931,0x2151,0x2151,0x1951,0x1951,0x1951,0x1951,0x1951,0x1931,0x1951,0x2151,0x1931,0x2151,0x1931,0x2151,0x1931,0x1931,0x1931,0x2151,0x2131,0x1931,0x2151,0x1931,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x1951,0x1931,0x1951,0x1931,0x2131,0x2151,0x2151,0x2131,0x2131,0x2151,0x2151,0x2151,0x2151,0x2172,0x2171,0x2131,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2171,0x2171,0x2151,0x2151,0x2151,0x1931,0x2131,0x2131,0x2131,0x1931,0x2151,0x1931,0x1931,0x1931,0x1931,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2131,0x2151,0x2151,0x2151,0x2152,0x2152,0x2151,0x2152,0x2151,0x2151,0x2151,0x2152,0x2151,0x2152,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2971,0x2151,0x2131,0x2131,0x2151,0x2151,0x2171,0x2171,0x2151,0x2171,0x2171,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2171,0x2171,0x2972,0x2972,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2151,0x2971,0x2971,0x2972,0x2951,0x2972,0x2971,0x2971,0x2972,0x2971,0x2972,0x2972,0x2972,0x2972,0x2972,0x2972,0x2971,0x2972,0x2971,0x2971,0x2971,0x2971,0x2151,0x2971,0x2151,0x2151,0x2971,0x2171,0x2971,0x2171,0x2151,0x2151,0x2971,0x2971,0x2151,0x2151,0x2992,0x2992,0x2171,0x2151,0x2971,0x2971,0x2971,0x2971,0x2971,0x2972,0x2972,0x2992,0x2972,0x2972,0x2971,0x2971,0x2971,0x2971,0x2971,0x2971,0x2971,0x2971,0x2971,0x2951,0x2972,0x2971,0x2971,0x2972,0x2971,0x2971,0x2151,0x2972,0x2971,0x2971,0x2971,0x2972,0x2972,0x2971,0x2971,0x2971,0x2971,0x2972,0x2971,0x2971,0x2972,0x2971,0x2972,0x2972,0x2972,0x2972,0x2972,0x2972,0x2972,0x2972,0x2972,0x2972,0x2972,0x2972,0x3192,0x3192,0x2971,0x2971,0x2971,0x2971,0x2971,0x2951,0x2951,0x2951,0x2992,0x2992,0x2991,0x2991,0x2991,0x2992,0x2972,0x2992,0x2972,0x2972,0x2951,0x2951,0x3172,0x2972,0x2992,0x2992,0x2992,0x2992,0x2971,0x2971,0x2972,0x2972,0x2972,0x2972,0x2972,0x2972,0x2972,0x2972,0x2972,0x2971,0x2971,0x2971,0x2972,0x2971,0x2992,0x2972,0x2971,0x2972,0x2971,0x2971,0x2971,0x2971,0x2971,0x2972,0x2971,0x2972,0x2972,0x2972,0x2972,0x2972,0x2992,0x2992,0x2992,0x3192,0x2972,0x2972,0x3192,0x3192,0x31B2,0x31B2,0x3192,0x31B2,0x31B2,0x31B3,0x31B3,0x31B3,0x3192,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31D3,0x31D3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x3193,0x31B3,0x31B3,0x31B3,0x3193,0x3193,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x3193,0x3192,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31D3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x31B3,0x2992,0x3193,0x31B3,0x31B3,0x31B3,0x3193,0x3193,0x2992,0x31B3,0x3193,0x2993,0x3193,0x3193,0x2992,0x2992,0x3193,0x2992,0x2992,0x2993,0x2993,0x2992,0x2992,0x2992,0x2993,0x2992,0x2993,0x2973,0x2973,0x2972,0x3193,0x3193,0x3193,0x3193,0x3193,0x3193,0x31B3,0x3193,0x2993,0x2972,0x2973,0x2993,0x3193,0x3193,0x3193,0x3193,0x31B3,0x3193,0x3192,0x3192,0x2992,0x31B3,0x31B3,0x3192,0x2972,0x3193,0x3172,0x31B3,0x31B3,0x3193,0x2973,0x3193,0x3193,0x3173,0x3173,0x3173,0x3173,0x3193,0x3993,0x39B4,0x3994,0x3994,0x3994,0x39B3,0x39B4,0x39B4,0x39B3,0x41D4,0x39D4,0x39B4,0x41D4,0x41B3,0x39B3,0x41D4,0x41B4,0x41B4,0x41B4,0x41B4,0x49B4,0x49F5,0x49F5,0x49F5,0x49D4,0x49D4,0x49D4,0x51F5,0x51F5,0x51F5,0x51D4,0x59F5,0x59D4,0x61F5,0x61D4,0x61B4,0x69B4,0x71D5,0x79D5,0x9257,0x91F5,0x99F4,0xA1F4,0xAA15,0xA1D3,0xA9D3,0xA1B3,0xA9F3,0xA9D3,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xAA14,0xA213,0x9A54,0x8A74,0x6A73,0x216D,0x7D9B,0x871F,0x4E9C,0x46FC,0x3F1C,0x3EFC,0x3EBB,0x569B,0x765C,0x3B52,0x6AD2,0x8232,0x9A33,0xA1F3,0xA1D3,0xA9D3,0xA1B3,0xA9F4,0xA9D4,0xA1F4,0xA1F4,0x9A14,0x9255,0x69B3,0x5992,0x4992,0x4192,0x41B2,0x41D3,0x41D3,0x39D3,0x31B3,0x39D3,0x31B3,0x31B2,0x2993,0x2993,0x2993,0x2993,0x2993,0x3172,0x2972,0x2972,0x2972,0x2972,0x2971,0x2972,0x2972,0x2972,0x2952,0x2952,0x2952,0x2952,0x2152,0x2952,0x2972,0x2972,0x2172,0x2172,0x2172,0x2172,0x2172,0x2172,0x2151,0x2172,0x2172,0x2172,0x2172,0x2172,0x2172,0x2172,0x2172,0x2172,0x2172,0x2171,0x2151,0x2151,0x2151,0x2172,0x2151,0x2172,0x2172,0x2172,0x2151,0x2152,0x2172,0x2151,0x2151,0x2152,0x2151,0x2151,0x2151,0x2172,0x2172,0x2172,0x2172,0x2152,0x2152,0x1951,0x1951,0x2172,0x2152,0x2172,0x2172,0x2152,0x2152,0x2152,0x2152,0x2172,0x2151,0x2172,0x2172,0x2152,0x2152,0x2152,0x2152,0x2152,0x2151,0x2151,0x1931,0x2172,0x2152,0x2172,0x2172,0x2152,0x2152,0x2172,0x2151,0x2172,0x2172,0x2172,0x2172,0x2172,0x2152,0x2172,0x2172,0x2172,0x2172,0x2172,0x2172,0x2152,0x1952,0x2172,0x1951,0x2152,0x1951,0x1951,0x1951,0x2152,0x1951,0x2172,0x1972,0x2172,0x1951,0x1952,0x1952,0x1931,0x1931,0x1952,0x1951,0x1931,0x1931,0x1951,0x1951,0x1951,0x1931,0x1951,0x1951,0x1951,0x1931,0x1951,0x1951,0x1951,0x1951,0x1951,0x1951,0x1931,0x1931,0x1931,0x1931,0x1951,0x1951,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1931,0x1951,0x1951,0x1930,0x1951,0x1931,0x1951,0x1931,0x1951,0x1931,0x1951,0x1931,0x1931,0x1931,0x1930,0x1931,0x1931,0x1930,0x1931,0x1930,0x1930,0x1930,0x1930,0x1910,0x1930,0x1910,0x1930,0x1930,0x1931,0x1110,0x1930,0x1910,0x1910,0x1910,0x1910,0x1910,0x1911,0x1911,0x1911,0x1911,0x1910,0x1910,0x1911,0x10F0,0x1931,0x1910,0x1110,0x1110,0x1110,0x1110,0x1930,0x1110,0x1110,0x1110,0x1110,0x1110,0x1130,0x1130,0x1110,0x1110,0x1110,0x10EF,0x110F,0x110F,0x1130,0x1110,0x1110,0x1110,0x1110,0x10F0,0x10F0,0x1110,0x1110,0x1110,0x1110,0x1110,0x1110,0x110F,0x110F,0x110F,0x1110,0x1110,0x110F,0x110F,0x10EF,0x10EF,0x10EF,0x110F,0x110F,0x10EF,0x10EF,0x10EF,0x10EF,0x10EF,0x10EF,0x10EF,0x10EF,0x10EF,0x110F,0x10EF,0x10EF,0x10EF,0x10EF,0x10EF,0x10EF,0x10EF,0x10EF,0x10EF,0x10EE,0x10EE,0x110E,0x10EE,0x110E,0x110E, + 0x59B3,0x5193,0x5172,0x5172,0x5172,0x5192,0x5993,0x5993,0x5993,0x5993,0x5993,0x5993,0x5192,0x5172,0x5172,0x5172,0x4972,0x4972,0x5172,0x5172,0x5172,0x5172,0x5192,0x5172,0x5192,0x5172,0x5172,0x5193,0x5993,0x51B3,0x59D3,0x59D3,0x59D3,0x59D4,0x59F4,0x59F4,0x59F4,0x59F4,0x59D4,0x59D4,0x59F4,0x59D4,0x61F4,0x61F4,0x61F4,0x59D4,0x59D4,0x59D4,0x61F4,0x59F4,0x61F4,0x61F4,0x6215,0x61F5,0x61F5,0x61F5,0x61F4,0x59D4,0x61F5,0x61D5,0x61F5,0x61F4,0x61F5,0x61F4,0x61F4,0x61F4,0x61F4,0x61F4,0x61F4,0x61F4,0x6214,0x6214,0x6214,0x6214,0x6215,0x59F4,0x6214,0x59F4,0x59F4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59D4,0x59B3,0x59D4,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59B3,0x59D4,0x59D4,0x59D4,0x61F4,0x59F4,0x6214,0x59F4,0x6235,0x6214,0x6215,0x6215,0x6A35,0x61F4,0x6A35,0x6214,0x6A15,0x6214,0x6A15,0x6A14,0x6A15,0x61F4,0x6A14,0x6214,0x6A35,0x6214,0x6214,0x6215,0x6235,0x6215,0x6215,0x6215,0x6215,0x59F4,0x6215,0x6214,0x6215,0x61F4,0x6215,0x6215,0x6215,0x6215,0x6235,0x6215,0x6235,0x6215,0x6215,0x6215,0x6215,0x6215,0x6215,0x5A14,0x6215,0x59F4,0x59F4,0x51D4,0x51F4,0x51F4,0x49D3,0x49F4,0x5214,0x5214,0x5235,0x5255,0x5255,0x5255,0x5295,0x4254,0x4235,0x39F4,0x31F3,0x29B2,0x2192,0x2192,0x1972,0x1972,0x1972,0x1972,0x1952,0x1972,0x1973,0x1973,0x2193,0x2193,0x1993,0x1973,0x1973,0x1993,0x1973,0x1973,0x1972,0x1992,0x1992,0x1992,0x1992,0x1972,0x1972,0x1972,0x1972,0x1972,0x1972,0x1972,0x1972,0x1992,0x1993,0x19B3,0x19B3,0x19B3,0x19B3,0x1993,0x1993,0x1993,0x1993,0x1993,0x1992,0x1972,0x1972,0x1972,0x1972,0x1993,0x1993,0x19B3,0x1993,0x1972,0x1972,0x1993,0x1992,0x1993,0x1993,0x1993,0x2193,0x21B3,0x1993,0x1993,0x21B3,0x1993,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x1993,0x21B3,0x1993,0x2193,0x21B3,0x2193,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x2193,0x21B3,0x21B3,0x2193,0x21B3,0x2193,0x21B3,0x21D3,0x21B3,0x21B3,0x21B3,0x21B3,0x19B2,0x19B3,0x21B3,0x1992,0x19B3,0x21B3,0x21B3,0x21D3,0x21D3,0x21D3,0x19B3,0x21B3,0x21D4,0x21D4,0x21D4,0x21B3,0x21B3,0x21D4,0x21D4,0x21D4,0x21B3,0x21D4,0x21D4,0x21D3,0x21D3,0x21D4,0x21D4,0x21D4,0x21D4,0x29D4,0x21D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x21B3,0x29D3,0x29D4,0x29D4,0x29F4,0x29D3,0x29F4,0x29D4,0x29D4,0x29D4,0x29D4,0x21B3,0x29D3,0x29F4,0x21B3,0x21B3,0x21D3,0x21D3,0x21D3,0x21D3,0x21D3,0x21D3,0x29D4,0x29F4,0x29D4,0x29D4,0x29D4,0x29D3,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29D4,0x29D4,0x29F4,0x29F4,0x29D4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x3214,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x2A14,0x29F4,0x2A14,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29D4,0x3214,0x29F4,0x2A14,0x29D4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x2A14,0x29F4,0x2A14,0x29F4,0x29F4,0x2A14,0x29F4,0x3214,0x3214,0x3214,0x31F4,0x3214,0x3214,0x3214,0x3214,0x3214,0x3214,0x31F4,0x3214,0x3214,0x3214,0x3214,0x3214,0x3235,0x3214,0x3214,0x3214,0x3214,0x3214,0x3214,0x3214,0x3235,0x3214,0x3214,0x3214,0x3215,0x3214,0x3214,0x3214,0x31F4,0x31F4,0x3214,0x31F4,0x3214,0x31F4,0x3214,0x31F4,0x31F4,0x31F4,0x31F4,0x31F4,0x3214,0x31F4,0x31F4,0x29F3,0x3214,0x3214,0x3214,0x29F4,0x3214,0x3234,0x3235,0x3235,0x3A35,0x3A15,0x3A15,0x31F4,0x3A15,0x3214,0x3234,0x3235,0x3235,0x3235,0x3235,0x3235,0x3A35,0x3A35,0x3A35,0x3215,0x3A55,0x3A35,0x3A35,0x3A35,0x3A55,0x3A35,0x3A55,0x3A35,0x3A35,0x3235,0x3A55,0x3A55,0x3A55,0x3235,0x3A35,0x3A35,0x3A35,0x3234,0x3A35,0x3235,0x3A35,0x3A35,0x3214,0x3214,0x3215,0x3215,0x3235,0x3235,0x3215,0x31F4,0x3214,0x3215,0x31F4,0x31D4,0x31F4,0x31D3,0x31F4,0x31F4,0x29D3,0x29F4,0x3214,0x3214,0x31F4,0x31F4,0x31F4,0x31F4,0x31F4,0x31F4,0x31F4,0x31F4,0x31D4,0x31F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29F4,0x31F4,0x31F4,0x31F4,0x31F4,0x31F4,0x31D4,0x31F4,0x29D4,0x29D4,0x31D4,0x31D4,0x31F4,0x31F4,0x31D4,0x31D4,0x31F4,0x31F4,0x29D4,0x29D4,0x29D4,0x31D4,0x31F4,0x31F4,0x31F4,0x31F4,0x31F4,0x29D4,0x31F4,0x29F4,0x29F4,0x29F4,0x29F4,0x29D3,0x29D4,0x31F4,0x31D4,0x31D4,0x31F4,0x29D3,0x29F4,0x31F4,0x29F4,0x29F4,0x29D3,0x29D3,0x29F4,0x29F4,0x31F4,0x29B3,0x29D4,0x29D4,0x31F4,0x29D4,0x29D3,0x29B3,0x29D4,0x29D4,0x29F4,0x29D4,0x29D3,0x29D4,0x29D4,0x29F4,0x29D4,0x29D4,0x29F4,0x29F4,0x29D4,0x29D4,0x29F4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29B4,0x29D4,0x29D4,0x29D4,0x29D4,0x29F4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x29B4,0x21B3,0x29D4,0x29F4,0x29F4,0x29D4,0x29B3,0x29B3,0x29D4,0x31F4,0x29D4,0x29D4,0x29D4,0x29D4,0x29D4,0x31D4,0x29B4,0x29B4,0x31D4,0x31D4,0x31B4,0x31D5,0x31D5,0x31D4,0x31D4,0x31D4,0x31D4,0x31B4,0x31D4,0x31F4,0x31F4,0x39F4,0x31D4,0x39D4,0x39D4,0x39D4,0x39F4,0x39D4,0x39D4,0x41F5,0x41F5,0x41F5,0x41F5,0x4A16,0x4215,0x4215,0x4215,0x4A36,0x4A15,0x5235,0x5215,0x5215,0x5215,0x5A15,0x5A15,0x6236,0x6216,0x61F5,0x71F6,0x79F5,0x81F5,0x9235,0x99F4,0xA214,0xA214,0xA9F4,0xA1D3,0xA9D3,0xA9D3,0xA9F3,0xA9F3,0xA9D3,0xA9B3,0xA9F3,0xA1F3,0x9A13,0x9233,0x8273,0x5A52,0x322F,0x9EDF,0x66BD,0x4EBC,0x46DC,0x471C,0x46BB,0x4E7B,0x769D,0x43D3,0x62D2,0x8273,0x9213,0xA1F3,0xA1D3,0xA1B3,0xA9F4,0xA9D4,0xA9F4,0xAA15,0xA215,0x9A14,0x89F4,0x7A14,0x5172,0x4992,0x41B3,0x39D3,0x39D4,0x31D4,0x31F4,0x29D3,0x31F4,0x29F4,0x29D3,0x29D3,0x21B4,0x21B4,0x21B4,0x21B4,0x2193,0x2193,0x21B3,0x21B3,0x21B3,0x2193,0x2193,0x2193,0x2193,0x2193,0x2172,0x2173,0x2173,0x2193,0x2173,0x2193,0x21B3,0x2193,0x2193,0x1993,0x2193,0x1973,0x1993,0x1993,0x1993,0x1993,0x1993,0x1993,0x1993,0x1993,0x1992,0x1992,0x1993,0x1992,0x1992,0x1972,0x1972,0x1992,0x1972,0x1992,0x1993,0x1972,0x1993,0x1972,0x1992,0x1972,0x1972,0x1972,0x1972,0x1972,0x1972,0x1972,0x1972,0x1972,0x1993,0x1973,0x1973,0x1972,0x1972,0x1992,0x1972,0x1972,0x1993,0x1972,0x1993,0x1993,0x1972,0x1972,0x1972,0x1972,0x1972,0x1972,0x1952,0x1973,0x1952,0x1952,0x1973,0x1972,0x1972,0x1972,0x1972,0x1972,0x1992,0x1992,0x1972,0x1972,0x1972,0x1972,0x1972,0x1172,0x1172,0x1172,0x1972,0x1152,0x1152,0x1152,0x1172,0x1172,0x1172,0x1172,0x1152,0x1152,0x1152,0x1152,0x1152,0x1152,0x1152,0x1152,0x1152,0x1152,0x1152,0x1172,0x1172,0x1172,0x1152,0x1152,0x1152,0x1152,0x1152,0x1132,0x1152,0x1132,0x1152,0x1151,0x1152,0x1152,0x1151,0x1131,0x1131,0x1131,0x1131,0x1131,0x1152,0x1152,0x1152,0x1131,0x1132,0x1131,0x1131,0x1131,0x1131,0x1152,0x1152,0x1131,0x1132,0x1132,0x1131,0x1131,0x1152,0x1151,0x1152,0x1151,0x1151,0x1151,0x1151,0x1131,0x1132,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x1131,0x0931,0x0911,0x1131,0x0911,0x0911,0x0911,0x1131,0x1111,0x0911,0x1131,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x1111,0x0911,0x0911,0x1111,0x0911,0x0910,0x0910,0x0910,0x0910,0x0910,0x08F0,0x0910,0x0910,0x0910,0x0910,0x0910,0x0910,0x0910,0x08F0,0x0910,0x0910,0x0910,0x0910,0x0910,0x0910,0x0910,0x0910,0x08F0,0x0910,0x08F0,0x0910,0x0910,0x0910,0x0910,0x08F0,0x08F0,0x08F0,0x08F0,0x0910,0x0910,0x0910,0x08EF,0x0910,0x08EF,0x08EF,0x08EF,0x08EF,0x08EF,0x08EF,0x08EF,0x08EF,0x08F0,0x08EF,0x08EF,0x08F0,0x08F0,0x08F0,0x08F0,0x08EF,0x08EF,0x08EF,0x08CF,0x08EF,0x08EF,0x08EF,0x08EF,0x08EF,0x08EE,0x08EF,0x08EF,0x090F, + 0x000C,0x000C,0x000C,0x080C,0x080B,0x080B,0x080B,0x080B,0x080B,0x080B,0x080B,0x080B,0x080B,0x080B,0x080B,0x080B,0x080B,0x080B,0x000B,0x080B,0x080B,0x080B,0x080B,0x080B,0x080B,0x000B,0x080B,0x080B,0x080B,0x080B,0x080B,0x080C,0x000B,0x000B,0x080B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x080C,0x000B,0x000B,0x000B,0x080C,0x000B,0x080B,0x080B,0x080B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000C,0x000C,0x080C,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000C,0x000C,0x000C,0x000C,0x080C,0x080C,0x080C,0x000B,0x080C,0x080C,0x080C,0x080C,0x080C,0x080C,0x080C,0x080C,0x080C,0x080C,0x000C,0x000C,0x000C,0x000C,0x000B,0x000C,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x080B,0x000B,0x080B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000B,0x000C,0x000C,0x000C,0x000C,0x000B,0x000B,0x000C,0x000C,0x000C,0x080C,0x080C,0x080C,0x080C,0x000C,0x000C,0x000C,0x000C,0x000C,0x080C,0x080D,0x082D,0x104D,0x082D,0x082D,0x082D,0x082D,0x106E,0x106E,0x086D,0x088D,0x086D,0x004D,0x086D,0x006D,0x08AE,0x08CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F1,0x00F0,0x00F1,0x00F1,0x00F0,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0111,0x0111,0x0131,0x0111,0x0131,0x0131,0x0110,0x0110,0x0111,0x0111,0x0131,0x0131,0x0111,0x0111,0x0111,0x0111,0x0131,0x0131,0x0151,0x0131,0x0131,0x0110,0x0110,0x0110,0x0131,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x0110,0x00F0,0x00F0,0x00F0,0x0111,0x0110,0x0111,0x0110,0x0131,0x0111,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x0110,0x00F0,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0131,0x0110,0x0131,0x0110,0x00F0,0x00F0,0x0131,0x0111,0x0131,0x0131,0x0110,0x0110,0x0131,0x0110,0x0110,0x0130,0x0130,0x0131,0x0131,0x0131,0x0130,0x0130,0x0131,0x0130,0x0110,0x0110,0x0110,0x0110,0x0131,0x0131,0x0131,0x0131,0x00F0,0x0110,0x0131,0x0110,0x0110,0x0110,0x0130,0x0110,0x0110,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x00F0,0x00F0,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x0131,0x0131,0x0110,0x0131,0x0110,0x0110,0x0130,0x0110,0x0110,0x0110,0x0130,0x0110,0x0131,0x0130,0x0110,0x0110,0x0131,0x0130,0x0110,0x0110,0x00EF,0x00F0,0x0130,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x0131,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x00F0,0x00F0,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x00F0,0x0110,0x00F0,0x00F0,0x0110,0x0110,0x00F0,0x0110,0x00F0,0x0110,0x0130,0x0110,0x00F0,0x0110,0x0130,0x0130,0x0110,0x00F0,0x00EF,0x00EF,0x0110,0x0110,0x0110,0x0110,0x010F,0x0110,0x00EF,0x00EF,0x0110,0x0110,0x00F0,0x00EF,0x00EF,0x00EF,0x00EF,0x00EF,0x00EF,0x00EF,0x00EF,0x0110,0x00F0,0x00F0,0x0110,0x00F0,0x00F0,0x00F0,0x00EF,0x00EF,0x00F0,0x00F0,0x00EF,0x00F0,0x00F0,0x0110,0x0110,0x0110,0x0110,0x00F0,0x0110,0x0110,0x00F0,0x00F0,0x0110,0x0110,0x0110,0x0110,0x00EF,0x00EF,0x00F0,0x00F0,0x00F0,0x0110,0x0930,0x0930,0x0110,0x0110,0x00EF,0x00EF,0x0110,0x0110,0x00EF,0x00EF,0x00EF,0x00EF,0x0110,0x00F0,0x00EF,0x00EF,0x00EF,0x00EF,0x00EF,0x00EF,0x00CF,0x00EF,0x0110,0x00EF,0x00EF,0x00EF,0x00EF,0x00EF,0x00F0,0x00F0,0x00F0,0x00F0,0x00EF,0x00EF,0x0110,0x0110,0x00EF,0x00F0,0x00F0,0x00EF,0x00EF,0x00EF,0x00F0,0x00F0,0x00EF,0x00EF,0x00EF,0x00EF,0x0130,0x010F,0x0110,0x0130,0x0130,0x0130,0x0130,0x0131,0x0110,0x0131,0x0971,0x0931,0x0910,0x0931,0x0910,0x0110,0x0930,0x0951,0x0110,0x0110,0x0131,0x0931,0x0131,0x0931,0x0951,0x0931,0x0931,0x0931,0x0931,0x0931,0x0931,0x0931,0x0931,0x0931,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0931,0x0931,0x0131,0x0931,0x0931,0x0931,0x0931,0x0951,0x0931,0x0951,0x0931,0x0931,0x0931,0x0951,0x0931,0x0931,0x0931,0x0931,0x0951,0x0951,0x0951,0x0951,0x0951,0x0951,0x0951,0x0131,0x0951,0x0951,0x0951,0x0951,0x0951,0x0951,0x0951,0x0951,0x0951,0x0951,0x0931,0x0951,0x0151,0x0130,0x0131,0x0110,0x0131,0x0951,0x0951,0x0130,0x0931,0x0951,0x0951,0x0110,0x0931,0x0931,0x0931,0x0951,0x0151,0x0131,0x0131,0x0951,0x0951,0x0951,0x0951,0x0952,0x0131,0x0951,0x0951,0x0951,0x0131,0x0931,0x0931,0x0951,0x0951,0x0131,0x0931,0x0931,0x0931,0x0931,0x0931,0x0951,0x0951,0x0931,0x0931,0x0131,0x0131,0x0131,0x0131,0x0951,0x0951,0x0931,0x0931,0x0952,0x0952,0x0932,0x0931,0x0931,0x0931,0x0952,0x0952,0x0972,0x0972,0x0131,0x0151,0x0951,0x0131,0x0951,0x0951,0x0110,0x0111,0x1172,0x0952,0x0952,0x0952,0x1172,0x1172,0x1172,0x1172,0x1172,0x1172,0x1152,0x1152,0x1152,0x1152,0x1172,0x1152,0x1172,0x1172,0x1152,0x1172,0x1172,0x1172,0x1992,0x1992,0x19B3,0x1993,0x2193,0x2193,0x21B3,0x21B3,0x2193,0x21B3,0x21B3,0x29B4,0x29D4,0x29D4,0x29D4,0x31D4,0x31F4,0x31D4,0x39F4,0x39F4,0x4215,0x41F5,0x49F5,0x49F5,0x51F5,0x59F5,0x6215,0x71F5,0x79F4,0x89F4,0x9214,0x99F4,0xA1D3,0xA9F3,0xA9D3,0xA9F3,0xA9D3,0xA9F3,0xA9B3,0xA9D3,0xA9F3,0xA9F3,0xAA34,0x9A34,0x8A33,0x7A73,0x49F0,0x5394,0x9F7F,0x66DD,0x4EDC,0x46DB,0x46BB,0x569B,0x6E9C,0x5CB7,0x5AB2,0x8293,0x8A12,0x99F3,0xAA14,0xAA14,0xA1B3,0xA9D4,0xA9D4,0xAA14,0xA215,0x9A35,0x8A14,0x8234,0x5172,0x4172,0x3993,0x3193,0x21B3,0x21B3,0x19B3,0x19B3,0x19B3,0x11B3,0x11B3,0x11B3,0x1193,0x1173,0x1173,0x1173,0x1173,0x0972,0x0972,0x0952,0x0951,0x0951,0x0951,0x0952,0x0952,0x0952,0x0952,0x0952,0x0932,0x0931,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0151,0x0131,0x0131,0x0131,0x0131,0x0111,0x0111,0x0111,0x0131,0x0130,0x0110,0x0130,0x0130,0x0130,0x0131,0x0131,0x0131,0x0111,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0111,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0151,0x0131,0x0111,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0111,0x0131,0x0111,0x0131,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x0131,0x0131,0x0111,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0131,0x0111,0x0111,0x0111,0x0131,0x0131,0x0131,0x0111,0x0131,0x0111,0x0111,0x0131,0x0131,0x0131,0x0131,0x0131,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0110,0x00F0,0x0110,0x0110,0x0111,0x0111,0x0111,0x0111,0x0111,0x0110,0x0111,0x0111,0x0110,0x0110,0x00F0,0x0110,0x00F0,0x0110,0x0110,0x0110,0x0110,0x0110,0x0110,0x0111,0x0110,0x0110,0x0110,0x00F0,0x0110,0x0111,0x00F0,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x0111,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x0110,0x0110,0x0110,0x0110,0x0111,0x0111,0x0110,0x00F0,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00EF,0x00EF,0x00EF,0x00EF,0x00EF,0x00F0,0x00EF,0x00F0,0x00EF,0x00CF,0x00EF,0x00F0,0x00CF,0x00D0,0x00CF,0x00F0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00EF,0x00EF,0x010F,0x010F,0x00EF,0x00EF,0x00EF,0x00EF, + 0x00CE,0x00CE,0x00CE,0x00AE,0x00AD,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x00AD,0x008D,0x008D,0x008D,0x006D,0x008C,0x008D,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00CD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00CE,0x00CE,0x00CD,0x00CE,0x00CE,0x00CE,0x00CD,0x00CD,0x00CD,0x00EE,0x00EE,0x00EE,0x00EE,0x00CE,0x00EE,0x00CE,0x00CE,0x00CE,0x00CE,0x00CE,0x00CE,0x00CE,0x00CE,0x00AE,0x00AE,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00CE,0x00CE,0x00CE,0x00CE,0x00CE,0x00CE,0x00EE,0x00EE,0x00EE,0x00EE,0x00EE,0x00EE,0x00EE,0x00CD,0x00ED,0x00CD,0x00CD,0x00CD,0x00CD,0x00CD,0x00CD,0x00CE,0x00CD,0x00CD,0x00EE,0x00CD,0x00CD,0x00CD,0x00EE,0x00CE,0x00EE,0x00EE,0x00EE,0x00EE,0x00CE,0x00CE,0x00CE,0x00EE,0x00CE,0x00CE,0x00CE,0x00CD,0x00AD,0x00CD,0x00CE,0x00CE,0x00CE,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00CE,0x00CE,0x00CD,0x00CE,0x00CE,0x00EE,0x010E,0x010F,0x012F,0x012F,0x014F,0x0170,0x0170,0x0170,0x0170,0x0171,0x0191,0x01B1,0x01B1,0x01B2,0x01D2,0x01B2,0x01B2,0x01B2,0x01D2,0x01D2,0x01D2,0x01B3,0x01B2,0x01B2,0x01B3,0x01B2,0x01B2,0x01D2,0x01D2,0x01D2,0x01D2,0x01F2,0x01F2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D3,0x01D3,0x01D3,0x01D3,0x01D3,0x01D2,0x01D2,0x01D2,0x01D2,0x01D3,0x01D2,0x01D2,0x01D3,0x01D3,0x01D2,0x01F3,0x01D3,0x01F3,0x01F3,0x01F2,0x01F2,0x01D2,0x01D2,0x01D2,0x01F2,0x01F3,0x01F3,0x01F2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01F2,0x01D2,0x01F2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01F2,0x01F3,0x01F3,0x01F2,0x01D2,0x01F3,0x01F2,0x01F3,0x01F2,0x01F3,0x01F3,0x01F2,0x01F2,0x0213,0x0213,0x01F2,0x01F2,0x01D2,0x01F3,0x0233,0x0213,0x01F3,0x01F3,0x01F2,0x01F2,0x01F2,0x01F3,0x01D2,0x01F2,0x01F2,0x01F2,0x0213,0x0213,0x01F2,0x01D2,0x01D2,0x01D2,0x01D2,0x01F2,0x0212,0x0213,0x0213,0x0213,0x01F3,0x01F3,0x01D2,0x01D2,0x01F3,0x01F2,0x01F2,0x01F2,0x01F2,0x01F2,0x01D2,0x01F2,0x01F2,0x01F2,0x01F2,0x01F2,0x01F3,0x01F3,0x01F2,0x01F2,0x01F2,0x01F3,0x01F2,0x01F2,0x01F2,0x01F2,0x01F2,0x0213,0x01F2,0x01F3,0x0213,0x01F3,0x01F2,0x0212,0x01F2,0x0212,0x0212,0x0213,0x01F2,0x0233,0x0A54,0x0233,0x01D2,0x01F3,0x01F2,0x0212,0x0212,0x0213,0x01F2,0x01F2,0x0213,0x0A33,0x0213,0x0A33,0x01F2,0x0212,0x0212,0x0212,0x01F2,0x0212,0x0212,0x0213,0x0A33,0x0A33,0x01F2,0x0212,0x01F2,0x0A12,0x0A13,0x0A13,0x01F2,0x0212,0x0212,0x0212,0x01F2,0x0212,0x01F2,0x0212,0x0212,0x0A13,0x01F2,0x0212,0x0212,0x0A13,0x01F2,0x0A13,0x0212,0x0212,0x0212,0x0212,0x01F2,0x0A12,0x0A12,0x0A12,0x0212,0x0A12,0x0A12,0x0A32,0x0A12,0x0A13,0x0A13,0x0A13,0x0A12,0x0A13,0x0A13,0x0A13,0x0A13,0x0A33,0x0A13,0x0A13,0x01F2,0x0A13,0x0A13,0x0A33,0x0A33,0x0A33,0x0A12,0x0A12,0x0A33,0x0A33,0x0212,0x0A53,0x0A33,0x0A53,0x0A53,0x0A33,0x0A33,0x0A33,0x0A33,0x0A33,0x0A33,0x0A33,0x0A33,0x0A53,0x0A32,0x0A33,0x0A32,0x0A32,0x0A32,0x0A33,0x0A12,0x0A33,0x0A32,0x0A33,0x0A33,0x0A33,0x0A33,0x1233,0x0A33,0x1253,0x0A32,0x0A33,0x0A12,0x1233,0x1233,0x1233,0x1233,0x1253,0x1233,0x1253,0x1233,0x1253,0x1233,0x1253,0x1233,0x1253,0x0A33,0x1233,0x1233,0x0A12,0x0A12,0x1232,0x1233,0x1233,0x1233,0x1253,0x1253,0x1253,0x0A33,0x0A33,0x0A33,0x1253,0x0A53,0x1253,0x0A33,0x1253,0x1233,0x1253,0x1233,0x1253,0x1212,0x1233,0x1233,0x1253,0x0A12,0x1253,0x1233,0x1253,0x1253,0x1253,0x0A33,0x1253,0x1233,0x1253,0x1253,0x1253,0x1253,0x1273,0x1253,0x1253,0x1253,0x1253,0x1253,0x1253,0x1253,0x1273,0x1253,0x1253,0x1253,0x1273,0x1253,0x1273,0x1253,0x1273,0x1253,0x1273,0x0A53,0x1273,0x0A53,0x0A53,0x0A33,0x0A33,0x0A12,0x0A33,0x1253,0x1233,0x01B1,0x0A12,0x1233,0x1253,0x1274,0x0A33,0x0212,0x1253,0x1274,0x0A33,0x01D1,0x0A12,0x0A12,0x1213,0x0A12,0x0A13,0x0A12,0x0A33,0x0A12,0x0A33,0x0A33,0x0A33,0x0A32,0x0A53,0x0A33,0x0A53,0x0A33,0x1253,0x0A33,0x0A33,0x0A33,0x0A33,0x0A33,0x0A33,0x0A13,0x0A13,0x0A12,0x0A33,0x0A33,0x0A33,0x0A12,0x0A33,0x0A33,0x0A33,0x0A13,0x0A33,0x0A33,0x0A33,0x0A12,0x0A33,0x0A33,0x0A33,0x0A33,0x0A33,0x0A33,0x1233,0x0A12,0x0A33,0x0A33,0x1233,0x09F2,0x0A12,0x0A12,0x0A12,0x0A32,0x0A33,0x0A12,0x0A33,0x0A12,0x0A12,0x0A13,0x1254,0x1254,0x0A33,0x0A12,0x1253,0x1233,0x0A33,0x09F2,0x0A13,0x0A33,0x0A53,0x0A33,0x0A33,0x0A12,0x0A13,0x0A33,0x0A33,0x0A13,0x0A13,0x0A13,0x0A33,0x0212,0x0A13,0x0A12,0x0A12,0x0A12,0x0A13,0x01F2,0x0212,0x01F2,0x01F2,0x01F2,0x01F2,0x01F2,0x0A13,0x0A13,0x0A13,0x01F2,0x0A12,0x0212,0x0A13,0x0A13,0x0A33,0x0A13,0x0A33,0x0A13,0x0A33,0x0A13,0x0A33,0x0A13,0x0A13,0x09F3,0x0A13,0x0A54,0x0A54,0x0A33,0x0A33,0x0212,0x0A33,0x0A33,0x0A33,0x01F2,0x01F2,0x01D2,0x0A13,0x1254,0x0A33,0x01D2,0x0A13,0x1234,0x0A34,0x09F3,0x0A13,0x0A13,0x0A13,0x09F2,0x09F3,0x09F3,0x0A13,0x1213,0x1233,0x1213,0x1213,0x0A12,0x1213,0x1213,0x1233,0x1213,0x1233,0x1213,0x1A33,0x11F2,0x1A13,0x1A13,0x1A13,0x19F3,0x1A13,0x1A13,0x2234,0x2234,0x2234,0x1A13,0x2233,0x2213,0x2213,0x21F2,0x2A13,0x29F3,0x29F3,0x29B2,0x29B2,0x2971,0x3992,0x4171,0x5191,0x6171,0x8234,0x9214,0x9A14,0xA1F4,0xA9F3,0xA9D3,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xB214,0xA9F3,0xA213,0x9213,0x8232,0x6A53,0x298E,0x7D9B,0x871F,0x567B,0x4EBB,0x4EDC,0x4E9B,0x667C,0x6539,0x52F2,0x7272,0x8A12,0x9A13,0xA1F3,0xA9F4,0xA1B3,0xA9B3,0xA9F4,0xAA14,0xA1F4,0xA235,0x8A14,0x79F3,0x4130,0x20CE,0x10EF,0x1150,0x0971,0x09B1,0x0191,0x01B1,0x0191,0x01B1,0x01B1,0x01D2,0x01B2,0x01B2,0x01B2,0x01B2,0x01B2,0x01B2,0x01B2,0x01B1,0x01B1,0x01B2,0x01B2,0x01D2,0x01D2,0x01D2,0x01D2,0x01B2,0x01B2,0x01B2,0x01B2,0x0192,0x01B2,0x01D2,0x01F2,0x01F3,0x01D2,0x01D2,0x01D2,0x01F3,0x01D3,0x01D2,0x01D2,0x01D2,0x01B2,0x01D2,0x01D2,0x01F2,0x01F2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01F3,0x01F3,0x01F2,0x01F2,0x01F2,0x01F2,0x01D2,0x01D2,0x01D2,0x01F2,0x01D2,0x01D3,0x01D2,0x01D3,0x01D3,0x01D3,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01B2,0x01B2,0x01D2,0x01D3,0x01F3,0x01D3,0x01B2,0x01B2,0x01B2,0x01B2,0x01D3,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D3,0x01D2,0x01D2,0x01D2,0x01D2,0x01D2,0x01D3,0x01D3,0x01B3,0x01B2,0x01B3,0x01D3,0x01D3,0x01D2,0x01D2,0x01D3,0x01D3,0x01B2,0x01B2,0x01B2,0x01D2,0x01B2,0x01B2,0x01D2,0x01D2,0x01B2,0x01B2,0x01B2,0x01B2,0x01B2,0x01D3,0x01D3,0x01D3,0x01B2,0x01D3,0x01B2,0x01D2,0x01B2,0x01B2,0x01B2,0x01B2,0x0192,0x0192,0x0192,0x0192,0x0192,0x01B2,0x01B2,0x01B2,0x0192,0x0192,0x0192,0x0191,0x0191,0x0192,0x0172,0x0192,0x0192,0x01B2,0x01B2,0x01B2,0x01B2,0x01B2,0x0192,0x0191,0x0191,0x0192,0x0192,0x01B2,0x01B2,0x01B2,0x01B2,0x01B2,0x01B2,0x0192,0x01B2,0x01B2,0x0192,0x0171,0x0171,0x0191,0x0171,0x0191,0x0191,0x0192,0x0192,0x0192,0x0192,0x0191,0x0191,0x0191,0x0171,0x0171,0x0171,0x0192,0x0171,0x0172,0x0171,0x0171,0x0171,0x0171,0x0171,0x0171,0x0171,0x0171,0x0171,0x0171,0x0171,0x0171,0x0171,0x0151,0x0171,0x0171,0x0151,0x0171,0x0151,0x0151,0x0151,0x0171,0x0171,0x0171,0x0191,0x0191,0x0171,0x0171,0x0171,0x0191,0x0171,0x0171,0x0171,0x0191,0x0171,0x0171,0x0171,0x0171,0x0151,0x0171,0x0171,0x0171,0x0151,0x0191,0x0171,0x0191,0x0171,0x0191,0x0171,0x0171,0x0171,0x0171,0x0171,0x0151,0x0150,0x0150,0x0151,0x0151,0x0151,0x0171,0x0151,0x0171,0x0151,0x0151,0x0170,0x0170,0x0170,0x0171,0x0171,0x0191,0x0170,0x0190,0x0170,0x0170,0x0150,0x0170, + 0x4CDD,0x551E,0x4CDD,0x4CDE,0x54FE,0x551E,0x54FE,0x551E,0x551E,0x54FE,0x551E,0x5D1E,0x5D1E,0x5D3E,0x5D1E,0x551E,0x54FD,0x54DD,0x54DD,0x4CDC,0x4CBC,0x4CBC,0x4CDC,0x4CBC,0x4CDC,0x4CBC,0x54FD,0x54DD,0x54DD,0x54FD,0x54DD,0x54DD,0x54DC,0x4CBC,0x4C9C,0x4CBC,0x4CBC,0x4CDD,0x54FD,0x54DD,0x4CFD,0x54FD,0x54DD,0x4CDD,0x4CDD,0x54FD,0x54FD,0x54DD,0x54FD,0x5CFD,0x54FD,0x54FD,0x54DD,0x54FD,0x54DD,0x54DD,0x54FD,0x54FD,0x54FD,0x54FD,0x551D,0x551D,0x54FD,0x5D3E,0x551E,0x5D1E,0x551D,0x54FD,0x54FD,0x5D1E,0x551E,0x5D1E,0x551E,0x551E,0x551E,0x5D3E,0x551E,0x551E,0x551E,0x54FD,0x551E,0x551E,0x54FD,0x54FD,0x54FD,0x54DD,0x54FD,0x54FD,0x5D1D,0x5D1D,0x5D3E,0x5D3E,0x5D3E,0x551E,0x5D3E,0x5D3E,0x551D,0x551D,0x551D,0x551D,0x553E,0x5D3E,0x5D5F,0x5D3E,0x5D5E,0x5D5E,0x5D5E,0x657E,0x5D5E,0x5D5E,0x5D5E,0x5D5E,0x5D5E,0x5D5E,0x5D5E,0x655E,0x5D5E,0x655E,0x655E,0x657E,0x655E,0x655E,0x655E,0x655E,0x655E,0x655E,0x655E,0x5D5E,0x5D5E,0x655E,0x5D5E,0x5D3E,0x5D1E,0x5D3E,0x5D1E,0x655E,0x5D3E,0x655E,0x657E,0x657F,0x657E,0x657F,0x5D5E,0x5D5E,0x5D3E,0x5D3E,0x655E,0x5D5E,0x657E,0x5D7E,0x5D3D,0x551D,0x553D,0x5D5E,0x5D5E,0x5D5E,0x5D3D,0x551D,0x54FD,0x4CFD,0x553D,0x555E,0x557E,0x559F,0x559F,0x5DBF,0x5DBF,0x55BF,0x55BF,0x55BF,0x559F,0x55BF,0x559F,0x55BF,0x559F,0x559F,0x559F,0x55BF,0x559F,0x559F,0x559F,0x55BF,0x559F,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x55DF,0x55DF,0x55DF,0x55BF,0x55BF,0x559F,0x55BF,0x559F,0x559F,0x559F,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x4D9F,0x55BF,0x55BF,0x55DF,0x55DF,0x55DF,0x55DF,0x55DF,0x55DF,0x55DF,0x55DF,0x55BF,0x55BF,0x55DF,0x5DFF,0x5DFF,0x55BF,0x5DDF,0x55DF,0x5DDF,0x5DDF,0x5DDF,0x5DDF,0x5DFF,0x5DDF,0x5DFF,0x5DDF,0x5DDF,0x5DDF,0x5DDF,0x5DDF,0x5DDF,0x5DDF,0x5DDF,0x5DDF,0x5DDF,0x5DDF,0x5DDF,0x5DDF,0x5DFF,0x5DDF,0x5DFF,0x5DFF,0x5DFF,0x5DFF,0x5DFF,0x5DFF,0x5DFF,0x5DFF,0x5DFF,0x55DF,0x5DFF,0x55DF,0x5DDF,0x5DFF,0x5DFF,0x5DDF,0x65FF,0x5DDF,0x5DDF,0x5DDF,0x5DDF,0x5DFF,0x661F,0x5DBF,0x55BF,0x5DFF,0x661F,0x663F,0x663F,0x5DFF,0x5DFF,0x5DDF,0x5DDF,0x5DFF,0x5DFF,0x5DFF,0x5DFF,0x5DFF,0x661F,0x661F,0x661F,0x65FF,0x661F,0x661F,0x663F,0x661F,0x661F,0x661F,0x663F,0x661F,0x661F,0x661F,0x661F,0x661F,0x663F,0x661F,0x661F,0x661F,0x661F,0x661F,0x663F,0x661F,0x663F,0x661F,0x663F,0x661F,0x663F,0x661F,0x663F,0x663F,0x6E3F,0x663F,0x663F,0x5DFF,0x65FF,0x65FF,0x661F,0x663F,0x663F,0x661F,0x661F,0x661F,0x65FF,0x661F,0x661F,0x663F,0x663F,0x6E3F,0x6E5F,0x6E5F,0x6E5F,0x665F,0x661F,0x661F,0x661F,0x6E3F,0x6E5F,0x6E3F,0x6E3F,0x6E1F,0x6E1F,0x6E1F,0x6E3F,0x6E3F,0x6E3F,0x6E3F,0x6E5F,0x6E3F,0x6E3F,0x6E3F,0x6E5F,0x6E3F,0x6E3F,0x6E5F,0x6E5F,0x6E3F,0x6E5F,0x6E5F,0x6E5F,0x6E3F,0x6E5F,0x6E5F,0x765F,0x765F,0x765F,0x765F,0x765F,0x765F,0x765F,0x6E5F,0x765F,0x765F,0x765F,0x6E3F,0x765F,0x763F,0x763F,0x6E3F,0x6E3F,0x6E3F,0x6E5F,0x6E3F,0x6E3F,0x6E3F,0x6E3F,0x765F,0x765F,0x6E3F,0x6E3F,0x6E3F,0x6E3F,0x6E5F,0x765F,0x765F,0x765F,0x765F,0x765F,0x765F,0x765F,0x763F,0x763F,0x765F,0x765F,0x765F,0x765F,0x765F,0x765F,0x765F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x7E9F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x765F,0x767F,0x767F,0x767F,0x765F,0x767F,0x765F,0x767F,0x765F,0x765F,0x765F,0x7E7F,0x765F,0x767F,0x765F,0x765F,0x6E3F,0x6E3F,0x763F,0x765F,0x6E3F,0x765F,0x6E5F,0x765F,0x767F,0x6E7F,0x767F,0x765F,0x767F,0x767F,0x7E9F,0x7E7F,0x7E7F,0x7E7F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x767F,0x767F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x767F,0x7E9F,0x7E9F,0x7EBF,0x767F,0x767F,0x7E7F,0x7E7F,0x765F,0x7E5F,0x7E7F,0x7E7F,0x765F,0x765F,0x661F,0x6E3F,0x767F,0x767F,0x765F,0x765F,0x765F,0x7E5F,0x765F,0x7E7F,0x7E7F,0x767F,0x767F,0x7E9F,0x7E9F,0x7E9F,0x767F,0x7E9F,0x7E9F,0x7E9F,0x7E9F,0x769F,0x7E9F,0x7E9F,0x7E9F,0x769F,0x767F,0x7E9F,0x767F,0x769F,0x767F,0x767F,0x767F,0x769F,0x767F,0x769F,0x767F,0x769F,0x767F,0x7E9F,0x767F,0x7E9F,0x7E7F,0x7E7F,0x767F,0x769F,0x767F,0x769F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x765F,0x765F,0x765F,0x767F,0x765F,0x767F,0x767F,0x767F,0x767F,0x6E7F,0x663F,0x663F,0x6E5F,0x6E5F,0x6E3F,0x6E5F,0x6E3F,0x765F,0x6E3F,0x6E3F,0x6E3F,0x6E3F,0x6E5F,0x765F,0x765F,0x765F,0x6E5F,0x765F,0x765F,0x765F,0x6E5F,0x765F,0x765F,0x767F,0x765F,0x765F,0x6E5F,0x765F,0x6E5F,0x765F,0x765F,0x765F,0x6E5F,0x6E5F,0x6E5F,0x765F,0x765F,0x765F,0x765F,0x765F,0x6E3F,0x765F,0x765F,0x767F,0x765F,0x765F,0x765F,0x767F,0x765F,0x765F,0x765F,0x765F,0x6E3F,0x6E3F,0x6E3F,0x6E5F,0x6E3F,0x6E5F,0x6E5F,0x6E5F,0x6E5F,0x6E5F,0x6E3F,0x6E3F,0x6E3F,0x6E3F,0x6E3F,0x763F,0x6E1F,0x6DFF,0x6E1F,0x6E3F,0x6E1F,0x763F,0x6E1F,0x763F,0x6E3F,0x763F,0x6E3F,0x763F,0x763F,0x763F,0x763F,0x763F,0x763F,0x7E5F,0x763F,0x7E5F,0x7E3F,0x7E5F,0x7E3F,0x7E5F,0x7E3F,0x7E5F,0x865F,0x865F,0x863F,0x865F,0x865F,0x865F,0x865F,0x865F,0x865F,0x8E7F,0x8E5F,0x8E7F,0x8E7F,0x967F,0x965F,0x967F,0x9E5F,0x9E5F,0x9E3F,0xA63F,0xAE3F,0xB63F,0xB5FF,0xA4BC,0x59B1,0x71F3,0x9234,0x9A14,0xA214,0xA1F3,0xA9F3,0xA9F3,0xB1F4,0xA9D3,0xA9B3,0xA9D3,0xA9F3,0xA1F3,0xA233,0x9253,0x8253,0x5A31,0x21EE,0x969F,0x6E9D,0x569C,0x4E9B,0x56BB,0x667B,0x7E1C,0x52F2,0x6A72,0x8212,0x9A13,0xA1F3,0xA1D3,0xA9F4,0xA9F4,0xA9B3,0xA9F4,0xA1F4,0x99F4,0x9234,0x69B1,0xBD3E,0xBE1F,0x95DF,0x85DF,0x7DFF,0x6DDF,0x6DFF,0x6DFF,0x6E1F,0x6E1F,0x661F,0x6E1F,0x6E1F,0x6DFF,0x65FF,0x65FF,0x65DF,0x65FF,0x65FF,0x661F,0x661F,0x661F,0x5DDF,0x55DF,0x55BF,0x55BF,0x55BF,0x5DDF,0x5DDF,0x5DDF,0x5DBF,0x5DDF,0x5DDF,0x5DDF,0x5DFF,0x5DFF,0x55BF,0x55BF,0x5DDF,0x5DFF,0x5DDF,0x5DFF,0x5DDF,0x5DFF,0x5DDF,0x5DDF,0x5DDF,0x5DFF,0x55DF,0x55DF,0x55BF,0x55DF,0x5DDF,0x5DDF,0x55DF,0x5DDF,0x55BF,0x5DDF,0x55DF,0x5DDF,0x55BF,0x5DDF,0x55DF,0x55DF,0x55DF,0x5DDF,0x55DF,0x5DDF,0x55BF,0x55DF,0x5DFF,0x5DFF,0x55DF,0x55DF,0x55BF,0x55DF,0x55BF,0x55BF,0x4DBF,0x55BF,0x55BF,0x55BF,0x4DBF,0x4DBF,0x4D9F,0x4D9F,0x4D9F,0x4DBF,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x55BF,0x4DBF,0x4DBF,0x4D9F,0x4D9F,0x4D9F,0x55BF,0x4DBF,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x4D9F,0x4D9F,0x4D9F,0x559F,0x4D9F,0x559F,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x4D7F,0x4D7F,0x4D7F,0x557F,0x4D7F,0x4D7F,0x4D7F,0x4D7F,0x4D7F,0x4D7F,0x4D5F,0x4D7F,0x455E,0x455E,0x457F,0x457F,0x4D9F,0x4D9F,0x457F,0x4D9F,0x457F,0x4D7F,0x4D7F,0x4D9F,0x4D7F,0x4D7F,0x4D5F,0x4D5F,0x4D5E,0x453E,0x455E,0x453E,0x453E,0x453E,0x453E,0x453E,0x453E,0x453E,0x453E,0x453E,0x455E,0x455F,0x455F,0x455F,0x455F,0x4D7F,0x453E,0x4D5F,0x455E,0x4D7F,0x4D7F,0x4D7F,0x4D7F,0x457F,0x455F,0x457F,0x455F,0x455E,0x455E,0x455E,0x455E,0x4D7F,0x4D5E,0x4D5E,0x455E,0x453E,0x455E,0x455E,0x453E,0x455E,0x453E,0x453E,0x453E,0x453E,0x453E,0x453E,0x453E,0x453E,0x3D1D,0x3D1D,0x3CFD,0x3CFD,0x3D1D,0x3D1D,0x3D1D,0x3D3E,0x453E,0x453E,0x3D3E,0x3D3E,0x453E,0x451E,0x451D,0x451D,0x451E,0x451D,0x3CFD,0x3CFD,0x3CDD,0x3CDD,0x3CFD,0x3CFD,0x3D1E,0x3D1E,0x3D3E,0x3D3E,0x3D1D,0x3D3E,0x453E,0x455E,0x453E,0x455E,0x453E,0x455E,0x453F,0x453E,0x451E,0x453E,0x453E,0x451E,0x451E,0x451E,0x451E,0x453E,0x453E,0x453E,0x453E,0x453E,0x451E,0x453E,0x451E,0x453E,0x451E,0x453E,0x453E,0x453E,0x453E,0x453E,0x3D1E,0x453E,0x3CFD,0x3D1E,0x3CFD,0x3D1E,0x453E,0x453E,0x453E,0x455E,0x455E,0x457F,0x455E,0x455E,0x455E,0x453E,0x3D1D,0x3D1D, + 0x3D5F,0x3D3F,0x3D3F,0x3D3F,0x3D3F,0x3D3F,0x3D3F,0x3D5F,0x457F,0x455F,0x457F,0x455F,0x4D9F,0x457F,0x457F,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x4DBF,0x4DDF,0x4DDF,0x55DF,0x55FF,0x55FF,0x4DBF,0x4D9F,0x457F,0x457F,0x457F,0x4DBF,0x4DBF,0x55DF,0x4DBF,0x4D9F,0x4D9F,0x4D9F,0x457F,0x457F,0x3D5E,0x3D5E,0x3D5E,0x3D5F,0x457F,0x459F,0x4D9F,0x4DBF,0x4DBF,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x55BF,0x4DBF,0x4DBF,0x4DBF,0x4DBF,0x4DBF,0x4D9F,0x4D9F,0x4DBF,0x4DBF,0x4D9F,0x459F,0x459F,0x457F,0x457F,0x4D9F,0x4DBF,0x4D9F,0x4DBF,0x459F,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x4D9F,0x4DBF,0x4DBF,0x55DF,0x55FF,0x561F,0x55FF,0x4DDF,0x4DDF,0x4DDF,0x4DBF,0x4DDF,0x55FF,0x55FF,0x4DDF,0x4DBF,0x459F,0x459F,0x457F,0x457F,0x459F,0x459F,0x4DBF,0x4DDF,0x4DDF,0x55DF,0x55FF,0x55DF,0x55DF,0x55DF,0x55FF,0x55FF,0x55FF,0x55DF,0x55FF,0x55FF,0x55DF,0x55DF,0x55FF,0x55FF,0x55DF,0x55DF,0x55DF,0x55DF,0x55DF,0x55FF,0x55FF,0x55FF,0x55DF,0x55DF,0x55DF,0x55DF,0x5DFF,0x5E1F,0x5E1F,0x5E1F,0x55FF,0x55FF,0x561F,0x561F,0x55FF,0x561F,0x5E3F,0x5E3F,0x5E3F,0x5E3F,0x5E3F,0x5E3F,0x5E3F,0x561F,0x561F,0x561F,0x55FF,0x561F,0x561F,0x55FF,0x55FF,0x4DFF,0x4DFF,0x4DFF,0x4E1F,0x4DFF,0x4E1F,0x4E1F,0x4E1F,0x461F,0x461F,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E3F,0x4E3F,0x4E1F,0x4E1F,0x4E3F,0x461F,0x461F,0x45FF,0x45DF,0x45DF,0x45DF,0x45FF,0x45FF,0x461F,0x4E1F,0x461F,0x45FF,0x45FF,0x45FF,0x45FF,0x461F,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x461F,0x461F,0x461F,0x4E3F,0x463F,0x461F,0x461F,0x461F,0x461F,0x461F,0x461F,0x461F,0x4E3F,0x4E3F,0x4E1F,0x461F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x561F,0x563F,0x563F,0x563F,0x563F,0x563F,0x4E1F,0x563F,0x563F,0x563F,0x563F,0x563F,0x563F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E3F,0x4E3F,0x4E3F,0x461F,0x45FF,0x45FF,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x561F,0x4E1F,0x563F,0x4E1F,0x4DFF,0x4E1F,0x4E3F,0x563F,0x4E3F,0x563F,0x565F,0x565F,0x565F,0x4E3F,0x461F,0x461F,0x45FF,0x4E1F,0x4E3F,0x4E3F,0x4DFF,0x4E1F,0x4E1F,0x563F,0x563F,0x563F,0x563F,0x565F,0x565F,0x565F,0x563F,0x565F,0x565F,0x563F,0x565F,0x565F,0x565F,0x565F,0x565F,0x565F,0x565F,0x565F,0x565F,0x565F,0x565F,0x565F,0x565F,0x565F,0x565F,0x565F,0x567F,0x565F,0x563F,0x565F,0x565F,0x565F,0x563F,0x4E1F,0x4DFF,0x561F,0x561F,0x563F,0x563F,0x563F,0x565F,0x565F,0x565F,0x563F,0x563F,0x563F,0x565F,0x565F,0x563F,0x565F,0x565F,0x567F,0x565F,0x565F,0x4E3F,0x563F,0x563F,0x5E5F,0x5E7F,0x5E5F,0x5E5F,0x5E5F,0x5E5F,0x5E5F,0x5E5F,0x5E5F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E5F,0x5E5F,0x5E5F,0x5E5F,0x5E7F,0x5E7F,0x5E5F,0x5E5F,0x5E7F,0x5E7F,0x5E5F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E5F,0x5E5F,0x5E5F,0x5E5F,0x667F,0x5E5F,0x5E5F,0x5E5F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E5F,0x5E5F,0x5E5F,0x5E5F,0x5E5F,0x5E5F,0x5E5F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E5F,0x665F,0x665F,0x665F,0x5E5F,0x665F,0x5E5F,0x5E5F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E5F,0x5E7F,0x667F,0x5E5F,0x5E7F,0x667F,0x5E5F,0x5E5F,0x5E7F,0x667F,0x5E5F,0x5E5F,0x5E5F,0x667F,0x5E5F,0x665F,0x665F,0x665F,0x665F,0x667F,0x665F,0x665F,0x5E5F,0x5E5F,0x667F,0x667F,0x667F,0x669F,0x667F,0x669F,0x669F,0x669F,0x669F,0x5E7F,0x5E5F,0x5E5F,0x5E7F,0x667F,0x669F,0x5E9F,0x5E9F,0x5E9F,0x669F,0x669F,0x669F,0x669F,0x6E9F,0x6E9F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x667F,0x667F,0x667F,0x667F,0x667F,0x669F,0x667F,0x667F,0x667F,0x669F,0x667F,0x667F,0x667F,0x667F,0x667F,0x669F,0x667F,0x669F,0x669F,0x669F,0x667F,0x669F,0x667F,0x667F,0x667F,0x669F,0x667F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x66BF,0x6EBF,0x669F,0x6E9F,0x6EBF,0x6E9F,0x6E9F,0x6E9F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x6E9F,0x6EBF,0x6EBF,0x6EBF,0x6E9F,0x6E9F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x667F,0x667F,0x667F,0x667F,0x667F,0x667F,0x667F,0x667F,0x667F,0x667F,0x667F,0x669F,0x667F,0x669F,0x667F,0x669F,0x667F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x669F,0x667F,0x669F,0x667F,0x667F,0x667F,0x669F,0x667F,0x669F,0x669F,0x667F,0x667F,0x669F,0x66BF,0x66BF,0x5E9F,0x5E9F,0x5E7F,0x5E7F,0x5E7F,0x669F,0x669F,0x667F,0x669F,0x667F,0x5E5F,0x667F,0x5E7F,0x669F,0x5E7F,0x5E7F,0x5E7F,0x667F,0x667F,0x667F,0x667F,0x669F,0x667F,0x669F,0x669F,0x669F,0x669F,0x667F,0x5E7F,0x667F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x5E7F,0x667F,0x667F,0x667F,0x5E7F,0x5E7F,0x667F,0x5E5F,0x5E5F,0x5E5F,0x5E5F,0x5E5F,0x563F,0x5E5F,0x5E7F,0x5E9F,0x5E9F,0x567F,0x567F,0x5E7F,0x5E7F,0x669F,0x667F,0x667F,0x667F,0x667F,0x665F,0x665F,0x665F,0x667F,0x667F,0x665F,0x667F,0x667F,0x667F,0x667F,0x667F,0x6E7F,0x6E7F,0x6E7F,0x6E7F,0x6E7F,0x6E7F,0x6E7F,0x6E7F,0x6E7F,0x6E7F,0x6E7F,0x6E7F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x767F,0x769F,0x767F,0x7E9F,0x7E9F,0x869F,0x869F,0x867F,0x867F,0x8E7F,0x8E7F,0x965F,0x9E7F,0xA67F,0xAE7F,0xBE7F,0xBDBF,0x6213,0x7A13,0x9A35,0x99F3,0xA214,0xA1F3,0xA9D3,0xB1F4,0xA9D3,0xA9D3,0xA9B3,0xA9D3,0xA9F3,0xA213,0x9A33,0x9274,0x7A93,0x39CF,0x53B5,0x96FF,0x667C,0x567B,0x5E9B,0x5E5B,0x7E3C,0x5B74,0x6A92,0x8252,0x9212,0x99D2,0xA9F3,0xA9F4,0xA9D4,0xA9D3,0xA9D3,0xAA14,0x99F3,0x9A55,0x71F2,0xB51D,0xC6DF,0xA69F,0x8E9F,0x7E7F,0x6E7F,0x665F,0x667F,0x667F,0x667F,0x669F,0x669F,0x669F,0x667F,0x667F,0x667F,0x665F,0x667F,0x5E7F,0x5E7F,0x5E7F,0x567F,0x567F,0x567F,0x4E5F,0x4E5F,0x4E5F,0x4E3F,0x563F,0x563F,0x4E3F,0x565F,0x565F,0x565F,0x565F,0x563F,0x563F,0x4E3F,0x4E3F,0x4E3F,0x563F,0x563F,0x563F,0x4E3F,0x563F,0x563F,0x4E3F,0x4E3F,0x4E3F,0x4E1F,0x4E1F,0x4E1F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E5F,0x4E5F,0x4E3F,0x4E3F,0x4E3F,0x4E5F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x463F,0x463F,0x461F,0x461F,0x461F,0x463F,0x463F,0x463F,0x461F,0x461F,0x461F,0x461F,0x461F,0x461F,0x461F,0x461F,0x461F,0x3DFF,0x461F,0x461F,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x461F,0x461F,0x461F,0x4E3F,0x461F,0x461F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x461F,0x461F,0x4E1F,0x461F,0x4E1F,0x4E1F,0x4DFF,0x4DFF,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x461F,0x45FF,0x45FF,0x45FF,0x3DFF,0x3DFF,0x3DFF,0x3DFF,0x3DFF,0x3DDF,0x3DFF,0x3DDF,0x3DDF,0x3DDF,0x45DF,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x3DFF,0x45FF,0x461F,0x45FF,0x45FF,0x45FF,0x45FF,0x3DFF,0x3DFF,0x3DFF,0x3DFF,0x3DFF,0x45FF,0x3DFF,0x3DDF,0x3DDF,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x3DFF,0x3DFF,0x3DDF,0x3DDF,0x3DFF,0x3DFF,0x3DFF,0x3DFF,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x3DFF,0x3DFF,0x3DFF,0x3DFF,0x45FF,0x45FF,0x461F,0x461F,0x45FF,0x461F,0x45FF,0x45FF,0x45FF,0x45FF,0x3DFF,0x3DFF,0x3DFF,0x3DDF,0x3DDF,0x35DF,0x3DFF,0x3DFF,0x3E1F,0x3DFF,0x45FF,0x45FF,0x461F,0x461F,0x4E1F,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x3DFF,0x3DDF,0x3DDF,0x3DDF,0x3DFF,0x3DDF,0x3DFF,0x3DDF,0x3DFF,0x3DDF,0x3DFF,0x3DDF,0x3DFF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x3DBF,0x3DDF,0x3DBF,0x3DDF,0x3DDF,0x45DF,0x45DF,0x45DF,0x45DF,0x45DF,0x45DF,0x45DF,0x45DF,0x45FF,0x45DF,0x45FF,0x45FF,0x45FF,0x3DFF,0x3DFF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x3DBF,0x35BF,0x35BF,0x359F,0x359F,0x35BF, + 0x24FD,0x1CDD,0x1CBD,0x24DD,0x24DD,0x1CBD,0x24BD,0x24DD,0x24FD,0x24FE,0x2CFE,0x2CFE,0x2CFD,0x2D1D,0x2D1E,0x24FD,0x24FD,0x24FD,0x2D1E,0x2D1D,0x2D1D,0x251D,0x24FD,0x24FD,0x24DD,0x1CDC,0x1CDC,0x1CBC,0x1CDC,0x1CDC,0x1CBC,0x147B,0x1C9C,0x149B,0x149C,0x1CBC,0x251D,0x253E,0x2D5E,0x357F,0x2D7F,0x357F,0x2D3E,0x251E,0x251D,0x251D,0x251D,0x24FD,0x2D1E,0x2D1E,0x2CFD,0x2CFD,0x2D1D,0x2D1D,0x2CFD,0x2CFD,0x2D1D,0x2D1D,0x2D1D,0x251D,0x251D,0x251D,0x251D,0x24FD,0x2D1D,0x2D1D,0x2D1D,0x251D,0x2D1D,0x24FD,0x2D1E,0x2D1D,0x24FD,0x251D,0x24FD,0x24FD,0x2D1D,0x24FD,0x2D1E,0x2D3E,0x24FD,0x2D1D,0x2D3E,0x2D3E,0x2D3E,0x2D3E,0x251D,0x251D,0x24FC,0x24FC,0x251D,0x1CFC,0x251D,0x251D,0x1D1D,0x1CDC,0x1CDC,0x1CDC,0x251D,0x2D3E,0x357E,0x357F,0x357F,0x359F,0x2D5E,0x253E,0x251D,0x24FD,0x2D3D,0x2D3D,0x2D5E,0x2D5E,0x2D5E,0x2D5E,0x2D5E,0x2D5E,0x357E,0x357E,0x355E,0x355E,0x357E,0x355E,0x355E,0x355E,0x355E,0x355E,0x355E,0x355E,0x355E,0x357E,0x357E,0x2D5E,0x357E,0x355E,0x355E,0x355E,0x2D3D,0x355D,0x355E,0x355E,0x355E,0x2D5E,0x355E,0x357E,0x357E,0x359E,0x357E,0x357E,0x2D7E,0x2D7D,0x357E,0x2D7E,0x359E,0x359F,0x2D7E,0x2D5E,0x357E,0x2D5D,0x359E,0x359E,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x2D9E,0x2D9E,0x2D9E,0x2D9E,0x2D9F,0x35BF,0x35BF,0x359F,0x35BF,0x35BF,0x359F,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x2D9E,0x35BF,0x35DF,0x35DF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x359F,0x35BF,0x35BF,0x35DF,0x35FF,0x35BF,0x35BF,0x35BF,0x35BF,0x2DBE,0x2DBE,0x2D9E,0x2D9E,0x257E,0x257D,0x257D,0x257E,0x2DBF,0x35DF,0x3E1F,0x3DFF,0x35DF,0x35BF,0x35DF,0x35DF,0x35DF,0x35DF,0x35BF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x45DF,0x3DDF,0x3DDF,0x3DDF,0x45DF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x3DFF,0x3DDF,0x3DDF,0x3DDF,0x35DF,0x3DFF,0x3DFF,0x3DDF,0x35BF,0x3DFF,0x3DDF,0x3DDF,0x45FF,0x3DDF,0x3DBF,0x3DBF,0x3DBF,0x3DDF,0x3DFF,0x45FF,0x3DFF,0x3DDF,0x35BE,0x3DDF,0x35BE,0x35DE,0x35DF,0x35BE,0x2D7D,0x255D,0x2D9E,0x3DFF,0x461F,0x461F,0x3E1F,0x3DFF,0x3DFF,0x3DDF,0x3DFF,0x3DFF,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x461F,0x461F,0x45FF,0x45FF,0x461F,0x461F,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x461F,0x461F,0x461F,0x461F,0x461F,0x461F,0x45FF,0x461F,0x461F,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x461F,0x45FF,0x45FF,0x45FF,0x45FF,0x461F,0x461F,0x461F,0x45FF,0x3DFF,0x3DFF,0x3DFF,0x35DE,0x35DF,0x35BE,0x3DFF,0x461F,0x463F,0x463F,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x45FF,0x4E1F,0x461F,0x461F,0x461F,0x461F,0x461F,0x4E1F,0x4E3F,0x461F,0x461F,0x4E1F,0x4E1F,0x4E1F,0x461F,0x4E1F,0x461F,0x4E3F,0x461F,0x4E3F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E1F,0x4E1F,0x4E1F,0x4E3F,0x4E1F,0x4E3F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x461F,0x461F,0x4E1F,0x4E1F,0x4DFF,0x45FF,0x4DFF,0x4DFF,0x45FF,0x45FF,0x45FF,0x3DDF,0x45FF,0x45FF,0x4E1F,0x45FF,0x4E1F,0x4E1F,0x561F,0x561F,0x561F,0x561F,0x4E1F,0x4E1F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E1F,0x4E3F,0x4E3F,0x4E1F,0x4E1F,0x4E3F,0x4E3F,0x563F,0x563F,0x4E3F,0x4E1F,0x563F,0x4E1F,0x4E3F,0x4E3F,0x563F,0x4E3F,0x4E3F,0x563F,0x563F,0x563F,0x563F,0x563F,0x4E3F,0x4E1F,0x4DFF,0x45DF,0x4E1F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E3F,0x4E5F,0x4E3F,0x4E3F,0x4E1F,0x4DFF,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E3F,0x563F,0x4E1F,0x563F,0x563F,0x563F,0x563F,0x563F,0x4E3F,0x565F,0x563F,0x565F,0x565F,0x565F,0x565F,0x565F,0x4E3F,0x563F,0x563F,0x563F,0x563F,0x565F,0x565F,0x565F,0x4E3F,0x565F,0x565F,0x565F,0x563F,0x565F,0x565F,0x565F,0x565F,0x565F,0x565F,0x563F,0x4E3F,0x565F,0x565F,0x563F,0x563F,0x563F,0x563F,0x563F,0x563F,0x4E3F,0x4E1F,0x4E5F,0x4E5F,0x4E5F,0x4E3F,0x4E1F,0x4E1F,0x4E3F,0x563F,0x563F,0x4E1F,0x563F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x565F,0x565F,0x565F,0x565F,0x565F,0x565F,0x565F,0x563F,0x4E3F,0x4E3F,0x563F,0x563F,0x565F,0x4E3F,0x565F,0x565F,0x565F,0x4E3F,0x563F,0x563F,0x563F,0x563F,0x563F,0x563F,0x563F,0x563F,0x563F,0x563F,0x565F,0x563F,0x565F,0x563F,0x563F,0x563F,0x565F,0x565F,0x563F,0x563F,0x563F,0x563F,0x563F,0x4E1F,0x4E3F,0x565F,0x4E5F,0x4E3F,0x4E3F,0x461F,0x461F,0x461F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x4E3F,0x4E1F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E1F,0x4E3F,0x4E3F,0x4E3F,0x4E1F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E3F,0x4E5F,0x4E3F,0x4E1F,0x4E3F,0x4E1F,0x4E3F,0x4E1F,0x4E3F,0x4E3F,0x4E3F,0x4E1F,0x4E3F,0x4E1F,0x4E3F,0x4E1F,0x4E1F,0x4DFF,0x4E1F,0x4E1F,0x4E3F,0x461F,0x461F,0x463F,0x3E1F,0x3DFE,0x35DE,0x3DDE,0x3DFF,0x3DDE,0x3DBE,0x3DBE,0x45DF,0x45DF,0x45FF,0x4E1F,0x4E1F,0x4DFF,0x4DFF,0x4DFF,0x4E1F,0x4E1F,0x4E1F,0x4E1F,0x561F,0x561F,0x561F,0x561F,0x561F,0x561F,0x561F,0x561F,0x561F,0x561F,0x5E1F,0x5E1F,0x5E1F,0x5E1F,0x5E1F,0x5E1F,0x5E1F,0x5E1F,0x5E1F,0x5E1F,0x663F,0x663F,0x663F,0x663F,0x663F,0x663F,0x6E3F,0x6E3F,0x6E3F,0x6E3F,0x761F,0x761F,0x761F,0x7E1F,0x7E1F,0x85FF,0x8DDF,0x9DDF,0xB61F,0xCDFF,0x61B2,0x8214,0x9A34,0xA1F4,0x99D3,0xA9F3,0xA9D3,0xA9D3,0xA9B3,0xB1F3,0xA9D3,0xA9D3,0xA1D3,0xA233,0x9A54,0x8A94,0x7293,0x216D,0x7D9B,0x7E9D,0x5E3B,0x5E7B,0x663B,0x7E3C,0x6BF6,0x6271,0x8273,0x9232,0xA213,0xA9F3,0xA9F4,0xA9D4,0xA9D4,0xA9F4,0xA9F4,0xA214,0x9213,0x8233,0x72F5,0xA57F,0x857F,0x6DBF,0x65DF,0x5DDF,0x55DF,0x4DDF,0x4DFF,0x4DFF,0x4DFF,0x4DFF,0x4DFF,0x4DFF,0x4DFF,0x45DF,0x4DFF,0x4DFF,0x4DFF,0x45FF,0x45FF,0x461F,0x463F,0x463F,0x35BE,0x255D,0x2D9E,0x2DBE,0x35DF,0x35DF,0x35BF,0x35BF,0x359F,0x359E,0x35DF,0x35DF,0x3DDF,0x3DDF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x35BF,0x3DBF,0x35BF,0x35BF,0x3DBF,0x3DBF,0x3DDF,0x3DBF,0x3DDF,0x3DDF,0x3DDF,0x3DBF,0x3DDF,0x3DBF,0x3DDF,0x3DBF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x3DDF,0x35BF,0x3DDF,0x35DF,0x3DDF,0x35DF,0x35BF,0x35BF,0x35DF,0x35DF,0x3DDF,0x35DF,0x35DF,0x35DF,0x35FF,0x3E1F,0x3DFF,0x3DFF,0x3E1F,0x35FF,0x35FF,0x35DF,0x257D,0x1D5D,0x1D7D,0x1D7D,0x259E,0x259E,0x2D9E,0x259E,0x2DBF,0x2DBF,0x2DBF,0x2DBF,0x2DBE,0x2D9E,0x2DBF,0x2DBF,0x2D9F,0x2D9F,0x2D9F,0x2D9F,0x2D9F,0x2D9F,0x2D9E,0x2D9E,0x35BF,0x2D9F,0x35BF,0x35BF,0x2D9E,0x2D7E,0x359F,0x2D9F,0x35BF,0x2D9F,0x359F,0x359F,0x359F,0x359F,0x359F,0x359F,0x359F,0x2D9F,0x359F,0x35BF,0x359F,0x2D9F,0x2D9F,0x2D9F,0x35BF,0x35BF,0x2D9F,0x2D9F,0x2DBF,0x2D9F,0x2DBF,0x2DBF,0x2DDF,0x2DBF,0x2D9F,0x2D9F,0x253E,0x1CFD,0x1D1D,0x1D1D,0x255D,0x255E,0x255E,0x255E,0x255E,0x257E,0x257E,0x257E,0x259E,0x257E,0x2D9F,0x257E,0x257E,0x257E,0x257E,0x2D7F,0x255E,0x255E,0x255E,0x255E,0x257E,0x255E,0x257E,0x255E,0x257E,0x255E,0x255E,0x255E,0x255E,0x255E,0x255E,0x255E,0x2D7E,0x2D7E,0x2D7E,0x2D7E,0x2D9F,0x2D7F,0x2D9F,0x2D9F,0x257E,0x257E,0x257E,0x2D9F,0x2D7E,0x2D7E,0x2D7F,0x2D7E,0x2D7E,0x2D9E,0x2D9F,0x2D9F,0x2DBF,0x2DBF,0x2DBF,0x2DBF,0x259E,0x1D5E,0x151D,0x0CDC,0x0CDC,0x0CDC,0x14FC,0x1CFC,0x1D1D,0x1CFD,0x1D1D,0x1CFD,0x1D1D,0x253D,0x257E,0x255E,0x257E,0x257E,0x255E,0x1D3E,0x1D3E,0x1D3D,0x255E,0x255E,0x1D3D,0x1D3D,0x1D3D,0x1D1D,0x1D1D,0x1D1D,0x1D1D,0x1D1D,0x251E,0x253E,0x253E,0x253E,0x253E,0x253E,0x251E,0x251E,0x251E,0x251E,0x251E,0x1CFE,0x251E,0x251E,0x253E,0x253E,0x253E,0x253E,0x253E,0x253E,0x253E,0x253E,0x1D1E,0x1D1E,0x253E,0x255F,0x2D9F,0x2D9F,0x2D9F,0x2D7F,0x257E,0x255E,0x1D1D,0x14FD,0x14DD,0x0C9C,0x047B,0x047B,0x047B,0x047B, + 0x145C,0x145C,0x0C3B,0x0C3B,0x145C,0x145C,0x145C,0x145C,0x145C,0x145C,0x145C,0x145B,0x145B,0x145B,0x0C3B,0x0C3B,0x0C3B,0x0C3B,0x0C1A,0x0C1A,0x041A,0x0C3A,0x041A,0x0C3B,0x043A,0x043B,0x043A,0x043A,0x043A,0x043A,0x045B,0x043B,0x0C7B,0x149C,0x14BD,0x1CDD,0x1CDE,0x251E,0x251E,0x1CFE,0x1CFD,0x1CBD,0x149D,0x149C,0x147C,0x147C,0x147C,0x147C,0x145C,0x145B,0x145B,0x143B,0x0C3B,0x143B,0x0C3B,0x0C3B,0x0C3A,0x0C3A,0x0C5B,0x0C5B,0x0C5A,0x0C5B,0x0C5B,0x0C5B,0x0C5B,0x0C5B,0x0C5B,0x0C5B,0x0C5B,0x145B,0x0C5B,0x0C5B,0x0C5B,0x0C5B,0x0C5B,0x0C5B,0x0C3B,0x0C5B,0x0C5B,0x0C5B,0x0C5B,0x145B,0x0C5B,0x145B,0x0C5B,0x0C5A,0x0C5A,0x045A,0x043A,0x043A,0x043A,0x045A,0x047A,0x047B,0x049B,0x047B,0x0C7B,0x14BC,0x14DD,0x1CFD,0x251E,0x251E,0x251E,0x1CFD,0x1CDD,0x1CDD,0x14BD,0x149C,0x147C,0x149C,0x147B,0x147B,0x149B,0x149B,0x147B,0x147B,0x149B,0x0C7B,0x147B,0x147B,0x147B,0x147B,0x147B,0x145B,0x147B,0x147B,0x147B,0x147B,0x147B,0x149B,0x147B,0x147B,0x147B,0x147B,0x145B,0x145B,0x145B,0x147B,0x0C5B,0x0C5B,0x147B,0x0C7B,0x147B,0x149B,0x147B,0x147B,0x0C7B,0x0C7B,0x0C7A,0x0C7A,0x0C7B,0x0C9B,0x0C7A,0x047A,0x043A,0x043A,0x045A,0x14BB,0x1CFD,0x253E,0x253E,0x1D1E,0x1CFD,0x1D1D,0x14DD,0x14DC,0x14BC,0x14BC,0x149C,0x149C,0x149C,0x149C,0x149B,0x14BC,0x149B,0x14BC,0x14BC,0x149B,0x0C9B,0x149B,0x149B,0x149B,0x149B,0x149B,0x149B,0x149B,0x149B,0x149B,0x149B,0x149B,0x149B,0x149B,0x149B,0x14BC,0x14BC,0x14BC,0x1CBC,0x14BC,0x14BC,0x14BC,0x14BC,0x14BC,0x14DC,0x14BC,0x14BC,0x14DC,0x1CDC,0x14DC,0x14DC,0x14DC,0x14DC,0x14DC,0x14FC,0x1D1C,0x14FC,0x0CDC,0x0CBB,0x0CBB,0x1D1D,0x259F,0x2D9F,0x2D9F,0x2D7E,0x255E,0x255E,0x253E,0x1CFD,0x1CFD,0x14DC,0x14DC,0x14BC,0x1CBC,0x1CBC,0x1CBC,0x1CBC,0x1CBC,0x1CBC,0x1CDC,0x1C9C,0x1CBC,0x1CBC,0x1CBC,0x1CBC,0x1CBC,0x1C9C,0x1CBC,0x1CBC,0x1CDC,0x1CDC,0x1CDC,0x14BC,0x1CDC,0x1CDC,0x1CDC,0x1CDC,0x1CDC,0x1CDC,0x1CDC,0x1CDC,0x1CDC,0x1CDC,0x1CDC,0x1CDC,0x1CDC,0x1CDC,0x1CDC,0x1C9B,0x1CDC,0x1CDC,0x1CDC,0x1CDC,0x1CDC,0x1CBB,0x1CDB,0x14DB,0x1CFC,0x1D1C,0x14FC,0x0CBB,0x14BB,0x255E,0x35DF,0x3DFF,0x3DDF,0x359F,0x357E,0x2D5E,0x2D3E,0x24FD,0x24FD,0x24FD,0x24FD,0x1CDC,0x24FC,0x24DC,0x24FD,0x24FC,0x24FC,0x24FC,0x24FD,0x24FC,0x24FD,0x24FD,0x24FD,0x24FD,0x24FD,0x24DD,0x24DD,0x24FC,0x24FC,0x24DC,0x24FD,0x24FC,0x24FC,0x24FD,0x24FC,0x24FD,0x24FD,0x24FD,0x251D,0x24FD,0x24FD,0x24FD,0x24FD,0x24FD,0x2D1D,0x24FD,0x251D,0x24FC,0x24FC,0x24DC,0x24FC,0x24FC,0x24FC,0x251C,0x251C,0x251C,0x251C,0x1D1C,0x1CFC,0x1CFC,0x2D7E,0x35DF,0x3DFF,0x3DDF,0x35BF,0x357E,0x2D5E,0x2D3D,0x2D3D,0x2D1D,0x2D1D,0x24FC,0x251D,0x2D1D,0x2D1D,0x251D,0x251D,0x24FC,0x2D1D,0x2D1D,0x2D1D,0x2D1D,0x2D3D,0x2D1D,0x2D1D,0x2D1D,0x2D3D,0x2D1D,0x2D1D,0x2D1D,0x2D1D,0x2D1D,0x2D1C,0x2D1D,0x2D1D,0x2D1D,0x2D1D,0x2D1C,0x2D1D,0x2D1C,0x2D1C,0x2D1D,0x2D1D,0x2D1D,0x2D3D,0x2D1D,0x2D3D,0x2D1D,0x2D1D,0x2D1D,0x2D1D,0x251C,0x2D3D,0x2D1D,0x2D3D,0x2D1C,0x2D1C,0x2D1C,0x2D3D,0x2D3D,0x2D7D,0x359E,0x3DBF,0x35BF,0x35BF,0x359E,0x3D9F,0x3D7E,0x3D7E,0x3D7E,0x3D5E,0x3D5E,0x355E,0x353D,0x353D,0x353D,0x355D,0x353D,0x355D,0x353D,0x355D,0x2D3D,0x2D3D,0x355D,0x353D,0x353D,0x353D,0x2D3D,0x353D,0x353D,0x353D,0x353D,0x355D,0x353D,0x353D,0x353D,0x353D,0x2D1D,0x2D1D,0x2D1D,0x353D,0x2D1D,0x2D3D,0x353D,0x2D1D,0x353D,0x353D,0x2D1C,0x353D,0x2D1D,0x2D1D,0x2CFD,0x2D3D,0x2D3D,0x355D,0x2D3D,0x2D3D,0x2D3D,0x355D,0x2D1C,0x24FB,0x359E,0x3DFF,0x3DDF,0x3DBF,0x357E,0x357E,0x353E,0x353E,0x3D5E,0x355E,0x355E,0x355E,0x355D,0x355D,0x355D,0x355D,0x355D,0x355D,0x353D,0x355D,0x353D,0x353D,0x353D,0x355D,0x355D,0x355D,0x353D,0x353D,0x355D,0x355D,0x353D,0x353D,0x353D,0x353D,0x353D,0x353D,0x353D,0x353D,0x353D,0x353D,0x355D,0x355D,0x353D,0x353C,0x353C,0x353D,0x2D3C,0x353D,0x353D,0x2D3D,0x2D3D,0x2D3D,0x2D1C,0x2D1C,0x2D1D,0x2D1C,0x353C,0x353D,0x2D1C,0x353C,0x2D1C,0x24FB,0x463F,0x3DDE,0x2D5D,0x355D,0x2D3D,0x353D,0x2D3D,0x353D,0x353D,0x355D,0x353D,0x353D,0x353D,0x355D,0x353D,0x353D,0x353D,0x355D,0x353D,0x353D,0x2D3D,0x353D,0x355D,0x353D,0x355D,0x355D,0x355D,0x355D,0x353D,0x355D,0x353D,0x355D,0x353D,0x353D,0x353D,0x355D,0x353D,0x353D,0x353D,0x353D,0x353D,0x353D,0x353C,0x353D,0x353C,0x353D,0x353D,0x353D,0x353C,0x353D,0x355D,0x355D,0x355D,0x355D,0x355D,0x355D,0x355D,0x353D,0x353D,0x3D5D,0x353D,0x353D,0x355D,0x359E,0x461F,0x35BE,0x2D5D,0x2D5D,0x2D3D,0x2D5D,0x355D,0x357E,0x357E,0x357E,0x355E,0x357E,0x357E,0x355E,0x355E,0x355E,0x353D,0x355D,0x353D,0x353D,0x2D3D,0x2D3D,0x2D3D,0x2D3D,0x2D3D,0x2D3D,0x2D3D,0x2D3D,0x2D1C,0x2D3D,0x2D3D,0x2D3D,0x2D3C,0x2D3D,0x2D3D,0x2D3D,0x2D3D,0x2D3D,0x2D3D,0x2D3D,0x2D1C,0x2D1C,0x2D1D,0x2D1C,0x2D1C,0x2D3D,0x2D1C,0x2D1C,0x2D1C,0x2D3C,0x353D,0x353D,0x353D,0x355E,0x355E,0x355E,0x355E,0x357E,0x359E,0x3DDF,0x35BE,0x35BE,0x257D,0x253C,0x255D,0x253D,0x251C,0x2D3D,0x2D3D,0x355E,0x353D,0x2D3D,0x353D,0x353D,0x353D,0x355E,0x353D,0x355D,0x353D,0x353D,0x353D,0x351D,0x351D,0x351D,0x351D,0x351D,0x351D,0x351D,0x34FC,0x34FC,0x34FC,0x3CFC,0x3CFC,0x3CFC,0x3CFD,0x3D1D,0x3D1D,0x3D1D,0x3CFC,0x3D1D,0x3CFC,0x3D1C,0x3D1C,0x3D1D,0x451C,0x451D,0x451C,0x451C,0x44FC,0x44FC,0x4CFC,0x4CFC,0x4CFC,0x4CDC,0x54BC,0x54BC,0x5CBC,0x6CDC,0x8D5E,0xB5DF,0x93BA,0x71D3,0x89F4,0x9A34,0xA214,0xA1F3,0xA9D3,0xA9F3,0xA9F3,0xA9D3,0xB214,0xA9D3,0xA9F3,0xAA34,0x9A13,0x9253,0x8293,0x5A51,0x324F,0x9EBF,0x661B,0x665B,0x6E5B,0x863C,0x7C98,0x6292,0x8293,0x9253,0x99F2,0xA9F3,0xA9D3,0xA9D3,0xB1F4,0xA9D3,0xA9F4,0xA1F3,0x91F3,0x8A34,0x6213,0x6B58,0x53D9,0x4C7C,0x44BC,0x3CDD,0x34DD,0x34FD,0x34FD,0x34FD,0x2CDD,0x2CDD,0x2CDC,0x2CDD,0x24BC,0x24BC,0x24BC,0x24DC,0x2CFD,0x2D1D,0x251D,0x2D3D,0x35BF,0x461F,0x2D9F,0x255E,0x14DC,0x14FC,0x14FC,0x0CDB,0x14DC,0x14DC,0x14BC,0x14DC,0x1CDC,0x1CFC,0x1CDC,0x1CDC,0x14DC,0x1CDC,0x1CDC,0x1CDC,0x1CFD,0x1CFD,0x1CDD,0x1CDD,0x1CDD,0x1CDC,0x1CDD,0x1CDD,0x1CBC,0x1CDD,0x1CBC,0x1CBC,0x1CBC,0x1CBC,0x1CBC,0x1CBC,0x1CBC,0x14BC,0x14BC,0x14BC,0x149C,0x149C,0x14BC,0x149C,0x149B,0x149B,0x149B,0x149B,0x149B,0x149B,0x0C9B,0x149B,0x149B,0x14BC,0x149B,0x14BC,0x14BC,0x14DC,0x1D1D,0x253D,0x255E,0x257E,0x2D9F,0x2DBF,0x1D7E,0x1D5D,0x0D1C,0x0D1C,0x0CDB,0x04BB,0x0CBB,0x0CDC,0x0CDC,0x14FC,0x14FC,0x14DC,0x14DC,0x14DC,0x14DC,0x14DD,0x14DD,0x14BC,0x14BC,0x14BC,0x14BC,0x0CBC,0x149C,0x14BC,0x14BC,0x14BC,0x14BC,0x149B,0x149B,0x149B,0x0C9B,0x0C9B,0x0C7B,0x0C7B,0x0C7B,0x0C7B,0x0C7B,0x0C7B,0x147B,0x0C7B,0x0C7B,0x0C7B,0x0C7B,0x0C7B,0x147B,0x149B,0x0C7B,0x0C9C,0x0C7B,0x0C9B,0x0C9B,0x0C9B,0x0C9B,0x14BC,0x14DC,0x1CFD,0x1D3E,0x253E,0x253E,0x253E,0x1D3E,0x1CFD,0x14DD,0x0CDC,0x049B,0x049B,0x049B,0x047A,0x045A,0x047A,0x047B,0x0C9B,0x0C9B,0x0C9B,0x0C9B,0x0C9C,0x0C9B,0x0C9B,0x0C9B,0x0C9B,0x0C9C,0x0C9C,0x0C7B,0x0C9C,0x0C9C,0x149C,0x0C9C,0x0C9C,0x0C7B,0x0C7C,0x0C9C,0x0C7C,0x0C7B,0x0C7C,0x0C5B,0x0C7C,0x0C7B,0x0C7B,0x0C7B,0x0C7B,0x0C7B,0x0C7B,0x0C7B,0x0C7B,0x0C7B,0x0C7B,0x0C7B,0x0C5B,0x0C5B,0x0C5B,0x0C5B,0x0C5B,0x0C5B,0x0C7B,0x0C7B,0x0C9C,0x14BC,0x14FD,0x1CFD,0x1D1D,0x1D1D,0x151D,0x14FD,0x0CDC,0x049B,0x04BB,0x047B,0x047A,0x045A,0x043A,0x043A,0x043A,0x043A,0x045A,0x045A,0x045A,0x045A,0x045A,0x043A,0x043A,0x043A,0x045B,0x043B,0x045B,0x045B,0x045B,0x043B,0x043B,0x043A,0x043B,0x043B,0x0C3B,0x0C3B,0x0C5B,0x0C5B,0x0C5B,0x0C3B,0x043B,0x0C3B,0x043B,0x041B,0x043B,0x041B,0x041B,0x041B,0x041B,0x041B,0x041B,0x041B,0x043B,0x041B,0x041B,0x041B,0x041A,0x041B,0x043B,0x0C3B,0x0C5B,0x0C7C,0x149C,0x14BD,0x1CDD,0x14DD,0x14DD,0x14BD,0x14BC,0x0C9C,0x0C9C,0x047C,0x0CBC,0x047B,0x047B, + 0x0338,0x0339,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0338,0x0318,0x0317,0x02F7,0x0317,0x0318,0x0338,0x0338,0x0338,0x0358,0x0379,0x0379,0x0379,0x0379,0x0399,0x0399,0x03D9,0x03FA,0x041A,0x045B,0x0C9C,0x14FD,0x1D1E,0x1D1E,0x0C5C,0x0C1B,0x0C1C,0x03DB,0x03BA,0x037A,0x039A,0x0379,0x0379,0x0379,0x0359,0x0359,0x0359,0x0359,0x0359,0x0339,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0358,0x0379,0x0379,0x0379,0x0379,0x0379,0x0379,0x0379,0x0358,0x0358,0x0379,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0379,0x0379,0x0379,0x0359,0x0359,0x0359,0x0359,0x0378,0x0379,0x0379,0x0378,0x0399,0x03B9,0x03D9,0x041A,0x043B,0x0C7C,0x0CBC,0x0CBC,0x14DD,0x0CDD,0x14DD,0x0C7C,0x0C3B,0x0C3B,0x03DA,0x0399,0x0379,0x0379,0x0379,0x0379,0x0379,0x0399,0x0379,0x0359,0x0358,0x0358,0x0358,0x0358,0x0358,0x0379,0x0379,0x0379,0x0379,0x0379,0x0378,0x0378,0x0378,0x0378,0x0378,0x0378,0x0378,0x0378,0x0378,0x0378,0x0358,0x0399,0x0379,0x0378,0x0379,0x0378,0x0378,0x0379,0x0379,0x0399,0x0399,0x0399,0x0399,0x0378,0x0358,0x0378,0x0378,0x0398,0x03B8,0x03B8,0x03D9,0x03F9,0x041A,0x045B,0x0C7B,0x14BC,0x251E,0x251E,0x147C,0x041A,0x03FA,0x03DA,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0379,0x0399,0x0379,0x0399,0x0379,0x0399,0x0399,0x0399,0x0399,0x0398,0x0398,0x0398,0x0398,0x0398,0x0398,0x0378,0x0378,0x0399,0x0399,0x0378,0x0399,0x0399,0x0398,0x0399,0x0399,0x0398,0x0398,0x0399,0x0399,0x0399,0x0399,0x0378,0x0378,0x0399,0x03B9,0x03B9,0x03B9,0x0398,0x0398,0x0398,0x0398,0x03D9,0x03D9,0x03B8,0x03B8,0x03F9,0x0419,0x0C5B,0x0C9B,0x1D1D,0x255E,0x1CFD,0x0C3B,0x03FA,0x03FA,0x03FA,0x03DA,0x03DA,0x03D9,0x03B9,0x03B9,0x03B9,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0379,0x0379,0x0379,0x0378,0x0379,0x0379,0x0399,0x0399,0x0399,0x0399,0x03B9,0x03B9,0x0399,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x0399,0x03B9,0x03B9,0x03B9,0x03B9,0x03D9,0x03B9,0x0BFA,0x0BFA,0x0BF9,0x0C19,0x03D9,0x03D9,0x03D9,0x03F9,0x0C3A,0x0C5A,0x0C7A,0x14DC,0x251D,0x2D7F,0x24FD,0x143A,0x03D9,0x03D9,0x03B9,0x03B9,0x0BB9,0x0BD9,0x0399,0x03B9,0x0399,0x03B9,0x03B9,0x03B9,0x0399,0x0398,0x0398,0x03B9,0x0399,0x0399,0x0399,0x0399,0x03B9,0x0399,0x0399,0x0399,0x0399,0x03B9,0x0399,0x0398,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03D9,0x03B9,0x03B9,0x03B9,0x03B9,0x03B9,0x03BA,0x03B9,0x03B9,0x0BBA,0x0BDA,0x03B9,0x0BBA,0x0BD9,0x0BDA,0x141B,0x143B,0x0C3A,0x0C3A,0x0BF9,0x0BF9,0x0C19,0x0419,0x149B,0x24FC,0x2D3E,0x2D1E,0x1C9C,0x0C1B,0x0BD9,0x0BD9,0x0BD9,0x03B9,0x03B9,0x03B9,0x0BB9,0x0BD9,0x03B9,0x03B9,0x03B9,0x0399,0x03B9,0x03B9,0x0399,0x0399,0x0BB9,0x0BB9,0x0399,0x0399,0x0BB9,0x0BB9,0x03B9,0x0BB9,0x0BB9,0x0BB9,0x03B9,0x03B9,0x0BB9,0x03B9,0x0BB9,0x0BB9,0x0BB9,0x0BB9,0x0BB8,0x0BB9,0x0BB9,0x0BB9,0x0BB8,0x0BB9,0x0BB9,0x0BB9,0x0BD9,0x0BD9,0x0BB9,0x0BD9,0x0BD9,0x0BF9,0x0BF9,0x0BF9,0x141A,0x143A,0x13F9,0x0BD9,0x0BF9,0x0C19,0x355E,0x357E,0x2D3E,0x24BC,0x147B,0x145B,0x0BF9,0x0BD9,0x0BD9,0x0BB9,0x13D9,0x13D9,0x13D9,0x13B9,0x0BB9,0x0BB9,0x0398,0x0398,0x0BD9,0x0BB9,0x0BB9,0x0BB9,0x0BB9,0x0BD9,0x0BB8,0x0B98,0x0BB9,0x0BB9,0x0BB8,0x0BB8,0x0B99,0x0399,0x0B98,0x0BB9,0x0B98,0x0B98,0x0BB9,0x0B98,0x0BB9,0x13B9,0x0BB9,0x0BB9,0x0BB9,0x0BD9,0x0BD9,0x13D9,0x13B9,0x13D9,0x0B98,0x0BB9,0x13D9,0x13D9,0x13FA,0x13F9,0x13FA,0x141A,0x13F9,0x13F9,0x1419,0x141A,0x143A,0x1439,0x3D7F,0x355E,0x1C9C,0x143A,0x141A,0x141A,0x13FA,0x13DA,0x13FA,0x13FA,0x13F9,0x13F9,0x13D9,0x13D9,0x0BD9,0x13D9,0x0BD9,0x0BB9,0x0B98,0x0B98,0x0BD9,0x0BB9,0x0BB9,0x0BB8,0x0BB8,0x0BB8,0x0B98,0x0B98,0x0B98,0x0B98,0x0B98,0x0B98,0x0B98,0x0B98,0x0B98,0x0B98,0x0B98,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BD9,0x0BB8,0x0BD9,0x0BB8,0x0BD9,0x0BD9,0x13F9,0x0BD9,0x13D9,0x1419,0x1C1A,0x13D8,0x0BB8,0x1419,0x1439,0x45FF,0x2D3D,0x145A,0x0BF9,0x0BD9,0x13FA,0x13D9,0x0BD9,0x13F9,0x13F9,0x13D9,0x13D9,0x13D9,0x0BD8,0x0BB8,0x0BD9,0x0BD8,0x0BB8,0x0BD8,0x0BB8,0x0398,0x0398,0x0BB9,0x0BB8,0x0BB8,0x0BB8,0x0B98,0x0BB8,0x0BB8,0x0BB8,0x0B98,0x0B98,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0B98,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BD9,0x0BB8,0x0BB8,0x0BD9,0x13F9,0x0BD9,0x0BD9,0x0BD9,0x13D9,0x13D9,0x1BF9,0x13F9,0x13F9,0x1419,0x145A,0x357E,0x1CDB,0x0C3A,0x03D9,0x03D8,0x0BD9,0x0BD9,0x0BF9,0x13F9,0x13F9,0x13F9,0x13F9,0x0BF9,0x0BD9,0x0BD9,0x0BB9,0x0BB8,0x0BB8,0x0BB9,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB9,0x0BB8,0x0BB8,0x0BD8,0x0BB8,0x0BB8,0x0BB8,0x0BB8,0x0BB9,0x0BB9,0x0BB8,0x0BB8,0x0BD9,0x0BB9,0x0BB8,0x0BB9,0x0BB9,0x0BB9,0x0BB8,0x0BB8,0x0BB8,0x0BD9,0x0398,0x0BB8,0x0BD9,0x0BD9,0x13F9,0x13FA,0x0BD9,0x0BD9,0x13F9,0x13F9,0x13F9,0x141A,0x24FC,0x359F,0x35BF,0x251D,0x147A,0x145A,0x143A,0x143A,0x141A,0x141A,0x141A,0x13FA,0x0BD9,0x13F9,0x0BD9,0x0BD9,0x13D9,0x13D9,0x13D9,0x13D9,0x13D9,0x13D9,0x13D9,0x13B9,0x13B9,0x13D9,0x13B9,0x13B9,0x13D9,0x13B9,0x13B9,0x13B9,0x1BB9,0x1BB9,0x1B99,0x1BB9,0x1BB9,0x1BB9,0x1BB9,0x1BB9,0x1BB9,0x1BD9,0x1BB9,0x1BB9,0x1BB9,0x23B9,0x23B9,0x23D9,0x23D9,0x2BD9,0x2BD9,0x2BD9,0x33F9,0x33DA,0x3BFA,0x43FA,0x4BFB,0x4BDA,0x5BDA,0x6BDA,0x8C1C,0x82F8,0x71B3,0x9214,0x9A14,0xA1F3,0xAA14,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9F4,0xA9F3,0xA213,0x9A33,0x9253,0x7A93,0x41EF,0x6436,0x865D,0x6E3B,0x6E1B,0x85FC,0x8D3A,0x5A91,0x7A73,0x8A32,0x9A13,0xA1D2,0xA9F3,0xA9D3,0xB1F4,0xA9D3,0xAA14,0xAA14,0x99F3,0x8A34,0x7234,0x7338,0x5399,0x2B17,0x1B17,0x1B78,0x1399,0x1379,0x0B79,0x0B79,0x0B79,0x0B79,0x0B59,0x0B79,0x0B79,0x0B79,0x0B79,0x0B78,0x0B99,0x0BB9,0x03B9,0x03B9,0x0378,0x0398,0x143B,0x251E,0x2D5E,0x1D1D,0x14DC,0x045A,0x03F9,0x03D9,0x03D9,0x03B9,0x03D9,0x03D9,0x03B9,0x03D9,0x03FA,0x03D9,0x03B9,0x03B9,0x03B9,0x0399,0x0398,0x0378,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0378,0x0379,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0398,0x0398,0x0399,0x03B9,0x03B9,0x03B9,0x03B9,0x03D9,0x0C5A,0x14DC,0x1D3D,0x151D,0x0CFC,0x049B,0x03F9,0x03F9,0x03D9,0x03B9,0x03D9,0x03B9,0x03B9,0x0399,0x0399,0x03B9,0x03DA,0x03DA,0x03BA,0x03B9,0x03B9,0x03B9,0x0399,0x0399,0x0399,0x0399,0x0399,0x03B9,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0379,0x0399,0x0399,0x0399,0x0379,0x0399,0x0399,0x0399,0x0399,0x0399,0x0379,0x0379,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0379,0x0399,0x0399,0x03DA,0x0C3B,0x0C5C,0x14BD,0x14DD,0x14FD,0x049B,0x043A,0x041A,0x03F9,0x03D9,0x03B9,0x03B8,0x0398,0x0378,0x0378,0x0378,0x0398,0x0398,0x0399,0x0399,0x0399,0x0399,0x0399,0x0399,0x0379,0x0379,0x0379,0x0379,0x0379,0x0379,0x0399,0x0399,0x0379,0x0379,0x0379,0x0359,0x0379,0x0379,0x0379,0x0379,0x0379,0x0379,0x0379,0x0379,0x0378,0x0378,0x0378,0x0378,0x0378,0x0378,0x0379,0x0379,0x0378,0x0378,0x0378,0x0378,0x0379,0x0379,0x0399,0x03B9,0x03B9,0x03D9,0x03FA,0x041B,0x0C7C,0x0CBC,0x151D,0x0CBC,0x043A,0x041A,0x03FA,0x03D9,0x03B9,0x0398,0x0398,0x0399,0x0398,0x0378,0x0378,0x0378,0x0378,0x0378,0x0379,0x0379,0x0399,0x0399,0x0399,0x0399,0x0379,0x0379,0x0379,0x0359,0x0379,0x0379,0x0379,0x0379,0x0379,0x0379,0x0379,0x0359,0x0359,0x0379,0x0379,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0338,0x0339,0x0359,0x0338,0x0359,0x0359,0x0358,0x0359,0x0379,0x039A,0x0C1B,0x0C3C,0x14BD,0x14FE,0x1D3E,0x1D3F, + 0x02F8,0x0319,0x02F8,0x02F8,0x02F8,0x02F8,0x02F8,0x02F8,0x02F7,0x02D7,0x02F8,0x02D7,0x02F7,0x02F8,0x0318,0x0318,0x0339,0x0359,0x0359,0x0358,0x0338,0x0338,0x0338,0x0338,0x0378,0x03BA,0x043B,0x0C9D,0x1CFE,0x1D1E,0x14BE,0x0C3C,0x0379,0x0359,0x0359,0x0339,0x0339,0x0319,0x0319,0x0319,0x0319,0x0319,0x0319,0x02F8,0x0318,0x0318,0x0319,0x0319,0x0319,0x0319,0x0339,0x0339,0x0339,0x0339,0x0339,0x0319,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0318,0x0318,0x0339,0x0339,0x0339,0x0339,0x0319,0x0339,0x0319,0x0359,0x0359,0x0359,0x0359,0x0359,0x0339,0x0339,0x0339,0x0339,0x0339,0x0359,0x0359,0x0359,0x0379,0x0379,0x0399,0x03B9,0x03FA,0x043B,0x0C7C,0x14DD,0x14DE,0x14DE,0x0C5C,0x03BA,0x0399,0x0359,0x0359,0x0339,0x0318,0x0319,0x0318,0x0319,0x0339,0x0339,0x0339,0x0359,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0319,0x0339,0x0339,0x0339,0x0339,0x0339,0x0338,0x0359,0x0339,0x0339,0x0339,0x0339,0x0338,0x0359,0x0359,0x0359,0x0359,0x0359,0x0338,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0379,0x0338,0x0338,0x0338,0x0338,0x0358,0x0379,0x0379,0x0378,0x0398,0x0398,0x03D9,0x0C5B,0x251E,0x253F,0x1CDE,0x0C3B,0x03B9,0x0378,0x0379,0x0379,0x0359,0x0359,0x0339,0x0339,0x0339,0x0339,0x0339,0x0359,0x0359,0x0359,0x0339,0x0379,0x0359,0x0359,0x0358,0x0379,0x0379,0x0358,0x0358,0x0358,0x0358,0x0358,0x0359,0x0359,0x0359,0x0379,0x0359,0x0379,0x0359,0x0359,0x0338,0x0359,0x0379,0x0359,0x0359,0x0379,0x0358,0x0379,0x0379,0x0379,0x0379,0x0379,0x0379,0x0379,0x0358,0x0358,0x0358,0x0379,0x0399,0x0378,0x0358,0x0378,0x03FA,0x24FD,0x357F,0x253E,0x0C5B,0x0398,0x0378,0x0358,0x0379,0x0379,0x0379,0x0379,0x0379,0x0379,0x0379,0x0379,0x0359,0x0379,0x0359,0x0379,0x0379,0x0379,0x0379,0x0379,0x037A,0x0379,0x0359,0x0B7A,0x0B7A,0x0379,0x0359,0x0B9A,0x0379,0x0B7A,0x037A,0x0379,0x0359,0x0B9A,0x039A,0x0399,0x0399,0x0399,0x0379,0x0399,0x0399,0x039A,0x0B9A,0x0BBA,0x0399,0x0BBA,0x0B99,0x0BBA,0x0BBA,0x0B99,0x0379,0x0399,0x0378,0x0398,0x0378,0x0357,0x0378,0x0378,0x03F9,0x2D3E,0x3DDF,0x3D9F,0x145B,0x0358,0x0337,0x0338,0x0358,0x0B99,0x0B79,0x0B99,0x0B79,0x0BBA,0x0BBA,0x0B79,0x0379,0x0B9A,0x0379,0x0B99,0x0B79,0x0B9A,0x0B9A,0x0BBA,0x0B9A,0x0BBA,0x0B99,0x0BBA,0x0B9A,0x0BBA,0x0B9A,0x0B9A,0x0B9A,0x0BBA,0x0BBA,0x0B9A,0x0399,0x0BBA,0x0BDA,0x0BBA,0x0B9A,0x0BBA,0x0BBA,0x0BBA,0x0B9A,0x0BBA,0x0BBA,0x0BBB,0x0BBB,0x13BB,0x0B9A,0x13DB,0x0B9A,0x0B9A,0x0BBA,0x0BBA,0x0399,0x03B9,0x0399,0x0399,0x0399,0x0398,0x03D9,0x355E,0x45DF,0x353F,0x0BFA,0x0358,0x0379,0x0379,0x0379,0x0B9A,0x0B99,0x0B99,0x0379,0x0B99,0x0BBA,0x0BBA,0x0B99,0x13DA,0x13DA,0x0B9A,0x0B79,0x13BA,0x13BA,0x13BA,0x0B9A,0x13BA,0x0B9A,0x0BBA,0x0B9A,0x0BBA,0x0BBA,0x0BBA,0x0B99,0x13BA,0x0BBA,0x0BBA,0x13BA,0x13BA,0x139A,0x13BA,0x0BB9,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13DA,0x13BA,0x13BA,0x13BA,0x13DA,0x13BA,0x13DA,0x0BBA,0x13DA,0x0BB9,0x13DA,0x0B99,0x0398,0x0378,0x0337,0x1C3B,0x45BF,0x2D1E,0x1C7C,0x0BDA,0x0399,0x0399,0x0BB9,0x0B99,0x0B99,0x13BA,0x13BA,0x139A,0x13BA,0x13BA,0x1BDA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x139A,0x13BA,0x13BA,0x13DA,0x13DA,0x13BA,0x13BA,0x13DA,0x13BA,0x13BA,0x13DA,0x13BA,0x13BA,0x1BDB,0x13BA,0x13DA,0x1BDA,0x13BA,0x13BA,0x1BDA,0x1BDA,0x13DA,0x13BA,0x1BDA,0x1BDA,0x1BDA,0x13BA,0x13DA,0x13DA,0x1BDA,0x1BFB,0x1BFB,0x1BFB,0x1BFB,0x0B99,0x1BFB,0x13DA,0x13DA,0x0BB9,0x0BB8,0x0BB8,0x3D9F,0x24BC,0x13FA,0x13FB,0x13DA,0x13DA,0x1BDB,0x13BA,0x1BDA,0x13BA,0x13BA,0x1399,0x13BA,0x13BA,0x13BA,0x13B9,0x13BA,0x13BA,0x1BDA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13DA,0x13DA,0x13BA,0x13B9,0x13DA,0x13BA,0x13DA,0x13BA,0x13DA,0x13B9,0x13BA,0x13DA,0x13BA,0x13B9,0x13DA,0x13BA,0x13DA,0x13DA,0x13BA,0x13BA,0x13DA,0x1BFA,0x1BFA,0x13B9,0x1BFA,0x13D9,0x13B9,0x0BB8,0x3D9F,0x24DC,0x1C5B,0x13FA,0x13DA,0x13DA,0x1BFB,0x1BDA,0x1BDA,0x13BA,0x1BDA,0x13BA,0x13DA,0x13BA,0x13DA,0x13BA,0x1BDA,0x13DA,0x13BA,0x1399,0x13DA,0x13BA,0x13B9,0x13BA,0x13B9,0x1399,0x13BA,0x13BA,0x13B9,0x1399,0x13BA,0x13DA,0x13B9,0x13BA,0x13DA,0x13BA,0x13BA,0x13BA,0x1BDA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x1BDA,0x13BA,0x13B9,0x13B9,0x13BA,0x13B9,0x13DA,0x13BA,0x13BA,0x1BBA,0x13B9,0x13B9,0x0BB9,0x0BB8,0x2D1E,0x24DC,0x145B,0x0BFA,0x0BD9,0x0BDA,0x13DA,0x13DA,0x1C1B,0x13DA,0x13DA,0x0B99,0x13BA,0x0BB9,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13B9,0x1399,0x13DA,0x13BA,0x13BA,0x13B9,0x13B9,0x13BA,0x13BA,0x13DA,0x13DA,0x13B9,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13DA,0x13BA,0x13BA,0x13BA,0x13BA,0x13BA,0x13B9,0x13BA,0x13B9,0x0B79,0x0B79,0x0B79,0x0B99,0x0B79,0x0358,0x0337,0x0378,0x2D1E,0x3DDF,0x357F,0x03F9,0x0398,0x0398,0x0BB9,0x0BB9,0x0BB9,0x13DA,0x13B9,0x13DA,0x0B99,0x13BA,0x0B99,0x13BA,0x1399,0x13BA,0x13BA,0x1BDA,0x13DA,0x1BDB,0x1BDB,0x1BBA,0x1BBA,0x1BDA,0x1BBA,0x1BBA,0x1BBA,0x23DA,0x23DB,0x23DA,0x23DB,0x23DB,0x23BB,0x2BDB,0x2BFB,0x2BFB,0x2BFB,0x2BFB,0x2BFB,0x2BFB,0x2C1B,0x2C1B,0x341B,0x341B,0x33FB,0x341B,0x33FB,0x3C1B,0x3C1B,0x3BFB,0x33DA,0x33DA,0x3BDA,0x43FB,0x4BDB,0x539A,0x5359,0x6319,0x7B59,0x82B7,0x79D4,0x9235,0xA234,0xA1F3,0xA1D3,0xA9F3,0xB1F3,0xA9D3,0xA9D3,0xB214,0xA9F3,0xA1F3,0x9A13,0x9233,0x8232,0x6A52,0x39EE,0x8DFC,0x7DFB,0x7E1C,0x85DB,0x957C,0x5A91,0x7A93,0x8A33,0x9A13,0xA1F3,0xA9D3,0xA9D3,0xA9D4,0xB1F4,0xA9F4,0xAA14,0xA1F4,0x9214,0x7A14,0x72B7,0x6C1C,0x3B59,0x2B7A,0x2BBB,0x23BA,0x23BB,0x1BBA,0x1B7A,0x1BBB,0x1B9A,0x1BBB,0x1B9A,0x139A,0x137A,0x137A,0x137A,0x0B59,0x0B79,0x0B79,0x0359,0x0358,0x0338,0x0358,0x03DA,0x2D1E,0x35BF,0x359F,0x253F,0x147C,0x03DA,0x0399,0x0379,0x0378,0x0358,0x0399,0x0399,0x03BA,0x0BBA,0x0399,0x0359,0x0379,0x0358,0x0358,0x0358,0x0359,0x0359,0x0379,0x037A,0x037A,0x0359,0x037A,0x0379,0x0379,0x0379,0x0379,0x0359,0x0379,0x0359,0x0379,0x0379,0x0379,0x0359,0x0359,0x0359,0x0379,0x0359,0x0379,0x0379,0x0379,0x0379,0x039A,0x0379,0x0379,0x0359,0x0359,0x0359,0x0358,0x0358,0x0359,0x0359,0x0359,0x0358,0x0358,0x0358,0x0399,0x041A,0x045B,0x14DD,0x255F,0x2D7F,0x1CDD,0x0C1A,0x03B9,0x0399,0x0399,0x0379,0x0379,0x0358,0x0359,0x0359,0x0399,0x039A,0x039A,0x0379,0x0379,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0379,0x0359,0x0379,0x0359,0x0379,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0339,0x0359,0x0359,0x0359,0x0359,0x0359,0x0338,0x0338,0x0338,0x0338,0x0359,0x0379,0x039A,0x03BA,0x041B,0x14DE,0x253F,0x253F,0x24FE,0x147C,0x041A,0x03DA,0x03B9,0x0399,0x0399,0x0379,0x0359,0x0358,0x0358,0x0379,0x0379,0x0359,0x0359,0x0359,0x0339,0x0339,0x0339,0x0339,0x0339,0x0319,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0338,0x0339,0x0339,0x0339,0x0339,0x0339,0x0338,0x0359,0x0359,0x0359,0x0379,0x0379,0x0399,0x03B9,0x041B,0x14FE,0x1D3F,0x1CFE,0x149D,0x0C3B,0x03FA,0x03B9,0x0399,0x0399,0x0399,0x0379,0x0379,0x0379,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0359,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0319,0x0319,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x0319,0x0339,0x0339,0x0319,0x0319,0x0319,0x0319,0x0319,0x0319,0x0339,0x0339,0x0319,0x0319,0x0319,0x0319,0x0319,0x02F8,0x0318,0x02F8,0x0318,0x0318,0x0319,0x0319,0x0339,0x039A,0x03DB,0x0C5C,0x0C9D,0x0C9D, + 0x0339,0x0339,0x0339,0x0B5A,0x035A,0x0B7A,0x0B7A,0x0B9A,0x0B9A,0x0BBB,0x0BBB,0x0BBB,0x0BBB,0x0BBB,0x0B9B,0x035A,0x0339,0x0339,0x0338,0x0338,0x0338,0x0359,0x0399,0x0BFB,0x1C7D,0x24DF,0x251F,0x2D3F,0x0C5C,0x03BA,0x0359,0x0339,0x0339,0x0339,0x0319,0x033A,0x033A,0x033A,0x035A,0x035B,0x037B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B7A,0x0B7B,0x0B9B,0x035A,0x035A,0x035A,0x0B7B,0x033A,0x037B,0x035A,0x0B7B,0x037A,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B9B,0x0B9B,0x0B9B,0x0BBB,0x0B7A,0x0B9B,0x0B9B,0x0B9B,0x0BBB,0x0BBB,0x039B,0x0BBB,0x039A,0x039B,0x039B,0x039A,0x039A,0x0BBB,0x037A,0x037A,0x037A,0x037A,0x0379,0x039A,0x03BA,0x03FB,0x145C,0x1CBD,0x24FF,0x2D5F,0x14BD,0x041B,0x0379,0x0359,0x0379,0x037A,0x037A,0x039B,0x0B9B,0x0BBB,0x0BBB,0x13DC,0x0B9B,0x13BC,0x13BC,0x13DC,0x13BC,0x0BBC,0x13BC,0x13DC,0x13BC,0x13BC,0x13BC,0x13DC,0x13DC,0x13DC,0x0BBB,0x13DC,0x13DC,0x13DC,0x13DC,0x13DC,0x0BBC,0x13DC,0x13DC,0x13BB,0x0BBB,0x13BB,0x0BBB,0x0BBB,0x0BBB,0x13DB,0x13DB,0x13DB,0x0BDB,0x0BDB,0x0BBB,0x0BFB,0x0BDB,0x0BFB,0x0BDB,0x0BFB,0x0BDA,0x03BA,0x0399,0x0399,0x03BA,0x03FA,0x147C,0x1CDE,0x1CBE,0x1CBE,0x0C3C,0x03DA,0x03DA,0x03BA,0x03BA,0x03BA,0x039A,0x0BBB,0x13DC,0x13DC,0x13DC,0x13FC,0x1BFC,0x1BFC,0x1BFC,0x1BFC,0x1BFC,0x13FC,0x13DC,0x1BFC,0x13FC,0x13DB,0x13FC,0x141C,0x13FC,0x1C1C,0x13FC,0x13FC,0x13FC,0x1C1C,0x13FC,0x13FC,0x13FC,0x13FC,0x13DC,0x1BFC,0x1BFC,0x1BFC,0x13FB,0x141C,0x13FB,0x13FC,0x13FB,0x13FB,0x13FC,0x1C1C,0x141C,0x1C3C,0x1C1C,0x1C1C,0x1C1C,0x1C3C,0x1C3C,0x1C3C,0x141C,0x0BDA,0x03BA,0x0C1B,0x24BE,0x2D1F,0x2D1F,0x24DE,0x145C,0x0C1B,0x0BFB,0x0BDA,0x0BDA,0x0BDB,0x0BDB,0x13FB,0x13DB,0x13FC,0x1BFC,0x1C1C,0x1C1C,0x1C1D,0x1C1D,0x1C1C,0x1C1D,0x1C3D,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1BFC,0x1C1D,0x1C1C,0x1C1C,0x1BFC,0x241D,0x1C1C,0x1BFC,0x1BFC,0x241D,0x1C1C,0x1C1C,0x1BFC,0x1BFC,0x13FC,0x1C3C,0x141C,0x13FC,0x1C3C,0x1C1C,0x1C3C,0x243D,0x1BFC,0x1BFC,0x1C1C,0x1C1C,0x1C3C,0x245D,0x1C3C,0x1C3C,0x141B,0x141B,0x141B,0x1C3C,0x141B,0x03D9,0x145C,0x353F,0x3D9F,0x2D3F,0x1C7C,0x141B,0x13FB,0x1C1B,0x1C3C,0x243C,0x1BFB,0x1BFB,0x1BFC,0x23FC,0x241C,0x243D,0x243D,0x2C5D,0x245D,0x2C5D,0x243D,0x243D,0x243D,0x245D,0x245D,0x243D,0x245D,0x2C7D,0x243D,0x243D,0x245D,0x2C5D,0x243D,0x243D,0x243D,0x245D,0x243D,0x245D,0x243D,0x245D,0x243D,0x245D,0x245D,0x245D,0x245D,0x245D,0x245D,0x243D,0x243D,0x2C5D,0x243D,0x245D,0x1C1D,0x241D,0x245D,0x245D,0x243C,0x245D,0x141B,0x143B,0x143C,0x1C5C,0x24BE,0x355F,0x3D7F,0x2CFE,0x2CBE,0x1C3C,0x13FB,0x1BFC,0x1C1C,0x243C,0x243C,0x243D,0x245D,0x245D,0x2C7E,0x34BE,0x2C5D,0x245D,0x243D,0x2C5D,0x2C5D,0x2C7D,0x2C5D,0x2C5D,0x2C5D,0x2C7E,0x2C5D,0x2C5D,0x2C7D,0x2C7D,0x2C5D,0x2C5D,0x2C5D,0x2C7D,0x2C5D,0x2C5D,0x2C5D,0x2C7E,0x2C5D,0x2C3D,0x2C5D,0x2C7D,0x2C5D,0x2C5D,0x2C7D,0x2C7D,0x2C7D,0x347E,0x2C5D,0x2C5D,0x2C5D,0x2C7D,0x245D,0x243C,0x245C,0x2C7D,0x243C,0x245C,0x1C3B,0x243C,0x1C3B,0x1C3B,0x1C5C,0x3D7F,0x3D5F,0x2CDD,0x24BD,0x247D,0x1C5C,0x245D,0x245D,0x2C7D,0x2C7D,0x2C9E,0x2C7D,0x2C7E,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x2C7D,0x2C5D,0x2C7D,0x347E,0x2C7D,0x347E,0x349E,0x2C7D,0x2C7D,0x349E,0x349E,0x349E,0x349E,0x2C7D,0x2C7E,0x349E,0x347E,0x349E,0x2C7D,0x2C5D,0x2C7D,0x347E,0x347E,0x347E,0x347D,0x2C7D,0x2C7D,0x349E,0x2C5D,0x2C5D,0x2C7D,0x2C5D,0x2C5D,0x347D,0x2C3C,0x2C5D,0x243C,0x2C5D,0x243C,0x2C5C,0x241C,0x241C,0x241B,0x243C,0x1C1B,0x247C,0x4DBF,0x24BC,0x247C,0x243C,0x243C,0x243C,0x241C,0x241C,0x2C3D,0x2C5D,0x2C7D,0x2C7D,0x2C7D,0x2C7D,0x2C7D,0x347D,0x2C7D,0x2C5D,0x2C5D,0x345D,0x347E,0x347E,0x347E,0x349E,0x349E,0x347E,0x347E,0x347D,0x347E,0x347E,0x2C7D,0x349E,0x347E,0x347E,0x347E,0x347E,0x349E,0x349E,0x347D,0x349E,0x347D,0x347D,0x2C7D,0x347D,0x347D,0x347D,0x2C7D,0x349D,0x347D,0x347D,0x2C7D,0x349D,0x347D,0x2C7D,0x2C3C,0x2C5C,0x241C,0x2C3C,0x241B,0x241B,0x241B,0x1C3B,0x3D7F,0x2CFE,0x1C5C,0x1C1B,0x1C1B,0x243C,0x241C,0x243C,0x2C3C,0x2C5D,0x2C5D,0x2C7D,0x347D,0x2C5D,0x2C5D,0x2C5D,0x2C3C,0x2C5D,0x2C5D,0x2C5D,0x2C3D,0x2C5D,0x2C5D,0x2C5D,0x347E,0x347D,0x2C7D,0x347D,0x2C7D,0x2C7D,0x2C5D,0x2C5D,0x2C7D,0x347E,0x347E,0x347E,0x347D,0x347E,0x2C5D,0x2C7D,0x2C7D,0x347E,0x2C5D,0x2C5D,0x2C5D,0x347D,0x347D,0x2C5D,0x347D,0x2C7D,0x2C5D,0x2C7D,0x245D,0x2C5D,0x2C5D,0x2C5D,0x241C,0x2C3C,0x2C1C,0x2C3C,0x2C3C,0x243C,0x2C7D,0x245C,0x353F,0x3D7F,0x1C7C,0x1C3B,0x1C3B,0x1C3C,0x243C,0x243C,0x2C5D,0x2C7D,0x2C5D,0x347D,0x2C7D,0x2C7D,0x347D,0x347E,0x2C5D,0x347D,0x2C5D,0x2C5D,0x2C7D,0x347E,0x347E,0x2C7D,0x2C5D,0x2C7D,0x2C7D,0x349E,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x2C7E,0x2C5D,0x2C7E,0x2C5D,0x2C7D,0x2C5D,0x2C7E,0x349E,0x2C7D,0x349E,0x34BE,0x2C7D,0x349E,0x2C7E,0x2C7D,0x2C7D,0x2C9D,0x243C,0x13FB,0x1C3B,0x2CDE,0x3D7F,0x353F,0x249C,0x143B,0x141B,0x141B,0x13FB,0x1C1B,0x241C,0x241C,0x243C,0x2C3C,0x2C3D,0x2C5D,0x2C1C,0x2C3D,0x2C1C,0x2C3D,0x2C3D,0x2C3C,0x2C3D,0x345D,0x2C3D,0x345D,0x343D,0x343D,0x345D,0x345D,0x345D,0x345D,0x3C5D,0x3C5E,0x3C5E,0x3C5E,0x3C5D,0x3C5D,0x3C5D,0x3C5D,0x3C7D,0x3C7E,0x3C5D,0x3C5D,0x3C7D,0x447E,0x447E,0x447E,0x447E,0x4C9E,0x4C9E,0x4C9E,0x549E,0x54BE,0x54BE,0x5CBE,0x547D,0x5C7D,0x645D,0x6C5D,0x7C5D,0x9CDF,0xACDF,0x7A76,0x81D3,0x9A14,0xA214,0xAA14,0xA1B2,0xA9D3,0xA9F3,0xA9F3,0xA9D3,0xA1D3,0xA9D3,0xAA14,0xA233,0x9253,0x8293,0x5A30,0x4B12,0x9E5E,0x85DB,0x8DBC,0x9D9C,0x62D3,0x7252,0x8A53,0xA274,0xA213,0xA9F3,0xA9D3,0xA9B3,0xA9B3,0xA9F4,0xA9F4,0xA1F4,0x9214,0x8214,0x7276,0x741C,0x645D,0x547D,0x445D,0x3C5D,0x3C7E,0x3C7E,0x3C9E,0x3C7E,0x347E,0x345E,0x3C7E,0x347E,0x347E,0x345E,0x347E,0x2C7E,0x2C9E,0x2C5D,0x245D,0x245C,0x245D,0x1C3C,0x0BFB,0x0C1B,0x24FE,0x355F,0x2D5F,0x24FE,0x149D,0x0C1B,0x0C1B,0x0BFB,0x0BFB,0x0BDA,0x0B9A,0x0BBA,0x13FB,0x13DB,0x13FB,0x1BFC,0x1C1C,0x13DB,0x1BFC,0x1BFC,0x1BFC,0x1BFD,0x1C1D,0x1C1C,0x1C1D,0x1BFC,0x1BFC,0x1BFC,0x1C1D,0x1BFC,0x1C1D,0x1C1C,0x1C1C,0x1C1D,0x241D,0x1BFC,0x1C1D,0x1C1C,0x1C1D,0x1C1D,0x1C1C,0x1BFC,0x1C1D,0x1C1C,0x1C1C,0x1C1D,0x1C1C,0x1C3D,0x245D,0x1C1D,0x1C1C,0x1C1C,0x1C3D,0x1C3D,0x1C5D,0x1C3D,0x1C3D,0x1C5D,0x143C,0x145D,0x149D,0x14DD,0x1CFE,0x1CFE,0x1CFE,0x1CFE,0x1CBD,0x145C,0x0C3C,0x0BDB,0x141C,0x141C,0x13FC,0x13FC,0x0BDB,0x039A,0x039A,0x0BDB,0x0BDB,0x0BDB,0x13FC,0x13DB,0x13DC,0x13BB,0x13DB,0x13DC,0x13FC,0x13FC,0x13FC,0x13FC,0x13FC,0x13FC,0x13DB,0x13DC,0x13FC,0x13DB,0x13FC,0x13DB,0x13FC,0x13FC,0x13FC,0x13DC,0x13FC,0x13DB,0x13DC,0x13DC,0x13DC,0x13BC,0x13DC,0x13BB,0x13BB,0x13DC,0x13DC,0x13DC,0x13FC,0x13DB,0x13FC,0x0BDB,0x0BDC,0x0BDB,0x0C1C,0x0C3C,0x0C3C,0x041C,0x0C7D,0x24FF,0x2D1F,0x251F,0x24DE,0x0C3C,0x0C1C,0x0BDB,0x0BFB,0x0BDB,0x0BDB,0x0BDB,0x03BB,0x039A,0x037A,0x037A,0x037A,0x039A,0x039A,0x0B9B,0x0BBB,0x0B9B,0x0B9B,0x0B9B,0x0B9B,0x0B9B,0x13BC,0x13BC,0x13BC,0x13BB,0x13BC,0x0BBB,0x13DC,0x0BBB,0x13DC,0x13BC,0x13DC,0x13BC,0x13DC,0x13BB,0x13BC,0x13BB,0x13BC,0x0BBB,0x13DC,0x13DC,0x0BBC,0x0BBB,0x0BDB,0x0BBB,0x0BDB,0x0BBB,0x0BDB,0x0BBB,0x0BDB,0x03BA,0x03BB,0x03BB,0x03DB,0x041B,0x0C3C,0x043C,0x0C7D,0x1CDE,0x1CFF,0x14BD,0x147D,0x041B,0x03FB,0x03BA,0x03BA,0x03BA,0x03BA,0x0BBB,0x03BB,0x03BB,0x039A,0x037A,0x035A,0x0359,0x0359,0x035A,0x035A,0x035A,0x037A,0x035A,0x037A,0x035A,0x0B7B,0x035A,0x0B7B,0x0B9B,0x0B7B,0x0B7B,0x0B9B,0x037B,0x0B9B,0x037B,0x0B9B,0x037B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B9B,0x0B7A,0x0B7A,0x0B5A,0x0B9B,0x0B7A,0x0B9B,0x0B7A,0x0B7A,0x0B7A,0x0B9B,0x0BBB,0x0BBB,0x03DB,0x03BB,0x03DB,0x03DB, + 0x13BB,0x139B,0x0B5A,0x0B7A,0x0B7B,0x0B9B,0x0BBB,0x0BBB,0x0BBB,0x0BBB,0x039B,0x039A,0x039A,0x0359,0x0359,0x0359,0x039A,0x13FC,0x245D,0x2C9E,0x34FF,0x3D1F,0x351F,0x34FF,0x2CDF,0x1C9E,0x143D,0x0C1C,0x0BFC,0x0BDC,0x13DC,0x13DC,0x13DC,0x13DC,0x1BFD,0x13BC,0x13DC,0x13DC,0x13BC,0x13BC,0x13BC,0x13BC,0x13BC,0x139C,0x13BC,0x13BC,0x139C,0x0B9C,0x13BC,0x13BC,0x13BC,0x13BC,0x13BC,0x13BC,0x13DD,0x13DC,0x13DD,0x1BDD,0x13BC,0x139C,0x1BDD,0x13BC,0x13DC,0x13DC,0x13DC,0x13DC,0x13DC,0x13BC,0x13BB,0x13DC,0x0BBB,0x0BBB,0x0BDC,0x0BBB,0x0BBB,0x039B,0x039B,0x039B,0x03BB,0x03BB,0x0BDB,0x0BFC,0x0BFC,0x141D,0x1C5D,0x249E,0x2CDF,0x2CFF,0x2D1F,0x24DF,0x1C9E,0x145D,0x143C,0x141C,0x1C3D,0x1C1D,0x1C1D,0x141D,0x1C1D,0x141D,0x1C1D,0x13FD,0x13FD,0x13DC,0x13DC,0x13DC,0x13BC,0x13DC,0x13DC,0x13DC,0x13BC,0x13DD,0x1BDD,0x13DD,0x13DD,0x13DD,0x1BFD,0x13FD,0x13DD,0x13DC,0x1BFD,0x13FD,0x1BFD,0x1BFD,0x13DD,0x13DC,0x13DC,0x1BFD,0x13DC,0x1BFC,0x1BFC,0x13DC,0x1BFC,0x1BFC,0x1BFC,0x13FC,0x141C,0x13FC,0x13FC,0x0BFC,0x0BDB,0x0BDB,0x0BFB,0x0C1C,0x0BFB,0x145C,0x145D,0x24BE,0x2D1F,0x353F,0x353F,0x2CFF,0x24BF,0x1C9E,0x249E,0x24BF,0x249E,0x247E,0x245E,0x245E,0x245E,0x1C1D,0x1C1D,0x1C1D,0x1BFD,0x1C1D,0x241D,0x1C1D,0x1C1D,0x1C1D,0x1BFD,0x1BFD,0x1C1D,0x1BFC,0x1BFC,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1C3D,0x1C3D,0x1C1D,0x1C1D,0x1C1D,0x243D,0x243D,0x243E,0x243E,0x1C1D,0x243D,0x243D,0x243D,0x243D,0x243D,0x1C1C,0x243D,0x243D,0x243D,0x1C3D,0x1C3D,0x1C3D,0x1C3D,0x141C,0x13FB,0x13FB,0x141C,0x143C,0x0C1C,0x1C7D,0x24BE,0x2CFF,0x2D1F,0x2CFF,0x249E,0x249E,0x24BE,0x2CBE,0x2C9E,0x247D,0x245D,0x247D,0x245D,0x245E,0x243D,0x243D,0x243D,0x243E,0x243D,0x241D,0x243E,0x243D,0x243D,0x243D,0x243E,0x243E,0x243D,0x243D,0x243D,0x243D,0x243D,0x243E,0x243E,0x241D,0x2C3E,0x2C3E,0x243D,0x241D,0x243D,0x243D,0x2C3E,0x243E,0x245D,0x245E,0x245E,0x245E,0x245D,0x245D,0x245D,0x243D,0x243D,0x1C1C,0x243D,0x245D,0x243C,0x1C3C,0x243D,0x1C1C,0x141C,0x143C,0x1C3C,0x1C7D,0x1C7D,0x351F,0x355F,0x351F,0x24BE,0x24BE,0x249E,0x249E,0x247D,0x2C7D,0x245D,0x2C5D,0x2C3D,0x241D,0x241D,0x2C3D,0x241D,0x2C3D,0x2C3D,0x243D,0x2C3D,0x243D,0x243D,0x241D,0x243D,0x243D,0x243D,0x243D,0x243D,0x243D,0x2C5D,0x243D,0x2C5E,0x243D,0x243D,0x243D,0x243D,0x243D,0x243D,0x2C5E,0x245D,0x245D,0x245D,0x245D,0x245D,0x245D,0x243D,0x2C5E,0x2C3D,0x243D,0x2C3E,0x2C5E,0x243D,0x241D,0x243D,0x245D,0x243D,0x243D,0x243D,0x1C3C,0x143C,0x143C,0x1C7D,0x2CFF,0x351F,0x2CDE,0x2CBE,0x2CBE,0x2CBE,0x2C7E,0x2C7E,0x2C5E,0x243D,0x2C5E,0x2C7E,0x2C5D,0x2C5D,0x2C7E,0x2C5D,0x2C5D,0x2C7E,0x2C7E,0x241D,0x2C3D,0x2C3D,0x2C3D,0x2C3D,0x2C3D,0x2C3D,0x2C3D,0x2C5D,0x2C3D,0x2C3D,0x2C5D,0x2C3D,0x2C5D,0x2C5E,0x2C5D,0x2C5E,0x2C5E,0x2C5D,0x2C3D,0x2C5D,0x2C5E,0x2C5D,0x2C5D,0x2C7D,0x2C7E,0x2C5D,0x2C7E,0x2C5D,0x2C3D,0x2C5D,0x2C7D,0x2C5D,0x2C5D,0x2C5D,0x2C7E,0x2C5D,0x2C5D,0x2C5D,0x2C7D,0x2C7D,0x245D,0x247D,0x249D,0x34FF,0x34FF,0x2CDE,0x2CDE,0x2CBE,0x2C9E,0x2C7D,0x2C9E,0x2C7E,0x2C7E,0x2C7D,0x2C9E,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x345E,0x2C5D,0x2C5D,0x345E,0x345E,0x2C5D,0x2C5D,0x2C5D,0x347E,0x2C5D,0x2C5D,0x2C5E,0x2C5D,0x2C7E,0x2C7E,0x2C5E,0x2C5E,0x2C7E,0x2C5D,0x2C5D,0x347E,0x2C5E,0x2C5D,0x2C5D,0x347E,0x2C5D,0x347E,0x2C5E,0x2C5D,0x345E,0x347E,0x2C5D,0x347E,0x2C5D,0x2C5D,0x345D,0x347E,0x2C5D,0x2C7D,0x347E,0x347D,0x2C7D,0x2C7D,0x2C5D,0x243C,0x245C,0x3D3F,0x457F,0x2CDE,0x34DE,0x3CDF,0x347E,0x347E,0x347E,0x347E,0x347E,0x349E,0x349E,0x347E,0x347E,0x347E,0x347E,0x347E,0x345D,0x347E,0x347E,0x345E,0x345E,0x345E,0x347E,0x2C5E,0x345E,0x345E,0x347E,0x347E,0x2C5D,0x2C5D,0x347E,0x2C5E,0x2C5D,0x345E,0x2C5E,0x2C5E,0x347E,0x2C5D,0x2C5D,0x2C5D,0x345E,0x2C5D,0x2C5D,0x347D,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x2C5D,0x347D,0x2C5D,0x347D,0x349E,0x347D,0x347D,0x349E,0x349E,0x2C7D,0x347D,0x349E,0x2C9D,0x3D5F,0x353F,0x34DE,0x34DF,0x34BE,0x349E,0x347E,0x347E,0x347E,0x349E,0x347E,0x347E,0x347E,0x347E,0x345D,0x347E,0x347D,0x347D,0x347E,0x347E,0x347E,0x347E,0x347E,0x347E,0x347E,0x347E,0x347E,0x345E,0x347E,0x2C5E,0x345E,0x347E,0x2C5E,0x2C5E,0x347E,0x345E,0x345E,0x2C5E,0x345E,0x345E,0x2C5D,0x2C5E,0x345E,0x345E,0x2C5D,0x2C5D,0x347E,0x345E,0x347E,0x347E,0x347E,0x2C5E,0x2C7E,0x2C7E,0x2C7E,0x347E,0x349E,0x347E,0x3C9E,0x347E,0x347D,0x2C7D,0x2C7D,0x2C9D,0x34FE,0x459F,0x3D3F,0x2CDE,0x2CBE,0x2C9E,0x2C7D,0x2C7D,0x2C7D,0x347E,0x347E,0x2C5D,0x347D,0x2C7D,0x347E,0x347E,0x2C5D,0x2C5D,0x2C5E,0x347E,0x2C5E,0x2C5E,0x347E,0x2C5E,0x2C5E,0x347E,0x2C5E,0x2C5D,0x2C5E,0x347E,0x2C5E,0x2C5D,0x2C5E,0x2C5E,0x2C3D,0x2C5E,0x347E,0x347E,0x2C5E,0x2C5E,0x347E,0x347E,0x2C5E,0x2C5E,0x2C7E,0x2C5E,0x2C5E,0x2C5E,0x2C5D,0x347E,0x347E,0x2C5E,0x2C5D,0x2C5D,0x2C5D,0x349E,0x2C7D,0x2C5D,0x2C7D,0x2C5D,0x245C,0x2CBE,0x34FE,0x3D3F,0x353F,0x351F,0x2CDE,0x2CBE,0x2C9D,0x2C7D,0x2C7D,0x347E,0x347D,0x347E,0x345D,0x345D,0x345E,0x343D,0x343D,0x343D,0x345D,0x345E,0x345D,0x345E,0x345E,0x345E,0x345E,0x345E,0x345E,0x345E,0x3C5E,0x3C7E,0x3C7E,0x3C5E,0x3C7E,0x445E,0x3C5E,0x3C5E,0x3C5E,0x3C5E,0x3C5E,0x447E,0x3C5E,0x3C5E,0x3C5E,0x447E,0x445E,0x445E,0x445D,0x445D,0x4C5E,0x4C7E,0x4C7D,0x4C7D,0x4C5D,0x4C5D,0x545D,0x543D,0x5C3D,0x643D,0x6C5D,0x7C5D,0x8C5D,0x9C1C,0x71D3,0x8A14,0x9A14,0xA214,0xA9F3,0xA9F3,0xA9F3,0xA9F4,0xA9D3,0xA9D3,0xA9F4,0xAA14,0xA213,0x9A33,0x8A53,0x7AB3,0x39AE,0x9D7B,0x9DFD,0x957B,0xA57C,0x7314,0x7232,0x8A53,0x9A33,0xA213,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9F4,0xA9F4,0xA214,0x9A14,0x8A35,0x6A35,0x6B9A,0x5C1C,0x4C1C,0x443D,0x3C1C,0x343D,0x341C,0x341C,0x2C1D,0x2C1D,0x343D,0x2C1D,0x2C3D,0x2C3D,0x2C3D,0x2C3D,0x243D,0x243D,0x243D,0x245D,0x245D,0x245D,0x243D,0x1C3C,0x1C3C,0x1C5D,0x1C9D,0x24DE,0x2D3F,0x2D3F,0x24FF,0x24BE,0x1C5D,0x1C5D,0x1C3C,0x1C3D,0x1C3C,0x245D,0x245D,0x245D,0x245D,0x243D,0x241D,0x241D,0x241D,0x241D,0x241D,0x241D,0x241D,0x1BFD,0x243D,0x243D,0x1C1D,0x241D,0x241D,0x241D,0x243D,0x241D,0x241D,0x23FD,0x243E,0x243E,0x241D,0x241D,0x241D,0x241D,0x1C1D,0x1C1D,0x1C1D,0x243D,0x243D,0x243D,0x1C1D,0x1C1D,0x1C3D,0x1C3D,0x1C3D,0x1C3D,0x1C1D,0x1C1D,0x1C1C,0x141C,0x141C,0x141C,0x0BFC,0x0C1C,0x0C3C,0x145C,0x145C,0x147D,0x1CBE,0x24DE,0x24DE,0x24BE,0x1C7D,0x143C,0x0BFC,0x0BFC,0x141C,0x141C,0x13FC,0x141C,0x141C,0x1C3D,0x1C3D,0x1C3D,0x1C3D,0x1C1D,0x1C1D,0x1BFC,0x1C1D,0x1BFD,0x1C1D,0x1C1D,0x1C1D,0x1BFD,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x141D,0x1C1D,0x1BFD,0x13FC,0x1C1D,0x1BFD,0x1BFD,0x1C1D,0x1BFD,0x1BDC,0x1BFD,0x1BDD,0x1BDC,0x1BFD,0x1BFC,0x1BFD,0x1C1D,0x13FC,0x13FC,0x13FC,0x0BDB,0x0BFC,0x0BDC,0x0BDC,0x0BFC,0x03DB,0x03DB,0x0C1C,0x1C9D,0x24BE,0x24DF,0x24BE,0x1C5D,0x0BFC,0x03DB,0x0BFB,0x0BFC,0x0BDB,0x0BDB,0x0BDC,0x0BDC,0x13DC,0x13DC,0x1C1D,0x1C1D,0x1BFD,0x1BFD,0x13DC,0x1BFD,0x13DC,0x13BC,0x1BDD,0x13BC,0x139C,0x13BC,0x13DC,0x13BC,0x13BC,0x13DC,0x13DC,0x13DC,0x13DC,0x13DC,0x139C,0x13BC,0x13BC,0x13BC,0x13BC,0x13BC,0x0B9B,0x13BC,0x13BC,0x13BC,0x13DC,0x0BBB,0x0B9B,0x0BBB,0x0BBB,0x0BBB,0x0BBB,0x0BBB,0x0BBB,0x03BB,0x0BDB,0x03BB,0x03DB,0x03BB,0x03DB,0x0C3C,0x147D,0x1C9E,0x1C9E,0x24DF,0x24DF,0x1C7E,0x141C,0x0BDB,0x03BA,0x03BB,0x0BDB,0x0BDB,0x03BB,0x039B,0x0B9B,0x0BBB,0x0B9B,0x0B9B,0x13DC,0x13DC,0x13FD,0x13DC,0x13BC,0x13BC,0x0B9C,0x139C,0x139C,0x0B9B,0x0B9B,0x0B9B,0x0B9C,0x0B9C,0x0B9B,0x0BBC,0x0B9C,0x0B9C,0x0B9C,0x139C,0x0B7B,0x139C,0x137B,0x139C,0x139C,0x0B9C,0x13BC,0x0B7B,0x0B7B,0x0B9B,0x139C,0x0B7B,0x0B9B,0x0B9B,0x0B7A,0x0B7A,0x0B7A,0x0B7A,0x0B7A,0x037A,0x039A,0x039B,0x03BB,0x0BDC,0x0BFC, + 0x1BDC,0x1BDC,0x241D,0x23FD,0x1C1D,0x1C1D,0x13DC,0x0BBB,0x0BBB,0x039A,0x037A,0x037A,0x039A,0x0BFB,0x1C9E,0x2CFF,0x355F,0x3D7F,0x351F,0x34FF,0x2C9F,0x245E,0x243D,0x1BFD,0x1BFC,0x13DD,0x1BFD,0x1C1D,0x1C1D,0x1C1D,0x1BFD,0x1BFD,0x1BFD,0x1C1D,0x1BFD,0x1BFD,0x241D,0x1C1D,0x1BFD,0x1BFD,0x1BFD,0x23FD,0x1BFD,0x1BDD,0x1BDD,0x1BDD,0x1BFD,0x241E,0x1BFE,0x1BFD,0x1BDD,0x1BFE,0x1BFD,0x1BFD,0x1BFD,0x1BFD,0x1BFD,0x23FE,0x23FE,0x241E,0x241E,0x23FD,0x23FE,0x241E,0x23FD,0x241E,0x241D,0x1BFD,0x243E,0x1C3D,0x1C3D,0x245E,0x1C1D,0x141D,0x13FD,0x0BBC,0x0BFC,0x143D,0x143D,0x143D,0x1CBE,0x24DF,0x2CFF,0x2CFF,0x2CFF,0x2CFF,0x2CDF,0x249E,0x1C3D,0x13FC,0x13DC,0x1C1D,0x141C,0x1C1D,0x1C1D,0x1BFC,0x1BFC,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x241E,0x243E,0x243E,0x243E,0x241E,0x241E,0x1C1E,0x241E,0x241E,0x241E,0x241E,0x243E,0x241E,0x241E,0x1BFE,0x241E,0x241E,0x1C1E,0x1C1E,0x241E,0x1BFE,0x241E,0x241E,0x241E,0x241E,0x241D,0x243E,0x2C5F,0x2C5E,0x2C3E,0x2C5E,0x2C5E,0x2C7E,0x2C9E,0x245E,0x1C5D,0x141C,0x0BFC,0x143D,0x147D,0x145D,0x147D,0x24DF,0x2D1F,0x2D1F,0x351F,0x2CFF,0x2CDF,0x249E,0x1C5E,0x1C3D,0x1C1D,0x1C1D,0x1C3D,0x1C1D,0x245E,0x245E,0x2C5E,0x2C5E,0x2C5E,0x2C5F,0x2C7F,0x2C7F,0x2C7F,0x2C7F,0x2C5F,0x2C5E,0x2C7F,0x2C7F,0x2C5E,0x2C5E,0x2C7F,0x2C7F,0x245E,0x245E,0x2C7E,0x245E,0x243E,0x243E,0x243E,0x245E,0x2C5F,0x245E,0x245E,0x2C5E,0x2C5E,0x2C5F,0x2C5F,0x2C5E,0x2C5E,0x2C7E,0x349F,0x349F,0x349F,0x349E,0x349E,0x349F,0x2CBF,0x247E,0x245E,0x1C5D,0x1C3D,0x1C5D,0x249E,0x1C5D,0x1C7D,0x2CFF,0x353F,0x2CFF,0x24BF,0x249E,0x249E,0x249E,0x249E,0x247E,0x245E,0x245E,0x2C9F,0x2C9E,0x2C9E,0x2C7E,0x347F,0x347F,0x347F,0x347F,0x347F,0x349F,0x2C7F,0x2C7F,0x2C7F,0x349F,0x2C9F,0x2C7F,0x2C7F,0x2C7F,0x2C7F,0x2C7F,0x2C5E,0x2C5E,0x347F,0x347F,0x347F,0x2C5E,0x345F,0x347F,0x347F,0x347F,0x347F,0x347F,0x347F,0x2C7E,0x2C7E,0x2C7E,0x2C7F,0x2C5E,0x2C5E,0x347E,0x34BF,0x3CDF,0x34BF,0x349F,0x34BF,0x2C9E,0x2CBF,0x2C9E,0x249E,0x24BE,0x2CFF,0x24DE,0x2CFF,0x353F,0x3D5F,0x2CDF,0x247D,0x247D,0x247E,0x2C9E,0x2C9E,0x2C7E,0x2C7E,0x2C7E,0x2C7E,0x349F,0x349F,0x349F,0x349F,0x347E,0x349F,0x349F,0x349F,0x349F,0x349F,0x347F,0x349F,0x2C7E,0x347F,0x2C7E,0x347F,0x2C7F,0x2C7F,0x2C5E,0x2C7E,0x347F,0x349F,0x349F,0x2C7E,0x2C7E,0x2C7E,0x349F,0x2C7E,0x2C7E,0x2C9E,0x2C7E,0x2C7E,0x2C9E,0x2C7E,0x2C7E,0x347F,0x2C5E,0x2C5E,0x347E,0x347F,0x349F,0x3CBF,0x3CBF,0x34BF,0x34BF,0x34BF,0x2CBF,0x2C9E,0x24BE,0x2CFF,0x351F,0x353F,0x2CDE,0x2CFF,0x2CDF,0x2CBE,0x2C9E,0x2C9E,0x2C5E,0x347E,0x347E,0x349F,0x3CBF,0x3CDF,0x3CDF,0x3CDF,0x2C7E,0x349F,0x34BF,0x34BF,0x349F,0x3CBF,0x349F,0x349F,0x349F,0x349F,0x349F,0x349F,0x349F,0x349F,0x349F,0x349F,0x349F,0x349F,0x349F,0x349F,0x347E,0x349F,0x34BF,0x349F,0x349F,0x347E,0x349E,0x349E,0x349E,0x349E,0x349E,0x349F,0x34BF,0x34BF,0x34BF,0x34BE,0x34BF,0x34BF,0x34DF,0x34BF,0x34BF,0x34DF,0x34BE,0x34BE,0x34BE,0x34BE,0x34DE,0x3D5F,0x351F,0x2CDE,0x2CDE,0x2CDE,0x2CBE,0x2C9E,0x2C9E,0x349E,0x34BF,0x34BF,0x34DF,0x3CDF,0x34BF,0x349F,0x349F,0x349F,0x3CBF,0x3CDF,0x3CBF,0x349E,0x349E,0x3CBF,0x3CBF,0x3CBF,0x349E,0x3C9F,0x349F,0x3CDF,0x3CBF,0x3CBF,0x349F,0x34BF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3C9F,0x3C9F,0x349F,0x3CBF,0x3CBF,0x349F,0x349E,0x349F,0x3C9F,0x3C9F,0x3C9F,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x44DF,0x44FF,0x3CDF,0x44FF,0x44FF,0x3CFF,0x3CDF,0x34BE,0x34BE,0x34DF,0x34DF,0x2CBD,0x4D9F,0x34DE,0x34DF,0x34DF,0x34DF,0x3CDF,0x3CDF,0x3CBF,0x3CDF,0x3CBF,0x3CDF,0x3CBF,0x3CDF,0x3CBF,0x3CBF,0x3CBF,0x3C9F,0x3C9F,0x349E,0x3CBF,0x3CBF,0x3CBF,0x3C9F,0x349F,0x3CBF,0x3CBF,0x3C9F,0x349F,0x349F,0x3CBF,0x3CBF,0x3C9F,0x349F,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CDF,0x3CBF,0x3CBF,0x349F,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CDF,0x3CDF,0x3CBF,0x44FF,0x44FF,0x44FF,0x44FF,0x3CDF,0x3CDF,0x3CDF,0x3CDF,0x3CDF,0x3CDF,0x3CFF,0x2C9E,0x3D3F,0x351F,0x34DF,0x3CFF,0x3CDF,0x3CBF,0x34BF,0x3CDF,0x3CDF,0x3CDF,0x3CDF,0x3CDF,0x3CDF,0x3CBF,0x3CBF,0x3CBF,0x3CDF,0x3CDF,0x3CDF,0x3CDF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CDF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x349F,0x349F,0x3CBF,0x3CBF,0x3CBF,0x3C9F,0x3CBF,0x3CBF,0x3C9F,0x349F,0x3CBF,0x3CBF,0x3CBF,0x3CDF,0x3CDF,0x3CDF,0x3CDF,0x44FF,0x44FF,0x44FF,0x44DF,0x44DF,0x44FF,0x44FF,0x44FF,0x3CFF,0x3CDF,0x34DE,0x353F,0x353F,0x351F,0x351F,0x34DF,0x2CBE,0x2C9E,0x2C7E,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3CBF,0x3C9F,0x3C9F,0x349F,0x3CBF,0x3CBF,0x3C9F,0x3CBF,0x349F,0x3C9F,0x349F,0x34BF,0x3CBF,0x3C9F,0x349F,0x3C9F,0x3C9F,0x3C9F,0x349F,0x349F,0x349F,0x349F,0x3C9F,0x3C9F,0x3C9F,0x349F,0x349F,0x34BF,0x3CBF,0x3CBF,0x349F,0x349F,0x34BF,0x3CBF,0x3CBF,0x3CBF,0x3CDF,0x3CDF,0x3CDF,0x3CBF,0x3CBF,0x3CBF,0x34BF,0x34BF,0x3CBF,0x34BF,0x34BE,0x34BE,0x34DF,0x34FF,0x353F,0x353F,0x2CDE,0x2CDF,0x34DF,0x2C9E,0x2C7E,0x2C7E,0x2C5D,0x347E,0x3C9F,0x3C9F,0x3C9F,0x3C9F,0x3C7F,0x3C7F,0x347E,0x3C7F,0x3C9F,0x3C9F,0x3C7F,0x347E,0x3C7F,0x3C7F,0x3C9F,0x3C7F,0x3C7F,0x3C7F,0x449F,0x449F,0x449F,0x447F,0x447F,0x447F,0x449F,0x449F,0x4CBF,0x4C9F,0x4CBF,0x4C9F,0x4CBF,0x4CBF,0x4CBF,0x54BF,0x4C9F,0x4C9F,0x549F,0x549F,0x549E,0x549E,0x549E,0x5C9E,0x5CBF,0x649E,0x647E,0x645D,0x6C5D,0x743D,0x845D,0x943D,0x8B38,0x79F4,0x9214,0xA214,0xAA14,0xA1F3,0xA9D3,0xA9D3,0xA9F4,0xA9F4,0xA1B2,0xA1D3,0xA1F3,0xA213,0x9233,0x8A53,0x6251,0x5AB2,0xBE3F,0xA57C,0xAD7C,0x8396,0x69F1,0x8A53,0x9213,0x99F3,0xA9F3,0xA9D3,0xB1F4,0xA9F4,0xA9D3,0xA9F4,0xAA14,0x9A14,0x8A14,0x7214,0x7BBA,0x745D,0x5C3D,0x441D,0x443D,0x3C5D,0x3C5E,0x449F,0x3C5E,0x3C9F,0x347E,0x3C9F,0x3C9F,0x3C9F,0x3C9F,0x3C9F,0x349E,0x349E,0x2C7E,0x2C7E,0x349E,0x34BF,0x34BF,0x2C9E,0x2C9E,0x247E,0x247D,0x1C7D,0x24BE,0x2CFF,0x2D1F,0x2CFF,0x24DF,0x249E,0x249E,0x249E,0x247E,0x247E,0x245D,0x243D,0x243D,0x2C7E,0x347E,0x347F,0x347F,0x347F,0x347F,0x347F,0x349F,0x349F,0x349F,0x349F,0x2C5E,0x2C5F,0x2C5F,0x2C5E,0x2C5F,0x2C7F,0x2C5F,0x2C7F,0x2C5F,0x2C5F,0x2C5F,0x2C5F,0x2C5E,0x245E,0x2C5E,0x2C7E,0x2C5E,0x243E,0x243E,0x245E,0x2C7E,0x2C7F,0x2C7E,0x2C7E,0x247E,0x2C7E,0x2C9E,0x2C7E,0x2C7E,0x2C7E,0x2C9E,0x2C9E,0x247E,0x245D,0x249E,0x2CBF,0x249E,0x247D,0x1C3D,0x249E,0x24BE,0x2CFF,0x2D1F,0x2CDF,0x249E,0x1C5D,0x1C7E,0x249E,0x247E,0x245E,0x243E,0x243E,0x243E,0x245E,0x245E,0x2C5E,0x245E,0x243E,0x243E,0x245E,0x243E,0x245E,0x245E,0x243E,0x243E,0x243E,0x2C3E,0x243E,0x243E,0x243E,0x243E,0x243E,0x1C3D,0x243E,0x243E,0x245E,0x241E,0x241E,0x241E,0x2C3E,0x2C3E,0x2C3E,0x2C1E,0x23FE,0x2C3E,0x2C3E,0x2C3E,0x2C5E,0x243E,0x245E,0x1C3D,0x1C3E,0x1C3D,0x1C5E,0x247E,0x1C5E,0x1C5E,0x1C3D,0x1C3D,0x1C3D,0x141C,0x141C,0x1C3D,0x249F,0x2CDF,0x2CFF,0x24DF,0x1C7E,0x143D,0x143D,0x141D,0x141D,0x141D,0x13FD,0x13FD,0x13FD,0x13FD,0x1C1D,0x1C1D,0x243E,0x1C1E,0x1BFD,0x1BFD,0x23FD,0x23FD,0x23FD,0x241E,0x241E,0x1BFD,0x1C1D,0x1BFD,0x1BFD,0x1BFD,0x1BFD,0x1BFD,0x1C1D,0x1BFD,0x1BFD,0x1BFD,0x23FD,0x241E,0x241E,0x243E,0x241D,0x241D,0x23FD,0x23FD,0x241D,0x241D,0x241D,0x243E,0x243E,0x245E,0x245E,0x245E,0x1C3D,0x1C3D,0x1C3D,0x141D,0x0BBB,0x13FC,0x141C,0x13FC,0x13FC,0x141C,0x247E,0x2CBF,0x34FF,0x2D1F,0x2CDF,0x249E,0x143D,0x0BFC,0x0BDB,0x0BDB,0x13DC,0x0BDC,0x13DC,0x0BBC,0x13BC,0x13BC,0x13DC,0x1BDD,0x1BFD,0x1BFD,0x241D,0x1BFD,0x23FE,0x23FD,0x23FD,0x23FE,0x241E,0x1BDD,0x1BDD,0x13DD,0x1BDD,0x1BDD,0x1BDD,0x1BDD,0x1BDD,0x1BDD,0x1BBD,0x1BBD,0x1BDD,0x1BBD,0x1BDD,0x1BDD,0x1BFD,0x1BFD,0x1BDC,0x1BDD,0x1BFD,0x1BFD,0x1BFC,0x1BDC,0x1BDC,0x13DC,0x13DC,0x13DC,0x13FD,0x13FC,0x13FC,0x0BDC,0x0BDC, + 0x0B3A,0x0B3A,0x0B3A,0x0B3A,0x0B5A,0x0339,0x0319,0x0339,0x0339,0x037A,0x039A,0x143D,0x24DF,0x2D1F,0x2D1F,0x2CFF,0x2CBE,0x1C5D,0x0BBB,0x0359,0x02F9,0x02D9,0x02D8,0x02D8,0x02D9,0x02D9,0x02D9,0x02F9,0x02F9,0x02F9,0x031A,0x0319,0x033A,0x031A,0x0B3A,0x0B3A,0x0B5A,0x0B3A,0x0B3A,0x0B1A,0x0B3A,0x0B3A,0x0B1A,0x0B3B,0x0B3A,0x135B,0x135B,0x0B3B,0x135B,0x135B,0x0B5B,0x135B,0x135B,0x0B5B,0x135B,0x135B,0x137B,0x0B5B,0x135B,0x135B,0x135B,0x135B,0x135B,0x133B,0x135B,0x135B,0x0B3A,0x0B5A,0x0B5A,0x033A,0x033A,0x0339,0x0339,0x0339,0x035A,0x037A,0x039B,0x03BB,0x0BFC,0x1CBF,0x2CFF,0x2CFF,0x249E,0x143D,0x0BDB,0x0B9A,0x035A,0x0319,0x0319,0x0319,0x031A,0x031A,0x0339,0x0B3A,0x0B3A,0x0339,0x033A,0x033A,0x0B3A,0x0B5A,0x0B5A,0x0B5A,0x0B5B,0x0B5B,0x137B,0x0B5B,0x137B,0x137C,0x137C,0x137B,0x139C,0x139C,0x137C,0x137C,0x139C,0x137C,0x137C,0x139C,0x139C,0x139C,0x139C,0x139C,0x139C,0x137B,0x1B9C,0x139B,0x137B,0x137B,0x137B,0x137B,0x137B,0x137B,0x135A,0x137A,0x0B5A,0x0B5A,0x035A,0x0359,0x037A,0x03BA,0x03DB,0x041C,0x147D,0x251F,0x2D3F,0x2CFF,0x1C7D,0x13FC,0x039A,0x037A,0x033A,0x033A,0x033A,0x0339,0x033A,0x033A,0x033A,0x0B3A,0x0B5A,0x135B,0x135B,0x137B,0x135B,0x137B,0x137B,0x137B,0x139C,0x139C,0x139C,0x139C,0x139C,0x139C,0x1BBC,0x1BBC,0x1BBC,0x1BBC,0x139C,0x139C,0x1BBC,0x13BC,0x13BC,0x13BC,0x1BBC,0x1BBC,0x13BC,0x1BBC,0x1BBC,0x139C,0x139C,0x139B,0x137B,0x137B,0x137B,0x137B,0x137A,0x137B,0x137A,0x139A,0x0B7A,0x0B7A,0x035A,0x035A,0x037A,0x03BB,0x0BFC,0x145D,0x1C9E,0x2D1F,0x351F,0x249E,0x141C,0x0BDB,0x0BBB,0x0BBB,0x0B9B,0x0B9B,0x0B9A,0x0B9B,0x0B7B,0x139B,0x139B,0x139B,0x139B,0x139B,0x1BBC,0x139B,0x1B9B,0x1B9C,0x1BBC,0x1BBC,0x1BBC,0x1BBC,0x1BDC,0x1BBC,0x1BDC,0x1BDC,0x1BDC,0x1BDC,0x1BDC,0x1BDC,0x1BBC,0x1BBC,0x1BDC,0x1BBC,0x1BBC,0x1BBC,0x23DC,0x1BBC,0x1BBC,0x1BDC,0x1BDC,0x1BBC,0x1BBC,0x1BDC,0x1BBC,0x139B,0x1BBC,0x1BBC,0x1BBB,0x1BBB,0x1BBB,0x139B,0x139B,0x139B,0x0B7A,0x0B9A,0x0B9B,0x0BDB,0x141C,0x145D,0x24DF,0x351F,0x2CFF,0x1C5C,0x0BDB,0x13DB,0x0BBB,0x13BB,0x13BB,0x13BB,0x13BB,0x1BDC,0x1BBC,0x1BBC,0x1BDC,0x1BDC,0x1BDC,0x1BBC,0x1BDC,0x1BDC,0x1BDC,0x1BDC,0x1BDC,0x1BBC,0x23FD,0x1BDC,0x1BDC,0x1BDC,0x23FD,0x1BDC,0x23FD,0x1BDC,0x23DC,0x23DC,0x23FC,0x23DC,0x23FD,0x23FC,0x23FD,0x1BFC,0x1BFC,0x23FC,0x1BFC,0x1BDC,0x1BFC,0x1BFC,0x1BFC,0x1BDC,0x1BFC,0x1BDC,0x23DC,0x1BDC,0x23DC,0x23DC,0x23FC,0x1BBB,0x1BDC,0x1BDB,0x1BDB,0x13DB,0x0B9A,0x0BBB,0x141C,0x2D1F,0x353F,0x2CFF,0x249E,0x247D,0x1C3C,0x1C1C,0x1BFC,0x1BFC,0x1BDC,0x1BDC,0x1BDC,0x1BDC,0x23FD,0x23FD,0x241D,0x1BFC,0x1BBC,0x1BDC,0x1BDC,0x23FC,0x23FD,0x23DC,0x23FC,0x23FC,0x23FC,0x23DC,0x23FD,0x23FC,0x23FC,0x23FC,0x23FD,0x23FC,0x23FD,0x23FC,0x23FD,0x23FC,0x23FD,0x23FC,0x23FC,0x23FC,0x23FC,0x23FD,0x23FC,0x23FC,0x23FC,0x23FC,0x241D,0x241D,0x241D,0x241D,0x241D,0x241C,0x241D,0x241C,0x241C,0x241C,0x241C,0x23FC,0x23FC,0x23FC,0x1BFC,0x1BFB,0x247C,0x3D5F,0x2CDE,0x249D,0x249D,0x247D,0x1C3C,0x1C1C,0x241C,0x241C,0x241D,0x241D,0x241D,0x241C,0x241D,0x23FD,0x23FC,0x23FC,0x2C1D,0x2C1D,0x241D,0x241C,0x23FC,0x2C1D,0x2C1C,0x23FC,0x2C1D,0x23FD,0x2C1D,0x2C1D,0x2C1D,0x23FC,0x241D,0x241D,0x2C1D,0x241D,0x2C1D,0x2C1D,0x2C1D,0x241D,0x241D,0x241D,0x23FD,0x23FD,0x241D,0x23FC,0x2C1D,0x23FC,0x23FC,0x23FC,0x23FC,0x23FC,0x23FC,0x2C1C,0x2C1C,0x23FC,0x241C,0x241C,0x241C,0x23FC,0x23FC,0x1BFC,0x1BFB,0x13DB,0x245C,0x459F,0x1C3C,0x245D,0x243D,0x241C,0x241C,0x241C,0x241C,0x241D,0x241D,0x241D,0x241D,0x241D,0x2C1D,0x2BFD,0x23FC,0x2C1D,0x23FD,0x23FD,0x23FD,0x2C1D,0x2C1D,0x23FD,0x2C1D,0x2C1D,0x2C1D,0x23FD,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x2C3D,0x241D,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x241C,0x23FC,0x241D,0x2C1D,0x23FC,0x2C1D,0x2C1D,0x2C1C,0x241C,0x2C3D,0x241C,0x23FC,0x241C,0x241C,0x2C3D,0x241D,0x1BFB,0x351F,0x2CDE,0x13DB,0x241D,0x1BDC,0x241C,0x241D,0x241D,0x241D,0x241D,0x2C1D,0x2C1D,0x2C3D,0x2C1D,0x2C1D,0x2C3D,0x2C3D,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x2C1D,0x241D,0x23FD,0x2C1D,0x2C1D,0x2C1D,0x23FD,0x2C1D,0x2C1D,0x2C1E,0x23FD,0x2C1D,0x2C1D,0x2C1D,0x241D,0x23FD,0x2C1D,0x241D,0x23FD,0x23FD,0x23FD,0x23FD,0x23FD,0x23FD,0x23FD,0x23FD,0x23FC,0x23FD,0x23FD,0x23FD,0x241D,0x241D,0x23FC,0x23FC,0x23DC,0x23DC,0x1BBB,0x1BBB,0x1BDB,0x1BBB,0x1BDB,0x13DB,0x1C5D,0x351F,0x24BE,0x1C5D,0x245D,0x1C1C,0x1C1C,0x241C,0x243D,0x241D,0x241D,0x2C1D,0x241D,0x2C1D,0x2C1D,0x2C1D,0x23FD,0x23FD,0x23FD,0x241D,0x23FD,0x23FD,0x23FD,0x23FD,0x23FD,0x23FD,0x23FD,0x23FD,0x23FD,0x23FD,0x23DC,0x23DC,0x23FD,0x23FD,0x23DD,0x23FD,0x23FD,0x23FD,0x23DD,0x23FD,0x23FD,0x23FD,0x23DD,0x23FD,0x23FD,0x23FD,0x23DD,0x23FD,0x23DC,0x23FD,0x23DC,0x241D,0x23FD,0x23FD,0x23FD,0x1BDC,0x1BDC,0x1BBB,0x13BB,0x13BB,0x0B7A,0x139A,0x13FB,0x249D,0x351F,0x2D1F,0x1C5D,0x141C,0x1C1C,0x1BFC,0x1BFC,0x23FC,0x23FD,0x2BFD,0x2BFD,0x2BFD,0x2BFD,0x2BFD,0x23DD,0x23FD,0x23FD,0x23FD,0x23DC,0x2BFD,0x23DD,0x23DC,0x2BDD,0x2BFD,0x2BDD,0x2BFD,0x2BDC,0x33FD,0x2BFD,0x2BFD,0x2BDD,0x33FD,0x33FD,0x33FD,0x341D,0x3C1D,0x3C1D,0x3C3E,0x3C3D,0x3C1D,0x3C1D,0x3C1D,0x441D,0x443E,0x445E,0x443D,0x443E,0x4C5E,0x4C3D,0x545E,0x4C3D,0x545E,0x5C5E,0x5C5E,0x5C1D,0x5C1D,0x63FD,0x6BFC,0x83FC,0x9BFC,0x8296,0x81D3,0x9A35,0xA214,0xAA14,0xA1D3,0xA9D3,0xA9F4,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xA1F3,0x9A13,0x8A12,0x8272,0x59CF,0x9C99,0xBDBE,0xACFB,0x9BF8,0x7211,0x9274,0x9A33,0xA1F3,0xA1D2,0xA9F3,0xA9D3,0xB1F4,0xA9B3,0xA9F3,0xA1F3,0x9A14,0x9234,0x7214,0x7B7A,0x849F,0x643D,0x543D,0x441D,0x3C3D,0x3C3D,0x341D,0x343D,0x2BFD,0x2C1D,0x23FC,0x23FC,0x23FC,0x23FC,0x23DC,0x23FC,0x23DC,0x1BDC,0x1BDC,0x1BDC,0x1BDC,0x13BB,0x13BB,0x13BB,0x0B9A,0x0B9B,0x0B9A,0x0B9B,0x13FC,0x1C5D,0x24BF,0x2CDF,0x24BE,0x1C5D,0x0BDB,0x0BBA,0x0B9A,0x0B7A,0x0B9B,0x139B,0x1BBB,0x1BBC,0x1BBC,0x1BBC,0x1B9C,0x1BBC,0x1B9C,0x1BDC,0x1BDC,0x1BDC,0x1BDC,0x1BDC,0x1BDD,0x1BBC,0x1BBC,0x1BBC,0x1BBC,0x1BDD,0x1BDC,0x1BBC,0x1BBC,0x1BDD,0x1BBC,0x1BDC,0x1BDC,0x1BDC,0x1BBC,0x1BDC,0x1BBC,0x13BC,0x1BBC,0x13BC,0x13BC,0x13BC,0x13BC,0x13BC,0x13BB,0x13BC,0x13BB,0x13BB,0x13BB,0x0B7A,0x139B,0x0B5A,0x0B5A,0x033A,0x0B5A,0x0B7A,0x0339,0x0B7A,0x035A,0x037A,0x0BBB,0x1C3D,0x2CBF,0x2CFF,0x249E,0x03BB,0x039A,0x0B9B,0x0B9B,0x0B7A,0x0B7A,0x0B7B,0x139B,0x139B,0x139B,0x13BC,0x139B,0x139C,0x139C,0x139B,0x137B,0x139C,0x137C,0x137C,0x1B9C,0x1B9C,0x1B9C,0x139C,0x139C,0x139C,0x139C,0x139C,0x139C,0x139C,0x139B,0x139C,0x1B9C,0x137B,0x135B,0x137B,0x137B,0x137C,0x1B7C,0x1B9C,0x137B,0x137B,0x137B,0x139B,0x139C,0x137B,0x139B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B7A,0x0B7B,0x035A,0x0B7A,0x033A,0x035A,0x033A,0x0B9B,0x141D,0x24BF,0x2CFF,0x2CFF,0x1C7E,0x03BB,0x037A,0x037B,0x037A,0x035A,0x035A,0x035A,0x0B7B,0x0B5B,0x0B7B,0x0B7B,0x0B5B,0x137B,0x135B,0x0B5B,0x137B,0x137B,0x137B,0x137B,0x137B,0x0B7B,0x137C,0x137B,0x0B7B,0x139C,0x137C,0x137B,0x137B,0x137B,0x135B,0x137C,0x135B,0x135B,0x135B,0x135B,0x135B,0x135B,0x135B,0x0B5B,0x0B5A,0x135B,0x0B5A,0x137B,0x0B5B,0x0B5B,0x0B3A,0x033A,0x0339,0x0319,0x0319,0x0319,0x0319,0x0319,0x02F9,0x0319,0x0319,0x0339,0x037A,0x13FC,0x1C7D,0x2CFF,0x351F,0x2CFF,0x143D,0x037A,0x037A,0x037A,0x035A,0x033A,0x0319,0x0339,0x0319,0x031A,0x0B3A,0x0B3A,0x0B3A,0x0B3A,0x0B3A,0x0B3A,0x135A,0x133B,0x0B3A,0x0B3B,0x0B5B,0x0B3A,0x0B3B,0x0B5B,0x0B3B,0x135B,0x133B,0x135C,0x133B,0x135B,0x135B,0x0B3B,0x133B,0x135B,0x135B,0x137B,0x137B,0x137B,0x137B,0x137B,0x137B,0x137A,0x137B,0x137B,0x137A,0x137B,0x0B5A,0x0B5A,0x0B7A,0x0B5A,0x0B7B, + 0x0277,0x0297,0x0297,0x0277,0x0277,0x0276,0x0297,0x02D7,0x0339,0x03DB,0x147E,0x24DF,0x1CBF,0x1C7E,0x0BDB,0x035A,0x02F8,0x02D8,0x02B7,0x0297,0x0277,0x0277,0x0277,0x0277,0x0277,0x0277,0x0257,0x0237,0x0257,0x0256,0x0257,0x0257,0x0257,0x0277,0x0277,0x0277,0x0277,0x0277,0x0277,0x0277,0x0277,0x0277,0x0278,0x0278,0x0257,0x0257,0x0257,0x0257,0x0278,0x0278,0x0278,0x0278,0x0278,0x0278,0x0278,0x0278,0x0278,0x0278,0x0258,0x0258,0x0258,0x0257,0x0257,0x0257,0x0257,0x0257,0x0278,0x0297,0x0298,0x02B8,0x0297,0x0297,0x02B7,0x02F8,0x0339,0x037A,0x03BB,0x145D,0x24FF,0x2CDF,0x0BDB,0x035A,0x0339,0x0318,0x02D7,0x02B7,0x02B7,0x02B7,0x0297,0x0297,0x0297,0x0277,0x0277,0x0277,0x0277,0x0297,0x0297,0x0297,0x0297,0x0297,0x0297,0x0297,0x0298,0x0278,0x0298,0x0278,0x0298,0x0298,0x0298,0x0298,0x0278,0x0278,0x0278,0x0298,0x0278,0x0278,0x0278,0x0298,0x0278,0x0278,0x0278,0x0298,0x0298,0x0298,0x0298,0x0278,0x0298,0x0298,0x0277,0x0277,0x0297,0x0297,0x0297,0x0297,0x0297,0x02B7,0x02D8,0x0318,0x0339,0x037A,0x03DB,0x147D,0x24DF,0x24DF,0x0BDB,0x0359,0x0319,0x02F8,0x02B7,0x02B7,0x02B8,0x02B8,0x02D8,0x02D8,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0278,0x0278,0x0278,0x0278,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0278,0x0278,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0297,0x0277,0x0297,0x0297,0x0297,0x0297,0x02B7,0x02B8,0x02D8,0x02D8,0x02F8,0x0339,0x039A,0x03DB,0x0C3C,0x1CBE,0x1C7E,0x037A,0x0319,0x0318,0x02D8,0x02B7,0x02B7,0x02D8,0x02B8,0x02B7,0x02B7,0x0297,0x0297,0x0298,0x02B8,0x02B8,0x0298,0x0298,0x0298,0x0297,0x0298,0x02B8,0x0298,0x0298,0x0298,0x0277,0x0298,0x0277,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x02B8,0x0298,0x0298,0x0298,0x0298,0x02B8,0x0298,0x0298,0x0298,0x0298,0x0298,0x0297,0x0297,0x0298,0x0298,0x02B8,0x02B8,0x0297,0x0297,0x02B8,0x02B8,0x02B7,0x02D8,0x02D7,0x02D7,0x0318,0x0359,0x0BDB,0x24DF,0x24BF,0x13FC,0x0339,0x0318,0x0318,0x02D8,0x02D7,0x02B7,0x0297,0x0297,0x0297,0x02B8,0x02B8,0x02B8,0x0297,0x0297,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02D8,0x02D8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B7,0x02B7,0x0297,0x0297,0x02D7,0x02D8,0x02B7,0x02D7,0x02F7,0x0338,0x1C7D,0x2D1F,0x1C9D,0x039A,0x0338,0x0318,0x02F7,0x02D7,0x02B7,0x02B7,0x02D8,0x02D8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B7,0x0297,0x02B8,0x02B7,0x02B7,0x02B8,0x02B8,0x02B8,0x0297,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B7,0x0297,0x0297,0x02B7,0x0297,0x02B7,0x02B7,0x02B7,0x02B7,0x02B7,0x02D7,0x02D7,0x02D7,0x02D7,0x02D7,0x2CDE,0x2CFF,0x141C,0x0338,0x02F7,0x02F7,0x02F8,0x02F8,0x02D8,0x02D7,0x02B7,0x02B7,0x02B7,0x02B7,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B7,0x02B8,0x02B7,0x0297,0x0297,0x0297,0x02B7,0x02B7,0x02B7,0x02B8,0x02B8,0x0297,0x0297,0x0297,0x0297,0x0297,0x02B7,0x0297,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B7,0x02B7,0x02B7,0x0297,0x02B7,0x0297,0x0297,0x0297,0x0297,0x02B7,0x02D7,0x02D8,0x02D7,0x02D7,0x02D7,0x02F8,0x249D,0x34FF,0x0359,0x02D8,0x0297,0x02B8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0297,0x0297,0x0297,0x0297,0x0297,0x0297,0x0297,0x0297,0x0297,0x0297,0x0298,0x0297,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x0297,0x0297,0x0297,0x0297,0x0297,0x02B7,0x0297,0x02B7,0x02B7,0x02B7,0x02B7,0x02B7,0x02B7,0x0297,0x0297,0x0297,0x0297,0x0297,0x02B8,0x0297,0x0297,0x02B8,0x02B7,0x02B7,0x0297,0x02B7,0x02F8,0x351F,0x24BE,0x02F8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02B8,0x0298,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x0298,0x0298,0x02B8,0x0298,0x0298,0x02B8,0x0298,0x0298,0x0298,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x02D8,0x02D8,0x02D8,0x02F7,0x0338,0x2CFF,0x1C5D,0x0318,0x02F8,0x02F8,0x02F8,0x02D8,0x02F8,0x02B8,0x02B8,0x02B8,0x02D8,0x02B8,0x02B8,0x0298,0x0298,0x02B8,0x02B8,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x02B8,0x0298,0x0298,0x0298,0x02B8,0x0298,0x0298,0x02B8,0x0298,0x0298,0x02B8,0x02B8,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x02B8,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0277,0x0277,0x0298,0x0298,0x0298,0x0298,0x02B8,0x02D8,0x02B8,0x02B8,0x02B7,0x02D7,0x0339,0x143C,0x2D1F,0x1C7D,0x0338,0x0318,0x02F8,0x02F8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x0298,0x02B8,0x02B8,0x0298,0x02B8,0x0298,0x0298,0x0298,0x02B8,0x0AB8,0x0A98,0x0A98,0x0AB8,0x0AB8,0x0AB8,0x0A97,0x0A98,0x0AB8,0x12B8,0x12B8,0x12D8,0x12B8,0x12B8,0x12D8,0x1AD8,0x1AF9,0x1AD8,0x1298,0x1A98,0x1A98,0x1A98,0x2AB9,0x2AB9,0x2AB9,0x32B9,0x42D9,0x4AB8,0x62D8,0x7AD8,0x7A15,0x8A15,0xA255,0x99F3,0xA1D3,0xAA14,0xA9D3,0xA9D3,0xA9B3,0xA9D3,0xA9F3,0xA9F3,0xAA33,0x9A33,0x8A32,0x7A31,0x7252,0xC51D,0xC53D,0x9376,0x7A12,0x9213,0x9A33,0xA213,0xAA13,0xA9F3,0xA9F3,0xA9D3,0xA9F3,0xA9F3,0xA1F3,0xA214,0x9214,0x8255,0x6256,0x4215,0x3257,0x1A57,0x1297,0x12B8,0x0AB8,0x0AD9,0x02D8,0x02D8,0x02B8,0x0298,0x0277,0x0297,0x0298,0x0297,0x0297,0x02B8,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x02B8,0x02D8,0x02B8,0x02D8,0x02D8,0x02F8,0x0319,0x0339,0x0BBB,0x1C5D,0x2D1F,0x145D,0x0359,0x0339,0x0319,0x02F8,0x0297,0x0277,0x0297,0x0297,0x02B8,0x02B8,0x0298,0x02B8,0x0277,0x0298,0x0297,0x0298,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x0298,0x0297,0x0298,0x0298,0x0298,0x02B8,0x02B8,0x0298,0x0298,0x0297,0x0298,0x0297,0x0298,0x0298,0x0298,0x0298,0x0297,0x02B8,0x0297,0x0298,0x0298,0x0298,0x0277,0x0277,0x0298,0x02B8,0x02D8,0x02B8,0x02D8,0x02D8,0x02D8,0x0319,0x0339,0x13FC,0x247E,0x2CDF,0x039A,0x0339,0x02F8,0x02F9,0x02D8,0x0297,0x0277,0x0277,0x0298,0x0298,0x0298,0x0298,0x02B8,0x0298,0x0298,0x0298,0x02B8,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0278,0x0298,0x0298,0x0278,0x0298,0x0278,0x0278,0x0278,0x0257,0x0277,0x0278,0x0278,0x0278,0x0298,0x0298,0x0298,0x0278,0x0277,0x0277,0x0277,0x0277,0x0297,0x0297,0x02B8,0x02D8,0x02D9,0x0319,0x0339,0x033A,0x039B,0x13FC,0x1C5E,0x24BF,0x0BBB,0x0339,0x0319,0x0319,0x02D9,0x02B8,0x0298,0x0298,0x0298,0x0298,0x0298,0x0278,0x0278,0x0298,0x0298,0x0298,0x0298,0x0278,0x0277,0x0277,0x0278,0x0278,0x0298,0x0298,0x0278,0x0278,0x0278,0x0277,0x0257,0x0257,0x0257,0x0257,0x0257,0x0278,0x0277,0x0257,0x0257,0x0257,0x0277,0x0278,0x0257,0x0277,0x0277,0x0257,0x0277,0x0277,0x0297,0x0297,0x0297,0x0277,0x0277,0x0297,0x0297,0x0297,0x02B7,0x02B8,0x02D8,0x02F8,0x02F8,0x0339,0x0B9B,0x141D,0x247E,0x1C7E,0x03BB,0x0339,0x0319,0x02F9,0x02D8,0x02B8,0x0297,0x0297,0x0297,0x0277,0x0257,0x0257,0x0257,0x0256,0x0257,0x0277,0x0277,0x0277,0x0277,0x0278,0x0278,0x0258,0x0258,0x0278,0x0258,0x0257,0x0257,0x0237,0x0237,0x0257,0x0257,0x0237,0x0257,0x0257,0x0257,0x0237,0x0237,0x0236,0x0236,0x0256,0x0236,0x0256,0x0256,0x0256,0x0256,0x0256,0x0277,0x0277,0x0277, + 0x0236,0x0257,0x0236,0x0256,0x0256,0x0297,0x0B59,0x13FC,0x249E,0x24BF,0x145D,0x03FC,0x039A,0x035A,0x0339,0x0319,0x02F8,0x02D8,0x02B8,0x02B8,0x0298,0x0297,0x0298,0x0298,0x0298,0x0298,0x0277,0x0277,0x0297,0x0297,0x0297,0x0277,0x0277,0x0277,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0278,0x0278,0x0257,0x0278,0x0278,0x0298,0x0298,0x0298,0x0298,0x0298,0x0278,0x0298,0x0298,0x0298,0x0278,0x0278,0x0278,0x0278,0x0278,0x0278,0x0278,0x0278,0x0298,0x0298,0x02B8,0x02D8,0x02B7,0x02B7,0x02B7,0x02F8,0x037A,0x141C,0x1C7E,0x1C9E,0x1CBE,0x0BFC,0x037A,0x0339,0x0319,0x0319,0x02F8,0x02D8,0x02D8,0x02D8,0x02B8,0x02D8,0x02B7,0x02B8,0x02B8,0x02B8,0x02B7,0x02B8,0x02B8,0x02B8,0x02B8,0x02D8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x0298,0x0299,0x0299,0x0298,0x0298,0x0278,0x0298,0x0298,0x0299,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x02B8,0x02B7,0x02B7,0x02B8,0x02B7,0x02B8,0x02D8,0x02F8,0x0379,0x141C,0x1C7D,0x1CBE,0x24DF,0x143C,0x039A,0x0339,0x0319,0x02F8,0x02D8,0x02F8,0x02D8,0x02D8,0x02F9,0x02F9,0x02D8,0x02D9,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x0298,0x0298,0x02B9,0x02B8,0x02B8,0x0298,0x02B9,0x02B8,0x0298,0x0298,0x02B8,0x0298,0x0298,0x0298,0x0298,0x02B8,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x02B8,0x0298,0x02B8,0x0298,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x02B7,0x02B8,0x02B8,0x02D8,0x02D8,0x02F8,0x02F8,0x02F8,0x0359,0x0BFC,0x147D,0x1C9E,0x24BF,0x0C1C,0x037A,0x0339,0x0339,0x0319,0x02F8,0x02F8,0x02F8,0x02F8,0x02F9,0x02F8,0x02D8,0x02D9,0x02D9,0x02D9,0x02B8,0x02B8,0x02B8,0x02D8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x0298,0x02B8,0x0298,0x0298,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02D8,0x02B8,0x02D8,0x02D8,0x02B8,0x02B8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02B8,0x02D8,0x02D8,0x02F8,0x02F8,0x02F8,0x0318,0x039A,0x1C7E,0x24DF,0x24BF,0x03BB,0x0359,0x0319,0x0319,0x02F8,0x0318,0x02F8,0x02D8,0x02D8,0x02D8,0x02D8,0x02F9,0x02F9,0x02D8,0x02D8,0x02D8,0x02D8,0x02B8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D9,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02B8,0x02D8,0x02D8,0x02D8,0x02B7,0x02D8,0x02D7,0x02D8,0x02F8,0x0318,0x0338,0x0338,0x141C,0x2CFF,0x145D,0x0399,0x0318,0x02F8,0x02F8,0x02F8,0x02D8,0x02F8,0x02F8,0x02F8,0x02F8,0x02F8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D9,0x02D9,0x02D9,0x02D9,0x02B8,0x02D8,0x02D8,0x02D8,0x02B8,0x02D8,0x02B8,0x02B8,0x02B8,0x02D8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02D8,0x02B8,0x02D8,0x02B8,0x02B8,0x02B8,0x02D8,0x02B8,0x02B8,0x02B8,0x02D8,0x02B7,0x02D8,0x02D8,0x02D8,0x02D7,0x02D8,0x02B7,0x02D7,0x0318,0x02F8,0x0B9A,0x351F,0x143C,0x0BBB,0x0339,0x0338,0x0318,0x0318,0x02F8,0x02F8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0297,0x0297,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02D8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02B7,0x02D8,0x02D8,0x02F8,0x02F8,0x02F8,0x02F8,0x0318,0x0318,0x2CFF,0x1C5D,0x0339,0x0319,0x02F8,0x02F8,0x02F9,0x02F8,0x02F8,0x02F8,0x02F8,0x02D8,0x02F8,0x02D8,0x02D8,0x02D8,0x02D8,0x02B8,0x02D8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0297,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x0297,0x02B8,0x02B8,0x02B8,0x0297,0x02B7,0x02B7,0x02B7,0x02B7,0x02B8,0x02B8,0x02B8,0x02B8,0x02D8,0x02B8,0x02D8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02D8,0x02B7,0x02B7,0x02F8,0x351F,0x24BE,0x0339,0x0319,0x0319,0x0319,0x02F9,0x02F9,0x02F9,0x02D8,0x02D9,0x02D9,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02D9,0x02B9,0x02D9,0x02D9,0x02D9,0x02B8,0x02D9,0x02D8,0x02D8,0x02F8,0x02F8,0x02F8,0x0318,0x0318,0x1C7D,0x2D1F,0x0359,0x0359,0x0339,0x0318,0x02F8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D9,0x02D9,0x0298,0x02B9,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x0298,0x02B8,0x0298,0x02B8,0x0298,0x0298,0x0298,0x02B9,0x02B8,0x02D8,0x02D8,0x02D8,0x02D8,0x02F8,0x02D8,0x02D8,0x02D8,0x0319,0x039A,0x147D,0x2CFF,0x13FC,0x0359,0x0339,0x0319,0x0319,0x02F9,0x02D9,0x02D9,0x02D9,0x02B8,0x02D9,0x02D9,0x02D9,0x02B8,0x02D9,0x02B8,0x02B8,0x02D8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0297,0x0277,0x0A98,0x0297,0x0297,0x0A97,0x0A98,0x0277,0x0AB8,0x0AB8,0x0A97,0x12B8,0x12B8,0x0A97,0x1AB8,0x1298,0x1A98,0x1A98,0x22B8,0x2298,0x2AD9,0x2AB8,0x3298,0x3A77,0x4A56,0x5A35,0x7A76,0x8215,0x9A55,0x9A14,0xA214,0xA9F4,0xA9F3,0xA9D3,0xB1F3,0xB1F3,0xA9D3,0xA9F3,0xA1F3,0xA213,0x9A12,0x8A12,0x8212,0x8AB4,0xCCDC,0xAB98,0x81F2,0x9A33,0x9A13,0xA213,0xA9F3,0xA9F3,0xA9D3,0xA9D3,0xB214,0xA9F3,0xAA14,0xA234,0x9235,0x8A96,0x6A56,0x41F5,0x21D5,0x2257,0x1256,0x0A97,0x0AB8,0x0298,0x0298,0x0298,0x0298,0x0277,0x0297,0x0297,0x0298,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B9,0x02B9,0x02B9,0x02B8,0x02D8,0x02D8,0x02D8,0x02D8,0x02D8,0x02F8,0x02F9,0x0319,0x0339,0x039A,0x145C,0x24FF,0x145D,0x03BA,0x0359,0x0339,0x02F8,0x02D8,0x02D8,0x02F9,0x02D8,0x02F9,0x02F9,0x02D8,0x02D8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x0298,0x02B8,0x0297,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x0298,0x0298,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02D8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B9,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02D8,0x02F9,0x0319,0x0339,0x039A,0x1C5D,0x351F,0x1C5D,0x0BBB,0x0359,0x0319,0x02F8,0x02D8,0x02D8,0x02D8,0x02D8,0x02B8,0x02D9,0x02B9,0x02B8,0x02B8,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B9,0x0298,0x0298,0x0278,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02D9,0x0319,0x033A,0x033A,0x033A,0x037B,0x143D,0x24BF,0x1C3D,0x0BBB,0x035A,0x031A,0x02F9,0x02D8,0x02B8,0x02B8,0x02D8,0x02D8,0x02B9,0x02B8,0x02B8,0x02B8,0x02B8,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0278,0x0298,0x0298,0x0298,0x0278,0x0298,0x0278,0x0298,0x0278,0x0278,0x0278,0x0298,0x0298,0x0298,0x0278,0x0278,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x0298,0x02B8,0x02B8,0x02B8,0x0298,0x0297,0x0297,0x02B7,0x02B7,0x02B7,0x02B7,0x02B8,0x02D8,0x02F8,0x0319,0x0319,0x0339,0x037A,0x143D,0x2CDF,0x1C7E,0x13DB,0x035A,0x0319,0x02F8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x0297,0x0297,0x0297,0x0297,0x0298,0x0298,0x0298,0x0298,0x0278,0x0278,0x0257,0x0278,0x0277,0x0278,0x0257,0x0257,0x0257,0x0257,0x0257,0x0257,0x0257,0x0257,0x0257,0x0257,0x0257,0x0257,0x0256,0x0277,0x0257,0x0277,0x0257,0x0256,0x0277,0x0276,0x0277,0x0297,0x0298, + 0x0298,0x02D9,0x02F9,0x035A,0x1BFC,0x247E,0x2CBF,0x24BE,0x1C7D,0x0C1C,0x039B,0x037A,0x033A,0x0339,0x0319,0x0319,0x02F8,0x0319,0x02F9,0x02F9,0x0319,0x0319,0x033A,0x033A,0x033A,0x033A,0x033A,0x033A,0x033A,0x033A,0x033A,0x033A,0x0B3A,0x0B5A,0x0B3A,0x0B3A,0x031A,0x031A,0x033A,0x033A,0x033A,0x0B5A,0x031A,0x033A,0x033A,0x031A,0x031A,0x033A,0x033A,0x033A,0x033A,0x033A,0x033A,0x033A,0x0B5B,0x0B5B,0x0B5B,0x0B7B,0x033A,0x033A,0x033A,0x033A,0x0B5B,0x0B7B,0x035A,0x0B7A,0x033A,0x0319,0x0339,0x0359,0x037A,0x0BDB,0x1C5D,0x24BE,0x1C7E,0x1C7E,0x0C1C,0x037A,0x0339,0x0339,0x0339,0x0319,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x035A,0x035A,0x033A,0x0339,0x0339,0x0339,0x033A,0x033A,0x035A,0x037B,0x033A,0x033A,0x033A,0x035A,0x0B5B,0x0B5B,0x035B,0x0B9C,0x035B,0x035B,0x033B,0x033B,0x033B,0x0B5B,0x0B5B,0x033A,0x033B,0x0B5B,0x0B3B,0x033A,0x033A,0x033A,0x0B5A,0x035A,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B5A,0x035A,0x0B9A,0x0B9B,0x0B9A,0x0B9B,0x0339,0x0339,0x0339,0x037A,0x143C,0x1CBE,0x1CBE,0x24DF,0x145D,0x039A,0x0359,0x0339,0x0319,0x0319,0x0319,0x0339,0x0339,0x0339,0x0339,0x035A,0x037A,0x037A,0x037A,0x035A,0x035A,0x035A,0x033A,0x033A,0x033A,0x033A,0x033A,0x0B5B,0x0B5B,0x0B5B,0x0B7B,0x0B7B,0x035B,0x035B,0x035B,0x035B,0x0B5B,0x035B,0x0B7B,0x0B7B,0x0B7B,0x0B9C,0x0B5B,0x0B5B,0x035B,0x0B5B,0x033A,0x0B5B,0x0B5B,0x0B5B,0x0B7B,0x0B9B,0x0B7B,0x0B9B,0x0B7B,0x0B7B,0x0B9B,0x0B9A,0x0BBB,0x13BB,0x0B9B,0x037A,0x0339,0x0359,0x0BFC,0x1C7D,0x1CBE,0x24DF,0x145D,0x03BB,0x037A,0x035A,0x0359,0x035A,0x035A,0x037B,0x035A,0x035A,0x035A,0x037B,0x037A,0x037A,0x035B,0x035B,0x037B,0x0B7B,0x0B9B,0x0B9B,0x0B9B,0x0B9B,0x0B9B,0x0B7B,0x0B7B,0x0B9B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B9B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B9B,0x0B9B,0x037B,0x0B9B,0x0B9B,0x037B,0x0B9B,0x0BBC,0x037B,0x0B9B,0x037A,0x0B7B,0x0B9B,0x0B9B,0x0B9B,0x0B9B,0x0B7A,0x0B9A,0x0B9B,0x0BBB,0x0BDB,0x0BFC,0x0BDB,0x037A,0x03BA,0x143C,0x24DF,0x24DF,0x147D,0x03BA,0x037A,0x037A,0x0359,0x0359,0x035A,0x037A,0x039B,0x039B,0x037B,0x0B7B,0x0B7B,0x0BBB,0x0B9B,0x0B9B,0x0B9B,0x0B9B,0x0B9B,0x0B9B,0x0B9B,0x0B9B,0x0B9C,0x0BBC,0x0BBC,0x0B9B,0x0B9C,0x0BBC,0x0B9B,0x13BC,0x0B9C,0x0B9B,0x0B9C,0x13BC,0x0B9C,0x13BC,0x139C,0x0B9C,0x0B9C,0x13BC,0x0B9B,0x0B9B,0x0BBB,0x0B9B,0x13BC,0x1BFD,0x0B7A,0x0B7A,0x0B7B,0x0B7B,0x0B9B,0x13BB,0x0B9B,0x0BBB,0x13DB,0x13DB,0x0BBB,0x0BDB,0x0BDB,0x0BDB,0x03BA,0x03DA,0x1C9E,0x24FF,0x1CBE,0x0C3C,0x0399,0x0379,0x0379,0x039A,0x0B9A,0x0B9A,0x0B9A,0x0BBB,0x0B9B,0x0B9B,0x0BBC,0x0BBB,0x13DC,0x0BBC,0x13DC,0x13BC,0x13BC,0x13BC,0x13DC,0x0BBC,0x13BC,0x13DC,0x13BC,0x13BC,0x13DC,0x13BC,0x13DC,0x13FC,0x13DC,0x13BC,0x13DC,0x13FC,0x13DC,0x13BC,0x13DC,0x13DC,0x13BC,0x13BC,0x13BC,0x13DC,0x13BC,0x0B9B,0x0BBC,0x13DC,0x13DC,0x13BC,0x0BBB,0x13DC,0x13BC,0x13BC,0x13BB,0x0B9B,0x0B9B,0x13BB,0x13BB,0x13BB,0x0B9B,0x0B9B,0x0BBB,0x0BFB,0x0BFB,0x353F,0x145D,0x03FB,0x03DB,0x039A,0x0359,0x0379,0x039A,0x0B9A,0x0BBB,0x13DB,0x13BB,0x13BB,0x13DC,0x13DC,0x13DC,0x13DC,0x13BC,0x13BC,0x13BC,0x139C,0x13BC,0x13DC,0x13BC,0x13DC,0x13BC,0x13BC,0x13BC,0x13BC,0x13BC,0x13BC,0x13DC,0x13DC,0x13DC,0x13BC,0x13BC,0x13DC,0x13BC,0x13BC,0x13BC,0x13BC,0x13BB,0x13DC,0x13BC,0x13DC,0x13BC,0x13DC,0x13DC,0x13DC,0x13FC,0x13DC,0x13DC,0x1BFC,0x13BB,0x13BB,0x13BB,0x13BB,0x13BB,0x13DB,0x0B9A,0x0BBA,0x0BBB,0x0BDB,0x0BBB,0x141C,0x2D1F,0x0C3C,0x03BB,0x03BB,0x039B,0x0B9B,0x0B9B,0x0BBC,0x0BBB,0x13DC,0x13FC,0x13FC,0x13FC,0x13DC,0x13DC,0x1BFD,0x1BFC,0x1BFC,0x13FC,0x1BFD,0x13DC,0x13DC,0x13DC,0x13DC,0x13FC,0x1BFD,0x1BFC,0x1BFC,0x1BFC,0x1BFC,0x1BFC,0x1BFC,0x13DC,0x1BFC,0x13DC,0x13DC,0x13DC,0x1BFC,0x1BFC,0x1BFC,0x13DC,0x1C1C,0x13DC,0x13FC,0x13FC,0x13DC,0x13DC,0x1BFC,0x13FC,0x13FC,0x13DC,0x13DC,0x13DC,0x13FC,0x0BBB,0x13BC,0x13BC,0x13BC,0x0BBB,0x13DC,0x0B9A,0x037A,0x037A,0x0BBB,0x1C9E,0x147D,0x039A,0x0BBB,0x0BBB,0x0BBB,0x0B9B,0x0BDC,0x0BBC,0x13DC,0x13DC,0x13DC,0x13DC,0x1BDD,0x13BC,0x13BC,0x13BC,0x1BDC,0x13DC,0x1BFD,0x13DC,0x13DC,0x13DC,0x1BFD,0x13DC,0x13DC,0x13DC,0x13DC,0x13DC,0x13DC,0x13DC,0x13DC,0x13DC,0x13FD,0x13FD,0x13DC,0x13DC,0x13DC,0x13DC,0x13DC,0x13BC,0x13DC,0x13BC,0x13BC,0x13DC,0x13DC,0x13DC,0x13DC,0x13BC,0x0BBC,0x13BC,0x13DC,0x0B9C,0x13BC,0x0B9C,0x0B9C,0x13BC,0x13BC,0x0B7B,0x0B9C,0x0B9B,0x0B9B,0x0B9B,0x0BBB,0x03BB,0x03BA,0x0C1C,0x2D1F,0x03BA,0x03DB,0x03BB,0x0BBB,0x037A,0x037A,0x0BBC,0x0BBC,0x0B9B,0x0B9C,0x0B9C,0x13BC,0x0B7B,0x0B9C,0x0B9C,0x13BC,0x0B9C,0x13BC,0x0B9B,0x13DC,0x0BBC,0x13DC,0x13BC,0x13BC,0x13DC,0x13DC,0x13DC,0x13DC,0x13DC,0x13BC,0x139C,0x13BC,0x13BC,0x13DC,0x13BC,0x13DC,0x13BC,0x0BBC,0x139C,0x13BC,0x13BC,0x13BC,0x13BC,0x13BC,0x13BC,0x13BC,0x13BC,0x139C,0x0B9C,0x13DC,0x0B9C,0x0B7B,0x0B9B,0x0B9B,0x0B9B,0x13DC,0x0B9B,0x0B9B,0x0B9B,0x039B,0x03BB,0x0BFB,0x0C1C,0x1C9E,0x1C9E,0x0C3C,0x0C1C,0x0BFC,0x039B,0x037B,0x0B7B,0x0B9B,0x0B7B,0x0B9B,0x139C,0x13BC,0x0B7B,0x13BC,0x0B7B,0x0B7B,0x139B,0x139B,0x139B,0x13BC,0x139B,0x139B,0x139B,0x139B,0x1B9B,0x1BBC,0x1BBC,0x1B9B,0x1BBC,0x23BC,0x1B9C,0x23BC,0x23BC,0x23BC,0x239B,0x239B,0x239B,0x2BDC,0x2BBC,0x2BDC,0x2BDC,0x2BBC,0x2BDC,0x33FC,0x33DC,0x33FD,0x33DC,0x3BFD,0x3BDD,0x3BFD,0x3BBC,0x43DD,0x43BC,0x4BBC,0x4BBC,0x5BBC,0x5B7B,0x6B5A,0x7B19,0x7A76,0x8A35,0x9A14,0xA214,0xA1D3,0xA9F4,0xA9F3,0xA9B3,0xA9D3,0xA9B3,0xA9D3,0xA9F3,0xAA13,0x99F2,0x99F2,0x91F2,0x9233,0x9A95,0xAB16,0x9A33,0x99F2,0xA213,0xA1F3,0xA9F3,0xA9D3,0xB214,0xA9F4,0xA9F3,0xA9F3,0xAA14,0xA214,0x9A35,0x8A76,0x6A56,0x41D5,0x533A,0x2AD8,0x22F9,0x1B3A,0x135A,0x135B,0x0B7A,0x139B,0x137B,0x139B,0x139B,0x0B7B,0x0B7B,0x139B,0x0B7B,0x0B5B,0x0B7B,0x139C,0x0B7B,0x035B,0x035B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B9B,0x037A,0x037A,0x035A,0x035A,0x039A,0x03DB,0x041C,0x0C5C,0x149E,0x1C9E,0x0C3C,0x0BFB,0x03BA,0x0BBB,0x0B9B,0x037A,0x035A,0x035A,0x035A,0x037A,0x0B7B,0x0B9B,0x0B7B,0x0B7B,0x035A,0x033A,0x035A,0x0B7B,0x033A,0x0B5B,0x035B,0x0B5B,0x0B7B,0x0B7B,0x0B5B,0x0B7B,0x0B5B,0x035A,0x0B5A,0x0B5B,0x0B5A,0x0B7B,0x0B5B,0x0B5B,0x035A,0x033A,0x035A,0x0B7B,0x0B5B,0x035A,0x035A,0x0B7B,0x033A,0x0B7A,0x035A,0x035A,0x035A,0x0B7B,0x035B,0x035A,0x035A,0x037B,0x035A,0x035A,0x033A,0x033A,0x0339,0x0339,0x039A,0x0BFC,0x0BDB,0x143D,0x24DF,0x24FF,0x1C7E,0x143D,0x0BBB,0x0BBB,0x0BBB,0x0B9B,0x0B9B,0x0B7B,0x035A,0x033A,0x0B5A,0x033A,0x0B5A,0x0B7B,0x033A,0x0B3A,0x0B5B,0x0B5B,0x0B7B,0x035B,0x035B,0x0B7B,0x035B,0x033A,0x035A,0x037B,0x035A,0x035B,0x035B,0x035B,0x037B,0x0B7B,0x035B,0x037B,0x035B,0x035B,0x033B,0x033B,0x033A,0x033B,0x031A,0x033A,0x033A,0x033B,0x0B5B,0x0B5B,0x033A,0x0B5A,0x033A,0x035A,0x035A,0x033A,0x035A,0x037A,0x035A,0x033A,0x033A,0x033A,0x035A,0x037A,0x039B,0x0BFC,0x24BF,0x24DF,0x1C5E,0x13FD,0x039B,0x039B,0x037B,0x0B7B,0x0B9B,0x0B9B,0x0B9B,0x035A,0x035A,0x035A,0x035A,0x033A,0x033A,0x033A,0x031A,0x0B5A,0x033A,0x031A,0x031A,0x035A,0x033A,0x033A,0x033A,0x035A,0x035A,0x033A,0x033B,0x0B5B,0x031A,0x031A,0x033A,0x033A,0x033B,0x033B,0x031A,0x033A,0x031A,0x031A,0x031A,0x031A,0x031A,0x031A,0x031A,0x033A,0x0319,0x0319,0x0319,0x0319,0x0319,0x0319,0x0339,0x0339,0x0339,0x0339,0x0339,0x0339,0x035A,0x037A,0x037A,0x03BB,0x1C7E,0x2CDF,0x24BE,0x1C7D,0x0BDB,0x039A,0x0359,0x035A,0x0359,0x035A,0x0B7A,0x0B7A,0x0B7A,0x035A,0x033A,0x0319,0x033A,0x033A,0x033A,0x033A,0x033A,0x0B3B,0x02FA,0x031A,0x02FA,0x02FA,0x02F9,0x031A,0x031A,0x031A,0x031A,0x0B3A,0x031A,0x031A,0x031A,0x031A,0x0B3A,0x0B5A,0x0B3A,0x0B5B,0x0319,0x033A,0x033A,0x0B3A,0x0B5A,0x0B5A,0x033A,0x031A, + 0x241E,0x243E,0x2C7E,0x2C9F,0x2CDF,0x249E,0x1C5D,0x141C,0x0BFC,0x0BDB,0x0BDC,0x13FC,0x13DC,0x0B9B,0x0B9B,0x0B7B,0x13BB,0x0B9B,0x139B,0x139B,0x13BC,0x0B9B,0x13BC,0x13BC,0x13BC,0x0B9B,0x0BBB,0x0B9B,0x0BBB,0x0B9B,0x0BBB,0x13BC,0x13BC,0x13BC,0x13BC,0x139C,0x13BC,0x13BC,0x13BC,0x13BC,0x13BC,0x0B7B,0x13BC,0x0B9C,0x13BC,0x13BC,0x13DD,0x0BBC,0x13DC,0x0B9C,0x13BC,0x0B9B,0x0BBC,0x0BBC,0x13BC,0x0BBC,0x13BC,0x0B9B,0x0B9B,0x0B9B,0x037B,0x037B,0x039B,0x037B,0x039B,0x039A,0x039A,0x0BBB,0x141C,0x1C5D,0x24BE,0x24DF,0x24DF,0x249E,0x143D,0x0BFC,0x0BDC,0x0BBB,0x0BBB,0x0BBB,0x0B9B,0x0B9B,0x13BB,0x0BBB,0x13DB,0x13DC,0x13DB,0x13DC,0x13DC,0x0BBB,0x13BC,0x0B9B,0x13BC,0x13DC,0x0BBC,0x13DC,0x0BDC,0x0BBC,0x13DC,0x0BBC,0x0BBC,0x0BBC,0x13BC,0x13DC,0x13DD,0x0BBC,0x13DD,0x13DD,0x13BD,0x13BD,0x13BD,0x13BD,0x13DD,0x13DD,0x13DD,0x139C,0x13DD,0x13BC,0x13DD,0x13BC,0x13DC,0x13FD,0x13FC,0x13DC,0x0BBC,0x0BBB,0x0BBB,0x0BBB,0x039A,0x039A,0x039A,0x039A,0x0BBB,0x143D,0x249E,0x2CDF,0x2D1F,0x24FF,0x1C7E,0x143D,0x143D,0x13FC,0x13DC,0x13DC,0x13BC,0x13BC,0x13DC,0x13BC,0x13FC,0x13DC,0x13DC,0x0BDC,0x0BDC,0x0BDC,0x0BDC,0x0BDC,0x13DC,0x13DC,0x0BBC,0x13BC,0x13DC,0x13BC,0x13BC,0x13BC,0x13FD,0x0BDC,0x13DC,0x0BBC,0x13DD,0x0BDC,0x0BBC,0x13BC,0x13DD,0x13DD,0x13DD,0x13FD,0x13FD,0x13DD,0x1BFD,0x1BFD,0x13FD,0x13DD,0x1BDD,0x13BC,0x13DD,0x13BC,0x13DC,0x0BDC,0x13DC,0x0BBC,0x13DC,0x13FC,0x0BBB,0x0BDB,0x0BDB,0x039A,0x039A,0x03DB,0x1C5D,0x24DF,0x2D1F,0x24FF,0x1C9E,0x145D,0x143D,0x141D,0x13FC,0x13FD,0x13FC,0x0BDC,0x13FD,0x0BFC,0x13FD,0x0BDC,0x0BDC,0x0BDC,0x0BDC,0x0BDC,0x0BDD,0x0BDD,0x0BDC,0x0BDC,0x13FD,0x13FD,0x13FD,0x13FD,0x13FD,0x13FD,0x13FD,0x13FD,0x13FD,0x13DD,0x13FD,0x13FD,0x13DD,0x13DD,0x13FD,0x0BDC,0x13DD,0x13FD,0x13FD,0x13FD,0x13FD,0x0BDC,0x13FD,0x141D,0x0BFC,0x0BDC,0x13FD,0x0BDC,0x0BDC,0x0BDC,0x13DC,0x13DC,0x13FC,0x0BDC,0x0BDC,0x0BDC,0x0BDC,0x0BFC,0x03DB,0x03BA,0x03DB,0x145D,0x24DF,0x24DF,0x1C9E,0x143D,0x143D,0x145D,0x143D,0x141C,0x13FC,0x0BDC,0x13FC,0x13FC,0x141D,0x0BFC,0x13FD,0x141D,0x13FD,0x0BDC,0x13DC,0x0BDC,0x13FC,0x13FD,0x13FD,0x13DD,0x13FD,0x13FD,0x13FD,0x13FD,0x13FD,0x141D,0x13FD,0x13FD,0x141D,0x13FD,0x141D,0x1C1E,0x1C1D,0x13FD,0x1C1D,0x13FD,0x1C1E,0x13FD,0x13FD,0x13FD,0x1C1D,0x1C1D,0x1C1D,0x141D,0x1C1D,0x141D,0x1C1D,0x1C1D,0x13DC,0x13FC,0x13FC,0x0B9B,0x13FC,0x0BDB,0x0BFC,0x0BFC,0x0BFC,0x0C1C,0x03FB,0x03DB,0x0C3C,0x1CFF,0x1CDF,0x147D,0x149D,0x1C9E,0x1C5D,0x143D,0x141C,0x141C,0x141C,0x141D,0x13FD,0x13FD,0x13FD,0x13FD,0x141D,0x13FD,0x141D,0x13FD,0x141D,0x13FD,0x13FD,0x13DD,0x13FD,0x141D,0x13FD,0x13FD,0x141D,0x13FD,0x141D,0x141D,0x141D,0x13FD,0x1C1E,0x1C1E,0x141D,0x141D,0x141D,0x1C1D,0x1C3E,0x1C1D,0x1C1D,0x1C1E,0x1C1D,0x141D,0x1C1D,0x1C3E,0x141D,0x141D,0x1C3E,0x1C3D,0x1C3D,0x141D,0x1C3D,0x1C1D,0x1C3D,0x13FC,0x1C1D,0x13FC,0x13FC,0x13FC,0x13FC,0x0BDC,0x0BFC,0x03DB,0x1CBE,0x24DF,0x145D,0x1C9E,0x1C7E,0x1C5D,0x1C3D,0x141C,0x141C,0x141C,0x1C1C,0x141C,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1C1E,0x1BFD,0x1C1D,0x1C1D,0x1C1D,0x1C3E,0x1C1D,0x141D,0x1C1E,0x1C1E,0x1C3E,0x1C3E,0x1C3E,0x1C1D,0x1C1D,0x1C3E,0x1C3E,0x1C1D,0x1C3E,0x1C3E,0x1C1E,0x1C1D,0x1C3D,0x1C3E,0x1C3E,0x1C3E,0x1C3E,0x1C3D,0x1C3E,0x1C3E,0x1C3E,0x1C3D,0x1C5E,0x1C3E,0x1C5E,0x1C3D,0x1C1D,0x1C1D,0x1C3D,0x1C5D,0x1C3D,0x1C3D,0x1C1D,0x13FC,0x1C3D,0x1C5D,0x141C,0x0BFC,0x0C1C,0x24BF,0x24DF,0x145D,0x145E,0x143D,0x141D,0x141D,0x141D,0x141D,0x1C1D,0x141D,0x141D,0x13FC,0x1C3D,0x1C1D,0x1C1D,0x13FD,0x1C3D,0x1C1D,0x1C1D,0x1C1D,0x1C3E,0x1C1D,0x1C1D,0x1C1D,0x1C3E,0x141D,0x1C3D,0x1C1D,0x1C3D,0x1C3D,0x1C3D,0x1C1D,0x1C1D,0x1C1D,0x1C3D,0x1C3D,0x1C3D,0x1C1D,0x1C3D,0x1C3D,0x1C3D,0x1C1D,0x1C3D,0x1C3D,0x1C5D,0x1C3D,0x1C3D,0x141D,0x1C5E,0x1C3D,0x1C3E,0x1C5E,0x1C3E,0x1C3D,0x247F,0x247F,0x1C5E,0x247E,0x245E,0x1C1D,0x1C3D,0x1C3D,0x1C3D,0x141D,0x1CBE,0x147E,0x0C1D,0x1C3E,0x143D,0x141D,0x143D,0x141D,0x1C3E,0x1C3E,0x1C3E,0x1C1E,0x1C3E,0x1C1D,0x1C3E,0x243E,0x1C3E,0x1C3E,0x1C3E,0x1C3E,0x1C5E,0x1C5E,0x1C3D,0x1C1D,0x1C3E,0x1C3E,0x1C3D,0x1C1D,0x1C3E,0x1C1D,0x1C3E,0x1C3E,0x1C3E,0x1C1D,0x1C3E,0x1C1D,0x1C3D,0x1C1D,0x1C3D,0x1C1D,0x1C3D,0x1C1D,0x1C3E,0x1C3E,0x1C3E,0x1C3D,0x1C3E,0x1C1D,0x1C3E,0x1C5E,0x1C3E,0x141D,0x1C3E,0x1C1E,0x1C1D,0x1C3E,0x1C3E,0x1C1D,0x1C3E,0x1C3E,0x1C3E,0x1C1D,0x1C3D,0x141D,0x143D,0x145D,0x0C1C,0x24DF,0x1CDE,0x147D,0x143D,0x143D,0x141D,0x143D,0x143D,0x1C3E,0x1C3E,0x1BFD,0x1C1E,0x1C1E,0x1C1E,0x1C3E,0x1C1E,0x1C1E,0x1C3E,0x1C1E,0x1C3E,0x1C3E,0x1C3E,0x1C1D,0x1C3E,0x1C3E,0x1C3E,0x1C3E,0x1C3E,0x141D,0x1C3E,0x1C3E,0x1C1E,0x141D,0x1C3E,0x1C3E,0x1C3E,0x1C1E,0x1C3E,0x1C3E,0x1C1E,0x141D,0x1C1E,0x1C1D,0x1C1E,0x1C1D,0x1C3E,0x1C1D,0x1C1E,0x1C3E,0x141D,0x13FD,0x1C1E,0x1C3E,0x13FD,0x13FD,0x1C1D,0x13FD,0x1C3E,0x141D,0x141D,0x141D,0x143D,0x0C3C,0x145D,0x145D,0x1CBE,0x149E,0x0C3C,0x0C1C,0x0BDC,0x13FD,0x13FD,0x13FD,0x13FD,0x1BFD,0x1BFD,0x1BFD,0x1C1E,0x1BFD,0x1C1E,0x1C1D,0x1C1D,0x243E,0x243E,0x1BFD,0x243E,0x243D,0x241D,0x2C3E,0x2C3E,0x23FD,0x2C3E,0x2C3E,0x2C3E,0x2C3E,0x2C3E,0x2C1D,0x343E,0x343E,0x343E,0x345E,0x345E,0x343E,0x3C5E,0x345E,0x3C5E,0x3C5E,0x3C5E,0x343D,0x3C5E,0x3C5E,0x445E,0x4C7F,0x445F,0x445E,0x4C7F,0x4C3E,0x4C1D,0x4C1E,0x541D,0x53FD,0x63FD,0x73DC,0x737A,0x7AB8,0x8235,0x9235,0x99F4,0xA214,0xA1D3,0xA9D3,0xA9D3,0xA9B3,0xB1F4,0xA9D3,0xA9F3,0xA9F3,0xA1F3,0xA1F3,0xA1F3,0x99F3,0x9A13,0xA274,0xA234,0x99D2,0xA1F3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9D3,0xA9F3,0xA9F3,0xA214,0xA234,0x9A35,0x8A55,0x82D8,0x5A97,0x743D,0x5C1D,0x441D,0x33FD,0x23FD,0x241D,0x1BFD,0x1BFD,0x241D,0x1BFD,0x1C1D,0x243E,0x1C1D,0x1BFD,0x1C1D,0x1C1D,0x13DD,0x13DD,0x13FD,0x13FD,0x141D,0x13FD,0x141D,0x141D,0x13FD,0x13DC,0x13FD,0x13FD,0x13FC,0x13FC,0x0BFC,0x0C1C,0x143D,0x0C5D,0x147D,0x1C9E,0x1CDF,0x1C9E,0x0C3C,0x0C1C,0x03DB,0x03DB,0x03BB,0x0BBB,0x0BBB,0x0BBC,0x0BDC,0x13DC,0x13FC,0x13DC,0x13FD,0x1C1D,0x13FD,0x13FD,0x1BFD,0x13DD,0x1BFD,0x1BFD,0x13FD,0x13FD,0x1BFD,0x13DD,0x1BFD,0x1BFD,0x13FD,0x13FD,0x13DD,0x13DC,0x13FD,0x13DD,0x13DD,0x13FD,0x13DC,0x13BC,0x13FD,0x13FD,0x13DD,0x13DC,0x13FD,0x13DC,0x13DC,0x13FD,0x13DC,0x0BBC,0x13FD,0x13FD,0x13FD,0x0BDC,0x0BDC,0x0BDC,0x13DC,0x0BDC,0x0BDC,0x0BDC,0x0BBB,0x0BDC,0x0BFC,0x0BFC,0x0C1C,0x147D,0x1CBE,0x24BF,0x1C9E,0x143D,0x0BDB,0x03BB,0x039B,0x037B,0x037B,0x0B7B,0x0B9B,0x13BC,0x13BC,0x13BC,0x13DC,0x13DC,0x13DD,0x13BC,0x13DD,0x13DD,0x13FD,0x13DC,0x13FD,0x13FD,0x0BDC,0x0BBC,0x0BDC,0x0BDC,0x13FD,0x13FD,0x0BDD,0x0BDC,0x13FD,0x0BDD,0x13FD,0x13FD,0x13FD,0x13DD,0x13DD,0x0BBC,0x13BC,0x13DD,0x13BC,0x13BC,0x13DD,0x13BD,0x13FD,0x13DC,0x13DC,0x0BDC,0x13DC,0x0BDC,0x0BDC,0x0BBC,0x13DC,0x0BDC,0x0BBC,0x0BBC,0x0B9B,0x039B,0x0BBC,0x03BB,0x0BDC,0x143D,0x1C7E,0x249F,0x1C7E,0x143D,0x0BFC,0x03BB,0x039A,0x037A,0x039B,0x039B,0x039B,0x039B,0x0B9B,0x13BC,0x13DC,0x13DC,0x13DC,0x13DC,0x13FD,0x13DC,0x13BC,0x0B9C,0x13DC,0x13DC,0x13BC,0x0BBC,0x13BC,0x13BC,0x13DD,0x13BC,0x13BC,0x13BC,0x13BC,0x0BBC,0x13BD,0x13BD,0x13BD,0x0B9C,0x13BC,0x13DD,0x13DD,0x13DD,0x13DD,0x13BC,0x13BC,0x13DD,0x13DD,0x13DC,0x13DC,0x13BC,0x13BC,0x13BC,0x0BBC,0x0B9B,0x0BBB,0x0BBB,0x0BBB,0x0BBB,0x0B9B,0x0B9B,0x0BBB,0x0BBB,0x03BB,0x0BFB,0x143D,0x1C7D,0x24BF,0x24BF,0x1C7E,0x141C,0x0BBB,0x037A,0x037A,0x039A,0x0B9B,0x0B9B,0x0B9B,0x0B9B,0x0B9B,0x0B7B,0x0B9B,0x0B9B,0x0B9C,0x0B9C,0x139C,0x139C,0x139C,0x139C,0x13BC,0x139C,0x13BC,0x13BC,0x139C,0x0B7C,0x13BC,0x13BC,0x13BC,0x13BC,0x13DD,0x13BC,0x13BC,0x0B7B,0x0B9C,0x13BC,0x0B9B,0x0B9B,0x0B9B,0x0B9B,0x0B7B,0x0B7C, + 0x2C7F,0x243E,0x1BFD,0x1BFD,0x13BC,0x0B7B,0x139B,0x13BC,0x13DC,0x13DC,0x13BC,0x139B,0x139B,0x13DC,0x13BC,0x13DC,0x13DC,0x13DC,0x1BDC,0x1BDC,0x13BC,0x1BDC,0x1BBC,0x13BC,0x13BC,0x1BDC,0x13BC,0x13BC,0x13BC,0x13BC,0x139C,0x139C,0x137C,0x139C,0x139C,0x139C,0x13BC,0x13BC,0x139C,0x13BC,0x1BDD,0x1BDD,0x13BD,0x13BC,0x139C,0x13BC,0x13BC,0x1BFD,0x1BDD,0x1BFD,0x1BFD,0x13FD,0x13FD,0x13FD,0x13BC,0x13BC,0x0B9C,0x0B9B,0x0B9C,0x0B9B,0x0BBC,0x13FD,0x141D,0x13DC,0x143D,0x1C7E,0x247E,0x2CBF,0x249E,0x249E,0x245E,0x1BFC,0x13DC,0x0B9B,0x0B9B,0x0B9B,0x0B9B,0x13BC,0x13DC,0x13DC,0x13DC,0x1BFD,0x13FC,0x1BFD,0x13DC,0x1BFD,0x13DC,0x13DC,0x1BFD,0x1C1D,0x1BFD,0x1C1D,0x1BFD,0x13DC,0x13DD,0x1BFD,0x13DC,0x1BFD,0x13DD,0x13BC,0x13DD,0x13DD,0x13BD,0x13DD,0x13BC,0x13DD,0x13DD,0x13BC,0x13DD,0x1BDD,0x13BD,0x1BBD,0x13BD,0x1BDD,0x1BDD,0x241E,0x1BFE,0x1C1D,0x243E,0x1C1E,0x1C1D,0x1BFD,0x13BC,0x13BC,0x13DC,0x0BBB,0x0BDB,0x0BBB,0x0BBB,0x143C,0x1C5D,0x24DF,0x24DF,0x2CDF,0x249F,0x247E,0x1C1D,0x13DC,0x13FC,0x13FC,0x13FC,0x13DC,0x13BC,0x13BC,0x1BFD,0x243E,0x1BFD,0x1BFD,0x1BFD,0x1C1D,0x1BFD,0x1BFD,0x1C1D,0x141D,0x141D,0x13FD,0x13FD,0x1C1D,0x13FD,0x13DD,0x13FD,0x13FD,0x1BFD,0x1C1D,0x13FD,0x13FD,0x13FD,0x1C1D,0x13DD,0x13FD,0x13FD,0x13DD,0x13FD,0x13DD,0x13DD,0x1BFD,0x13DD,0x1BDD,0x1BDD,0x13DD,0x1BFD,0x1BFD,0x1BFD,0x243E,0x243E,0x1C1E,0x1C3E,0x1C3D,0x13FD,0x141D,0x13DC,0x0B9B,0x0B9B,0x039A,0x037A,0x0BFC,0x24BE,0x2D3F,0x2CFF,0x2CDF,0x247E,0x141D,0x13FC,0x13FC,0x13FC,0x13DC,0x13FD,0x13FD,0x13FD,0x1C1D,0x141D,0x141D,0x1C1E,0x1C3E,0x1C1E,0x1C1E,0x141D,0x141E,0x13FD,0x13FD,0x141E,0x13FD,0x13FD,0x13FD,0x13FD,0x141D,0x13FD,0x13DD,0x13FD,0x1C1D,0x1C1D,0x13FD,0x1BFD,0x1C1D,0x1C1D,0x1C1E,0x1C1E,0x1BFD,0x1C1D,0x13FD,0x13FD,0x141D,0x141D,0x13FD,0x141D,0x141D,0x13FC,0x1C3D,0x1C3D,0x141D,0x1C3E,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x13FD,0x13FC,0x141C,0x0C1C,0x03DB,0x145D,0x1CBE,0x24FF,0x24BE,0x1C7E,0x143D,0x141D,0x13FC,0x0BDC,0x13FC,0x13FD,0x13FD,0x1C3E,0x1C1D,0x1C1D,0x1C1E,0x1C3E,0x1C1E,0x1C3E,0x1C1D,0x1C1E,0x1C1E,0x1C1E,0x1C1D,0x1C1D,0x141D,0x1C1E,0x13FD,0x141D,0x13FD,0x1C1E,0x13FD,0x13FD,0x13FD,0x1BFE,0x1BFD,0x13FD,0x13FD,0x13FD,0x13FD,0x1C1E,0x1C1E,0x13FD,0x1BFD,0x1C1E,0x1BFD,0x13DD,0x1BFD,0x1BFD,0x13DC,0x13DD,0x13DD,0x1BFD,0x1BFD,0x13DD,0x1C1E,0x1C3E,0x1C3E,0x245E,0x1C3D,0x1C3D,0x141C,0x141D,0x141C,0x143D,0x03FB,0x1C9E,0x24FF,0x24FF,0x147E,0x143D,0x1C5D,0x143D,0x1C3D,0x141D,0x13FC,0x1C3D,0x1C3D,0x1C3E,0x1C3E,0x1C5E,0x1C3E,0x1C3E,0x1C3E,0x1C3E,0x1C1E,0x141E,0x141E,0x13FE,0x1BFE,0x1C1E,0x1C1E,0x13FD,0x1BFE,0x1C1E,0x1C1E,0x13FD,0x13FD,0x1C1E,0x1C1D,0x1C1D,0x1C1E,0x13FD,0x141D,0x1C1E,0x13FD,0x13FD,0x13FD,0x1C1D,0x1BFD,0x1C1E,0x141D,0x141D,0x1C1D,0x13FD,0x141D,0x1C1E,0x141D,0x1C1D,0x1C1D,0x1C1E,0x1C1D,0x1BFD,0x1C1E,0x245E,0x243E,0x241E,0x1BFD,0x1C1D,0x1C3E,0x1C5E,0x0BFC,0x1C9E,0x2D1F,0x1C9E,0x249E,0x143D,0x13FC,0x141D,0x1C1D,0x1C3E,0x1C3D,0x245E,0x245E,0x245E,0x245E,0x243E,0x1C1E,0x243E,0x243E,0x1C1E,0x1C1E,0x1C1E,0x1BFD,0x1C1D,0x13FD,0x1C3E,0x1C1E,0x1BFD,0x1C1D,0x1C1E,0x1C1E,0x1C1D,0x1C1D,0x1C1D,0x1C1E,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1C1E,0x1C3E,0x1C1D,0x1C1E,0x1C3E,0x1C1D,0x1C1E,0x1C1E,0x1C1E,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x13FD,0x1C3E,0x1C3E,0x243E,0x1C3E,0x1C1D,0x1C1D,0x1C3E,0x1C3D,0x1C5E,0x1C1D,0x1C3D,0x143D,0x143D,0x143C,0x2D1F,0x143D,0x143D,0x143D,0x143D,0x1C3E,0x1C3E,0x1C3E,0x1C3E,0x1C3E,0x1C3E,0x1C3E,0x1C3E,0x1C1E,0x1C3E,0x1C1E,0x1C1E,0x1C1E,0x1C3E,0x1BFD,0x1C1E,0x1C1D,0x1BFD,0x1BFD,0x1C1E,0x1C1D,0x1C1D,0x1C1D,0x13FD,0x13FD,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x141D,0x1C3D,0x1C1D,0x1C1D,0x141D,0x1C3D,0x1C1D,0x13FD,0x13FD,0x1C1D,0x141D,0x1C3D,0x1C1D,0x141D,0x141D,0x1C1D,0x13FD,0x1C3E,0x1C3E,0x13FD,0x13FD,0x1C3E,0x1C1D,0x1C3E,0x1C3E,0x1C1D,0x13FD,0x13FC,0x2D1F,0x24BF,0x0BFC,0x1C3E,0x141E,0x143E,0x141E,0x141E,0x1C1E,0x1C1E,0x1C3E,0x1C3E,0x1C3E,0x1C1E,0x1C1E,0x1BFD,0x1BFD,0x1C3E,0x1C3E,0x1C1D,0x1C1D,0x1C1D,0x1C1E,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1C1E,0x1C1D,0x1C1D,0x1C1E,0x1C1E,0x1C1D,0x1C1E,0x1C1D,0x1BFD,0x1C1D,0x1C3E,0x1C1D,0x1C1D,0x13FD,0x1C1D,0x1BFD,0x1BFD,0x1BFD,0x1C1D,0x1C3E,0x1C1E,0x1C1D,0x1C1D,0x1C1D,0x1C3E,0x1C3E,0x1C3E,0x1C1D,0x1C1D,0x1C3E,0x243E,0x1C1E,0x1C1E,0x1C1D,0x1C3E,0x13FD,0x141D,0x1C3D,0x143D,0x1C5D,0x1CBE,0x2D3F,0x145D,0x145D,0x145E,0x145E,0x143D,0x13FD,0x1C3E,0x1C1E,0x1C1E,0x243F,0x243F,0x245F,0x1C3E,0x1C1E,0x1C3E,0x1C1D,0x1C1D,0x1C1D,0x1C1E,0x13FD,0x1BFD,0x1BFD,0x1BFD,0x13FD,0x1C1D,0x1C1D,0x1C1D,0x1C1D,0x1BFD,0x1BFD,0x1C1D,0x1C1E,0x1C1D,0x1C1E,0x1C3E,0x1C1D,0x1BFD,0x1C1D,0x1C1D,0x1C1D,0x1C1E,0x1BFD,0x1C1E,0x1C3E,0x13FD,0x1BFD,0x1C1E,0x1C1D,0x243E,0x1C3E,0x13FD,0x1C1D,0x245E,0x1C3E,0x1C1E,0x1C1E,0x1C3E,0x141D,0x1C3E,0x1C3E,0x1C5E,0x1C7E,0x147E,0x147E,0x1CBE,0x1C9E,0x0BFC,0x13FC,0x13FD,0x13DD,0x1BFD,0x1BFD,0x1C1D,0x1BFD,0x1C1E,0x1BFD,0x1BFE,0x241E,0x243E,0x1BDD,0x1BFD,0x1BFD,0x241D,0x1BFD,0x1BDD,0x1BFD,0x241D,0x23FD,0x23FD,0x23FD,0x23FD,0x23FD,0x2C1E,0x23FD,0x23FD,0x2C1E,0x2C1D,0x2C1E,0x343E,0x2C1E,0x343E,0x343E,0x341D,0x341E,0x3C3E,0x343E,0x3C3E,0x3C5E,0x3C1E,0x3C1E,0x443E,0x3BFE,0x443F,0x4C5F,0x4C3F,0x4C5F,0x545F,0x545F,0x647F,0x643E,0x743E,0x7BDD,0x72F9,0x8297,0x9256,0x9A14,0xA1F4,0xA1D3,0xB214,0xA9D3,0xA9D3,0xA9B3,0xA9B3,0xB214,0xA9F3,0xA9F3,0xA1F3,0xA1D3,0xA1F3,0xA214,0xAA34,0xA1F3,0xA1F3,0xAA13,0xA9F3,0xA9D3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA1F3,0xA1D3,0xA214,0x9A35,0x8A35,0x8AD8,0x7B19,0x8C7F,0x74BF,0x547F,0x3C3E,0x2C1E,0x2C3E,0x2C3E,0x2C5E,0x243E,0x243E,0x1C1E,0x1C1E,0x1BFE,0x241E,0x1BFD,0x1C1E,0x1C1E,0x243E,0x1C3E,0x1C1E,0x1C1D,0x1C1E,0x1BFD,0x1C1D,0x1C1D,0x1C3E,0x1C1E,0x13FD,0x13FD,0x141D,0x141D,0x1C3D,0x1C3D,0x143D,0x141C,0x145D,0x145D,0x24BF,0x24FF,0x147E,0x0C3C,0x0BFC,0x0BFC,0x13FC,0x13DC,0x0BBC,0x13DC,0x13DC,0x13DC,0x1BFD,0x1BFD,0x13FD,0x1BFD,0x1C1D,0x1BFD,0x1BFD,0x1BFD,0x13DD,0x1BFD,0x1BFD,0x1C1E,0x1BFD,0x1BFD,0x1BFD,0x1BDD,0x1BFD,0x1BFD,0x1BFD,0x1BFD,0x1BFD,0x1BDD,0x1BFD,0x1BFD,0x1BFD,0x1BFD,0x13FD,0x1BFD,0x1C1E,0x1C1D,0x1BFD,0x1BFD,0x1C1D,0x1BFD,0x1C1E,0x13FD,0x13FD,0x13FD,0x1C3E,0x1C1E,0x13FD,0x13FD,0x13FD,0x13DD,0x13FD,0x13FC,0x13FC,0x141D,0x13FC,0x0BDC,0x0BDC,0x03BB,0x143D,0x1C7E,0x1C9E,0x1C9E,0x145D,0x0BFC,0x0BBB,0x0BBC,0x0B9B,0x0B9C,0x0B9B,0x13BC,0x13DC,0x13BC,0x13BC,0x13DC,0x13DD,0x13FD,0x13DD,0x13DD,0x13DD,0x13DC,0x13DD,0x13FD,0x13FD,0x141D,0x1C1E,0x13DD,0x13DC,0x13FD,0x141D,0x13FD,0x13DD,0x13DD,0x13FD,0x13DD,0x1BFE,0x13FD,0x1BFD,0x1BDD,0x13BD,0x13DD,0x1BDD,0x1BDD,0x1BFD,0x1BFD,0x1C1D,0x1BFD,0x1BFD,0x13DC,0x13FD,0x13DD,0x1BFD,0x13DC,0x13DC,0x13FD,0x13FD,0x1C1D,0x1C1D,0x1C1D,0x13FD,0x13DC,0x0BDC,0x0BBC,0x141D,0x1C5E,0x249F,0x249F,0x1C7E,0x145D,0x0C1C,0x0BDB,0x03BB,0x0BBB,0x0B9B,0x0B7B,0x0B5B,0x139B,0x139B,0x139C,0x13BC,0x13BC,0x13DC,0x13DC,0x13DD,0x13DC,0x13DC,0x13DC,0x1BFD,0x13BC,0x13BC,0x13DC,0x13DC,0x1BFD,0x1BDD,0x13DD,0x13DD,0x13BC,0x13DD,0x13DD,0x13DD,0x13DD,0x1BDD,0x13BD,0x1BDD,0x1BDD,0x13BC,0x1BDD,0x1BDD,0x1BDD,0x1BDD,0x1BDD,0x1BFD,0x13DC,0x1BFD,0x1BFD,0x1C1D,0x13FC,0x1BFD,0x13BC,0x13BC,0x13DC,0x13DC,0x13DC,0x13FC,0x0BBB,0x0BBB,0x0BBB,0x0BBB,0x0BBB,0x141D,0x245E,0x2CBF,0x2CBF,0x249E,0x1C5D,0x0BFB,0x039A,0x037A,0x035A,0x035A,0x0B7A,0x0B7A,0x035B,0x0B7B,0x0B7B,0x139C,0x139C,0x139C,0x13BC,0x1BBC,0x139C,0x139C,0x139C,0x139C,0x139C,0x13BC,0x13BC,0x13BC,0x137C,0x139C,0x139C,0x13BC,0x13BC,0x1BDD,0x13BC,0x0B9C,0x0B9C,0x13BC,0x13BC,0x13BC,0x0B9C,0x0B7C, + 0x0B3A,0x02F9,0x02B8,0x0298,0x0278,0x0298,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02B8,0x02D9,0x02D9,0x02D9,0x02D9,0x02F9,0x02D9,0x02B9,0x02D9,0x02D9,0x02D9,0x0AFA,0x02D9,0x02F9,0x02FA,0x02FA,0x02F9,0x0B1A,0x02FA,0x02D9,0x02D9,0x0ADA,0x0ADA,0x0AFB,0x0AFB,0x0AFA,0x0B1B,0x0B3B,0x0B3B,0x0B1A,0x0B3B,0x0B1B,0x0B1A,0x0B1A,0x0B1A,0x0B1A,0x0B1A,0x0B3A,0x0B1A,0x0B3A,0x0B3A,0x031A,0x02F9,0x02D9,0x02F9,0x02F9,0x0319,0x033A,0x033A,0x033A,0x031A,0x13DC,0x34BF,0x34DF,0x243E,0x1BDC,0x0B3A,0x02F9,0x02B8,0x0298,0x0298,0x02B9,0x02B9,0x02B9,0x02D9,0x02D9,0x02B9,0x02D9,0x02D9,0x02D9,0x02F9,0x02FA,0x02FA,0x02D9,0x0AFA,0x0B1A,0x02FA,0x02FA,0x0B1A,0x0B1A,0x0B1A,0x0B3B,0x0B1A,0x0B1B,0x0B1A,0x0B1B,0x0B1B,0x0B3B,0x0B3B,0x0B1B,0x0B3B,0x0B3B,0x0B3B,0x0B1B,0x0B3B,0x0B3B,0x0B3B,0x0B1B,0x0B3B,0x0B3B,0x0B1B,0x0B1B,0x133B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B1A,0x0B3A,0x02F9,0x02F9,0x0319,0x02F9,0x0339,0x0339,0x039B,0x1C3D,0x249E,0x34DF,0x2CDF,0x247E,0x13DC,0x0319,0x02D9,0x02B8,0x02B8,0x02D8,0x02D8,0x02D8,0x02D9,0x02B9,0x02D9,0x02B9,0x02D9,0x02FA,0x02FA,0x02F9,0x02FA,0x031A,0x0B3B,0x033A,0x033A,0x033B,0x033B,0x0B5B,0x0B3B,0x0B3B,0x135B,0x0B5B,0x0B7B,0x135B,0x0B3B,0x0B5B,0x0B7B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B3B,0x0B5B,0x0B5B,0x0B3B,0x0B5B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x135B,0x135B,0x0B3B,0x135B,0x0B3B,0x0B5B,0x0B5B,0x137B,0x0B5A,0x0B5A,0x035A,0x0319,0x0339,0x0339,0x037A,0x249F,0x351F,0x353F,0x249E,0x13DC,0x035A,0x0319,0x02D9,0x02F9,0x02D9,0x02F9,0x02F9,0x02F9,0x031A,0x02FA,0x031A,0x033A,0x033B,0x031A,0x033B,0x033B,0x033B,0x033B,0x0B3B,0x033B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x135B,0x135B,0x0B5B,0x0B5B,0x137C,0x0B5B,0x137C,0x0B5C,0x137C,0x0B7C,0x0B7C,0x0B5B,0x0B5B,0x0B7C,0x139C,0x139C,0x0B7C,0x139C,0x0B7B,0x0B9C,0x139C,0x0B7B,0x0B5B,0x0B5B,0x0B3A,0x033A,0x033A,0x035A,0x035A,0x037A,0x1C7E,0x2CFF,0x2CFF,0x1C3D,0x037A,0x0319,0x02F9,0x02F9,0x02F9,0x02F9,0x02F9,0x031A,0x031A,0x031A,0x031A,0x0B3B,0x033B,0x0B3B,0x0B5B,0x0B3B,0x0B5B,0x0B7C,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5C,0x0B7C,0x0B7C,0x0B5B,0x0B7C,0x137C,0x0B7C,0x0B5B,0x0B5C,0x0B5B,0x0B5B,0x0B5B,0x0B5C,0x0B3B,0x0B5B,0x0B5B,0x0B3B,0x0B5B,0x0B5B,0x0B3B,0x0B3B,0x0B5B,0x0B3B,0x0B5B,0x0B3B,0x0B3B,0x02FA,0x0B3B,0x0B5B,0x0B5B,0x0B7B,0x0B3B,0x0B5B,0x0B5B,0x0B5A,0x0B5A,0x035A,0x0339,0x035A,0x037A,0x1C7E,0x2CFF,0x24BF,0x0BBB,0x0339,0x0339,0x0319,0x033A,0x0319,0x031A,0x031A,0x033A,0x031A,0x0B5B,0x0B5B,0x033B,0x0B5B,0x0B5B,0x035B,0x0B5B,0x0B5C,0x0B5B,0x0B5C,0x0B5C,0x0B5C,0x0B5C,0x0B7C,0x0B5C,0x0B5C,0x0B5C,0x0B7C,0x0B5C,0x0B5C,0x0B5C,0x0B7C,0x0B5C,0x0B7C,0x0B5B,0x0B5C,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B7C,0x0B5B,0x0B5C,0x0B5C,0x0B5C,0x0B5C,0x0B7C,0x0B5B,0x0B7C,0x0B7C,0x0B7B,0x137C,0x0B5B,0x0B5B,0x0B5B,0x0B3B,0x0B3B,0x0B1A,0x031A,0x031A,0x033A,0x035A,0x0BFC,0x34FF,0x1C3D,0x037B,0x033A,0x031A,0x02F9,0x02F9,0x02FA,0x031A,0x031A,0x031A,0x033A,0x0B5B,0x0B3B,0x0B3B,0x0B5B,0x0B5B,0x0B5B,0x0B5C,0x0B5B,0x0B5B,0x0B5B,0x0B7B,0x0B5B,0x0B7B,0x137C,0x0B5B,0x0B7C,0x0B7C,0x137C,0x0B5B,0x0B7C,0x0B7B,0x0B7C,0x0B5B,0x0B7B,0x0B5B,0x0B7C,0x0B7C,0x0B7C,0x0B7B,0x0B7C,0x0B7C,0x0B7C,0x0B7C,0x0B7C,0x0B7C,0x0B7B,0x0B5B,0x0B7C,0x0B7B,0x0B7B,0x0B7B,0x137C,0x0B5B,0x137C,0x139C,0x139C,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x0B7B,0x037B,0x035A,0x141C,0x2CFF,0x035A,0x035A,0x033B,0x033B,0x033B,0x035B,0x035B,0x0B5B,0x0B5B,0x0B5B,0x0B7C,0x0B5C,0x0B5B,0x0B7C,0x0B7C,0x0B5C,0x0B5C,0x0B5B,0x0B5C,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B7B,0x0B5B,0x0B7C,0x0B7C,0x0B7C,0x0B7C,0x0B7C,0x0B5B,0x137C,0x0B7B,0x137C,0x0B5B,0x0B7B,0x0B7B,0x137B,0x0B7B,0x0B7B,0x0B5B,0x0B7B,0x0B5B,0x0B5B,0x0B5B,0x0B7B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B3B,0x033B,0x0B3B,0x033B,0x0B3B,0x0B5B,0x033A,0x0B5B,0x031A,0x02F9,0x2CBF,0x24BF,0x0319,0x035B,0x033B,0x035B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B3B,0x0B5B,0x0B5B,0x0B3B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B7B,0x0B5B,0x137C,0x0B5B,0x0B5B,0x0B5B,0x0B7B,0x0B7B,0x0B5B,0x0B5B,0x0B5C,0x0B5C,0x0B7B,0x0B5B,0x0B7B,0x0B7B,0x0B7C,0x0B5B,0x0B7C,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B7B,0x0B7C,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x033B,0x0B3B,0x0B5B,0x0B3B,0x033A,0x033A,0x033A,0x033A,0x031A,0x033A,0x037A,0x0BDB,0x2CFF,0x0C1C,0x037A,0x037B,0x035A,0x0B9B,0x0B5B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B5B,0x0B5B,0x0B5B,0x0B5C,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B3B,0x0B5B,0x0B5B,0x0B3B,0x0B5B,0x0B5B,0x0B5B,0x0B3B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B7B,0x137B,0x0B7B,0x0B7B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B5B,0x0B7C,0x0B5B,0x0B3B,0x0B5B,0x0B3B,0x0B5B,0x0B5B,0x033B,0x031A,0x0B3B,0x033A,0x033A,0x033A,0x035B,0x0B9B,0x0BBC,0x1C5E,0x2CDF,0x141D,0x035A,0x033A,0x031A,0x033A,0x0B5B,0x0B3B,0x0B5B,0x0B3B,0x0B3B,0x135B,0x0B5B,0x0B5B,0x0B5B,0x135B,0x0B3B,0x137B,0x0B5B,0x0B3B,0x0B3B,0x0B3B,0x133B,0x133B,0x133B,0x133B,0x135B,0x133B,0x133B,0x135B,0x135B,0x1B5B,0x1B5B,0x1B5B,0x1B7B,0x1B5B,0x1B7B,0x237C,0x237C,0x237C,0x2B9C,0x237C,0x237C,0x2B9C,0x2B7C,0x2B5C,0x2B5C,0x2B7C,0x2B5B,0x337C,0x337C,0x337B,0x3B9C,0x3B7C,0x4B9C,0x537C,0x635B,0x6B1A,0x7A97,0x9297,0x9235,0x99F4,0xAA14,0xA9F3,0xB1F4,0xA9B3,0xB1F3,0xB1F3,0xA9F3,0xB1F3,0xA9F3,0xA1D3,0xA9F3,0xA9F3,0xA9F3,0xA1F3,0xA1F3,0xA9F3,0xA1D3,0xA9F3,0xA9D3,0xA9D3,0xA9F3,0xA9D3,0xAA14,0xA1D3,0xA214,0xA214,0x9A35,0x9235,0x8A97,0x7AD8,0x3973,0x42B8,0x2AB8,0x1AFA,0x131A,0x135B,0x135B,0x135B,0x135B,0x0B5B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B5B,0x0B3B,0x0B5B,0x031B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x033A,0x0B5B,0x031A,0x031A,0x0319,0x02F9,0x02F9,0x031A,0x033A,0x033A,0x0B9B,0x1C5E,0x2CFF,0x2CDF,0x141C,0x037A,0x035A,0x033A,0x031A,0x0319,0x0319,0x031A,0x031A,0x0B3A,0x0B3B,0x0B3B,0x0B3A,0x0B5B,0x0B3B,0x0B1A,0x0B3B,0x0B3B,0x0B3B,0x135C,0x0B3B,0x135B,0x135B,0x0B3B,0x0B5B,0x0B5B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x135B,0x0B3B,0x0B3B,0x0B5B,0x0B5B,0x0B5B,0x0B3B,0x137B,0x0B5B,0x0B3A,0x0B3A,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B3A,0x0B3B,0x0B3B,0x0B3B,0x033A,0x033A,0x02FA,0x02F9,0x02F9,0x02F9,0x031A,0x031A,0x033A,0x033A,0x033A,0x035A,0x0BBB,0x1C3D,0x2CBF,0x2CBF,0x1C1D,0x0B9B,0x033A,0x0319,0x02F9,0x02F9,0x02F9,0x031A,0x031A,0x031A,0x0B3A,0x0B3B,0x0B3A,0x0B3B,0x0B3B,0x031A,0x0B3B,0x0B5B,0x0B5B,0x0B5B,0x0B3B,0x0B3B,0x0B5B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B3B,0x0B1A,0x0B1B,0x0B1B,0x0AFA,0x0AFA,0x0AFA,0x0AFA,0x0B1A,0x0B1A,0x031A,0x02FA,0x031A,0x031A,0x02FA,0x02FA,0x031A,0x02FA,0x02F9,0x02F9,0x02F9,0x02D9,0x02D9,0x02F9,0x02D9,0x02F9,0x02FA,0x02FA,0x031A,0x033A,0x13BC,0x243E,0x2CDF,0x2CDF,0x249E,0x13FC,0x0B9B,0x0319,0x02F9,0x02D9,0x02D8,0x02D8,0x02D9,0x02F9,0x02F9,0x0319,0x0B1A,0x0B1A,0x0B3A,0x0B3A,0x0B3A,0x0B3B,0x0B3A,0x0B1A,0x0B1A,0x0B1A,0x135B,0x133B,0x0B1A,0x0B1A,0x02FA,0x0B3B,0x0B1A,0x0B1B,0x0B1A,0x02FA,0x02FA,0x0B1A,0x02DA,0x02FA,0x0AFA,0x02D9,0x02D9,0x0AFA,0x02D9,0x02FA,0x02FA,0x031A,0x02FA,0x0B1A,0x031A,0x02F9,0x02D9,0x02D9,0x02D8,0x02D8,0x02D9,0x02D9,0x02D9,0x02D9,0x02D9,0x02D9,0x02F9,0x02D9,0x02D9,0x02F9,0x0B9B,0x1C1D,0x34BF,0x3D1F,0x34DF,0x13FC,0x0339,0x0319,0x02F9,0x02F9,0x02F9,0x02D9,0x02D9,0x02F9,0x02FA,0x02F9,0x0B1A,0x0AFA,0x0B1A,0x0AFA,0x0AFA,0x0B1A,0x0AFA,0x0AFA,0x0B1A,0x0AFA,0x02DA,0x0AFA,0x02D9,0x0B1A,0x0B1A,0x02DA,0x0B1A,0x0B1A,0x02FA,0x0AFA,0x02FA,0x02FA,0x02FA,0x02DA, + 0x0217,0x0217,0x01F6,0x01F6,0x01F6,0x01F6,0x01D6,0x01F6,0x01F6,0x01F6,0x01F6,0x0217,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0217,0x0217,0x01F7,0x0217,0x0238,0x0218,0x0218,0x0218,0x01F7,0x01F7,0x0217,0x01F7,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0217,0x0216,0x0237,0x0237,0x0237,0x0257,0x0277,0x0298,0x02B8,0x0319,0x1BDC,0x2C5E,0x3CBF,0x135B,0x0298,0x0258,0x0237,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0237,0x0238,0x0238,0x0217,0x0217,0x01F7,0x01F7,0x0217,0x0217,0x0218,0x0218,0x0217,0x0217,0x01F7,0x01F7,0x0218,0x0218,0x0217,0x0217,0x0217,0x0217,0x0218,0x0238,0x0238,0x0218,0x01F7,0x0218,0x0218,0x0218,0x0238,0x0238,0x0238,0x0218,0x01F8,0x01F7,0x01F7,0x01F7,0x0218,0x0218,0x0238,0x0238,0x01F7,0x01F7,0x01F6,0x01F6,0x0216,0x0216,0x0237,0x0257,0x0257,0x0277,0x0297,0x02D8,0x033A,0x1BFC,0x2C7E,0x349F,0x1BBC,0x02B9,0x0257,0x0216,0x0217,0x0216,0x0237,0x0236,0x0217,0x0217,0x0237,0x0237,0x0237,0x0237,0x0217,0x0217,0x0218,0x0217,0x0218,0x0218,0x0218,0x0218,0x0238,0x0238,0x0238,0x0238,0x0218,0x0218,0x0218,0x0217,0x0238,0x0238,0x0238,0x0237,0x0217,0x0217,0x0217,0x0238,0x0238,0x0218,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0218,0x0217,0x01F7,0x01F7,0x0217,0x0217,0x0237,0x0237,0x0236,0x0257,0x0277,0x0297,0x02B8,0x02D8,0x037B,0x245E,0x247F,0x1BFD,0x033A,0x02D9,0x0277,0x0257,0x0237,0x0217,0x0237,0x0237,0x0257,0x0237,0x0237,0x0237,0x0258,0x0258,0x0238,0x0238,0x0238,0x0258,0x0238,0x0258,0x0258,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0258,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0218,0x0218,0x0238,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0238,0x0218,0x0258,0x0258,0x0238,0x0238,0x0238,0x0218,0x0258,0x0258,0x0238,0x0258,0x0238,0x0237,0x0257,0x0278,0x0298,0x02B8,0x0319,0x1C1D,0x2CBF,0x2C7F,0x033A,0x0298,0x0257,0x0237,0x0257,0x0257,0x0257,0x0258,0x0278,0x0278,0x0258,0x0258,0x0278,0x0258,0x0258,0x0279,0x0258,0x0258,0x0258,0x0238,0x0238,0x0258,0x0238,0x0238,0x0238,0x0238,0x0258,0x0258,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0258,0x0259,0x0258,0x0279,0x0259,0x0238,0x0238,0x0258,0x0278,0x0278,0x0278,0x0278,0x0278,0x0298,0x02B8,0x02F9,0x13FD,0x2CBF,0x247F,0x0319,0x0277,0x0257,0x0237,0x0257,0x0257,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0278,0x0258,0x0258,0x0258,0x0259,0x0238,0x0238,0x0238,0x0238,0x0238,0x0239,0x0259,0x0259,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0258,0x0258,0x0258,0x0258,0x0238,0x0238,0x0238,0x0238,0x0259,0x0279,0x0238,0x0258,0x0258,0x0258,0x0259,0x0259,0x0258,0x0258,0x0258,0x0238,0x0238,0x0238,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0278,0x0298,0x02B9,0x02F9,0x3CFF,0x1BFD,0x02D9,0x0278,0x0298,0x0278,0x0278,0x0278,0x0258,0x0258,0x0258,0x0258,0x0278,0x0278,0x0258,0x0259,0x0238,0x0258,0x0258,0x0258,0x0258,0x0258,0x0238,0x0238,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0238,0x0258,0x0258,0x0238,0x0238,0x0238,0x0218,0x0217,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0298,0x02B8,0x2C9F,0x13FD,0x02D9,0x0299,0x0279,0x0279,0x0278,0x0278,0x0279,0x0279,0x0258,0x0259,0x0258,0x0258,0x0259,0x0259,0x0258,0x0258,0x0258,0x0258,0x0238,0x0238,0x0258,0x0258,0x0238,0x0238,0x0258,0x0258,0x0238,0x0238,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0238,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0279,0x0238,0x0258,0x0258,0x0258,0x0278,0x0278,0x0258,0x0257,0x1BFD,0x1C1D,0x0298,0x0299,0x0258,0x0258,0x0278,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0238,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0238,0x0258,0x0258,0x0238,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0279,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0278,0x0278,0x0258,0x0258,0x0258,0x0257,0x0278,0x02B8,0x13FC,0x249F,0x0298,0x0298,0x0278,0x0278,0x0258,0x0258,0x0258,0x0258,0x0218,0x0238,0x0238,0x0238,0x0238,0x0238,0x0258,0x0279,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0238,0x0238,0x0238,0x0258,0x0238,0x0238,0x0258,0x0258,0x0238,0x0238,0x0258,0x0258,0x0238,0x0238,0x0258,0x0258,0x0238,0x0238,0x0258,0x0258,0x0238,0x0238,0x0238,0x0238,0x0258,0x0279,0x0238,0x0258,0x0258,0x0258,0x0258,0x0278,0x0258,0x0258,0x0258,0x0258,0x0238,0x0258,0x0278,0x0298,0x139C,0x349F,0x031A,0x02D9,0x02B9,0x0258,0x0237,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0258,0x0279,0x0258,0x0258,0x0258,0x0258,0x0279,0x0258,0x0259,0x0258,0x0258,0x0238,0x0258,0x0258,0x0258,0x0258,0x0279,0x0238,0x0258,0x0238,0x0238,0x0258,0x0258,0x0238,0x0258,0x0238,0x0A58,0x0A58,0x0A38,0x0238,0x0A58,0x0A58,0x1259,0x1278,0x0A38,0x1258,0x1258,0x0A38,0x1258,0x1238,0x1A38,0x1A38,0x2237,0x3237,0x4A57,0x6236,0x8277,0x9A76,0x9A14,0xA214,0xA1F3,0xA9F4,0xA9D3,0xA9F4,0xA9D3,0xA9B3,0xB1F4,0xA9F3,0xA9F3,0xA1B2,0xA9F3,0xA9F3,0xA9F3,0xA1D3,0xA9D3,0xA9D3,0xB1F4,0xA9D3,0xA9D3,0xA9D3,0xA9F4,0xA9F3,0xA1D3,0xAA34,0xA214,0x99F4,0x9235,0x8A36,0x7236,0x2050,0x31B5,0x2238,0x01B6,0x01F7,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0238,0x0238,0x0218,0x0238,0x0238,0x0218,0x0218,0x0217,0x0217,0x0217,0x0258,0x0238,0x0258,0x0258,0x0237,0x0237,0x0258,0x0258,0x0237,0x0258,0x0258,0x0257,0x0298,0x0319,0x243E,0x247F,0x0B9C,0x02F9,0x02B8,0x0298,0x0278,0x0278,0x0278,0x0237,0x0237,0x0237,0x0237,0x0257,0x0237,0x0237,0x0237,0x0237,0x0237,0x0217,0x01F7,0x0217,0x0217,0x0217,0x0258,0x0258,0x0238,0x0217,0x0217,0x0218,0x0217,0x0217,0x0218,0x0217,0x0217,0x0217,0x0218,0x0218,0x0217,0x0217,0x0218,0x0237,0x0238,0x0237,0x0237,0x0238,0x0217,0x0217,0x0217,0x0217,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0237,0x0237,0x0258,0x0278,0x0278,0x0278,0x0298,0x02F9,0x1BFD,0x245E,0x1BFD,0x033A,0x02B8,0x0298,0x0277,0x0278,0x0277,0x0257,0x0257,0x0258,0x0237,0x0237,0x0217,0x0217,0x0237,0x0238,0x0217,0x0217,0x0217,0x0217,0x0238,0x0238,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x01F7,0x0217,0x0217,0x01F7,0x0217,0x0217,0x0217,0x0217,0x0237,0x0237,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x0237,0x0237,0x0237,0x0237,0x0237,0x0257,0x02D9,0x139B,0x2C3E,0x2C5E,0x13DC,0x0B5A,0x02B8,0x0298,0x0277,0x0277,0x0257,0x0237,0x0216,0x0216,0x0216,0x0216,0x0216,0x0216,0x01F6,0x0217,0x0217,0x0217,0x0217,0x01F7,0x01D6,0x01D6,0x01F7,0x01F7,0x0217,0x0217,0x01F7,0x0217,0x01F7,0x0217,0x0217,0x0217,0x0218,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x0217,0x0217,0x01F7,0x0217,0x01F7,0x0217,0x0217,0x0217,0x0237,0x0217,0x0217,0x0217,0x0237,0x0237,0x0237,0x0237,0x0237,0x0257,0x0257,0x0257,0x0298,0x02F9,0x1BDD,0x2C5E,0x245E,0x0B9B,0x02B8,0x02B8,0x0298,0x0278,0x0257,0x0237,0x0237,0x0237,0x0217,0x0217,0x0216,0x0217,0x0216,0x0216,0x01F6,0x01F7,0x01F6,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x01F7,0x01F7,0x01D6,0x01D6,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x0217, + 0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01D6,0x01B6,0x01D6,0x01B6,0x01D7,0x01D6,0x01D6,0x01D7,0x01D7,0x01B7,0x01D7,0x01B7,0x01D7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F8,0x01D7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B7,0x01B7,0x01B7,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01F6,0x01F6,0x0216,0x0257,0x0AF9,0x23BC,0x345F,0x2C3E,0x23DC,0x133A,0x0298,0x0237,0x0217,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F8,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D8,0x01F8,0x01D7,0x01D8,0x01D7,0x01F7,0x01D7,0x01F7,0x01D7,0x01F8,0x01F8,0x01F8,0x01D7,0x01D7,0x01D7,0x01F8,0x01F8,0x01F8,0x01D7,0x01D8,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D6,0x01D6,0x01D6,0x01F6,0x01F6,0x0216,0x0236,0x0257,0x0298,0x137B,0x2C1D,0x2C3E,0x1BFD,0x0319,0x02B8,0x0257,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F8,0x01F8,0x01F8,0x01F7,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F8,0x0218,0x01F7,0x01F8,0x01F7,0x01F8,0x01F8,0x01F8,0x01F7,0x01F8,0x01D7,0x01F7,0x01F7,0x01F6,0x01F6,0x0216,0x0216,0x0216,0x0216,0x0236,0x0277,0x02F9,0x241D,0x2C7F,0x13BC,0x02F9,0x02D9,0x0298,0x0257,0x0237,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x0218,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F7,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x0218,0x0218,0x0217,0x0217,0x0217,0x0217,0x0238,0x0257,0x0278,0x135B,0x243E,0x243E,0x0B5A,0x02D9,0x0278,0x0237,0x0237,0x0217,0x0237,0x0237,0x0237,0x0238,0x0238,0x0217,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0238,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0238,0x0238,0x0238,0x0218,0x0238,0x0218,0x0238,0x0238,0x0238,0x0258,0x0237,0x0237,0x0278,0x0298,0x139B,0x34BF,0x1BDD,0x02D9,0x0278,0x0237,0x0237,0x0217,0x0237,0x0237,0x0238,0x0218,0x0218,0x0238,0x0238,0x0238,0x0238,0x0218,0x0218,0x0238,0x0218,0x0218,0x0219,0x0218,0x0219,0x0218,0x0218,0x0219,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0239,0x0239,0x0239,0x0218,0x0238,0x0218,0x0239,0x0218,0x0238,0x0239,0x0238,0x0218,0x0238,0x0218,0x0238,0x0238,0x0237,0x0278,0x0299,0x2C3F,0x23FD,0x02D9,0x0298,0x0278,0x0258,0x0258,0x0258,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0218,0x0238,0x0238,0x0218,0x0218,0x0238,0x0238,0x0218,0x0218,0x0238,0x0218,0x0238,0x0218,0x0238,0x0218,0x0238,0x0218,0x0238,0x0218,0x0238,0x0238,0x0238,0x0218,0x0218,0x0218,0x0238,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0238,0x0238,0x0218,0x0218,0x0238,0x0238,0x0278,0x02FA,0x34BF,0x033A,0x0299,0x0279,0x0238,0x0238,0x0258,0x0258,0x0238,0x0239,0x0238,0x0238,0x0239,0x0239,0x0239,0x0218,0x0239,0x0218,0x0239,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0238,0x0238,0x0238,0x0238,0x0218,0x0218,0x0238,0x0238,0x0238,0x0218,0x0238,0x0259,0x0238,0x0238,0x0238,0x0218,0x0238,0x0238,0x0238,0x0237,0x0238,0x0237,0x1BFD,0x1BFD,0x0258,0x0258,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0238,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0218,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0238,0x0238,0x0238,0x0218,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0238,0x0238,0x0238,0x0218,0x0238,0x0238,0x0238,0x0238,0x0238,0x0237,0x0237,0x0237,0x0258,0x0298,0x0339,0x3CFF,0x0B3A,0x0278,0x0258,0x0238,0x0238,0x0238,0x0238,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0238,0x0238,0x0218,0x0238,0x0238,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0238,0x0218,0x0258,0x0258,0x0298,0x1BDD,0x349F,0x02B9,0x02B9,0x0258,0x0237,0x0217,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0218,0x0238,0x0238,0x0238,0x0218,0x0238,0x0218,0x0218,0x0238,0x0238,0x0218,0x0238,0x0238,0x0218,0x0238,0x0A38,0x0A18,0x0A18,0x0A38,0x0A18,0x0A18,0x0A38,0x1258,0x1238,0x0A38,0x1258,0x0A38,0x1259,0x1238,0x1A38,0x2238,0x2A37,0x3A17,0x5A37,0x7A77,0x9277,0x9A35,0x99F4,0xAA14,0xA9F4,0xA9F4,0xA9D3,0xA9D3,0xB1F4,0xA9D3,0xA9D3,0xA9F3,0xA9F3,0xA9D3,0xA9F4,0xA1D3,0xA9F4,0xA9F3,0xA9D3,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xA9F4,0xA9F3,0xA1F3,0xA214,0xA214,0x9215,0x8A36,0x8298,0x4974,0x5259,0x3279,0x09D6,0x0A18,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x01F8,0x01F8,0x01F8,0x0218,0x0218,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F7,0x01F8,0x0218,0x01F7,0x0217,0x0218,0x0217,0x0238,0x0217,0x0238,0x01F7,0x0217,0x0217,0x0217,0x0237,0x0258,0x0278,0x02B8,0x1BBC,0x349F,0x2C3E,0x0B1A,0x0277,0x0257,0x0237,0x0217,0x0217,0x0217,0x01F7,0x0217,0x0217,0x0217,0x0217,0x0217,0x01F7,0x0217,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F8,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x0218,0x0218,0x0218,0x0217,0x0218,0x01F7,0x0217,0x0217,0x0217,0x0217,0x0217,0x0237,0x0258,0x0278,0x02B9,0x0B3A,0x241E,0x2C7F,0x23FD,0x0AF9,0x0277,0x0257,0x0257,0x0237,0x0217,0x0216,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D6,0x01D7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x0217,0x0237,0x0257,0x0298,0x0B1A,0x1BDD,0x2C3E,0x2C1E,0x1B5B,0x0277,0x0257,0x0237,0x0237,0x0216,0x01F6,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D7,0x01D6,0x01B6,0x01D7,0x01B7,0x01D7,0x01D7,0x01D7,0x01F8,0x01F7,0x01D7,0x01D7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0237,0x0237,0x0278,0x02B8,0x0B3A,0x23FD,0x2C1E,0x2BDD,0x131A,0x0298,0x0257,0x0237,0x0217,0x01F6,0x01F6,0x01D6,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01B6,0x01B6,0x01D6,0x01D7,0x01D7,0x01D6,0x01D7,0x01F7, + 0x01D6,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01B6,0x01B6,0x01B6,0x01B6,0x01D7,0x01D7,0x01D7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B7,0x01B7,0x01B7,0x01B6,0x01D7,0x01D7,0x01D6,0x01D6,0x01D6,0x01F6,0x01F6,0x0237,0x02B8,0x1B7C,0x343E,0x3C7F,0x343E,0x239C,0x02B8,0x0257,0x0257,0x0217,0x01F6,0x01D6,0x01D7,0x01D7,0x01D7,0x01D6,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01D7,0x01B7,0x01D7,0x01D7,0x01D8,0x01D7,0x01D7,0x01D7,0x01F8,0x01F8,0x01F8,0x01D7,0x01F8,0x01D7,0x01F8,0x01F8,0x01D7,0x01D7,0x01D7,0x01D7,0x01F8,0x01F8,0x01B7,0x01D7,0x01D7,0x01D7,0x01F8,0x01F7,0x01F8,0x01F8,0x01F7,0x01D7,0x01F7,0x01D6,0x01F7,0x01F7,0x01F6,0x01F6,0x0216,0x0216,0x0277,0x02D9,0x1B9C,0x345E,0x347F,0x2C1D,0x0B19,0x0277,0x0257,0x0237,0x0237,0x0217,0x0217,0x01F6,0x0217,0x01F7,0x01F7,0x01F6,0x01F7,0x01D6,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F8,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0218,0x01F8,0x01F8,0x01D8,0x01F8,0x01F8,0x01F7,0x01F7,0x0218,0x0218,0x0218,0x0218,0x01F8,0x01F7,0x01F7,0x01F8,0x01D7,0x01D7,0x01F8,0x01F7,0x01F8,0x01F8,0x01F8,0x01F8,0x01D7,0x01F7,0x01F7,0x0217,0x0238,0x0217,0x0216,0x0216,0x0236,0x0236,0x02B8,0x1B9B,0x347F,0x2C5E,0x0B1A,0x0298,0x02D9,0x0278,0x0237,0x0216,0x0217,0x0217,0x0237,0x0217,0x0238,0x0238,0x0217,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0218,0x01F7,0x0218,0x0218,0x0218,0x01F8,0x0238,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x01F7,0x0218,0x01F8,0x0218,0x01F8,0x0218,0x01F8,0x0218,0x01F7,0x01F8,0x01F8,0x01F8,0x01F7,0x01F8,0x01F7,0x01F8,0x0218,0x01D7,0x01F7,0x01F8,0x01F7,0x0218,0x0218,0x0218,0x0217,0x0217,0x0217,0x0237,0x0258,0x0258,0x02D9,0x1BBD,0x347F,0x1BDD,0x02F9,0x02B8,0x0278,0x0258,0x0237,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0237,0x0217,0x0217,0x0217,0x0238,0x0238,0x0238,0x0218,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0238,0x0218,0x0238,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0238,0x0217,0x0217,0x0237,0x0258,0x0298,0x139C,0x3CBF,0x23FD,0x0298,0x0257,0x0257,0x0237,0x0258,0x0258,0x0238,0x0217,0x0238,0x0218,0x0238,0x0218,0x0238,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x0239,0x0218,0x0219,0x0218,0x0219,0x0218,0x0238,0x0218,0x0219,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0239,0x0238,0x0218,0x0218,0x0238,0x0239,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0238,0x0218,0x0217,0x0217,0x0217,0x0238,0x0258,0x0299,0x1B9C,0x2C1E,0x02B9,0x0278,0x0278,0x0258,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0238,0x0238,0x0238,0x0218,0x0238,0x0218,0x0238,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0238,0x0218,0x0238,0x0218,0x0238,0x0238,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0238,0x0218,0x0238,0x0238,0x0238,0x0218,0x0238,0x0238,0x0238,0x0239,0x0219,0x0218,0x0238,0x0238,0x0239,0x0218,0x0218,0x0238,0x0239,0x0218,0x0239,0x0238,0x0238,0x0218,0x0218,0x0218,0x0238,0x0258,0x0298,0x2C3E,0x2C3F,0x02B9,0x0278,0x0238,0x0238,0x0238,0x0238,0x0218,0x0218,0x0238,0x0238,0x0218,0x0239,0x0218,0x0218,0x0218,0x0239,0x0218,0x0239,0x0218,0x0239,0x0218,0x0218,0x0218,0x0239,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0238,0x0238,0x0218,0x0238,0x0238,0x0239,0x0218,0x0218,0x0238,0x0238,0x0218,0x0238,0x0238,0x0218,0x0218,0x0238,0x0238,0x0238,0x0218,0x0239,0x0218,0x0218,0x0218,0x0238,0x0238,0x0258,0x0238,0x0238,0x0238,0x0238,0x0237,0x0217,0x0237,0x2C3E,0x1BFD,0x0258,0x0258,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0238,0x0218,0x0238,0x0238,0x0238,0x0218,0x0238,0x0218,0x0238,0x0218,0x0238,0x0218,0x0238,0x0218,0x0238,0x0218,0x0238,0x0218,0x0238,0x0238,0x0218,0x01F8,0x0238,0x0238,0x0238,0x0238,0x0218,0x0218,0x0238,0x0238,0x0238,0x0218,0x0238,0x0218,0x0238,0x0218,0x0238,0x0238,0x0238,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0238,0x0237,0x0258,0x0237,0x0237,0x0237,0x0257,0x0298,0x02B8,0x2C5F,0x2C1E,0x0298,0x0258,0x0238,0x0217,0x0217,0x01F7,0x0218,0x0218,0x0218,0x0238,0x0238,0x0259,0x0259,0x0238,0x0238,0x0238,0x0238,0x0238,0x0218,0x0238,0x0238,0x0238,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0238,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0238,0x0238,0x0218,0x0218,0x0218,0x0238,0x0238,0x0238,0x0218,0x0218,0x0218,0x0238,0x0218,0x0238,0x0218,0x0238,0x0217,0x0218,0x0218,0x0238,0x0258,0x0298,0x0298,0x2C5F,0x241E,0x0278,0x0258,0x0238,0x0238,0x0217,0x0238,0x0218,0x01F8,0x0218,0x0238,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0238,0x01F7,0x0218,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0A59,0x0A39,0x0A59,0x0A59,0x0A38,0x0A38,0x0A39,0x0218,0x0A59,0x0A59,0x0A59,0x0A38,0x1259,0x1279,0x1279,0x1279,0x1A99,0x1279,0x1A9A,0x22BA,0x2279,0x2A79,0x3258,0x3A38,0x5217,0x6A16,0x9297,0x9A36,0x91D4,0xA1F4,0xA1D4,0xA9D3,0xA9D4,0xB1F4,0xA9B3,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xA9D3,0xA9D3,0xA9F4,0xA9D3,0xA9D3,0xA9B3,0xA9D3,0xB1F4,0xA9D3,0xB1F4,0xA9F3,0xA9F3,0xA9F3,0xA9F4,0xA1F3,0x99F4,0x9A35,0x9256,0x92D9,0x59B5,0x41D6,0x3A99,0x1218,0x0A38,0x0238,0x0238,0x0238,0x0238,0x0239,0x01F8,0x01F8,0x0219,0x0219,0x0218,0x01F8,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0238,0x0218,0x01F7,0x01D7,0x01F7,0x01F7,0x0217,0x01F7,0x0217,0x0217,0x0238,0x0217,0x0238,0x0217,0x0217,0x01F7,0x0217,0x0237,0x0258,0x0258,0x0B1A,0x2C3F,0x347F,0x1B9C,0x0298,0x0257,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0218,0x01F7,0x01F7,0x0217,0x01F7,0x0218,0x0218,0x01F7,0x0217,0x01D7,0x01D7,0x01F7,0x01F7,0x0218,0x01F7,0x01F7,0x01D7,0x01F8,0x01F8,0x0218,0x01F7,0x01F7,0x0218,0x0218,0x01F7,0x0218,0x01F7,0x0218,0x0217,0x0218,0x0218,0x0218,0x01F7,0x01F7,0x01F8,0x0218,0x01F7,0x0238,0x0217,0x0218,0x0218,0x0218,0x01F7,0x0218,0x0217,0x01F6,0x01F7,0x01F7,0x01F7,0x0237,0x0237,0x0278,0x0298,0x02B8,0x135B,0x23FD,0x347F,0x23FD,0x02F9,0x0277,0x0237,0x0217,0x0217,0x0217,0x01F7,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01D6,0x01F7,0x01F7,0x01D7,0x01D7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0218,0x01F7,0x01F8,0x01F8,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x0217,0x0217,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F6,0x01F7,0x01F7,0x0217,0x0237,0x0217,0x0237,0x0257,0x0AD9,0x239C,0x3C5F,0x345E,0x1B7B,0x02B8,0x0257,0x0236,0x0216,0x01F6,0x01F6,0x01F6,0x01F6,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x0217,0x01F7,0x01F7,0x01D7,0x01D6,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F8,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01F7,0x01D7,0x0217,0x01F7,0x01F7,0x01D7,0x01D7,0x01F7,0x01F6,0x01D6,0x01D6,0x01D6,0x01F6,0x01F6,0x0217,0x0237,0x0257,0x0257,0x0257,0x0257,0x12FA,0x2BDD,0x3C7F,0x345F,0x23BD,0x0AF9,0x0257,0x0217,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x01F7,0x01D6,0x01D6,0x01F6,0x01F7,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01D6,0x01D6,0x01B6,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B6, + 0x01D7,0x01D6,0x01D6,0x01D7,0x01D6,0x01D7,0x01D7,0x01B7,0x01B7,0x01B6,0x01B7,0x01B7,0x01B6,0x01B7,0x01B7,0x01B6,0x01D7,0x01B7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B6,0x01D7,0x01D7,0x01B6,0x01D7,0x01D7,0x01F7,0x01F6,0x0216,0x0217,0x0257,0x12FA,0x2BDD,0x343E,0x2BFD,0x1B5B,0x02B8,0x0256,0x0215,0x0216,0x0216,0x01F6,0x01D6,0x01D6,0x01D6,0x01B6,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01D7,0x01D7,0x01F7,0x01D7,0x01F7,0x01F7,0x01D7,0x01D7,0x01F7,0x01D7,0x01F7,0x01D7,0x01D7,0x01F7,0x01D7,0x01F7,0x01F7,0x01D6,0x01F6,0x0217,0x0217,0x0237,0x0237,0x0278,0x0AD9,0x23DD,0x343E,0x2C3E,0x1B7B,0x02B8,0x0277,0x0236,0x0236,0x0216,0x0237,0x0217,0x01F6,0x01F6,0x01F7,0x01F6,0x01F6,0x01D6,0x01D6,0x01D6,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D8,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F8,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0216,0x0236,0x0298,0x1B5B,0x2C1E,0x2C3E,0x1B9B,0x02B8,0x0257,0x0278,0x0237,0x0217,0x0216,0x01F6,0x01F6,0x0217,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F8,0x0218,0x01F8,0x0218,0x0218,0x01F7,0x0218,0x01F8,0x01F8,0x0218,0x0218,0x01F8,0x01F7,0x01F7,0x0218,0x0218,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F8,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01F7,0x01F7,0x0218,0x0217,0x01F7,0x0217,0x0217,0x01F7,0x0237,0x0237,0x0278,0x133B,0x23FE,0x2C1E,0x0B1A,0x0298,0x0278,0x0278,0x0257,0x0237,0x0217,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x0217,0x0218,0x01F7,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x01F8,0x0218,0x01F8,0x01F8,0x01F8,0x0218,0x01F8,0x01F8,0x0218,0x01F8,0x01F8,0x0218,0x01F8,0x01F7,0x01F8,0x0218,0x01F8,0x01F8,0x01F8,0x01F8,0x0218,0x0218,0x01F8,0x01F7,0x0217,0x0217,0x0217,0x0218,0x0217,0x0237,0x0217,0x0237,0x0258,0x0298,0x23FD,0x2C3E,0x1BBC,0x0298,0x0257,0x0237,0x0237,0x0237,0x0237,0x0217,0x0217,0x0217,0x01F7,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x01F7,0x0217,0x0217,0x0217,0x0258,0x0278,0x0AFA,0x347F,0x02B9,0x0278,0x0258,0x0258,0x0238,0x0238,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x0218,0x0218,0x0238,0x0238,0x0238,0x0218,0x0218,0x0218,0x0238,0x0238,0x0258,0x02B9,0x347F,0x1B9C,0x0278,0x0238,0x0218,0x0218,0x0218,0x0218,0x0217,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0237,0x0237,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x2C5E,0x1BDD,0x0237,0x0237,0x0238,0x0237,0x0217,0x0238,0x0218,0x0238,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0217,0x0218,0x0217,0x0217,0x0237,0x0217,0x0217,0x0217,0x0237,0x0237,0x0278,0x0B3A,0x347F,0x02B9,0x0237,0x0237,0x0217,0x0217,0x01F7,0x0218,0x0218,0x0218,0x0218,0x0238,0x0238,0x0218,0x0238,0x0238,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0238,0x0218,0x0218,0x01F7,0x0218,0x0218,0x0218,0x0218,0x0217,0x0217,0x0217,0x0217,0x0217,0x0237,0x0258,0x0278,0x02D9,0x3CDF,0x1B9C,0x0278,0x0237,0x0238,0x0217,0x01F7,0x0217,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0217,0x0218,0x0218,0x0218,0x0218,0x0238,0x01F8,0x0218,0x0218,0x0218,0x0A39,0x0218,0x0238,0x0238,0x0238,0x0A39,0x0A38,0x0A38,0x0A59,0x0A58,0x0A58,0x0A58,0x0A58,0x0A58,0x1259,0x1279,0x1A99,0x1A79,0x1A79,0x2258,0x2238,0x3217,0x41F7,0x5A17,0x7A57,0x9257,0x9A15,0xA1F4,0xA9F4,0xA9F4,0xA9D4,0xA9D3,0xB1F4,0xA9D3,0xA9D3,0xA9F3,0xA9D3,0xA9D3,0xA9F3,0xA9F3,0xA9D3,0xA9F3,0xA9B3,0xA9D3,0xA9D3,0xB1F4,0xA9D3,0xA9D3,0xA9F3,0xA9D3,0xA1D3,0xA1F4,0xA235,0x9A15,0x9215,0x9298,0x61D6,0x3134,0x21F6,0x11F7,0x0A17,0x0218,0x0218,0x0218,0x0218,0x01F8,0x01F8,0x0218,0x01F8,0x0218,0x0218,0x0218,0x01F8,0x01F8,0x01F8,0x0218,0x0218,0x0218,0x0218,0x01F7,0x01F8,0x01F8,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x01F7,0x0217,0x0217,0x0217,0x0237,0x0258,0x02B9,0x137B,0x345F,0x2C1E,0x0AD9,0x0237,0x0237,0x0217,0x0237,0x0217,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x0218,0x01F7,0x01D7,0x01F7,0x01F8,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x0218,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0237,0x0257,0x0257,0x0298,0x0B19,0x23FD,0x343E,0x135B,0x0298,0x0237,0x0217,0x0217,0x0217,0x01F7,0x01F6,0x01D6,0x01D6,0x01D6,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01D7,0x01F7,0x01D6,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D6,0x01F6,0x0217,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x0216,0x0216,0x0236,0x0277,0x131A,0x2BDD,0x2BFD,0x1B7B,0x0298,0x0257,0x0216,0x0216,0x0216,0x01F6,0x01F6,0x01D6,0x01F6,0x01B6,0x01B6,0x01D6,0x01F7,0x01F7,0x01F7,0x01D6,0x01D6,0x01F7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D6,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01F6,0x01F7,0x01F7,0x01F6,0x0217,0x0216,0x0216,0x0236,0x0277,0x0AD9,0x23BC,0x343E,0x23BD,0x12FA,0x0237,0x0236,0x0216,0x0237,0x0217,0x0217,0x01F6,0x01F6,0x01D6,0x01D6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6, + 0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x0196,0x0196,0x01B6,0x01B6,0x01B6,0x0196,0x0196,0x0196,0x0196,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x01B6,0x01D6,0x01D6,0x01D6,0x01B6,0x0196,0x0196,0x01B6,0x01B6,0x01D6,0x01D6,0x01D7,0x01F7,0x01F7,0x0217,0x0257,0x02B8,0x135B,0x341E,0x2BFD,0x239C,0x0AB8,0x0216,0x01D4,0x01B4,0x01D5,0x01D5,0x01D5,0x01B5,0x01D5,0x01D5,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01D7,0x01D7,0x01D7,0x01B7,0x01B7,0x01B7,0x01D7,0x01D7,0x01D7,0x01B7,0x01D7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D6,0x01B6,0x01B6,0x01D6,0x01D6,0x01D6,0x01B6,0x01B6,0x0196,0x01D6,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01F6,0x0216,0x0257,0x0298,0x0B1A,0x1BBC,0x2C3E,0x23BC,0x0AF9,0x0257,0x0216,0x0215,0x01F5,0x01F5,0x01F5,0x01F6,0x0216,0x01F6,0x01F6,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01F7,0x01F6,0x01D6,0x01D6,0x01D6,0x01D7,0x01D7,0x01F7,0x01D6,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B7,0x01B7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01D7,0x01F7,0x01D7,0x01F7,0x01D7,0x01D7,0x01B6,0x01D7,0x01D7,0x01D6,0x01D6,0x01D6,0x01F6,0x0217,0x0237,0x0298,0x135A,0x2C3E,0x345F,0x1B9C,0x0278,0x0216,0x0216,0x0216,0x01F6,0x01F6,0x0216,0x0216,0x01F6,0x01F7,0x01F6,0x01F6,0x01D6,0x01D6,0x01B6,0x01D6,0x01D6,0x01F7,0x01D7,0x01F7,0x01F7,0x01D7,0x01D7,0x01F7,0x01D7,0x01F7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01D7,0x01D7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01D7,0x01D6,0x01D6,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0237,0x0298,0x23BC,0x2C1E,0x23DD,0x02DA,0x0278,0x0258,0x0237,0x0217,0x0217,0x0217,0x0217,0x0217,0x01F6,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F8,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x0217,0x0237,0x0298,0x2C1E,0x343F,0x133B,0x0257,0x0237,0x0237,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0218,0x0218,0x0218,0x01F7,0x01F8,0x01F7,0x01F7,0x01F7,0x01F8,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0218,0x01F7,0x01F7,0x01F8,0x01F8,0x01F7,0x01F8,0x01F7,0x0218,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0218,0x0218,0x0217,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0237,0x02B9,0x349F,0x0B3B,0x0299,0x0278,0x0258,0x0237,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0218,0x0217,0x0217,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F8,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F8,0x01F8,0x01F7,0x0217,0x0218,0x01F7,0x01F7,0x01F7,0x0218,0x01F7,0x0218,0x0218,0x0218,0x0218,0x0217,0x0217,0x0258,0x0237,0x0B1A,0x2C1E,0x02B9,0x0238,0x0217,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x01F7,0x0218,0x01F7,0x01F7,0x01F8,0x01F8,0x01F8,0x01F7,0x0218,0x0218,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F7,0x01F8,0x01F8,0x01F7,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F8,0x01F7,0x0218,0x01F8,0x01F8,0x01F7,0x01F8,0x01F8,0x01F8,0x01F7,0x01F7,0x01F7,0x0218,0x0218,0x0218,0x01F7,0x0218,0x0217,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x01F6,0x0217,0x01F6,0x23DD,0x1B9C,0x0257,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x0218,0x01F7,0x01F7,0x01F7,0x0218,0x01F7,0x01F7,0x0218,0x01F7,0x01F7,0x0217,0x0217,0x0218,0x01F7,0x01F7,0x01F7,0x01F8,0x01F8,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0218,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x01F6,0x0217,0x0217,0x0257,0x0278,0x345F,0x0B1A,0x0216,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x0217,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0218,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F8,0x01F8,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x0217,0x0217,0x0217,0x0217,0x0237,0x0257,0x0277,0x1B7B,0x3C9F,0x02D9,0x0237,0x0217,0x01F6,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0218,0x01F7,0x01F8,0x01F8,0x01F7,0x01F7,0x01F7,0x0218,0x0217,0x01F7,0x0217,0x01F7,0x01F7,0x0217,0x0217,0x0218,0x0218,0x0217,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x0218,0x01F8,0x0218,0x0218,0x0217,0x0238,0x0A38,0x0217,0x01F7,0x0A18,0x09F7,0x0A18,0x1238,0x1238,0x1A18,0x1A18,0x21F7,0x3A17,0x5237,0x6A37,0x8A57,0x9A36,0x99F5,0xA1D4,0xA9D4,0xA9D4,0xA9D3,0xA9D3,0xA9D3,0xA9B3,0xA9F3,0xA9D3,0xA9F3,0xA9F3,0xA9D3,0xA9D3,0xB1F3,0xB1F3,0xA9D3,0xA9F3,0xA9F3,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xA1D3,0xA1F4,0xAA35,0x9A35,0x9215,0x8A57,0x7237,0x3112,0x3238,0x09B6,0x01D6,0x01F7,0x01F7,0x01F7,0x01F7,0x01F8,0x01F8,0x01F7,0x01F8,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01D6,0x01D6,0x01F7,0x01F7,0x01F7,0x01F6,0x0217,0x0217,0x0217,0x0237,0x0278,0x0298,0x23BD,0x2BFD,0x133B,0x0278,0x0237,0x0217,0x0217,0x01F7,0x01F6,0x01F6,0x01F7,0x01F6,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01D6,0x01D6,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F6,0x01D6,0x01F6,0x01F6,0x0216,0x0216,0x01F6,0x01F6,0x0216,0x0236,0x0277,0x131A,0x2C1E,0x23DD,0x131A,0x0278,0x0237,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01B6,0x01D6,0x01B6,0x01D6,0x01D6,0x01D7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D6,0x01B6,0x01D7,0x01D7,0x01D7,0x01D6,0x01D7,0x01D6,0x01D7,0x01D7,0x01D7,0x01B6,0x01D6,0x01B6,0x01D7,0x01D7,0x01D6,0x01D6,0x01D6,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01D6,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D5,0x01F6,0x01F6,0x01F6,0x0216,0x0AB9,0x237B,0x2BFD,0x1B7B,0x0AD9,0x0257,0x0216,0x01F6,0x01D6,0x01D6,0x01B5,0x01D6,0x01B6,0x01B6,0x0195,0x0195,0x01B6,0x01B6,0x01D6,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01B6,0x01B6,0x01D7,0x01D7,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01D6,0x01D6,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D5,0x01D5,0x01F5,0x01F5,0x01F6,0x0216,0x0257,0x1B5B,0x23BC,0x23DC,0x137B,0x02D8,0x0277,0x0237,0x0216,0x01F6,0x01D5,0x01B5,0x01B5,0x01B5,0x01B5,0x01B5,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01B6, + 0x01B6,0x01D6,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0196,0x0195,0x0195,0x0196,0x0196,0x0196,0x0196,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x0196,0x0196,0x01B6,0x0196,0x0196,0x01B6,0x01B6,0x0195,0x0195,0x01B5,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01D6,0x0217,0x0217,0x0217,0x0237,0x0278,0x2BDD,0x3C9F,0x23BC,0x0B3A,0x02B8,0x0257,0x0216,0x01F5,0x01D5,0x01D4,0x01D4,0x01D5,0x01D5,0x01D5,0x01B5,0x01D5,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D7,0x01B6,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x0195,0x01D6,0x01D6,0x01D6,0x01F6,0x0216,0x0237,0x0277,0x135A,0x2C1D,0x23FC,0x139B,0x02F9,0x0298,0x0236,0x0216,0x0216,0x01F5,0x01D5,0x01D5,0x01F5,0x01F5,0x01F6,0x0216,0x01F6,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D5,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01B6,0x01D6,0x01D6,0x01D6,0x01D7,0x01F7,0x01F7,0x01F6,0x01D6,0x01F6,0x01D6,0x01D7,0x01D6,0x01D6,0x01D6,0x01F6,0x01F6,0x01F6,0x01F6,0x0216,0x131A,0x3C7F,0x347F,0x1B9C,0x02D9,0x0257,0x0237,0x0216,0x01F6,0x01F6,0x01D6,0x01D6,0x01D6,0x0216,0x01F6,0x01F7,0x01F6,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01F6,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D7,0x01D6,0x01D6,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01F7,0x01F6,0x01F7,0x01F6,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D6,0x01F6,0x01F7,0x01F7,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x0217,0x0237,0x0A99,0x23BC,0x2BFE,0x135B,0x0299,0x0258,0x0258,0x0237,0x0217,0x0216,0x0216,0x01F6,0x01F6,0x01F6,0x01F6,0x01F7,0x01F7,0x01F7,0x01F7,0x01D6,0x01D7,0x01F7,0x01D6,0x01D7,0x01F7,0x01F7,0x01F6,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01F6,0x01D6,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F6,0x01F7,0x0217,0x0217,0x0217,0x0217,0x01F6,0x01F6,0x01F6,0x0237,0x0278,0x1B9C,0x1B9C,0x02D9,0x0257,0x0237,0x0237,0x0217,0x0217,0x01F6,0x01F6,0x01F7,0x01F7,0x01D6,0x01F6,0x01D6,0x01D6,0x01F7,0x01D7,0x01D7,0x01D6,0x01D7,0x01D7,0x01D6,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D6,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0237,0x0257,0x1BBC,0x137B,0x02D9,0x02B9,0x0278,0x0258,0x0217,0x01F7,0x01F7,0x01F7,0x01D6,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D6,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D6,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0217,0x0237,0x0257,0x135B,0x135B,0x0258,0x0237,0x01F6,0x0217,0x0217,0x01F7,0x01F6,0x0217,0x01F7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x133A,0x135B,0x0257,0x0237,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F6,0x01F6,0x01D6,0x01F6,0x01D6,0x01D6,0x01F6,0x01F6,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F6,0x01F6,0x01D6,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x0216,0x0237,0x0236,0x0B3A,0x1BBC,0x01D5,0x01F6,0x01F7,0x0217,0x0217,0x0217,0x01F7,0x01F6,0x01F7,0x01F7,0x01D6,0x01D6,0x01F7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D6,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D6,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0237,0x0217,0x0237,0x0277,0x1BBC,0x2BFD,0x0257,0x0216,0x01F6,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x0A17,0x09F7,0x11F7,0x19D6,0x29B6,0x3195,0x5195,0x7A36,0x9256,0x99F5,0xA1D4,0xA9D4,0xA9F4,0xA9D4,0xA9F4,0xA9D3,0xB1F4,0xA9D3,0xA9F3,0xA9D3,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xB1F3,0xA9D3,0xB1F4,0xA9D3,0xA9B3,0xA9D3,0xA9F3,0xA9D3,0xA1F3,0xA1F4,0xA1F4,0xA235,0x9215,0x8A36,0x7A57,0x3112,0x29D6,0x0174,0x01D6,0x01D6,0x01D6,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D6,0x01D6,0x01D7,0x01D7,0x01D7,0x01D6,0x01D7,0x01D7,0x01D7,0x01D7,0x01D6,0x01D7,0x01F7,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01D6,0x01F6,0x01F6,0x0216,0x0217,0x0237,0x0237,0x0257,0x0B1A,0x23DD,0x1B7B,0x0AD9,0x0278,0x0237,0x0216,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01D6,0x01D6,0x01F7,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01D6,0x01D6,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D7,0x01F7,0x01F7,0x01F7,0x01F6,0x01D6,0x01D7,0x01D6,0x01D6,0x01B6,0x01D6,0x01D6,0x01B6,0x01D6,0x01F7,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x01F6,0x01D5,0x01F6,0x01D6,0x01F6,0x0236,0x02B8,0x139B,0x1BBC,0x1B7C,0x12FA,0x0257,0x0216,0x01F6,0x01F6,0x01F6,0x01D6,0x01B5,0x01B6,0x01B6,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01D6,0x01B6,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01D6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B5,0x01B5,0x01D6,0x01D6,0x01D5,0x01D5,0x01D6,0x01B5,0x01D5,0x01D5,0x01D6,0x01D6,0x01D5,0x01B5,0x01D5,0x01D5,0x01F5,0x01F5,0x0236,0x0277,0x0B19,0x1B9B,0x23FD,0x239C,0x133A,0x0277,0x0216,0x01F6,0x01D6,0x01D6,0x01D6,0x01B5,0x01B5,0x0195,0x01B5,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01B6,0x01B5,0x0195,0x0195,0x0196,0x01B6,0x0196,0x01B6,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x01B5,0x01B5,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D5,0x01B5,0x01D5,0x01D5,0x01D5,0x01B5,0x01B5,0x01D5,0x01F5,0x0215,0x0236,0x0297,0x137A,0x1BDC,0x2C1D,0x23FC,0x133A,0x0278,0x0236,0x0216,0x01F5,0x01D5,0x01D5,0x01D5,0x01B5,0x01B5,0x01B5,0x01B5,0x01D5,0x01B5,0x01B5,0x01B5,0x01B5,0x01B5,0x01B6,0x01D6, + 0x231B,0x1AFB,0x1AFA,0x1AFA,0x1ABA,0x1ADA,0x12BA,0x1ADA,0x1ADA,0x1ADA,0x1ADA,0x1ADA,0x1AB9,0x1ADA,0x1ADA,0x1ADA,0x12DA,0x1AFA,0x12B9,0x1ADA,0x12B9,0x1AFA,0x1ADA,0x12BA,0x1ADA,0x1AFA,0x1ADA,0x1AFA,0x1ADA,0x1AFA,0x1AFA,0x231B,0x1B1A,0x1AFA,0x1AF9,0x1AFA,0x12D9,0x12D9,0x12B9,0x12D9,0x12B9,0x1AFA,0x12DA,0x12D9,0x12FA,0x235B,0x33DD,0x341E,0x2BFD,0x239C,0x1B7B,0x135B,0x133A,0x135A,0x1B3A,0x1B3A,0x1B5A,0x1B3A,0x235B,0x235B,0x235B,0x233B,0x2B5B,0x2B5B,0x231A,0x231A,0x1B1A,0x231B,0x1B1A,0x233B,0x233B,0x235C,0x233B,0x235B,0x1B1A,0x1B1B,0x1B1A,0x1B1B,0x1B1B,0x233B,0x1AFA,0x1AFA,0x1AFA,0x1AFA,0x1ADA,0x22FB,0x1AFA,0x1AFA,0x1AFA,0x22FB,0x1ADA,0x1AFA,0x1AFA,0x1AFA,0x1ADA,0x1AFA,0x1AFA,0x1B1A,0x1AFA,0x1AFA,0x1AFA,0x1B1A,0x1AFA,0x231B,0x1AFA,0x1ADA,0x1AFA,0x233B,0x1B1A,0x1B3A,0x12D9,0x12D9,0x133A,0x1B7B,0x2BFD,0x23FD,0x23DC,0x23DC,0x23DC,0x1BBC,0x135B,0x133A,0x133A,0x131A,0x1B1A,0x1B3A,0x1B5B,0x235B,0x2B9C,0x2B9C,0x1B1A,0x1AFA,0x12FA,0x1B1A,0x233B,0x233B,0x1B1A,0x1B1A,0x1AFA,0x1B1A,0x1B1A,0x1B3B,0x1B1A,0x1B1A,0x1B1A,0x231B,0x1AFA,0x1B1A,0x1B1A,0x1B1A,0x1B1A,0x1B1A,0x1AFA,0x1B1B,0x1AFA,0x1AFA,0x1AFA,0x22FB,0x22FA,0x1ADA,0x22FB,0x231B,0x22FB,0x1AFB,0x1B1B,0x233B,0x233B,0x233B,0x235C,0x237C,0x235B,0x235B,0x1B3B,0x1B3B,0x1AFA,0x1B1B,0x1B1A,0x1B1A,0x12FA,0x131A,0x12FA,0x1B7B,0x341E,0x2BFD,0x23BC,0x1BBC,0x1BBC,0x1B9C,0x135B,0x131A,0x12FA,0x12FA,0x1B3B,0x1B3B,0x1B1B,0x233B,0x1B1B,0x1B3B,0x1B1B,0x1B3B,0x1B3B,0x235C,0x235B,0x235C,0x233B,0x1B3B,0x233B,0x233B,0x233B,0x233B,0x233B,0x235C,0x233B,0x235C,0x233B,0x235C,0x235C,0x235C,0x233B,0x233C,0x231B,0x231B,0x231B,0x233B,0x1AFB,0x1AFB,0x1B1B,0x233B,0x1B1B,0x233B,0x233B,0x235B,0x1B5B,0x237C,0x1B3B,0x235C,0x1B3B,0x235B,0x235B,0x237C,0x235C,0x235B,0x1B3B,0x235B,0x1B3B,0x1B1B,0x1B3B,0x237C,0x12F9,0x0AD9,0x1B5B,0x23BD,0x2C1E,0x23DD,0x23BD,0x0B1A,0x0299,0x0AD9,0x1B3B,0x1B3B,0x12FA,0x12FA,0x12DA,0x12DA,0x1B3B,0x1B3B,0x12FA,0x1B1B,0x12BA,0x12DA,0x1B1B,0x233B,0x1AFA,0x1AFB,0x1B1B,0x231B,0x1B1B,0x233C,0x1B1B,0x1B3B,0x1B3B,0x233B,0x1B3B,0x233B,0x1B1B,0x235C,0x233B,0x233B,0x1B1B,0x1B3B,0x1B1B,0x233B,0x231B,0x235C,0x233B,0x235C,0x1B3B,0x233B,0x233B,0x235C,0x1B1B,0x233B,0x1B1B,0x1B1B,0x1B3B,0x237C,0x235B,0x1B3B,0x1B3B,0x235B,0x1B3B,0x1B3A,0x1B5B,0x239C,0x1B3B,0x1B5B,0x12FA,0x1B5B,0x1B5B,0x23BC,0x2C3E,0x23FD,0x2BFD,0x1B7B,0x131A,0x0AF9,0x0AD9,0x12FA,0x235C,0x235C,0x12BA,0x1AFB,0x235C,0x235C,0x1B1B,0x1B1B,0x1B1B,0x233B,0x1B3B,0x233B,0x233B,0x233B,0x233B,0x235C,0x233B,0x235B,0x235C,0x237C,0x233B,0x235C,0x235C,0x235C,0x233B,0x233B,0x235B,0x235C,0x233B,0x233B,0x233B,0x235B,0x235B,0x235B,0x235C,0x235C,0x1B3B,0x235B,0x233B,0x235C,0x233B,0x233B,0x233B,0x235C,0x1B3B,0x235C,0x1B1B,0x1B3B,0x1B3B,0x1B3B,0x1B3B,0x235C,0x235B,0x235C,0x1B3B,0x1B5B,0x135B,0x1B7B,0x0AF9,0x23BC,0x3CDF,0x1BBC,0x137B,0x1B7B,0x133B,0x1B3B,0x12FA,0x12DA,0x1B3B,0x1B3B,0x235C,0x235C,0x1B1B,0x1B1B,0x1B3B,0x235C,0x1B3B,0x235C,0x235C,0x237C,0x235C,0x237C,0x237C,0x237C,0x235C,0x237C,0x235C,0x235C,0x237C,0x235C,0x237C,0x237C,0x237C,0x2B7C,0x2B7C,0x237C,0x237C,0x237C,0x237C,0x237C,0x237C,0x237C,0x237C,0x2B7C,0x235B,0x235C,0x237C,0x237C,0x235C,0x235C,0x235C,0x2B7C,0x237C,0x237C,0x235C,0x237C,0x1B3B,0x235C,0x1B3B,0x235C,0x237C,0x237C,0x239D,0x1B7C,0x133B,0x133B,0x02D9,0x135B,0x3CBF,0x137B,0x133B,0x23BD,0x2BDD,0x239C,0x1B5C,0x235C,0x237C,0x2B9C,0x237C,0x2B7C,0x233C,0x235C,0x235C,0x235C,0x233C,0x235C,0x235C,0x237D,0x235C,0x237C,0x235C,0x235C,0x235C,0x235C,0x235C,0x235C,0x235C,0x237C,0x235C,0x237D,0x235C,0x235C,0x235C,0x237C,0x235C,0x235C,0x235C,0x237C,0x235C,0x237C,0x237C,0x237C,0x237C,0x237C,0x237C,0x237C,0x237C,0x239D,0x237C,0x237C,0x237C,0x2B9C,0x237C,0x237C,0x237C,0x237C,0x235C,0x237C,0x1B5B,0x237C,0x235B,0x1B1A,0x12F9,0x12FA,0x12D9,0x0AD9,0x2C1D,0x2C1D,0x0AD9,0x131B,0x1B5C,0x235C,0x1B3B,0x235C,0x235C,0x237C,0x237C,0x2B7C,0x235C,0x235C,0x237C,0x237C,0x235C,0x237C,0x237C,0x2B7C,0x237C,0x237C,0x237D,0x2B7D,0x237C,0x237C,0x237C,0x237D,0x237C,0x237C,0x2B7C,0x2B7C,0x237C,0x237C,0x237C,0x2B7D,0x237C,0x237C,0x237C,0x237C,0x237C,0x237C,0x237C,0x2B7C,0x235C,0x237C,0x235C,0x237C,0x2B7C,0x237C,0x237C,0x237C,0x2B7C,0x2B7C,0x2B9D,0x2B7C,0x237C,0x2B9C,0x235B,0x237C,0x2B7C,0x237C,0x235B,0x237C,0x1B5B,0x235B,0x235C,0x239C,0x239C,0x1B9C,0x137B,0x349F,0x133A,0x131A,0x1B5B,0x133B,0x1B5B,0x237C,0x1B3B,0x237C,0x1B3B,0x235C,0x1B3C,0x233C,0x235C,0x235C,0x235C,0x237C,0x235C,0x237C,0x237C,0x237C,0x235C,0x235C,0x235C,0x237C,0x235C,0x235C,0x235C,0x237C,0x235C,0x235C,0x235C,0x235C,0x235C,0x235C,0x233B,0x235C,0x233B,0x235C,0x235C,0x235C,0x235C,0x235C,0x235C,0x237C,0x237C,0x237C,0x235C,0x237C,0x235C,0x237C,0x237C,0x235C,0x235C,0x2B9D,0x1B3B,0x235C,0x237C,0x235B,0x235C,0x235C,0x1B1B,0x12FA,0x12FA,0x1B5B,0x239B,0x2BFD,0x137B,0x343E,0x1B9B,0x133A,0x1B7C,0x1B7C,0x1B5B,0x1B7C,0x1B5C,0x237C,0x235C,0x237C,0x235C,0x235C,0x233C,0x233C,0x233C,0x235C,0x1B3B,0x1B3B,0x1B3B,0x1B3B,0x1B5C,0x237C,0x1B5B,0x235C,0x1B1B,0x1B3B,0x1B3B,0x1B3C,0x1B3B,0x1B3B,0x1B3B,0x235C,0x1B1B,0x1B3B,0x1B3B,0x235C,0x235C,0x235C,0x235C,0x235C,0x235B,0x235C,0x233B,0x235C,0x2B5C,0x2B5C,0x335C,0x337C,0x335B,0x3B5C,0x3B3B,0x431B,0x4AFA,0x5AFA,0x6AFA,0x7A98,0x9297,0x9215,0xA1F4,0xA1F4,0xA9D4,0xA9D3,0xB1F4,0xA9D3,0xA9D3,0xB1F4,0xA9D3,0xB1F4,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xB1D3,0xA9D3,0xA9B3,0xB214,0xA9F3,0xA1D3,0xA1D4,0xA214,0xA235,0x9215,0x8A15,0x8297,0x5A36,0x847F,0x3B1A,0x22B9,0x22FA,0x231B,0x233B,0x233B,0x233C,0x1B1B,0x233C,0x235C,0x235C,0x233B,0x235B,0x235C,0x233B,0x231B,0x235C,0x231B,0x233C,0x1B1B,0x233B,0x233B,0x233B,0x233B,0x235B,0x1B1B,0x233C,0x1B1B,0x1B1B,0x1AFA,0x1AFB,0x233B,0x233B,0x12BA,0x12B9,0x1B1B,0x233B,0x233B,0x1B3B,0x12D9,0x0AD9,0x12FA,0x133A,0x133A,0x1B7B,0x2C3E,0x345E,0x23BC,0x1B7B,0x131A,0x1B3B,0x1B5B,0x1B3B,0x1B5B,0x1B3B,0x1B3B,0x235B,0x237C,0x237C,0x235B,0x235B,0x235B,0x233B,0x1B1A,0x1B1A,0x1AFA,0x231B,0x1AFA,0x231B,0x1AFA,0x233B,0x1B1B,0x233B,0x1B1B,0x233B,0x1B1A,0x1B1B,0x1B1B,0x231B,0x1B1B,0x1B1B,0x231B,0x233B,0x1AFA,0x1B1B,0x1AFA,0x1AFA,0x1AFA,0x1AFA,0x1AFA,0x231B,0x231B,0x231B,0x231B,0x2B3C,0x1AFA,0x1AFA,0x1AFA,0x1AFA,0x1B1A,0x1B1B,0x1B1B,0x233B,0x1AFA,0x12DA,0x1AFA,0x1AFA,0x1B3B,0x1B3B,0x131A,0x0AF9,0x1B7B,0x23DC,0x2C1D,0x2C3E,0x2C1D,0x2BFD,0x133A,0x131A,0x12F9,0x131A,0x1AFA,0x1ADA,0x12DA,0x1ADA,0x231B,0x233B,0x1B1B,0x233B,0x233B,0x233B,0x233B,0x235B,0x1B1B,0x1B3B,0x1AFA,0x1B1B,0x1AFA,0x1B1B,0x1AFA,0x1B1B,0x1AFA,0x1AFA,0x1B1B,0x235B,0x1AFA,0x1B1B,0x1AFA,0x1B1B,0x1B1B,0x231B,0x1AFA,0x231B,0x231B,0x233B,0x1B1B,0x231B,0x1B1A,0x231B,0x233B,0x233B,0x1B1B,0x231B,0x1AFA,0x1AFA,0x1ADA,0x1AFA,0x1ADA,0x1AFA,0x1AFA,0x1B1A,0x233B,0x235B,0x233B,0x235B,0x1B5A,0x1B7B,0x239C,0x23BC,0x23DC,0x23DC,0x23FD,0x2C1D,0x341D,0x341D,0x237B,0x1B3A,0x0A98,0x12D9,0x12D9,0x12DA,0x1ADA,0x1ADA,0x1B1B,0x1B1B,0x233B,0x233B,0x1B1B,0x231B,0x1AFA,0x1B1B,0x231B,0x231B,0x231B,0x231B,0x1ADA,0x1AFA,0x1ADA,0x1AFA,0x1B1B,0x1B3B,0x1AFA,0x1B1B,0x1B1B,0x1B1B,0x231B,0x231B,0x1ADA,0x231B,0x1AB9,0x1ADA,0x1AB9,0x1ADA,0x1AFA,0x231A,0x1AB9,0x1AB9,0x1299,0x12B9,0x1299,0x12B9,0x12B9,0x12D9,0x1ADA,0x1ADA,0x1AD9,0x12B9,0x12B9,0x12D9,0x12B9,0x12D9,0x1AF9,0x1B1A,0x1B1A,0x133A,0x1B7B,0x1B9B,0x139B,0x139A,0x1BBB,0x23DC,0x23BC,0x2BBC,0x1B5A,0x1B19,0x0A77,0x0A77,0x0A77,0x0A77,0x0A77,0x0A77,0x0A78,0x0A77,0x0A98,0x0A98,0x12B8,0x12B8,0x12B8,0x1298,0x12B9,0x12B9, + 0x231B,0x1ADA,0x1AFB,0x231B,0x2B5C,0x233B,0x2B7C,0x2B7C,0x339D,0x2B7C,0x339D,0x337C,0x339D,0x339D,0x339D,0x339D,0x2B7C,0x2B7C,0x2B7D,0x2B7C,0x2B7C,0x2B9C,0x33BD,0x339D,0x33BD,0x33BD,0x33BD,0x337C,0x2B7C,0x2B5C,0x2B5B,0x2B7C,0x237B,0x235B,0x1B5A,0x235B,0x237B,0x2B9C,0x239C,0x2B9C,0x237B,0x235B,0x2B7C,0x33BD,0x33FD,0x33BD,0x2B9C,0x1B3B,0x12F9,0x12F9,0x131A,0x12FA,0x1B3A,0x1B3A,0x131A,0x1B3A,0x1B3A,0x1B1A,0x1B1A,0x1B1A,0x233B,0x233B,0x233B,0x231A,0x231B,0x233B,0x233B,0x233B,0x233B,0x1B1A,0x235B,0x233B,0x235B,0x233B,0x235C,0x235B,0x235B,0x235B,0x2B9C,0x2B7C,0x2B9D,0x2B7C,0x337C,0x2B7C,0x2B7C,0x2B5C,0x2B7C,0x2B5C,0x337C,0x2B5C,0x337D,0x2B7C,0x2B7C,0x2B9C,0x33BD,0x2B7C,0x2B7C,0x235B,0x2B7C,0x2B7C,0x237C,0x2B7C,0x235C,0x2B7C,0x235B,0x2B7C,0x2B7C,0x2B9C,0x237C,0x1B3A,0x131A,0x2BBC,0x341D,0x2BFD,0x23BC,0x1B9B,0x133A,0x133A,0x1B5B,0x133A,0x1B5B,0x1B5B,0x1B3B,0x1B3B,0x1B3B,0x1B3B,0x235C,0x237C,0x235C,0x1B1B,0x237C,0x237C,0x235B,0x2B9C,0x2B9C,0x2B7C,0x2B9C,0x235C,0x2B7C,0x2B7C,0x2B7C,0x235B,0x2B7C,0x2B5C,0x2B7C,0x2B5C,0x2B7C,0x2B5C,0x2B9D,0x2B9C,0x2B9C,0x2B9D,0x339D,0x2B7C,0x33BD,0x2B7D,0x339D,0x339D,0x339D,0x337D,0x339D,0x337D,0x339D,0x337D,0x2B7D,0x2B7C,0x339D,0x2B7C,0x237C,0x237C,0x237C,0x237C,0x237B,0x237C,0x237C,0x237C,0x1B5B,0x1B3B,0x239C,0x2BFE,0x3C5F,0x341E,0x1B7C,0x131A,0x131A,0x1B5B,0x1B5B,0x1B5B,0x1B5B,0x1B5B,0x237C,0x237C,0x235C,0x235C,0x33BD,0x2B7D,0x2B7D,0x2B7C,0x2B7D,0x2B7D,0x2B9D,0x2B9C,0x33BE,0x2B9D,0x2B9D,0x2B7C,0x2B7C,0x2B7D,0x2B9D,0x2B7C,0x2B9D,0x2B7D,0x2B9D,0x2B7C,0x2B9D,0x2B7C,0x2B9D,0x2B7C,0x339D,0x2B7D,0x339D,0x2B7D,0x339D,0x2B7D,0x339D,0x2B9D,0x2B9D,0x2B9D,0x33DD,0x2B9C,0x2BBD,0x2BBD,0x2BBD,0x239C,0x2B9D,0x2B9C,0x2B9C,0x237C,0x237C,0x1B3B,0x1B3B,0x1B5B,0x1B1B,0x1B1B,0x1B3B,0x239C,0x23BC,0x237C,0x1B5B,0x341E,0x341E,0x2BDD,0x239C,0x239C,0x1B5B,0x1B3B,0x237C,0x2BBD,0x237C,0x237C,0x2BBD,0x237C,0x2B9D,0x2B9D,0x33DE,0x2BBD,0x33DE,0x33BE,0x33BE,0x33BE,0x339D,0x339D,0x3BDE,0x339D,0x33BE,0x33BD,0x33BE,0x2B9D,0x33BE,0x2B9D,0x2BBD,0x2B9D,0x33BD,0x2B9D,0x33BD,0x2B9D,0x33BD,0x2B9D,0x33BD,0x2B9D,0x33BD,0x2B9D,0x33BD,0x2B9D,0x33BE,0x2BBD,0x33BD,0x2B9D,0x33BD,0x2B9D,0x33DD,0x2B9D,0x33BD,0x33BD,0x2BBD,0x2B9D,0x2BBD,0x2B9C,0x239C,0x237C,0x239C,0x2BBC,0x239C,0x237C,0x1B5B,0x1B7B,0x239C,0x2C1E,0x2C1E,0x2BFD,0x1B9C,0x1B7B,0x239C,0x1B5B,0x1B7B,0x1B3B,0x1B3B,0x2B9D,0x2BBD,0x2B7D,0x2B7D,0x2B9D,0x2B9D,0x2B7D,0x33BD,0x2B9D,0x2BBD,0x2B9D,0x33BD,0x2BBD,0x33DE,0x33BD,0x33BD,0x2B9D,0x33BD,0x2B9D,0x33BD,0x33BD,0x33DE,0x33BD,0x33BD,0x33BD,0x33DE,0x33DE,0x33BD,0x33BD,0x33DE,0x33BD,0x33BD,0x33BD,0x33DE,0x2BBD,0x33BD,0x33BD,0x33BD,0x2BBD,0x33DE,0x2BBD,0x33DE,0x33BD,0x33BD,0x33BD,0x33DE,0x33BE,0x33DE,0x33DE,0x33DE,0x2BBD,0x2BBD,0x237C,0x2B9C,0x237C,0x239C,0x23BD,0x23BC,0x1B9C,0x1B9B,0x3C7F,0x23DC,0x1B7B,0x1B7B,0x133B,0x131A,0x131B,0x1B3B,0x237C,0x33DE,0x33DE,0x2B9D,0x237C,0x2BBD,0x2B9D,0x2B9D,0x2B9D,0x2BBD,0x2B9D,0x2BBD,0x2BBD,0x2BBD,0x2B9D,0x2BBD,0x2B9D,0x2BBD,0x2B9D,0x33BD,0x339D,0x33BD,0x33BD,0x33DE,0x33BD,0x33BD,0x33BD,0x33BD,0x33BD,0x33DE,0x33BD,0x33BE,0x33DE,0x33DE,0x2BBD,0x33DE,0x33BD,0x33DE,0x33DD,0x33DE,0x33DD,0x33DE,0x2BBD,0x2BBD,0x33BD,0x33DD,0x2BBD,0x33BD,0x33BD,0x33DE,0x2BBD,0x33BD,0x2B9D,0x2BBD,0x2BBD,0x2BDD,0x2BDD,0x23BD,0x23BD,0x1B9C,0x44DF,0x3CBF,0x135B,0x1B7C,0x1B7C,0x1B7C,0x1B5B,0x237C,0x237C,0x2B9C,0x2B9D,0x2B9D,0x2B7C,0x33BE,0x339E,0x33BE,0x339D,0x33BE,0x33BE,0x33DE,0x33BE,0x33DE,0x33BE,0x33DE,0x33BE,0x33DE,0x33BE,0x33DE,0x33DE,0x33DE,0x33BE,0x33BE,0x33DE,0x33DE,0x2BBD,0x33DE,0x33BE,0x33BE,0x2BBD,0x33DE,0x33BE,0x2BBD,0x2B9D,0x2BBD,0x2BBD,0x33DE,0x2BBD,0x33DE,0x2BBD,0x2BBD,0x2B9D,0x2BBD,0x2B9D,0x2BBD,0x2B9D,0x2BBD,0x237C,0x2B9D,0x2B9D,0x33DE,0x33DE,0x2BBD,0x2BBD,0x33FE,0x33FE,0x33FD,0x33DD,0x2BBD,0x1B3B,0x341E,0x345E,0x1B3B,0x239D,0x2B9D,0x239D,0x2B9D,0x2B7D,0x2BBD,0x2B9D,0x2BBD,0x2B9D,0x33BD,0x2B9D,0x2BBD,0x2BBD,0x2BBD,0x2B9D,0x2BBD,0x2BBD,0x33DE,0x33BE,0x2BBE,0x2BBE,0x33BE,0x2BBD,0x2BBE,0x2BBD,0x33BE,0x2B9D,0x33BD,0x33BD,0x33BE,0x2B9D,0x33DE,0x33BE,0x33DE,0x2B9D,0x2BBD,0x2BBD,0x2BBD,0x2B9D,0x2BBD,0x33BD,0x33BD,0x2BBD,0x33BD,0x33BD,0x33DE,0x2B9D,0x33BE,0x2BBD,0x2BBD,0x2B9D,0x33BD,0x2B9D,0x2BBD,0x2B9C,0x33BD,0x2B9D,0x2B9D,0x2B9D,0x2BBD,0x2B9D,0x2BBD,0x239D,0x237C,0x237C,0x237C,0x1B7B,0x135B,0x23FD,0x345F,0x23DD,0x1B9C,0x239C,0x237C,0x237C,0x2B9D,0x2B9D,0x2BBD,0x2B9D,0x2B9D,0x2B9D,0x2BBE,0x2B7D,0x2BBD,0x2BBD,0x33BD,0x2BBD,0x2BBD,0x2B9D,0x33BE,0x2B9D,0x33BE,0x33BD,0x33DE,0x2BBD,0x2BBD,0x2BBD,0x33DE,0x33BE,0x33BE,0x33DE,0x33BD,0x2BBD,0x33BD,0x33BD,0x33BD,0x2BBD,0x33BD,0x33BD,0x33BD,0x2BBD,0x33BD,0x33BD,0x2BBD,0x2B9D,0x33BD,0x2B9D,0x33BD,0x2BBD,0x33DE,0x2BBD,0x2BBD,0x2B7D,0x2B9D,0x235C,0x235C,0x233C,0x237D,0x235C,0x237C,0x235C,0x235C,0x239C,0x1B5B,0x1B5B,0x133A,0x133A,0x2BDD,0x23BC,0x23BC,0x133A,0x0B1A,0x131A,0x1B3B,0x1B5B,0x235C,0x235C,0x2B7C,0x2B7D,0x2B9D,0x2B7D,0x2B9D,0x2B7D,0x2BBD,0x2B9D,0x2B9D,0x2B9D,0x2BBD,0x2BBD,0x2B9D,0x237C,0x2B9D,0x2B7D,0x2BBD,0x2B9D,0x2BBD,0x2B9D,0x2BBD,0x2B9D,0x2BBD,0x2BBD,0x2BBD,0x2B9D,0x2BBD,0x2B9D,0x2B9D,0x2B9D,0x33BD,0x33BD,0x3BDE,0x3BDE,0x33BD,0x339D,0x3B9D,0x3B9D,0x3BBD,0x43BD,0x439C,0x4B7C,0x537C,0x5B5C,0x6B3B,0x72B8,0x8A98,0x9256,0x9A15,0xA215,0xA9F4,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xB1F3,0xB1F3,0xA9D3,0xB1F3,0xA9D3,0xB1F3,0xA9D3,0xB1F3,0xA9D3,0xB1F4,0xB1F3,0xA9D3,0xB1F4,0xA9F4,0xA9F3,0xA1D3,0xA1F4,0xA1F4,0xA235,0x9A35,0x8A35,0x8AD8,0x6256,0x52D9,0x3AD9,0x2AFA,0x2B1B,0x231B,0x1B1B,0x233C,0x1B1B,0x233C,0x233C,0x2B7C,0x235C,0x2B7C,0x235C,0x2B7D,0x2B9D,0x339D,0x2B7C,0x33BD,0x2B7D,0x33BD,0x2B9D,0x2B9D,0x2B9D,0x33DD,0x2B9D,0x33BD,0x2B9D,0x339D,0x33BD,0x33DE,0x33BD,0x33BD,0x2B7D,0x33BD,0x33BD,0x33BD,0x2B9D,0x2B7D,0x233B,0x237C,0x235C,0x1B3B,0x1B3B,0x1B5B,0x1B5B,0x1B7B,0x1B7B,0x23BC,0x341E,0x341E,0x2BDD,0x1B5B,0x1B3B,0x131A,0x12DA,0x131A,0x1B3B,0x237B,0x235B,0x2BBD,0x237C,0x235B,0x235B,0x2B9C,0x2B7C,0x2B9D,0x2B5C,0x339D,0x2B7C,0x2B9D,0x2B7C,0x2B9D,0x2B7C,0x2B9D,0x2B7C,0x2B7C,0x235C,0x2B9D,0x2B7C,0x2B9D,0x2B9D,0x2B9D,0x2B7C,0x2B9D,0x2B7C,0x2B7D,0x339D,0x33BD,0x339D,0x33BD,0x337D,0x33BD,0x337C,0x33BD,0x2B5C,0x339D,0x2B5C,0x2B5C,0x2B7C,0x2B7C,0x235B,0x2B7C,0x235B,0x2B9D,0x2B9C,0x2B9D,0x2B7C,0x233B,0x1B3B,0x235B,0x1B3B,0x1B3A,0x1B5A,0x1B7B,0x135A,0x239B,0x2BDC,0x345E,0x449F,0x2BDD,0x237C,0x1B3B,0x1B3B,0x1B3B,0x1B3B,0x233B,0x233B,0x233B,0x1AFA,0x1B1B,0x233B,0x235C,0x233B,0x2B9C,0x235C,0x2B9C,0x2B7C,0x2B7D,0x2B5C,0x2B7C,0x235C,0x2B7C,0x233B,0x233B,0x233B,0x2B7C,0x235C,0x2B9D,0x2B9D,0x2B9D,0x2B7C,0x2B9C,0x2B5C,0x2B5C,0x233B,0x2B5C,0x2B7C,0x339D,0x2B7C,0x2B7C,0x233B,0x2B5C,0x2B5C,0x2B7C,0x2B7C,0x2B7C,0x2B7C,0x339D,0x2B7C,0x2B9C,0x2B5C,0x235C,0x233B,0x233B,0x1B3B,0x1B5A,0x1B3A,0x131A,0x0AF9,0x0AF9,0x1319,0x133A,0x131A,0x237B,0x239B,0x2BBC,0x3C1E,0x445F,0x33FE,0x237B,0x237C,0x237C,0x1B3B,0x1B3B,0x1AFA,0x1AFA,0x1AFA,0x1B1A,0x1B1A,0x1B1B,0x235B,0x2B7C,0x233B,0x2B5C,0x233B,0x2B7C,0x2B5C,0x2B7C,0x235C,0x2B7C,0x235B,0x2B7C,0x235B,0x235C,0x235B,0x2B7C,0x2B5C,0x339C,0x2B7C,0x339C,0x337C,0x339D,0x339C,0x339C,0x2B7C,0x33BD,0x337C,0x339C,0x339C,0x337C,0x2B7C,0x339C,0x2B7C,0x339C,0x2B7C,0x339C,0x2B7C,0x339C,0x2B7C,0x2B5B,0x233B,0x1B1A,0x1B1A,0x1B1A,0x131A,0x1319,0x133A,0x1319,0x1339,0x133A,0x1319,0x1B5A,0x2BBC,0x2BDC,0x33FD,0x3C1D,0x4C9F,0x54DF,0x4C9F,0x445E,0x33DC,0x33BC,0x237B,0x237B,0x2B9B,0x33BC,0x2B7B,0x2B9C,0x2B7B,0x2B5B,0x2B3B, + 0x01D7,0x01F7,0x01F7,0x01D7,0x01D6,0x01D6,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01D6,0x01F6,0x01D6,0x01D6,0x01D6,0x01F7,0x01B6,0x01B6,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01B6,0x01D6,0x01B5,0x01B5,0x01D5,0x01D5,0x0216,0x0216,0x0216,0x0236,0x0236,0x0236,0x0AB8,0x12F9,0x235B,0x33DD,0x339C,0x1ADA,0x0A37,0x01F6,0x01D6,0x01D6,0x01F6,0x01F6,0x01F6,0x01F6,0x01D6,0x01F6,0x01D6,0x01D6,0x01F6,0x01F6,0x01F7,0x01F7,0x01D6,0x01F6,0x01D6,0x01F7,0x0217,0x01F7,0x01D6,0x01D7,0x01D6,0x01F7,0x01F6,0x01F7,0x01F6,0x01F7,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F7,0x01D6,0x01D6,0x01F6,0x01F7,0x01D6,0x01F7,0x01B6,0x01D6,0x01F6,0x01F6,0x01B6,0x01D6,0x01D6,0x01D6,0x01F6,0x0217,0x01F6,0x01F6,0x0217,0x0216,0x01F6,0x01F6,0x01D6,0x01F6,0x01F6,0x0216,0x0217,0x0257,0x0AB8,0x1B5B,0x2BBD,0x2B9C,0x0A98,0x0216,0x0237,0x0217,0x01F6,0x01F6,0x01F6,0x0217,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D7,0x0217,0x01F7,0x01B6,0x01D6,0x01F7,0x01D6,0x01F7,0x01F7,0x01D6,0x01D6,0x01D6,0x01D6,0x0217,0x0217,0x0217,0x0217,0x01F7,0x01D7,0x01D6,0x01F7,0x01F7,0x01F7,0x01F7,0x01F6,0x01F6,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D6,0x01F7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F6,0x01F7,0x01F6,0x01F6,0x0237,0x0237,0x0237,0x0237,0x0257,0x12FA,0x1B5B,0x1B1A,0x12FA,0x0A98,0x0237,0x01F7,0x0237,0x0217,0x01F7,0x01F7,0x01D6,0x01D6,0x01F7,0x01F7,0x01D6,0x01F7,0x01F7,0x0A18,0x0217,0x0218,0x01D6,0x01D7,0x01D6,0x01D6,0x01D7,0x01F7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01F7,0x01D6,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x0217,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0217,0x0217,0x01F6,0x0217,0x0217,0x0237,0x0278,0x0278,0x12DA,0x237C,0x131A,0x0AB9,0x0A98,0x0278,0x0217,0x01D6,0x01D6,0x0217,0x0217,0x01B6,0x01D6,0x01F7,0x01F7,0x0218,0x01F7,0x01D7,0x01D6,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x01D7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0237,0x0237,0x0216,0x0217,0x0257,0x0298,0x237C,0x239C,0x1B3B,0x0AB9,0x0237,0x0217,0x01F7,0x0217,0x0217,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x0218,0x01D7,0x01D7,0x01D7,0x01F8,0x01F7,0x01F7,0x01F7,0x0218,0x01F7,0x0217,0x0217,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x0217,0x0257,0x0298,0x343E,0x02B8,0x0278,0x0237,0x0217,0x01F7,0x0217,0x0217,0x0218,0x01F7,0x01F7,0x0217,0x01D7,0x01F7,0x0218,0x01F7,0x01F7,0x0218,0x01F7,0x0218,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x0237,0x0298,0x2BFE,0x133B,0x0237,0x0238,0x0217,0x0237,0x0238,0x0218,0x01F7,0x01F7,0x0218,0x0217,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01F8,0x01F8,0x01F8,0x01F7,0x01F8,0x01F8,0x01F8,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0218,0x0218,0x01D7,0x01D7,0x01D7,0x01F7,0x0217,0x0217,0x01F7,0x01D6,0x12FA,0x1B3B,0x0278,0x0217,0x0217,0x0217,0x0218,0x01F7,0x01F7,0x0218,0x0218,0x0218,0x0218,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F8,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0217,0x0257,0x0298,0x2BFE,0x02B9,0x0299,0x0217,0x01F7,0x01F7,0x0217,0x0218,0x0238,0x0218,0x01F7,0x0218,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F8,0x01F7,0x0218,0x01F8,0x01F8,0x01F7,0x01F7,0x01F7,0x0218,0x01F7,0x01F7,0x0237,0x0217,0x01F6,0x01F6,0x0237,0x0257,0x0298,0x3C5F,0x1B7C,0x0278,0x0278,0x0258,0x0217,0x0217,0x0217,0x0218,0x0217,0x0217,0x01F7,0x0218,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x0217,0x0217,0x0217,0x01F7,0x01F7,0x0218,0x0218,0x0A18,0x0218,0x0A38,0x0A18,0x0A18,0x0A17,0x09F7,0x0A18,0x1238,0x1237,0x1A58,0x2258,0x2238,0x2A17,0x31B6,0x4194,0x7257,0x9297,0x9A35,0x99F4,0xA1D4,0xA9F4,0xA1B3,0xB1F4,0xB1F4,0xA9D3,0xA9B3,0xA9D3,0xA9D3,0xB1D3,0xB1D3,0xB1D3,0xB1F3,0xB1D3,0xB1D3,0xA9B2,0xB1F3,0xA9B3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xAA14,0xA235,0x9A14,0x8A15,0x92B8,0x5194,0x3195,0x1995,0x11D6,0x09F7,0x0A17,0x0238,0x0A38,0x0238,0x01F7,0x0218,0x01F7,0x0218,0x01F7,0x01F7,0x01F7,0x01D7,0x01F7,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01D6,0x01D7,0x01D7,0x01F7,0x01D6,0x01D6,0x01D6,0x01D7,0x01F7,0x01F7,0x01D6,0x01D6,0x01F7,0x01D7,0x01D6,0x01D6,0x01D6,0x01F7,0x01F7,0x0217,0x01F6,0x01F6,0x0216,0x0216,0x01F6,0x01F6,0x01F6,0x0237,0x1B3A,0x2BBC,0x237B,0x12D9,0x0AB9,0x0237,0x01F6,0x01F6,0x01F6,0x01F6,0x0237,0x0237,0x01D6,0x01D6,0x0217,0x0217,0x01F7,0x01F7,0x01F7,0x01F7,0x01D6,0x01F7,0x01D6,0x01F7,0x01D7,0x01D7,0x01D6,0x01F7,0x01D6,0x01D6,0x01D6,0x01D7,0x01D7,0x01D7,0x01D6,0x01D7,0x01D6,0x01B6,0x01F7,0x01F6,0x01D6,0x01D6,0x01B6,0x01D6,0x01B6,0x01B6,0x01D6,0x01D6,0x01F7,0x01F7,0x01B6,0x01D6,0x01D6,0x01F7,0x0217,0x01F7,0x01F6,0x01D6,0x01D6,0x01D6,0x01F6,0x01F6,0x01F6,0x0216,0x0216,0x0216,0x01F5,0x01F5,0x0236,0x12F9,0x341E,0x239C,0x12FA,0x0278,0x0257,0x0217,0x01F6,0x0217,0x01F7,0x01F6,0x01F6,0x01F6,0x01F7,0x0217,0x01F6,0x01F7,0x01F6,0x01F7,0x01D6,0x01D6,0x01B6,0x01D6,0x01D6,0x01D6,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x0195,0x01B6,0x01B6,0x01B6,0x01D6,0x01F7,0x01B5,0x0195,0x0196,0x01B6,0x01B6,0x01B6,0x01D6,0x01B6,0x01D6,0x01F6,0x01B6,0x01D6,0x01B6,0x01D6,0x01D6,0x01F6,0x01F6,0x01F6,0x01F5,0x01F5,0x01D5,0x01D5,0x01F6,0x0217,0x01F6,0x01D6,0x01D6,0x01F6,0x0A98,0x233B,0x33FD,0x235B,0x0257,0x0217,0x0217,0x01F6,0x01D6,0x01F6,0x01F7,0x01D6,0x0217,0x01F7,0x01F7,0x01F6,0x01B6,0x01D6,0x01D6,0x01F6,0x01D6,0x01D6,0x01D6,0x01F6,0x01D6,0x01B6,0x01B5,0x01B6,0x01B6,0x01B5,0x01B5,0x01B6,0x01B5,0x01B5,0x01B6,0x01B6,0x01B5,0x01D5,0x01D6,0x01B5,0x01D6,0x01D6,0x01D6,0x01D6,0x01B5,0x01D6,0x01B5,0x01D5,0x01D5,0x01B5,0x01D6,0x01D6,0x01D6,0x01D5,0x01D5,0x01F5,0x01F5,0x01F5,0x01F5,0x0216,0x01F5,0x01F5,0x01F5,0x01F5,0x01D5,0x01D5,0x01F6,0x0A57,0x0A57,0x1298,0x2B7B,0x2B7B,0x235A,0x12D8,0x0236,0x0216,0x0216,0x01F5,0x01F5,0x01D5,0x01D5,0x01D5,0x01B5,0x01B5, + 0x01B6,0x0195,0x0195,0x01B6,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0175,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x01B5,0x01B5,0x01D5,0x01F5,0x0216,0x0236,0x0257,0x12D9,0x237B,0x3BFD,0x2B9C,0x1AD9,0x0A57,0x01D5,0x01B5,0x01B5,0x0195,0x0195,0x0195,0x0195,0x0195,0x01B6,0x01B5,0x01B5,0x01B5,0x01B6,0x0196,0x0195,0x0196,0x0195,0x0195,0x01B6,0x01B6,0x0196,0x01B6,0x01B6,0x0196,0x0196,0x0196,0x0196,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x0195,0x01B6,0x01B6,0x0195,0x0195,0x0196,0x0196,0x01B6,0x01B6,0x0195,0x0195,0x01B6,0x0195,0x01B5,0x01B6,0x01B6,0x01B5,0x01D5,0x01D5,0x01B5,0x01D5,0x01D5,0x01D5,0x01D5,0x01F6,0x01F6,0x0A78,0x235B,0x33DD,0x33BD,0x233A,0x0A78,0x01F6,0x01D6,0x01D6,0x01D5,0x01B5,0x01B5,0x0195,0x01B6,0x0196,0x0196,0x01B6,0x01B6,0x0196,0x0196,0x0196,0x01B6,0x0196,0x0196,0x0196,0x01B6,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0196,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B5,0x01D6,0x01F6,0x01F6,0x0216,0x0216,0x0A98,0x3C1E,0x33DD,0x1B1A,0x0A98,0x0216,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01B6,0x01B6,0x0196,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x01B6,0x01B6,0x01B6,0x0196,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x0196,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D7,0x01D7,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01D6,0x01D7,0x01B6,0x01D7,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01F7,0x0217,0x0237,0x12DA,0x33DE,0x2BBD,0x0A99,0x0237,0x0216,0x01F6,0x01D6,0x01B6,0x01B5,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x01B6,0x01B6,0x0196,0x01B6,0x01B6,0x0196,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B7,0x01B7,0x01B7,0x01B7,0x01B6,0x01B6,0x01D7,0x01B6,0x01D7,0x01D6,0x01B6,0x01D6,0x01F7,0x01D6,0x01D6,0x01F6,0x01D6,0x01F6,0x01F6,0x01F6,0x01F6,0x0257,0x3C1E,0x2BBD,0x0A98,0x0237,0x0217,0x01F6,0x01D6,0x01D6,0x01B6,0x01D6,0x01D6,0x01D6,0x01B6,0x01B6,0x01D7,0x01D7,0x01B7,0x01B7,0x01B7,0x01B7,0x01D7,0x01B7,0x01B7,0x01D7,0x01D7,0x01D7,0x01B6,0x01D7,0x01D7,0x01B7,0x01D7,0x01B7,0x01D7,0x01B7,0x01B6,0x01B6,0x01B6,0x01D6,0x01D6,0x01B6,0x01D7,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01D6,0x01B6,0x01D7,0x01D6,0x01D6,0x01B6,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B6,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D6,0x01D7,0x01F7,0x01F7,0x0217,0x0257,0x3C3E,0x1B3B,0x0237,0x0217,0x01D6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B7,0x01B6,0x01D7,0x01B7,0x01B7,0x01B7,0x01D7,0x01B6,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B6,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B6,0x01B7,0x01B7,0x01B6,0x01B6,0x01D7,0x01B7,0x01B7,0x01B7,0x01D7,0x01B7,0x01B7,0x01B6,0x01B7,0x01B6,0x01B7,0x01B6,0x01D6,0x01D7,0x01D7,0x01B6,0x01D7,0x01D7,0x01D7,0x01D6,0x01F7,0x0217,0x12FA,0x2BBD,0x0238,0x01F7,0x01D7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B7,0x01D7,0x01B7,0x01B7,0x01B7,0x01B7,0x01D7,0x01B7,0x01B7,0x01D7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01D7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01D7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B6,0x01B7,0x01B6,0x01B7,0x01B7,0x01D7,0x01D7,0x01D7,0x01B6,0x01B7,0x01D7,0x01B7,0x01B7,0x01D7,0x01D7,0x01B7,0x01B7,0x01D7,0x01B7,0x01D7,0x01B6,0x01D6,0x01D6,0x01D6,0x1B1A,0x1B3B,0x01F6,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B7,0x01D7,0x01D7,0x01B7,0x01B7,0x01D7,0x01B7,0x01D7,0x01D7,0x01B7,0x01B7,0x01D7,0x01D7,0x01B7,0x01B7,0x01D7,0x01D7,0x01B7,0x01B7,0x01B7,0x01D7,0x01B7,0x01D7,0x01D7,0x01B7,0x01B7,0x01D7,0x01D7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01B7,0x01D7,0x01D7,0x01B7,0x01B7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01F6,0x01F6,0x0217,0x0257,0x239D,0x131B,0x0258,0x01F7,0x01D7,0x01D7,0x01D7,0x01F7,0x01B6,0x01B7,0x01D7,0x01D7,0x01D7,0x01B7,0x01D7,0x01D7,0x01B7,0x01B7,0x01B7,0x01D7,0x01D7,0x01B7,0x01B7,0x01D7,0x01B7,0x01B7,0x01B7,0x01B7,0x01D7,0x01D7,0x01B7,0x01B7,0x01D7,0x01D7,0x01B7,0x01B7,0x01D7,0x01B7,0x01B7,0x01B7,0x01B7,0x01D7,0x01B6,0x01B6,0x01B7,0x01B7,0x01D7,0x01B7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D6,0x01D6,0x01D6,0x01F6,0x0216,0x0237,0x12D9,0x4CDF,0x0278,0x0258,0x0217,0x01F7,0x01D7,0x01D7,0x01D7,0x01D6,0x01D6,0x01D7,0x01B7,0x01D7,0x01D7,0x01B6,0x01D6,0x01D7,0x01D7,0x01D7,0x01D6,0x01D7,0x01D7,0x01D7,0x01D7,0x01B6,0x01B6,0x01D7,0x01D7,0x01B7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01F7,0x01D7,0x01F7,0x01D7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x09F7,0x09F7,0x09F7,0x09F7,0x1217,0x11F7,0x19F7,0x21D6,0x31F7,0x3995,0x4994,0x8AD8,0x9256,0x9A15,0xA214,0xA1F3,0xA9F4,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xB1D3,0xA9D3,0xB1D3,0xB1D3,0xB1D3,0xB1F3,0xB1F3,0xA9B3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xA9F3,0xA9F4,0xAA14,0xA214,0x9A15,0x9235,0x8A77,0x59B4,0x3174,0x21B6,0x09B6,0x09B6,0x01D6,0x01F7,0x01F7,0x01D7,0x01D7,0x01D7,0x01D7,0x01D7,0x01B7,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F6,0x01D6,0x01D6,0x01F6,0x01F6,0x01D6,0x01F6,0x0A98,0x237B,0x33DD,0x237C,0x0237,0x01F6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01D6,0x01F7,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x01B6,0x01B6,0x0195,0x01B6,0x01B6,0x01B6,0x01B6,0x0195,0x01B5,0x01D6,0x0195,0x01B6,0x01D6,0x01B6,0x01B5,0x01B5,0x01B5,0x01D5,0x01D5,0x01D5,0x01D5,0x01F5,0x01F5,0x0236,0x1B1A,0x33FE,0x33DD,0x12FA,0x0237,0x0216,0x01F6,0x01D6,0x01B6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D6,0x01B6,0x0196,0x01B5,0x01B6,0x01B6,0x0195,0x0196,0x01B6,0x0196,0x01B6,0x0196,0x01B6,0x0196,0x0195,0x01B6,0x0195,0x0196,0x0196,0x0195,0x01B6,0x0196,0x0195,0x0195,0x0195,0x0175,0x0196,0x0195,0x0195,0x0196,0x0196,0x0195,0x0195,0x0195,0x0195,0x0195,0x01B5,0x01B5,0x01B5,0x01B5,0x01B5,0x01B5,0x0195,0x01B5,0x01B5,0x01B5,0x01B5,0x01B5,0x01B5,0x01B6,0x01D6,0x01D5,0x01F6,0x1298,0x235B,0x3BDD,0x2B7C,0x12B9,0x01F6,0x01D6,0x01D6,0x01D6,0x01B6,0x01B5,0x01B6,0x01D6,0x01B6,0x01B5,0x01B6,0x01B5,0x01B5,0x01B5,0x01B5,0x01B5,0x0195,0x0195,0x0195,0x0195,0x01B5,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0194,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0194,0x01B4,0x01B4,0x01B5,0x01B5,0x01B5,0x0194,0x0194,0x0194,0x0194,0x0194,0x0174,0x0194,0x01B4,0x01B4,0x01F5,0x0A57,0x1AF9,0x2B7B,0x2B7B,0x1AF9,0x0A77,0x0216,0x0216,0x01F5,0x01D5,0x01B5,0x0194,0x01B5, + 0x0154,0x0154,0x0154,0x0154,0x0174,0x0195,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0174,0x0154,0x0174,0x0174,0x0174,0x0174,0x0194,0x0194,0x01B4,0x01B5,0x01D5,0x0215,0x0A77,0x1AF9,0x235A,0x2B7B,0x2B7B,0x0A57,0x01B5,0x0174,0x0174,0x0174,0x0174,0x0194,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0175,0x0175,0x0155,0x0155,0x0154,0x0155,0x0155,0x0155,0x0175,0x0175,0x0196,0x0175,0x0175,0x0175,0x0175,0x0174,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0154,0x0174,0x0174,0x0175,0x0174,0x0174,0x0175,0x0174,0x0175,0x0195,0x0175,0x0175,0x0174,0x0174,0x0174,0x0195,0x0194,0x0194,0x01B4,0x0194,0x0194,0x01B5,0x01B5,0x01F5,0x0A77,0x233A,0x2B9C,0x2B9C,0x231A,0x0216,0x01B5,0x0195,0x0195,0x01B5,0x0195,0x0195,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0155,0x0175,0x0195,0x0195,0x0196,0x0175,0x0196,0x0196,0x0155,0x0155,0x0175,0x0155,0x0176,0x0195,0x0175,0x0175,0x0175,0x0175,0x01B6,0x0196,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0195,0x0175,0x0175,0x0195,0x0195,0x0195,0x0195,0x0175,0x0175,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x01B5,0x0195,0x01B5,0x01D5,0x01F5,0x0236,0x233A,0x3C1E,0x2B9C,0x12B9,0x01F6,0x01B5,0x01B5,0x01B5,0x01B5,0x0195,0x0195,0x0195,0x0195,0x0195,0x0196,0x0196,0x0195,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0195,0x0195,0x0196,0x0196,0x0196,0x0175,0x0196,0x0195,0x0175,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x01B6,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0196,0x0195,0x0195,0x0196,0x0196,0x0195,0x0175,0x0175,0x0195,0x0195,0x0196,0x0195,0x01B5,0x01B5,0x01B5,0x01B5,0x01D6,0x01D6,0x01F6,0x0217,0x1B3A,0x33DD,0x233B,0x0A37,0x01B5,0x01B5,0x01B5,0x0195,0x0195,0x0195,0x0195,0x0195,0x01B6,0x0196,0x0195,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0175,0x0196,0x0196,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0196,0x0175,0x0196,0x0196,0x0196,0x0175,0x0175,0x0175,0x0195,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0196,0x0196,0x0175,0x0196,0x0196,0x0196,0x0196,0x0196,0x0195,0x0195,0x0195,0x01B6,0x0195,0x01B6,0x01B6,0x01B6,0x01B5,0x01B5,0x01B5,0x01B5,0x01B5,0x01D6,0x01F6,0x3C1F,0x3BFE,0x0257,0x01F6,0x01F6,0x01B6,0x01D6,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x01B6,0x01B6,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x01B6,0x0195,0x0196,0x0196,0x0195,0x0195,0x0195,0x0195,0x0196,0x0195,0x0196,0x0196,0x0195,0x0195,0x0196,0x0195,0x01B6,0x01B6,0x0195,0x0196,0x0196,0x0196,0x01B6,0x01B6,0x01B6,0x01B6,0x01B5,0x01B6,0x01D6,0x01D6,0x01D6,0x01D6,0x2B9C,0x2BBD,0x0237,0x01F6,0x01D6,0x01B6,0x01B6,0x0196,0x0196,0x0195,0x0196,0x0196,0x0196,0x0196,0x0196,0x0176,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0176,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0196,0x0195,0x0195,0x0195,0x0196,0x0196,0x0196,0x01B6,0x01B6,0x01D6,0x01B6,0x01D6,0x01B6,0x01B6,0x01D6,0x01D6,0x01F6,0x2B9C,0x12FA,0x0217,0x01D6,0x01D6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x01B6,0x0196,0x01B6,0x0196,0x0196,0x0196,0x01B6,0x0196,0x0196,0x0196,0x01B6,0x0196,0x0196,0x0196,0x0196,0x01B6,0x01B6,0x0196,0x0196,0x01B6,0x0195,0x0195,0x01B6,0x01B6,0x235B,0x1B3B,0x01B6,0x01B6,0x01B6,0x0196,0x0196,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x01B6,0x0196,0x01B6,0x0196,0x0196,0x01B6,0x01B6,0x0196,0x0196,0x0196,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x01B6,0x0196,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x01B6,0x0196,0x01B6,0x01B6,0x0196,0x0196,0x01B6,0x01B6,0x01B6,0x01B6,0x0196,0x0195,0x01B5,0x01B5,0x01F6,0x0237,0x12FA,0x2BBD,0x01F6,0x01D7,0x01D7,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x01B6,0x0196,0x01B6,0x0196,0x0196,0x0176,0x0196,0x0196,0x0196,0x0196,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x01B6,0x01B6,0x0196,0x0196,0x0196,0x0196,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0196,0x01D7,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B5,0x01B5,0x01D6,0x01F6,0x0237,0x239C,0x2BBD,0x01F6,0x0217,0x01F6,0x01B6,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0195,0x0196,0x0196,0x0195,0x0195,0x01B6,0x0195,0x01B6,0x0196,0x0196,0x0196,0x0196,0x01B6,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01B6,0x01D7,0x01B6,0x01B6,0x01B6,0x01D6,0x09F6,0x09D6,0x09D6,0x11D6,0x11B5,0x29D6,0x31B5,0x3974,0x6A36,0x8A76,0x9A35,0xA235,0xA1F4,0xA1B3,0xA9D3,0xA9D3,0xA9D3,0xA9B3,0xA9D3,0xA9B3,0xB1F3,0xA9B3,0xA9B2,0xB1F3,0xA9B2,0xA9D3,0xA9B3,0xB1F3,0xB1F3,0xB1F3,0xB1F3,0xA9D3,0xA9D3,0xA9F4,0xA214,0xA235,0x9A56,0x8A77,0x5173,0x3174,0x1974,0x11B5,0x0195,0x0195,0x01B5,0x01B6,0x01B6,0x01B6,0x0196,0x01B6,0x0196,0x0196,0x0175,0x0196,0x0196,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x01B5,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x01B5,0x01B5,0x0195,0x0195,0x01B5,0x0195,0x01D6,0x01D5,0x01D5,0x01B5,0x01D5,0x01D5,0x01D5,0x01D5,0x0216,0x1B1A,0x33BC,0x235B,0x0A57,0x01F6,0x01B6,0x01B5,0x0195,0x01B5,0x01B6,0x01B5,0x01B6,0x01B5,0x01B5,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0175,0x0175,0x0175,0x0196,0x0195,0x01B6,0x0195,0x0196,0x0175,0x0196,0x0196,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0154,0x0174,0x0154,0x0175,0x0175,0x0174,0x0174,0x0195,0x0174,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0195,0x0195,0x0195,0x0195,0x0194,0x0194,0x0194,0x0194,0x01B5,0x01B5,0x01D5,0x01D5,0x01B5,0x01D5,0x0216,0x235B,0x33BC,0x1B1A,0x0237,0x01F6,0x01B5,0x01B5,0x0195,0x0195,0x0195,0x0174,0x0175,0x0174,0x0195,0x0195,0x0174,0x0175,0x0195,0x0174,0x0195,0x0195,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0174,0x0175,0x0174,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0195,0x0175,0x0175,0x0175,0x0154,0x0154,0x0155,0x0175,0x0174,0x0174,0x0175,0x0174,0x0175,0x0174,0x0174,0x0194,0x0174,0x0194,0x01B5,0x0174,0x0194,0x0194,0x0195,0x0174,0x0174,0x0174,0x0194,0x0174,0x01B5,0x01B5,0x01B5,0x01B5,0x1298,0x2B7B,0x2B5B,0x231A,0x0A57,0x01F6,0x01B5,0x0195,0x0194,0x0194,0x0175,0x0175,0x0195,0x0194,0x0194,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0195,0x0195,0x0174,0x0174,0x0154,0x0174,0x0174,0x0174,0x0195,0x0174,0x0174,0x0174,0x0174,0x0174,0x0154,0x0154,0x0174,0x0174,0x0154,0x0154,0x0174,0x0174,0x0154,0x0154,0x0174,0x0174,0x0194,0x0174,0x0194,0x0194,0x0174,0x0174,0x0174,0x0174,0x0174,0x0154,0x0154,0x0174,0x0153,0x0154,0x0174,0x0174,0x0194,0x0194,0x0194,0x01F5,0x1AD8,0x339B,0x2BBB,0x1B19,0x0277,0x0236,0x01D4,0x01B4,0x0194,0x0194, + 0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0133,0x0154,0x0154,0x0153,0x0153,0x0153,0x0153,0x0133,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0173,0x0174,0x0173,0x01B4,0x01B4,0x01D5,0x0A56,0x2B5A,0x2B7A,0x1AF9,0x0A77,0x01F5,0x01B4,0x0194,0x0174,0x0153,0x0153,0x0154,0x0154,0x0174,0x0153,0x0174,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0175,0x0154,0x0154,0x0174,0x0154,0x0154,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0154,0x0174,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0174,0x0174,0x0154,0x0174,0x0154,0x0154,0x0174,0x0174,0x0194,0x0194,0x0194,0x0194,0x01B4,0x01D4,0x0A57,0x339B,0x3BDD,0x235A,0x1277,0x01F5,0x01B5,0x0194,0x0194,0x0174,0x0174,0x0174,0x0174,0x0174,0x0154,0x0154,0x0154,0x0154,0x0175,0x0175,0x0155,0x0155,0x0155,0x0155,0x0155,0x0155,0x0175,0x0175,0x0175,0x0175,0x0155,0x0154,0x0155,0x0155,0x0175,0x0175,0x0155,0x0175,0x0154,0x0154,0x0175,0x0175,0x0175,0x0175,0x0154,0x0175,0x0175,0x0175,0x0154,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0174,0x0174,0x0174,0x0174,0x0174,0x0194,0x0174,0x0174,0x0194,0x0174,0x0194,0x0194,0x0194,0x01B5,0x01D5,0x1AD9,0x3BFD,0x33BC,0x1298,0x01D5,0x01B5,0x01B5,0x0194,0x0194,0x0194,0x0195,0x0174,0x0174,0x0174,0x0175,0x0175,0x0196,0x0175,0x0155,0x0175,0x0175,0x0175,0x0175,0x0154,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0195,0x0175,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0175,0x0195,0x0175,0x0175,0x0195,0x0175,0x0175,0x0195,0x0175,0x0195,0x0195,0x0195,0x01B5,0x01B5,0x01B5,0x01D5,0x1278,0x339C,0x2B5B,0x0A57,0x01F6,0x01B5,0x01B5,0x0195,0x0195,0x0174,0x0174,0x0175,0x0195,0x0195,0x0175,0x0175,0x0195,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0155,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0194,0x01B5,0x01B5,0x01F6,0x3BDD,0x33DD,0x0237,0x01D6,0x01B5,0x0195,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0195,0x0175,0x0196,0x0196,0x0195,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0195,0x0175,0x0196,0x0195,0x0195,0x0196,0x0175,0x0175,0x0195,0x0196,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0175,0x0175,0x0195,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0175,0x0175,0x0195,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x01B5,0x01D5,0x0A57,0x4C7F,0x0257,0x01F6,0x01B6,0x0195,0x0195,0x0195,0x0175,0x0195,0x0175,0x0175,0x0196,0x0196,0x0196,0x0176,0x0196,0x0175,0x0196,0x0196,0x0196,0x0195,0x0195,0x0195,0x0195,0x0195,0x0175,0x0195,0x0176,0x0175,0x0175,0x0195,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0175,0x0175,0x0175,0x0195,0x0175,0x0195,0x0195,0x0175,0x0195,0x0196,0x0195,0x0175,0x0195,0x0175,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x01B5,0x01B5,0x01D5,0x0216,0x3BFE,0x0257,0x01F6,0x01B6,0x01B5,0x0195,0x0195,0x01B5,0x0195,0x0195,0x0195,0x0196,0x0195,0x0195,0x0175,0x0196,0x0196,0x0175,0x0196,0x0196,0x0196,0x0196,0x0196,0x0195,0x0195,0x0196,0x0195,0x0196,0x0196,0x0196,0x0195,0x0196,0x0196,0x0175,0x0175,0x0196,0x0195,0x0175,0x0196,0x0196,0x0196,0x0195,0x0196,0x0196,0x0196,0x0195,0x0195,0x0196,0x0195,0x0195,0x0196,0x0196,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0196,0x0195,0x0196,0x0196,0x0196,0x0175,0x0195,0x0175,0x0175,0x0195,0x0195,0x0195,0x235B,0x1AD9,0x01B6,0x01B6,0x01B6,0x0196,0x0195,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0195,0x0195,0x0196,0x0196,0x0195,0x0175,0x0196,0x0195,0x0195,0x0195,0x0195,0x0196,0x0195,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0195,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0196,0x0195,0x0196,0x0196,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x01B6,0x0195,0x0195,0x0195,0x0195,0x0195,0x01B5,0x01B5,0x01F6,0x0257,0x3BFE,0x0A37,0x01B6,0x01B6,0x0196,0x0196,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0196,0x0175,0x0195,0x0195,0x0175,0x0175,0x0175,0x0195,0x0196,0x0196,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0196,0x0195,0x0175,0x0195,0x0175,0x0195,0x0175,0x0195,0x0195,0x0175,0x0175,0x0195,0x0175,0x0175,0x0195,0x0195,0x0175,0x0195,0x0175,0x0176,0x0175,0x0196,0x0196,0x0196,0x0196,0x0195,0x0196,0x0196,0x0195,0x0196,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x01B5,0x01B5,0x0216,0x0236,0x3C1E,0x12B9,0x01F6,0x01D6,0x01B5,0x0195,0x0175,0x0195,0x0175,0x0175,0x0195,0x0195,0x0175,0x0175,0x0175,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0175,0x0195,0x0175,0x0175,0x0196,0x0196,0x0195,0x0195,0x01B6,0x0196,0x0195,0x01B6,0x0196,0x01B6,0x0195,0x0195,0x01B6,0x01B6,0x0195,0x01B6,0x01B6,0x01B5,0x01B5,0x09D6,0x09B5,0x09B5,0x19D6,0x1975,0x2995,0x3154,0x4133,0x92D8,0x9255,0x9A35,0xAA34,0xA1D3,0xA9D3,0xA9D3,0xA9D3,0xB1D3,0xB1D3,0xB1D3,0xA9B3,0xB1D3,0xA9D3,0xB1D3,0xB1D3,0xA9D3,0xA9D3,0xB1F3,0xA9D3,0xB1F3,0xA9D3,0xA9D3,0xA9D3,0xA9F4,0xAA14,0xA214,0x9A55,0x92B7,0x5152,0x2912,0x1154,0x0974,0x0195,0x0195,0x01B5,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0175,0x0175,0x0195,0x0175,0x0195,0x0175,0x0174,0x0175,0x0175,0x0174,0x0195,0x0175,0x0174,0x0174,0x0175,0x0174,0x0174,0x0175,0x0174,0x0174,0x0175,0x0175,0x0174,0x0174,0x0175,0x0195,0x0175,0x0175,0x0175,0x0174,0x0194,0x0195,0x0194,0x0195,0x01B5,0x01B5,0x0194,0x01B5,0x0195,0x01B5,0x01B5,0x01F5,0x0A36,0x233A,0x2B7B,0x1298,0x01D5,0x01B5,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0175,0x0175,0x0174,0x0174,0x0174,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0155,0x0175,0x0154,0x0154,0x0174,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0174,0x0154,0x0174,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0194,0x01B5,0x0194,0x0194,0x01B4,0x0194,0x0194,0x01B5,0x0216,0x1AD9,0x33BC,0x1AD9,0x01B5,0x01B4,0x0195,0x0194,0x0174,0x0154,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0174,0x0174,0x0154,0x0154,0x0154,0x0154,0x0174,0x0174,0x0154,0x0154,0x0134,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0174,0x0154,0x0154,0x0174,0x0154,0x0154,0x0174,0x0174,0x0174,0x0174,0x0154,0x0174,0x0154,0x0154,0x0174,0x0154,0x0174,0x0174,0x0174,0x0194,0x0194,0x0194,0x01B4,0x01F5,0x12B8,0x2B7B,0x2B7B,0x1277,0x01D5,0x0194,0x0194,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0154,0x0154,0x0174,0x0174,0x0153,0x0154,0x0154,0x0153,0x0174,0x0153,0x0153,0x0174,0x0153,0x0154,0x0154,0x0154,0x0154,0x0153,0x0153,0x0153,0x0154,0x0154,0x0153,0x0174,0x0154,0x0153,0x0154,0x0153,0x0153,0x0153,0x0133,0x0154,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0173,0x0153,0x0174,0x0173,0x0193,0x01B4,0x0236,0x1297,0x2B7A,0x2B5A,0x0A56,0x01F5,0x0173,0x0173, + 0x0154,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0154,0x0174,0x0153,0x0174,0x0173,0x0153,0x0153,0x0133,0x0133,0x0153,0x0153,0x0173,0x0153,0x0173,0x0153,0x0173,0x0193,0x0193,0x01B4,0x0215,0x1AB7,0x2B5A,0x335A,0x1256,0x01B4,0x0194,0x0173,0x0173,0x0173,0x0153,0x0153,0x0153,0x0133,0x0133,0x0133,0x0153,0x0153,0x0174,0x0153,0x0174,0x0153,0x0133,0x0154,0x0133,0x0133,0x0134,0x0154,0x0174,0x0133,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0174,0x0154,0x0174,0x0154,0x0174,0x0154,0x0134,0x0134,0x0154,0x0154,0x0174,0x0174,0x0154,0x0153,0x0154,0x0154,0x0174,0x0153,0x0154,0x0153,0x0153,0x0153,0x0153,0x0153,0x0174,0x0173,0x0174,0x0194,0x0194,0x01B4,0x01F4,0x0A76,0x233A,0x33BC,0x2319,0x0A56,0x0194,0x0173,0x0174,0x0174,0x0174,0x0154,0x0154,0x0153,0x0154,0x0154,0x0174,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0175,0x0134,0x0154,0x0154,0x0155,0x0175,0x0154,0x0154,0x0154,0x0175,0x0154,0x0154,0x0154,0x0154,0x0174,0x0175,0x0195,0x0154,0x0154,0x0154,0x0174,0x0154,0x0174,0x0174,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0195,0x0175,0x0174,0x0154,0x0154,0x0154,0x0174,0x0174,0x0153,0x0174,0x0174,0x0174,0x0174,0x0174,0x0194,0x0194,0x0194,0x01B4,0x1257,0x335B,0x3B9C,0x1AB8,0x01B4,0x0194,0x0194,0x0174,0x0174,0x0174,0x0194,0x0174,0x0174,0x0174,0x0174,0x0154,0x0174,0x0175,0x0175,0x0175,0x0175,0x0154,0x0174,0x0174,0x0195,0x0175,0x0174,0x0154,0x0175,0x0175,0x0175,0x0175,0x0154,0x0174,0x0154,0x0174,0x0175,0x0175,0x0195,0x0175,0x0195,0x0174,0x0195,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0195,0x0174,0x0195,0x0175,0x0195,0x0154,0x0154,0x0154,0x0154,0x0174,0x0195,0x0174,0x0174,0x0174,0x0174,0x0194,0x0194,0x01B4,0x01B4,0x01B4,0x01D5,0x1AF9,0x337C,0x1298,0x01F5,0x01D5,0x01B5,0x0195,0x0174,0x0174,0x0174,0x0195,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0195,0x0175,0x0195,0x0175,0x0175,0x0175,0x0195,0x0175,0x0195,0x0174,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0174,0x0175,0x0195,0x0175,0x0175,0x0195,0x0175,0x0195,0x0175,0x0175,0x0175,0x0195,0x0175,0x0195,0x0175,0x0175,0x0174,0x0195,0x0195,0x0174,0x0174,0x0195,0x0174,0x01B5,0x0195,0x0174,0x0174,0x0194,0x01B5,0x01B5,0x0216,0x2B5B,0x231A,0x0216,0x01D6,0x0195,0x0174,0x0174,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x01B6,0x0195,0x0195,0x0195,0x0195,0x0175,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0175,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0175,0x0175,0x0195,0x0175,0x0174,0x0195,0x0195,0x01B5,0x0195,0x0195,0x0194,0x0174,0x0174,0x01B5,0x01D5,0x01F6,0x441E,0x12B9,0x01F6,0x01D6,0x0195,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x01B6,0x0195,0x01B6,0x0196,0x0175,0x0175,0x0175,0x0175,0x01B6,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0175,0x0175,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x01B6,0x0195,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0175,0x0175,0x0175,0x0195,0x0195,0x0175,0x0195,0x0175,0x0195,0x0195,0x01B5,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x01B5,0x01D5,0x1AD9,0x33BC,0x0216,0x01D5,0x01B5,0x01B5,0x01B5,0x0195,0x0195,0x0195,0x01B5,0x0195,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0175,0x0196,0x0175,0x0195,0x0175,0x0195,0x0175,0x0195,0x0175,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0175,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0195,0x01B6,0x0195,0x0195,0x0175,0x0175,0x0195,0x0175,0x0155,0x0175,0x0174,0x0175,0x0195,0x1AFA,0x12B8,0x01B5,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0175,0x0196,0x0196,0x0196,0x0195,0x0195,0x0195,0x0175,0x0175,0x0196,0x01B6,0x0196,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0175,0x0195,0x0196,0x0195,0x0195,0x0195,0x0196,0x0196,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0174,0x01B5,0x0195,0x0195,0x01B5,0x01D6,0x2B5B,0x2B5C,0x01B5,0x0195,0x0195,0x0175,0x0195,0x0195,0x0195,0x0195,0x0175,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0195,0x0175,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0154,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0174,0x0175,0x0195,0x0195,0x0194,0x0194,0x0194,0x0195,0x01B5,0x01D5,0x0A37,0x3BFD,0x0A37,0x01B5,0x0195,0x0175,0x0174,0x0154,0x0154,0x0154,0x0175,0x0195,0x0175,0x0195,0x0174,0x0154,0x0174,0x0195,0x0175,0x0195,0x0175,0x0175,0x0195,0x0175,0x0155,0x0175,0x0175,0x0175,0x0175,0x0195,0x0195,0x0195,0x0195,0x0195,0x0195,0x0196,0x0195,0x01B6,0x01B5,0x0195,0x0195,0x01B6,0x0195,0x01B6,0x01B5,0x09D6,0x09D6,0x09D6,0x09B5,0x09B5,0x1195,0x1995,0x2175,0x2954,0x3112,0x7256,0x9AB7,0x9A15,0xA1F4,0xAA14,0xA9F4,0xA9D3,0xB1D3,0xB1D3,0xB1D3,0xB1D3,0xB1F3,0xB1D3,0xA9D3,0xA9B3,0xA9D3,0xB1F3,0xA9D3,0xA9D3,0xB1F4,0xB1F4,0xB1F3,0xA9D3,0xB1F4,0xA9D3,0xA9F4,0xA214,0x9A35,0x9297,0x61D4,0x1890,0x1133,0x0133,0x0174,0x0174,0x0174,0x0195,0x0175,0x0195,0x0175,0x0155,0x0155,0x0154,0x0154,0x0195,0x0174,0x0195,0x0174,0x0174,0x0175,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0175,0x0174,0x0174,0x0154,0x0174,0x0174,0x0195,0x0174,0x0195,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0194,0x0194,0x0194,0x0174,0x0174,0x0194,0x0174,0x0174,0x0174,0x0194,0x0194,0x0194,0x01B4,0x1277,0x2B5B,0x1AD9,0x01F5,0x01B4,0x0194,0x0194,0x0195,0x0174,0x0174,0x0174,0x0154,0x0174,0x0174,0x0195,0x0154,0x0174,0x0174,0x0195,0x0174,0x0174,0x0154,0x0174,0x0174,0x0154,0x0154,0x0175,0x0175,0x0175,0x0154,0x0154,0x0154,0x0174,0x0154,0x0174,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0153,0x0174,0x0174,0x0154,0x0154,0x0154,0x0134,0x0154,0x0154,0x0174,0x0174,0x0154,0x0154,0x0153,0x0153,0x0174,0x0174,0x0154,0x0154,0x0174,0x0173,0x0194,0x0174,0x0174,0x0173,0x0174,0x0194,0x0194,0x0194,0x01D5,0x22F9,0x2B3A,0x1256,0x01B4,0x0194,0x0174,0x0174,0x0174,0x0174,0x0174,0x0153,0x0153,0x0153,0x0173,0x0173,0x0174,0x0174,0x0174,0x0153,0x0154,0x0174,0x0174,0x0154,0x0154,0x0133,0x0154,0x0153,0x0154,0x0154,0x0174,0x0154,0x0133,0x0133,0x0133,0x0154,0x0133,0x0134,0x0133,0x0133,0x0154,0x0133,0x0154,0x0133,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0153,0x0153,0x0173,0x0173,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0173,0x0173,0x0173,0x0173,0x01B4,0x1A97,0x2319,0x2319,0x0A56,0x01D4,0x0194,0x0173,0x0173,0x0174,0x0153,0x0153,0x0133,0x0133,0x0153,0x0133,0x0153,0x0153,0x0153,0x0153,0x0133,0x0153,0x0153,0x0133,0x0153,0x0153,0x0133,0x0133,0x0153,0x0153,0x0153,0x0153,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0133,0x0153,0x0133,0x0133,0x0153,0x0153,0x0153,0x0153,0x0133,0x0153,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0153,0x0153,0x0133,0x0153,0x0153,0x0173,0x0173,0x0173,0x0173,0x0193,0x01F5,0x1AB7,0x335A,0x2B3A,0x1256, + 0x0133,0x0133,0x0153,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0132,0x0153,0x0153,0x0132,0x0153,0x0133,0x0153,0x0153,0x0153,0x0173,0x0173,0x0173,0x01B4,0x22B8,0x335A,0x2B39,0x1297,0x0A15,0x01B4,0x0193,0x0173,0x0153,0x0133,0x0153,0x0133,0x0153,0x0132,0x0133,0x0112,0x0133,0x0153,0x0133,0x0153,0x0133,0x0133,0x0153,0x0133,0x0133,0x0133,0x0133,0x0153,0x0133,0x0153,0x0133,0x0133,0x0153,0x0133,0x0133,0x0153,0x0133,0x0153,0x0153,0x0154,0x0154,0x0133,0x0154,0x0174,0x0154,0x0154,0x0174,0x0133,0x0133,0x0154,0x0133,0x0154,0x0154,0x0154,0x0133,0x0133,0x0133,0x0153,0x0153,0x0133,0x0133,0x0153,0x0133,0x0153,0x0133,0x0153,0x0153,0x0173,0x0193,0x0194,0x01D4,0x1A97,0x337A,0x2B39,0x1297,0x0215,0x0194,0x0173,0x0153,0x0153,0x0153,0x0133,0x0153,0x0153,0x0133,0x0153,0x0153,0x0154,0x0153,0x0174,0x0154,0x0154,0x0154,0x0154,0x0134,0x0154,0x0154,0x0154,0x0134,0x0134,0x0134,0x0134,0x0134,0x0134,0x0134,0x0174,0x0154,0x0134,0x0134,0x0154,0x0134,0x0154,0x0174,0x0154,0x0154,0x0154,0x0134,0x0154,0x0174,0x0133,0x0133,0x0154,0x0133,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0153,0x0154,0x0153,0x0153,0x0153,0x0173,0x0153,0x0173,0x0173,0x0173,0x0193,0x01B4,0x1256,0x333A,0x3B7B,0x1A98,0x01B4,0x0173,0x0153,0x0153,0x0153,0x0153,0x0154,0x0154,0x0154,0x0154,0x0154,0x0153,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0174,0x0154,0x0174,0x0174,0x0154,0x0154,0x0174,0x0174,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0174,0x0174,0x0174,0x0194,0x0174,0x0154,0x0174,0x0174,0x0174,0x0154,0x0174,0x0174,0x0174,0x0194,0x0174,0x0174,0x0154,0x0134,0x0154,0x0154,0x0174,0x0154,0x0153,0x0174,0x0174,0x0174,0x0194,0x0194,0x01B4,0x0194,0x1257,0x339B,0x1AD8,0x01D5,0x01B5,0x01B4,0x0194,0x0174,0x0154,0x0174,0x0174,0x0154,0x0174,0x0175,0x0154,0x0154,0x0175,0x0154,0x0175,0x0174,0x0154,0x0174,0x0175,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0195,0x0174,0x0154,0x0174,0x0175,0x0154,0x0174,0x0154,0x0174,0x0174,0x0175,0x0174,0x0154,0x0174,0x0175,0x0154,0x0174,0x0154,0x0175,0x0195,0x0174,0x0154,0x0174,0x0174,0x0175,0x0174,0x0154,0x0154,0x0174,0x0174,0x0154,0x0154,0x0174,0x0154,0x0174,0x0174,0x0174,0x0153,0x0194,0x0194,0x01B4,0x0A36,0x337B,0x1AD9,0x01D5,0x0195,0x0174,0x0154,0x0154,0x0154,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0154,0x0175,0x0154,0x0174,0x0174,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0154,0x0174,0x0175,0x0175,0x0175,0x0174,0x0174,0x0174,0x0174,0x0174,0x0195,0x0174,0x0195,0x0195,0x0195,0x0174,0x0174,0x0195,0x0175,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0154,0x0174,0x0174,0x0194,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0194,0x01B4,0x3BBC,0x22F9,0x01F6,0x01B5,0x0174,0x0154,0x0174,0x0154,0x0174,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0155,0x0155,0x0175,0x0155,0x0195,0x0175,0x0155,0x0175,0x0195,0x0175,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0174,0x0175,0x0175,0x0195,0x0175,0x0174,0x0195,0x0195,0x0174,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0174,0x0195,0x0175,0x0174,0x0195,0x0195,0x0195,0x0195,0x0175,0x0175,0x0175,0x0174,0x0174,0x0194,0x0174,0x0174,0x01D5,0x339B,0x1AD9,0x01F5,0x01B5,0x01B5,0x0194,0x0174,0x0174,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0174,0x0175,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0195,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0175,0x0195,0x0175,0x0195,0x0175,0x0195,0x0195,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0174,0x0154,0x0174,0x0154,0x1AD9,0x12B8,0x0195,0x0195,0x0195,0x0174,0x0174,0x0195,0x0175,0x0175,0x0195,0x0175,0x0195,0x0195,0x0175,0x0175,0x0175,0x0195,0x0175,0x0175,0x0195,0x0195,0x0175,0x0195,0x0175,0x0175,0x0175,0x0195,0x0175,0x0195,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0195,0x0175,0x0174,0x0175,0x0195,0x0175,0x0175,0x0195,0x0195,0x0175,0x0175,0x0195,0x0195,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0175,0x0174,0x0175,0x0195,0x0195,0x0195,0x0195,0x0174,0x0174,0x0174,0x0174,0x0194,0x0195,0x0194,0x0194,0x0194,0x0195,0x1278,0x339C,0x01D5,0x0194,0x0174,0x0175,0x0195,0x0195,0x0174,0x0174,0x0195,0x0195,0x0175,0x0175,0x0175,0x0175,0x0174,0x0175,0x0154,0x0175,0x0175,0x0154,0x0175,0x0175,0x0175,0x0154,0x0175,0x0155,0x0175,0x0175,0x0175,0x0174,0x0175,0x0175,0x0175,0x0174,0x0175,0x0175,0x0175,0x0174,0x0175,0x0174,0x0174,0x0174,0x0175,0x0174,0x0175,0x0174,0x0174,0x0175,0x0154,0x0175,0x0175,0x0154,0x0175,0x0154,0x0175,0x0175,0x0154,0x0154,0x0154,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0174,0x0194,0x0194,0x1298,0x337B,0x01B5,0x0194,0x0174,0x0174,0x0174,0x0154,0x0154,0x0154,0x0154,0x0174,0x0174,0x0174,0x0154,0x0174,0x0154,0x0175,0x0175,0x0154,0x0154,0x0174,0x0154,0x0175,0x0154,0x0154,0x0155,0x0175,0x0174,0x0174,0x0175,0x0175,0x0174,0x0195,0x0175,0x0195,0x01B5,0x0195,0x0175,0x0195,0x0175,0x0195,0x0995,0x0195,0x0195,0x01B5,0x09B5,0x09B5,0x0995,0x0975,0x1154,0x1954,0x2954,0x3113,0x4953,0x92D8,0x9A56,0xA215,0xA1F4,0xA9F4,0xA9D3,0xA9D3,0xB1D3,0xB1F4,0xA9D3,0xA9D3,0xB1D3,0xB1F3,0xA9B2,0xB1D3,0xA9D3,0xA9D3,0xA9B3,0xA9D3,0xB1F3,0xA9D3,0xB1F3,0xA9D3,0xA9D3,0xA9D3,0xAA14,0xA235,0x9AB7,0x61B4,0x20B1,0x1933,0x0933,0x0154,0x0154,0x0174,0x0174,0x0174,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0174,0x0174,0x0174,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0174,0x0174,0x0174,0x0174,0x0174,0x0154,0x0174,0x0154,0x0153,0x0174,0x0153,0x0153,0x0174,0x0174,0x0154,0x0154,0x0154,0x0154,0x0153,0x0153,0x0174,0x0174,0x0194,0x01D5,0x1AD9,0x2B3A,0x1277,0x0194,0x0194,0x0174,0x0153,0x0153,0x0153,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0134,0x0154,0x0154,0x0133,0x0133,0x0154,0x0133,0x0154,0x0154,0x0134,0x0154,0x0154,0x0133,0x0133,0x0133,0x0153,0x0153,0x0133,0x0133,0x0133,0x0154,0x0154,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0133,0x0174,0x0153,0x0153,0x0153,0x0153,0x0153,0x0173,0x0153,0x0153,0x0153,0x0173,0x0153,0x0153,0x0174,0x0173,0x0174,0x0173,0x09F5,0x22D8,0x333A,0x1216,0x0194,0x0174,0x0173,0x0153,0x0173,0x0153,0x0153,0x0153,0x0153,0x0173,0x0153,0x0153,0x0153,0x0153,0x0133,0x0153,0x0133,0x0133,0x0153,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0133,0x0153,0x0133,0x0154,0x0153,0x0133,0x0153,0x0153,0x0133,0x0153,0x0153,0x0133,0x0133,0x0153,0x0133,0x0133,0x0133,0x0133,0x0153,0x0153,0x0133,0x0133,0x0153,0x0152,0x0153,0x0153,0x0173,0x0173,0x01B4,0x0A15,0x22F8,0x2B19,0x1A97,0x01B4,0x0193,0x0173,0x0173,0x0152,0x0152,0x0132,0x0133,0x0133,0x0132,0x0133,0x0133,0x0133,0x0133,0x0153,0x0133,0x0153,0x0153,0x0133,0x0153,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0132,0x0133,0x0132,0x0132,0x0112,0x0133,0x0153,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0133,0x0133,0x0133,0x0132,0x0133,0x0133,0x0133,0x0132,0x0132,0x0132,0x0133,0x0132,0x0133,0x0132,0x0132,0x0132,0x0152,0x0152,0x0153,0x0153,0x0173,0x0193,0x09F5,0x01F5, + 0x00F2,0x0112,0x0112,0x0133,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0132,0x0132,0x0152,0x0152,0x0172,0x01B3,0x1235,0x2AF8,0x335A,0x2AF9,0x1236,0x0172,0x0152,0x0173,0x0153,0x0153,0x0112,0x00F2,0x0112,0x0112,0x00F2,0x0132,0x0132,0x0133,0x0133,0x0133,0x0113,0x0112,0x0112,0x0113,0x0133,0x0133,0x0133,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0112,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0133,0x0133,0x0112,0x0113,0x0133,0x0133,0x0153,0x0133,0x0133,0x0133,0x0112,0x0113,0x0113,0x0133,0x0112,0x0132,0x0132,0x0133,0x0133,0x0132,0x0132,0x0132,0x0132,0x0133,0x0153,0x0173,0x01D4,0x1277,0x2B19,0x2B19,0x1A77,0x01B4,0x0173,0x0153,0x0153,0x0132,0x0132,0x0112,0x0112,0x0133,0x0113,0x0133,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0134,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0134,0x0133,0x0133,0x0134,0x0134,0x0133,0x0113,0x0113,0x0113,0x0133,0x0133,0x0133,0x0113,0x0113,0x0113,0x0154,0x0154,0x0154,0x0133,0x0133,0x0133,0x0133,0x0153,0x0113,0x0133,0x0133,0x0153,0x0133,0x0133,0x0133,0x0153,0x0133,0x0153,0x0153,0x0153,0x0153,0x0173,0x0173,0x01B4,0x0A15,0x22B8,0x333A,0x22B8,0x09D5,0x0133,0x0132,0x0132,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0154,0x0133,0x0133,0x0133,0x0154,0x0133,0x0133,0x0133,0x0133,0x0153,0x0153,0x0133,0x0133,0x0153,0x0153,0x0133,0x0154,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0153,0x0154,0x0153,0x0174,0x0174,0x0154,0x0133,0x0133,0x0153,0x0153,0x0154,0x0153,0x0133,0x0154,0x0154,0x0133,0x0133,0x0133,0x0153,0x0173,0x0173,0x0153,0x0173,0x0193,0x01D4,0x2B19,0x337B,0x0A15,0x01B4,0x01D5,0x0173,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0154,0x0154,0x0154,0x0154,0x0134,0x0154,0x0134,0x0154,0x0134,0x0154,0x0133,0x0154,0x0134,0x0134,0x0134,0x0154,0x0154,0x0134,0x0154,0x0154,0x0133,0x0134,0x0154,0x0154,0x0154,0x0154,0x0133,0x0134,0x0134,0x0154,0x0134,0x0154,0x0134,0x0154,0x0134,0x0134,0x0154,0x0154,0x0174,0x0154,0x0134,0x0134,0x0134,0x0154,0x0134,0x0154,0x0154,0x0154,0x0133,0x0133,0x0133,0x0153,0x0153,0x0174,0x0133,0x0133,0x0153,0x0174,0x01B4,0x0A16,0x335B,0x22D9,0x0194,0x0173,0x0174,0x0154,0x0153,0x0153,0x0154,0x0154,0x0154,0x0153,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0134,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0134,0x0154,0x0154,0x0134,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0174,0x0154,0x0174,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0134,0x0134,0x0154,0x0154,0x0175,0x0174,0x0153,0x0154,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0194,0x2B19,0x2B3A,0x01D5,0x01B5,0x0154,0x0133,0x0133,0x0154,0x0154,0x0154,0x0175,0x0134,0x0134,0x0134,0x0154,0x0154,0x0154,0x0154,0x0134,0x0134,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0175,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0174,0x0174,0x0174,0x0174,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0174,0x0174,0x0174,0x0154,0x0154,0x0154,0x0174,0x0154,0x0153,0x0174,0x0194,0x01F5,0x3BFD,0x0A16,0x0194,0x0194,0x0174,0x0154,0x0174,0x0153,0x0133,0x0134,0x0175,0x0154,0x0154,0x0154,0x0174,0x0154,0x0174,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0174,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0174,0x0154,0x0174,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0175,0x0154,0x0174,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0195,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0133,0x0154,0x0153,0x22D9,0x1277,0x0174,0x0174,0x0174,0x0174,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0175,0x0175,0x0175,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0155,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0174,0x0174,0x0154,0x0154,0x0174,0x0154,0x0174,0x0174,0x0154,0x0154,0x0174,0x0174,0x0154,0x0154,0x0174,0x0174,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0174,0x0174,0x0174,0x0154,0x0154,0x0174,0x0174,0x0174,0x0154,0x0154,0x0154,0x0174,0x0174,0x0174,0x0194,0x2B1A,0x0A36,0x0153,0x0154,0x0154,0x0154,0x0174,0x0174,0x0153,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0134,0x0134,0x0134,0x0154,0x0134,0x0154,0x0154,0x0134,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0134,0x0134,0x0134,0x0154,0x0154,0x0174,0x0154,0x0153,0x0153,0x0153,0x0174,0x0174,0x0174,0x0174,0x0173,0x0194,0x0194,0x2AF9,0x22D9,0x0194,0x0174,0x0153,0x0174,0x0174,0x0154,0x0154,0x0133,0x0134,0x0134,0x0154,0x0154,0x0134,0x0133,0x0134,0x0154,0x0154,0x0134,0x0134,0x0134,0x0134,0x0154,0x0154,0x0154,0x0154,0x0154,0x0174,0x0154,0x0154,0x0154,0x0154,0x0134,0x0154,0x0174,0x0174,0x0154,0x0154,0x0154,0x0154,0x0175,0x0175,0x0174,0x0174,0x0174,0x0995,0x0975,0x0974,0x1154,0x1154,0x2174,0x3154,0x38F1,0x7A56,0xA2D8,0x9A15,0xA1D4,0xA9F4,0xA9D3,0xB1D3,0xA9B3,0xB1F3,0xA9D3,0xA9D3,0xA9B3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xA9D3,0xB1D3,0xB1D3,0xB1F4,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xAA14,0xA256,0x9AB7,0x7215,0x20B0,0x1933,0x1154,0x0954,0x0133,0x0154,0x0134,0x0134,0x0133,0x0154,0x0154,0x0154,0x0174,0x0154,0x0133,0x0133,0x0153,0x0154,0x0154,0x0154,0x0153,0x0153,0x0154,0x0174,0x0153,0x0153,0x0133,0x0133,0x0133,0x0133,0x0133,0x0154,0x0153,0x0153,0x0133,0x0133,0x0133,0x0153,0x0133,0x0133,0x0153,0x0153,0x0133,0x0153,0x0133,0x0153,0x0133,0x0153,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0153,0x0173,0x0173,0x0173,0x1237,0x333A,0x22D9,0x01D5,0x0174,0x0173,0x0153,0x0153,0x0153,0x0133,0x0133,0x0133,0x0153,0x0133,0x0133,0x0133,0x0133,0x0153,0x0154,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0113,0x0133,0x0133,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0133,0x0133,0x0133,0x0153,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0132,0x0153,0x0132,0x0133,0x0133,0x0132,0x0133,0x0133,0x0153,0x0133,0x0173,0x0153,0x0153,0x0153,0x1215,0x333A,0x3319,0x1216,0x0194,0x0153,0x0153,0x0153,0x0153,0x0133,0x0153,0x0153,0x0132,0x0133,0x0133,0x0153,0x0112,0x0112,0x0112,0x0112,0x0113,0x0133,0x0113,0x0133,0x0112,0x0113,0x0133,0x0132,0x0112,0x0112,0x0133,0x0133,0x0113,0x0113,0x0113,0x0113,0x0113,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0153,0x0133,0x0133,0x0132,0x0132,0x0133,0x0133,0x0133,0x0133,0x0132,0x0132,0x0112,0x0133,0x0112,0x0132,0x0132,0x0112,0x0132,0x0132,0x0132,0x0132,0x0153,0x0152,0x0152,0x0152,0x0173,0x1215,0x22D8,0x2B19,0x1A77,0x01D4,0x0193,0x0152,0x0152,0x0132,0x0132,0x0132,0x0112,0x0112,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0133,0x0132,0x0112,0x0132,0x0132,0x0132,0x0133,0x0133,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0113,0x0113,0x0113,0x0112,0x0132,0x0133,0x0133,0x0112,0x0133,0x0112,0x0112,0x0132,0x0132,0x0133,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0132,0x0152,0x0152,0x0173,0x0152, + 0x00F2,0x0112,0x0112,0x0133,0x0133,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0132,0x0132,0x0193,0x1A76,0x3339,0x2B19,0x1A56,0x01B3,0x0152,0x0132,0x0132,0x0152,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F1,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0133,0x0112,0x0112,0x0132,0x0112,0x0133,0x0133,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0133,0x0112,0x0112,0x0133,0x0132,0x0132,0x0133,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0133,0x0133,0x0132,0x0133,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0152,0x09D4,0x2AD8,0x333A,0x22B7,0x0A15,0x0193,0x0152,0x0132,0x0132,0x0132,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0113,0x0133,0x0133,0x0112,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0133,0x0113,0x0113,0x0133,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0112,0x0112,0x0133,0x0132,0x0132,0x0133,0x0133,0x0132,0x0133,0x0133,0x0153,0x0152,0x0152,0x0153,0x0173,0x0A15,0x22D8,0x333A,0x2297,0x09B4,0x0153,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0113,0x0153,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0132,0x0153,0x0153,0x0153,0x0173,0x0153,0x1236,0x43BC,0x22B8,0x01B4,0x0193,0x0193,0x0153,0x0153,0x0133,0x0132,0x0132,0x0133,0x0133,0x0133,0x0133,0x0154,0x0133,0x0134,0x0134,0x0134,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0154,0x0133,0x0134,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0134,0x0134,0x0134,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0133,0x0153,0x0133,0x0133,0x0133,0x0133,0x0173,0x0194,0x0A15,0x337B,0x1A77,0x0194,0x0153,0x0153,0x0133,0x0133,0x0133,0x0133,0x0153,0x0154,0x0133,0x0133,0x0154,0x0133,0x0133,0x0153,0x0133,0x0154,0x0133,0x0133,0x0133,0x0154,0x0133,0x0133,0x0133,0x0134,0x0133,0x0134,0x0134,0x0113,0x0133,0x0134,0x0133,0x0134,0x0133,0x0133,0x0134,0x0134,0x0133,0x0133,0x0133,0x0154,0x0133,0x0153,0x0153,0x0153,0x0153,0x0154,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0154,0x0133,0x0133,0x0133,0x0133,0x0153,0x0153,0x0133,0x0173,0x0153,0x0A16,0x3B7B,0x01B4,0x0174,0x0153,0x0133,0x0133,0x0133,0x0133,0x0154,0x0154,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0154,0x0134,0x0134,0x0154,0x0154,0x0134,0x0134,0x0134,0x0134,0x0154,0x0133,0x0134,0x0134,0x0134,0x0134,0x0134,0x0133,0x0154,0x0153,0x0153,0x0133,0x0154,0x0153,0x0153,0x0133,0x0154,0x0153,0x0153,0x0133,0x0133,0x0154,0x0153,0x0153,0x0154,0x0153,0x0153,0x0133,0x0154,0x0154,0x0133,0x0154,0x0154,0x0154,0x0154,0x0154,0x0153,0x0133,0x0153,0x0153,0x0154,0x0153,0x0153,0x0173,0x0173,0x1277,0x339B,0x0173,0x0174,0x0153,0x0153,0x0133,0x0133,0x0133,0x0133,0x0134,0x0134,0x0134,0x0134,0x0134,0x0154,0x0154,0x0154,0x0154,0x0154,0x0134,0x0134,0x0134,0x0154,0x0154,0x0134,0x0134,0x0134,0x0154,0x0154,0x0154,0x0134,0x0154,0x0154,0x0154,0x0134,0x0134,0x0154,0x0154,0x0134,0x0154,0x0154,0x0134,0x0134,0x0154,0x0134,0x0134,0x0134,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0154,0x0134,0x0154,0x0154,0x0154,0x0154,0x0133,0x0133,0x0154,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x22D8,0x1256,0x0153,0x0153,0x0153,0x0153,0x0133,0x0153,0x0153,0x0153,0x0154,0x0134,0x0133,0x0154,0x0134,0x0154,0x0134,0x0154,0x0154,0x0134,0x0154,0x0154,0x0133,0x0154,0x0134,0x0134,0x0134,0x0134,0x0153,0x0154,0x0154,0x0133,0x0133,0x0154,0x0133,0x0133,0x0134,0x0134,0x0133,0x0154,0x0153,0x0153,0x0134,0x0154,0x0134,0x0134,0x0134,0x0154,0x0154,0x0133,0x0133,0x0154,0x0153,0x0154,0x0133,0x0154,0x0153,0x0154,0x0154,0x0133,0x0153,0x0154,0x0154,0x0154,0x0153,0x0153,0x0154,0x0133,0x0133,0x0133,0x0153,0x0174,0x0153,0x0173,0x0A16,0x22D9,0x0153,0x0153,0x0133,0x0154,0x0153,0x0154,0x0133,0x0153,0x0133,0x0154,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0134,0x0134,0x0133,0x0134,0x0154,0x0134,0x0134,0x0134,0x0154,0x0134,0x0134,0x0134,0x0133,0x0134,0x0134,0x0133,0x0134,0x0133,0x0133,0x0133,0x0133,0x0133,0x0154,0x0133,0x0133,0x0133,0x0133,0x0133,0x0154,0x0154,0x0133,0x0133,0x0134,0x0133,0x0154,0x0154,0x0133,0x0153,0x0153,0x0153,0x0174,0x0153,0x0153,0x0153,0x0153,0x0153,0x0153,0x0173,0x0194,0x2AF9,0x1236,0x0173,0x0174,0x0153,0x0153,0x0153,0x0133,0x0133,0x0133,0x0133,0x0154,0x0134,0x0113,0x0113,0x0133,0x0133,0x0134,0x0133,0x0133,0x0133,0x0134,0x0133,0x0133,0x0154,0x0134,0x0133,0x0134,0x0133,0x0133,0x0153,0x0133,0x0133,0x0154,0x0153,0x0154,0x0154,0x0154,0x0154,0x0154,0x0134,0x0134,0x0174,0x0174,0x0154,0x0174,0x0154,0x0954,0x1174,0x1154,0x1933,0x2953,0x28D1,0x5973,0xA2F8,0x9A15,0xA1F4,0xA9F4,0xA9F3,0xB1F3,0xA9D3,0xA9B2,0xB1D3,0xB1F3,0xA9D3,0xA9D3,0xA9F3,0xA9D3,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xB1D3,0xB1D3,0xA9D3,0xB1F4,0xA9F4,0xAA14,0xA255,0x9A76,0x7215,0x184F,0x1912,0x0912,0x0113,0x0133,0x0133,0x0133,0x0133,0x0113,0x0154,0x0133,0x0133,0x0133,0x0133,0x0113,0x0154,0x0133,0x0153,0x0133,0x0133,0x0133,0x0153,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0112,0x0112,0x0133,0x0133,0x0133,0x0133,0x0153,0x0153,0x0194,0x1A77,0x335B,0x1216,0x0173,0x0173,0x0153,0x0153,0x0133,0x0132,0x0133,0x0153,0x0133,0x0113,0x0113,0x0113,0x0133,0x0133,0x0113,0x0113,0x0113,0x0133,0x0113,0x0133,0x0113,0x0113,0x0133,0x0113,0x0133,0x0113,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0132,0x0112,0x0133,0x0133,0x0133,0x0113,0x0113,0x0132,0x0132,0x0132,0x0133,0x0133,0x0133,0x0133,0x0132,0x0132,0x0132,0x0132,0x0112,0x0132,0x0132,0x0132,0x0132,0x0132,0x0112,0x0112,0x0132,0x0132,0x0133,0x0132,0x0133,0x0153,0x0133,0x0152,0x0153,0x09D4,0x2AD9,0x333A,0x09B4,0x0173,0x0152,0x0132,0x0153,0x0152,0x0132,0x0132,0x0132,0x0133,0x0133,0x0112,0x0113,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0113,0x0112,0x0112,0x0113,0x0112,0x0113,0x0133,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0132,0x0132,0x0132,0x0132,0x0152,0x01B3,0x1256,0x2AF8,0x2B19,0x09F4,0x0172,0x0152,0x0152,0x0132,0x0132,0x0132,0x0112,0x0112,0x0132,0x0112,0x0132,0x0112,0x0112,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0112,0x0132,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0112,0x0112,0x00F2,0x0112,0x00F2,0x0112,0x00F2,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0152, + 0x0132,0x0112,0x00F2,0x00F2,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0152,0x0152,0x0152,0x0172,0x0193,0x11F4,0x2297,0x3319,0x32F8,0x09B4,0x0132,0x0111,0x0111,0x0112,0x0112,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0112,0x0112,0x0132,0x0112,0x0112,0x0132,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0132,0x0133,0x0132,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0152,0x0193,0x1215,0x2AD8,0x3339,0x2AB8,0x09B4,0x0152,0x0132,0x0112,0x0111,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0113,0x0132,0x0112,0x0113,0x0112,0x0113,0x0133,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x00F2,0x00F2,0x00F2,0x00F2,0x0113,0x0112,0x0133,0x0113,0x0113,0x0113,0x0113,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0132,0x0133,0x0112,0x0112,0x0132,0x0132,0x0132,0x0132,0x0152,0x0193,0x09F4,0x2297,0x3339,0x22D8,0x11F5,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0133,0x0112,0x0112,0x0112,0x0133,0x0133,0x0113,0x0133,0x0113,0x0133,0x0113,0x0133,0x0153,0x0133,0x0113,0x0112,0x0112,0x0112,0x0133,0x0113,0x0112,0x0112,0x0112,0x0113,0x0113,0x0112,0x0133,0x0133,0x0113,0x0113,0x0113,0x0133,0x0133,0x0113,0x00F2,0x00F2,0x00F2,0x0112,0x0133,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0132,0x0133,0x0132,0x0132,0x0132,0x0153,0x0194,0x2AD8,0x3B5A,0x09F5,0x0172,0x0152,0x0173,0x0132,0x0112,0x0132,0x0112,0x0112,0x0132,0x0133,0x0133,0x0133,0x0112,0x00F2,0x0113,0x0113,0x0133,0x0133,0x0113,0x0113,0x0113,0x0113,0x0133,0x0113,0x0133,0x0133,0x0113,0x0133,0x0113,0x0133,0x0113,0x0113,0x0133,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0133,0x0133,0x0154,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0133,0x0112,0x0112,0x0133,0x0173,0x0173,0x09F5,0x3B7B,0x1A77,0x0153,0x0133,0x0133,0x0112,0x0112,0x0113,0x0112,0x0133,0x0113,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0113,0x0113,0x0133,0x0113,0x0113,0x0113,0x0133,0x0113,0x0113,0x0113,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0132,0x0112,0x0133,0x0153,0x0153,0x01B4,0x437B,0x09D5,0x0174,0x0153,0x0133,0x0133,0x0113,0x0112,0x0133,0x0153,0x0154,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0134,0x0133,0x0113,0x0113,0x0113,0x0133,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0134,0x0113,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0153,0x337B,0x1277,0x0174,0x0153,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0154,0x0133,0x0133,0x0113,0x0133,0x0113,0x0133,0x0134,0x0134,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0134,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0133,0x0133,0x00F2,0x0112,0x0112,0x0112,0x22D8,0x1236,0x0132,0x0133,0x0133,0x0133,0x0112,0x0112,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0133,0x0133,0x0133,0x0153,0x0133,0x0133,0x0113,0x0133,0x0113,0x0113,0x0133,0x0133,0x0133,0x0153,0x01B4,0x3B7B,0x0173,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0113,0x0133,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0113,0x0113,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0132,0x0133,0x0153,0x0153,0x0133,0x0153,0x0132,0x0132,0x0152,0x0173,0x09D4,0x439C,0x09D5,0x0173,0x0153,0x0153,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0134,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0113,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0154,0x0154,0x0153,0x0153,0x0133,0x0154,0x0154,0x0133,0x0933,0x1133,0x1133,0x2113,0x28F2,0x38B0,0x8A76,0xA276,0xA1F4,0xA9F4,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xA9D3,0xA9F3,0xA9D3,0xA9F3,0xA9B3,0xA9B3,0xB1F4,0xB1F3,0xB1D3,0xB1D3,0xB1D4,0xA9F4,0xAA14,0xA255,0xA2B7,0x8256,0x100E,0x10B1,0x08D2,0x00F2,0x0112,0x0113,0x0133,0x0133,0x0113,0x0113,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0113,0x0133,0x0113,0x0133,0x0112,0x0132,0x0133,0x0133,0x0133,0x0133,0x0112,0x0133,0x0132,0x0133,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0133,0x0132,0x0133,0x0133,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0133,0x0133,0x0132,0x0152,0x09D5,0x3B7B,0x22B8,0x0194,0x0153,0x0153,0x0132,0x0132,0x0132,0x0133,0x0133,0x0133,0x0153,0x0133,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0113,0x0113,0x0113,0x0113,0x0112,0x0133,0x0112,0x0133,0x0113,0x0113,0x0112,0x0132,0x0132,0x0133,0x0133,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0113,0x0113,0x0132,0x0132,0x0112,0x0112,0x0132,0x0132,0x0132,0x0132,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x11F5,0x3319,0x1A76,0x09B4,0x0152,0x0152,0x0152,0x0132,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0133,0x0132,0x0133,0x0112,0x0112,0x0112,0x0133,0x0132,0x0133,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0133,0x00F2,0x00F2,0x00F2,0x00F2,0x0112,0x0113,0x0133,0x0112,0x0133,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0111,0x0132,0x0152,0x0193,0x1A76,0x3B7A,0x3359,0x1276,0x0192,0x0152,0x0152,0x0152,0x0152,0x0132,0x0132,0x0132,0x0112,0x0112,0x00F2,0x00F2,0x00F2,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0133,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0111,0x0112,0x0111,0x0111,0x0131,0x0131,0x0131, + 0x0112,0x00F2,0x00F2,0x00D1,0x00F1,0x0111,0x0111,0x0132,0x0132,0x0132,0x0132,0x0132,0x0152,0x0152,0x0152,0x09B3,0x22B7,0x3319,0x2AF8,0x1A36,0x0193,0x0132,0x0132,0x0112,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0132,0x0193,0x2297,0x3B5A,0x3319,0x1A36,0x0193,0x0132,0x0132,0x0112,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0113,0x00F2,0x0113,0x0112,0x00F2,0x00F2,0x00F2,0x0112,0x0113,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0153,0x11F5,0x22B7,0x2B19,0x2297,0x09D4,0x0172,0x0132,0x0111,0x00F1,0x0112,0x0112,0x0111,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0133,0x0112,0x0113,0x0133,0x0113,0x0113,0x0113,0x0113,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0113,0x0113,0x0113,0x0113,0x0133,0x0113,0x0133,0x0113,0x0113,0x00F2,0x00F2,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0132,0x0112,0x0112,0x0132,0x0132,0x0132,0x0132,0x0132,0x2256,0x3B5A,0x2277,0x0193,0x0152,0x0152,0x0132,0x0132,0x0111,0x0112,0x0112,0x0112,0x0132,0x0132,0x0133,0x0132,0x0112,0x0112,0x0113,0x00F2,0x0113,0x0133,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0112,0x0113,0x0133,0x0113,0x0112,0x0113,0x0113,0x0133,0x0133,0x0133,0x0113,0x0113,0x0133,0x0133,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x00F2,0x0112,0x0112,0x0133,0x0133,0x0133,0x0113,0x0113,0x0112,0x0133,0x0112,0x0133,0x0132,0x0132,0x0112,0x0132,0x0152,0x0173,0x1215,0x439B,0x1236,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0133,0x0133,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0133,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0133,0x0113,0x0112,0x0133,0x0112,0x0112,0x0112,0x0113,0x0113,0x0113,0x0113,0x0133,0x0133,0x0112,0x0133,0x0113,0x0113,0x0113,0x0113,0x0133,0x0133,0x0133,0x0113,0x0113,0x0132,0x0133,0x0132,0x0132,0x0132,0x0153,0x0193,0x3B7B,0x2277,0x0153,0x0133,0x0113,0x0132,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0113,0x0113,0x0113,0x0133,0x0113,0x0113,0x0112,0x0133,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0112,0x0133,0x0113,0x0113,0x0112,0x0113,0x0113,0x0133,0x0133,0x0112,0x0113,0x0133,0x0132,0x0133,0x0133,0x0132,0x0132,0x0133,0x0132,0x0132,0x0132,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0133,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0153,0x01B4,0x43DC,0x01B4,0x0153,0x0132,0x0112,0x0112,0x0133,0x0112,0x0133,0x0133,0x0113,0x0113,0x0113,0x0133,0x0113,0x0113,0x0133,0x0133,0x0113,0x0133,0x0113,0x0113,0x0133,0x0113,0x0113,0x0133,0x0133,0x0113,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0133,0x0133,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x1A97,0x0A15,0x0132,0x0133,0x0132,0x0132,0x0112,0x0112,0x0112,0x0132,0x0133,0x0113,0x0133,0x0113,0x0113,0x0133,0x0113,0x0113,0x0133,0x0133,0x0133,0x0113,0x0113,0x0133,0x0112,0x0133,0x0112,0x0112,0x0132,0x0132,0x0112,0x0113,0x0132,0x0132,0x0113,0x0113,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0113,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0133,0x0113,0x0113,0x0113,0x0133,0x0133,0x0133,0x0133,0x0113,0x0113,0x0133,0x0132,0x0133,0x0133,0x0113,0x0113,0x0113,0x0112,0x0112,0x0132,0x0132,0x0153,0x2AD9,0x2298,0x0153,0x0132,0x0112,0x0132,0x0132,0x0133,0x0133,0x0112,0x0113,0x0113,0x0133,0x0113,0x0113,0x0113,0x0113,0x0133,0x0112,0x0133,0x0133,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0133,0x0113,0x0113,0x0113,0x0133,0x0113,0x0113,0x0113,0x0113,0x0113,0x0133,0x0132,0x0132,0x0113,0x0113,0x0112,0x0132,0x0132,0x0132,0x0133,0x0133,0x0113,0x0133,0x0113,0x0133,0x0133,0x0133,0x0133,0x0132,0x0133,0x0133,0x0132,0x0133,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0152,0x1A36,0x3B5A,0x0194,0x0173,0x0133,0x0132,0x0133,0x0133,0x0133,0x0112,0x0112,0x0113,0x0113,0x0133,0x0133,0x0113,0x0113,0x0113,0x0113,0x0133,0x0113,0x0133,0x0133,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0112,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0153,0x0153,0x0133,0x0133,0x0133,0x0133,0x0933,0x0933,0x1113,0x1913,0x2912,0x30B0,0x6173,0xA2D8,0xA235,0xA1D4,0xA9F4,0xA9F3,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xA9F3,0xA9D3,0xB1F3,0xA9D3,0xA9D3,0xA9D3,0xB1F3,0xA9B3,0xA9D3,0xA9D3,0xB1D3,0xB1F4,0xA9F4,0xA255,0xA297,0x8256,0x182E,0x10B1,0x08B1,0x08F2,0x00F2,0x0133,0x0133,0x0133,0x00F2,0x00F2,0x00F2,0x0112,0x0112,0x0133,0x0133,0x0113,0x0133,0x0133,0x0133,0x0112,0x0112,0x0133,0x0113,0x0113,0x0133,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0132,0x0132,0x0132,0x0132,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0132,0x0112,0x0112,0x0133,0x0112,0x00F2,0x00F2,0x0112,0x0132,0x0112,0x0112,0x0132,0x0132,0x0132,0x0173,0x2277,0x3B5A,0x1215,0x0152,0x0153,0x0152,0x0132,0x0132,0x0132,0x0132,0x0133,0x0112,0x0112,0x0112,0x0133,0x0133,0x00F2,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0132,0x0133,0x0133,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0112,0x0132,0x0132,0x0132,0x0112,0x0132,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0111,0x0112,0x0132,0x0132,0x0132,0x0152,0x1215,0x3319,0x2AD8,0x0193,0x0152,0x0152,0x0132,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0132,0x0132,0x0132,0x00F2,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0111,0x0111,0x0111,0x0131,0x0131,0x0152,0x0172,0x0A14,0x22D7,0x3339,0x22B7,0x09D4,0x0172,0x0152,0x0152,0x0132,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x00F2,0x0112,0x00F2,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0973,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0112,0x00F2,0x0112,0x00F2,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111, + 0x0112,0x0112,0x0112,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0132,0x0132,0x0132,0x0152,0x09B3,0x1A56,0x3339,0x3B5A,0x1A76,0x0993,0x0172,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0132,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F1,0x00F1,0x00F2,0x00F2,0x00F2,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0132,0x0172,0x09D4,0x2297,0x2AF8,0x22B7,0x11F4,0x0152,0x0132,0x0132,0x0112,0x0111,0x00F1,0x0111,0x00F1,0x0112,0x0112,0x00F1,0x00F2,0x00F1,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0133,0x0112,0x0112,0x0112,0x0113,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x00F2,0x00F2,0x00F2,0x00F2,0x0113,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x00F2,0x00F2,0x0112,0x0132,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0132,0x09B4,0x2297,0x32F9,0x2297,0x1215,0x0152,0x0132,0x0111,0x0111,0x00F1,0x0112,0x0111,0x0112,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0113,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x00F2,0x00F2,0x0112,0x0133,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0173,0x2AB7,0x3319,0x11F5,0x0153,0x0152,0x0132,0x0132,0x0111,0x0111,0x0112,0x0132,0x0112,0x0132,0x0112,0x0132,0x0132,0x0132,0x0112,0x00F2,0x00F2,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0113,0x0112,0x0132,0x0132,0x0133,0x0133,0x0133,0x0112,0x0112,0x0132,0x0112,0x0132,0x0113,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0152,0x1A36,0x3B3A,0x11F5,0x0132,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0153,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0133,0x0113,0x0113,0x0113,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0133,0x0133,0x0112,0x0112,0x0133,0x0112,0x0133,0x0112,0x0133,0x0133,0x0112,0x0112,0x0113,0x0113,0x0132,0x0112,0x0132,0x0132,0x0152,0x0132,0x2AD8,0x2AF8,0x0152,0x0132,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0113,0x0113,0x0113,0x0113,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0133,0x0113,0x0133,0x0112,0x0133,0x0112,0x0132,0x0132,0x0132,0x0132,0x0132,0x0112,0x0112,0x0132,0x0132,0x0132,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0133,0x0112,0x0133,0x0132,0x0132,0x0132,0x0132,0x0112,0x0132,0x0152,0x0152,0x22B7,0x2AF9,0x0153,0x0153,0x0132,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0113,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0133,0x0113,0x0133,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0113,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0133,0x0133,0x0113,0x0133,0x0133,0x0113,0x0133,0x0132,0x0133,0x0133,0x0112,0x0113,0x0133,0x0112,0x0112,0x0133,0x0133,0x0113,0x0112,0x0112,0x0133,0x0133,0x0132,0x0112,0x0132,0x0133,0x0132,0x0112,0x0112,0x0112,0x0133,0x0132,0x0133,0x0112,0x0112,0x00F1,0x0112,0x0111,0x22B7,0x0A14,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0133,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0133,0x0132,0x0133,0x0133,0x0133,0x0132,0x0132,0x0132,0x0133,0x0132,0x0132,0x0132,0x0133,0x0133,0x0133,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0132,0x0132,0x0153,0x09D4,0x3B3A,0x0152,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0113,0x0113,0x0133,0x0132,0x0133,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0113,0x0113,0x0113,0x0112,0x0113,0x0113,0x0113,0x0112,0x0112,0x0113,0x0113,0x0113,0x0112,0x0133,0x0112,0x0132,0x0132,0x0112,0x0112,0x0132,0x0132,0x0133,0x0132,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0132,0x0132,0x0112,0x0132,0x0132,0x0132,0x0112,0x0132,0x0132,0x0132,0x0132,0x0111,0x0132,0x2297,0x2AF9,0x0173,0x0153,0x0132,0x0132,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0113,0x0113,0x0133,0x0133,0x0112,0x0113,0x0113,0x0112,0x0133,0x0112,0x0112,0x0112,0x0113,0x0113,0x0113,0x0133,0x0133,0x0132,0x0133,0x0132,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0953,0x0933,0x1133,0x1933,0x20F2,0x28D1,0x4090,0x9297,0xA256,0xA1F4,0xAA14,0xA9F3,0xA9D3,0xA9D3,0xB1F4,0xA9D3,0xA9F3,0xB1F3,0xA9D3,0xA9F3,0xA9D3,0xA9D3,0xA9F3,0xA9D3,0xB1F4,0xA9D3,0xB1F3,0xB1F4,0xA9B3,0xA9F4,0xA9F4,0xA235,0x9A76,0x8A77,0x204F,0x18D1,0x08D1,0x08F2,0x00F2,0x0112,0x0112,0x0133,0x00F2,0x00F2,0x0112,0x0112,0x0133,0x0112,0x0133,0x0132,0x0133,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0113,0x0133,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0112,0x0132,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0132,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0112,0x0132,0x0152,0x09D4,0x2AD8,0x2AB8,0x0193,0x0152,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0112,0x0113,0x00F2,0x00F2,0x00F2,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0112,0x00F1,0x0112,0x0112,0x0111,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0132,0x0173,0x2297,0x3B3A,0x1A36,0x0193,0x0152,0x0152,0x0132,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x00F2,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0111,0x0112,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0131,0x0131,0x0131,0x0131,0x0151,0x09B3,0x2AD8,0x3B5A,0x22B7,0x09F4,0x0172,0x0132,0x0132,0x0112,0x0132,0x0112,0x0112,0x0132,0x0112,0x0953,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x00F2,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x00F2,0x00F1,0x00F2,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111, + 0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0192,0x1A55,0x2AD8,0x32F8,0x2297,0x11F4,0x0172,0x0131,0x0131,0x0111,0x0112,0x0111,0x00F1,0x0112,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0112,0x00F1,0x00F2,0x00F2,0x00F1,0x00F2,0x0112,0x0112,0x00F1,0x00F1,0x0112,0x00F1,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x00F2,0x00F1,0x00F1,0x00F1,0x00F1,0x00F2,0x00F1,0x00F1,0x00F1,0x0112,0x00F1,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0132,0x0172,0x1A35,0x2AF8,0x2AD8,0x1A56,0x09D4,0x0172,0x0132,0x0132,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x00F1,0x00F2,0x0111,0x0112,0x00F1,0x0112,0x00F1,0x0112,0x00F2,0x00F2,0x00F1,0x00F1,0x0111,0x0112,0x0993,0x2A97,0x3319,0x2277,0x09B3,0x0152,0x0131,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0112,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x00F2,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x00F2,0x00F2,0x00F2,0x00F2,0x0112,0x0133,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0111,0x0132,0x1A36,0x3B19,0x1A56,0x09B3,0x0152,0x0132,0x0112,0x0112,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0132,0x0112,0x0132,0x0132,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0132,0x0111,0x0132,0x0152,0x1A56,0x3B7A,0x09B4,0x0132,0x0111,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0133,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x09D4,0x439B,0x0173,0x0152,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0172,0x3B5A,0x09B4,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0113,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0133,0x0133,0x0112,0x0112,0x0132,0x0132,0x0112,0x0132,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0132,0x0112,0x0111,0x00F1,0x00F1,0x00F1,0x2276,0x09F4,0x0132,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0112,0x0132,0x0132,0x0112,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0113,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0152,0x2AF9,0x01B3,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0113,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0132,0x0111,0x0132,0x0132,0x0152,0x3319,0x2297,0x0152,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0133,0x0112,0x0132,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0133,0x0112,0x0132,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0133,0x0112,0x0933,0x0932,0x1112,0x1912,0x28F1,0x306F,0x79F5,0xA2B7,0x9A14,0xA214,0xA9F4,0xA9D3,0xA9F4,0xA9F3,0xB214,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xA9D3,0xA9F3,0xB1F3,0xA9F3,0xB1F4,0xA9D3,0xB1F3,0xA9D3,0xA9D3,0xA9D3,0xAA14,0xA235,0x9A76,0x92B8,0x204F,0x18D1,0x08D1,0x08F1,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0111,0x0111,0x0111,0x0112,0x0132,0x0132,0x0173,0x1236,0x3B7A,0x1235,0x0173,0x0152,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x00F2,0x0112,0x00F2,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0112,0x0112,0x0112,0x0112,0x0132,0x0173,0x2276,0x32F9,0x1A36,0x0173,0x0152,0x0173,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x00F1,0x0112,0x0111,0x0111,0x0112,0x0112,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0112,0x0131,0x0111,0x0132,0x0111,0x0131,0x0131,0x0131,0x0152,0x0193,0x1235,0x3339,0x3319,0x1A56,0x0152,0x0132,0x0132,0x0111,0x0112,0x0132,0x0112,0x0132,0x0111,0x0132,0x0112,0x0111,0x0111,0x0112,0x0112,0x0132,0x0112,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x0112,0x00F1,0x00F2,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111, + 0x0111,0x0111,0x0111,0x0131,0x0111,0x0151,0x0192,0x1235,0x2AB7,0x3319,0x2AD7,0x2256,0x0172,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x00D1,0x00D1,0x00F2,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0111,0x0112,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0112,0x00F1,0x0111,0x0111,0x0112,0x00F1,0x00F1,0x0111,0x0111,0x0112,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0131,0x0131,0x0152,0x01B3,0x1235,0x2296,0x22B7,0x1215,0x09B3,0x0152,0x0131,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0111,0x0112,0x0112,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0132,0x0112,0x0112,0x00F1,0x00F1,0x00F1,0x0112,0x0132,0x0111,0x0132,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0131,0x0193,0x2297,0x3319,0x2AB7,0x09B3,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0112,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x00F2,0x00F2,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0132,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0131,0x0193,0x2AD8,0x2AD8,0x11F5,0x0993,0x0132,0x0132,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x0132,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0111,0x0132,0x0112,0x0153,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0111,0x0132,0x0132,0x0132,0x0152,0x0172,0x2AB7,0x437A,0x0993,0x0111,0x00F1,0x0111,0x0111,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0173,0x3B5A,0x11F5,0x0132,0x0111,0x00F1,0x0112,0x0112,0x00F1,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0112,0x0111,0x0132,0x0132,0x09F4,0x2AF8,0x0132,0x0112,0x0132,0x0112,0x0152,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0132,0x0132,0x0112,0x0132,0x0132,0x0112,0x0112,0x00F2,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0112,0x0132,0x0112,0x0132,0x0112,0x0112,0x0112,0x0111,0x0132,0x0112,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x00F1,0x0111,0x2AD7,0x1235,0x0132,0x0132,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0152,0x1A76,0x2297,0x0111,0x0112,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0132,0x0132,0x0132,0x0132,0x0132,0x0112,0x0132,0x0112,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0111,0x0111,0x0132,0x0132,0x0132,0x0111,0x0111,0x0111,0x0193,0x437B,0x1215,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0132,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0132,0x0132,0x0132,0x0133,0x0132,0x0132,0x0133,0x0112,0x0112,0x0112,0x0133,0x0132,0x0112,0x0912,0x0912,0x1912,0x20F1,0x2890,0x40B0,0x9AB7,0xA255,0xA214,0xAA14,0xA1D3,0xA9D3,0xA9D3,0xA9F4,0xA9F3,0xA9D3,0xA9D3,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xB214,0xA9D3,0xB1F4,0xA9D3,0xA9F4,0xA9F4,0xA214,0xA296,0x8A97,0x180D,0x1090,0x10D1,0x08F1,0x0112,0x0112,0x0133,0x0112,0x0112,0x00F2,0x0112,0x0132,0x0132,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x00F1,0x00F1,0x0111,0x0112,0x0111,0x0112,0x00F1,0x0111,0x0112,0x0112,0x0111,0x0111,0x0111,0x0131,0x0132,0x0132,0x0193,0x3B5A,0x2AF8,0x01B4,0x0152,0x0132,0x0112,0x0112,0x0132,0x0112,0x00F1,0x00F1,0x00F1,0x0132,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0132,0x0111,0x0132,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x00F2,0x00F2,0x00F2,0x0111,0x0132,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0112,0x0111,0x00F1,0x0111,0x00F1,0x0112,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0112,0x0111,0x0112,0x0111,0x0111,0x0111,0x0111,0x09B3,0x2AD8,0x3319,0x1235,0x0193,0x0152,0x0132,0x0132,0x0112,0x0112,0x0132,0x0111,0x0111,0x00F2,0x00F2,0x00F1,0x00F1,0x0112,0x0112,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x00F2,0x00F1,0x0112,0x0112,0x0112,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0132,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x0131,0x0131,0x0131,0x0152,0x1A15,0x32F8,0x3339,0x1A96,0x01B3,0x0152,0x0111,0x0111,0x0111,0x0111,0x0132,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x00F1,0x0112,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1, + 0x0131,0x0131,0x0131,0x0151,0x09D3,0x2A96,0x3B59,0x32F8,0x1A55,0x09B3,0x0131,0x0111,0x0111,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0112,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0131,0x0172,0x09F4,0x1A76,0x2AF8,0x1A76,0x09F4,0x0192,0x0172,0x0131,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0112,0x00F1,0x0112,0x00F1,0x00F1,0x0112,0x00F1,0x0112,0x0112,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F2,0x00F2,0x00F2,0x00F2,0x0112,0x00F1,0x00F1,0x00F1,0x0111,0x0112,0x0112,0x00F1,0x00F1,0x00F1,0x0112,0x0112,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x09B3,0x2AD8,0x3B5A,0x22B7,0x09D4,0x0132,0x0132,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0112,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0112,0x00F1,0x00F2,0x00F2,0x0112,0x00F2,0x00F2,0x0112,0x00F2,0x00F2,0x00F2,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x00F1,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x0112,0x00F1,0x0112,0x0111,0x0112,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0131,0x0152,0x1A55,0x3318,0x2296,0x09B3,0x0152,0x0132,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0112,0x0111,0x0112,0x0132,0x0132,0x0132,0x00F1,0x0111,0x0112,0x00F1,0x0112,0x0112,0x00F1,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x0111,0x0111,0x0112,0x0112,0x0112,0x00F1,0x0111,0x0111,0x0131,0x0132,0x0152,0x0152,0x0193,0x3319,0x3B59,0x0152,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0112,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x0111,0x00F1,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0132,0x0131,0x2AF8,0x1A76,0x0152,0x0111,0x0111,0x00F1,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0111,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0132,0x0131,0x2AD8,0x1235,0x0111,0x0132,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0111,0x0112,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x00F2,0x0132,0x0132,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0112,0x0132,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F0,0x2296,0x1214,0x0131,0x0132,0x0132,0x0111,0x0111,0x0111,0x0111,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0132,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0111,0x0112,0x0131,0x0193,0x3339,0x0131,0x0132,0x0112,0x0112,0x0132,0x0112,0x0132,0x0131,0x0132,0x0111,0x0132,0x0112,0x0112,0x0111,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0132,0x0132,0x0112,0x0132,0x0132,0x0132,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x0131,0x09D4,0x3B7A,0x0993,0x0132,0x0132,0x0132,0x0111,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0112,0x0132,0x0111,0x0111,0x0132,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0932,0x0912,0x10F1,0x18F1,0x28B0,0x304E,0x79F5,0x9A76,0xA235,0xA1F4,0xA9F4,0xA9D4,0xA9F4,0xA9F3,0xA9D3,0xA9F3,0xB1F3,0xA9F3,0xB1F3,0xA9D3,0xA9D3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9D3,0xA9F3,0xB214,0xA9F4,0xA214,0x9A76,0x8A97,0x180D,0x106F,0x08B0,0x00D1,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x0112,0x0132,0x00F1,0x00F1,0x0112,0x00F1,0x00F2,0x00F2,0x00F2,0x00F1,0x00F1,0x00F1,0x0111,0x0112,0x0111,0x00F1,0x00F1,0x0111,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0132,0x0132,0x0152,0x0152,0x1215,0x3319,0x1A76,0x0152,0x0132,0x0132,0x0132,0x0111,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0132,0x0111,0x0111,0x0112,0x0112,0x00F1,0x00F1,0x00F1,0x00F2,0x0112,0x00F2,0x00F2,0x0112,0x00F1,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x00F1,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0112,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0132,0x09D4,0x2AD8,0x2B18,0x1A56,0x0193,0x0152,0x0152,0x0132,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0112,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x0111,0x00F1,0x0112,0x0112,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0152,0x01B3,0x1A76,0x3B5A,0x3B39,0x09B3,0x0131,0x0131,0x0111,0x0131,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00D1,0x0112,0x00F1,0x00F1,0x00F1,0x0111,0x0112,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1, + 0x0151,0x11F3,0x2276,0x2AD7,0x3B18,0x2AB7,0x11B3,0x0131,0x0110,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F0,0x00F1,0x00F1,0x0111,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0172,0x09F3,0x22B6,0x2AF8,0x1A76,0x01B3,0x0192,0x0992,0x0151,0x0111,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0112,0x00F1,0x00F1,0x0112,0x00F1,0x00F1,0x00F1,0x0112,0x0112,0x00F1,0x00F1,0x0112,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x0131,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0131,0x0172,0x2276,0x3319,0x2AD7,0x11F4,0x0132,0x0131,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F2,0x00F1,0x0112,0x00F1,0x00F1,0x0112,0x00F2,0x00F1,0x0112,0x00F1,0x0112,0x0112,0x00F1,0x0112,0x00F2,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x0132,0x0111,0x0111,0x0132,0x0112,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0132,0x0132,0x0112,0x0111,0x0111,0x0132,0x0132,0x0111,0x0111,0x00F1,0x00D1,0x0111,0x0111,0x0131,0x09B3,0x2AB7,0x2297,0x1A35,0x0993,0x0132,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0132,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0112,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0112,0x00F1,0x00F1,0x00F1,0x0112,0x00F1,0x00F1,0x0111,0x0112,0x00F1,0x0111,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0111,0x00F1,0x00F1,0x0112,0x00F1,0x0112,0x00F1,0x0112,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0131,0x0131,0x0131,0x01B3,0x3339,0x2AB7,0x0131,0x0131,0x0111,0x0112,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0112,0x0112,0x0111,0x0132,0x0111,0x0112,0x0132,0x0111,0x0111,0x00F1,0x0112,0x00F1,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0111,0x0111,0x0132,0x0132,0x00F1,0x0112,0x0111,0x0112,0x0111,0x0112,0x0132,0x0111,0x0132,0x0111,0x0111,0x0111,0x0132,0x0152,0x0152,0x2AB7,0x2297,0x0172,0x0132,0x0111,0x0111,0x00F1,0x0112,0x0111,0x0111,0x0111,0x0112,0x0111,0x0132,0x0111,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0153,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0111,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0132,0x0112,0x00F1,0x00F1,0x0112,0x0111,0x0112,0x0111,0x0111,0x0132,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0172,0x3339,0x0192,0x0131,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0152,0x0132,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0132,0x0111,0x00D0,0x00F0,0x00F1,0x00F0,0x2296,0x11F4,0x0131,0x0131,0x0111,0x0111,0x0111,0x0132,0x0111,0x0111,0x0111,0x0132,0x0111,0x0111,0x0111,0x0111,0x0111,0x0112,0x0112,0x0132,0x0112,0x0112,0x00F1,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x00F1,0x0112,0x0111,0x0111,0x0132,0x0112,0x0111,0x0132,0x0111,0x0111,0x0111,0x0112,0x0112,0x0112,0x0111,0x0111,0x0112,0x0111,0x0112,0x0111,0x0952,0x0132,0x0111,0x0111,0x0111,0x0132,0x0172,0x3319,0x2276,0x0152,0x0131,0x0132,0x00F1,0x0111,0x0111,0x0131,0x0111,0x0111,0x0132,0x0112,0x0111,0x0112,0x0111,0x0111,0x00F1,0x0112,0x0132,0x0112,0x0132,0x0132,0x0132,0x0112,0x0111,0x0132,0x0112,0x0112,0x0112,0x0111,0x0111,0x0132,0x0111,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0112,0x0132,0x0111,0x0132,0x0111,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x0131,0x2276,0x439A,0x0172,0x0131,0x0111,0x0132,0x0111,0x00F1,0x0112,0x00F1,0x0111,0x0112,0x0111,0x0111,0x0112,0x0111,0x0111,0x0111,0x0112,0x0111,0x00F1,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x00F1,0x00F2,0x00F1,0x0111,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0911,0x0911,0x08F1,0x10F1,0x20D0,0x288F,0x48D0,0x9A97,0xA256,0xA1F4,0xAA14,0xA9F4,0xA9D3,0xA9D3,0xA9F3,0xA9D3,0xA9B3,0xA9D3,0xA9F3,0xA9F3,0xA9D3,0xAA14,0xA9D3,0xA9F3,0xB213,0xA9F3,0xA9D3,0xA9F3,0xA1F3,0xA235,0xA276,0x9AD8,0x180D,0x18B0,0x1111,0x00F1,0x00D1,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0132,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0112,0x0111,0x0111,0x0111,0x0111,0x0112,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x00F1,0x0111,0x0112,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0132,0x0132,0x0131,0x0172,0x2AB7,0x3339,0x09F4,0x0152,0x0131,0x0132,0x0132,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0132,0x0132,0x0112,0x00F1,0x00F1,0x0112,0x0111,0x0952,0x0112,0x00F1,0x00F1,0x00F1,0x0112,0x0111,0x0111,0x0111,0x0111,0x0112,0x0111,0x0112,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00D1,0x0112,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0131,0x1215,0x2AD8,0x2AF8,0x1A76,0x0193,0x0152,0x0131,0x0111,0x0111,0x0111,0x0111,0x0112,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F2,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x0111,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0131,0x0131,0x0152,0x0172,0x1A55,0x3B39,0x3318,0x1235,0x0172,0x0131,0x0131,0x0131,0x0111,0x0111,0x00F1,0x00F1,0x0132,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0112,0x00F1,0x0112,0x00F1,0x00F1,0x0112,0x0111,0x0111,0x0111,0x0112,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1, + 0x2AD7,0x2AB7,0x1A34,0x11D3,0x0151,0x0130,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00F1,0x00F1,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x0111,0x09B3,0x2276,0x2296,0x22B6,0x1A55,0x09D3,0x0172,0x0151,0x0131,0x0131,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0172,0x2276,0x3B39,0x2AB7,0x11F4,0x0172,0x0131,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F2,0x00F2,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0112,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0112,0x00F1,0x00F1,0x00F1,0x0111,0x0132,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0131,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0172,0x1A55,0x2AD7,0x1A76,0x09D3,0x0151,0x0131,0x0111,0x00F1,0x00F1,0x00F0,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0112,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0131,0x0131,0x09F4,0x3359,0x1235,0x0131,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0112,0x0112,0x0111,0x0111,0x0111,0x0111,0x0112,0x0112,0x0111,0x0111,0x0111,0x0111,0x0112,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0111,0x0112,0x0132,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F2,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0132,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0132,0x0131,0x1215,0x3319,0x09B3,0x0132,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0112,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x22B7,0x2AD8,0x0152,0x0131,0x0111,0x00F1,0x0111,0x0132,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x0132,0x0111,0x00F1,0x0111,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0132,0x0112,0x0112,0x0112,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0111,0x0111,0x0112,0x0112,0x0132,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F0,0x00F0,0x00F1,0x00D0,0x2296,0x09F3,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0132,0x0111,0x0111,0x0111,0x0111,0x0112,0x0112,0x00F1,0x0112,0x0111,0x0111,0x0112,0x0111,0x0112,0x0112,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0111,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x00F1,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0131,0x1215,0x439B,0x0152,0x0131,0x0111,0x0111,0x0112,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0132,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0112,0x00F1,0x0112,0x0111,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x00F1,0x0111,0x0131,0x32F8,0x3B59,0x0131,0x0131,0x0111,0x0111,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0112,0x0112,0x0111,0x0111,0x0112,0x0112,0x0112,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0911,0x08F1,0x10F1,0x18F1,0x20B0,0x304E,0x8A97,0x9A35,0xA215,0xA1F4,0xA9F4,0xA9D3,0xA9B3,0xA9F4,0xB1F4,0xA9D3,0xB1F4,0xA9D3,0xA9D3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9F4,0xA234,0x9A55,0x9AF8,0x38F0,0x2931,0x1111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0112,0x00F1,0x0112,0x00F1,0x0112,0x00F1,0x0112,0x00F1,0x0112,0x0111,0x0112,0x0112,0x0112,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0112,0x00F1,0x00F1,0x0112,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0131,0x0131,0x0111,0x00F1,0x0111,0x0111,0x0131,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x0131,0x0131,0x0151,0x1214,0x3B7A,0x1A76,0x0152,0x0131,0x0132,0x0131,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0132,0x0111,0x0112,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0152,0x09D4,0x22B7,0x2B18,0x2296,0x0172,0x0131,0x0131,0x0111,0x0131,0x0131,0x0111,0x0111,0x00F1,0x0111,0x0131,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x0111,0x00D0,0x00D1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00D0,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0131,0x0111,0x0131,0x0172,0x1214,0x22B7,0x3338,0x2296,0x0993,0x0131,0x0131,0x0131,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111, + 0x11B3,0x0151,0x0110,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x0111,0x00F0,0x0110,0x0111,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00D1,0x00D1,0x00D1,0x00D1,0x00D0,0x00D1,0x00D1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0111,0x0111,0x00F0,0x0110,0x0151,0x09D3,0x2296,0x2AB7,0x2296,0x1A55,0x09B3,0x0111,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x0111,0x00F1,0x00F1,0x00F0,0x00D0,0x00F1,0x0111,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x00F1,0x00F1,0x00F0,0x00F1,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x0131,0x0111,0x0131,0x0172,0x1214,0x2AF7,0x2AD7,0x1A35,0x0172,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F0,0x00F1,0x00D0,0x00D0,0x00F0,0x00F0,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x0112,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00D1,0x00F1,0x00D0,0x00F1,0x0111,0x0111,0x0111,0x0131,0x09F4,0x2296,0x2AD7,0x1A35,0x0172,0x0131,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0132,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00D1,0x00F1,0x00F1,0x0111,0x0131,0x0151,0x1A55,0x3B7A,0x09D3,0x0151,0x0152,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0112,0x0111,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0112,0x0111,0x0112,0x0112,0x00F1,0x0111,0x0111,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0131,0x09B3,0x3B7A,0x11F4,0x0131,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0111,0x00F1,0x00F1,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0112,0x00F1,0x0112,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x0112,0x0112,0x0111,0x0132,0x0111,0x0112,0x0111,0x0132,0x0111,0x0111,0x0132,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0151,0x439A,0x09D3,0x0131,0x0131,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F2,0x0112,0x0112,0x0132,0x00F1,0x0112,0x0111,0x0112,0x00F1,0x0111,0x0112,0x0111,0x0111,0x0111,0x0111,0x0112,0x0111,0x0111,0x0112,0x0112,0x0112,0x0111,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0132,0x0112,0x0112,0x0111,0x0111,0x0131,0x0132,0x0111,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F1,0x00F0,0x2AD7,0x09F4,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0112,0x0111,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x0131,0x0131,0x439A,0x0192,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0132,0x0111,0x0132,0x0111,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x0131,0x0131,0x0111,0x0111,0x0111,0x0132,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0112,0x00F1,0x0111,0x0112,0x00F1,0x0111,0x00F1,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x0112,0x00F1,0x00F1,0x00F1,0x0112,0x0112,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0131,0x0111,0x00F0,0x0111,0x0192,0x439A,0x2296,0x0151,0x0131,0x0111,0x0132,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0112,0x0112,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0132,0x0112,0x0132,0x0112,0x0112,0x0111,0x0111,0x0111,0x0131,0x0111,0x00F1,0x08F1,0x10F1,0x20D0,0x286F,0x69D4,0x9256,0x99F4,0xA214,0xA9F4,0xA1D3,0xA9D3,0xA9D3,0xA9F3,0xA9D3,0xA9D3,0xB1F3,0xA9F3,0xA9D3,0xA9F3,0xA9D3,0xA9D3,0xB1F3,0xA9D3,0xB1F3,0xA9F3,0xAA14,0xA214,0x9A55,0x92D7,0x4131,0x4215,0x1952,0x0911,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x0132,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0112,0x0111,0x0111,0x00F1,0x00D1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0131,0x0131,0x0172,0x32F8,0x2AD7,0x09D3,0x0151,0x0151,0x0151,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0132,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0131,0x11F4,0x2AB7,0x2AF8,0x1214,0x0192,0x0151,0x0151,0x0131,0x0131,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0131,0x0131,0x0131,0x09B3,0x2AB7,0x3339,0x2296,0x09D3,0x0151,0x0131,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1, + 0x00F0,0x0111,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00D1,0x00D1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00D1,0x00D1,0x00D1,0x00D1,0x00D1,0x00D0,0x00D1,0x00D1,0x00D1,0x00D1,0x00D1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x0131,0x0151,0x11F4,0x32F7,0x32F8,0x22B6,0x1214,0x0172,0x0131,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x00F0,0x00F1,0x0111,0x00F0,0x00F0,0x0111,0x00D0,0x00F1,0x0111,0x00D1,0x00D1,0x00D1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x0110,0x0131,0x0171,0x11F4,0x2AD7,0x2AD7,0x11F4,0x0192,0x0131,0x0111,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D0,0x00F0,0x00F1,0x0111,0x0172,0x1A55,0x2AF7,0x2296,0x0192,0x0131,0x0111,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x0111,0x0111,0x0131,0x0111,0x0111,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0112,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0151,0x2AD7,0x3B59,0x01B2,0x0151,0x0131,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0112,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0112,0x00F1,0x0112,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0172,0x3B59,0x1A55,0x0152,0x0131,0x0111,0x00F1,0x00F0,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0112,0x00F1,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0111,0x00F1,0x00F1,0x0112,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0112,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0192,0x439A,0x0111,0x0131,0x0111,0x00F1,0x00F0,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0112,0x0112,0x0111,0x0111,0x0132,0x0111,0x0111,0x0112,0x0112,0x0112,0x0112,0x0111,0x0111,0x0111,0x0111,0x0111,0x0132,0x0111,0x00F1,0x00F1,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x2AB7,0x09F4,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0131,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0131,0x1A75,0x2296,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0112,0x0112,0x00F1,0x00F1,0x0112,0x00F2,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x0112,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0131,0x09F3,0x3B79,0x1235,0x0131,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0112,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0112,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0112,0x0112,0x0112,0x0112,0x0111,0x0111,0x0111,0x0111,0x0911,0x08F1,0x10F0,0x18D0,0x208F,0x3890,0x9AB7,0x9A15,0xA215,0xAA35,0xA1D3,0xA9F4,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xA9D3,0xA9F3,0xA9D3,0xA9F3,0xB1F3,0xA9D3,0xA9F3,0xA9D3,0xAA14,0xA9F4,0xA214,0x9A76,0x92F8,0x4152,0x5AF8,0x4297,0x1192,0x0952,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00D1,0x00F1,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F0,0x0111,0x00F1,0x00F1,0x00F0,0x00F1,0x0111,0x00F0,0x0111,0x0111,0x0110,0x0131,0x0131,0x11F4,0x3339,0x2276,0x0192,0x0172,0x0152,0x0131,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0152,0x09D3,0x22D7,0x2AD7,0x1234,0x0172,0x0151,0x0131,0x0131,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0131,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x0111,0x0131,0x0131,0x0131,0x0171,0x11F4,0x3318,0x3318,0x1A14,0x0131,0x0111,0x0131,0x0110,0x00F0,0x0110,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x0111, + 0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x0111,0x00F0,0x00D0,0x00F0,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00D1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0131,0x0172,0x1234,0x2AF7,0x3318,0x2275,0x11D3,0x0131,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00D1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00D0,0x00F0,0x0111,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0151,0x11F3,0x2AB6,0x2AD7,0x1A34,0x0172,0x0131,0x0110,0x0111,0x0111,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F0,0x0111,0x0111,0x11F4,0x2AF7,0x2AF7,0x11F4,0x0151,0x0131,0x0110,0x0110,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F0,0x00F0,0x0111,0x0152,0x3318,0x2AD7,0x0171,0x0151,0x0111,0x00F0,0x00F0,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x0111,0x00F1,0x00D1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0151,0x3318,0x2AD7,0x0152,0x0131,0x00F1,0x0111,0x0111,0x00F1,0x00F0,0x00F0,0x00F0,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0112,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F0,0x2296,0x2296,0x0131,0x0111,0x00F1,0x00D0,0x0111,0x0131,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0131,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0132,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D1,0x00F1,0x00D0,0x2AB7,0x09B3,0x0131,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F0,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0131,0x0111,0x0111,0x0111,0x0111,0x0151,0x09D3,0x53FC,0x00F0,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F0,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0112,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F0,0x0110,0x0110,0x0130,0x1234,0x3B59,0x09D4,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0112,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0112,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x08F1,0x08F1,0x10F1,0x1890,0x200E,0x8235,0xA276,0x99F4,0xA1F4,0xA1F4,0xA9F3,0xA9F3,0xB1F3,0xA9B3,0xA9D3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9D3,0xA9D3,0xB1F3,0xA9F4,0xA9F3,0xA1F3,0x99F4,0x9A55,0x92F8,0x38F0,0x2952,0x4296,0x3296,0x11B3,0x0151,0x0131,0x0111,0x00F0,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0131,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F0,0x00F1,0x0111,0x0111,0x00F0,0x0110,0x0110,0x00F0,0x0111,0x0131,0x0992,0x3338,0x3338,0x09F4,0x0171,0x0131,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00D1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0110,0x0110,0x0151,0x1A34,0x3318,0x2AD7,0x09F3,0x0172,0x0131,0x0111,0x00F0,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x0111,0x00F0,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F1,0x00D1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F0,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00F1,0x00D0,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F0,0x00F1,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x0111,0x0131,0x0110,0x0110,0x0131,0x1A14,0x3B39,0x3318,0x1A35,0x0172,0x0131,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1, + 0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00D0,0x00D0,0x00F0,0x00F0,0x00F1,0x00F0,0x0110,0x00F0,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0172,0x1A55,0x2AF7,0x2AD7,0x1234,0x0192,0x0131,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00D0,0x00F1,0x00D0,0x00D0,0x00D1,0x00F1,0x00F1,0x00D1,0x00D1,0x00D1,0x00F1,0x00D1,0x00F1,0x00F1,0x00D1,0x00F1,0x00D1,0x00D1,0x00D0,0x00F1,0x00D1,0x00F1,0x0111,0x00F1,0x00D1,0x00F1,0x00D1,0x00D0,0x00D0,0x00D0,0x00F0,0x00F1,0x00D0,0x00F0,0x00F1,0x00F1,0x00D0,0x00D0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x0110,0x0131,0x11F3,0x2AD7,0x32F7,0x1A55,0x0992,0x0131,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F1,0x0111,0x0111,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F0,0x00F0,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0152,0x2276,0x3B39,0x2296,0x0192,0x0131,0x0111,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F0,0x00F0,0x0110,0x0152,0x3B39,0x1A75,0x0172,0x0131,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00D0,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0131,0x2296,0x3B39,0x0192,0x0131,0x0111,0x00F0,0x00F0,0x0111,0x0111,0x00F1,0x00F0,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x0111,0x0111,0x0111,0x0111,0x00F0,0x439A,0x09B3,0x0131,0x0111,0x00D0,0x00D0,0x0111,0x0111,0x00F0,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00D1,0x00F1,0x0111,0x00F1,0x00D1,0x00D1,0x00F1,0x00D0,0x2A97,0x0993,0x0111,0x0112,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F0,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0111,0x0151,0x437A,0x11D4,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x00F0,0x00F0,0x0110,0x0110,0x0110,0x0151,0x1A76,0x3B59,0x0172,0x0111,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x08F0,0x18D0,0x182E,0x5932,0x9AB7,0x9A15,0xA215,0xA1D4,0xA9F4,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xB1F3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9F3,0xA9D3,0xA9D3,0xA9F3,0xA1D3,0xAA14,0xA214,0x9A55,0x92F8,0x180D,0x108F,0x1111,0x2214,0x32B7,0x11F4,0x0151,0x0131,0x00F0,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x0131,0x0151,0x1214,0x3B38,0x2296,0x09B3,0x0151,0x0110,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00D1,0x00F1,0x00D1,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00D1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x0172,0x1214,0x3318,0x2AD7,0x11F4,0x0151,0x0130,0x0131,0x0110,0x00F0,0x0110,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F0,0x00F0,0x00F1,0x00D0,0x00F1,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F1,0x00D0,0x00D1,0x00F1,0x00D0,0x00D0,0x00F0,0x00D0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x0110,0x0110,0x0151,0x09B2,0x2296,0x3318,0x2AB7,0x0992,0x0110,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00D0,0x00F0,0x00D0,0x00D0,0x00F1,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D1,0x00D1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1, + 0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00D1,0x00D1,0x00D1,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F0,0x00D0,0x00F0,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x0130,0x09B3,0x2275,0x3318,0x2AD7,0x09D3,0x0151,0x0110,0x00F0,0x0110,0x00F0,0x0110,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F1,0x00F1,0x00F1,0x0111,0x00F0,0x00F1,0x00F1,0x00F1,0x0111,0x00D1,0x00F1,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00F0,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00D0,0x00D0,0x00F1,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F0,0x0111,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x0110,0x0151,0x11F4,0x2276,0x2296,0x2296,0x09B2,0x0110,0x0110,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F0,0x00F1,0x00F1,0x00D0,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00F0,0x0111,0x00F1,0x00F1,0x00D0,0x00D0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x0111,0x09B3,0x2AB7,0x32F7,0x1214,0x0151,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F1,0x00D0,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F0,0x0110,0x00F0,0x00F1,0x00F0,0x00F1,0x00F0,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F0,0x00D0,0x00D0,0x00F0,0x0110,0x0110,0x09B3,0x3B39,0x1214,0x0172,0x0131,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x0111,0x0111,0x0111,0x00F0,0x00D0,0x00F0,0x0111,0x0111,0x11F4,0x3B19,0x0993,0x0131,0x0111,0x00F1,0x0111,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00D1,0x00D1,0x00F1,0x00F1,0x0132,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x0110,0x11D3,0x3B18,0x0151,0x0131,0x0111,0x00D0,0x00D0,0x00F1,0x0111,0x00F0,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x0111,0x00F1,0x00D1,0x00F1,0x00D1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x2AD7,0x11F4,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F0,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F0,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x0111,0x00F1,0x00F0,0x00F1,0x0111,0x00F0,0x0111,0x0111,0x11D3,0x3B19,0x0131,0x0111,0x0111,0x0111,0x0111,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x00F0,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F0,0x0110,0x00F0,0x0110,0x0110,0x0131,0x0151,0x1A76,0x2AF7,0x0151,0x0111,0x00F0,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00D1,0x0111,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F0,0x00F1,0x0111,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x0111,0x0131,0x0111,0x0111,0x00F0,0x00F0,0x08D0,0x1911,0x28D0,0x386E,0x9AB7,0x9A55,0xA235,0x99D3,0xA1D3,0xB214,0xA9D3,0xB214,0xA9D3,0xA9D3,0xB1F3,0xA9D3,0xA9D3,0xA9F3,0xA9D3,0xA9F3,0xA9F3,0xB1F4,0xA9F4,0xAA14,0xAA55,0x9A55,0x92F7,0x180C,0x086E,0x08F0,0x0110,0x11B2,0x32F7,0x1A14,0x0131,0x0111,0x0111,0x00F0,0x00F1,0x00D0,0x00D0,0x00F0,0x00F1,0x0131,0x0111,0x00F1,0x00F1,0x00D1,0x00F1,0x00D1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x0111,0x0110,0x0151,0x32F7,0x3318,0x1A55,0x0192,0x0111,0x00F0,0x00F0,0x00D0,0x00D0,0x00F1,0x00F1,0x00F0,0x00D0,0x00F1,0x00F0,0x00D0,0x00D0,0x00F0,0x00F1,0x00F1,0x00D0,0x00F1,0x00D0,0x00D0,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x0151,0x2255,0x3318,0x2AF7,0x1214,0x0171,0x0131,0x0111,0x0110,0x00F0,0x0110,0x00F0,0x0110,0x00F0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x0111,0x00F1,0x00D0,0x00D0,0x00D0,0x00F0,0x00F1,0x00D1,0x00F1,0x00F0,0x00F0,0x00F1,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x00F0,0x00F0,0x00F0,0x0110,0x0131,0x09B2,0x22B6,0x3338,0x2296,0x09F3,0x0171,0x0130,0x0110,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x00D0,0x00D0,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x00F1,0x0111,0x00F1,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0, + 0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00D0,0x00D1,0x00D1,0x00F1,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x0111,0x00F0,0x00D0,0x00F1,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0131,0x11F4,0x32F7,0x3318,0x1A55,0x09B2,0x0151,0x0131,0x0110,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F0,0x00F0,0x00D0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x00D0,0x00F1,0x00D0,0x00F1,0x00D0,0x00F1,0x00D0,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x00D0,0x00F1,0x00F0,0x00D0,0x00F1,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F1,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x0110,0x1A14,0x2AD7,0x2AB7,0x1A55,0x09D3,0x0131,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00D0,0x00F1,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0151,0x2255,0x32F8,0x2276,0x0151,0x0130,0x0110,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00D0,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00D0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x1A35,0x3B18,0x11F4,0x0172,0x0131,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x0111,0x0111,0x0111,0x00F1,0x00F0,0x0111,0x00F0,0x0111,0x00F1,0x00F0,0x00F1,0x0111,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x0111,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x0152,0x3B19,0x11F4,0x0131,0x0111,0x00F0,0x00D0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x0111,0x00F0,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F0,0x0111,0x00F1,0x0111,0x00F0,0x00D0,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F0,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x0110,0x4359,0x1A14,0x0151,0x0111,0x00F0,0x00D0,0x00F0,0x0111,0x0111,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x0111,0x0111,0x00F0,0x00F0,0x00F1,0x0111,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x0111,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00D0,0x00F1,0x00D1,0x00F1,0x00F1,0x00D0,0x00F1,0x00B0,0x2A96,0x11D3,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F0,0x0110,0x00F0,0x00F0,0x0111,0x00F0,0x0111,0x0111,0x00F0,0x00F1,0x0111,0x00F0,0x0111,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x0111,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x0110,0x0131,0x3318,0x0192,0x0131,0x0111,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D0,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F0,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F0,0x00F1,0x0111,0x00F1,0x0111,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0111,0x0131,0x0192,0x22D7,0x2AD7,0x0131,0x0111,0x00F0,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F0,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x0111,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F0,0x00F0,0x08D0,0x10D0,0x20D0,0x282E,0x7A35,0xA2B7,0x99F4,0xA1F4,0xA1D4,0xA9F4,0xB1F4,0xA9D3,0xA9D3,0xB1F3,0xA9D3,0xA9B2,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xB1F3,0xB1F3,0xB1F4,0xAA14,0xAA35,0x9A55,0x92B7,0x180C,0x086E,0x08AF,0x00F0,0x0131,0x0992,0x3B18,0x2255,0x0131,0x0111,0x0111,0x00F1,0x00F0,0x00D0,0x00F0,0x00F1,0x0111,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F1,0x00F0,0x00D0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x0110,0x0131,0x09D3,0x2AB7,0x3318,0x11D3,0x0131,0x00F0,0x00F0,0x00F0,0x00F1,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x0111,0x00D0,0x00F1,0x00F1,0x00D0,0x00F0,0x00F0,0x00F0,0x00F1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00D0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F0,0x00F0,0x00F1,0x00D0,0x00F0,0x0111,0x00F1,0x00F0,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F0,0x00F1,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x0110,0x0110,0x0172,0x1214,0x3317,0x32F7,0x11F3,0x0151,0x0131,0x0110,0x0110,0x00F0,0x0110,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x0151,0x0192,0x1214,0x22B6,0x3B58,0x1A54,0x0151,0x0130,0x0131,0x0110,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F1,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0, + 0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F1,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00CF,0x00F0,0x00F0,0x0110,0x0151,0x1A34,0x3318,0x2AD7,0x1A14,0x0131,0x0130,0x0151,0x0131,0x00F0,0x00D0,0x00CF,0x00CF,0x00CF,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F1,0x00F0,0x00F0,0x00F0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F0,0x00F0,0x00F0,0x00D0,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x0111,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x0110,0x11B3,0x2A96,0x2276,0x1A55,0x11D3,0x0151,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00D0,0x00F0,0x00D0,0x00D0,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1,0x0111,0x00F1,0x00F1,0x00D0,0x00F0,0x00F1,0x00F1,0x00F0,0x00D0,0x00F0,0x00F1,0x0111,0x0111,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x0110,0x0131,0x11F3,0x2AD7,0x22B6,0x1214,0x0131,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F0,0x00F1,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x00D0,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00D0,0x00D0,0x00D1,0x00F1,0x00D0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0131,0x2275,0x32F8,0x11D3,0x0172,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F1,0x0111,0x00F0,0x00F1,0x00F0,0x00D0,0x00F1,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x0111,0x0111,0x00F0,0x0111,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x0111,0x0131,0x3318,0x2235,0x0132,0x0111,0x00F1,0x0111,0x00F0,0x00F1,0x00F1,0x00D0,0x00D0,0x00F0,0x00F0,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x0111,0x00F0,0x0111,0x00F0,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x0111,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1,0x00F0,0x00F1,0x00F0,0x00D0,0x00F1,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x0111,0x00F0,0x0110,0x00F0,0x0110,0x00F0,0x0111,0x0110,0x0172,0x4379,0x0172,0x0131,0x0111,0x00F0,0x00F0,0x00D0,0x00F1,0x00F0,0x0111,0x00F0,0x00F1,0x0111,0x00D0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x0111,0x00F0,0x00F1,0x00F0,0x00F1,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F1,0x00F0,0x00F0,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x0132,0x0111,0x00F1,0x00D1,0x00D0,0x00D0,0x00D0,0x00D0,0x2AB7,0x09D3,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00D1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F0,0x0111,0x0111,0x00F0,0x00F1,0x00F0,0x00F0,0x0110,0x00F0,0x00F0,0x00F0,0x0110,0x00F0,0x00F0,0x0111,0x0111,0x00F1,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F0,0x0111,0x00F1,0x00F0,0x0111,0x00F0,0x00F1,0x00F1,0x00F0,0x0111,0x00F1,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x0111,0x00F0,0x00F0,0x0131,0x0111,0x0111,0x00F0,0x00F0,0x0110,0x2275,0x2276,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x0111,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x0111,0x00F1,0x00F0,0x00F0,0x00F0,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0151,0x09D3,0x3339,0x1A35,0x00D0,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00F1,0x00D1,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x0111,0x0111,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F0,0x00D0,0x08D0,0x108F,0x204E,0x5111,0xA2D8,0x9A35,0xA235,0xA9F4,0xA9F4,0xA9D3,0xB1F3,0xB1D3,0xA9D3,0xB1D3,0xA9D3,0xA9D3,0xB1F4,0xA9D3,0xA9F3,0xA9F3,0xB1F4,0xB1F4,0xA9F4,0xA214,0x9A55,0x92B7,0x180C,0x106E,0x08AF,0x00D0,0x00F0,0x0111,0x0151,0x3B18,0x2AB7,0x0131,0x0110,0x0111,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F1,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00D0,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x00D1,0x0111,0x00F1,0x00F1,0x00D0,0x00D0,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x0111,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1,0x00F0,0x0111,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0131,0x0151,0x1A55,0x3318,0x2296,0x0992,0x0110,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x0111,0x00F1,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x0111,0x00F1,0x00F1,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x0110,0x0110,0x0151,0x1A14,0x32F8,0x2AB7,0x09D3,0x0151,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00B0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F1,0x0111,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x0110,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x0110,0x0130,0x0151,0x0171,0x09B2,0x2296,0x3B38,0x2296,0x0192,0x0130,0x0110,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0, + 0x00D1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00EF,0x00EF,0x0971,0x2AB6,0x3B38,0x2AD7,0x11F3,0x0151,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x00D0,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00B0,0x00D0,0x00D0,0x00D0,0x00D0,0x00B0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00CF,0x00F0,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x0992,0x2AB7,0x2A97,0x1A35,0x09B3,0x0131,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F1,0x00D0,0x00D1,0x00D0,0x00D1,0x00D0,0x00D1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x0110,0x0171,0x2296,0x3318,0x1A55,0x0192,0x0130,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F1,0x00F1,0x00D0,0x00F1,0x00D1,0x00F1,0x00D1,0x00D1,0x00D1,0x00F1,0x00D1,0x00D1,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0131,0x2A96,0x32F8,0x09B3,0x0172,0x0110,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F1,0x00D0,0x00F1,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00F1,0x00F0,0x00F0,0x0110,0x0110,0x2AB7,0x32F8,0x0152,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F1,0x00F0,0x00F1,0x00F0,0x00D0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x0110,0x0110,0x00F0,0x2275,0x2AB6,0x0110,0x0131,0x00F0,0x00D0,0x00F0,0x00F1,0x00F1,0x00D0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F1,0x00D0,0x00F1,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0131,0x00F0,0x00F1,0x00F1,0x00D0,0x00D0,0x00F0,0x00D0,0x2276,0x11D3,0x0111,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F1,0x00F0,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00D0,0x00F0,0x0111,0x00F0,0x00F1,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0172,0x32F8,0x0111,0x00F1,0x00D0,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x0111,0x00F1,0x00F1,0x00F1,0x00D0,0x00F1,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F1,0x00F1,0x00F0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00D0,0x00F1,0x00F1,0x00D0,0x00D0,0x0111,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x0111,0x0151,0x09F4,0x3B39,0x0993,0x00F0,0x00D0,0x00F1,0x00D1,0x00D0,0x00D1,0x00D0,0x00F1,0x00F1,0x00D1,0x00D1,0x00D1,0x00D0,0x00F1,0x0111,0x00D0,0x00F1,0x00D1,0x00D1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D1,0x00F1,0x00D0,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00D0,0x08B0,0x108F,0x206F,0x304E,0x9296,0x9A55,0xA235,0xA1F4,0xA9D4,0xA9D3,0xB1F3,0xB1D3,0xB1D3,0xB1D3,0xA9D3,0xB1D3,0xB1F4,0xA9D3,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xA9F4,0xA234,0x9A75,0x8A96,0x180D,0x106E,0x08AF,0x00AF,0x00F0,0x00F0,0x0110,0x0151,0x2276,0x2AB7,0x0131,0x0111,0x0111,0x00F0,0x00F0,0x00D0,0x00F1,0x00D0,0x00F0,0x00F1,0x00F1,0x00F1,0x00F1,0x00D1,0x00D0,0x00F1,0x00D1,0x00F1,0x00F1,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F1,0x00D0,0x00F0,0x00F1,0x00F1,0x00D0,0x00F1,0x00D0,0x00D0,0x00F1,0x00D0,0x00D1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x0110,0x00F0,0x0110,0x0131,0x0992,0x2295,0x32F7,0x1A34,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D1,0x00F1,0x00D0,0x00F1,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F1,0x00D0,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00F0,0x00F0,0x0110,0x0110,0x0151,0x11F3,0x3318,0x2AD7,0x11B3,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x0110,0x0110,0x0191,0x1A34,0x32F7,0x32F7,0x11F3,0x0131,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0, + 0x00B0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00B0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00B0,0x00D0,0x00AF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F1,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00B0,0x00B0,0x00F0,0x00F0,0x00D0,0x00F0,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00F0,0x00F0,0x00F0,0x0130,0x11D3,0x2A96,0x3B18,0x2A96,0x09B2,0x0130,0x0110,0x0110,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00AF,0x00B0,0x00B0,0x00D0,0x00B0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x0110,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x0992,0x2AB6,0x32F8,0x2A96,0x11D3,0x0111,0x00F0,0x00F0,0x00F0,0x0110,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00F1,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x0111,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x0110,0x0151,0x09F3,0x2AD6,0x2296,0x11F3,0x0130,0x0110,0x0110,0x0110,0x0110,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D1,0x00D1,0x00D1,0x00D0,0x00D1,0x00D0,0x00D1,0x00D1,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F0,0x0111,0x0111,0x0110,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x0131,0x2AB7,0x2296,0x0992,0x0972,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x00F0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00F0,0x00F0,0x00F1,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x0111,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00B0,0x00B0,0x00F1,0x00F1,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x0110,0x0110,0x2255,0x3B59,0x0192,0x0131,0x00F1,0x00F0,0x00D0,0x00D0,0x0111,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x0111,0x00F0,0x00F1,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F1,0x00F0,0x00F1,0x00F0,0x00F0,0x00D0,0x00F1,0x00F0,0x0111,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x0110,0x0951,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x0110,0x3B39,0x0992,0x0131,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F1,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F1,0x00F1,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00D0,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x00F1,0x00F0,0x00F0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00AF,0x2255,0x09B2,0x0111,0x0111,0x00F0,0x00D0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F1,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F1,0x00D0,0x00D0,0x0111,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x0130,0x4359,0x11D3,0x00F0,0x00F0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00B0,0x00D0,0x0111,0x0111,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F1,0x00D0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F1,0x00D0,0x00F1,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F1,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x0110,0x0110,0x0151,0x1A55,0x3B18,0x0131,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00F1,0x00D0,0x00D1,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x0111,0x00F1,0x00F1,0x00D0,0x00F0,0x00D0,0x0111,0x0911,0x08F0,0x10F0,0x10B0,0x188F,0x202D,0x71B3,0xA2B7,0x9A35,0xA214,0xA1D3,0xA9D4,0xA9B3,0xB1D3,0xA9B3,0xB1D3,0xA9D3,0xA9D3,0xA9D3,0xB1F4,0xA9B3,0xB1F3,0xB1F4,0xA9F3,0xA9F4,0xAA55,0x9A55,0x92B7,0x180C,0x106E,0x08D0,0x08D0,0x00AF,0x00CF,0x00D0,0x0110,0x0130,0x2A76,0x3B39,0x0992,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F1,0x00D1,0x00D1,0x00F1,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F1,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x0110,0x0171,0x1A14,0x2AB6,0x2AB6,0x0172,0x0110,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D1,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F1,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x0110,0x00F0,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00F0,0x00F0,0x0110,0x0130,0x2255,0x3B38,0x2AB6,0x09B2,0x0131,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00CF,0x00D0,0x00CF,0x00D0,0x00CF,0x00F0,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00F0,0x00EF,0x00EF,0x0151,0x2234,0x3B18,0x32F7,0x1A34,0x0171,0x0110,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0, + 0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00B0,0x00B0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00B0,0x00B0,0x00D0,0x00B0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00EF,0x00F0,0x0951,0x1A14,0x3AF7,0x3B18,0x2A75,0x09B2,0x0131,0x00F0,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00D0,0x00D0,0x0110,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x0971,0x2A96,0x3B38,0x2AB6,0x11F3,0x0151,0x00F0,0x00F0,0x00F0,0x00CF,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x0110,0x0110,0x0171,0x2296,0x2AD7,0x1A75,0x0171,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F1,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D1,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x0131,0x32D7,0x2296,0x0992,0x0151,0x00F0,0x00F0,0x00CF,0x00CF,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x0110,0x0110,0x0992,0x4379,0x11F3,0x0151,0x0111,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F1,0x00D0,0x00F0,0x00D0,0x00F1,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00D0,0x00F0,0x00F1,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x0111,0x0111,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x19F4,0x3B39,0x0131,0x0111,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F1,0x00F0,0x00D0,0x00F1,0x00F1,0x00D0,0x00F1,0x00F1,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00B0,0x00D0,0x00D0,0x00AF,0x1A34,0x09B2,0x0110,0x0111,0x0111,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F1,0x00F1,0x00F0,0x00F0,0x00D0,0x00F0,0x00F1,0x00D0,0x00F1,0x00F1,0x00F0,0x0111,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x0111,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x0110,0x2255,0x3B39,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F1,0x00D0,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F1,0x00D0,0x00F1,0x00D0,0x00F1,0x00F1,0x00F0,0x00D0,0x00D0,0x00F1,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x0111,0x0151,0x2A96,0x2AB7,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D1,0x00D0,0x00F1,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F1,0x00F1,0x00D0,0x00F1,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F1,0x00F0,0x00F0,0x00F1,0x00D0,0x00F1,0x00F0,0x00D0,0x00F0,0x00F0,0x08F1,0x08D0,0x10D0,0x188F,0x204E,0x40AF,0x9AD7,0x9A55,0xA215,0xA9F4,0xA9D3,0xB1F4,0xB1D3,0xB1D3,0xB1D3,0xA9D3,0xB1D3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xA9D3,0xB214,0xAA14,0xA234,0x9A55,0x8A96,0x180C,0x106E,0x08AF,0x00D0,0x00CF,0x00AF,0x00CF,0x00D0,0x0110,0x0130,0x1A14,0x4359,0x11D3,0x0110,0x0111,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00F1,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x0110,0x0130,0x0192,0x1A55,0x32F8,0x1A14,0x0131,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x00F0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00F0,0x00F0,0x00F0,0x0110,0x0171,0x1A14,0x4379,0x32D7,0x0972,0x0110,0x00F0,0x0110,0x0110,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00CF,0x00CF,0x00D0,0x00CF,0x00D0,0x00CF,0x00EF,0x0110,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x0110,0x0150,0x09B2,0x2AB6,0x3B38,0x32D7,0x0992,0x0110,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0, + 0x00D1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00B0,0x00B0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00AF,0x00B0,0x00B0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00EF,0x0130,0x0971,0x1A14,0x2A75,0x2A75,0x2234,0x0992,0x0110,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00F0,0x00D0,0x00CF,0x00F0,0x00D0,0x00D0,0x00B0,0x00D0,0x00AF,0x00AF,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x0110,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00B0,0x00B0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00F0,0x00F0,0x0151,0x2255,0x3B18,0x2A96,0x11B2,0x0151,0x0110,0x0110,0x00F0,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00D0,0x00D0,0x0110,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00CF,0x00D0,0x00D0,0x00CF,0x00F0,0x0110,0x0130,0x09B2,0x2AD7,0x2275,0x1234,0x0151,0x0110,0x00F0,0x00EF,0x00CF,0x00F0,0x00F0,0x00D0,0x00CF,0x00CF,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F1,0x00F0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F1,0x00F0,0x00D0,0x0111,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D1,0x00F1,0x00F1,0x00D1,0x00D0,0x00F1,0x0111,0x00F0,0x00D0,0x00D0,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x0952,0x2AB7,0x2AB7,0x0992,0x0952,0x00D0,0x00CF,0x00CF,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x0111,0x00F0,0x00D0,0x00D0,0x00D0,0x00F1,0x0111,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x0110,0x0131,0x3B39,0x1A34,0x0131,0x0110,0x00F0,0x00D0,0x0111,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F1,0x00F1,0x00F0,0x00D0,0x00F1,0x00F1,0x00D0,0x00D0,0x00F1,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00CF,0x00D0,0x0110,0x3B18,0x19F4,0x0111,0x00F0,0x00F0,0x00F0,0x00D0,0x0131,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x0111,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x0111,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00F1,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x0110,0x00D0,0x00D0,0x00F0,0x00D0,0x0111,0x00F0,0x00D0,0x00D0,0x00D0,0x00CF,0x1A34,0x11F3,0x0110,0x0111,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00F0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00D0,0x00D0,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x0131,0x437A,0x0172,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F0,0x0911,0x00F0,0x00D0,0x00D0,0x00F0,0x00F1,0x00F0,0x00D0,0x00F0,0x00F0,0x00F1,0x00F1,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F1,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F1,0x00F0,0x00D0,0x00F1,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F1,0x00F0,0x00D0,0x00F0,0x00F0,0x0110,0x0992,0x32F8,0x2255,0x00F0,0x00D0,0x00B0,0x00F1,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00D1,0x00F1,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00B0,0x00B0,0x00D0,0x00D0,0x08D0,0x08B0,0x108F,0x206F,0x280D,0x8235,0x9A55,0x9A14,0xAA15,0xA9F4,0xB1F4,0xB1D3,0xB1D3,0xB1D4,0xA9B3,0xA9B3,0xA9D3,0xB1F4,0xA9D3,0xA9D3,0xA9D3,0xA9F3,0xAA14,0xAA55,0xA275,0x92B6,0x180C,0x106E,0x088F,0x00AF,0x00D0,0x00D0,0x00AF,0x00D0,0x00CF,0x00F0,0x0110,0x11D3,0x3B18,0x1A14,0x0111,0x0111,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F1,0x00F1,0x00D0,0x00D0,0x00F1,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x0110,0x00F0,0x0110,0x0151,0x11F3,0x32F7,0x2296,0x0172,0x0110,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F0,0x00D0,0x00B0,0x00D0,0x00D0,0x0111,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00B0,0x00B0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00D0,0x00CF,0x00F0,0x00D0,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00F0,0x00F0,0x0110,0x0110,0x0151,0x2296,0x439A,0x2AB6,0x09B2,0x0130,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00CF,0x00D0,0x00CF,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00AF,0x00D0,0x00D0,0x00D0,0x0110,0x00D0,0x00F0,0x00CF,0x00CF,0x00CF,0x00F0,0x00F0,0x00F0,0x00D0,0x00CF,0x00AF,0x00CF,0x00CF,0x00F0,0x00F0,0x0110,0x0130,0x0130,0x0992,0x2A96,0x3B58,0x3318,0x11F3,0x0151,0x0110,0x00CF,0x00F0,0x00F0,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00B0,0x00AF,0x00AF, + 0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00D0,0x00AF,0x00AF,0x00AF,0x00D0,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00AF,0x00D0,0x00AF,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00EF,0x0971,0x11D3,0x1A14,0x2A96,0x2275,0x1A14,0x0971,0x00F0,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00F0,0x00D0,0x00CF,0x00CF,0x00AF,0x00D0,0x00CF,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00AF,0x00D0,0x00CF,0x00CF,0x00F0,0x00EF,0x00CF,0x00CF,0x00EF,0x0151,0x1A14,0x3B18,0x32D7,0x11D3,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00F0,0x0992,0x1A55,0x32F7,0x1A34,0x0191,0x0110,0x00EF,0x00CF,0x00CF,0x00CF,0x00AF,0x00EF,0x00EF,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00CF,0x00D0,0x00F0,0x00F0,0x0992,0x32F7,0x2255,0x0151,0x0131,0x00F0,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x0130,0x2AB7,0x2A96,0x0151,0x0110,0x0111,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x0110,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F1,0x00D0,0x00D0,0x00F0,0x0111,0x00F0,0x00F0,0x00F0,0x00F1,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x0151,0x3B18,0x0131,0x0111,0x00F0,0x00F0,0x00CF,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00F1,0x00F1,0x00F1,0x00F1,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x0111,0x00F0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00CF,0x2254,0x11F3,0x0110,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F1,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F1,0x00D0,0x00F1,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x0110,0x00F0,0x2296,0x1A34,0x0110,0x00F0,0x00F0,0x0111,0x00F1,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x0110,0x11B3,0x32F8,0x11D3,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00B0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x08D0,0x08B0,0x18D0,0x186E,0x200D,0x6193,0x9A96,0xA255,0xA1F4,0xAA14,0xA9D3,0xB1D3,0xB1D3,0xA9B3,0xA9B3,0xB1F4,0xA9D3,0xA9D4,0xA9D3,0xB1F3,0xA9D3,0xA9F4,0xAA14,0xA235,0x9A55,0x8276,0x180C,0x106E,0x088F,0x00AF,0x08F0,0x00D0,0x00CF,0x00AF,0x00CF,0x00CF,0x0110,0x0110,0x0192,0x2AD7,0x2255,0x0131,0x0111,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x0110,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00F0,0x00F0,0x00CF,0x0110,0x0130,0x0130,0x0171,0x1234,0x2AB6,0x1A34,0x0130,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00F0,0x00F0,0x0110,0x0110,0x0171,0x1A14,0x3B59,0x2AD7,0x0151,0x00F0,0x00F0,0x00F0,0x00F0,0x00AF,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00CF,0x00D0,0x00CF,0x00CF,0x00AF,0x00F0,0x0110,0x00CF,0x00CF,0x00D0,0x00CF,0x00F0,0x00CF,0x00F0,0x0110,0x00D0,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00F0,0x00F0,0x0110,0x0110,0x0110,0x0150,0x11F3,0x2AD6,0x4379,0x1A34,0x0130,0x0110,0x0110,0x00F0,0x00CF,0x00CF,0x00D0,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00AF,0x00D0,0x00D0,0x00AF,0x00AF,0x00D0, + 0x00D0,0x00D0,0x00D0,0x00F0,0x00AF,0x00B0,0x00AF,0x00AF,0x00AF,0x00D0,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00CF,0x00AF,0x00D0,0x00AF,0x00CF,0x00D0,0x00D0,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00D0,0x00D0,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00F0,0x0151,0x11D3,0x1A14,0x2275,0x2275,0x2254,0x0991,0x0110,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00AF,0x00CF,0x00D0,0x00F0,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00D0,0x00CF,0x00D0,0x00D0,0x00CF,0x00CF,0x00AF,0x00CF,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00AF,0x00B0,0x00AF,0x00AF,0x00CF,0x00CF,0x00EF,0x00EF,0x00CF,0x00F0,0x00EF,0x0130,0x09B2,0x2255,0x32F7,0x1A14,0x00EF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00EF,0x00F0,0x00F0,0x00CF,0x00F0,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00CF,0x00D0,0x00CF,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00F0,0x00D0,0x00D0,0x00CF,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00F0,0x00D0,0x00CF,0x00CF,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00CF,0x00D0,0x00CF,0x00D0,0x00D0,0x00F0,0x00F0,0x0110,0x00EF,0x0130,0x09D3,0x2275,0x2AB6,0x11D3,0x0130,0x00EF,0x00F0,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00AF,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x11B3,0x32D7,0x11F3,0x0130,0x00F0,0x00EF,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00CF,0x00CF,0x00AF,0x00B0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00F0,0x0110,0x11F3,0x2AB6,0x0171,0x0110,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x0111,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x0111,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x1A35,0x2255,0x0111,0x0110,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00AF,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00F1,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x0110,0x00F0,0x00CF,0x00CF,0x00D0,0x00F0,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x1A34,0x1A34,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00CF,0x00F0,0x00CF,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00AF,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00AF,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00CF,0x00CF,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x0110,0x09B2,0x3318,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D1,0x00D0,0x00B0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x0110,0x11F4,0x32F8,0x0172,0x00F0,0x00D0,0x00D0,0x00B0,0x00D0,0x00B0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00B0,0x08D0,0x10D0,0x108F,0x182D,0x40B0,0x9297,0x9A55,0x99F4,0xA1D3,0xA9F3,0xA9F3,0xA9B3,0xA9B3,0xB1D3,0xA9D3,0xA9D4,0xB1F4,0xA9D3,0xA9D3,0xB1F4,0xB1F4,0xAA14,0xA235,0x9A76,0x8235,0x180C,0x106E,0x08AF,0x00CF,0x00CF,0x00F0,0x00F0,0x00F0,0x00F0,0x00EF,0x00F0,0x00F0,0x0110,0x0151,0x2AD7,0x2296,0x0172,0x0131,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x0110,0x00F0,0x00AF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00AF,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00CF,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00D0,0x00CF,0x00F0,0x00F0,0x0110,0x0110,0x0130,0x0130,0x09B2,0x2AD6,0x22B6,0x0171,0x0110,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00CF,0x00AF,0x00CF,0x00D0,0x00CF,0x00D0,0x00CF,0x00AF,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00CF,0x00CF,0x00CF,0x00AF,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00EF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00F0,0x0110,0x0110,0x0110,0x0130,0x1A34,0x3B38,0x1A55,0x0151,0x0110,0x00F0,0x00F0,0x00CF,0x00CF,0x00F0,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00CF,0x00CF,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00F0,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00CF,0x00F0,0x00CF,0x00EF,0x00CF,0x00EF,0x00EF,0x00CF,0x00F0,0x00EF,0x0110,0x0992,0x32D7,0x3318,0x1A34,0x0171,0x0130,0x00F0,0x00F0,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00D0,0x00CF,0x00D0,0x00CF, + 0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00AF,0x00AF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x0110,0x11B2,0x2A75,0x2A96,0x2275,0x1A34,0x09B2,0x0171,0x010F,0x00EF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00F0,0x00F0,0x0110,0x19F3,0x2275,0x2AB6,0x1A34,0x0171,0x0110,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00CF,0x00D0,0x00AF,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00F0,0x00CF,0x00EF,0x00F0,0x00F0,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00F0,0x00CF,0x00D0,0x00D0,0x00F0,0x0110,0x0130,0x0171,0x2255,0x2AD6,0x1A34,0x0171,0x0110,0x00EF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00AF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x0110,0x0110,0x19F4,0x2AB6,0x09B2,0x0150,0x0110,0x00EF,0x00EF,0x00CF,0x00EF,0x00CF,0x00CF,0x00F0,0x00D0,0x00CF,0x00D0,0x00AF,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00CF,0x00D0,0x00F0,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x0110,0x0992,0x32D7,0x09B2,0x0130,0x0110,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00F0,0x00D0,0x00F0,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x32D7,0x11F3,0x0110,0x0110,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00D0,0x00AF,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00CF,0x00D0,0x00D0,0x00F0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x1A34,0x1A34,0x00CF,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00F0,0x00F0,0x00F0,0x00CF,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00F0,0x00F0,0x00CF,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x0110,0x0131,0x3B18,0x0972,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00AF,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x0110,0x0110,0x0131,0x2A96,0x2AD7,0x0131,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00AF,0x00CF,0x00D0,0x00B0,0x08D0,0x18F0,0x102D,0x282D,0x8255,0x9235,0xA214,0xA214,0xA9F4,0xB1F4,0xA9D3,0xB1D3,0xB1F3,0xA9D3,0xB1F4,0xB1F4,0xA9D3,0xA9D3,0xA9D3,0xA9F4,0xAA14,0xA235,0x9A76,0x7A14,0x100C,0x106E,0x088E,0x00AF,0x00AF,0x00CF,0x00F0,0x0110,0x00EF,0x00CF,0x00F0,0x00EF,0x0110,0x0130,0x0171,0x2AD7,0x2AF7,0x0172,0x0131,0x00F0,0x00D0,0x00F0,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00CF,0x00D0,0x00CF,0x00D0,0x00D0,0x00CF,0x00F0,0x00F0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x0130,0x0130,0x0191,0x1234,0x3B38,0x1A14,0x0110,0x0110,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00D0,0x00CF,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00CF,0x00F0,0x00D0,0x00CF,0x00D0,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x0110,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00F0,0x00EF,0x0110,0x0110,0x0171,0x2255,0x3B38,0x1A34,0x0130,0x0110,0x0110,0x0110,0x00F0,0x00F0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00F0,0x00EF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00F0,0x00EF,0x00EF,0x00EF,0x00EF,0x00EF,0x00EF,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x0110,0x0130,0x0191,0x1A55,0x3B59,0x2AB6,0x0992,0x0130,0x00EF,0x0110,0x0110,0x00F0,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00AF, + 0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00EF,0x0130,0x11D3,0x32D6,0x3B18,0x2A95,0x1A34,0x0150,0x010F,0x0130,0x00EF,0x00CE,0x00CE,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00D0,0x00CF,0x00F0,0x00CF,0x00F0,0x00CF,0x0110,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00AF,0x00F0,0x00CF,0x00F0,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x0110,0x0130,0x09B2,0x2A96,0x32D7,0x2A95,0x09B2,0x010F,0x010F,0x00EF,0x00EF,0x00CF,0x00F0,0x00F0,0x00F0,0x00EF,0x00CF,0x00AF,0x00CF,0x00CF,0x00EF,0x00F0,0x0110,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00D0,0x00F0,0x00F0,0x00CF,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00F0,0x00CF,0x00EF,0x00CF,0x00F0,0x00CF,0x00F0,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00F0,0x00AF,0x00D0,0x00D0,0x00CF,0x00CF,0x00AF,0x00CF,0x00D0,0x00CF,0x00CF,0x00F0,0x00F0,0x00CF,0x00AF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x0110,0x11D2,0x3317,0x2AB6,0x0992,0x0110,0x010F,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00D0,0x00D0,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00F0,0x00CF,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00AF,0x00D0,0x00AF,0x00D0,0x00D0,0x00F0,0x00CF,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00AF,0x00D0,0x00B0,0x00F0,0x00D0,0x00D0,0x00AF,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00EF,0x00CF,0x0110,0x0130,0x2255,0x32D7,0x0171,0x0130,0x0130,0x00F0,0x00EF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00F0,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00CF,0x00D0,0x00F0,0x00F0,0x00CF,0x00D0,0x00CF,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00AF,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00CF,0x00CF,0x00F0,0x0110,0x0171,0x32F7,0x09B2,0x0151,0x0110,0x00F0,0x00F0,0x00D0,0x00CF,0x00AF,0x00CF,0x00CF,0x00D0,0x00CF,0x00F0,0x00CF,0x00D0,0x00CF,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00B0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x19F4,0x2A96,0x0151,0x0110,0x00F0,0x00D0,0x00D0,0x00F0,0x00CF,0x00F0,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00D0,0x00CF,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00CF,0x00F0,0x00F0,0x00D0,0x00CF,0x00F0,0x00F0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00CF,0x00D0,0x00F0,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00EF,0x1A54,0x2255,0x00CF,0x00D0,0x00D0,0x00CF,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00CF,0x00F0,0x00CF,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F1,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00CF,0x00D0,0x00AF,0x00D0,0x00F0,0x00F0,0x00D0,0x00CF,0x00CF,0x00F0,0x0110,0x0110,0x1A34,0x2AD7,0x0131,0x0131,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00AF,0x00B0,0x00D0,0x00D0,0x00CF,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00B0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x0110,0x0110,0x0131,0x2AD7,0x1A55,0x0131,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x0110,0x00F0,0x00CF,0x00CF,0x00CF,0x00F0,0x00F0,0x00F0,0x00CF,0x00CF,0x00F0,0x00D0,0x00AF,0x00D0,0x00D0,0x00F0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00F0,0x00F0,0x00CF,0x00AF,0x00D0,0x00B0,0x08B0,0x10D0,0x104E,0x180C,0x69B3,0x9255,0x9A35,0xA214,0xA1F3,0xA9D3,0xA9F3,0xA9D3,0xA9D3,0xA9D3,0xB1F4,0xB214,0xA9D3,0xA9D3,0xA9D3,0xAA14,0xA1F3,0xA234,0x9A55,0x71D3,0x180C,0x108E,0x08AE,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x0110,0x0110,0x0130,0x0130,0x2296,0x2AD7,0x0171,0x0130,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00AF,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00F0,0x00CF,0x00D0,0x00D0,0x00F0,0x00CF,0x00D0,0x00D0,0x00F0,0x00CF,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00F0,0x00CF,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00AF,0x00D0,0x00CF,0x00D0,0x00CF,0x00F0,0x00CF,0x00D0,0x00CF,0x0110,0x00F0,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00F0,0x00EF,0x00F0,0x0110,0x0130,0x0151,0x11F3,0x3B38,0x2AD6,0x0151,0x0110,0x00F0,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00F0,0x00F0,0x00F0,0x00CF,0x0110,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00F0,0x00CF,0x00F0,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00F0,0x00F0,0x00CF,0x00CF,0x00F0,0x00D0,0x00CF,0x00CF,0x00F0,0x00D0,0x00D0,0x00CF,0x00F0,0x00F0,0x00D0,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00D0,0x00CF,0x00CF,0x00EF,0x00F0,0x00CF,0x00F0,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x0110,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x0110,0x0130,0x0130,0x09B2,0x32F7,0x32F7,0x1213,0x0151,0x0110,0x00EF,0x00CF,0x00EF,0x00CF,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00EF,0x0110,0x00EF,0x00EF,0x00F0,0x00EF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00EF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00EF,0x00F0,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x0110,0x0130,0x0110,0x010F,0x0150,0x2275,0x3B38,0x3338,0x1A54,0x0191,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AF, + 0x00F0,0x00D0,0x00D0,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x0110,0x0130,0x11D3,0x2275,0x2255,0x11F3,0x0991,0x0130,0x010F,0x010F,0x010F,0x00EF,0x00CE,0x00CE,0x00CE,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00F0,0x00EF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00CF,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00AF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00F0,0x00EF,0x010F,0x010F,0x0130,0x0992,0x2275,0x2AB6,0x1213,0x0151,0x0130,0x010F,0x00EF,0x00EF,0x00CF,0x00EF,0x00EF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00EF,0x00CF,0x00F0,0x00EF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00F0,0x00F0,0x0110,0x2255,0x32D7,0x0991,0x0130,0x010F,0x00EF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00F0,0x00F0,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00CF,0x00D0,0x00CF,0x00D0,0x00F0,0x00CF,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x0110,0x0130,0x2AB6,0x2AB6,0x0130,0x0130,0x0130,0x00EF,0x00CF,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00F0,0x00D0,0x00CF,0x00CF,0x00D0,0x00CF,0x00D0,0x00CF,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00CF,0x00F0,0x00CF,0x00D0,0x00F0,0x00F0,0x00CF,0x00F0,0x00F0,0x00CF,0x00F0,0x00F0,0x00CF,0x00D0,0x00D0,0x00D0,0x00CF,0x00F0,0x00CF,0x00D0,0x00CF,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00CF,0x00D0,0x00CF,0x00D0,0x00D0,0x00CF,0x00F0,0x00EF,0x00F0,0x00F0,0x0110,0x2295,0x1A34,0x0130,0x0110,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00F0,0x00D0,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00CF,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00F0,0x00CF,0x00D0,0x00D0,0x00F0,0x0110,0x0110,0x2A96,0x19F4,0x0110,0x00D0,0x00F0,0x00F0,0x00CF,0x00F0,0x00F0,0x00EF,0x00EF,0x00EF,0x00CF,0x00CF,0x00F0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00CF,0x00F0,0x00F0,0x00F0,0x00CF,0x00F0,0x00CF,0x00F0,0x00CF,0x00F0,0x00D0,0x00F0,0x00CF,0x00D0,0x00CF,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00CF,0x00AF,0x00CF,0x00F0,0x1A34,0x2296,0x00CF,0x00D0,0x00CF,0x00F0,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00CF,0x00CF,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00F0,0x0110,0x0110,0x0130,0x32F7,0x09D3,0x0130,0x00F0,0x00CF,0x00F0,0x00CF,0x00D0,0x00F0,0x00CF,0x00D0,0x00F0,0x00CF,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00CF,0x00D0,0x00F0,0x00CF,0x00D0,0x00F0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00F0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00D0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00D0,0x00F0,0x00F0,0x00D0,0x00D0,0x00CF,0x00CF,0x00F0,0x00F0,0x00F0,0x0110,0x00EF,0x0192,0x32F7,0x11D3,0x0110,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00CF,0x00CF,0x00F0,0x00CF,0x00F0,0x00EF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00D0,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00AF,0x08D0,0x00B0,0x08AF,0x108F,0x100C,0x48F0,0x9276,0x9A35,0xA214,0xA1F3,0xA9F3,0xA9F3,0xA9F3,0xA9D3,0xA9D3,0xB1F4,0xB1F4,0xA9D3,0xA9D3,0xA9F4,0xA9F4,0xAA34,0xA214,0x9A96,0x6192,0x100C,0x108E,0x00AE,0x00AE,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00F0,0x00EF,0x0130,0x1A34,0x2AB6,0x0192,0x0130,0x0110,0x00F0,0x00F0,0x00F0,0x00CF,0x00F0,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00F0,0x00D0,0x00D0,0x00CF,0x00EF,0x00EF,0x00CF,0x00F0,0x00F0,0x00CF,0x00D0,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00D0,0x00F0,0x00CF,0x00AF,0x00AF,0x00D0,0x00CF,0x00CF,0x00F0,0x00EF,0x00F0,0x00EF,0x0110,0x0110,0x0130,0x0171,0x11F3,0x32D7,0x11D3,0x0110,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00F0,0x00F0,0x00CF,0x00EF,0x00EF,0x00CF,0x00CF,0x00EF,0x00EF,0x00CF,0x00CF,0x00F0,0x00CF,0x00EF,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00F0,0x00F0,0x00EF,0x00F0,0x00D0,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00F0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00EF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00F0,0x00F0,0x010F,0x0130,0x0191,0x2275,0x3B38,0x11F3,0x0110,0x00F0,0x00EF,0x00EF,0x00F0,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00F0,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00CF,0x00CF,0x00F0,0x00EF,0x00CF,0x00EF,0x00EF,0x00CF,0x00F0,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00F0,0x00EF,0x00CF,0x00CF,0x00EF,0x00EF,0x00EF,0x00EF,0x00EF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00CF,0x00F0,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00EF,0x00EF,0x00CF,0x00CF,0x00AF,0x00AE,0x00CF,0x00CF,0x00EF,0x00F0,0x00EF,0x00EF,0x010F,0x010F,0x010F,0x0150,0x01B2,0x1A74,0x3317,0x2254,0x0151,0x00F0,0x0110,0x00F0,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF, + 0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00F0,0x00F0,0x0110,0x0110,0x0151,0x09D3,0x1A34,0x1A14,0x0171,0x0110,0x010F,0x00EF,0x00EF,0x00EF,0x00EF,0x00CE,0x00CE,0x00CE,0x00CF,0x00CE,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x0110,0x0110,0x010F,0x0130,0x0191,0x1234,0x2275,0x1213,0x0130,0x010F,0x010F,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AE,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AE,0x00AE,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00F0,0x00F0,0x0110,0x0130,0x09B2,0x2AB6,0x1A34,0x0130,0x00EF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00AF,0x00CF,0x00AF,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00F0,0x0110,0x00F0,0x0110,0x00F0,0x0131,0x2275,0x2255,0x0110,0x010F,0x010F,0x00EF,0x00EF,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00EF,0x00EF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x0110,0x0110,0x00F0,0x0110,0x0110,0x11D2,0x2AF7,0x0171,0x0110,0x00EF,0x00CF,0x00EF,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00D0,0x00D0,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00D0,0x00D0,0x00D0,0x00F0,0x00D0,0x00CF,0x00D0,0x00D0,0x00F0,0x00F0,0x0172,0x2A96,0x0972,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00F0,0x00CF,0x00F0,0x00D0,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00AF,0x00AF,0x00D0,0x00D0,0x00D0,0x00CF,0x00D0,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x0992,0x1A14,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00AF,0x00AF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00F0,0x00F0,0x00EF,0x00EF,0x00F0,0x00D0,0x00AF,0x00AF,0x00D0,0x00AF,0x00D0,0x00F0,0x00F0,0x00CF,0x00CF,0x00CF,0x00F0,0x00F0,0x0110,0x00EF,0x1A34,0x1A55,0x00F0,0x00EF,0x00CF,0x00CF,0x00CF,0x00F0,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00D0,0x00CF,0x00CF,0x00F0,0x00D0,0x00CF,0x00CF,0x00D0,0x00CF,0x00F0,0x00F0,0x00CF,0x00D0,0x00CF,0x00CF,0x00D0,0x00D0,0x00CF,0x00EF,0x00F0,0x00EF,0x0130,0x1A34,0x1A55,0x0151,0x0110,0x00EF,0x00EF,0x00CF,0x00EF,0x00EF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00D0,0x08D0,0x00D0,0x08AF,0x088F,0x104D,0x304E,0x8A76,0x9255,0x9A14,0xA214,0xAA13,0xA1B2,0xA9D3,0xA9F3,0xB1F4,0xA9F4,0xB1F4,0xA9D3,0xA9B3,0xA9F4,0xA9F4,0xA1F4,0x9A14,0x9A96,0x5951,0x100C,0x086D,0x08AE,0x00CF,0x00CF,0x00CF,0x00AF,0x00AE,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00EF,0x00EF,0x00EF,0x00EF,0x010F,0x1A34,0x2AD7,0x09B2,0x0130,0x00EF,0x00EF,0x00EF,0x00F0,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00EF,0x010F,0x0110,0x0110,0x0151,0x2AD6,0x2275,0x0171,0x0110,0x00EF,0x00EF,0x00CF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00AF,0x00AF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00F0,0x00F0,0x00CF,0x00AF,0x00EF,0x00EF,0x00EF,0x010F,0x0991,0x2AB6,0x2AB6,0x0192,0x0130,0x0110,0x00F0,0x00EF,0x00F0,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AE,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00CF,0x00CF,0x00EF,0x010F,0x0110,0x010F,0x0130,0x11D3,0x1A34,0x1213,0x09B2,0x0150,0x0110,0x00EF,0x00EF,0x00EF,0x00CF, + 0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00CF,0x00AE,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00CE,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x0130,0x09B2,0x1A54,0x2295,0x1213,0x01D2,0x0171,0x0130,0x010F,0x00EF,0x00EF,0x00CE,0x00CE,0x00AE,0x00CE,0x00AE,0x00CE,0x00CE,0x00CE,0x00CE,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CF,0x00CF,0x00CF,0x00AF,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00CF,0x00CE,0x00CE,0x00CE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00CE,0x00CE,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00EF,0x00EF,0x00EF,0x0130,0x0191,0x1A54,0x1A74,0x09F2,0x0191,0x0150,0x0130,0x00EF,0x00CE,0x00CE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CF,0x00CE,0x00CE,0x00AE,0x00CF,0x00CF,0x00CF,0x00CF,0x00CE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x00AF,0x00AF,0x00CF,0x00AF,0x00AE,0x00CE,0x00CE,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00CF,0x00EF,0x00EF,0x00EF,0x0110,0x0171,0x2296,0x1A75,0x09B2,0x0130,0x00EF,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00CE,0x00CE,0x00CF,0x00AE,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00CF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x0110,0x0130,0x2296,0x09B2,0x0150,0x010F,0x00EF,0x00CE,0x00CE,0x00CF,0x00CF,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AE,0x00CF,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00AE,0x00AF,0x00CF,0x00AF,0x00CF,0x00CF,0x00EF,0x00EF,0x010F,0x0110,0x0130,0x1A75,0x09D2,0x0130,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AE,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x008E,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x00AF,0x00CF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AF,0x00AF,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00F0,0x00EF,0x0191,0x09D2,0x0130,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AE,0x00AF,0x00CF,0x00CE,0x00CE,0x00CF,0x00CE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CF,0x00AF,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AF,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x0110,0x09D3,0x00F0,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x008E,0x008F,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AF,0x008E,0x008F,0x008F,0x008E,0x008E,0x00AF,0x00AE,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x0150,0x2275,0x00EF,0x00EF,0x00CF,0x00EF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00CF,0x00CF,0x00CE,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AE,0x00AE,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x0110,0x0150,0x09D2,0x0171,0x0151,0x010F,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x006E,0x082D,0x200D,0x69B3,0x9296,0x9A34,0xA214,0xA1F3,0xA9F3,0xA9F3,0xA9D3,0xA9F3,0xB1F4,0xB1F4,0xA9D3,0xB1F4,0xA9F4,0xAA14,0xA1F4,0x9A14,0x9A96,0x48CF,0x080B,0x006D,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00CF,0x010F,0x09F3,0x1234,0x0191,0x0130,0x0130,0x00EF,0x00EF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x008E,0x008E,0x00AF,0x00AF,0x008E,0x00AF,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CF,0x00CF,0x00CF,0x00AF,0x00AE,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00EF,0x00EF,0x00EF,0x0110,0x0130,0x1A75,0x22D6,0x09D2,0x0130,0x0130,0x0110,0x00EF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CF,0x00CF,0x00CE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00CF,0x00CF,0x00EF,0x00EF,0x00CF,0x00AE,0x00AE,0x00AE,0x00CE,0x00EF,0x00EF,0x010F,0x0130,0x09D2,0x1A75,0x1A54,0x09B2,0x0151,0x0130,0x0110,0x0110,0x00EF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00CE,0x00CF,0x00CF,0x00CE,0x00CE,0x00CE,0x00CE,0x00EF,0x00EF,0x00EF,0x00CF,0x00CF,0x00CE,0x00CF,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00CF,0x00CF,0x00CF,0x00CF,0x00CF,0x00AE,0x00CE,0x00CE,0x00CE,0x00CF,0x00CF,0x00CF,0x00CF,0x00AE,0x00AF,0x00AE,0x00CF,0x00CF,0x00EF,0x00CF,0x00CF,0x00EF,0x010F,0x010F,0x010F,0x0130,0x0150,0x1234,0x1A95,0x22B5,0x1213,0x0171,0x0130,0x0110,0x0130, + 0x2A96,0x32D7,0x3AD6,0x3AD6,0x3B17,0x3B17,0x3B17,0x3B17,0x3B17,0x3B37,0x4337,0x4337,0x4337,0x3B17,0x3B17,0x3B17,0x3B17,0x32D6,0x3B17,0x32F6,0x2AD6,0x2AB6,0x2275,0x2254,0x1213,0x1A33,0x11F3,0x1213,0x1213,0x1213,0x2295,0x2AD6,0x3317,0x3337,0x3337,0x3378,0x3B78,0x4399,0x4399,0x4399,0x4399,0x4379,0x4B99,0x4B99,0x4B78,0x4338,0x4358,0x4358,0x4337,0x4337,0x4317,0x4337,0x4337,0x4338,0x4337,0x4337,0x4337,0x4317,0x4338,0x4317,0x4317,0x4317,0x3AF7,0x3AD6,0x3AF7,0x4317,0x3AF6,0x3AF6,0x3AF6,0x32B6,0x3AF7,0x4317,0x3B17,0x3AF7,0x3B17,0x4317,0x3B17,0x3B17,0x4337,0x4358,0x4338,0x3B17,0x4338,0x4317,0x3B17,0x4337,0x4317,0x4317,0x3B17,0x3AF7,0x3AF7,0x42F7,0x4317,0x4317,0x4317,0x3B17,0x3B17,0x3AF7,0x3B17,0x3AF7,0x3AF7,0x32D6,0x3AD7,0x32B6,0x2A95,0x2A95,0x1A34,0x1A13,0x11F2,0x1A33,0x1213,0x1A54,0x1A74,0x22B5,0x2B17,0x2B17,0x2B37,0x3B78,0x3B78,0x3B78,0x4378,0x3B38,0x4379,0x4358,0x4358,0x4338,0x3AF7,0x3AD7,0x4317,0x4338,0x3AF7,0x3B17,0x4337,0x4337,0x4358,0x4B78,0x4B78,0x4B58,0x4B79,0x4B79,0x4B79,0x4358,0x4358,0x4B58,0x4B58,0x4358,0x4B79,0x4B79,0x4B99,0x5399,0x4B79,0x4358,0x4B79,0x4B79,0x4B79,0x4358,0x4378,0x4B79,0x4358,0x4358,0x4378,0x4358,0x4B59,0x4358,0x4338,0x4338,0x4337,0x3B17,0x4338,0x4317,0x4338,0x4338,0x4338,0x4318,0x4338,0x3AF7,0x4317,0x3B17,0x3AF7,0x3AF7,0x3AD7,0x32D6,0x3AF7,0x3AD6,0x3AF7,0x32F6,0x3AF7,0x32D7,0x2A96,0x2275,0x1A34,0x1A54,0x1A54,0x2295,0x1A54,0x2295,0x3338,0x3317,0x32F7,0x3B58,0x4BB9,0x4399,0x4379,0x4358,0x4338,0x3B17,0x4B59,0x4B58,0x4317,0x4338,0x4317,0x4338,0x4338,0x4338,0x3AF7,0x4318,0x3AF7,0x42F7,0x4B58,0x4318,0x4318,0x4358,0x3AD7,0x3AF7,0x4B79,0x4B99,0x4358,0x4358,0x4358,0x4B99,0x4B99,0x5399,0x4B99,0x53BA,0x4B99,0x53B9,0x5399,0x5399,0x5399,0x53BA,0x53B9,0x53BA,0x53BA,0x53BA,0x53BA,0x53BA,0x53BA,0x53BA,0x5399,0x53BA,0x53DA,0x53BA,0x5399,0x5399,0x5399,0x4B79,0x53BA,0x53BA,0x4B79,0x4B59,0x4B59,0x4358,0x4338,0x3AF7,0x3B17,0x3B17,0x3AF7,0x32D7,0x32D7,0x32B6,0x2A96,0x2A95,0x2234,0x1A54,0x1A34,0x1A34,0x11F3,0x1A34,0x4359,0x3B38,0x3B38,0x4358,0x4358,0x3B58,0x3B58,0x3317,0x32F7,0x32B6,0x3AF7,0x4358,0x3AD7,0x3AD7,0x3B18,0x3B18,0x4338,0x4B58,0x3B17,0x3B17,0x4358,0x4338,0x4B79,0x4B79,0x4338,0x4B59,0x4B79,0x4358,0x4B79,0x4B99,0x4B99,0x4B99,0x4B79,0x4B99,0x53B9,0x5399,0x4B79,0x4B99,0x4B79,0x5399,0x5399,0x4B79,0x5399,0x5399,0x5399,0x5399,0x4B99,0x4B99,0x4B99,0x4BB9,0x4B99,0x5399,0x5399,0x4B99,0x5399,0x5399,0x53BA,0x53B9,0x4B99,0x4B79,0x4B99,0x4B99,0x4B99,0x4B79,0x4B78,0x4B58,0x4358,0x4358,0x4B58,0x4358,0x3B17,0x3B17,0x4338,0x4317,0x4338,0x3B17,0x32B6,0x2A96,0x2AB5,0x2AB6,0x2275,0x1A75,0x3317,0x3338,0x3B79,0x3B79,0x3317,0x32D6,0x32D7,0x32F7,0x32B6,0x32D7,0x3AF7,0x3B17,0x3AF7,0x3B17,0x3AF7,0x3AF7,0x4338,0x3B17,0x4318,0x4B58,0x32D6,0x3AD7,0x4B58,0x4B79,0x4338,0x4338,0x4358,0x4B99,0x4B79,0x4B58,0x4B78,0x4B99,0x4B78,0x4B78,0x4B79,0x4B79,0x4B78,0x4B99,0x4B79,0x4B79,0x4B78,0x4B78,0x4B78,0x5399,0x4B99,0x5399,0x5399,0x5399,0x4B99,0x5399,0x4B99,0x53B9,0x4B99,0x4B99,0x4B79,0x5399,0x4B99,0x4B79,0x4B99,0x4B99,0x4B58,0x4B99,0x4B78,0x4B79,0x4B99,0x4B78,0x4B79,0x4B79,0x4B78,0x4B79,0x4B79,0x4338,0x4338,0x4358,0x3B18,0x3AF7,0x3B38,0x32F7,0x32D6,0x32D6,0x2A95,0x2275,0x3B38,0x3337,0x3B38,0x3B38,0x3317,0x3317,0x3B17,0x3B38,0x32F7,0x3B17,0x32F7,0x32F6,0x3B17,0x4337,0x3AF7,0x3AF7,0x4338,0x3B17,0x4338,0x4B59,0x4317,0x4317,0x4358,0x4358,0x4338,0x4B58,0x4B79,0x4B79,0x4B79,0x4B79,0x4B99,0x4B99,0x4B99,0x4B99,0x4B99,0x4BB9,0x4B99,0x5399,0x4B99,0x4BB9,0x4B99,0x4B99,0x4B99,0x53B9,0x4B99,0x4B79,0x4B99,0x4B99,0x4B78,0x4B79,0x4BB9,0x4B99,0x4B79,0x4B99,0x4379,0x4B79,0x4B79,0x4B79,0x4B79,0x4B99,0x4B79,0x4B99,0x4B99,0x4BB9,0x4B99,0x53BA,0x53BA,0x53BA,0x539A,0x53BA,0x53BA,0x53BA,0x53BA,0x53BA,0x4B59,0x4B59,0x539A,0x4B59,0x4338,0x4338,0x3AF7,0x32D7,0x1A55,0x3338,0x3B38,0x4359,0x3318,0x32F7,0x3AF7,0x4338,0x4338,0x4359,0x4359,0x4B79,0x4358,0x4B79,0x4359,0x4B59,0x4359,0x4359,0x4358,0x4358,0x4358,0x4358,0x4358,0x4B79,0x4358,0x4358,0x4338,0x4B58,0x4358,0x4358,0x4B58,0x4B58,0x4358,0x4358,0x4B58,0x4B79,0x4358,0x4B78,0x4B79,0x4B79,0x4B79,0x4B99,0x4B99,0x4B79,0x4B58,0x4B78,0x4B79,0x4B79,0x4B78,0x4B79,0x4B79,0x4B79,0x4B59,0x4B59,0x4338,0x4B59,0x4B59,0x4358,0x4B79,0x4B79,0x4B59,0x4B79,0x4359,0x4358,0x4B99,0x4B99,0x4B79,0x4359,0x4338,0x4B79,0x4338,0x3AF7,0x4B79,0x539A,0x42F7,0x3AF7,0x4B79,0x4B99,0x4B79,0x4338,0x32D6,0x32F7,0x32F7,0x3317,0x2295,0x3358,0x1A75,0x2295,0x32F7,0x32F7,0x3B18,0x3B38,0x3B18,0x4359,0x4359,0x4B79,0x4379,0x4359,0x4B79,0x4B79,0x4338,0x4B59,0x4B79,0x4358,0x4358,0x4358,0x4338,0x4358,0x4B59,0x4358,0x4B79,0x4B79,0x4378,0x4B79,0x4379,0x4B79,0x4359,0x4B79,0x4B99,0x4B99,0x4B99,0x4BB9,0x5399,0x53B9,0x4B99,0x4B99,0x4B99,0x4B99,0x4B78,0x4B99,0x4B99,0x4B79,0x4B78,0x4B78,0x4B78,0x4B78,0x4B78,0x4B78,0x4B79,0x4B79,0x4B78,0x4B79,0x4B99,0x4B79,0x4358,0x4B58,0x4B79,0x4338,0x4358,0x4B79,0x4318,0x4318,0x4B79,0x539A,0x4B79,0x4B59,0x5379,0x4B59,0x4B59,0x4B59,0x3B17,0x3B17,0x4338,0x4358,0x3B58,0x2AD6,0x1A95,0x2AF7,0x1A75,0x1254,0x2295,0x2275,0x2275,0x2275,0x32D7,0x3B17,0x32D7,0x32D6,0x3AF7,0x3AF7,0x4317,0x4337,0x4338,0x4358,0x4B79,0x4B99,0x4B59,0x4B58,0x4358,0x4B79,0x4B99,0x5399,0x4B58,0x4B59,0x539A,0x4B79,0x53DA,0x5BFB,0x4B58,0x4338,0x53DA,0x5BDA,0x4317,0x4317,0x3AD6,0x3AB6,0x4AD7,0x6318,0x7AF8,0x61D3,0x92B6,0x9234,0x9A34,0xA214,0xA1F3,0xA9F3,0xA9D3,0xA9F3,0xA9F4,0xA9D3,0xA993,0xA9B3,0xB215,0xAA14,0xA214,0x9A14,0x9AB6,0x5171,0x62D6,0x52D6,0x4B17,0x5399,0x5BBA,0x63FB,0x53BA,0x53BA,0x53BA,0x5399,0x5399,0x4B79,0x4318,0x3B18,0x4358,0x4359,0x4358,0x3317,0x3338,0x2B17,0x22D6,0x2B17,0x2295,0x1213,0x1A75,0x22B6,0x2AB6,0x32B6,0x32D7,0x32F7,0x32D7,0x32D7,0x3B18,0x3AF7,0x3AF7,0x3AF7,0x3AF7,0x3AF7,0x4318,0x4318,0x4358,0x4B58,0x4358,0x4317,0x4358,0x4B78,0x4338,0x4338,0x4358,0x4B79,0x4B58,0x4B58,0x4B79,0x53BA,0x5399,0x5399,0x53B9,0x53B9,0x5399,0x53BA,0x5399,0x4B79,0x5399,0x5399,0x4B79,0x4B79,0x4358,0x4B78,0x4B99,0x4B99,0x4B78,0x4B79,0x4B79,0x4B99,0x4B99,0x5399,0x4B79,0x4B79,0x4B79,0x5379,0x4B58,0x4B59,0x4B38,0x4338,0x4B58,0x4338,0x4358,0x4358,0x4318,0x4338,0x4338,0x4B59,0x4358,0x3B38,0x3B17,0x3B38,0x3B38,0x3B38,0x3B38,0x3317,0x22D6,0x1A95,0x2AF7,0x3378,0x22D6,0x1254,0x1234,0x22B6,0x32D7,0x32D7,0x32D7,0x32D7,0x32D7,0x32D7,0x3AF7,0x32D7,0x3AF7,0x3B17,0x3AF7,0x3AF7,0x3B17,0x4358,0x4358,0x4317,0x4338,0x4338,0x4338,0x4338,0x4338,0x4317,0x4338,0x4338,0x4338,0x3B17,0x4317,0x4338,0x4338,0x4338,0x4B58,0x4B79,0x4B79,0x4B99,0x5399,0x5399,0x4B99,0x4B99,0x539A,0x4B99,0x4B79,0x4B79,0x4B58,0x4B79,0x4B79,0x4338,0x4358,0x4338,0x4338,0x4358,0x4337,0x4317,0x4337,0x4317,0x4338,0x3B17,0x3AF7,0x3B17,0x3B17,0x3B17,0x4317,0x3B17,0x3B17,0x4318,0x4338,0x4338,0x4358,0x4358,0x3B38,0x4378,0x4399,0x4399,0x43B9,0x3B78,0x3B58,0x3358,0x3B79,0x3B58,0x22B6,0x1A54,0x11F3,0x1214,0x1A34,0x2255,0x2275,0x2255,0x2A76,0x2A76,0x2A96,0x32B6,0x32B6,0x32B6,0x32D6,0x32D6,0x3AF7,0x3AF7,0x3B17,0x3B17,0x3B17,0x3AF7,0x4338,0x4338,0x4337,0x3B17,0x4317,0x4337,0x4317,0x4317,0x3B17,0x3AF6,0x4317,0x3B17,0x3B17,0x3B17,0x3B17,0x3B17,0x3B37,0x3317,0x3AF7,0x3B17,0x3B17,0x3B17,0x4337,0x4338,0x4338,0x4338,0x4358,0x4338,0x4B79,0x4B58,0x4B58,0x4B58,0x4338,0x4358,0x4B58,0x4338,0x4358,0x4338,0x4338,0x4317,0x4337,0x4338,0x4358,0x3B37,0x4338,0x4338,0x3B38,0x4358,0x4B79,0x4379,0x3B38,0x4378,0x4B99,0x4378,0x4BBA,0x4BBA,0x3B78,0x3337,0x3337,0x3B78,0x3317,0x2AD6,0x1A74,0x09F3, + 0x11B2,0x11B2,0x0971,0x0971,0x11B2,0x11B1,0x19F2,0x19F2,0x19F2,0x11D2,0x19F2,0x11D2,0x19F3,0x19D2,0x19F2,0x19F2,0x1A13,0x1A13,0x1A33,0x1A33,0x1A54,0x2254,0x2274,0x2A95,0x2AD6,0x3317,0x2AD6,0x22B6,0x22B5,0x2AF6,0x3317,0x22B5,0x1A33,0x11F2,0x09B2,0x09B1,0x09D2,0x0991,0x0991,0x0990,0x0971,0x0970,0x0991,0x0971,0x1191,0x1191,0x11B2,0x1191,0x11B2,0x1191,0x19D2,0x11B2,0x11B1,0x1191,0x11B1,0x11B1,0x11B2,0x1191,0x11B2,0x0971,0x1191,0x1191,0x19B2,0x1192,0x19D2,0x11B1,0x19D2,0x11B1,0x11B2,0x1191,0x11B2,0x1191,0x11B2,0x1191,0x11B2,0x1191,0x11B2,0x0991,0x1191,0x0991,0x11B2,0x11B1,0x11D2,0x1191,0x11B1,0x1191,0x1191,0x1191,0x19B2,0x11B1,0x19B2,0x1191,0x19D2,0x19B2,0x19D2,0x19B2,0x19D2,0x19D2,0x19F3,0x19D2,0x19F3,0x19F3,0x2213,0x2213,0x1A34,0x2254,0x2275,0x2A95,0x2AB5,0x3337,0x2AD5,0x22B5,0x22D6,0x2295,0x2295,0x1233,0x11F2,0x09D2,0x09B1,0x0991,0x0971,0x0971,0x0991,0x0971,0x1191,0x0971,0x11B2,0x11B2,0x19D2,0x19D2,0x19D2,0x1191,0x11D2,0x1191,0x11B1,0x0971,0x1191,0x0971,0x1191,0x0971,0x11B2,0x0971,0x1191,0x0971,0x1191,0x1191,0x1191,0x1191,0x11B1,0x0971,0x11B2,0x1191,0x1192,0x0991,0x11B2,0x1191,0x11B2,0x09B1,0x11B2,0x0991,0x11B2,0x1191,0x11B2,0x1191,0x11B2,0x1191,0x11B2,0x11B2,0x19D2,0x11B2,0x19B2,0x11B2,0x19B2,0x1191,0x19B2,0x1192,0x19D2,0x19D2,0x2213,0x19F3,0x2213,0x19F3,0x19F3,0x19F3,0x19F3,0x19F2,0x19F3,0x1A13,0x1A34,0x2255,0x2275,0x2AB6,0x1A54,0x1213,0x3317,0x32F7,0x1213,0x09B2,0x09B2,0x0992,0x0991,0x0971,0x0971,0x0971,0x0951,0x0971,0x19D2,0x11B2,0x11D2,0x1192,0x11B2,0x11B2,0x19D2,0x1192,0x19B2,0x1192,0x11B2,0x1192,0x19B2,0x19B2,0x19F3,0x19D3,0x11B2,0x11B2,0x11D2,0x19F3,0x19D2,0x1191,0x11B2,0x1192,0x11B2,0x0991,0x11B1,0x1191,0x1191,0x1191,0x11B1,0x1191,0x11B2,0x1171,0x1191,0x1191,0x1191,0x1171,0x1191,0x1191,0x1191,0x0971,0x1191,0x0971,0x1191,0x0971,0x1191,0x1191,0x1191,0x0971,0x1191,0x0971,0x1192,0x0971,0x1191,0x11B2,0x19D3,0x19B2,0x19D3,0x19D3,0x19F3,0x19D3,0x19F3,0x19F3,0x1A13,0x2234,0x2254,0x2A95,0x2274,0x2295,0x2AB6,0x3B58,0x2275,0x0991,0x0991,0x0971,0x0991,0x0991,0x09B1,0x09B2,0x11D2,0x11B2,0x11B2,0x1192,0x11B2,0x1191,0x1192,0x0991,0x11B2,0x1191,0x11B2,0x1191,0x11B2,0x1191,0x11B2,0x1191,0x1192,0x1191,0x11B2,0x0971,0x1191,0x0991,0x1191,0x0971,0x1191,0x0971,0x1191,0x0971,0x1191,0x1191,0x1191,0x0971,0x1191,0x0971,0x1191,0x1171,0x1191,0x0971,0x11B1,0x0991,0x11B1,0x0991,0x1191,0x0970,0x1191,0x0971,0x1191,0x0970,0x0971,0x0971,0x1191,0x0991,0x11B1,0x1191,0x11B1,0x1191,0x11B2,0x1191,0x11B1,0x1191,0x1191,0x0971,0x11B1,0x11B1,0x11B2,0x11B2,0x11D2,0x11B2,0x19D3,0x19F3,0x11D2,0x11F3,0x11F3,0x2AD6,0x1A34,0x09F3,0x09B2,0x0991,0x0991,0x0991,0x11B2,0x0992,0x11B2,0x0991,0x11B2,0x1192,0x11B2,0x1191,0x1192,0x1191,0x11B2,0x1192,0x11B2,0x11B2,0x1191,0x1191,0x11B2,0x11B2,0x11B2,0x0971,0x1191,0x0971,0x1191,0x0970,0x1191,0x0971,0x1191,0x0970,0x1191,0x0971,0x1191,0x0971,0x1191,0x0971,0x1191,0x0971,0x1191,0x1171,0x1191,0x0971,0x1191,0x0971,0x1191,0x0971,0x1191,0x0971,0x1191,0x0971,0x1191,0x0971,0x1191,0x1191,0x11B2,0x0991,0x1191,0x0971,0x1191,0x0991,0x11B1,0x0991,0x1191,0x0971,0x1191,0x0991,0x11B1,0x0971,0x1191,0x1192,0x1192,0x11B2,0x19F3,0x19F3,0x11D3,0x11D3,0x11D2,0x2AB6,0x2AD6,0x09D2,0x09D2,0x09B2,0x0191,0x0992,0x09B2,0x09B2,0x11B2,0x11B2,0x11D2,0x11B1,0x11B2,0x11B2,0x11D2,0x11B2,0x19D2,0x11B2,0x19B2,0x11B2,0x19B2,0x1191,0x11B2,0x11B2,0x11B2,0x1191,0x11B1,0x0991,0x11B2,0x0991,0x1191,0x0991,0x1191,0x0991,0x1191,0x0971,0x1191,0x0971,0x0991,0x0971,0x1191,0x0991,0x0991,0x0991,0x1191,0x0971,0x0991,0x0991,0x1191,0x0971,0x11B2,0x0991,0x11B2,0x11B2,0x11B2,0x0991,0x11B2,0x11B2,0x11B2,0x0991,0x11B2,0x1191,0x11B2,0x0991,0x1191,0x0991,0x0991,0x0971,0x0991,0x0971,0x0991,0x0971,0x0991,0x0971,0x0971,0x1192,0x19B2,0x19D3,0x11B2,0x1192,0x0971,0x0971,0x1A54,0x2AF7,0x11D3,0x19F3,0x11D3,0x11D3,0x11D3,0x11D3,0x11D2,0x11B2,0x11D2,0x11B2,0x11B2,0x11B2,0x11B2,0x11B2,0x11B2,0x11B2,0x11D2,0x11B2,0x11D2,0x11B1,0x11B2,0x11B1,0x11B2,0x1191,0x11B2,0x0991,0x1191,0x0991,0x1191,0x0991,0x11B1,0x0991,0x1191,0x1191,0x1191,0x0991,0x1191,0x0991,0x1191,0x0971,0x1191,0x0971,0x1191,0x0991,0x11B1,0x0991,0x1191,0x0991,0x1191,0x0991,0x1191,0x1191,0x1192,0x1192,0x11B2,0x0991,0x11B2,0x1191,0x11B2,0x0991,0x11B2,0x0991,0x11B2,0x0991,0x11B2,0x0991,0x0992,0x0991,0x1192,0x0971,0x1171,0x1171,0x1171,0x0971,0x0971,0x11B2,0x19D2,0x11B2,0x11B2,0x0992,0x09B2,0x11F3,0x11D3,0x1213,0x2AD6,0x1234,0x11F3,0x11F3,0x11D3,0x09B2,0x11B2,0x0992,0x0992,0x0991,0x0991,0x0971,0x11B2,0x11B2,0x1192,0x0971,0x11B2,0x1192,0x11B2,0x1192,0x11B2,0x1192,0x11B2,0x1192,0x11B2,0x1192,0x11B2,0x0991,0x11B2,0x0991,0x11B2,0x0991,0x1192,0x0971,0x0991,0x0991,0x0991,0x0971,0x1191,0x0991,0x1191,0x0991,0x1191,0x0991,0x11B1,0x0991,0x1191,0x1191,0x11B1,0x0991,0x11B1,0x0991,0x11B1,0x1191,0x1191,0x0991,0x1191,0x0971,0x0991,0x0971,0x1191,0x0971,0x11B2,0x1191,0x1191,0x0971,0x1171,0x1171,0x1171,0x0951,0x1192,0x1171,0x0951,0x0950,0x1171,0x1191,0x11B2,0x09B1,0x11D2,0x11F2,0x11F2,0x1A74,0x2AF6,0x22B6,0x1A54,0x1213,0x11F3,0x11D3,0x19F3,0x11D3,0x11B2,0x1191,0x11B2,0x11B2,0x11D2,0x0991,0x11B1,0x1191,0x1191,0x0971,0x1192,0x0971,0x0991,0x0971,0x1191,0x1191,0x1191,0x0971,0x1191,0x0971,0x0971,0x0971,0x0950,0x0971,0x1191,0x11B2,0x11B1,0x1191,0x1171,0x1971,0x1951,0x3172,0x4172,0x38AF,0x92D7,0x9234,0x9A34,0xA214,0xA1F3,0xA1D3,0xA9F4,0xA9D3,0xB1F4,0xA9D3,0xA9D3,0xA9D3,0xA9F4,0xAA14,0xA235,0x9234,0x9296,0x40CF,0x3992,0x2171,0x1110,0x010F,0x010F,0x0930,0x0930,0x0950,0x0971,0x0950,0x0971,0x0971,0x0991,0x0971,0x1192,0x11B2,0x11B2,0x11D2,0x1A33,0x1A33,0x1A33,0x1A54,0x2AD6,0x3338,0x1254,0x1213,0x09B2,0x11D3,0x11D3,0x11D3,0x11D3,0x11B2,0x11B2,0x11B2,0x11B2,0x1191,0x11B2,0x1191,0x11B2,0x1191,0x1191,0x1191,0x11B2,0x1191,0x11B1,0x1191,0x11B2,0x1191,0x11B1,0x0971,0x1191,0x0971,0x1191,0x0971,0x0971,0x0971,0x0991,0x0991,0x1191,0x0971,0x1192,0x1191,0x11B2,0x1191,0x11D2,0x0991,0x11D2,0x11B1,0x11B1,0x11B1,0x11B2,0x1191,0x11B2,0x0991,0x1192,0x0971,0x1191,0x1191,0x11B2,0x1192,0x1192,0x1191,0x11B2,0x1191,0x11B2,0x1191,0x11B2,0x1191,0x11B2,0x1192,0x1192,0x1192,0x11D2,0x1192,0x11B2,0x0992,0x11B2,0x11D2,0x1A13,0x1A13,0x1213,0x09B2,0x09D2,0x1233,0x2AF6,0x3B78,0x1254,0x1214,0x09D3,0x09D3,0x09D2,0x09B2,0x11D3,0x11B2,0x11D2,0x11B2,0x11B2,0x0991,0x11B2,0x0991,0x11B1,0x0991,0x11B2,0x0991,0x11B2,0x11B2,0x11B2,0x1192,0x19D2,0x11B2,0x11B2,0x11B2,0x19D2,0x11B2,0x11B2,0x11B2,0x11B2,0x1191,0x11B2,0x1191,0x1191,0x0971,0x1171,0x0951,0x1191,0x0971,0x1191,0x0971,0x0991,0x0971,0x0971,0x0971,0x0991,0x0991,0x11B2,0x1191,0x11B2,0x1191,0x1191,0x0971,0x1191,0x1191,0x19D2,0x11B2,0x11D2,0x11B1,0x11B2,0x11B2,0x19D2,0x11B2,0x11B2,0x1191,0x11B2,0x11B2,0x11F2,0x11B2,0x11B2,0x0991,0x09B1,0x09B1,0x09B2,0x0991,0x09D2,0x09B1,0x09D2,0x1213,0x1A54,0x32F7,0x3317,0x2AD6,0x2275,0x1A55,0x1A14,0x11D3,0x11D3,0x11D3,0x19D3,0x11D2,0x19F3,0x11B2,0x19D2,0x11B2,0x19D2,0x1191,0x11B2,0x1191,0x11B2,0x1191,0x1191,0x1191,0x11B1,0x1191,0x11B1,0x1171,0x1191,0x1191,0x11D2,0x1191,0x11D2,0x1191,0x11B2,0x11B2,0x11D2,0x11B2,0x11D2,0x11B2,0x11B2,0x0991,0x0991,0x1191,0x11B2,0x0991,0x11B1,0x0971,0x1191,0x0971,0x1191,0x0971,0x1191,0x1171,0x1191,0x1191,0x11B2,0x11B2,0x19F2,0x1191,0x11B2,0x11B1,0x11B2,0x11B2,0x19D2,0x11B2,0x19D2,0x1192,0x11B2,0x1191,0x11D2,0x11D2,0x09B2,0x0171,0x11B2,0x09B1,0x11D2,0x0991,0x0991,0x0991,0x09B1,0x11F2,0x1213,0x1A74,0x22B6,0x2B17, + 0x008D,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AD,0x008D,0x00AE,0x00CE,0x00CE,0x00EF,0x0171,0x1A34,0x2275,0x1A13,0x010F,0x00AE,0x008D,0x008D,0x00AE,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x008D,0x006D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008E,0x008D,0x008E,0x006D,0x006D,0x006D,0x006E,0x006D,0x008E,0x008D,0x008E,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x008D,0x006D,0x00AE,0x00AE,0x00CF,0x00EF,0x00EF,0x012F,0x1213,0x2295,0x012F,0x00EF,0x00EF,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x006D,0x006D,0x004D,0x004D,0x006E,0x004D,0x004D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008E,0x008E,0x006D,0x008D,0x006D,0x006D,0x006D,0x006E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006D,0x006D,0x008D,0x008E,0x006E,0x008E,0x008E,0x008E,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00CF,0x00CF,0x00CF,0x0170,0x2AD6,0x11F3,0x00EF,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x006E,0x008E,0x008E,0x006E,0x006E,0x006E,0x006E,0x006E,0x006E,0x008E,0x006E,0x006E,0x006E,0x006E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006E,0x006E,0x006E,0x006E,0x008E,0x006D,0x006D,0x006D,0x006E,0x006E,0x006D,0x006D,0x006E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x006E,0x008E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008D,0x008D,0x006D,0x008D,0x008E,0x008E,0x010F,0x11F3,0x32F6,0x11D2,0x00EF,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x006E,0x006E,0x008E,0x006E,0x006E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x006D,0x006D,0x008E,0x008E,0x006D,0x008E,0x006E,0x006D,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x008D,0x008E,0x008E,0x008E,0x006E,0x006E,0x008E,0x008E,0x008E,0x008E,0x006D,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006D,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x2234,0x11F3,0x0110,0x00CF,0x00AF,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x006E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00CF,0x11D3,0x19F3,0x010F,0x00CF,0x00AF,0x00AF,0x00AF,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x1A34,0x2255,0x00AE,0x00AF,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CF,0x00EF,0x2A96,0x0151,0x00CF,0x00AF,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006D,0x006D,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00CE,0x09B2,0x2AB6,0x0130,0x00EF,0x00CF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x006D,0x006D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x004D,0x006E,0x084D,0x102D,0x200C,0x8296,0x9275,0x9A34,0x9A13,0xB255,0xA9F3,0xA9F3,0xA9D3,0xB1D4,0xB1F4,0xA9B3,0xA9B3,0xA9D4,0xA9F4,0xA235,0x9A75,0x8255,0x280C,0x104D,0x086E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008D,0x008D,0x008E,0x00CF,0x1A14,0x1A14,0x0151,0x0110,0x00EF,0x00CF,0x00AE,0x00AF,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008D,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008D,0x006D,0x006D,0x006D,0x006E,0x006D,0x006E,0x006E,0x008E,0x008E,0x008E,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00EF,0x09D2,0x2296,0x1A34,0x0171,0x0110,0x00EF,0x00CF,0x00AF,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006D,0x008E,0x008E,0x008E,0x006D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006D,0x008E,0x008E,0x006D,0x008E,0x008E,0x006D,0x008E,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x006D,0x008D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008E,0x006D,0x006D,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00CF,0x0130,0x2254,0x2AD6,0x09B2,0x0110,0x00EF,0x00CF,0x00AF,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008D,0x008D,0x00AE,0x00AE,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008D,0x008D,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x006D,0x006D,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x00AD,0x00AD,0x00AE,0x00CE,0x010F,0x0130,0x0150, + 0x008D,0x006D,0x008E,0x008E,0x008E,0x008E,0x008E,0x006D,0x006D,0x008E,0x008E,0x008E,0x008E,0x006D,0x008D,0x008D,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x0930,0x21F3,0x3AD7,0x2AB6,0x11D2,0x012F,0x00EF,0x00CE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x006D,0x008E,0x006D,0x008E,0x006E,0x008E,0x006E,0x008E,0x006E,0x008E,0x006E,0x008E,0x006E,0x006E,0x008E,0x008E,0x006E,0x008E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x006E,0x006E,0x006E,0x008E,0x006D,0x008E,0x008E,0x008E,0x006D,0x008E,0x006D,0x008E,0x008E,0x008E,0x006D,0x006E,0x006D,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00CE,0x00EF,0x19D2,0x3AD6,0x3AF7,0x11D2,0x0130,0x00EE,0x00CF,0x00CE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x006E,0x006E,0x006D,0x006E,0x006E,0x006E,0x006D,0x006D,0x008E,0x006E,0x008E,0x008E,0x008E,0x006D,0x006D,0x008E,0x008E,0x006E,0x006E,0x008E,0x008E,0x006D,0x008E,0x006E,0x006E,0x006E,0x006E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006E,0x006E,0x006E,0x008E,0x006D,0x008E,0x006E,0x006E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00CF,0x00EF,0x0930,0x3296,0x3B38,0x09B2,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x006E,0x008E,0x006E,0x006E,0x006E,0x008E,0x006E,0x006E,0x006E,0x008E,0x006E,0x008E,0x006E,0x006E,0x006E,0x006E,0x006E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006E,0x008E,0x006E,0x006E,0x006E,0x008E,0x006E,0x006E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008D,0x006D,0x008E,0x008E,0x00AE,0x00EF,0x3296,0x32B6,0x0971,0x00EF,0x00CF,0x00CE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x006E,0x008E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006E,0x008E,0x006E,0x008E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AF,0x00CF,0x1192,0x3AF7,0x0130,0x0110,0x00EF,0x00AF,0x00AF,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x006E,0x006E,0x006E,0x006E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x0131,0x2A76,0x0971,0x00EF,0x00AF,0x00AF,0x008F,0x008F,0x008F,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008F,0x008E,0x008E,0x008E,0x008F,0x008E,0x008F,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AF,0x008F,0x008E,0x008E,0x008F,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008F,0x006E,0x008E,0x008E,0x008E,0x008E,0x11F3,0x1A14,0x008E,0x00AF,0x008E,0x008E,0x008F,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008F,0x008E,0x008F,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00CF,0x00CF,0x11F3,0x19F4,0x00CF,0x00AF,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008F,0x008E,0x008F,0x006F,0x006F,0x006E,0x006E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x006D,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00CE,0x00EF,0x2A95,0x32B6,0x00EF,0x00EF,0x00CF,0x00AF,0x008F,0x00AF,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x006E,0x006E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008F,0x00AF,0x008E,0x008E,0x008E,0x088E,0x086E,0x186E,0x180C,0x69F4,0x9296,0x9A55,0xA234,0xAA14,0xAA14,0xA9D3,0xA9F4,0xB1F4,0xB1D4,0xA9B3,0xA9B3,0xA9D4,0xA9F4,0xA235,0xA2B7,0x69B3,0x282D,0x184D,0x086E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00CF,0x2234,0x32D7,0x0971,0x0110,0x00CF,0x00AE,0x00AF,0x008F,0x00AF,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006E,0x008E,0x006E,0x006E,0x006E,0x008E,0x006E,0x008D,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00EF,0x0130,0x1A34,0x3B18,0x19F3,0x0110,0x00EF,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x006E,0x008E,0x006E,0x008E,0x006D,0x008E,0x006D,0x008E,0x006D,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x0130,0x1A13,0x3B17,0x1A34,0x0130,0x00EF,0x00CF,0x00CF,0x008E,0x00AF,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008D,0x00AE,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x006D,0x006E,0x006E,0x006D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008D,0x008D,0x008E,0x008E,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00CF,0x00EF, + 0x00AE,0x00AE,0x008E,0x006E,0x006E,0x006E,0x008E,0x008D,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008D,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00CE,0x010F,0x1191,0x2213,0x2A95,0x2A55,0x1192,0x00EF,0x00CE,0x00EF,0x00CE,0x00EF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x0110,0x11B2,0x2A75,0x32B6,0x19F3,0x010F,0x00EF,0x00EF,0x00EF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x00AF,0x008E,0x00AE,0x00AE,0x00AF,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AF,0x008E,0x00AE,0x008E,0x00AF,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00CE,0x00EF,0x010F,0x19D3,0x32D7,0x2A55,0x0110,0x00EF,0x00CF,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AF,0x00AF,0x008F,0x008E,0x008E,0x008E,0x008F,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008F,0x008E,0x008F,0x008F,0x008F,0x008F,0x008F,0x008E,0x008E,0x008E,0x008E,0x008E,0x008F,0x008F,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008F,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00CF,0x0110,0x2A55,0x2255,0x0130,0x00EF,0x00EF,0x00CF,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008F,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008F,0x008E,0x008E,0x008E,0x008F,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008F,0x008E,0x008F,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00CF,0x00CF,0x0130,0x3AF7,0x19F3,0x00EF,0x00EF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AF,0x008E,0x008E,0x008E,0x00AF,0x00AF,0x008F,0x008F,0x00AF,0x008E,0x008E,0x00AF,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AF,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008F,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008F,0x008F,0x008F,0x008F,0x008F,0x008E,0x008E,0x008E,0x008F,0x008F,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AF,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x19D3,0x2255,0x0131,0x00EF,0x00AF,0x00AF,0x008E,0x008F,0x00AF,0x008E,0x008E,0x008E,0x00AF,0x008F,0x008E,0x008F,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x00AF,0x008E,0x008E,0x00AF,0x008F,0x008E,0x008F,0x008F,0x008F,0x008F,0x008F,0x008F,0x008F,0x008F,0x00AF,0x008F,0x008F,0x008F,0x008F,0x008F,0x008F,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x008E,0x008E,0x008E,0x008F,0x008F,0x00AF,0x008F,0x00AF,0x00AF,0x00AF,0x008F,0x00AF,0x008F,0x008F,0x008F,0x008F,0x008F,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AF,0x00AF,0x008E,0x008E,0x008E,0x00AF,0x00AF,0x00AF,0x008F,0x008E,0x008E,0x008E,0x008E,0x19F3,0x1A14,0x00AE,0x00AF,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x00AF,0x00AE,0x008E,0x008F,0x008F,0x008E,0x008E,0x00AF,0x00AE,0x008E,0x008E,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x00AE,0x008E,0x00AF,0x008F,0x00AF,0x00AF,0x008E,0x008E,0x008E,0x00AF,0x00AF,0x008F,0x00AF,0x008E,0x008E,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AF,0x00CF,0x00EF,0x0972,0x32B7,0x00F0,0x00AF,0x008E,0x008E,0x00AF,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x00AF,0x00AF,0x008E,0x008F,0x008F,0x008F,0x008F,0x006F,0x008F,0x008E,0x008E,0x008E,0x00AF,0x008F,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x00AF,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008F,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00EF,0x32B6,0x11D3,0x00EF,0x00EF,0x00EF,0x00AF,0x00AF,0x008F,0x008F,0x00AF,0x00AE,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008F,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x088E,0x108E,0x106E,0x204D,0x5151,0x9296,0x9234,0xA214,0xA1F3,0xA1D3,0xB214,0xA9D4,0xB1D4,0xB1F4,0xA9D4,0xA9B3,0xB214,0xAA35,0x9A14,0x9AB6,0x48CF,0x200C,0x186E,0x086E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00CF,0x010F,0x2254,0x3B17,0x0991,0x00EF,0x00CF,0x00AF,0x00AF,0x00AE,0x008E,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008F,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008F,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00EF,0x00EF,0x0151,0x32B6,0x2255,0x0151,0x00EF,0x00CF,0x00AE,0x00AE,0x00AF,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AF,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x006E,0x006E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00EF,0x00EF,0x0130,0x2A75,0x32D6,0x11B2,0x0130,0x0110,0x00EF,0x00CF,0x00AF,0x00AF,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006E,0x008E,0x008E,0x008F,0x008F,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00EF, + 0x00AE,0x008E,0x008E,0x008E,0x006D,0x008E,0x008E,0x00AE,0x00CE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x0930,0x2213,0x3AD6,0x32D6,0x2234,0x0971,0x00EF,0x00CF,0x00CE,0x00CE,0x00CE,0x00CE,0x00CF,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x006E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00EF,0x19B2,0x32B6,0x32B6,0x19D2,0x010F,0x00CF,0x00CF,0x00CF,0x00CE,0x00CE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AF,0x00AF,0x00AF,0x008E,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AF,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AF,0x00AE,0x00AF,0x008E,0x00AF,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x010F,0x0971,0x3296,0x32D6,0x11B2,0x00EF,0x00CF,0x00AF,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x008F,0x008F,0x008F,0x008E,0x008F,0x008E,0x00AF,0x008E,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AF,0x00AF,0x008F,0x008F,0x00AF,0x008F,0x008F,0x008E,0x00AF,0x008E,0x00AF,0x008E,0x008F,0x008F,0x008F,0x008E,0x00AF,0x008F,0x008E,0x00AF,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00EF,0x0950,0x2A75,0x2214,0x0110,0x00CF,0x00CF,0x00CF,0x00AE,0x00AE,0x00CF,0x00CF,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x00AF,0x008E,0x00AF,0x00AE,0x00AF,0x008E,0x008F,0x008F,0x00AF,0x00AF,0x008E,0x008E,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x008E,0x00AF,0x00AE,0x00AF,0x008E,0x00AF,0x00AF,0x008E,0x008E,0x00AF,0x00AF,0x00AF,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AF,0x008F,0x008E,0x00AF,0x00AF,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AF,0x008E,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00EF,0x2234,0x2A75,0x00EF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AF,0x00AE,0x00AF,0x008E,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AF,0x00AE,0x00AE,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x008E,0x008E,0x008E,0x008E,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AF,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00F0,0x2234,0x19F3,0x00F0,0x00CF,0x00AF,0x00AE,0x008E,0x008E,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x00AF,0x008F,0x008F,0x00AF,0x008F,0x00AF,0x00AF,0x008F,0x008F,0x00AF,0x008F,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x008F,0x00AF,0x00AE,0x00AF,0x008F,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x008E,0x008E,0x00AE,0x008E,0x19D3,0x1A13,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00CF,0x00AF,0x00AE,0x00AE,0x00AF,0x00AF,0x008F,0x008F,0x00AF,0x00AF,0x00CF,0x00AE,0x00AF,0x008E,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x00AF,0x008E,0x00AF,0x00AF,0x008F,0x00AF,0x00AE,0x008E,0x008E,0x00AF,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AF,0x00CF,0x00EF,0x0110,0x3296,0x2214,0x00CF,0x00AE,0x00AF,0x00AF,0x00AF,0x008E,0x008E,0x00CF,0x00AF,0x008E,0x008E,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x008F,0x008F,0x008F,0x008F,0x008F,0x00AF,0x008E,0x008E,0x00AE,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x00AE,0x00AF,0x008E,0x00AF,0x00AF,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x00AF,0x00AF,0x008E,0x008E,0x00AF,0x00AE,0x008E,0x008E,0x008E,0x00AF,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00CE,0x0150,0x4338,0x0991,0x00F0,0x00EF,0x00CF,0x00AF,0x00AF,0x00AF,0x008F,0x00AE,0x008E,0x00AF,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AF,0x008E,0x00AF,0x00AE,0x00AE,0x008E,0x00CE,0x008E,0x008E,0x086E,0x106E,0x184D,0x306E,0x8A96,0x9A55,0xA214,0xA1F3,0xA9F4,0xA9F4,0xA9F4,0xA9B3,0xB1D4,0xB1D4,0xB1F4,0xA9F4,0xA214,0x9A34,0x9275,0x280C,0x182C,0x104D,0x006D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00EF,0x11B2,0x3B17,0x19F3,0x00EF,0x00CF,0x00AF,0x00AE,0x00AF,0x00CF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AF,0x00CF,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AF,0x008E,0x00AF,0x00AF,0x008F,0x008F,0x00AF,0x008E,0x00AE,0x00CF,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008F,0x008E,0x008E,0x008E,0x00AF,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AF,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00CF,0x00EF,0x0130,0x19F3,0x32D6,0x1A13,0x00EF,0x00CE,0x00CF,0x00CF,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AF,0x008E,0x00AF,0x00AE,0x00AF,0x008E,0x00AE,0x00AE,0x00AF,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AF,0x008E,0x00AF,0x00AF,0x00AE,0x008E,0x00AE,0x00AF,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AF,0x008E,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CF,0x00AE,0x00EF,0x1191,0x2A75,0x3AD7,0x1A13,0x0951,0x0110,0x00F0,0x00CF,0x00AE,0x008E,0x008E,0x00CF,0x00AE,0x008E,0x008E,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AF,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF, + 0x008E,0x008E,0x006D,0x006D,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00CE,0x00CE,0x00EF,0x0991,0x1A13,0x2A95,0x32B6,0x2213,0x0971,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00CF,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00CF,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00CE,0x00CE,0x00CF,0x00CF,0x00EF,0x11B1,0x2A54,0x32B6,0x2213,0x0130,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x00AE,0x00AF,0x00CF,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CF,0x00CF,0x00CF,0x0110,0x19D2,0x32B6,0x3295,0x0951,0x00CF,0x00AF,0x00AE,0x008E,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00CF,0x00AE,0x008E,0x00AE,0x00AE,0x00AF,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x00AF,0x00AF,0x00CF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x008E,0x00AE,0x00AE,0x00AF,0x00AE,0x00AF,0x008E,0x00AE,0x00AF,0x00AF,0x008E,0x008E,0x008E,0x00AF,0x00AE,0x00AF,0x008E,0x00AE,0x00AE,0x00CF,0x00AF,0x00AE,0x00AE,0x00AF,0x008E,0x00CF,0x00CF,0x08EF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x00CE,0x00EF,0x0971,0x2A75,0x2A54,0x0951,0x0110,0x00AF,0x008E,0x008E,0x00AE,0x00AE,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AF,0x008E,0x008E,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x008E,0x00AF,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AF,0x008E,0x00AE,0x00AE,0x00AF,0x00AF,0x008E,0x008E,0x00AF,0x00AE,0x00CF,0x00AF,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AF,0x00CF,0x00EF,0x19F3,0x32B6,0x0950,0x00EF,0x00AF,0x00CE,0x00CF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x008E,0x008E,0x00AE,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x00AE,0x00AF,0x00AE,0x00AE,0x008E,0x008E,0x00AF,0x00AF,0x00AE,0x008E,0x00AF,0x00AE,0x00AF,0x00AE,0x00AE,0x00AF,0x008E,0x008E,0x008E,0x008E,0x00AF,0x00AF,0x00AE,0x00AF,0x00AF,0x008F,0x00AF,0x008E,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00CF,0x00CF,0x008E,0x008E,0x008E,0x008E,0x00AF,0x19B2,0x2A75,0x0992,0x00EF,0x00AF,0x00CF,0x00AF,0x00AE,0x00AE,0x00AF,0x00AF,0x00CF,0x00AF,0x00AE,0x00AE,0x00AF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00CF,0x00AF,0x00CF,0x00AF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AF,0x00CF,0x00AF,0x00CF,0x00CF,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AE,0x00CF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AF,0x00CF,0x00CF,0x00CF,0x00AE,0x00CF,0x00CF,0x00AF,0x00AE,0x00AF,0x00AE,0x00CF,0x00CF,0x00CF,0x00AE,0x00AF,0x00CF,0x00AF,0x00AF,0x00AF,0x008E,0x008E,0x00AE,0x19F3,0x1A13,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x008E,0x00AF,0x00AE,0x00AF,0x00AE,0x00AF,0x00CF,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00CF,0x00AF,0x00AF,0x00AE,0x00CF,0x00CF,0x00AF,0x00AE,0x00AE,0x00AF,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AF,0x00AF,0x00AE,0x00AE,0x00AF,0x008E,0x008E,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00AE,0x00AE,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AE,0x00CF,0x00CF,0x00AE,0x00AE,0x00CF,0x00CE,0x00AE,0x00AE,0x00CF,0x00CF,0x00F0,0x1A14,0x3AD7,0x00EF,0x00AE,0x00AF,0x00CF,0x00CF,0x008E,0x008E,0x00CF,0x00CF,0x00AE,0x00AE,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x008F,0x008E,0x00AF,0x00AF,0x00AE,0x00AF,0x00AE,0x00AE,0x00AF,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AF,0x00AF,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00CF,0x00AE,0x00AF,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CF,0x2213,0x4338,0x0130,0x00CF,0x00CF,0x00CF,0x00AF,0x00AF,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x08AE,0x088E,0x086D,0x184D,0x282C,0x7A34,0x9A75,0xA234,0xAA14,0xA9F4,0xA9F4,0xA9F4,0xA9D4,0xB1F4,0xA9B3,0xA9D3,0xAA14,0xA235,0x9234,0x8255,0x200B,0x182D,0x106D,0x088E,0x08AE,0x00AE,0x008E,0x008E,0x00AE,0x00AF,0x008E,0x008E,0x00AF,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CF,0x0130,0x3B17,0x2275,0x0110,0x00EF,0x00CF,0x00AF,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00EF,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AF,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00CE,0x00CE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AF,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00CE,0x00EF,0x00EF,0x0130,0x2A75,0x32B6,0x0971,0x00EF,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00CF,0x008E,0x008E,0x00AF,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x1191,0x32D6,0x32B5,0x19F3,0x0130,0x00EF,0x00CF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00CE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00CE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E, + 0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00EF,0x0930,0x11B1,0x2A74,0x3B17,0x2A95,0x11B1,0x0130,0x00EF,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00CF,0x00CF,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00EF,0x1191,0x32B6,0x3B17,0x2234,0x0950,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CF,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00CE,0x00CF,0x00CF,0x0971,0x3296,0x32B6,0x11D2,0x00EF,0x00CE,0x00CF,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CF,0x00CE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00CF,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00CF,0x008E,0x00AE,0x00AF,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00CE,0x00EF,0x11B2,0x2A95,0x2A75,0x0130,0x00EF,0x00AF,0x00AF,0x008E,0x008E,0x00AE,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CF,0x00AE,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00CF,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AF,0x00AE,0x00CF,0x00AF,0x008E,0x00AE,0x00CE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00CF,0x1191,0x2A55,0x19F3,0x00EF,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AF,0x00AE,0x00CF,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x008E,0x00AE,0x00AF,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00CF,0x2213,0x2A75,0x0110,0x00AF,0x00AF,0x00CF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AE,0x00AE,0x00AF,0x00CF,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00CF,0x00CF,0x00AE,0x00AE,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00CF,0x00CE,0x00AE,0x00CF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x008E,0x00AE,0x008E,0x19F3,0x2234,0x00AE,0x00CF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00CE,0x00AE,0x00CE,0x00AE,0x00AF,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00CF,0x00AF,0x00CF,0x00CF,0x00CF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AE,0x00CE,0x00AE,0x00CF,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00CF,0x0971,0x3AF7,0x0951,0x00CF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00CF,0x00AE,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x008E,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AF,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AF,0x008E,0x008E,0x00AF,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CF,0x2A75,0x3296,0x00EF,0x00EF,0x00CF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x008E,0x088E,0x086D,0x184D,0x200C,0x69B2,0x9A95,0xA234,0xAA14,0xA9F4,0xA9F4,0xA9D4,0xB1D4,0xA9D4,0xA9D4,0xA9F4,0xAA15,0xA255,0x9A75,0x6191,0x200C,0x184D,0x086E,0x088E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AF,0x008E,0x008E,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x0130,0x32B6,0x3AF7,0x0110,0x00EF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00CE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AF,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00CE,0x00CF,0x00CF,0x00CF,0x00AE,0x00AE,0x00CE,0x00AE,0x00CE,0x00CF,0x00CE,0x010F,0x11D2,0x4338,0x2254,0x010F,0x00CF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x010F,0x0991,0x2A75,0x32B6,0x2214,0x0930,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E, + 0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00CE,0x00EF,0x0950,0x19D2,0x3295,0x3AF6,0x2A54,0x012F,0x00CE,0x00CE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x010F,0x11B1,0x2234,0x2A75,0x2A54,0x1191,0x00EF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00CF,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x008D,0x008D,0x00CE,0x00EF,0x0130,0x2A54,0x3AD7,0x2A75,0x0110,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AF,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AF,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CF,0x008E,0x00AE,0x00AE,0x00AE,0x00CF,0x0130,0x11D2,0x2A95,0x1A13,0x0110,0x00CE,0x00AE,0x00AF,0x00AF,0x00AF,0x00AE,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CF,0x00CF,0x00AE,0x00AE,0x008E,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00CF,0x00CF,0x1171,0x2A54,0x2234,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x010F,0x3275,0x19D2,0x00CF,0x00AE,0x00AE,0x00CF,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x008E,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x008E,0x008E,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AF,0x00AF,0x00AE,0x00AF,0x00AE,0x00CF,0x00CF,0x00CF,0x00CF,0x00AE,0x00CF,0x00AF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00CF,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x19F3,0x2214,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00CF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AF,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00EF,0x2A75,0x2254,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00CF,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AF,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AF,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x008E,0x008E,0x00AF,0x008E,0x00AF,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00AE,0x00AE,0x00EF,0x4B58,0x2A75,0x0110,0x00CF,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x088E,0x086D,0x104D,0x180C,0x48CF,0x9A96,0x9A14,0xAA34,0xAA14,0xA9D4,0xA9D4,0xB1F4,0xB1F4,0xA9F4,0xA9D4,0xA1F4,0x9A14,0x9AB7,0x5110,0x204D,0x186E,0x088E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AF,0x008F,0x00AF,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00CF,0x00EF,0x2A75,0x3B17,0x0130,0x00CF,0x00AF,0x00CF,0x00AF,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AF,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x0950,0x3AF7,0x4317,0x1192,0x00EF,0x00CF,0x00AE,0x00AF,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00CE,0x1191,0x32B5,0x32B6,0x1A13,0x0130,0x00CF,0x00CF,0x00AE,0x00AE,0x008E,0x00AE,0x00AF,0x00AF,0x008E,0x008E,0x00AE,0x00AE,0x00CE,0x00CE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE, + 0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x00AE,0x00AE,0x1171,0x3295,0x3295,0x2A74,0x1A13,0x0950,0x00EF,0x00CE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008D,0x006D,0x008E,0x008E,0x008E,0x00CF,0x00AF,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x0971,0x2A95,0x32D6,0x2254,0x1171,0x010F,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00EE,0x11B1,0x3AF7,0x4338,0x11B2,0x00CF,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00EF,0x010F,0x2234,0x32B6,0x19D2,0x00EF,0x00CF,0x00AE,0x00AE,0x008E,0x00AE,0x00AF,0x00AF,0x00CF,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00EF,0x00CE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00CF,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x008E,0x00AE,0x00AE,0x00AE,0x00CF,0x008E,0x00CE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00CF,0x0130,0x3275,0x2A75,0x010F,0x00CE,0x00AE,0x008E,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00CE,0x00CF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x008E,0x00AE,0x00AF,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x00AF,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x1191,0x3295,0x0950,0x00AE,0x00AE,0x00AE,0x00AF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x00AF,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00CF,0x00CF,0x00CE,0x00AE,0x00CF,0x00AE,0x00AE,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x19F3,0x19F3,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00CF,0x09B1,0x4338,0x00EF,0x00AF,0x00AE,0x00AF,0x00AF,0x00AF,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x008E,0x00AF,0x00AF,0x008E,0x00AF,0x00AE,0x00AE,0x00AF,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00CE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x0950,0x4B79,0x19F3,0x00CF,0x00CF,0x00AF,0x00CF,0x00CF,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x088E,0x088E,0x106D,0x182C,0x304D,0x9A96,0xA234,0xAA14,0xB214,0xA9D4,0xA9D4,0xB1F4,0xB1F4,0xA9D3,0xA9F4,0xAA35,0x9A35,0xA2D7,0x384D,0x204D,0x106D,0x086E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AF,0x008F,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00CE,0x00EF,0x19F3,0x4B58,0x0971,0x00CF,0x00CF,0x00CE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00EF,0x19D2,0x4338,0x3296,0x010F,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00EF,0x1191,0x2A95,0x3AF7,0x2213,0x010F,0x00CF,0x00CF,0x00AE,0x00AE,0x00AF,0x008E,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE, + 0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00EE,0x1191,0x2A75,0x3AD6,0x2A54,0x19D2,0x010F,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x006E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x0970,0x2233,0x2A75,0x2254,0x11B1,0x010F,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00CE,0x00CE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008D,0x008D,0x008E,0x008E,0x00AE,0x00CE,0x00CE,0x0950,0x2233,0x32B5,0x2234,0x010F,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x00CE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CF,0x010F,0x2254,0x32B6,0x19D2,0x00EF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00AE,0x00AE,0x008E,0x00AE,0x00CE,0x010F,0x19F2,0x3295,0x1191,0x00CE,0x00AE,0x00AE,0x00CE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x1A13,0x2213,0x00EF,0x00AE,0x00CF,0x00AE,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AF,0x008E,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x1A13,0x1A13,0x00CE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00CE,0x00EF,0x010F,0x4338,0x19F3,0x00CE,0x008E,0x008E,0x008E,0x00AF,0x008E,0x00AE,0x00AE,0x00CE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x008E,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x11B2,0x53BA,0x0992,0x00CF,0x00CF,0x00AE,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008D,0x088D,0x106D,0x182D,0x200C,0x79F3,0xA255,0xA214,0xA9F4,0xA1B3,0xA9D4,0xA9F4,0xB1F4,0xA9F4,0xA1F4,0xA214,0xA276,0x8A76,0x280C,0x186D,0x086D,0x006D,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00EF,0x19D2,0x4B78,0x1191,0x00CF,0x00AE,0x00CE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00CE,0x0110,0x2A75,0x3AF7,0x0991,0x010F,0x00CF,0x00CF,0x00CE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00EF,0x11B2,0x2A95,0x3295,0x11D2,0x010F,0x00CE,0x00CE,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008D,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008D,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E, + 0x00CE,0x00AE,0x00CE,0x00CE,0x00CE,0x1191,0x3AF7,0x3AF6,0x2234,0x0971,0x010F,0x00CE,0x00AE,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x006D,0x006D,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AD,0x00AD,0x00EF,0x0950,0x2234,0x2A95,0x2A54,0x11B1,0x010F,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00CE,0x010F,0x19D2,0x32B5,0x32B5,0x19B2,0x00CE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CF,0x010F,0x2A95,0x2AB5,0x0971,0x00EF,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x0930,0x0971,0x32B5,0x19D2,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00CE,0x010F,0x2A75,0x11B2,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x008E,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008D,0x19F3,0x1A13,0x00CE,0x00CE,0x00CE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00EF,0x2A54,0x3AF7,0x00EF,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AF,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00CE,0x00CE,0x00AE,0x00AE,0x00CE,0x00CE,0x008E,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x00AE,0x00EF,0x2214,0x32D7,0x0130,0x00CF,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x088D,0x106D,0x184D,0x180B,0x6130,0x9A55,0xA234,0xA1F4,0xA1D4,0xA9D4,0xB215,0xB215,0xA9F4,0xA214,0xA235,0xA2D7,0x5931,0x200C,0x104D,0x086D,0x006E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00CE,0x010F,0x0991,0x4358,0x19F2,0x00EE,0x00CE,0x00AE,0x00CF,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00CE,0x00CE,0x00CF,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00CE,0x00EF,0x0991,0x32D6,0x2254,0x012F,0x00EF,0x00EF,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x010F,0x11B2,0x32B5,0x32B6,0x11B1,0x010F,0x00CF,0x00EF,0x00AF,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00CF,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AD,0x00CE,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE, + 0x00AE,0x00EE,0x012F,0x11D2,0x3AF6,0x3B17,0x19F2,0x012F,0x00CE,0x00AE,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x006D,0x008E,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008D,0x008D,0x008E,0x00AE,0x00CE,0x1191,0x2213,0x2A95,0x2A54,0x1191,0x010F,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008E,0x00AE,0x00CE,0x00CE,0x010F,0x0970,0x2233,0x2A74,0x2213,0x0930,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x0130,0x3AD6,0x2A75,0x010F,0x00EF,0x00EF,0x00CF,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00CF,0x00CF,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x008E,0x008E,0x008E,0x00CE,0x1170,0x0950,0x2A75,0x2213,0x00EF,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00EF,0x2213,0x2A74,0x0130,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x00AF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00CF,0x008E,0x008E,0x008E,0x008E,0x008D,0x2213,0x1A33,0x00CE,0x00CE,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00CE,0x010F,0x3B17,0x0950,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AF,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x19F3,0x32B6,0x010F,0x00CE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008D,0x088D,0x088D,0x104D,0x180C,0x48AE,0x9A75,0x9A14,0xA214,0xAA14,0xA9F4,0xAA14,0xA9F4,0xAA14,0xAA35,0xA255,0xA2F7,0x382D,0x202D,0x102D,0x084D,0x006E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00CF,0x00AE,0x00AE,0x00AE,0x00CE,0x00EF,0x0971,0x4338,0x2213,0x00EF,0x00CE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008D,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00CE,0x00AE,0x008E,0x008D,0x008E,0x008E,0x008E,0x008D,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00EF,0x3295,0x4338,0x19F3,0x010F,0x00CE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00EE,0x19F2,0x3AF6,0x32D6,0x1A13,0x010F,0x00EF,0x00AF,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x00AD,0x00AE,0x00AE,0x00AE,0x00AD,0x00AD,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008D,0x008E,0x008E, + 0x012F,0x19D2,0x32D6,0x32D6,0x11D2,0x0130,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008D,0x008D,0x008E,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008D,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008D,0x00AD,0x00AD,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008E,0x008D,0x008E,0x008D,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00CE,0x1171,0x2A75,0x32B5,0x2A75,0x19D2,0x00EF,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x00AE,0x00AD,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008D,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00CE,0x010F,0x0130,0x11B1,0x2274,0x2A94,0x1191,0x00EF,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x0971,0x4317,0x2234,0x010F,0x00CF,0x00CF,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x010F,0x0970,0x19F3,0x3295,0x010F,0x00CE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00EF,0x32B5,0x2213,0x00EF,0x00CE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008D,0x19F2,0x1A13,0x00CE,0x00CF,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x2234,0x2234,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x008E,0x00AE,0x00CF,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00EF,0x2A95,0x2A95,0x00EF,0x00CF,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00CE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AD,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x006D,0x086D,0x106D,0x180C,0x384D,0x9255,0x9A35,0xA214,0xA214,0xA9F4,0xA9F4,0xA1F4,0xAA35,0xA255,0xA296,0x8A55,0x280C,0x182D,0x082D,0x084D,0x006E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00CE,0x00EE,0x0150,0x3AF7,0x32B6,0x00EF,0x00EF,0x00CE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008D,0x008D,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00EF,0x0970,0x32D6,0x3AF7,0x0130,0x00CE,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008D,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x008D,0x00AE,0x00CE,0x00CE,0x00CE,0x012F,0x11D2,0x3AF6,0x3AF6,0x19D3,0x00EF,0x00AE,0x00CE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x00AD,0x00AD,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x00AD,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008D,0x008D,0x008E, + 0x2A95,0x3295,0x1191,0x00CE,0x00AE,0x00AD,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008D,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008D,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x008D,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008E,0x008E,0x008D,0x008D,0x00AE,0x008E,0x00AE,0x008D,0x008D,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008D,0x00AE,0x00CE,0x00EE,0x0970,0x2233,0x2A74,0x2254,0x19F2,0x00EF,0x00AE,0x00AD,0x00AD,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00CE,0x00EF,0x0150,0x2233,0x2A74,0x2253,0x0950,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00CE,0x008E,0x008D,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x11D2,0x4338,0x1A13,0x00EF,0x00CF,0x00CF,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AD,0x00AE,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x00AE,0x00CF,0x0930,0x11B2,0x3AF7,0x0950,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00CF,0x0150,0x32F6,0x1191,0x00CF,0x00AE,0x008E,0x008E,0x006D,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AF,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x008D,0x2213,0x1A13,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00CE,0x0970,0x32D6,0x010F,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00CE,0x00CE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x010F,0x3B17,0x1A13,0x00EF,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x00AE,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x088D,0x106D,0x184C,0x280C,0x7A14,0x9A55,0x9A14,0xAA55,0xAA35,0xA1F3,0xA214,0xA234,0x9A34,0x9A96,0x50F0,0x200C,0x182D,0x084D,0x088E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x012F,0x3B17,0x3B17,0x010F,0x00CE,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x008E,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x19F2,0x4358,0x19F2,0x010F,0x00CE,0x00CE,0x00CE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x008D,0x008D,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008D,0x008D,0x00AE,0x00AE,0x006D,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x00AE,0x00CE,0x00CE,0x00CE,0x010F,0x1A13,0x32D6,0x2A75,0x11B2,0x00EF,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008D,0x008D,0x008D,0x00AE,0x00AD,0x008D,0x00AE,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008E,0x008E,0x00AE,0x008D,0x008D,0x00AD,0x00AE,0x008D,0x00AE,0x008E,0x00AE,0x008D,0x00AE,0x008E,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008E,0x008E,0x008E,0x008D,0x008E,0x008E,0x008E,0x008D,0x008D,0x00AE,0x008E, + 0x11B2,0x010F,0x00CE,0x00AE,0x008D,0x00AE,0x008D,0x008E,0x008E,0x008E,0x008E,0x008D,0x008D,0x008D,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008D,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008D,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x008E,0x008D,0x008E,0x008D,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AD,0x00AE,0x008D,0x008D,0x00AE,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x00AE,0x008D,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00CE,0x1171,0x2233,0x2A74,0x2274,0x19F2,0x0130,0x00CE,0x00AE,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x00AD,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00CE,0x010F,0x11B1,0x2A74,0x3295,0x11B1,0x00EE,0x00CE,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008E,0x008D,0x008E,0x008E,0x00AE,0x008D,0x008E,0x00AE,0x00AE,0x008E,0x008D,0x008E,0x00AE,0x00AE,0x008D,0x008E,0x00AE,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008D,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x2213,0x4358,0x11B2,0x00EF,0x00CE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x00AD,0x00AD,0x00AE,0x00AD,0x00AD,0x00AD,0x00AE,0x00AE,0x008E,0x00CF,0x010F,0x1191,0x32B6,0x19D2,0x00EE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00CF,0x00CF,0x1A13,0x32D6,0x00EF,0x00CE,0x00AE,0x008E,0x006D,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008E,0x006D,0x1A12,0x1A12,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x010F,0x2A95,0x21F3,0x00CE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00CE,0x00EE,0x0991,0x4358,0x0991,0x00CE,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008D,0x00AE,0x00AD,0x00AE,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x00CE,0x00AD,0x00AD,0x00AE,0x00AE,0x008D,0x008D,0x006D,0x108D,0x184D,0x200B,0x69B2,0x9A95,0x9A34,0xA214,0xAA34,0xA1F4,0xA1F4,0xA255,0x9A55,0x9AD7,0x384D,0x180C,0x104D,0x084D,0x006D,0x006E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AD,0x00AE,0x00AD,0x008E,0x00AE,0x00AE,0x00AE,0x00AD,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AD,0x00AE,0x00AE,0x00CE,0x010F,0x2A74,0x4337,0x0950,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008E,0x00AE,0x008D,0x00AD,0x00AD,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x00AE,0x00AE,0x00AE,0x00AD,0x00AE,0x00AE,0x00AD,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x006D,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x00AE,0x00AE,0x00EE,0x0970,0x32D6,0x3B17,0x012F,0x00EF,0x00EF,0x00CE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x00AE,0x008D,0x00AD,0x00AE,0x00AE,0x00AD,0x00AE,0x00AD,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x00AE,0x008D,0x006D,0x006D,0x008E,0x00AE,0x008D,0x00AE,0x00AD,0x00AD,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x00AD,0x00AE,0x00AE,0x00CE,0x00CE,0x012F,0x11D2,0x32B5,0x32B5,0x1191,0x00CE,0x00CE,0x00CE,0x00AE,0x008E,0x008E,0x008D,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x00AE,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008E,0x00AE,0x00AD,0x00AD,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D, + 0x00AE,0x00CE,0x00AE,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008E,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008D,0x00AE,0x008E,0x00AE,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008E,0x008D,0x008D,0x00AD,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008E,0x008D,0x008D,0x008E,0x008E,0x00AE,0x008D,0x008E,0x008E,0x008E,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x00CE,0x00AE,0x008D,0x006D,0x008D,0x008D,0x00AE,0x00AE,0x00EE,0x0950,0x19F2,0x1A13,0x2234,0x19F2,0x0970,0x00CE,0x00CE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x008E,0x008D,0x00AD,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x00AD,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008E,0x008E,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00EF,0x0950,0x2233,0x2A74,0x2213,0x010F,0x00AD,0x00AE,0x00AD,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008E,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008D,0x00CE,0x00AE,0x008E,0x008E,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x00CE,0x3275,0x4317,0x1191,0x00EF,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008D,0x008E,0x00AE,0x00AE,0x00AD,0x00AE,0x008D,0x008D,0x00AD,0x00CE,0x00CE,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00EF,0x0950,0x3295,0x2213,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008E,0x00AE,0x008D,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008D,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00EF,0x32D5,0x1A13,0x00EF,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x2213,0x19F2,0x00CE,0x00CE,0x00AE,0x008E,0x00AD,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008D,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00EF,0x2233,0x32B5,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00CE,0x00CE,0x00CE,0x2213,0x4378,0x0130,0x00CE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008D,0x00AD,0x00CE,0x00AD,0x00AE,0x00AD,0x00AD,0x00AD,0x008D,0x088D,0x108E,0x102C,0x180C,0x40AE,0x9A95,0x9A34,0xA214,0xA214,0xAA34,0xA234,0xA255,0xA296,0x79F3,0x280C,0x180C,0x104D,0x108E,0x088E,0x008E,0x008E,0x008E,0x008E,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00EE,0x2254,0x3B17,0x11B1,0x00EF,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008D,0x008D,0x008D,0x00AE,0x00AD,0x00AE,0x00AD,0x00AD,0x00AD,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x008D,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008D,0x008D,0x00AE,0x00AD,0x00AE,0x00AE,0x00AE,0x00AE,0x00EE,0x00EF,0x2254,0x4358,0x1A13,0x00EF,0x00EE,0x00AE,0x00AE,0x008D,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008D,0x00AE,0x008D,0x008D,0x00AE,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008D,0x00AE,0x00AE,0x00AD,0x008D,0x008E,0x00AE,0x00AE,0x00CE,0x00AE,0x00AD,0x00AD,0x00AD,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x00AE,0x00AE,0x00AE,0x00CE,0x012F,0x2233,0x32D6,0x2A74,0x0970,0x00EE,0x00CE,0x00AE,0x00AE,0x008E,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x00AE,0x008D,0x008E,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x00AE,0x00AD,0x008D,0x006D,0x008D,0x008D,0x006D, + 0x00AD,0x00AE,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008D,0x008D,0x008D,0x008E,0x008E,0x008E,0x008D,0x00AE,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x00AD,0x00AE,0x00CE,0x012F,0x19F2,0x2233,0x2233,0x19F2,0x0950,0x00EF,0x00AE,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008E,0x008D,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008D,0x008E,0x00AE,0x00AE,0x008D,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00CE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008E,0x00AE,0x00AD,0x00AE,0x00AE,0x008D,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008D,0x008E,0x00AE,0x00EF,0x19F2,0x2A94,0x2A74,0x0970,0x00CE,0x00AE,0x00AE,0x008E,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008D,0x00AE,0x00CE,0x008D,0x00AE,0x00AE,0x008D,0x00AE,0x00AD,0x008D,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x00AE,0x008E,0x008D,0x008E,0x008E,0x008E,0x008D,0x008E,0x008D,0x008D,0x008E,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x00CE,0x3AB6,0x42F7,0x0950,0x00EF,0x00AE,0x008E,0x008E,0x006D,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008D,0x008E,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008D,0x00AD,0x008D,0x008D,0x008D,0x00AD,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00CE,0x00CE,0x010F,0x2A54,0x2A54,0x010F,0x00CE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008D,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x00AD,0x00AE,0x008D,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008D,0x008E,0x008E,0x00AE,0x00AE,0x00CE,0x0930,0x3B17,0x0970,0x00CE,0x00AE,0x008D,0x008D,0x00AE,0x00AE,0x006D,0x008D,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x006D,0x1A12,0x19F2,0x00CE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x008E,0x008E,0x00AE,0x00AE,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00CE,0x00AE,0x008D,0x008E,0x00AE,0x00CE,0x00CE,0x0950,0x3AF6,0x012F,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00CE,0x00EE,0x2A95,0x3AF7,0x00EF,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008E,0x008E,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x008D,0x008D,0x006D,0x086D,0x104D,0x180C,0x302C,0x9AD6,0x9213,0x9A14,0xA234,0xA214,0xA255,0x9A34,0xA317,0x48AE,0x200C,0x100C,0x084D,0x088E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x00CE,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AD,0x00AE,0x00CE,0x00EE,0x0991,0x4337,0x2233,0x00EE,0x00CE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x008D,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AE,0x00AD,0x008D,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008E,0x006D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x00AE,0x00AD,0x00AE,0x00CE,0x00CE,0x0150,0x2A95,0x3B17,0x012F,0x00EE,0x00EE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x00AD,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x00AD,0x00AE,0x00AE,0x00AD,0x00AE,0x00AE,0x00AE,0x00CE,0x012F,0x1A13,0x32D6,0x2A74,0x0950,0x00CE,0x00CE,0x00CE,0x00AE,0x00AD,0x008D,0x008D,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008E,0x008D,0x008E,0x008D,0x008E,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D, + 0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008E,0x00AE,0x008E,0x008D,0x008D,0x008D,0x00AE,0x00AD,0x00AD,0x00AE,0x00CE,0x010F,0x19D2,0x2254,0x2A74,0x2233,0x1191,0x00EE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008D,0x008D,0x008D,0x008E,0x008D,0x008E,0x008D,0x008D,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008E,0x008D,0x008D,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x0950,0x2254,0x2A74,0x19F2,0x00EE,0x00AD,0x00AE,0x00AE,0x008E,0x00AE,0x008D,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008E,0x008E,0x008D,0x008D,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AD,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x00AD,0x00AE,0x008D,0x008E,0x008D,0x00AD,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008D,0x00AE,0x00AE,0x008E,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x00AE,0x00EF,0x3AD6,0x3275,0x010F,0x010F,0x00CE,0x008E,0x008E,0x008D,0x008D,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008D,0x008E,0x008E,0x00AE,0x008D,0x008D,0x008D,0x008E,0x008D,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x006D,0x008E,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x008E,0x008D,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x00AD,0x008D,0x00AE,0x008D,0x008D,0x00AE,0x00CE,0x00CE,0x00EE,0x2233,0x3AD6,0x010F,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x00AE,0x00AD,0x00CE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x008E,0x00AE,0x00CE,0x00CE,0x2213,0x2A95,0x010F,0x00CE,0x00AE,0x008D,0x008E,0x00AE,0x008E,0x008D,0x006D,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x008E,0x006D,0x008D,0x006D,0x006D,0x2233,0x1A12,0x00CE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x008D,0x008E,0x00AE,0x008D,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x008E,0x008E,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00CE,0x00AE,0x008D,0x00AE,0x00AE,0x00AD,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x2A74,0x2233,0x008D,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x00AD,0x008D,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008D,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008D,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x012F,0x3B17,0x1A13,0x00CE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x00AD,0x00AD,0x00AD,0x00AE,0x008D,0x008D,0x088D,0x086D,0x104D,0x100C,0x282C,0x9295,0x9234,0xA255,0xA234,0x99F4,0xA255,0x9254,0x8A75,0x280B,0x180C,0x102C,0x084D,0x088E,0x006D,0x008E,0x008E,0x008E,0x008E,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x00AE,0x00AD,0x00AD,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x00AD,0x00AD,0x00AD,0x008D,0x008D,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x00AE,0x00CE,0x0950,0x4358,0x2A74,0x00EF,0x00AE,0x008E,0x00AE,0x008D,0x008D,0x008E,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x008E,0x006D,0x006D,0x008D,0x00AE,0x00AE,0x008D,0x00AD,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x00AE,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x00AD,0x00AE,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x00AE,0x00CE,0x00CE,0x11D2,0x4B99,0x2274,0x012F,0x00CE,0x00CE,0x00AE,0x00AE,0x00CE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008D,0x008D,0x00AD,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AE,0x00AE,0x00AE,0x008D,0x00AD,0x00AD,0x00AD,0x00CE,0x0950,0x2A54,0x2AB5,0x2233,0x0150,0x00EF,0x00CE,0x00CE,0x00CE,0x008E,0x008D,0x008E,0x006D,0x006D,0x008E,0x008D,0x008E,0x008E,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D, + 0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x006D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00CE,0x00EE,0x1191,0x2A74,0x3AF6,0x2233,0x0950,0x00EE,0x00AD,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x00AE,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008E,0x008E,0x00AE,0x00AE,0x00EF,0x2213,0x32B5,0x2A54,0x0950,0x00CE,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x00AD,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x006D,0x006D,0x008D,0x008D,0x006D,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x092F,0x4317,0x2233,0x010F,0x00EF,0x00CE,0x00AE,0x008D,0x006D,0x008D,0x008D,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x00AE,0x008D,0x008D,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008D,0x008D,0x00AE,0x008E,0x008D,0x008D,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008D,0x008D,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x008D,0x008E,0x006D,0x008D,0x00AE,0x008D,0x00AE,0x00CE,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x00AE,0x00CE,0x00EE,0x1191,0x4317,0x1191,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x00AE,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x00AD,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AD,0x00AD,0x00AD,0x00AD,0x008D,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x006D,0x008E,0x00AE,0x00CE,0x00EF,0x3AF6,0x11B1,0x00CE,0x00AE,0x008E,0x008E,0x008E,0x00CF,0x008E,0x006D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008E,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AD,0x008D,0x008D,0x00AD,0x00AE,0x008E,0x008E,0x008D,0x006D,0x006D,0x006D,0x2213,0x19F2,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x006D,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008D,0x00AE,0x008E,0x008E,0x008E,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x00AE,0x008D,0x00AE,0x00AE,0x00AD,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00CE,0x0991,0x3AF6,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AD,0x00AD,0x008D,0x00AE,0x00AE,0x00AD,0x00AD,0x008D,0x008E,0x008E,0x008E,0x00AE,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008E,0x008D,0x00AD,0x00AE,0x008E,0x008E,0x008E,0x008D,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008D,0x008E,0x008D,0x008D,0x008E,0x008E,0x008E,0x008D,0x008E,0x008E,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008D,0x008E,0x00AE,0x008D,0x00AD,0x00AE,0x00CE,0x0970,0x3AF7,0x0971,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x00AD,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008E,0x008D,0x088D,0x086D,0x104D,0x184C,0x200B,0x7A14,0x9A75,0x9A34,0x9A14,0x9A14,0x9A34,0x9A96,0x5930,0x200B,0x182C,0x102C,0x084D,0x086D,0x006D,0x008D,0x008E,0x008D,0x00AE,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008D,0x00AD,0x008D,0x008D,0x00AE,0x00AD,0x00AD,0x008D,0x00AD,0x008D,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008E,0x00AE,0x00AD,0x00AE,0x00AE,0x008D,0x00AE,0x00AD,0x00AD,0x00AD,0x00AE,0x00CE,0x012F,0x32B5,0x3AD6,0x010F,0x00CE,0x00AE,0x008D,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008E,0x008E,0x00AE,0x008E,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x00EE,0x0150,0x2A94,0x3B17,0x11B2,0x00CE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008D,0x008D,0x00AE,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00CE,0x00EE,0x0970,0x1A13,0x3B17,0x2254,0x012F,0x00EE,0x00CE,0x00AE,0x008E,0x006D,0x006D,0x006D,0x006D,0x008D,0x008E,0x006D,0x008D,0x006D,0x006D,0x008D,0x006D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D, + 0x006D,0x008D,0x006D,0x008D,0x006D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x00AE,0x008D,0x008E,0x006D,0x006D,0x006D,0x008E,0x00AE,0x00EE,0x1191,0x2A94,0x3AD5,0x2A53,0x092F,0x00CE,0x00AD,0x008D,0x006D,0x008D,0x008D,0x006D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008E,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x00AE,0x0970,0x3AD6,0x4317,0x19F2,0x00CE,0x00AD,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x00AD,0x008D,0x00AD,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008E,0x006E,0x006D,0x008E,0x00AE,0x008E,0x006D,0x008E,0x008D,0x008E,0x00AE,0x00AE,0x008D,0x008D,0x00AD,0x00AD,0x0970,0x4317,0x19F2,0x010F,0x0930,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008D,0x008E,0x008E,0x00AE,0x008D,0x008E,0x008D,0x00AE,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008D,0x008D,0x008E,0x00AE,0x008E,0x008E,0x008D,0x008E,0x008E,0x008E,0x008E,0x008D,0x008E,0x00AE,0x008E,0x008D,0x00AE,0x008D,0x008E,0x006D,0x008D,0x008D,0x008E,0x008D,0x00AE,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x094F,0x3AF6,0x19B2,0x00CE,0x008E,0x008E,0x008E,0x008D,0x008E,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008E,0x008E,0x008E,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008D,0x00AD,0x00CE,0x00AD,0x008D,0x008D,0x00AD,0x00AE,0x00AE,0x00AE,0x008D,0x008E,0x008E,0x008D,0x008E,0x008E,0x008E,0x00AE,0x00CE,0x0971,0x3295,0x00EF,0x00AE,0x00AE,0x008E,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x008E,0x008E,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x008D,0x008D,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x008D,0x008E,0x00AD,0x00AE,0x00AE,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x006D,0x006D,0x006D,0x2233,0x19F2,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008E,0x008D,0x008E,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x00AD,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x008E,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00CE,0x012F,0x32B6,0x1191,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008D,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x00AD,0x008D,0x008E,0x008E,0x008E,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AD,0x00AD,0x00AD,0x00AD,0x00AE,0x008D,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x008E,0x00AE,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x00AD,0x00AE,0x00AD,0x00AE,0x00CE,0x11D2,0x4358,0x0950,0x00CE,0x00AE,0x00AE,0x008E,0x008D,0x008E,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x00AE,0x008D,0x008D,0x006D,0x086D,0x104D,0x184D,0x200B,0x6992,0x9A95,0x9214,0x9A14,0x9A34,0x9A35,0x9296,0x384D,0x202C,0x184D,0x082C,0x084D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x00AE,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x00AE,0x00AE,0x00AD,0x00AE,0x008D,0x00AE,0x00AE,0x00AD,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x32B5,0x3B17,0x00EE,0x00AE,0x008D,0x00AD,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x008D,0x008E,0x00AE,0x00AE,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x00AE,0x00AE,0x00CE,0x00CE,0x19D2,0x4B78,0x3295,0x0130,0x00AE,0x008D,0x008E,0x008E,0x008D,0x006D,0x008E,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008E,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x006D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x00AD,0x008D,0x00AD,0x00AD,0x00CE,0x00EE,0x014F,0x2253,0x3AF6,0x2233,0x012F,0x00CE,0x00AE,0x008E,0x008D,0x006D,0x008E,0x006D,0x008E,0x008E,0x008D,0x008D,0x008E,0x008E,0x006D,0x006D,0x008D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D, + 0x008D,0x006D,0x006D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x00AE,0x0950,0x2A54,0x3AD6,0x2A54,0x0970,0x00EE,0x00AD,0x008D,0x008D,0x006D,0x006D,0x006D,0x006C,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x006D,0x008D,0x008D,0x006D,0x008D,0x008D,0x00CE,0x21F2,0x4B37,0x3295,0x00EE,0x00AE,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008E,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008D,0x008E,0x00AE,0x008E,0x006D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x19B1,0x4317,0x11B1,0x010F,0x00EE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AD,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008E,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x006D,0x008E,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x008D,0x008E,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00AE,0x00AE,0x00CE,0x32B5,0x2A54,0x00CE,0x008E,0x006D,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x00AD,0x008E,0x008E,0x008D,0x008E,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008E,0x008E,0x008D,0x008D,0x008D,0x008E,0x008D,0x008E,0x008E,0x008E,0x008D,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x008D,0x00AE,0x008D,0x00AE,0x00AE,0x008D,0x008E,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008E,0x006D,0x00AE,0x008E,0x008E,0x00AE,0x00CE,0x2234,0x2213,0x00AE,0x00AE,0x008E,0x006D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008D,0x008E,0x008E,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x00AE,0x008E,0x008E,0x008E,0x00AE,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008D,0x008D,0x00AD,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x006D,0x006D,0x008D,0x004C,0x2213,0x19D2,0x00AE,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008E,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008E,0x00AE,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00EF,0x2213,0x3AD6,0x00CE,0x008E,0x008D,0x008E,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008E,0x008E,0x00AE,0x00AE,0x00AD,0x00AD,0x008D,0x008D,0x00AE,0x008D,0x00AE,0x00AE,0x00AD,0x00AD,0x00AD,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x00AE,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008E,0x00AE,0x00AE,0x008D,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x008D,0x00AD,0x00AE,0x00EE,0x2A74,0x3B17,0x010F,0x00CE,0x00AE,0x008E,0x008E,0x00AE,0x00AE,0x00AE,0x008E,0x008D,0x008D,0x006D,0x008E,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x00AD,0x008D,0x008D,0x006D,0x006D,0x086D,0x104D,0x104D,0x200C,0x5930,0x9296,0x9A55,0x9A14,0x9A14,0x9255,0x7A14,0x280B,0x180C,0x104C,0x084C,0x086D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AE,0x00AE,0x00AD,0x00AD,0x00AE,0x00CE,0x00EF,0x2213,0x4337,0x012F,0x00AD,0x00AE,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x010F,0x2A75,0x4B99,0x11B2,0x00AE,0x00AE,0x00AE,0x008D,0x008E,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x006D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x00CE,0x00EE,0x0950,0x2253,0x3AF6,0x2213,0x00EE,0x00AE,0x00AE,0x008D,0x008E,0x006D,0x008E,0x006D,0x008D,0x008D,0x008E,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x006C,0x008C,0x008C,0x008C,0x008D,0x008C,0x008C, + 0x006D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006C,0x006D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x006C,0x006D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x006C,0x006C,0x008C,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008D,0x00AD,0x00AD,0x008D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00CE,0x0930,0x2233,0x3295,0x2A33,0x1191,0x00CE,0x008D,0x00AD,0x008D,0x008D,0x006D,0x008D,0x008D,0x008C,0x008D,0x008C,0x008D,0x008D,0x006C,0x008C,0x006C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x00AE,0x00AE,0x006D,0x008D,0x006D,0x006D,0x008D,0x00AD,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x1170,0x3295,0x3AB5,0x1191,0x00AD,0x00AE,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x006D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008E,0x008E,0x008E,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x21F2,0x3AF6,0x11B1,0x010F,0x00AE,0x008D,0x00AD,0x008D,0x008D,0x006D,0x008D,0x006D,0x008D,0x008D,0x00AE,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008E,0x008E,0x008D,0x008D,0x00AD,0x008D,0x008D,0x00AE,0x008D,0x00AD,0x00AD,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008D,0x006D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008E,0x008D,0x00AE,0x008E,0x008D,0x008D,0x006D,0x008D,0x006D,0x006D,0x006D,0x008D,0x00AE,0x00AE,0x00CE,0x3274,0x32B5,0x00EF,0x00AE,0x008D,0x008D,0x008D,0x00AE,0x008E,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008E,0x00AE,0x092F,0x32D6,0x0930,0x00AE,0x008D,0x006D,0x006D,0x00AE,0x00AE,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00CE,0x008D,0x006D,0x006D,0x006D,0x006D,0x006D,0x2233,0x19F2,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00CE,0x0970,0x4357,0x012F,0x008D,0x008E,0x008E,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008E,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x00AD,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x006D,0x006D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x00AD,0x00AD,0x00AE,0x00CE,0x3AF6,0x2AB5,0x00CE,0x00CE,0x00AE,0x008E,0x00AE,0x008E,0x008E,0x006D,0x008E,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x006D,0x086D,0x084D,0x102C,0x180C,0x48CF,0x92B6,0x9A75,0x9A54,0x9234,0x9A96,0x48CE,0x200B,0x182C,0x082C,0x084D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008E,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00CE,0x00EE,0x19D1,0x53B9,0x11B1,0x00CE,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008E,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x00AE,0x00AE,0x11B1,0x4B78,0x3295,0x010F,0x00AE,0x00CE,0x00CE,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008C,0x008C,0x008C,0x006C,0x008D,0x008D,0x008D,0x008D,0x006C,0x006C,0x006C,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x00AD,0x00AD,0x00AD,0x00CE,0x012F,0x32B5,0x3AF6,0x19F2,0x00EE,0x00AD,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008E,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006C,0x006C,0x006C,0x008C,0x008D,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008D,0x008C,0x008C, + 0x008D,0x006D,0x008D,0x008D,0x008D,0x008C,0x008D,0x008C,0x006C,0x008C,0x006C,0x008D,0x006C,0x006C,0x006C,0x008D,0x006C,0x006C,0x006C,0x006C,0x006D,0x006D,0x008D,0x006C,0x006C,0x006D,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008D,0x008D,0x006D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00CE,0x094F,0x2233,0x3AD5,0x2A74,0x11B1,0x00EE,0x008D,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008C,0x008C,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008D,0x008C,0x008D,0x008D,0x008C,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x00AD,0x008D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x08EE,0x2A33,0x4B37,0x3274,0x010E,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x006D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x3294,0x42F6,0x0970,0x00CD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AD,0x19D2,0x42F6,0x092F,0x00AE,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008E,0x008D,0x00AE,0x2A33,0x3AB5,0x00EE,0x008D,0x008D,0x006D,0x008D,0x008D,0x00AD,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x006C,0x2213,0x19D2,0x00AD,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x006D,0x006D,0x006D,0x008D,0x00AE,0x010F,0x32B5,0x2213,0x008D,0x006D,0x006D,0x008E,0x00AE,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AE,0x0150,0x4358,0x19F2,0x00CE,0x00CE,0x00AE,0x008E,0x006D,0x008D,0x006D,0x008E,0x00AE,0x006D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x086D,0x084D,0x104D,0x180C,0x386E,0x92D7,0x9296,0x9A75,0x9234,0x8A75,0x280B,0x182C,0x102C,0x084C,0x004D,0x006D,0x008D,0x006D,0x006D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x008D,0x00AD,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x00EE,0x1190,0x4B78,0x2213,0x00AD,0x008D,0x008D,0x008D,0x008E,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x00AD,0x00CE,0x012F,0x2A54,0x4337,0x19B1,0x00CE,0x00EE,0x00CE,0x00AD,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x006C,0x006D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008C,0x008C,0x008D,0x008C,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x006D,0x006D,0x006D,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x00AD,0x00AD,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00CE,0x094F,0x2A54,0x4B57,0x2213,0x00CE,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x004C,0x006C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C, + 0x006C,0x008C,0x008D,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x00AD,0x008D,0x008C,0x008D,0x006C,0x006C,0x008D,0x008D,0x006D,0x008D,0x008D,0x00AD,0x012F,0x2212,0x3AF6,0x32B5,0x19D2,0x090E,0x008D,0x006C,0x006D,0x006C,0x006C,0x006C,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x00AD,0x00AD,0x006C,0x006C,0x006C,0x008D,0x008C,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x006C,0x008D,0x008D,0x008D,0x006D,0x006C,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x006C,0x008D,0x006D,0x008D,0x008D,0x006D,0x008D,0x006C,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006C,0x006D,0x00AD,0x008D,0x008D,0x008D,0x006D,0x006C,0x008D,0x006D,0x008D,0x008D,0x00AD,0x1991,0x3AB5,0x3AB5,0x1990,0x00AD,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x006D,0x006D,0x006D,0x006D,0x008D,0x006D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x42D6,0x3AD5,0x090F,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006C,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AD,0x1191,0x4316,0x1170,0x00AD,0x008D,0x006D,0x006D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x006D,0x008D,0x008D,0x008D,0x00AE,0x008E,0x008D,0x008D,0x006D,0x008D,0x00EE,0x4317,0x19B1,0x00AE,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x006D,0x006D,0x006C,0x2213,0x19F2,0x00AD,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00CE,0x00AD,0x008D,0x008D,0x006D,0x008D,0x00AE,0x00EF,0x19F2,0x4337,0x00AE,0x008D,0x006D,0x008E,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x00AD,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00CE,0x11B1,0x3B17,0x0950,0x00AE,0x008E,0x008E,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x084D,0x104D,0x204D,0x282C,0x8296,0x8A55,0x9255,0x9296,0x6150,0x200B,0x184C,0x082C,0x084C,0x004C,0x004C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x006D,0x008D,0x006D,0x006D,0x008D,0x008D,0x006D,0x008D,0x008D,0x00AD,0x00AD,0x00CE,0x012F,0x4B57,0x3274,0x00CE,0x008D,0x008D,0x006D,0x006D,0x006D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008D,0x008C,0x008C,0x006C,0x006C,0x008C,0x008D,0x008D,0x00AD,0x00AD,0x00AD,0x006D,0x006D,0x006C,0x006D,0x006D,0x006D,0x008D,0x006D,0x008D,0x008D,0x00CE,0x00CE,0x1191,0x3295,0x32B5,0x014F,0x00EE,0x00AE,0x00AD,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x006C,0x008D,0x006D,0x008D,0x008D,0x008D,0x008C,0x008D,0x008C,0x008D,0x008D,0x006C,0x006C,0x006C,0x006C,0x008C,0x008D,0x008D,0x008D,0x006C,0x006C,0x008C,0x008D,0x008D,0x008C,0x008D,0x008D,0x006C,0x008D,0x006D,0x006D,0x008D,0x008D,0x006C,0x006C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x008D,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x00AD,0x006C,0x006C,0x006C,0x006C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x1190,0x42F6,0x4B57,0x21F2,0x00EE,0x008D,0x006D,0x006D,0x004D,0x006D,0x006D,0x006C,0x006D,0x006D,0x006C,0x006C,0x006C,0x006C,0x006C,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C, + 0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x004C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008D,0x006C,0x006C,0x006C,0x008C,0x00CD,0x2212,0x3AD5,0x32B4,0x11B1,0x010E,0x008D,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008D,0x008C,0x006C,0x008D,0x006C,0x006C,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x006D,0x006D,0x006C,0x006C,0x008D,0x006C,0x006D,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x006C,0x006C,0x006D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x08EE,0x3253,0x42F6,0x2A33,0x00EE,0x00AD,0x008D,0x008D,0x008C,0x006C,0x006C,0x006C,0x006D,0x006D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006C,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008C,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00CE,0x5358,0x3A95,0x00EE,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x006C,0x008C,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x00AD,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x006C,0x006D,0x00AD,0x008D,0x006D,0x006D,0x006D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x092F,0x4B37,0x2212,0x00CE,0x00AD,0x006C,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x006D,0x006D,0x008D,0x00AE,0x00AE,0x008D,0x008D,0x008D,0x008E,0x008D,0x0970,0x4B58,0x00CE,0x00AE,0x008E,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x006D,0x006D,0x004C,0x2212,0x19D2,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x006D,0x006D,0x008D,0x008D,0x00CE,0x0150,0x3AF6,0x19D2,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x006D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AE,0x00EE,0x19F2,0x32B5,0x00EE,0x00AE,0x008E,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x006D,0x004C,0x084D,0x104D,0x184D,0x200C,0x7A75,0x92B6,0x8A54,0x92D6,0x386D,0x180B,0x104C,0x082C,0x004C,0x004C,0x006C,0x006D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x006C,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x00AD,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x00AD,0x008D,0x00AD,0x00CD,0x010E,0x42F6,0x3AD5,0x00CE,0x00AE,0x008D,0x006D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008D,0x008C,0x008C,0x008C,0x008D,0x008C,0x008C,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x006C,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008D,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008D,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006D,0x006C,0x006C,0x008D,0x008D,0x006D,0x006D,0x006C,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x010E,0x19F2,0x4B78,0x19F2,0x00EE,0x00CE,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x006C,0x008D,0x008C,0x008D,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006D,0x006D,0x008C,0x008C,0x006D,0x006C,0x006C,0x008D,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x00AD,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008D,0x008D,0x00CD,0x1170,0x32B5,0x4B78,0x2A13,0x00AD,0x008C,0x006D,0x008D,0x006D,0x006C,0x006D,0x006D,0x008D,0x006C,0x006D,0x006C,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C, + 0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x00AD,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x00AD,0x21B1,0x3AB5,0x3294,0x19B1,0x00CD,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008D,0x008D,0x008D,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008D,0x008D,0x006D,0x008D,0x008D,0x006C,0x008D,0x008C,0x008D,0x008C,0x006C,0x006C,0x006C,0x006D,0x008D,0x008D,0x006C,0x008C,0x00AD,0x1991,0x3A94,0x3274,0x114F,0x00AD,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008D,0x006D,0x006D,0x004D,0x006D,0x006D,0x006D,0x008D,0x008D,0x006C,0x008D,0x008C,0x008D,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x008C,0x008D,0x008D,0x008C,0x006C,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008C,0x008D,0x008D,0x006C,0x008D,0x008C,0x008D,0x008D,0x008D,0x00AD,0x008C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x090F,0x5378,0x2A33,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008D,0x008C,0x006C,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008C,0x008D,0x008C,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x006C,0x006C,0x006C,0x006D,0x008D,0x006D,0x00AD,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x00EE,0x3AD5,0x3294,0x00CE,0x00AD,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x00AD,0x008D,0x008D,0x006D,0x006C,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x2A54,0x2A54,0x00AD,0x008D,0x00AE,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008C,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x00AD,0x008D,0x00AD,0x008D,0x006C,0x006C,0x006C,0x006C,0x2233,0x19D2,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x00AD,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008C,0x00AD,0x008D,0x008D,0x006D,0x008D,0x008D,0x00AE,0x00AE,0x00CE,0x2233,0x32B5,0x00AE,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006C,0x006C,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00AD,0x00EE,0x3294,0x32B5,0x00CE,0x008D,0x006D,0x008D,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008C,0x008C,0x008D,0x008D,0x008C,0x008D,0x008C,0x008D,0x006C,0x086D,0x086D,0x106D,0x184D,0x200C,0x6A14,0x9B37,0x8AB6,0x7A75,0x200B,0x182B,0x084C,0x086C,0x006C,0x006D,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008C,0x006C,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x00AD,0x006C,0x006C,0x006C,0x006C,0x006C,0x008D,0x00AD,0x008C,0x006C,0x006C,0x006D,0x006D,0x008D,0x008D,0x008D,0x00AD,0x00EE,0x42F6,0x42F6,0x010E,0x00AD,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008D,0x008C,0x006C,0x008D,0x008C,0x008D,0x008D,0x006C,0x006C,0x008D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008D,0x006C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006D,0x006C,0x006D,0x006C,0x008D,0x008C,0x008C,0x008C,0x008D,0x008D,0x00AD,0x00CD,0x094F,0x4316,0x4316,0x1170,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x004C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008D,0x008C,0x00AD,0x1170,0x42F5,0x3AF5,0x19D1,0x00EE,0x008D,0x006C,0x006C,0x008D,0x008D,0x006C,0x006C,0x006C,0x006C,0x008D,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C, + 0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006B,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x21D1,0x42F6,0x3A95,0x19B1,0x00EE,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008D,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008D,0x008D,0x008C,0x114F,0x3253,0x42D5,0x21F2,0x00EE,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006D,0x006D,0x006C,0x008D,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008D,0x008C,0x008D,0x006D,0x008D,0x006C,0x008D,0x008D,0x006C,0x008C,0x008D,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008D,0x008D,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008D,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008D,0x006C,0x008C,0x008C,0x006C,0x008C,0x008D,0x008D,0x006D,0x008C,0x008C,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x114F,0x5378,0x21D2,0x00AD,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008D,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x006C,0x006C,0x006C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008C,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008C,0x006C,0x008D,0x008D,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006D,0x006C,0x006C,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x008D,0x008D,0x00CE,0x2A33,0x3AD5,0x092F,0x00AD,0x008D,0x006D,0x006C,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008D,0x008D,0x008D,0x008C,0x008D,0x008C,0x008C,0x008C,0x008D,0x008C,0x008C,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008D,0x008C,0x006D,0x006D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x00AE,0x00AE,0x4B38,0x0950,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x006C,0x008D,0x008D,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x008D,0x008D,0x00AD,0x008C,0x008C,0x008D,0x008C,0x008D,0x006D,0x006C,0x006C,0x006C,0x004C,0x2212,0x19D1,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008C,0x006C,0x008C,0x008C,0x008C,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x00AE,0x0950,0x3AD6,0x012F,0x008D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x006C,0x006C,0x006D,0x008D,0x008D,0x006D,0x006D,0x008D,0x006C,0x008D,0x008D,0x008D,0x006C,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008D,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x00AD,0x00CE,0x012F,0x32B5,0x2212,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008C,0x008D,0x008C,0x006C,0x008C,0x008C,0x008D,0x008D,0x006C,0x008D,0x004C,0x086C,0x084C,0x104C,0x180C,0x5191,0xA3DA,0x9317,0x5170,0x180B,0x102B,0x084C,0x004C,0x004C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x008D,0x008D,0x006D,0x006D,0x008D,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008D,0x008D,0x00AD,0x00EE,0x2A53,0x4316,0x1150,0x00AD,0x00AD,0x008D,0x008D,0x008D,0x006D,0x006D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x008D,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x008D,0x008D,0x006D,0x006D,0x006C,0x006C,0x008D,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x008C,0x008C,0x00AD,0x00AD,0x00EE,0x19D1,0x4316,0x2212,0x00CE,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x004C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x00AC,0x00CD,0x118F,0x3294,0x4316,0x21F2,0x00AD,0x008C,0x008D,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006B,0x006B,0x008C,0x008C,0x006B,0x006C, + 0x008B,0x008C,0x006B,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006B,0x006C,0x006B,0x004B,0x006C,0x006C,0x004B,0x004B,0x004B,0x006C,0x006C,0x006C,0x006C,0x004C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006B,0x006B,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008D,0x1170,0x3AB5,0x3AD5,0x19B1,0x00CD,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006B,0x006B,0x004B,0x004B,0x006B,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008D,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008D,0x006C,0x006C,0x006C,0x008D,0x008C,0x00EE,0x21D1,0x3253,0x3273,0x1190,0x00CD,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008D,0x00AD,0x006D,0x006D,0x006C,0x006C,0x006C,0x006C,0x006C,0x008D,0x008D,0x008D,0x008D,0x19D1,0x4B57,0x1190,0x008D,0x008D,0x008D,0x008D,0x006D,0x006C,0x006D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x008D,0x008C,0x008C,0x008C,0x008D,0x008D,0x006D,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x008D,0x008C,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008D,0x008D,0x008D,0x006C,0x008D,0x008D,0x008D,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008D,0x008D,0x006C,0x006C,0x004C,0x006D,0x008D,0x00CE,0x1190,0x3AB5,0x092F,0x00AD,0x008D,0x008D,0x008D,0x006D,0x008D,0x006D,0x008D,0x008D,0x006C,0x006C,0x006C,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x006C,0x008C,0x008D,0x008C,0x008D,0x008D,0x008D,0x006C,0x008D,0x008C,0x008C,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008D,0x008D,0x008C,0x008C,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008D,0x008D,0x00AD,0x008D,0x006C,0x006C,0x008D,0x00AD,0x00AE,0x19D2,0x3AD6,0x00CE,0x008D,0x008D,0x008D,0x008D,0x006D,0x008D,0x008D,0x008D,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008D,0x008C,0x006C,0x008C,0x008D,0x008C,0x006C,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008D,0x008D,0x006C,0x006C,0x008D,0x006C,0x006C,0x006C,0x008D,0x008D,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008D,0x008C,0x006C,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006C,0x008C,0x00AD,0x008C,0x008C,0x008C,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x00AD,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x006C,0x004C,0x006C,0x004C,0x2A13,0x19B1,0x00AD,0x008D,0x008D,0x008D,0x006C,0x006C,0x008C,0x008C,0x008D,0x008D,0x008D,0x008D,0x008C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008D,0x008D,0x008C,0x008C,0x006C,0x006C,0x008C,0x008D,0x008D,0x008D,0x008C,0x008D,0x006C,0x006C,0x008D,0x008C,0x008D,0x008C,0x008D,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008D,0x008D,0x008C,0x008C,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008D,0x006C,0x006D,0x006D,0x006C,0x006D,0x008D,0x00AD,0x2233,0x2213,0x006D,0x008D,0x008D,0x008D,0x006C,0x006C,0x008C,0x008D,0x006C,0x008C,0x008C,0x008C,0x008C,0x008D,0x008D,0x008D,0x006D,0x008D,0x006C,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x006D,0x006D,0x006D,0x006D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x006C,0x008D,0x006C,0x008D,0x008D,0x006C,0x006D,0x006D,0x006D,0x006D,0x006D,0x006C,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008D,0x008D,0x008C,0x008D,0x00AD,0x00CE,0x1170,0x4316,0x1991,0x008D,0x006D,0x006D,0x006D,0x006D,0x006D,0x008D,0x006D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x004C,0x084C,0x082C,0x102C,0x390F,0xA3FA,0x8316,0x180A,0x100A,0x084B,0x086C,0x086C,0x004C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008D,0x008D,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008D,0x00AD,0x00CD,0x2A13,0x42F6,0x1191,0x00CE,0x008D,0x006D,0x006D,0x006D,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x00AD,0x00AD,0x010E,0x3294,0x42F6,0x1170,0x00AD,0x008D,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x004C,0x006C,0x006C,0x004C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006B,0x006C,0x006B,0x006C,0x004B,0x006B,0x004B,0x006C,0x008C,0x004B,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x00AC,0x00AC,0x00CD,0x094F,0x3294,0x32B4,0x1190,0x00AD,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x004B,0x006B,0x006C,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B, + 0x006B,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x004B,0x006C,0x006C,0x004B,0x006C,0x006C,0x004B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x116F,0x4AF6,0x42F6,0x2A12,0x08EE,0x008C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006C,0x006B,0x006B,0x006C,0x006B,0x006B,0x008C,0x006C,0x008C,0x006C,0x006B,0x008C,0x006B,0x008C,0x006C,0x006B,0x006B,0x008C,0x006C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x112F,0x2A33,0x3294,0x2A32,0x00ED,0x00AC,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008D,0x006C,0x006C,0x006C,0x006C,0x008C,0x008D,0x008D,0x008D,0x2A33,0x5BD9,0x116F,0x00AD,0x008D,0x008D,0x008D,0x006C,0x006C,0x006C,0x006C,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008D,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006D,0x00AD,0x092F,0x3AD5,0x1190,0x00AD,0x008D,0x008D,0x006C,0x008D,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008D,0x008D,0x006D,0x006D,0x006D,0x006D,0x008C,0x008C,0x006C,0x008C,0x008C,0x008D,0x008C,0x006C,0x008D,0x008D,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008D,0x006C,0x008C,0x006C,0x006C,0x008C,0x008D,0x00AD,0x00CE,0x42F6,0x21F2,0x00AD,0x008D,0x008D,0x006C,0x006C,0x006D,0x008D,0x008D,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008D,0x006C,0x006C,0x006C,0x008D,0x008C,0x008C,0x008D,0x008C,0x008D,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008D,0x006C,0x006C,0x004C,0x004C,0x004C,0x2212,0x19B1,0x008D,0x008D,0x008D,0x008D,0x006D,0x006C,0x006C,0x008C,0x008D,0x006C,0x006D,0x006D,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008D,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006D,0x006D,0x006D,0x008D,0x1190,0x3295,0x00CE,0x008D,0x008D,0x008D,0x008D,0x006C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008D,0x006D,0x006D,0x006D,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006D,0x008D,0x008D,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006D,0x006D,0x008D,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008D,0x00AD,0x00CE,0x19B1,0x42F6,0x0930,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x006D,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x084C,0x084C,0x082B,0x208D,0x9C1B,0x6253,0x080A,0x082A,0x084B,0x006C,0x004C,0x004C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008D,0x008C,0x008D,0x006C,0x006C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x00AC,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008D,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x00AD,0x1191,0x42D6,0x21F2,0x00AD,0x008D,0x006D,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006B,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x00AD,0x00CD,0x19D1,0x42F6,0x2A12,0x00CE,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x008C,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x004B,0x006C,0x006C,0x006C,0x006C,0x006C,0x004B,0x004B,0x006B,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x00AC,0x00ED,0x1190,0x3294,0x3AB5,0x114F,0x008C,0x008D,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B, + 0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006C,0x004B,0x006C,0x006C,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x004B,0x004B,0x004B,0x006C,0x006C,0x006B,0x006C,0x008C,0x008C,0x090E,0x3274,0x42F6,0x3233,0x090E,0x006C,0x008C,0x006C,0x006C,0x006C,0x006B,0x008C,0x006C,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006C,0x008C,0x008C,0x006C,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006C,0x006C,0x006B,0x006C,0x006B,0x008C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x004B,0x006C,0x006C,0x006C,0x006C,0x008C,0x00CD,0x19B1,0x3253,0x2A32,0x1990,0x00AC,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x004C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006B,0x006B,0x006B,0x004B,0x004B,0x008C,0x008C,0x006C,0x006C,0x006C,0x004C,0x004C,0x006C,0x006C,0x008C,0x008C,0x008C,0x00AD,0x3253,0x5377,0x092E,0x008C,0x008C,0x006C,0x006C,0x008C,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006B,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x00AD,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x00AD,0x090E,0x3294,0x2A33,0x00CE,0x00AD,0x008D,0x008C,0x006C,0x006C,0x006C,0x008D,0x008C,0x006C,0x006C,0x006C,0x008D,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x00AD,0x00CE,0x012F,0x4316,0x00EE,0x008D,0x008D,0x008D,0x006C,0x006C,0x006C,0x008D,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008D,0x008D,0x006C,0x004C,0x006C,0x006C,0x004C,0x2A12,0x19D1,0x008D,0x008D,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x008C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008D,0x00CE,0x3294,0x1191,0x00AD,0x008D,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x00AD,0x008C,0x006C,0x006C,0x008C,0x008D,0x008D,0x00AD,0x21F2,0x42F6,0x00EE,0x00AD,0x008D,0x006D,0x006D,0x006D,0x008D,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x004C,0x006C,0x004B,0x082B,0x080A,0x7316,0x28EE,0x080A,0x082B,0x086C,0x006C,0x006C,0x004C,0x006C,0x004C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008D,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006B,0x006B,0x006C,0x006C,0x006B,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x00AD,0x1170,0x3AD5,0x2213,0x00CD,0x008D,0x006C,0x006C,0x004C,0x004C,0x006C,0x006C,0x006C,0x008C,0x006B,0x006B,0x006C,0x006C,0x004B,0x006C,0x006C,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006B,0x006C,0x006C,0x006C,0x006C,0x004B,0x006C,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006B,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006B,0x006C,0x006C,0x008C,0x008B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x00AD,0x092F,0x3AB5,0x3AD5,0x1170,0x00AD,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x008B,0x008B,0x008B,0x006B,0x006B,0x006B,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006C,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x006B,0x006B,0x006B,0x008B,0x008B,0x006B,0x008C,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x004B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006C,0x006B,0x008C,0x006B,0x008C,0x00AC,0x00AC,0x00ED,0x21F1,0x4336,0x3294,0x092E,0x00AD,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B, + 0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006C,0x004B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006C,0x006C,0x008C,0x008C,0x008C,0x08ED,0x3253,0x4AF6,0x3253,0x114F,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006C,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x008B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x008C,0x006C,0x006B,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006C,0x004B,0x006B,0x006C,0x008C,0x114F,0x2A32,0x3A94,0x21F2,0x090E,0x008C,0x008C,0x008C,0x006C,0x006B,0x006B,0x008C,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006B,0x008C,0x006B,0x006B,0x006C,0x006C,0x004B,0x006C,0x004B,0x006C,0x006C,0x006C,0x006C,0x004C,0x006C,0x008C,0x008C,0x008C,0x00AC,0x3294,0x4316,0x010E,0x00AC,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006B,0x006B,0x008B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x00AD,0x00CD,0x2212,0x3AD5,0x00EE,0x00AD,0x008D,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x00AD,0x00CD,0x19F2,0x3274,0x008D,0x00AD,0x006D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x004C,0x004C,0x2212,0x19B1,0x008D,0x008D,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006B,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x00AD,0x21F2,0x3AD5,0x00CD,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008D,0x008D,0x00EE,0x3254,0x3295,0x00CE,0x008D,0x008D,0x008D,0x006D,0x006D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x004B,0x004B,0x004B,0x004B,0x000A,0x108C,0x082B,0x000A,0x084B,0x006B,0x004B,0x004C,0x004C,0x004B,0x006C,0x006C,0x006C,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x008C,0x006C,0x004C,0x004B,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008D,0x00AD,0x094F,0x3295,0x3274,0x00EE,0x008C,0x006C,0x006C,0x004C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006C,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006B,0x008C,0x008C,0x006B,0x006B,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x006B,0x006C,0x006B,0x006C,0x008C,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x008C,0x008C,0x008C,0x00AC,0x00CD,0x19B1,0x3AB5,0x3253,0x08EE,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006C,0x006B,0x006B,0x006B,0x006C,0x008C,0x00AC,0x00CC,0x010D,0x2212,0x4336,0x3273,0x090E,0x008C,0x008C,0x006C,0x006C,0x006C,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B, + 0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x008C,0x008C,0x08ED,0x2A12,0x42F5,0x3273,0x112E,0x006C,0x006B,0x008C,0x006C,0x008C,0x006C,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006C,0x006C,0x006B,0x006C,0x006B,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x008C,0x006B,0x006B,0x004B,0x006B,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006C,0x004B,0x006C,0x006C,0x00CD,0x21D1,0x3253,0x3273,0x19B0,0x00AC,0x006B,0x006B,0x006B,0x008C,0x008C,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x008C,0x006B,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006B,0x006B,0x006C,0x006B,0x006B,0x006C,0x006C,0x004B,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x00CD,0x3AD5,0x3294,0x00CD,0x00CD,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x004B,0x006B,0x006C,0x006C,0x006B,0x006B,0x006C,0x006B,0x006C,0x006C,0x008C,0x006C,0x006C,0x006B,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006B,0x008C,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008B,0x006B,0x008B,0x008C,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x004C,0x004C,0x006C,0x00AD,0x00CD,0x19B0,0x4B36,0x094F,0x00AD,0x008D,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006B,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x00AD,0x00AD,0x4316,0x1190,0x008D,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x004C,0x004C,0x002B,0x2A32,0x19D1,0x008D,0x008D,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006B,0x008C,0x008C,0x008C,0x006C,0x004C,0x006C,0x006C,0x006C,0x008C,0x008C,0x00AD,0x092F,0x4316,0x00EE,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x004B,0x006C,0x006B,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x00AD,0x010E,0x2A54,0x19D2,0x006D,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x004B,0x006C,0x006B,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x00AD,0x094F,0x3AB5,0x3AD5,0x092F,0x00AD,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x004B,0x004B,0x006B,0x006C,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x006B,0x006B,0x006B,0x008B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x090E,0x3294,0x3AD5,0x1990,0x00CD,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x008C,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x008B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x008C,0x008C,0x00AC,0x00AC,0x090E,0x3273,0x4B36,0x3253,0x090E,0x00AC,0x006C,0x006B,0x006C,0x006C,0x006B,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006C,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004B,0x004B, + 0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x008C,0x00AD,0x3253,0x5336,0x3253,0x114F,0x00AC,0x008C,0x006B,0x006B,0x004B,0x006B,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004B,0x004B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x008B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006C,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x008C,0x092E,0x2A32,0x3293,0x21F1,0x00CD,0x008C,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x008C,0x006B,0x006C,0x006B,0x006B,0x006B,0x008C,0x006B,0x006B,0x008C,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x004B,0x004B,0x006C,0x006C,0x006C,0x008C,0x008C,0x00AD,0x42F5,0x2A53,0x00ED,0x00AC,0x008C,0x008C,0x006B,0x006B,0x008C,0x006C,0x006C,0x006C,0x006C,0x006B,0x004B,0x006B,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x008C,0x006C,0x006B,0x008C,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x008C,0x006B,0x006C,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006C,0x006B,0x006B,0x008C,0x008C,0x006B,0x008C,0x008C,0x006B,0x008B,0x006B,0x006B,0x006C,0x006B,0x006B,0x008B,0x008B,0x008B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x004C,0x008C,0x00EE,0x092E,0x42F6,0x19D1,0x00CD,0x008C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x008C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008D,0x00AD,0x092F,0x4316,0x00EE,0x008C,0x006C,0x004C,0x004C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x00AC,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006B,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006B,0x006B,0x008C,0x008C,0x006B,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006B,0x006C,0x006B,0x006B,0x006B,0x008B,0x006B,0x006C,0x006C,0x004C,0x004B,0x004C,0x002B,0x2212,0x19B1,0x008D,0x008D,0x008C,0x008C,0x006C,0x008C,0x006C,0x008C,0x006C,0x008C,0x006C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006B,0x006C,0x008C,0x008C,0x006B,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x006C,0x006C,0x006B,0x006B,0x006C,0x008C,0x006C,0x004B,0x004C,0x006C,0x008C,0x006C,0x006C,0x008C,0x00CD,0x2A94,0x11B0,0x008C,0x006C,0x004C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x008C,0x008C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x004B,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008B,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x004B,0x004B,0x006B,0x006C,0x006C,0x006B,0x006B,0x006C,0x008C,0x00AD,0x0950,0x2A74,0x1170,0x00AD,0x008D,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006C,0x006C,0x006B,0x006B,0x006C,0x006C,0x006B,0x006C,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x00AD,0x090F,0x2A53,0x42F6,0x092F,0x008C,0x008C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x008C,0x00CD,0x19B0,0x3AB4,0x3253,0x092F,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x004B,0x006C,0x004B,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006C,0x008C,0x008C,0x00CC,0x092E,0x2A32,0x42D5,0x2A32,0x00ED,0x008C,0x008C,0x006C,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x006B,0x004B,0x006B,0x004A,0x004A, + 0x006B,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x008C,0x008C,0x00ED,0x2212,0x42F6,0x3253,0x090E,0x008C,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006A,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008C,0x00CD,0x19B0,0x3AD4,0x3253,0x114E,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006C,0x006C,0x004B,0x004C,0x006C,0x008C,0x092E,0x42F5,0x2212,0x00CD,0x00CD,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006C,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006C,0x006C,0x006B,0x004B,0x006B,0x004B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x004B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x008B,0x008B,0x008B,0x008C,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006C,0x004C,0x006C,0x006C,0x00AD,0x00CD,0x3AB4,0x2A32,0x00AC,0x006C,0x008C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x008C,0x006B,0x006B,0x006C,0x008C,0x006B,0x006C,0x006C,0x006C,0x006B,0x006C,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006B,0x006B,0x006C,0x006B,0x006B,0x006C,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x006B,0x006C,0x004C,0x004C,0x006C,0x008D,0x00CD,0x3294,0x19D1,0x00AD,0x006C,0x004B,0x004B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x008C,0x008B,0x006B,0x006B,0x006C,0x006B,0x006C,0x006B,0x006C,0x006B,0x006C,0x006C,0x006B,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006B,0x006B,0x006C,0x008C,0x006C,0x006B,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x004B,0x006B,0x008B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x2A12,0x19B1,0x008D,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x008C,0x006B,0x006B,0x006C,0x006C,0x006C,0x006B,0x008C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006B,0x008C,0x006C,0x006B,0x006C,0x006C,0x006B,0x006C,0x006B,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006C,0x004B,0x006B,0x006C,0x006C,0x004B,0x006C,0x008C,0x00CD,0x19F2,0x32D5,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x008C,0x006B,0x006C,0x006C,0x006C,0x004B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x004B,0x006C,0x006C,0x006B,0x006B,0x006C,0x006C,0x004B,0x004B,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x004B,0x006C,0x006B,0x006C,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x008C,0x008C,0x008C,0x006B,0x008B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x008C,0x00CD,0x1190,0x3AF6,0x010E,0x008D,0x006C,0x006C,0x006C,0x006C,0x004B,0x006C,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x006B,0x006B,0x008B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x004C,0x006C,0x008D,0x00CD,0x21F2,0x3AF5,0x116F,0x00AD,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x008B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006C,0x006C,0x006B,0x008C,0x090E,0x2A33,0x3AB5,0x21D1,0x00CD,0x008C,0x006C,0x006C,0x006C,0x006C,0x006B,0x004B,0x006B,0x006B,0x006C,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x008C,0x00AC,0x114E,0x3273,0x3AB4,0x21F1,0x010D,0x00AC,0x006C,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004A,0x006B,0x004A,0x006B,0x006B, + 0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x004A,0x006B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004B,0x004A,0x004B,0x006B,0x004A,0x004A,0x004A,0x004B,0x004B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006C,0x008C,0x08EE,0x2A12,0x42F6,0x3294,0x114F,0x00AD,0x006C,0x006B,0x006B,0x004B,0x004A,0x004B,0x004A,0x006B,0x004B,0x004A,0x006B,0x004B,0x006B,0x004A,0x004B,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006A,0x008B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x008C,0x008C,0x116F,0x3253,0x3AB4,0x19B0,0x00CC,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004A,0x006A,0x006A,0x006B,0x006A,0x004A,0x006A,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006C,0x004B,0x006C,0x006C,0x006C,0x008C,0x114F,0x4316,0x19B0,0x00AD,0x00AC,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x008B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006C,0x006C,0x00AD,0x2A32,0x3A94,0x00ED,0x008C,0x006C,0x006C,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x006B,0x006B,0x006B,0x006B,0x004C,0x004C,0x006D,0x006C,0x00EE,0x3AF5,0x092F,0x008C,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006C,0x006C,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x2A12,0x19B0,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006B,0x004B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x006B,0x006C,0x006C,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x006C,0x006C,0x00AD,0x012F,0x4316,0x00EE,0x008C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006C,0x006B,0x008C,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006C,0x004B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006C,0x006C,0x004B,0x006C,0x006B,0x006B,0x006C,0x006B,0x006C,0x008C,0x004B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x00AD,0x010E,0x2212,0x32B5,0x008D,0x008C,0x006C,0x006C,0x006C,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x006C,0x004B,0x004B,0x006C,0x008C,0x00CD,0x19B1,0x3AD5,0x19B1,0x008C,0x008C,0x006C,0x006C,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x008C,0x00AD,0x116F,0x2A53,0x3253,0x092F,0x006C,0x006C,0x006C,0x006C,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x00CC,0x094E,0x2A32,0x3293,0x21D1,0x00ED,0x008C,0x008C,0x006C,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x006B, + 0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004A,0x002A,0x002A,0x004A,0x004A,0x002A,0x002A,0x002A,0x004A,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x08ED,0x21F1,0x42D5,0x3A94,0x112F,0x008C,0x008C,0x008C,0x006B,0x004B,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x004A,0x006B,0x006B,0x006A,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004B,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006C,0x090E,0x21F1,0x3294,0x2A12,0x090E,0x008B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x006A,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x008B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006C,0x00AC,0x19B0,0x3AD5,0x1190,0x00AC,0x00AC,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x008B,0x008B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x004B,0x004B,0x004B,0x006C,0x008C,0x19B1,0x3AB5,0x08EE,0x008C,0x008C,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004C,0x004C,0x004C,0x004C,0x1190,0x2212,0x00CD,0x008C,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x006B,0x006B,0x006B,0x008C,0x006B,0x004A,0x004A,0x004B,0x004B,0x2A12,0x19D1,0x008C,0x006C,0x006C,0x006C,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006C,0x008C,0x00CD,0x2A33,0x2A53,0x008C,0x008C,0x006C,0x006C,0x006C,0x006C,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x008C,0x00CD,0x092F,0x2A53,0x2212,0x00CD,0x008D,0x006C,0x006C,0x006C,0x006C,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x008C,0x00AD,0x1990,0x3AD5,0x2212,0x00AD,0x006C,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004A,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006C,0x008C,0x090E,0x19B1,0x3274,0x2A12,0x00CD,0x006C,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006A,0x006A,0x006B,0x006A,0x006B,0x004B,0x004B,0x004A,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006A,0x006B,0x004A,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x008C,0x00CC,0x116F,0x2A52,0x3294,0x2A32,0x090E,0x008C,0x006C,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004A,0x004A, + 0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x002A,0x002A,0x004A,0x002A,0x004A,0x002A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x008C,0x3232,0x42F5,0x3273,0x116F,0x00AD,0x008C,0x006B,0x006B,0x006B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x008C,0x116F,0x3A94,0x3AB4,0x19B0,0x00AC,0x006B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004B,0x006B,0x006B,0x004B,0x006B,0x004A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x004A,0x004A,0x004B,0x004A,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006C,0x008C,0x2A32,0x3AD5,0x116F,0x00AC,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x006C,0x08EE,0x42D5,0x1170,0x008C,0x006C,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004C,0x004C,0x006C,0x006C,0x3294,0x1190,0x008C,0x006C,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004B,0x002A,0x2212,0x19B0,0x008C,0x006C,0x006C,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006C,0x008C,0x112F,0x4316,0x00EE,0x008C,0x006C,0x006C,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x008C,0x00AD,0x00AD,0x092F,0x3AD5,0x1190,0x008C,0x006C,0x006C,0x006C,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004A,0x006B,0x004B,0x004A,0x004B,0x006B,0x008B,0x006A,0x006A,0x004A,0x004A,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006C,0x00AD,0x1170,0x3AD5,0x2A12,0x008C,0x006C,0x006C,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006A,0x004A,0x006A,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004A,0x006B,0x006B,0x006B,0x004A,0x004B,0x004B,0x004B,0x004B,0x004A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x004A,0x006B,0x004A,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006A,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006C,0x00AC,0x114F,0x3273,0x3A94,0x114F,0x008C,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006A,0x006A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006B,0x006B,0x004A,0x006B,0x004A,0x004A,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x008C,0x00CD,0x116F,0x2A32,0x3294,0x2A12,0x090E,0x008C,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004A,0x004B, + 0x006B,0x006B,0x004B,0x004A,0x004A,0x006B,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x006A,0x006B,0x004A,0x004A,0x002A,0x002A,0x002A,0x004A,0x004B,0x004B,0x004B,0x008B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x00AC,0x21B0,0x3AB4,0x3A94,0x198F,0x008B,0x006B,0x006B,0x006B,0x004B,0x004A,0x004B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x004A,0x006B,0x004A,0x004A,0x004A,0x004B,0x006B,0x006B,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x008B,0x00CD,0x21F1,0x3AB4,0x3252,0x090E,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006A,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x00AC,0x2A32,0x3294,0x112E,0x008C,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x008B,0x008B,0x008B,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x004A,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006C,0x00CD,0x42F5,0x21D1,0x008C,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006A,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006C,0x006C,0x090F,0x3AD5,0x00ED,0x00AC,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004B,0x2212,0x1190,0x008C,0x006C,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x004B,0x004B,0x006B,0x004B,0x006C,0x008C,0x3294,0x19B0,0x006C,0x006C,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x008B,0x006B,0x004B,0x004B,0x006B,0x006B,0x008C,0x00CD,0x11B1,0x3AF6,0x010E,0x006C,0x006C,0x006C,0x004B,0x004B,0x006B,0x004B,0x004B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x006B,0x004A,0x006B,0x006B,0x004A,0x004A,0x004B,0x004B,0x004B,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x004B,0x006B,0x008B,0x008C,0x004B,0x004B,0x004B,0x006B,0x008C,0x092F,0x3A94,0x21F2,0x00AD,0x006B,0x006C,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x006A,0x006B,0x006A,0x006A,0x006B,0x006B,0x004A,0x006A,0x004A,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x004A,0x006B,0x004B,0x006B,0x006A,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006A,0x006B,0x004A,0x004A,0x004B,0x004B,0x004B,0x006B,0x006C,0x004B,0x006B,0x006B,0x006B,0x008C,0x00ED,0x21D1,0x3A73,0x21F1,0x00CD,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004A,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004A,0x006A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006B,0x006B,0x006A,0x006B,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006B,0x004A,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x00AC,0x00CC,0x118F,0x2A12,0x3294,0x2211,0x092E,0x00AC,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B, + 0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x006B,0x004A,0x006B,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x008B,0x004B,0x004B,0x004B,0x004A,0x004B,0x006B,0x006B,0x008B,0x00AC,0x21B0,0x3AB4,0x3AB4,0x19B0,0x00AC,0x008B,0x006B,0x006B,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004B,0x004B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006A,0x006A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004A,0x006B,0x004A,0x006A,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004B,0x004B,0x006B,0x004B,0x004B,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004B,0x004A,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004B,0x004B,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x008C,0x114E,0x3273,0x3AD4,0x114E,0x00AC,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006A,0x006B,0x004A,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006A,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006A,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x008C,0x00CD,0x3AD4,0x3A94,0x090E,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x008B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006B,0x006A,0x004A,0x006B,0x006A,0x004A,0x006A,0x004A,0x006A,0x006B,0x006A,0x006A,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x3273,0x3273,0x00AC,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x004B,0x004B,0x004B,0x006C,0x006C,0x006C,0x3254,0x2A33,0x00AD,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x002A,0x2212,0x1190,0x006C,0x008C,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006C,0x006C,0x1190,0x3294,0x006C,0x006C,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004B,0x004A,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006C,0x008C,0x00ED,0x2212,0x3274,0x00CD,0x006C,0x006B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004A,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004A,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x004B,0x004B,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004B,0x004B,0x004A,0x004A,0x004A,0x004B,0x006B,0x006B,0x004A,0x006B,0x006B,0x008B,0x008C,0x004B,0x002A,0x004B,0x004B,0x006B,0x008C,0x090E,0x3274,0x3254,0x00AC,0x008C,0x008C,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x004A,0x004B,0x004B,0x004B,0x004B,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x006B,0x008B,0x006A,0x006A,0x006B,0x004A,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x004B,0x006B,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x008C,0x00AC,0x114F,0x3253,0x3273,0x114E,0x008C,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x004A,0x006B,0x004A,0x006A,0x006A,0x006B,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x008B,0x00AC,0x00ED,0x116F,0x2232,0x3293,0x2211,0x08ED,0x008B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004A, + 0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004B,0x004B,0x006B,0x004A,0x004A,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004A,0x004A,0x006B,0x006B,0x004B,0x004A,0x004A,0x004B,0x006B,0x006B,0x00CD,0x1990,0x3273,0x3A93,0x21B0,0x00AC,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004B,0x006A,0x004A,0x004B,0x004A,0x004B,0x004B,0x004A,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006B,0x008B,0x006B,0x006A,0x006A,0x004A,0x006A,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004A,0x004B,0x004A,0x004B,0x004B,0x006B,0x008C,0x00ED,0x21F1,0x3293,0x2A11,0x00ED,0x008B,0x006B,0x006B,0x004B,0x004A,0x002A,0x004B,0x004B,0x004A,0x004A,0x004B,0x004B,0x004B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006A,0x006B,0x006B,0x006B,0x004A,0x006A,0x006B,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006B,0x004A,0x004B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x008B,0x00ED,0x42F5,0x3253,0x00CD,0x008B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x006B,0x006B,0x004A,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006C,0x008C,0x2A12,0x3A94,0x00ED,0x008C,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006A,0x004A,0x004B,0x006B,0x004B,0x006C,0x006C,0x00CE,0x42F6,0x114F,0x008C,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x006A,0x006B,0x006B,0x006A,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004B,0x004A,0x006A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x2A32,0x19B0,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004A,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x008C,0x00ED,0x42F5,0x08ED,0x008C,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x008B,0x006B,0x006B,0x006B,0x004B,0x004A,0x004A,0x004B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x008C,0x00CD,0x2A53,0x21F2,0x008C,0x006C,0x006C,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x008C,0x08EE,0x3274,0x3274,0x00ED,0x008C,0x008C,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004A,0x004B,0x004B,0x004A,0x004A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x004A,0x006B,0x004A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x006A,0x006A,0x006B,0x006B,0x004A,0x004B,0x004A,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x008C,0x08ED,0x21F1,0x3AB4,0x2A11,0x08ED,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006A,0x006B,0x004A,0x006A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004B,0x004B,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x008B,0x008C,0x00AC,0x010D,0x198F,0x2211,0x3253,0x19B0,0x00ED,0x008B,0x006B,0x006B,0x006B,0x004B,0x004A, + 0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004B,0x004A,0x004B,0x004A,0x002A,0x004B,0x004B,0x008C,0x00AC,0x1970,0x3253,0x3A94,0x29F1,0x08ED,0x008B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006A,0x004A,0x006A,0x006B,0x006B,0x004A,0x006B,0x004A,0x006A,0x006A,0x008B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x004A,0x004A,0x006B,0x006A,0x004A,0x006A,0x004A,0x006B,0x006B,0x004A,0x004B,0x004B,0x004B,0x004A,0x004B,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x008C,0x116F,0x3293,0x3A94,0x19B0,0x00AC,0x008B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006A,0x006A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x004A,0x006A,0x004A,0x006B,0x004A,0x006B,0x006B,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006A,0x004A,0x004A,0x006B,0x004B,0x006B,0x004B,0x004B,0x004A,0x006B,0x004B,0x004B,0x004B,0x004A,0x006B,0x006B,0x090D,0x42F5,0x2A32,0x00CC,0x006B,0x004B,0x004B,0x004A,0x004B,0x004B,0x006B,0x004B,0x004B,0x004A,0x006A,0x006A,0x004A,0x006B,0x008B,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004B,0x006B,0x006B,0x004A,0x004B,0x006B,0x006B,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x114F,0x4B15,0x112E,0x008C,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x004B,0x002B,0x004B,0x006B,0x006C,0x19D1,0x3AD5,0x008C,0x006C,0x004B,0x004B,0x006B,0x004A,0x006B,0x004A,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x002A,0x21F1,0x19B0,0x006C,0x006C,0x006B,0x006B,0x006B,0x006B,0x006A,0x004A,0x004B,0x006B,0x004A,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004A,0x006B,0x004A,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004B,0x004B,0x006A,0x004A,0x004A,0x004B,0x004A,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x006B,0x008C,0x2A32,0x3253,0x008C,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x004A,0x004A,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x008C,0x094F,0x3294,0x19B0,0x00AC,0x006C,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x004A,0x004B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006A,0x006A,0x006A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004A,0x004A,0x006B,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x006A,0x004A,0x004A,0x004A,0x004B,0x004B,0x002A,0x004B,0x004B,0x006B,0x006C,0x00CD,0x2A32,0x3AB4,0x092F,0x008C,0x008C,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x008B,0x008B,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x004A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006C,0x00AC,0x114E,0x3253,0x3273,0x19B0,0x00AC,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006A,0x006B,0x004A,0x006B,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x004A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006B,0x004A,0x006B,0x004A,0x006B,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x00AC,0x00ED,0x118F,0x2211,0x2A52,0x21D0,0x00CC,0x008B,0x006B,0x004B,0x006B, + 0x006B,0x006A,0x006B,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006B,0x004B,0x004B,0x006B,0x004B,0x006B,0x004B,0x004B,0x002A,0x004B,0x004B,0x004B,0x004B,0x002A,0x004A,0x004B,0x006B,0x006B,0x00AC,0x1170,0x3273,0x3253,0x21D1,0x090E,0x008C,0x006B,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x002A,0x002A,0x004B,0x004B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x006A,0x006A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006B,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x008C,0x00CD,0x21D1,0x3273,0x29F1,0x08ED,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x002A,0x002A,0x002A,0x002A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006A,0x004A,0x006A,0x006B,0x006A,0x006A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006B,0x006A,0x006A,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x008B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004B,0x006B,0x008B,0x008B,0x116E,0x42D4,0x21D0,0x008B,0x006B,0x006B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x008B,0x008B,0x006B,0x006A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x004A,0x006A,0x004B,0x006B,0x006A,0x004A,0x006A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x008B,0x006A,0x006A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x006B,0x006B,0x008B,0x006B,0x006B,0x006A,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x08ED,0x42D4,0x196F,0x00AC,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x004A,0x006A,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x008B,0x006B,0x004A,0x004A,0x004B,0x004B,0x006B,0x008C,0x3AD5,0x19D1,0x008C,0x006B,0x006B,0x006B,0x008B,0x006B,0x006A,0x004A,0x006A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006B,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x006A,0x006B,0x006A,0x006B,0x004A,0x004A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x002A,0x002A,0x2A11,0x118F,0x006C,0x006C,0x006B,0x006B,0x004B,0x006B,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006B,0x006B,0x006B,0x006A,0x006A,0x006B,0x006A,0x006A,0x004A,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004A,0x006A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x008C,0x090E,0x42B4,0x00AC,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006A,0x004A,0x006A,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x006B,0x006A,0x004A,0x006B,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006A,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x008C,0x19B0,0x3AF5,0x092F,0x006C,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004A,0x006A,0x006B,0x006B,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x004A,0x006B,0x006A,0x004A,0x004A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006A,0x004A,0x006B,0x006A,0x006A,0x006B,0x006B,0x004A,0x006B,0x004A,0x004A,0x006B,0x006B,0x004A,0x006B,0x006A,0x006B,0x004A,0x006A,0x006A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006C,0x00AC,0x2A12,0x3AD5,0x1190,0x00AC,0x008C,0x008B,0x006B,0x006B,0x004B,0x004B,0x004A,0x004A,0x006B,0x006A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006B,0x006A,0x006A,0x006B,0x006A,0x006A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004A,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x008C,0x00AC,0x21D1,0x3A94,0x2A32,0x092E,0x008B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004A,0x004B,0x006B,0x004A,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x002A,0x004A,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x008C,0x08ED,0x19D0,0x3273,0x2A73,0x116F,0x00CC,0x008C,0x006B, + 0x006A,0x004A,0x006A,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004B,0x004A,0x004B,0x004A,0x004B,0x006B,0x00CD,0x116F,0x2A53,0x3AD5,0x2212,0x090E,0x00AC,0x008C,0x006B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x002A,0x004A,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004B,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x00CD,0x196F,0x2A12,0x3273,0x116F,0x00AC,0x006B,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x008B,0x006B,0x006B,0x006B,0x006A,0x006A,0x004A,0x004A,0x006B,0x006A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x008C,0x21B0,0x4B35,0x21D0,0x008B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x008B,0x006A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x004A,0x006B,0x006B,0x004A,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x00AC,0x42D4,0x29F1,0x00AC,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004A,0x006B,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006A,0x006B,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x008B,0x004A,0x006A,0x006B,0x006A,0x004A,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x006B,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006B,0x004A,0x006A,0x006B,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006B,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004B,0x002B,0x006B,0x112E,0x4B36,0x00ED,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x006A,0x006B,0x006B,0x006A,0x004A,0x006A,0x006A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006A,0x006B,0x004A,0x006A,0x006B,0x006B,0x004A,0x006A,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x002A,0x002A,0x2211,0x118F,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006B,0x004A,0x006A,0x006B,0x006B,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006B,0x006B,0x006B,0x004B,0x004A,0x006B,0x006A,0x006A,0x006A,0x006B,0x006A,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x008C,0x3253,0x114E,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004A,0x006B,0x004B,0x004A,0x006B,0x006B,0x00AC,0x2212,0x3AB4,0x00CD,0x008C,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x006B,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x002B,0x004B,0x006B,0x008C,0x00CC,0x1990,0x3AB4,0x2211,0x00CC,0x008B,0x006B,0x006B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x002A,0x004A,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x008C,0x090E,0x29F1,0x3A93,0x21B0,0x00AC,0x008B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x002A,0x004A,0x004A,0x006A,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x004B,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x00AC,0x092E,0x19D0,0x32B4,0x2A32,0x094E,0x00CC, + 0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004A,0x002A,0x002A,0x004B,0x008C,0x114F,0x2A32,0x3274,0x21F2,0x092E,0x00AC,0x008C,0x006C,0x004B,0x004B,0x004B,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x006B,0x006B,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x092E,0x21D1,0x2A12,0x29F1,0x08ED,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004A,0x004B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006B,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006B,0x004A,0x008B,0x006A,0x004A,0x006B,0x006B,0x004B,0x006B,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x008C,0x21D1,0x4B15,0x116F,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x008B,0x006B,0x006A,0x006B,0x008B,0x006B,0x004A,0x004A,0x004B,0x004B,0x006B,0x008B,0x2A32,0x3252,0x00CD,0x006C,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006B,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006B,0x006A,0x004A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x002A,0x002A,0x004B,0x008C,0x3273,0x2A32,0x00AC,0x006B,0x004B,0x006B,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006A,0x006B,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x004A,0x004A,0x006A,0x006A,0x006A,0x006B,0x004A,0x006B,0x004A,0x006B,0x004A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x0029,0x004A,0x002A,0x004A,0x2A11,0x1990,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006B,0x006A,0x006B,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006B,0x006A,0x006A,0x006B,0x006A,0x006B,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006B,0x006B,0x006A,0x004A,0x004B,0x006B,0x006B,0x004B,0x004B,0x008C,0x196F,0x3A73,0x006B,0x004B,0x004A,0x002A,0x004B,0x004A,0x006B,0x006A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006B,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006A,0x004A,0x006B,0x006A,0x006A,0x006B,0x008B,0x00ED,0x3273,0x2A32,0x00AC,0x006C,0x004B,0x004B,0x004B,0x004B,0x004A,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x008B,0x004A,0x006B,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x008C,0x116F,0x32B4,0x3273,0x00ED,0x008C,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x002A,0x002A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x008C,0x114E,0x3252,0x2A52,0x092E,0x00AC,0x006B,0x006B,0x004B,0x004B,0x004A,0x004B,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x008B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x008C,0x00CC,0x092E,0x2232,0x3294,0x2211, + 0x006B,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x002A,0x004B,0x004B,0x006B,0x006B,0x004A,0x002A,0x006B,0x112E,0x2A12,0x3273,0x2A32,0x114F,0x00CD,0x008C,0x006B,0x006B,0x004B,0x004B,0x004A,0x004B,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x006B,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x00AC,0x1990,0x2A32,0x2A52,0x116F,0x008C,0x006B,0x006B,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x004A,0x006B,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004B,0x004B,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004B,0x004A,0x006B,0x008C,0x2A11,0x42F5,0x090D,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x006A,0x006B,0x004A,0x006A,0x006A,0x006B,0x006A,0x004A,0x006A,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006B,0x006A,0x006B,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004B,0x004B,0x004B,0x004B,0x006B,0x008B,0x116F,0x3AD4,0x090E,0x008C,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006B,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x004A,0x006A,0x004A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x002A,0x004B,0x004B,0x00AC,0x42F5,0x114F,0x008C,0x006B,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006B,0x004A,0x006B,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006B,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006A,0x006B,0x006A,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x002A,0x002A,0x21F1,0x118F,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006B,0x006A,0x006B,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006A,0x004A,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x00CD,0x42B4,0x110E,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x008B,0x090D,0x3293,0x21F1,0x008C,0x006C,0x004B,0x004B,0x004B,0x004A,0x006B,0x006B,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006B,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004B,0x004B,0x004B,0x006B,0x004B,0x004A,0x004A,0x004A,0x006B,0x008C,0x010E,0x3273,0x42F5,0x090E,0x006B,0x006B,0x004B,0x004B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x008B,0x00AC,0x090D,0x19D0,0x3273,0x21D0,0x00CC,0x008B,0x006B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004B,0x004B,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004B,0x006B,0x006B,0x004B,0x004A,0x004A,0x006B,0x004A,0x004B,0x004B,0x006B,0x006B,0x006B,0x008C,0x00CC,0x096F,0x2A32, + 0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x002A,0x004B,0x004B,0x004B,0x004A,0x004B,0x004B,0x004A,0x004A,0x006B,0x006B,0x008B,0x092E,0x2A32,0x3252,0x2A12,0x1990,0x00CC,0x008C,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x008B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x008B,0x006B,0x004A,0x004A,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x008C,0x090E,0x21D0,0x2A12,0x21D1,0x00CD,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x002A,0x004A,0x004A,0x004B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004B,0x006B,0x006B,0x00CC,0x3252,0x3253,0x00ED,0x008B,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006B,0x004A,0x004A,0x002A,0x002A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x008B,0x006A,0x006A,0x006B,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004B,0x002A,0x004B,0x006B,0x008C,0x090D,0x42F5,0x198F,0x008C,0x006B,0x004B,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x006B,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x114F,0x3273,0x00AC,0x006B,0x006B,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006B,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006A,0x006B,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x008B,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x008A,0x004A,0x004A,0x004A,0x004A,0x004A,0x2211,0x19B0,0x008B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x3232,0x3252,0x006B,0x004B,0x004B,0x004A,0x004A,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x004A,0x006B,0x006A,0x006B,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004B,0x006B,0x114F,0x3AB5,0x1990,0x00AC,0x006C,0x004B,0x004B,0x004A,0x006B,0x006B,0x006B,0x006A,0x006A,0x006B,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x008B,0x00AC,0x2A32,0x42D5,0x114F,0x008C,0x006B,0x004B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x008B,0x00AC,0x00AC,0x094E,0x2A12,0x3273,0x092E,0x00AC,0x006B,0x006B,0x004A,0x004B,0x004B,0x004A,0x004B,0x004A,0x004A,0x006A,0x006B,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x008B,0x008C,0x00AC, + 0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x002A,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004B,0x006B,0x006B,0x112E,0x2A11,0x3AB3,0x3252,0x198F,0x00CD,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006B,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x008B,0x006A,0x006A,0x004A,0x006B,0x006A,0x004A,0x004A,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x08CD,0x1990,0x2A11,0x2A32,0x114F,0x008C,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x002A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x004A,0x006B,0x004B,0x006B,0x006B,0x00CC,0x3A93,0x3272,0x00ED,0x008B,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006A,0x006A,0x008B,0x004A,0x006A,0x004A,0x006B,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x00AC,0x3AB4,0x2A52,0x00AC,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x006B,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x006B,0x3252,0x19D0,0x008B,0x006B,0x004B,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x002A,0x002A,0x21F1,0x198F,0x006B,0x006B,0x006B,0x006B,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x114E,0x5336,0x00AC,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004B,0x004A,0x006A,0x004A,0x006A,0x006A,0x006B,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x004A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x004B,0x004B,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x00AC,0x19B0,0x3253,0x092F,0x008C,0x006B,0x004B,0x004B,0x004B,0x004A,0x006A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004B,0x004B,0x004A,0x006B,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004B,0x004B,0x006B,0x00CC,0x19B0,0x42D5,0x1990,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004B,0x004B,0x006B,0x006B,0x006B,0x008C,0x008C,0x00ED,0x19B0,0x3293,0x21F1,0x08ED,0x008B,0x006B,0x004A,0x004B,0x004B,0x004B,0x004A,0x004B,0x006B,0x004A,0x006B,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x002A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x004B,0x004B,0x004B,0x004A,0x004B,0x006B,0x006B,0x006B,0x006B, + 0x004A,0x004A,0x006A,0x004A,0x004A,0x004B,0x004B,0x004A,0x004B,0x004A,0x004B,0x004B,0x004B,0x004B,0x002A,0x004A,0x004A,0x004A,0x006B,0x008B,0x090D,0x2A31,0x3293,0x3252,0x198F,0x08ED,0x008B,0x004B,0x004B,0x004B,0x004B,0x004B,0x002A,0x004B,0x004B,0x004B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x002A,0x004B,0x004B,0x006B,0x006B,0x110E,0x21D1,0x29F1,0x2A11,0x08ED,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006B,0x006B,0x112E,0x42F5,0x2A32,0x00CC,0x00CC,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x004A,0x006A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x008B,0x006A,0x006A,0x004A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006B,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x006B,0x008C,0x3273,0x3273,0x00ED,0x008B,0x004B,0x004B,0x004A,0x006B,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x004A,0x004A,0x006A,0x006B,0x006A,0x004A,0x004A,0x006B,0x006B,0x004B,0x08CD,0x3AB4,0x090D,0x008B,0x004B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006A,0x006A,0x004A,0x004A,0x006A,0x008A,0x004A,0x004A,0x0049,0x004A,0x002A,0x002A,0x21F1,0x19B0,0x006B,0x006B,0x006B,0x004A,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x008B,0x006B,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x004A,0x004A,0x006B,0x008B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006B,0x004A,0x004B,0x006B,0x006B,0x006B,0x004B,0x006B,0x008B,0x4B35,0x198F,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x006A,0x006A,0x004A,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004B,0x004B,0x006B,0x008C,0x19D1,0x2A53,0x090E,0x008C,0x006B,0x004B,0x004B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x008C,0x114F,0x42D5,0x21F1,0x008C,0x006B,0x006B,0x004B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x008B,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004B,0x004B,0x004B,0x006B,0x008B,0x008B,0x00AC,0x094E,0x3272,0x3A93,0x198F,0x00AC,0x006B,0x002A,0x004B,0x004B,0x004B,0x006B,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x006B,0x006B,0x006B,0x004B,0x008B,0x006B,0x004B,0x004B, + 0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x006B,0x00CC,0x21F0,0x3AB3,0x3293,0x19D0,0x090D,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x002A,0x002A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x00AC,0x21B0,0x3232,0x3232,0x196F,0x008C,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x006B,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x1990,0x42F5,0x21F1,0x00AC,0x00AC,0x006B,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006B,0x006B,0x006A,0x004A,0x006B,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x1990,0x3AB4,0x116F,0x008B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004B,0x29F1,0x3253,0x00AC,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x0049,0x004A,0x002A,0x002A,0x21D0,0x19B0,0x006B,0x006B,0x004A,0x006B,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x002A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x19D0,0x42F4,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x004B,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x002A,0x004B,0x004B,0x006C,0x00CD,0x2212,0x3274,0x00CD,0x006C,0x004B,0x004B,0x004B,0x006B,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004B,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006B,0x006A,0x004A,0x004A,0x006A,0x006B,0x002A,0x004A,0x004B,0x006B,0x00AC,0x112E,0x42D5,0x2A12,0x008B,0x006B,0x004B,0x006B,0x006B,0x004B,0x006B,0x004A,0x006B,0x004A,0x006A,0x006B,0x004A,0x004A,0x006B,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004B,0x004B,0x004B,0x006B,0x006B,0x008B,0x00AB,0x00EC,0x118F,0x3272,0x3232,0x08ED,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004B,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B, + 0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x002A,0x002A,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004B,0x006B,0x00CC,0x118F,0x3272,0x2A52,0x19AF,0x090D,0x008B,0x006A,0x006A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004A,0x006A,0x006B,0x004B,0x004B,0x006B,0x090E,0x29F1,0x3252,0x21D0,0x090D,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x002A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004B,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x008A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x198F,0x3A93,0x1990,0x008B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006B,0x006A,0x004A,0x004A,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x114F,0x3A94,0x198F,0x008B,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x002A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004B,0x006B,0x00AC,0x42D5,0x1990,0x006C,0x004B,0x004A,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x19B0,0x19B0,0x006B,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006B,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x008B,0x08ED,0x5BB8,0x008B,0x006B,0x006B,0x006B,0x002B,0x002B,0x004B,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004A,0x004B,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004B,0x006B,0x004B,0x006C,0x090E,0x3AD5,0x2232,0x008C,0x006B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x006B,0x008C,0x090E,0x42D5,0x2A32,0x00AC,0x008C,0x006B,0x006B,0x004A,0x006B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x092E,0x2A11,0x3A73,0x21B0,0x00AC,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x006B,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B, + 0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x002B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x008B,0x008C,0x19B0,0x3AB4,0x3272,0x11AF,0x094E,0x00CC,0x008B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004B,0x004B,0x004A,0x006B,0x006B,0x006B,0x006B,0x008B,0x21B0,0x3273,0x3232,0x114E,0x00AC,0x006B,0x004B,0x004A,0x004A,0x004B,0x004B,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x008A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x004B,0x006B,0x006B,0x006B,0x008C,0x29F1,0x42D5,0x114E,0x006B,0x006B,0x004A,0x004B,0x004A,0x004B,0x006B,0x004A,0x006B,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006B,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006A,0x006A,0x004A,0x004B,0x004B,0x006B,0x004B,0x006B,0x08ED,0x42B4,0x21D0,0x00AC,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006A,0x004B,0x004B,0x004B,0x092E,0x42F5,0x00AD,0x006C,0x004B,0x004A,0x004B,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x002A,0x004A,0x004A,0x198F,0x1990,0x006B,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004A,0x006A,0x004A,0x006B,0x004A,0x004A,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x00AC,0x42D4,0x2A11,0x006B,0x006B,0x006B,0x004B,0x004B,0x002A,0x004A,0x004B,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x002A,0x004A,0x004A,0x004B,0x004B,0x004B,0x006C,0x008C,0x11B0,0x4316,0x116F,0x008B,0x006B,0x004B,0x004B,0x004A,0x004B,0x004A,0x004A,0x006B,0x006B,0x006A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004A,0x002A,0x004A,0x004B,0x006B,0x00AC,0x090E,0x3A94,0x42D5,0x00CD,0x008C,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004A,0x006B,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x008B,0x008B,0x00CC,0x198F,0x3253,0x3252,0x114E,0x006B,0x006B,0x004B,0x006B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B, + 0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x008C,0x094E,0x3AB4,0x3293,0x19D0,0x090D,0x08ED,0x008B,0x006B,0x006A,0x004A,0x002A,0x004A,0x004A,0x008B,0x004B,0x004B,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004A,0x006B,0x004B,0x004A,0x004A,0x004B,0x006B,0x006B,0x006B,0x006B,0x090D,0x3273,0x3252,0x21F1,0x08CC,0x006B,0x006B,0x004B,0x004A,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x00AC,0x3AB4,0x42F5,0x00ED,0x006B,0x006B,0x004B,0x004B,0x004A,0x004B,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006A,0x004A,0x006B,0x004A,0x006B,0x006A,0x004A,0x004B,0x004A,0x006B,0x004A,0x004A,0x006B,0x006A,0x006B,0x004A,0x006B,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x008B,0x006A,0x006A,0x004A,0x008B,0x008B,0x004A,0x004A,0x008B,0x006B,0x004B,0x004B,0x004A,0x004B,0x006B,0x008C,0x2A32,0x2A32,0x08ED,0x006B,0x004B,0x004B,0x004A,0x004B,0x004B,0x004B,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x006B,0x004A,0x004A,0x006B,0x004A,0x006B,0x004A,0x004A,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x004A,0x004B,0x004B,0x004B,0x2A32,0x19D1,0x00AC,0x006B,0x004B,0x004A,0x004B,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004B,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x006B,0x006A,0x006B,0x004A,0x006B,0x006A,0x006A,0x006A,0x006B,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x0029,0x002A,0x004A,0x004A,0x19B0,0x21F1,0x006B,0x006B,0x004B,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x004A,0x004B,0x004B,0x004B,0x006B,0x006B,0x008C,0x112E,0x4B36,0x008B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006A,0x006A,0x006B,0x004A,0x006B,0x006B,0x006A,0x006B,0x006B,0x008B,0x006B,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004B,0x002A,0x004B,0x004B,0x006C,0x00AD,0x2212,0x32B4,0x010E,0x006B,0x006B,0x004B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x004B,0x004A,0x004A,0x006A,0x006B,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x002A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x008C,0x08ED,0x3253,0x42D5,0x00ED,0x008B,0x008B,0x008B,0x006B,0x006B,0x006B,0x004B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008B,0x008B,0x008B,0x110E,0x29F1,0x3A73,0x19B0,0x00AC,0x006B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004B, + 0x006B,0x004B,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x00ED,0x3273,0x3AB4,0x19D0,0x010D,0x00AB,0x00AB,0x008B,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x004A,0x006B,0x004A,0x006A,0x006B,0x006B,0x004A,0x006B,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x008B,0x21D0,0x4B15,0x2211,0x092D,0x008B,0x006B,0x006B,0x004B,0x004B,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004B,0x006B,0x006A,0x006A,0x006A,0x004A,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x006B,0x006B,0x008C,0x00AC,0x4B36,0x3A73,0x00CC,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x004A,0x006B,0x004A,0x004A,0x004A,0x006A,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x004A,0x006B,0x006B,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x008C,0x19B0,0x3A94,0x114E,0x008C,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006B,0x006A,0x006A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x006A,0x006B,0x006A,0x004A,0x006B,0x006B,0x004A,0x006B,0x006B,0x004A,0x004A,0x006B,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x006B,0x008C,0x42F5,0x092E,0x008C,0x006B,0x004B,0x004B,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x006B,0x006A,0x006B,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x004A,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x198F,0x21D0,0x006B,0x006B,0x004B,0x006B,0x004A,0x006B,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006B,0x006A,0x006A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x004A,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x42B4,0x090E,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x008B,0x004A,0x002A,0x002A,0x002A,0x004B,0x006C,0x00CD,0x2A53,0x2A32,0x00AC,0x006B,0x004B,0x004B,0x004B,0x004B,0x004A,0x006B,0x004A,0x006B,0x002A,0x004B,0x004A,0x006B,0x006B,0x006A,0x008B,0x006A,0x004A,0x006A,0x006A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004B,0x006B,0x00AC,0x21F1,0x42D5,0x090D,0x00AC,0x00AC,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x008C,0x00CD,0x116F,0x2A12,0x2A12,0x092E,0x008B,0x008B,0x008B,0x006B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004B,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A, + 0x002A,0x002A,0x004B,0x004B,0x006B,0x006B,0x004B,0x006C,0x008C,0x00ED,0x2A53,0x4316,0x2211,0x08ED,0x006B,0x008B,0x008B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004B,0x006B,0x006B,0x008B,0x006B,0x006B,0x090E,0x3252,0x3273,0x114E,0x008B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x004B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x006B,0x004A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x004A,0x006A,0x006B,0x006A,0x006A,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006A,0x006A,0x008A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004B,0x004B,0x006B,0x006B,0x006B,0x08ED,0x42D4,0x21F1,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006A,0x006B,0x006A,0x008B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x008B,0x006A,0x004A,0x006A,0x004A,0x006A,0x002A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x006C,0x112E,0x3273,0x092E,0x008C,0x004B,0x004B,0x006B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x004A,0x006B,0x006B,0x004A,0x006B,0x004A,0x006B,0x006A,0x006B,0x004A,0x006B,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006B,0x004B,0x006B,0x004B,0x004B,0x006B,0x006B,0x2A11,0x3273,0x00CD,0x006B,0x004B,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004A,0x004A,0x006B,0x004B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006B,0x004A,0x006A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x002A,0x004A,0x198F,0x21D1,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x006B,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004A,0x006B,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004B,0x004B,0x004B,0x004B,0x006B,0x21D1,0x3253,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004A,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x004A,0x006B,0x006A,0x004A,0x004A,0x006B,0x006A,0x004A,0x006B,0x006B,0x006A,0x006A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x008B,0x006A,0x006B,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x008C,0x092E,0x2A53,0x19B0,0x00AC,0x006B,0x004B,0x004B,0x004B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x004A,0x006A,0x006A,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x004A,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x008B,0x004A,0x004A,0x004A,0x004A,0x006B,0x008B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x008C,0x21D1,0x4B36,0x118F,0x00AC,0x008B,0x006B,0x006B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x004A,0x006B,0x004A,0x006B,0x006A,0x006B,0x006B,0x006A,0x006B,0x006A,0x004A,0x006A,0x006B,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006C,0x006C,0x090E,0x19D1,0x3293,0x21F1,0x00EC,0x00AC,0x008B,0x008B,0x006B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004B,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x006B,0x004B,0x004A,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A, + 0x002A,0x004B,0x004B,0x006B,0x006B,0x008C,0x004C,0x08EE,0x3A94,0x42D5,0x21F2,0x090E,0x00CC,0x008B,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006B,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x006B,0x008B,0x008C,0x006B,0x1990,0x5357,0x21F1,0x00CC,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x004B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006A,0x006B,0x008B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006B,0x004B,0x004B,0x006B,0x006B,0x1990,0x4B15,0x198F,0x008B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006A,0x006A,0x004A,0x006A,0x006B,0x004A,0x006B,0x004B,0x004B,0x006B,0x004B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x006B,0x004B,0x004B,0x004B,0x006B,0x08EE,0x3273,0x21F1,0x00AC,0x006B,0x004B,0x004B,0x004B,0x006B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x004A,0x004A,0x006B,0x004B,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x004A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004B,0x004B,0x004B,0x006B,0x008C,0x4B15,0x1170,0x00AC,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x004A,0x004A,0x006B,0x006B,0x004A,0x006B,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x116F,0x21F1,0x006B,0x006B,0x004B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x004A,0x004B,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004A,0x004A,0x004B,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x006B,0x006B,0x08ED,0x42F5,0x008C,0x004B,0x004B,0x004B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004A,0x006B,0x004A,0x006B,0x004A,0x006B,0x004A,0x006B,0x004B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x004A,0x006B,0x004A,0x006B,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004B,0x004B,0x004B,0x00AC,0x116F,0x2A53,0x116F,0x008C,0x006B,0x004B,0x004B,0x006B,0x004A,0x004B,0x004B,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x006B,0x006B,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x008B,0x004A,0x004A,0x006A,0x004A,0x006A,0x006B,0x006B,0x004A,0x004A,0x004A,0x002A,0x004A,0x004A,0x006B,0x008C,0x118F,0x4B36,0x19B0,0x00AC,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x006B,0x004A,0x006B,0x006B,0x004A,0x006A,0x006A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006B,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x008C,0x00ED,0x116F,0x2A52,0x2A52,0x012E,0x00CC,0x00AC,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004B,0x004A,0x004B,0x004B,0x004B,0x004B,0x004A,0x004B,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A, + 0x002A,0x004B,0x002B,0x004B,0x006C,0x08CE,0x3A95,0x4AF6,0x1991,0x00CE,0x008C,0x006B,0x008B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x008B,0x090E,0x42D5,0x3A94,0x00AD,0x008C,0x008C,0x004B,0x004A,0x002A,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x008A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006B,0x006A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006A,0x006B,0x006B,0x006A,0x008A,0x008A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x004A,0x004B,0x006B,0x008C,0x21D1,0x4AF6,0x112F,0x008C,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004B,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006B,0x004A,0x006A,0x004A,0x006B,0x004A,0x006A,0x004A,0x006B,0x004A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004B,0x004B,0x004B,0x008C,0x3233,0x2A32,0x090D,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x002A,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006B,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006A,0x006B,0x006B,0x004A,0x004B,0x004B,0x004B,0x114F,0x42D5,0x00CD,0x008C,0x004B,0x004B,0x004A,0x004A,0x006A,0x006B,0x002A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006A,0x006A,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x116F,0x21F1,0x006B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x006B,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004B,0x004A,0x004B,0x004B,0x006B,0x006B,0x006B,0x008C,0x42B5,0x194F,0x004B,0x004B,0x004B,0x006B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x004B,0x004A,0x006B,0x006B,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x006A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x008C,0x00CD,0x19D1,0x3273,0x090E,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x004A,0x006B,0x006B,0x006A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006A,0x006A,0x004A,0x006A,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004B,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x006B,0x008C,0x094E,0x3AB4,0x19D0,0x00AC,0x006B,0x006B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x004B,0x004B,0x002A,0x004B,0x004B,0x004B,0x006C,0x00AC,0x010D,0x19D0,0x32B4,0x19D0,0x00ED,0x008B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x006B,0x006B,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004B,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A, + 0x004B,0x004B,0x004B,0x006C,0x42B4,0x42D5,0x1170,0x00AE,0x00AE,0x008D,0x006C,0x008C,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x006A,0x004A,0x006B,0x004A,0x004A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006B,0x008B,0x00AC,0x21D0,0x3A94,0x2A32,0x008C,0x00AD,0x008C,0x004B,0x004B,0x002A,0x002A,0x002A,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006B,0x004B,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006B,0x004A,0x006B,0x006B,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x004A,0x004A,0x004A,0x006B,0x006B,0x29F1,0x3A94,0x00ED,0x00AC,0x008C,0x006B,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006B,0x006B,0x006A,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006B,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x006B,0x006B,0x004A,0x006B,0x006B,0x006B,0x004B,0x004B,0x004B,0x006B,0x004A,0x006B,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x006B,0x006B,0x004A,0x004A,0x004B,0x004B,0x112F,0x2A33,0x114F,0x00AC,0x006B,0x004B,0x004B,0x004B,0x004B,0x004A,0x002A,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x004A,0x006B,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006B,0x006B,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004B,0x004B,0x3AD5,0x21F1,0x00AC,0x006C,0x004B,0x004B,0x002A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x002A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x006A,0x006B,0x004A,0x006B,0x006A,0x006B,0x006B,0x006B,0x006B,0x006B,0x006B,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006B,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x002A,0x116F,0x21B1,0x006B,0x006B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004B,0x004A,0x004B,0x006B,0x004A,0x004A,0x006B,0x004B,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x006B,0x006B,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x006B,0x004B,0x004B,0x006B,0x006B,0x008C,0x006B,0x2190,0x3A33,0x006C,0x006C,0x006B,0x004B,0x004B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004B,0x006B,0x00AC,0x010E,0x2232,0x21F1,0x08CD,0x006C,0x004B,0x004B,0x004B,0x004B,0x006B,0x006B,0x006B,0x004A,0x004A,0x006A,0x004A,0x004A,0x006A,0x006A,0x004A,0x006A,0x006B,0x006B,0x004A,0x006B,0x004A,0x006B,0x006B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004B,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006B,0x004A,0x006B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006B,0x006B,0x004B,0x004B,0x006B,0x00AC,0x00ED,0x2211,0x2A32,0x00CC,0x006B,0x006B,0x004B,0x004B,0x004B,0x004A,0x004A,0x006B,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006B,0x006A,0x006B,0x006B,0x006A,0x006B,0x008B,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004A,0x004B,0x006B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004A,0x004A,0x004A,0x006B,0x006B,0x004A,0x004B,0x002A,0x004B,0x004B,0x006B,0x004B,0x008C,0x00AC,0x00ED,0x016E,0x2A73,0x3293,0x090D,0x008C,0x006B,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x006A,0x006A,0x006A,0x004A,0x006B,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004B,0x004B,0x004B,0x004B,0x004B,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x006A,0x004A,0x004A,0x004A,0x006A,0x006A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x004A,0x006A,0x006A,0x006A,0x006A +}; + +// Saves 377799 bytes +const uint8_t marlin_logo_1024x600x16_rle16[851001] = { + 0x02, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x02, 0x20, 0xEE, 0x02, 0x20, 0xEF, 0x80, 0x20, 0xEE, 0x02, 0x21, 0x0E, 0x05, 0x19, 0x0E, 0x01, 0x19, 0x0F, 0x81, 0x21, 0x0F, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x82, 0x19, 0x0F, 0x21, 0x0F, 0x21, 0x0E, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x80, 0x21, 0x0F, 0x08, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x82, 0x20, 0xEF, 0x21, 0x0F, 0x19, 0x0F, 0x2B, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8D, 0x20, 0xEF, 0x29, 0x0F, 0x28, 0xEF, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x31, 0x19, 0x33, 0x09, 0x34, 0x01, 0x55, 0x01, 0x77, 0x01, 0x97, 0x01, 0xB8, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x8A, 0x01, 0xFA, 0x01, 0xF9, 0x01, 0xD8, 0x01, 0x97, 0x01, 0x55, 0x01, 0x35, 0x08, 0xF3, 0x11, 0x13, 0x19, 0x52, 0x21, 0x31, 0x21, 0x11, 0x02, 0x29, 0x10, 0x82, 0x20, 0xEF, 0x29, 0x0F, 0x20, 0xEF, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x0A, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x20, 0xEF, 0x02, 0x21, 0x10, 0x93, 0x21, 0x31, 0x21, 0x32, 0x19, 0x53, 0x19, 0x54, 0x11, 0x74, 0x11, 0xB6, 0x19, 0xF7, 0x11, 0xD6, 0x09, 0x95, 0x09, 0x74, 0x09, 0x54, + 0x09, 0x53, 0x11, 0x33, 0x11, 0x32, 0x19, 0x72, 0x21, 0x72, 0x21, 0x92, 0x29, 0x92, 0x21, 0x71, 0x29, 0x71, 0x03, 0x21, 0x51, 0x80, 0x21, 0x30, 0x01, 0x21, 0x51, 0x87, 0x29, 0x51, 0x21, 0x31, 0x29, 0x51, 0x21, 0x31, 0x29, 0x31, 0x29, 0x30, 0x29, 0x51, 0x21, 0x30, 0x04, 0x21, 0x51, 0x81, 0x21, 0x71, 0x21, 0x92, 0x01, 0x21, 0x51, 0x8D, 0x19, 0x31, 0x19, 0x30, 0x21, 0x51, 0x21, 0x72, 0x19, 0x52, 0x19, 0x72, 0x19, 0x73, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB6, 0x09, 0xB7, 0x09, 0xD7, 0x09, 0xB7, 0x09, 0xD7, 0x02, 0x09, 0xF8, 0x03, 0x09, 0xD8, 0x84, 0x09, 0xD7, 0x09, 0x97, 0x09, 0x75, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x85, 0x19, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x0B, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x0C, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x20, 0xF0, 0x29, 0x10, 0x01, 0x21, 0x10, 0x86, 0x21, 0x31, 0x19, 0x32, 0x19, 0x52, 0x19, 0x53, 0x19, 0x95, 0x19, 0xD6, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x83, 0x11, 0xD7, 0x09, 0x75, 0x01, 0x13, 0x09, 0x33, 0x01, 0x11, 0x32, 0x86, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, + 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x08, 0x21, 0x10, 0x87, 0x21, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x95, 0x11, 0xD6, 0x11, 0xF7, 0x11, 0xD6, 0x11, 0xB6, 0x01, 0x09, 0x74, 0x80, 0x11, 0x74, 0x01, 0x09, 0x73, 0x8A, 0x09, 0x54, 0x09, 0x75, 0x09, 0xB6, 0x09, 0xD7, 0x11, 0xF7, 0x19, 0xD7, 0x19, 0x74, 0x19, 0x33, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x20, 0xF0, 0x06, 0x21, 0x10, 0x01, 0x21, 0x31, 0x89, 0x21, 0x32, 0x19, 0x33, 0x11, 0x54, 0x19, 0x96, 0x19, 0xD7, 0x11, 0xD7, 0x11, 0xB7, 0x09, 0x54, 0x11, 0x32, 0x11, 0x31, 0x01, 0x19, 0x51, 0x87, 0x10, 0xF1, 0x11, 0x12, 0x11, 0x33, 0x19, 0x96, 0x1A, 0x19, 0x11, 0xF9, 0x11, 0xB8, 0x09, 0x56, 0x01, 0x11, 0x34, 0x91, 0x11, 0x33, 0x11, 0x34, 0x11, 0x54, 0x11, 0x75, 0x09, 0x76, 0x09, 0xB7, 0x11, 0xF7, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x52, 0x11, 0x32, 0x11, 0x53, 0x09, 0x73, 0x09, 0x74, 0x11, 0xB6, 0x01, 0x1A, 0x17, 0x84, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x32, 0x19, 0x11, 0x19, 0x10, 0x02, 0x21, 0x10, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x81, 0x21, 0x0F, 0x20, 0xEF, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x09, 0x13, 0x19, 0xD7, 0x1A, 0x19, 0x19, 0xF8, 0x19, 0xB7, 0x10, 0xF3, 0x18, 0xF2, 0x19, 0x11, 0x02, 0x21, 0x30, 0x80, 0x18, 0xEF, 0x01, 0x21, 0x0F, + 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x95, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x09, 0x33, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x19, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x09, 0x13, 0x11, 0xB6, 0x11, 0xF7, 0x1A, 0x18, 0x19, 0xD7, 0x11, 0x33, 0x19, 0x12, 0x01, 0x21, 0x11, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x86, 0x21, 0x4F, 0x19, 0x2F, 0x19, 0x30, 0x19, 0x10, 0x10, 0xF0, 0x21, 0x53, 0x21, 0x74, 0x01, 0x21, 0x95, 0x88, 0x19, 0x96, 0x19, 0xB6, 0x09, 0x75, 0x09, 0x54, 0x09, 0x13, 0x09, 0x12, 0x11, 0x31, 0x19, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x30, 0x85, 0x19, 0x10, 0x19, 0x30, 0x19, 0x31, 0x11, 0x11, 0x08, 0xF2, 0x19, 0xF6, 0x01, 0x11, 0xF7, 0x84, 0x11, 0xB5, 0x09, 0x12, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x03, 0x21, 0x10, 0x89, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x19, 0x94, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0xB7, 0x09, 0x75, 0x11, 0x54, 0x11, 0x53, 0x01, 0x19, 0x31, 0x81, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x29, 0x30, 0x21, + 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x04, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x04, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x31, 0x88, 0x19, 0x12, 0x08, 0xF2, 0x19, 0x94, 0x21, 0xF6, 0x29, 0xF6, 0x19, 0x95, 0x11, 0x13, 0x11, 0x32, 0x19, 0x32, 0x03, 0x11, 0x32, 0x88, 0x09, 0x33, 0x19, 0x95, 0x19, 0xB6, 0x21, 0xF6, 0x19, 0xB5, 0x09, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x05, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x30, 0x29, 0x10, 0x20, 0xF0, 0x18, 0xF1, 0x10, 0xF2, 0x09, 0x34, 0x09, 0x55, 0x01, 0x01, 0x76, 0x88, 0x01, 0x96, 0x01, 0x97, 0x01, 0x76, 0x09, 0x76, 0x09, 0x55, 0x09, 0x34, 0x11, 0x13, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x10, 0x01, 0x21, 0x10, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x0E, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x05, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x03, + 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x20, 0xEF, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x0B, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x03, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x81, 0x20, 0xEF, 0x21, 0x0F, 0x02, 0x20, 0xEF, 0x83, 0x21, 0x0F, 0x20, 0xEF, 0x21, 0x0F, 0x19, 0x0F, 0x03, 0x19, 0x10, 0x86, 0x19, 0x11, 0x10, 0xF1, 0x11, 0x33, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xFA, 0x01, 0xDA, 0x03, 0x01, 0xBA, 0x03, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x83, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x83, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xDA, 0x04, 0x01, 0xD9, 0x89, 0x01, 0xB9, 0x01, 0xB8, 0x11, 0xD9, 0x19, 0xD7, 0x08, 0xB1, 0x18, 0xD0, 0x20, 0xF0, 0x20, 0xEF, 0x20, 0xEE, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x02, 0x21, 0x0F, 0x02, 0x20, 0xEF, 0x01, 0x18, 0xEF, 0x03, 0x20, 0xEF, 0x81, 0x21, 0x0F, 0x18, 0xEE, 0x05, 0x20, 0xEE, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x0E, 0x82, 0x21, 0x2F, 0x19, 0x0E, 0x21, 0x2E, 0x03, 0x19, 0x0E, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x80, 0x19, 0x0F, 0x02, + 0x21, 0x0F, 0x86, 0x20, 0xEE, 0x21, 0x0F, 0x20, 0xEE, 0x21, 0x0F, 0x21, 0x0E, 0x21, 0x0F, 0x20, 0xEE, 0x01, 0x21, 0x0E, 0x81, 0x21, 0x0F, 0x20, 0xEE, 0x01, 0x21, 0x0E, 0x81, 0x21, 0x0F, 0x20, 0xEE, 0x06, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x06, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x1D, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x20, 0xEF, 0x01, 0x28, 0xEF, 0x88, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x19, 0x31, 0x11, 0x32, 0x09, 0x33, 0x09, 0x75, 0x01, 0x77, 0x01, 0xB8, 0x01, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x82, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0x01, 0xD8, 0x87, 0x09, 0x97, 0x09, 0x55, 0x09, 0x13, 0x11, 0x13, 0x19, 0x32, 0x19, 0x11, 0x21, 0x11, 0x20, 0xF0, 0x01, 0x29, 0x10, 0x84, 0x28, 0xEF, 0x20, 0xEF, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x84, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x8B, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x11, 0x21, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x74, 0x11, + 0x95, 0x01, 0x19, 0xF7, 0x83, 0x11, 0xD6, 0x11, 0x95, 0x09, 0x54, 0x09, 0x33, 0x01, 0x09, 0x12, 0x81, 0x10, 0xF1, 0x11, 0x11, 0x01, 0x11, 0x10, 0x83, 0x19, 0x10, 0x19, 0x11, 0x19, 0x10, 0x19, 0x31, 0x02, 0x19, 0x10, 0x80, 0x19, 0x30, 0x03, 0x19, 0x10, 0x01, 0x21, 0x10, 0x05, 0x19, 0x10, 0x01, 0x19, 0x31, 0x01, 0x11, 0x10, 0x85, 0x19, 0x10, 0x11, 0x10, 0x19, 0x10, 0x19, 0x31, 0x19, 0x10, 0x19, 0x11, 0x01, 0x11, 0x11, 0x84, 0x09, 0x12, 0x09, 0x33, 0x01, 0x34, 0x11, 0x96, 0x09, 0xB7, 0x01, 0x09, 0xD7, 0x80, 0x11, 0xF8, 0x01, 0x09, 0xF8, 0x81, 0x09, 0xD8, 0x09, 0xB7, 0x02, 0x09, 0xD8, 0x88, 0x09, 0xD7, 0x09, 0xB7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x87, 0x19, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, + 0x10, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB6, 0x01, 0x19, 0xD7, 0x89, 0x11, 0xB7, 0x19, 0xD7, 0x11, 0x75, 0x09, 0x12, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x20, 0xEE, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x84, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x95, 0x11, 0xD6, 0x01, 0x11, 0xF7, 0x81, 0x11, 0xB6, 0x09, 0x74, 0x03, 0x09, 0x53, 0x8A, 0x09, 0x54, 0x09, 0x75, 0x09, 0xD6, 0x11, 0xF7, 0x11, 0xD7, 0x11, 0xB6, 0x19, 0x74, 0x19, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x11, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x11, 0x54, 0x19, 0x95, 0x01, 0x19, 0xD7, 0x8E, 0x11, 0xB6, 0x09, 0x54, 0x09, 0x32, 0x11, 0x31, 0x19, 0x51, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0x54, 0x19, 0xB6, 0x19, 0xF8, 0x11, 0xF8, 0x09, 0x97, 0x09, 0x56, 0x09, 0x34, 0x01, 0x09, 0x13, 0x89, 0x11, 0x33, 0x09, 0x34, 0x09, 0x55, 0x09, 0x96, 0x11, 0xD7, 0x11, 0xF8, 0x11, 0xF7, 0x11, 0xB5, 0x11, 0x74, 0x11, 0x53, 0x02, 0x11, 0x32, 0x89, 0x11, 0x53, 0x09, 0x53, 0x09, 0x74, 0x11, 0xB6, 0x1A, + 0x17, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x34, 0x11, 0x32, 0x19, 0x11, 0x03, 0x21, 0x10, 0x0A, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x85, 0x20, 0xEF, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x19, 0x31, 0x11, 0x11, 0x09, 0x13, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x86, 0x19, 0x96, 0x11, 0x13, 0x19, 0x12, 0x19, 0x11, 0x19, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x95, 0x19, 0x31, 0x11, 0x32, 0x09, 0x33, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xB5, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x09, 0x12, 0x11, 0xB6, 0x11, 0xF7, 0x1A, 0x18, 0x19, 0xD6, 0x11, 0x13, 0x19, 0x12, 0x21, 0x11, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x90, 0x19, 0x2F, 0x19, 0x0F, 0x19, 0x10, 0x19, 0x11, 0x21, 0x52, 0x21, 0x53, 0x21, 0x74, 0x19, 0x75, 0x21, 0xB6, 0x19, 0xB6, 0x11, 0xB6, 0x11, 0x95, 0x09, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x30, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x8A, 0x21, 0x30, 0x21, 0x0F, 0x21, + 0x2F, 0x19, 0x30, 0x21, 0x30, 0x19, 0x30, 0x21, 0x30, 0x19, 0x31, 0x11, 0x31, 0x09, 0x12, 0x19, 0xD6, 0x01, 0x11, 0xF7, 0x83, 0x11, 0x95, 0x09, 0x12, 0x19, 0x32, 0x21, 0x31, 0x04, 0x21, 0x10, 0x8D, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x19, 0xD7, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x76, 0x11, 0x54, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x30, 0x19, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x05, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x04, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x31, 0x95, 0x19, 0x12, 0x08, 0xF2, 0x19, 0x94, 0x21, 0xD6, 0x29, 0xF6, 0x19, 0x94, 0x11, 0x12, 0x11, 0x32, 0x19, 0x52, 0x11, 0x32, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x09, 0x33, 0x19, 0x95, 0x19, 0xD6, 0x21, 0xF6, 0x19, 0x95, 0x09, 0x12, 0x11, 0x32, 0x19, 0x31, 0x21, 0x11, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x89, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x75, 0x09, 0x96, 0x09, 0x97, 0x09, 0xB7, 0x01, 0x01, 0xB7, 0x83, 0x01, 0x97, 0x09, 0x97, 0x09, + 0x76, 0x09, 0x34, 0x01, 0x11, 0x33, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x09, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x08, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x03, 0x21, 0x10, 0x04, 0x21, 0x30, 0x05, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x20, 0xEF, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x11, 0x21, 0x0F, 0x82, 0x20, 0xEF, 0x21, 0x0F, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x87, 0x20, 0xEF, 0x21, 0x0F, 0x20, 0xEF, 0x21, 0x0F, 0x20, 0xEF, 0x21, 0x0F, 0x20, 0xEF, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x81, 0x18, 0xEF, 0x19, 0x0F, 0x02, 0x19, 0x10, 0x85, 0x19, 0x11, 0x10, 0xF1, 0x09, 0x13, 0x11, 0xD7, 0x09, 0xF9, 0x01, 0xD9, 0x04, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x81, 0x01, 0xB9, 0x01, 0xDA, 0x04, 0x01, 0xB9, 0x01, 0x01, 0xBA, 0x80, 0x01, 0xDA, 0x05, 0x01, 0xBA, 0x80, 0x01, 0xB9, 0x05, 0x01, 0xD9, 0x85, + 0x01, 0xB8, 0x11, 0xF9, 0x11, 0xB7, 0x08, 0xD2, 0x18, 0xD0, 0x20, 0xF0, 0x01, 0x20, 0xEF, 0x02, 0x20, 0xEE, 0x02, 0x21, 0x0F, 0x03, 0x20, 0xEF, 0x81, 0x18, 0xEF, 0x21, 0x0F, 0x02, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x85, 0x20, 0xEE, 0x21, 0x0F, 0x20, 0xEE, 0x21, 0x0E, 0x20, 0xEE, 0x20, 0xEF, 0x01, 0x20, 0xEE, 0x02, 0x21, 0x0E, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x19, 0x0E, 0x21, 0x0E, 0x15, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x12, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0B, 0x21, 0x0F, 0x87, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x29, 0x0F, 0x88, 0x29, 0x10, 0x21, 0x10, 0x19, 0x11, 0x19, 0x53, 0x11, 0x54, 0x09, 0x96, 0x09, 0xB8, 0x01, 0xD8, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0x01, 0xD9, 0x87, 0x01, 0xD8, 0x09, 0xD8, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x21, 0x53, 0x21, 0x11, 0x20, 0xF0, 0x03, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x29, 0x10, 0x89, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x89, 0x21, 0x30, + 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x88, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x19, 0x94, 0x11, 0x95, 0x02, 0x19, 0xD6, 0x83, 0x11, 0x96, 0x09, 0x54, 0x09, 0x33, 0x09, 0x12, 0x01, 0x08, 0xF1, 0x01, 0x08, 0xF0, 0x80, 0x10, 0xF1, 0x06, 0x10, 0xF0, 0x02, 0x11, 0x11, 0x01, 0x10, 0xF1, 0x86, 0x18, 0xF1, 0x10, 0xF1, 0x11, 0x11, 0x10, 0xF1, 0x19, 0x11, 0x11, 0x11, 0x10, 0xF1, 0x01, 0x11, 0x11, 0x82, 0x08, 0xF0, 0x08, 0xF1, 0x11, 0x11, 0x02, 0x10, 0xF1, 0x9A, 0x10, 0xF0, 0x10, 0xF1, 0x08, 0xF1, 0x09, 0x11, 0x09, 0x12, 0x09, 0x33, 0x09, 0x75, 0x09, 0x96, 0x12, 0x18, 0x09, 0xD7, 0x11, 0xD7, 0x09, 0xD7, 0x09, 0x96, 0x09, 0x97, 0x01, 0x96, 0x01, 0x76, 0x09, 0xB7, 0x09, 0xD8, 0x12, 0x19, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x13, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x09, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, + 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x87, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x01, 0x19, 0xD7, 0x89, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0x95, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x1A, 0x17, 0x11, 0xB6, 0x09, 0x95, 0x09, 0x33, 0x09, 0x54, 0x09, 0x53, 0x01, 0x09, 0x54, 0x81, 0x09, 0x75, 0x09, 0x96, 0x01, 0x11, 0xD7, 0x86, 0x11, 0xB6, 0x19, 0x74, 0x19, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x08, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x29, 0x50, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x89, 0x21, 0x32, 0x19, 0x32, 0x19, 0x54, 0x19, 0x95, 0x19, 0xB6, 0x19, 0xD7, 0x11, 0xB6, 0x09, 0x74, 0x09, 0x12, 0x11, 0x31, 0x01, 0x19, + 0x51, 0x88, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0xB6, 0x19, 0xD7, 0x11, 0xD8, 0x09, 0x97, 0x09, 0x76, 0x09, 0x54, 0x02, 0x09, 0x13, 0x83, 0x09, 0x34, 0x09, 0x54, 0x09, 0x96, 0x11, 0xD7, 0x01, 0x19, 0xF7, 0x84, 0x11, 0xB5, 0x11, 0x74, 0x11, 0x52, 0x11, 0x32, 0x11, 0x31, 0x01, 0x11, 0x32, 0x89, 0x11, 0x73, 0x09, 0x74, 0x11, 0xD6, 0x1A, 0x17, 0x19, 0xF7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x09, 0x33, 0x19, 0xF7, 0x01, 0x1A, 0x18, 0x83, 0x11, 0x96, 0x11, 0x13, 0x19, 0x11, 0x19, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x97, 0x19, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x32, 0x11, 0x11, 0x21, 0x31, 0x21, 0x30, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x13, 0x11, 0x95, 0x11, 0xF7, 0x1A, 0x18, 0x19, 0xD6, 0x11, 0x12, 0x19, 0x12, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, + 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8E, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x19, 0x33, 0x19, 0x54, 0x19, 0x95, 0x21, 0xD6, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x74, 0x11, 0x33, 0x19, 0x52, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x19, 0x30, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x01, 0x11, 0xD6, 0x83, 0x11, 0xF7, 0x11, 0x95, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x20, 0xF0, 0x01, 0x21, 0x10, 0x8D, 0x21, 0x30, 0x21, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x19, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x07, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, + 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x32, 0x11, 0x12, 0x19, 0x74, 0x21, 0xF6, 0x2A, 0x17, 0x19, 0x94, 0x01, 0x11, 0x12, 0x02, 0x19, 0x32, 0x01, 0x11, 0x32, 0x84, 0x11, 0x33, 0x19, 0x95, 0x21, 0xD6, 0x21, 0xF6, 0x11, 0x94, 0x01, 0x11, 0x32, 0x81, 0x19, 0x32, 0x21, 0x31, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x32, 0x19, 0x53, 0x19, 0x95, 0x11, 0x96, 0x11, 0xF8, 0x05, 0x09, 0xD8, 0x85, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x03, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x04, 0x21, 0x10, 0x07, 0x21, 0x30, 0x04, 0x29, 0x30, 0x02, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, + 0x02, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x0E, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x06, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x03, 0x21, 0x0F, 0x82, 0x18, 0xEF, 0x21, 0x30, 0x21, 0x10, 0x01, 0x19, 0x10, 0x84, 0x11, 0x11, 0x09, 0x12, 0x11, 0xD7, 0x09, 0xD8, 0x01, 0xD9, 0x03, 0x01, 0xBA, 0x02, 0x01, 0xDA, 0x85, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xBA, 0x01, 0xB9, 0x01, 0xDA, 0x02, 0x01, 0xB9, 0x82, 0x01, 0xBA, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x03, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xD9, 0x01, 0xF9, 0x02, 0x01, 0xB9, 0x88, 0x01, 0x98, 0x11, 0xF9, 0x11, 0xB6, 0x08, 0xD1, 0x18, 0xF0, 0x21, 0x10, 0x21, 0x0F, 0x20, 0xEE, 0x21, 0x0E, 0x03, 0x20, 0xEE, 0x02, 0x21, 0x0F, 0x81, 0x20, 0xEE, 0x18, 0xEE, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x82, 0x20, 0xEE, 0x21, 0x0E, 0x21, 0x0F, 0x04, 0x21, 0x0E, 0x81, 0x20, 0xEE, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x0E, 0x21, 0x2F, 0x21, 0x0E, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0E, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, + 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x88, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x19, 0x11, 0x11, 0x33, 0x11, 0xB5, 0x11, 0xF8, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x8E, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xF9, 0x01, 0xD9, 0x0A, 0x1A, 0x01, 0xF9, 0x09, 0xF8, 0x11, 0xF8, 0x19, 0xD7, 0x11, 0x33, 0x19, 0x32, 0x21, 0x11, 0x03, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x92, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x11, 0x19, 0x31, 0x01, 0x19, 0x32, 0x84, 0x19, 0x53, 0x19, 0x74, 0x11, 0x95, 0x19, 0xB6, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x82, 0x19, 0xB6, 0x19, 0xB5, 0x11, 0x54, 0x01, 0x11, 0x53, 0x83, 0x09, 0x32, 0x11, 0x32, 0x09, 0x12, 0x11, 0x33, 0x02, 0x11, 0x32, 0x02, + 0x11, 0x53, 0x82, 0x11, 0x32, 0x11, 0x53, 0x19, 0x53, 0x05, 0x11, 0x33, 0x01, 0x11, 0x53, 0x80, 0x11, 0x33, 0x02, 0x09, 0x33, 0x02, 0x11, 0x33, 0x87, 0x11, 0x32, 0x11, 0x33, 0x11, 0x32, 0x11, 0x33, 0x09, 0x33, 0x09, 0x54, 0x09, 0x75, 0x09, 0x96, 0x01, 0x11, 0xD7, 0x84, 0x09, 0xD7, 0x09, 0xB7, 0x09, 0x96, 0x09, 0x76, 0x01, 0x55, 0x01, 0x01, 0x56, 0x81, 0x01, 0x76, 0x09, 0xB7, 0x01, 0x11, 0xF8, 0x83, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x53, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x05, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x06, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x11, 0x33, 0x11, 0x34, 0x11, 0x54, 0x01, 0x19, 0xB6, 0x80, 0x19, + 0xD7, 0x01, 0x19, 0xD6, 0x83, 0x19, 0x94, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x51, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x31, 0x50, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x87, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x19, 0xB6, 0x19, 0xF7, 0x1A, 0x17, 0x11, 0xD7, 0x11, 0x96, 0x03, 0x09, 0x54, 0x82, 0x09, 0x74, 0x09, 0x75, 0x09, 0xB6, 0x01, 0x11, 0xD7, 0x82, 0x11, 0x96, 0x19, 0x74, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x29, 0x50, 0x29, 0x30, 0x07, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x50, 0x29, 0x50, 0x02, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x74, 0x19, 0x95, 0x01, 0x19, 0xD7, 0x8F, 0x11, 0xB7, 0x11, 0x75, 0x09, 0x32, 0x11, 0x31, 0x19, 0x31, 0x19, 0x51, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0x95, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xF7, 0x11, 0xB7, 0x09, 0x75, 0x09, 0x54, 0x02, 0x09, 0x34, 0x8E, 0x09, 0x55, 0x09, 0x96, 0x11, 0xD7, 0x11, 0xF7, 0x1A, 0x17, 0x11, 0xB5, 0x11, 0x73, 0x19, 0x52, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x11, 0x52, 0x11, 0x53, 0x09, 0x74, 0x11, 0xD6, 0x01, 0x19, 0xF7, 0x85, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, + 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x09, 0x13, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xB6, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x96, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x12, 0x11, 0x12, 0x11, 0xB6, 0x11, 0xF7, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x94, 0x21, 0x50, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x19, 0x33, 0x19, 0x74, 0x21, 0xD6, 0x19, 0xD6, 0x11, 0x95, 0x19, 0xD5, 0x11, 0x73, 0x19, 0x52, 0x19, 0x31, 0x19, 0x30, 0x21, + 0x10, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x8C, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x09, 0x12, 0x19, 0xD6, 0x11, 0xF7, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x04, 0x21, 0x10, 0x91, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x87, 0x21, 0x11, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0x74, 0x21, 0xD6, 0x2A, 0x17, 0x19, 0x95, 0x01, 0x11, 0x32, 0x03, 0x19, 0x32, 0x01, 0x11, 0x33, 0x87, 0x19, 0xB5, 0x21, 0xD6, 0x21, 0xF6, 0x19, 0xB4, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x92, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, + 0x19, 0x53, 0x19, 0x94, 0x11, 0xB6, 0x11, 0xD8, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xF9, 0x09, 0xF9, 0x01, 0xD8, 0x09, 0xD8, 0x09, 0xD7, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x53, 0x01, 0x19, 0x32, 0x81, 0x21, 0x52, 0x21, 0x31, 0x01, 0x21, 0x51, 0x80, 0x21, 0x31, 0x03, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x07, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x0A, 0x21, 0x30, 0x03, 0x29, 0x30, 0x80, 0x29, 0x50, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x50, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x0E, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x89, 0x21, 0x30, 0x19, 0x10, 0x10, 0xF0, + 0x08, 0xF2, 0x11, 0xD7, 0x09, 0xD8, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x82, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x03, 0x01, 0xBA, 0x83, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x82, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x02, 0x01, 0xBA, 0x81, 0x01, 0xDA, 0x01, 0xBA, 0x03, 0x01, 0xD9, 0x87, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0xB6, 0x08, 0xF1, 0x18, 0xF0, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x0E, 0x20, 0xEE, 0x21, 0x0E, 0x21, 0x0F, 0x21, 0x0E, 0x01, 0x20, 0xEF, 0x81, 0x21, 0x0F, 0x20, 0xEE, 0x01, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x81, 0x20, 0xEF, 0x20, 0xEE, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEE, 0x01, 0x21, 0x0E, 0x81, 0x20, 0xEE, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x05, 0x21, 0x0F, 0x03, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x14, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x13, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0A, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x87, 0x21, 0x10, 0x10, 0xF1, 0x11, 0x53, 0x11, 0xD6, 0x11, 0xF8, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x8F, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xD8, 0x19, 0xF7, + 0x11, 0x54, 0x19, 0x12, 0x21, 0x11, 0x21, 0x10, 0x29, 0x10, 0x28, 0xEF, 0x29, 0x0F, 0x28, 0xEF, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x20, 0xEF, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x19, 0xB5, 0x19, 0xB6, 0x11, 0xB6, 0x19, 0xB7, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x83, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0xB6, 0x02, 0x11, 0xB6, 0x83, 0x11, 0x96, 0x11, 0x95, 0x11, 0x96, 0x11, 0xB6, 0x02, 0x11, 0x95, 0x80, 0x11, 0x96, 0x01, 0x11, 0x95, 0x82, 0x11, 0x96, 0x19, 0xB6, 0x11, 0x96, 0x03, 0x11, 0xB6, 0x80, 0x11, 0x96, 0x05, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x82, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0xD7, 0x01, 0x11, 0xD8, 0x83, 0x11, 0xB7, 0x09, 0x96, 0x09, 0x76, 0x09, 0x96, 0x01, 0x01, 0x55, 0x8C, 0x01, 0x35, 0x01, 0x56, 0x09, 0x96, 0x11, 0xD7, 0x11, 0xF8, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x74, 0x19, 0x32, 0x19, 0x11, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x07, 0x21, 0x2F, + 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x06, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x12, 0x11, 0x53, 0x01, 0x19, 0x95, 0x81, 0x21, 0xD6, 0x21, 0xF7, 0x01, 0x19, 0xD6, 0x86, 0x19, 0x74, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x29, 0x50, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x88, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xF7, 0x1A, 0x17, 0x11, 0xD7, 0x11, 0xB7, 0x09, 0x76, 0x09, 0x55, 0x02, 0x09, 0x75, 0x80, 0x11, 0x96, 0x02, 0x11, 0xD7, 0x85, 0x19, 0x96, 0x19, 0x53, 0x19, 0x32, 0x21, 0x31, 0x21, 0x11, + 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x08, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x53, 0x19, 0x95, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0x95, 0x09, 0x33, 0x11, 0x32, 0x02, 0x19, 0x51, 0x01, 0x19, 0x32, 0x81, 0x11, 0x54, 0x11, 0x95, 0x02, 0x11, 0xD7, 0x81, 0x11, 0xB7, 0x09, 0x75, 0x01, 0x09, 0x55, 0x8F, 0x09, 0x75, 0x09, 0x96, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x53, 0x19, 0x52, 0x19, 0x51, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x73, 0x11, 0xB5, 0x1A, 0x17, 0x01, 0x19, 0xF7, 0x85, 0x11, 0x95, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x19, 0x31, 0x19, 0x12, 0x11, 0x13, 0x19, 0xD7, 0x01, 0x19, 0xF8, 0x81, 0x11, 0x96, 0x11, 0x12, 0x01, 0x19, 0x11, 0x83, 0x21, 0x10, 0x21, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8E, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF8, 0x19, 0xB6, 0x08, 0xF2, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, + 0x31, 0x01, 0x19, 0x32, 0x89, 0x11, 0x12, 0x11, 0xB6, 0x19, 0xF7, 0x1A, 0x38, 0x19, 0xD6, 0x11, 0x12, 0x19, 0x12, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x94, 0x21, 0x50, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x19, 0x53, 0x19, 0xB5, 0x19, 0xB6, 0x11, 0x95, 0x19, 0xF6, 0x19, 0xD5, 0x19, 0x73, 0x19, 0x52, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x8B, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0xD6, 0x11, 0xF7, 0x1A, 0x17, 0x11, 0x95, 0x11, 0x11, 0x21, 0x52, 0x21, 0x51, 0x29, 0x51, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x8D, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x19, 0x95, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x52, 0x21, 0x52, 0x21, 0x51, 0x21, 0x30, 0x02, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, + 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, 0x50, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x11, 0x01, 0x19, 0x32, 0x86, 0x11, 0x12, 0x19, 0x74, 0x21, 0xF6, 0x2A, 0x17, 0x19, 0x94, 0x11, 0x12, 0x11, 0x32, 0x02, 0x19, 0x32, 0x8A, 0x11, 0x32, 0x11, 0x52, 0x11, 0x53, 0x19, 0xB5, 0x21, 0xF6, 0x22, 0x16, 0x19, 0x94, 0x09, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x94, 0x19, 0xB6, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0x01, 0xF9, 0x01, 0x01, 0xD9, 0x86, 0x01, 0xF9, 0x01, 0xD8, 0x09, 0xD8, 0x11, 0xD8, 0x19, 0xD7, 0x19, 0x75, 0x19, 0x53, 0x01, 0x19, 0x52, 0x01, 0x19, 0x31, 0x84, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x51, 0x06, 0x21, 0x30, 0x02, 0x29, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x82, 0x21, 0x30, 0x29, 0x31, 0x29, 0x30, 0x03, 0x21, 0x30, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x29, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, + 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x04, 0x21, 0x30, 0x02, 0x21, 0x31, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x31, 0x03, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x09, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x89, 0x21, 0x30, 0x21, 0x10, 0x10, 0xF0, 0x08, 0xF2, 0x19, 0xF7, 0x12, 0x19, 0x01, 0xB9, 0x01, 0xBA, 0x01, 0x99, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xBA, 0x01, 0xB9, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xBA, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x81, 0x01, 0xBA, 0x01, 0xDA, 0x03, 0x01, 0xBA, 0x8C, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0xF9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD9, 0x12, 0x19, 0x11, 0x96, 0x08, 0xD1, 0x18, 0xF0, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x20, 0xEE, 0x83, 0x21, 0x0F, 0x20, 0xEF, 0x20, 0xEE, 0x21, 0x0F, 0x02, 0x21, 0x0E, 0x82, 0x21, 0x0F, 0x19, 0x0F, + 0x21, 0x0F, 0x03, 0x21, 0x0E, 0x80, 0x20, 0xEE, 0x03, 0x21, 0x0E, 0x81, 0x21, 0x0F, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x0E, 0x21, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x89, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x86, 0x10, 0xF1, 0x11, 0x54, 0x11, 0xB6, 0x11, 0xF8, 0x09, 0xF9, 0x01, 0xF9, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x8B, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0xF9, 0x01, 0xD9, 0x09, 0xD8, 0x11, 0xD7, 0x11, 0x75, 0x11, 0x12, 0x21, 0x31, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, + 0x30, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x89, 0x19, 0x32, 0x19, 0x53, 0x19, 0x74, 0x19, 0x95, 0x19, 0x96, 0x19, 0xB6, 0x19, 0xD7, 0x11, 0xD7, 0x19, 0xD7, 0x11, 0xD7, 0x01, 0x1A, 0x18, 0x84, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x38, 0x01, 0x1A, 0x18, 0x82, 0x1A, 0x38, 0x19, 0xF8, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x02, 0x1A, 0x18, 0x02, 0x19, 0xF8, 0x86, 0x1A, 0x19, 0x1A, 0x39, 0x22, 0x39, 0x19, 0xF8, 0x21, 0xF8, 0x19, 0xD7, 0x21, 0xF8, 0x03, 0x19, 0xF7, 0x80, 0x11, 0xF8, 0x01, 0x11, 0xD8, 0x82, 0x09, 0xB8, 0x09, 0x97, 0x09, 0x76, 0x01, 0x09, 0x55, 0x02, 0x01, 0x35, 0x88, 0x09, 0x55, 0x09, 0x76, 0x11, 0xB7, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x94, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, + 0x10, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x84, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x19, 0x74, 0x19, 0xB5, 0x02, 0x19, 0xD6, 0x84, 0x21, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x50, 0x03, 0x21, 0x30, 0x89, 0x19, 0x31, 0x19, 0x11, 0x19, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x1A, 0x17, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0x97, 0x11, 0x96, 0x01, 0x09, 0x96, 0x01, 0x11, 0xB6, 0x01, 0x11, 0xD7, 0x82, 0x19, 0xB7, 0x19, 0x75, 0x19, 0x53, 0x01, 0x19, 0x11, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x08, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x83, 0x19, 0x11, 0x19, 0x53, 0x19, 0x94, 0x19, 0xB6, 0x01, 0x19, 0xD7, 0x83, 0x11, 0x96, 0x11, 0x53, 0x11, 0x32, 0x11, 0x31, 0x02, 0x19, 0x31, 0x88, 0x19, 0x52, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x11, 0xF7, 0x12, 0x18, 0x09, 0xD7, 0x09, 0xB6, 0x09, 0x76, 0x01, 0x09, 0x96, 0x85, 0x09, 0xB6, 0x11, 0xD6, 0x19, 0xF6, 0x19, 0xD6, 0x11, + 0x94, 0x19, 0x73, 0x01, 0x19, 0x52, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x82, 0x11, 0x33, 0x11, 0x53, 0x11, 0x95, 0x01, 0x19, 0xF7, 0x86, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x11, 0x19, 0x12, 0x09, 0x12, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x75, 0x11, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x10, 0x21, 0x30, 0x19, 0x30, 0x11, 0x11, 0x11, 0x53, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF8, 0x19, 0xB6, 0x10, 0xF2, 0x10, 0xF1, 0x01, 0x21, 0x11, 0x8C, 0x21, 0x31, 0x19, 0x32, 0x19, 0x12, 0x11, 0x12, 0x11, 0xB5, 0x11, 0xF7, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, + 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x81, 0x19, 0x0F, 0x21, 0x30, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x81, 0x11, 0x32, 0x11, 0x53, 0x01, 0x11, 0x74, 0x85, 0x22, 0x16, 0x19, 0xF6, 0x11, 0x74, 0x11, 0x52, 0x19, 0x52, 0x19, 0x31, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x11, 0x09, 0x12, 0x19, 0xD6, 0x11, 0xD6, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x19, 0x11, 0x8A, 0x19, 0x32, 0x11, 0x53, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x21, 0x32, 0x01, 0x21, 0x31, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x97, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x8C, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0x74, 0x21, 0xB6, 0x2A, 0x17, 0x19, 0x95, + 0x11, 0x12, 0x11, 0x32, 0x01, 0x19, 0x32, 0x8B, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x94, 0x21, 0xD6, 0x21, 0xF6, 0x19, 0x94, 0x09, 0x12, 0x19, 0x32, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0xB6, 0x09, 0xB8, 0x09, 0xD9, 0x06, 0x01, 0xD9, 0x85, 0x09, 0xD8, 0x09, 0xB8, 0x11, 0xD8, 0x19, 0xB6, 0x11, 0x74, 0x19, 0x53, 0x01, 0x19, 0x32, 0x81, 0x19, 0x31, 0x19, 0x11, 0x02, 0x19, 0x31, 0x11, 0x21, 0x31, 0x80, 0x21, 0x51, 0x0F, 0x21, 0x31, 0x82, 0x21, 0x51, 0x21, 0x31, 0x21, 0x11, 0x07, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x02, 0x21, 0x31, 0x81, 0x19, 0x31, 0x21, 0x31, 0x09, 0x19, 0x31, 0x04, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x31, 0x08, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x09, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x0B, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x30, 0x19, 0x10, 0x08, 0xF1, 0x11, 0xD7, 0x09, 0xF8, 0x01, 0xB9, + 0x04, 0x01, 0xBA, 0x80, 0x01, 0xB9, 0x03, 0x01, 0xDA, 0x81, 0x01, 0xBA, 0x01, 0xB9, 0x01, 0x01, 0xBA, 0x03, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x82, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x02, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xD9, 0x86, 0x01, 0xB8, 0x01, 0xD8, 0x11, 0xD8, 0x11, 0x95, 0x08, 0xD1, 0x18, 0xF0, 0x20, 0xF0, 0x02, 0x21, 0x0F, 0x02, 0x20, 0xEE, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x01, 0x20, 0xEE, 0x02, 0x21, 0x0E, 0x01, 0x19, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x04, 0x21, 0x0E, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x81, 0x21, 0x0E, 0x20, 0xEE, 0x03, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x20, 0xEE, 0x09, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x85, 0x19, 0x11, 0x11, 0x12, 0x19, 0xB6, 0x1A, 0x18, 0x09, 0xD8, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x86, 0x01, 0xD8, 0x09, 0xD7, 0x11, + 0x95, 0x11, 0x12, 0x21, 0x31, 0x29, 0x31, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x84, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x07, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x19, 0x30, 0x19, 0x31, 0x21, 0x52, 0x19, 0x32, 0x01, 0x19, 0x53, 0x01, 0x19, 0x95, 0x86, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x18, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xF7, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x81, 0x22, 0x38, 0x22, 0x18, 0x04, 0x1A, 0x18, 0x05, 0x22, 0x18, 0x02, 0x22, 0x38, 0x82, 0x1A, 0x18, 0x22, 0x39, 0x1A, 0x19, 0x03, 0x19, 0xF8, 0x80, 0x21, 0xF8, 0x01, 0x21, 0xF7, 0x84, 0x19, 0xD7, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0xD7, 0x01, 0x11, 0xB7, 0x93, 0x11, 0xD8, 0x09, 0x97, 0x01, 0x55, 0x01, 0x35, 0x09, 0x35, 0x09, 0x55, 0x01, 0x34, 0x01, 0x35, 0x01, 0x55, 0x09, 0x96, 0x11, 0x96, 0x11, 0xD7, 0x19, 0xD7, 0x19, 0x96, 0x19, 0x74, 0x19, 0x12, 0x18, 0xF1, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, + 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x87, 0x21, 0x51, 0x19, 0x31, 0x19, 0x52, 0x19, 0x53, 0x19, 0x74, 0x19, 0x95, 0x19, 0xB6, 0x19, 0xD7, 0x01, 0x21, 0xF7, 0x85, 0x11, 0x74, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x29, 0x30, 0x93, 0x21, 0x0F, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0xB5, 0x19, 0xD7, 0x02, 0x11, 0xD7, 0x8B, 0x11, 0x97, 0x11, 0xB7, 0x11, 0xB6, 0x11, 0xB7, 0x19, 0xD7, 0x11, 0xD7, 0x11, 0xB6, 0x19, 0xB6, 0x19, 0x74, 0x19, 0x53, 0x21, 0x31, 0x21, 0x11, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, + 0x50, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x0B, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x89, 0x19, 0x31, 0x19, 0x53, 0x19, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0x74, 0x09, 0x32, 0x11, 0x31, 0x02, 0x19, 0x31, 0x87, 0x19, 0x32, 0x19, 0x52, 0x11, 0x73, 0x11, 0xB5, 0x1A, 0x17, 0x12, 0x18, 0x11, 0xF7, 0x09, 0xB7, 0x01, 0x09, 0xB6, 0x01, 0x11, 0xD7, 0x85, 0x11, 0xD6, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x73, 0x19, 0x53, 0x19, 0x32, 0x02, 0x19, 0x31, 0x8B, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x53, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x89, 0x19, 0x12, 0x11, 0x33, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x95, 0x11, 0x32, 0x19, 0x51, 0x19, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x85, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x19, 0x31, 0x86, 0x11, 0x53, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF8, 0x19, 0xB6, 0x08, 0xF2, 0x10, 0xF1, 0x02, 0x21, 0x11, 0x89, 0x19, 0x32, 0x19, 0x12, 0x11, 0x12, 0x11, 0xB5, 0x11, 0xD6, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x12, 0x19, 0x31, 0x21, 0x11, 0x05, 0x21, 0x30, + 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x30, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x19, 0x11, 0x11, 0x32, 0x01, 0x11, 0x53, 0x83, 0x09, 0x54, 0x19, 0xF6, 0x22, 0x16, 0x19, 0xB5, 0x01, 0x11, 0x32, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x83, 0x11, 0x95, 0x11, 0x12, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x19, 0x11, 0x82, 0x19, 0x32, 0x19, 0x74, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x85, 0x19, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x13, 0x11, 0x12, 0x21, 0x32, 0x01, 0x21, 0x31, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, + 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x50, 0x03, 0x21, 0x30, 0x89, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x11, 0x13, 0x19, 0x75, 0x21, 0xD6, 0x2A, 0x17, 0x19, 0x94, 0x09, 0x12, 0x11, 0x32, 0x02, 0x19, 0x32, 0x8B, 0x19, 0x52, 0x11, 0x32, 0x11, 0x53, 0x19, 0x94, 0x21, 0xD6, 0x21, 0xF6, 0x19, 0x94, 0x09, 0x12, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0xB6, 0x11, 0xD8, 0x09, 0xB8, 0x01, 0xD9, 0x01, 0xB9, 0x06, 0x01, 0xD9, 0x85, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0x96, 0x09, 0x55, 0x11, 0x54, 0x11, 0x33, 0x01, 0x08, 0xF2, 0x84, 0x08, 0xF1, 0x10, 0xF2, 0x11, 0x12, 0x11, 0x11, 0x19, 0x12, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x11, 0x11, 0x04, 0x19, 0x11, 0x82, 0x19, 0x12, 0x19, 0x11, 0x19, 0x12, 0x04, 0x19, 0x11, 0x80, 0x11, 0x11, 0x03, 0x19, 0x11, 0x81, 0x11, 0x11, 0x19, 0x12, 0x07, 0x19, 0x11, 0x80, 0x10, 0xF1, 0x02, 0x19, 0x11, 0x01, 0x10, 0xF1, 0x02, 0x19, 0x11, 0x80, 0x11, 0x11, 0x01, 0x19, 0x11, 0x83, 0x11, 0x11, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x05, 0x11, 0x11, 0x80, 0x11, 0x31, 0x07, 0x11, 0x11, 0x80, 0x10, 0xF1, 0x03, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x02, 0x19, 0x31, 0x03, 0x21, 0x31, 0x82, + 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x12, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x12, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x8C, 0x21, 0x10, 0x18, 0xF0, 0x11, 0x12, 0x11, 0xD6, 0x12, 0x19, 0x09, 0xD9, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0x99, 0x01, 0xB9, 0x01, 0xBA, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x81, 0x01, 0x99, 0x01, 0xB9, 0x04, 0x01, 0xDA, 0x82, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0x01, 0xB9, 0x81, 0x01, 0x99, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xD9, 0x86, 0x01, 0xB9, 0x01, 0xB8, 0x11, 0xD8, 0x11, 0x75, 0x08, 0xF1, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x82, 0x21, 0x0E, 0x21, 0x0F, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x02, 0x21, 0x0E, 0x83, 0x19, 0x0E, 0x19, 0x0F, 0x21, 0x0E, 0x21, 0x0F, 0x08, 0x21, 0x0E, 0x04, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x81, 0x29, 0x0F, 0x20, 0xEE, 0x04, 0x21, 0x0E, 0x12, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, + 0x10, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x88, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x85, 0x21, 0x11, 0x21, 0x31, 0x11, 0x12, 0x19, 0xD6, 0x11, 0xB7, 0x09, 0xD8, 0x02, 0x01, 0xB9, 0x81, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x8F, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0xD8, 0x09, 0xD8, 0x11, 0xB6, 0x11, 0x12, 0x21, 0x32, 0x21, 0x31, 0x29, 0x31, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x06, 0x21, 0x30, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x04, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x82, 0x19, 0x30, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x32, 0x82, 0x19, 0x53, 0x11, 0x53, 0x11, 0x74, 0x02, 0x11, 0x95, 0x80, 0x19, 0xB6, 0x02, 0x19, 0x95, 0x01, 0x11, 0x95, 0x83, 0x11, 0xB6, 0x19, 0xB6, 0x11, 0xB6, 0x19, 0xD6, 0x02, 0x19, 0xB6, 0x80, 0x19, 0x95, 0x04, 0x19, 0xB6, 0x82, 0x11, 0x95, 0x19, 0xB6, 0x11, 0xB6, 0x01, 0x19, 0xB6, 0x81, 0x11, 0xB6, + 0x19, 0xB6, 0x01, 0x19, 0x96, 0x80, 0x19, 0xB6, 0x02, 0x19, 0x95, 0x82, 0x19, 0xB6, 0x11, 0xB6, 0x19, 0xD6, 0x01, 0x11, 0xB7, 0x86, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0xB7, 0x09, 0x76, 0x09, 0x55, 0x09, 0x35, 0x09, 0x55, 0x01, 0x01, 0x35, 0x8F, 0x09, 0x55, 0x09, 0x96, 0x11, 0xB7, 0x19, 0xD7, 0x19, 0xB7, 0x19, 0x96, 0x19, 0x54, 0x19, 0x12, 0x19, 0x11, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x84, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x8F, 0x21, 0x50, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x19, 0x54, 0x19, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x11, + 0x54, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x50, 0x93, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xB7, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x97, 0x11, 0xB7, 0x19, 0xB7, 0x11, 0xB7, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x53, 0x19, 0x32, 0x21, 0x11, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x19, 0x74, 0x19, 0x95, 0x02, 0x19, 0xD7, 0x82, 0x11, 0xB5, 0x09, 0x33, 0x11, 0x32, 0x03, 0x19, 0x31, 0x86, 0x19, 0x52, 0x11, 0x53, 0x11, 0x74, 0x11, 0xD5, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xD6, 0x01, 0x11, 0xD7, 0x86, 0x11, 0xD6, 0x11, 0xB6, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x94, 0x19, 0x53, 0x19, 0x52, 0x03, 0x19, 0x32, 0x83, 0x19, 0x33, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x01, 0x22, 0x18, 0x83, 0x19, 0xB6, 0x11, 0x74, 0x19, 0x53, 0x19, 0x11, 0x01, 0x21, 0x31, 0x82, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x90, 0x21, 0x10, 0x21, 0x31, 0x19, + 0x12, 0x11, 0x13, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xD8, 0x19, 0x96, 0x11, 0x33, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x50, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x19, 0x31, 0x86, 0x11, 0x33, 0x11, 0x95, 0x19, 0xF7, 0x19, 0xD8, 0x19, 0xB6, 0x11, 0x12, 0x10, 0xF1, 0x01, 0x21, 0x11, 0x8A, 0x21, 0x31, 0x19, 0x32, 0x19, 0x12, 0x11, 0x33, 0x19, 0xB6, 0x19, 0xF7, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x05, 0x21, 0x30, 0x02, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8A, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x31, 0x21, 0x52, 0x19, 0x31, 0x11, 0x11, 0x01, 0x11, 0x32, 0x84, 0x11, 0x53, 0x11, 0x54, 0x19, 0xB5, 0x21, 0xF6, 0x21, 0xD6, 0x01, 0x11, 0x32, 0x81, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB5, 0x09, 0x11, 0x19, 0x31, 0x21, + 0x51, 0x29, 0x51, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x8F, 0x21, 0x11, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x19, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xD7, 0x19, 0x96, 0x11, 0x34, 0x11, 0x33, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x50, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x86, 0x11, 0x12, 0x19, 0x74, 0x29, 0xF6, 0x2A, 0x17, 0x19, 0x94, 0x11, 0x12, 0x11, 0x32, 0x03, 0x19, 0x32, 0x82, 0x11, 0x32, 0x11, 0x33, 0x19, 0x94, 0x01, 0x21, 0xF6, 0x84, 0x11, 0x94, 0x09, 0x12, 0x11, 0x32, 0x19, 0x52, 0x21, 0x31, 0x07, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x74, 0x11, 0x96, 0x11, 0xD8, 0x09, 0xF9, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x03, 0x01, 0xD9, 0x86, 0x01, 0xB9, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x75, 0x01, 0x09, 0x54, 0x80, 0x09, 0x34, 0x03, 0x11, 0x33, 0x81, 0x09, 0x12, 0x11, 0x12, 0x01, 0x09, 0x12, + 0x80, 0x11, 0x12, 0x03, 0x09, 0x12, 0x86, 0x11, 0x13, 0x09, 0x12, 0x09, 0x13, 0x11, 0x13, 0x08, 0xF2, 0x11, 0x12, 0x08, 0xF2, 0x06, 0x09, 0x12, 0x81, 0x11, 0x13, 0x09, 0x13, 0x01, 0x09, 0x12, 0x80, 0x11, 0x12, 0x01, 0x09, 0x12, 0x80, 0x11, 0x12, 0x02, 0x09, 0x12, 0x80, 0x11, 0x12, 0x01, 0x09, 0x12, 0x01, 0x11, 0x12, 0x80, 0x08, 0xF2, 0x0E, 0x09, 0x12, 0x81, 0x09, 0x32, 0x09, 0x12, 0x01, 0x09, 0x32, 0x04, 0x09, 0x12, 0x02, 0x11, 0x12, 0x80, 0x11, 0x32, 0x02, 0x11, 0x12, 0x02, 0x11, 0x32, 0x80, 0x11, 0x12, 0x01, 0x19, 0x12, 0x82, 0x21, 0x32, 0x21, 0x11, 0x21, 0x31, 0x07, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x0C, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x86, 0x21, 0x10, 0x18, 0xF0, 0x11, 0x32, 0x11, 0xB6, 0x1A, 0x39, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0x01, 0xBA, 0x01, 0x01, 0xB9, 0x85, 0x01, 0xBA, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xB9, 0x02, 0x01, 0xBA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x80, 0x01, 0x99, 0x05, 0x01, 0xB9, 0x04, 0x01, 0xD9, 0x89, 0x09, 0xB8, 0x11, 0xD8, 0x11, 0x75, 0x08, 0xF1, 0x18, 0xF0, 0x21, 0x10, 0x20, 0xEF, 0x21, + 0x2F, 0x21, 0x0F, 0x20, 0xEE, 0x01, 0x21, 0x0F, 0x81, 0x20, 0xEE, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x02, 0x21, 0x0E, 0x82, 0x19, 0x0E, 0x21, 0x0E, 0x19, 0x0E, 0x07, 0x21, 0x0E, 0x80, 0x29, 0x2F, 0x06, 0x21, 0x0F, 0x81, 0x20, 0xEF, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x10, 0x88, 0x21, 0x11, 0x19, 0x12, 0x11, 0x33, 0x21, 0xF7, 0x11, 0xF9, 0x01, 0xB8, 0x01, 0xD9, 0x01, 0x99, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x80, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x01, 0x01, 0xF9, 0x83, 0x09, 0xF8, 0x19, 0xF7, 0x11, 0x53, 0x19, 0x32, 0x02, 0x21, 0x31, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, + 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x07, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x02, 0x19, 0x31, 0x01, 0x19, 0x52, 0x04, 0x11, 0x32, 0x01, 0x11, 0x12, 0x02, 0x11, 0x32, 0x03, 0x11, 0x53, 0x01, 0x11, 0x32, 0x80, 0x19, 0x53, 0x01, 0x11, 0x32, 0x02, 0x11, 0x12, 0x82, 0x11, 0x32, 0x11, 0x33, 0x11, 0x32, 0x05, 0x11, 0x33, 0x80, 0x11, 0x53, 0x02, 0x19, 0x53, 0x80, 0x19, 0x73, 0x01, 0x11, 0x53, 0x83, 0x09, 0x34, 0x09, 0x54, 0x09, 0x76, 0x11, 0xB7, 0x01, 0x11, 0xF8, 0x81, 0x11, 0xB7, 0x09, 0x76, 0x03, 0x09, 0x55, 0x8D, 0x09, 0x96, 0x11, 0xD7, 0x19, 0xF8, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x75, 0x19, 0x33, 0x19, 0x12, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x80, + 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x50, 0x01, 0x21, 0x30, 0x85, 0x19, 0x31, 0x19, 0x12, 0x19, 0x33, 0x11, 0x54, 0x19, 0x96, 0x19, 0xF7, 0x01, 0x22, 0x17, 0x81, 0x19, 0xF6, 0x11, 0x74, 0x01, 0x11, 0x12, 0x84, 0x19, 0x11, 0x21, 0x51, 0x21, 0x31, 0x29, 0x50, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x50, 0x21, 0x51, 0x01, 0x21, 0x31, 0x86, 0x19, 0x11, 0x19, 0x32, 0x19, 0x54, 0x19, 0x75, 0x11, 0x76, 0x11, 0x96, 0x19, 0xD7, 0x02, 0x11, 0xB7, 0x89, 0x11, 0x96, 0x19, 0xB6, 0x11, 0x96, 0x11, 0x75, 0x19, 0x74, 0x19, 0x32, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x84, 0x19, 0x31, 0x19, 0x52, 0x19, 0x53, 0x19, 0x75, 0x19, 0xB6, 0x01, 0x19, 0xD7, 0x81, 0x19, 0xB6, 0x11, 0x74, 0x01, 0x11, 0x32, 0x81, 0x19, 0x52, 0x19, 0x31, 0x01, 0x19, 0x52, 0x82, 0x11, 0x52, 0x11, 0x73, 0x11, 0x94, 0x01, 0x11, 0x95, 0x97, 0x11, 0xB5, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x95, 0x11, 0xB5, + 0x19, 0xB5, 0x19, 0x94, 0x11, 0x52, 0x11, 0x32, 0x19, 0x52, 0x19, 0x32, 0x21, 0x52, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0x95, 0x19, 0x94, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x89, 0x19, 0x11, 0x19, 0x12, 0x11, 0x13, 0x21, 0xF7, 0x22, 0x19, 0x19, 0xD8, 0x11, 0x75, 0x11, 0x53, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x19, 0x31, 0x86, 0x11, 0x53, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF8, 0x19, 0xB6, 0x11, 0x12, 0x10, 0xF1, 0x01, 0x21, 0x11, 0x89, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x11, 0x13, 0x19, 0xB6, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xD6, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x90, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, + 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x53, 0x11, 0x95, 0x21, 0xD6, 0x21, 0xF6, 0x09, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x30, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x8B, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0x75, 0x08, 0xF1, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x11, 0x8A, 0x11, 0x32, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x17, 0x22, 0x18, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x34, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x85, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x32, 0x84, 0x11, 0x32, 0x19, 0x74, 0x21, 0xF6, 0x2A, 0x16, 0x19, 0xB4, 0x01, 0x11, 0x32, 0x03, 0x19, 0x32, 0x82, 0x11, 0x32, 0x11, 0x33, 0x19, 0x94, 0x01, 0x21, 0xF6, 0x82, 0x19, 0x95, 0x09, 0x12, + 0x19, 0x32, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x88, 0x21, 0x10, 0x21, 0x11, 0x21, 0x32, 0x19, 0x32, 0x11, 0x53, 0x11, 0x96, 0x11, 0xB8, 0x09, 0xD9, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x02, 0x01, 0xB9, 0x81, 0x09, 0xD9, 0x09, 0xF8, 0x02, 0x11, 0xF8, 0x02, 0x11, 0xD7, 0x80, 0x11, 0xB7, 0x02, 0x11, 0xB6, 0x81, 0x11, 0x95, 0x11, 0xB6, 0x01, 0x11, 0x95, 0x02, 0x11, 0x96, 0x80, 0x11, 0xB6, 0x02, 0x11, 0x96, 0x82, 0x11, 0x97, 0x11, 0x96, 0x11, 0xB6, 0x02, 0x11, 0x96, 0x03, 0x11, 0xB6, 0x80, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x80, 0x11, 0x96, 0x04, 0x11, 0xB6, 0x80, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x02, 0x11, 0x96, 0x81, 0x11, 0xB6, 0x19, 0xB6, 0x0A, 0x11, 0xB6, 0x80, 0x11, 0xD6, 0x04, 0x11, 0xB6, 0x05, 0x11, 0xD6, 0x03, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x82, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x01, 0x19, 0xB6, 0x82, 0x19, 0x75, 0x11, 0x34, 0x11, 0x13, 0x01, 0x19, 0x12, 0x81, 0x19, 0x11, 0x21, 0x31, 0x06, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x04, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x06, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x0A, 0x21, 0x0F, 0x88, 0x21, 0x2F, 0x21, 0x0F, + 0x18, 0xEF, 0x19, 0x11, 0x19, 0x53, 0x11, 0x75, 0x12, 0x18, 0x09, 0xF9, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x81, 0x01, 0x99, 0x01, 0xB9, 0x03, 0x01, 0xD9, 0x81, 0x01, 0xDA, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x81, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x82, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0x99, 0x03, 0x01, 0xB9, 0x83, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x87, 0x01, 0xD9, 0x01, 0xB9, 0x09, 0xB8, 0x11, 0xD8, 0x11, 0x55, 0x08, 0xF1, 0x19, 0x11, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x0E, 0x02, 0x19, 0x0E, 0x06, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEE, 0x06, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x29, 0x0F, 0x81, 0x20, 0xEF, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x0C, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x89, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x88, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, + 0x21, 0x2F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x11, 0x19, 0x12, 0x11, 0x54, 0x19, 0xF8, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x87, 0x01, 0xD9, 0x02, 0x1A, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xF8, 0x09, 0x54, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x03, 0x19, 0x10, 0x03, 0x21, 0x31, 0x80, 0x19, 0x31, 0x04, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x19, 0x31, 0x21, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x04, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x82, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x03, 0x21, 0x31, 0x81, 0x19, 0x10, 0x21, 0x31, 0x06, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x30, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x18, 0xF1, 0x02, 0x19, 0x11, 0x82, 0x11, 0x11, 0x19, 0x11, 0x11, 0x11, 0x13, 0x19, 0x11, 0x81, 0x19, 0x31, 0x11, 0x11, 0x01, 0x11, 0x32, 0x87, 0x11, 0x33, 0x09, 0x33, 0x09, 0x55, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xF8, 0x11, 0xB7, 0x01, 0x09, 0x76, 0x82, 0x09, 0x55, 0x09, 0x76, 0x11, 0xB7, 0x01, 0x19, 0xF8, 0x85, 0x19, 0xD7, 0x19, 0x96, 0x19, 0x54, 0x19, 0x33, 0x21, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, + 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x07, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8C, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0x75, 0x11, 0x95, 0x19, 0xD7, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x54, 0x09, 0x12, 0x10, 0xF1, 0x19, 0x31, 0x01, 0x21, 0x51, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x50, 0x87, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x11, 0x55, 0x11, 0x96, 0x01, 0x11, 0xD7, 0x80, 0x11, 0xB7, 0x02, 0x11, 0x96, 0x84, 0x11, 0x75, 0x11, 0x53, 0x19, 0x52, 0x19, 0x11, 0x19, 0x30, 0x06, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, + 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x50, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x30, 0x19, 0x31, 0x19, 0x52, 0x11, 0x54, 0x19, 0x96, 0x19, 0xB7, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x95, 0x09, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x52, 0x82, 0x19, 0x73, 0x11, 0x73, 0x11, 0x74, 0x01, 0x11, 0x95, 0x80, 0x19, 0xB5, 0x01, 0x11, 0x74, 0x01, 0x19, 0x73, 0x01, 0x19, 0x52, 0x80, 0x19, 0x31, 0x02, 0x19, 0x32, 0x8B, 0x11, 0x13, 0x11, 0x33, 0x11, 0x75, 0x11, 0x96, 0x19, 0xD7, 0x22, 0x18, 0x19, 0xD7, 0x19, 0x75, 0x19, 0x73, 0x19, 0x32, 0x19, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x88, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x21, 0xF7, 0x22, 0x19, 0x19, 0xD8, 0x11, 0x75, 0x19, 0x53, 0x19, 0x31, 0x01, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x95, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x32, 0x19, 0x12, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF7, 0x1A, 0x17, 0x19, 0xD6, 0x09, 0x12, 0x19, 0x31, 0x21, 0x31, 0x06, + 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x82, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x01, 0x11, 0x53, 0x84, 0x11, 0x74, 0x21, 0xF6, 0x2A, 0x17, 0x11, 0x53, 0x11, 0x12, 0x01, 0x19, 0x52, 0x84, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x19, 0x31, 0x11, 0x12, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x84, 0x11, 0x95, 0x09, 0x11, 0x19, 0x10, 0x21, 0x51, 0x29, 0x50, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, + 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x12, 0x19, 0x74, 0x21, 0xF6, 0x22, 0x16, 0x19, 0xB5, 0x11, 0x12, 0x11, 0x32, 0x19, 0x52, 0x11, 0x12, 0x01, 0x19, 0x32, 0x82, 0x11, 0x32, 0x11, 0x33, 0x19, 0x94, 0x01, 0x21, 0xF6, 0x84, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x32, 0x19, 0x52, 0x19, 0x51, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x88, 0x21, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x96, 0x11, 0xD8, 0x09, 0xF9, 0x01, 0xFA, 0x01, 0xBA, 0x02, 0x01, 0xDA, 0x04, 0x01, 0xD9, 0x81, 0x09, 0xD9, 0x09, 0xF9, 0x01, 0x11, 0xF9, 0x02, 0x12, 0x19, 0x80, 0x1A, 0x19, 0x01, 0x1A, 0x39, 0x80, 0x1A, 0x38, 0x01, 0x22, 0x39, 0x03, 0x22, 0x59, 0x01, 0x2A, 0x59, 0x81, 0x2A, 0x7A, 0x22, 0x5A, 0x04, 0x2A, 0x5A, 0x80, 0x22, 0x5A, 0x01, 0x2A, 0x5A, 0x80, 0x2A, 0x7A, 0x01, 0x2A, 0x5A, 0x03, 0x22, 0x7A, 0x80, 0x2A, 0x7A, 0x01, 0x22, 0x59, 0x04, 0x2A, 0x79, 0x80, 0x22, 0x59, 0x06, 0x2A, 0x59, 0x81, 0x22, 0x59, 0x2A, 0x79, 0x04, 0x22, 0x59, 0x02, 0x22, 0x79, 0x80, 0x22, 0x59, 0x03, 0x22, 0x79, 0x04, 0x22, 0x59, 0x81, 0x22, 0x39, 0x22, 0x59, 0x05, 0x22, 0x39, 0x8D, 0x1A, 0x18, 0x22, 0x38, 0x1A, 0x38, 0x1A, 0x18, 0x22, 0x38, 0x22, 0x18, 0x21, 0xF8, 0x21, 0xD7, 0x19, 0x75, 0x11, 0x13, 0x19, + 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x08, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x07, 0x29, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x89, 0x29, 0x2F, 0x21, 0x0F, 0x18, 0xEF, 0x19, 0x11, 0x19, 0x53, 0x09, 0x54, 0x1A, 0x18, 0x09, 0xF9, 0x09, 0xDA, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x07, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x80, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x82, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xDA, 0x02, 0x01, 0xB9, 0x81, 0x09, 0xB9, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x87, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xB9, 0x09, 0xB8, 0x19, 0xD8, 0x09, 0x34, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x20, 0xEE, 0x01, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x0E, 0x21, 0x2E, 0x21, 0x0E, 0x21, 0x2E, 0x21, 0x2F, 0x03, 0x21, 0x0E, 0x03, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x03, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, + 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x8C, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x22, 0x39, 0x09, 0xF9, 0x09, 0xFA, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x04, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x86, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0xD9, 0x09, 0xD8, 0x09, 0xB7, 0x09, 0x54, 0x01, 0x09, 0x12, 0x80, 0x11, 0x12, 0x01, 0x11, 0x11, 0x83, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x19, 0x32, 0x01, 0x19, 0x11, 0x83, 0x19, 0x31, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x11, 0x11, 0x01, 0x19, 0x11, 0x80, 0x11, 0x11, 0x01, 0x19, 0x31, 0x80, 0x11, 0x11, 0x01, 0x19, 0x31, 0x04, 0x19, 0x11, 0x80, 0x19, 0x31, 0x03, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x02, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, + 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x02, 0x19, 0x10, 0x83, 0x21, 0x30, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x20, 0xF0, 0x01, 0x18, 0xF0, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x10, 0x21, 0x11, 0x05, 0x21, 0x10, 0x82, 0x19, 0x10, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x31, 0x82, 0x19, 0x10, 0x19, 0x11, 0x21, 0x31, 0x02, 0x19, 0x31, 0x84, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x01, 0x11, 0x11, 0x83, 0x11, 0x12, 0x11, 0x74, 0x11, 0x95, 0x19, 0xB6, 0x01, 0x19, 0xD7, 0x80, 0x11, 0xD7, 0x01, 0x11, 0x96, 0x8C, 0x11, 0xB6, 0x11, 0xB7, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0x96, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x21, 0x32, 0x29, 0x51, 0x29, 0x31, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, + 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x92, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x19, 0x54, 0x11, 0x55, 0x11, 0x96, 0x19, 0xD7, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x74, 0x09, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x31, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x50, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x10, 0x89, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x34, 0x11, 0x75, 0x19, 0xD7, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0x96, 0x01, 0x11, 0x75, 0x81, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x83, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x01, 0x19, 0xD7, 0x88, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x11, 0x31, 0x19, 0x31, 0x11, 0x31, 0x01, 0x19, 0x52, 0x80, 0x11, 0x52, 0x01, 0x11, 0x53, 0x01, 0x19, 0x74, 0x01, 0x11, 0x53, 0x01, 0x19, 0x52, 0x84, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x01, 0x11, 0x33, 0x82, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD6, 0x01, 0x22, 0x18, 0x84, + 0x19, 0x95, 0x11, 0x54, 0x19, 0x53, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x19, 0x11, 0x87, 0x11, 0x33, 0x21, 0xF7, 0x19, 0xF8, 0x19, 0xB7, 0x11, 0x75, 0x11, 0x53, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x31, 0x11, 0x33, 0x19, 0xB6, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xB6, 0x11, 0x12, 0x01, 0x19, 0x11, 0x8A, 0x21, 0x31, 0x21, 0x11, 0x21, 0x32, 0x11, 0x12, 0x11, 0x33, 0x19, 0xD6, 0x11, 0xF7, 0x1A, 0x17, 0x19, 0xB6, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x50, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x19, 0x30, 0x19, 0x51, 0x19, 0x52, 0x11, 0x53, 0x11, 0x33, 0x11, 0x54, 0x21, 0xF6, 0x2A, 0x17, 0x11, 0x53, 0x11, + 0x32, 0x01, 0x19, 0x52, 0x82, 0x19, 0x51, 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x19, 0xD6, 0x01, 0x19, 0xF8, 0x84, 0x11, 0x96, 0x09, 0x12, 0x19, 0x31, 0x21, 0x51, 0x21, 0x50, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x87, 0x21, 0xF7, 0x19, 0x95, 0x19, 0x74, 0x19, 0x33, 0x19, 0x12, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x19, 0x31, 0x19, 0x32, 0x01, 0x11, 0x32, 0x83, 0x19, 0x94, 0x21, 0xF6, 0x2A, 0x17, 0x19, 0x94, 0x01, 0x11, 0x32, 0x80, 0x19, 0x52, 0x02, 0x19, 0x32, 0x01, 0x11, 0x32, 0x80, 0x19, 0x74, 0x01, 0x21, 0xF6, 0x84, 0x19, 0x95, 0x09, 0x12, 0x19, 0x32, 0x19, 0x72, 0x19, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, + 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x12, 0x11, 0x13, 0x11, 0x75, 0x11, 0xD7, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0x01, 0xBA, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x81, 0x09, 0xD9, 0x09, 0xD8, 0x02, 0x11, 0xD8, 0x01, 0x11, 0xF8, 0x01, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x80, 0x19, 0xF8, 0x02, 0x22, 0x18, 0x80, 0x22, 0x38, 0x01, 0x1A, 0x18, 0x80, 0x22, 0x19, 0x01, 0x19, 0xF8, 0x82, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xD8, 0x03, 0x19, 0xF8, 0x81, 0x1A, 0x18, 0x19, 0xF8, 0x03, 0x1A, 0x18, 0x02, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x80, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x86, 0x19, 0xD7, 0x21, 0xF8, 0x19, 0xF8, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xF8, 0x01, 0x19, 0xD7, 0x80, 0x19, 0xF7, 0x01, 0x19, 0xD7, 0x81, 0x19, 0xF7, 0x19, 0xD7, 0x04, 0x19, 0xF7, 0x80, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x81, 0x19, 0xD7, 0x19, 0xF8, 0x05, 0x19, 0xD8, 0x86, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xF7, 0x22, 0x18, 0x1A, 0x18, 0x19, 0xF7, 0x02, 0x19, 0xF8, 0x84, 0x19, 0xD8, 0x21, 0xD7, 0x19, 0xB6, 0x11, 0x34, 0x11, 0x13, 0x01, 0x19, 0x11, 0x81, 0x21, 0x31, 0x21, 0x10, 0x08, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x2F, 0x82, + 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x8B, 0x29, 0x0F, 0x29, 0x30, 0x20, 0xEF, 0x19, 0x0F, 0x19, 0x31, 0x19, 0x52, 0x09, 0x33, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x81, 0x01, 0xD9, 0x09, 0xF9, 0x01, 0x01, 0xB8, 0x83, 0x01, 0xD9, 0x01, 0xB8, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x03, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x81, 0x09, 0xB9, 0x09, 0x98, 0x02, 0x09, 0xB8, 0x83, 0x09, 0xD8, 0x01, 0xB8, 0x01, 0xB9, 0x09, 0xFA, 0x01, 0x01, 0xD9, 0x86, 0x09, 0xF9, 0x09, 0xB8, 0x09, 0x97, 0x19, 0xF7, 0x11, 0x34, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x30, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x20, 0xEE, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x07, 0x21, 0x0E, 0x09, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0E, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, + 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x86, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x34, 0x1A, 0x18, 0x12, 0x19, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x88, 0x01, 0xFA, 0x01, 0xF9, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xB7, 0x09, 0x96, 0x09, 0x54, 0x09, 0x34, 0x09, 0x33, 0x02, 0x11, 0x33, 0x80, 0x11, 0x53, 0x08, 0x11, 0x33, 0x81, 0x11, 0x53, 0x11, 0x32, 0x1C, 0x11, 0x33, 0x80, 0x11, 0x53, 0x02, 0x11, 0x33, 0x01, 0x11, 0x32, 0x02, 0x11, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x09, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x87, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xB7, 0x02, 0x19, 0xF7, 0x88, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x12, 0x21, 0x32, 0x21, 0x31, 0x29, 0x31, 0x01, 0x29, 0x30, 0x05, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, + 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x07, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8F, 0x21, 0x31, 0x19, 0x11, 0x19, 0x33, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xB6, 0x22, 0x18, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x50, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x50, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x84, 0x19, 0x32, 0x19, 0x33, 0x11, 0x34, 0x11, 0x55, 0x19, 0xD7, 0x01, 0x11, 0xD7, 0x82, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x01, 0x11, 0x32, 0x81, 0x19, 0x31, 0x19, 0x10, 0x04, 0x21, 0x2F, 0x82, 0x29, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, + 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x84, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x96, 0x02, 0x19, 0xD7, 0x83, 0x19, 0x96, 0x11, 0x34, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x32, 0x03, 0x19, 0x52, 0x01, 0x19, 0x32, 0x01, 0x11, 0x32, 0x81, 0x11, 0x52, 0x11, 0x32, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x8D, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xF7, 0x11, 0x74, 0x19, 0x53, 0x19, 0x32, 0x19, 0x11, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x11, 0x19, 0x12, 0x11, 0x13, 0x21, 0xF8, 0x22, 0x19, 0x19, 0xB8, 0x11, 0x75, 0x19, 0x33, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x87, 0x19, 0x10, 0x19, 0x31, 0x11, 0x33, 0x19, 0xB6, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xB6, 0x11, 0x12, 0x01, 0x19, 0x11, 0x8A, 0x21, 0x11, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x09, 0x33, 0x11, 0xB6, 0x11, 0xF7, 0x1A, 0x17, 0x19, 0xB6, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x85, 0x21, 0x2F, 0x21, 0x0F, + 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x0B, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8E, 0x19, 0x30, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x21, 0xD6, 0x21, 0xF6, 0x11, 0x74, 0x11, 0x12, 0x19, 0x52, 0x19, 0x31, 0x19, 0x51, 0x19, 0x30, 0x19, 0x10, 0x04, 0x21, 0x30, 0x83, 0x21, 0x31, 0x21, 0x32, 0x11, 0x12, 0x19, 0xB6, 0x01, 0x19, 0xF8, 0x82, 0x11, 0xB6, 0x09, 0x32, 0x11, 0x31, 0x01, 0x21, 0x51, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x85, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x02, 0x21, 0xF7, 0x81, 0x19, 0x95, 0x19, 0x54, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, + 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x87, 0x11, 0x52, 0x11, 0x32, 0x19, 0x94, 0x21, 0xF6, 0x22, 0x16, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x32, 0x03, 0x19, 0x32, 0x01, 0x11, 0x32, 0x89, 0x19, 0x94, 0x21, 0xD6, 0x21, 0xF6, 0x19, 0xB5, 0x09, 0x12, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x8C, 0x21, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xD9, 0x09, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x85, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xB8, 0x11, 0xB8, 0x09, 0x97, 0x11, 0xB7, 0x01, 0x11, 0x96, 0x0B, 0x11, 0x75, 0x80, 0x11, 0x55, 0x01, 0x11, 0x75, 0x82, 0x11, 0x55, 0x11, 0x75, 0x11, 0x96, 0x13, 0x11, 0x75, 0x81, 0x11, 0x54, 0x11, 0x75, 0x03, 0x11, 0x55, 0x81, 0x11, 0x75, 0x11, 0x55, 0x01, 0x11, 0x54, 0x80, 0x11, 0x75, 0x01, 0x11, 0x54, 0x83, 0x11, 0x75, 0x11, 0x54, 0x11, 0x75, 0x11, 0x54, 0x04, 0x11, 0x75, 0x82, 0x11, 0x54, 0x11, 0x55, 0x11, 0x75, 0x04, 0x11, 0x55, 0x83, 0x11, 0x75, 0x11, 0x55, 0x11, 0x75, 0x11, 0x54, 0x01, 0x11, 0x75, 0x8C, 0x11, 0x74, 0x11, 0x75, 0x11, 0x95, 0x11, 0xB6, 0x19, 0xD7, 0x19, 0xF8, 0x19, 0xD8, 0x21, 0xF8, 0x19, 0xB7, 0x19, 0xB6, 0x19, 0x54, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, + 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x05, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x10, 0x21, 0x31, 0x19, 0x52, 0x11, 0x33, 0x11, 0x75, 0x09, 0xB7, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x85, 0x09, 0xD9, 0x09, 0xD8, 0x01, 0xB8, 0x09, 0xB7, 0x09, 0xD8, 0x09, 0xB7, 0x02, 0x09, 0xB8, 0x87, 0x09, 0xD9, 0x09, 0xB9, 0x01, 0xB8, 0x09, 0xD9, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xB8, 0x09, 0x98, 0x01, 0x11, 0xB8, 0x90, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xB7, 0x09, 0x97, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xF9, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xB8, 0x09, 0x97, 0x11, 0xB6, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x01, 0x20, 0xEE, 0x02, 0x21, 0x0E, 0x81, 0x21, 0x2F, 0x19, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, + 0x81, 0x20, 0xEF, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x0A, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x89, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x8E, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x34, 0x19, 0xF8, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0xFA, 0x01, 0xBA, 0x03, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x81, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0x01, 0xFA, 0x84, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xF8, 0x09, 0xD7, 0x11, 0xD7, 0x05, 0x11, 0xB6, 0x81, 0x11, 0x96, 0x19, 0xB6, 0x01, 0x11, 0x96, 0x02, 0x11, 0xB6, 0x01, 0x11, 0x96, 0x02, 0x11, 0x95, 0x80, 0x11, 0x96, 0x03, 0x11, 0xB6, 0x02, 0x11, 0x96, 0x80, 0x11, 0x95, 0x01, 0x11, 0x96, 0x80, 0x11, 0xB6, 0x02, 0x11, 0x96, 0x82, 0x11, 0xB6, 0x11, 0x96, 0x19, 0xB6, 0x01, 0x11, 0x96, 0x80, 0x11, 0xB6, 0x01, 0x11, 0x96, 0x02, 0x11, 0xB6, 0x80, 0x19, 0xB6, 0x03, 0x11, 0xB6, 0x86, 0x19, 0xB6, 0x11, 0xB6, 0x19, 0xB6, 0x11, + 0x95, 0x11, 0x54, 0x11, 0x53, 0x19, 0x32, 0x01, 0x19, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x84, 0x19, 0x53, 0x11, 0x33, 0x11, 0x54, 0x11, 0x74, 0x19, 0x96, 0x01, 0x19, 0xD7, 0x01, 0x22, 0x17, 0x83, 0x21, 0xD6, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x12, 0x81, 0x21, 0x31, 0x29, 0x31, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x8A, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, + 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8F, 0x21, 0x31, 0x19, 0x32, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xF7, 0x22, 0x38, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x54, 0x09, 0x12, 0x11, 0x32, 0x19, 0x31, 0x21, 0x51, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x29, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x50, 0x29, 0x50, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x52, 0x19, 0x33, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x86, 0x11, 0xB6, 0x11, 0x75, 0x09, 0x33, 0x11, 0x32, 0x11, 0x11, 0x19, 0x30, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x51, 0x19, 0x53, 0x11, 0x54, 0x11, 0x95, 0x02, 0x19, 0xD7, 0x85, 0x11, 0x96, 0x11, 0x54, 0x09, 0x13, 0x11, 0x12, 0x19, 0x33, 0x19, 0x32, 0x03, 0x19, 0x52, 0x03, 0x19, 0x32, 0x02, 0x19, 0x52, 0x80, 0x19, 0x32, 0x01, 0x11, 0x31, 0x80, 0x11, 0x32, 0x01, 0x11, 0x33, 0x8C, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x19, 0xD7, 0x1A, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, + 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x09, 0x21, 0x30, 0x8A, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x22, 0x18, 0x22, 0x19, 0x19, 0xB7, 0x11, 0x55, 0x19, 0x53, 0x21, 0x32, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x8C, 0x21, 0x30, 0x21, 0x11, 0x19, 0x11, 0x11, 0x33, 0x19, 0xB5, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xB6, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x01, 0x19, 0x32, 0x86, 0x11, 0x33, 0x11, 0xD6, 0x11, 0xF7, 0x1A, 0x18, 0x19, 0xB6, 0x11, 0x12, 0x19, 0x12, 0x01, 0x21, 0x11, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x01, 0x2A, 0x17, 0x82, 0x11, 0x74, 0x11, 0x12, 0x11, 0x32, 0x01, 0x19, 0x51, 0x01, 0x19, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x82, 0x21, 0x32, 0x11, 0x12, 0x19, 0x95, 0x01, + 0x19, 0xF8, 0x84, 0x19, 0xD7, 0x11, 0x54, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x51, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x19, 0xB6, 0x22, 0x18, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x33, 0x19, 0x52, 0x19, 0x31, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x87, 0x21, 0x2F, 0x21, 0x0F, 0x19, 0x10, 0x19, 0x30, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x19, 0x94, 0x01, 0x22, 0x16, 0x82, 0x19, 0x94, 0x09, 0x12, 0x11, 0x12, 0x04, 0x19, 0x32, 0x86, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF6, 0x21, 0xF7, 0x11, 0x75, 0x09, 0x12, 0x11, 0x32, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x19, 0x74, 0x19, 0xB6, 0x09, 0xB7, 0x01, 0x09, 0xD9, 0x80, 0x09, 0xDA, 0x01, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x80, 0x09, 0xFA, 0x01, 0x09, 0xF9, 0x86, 0x11, 0xF9, 0x11, + 0xB7, 0x09, 0x76, 0x11, 0x75, 0x11, 0x54, 0x09, 0x33, 0x09, 0x12, 0x01, 0x11, 0x13, 0x02, 0x11, 0x33, 0x80, 0x19, 0x53, 0x09, 0x11, 0x12, 0x02, 0x11, 0x32, 0x80, 0x11, 0x12, 0x06, 0x11, 0x32, 0x01, 0x11, 0x12, 0x80, 0x11, 0x33, 0x01, 0x11, 0x32, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x05, 0x11, 0x12, 0x02, 0x19, 0x33, 0x01, 0x11, 0x32, 0x80, 0x19, 0x32, 0x01, 0x11, 0x12, 0x81, 0x11, 0x32, 0x11, 0x12, 0x05, 0x11, 0x32, 0x01, 0x11, 0x12, 0x03, 0x11, 0x33, 0x81, 0x19, 0x33, 0x11, 0x13, 0x01, 0x19, 0x33, 0x80, 0x11, 0x13, 0x06, 0x11, 0x12, 0x83, 0x08, 0xF2, 0x09, 0x13, 0x11, 0x54, 0x19, 0x96, 0x01, 0x19, 0xD8, 0x86, 0x21, 0xD8, 0x21, 0xD7, 0x19, 0x96, 0x19, 0x54, 0x11, 0x12, 0x19, 0x12, 0x21, 0x32, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x8C, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x11, 0x32, 0x11, 0x34, 0x09, 0x76, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0xD9, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xB7, 0x01, 0x09, 0x96, 0x02, 0x11, 0x96, 0x02, + 0x09, 0x97, 0x85, 0x11, 0xF9, 0x09, 0xD9, 0x12, 0x19, 0x09, 0xD8, 0x09, 0x97, 0x09, 0x56, 0x01, 0x11, 0x76, 0x86, 0x19, 0xB6, 0x19, 0x96, 0x11, 0x55, 0x09, 0x55, 0x09, 0x76, 0x09, 0x97, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x8A, 0x09, 0xD8, 0x09, 0x97, 0x09, 0x55, 0x11, 0x54, 0x09, 0x12, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x20, 0xEE, 0x02, 0x21, 0x0E, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x0E, 0x84, 0x20, 0xEE, 0x21, 0x0E, 0x19, 0x10, 0x19, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x20, 0xEF, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, + 0x01, 0x29, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x87, 0x21, 0x11, 0x19, 0x11, 0x19, 0x33, 0x09, 0x34, 0x1A, 0x19, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x04, 0x01, 0xDA, 0x06, 0x01, 0xFA, 0x81, 0x01, 0xF9, 0x01, 0xD9, 0x02, 0x12, 0x19, 0x01, 0x1A, 0x18, 0x80, 0x1A, 0x39, 0x01, 0x1A, 0x18, 0x81, 0x22, 0x18, 0x1A, 0x18, 0x03, 0x22, 0x18, 0x85, 0x22, 0x39, 0x1A, 0x18, 0x22, 0x39, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x02, 0x22, 0x38, 0x81, 0x1A, 0x18, 0x22, 0x39, 0x03, 0x22, 0x18, 0x84, 0x1A, 0x18, 0x22, 0x19, 0x1A, 0x18, 0x22, 0x18, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x80, 0x22, 0x19, 0x01, 0x22, 0x18, 0x80, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x04, 0x1A, 0x18, 0x81, 0x19, 0xF8, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x84, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x85, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x81, 0x19, 0x33, + 0x11, 0x54, 0x01, 0x11, 0x74, 0x80, 0x19, 0x95, 0x01, 0x19, 0x94, 0x81, 0x19, 0x74, 0x19, 0x53, 0x01, 0x19, 0x32, 0x01, 0x19, 0x11, 0x86, 0x21, 0x31, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x30, 0x05, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x92, 0x21, 0x31, 0x19, 0x31, 0x19, 0x12, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xD6, 0x09, 0x33, 0x11, 0x12, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x21, + 0x10, 0x21, 0x30, 0x21, 0x51, 0x21, 0x32, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x84, 0x11, 0xB6, 0x11, 0x54, 0x09, 0x32, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x50, 0x80, 0x21, 0x4F, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x06, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x84, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x75, 0x19, 0x96, 0x02, 0x19, 0xD7, 0x85, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x13, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x52, 0x01, 0x19, 0x32, 0x86, 0x19, 0x31, 0x11, 0x11, 0x19, 0x32, 0x11, 0x11, 0x11, 0x31, 0x19, 0x52, 0x19, 0x32, 0x01, 0x11, 0x32, 0x8D, 0x11, 0x33, 0x11, 0x53, 0x11, 0x54, 0x09, 0x54, 0x11, 0x95, 0x19, 0xD7, 0x1A, 0x18, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x09, 0x21, 0x30, 0x88, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x22, 0x18, 0x22, 0x19, 0x19, 0xB7, 0x11, 0x55, 0x19, 0x33, 0x19, 0x11, 0x03, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x19, 0xB5, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xB6, 0x11, 0x12, 0x19, 0x11, + 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x8B, 0x09, 0x33, 0x11, 0xD6, 0x11, 0xF7, 0x19, 0xF7, 0x19, 0xD6, 0x08, 0xF2, 0x19, 0x12, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x88, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x75, 0x01, 0x29, 0xF7, 0x85, 0x19, 0x74, 0x08, 0xF2, 0x19, 0x32, 0x19, 0x52, 0x19, 0x51, 0x19, 0x30, 0x01, 0x21, 0x30, 0x90, 0x21, 0x50, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x21, 0x31, 0x19, 0x12, 0x11, 0x74, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xF7, 0x11, 0x54, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x19, 0xB6, 0x19, 0xD7, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x01, 0x11, 0x53, 0x81, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, + 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x04, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x87, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x30, 0x19, 0x51, 0x11, 0x52, 0x11, 0x32, 0x19, 0x94, 0x01, 0x21, 0xF6, 0x82, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x12, 0x03, 0x19, 0x32, 0x87, 0x19, 0x52, 0x11, 0x32, 0x19, 0x95, 0x21, 0xD6, 0x21, 0xF7, 0x19, 0x95, 0x09, 0x12, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x88, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0x95, 0x19, 0xB7, 0x11, 0xD8, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0xB9, 0x02, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x85, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x75, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x01, 0x11, 0x12, 0x81, 0x19, 0x32, 0x19, 0x12, 0x01, 0x19, 0x32, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x07, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x03, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x07, 0x19, 0x11, 0x80, 0x19, 0x31, 0x0A, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x02, 0x19, 0x31, 0x02, 0x19, 0x11, 0x04, 0x19, 0x12, 0x83, + 0x18, 0xF1, 0x19, 0x11, 0x19, 0x12, 0x18, 0xF1, 0x01, 0x19, 0x11, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x01, 0x11, 0x11, 0x8D, 0x11, 0x12, 0x09, 0x13, 0x11, 0x34, 0x11, 0x55, 0x19, 0xB7, 0x21, 0xD7, 0x19, 0xD7, 0x21, 0xD7, 0x19, 0x96, 0x11, 0x34, 0x11, 0x13, 0x19, 0x12, 0x21, 0x32, 0x21, 0x31, 0x13, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8F, 0x19, 0x31, 0x19, 0x32, 0x11, 0x13, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xB8, 0x09, 0xD8, 0x11, 0xD8, 0x09, 0x96, 0x01, 0x34, 0x09, 0x34, 0x11, 0x74, 0x09, 0x54, 0x09, 0x34, 0x11, 0x55, 0x01, 0x09, 0x55, 0x96, 0x09, 0x56, 0x09, 0x97, 0x11, 0xF8, 0x11, 0xD8, 0x09, 0xB7, 0x09, 0x55, 0x00, 0xF4, 0x08, 0xF3, 0x11, 0x13, 0x11, 0x54, 0x11, 0x13, 0x11, 0x33, 0x09, 0x12, 0x09, 0x13, 0x09, 0x55, 0x09, 0xB7, 0x09, 0xB8, 0x09, 0xD8, 0x11, 0xD8, 0x09, 0x76, 0x09, 0x34, 0x09, 0x12, 0x11, 0x11, 0x01, 0x19, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x0E, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x84, 0x21, 0x0F, 0x21, 0x0E, 0x21, 0x0F, 0x21, 0x0E, 0x20, 0xEE, 0x02, 0x21, + 0x0E, 0x80, 0x19, 0x30, 0x01, 0x19, 0x10, 0x01, 0x19, 0x0F, 0x82, 0x21, 0x0F, 0x19, 0x0F, 0x19, 0x0E, 0x01, 0x21, 0x0E, 0x06, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x08, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x0C, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x88, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x11, 0x55, 0x1A, 0x39, 0x09, 0xF9, 0x01, 0xB9, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0x01, 0xFB, 0x04, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x81, 0x01, 0xD9, 0x01, 0xD8, 0x01, 0x12, 0x19, 0x80, 0x12, 0x18, 0x01, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x82, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xF7, 0x02, 0x19, 0xF8, 0x82, 0x21, 0xF8, 0x19, 0xF8, 0x21, 0xF8, 0x01, 0x19, 0xF8, 0x03, 0x1A, 0x18, 0x06, 0x19, 0xF8, 0x80, 0x1A, 0x18, 0x07, 0x19, 0xF8, 0x01, 0x19, 0xD8, 0x08, 0x19, 0xF8, 0x03, 0x1A, 0x18, 0x81, 0x19, 0xF8, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x83, 0x19, + 0xD6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x51, 0x05, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x87, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x19, 0x52, 0x19, 0x53, 0x03, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, + 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x31, 0x01, 0x19, 0x12, 0x83, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xF7, 0x01, 0x22, 0x17, 0x84, 0x19, 0xD6, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x19, 0x30, 0x01, 0x21, 0x50, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x54, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x89, 0x11, 0xB6, 0x09, 0x53, 0x09, 0x12, 0x11, 0x11, 0x19, 0x30, 0x21, 0x51, 0x29, 0x70, 0x29, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x4F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8C, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x19, 0xB6, 0x19, 0xD7, 0x21, 0xF8, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x55, 0x11, 0x34, 0x11, 0x33, 0x09, 0x12, 0x11, 0x12, 0x01, 0x11, 0x32, 0x01, 0x19, 0x52, 0x01, 0x19, 0x32, 0x81, 0x11, 0x12, 0x11, 0x32, 0x01, 0x19, 0x53, 0x81, 0x11, 0x32, 0x11, 0x53, 0x01, 0x11, 0x54, 0x82, 0x11, 0x75, + 0x11, 0x95, 0x19, 0xD7, 0x01, 0x22, 0x18, 0x85, 0x19, 0xF7, 0x11, 0x33, 0x10, 0xF2, 0x19, 0x12, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x89, 0x11, 0x12, 0x11, 0x54, 0x22, 0x39, 0x21, 0xF8, 0x19, 0xB7, 0x11, 0x54, 0x19, 0x53, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x89, 0x19, 0x10, 0x19, 0x31, 0x19, 0x53, 0x11, 0xB5, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0x95, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x01, 0x21, 0x31, 0x89, 0x19, 0x32, 0x11, 0x32, 0x09, 0x33, 0x11, 0xD7, 0x11, 0xF8, 0x1A, 0x18, 0x11, 0xB6, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x8B, 0x29, 0x30, 0x29, + 0x2F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x31, 0x01, 0x19, 0x32, 0x8A, 0x11, 0x33, 0x19, 0x95, 0x2A, 0x17, 0x21, 0xF7, 0x11, 0x54, 0x08, 0xF2, 0x11, 0x12, 0x19, 0x52, 0x19, 0x51, 0x21, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x11, 0x54, 0x22, 0x17, 0x19, 0xF8, 0x19, 0xF7, 0x09, 0x74, 0x09, 0x13, 0x11, 0x12, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x29, 0x51, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x01, 0x21, 0xF7, 0x85, 0x19, 0x95, 0x09, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x03, 0x21, 0x10, 0x87, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x19, 0x31, 0x01, 0x11, 0x32, + 0x80, 0x19, 0x94, 0x01, 0x21, 0xF6, 0x84, 0x19, 0x94, 0x09, 0x12, 0x11, 0x12, 0x19, 0x32, 0x19, 0x11, 0x02, 0x19, 0x32, 0x88, 0x11, 0x33, 0x19, 0xB5, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x95, 0x09, 0x12, 0x11, 0x32, 0x19, 0x52, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x87, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x19, 0x95, 0x19, 0xD7, 0x1A, 0x19, 0x11, 0xF9, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x86, 0x11, 0xF9, 0x12, 0x19, 0x11, 0xF8, 0x11, 0x96, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x32, 0x81, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x04, 0x21, 0x31, 0x82, 0x19, 0x10, 0x21, 0x31, 0x21, 0x11, 0x08, 0x21, 0x31, 0x81, 0x19, 0x10, 0x19, 0x31, 0x03, 0x21, 0x31, 0x80, 0x19, 0x10, 0x04, 0x21, 0x31, 0x80, 0x21, 0x10, 0x04, 0x21, 0x31, 0x80, 0x21, 0x11, 0x03, 0x21, 0x31, 0x83, 0x19, 0x31, 0x19, 0x11, 0x21, 0x10, 0x21, 0x11, 0x01, 0x21, 0x10, 0x85, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x19, 0x30, 0x21, 0x51, 0x21, 0x30, 0x01, 0x19, 0x10, 0x83, 0x19, 0x30, 0x19, 0x10, 0x19, 0x31, 0x19, 0x11, 0x02, 0x21, 0x31, 0x80, 0x19, 0x11, 0x03, 0x21, 0x11, 0x82, 0x21, 0x31, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x81, 0x21, 0x51, 0x19, 0x11, 0x01, 0x11, 0x12, 0x8B, 0x11, 0x34, 0x11, 0x55, 0x19, 0x96, 0x21, 0xD7, 0x21, 0xF8, 0x21, 0xD7, 0x19, 0xD7, 0x11, 0x34, 0x08, 0xF2, 0x19, 0x12, 0x21, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, + 0x07, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x89, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x34, 0x11, 0x96, 0x11, 0xD7, 0x09, 0xD8, 0x01, 0x09, 0xB7, 0x87, 0x09, 0x35, 0x00, 0xF3, 0x08, 0xF2, 0x11, 0x12, 0x09, 0x12, 0x11, 0x13, 0x11, 0x33, 0x09, 0x13, 0x01, 0x09, 0x34, 0x89, 0x09, 0x96, 0x11, 0xB7, 0x11, 0xF8, 0x11, 0x96, 0x09, 0x34, 0x08, 0xD3, 0x08, 0xF2, 0x10, 0xF2, 0x19, 0x32, 0x11, 0x32, 0x01, 0x08, 0xF1, 0x8D, 0x08, 0xF2, 0x09, 0x54, 0x11, 0xD7, 0x11, 0xF8, 0x11, 0xD8, 0x09, 0xB7, 0x09, 0x75, 0x09, 0x13, 0x11, 0x32, 0x11, 0x11, 0x19, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x20, 0xEF, 0x01, 0x20, 0xEE, 0x01, 0x21, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x0E, 0x20, 0xEE, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x10, 0x03, 0x19, 0x0F, 0x80, 0x21, 0x0E, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, + 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x86, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x11, 0x19, 0x31, 0x11, 0x12, 0x11, 0x55, 0x1A, 0x19, 0x01, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x02, 0x01, 0xDA, 0x82, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x85, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xB8, 0x09, 0xD7, 0x09, 0xB6, 0x01, 0x11, 0xB6, 0x81, 0x11, 0x96, 0x11, 0xB6, 0x01, 0x11, 0x96, 0x01, 0x19, 0xB6, 0x80, 0x11, 0x95, 0x03, 0x19, 0x96, 0x81, 0x19, 0xB6, 0x19, 0x96, 0x03, 0x19, 0xB6, 0x80, 0x11, 0xB5, 0x05, 0x19, 0xB6, 0x01, 0x11, 0xB6, 0x01, 0x19, 0xB6, 0x80, 0x19, 0x96, 0x03, 0x19, 0xB6, 0x01, 0x19, 0x96, 0x82, 0x19, 0xB6, 0x19, 0x96, 0x19, 0xB6, 0x01, 0x19, 0x96, 0x02, 0x19, 0xB6, 0x80, 0x11, 0x96, 0x04, + 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x84, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x33, 0x11, 0x11, 0x01, 0x19, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x31, 0x89, 0x19, 0x31, 0x19, 0x32, 0x19, 0x31, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x86, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x86, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x08, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, + 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x28, 0xF0, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x0A, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x11, 0x01, 0x19, 0x12, 0x89, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x17, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x32, 0x19, 0x12, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x31, 0x19, 0x32, 0x01, 0x11, 0x33, 0x88, 0x19, 0xD6, 0x1A, 0x17, 0x19, 0xF7, 0x11, 0xB6, 0x11, 0x53, 0x09, 0x12, 0x11, 0x11, 0x19, 0x30, 0x21, 0x51, 0x01, 0x29, 0x50, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x05, 0x29, 0x10, 0x86, 0x29, 0x30, 0x29, 0x10, 0x20, 0xEF, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x8D, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB7, 0x19, 0xD7, 0x21, 0xD7, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x09, 0x33, 0x02, 0x09, 0x12, 0x02, 0x11, 0x32, 0x81, 0x11, 0x12, 0x11, 0x32, 0x02, 0x11, 0x33, 0x80, 0x11, 0x53, 0x01, 0x11, 0x54, 0x88, 0x11, 0x75, 0x11, 0xB6, 0x19, 0xD7, 0x1A, 0x18, 0x22, 0x18, 0x22, 0x17, 0x19, 0x95, 0x11, 0x12, 0x10, 0xF1, 0x01, + 0x19, 0x11, 0x02, 0x21, 0x10, 0x82, 0x29, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x12, 0x09, 0x13, 0x21, 0xD7, 0x22, 0x39, 0x21, 0xF8, 0x19, 0xB6, 0x19, 0x54, 0x19, 0x52, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x10, 0x87, 0x21, 0x31, 0x19, 0x31, 0x11, 0x53, 0x11, 0x95, 0x19, 0xF7, 0x22, 0x18, 0x11, 0x95, 0x11, 0x12, 0x01, 0x19, 0x11, 0x8D, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0xD6, 0x11, 0xF8, 0x1A, 0x18, 0x19, 0xB6, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x11, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x8E, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, + 0x19, 0x75, 0x2A, 0x17, 0x29, 0xF7, 0x19, 0x74, 0x08, 0xF2, 0x11, 0x12, 0x19, 0x32, 0x21, 0x51, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x01, 0x19, 0xF8, 0x87, 0x11, 0xB6, 0x09, 0x34, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x51, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x50, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x88, 0x21, 0x10, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0x75, 0x19, 0x96, 0x01, 0x21, 0xF7, 0x85, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x87, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0x94, 0x01, 0x21, 0xF6, 0x82, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x12, 0x04, 0x19, 0x32, 0x81, 0x11, 0x33, 0x19, 0xB5, 0x01, 0x21, 0xD6, 0x84, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x32, 0x19, + 0x52, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x93, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x19, 0x54, 0x19, 0x95, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x02, 0x19, 0x31, 0x80, 0x19, 0x30, 0x02, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0A, 0x21, 0x30, 0x02, 0x21, 0x10, 0x0D, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x11, 0x12, 0x8D, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xD7, 0x21, 0xF8, 0x21, 0xF7, 0x19, 0x96, 0x11, 0x34, 0x08, 0xF2, 0x19, 0x12, 0x21, 0x52, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x07, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, + 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x89, 0x19, 0x11, 0x11, 0x11, 0x11, 0x13, 0x19, 0x96, 0x11, 0xD7, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x09, 0x34, 0x09, 0x12, 0x01, 0x11, 0x12, 0x01, 0x19, 0x12, 0x80, 0x11, 0x12, 0x01, 0x11, 0x33, 0x87, 0x09, 0x33, 0x11, 0x96, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x14, 0x08, 0xF2, 0x11, 0x12, 0x04, 0x11, 0x11, 0x8A, 0x09, 0x12, 0x09, 0x33, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0xD7, 0x09, 0x54, 0x08, 0xF2, 0x10, 0xF1, 0x11, 0x10, 0x19, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x0E, 0x21, 0x0F, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x20, 0xEE, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x02, 0x19, 0x10, 0x80, 0x19, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x87, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, + 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x87, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x09, 0x34, 0x1A, 0x19, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x86, 0x01, 0xDB, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xFB, 0x03, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x89, 0x01, 0xD9, 0x01, 0xB8, 0x09, 0x76, 0x09, 0x34, 0x09, 0x33, 0x11, 0x33, 0x11, 0x53, 0x11, 0x54, 0x11, 0x53, 0x11, 0x33, 0x02, 0x11, 0x53, 0x82, 0x19, 0x74, 0x19, 0x33, 0x11, 0x33, 0x03, 0x19, 0x33, 0x85, 0x19, 0x53, 0x11, 0x53, 0x11, 0x52, 0x11, 0x53, 0x19, 0x53, 0x11, 0x53, 0x03, 0x11, 0x33, 0x02, 0x11, 0x53, 0x80, 0x11, 0x33, 0x05, 0x11, 0x53, 0x80, 0x11, 0x33, 0x01, 0x11, 0x53, 0x80, 0x11, 0x33, 0x01, 0x11, 0x53, 0x01, 0x11, 0x33, 0x81, 0x11, 0x53, 0x11, 0x33, 0x05, 0x11, 0x53, 0x82, 0x11, 0x54, 0x19, 0x95, 0x19, 0xF6, 0x01, 0x22, 0x17, 0x89, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x82, + 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x21, 0x31, 0x82, 0x19, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x05, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x89, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x05, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x0A, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xF7, + 0x21, 0xF6, 0x19, 0x94, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x1A, 0x17, 0x11, 0xD6, 0x11, 0xB5, 0x11, 0x54, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x29, 0x30, 0x05, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0x96, 0x19, 0xB7, 0x02, 0x19, 0xD7, 0x82, 0x19, 0xB6, 0x11, 0x95, 0x09, 0x54, 0x03, 0x09, 0x33, 0x80, 0x11, 0x53, 0x02, 0x11, 0x33, 0x81, 0x09, 0x33, 0x11, 0x54, 0x01, 0x11, 0x75, 0x8B, 0x11, 0xB6, 0x19, 0xD7, 0x1A, 0x17, 0x1A, 0x18, 0x22, 0x18, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x10, 0xF1, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x8D, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB6, 0x2A, 0x58, 0x22, 0x18, 0x19, 0xB7, 0x11, 0x55, + 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x97, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0xB5, 0x1A, 0x18, 0x22, 0x18, 0x11, 0x95, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x21, 0x52, 0x11, 0x32, 0x09, 0x33, 0x11, 0xD6, 0x11, 0xF8, 0x1A, 0x18, 0x19, 0xD6, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x8B, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x52, 0x19, 0x32, 0x11, 0x13, 0x19, 0x75, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0x74, 0x11, 0x12, 0x01, 0x19, 0x32, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x92, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x09, 0x33, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0xB6, 0x09, 0x34, 0x09, 0x13, 0x19, 0x53, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x21, 0x30, 0x21, 0x2F, + 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x86, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x29, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x52, 0x81, 0x11, 0x53, 0x19, 0x95, 0x01, 0x21, 0xF6, 0x81, 0x19, 0xB5, 0x09, 0x12, 0x01, 0x11, 0x12, 0x81, 0x19, 0x11, 0x19, 0x32, 0x01, 0x19, 0x52, 0x8C, 0x11, 0x53, 0x19, 0xB5, 0x21, 0xD6, 0x22, 0x17, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x86, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x19, 0x74, 0x19, 0x95, 0x11, 0x75, 0x02, 0x11, 0x54, 0x81, 0x11, 0x53, 0x19, 0x52, 0x02, 0x19, 0x31, 0x01, 0x19, 0x10, 0x01, 0x19, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, + 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x05, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x50, 0x07, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x50, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8F, 0x19, 0x32, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x21, 0xF7, 0x19, 0xD7, 0x19, 0x96, 0x11, 0x54, 0x08, 0xF2, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x11, 0x19, 0x11, 0x10, 0xF2, 0x11, 0x54, 0x01, 0x11, 0xB7, 0x94, 0x11, 0xD8, 0x11, 0xB7, 0x09, 0x34, 0x11, 0x12, 0x11, 0x11, 0x19, + 0x11, 0x19, 0x32, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x09, 0x33, 0x19, 0xD6, 0x22, 0x38, 0x19, 0xD7, 0x11, 0x95, 0x09, 0x13, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x31, 0x11, 0x11, 0x11, 0x53, 0x11, 0xB6, 0x11, 0xD8, 0x1A, 0x18, 0x11, 0xD7, 0x09, 0x33, 0x08, 0xF1, 0x11, 0x11, 0x19, 0x30, 0x18, 0xEF, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x0E, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x0E, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x19, 0x74, 0x11, 0x53, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x0B, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, + 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x88, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, 0x54, 0x1A, 0x19, 0x09, 0xF9, 0x01, 0xDA, 0x01, 0xBA, 0x07, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x83, 0x09, 0xF9, 0x01, 0x97, 0x09, 0x75, 0x09, 0x33, 0x01, 0x11, 0x32, 0x01, 0x11, 0x12, 0x01, 0x19, 0x12, 0x01, 0x11, 0x12, 0x80, 0x19, 0x32, 0x03, 0x19, 0x12, 0x02, 0x19, 0x11, 0x06, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x19, 0x12, 0x03, 0x19, 0x32, 0x06, 0x19, 0x31, 0x80, 0x19, 0x11, 0x03, 0x19, 0x32, 0x87, 0x19, 0x31, 0x11, 0x11, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x11, 0x11, 0x19, 0x32, 0x11, 0x12, 0x02, 0x11, 0x32, 0x82, 0x11, 0x33, 0x11, 0x74, 0x19, 0xF6, 0x01, 0x21, 0xF7, 0x84, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x80, 0x19, 0x10, 0x04, + 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x09, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x07, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x0A, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x8D, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x94, 0x11, 0xD6, 0x19, 0xD7, 0x1A, 0x17, 0x21, 0xF6, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x19, 0x10, 0x29, 0x51, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x8F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x17, 0x11, 0xD6, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, + 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x85, 0x28, 0xF0, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x85, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x19, 0x55, 0x11, 0x75, 0x19, 0xB6, 0x01, 0x19, 0xD7, 0x84, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x75, 0x04, 0x09, 0x54, 0x84, 0x09, 0x34, 0x11, 0x55, 0x11, 0x75, 0x11, 0x96, 0x19, 0xD7, 0x01, 0x19, 0xF8, 0x87, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x0A, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x95, 0x2A, 0x58, 0x22, 0x18, 0x19, 0xD7, 0x19, 0x96, 0x11, 0x33, 0x19, 0x33, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x87, 0x19, 0x30, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x32, 0x02, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x87, 0x09, 0x33, 0x11, 0xD6, 0x11, 0xF8, 0x19, 0xF8, 0x19, 0xD6, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x11, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, + 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x85, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x8A, 0x11, 0x33, 0x19, 0x75, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x08, 0xF2, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x09, 0x33, 0x11, 0x95, 0x02, 0x19, 0xF8, 0x85, 0x11, 0x96, 0x09, 0x34, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x82, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x53, 0x01, 0x19, 0x32, 0x02, 0x21, 0x31, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, + 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x52, 0x85, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF6, 0x21, 0xF7, 0x19, 0xB5, 0x09, 0x12, 0x01, 0x11, 0x12, 0x01, 0x19, 0x32, 0x8B, 0x19, 0x52, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x21, 0xF6, 0x22, 0x17, 0x19, 0xD6, 0x09, 0x12, 0x11, 0x12, 0x19, 0x32, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x01, 0x11, 0x32, 0x81, 0x19, 0x33, 0x19, 0x53, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x19, 0x10, 0x82, 0x21, 0x30, 0x19, 0x10, 0x21, 0x10, 0x01, 0x19, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x07, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, + 0x10, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x86, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x19, 0x96, 0x01, 0x19, 0xD7, 0x85, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x34, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x8D, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x10, 0xF1, 0x11, 0x33, 0x19, 0xB7, 0x19, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x33, 0x11, 0x12, 0x04, 0x19, 0x11, 0x97, 0x19, 0x12, 0x11, 0x32, 0x09, 0x33, 0x19, 0xB6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0x95, 0x09, 0x13, 0x10, 0xF2, 0x19, 0x11, 0x19, 0x10, 0x19, 0x30, 0x19, 0x10, 0x19, 0x30, 0x19, 0x10, 0x11, 0x11, 0x11, 0x33, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xD8, 0x11, 0xB7, 0x09, 0x33, 0x08, 0xF1, 0x19, 0x11, 0x01, 0x19, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, + 0x07, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x22, 0x17, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x30, 0x19, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x89, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x1A, 0x19, 0x09, 0xD9, 0x04, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x82, 0x09, 0xF9, 0x09, 0xB7, 0x09, 0x75, 0x01, 0x11, 0x53, 0x01, 0x19, 0x32, 0x82, 0x19, 0x12, 0x19, 0x32, 0x19, 0x11, 0x01, 0x19, 0x31, 0x05, 0x19, 0x11, 0x83, 0x19, 0x31, 0x19, 0x30, 0x19, 0x31, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x21, 0x31, 0x0A, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, + 0x19, 0x31, 0x81, 0x21, 0x31, 0x19, 0x11, 0x0B, 0x19, 0x31, 0x02, 0x19, 0x32, 0x8C, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x19, 0xB5, 0x21, 0xF7, 0x19, 0xF6, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x51, 0x02, 0x21, 0x30, 0x02, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x07, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x07, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x06, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, + 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x02, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x8D, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x53, 0x11, 0x74, 0x11, 0x95, 0x11, 0xD6, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x52, 0x01, 0x11, 0x33, 0x87, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x07, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x32, 0x19, 0x12, 0x19, 0x33, 0x11, 0x34, 0x19, 0x55, 0x11, 0x75, 0x01, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x82, 0x11, 0xD7, 0x11, 0xD6, 0x19, 0xD6, 0x03, 0x11, 0xD6, 0x80, 0x11, 0xB6, 0x02, 0x19, 0xD7, 0x81, 0x19, 0xF7, 0x19, 0xF8, 0x01, 0x19, 0xD7, 0x86, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x19, 0x33, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, + 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x90, 0x21, 0x11, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x2A, 0x38, 0x2A, 0x18, 0x19, 0xB7, 0x19, 0x96, 0x19, 0x54, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x96, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x51, 0x19, 0x51, 0x11, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x22, 0x38, 0x19, 0xF7, 0x11, 0x75, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD7, 0x01, 0x1A, 0x18, 0x86, 0x19, 0xB6, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x11, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x08, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0x95, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0x75, 0x11, 0x12, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x01, + 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x8E, 0x21, 0x30, 0x21, 0x31, 0x19, 0x52, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF8, 0x22, 0x18, 0x11, 0x75, 0x09, 0x33, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x21, 0x71, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x91, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x09, 0x12, 0x19, 0x95, 0x21, 0xF6, 0x22, 0x17, 0x19, 0xB6, 0x09, 0x12, 0x11, 0x12, 0x02, 0x19, 0x32, 0x8B, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x19, 0x94, 0x21, 0xF6, 0x19, 0xF6, 0x19, 0xD6, 0x09, 0x13, 0x11, 0x12, 0x19, 0x32, 0x19, 0x51, 0x21, 0x51, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, + 0x50, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x19, 0x30, 0x01, 0x19, 0x31, 0x80, 0x19, 0x52, 0x01, 0x19, 0x32, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x50, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x20, 0xEF, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8D, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x11, 0x96, 0x19, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x34, 0x19, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x4F, 0x02, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x21, + 0x0F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8A, 0x19, 0x11, 0x18, 0xF1, 0x19, 0x53, 0x19, 0xD7, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xB6, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x19, 0x11, 0x87, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x22, 0x17, 0x19, 0xD7, 0x19, 0x95, 0x09, 0x13, 0x10, 0xF2, 0x01, 0x19, 0x31, 0x02, 0x19, 0x10, 0x83, 0x19, 0x30, 0x19, 0x31, 0x11, 0x53, 0x11, 0xB6, 0x01, 0x19, 0xF8, 0x86, 0x19, 0xD7, 0x09, 0x13, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x19, 0x0F, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x22, 0x38, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x10, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, + 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x09, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x87, 0x19, 0x31, 0x19, 0x32, 0x11, 0x34, 0x1A, 0x18, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x06, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x85, 0x01, 0xF9, 0x09, 0xD9, 0x09, 0xB7, 0x09, 0x75, 0x09, 0x33, 0x11, 0x32, 0x01, 0x19, 0x32, 0x05, 0x19, 0x31, 0x81, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x11, 0x07, 0x21, 0x31, 0x80, 0x19, 0x31, 0x13, 0x21, 0x31, 0x82, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x05, 0x19, 0x31, 0x02, 0x19, 0x32, 0x83, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB5, 0x01, 0x21, 0xF7, 0x88, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x29, 0x50, 0x03, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, + 0x2F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x0A, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0D, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x84, 0x19, 0x31, 0x19, 0x32, 0x19, 0x73, 0x11, 0x74, 0x11, 0xB6, 0x01, 0x19, 0xF7, 0x9A, 0x19, 0xB6, 0x11, 0x54, 0x19, 0x32, 0x19, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x06, 0x29, 0x2F, 0x81, 0x29, 0x30, + 0x29, 0x10, 0x01, 0x29, 0x30, 0x04, 0x29, 0x10, 0x88, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x32, 0x81, 0x19, 0x33, 0x11, 0x54, 0x02, 0x11, 0x75, 0x86, 0x11, 0xB6, 0x11, 0xD6, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF7, 0x1A, 0x17, 0x22, 0x18, 0x01, 0x1A, 0x17, 0x80, 0x19, 0xF7, 0x02, 0x19, 0xD7, 0x89, 0x19, 0xB6, 0x19, 0xB7, 0x11, 0x95, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x19, 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x94, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x29, 0x31, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x22, 0x17, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x96, 0x11, 0x34, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x50, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x51, 0x19, 0x31, 0x11, 0x32, 0x09, 0x33, 0x21, 0xF7, 0x22, 0x38, 0x19, 0xD7, 0x11, 0x75, 0x19, 0x33, 0x19, 0x31, 0x01, 0x19, 0x11, 0x8A, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x33, 0x11, 0xB6, 0x19, 0xF8, 0x1A, 0x18, 0x19, 0xD6, 0x08, 0xF2, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x29, 0x0F, 0x21, + 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x33, 0x19, 0x75, 0x2A, 0x18, 0x21, 0xF7, 0x19, 0x95, 0x08, 0xF2, 0x19, 0x33, 0x21, 0x52, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x92, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x52, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xF7, 0x21, 0xF8, 0x19, 0xF7, 0x11, 0x75, 0x09, 0x33, 0x11, 0x33, 0x19, 0x32, 0x21, 0x52, 0x21, 0x51, 0x19, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x31, 0x19, 0x52, 0x19, 0x32, 0x11, 0x53, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x19, 0x53, 0x11, 0x12, 0x19, 0x32, 0x21, 0x52, 0x01, 0x21, 0x31, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, + 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x8A, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x19, 0x95, 0x21, 0xF6, 0x21, 0xF7, 0x21, 0xD6, 0x09, 0x13, 0x11, 0x12, 0x02, 0x19, 0x32, 0x84, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x19, 0x94, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x84, 0x11, 0x34, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x83, 0x29, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x83, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, + 0x10, 0x80, 0x21, 0x10, 0x07, 0x21, 0x30, 0x90, 0x21, 0x50, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xD7, 0x22, 0x18, 0x22, 0x17, 0x19, 0x96, 0x11, 0x54, 0x11, 0x13, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x87, 0x19, 0x10, 0x19, 0x11, 0x11, 0x33, 0x19, 0xD7, 0x11, 0xD7, 0x11, 0xB7, 0x19, 0xB6, 0x11, 0x33, 0x01, 0x19, 0x11, 0x02, 0x21, 0x10, 0x8B, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x22, 0x17, 0x19, 0xD7, 0x11, 0x95, 0x09, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x10, 0x19, 0x30, 0x19, 0x31, 0x11, 0x53, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF8, 0x19, 0xD7, 0x09, 0x33, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x01, + 0x19, 0x0F, 0x0D, 0x21, 0x0F, 0x01, 0x19, 0xF7, 0x83, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x32, 0x82, 0x19, 0x31, 0x19, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x8E, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x54, 0x1A, 0x18, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x03, 0x01, 0xFA, 0x01, 0x01, 0xF9, 0x85, 0x09, 0xD9, 0x09, 0xB7, 0x11, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x21, 0x51, 0x19, 0x31, 0x05, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x19, + 0x31, 0x81, 0x21, 0x31, 0x21, 0x51, 0x0D, 0x21, 0x31, 0x81, 0x19, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x03, 0x21, 0x31, 0x01, 0x19, 0x31, 0x83, 0x21, 0x31, 0x21, 0x51, 0x19, 0x31, 0x19, 0x52, 0x02, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x11, 0x32, 0x01, 0x11, 0x33, 0x89, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x08, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x07, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x04, 0x29, 0x10, + 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x11, 0xD7, 0x1A, 0x17, 0x19, 0xD7, 0x11, 0x54, 0x19, 0x53, 0x19, 0x31, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x8E, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x32, 0x11, 0x12, 0x11, 0x53, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x19, 0x31, 0x02, 0x21, 0x31, 0x83, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x32, 0x87, 0x19, 0x33, 0x19, 0x53, 0x19, 0x54, 0x19, 0x95, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x17, 0x02, 0x1A, 0x17, 0x83, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0xD6, 0x01, 0x19, 0xB6, 0x85, 0x19, 0xB5, 0x19, 0x95, 0x11, 0x54, 0x11, 0x53, 0x11, 0x32, 0x19, 0x12, + 0x01, 0x19, 0x11, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x90, 0x21, 0x30, 0x29, 0x51, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x19, 0xD6, 0x22, 0x38, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x34, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x93, 0x29, 0x4F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x31, 0x21, 0x51, 0x19, 0x51, 0x11, 0x32, 0x09, 0x12, 0x11, 0x95, 0x22, 0x18, 0x1A, 0x18, 0x19, 0xB6, 0x11, 0x54, 0x19, 0x33, 0x19, 0x31, 0x01, 0x21, 0x11, 0x8B, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x11, 0x33, 0x11, 0xD6, 0x11, 0xF7, 0x19, 0xF8, 0x19, 0xD6, 0x08, 0xF2, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, + 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x19, 0x10, 0x01, 0x19, 0x32, 0x88, 0x11, 0x33, 0x19, 0x95, 0x2A, 0x18, 0x22, 0x17, 0x19, 0x95, 0x08, 0xF2, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x10, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x51, 0x8A, 0x19, 0x32, 0x11, 0x12, 0x11, 0x13, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xD7, 0x22, 0x18, 0x19, 0xD6, 0x09, 0x74, 0x09, 0x33, 0x09, 0x12, 0x01, 0x19, 0x52, 0x82, 0x21, 0x51, 0x21, 0x30, 0x19, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x94, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x84, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x84, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x19, 0x11, 0x81, 0x11, 0x32, 0x19, 0x95, 0x01, 0x21, 0xF7, 0x84, 0x19, 0xB6, 0x09, 0x13, 0x11, 0x13, 0x19, 0x32, 0x19, 0x52, 0x02, 0x19, 0x32, 0x89, 0x11, 0x32, 0x19, + 0x74, 0x21, 0xD6, 0x19, 0xD6, 0x19, 0xF6, 0x11, 0x75, 0x09, 0x12, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x50, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x50, 0x8A, 0x19, 0x30, 0x11, 0x10, 0x11, 0x31, 0x11, 0x73, 0x11, 0x74, 0x19, 0xD6, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x54, 0x01, 0x11, 0x12, 0x82, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x85, 0x29, 0x30, + 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x89, 0x19, 0x11, 0x19, 0x12, 0x19, 0x53, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x19, 0x31, 0x19, 0x10, 0x02, 0x21, 0x10, 0x9A, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB6, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x13, 0x11, 0x12, 0x19, 0x11, 0x19, 0x30, 0x19, 0x10, 0x19, 0x0F, 0x21, 0x30, 0x19, 0x30, 0x11, 0x11, 0x11, 0x32, 0x11, 0xD6, 0x11, 0xF8, 0x1A, 0x19, 0x19, 0xD7, 0x09, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x88, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x74, 0x01, 0x11, 0x33, 0x83, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x09, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, + 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x19, 0x31, 0x11, 0x12, 0x11, 0x54, 0x1A, 0x38, 0x09, 0xD8, 0x01, 0xD9, 0x05, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x83, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x84, 0x09, 0xD8, 0x09, 0xB7, 0x09, 0x75, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x32, 0x07, 0x19, 0x31, 0x82, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x02, 0x19, 0x31, 0x80, 0x19, 0x32, 0x09, 0x19, 0x31, 0x80, 0x19, 0x11, 0x0A, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x19, 0x31, 0x01, 0x19, 0x32, 0x81, 0x19, 0x52, 0x19, 0x32, 0x04, 0x19, 0x52, 0x01, 0x19, 0x32, 0x81, 0x11, 0x32, 0x11, 0x33, 0x01, 0x11, 0x54, 0x84, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x95, 0x01, 0x11, 0x33, 0x80, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x19, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x50, 0x29, + 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x80, 0x21, 0x11, 0x04, 0x21, 0x31, 0x80, 0x19, 0x30, 0x08, 0x21, 0x31, 0x80, 0x19, 0x30, 0x03, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x09, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x07, 0x29, 0x10, 0x89, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x05, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x95, 0x11, 0xF7, 0x1A, 0x18, 0x11, 0xD7, 0x11, 0x75, 0x11, 0x32, 0x19, 0x32, 0x21, 0x11, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, + 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x52, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x30, 0x83, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x52, 0x01, 0x19, 0x53, 0x80, 0x19, 0x74, 0x02, 0x19, 0x95, 0x81, 0x19, 0xB5, 0x11, 0x95, 0x02, 0x19, 0x95, 0x02, 0x19, 0x74, 0x81, 0x19, 0x54, 0x11, 0x33, 0x01, 0x11, 0x32, 0x02, 0x19, 0x11, 0x80, 0x19, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8C, 0x18, 0xF1, 0x10, 0xF2, 0x19, 0x53, 0x19, 0x95, 0x21, 0xF6, 0x22, 0x38, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x54, 0x11, 0x13, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x97, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x54, 0x19, 0xD7, 0x22, 0x38, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x74, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, + 0x21, 0x11, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x11, 0x33, 0x11, 0xB6, 0x11, 0xF7, 0x1A, 0x18, 0x19, 0xD7, 0x08, 0xF2, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x82, 0x11, 0x32, 0x11, 0x13, 0x19, 0x75, 0x01, 0x21, 0xF7, 0x87, 0x19, 0x95, 0x08, 0xF2, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x31, 0x90, 0x19, 0x31, 0x19, 0x32, 0x19, 0x12, 0x11, 0x33, 0x19, 0x75, 0x19, 0x96, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x30, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8E, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x32, 0x11, 0x33, 0x19, 0x94, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xF6, 0x19, 0xD6, 0x19, + 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x12, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x31, 0x21, 0x11, 0x19, 0x32, 0x11, 0x12, 0x19, 0x95, 0x21, 0xF7, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x33, 0x11, 0x13, 0x19, 0x33, 0x19, 0x52, 0x03, 0x19, 0x32, 0x8A, 0x19, 0x73, 0x21, 0xD5, 0x19, 0xD6, 0x19, 0xF6, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x03, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, + 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x0A, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x11, 0x31, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x01, 0x19, 0xF7, 0x86, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x87, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x8E, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x11, 0x19, 0x11, 0x19, 0x33, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xB7, 0x19, 0x95, 0x19, 0x53, 0x19, 0x11, 0x19, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x11, 0x01, 0x19, 0x12, + 0x8A, 0x09, 0x13, 0x19, 0xB6, 0x22, 0x17, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x13, 0x11, 0x12, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x19, 0x30, 0x82, 0x11, 0x31, 0x11, 0x33, 0x11, 0xB6, 0x01, 0x1A, 0x18, 0x84, 0x19, 0xD7, 0x09, 0x13, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x8B, 0x11, 0x96, 0x11, 0xB6, 0x19, 0xD6, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x13, 0x19, 0x32, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x01, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x86, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, + 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x11, 0x19, 0x12, 0x11, 0x34, 0x22, 0x39, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x03, 0x01, 0xD9, 0x83, 0x09, 0xD8, 0x09, 0xB7, 0x09, 0x75, 0x09, 0x33, 0x01, 0x11, 0x33, 0x01, 0x11, 0x32, 0x81, 0x11, 0x11, 0x19, 0x11, 0x03, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x19, 0x32, 0x83, 0x19, 0x11, 0x11, 0x11, 0x19, 0x12, 0x11, 0x12, 0x01, 0x11, 0x11, 0x01, 0x11, 0x32, 0x83, 0x11, 0x12, 0x19, 0x32, 0x11, 0x11, 0x19, 0x12, 0x02, 0x11, 0x11, 0x80, 0x19, 0x11, 0x01, 0x11, 0x11, 0x80, 0x19, 0x11, 0x02, 0x11, 0x11, 0x01, 0x19, 0x11, 0x01, 0x11, 0x11, 0x80, 0x19, 0x11, 0x04, 0x11, 0x11, 0x06, 0x11, 0x32, 0x82, 0x11, 0x33, 0x19, 0x53, 0x11, 0x33, 0x01, 0x11, 0x13, 0x89, 0x09, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x53, 0x11, 0x33, 0x11, 0x32, 0x02, 0x19, 0x31, 0x80, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0A, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, + 0x83, 0x21, 0x11, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, 0x05, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x11, 0x0C, 0x19, 0x31, 0x01, 0x19, 0x11, 0x04, 0x19, 0x31, 0x81, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x84, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x04, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x88, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x11, 0xD7, 0x1A, 0x18, 0x11, 0xD7, 0x11, 0x55, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x86, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x89, 0x21, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x86, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x05, + 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x87, 0x21, 0x30, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x11, 0x32, 0x19, 0x33, 0x04, 0x11, 0x33, 0x85, 0x19, 0x53, 0x19, 0x33, 0x11, 0x12, 0x19, 0x12, 0x11, 0x12, 0x19, 0x12, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x8E, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x50, 0x29, 0x51, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x19, 0x53, 0x19, 0x74, 0x21, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x01, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x50, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x91, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x18, 0x21, 0xD7, 0x11, 0x96, 0x11, 0x75, 0x19, 0x54, 0x19, 0x52, 0x19, 0x31, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x31, 0x82, 0x19, 0x12, 0x11, 0x13, 0x11, 0xB6, 0x01, 0x1A, 0x18, 0x83, 0x19, 0xD6, 0x08, 0xF2, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x8B, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, + 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x90, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x13, 0x19, 0x95, 0x2A, 0x18, 0x22, 0x18, 0x19, 0x96, 0x08, 0xF2, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x90, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x17, 0x22, 0x38, 0x19, 0xF6, 0x11, 0x74, 0x09, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x51, 0x19, 0x30, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x51, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x8C, 0x11, 0x12, 0x11, 0x32, 0x19, 0x94, 0x21, 0xD6, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x12, 0x21, 0x31, 0x21, 0x11, 0x04, 0x21, 0x10, 0x87, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, + 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x8D, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x19, 0x33, 0x19, 0x75, 0x21, 0xF7, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x34, 0x11, 0x13, 0x19, 0x33, 0x19, 0x53, 0x01, 0x19, 0x32, 0x8B, 0x19, 0x31, 0x11, 0x11, 0x11, 0x53, 0x19, 0x94, 0x19, 0xB6, 0x19, 0xF6, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x51, 0x84, 0x21, 0x31, 0x21, 0x30, 0x19, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, + 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x84, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x01, 0x21, 0xF7, 0x85, 0x21, 0xD7, 0x19, 0xB6, 0x11, 0x53, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x01, 0x19, 0x11, 0x87, 0x11, 0x33, 0x21, 0xF7, 0x1A, 0x18, 0x19, 0xB7, 0x19, 0x95, 0x19, 0x53, 0x19, 0x31, 0x19, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x33, 0x19, 0xB6, 0x22, 0x17, 0x19, 0xF7, 0x19, 0x95, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x83, 0x19, 0x30, 0x19, 0x32, 0x11, 0x53, 0x11, 0xB6, 0x01, 0x1A, 0x18, 0x83, 0x19, 0xB7, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x01, 0x19, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x09, 0x54, 0x11, 0x75, 0x11, 0xD6, 0x01, 0x19, 0xF7, 0x87, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x13, + 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x84, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x86, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x85, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x1A, 0x18, 0x09, 0xD9, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x84, 0x09, 0xD9, 0x09, 0x97, 0x09, 0x96, 0x09, 0x75, 0x09, 0x54, 0x01, 0x11, 0x54, 0x08, 0x11, 0x33, 0x80, 0x11, 0x12, 0x02, 0x11, 0x33, 0x80, 0x11, 0x13, 0x05, 0x11, 0x33, 0x80, 0x11, 0x13, 0x03, 0x11, 0x33, 0x07, 0x11, 0x32, 0x80, 0x11, 0x12, 0x04, 0x11, 0x32, 0x81, 0x11, 0x33, 0x09, 0x12, 0x04, + 0x11, 0x33, 0x03, 0x09, 0x33, 0x84, 0x11, 0x33, 0x11, 0x54, 0x19, 0x54, 0x11, 0x54, 0x09, 0x13, 0x01, 0x09, 0x33, 0x81, 0x11, 0x75, 0x19, 0xB6, 0x01, 0x19, 0xF7, 0x85, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x21, 0x51, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x0B, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x05, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x0C, 0x21, 0x30, 0x04, 0x21, 0x10, 0x84, 0x21, 0x11, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x04, 0x11, 0x32, 0x83, 0x11, 0x12, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x01, 0x11, 0x12, 0x12, 0x11, 0x32, 0x80, 0x19, 0x32, 0x03, 0x11, 0x32, 0x81, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x11, 0x84, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x10, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x07, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, + 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x34, 0x11, 0xD6, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8E, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x02, 0x19, 0x11, 0x01, 0x19, 0x12, 0x03, 0x19, 0x32, 0x80, 0x19, 0x12, 0x02, 0x19, 0x11, 0x80, 0x18, 0xF1, 0x01, 0x19, 0x11, 0x87, 0x21, 0x11, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x51, 0x85, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, + 0x95, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x81, 0x19, 0xB5, 0x11, 0x54, 0x01, 0x11, 0x12, 0x82, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x22, 0x17, 0x22, 0x18, 0x19, 0x96, 0x11, 0x54, 0x19, 0x54, 0x19, 0x53, 0x21, 0x52, 0x21, 0x31, 0x02, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x32, 0x11, 0x13, 0x11, 0xB6, 0x11, 0xF7, 0x1A, 0x18, 0x19, 0xD6, 0x08, 0xF2, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x13, 0x19, 0x95, 0x29, 0xF7, 0x21, 0xF7, 0x21, 0xB6, 0x08, 0xF2, 0x19, 0x32, 0x19, 0x52, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, + 0x84, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x01, 0x22, 0x37, 0x84, 0x19, 0xD6, 0x11, 0x94, 0x11, 0x53, 0x11, 0x32, 0x19, 0x52, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x90, 0x21, 0x31, 0x21, 0x51, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x32, 0x19, 0x74, 0x19, 0xB5, 0x21, 0xD6, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x19, 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x80, 0x19, 0x54, 0x01, 0x21, 0xF7, 0x84, 0x19, 0xD7, 0x11, 0x55, 0x09, 0x13, 0x11, 0x13, 0x19, 0x53, 0x01, 0x19, 0x32, 0x80, 0x19, 0x52, 0x01, 0x11, 0x32, 0x89, 0x11, 0x53, 0x19, 0x95, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x21, 0xD6, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x21, 0x52, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x03, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x04, 0x21, + 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x09, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x03, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x0F, 0x85, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x31, 0x89, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x73, 0x19, 0x31, 0x19, 0x10, 0x02, 0x21, + 0x10, 0x8B, 0x19, 0x10, 0x19, 0x11, 0x11, 0x32, 0x09, 0x33, 0x19, 0xB6, 0x22, 0x17, 0x19, 0xF7, 0x19, 0x95, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x89, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0xB6, 0x11, 0xF8, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x13, 0x11, 0x11, 0x01, 0x19, 0x10, 0x82, 0x19, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x09, 0x33, 0x86, 0x11, 0x75, 0x19, 0xB6, 0x1A, 0x17, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x34, 0x01, 0x11, 0x12, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x09, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x88, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8A, 0x21, 0x0F, 0x21, 0x10, 0x21, + 0x30, 0x21, 0x10, 0x21, 0x11, 0x19, 0x12, 0x11, 0x54, 0x22, 0x39, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xDA, 0x03, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x88, 0x01, 0xFA, 0x01, 0xF9, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xB8, 0x09, 0x97, 0x09, 0xB7, 0x11, 0x97, 0x11, 0xB7, 0x02, 0x11, 0x96, 0x05, 0x11, 0x95, 0x80, 0x11, 0x96, 0x02, 0x11, 0x95, 0x01, 0x11, 0x96, 0x80, 0x19, 0x96, 0x08, 0x11, 0x96, 0x86, 0x11, 0xB6, 0x11, 0x96, 0x11, 0xB6, 0x11, 0x96, 0x11, 0x95, 0x11, 0xB6, 0x11, 0xB5, 0x02, 0x11, 0x95, 0x01, 0x11, 0xB5, 0x06, 0x11, 0xB6, 0x80, 0x11, 0xD6, 0x03, 0x11, 0xB6, 0x82, 0x11, 0xB7, 0x11, 0x96, 0x09, 0x54, 0x01, 0x11, 0x54, 0x8C, 0x11, 0x34, 0x11, 0x33, 0x09, 0x13, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x11, 0x80, 0x21, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x11, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, + 0x01, 0x11, 0x53, 0x80, 0x11, 0x74, 0x03, 0x11, 0x54, 0x80, 0x09, 0x54, 0x02, 0x11, 0x74, 0x02, 0x11, 0x54, 0x02, 0x11, 0x74, 0x82, 0x11, 0x54, 0x11, 0x74, 0x11, 0x75, 0x02, 0x11, 0x54, 0x0A, 0x11, 0x74, 0x80, 0x11, 0x94, 0x01, 0x11, 0x74, 0x01, 0x11, 0x53, 0x02, 0x19, 0x32, 0x82, 0x19, 0x31, 0x21, 0x31, 0x21, 0x11, 0x04, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x84, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x06, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x85, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x01, 0x21, 0x31, 0x88, 0x19, 0x31, 0x11, 0x12, 0x11, 0x54, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x32, 0x19, 0x32, 0x01, 0x21, 0x31, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x8A, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x73, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, + 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x82, 0x21, 0x31, 0x21, 0x10, 0x21, 0x11, 0x01, 0x19, 0x11, 0x02, 0x19, 0x31, 0x02, 0x19, 0x11, 0x84, 0x18, 0xF0, 0x21, 0x11, 0x21, 0x10, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x86, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x07, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x51, 0x21, 0x31, 0x19, 0x12, 0x11, 0x12, 0x11, 0x53, 0x19, 0x95, 0x02, 0x21, 0xF7, 0x87, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x11, 0x8A, 0x11, 0x32, 0x19, 0x74, 0x19, 0x95, 0x22, 0x17, 0x2A, 0x38, 0x19, 0xD6, 0x11, 0x34, 0x11, 0x33, 0x19, 0x53, 0x19, 0x52, 0x21, 0x52, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x12, 0x11, 0x33, 0x11, 0xD6, 0x11, 0xF7, 0x1A, 0x38, 0x19, 0xF7, 0x09, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, + 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x32, 0x8A, 0x11, 0x13, 0x19, 0x95, 0x29, 0xF7, 0x21, 0xF7, 0x19, 0x95, 0x08, 0xF2, 0x19, 0x12, 0x19, 0x52, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x31, 0x84, 0x19, 0x32, 0x19, 0x12, 0x11, 0x32, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x85, 0x19, 0xF6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x87, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB5, 0x02, 0x21, 0xF7, 0x85, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x32, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, + 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x83, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x74, 0x02, 0x21, 0xF7, 0x83, 0x19, 0x96, 0x09, 0x13, 0x08, 0xF2, 0x11, 0x12, 0x01, 0x19, 0x32, 0x8D, 0x19, 0x73, 0x19, 0x52, 0x11, 0x32, 0x11, 0x52, 0x11, 0x53, 0x11, 0x95, 0x1A, 0x17, 0x22, 0x38, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x85, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x05, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x06, 0x21, 0x30, 0x02, 0x21, 0x31, 0x85, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, + 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x84, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x86, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x04, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x89, 0x19, 0x11, 0x10, 0xF1, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB5, 0x19, 0x53, 0x19, 0x11, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8C, 0x21, 0x31, 0x21, 0x11, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x11, 0x95, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0xD6, 0x1A, 0x18, 0x1A, 0x19, 0x11, 0xB6, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x8A, 0x21, 0x2F, 0x21, 0x30, 0x11, 0x12, 0x11, 0x32, 0x09, 0x33, 0x11, 0x75, 0x11, 0xB6, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xD7, 0x19, 0x95, 0x01, 0x11, 0x33, 0x01, + 0x19, 0x32, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x2F, 0x05, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x85, 0x21, 0x11, 0x19, 0x12, 0x11, 0x33, 0x1A, 0x39, 0x09, 0xD9, 0x01, 0xD9, 0x05, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x84, 0x01, 0xD9, 0x01, 0xFA, 0x09, 0xFA, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0x11, 0xF9, 0x02, 0x19, 0xF9, 0x81, 0x1A, 0x19, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x81, 0x22, 0x18, 0x19, 0xF7, 0x04, 0x22, 0x18, 0x84, 0x1A, 0x18, 0x22, 0x18, 0x21, 0xF8, 0x22, 0x18, 0x21, 0xF8, 0x02, 0x22, 0x18, 0x81, 0x22, 0x39, 0x1A, 0x18, 0x01, 0x22, 0x38, + 0x84, 0x1A, 0x18, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x39, 0x22, 0x38, 0x01, 0x1A, 0x18, 0x82, 0x1A, 0x38, 0x22, 0x38, 0x1A, 0x18, 0x01, 0x22, 0x38, 0x83, 0x1A, 0x18, 0x1A, 0x38, 0x1A, 0x18, 0x1A, 0x38, 0x05, 0x1A, 0x18, 0x02, 0x11, 0xF8, 0x85, 0x1A, 0x39, 0x1A, 0x18, 0x11, 0x96, 0x09, 0x55, 0x09, 0x54, 0x11, 0x54, 0x01, 0x11, 0x33, 0x83, 0x09, 0x33, 0x09, 0x34, 0x11, 0x75, 0x19, 0xB6, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x53, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x0A, 0x21, 0x30, 0x07, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x30, 0x01, 0x19, 0x10, 0x80, 0x21, 0x30, 0x02, 0x19, 0x30, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x01, 0x11, 0x95, 0x80, 0x11, 0xB5, 0x01, 0x11, 0xB6, 0x80, 0x11, 0x96, 0x03, 0x11, 0xB6, 0x05, 0x11, 0xB7, 0x01, 0x11, 0xD7, 0x01, 0x11, 0xB7, 0x81, 0x11, 0xD7, 0x11, 0xB7, 0x03, 0x11, 0xB6, 0x81, 0x11, 0xB7, 0x11, 0xD7, 0x01, 0x11, 0xB7, 0x03, 0x11, 0xB6, 0x80, 0x11, 0xD6, 0x01, 0x11, 0xB6, 0x01, 0x11, 0x95, 0x80, 0x11, 0x74, 0x01, 0x11, 0x53, 0x01, 0x19, 0x32, 0x81, 0x19, 0x31, 0x21, 0x31, + 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x05, 0x29, 0x10, 0x84, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8B, 0x21, 0x50, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x09, 0x33, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xF7, 0x11, 0x95, 0x11, 0x33, 0x19, 0x32, 0x01, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x8D, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, + 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x31, 0x01, 0x19, 0x10, 0x81, 0x21, 0x10, 0x19, 0x10, 0x05, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x01, 0x21, 0xF7, 0x87, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x90, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x2A, 0x17, 0x2A, 0x38, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x34, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x90, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0xB6, 0x11, 0xF7, 0x1A, 0x18, 0x19, 0xF7, 0x08, 0xF2, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, + 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x01, 0x11, 0x12, 0x86, 0x19, 0x95, 0x21, 0xF7, 0x21, 0xD7, 0x21, 0xB6, 0x10, 0xF2, 0x19, 0x12, 0x21, 0x52, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x31, 0x84, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x83, 0x21, 0xF6, 0x11, 0x74, 0x11, 0x53, 0x19, 0x52, 0x02, 0x19, 0x31, 0x81, 0x21, 0x51, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x10, + 0x19, 0x11, 0x19, 0x12, 0x19, 0x53, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x85, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x09, 0x12, 0x19, 0x33, 0x19, 0x32, 0x01, 0x19, 0x52, 0x8F, 0x11, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0xD6, 0x22, 0x38, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x08, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x05, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x32, 0x83, 0x19, 0x31, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x04, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x8C, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x21, 0x52, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x21, 0xF7, + 0x86, 0x21, 0xF6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x87, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB5, 0x19, 0x52, 0x19, 0x31, 0x03, 0x21, 0x10, 0x92, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x09, 0x33, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xF7, 0x19, 0x95, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0xB6, 0x01, 0x1A, 0x18, 0x81, 0x19, 0xB7, 0x11, 0x33, 0x01, 0x19, 0x11, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x11, 0x11, 0x89, 0x09, 0x12, 0x09, 0x33, 0x09, 0x54, 0x19, 0xB6, 0x19, 0xF7, 0x21, 0xF8, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x13, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x87, 0x29, 0x30, + 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x06, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x85, 0x19, 0x11, 0x19, 0x12, 0x11, 0x54, 0x22, 0x39, 0x11, 0xF9, 0x09, 0xDA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x02, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x09, 0xFA, 0x81, 0x09, 0xD9, 0x11, 0xF9, 0x03, 0x1A, 0x19, 0x01, 0x19, 0xF8, 0x83, 0x19, 0xD7, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0xB7, 0x07, 0x19, 0xD7, 0x83, 0x21, 0xD8, 0x19, 0xB7, 0x21, 0xF8, 0x19, 0xD8, 0x03, 0x19, 0xD7, 0x02, 0x19, 0xF7, 0x80, 0x19, 0xD7, 0x03, 0x19, 0xF7, 0x05, 0x19, 0xD7, 0x80, 0x19, 0xF8, 0x04, 0x19, 0xF7, 0x02, 0x11, 0xD7, 0x81, + 0x19, 0xF7, 0x19, 0xF8, 0x01, 0x11, 0xD7, 0x01, 0x19, 0xF8, 0x89, 0x11, 0xB6, 0x11, 0x95, 0x09, 0x54, 0x09, 0x33, 0x11, 0x33, 0x09, 0x13, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x01, 0x19, 0xF7, 0x85, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x11, 0x05, 0x21, 0x31, 0x80, 0x21, 0x51, 0x02, 0x21, 0x31, 0x80, 0x21, 0x51, 0x0B, 0x21, 0x31, 0x81, 0x21, 0x51, 0x19, 0x31, 0x01, 0x21, 0x51, 0x07, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x0B, 0x21, 0x31, 0x02, 0x19, 0x31, 0x02, 0x21, 0x31, 0x80, 0x21, 0x11, 0x02, 0x21, 0x31, 0x03, 0x19, 0x11, 0x85, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x11, 0xB5, 0x11, 0xD6, 0x01, 0x11, 0xD7, 0x01, 0x09, 0xD7, 0x02, 0x09, 0xD8, 0x01, 0x09, 0xF8, 0x13, 0x09, 0xD8, 0x02, 0x11, 0xF8, 0x81, 0x09, 0xF8, 0x12, 0x18, 0x01, 0x11, 0xF8, 0x01, 0x11, 0xD7, 0x81, 0x11, 0xB6, 0x11, 0x95, 0x01, 0x11, 0x74, 0x81, 0x11, 0x53, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x89, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, + 0x0F, 0x03, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x19, 0xF7, 0x01, 0x1A, 0x18, 0x83, 0x11, 0x95, 0x11, 0x33, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x8A, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x21, 0xF6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x10, 0x87, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x50, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x0A, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x88, 0x21, 0x50, 0x21, 0x51, 0x21, 0x31, 0x19, 0x10, 0x11, 0x11, 0x11, 0x12, 0x11, 0x34, 0x19, 0x96, 0x21, 0xD7, 0x01, 0x21, 0xF7, 0x86, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x32, 0x11, 0x11, 0x19, + 0x31, 0x19, 0x30, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x88, 0x21, 0x10, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x74, 0x2A, 0x17, 0x21, 0xF7, 0x01, 0x19, 0xB6, 0x82, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x11, 0x81, 0x21, 0x51, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x33, 0x11, 0xB6, 0x11, 0xF8, 0x1A, 0x19, 0x19, 0xD7, 0x08, 0xF2, 0x19, 0x32, 0x21, 0x31, 0x04, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x87, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x21, 0xB5, 0x29, 0xF7, 0x21, 0xD7, 0x19, 0x95, 0x01, 0x11, 0x12, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x51, 0x8E, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF6, 0x22, 0x17, 0x21, 0xF6, 0x11, 0x74, 0x11, 0x53, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, + 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8D, 0x21, 0x51, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x19, 0x74, 0x21, 0xF6, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x75, 0x08, 0xF2, 0x11, 0x12, 0x11, 0x32, 0x19, 0x73, 0x19, 0x52, 0x11, 0x11, 0x01, 0x11, 0x32, 0x83, 0x11, 0x53, 0x11, 0x94, 0x19, 0xD6, 0x19, 0xF7, 0x01, 0x21, 0xF7, 0x84, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x21, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, + 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x20, 0xEF, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x84, 0x19, 0x30, 0x19, 0x10, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x01, 0x19, 0x53, 0x81, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x21, 0x52, 0x8C, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB5, 0x21, 0xF6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x88, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x19, + 0xD7, 0x21, 0xF7, 0x19, 0xB5, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x10, 0x8C, 0x21, 0x30, 0x21, 0x31, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xF6, 0x19, 0x94, 0x11, 0x32, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x19, 0x31, 0x19, 0x32, 0x11, 0x54, 0x11, 0xD7, 0x01, 0x1A, 0x18, 0x86, 0x19, 0xB7, 0x11, 0x33, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x8F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x19, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x09, 0x12, 0x09, 0x54, 0x11, 0x96, 0x19, 0xD7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x96, 0x11, 0x34, 0x11, 0x33, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x87, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, + 0x29, 0x30, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x19, 0x11, 0x81, 0x11, 0x34, 0x22, 0x19, 0x01, 0x09, 0xD9, 0x03, 0x01, 0xDA, 0x83, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x82, 0x09, 0xFA, 0x09, 0xD9, 0x09, 0x97, 0x01, 0x11, 0x97, 0x81, 0x11, 0xB7, 0x11, 0x97, 0x01, 0x19, 0x96, 0x80, 0x11, 0x96, 0x01, 0x11, 0x95, 0x81, 0x11, 0x75, 0x19, 0xB5, 0x01, 0x11, 0x95, 0x05, 0x19, 0x95, 0x01, 0x19, 0x96, 0x01, 0x19, 0x76, 0x03, 0x19, 0x96, 0x02, 0x11, 0x95, 0x80, 0x19, 0x95, 0x04, 0x11, 0x95, 0x84, 0x19, 0xB5, 0x19, 0x95, 0x19, 0xB6, 0x11, 0x95, 0x19, 0x95, 0x01, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x81, 0x11, 0x96, 0x11, 0x95, 0x01, 0x11, 0xB6, 0x80, 0x11, 0x96, 0x03, 0x11, 0xB6, 0x80, 0x19, 0xF7, 0x01, 0x1A, 0x18, 0x83, 0x11, 0xB6, 0x11, 0x75, 0x09, 0x54, 0x11, 0x54, 0x02, 0x11, 0x33, 0x82, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x01, 0x19, 0xF7, 0x86, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x54, 0x11, 0x53, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x04, 0x19, 0x11, 0x02, 0x19, 0x31, 0x01, 0x19, 0x32, 0x83, 0x19, 0x52, 0x19, 0x31, 0x19, 0x32, 0x19, 0x31, 0x02, 0x19, 0x32, 0x81, 0x21, 0x32, 0x19, 0x32, 0x01, 0x21, 0x32, 0x80, 0x19, 0x32, 0x01, 0x19, 0x52, 0x01, 0x19, 0x31, 0x81, 0x19, 0x32, 0x19, 0x31, 0x07, + 0x19, 0x32, 0x80, 0x19, 0x52, 0x03, 0x19, 0x31, 0x02, 0x21, 0x31, 0x02, 0x19, 0x31, 0x02, 0x19, 0x32, 0x02, 0x19, 0x31, 0x04, 0x19, 0x11, 0x80, 0x18, 0xF1, 0x04, 0x19, 0x11, 0x01, 0x11, 0x12, 0x85, 0x11, 0x33, 0x09, 0x54, 0x09, 0x96, 0x09, 0xB7, 0x09, 0xD8, 0x09, 0xF8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xF8, 0x01, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x80, 0x09, 0xF9, 0x05, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x84, 0x01, 0xD8, 0x09, 0xD9, 0x01, 0xD8, 0x09, 0xD9, 0x01, 0xD8, 0x03, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x91, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xF8, 0x09, 0xF9, 0x09, 0xF8, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x74, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x19, 0xD6, 0x01, 0x1A, 0x18, 0x81, 0x11, 0x95, 0x11, 0x32, 0x01, 0x19, 0x31, 0x02, 0x21, + 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8D, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x50, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x11, 0x34, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x01, 0x19, 0x30, 0x02, 0x21, 0x30, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, + 0x02, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x82, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x01, 0x2A, 0x17, 0x81, 0x21, 0xD7, 0x19, 0x75, 0x01, 0x11, 0x33, 0x83, 0x19, 0x53, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x21, 0x51, 0x19, 0x31, 0x11, 0x33, 0x11, 0xB6, 0x11, 0xF8, 0x1A, 0x18, 0x19, 0xD7, 0x08, 0xF2, 0x19, 0x12, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x82, 0x19, 0x32, 0x11, 0x12, 0x19, 0x95, 0x01, 0x21, 0xF7, 0x80, 0x19, 0x95, 0x01, 0x11, 0x12, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x51, 0x01, 0x19, 0x31, 0x8D, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x37, 0x19, 0xD6, 0x11, 0x74, + 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x11, 0x02, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xF6, 0x19, 0xB5, 0x11, 0x33, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x85, 0x21, 0x10, 0x19, 0x11, 0x19, 0x12, 0x19, 0x53, 0x19, 0x95, 0x21, 0xD7, 0x01, 0x19, 0xD7, 0x84, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x13, 0x11, 0x12, 0x19, 0x32, 0x01, 0x19, 0x52, 0x85, 0x19, 0x32, 0x19, 0x52, 0x11, 0x53, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x88, 0x21, 0xD7, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x21, 0x32, 0x21, 0x31, 0x21, 0x11, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, + 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x8B, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x19, 0x74, 0x19, 0xB5, 0x01, 0x19, 0xD6, 0x84, 0x19, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x05, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x92, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x21, 0xF6, 0x21, 0xF7, 0x22, 0x37, 0x19, 0xD6, 0x11, 0x94, 0x11, 0x54, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x29, 0x31, 0x29, 0x51, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x31, + 0x01, 0x19, 0x31, 0x88, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x19, 0xD6, 0x19, 0xD7, 0x21, 0xF7, 0x19, 0xB5, 0x19, 0x32, 0x19, 0x11, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x94, 0x19, 0x32, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x19, 0x31, 0x19, 0x32, 0x11, 0x54, 0x11, 0xD7, 0x01, 0x1A, 0x18, 0x88, 0x19, 0xD7, 0x11, 0x33, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x0E, 0x04, 0x21, 0x0F, 0x8F, 0x21, 0x31, 0x19, 0x31, 0x19, 0x51, 0x11, 0x31, 0x11, 0x11, 0x11, 0x32, 0x09, 0x54, 0x19, 0xB6, 0x22, 0x17, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x09, 0x13, 0x11, 0x33, 0x19, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x8A, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x29, 0x0F, + 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x11, 0x19, 0x12, 0x11, 0x33, 0x22, 0x19, 0x11, 0xF9, 0x09, 0xD9, 0x04, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x03, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x83, 0x09, 0xD9, 0x09, 0x97, 0x09, 0x76, 0x09, 0x34, 0x01, 0x11, 0x54, 0x01, 0x19, 0x54, 0x80, 0x19, 0x33, 0x01, 0x19, 0x53, 0x82, 0x11, 0x53, 0x19, 0x73, 0x19, 0x53, 0x02, 0x19, 0x73, 0x80, 0x11, 0x53, 0x02, 0x19, 0x53, 0x01, 0x19, 0x33, 0x85, 0x11, 0x33, 0x19, 0x33, 0x19, 0x53, 0x19, 0x33, 0x11, 0x33, 0x19, 0x53, 0x02, 0x11, 0x53, 0x02, 0x19, 0x53, 0x01, 0x11, 0x53, 0x80, 0x11, 0x33, 0x02, 0x11, 0x53, 0x80, 0x11, 0x33, 0x04, 0x11, 0x53, 0x80, 0x19, 0x73, 0x03, 0x11, 0x53, 0x01, 0x19, 0x74, 0x02, 0x11, 0x74, 0x8D, 0x11, 0x95, 0x22, 0x58, 0x1A, 0x38, 0x11, 0xB6, 0x11, 0x96, 0x11, 0x75, 0x11, 0x54, 0x11, 0x74, 0x11, 0x33, 0x09, 0x33, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB5, 0x01, 0x19, 0xF7, 0x85, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x55, 0x11, 0x54, 0x11, 0x33, 0x11, 0x13, 0x01, 0x11, 0x12, 0x02, 0x11, 0x11, 0x80, 0x10, 0xF1, 0x02, 0x11, 0x12, 0x81, 0x11, 0x33, 0x11, 0x32, 0x01, 0x11, 0x12, 0x01, 0x19, 0x32, 0x81, 0x11, 0x12, 0x19, + 0x32, 0x03, 0x19, 0x12, 0x04, 0x11, 0x12, 0x81, 0x19, 0x32, 0x11, 0x32, 0x02, 0x11, 0x12, 0x83, 0x19, 0x32, 0x11, 0x32, 0x19, 0x32, 0x11, 0x32, 0x01, 0x19, 0x32, 0x80, 0x11, 0x11, 0x01, 0x19, 0x32, 0x80, 0x19, 0x12, 0x01, 0x19, 0x32, 0x81, 0x11, 0x12, 0x19, 0x12, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x03, 0x11, 0x12, 0x84, 0x11, 0x11, 0x11, 0x12, 0x19, 0x12, 0x11, 0x12, 0x10, 0xF2, 0x05, 0x11, 0x12, 0x84, 0x11, 0x13, 0x11, 0x33, 0x11, 0x54, 0x09, 0x75, 0x09, 0x96, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x81, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xFA, 0x09, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x06, 0x01, 0xD9, 0x01, 0x01, 0xF9, 0x03, 0x01, 0xD9, 0x81, 0x01, 0xF9, 0x09, 0xF9, 0x01, 0x09, 0xD8, 0x87, 0x09, 0xD7, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x54, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x02, 0x21, 0x30, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x86, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, + 0x30, 0x87, 0x19, 0x11, 0x11, 0x11, 0x11, 0x33, 0x19, 0xB6, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0xB6, 0x11, 0x33, 0x01, 0x19, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x19, 0x31, 0x19, 0x52, 0x01, 0x11, 0x33, 0x87, 0x19, 0xF6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x50, 0x21, 0x31, 0x19, 0x51, 0x19, 0x32, 0x11, 0x12, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD7, 0x21, 0xF8, 0x21, 0xF7, 0x21, 0xD6, 0x11, 0x54, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x01, 0x19, 0x30, 0x80, 0x21, + 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x92, 0x21, 0x10, 0x21, 0x11, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x11, 0x13, 0x11, 0x54, 0x11, 0x75, 0x21, 0xD7, 0x2A, 0x38, 0x21, 0xF7, 0x11, 0x74, 0x11, 0x33, 0x09, 0x12, 0x11, 0x32, 0x21, 0x72, 0x21, 0x31, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x11, 0x32, 0x11, 0xB6, 0x19, 0xF8, 0x1A, 0x18, 0x19, 0xD7, 0x10, 0xF2, 0x19, 0x12, 0x01, 0x21, 0x31, 0x03, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x19, 0x31, 0x82, 0x19, 0x32, 0x11, 0x12, 0x21, 0xB5, 0x01, 0x21, 0xF7, 0x85, 0x19, 0xB6, 0x11, 0x13, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x51, 0x84, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, + 0x19, 0xB6, 0x01, 0x22, 0x17, 0x84, 0x11, 0x95, 0x11, 0x75, 0x11, 0x54, 0x19, 0x33, 0x19, 0x32, 0x01, 0x19, 0x11, 0x81, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x8F, 0x21, 0x51, 0x19, 0x51, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x74, 0x19, 0xD5, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x21, 0x32, 0x21, 0x31, 0x21, 0x11, 0x07, 0x21, 0x10, 0x04, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x54, 0x19, 0x95, 0x19, 0xB6, 0x21, 0xD7, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x33, 0x01, 0x11, 0x12, 0x80, 0x19, 0x32, 0x02, 0x19, 0x52, 0x84, 0x11, 0x52, 0x11, 0x12, 0x09, 0x32, 0x11, 0x74, 0x19, 0xB6, 0x01, 0x22, 0x18, 0x86, 0x19, 0xB6, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x86, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, + 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x85, 0x19, 0x52, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xF7, 0x03, 0x1A, 0x18, 0x87, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x87, 0x21, 0x51, 0x21, 0x52, 0x19, 0x11, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x21, 0xF7, 0x22, 0x17, 0x01, 0x19, 0xD6, 0x84, 0x11, 0x74, 0x11, 0x53, 0x19, 0x53, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x50, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, + 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x85, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x83, 0x19, 0xD6, 0x19, 0x94, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x8B, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x74, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x10, 0x8D, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x34, 0x11, 0xB7, 0x1A, 0x18, 0x1A, 0x19, 0x19, 0xB7, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x51, 0x01, 0x19, 0x31, 0x01, 0x11, 0x11, 0x8A, 0x09, 0x32, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x17, 0x22, 0x18, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x34, 0x11, 0x13, 0x19, 0x32, 0x21, 0x32, 0x01, 0x21, 0x31, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, + 0x0F, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x05, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x85, 0x21, 0x11, 0x18, 0xF2, 0x11, 0x33, 0x22, 0x19, 0x11, 0xD9, 0x09, 0xD9, 0x03, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x89, 0x02, 0x1B, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xF9, 0x09, 0xD8, 0x09, 0x97, 0x09, 0x55, 0x11, 0x33, 0x11, 0x13, 0x03, 0x19, 0x12, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x06, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x19, 0x11, 0x03, 0x19, 0x12, 0x05, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x03, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x05, 0x19, 0x32, 0x05, 0x11, 0x32, 0x85, 0x09, 0x32, 0x09, 0x33, 0x09, 0x95, 0x1A, 0x38, 0x19, 0xF7, 0x11, 0xB6, 0x01, 0x11, 0x95, 0x80, 0x11, 0x54, 0x01, 0x11, 0x33, 0x84, 0x09, 0x13, 0x11, 0x33, 0x11, 0x34, 0x11, 0x75, 0x19, 0xB6, 0x01, 0x19, 0xF7, 0x87, 0x11, 0xB6, 0x11, 0x96, 0x09, 0x55, 0x11, 0x55, 0x11, 0x34, 0x11, 0x33, 0x11, 0x13, 0x11, 0x33, 0x02, 0x11, 0x12, 0x83, 0x11, 0x13, 0x09, 0x13, 0x11, 0x33, 0x09, 0x13, 0x02, 0x11, 0x33, 0x80, 0x11, 0x32, 0x03, 0x11, 0x33, 0x02, 0x11, 0x13, 0x02, 0x11, 0x12, 0x01, 0x11, 0x13, 0x81, + 0x11, 0x33, 0x11, 0x32, 0x03, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x11, 0x33, 0x05, 0x11, 0x32, 0x81, 0x11, 0x12, 0x11, 0x33, 0x01, 0x11, 0x32, 0x03, 0x11, 0x33, 0x80, 0x11, 0x13, 0x05, 0x11, 0x33, 0x80, 0x11, 0x13, 0x02, 0x11, 0x33, 0x02, 0x11, 0x53, 0x01, 0x11, 0x54, 0x01, 0x11, 0x75, 0x83, 0x09, 0x96, 0x09, 0xB7, 0x09, 0xB8, 0x09, 0xD9, 0x09, 0x01, 0xD9, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xB9, 0x03, 0x01, 0xDA, 0x81, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x83, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0x01, 0xF9, 0x8A, 0x01, 0xD9, 0x01, 0xF9, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xD7, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x0A, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x33, 0x11, 0xB6, 0x1A, 0x18, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x33, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8D, 0x19, + 0x31, 0x19, 0x52, 0x11, 0x33, 0x09, 0x33, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x94, 0x21, 0x31, 0x21, 0x51, 0x11, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF8, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x19, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x90, 0x21, 0x10, 0x21, 0x31, 0x21, 0x32, 0x19, 0x12, 0x11, 0x13, 0x11, 0x34, 0x19, 0x96, 0x21, 0xD7, 0x22, 0x18, 0x21, 0xF7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x11, 0x11, + 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x19, 0x31, 0x11, 0x32, 0x11, 0xB6, 0x19, 0xF8, 0x1A, 0x19, 0x19, 0xD7, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x11, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x89, 0x19, 0x32, 0x11, 0x12, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x13, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8A, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x18, 0x19, 0xB6, 0x19, 0x75, 0x19, 0x54, 0x11, 0x12, 0x19, 0x12, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x50, 0x21, 0x0F, 0x21, 0x30, + 0x21, 0x51, 0x19, 0x31, 0x01, 0x11, 0x11, 0x88, 0x11, 0x32, 0x11, 0x94, 0x11, 0xB5, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x19, 0x32, 0x01, 0x21, 0x11, 0x06, 0x21, 0x10, 0x05, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x8F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x19, 0x75, 0x11, 0x75, 0x19, 0xD7, 0x21, 0xD7, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x19, 0x52, 0x01, 0x11, 0x31, 0x8C, 0x11, 0x32, 0x09, 0x33, 0x11, 0x95, 0x11, 0xB6, 0x19, 0xF7, 0x1A, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x12, 0x21, 0x31, 0x21, 0x11, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, + 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x31, 0x19, 0x53, 0x19, 0x94, 0x11, 0x95, 0x01, 0x1A, 0x17, 0x8E, 0x22, 0x38, 0x1A, 0x38, 0x11, 0xF8, 0x1A, 0x39, 0x1A, 0x59, 0x1A, 0x39, 0x1A, 0x18, 0x19, 0xD7, 0x11, 0x55, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8D, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x01, 0x21, 0x11, 0x81, 0x21, 0x10, 0x29, 0x30, 0x05, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x19, 0x11, 0x83, 0x11, 0x53, 0x11, 0x54, 0x19, 0x95, 0x19, 0xD7, 0x01, 0x21, 0xF7, 0x83, 0x19, 0x95, 0x19, 0x74, 0x19, 0x32, 0x19, 0x31, 0x03, 0x21, 0x31, 0x8A, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, + 0x95, 0x19, 0xD6, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x74, 0x19, 0x52, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x33, 0x11, 0x34, 0x19, 0xB7, 0x01, 0x1A, 0x18, 0x83, 0x19, 0xD7, 0x11, 0x33, 0x19, 0x12, 0x21, 0x11, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x8D, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x18, 0x19, 0xF7, 0x19, 0x95, 0x11, 0x34, 0x11, 0x13, 0x01, 0x19, 0x32, 0x81, 0x19, 0x31, 0x21, 0x31, 0x07, 0x21, 0x30, 0x07, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x02, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x85, 0x18, 0xF1, 0x10, 0xF1, 0x11, 0x34, 0x22, 0x19, 0x09, 0xD9, + 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x02, 0x1A, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xF9, 0x84, 0x09, 0xB8, 0x09, 0x76, 0x11, 0x54, 0x11, 0x13, 0x19, 0x12, 0x05, 0x19, 0x11, 0x04, 0x19, 0x10, 0x81, 0x19, 0x30, 0x19, 0x10, 0x02, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x19, 0x11, 0x85, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x09, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x11, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x02, 0x19, 0x32, 0x86, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x12, 0x09, 0x33, 0x09, 0x54, 0x19, 0xF7, 0x01, 0x22, 0x38, 0x82, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x74, 0x01, 0x11, 0x33, 0x8D, 0x09, 0x13, 0x09, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD7, 0x19, 0xF8, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0xD7, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0xB6, 0x19, 0xB5, 0x01, 0x21, 0xD6, 0x01, 0x19, 0xB6, 0x80, 0x19, 0xB5, 0x01, 0x19, 0xB6, 0x04, 0x19, 0xB5, 0x06, 0x21, 0xB5, 0x03, 0x21, 0x95, 0x80, 0x19, 0x95, 0x02, 0x21, 0xB5, 0x80, 0x21, 0x95, 0x01, 0x19, 0xB5, 0x81, 0x21, 0xB5, 0x19, 0xB5, 0x01, 0x21, 0xB5, 0x80, 0x21, 0xB4, 0x02, 0x19, 0x94, 0x02, 0x19, 0xB5, 0x82, 0x19, 0x95, 0x19, 0xB5, 0x19, 0x95, 0x01, 0x19, 0xB5, 0x84, 0x21, 0xB5, 0x19, 0xB5, 0x21, 0xB5, 0x19, 0xB5, 0x19, 0x95, 0x01, 0x21, 0xB5, 0x81, 0x21, 0x95, 0x21, 0xB5, 0x03, 0x19, 0xB5, 0x81, 0x19, + 0xB6, 0x19, 0x96, 0x01, 0x19, 0xB6, 0x83, 0x11, 0xB6, 0x09, 0xB7, 0x09, 0xB8, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x09, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x89, 0x01, 0xF9, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xB7, 0x09, 0x96, 0x09, 0x54, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x31, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x06, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x88, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x87, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0xB6, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x32, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x93, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x10, 0x19, 0x32, 0x11, 0x32, 0x11, 0x13, 0x09, 0x33, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x32, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, + 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x89, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x51, 0x19, 0x10, 0x10, 0xF1, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x01, 0x11, 0x12, 0x81, 0x19, 0x11, 0x19, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x29, 0x51, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x01, 0x11, 0x33, 0x89, 0x11, 0x75, 0x21, 0xD7, 0x2A, 0x38, 0x21, 0xF7, 0x19, 0x75, 0x11, 0x34, 0x11, 0x33, 0x11, 0x32, 0x19, 0x52, 0x21, 0x52, 0x01, 0x19, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x89, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0xB6, 0x1A, 0x18, 0x1A, + 0x19, 0x19, 0xD7, 0x08, 0xF2, 0x19, 0x11, 0x21, 0x31, 0x04, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x07, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x19, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x32, 0x21, 0xB5, 0x01, 0x21, 0xF7, 0x84, 0x19, 0x95, 0x11, 0x13, 0x11, 0x12, 0x21, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x11, 0x54, 0x19, 0xB6, 0x01, 0x22, 0x18, 0x84, 0x19, 0x96, 0x19, 0x75, 0x19, 0x54, 0x19, 0x12, 0x18, 0xF1, 0x01, 0x19, 0x11, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x30, 0x29, 0x50, 0x18, 0xEF, 0x19, 0x0F, 0x21, 0x51, 0x21, 0x71, 0x19, 0x11, 0x19, 0x31, 0x01, 0x11, 0x32, 0x81, 0x11, 0x53, 0x19, 0x95, 0x01, 0x22, 0x17, 0x86, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x21, 0x11, 0x21, 0x30, 0x04, 0x21, 0x10, 0x86, 0x29, 0x10, 0x21, 0x10, + 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x34, 0x19, 0x96, 0x01, 0x21, 0xD7, 0x96, 0x19, 0xB6, 0x19, 0x75, 0x19, 0x74, 0x11, 0x32, 0x10, 0xF1, 0x19, 0x32, 0x19, 0x52, 0x19, 0x51, 0x19, 0x31, 0x11, 0x52, 0x11, 0x32, 0x09, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x1A, 0x17, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x18, 0xF1, 0x21, 0x31, 0x21, 0x11, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x07, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x04, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x92, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0xD6, 0x1A, 0x17, 0x22, 0x38, 0x1A, 0x18, 0x11, 0xD7, 0x09, 0xB7, 0x09, 0x96, 0x09, 0xB7, 0x11, 0xF8, 0x1A, 0x39, 0x1A, 0x18, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x01, 0x19, 0x31, 0x02, + 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x30, 0x93, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x54, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x0E, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x51, 0x8B, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x19, 0xD7, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x33, 0x11, 0x31, 0x19, 0x31, 0x01, 0x21, 0x51, 0x8C, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x13, 0x09, 0x13, 0x09, 0x34, 0x19, 0xD7, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x73, 0x19, 0x52, 0x19, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x8A, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0xB6, 0x19, 0xF8, 0x22, 0x18, 0x19, 0xB6, 0x11, 0x33, 0x19, 0x12, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x05, 0x21, 0x0F, + 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x81, 0x21, 0xF7, 0x19, 0x96, 0x01, 0x11, 0x33, 0x81, 0x19, 0x52, 0x19, 0x32, 0x01, 0x21, 0x31, 0x06, 0x21, 0x30, 0x05, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x04, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x85, 0x18, 0xF1, 0x18, 0xF2, 0x11, 0x33, 0x19, 0xF8, 0x11, 0xF9, 0x01, 0xD9, 0x07, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x80, 0x02, 0x1A, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xF9, 0x85, 0x09, 0xD8, 0x09, 0x96, 0x11, 0x54, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x03, 0x21, 0x11, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x19, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x10, 0x03, 0x21, 0x31, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x19, + 0x31, 0x0B, 0x21, 0x31, 0x80, 0x19, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x10, 0x01, 0x19, 0x31, 0x83, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x03, 0x19, 0x31, 0x01, 0x11, 0x32, 0x88, 0x09, 0x12, 0x09, 0x74, 0x22, 0x38, 0x22, 0x17, 0x19, 0xF7, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x02, 0x09, 0x33, 0x82, 0x11, 0x54, 0x11, 0x96, 0x19, 0xF7, 0x01, 0x1A, 0x18, 0x81, 0x22, 0x38, 0x22, 0x18, 0x01, 0x22, 0x17, 0x81, 0x21, 0xF7, 0x2A, 0x17, 0x04, 0x2A, 0x38, 0x80, 0x22, 0x37, 0x04, 0x2A, 0x37, 0x83, 0x2A, 0x17, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x38, 0x0C, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x01, 0x2A, 0x17, 0x82, 0x2A, 0x16, 0x2A, 0x17, 0x29, 0xF6, 0x02, 0x2A, 0x16, 0x01, 0x2A, 0x17, 0x81, 0x21, 0xF7, 0x2A, 0x37, 0x04, 0x22, 0x17, 0x81, 0x2A, 0x17, 0x22, 0x17, 0x02, 0x2A, 0x17, 0x84, 0x21, 0xF7, 0x29, 0xF7, 0x21, 0xF7, 0x2A, 0x17, 0x21, 0xF6, 0x02, 0x21, 0xF7, 0x81, 0x19, 0xD6, 0x21, 0xF7, 0x01, 0x19, 0xD7, 0x80, 0x11, 0xB7, 0x01, 0x09, 0xD8, 0x81, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x06, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x82, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x01, 0x09, 0xD8, 0x85, 0x09, 0xD7, 0x11, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, + 0x31, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x89, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x87, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x83, 0x19, 0x96, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x90, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x09, 0x33, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xD5, 0x11, 0x74, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, + 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x10, 0x8B, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x17, 0x22, 0x18, 0x19, 0xB6, 0x11, 0x54, 0x01, 0x11, 0x12, 0x82, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x01, 0x11, 0x33, 0x8C, 0x19, 0x95, 0x21, 0xF7, 0x21, 0xF8, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x21, 0x52, 0x21, 0x51, 0x19, 0x30, 0x19, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x13, 0x19, 0xD6, 0x11, 0xF8, 0x1A, 0x18, 0x19, 0xD7, 0x08, 0xF2, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, + 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x19, 0x31, 0x88, 0x19, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0xB6, 0x08, 0xF2, 0x19, 0x12, 0x21, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x01, 0x11, 0x33, 0x86, 0x11, 0x54, 0x19, 0xB6, 0x2A, 0x38, 0x21, 0xF8, 0x19, 0x96, 0x19, 0x95, 0x11, 0x33, 0x01, 0x19, 0x12, 0x02, 0x21, 0x31, 0x88, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x50, 0x20, 0xEF, 0x18, 0xEF, 0x01, 0x21, 0x51, 0x01, 0x19, 0x31, 0x01, 0x11, 0x31, 0x82, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x85, 0x19, 0xB5, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x19, 0x32, 0x82, 0x11, 0x33, 0x19, 0x74, 0x19, 0xB6, 0x01, + 0x21, 0xD6, 0x85, 0x21, 0xB6, 0x19, 0x95, 0x19, 0x54, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x32, 0x02, 0x19, 0x52, 0x81, 0x11, 0x52, 0x09, 0x12, 0x01, 0x11, 0x54, 0x87, 0x11, 0xD6, 0x22, 0x38, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x86, 0x11, 0x32, 0x11, 0x53, 0x11, 0xB6, 0x19, 0xF7, 0x11, 0xF8, 0x11, 0xB7, 0x09, 0x96, 0x01, 0x09, 0x76, 0x80, 0x09, 0x96, 0x01, 0x09, 0x76, 0x88, 0x09, 0x97, 0x11, 0xF8, 0x19, 0xD8, 0x19, 0x96, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x19, 0x10, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x31, 0x29, 0x52, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x02, 0x21, 0xF7, 0x83, + 0x19, 0xD6, 0x11, 0x75, 0x11, 0x54, 0x11, 0x12, 0x01, 0x19, 0x32, 0x02, 0x21, 0x11, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x8A, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x12, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x8B, 0x21, 0x51, 0x19, 0x31, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x53, 0x19, 0x32, 0x02, 0x19, 0x31, 0x82, 0x21, 0x51, 0x19, 0x31, 0x19, 0x12, 0x01, 0x11, 0x33, 0x87, 0x11, 0x54, 0x11, 0x96, 0x21, 0xD7, 0x21, 0xD6, 0x21, 0xB5, 0x19, 0x73, 0x19, 0x52, 0x21, 0x31, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x11, 0x13, 0x11, 0x54, 0x11, 0xB6, 0x01, 0x22, 0x18, 0x86, 0x19, 0xB6, 0x11, 0x33, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x50, 0x21, 0x30, 0x19, 0x30, 0x19, 0x10, 0x01, 0x11, 0x11, 0x8A, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x95, 0x09, 0x33, 0x11, 0x33, 0x19, 0x53, 0x19, 0x32, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, + 0x04, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x86, 0x19, 0x11, 0x19, 0x12, 0x19, 0x74, 0x1A, 0x18, 0x09, 0xB8, 0x09, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x04, 0x01, 0xFA, 0x80, 0x02, 0x1A, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x85, 0x12, 0x19, 0x1A, 0x18, 0x09, 0x34, 0x11, 0x33, 0x19, 0x12, 0x21, 0x32, 0x01, 0x21, 0x11, 0x02, 0x21, 0x31, 0x05, 0x21, 0x30, 0x01, 0x19, 0x30, 0x80, 0x19, 0x31, 0x02, 0x21, 0x31, 0x80, 0x21, 0x51, 0x07, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x30, 0x03, 0x21, 0x31, 0x84, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x21, 0x51, 0x03, 0x21, 0x31, 0x81, 0x19, 0x10, 0x19, 0x31, 0x01, 0x19, 0x11, 0x04, 0x19, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x32, 0x09, 0x12, 0x09, 0x33, 0x09, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0xB6, 0x01, 0x11, 0x54, 0x02, 0x09, 0x33, 0x82, 0x11, 0x54, 0x11, 0x74, 0x19, + 0xB5, 0x02, 0x19, 0xD6, 0x80, 0x21, 0xF7, 0x01, 0x21, 0xF6, 0x80, 0x21, 0xF7, 0x04, 0x21, 0xD6, 0x02, 0x21, 0xF6, 0x80, 0x21, 0xD6, 0x02, 0x21, 0xF6, 0x83, 0x21, 0xD6, 0x21, 0xF6, 0x21, 0xF7, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x01, 0x21, 0xD6, 0x80, 0x21, 0xF7, 0x03, 0x21, 0xD6, 0x80, 0x21, 0xF6, 0x01, 0x21, 0xD6, 0x06, 0x21, 0xF6, 0x03, 0x21, 0xD6, 0x03, 0x21, 0xF6, 0x80, 0x21, 0xF7, 0x01, 0x19, 0xD6, 0x01, 0x21, 0xD6, 0x81, 0x19, 0xD6, 0x21, 0xF7, 0x03, 0x21, 0xD6, 0x84, 0x21, 0xD7, 0x21, 0xD6, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x01, 0x19, 0xD7, 0x01, 0x11, 0xD8, 0x82, 0x09, 0xD9, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x04, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFB, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x82, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xF9, 0x89, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xF8, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x11, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, + 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8D, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0xF6, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x96, 0x11, 0x53, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x29, 0x50, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x19, 0xF6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xD5, 0x11, 0x74, 0x11, 0x11, 0x19, 0x11, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x51, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x20, 0xEF, 0x03, 0x29, 0x10, 0x05, 0x21, 0x10, 0x86, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, + 0x21, 0x30, 0x81, 0x21, 0x51, 0x19, 0x52, 0x01, 0x11, 0x12, 0x81, 0x11, 0x33, 0x19, 0xB5, 0x01, 0x22, 0x17, 0x86, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x54, 0x11, 0x32, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8E, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x2A, 0x38, 0x21, 0xF7, 0x19, 0xB7, 0x19, 0x96, 0x11, 0x54, 0x11, 0x13, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x51, 0x80, 0x21, 0x50, 0x02, 0x21, 0x0F, 0x8E, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x50, 0x21, 0x51, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x18, 0x1A, 0x19, 0x19, 0xB7, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x8E, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x21, 0xB5, + 0x29, 0xF7, 0x21, 0xF7, 0x19, 0xB5, 0x08, 0xF2, 0x10, 0xF2, 0x19, 0x32, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x21, 0x10, 0x20, 0xEF, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x21, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x85, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x50, 0x01, 0x21, 0x51, 0x82, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x01, 0x11, 0x32, 0x85, 0x09, 0x54, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x05, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x51, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x82, 0x19, 0x53, 0x19, 0x95, 0x19, 0xB5, 0x02, 0x21, 0xD6, 0x84, 0x19, 0x95, 0x19, 0x74, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x01, 0x19, 0x52, 0x8C, 0x19, 0x73, 0x11, 0x53, 0x09, 0x12, 0x09, 0x33, 0x09, + 0x54, 0x19, 0xD6, 0x22, 0x38, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x19, 0x53, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8B, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x11, 0x32, 0x19, 0xD6, 0x22, 0x39, 0x19, 0xF8, 0x11, 0xB7, 0x09, 0x76, 0x02, 0x09, 0x75, 0x81, 0x09, 0x55, 0x09, 0x75, 0x02, 0x09, 0x76, 0x8B, 0x11, 0xB7, 0x2A, 0x59, 0x11, 0x75, 0x11, 0x12, 0x19, 0x31, 0x21, 0x11, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x85, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x19, 0x12, 0x82, 0x11, 0x33, 0x11, 0x54, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x88, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x12, 0x19, 0x12, 0x21, 0x32, 0x21, 0x31, 0x21, 0x11, 0x21, + 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x08, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x86, 0x19, 0x30, 0x19, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x18, 0x84, 0x21, 0xF7, 0x11, 0x95, 0x11, 0x53, 0x11, 0x33, 0x19, 0x32, 0x02, 0x19, 0x31, 0x8C, 0x19, 0x51, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x19, 0x75, 0x19, 0xD7, 0x22, 0x18, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x74, 0x19, 0x53, 0x21, 0x52, 0x21, 0x31, 0x01, 0x21, 0x10, 0x8C, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x12, 0x09, 0x13, 0x11, 0x75, 0x21, 0xF8, 0x22, 0x39, 0x21, 0xF8, 0x19, 0x95, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x19, 0x10, 0x8A, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x09, 0x34, 0x11, 0x33, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, + 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x85, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x19, 0xF8, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0x01, 0xDA, 0x03, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x80, 0x02, 0x1A, 0x01, 0x01, 0xFA, 0x89, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xF9, 0x12, 0x19, 0x11, 0xD8, 0x09, 0x54, 0x11, 0x33, 0x19, 0x12, 0x19, 0x32, 0x21, 0x32, 0x06, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x02, 0x19, 0x31, 0x08, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x84, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x02, 0x21, 0x31, 0x80, 0x21, 0x11, 0x02, 0x21, 0x31, 0x08, 0x19, 0x31, 0x8A, 0x19, 0x32, 0x19, 0x52, 0x19, 0x32, 0x19, 0x52, 0x19, 0x53, 0x11, 0x33, 0x09, 0x12, 0x11, 0x33, 0x11, 0x74, 0x11, 0x75, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x86, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x54, 0x09, 0x33, 0x09, 0x13, 0x11, 0x53, 0x11, 0x33, 0x02, 0x11, 0x74, 0x82, 0x19, 0x95, 0x19, 0x74, 0x19, 0x95, 0x01, 0x19, 0x74, 0x80, 0x19, 0x95, + 0x01, 0x19, 0x75, 0x02, 0x19, 0x95, 0x80, 0x19, 0x94, 0x14, 0x19, 0x95, 0x81, 0x19, 0x94, 0x19, 0xB5, 0x08, 0x19, 0x95, 0x80, 0x19, 0xB5, 0x05, 0x19, 0x95, 0x81, 0x11, 0x95, 0x19, 0xB5, 0x06, 0x19, 0x95, 0x80, 0x19, 0x75, 0x04, 0x19, 0x95, 0x01, 0x11, 0x96, 0x82, 0x11, 0x97, 0x09, 0xB8, 0x09, 0xD8, 0x02, 0x01, 0xD9, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x04, 0x01, 0xFA, 0x83, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xFB, 0x0B, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x84, 0x09, 0xF8, 0x11, 0xD7, 0x09, 0x96, 0x11, 0x54, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x8A, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x38, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x53, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x84, 0x29, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, + 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xF6, 0x19, 0xF7, 0x19, 0xF6, 0x19, 0xD5, 0x11, 0x74, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x30, 0x03, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x01, 0x21, 0x30, 0x06, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x20, 0xEF, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8F, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x32, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x2A, 0x38, 0x21, 0xF8, 0x21, 0xD7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x01, 0x19, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, + 0x88, 0x21, 0x51, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xD7, 0x08, 0xF2, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x07, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x06, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x20, 0xEF, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x18, 0xEF, 0x01, 0x19, 0x10, 0x89, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x21, 0xB5, 0x21, 0xF6, 0x22, 0x17, 0x21, 0xB6, 0x08, 0xF2, 0x10, 0xF2, 0x19, 0x32, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x20, 0xEF, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x31, 0x85, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x01, 0x22, 0x17, 0x88, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x21, 0x32, 0x21, 0x11, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x09, 0x33, 0x11, 0x95, 0x22, 0x17, 0x22, 0x37, 0x21, 0xD6, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x04, 0x21, 0x10, 0x84, 0x29, 0x10, + 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x07, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x83, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x12, 0x01, 0x19, 0x33, 0x86, 0x19, 0x95, 0x19, 0xB5, 0x21, 0xD6, 0x19, 0xB6, 0x21, 0xD6, 0x21, 0xB6, 0x19, 0x74, 0x02, 0x11, 0x32, 0x87, 0x19, 0x52, 0x19, 0x73, 0x19, 0x52, 0x11, 0x32, 0x09, 0x12, 0x09, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x87, 0x21, 0xF7, 0x19, 0x75, 0x19, 0x53, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x86, 0x19, 0x10, 0x19, 0x31, 0x11, 0x53, 0x19, 0xF7, 0x1A, 0x18, 0x1A, 0x19, 0x09, 0xB7, 0x01, + 0x09, 0x55, 0x81, 0x09, 0x34, 0x09, 0x75, 0x01, 0x09, 0x55, 0x01, 0x09, 0x75, 0x87, 0x09, 0x76, 0x11, 0xB7, 0x22, 0x59, 0x19, 0x96, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x11, 0x01, 0x19, 0x12, 0x82, 0x11, 0x33, 0x19, 0x54, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x88, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x12, 0x19, 0x12, 0x19, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x29, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x87, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x09, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x84, 0x11, 0x11, 0x11, 0x12, 0x19, 0x54, 0x19, 0x95, 0x21, 0xF7, 0x01, 0x22, 0x18, 0x84, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x11, 0x31, 0x01, 0x19, 0x31, 0x85, 0x19, 0x51, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x19, 0xB6, 0x01, 0x19, 0xF7, 0x89, 0x19, 0xD7, 0x19, 0xB5, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x21, + 0x52, 0x01, 0x11, 0x12, 0x88, 0x11, 0x54, 0x19, 0xD7, 0x22, 0x38, 0x22, 0x18, 0x19, 0xD7, 0x11, 0x54, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8B, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x21, 0xF7, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x80, 0x21, 0x51, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x84, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x87, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x86, 0x21, 0x10, 0x19, 0x11, 0x19, 0x12, 0x11, 0x34, 0x1A, + 0x18, 0x09, 0xF9, 0x09, 0xDA, 0x01, 0x01, 0xDA, 0x83, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x03, 0x01, 0xFA, 0x01, 0x02, 0x1A, 0x01, 0x01, 0xFA, 0x86, 0x01, 0xF9, 0x09, 0xD8, 0x09, 0x76, 0x09, 0x55, 0x09, 0x13, 0x11, 0x13, 0x11, 0x12, 0x01, 0x19, 0x12, 0x06, 0x19, 0x11, 0x81, 0x19, 0x10, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x11, 0x11, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x0A, 0x19, 0x11, 0x80, 0x19, 0x31, 0x11, 0x19, 0x11, 0x01, 0x11, 0x11, 0x88, 0x11, 0x12, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x11, 0x33, 0x09, 0x33, 0x11, 0x74, 0x11, 0x75, 0x11, 0x95, 0x01, 0x11, 0xB6, 0x84, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x74, 0x11, 0x54, 0x11, 0x53, 0x01, 0x11, 0x33, 0x01, 0x11, 0x53, 0x02, 0x11, 0x33, 0x81, 0x19, 0x33, 0x11, 0x12, 0x03, 0x19, 0x33, 0x81, 0x19, 0x53, 0x11, 0x33, 0x03, 0x11, 0x53, 0x01, 0x11, 0x33, 0x84, 0x11, 0x53, 0x11, 0x33, 0x11, 0x53, 0x11, 0x33, 0x19, 0x33, 0x01, 0x11, 0x53, 0x01, 0x19, 0x53, 0x01, 0x11, 0x53, 0x01, 0x19, 0x53, 0x80, 0x11, 0x33, 0x03, 0x11, 0x53, 0x80, 0x19, 0x53, 0x01, 0x19, 0x33, 0x81, 0x19, 0x53, 0x11, 0x53, 0x03, 0x19, 0x53, 0x01, 0x11, 0x33, 0x0C, 0x11, 0x53, 0x82, 0x19, 0x54, 0x11, 0x34, 0x19, 0x54, 0x04, 0x11, 0x33, 0x85, 0x11, 0x54, 0x09, 0x34, 0x09, 0x55, 0x01, 0x76, 0x01, 0xB8, 0x09, 0xF9, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x06, 0x01, + 0xDA, 0x80, 0x01, 0xFA, 0x05, 0x01, 0xDA, 0x03, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x09, 0xF9, 0x86, 0x09, 0xD8, 0x09, 0xB6, 0x09, 0x75, 0x11, 0x53, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x87, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x17, 0x19, 0xF7, 0x11, 0x96, 0x11, 0x33, 0x01, 0x19, 0x11, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x81, 0x11, 0x32, 0x11, 0x54, 0x02, 0x19, 0xD6, 0x83, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x11, 0x19, 0x11, 0x03, 0x19, 0x31, 0x03, 0x21, 0x31, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, + 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x01, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x51, 0x86, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x11, 0x54, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xF7, 0x01, 0x19, 0xB6, 0x84, 0x11, 0x54, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x11, 0x19, 0x12, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xB7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x8F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x51, 0x19, 0x32, 0x09, 0x12, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xB6, 0x08, 0xF2, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x07, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x02, + 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8F, 0x19, 0x32, 0x11, 0x12, 0x21, 0xD5, 0x2A, 0x17, 0x22, 0x17, 0x19, 0xB5, 0x08, 0xF2, 0x19, 0x12, 0x19, 0x32, 0x21, 0x51, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x01, 0x19, 0x33, 0x8A, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x11, 0x75, 0x09, 0x33, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x8C, 0x19, 0x10, 0x19, 0x12, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x08, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x11, 0x01, 0x19, 0x12, 0x83, 0x19, 0x54, 0x19, 0x74, 0x19, 0x95, 0x19, 0x96, 0x02, 0x21, 0xD6, 0x83, 0x19, 0x74, 0x11, 0x12, 0x11, 0x32, 0x11, 0x11, 0x02, 0x19, 0x52, 0x83, 0x11, 0x53, 0x11, 0x33, 0x11, 0x53, 0x11, + 0x74, 0x01, 0x19, 0xB6, 0x84, 0x21, 0xF7, 0x21, 0xD7, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x04, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x83, 0x19, 0x10, 0x19, 0x31, 0x11, 0x53, 0x19, 0xD6, 0x01, 0x1A, 0x18, 0x83, 0x11, 0xD7, 0x09, 0x76, 0x09, 0x55, 0x09, 0x34, 0x01, 0x09, 0x54, 0x01, 0x09, 0x55, 0x88, 0x11, 0xB6, 0x11, 0xB7, 0x19, 0xF8, 0x22, 0x18, 0x11, 0x55, 0x08, 0xF2, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x84, 0x19, 0x11, 0x19, 0x12, 0x19, 0x33, 0x19, 0x54, 0x19, 0x95, 0x01, 0x21, 0xF7, 0x87, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x34, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x02, + 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x0A, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x29, 0x50, 0x29, 0x30, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x31, 0x01, 0x11, 0x32, 0x89, 0x19, 0x74, 0x19, 0x95, 0x19, 0xD6, 0x19, 0xD7, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x54, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x8A, 0x19, 0x51, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x19, 0x96, 0x19, 0xD7, 0x21, 0xF8, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x74, 0x01, 0x19, 0x32, 0x01, 0x19, 0x11, 0x86, 0x21, 0x31, 0x21, 0x52, 0x19, 0x31, 0x19, 0x12, 0x11, 0x12, 0x11, 0x54, 0x19, 0xB6, 0x01, 0x22, 0x18, 0x85, 0x19, 0xD7, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x07, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x31, 0x83, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x01, 0x1A, 0x17, 0x87, 0x19, 0xF7, 0x19, 0xB6, 0x09, 0x34, 0x11, 0x33, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x89, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, + 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x11, 0x10, 0xF2, 0x11, 0x34, 0x1A, 0x18, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x02, 0x1A, 0x89, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xB8, 0x01, 0x77, 0x09, 0x96, 0x09, 0x55, 0x09, 0x34, 0x11, 0x33, 0x01, 0x11, 0x13, 0x03, 0x11, 0x33, 0x81, 0x11, 0x32, 0x11, 0x12, 0x03, 0x11, 0x32, 0x03, 0x11, 0x33, 0x06, 0x11, 0x32, 0x81, 0x11, 0x33, 0x11, 0x12, 0x04, 0x11, 0x32, 0x05, 0x11, 0x33, 0x81, 0x11, 0x32, 0x11, 0x33, 0x02, 0x11, 0x32, 0x03, 0x11, 0x33, 0x84, 0x11, 0x32, 0x11, 0x33, 0x11, 0x12, 0x11, 0x33, 0x11, 0x32, 0x01, 0x09, 0x12, 0x80, 0x11, 0x12, 0x02, 0x11, 0x33, 0x83, 0x09, 0x33, 0x11, 0x74, 0x11, 0x75, 0x11, 0x95, 0x02, 0x11, 0xB6, 0x80, 0x11, 0x95, 0x01, 0x11, 0x54, 0x01, 0x11, 0x53, 0x81, 0x19, 0x53, 0x11, 0x32, 0x03, 0x19, 0x32, 0x82, 0x19, 0x12, + 0x19, 0x32, 0x19, 0x12, 0x01, 0x19, 0x32, 0x80, 0x19, 0x12, 0x02, 0x19, 0x32, 0x80, 0x11, 0x12, 0x01, 0x19, 0x32, 0x82, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x06, 0x19, 0x32, 0x01, 0x11, 0x32, 0x03, 0x19, 0x32, 0x80, 0x11, 0x32, 0x0D, 0x19, 0x32, 0x83, 0x11, 0x32, 0x19, 0x32, 0x11, 0x32, 0x19, 0x32, 0x02, 0x11, 0x32, 0x01, 0x19, 0x52, 0x87, 0x19, 0x32, 0x19, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x33, 0x11, 0x12, 0x19, 0x32, 0x11, 0x32, 0x01, 0x19, 0x32, 0x86, 0x11, 0x32, 0x11, 0x33, 0x11, 0x34, 0x09, 0x54, 0x09, 0x76, 0x09, 0xD8, 0x01, 0xD8, 0x01, 0x01, 0xD9, 0x06, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xFB, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x07, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x85, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xD7, 0x11, 0xB6, 0x11, 0x74, 0x01, 0x19, 0x52, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x07, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x31, 0x11, 0x12, + 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x18, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x8F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x09, 0x53, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x12, 0x19, 0x31, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x30, 0x83, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x03, 0x19, 0x32, 0x83, 0x19, 0x52, 0x19, 0x32, 0x21, 0x32, 0x19, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x89, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x94, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x51, 0x21, 0x51, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x09, 0x33, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, + 0x0F, 0x02, 0x21, 0x30, 0x8D, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x53, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x18, 0x19, 0xD7, 0x19, 0x96, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x8C, 0x19, 0x30, 0x21, 0x51, 0x19, 0x32, 0x11, 0x12, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xB7, 0x08, 0xF2, 0x19, 0x31, 0x21, 0x11, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x85, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x06, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8B, 0x19, 0x32, 0x08, 0xF2, 0x21, 0xB5, 0x2A, 0x17, 0x22, 0x17, 0x21, 0xD6, 0x10, 0xF2, 0x11, 0x12, 0x21, 0x52, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x87, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x32, 0x19, 0x33, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x21, 0xF7, 0x22, + 0x17, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x80, 0x21, 0x11, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x84, 0x19, 0x10, 0x19, 0x11, 0x19, 0x31, 0x11, 0x12, 0x11, 0x54, 0x01, 0x21, 0xF7, 0x85, 0x22, 0x17, 0x11, 0x53, 0x11, 0x12, 0x19, 0x12, 0x21, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x19, 0x11, 0x9C, 0x19, 0x12, 0x19, 0x32, 0x19, 0x33, 0x19, 0x54, 0x19, 0x95, 0x21, 0xD6, 0x19, 0xB6, 0x21, 0xD6, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x11, 0x31, 0x19, 0x73, 0x19, 0x93, 0x11, 0x32, 0x11, 0x33, 0x09, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xD7, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, + 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x8E, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x10, 0x19, 0x11, 0x11, 0x53, 0x11, 0xB6, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0xD8, 0x09, 0x96, 0x09, 0x55, 0x09, 0x54, 0x01, 0x09, 0x34, 0x01, 0x09, 0x55, 0x88, 0x11, 0xB7, 0x11, 0xF8, 0x1A, 0x19, 0x19, 0xF8, 0x09, 0x55, 0x08, 0xF2, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x11, 0x84, 0x19, 0x11, 0x19, 0x12, 0x19, 0x33, 0x19, 0x54, 0x19, 0xB6, 0x02, 0x21, 0xF7, 0x85, 0x19, 0x95, 0x11, 0x54, 0x11, 0x13, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x04, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x81, 0x29, 0x50, 0x29, 0x30, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x31, 0x88, 0x11, 0x12, + 0x11, 0x32, 0x11, 0x74, 0x19, 0x95, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x34, 0x01, 0x11, 0x12, 0x01, 0x11, 0x31, 0x81, 0x19, 0x51, 0x19, 0x52, 0x01, 0x19, 0x32, 0x83, 0x11, 0x33, 0x11, 0x74, 0x19, 0x96, 0x19, 0xD7, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x11, 0x86, 0x21, 0x31, 0x21, 0x52, 0x19, 0x52, 0x19, 0x12, 0x10, 0xF2, 0x19, 0x54, 0x19, 0x95, 0x01, 0x22, 0x18, 0x85, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x32, 0x19, 0x31, 0x21, 0x51, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x08, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x81, 0x19, 0x10, 0x19, 0x11, 0x01, 0x11, 0x32, 0x81, 0x11, 0x74, 0x19, 0xB6, 0x01, 0x22, 0x18, 0x87, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x21, 0x32, 0x21, 0x31, 0x21, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x08, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, + 0x81, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x1A, 0x39, 0x09, 0xF9, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xFA, 0x02, 0x1A, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xFB, 0x80, 0x02, 0x1B, 0x01, 0x01, 0xFA, 0x85, 0x01, 0xFB, 0x01, 0xFA, 0x02, 0x1A, 0x01, 0xFA, 0x01, 0xB9, 0x01, 0x98, 0x01, 0x11, 0xF8, 0x80, 0x09, 0x96, 0x02, 0x11, 0x96, 0x80, 0x11, 0xB6, 0x02, 0x11, 0x96, 0x01, 0x11, 0x95, 0x80, 0x11, 0xB5, 0x01, 0x11, 0x95, 0x80, 0x11, 0xB5, 0x01, 0x11, 0x96, 0x83, 0x11, 0xB6, 0x11, 0x96, 0x11, 0xB6, 0x11, 0x95, 0x02, 0x11, 0x96, 0x81, 0x11, 0x95, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x02, 0x11, 0x95, 0x80, 0x11, 0xB5, 0x04, 0x11, 0xB6, 0x01, 0x11, 0x96, 0x06, 0x11, 0xB6, 0x81, 0x19, 0xD6, 0x11, 0xD6, 0x04, 0x11, 0xB6, 0x82, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x54, 0x01, 0x11, 0x53, 0x02, 0x09, 0x33, 0x87, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x19, 0xD6, 0x19, 0xD7, 0x11, 0xB6, 0x11, 0xB5, 0x11, 0x54, 0x01, 0x11, 0x33, 0x80, 0x11, 0x32, 0x02, 0x19, 0x32, 0x01, 0x19, 0x11, 0x81, 0x21, 0x32, 0x19, 0x32, 0x01, 0x21, 0x32, 0x02, 0x19, 0x32, 0x83, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x19, 0x11, 0x03, 0x19, 0x31, 0x83, 0x19, 0x11, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x0E, 0x19, 0x31, 0x80, 0x19, 0x11, 0x04, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, + 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x02, 0x19, 0x31, 0x01, 0x19, 0x32, 0x02, 0x19, 0x31, 0x88, 0x19, 0x32, 0x19, 0x52, 0x11, 0x32, 0x11, 0x33, 0x09, 0x34, 0x09, 0x55, 0x09, 0xB7, 0x09, 0xF9, 0x01, 0xFA, 0x06, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x06, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x10, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x03, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x86, 0x0A, 0x1A, 0x09, 0xF9, 0x09, 0xD7, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x32, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x85, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x19, 0x31, 0x19, 0x12, 0x09, 0x13, 0x19, 0xD6, 0x1A, 0x18, 0x19, 0xD7, 0x11, 0x96, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x8C, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x19, 0xF6, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x73, 0x11, 0x12, 0x19, 0x31, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x30, 0x21, + 0x10, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x01, 0x11, 0x32, 0x01, 0x11, 0x33, 0x02, 0x19, 0x53, 0x86, 0x19, 0x52, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x8F, 0x21, 0x50, 0x21, 0x31, 0x19, 0x51, 0x11, 0x32, 0x09, 0x12, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xF7, 0x22, 0x17, 0x21, 0xF6, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x11, 0x31, 0x19, 0x11, 0x19, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x19, 0x54, 0x19, 0x95, 0x21, 0xF7, 0x2A, 0x38, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x11, 0x02, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x89, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0xD7, 0x1A, + 0x18, 0x1A, 0x19, 0x19, 0xB7, 0x08, 0xF2, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x21, 0x52, 0x11, 0x11, 0x10, 0xF2, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xF7, 0x21, 0xB6, 0x11, 0x12, 0x19, 0x12, 0x21, 0x32, 0x01, 0x21, 0x31, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x32, 0x01, 0x11, 0x12, 0x81, 0x11, 0x74, 0x19, 0xB5, 0x01, 0x21, 0xF7, 0x82, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x54, 0x01, 0x11, 0x12, 0x83, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x20, 0xEF, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x19, 0x31, 0x88, 0x11, 0x12, 0x11, 0x33, 0x21, 0xD6, 0x21, 0xF7, 0x2A, 0x17, 0x19, 0x74, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, + 0x31, 0x02, 0x21, 0x30, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x86, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x19, 0x11, 0x19, 0x31, 0x02, 0x19, 0x32, 0x84, 0x19, 0x53, 0x19, 0x74, 0x19, 0x95, 0x21, 0xD6, 0x21, 0xF7, 0x01, 0x21, 0xD6, 0x91, 0x19, 0x54, 0x11, 0x12, 0x10, 0xF1, 0x11, 0x11, 0x19, 0x52, 0x21, 0x73, 0x19, 0x52, 0x11, 0x32, 0x09, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x54, 0x11, 0x12, 0x01, 0x19, 0x11, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x05, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x03, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x19, 0x31, 0x11, 0x53, 0x19, 0xB6, 0x19, 0xF7, 0x01, 0x11, 0xD8, 0x81, 0x09, 0x75, 0x09, 0x55, 0x01, + 0x09, 0x54, 0x01, 0x09, 0x34, 0x89, 0x09, 0x55, 0x09, 0x96, 0x11, 0xD8, 0x11, 0xF8, 0x19, 0xF8, 0x09, 0x55, 0x08, 0xF2, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x84, 0x19, 0x11, 0x19, 0x12, 0x19, 0x53, 0x19, 0x54, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x82, 0x21, 0xF6, 0x19, 0xB6, 0x11, 0x54, 0x01, 0x11, 0x12, 0x81, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0x95, 0x19, 0xD6, 0x19, 0xD7, 0x01, 0x19, 0xB6, 0x81, 0x19, 0x74, 0x11, 0x12, 0x01, 0x11, 0x11, 0x83, 0x11, 0x31, 0x19, 0x31, 0x19, 0x51, 0x19, 0x52, 0x01, 0x11, 0x32, 0x88, 0x11, 0x54, 0x19, 0x95, 0x19, 0xB6, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x82, 0x19, 0x31, 0x21, 0x52, 0x19, 0x52, 0x01, 0x11, 0x12, 0x89, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF7, + 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x02, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0xB6, 0x1A, 0x17, 0x22, 0x18, 0x19, 0xF7, 0x11, 0x95, 0x01, 0x11, 0x33, 0x80, 0x19, 0x32, 0x01, 0x21, 0x31, 0x8B, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x08, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x8A, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x09, 0x13, 0x1A, 0x39, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0xDA, + 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xFB, 0x82, 0x01, 0xDB, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0x01, 0xFB, 0x01, 0x01, 0xFA, 0x81, 0x09, 0xDA, 0x01, 0xB9, 0x02, 0x12, 0x19, 0x81, 0x12, 0x18, 0x1A, 0x18, 0x03, 0x1A, 0x39, 0x01, 0x22, 0x39, 0x01, 0x22, 0x38, 0x80, 0x22, 0x58, 0x01, 0x22, 0x38, 0x80, 0x22, 0x59, 0x01, 0x22, 0x39, 0x80, 0x22, 0x38, 0x03, 0x22, 0x39, 0x81, 0x22, 0x59, 0x22, 0x38, 0x01, 0x22, 0x39, 0x01, 0x22, 0x59, 0x01, 0x22, 0x38, 0x03, 0x22, 0x39, 0x01, 0x22, 0x59, 0x84, 0x22, 0x38, 0x22, 0x39, 0x22, 0x59, 0x22, 0x38, 0x22, 0x39, 0x01, 0x22, 0x59, 0x01, 0x22, 0x38, 0x82, 0x1A, 0x18, 0x22, 0x38, 0x1A, 0x38, 0x02, 0x1A, 0x18, 0x01, 0x1A, 0x38, 0x85, 0x1A, 0x17, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x54, 0x11, 0x53, 0x09, 0x32, 0x01, 0x09, 0x33, 0x81, 0x11, 0x54, 0x11, 0x95, 0x01, 0x19, 0xD6, 0x84, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x01, 0x11, 0x32, 0x87, 0x19, 0x11, 0x19, 0x32, 0x19, 0x11, 0x19, 0x32, 0x21, 0x32, 0x19, 0x11, 0x21, 0x32, 0x19, 0x11, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x05, 0x19, 0x31, 0x80, 0x19, 0x11, 0x0C, 0x19, 0x31, 0x80, 0x19, 0x11, 0x06, 0x19, 0x31, 0x83, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x02, 0x19, 0x31, 0x01, 0x21, 0x31, 0x0A, 0x19, 0x31, 0x80, 0x19, 0x11, 0x04, 0x19, 0x31, 0x84, 0x11, 0x32, 0x11, 0x12, 0x09, 0x34, 0x09, 0x55, 0x09, 0xB7, 0x01, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x83, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, + 0x01, 0x01, 0xFA, 0x04, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x09, 0x01, 0xDA, 0x80, 0x01, 0xDB, 0x0F, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x09, 0xF9, 0x85, 0x09, 0xF8, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x53, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x07, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x09, 0x12, 0x19, 0xD6, 0x1A, 0x18, 0x11, 0xD7, 0x19, 0xB6, 0x11, 0x33, 0x19, 0x12, 0x19, 0x31, 0x02, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x4F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x19, 0xF6, 0x19, 0xD6, 0x19, 0xD5, 0x11, 0x73, 0x11, 0x11, 0x19, 0x31, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x33, 0x11, 0x54, 0x11, 0x74, 0x01, 0x11, 0x75, 0x81, 0x11, 0x54, 0x09, 0x34, 0x02, 0x11, 0x33, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, + 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x90, 0x21, 0x2F, 0x29, 0x50, 0x29, 0x51, 0x21, 0x51, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x09, 0x33, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x18, 0x19, 0xF6, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x01, 0x19, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x74, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x11, 0x81, 0x19, 0x10, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x89, 0x21, 0x50, 0x19, 0x31, 0x19, 0x11, 0x11, 0x13, 0x19, 0xD7, 0x1A, 0x18, 0x1A, 0x19, 0x19, 0xB7, 0x08, 0xF2, 0x19, 0x32, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, + 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x51, 0x21, 0x32, 0x19, 0x11, 0x10, 0xF1, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xF7, 0x21, 0xB6, 0x11, 0x13, 0x19, 0x12, 0x21, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x06, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x90, 0x19, 0x32, 0x11, 0x32, 0x11, 0x74, 0x19, 0x95, 0x19, 0xD6, 0x22, 0x18, 0x22, 0x17, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x91, 0x29, 0x50, 0x21, 0x50, 0x19, 0x0F, 0x21, 0x50, 0x21, 0x51, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB6, 0x21, 0xF7, 0x2A, 0x17, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x86, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, + 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x8A, 0x19, 0x32, 0x19, 0x33, 0x11, 0x53, 0x19, 0x74, 0x19, 0x95, 0x19, 0xD6, 0x21, 0xD6, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x53, 0x11, 0x32, 0x01, 0x11, 0x11, 0x01, 0x19, 0x52, 0x81, 0x11, 0x11, 0x11, 0x32, 0x01, 0x11, 0x33, 0x01, 0x19, 0x95, 0x88, 0x19, 0xB6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x0A, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x74, 0x19, 0xD7, 0x01, 0x11, 0xD7, 0x88, 0x11, 0xB6, 0x09, 0x75, 0x01, 0x34, 0x09, 0x55, 0x09, 0x34, 0x01, 0x14, 0x01, 0x35, 0x09, 0x97, 0x11, 0xB8, 0x01, 0x11, 0xD8, 0x83, 0x11, 0x75, 0x08, 0xF2, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x83, 0x21, 0x50, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, + 0x08, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x19, 0x12, 0x19, 0x53, 0x19, 0x54, 0x19, 0xB5, 0x02, 0x21, 0xF7, 0x87, 0x19, 0x95, 0x11, 0x54, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x31, 0x85, 0x19, 0x31, 0x11, 0x12, 0x19, 0x53, 0x19, 0x95, 0x19, 0xD6, 0x21, 0xF7, 0x01, 0x19, 0xD6, 0x84, 0x19, 0x74, 0x11, 0x33, 0x11, 0x12, 0x10, 0xF1, 0x11, 0x11, 0x02, 0x19, 0x31, 0x01, 0x11, 0x32, 0x87, 0x11, 0x53, 0x19, 0x95, 0x19, 0xB6, 0x19, 0xD7, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x75, 0x11, 0x33, 0x01, 0x19, 0x12, 0x81, 0x10, 0xF1, 0x19, 0x31, 0x01, 0x19, 0x52, 0x8C, 0x11, 0x32, 0x11, 0x12, 0x11, 0x54, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x32, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x05, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x84, 0x29, 0x30, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x19, 0x11, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xF7, 0x11, 0x75, + 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x89, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x22, 0x39, 0x0A, 0x19, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x85, 0x01, 0xFB, 0x02, 0x1B, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x84, 0x01, 0xDA, 0x09, 0xDA, 0x09, 0xD9, 0x12, 0x19, 0x11, 0xF8, 0x02, 0x11, 0xD8, 0x01, 0x19, 0xF8, 0x80, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x80, 0x1A, 0x17, 0x01, 0x19, 0xF7, 0x08, 0x19, 0xF8, 0x83, 0x22, 0x18, 0x19, 0xF8, 0x22, 0x18, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x83, 0x19, 0xD7, 0x19, 0xF7, + 0x22, 0x18, 0x19, 0xF7, 0x02, 0x19, 0xF8, 0x81, 0x19, 0xF7, 0x19, 0xD7, 0x02, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x02, 0x19, 0xD7, 0x02, 0x19, 0xF7, 0x02, 0x1A, 0x18, 0x82, 0x1A, 0x17, 0x19, 0xF7, 0x11, 0xD7, 0x01, 0x11, 0xB6, 0x81, 0x11, 0x95, 0x11, 0x74, 0x03, 0x09, 0x33, 0x87, 0x09, 0x54, 0x11, 0x95, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x54, 0x01, 0x11, 0x32, 0x80, 0x11, 0x12, 0x01, 0x19, 0x32, 0x8A, 0x19, 0x11, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x18, 0xF1, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x05, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x19, 0x31, 0x80, 0x21, 0x52, 0x01, 0x19, 0x31, 0x82, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x0A, 0x19, 0x31, 0x02, 0x21, 0x31, 0x83, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x01, 0x21, 0x31, 0x10, 0x19, 0x31, 0x01, 0x11, 0x32, 0x83, 0x09, 0x34, 0x09, 0x55, 0x09, 0xB7, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x81, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x05, 0x01, 0xDA, 0x83, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x8A, 0x01, 0xF9, 0x09, 0xF9, 0x11, 0xF9, 0x11, 0xF8, 0x19, 0xD6, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, + 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x93, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x33, 0x11, 0x11, 0x19, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x8D, 0x21, 0x30, 0x21, 0x50, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x73, 0x11, 0x12, 0x19, 0x31, 0x21, 0x30, 0x05, 0x29, 0x30, 0x01, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x38, 0x01, 0x22, 0x58, 0x86, 0x22, 0x38, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x54, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, + 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x51, 0x84, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB5, 0x01, 0x22, 0x17, 0x86, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x8C, 0x19, 0x10, 0x19, 0x11, 0x19, 0x12, 0x19, 0x33, 0x21, 0xB5, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x52, 0x01, 0x19, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x50, 0x02, 0x21, 0x2F, 0x8C, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x13, 0x19, 0xD7, 0x19, 0xF8, 0x1A, 0x19, 0x19, 0xD7, 0x08, 0xF2, 0x19, 0x12, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x10, 0x92, 0x21, 0x30, 0x21, 0x31, 0x21, 0x52, 0x19, 0x12, + 0x11, 0x12, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xF7, 0x21, 0xB6, 0x11, 0x13, 0x19, 0x12, 0x19, 0x32, 0x21, 0x31, 0x29, 0x31, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x11, 0x54, 0x11, 0xB5, 0x22, 0x37, 0x01, 0x22, 0x38, 0x86, 0x19, 0xB5, 0x09, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x84, 0x21, 0x51, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x19, 0xB5, 0x01, 0x22, 0x17, 0x89, 0x19, 0x94, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x85, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x89, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x01, 0x19, 0x53, 0x81, 0x19, 0x54, 0x19, 0x95, 0x01, 0x21, + 0xD6, 0x86, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x53, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x72, 0x01, 0x19, 0x32, 0x8D, 0x11, 0x12, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x12, 0x18, 0xF1, 0x21, 0x11, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x89, 0x19, 0x10, 0x19, 0x32, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xB7, 0x19, 0xF7, 0x11, 0xF7, 0x19, 0xF7, 0x11, 0xB6, 0x09, 0x96, 0x01, 0x09, 0x76, 0x88, 0x09, 0xB7, 0x11, 0xD8, 0x09, 0x97, 0x11, 0xB8, 0x19, 0xD8, 0x09, 0x75, 0x08, 0xF2, 0x11, 0x11, 0x19, 0x11, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x09, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x31, 0x19, 0x12, 0x19, 0x33, 0x19, 0x74, 0x19, 0xB5, 0x02, + 0x21, 0xF7, 0x86, 0x19, 0x95, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x21, 0x51, 0x21, 0x31, 0x29, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x31, 0x11, 0x32, 0x19, 0x53, 0x11, 0x54, 0x19, 0x95, 0x01, 0x21, 0xF7, 0x87, 0x19, 0xB5, 0x19, 0x74, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x51, 0x19, 0x52, 0x01, 0x11, 0x11, 0x83, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x82, 0x19, 0xB6, 0x19, 0x75, 0x11, 0x33, 0x02, 0x19, 0x12, 0x8F, 0x19, 0x11, 0x19, 0x31, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x09, 0x33, 0x19, 0xB5, 0x22, 0x17, 0x22, 0x18, 0x22, 0x17, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x02, 0x19, 0x32, 0x84, 0x19, 0x31, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xD7, 0x19, 0x96, 0x11, 0x34, 0x11, 0x12, 0x19, 0x12, 0x21, 0x31, 0x02, 0x21, + 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x08, 0x29, 0x0F, 0x05, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x07, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x87, 0x21, 0x31, 0x21, 0x10, 0x19, 0x11, 0x19, 0x12, 0x09, 0x13, 0x1A, 0x38, 0x0A, 0x19, 0x01, 0xB9, 0x03, 0x01, 0xDA, 0x06, 0x01, 0xFB, 0x8E, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xB7, 0x09, 0x96, 0x11, 0x96, 0x11, 0xB6, 0x11, 0x96, 0x11, 0xB6, 0x11, 0x96, 0x11, 0x95, 0x11, 0xB6, 0x04, 0x11, 0x95, 0x81, 0x19, 0x95, 0x11, 0x75, 0x01, 0x11, 0x95, 0x80, 0x11, 0x75, 0x01, 0x11, 0x96, 0x80, 0x11, 0x95, 0x01, 0x19, 0x95, 0x01, 0x11, 0x95, 0x81, 0x19, 0x95, 0x11, 0x75, 0x01, 0x11, 0x95, 0x81, 0x11, 0x75, 0x19, 0x95, 0x03, 0x11, 0x75, 0x82, 0x11, 0x95, 0x11, 0x75, 0x11, 0x95, 0x05, 0x11, 0x75, 0x80, 0x19, 0x75, 0x02, 0x11, 0x75, 0x02, 0x11, 0x95, 0x82, 0x11, 0xB6, 0x11, 0xB5, 0x11, 0xB6, 0x01, 0x11, 0xD6, 0x89, 0x19, + 0xF7, 0x11, 0xB6, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x53, 0x09, 0x33, 0x09, 0x13, 0x09, 0x33, 0x09, 0x54, 0x11, 0x95, 0x01, 0x19, 0xD6, 0x84, 0x19, 0xF7, 0x11, 0xB6, 0x11, 0xB5, 0x11, 0x74, 0x11, 0x53, 0x03, 0x11, 0x32, 0x81, 0x19, 0x32, 0x19, 0x12, 0x04, 0x19, 0x11, 0x01, 0x19, 0x32, 0x80, 0x19, 0x12, 0x09, 0x19, 0x32, 0x80, 0x19, 0x52, 0x04, 0x19, 0x32, 0x80, 0x19, 0x31, 0x03, 0x19, 0x32, 0x80, 0x19, 0x31, 0x03, 0x19, 0x32, 0x80, 0x19, 0x31, 0x02, 0x19, 0x32, 0x14, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x85, 0x11, 0x33, 0x09, 0x34, 0x01, 0x55, 0x09, 0xB7, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x02, 0x01, 0xDA, 0x82, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xDB, 0x03, 0x01, 0xDA, 0x81, 0x01, 0xFB, 0x01, 0xDB, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xDB, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xDB, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x02, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xF9, 0x01, 0x09, 0xF9, 0x85, 0x11, 0xD7, 0x11, 0xB6, 0x19, 0x74, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, + 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x93, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x4F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x8C, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x53, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x05, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x32, 0x11, 0x33, 0x19, 0x95, 0x11, 0xB6, 0x19, 0xF8, 0x12, 0x18, 0x11, 0xD7, 0x11, 0xF8, 0x09, 0xD7, 0x09, 0xD8, 0x11, 0xF8, 0x01, 0x1A, 0x38, 0x86, 0x1A, 0x18, 0x21, 0xF7, 0x11, 0x74, 0x19, 0x33, 0x19, 0x32, 0x21, 0x11, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8F, 0x21, 0x51, 0x21, 0x31, 0x10, 0xF1, 0x11, 0x12, 0x11, 0x33, 0x19, + 0x95, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8F, 0x21, 0x50, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0x53, 0x21, 0xB5, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x02, 0x19, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x50, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x51, 0x19, 0x11, 0x11, 0x13, 0x19, 0xD7, 0x01, 0x19, 0xF9, 0x82, 0x19, 0xD7, 0x08, 0xF2, 0x19, 0x32, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x21, 0x32, 0x19, 0x12, 0x10, 0xF2, 0x21, 0xB6, 0x2A, 0x17, 0x21, 0xF7, 0x21, 0xB6, 0x11, 0x13, 0x19, 0x12, 0x19, 0x32, 0x21, 0x11, 0x01, 0x21, 0x10, 0x84, 0x29, 0x10, 0x21, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, + 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x8F, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x74, 0x11, 0xB5, 0x22, 0x38, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x88, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, 0x32, 0x19, 0xB5, 0x01, 0x22, 0x17, 0x83, 0x19, 0xB5, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x8D, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x01, 0x19, 0x32, 0x01, 0x19, 0x53, 0x80, 0x19, 0x95, 0x02, 0x21, 0xD6, 0x85, 0x21, 0xB5, 0x19, 0x53, 0x11, 0x32, 0x11, 0x31, 0x19, 0x72, 0x19, 0x52, 0x01, 0x19, 0x32, 0x01, 0x11, 0x12, 0x89, 0x19, 0x53, 0x11, 0x74, 0x19, 0xB5, 0x22, 0x38, 0x19, 0xD6, + 0x19, 0xD7, 0x21, 0xD6, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x89, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x84, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x01, 0x19, 0xF7, 0x84, 0x1A, 0x18, 0x1A, 0x17, 0x19, 0xF7, 0x11, 0xB7, 0x11, 0xD8, 0x01, 0x11, 0xF8, 0x87, 0x11, 0xD8, 0x11, 0xB8, 0x11, 0xD8, 0x09, 0x75, 0x08, 0xF2, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x05, 0x21, 0x30, 0x01, 0x21, 0x50, 0x86, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x02, 0x21, 0xF7, 0x83, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x12, 0x19, 0x12, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x03, 0x29, 0x2F, 0x87, 0x29, 0x0F, 0x29, + 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x03, 0x21, 0x31, 0x93, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x19, 0xD6, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x10, 0xF1, 0x19, 0x31, 0x19, 0x52, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x82, 0x21, 0xD7, 0x19, 0x75, 0x19, 0x34, 0x03, 0x19, 0x12, 0x8D, 0x19, 0x32, 0x19, 0x52, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x95, 0x21, 0xF7, 0x22, 0x38, 0x22, 0x17, 0x21, 0xD6, 0x11, 0x54, 0x11, 0x13, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x85, 0x19, 0x94, 0x11, 0x33, 0x19, 0x53, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x31, 0x84, 0x19, 0x11, 0x11, 0x11, 0x11, 0x33, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x84, 0x21, 0xF7, 0x19, 0x96, 0x11, 0x34, 0x11, 0x12, 0x19, 0x12, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, + 0x01, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x80, 0x28, 0xEF, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x1A, 0x18, 0x12, 0x19, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x82, 0x01, 0xFA, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0x01, 0xFB, 0x80, 0x01, 0xDB, 0x01, 0x01, 0xFB, 0x01, 0x01, 0xBA, 0x84, 0x01, 0xDA, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0x76, 0x01, 0x09, 0x54, 0x80, 0x09, 0x33, 0x02, 0x11, 0x53, 0x01, 0x11, 0x33, 0x02, 0x11, 0x32, 0x83, 0x11, 0x52, 0x19, 0x52, 0x11, 0x32, 0x19, 0x32, 0x02, 0x11, 0x33, 0x80, 0x19, 0x53, 0x02, 0x11, 0x33, 0x83, 0x11, 0x12, 0x11, 0x33, 0x19, 0x53, 0x19, 0x33, 0x02, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x19, 0x33, 0x04, 0x11, 0x33, 0x01, 0x11, 0x32, 0x02, 0x11, 0x33, 0x80, 0x19, 0x33, 0x02, 0x11, 0x12, 0x02, 0x11, 0x32, 0x01, 0x11, 0x33, 0x01, 0x11, 0x53, 0x82, 0x09, 0x13, 0x11, 0x74, 0x19, 0xF6, 0x01, 0x19, 0xF7, 0x83, 0x11, 0xD6, 0x11, 0xB5, 0x11, 0x74, 0x09, 0x33, 0x01, 0x09, + 0x13, 0x8D, 0x09, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x74, 0x11, 0x54, 0x11, 0x53, 0x09, 0x33, 0x09, 0x32, 0x11, 0x32, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x80, 0x11, 0x12, 0x01, 0x11, 0x32, 0x81, 0x19, 0x32, 0x11, 0x32, 0x03, 0x11, 0x12, 0x0E, 0x11, 0x32, 0x80, 0x11, 0x12, 0x01, 0x11, 0x32, 0x80, 0x11, 0x12, 0x04, 0x11, 0x32, 0x80, 0x11, 0x12, 0x01, 0x11, 0x32, 0x01, 0x11, 0x12, 0x01, 0x19, 0x32, 0x80, 0x11, 0x12, 0x03, 0x11, 0x32, 0x01, 0x11, 0x12, 0x07, 0x11, 0x32, 0x80, 0x11, 0x12, 0x01, 0x11, 0x32, 0x8C, 0x11, 0x33, 0x09, 0x33, 0x09, 0x54, 0x01, 0x76, 0x01, 0xB8, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xFB, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x81, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xDB, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xDB, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x01, 0x01, 0xDB, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFB, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x06, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x01, 0x09, 0xF9, 0x85, 0x09, 0xD7, 0x19, 0xD6, 0x11, 0x73, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, + 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x09, 0x33, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x33, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x19, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x74, 0x19, 0xF6, 0x19, 0xF7, 0x01, 0x19, 0xB5, 0x83, 0x19, 0x73, 0x11, 0x11, 0x19, 0x10, 0x21, 0x10, 0x02, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x88, 0x21, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF8, 0x11, 0xD8, 0x09, 0xB8, 0x01, 0xB7, 0x01, 0x01, 0xB8, 0x88, 0x01, 0x97, 0x01, 0xB8, 0x09, 0xD8, 0x09, 0xF8, 0x11, 0xF8, 0x11, 0xF7, 0x19, 0xF7, 0x19, 0x74, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x04, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, + 0x88, 0x11, 0x11, 0x11, 0x12, 0x11, 0x32, 0x19, 0x95, 0x22, 0x17, 0x22, 0x38, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x01, 0x11, 0x12, 0x82, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x4F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x02, 0x21, 0xF7, 0x86, 0x19, 0xB6, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x31, 0x19, 0x11, 0x11, 0x13, 0x19, 0xB7, 0x01, 0x1A, 0x19, 0x83, 0x19, 0xB7, 0x10, 0xF3, 0x19, 0x12, 0x21, 0x31, 0x04, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x8C, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x21, 0x32, 0x11, 0x12, 0x11, 0x13, 0x21, 0xD6, 0x21, 0xF7, 0x2A, 0x17, 0x21, 0xB6, 0x11, 0x13, + 0x19, 0x32, 0x19, 0x11, 0x03, 0x21, 0x10, 0x84, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x8E, 0x19, 0x52, 0x11, 0x32, 0x11, 0x12, 0x11, 0x53, 0x11, 0xB5, 0x1A, 0x17, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x54, 0x11, 0x12, 0x19, 0x31, 0x19, 0x10, 0x21, 0x51, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x50, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x19, 0x31, 0x89, 0x11, 0x11, 0x11, 0x12, 0x19, 0xB5, 0x2A, 0x37, 0x21, 0xF6, 0x19, 0x94, 0x11, 0x12, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x81, 0x19, 0x31, 0x19, 0x51, 0x02, 0x19, 0x32, 0x81, 0x19, 0x53, 0x19, 0x95, 0x01, 0x21, 0xD6, 0x8C, 0x21, 0xF6, 0x21, 0x95, 0x19, 0x53, 0x11, 0x12, 0x19, 0x32, 0x19, 0x52, 0x19, 0x72, 0x19, 0x32, 0x19, 0x12, 0x11, 0x12, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x01, 0x19, 0xB6, 0x86, + 0x19, 0xD7, 0x22, 0x18, 0x19, 0xD6, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x04, 0x21, 0x10, 0x03, 0x29, 0x10, 0x8D, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x03, 0x19, 0xF7, 0x80, 0x19, 0xD7, 0x01, 0x11, 0xB7, 0x89, 0x19, 0xF8, 0x12, 0x18, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0x96, 0x09, 0x13, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x31, 0x21, 0x51, 0x02, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x90, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0x74, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, + 0x21, 0x2F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x21, 0x51, 0x94, 0x21, 0x32, 0x19, 0x12, 0x11, 0x32, 0x19, 0x74, 0x19, 0xB6, 0x21, 0xF6, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x10, 0xF1, 0x10, 0xF0, 0x19, 0x11, 0x21, 0x52, 0x19, 0x51, 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x19, 0xF7, 0x02, 0x19, 0xD7, 0x84, 0x19, 0x95, 0x19, 0x34, 0x19, 0x33, 0x19, 0x32, 0x21, 0x32, 0x02, 0x19, 0x32, 0x01, 0x11, 0x32, 0x89, 0x09, 0x33, 0x11, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x13, 0x10, 0xF2, 0x11, 0x11, 0x01, 0x21, 0x51, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x86, 0x21, 0xF6, 0x11, 0x75, 0x11, 0x54, 0x19, 0x53, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x19, 0xB6, 0x21, 0xF7, 0x21, 0xF8, 0x19, 0xD7, 0x19, 0x96, 0x11, 0x34, 0x19, 0x33, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, + 0x29, 0x30, 0x21, 0x10, 0x04, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x91, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x19, 0x11, 0x09, 0x12, 0x19, 0xF7, 0x12, 0x19, 0x09, 0xD9, 0x01, 0xD9, 0x05, 0x01, 0xDA, 0x80, 0x01, 0xDB, 0x03, 0x01, 0xDA, 0x87, 0x01, 0xBA, 0x01, 0xD9, 0x01, 0xB8, 0x09, 0xB8, 0x09, 0xB7, 0x01, 0x34, 0x09, 0x13, 0x09, 0x32, 0x01, 0x11, 0x32, 0x80, 0x19, 0x31, 0x04, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x83, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x01, 0x19, 0x12, 0x83, 0x19, 0x32, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x04, 0x19, 0x11, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x03, 0x19, 0x11, 0x03, 0x19, 0x31, 0x0B, 0x19, 0x11, 0x80, 0x19, 0x32, 0x01, 0x11, 0x12, 0x88, 0x09, 0x33, 0x11, 0x95, 0x1A, 0x17, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0xD6, 0x11, 0xB5, 0x11, 0x74, 0x11, 0x33, 0x01, 0x09, 0x13, 0x01, 0x09, 0x34, 0x81, 0x11, 0x75, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x81, 0x11, 0xD6, 0x11, 0xB6, 0x01, 0x11, + 0x95, 0x80, 0x09, 0x74, 0x02, 0x09, 0x53, 0x80, 0x09, 0x33, 0x04, 0x11, 0x53, 0x0F, 0x11, 0x33, 0x80, 0x11, 0x53, 0x06, 0x11, 0x33, 0x82, 0x09, 0x32, 0x11, 0x33, 0x09, 0x33, 0x07, 0x11, 0x33, 0x02, 0x11, 0x32, 0x82, 0x11, 0x33, 0x11, 0x53, 0x11, 0x32, 0x01, 0x11, 0x33, 0x80, 0x11, 0x53, 0x05, 0x09, 0x33, 0x80, 0x09, 0x53, 0x03, 0x11, 0x53, 0x85, 0x11, 0x74, 0x11, 0x75, 0x09, 0x76, 0x09, 0xB7, 0x09, 0xD8, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x04, 0x01, 0xDA, 0x80, 0x01, 0xDB, 0x04, 0x01, 0xDA, 0x05, 0x01, 0xDB, 0x03, 0x01, 0xDA, 0x02, 0x01, 0xDB, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xDB, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x86, 0x01, 0xD8, 0x11, 0xF8, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x31, 0x19, 0x32, 0x09, 0x33, 0x19, 0xD6, 0x1A, 0x18, 0x11, 0xD7, 0x19, 0xB6, 0x11, 0x33, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, + 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x73, 0x10, 0xF1, 0x19, 0x31, 0x21, 0x30, 0x03, 0x29, 0x30, 0x01, 0x21, 0x10, 0x87, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x11, 0xD7, 0x11, 0xD8, 0x09, 0xB8, 0x02, 0x01, 0xB8, 0x03, 0x01, 0xD9, 0x87, 0x09, 0xD9, 0x09, 0xF8, 0x09, 0xD8, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x32, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x31, 0x01, 0x21, 0x31, 0x83, 0x19, 0x11, 0x10, 0xF1, 0x11, 0x12, 0x11, 0x74, 0x02, 0x22, 0x17, 0x86, 0x19, 0xB6, 0x11, 0x34, 0x11, 0x13, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x19, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x96, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x21, 0xF7, 0x22, 0x18, + 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x13, 0x19, 0xB7, 0x01, 0x19, 0xF9, 0x82, 0x19, 0xB7, 0x08, 0xF2, 0x19, 0x12, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x34, 0x02, 0x21, 0xF7, 0x83, 0x21, 0xB6, 0x11, 0x33, 0x19, 0x12, 0x19, 0x31, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x8F, 0x21, 0x31, 0x21, 0x72, 0x21, 0x52, 0x11, 0x11, 0x09, 0x12, 0x09, 0x33, 0x19, 0xD6, 0x19, 0xF7, + 0x22, 0x17, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x21, 0x51, 0x21, 0x30, 0x02, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x01, 0x11, 0x12, 0x86, 0x19, 0xB5, 0x2A, 0x17, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x19, 0x30, 0x02, 0x19, 0x31, 0x83, 0x19, 0x32, 0x19, 0x33, 0x19, 0x53, 0x19, 0x75, 0x02, 0x21, 0xD6, 0x82, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x52, 0x01, 0x19, 0x32, 0x8E, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x06, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, + 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x8A, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x19, 0xB6, 0x11, 0xB6, 0x01, 0x11, 0x96, 0x01, 0x09, 0x76, 0x80, 0x11, 0xB7, 0x02, 0x11, 0xF8, 0x84, 0x11, 0xD7, 0x09, 0x54, 0x09, 0x12, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x87, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x32, 0x01, 0x19, 0x32, 0x83, 0x11, 0x33, 0x19, 0x54, 0x19, 0xB5, 0x19, 0xF6, 0x01, 0x19, 0xD6, 0x85, 0x19, 0x95, 0x11, 0x54, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x10, 0x02, 0x19, 0x31, 0x84, 0x11, 0x32, 0x11, 0x53, 0x11, 0x94, + 0x19, 0xD6, 0x19, 0xF7, 0x01, 0x19, 0xD7, 0x85, 0x19, 0x96, 0x19, 0x54, 0x19, 0x33, 0x19, 0x12, 0x19, 0x32, 0x21, 0x32, 0x02, 0x19, 0x32, 0x8E, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x29, 0x51, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x87, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x87, 0x19, 0xF7, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x34, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x91, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x21, 0xD7, 0x21, 0xF8, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x34, 0x11, 0x13, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x03, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x29, + 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x8B, 0x21, 0x10, 0x19, 0x10, 0x19, 0x11, 0x19, 0x53, 0x19, 0xD7, 0x12, 0x19, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xFA, 0x05, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x87, 0x01, 0xB8, 0x09, 0xD8, 0x11, 0xF8, 0x11, 0xD7, 0x01, 0x13, 0x09, 0x32, 0x11, 0x32, 0x11, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x10, 0x89, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x11, 0x82, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x01, 0x19, 0x11, 0x82, 0x21, 0x11, 0x21, 0x31, 0x19, 0x11, 0x01, 0x21, 0x31, 0x82, 0x21, 0x10, 0x19, 0x10, 0x21, 0x11, 0x01, 0x21, 0x31, 0x8C, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x02, 0x21, 0x31, 0x02, 0x19, 0x31, 0x86, 0x19, 0x32, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x01, 0x19, 0xD6, 0x80, 0x11, 0x54, 0x01, 0x09, 0x33, 0x84, 0x09, 0x13, 0x09, 0x34, 0x09, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x02, 0x19, 0xF7, 0x80, 0x11, 0xD6, 0x01, 0x11, 0xB6, 0x03, 0x11, 0xB5, 0x83, 0x11, 0x95, 0x11, 0xB5, 0x11, 0xB6, 0x11, 0x95, 0x02, 0x19, 0x95, 0x80, 0x19, 0xB5, 0x02, 0x19, 0x95, 0x87, 0x19, 0xB5, 0x19, 0x95, 0x19, 0xB6, 0x19, 0x95, 0x19, 0xB5, 0x11, 0x95, 0x19, 0x95, 0x19, 0x96, 0x01, + 0x11, 0x95, 0x80, 0x19, 0x96, 0x01, 0x11, 0x95, 0x80, 0x11, 0xB5, 0x01, 0x11, 0x95, 0x81, 0x11, 0xB5, 0x11, 0x95, 0x01, 0x19, 0x95, 0x01, 0x11, 0x95, 0x81, 0x19, 0xB5, 0x19, 0x95, 0x04, 0x19, 0xB5, 0x80, 0x19, 0x95, 0x02, 0x19, 0xB5, 0x80, 0x19, 0x95, 0x02, 0x19, 0xB5, 0x80, 0x11, 0xB5, 0x01, 0x19, 0xB5, 0x04, 0x19, 0xD5, 0x80, 0x19, 0xD6, 0x01, 0x19, 0xD5, 0x8B, 0x19, 0xD6, 0x11, 0xD6, 0x11, 0xD7, 0x09, 0xB7, 0x09, 0xF8, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xFB, 0x02, 0x01, 0xDA, 0x81, 0x01, 0xDB, 0x01, 0xFB, 0x01, 0x01, 0xDB, 0x01, 0x01, 0xDA, 0x8D, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xDB, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xDB, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xDB, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0x01, 0xDB, 0x03, 0x01, 0xDA, 0x02, 0x01, 0xFB, 0x03, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x87, 0x01, 0xF9, 0x09, 0xF9, 0x09, 0xF8, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, + 0x01, 0x21, 0x30, 0x8A, 0x19, 0x31, 0x19, 0x32, 0x09, 0x33, 0x19, 0xF7, 0x1A, 0x18, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xB5, 0x19, 0xB5, 0x19, 0x53, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x11, 0xD7, 0x11, 0xD8, 0x09, 0xB8, 0x01, 0xB8, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0x01, 0xF9, 0x01, 0x09, 0xF9, 0x85, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0x75, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x02, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x87, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x10, 0x04, 0x21, 0x10, 0x01, 0x21, 0x31, 0x8D, 0x11, 0x11, 0x11, 0x12, 0x11, 0x74, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x09, 0x13, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x50, + 0x01, 0x21, 0x30, 0x8C, 0x19, 0x10, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x19, 0x74, 0x19, 0x95, 0x21, 0xF7, 0x21, 0xF8, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8D, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0xB7, 0x1A, 0x19, 0x19, 0xF9, 0x19, 0xB7, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x30, 0x21, 0x50, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x21, 0xD7, 0x01, 0x21, 0xF7, 0x83, 0x19, 0x95, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, + 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x92, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x20, 0xEF, 0x21, 0x10, 0x21, 0x30, 0x29, 0x72, 0x21, 0x72, 0x19, 0x31, 0x10, 0xF1, 0x11, 0x32, 0x11, 0x53, 0x11, 0xB5, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x0F, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x21, 0xD5, 0x2A, 0x37, 0x21, 0xF6, 0x19, 0x94, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x29, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x81, 0x19, 0x53, 0x21, 0xB5, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xB6, 0x19, 0x94, 0x11, 0x12, 0x11, 0x32, 0x01, 0x19, 0x52, 0x81, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x32, 0x89, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF7, 0x19, 0xB7, 0x11, 0x34, 0x19, 0x12, 0x21, 0x11, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, + 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x19, 0x12, 0x81, 0x11, 0x33, 0x11, 0x53, 0x02, 0x11, 0x74, 0x80, 0x11, 0x54, 0x01, 0x09, 0x55, 0x81, 0x09, 0x56, 0x11, 0xB7, 0x01, 0x11, 0xF8, 0x85, 0x19, 0xF8, 0x11, 0xB6, 0x09, 0x54, 0x11, 0x13, 0x10, 0xF1, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x86, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x02, 0x19, 0xF7, 0x85, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x11, 0x11, + 0x19, 0x32, 0x11, 0x33, 0x19, 0x74, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xF6, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x32, 0x02, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xD7, 0x19, 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x8C, 0x19, 0x12, 0x11, 0x33, 0x11, 0x53, 0x11, 0x75, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x51, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x85, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x32, 0x01, 0x19, 0x31, 0x86, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x31, 0x8D, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xD7, 0x21, 0xF8, 0x21, 0xD7, 0x19, 0x96, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, + 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x88, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x19, 0x11, 0x84, 0x19, 0x53, 0x11, 0x75, 0x1A, 0x18, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x07, 0x01, 0xDA, 0x8A, 0x01, 0xD9, 0x01, 0xB9, 0x09, 0xD9, 0x09, 0xF8, 0x1A, 0x18, 0x11, 0xB6, 0x09, 0x33, 0x11, 0x52, 0x11, 0x31, 0x19, 0x51, 0x19, 0x31, 0x0B, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x31, 0x02, 0x21, 0x10, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x88, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x83, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x83, 0x19, 0xD6, 0x19, 0x96, 0x11, 0x55, 0x09, 0x34, 0x01, 0x09, 0x13, 0x83, 0x09, 0x34, 0x09, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x01, 0x19, 0xF7, 0x82, 0x1A, 0x17, 0x19, 0xF7, 0x11, 0xF6, 0x02, 0x19, 0xF6, 0x04, 0x19, 0xF7, 0x01, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x81, 0x21, 0xF6, 0x22, 0x17, 0x04, 0x21, 0xF7, 0x85, 0x22, 0x17, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xF7, + 0x03, 0x21, 0xF7, 0x02, 0x22, 0x17, 0x82, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x04, 0x22, 0x17, 0x80, 0x21, 0xF7, 0x04, 0x22, 0x17, 0x80, 0x21, 0xF6, 0x05, 0x22, 0x17, 0x01, 0x19, 0xF6, 0x80, 0x1A, 0x16, 0x06, 0x19, 0xF6, 0x80, 0x11, 0xD6, 0x01, 0x11, 0xD7, 0x81, 0x09, 0xD7, 0x09, 0xD8, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x80, 0x01, 0xBA, 0x07, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x02, 0x01, 0xDA, 0x8C, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xDB, 0x01, 0xDA, 0x01, 0xFB, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x04, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x88, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xD9, 0x09, 0xF9, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x75, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x88, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD7, 0x1A, 0x18, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, + 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x73, 0x11, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x11, 0x33, 0x11, 0x75, 0x11, 0xB7, 0x09, 0xD8, 0x01, 0x01, 0xB9, 0x80, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x86, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xF9, 0x11, 0xD8, 0x11, 0x95, 0x11, 0x12, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x06, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x11, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x21, 0xD6, 0x21, 0xF7, 0x22, 0x18, 0x19, 0xB6, 0x09, 0x14, 0x08, 0xF3, 0x01, 0x11, 0x12, 0x81, 0x19, 0x52, 0x19, 0x31, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8B, 0x19, 0x32, 0x11, 0x12, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xD7, 0x22, 0x18, 0x21, 0xD7, + 0x19, 0xB6, 0x11, 0x34, 0x11, 0x13, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x11, 0x10, 0xF2, 0x19, 0xB7, 0x19, 0xF8, 0x19, 0xF9, 0x19, 0xB7, 0x10, 0xF2, 0x19, 0x31, 0x19, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x8C, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x11, 0x55, 0x21, 0xF7, 0x21, 0xD7, 0x21, 0xF7, 0x19, 0x95, 0x19, 0x33, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x98, 0x21, 0x0F, 0x21, 0x30, + 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x20, 0xEF, 0x21, 0x10, 0x29, 0x51, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x11, 0x31, 0x09, 0x32, 0x11, 0x94, 0x11, 0xB5, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x19, 0x11, 0x19, 0x52, 0x11, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0xB5, 0x11, 0x12, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0x74, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x52, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x8A, 0x19, 0x52, 0x11, 0x53, 0x09, 0x54, 0x19, 0xB6, 0x11, 0xD7, 0x22, 0x18, 0x19, 0xB7, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, + 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x04, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x05, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x01, 0x19, 0x11, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x81, 0x19, 0x53, 0x11, 0x53, 0x01, 0x11, 0x54, 0x8C, 0x11, 0x55, 0x09, 0x35, 0x09, 0x75, 0x11, 0xB7, 0x19, 0xF8, 0x1A, 0x18, 0x1A, 0x17, 0x11, 0xD6, 0x09, 0x54, 0x09, 0x12, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x86, 0x21, 0x31, 0x21, 0x11, 0x19, 0x31, 0x11, 0x12, 0x11, 0x53, 0x11, 0x54, 0x11, 0x95, 0x01, 0x19, 0xF7, 0x86, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x8B, 0x10, 0xF2, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, + 0x11, 0x12, 0x01, 0x19, 0x32, 0x86, 0x19, 0x31, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x12, 0x02, 0x19, 0x32, 0x88, 0x11, 0x12, 0x11, 0x54, 0x11, 0x95, 0x19, 0xF6, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x55, 0x11, 0x33, 0x01, 0x11, 0x12, 0x80, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x8A, 0x29, 0x30, 0x29, 0x2F, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x19, 0x11, 0x02, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x91, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0x96, 0x21, 0xF7, 0x21, 0xF8, 0x19, 0xD7, 0x19, 0xB6, 0x09, 0x33, 0x11, 0x33, 0x19, 0x52, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x06, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, + 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x19, 0x53, 0x11, 0x34, 0x19, 0xB7, 0x11, 0xD8, 0x02, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x88, 0x09, 0xD9, 0x11, 0xF9, 0x09, 0xD8, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x53, 0x11, 0x52, 0x19, 0x52, 0x19, 0x51, 0x01, 0x21, 0x51, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x08, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0B, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xB7, 0x19, 0xD7, 0x11, 0x96, 0x01, 0x11, 0x54, 0x87, 0x09, 0x13, 0x11, 0x34, 0x09, 0x33, 0x11, 0x54, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB5, 0x11, 0xD6, 0x01, 0x19, 0xF6, 0x01, 0x1A, 0x17, 0x02, 0x19, 0xF6, 0x02, 0x19, 0xD6, 0x80, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x80, 0x19, 0xB6, 0x0F, 0x19, 0xD6, 0x80, 0x19, 0xB6, 0x07, 0x19, 0xD6, 0x81, 0x21, 0xD6, 0x19, 0xD6, 0x01, 0x21, 0xD6, 0x81, 0x19, 0xD6, 0x21, 0xF6, 0x04, 0x19, 0xD6, 0x80, 0x19, + 0xF6, 0x03, 0x19, 0xD6, 0x85, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xD5, 0x11, 0xB5, 0x19, 0xD5, 0x19, 0xD6, 0x02, 0x19, 0xF6, 0x01, 0x11, 0xD6, 0x86, 0x19, 0xF7, 0x11, 0xD7, 0x09, 0xB7, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x80, 0x01, 0xBA, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x84, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xFB, 0x01, 0xDA, 0x03, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x80, 0x02, 0x1B, 0x02, 0x01, 0xFA, 0x81, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x86, 0x19, 0xF8, 0x11, 0x75, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x19, 0x11, 0x11, 0x11, 0x09, 0x33, 0x19, 0xD6, 0x19, 0xF8, 0x19, 0xF7, 0x11, 0x96, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x8B, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, + 0x19, 0xF6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x19, 0x74, 0x11, 0x12, 0x01, 0x21, 0x31, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0xB5, 0x1A, 0x18, 0x09, 0xF9, 0x09, 0xD9, 0x02, 0x01, 0xB9, 0x03, 0x01, 0xDA, 0x89, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xF9, 0x11, 0xF8, 0x19, 0xB6, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x0F, 0x07, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8E, 0x21, 0x11, 0x19, 0x31, 0x19, 0x12, 0x11, 0x12, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xF7, 0x21, 0xD7, 0x11, 0x34, 0x08, 0xF3, 0x10, 0xF2, 0x11, 0x32, 0x19, 0x31, 0x19, 0x51, 0x21, 0x31, 0x02, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x01, 0x19, 0x52, 0x8C, 0x11, 0x13, 0x11, 0x54, 0x19, 0x95, 0x21, 0xD7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x13, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x51, 0x02, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, + 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x11, 0x13, 0x19, 0xD7, 0x01, 0x1A, 0x19, 0x83, 0x19, 0xB7, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x83, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x34, 0x02, 0x21, 0xD7, 0x83, 0x21, 0xD6, 0x19, 0x54, 0x19, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x85, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x10, 0x21, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x20, 0xF0, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x09, 0x54, 0x19, 0xB6, 0x22, 0x38, 0x21, 0xF7, 0x19, 0x94, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x86, 0x11, 0x12, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xF6, + 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x01, 0x19, 0x31, 0x87, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x04, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x20, 0xEF, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x11, 0x12, 0x80, 0x11, 0x54, 0x02, 0x19, 0xB6, 0x84, 0x11, 0x74, 0x11, 0x32, 0x19, 0x52, 0x19, 0x32, 0x19, 0x52, 0x02, 0x19, 0x31, 0x8A, 0x19, 0x32, 0x11, 0x53, 0x09, 0x33, 0x11, 0x96, 0x19, 0xD7, 0x19, 0xF8, 0x19, 0xB7, 0x11, 0x54, 0x11, 0x12, 0x19, 0x31, 0x21, 0x11, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x06, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x05, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, + 0x10, 0x21, 0x11, 0x01, 0x19, 0x11, 0x03, 0x19, 0x32, 0x86, 0x19, 0x53, 0x11, 0x53, 0x19, 0x74, 0x11, 0x54, 0x09, 0x54, 0x09, 0x75, 0x11, 0xD7, 0x01, 0x1A, 0x18, 0x85, 0x1A, 0x17, 0x11, 0xB6, 0x11, 0x33, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x07, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x51, 0x01, 0x19, 0x32, 0x8A, 0x11, 0x32, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xF7, 0x19, 0x95, 0x11, 0x34, 0x08, 0xF2, 0x11, 0x12, 0x19, 0x52, 0x01, 0x21, 0x51, 0x09, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x31, 0x8C, 0x21, 0x32, 0x19, 0x32, 0x11, 0x12, 0x11, 0x13, 0x11, 0x34, 0x11, 0x54, 0x19, 0x96, 0x19, 0xD7, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x74, 0x11, 0x32, 0x01, 0x11, 0x11, 0x01, 0x19, 0x32, 0x82, 0x19, 0x52, 0x19, 0x32, 0x19, 0x53, 0x01, 0x11, 0x74, 0x88, 0x11, 0xB6, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x53, 0x11, 0x32, 0x19, 0x12, 0x02, 0x19, 0x32, 0x84, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x85, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x34, 0x11, 0x13, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, + 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x31, 0x02, 0x21, 0x31, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x31, 0x21, 0x30, 0x01, 0x19, 0x11, 0x83, 0x11, 0x12, 0x11, 0x33, 0x19, 0x75, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x86, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x06, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x09, 0x12, 0x11, 0x75, 0x19, 0xF8, 0x11, 0xD8, 0x09, 0xD8, 0x02, 0x09, 0xD9, 0x8F, 0x09, 0xFA, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xDA, 0x01, 0xD9, 0x09, 0xD9, 0x01, 0xD9, 0x09, 0xD8, 0x09, 0xB7, + 0x11, 0xB7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x32, 0x19, 0x52, 0x19, 0x51, 0x21, 0x51, 0x01, 0x21, 0x50, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x87, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x84, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8F, 0x19, 0x10, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x19, 0x96, 0x19, 0xD7, 0x19, 0xB7, 0x19, 0xD7, 0x19, 0x96, 0x11, 0x55, 0x09, 0x34, 0x09, 0x33, 0x09, 0x13, 0x11, 0x34, 0x01, 0x11, 0x54, 0x83, 0x11, 0x74, 0x11, 0x94, 0x11, 0xB5, 0x11, 0x94, 0x03, 0x11, 0xB5, 0x83, 0x11, 0x95, 0x11, 0x74, 0x19, 0x95, 0x11, 0x94, 0x01, 0x19, 0x95, 0x80, 0x11, 0x94, 0x06, 0x19, 0x95, 0x81, 0x11, 0x75, 0x11, 0x94, 0x01, 0x19, 0x95, 0x82, 0x11, 0x75, 0x11, 0x95, 0x19, 0x95, 0x01, 0x11, 0x95, 0x01, 0x19, 0x95, 0x01, 0x11, 0x94, 0x01, 0x11, 0x74, 0x83, 0x11, 0x94, 0x19, 0x95, 0x11, 0x74, 0x19, 0x74, 0x02, 0x11, 0x74, 0x80, 0x11, 0x94, 0x01, 0x11, 0x74, 0x01, 0x11, 0x95, 0x81, 0x11, 0x74, 0x11, 0x94, 0x01, 0x19, 0x95, 0x02, 0x11, 0x94, 0x02, 0x19, 0x94, 0x81, 0x11, 0x94, 0x19, 0xB4, 0x01, 0x19, 0x95, 0x81, 0x19, 0xB5, 0x11, 0x94, 0x03, 0x11, 0xB5, 0x84, 0x11, 0xB6, 0x09, + 0xB6, 0x09, 0xB7, 0x0A, 0x19, 0x01, 0xF9, 0x02, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x08, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x06, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x03, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x87, 0x01, 0xFA, 0x01, 0xD9, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0x75, 0x11, 0x12, 0x19, 0x32, 0x21, 0x51, 0x02, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x21, 0x10, 0x91, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0xB6, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x33, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x51, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x53, 0x10, 0xF1, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x95, 0x1A, 0x38, 0x09, 0xF8, 0x01, 0xD9, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xB9, + 0x01, 0x01, 0xDA, 0x86, 0x09, 0xD9, 0x11, 0xF9, 0x19, 0xF8, 0x11, 0x75, 0x11, 0x12, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x92, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x19, 0x32, 0x11, 0x11, 0x11, 0x33, 0x21, 0xF6, 0x22, 0x17, 0x2A, 0x18, 0x11, 0x55, 0x08, 0xF3, 0x10, 0xF2, 0x11, 0x12, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x50, 0x29, 0x2F, 0x29, 0x50, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x19, 0x30, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x11, 0x53, 0x11, 0x33, 0x19, 0x95, 0x01, 0x21, 0xF7, 0x87, 0x21, 0xF8, 0x19, 0x96, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x86, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8B, 0x29, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF9, 0x19, 0xB7, 0x09, 0x12, 0x19, 0x31, 0x21, 0x51, 0x01, + 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8D, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x75, 0x19, 0xB7, 0x19, 0xD7, 0x21, 0xD7, 0x19, 0x96, 0x11, 0x33, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x90, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x19, 0x31, 0x01, 0x11, 0x32, 0x83, 0x19, 0xB5, 0x2A, 0x17, 0x21, 0xF6, 0x19, 0x94, 0x01, 0x11, 0x12, 0x82, 0x19, 0x31, 0x21, 0x31, 0x21, + 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x85, 0x29, 0x10, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x8D, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x52, 0x19, 0x52, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x89, 0x19, 0x52, 0x09, 0x13, 0x11, 0x75, 0x19, 0xF7, 0x19, 0xD8, 0x19, 0xD7, 0x11, 0x55, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x03, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x08, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x03, + 0x19, 0x11, 0x82, 0x19, 0x32, 0x19, 0x52, 0x19, 0x53, 0x01, 0x11, 0x33, 0x82, 0x09, 0x33, 0x09, 0x54, 0x19, 0xF7, 0x01, 0x1A, 0x17, 0x8A, 0x22, 0x17, 0x11, 0x95, 0x11, 0x54, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x50, 0x29, 0x30, 0x07, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x85, 0x11, 0x95, 0x11, 0x54, 0x09, 0x12, 0x11, 0x32, 0x19, 0x52, 0x19, 0x51, 0x01, 0x19, 0x30, 0x80, 0x19, 0x51, 0x02, 0x19, 0x30, 0x82, 0x19, 0x10, 0x21, 0x30, 0x19, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x11, 0x02, 0x21, 0x11, 0x02, 0x21, 0x31, 0x83, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x19, 0x12, 0x01, 0x11, 0x12, 0x83, 0x11, 0x33, 0x11, 0x34, 0x11, 0x75, 0x19, 0xB6, 0x01, 0x19, 0xF7, 0x8D, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x74, 0x11, 0xB6, 0x01, 0x19, 0xF7, 0x85, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x03, 0x19, 0x32, 0x01, 0x11, 0x33, 0x81, 0x11, 0x75, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x89, 0x19, 0xD6, 0x11, 0x54, 0x09, 0x33, 0x11, 0x33, 0x11, + 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x09, 0xD8, 0x01, 0x11, 0xF8, 0x8A, 0x11, 0x96, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8C, 0x19, 0x31, 0x19, 0x53, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x1A, 0x17, 0x22, 0x38, 0x11, 0xB6, 0x09, 0x33, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x88, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, + 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x19, 0x11, 0x88, 0x10, 0xF1, 0x09, 0x33, 0x19, 0xF7, 0x11, 0xF7, 0x09, 0xB7, 0x09, 0xD8, 0x09, 0xB8, 0x11, 0xF9, 0x09, 0xB9, 0x01, 0x09, 0xD9, 0x80, 0x09, 0xB9, 0x01, 0x09, 0xB8, 0x80, 0x09, 0xF8, 0x01, 0x11, 0xF8, 0x85, 0x19, 0xD7, 0x09, 0x54, 0x11, 0x33, 0x19, 0x52, 0x19, 0x51, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x84, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0x96, 0x19, 0xB7, 0x01, 0x19, 0xD7, 0x83, 0x11, 0x75, 0x11, 0x55, 0x09, 0x34, 0x09, 0x33, 0x01, 0x11, 0x33, 0x03, 0x11, 0x53, 0x03, 0x09, 0x53, 0x80, 0x11, 0x53, 0x04, 0x11, 0x33, 0x80, 0x11, 0x53, 0x03, 0x11, 0x33, 0x81, 0x11, 0x53, 0x11, 0x33, 0x05, 0x11, 0x53, 0x80, 0x11, 0x33, 0x01, 0x11, 0x53, 0x81, 0x11, 0x33, 0x11, 0x53, 0x01, 0x11, 0x33, 0x03, 0x11, 0x53, 0x81, 0x11, 0x32, 0x11, 0x53, 0x07, 0x11, 0x33, 0x80, 0x11, 0x53, 0x09, 0x11, 0x33, 0x03, 0x11, 0x32, + 0x01, 0x11, 0x33, 0x03, 0x11, 0x53, 0x85, 0x11, 0x54, 0x09, 0x54, 0x09, 0x75, 0x01, 0x76, 0x09, 0xD8, 0x09, 0xD9, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x04, 0x01, 0xDA, 0x03, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x08, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x81, 0x01, 0xDA, 0x01, 0xFB, 0x02, 0x01, 0xDA, 0x03, 0x01, 0xFA, 0x87, 0x01, 0xDA, 0x01, 0xD9, 0x09, 0xF9, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0x75, 0x10, 0xF2, 0x19, 0x12, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x89, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x33, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x84, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xB5, 0x19, 0x95, 0x19, 0x53, 0x11, 0x11, 0x19, 0x11, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x88, 0x21, 0x30, 0x29, 0x31, 0x21, 0x31, 0x19, 0x11, 0x19, 0x33, + 0x11, 0x74, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xD9, 0x02, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x88, 0x09, 0xF9, 0x12, 0x19, 0x19, 0xF8, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x88, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8E, 0x21, 0x10, 0x21, 0x31, 0x21, 0x52, 0x19, 0x11, 0x08, 0xD1, 0x19, 0x54, 0x2A, 0x17, 0x22, 0x17, 0x21, 0xD7, 0x08, 0xF3, 0x08, 0xD2, 0x19, 0x53, 0x21, 0x52, 0x19, 0x11, 0x19, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x19, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x10, 0x19, 0x30, 0x19, 0x51, 0x19, 0x32, 0x01, 0x11, 0x33, 0x85, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x96, 0x11, 0x34, 0x01, 0x11, 0x12, 0x83, 0x19, 0x32, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x89, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x13, 0x19, 0xD7, 0x1A, + 0x18, 0x1A, 0x19, 0x19, 0xB6, 0x11, 0x12, 0x19, 0x31, 0x03, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x8F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x21, 0xF8, 0x21, 0xD7, 0x19, 0x74, 0x11, 0x32, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x91, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF6, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x2A, 0x37, 0x21, 0xF6, 0x19, 0xB5, 0x11, 0x12, 0x19, 0x32, 0x19, + 0x31, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x06, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x88, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x19, 0x75, 0x01, 0x19, 0xB6, 0x8C, 0x22, 0x17, 0x19, 0x74, 0x11, 0x52, 0x19, 0x51, 0x19, 0x11, 0x19, 0x10, 0x19, 0x31, 0x21, 0x51, 0x19, 0x31, 0x11, 0x32, 0x11, 0x13, 0x11, 0x54, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x82, 0x11, 0x75, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x04, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x19, 0x10, 0x19, 0x11, 0x19, 0x31, 0x03, 0x19, 0x32, 0x8C, 0x11, 0x32, 0x09, 0x12, 0x09, 0x33, 0x11, 0xB5, 0x1A, 0x17, 0x22, 0x38, 0x22, 0x17, + 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x29, 0x31, 0x02, 0x21, 0x31, 0x85, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x81, 0x19, 0xB6, 0x11, 0x54, 0x01, 0x09, 0x12, 0x84, 0x11, 0x11, 0x11, 0x31, 0x11, 0x11, 0x11, 0x31, 0x11, 0x11, 0x06, 0x19, 0x31, 0x07, 0x19, 0x11, 0x01, 0x10, 0xF1, 0x95, 0x10, 0xF2, 0x09, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xB6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x19, 0x52, 0x19, 0x12, 0x11, 0x12, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x73, 0x11, 0x53, 0x11, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x52, 0x8D, 0x19, 0x33, 0x11, 0x33, 0x11, 0x53, 0x11, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x22, 0x18, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, + 0x8B, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xF8, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x52, 0x01, 0x19, 0x32, 0x8A, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x22, 0x18, 0x1A, 0x17, 0x22, 0x18, 0x11, 0x95, 0x09, 0x33, 0x11, 0x53, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x08, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x06, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x11, 0x88, 0x09, 0x12, 0x11, 0xB5, 0x19, 0xF6, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0xB8, 0x09, 0xB8, 0x09, 0x98, 0x01, 0x09, 0xB8, 0x01, 0x09, 0xB7, 0x8A, 0x11, 0xD7, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, + 0x0F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x02, 0x19, 0xB7, 0x82, 0x19, 0x96, 0x11, 0x54, 0x11, 0x34, 0x01, 0x11, 0x33, 0x82, 0x11, 0x53, 0x11, 0x32, 0x11, 0x53, 0x1F, 0x11, 0x32, 0x80, 0x11, 0x52, 0x0E, 0x11, 0x32, 0x80, 0x11, 0x12, 0x04, 0x11, 0x32, 0x01, 0x11, 0x12, 0x84, 0x19, 0x32, 0x11, 0x32, 0x11, 0x11, 0x11, 0x12, 0x19, 0x32, 0x04, 0x11, 0x32, 0x01, 0x11, 0x33, 0x86, 0x09, 0x34, 0x01, 0x75, 0x09, 0xF8, 0x01, 0xD8, 0x01, 0xF9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x03, 0x01, 0xFA, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x07, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x0A, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x8A, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xF9, 0x0A, 0x19, 0x11, 0xF8, 0x11, 0x75, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, + 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x11, 0xF7, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x8B, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x73, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x19, 0x11, 0x19, 0x32, 0x11, 0x54, 0x11, 0xB6, 0x11, 0xF8, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x89, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xD9, 0x09, 0xF9, 0x12, 0x19, 0x11, 0xB6, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x85, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x88, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x29, + 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x21, 0x51, 0x19, 0x11, 0x08, 0xD1, 0x19, 0x74, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0xD6, 0x08, 0xD3, 0x08, 0xD2, 0x21, 0x53, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x85, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x21, 0xD7, 0x01, 0x21, 0xF7, 0x83, 0x19, 0x96, 0x19, 0x54, 0x11, 0x13, 0x19, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x12, 0x11, 0x13, 0x19, 0xD7, 0x01, 0x1A, 0x19, 0x83, 0x19, 0xD7, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x88, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x86, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x0F, + 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xD7, 0x19, 0x75, 0x19, 0x53, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x89, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8A, 0x11, 0x12, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x38, 0x19, 0xF6, 0x11, 0x53, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x19, 0x11, 0x01, 0x11, 0x32, 0x8B, 0x19, 0xB5, 0x2A, 0x37, 0x21, 0xF6, 0x19, 0xB5, 0x11, 0x12, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x10, 0x89, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x10, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, + 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x31, 0x82, 0x19, 0x32, 0x11, 0x13, 0x11, 0x54, 0x01, 0x19, 0xB6, 0x82, 0x21, 0xF6, 0x19, 0x94, 0x11, 0x11, 0x03, 0x19, 0x31, 0x85, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x85, 0x11, 0x75, 0x11, 0x12, 0x19, 0x11, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x11, 0x81, 0x19, 0x11, 0x19, 0x32, 0x02, 0x11, 0x12, 0x89, 0x11, 0x33, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x37, 0x22, 0x17, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, + 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xD7, 0x11, 0x54, 0x09, 0x33, 0x04, 0x09, 0x32, 0x01, 0x11, 0x32, 0x01, 0x11, 0x52, 0x03, 0x11, 0x32, 0x81, 0x11, 0x12, 0x11, 0x32, 0x04, 0x11, 0x12, 0x85, 0x11, 0x33, 0x09, 0x33, 0x11, 0x53, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x02, 0x19, 0xF7, 0x88, 0x19, 0xD7, 0x11, 0x95, 0x19, 0x94, 0x11, 0x53, 0x11, 0x12, 0x11, 0x31, 0x19, 0x32, 0x19, 0x52, 0x19, 0x32, 0x01, 0x11, 0x12, 0x83, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xF7, 0x01, 0x1A, 0x17, 0x81, 0x19, 0xB5, 0x11, 0x74, 0x01, 0x11, 0x32, 0x82, 0x19, 0x32, 0x19, 0x11, 0x19, 0x32, 0x01, 0x19, 0x53, 0x84, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD7, 0x22, 0x18, 0x01, 0x21, 0xF7, 0x86, 0x11, 0x74, 0x11, 0x13, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x09, 0xB8, 0x09, 0xB7, 0x01, 0x09, 0xD8, 0x01, 0x11, 0xF8, 0x86, 0x11, 0xD8, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x19, 0x33, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x10, 0x92, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x19, 0x10, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, + 0x21, 0xF7, 0x11, 0x75, 0x09, 0x33, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x51, 0x11, 0x32, 0x11, 0x53, 0x19, 0x94, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x01, 0x11, 0xD7, 0x01, 0x19, 0xF7, 0x89, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x74, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x06, 0x21, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x20, 0xEF, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x86, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, + 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x12, 0x11, 0x13, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB7, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x54, 0x09, 0x33, 0x11, 0x33, 0x09, 0x12, 0x03, 0x11, 0x32, 0x80, 0x11, 0x52, 0x01, 0x19, 0x52, 0x01, 0x19, 0x32, 0x81, 0x19, 0x31, 0x19, 0x11, 0x02, 0x19, 0x32, 0x80, 0x19, 0x12, 0x07, 0x19, 0x32, 0x02, 0x19, 0x31, 0x02, 0x11, 0x31, 0x04, 0x19, 0x31, 0x81, 0x19, 0x52, 0x11, 0x31, 0x03, 0x19, 0x31, 0x80, 0x11, 0x31, 0x01, 0x19, 0x31, 0x85, 0x11, 0x11, 0x11, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x52, 0x06, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x21, 0x52, 0x02, 0x19, 0x32, 0x01, 0x19, 0x31, 0x87, 0x19, 0x52, 0x19, 0x32, 0x19, 0x52, 0x11, 0x32, 0x11, 0x13, 0x09, 0x13, 0x01, 0x55, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x84, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xFA, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x06, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x81, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x86, 0x01, 0xF9, 0x01, 0xD9, 0x09, 0xF8, 0x11, 0xD8, 0x11, 0x75, 0x11, 0x33, 0x21, 0x52, 0x01, 0x21, + 0x31, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x8E, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x95, 0x11, 0x33, 0x19, 0x12, 0x21, 0x32, 0x21, 0x31, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8D, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x88, 0x21, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x54, 0x11, 0x96, 0x11, 0xF8, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0xD9, 0x02, 0x01, 0xB9, 0x88, 0x01, 0xDA, 0x09, 0xFA, 0x0A, 0x1A, 0x12, 0x19, 0x1A, 0x18, 0x11, 0x75, 0x11, 0x32, 0x19, 0x32, 0x21, 0x31, 0x03, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, + 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8C, 0x19, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x08, 0xF1, 0x19, 0x94, 0x21, 0xF6, 0x21, 0xF7, 0x19, 0xB6, 0x08, 0xD2, 0x11, 0x12, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x19, 0x31, 0x87, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x21, 0xD7, 0x21, 0xF7, 0x21, 0xD7, 0x19, 0xB6, 0x11, 0x54, 0x01, 0x11, 0x12, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x8B, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x19, 0x11, 0x11, 0x13, 0x19, 0xD7, 0x1A, 0x18, 0x1A, 0x19, 0x19, 0xD7, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, + 0x29, 0x30, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x8E, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x11, 0x54, 0x11, 0x13, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x86, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x03, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8D, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB6, 0x2A, 0x38, 0x21, 0xF6, 0x11, 0x54, 0x08, 0xF1, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x01, 0x19, 0x31, 0x85, 0x19, 0x32, 0x11, 0x32, 0x19, 0xB5, 0x2A, 0x37, 0x22, 0x17, 0x19, 0x94, 0x01, 0x11, 0x12, 0x81, 0x21, 0x52, 0x21, 0x51, 0x03, 0x21, 0x30, 0x02, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x06, 0x21, 0x10, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x20, 0xEF, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x07, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x21, + 0x0F, 0x01, 0x29, 0x2F, 0x8C, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x19, 0x32, 0x11, 0x13, 0x11, 0x34, 0x19, 0x96, 0x21, 0xD7, 0x21, 0xD6, 0x19, 0x74, 0x10, 0xF1, 0x19, 0x11, 0x01, 0x19, 0x31, 0x8C, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x11, 0x12, 0x11, 0x54, 0x19, 0xF7, 0x1A, 0x18, 0x22, 0x18, 0x11, 0x96, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x10, 0x84, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x90, 0x21, 0x10, 0x21, 0x31, 0x21, 0x51, 0x21, 0x52, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x22, 0x17, 0x2A, 0x38, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x53, 0x08, 0xF2, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x08, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, + 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x31, 0x02, 0x21, 0x31, 0x8E, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xD7, 0x22, 0x17, 0x22, 0x18, 0x19, 0xD6, 0x11, 0xB6, 0x11, 0xB5, 0x11, 0xD6, 0x11, 0xD5, 0x11, 0xD6, 0x01, 0x11, 0xB5, 0x80, 0x11, 0xD6, 0x02, 0x11, 0xB5, 0x01, 0x11, 0xB6, 0x80, 0x11, 0xB5, 0x01, 0x11, 0xB6, 0x83, 0x19, 0xD6, 0x11, 0xB6, 0x19, 0xD6, 0x19, 0xF6, 0x01, 0x19, 0xD6, 0x82, 0x19, 0xF6, 0x19, 0xD6, 0x22, 0x17, 0x01, 0x1A, 0x17, 0x84, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x95, 0x11, 0x54, 0x11, 0x32, 0x01, 0x11, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x52, 0x81, 0x19, 0x32, 0x11, 0x33, 0x01, 0x11, 0x54, 0x86, 0x11, 0x96, 0x19, 0xD7, 0x1A, 0x18, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x01, 0x19, 0x32, 0x86, 0x11, 0x11, 0x19, 0x11, 0x11, 0x12, 0x19, 0x32, 0x19, 0x53, 0x19, 0x74, 0x11, 0x95, 0x02, 0x19, 0xF7, 0x86, 0x21, 0xF7, 0x11, 0x75, 0x09, 0x12, 0x10, 0xF2, 0x19, 0x31, 0x19, 0x51, 0x19, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x29, 0x50, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x09, 0x97, 0x82, 0x09, 0xB7, 0x09, 0xD8, 0x11, 0xD8, 0x01, 0x11, 0xF8, 0x88, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x19, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x11, + 0x02, 0x21, 0x30, 0x80, 0x29, 0x51, 0x01, 0x21, 0x30, 0x01, 0x19, 0x10, 0x88, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x19, 0xD6, 0x22, 0x18, 0x21, 0xF7, 0x11, 0x75, 0x01, 0x11, 0x33, 0x80, 0x19, 0x32, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x30, 0x88, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x01, 0x11, 0x32, 0x84, 0x11, 0x53, 0x11, 0x74, 0x11, 0x75, 0x19, 0xB6, 0x19, 0xF6, 0x01, 0x19, 0xD6, 0x85, 0x19, 0x95, 0x19, 0xB5, 0x19, 0x74, 0x11, 0x53, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x81, 0x19, 0x10, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, + 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x8D, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x13, 0x11, 0x54, 0x19, 0x96, 0x19, 0xD7, 0x22, 0x18, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x54, 0x09, 0x33, 0x09, 0x32, 0x01, 0x11, 0x32, 0x81, 0x11, 0x52, 0x11, 0x32, 0x01, 0x19, 0x32, 0x81, 0x19, 0x31, 0x19, 0x52, 0x02, 0x19, 0x31, 0x04, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x1D, 0x19, 0x31, 0x80, 0x19, 0x52, 0x01, 0x19, 0x32, 0x82, 0x19, 0x52, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x52, 0x80, 0x19, 0x32, 0x02, 0x19, 0x31, 0x80, 0x21, 0x32, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x85, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x09, 0x55, 0x09, 0xB7, 0x09, 0xD8, 0x02, 0x01, 0xD9, 0x81, 0x01, 0xDA, 0x01, 0xD9, 0x07, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x0D, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x0A, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xF9, 0x90, 0x09, 0xF9, 0x11, 0xD8, 0x11, 0x95, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, + 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x21, 0x10, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x11, 0xD6, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x13, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x8A, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x89, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x19, 0x52, 0x11, 0x53, 0x11, 0x75, 0x11, 0xB7, 0x1A, 0x19, 0x11, 0xF9, 0x09, 0xB8, 0x02, 0x01, 0xB9, 0x01, 0x09, 0xD9, 0x01, 0x12, 0x19, 0x84, 0x11, 0xD7, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x87, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x08, 0xF1, 0x19, + 0x94, 0x21, 0xF6, 0x21, 0xF7, 0x19, 0x95, 0x08, 0xF3, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x09, 0x33, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x86, 0x19, 0x96, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x19, 0x32, 0x11, 0x13, 0x11, 0xB7, 0x01, 0x1A, 0x19, 0x83, 0x19, 0xD7, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x86, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x88, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x86, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x21, 0xF7, 0x01, 0x22, 0x17, 0x85, 0x19, 0x75, 0x11, 0x33, 0x11, + 0x32, 0x19, 0x52, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x82, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x85, 0x11, 0x74, 0x09, 0x12, 0x11, 0x32, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x11, 0x32, 0x83, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xF6, 0x19, 0x95, 0x01, 0x11, 0x12, 0x85, 0x21, 0x52, 0x21, 0x51, 0x21, 0x30, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x06, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x96, 0x01, 0x21, 0xD6, 0x84, 0x19, 0x94, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, + 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x88, 0x11, 0x12, 0x09, 0x33, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x04, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x88, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x11, 0x91, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF7, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x21, 0x31, 0x21, 0x11, 0x21, 0x30, 0x21, 0x31, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x03, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x11, 0x19, 0x11, 0x01, 0x19, 0x32, 0x84, 0x19, 0x53, 0x19, 0x74, 0x19, 0x95, 0x19, 0xB6, 0x19, 0xD7, 0x01, 0x22, 0x18, 0x01, 0x1A, 0x38, 0x81, 0x1A, 0x17, 0x1A, 0x38, 0x03, 0x1A, 0x17, 0x01, 0x1A, + 0x38, 0x01, 0x1A, 0x18, 0x82, 0x22, 0x38, 0x1A, 0x18, 0x1A, 0x38, 0x01, 0x1A, 0x18, 0x81, 0x19, 0xF7, 0x1A, 0x18, 0x01, 0x19, 0xF7, 0x80, 0x11, 0xF7, 0x02, 0x19, 0xF7, 0x01, 0x19, 0xF6, 0x83, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x74, 0x11, 0x53, 0x01, 0x11, 0x11, 0x8C, 0x19, 0x31, 0x21, 0x51, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD7, 0x1A, 0x18, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x94, 0x01, 0x11, 0x32, 0x01, 0x19, 0x32, 0x8F, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xD7, 0x11, 0x75, 0x09, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x86, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x09, 0x55, 0x09, 0x75, 0x09, 0x76, 0x09, 0xB7, 0x11, 0xD8, 0x02, 0x11, 0xF8, 0x86, 0x11, 0xB7, 0x11, 0xB6, 0x09, 0x55, 0x11, 0x54, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x51, 0x19, 0x31, 0x01, 0x11, 0x32, 0x8D, 0x19, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x11, 0x95, 0x11, 0x34, 0x11, 0x33, 0x19, 0x32, 0x21, 0x32, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x21, + 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x83, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x01, 0x11, 0x32, 0x01, 0x11, 0x33, 0x82, 0x11, 0x53, 0x11, 0x33, 0x11, 0x13, 0x01, 0x11, 0x12, 0x80, 0x11, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x87, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x06, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x86, 0x29, 0x2F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x53, 0x11, + 0x54, 0x01, 0x19, 0xB6, 0x01, 0x11, 0xB6, 0x88, 0x11, 0x95, 0x11, 0x74, 0x11, 0x53, 0x09, 0x33, 0x11, 0x53, 0x11, 0x52, 0x11, 0x32, 0x19, 0x32, 0x11, 0x31, 0x04, 0x19, 0x31, 0x02, 0x19, 0x32, 0x82, 0x21, 0x32, 0x19, 0x32, 0x19, 0x11, 0x02, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x11, 0x19, 0x31, 0x80, 0x19, 0x52, 0x07, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x32, 0x06, 0x19, 0x11, 0x01, 0x21, 0x32, 0x8E, 0x21, 0x11, 0x19, 0x11, 0x21, 0x31, 0x19, 0x32, 0x21, 0x52, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x09, 0x34, 0x09, 0x55, 0x09, 0xD7, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0x01, 0xFA, 0x08, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x04, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x06, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x04, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x8B, 0x01, 0xFA, 0x01, 0xF9, 0x01, 0xD9, 0x09, 0xD8, 0x11, 0xD7, 0x11, 0x75, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, + 0x29, 0x10, 0x04, 0x21, 0x10, 0x88, 0x21, 0x31, 0x19, 0x12, 0x11, 0x33, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x96, 0x09, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x93, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x01, 0x21, 0x31, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x87, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xB8, 0x09, 0xB8, 0x04, 0x09, 0xD9, 0x85, 0x11, 0xF9, 0x19, 0xF8, 0x11, 0x75, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x0B, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x8E, 0x19, 0x10, 0x21, 0x31, 0x21, 0x51, 0x19, 0x32, 0x08, 0xF1, 0x19, 0xB5, 0x21, 0xF6, 0x21, 0xF7, 0x19, 0xB5, 0x09, 0x13, 0x11, 0x12, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x50, 0x02, 0x21, 0x2F, 0x85, 0x21, 0x10, 0x19, 0x30, 0x19, 0x51, 0x11, 0x52, 0x11, 0x53, 0x19, 0x95, 0x01, 0x21, 0xF7, 0x85, + 0x19, 0x96, 0x11, 0x34, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x11, 0x19, 0x32, 0x11, 0x13, 0x11, 0xB7, 0x19, 0xF8, 0x1A, 0x19, 0x19, 0xD7, 0x11, 0x32, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x07, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x11, 0x01, 0x19, 0x11, 0x89, 0x19, 0x32, 0x11, 0x33, 0x11, 0x53, 0x19, 0x74, 0x21, 0xF7, 0x2A, 0x17, 0x21, 0xF7, 0x11, 0x54, 0x11, 0x13, 0x19, 0x32, 0x01, 0x19, 0x52, 0x81, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x29, + 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x21, 0xD6, 0x2A, 0x38, 0x21, 0xF7, 0x11, 0x94, 0x09, 0x12, 0x11, 0x32, 0x01, 0x19, 0x31, 0x83, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8A, 0x19, 0x32, 0x11, 0x33, 0x21, 0xD6, 0x2A, 0x17, 0x21, 0xF6, 0x19, 0x95, 0x09, 0x12, 0x19, 0x32, 0x21, 0x52, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x91, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x21, 0xD6, 0x19, 0xD5, 0x19, 0x74, 0x10, 0xF1, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x01, 0x19, 0x31, 0x88, 0x11, 0x12, 0x11, 0x74, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x95, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, + 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x05, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x19, 0x10, 0x01, 0x21, 0x31, 0x84, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x19, 0x95, 0x01, 0x21, 0xF7, 0x85, 0x21, 0xD6, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x08, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x31, 0x01, 0x19, 0x31, 0x86, 0x19, 0x53, 0x19, 0x74, 0x19, 0xB5, 0x19, 0xB6, 0x19, 0x96, 0x19, 0xD6, 0x19, 0xD7, 0x03, 0x19, 0xF7, 0x80, 0x1A, 0x17, 0x02, 0x19, 0xF7, 0x04, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x01, 0x11, 0xD7, 0x03, 0x19, 0xF7, 0x81, 0x11, 0xD6, 0x11, 0xB6, 0x01, 0x11, 0xB5, 0x80, 0x19, 0xB5, 0x01, 0x19, 0x94, 0x81, 0x11, 0x52, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF7, 0x19, 0xB6, 0x11, + 0x74, 0x11, 0x33, 0x11, 0x12, 0x11, 0x32, 0x02, 0x19, 0x32, 0x91, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x19, 0xD7, 0x22, 0x18, 0x19, 0xF8, 0x19, 0xB6, 0x11, 0x54, 0x09, 0x12, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x11, 0x33, 0x09, 0x34, 0x11, 0x55, 0x11, 0x96, 0x11, 0xB7, 0x01, 0x11, 0xD8, 0x01, 0x11, 0xF8, 0x86, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x54, 0x19, 0x53, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x50, 0x01, 0x19, 0x30, 0x8D, 0x19, 0x10, 0x11, 0x31, 0x11, 0x32, 0x19, 0x94, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x18, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x54, 0x19, 0x33, 0x19, 0x12, 0x21, 0x32, 0x21, 0x11, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x05, 0x29, 0x10, 0x05, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, + 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x19, 0x10, 0x19, 0x11, 0x01, 0x19, 0x31, 0x03, 0x19, 0x32, 0x80, 0x11, 0x12, 0x02, 0x19, 0x12, 0x02, 0x19, 0x11, 0x82, 0x21, 0x31, 0x19, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x07, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x0C, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x87, 0x19, 0x10, 0x19, 0x11, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x95, 0x11, 0xB6, 0x02, 0x19, 0xD6, 0x82, 0x11, 0x74, 0x11, 0x54, 0x11, 0x53, 0x02, 0x11, 0x32, 0x01, 0x11, 0x31, 0x83, 0x11, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x01, 0x19, 0x12, 0x03, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x81, 0x19, 0x31, 0x19, 0x32, 0x03, 0x19, 0x31, 0x02, 0x19, 0x32, 0x80, 0x19, 0x31, 0x07, 0x19, 0x32, 0x83, 0x19, 0x31, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x03, 0x19, 0x11, 0x01, 0x19, 0x12, 0x01, 0x19, 0x11, 0x04, 0x19, 0x12, 0x8D, 0x19, 0x11, 0x19, 0x12, 0x19, 0x11, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x19, 0x53, 0x11, 0x33, 0x09, 0x34, 0x01, + 0x55, 0x11, 0xD8, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0xB9, 0x02, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x0A, 0x01, 0xDA, 0x82, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xDB, 0x04, 0x01, 0xDA, 0x04, 0x01, 0xFA, 0x01, 0x01, 0xF9, 0x84, 0x09, 0xD8, 0x11, 0xD7, 0x09, 0x54, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x31, 0x11, 0x12, 0x09, 0x12, 0x19, 0xD7, 0x11, 0xF8, 0x11, 0xF7, 0x11, 0x96, 0x11, 0x12, 0x19, 0x12, 0x21, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x30, 0x21, 0x50, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x19, 0xF7, 0x01, 0x19, 0xB6, 0x85, 0x11, 0x53, 0x11, 0x11, 0x21, 0x31, 0x29, 0x31, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x85, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, + 0x11, 0x76, 0x11, 0xB7, 0x01, 0x11, 0xD8, 0x82, 0x09, 0xD8, 0x09, 0xF9, 0x09, 0xD8, 0x01, 0x11, 0xD8, 0x84, 0x11, 0x75, 0x09, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x0E, 0x21, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x10, 0xF1, 0x19, 0x94, 0x01, 0x21, 0xF6, 0x83, 0x19, 0xB5, 0x08, 0xF2, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x02, 0x21, 0xF7, 0x85, 0x11, 0x54, 0x09, 0x13, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x8C, 0x21, 0x31, 0x19, 0x32, 0x11, 0x13, 0x11, 0xB6, 0x19, 0xF8, 0x1A, 0x19, 0x19, 0xD7, 0x11, 0x33, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x0F, + 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x19, 0x10, 0x19, 0x11, 0x01, 0x19, 0x32, 0x86, 0x11, 0x33, 0x11, 0x53, 0x19, 0x75, 0x21, 0xF7, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0x54, 0x01, 0x11, 0x12, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x19, 0x10, 0x19, 0x30, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x21, 0xB6, 0x2A, 0x38, 0x22, 0x17, 0x19, 0x95, 0x09, 0x12, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x32, 0x11, 0x33, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xF6, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x12, 0x19, 0x52, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x10, + 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x19, 0x31, 0x87, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x21, 0xD6, 0x21, 0xD5, 0x19, 0x94, 0x11, 0x11, 0x19, 0x11, 0x02, 0x21, 0x31, 0x8B, 0x19, 0x10, 0x19, 0x30, 0x19, 0x31, 0x11, 0x12, 0x11, 0x53, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x31, 0x89, 0x19, 0x11, + 0x19, 0x32, 0x11, 0x53, 0x19, 0x74, 0x21, 0xF6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x84, 0x21, 0x31, 0x21, 0x11, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x82, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x01, 0x19, 0x32, 0x81, 0x19, 0x53, 0x11, 0x54, 0x01, 0x11, 0x74, 0x80, 0x11, 0x75, 0x08, 0x11, 0x95, 0x83, 0x11, 0x75, 0x19, 0x95, 0x11, 0x75, 0x11, 0x95, 0x01, 0x11, 0x75, 0x04, 0x11, 0x95, 0x01, 0x11, 0x74, 0x80, 0x11, 0x94, 0x01, 0x11, 0x74, 0x01, 0x11, 0x53, 0x81, 0x19, 0x52, 0x11, 0x31, 0x04, 0x19, 0x31, 0x89, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x22, 0x18, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x33, 0x01, 0x11, 0x32, 0x87, 0x19, 0x32, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x19, 0xD7, 0x01, 0x21, 0xF8, 0x84, 0x19, 0xD7, 0x11, 0x75, 0x09, 0x13, 0x11, 0x12, 0x11, 0x11, 0x01, 0x21, 0x51, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, + 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x11, 0x12, 0x01, 0x11, 0x33, 0x82, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x03, 0x11, 0xF8, 0x82, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x75, 0x01, 0x11, 0x33, 0x80, 0x19, 0x52, 0x01, 0x21, 0x31, 0x82, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x50, 0x86, 0x19, 0x30, 0x19, 0x10, 0x19, 0x11, 0x19, 0x52, 0x11, 0x33, 0x19, 0x95, 0x19, 0xB6, 0x01, 0x22, 0x18, 0x85, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x19, 0x12, 0x21, 0x32, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x8C, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x30, 0x01, 0x19, 0x10, 0x01, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x52, 0x01, 0x19, 0x32, 0x82, 0x19, 0x12, 0x19, 0x11, 0x19, 0x31, 0x02, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, + 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x30, 0x01, 0x19, 0x31, 0x86, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x1A, 0x17, 0x11, 0xB6, 0x01, 0x09, 0x54, 0x85, 0x09, 0x53, 0x11, 0x33, 0x09, 0x32, 0x11, 0x32, 0x09, 0x12, 0x11, 0x12, 0x01, 0x11, 0x11, 0x03, 0x11, 0x12, 0x01, 0x10, 0xF2, 0x01, 0x11, 0x12, 0x80, 0x10, 0xF2, 0x04, 0x11, 0x12, 0x01, 0x11, 0x11, 0x03, 0x11, 0x12, 0x83, 0x10, 0xF1, 0x11, 0x11, 0x11, 0x12, 0x11, 0x11, 0x01, 0x11, 0x12, 0x01, 0x11, 0x11, 0x80, 0x11, 0x12, 0x01, 0x11, 0x11, 0x80, 0x11, 0x12, 0x01, 0x10, 0xF1, 0x01, 0x11, 0x11, 0x01, 0x11, 0x12, 0x80, 0x11, 0x32, 0x07, 0x11, 0x12, 0x06, 0x19, 0x12, 0x01, 0x10, 0xF2, 0x02, 0x11, 0x12, 0x86, 0x11, 0x13, 0x09, 0x13, 0x09, 0x14, 0x01, 0x76, 0x09, 0xB8, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x84, 0x02, 0x1A, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xB9, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x05, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x82, 0x01, 0xFA, 0x01, 0xDA, + 0x01, 0xFA, 0x07, 0x01, 0xDA, 0x82, 0x01, 0xFA, 0x01, 0xDA, 0x02, 0x1A, 0x03, 0x01, 0xFA, 0x01, 0x01, 0xF9, 0x85, 0x11, 0xF8, 0x11, 0xF7, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x83, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xF7, 0x01, 0x1A, 0x18, 0x84, 0x11, 0x96, 0x11, 0x13, 0x19, 0x12, 0x21, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x87, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x50, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x01, 0x21, 0xF7, 0x86, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x21, 0x31, 0x29, 0x31, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x85, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xB8, 0x01, 0x11, 0xD8, 0x84, 0x11, 0x97, 0x11, 0x76, 0x09, 0x33, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x0F, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, + 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x11, 0x10, 0xF1, 0x19, 0x94, 0x21, 0xF6, 0x19, 0xD6, 0x19, 0x95, 0x09, 0x12, 0x11, 0x12, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x95, 0x22, 0x17, 0x2A, 0x38, 0x19, 0xB6, 0x09, 0x13, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x4F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x8C, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x13, 0x11, 0xB6, 0x19, 0xF8, 0x1A, 0x19, 0x19, 0xD7, 0x11, 0x13, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x30, 0x83, + 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x33, 0x01, 0x11, 0x33, 0x8B, 0x19, 0x75, 0x21, 0xF7, 0x2A, 0x17, 0x21, 0xF6, 0x19, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x52, 0x19, 0x51, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x33, 0x19, 0xB5, 0x2A, 0x38, 0x21, 0xF7, 0x11, 0x95, 0x09, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x8E, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x12, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xF6, 0x19, 0x94, 0x09, 0x12, 0x11, 0x11, 0x19, 0x52, 0x21, 0x51, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, + 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x31, 0x01, 0x19, 0x32, 0x87, 0x11, 0x32, 0x19, 0xB5, 0x21, 0xF6, 0x21, 0xD5, 0x19, 0x94, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x02, 0x21, 0x31, 0x84, 0x19, 0x10, 0x19, 0x11, 0x11, 0x11, 0x11, 0x53, 0x19, 0xF7, 0x01, 0x1A, 0x18, 0x84, 0x11, 0x95, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x09, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x28, 0xEF, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x19, 0x33, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x75, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x2F, + 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x02, 0x11, 0x32, 0x80, 0x11, 0x52, 0x03, 0x11, 0x53, 0x82, 0x19, 0x53, 0x11, 0x53, 0x11, 0x33, 0x01, 0x19, 0x53, 0x83, 0x19, 0x33, 0x11, 0x33, 0x11, 0x32, 0x19, 0x33, 0x01, 0x11, 0x33, 0x81, 0x11, 0x53, 0x11, 0x33, 0x02, 0x11, 0x53, 0x01, 0x19, 0x73, 0x80, 0x11, 0x53, 0x02, 0x11, 0x32, 0x81, 0x19, 0x31, 0x19, 0x52, 0x02, 0x19, 0x31, 0x81, 0x21, 0x52, 0x19, 0x32, 0x01, 0x11, 0x12, 0x89, 0x11, 0x33, 0x11, 0x95, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x54, 0x11, 0x53, 0x11, 0x32, 0x01, 0x11, 0x31, 0x85, 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x87, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x50, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x19, 0x11, 0x01, 0x19, 0x32, 0x89, 0x11, 0x53, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x01, 0x11, 0x54, 0x87, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, + 0x21, 0x2F, 0x01, 0x21, 0x30, 0x93, 0x19, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x17, 0x22, 0x18, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x21, 0x52, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x31, 0x02, 0x19, 0x11, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x09, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, + 0x81, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x07, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8B, 0x19, 0x32, 0x11, 0x53, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xD6, 0x22, 0x18, 0x11, 0x96, 0x11, 0x75, 0x09, 0x54, 0x11, 0x54, 0x09, 0x53, 0x09, 0x33, 0x02, 0x09, 0x32, 0x81, 0x11, 0x32, 0x09, 0x32, 0x03, 0x11, 0x13, 0x80, 0x10, 0xF3, 0x01, 0x11, 0x13, 0x1B, 0x11, 0x12, 0x83, 0x11, 0x32, 0x11, 0x33, 0x11, 0x32, 0x11, 0x53, 0x06, 0x11, 0x33, 0x81, 0x11, 0x12, 0x11, 0x33, 0x05, 0x11, 0x13, 0x02, 0x11, 0x33, 0x81, 0x11, 0x34, 0x09, 0x34, 0x01, 0x09, 0x55, 0x81, 0x01, 0x76, 0x01, 0xB8, 0x02, 0x01, 0xD9, 0x81, 0x01, 0xB9, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xB9, 0x0B, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x03, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x85, 0x0A, 0x1A, 0x09, 0xF9, 0x11, 0xF8, 0x19, 0xF7, 0x11, 0x75, 0x11, 0x12, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, + 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x09, 0x33, 0x19, 0xD7, 0x01, 0x1A, 0x18, 0x82, 0x11, 0xB6, 0x11, 0x13, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x90, 0x29, 0x50, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x53, 0x11, 0x12, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x84, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x33, 0x11, 0x55, 0x01, 0x11, 0x96, 0x02, 0x11, 0xB7, 0x84, 0x11, 0x96, 0x09, 0x34, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x0E, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x8C, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x10, 0xF1, 0x19, 0x94, 0x21, 0xF6, 0x19, 0xD6, 0x19, 0xB5, 0x08, 0xF2, 0x11, 0x12, 0x19, 0x31, 0x19, 0x30, 0x21, 0x50, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x50, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, + 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x95, 0x22, 0x17, 0x2A, 0x38, 0x11, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x0A, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x86, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x96, 0x01, 0x1A, 0x19, 0x83, 0x19, 0xF8, 0x11, 0x13, 0x19, 0x12, 0x21, 0x31, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x11, 0x33, 0x11, 0x74, 0x21, 0xF7, 0x2A, 0x17, 0x21, 0xF6, 0x19, 0x74, 0x10, 0xF2, 0x19, 0x12, 0x01, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, + 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x89, 0x11, 0x33, 0x19, 0xB5, 0x2A, 0x38, 0x19, 0xD6, 0x19, 0xB5, 0x09, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x19, 0x30, 0x19, 0x31, 0x01, 0x11, 0x32, 0x83, 0x21, 0xD5, 0x22, 0x17, 0x21, 0xD6, 0x19, 0x95, 0x01, 0x11, 0x12, 0x82, 0x21, 0x52, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x87, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x10, 0x85, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x88, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0x94, 0x21, 0xF6, 0x21, 0xD5, 0x19, 0x94, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x02, 0x21, 0x31, 0x8B, 0x19, 0x10, 0x19, 0x31, 0x11, 0x31, 0x11, 0x53, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0xB6, 0x11, 0x32, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x87, 0x29, 0x30, 0x29, 0x0F, + 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x28, 0xF0, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x11, 0x01, 0x18, 0xF1, 0x82, 0x19, 0x32, 0x11, 0x33, 0x19, 0x95, 0x02, 0x21, 0xF7, 0x82, 0x19, 0x95, 0x19, 0x53, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x8A, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x04, 0x19, 0x31, 0x03, 0x19, 0x32, 0x80, 0x19, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x19, 0x32, 0x01, 0x19, 0x11, 0x82, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x01, 0x19, 0x32, 0x80, 0x11, 0x12, 0x01, 0x11, 0x32, 0x80, 0x19, 0x32, 0x05, 0x19, 0x31, 0x91, 0x19, 0x11, 0x19, 0x31, 0x21, 0x32, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x09, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x21, 0xF7, 0x22, 0x17, 0x19, + 0xD6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x33, 0x19, 0x32, 0x11, 0x32, 0x19, 0x32, 0x02, 0x11, 0x32, 0x8B, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xB6, 0x19, 0xF7, 0x21, 0xF8, 0x19, 0xB7, 0x11, 0x75, 0x11, 0x34, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x19, 0x31, 0x8F, 0x19, 0x12, 0x19, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xF8, 0x12, 0x19, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x50, 0x01, 0x19, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x31, 0x10, 0xF1, 0x11, 0x12, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x18, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x13, 0x11, 0x12, 0x01, 0x19, 0x52, 0x80, 0x21, 0x51, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, + 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x0A, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x19, 0x10, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x31, 0x04, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x07, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x19, 0x31, 0x88, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x19, 0x96, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xB6, 0x03, 0x19, 0xB5, 0x80, 0x19, 0xD5, 0x02, 0x19, 0xB5, 0x82, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x96, 0x14, 0x19, 0x95, 0x80, 0x21, 0xB5, 0x0A, 0x19, 0x95, 0x01, 0x19, 0x94, 0x82, 0x19, 0x95, 0x19, 0x94, 0x19, 0xB5, 0x04, 0x19, 0x95, 0x80, 0x21, 0xB5, 0x01, 0x19, 0xB6, 0x80, 0x21, 0xB6, 0x02, 0x21, 0xD6, 0x80, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x02, 0x19, 0xD7, 0x84, 0x11, 0xD8, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0xF9, + 0x01, 0xFA, 0x01, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x04, 0x01, 0xFA, 0x82, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xFB, 0x04, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x09, 0x01, 0xDA, 0x82, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x81, 0x01, 0xD9, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x86, 0x09, 0xF9, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x54, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x21, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0xB6, 0x11, 0x13, 0x19, 0x12, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x12, 0x19, 0x31, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, + 0x19, 0x52, 0x83, 0x11, 0x33, 0x09, 0x33, 0x11, 0x95, 0x11, 0x96, 0x01, 0x11, 0xB7, 0x83, 0x11, 0x96, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x07, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x11, 0x10, 0xF1, 0x21, 0x94, 0x2A, 0x16, 0x21, 0xD6, 0x19, 0x94, 0x09, 0x12, 0x11, 0x12, 0x19, 0x31, 0x19, 0x51, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x50, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x50, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x8C, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x09, 0x12, 0x19, 0xB5, 0x2A, 0x38, 0x19, 0xF7, 0x11, 0x75, 0x11, 0x13, 0x11, 0x32, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x4F, 0x07, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x87, 0x19, 0x32, 0x11, 0x13, 0x11, 0x96, 0x19, 0xF8, 0x1A, 0x19, 0x19, 0xD7, 0x11, 0x13, 0x19, 0x12, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, + 0x05, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x19, 0x53, 0x11, 0x33, 0x11, 0x53, 0x11, 0x74, 0x22, 0x17, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x54, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x21, 0x51, 0x21, 0x50, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x89, 0x11, 0x33, 0x19, 0xB5, 0x2A, 0x38, 0x21, 0xF7, 0x11, 0x95, 0x09, 0x13, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x8A, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x21, 0xF6, 0x2A, 0x37, 0x21, 0xF6, 0x19, 0x94, 0x09, 0x12, 0x11, 0x32, 0x19, 0x52, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, + 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0x94, 0x21, 0xF6, 0x21, 0xD5, 0x19, 0x73, 0x11, 0x12, 0x19, 0x11, 0x02, 0x21, 0x31, 0x8C, 0x19, 0x10, 0x19, 0x30, 0x19, 0x31, 0x11, 0x11, 0x11, 0x53, 0x1A, 0x17, 0x1A, 0x38, 0x1A, 0x17, 0x11, 0x95, 0x11, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x10, 0x05, 0x29, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x97, 0x29, 0x51, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x19, 0x75, 0x21, 0xD7, 0x2A, 0x18, 0x21, 0xD7, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x29, 0x51, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, + 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x30, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x21, 0x32, 0x01, 0x19, 0x11, 0x82, 0x21, 0x31, 0x19, 0x11, 0x19, 0x10, 0x05, 0x19, 0x11, 0x03, 0x19, 0x31, 0x01, 0x19, 0x11, 0x04, 0x19, 0x31, 0x8E, 0x21, 0x31, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x33, 0x01, 0x11, 0x32, 0x01, 0x19, 0x52, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x8A, 0x11, 0x53, 0x11, 0x75, 0x19, 0xB6, 0x21, 0xF7, 0x21, 0xF8, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x13, 0x11, 0x12, 0x11, 0x11, 0x21, 0x32, 0x01, 0x21, 0x51, 0x80, 0x19, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x51, 0x01, 0x19, 0x11, 0x85, 0x19, 0x32, 0x19, 0x33, 0x11, 0x33, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x01, 0x11, 0xF8, 0x87, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xD7, 0x11, + 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x89, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x51, 0x21, 0x30, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x19, 0x74, 0x19, 0xB6, 0x01, 0x22, 0x17, 0x82, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x01, 0x11, 0x32, 0x81, 0x19, 0x32, 0x21, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, + 0x29, 0x30, 0x8B, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x50, 0x80, 0x21, 0x30, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x33, 0x19, 0x54, 0x19, 0x75, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x80, 0x21, 0xF7, 0x03, 0x22, 0x17, 0x01, 0x2A, 0x37, 0x02, 0x2A, 0x38, 0x02, 0x32, 0x38, 0x02, 0x2A, 0x38, 0x80, 0x32, 0x38, 0x01, 0x2A, 0x18, 0x07, 0x2A, 0x38, 0x80, 0x32, 0x38, 0x02, 0x2A, 0x38, 0x81, 0x2A, 0x37, 0x2A, 0x38, 0x01, 0x2A, 0x37, 0x02, 0x2A, 0x38, 0x81, 0x2A, 0x37, 0x2A, 0x17, 0x01, 0x32, 0x38, 0x01, 0x2A, 0x37, 0x04, 0x2A, 0x17, 0x01, 0x2A, 0x37, 0x81, 0x2A, 0x17, 0x29, 0xF7, 0x02, 0x2A, 0x17, 0x81, 0x21, 0xF7, 0x2A, 0x17, 0x02, 0x21, 0xF7, 0x80, 0x22, 0x18, 0x01, 0x22, 0x17, 0x87, 0x19, 0xF7, 0x19, 0xF8, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0xF8, 0x12, 0x19, 0x01, 0xF9, 0x09, 0xFA, 0x02, 0x01, 0xD9, 0x82, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x09, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x82, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x88, 0x09, 0xD8, 0x11, 0xF8, + 0x11, 0xD7, 0x11, 0x54, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x19, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8A, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0xB6, 0x11, 0x13, 0x19, 0x12, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8C, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x33, 0x11, 0x12, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x31, 0x01, 0x19, 0x31, 0x85, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0xB6, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x84, 0x11, 0x54, 0x11, 0x12, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x88, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, + 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x93, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x10, 0xD0, 0x19, 0x94, 0x2A, 0x16, 0x21, 0xF6, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x12, 0x01, 0x19, 0x31, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x50, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x50, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x09, 0x12, 0x19, 0xD6, 0x22, 0x18, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x19, 0x32, 0x19, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x4F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8D, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x09, 0x13, 0x11, 0xB7, 0x19, 0xF8, 0x1A, 0x19, 0x19, 0xD8, 0x11, 0x13, 0x19, 0x32, 0x01, 0x21, 0x11, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, + 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x20, 0xEF, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x30, 0x82, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x01, 0x11, 0x53, 0x86, 0x11, 0x74, 0x21, 0xF7, 0x2A, 0x38, 0x21, 0xD6, 0x19, 0x74, 0x19, 0x32, 0x11, 0x11, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x03, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xF7, 0x11, 0xB5, 0x09, 0x13, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x19, 0x31, 0x01, 0x11, 0x32, 0x86, 0x21, 0xF5, 0x22, 0x16, 0x21, 0xF6, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x32, 0x21, 0x52, 0x01, 0x21, 0x51, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x06, 0x21, 0x10, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x29, + 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x21, 0x31, 0x21, 0x51, 0x19, 0x32, 0x11, 0x12, 0x19, 0x94, 0x21, 0xF6, 0x21, 0xD5, 0x21, 0xB4, 0x11, 0x11, 0x19, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x89, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x19, 0xF6, 0x1A, 0x38, 0x1A, 0x17, 0x11, 0xB5, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x86, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x03, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x19, 0x12, 0x89, 0x11, 0x33, 0x19, 0x95, 0x21, 0xD7, 0x2A, 0x18, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x54, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x83, 0x21, + 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x19, 0x30, 0x03, 0x19, 0x31, 0x80, 0x21, 0x11, 0x02, 0x21, 0x31, 0x82, 0x21, 0x11, 0x21, 0x10, 0x21, 0x31, 0x02, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x04, 0x19, 0x11, 0x02, 0x19, 0x31, 0x82, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x02, 0x19, 0x31, 0x01, 0x19, 0x11, 0x88, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x02, 0x11, 0x32, 0x82, 0x19, 0x32, 0x19, 0x52, 0x11, 0x32, 0x01, 0x11, 0x53, 0x87, 0x11, 0x74, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x13, 0x11, 0x12, 0x01, 0x19, 0x11, 0x82, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x87, 0x19, 0x12, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xF8, 0x11, 0xF9, 0x01, 0x11, 0xF8, 0x86, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x05, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x01, 0x11, + 0x12, 0x8A, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x1A, 0x17, 0x21, 0xF7, 0x11, 0x95, 0x09, 0x53, 0x11, 0x32, 0x11, 0x12, 0x21, 0x52, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x87, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x07, 0x21, 0x10, 0x02, + 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x30, 0x82, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x01, 0x19, 0x33, 0x81, 0x21, 0xB5, 0x21, 0xD6, 0x01, 0x19, 0x95, 0x01, 0x19, 0xB5, 0x80, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x03, 0x21, 0xD6, 0x01, 0x21, 0xB6, 0x02, 0x21, 0xD6, 0x80, 0x21, 0xD7, 0x06, 0x21, 0xD6, 0x80, 0x21, 0xF7, 0x08, 0x21, 0xD6, 0x82, 0x21, 0xF6, 0x21, 0xD6, 0x21, 0xF6, 0x06, 0x21, 0xD6, 0x09, 0x21, 0xF6, 0x02, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x01, 0x21, 0xD6, 0x80, 0x21, 0xD7, 0x02, 0x19, 0xB6, 0x86, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0xB7, 0x09, 0xB7, 0x09, 0xB8, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x81, 0x01, 0xB8, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x0E, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x0A, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x02, 0x09, 0xF9, 0x83, 0x11, 0xF8, 0x19, 0xD7, 0x11, 0x74, 0x11, 0x12, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x08, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x30, 0x8C, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, + 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x96, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x90, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x21, 0x11, 0x21, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x90, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xF7, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x0A, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x88, 0x21, 0x31, 0x19, 0x11, 0x10, 0xF1, 0x19, 0x74, 0x21, 0xF6, 0x21, 0xD5, 0x19, 0x94, 0x08, 0xF2, 0x11, 0x12, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x50, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x50, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x51, 0x19, 0x32, 0x11, 0x32, 0x09, 0x33, 0x22, 0x17, 0x22, 0x38, 0x19, 0xD6, 0x11, 0x74, 0x11, + 0x33, 0x19, 0x53, 0x19, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x12, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x84, 0x21, 0x51, 0x21, 0x52, 0x11, 0x12, 0x09, 0x13, 0x11, 0xD7, 0x01, 0x1A, 0x19, 0x84, 0x19, 0xD7, 0x10, 0xF2, 0x19, 0x12, 0x21, 0x11, 0x21, 0x10, 0x01, 0x29, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x8D, 0x21, 0x10, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x74, 0x21, 0xD6, 0x2A, 0x17, 0x21, 0xD6, 0x21, 0x95, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x19, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, + 0x13, 0x19, 0xB5, 0x22, 0x17, 0x19, 0xF7, 0x11, 0xB5, 0x09, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x11, 0x02, 0x21, 0x30, 0x81, 0x19, 0x30, 0x19, 0x31, 0x01, 0x11, 0x32, 0x83, 0x21, 0xD5, 0x22, 0x16, 0x21, 0xD6, 0x19, 0x94, 0x01, 0x11, 0x12, 0x84, 0x21, 0x52, 0x21, 0x51, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x97, 0x19, 0x32, 0x11, 0x32, 0x19, 0xB4, 0x2A, 0x16, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x30, 0x19, 0x31, 0x11, 0x31, 0x11, 0x53, 0x1A, 0x16, 0x1A, 0x17, 0x19, 0xF7, 0x11, 0xB5, 0x11, 0x32, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x2F, + 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x88, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x04, 0x29, 0x10, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x31, 0x8D, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x19, 0x33, 0x19, 0x75, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xF6, 0x11, 0x95, 0x11, 0x53, 0x11, 0x12, 0x10, 0xF1, 0x10, 0xF0, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x10, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x29, 0x51, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x51, 0x81, 0x19, 0x30, 0x19, 0x31, 0x02, 0x21, 0x31, 0x01, 0x21, 0x11, 0x82, 0x21, 0x31, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x31, 0x85, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x19, 0x11, 0x03, 0x21, 0x11, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x86, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB5, 0x01, 0x21, 0xF7, 0x81, 0x19, 0xB5, 0x11, 0x74, 0x01, 0x11, 0x53, 0x82, 0x11, 0x52, 0x11, 0x32, 0x19, 0x32, 0x01, 0x11, 0x11, 0x8C, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x19, 0xD7, 0x21, 0xF7, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x33, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x82, 0x21, + 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x01, 0x19, 0x11, 0x86, 0x19, 0x12, 0x19, 0x33, 0x11, 0x53, 0x11, 0x54, 0x11, 0x76, 0x11, 0xB7, 0x11, 0xF8, 0x01, 0x11, 0xF9, 0x8C, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x10, 0x91, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x17, 0x1A, 0x17, 0x19, 0xF6, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x21, 0x51, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x06, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, + 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x08, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x28, 0xEF, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x05, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x50, 0x03, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x19, 0x12, 0x82, 0x19, 0x32, 0x19, 0x53, 0x19, 0x33, 0x01, 0x19, 0x53, 0x84, 0x19, 0x73, 0x11, 0x53, 0x19, 0x73, 0x19, 0x74, 0x19, 0x54, 0x03, 0x19, 0x74, 0x01, 0x19, 0x54, 0x01, 0x19, 0x74, 0x80, 0x19, 0x54, 0x0C, 0x19, 0x74, 0x80, 0x11, 0x74, 0x05, 0x19, 0x74, 0x80, 0x19, 0x54, 0x01, 0x19, 0x74, 0x80, 0x19, 0x54, 0x03, 0x19, 0x74, 0x80, 0x11, 0x74, 0x02, 0x19, 0x94, 0x80, 0x19, 0x74, 0x08, 0x19, 0x94, 0x85, 0x21, 0xB5, 0x19, 0x95, 0x19, 0xB5, 0x19, 0xB6, 0x21, 0xD6, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x82, 0x11, 0xD7, 0x11, 0xD8, 0x11, 0xF9, 0x01, 0x09, 0xD9, 0x83, 0x01, 0xB8, 0x09, 0xF9, 0x01, 0xD8, 0x01, 0xD9, 0x02, 0x01, + 0xB9, 0x81, 0x09, 0xD9, 0x01, 0xB9, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x82, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xDA, 0x04, 0x01, 0xB9, 0x85, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x03, 0x01, 0xD9, 0x81, 0x01, 0xF9, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x86, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x21, 0x32, 0x01, 0x21, 0x31, 0x05, 0x21, 0x10, 0x06, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xB6, 0x09, 0x12, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x90, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x33, 0x19, 0x12, 0x21, 0x31, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x19, 0x11, 0x01, 0x19, 0x32, 0x87, 0x11, 0x12, 0x11, 0x54, + 0x19, 0xB5, 0x19, 0xD6, 0x11, 0xD6, 0x11, 0x95, 0x09, 0x13, 0x11, 0x32, 0x01, 0x19, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x8C, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x10, 0xF1, 0x19, 0x74, 0x21, 0xD6, 0x21, 0xD5, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x12, 0x19, 0x52, 0x19, 0x31, 0x21, 0x50, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x50, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x31, 0x19, 0x32, 0x09, 0x32, 0x09, 0x54, 0x1A, 0x17, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x75, 0x11, 0x33, 0x19, 0x53, 0x19, 0x31, 0x21, 0x31, 0x05, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0E, 0x07, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x91, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x19, 0x31, 0x11, 0x12, 0x09, 0x13, 0x19, 0xD7, 0x19, 0xF8, 0x1A, 0x19, 0x19, 0xD7, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, + 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8C, 0x19, 0x32, 0x19, 0x33, 0x11, 0x53, 0x11, 0x74, 0x21, 0xD6, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x74, 0x19, 0x33, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0x95, 0x22, 0x17, 0x19, 0xF7, 0x11, 0xB6, 0x09, 0x33, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x87, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x09, 0x32, 0x19, 0xD5, 0x2A, 0x17, 0x21, 0xF6, 0x19, 0x95, 0x01, 0x11, 0x12, 0x82, 0x21, 0x52, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x87, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, + 0x81, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x89, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x19, 0x31, 0x11, 0x32, 0x19, 0x94, 0x21, 0xF6, 0x19, 0xD5, 0x19, 0xB4, 0x11, 0x12, 0x01, 0x19, 0x31, 0x02, 0x21, 0x31, 0x83, 0x19, 0x10, 0x19, 0x31, 0x11, 0x31, 0x11, 0x53, 0x01, 0x1A, 0x17, 0x84, 0x11, 0xF7, 0x11, 0xB6, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x05, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x02, + 0x21, 0x31, 0x01, 0x21, 0x11, 0x8B, 0x19, 0x11, 0x19, 0x12, 0x19, 0x53, 0x19, 0x75, 0x19, 0xD7, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xB5, 0x09, 0x53, 0x09, 0x12, 0x10, 0xF1, 0x11, 0x11, 0x03, 0x19, 0x10, 0x01, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x11, 0x21, 0x31, 0x86, 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x19, 0x10, 0x21, 0x31, 0x21, 0x11, 0x21, 0x30, 0x02, 0x21, 0x31, 0x03, 0x19, 0x31, 0x80, 0x19, 0x10, 0x0A, 0x19, 0x11, 0x01, 0x19, 0x31, 0x0A, 0x19, 0x11, 0x8E, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xB5, 0x11, 0x94, 0x11, 0x53, 0x11, 0x33, 0x11, 0x52, 0x19, 0x52, 0x19, 0x32, 0x11, 0x11, 0x01, 0x11, 0x32, 0x8D, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x32, 0x19, 0x31, 0x03, 0x19, 0x11, 0x91, 0x19, 0x12, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x19, 0xF8, 0x11, 0xF8, 0x1A, 0x39, 0x11, 0xF8, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x02, + 0x21, 0x30, 0x02, 0x21, 0x10, 0x87, 0x21, 0x30, 0x21, 0x51, 0x21, 0x52, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x86, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x28, 0xF0, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x28, 0xEF, 0x04, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x05, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, + 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x82, 0x21, 0x31, 0x21, 0x11, 0x21, 0x32, 0x03, 0x19, 0x12, 0x82, 0x11, 0x12, 0x11, 0x32, 0x19, 0x32, 0x01, 0x11, 0x12, 0x80, 0x19, 0x12, 0x02, 0x11, 0x12, 0x86, 0x11, 0x32, 0x11, 0x12, 0x11, 0x13, 0x11, 0x33, 0x11, 0x13, 0x11, 0x33, 0x19, 0x33, 0x04, 0x11, 0x13, 0x02, 0x11, 0x12, 0x01, 0x11, 0x13, 0x05, 0x11, 0x12, 0x80, 0x11, 0x32, 0x01, 0x11, 0x12, 0x80, 0x11, 0x33, 0x05, 0x11, 0x12, 0x07, 0x11, 0x32, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x02, 0x11, 0x12, 0x83, 0x11, 0x32, 0x19, 0x33, 0x11, 0x33, 0x19, 0x33, 0x01, 0x11, 0x53, 0x8E, 0x11, 0x54, 0x19, 0x74, 0x19, 0x95, 0x11, 0x75, 0x11, 0x95, 0x11, 0xB7, 0x11, 0xD7, 0x19, 0xF8, 0x12, 0x19, 0x1A, 0x19, 0x11, 0xF8, 0x1A, 0x19, 0x12, 0x19, 0x09, 0xB8, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x01, 0x09, 0xD8, 0x83, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xD9, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x82, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xF9, 0x04, 0x09, 0xD9, 0x81, 0x09, 0xF9, 0x01, 0xD9, 0x04, 0x09, 0xD9, 0x82, 0x01, 0xD9, 0x09, 0xF9, 0x01, 0xD9, 0x03, 0x09, 0xD9, 0x01, 0x09, 0xB9, 0x03, 0x09, 0xD9, 0x88, 0x09, 0xF9, 0x09, 0xF8, 0x11, 0xF8, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x53, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x08, 0x29, 0x0F, 0x08, + 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x50, 0x01, 0x21, 0x30, 0x89, 0x19, 0x11, 0x11, 0x32, 0x11, 0x74, 0x19, 0xF6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x19, 0x12, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x97, 0x21, 0x10, 0x21, 0x11, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x53, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xF7, 0x11, 0xB5, 0x09, 0x12, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x08, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x11, 0x10, 0xF1, 0x21, 0x74, 0x29, 0xF6, 0x21, 0xF6, 0x19, 0x94, 0x01, 0x11, 0x12, 0x01, 0x19, 0x31, + 0x80, 0x21, 0x30, 0x01, 0x21, 0x50, 0x80, 0x19, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x50, 0x21, 0x50, 0x02, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x09, 0x33, 0x09, 0x54, 0x19, 0xF7, 0x01, 0x1A, 0x18, 0x82, 0x11, 0xB6, 0x09, 0x33, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x19, 0xF8, 0x1A, 0x18, 0x1A, 0x39, 0x19, 0xD7, 0x11, 0x12, 0x01, 0x21, 0x11, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x28, 0xEF, 0x20, 0xEF, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x50, 0x03, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x91, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x19, 0x54, 0x11, 0x75, 0x21, 0xD6, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x32, 0x19, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x30, + 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x22, 0x17, 0x19, 0xF7, 0x11, 0xB5, 0x09, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x19, 0x10, 0x19, 0x31, 0x01, 0x11, 0x32, 0x83, 0x19, 0xD5, 0x22, 0x17, 0x21, 0xF6, 0x19, 0x95, 0x01, 0x11, 0x12, 0x80, 0x19, 0x32, 0x01, 0x21, 0x51, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x87, 0x19, 0x31, 0x11, 0x32, 0x19, 0xB4, 0x21, 0xF5, 0x21, 0xD5, 0x19, 0x94, 0x11, 0x12, 0x19, 0x11, 0x03, 0x21, 0x31, 0x01, 0x19, 0x31, 0x88, 0x11, 0x12, 0x11, 0x33, 0x1A, 0x17, 0x1A, 0x38, 0x1A, 0x18, 0x11, 0xB5, 0x11, 0x32, 0x19, 0x11, 0x19, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x03, 0x29, + 0x2F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x31, 0x29, 0x31, 0x01, 0x21, 0x31, 0x85, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x19, 0x53, 0x19, 0xB5, 0x19, 0xD6, 0x01, 0x1A, 0x17, 0x82, 0x11, 0xB5, 0x09, 0x54, 0x09, 0x12, 0x01, 0x08, 0xF1, 0x04, 0x10, 0xF1, 0x01, 0x19, 0x11, 0x80, 0x10, 0xF1, 0x01, 0x19, 0x11, 0x80, 0x19, 0x12, 0x09, 0x19, 0x11, 0x80, 0x19, 0x12, 0x0C, 0x19, 0x11, 0x80, 0x18, 0xF1, 0x01, 0x19, 0x11, 0x03, 0x11, 0x11, 0x06, 0x19, 0x11, 0x01, 0x19, 0x12, 0x03, 0x11, 0x12, 0x01, 0x10, 0xF1, 0x03, 0x19, 0x11, 0x82, 0x19, 0x12, 0x19, 0x11, 0x18, 0xF1, 0x01, 0x10, 0xF1, 0x01, 0x11, 0x12, 0x01, 0x11, 0x33, 0x81, 0x11, 0x54, 0x11, 0x95, 0x01, 0x21, 0xF7, 0x87, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x19, 0x52, 0x19, 0x32, 0x01, 0x11, 0x32, 0x88, 0x11, 0x53, 0x19, 0x94, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xD6, + 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x11, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x19, 0x32, 0x80, 0x19, 0x11, 0x02, 0x19, 0x31, 0x87, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x19, 0xF8, 0x02, 0x12, 0x18, 0x89, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x51, 0x8F, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x09, 0x12, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x17, 0x21, 0xF6, 0x11, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x21, 0x31, 0x21, 0x11, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x82, 0x29, 0x10, + 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x02, 0x21, 0x11, 0x81, 0x19, 0x11, 0x19, 0x12, 0x05, 0x19, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x12, 0x84, 0x19, 0x32, 0x19, 0x12, 0x11, 0x12, 0x19, 0x12, 0x19, 0x32, 0x02, 0x19, 0x12, 0x80, 0x19, 0x32, 0x01, 0x19, 0x12, 0x83, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x01, 0x11, 0x12, 0x01, 0x19, 0x32, 0x03, 0x19, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x12, + 0x80, 0x19, 0x32, 0x02, 0x19, 0x12, 0x81, 0x19, 0x32, 0x19, 0x11, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x82, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x03, 0x19, 0x11, 0x02, 0x19, 0x12, 0x80, 0x19, 0x11, 0x02, 0x19, 0x12, 0x01, 0x11, 0x32, 0x83, 0x11, 0x33, 0x11, 0x34, 0x11, 0x54, 0x11, 0x75, 0x01, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x87, 0x19, 0xD7, 0x11, 0xD7, 0x19, 0xD8, 0x19, 0xF8, 0x11, 0xD8, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0xD8, 0x07, 0x11, 0xF8, 0x83, 0x19, 0xF9, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xF9, 0x01, 0x11, 0xD8, 0x85, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xD8, 0x02, 0x11, 0xF8, 0x81, 0x09, 0xD8, 0x11, 0xF9, 0x02, 0x11, 0xD8, 0x81, 0x11, 0xB8, 0x11, 0xD8, 0x01, 0x11, 0xB8, 0x02, 0x11, 0xD8, 0x85, 0x11, 0xF8, 0x19, 0xD7, 0x19, 0xD6, 0x21, 0xB5, 0x19, 0x32, 0x19, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x07, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x83, 0x19, 0x31, 0x11, 0x12, 0x09, 0x33, 0x19, 0xD6, 0x01, 0x1A, 0x18, 0x83, 0x11, 0xB6, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x82, 0x19, 0x31, 0x11, 0x32, + 0x11, 0x54, 0x01, 0x19, 0xD6, 0x85, 0x19, 0xF7, 0x19, 0xB5, 0x11, 0x33, 0x19, 0x12, 0x21, 0x11, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x8B, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB5, 0x19, 0xF6, 0x19, 0xD6, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x07, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x04, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x11, 0x10, 0xF2, 0x21, 0x74, 0x29, 0xF6, 0x21, 0xF6, 0x19, 0x94, 0x01, 0x11, 0x12, 0x87, 0x19, 0x52, 0x19, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x2F, 0x19, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x50, 0x02, 0x21, 0x30, 0x85, 0x19, 0x10, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x09, 0x54, 0x11, 0xD7, 0x01, 0x1A, 0x18, 0x87, 0x19, 0xF7, 0x09, 0x34, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x10, + 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x11, 0x75, 0x01, 0x19, 0xF8, 0x82, 0x1A, 0x18, 0x19, 0xB6, 0x19, 0x32, 0x01, 0x21, 0x11, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x20, 0xCE, 0x82, 0x28, 0xEF, 0x29, 0x0F, 0x31, 0x50, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x89, 0x19, 0x11, 0x11, 0x32, 0x19, 0x74, 0x11, 0x74, 0x21, 0xD6, 0x2A, 0x17, 0x21, 0xF7, 0x11, 0x54, 0x11, 0x33, 0x11, 0x11, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x07, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x22, 0x17, 0x1A, 0x17, 0x19, 0xB6, 0x09, 0x33, 0x11, 0x32, 0x19, 0x52, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x19, 0x30, 0x19, 0x31, 0x01, 0x11, 0x32, 0x88, 0x19, 0xD5, 0x22, 0x16, 0x19, 0xF6, 0x19, 0xB5, 0x08, 0xF2, 0x19, 0x32, 0x19, 0x52, 0x21, + 0x51, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x06, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x87, 0x19, 0x31, 0x11, 0x32, 0x19, 0x94, 0x21, 0xF5, 0x21, 0xD5, 0x19, 0x94, 0x11, 0x12, 0x19, 0x11, 0x03, 0x21, 0x31, 0x8D, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xF7, 0x1A, 0x38, 0x1A, 0x18, 0x11, 0xB5, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x05, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x08, 0x29, 0x30, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, + 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x80, 0x29, 0x31, 0x01, 0x21, 0x10, 0x8D, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xF7, 0x1A, 0x17, 0x22, 0x37, 0x19, 0xF6, 0x11, 0x95, 0x11, 0x74, 0x09, 0x13, 0x09, 0x12, 0x02, 0x08, 0xF2, 0x85, 0x11, 0x13, 0x08, 0xF2, 0x09, 0x12, 0x11, 0x13, 0x11, 0x12, 0x09, 0x12, 0x04, 0x11, 0x12, 0x80, 0x09, 0x12, 0x08, 0x11, 0x12, 0x80, 0x11, 0x33, 0x02, 0x11, 0x12, 0x01, 0x09, 0x12, 0x01, 0x11, 0x32, 0x09, 0x11, 0x12, 0x01, 0x09, 0x12, 0x02, 0x11, 0x12, 0x85, 0x09, 0x12, 0x11, 0x13, 0x09, 0x12, 0x11, 0x33, 0x09, 0x33, 0x09, 0x13, 0x01, 0x11, 0x13, 0x01, 0x11, 0x12, 0x80, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x11, 0x13, 0x02, 0x11, 0x12, 0x80, 0x11, 0x13, 0x01, 0x11, 0x33, 0x82, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x82, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x53, 0x06, 0x11, 0x32, 0x8E, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x05, 0x29, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x86, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x8E, 0x19, 0x53, 0x11, 0x32, 0x19, 0x52, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, + 0x19, 0x32, 0x11, 0x12, 0x19, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x01, 0x12, 0x18, 0x87, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x51, 0x85, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x01, 0x22, 0x17, 0x84, 0x19, 0xF6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x87, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x0B, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x10, + 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x05, 0x19, 0x31, 0x85, 0x19, 0x11, 0x19, 0x31, 0x21, 0x32, 0x19, 0x31, 0x21, 0x52, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x84, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x11, 0x19, 0x52, 0x04, 0x19, 0x31, 0x01, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x02, 0x19, 0x31, 0x88, 0x21, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x21, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x03, 0x19, 0x31, 0x83, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x21, 0x51, 0x01, 0x21, 0x31, 0x02, 0x19, 0x11, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x21, 0x32, 0x01, 0x19, 0x32, 0x80, 0x19, 0x12, 0x01, 0x11, 0x33, 0x04, 0x11, 0x54, 0x81, 0x19, 0x55, 0x19, 0x75, 0x01, 0x11, 0x55, 0x01, 0x11, 0x75, 0x80, 0x11, 0x55, 0x01, 0x11, 0x75, 0x82, 0x11, 0x76, 0x11, 0x75, 0x19, 0x96, 0x01, 0x11, 0x75, 0x80, 0x11, 0x96, 0x01, 0x11, 0x76, 0x85, 0x11, 0x96, 0x11, 0x75, 0x11, 0x96, 0x19, 0x96, 0x11, 0x96, 0x11, 0x76, 0x04, 0x11, 0x96, 0x81, 0x11, + 0xB6, 0x11, 0x76, 0x01, 0x11, 0x96, 0x80, 0x11, 0x75, 0x01, 0x19, 0x96, 0x83, 0x11, 0x55, 0x11, 0x76, 0x19, 0x96, 0x11, 0x96, 0x03, 0x19, 0xB6, 0x85, 0x19, 0x95, 0x19, 0x74, 0x21, 0x73, 0x19, 0x32, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x8C, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x19, 0xF7, 0x1A, 0x38, 0x1A, 0x18, 0x11, 0xB6, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x29, 0x50, 0x04, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x83, 0x19, 0x31, 0x11, 0x32, 0x11, 0x74, 0x19, 0xF6, 0x01, 0x19, 0xF7, 0x83, 0x19, 0xB5, 0x11, 0x33, 0x19, 0x12, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x31, 0x19, 0x32, 0x19, 0x12, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x95, 0x09, 0x12, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x06, 0x29, + 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x12, 0x10, 0xF2, 0x21, 0x74, 0x29, 0xF6, 0x21, 0xD6, 0x19, 0x95, 0x01, 0x11, 0x12, 0x86, 0x19, 0x52, 0x21, 0x31, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x19, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x50, 0x87, 0x21, 0x10, 0x21, 0x31, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x09, 0x34, 0x11, 0x75, 0x01, 0x11, 0xD7, 0x87, 0x1A, 0x18, 0x19, 0xF8, 0x09, 0x54, 0x09, 0x33, 0x11, 0x32, 0x19, 0x52, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x10, 0x19, 0x11, 0x19, 0x31, 0x19, 0x52, 0x11, 0x53, 0x21, 0xF6, 0x02, 0x19, 0xF8, 0x84, 0x19, 0x95, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0xEF, 0x29, 0x0F, 0x28, 0xCE, 0x01, 0x20, 0xAD, 0x01, 0x20, 0xCE, + 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x8C, 0x21, 0x11, 0x19, 0x11, 0x19, 0x53, 0x19, 0x74, 0x11, 0x74, 0x19, 0xB6, 0x2A, 0x38, 0x2A, 0x17, 0x19, 0x74, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x06, 0x29, 0x30, 0x83, 0x29, 0x10, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x90, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x50, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x09, 0x33, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x19, 0x51, 0x19, 0x31, 0x01, 0x11, 0x32, 0x85, 0x19, 0xD5, 0x22, 0x16, 0x21, 0xF6, 0x19, 0x95, 0x08, 0xF2, 0x11, 0x12, 0x01, 0x21, 0x52, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, + 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x05, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x11, 0x01, 0x19, 0x31, 0x86, 0x11, 0x32, 0x19, 0x94, 0x21, 0xF5, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x12, 0x19, 0x31, 0x02, 0x21, 0x31, 0x8B, 0x21, 0x11, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x19, 0xF7, 0x12, 0x18, 0x1A, 0x18, 0x11, 0x95, 0x11, 0x33, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x30, 0x08, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x85, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x84, 0x28, 0xF0, 0x28, 0xEF, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x04, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x31, 0x88, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x95, 0x19, 0xF7, 0x1A, 0x38, 0x1A, 0x58, 0x1A, 0x38, 0x1A, 0x18, 0x01, 0x19, 0xF7, 0x81, 0x19, 0xD7, 0x19, 0xB7, 0x01, 0x11, 0x96, 0x80, 0x11, 0xB7, 0x02, 0x11, 0x96, 0x86, 0x11, 0xB6, 0x11, 0x96, 0x11, 0xB6, + 0x11, 0x95, 0x11, 0xB6, 0x11, 0x96, 0x19, 0xB6, 0x01, 0x19, 0x96, 0x01, 0x19, 0xB6, 0x02, 0x11, 0xB6, 0x81, 0x19, 0xB6, 0x19, 0xD6, 0x01, 0x11, 0xB6, 0x80, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x81, 0x11, 0x96, 0x11, 0xD6, 0x01, 0x11, 0xB6, 0x85, 0x19, 0xB6, 0x11, 0x96, 0x11, 0xB6, 0x11, 0x96, 0x11, 0x95, 0x11, 0xB5, 0x02, 0x11, 0x95, 0x81, 0x11, 0xB6, 0x11, 0x96, 0x03, 0x11, 0xB6, 0x82, 0x19, 0xB6, 0x11, 0xB6, 0x11, 0xD6, 0x01, 0x11, 0xB6, 0x84, 0x19, 0xB6, 0x11, 0xB6, 0x11, 0xB5, 0x11, 0xB6, 0x11, 0xB5, 0x01, 0x19, 0xD6, 0x81, 0x19, 0xB6, 0x19, 0xD6, 0x01, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x02, 0x1A, 0x17, 0x83, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x54, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x83, 0x11, 0x33, 0x11, 0x74, 0x19, 0x95, 0x19, 0xF6, 0x01, 0x19, 0xD7, 0x8A, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x04, 0x29, 0x30, 0x87, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0xF6, 0x11, 0x74, 0x11, 0x53, 0x01, 0x19, 0x32, 0x80, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x12, 0x83, 0x19, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xD7, 0x01, 0x11, 0xF8, 0x88, 0x12, 0x18, 0x11, 0xF8, 0x11, + 0xD7, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x19, 0x33, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x51, 0x85, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x01, 0x22, 0x17, 0x85, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x05, 0x21, 0x10, 0x02, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, + 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0A, 0x21, 0x31, 0x80, 0x19, 0x31, 0x03, 0x21, 0x31, 0x80, 0x19, 0x31, 0x04, 0x21, 0x31, 0x01, 0x19, 0x31, 0x83, 0x19, 0x30, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x11, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x11, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x19, 0x10, 0x19, 0x11, 0x02, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x11, 0x83, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x02, 0x21, 0x31, 0x83, 0x21, 0x10, 0x21, 0x11, 0x19, 0x10, 0x21, 0x11, 0x04, 0x21, 0x10, 0x83, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x01, 0x19, 0x32, 0x82, 0x19, 0x33, 0x19, 0x32, 0x19, 0x53, 0x01, 0x19, 0x33, 0x88, 0x19, 0x13, 0x19, 0x33, 0x11, 0x13, 0x11, 0x33, 0x11, 0x13, 0x11, 0x33, 0x19, 0x34, 0x11, 0x33, 0x11, 0x13, 0x01, 0x11, 0x33, 0x80, 0x11, 0x34, 0x02, 0x11, 0x33, 0x01, 0x11, 0x34, 0x80, 0x11, 0x33, 0x01, 0x11, 0x34, 0x80, 0x11, 0x13, 0x02, 0x11, 0x34, 0x80, 0x11, 0x33, 0x01, 0x11, 0x34, 0x80, 0x11, 0x33, 0x01, 0x11, 0x34, 0x02, + 0x11, 0x33, 0x80, 0x11, 0x53, 0x01, 0x11, 0x33, 0x04, 0x11, 0x34, 0x85, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x12, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x89, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x19, 0xF7, 0x1A, 0x18, 0x11, 0xF7, 0x19, 0xD6, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x29, 0x50, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8C, 0x19, 0x31, 0x11, 0x32, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x13, 0x19, 0x12, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x87, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x01, 0x19, 0x32, 0x81, 0x11, 0x33, 0x19, 0x95, 0x01, 0x19, 0xD6, 0x84, 0x19, 0xB5, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, + 0x02, 0x29, 0x2F, 0x84, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x06, 0x29, 0x10, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x21, 0x11, 0x21, 0x32, 0x19, 0x12, 0x10, 0xF2, 0x19, 0x74, 0x29, 0xF6, 0x21, 0xD6, 0x21, 0xB5, 0x01, 0x11, 0x12, 0x83, 0x19, 0x52, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x50, 0x21, 0x30, 0x21, 0x51, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x11, 0x85, 0x19, 0x33, 0x11, 0x54, 0x09, 0x54, 0x09, 0x76, 0x11, 0xD7, 0x11, 0xD8, 0x01, 0x11, 0xF8, 0x82, 0x11, 0xB6, 0x09, 0x54, 0x11, 0x53, 0x01, 0x19, 0x52, 0x81, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x89, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8E, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x19, 0x95, 0x21, 0xF7, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x54, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, + 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8A, 0x28, 0xEE, 0x28, 0xCE, 0x28, 0xCD, 0x28, 0xAD, 0x18, 0x4B, 0x49, 0xF2, 0x41, 0x90, 0x20, 0x8D, 0x20, 0xCE, 0x28, 0xEF, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x19, 0x96, 0x2A, 0x18, 0x2A, 0x17, 0x11, 0x74, 0x11, 0x13, 0x19, 0x12, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x88, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x07, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x21, 0xF7, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x30, 0x82, 0x21, 0x50, 0x19, 0x51, 0x19, 0x31, 0x01, 0x11, 0x32, 0x88, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xF6, 0x19, 0x95, 0x08, 0xF2, 0x11, 0x12, 0x21, 0x52, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, + 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x88, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x11, 0x01, 0x19, 0x31, 0x86, 0x11, 0x32, 0x19, 0x94, 0x21, 0xF5, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x8C, 0x21, 0x11, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x11, 0x12, 0x11, 0x53, 0x19, 0xF7, 0x1A, 0x38, 0x11, 0xF8, 0x11, 0xB6, 0x09, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x06, 0x29, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x04, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x04, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8D, 0x21, 0x30, 0x21, 0x10, 0x19, 0x11, 0x19, 0x31, + 0x11, 0x11, 0x11, 0x33, 0x11, 0x95, 0x11, 0xD6, 0x22, 0x38, 0x22, 0x59, 0x22, 0x79, 0x22, 0x59, 0x2A, 0x5A, 0x2A, 0x7A, 0x01, 0x2A, 0x5A, 0x84, 0x2A, 0x7A, 0x2A, 0x5A, 0x22, 0x5A, 0x2A, 0x7A, 0x22, 0x79, 0x01, 0x22, 0x59, 0x80, 0x2A, 0x79, 0x01, 0x22, 0x59, 0x85, 0x2A, 0x59, 0x2A, 0x79, 0x2A, 0x59, 0x2A, 0x39, 0x22, 0x59, 0x2A, 0x59, 0x02, 0x22, 0x59, 0x84, 0x22, 0x7A, 0x22, 0x59, 0x2A, 0x7A, 0x22, 0x59, 0x22, 0x39, 0x02, 0x22, 0x59, 0x01, 0x22, 0x7A, 0x80, 0x2A, 0x7A, 0x02, 0x22, 0x59, 0x82, 0x22, 0x39, 0x22, 0x59, 0x22, 0x39, 0x02, 0x2A, 0x59, 0x02, 0x22, 0x59, 0x01, 0x22, 0x79, 0x05, 0x22, 0x59, 0x80, 0x22, 0x39, 0x01, 0x22, 0x59, 0x01, 0x22, 0x58, 0x83, 0x22, 0x59, 0x22, 0x38, 0x22, 0x59, 0x1A, 0x18, 0x01, 0x22, 0x38, 0x89, 0x1A, 0x18, 0x19, 0xF8, 0x1A, 0x18, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x54, 0x11, 0x53, 0x04, 0x11, 0x32, 0x84, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x19, 0xD7, 0x01, 0x21, 0xF7, 0x85, 0x19, 0x95, 0x11, 0x54, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x4F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x21, 0x31, 0x80, 0x21, 0x51, 0x03, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x86, 0x22, 0x37, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, + 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x86, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x11, 0xB7, 0x11, 0xF8, 0x12, 0x18, 0x01, 0x11, 0xF8, 0x88, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x34, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8F, 0x21, 0x51, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x22, 0x17, 0x1A, 0x17, 0x19, 0xF6, 0x19, 0xB5, 0x09, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x10, 0x06, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x04, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x09, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x87, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, + 0x21, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x03, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x06, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x31, 0x06, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x08, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x11, 0x80, 0x19, 0x11, 0x01, 0x21, 0x32, 0x01, 0x19, 0x12, 0x83, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x01, 0x19, 0x32, 0x80, 0x11, 0x12, 0x02, 0x19, 0x12, 0x01, 0x11, 0x12, 0x81, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x12, 0x80, 0x11, 0x12, 0x02, 0x19, 0x12, 0x02, 0x11, 0x12, 0x80, 0x19, 0x32, 0x01, 0x19, 0x12, 0x83, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x19, 0x52, 0x01, 0x11, 0x12, 0x85, + 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x19, 0xF7, 0x1A, 0x38, 0x11, 0xF8, 0x11, 0xB6, 0x11, 0x33, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x21, 0xD6, 0x01, 0x19, 0xF7, 0x84, 0x19, 0x95, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x8A, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, + 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x21, 0x32, 0x19, 0x12, 0x10, 0xF2, 0x19, 0x74, 0x21, 0xD6, 0x21, 0xB6, 0x19, 0x95, 0x10, 0xF2, 0x11, 0x12, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x19, 0x10, 0x19, 0x11, 0x01, 0x19, 0x32, 0x83, 0x19, 0x54, 0x11, 0x75, 0x11, 0x76, 0x11, 0x96, 0x01, 0x11, 0xF8, 0x02, 0x11, 0xD7, 0x82, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x83, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x51, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x19, 0x74, 0x21, 0xF6, 0x21, 0xF7, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0x75, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x28, 0xCD, 0x01, 0x28, 0xAD, 0x86, 0x20, 0x6C, + 0x39, 0x2E, 0x9C, 0x3A, 0xDE, 0x3F, 0xBD, 0x5E, 0x10, 0x2B, 0x28, 0xCE, 0x01, 0x29, 0x0F, 0x80, 0x28, 0xEF, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x8D, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x19, 0x12, 0x11, 0x54, 0x11, 0x75, 0x21, 0xF8, 0x22, 0x18, 0x19, 0x75, 0x11, 0x13, 0x19, 0x12, 0x19, 0x32, 0x19, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x0A, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x8B, 0x19, 0x10, 0x19, 0x31, 0x11, 0x12, 0x11, 0x13, 0x21, 0xB6, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xF6, 0x19, 0x95, 0x08, 0xF2, 0x11, 0x12, 0x19, 0x52, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, + 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x9C, 0x21, 0x51, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x19, 0x94, 0x21, 0xF5, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x19, 0x10, 0x21, 0x11, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x19, 0xF7, 0x1A, 0x38, 0x12, 0x18, 0x11, 0xB6, 0x11, 0x33, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x30, 0x04, 0x21, 0x10, 0x89, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x04, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x08, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x82, 0x11, 0x32, 0x11, 0x54, 0x11, 0x95, 0x02, 0x19, 0xD7, 0x02, 0x19, 0xD8, 0x01, 0x22, 0x19, 0x85, 0x19, 0xF8, 0x21, 0xF8, 0x1A, 0x18, 0x19, 0xF8, 0x22, 0x18, 0x1A, 0x18, 0x04, 0x19, 0xF8, 0x80, 0x19, 0xF7, 0x07, 0x19, 0xF8, 0x81, 0x1A, 0x18, 0x19, 0xF8, + 0x01, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x01, 0x19, 0xD8, 0x01, 0x19, 0xF8, 0x81, 0x1A, 0x18, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x84, 0x19, 0xD7, 0x19, 0xF8, 0x21, 0xF8, 0x19, 0xF8, 0x22, 0x18, 0x05, 0x19, 0xF8, 0x01, 0x19, 0xD8, 0x80, 0x22, 0x18, 0x01, 0x19, 0xF7, 0x80, 0x1A, 0x17, 0x04, 0x19, 0xF7, 0x80, 0x19, 0xD7, 0x02, 0x19, 0xF7, 0x80, 0x1A, 0x18, 0x01, 0x19, 0xF7, 0x01, 0x19, 0xD6, 0x84, 0x19, 0x95, 0x11, 0x74, 0x11, 0x53, 0x19, 0x53, 0x11, 0x33, 0x03, 0x11, 0x32, 0x83, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x01, 0x19, 0xD7, 0x82, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x01, 0x19, 0x32, 0x81, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x31, 0x81, 0x21, 0x51, 0x19, 0x31, 0x02, 0x21, 0x51, 0x81, 0x21, 0x31, 0x21, 0x51, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x89, 0x12, 0x18, 0x11, 0xF7, 0x11, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x21, 0x11, 0x01, 0x19, 0x11, 0x84, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x01, 0x11, 0xF8, 0x89, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0x96, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x89, 0x21, 0x30, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, + 0x11, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x22, 0x17, 0x01, 0x19, 0xF7, 0x85, 0x19, 0xB5, 0x09, 0x33, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x06, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x06, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x06, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, + 0x10, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x09, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x20, 0xF0, 0x05, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x04, 0x21, 0x11, 0x04, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x19, 0x32, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x21, 0x32, 0x02, 0x19, 0x11, 0x81, 0x19, 0x32, 0x19, 0x31, 0x03, 0x19, 0x11, 0x84, 0x19, 0x31, 0x21, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x02, 0x19, 0x11, 0x01, 0x21, 0x11, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, + 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x19, 0xF7, 0x1A, 0x39, 0x1A, 0x18, 0x19, 0xD6, 0x09, 0x33, 0x19, 0x32, 0x21, 0x51, 0x01, 0x21, 0x30, 0x83, 0x29, 0x50, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x8F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x33, 0x19, 0x12, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x19, 0x95, 0x22, 0x17, 0x19, 0xF6, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x85, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x12, 0x10, 0xF2, 0x19, 0x75, 0x21, 0xD6, 0x21, 0xB6, 0x19, 0xB5, 0x01, + 0x11, 0x12, 0x80, 0x21, 0x51, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x11, 0x87, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xD7, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xB7, 0x01, 0x09, 0x97, 0x84, 0x11, 0xF8, 0x11, 0xD7, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x01, 0x19, 0x52, 0x84, 0x19, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8A, 0x11, 0x12, 0x11, 0x32, 0x19, 0x74, 0x21, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x02, 0x21, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x8C, 0x29, 0x0E, 0x28, 0xCD, 0x30, 0xCD, 0x28, 0x8C, 0x20, 0x2A, 0x6A, 0x32, 0xC5, 0x1D, 0xCD, 0x9F, 0xD5, 0xDF, 0x9C, 0x5A, 0x10, 0x2B, 0x20, 0xCE, 0x28, 0xEE, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x31, 0x19, 0x32, 0x11, 0x54, 0x19, 0xD7, 0x22, 0x18, 0x21, 0xD7, 0x11, 0x14, 0x10, 0xF2, 0x19, 0x32, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, + 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x0A, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x87, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x19, 0x95, 0x01, 0x21, 0xF7, 0x84, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x19, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x50, 0x19, 0x30, 0x19, 0x51, 0x01, 0x11, 0x32, 0x87, 0x21, 0xD6, 0x21, 0xF6, 0x19, 0xD6, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x11, 0x21, 0x52, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x08, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x11, 0x31, 0x85, 0x19, 0xB4, 0x21, 0xF5, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x95, 0x21, 0x11, 0x21, 0x10, 0x21, 0x11, 0x19, 0x31, 0x19, 0x32, 0x09, 0x33, 0x19, 0xF7, 0x1A, + 0x38, 0x12, 0x18, 0x11, 0x96, 0x11, 0x53, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x86, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x08, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x82, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x01, 0x11, 0x33, 0x83, 0x11, 0x34, 0x11, 0x54, 0x11, 0x55, 0x11, 0x34, 0x02, 0x11, 0x55, 0x08, 0x11, 0x75, 0x83, 0x19, 0x95, 0x11, 0x55, 0x11, 0x75, 0x11, 0x55, 0x03, 0x11, 0x75, 0x80, 0x11, 0x55, 0x11, 0x11, 0x75, 0x80, 0x11, 0x55, 0x01, 0x11, 0x75, 0x80, 0x11, 0x55, 0x05, 0x11, 0x75, 0x80, 0x11, 0x55, 0x09, 0x11, 0x75, 0x87, 0x11, 0x95, 0x11, 0x75, 0x11, 0x95, 0x11, 0x75, 0x11, 0x74, 0x11, 0x75, 0x11, 0x74, 0x11, 0x54, 0x02, 0x11, 0x33, 0x8E, 0x11, 0x32, 0x19, 0x32, 0x11, 0x32, 0x11, 0x52, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x19, 0xF7, 0x19, 0xD7, 0x21, 0xF7, + 0x19, 0x96, 0x11, 0x54, 0x19, 0x32, 0x01, 0x19, 0x11, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x19, 0x52, 0x02, 0x19, 0x32, 0x02, 0x19, 0x31, 0x03, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x86, 0x09, 0xF8, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x11, 0x83, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x19, 0x32, 0x01, 0x11, 0x12, 0x8B, 0x11, 0x34, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xD8, 0x11, 0xF9, 0x12, 0x19, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0x96, 0x11, 0x75, 0x11, 0x34, 0x11, 0x12, 0x01, 0x19, 0x11, 0x82, 0x21, 0x30, 0x29, 0x50, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8D, 0x19, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x19, 0x94, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x17, 0x11, 0x95, 0x09, 0x33, 0x11, 0x33, 0x19, 0x53, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x80, 0x29, 0x10, 0x06, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, + 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x86, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0F, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0A, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x10, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x09, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x03, 0x21, 0x10, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x01, 0x19, 0x10, 0x81, 0x21, 0x31, 0x21, 0x11, 0x07, 0x21, 0x31, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x19, 0x31, 0x0E, 0x21, 0x31, 0x80, 0x19, 0x10, 0x01, 0x21, 0x31, 0x80, 0x21, 0x52, 0x02, 0x21, 0x31, 0x01, 0x21, 0x10, 0x03, + 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x09, 0x34, 0x11, 0xD7, 0x1A, 0x18, 0x11, 0xF8, 0x11, 0xD6, 0x09, 0x32, 0x11, 0x11, 0x19, 0x51, 0x21, 0x51, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x19, 0x31, 0x11, 0x32, 0x19, 0x74, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x82, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x19, 0x12, 0x11, 0x33, 0x19, 0x75, 0x21, 0xF6, 0x19, 0xF6, 0x19, 0xD6, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, + 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x10, 0xF2, 0x19, 0x95, 0x01, 0x21, 0xF6, 0x87, 0x19, 0x95, 0x09, 0x12, 0x10, 0xF1, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x50, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x18, 0xF0, 0x10, 0xF1, 0x11, 0x33, 0x11, 0x75, 0x19, 0xF7, 0x1A, 0x18, 0x11, 0xD8, 0x09, 0xB7, 0x03, 0x09, 0x97, 0x89, 0x11, 0xB7, 0x11, 0xF8, 0x1A, 0x39, 0x11, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x19, 0x52, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x90, 0x19, 0x30, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x74, 0x21, 0xD6, 0x2A, 0x38, 0x22, 0x17, 0x19, 0xD7, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8B, 0x28, 0xCD, 0x30, 0xCD, 0x28, 0x4B, 0x38, 0xAC, 0xA3, 0xD8, 0xDD, 0x7E, 0xC4, 0xDC, 0xBC, 0xDC, 0xCD, 0x9F, 0x49, 0x90, 0x18, 0x4C, 0x20, 0xCE, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, + 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0x95, 0x01, 0x22, 0x18, 0x84, 0x19, 0x96, 0x08, 0xF3, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x89, 0x19, 0x12, 0x11, 0x32, 0x21, 0xB5, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x30, 0x8B, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x31, 0x11, 0x11, 0x09, 0x32, 0x21, 0xD6, 0x22, 0x17, 0x21, 0xF6, 0x19, 0x94, 0x09, 0x12, 0x11, 0x31, 0x21, 0x51, 0x03, 0x21, 0x30, 0x06, 0x21, 0x10, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, + 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x87, 0x11, 0x32, 0x19, 0xB4, 0x21, 0xF5, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x89, 0x19, 0x11, 0x19, 0x32, 0x11, 0x54, 0x1A, 0x17, 0x1A, 0x38, 0x12, 0x18, 0x11, 0xB6, 0x11, 0x33, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x03, 0x29, 0x30, 0x80, 0x21, 0x10, 0x04, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x02, 0x19, 0x12, 0x80, 0x11, 0x12, 0x02, 0x19, 0x12, 0x02, 0x11, 0x12, 0x85, 0x19, 0x33, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x04, 0x11, 0x12, 0x01, 0x11, 0x13, 0x03, 0x11, + 0x33, 0x81, 0x11, 0x13, 0x11, 0x12, 0x05, 0x11, 0x33, 0x80, 0x11, 0x12, 0x01, 0x11, 0x13, 0x02, 0x11, 0x33, 0x01, 0x11, 0x13, 0x02, 0x11, 0x12, 0x01, 0x11, 0x33, 0x81, 0x11, 0x13, 0x11, 0x12, 0x01, 0x11, 0x33, 0x05, 0x11, 0x12, 0x03, 0x11, 0x32, 0x03, 0x11, 0x12, 0x01, 0x11, 0x33, 0x01, 0x11, 0x53, 0x81, 0x11, 0x33, 0x11, 0x32, 0x01, 0x11, 0x12, 0x83, 0x11, 0x11, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x01, 0x11, 0x32, 0x01, 0x11, 0x53, 0x81, 0x11, 0x54, 0x11, 0x95, 0x01, 0x19, 0xF7, 0x83, 0x22, 0x17, 0x19, 0xB6, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x4F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x02, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x11, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x09, 0xF9, 0x09, 0xF8, 0x01, 0x11, 0xD8, 0x84, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x03, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x11, 0x12, 0x8F, 0x11, 0x54, 0x11, 0xB6, 0x11, 0xB7, 0x1A, 0x19, 0x11, 0xF9, 0x12, 0x19, 0x11, 0xF9, 0x09, 0xD7, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x88, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, + 0x11, 0x53, 0x11, 0x74, 0x19, 0xD5, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x87, 0x11, 0x95, 0x09, 0x33, 0x11, 0x33, 0x19, 0x52, 0x21, 0x32, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x07, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x0B, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, + 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x11, 0x21, 0x30, 0x02, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x50, 0x21, 0x30, + 0x19, 0x31, 0x11, 0x12, 0x11, 0x13, 0x09, 0x34, 0x19, 0xF8, 0x01, 0x12, 0x18, 0x84, 0x11, 0xD7, 0x09, 0x33, 0x11, 0x11, 0x19, 0x51, 0x21, 0x51, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x8A, 0x21, 0x30, 0x21, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x12, 0x11, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x19, 0x12, 0x11, 0x33, 0x19, 0x74, 0x19, 0xB6, 0x19, 0xD6, 0x21, 0xF6, 0x11, 0x54, 0x19, 0x52, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x08, 0xF2, 0x19, 0x95, 0x01, 0x21, 0xD6, 0x83, 0x19, 0xB5, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x11, 0x10, 0xF1, 0x09, 0x33, 0x19, + 0xD6, 0x19, 0xF7, 0x11, 0xF8, 0x09, 0xB7, 0x03, 0x09, 0x76, 0x01, 0x09, 0x96, 0x89, 0x11, 0xD7, 0x12, 0x18, 0x19, 0xF8, 0x11, 0x95, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x51, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x11, 0x32, 0x11, 0x54, 0x21, 0xD6, 0x01, 0x22, 0x17, 0x83, 0x21, 0xF7, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x83, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x0E, 0x28, 0xCD, 0x28, 0xAC, 0x28, 0x4A, 0x49, 0x0D, 0xC4, 0xBB, 0xD5, 0x1D, 0x01, 0xC4, 0xBB, 0x84, 0xC4, 0xFD, 0xAC, 0x7B, 0x28, 0x8C, 0x20, 0x8D, 0x20, 0xCE, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x8A, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0xB6, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0x96, 0x09, 0x13, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x08, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x89, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, + 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x22, 0x17, 0x01, 0x19, 0xD6, 0x85, 0x11, 0x54, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x8A, 0x21, 0x30, 0x21, 0x31, 0x11, 0x31, 0x11, 0x32, 0x19, 0xD5, 0x22, 0x17, 0x21, 0xF6, 0x19, 0x94, 0x09, 0x12, 0x19, 0x32, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x85, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x87, 0x11, 0x31, 0x19, 0xB4, 0x21, 0xF5, 0x19, 0xD5, 0x19, 0xB4, 0x11, 0x32, 0x19, 0x32, 0x21, 0x52, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x89, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x1A, 0x17, 0x1A, 0x18, 0x11, 0xF8, 0x11, 0xB6, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x51, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, + 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x21, 0x11, 0x01, 0x19, 0x11, 0x01, 0x21, 0x11, 0x09, 0x19, 0x11, 0x80, 0x19, 0x31, 0x04, 0x19, 0x11, 0x80, 0x19, 0x32, 0x01, 0x19, 0x11, 0x84, 0x19, 0x32, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x04, 0x19, 0x11, 0x80, 0x19, 0x32, 0x07, 0x19, 0x11, 0x81, 0x19, 0x12, 0x19, 0x32, 0x15, 0x19, 0x11, 0x81, 0x19, 0x12, 0x11, 0x11, 0x01, 0x19, 0x12, 0x81, 0x19, 0x32, 0x11, 0x11, 0x03, 0x19, 0x11, 0x01, 0x19, 0x32, 0x84, 0x11, 0x32, 0x11, 0x53, 0x09, 0x53, 0x11, 0x74, 0x11, 0xB5, 0x02, 0x19, 0xF7, 0x85, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, + 0x21, 0x30, 0x83, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x01, 0x11, 0x54, 0x02, 0x11, 0x74, 0x80, 0x11, 0x33, 0x01, 0x11, 0x53, 0x82, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x09, 0xF9, 0x01, 0x11, 0xD8, 0x84, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x02, 0x21, 0x31, 0x86, 0x21, 0x32, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x02, 0x11, 0xF9, 0x88, 0x11, 0xD8, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x53, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x8F, 0x21, 0x30, 0x21, 0x51, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x94, 0x19, 0xB5, 0x19, 0xF6, 0x1A, 0x17, 0x22, 0x17, 0x11, 0xB5, 0x09, 0x34, 0x11, 0x33, 0x19, 0x12, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x05, 0x21, 0x10, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x08, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, + 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x05, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x20, 0xF0, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, + 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0B, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x50, 0x0D, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x8C, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x50, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, 0x13, 0x09, 0x54, 0x1A, 0x18, 0x01, 0x12, 0x19, 0x85, 0x1A, 0x18, 0x09, 0x74, 0x09, 0x12, 0x19, 0x31, 0x19, 0x30, 0x21, 0x50, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x8D, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x33, 0x11, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x8B, 0x19, 0x11, 0x19, 0x32, 0x19, 0x33, 0x19, 0x95, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x32, 0x19, 0x51, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, + 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x01, 0x19, 0xD6, 0x86, 0x19, 0xB5, 0x11, 0x33, 0x19, 0x32, 0x19, 0x51, 0x19, 0x10, 0x21, 0x30, 0x29, 0x50, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x51, 0x86, 0x19, 0x31, 0x11, 0x12, 0x11, 0x95, 0x1A, 0x17, 0x11, 0xD7, 0x11, 0xB7, 0x09, 0x97, 0x05, 0x09, 0x76, 0x87, 0x11, 0xB7, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x34, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x50, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x81, 0x21, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x88, 0x31, 0x30, 0x29, 0x0F, 0x28, + 0xCE, 0x28, 0xAD, 0x28, 0x8C, 0x28, 0x4A, 0x51, 0x2D, 0xD5, 0x3D, 0xD4, 0xDB, 0x01, 0xCC, 0xBB, 0x87, 0xC4, 0x7A, 0xD5, 0x3E, 0x6A, 0x73, 0x20, 0x8C, 0x20, 0x8D, 0x20, 0xCE, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x8F, 0x29, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0xB6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x09, 0x12, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x29, 0x30, 0x01, 0x29, 0x10, 0x08, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x21, 0xB5, 0x22, 0x17, 0x19, 0xF6, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x11, 0x31, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xF6, 0x19, 0x95, 0x09, 0x12, 0x11, 0x31, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, + 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x84, 0x11, 0x32, 0x19, 0xB4, 0x21, 0xD5, 0x19, 0xD5, 0x19, 0xB4, 0x01, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x8A, 0x21, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x1A, 0x17, 0x1A, 0x18, 0x11, 0xF8, 0x11, 0x95, 0x11, 0x32, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x51, 0x04, 0x21, 0x31, 0x01, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x51, 0x03, 0x21, 0x31, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x06, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, + 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x21, 0x10, 0x04, 0x21, 0x31, 0x80, 0x21, 0x11, 0x08, 0x21, 0x31, 0x83, 0x21, 0x11, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x11, 0x84, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x19, 0x31, 0x01, 0x21, 0x31, 0x85, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x11, 0x02, 0x21, 0x31, 0x81, 0x19, 0x31, 0x21, 0x31, 0x01, 0x19, 0x31, 0x87, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x19, 0x10, 0x21, 0x11, 0x21, 0x31, 0x19, 0x10, 0x01, 0x21, 0x31, 0x83, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x04, 0x19, 0x31, 0x80, 0x19, 0x52, 0x02, 0x19, 0x32, 0x01, 0x11, 0x33, 0x8A, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x30, 0x19, 0x52, 0x19, 0x53, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD6, 0x19, 0xF7, 0x1A, 0x17, 0x02, 0x21, 0xF7, 0x86, 0x21, 0xF6, 0x21, 0xD6, 0x21, 0xB5, 0x19, 0x94, 0x19, 0x52, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x4F, 0x81, 0x09, 0xD9, 0x09, 0xD8, 0x02, 0x11, 0xD8, 0x84, 0x11, + 0xB7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x53, 0x19, 0x32, 0x01, 0x19, 0x11, 0x89, 0x21, 0x31, 0x21, 0x51, 0x21, 0x52, 0x19, 0x32, 0x11, 0x11, 0x11, 0x12, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xF8, 0x02, 0x12, 0x19, 0x85, 0x11, 0xF8, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x29, 0x50, 0x8E, 0x21, 0x51, 0x21, 0x30, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x94, 0x11, 0xB5, 0x19, 0xF6, 0x22, 0x37, 0x22, 0x17, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x84, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0D, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0F, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, + 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x06, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, + 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x87, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x8B, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x71, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x09, 0x55, 0x12, 0x18, 0x01, 0x12, 0x19, 0x86, 0x1A, 0x39, 0x11, 0x95, 0x09, 0x32, 0x11, 0x31, 0x19, 0x31, 0x21, 0x51, 0x21, 0x50, 0x01, 0x21, 0x30, 0x89, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x74, 0x01, 0x19, 0xD6, 0x81, 0x21, 0xF7, 0x19, 0xD6, 0x01, 0x11, 0x12, 0x81, 0x19, 0x31, 0x21, 0x31, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x20, 0xEF, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x8C, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x33, 0x19, 0x74, 0x21, 0xF7, 0x19, 0xF7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x13, 0x19, 0x52, 0x21, 0x51, 0x21, 0x31, 0x02, 0x21, 0x30, 0x83, 0x29, 0x50, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, + 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x21, 0xF6, 0x19, 0xD6, 0x19, 0xD5, 0x11, 0x32, 0x11, 0x12, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x51, 0x19, 0x32, 0x11, 0x33, 0x11, 0xB5, 0x01, 0x11, 0xD7, 0x83, 0x11, 0xB7, 0x09, 0x76, 0x09, 0x55, 0x09, 0x56, 0x02, 0x09, 0x55, 0x8B, 0x09, 0x76, 0x09, 0x97, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0xB7, 0x09, 0x54, 0x19, 0x53, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x89, 0x19, 0x32, 0x11, 0x32, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x18, 0x22, 0x17, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x28, 0xCE, 0x28, 0xAD, 0x28, 0xAC, 0x20, 0x09, 0x61, 0xF0, 0xCC, 0xDB, 0x01, 0xD4, 0xDB, 0x87, 0xCC, + 0xBA, 0xD4, 0xDB, 0xD4, 0xFC, 0xB4, 0x3A, 0x30, 0xAC, 0x20, 0x8D, 0x20, 0xAD, 0x20, 0xEF, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x89, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0xB6, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x33, 0x01, 0x19, 0x31, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x29, 0x50, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x19, 0x31, 0x88, 0x11, 0x32, 0x19, 0xB5, 0x21, 0xF7, 0x19, 0xF6, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x19, 0x30, 0x11, 0x31, 0x11, 0x33, 0x19, 0xB5, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x31, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, + 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x87, 0x11, 0x32, 0x19, 0xB4, 0x21, 0xF5, 0x19, 0xD5, 0x19, 0xB4, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x03, 0x21, 0x31, 0x89, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xF7, 0x1A, 0x18, 0x11, 0xF7, 0x11, 0xB6, 0x09, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x83, 0x29, 0x71, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x19, 0x32, 0x01, 0x21, 0x73, 0x81, 0x21, 0x52, 0x19, 0x32, 0x01, 0x19, 0x31, 0x02, 0x21, 0x31, 0x03, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, + 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x31, 0x07, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x08, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x19, 0x10, 0x21, 0x31, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x02, 0x19, 0x31, 0x02, 0x19, 0x52, 0x8D, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x32, 0x21, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x8A, 0x19, 0x30, 0x21, 0x30, 0x19, 0x11, 0x11, 0x32, 0x11, 0x74, 0x11, 0x95, 0x19, 0xD7, 0x19, 0xF7, 0x1A, 0x17, 0x1A, 0x18, 0x19, 0xF7, 0x01, 0x22, 0x18, 0x88, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xD6, 0x21, 0xD5, 0x19, 0x73, 0x19, 0x52, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x50, 0x80, 0x21, 0x70, 0x01, 0x09, 0xB7, 0x80, 0x09, 0xB8, 0x01, 0x11, 0xF8, 0x85, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x74, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x11, 0x89, 0x21, 0x31, 0x21, 0x52, 0x21, + 0x51, 0x19, 0x11, 0x11, 0x31, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x09, 0xB7, 0x11, 0xF8, 0x01, 0x12, 0x19, 0x87, 0x12, 0x18, 0x09, 0xD7, 0x11, 0xD7, 0x11, 0x75, 0x11, 0x53, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x8D, 0x19, 0x10, 0x19, 0x31, 0x11, 0x52, 0x11, 0x32, 0x11, 0x74, 0x11, 0xB5, 0x22, 0x17, 0x22, 0x38, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x21, 0x31, 0x02, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x86, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x03, 0x21, 0x10, 0x03, 0x29, 0x10, 0x06, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, + 0x21, 0x0F, 0x08, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x04, 0x21, 0x10, 0x02, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x09, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x07, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x08, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x88, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, + 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x0A, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x91, 0x19, 0x0F, 0x18, 0xF0, 0x11, 0x11, 0x11, 0x33, 0x11, 0x34, 0x09, 0x55, 0x11, 0xF8, 0x11, 0xF9, 0x12, 0x19, 0x11, 0xF8, 0x11, 0xB6, 0x09, 0x33, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x83, 0x19, 0x31, 0x19, 0x32, 0x11, 0x54, 0x21, 0xF6, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xB5, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x8D, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x74, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x21, 0x51, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, + 0x21, 0x30, 0x8D, 0x21, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x12, 0x21, 0xD6, 0x21, 0xF6, 0x19, 0xD6, 0x19, 0xD5, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x88, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x09, 0x12, 0x11, 0xB5, 0x11, 0xF7, 0x11, 0xF8, 0x09, 0x97, 0x02, 0x09, 0x55, 0x80, 0x09, 0x75, 0x01, 0x09, 0x34, 0x8D, 0x09, 0x55, 0x11, 0x97, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x55, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x31, 0x8C, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xD7, 0x19, 0x96, 0x11, 0x54, 0x10, 0xF2, 0x18, 0xF1, 0x19, 0x11, 0x21, 0x11, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x86, 0x29, 0x0F, 0x28, 0xCE, 0x20, 0x8D, 0x28, 0x8C, 0x30, 0x6B, 0x7A, 0x93, 0xE5, 0x7E, 0x01, 0xD4, 0xDB, 0x88, 0xD4, 0x9A, 0xD4, 0xBA, 0xDD, 0x3C, 0xCC, 0xBB, 0x48, 0xED, 0x30, 0xAD, 0x20, 0xAD, 0x28, 0xEE, 0x29, 0x30, 0x01, 0x28, 0xEF, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x90, 0x21, 0x10, 0x29, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0xB6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, + 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x09, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x31, 0x86, 0x19, 0x32, 0x11, 0x32, 0x19, 0xB5, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB6, 0x09, 0x33, 0x01, 0x11, 0x32, 0x80, 0x19, 0x11, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x19, 0x10, 0x11, 0x11, 0x11, 0x33, 0x19, 0xB5, 0x22, 0x17, 0x19, 0xF7, 0x19, 0x95, 0x09, 0x12, 0x11, 0x32, 0x19, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x19, 0x31, 0x86, 0x11, 0x32, 0x19, + 0x94, 0x21, 0xD5, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x8B, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x54, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x95, 0x11, 0x32, 0x11, 0x31, 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x21, 0x71, 0x21, 0x51, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x32, 0x02, 0x19, 0x53, 0x85, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x19, 0x32, 0x19, 0x52, 0x19, 0x32, 0x02, 0x21, 0x31, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x05, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, + 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x11, 0x53, 0x8B, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF6, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x93, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x19, 0x53, 0x19, 0x95, 0x11, 0xB6, 0x11, 0xB7, 0x19, 0xF8, 0x1A, 0x18, 0x11, 0xB6, 0x11, 0x96, 0x11, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x94, 0x11, 0x52, 0x19, 0x31, 0x01, 0x19, 0x30, 0x85, 0x21, 0x50, 0x21, 0x70, 0x21, 0x50, 0x09, 0x76, 0x09, 0x96, 0x11, 0xB7, 0x01, 0x11, 0xD8, 0x88, 0x11, 0xF8, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x02, 0x21, 0x31, 0x85, 0x19, 0x52, 0x11, 0x52, 0x11, 0x73, 0x11, 0x74, 0x11, 0x96, 0x09, 0xB7, 0x02, 0x11, 0xF8, 0x8C, 0x12, 0x18, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x52, 0x11, 0x53, 0x11, 0x74, 0x11, + 0xB5, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x54, 0x11, 0x12, 0x19, 0x12, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x87, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x06, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x03, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x0A, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x09, 0x21, + 0x10, 0x84, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x03, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, + 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x86, 0x19, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x09, 0x55, 0x09, 0x76, 0x09, 0xB8, 0x01, 0x09, 0xF9, 0x85, 0x11, 0xF9, 0x09, 0xB6, 0x09, 0x54, 0x11, 0x73, 0x11, 0x32, 0x19, 0x51, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x86, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x19, 0xF6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x01, 0x11, 0x12, 0x84, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8D, 0x19, 0x10, 0x19, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x22, 0x38, 0x22, 0x18, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x13, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x10, 0xF1, 0x11, 0x12, 0x21, 0xB5, 0x21, 0xD6, 0x01, 0x19, 0xD6, 0x88, 0x09, 0x33, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x0F, + 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x86, 0x19, 0x31, 0x19, 0x11, 0x08, 0xF2, 0x11, 0x95, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB7, 0x03, 0x09, 0x55, 0x01, 0x01, 0x14, 0x88, 0x09, 0x35, 0x11, 0x96, 0x11, 0xF8, 0x1A, 0x19, 0x19, 0xD7, 0x09, 0x54, 0x11, 0x12, 0x19, 0x31, 0x21, 0x11, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8F, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x19, 0x74, 0x21, 0xD6, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x18, 0xF1, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8F, 0x28, 0xEF, 0x28, 0xAD, 0x28, 0xAC, 0x20, 0x09, 0x8A, 0xD4, 0xDD, 0x1C, 0xD4, 0xDB, 0xDC, 0xDB, 0xDC, 0xBA, 0xD4, 0x99, 0xD4, 0xBA, 0xE5, 0x5D, 0xAB, 0xD8, 0x28, 0x2A, 0x28, 0x6C, 0x20, 0xAD, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x21, 0x31, 0x18, 0xF1, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xD7, 0x11, 0xD7, 0x19, 0xD6, 0x09, 0x12, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x07, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, + 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x8B, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x21, 0xF7, 0x01, 0x19, 0xD6, 0x83, 0x11, 0x54, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x19, 0x11, 0x11, 0x32, 0x09, 0x33, 0x19, 0xB6, 0x19, 0xF7, 0x01, 0x19, 0xD6, 0x82, 0x09, 0x12, 0x19, 0x32, 0x21, 0x52, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x84, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0xB5, 0x01, 0x19, 0xD5, 0x83, 0x19, 0x94, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x21, 0x11, 0x19, 0x11, 0x01, 0x19, 0x32, 0x85, 0x11, 0x53, 0x19, 0xF7, 0x1A, 0x38, 0x19, 0xF8, 0x11, 0x95, 0x09, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, + 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x31, 0x87, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x53, 0x19, 0x74, 0x19, 0x94, 0x11, 0x74, 0x02, 0x11, 0x54, 0x01, 0x11, 0x33, 0x82, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x88, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, + 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x19, 0x10, 0x01, 0x19, 0x11, 0x84, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x01, 0x21, 0xF7, 0x84, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x89, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x19, 0x95, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0x96, 0x09, 0x75, 0x01, 0x09, 0x55, 0x80, 0x09, 0x75, 0x01, 0x11, 0xB6, 0x83, 0x19, 0xD6, 0x11, 0xB5, 0x19, 0x94, 0x19, 0x53, 0x01, 0x19, 0x31, 0x02, 0x19, 0x30, 0x85, 0x21, 0x50, 0x11, 0x75, 0x09, 0x75, 0x09, 0x96, 0x11, 0xB7, 0x11, 0xD8, 0x02, 0x11, 0xF8, 0x86, 0x09, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x86, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x09, 0x75, 0x11, 0xB7, 0x09, 0xD8, 0x12, 0x19, 0x01, 0x11, 0xF8, 0x88, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x18, 0xF0, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x19, 0xD7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, + 0x21, 0x31, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x04, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x06, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, + 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x8B, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x87, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x02, 0x29, 0x30, 0x08, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, + 0x01, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x95, 0x11, 0x97, 0x01, 0x09, 0xB8, 0x8B, 0x09, 0xD9, 0x0A, 0x1A, 0x12, 0x19, 0x09, 0xD7, 0x09, 0x75, 0x11, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x51, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8C, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x95, 0x11, 0x13, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8C, 0x19, 0x10, 0x19, 0x11, 0x11, 0x32, 0x19, 0x95, 0x22, 0x18, 0x22, 0x38, 0x19, 0xF7, 0x11, 0x96, 0x11, 0x34, 0x11, 0x12, 0x19, 0x12, 0x21, 0x31, 0x21, 0x11, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x88, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x85, 0x21, 0x31, 0x21, 0x52, 0x10, 0xF1, 0x10, 0xF2, 0x21, 0xB6, 0x21, 0xD6, 0x01, 0x19, 0xD6, 0x82, 0x09, 0x33, 0x09, 0x12, 0x19, 0x72, 0x01, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x50, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x95, 0x19, 0xF7, 0x11, + 0xF7, 0x11, 0xD7, 0x09, 0x55, 0x09, 0x35, 0x09, 0x55, 0x02, 0x09, 0x34, 0x88, 0x01, 0x34, 0x11, 0xB6, 0x19, 0xF8, 0x11, 0xD8, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x12, 0x19, 0x31, 0x21, 0x11, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x91, 0x21, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0x74, 0x19, 0xD6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD7, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x21, 0x11, 0x29, 0x51, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x90, 0x28, 0xAD, 0x28, 0x8C, 0x30, 0x6B, 0x82, 0xB3, 0xE5, 0x7E, 0xD4, 0xBA, 0xDC, 0xDA, 0xD4, 0x99, 0xDC, 0x99, 0xDC, 0xBA, 0xD4, 0xBA, 0xDC, 0xFC, 0x82, 0xB3, 0x28, 0x4A, 0x20, 0x6C, 0x28, 0xEE, 0x28, 0xEF, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x8A, 0x21, 0x31, 0x19, 0x11, 0x18, 0xF2, 0x11, 0x33, 0x21, 0xF7, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0xB6, 0x00, 0xD1, 0x11, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x30, 0x87, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x0F, + 0x02, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x19, 0xB5, 0x22, 0x17, 0x01, 0x19, 0xD6, 0x83, 0x11, 0x54, 0x11, 0x32, 0x11, 0x11, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD7, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x95, 0x09, 0x13, 0x19, 0x53, 0x21, 0x52, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x85, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x06, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x85, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0xB5, 0x21, 0xF6, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x32, 0x02, 0x19, 0x31, 0x01, 0x21, 0x31, 0x84, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x19, 0xD7, 0x01, 0x1A, 0x18, 0x81, 0x11, 0x95, 0x09, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x06, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x11, 0x52, 0x11, 0x73, 0x11, 0x95, 0x01, + 0x19, 0xD6, 0x82, 0x19, 0xF6, 0x21, 0xF6, 0x21, 0xF7, 0x01, 0x21, 0xD6, 0x01, 0x19, 0x95, 0x82, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x8D, 0x21, 0x0F, 0x29, 0x10, 0x20, 0xEF, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x07, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x07, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x0A, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x81, 0x11, 0x54, 0x19, 0xB5, 0x01, 0x21, 0xF7, 0x81, 0x21, 0xF6, 0x19, 0x95, 0x01, 0x11, 0x12, 0x82, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, + 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0x95, 0x21, 0xD7, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xB7, 0x09, 0x75, 0x09, 0x55, 0x01, 0x09, 0x34, 0x88, 0x09, 0x55, 0x09, 0x75, 0x11, 0x96, 0x11, 0xB6, 0x19, 0xD6, 0x19, 0x95, 0x19, 0x74, 0x19, 0x52, 0x19, 0x31, 0x03, 0x19, 0x30, 0x84, 0x11, 0x34, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x01, 0x11, 0xF8, 0x87, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x74, 0x11, 0x53, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x31, 0x87, 0x21, 0x51, 0x19, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x09, 0x75, 0x11, 0xD7, 0x01, 0x11, 0xF8, 0x80, 0x11, 0xF9, 0x01, 0x11, 0xF8, 0x87, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x33, 0x11, 0x12, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x8F, 0x21, 0x50, 0x19, 0x30, 0x19, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x32, 0x11, 0x74, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x96, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x21, 0x31, 0x02, 0x21, 0x10, 0x06, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x05, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, + 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x07, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x07, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x06, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x06, 0x21, 0x10, 0x03, 0x29, 0x10, 0x04, 0x29, 0x30, 0x85, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, + 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x86, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0xB6, 0x19, 0xF8, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x80, 0x09, 0xFA, 0x01, 0x09, 0xF9, 0x85, 0x11, 0xF8, 0x19, 0xF7, 0x11, 0xB5, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x02, 0x21, + 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x83, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x86, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x90, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB6, 0x22, 0x38, 0x1A, 0x18, 0x19, 0xF7, 0x19, 0x96, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x05, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8C, 0x21, 0x52, 0x10, 0xF1, 0x08, 0xF2, 0x21, 0xB6, 0x21, 0xD7, 0x19, 0xD7, 0x19, 0xF7, 0x09, 0x53, 0x08, 0xF2, 0x19, 0x73, 0x21, 0x52, 0x21, 0x31, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x51, 0x88, 0x19, 0x11, 0x11, 0x12, 0x11, 0x95, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xD8, 0x09, 0x96, 0x01, 0x55, 0x01, 0x34, 0x01, 0x09, 0x34, 0x89, 0x01, 0x34, 0x09, 0x55, 0x11, 0xD7, 0x19, 0xF8, 0x1A, 0x18, 0x19, 0xD7, 0x11, 0x74, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, + 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x31, 0x89, 0x19, 0x12, 0x11, 0x32, 0x11, 0x54, 0x21, 0xD6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x11, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x08, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x90, 0x29, 0x2F, 0x28, 0xCD, 0x28, 0x6C, 0x20, 0x09, 0x72, 0x51, 0xDD, 0x1C, 0xDC, 0xDA, 0xDC, 0xB9, 0xD4, 0x98, 0xD4, 0x78, 0xDC, 0x99, 0xD4, 0x99, 0xDC, 0xBA, 0xE5, 0x5D, 0x72, 0x11, 0x28, 0x2A, 0x28, 0x8C, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8D, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x11, 0x34, 0x19, 0xD7, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0xD6, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x8A, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x30, 0x85, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0xB5, 0x22, 0x17, 0x01, 0x19, 0xD6, 0x83, 0x11, + 0x74, 0x09, 0x12, 0x19, 0x32, 0x19, 0x31, 0x03, 0x21, 0x30, 0x8B, 0x21, 0x11, 0x19, 0x32, 0x11, 0x33, 0x09, 0x54, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0xB6, 0x09, 0x33, 0x11, 0x33, 0x19, 0x72, 0x19, 0x51, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x84, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x32, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xD5, 0x19, 0xB4, 0x11, 0x32, 0x19, 0x31, 0x19, 0x51, 0x19, 0x31, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x95, 0x11, 0x32, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x01, 0x19, 0xD6, 0x82, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xF7, 0x01, 0x21, 0xF7, 0x85, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x33, 0x19, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x05, 0x21, 0x10, + 0x80, 0x21, 0x30, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x08, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0A, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0F, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x50, 0x0F, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x11, 0x32, 0x81, 0x09, 0x33, 0x19, 0xB5, 0x02, 0x21, 0xF7, 0x83, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x11, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x21, 0xB5, 0x19, 0xD7, 0x01, 0x11, 0xD7, 0x81, 0x09, 0x75, 0x09, 0x55, 0x01, 0x09, 0x54, 0x01, 0x09, 0x34, 0x82, 0x09, 0x55, 0x11, 0x76, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x82, 0x19, 0x94, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x10, 0x89, 0x19, 0x30, 0x21, 0x30, 0x11, 0x13, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xF8, 0x12, 0x19, 0x01, 0x11, 0xF8, 0x8F, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x74, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x30, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x11, 0x11, 0x11, + 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x96, 0x09, 0xB7, 0x01, 0x11, 0xF8, 0x8D, 0x11, 0xF9, 0x11, 0xD8, 0x19, 0xF9, 0x11, 0xB7, 0x09, 0x55, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x21, 0x52, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x19, 0x32, 0x11, 0x33, 0x19, 0x74, 0x19, 0xB6, 0x01, 0x22, 0x17, 0x84, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x04, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, + 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0C, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, + 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0x95, 0x19, 0xD7, 0x11, 0xF9, 0x12, 0x1A, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xDA, 0x09, 0xDA, 0x09, 0xFA, 0x01, 0x09, 0xF9, 0x85, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x74, 0x11, 0x53, 0x19, 0x32, 0x21, 0x51, 0x01, 0x21, 0x30, 0x91, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x50, 0x21, 0x51, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xF7, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x29, 0x31, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x89, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x19, 0x31, 0x19, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x01, 0x22, 0x18, 0x85, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, + 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x19, 0x11, 0x10, 0xF2, 0x11, 0x34, 0x21, 0xD7, 0x02, 0x19, 0xD7, 0x84, 0x09, 0x54, 0x00, 0xD1, 0x19, 0x53, 0x19, 0x52, 0x19, 0x31, 0x02, 0x21, 0x30, 0x87, 0x21, 0x10, 0x21, 0x30, 0x21, 0x50, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x74, 0x11, 0xB6, 0x03, 0x11, 0xD7, 0x8C, 0x01, 0x55, 0x09, 0x55, 0x09, 0x75, 0x09, 0x76, 0x11, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x54, 0x19, 0x32, 0x19, 0x31, 0x21, 0x11, 0x01, 0x21, 0x10, 0x07, 0x21, 0x30, 0x03, 0x21, 0x31, 0x83, 0x19, 0x12, 0x11, 0x32, 0x19, 0x54, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x87, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x29, 0x51, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x88, 0x29, 0x0F, 0x20, 0xAD, 0x20, 0x6B, 0x20, 0x0A, 0x51, 0x2D, 0xE5, 0x5D, 0xD4, 0xBA, 0xD4, 0x79, 0xD4, 0x78, 0x02, 0xDC, 0x78, 0x86, 0xDC, 0x99, 0xDC, 0xDA, 0xE5, 0x5D, 0x51, 0x0D, 0x28, 0x0A, 0x30, 0xCD, 0x28, 0xEE, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x11, 0x01, 0x19, 0x11, 0x8B, 0x11, 0x13, + 0x19, 0x75, 0x19, 0xD7, 0x11, 0xD8, 0x11, 0xD7, 0x19, 0xB7, 0x09, 0x12, 0x11, 0x12, 0x19, 0x52, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x19, 0x30, 0x8A, 0x19, 0x31, 0x11, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x03, 0x21, 0x30, 0x83, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x02, 0x19, 0xD7, 0x85, 0x19, 0xB6, 0x09, 0x34, 0x11, 0x53, 0x19, 0x72, 0x19, 0x31, 0x21, 0x51, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x07, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x19, + 0xB5, 0x01, 0x19, 0xD5, 0x85, 0x19, 0x94, 0x11, 0x32, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x51, 0x02, 0x19, 0x31, 0x88, 0x19, 0x32, 0x11, 0x54, 0x1A, 0x17, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x95, 0x11, 0x32, 0x19, 0x51, 0x21, 0x51, 0x08, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x11, 0x32, 0x19, 0xB5, 0x01, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x83, 0x11, 0xB6, 0x11, 0x96, 0x19, 0xB6, 0x19, 0xB7, 0x01, 0x19, 0xD7, 0x86, 0x19, 0xB7, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x28, 0x21, 0x30, 0x80, 0x21, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0F, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x03, 0x21, 0x10, 0x03, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x21, 0x31, 0x83, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x03, 0x19, 0xD6, 0x82, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, + 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x87, 0x19, 0x32, 0x11, 0x33, 0x21, 0xB6, 0x21, 0xF7, 0x19, 0xD7, 0x11, 0xB6, 0x09, 0x55, 0x09, 0x54, 0x01, 0x11, 0x95, 0x01, 0x09, 0x34, 0x87, 0x09, 0x55, 0x11, 0x96, 0x11, 0xB6, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0x95, 0x19, 0x32, 0x19, 0x11, 0x02, 0x19, 0x10, 0x87, 0x21, 0x30, 0x11, 0x12, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x09, 0x96, 0x11, 0xD7, 0x02, 0x11, 0xF8, 0x89, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x74, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x10, 0x21, 0x31, 0x19, 0x10, 0x01, 0x19, 0x31, 0x90, 0x11, 0x32, 0x11, 0x73, 0x11, 0x74, 0x11, 0xB6, 0x09, 0xB7, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0xD9, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x19, 0x73, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x30, 0x8E, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x09, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, + 0x01, 0x29, 0x30, 0x88, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x30, 0x85, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x06, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x87, 0x29, 0x10, 0x21, 0x0F, 0x29, + 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB7, 0x11, 0xD8, 0x11, 0xFA, 0x09, 0xFA, 0x02, 0x01, 0xB9, 0x8B, 0x01, 0xBA, 0x09, 0xDA, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0x95, 0x11, + 0x53, 0x19, 0x52, 0x21, 0x52, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x51, 0x83, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0xB5, 0x01, 0x19, 0xF7, 0x85, 0x19, 0xD6, 0x09, 0x54, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x29, 0x31, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x01, 0x22, 0x18, 0x82, 0x21, 0xF7, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x04, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x19, 0x31, 0x19, 0x32, 0x01, 0x10, 0xF2, 0x8C, 0x19, 0x75, 0x19, 0xB7, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0xB6, 0x00, 0xF2, 0x11, 0x53, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x95, 0x11, 0xB6, 0x02, 0x11, 0xF8, 0x80, 0x11, 0xD7, 0x01, 0x11, 0xB7, 0x8C, 0x11, 0xD7, 0x1A, 0x18, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, + 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x83, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x90, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0xAC, 0x20, 0x2A, 0x40, 0xCC, 0xCC, 0x9A, 0xDC, 0xDA, 0xDC, 0xB9, 0xDC, 0x78, 0xDC, 0x57, 0xDC, 0x78, 0xDC, 0x58, 0x01, 0xDC, 0x78, 0x88, 0xDC, 0xBA, 0xED, 0x7D, 0x48, 0xCC, 0x28, 0x2A, 0x30, 0xEE, 0x28, 0xEE, 0x28, 0xEF, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x11, 0x01, 0x19, 0x11, 0x83, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x19, 0xD8, 0x01, 0x11, 0xD8, 0x8C, 0x19, 0xD7, 0x11, 0x54, 0x09, 0x12, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x07, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x22, 0x17, 0x19, 0xD6, + 0x19, 0xB6, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x30, 0x8E, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x09, 0x75, 0x11, 0xB6, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0xB7, 0x09, 0x54, 0x11, 0x33, 0x19, 0x73, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x06, 0x29, 0x10, 0x81, 0x28, 0xF0, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x19, 0x11, 0x01, 0x19, 0x32, 0x88, 0x11, 0x33, 0x19, 0xB5, 0x21, 0xF6, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x32, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x88, 0x11, 0x32, 0x11, 0x54, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x95, 0x11, 0x32, 0x19, 0x31, 0x21, 0x51, 0x05, 0x21, 0x30, 0x80, 0x21, 0x50, 0x04, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x19, 0x53, 0x19, 0xB5, 0x11, 0xB6, 0x01, 0x19, 0xD7, 0x80, 0x11, 0x96, 0x02, 0x09, 0x55, 0x88, 0x11, 0x76, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x03, 0x21, 0x31, 0x02, 0x21, 0x30, 0x07, 0x21, 0x31, 0x80, 0x21, 0x11, + 0x04, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x19, 0x10, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x10, 0x19, 0x11, 0x04, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x82, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x03, 0x19, 0x11, 0x02, 0x19, 0x10, 0x85, 0x19, 0x31, 0x19, 0x10, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x19, 0x11, 0x02, 0x19, 0x10, 0x01, 0x19, 0x11, 0x85, 0x19, 0x31, 0x21, 0x31, 0x19, 0x11, 0x21, 0x11, 0x19, 0x11, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x03, 0x19, 0x11, 0x81, 0x19, 0x10, 0x19, 0x30, 0x01, 0x19, 0x31, 0x01, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x19, 0x30, 0x81, 0x19, 0x10, 0x21, 0x31, 0x04, 0x19, 0x10, 0x04, 0x19, 0x11, 0x01, 0x18, 0xF1, 0x03, 0x19, 0x11, 0x90, 0x19, 0x12, 0x19, 0x32, 0x19, 0x53, 0x19, 0x74, 0x19, 0xD5, 0x21, 0xF7, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x9B, 0x20, 0xEF, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x33, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xF7, 0x11, 0xB6, + 0x09, 0x75, 0x09, 0x54, 0x09, 0x75, 0x09, 0x74, 0x01, 0x33, 0x09, 0x34, 0x09, 0x55, 0x11, 0x96, 0x11, 0xB6, 0x19, 0xD7, 0x21, 0xD6, 0x19, 0x94, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x01, 0x21, 0x10, 0x80, 0x29, 0x51, 0x02, 0x19, 0x32, 0x8D, 0x11, 0x53, 0x11, 0x54, 0x11, 0x95, 0x09, 0x96, 0x09, 0xD7, 0x11, 0xF8, 0x09, 0xF8, 0x12, 0x19, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x88, 0x19, 0x72, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x09, 0xB7, 0x11, 0xD8, 0x09, 0xD8, 0x01, 0x11, 0xD8, 0x88, 0x09, 0xB6, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x29, 0x31, 0x03, 0x21, 0x10, 0x90, 0x21, 0x30, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x11, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x86, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x80, + 0x29, 0x30, 0x02, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x87, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x21, + 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x51, 0x8C, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xF8, 0x09, 0xB8, 0x09, 0xD9, 0x09, 0xDA, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x09, 0xDA, 0x01, 0x09, 0xD9, 0x85, 0x09, 0xB7, 0x11, 0xB6, 0x11, + 0x95, 0x11, 0x53, 0x21, 0x52, 0x21, 0x51, 0x04, 0x21, 0x30, 0x8B, 0x21, 0x51, 0x19, 0x51, 0x19, 0x52, 0x11, 0x32, 0x19, 0xD5, 0x22, 0x37, 0x1A, 0x17, 0x11, 0xD6, 0x11, 0x74, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x11, 0x55, 0x11, 0x33, 0x19, 0x33, 0x01, 0x19, 0x32, 0x82, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x03, 0x29, 0x10, 0x04, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x85, 0x19, 0x32, 0x11, 0x13, 0x11, 0x34, 0x19, 0xB7, 0x19, 0xD8, 0x11, 0xB8, 0x01, 0x11, 0xD8, 0x83, 0x11, 0xD7, 0x09, 0x75, 0x09, 0x12, 0x19, 0x52, 0x01, 0x19, 0x31, 0x01, 0x21, 0x51, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x19, 0x10, 0x19, 0x32, 0x19, 0x33, 0x11, 0x34, 0x11, 0x55, 0x11, 0xB6, 0x19, 0xF8, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0xF7, 0x01, 0x11, 0xD7, 0x88, 0x19, 0xF8, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, + 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x11, 0x54, 0x21, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x11, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8B, 0x21, 0x0E, 0x29, 0x0E, 0x28, 0xAD, 0x20, 0x4B, 0x30, 0x6A, 0xD5, 0x1C, 0xDC, 0xDA, 0xDC, 0xB9, 0xDC, 0x78, 0xDC, 0x98, 0xDC, 0x78, 0xDC, 0x57, 0x02, 0xDC, 0x78, 0x88, 0xDC, 0x99, 0xE5, 0x1C, 0xBC, 0x5A, 0x49, 0x2E, 0x28, 0x6C, 0x28, 0xEE, 0x28, 0xEF, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0x96, 0x01, 0x11, 0xD8, 0x87, 0x11, 0xD9, 0x11, 0xD8, 0x11, 0x75, 0x09, 0x33, 0x19, 0x53, 0x19, 0x52, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x29, 0x50, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x8C, 0x21, 0x30, 0x19, 0x30, 0x19, + 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x8E, 0x19, 0x32, 0x11, 0x53, 0x11, 0x95, 0x11, 0xB6, 0x11, 0xB7, 0x11, 0xD7, 0x11, 0xF8, 0x11, 0xD7, 0x09, 0x75, 0x09, 0x34, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x8B, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x04, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x88, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x32, 0x01, 0x19, 0x31, 0x82, 0x19, 0x51, 0x19, 0x30, 0x19, 0x10, 0x01, 0x19, 0x31, 0x82, 0x11, 0x32, 0x11, 0x54, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x83, 0x11, 0x95, 0x11, 0x32, 0x11, 0x11, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x8A, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x94, 0x19, 0xF6, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0x76, 0x03, 0x09, 0x55, 0x87, 0x09, 0x76, 0x11, 0xB7, 0x11, + 0xF8, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x55, 0x09, 0x13, 0x02, 0x11, 0x12, 0x01, 0x11, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x03, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x31, 0x17, 0x19, 0x11, 0x01, 0x11, 0x11, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x11, 0x11, 0x04, 0x19, 0x11, 0x80, 0x11, 0x11, 0x04, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x83, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x11, 0x11, 0x02, 0x19, 0x11, 0x82, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x05, 0x19, 0x11, 0x82, 0x11, 0x11, 0x19, 0x11, 0x19, 0x12, 0x08, 0x19, 0x11, 0x02, 0x19, 0x12, 0x04, 0x19, 0x11, 0x01, 0x19, 0x32, 0x84, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x11, 0x11, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x11, 0x11, 0x02, 0x19, 0x11, 0x01, 0x11, 0x11, 0x82, 0x19, 0x11, 0x11, 0x11, 0x19, 0x11, 0x01, 0x19, 0x12, 0x80, 0x19, 0x11, 0x02, 0x19, 0x12, 0x03, 0x11, 0x12, 0x8B, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x74, 0x19, 0xF6, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x11, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0E, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x11, 0x86, 0x19, 0x12, 0x11, 0x12, 0x19, 0x95, 0x21, 0xF7, 0x19, 0xF8, + 0x11, 0xD7, 0x09, 0x76, 0x01, 0x09, 0x75, 0x02, 0x09, 0x54, 0x87, 0x09, 0x55, 0x11, 0x96, 0x11, 0xB6, 0x19, 0xD7, 0x19, 0x95, 0x19, 0x74, 0x19, 0x32, 0x19, 0x11, 0x01, 0x19, 0x10, 0x01, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x09, 0x75, 0x09, 0x96, 0x09, 0xB7, 0x02, 0x11, 0xF8, 0x86, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x74, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x51, 0x89, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB6, 0x11, 0xB7, 0x11, 0xD8, 0x12, 0x19, 0x01, 0x11, 0xF8, 0x87, 0x11, 0xB6, 0x09, 0x75, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x29, 0x31, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x11, 0x8A, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x01, 0x21, 0x31, 0x05, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x84, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x8B, 0x29, 0x0F, 0x29, + 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x05, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x84, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x05, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, + 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x87, 0x21, 0x51, 0x21, 0x31, 0x19, 0x12, 0x11, 0x12, 0x11, 0x54, 0x11, 0xD8, 0x11, 0xD9, 0x09, 0xDA, 0x05, 0x01, 0xBA, 0x88, 0x01, 0xD9, 0x01, 0xB9, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x33, 0x19, 0x52, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x51, 0x89, 0x19, 0x52, 0x11, 0x32, 0x19, 0x95, 0x22, 0x17, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x95, 0x09, 0x33, 0x11, 0x12, 0x19, + 0x11, 0x01, 0x21, 0x31, 0x81, 0x29, 0x31, 0x29, 0x30, 0x02, 0x21, 0x10, 0x89, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x31, 0x21, 0x11, 0x01, 0x19, 0x11, 0x89, 0x19, 0x12, 0x11, 0x33, 0x19, 0x75, 0x19, 0xB6, 0x21, 0xF7, 0x2A, 0x38, 0x21, 0xD7, 0x11, 0x55, 0x11, 0x33, 0x19, 0x33, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x88, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x84, 0x19, 0x51, 0x19, 0x32, 0x11, 0x33, 0x09, 0x14, 0x19, 0xB7, 0x01, 0x11, 0xB8, 0x8A, 0x09, 0xD8, 0x11, 0xF9, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xB6, 0x09, 0x53, 0x11, 0x53, 0x19, 0x52, 0x19, 0x11, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x31, 0x86, 0x19, 0x32, 0x11, 0x33, 0x11, 0x34, 0x11, 0x55, 0x11, 0x95, 0x19, 0xF7, 0x19, 0xD7, 0x01, 0x11, 0xB6, 0x80, 0x19, 0xF7, 0x01, 0x19, 0xB6, 0x86, 0x19, 0x95, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x84, 0x19, 0x31, 0x19, + 0x12, 0x11, 0x12, 0x11, 0x54, 0x21, 0xF6, 0x01, 0x22, 0x17, 0x85, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x88, 0x29, 0x0E, 0x28, 0xCD, 0x28, 0xAC, 0x28, 0x29, 0xAB, 0xF7, 0xDD, 0x1B, 0xDC, 0xBA, 0xDC, 0x99, 0xDC, 0x98, 0x03, 0xDC, 0x57, 0x8F, 0xDC, 0x58, 0xD4, 0x58, 0xDC, 0x99, 0xDC, 0xFB, 0xDD, 0x1D, 0x49, 0x2E, 0x28, 0x8D, 0x28, 0xCE, 0x28, 0xEF, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8E, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x19, 0x53, 0x11, 0x74, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xD9, 0x09, 0xD9, 0x11, 0xD9, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x33, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x92, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x21, 0xF7, + 0x19, 0xB6, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x01, 0x09, 0xB7, 0x89, 0x09, 0xB8, 0x11, 0xF8, 0x12, 0x18, 0x09, 0x76, 0x09, 0x54, 0x11, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x04, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x09, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8E, 0x21, 0x10, 0x21, 0x30, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x94, 0x11, 0x32, 0x19, 0x31, 0x19, 0x52, 0x19, 0x31, 0x02, 0x19, 0x30, 0x89, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xD8, 0x11, 0x96, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x19, 0x94, 0x19, 0xB6, 0x11, 0xD7, 0x11, 0xB7, 0x01, 0x09, 0x76, 0x80, 0x09, 0x75, 0x02, 0x09, 0x34, 0x81, 0x09, 0x55, 0x09, 0x96, 0x01, 0x11, 0xD8, 0x83, 0x11, 0xF8, 0x09, 0xD7, 0x09, 0x76, 0x09, 0x35, 0x03, 0x09, 0x13, 0x02, 0x09, 0x12, 0x02, 0x11, 0x12, 0x83, 0x09, 0x12, 0x11, 0x12, 0x09, 0x12, 0x11, 0x12, 0x02, 0x09, + 0x12, 0x80, 0x11, 0x12, 0x04, 0x09, 0x12, 0x01, 0x11, 0x12, 0x02, 0x09, 0x12, 0x05, 0x11, 0x12, 0x82, 0x11, 0x33, 0x11, 0x12, 0x11, 0x32, 0x0B, 0x11, 0x33, 0x80, 0x11, 0x53, 0x0C, 0x11, 0x33, 0x82, 0x11, 0x53, 0x11, 0x33, 0x11, 0x53, 0x20, 0x11, 0x33, 0x82, 0x11, 0x53, 0x11, 0x33, 0x11, 0x32, 0x01, 0x11, 0x53, 0x08, 0x11, 0x32, 0x80, 0x11, 0x33, 0x01, 0x11, 0x32, 0x06, 0x11, 0x33, 0x02, 0x11, 0x13, 0x01, 0x11, 0x33, 0x01, 0x11, 0x54, 0x89, 0x11, 0x75, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x84, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x11, 0x75, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xF8, 0x11, 0xB7, 0x09, 0x76, 0x09, 0x75, 0x09, 0x55, 0x01, 0x09, 0x75, 0x82, 0x09, 0x95, 0x11, 0xB6, 0x19, 0xB7, 0x01, 0x19, 0xB6, 0x9A, 0x19, 0x74, 0x19, 0x32, 0x19, 0x11, 0x21, 0x10, 0x20, 0xF0, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x09, 0x96, 0x09, 0xB7, 0x11, 0xD8, 0x11, 0xF8, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x91, 0x19, 0x11, 0x19, 0x31, 0x19, + 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB7, 0x12, 0x18, 0x11, 0xF8, 0x12, 0x19, 0x12, 0x18, 0x11, 0xD7, 0x09, 0x96, 0x09, 0x54, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x29, 0x31, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x11, 0x11, 0x31, 0x11, 0x32, 0x11, 0x54, 0x19, 0xB5, 0x01, 0x22, 0x17, 0x81, 0x19, 0xD6, 0x19, 0x95, 0x01, 0x11, 0x33, 0x81, 0x19, 0x32, 0x21, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x8B, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x04, 0x29, 0x0F, + 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, + 0x29, 0x30, 0x07, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x51, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x75, 0x1A, 0x18, 0x11, 0xF9, 0x01, 0xD9, 0x01, 0x01, 0xBA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x80, 0x09, 0xD9, 0x01, 0x09, 0xD8, 0x85, 0x11, 0xF7, 0x19, 0xD6, 0x11, 0x33, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x21, 0x51, 0x8D, 0x19, 0x31, 0x11, 0x32, 0x19, 0x74, 0x21, 0xF6, 0x19, 0xF6, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x53, 0x10, 0xF1, 0x19, 0x32, 0x21, 0x31, 0x29, 0x51, 0x21, 0x31, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x85, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x18, 0x22, 0x38, 0x19, 0x96, 0x01, 0x11, 0x54, 0x86, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x88, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, + 0x0F, 0x05, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x19, 0x31, 0x19, 0x52, 0x19, 0x74, 0x09, 0x34, 0x11, 0x96, 0x19, 0xB8, 0x09, 0x98, 0x11, 0xD9, 0x01, 0x09, 0xD9, 0x88, 0x09, 0xF9, 0x09, 0xF8, 0x11, 0xD8, 0x11, 0xB6, 0x09, 0x33, 0x19, 0x53, 0x19, 0x32, 0x21, 0x52, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x21, 0x52, 0x19, 0x32, 0x01, 0x11, 0x12, 0x83, 0x19, 0x53, 0x19, 0x74, 0x11, 0x54, 0x19, 0x74, 0x02, 0x19, 0x94, 0x82, 0x19, 0x53, 0x11, 0x32, 0x19, 0x11, 0x01, 0x19, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x90, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x12, 0x11, 0x74, 0x21, 0xF6, 0x22, 0x17, 0x22, 0x38, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x20, 0xEF, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x86, 0x28, 0xCE, 0x28, 0x8C, 0x20, 0x09, 0x8A, 0xD3, 0xDD, 0x3C, 0xDC, 0xDA, 0xDC, 0x99, 0x01, 0xDC, 0x78, 0x03, 0xDC, 0x57, 0x01, 0xDC, 0x78, 0x88, 0xDC, 0x99, 0xE5, 0x1C, 0xBC, 0x19, 0x30, 0x4B, 0x28, 0xAD, 0x28, 0xCE, 0x28, 0xEF, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x89, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0x95, 0x11, 0xB6, 0x09, 0x97, 0x09, 0xB8, 0x03, 0x09, 0xD9, 0x86, 0x09, + 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x74, 0x19, 0x53, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x85, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x19, 0x30, 0x01, 0x19, 0x31, 0x89, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x19, 0x74, 0x11, 0x32, 0x11, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x87, 0x19, 0x52, 0x19, 0x53, 0x11, 0x54, 0x11, 0x95, 0x09, 0x96, 0x09, 0xB7, 0x01, 0xB8, 0x09, 0xD9, 0x01, 0x12, 0x19, 0x85, 0x09, 0x97, 0x01, 0x76, 0x09, 0x95, 0x09, 0x74, 0x11, 0x53, 0x19, 0x32, 0x02, 0x21, 0x31, 0x81, 0x29, 0x30, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x07, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x10, 0x19, 0x11, 0x19, 0x31, 0x19, 0x73, 0x11, 0x53, 0x11, 0x54, 0x02, 0x19, 0xB5, 0x85, 0x19, 0x74, 0x11, 0x32, + 0x19, 0x32, 0x19, 0x51, 0x21, 0x51, 0x19, 0x10, 0x01, 0x19, 0x30, 0x90, 0x19, 0x31, 0x11, 0x11, 0x11, 0x53, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x12, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8C, 0x11, 0x32, 0x19, 0x95, 0x19, 0xD6, 0x11, 0xD7, 0x09, 0x96, 0x09, 0x56, 0x09, 0x76, 0x11, 0x96, 0x11, 0x75, 0x01, 0x14, 0x09, 0x34, 0x09, 0x55, 0x09, 0x76, 0x01, 0x09, 0xD8, 0x83, 0x11, 0xF9, 0x11, 0xF8, 0x09, 0xB8, 0x09, 0x97, 0x01, 0x11, 0xB7, 0x81, 0x19, 0xD7, 0x11, 0xD7, 0x01, 0x11, 0xB6, 0x04, 0x11, 0x96, 0x80, 0x11, 0x95, 0x03, 0x11, 0x96, 0x01, 0x11, 0x95, 0x01, 0x11, 0x96, 0x80, 0x11, 0xB6, 0x04, 0x11, 0x96, 0x02, 0x11, 0xB6, 0x80, 0x11, 0x96, 0x03, 0x19, 0xB6, 0x81, 0x11, 0xB6, 0x11, 0x96, 0x05, 0x11, 0xB6, 0x81, 0x19, 0xB6, 0x11, 0xB6, 0x03, 0x11, 0x96, 0x80, 0x11, 0xB6, 0x03, 0x11, 0x96, 0x02, 0x11, 0x95, 0x05, 0x11, 0x96, 0x85, 0x11, 0xB6, 0x11, 0x96, 0x11, 0xB6, 0x11, 0x96, 0x11, 0xB6, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x80, 0x11, 0x95, 0x01, 0x11, 0xB6, 0x80, 0x11, 0x95, 0x03, 0x11, 0xB6, 0x80, 0x19, 0xB6, 0x02, 0x11, 0xB6, 0x80, 0x19, 0xB6, 0x04, 0x11, 0xB6, 0x80, 0x19, 0xB6, 0x04, 0x11, 0xB6, 0x80, 0x19, 0xB6, 0x03, 0x11, 0xB6, 0x01, 0x19, 0xB6, 0x01, 0x11, 0xB5, 0x02, 0x11, 0x95, 0x80, 0x11, 0xB6, 0x02, 0x11, 0x95, 0x80, 0x11, 0xB5, 0x06, 0x11, 0x95, + 0x02, 0x11, 0xB6, 0x80, 0x11, 0x96, 0x03, 0x11, 0xB6, 0x01, 0x11, 0x96, 0x01, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x86, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x20, 0xEF, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, 0x13, 0x11, 0x75, 0x19, 0xD7, 0x01, 0x11, 0xD8, 0x8D, 0x09, 0xB7, 0x09, 0x97, 0x09, 0x96, 0x01, 0x76, 0x09, 0x96, 0x09, 0xB6, 0x11, 0xB7, 0x11, 0xD7, 0x11, 0xB7, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x53, 0x19, 0x32, 0x21, 0x11, 0x05, 0x21, 0x10, 0x01, 0x21, 0x31, 0x87, 0x19, 0x11, 0x11, 0x11, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x09, 0x96, 0x11, 0xB7, 0x11, 0xD8, 0x01, 0x11, 0xF8, 0x89, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x8C, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x11, 0xD7, 0x11, 0xF8, 0x09, 0xF8, 0x12, 0x18, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x33, 0x01, 0x19, 0x32, 0x83, 0x21, 0x11, 0x29, 0x31, 0x21, 0x11, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x89, 0x11, 0x11, 0x11, 0x32, 0x11, 0x74, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x34, 0x11, 0x12, 0x01, 0x19, 0x32, 0x81, 0x21, + 0x11, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x0B, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x03, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x0B, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x05, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x15, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x06, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0A, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x0F, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x88, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, + 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x06, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x88, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x33, 0x11, 0x95, 0x11, 0xD8, 0x09, 0xD8, 0x01, 0xD9, 0x01, 0xB9, 0x05, 0x01, 0xDA, 0x89, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xD7, 0x19, 0xD6, 0x09, 0x12, 0x19, 0x32, 0x21, 0x52, 0x21, 0x51, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8C, 0x11, 0x53, 0x21, 0xD6, 0x22, 0x17, 0x19, 0xF7, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x53, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x11, 0x29, 0x31, 0x01, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x11, 0x01, 0x21, 0x31, 0x01, 0x19, 0x12, 0x8D, 0x19, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x18, 0x2A, 0x38, 0x19, 0xB6, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x21, + 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x19, 0x31, 0x19, 0x53, 0x11, 0x74, 0x09, 0x55, 0x11, 0xD8, 0x01, 0x09, 0x98, 0x80, 0x09, 0xB9, 0x03, 0x09, 0xD9, 0x84, 0x09, 0xD8, 0x11, 0xF7, 0x11, 0x75, 0x11, 0x53, 0x19, 0x32, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x04, 0x21, 0x31, 0x81, 0x19, 0x11, 0x21, 0x52, 0x03, 0x19, 0x32, 0x85, 0x11, 0x12, 0x19, 0x32, 0x19, 0x11, 0x10, 0xF1, 0x19, 0x31, 0x19, 0x10, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x02, 0x19, 0x31, 0x01, 0x11, 0x32, 0x81, 0x11, 0x54, 0x21, 0xF6, 0x01, 0x22, 0x17, 0x88, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x19, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x88, 0x28, 0xEE, 0x28, 0xAD, 0x20, 0x2A, 0x61, 0xD0, 0xDD, 0x3C, 0xDC, 0xDA, 0xDC, 0x99, 0xDC, 0x98, 0xDC, 0x78, 0x04, 0xDC, 0x57, 0x01, 0xDC, 0x78, 0x87, 0xDC, 0x99, 0xED, 0x5D, 0x9A, 0xF5, 0x30, 0x2B, 0x28, 0xAD, 0x28, 0xEE, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, + 0x21, 0x30, 0x01, 0x19, 0x11, 0x87, 0x19, 0x32, 0x19, 0x74, 0x11, 0x95, 0x11, 0xB7, 0x09, 0xD8, 0x01, 0xB8, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x09, 0xDA, 0x86, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x19, 0x74, 0x19, 0x32, 0x19, 0x31, 0x09, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x8B, 0x21, 0x30, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x13, 0x19, 0xB6, 0x22, 0x17, 0x19, 0xB6, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x12, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x52, 0x86, 0x19, 0x74, 0x11, 0x95, 0x11, 0xD7, 0x11, 0xD8, 0x09, 0xF9, 0x01, 0xB8, 0x01, 0xB9, 0x01, 0x09, 0xF9, 0x87, 0x01, 0xD8, 0x09, 0xF8, 0x12, 0x18, 0x11, 0xD6, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x04, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x08, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x8C, 0x19, + 0x31, 0x19, 0x52, 0x19, 0x73, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB5, 0x21, 0xD6, 0x19, 0xB5, 0x19, 0x73, 0x11, 0x32, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x02, 0x19, 0x30, 0x89, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x84, 0x11, 0x32, 0x11, 0x95, 0x19, 0xF7, 0x11, 0xB7, 0x09, 0xB7, 0x01, 0x09, 0x76, 0x81, 0x09, 0x75, 0x09, 0x55, 0x01, 0x09, 0x34, 0x86, 0x09, 0x55, 0x09, 0x76, 0x01, 0x97, 0x09, 0xD8, 0x11, 0xF9, 0x09, 0xD8, 0x12, 0x19, 0x01, 0x11, 0xF9, 0x01, 0x22, 0x5A, 0x15, 0x22, 0x39, 0x80, 0x22, 0x19, 0x01, 0x22, 0x39, 0x01, 0x22, 0x18, 0x82, 0x22, 0x19, 0x22, 0x18, 0x22, 0x38, 0x03, 0x22, 0x18, 0x81, 0x1A, 0x18, 0x22, 0x18, 0x02, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x81, 0x22, 0x18, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x81, 0x22, 0x18, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x81, 0x22, 0x38, 0x1A, 0x18, 0x02, 0x22, 0x18, 0x87, 0x1A, 0x18, 0x22, 0x18, 0x19, 0xF8, 0x22, 0x18, 0x1A, 0x18, 0x22, 0x18, 0x1A, 0x18, 0x22, 0x38, 0x04, 0x1A, 0x18, 0x82, 0x22, 0x18, 0x1A, 0x18, 0x22, 0x18, 0x05, 0x1A, 0x18, 0x80, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x86, 0x19, 0xF8, 0x1A, 0x18, 0x22, 0x18, 0x1A, 0x18, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x38, 0x02, 0x1A, 0x18, 0x80, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x80, + 0x22, 0x18, 0x01, 0x1A, 0x18, 0x01, 0x22, 0x38, 0x01, 0x22, 0x18, 0x85, 0x22, 0x38, 0x22, 0x18, 0x22, 0x38, 0x22, 0x18, 0x22, 0x38, 0x22, 0x18, 0x03, 0x22, 0x38, 0x84, 0x22, 0x39, 0x22, 0x38, 0x22, 0x39, 0x1A, 0x18, 0x22, 0x38, 0x04, 0x1A, 0x18, 0x85, 0x22, 0x18, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x03, 0x21, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x50, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x01, 0x11, 0xD7, 0x80, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x01, 0x09, 0xB7, 0x01, 0x11, 0xD7, 0x87, 0x11, 0xF8, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x74, 0x19, 0x52, 0x19, 0x31, 0x21, 0x11, 0x07, 0x21, 0x10, 0x91, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xD7, 0x11, 0xD8, 0x12, 0x19, 0x11, 0xF9, 0x11, 0xF8, 0x09, 0xD8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x19, 0x11, 0x19, 0x31, 0x03, 0x21, 0x31, 0x86, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0x96, 0x09, 0xB7, 0x09, 0xD7, 0x01, 0x09, 0xF8, 0x01, 0x11, 0xF8, 0x82, 0x11, 0x96, 0x19, 0x95, 0x11, 0x33, 0x01, 0x19, 0x32, 0x82, 0x18, 0xF1, 0x21, 0x31, 0x29, 0x31, 0x02, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x31, 0x83, + 0x11, 0x31, 0x11, 0x32, 0x11, 0x74, 0x19, 0xB5, 0x01, 0x19, 0xF7, 0x81, 0x19, 0xD7, 0x19, 0x95, 0x01, 0x11, 0x33, 0x83, 0x19, 0x12, 0x21, 0x32, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x07, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x14, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x09, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x09, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, + 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x07, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x86, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x50, 0x01, 0x19, 0x30, 0x82, 0x21, 0x50, 0x21, 0x30, 0x21, 0x50, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x11, 0x11, 0x12, 0x11, 0x95, 0x19, 0xF8, 0x09, 0xB8, 0x01, 0x01, 0xB9, 0x01, 0x01, 0xBA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x80, 0x01, 0xB9, 0x01, 0x09, 0xD9, 0x85, 0x11, 0xD8, 0x1A, 0x17, 0x11, 0x95, 0x09, 0x12, 0x11, 0x31, 0x19, 0x51, 0x01, 0x21, 0x51, 0x02, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x51, 0x01, 0x19, 0x31, 0x8A, 0x11, 0x32, 0x19, 0x94, 0x22, 0x17, 0x22, 0x38, 0x1A, 0x17, 0x19, 0xD7, 0x11, 0xB5, 0x11, 0x33, 0x10, 0xF2, 0x19, 0x12, + 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x8D, 0x21, 0x11, 0x19, 0x12, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x2A, 0x38, 0x22, 0x18, 0x19, 0xB6, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x32, 0x11, 0x33, 0x09, 0x34, 0x1A, 0x19, 0x11, 0xF9, 0x09, 0x98, 0x09, 0xB9, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x85, 0x01, 0xB8, 0x12, 0x19, 0x1A, 0x18, 0x09, 0x33, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x05, 0x19, 0x11, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x11, 0x32, 0x81, 0x11, 0x74, 0x21, 0xF7, 0x01, 0x22, 0x17, 0x83, 0x21, 0xF6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x29, + 0x10, 0x01, 0x29, 0x0F, 0x88, 0x28, 0xEE, 0x20, 0xAD, 0x28, 0x6B, 0x40, 0xCC, 0xD4, 0xDB, 0xD4, 0xBA, 0xDC, 0x99, 0xDC, 0xB9, 0xDC, 0x78, 0x04, 0xDC, 0x57, 0x88, 0xDC, 0x77, 0xDC, 0x57, 0xDC, 0x78, 0xD4, 0x78, 0xE5, 0x1C, 0x8A, 0x93, 0x30, 0x2A, 0x28, 0x8C, 0x28, 0xEE, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x19, 0x33, 0x19, 0xB6, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x88, 0x09, 0xDA, 0x09, 0xFA, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x07, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x19, 0x30, 0x84, 0x19, 0x31, 0x11, 0x32, 0x11, 0x13, 0x19, 0xB6, 0x21, 0xF7, 0x01, 0x19, 0xB6, 0x81, 0x11, 0x74, 0x11, 0x32, 0x01, 0x11, 0x31, 0x89, 0x19, 0x31, 0x19, 0x52, 0x19, 0x73, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD8, 0x12, 0x19, 0x09, 0xF9, 0x01, 0xB9, 0x01, 0xD9, 0x02, 0x01, 0xF9, 0x85, 0x0A, 0x1A, 0x12, 0x3A, 0x11, 0xF7, 0x09, 0x75, 0x11, 0x33, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, + 0x29, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x04, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x09, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x52, 0x19, 0x74, 0x11, 0x54, 0x11, 0x95, 0x01, 0x19, 0xB6, 0x86, 0x21, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x02, 0x19, 0x30, 0x88, 0x11, 0x31, 0x11, 0x73, 0x1A, 0x17, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x32, 0x19, 0x31, 0x19, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x8D, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x94, 0x19, 0xD7, 0x11, 0xB6, 0x11, 0xD7, 0x09, 0x96, 0x01, 0x09, 0x55, 0x85, 0x09, 0x34, 0x09, 0x55, 0x09, 0x35, 0x01, 0x35, 0x09, 0x76, 0x09, 0xB7, 0x02, 0x09, 0xD8, 0x02, 0x11, 0xF8, 0x04, 0x19, 0xF8, 0x86, 0x19, 0xD8, 0x21, 0xF8, 0x19, 0xF8, 0x19, 0xD7, 0x21, 0xF8, 0x19, 0xD7, 0x19, 0xF8, 0x01, 0x21, 0xF8, 0x03, 0x19, 0xF8, 0x01, 0x22, 0x18, 0x01, 0x19, 0xF8, 0x80, 0x21, 0xF8, 0x04, 0x19, 0xF8, 0x01, 0x21, 0xF8, 0x84, 0x19, 0xF8, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xF8, 0x22, 0x18, 0x01, 0x19, 0xF7, 0x81, 0x19, 0xF8, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x03, 0x19, 0xF7, 0x85, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xD7, + 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x80, 0x19, 0xD7, 0x01, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x80, 0x19, 0xF8, 0x02, 0x19, 0xD7, 0x81, 0x19, 0xF7, 0x19, 0xF8, 0x03, 0x19, 0xF7, 0x82, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x05, 0x19, 0xF7, 0x01, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x01, 0x19, 0xD7, 0x81, 0x19, 0xF7, 0x19, 0xD7, 0x04, 0x19, 0xF7, 0x01, 0x19, 0xD7, 0x05, 0x19, 0xF7, 0x80, 0x1A, 0x17, 0x05, 0x19, 0xF7, 0x80, 0x21, 0xF8, 0x01, 0x19, 0xF7, 0x01, 0x22, 0x18, 0x82, 0x19, 0xF8, 0x1A, 0x18, 0x19, 0xF8, 0x03, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x01, 0x19, 0xD7, 0x84, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x94, 0x19, 0x0F, 0x19, 0x10, 0x21, 0x51, 0x19, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD7, 0x11, 0xD8, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0xD8, 0x11, 0xD8, 0x19, 0xF8, 0x1A, 0x18, 0x1A, 0x38, 0x1A, 0x17, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x20, 0xF0, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xF8, 0x12, 0x18, + 0x01, 0x11, 0xF8, 0x8F, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0x96, 0x11, 0xD7, 0x01, 0x11, 0xF8, 0x85, 0x12, 0x19, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x55, 0x11, 0x33, 0x01, 0x19, 0x12, 0x84, 0x21, 0x11, 0x29, 0x51, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x17, 0x01, 0x21, 0xF7, 0x86, 0x19, 0x95, 0x11, 0x34, 0x19, 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x08, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, + 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x05, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x8A, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, + 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x85, 0x19, 0x50, 0x11, 0x30, 0x09, 0x0F, 0x11, 0x50, 0x11, 0x30, 0x19, 0x30, 0x02, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x74, 0x19, 0xF8, 0x11, 0xD8, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x80, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x01, 0x01, 0xB9, 0x87, 0x09, 0xD8, 0x09, 0xD7, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x32, 0x19, 0x31, 0x19, 0x51, 0x21, 0x51, 0x05, 0x21, 0x30, 0x85, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0xB5, 0x22, 0x17, 0x01, 0x1A, 0x18, 0x85, 0x19, 0xD7, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x21, 0x32, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x11, 0x8E, 0x21, 0x32, 0x19, 0x12, 0x11, 0x33, 0x11, 0x34, 0x19, 0x95, 0x2A, 0x38, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x11, 0x02, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, + 0x30, 0x02, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x09, 0x55, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xBA, 0x03, 0x01, 0xDA, 0x88, 0x01, 0xFA, 0x01, 0xD9, 0x09, 0xD8, 0x11, 0xF8, 0x11, 0x95, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x31, 0x84, 0x19, 0x31, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x09, 0x12, 0x11, 0x74, 0x21, 0xF6, 0x01, 0x22, 0x17, 0x83, 0x19, 0xF6, 0x11, 0x94, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x82, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x88, 0x28, 0xCD, 0x28, 0x6C, 0x20, 0x09, 0xB3, 0xF8, 0xDC, 0xDA, 0xDC, 0xB9, 0xE4, 0xB9, 0xDC, 0x78, 0xDC, 0x77, 0x06, 0xDC, 0x57, 0x88, 0xDC, 0x78, 0xDC, 0x99, 0xE5, 0x1B, 0x9B, 0x15, 0x38, 0x6B, 0x28, 0xAD, 0x28, 0xEE, 0x28, 0xEF, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x87, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x96, 0x11, 0xD7, 0x09, 0xD9, 0x01, 0xB9, 0x05, 0x01, 0xDA, 0x01, 0x09, 0xD9, 0x84, 0x11, 0xB8, 0x19, 0xD7, 0x11, 0x74, 0x19, 0x32, 0x19, 0x31, 0x08, + 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x13, 0x19, 0xB6, 0x21, 0xF7, 0x01, 0x19, 0xB6, 0x80, 0x11, 0x54, 0x01, 0x11, 0x32, 0x01, 0x11, 0x31, 0x86, 0x11, 0x52, 0x11, 0x74, 0x11, 0x95, 0x11, 0x97, 0x11, 0xD9, 0x09, 0xF9, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x84, 0x09, 0xF9, 0x09, 0xF8, 0x11, 0xD7, 0x11, 0x54, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x04, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x11, 0x54, 0x01, 0x19, 0xB6, 0x92, 0x19, 0xB5, 0x21, 0xB5, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x51, 0x21, 0x30, + 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0xB5, 0x11, 0x32, 0x19, 0x31, 0x03, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x88, 0x11, 0x32, 0x11, 0x54, 0x19, 0xB6, 0x11, 0xD7, 0x11, 0xD8, 0x09, 0xB7, 0x09, 0x76, 0x01, 0x55, 0x01, 0x35, 0x01, 0x09, 0x55, 0x85, 0x09, 0x76, 0x09, 0x97, 0x09, 0xB7, 0x09, 0xD7, 0x11, 0xD8, 0x11, 0xD7, 0x01, 0x11, 0xB7, 0x81, 0x11, 0xB6, 0x11, 0x96, 0x0B, 0x11, 0x75, 0x81, 0x19, 0x95, 0x19, 0x96, 0x01, 0x11, 0x95, 0x01, 0x19, 0x96, 0x80, 0x11, 0x95, 0x01, 0x19, 0x95, 0x01, 0x19, 0x96, 0x82, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x96, 0x01, 0x19, 0x95, 0x01, 0x19, 0x96, 0x01, 0x19, 0x95, 0x86, 0x11, 0x95, 0x19, 0x96, 0x11, 0x95, 0x19, 0xB6, 0x11, 0x95, 0x19, 0xB6, 0x11, 0x95, 0x03, 0x19, 0x95, 0x82, 0x19, 0x96, 0x19, 0x95, 0x19, 0x96, 0x01, 0x11, 0x95, 0x82, 0x19, 0x95, 0x19, 0x96, 0x11, 0x95, 0x01, 0x19, 0x96, 0x80, 0x19, 0x95, 0x02, 0x11, 0x95, 0x82, 0x19, 0x95, 0x11, 0x95, 0x19, 0x95, 0x02, 0x11, 0x95, 0x83, 0x19, 0x95, 0x11, 0x95, 0x19, 0x95, 0x11, 0x75, 0x02, 0x11, 0x95, 0x01, 0x19, 0x95, 0x81, 0x11, 0x95, 0x19, 0x95, 0x05, 0x11, 0x95, 0x01, 0x19, 0x95, 0x80, 0x11, 0x75, 0x01, 0x11, 0x95, 0x80, 0x19, 0x95, 0x09, 0x11, 0x95, 0x01, 0x19, 0x95, 0x07, 0x11, 0x95, 0x81, 0x19, 0x95, 0x19, 0xB5, 0x01, 0x19, 0x95, 0x04, 0x11, 0x95, 0x01, 0x11, 0x75, 0x80, 0x11, 0x95, 0x02, 0x11, + 0x75, 0x03, 0x11, 0x95, 0x80, 0x11, 0x55, 0x01, 0x11, 0x54, 0x01, 0x11, 0x33, 0x81, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x87, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0x74, 0x11, 0x54, 0x11, 0xB6, 0x19, 0xD7, 0x03, 0x11, 0xD8, 0x8D, 0x11, 0xB7, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x94, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x88, 0x19, 0x31, 0x19, 0x52, 0x11, 0x52, 0x11, 0x53, 0x09, 0x75, 0x09, 0x96, 0x09, 0xD7, 0x12, 0x18, 0x12, 0x19, 0x01, 0x11, 0xF8, 0x87, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x02, 0x19, 0x31, 0x8C, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x09, 0xB7, 0x09, 0xD7, 0x11, 0xF8, 0x12, 0x19, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x55, 0x11, 0x33, 0x01, 0x19, 0x12, 0x02, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x92, 0x21, 0x31, 0x21, 0x51, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0x75, 0x11, 0x54, 0x19, 0x33, 0x19, 0x32, 0x19, 0x11, + 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x09, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x07, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x88, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, + 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x31, 0x05, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x8C, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x50, 0x21, 0x71, 0x19, 0x50, 0x00, 0xCE, 0x32, 0xD6, 0x43, 0x58, 0x09, 0x30, 0x11, 0x30, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x31, 0x94, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x11, 0xB6, 0x11, 0xD8, 0x11, 0xF9, 0x0A, 0x1A, 0x09, 0xFA, 0x01, 0xDA, 0x01, 0xB9, 0x09, 0xDA, 0x01, 0xB9, 0x09, 0xD9, 0x09, 0xF9, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0x95, 0x11, + 0x53, 0x19, 0x53, 0x19, 0x52, 0x21, 0x51, 0x05, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x01, 0x19, 0x32, 0x82, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD7, 0x01, 0x22, 0x18, 0x8C, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x13, 0x11, 0x12, 0x19, 0x12, 0x21, 0x32, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x11, 0x01, 0x21, 0x52, 0x83, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x02, 0x21, 0xF7, 0x82, 0x19, 0x75, 0x11, 0x33, 0x11, 0x13, 0x01, 0x19, 0x32, 0x81, 0x21, 0x31, 0x21, 0x11, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x52, 0x09, 0x54, 0x11, 0xB7, 0x09, 0xD8, 0x01, 0xB9, 0x09, 0xDA, 0x04, 0x01, 0xDA, 0x87, 0x01, 0xFA, 0x09, 0xFA, 0x09, 0xF9, 0x09, 0xD8, 0x19, 0xF8, 0x11, 0x54, 0x11, 0x12, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x31, 0x80, 0x19, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x21, 0x50, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x31, 0x89, 0x11, 0x32, + 0x11, 0x33, 0x11, 0x74, 0x19, 0xF6, 0x22, 0x37, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x88, 0x29, 0x0F, 0x28, 0xEF, 0x28, 0xCE, 0x20, 0x6C, 0x28, 0x2A, 0x82, 0x93, 0xE5, 0x3C, 0xDC, 0x99, 0xDC, 0xB9, 0x02, 0xDC, 0x78, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x01, 0xDC, 0x78, 0x8B, 0xDC, 0x99, 0xE4, 0xFB, 0x92, 0xD3, 0x30, 0x2A, 0x30, 0xCD, 0x28, 0xCE, 0x28, 0xEF, 0x29, 0x0F, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x89, 0x21, 0x10, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x19, 0x95, 0x19, 0xF8, 0x12, 0x19, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x87, 0x01, 0xFA, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xD8, 0x22, 0x39, 0x19, 0xB6, 0x11, 0x12, 0x19, 0x31, 0x08, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x8A, 0x21, 0x50, 0x19, 0x30, 0x19, 0x31, 0x11, 0x12, 0x11, 0x13, + 0x19, 0xB6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x09, 0x12, 0x01, 0x19, 0x52, 0x86, 0x11, 0x32, 0x11, 0x53, 0x19, 0x94, 0x11, 0xB6, 0x11, 0xD8, 0x09, 0xD9, 0x01, 0xD9, 0x03, 0x01, 0xFA, 0x89, 0x02, 0x1A, 0x01, 0xD9, 0x01, 0xB9, 0x09, 0xF9, 0x11, 0xF9, 0x1A, 0x18, 0x11, 0x75, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x03, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x9C, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x11, 0x32, 0x11, 0x74, 0x19, 0x95, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x94, 0x19, 0x53, 0x19, 0x32, 0x21, 0x51, 0x21, 0x31, 0x19, 0x10, 0x21, 0x30, 0x19, 0x30, 0x19, 0x50, 0x19, 0x31, 0x11, 0x32, 0x11, 0x74, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x52, 0x19, 0x51, 0x21, 0x51, 0x01, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8D, 0x19, 0x31, 0x11, 0x12, 0x11, 0x53, 0x11, 0x95, 0x11, 0xD7, 0x11, 0xF8, 0x1A, 0x19, 0x11, 0xF8, 0x09, 0x96, 0x01, 0x75, 0x09, 0x76, 0x09, 0x96, 0x11, 0xD7, 0x09, 0xD7, 0x01, 0x11, 0xF8, 0x83, 0x11, 0xB6, 0x09, 0x75, + 0x11, 0x54, 0x11, 0x34, 0x01, 0x11, 0x33, 0x81, 0x11, 0x12, 0x11, 0x32, 0x02, 0x11, 0x33, 0x01, 0x11, 0x32, 0x84, 0x19, 0x33, 0x11, 0x33, 0x19, 0x33, 0x11, 0x33, 0x11, 0x12, 0x04, 0x11, 0x33, 0x80, 0x11, 0x12, 0x04, 0x11, 0x33, 0x81, 0x11, 0x12, 0x11, 0x32, 0x01, 0x19, 0x33, 0x81, 0x11, 0x32, 0x11, 0x33, 0x01, 0x11, 0x32, 0x81, 0x11, 0x33, 0x19, 0x33, 0x02, 0x11, 0x33, 0x80, 0x11, 0x32, 0x02, 0x11, 0x33, 0x01, 0x19, 0x33, 0x01, 0x11, 0x33, 0x02, 0x19, 0x33, 0x04, 0x11, 0x33, 0x01, 0x11, 0x32, 0x01, 0x11, 0x33, 0x02, 0x11, 0x32, 0x05, 0x11, 0x33, 0x81, 0x11, 0x32, 0x11, 0x33, 0x01, 0x19, 0x53, 0x02, 0x11, 0x33, 0x80, 0x11, 0x32, 0x01, 0x11, 0x33, 0x81, 0x11, 0x32, 0x11, 0x33, 0x01, 0x19, 0x33, 0x0D, 0x11, 0x33, 0x80, 0x19, 0x33, 0x01, 0x11, 0x32, 0x01, 0x11, 0x33, 0x01, 0x11, 0x32, 0x03, 0x11, 0x33, 0x01, 0x11, 0x53, 0x81, 0x11, 0x33, 0x11, 0x32, 0x02, 0x11, 0x33, 0x82, 0x11, 0x12, 0x11, 0x33, 0x19, 0x33, 0x01, 0x11, 0x33, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x01, 0x11, 0x12, 0x80, 0x11, 0x32, 0x02, 0x11, 0x33, 0x02, 0x11, 0x12, 0x84, 0x19, 0x32, 0x19, 0x51, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x19, 0x0F, 0x01, + 0x19, 0x10, 0x85, 0x19, 0x31, 0x19, 0x52, 0x19, 0x53, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD7, 0x01, 0x19, 0xF8, 0x82, 0x11, 0xD7, 0x09, 0x76, 0x09, 0x55, 0x01, 0x11, 0x75, 0x80, 0x11, 0x54, 0x01, 0x11, 0x53, 0x84, 0x11, 0x32, 0x19, 0x52, 0x19, 0x32, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x86, 0x11, 0x32, 0x09, 0x53, 0x09, 0x95, 0x09, 0xB6, 0x11, 0xF8, 0x12, 0x19, 0x11, 0xF8, 0x01, 0x11, 0xD8, 0x84, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x32, 0x19, 0x11, 0x01, 0x19, 0x31, 0x89, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x09, 0xB6, 0x11, 0xD7, 0x02, 0x11, 0xF8, 0x83, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x33, 0x01, 0x19, 0x12, 0x80, 0x19, 0x11, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x8F, 0x21, 0x51, 0x21, 0x31, 0x21, 0x51, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xD7, 0x21, 0xF8, 0x21, 0xD7, 0x19, 0x75, 0x19, 0x54, 0x19, 0x12, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, + 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x86, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x08, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x09, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x09, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, + 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x21, 0x51, 0x21, 0x52, 0x02, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x90, 0x21, 0x50, 0x21, 0x71, 0x11, 0x50, 0x01, 0x0F, 0x01, 0x70, 0x4C, 0x3B, 0x54, 0x5B, 0x1A, 0x33, 0x01, 0x30, 0x11, 0x10, 0x19, 0x30, 0x21, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xF9, 0x11, 0xFA, 0x09, 0xFA, 0x09, 0xDA, 0x09, 0xB9, 0x01, 0x01, 0xB9, 0x87, 0x09, 0xD9, 0x09, 0xF9, 0x12, 0x19, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x53, 0x19, 0x72, 0x21, 0x52, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x95, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x12, 0x19, 0x53, 0x11, 0x53, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x18, 0x22, 0x17, 0x21, 0xD6, 0x19, 0x75, 0x11, 0x13, 0x11, 0x12, 0x19, 0x12, + 0x21, 0x32, 0x21, 0x31, 0x21, 0x10, 0x29, 0x31, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x50, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x81, 0x19, 0x31, 0x19, 0x12, 0x01, 0x11, 0x33, 0x84, 0x19, 0xB6, 0x22, 0x18, 0x21, 0xF7, 0x21, 0xD7, 0x19, 0x75, 0x01, 0x11, 0x33, 0x01, 0x19, 0x32, 0x01, 0x21, 0x11, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x50, 0x05, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x87, 0x19, 0x31, 0x11, 0x32, 0x11, 0x95, 0x11, 0xF8, 0x09, 0xB8, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xBA, 0x05, 0x01, 0xDA, 0x85, 0x01, 0xD9, 0x09, 0xF9, 0x1A, 0x19, 0x11, 0x75, 0x11, 0x12, 0x19, 0x11, 0x06, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x01, 0x21, 0x30, 0x87, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x20, 0xEF, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x87, 0x21, 0x31, 0x21, 0x51, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x09, 0x32, 0x11, 0x74, 0x21, 0xF6, 0x01, 0x22, 0x17, 0x82, 0x21, 0xF7, 0x19, 0x95, 0x09, 0x12, 0x01, 0x11, 0x11, 0x81, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x89, 0x28, 0xEF, 0x28, 0xEE, 0x28, + 0xAD, 0x20, 0x2B, 0x51, 0x4E, 0xCC, 0xBB, 0xDC, 0xDA, 0xDC, 0xB9, 0xDC, 0x98, 0xDC, 0x77, 0x02, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x86, 0xDC, 0x78, 0xDC, 0x99, 0xDC, 0xDA, 0xB3, 0xB7, 0x30, 0x2A, 0x38, 0xEE, 0x28, 0xCE, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x19, 0x10, 0x21, 0x11, 0x19, 0x11, 0x19, 0x33, 0x11, 0x75, 0x1A, 0x18, 0x11, 0xF9, 0x01, 0xB8, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x86, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xD8, 0x1A, 0x18, 0x19, 0xD6, 0x08, 0xF2, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x87, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x50, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x94, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x11, 0x12, 0x11, 0x13, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x11, 0x52, 0x19, 0x52, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x11, 0x96, 0x09, 0xB8, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xB9, 0x01, 0x09, 0xF9, 0x89, 0x19, 0xF8, 0x11, 0x75, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x29, 0x51, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x30, 0x03, + 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x90, 0x19, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0x74, 0x19, 0x53, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x21, 0x30, 0x19, 0x10, 0x01, 0x21, 0x30, 0x84, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x74, 0x1A, 0x18, 0x01, 0x11, 0xF8, 0x83, 0x11, 0xB6, 0x11, 0x53, 0x19, 0x52, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x19, 0x11, 0x86, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x11, 0xB6, 0x19, 0xF8, 0x11, 0xF8, 0x12, 0x18, 0x01, 0x11, 0xF8, 0x88, 0x11, 0xD7, 0x11, 0xF7, 0x11, 0xF8, 0x11, 0xF7, 0x12, 0x18, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x01, 0x11, 0x12, 0x02, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x19, 0x32, 0x03, 0x19, 0x11, 0x80, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x32, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, 0x04, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, 0x07, 0x19, 0x11, 0x01, 0x19, 0x32, 0x02, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, + 0x19, 0x11, 0x03, 0x19, 0x31, 0x80, 0x19, 0x11, 0x02, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x02, 0x19, 0x11, 0x01, 0x19, 0x32, 0x02, 0x19, 0x11, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x19, 0x32, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x06, 0x19, 0x11, 0x01, 0x19, 0x32, 0x81, 0x19, 0x31, 0x19, 0x11, 0x02, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x32, 0x0D, 0x19, 0x11, 0x81, 0x19, 0x32, 0x19, 0x11, 0x03, 0x19, 0x31, 0x01, 0x19, 0x30, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x91, 0x19, 0x10, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xF8, 0x19, 0xD7, 0x09, 0x75, 0x09, 0x34, 0x11, 0x34, 0x11, 0x54, 0x11, 0x53, 0x19, 0x33, 0x19, 0x32, 0x03, 0x19, 0x31, 0x80, 0x19, 0x30, 0x05, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x8A, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x52, 0x11, 0x74, 0x09, 0x95, 0x11, 0xB6, 0x11, 0xD7, 0x01, 0x11, 0xF8, 0x84, 0x1A, 0x19, 0x11, 0xF8, 0x19, 0xF7, 0x11, 0x75, 0x11, 0x54, 0x01, 0x11, 0x12, 0x82, 0x21, 0x52, 0x19, 0x31, 0x21, 0x31, 0x02, 0x19, 0x31, 0x85, 0x11, + 0x32, 0x11, 0x73, 0x11, 0x94, 0x11, 0x95, 0x11, 0xB6, 0x11, 0xD7, 0x01, 0x11, 0xF8, 0x84, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x33, 0x01, 0x19, 0x32, 0x80, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x51, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x84, 0x19, 0xB6, 0x19, 0x75, 0x19, 0x54, 0x11, 0x12, 0x19, 0x32, 0x02, 0x21, 0x31, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, + 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x08, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x31, 0x80, 0x21, 0x32, 0x01, 0x19, 0x32, 0x83, 0x19, 0x31, 0x21, 0x32, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, + 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8E, 0x29, 0x91, 0x19, 0x30, 0x09, 0x2F, 0x01, 0x0F, 0x33, 0x58, 0x44, 0x1A, 0x44, 0x3A, 0x33, 0x57, 0x01, 0x30, 0x09, 0x30, 0x11, 0x30, 0x19, 0x50, 0x21, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x19, 0x74, 0x11, 0x75, 0x11, 0x97, 0x11, 0xB8, 0x02, 0x11, 0xD9, 0x01, 0x11, 0xF9, 0x01, 0x11, 0xF8, 0x86, 0x19, 0xF8, 0x19, 0xB6, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x19, 0x10, 0x01, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD7, 0x01, 0x22, 0x17, 0x83, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x10, 0xF1, 0x01, 0x19, 0x11, 0x82, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x21, 0x11, 0x21, 0x32, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x11, 0x75, 0x01, 0x11, 0x13, 0x80, 0x11, 0x12, 0x01, 0x21, 0x32, 0x80, 0x21, 0x31, 0x03, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, + 0x30, 0x04, 0x29, 0x2F, 0x88, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0xD6, 0x12, 0x19, 0x09, 0xD9, 0x09, 0xDA, 0x02, 0x01, 0xBA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x88, 0x01, 0xD9, 0x09, 0xF9, 0x1A, 0x19, 0x19, 0xB6, 0x08, 0xF1, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x19, 0x30, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x11, 0x32, 0x11, 0x74, 0x19, 0xF6, 0x01, 0x22, 0x17, 0x83, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x33, 0x11, 0x11, 0x01, 0x19, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x28, 0xEF, 0x88, 0x28, 0xCE, 0x28, 0x6C, 0x28, 0x2A, 0xBC, 0x39, 0xDC, 0xFB, 0xE4, 0xDA, 0xDC, 0x98, 0xDC, 0x78, 0xDC, 0x77, 0x02, 0xDC, 0x37, 0x06, 0xDC, 0x57, 0x8A, 0xDC, 0x78, 0xDC, 0xBA, 0xDD, 0x3C, 0x51, 0x2D, 0x30, 0x8C, 0x28, 0xCE, 0x28, 0xEF, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x87, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x11, 0xB7, 0x09, 0xD8, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x89, 0x01, 0xB9, 0x01, + 0xD9, 0x09, 0xB9, 0x09, 0xB8, 0x19, 0xF8, 0x19, 0xD6, 0x09, 0x12, 0x19, 0x32, 0x21, 0x52, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x30, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x21, 0xD6, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x95, 0x01, 0x11, 0x33, 0x01, 0x11, 0x52, 0x87, 0x11, 0x32, 0x11, 0x74, 0x11, 0x95, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x87, 0x09, 0xF9, 0x12, 0x19, 0x11, 0xF8, 0x11, 0x75, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x86, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x21, 0x31, 0x21, 0x52, 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x19, 0x94, 0x01, 0x19, 0xB6, 0x85, 0x21, 0xF7, 0x19, 0xD6, 0x19, + 0x75, 0x19, 0x33, 0x19, 0x32, 0x19, 0x12, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x88, 0x11, 0x32, 0x09, 0x54, 0x1A, 0x18, 0x1A, 0x19, 0x11, 0xF8, 0x11, 0xB6, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x98, 0x19, 0x10, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF8, 0x1A, 0x18, 0x11, 0xF7, 0x11, 0xD7, 0x11, 0xF7, 0x11, 0xD7, 0x11, 0xD6, 0x11, 0xB6, 0x11, 0x74, 0x09, 0x32, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x19, 0x11, 0x02, 0x19, 0x31, 0x01, 0x19, 0x10, 0x80, 0x21, 0x31, 0x02, 0x19, 0x10, 0x83, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x19, 0x11, 0x02, 0x21, 0x11, 0x85, 0x19, 0x10, 0x21, 0x11, 0x19, 0x11, 0x21, 0x31, 0x19, 0x10, 0x21, 0x11, 0x02, 0x19, 0x10, 0x89, 0x21, 0x10, 0x19, 0x10, 0x21, 0x11, 0x19, 0x10, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x10, 0x02, 0x19, 0x11, 0x84, 0x19, 0x10, 0x21, 0x11, 0x21, 0x10, 0x21, 0x11, 0x21, 0x10, 0x03, 0x21, 0x11, 0x85, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x19, 0x10, 0x19, 0x31, 0x19, 0x11, 0x01, 0x21, 0x11, 0x85, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x02, 0x21, 0x31, 0x81, 0x19, 0x11, 0x21, 0x31, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x03, 0x19, 0x10, 0x80, 0x21, 0x31, 0x01, 0x21, + 0x11, 0x80, 0x19, 0x11, 0x01, 0x21, 0x11, 0x84, 0x21, 0x31, 0x19, 0x10, 0x21, 0x11, 0x21, 0x31, 0x19, 0x31, 0x04, 0x19, 0x10, 0x83, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x19, 0x11, 0x01, 0x21, 0x31, 0x83, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x11, 0x02, 0x19, 0x31, 0x81, 0x19, 0x11, 0x21, 0x11, 0x02, 0x19, 0x11, 0x84, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x02, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x82, 0x19, 0x11, 0x19, 0x10, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x96, 0x09, 0x34, 0x09, 0x13, 0x01, 0x11, 0x13, 0x80, 0x19, 0x53, 0x01, 0x19, 0x32, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x10, 0x87, 0x21, 0x30, 0x21, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x93, 0x19, 0x30, 0x19, 0x31, 0x19, 0x52, 0x11, 0x52, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x1A, 0x18, 0x11, 0xF8, 0x1A, 0x19, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x95, 0x11, + 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x52, 0x21, 0x51, 0x02, 0x19, 0x31, 0x85, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB7, 0x11, 0xD8, 0x02, 0x11, 0xF8, 0x84, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x19, 0x53, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x21, 0x51, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x51, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0x95, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x86, 0x19, 0xB6, 0x19, 0x75, 0x19, 0x54, 0x19, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x87, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, + 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x8E, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, + 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x31, 0x80, 0x21, 0x52, 0x03, 0x19, 0x32, 0x80, 0x11, 0x32, 0x01, 0x19, 0x32, 0x82, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x8A, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x50, 0x21, 0x70, 0x21, 0x71, 0x09, 0x0F, 0x01, 0x0F, 0x01, 0xB1, 0x3C, 0x1A, 0x01, 0x34, 0x1A, 0x86, 0x33, 0xD9, 0x0A, 0x12, 0x01, 0x0F, 0x09, 0x30, 0x11, 0x50, 0x19, 0x50, 0x21, 0x50, 0x01, 0x21, 0x30, 0x83, 0x21, 0x50, 0x29, 0x50, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x19, 0x54, 0x11, 0x75, 0x11, 0x76, 0x11, 0x97, 0x11, 0xB8, 0x11, 0xD8, 0x1A, 0x18, 0x01, 0x11, 0xD7, 0x84, 0x11, 0xD6, 0x11, 0x75, 0x11, 0x53, 0x11, 0x52, 0x19, 0x31, 0x01, 0x19, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x52, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD7, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x10, 0x89, 0x21, 0x31, 0x21, 0x32, 0x19, 0x53, 0x11, 0x33, 0x19, 0x54, 0x19, 0x96, 0x21, 0xD7, 0x22, 0x18, 0x21, 0xD7, 0x11, 0x75, 0x01, 0x11, + 0x13, 0x80, 0x19, 0x33, 0x01, 0x21, 0x32, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x87, 0x29, 0x30, 0x21, 0x10, 0x19, 0x31, 0x11, 0x33, 0x11, 0xB6, 0x11, 0xF8, 0x09, 0xD9, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x03, 0x01, 0xDA, 0x85, 0x09, 0xFA, 0x09, 0xF9, 0x11, 0xF8, 0x19, 0xD7, 0x09, 0x12, 0x19, 0x31, 0x02, 0x21, 0x30, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x05, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8A, 0x19, 0x11, 0x11, 0x32, 0x11, 0x12, 0x11, 0x74, 0x21, 0xF6, 0x22, 0x17, 0x22, 0x37, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x11, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x28, 0xEF, 0x88, 0x28, 0xAD, 0x28, 0x2B, 0x8A, 0xF4, 0xDC, 0xFB, 0xDC, 0xDA, 0xDC, 0xB9, 0xDC, 0x98, 0xDC, 0x78, 0xDC, 0x36, 0x02, 0xDC, 0x57, 0x9D, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x58, 0xDC, 0x78, 0xDC, 0xBA, 0xE5, 0x3C, 0x61, 0xCF, 0x28, 0x4B, + 0x28, 0xCE, 0x20, 0xCE, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x19, 0xD7, 0x11, 0xF9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x86, 0x09, 0xDA, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0xD7, 0x19, 0xD6, 0x11, 0x33, 0x11, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x8B, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x11, 0x12, 0x11, 0x13, 0x19, 0xB6, 0x21, 0xF8, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x34, 0x11, 0x12, 0x11, 0x53, 0x01, 0x11, 0x52, 0x85, 0x11, 0x74, 0x11, 0x95, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x8A, 0x01, 0xBA, 0x01, 0xB9, 0x0A, 0x1A, 0x12, 0x19, 0x11, 0xD8, 0x11, 0x75, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, + 0x05, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x01, 0x19, 0xD6, 0x86, 0x19, 0xB6, 0x21, 0xD6, 0x19, 0x95, 0x19, 0x54, 0x19, 0x33, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x11, 0x74, 0x1A, 0x18, 0x12, 0x19, 0x11, 0xF8, 0x11, 0xB6, 0x11, 0x33, 0x11, 0x31, 0x19, 0x31, 0x01, 0x21, 0x30, 0x81, 0x29, 0x50, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x01, 0x21, 0x10, 0x83, 0x21, 0x31, 0x19, 0x31, 0x19, 0x53, 0x11, 0x54, 0x01, 0x11, 0x75, 0x82, 0x11, 0xB6, 0x11, 0xD6, 0x11, 0xB5, 0x01, 0x11, 0x95, 0x82, 0x09, 0x74, 0x11, 0x74, 0x11, 0x53, 0x01, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x10, 0x81, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x19, 0x10, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x09, 0x21, 0x10, 0x80, 0x19, 0x10, 0x05, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x19, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, + 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8E, 0x21, 0x30, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x21, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x34, 0x09, 0x13, 0x09, 0x12, 0x11, 0x32, 0x01, 0x19, 0x32, 0x84, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x19, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x19, 0x31, 0x19, 0x52, 0x01, 0x11, 0x33, 0x8B, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD7, 0x1A, 0x18, 0x12, 0x18, 0x1A, 0x39, 0x1A, 0x18, 0x11, 0xB7, + 0x11, 0x76, 0x09, 0x54, 0x11, 0x33, 0x19, 0x53, 0x01, 0x19, 0x52, 0x03, 0x19, 0x31, 0x84, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB6, 0x01, 0x11, 0xF8, 0x85, 0x12, 0x18, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x74, 0x11, 0x33, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x84, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8E, 0x19, 0x10, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x19, 0x95, 0x21, 0xD7, 0x21, 0xF7, 0x19, 0xF7, 0x19, 0xB6, 0x19, 0x75, 0x11, 0x53, 0x11, 0x32, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x8A, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x01, + 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x86, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x89, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, + 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x21, 0x32, 0x19, 0x32, 0x01, 0x19, 0x33, 0x81, 0x11, 0x33, 0x11, 0x53, 0x02, 0x11, 0x33, 0x81, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x02, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x50, 0x11, 0x0F, 0x01, 0x01, 0x0F, 0x88, 0x2B, 0x57, 0x2B, 0xF9, 0x2C, 0x3A, 0x24, 0x19, 0x2C, 0x19, 0x2B, 0x98, 0x01, 0x91, 0x01, 0x30, 0x09, 0x0F, 0x01, 0x19, 0x50, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0x54, 0x11, 0x54, 0x01, 0x11, 0x55, 0x88, 0x19, 0x95, 0x19, 0x75, 0x11, 0x54, 0x11, 0x53, 0x11, 0x12, 0x11, 0x11, 0x19, 0x51, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8C, 0x19, 0x32, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD7, 0x22, 0x17, 0x19, 0xF7, 0x21, 0xD6, 0x11, 0x74, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x29, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x8F, 0x21, 0x31, 0x21, 0x32, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x18, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x13, 0x19, + 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x31, 0x11, 0x32, 0x11, 0x95, 0x09, 0xD7, 0x09, 0xB8, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xDB, 0x02, 0x01, 0xDA, 0x01, 0x09, 0xFA, 0x87, 0x09, 0xD9, 0x11, 0xF8, 0x11, 0x95, 0x09, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x51, 0x21, 0x31, 0x21, 0x52, 0x19, 0x11, 0x01, 0x11, 0x11, 0x82, 0x11, 0x32, 0x19, 0x74, 0x21, 0xD6, 0x01, 0x22, 0x17, 0x87, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x12, 0x10, 0xF1, 0x18, 0xF1, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x06, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x85, 0x28, 0xCE, 0x20, 0x4B, 0x40, 0xED, 0xD4, 0xDB, 0xD4, 0xDA, 0xDC, 0xB9, 0x01, 0xDC, 0x78, 0x83, 0xDC, 0x77, 0xDC, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0x03, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x8A, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x78, 0xDC, 0xB9, 0xDD, 0x1B, 0xAB, 0xF8, 0x20, 0x2A, 0x30, 0xEE, 0x28, 0xCE, 0x20, 0xEF, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, + 0x21, 0x31, 0x86, 0x19, 0x11, 0x19, 0x32, 0x11, 0x74, 0x11, 0xB7, 0x09, 0xF8, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x8E, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xB9, 0x09, 0xB9, 0x11, 0xF9, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x85, 0x19, 0x30, 0x19, 0x31, 0x11, 0x12, 0x11, 0x13, 0x19, 0xB6, 0x21, 0xF7, 0x01, 0x19, 0xB6, 0x81, 0x11, 0x54, 0x11, 0x12, 0x02, 0x11, 0x52, 0x85, 0x11, 0x53, 0x11, 0x95, 0x11, 0x96, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xB9, 0x04, 0x01, 0xDA, 0x8D, 0x01, 0xBA, 0x01, 0xB9, 0x09, 0xF9, 0x12, 0x19, 0x11, 0xD8, 0x11, 0x75, 0x11, 0x12, 0x19, 0x32, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, + 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x37, 0x19, 0xB6, 0x01, 0x19, 0x95, 0x85, 0x19, 0x54, 0x19, 0x33, 0x19, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x09, 0x33, 0x09, 0x75, 0x11, 0xF8, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xB7, 0x09, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x19, 0x11, 0x19, 0x32, 0x02, 0x19, 0x53, 0x82, 0x11, 0x53, 0x19, 0x74, 0x11, 0x53, 0x01, 0x11, 0x33, 0x81, 0x19, 0x53, 0x11, 0x32, 0x01, 0x19, 0x32, 0x80, 0x19, 0x11, 0x02, 0x19, 0x10, 0x09, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x0C, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x0A, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x07, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, + 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x09, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x90, 0x21, 0x31, 0x21, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x53, 0x19, 0x95, 0x19, 0xD6, 0x21, 0xD7, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x13, 0x08, 0xF1, 0x11, 0x11, 0x19, 0x31, 0x19, 0x51, 0x01, 0x19, 0x30, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x83, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x01, 0x11, 0x54, 0x88, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF8, 0x12, 0x19, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0x96, 0x09, 0x54, 0x01, 0x11, 0x53, 0x01, 0x19, 0x52, 0x80, 0x21, 0x51, 0x02, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x96, 0x11, 0xB7, 0x01, 0x11, 0xF8, 0x89, 0x1A, 0x19, 0x1A, 0x18, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x30, 0x03, 0x21, 0x30, 0x91, 0x21, 0x2F, 0x21, 0x50, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x19, 0x95, 0x19, 0xD6, 0x22, 0x18, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0x94, 0x11, 0x53, + 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x88, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x05, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x03, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x0A, 0x21, 0x10, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, + 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x88, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x50, 0x02, 0x21, 0x30, 0x80, 0x19, 0x11, 0x01, 0x19, 0x32, 0x82, 0x11, 0x33, 0x11, 0x54, 0x11, 0x74, 0x03, 0x11, 0x95, 0x83, 0x11, 0x75, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x31, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x50, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x19, 0x50, 0x11, 0x2F, 0x01, 0x0F, 0x01, 0xD1, 0x2B, 0xD9, 0x01, 0x24, 0x19, 0x8C, 0x1B, 0xF9, 0x24, 0x19, 0x2C, 0x19, 0x1A, 0xD5, 0x01, 0x50, 0x01, 0x2F, 0x11, 0x0F, 0x19, 0x70, + 0x19, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x80, 0x19, 0x31, 0x02, 0x19, 0x32, 0x81, 0x19, 0x33, 0x11, 0x13, 0x01, 0x11, 0x12, 0x81, 0x11, 0x32, 0x11, 0x12, 0x01, 0x19, 0x31, 0x02, 0x19, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x87, 0x21, 0x10, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x84, 0x21, 0xD6, 0x19, 0x94, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x11, 0x82, 0x21, 0x10, 0x29, 0x31, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x8B, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0x75, 0x19, 0xB6, 0x21, 0xD7, 0x22, 0x18, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x34, 0x11, 0x33, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x31, 0x19, 0x32, 0x11, 0x95, 0x11, 0xF8, 0x09, 0xB8, 0x09, 0xD9, 0x01, 0xDA, 0x09, 0xFA, 0x01, 0x01, 0xDA, 0x89, 0x01, 0xFB, 0x01, 0xFA, 0x01, 0xDA, 0x09, 0xFA, 0x09, 0xD9, 0x11, 0xD8, + 0x19, 0xD7, 0x11, 0x74, 0x11, 0x12, 0x19, 0x31, 0x02, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x31, 0x21, 0x52, 0x19, 0x31, 0x19, 0x11, 0x01, 0x11, 0x12, 0x81, 0x11, 0x54, 0x21, 0xF6, 0x01, 0x22, 0x17, 0x86, 0x21, 0xF6, 0x19, 0x94, 0x11, 0x32, 0x10, 0xF1, 0x18, 0xF1, 0x18, 0xF0, 0x21, 0x11, 0x04, 0x21, 0x10, 0x02, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0x8D, 0x18, 0x09, 0x9B, 0x55, 0xDC, 0xFB, 0x01, 0xDC, 0xB9, 0x81, 0xDC, 0x58, 0xDC, 0x78, 0x02, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x81, 0xDC, 0x16, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x85, 0xDC, 0x57, 0xE4, 0x78, 0xDC, 0xB9, 0xDC, 0xDA, 0xCC, 0xFB, 0x20, 0x09, 0x01, 0x28, 0xCE, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x31, 0x19, 0x32, 0x11, 0x54, 0x19, 0xD7, 0x11, 0xF8, 0x09, 0xF9, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x02, 0x01, 0xB9, 0x86, 0x09, 0xD9, 0x11, 0xF9, 0x1A, 0x17, 0x19, 0xB5, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, + 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x89, 0x19, 0x30, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x01, 0x11, 0x52, 0x84, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xD7, 0x01, 0x09, 0xD9, 0x83, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x89, 0x09, 0xF9, 0x12, 0x19, 0x11, 0xB7, 0x11, 0x54, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x10, 0x87, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x08, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xF6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x34, 0x11, 0x33, 0x19, 0x33, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x09, 0x34, 0x09, 0x75, 0x11, 0xF8, 0x01, 0x11, + 0xF9, 0x82, 0x11, 0xD8, 0x09, 0x54, 0x11, 0x33, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x81, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x32, 0x81, 0x19, 0x11, 0x19, 0x31, 0x02, 0x19, 0x11, 0x81, 0x21, 0x30, 0x19, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x06, 0x21, 0x10, 0x87, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, + 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x01, 0x11, 0x33, 0x85, 0x19, 0x95, 0x21, 0xD6, 0x21, 0xD7, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x01, 0x11, 0x12, 0x80, 0x19, 0x31, 0x01, 0x19, 0x51, 0x02, 0x19, 0x30, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x30, 0x85, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x31, 0x19, 0x12, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xF8, 0x12, 0x19, 0x01, 0x11, 0xF8, 0x85, 0x11, 0xD7, 0x09, 0x95, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x52, 0x01, 0x19, 0x51, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x84, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x76, 0x11, 0xB7, 0x01, 0x11, 0xF8, 0x86, 0x1A, 0x19, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x29, + 0x30, 0x21, 0x31, 0x01, 0x19, 0x11, 0x82, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x02, 0x19, 0xD6, 0x82, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x53, 0x01, 0x11, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x51, 0x09, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x05, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x22, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x07, 0x21, 0x10, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x07, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x20, 0xF0, 0x21, 0x10, 0x29, 0x30, 0x06, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, + 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x8A, 0x21, 0x2F, 0x21, 0x0F, 0x19, 0x10, 0x19, 0x30, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x11, 0x75, 0x19, 0xB6, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x12, 0x18, 0x87, 0x11, 0xF8, 0x11, 0xF7, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x53, 0x19, 0x52, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x86, 0x19, 0x30, 0x19, 0x50, 0x09, 0x2F, 0x01, 0x4F, 0x2B, 0x57, 0x23, 0xF9, 0x1C, 0x19, 0x01, 0x13, 0xF9, 0x86, 0x1C, 0x19, 0x24, 0x3A, 0x2B, 0xB8, 0x01, 0xB1, 0x01, 0x4F, 0x09, 0x2F, 0x19, 0x70, 0x01, 0x21, 0x50, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x52, 0x80, 0x19, 0x11, 0x01, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, + 0x21, 0x10, 0x82, 0x21, 0x31, 0x21, 0x32, 0x19, 0x12, 0x01, 0x11, 0x33, 0x81, 0x11, 0x95, 0x19, 0xF6, 0x01, 0x22, 0x37, 0x90, 0x21, 0xD6, 0x19, 0x94, 0x11, 0x33, 0x10, 0xF1, 0x19, 0x11, 0x18, 0xF0, 0x21, 0x11, 0x21, 0x30, 0x29, 0x30, 0x29, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x86, 0x21, 0x31, 0x21, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x55, 0x19, 0xB7, 0x01, 0x22, 0x18, 0x85, 0x21, 0xF8, 0x11, 0x75, 0x09, 0x13, 0x11, 0x33, 0x19, 0x33, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x8D, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x11, 0x54, 0x19, 0xD7, 0x11, 0xD8, 0x09, 0xD9, 0x09, 0xB9, 0x09, 0xDA, 0x01, 0xBA, 0x01, 0xB9, 0x09, 0xFA, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x85, 0x09, 0xD8, 0x11, 0xD8, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x01, 0x11, 0x12, 0x8B, 0x11, 0x54, 0x21, 0xF6, 0x22, 0x17, 0x22, + 0x37, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x32, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x29, 0x0F, 0x28, 0xEF, 0x20, 0xAD, 0x28, 0x6B, 0x49, 0x0D, 0xDD, 0x3C, 0xDC, 0xDA, 0xDC, 0xB9, 0xDC, 0x78, 0x01, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x83, 0xDC, 0x16, 0xE4, 0x37, 0xDC, 0x37, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x88, 0xDC, 0x57, 0xDC, 0x78, 0xDC, 0x99, 0xDC, 0xFB, 0xAB, 0xB7, 0x28, 0x6B, 0x28, 0xAD, 0x28, 0xCE, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x84, 0x11, 0x33, 0x11, 0x75, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xF9, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x87, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xF8, 0x22, 0x17, 0x19, 0x94, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x8B, 0x19, 0x30, + 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xD6, 0x22, 0x18, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x52, 0x19, 0x52, 0x01, 0x11, 0x32, 0x85, 0x11, 0x73, 0x11, 0xB5, 0x11, 0xB7, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x92, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x21, 0x2F, 0x81, 0x29, 0x50, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x19, 0x31, 0x11, 0x32, 0x11, 0x12, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x13, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x09, 0x34, 0x09, 0x96, 0x11, 0xF9, 0x01, 0x09, 0xF9, 0x85, 0x09, 0xD8, 0x09, 0x75, 0x09, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x11, 0x04, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x04, 0x19, 0x11, 0x01, 0x21, + 0x11, 0x81, 0x21, 0x10, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x80, 0x29, 0x4F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x8A, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, + 0x19, 0x95, 0x21, 0xF6, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x75, 0x11, 0x13, 0x01, 0x11, 0x12, 0x85, 0x19, 0x31, 0x21, 0x52, 0x19, 0x51, 0x21, 0x51, 0x21, 0x30, 0x19, 0x2F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x8C, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x55, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x12, 0x19, 0x86, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x54, 0x11, 0x53, 0x11, 0x32, 0x19, 0x52, 0x01, 0x19, 0x51, 0x02, 0x19, 0x31, 0x85, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x19, 0xF8, 0x02, 0x11, 0xF8, 0x84, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x11, 0x85, 0x18, 0xF1, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x19, 0xD6, 0x19, 0xF6, 0x01, 0x19, 0xD6, 0x81, 0x11, 0x74, 0x11, 0x53, 0x01, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x51, 0x80, 0x21, 0x31, 0x0A, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x0A, 0x21, 0x10, 0x01, 0x21, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x1E, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, + 0x21, 0x30, 0x0D, 0x21, 0x10, 0x80, 0x21, 0x30, 0x20, 0x21, 0x10, 0x80, 0x21, 0x30, 0x1C, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x08, 0x21, 0x10, 0x01, 0x21, 0x30, 0x14, 0x21, 0x10, 0x80, 0x29, 0x10, 0x0D, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x08, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x86, 0x19, 0x10, 0x19, 0x30, 0x19, 0x31, 0x19, 0x52, 0x19, 0x74, 0x19, 0x95, 0x11, 0xD6, 0x01, 0x11, 0xF8, 0x8B, 0x09, 0xF8, 0x09, 0xD8, 0x09, 0xF9, 0x09, 0xF8, 0x12, 0x18, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB5, 0x19, 0x94, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x84, 0x11, 0x2F, 0x09, 0x2F, 0x01, 0xD1, 0x33, 0xF9, 0x23, 0xF9, 0x02, 0x14, 0x19, 0x87, 0x13, 0xF9, 0x24, 0x3A, 0x2C, 0x3A, 0x12, 0xD4, 0x01, 0x50, 0x01, 0x2F, 0x11, 0x2F, 0x21, 0x50, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x31, 0x19, 0x10, 0x19, 0x11, 0x21, 0x31, 0x01, 0x19, 0x11, 0x81, 0x21, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x11, 0x84, + 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x02, 0x22, 0x17, 0x87, 0x21, 0xF6, 0x19, 0x54, 0x19, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x29, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x32, 0x11, 0x32, 0x11, 0x34, 0x11, 0x75, 0x19, 0xB7, 0x01, 0x22, 0x18, 0x81, 0x19, 0xD7, 0x11, 0x75, 0x01, 0x11, 0x33, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x19, 0x11, 0x11, 0x32, 0x19, 0x95, 0x11, 0xD7, 0x11, 0xF9, 0x03, 0x09, 0xB9, 0x01, 0x01, 0xB9, 0x88, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0xF8, 0x19, 0xD7, 0x11, 0x94, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x89, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x19, 0x10, 0x21, 0x31, 0x21, 0x32, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x21, 0xD6, 0x01, 0x22, 0x17, 0x86, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x32, 0x10, 0xF1, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, + 0x21, 0x0F, 0x80, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x8A, 0x21, 0x0F, 0x29, 0x0F, 0x20, 0xCE, 0x28, 0xAD, 0x28, 0x2A, 0xAB, 0xF8, 0xDC, 0xFB, 0xDC, 0xB9, 0xD4, 0x78, 0xD4, 0x57, 0xDC, 0x78, 0x02, 0xDC, 0x37, 0x83, 0xE4, 0x57, 0xDC, 0x16, 0xE4, 0x57, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x8B, 0xDC, 0x16, 0xDC, 0x37, 0xE4, 0x78, 0xDC, 0x37, 0xE4, 0x78, 0xDC, 0x99, 0xDC, 0xBA, 0x8A, 0xD4, 0x30, 0x8C, 0x28, 0xAD, 0x28, 0xEE, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x11, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x54, 0x11, 0xB6, 0x11, 0xD8, 0x03, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x89, 0x09, 0xD9, 0x11, 0xF8, 0x11, 0xD8, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x89, 0x21, 0x30, 0x21, 0x50, 0x19, 0x30, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB6, 0x22, 0x18, 0x19, 0xD7, 0x19, 0xB6, 0x01, 0x11, 0x33, 0x01, 0x19, 0x52, 0x88, 0x11, 0x32, 0x11, 0x52, 0x11, 0x73, 0x11, 0x95, 0x11, 0xB6, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xF9, 0x0A, 0x19, 0x01, + 0x09, 0xF9, 0x81, 0x09, 0xD8, 0x09, 0xF8, 0x01, 0x11, 0xF8, 0x85, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x07, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x84, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0x74, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x88, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x75, 0x09, 0x76, 0x09, 0xB8, 0x02, 0x09, 0xF9, 0x89, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0x95, 0x11, 0x74, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x19, 0x10, 0x08, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, + 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0E, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x19, 0x32, 0x88, 0x11, 0x12, 0x11, 0x54, 0x19, 0x95, 0x21, 0xD6, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x50, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x09, 0x21, 0x2F, 0x84, + 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x93, 0x21, 0x30, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x09, 0x96, 0x11, 0xB7, 0x11, 0xF8, 0x12, 0x19, 0x1A, 0x39, 0x11, 0xF8, 0x09, 0xB6, 0x09, 0x75, 0x09, 0x53, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x51, 0x03, 0x19, 0x31, 0x8B, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xD8, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x54, 0x01, 0x11, 0x32, 0x82, 0x19, 0x51, 0x21, 0x71, 0x21, 0x30, 0x01, 0x21, 0x50, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8E, 0x21, 0x11, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x21, 0xF6, 0x19, 0xD6, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x53, 0x11, 0x12, 0x11, 0x11, 0x19, 0x32, 0x19, 0x31, 0x07, 0x21, 0x31, 0x80, 0x21, 0x51, 0x02, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x02, 0x21, 0x10, 0x80, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x11, 0x21, 0x30, 0x21, + 0x10, 0x01, 0x21, 0x11, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x31, 0x0A, 0x21, 0x10, 0x01, 0x21, 0x11, 0x04, 0x21, 0x10, 0x80, 0x21, 0x11, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x11, 0x05, 0x21, 0x10, 0x80, 0x21, 0x11, 0x03, 0x21, 0x10, 0x01, 0x21, 0x11, 0x81, 0x21, 0x10, 0x21, 0x11, 0x02, 0x21, 0x10, 0x84, 0x21, 0x11, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x21, 0x11, 0x02, 0x21, 0x10, 0x80, 0x21, 0x11, 0x0A, 0x21, 0x10, 0x84, 0x21, 0x11, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x21, 0x11, 0x12, 0x21, 0x10, 0x81, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x11, 0x07, 0x21, 0x10, 0x80, 0x19, 0x10, 0x01, 0x19, 0x31, 0x01, 0x19, 0x52, 0x85, 0x19, 0x74, 0x11, 0x95, 0x11, 0xD6, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x88, 0x09, 0xF9, 0x09, 0xD9, 0x0A, 0x19, 0x12, 0x19, 0x11, 0xF8, 0x11, 0xD7, 0x19, 0xD5, 0x11, 0x73, 0x11, 0x11, 0x01, 0x21, 0x31, 0x02, + 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x03, 0x21, 0x2F, 0x90, 0x19, 0x4F, 0x11, 0x2F, 0x01, 0x2F, 0x12, 0xB4, 0x2C, 0x19, 0x24, 0x39, 0x14, 0x19, 0x0B, 0xF8, 0x14, 0x19, 0x13, 0xF8, 0x1C, 0x19, 0x2C, 0x39, 0x34, 0x3A, 0x01, 0xF2, 0x01, 0x2F, 0x09, 0x0F, 0x19, 0x2F, 0x02, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x31, 0x21, 0x10, 0x21, 0x11, 0x21, 0x51, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x32, 0x19, 0x52, 0x11, 0x32, 0x11, 0x53, 0x11, 0x94, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x8A, 0x21, 0xD6, 0x19, 0x54, 0x19, 0x33, 0x19, 0x12, 0x18, 0xF1, 0x21, 0x11, 0x21, 0x10, 0x29, 0x51, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x8A, 0x21, 0x51, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x19, 0xB7, 0x21, 0xF8, 0x22, 0x18, 0x21, 0xD7, 0x11, 0x75, 0x01, 0x11, 0x33, 0x80, 0x19, 0x52, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x05, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x05, 0x29, 0x30, 0x8C, 0x21, 0x10, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x19, 0x31, 0x19, 0x12, 0x11, 0x33, 0x19, 0x96, 0x19, 0xF8, + 0x1A, 0x19, 0x01, 0x11, 0xF9, 0x89, 0x09, 0xD9, 0x11, 0xF9, 0x12, 0x19, 0x1A, 0x19, 0x1A, 0x38, 0x22, 0x17, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x11, 0x19, 0x11, 0x01, 0x19, 0x12, 0x8C, 0x11, 0x13, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x21, 0x10, 0x29, 0x51, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x20, 0xAD, 0x18, 0x2A, 0x61, 0xD0, 0xDD, 0x3C, 0xD4, 0xB9, 0xDC, 0x99, 0x01, 0xDC, 0x78, 0x01, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xDC, 0x36, 0x03, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x8B, 0xDC, 0x37, 0xDC, 0x57, 0xE4, 0x57, 0xDC, 0x57, 0xDC, 0x78, 0xDC, 0x99, 0xDC, 0xDB, 0x7A, 0x31, 0x20, 0x2A, 0x28, 0xCD, 0x20, 0xCE, 0x20, 0xEF, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x31, 0x87, 0x19, 0x31, 0x19, 0x32, 0x19, 0x94, 0x21, 0xF6, 0x11, 0xF7, 0x11, 0xF8, 0x11, 0xD8, 0x09, 0xD8, 0x01, 0x11, 0xF9, 0x89, 0x11, 0xD8, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x55, 0x11, 0x13, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, + 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x8B, 0x21, 0x30, 0x21, 0x50, 0x19, 0x30, 0x19, 0x11, 0x11, 0x12, 0x11, 0x34, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x95, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x11, 0x31, 0x86, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xF8, 0x1A, 0x19, 0x03, 0x11, 0xF8, 0x86, 0x11, 0xF7, 0x11, 0xB6, 0x11, 0x95, 0x19, 0x54, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x06, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x19, 0x74, 0x19, 0xB5, 0x01, 0x21, 0xF7, 0x87, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x19, 0x53, 0x19, 0x52, 0x19, 0x32, 0x21, 0x52, 0x19, 0x11, 0x02, 0x19, 0x10, 0x01, 0x21, 0x30, 0x86, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0xB6, 0x09, 0xB7, + 0x01, 0x09, 0xD9, 0x80, 0x09, 0xFA, 0x01, 0x09, 0xD9, 0x83, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0xB6, 0x11, 0x54, 0x01, 0x19, 0x32, 0x83, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x86, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x01, 0x21, + 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x29, 0x51, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x10, 0xF1, 0x11, 0x13, 0x11, 0x54, 0x19, 0x95, 0x19, 0xD6, 0x01, 0x21, 0xD6, 0x82, 0x19, 0x95, 0x11, 0x12, 0x10, 0xF2, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x19, 0x30, 0x80, 0x19, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x2E, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x30, 0x21, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x01, 0x11, 0xB7, 0x80, 0x11, 0xF8, 0x01, 0x12, 0x18, 0x86, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x01, 0x19, 0x51, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x76, 0x01, 0x11, 0xB7, 0x01, 0x11, 0xF8, 0x8B, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x51, 0x19, 0x31, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x87, 0x29, 0x51, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x19, 0xB5, 0x01, 0x21, 0xD6, 0x82, 0x19, 0xB5, 0x19, 0x74, + 0x11, 0x53, 0x01, 0x11, 0x12, 0x80, 0x11, 0x11, 0x03, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x04, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x11, 0x82, 0x19, 0x11, 0x21, 0x11, 0x19, 0x11, 0x02, 0x19, 0x31, 0x01, 0x21, 0x11, 0x05, 0x21, 0x31, 0x80, 0x19, 0x10, 0x05, 0x21, 0x11, 0x04, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x19, 0x31, 0x05, 0x21, 0x31, 0x01, 0x21, 0x11, 0x83, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x03, 0x21, 0x31, 0x81, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x01, 0x21, 0x11, 0x81, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x11, 0x83, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x21, 0x11, 0x21, 0x31, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, 0x82, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x21, 0x31, 0x05, 0x19, 0x31, 0x80, 0x19, 0x10, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x06, 0x21, 0x11, 0x80, 0x19, 0x11, 0x03, 0x21, 0x11, 0x80, 0x19, 0x11, 0x02, 0x21, 0x11, 0x80, 0x19, 0x11, 0x02, 0x21, 0x11, 0x80, 0x21, 0x31, 0x05, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x11, 0x83, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x21, 0x11, 0x06, 0x19, 0x11, 0x83, 0x21, 0x11, 0x19, 0x11, 0x21, 0x11, 0x19, 0x11, 0x03, 0x21, 0x11, 0x80, 0x19, 0x11, 0x08, 0x21, 0x11, 0x07, 0x19, 0x11, 0x01, 0x21, 0x11, 0x80, 0x19, 0x11, 0x01, 0x21, + 0x11, 0x80, 0x19, 0x11, 0x09, 0x21, 0x11, 0x03, 0x19, 0x11, 0x04, 0x21, 0x11, 0x80, 0x19, 0x11, 0x06, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x21, 0x11, 0x82, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x11, 0x80, 0x19, 0x11, 0x01, 0x21, 0x11, 0x80, 0x19, 0x11, 0x03, 0x21, 0x11, 0x81, 0x19, 0x11, 0x21, 0x11, 0x02, 0x19, 0x11, 0x80, 0x21, 0x11, 0x05, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x11, 0x32, 0x87, 0x11, 0x53, 0x09, 0x54, 0x09, 0x96, 0x09, 0xB7, 0x09, 0xD8, 0x01, 0xD8, 0x01, 0xD9, 0x01, 0xF9, 0x03, 0x01, 0xD9, 0x89, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0xD6, 0x11, 0x74, 0x19, 0x12, 0x19, 0x11, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x08, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x19, 0x2F, 0x83, 0x11, 0x2F, 0x01, 0x90, 0x2B, 0x98, 0x24, 0x19, 0x01, 0x13, 0xF8, 0x81, 0x0B, 0xF8, 0x0B, 0xF9, 0x01, 0x14, 0x19, 0x85, 0x2C, 0x5A, 0x3C, 0x7A, 0x1A, 0xD5, 0x01, 0x50, 0x09, 0x0F, 0x19, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x50, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x03, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x31, 0x81, 0x19, 0x31, 0x19, 0x32, 0x01, 0x11, 0x53, 0x8E, 0x11, 0x95, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF6, 0x21, 0xB5, 0x21, 0x95, 0x19, 0x53, + 0x19, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x29, 0x51, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x32, 0x8D, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x11, 0x74, 0x11, 0x53, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0E, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x95, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x19, 0x31, 0x19, 0x12, 0x11, 0x33, 0x19, 0x96, 0x11, 0xB7, 0x19, 0xD8, 0x22, 0x19, 0x19, 0xF9, 0x22, 0x39, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x01, 0x19, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x08, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x90, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x12, 0x11, 0x13, 0x19, 0x54, 0x21, 0xF6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x09, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x20, 0xCE, 0x20, 0x6C, 0x20, 0x09, + 0xCC, 0xDB, 0xD4, 0xDA, 0x01, 0xDC, 0x99, 0x80, 0xDC, 0x78, 0x02, 0xDC, 0x57, 0x81, 0xDC, 0x36, 0xE4, 0x57, 0x03, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x8B, 0xE4, 0x78, 0xDC, 0x58, 0xDC, 0x78, 0xDC, 0xDA, 0x7A, 0x51, 0x18, 0x09, 0x28, 0xEE, 0x28, 0xCE, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x31, 0x19, 0x73, 0x21, 0xD5, 0x19, 0xB5, 0x01, 0x19, 0xD7, 0x87, 0x19, 0xD8, 0x11, 0xD8, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x55, 0x11, 0x33, 0x01, 0x19, 0x12, 0x81, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xD7, 0x19, 0x95, 0x01, 0x11, 0x33, 0x80, 0x19, 0x52, 0x02, 0x19, 0x31, 0x85, 0x11, 0x32, 0x19, 0x73, 0x19, 0x94, 0x19, 0x95, 0x11, 0x95, 0x19, 0xB6, 0x01, 0x11, 0xD7, 0x8E, 0x19, 0xF7, 0x11, 0xD7, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x74, 0x19, 0x33, + 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x50, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x8C, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x19, 0x54, 0x21, 0xB5, 0x21, 0xF6, 0x21, 0xF7, 0x21, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x01, 0x11, 0x32, 0x83, 0x19, 0x32, 0x19, 0x51, 0x19, 0x31, 0x21, 0x30, 0x02, 0x19, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x51, 0x84, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xD7, 0x01, 0x09, 0xD9, 0x8C, 0x09, 0xFA, 0x01, 0xDA, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x86, 0x29, 0x30, 0x21, 0x10, + 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x06, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x11, 0x11, 0x12, 0x19, 0x33, 0x19, 0x54, 0x19, 0x95, 0x19, 0xD6, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x01, 0x19, 0x11, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, + 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x2E, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x93, 0x29, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xF8, 0x12, 0x18, 0x1A, 0x18, 0x11, 0xF8, 0x19, 0xF7, 0x09, 0x75, 0x09, 0x33, 0x11, 0x33, 0x11, 0x12, 0x19, 0x52, 0x02, 0x19, 0x31, 0x86, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x97, 0x01, 0x11, 0xD8, 0x80, 0x11, 0xF8, 0x01, 0x11, 0xD7, 0x86, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x10, 0x90, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x51, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x19, 0x74, 0x19, 0x95, 0x19, 0xB6, 0x21, 0xD6, 0x19, 0xB5, 0x19, 0x95, 0x11, 0x74, 0x11, 0x33, 0x03, 0x11, 0x12, 0x01, 0x11, 0x11, 0x02, 0x11, 0x12, 0x81, 0x19, 0x32, 0x11, 0x12, 0x01, 0x19, 0x12, 0x81, 0x19, 0x32, 0x19, 0x12, 0x02, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x03, 0x19, 0x12, 0x05, 0x19, 0x32, 0x02, 0x19, 0x12, 0x80, 0x19, 0x32, 0x01, 0x19, 0x12, 0x82, 0x19, 0x11, 0x19, 0x32, 0x19, 0x11, 0x03, 0x19, 0x12, 0x02, 0x19, 0x32, 0x01, 0x19, 0x12, 0x80, 0x19, 0x11, 0x05, 0x19, 0x32, 0x80, 0x19, 0x12, 0x03, 0x19, 0x32, + 0x80, 0x19, 0x12, 0x07, 0x19, 0x32, 0x02, 0x19, 0x12, 0x0B, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x04, 0x19, 0x31, 0x81, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x32, 0x02, 0x19, 0x31, 0x02, 0x19, 0x32, 0x82, 0x19, 0x12, 0x19, 0x31, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x04, 0x19, 0x32, 0x08, 0x19, 0x11, 0x80, 0x19, 0x32, 0x01, 0x19, 0x12, 0x81, 0x19, 0x11, 0x19, 0x32, 0x02, 0x19, 0x12, 0x80, 0x19, 0x11, 0x03, 0x19, 0x12, 0x02, 0x19, 0x32, 0x01, 0x19, 0x12, 0x02, 0x19, 0x11, 0x80, 0x19, 0x12, 0x03, 0x19, 0x32, 0x80, 0x19, 0x12, 0x02, 0x19, 0x32, 0x01, 0x19, 0x12, 0x80, 0x19, 0x32, 0x05, 0x19, 0x12, 0x80, 0x19, 0x32, 0x06, 0x19, 0x12, 0x01, 0x19, 0x32, 0x05, 0x19, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x12, 0x80, 0x19, 0x32, 0x03, 0x19, 0x12, 0x80, 0x19, 0x11, 0x01, 0x19, 0x12, 0x80, 0x19, 0x32, 0x02, 0x19, 0x12, 0x82, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x06, 0x19, 0x12, 0x82, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x02, 0x19, 0x12, 0x81, 0x19, 0x32, 0x19, 0x11, 0x01, 0x19, 0x12, 0x02, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x11, 0x81, 0x19, 0x32, 0x19, 0x12, 0x07, 0x19, 0x11, 0x01, 0x11, 0x11, 0x82, 0x19, 0x11, 0x11, 0x11, 0x10, 0xF1, 0x04, 0x11, 0x12, 0x89, 0x09, 0x33, 0x09, 0x54, 0x11, 0x96, 0x09, 0xB7, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0x01, 0xFA, 0x87, 0x09, 0xFA, 0x09, 0xD9, 0x09, + 0xB8, 0x09, 0xB7, 0x11, 0xB6, 0x19, 0x95, 0x11, 0x32, 0x21, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x2F, 0x87, 0x19, 0x2F, 0x11, 0x2F, 0x01, 0x0E, 0x12, 0x32, 0x33, 0xF9, 0x23, 0xF8, 0x13, 0xF8, 0x14, 0x19, 0x02, 0x0B, 0xF9, 0x89, 0x13, 0xD8, 0x24, 0x39, 0x3C, 0x7B, 0x33, 0x98, 0x01, 0x70, 0x09, 0x2F, 0x19, 0x30, 0x21, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x19, 0x51, 0x01, 0x11, 0x32, 0x82, 0x11, 0x73, 0x11, 0x94, 0x19, 0xB6, 0x01, 0x22, 0x17, 0x88, 0x21, 0xB6, 0x19, 0x95, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x19, 0x10, 0x21, 0x31, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x04, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x11, 0x74, 0x11, 0x53, 0x11, 0x33, 0x01, 0x19, 0x32, 0x83, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, + 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x53, 0x01, 0x11, 0x34, 0x80, 0x11, 0x35, 0x02, 0x11, 0x34, 0x01, 0x11, 0x33, 0x83, 0x19, 0x73, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x92, 0x11, 0x32, 0x11, 0x33, 0x21, 0xB6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x09, 0x13, 0x08, 0xF1, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x86, 0x20, 0xEE, 0x20, 0x8D, 0x28, 0x4B, 0x8A, 0xF5, 0xDD, 0x3C, 0xDC, 0xBA, 0xDC, 0x99, 0x01, 0xDC, 0x78, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x81, 0xDC, 0x37, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x8B, 0xE4, 0x78, 0xDC, 0x99, 0xE4, 0xDA, 0xA3, 0x76, 0x20, 0x09, 0x28, 0xAD, 0x28, 0xCE, 0x20, 0xEE, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x20, 0xEF, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x88, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x19, 0x54, 0x19, 0x75, 0x09, + 0x34, 0x11, 0x55, 0x19, 0xB6, 0x01, 0x19, 0x95, 0x84, 0x19, 0x74, 0x19, 0x33, 0x19, 0x32, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x30, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x22, 0x18, 0x19, 0xD7, 0x19, 0x95, 0x01, 0x11, 0x33, 0x81, 0x19, 0x52, 0x19, 0x51, 0x01, 0x19, 0x31, 0x81, 0x19, 0x51, 0x19, 0x52, 0x01, 0x19, 0x73, 0x82, 0x11, 0x53, 0x19, 0x74, 0x11, 0x74, 0x01, 0x19, 0x95, 0x86, 0x11, 0x75, 0x19, 0x75, 0x19, 0x74, 0x19, 0x53, 0x19, 0x32, 0x18, 0xF1, 0x19, 0x11, 0x01, 0x21, 0x31, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x85, 0x19, 0x10, 0x19, + 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0x74, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x84, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x31, 0x84, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x18, 0xEF, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x19, 0x30, 0x21, 0x52, 0x19, 0x32, 0x11, 0x33, 0x19, 0x95, 0x11, 0xD7, 0x11, 0xD8, 0x09, 0xF9, 0x09, 0xFA, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x89, 0x01, 0xD9, 0x09, 0xF9, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x21, 0x32, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, + 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x31, 0x10, 0xF1, 0x11, 0x12, 0x19, 0x33, 0x11, 0x53, 0x19, 0x95, 0x21, 0xD6, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x19, 0x54, 0x11, 0x32, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0E, 0x06, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x93, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xF8, 0x1A, 0x18, + 0x1A, 0x19, 0x19, 0xF8, 0x11, 0xD7, 0x11, 0x95, 0x09, 0x54, 0x11, 0x32, 0x11, 0x12, 0x04, 0x19, 0x31, 0x85, 0x19, 0x12, 0x19, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x03, 0x11, 0xF8, 0x86, 0x11, 0xD7, 0x11, 0x95, 0x09, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x04, 0x21, 0x30, 0x82, 0x29, 0x50, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x85, 0x19, 0x11, 0x11, 0x32, 0x19, 0x53, 0x19, 0x74, 0x19, 0xB5, 0x21, 0xD6, 0x01, 0x19, 0xD6, 0x83, 0x19, 0xB5, 0x11, 0x95, 0x11, 0x74, 0x11, 0x54, 0x03, 0x11, 0x33, 0x80, 0x11, 0x13, 0x08, 0x11, 0x33, 0x80, 0x11, 0x32, 0x0B, 0x11, 0x33, 0x80, 0x11, 0x13, 0x01, 0x11, 0x33, 0x01, 0x11, 0x13, 0x01, 0x11, 0x33, 0x80, 0x11, 0x12, 0x04, 0x11, 0x33, 0x80, 0x11, 0x13, 0x1F, 0x11, 0x33, 0x01, 0x11, 0x53, 0x03, 0x11, 0x33, 0x80, 0x11, 0x53, 0x05, 0x11, 0x33, 0x80, 0x11, 0x32, 0x3B, 0x11, 0x33, 0x80, 0x11, 0x53, 0x51, 0x11, 0x33, 0x81, 0x11, 0x12, 0x11, 0x32, 0x01, 0x11, 0x33, 0x80, 0x11, 0x12, 0x02, 0x11, 0x33, 0x01, 0x09, 0x12, 0x81, 0x11, 0x13, 0x09, 0x13, 0x01, 0x09, 0x33, 0x82, 0x09, 0x34, 0x09, 0x54, 0x09, 0x55, 0x01, 0x09, 0x96, 0x01, 0x09, 0xD8, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x84, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0xD7, 0x19, 0xD6, 0x11, 0x12, 0x01, 0x19, 0x11, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, + 0x86, 0x19, 0x4F, 0x11, 0x2F, 0x09, 0x4F, 0x43, 0xD9, 0x3C, 0x3A, 0x24, 0x19, 0x13, 0xF9, 0x02, 0x0B, 0xF9, 0x8C, 0x14, 0x19, 0x13, 0xD8, 0x24, 0x19, 0x34, 0x5A, 0x3B, 0xF9, 0x09, 0xD1, 0x09, 0x4F, 0x11, 0x2F, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8E, 0x19, 0x32, 0x11, 0x52, 0x11, 0x53, 0x11, 0x94, 0x19, 0xD6, 0x21, 0xF7, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x74, 0x19, 0x33, 0x19, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x87, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x82, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x01, 0x11, 0x32, 0x87, 0x11, 0x74, 0x19, 0xB5, 0x21, 0xF7, 0x2A, 0x38, 0x21, 0xD6, 0x11, 0x74, 0x11, 0x54, 0x19, 0x33, 0x01, 0x19, 0x32, 0x82, 0x19, 0x11, 0x21, 0x11, 0x19, 0x10, 0x03, 0x21, 0x30, 0x08, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x02, 0x19, 0x32, 0x81, 0x19, 0x33, 0x19, 0x13, 0x01, 0x11, 0x13, 0x80, 0x11, 0x12, 0x01, 0x19, 0x32, + 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x92, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x11, 0x33, 0x08, 0xD2, 0x11, 0x11, 0x19, 0x32, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x88, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x89, 0x29, 0x2F, 0x29, 0x0F, 0x28, 0xEF, 0x28, 0xCE, 0x20, 0x6B, 0x40, 0xED, 0xCC, 0x9A, 0xDC, 0xDB, 0xDC, 0xB9, 0xDC, 0x78, 0x01, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x81, 0xE4, 0x57, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x8D, 0xE4, 0x77, 0xDC, 0x78, 0xDC, 0x98, 0xDC, 0xDA, 0xC4, 0x38, 0x28, 0x4A, 0x28, 0x6C, 0x20, 0xAD, 0x20, 0xEE, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x20, 0xEF, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x11, 0x82, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x02, 0x19, 0x33, 0x84, 0x11, 0x13, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x11, 0x82, 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, + 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x30, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xD7, 0x19, 0x96, 0x11, 0x34, 0x11, 0x33, 0x19, 0x52, 0x19, 0x51, 0x01, 0x19, 0x30, 0x02, 0x19, 0x31, 0x01, 0x19, 0x32, 0x01, 0x19, 0x33, 0x02, 0x11, 0x33, 0x80, 0x19, 0x33, 0x01, 0x19, 0x12, 0x86, 0x19, 0x11, 0x18, 0xF1, 0x19, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x06, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x11, 0x12, 0x87, 0x19, 0x74, 0x21, 0xD6, 0x21, 0xF6, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x54, 0x19, 0x96, 0x11, 0xD8, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x86, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0x95, 0x19, 0x54, 0x19, + 0x32, 0x21, 0x32, 0x02, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x20, 0xEF, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x88, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, + 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x92, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x53, 0x19, 0x95, 0x21, 0xF6, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x08, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x01, 0x11, 0x32, 0x8A, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xF8, 0x19, 0xF8, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x90, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x95, 0x09, 0x96, 0x11, 0xD7, 0x11, 0xF8, 0x1A, 0x19, 0x1A, 0x18, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x51, 0x86, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x53, 0x19, 0x94, 0x19, 0xB6, 0x21, 0xF7, 0x02, 0x19, 0xD7, 0x01, + 0x11, 0xB6, 0x01, 0x11, 0x96, 0x80, 0x11, 0xB6, 0x02, 0x11, 0x96, 0x80, 0x11, 0xB6, 0x07, 0x11, 0x96, 0x80, 0x11, 0x95, 0x02, 0x11, 0x96, 0x01, 0x11, 0x95, 0x04, 0x11, 0x75, 0x80, 0x11, 0x95, 0x03, 0x11, 0x75, 0x80, 0x09, 0x75, 0x04, 0x11, 0x75, 0x80, 0x09, 0x75, 0x01, 0x11, 0x75, 0x80, 0x09, 0x75, 0x04, 0x11, 0x75, 0x80, 0x09, 0x75, 0x02, 0x11, 0x75, 0x81, 0x11, 0x95, 0x11, 0x75, 0x01, 0x11, 0x95, 0x03, 0x11, 0x75, 0x80, 0x09, 0x75, 0x01, 0x11, 0x95, 0x04, 0x11, 0x75, 0x02, 0x11, 0x95, 0x80, 0x11, 0x75, 0x02, 0x11, 0x95, 0x80, 0x11, 0x75, 0x01, 0x11, 0x95, 0x02, 0x11, 0x75, 0x05, 0x11, 0x95, 0x01, 0x11, 0x75, 0x01, 0x11, 0x95, 0x80, 0x11, 0x75, 0x02, 0x11, 0x95, 0x01, 0x11, 0x75, 0x01, 0x11, 0x95, 0x80, 0x11, 0x75, 0x02, 0x11, 0x95, 0x80, 0x09, 0x75, 0x02, 0x11, 0x95, 0x80, 0x11, 0x75, 0x06, 0x11, 0x95, 0x03, 0x11, 0x75, 0x84, 0x09, 0x75, 0x11, 0x95, 0x11, 0x75, 0x11, 0x95, 0x11, 0x75, 0x01, 0x11, 0x95, 0x80, 0x11, 0x96, 0x05, 0x11, 0x95, 0x81, 0x11, 0x75, 0x11, 0x96, 0x0B, 0x11, 0x95, 0x80, 0x11, 0x75, 0x0A, 0x11, 0x95, 0x01, 0x11, 0x75, 0x07, 0x11, 0x95, 0x80, 0x11, 0x75, 0x10, 0x11, 0x95, 0x82, 0x11, 0x75, 0x11, 0x95, 0x11, 0x75, 0x0B, 0x11, 0x95, 0x80, 0x11, 0x75, 0x17, 0x11, 0x95, 0x80, 0x11, 0x75, 0x05, 0x11, 0x95, 0x01, 0x11, 0x75, 0x84, 0x11, 0x95, 0x11, 0x75, 0x11, 0x95, 0x09, 0x75, 0x11, 0x95, 0x01, 0x11, 0x96, 0x86, 0x09, 0x96, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0x97, 0x11, 0xB7, 0x09, 0xB7, 0x09, 0x97, 0x01, + 0x09, 0xD8, 0x84, 0x09, 0xF9, 0x09, 0xFA, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xBA, 0x03, 0x01, 0xDA, 0x85, 0x01, 0xD9, 0x09, 0xD9, 0x11, 0xD8, 0x19, 0xF8, 0x21, 0xF7, 0x11, 0x12, 0x01, 0x19, 0x11, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x87, 0x19, 0x4F, 0x09, 0x2F, 0x32, 0xD5, 0x64, 0xDD, 0x44, 0xBB, 0x24, 0x39, 0x14, 0x19, 0x0B, 0xF9, 0x01, 0x0C, 0x19, 0x88, 0x14, 0x19, 0x1C, 0x19, 0x2C, 0x5A, 0x3C, 0x5A, 0x54, 0x9B, 0x33, 0x16, 0x09, 0x4F, 0x11, 0x4F, 0x19, 0x50, 0x01, 0x21, 0x50, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x19, 0x2F, 0x21, 0x50, 0x19, 0x30, 0x03, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x8E, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x19, 0x52, 0x11, 0x52, 0x11, 0x53, 0x11, 0x94, 0x19, 0xF6, 0x22, 0x17, 0x19, 0xD6, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x74, 0x19, 0xB5, 0x01, 0x22, 0x17, 0x87, 0x19, 0xB6, 0x11, 0x75, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x12, + 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x08, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x12, 0x02, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x12, 0x19, 0x95, 0x01, 0x2A, 0x17, 0x85, 0x19, 0xB6, 0x08, 0xF3, 0x08, 0xD2, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0x8D, 0x20, 0x0A, 0xA3, 0x97, 0xE5, 0x1C, 0xDC, 0xBA, 0xDC, 0x78, 0x04, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x82, 0xDC, 0x36, 0xDC, 0x37, 0xE4, 0x57, 0x02, 0xDC, 0x57, 0x8A, 0xE4, 0x57, 0xDC, 0x16, 0xDC, 0x36, 0xDC, 0x57, 0xDC, 0x98, 0xD4, 0x98, 0xC4, 0x38, 0x61, 0xCF, 0x20, 0x4A, 0x28, 0xAD, 0x28, 0xEE, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x11, 0x19, 0x11, 0x19, 0x31, 0x01, + 0x19, 0x11, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x02, 0x19, 0x11, 0x02, 0x21, 0x31, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x19, 0x30, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x84, 0x11, 0x95, 0x11, 0x54, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x02, 0x19, 0x30, 0x81, 0x19, 0x50, 0x19, 0x10, 0x02, 0x19, 0x11, 0x03, 0x19, 0x32, 0x82, 0x19, 0x11, 0x18, 0xF1, 0x19, 0x11, 0x01, 0x21, 0x11, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x87, 0x21, 0x10, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x13, 0x19, 0x74, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x84, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, + 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x50, 0x21, 0x51, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0x96, 0x19, 0xF8, 0x11, 0xD8, 0x09, 0xD9, 0x09, 0xDA, 0x09, 0xFA, 0x01, 0x01, 0xBA, 0x01, 0x01, 0xB9, 0x80, 0x01, 0xDA, 0x01, 0x09, 0xD9, 0x82, 0x11, 0xD8, 0x19, 0xD7, 0x11, 0x54, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x08, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, + 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x04, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x85, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x90, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x11, 0x19, 0x53, 0x11, 0x53, 0x19, 0xB5, 0x21, 0xF6, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x4F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x31, 0x87, 0x11, 0x32, 0x11, 0x33, 0x11, 0x53, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x19, 0xF8, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x83, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x03, + 0x19, 0x31, 0x01, 0x19, 0x32, 0x84, 0x11, 0x53, 0x11, 0x74, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xD8, 0x02, 0x11, 0xF8, 0x83, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x53, 0x01, 0x19, 0x32, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x88, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x19, 0xF7, 0x02, 0x1A, 0x18, 0x80, 0x11, 0xF8, 0x02, 0x19, 0xF8, 0x83, 0x1A, 0x18, 0x22, 0x18, 0x19, 0xF8, 0x22, 0x39, 0x01, 0x22, 0x19, 0x80, 0x19, 0xF8, 0x01, 0x22, 0x19, 0x83, 0x1A, 0x18, 0x22, 0x19, 0x22, 0x39, 0x1A, 0x18, 0x01, 0x22, 0x39, 0x80, 0x22, 0x38, 0x06, 0x1A, 0x18, 0x85, 0x22, 0x18, 0x1A, 0x18, 0x22, 0x18, 0x1A, 0x18, 0x22, 0x39, 0x22, 0x38, 0x01, 0x22, 0x18, 0x80, 0x22, 0x38, 0x01, 0x22, 0x18, 0x80, 0x22, 0x38, 0x01, 0x1A, 0x18, 0x80, 0x22, 0x39, 0x01, 0x1A, 0x18, 0x81, 0x22, 0x18, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x81, 0x1A, 0x18, 0x22, 0x18, 0x02, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x07, 0x1A, 0x18, 0x80, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x02, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x02, 0x1A, 0x18, 0x84, 0x22, 0x38, 0x22, 0x18, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x18, 0x02, 0x1A, 0x18, 0x85, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x18, 0x1A, 0x18, 0x22, 0x38, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x01, 0x22, 0x38, 0x01, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x01, 0x22, 0x38, 0x83, 0x22, 0x18, 0x1A, 0x18, 0x22, + 0x38, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x03, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x01, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x01, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x80, 0x1A, 0x38, 0x02, 0x1A, 0x18, 0x82, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x38, 0x0C, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x04, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x04, 0x1A, 0x18, 0x82, 0x22, 0x18, 0x1A, 0x18, 0x22, 0x18, 0x08, 0x1A, 0x18, 0x80, 0x22, 0x18, 0x02, 0x1A, 0x18, 0x80, 0x22, 0x18, 0x04, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x02, 0x1A, 0x18, 0x82, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x18, 0x02, 0x1A, 0x18, 0x80, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x80, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x02, 0x1A, 0x18, 0x84, 0x22, 0x38, 0x1A, 0x38, 0x1A, 0x18, 0x22, 0x18, 0x22, 0x38, 0x04, 0x1A, 0x18, 0x81, 0x22, 0x38, 0x22, 0x18, 0x03, 0x1A, 0x18, 0x80, 0x1A, 0x38, 0x08, 0x1A, 0x18, 0x01, 0x22, 0x38, 0x80, 0x1A, 0x18, 0x01, 0x1A, 0x38, 0x81, 0x1A, 0x18, 0x1A, 0x38, 0x01, 0x22, 0x38, 0x82, 0x1A, 0x18, 0x22, 0x38, 0x1A, 0x18, 0x01, 0x1A, 0x38, 0x81, 0x1A, 0x18, 0x11, 0xF7, 0x02, 0x1A, 0x18, 0x86, 0x11, 0xF8, 0x1A, 0x19, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xF9, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x8E, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x09, 0xDA, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0xD7, 0x19, 0xD6, 0x08, 0xF2, 0x19, 0x11, 0x19, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, + 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x88, 0x19, 0x2F, 0x19, 0x4F, 0x11, 0x4F, 0x22, 0x33, 0x22, 0xB5, 0x23, 0x56, 0x23, 0xD8, 0x1C, 0x19, 0x0B, 0xF9, 0x01, 0x0C, 0x19, 0x88, 0x14, 0x39, 0x1C, 0x39, 0x2B, 0xD8, 0x3B, 0xF9, 0x43, 0xF9, 0x3B, 0x36, 0x11, 0x70, 0x11, 0x4F, 0x19, 0x4F, 0x01, 0x19, 0x50, 0x81, 0x21, 0x50, 0x19, 0x4F, 0x02, 0x19, 0x2F, 0x80, 0x19, 0x30, 0x01, 0x19, 0x50, 0x80, 0x19, 0x30, 0x01, 0x21, 0x50, 0x02, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x19, 0x31, 0x8A, 0x11, 0x52, 0x11, 0x73, 0x11, 0x94, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x13, 0x11, 0x12, 0x19, 0x12, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x84, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x11, 0x74, 0x19, 0xB5, 0x01, 0x22, 0x17, 0x83, 0x19, 0x96, 0x19, 0x95, 0x19, 0x54, 0x11, 0x33, 0x01, 0x19, 0x12, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, + 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x80, 0x21, 0x11, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x08, 0xF3, 0x10, 0xF2, 0x19, 0x52, 0x19, 0x31, 0x19, 0x10, 0x02, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8A, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0xCD, 0x28, 0x6C, 0x51, 0x4E, 0xE5, 0x3D, 0xDC, 0xBA, 0xDC, 0x99, 0xDC, 0x78, 0xDC, 0x58, 0xDC, 0x57, 0x02, 0xDC, 0x37, 0x80, 0xDC, 0x36, 0x03, 0xDC, 0x37, 0x82, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x8C, 0xE4, 0x57, 0xDC, 0x16, 0xE4, 0x57, 0xDC, 0x77, 0xDC, 0x98, 0xDC, 0x99, 0xCC, 0x99, 0xDD, 0x7E, 0x41, 0x2D, 0x20, 0x6B, 0x28, 0xCE, 0x28, 0xEE, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x31, 0x19, 0x10, 0x19, 0x11, 0x19, 0x10, 0x01, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x21, 0x11, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, + 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x06, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x97, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x4F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x50, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD7, 0x19, 0x96, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x19, 0x10, 0x80, 0x21, 0x31, 0x02, 0x19, 0x11, 0x80, 0x18, 0xF1, 0x01, 0x19, 0x11, 0x81, 0x21, 0x11, 0x18, 0xF0, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x84, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x02, 0x21, 0xF7, 0x87, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x21, 0x51, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x88, 0x29, 0x10, 0x21, 0x10, 0x21, 0x50, 0x21, 0x51, 0x19, 0x31, + 0x19, 0x11, 0x11, 0x11, 0x11, 0x13, 0x19, 0x96, 0x01, 0x11, 0xD8, 0x80, 0x09, 0xB9, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x02, 0x01, 0xDA, 0x88, 0x01, 0xD9, 0x09, 0xD9, 0x11, 0xD8, 0x19, 0xB7, 0x11, 0x74, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x8A, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x29, 0x10, 0x08, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x83, 0x29, + 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x86, 0x21, 0x31, 0x18, 0xF1, 0x11, 0x12, 0x11, 0x33, 0x11, 0x53, 0x19, 0xB5, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x86, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x19, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x50, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x50, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x90, 0x21, 0x51, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x19, 0xF8, 0x1A, 0x19, 0x19, 0xF8, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x32, 0x87, 0x19, 0x31, 0x21, 0x51, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x96, 0x01, 0x11, 0xB7, 0x8B, 0x11, 0xF8, 0x12, 0x18, 0x11, 0xF8, 0x19, + 0xD7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x29, 0x50, 0x21, 0x50, 0x01, 0x21, 0x51, 0x82, 0x21, 0x31, 0x19, 0x31, 0x19, 0x12, 0x01, 0x11, 0x32, 0x84, 0x19, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x18, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x02, 0x22, 0x18, 0x02, 0x21, 0xF8, 0x01, 0x21, 0xF9, 0x80, 0x21, 0xF8, 0x01, 0x19, 0xF8, 0x84, 0x22, 0x19, 0x22, 0x39, 0x1A, 0x18, 0x22, 0x59, 0x22, 0x39, 0x02, 0x1A, 0x18, 0x82, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x38, 0x01, 0x22, 0x18, 0x01, 0x22, 0x38, 0x80, 0x22, 0x39, 0x06, 0x22, 0x38, 0x82, 0x22, 0x18, 0x22, 0x38, 0x22, 0x18, 0x04, 0x22, 0x38, 0x80, 0x22, 0x18, 0x01, 0x22, 0x38, 0x82, 0x22, 0x18, 0x22, 0x38, 0x22, 0x18, 0x02, 0x22, 0x38, 0x81, 0x22, 0x39, 0x22, 0x38, 0x01, 0x22, 0x18, 0x03, 0x22, 0x38, 0x80, 0x1A, 0x18, 0x03, 0x22, 0x38, 0x80, 0x1A, 0x18, 0x01, 0x22, 0x38, 0x80, 0x22, 0x18, 0x01, 0x22, 0x38, 0x01, 0x22, 0x18, 0x80, 0x22, 0x38, 0x06, 0x22, 0x18, 0x06, 0x22, 0x38, 0x80, 0x22, 0x18, 0x02, 0x22, 0x38, 0x80, 0x22, 0x18, 0x01, 0x22, 0x38, 0x03, 0x22, 0x18, 0x04, 0x22, 0x38, 0x80, 0x22, 0x18, 0x01, 0x22, 0x38, 0x02, 0x22, 0x18, 0x04, 0x22, 0x38, 0x01, 0x22, 0x18, 0x02, 0x22, 0x38, 0x85, 0x22, 0x18, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x38, 0x1A, 0x18, 0x19, 0xF8, 0x02, 0x22, 0x18, 0x01, 0x22, 0x38, 0x80, 0x1A, 0x18, 0x02, 0x22, 0x18, 0x89, 0x1A, 0x18, 0x22, 0x18, 0x1A, 0x18, 0x22, 0x38, 0x22, + 0x18, 0x1A, 0x18, 0x22, 0x18, 0x22, 0x38, 0x22, 0x39, 0x22, 0x38, 0x03, 0x22, 0x18, 0x84, 0x22, 0x38, 0x22, 0x18, 0x22, 0x38, 0x22, 0x18, 0x22, 0x38, 0x02, 0x22, 0x18, 0x02, 0x22, 0x38, 0x01, 0x1A, 0x18, 0x01, 0x22, 0x38, 0x81, 0x22, 0x18, 0x22, 0x38, 0x01, 0x22, 0x18, 0x03, 0x22, 0x38, 0x80, 0x22, 0x18, 0x02, 0x22, 0x38, 0x80, 0x22, 0x18, 0x0A, 0x22, 0x38, 0x01, 0x22, 0x18, 0x01, 0x22, 0x38, 0x80, 0x22, 0x18, 0x02, 0x22, 0x38, 0x80, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x80, 0x22, 0x18, 0x01, 0x22, 0x38, 0x80, 0x22, 0x18, 0x01, 0x22, 0x38, 0x80, 0x1A, 0x18, 0x01, 0x22, 0x38, 0x80, 0x22, 0x18, 0x01, 0x22, 0x38, 0x81, 0x1A, 0x18, 0x22, 0x38, 0x01, 0x1A, 0x38, 0x07, 0x22, 0x38, 0x81, 0x22, 0x59, 0x22, 0x38, 0x01, 0x22, 0x58, 0x01, 0x22, 0x38, 0x81, 0x1A, 0x38, 0x22, 0x58, 0x01, 0x22, 0x38, 0x8F, 0x22, 0x58, 0x22, 0x38, 0x1A, 0x38, 0x22, 0x38, 0x22, 0x58, 0x22, 0x59, 0x22, 0x38, 0x1A, 0x38, 0x1A, 0x18, 0x1A, 0x39, 0x1A, 0x19, 0x19, 0xF9, 0x11, 0xF9, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x8B, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xBA, 0x09, 0xDA, 0x09, 0xD9, 0x11, 0xD8, 0x19, 0xF8, 0x19, 0xB5, 0x08, 0xF1, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x4F, 0x19, 0x2F, 0x11, 0x2F, 0x01, 0x0E, 0x00, 0xEE, 0x01, 0x4F, 0x02, 0x12, 0x1B, 0xF9, 0x14, 0x19, 0x01, 0x14, + 0x39, 0x82, 0x14, 0x19, 0x24, 0x19, 0x01, 0x90, 0x01, 0x00, 0xCD, 0x83, 0x01, 0x0E, 0x11, 0x4F, 0x11, 0x2F, 0x19, 0x4F, 0x01, 0x11, 0x2F, 0x06, 0x09, 0x0E, 0x80, 0x11, 0x2F, 0x01, 0x11, 0x0F, 0x80, 0x11, 0x2F, 0x01, 0x19, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x09, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x51, 0x01, 0x19, 0x52, 0x88, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x51, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x30, 0x19, 0x10, 0x19, 0x52, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB6, 0x2A, 0x38, 0x22, 0x18, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x81, 0x21, 0x32, 0x21, 0x31, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x30, 0x21, 0x0F, + 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x12, 0x21, 0xD5, 0x2A, 0x17, 0x21, 0xF6, 0x19, 0x95, 0x08, 0xF2, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x01, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x89, 0x28, 0xEE, 0x28, 0xAD, 0x30, 0x4B, 0xB3, 0xD8, 0xDC, 0xBA, 0xDC, 0x99, 0xDC, 0x78, 0xDC, 0x58, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x03, 0xDC, 0x37, 0x80, 0xDC, 0x36, 0x02, 0xE4, 0x57, 0x82, 0xDC, 0x37, 0xDC, 0x36, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x88, 0xDC, 0x98, 0xD4, 0x78, 0xDD, 0x1B, 0xDD, 0x7D, 0x9B, 0xF8, 0x18, 0x0A, 0x28, 0xAD, 0x28, 0xEE, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x88, + 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x90, 0x21, 0x50, 0x21, 0x30, 0x19, 0x30, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB6, 0x21, 0xF7, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x13, 0x11, 0x12, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x19, 0x2F, 0x21, 0x50, 0x03, 0x21, 0x30, 0x80, 0x21, 0x11, 0x02, 0x21, 0x31, 0x84, 0x19, 0x31, 0x21, 0x11, 0x21, 0x10, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x31, 0x8B, 0x11, 0x11, 0x10, 0xF2, 0x11, 0x33, 0x11, 0x74, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x33, 0x10, 0xF2, 0x19, 0x11, 0x01, 0x19, 0x31, 0x82, 0x21, 0x30, 0x19, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x50, 0x21, 0x30, 0x01, 0x19, 0x11, 0x86, 0x10, 0xF2, 0x11, 0x33, 0x19, 0xB6, 0x19, 0xF8, 0x09, 0xB8, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0x01, 0xBA, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x86, 0x09, 0xD9, 0x11, 0xD8, 0x19, 0xD7, 0x19, 0x75, 0x10, 0xF2, 0x19, + 0x11, 0x19, 0x31, 0x05, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x87, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x0A, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, + 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x10, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x73, 0x19, 0xB5, 0x21, 0xF6, 0x21, 0xF7, 0x19, 0xF6, 0x19, 0x95, 0x11, 0x33, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x19, 0x11, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x88, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x50, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x19, 0x31, 0x8D, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x96, 0x19, 0xB7, 0x19, 0xF8, 0x19, 0xF9, 0x19, 0xF8, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x32, 0x02, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x96, 0x01, 0x11, 0xB7, 0x86, 0x11, 0xF8, 0x1A, 0x19, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x80, 0x21, 0x31, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x29, 0x51, 0x01, 0x21, 0x31, 0x88, 0x21, 0x51, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0x75, 0x11, 0x95, 0x02, 0x19, 0x96, 0x81, 0x19, 0xB6, + 0x19, 0x96, 0x01, 0x19, 0xB6, 0x80, 0x19, 0x96, 0x01, 0x19, 0xB7, 0x01, 0x19, 0xB6, 0x81, 0x19, 0xB7, 0x19, 0xB6, 0x03, 0x11, 0xB6, 0x01, 0x19, 0xD6, 0x80, 0x11, 0xB6, 0x02, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x03, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x04, 0x19, 0xB6, 0x01, 0x19, 0xB5, 0x82, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0xD6, 0x03, 0x19, 0xB6, 0x80, 0x19, 0xB5, 0x06, 0x19, 0xB6, 0x80, 0x19, 0xD6, 0x18, 0x19, 0xB6, 0x80, 0x19, 0x96, 0x0F, 0x19, 0xB6, 0x80, 0x19, 0x96, 0x17, 0x19, 0xB6, 0x80, 0x11, 0xB6, 0x04, 0x19, 0xB6, 0x80, 0x19, 0x96, 0x09, 0x19, 0xB6, 0x80, 0x19, 0xD6, 0x02, 0x19, 0xB6, 0x80, 0x19, 0xD6, 0x25, 0x19, 0xB6, 0x80, 0x19, 0xB5, 0x02, 0x19, 0xB6, 0x80, 0x19, 0xB5, 0x02, 0x19, 0xB6, 0x80, 0x19, 0xB5, 0x02, 0x19, 0xB6, 0x81, 0x11, 0xB5, 0x19, 0xB5, 0x10, 0x19, 0xB6, 0x81, 0x19, 0xD6, 0x19, 0xB5, 0x01, 0x19, 0xB6, 0x01, 0x19, 0xB5, 0x03, 0x19, 0xB6, 0x80, 0x19, 0xD6, 0x01, 0x19, 0xB6, 0x81, 0x19, 0xD5, 0x11, 0xB5, 0x01, 0x19, 0xD6, 0x01, 0x19, 0xB5, 0x01, 0x19, 0xB6, 0x80, 0x19, 0xB5, 0x01, 0x19, 0xD6, 0x80, 0x19, 0xB6, 0x02, 0x19, 0xD6, 0x84, 0x11, 0xD6, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xB7, 0x19, 0xD7, 0x01, 0x11, 0xB7, 0x84, 0x11, 0xB8, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xD9, 0x05, 0x01, 0xDA, 0x01, 0x09, 0xD9, 0x84, 0x11, 0xD8, 0x19, 0xF7, 0x11, 0x75, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, + 0x2F, 0x89, 0x21, 0x4F, 0x21, 0x2F, 0x19, 0x2F, 0x19, 0x4F, 0x11, 0x4F, 0x09, 0x2F, 0x01, 0x4F, 0x01, 0xF1, 0x23, 0xF9, 0x1C, 0x19, 0x01, 0x14, 0x19, 0x86, 0x1C, 0x19, 0x23, 0xD9, 0x01, 0x4F, 0x00, 0xCD, 0x00, 0xEE, 0x09, 0x2F, 0x19, 0x70, 0x01, 0x11, 0x4F, 0x82, 0x09, 0x2F, 0x01, 0x0E, 0x00, 0xEE, 0x01, 0x01, 0x0E, 0x01, 0x01, 0x2E, 0x01, 0x01, 0x0E, 0x01, 0x00, 0xED, 0x84, 0x01, 0x0E, 0x00, 0xED, 0x00, 0xAD, 0x00, 0xCE, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x01, 0x21, 0x51, 0x8B, 0x19, 0x52, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x22, 0x17, 0x21, 0xF8, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x74, 0x19, 0x53, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x19, 0x31, 0x89, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x2A, 0x38, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x53, 0x19, 0x33, 0x19, 0x12, 0x02, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, + 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x89, 0x19, 0x32, 0x11, 0x12, 0x21, 0xB5, 0x2A, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x12, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x29, 0x50, 0x29, 0x30, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x80, 0x29, 0x50, 0x01, 0x29, 0x0F, 0x89, 0x28, 0xEF, 0x28, 0xAD, 0x28, 0x6B, 0x51, 0x2E, 0xD4, 0xBB, 0xDC, 0x9A, 0xE4, 0xB9, 0xDC, 0x78, 0xDC, 0x37, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x82, 0xDC, 0x36, 0xDC, 0x57, 0xE4, 0x57, 0x01, 0xDC, 0x36, 0x83, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x36, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x91, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x57, 0xDC, 0x78, 0xDC, 0x98, 0xE5, 0x1B, 0xD5, 0x1B, 0xBC, 0xBA, 0x18, 0x09, 0x20, 0xAD, 0x20, 0xCE, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x20, 0xEF, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x81, 0x19, 0x10, 0x21, 0x30, 0x0A, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x06, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, + 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x04, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x30, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x21, 0xD6, 0x21, 0xF7, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x01, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x19, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x31, 0x89, 0x19, 0x32, 0x11, 0x12, 0x09, 0x12, 0x11, 0x54, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x33, 0x01, 0x10, 0xF1, 0x82, 0x18, 0xF0, 0x21, 0x31, 0x21, 0x30, 0x01, 0x19, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x11, 0x86, 0x11, 0x12, 0x11, 0x33, 0x19, 0xD7, 0x11, 0xD8, 0x11, 0xD9, 0x09, 0xD9, 0x01, 0xBA, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x01, 0x01, 0xB9, 0x84, 0x09, 0xD9, 0x11, 0xF9, 0x19, 0xD7, 0x19, 0x75, 0x11, 0x12, 0x01, 0x19, 0x11, + 0x03, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x10, 0x82, 0x29, 0x50, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x04, 0x29, 0x10, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x30, 0x84, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x0F, + 0x29, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x11, 0x01, 0x19, 0x11, 0x89, 0x11, 0x32, 0x11, 0x54, 0x19, 0x95, 0x21, 0xF6, 0x19, 0xF6, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x31, 0x85, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x93, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x11, 0x52, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB7, 0x19, 0xF8, 0x19, 0xF9, 0x19, 0xF8, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x83, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xB7, 0x01, 0x11, 0xF8, 0x86, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x76, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x05, + 0x21, 0x10, 0x03, 0x21, 0x31, 0x82, 0x19, 0x31, 0x19, 0x32, 0x19, 0x52, 0x01, 0x11, 0x32, 0x03, 0x11, 0x12, 0x01, 0x11, 0x13, 0x03, 0x19, 0x33, 0x04, 0x11, 0x33, 0x02, 0x11, 0x53, 0x80, 0x11, 0x33, 0x01, 0x11, 0x53, 0x80, 0x11, 0x33, 0x01, 0x11, 0x53, 0x80, 0x11, 0x33, 0x05, 0x11, 0x32, 0x86, 0x19, 0x32, 0x11, 0x32, 0x19, 0x32, 0x11, 0x32, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x02, 0x11, 0x32, 0x03, 0x19, 0x33, 0x01, 0x11, 0x32, 0x81, 0x19, 0x53, 0x11, 0x32, 0x02, 0x11, 0x33, 0x01, 0x19, 0x33, 0x80, 0x11, 0x33, 0x02, 0x19, 0x33, 0x82, 0x19, 0x32, 0x11, 0x32, 0x19, 0x33, 0x04, 0x11, 0x33, 0x80, 0x19, 0x33, 0x01, 0x11, 0x33, 0x81, 0x19, 0x33, 0x11, 0x33, 0x04, 0x11, 0x32, 0x85, 0x11, 0x33, 0x11, 0x32, 0x19, 0x33, 0x19, 0x32, 0x11, 0x32, 0x19, 0x33, 0x0D, 0x11, 0x33, 0x80, 0x19, 0x33, 0x03, 0x11, 0x33, 0x03, 0x11, 0x32, 0x80, 0x19, 0x33, 0x01, 0x11, 0x33, 0x01, 0x19, 0x33, 0x05, 0x11, 0x33, 0x80, 0x19, 0x33, 0x0B, 0x11, 0x33, 0x82, 0x19, 0x33, 0x11, 0x33, 0x11, 0x32, 0x04, 0x11, 0x33, 0x80, 0x19, 0x33, 0x01, 0x11, 0x33, 0x80, 0x19, 0x33, 0x05, 0x11, 0x33, 0x02, 0x11, 0x32, 0x80, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x11, 0x33, 0x01, 0x11, 0x32, 0x81, 0x11, 0x33, 0x11, 0x32, 0x02, 0x19, 0x32, 0x80, 0x11, 0x32, 0x01, 0x19, 0x32, 0x03, 0x11, 0x32, 0x80, 0x19, 0x32, 0x03, 0x11, 0x32, 0x01, 0x19, 0x32, 0x0B, 0x11, 0x32, 0x80, 0x11, 0x12, 0x01, 0x11, 0x32, 0x85, 0x11, 0x12, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x19, 0x53, 0x19, + 0x32, 0x03, 0x11, 0x32, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x82, 0x19, 0x32, 0x11, 0x32, 0x19, 0x32, 0x02, 0x11, 0x32, 0x80, 0x19, 0x32, 0x0C, 0x11, 0x32, 0x80, 0x11, 0x12, 0x02, 0x11, 0x32, 0x80, 0x11, 0x12, 0x0C, 0x11, 0x32, 0x02, 0x11, 0x33, 0x02, 0x11, 0x54, 0x88, 0x11, 0x55, 0x11, 0x76, 0x11, 0x97, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x8A, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xF8, 0x19, 0xF8, 0x21, 0xF7, 0x11, 0x54, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x29, 0x51, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x19, 0x2F, 0x01, 0x19, 0x50, 0x85, 0x11, 0x50, 0x09, 0x50, 0x01, 0x4F, 0x01, 0xF1, 0x2C, 0x19, 0x1C, 0x19, 0x01, 0x14, 0x19, 0x86, 0x1C, 0x19, 0x2C, 0x19, 0x01, 0x4F, 0x00, 0xED, 0x09, 0x4F, 0x11, 0x4F, 0x19, 0x90, 0x01, 0x11, 0x4F, 0x82, 0x00, 0xEE, 0x33, 0x36, 0x4C, 0x5B, 0x01, 0x3C, 0x3A, 0x01, 0x3C, 0x7A, 0x02, 0x44, 0xBB, 0x8A, 0x44, 0x7A, 0x44, 0x3A, 0x3B, 0xF9, 0x4C, 0x1A, 0x32, 0xD5, 0x00, 0xCE, 0x19, 0x0F, 0x21, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x19, 0xD6, + 0x01, 0x21, 0xF7, 0x84, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x51, 0x8A, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xD7, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x01, 0x19, 0x11, 0x81, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x07, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x8B, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x12, 0x21, 0xB5, 0x22, 0x17, 0x19, 0xB6, 0x19, 0x74, 0x10, 0xF2, 0x19, 0x12, 0x21, 0x32, 0x21, 0x31, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8B, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x28, 0xEF, 0x28, 0xCE, 0x28, 0x6C, 0x20, 0x09, 0xB4, 0x19, 0xDC, 0xDA, 0xDC, 0x99, 0xDC, 0x78, + 0x01, 0xDC, 0x57, 0x81, 0xE4, 0x57, 0xDC, 0x57, 0x05, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x36, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x83, 0xE4, 0x57, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x78, 0x86, 0xC4, 0x37, 0xDD, 0x5C, 0xAC, 0x59, 0x18, 0x09, 0x20, 0x8C, 0x20, 0xEE, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x09, 0x21, 0x10, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x8B, 0x21, 0x30, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x21, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x30, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, + 0x0F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x06, 0x21, 0x2F, 0x95, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x09, 0x13, 0x11, 0x54, 0x19, 0xD7, 0x22, 0x38, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x53, 0x10, 0xD1, 0x10, 0xD0, 0x19, 0x10, 0x21, 0x31, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x8B, 0x21, 0x30, 0x29, 0x50, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x21, 0xD7, 0x19, 0xD8, 0x09, 0xD8, 0x09, 0xB9, 0x09, 0xDA, 0x03, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x86, 0x01, 0xB9, 0x09, 0xD9, 0x11, 0xF9, 0x19, 0xD7, 0x11, 0x74, 0x11, 0x12, 0x19, 0x11, 0x01, 0x19, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, + 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x8E, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x83, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x31, 0x81, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x07, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, + 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x51, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x11, 0x74, 0x11, 0x96, 0x19, 0xB7, 0x19, 0xF8, 0x19, 0xF9, 0x01, 0x11, 0xF8, 0x84, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x02, 0x19, 0x31, 0x85, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x11, 0xB7, 0x11, 0xD7, 0x01, 0x11, 0xF8, 0x85, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x31, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x08, 0x19, 0x11, 0x02, 0x19, 0x12, 0x87, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x11, 0x11, 0x19, 0x12, 0x19, 0x32, 0x11, 0x11, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x11, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x0B, 0x19, 0x11, 0x80, 0x19, 0x31, 0x04, 0x19, 0x11, 0x01, 0x19, 0x31, 0x0F, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x12, 0x81, 0x19, 0x11, 0x18, 0xF1, 0x0B, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x32, 0x81, 0x19, 0x11, 0x19, 0x32, 0x01, 0x19, 0x12, 0x80, 0x19, 0x32, 0x01, 0x19, 0x12, 0x81, 0x19, 0x11, 0x19, 0x32, 0x06, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x83, 0x19, 0x31, 0x19, 0x11, 0x19, 0x12, 0x19, 0x11, 0x01, 0x19, 0x12, 0x03, 0x19, 0x11, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x0C, 0x19, 0x11, 0x80, 0x19, 0x32, + 0x08, 0x19, 0x11, 0x80, 0x19, 0x31, 0x12, 0x19, 0x11, 0x80, 0x19, 0x31, 0x0D, 0x19, 0x11, 0x80, 0x18, 0xF1, 0x05, 0x19, 0x11, 0x80, 0x18, 0xF1, 0x14, 0x19, 0x11, 0x80, 0x19, 0x31, 0x15, 0x19, 0x11, 0x80, 0x19, 0x31, 0x0A, 0x19, 0x11, 0x02, 0x19, 0x32, 0x86, 0x19, 0x12, 0x19, 0x33, 0x19, 0x54, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xD8, 0x01, 0x09, 0xF9, 0x80, 0x01, 0xD9, 0x02, 0x01, 0xF9, 0x8C, 0x01, 0xD9, 0x09, 0xF8, 0x11, 0xF8, 0x22, 0x18, 0x11, 0x75, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x9B, 0x19, 0x2F, 0x19, 0x50, 0x11, 0x50, 0x09, 0x50, 0x01, 0x4F, 0x01, 0xD1, 0x2B, 0xF9, 0x1B, 0xF9, 0x1C, 0x19, 0x1C, 0x3A, 0x1B, 0xF9, 0x2B, 0xD9, 0x01, 0x4F, 0x00, 0xED, 0x11, 0x4F, 0x11, 0x2F, 0x19, 0x90, 0x11, 0x4F, 0x09, 0x2F, 0x01, 0x2E, 0x33, 0x97, 0x44, 0xBB, 0x2C, 0x5A, 0x24, 0x39, 0x1C, 0x39, 0x1C, 0x18, 0x1C, 0x59, 0x1C, 0x39, 0x01, 0x24, 0x39, 0x86, 0x34, 0x7A, 0x3C, 0x9B, 0x4C, 0x7B, 0x3B, 0x98, 0x00, 0xAE, 0x10, 0xEF, 0x19, 0x30, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x09, 0x21, 0x30, 0x01, 0x19, 0x31, 0x80, 0x19, 0x52, 0x01, 0x11, 0x33, 0x81, 0x11, 0x75, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x85, 0x19, 0xB6, 0x19, 0x74, 0x11, + 0x32, 0x11, 0x12, 0x10, 0xF1, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x8E, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x11, 0x12, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xF7, 0x21, 0xD6, 0x19, 0x95, 0x19, 0x54, 0x19, 0x33, 0x01, 0x19, 0x11, 0x83, 0x21, 0x31, 0x29, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x8A, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x19, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x12, 0x19, 0xB5, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x28, 0xEF, 0x28, 0xAD, 0x20, 0x2B, 0x48, 0xED, 0xDD, 0x1C, 0xDC, 0x99, 0x01, 0xDC, 0x78, 0x01, 0xDC, 0x57, 0x02, + 0xDC, 0x37, 0x82, 0xDC, 0x57, 0xE4, 0x57, 0xDC, 0x57, 0x02, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x8A, 0xDC, 0x58, 0xDC, 0x99, 0xCC, 0x78, 0xD5, 0x1C, 0x72, 0x51, 0x18, 0x09, 0x20, 0x8C, 0x20, 0xCE, 0x28, 0xEF, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x08, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x87, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x8C, 0x21, 0x10, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x21, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x96, 0x11, 0x33, 0x19, 0x12, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8E, 0x21, 0x0F, 0x29, 0x0F, 0x21, + 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x8F, 0x21, 0x11, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x22, 0x38, 0x22, 0x18, 0x21, 0xD7, 0x19, 0x95, 0x19, 0x53, 0x11, 0x11, 0x10, 0xF0, 0x19, 0x10, 0x21, 0x31, 0x21, 0x51, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x86, 0x19, 0x10, 0x21, 0x11, 0x19, 0x12, 0x19, 0x33, 0x19, 0x96, 0x19, 0xD7, 0x11, 0xD8, 0x01, 0x09, 0xD9, 0x05, 0x01, 0xDA, 0x8A, 0x01, 0xB9, 0x09, 0xD9, 0x11, 0xF8, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x12, 0x19, 0x11, 0x19, 0x30, 0x21, 0x30, 0x29, 0x50, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, + 0x29, 0x10, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x50, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x01, 0x11, 0x33, 0x87, 0x19, 0x95, 0x21, 0xF6, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x02, 0x19, 0x31, 0x80, 0x21, 0x31, 0x03, 0x21, 0x30, 0x08, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, + 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x19, 0x10, 0x01, 0x19, 0x31, 0x87, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x74, 0x11, 0x75, 0x19, 0xB7, 0x19, 0xF8, 0x19, 0xF9, 0x01, 0x11, 0xF8, 0x83, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x02, 0x19, 0x32, 0x89, 0x19, 0x31, 0x21, 0x52, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x19, 0xF8, 0x01, 0x11, 0xF8, 0x8A, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x09, 0x33, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x19, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x11, 0x21, 0x31, 0x19, 0x10, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x04, 0x19, 0x11, 0x04, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x19, 0x31, 0x01, 0x19, 0x10, 0x82, 0x21, 0x30, 0x19, 0x10, 0x21, 0x31, 0x02, 0x21, 0x10, 0x80, 0x21, 0x11, 0x01, 0x21, 0x10, 0x87, 0x19, 0x10, 0x21, 0x11, 0x21, 0x10, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x21, 0x11, 0x01, 0x19, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x11, 0x82, 0x18, 0xF0, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x82, 0x21, 0x11, 0x19, 0x10, 0x21, + 0x11, 0x01, 0x21, 0x10, 0x82, 0x19, 0x10, 0x21, 0x11, 0x21, 0x10, 0x08, 0x21, 0x11, 0x86, 0x21, 0x10, 0x21, 0x11, 0x21, 0x10, 0x21, 0x11, 0x21, 0x10, 0x21, 0x11, 0x19, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x11, 0x01, 0x21, 0x10, 0x84, 0x19, 0x10, 0x21, 0x10, 0x21, 0x31, 0x21, 0x11, 0x19, 0x10, 0x05, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x80, 0x21, 0x11, 0x01, 0x19, 0x10, 0x84, 0x21, 0x11, 0x19, 0x10, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x01, 0x21, 0x10, 0x8A, 0x19, 0x10, 0x21, 0x11, 0x19, 0x10, 0x21, 0x11, 0x19, 0x11, 0x21, 0x11, 0x19, 0x11, 0x21, 0x11, 0x19, 0x10, 0x21, 0x11, 0x21, 0x10, 0x01, 0x19, 0x10, 0x83, 0x21, 0x10, 0x21, 0x11, 0x21, 0x10, 0x19, 0x10, 0x02, 0x21, 0x11, 0x81, 0x19, 0x10, 0x21, 0x11, 0x01, 0x21, 0x10, 0x01, 0x19, 0x10, 0x83, 0x21, 0x11, 0x19, 0x11, 0x19, 0x10, 0x21, 0x11, 0x01, 0x19, 0x11, 0x84, 0x19, 0x10, 0x21, 0x11, 0x18, 0xF0, 0x19, 0x31, 0x21, 0x31, 0x01, 0x19, 0x10, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x21, 0x11, 0x81, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x19, 0x10, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x19, 0x10, 0x01, 0x21, 0x11, 0x83, 0x21, 0x10, 0x19, 0x10, 0x21, 0x11, 0x21, 0x10, 0x01, 0x19, 0x10, 0x05, 0x21, 0x10, 0x80, 0x21, 0x31, 0x02, 0x19, 0x10, 0x81, 0x21, 0x10, 0x19, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x11, 0x19, 0x10, 0x01, 0x21, 0x11, 0x81, 0x21, 0x10, 0x19, 0x10, 0x01, 0x21, 0x11, 0x01, 0x19, + 0x10, 0x82, 0x21, 0x11, 0x21, 0x10, 0x21, 0x11, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x19, 0x10, 0x21, 0x10, 0x01, 0x19, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x10, 0x01, 0x21, 0x10, 0x01, 0x19, 0x10, 0x01, 0x21, 0x10, 0x01, 0x19, 0x10, 0x83, 0x21, 0x31, 0x19, 0x10, 0x21, 0x30, 0x19, 0x10, 0x02, 0x21, 0x10, 0x82, 0x19, 0x10, 0x21, 0x10, 0x21, 0x31, 0x01, 0x19, 0x10, 0x84, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x19, 0x10, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x02, 0x19, 0x32, 0x86, 0x19, 0x12, 0x19, 0x33, 0x19, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x09, 0xF8, 0x81, 0x0A, 0x39, 0x0A, 0x19, 0x01, 0x12, 0x18, 0x85, 0x19, 0xD7, 0x19, 0x75, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x01, 0x19, 0x2F, 0x8B, 0x11, 0x2F, 0x09, 0x50, 0x01, 0x4F, 0x01, 0xD1, 0x2B, 0xFA, 0x24, 0x3A, 0x1C, 0x19, 0x1C, 0x3A, 0x1B, 0xF9, 0x23, 0xB8, 0x01, 0x6F, 0x01, 0x0E, 0x01, 0x11, 0x2F, 0x93, 0x19, 0x90, 0x19, 0x6F, 0x09, 0x2E, 0x01, 0x4E, 0x23, 0x77, 0x34, 0x9B, 0x24, 0x5A, 0x14, 0x39, 0x0C, 0x18, 0x0C, 0x38, 0x0C, 0x19, 0x0C, 0x18, 0x0B, 0xF8, 0x13, 0xF8, 0x1C, 0x39, 0x2C, 0x5A, 0x3C, 0x5A, 0x2B, 0x57, 0x00, 0xEE, 0x08, 0xEF, 0x01, 0x19, 0x30, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, + 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x09, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x89, 0x21, 0xD6, 0x19, 0x75, 0x11, 0x33, 0x10, 0xF1, 0x19, 0x11, 0x19, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xD7, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x11, 0x01, 0x29, 0x31, 0x87, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x12, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x74, 0x10, 0xF2, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x0F, + 0x29, 0x10, 0x02, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x8C, 0x21, 0x0F, 0x28, 0xEF, 0x28, 0xCE, 0x28, 0xAD, 0x28, 0x0A, 0xAB, 0xB8, 0xD4, 0x9A, 0xDC, 0x99, 0xE4, 0x99, 0xE4, 0x78, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x84, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x36, 0xDC, 0x37, 0x05, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x88, 0xDC, 0x57, 0xDC, 0x58, 0xDC, 0x98, 0xDC, 0xBA, 0xDD, 0x1C, 0x48, 0xEC, 0x18, 0x09, 0x28, 0xCD, 0x31, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x09, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x04, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x8B, 0x21, 0x50, 0x21, 0x30, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x21, 0xD6, 0x21, 0xF7, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, + 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0x75, 0x11, 0x33, 0x19, 0x32, 0x11, 0x11, 0x18, 0xF0, 0x19, 0x10, 0x01, 0x21, 0x31, 0x81, 0x20, 0xF0, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x50, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x19, 0x54, 0x19, 0xB6, 0x19, 0xD8, 0x11, 0xF8, 0x09, 0xB8, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x01, 0x09, 0xD9, 0x86, 0x11, 0xD8, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x53, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x0A, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, + 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x88, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8E, 0x19, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x32, 0x19, + 0x31, 0x21, 0x52, 0x01, 0x21, 0x51, 0x01, 0x21, 0x31, 0x80, 0x19, 0x10, 0x03, 0x21, 0x10, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x80, 0x21, 0x30, 0x04, 0x21, 0x31, 0x83, 0x19, 0x10, 0x21, 0x31, 0x19, 0x10, 0x19, 0x31, 0x01, 0x21, 0x31, 0x82, 0x19, 0x10, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x92, 0x21, 0x30, 0x21, 0x10, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x19, 0x52, 0x19, 0x53, 0x11, 0x33, 0x11, 0x55, 0x11, 0x96, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xF8, 0x19, 0xF9, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x53, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x88, 0x21, 0x52, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x12, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB6, 0x19, 0xD8, 0x02, 0x11, 0xF8, 0x85, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x54, 0x09, 0x12, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x10, 0x21, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x02, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x04, 0x21, 0x31, 0x01, 0x21, 0x51, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0E, 0x21, 0x10, 0x80, 0x21, + 0x30, 0x0E, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0A, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x01, 0x21, 0x30, 0x07, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x06, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x19, 0x12, 0x85, 0x19, 0x53, 0x11, 0x74, 0x11, 0x95, 0x19, 0xD7, 0x11, 0xD7, 0x11, 0xF7, 0x01, 0x1A, 0x18, 0x86, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, + 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x19, 0x0F, 0x01, 0x19, 0x2F, 0x8B, 0x11, 0x50, 0x09, 0x70, 0x01, 0x4F, 0x01, 0xD1, 0x2B, 0xFA, 0x24, 0x1A, 0x1C, 0x3A, 0x1C, 0x19, 0x1B, 0xF9, 0x23, 0xB8, 0x01, 0x4F, 0x00, 0xED, 0x01, 0x11, 0x4F, 0x87, 0x19, 0x70, 0x11, 0x4F, 0x09, 0x0E, 0x01, 0x4E, 0x23, 0x76, 0x2C, 0x7A, 0x14, 0x19, 0x14, 0x39, 0x01, 0x0C, 0x38, 0x8B, 0x0C, 0x39, 0x04, 0x18, 0x0C, 0x18, 0x0C, 0x19, 0x1C, 0x19, 0x24, 0x3A, 0x34, 0x5A, 0x23, 0x57, 0x00, 0xEE, 0x09, 0x0F, 0x19, 0x30, 0x19, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x84, 0x21, 0xF6, 0x19, 0x74, 0x11, 0x33, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8F, 0x21, 0x31, 0x21, 0x72, 0x19, 0x52, 0x11, 0x32, 0x09, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x03, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x03, + 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x12, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x29, 0x0F, 0x28, 0xEF, 0x28, 0xCE, 0x28, 0x6C, 0x51, 0x2E, 0xD4, 0xBB, 0xD4, 0x99, 0xDC, 0x99, 0xDC, 0x78, 0x03, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x81, 0xDC, 0x57, 0xDC, 0x36, 0x01, 0xDC, 0x57, 0x82, 0xDC, 0x36, 0xDC, 0x37, 0xE4, 0x57, 0x03, 0xDC, 0x57, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x8A, 0xDC, 0x57, 0xDC, 0x78, 0xDC, 0xB9, 0xD4, 0xDB, 0x61, 0xAF, 0x20, 0x09, 0x30, 0xEE, 0x29, 0x0E, 0x28, 0xEF, 0x29, 0x0F, 0x20, 0xEF, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x03, 0x29, 0x10, 0x04, + 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x29, 0xF7, 0x21, 0xD7, 0x21, 0xB6, 0x11, 0x13, 0x19, 0x32, 0x01, 0x19, 0x31, 0x83, 0x21, 0x30, 0x21, 0x50, 0x19, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x74, 0x21, 0xF7, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x33, 0x10, 0xF2, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x11, + 0x19, 0x11, 0x19, 0x12, 0x19, 0x33, 0x19, 0x95, 0x19, 0xD7, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0xB8, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x01, 0x09, 0xD8, 0x83, 0x11, 0xB7, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x32, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x87, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x29, 0x30, 0x02, 0x21, 0x30, 0x85, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, + 0x29, 0x10, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x20, 0xEF, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8F, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x13, 0x11, 0x54, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF6, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x32, 0x19, 0x52, 0x21, 0x52, 0x01, 0x21, 0x51, 0x03, 0x19, 0x31, 0x01, 0x21, 0x31, 0x83, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, 0x03, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x02, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x50, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x01, 0x11, 0x33, 0x83, 0x11, 0x55, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xD8, 0x01, 0x19, 0xF9, 0x86, 0x11, + 0xF8, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x01, 0x19, 0x31, 0x92, 0x21, 0x52, 0x21, 0x32, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xF8, 0x11, 0xD8, 0x19, 0xD7, 0x11, 0x96, 0x11, 0x95, 0x09, 0x33, 0x11, 0x12, 0x19, 0x32, 0x21, 0x52, 0x07, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x19, 0x30, 0x01, 0x21, 0x30, 0x82, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x11, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x04, 0x21, 0x10, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x31, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x02, 0x21, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x1E, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x0E, 0x21, 0x10, 0x05, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, + 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x06, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x87, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x21, 0x10, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x19, 0x33, 0x02, 0x19, 0x74, 0x85, 0x11, 0x74, 0x19, 0x95, 0x19, 0x74, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x01, 0x19, 0x50, 0x8A, 0x11, 0x70, 0x01, 0x2F, 0x01, 0xD1, 0x2B, 0xF9, 0x24, 0x3A, 0x24, 0x5A, 0x1C, 0x3A, 0x1B, 0xF9, 0x23, 0x98, 0x01, 0x4F, 0x01, 0x0E, 0x01, 0x11, 0x2F, 0x01, 0x19, 0x70, 0x85, 0x09, 0x0E, 0x01, 0x4F, 0x23, 0xB7, 0x24, 0x7A, 0x0C, 0x18, 0x0C, 0x39, 0x01, 0x04, 0x18, 0x89, 0x0C, 0x59, 0x0C, 0x39, 0x04, 0x18, 0x0C, 0x18, 0x13, 0xF8, 0x1C, 0x19, 0x2C, 0x39, 0x2B, + 0x77, 0x00, 0xEE, 0x09, 0x0F, 0x01, 0x19, 0x50, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x51, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x19, 0x31, 0x8A, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x03, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x12, 0x21, + 0xB5, 0x2A, 0x17, 0x21, 0xF6, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x89, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x28, 0xEF, 0x28, 0xAD, 0x18, 0x0A, 0xA3, 0x97, 0xDC, 0xDB, 0xDC, 0xDA, 0xE4, 0x99, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x36, 0x04, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x05, 0xDC, 0x57, 0x8C, 0xDC, 0x36, 0xDC, 0x37, 0xE4, 0x77, 0xE4, 0x57, 0xDC, 0x58, 0xDC, 0x99, 0xDC, 0xBA, 0xD4, 0xFB, 0x30, 0x6B, 0x20, 0x6B, 0x20, 0xAD, 0x28, 0xEE, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x50, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x01, 0x11, 0x33, + 0x87, 0x19, 0xB6, 0x21, 0xF7, 0x21, 0xD7, 0x19, 0x96, 0x11, 0x33, 0x11, 0x12, 0x19, 0x52, 0x19, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x11, 0x19, 0x12, 0x11, 0x33, 0x21, 0xD6, 0x22, 0x38, 0x19, 0xF7, 0x19, 0xD6, 0x09, 0x54, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x19, 0x33, 0x19, 0x54, 0x19, 0xB6, 0x19, 0xF7, 0x11, 0xD7, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xF8, 0x01, 0x09, 0xD8, 0x85, 0x11, 0xD7, 0x11, 0xF7, 0x11, 0xB6, 0x19, 0x95, 0x21, 0x94, 0x19, 0x53, 0x01, 0x19, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x50, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x06, + 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x86, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x2F, 0x88, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x11, 0x54, 0x19, 0x96, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x11, 0x31, 0x02, 0x19, 0x31, + 0x84, 0x21, 0x52, 0x21, 0x51, 0x19, 0x51, 0x19, 0x31, 0x19, 0x51, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x03, 0x19, 0x11, 0x01, 0x19, 0x12, 0x01, 0x19, 0x11, 0x05, 0x19, 0x12, 0x81, 0x11, 0x11, 0x19, 0x11, 0x01, 0x19, 0x12, 0x80, 0x11, 0x11, 0x01, 0x19, 0x32, 0x82, 0x19, 0x12, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x8F, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xF8, 0x19, 0xF9, 0x1A, 0x19, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x76, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x19, 0xF8, 0x1A, 0x19, 0x11, 0xF8, 0x01, 0x11, 0xD7, 0x83, 0x11, 0x75, 0x09, 0x33, 0x09, 0x12, 0x11, 0x32, 0x01, 0x19, 0x32, 0x06, 0x19, 0x31, 0x01, 0x19, 0x51, 0x04, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x21, 0x11, 0x0A, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x50, 0x21, 0x30, 0x21, 0x50, 0x04, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, + 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, + 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x05, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x03, 0x19, 0x32, 0x81, 0x11, 0x12, 0x11, 0x11, 0x02, 0x19, 0x11, 0x80, 0x19, 0x31, 0x04, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x95, 0x19, 0x4F, 0x11, 0x4F, 0x09, 0x50, 0x01, 0x2F, 0x01, 0xD1, 0x2B, 0xD9, 0x24, 0x19, 0x1C, 0x39, 0x24, 0x39, 0x1C, 0x19, 0x23, 0x98, 0x01, 0x4F, 0x00, 0xEE, 0x19, 0x4F, 0x11, 0x0E, 0x19, 0x4F, 0x19, 0x70, 0x09, 0x0E, 0x01, 0x2E, 0x2B, 0xD8, 0x1C, 0x39, 0x0C, 0x18, 0x01, 0x04, 0x18, 0x8E, 0x04, 0x39, 0x04, 0x18, 0x03, 0xF8, 0x04, 0x18, 0x0C, 0x19, 0x14, 0x39, 0x1C, 0x19, 0x2C, 0x5A, 0x23, 0x57, 0x01, 0x0F, 0x09, 0x0F, 0x11, 0x50, 0x19, 0x50, 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, + 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x85, 0x21, 0x51, 0x19, 0x52, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x8F, 0x21, 0xF6, 0x19, 0x74, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x29, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x85, 0x21, 0x50, 0x21, 0x10, 0x21, 0x30, 0x19, 0x30, 0x19, 0x11, 0x11, 0x11, 0x01, 0x11, 0x32, 0x81, 0x19, 0x74, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x8F, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x12, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x94, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x10, + 0x82, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x89, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0x8C, 0x38, 0x8C, 0xD4, 0xFC, 0xDC, 0xDA, 0xDC, 0xB9, 0xE4, 0x98, 0x03, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xDC, 0x36, 0x01, 0xDC, 0x57, 0x83, 0xDC, 0x37, 0xDC, 0x36, 0xDC, 0x57, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x83, 0xDC, 0x57, 0xE4, 0x57, 0xDC, 0x36, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x89, 0xDC, 0x58, 0xDC, 0x78, 0xDC, 0xB9, 0xE5, 0x5D, 0x6A, 0x11, 0x20, 0x0A, 0x28, 0xAD, 0x28, 0xEE, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x84, 0x19, 0x30, 0x19, 0x52, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x01, 0x21, 0xD7, 0x84, 0x19, 0xB6, 0x11, 0x13, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, + 0x30, 0x80, 0x19, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8D, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x53, 0x22, 0x17, 0x1A, 0x17, 0x22, 0x18, 0x11, 0x95, 0x09, 0x13, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x89, 0x21, 0x31, 0x21, 0x10, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0x95, 0x11, 0xB6, 0x19, 0xF7, 0x03, 0x11, 0xD7, 0x85, 0x11, 0xD6, 0x19, 0xB5, 0x19, 0x94, 0x19, 0x73, 0x19, 0x52, 0x19, 0x31, 0x01, 0x21, 0x51, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x03, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x08, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x04, + 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x09, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x89, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x50, 0x02, 0x21, 0x30, 0x01, 0x19, 0x11, 0x82, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x02, 0x21, 0xF7, 0x86, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x32, 0x19, 0x31, 0x19, 0x51, 0x04, 0x19, 0x31, 0x01, 0x19, 0x52, 0x80, 0x11, 0x32, 0x02, 0x19, 0x32, 0x03, 0x11, 0x32, 0x01, 0x11, 0x12, + 0x01, 0x11, 0x33, 0x82, 0x11, 0x12, 0x11, 0x33, 0x11, 0x32, 0x03, 0x11, 0x12, 0x06, 0x11, 0x32, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x50, 0x80, 0x21, 0x30, 0x01, 0x19, 0x31, 0x86, 0x19, 0x32, 0x19, 0x33, 0x11, 0x13, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x02, 0x19, 0xF9, 0x87, 0x19, 0xF8, 0x11, 0x97, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x11, 0x11, 0x19, 0x31, 0x19, 0x10, 0x02, 0x21, 0x31, 0x85, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x96, 0x19, 0xB7, 0x01, 0x11, 0xD7, 0x87, 0x19, 0xF8, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0xB6, 0x09, 0x75, 0x09, 0x34, 0x00, 0xF2, 0x08, 0xF2, 0x01, 0x11, 0x12, 0x01, 0x11, 0x11, 0x82, 0x11, 0x12, 0x11, 0x11, 0x11, 0x31, 0x02, 0x11, 0x11, 0x80, 0x11, 0x31, 0x02, 0x11, 0x11, 0x01, 0x10, 0xF1, 0x0A, 0x19, 0x11, 0x03, 0x19, 0x31, 0x01, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, + 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x06, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x09, 0x21, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, + 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x31, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x10, 0x03, 0x21, 0x30, 0x83, 0x29, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x88, 0x21, 0x4F, 0x19, 0x2F, 0x11, 0x4F, 0x11, 0x50, 0x01, 0x2F, 0x01, 0xB1, 0x2B, 0xD9, 0x24, 0x1A, 0x24, 0x5A, 0x01, 0x1C, 0x19, 0x82, 0x23, 0xB8, 0x01, 0x6F, 0x01, 0x0E, 0x03, 0x19, 0x4F, 0x87, 0x09, 0x2F, 0x01, 0x2F, 0x2B, 0xF8, 0x24, 0x7A, 0x14, 0x39, 0x0C, 0x39, 0x04, 0x18, 0x04, 0x38, 0x03, 0x04, 0x18, 0x88, 0x14, 0x39, 0x1C, 0x39, 0x2C, 0x39, 0x2B, 0x97, 0x01, 0x0F, 0x09, 0x30, 0x11, 0x50, 0x19, 0x30, 0x19, 0x2F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x30, 0x21, 0x51, 0x21, 0x72, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xF7, 0x01, 0x22, 0x17, 0x85, 0x21, 0xF6, 0x19, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, + 0x21, 0x10, 0x8E, 0x19, 0x30, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD7, 0x21, 0xF7, 0x11, 0x74, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8A, 0x21, 0x32, 0x19, 0x52, 0x11, 0x12, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xD6, 0x11, 0x74, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x30, 0xEE, 0x28, 0x4B, 0x8A, 0xF4, 0xDD, 0x1B, 0x01, 0xDC, 0xB9, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x36, 0x02, 0xDC, 0x57, 0x82, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x36, 0x04, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x89, 0xDC, 0x57, 0xE4, 0x57, 0xDC, 0x58, 0xDC, 0x78, 0xDC, 0x99, 0xE5, 0x5C, 0xB4, 0x59, 0x28, 0x4A, 0x28, 0xCD, 0x28, 0xEE, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x21, + 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x04, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x91, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x21, 0xF8, 0x21, 0xF7, 0x19, 0xB6, 0x09, 0x13, 0x10, 0xF2, 0x19, 0x32, 0x21, 0x51, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x92, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x19, 0xB5, 0x22, 0x38, 0x22, + 0x18, 0x19, 0xF7, 0x09, 0x13, 0x08, 0xF2, 0x11, 0x12, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x85, 0x21, 0x10, 0x29, 0x30, 0x29, 0x50, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x88, 0x21, 0x31, 0x21, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x53, 0x19, 0x74, 0x11, 0x95, 0x11, 0x75, 0x01, 0x11, 0x95, 0x01, 0x11, 0x54, 0x87, 0x19, 0x53, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x19, 0x10, 0x21, 0x31, 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x50, 0x81, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x0F, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, + 0x03, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x88, 0x21, 0x50, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0x95, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x80, 0x19, 0x95, 0x01, 0x11, 0x12, 0x84, 0x11, 0x11, 0x19, 0x31, 0x21, 0x52, 0x21, 0x72, 0x19, 0x31, 0x02, 0x11, 0x11, 0x83, 0x11, 0x32, 0x11, 0x52, 0x11, 0x53, 0x11, 0x73, 0x03, 0x11, 0x53, 0x84, 0x11, 0x73, 0x11, 0x74, 0x11, 0x54, 0x19, 0x74, 0x19, 0x54, 0x05, 0x19, 0x74, 0x80, 0x19, 0x94, 0x01, 0x19, 0x74, 0x80, 0x19, 0x95, 0x01, 0x19, 0x94, 0x80, 0x19, 0x95, 0x03, 0x19, 0x94, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x82, 0x21, 0x31, 0x21, 0x11, 0x19, 0x31, 0x01, 0x19, 0x32, 0x84, 0x11, 0x33, 0x11, + 0x53, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xB7, 0x01, 0x19, 0xF9, 0x85, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x53, 0x02, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x84, 0x19, 0x53, 0x11, 0x75, 0x19, 0x96, 0x11, 0x96, 0x11, 0xD7, 0x02, 0x11, 0xD8, 0x01, 0x11, 0xD7, 0x82, 0x11, 0xB6, 0x09, 0x75, 0x09, 0x54, 0x01, 0x11, 0x54, 0x80, 0x11, 0x53, 0x01, 0x09, 0x53, 0x82, 0x09, 0x33, 0x09, 0x53, 0x09, 0x33, 0x03, 0x09, 0x32, 0x80, 0x09, 0x12, 0x01, 0x11, 0x33, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x84, 0x09, 0x12, 0x11, 0x32, 0x11, 0x12, 0x09, 0x32, 0x09, 0x12, 0x01, 0x11, 0x12, 0x80, 0x09, 0x11, 0x01, 0x11, 0x12, 0x01, 0x11, 0x11, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x87, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, + 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x07, 0x21, 0x10, 0x81, 0x21, 0x30, 0x19, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x91, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, + 0x21, 0x4F, 0x19, 0x4F, 0x19, 0x50, 0x11, 0x50, 0x01, 0x2F, 0x01, 0xB1, 0x2B, 0xD9, 0x24, 0x19, 0x1C, 0x39, 0x1C, 0x3A, 0x24, 0x19, 0x23, 0xB8, 0x01, 0x4F, 0x00, 0xEE, 0x19, 0x4F, 0x01, 0x19, 0x2F, 0x86, 0x19, 0x50, 0x09, 0x2F, 0x01, 0x2F, 0x2B, 0xD8, 0x24, 0x7A, 0x14, 0x59, 0x0C, 0x39, 0x02, 0x04, 0x18, 0x01, 0x04, 0x39, 0x87, 0x0C, 0x19, 0x0C, 0x18, 0x14, 0x19, 0x2C, 0x3A, 0x23, 0x57, 0x01, 0x0E, 0x09, 0x2F, 0x11, 0x50, 0x01, 0x19, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x86, 0x21, 0x51, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x21, 0xF7, 0x01, 0x22, 0x17, 0x83, 0x21, 0xF6, 0x19, 0x74, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x85, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x81, 0x19, 0xB6, 0x11, 0x33, 0x01, 0x19, 0x32, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, + 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x12, 0x19, 0x95, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x87, 0x29, 0x0F, 0x28, 0xEE, 0x30, 0xEE, 0x30, 0x8B, 0xC4, 0x7A, 0xDC, 0xDA, 0xDC, 0xB9, 0xDC, 0x78, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x82, 0xDC, 0x36, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x57, 0x02, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x8C, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0xE4, 0x58, 0xDC, 0x58, 0xDC, 0x78, 0xDC, 0x99, 0xE5, 0x1C, 0xCC, 0xBB, 0x40, 0xED, 0x28, 0xAC, 0x20, 0xAD, 0x28, 0xEF, 0x01, 0x29, 0x0F, 0x88, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, + 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x88, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x8C, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x34, 0x19, 0x96, 0x21, 0xF8, 0x21, 0xD8, 0x19, 0xB7, 0x09, 0x13, 0x10, 0xF2, 0x19, 0x32, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x89, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x05, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x88, 0x21, 0x11, 0x10, 0xF1, 0x19, 0xB5, 0x22, 0x38, 0x1A, 0x18, 0x19, 0xD6, 0x09, 0x13, 0x10, 0xF1, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, + 0x81, 0x21, 0x30, 0x29, 0x50, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x32, 0x11, 0x32, 0x02, 0x11, 0x33, 0x82, 0x19, 0x33, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x30, 0x19, 0x10, 0x05, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x14, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x06, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, + 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x50, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x19, 0x32, 0x11, 0x53, 0x19, 0x95, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x8D, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x19, 0x52, 0x21, 0x52, 0x19, 0x31, 0x19, 0x11, 0x11, 0x31, 0x11, 0x11, 0x11, 0x32, 0x19, 0x73, 0x21, 0xD5, 0x01, 0x21, 0xF6, 0x80, 0x22, 0x16, 0x01, 0x2A, 0x17, 0x82, 0x2A, 0x37, 0x2A, 0x57, 0x2A, 0x37, 0x01, 0x32, 0x37, 0x82, 0x2A, 0x17, 0x32, 0x37, 0x2A, 0x17, 0x01, 0x32, 0x37, 0x83, 0x2A, 0x37, 0x32, 0x37, 0x2A, 0x37, 0x32, 0x37, 0x01, 0x2A, 0x37, 0x01, 0x2A, 0x17, 0x01, 0x2A, 0x16, 0x80, 0x21, 0xF6, 0x01, 0x29, 0xD6, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x89, 0x21, 0x11, 0x21, 0x31, 0x19, 0x32, 0x19, 0x12, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xB8, 0x11, 0xF9, 0x01, 0x12, 0x19, 0x85, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x74, 0x11, 0x32, 0x11, 0x31, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x32, 0x84, 0x11, 0x33, 0x11, 0x54, 0x11, 0x55, + 0x11, 0x96, 0x11, 0xB7, 0x02, 0x11, 0xF8, 0x83, 0x09, 0xD7, 0x11, 0xD7, 0x11, 0xF7, 0x11, 0xD7, 0x03, 0x19, 0xF7, 0x80, 0x11, 0xF7, 0x05, 0x19, 0xF7, 0x01, 0x1A, 0x17, 0x01, 0x19, 0xF7, 0x02, 0x19, 0xD7, 0x80, 0x19, 0xF7, 0x02, 0x19, 0xD7, 0x81, 0x19, 0xF6, 0x11, 0xD6, 0x02, 0x19, 0xD6, 0x85, 0x11, 0xD6, 0x19, 0xD6, 0x11, 0xB5, 0x11, 0x74, 0x11, 0x53, 0x19, 0x52, 0x02, 0x19, 0x11, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, + 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x07, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x50, 0x21, 0x2F, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x87, 0x19, 0x4F, 0x19, 0x50, 0x11, 0x70, 0x01, 0x2F, 0x01, 0xD2, 0x2B, 0xF9, 0x24, 0x19, 0x1C, 0x39, 0x01, 0x24, 0x3A, 0x8D, 0x23, 0xB8, 0x01, + 0x2F, 0x00, 0xEE, 0x19, 0x50, 0x11, 0x0F, 0x19, 0x4F, 0x19, 0x50, 0x09, 0x2F, 0x01, 0x2E, 0x2B, 0xD8, 0x1C, 0x39, 0x0C, 0x19, 0x04, 0x18, 0x04, 0x38, 0x01, 0x04, 0x18, 0x8A, 0x04, 0x39, 0x04, 0x18, 0x0C, 0x19, 0x0B, 0xF8, 0x14, 0x19, 0x2C, 0x5A, 0x1B, 0x36, 0x01, 0x0F, 0x09, 0x2F, 0x11, 0x30, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x52, 0x8B, 0x11, 0x33, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x20, 0xEF, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x51, 0x8A, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x54, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, + 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x8A, 0x21, 0x32, 0x19, 0x32, 0x11, 0x12, 0x19, 0x95, 0x29, 0xF7, 0x21, 0xD6, 0x19, 0x54, 0x10, 0xF2, 0x19, 0x12, 0x21, 0x52, 0x21, 0x51, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x86, 0x29, 0x0E, 0x28, 0xCE, 0x20, 0x6B, 0x59, 0xAF, 0xDD, 0x1B, 0xDC, 0xDA, 0xDC, 0xB9, 0x04, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x06, 0xDC, 0x57, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x58, 0x8E, 0xDC, 0x78, 0xD4, 0x99, 0xCC, 0x9A, 0x51, 0x2D, 0x41, 0x2E, 0x20, 0xAD, 0x28, 0xEE, 0x20, 0xEF, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x05, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x8B, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, + 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x50, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x50, 0x21, 0x50, 0x01, 0x21, 0x30, 0x88, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x34, 0x19, 0xB7, 0x21, 0xF8, 0x19, 0xF8, 0x19, 0xB7, 0x09, 0x14, 0x01, 0x11, 0x12, 0x83, 0x19, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x87, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x19, 0xB5, 0x01, 0x1A, 0x18, 0x8A, 0x19, 0xB6, 0x08, 0xF2, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x19, 0x10, 0x19, 0x31, 0x01, 0x19, 0x52, 0x01, 0x19, 0x32, 0x84, 0x19, 0x12, 0x19, 0x32, 0x21, 0x52, 0x19, 0x51, 0x19, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, + 0x19, 0x2F, 0x02, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x4F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x19, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x4F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x4F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x86, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x31, 0x80, 0x21, 0x11, 0x02, 0x21, 0x31, 0x07, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x50, 0x21, 0x50, 0x01, 0x21, 0x30, 0x91, 0x19, 0x10, 0x19, 0x11, 0x19, 0x31, 0x19, 0x52, 0x11, 0x53, 0x19, 0x95, 0x21, 0xF6, 0x22, 0x17, 0x21, 0xF6, 0x19, 0x95, 0x11, + 0x53, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x19, 0x51, 0x19, 0x52, 0x19, 0x31, 0x11, 0x11, 0x01, 0x11, 0x12, 0x81, 0x19, 0x74, 0x21, 0xD5, 0x01, 0x21, 0xF6, 0x81, 0x22, 0x17, 0x2A, 0x37, 0x01, 0x21, 0xF7, 0x81, 0x22, 0x17, 0x2A, 0x17, 0x03, 0x2A, 0x37, 0x80, 0x2A, 0x17, 0x02, 0x21, 0xF6, 0x03, 0x29, 0xF6, 0x02, 0x2A, 0x16, 0x83, 0x29, 0xF6, 0x2A, 0x16, 0x29, 0xF6, 0x21, 0xF6, 0x02, 0x21, 0xD6, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x92, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x09, 0x96, 0x11, 0xD8, 0x1A, 0x19, 0x12, 0x19, 0x1A, 0x19, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x03, 0x19, 0x31, 0x87, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x11, 0x96, 0x19, 0xD7, 0x11, 0xD7, 0x01, 0x11, 0xD8, 0x01, 0x11, 0xF8, 0x80, 0x12, 0x18, 0x0C, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x02, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x02, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x02, 0x12, 0x18, 0x81, 0x11, 0xF8, 0x12, 0x18, 0x02, 0x1A, 0x18, 0x87, 0x19, 0xF7, 0x11, 0xB5, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, + 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x89, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, + 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x19, 0x2F, 0x21, 0x50, 0x19, 0x4F, 0x02, 0x19, 0x2F, 0x01, 0x21, 0x50, 0x03, 0x21, 0x2F, 0x8D, 0x19, 0x4F, 0x11, 0x4F, 0x11, 0x70, 0x01, 0x2F, 0x01, 0xD1, 0x2B, 0xD9, 0x24, 0x1A, 0x24, 0x5A, 0x1C, 0x39, 0x1B, 0xF9, 0x23, 0x98, 0x01, 0x4F, 0x00, 0xCD, 0x19, 0x50, 0x01, 0x19, 0x4F, 0x87, 0x11, 0x2F, 0x09, 0x2F, 0x01, 0x0E, 0x2B, 0xD8, 0x1C, 0x19, 0x0C, 0x18, 0x0C, 0x39, 0x04, 0x18, 0x01, 0x04, 0x39, 0x01, 0x04, 0x19, 0x88, 0x0C, 0x19, 0x14, 0x39, 0x1C, 0x39, 0x34, 0x7B, 0x1A, 0xF5, 0x01, 0x0F, 0x09, 0x2F, 0x11, 0x50, 0x19, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x02, + 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x9B, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x51, 0x21, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x19, 0xD6, 0x22, 0x17, 0x22, 0x18, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x09, 0x34, 0x19, 0xB6, 0x19, 0xF8, 0x19, 0xF7, 0x19, 0xB5, 0x11, 0x32, 0x01, 0x19, 0x32, 0x82, 0x21, 0x31, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8C, 0x21, 0x32, 0x19, 0x32, 0x11, 0x12, 0x21, 0xB5, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x95, 0x10, 0xF2, 0x19, 0x12, 0x21, 0x52, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, + 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x86, 0x28, 0xEE, 0x28, 0xCE, 0x20, 0x2A, 0xA3, 0xB6, 0xD4, 0xDA, 0xDC, 0x99, 0xDC, 0x98, 0x03, 0xDC, 0x57, 0x81, 0xDC, 0x36, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x04, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x03, 0xDC, 0x37, 0x04, 0xDC, 0x57, 0x82, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x58, 0x01, 0xDC, 0x99, 0x85, 0xCC, 0x59, 0x48, 0xEC, 0x38, 0xED, 0x28, 0xAD, 0x28, 0xCE, 0x20, 0xEE, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x50, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x92, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x50, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x09, 0x34, 0x19, 0xB7, 0x19, 0xF8, 0x19, 0xD8, 0x19, 0xD7, 0x11, 0x55, 0x09, 0x13, 0x11, 0x32, 0x19, 0x52, 0x21, 0x51, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x29, 0x30, 0x01, 0x21, 0x30, + 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x10, 0x88, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x19, 0xD6, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0xB6, 0x09, 0x12, 0x11, 0x11, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x88, 0x21, 0x30, 0x29, 0x30, 0x29, 0x50, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x19, 0x30, 0x05, 0x19, 0x31, 0x81, 0x21, 0x51, 0x21, 0x50, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x01, 0x19, 0x30, 0x80, 0x19, 0x50, 0x01, 0x21, 0x50, 0x85, 0x19, 0x2F, 0x19, 0x50, 0x21, 0x50, 0x19, 0x2F, 0x21, 0x50, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x50, 0x21, 0x2F, 0x21, 0x50, 0x21, 0x2F, 0x01, 0x21, 0x4F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x50, 0x02, 0x21, 0x30, 0x02, 0x19, 0x30, 0x02, 0x19, 0x2F, 0x81, 0x21, 0x50, 0x21, 0x4F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x50, 0x19, 0x4F, 0x19, 0x50, 0x19, 0x2F, 0x21, 0x50, 0x19, 0x2F, 0x02, 0x19, 0x30, 0x82, 0x19, 0x2F, + 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x30, 0x80, 0x21, 0x30, 0x02, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x0A, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x04, 0x21, 0x31, 0x81, 0x19, 0x11, 0x19, 0x32, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x05, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x50, 0x01, 0x19, 0x10, 0x85, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x94, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x85, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x11, 0x11, 0x11, 0x31, 0x19, 0x31, 0x01, 0x19, 0x52, 0x01, 0x11, 0x11, 0x83, 0x11, 0x32, 0x19, 0x74, 0x21, 0xD6, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x03, 0x21, 0xD6, 0x81, 0x19, 0xB5, 0x21, 0xB5, 0x02, 0x19, 0x95, 0x80, 0x19, 0x74, 0x01, 0x19, 0x94, 0x80, 0x19, 0x74, 0x01, 0x19, 0x94, + 0x01, 0x19, 0x74, 0x81, 0x21, 0x94, 0x19, 0x74, 0x03, 0x19, 0x94, 0x80, 0x21, 0x95, 0x03, 0x19, 0x74, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x87, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x09, 0x96, 0x11, 0xD8, 0x01, 0x12, 0x19, 0x87, 0x1A, 0x19, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x75, 0x11, 0x53, 0x11, 0x33, 0x19, 0x52, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x87, 0x19, 0x12, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xB7, 0x01, 0x09, 0xB7, 0x01, 0x09, 0x96, 0x02, 0x09, 0x97, 0x01, 0x09, 0xB7, 0x82, 0x09, 0x97, 0x09, 0xB7, 0x09, 0x97, 0x08, 0x09, 0xB7, 0x80, 0x09, 0x97, 0x02, 0x09, 0xB7, 0x80, 0x09, 0x97, 0x01, 0x09, 0xB7, 0x80, 0x09, 0x97, 0x03, 0x09, 0xB7, 0x87, 0x11, 0xD8, 0x12, 0x18, 0x1A, 0x18, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, + 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, + 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x50, 0x01, 0x19, 0x4F, 0x81, 0x19, 0x50, 0x19, 0x4F, 0x04, 0x19, 0x2F, 0x9A, 0x21, 0x30, 0x19, 0x2F, 0x21, 0x50, 0x21, 0x70, 0x19, 0x70, 0x11, 0x70, 0x01, 0x2F, 0x01, 0xB1, 0x2B, 0xD9, 0x24, 0x1A, 0x24, 0x3A, 0x1C, 0x3A, 0x24, 0x1A, 0x23, 0x98, 0x01, 0x4F, 0x00, 0xEE, 0x11, 0x2F, 0x11, 0x0F, 0x19, 0x70, 0x19, 0x50, 0x09, 0x2F, 0x01, 0x2E, 0x23, 0x97, 0x24, 0x19, 0x14, 0x19, 0x0C, 0x19, 0x03, 0xF8, 0x01, 0x04, 0x18, 0x80, 0x04, 0x39, 0x01, 0x03, 0xF8, 0x88, 0x14, 0x39, 0x24, 0x5A, 0x3C, 0x7B, 0x12, 0xB4, 0x01, 0x0F, 0x09, 0x0F, 0x11, 0x30, 0x19, 0x30, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x8A, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x21, 0x52, 0x19, 0x52, + 0x11, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0x95, 0x19, 0xD6, 0x01, 0x22, 0x18, 0x83, 0x19, 0xB6, 0x19, 0x75, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x11, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x50, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x89, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xF7, 0x22, 0x18, 0x22, 0x17, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x12, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x74, 0x10, 0xF1, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x01, 0x21, 0x30, 0x03, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x04, 0x29, 0x2F, 0x84, 0x29, 0x0E, 0x28, 0xEE, 0x28, 0x8C, 0x30, 0xAC, 0xCC, 0xDB, 0x01, 0xDC, 0xB9, 0x80, 0xDC, 0x78, 0x05, 0xDC, 0x57, 0x82, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x80, 0xDC, + 0x37, 0x01, 0xDC, 0x36, 0x82, 0xDC, 0x37, 0xDC, 0x57, 0xE4, 0x57, 0x02, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x8A, 0xDC, 0x78, 0xE4, 0xBA, 0xE4, 0xFB, 0x82, 0x51, 0x28, 0x2A, 0x28, 0x8C, 0x20, 0xAD, 0x28, 0xEE, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x07, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x8C, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x80, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8C, 0x11, 0x32, 0x11, 0x53, 0x09, 0x54, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xD8, 0x11, 0xB7, 0x11, 0x55, 0x09, 0x13, 0x11, 0x12, 0x19, 0x32, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, + 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x8B, 0x21, 0x11, 0x19, 0x12, 0x11, 0x12, 0x19, 0xD6, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x95, 0x09, 0x12, 0x19, 0x31, 0x21, 0x51, 0x21, 0x30, 0x18, 0xEF, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x19, 0x10, 0x07, 0x21, 0x30, 0x01, 0x21, 0x50, 0x80, 0x19, 0x30, 0x02, 0x19, 0x50, 0x80, 0x19, 0x4F, 0x06, 0x19, 0x50, 0x81, 0x19, 0x2F, 0x19, 0x4F, 0x02, 0x19, 0x2F, 0x81, 0x21, 0x2F, 0x19, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x4F, 0x03, 0x21, 0x50, 0x82, 0x19, 0x30, 0x19, 0x50, 0x19, 0x30, 0x06, 0x19, 0x50, 0x81, 0x19, 0x4F, 0x19, 0x2F, 0x03, 0x19, 0x50, 0x80, 0x19, 0x2F, 0x01, 0x19, 0x50, 0x02, 0x19, 0x30, 0x01, 0x19, 0x2F, 0x01, 0x19, 0x50, 0x02, 0x19, 0x30, 0x01, 0x21, 0x50, 0x82, 0x19, 0x30, 0x19, 0x50, 0x19, 0x30, 0x01, 0x19, 0x50, 0x80, 0x19, 0x30, 0x01, 0x19, 0x50, 0x03, 0x19, 0x30, 0x81, 0x19, 0x50, 0x19, 0x30, 0x02, 0x19, 0x2F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x50, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, + 0x30, 0x02, 0x21, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x81, 0x11, 0x12, 0x11, 0x32, 0x01, 0x11, 0x12, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x8A, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x10, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xF6, 0x22, 0x17, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x01, 0x11, 0x11, 0x01, 0x19, 0x52, 0x80, 0x19, 0x31, 0x01, 0x11, 0x11, 0x81, 0x11, 0x33, 0x19, 0x74, 0x01, 0x21, 0xD6, 0x84, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x19, 0x54, 0x02, 0x11, 0x33, 0x80, 0x11, 0x13, 0x05, 0x11, 0x12, 0x03, 0x11, 0x32, 0x02, 0x11, 0x12, 0x05, 0x11, 0x32, 0x01, 0x11, 0x12, 0x80, 0x19, 0x12, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8E, 0x19, 0x31, 0x11, + 0x31, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD7, 0x1A, 0x19, 0x12, 0x19, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x53, 0x01, 0x19, 0x32, 0x83, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x32, 0x83, 0x19, 0x33, 0x11, 0x54, 0x19, 0x95, 0x19, 0xD6, 0x02, 0x11, 0xD7, 0x01, 0x11, 0xB7, 0x85, 0x09, 0xB7, 0x11, 0xB7, 0x09, 0xB7, 0x09, 0x97, 0x11, 0xB7, 0x11, 0xD8, 0x01, 0x09, 0xB7, 0x80, 0x11, 0xB8, 0x01, 0x09, 0xB7, 0x81, 0x11, 0xD8, 0x11, 0xB8, 0x05, 0x11, 0xD8, 0x80, 0x09, 0xB7, 0x01, 0x11, 0xD8, 0x01, 0x09, 0xB7, 0x80, 0x11, 0xD8, 0x01, 0x09, 0xD7, 0x02, 0x09, 0xB7, 0x80, 0x09, 0xD7, 0x01, 0x11, 0xD8, 0x85, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x08, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x87, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, + 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x85, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, + 0x02, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x50, 0x19, 0x50, 0x19, 0x4F, 0x02, 0x11, 0x50, 0x83, 0x11, 0x4F, 0x11, 0x50, 0x11, 0x2F, 0x19, 0x50, 0x01, 0x19, 0x30, 0x02, 0x19, 0x50, 0x98, 0x11, 0x4F, 0x11, 0x50, 0x01, 0x2F, 0x01, 0xB2, 0x2B, 0xB9, 0x24, 0x1A, 0x1C, 0x1A, 0x24, 0x3A, 0x24, 0x19, 0x23, 0x98, 0x01, 0x4F, 0x00, 0xCD, 0x11, 0x2F, 0x19, 0x2F, 0x19, 0x50, 0x19, 0x4F, 0x11, 0x4F, 0x01, 0x0E, 0x2B, 0x97, 0x2C, 0x39, 0x1C, 0x19, 0x0C, 0x19, 0x03, 0xF8, 0x04, 0x18, 0x03, 0xF8, 0x01, 0x04, 0x18, 0x89, 0x0C, 0x19, 0x14, 0x19, 0x24, 0x5A, 0x3C, 0x7B, 0x12, 0x94, 0x00, 0xEE, 0x09, 0x0F, 0x11, 0x0F, 0x19, 0x0F, 0x21, 0x30, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x86, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x32, 0x19, 0x54, 0x19, 0x95, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x83, 0x21, 0xD6, 0x19, 0x75, 0x19, 0x53, 0x19, 0x32, 0x01, 0x19, 0x11, 0x81, 0x21, 0x31, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x09, 0x33, 0x19, 0xD7, 0x22, + 0x38, 0x21, 0xF7, 0x11, 0x53, 0x10, 0xF2, 0x19, 0x12, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x8B, 0x11, 0x12, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x74, 0x10, 0xF2, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x02, 0x29, 0x30, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x86, 0x28, 0xEE, 0x28, 0xCD, 0x20, 0x4B, 0x6A, 0x32, 0xD4, 0xDB, 0xDC, 0xDA, 0xDC, 0x78, 0x03, 0xDC, 0x57, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x36, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x04, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x82, 0xDC, 0x36, 0xE4, 0x57, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x8C, 0xDC, 0x37, 0xDC, 0x58, 0xE4, 0x99, 0xE4, 0xFB, 0xCC, 0x9A, 0x28, 0x09, 0x30, 0xAC, 0x28, 0xAD, 0x28, 0xEE, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x21, + 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x90, 0x21, 0x51, 0x19, 0x30, 0x19, 0x51, 0x19, 0x52, 0x11, 0x52, 0x11, 0x33, 0x09, 0x54, 0x19, 0xF7, 0x19, 0xF8, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x09, 0x13, 0x11, 0x12, 0x19, 0x32, 0x21, 0x51, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x04, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x8B, 0x21, 0x31, 0x21, 0x11, 0x19, 0x12, 0x11, 0x13, 0x19, 0xF7, 0x12, 0x17, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x88, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, + 0x20, 0xEF, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x19, 0x50, 0x84, 0x11, 0x2F, 0x19, 0x50, 0x11, 0x4F, 0x19, 0x50, 0x11, 0x4F, 0x02, 0x11, 0x50, 0x81, 0x11, 0x4F, 0x11, 0x50, 0x02, 0x11, 0x2F, 0x02, 0x19, 0x2F, 0x02, 0x19, 0x4F, 0x80, 0x19, 0x2F, 0x05, 0x19, 0x50, 0x80, 0x11, 0x2F, 0x03, 0x11, 0x50, 0x06, 0x19, 0x50, 0x07, 0x11, 0x50, 0x80, 0x11, 0x4F, 0x02, 0x11, 0x50, 0x01, 0x19, 0x30, 0x83, 0x19, 0x50, 0x11, 0x2F, 0x11, 0x30, 0x19, 0x50, 0x09, 0x11, 0x50, 0x02, 0x11, 0x30, 0x01, 0x11, 0x2F, 0x01, 0x19, 0x2F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x86, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x50, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x04, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x02, 0x19, 0x11, 0x83, 0x11, 0x12, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x02, 0x11, 0x95, 0x83, 0x11, 0x54, 0x11, 0x53, 0x11, 0x33, 0x11, 0x32, 0x02, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, + 0x81, 0x29, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x11, 0x11, 0x31, 0x11, 0x52, 0x11, 0x53, 0x11, 0x95, 0x19, 0xF6, 0x01, 0x22, 0x17, 0x84, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x11, 0x11, 0x01, 0x11, 0x32, 0x87, 0x11, 0x74, 0x19, 0xB6, 0x21, 0xD6, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x54, 0x11, 0x33, 0x01, 0x11, 0x13, 0x03, 0x11, 0x12, 0x80, 0x10, 0xF1, 0x02, 0x11, 0x12, 0x80, 0x19, 0x12, 0x02, 0x19, 0x32, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x85, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x11, 0x01, 0x19, 0x12, 0x86, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x08, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x51, 0x21, 0x30, 0x01, 0x19, 0x31, 0x87, 0x11, 0x11, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xF9, 0x01, 0x11, 0xD8, 0x83, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x80, 0x21, 0x52, 0x01, 0x21, 0x32, 0x8A, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x74, 0x19, 0xB5, 0x19, 0xB6, 0x19, 0xD6, 0x1A, 0x17, 0x19, 0xF7, 0x02, 0x1A, 0x18, 0x81, 0x19, 0xF8, 0x1A, + 0x18, 0x01, 0x19, 0xF8, 0x80, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x80, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x80, 0x19, 0xF8, 0x03, 0x1A, 0x18, 0x83, 0x19, 0xF8, 0x1A, 0x18, 0x11, 0xF7, 0x1A, 0x18, 0x04, 0x11, 0xF8, 0x81, 0x09, 0xD8, 0x11, 0xF8, 0x01, 0x11, 0xD8, 0x86, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x74, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x01, 0x21, 0x51, 0x81, 0x21, 0x30, 0x21, 0x50, 0x08, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, + 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, 0x19, 0x50, 0x01, 0x11, 0x4F, 0x80, 0x11, 0x50, 0x01, 0x09, 0x70, 0x01, 0x09, 0x4F, 0x80, 0x09, 0x50, 0x01, 0x11, 0x50, 0x82, 0x11, 0x30, 0x19, 0x30, 0x19, 0x2F, 0x01, 0x11, 0x2F, 0x84, + 0x11, 0x50, 0x01, 0x2F, 0x01, 0xD2, 0x2B, 0xD9, 0x2C, 0x3A, 0x02, 0x1B, 0xF9, 0x99, 0x23, 0xB8, 0x01, 0x6F, 0x00, 0xEE, 0x11, 0x4F, 0x19, 0x0F, 0x21, 0x50, 0x19, 0x50, 0x19, 0x4F, 0x01, 0x2F, 0x33, 0x77, 0x44, 0x9B, 0x2C, 0x5A, 0x1C, 0x5A, 0x14, 0x39, 0x0C, 0x18, 0x0C, 0x39, 0x0C, 0x19, 0x0C, 0x39, 0x14, 0x39, 0x1C, 0x39, 0x2C, 0x5A, 0x44, 0x9B, 0x1A, 0xB5, 0x01, 0x0E, 0x11, 0x2F, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x51, 0x01, 0x19, 0x32, 0x8A, 0x11, 0x33, 0x19, 0x54, 0x19, 0x95, 0x21, 0xF7, 0x2A, 0x38, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x53, 0x19, 0x33, 0x19, 0x11, 0x01, 0x21, 0x31, 0x83, 0x29, 0x51, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x09, 0x13, 0x19, 0xD7, 0x2A, 0x38, 0x22, 0x17, 0x11, 0x53, 0x10, 0xF2, 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x86, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x29, + 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x92, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x11, 0x12, 0x21, 0xD5, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x19, 0x12, 0x21, 0x52, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x29, 0x30, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x8A, 0x29, 0x0F, 0x29, 0x0E, 0x30, 0xCD, 0x30, 0x6B, 0xAB, 0xF8, 0xD4, 0xBA, 0xDC, 0x98, 0xDC, 0x78, 0xDC, 0x77, 0xDC, 0x57, 0xE4, 0x57, 0x03, 0xDC, 0x57, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x02, 0xDC, 0x37, 0x84, 0xDC, 0x36, 0xE4, 0x36, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x8A, 0xE4, 0x57, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x78, 0xE4, 0xDA, 0xED, 0x7D, 0x7A, 0x52, 0x30, 0x6B, 0x30, 0xAD, 0x28, 0xCE, 0x28, 0xEF, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x10, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, + 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x85, 0x19, 0x52, 0x11, 0x73, 0x09, 0x74, 0x09, 0x95, 0x1A, 0x18, 0x11, 0xF8, 0x01, 0x11, 0xB7, 0x85, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x52, 0x21, 0x52, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x87, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x31, 0x87, 0x19, 0x12, 0x11, 0x33, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x75, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, + 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x19, 0x50, 0x11, 0x2F, 0x08, 0x09, 0x2F, 0x01, 0x09, 0x4F, 0x03, 0x09, 0x2F, 0x84, 0x11, 0x2F, 0x11, 0x4F, 0x11, 0x2F, 0x19, 0x2F, 0x19, 0x4F, 0x02, 0x19, 0x50, 0x01, 0x11, 0x2F, 0x07, 0x09, 0x2F, 0x01, 0x11, 0x50, 0x80, 0x09, 0x30, 0x02, 0x11, 0x50, 0x01, 0x09, 0x50, 0x81, 0x11, 0x50, 0x09, 0x50, 0x01, 0x09, 0x2F, 0x80, 0x09, 0x4F, 0x05, 0x09, 0x2F, 0x02, 0x09, 0x0F, 0x80, 0x01, 0x0F, 0x08, 0x01, 0x2F, 0x03, 0x09, 0x2F, 0x80, 0x09, 0x4F, 0x01, 0x09, 0x2F, 0x81, 0x09, 0x0E, 0x09, 0x0F, 0x01, 0x11, 0x0F, 0x83, 0x19, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x0E, 0x21, 0x30, 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x96, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x53, 0x11, 0x75, 0x19, 0xF7, 0x1A, 0x18, 0x22, 0x59, 0x22, 0x79, 0x1A, 0x59, 0x1A, 0x38, 0x1A, 0x18, 0x19, 0xD6, 0x11, 0x94, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x19, 0x11, 0x02, 0x21, 0x31, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x07, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x83, 0x19, 0x52, 0x19, 0x73, 0x11, 0x74, 0x11, 0x95, 0x01, 0x19, 0xD6, 0x83, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x01, 0x11, 0x11, 0x8C, 0x19, 0x31, 0x21, 0x52, 0x19, 0x31, + 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x21, 0xD6, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x33, 0x03, 0x11, 0x12, 0x80, 0x19, 0x12, 0x02, 0x19, 0x32, 0x84, 0x19, 0x11, 0x21, 0x52, 0x19, 0x31, 0x21, 0x52, 0x19, 0x52, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x02, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x11, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x01, 0x11, 0xD8, 0x01, 0x11, 0xF9, 0x84, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x01, 0x21, 0x52, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x19, 0x11, 0x01, 0x19, 0x32, 0x82, 0x11, 0x53, 0x11, 0x73, 0x11, 0x74, 0x01, 0x11, 0xB5, 0x81, 0x19, 0xB5, 0x11, 0x95, 0x04, 0x19, 0xB6, 0x80, 0x11, 0xB6, 0x01, 0x19, 0xB6, 0x80, 0x19, 0xD7, 0x01, 0x19, 0xB6, 0x02, 0x11, 0xB6, 0x83, 0x19, 0xB6, 0x11, 0xB6, 0x19, 0xD6, 0x11, 0xB6, 0x01, 0x19, 0xD6, 0x01, 0x11, 0xD6, 0x01, 0x19, 0xD7, 0x84, 0x19, 0xF7, 0x11, 0xF7, 0x19, 0xF8, 0x1A, 0x19, 0x12, 0x18, 0x01, 0x11, 0xF9, 0x88, 0x11, 0xF8, + 0x11, 0xD7, 0x11, 0xB7, 0x09, 0x54, 0x11, 0x54, 0x11, 0x53, 0x19, 0x32, 0x19, 0x51, 0x21, 0x51, 0x01, 0x21, 0x50, 0x0B, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x06, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, + 0x30, 0x03, 0x21, 0x10, 0x87, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x05, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x50, 0x01, 0x19, 0x50, 0x01, 0x09, 0x4F, 0x82, 0x01, 0x6F, 0x01, 0x4F, 0x01, 0xB0, 0x01, 0x0A, 0x12, 0x80, 0x01, 0x90, 0x01, 0x01, 0x2F, 0x92, 0x11, 0x50, 0x11, 0x30, 0x11, 0x50, 0x11, 0x2F, 0x11, 0x50, 0x09, 0x50, 0x01, 0x30, 0x01, 0xB1, 0x2B, 0xD9, 0x24, 0x19, 0x1C, 0x19, 0x24, 0x3A, 0x23, 0xF9, 0x2B, 0xB8, 0x01, 0x6F, 0x09, 0x0E, 0x19, 0x4F, 0x10, 0xEE, 0x19, 0x4F, 0x01, 0x19, 0x50, 0x86, 0x09, 0x4F, 0x1A, 0x74, 0x33, 0x78, 0x2B, 0xD8, 0x24, 0x19, 0x1C, 0x5A, 0x0B, 0xF8, 0x01, 0x0C, 0x19, 0x88, 0x14, 0x19, 0x1C, 0x5A, 0x2C, 0x3A, 0x34, 0x19, 0x3B, + 0xD9, 0x1A, 0x74, 0x09, 0x4F, 0x11, 0x30, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x86, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x84, 0x29, 0x30, 0x29, 0x10, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x91, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x08, 0xF3, 0x19, 0xD6, 0x2A, 0x38, 0x21, 0xF7, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x8C, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, + 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8C, 0x21, 0x30, 0x21, 0x31, 0x21, 0x32, 0x19, 0x12, 0x11, 0x12, 0x21, 0xB5, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x21, 0x51, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x88, 0x28, 0xEE, 0x28, 0xAC, 0x40, 0xAC, 0xCC, 0x7A, 0xD4, 0x99, 0xDC, 0x99, 0xDC, 0x78, 0xDC, 0x37, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x84, 0xDC, 0x36, 0xDC, 0x57, 0xDC, 0x56, 0xDC, 0x36, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x83, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0x03, 0xDC, 0x36, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x02, 0xE4, 0x57, 0x02, 0xDC, 0x57, 0x87, 0xDC, 0x58, 0xDC, 0x99, 0xE4, 0xFB, 0xCC, 0xBB, 0x61, 0xAF, 0x28, 0x6B, 0x30, 0xCE, 0x28, 0xEE, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x86, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, + 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x88, 0x19, 0x31, 0x19, 0x52, 0x11, 0x53, 0x11, 0x74, 0x11, 0x75, 0x11, 0xB6, 0x1A, 0x18, 0x11, 0xF8, 0x11, 0xD8, 0x01, 0x11, 0xD7, 0x83, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x21, 0x52, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x82, 0x21, 0x11, 0x19, 0x12, 0x11, 0x33, 0x01, 0x19, 0xF7, 0x85, 0x11, 0xD7, 0x11, 0x74, 0x11, 0x11, 0x19, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x84, 0x21, 0x50, 0x19, 0x30, 0x11, 0x0F, 0x00, 0xCE, 0x01, 0x0E, 0x01, 0x01, 0x2F, 0x03, 0x01, 0x0E, 0x82, 0x01, 0x2E, 0x01, 0x4F, 0x01, 0x6F, 0x03, 0x01, 0x2E, 0x84, 0x01, 0x0E, 0x01, 0x2E, 0x09, 0x4F, 0x11, + 0x4F, 0x11, 0x2F, 0x02, 0x19, 0x50, 0x81, 0x19, 0x70, 0x09, 0x2F, 0x01, 0x01, 0x0E, 0x80, 0x01, 0x2F, 0x01, 0x01, 0x4F, 0x82, 0x01, 0x6F, 0x01, 0x2F, 0x01, 0x2E, 0x01, 0x01, 0x0E, 0x80, 0x01, 0x4F, 0x02, 0x09, 0x50, 0x83, 0x01, 0x50, 0x01, 0x4F, 0x01, 0x2F, 0x01, 0x0E, 0x01, 0x01, 0x2F, 0x02, 0x01, 0x4F, 0x01, 0x01, 0x6F, 0x82, 0x01, 0x90, 0x11, 0xB1, 0x09, 0x4F, 0x01, 0x01, 0x0F, 0x82, 0x01, 0x2F, 0x01, 0x4F, 0x01, 0x6F, 0x04, 0x01, 0x90, 0x81, 0x01, 0x70, 0x01, 0x90, 0x03, 0x01, 0x6F, 0x80, 0x01, 0x4F, 0x02, 0x01, 0x6F, 0x01, 0x01, 0x2E, 0x83, 0x01, 0x2F, 0x11, 0x2F, 0x11, 0x0F, 0x19, 0x2F, 0x06, 0x21, 0x30, 0x03, 0x21, 0x50, 0x80, 0x19, 0x30, 0x01, 0x19, 0x2F, 0x03, 0x19, 0x0F, 0x80, 0x19, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x29, 0x30, 0x89, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0x74, 0x19, 0xB6, 0x11, 0xF7, 0x01, 0x12, 0x18, 0x8B, 0x12, 0x19, 0x0A, 0x19, 0x12, 0x19, 0x09, 0xF9, 0x12, 0x18, 0x11, 0xF8, 0x11, 0xF7, 0x19, 0xF6, 0x19, 0x94, 0x19, 0x52, 0x19, 0x32, 0x19, 0x31, 0x05, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x31, 0x0A, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x19, 0x10, 0x80, 0x19, 0x30, 0x03, 0x19, 0x31, 0x84, 0x19, 0x52, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x19, 0xF6, 0x01, 0x19, 0xD6, 0x8D, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x31, + 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x21, 0xF7, 0x01, 0x21, 0xD6, 0x84, 0x19, 0x74, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x12, 0x02, 0x19, 0x32, 0x81, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x83, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x11, 0x80, 0x21, 0x10, 0x01, 0x21, 0x11, 0x03, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x20, 0xEE, 0x82, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x31, 0x88, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xF9, 0x01, 0x11, 0xF8, 0x85, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x13, 0x11, 0x12, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x02, 0x19, 0x52, 0x80, 0x11, 0x52, 0x02, 0x11, 0x32, 0x01, 0x11, 0x13, 0x80, 0x09, 0x13, 0x01, 0x11, 0x13, 0x81, 0x09, 0x13, 0x11, 0x13, 0x01, 0x09, 0x13, 0x81, 0x11, 0x33, 0x11, 0x13, 0x02, 0x09, 0x13, 0x01, 0x11, 0x33, 0x01, 0x09, 0x33, 0x84, 0x09, 0x13, 0x09, 0x33, 0x09, 0x13, 0x09, 0x33, 0x11, 0x34, 0x01, 0x09, 0x33, 0x85, 0x09, 0x54, 0x09, + 0x34, 0x09, 0x55, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xF9, 0x01, 0x12, 0x19, 0x87, 0x11, 0xF8, 0x11, 0xB6, 0x09, 0x54, 0x09, 0x12, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x09, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x30, 0x85, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x03, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, + 0x04, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8E, 0x19, 0x2F, 0x11, 0x2F, 0x09, 0x2F, 0x01, 0x4F, 0x01, 0x6F, 0x0A, 0x52, 0x23, 0x36, 0x3C, 0x3A, 0x3C, 0x5A, 0x44, 0x7B, 0x44, 0x5A, 0x3B, 0xF9, 0x1A, 0x94, 0x09, 0x91, 0x09, 0x70, 0x01, 0x11, 0x50, 0x84, 0x09, 0x2F, 0x09, 0x70, 0x01, 0x30, 0x01, 0xF2, 0x2B, 0xD9, 0x01, 0x24, 0x19, 0x84, 0x1C, 0x19, 0x23, 0xF9, 0x23, 0x77, 0x01, 0x4F, 0x00, 0xEE, 0x01, 0x19, 0x2F, 0x84, 0x21, 0x50, 0x19, 0x50, 0x19, 0x2F, 0x11, 0x2F, 0x09, 0x50, 0x01, 0x01, 0x2F, 0x81, 0x01, 0xD1, 0x23, 0xF9, 0x01, 0x14, 0x19, 0x8C, 0x0B, 0xF8, 0x13, 0xF8, 0x24, 0x19, 0x12, 0xD5, 0x01, 0x4F, 0x01, 0x2E, 0x01, 0x0E, 0x11, 0x50, 0x19, 0x50, 0x21, 0x50, 0x21, + 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x86, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8B, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x98, 0x21, 0x31, 0x21, 0x11, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x33, 0x19, 0x75, 0x21, 0xD6, 0x22, 0x37, 0x19, 0xF6, 0x19, 0xB6, 0x11, 0x74, 0x19, 0x53, 0x11, 0x12, 0x19, 0x11, 0x18, 0xF0, 0x21, 0x10, 0x29, 0x31, 0x29, 0x30, 0x29, 0x50, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x13, 0x21, 0xD6, 0x2A, 0x38, 0x21, 0xD6, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8A, 0x21, 0x10, 0x21, 0x31, + 0x19, 0x32, 0x19, 0x12, 0x11, 0x12, 0x21, 0xD5, 0x22, 0x17, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x28, 0xCD, 0x20, 0x4B, 0x69, 0xF0, 0xDC, 0xFB, 0xDC, 0xB9, 0xDC, 0x98, 0x03, 0xDC, 0x57, 0x81, 0xDC, 0x36, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x82, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x86, 0xDC, 0x56, 0xDC, 0x36, 0xE4, 0x57, 0xE4, 0x37, 0xDC, 0x37, 0xDC, 0x36, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x8B, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x58, 0xDC, 0x78, 0xD4, 0x79, 0xDC, 0xFB, 0xCC, 0xFC, 0x40, 0xCD, 0x30, 0xAD, 0x28, 0xEE, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x88, 0x21, 0x31, + 0x19, 0x31, 0x11, 0x32, 0x11, 0x74, 0x11, 0x95, 0x11, 0x96, 0x11, 0xB7, 0x1A, 0x18, 0x11, 0xF8, 0x01, 0x11, 0xD8, 0x83, 0x19, 0xF8, 0x11, 0xD7, 0x09, 0x54, 0x11, 0x33, 0x01, 0x19, 0x52, 0x81, 0x21, 0x51, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0xF7, 0x01, 0x11, 0xF7, 0x83, 0x11, 0x74, 0x11, 0x32, 0x21, 0x51, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x50, 0x29, 0x50, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x8C, 0x11, 0x0F, 0x00, 0xCD, 0x2A, 0xF5, 0x44, 0x19, 0x33, 0xD9, 0x3B, 0xF9, 0x44, 0x5B, 0x4C, 0x7B, 0x4C, 0x9B, 0x4C, 0x7B, 0x4C, 0xBC, 0x4C, 0xDC, 0x4C, 0xBB, 0x01, 0x4C, 0x9B, 0x01, 0x44, 0x5A, 0x83, 0x4C, 0x5A, 0x43, 0xF9, 0x3B, 0x57, 0x09, 0x70, 0x02, 0x11, 0x50, 0x93, 0x19, 0x50, 0x11, 0x70, 0x09, 0x50, 0x43, 0x78, 0x43, + 0xB8, 0x3B, 0xD8, 0x44, 0x1A, 0x44, 0x3A, 0x44, 0x5B, 0x3C, 0x3A, 0x3B, 0xF9, 0x33, 0xB8, 0x3B, 0xF9, 0x09, 0xF2, 0x01, 0x2F, 0x01, 0x30, 0x01, 0x50, 0x01, 0x91, 0x01, 0x90, 0x1A, 0xD5, 0x01, 0x3C, 0x19, 0x81, 0x33, 0xF9, 0x3C, 0x19, 0x01, 0x44, 0x5A, 0x89, 0x44, 0x3A, 0x4C, 0x7B, 0x5C, 0x9C, 0x33, 0x57, 0x01, 0x0F, 0x00, 0xEE, 0x3B, 0x57, 0x5C, 0xBC, 0x44, 0x3A, 0x44, 0x5A, 0x02, 0x44, 0x7B, 0x81, 0x3C, 0x5A, 0x44, 0x9B, 0x01, 0x44, 0xBB, 0x80, 0x44, 0x9B, 0x01, 0x4C, 0xBC, 0x01, 0x44, 0x9B, 0x87, 0x4C, 0xBB, 0x44, 0x9A, 0x44, 0x7A, 0x44, 0x5A, 0x4C, 0x7B, 0x43, 0xD9, 0x01, 0x2F, 0x11, 0x2F, 0x01, 0x19, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x01, 0x21, 0x50, 0x01, 0x19, 0x50, 0x02, 0x11, 0x2F, 0x01, 0x11, 0x0F, 0x82, 0x10, 0xEF, 0x08, 0xEF, 0x10, 0xEF, 0x01, 0x11, 0x0F, 0x82, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x88, 0x21, 0x31, 0x21, 0x52, 0x19, 0x52, 0x19, 0x53, 0x11, 0x75, 0x11, 0xD7, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xF9, 0x03, 0x01, 0xD9, 0x86, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xF8, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x32, 0x01, 0x19, 0x32, 0x05, 0x21, 0x31, 0x80, 0x21, 0x11, 0x0E, 0x21, 0x31, 0x80, 0x21, 0x11, 0x03, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x82, 0x19, 0x10, 0x21, 0x31, 0x21, 0x51, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x85, 0x19, 0x52, 0x19, 0x73, 0x19, 0x52, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x01, 0x19, 0xD6, 0x85, 0x21, 0xF7, + 0x19, 0x95, 0x09, 0x33, 0x11, 0x12, 0x11, 0x32, 0x19, 0x52, 0x01, 0x19, 0x32, 0x91, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF6, 0x19, 0xD6, 0x21, 0xF6, 0x19, 0x94, 0x11, 0x32, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x32, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x01, 0x21, 0x31, 0x82, 0x21, 0x10, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x09, 0x21, 0x10, 0x80, 0x20, 0xF0, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x29, 0x50, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x31, 0x85, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x11, 0xF9, 0x89, 0x11, 0xD8, 0x19, 0xD7, 0x19, 0x96, 0x11, 0x54, 0x11, 0x13, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x01, 0x21, 0x31, 0x03, 0x19, 0x31, 0x82, 0x11, 0x11, 0x11, 0x31, 0x11, 0x12, 0x03, 0x19, 0x32, 0x81, 0x11, 0x12, 0x19, 0x12, 0x04, 0x11, 0x12, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x01, 0x11, 0x12, 0x80, 0x19, 0x33, 0x01, 0x11, 0x32, 0x81, 0x11, 0x12, 0x11, 0x32, 0x02, 0x11, 0x12, 0x87, 0x11, 0x33, 0x11, 0x12, 0x11, 0x33, 0x09, 0x33, 0x09, 0x34, 0x11, 0x96, 0x11, 0xD8, 0x1A, 0x19, 0x01, 0x12, 0x18, 0x83, 0x11, 0xF7, 0x09, 0x96, 0x09, + 0x54, 0x09, 0x33, 0x01, 0x11, 0x11, 0x83, 0x19, 0x31, 0x21, 0x31, 0x21, 0x50, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x06, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, + 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x93, 0x21, 0x30, 0x21, 0x50, 0x21, 0x2F, 0x19, 0x50, 0x11, 0x2F, 0x09, 0x4F, 0x01, 0x70, 0x33, 0x77, 0x3C, 0x3A, 0x2C, 0x19, 0x2C, 0x3A, 0x24, 0x19, 0x2C, 0x39, 0x2C, 0x19, 0x34, 0x3A, 0x3C, 0x3A, 0x33, 0x77, 0x09, 0xB1, 0x09, 0x50, 0x11, 0x50, 0x01, 0x09, 0x50, 0x83, 0x01, 0x50, 0x01, 0xB1, 0x2B, 0xD9, 0x2C, 0x1A, 0x01, 0x24, 0x19, 0x84, 0x24, 0x1A, 0x23, 0x78, 0x01, 0x2F, 0x00, 0xEE, 0x11, 0x2F, 0x02, 0x19, 0x2F, 0x01, 0x19, 0x50, 0x8A, 0x11, 0x50, 0x09, 0x2F, 0x01, 0x2F, 0x01, 0x90, 0x23, 0xF9, 0x1C, 0x19, 0x14, 0x19, 0x13, 0xF8, 0x1B, 0xF9, 0x34, 0x7B, 0x02, 0x12, 0x01, 0x01, 0x0E, 0x80, 0x09, 0x2F, 0x01, 0x19, 0x50, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, + 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x53, 0x11, 0x95, 0x01, 0x21, 0xF7, 0x01, 0x19, 0xD6, 0x86, 0x11, 0x74, 0x19, 0x53, 0x19, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x29, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x8B, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x2A, 0x17, 0x21, 0xF7, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x12, 0x21, 0xB5, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x19, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x84, 0x29, 0x10, 0x29, + 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x87, 0x28, 0xEE, 0x28, 0xCD, 0x20, 0x0A, 0xA3, 0x96, 0xDC, 0xDA, 0xDC, 0x99, 0xDC, 0x98, 0xDC, 0x78, 0x03, 0xDC, 0x57, 0x02, 0xE4, 0x57, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x04, 0xDC, 0x57, 0x01, 0xDC, 0x36, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x36, 0x83, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x88, 0xDC, 0x58, 0xDC, 0x78, 0xDC, 0x79, 0xDC, 0xBA, 0xFE, 0x1F, 0x6A, 0x11, 0x30, 0x8C, 0x28, 0xCD, 0x28, 0xEE, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x85, 0x21, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x09, 0x74, 0x11, 0xB6, 0x01, 0x11, 0xB7, 0x02, 0x11, 0xF8, 0x8C, 0x11, 0xD8, 0x1A, 0x18, 0x19, 0xF8, 0x09, 0x75, 0x09, 0x34, 0x11, 0x33, 0x19, 0x52, 0x19, 0x31, 0x21, + 0x11, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x94, 0x21, 0x11, 0x19, 0x32, 0x11, 0x13, 0x19, 0xD6, 0x1A, 0x18, 0x11, 0xD6, 0x11, 0xB5, 0x11, 0x32, 0x19, 0x31, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x50, 0x29, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x50, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x30, 0x88, 0x21, 0x2F, 0x19, 0x2F, 0x11, 0x0F, 0x00, 0xCD, 0x54, 0x9B, 0x54, 0xFD, 0x34, 0x5A, 0x2C, 0x3A, 0x2C, 0x19, 0x01, 0x24, 0x19, 0x86, 0x1B, 0xD8, 0x23, 0xF8, 0x1B, 0xF8, 0x23, 0xF8, 0x23, 0xD8, 0x23, 0xF8, 0x2B, 0xF8, 0x01, 0x34, 0x19, 0x83, 0x3C, 0x39, 0x43, 0xD8, 0x01, 0x4F, 0x09, 0x50, 0x01, 0x11, 0x50, 0x01, 0x11, 0x70, 0x85, 0x01, 0x2F, 0x4B, 0xD9, 0x64, 0xFD, 0x4C, 0x7B, 0x34, 0x19, 0x23, 0xF8, 0x01, 0x2C, 0x19, 0x01, 0x3C, 0x9B, 0x88, 0x3C, 0x7A, + 0x23, 0x56, 0x01, 0x70, 0x01, 0x50, 0x01, 0x70, 0x01, 0x91, 0x0A, 0x94, 0x44, 0x9B, 0x34, 0x7A, 0x01, 0x2C, 0x39, 0x91, 0x23, 0xF9, 0x2C, 0x19, 0x2B, 0xF8, 0x34, 0x39, 0x3C, 0x5A, 0x4C, 0x5B, 0x0A, 0x12, 0x01, 0x0F, 0x01, 0x2F, 0x4C, 0x3A, 0x44, 0x3A, 0x33, 0xF9, 0x2C, 0x19, 0x24, 0x19, 0x1B, 0xD8, 0x24, 0x19, 0x1B, 0xF8, 0x24, 0x39, 0x01, 0x24, 0x19, 0x81, 0x1C, 0x18, 0x24, 0x19, 0x01, 0x1C, 0x18, 0x80, 0x1B, 0xF8, 0x01, 0x23, 0xF8, 0x89, 0x2C, 0x39, 0x34, 0x59, 0x3C, 0x5A, 0x44, 0x19, 0x01, 0x2F, 0x11, 0x2F, 0x19, 0x2F, 0x19, 0x30, 0x19, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x50, 0x01, 0x19, 0x50, 0x83, 0x11, 0x50, 0x09, 0x50, 0x01, 0x4F, 0x01, 0x2E, 0x01, 0x01, 0x0E, 0x02, 0x00, 0xEE, 0x01, 0x00, 0xCE, 0x82, 0x00, 0xEF, 0x11, 0x10, 0x19, 0x30, 0x05, 0x21, 0x30, 0x88, 0x21, 0x10, 0x21, 0x31, 0x21, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD7, 0x09, 0xF8, 0x09, 0xD9, 0x05, 0x01, 0xD9, 0x84, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xB7, 0x09, 0x96, 0x11, 0x75, 0x01, 0x11, 0x33, 0x80, 0x11, 0x32, 0x02, 0x19, 0x32, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x11, 0x08, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x32, 0x03, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x32, 0x02, 0x19, 0x11, 0x82, 0x19, 0x31, 0x19, 0x32, 0x19, 0x52, 0x02, 0x19, 0x32, 0x86, 0x11, 0x32, 0x19, 0x52, 0x11, 0x53, 0x11, 0x32, 0x09, 0x33, 0x11, 0x95, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x83, 0x19, 0x95, 0x11, 0x54, 0x11, 0x12, 0x11, 0x32, + 0x01, 0x19, 0x32, 0x8C, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF6, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x02, 0x19, 0x31, 0x03, 0x21, 0x31, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x05, 0x21, 0x10, 0x85, 0x29, 0x10, 0x20, 0xF0, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x92, 0x29, 0x50, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x1A, 0x19, 0x11, 0xF9, 0x19, 0xF9, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x76, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x85, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x19, 0x30, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x02, 0x19, 0x31, 0x81, 0x19, 0x32, 0x19, 0x11, 0x01, 0x19, 0x32, 0x80, 0x19, 0x11, 0x01, 0x19, 0x12, 0x84, 0x19, 0x11, 0x21, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x32, 0x91, 0x11, 0x12, 0x19, 0x32, 0x11, 0x53, + 0x09, 0x33, 0x09, 0x54, 0x11, 0x96, 0x11, 0xD7, 0x1A, 0x18, 0x1A, 0x19, 0x12, 0x18, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x54, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x86, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, + 0x06, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x89, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x87, 0x19, 0x2F, 0x11, 0x2F, 0x09, 0x2F, 0x01, 0x50, 0x3B, 0xB9, 0x33, 0xF9, 0x23, 0xD8, 0x23, 0xF9, 0x04, 0x1B, 0xD8, 0x84, 0x23, 0xD8, 0x33, 0xD9, 0x2B, 0x57, 0x01, 0x70, 0x01, 0x4F, 0x01, 0x09, 0x50, 0x8B, 0x01, 0x50, 0x01, 0xD2, 0x2B, 0xD9, 0x23, 0xF9, 0x1B, 0xD9, 0x1B, 0xF9, 0x2C, 0x1A, 0x2B, 0x98, 0x01, 0x4F, 0x09, 0x0E, 0x19, 0x2F, 0x19, 0x0F, 0x01, 0x21, 0x4F, 0x81, 0x19, 0x2F, 0x19, 0x50, 0x01, 0x11, 0x2F, 0x90, 0x01, 0x0F, 0x01, 0xB0, 0x2B, 0xF9, 0x1C, 0x19, 0x13, 0xF8, 0x13, 0xF9, 0x1B, 0xF9, 0x34, 0x5B, 0x0A, + 0x12, 0x01, 0x2F, 0x09, 0x70, 0x11, 0x70, 0x19, 0x50, 0x19, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x06, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0x95, 0x2A, 0x38, 0x2A, 0x17, 0x11, 0x74, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x05, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x33, 0x21, 0xB5, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x21, + 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x04, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x8B, 0x29, 0x50, 0x29, 0x30, 0x29, 0x0F, 0x28, 0xCE, 0x20, 0x8C, 0x28, 0x2A, 0xCC, 0x9A, 0xDC, 0xDA, 0xDC, 0x99, 0xDC, 0x98, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x82, 0xDC, 0x36, 0xE4, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x81, 0xDC, 0x36, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x04, 0xDC, 0x57, 0x80, 0xDC, 0x78, 0x01, 0xDC, 0x99, 0x86, 0xD4, 0xBA, 0x61, 0x8F, 0x28, 0x6B, 0x30, 0xEE, 0x28, 0xEE, 0x20, 0xEE, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x10, 0x06, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x87, 0x21, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x11, 0xD6, 0x19, 0xF7, 0x11, 0xB7, 0x09, 0xB7, 0x02, 0x11, + 0xD7, 0x88, 0x11, 0xB7, 0x11, 0xF8, 0x1A, 0x19, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x75, 0x11, 0x33, 0x19, 0x32, 0x21, 0x11, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x88, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x11, 0xF7, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x85, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x21, 0x2F, 0x19, 0x2F, 0x11, 0x0F, 0x01, 0x0E, 0x44, 0x5A, 0x34, 0x5A, 0x24, 0x39, 0x1C, 0x19, 0x13, 0xF8, 0x14, 0x19, 0x02, 0x13, 0xF8, 0x01, 0x1C, 0x18, 0x02, 0x1B, 0xF8, 0x85, 0x23, 0xF8, 0x2B, 0xD8, 0x33, 0xF8, 0x3B, 0xD8, 0x01, 0x4F, 0x09, 0x50, 0x03, 0x11, 0x50, 0x85, 0x09, 0x50, 0x01, 0x90, 0x4C, 0x1A, 0x44, 0x5A, 0x2C, 0x3A, 0x23, 0xF9, 0x01, 0x13, 0xB8, 0x8A, 0x1B, 0xF8, + 0x1C, 0x18, 0x24, 0x39, 0x23, 0xF8, 0x13, 0x16, 0x01, 0xF1, 0x01, 0xD1, 0x02, 0x33, 0x23, 0xF9, 0x24, 0x19, 0x1C, 0x19, 0x02, 0x13, 0xF8, 0x80, 0x1B, 0xD8, 0x01, 0x23, 0xF8, 0x8C, 0x3C, 0x3A, 0x33, 0x98, 0x01, 0x90, 0x01, 0x2F, 0x01, 0x50, 0x3B, 0xF9, 0x33, 0xF9, 0x2C, 0x19, 0x23, 0xF8, 0x1B, 0xD8, 0x1B, 0xF9, 0x1C, 0x19, 0x14, 0x18, 0x01, 0x14, 0x19, 0x80, 0x14, 0x39, 0x02, 0x14, 0x18, 0x81, 0x13, 0xF8, 0x14, 0x18, 0x01, 0x1B, 0xF8, 0x85, 0x24, 0x18, 0x2C, 0x18, 0x3C, 0x5A, 0x44, 0x19, 0x01, 0x0E, 0x11, 0x50, 0x02, 0x19, 0x30, 0x01, 0x21, 0x30, 0x90, 0x21, 0x50, 0x19, 0x50, 0x11, 0x50, 0x09, 0x70, 0x01, 0x70, 0x01, 0xD0, 0x0A, 0x93, 0x23, 0x76, 0x34, 0x18, 0x3C, 0x7A, 0x44, 0x7B, 0x4C, 0x9B, 0x4C, 0x7B, 0x54, 0x9C, 0x3B, 0x78, 0x01, 0x30, 0x11, 0x10, 0x01, 0x19, 0x30, 0x03, 0x21, 0x30, 0x88, 0x21, 0x10, 0x19, 0x11, 0x19, 0x32, 0x19, 0x33, 0x19, 0xB5, 0x19, 0xF7, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xD9, 0x02, 0x01, 0xDA, 0x8C, 0x01, 0xFA, 0x01, 0xDA, 0x09, 0xFA, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xB7, 0x09, 0x76, 0x09, 0x55, 0x09, 0x34, 0x09, 0x12, 0x11, 0x12, 0x11, 0x32, 0x01, 0x11, 0x12, 0x80, 0x19, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x12, 0x80, 0x11, 0x11, 0x01, 0x19, 0x12, 0x03, 0x11, 0x12, 0x81, 0x19, 0x12, 0x11, 0x12, 0x03, 0x19, 0x12, 0x01, 0x11, 0x12, 0x01, 0x19, 0x32, 0x80, 0x11, 0x12, 0x01, 0x19, 0x32, 0x06, 0x11, 0x12, 0x8B, 0x09, 0x12, 0x09, 0x53, 0x11, 0xB5, 0x21, 0xF7, 0x19, 0xF7, + 0x19, 0xB6, 0x11, 0x74, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x12, 0x01, 0x19, 0x32, 0x88, 0x19, 0x12, 0x11, 0x33, 0x19, 0x54, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x74, 0x01, 0x11, 0x12, 0x02, 0x19, 0x31, 0x82, 0x19, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x07, 0x21, 0x10, 0x07, 0x21, 0x30, 0x05, 0x21, 0x10, 0x02, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x19, 0x31, 0x84, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xD8, 0x01, 0x19, 0xF9, 0x86, 0x11, 0xD8, 0x19, 0xD8, 0x19, 0xD7, 0x11, 0x96, 0x11, 0x74, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x19, 0x30, 0x21, 0x30, 0x19, 0x30, 0x19, 0x10, 0x01, 0x19, 0x30, 0x03, 0x19, 0x31, 0x81, 0x19, 0x11, 0x21, 0x11, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x82, 0x21, 0x11, 0x19, 0x11, 0x19, 0x10, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x09, 0x19, 0x31, 0x86, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x55, 0x11, 0x96, 0x11, 0xD7, 0x12, 0x18, 0x01, 0x1A, 0x19, 0x86, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x55, 0x11, 0x33, 0x11, 0x12, + 0x11, 0x11, 0x19, 0x31, 0x03, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, + 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x87, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x91, 0x21, 0x50, 0x19, 0x2F, 0x11, 0x2F, 0x01, 0x2F, 0x22, 0xB5, 0x3B, 0xF9, 0x23, 0xB8, 0x1B, 0xB8, 0x1B, 0xD9, 0x13, 0xD9, 0x13, 0xD8, 0x13, 0xB8, 0x13, 0xD8, 0x1B, 0xF9, 0x1B, 0xD8, 0x23, 0xB8, 0x33, 0xD8, 0x1A, 0x74, 0x01, 0x01, 0x4F, 0x84, 0x09, 0x70, 0x01, 0x50, 0x01, 0xD2, 0x33, 0xD9, 0x23, 0xD9, 0x01, 0x23, 0xF9, 0x83, 0x23, 0xD9, 0x2B, 0x98, 0x01, 0x4F, 0x08, 0xEE, 0x01, 0x19, 0x2F, 0x89, 0x21, 0x2F, 0x21, 0x50, 0x21, 0x4F, 0x19, 0x50, 0x11, 0x0F, 0x11, 0x2F, 0x09, 0x2F, 0x01, 0x70, 0x2B, 0xF9, 0x1B, 0xD9, 0x01, 0x1B, 0xF9, 0x86, 0x23, 0xF9, 0x3C, 0x3A, 0x01, 0xB1, 0x01, 0x0F, 0x09, 0x70, 0x11, + 0x50, 0x19, 0x50, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x88, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x83, 0x11, 0x33, 0x11, 0x53, 0x11, 0x95, 0x21, 0xF6, 0x01, 0x22, 0x17, 0x85, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x33, 0x19, 0x12, 0x18, 0xF1, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x31, 0x19, 0x53, 0x11, 0x33, 0x19, 0x75, 0x01, 0x2A, 0x17, 0x84, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, + 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x87, 0x19, 0x32, 0x19, 0x33, 0x11, 0x13, 0x21, 0xB5, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x01, 0x21, 0x52, 0x80, 0x21, 0x51, 0x01, 0x21, 0x30, 0x06, 0x29, 0x30, 0x80, 0x29, 0x10, 0x05, 0x29, 0x30, 0x87, 0x29, 0x0F, 0x28, 0xCE, 0x20, 0x4B, 0x48, 0xED, 0xDC, 0xFC, 0xDC, 0xBA, 0xDC, 0x98, 0xDC, 0x78, 0x03, 0xDC, 0x57, 0x83, 0xDC, 0x37, 0xDC, 0x36, 0xDC, 0x37, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x05, 0xDC, 0x57, 0x86, 0xDC, 0x36, 0xE4, 0x57, 0xDC, 0x36, 0xDC, 0x37, 0xE4, 0x57, 0xE4, 0x77, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x88, 0xDC, 0x58, 0xDC, 0x78, 0xD4, 0x79, 0xCC, 0x79, 0x8A, 0xB3, 0x28, 0x09, 0x30, 0xCD, 0x28, 0xED, 0x20, 0xEE, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x04, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x88, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x85, 0x21, 0x11, 0x19, + 0x11, 0x11, 0x33, 0x11, 0x95, 0x19, 0xF7, 0x11, 0xF8, 0x02, 0x09, 0x96, 0x02, 0x09, 0x76, 0x87, 0x09, 0x96, 0x19, 0xF8, 0x1A, 0x19, 0x11, 0xD8, 0x19, 0x96, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x8B, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0xD6, 0x19, 0xF7, 0x11, 0xD6, 0x11, 0x94, 0x11, 0x31, 0x19, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x85, 0x19, 0x2F, 0x09, 0x0F, 0x01, 0x0E, 0x3C, 0x3A, 0x24, 0x19, 0x13, 0xF8, 0x02, 0x14, 0x19, 0x01, 0x0C, 0x18, 0x80, 0x0B, 0xF8, 0x01, 0x14, 0x18, 0x80, 0x13, 0xF8, 0x01, 0x1B, 0xF8, 0x85, 0x23, 0xF8, 0x2B, 0xF8, 0x33, 0xF8, 0x33, 0xB8, 0x01, 0x70, 0x09, 0x50, 0x02, 0x11, 0x50, 0x01, 0x11, 0x70, 0x84, 0x01, 0x50, 0x12, 0x53, 0x44, 0x5B, 0x23, 0xF9, 0x1B, 0xF8, 0x01, 0x13, 0xD8, 0x89, + 0x0B, 0xD8, 0x14, 0x18, 0x14, 0x19, 0x1C, 0x18, 0x1B, 0xD8, 0x02, 0xB4, 0x02, 0x32, 0x0B, 0x16, 0x13, 0xD8, 0x14, 0x18, 0x02, 0x0B, 0xF8, 0x80, 0x14, 0x19, 0x01, 0x1B, 0xF8, 0x88, 0x2C, 0x19, 0x3C, 0x3A, 0x12, 0x74, 0x01, 0x70, 0x01, 0x4F, 0x01, 0x90, 0x3B, 0xF9, 0x2B, 0xD9, 0x23, 0xD8, 0x01, 0x1B, 0xF8, 0x01, 0x13, 0xF8, 0x80, 0x0C, 0x19, 0x01, 0x0B, 0xF8, 0x86, 0x0C, 0x19, 0x0C, 0x18, 0x0C, 0x19, 0x0B, 0xF8, 0x0C, 0x18, 0x14, 0x18, 0x13, 0xF8, 0x01, 0x1C, 0x19, 0x84, 0x24, 0x39, 0x34, 0x5A, 0x3B, 0xD9, 0x01, 0x2F, 0x11, 0x30, 0x01, 0x19, 0x30, 0x02, 0x21, 0x30, 0x93, 0x21, 0x50, 0x11, 0x50, 0x09, 0x4F, 0x12, 0x12, 0x3B, 0xD8, 0x3C, 0x5A, 0x3C, 0x9A, 0x34, 0x9A, 0x24, 0x79, 0x24, 0x59, 0x24, 0x39, 0x2C, 0x7A, 0x3C, 0x7A, 0x44, 0xBC, 0x44, 0x1A, 0x01, 0x30, 0x09, 0x30, 0x11, 0x30, 0x19, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x88, 0x21, 0x10, 0x21, 0x31, 0x19, 0x12, 0x11, 0x33, 0x19, 0x95, 0x11, 0xB7, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0xD9, 0x05, 0x01, 0xDA, 0x88, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xB7, 0x09, 0x96, 0x11, 0x75, 0x09, 0x34, 0x11, 0x53, 0x05, 0x11, 0x33, 0x80, 0x11, 0x32, 0x01, 0x11, 0x33, 0x09, 0x11, 0x32, 0x81, 0x11, 0x33, 0x11, 0x12, 0x07, 0x11, 0x32, 0x82, 0x11, 0x12, 0x11, 0x32, 0x11, 0x12, 0x01, 0x11, 0x13, 0x8C, 0x09, 0x12, 0x09, 0x13, 0x11, 0x33, 0x11, 0x34, 0x19, 0xB5, 0x2A, 0x38, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x03, 0x19, 0x12, + 0x83, 0x11, 0x12, 0x11, 0x34, 0x19, 0x75, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x86, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x19, 0x30, 0x04, 0x21, 0x30, 0x06, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x05, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x8E, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x19, 0x74, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x01, 0x19, 0xF8, 0x87, 0x19, 0xF9, 0x19, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x07, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x10, 0x02, 0x21, 0x31, 0x87, 0x21, 0x32, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x95, 0x11, 0xB6, 0x11, 0xD7, 0x12, 0x18, 0x01, 0x1A, 0x19, 0x87, 0x11, 0xD8, 0x11, 0x96, 0x09, 0x55, 0x11, 0x34, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x21, 0x51, 0x01, 0x29, 0x51, + 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, + 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x87, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x05, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x8A, 0x21, 0x4F, 0x19, 0x2F, 0x09, 0x0F, 0x09, 0x70, 0x43, 0xD9, 0x2B, 0x98, 0x1B, 0xB9, 0x1B, 0xF9, 0x13, 0xF9, 0x13, 0xD9, 0x13, 0xF9, 0x02, 0x13, 0xD9, 0x8A, 0x1B, 0xD8, 0x1B, 0xB8, 0x23, 0x77, 0x33, 0x57, 0x01, 0x90, 0x01, 0x4F, 0x01, 0x50, 0x01, 0x30, 0x01, 0xB1, 0x33, 0xB9, 0x2B, 0xD9, 0x01, 0x23, 0xF9, 0x84, 0x23, 0xD9, 0x2B, 0x78, 0x01, 0x2F, 0x08, 0xEE, 0x19, 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x19, 0x2F, 0x8E, 0x11, 0x2F, 0x01, 0x0F, 0x01, 0x70, 0x33, 0xF9, 0x1B, 0xF9, 0x24, 0x1A, 0x23, 0xF9, 0x23, 0xD9, 0x33, 0xFA, 0x01, 0x50, 0x01, 0x0F, 0x11, 0x70, 0x19, 0x70, 0x19, 0x50, 0x21, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, + 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x90, 0x19, 0x53, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x50, 0x03, 0x21, 0x30, 0x01, 0x19, 0x31, 0x82, 0x19, 0x53, 0x11, 0x53, 0x19, 0x95, 0x01, 0x2A, 0x17, 0x82, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x02, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x11, 0x19, 0x12, 0x19, 0x32, 0x11, 0x13, 0x21, 0xB5, 0x01, 0x21, 0xF6, 0x82, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x51, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x0B, 0x29, 0x30, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x31, 0x0E, + 0x28, 0x4B, 0x82, 0x93, 0xDC, 0xDB, 0x01, 0xDC, 0x99, 0x86, 0xDC, 0x78, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0xE4, 0x57, 0x02, 0xDC, 0x36, 0x80, 0xE4, 0x57, 0x04, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x81, 0xDC, 0x36, 0xE4, 0x57, 0x01, 0xDC, 0x36, 0x82, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x36, 0x02, 0xDC, 0x37, 0x80, 0xDC, 0x57, 0x01, 0xDC, 0x36, 0x81, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x58, 0x87, 0xD4, 0x78, 0xD4, 0x99, 0xD4, 0xBA, 0x51, 0x0D, 0x20, 0x2A, 0x28, 0xCD, 0x29, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x06, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x08, 0x29, 0x0F, 0x87, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x30, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x31, 0x88, 0x19, 0x32, 0x11, 0x54, 0x19, 0xF7, 0x19, 0xF8, 0x11, 0xD8, 0x09, 0x76, 0x09, 0x75, 0x09, 0x55, 0x01, 0x35, 0x01, 0x01, 0x34, 0x86, 0x09, 0x55, 0x11, 0xB7, 0x11, 0xF8, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x34, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, + 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0xB5, 0x01, 0x19, 0xF7, 0x84, 0x11, 0x94, 0x11, 0x11, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x19, 0x2F, 0x86, 0x09, 0x0E, 0x01, 0x2E, 0x3C, 0x5A, 0x1C, 0x19, 0x14, 0x19, 0x14, 0x39, 0x0C, 0x19, 0x03, 0x0C, 0x18, 0x81, 0x0B, 0xF8, 0x14, 0x18, 0x01, 0x13, 0xF8, 0x86, 0x1B, 0xF8, 0x23, 0xF8, 0x23, 0xD8, 0x33, 0xF8, 0x33, 0x97, 0x01, 0x50, 0x09, 0x50, 0x02, 0x11, 0x50, 0x8A, 0x11, 0x70, 0x11, 0x50, 0x09, 0x50, 0x01, 0x70, 0x33, 0x98, 0x2C, 0x19, 0x1B, 0xF9, 0x13, 0xF8, 0x14, 0x19, 0x0B, 0xD8, 0x0B, 0xF8, 0x01, 0x0C, 0x18, 0x86, 0x14, 0x18, 0x0B, 0xB7, 0x03, 0x15, 0x0B, 0xB7, 0x14, 0x18, 0x0B, 0xF8, 0x0C, 0x19, 0x01, 0x0B, 0xF8, 0x85, 0x13, 0xF8, 0x1B, 0xF9, 0x23, 0xF9, 0x2C, 0x19, 0x23, 0x57, 0x01, 0xF2, 0x01, 0x01, 0x4F, 0x87, 0x01, + 0xB1, 0x3B, 0xF9, 0x23, 0xB8, 0x23, 0xD8, 0x1B, 0xD8, 0x13, 0xD8, 0x13, 0xF8, 0x14, 0x19, 0x02, 0x0C, 0x19, 0x80, 0x04, 0x18, 0x02, 0x0C, 0x19, 0x01, 0x0B, 0xF8, 0x01, 0x14, 0x19, 0x85, 0x1B, 0xF8, 0x23, 0xF8, 0x34, 0x39, 0x44, 0x19, 0x01, 0x2F, 0x11, 0x50, 0x01, 0x19, 0x30, 0x89, 0x21, 0x50, 0x21, 0x30, 0x19, 0x30, 0x19, 0x50, 0x11, 0x50, 0x01, 0x2F, 0x3B, 0xB8, 0x44, 0x7B, 0x24, 0x18, 0x1C, 0x18, 0x01, 0x14, 0x18, 0x88, 0x0B, 0xF8, 0x0B, 0xD8, 0x14, 0x18, 0x24, 0x19, 0x34, 0x5A, 0x33, 0xB9, 0x01, 0x70, 0x09, 0x50, 0x11, 0x30, 0x01, 0x19, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x87, 0x19, 0x32, 0x11, 0x33, 0x21, 0xD7, 0x19, 0xF7, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x02, 0x01, 0xDA, 0x80, 0x09, 0xFA, 0x01, 0x09, 0xD9, 0x84, 0x11, 0xD8, 0x11, 0xB8, 0x11, 0x96, 0x11, 0xB6, 0x11, 0x95, 0x02, 0x19, 0x95, 0x01, 0x19, 0x94, 0x84, 0x19, 0x95, 0x19, 0x94, 0x19, 0x74, 0x19, 0x94, 0x19, 0x74, 0x01, 0x19, 0x94, 0x02, 0x19, 0x74, 0x01, 0x19, 0x94, 0x04, 0x19, 0x74, 0x01, 0x19, 0x94, 0x03, 0x19, 0x74, 0x02, 0x19, 0x94, 0x01, 0x19, 0x95, 0x81, 0x21, 0xB5, 0x21, 0xD5, 0x02, 0x21, 0xD6, 0x85, 0x21, 0xF6, 0x19, 0xF6, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x33, 0x01, 0x19, 0x32, 0x03, 0x19, 0x12, 0x89, 0x11, 0x13, 0x11, 0x34, 0x11, 0x55, 0x19, 0x96, 0x21, 0xF8, 0x19, 0xD7, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x04, 0x21, 0x30, 0x82, + 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x91, 0x19, 0x31, 0x21, 0x52, 0x19, 0x32, 0x19, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x19, 0xF8, 0x11, 0xD9, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x21, 0x51, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x19, 0x10, 0x02, 0x21, 0x30, 0x93, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xF8, 0x1A, 0x39, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x10, 0xF1, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x21, + 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x0A, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, + 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x88, 0x21, 0x4F, 0x19, 0x2F, 0x09, 0x0F, 0x1A, 0x13, 0x44, 0x1A, 0x2B, 0xB9, 0x1B, 0xD9, 0x13, 0xD9, 0x13, 0xB9, 0x01, 0x13, 0xD9, 0x87, 0x13, 0xF9, 0x13, 0xD9, 0x1B, 0xF9, 0x1B, 0xD9, 0x23, 0xD9, 0x2B, 0x98, 0x33, 0x78, 0x09, 0xD1, 0x01, 0x01, 0x2F, 0x8A, 0x01, 0x30, 0x01, 0xB1, 0x33, 0xD9, 0x34, 0x1A, 0x2C, 0x1A, 0x23, 0xFA, 0x2B, 0xF9, 0x2B, 0x78, 0x01, 0x2F, 0x08, 0xEE, 0x19, 0x4F, 0x04, 0x21, 0x2F, 0x85, 0x19, 0x2F, 0x11, 0x2F, 0x01, 0x0F, 0x01, 0x70, 0x33, 0xF9, 0x23, 0xD9, 0x01, 0x23, 0xF9, 0x87, 0x2B, 0xF9, 0x33, 0xD9, 0x01, 0x2F, 0x01, 0x0F, 0x11, 0x70, 0x19, 0x50, 0x19, 0x30, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x82, + 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x11, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x19, 0x54, 0x19, 0x53, 0x19, 0x11, 0x19, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x84, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x01, 0x2A, 0x17, 0x84, 0x19, 0x94, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x87, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x88, 0x19, 0x12, 0x19, 0x32, 0x11, 0x13, 0x21, 0xB5, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x94, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x51, 0x02, 0x21, 0x30, 0x80, 0x29, 0x50, 0x04, 0x29, 0x30, 0x80, 0x29, 0x50, 0x04, 0x29, 0x30, 0x86, 0x29, 0x2F, 0x29, 0x0E, 0x31, 0x0E, 0x30, 0x6B, 0xAB, 0xD8, 0xD4, 0xBA, 0xDC, 0x99, 0x01, 0xDC, 0x78, 0x01, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, + 0x36, 0x85, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x02, 0xDC, 0x36, 0x85, 0xDC, 0x37, 0xE4, 0x37, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x58, 0x80, 0xDC, 0x78, 0x01, 0xD4, 0x79, 0x89, 0x92, 0xF3, 0x20, 0x08, 0x28, 0x8B, 0x30, 0xEE, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x19, 0x32, 0x11, 0x75, 0x01, 0x19, 0xF8, 0x91, 0x11, 0xD8, 0x09, 0x76, 0x09, 0x55, 0x09, 0x35, 0x01, 0x34, 0x09, 0x34, 0x01, 0x34, 0x01, 0x55, 0x09, 0x76, 0x11, 0xF8, 0x1A, 0x19, 0x19, 0xD7, 0x11, 0x55, 0x11, 0x12, 0x21, 0x31, 0x21, 0x11, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, + 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x89, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x11, 0xF6, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x32, 0x19, 0x31, 0x19, 0x10, 0x04, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x8A, 0x19, 0x30, 0x11, 0x2F, 0x09, 0x0E, 0x01, 0x2F, 0x34, 0x5A, 0x1C, 0x19, 0x0C, 0x19, 0x0C, 0x39, 0x0C, 0x19, 0x0C, 0x39, 0x0C, 0x18, 0x03, 0x0B, 0xF8, 0x82, 0x0B, 0xD8, 0x1B, 0xF8, 0x1B, 0xD8, 0x01, 0x23, 0xD8, 0x85, 0x33, 0xF8, 0x2B, 0x77, 0x01, 0x4F, 0x09, 0x50, 0x11, 0x50, 0x19, 0x70, 0x02, 0x11, 0x50, 0x84, 0x09, 0x50, 0x01, 0x50, 0x12, 0x53, 0x34, 0x5A, 0x1B, 0xF9, 0x01, 0x14, 0x19, 0x05, 0x0C, 0x18, 0x8C, 0x03, 0xD7, 0x0B, 0xF8, 0x0C, 0x18, 0x03, 0xF8, 0x0C, 0x39, 0x0C, 0x18, 0x0B, 0xF8, 0x13, 0xF8, 0x1C, 0x19, 0x23, 0xF9, 0x34, 0x19, 0x02, 0x12, 0x01, 0x90, 0x01, 0x01, 0x2F, 0x89, 0x01, 0xB1, 0x44, 0x1A, 0x2B, 0xB8, 0x23, 0xD8, 0x1B, 0xD8, 0x13, 0xF8, 0x14, 0x19, 0x0B, + 0xF8, 0x0C, 0x18, 0x0C, 0x39, 0x01, 0x04, 0x19, 0x81, 0x03, 0xF8, 0x04, 0x19, 0x01, 0x0C, 0x19, 0x88, 0x0B, 0xF8, 0x13, 0xF9, 0x13, 0xF8, 0x1B, 0xF9, 0x23, 0xF9, 0x34, 0x19, 0x43, 0xF9, 0x01, 0x2F, 0x11, 0x30, 0x01, 0x19, 0x30, 0x96, 0x21, 0x30, 0x21, 0x50, 0x19, 0x30, 0x19, 0x50, 0x11, 0x50, 0x01, 0x2F, 0x33, 0xB8, 0x34, 0x39, 0x1C, 0x18, 0x14, 0x18, 0x0B, 0xF8, 0x03, 0xF8, 0x0C, 0x18, 0x0C, 0x19, 0x14, 0x39, 0x1C, 0x19, 0x2C, 0x5A, 0x2B, 0xB8, 0x01, 0x70, 0x09, 0x30, 0x11, 0x50, 0x11, 0x30, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x87, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0xB5, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xD9, 0x06, 0x01, 0xDA, 0x87, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xF9, 0x11, 0xD9, 0x11, 0xB8, 0x11, 0xD7, 0x22, 0x38, 0x22, 0x17, 0x03, 0x2A, 0x17, 0x82, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x37, 0x02, 0x2A, 0x17, 0x80, 0x32, 0x37, 0x01, 0x2A, 0x37, 0x01, 0x2A, 0x17, 0x80, 0x2A, 0x16, 0x03, 0x2A, 0x17, 0x82, 0x2A, 0x37, 0x2A, 0x17, 0x32, 0x37, 0x05, 0x2A, 0x17, 0x83, 0x29, 0xF6, 0x2A, 0x17, 0x29, 0xF6, 0x2A, 0x17, 0x03, 0x21, 0xF6, 0x02, 0x19, 0xB5, 0x83, 0x19, 0x94, 0x19, 0x74, 0x19, 0x33, 0x11, 0x12, 0x03, 0x19, 0x12, 0x01, 0x19, 0x33, 0x82, 0x11, 0x34, 0x11, 0x55, 0x19, 0xB7, 0x01, 0x21, 0xF8, 0x86, 0x21, 0xF7, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x51, 0x19, 0x30, 0x05, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, + 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x21, 0x52, 0x19, 0x32, 0x11, 0x33, 0x11, 0x55, 0x11, 0x96, 0x11, 0xB7, 0x19, 0xD8, 0x01, 0x11, 0xF9, 0x86, 0x19, 0xF9, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x09, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x04, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD8, 0x01, 0x1A, 0x39, 0x87, 0x1A, 0x19, 0x11, 0xD8, 0x11, 0x97, 0x11, 0x55, 0x11, 0x34, 0x11, 0x13, 0x18, 0xF2, 0x19, 0x11, 0x01, 0x21, 0x11, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, + 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x06, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, + 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x86, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x86, 0x21, 0x4F, 0x19, 0x2F, 0x00, 0xEE, 0x2A, 0xB5, 0x4C, 0x5B, 0x2B, 0xD9, 0x23, 0xFA, 0x03, 0x13, 0xD9, 0x80, 0x13, 0xF9, 0x01, 0x13, 0xD9, 0x85, 0x1B, 0xD9, 0x1B, 0xB8, 0x2B, 0xB8, 0x3B, 0x98, 0x09, 0xD1, 0x01, 0x2F, 0x01, 0x01, 0x30, 0x82, 0x01, 0xB2, 0x33, 0xDA, 0x23, 0xB9, 0x01, 0x23, 0xD9, 0x99, 0x2B, 0xD9, 0x33, 0xB9, 0x01, 0x4F, 0x09, 0x0E, 0x19, 0x2F, 0x21, 0x2F, 0x21, 0x4F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x19, 0x50, 0x11, 0x2F, 0x01, 0x0F, 0x01, 0x70, 0x33, 0xD9, 0x2B, 0xF9, 0x23, 0xB9, 0x23, 0xD9, 0x2B, 0xF9, 0x44, 0x3A, 0x01, 0x70, 0x09, 0x50, 0x11, 0x50, 0x19, 0x30, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, + 0x10, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0x74, 0x19, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xB5, 0x19, 0x95, 0x19, 0x94, 0x19, 0x32, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x32, 0x01, 0x11, 0x33, 0x80, 0x19, 0x95, 0x01, 0x2A, 0x17, 0x84, 0x19, 0x74, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x06, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x11, 0x01, 0x19, 0x32, 0x81, 0x11, 0x33, 0x19, 0xB5, 0x01, 0x21, 0xD6, 0x86, 0x19, 0x74, 0x11, 0x32, 0x19, 0x52, 0x21, 0x52, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x0C, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x85, 0x30, 0xEE, 0x40, 0xCD, 0xD4, 0xBB, 0xDC, 0x9A, 0xDC, 0x99, 0xDC, 0x78, 0x01, 0xDC, 0x58, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x36, 0x80, 0xDC, 0x37, 0x04, 0xDC, 0x57, 0x88, 0xDC, 0x36, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x56, 0xE4, 0x56, 0xDC, 0x36, 0xE4, 0x37, 0xDC, 0x16, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x57, + 0x01, 0xDC, 0x37, 0x8D, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x58, 0xDC, 0x99, 0xD4, 0x99, 0xC4, 0x39, 0x59, 0x4E, 0x28, 0x2A, 0x28, 0x8C, 0x30, 0xEE, 0x31, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x30, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x05, 0x29, 0x30, 0x01, 0x29, 0x10, 0x06, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x95, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x75, 0x1A, 0x18, 0x1A, 0x39, 0x11, 0xF8, 0x09, 0x76, 0x01, 0x35, 0x09, 0x54, 0x09, 0x34, 0x01, 0x34, 0x09, 0x54, 0x09, 0x55, 0x09, 0x76, 0x1A, 0x19, 0x22, 0x3A, 0x19, 0xD8, 0x11, 0x34, 0x10, 0xF2, 0x21, 0x31, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, + 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x8C, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xF6, 0x11, 0x94, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x04, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x9B, 0x19, 0x30, 0x11, 0x2F, 0x00, 0xEE, 0x01, 0x4F, 0x3C, 0x9B, 0x1C, 0x39, 0x14, 0x39, 0x0C, 0x39, 0x03, 0xF8, 0x04, 0x18, 0x03, 0xF8, 0x0C, 0x18, 0x0B, 0xF8, 0x14, 0x19, 0x1C, 0x39, 0x24, 0x5A, 0x24, 0x19, 0x2C, 0x39, 0x34, 0x5A, 0x3C, 0x5A, 0x4C, 0x9B, 0x3B, 0xB8, 0x01, 0x2F, 0x11, 0x70, 0x19, 0x50, 0x11, 0x2F, 0x19, 0x30, 0x19, 0x50, 0x01, 0x11, 0x50, 0x88, 0x01, 0x30, 0x01, 0x4F, 0x23, 0x97, 0x24, 0x39, 0x14, 0x19, 0x0C, 0x19, 0x0C, 0x18, 0x0C, 0x19, 0x03, 0xF8, 0x01, 0x04, 0x18, 0x81, 0x0C, 0x39, 0x03, 0xF8, 0x02, 0x04, 0x18, 0x99, 0x0C, 0x39, 0x0C, 0x19, 0x0C, 0x18, 0x14, 0x19, 0x1B, 0xF9, 0x2C, 0x1A, 0x23, 0x37, 0x01, 0x70, 0x01, 0x4F, 0x01, 0x0E, 0x01, 0x0F, 0x09, 0xD1, 0x54, 0x5B, 0x3C, 0x1A, 0x33, 0xF9, 0x2C, 0x39, 0x1C, 0x19, 0x13, 0xF8, 0x0C, 0x19, 0x0C, 0x39, 0x03, 0xF8, 0x04, 0x19, 0x04, 0x18, 0x04, 0x19, 0x03, 0xF8, 0x03, 0xF9, 0x01, 0x0B, 0xF9, 0x86, 0x14, 0x19, 0x1C, 0x39, 0x24, 0x3A, 0x34, + 0x3A, 0x44, 0x5B, 0x54, 0x3A, 0x09, 0x2F, 0x01, 0x19, 0x50, 0x81, 0x19, 0x30, 0x21, 0x30, 0x01, 0x19, 0x30, 0x88, 0x19, 0x50, 0x11, 0x2F, 0x01, 0x0E, 0x3B, 0xD8, 0x34, 0x5A, 0x1C, 0x18, 0x0C, 0x18, 0x0B, 0xF8, 0x0C, 0x39, 0x01, 0x0C, 0x18, 0x88, 0x0B, 0xF9, 0x14, 0x19, 0x24, 0x3A, 0x2B, 0xF9, 0x01, 0x50, 0x09, 0x50, 0x11, 0x50, 0x19, 0x50, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x87, 0x11, 0x33, 0x11, 0xB5, 0x11, 0xD7, 0x09, 0xD7, 0x01, 0xF9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xB9, 0x03, 0x01, 0xBA, 0x81, 0x09, 0xDA, 0x09, 0xFA, 0x01, 0x09, 0xD9, 0x82, 0x11, 0xD8, 0x11, 0xB7, 0x19, 0xB7, 0x03, 0x21, 0xF7, 0x02, 0x29, 0xF7, 0x01, 0x2A, 0x17, 0x01, 0x29, 0xF6, 0x81, 0x2A, 0x17, 0x2A, 0x16, 0x04, 0x29, 0xF6, 0x80, 0x29, 0xD6, 0x01, 0x29, 0xF6, 0x81, 0x21, 0xF6, 0x2A, 0x16, 0x01, 0x29, 0xF6, 0x03, 0x21, 0xF6, 0x07, 0x21, 0xD6, 0x81, 0x21, 0xF6, 0x21, 0xD5, 0x01, 0x21, 0xB5, 0x83, 0x19, 0x74, 0x19, 0x53, 0x19, 0x32, 0x11, 0x11, 0x01, 0x19, 0x11, 0x01, 0x19, 0x12, 0x84, 0x19, 0x32, 0x11, 0x13, 0x11, 0x34, 0x11, 0x55, 0x19, 0xB7, 0x01, 0x21, 0xF8, 0x83, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x02, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, + 0x86, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x87, 0x21, 0x11, 0x19, 0x11, 0x19, 0x33, 0x19, 0x54, 0x11, 0x55, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xD8, 0x01, 0x11, 0xF9, 0x87, 0x11, 0xF8, 0x11, 0xB7, 0x09, 0x76, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x09, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x01, 0x1A, 0x19, 0x87, 0x11, 0xF9, 0x11, 0xB8, 0x11, 0x97, 0x11, 0x55, 0x11, 0x34, 0x19, 0x33, 0x18, 0xF2, 0x19, 0x11, 0x01, 0x21, 0x11, 0x03, 0x21, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, + 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, + 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x84, 0x19, 0x2F, 0x00, 0xCE, 0x2A, 0x95, 0x4C, 0x5B, 0x2B, 0xDA, 0x01, 0x1B, 0xD9, 0x01, 0x13, 0xD9, 0x80, 0x13, 0xFA, 0x01, 0x1B, 0xFA, 0x85, 0x13, 0xD9, 0x1B, 0xD9, 0x23, 0xB8, 0x2B, 0xB8, 0x33, 0x57, 0x11, 0xF2, 0x02, 0x01, 0x2F, 0x89, 0x01, 0xB1, 0x3B, 0xDA, 0x23, 0x99, 0x23, 0xB9, 0x23, 0xD9, 0x2B, 0xFA, 0x33, 0xB9, 0x01, 0x4F, 0x08, 0xEE, 0x19, 0x2F, 0x02, 0x21, 0x2F, 0x8F, 0x19, 0x0F, 0x21, 0x2F, 0x19, 0x50, 0x11, 0x2F, 0x01, 0x0F, 0x09, 0xB1, 0x33, 0xD9, 0x2B, 0xB9, 0x23, 0xD9, 0x2B, 0xD9, 0x33, 0xFA, 0x44, 0x1A, 0x01, 0x70, 0x09, 0x2F, 0x11, 0x50, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8D, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xD6, 0x21, 0xD6, 0x19, 0x94, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x31, 0x19, 0x31, + 0x19, 0x32, 0x01, 0x11, 0x33, 0x86, 0x19, 0x95, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x87, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x94, 0x11, 0x32, 0x19, 0x52, 0x21, 0x52, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x0B, 0x29, 0x30, 0x89, 0x29, 0x0F, 0x31, 0x2F, 0x30, 0xCD, 0x59, 0x6F, 0xDC, 0xFC, 0xDC, 0x99, 0xDC, 0xB9, 0xDC, 0x78, 0xDC, 0x58, 0xDC, 0x57, 0x04, 0xDC, 0x37, 0x83, 0xDC, 0x36, 0xDC, 0x37, 0xDC, 0x36, 0xE4, 0x57, 0x05, 0xDC, 0x57, 0x01, 0xDC, 0x36, 0x01, 0xDC, 0x56, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x36, 0x01, 0xE4, 0x37, 0x81, 0xE4, 0x57, 0xDC, 0x36, 0x02, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x58, 0x01, 0xDC, 0x79, 0x86, 0xD4, 0x79, 0xC4, 0x59, 0x7A, 0x72, 0x20, 0x0A, 0x28, 0xAD, 0x28, 0xEE, 0x31, 0x30, 0x02, 0x29, 0x30, 0x80, + 0x21, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x04, 0x29, 0x30, 0x02, 0x29, 0x10, 0x07, 0x29, 0x30, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x11, 0x19, 0x12, 0x11, 0x12, 0x11, 0x75, 0x01, 0x1A, 0x18, 0x82, 0x11, 0xF8, 0x09, 0x76, 0x09, 0x55, 0x03, 0x09, 0x54, 0x89, 0x01, 0x55, 0x09, 0x76, 0x1A, 0x19, 0x22, 0x3A, 0x19, 0xD8, 0x09, 0x34, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x01, 0x19, 0xF6, 0x81, 0x11, 0x95, 0x11, 0x32, 0x01, 0x19, 0x31, 0x04, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x86, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, + 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x19, 0x30, 0x19, 0x2F, 0x08, 0xEE, 0x01, 0x4F, 0x3C, 0x9B, 0x14, 0x39, 0x01, 0x0C, 0x19, 0x01, 0x04, 0x18, 0x8F, 0x0C, 0x19, 0x14, 0x19, 0x1C, 0x5A, 0x2C, 0x5A, 0x34, 0x5A, 0x34, 0x3A, 0x34, 0x39, 0x33, 0xF8, 0x33, 0xB8, 0x3B, 0xD8, 0x54, 0x5A, 0x33, 0x16, 0x01, 0x2F, 0x11, 0x50, 0x19, 0x4F, 0x19, 0x2F, 0x02, 0x19, 0x50, 0x88, 0x11, 0x50, 0x09, 0x50, 0x01, 0x4F, 0x02, 0x32, 0x2C, 0x5A, 0x1C, 0x19, 0x14, 0x19, 0x0C, 0x18, 0x0C, 0x39, 0x01, 0x04, 0x18, 0x80, 0x04, 0x38, 0x03, 0x04, 0x18, 0x87, 0x04, 0x39, 0x04, 0x18, 0x0C, 0x19, 0x0C, 0x39, 0x13, 0xF8, 0x23, 0xF9, 0x2B, 0xF9, 0x01, 0xB0, 0x02, 0x01, 0x0F, 0x88, 0x09, 0x50, 0x09, 0x91, 0x22, 0x74, 0x2A, 0xF5, 0x33, 0x98, 0x3C, 0x19, 0x2C, 0x19, 0x1B, 0xF8, 0x14, 0x18, 0x01, 0x04, 0x18, 0x80, 0x04, 0x19, 0x01, 0x04, 0x39, 0x01, 0x03, 0xF8, 0x89, 0x0C, 0x19, 0x14, 0x19, 0x2C, 0x3A, 0x34, 0x3A, 0x34, 0x19, 0x3B, 0xF9, 0x3B, 0x98, 0x1A, 0x53, 0x11, 0x50, 0x19, 0x50, 0x01, 0x19, 0x30, 0x81, 0x21, 0x30, 0x19, 0x30, 0x01, 0x19, 0x50, 0x84, 0x11, 0x2F, 0x00, 0xEE, 0x2B, 0x77, 0x34, 0x5A, 0x1C, 0x18, 0x01, 0x0B, 0xF8, 0x8B, 0x03, 0xF8, 0x0C, 0x39, 0x03, 0xF8, 0x14, 0x39, 0x13, 0xF9, 0x24, 0x3A, 0x23, 0xB8, 0x01, 0x50, 0x09, 0x50, 0x09, 0x30, 0x11, 0x50, 0x19, 0x50, 0x03, 0x21, 0x30, 0x01, 0x19, 0x31, + 0x82, 0x11, 0x52, 0x11, 0x94, 0x11, 0xD7, 0x01, 0x09, 0xF8, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x02, 0x01, 0xBA, 0x89, 0x01, 0xB9, 0x09, 0xFA, 0x09, 0xF9, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0xB7, 0x19, 0x96, 0x19, 0x76, 0x19, 0x95, 0x19, 0x75, 0x03, 0x19, 0x74, 0x81, 0x19, 0x95, 0x19, 0x74, 0x02, 0x19, 0x94, 0x80, 0x19, 0x74, 0x01, 0x19, 0x94, 0x01, 0x19, 0x74, 0x01, 0x19, 0x94, 0x82, 0x19, 0x74, 0x19, 0x94, 0x19, 0x74, 0x01, 0x19, 0x94, 0x80, 0x19, 0x74, 0x04, 0x19, 0x94, 0x04, 0x19, 0x74, 0x80, 0x11, 0x53, 0x01, 0x19, 0x74, 0x02, 0x19, 0x53, 0x80, 0x11, 0x33, 0x01, 0x19, 0x32, 0x03, 0x19, 0x11, 0x01, 0x19, 0x32, 0x8A, 0x11, 0x12, 0x11, 0x54, 0x11, 0x55, 0x19, 0x96, 0x22, 0x18, 0x21, 0xF8, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x01, 0x19, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x0A, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, + 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x31, 0x01, 0x19, 0x32, 0x8C, 0x19, 0x54, 0x11, 0x55, 0x11, 0x76, 0x11, 0xB8, 0x11, 0xD8, 0x11, 0xF9, 0x12, 0x19, 0x11, 0xF8, 0x11, 0xD7, 0x09, 0x75, 0x11, 0x54, 0x11, 0x33, 0x11, 0x11, 0x01, 0x19, 0x31, 0x82, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x20, 0xEF, 0x21, 0x0F, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x92, 0x21, 0x31, 0x21, 0x11, 0x19, 0x31, 0x10, 0xF1, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD8, 0x11, 0xF9, 0x1A, 0x19, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0x97, 0x11, 0x55, 0x11, 0x34, 0x11, 0x13, 0x19, 0x12, 0x21, 0x12, 0x02, 0x21, 0x11, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x29, 0x50, 0x29, + 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x89, 0x21, 0x30, 0x19, 0x30, 0x09, 0x0F, 0x11, 0xD2, 0x4C, 0x3B, 0x3C, 0x1A, 0x23, 0xD9, + 0x1B, 0xD9, 0x1B, 0xDA, 0x1B, 0xD9, 0x01, 0x1B, 0xFA, 0x86, 0x1B, 0xDA, 0x1B, 0xD9, 0x23, 0xD9, 0x2B, 0xD9, 0x3B, 0xFA, 0x3B, 0x57, 0x09, 0x70, 0x02, 0x01, 0x0F, 0x82, 0x09, 0xB1, 0x43, 0xFA, 0x34, 0x1A, 0x01, 0x2B, 0xFA, 0x8F, 0x2B, 0xD9, 0x3B, 0xD9, 0x09, 0x70, 0x08, 0xEE, 0x19, 0x0F, 0x18, 0xEF, 0x21, 0x2F, 0x21, 0x4F, 0x19, 0x0F, 0x21, 0x2F, 0x19, 0x2F, 0x09, 0x0E, 0x00, 0xCE, 0x1A, 0x74, 0x3C, 0x1A, 0x33, 0xD9, 0x01, 0x33, 0xFA, 0x89, 0x3B, 0xFA, 0x43, 0xFA, 0x01, 0x30, 0x09, 0x30, 0x11, 0x30, 0x19, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x50, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x33, 0x11, 0x53, 0x11, 0x75, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x31, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x19, 0x11, 0x19, 0x32, 0x19, 0x33, 0x11, 0x53, 0x19, 0x95, 0x01, 0x22, 0x17, 0x85, 0x19, 0x74, 0x10, 0xF2, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, + 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x31, 0x21, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x21, 0xB5, 0x01, 0x21, 0xF6, 0x82, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x07, 0x29, 0x30, 0x80, 0x31, 0x50, 0x01, 0x29, 0x30, 0x88, 0x29, 0x0F, 0x31, 0x0F, 0x28, 0x8C, 0x8A, 0xB3, 0xE5, 0x1C, 0xDC, 0xB9, 0xDC, 0x99, 0xDC, 0x58, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x84, 0xDC, 0x57, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x16, 0xDC, 0x37, 0x02, 0xDC, 0x36, 0x02, 0xDC, 0x57, 0x80, 0xE4, 0x57, 0x05, 0xDC, 0x57, 0x81, 0xDC, 0x36, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x81, 0xDC, 0x37, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x89, 0xDC, 0x38, 0xDC, 0x58, 0xDC, 0x79, 0xDC, 0x9A, 0xDC, 0xDB, 0xD5, 0x1D, 0x82, 0xD4, 0x20, 0x0A, 0x28, 0xAD, 0x31, 0x10, 0x01, 0x29, 0x10, 0x04, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x05, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, + 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x75, 0x19, 0xF8, 0x1A, 0x18, 0x11, 0xD8, 0x09, 0x76, 0x01, 0x35, 0x01, 0x01, 0x34, 0x83, 0x09, 0x54, 0x01, 0x54, 0x01, 0x55, 0x09, 0x96, 0x01, 0x19, 0xF8, 0x84, 0x19, 0xD7, 0x11, 0x54, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x05, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x89, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xF6, 0x11, 0x95, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x03, 0x21, 0x30, 0x85, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x84, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x01, 0x21, 0x2F, + 0x8E, 0x19, 0x50, 0x11, 0x2F, 0x00, 0xEE, 0x01, 0x4F, 0x3C, 0xBB, 0x14, 0x39, 0x0C, 0x19, 0x04, 0x18, 0x04, 0x19, 0x04, 0x18, 0x0C, 0x19, 0x0B, 0xB7, 0x02, 0x73, 0x01, 0xF0, 0x01, 0x8F, 0x01, 0x01, 0x4E, 0x88, 0x01, 0x2E, 0x00, 0xED, 0x00, 0xCD, 0x00, 0xAD, 0x00, 0xEE, 0x11, 0x50, 0x11, 0x2F, 0x19, 0x70, 0x19, 0x2F, 0x01, 0x19, 0x30, 0x01, 0x19, 0x50, 0x89, 0x11, 0x50, 0x01, 0x4F, 0x01, 0x6F, 0x23, 0x77, 0x24, 0x39, 0x14, 0x19, 0x0C, 0x39, 0x04, 0x19, 0x03, 0xF8, 0x04, 0x18, 0x01, 0x04, 0x38, 0x01, 0x04, 0x39, 0x8D, 0x04, 0x18, 0x04, 0x19, 0x04, 0x18, 0x03, 0xF8, 0x14, 0x39, 0x1C, 0x19, 0x2B, 0xD9, 0x02, 0x33, 0x01, 0x2F, 0x01, 0x0E, 0x11, 0x70, 0x19, 0xB1, 0x11, 0x70, 0x09, 0x2F, 0x02, 0x00, 0xEE, 0x88, 0x01, 0x2F, 0x01, 0x4F, 0x02, 0x93, 0x1C, 0x39, 0x0C, 0x18, 0x0C, 0x39, 0x04, 0x19, 0x03, 0xF8, 0x04, 0x39, 0x01, 0x0C, 0x19, 0x83, 0x0B, 0xF9, 0x2C, 0x7B, 0x01, 0xF2, 0x01, 0x70, 0x01, 0x01, 0x2F, 0x82, 0x01, 0x0F, 0x09, 0x2F, 0x11, 0x50, 0x01, 0x19, 0x30, 0x80, 0x19, 0x10, 0x01, 0x21, 0x50, 0x88, 0x19, 0x30, 0x19, 0x50, 0x09, 0x2F, 0x01, 0x0E, 0x22, 0xF5, 0x44, 0x9B, 0x1C, 0x19, 0x14, 0x19, 0x0C, 0x18, 0x02, 0x0C, 0x19, 0x8B, 0x14, 0x39, 0x1C, 0x3A, 0x24, 0x5A, 0x2B, 0xB8, 0x01, 0x50, 0x09, 0x50, 0x09, 0x30, 0x19, 0x50, 0x19, 0x30, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0xD6, 0x12, 0x18, 0x0A, 0x19, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x01, + 0x09, 0xFA, 0x01, 0x0A, 0x1A, 0x86, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x34, 0x11, 0x13, 0x02, 0x11, 0x12, 0x86, 0x11, 0x32, 0x19, 0x33, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x19, 0x32, 0x19, 0x12, 0x01, 0x19, 0x32, 0x80, 0x11, 0x32, 0x01, 0x19, 0x33, 0x01, 0x11, 0x33, 0x84, 0x11, 0x32, 0x19, 0x33, 0x11, 0x33, 0x11, 0x32, 0x19, 0x33, 0x01, 0x19, 0x32, 0x80, 0x19, 0x53, 0x05, 0x11, 0x32, 0x81, 0x19, 0x53, 0x19, 0x52, 0x01, 0x19, 0x53, 0x01, 0x19, 0x32, 0x84, 0x11, 0x12, 0x19, 0x12, 0x19, 0x32, 0x19, 0x31, 0x19, 0x32, 0x03, 0x19, 0x31, 0x84, 0x19, 0x32, 0x19, 0x53, 0x19, 0x74, 0x11, 0x54, 0x19, 0xB6, 0x02, 0x21, 0xF7, 0x81, 0x19, 0x95, 0x11, 0x12, 0x01, 0x11, 0x11, 0x82, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x32, 0x19, 0x33, 0x11, + 0x34, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xF9, 0x01, 0x12, 0x19, 0x86, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x88, 0x21, 0x31, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x01, 0x1A, 0x19, 0x87, 0x19, 0xF8, 0x11, 0xD8, 0x11, 0x96, 0x11, 0x75, 0x11, 0x54, 0x19, 0x33, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0B, 0x21, 0x30, 0x85, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x21, 0x51, 0x21, 0x50, 0x09, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, + 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x86, 0x19, 0x2F, 0x19, 0x30, 0x11, 0x30, 0x09, 0x50, 0x43, 0x99, 0x44, 0x1A, 0x33, 0xFA, 0x03, 0x23, 0xFA, 0x93, 0x1B, 0xDA, 0x1B, 0xD9, 0x23, 0xDA, 0x2B, 0xFA, 0x33, 0xD9, 0x43, 0xDA, 0x3A, 0xF6, 0x09, 0x0F, 0x08, 0xEF, 0x09, 0x0F, 0x01, 0x0F, 0x09, 0xD2, 0x43, 0xFA, 0x33, 0xDA, 0x33, 0xFA, 0x2B, 0xD9, 0x33, 0xB9, 0x43, 0xD9, 0x09, 0x4F, 0x08, 0xEE, 0x02, 0x21, 0x2F, 0x8E, 0x21, 0x50, 0x21, 0x2F, 0x19, 0x2F, 0x11, 0x2F, 0x00, + 0xCE, 0x09, 0x91, 0x4B, 0xDA, 0x3B, 0xDA, 0x33, 0xDA, 0x33, 0xD9, 0x33, 0xDA, 0x3B, 0xFA, 0x43, 0xDA, 0x01, 0x30, 0x11, 0x50, 0x01, 0x19, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x84, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x89, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x75, 0x19, 0xF7, 0x19, 0xF6, 0x21, 0xD6, 0x21, 0xB5, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x19, 0x95, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, + 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x01, 0x21, 0xD6, 0x83, 0x19, 0x94, 0x11, 0x32, 0x19, 0x32, 0x21, 0x51, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x08, 0x29, 0x30, 0x02, 0x31, 0x30, 0x89, 0x29, 0x0F, 0x30, 0xEF, 0x28, 0x4B, 0xAB, 0xD8, 0xE4, 0xFB, 0xDC, 0x99, 0xDC, 0x98, 0xDC, 0x78, 0xDC, 0x57, 0xDC, 0x58, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x84, 0xE4, 0x37, 0xDC, 0x37, 0xDC, 0x36, 0xE4, 0x36, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x82, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x02, 0xDC, 0x36, 0x03, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x08, 0xDC, 0x37, 0x80, 0xDC, 0x58, 0x01, 0xDC, 0x79, 0x86, 0xDC, 0xBA, 0xED, 0x7E, 0xAB, 0xF9, 0x28, 0x4B, 0x28, 0x6C, 0x28, 0xEF, 0x29, 0x10, 0x05, 0x29, 0x30, 0x80, 0x21, 0x10, 0x0D, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD7, 0x01, 0x11, 0xD8, 0x81, 0x09, 0x97, 0x01, 0x55, 0x03, 0x01, 0x34, 0x81, 0x01, 0x55, 0x09, 0xB7, 0x01, 0x1A, 0x18, 0x84, 0x19, 0xD7, 0x11, 0x54, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x02, + 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xD6, 0x11, 0xB5, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x01, 0x19, 0x4F, 0x8A, 0x00, 0xEE, 0x01, 0x2F, 0x3C, 0x9B, 0x1C, 0x39, 0x0B, 0xF8, 0x04, 0x19, 0x0C, 0x39, 0x04, 0x19, 0x0C, 0x19, 0x0B, 0xD8, 0x02, 0xB4, 0x02, 0x02, 0x32, 0x86, 0x0A, 0x52, 0x12, 0x52, 0x09, 0xF1, 0x01, 0x2F, 0x00, 0xEE, 0x00, 0xAD, 0x11, 0x2F, 0x02, 0x19, 0x50, 0x8F, 0x21, 0x30, 0x19, 0x2F, 0x19, 0x30, 0x19, 0x50, 0x11, 0x50, 0x09, 0x50, 0x01, 0x6F, 0x02, 0x11, 0x34, 0x5A, 0x1C, 0x19, 0x0C, 0x19, 0x0C, 0x39, 0x04, 0x18, 0x04, 0x39, 0x04, 0x38, 0x04, 0x18, 0x01, 0x04, 0x39, 0x8B, 0x04, 0x18, 0x04, + 0x19, 0x04, 0x39, 0x0C, 0x39, 0x14, 0x19, 0x24, 0x39, 0x23, 0x57, 0x01, 0x6F, 0x01, 0x0F, 0x09, 0x2F, 0x19, 0x70, 0x19, 0x50, 0x03, 0x11, 0x50, 0x91, 0x09, 0x2F, 0x01, 0x2F, 0x01, 0x0E, 0x01, 0xF1, 0x24, 0x39, 0x0C, 0x18, 0x04, 0x18, 0x0C, 0x39, 0x03, 0xF8, 0x04, 0x19, 0x0C, 0x39, 0x0C, 0x19, 0x13, 0xF9, 0x34, 0x7B, 0x01, 0x90, 0x01, 0x2F, 0x01, 0x50, 0x09, 0x30, 0x01, 0x11, 0x50, 0x03, 0x19, 0x30, 0x97, 0x21, 0x30, 0x21, 0x50, 0x19, 0x2F, 0x19, 0x50, 0x11, 0x2F, 0x01, 0x0E, 0x12, 0x53, 0x44, 0x9B, 0x1B, 0xF9, 0x14, 0x39, 0x0C, 0x19, 0x0C, 0x39, 0x0C, 0x19, 0x0C, 0x39, 0x14, 0x39, 0x1C, 0x39, 0x24, 0x3A, 0x23, 0x98, 0x01, 0x50, 0x09, 0x50, 0x11, 0x50, 0x11, 0x30, 0x19, 0x50, 0x21, 0x50, 0x02, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x95, 0x11, 0xD6, 0x12, 0x18, 0x01, 0x09, 0xF9, 0x8B, 0x09, 0xD9, 0x09, 0xFA, 0x0A, 0x1A, 0x09, 0xF9, 0x12, 0x19, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x74, 0x11, 0x33, 0x11, 0x13, 0x05, 0x19, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x11, 0x04, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x80, 0x19, 0x12, 0x0A, 0x19, 0x32, 0x83, 0x19, 0x52, 0x19, 0x32, 0x11, 0x11, 0x19, 0x32, 0x02, 0x19, 0x11, 0x83, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x21, 0x51, 0x01, 0x19, 0x31, 0x89, 0x19, 0x32, 0x19, 0x52, 0x11, 0x53, 0x19, 0x94, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x53, 0x01, 0x11, 0x11, 0x80, + 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x88, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x19, 0x33, 0x11, 0x33, 0x11, 0x55, 0x11, 0x96, 0x11, 0xB7, 0x1A, 0x19, 0x01, 0x12, 0x19, 0x86, 0x11, 0xF8, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x19, 0x52, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x19, 0x11, 0x85, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0xB6, 0x19, 0xD8, 0x11, 0xF8, 0x01, 0x1A, 0x19, 0x87, 0x19, 0xD8, 0x11, 0xB6, + 0x11, 0x75, 0x19, 0x54, 0x19, 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x11, 0x04, 0x21, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x19, 0x10, 0x02, 0x21, 0x31, 0x0A, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x08, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, + 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x19, 0x30, 0x85, 0x11, 0x30, 0x22, 0x34, 0x43, 0xDA, 0x3B, 0xFA, 0x33, 0xFA, 0x2B, 0xFA, 0x01, 0x2B, 0xDA, 0x87, 0x23, 0xDA, 0x2B, 0xDA, 0x2B, 0xB9, 0x33, 0xDA, 0x43, 0xDA, 0x43, 0x99, 0x2A, 0x33, 0x11, 0x0F, 0x01, 0x08, 0xEF, 0x82, 0x01, 0x0F, 0x09, 0xB2, 0x4C, 0x1A, 0x01, 0x33, 0xD9, 0x84, 0x2B, 0xB9, 0x33, 0xB9, 0x3B, 0x99, 0x09, 0x2F, 0x08, 0xCE, 0x01, 0x21, 0x0F, 0x90, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x2F, 0x19, 0x50, 0x00, 0xEE, 0x22, 0x33, 0x54, 0x1B, 0x43, 0xFA, 0x3B, 0xFA, 0x33, 0xDA, 0x33, 0xB9, 0x3B, 0xDA, 0x44, 0x1A, 0x4B, 0xFA, 0x01, 0x0F, 0x11, 0x30, 0x19, 0x30, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x31, 0x0F, 0x04, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x89, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, + 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x97, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x95, 0x21, 0xF7, 0x19, 0xD6, 0x29, 0xF6, 0x19, 0x53, 0x11, 0x31, 0x19, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x33, 0x19, 0xB6, 0x01, 0x22, 0x17, 0x83, 0x19, 0x95, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x85, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x8B, 0x11, 0x33, 0x21, 0xD6, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x32, 0x19, 0x32, 0x21, 0x51, 0x21, 0x31, 0x29, 0x31, 0x29, 0x30, 0x29, 0x50, 0x02, 0x29, 0x30, 0x02, 0x29, 0x50, 0x82, 0x29, 0x30, 0x29, 0x50, 0x29, 0x30, 0x02, 0x31, 0x30, 0x87, 0x31, 0x0F, 0x30, 0xEE, 0x28, 0x2B, 0xCC, 0xBB, 0xE4, 0xFA, 0xDC, 0x98, 0xDC, 0x78, 0xDC, 0x58, 0x01, 0xDC, 0x57, 0x83, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x82, 0xDC, 0x57, 0xE4, 0x57, + 0xDC, 0x36, 0x02, 0xDC, 0x57, 0x82, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x36, 0x01, 0xDC, 0x57, 0x86, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x80, 0xDC, 0x36, 0x04, 0xDC, 0x37, 0x8A, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x38, 0xDC, 0x58, 0xD4, 0x79, 0xDC, 0xDB, 0x82, 0x93, 0x38, 0xAC, 0x30, 0xCE, 0x28, 0xCE, 0x28, 0xEF, 0x05, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x09, 0x29, 0x30, 0x01, 0x29, 0x10, 0x09, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x88, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x11, 0x54, 0x19, 0x96, 0x11, 0xB7, 0x11, 0xD7, 0x09, 0xD7, 0x01, 0x97, 0x01, 0x01, 0x56, 0x01, 0x01, 0x76, 0x81, 0x09, 0x97, 0x1A, 0x18, 0x01, 0x11, 0xD7, 0x85, 0x19, 0xB6, 0x11, 0x54, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x04, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x88, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, + 0x21, 0x0F, 0x89, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x1A, 0x17, 0x19, 0xF6, 0x11, 0x94, 0x11, 0x12, 0x01, 0x19, 0x11, 0x03, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x8A, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x50, 0x19, 0x2F, 0x00, 0xEE, 0x01, 0x2F, 0x3C, 0x7B, 0x14, 0x19, 0x0C, 0x18, 0x0C, 0x39, 0x03, 0xF8, 0x01, 0x04, 0x19, 0x8E, 0x0C, 0x19, 0x14, 0x19, 0x1C, 0x39, 0x24, 0x5A, 0x2C, 0x3A, 0x2C, 0x5A, 0x34, 0x5A, 0x3C, 0x3A, 0x4C, 0x5B, 0x1A, 0x33, 0x00, 0xCE, 0x11, 0x2F, 0x19, 0x50, 0x19, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8A, 0x19, 0x30, 0x19, 0x2F, 0x11, 0x50, 0x09, 0x4F, 0x01, 0x6F, 0x1B, 0x15, 0x2C, 0x5A, 0x1C, 0x5A, 0x0C, 0x18, 0x04, 0x19, 0x04, 0x18, 0x02, 0x04, 0x38, 0x80, 0x04, 0x39, 0x01, 0x04, 0x18, 0xA0, 0x04, 0x19, 0x0C, 0x19, 0x13, 0xF9, 0x34, 0x3A, 0x02, 0x12, 0x01, 0x2F, 0x09, 0x2F, 0x19, 0x70, 0x19, 0x50, 0x19, 0x2F, 0x19, 0x50, 0x19, 0x2F, 0x19, 0x30, 0x11, 0x30, 0x11, 0x4F, 0x09, 0x4F, 0x00, 0xEE, 0x01, 0x90, 0x24, 0x39, 0x14, 0x19, 0x04, 0x18, 0x03, 0xF8, 0x04, 0x18, 0x0C, 0x19, 0x03, 0xF8, 0x0B, 0xF9, 0x1C, 0x19, 0x44, 0xBC, 0x01, 0x70, 0x01, 0x50, 0x09, 0x50, 0x11, 0x71, 0x11, 0x50, 0x01, 0x19, 0x50, 0x02, + 0x19, 0x30, 0x88, 0x21, 0x30, 0x19, 0x2F, 0x19, 0x30, 0x19, 0x50, 0x11, 0x2F, 0x01, 0x2F, 0x01, 0x70, 0x3C, 0x3A, 0x1B, 0xD8, 0x01, 0x0B, 0xF8, 0x80, 0x0B, 0xF9, 0x01, 0x0C, 0x19, 0x01, 0x14, 0x19, 0x84, 0x24, 0x3A, 0x23, 0xB8, 0x01, 0x50, 0x09, 0x50, 0x11, 0x70, 0x01, 0x19, 0x50, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x88, 0x19, 0x31, 0x19, 0x52, 0x19, 0x74, 0x11, 0x95, 0x11, 0xD6, 0x11, 0xD7, 0x11, 0xD8, 0x11, 0xF9, 0x09, 0xD8, 0x01, 0x11, 0xF9, 0x85, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x74, 0x19, 0x33, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x82, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x03, 0x19, 0x31, 0x83, 0x21, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x19, 0x11, 0x02, 0x19, 0x31, 0x03, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x51, 0x03, 0x19, 0x31, 0x80, 0x19, 0x11, 0x04, 0x21, 0x31, 0x02, 0x19, 0x31, 0x83, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x82, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x01, 0x11, 0x11, 0x81, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, + 0x02, 0x21, 0x2F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x02, 0x21, 0x31, 0x97, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x11, 0x55, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xF8, 0x12, 0x19, 0x12, 0x18, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x74, 0x11, 0x33, 0x19, 0x12, 0x19, 0x32, 0x21, 0x11, 0x21, 0x31, 0x29, 0x31, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x07, 0x21, 0x30, 0x86, 0x19, 0x10, 0x19, 0x11, 0x11, 0x12, 0x11, 0x53, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x02, 0x1A, 0x18, 0x84, 0x19, 0xD7, 0x11, 0x96, 0x11, 0x75, 0x19, 0x54, 0x11, 0x13, 0x02, 0x19, 0x12, 0x81, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x31, 0x06, 0x21, 0x30, 0x80, 0x21, 0x50, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x06, 0x21, 0x2F, 0x88, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x30, 0x01, + 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x04, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x30, 0x21, 0x51, 0x03, 0x21, 0x30, 0x84, 0x21, 0x50, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, + 0x21, 0x2F, 0x88, 0x21, 0x30, 0x19, 0x30, 0x11, 0x30, 0x11, 0x71, 0x3B, 0x38, 0x43, 0xFA, 0x3B, 0xDA, 0x33, 0xDA, 0x2B, 0xD9, 0x01, 0x2B, 0xDA, 0x8C, 0x33, 0xDA, 0x33, 0xBA, 0x43, 0xDA, 0x4B, 0x99, 0x2A, 0x54, 0x11, 0x0F, 0x10, 0xEE, 0x19, 0x0F, 0x08, 0xEF, 0x01, 0x0F, 0x11, 0xB2, 0x4C, 0x1B, 0x3B, 0xDA, 0x01, 0x33, 0xDA, 0x84, 0x3B, 0xDA, 0x43, 0x79, 0x09, 0x0F, 0x08, 0xAE, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x8F, 0x21, 0x30, 0x19, 0x30, 0x11, 0x0F, 0x21, 0xF2, 0x53, 0xDA, 0x4B, 0xDA, 0x43, 0xDA, 0x3B, 0xB9, 0x33, 0xB9, 0x3B, 0xBA, 0x43, 0xDA, 0x4C, 0x1B, 0x43, 0x99, 0x00, 0xEF, 0x11, 0x30, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x03, 0x29, 0x30, 0x07, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x73, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x50, 0x03, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x33, 0x19, 0xB6, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, + 0x06, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x81, 0x11, 0x33, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x85, 0x19, 0x74, 0x11, 0x12, 0x19, 0x52, 0x21, 0x52, 0x21, 0x31, 0x29, 0x31, 0x03, 0x29, 0x30, 0x81, 0x29, 0x50, 0x29, 0x30, 0x02, 0x29, 0x50, 0x81, 0x29, 0x30, 0x31, 0x51, 0x01, 0x31, 0x30, 0x85, 0x31, 0x10, 0x31, 0x0F, 0x30, 0xAE, 0x38, 0xAC, 0xE5, 0x3D, 0xDC, 0xB9, 0x01, 0xDC, 0x78, 0x02, 0xDC, 0x57, 0x83, 0xE4, 0x57, 0xDC, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x04, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x36, 0x0C, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x8B, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x38, 0xDC, 0x58, 0xDC, 0x99, 0xDC, 0xDB, 0x7A, 0x11, 0x30, 0x2A, 0x41, 0x0E, 0x30, 0xEE, 0x28, 0xEE, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x0A, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, + 0x29, 0x10, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x32, 0x19, 0x33, 0x11, 0x75, 0x19, 0xB6, 0x19, 0xF8, 0x12, 0x18, 0x12, 0x19, 0x01, 0x11, 0xF8, 0x01, 0x11, 0xD8, 0x87, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x54, 0x19, 0x53, 0x19, 0x32, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x88, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x09, 0x33, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0xB5, 0x11, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x85, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x10, + 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x01, 0x19, 0x2F, 0x86, 0x00, 0xEE, 0x01, 0x2F, 0x3C, 0x5A, 0x1C, 0x19, 0x14, 0x39, 0x04, 0x18, 0x0C, 0x19, 0x01, 0x04, 0x19, 0x02, 0x0C, 0x19, 0x8B, 0x14, 0x19, 0x13, 0xF9, 0x1C, 0x19, 0x1B, 0xF8, 0x23, 0xF9, 0x3C, 0x3A, 0x12, 0x12, 0x00, 0xCE, 0x11, 0x30, 0x19, 0x30, 0x19, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x2F, 0x19, 0x2F, 0x19, 0x50, 0x11, 0x2F, 0x11, 0x70, 0x01, 0x6F, 0x01, 0xB0, 0x34, 0x3A, 0x24, 0x5A, 0x14, 0x39, 0x03, 0xF8, 0x04, 0x19, 0x04, 0x39, 0x04, 0x59, 0x01, 0x04, 0x39, 0x85, 0x04, 0x18, 0x0C, 0x39, 0x0C, 0x19, 0x14, 0x19, 0x24, 0x19, 0x23, 0x77, 0x01, 0x01, 0x2F, 0x01, 0x11, 0x50, 0x80, 0x19, 0x50, 0x03, 0x19, 0x2F, 0x8F, 0x19, 0x30, 0x11, 0x2F, 0x11, 0x50, 0x01, 0x0E, 0x01, 0x4F, 0x2C, 0x3A, 0x0B, 0xF8, 0x0C, 0x19, 0x0C, 0x39, 0x0C, 0x19, 0x0B, 0xF9, 0x14, 0x39, 0x13, 0xF9, 0x1C, 0x19, 0x34, 0x3A, 0x01, 0x50, 0x01, 0x09, 0x50, 0x81, 0x11, 0x50, 0x11, 0x30, 0x01, 0x19, 0x50, 0x01, 0x19, 0x30, 0x85, 0x19, 0x2F, 0x21, 0x30, 0x19, 0x2F, 0x19, 0x50, 0x19, 0x2F, 0x11, 0x50, 0x01, 0x01, 0x0F, 0x86, 0x2B, 0x77, 0x23, 0xF9, 0x14, 0x19, 0x0B, 0xF8, 0x0C, 0x19, 0x0B, 0xF9, 0x0C, 0x19, 0x01, 0x13, 0xF9, 0x86, 0x2C, 0x5A, 0x23, 0x98, 0x01, 0x50, 0x09, 0x50, 0x11, 0x50, 0x19, 0x50, 0x19, 0x30, 0x04, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB6, 0x02, 0x11, 0xD7, 0x84, 0x11, 0xB7, + 0x11, 0x96, 0x11, 0x95, 0x11, 0x74, 0x11, 0x53, 0x01, 0x19, 0x32, 0x01, 0x19, 0x11, 0x02, 0x21, 0x31, 0x82, 0x21, 0x11, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x21, 0x11, 0x02, 0x21, 0x31, 0x80, 0x19, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x11, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x21, 0x11, 0x19, 0x10, 0x01, 0x21, 0x31, 0x84, 0x21, 0x11, 0x19, 0x10, 0x21, 0x10, 0x19, 0x10, 0x21, 0x31, 0x02, 0x19, 0x30, 0x80, 0x19, 0x31, 0x01, 0x19, 0x30, 0x81, 0x19, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8E, 0x11, 0x32, 0x19, 0x53, 0x19, 0x94, 0x19, 0xB5, 0x22, 0x17, 0x1A, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x89, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x0A, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, + 0x31, 0x91, 0x19, 0x31, 0x19, 0x52, 0x19, 0x53, 0x11, 0x54, 0x11, 0x75, 0x11, 0x76, 0x11, 0xB7, 0x11, 0xF8, 0x12, 0x18, 0x1A, 0x39, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x34, 0x19, 0x33, 0x19, 0x32, 0x21, 0x32, 0x21, 0x11, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x05, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x19, 0x31, 0x01, 0x19, 0x32, 0x83, 0x11, 0x33, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x01, 0x1A, 0x39, 0x83, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x75, 0x01, 0x11, 0x33, 0x80, 0x11, 0x12, 0x03, 0x19, 0x32, 0x03, 0x19, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x87, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x01, 0x11, 0x32, 0x80, 0x19, 0x32, 0x02, 0x19, 0x52, 0x80, 0x19, 0x51, 0x02, 0x19, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, + 0x0E, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x09, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x88, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x86, 0x19, 0x30, 0x19, 0x10, 0x11, 0x10, 0x19, 0xD2, 0x4B, 0xDA, 0x43, 0xDA, 0x3B, 0xDA, 0x01, 0x33, 0xB9, 0x8D, 0x3B, 0xBA, 0x43, 0xDA, 0x43, 0x9A, 0x43, 0x79, 0x32, 0x95, 0x11, 0x30, 0x10, 0xEE, 0x18, 0xEE, 0x21, 0x50, 0x19, 0x2F, 0x00, 0xEE, 0x19, 0xD2, 0x4B, 0xFB, 0x3B, 0xB9, + 0x01, 0x3B, 0xDA, 0x84, 0x3B, 0xBA, 0x43, 0x99, 0x09, 0x0F, 0x10, 0xAE, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x19, 0x50, 0x00, 0xCE, 0x2A, 0x13, 0x5B, 0xFB, 0x01, 0x4B, 0xBA, 0x89, 0x3B, 0x99, 0x3B, 0xB9, 0x43, 0xDA, 0x3B, 0xBA, 0x43, 0xDA, 0x54, 0x1B, 0x32, 0xB6, 0x11, 0x50, 0x19, 0x50, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x07, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x85, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x01, 0x11, 0x32, 0x81, 0x11, 0x53, 0x19, 0xB6, 0x01, 0x21, 0xD6, 0x83, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x51, 0x04, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x19, 0x12, 0x11, 0x34, 0x21, 0xB6, 0x2A, 0x17, 0x22, 0x17, 0x19, 0x95, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, + 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x80, 0x11, 0x53, 0x01, 0x21, 0xD6, 0x84, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x32, 0x19, 0x52, 0x21, 0x52, 0x01, 0x21, 0x31, 0x02, 0x29, 0x30, 0x04, 0x29, 0x50, 0x82, 0x29, 0x30, 0x29, 0x50, 0x31, 0x30, 0x01, 0x31, 0x31, 0x87, 0x31, 0x10, 0x30, 0xEF, 0x30, 0x8D, 0x59, 0x6F, 0xE5, 0x5C, 0xDC, 0xB9, 0xDC, 0x98, 0xDC, 0x78, 0x01, 0xDC, 0x57, 0x05, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x02, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x82, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x16, 0x02, 0xDC, 0x37, 0x81, 0xDC, 0x16, 0xDC, 0x17, 0x01, 0xDC, 0x37, 0x8C, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x17, 0xDC, 0x58, 0xDC, 0x59, 0xDC, 0xBA, 0xAB, 0x56, 0x30, 0x09, 0x41, 0x0E, 0x39, 0x2F, 0x31, 0x0F, 0x31, 0x2F, 0x31, 0x30, 0x09, 0x29, 0x30, 0x80, 0x21, 0x10, 0x06, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x08, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x93, + 0x21, 0x31, 0x19, 0x31, 0x19, 0x12, 0x11, 0x33, 0x19, 0x95, 0x19, 0xF7, 0x1A, 0x38, 0x1A, 0x59, 0x1A, 0x39, 0x1A, 0x19, 0x19, 0xF8, 0x1A, 0x18, 0x22, 0x59, 0x22, 0x38, 0x19, 0xB6, 0x11, 0x54, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x89, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF6, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x89, 0x21, 0x30, 0x19, 0x30, 0x19, 0x2F, 0x00, 0xEE, 0x01, 0x2F, 0x44, 0x9B, 0x1C, 0x39, 0x14, 0x39, 0x0C, 0x39, 0x0C, 0x18, 0x05, 0x0C, 0x19, 0x88, 0x14, 0x39, 0x14, 0x19, 0x13, 0xD8, 0x1B, 0xF8, 0x34, 0x3A, 0x01, 0xB1, 0x00, 0xCE, 0x11, 0x50, 0x19, 0x50, 0x01, 0x21, 0x50, 0x02, + 0x21, 0x2F, 0x8B, 0x21, 0x30, 0x21, 0x50, 0x19, 0x50, 0x11, 0x70, 0x09, 0x70, 0x01, 0x2F, 0x0A, 0x73, 0x34, 0x7B, 0x1C, 0x3A, 0x0C, 0x19, 0x04, 0x19, 0x04, 0x18, 0x01, 0x04, 0x39, 0x87, 0x04, 0x18, 0x04, 0x39, 0x04, 0x19, 0x14, 0x19, 0x24, 0x19, 0x2B, 0xF9, 0x01, 0xD1, 0x01, 0x0E, 0x01, 0x11, 0x4F, 0x84, 0x19, 0x50, 0x19, 0x2F, 0x21, 0x50, 0x21, 0x2F, 0x21, 0x50, 0x02, 0x19, 0x2F, 0x8D, 0x11, 0x4F, 0x01, 0x0E, 0x01, 0x70, 0x34, 0x3A, 0x13, 0xF9, 0x14, 0x19, 0x0C, 0x19, 0x0B, 0xF8, 0x0C, 0x19, 0x0B, 0xD8, 0x1C, 0x19, 0x24, 0x3A, 0x34, 0x1A, 0x01, 0x50, 0x01, 0x09, 0x50, 0x84, 0x11, 0x50, 0x11, 0x30, 0x19, 0x50, 0x19, 0x30, 0x19, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x50, 0x19, 0x2F, 0x01, 0x19, 0x50, 0x85, 0x09, 0x2F, 0x00, 0xEE, 0x12, 0x74, 0x23, 0xB8, 0x13, 0xF8, 0x0B, 0xF8, 0x01, 0x0C, 0x19, 0x86, 0x14, 0x19, 0x13, 0xF9, 0x1C, 0x19, 0x2C, 0x1A, 0x23, 0x98, 0x01, 0x50, 0x09, 0x50, 0x01, 0x11, 0x50, 0x83, 0x19, 0x30, 0x19, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x74, 0x11, 0x75, 0x11, 0x95, 0x01, 0x11, 0x75, 0x83, 0x11, 0x74, 0x11, 0x73, 0x11, 0x32, 0x19, 0x52, 0x01, 0x19, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, + 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x19, 0x30, 0x8C, 0x19, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x31, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x19, 0xD5, 0x19, 0xF6, 0x01, 0x22, 0x17, 0x8A, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x10, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x21, 0x10, 0x20, 0xEF, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x88, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x01, 0x11, 0x53, 0x8D, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x1A, 0x18, 0x12, 0x18, 0x1A, 0x19, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x76, 0x11, 0x34, 0x19, 0x33, 0x19, 0x12, 0x21, 0x31, 0x21, 0x11, 0x03, 0x21, 0x30, 0x80, 0x29, + 0x50, 0x05, 0x29, 0x2F, 0x85, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x8C, 0x19, 0x12, 0x11, 0x33, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xD7, 0x1A, 0x18, 0x1A, 0x39, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x54, 0x11, 0x34, 0x02, 0x11, 0x33, 0x80, 0x11, 0x32, 0x02, 0x19, 0x32, 0x01, 0x19, 0x31, 0x83, 0x21, 0x31, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x06, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x81, 0x11, 0x53, 0x19, 0x74, 0x01, 0x19, 0x94, 0x82, 0x19, 0xB5, 0x19, 0x94, 0x19, 0x74, 0x01, 0x19, 0x73, 0x81, 0x19, 0x53, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x13, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x08, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, + 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x9D, 0x21, 0x0F, 0x19, 0x0F, 0x19, 0x10, 0x11, 0x10, 0x09, 0x10, 0x43, 0x38, 0x4B, 0xBA, 0x43, 0xDA, 0x3B, 0xB9, 0x3B, 0xDA, 0x43, 0xBA, 0x4B, 0xDB, 0x3B, 0x38, 0x19, 0xB2, 0x08, 0xEF, 0x10, 0xCE, 0x18, 0xEE, 0x21, 0x2F, 0x21, 0x50, 0x19, 0x0F, 0x08, 0xCE, 0x19, 0xB2, 0x54, 0x1B, 0x3B, 0x99, 0x43, 0xFB, 0x43, 0xDA, 0x43, 0x99, 0x4B, 0x79, 0x09, 0x10, 0x08, 0xAE, 0x01, 0x21, 0x10, 0x85, 0x19, 0x0F, 0x10, 0xEF, 0x32, 0x54, 0x5B, 0xBA, 0x53, 0x9A, 0x4B, 0x99, 0x01, 0x43, 0x9A, 0x01, 0x43, 0xBA, 0x01, + 0x4B, 0xDA, 0x88, 0x4B, 0x99, 0x11, 0x71, 0x11, 0x50, 0x19, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0x95, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x21, 0x51, 0x02, 0x21, 0x30, 0x8B, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x33, 0x19, 0x96, 0x21, 0xF7, 0x2A, 0x17, 0x19, 0xB5, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x04, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, + 0x02, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x53, 0x21, 0xD6, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x12, 0x19, 0x52, 0x21, 0x52, 0x21, 0x51, 0x01, 0x29, 0x31, 0x84, 0x29, 0x30, 0x29, 0x50, 0x29, 0x30, 0x29, 0x50, 0x31, 0x50, 0x01, 0x29, 0x50, 0x81, 0x31, 0x51, 0x29, 0x30, 0x01, 0x31, 0x30, 0x87, 0x31, 0x31, 0x31, 0x30, 0x30, 0xEF, 0x30, 0x8C, 0x7A, 0x73, 0xE5, 0x5C, 0xDC, 0xB9, 0xDC, 0x78, 0x01, 0xDC, 0x57, 0x06, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x02, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x82, 0xDC, 0x37, 0xE4, 0x37, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x84, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x17, 0x04, 0xDC, 0x37, 0x86, 0xDC, 0x38, 0xDC, 0x58, 0xDC, 0x79, 0xCC, 0x39, 0x40, 0x4A, 0x30, 0x8C, 0x39, 0x0E, 0x01, 0x31, 0x0F, 0x80, 0x31, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x50, 0x0A, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x88, 0x21, 0x31, 0x21, 0x11, 0x19, 0x31, 0x19, + 0x32, 0x11, 0x33, 0x19, 0x95, 0x11, 0xB5, 0x19, 0xF7, 0x19, 0xD7, 0x01, 0x11, 0xB6, 0x01, 0x19, 0xB6, 0x83, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8C, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x05, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x19, 0x30, 0x86, 0x08, 0xEE, 0x01, 0x2F, 0x44, 0x7B, 0x24, 0x3A, 0x1C, 0x39, 0x0C, 0x19, 0x0C, 0x18, 0x01, 0x0C, 0x19, 0x81, 0x0C, 0x39, 0x0C, 0x19, 0x02, 0x0B, 0xF9, 0x01, 0x14, 0x19, 0x85, 0x1C, 0x19, 0x3C, 0x5A, 0x01, 0x90, 0x00, 0xAD, 0x19, 0x50, 0x21, 0x70, 0x01, + 0x21, 0x50, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x87, 0x19, 0x50, 0x11, 0x4F, 0x11, 0x50, 0x09, 0x50, 0x01, 0x50, 0x2B, 0xD9, 0x24, 0x3A, 0x13, 0xF9, 0x01, 0x0C, 0x19, 0x01, 0x04, 0x19, 0x8C, 0x0C, 0x39, 0x0C, 0x19, 0x0C, 0x39, 0x14, 0x19, 0x2C, 0x1A, 0x2B, 0x98, 0x01, 0x0E, 0x01, 0x2F, 0x11, 0x50, 0x11, 0x2F, 0x19, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x19, 0x2F, 0x83, 0x19, 0x4F, 0x01, 0x0E, 0x01, 0x4F, 0x34, 0x1A, 0x01, 0x1C, 0x19, 0x01, 0x0B, 0xF8, 0x86, 0x13, 0xF9, 0x1C, 0x19, 0x1B, 0xF9, 0x2C, 0x1A, 0x2B, 0xD9, 0x01, 0x2F, 0x09, 0x50, 0x01, 0x11, 0x50, 0x81, 0x19, 0x50, 0x19, 0x30, 0x01, 0x19, 0x2F, 0x04, 0x21, 0x2F, 0x01, 0x19, 0x50, 0x91, 0x11, 0x2F, 0x00, 0xEE, 0x09, 0xF2, 0x34, 0x1A, 0x1B, 0xF9, 0x13, 0xF9, 0x14, 0x19, 0x0B, 0xF9, 0x13, 0xF9, 0x1C, 0x19, 0x1B, 0xF9, 0x2C, 0x3A, 0x23, 0x78, 0x01, 0x50, 0x09, 0x50, 0x11, 0x50, 0x19, 0x50, 0x19, 0x30, 0x03, 0x21, 0x30, 0x82, 0x29, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x31, 0x02, 0x19, 0x32, 0x03, 0x11, 0x33, 0x80, 0x19, 0x53, 0x01, 0x11, 0x32, 0x80, 0x11, 0x31, 0x01, 0x19, 0x31, 0x03, 0x21, 0x31, 0x81, 0x21, 0x30, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x84, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x09, 0x21, 0x30, 0x87, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, + 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x85, 0x19, 0xF6, 0x11, 0x95, 0x11, 0x53, 0x11, 0x52, 0x11, 0x11, 0x19, 0x31, 0x02, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x87, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x06, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x92, 0x21, 0x32, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x11, 0xB7, 0x19, 0xF8, 0x1A, 0x19, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0x97, 0x11, 0x76, 0x11, 0x34, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x50, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, + 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x51, 0x01, 0x21, 0x31, 0x85, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD7, 0x01, 0x1A, 0x18, 0x87, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB7, 0x09, 0x96, 0x09, 0x75, 0x09, 0x54, 0x11, 0x54, 0x11, 0x34, 0x02, 0x11, 0x33, 0x80, 0x19, 0x52, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x02, 0x21, 0x31, 0x80, 0x19, 0x10, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x89, 0x21, 0x2F, 0x21, 0x50, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x19, 0xD6, 0x02, 0x19, 0xF7, 0x88, 0x1A, 0x17, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0xB5, 0x11, 0x95, 0x11, 0x53, 0x11, 0x12, 0x19, 0x32, 0x19, 0x51, 0x01, 0x21, 0x51, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x51, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x08, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x87, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x06, 0x21, + 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x06, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x88, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x0F, 0x18, 0xEF, 0x08, 0xEF, 0x21, 0xF3, 0x53, 0xDA, 0x4B, 0xDA, 0x43, 0xB9, 0x01, 0x43, 0xBA, 0x84, 0x43, 0x59, 0x21, 0xF4, 0x00, 0x8E, 0x10, 0xAE, 0x10, 0xCE, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x19, 0x0F, 0x08, 0xCF, 0x19, 0xB2, 0x5C, 0x1C, 0x4B, 0xDB, 0x01, 0x43, 0xBA, 0x8E, 0x43, 0x9A, 0x53, 0xBA, 0x09, 0x10, 0x10, 0xAF, 0x21, 0x10, 0x18, 0xEF, 0x19, 0x30, 0x53, 0x18, 0x63, 0xFB, 0x5B, 0xBA, 0x4B, 0x79, 0x4B, 0x59, 0x4B, 0x7A, 0x4B, 0xBA, 0x4B, 0x9A, 0x01, 0x4B, 0xBA, 0x82, 0x53, 0x9A, 0x11, 0x91, 0x09, 0x10, 0x01, 0x19, 0x30, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, + 0x29, 0x30, 0x06, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x88, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x50, 0x21, 0x30, 0x19, 0x30, 0x01, 0x19, 0x31, 0x89, 0x11, 0x53, 0x11, 0x33, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x51, 0x03, 0x21, 0x30, 0x84, 0x19, 0x10, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x21, 0xB6, 0x01, 0x21, 0xF7, 0x84, 0x19, 0x95, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x04, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x21, 0xD6, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x12, 0x19, 0x52, 0x21, 0x52, 0x21, 0x51, 0x21, 0x31, 0x01, 0x29, 0x31, 0x80, 0x29, 0x51, 0x01, 0x29, 0x30, 0x81, 0x29, 0x50, + 0x31, 0x50, 0x01, 0x29, 0x50, 0x8B, 0x31, 0x51, 0x31, 0x30, 0x31, 0x51, 0x31, 0x31, 0x31, 0x0F, 0x39, 0x0F, 0x30, 0x8C, 0x93, 0x36, 0xE5, 0x1C, 0xDC, 0x99, 0xDC, 0x98, 0xDC, 0x78, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x87, 0xDC, 0x36, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x36, 0x01, 0xDC, 0x57, 0x02, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x05, 0xDC, 0x37, 0x80, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x82, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x37, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x16, 0x03, 0xDC, 0x37, 0x01, 0xDC, 0x38, 0x87, 0xDC, 0x58, 0xDC, 0x59, 0xE4, 0xFB, 0x61, 0x4E, 0x20, 0x09, 0x28, 0xAC, 0x31, 0x0E, 0x31, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x06, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x0A, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x01, 0x19, 0x32, 0x01, 0x19, 0x53, 0x8D, 0x11, 0x33, 0x19, 0x54, 0x11, 0x53, 0x11, 0x33, 0x19, 0x53, 0x19, 0x33, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x85, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, + 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x83, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x82, 0x11, 0x95, 0x11, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x86, 0x19, 0x30, 0x08, 0xEF, 0x01, 0x0F, 0x3C, 0x3B, 0x23, 0xF9, 0x1C, 0x19, 0x14, 0x19, 0x01, 0x0B, 0xD8, 0x01, 0x0B, 0xF9, 0x81, 0x14, 0x1A, 0x0C, 0x19, 0x01, 0x14, 0x19, 0x80, 0x13, 0xF9, 0x01, 0x1B, 0xF9, 0x87, 0x44, 0xBC, 0x09, 0xD1, 0x00, 0xCE, 0x11, 0x30, 0x19, 0x30, 0x21, 0x50, 0x19, 0x2F, 0x21, 0x50, 0x01, 0x21, 0x30, 0x88, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x2F, 0x19, 0x50, 0x19, 0x70, 0x09, 0x2F, 0x01, 0x0F, 0x02, 0x53, 0x24, 0x1A, 0x01, 0x13, 0xF9, 0x80, 0x14, 0x19, 0x01, 0x0C, 0x19, 0x8A, 0x0C, 0x39, 0x0C, 0x19, 0x14, 0x19, 0x1B, 0xF9, 0x34, 0x3A, 0x1A, 0xB5, 0x01, 0x0E, 0x01, 0x0F, 0x11, 0x50, 0x19, 0x50, 0x19, 0x2F, 0x01, 0x21, 0x2F, 0x89, 0x21, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x50, 0x19, 0x50, + 0x08, 0xEE, 0x01, 0x2F, 0x33, 0xD9, 0x23, 0xD9, 0x01, 0x1B, 0xF9, 0x80, 0x13, 0xD8, 0x01, 0x13, 0xD9, 0x85, 0x23, 0xF9, 0x2C, 0x1A, 0x33, 0xD9, 0x01, 0x2F, 0x09, 0x50, 0x11, 0x50, 0x02, 0x19, 0x50, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x19, 0x2F, 0x90, 0x11, 0x2F, 0x00, 0xEF, 0x11, 0xF2, 0x3C, 0x5B, 0x24, 0x19, 0x1C, 0x19, 0x14, 0x19, 0x0B, 0xD8, 0x13, 0xD9, 0x1B, 0xF9, 0x24, 0x1A, 0x34, 0x3A, 0x2B, 0x98, 0x01, 0x50, 0x09, 0x50, 0x11, 0x50, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x05, 0x19, 0x32, 0x80, 0x19, 0x52, 0x01, 0x19, 0x51, 0x81, 0x19, 0x31, 0x19, 0x30, 0x07, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x19, 0xF6, 0x01, 0x21, 0xF7, 0x84, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x11, 0x31, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x06, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x06, 0x29, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, + 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x07, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8D, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xF9, 0x19, 0xF9, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x08, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x31, 0x87, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x11, 0x96, 0x11, 0xF7, 0x1A, 0x19, 0x02, 0x11, 0xF8, 0x80, 0x09, 0xD7, 0x01, 0x09, 0x96, 0x81, 0x09, 0x75, 0x09, 0x54, 0x03, 0x11, 0x54, 0x01, 0x19, 0x53, 0x83, 0x19, 0x52, 0x19, 0x32, 0x21, 0x31, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, + 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x53, 0x11, 0x95, 0x01, 0x19, 0xF7, 0x01, 0x1A, 0x17, 0x80, 0x19, 0xF7, 0x01, 0x1A, 0x18, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xD6, 0x11, 0x95, 0x09, 0x33, 0x11, 0x33, 0x19, 0x52, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x05, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x31, 0x02, 0x21, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x10, 0x21, 0x31, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x05, 0x21, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x11, 0x04, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, + 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x9A, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x18, 0xEF, 0x10, 0xEF, 0x19, 0x71, 0x5B, 0xDA, 0x53, 0xDA, 0x4B, 0xDA, 0x4B, 0xBA, 0x4B, 0x9A, 0x4B, 0x79, 0x19, 0x51, 0x08, 0x8E, 0x10, 0xAE, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x19, 0x0F, 0x18, 0xEF, 0x10, 0xCF, 0x21, 0xB2, 0x5B, 0xDB, 0x01, 0x4B, 0xBA, 0x01, 0x4B, 0x9A, 0x88, 0x53, 0x9A, 0x08, 0xEF, 0x10, 0xAF, 0x10, 0xCF, 0x18, 0xF0, 0x53, 0x18, 0x6B, 0xDB, 0x63, 0xBB, 0x5B, 0x9A, 0x01, 0x4B, 0x7A, 0x80, 0x4B, 0x9A, 0x01, 0x4B, 0xBA, 0x85, 0x4B, 0x9A, 0x53, 0x9A, 0x19, 0xB2, 0x09, 0x0F, 0x11, 0x10, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x05, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x8F, 0x21, 0x0F, 0x29, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x19, 0x10, 0x19, 0x30, 0x19, 0x52, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x21, 0xF7, 0x21, 0xB6, 0x19, 0x74, + 0x11, 0x33, 0x19, 0x52, 0x19, 0x51, 0x04, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x21, 0xB6, 0x01, 0x21, 0xF7, 0x82, 0x19, 0x95, 0x11, 0x12, 0x19, 0x12, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x87, 0x19, 0xB5, 0x11, 0x33, 0x19, 0x53, 0x21, 0x52, 0x21, 0x51, 0x29, 0x51, 0x29, 0x31, 0x29, 0x51, 0x01, 0x29, 0x50, 0x80, 0x29, 0x30, 0x01, 0x29, 0x50, 0x82, 0x31, 0x50, 0x31, 0x51, 0x31, 0x50, 0x01, 0x31, 0x51, 0x86, 0x39, 0x50, 0x31, 0x0F, 0x38, 0xEE, 0x30, 0x8C, 0xAB, 0xD8, 0xDC, 0xFB, 0xDC, 0xB9, 0x01, 0xDC, 0x78, 0x84, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x82, 0xDC, 0x36, 0xE4, 0x57, 0xDC, 0x37, 0x04, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x82, 0xE4, 0x37, 0xDC, 0x37, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x04, 0xDC, 0x37, 0x01, 0xDC, 0x17, 0x80, 0xDC, 0x37, 0x03, 0xDC, 0x17, 0x82, 0xDC, 0x37, 0xDC, 0x17, 0xDC, 0x37, 0x01, 0xDC, 0x38, + 0x88, 0xDC, 0x9A, 0xC3, 0xF8, 0x28, 0x08, 0x30, 0x6B, 0x30, 0xCD, 0x30, 0xEE, 0x31, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x0C, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x06, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x11, 0x03, 0x19, 0x11, 0x81, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x10, 0x04, 0x21, 0x30, 0x85, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x8C, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x88, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0xD6, 0x1A, 0x17, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x29, + 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x9C, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x10, 0x19, 0x30, 0x08, 0xEF, 0x01, 0x0F, 0x44, 0x1B, 0x23, 0xB9, 0x23, 0xFA, 0x1B, 0xFA, 0x13, 0xB8, 0x0B, 0xB8, 0x0B, 0xB9, 0x0B, 0xB8, 0x0B, 0xD9, 0x13, 0xF9, 0x1C, 0x1A, 0x01, 0x13, 0xD9, 0x86, 0x24, 0x19, 0x2C, 0x1A, 0x44, 0x7B, 0x11, 0xF2, 0x00, 0xCE, 0x11, 0x30, 0x19, 0x30, 0x01, 0x21, 0x50, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x50, 0x88, 0x19, 0x30, 0x08, 0xEF, 0x00, 0xAE, 0x2B, 0x37, 0x2B, 0xFA, 0x23, 0xD9, 0x1B, 0xD9, 0x1B, 0xF9, 0x1C, 0x19, 0x01, 0x13, 0xF9, 0x87, 0x13, 0xD9, 0x1B, 0xF9, 0x23, 0xD9, 0x33, 0xFA, 0x1A, 0x74, 0x00, 0xEE, 0x09, 0x0F, 0x11, 0x30, 0x01, 0x19, 0x2F, 0x06, 0x21, 0x2F, 0x84, 0x19, 0x2F, 0x08, 0xEE, 0x00, 0xEE, 0x3B, 0xFA, 0x23, 0x98, 0x01, 0x23, 0xF9, 0x01, 0x1B, 0xD9, 0x84, 0x1B, 0xB9, 0x2B, 0xD9, 0x33, 0xFA, 0x3B, 0xD9, 0x01, 0x0F, 0x01, 0x11, 0x50, 0x82, 0x11, 0x30, 0x19, 0x30, 0x21, 0x50, 0x04, 0x21, 0x2F, 0x94, 0x21, 0x0F, 0x21, 0x2F, 0x19, 0x2F, 0x21, 0x30, 0x19, 0x30, 0x08, 0xEF, 0x09, 0x91, 0x3C, 0x1A, 0x2B, 0xF9, 0x23, 0xF9, 0x13, 0xD9, 0x13, 0xB8, 0x1B, 0xD9, 0x23, 0xD9, 0x2B, 0xFA, 0x33, 0xFA, 0x33, 0x78, 0x01, 0x2F, 0x09, 0x30, 0x11, 0x30, 0x19, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, + 0x29, 0x10, 0x03, 0x21, 0x10, 0x02, 0x21, 0x31, 0x01, 0x19, 0x11, 0x03, 0x19, 0x31, 0x81, 0x19, 0x51, 0x19, 0x30, 0x01, 0x21, 0x50, 0x06, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x19, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x86, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x21, 0x10, + 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x19, 0x31, 0x8C, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xB7, 0x19, 0xD8, 0x19, 0xF9, 0x1A, 0x19, 0x19, 0xF9, 0x11, 0xD7, 0x11, 0x75, 0x19, 0x75, 0x11, 0x33, 0x01, 0x19, 0x32, 0x80, 0x21, 0x52, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x87, 0x21, 0x52, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0xB6, 0x11, 0xF7, 0x11, 0xF8, 0x09, 0xF8, 0x01, 0x0A, 0x19, 0x84, 0x09, 0xD8, 0x09, 0xB7, 0x09, 0x96, 0x09, 0x76, 0x11, 0xB6, 0x02, 0x19, 0xB6, 0x81, 0x19, 0xB5, 0x19, 0x74, 0x01, 0x19, 0x53, 0x81, 0x19, 0x32, 0x21, 0x32, 0x02, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x03, 0x19, 0xF7, 0x02, 0x11, 0xB6, 0x80, 0x11, 0xD7, 0x01, 0x19, 0xF8, 0x85, 0x11, + 0xD8, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x34, 0x08, 0xF2, 0x11, 0x12, 0x01, 0x11, 0x11, 0x01, 0x10, 0xF1, 0x01, 0x19, 0x11, 0x01, 0x11, 0x11, 0x82, 0x19, 0x32, 0x19, 0x11, 0x11, 0x11, 0x06, 0x19, 0x11, 0x81, 0x11, 0x11, 0x10, 0xF1, 0x02, 0x18, 0xF1, 0x02, 0x10, 0xF1, 0x81, 0x11, 0x11, 0x10, 0xF1, 0x01, 0x18, 0xF1, 0x01, 0x10, 0xF1, 0x01, 0x18, 0xF1, 0x81, 0x10, 0xF1, 0x19, 0x11, 0x03, 0x10, 0xF1, 0x81, 0x19, 0x11, 0x18, 0xF1, 0x05, 0x19, 0x11, 0x80, 0x19, 0x31, 0x03, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x89, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x50, 0x21, 0x2F, 0x01, + 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x18, 0xEF, 0x82, 0x19, 0x51, 0x63, 0xFB, 0x5B, 0xDA, 0x02, 0x53, 0xBA, 0x8B, 0x5B, 0x9A, 0x08, 0xCF, 0x08, 0x6E, 0x18, 0xEF, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x20, 0xEF, 0x18, 0xEF, 0x08, 0xAE, 0x21, 0x92, 0x5B, 0xDB, 0x03, 0x53, 0x9A, 0x84, 0x53, 0x5A, 0x08, 0xAF, 0x00, 0x2D, 0x18, 0xCF, 0x5B, 0x19, 0x01, 0x63, 0x7A, 0x82, 0x5B, 0x7A, 0x53, 0x59, 0x53, 0x7A, 0x01, 0x53, 0x9A, 0x86, 0x53, 0xBA, 0x53, 0x9A, 0x5B, 0xBA, 0x21, 0xF3, 0x11, 0x10, 0x19, 0x30, 0x19, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x51, 0x19, 0x32, 0x01, 0x11, 0x12, 0x89, 0x21, 0xB6, 0x29, 0xF7, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x51, 0x19, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x88, 0x19, 0x31, 0x19, 0x32, 0x11, 0x13, 0x21, 0xB5, 0x29, 0xF7, 0x2A, 0x17, 0x21, 0x95, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, + 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8D, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x21, 0xD6, 0x21, 0xF6, 0x19, 0xF6, 0x19, 0xB5, 0x11, 0x33, 0x19, 0x53, 0x21, 0x73, 0x29, 0x52, 0x29, 0x51, 0x29, 0x31, 0x29, 0x51, 0x01, 0x29, 0x50, 0x80, 0x31, 0x71, 0x01, 0x31, 0x50, 0x04, 0x31, 0x51, 0x87, 0x39, 0x30, 0x39, 0x2F, 0x39, 0x0E, 0x38, 0x8C, 0xB3, 0xF8, 0xDC, 0xDB, 0xDC, 0x99, 0xDC, 0x78, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x02, 0xDC, 0x36, 0x02, 0xDC, 0x57, 0x83, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x37, 0x06, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x36, 0x03, 0xDC, 0x37, 0x01, 0xDC, 0x17, 0x80, 0xE4, 0x37, 0x01, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x8A, 0xDB, 0xF6, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x38, 0xDC, 0x58, 0xDC, 0x9A, 0xBC, 0x19, 0x40, 0xAC, 0x30, 0x6B, 0x30, 0xCE, 0x30, 0xEE, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x09, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x07, 0x29, 0x30, 0x80, 0x29, 0x50, 0x06, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x8A, + 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x31, 0x03, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x19, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0xD6, 0x11, 0xF7, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x19, 0x10, 0x86, 0x08, 0xEF, 0x00, 0xEF, 0x54, 0x5C, 0x33, 0xDA, 0x2B, 0xDA, 0x23, 0xB9, + 0x13, 0x78, 0x02, 0x1B, 0xB9, 0x01, 0x23, 0xFA, 0x8A, 0x2C, 0x1B, 0x2C, 0x1A, 0x23, 0xFA, 0x2B, 0xFA, 0x34, 0x3A, 0x54, 0x9C, 0x11, 0xB2, 0x00, 0xCE, 0x19, 0x30, 0x21, 0x50, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x30, 0x11, 0x10, 0x00, 0x8E, 0x32, 0x75, 0x4B, 0xFB, 0x3B, 0xBA, 0x33, 0xDA, 0x2B, 0xDA, 0x01, 0x23, 0xB9, 0x80, 0x23, 0xDA, 0x01, 0x23, 0xB9, 0x86, 0x23, 0x99, 0x33, 0xDA, 0x44, 0x1B, 0x3B, 0x38, 0x00, 0xAE, 0x11, 0x10, 0x19, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x19, 0x0F, 0x86, 0x11, 0x0F, 0x01, 0x2F, 0x54, 0x3B, 0x33, 0xD9, 0x33, 0xB9, 0x2B, 0xB9, 0x23, 0x99, 0x01, 0x2B, 0xB9, 0x89, 0x33, 0xBA, 0x3B, 0xFA, 0x3B, 0x79, 0x00, 0xEF, 0x09, 0x0F, 0x11, 0x30, 0x19, 0x50, 0x19, 0x30, 0x21, 0x30, 0x19, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x91, 0x21, 0x50, 0x19, 0x30, 0x08, 0xCF, 0x09, 0x50, 0x43, 0xB9, 0x33, 0xD9, 0x2B, 0xFA, 0x23, 0xD9, 0x1B, 0xB9, 0x23, 0xD9, 0x2B, 0xDA, 0x33, 0xFA, 0x3B, 0xFA, 0x3B, 0x78, 0x01, 0x0F, 0x11, 0x30, 0x11, 0x0F, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x01, 0x21, 0x31, 0x03, 0x19, 0x31, 0x03, 0x19, 0x30, 0x03, 0x21, 0x30, 0x87, 0x21, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, + 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x86, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x22, 0x17, 0x01, 0x21, 0xF7, 0x83, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x01, 0x19, 0x31, 0x82, 0x19, 0x30, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x90, 0x19, 0x30, 0x19, 0x31, 0x19, 0x51, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x96, 0x19, 0xB7, 0x19, 0xF9, 0x1A, 0x19, 0x1A, 0x39, 0x1A, 0x19, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x32, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, + 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8A, 0x21, 0x32, 0x19, 0x32, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0xD6, 0x11, 0xF8, 0x12, 0x18, 0x09, 0xF8, 0x0A, 0x19, 0x09, 0xF8, 0x01, 0x09, 0xB7, 0x01, 0x11, 0xB7, 0x8A, 0x11, 0xB6, 0x11, 0xB7, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x54, 0x19, 0x53, 0x19, 0x52, 0x19, 0x11, 0x19, 0x10, 0x07, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x19, 0x31, 0x11, 0x12, 0x11, 0x95, 0x01, 0x19, 0xD7, 0x83, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x96, 0x09, 0x76, 0x02, 0x09, 0x75, 0x81, 0x11, 0xB6, 0x11, 0xD7, 0x02, 0x11, 0xD8, 0x82, 0x11, 0x96, 0x09, 0x34, 0x09, 0x33, 0x04, 0x09, 0x12, 0x01, 0x11, 0x12, 0x01, 0x09, 0x12, 0x80, 0x09, 0x13, 0x02, 0x09, 0x12, 0x81, 0x11, 0x12, 0x09, 0x12, 0x01, 0x08, 0xF2, 0x82, 0x09, 0x12, 0x08, 0xF2, 0x09, 0x12, 0x01, 0x08, 0xF2, 0x80, 0x09, 0x12, 0x01, 0x08, 0xF2, 0x80, 0x09, 0x12, 0x09, 0x08, 0xF2, 0x01, 0x08, 0xD2, 0x01, 0x08, 0xF2, 0x80, 0x08, 0xD2, 0x02, 0x08, 0xF2, 0x81, 0x09, + 0x12, 0x08, 0xF2, 0x01, 0x08, 0xF1, 0x81, 0x10, 0xF2, 0x11, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x0B, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x88, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x18, 0xCF, 0x10, 0xEF, 0x63, 0xBA, 0x5B, 0xBA, 0x02, 0x53, 0x9A, 0x84, 0x5B, 0x7A, 0x08, 0x8E, 0x10, 0x8E, 0x20, 0xF0, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x84, 0x18, 0xCF, 0x10, 0xCF, 0x21, 0x71, 0x63, 0xDB, 0x53, 0xBB, 0x01, 0x53, 0x9B, 0x86, 0x53, 0x7B, 0x5B, 0x7B, 0x00, 0x4E, 0x18, 0xF0, 0x63, 0x39, 0x63, 0x5A, 0x5B, 0x39, 0x01, 0x5B, 0x5A, 0x83, 0x53, 0x5A, 0x53, 0x7A, 0x5B, 0x9B, 0x5B, 0xBB, 0x01, + 0x5B, 0x9A, 0x84, 0x21, 0xD3, 0x10, 0xEF, 0x19, 0x30, 0x19, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x51, 0x29, 0x72, 0x19, 0x32, 0x01, 0x11, 0x12, 0x89, 0x19, 0x75, 0x29, 0xF7, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x51, 0x21, 0x51, 0x21, 0x50, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x21, 0xB5, 0x21, 0xF7, 0x29, 0xF7, 0x21, 0xB5, 0x11, 0x12, 0x19, 0x12, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x19, + 0x11, 0x11, 0x32, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xF6, 0x19, 0xB5, 0x11, 0x33, 0x19, 0x33, 0x29, 0x73, 0x01, 0x29, 0x52, 0x83, 0x29, 0x31, 0x29, 0x51, 0x31, 0x51, 0x29, 0x50, 0x01, 0x31, 0x50, 0x01, 0x31, 0x51, 0x80, 0x31, 0x71, 0x01, 0x31, 0x51, 0x88, 0x31, 0x50, 0x39, 0x50, 0x39, 0x2F, 0x39, 0x0E, 0x40, 0xAC, 0xBC, 0x19, 0xDC, 0xDA, 0xE4, 0xB9, 0xDC, 0x78, 0x06, 0xDC, 0x57, 0x83, 0xDC, 0x36, 0xDC, 0x56, 0xDC, 0x36, 0xDC, 0x56, 0x02, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xDC, 0x57, 0x06, 0xDC, 0x37, 0x80, 0xDC, 0x57, 0x04, 0xDC, 0x37, 0x81, 0xDC, 0x17, 0xE4, 0x37, 0x01, 0xDC, 0x17, 0x82, 0xE4, 0x37, 0xE4, 0x17, 0xDB, 0xF6, 0x01, 0xDC, 0x16, 0x8B, 0xDB, 0xF6, 0xDB, 0xF7, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x38, 0xD4, 0x18, 0xD4, 0x38, 0xDC, 0xBB, 0xCC, 0x9B, 0x61, 0x90, 0x30, 0x8C, 0x38, 0xEE, 0x01, 0x31, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x0C, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x0C, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x89, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x04, 0x21, 0x10, 0x82, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x04, 0x21, 0x2F, + 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x20, 0xF0, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x89, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0xD6, 0x11, 0xF7, 0x11, 0xD7, 0x19, 0x95, 0x11, 0x32, 0x19, 0x11, 0x21, 0x11, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x10, 0x08, 0xCF, 0x00, 0xAF, 0x64, 0x7D, 0x4B, 0xFB, 0x43, 0xFB, 0x33, 0x9A, 0x3B, 0xFB, 0x4C, 0x7D, 0x01, 0x44, 0x3C, 0x81, 0x44, 0x1B, 0x3B, 0xBA, 0x01, 0x3B, 0xDB, 0x86, 0x44, 0x1B, 0x43, 0xFB, 0x4C, 0x1B, 0x53, 0xDA, 0x09, 0x10, 0x10, 0xCF, 0x19, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x4F, 0x21, 0x2F, 0x21, 0x50, 0x01, 0x21, 0x30, 0x85, 0x18, 0xF0, 0x10, 0xF0, 0x5B, 0x9A, 0x4B, 0x7A, 0x43, 0x7A, 0x43, 0x9A, 0x01, 0x3B, 0x9A, 0x02, 0x33, 0x9A, 0x95, 0x33, 0xBA, 0x3B, 0xBA, 0x43, 0xBA, 0x4B, 0x9A, 0x64, 0x1C, 0x19, 0x51, 0x10, 0xF0, + 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x19, 0x0F, 0x10, 0xEF, 0x00, 0xEE, 0x5C, 0x1B, 0x43, 0x9A, 0x01, 0x3B, 0x9A, 0x87, 0x33, 0x79, 0x3B, 0xBA, 0x3B, 0x79, 0x3B, 0x7A, 0x4B, 0xFB, 0x43, 0x79, 0x00, 0xCE, 0x11, 0x10, 0x01, 0x19, 0x30, 0x87, 0x19, 0x2F, 0x21, 0x2F, 0x19, 0x2F, 0x19, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x10, 0xCF, 0x09, 0x10, 0x53, 0xDB, 0x43, 0xBA, 0x3B, 0xDA, 0x33, 0xDA, 0x01, 0x33, 0xBA, 0x85, 0x33, 0x9A, 0x3B, 0xDA, 0x4B, 0xFB, 0x43, 0x58, 0x01, 0x0F, 0x11, 0x30, 0x01, 0x19, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x01, 0x21, 0x31, 0x82, 0x19, 0x31, 0x19, 0x30, 0x19, 0x31, 0x04, 0x19, 0x30, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x84, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x86, 0x19, 0xF6, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x11, 0x12, 0x19, 0x31, 0x19, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x2F, + 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x50, 0x21, 0x51, 0x19, 0x51, 0x19, 0x72, 0x19, 0x52, 0x11, 0x53, 0x11, 0x74, 0x11, 0x96, 0x19, 0xB7, 0x19, 0xF8, 0x01, 0x1A, 0x19, 0x85, 0x11, 0xF8, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x51, 0x02, 0x21, 0x31, 0x97, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0xD7, 0x11, + 0xF8, 0x09, 0xF8, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0xB7, 0x11, 0xB7, 0x11, 0xB6, 0x09, 0x75, 0x11, 0x76, 0x11, 0xB7, 0x22, 0x19, 0x22, 0x18, 0x19, 0xD7, 0x19, 0xB7, 0x21, 0xD6, 0x11, 0x53, 0x11, 0x11, 0x19, 0x11, 0x04, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x88, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB7, 0x09, 0x96, 0x11, 0x96, 0x09, 0x75, 0x09, 0x55, 0x09, 0x54, 0x01, 0x09, 0x55, 0x80, 0x09, 0x76, 0x02, 0x11, 0xD8, 0x81, 0x11, 0xF8, 0x11, 0xD7, 0x02, 0x11, 0xB6, 0x82, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0xD7, 0x05, 0x11, 0xB6, 0x82, 0x11, 0x96, 0x11, 0xB6, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x02, 0x19, 0xD7, 0x81, 0x11, 0xB6, 0x19, 0xB7, 0x02, 0x11, 0xB6, 0x01, 0x11, 0xD6, 0x03, 0x11, 0xB6, 0x82, 0x19, 0xD6, 0x11, 0xB6, 0x11, 0xB7, 0x07, 0x19, 0xD7, 0x03, 0x19, 0xF7, 0x01, 0x19, 0xD7, 0x83, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x01, 0x11, 0x12, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x09, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, + 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x04, 0x29, 0x10, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x18, 0xEF, 0x87, 0x6B, 0xBA, 0x63, 0xBB, 0x5B, 0x9A, 0x5B, 0xBA, 0x5B, 0x9A, 0x5B, 0x7A, 0x08, 0x8E, 0x18, 0xAF, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x95, 0x10, 0xCF, 0x29, 0xB2, 0x63, 0xBB, 0x5B, 0x9A, 0x5B, 0x9B, 0x5B, 0x7A, 0x5B, 0x7B, 0x63, 0x9B, 0x3A, 0x15, 0x63, 0x3A, 0x6B, 0x7B, 0x63, 0x5A, 0x63, 0x7B, 0x5B, 0x5A, 0x53, 0x19, 0x5B, 0x5A, 0x5B, 0x9A, 0x5B, 0xBB, 0x5B, 0x9A, 0x5B, 0x79, 0x21, 0xB2, 0x10, 0xEF, 0x01, 0x19, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x85, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, + 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x51, 0x8A, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x21, 0xB5, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x50, 0x8B, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x21, 0xB5, 0x21, 0xF7, 0x2A, 0x17, 0x19, 0xB5, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x51, 0x83, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x19, 0xB5, 0x02, 0x19, 0xF7, 0x85, 0x19, 0xB6, 0x11, 0x54, 0x19, 0x53, 0x21, 0x73, 0x29, 0x52, 0x29, 0x72, 0x01, 0x29, 0x51, 0x83, 0x31, 0x71, 0x29, 0x50, 0x31, 0x50, 0x29, 0x50, 0x01, 0x31, 0x51, 0x02, 0x31, 0x71, + 0x87, 0x31, 0x50, 0x39, 0x30, 0x39, 0x2F, 0x41, 0x2F, 0x48, 0xED, 0xD4, 0xBB, 0xDC, 0xBA, 0xDC, 0x99, 0x01, 0xDC, 0x58, 0x01, 0xDC, 0x37, 0x83, 0xE4, 0x57, 0xDC, 0x36, 0xE4, 0x57, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x81, 0xE4, 0x57, 0xDC, 0x56, 0x05, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x88, 0xDC, 0x16, 0xDC, 0x17, 0xDC, 0x37, 0xE4, 0x17, 0xDC, 0x17, 0xE4, 0x17, 0xDC, 0x16, 0xDC, 0x17, 0xDC, 0x16, 0x05, 0xDC, 0x17, 0x87, 0xDC, 0x18, 0xDC, 0x38, 0xDC, 0x59, 0xD4, 0x7A, 0xDC, 0xFC, 0xA3, 0x97, 0x40, 0xCD, 0x38, 0xEE, 0x01, 0x31, 0x0F, 0x01, 0x31, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x50, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x07, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x05, 0x29, 0x30, 0x01, 0x29, 0x50, 0x03, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, + 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x84, 0x19, 0x10, 0x19, 0x31, 0x11, 0x32, 0x09, 0x33, 0x11, 0xD6, 0x01, 0x19, 0xF7, 0x83, 0x19, 0x95, 0x11, 0x32, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x8E, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x10, 0xCF, 0x00, 0x8E, 0x6C, 0x3D, 0x4B, 0x5A, 0x53, 0x7B, 0x3A, 0xF9, 0x3B, 0x19, 0x32, 0xF8, 0x6C, 0x9E, 0x19, 0xF4, 0x01, 0x00, 0x6E, 0x04, 0x00, 0x4E, 0x86, 0x00, 0x2D, 0x10, 0x8F, 0x18, 0xAF, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x50, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x89, 0x18, 0xF0, 0x10, 0xAF, 0x5A, 0xD8, 0x6B, 0x7B, 0x5B, 0x5A, 0x5B, 0x5B, 0x53, 0x5B, 0x4B, 0x5A, 0x53, 0x7B, 0x4B, 0x7B, 0x01, 0x4B, 0x7A, 0x01, 0x4B, 0x9B, 0x81, 0x53, 0x7A, 0x53, 0x5A, 0x01, 0x63, 0x7A, 0x81, 0x08, 0x6E, 0x20, 0xF0, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x2F, + 0x03, 0x21, 0x2F, 0x83, 0x10, 0xEE, 0x08, 0xCE, 0x63, 0xDB, 0x4B, 0x5A, 0x03, 0x4B, 0x7A, 0x86, 0x43, 0x5A, 0x4B, 0x7A, 0x5B, 0xFC, 0x63, 0xFC, 0x00, 0x8F, 0x11, 0x10, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x10, 0xCF, 0x11, 0x10, 0x6B, 0xFC, 0x53, 0xBB, 0x4B, 0x9B, 0x01, 0x43, 0x7A, 0x86, 0x43, 0x9A, 0x43, 0x7A, 0x4B, 0xBB, 0x5B, 0xDB, 0x53, 0x79, 0x08, 0xEF, 0x11, 0x10, 0x01, 0x19, 0x10, 0x02, 0x21, 0x30, 0x06, 0x21, 0x10, 0x02, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x31, 0x01, 0x19, 0x30, 0x07, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x8A, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x86, 0x19, 0xF6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, + 0x10, 0x01, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x50, 0x21, 0x30, 0x21, 0x51, 0x19, 0x51, 0x01, 0x19, 0x32, 0x84, 0x11, 0x53, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x19, 0xF8, 0x01, 0x1A, 0x19, 0x8B, 0x1A, 0x18, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x88, 0x21, 0x10, 0x21, 0x31, 0x21, 0x11, 0x19, 0x31, 0x19, 0x12, 0x11, 0x12, 0x11, 0x53, 0x11, 0xB6, 0x11, 0xF7, 0x01, 0x09, 0xF8, 0x01, 0x09, 0xD8, 0x81, 0x09, 0xB7, 0x09, 0x96, 0x01, + 0x09, 0x55, 0x01, 0x09, 0x76, 0x88, 0x11, 0xB7, 0x19, 0xF8, 0x11, 0xF8, 0x19, 0xF8, 0x19, 0xB7, 0x11, 0x54, 0x11, 0x11, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0xB6, 0x01, 0x11, 0xD7, 0x80, 0x09, 0x96, 0x01, 0x09, 0x75, 0x80, 0x09, 0x55, 0x02, 0x09, 0x54, 0x86, 0x09, 0x55, 0x09, 0x56, 0x09, 0x97, 0x09, 0xB8, 0x09, 0xD8, 0x11, 0xF9, 0x12, 0x19, 0x02, 0x1A, 0x39, 0x84, 0x22, 0x59, 0x22, 0x39, 0x22, 0x5A, 0x22, 0x59, 0x22, 0x7A, 0x02, 0x22, 0x59, 0x81, 0x22, 0x5A, 0x22, 0x7A, 0x01, 0x22, 0x5A, 0x80, 0x2A, 0x7A, 0x02, 0x22, 0x5A, 0x80, 0x22, 0x7A, 0x04, 0x22, 0x5A, 0x02, 0x22, 0x7A, 0x01, 0x22, 0x59, 0x83, 0x2A, 0x79, 0x2A, 0x7A, 0x22, 0x59, 0x22, 0x7A, 0x01, 0x22, 0x5A, 0x86, 0x22, 0x59, 0x22, 0x5A, 0x22, 0x59, 0x22, 0x5A, 0x22, 0x39, 0x22, 0x59, 0x22, 0x39, 0x02, 0x22, 0x59, 0x8B, 0x22, 0x39, 0x22, 0x59, 0x22, 0x39, 0x22, 0x59, 0x2A, 0x59, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x51, 0x19, 0x31, 0x09, 0x21, 0x30, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, + 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x89, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x20, 0xEF, 0x10, 0xAE, 0x6B, 0x9A, 0x6B, 0xBB, 0x01, 0x63, 0x9A, 0x85, 0x5B, 0x7A, 0x63, 0x5A, 0x10, 0x8F, 0x18, 0xAF, 0x21, 0x10, 0x20, 0xEF, 0x01, 0x29, 0x30, 0x84, 0x20, 0xEF, 0x21, 0x10, 0x10, 0xAE, 0x29, 0x92, 0x63, 0xBB, 0x01, 0x63, 0x9B, 0x80, 0x5B, 0x7B, 0x01, 0x5B, 0x3A, 0x01, 0x63, 0x1A, 0x81, 0x63, 0x3A, 0x6B, 0x5B, 0x01, 0x63, 0x5A, 0x8B, 0x5B, 0x3A, 0x5B, 0x5A, 0x63, 0x9B, 0x63, 0x9A, 0x5B, 0x7A, 0x21, 0x92, 0x10, 0xEF, 0x19, 0x0F, 0x21, 0x30, 0x19, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, + 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x88, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x19, 0xD5, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x30, 0x01, 0x21, 0x50, 0x01, 0x21, 0x0F, 0x89, 0x21, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xF6, 0x21, 0xB5, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x88, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x51, 0x84, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, + 0x19, 0xB6, 0x02, 0x19, 0xF7, 0x85, 0x11, 0xB6, 0x11, 0x74, 0x19, 0x53, 0x21, 0x73, 0x21, 0x53, 0x29, 0x52, 0x02, 0x29, 0x51, 0x02, 0x31, 0x51, 0x81, 0x31, 0x71, 0x31, 0x51, 0x01, 0x31, 0x71, 0x89, 0x31, 0x51, 0x31, 0x50, 0x39, 0x30, 0x39, 0x2F, 0x41, 0x0E, 0x48, 0xED, 0xDC, 0xDC, 0xDC, 0xBA, 0xDC, 0x99, 0xDC, 0x78, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x87, 0xDC, 0x36, 0xDC, 0x57, 0xDC, 0x36, 0xDC, 0x57, 0xDC, 0x56, 0xDC, 0x57, 0xE4, 0x57, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x36, 0x02, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x80, 0xDC, 0x57, 0x04, 0xDC, 0x37, 0x01, 0xDC, 0x16, 0x81, 0xE4, 0x17, 0xDC, 0x17, 0x01, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x80, 0xDB, 0xF6, 0x02, 0xDC, 0x17, 0x83, 0xDB, 0xF7, 0xDC, 0x17, 0xDC, 0x18, 0xDC, 0x38, 0x01, 0xDC, 0x59, 0x84, 0xD4, 0x9A, 0xDD, 0x1D, 0x8A, 0xB4, 0x30, 0x8C, 0x39, 0x0F, 0x01, 0x31, 0x0F, 0x80, 0x31, 0x30, 0x0D, 0x29, 0x30, 0x80, 0x29, 0x10, 0x09, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, + 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x31, 0x11, 0x31, 0x11, 0x53, 0x11, 0xD6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x93, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x18, 0xEF, 0x10, 0xAF, 0x00, 0x4E, 0x73, 0xDC, 0x63, 0x7B, 0x6B, 0x7C, 0x5B, 0x1A, 0x52, 0xFA, 0x63, 0x5A, 0x6B, 0xBC, 0x31, 0xB4, 0x18, 0x90, 0x18, 0x6F, 0x04, 0x10, 0x2F, 0x01, 0x10, 0x2E, 0x01, 0x20, 0xAF, 0x82, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x50, 0x29, 0x30, 0x21, 0x10, 0x20, 0xF0, 0x18, 0x8F, 0x31, 0x53, 0x73, 0x3A, 0x6B, 0x1A, 0x01, 0x6B, 0x1B, 0x01, 0x63, 0x3B, 0x84, 0x63, 0x5B, 0x5B, 0x5B, 0x63, 0x5B, 0x5B, 0x3B, 0x5B, 0x5B, 0x01, 0x63, 0x3B, 0x01, 0x63, 0x1A, 0x83, 0x7B, 0x7B, 0x49, 0xF5, 0x20, + 0xB0, 0x20, 0xF0, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x8F, 0x21, 0x0F, 0x10, 0xEE, 0x08, 0x8E, 0x63, 0x7B, 0x63, 0x5B, 0x63, 0x7B, 0x63, 0x7C, 0x5B, 0x5B, 0x5B, 0x3B, 0x63, 0x5B, 0x63, 0x7B, 0x63, 0x9C, 0x73, 0xDD, 0x08, 0x8F, 0x18, 0xD0, 0x19, 0x10, 0x02, 0x21, 0x30, 0x08, 0x21, 0x2F, 0x83, 0x21, 0x10, 0x18, 0xCF, 0x10, 0xAF, 0x6B, 0xBB, 0x01, 0x63, 0x7B, 0x8A, 0x53, 0x3B, 0x53, 0x5B, 0x53, 0x3B, 0x53, 0x5B, 0x63, 0x9B, 0x63, 0xBB, 0x5B, 0x59, 0x10, 0xCF, 0x18, 0xF0, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x03, 0x19, 0x31, 0x84, 0x19, 0x52, 0x19, 0x51, 0x19, 0x31, 0x19, 0x51, 0x19, 0x31, 0x01, 0x21, 0x51, 0x80, 0x21, 0x31, 0x06, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x84, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x1A, 0x17, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x52, 0x21, 0x31, 0x04, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x87, 0x29, 0x0F, 0x21, + 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x51, 0x01, 0x19, 0x31, 0x87, 0x19, 0x11, 0x11, 0x32, 0x19, 0x74, 0x19, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xF8, 0x12, 0x19, 0x01, 0x11, 0xF8, 0x85, 0x11, 0xB7, 0x09, 0x75, 0x11, 0x34, 0x11, 0x33, 0x19, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x81, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x82, 0x11, 0x32, 0x11, 0x94, 0x19, 0xD7, 0x01, 0x11, 0xF8, 0x82, 0x09, 0xD8, + 0x09, 0xB7, 0x09, 0x96, 0x01, 0x09, 0x55, 0x84, 0x09, 0x35, 0x09, 0x55, 0x09, 0x76, 0x09, 0x96, 0x11, 0xB7, 0x01, 0x11, 0xD8, 0x84, 0x19, 0xD7, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x04, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x11, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB7, 0x09, 0x96, 0x09, 0x75, 0x09, 0x55, 0x09, 0x75, 0x01, 0x09, 0x54, 0x83, 0x09, 0x55, 0x09, 0x76, 0x09, 0x97, 0x11, 0xD8, 0x01, 0x09, 0xD8, 0x81, 0x11, 0xF8, 0x1A, 0x19, 0x08, 0x1A, 0x18, 0x05, 0x19, 0xF8, 0x80, 0x19, 0xD8, 0x04, 0x19, 0xF8, 0x80, 0x19, 0xD8, 0x03, 0x19, 0xF8, 0x82, 0x19, 0xD7, 0x19, 0xF8, 0x19, 0xF7, 0x01, 0x19, 0xD7, 0x82, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xD8, 0x01, 0x19, 0xF8, 0x02, 0x19, 0xD8, 0x01, 0x19, 0xF8, 0x80, 0x19, 0xD7, 0x01, 0x19, 0xF8, 0x80, 0x19, 0xD7, 0x03, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x87, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x32, 0x11, 0x11, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x06, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, + 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x05, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x8F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x20, 0xEF, 0x88, 0x18, 0xCF, 0x6B, 0x9A, 0x6B, 0xBB, 0x63, 0x7A, 0x63, 0x7B, 0x63, 0x7A, 0x63, 0x3A, 0x10, 0xAF, 0x18, 0xAF, 0x01, 0x20, 0xF0, 0x01, 0x29, 0x30, 0x01, 0x20, 0xEF, 0x84, 0x10, 0xAF, 0x21, 0x51, 0x6B, 0xBB, 0x63, 0x7B, 0x63, 0x5B, 0x02, 0x63, 0x3B, 0x01, 0x63, 0x1A, 0x89, 0x63, 0x3B, 0x63, 0x3A, 0x63, 0x5B, 0x6B, 0x7B, 0x63, 0x5A, 0x63, 0x7A, 0x63, 0x9A, 0x63, 0x7A, 0x21, 0x71, 0x19, 0x0F, 0x01, 0x19, 0x30, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, + 0x0F, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x19, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x01, 0x21, 0xD6, 0x8D, 0x19, 0x95, 0x11, 0x33, 0x19, 0x52, 0x19, 0x31, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x01, 0x21, 0xF6, 0x83, 0x19, 0x94, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x05, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x90, 0x21, 0x31, 0x21, 0x52, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x09, 0x75, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x74, 0x19, 0x74, 0x21, 0x73, 0x21, 0x52, 0x29, 0x52, 0x01, 0x29, 0x51, 0x02, 0x31, 0x51, 0x04, 0x31, 0x71, 0x8A, 0x39, 0x51, 0x39, 0x50, 0x41, 0x4F, 0x41, 0x0E, 0x48, 0xCD, 0xDC, 0xDC, 0xDC, 0xBA, 0xDC, 0x99, 0xDC, 0x78, 0xDC, 0x58, 0xDC, 0x57, 0x02, 0xDC, 0x37, 0x01, 0xDC, 0x57, + 0x82, 0xDC, 0x36, 0xE4, 0x57, 0xDC, 0x36, 0x03, 0xDC, 0x57, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x82, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x36, 0x04, 0xDC, 0x57, 0x01, 0xDC, 0x36, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x16, 0x04, 0xDC, 0x17, 0x01, 0xDC, 0x16, 0x06, 0xDC, 0x17, 0x80, 0xDB, 0xF7, 0x01, 0xDC, 0x38, 0x87, 0xD4, 0x39, 0xCC, 0x39, 0xDD, 0x1D, 0x40, 0x8C, 0x40, 0xEE, 0x39, 0x2F, 0x39, 0x30, 0x31, 0x30, 0x01, 0x29, 0x30, 0x01, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x09, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x87, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x20, 0xEF, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x89, 0x19, + 0x31, 0x11, 0x11, 0x11, 0x32, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8C, 0x20, 0xF0, 0x18, 0xAF, 0x10, 0x8F, 0x8B, 0xFD, 0x7B, 0x5B, 0x73, 0x3B, 0x73, 0x1B, 0x7B, 0x3C, 0x7B, 0x5C, 0x72, 0xDA, 0x8B, 0x9D, 0x9B, 0xFF, 0x9B, 0xDE, 0x02, 0x9B, 0xBE, 0x88, 0x9B, 0xDE, 0x93, 0x7C, 0x93, 0xBD, 0x9C, 0x1D, 0x73, 0x19, 0x20, 0x6E, 0x28, 0xF0, 0x20, 0xEF, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x86, 0x20, 0xF0, 0x20, 0xAF, 0x20, 0x90, 0x72, 0xB9, 0x83, 0x1B, 0x82, 0xFB, 0x83, 0x1C, 0x01, 0x7B, 0x1C, 0x82, 0x73, 0x3C, 0x6A, 0xFB, 0x6B, 0x1B, 0x01, 0x73, 0x3B, 0x81, 0x73, 0x3C, 0x73, 0x1C, 0x01, 0x7B, 0x3C, 0x83, 0x7A, 0xFB, 0x72, 0xB9, 0x83, 0x1B, 0x30, 0xD1, 0x01, 0x28, 0xD0, 0x83, 0x28, 0xF0, 0x28, 0xEF, 0x20, 0xEF, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x87, 0x21, 0x0E, 0x18, 0xEE, 0x18, 0xCE, 0x10, 0x6E, 0x73, 0x7B, 0x73, 0x5C, 0x7B, 0x7D, 0x73, 0x3C, 0x01, 0x6A, 0xFB, 0x01, 0x73, 0x3C, 0x86, 0x73, 0x5C, 0x7B, 0xBC, 0x10, 0x6F, 0x18, 0xD0, 0x18, 0xF0, 0x18, 0xEF, 0x21, 0x30, 0x02, + 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x20, 0xD0, 0x83, 0x73, 0x7B, 0x73, 0x5B, 0x73, 0x7C, 0x73, 0x3C, 0x01, 0x62, 0xFB, 0x84, 0x6B, 0x3B, 0x73, 0x9C, 0x7B, 0xBC, 0x6B, 0x3A, 0x18, 0xAF, 0x01, 0x18, 0xCF, 0x80, 0x18, 0xEF, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x02, 0x11, 0x52, 0x81, 0x19, 0x52, 0x19, 0x32, 0x02, 0x19, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8D, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, + 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x19, 0x30, 0x01, 0x19, 0x31, 0x86, 0x19, 0x52, 0x19, 0x53, 0x19, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x12, 0x19, 0x86, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x34, 0x11, 0x13, 0x19, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x07, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x11, 0x18, 0xF1, 0x19, 0x12, 0x11, 0x33, 0x11, 0xB6, 0x11, 0xF7, 0x11, 0xF8, 0x09, 0xF8, 0x09, 0xB7, 0x09, 0x76, 0x01, 0x35, 0x01, 0x34, 0x02, 0x09, 0x55, 0x81, 0x09, 0x76, 0x09, 0xB7, 0x01, 0x11, 0xD8, 0x83, 0x19, 0xB7, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, + 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB7, 0x09, 0x96, 0x09, 0x75, 0x09, 0x55, 0x02, 0x09, 0x54, 0x86, 0x09, 0x75, 0x09, 0x96, 0x09, 0xB7, 0x11, 0xD8, 0x09, 0xB8, 0x11, 0xD8, 0x11, 0xB7, 0x02, 0x11, 0x96, 0x82, 0x11, 0x95, 0x11, 0x96, 0x11, 0x95, 0x03, 0x11, 0x75, 0x83, 0x11, 0x96, 0x11, 0x95, 0x11, 0x96, 0x11, 0x76, 0x01, 0x11, 0x75, 0x80, 0x11, 0x76, 0x01, 0x11, 0x55, 0x81, 0x11, 0x75, 0x11, 0x55, 0x04, 0x11, 0x75, 0x80, 0x11, 0x55, 0x0B, 0x11, 0x75, 0x80, 0x11, 0x55, 0x04, 0x11, 0x75, 0x80, 0x19, 0x96, 0x02, 0x11, 0x96, 0x89, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x32, 0x19, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, + 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x21, 0x10, 0x82, 0x20, 0xEF, 0x10, 0xAE, 0x73, 0xBB, 0x01, 0x6B, 0x7B, 0x01, 0x63, 0x5B, 0x86, 0x63, 0x3A, 0x18, 0xB0, 0x18, 0xAF, 0x20, 0xCF, 0x20, 0xEF, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x20, 0xEF, 0x89, 0x10, 0xAE, 0x29, 0x52, 0x6B, 0x9B, 0x6B, 0x7B, 0x63, 0x5B, 0x63, 0x3B, 0x6B, 0x3B, 0x63, 0x1A, 0x6B, 0x1A, 0x6B, 0x1B, 0x01, 0x6B, 0x3B, 0x8B, 0x63, 0x5A, 0x6B, 0x7B, 0x63, 0x7A, 0x6B, 0x9B, 0x63, 0x59, 0x21, 0x71, 0x18, 0xCF, 0x21, 0x10, 0x21, 0x2F, 0x19, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x88, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x8F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x21, 0xF6, 0x19, + 0xB6, 0x19, 0x95, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8C, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0xB5, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x85, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x88, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x11, 0x54, 0x01, 0x11, 0x75, 0x81, 0x09, 0x96, 0x11, 0xD7, 0x01, 0x11, 0xF8, 0x86, 0x11, 0xD7, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x74, 0x21, 0x53, 0x29, 0x52, 0x01, 0x29, 0x51, 0x80, 0x31, 0x51, 0x05, 0x31, 0x71, 0x01, 0x39, 0x71, 0x8B, 0x39, 0x50, 0x41, 0x50, 0x41, 0x0E, 0x48, 0xED, 0xDC, 0xDC, 0xDC, 0x9A, 0xDC, 0x99, 0xDC, 0x78, 0xDC, 0x58, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x02, 0xDC, 0x36, 0x01, 0xDC, 0x57, 0x82, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x36, 0x09, 0xDC, 0x37, 0x84, 0xDC, 0x16, 0xDC, 0x37, 0xDC, 0x16, 0xDC, 0x37, 0xDC, 0x17, 0x03, 0xDC, 0x16, 0x82, 0xDC, 0x17, 0xDC, 0x16, 0xDB, 0xF6, 0x01, 0xDC, 0x16, 0x01, 0xDB, 0xF6, 0x01, 0xDC, 0x17, 0x01, 0xDB, + 0xF7, 0x88, 0xDC, 0x17, 0xDC, 0x38, 0xDC, 0x59, 0xD4, 0x59, 0xC4, 0x39, 0x40, 0x8B, 0x30, 0x4B, 0x41, 0x0F, 0x31, 0x0F, 0x02, 0x31, 0x30, 0x80, 0x31, 0x50, 0x01, 0x29, 0x50, 0x81, 0x29, 0x30, 0x29, 0x50, 0x10, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x0A, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x20, 0xEF, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x88, 0x09, 0x12, 0x11, 0xB5, 0x19, 0xF7, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x87, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, + 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x8D, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x20, 0xEF, 0x18, 0x8F, 0x10, 0x4E, 0x93, 0xBD, 0x8B, 0x3C, 0x83, 0x1C, 0x8A, 0xFC, 0x82, 0xDB, 0x82, 0xBB, 0x8A, 0xDB, 0x82, 0x9A, 0x01, 0x8A, 0x9B, 0x99, 0x92, 0xBB, 0x8A, 0x9B, 0x92, 0xDB, 0x92, 0xFB, 0x9B, 0x3C, 0x9B, 0x7C, 0x9B, 0xBD, 0x93, 0x9B, 0x20, 0x6E, 0x28, 0xD0, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x28, 0xF0, 0x20, 0x4F, 0x49, 0x54, 0x8A, 0xFB, 0x8A, 0xDB, 0x92, 0xDC, 0x8A, 0xDC, 0x8A, 0xFC, 0x82, 0xDC, 0x82, 0xFC, 0x01, 0x7A, 0xFB, 0x84, 0x7B, 0x1B, 0x83, 0x1C, 0x82, 0xFC, 0x82, 0xDB, 0x8B, 0x1C, 0x01, 0x8A, 0xFC, 0x88, 0x82, 0xBB, 0x82, 0xDB, 0x7A, 0x99, 0x20, 0x2F, 0x30, 0xB0, 0x28, 0xD0, 0x28, 0xF0, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x86, 0x21, 0x2F, 0x20, 0xEE, 0x18, 0xAE, 0x10, 0x2E, 0x7B, 0x3B, 0x83, 0x1C, 0x8B, 0x1D, 0x03, 0x82, 0xDC, 0x88, 0x7A, 0xFB, 0x83, 0x3C, 0x8B, 0x9D, 0x20, 0x90, 0x20, 0xB0, 0x20, 0xD0, 0x20, 0xEF, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x91, 0x21, 0x0F, 0x20, 0xF0, 0x20, 0xD0, 0x20, 0x90, 0x83, 0x3B, 0x83, 0x3C, 0x8B, 0x5D, 0x82, 0xFC, 0x7A, 0xBB, 0x7A, 0xDC, 0x7A, 0xFC, 0x83, 0x3C, 0x8B, 0x7C, 0x73, 0x1A, + 0x20, 0x8F, 0x20, 0xAF, 0x20, 0xCF, 0x20, 0xEF, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x11, 0x01, 0x19, 0x11, 0x8B, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x94, 0x19, 0x94, 0x19, 0xB5, 0x19, 0xB4, 0x11, 0x74, 0x11, 0x53, 0x11, 0x12, 0x19, 0x12, 0x01, 0x19, 0x11, 0x81, 0x21, 0x51, 0x21, 0x31, 0x06, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8E, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x11, 0x74, 0x09, 0x13, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, + 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x32, 0x85, 0x19, 0x53, 0x11, 0x53, 0x11, 0x74, 0x11, 0x96, 0x11, 0xD7, 0x12, 0x18, 0x01, 0x1A, 0x19, 0x87, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x55, 0x11, 0x34, 0x11, 0x33, 0x19, 0x33, 0x19, 0x32, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x89, 0x21, 0x31, 0x18, 0xF0, 0x11, 0x11, 0x11, 0x12, 0x11, 0x74, 0x11, 0xF7, 0x11, 0xF8, 0x12, 0x19, 0x11, 0xF8, 0x09, 0x96, 0x01, 0x01, 0x14, 0x82, 0x09, 0x34, 0x11, 0x75, 0x11, 0x95, 0x01, 0x09, 0x76, 0x87, 0x11, 0xB7, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x12, 0x19, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, + 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x11, 0x19, 0x11, 0x10, 0xF2, 0x19, 0xD6, 0x19, 0xF7, 0x01, 0x11, 0xB7, 0x81, 0x09, 0x76, 0x09, 0x55, 0x01, 0x09, 0x34, 0x01, 0x09, 0x54, 0x82, 0x09, 0x55, 0x09, 0x76, 0x09, 0xB7, 0x01, 0x11, 0xD8, 0x86, 0x11, 0xB7, 0x09, 0x54, 0x09, 0x33, 0x11, 0x33, 0x11, 0x13, 0x11, 0x32, 0x09, 0x12, 0x02, 0x11, 0x33, 0x80, 0x11, 0x32, 0x01, 0x11, 0x33, 0x01, 0x11, 0x32, 0x81, 0x11, 0x13, 0x11, 0x12, 0x02, 0x11, 0x13, 0x81, 0x19, 0x13, 0x11, 0x13, 0x01, 0x11, 0x12, 0x02, 0x11, 0x13, 0x02, 0x11, 0x33, 0x0A, 0x11, 0x12, 0x80, 0x11, 0x32, 0x03, 0x11, 0x12, 0x80, 0x11, 0x32, 0x01, 0x11, 0x33, 0x01, 0x11, 0x74, 0x87, 0x09, 0x34, 0x11, 0x55, 0x11, 0xB6, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xB6, 0x19, 0x74, 0x01, 0x11, 0x12, 0x80, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x07, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, + 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x04, 0x21, 0x10, 0x83, 0x20, 0xF0, 0x18, 0xCF, 0x83, 0xFC, 0x73, 0x9B, 0x01, 0x73, 0x7B, 0x85, 0x6B, 0x5B, 0x73, 0x5B, 0x18, 0x6F, 0x18, 0x8F, 0x20, 0xD0, 0x28, 0xF0, 0x02, 0x20, 0xEF, 0x89, 0x20, 0xF0, 0x10, 0xAF, 0x29, 0x52, 0x73, 0xBC, 0x6B, 0x7B, 0x6B, 0x7C, 0x6B, 0x5C, 0x63, 0x1B, 0x6B, 0x1B, 0x73, 0x3B, 0x01, 0x6B, 0x1B, 0x89, 0x6B, 0x3B, 0x6B, 0x5B, 0x6B, 0x5A, 0x6B, 0x9B, 0x63, 0x5A, 0x29, 0x71, 0x18, 0xEF, 0x19, 0x10, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x89, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x8A, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x8A, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0x94, 0x01, 0x19, 0xD6, 0x85, 0x19, + 0xB5, 0x19, 0x94, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x86, 0x11, 0x53, 0x19, 0xB6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x94, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x10, 0x95, 0x29, 0x30, 0x21, 0x51, 0x19, 0x31, 0x19, 0x11, 0x11, 0x13, 0x11, 0x54, 0x19, 0x96, 0x19, 0xD7, 0x19, 0xF8, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xD8, 0x19, 0xD8, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x95, 0x21, 0x74, 0x29, 0x73, 0x29, 0x52, 0x29, 0x51, 0x03, 0x31, 0x71, 0x80, 0x31, 0x51, 0x01, 0x31, 0x71, 0x01, 0x39, 0x71, 0x86, 0x39, 0x50, 0x41, 0x50, 0x41, 0x0E, 0x51, 0x0E, 0xDC, 0xDC, 0xDC, 0xBA, 0xDC, 0x99, 0x01, 0xDC, 0x58, 0x80, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x82, 0xE4, 0x57, 0xDC, 0x16, 0xDC, 0x36, 0x03, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xE4, 0x57, 0x0A, 0xDC, 0x37, 0x81, 0xDC, 0x16, 0xDC, 0x17, 0x01, 0xDC, 0x37, 0x02, 0xDC, 0x17, 0x80, 0xDB, 0xF6, 0x01, 0xDC, 0x16, 0x80, 0xDC, 0x17, 0x02, 0xDC, 0x16, + 0x80, 0xDB, 0xF6, 0x01, 0xDC, 0x17, 0x01, 0xDB, 0xF7, 0x01, 0xDC, 0x17, 0x88, 0xDC, 0x38, 0xDC, 0x59, 0xD4, 0x59, 0x79, 0xF0, 0x28, 0x09, 0x38, 0xAD, 0x39, 0x0F, 0x31, 0x0F, 0x31, 0x30, 0x02, 0x31, 0x50, 0x04, 0x29, 0x50, 0x81, 0x29, 0x30, 0x29, 0x51, 0x07, 0x29, 0x30, 0x01, 0x29, 0x10, 0x05, 0x29, 0x30, 0x80, 0x29, 0x50, 0x05, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x20, 0xEF, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x89, 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x17, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x06, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, + 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x30, 0x8B, 0x21, 0x10, 0x21, 0x0F, 0x20, 0xCF, 0x18, 0x8F, 0x20, 0x4F, 0x9B, 0x9D, 0x93, 0x1C, 0x9B, 0x1D, 0x9A, 0xFC, 0x9A, 0xDC, 0x9A, 0xBC, 0x9A, 0x9C, 0x01, 0x9A, 0x7C, 0x82, 0xA2, 0x9C, 0x9A, 0x7C, 0x9A, 0x7B, 0x02, 0x9A, 0x9B, 0x93, 0x92, 0xBA, 0x92, 0xFA, 0x93, 0x5B, 0x28, 0x6F, 0x28, 0xD0, 0x28, 0xEF, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x20, 0xEF, 0x28, 0xD0, 0x28, 0x6F, 0x28, 0x2F, 0x92, 0xDB, 0x9A, 0xDC, 0xA2, 0xDD, 0x9A, 0xBC, 0x92, 0x7C, 0x92, 0xBC, 0x92, 0x9C, 0x01, 0x8A, 0xDC, 0x84, 0x7A, 0x7A, 0x82, 0xBB, 0x93, 0x1D, 0x8A, 0xDC, 0x92, 0xDC, 0x01, 0x92, 0xBC, 0x8A, 0x92, 0x9C, 0x92, 0xBC, 0x92, 0xDC, 0x9B, 0x5D, 0x51, 0x54, 0x30, 0x70, 0x30, 0xD0, 0x28, 0xF0, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x91, 0x20, 0xEF, 0x20, 0x8E, 0x20, 0x6F, 0x93, 0x5C, 0x92, 0xFD, 0x92, 0xDD, 0x9A, 0xBD, 0x92, 0x9C, 0x92, 0xBD, 0x8A, 0x7B, 0x8A, 0x9B, 0x93, 0x1C, 0xA3, 0xFF, 0x28, 0x70, 0x20, 0x6F, 0x20, 0xCF, 0x20, 0xEF, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x28, 0xF0, 0x20, 0xAF, 0x28, 0x70, 0x9B, 0x7C, 0x9B, 0x3D, 0x9A, 0xFD, 0x02, 0x92, 0xBC, 0x88, 0x8A, 0xBC, 0x92, 0xFC, 0x93, 0x3C, 0x82, 0xFA, 0x28, 0x70, 0x28, 0xB0, 0x20, 0xD0, 0x29, 0x10, 0x20, 0xF0, 0x04, 0x21, 0x10, 0x81, 0x21, 0x11, 0x19, + 0x11, 0x01, 0x19, 0x32, 0x85, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB5, 0x11, 0xB6, 0x19, 0xF7, 0x1A, 0x17, 0x02, 0x19, 0xF7, 0x85, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x32, 0x05, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x04, 0x21, 0x30, 0x86, 0x21, 0x50, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x52, 0x01, 0x19, 0x11, 0x8D, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x18, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x0B, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, + 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x85, 0x11, 0x33, 0x11, 0x53, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x1A, 0x19, 0x86, 0x19, 0xF9, 0x11, 0x97, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x86, 0x21, 0x10, 0x19, 0x10, 0x19, 0x11, 0x11, 0x11, 0x11, 0x53, 0x11, 0xB6, 0x11, 0xF8, 0x01, 0x12, 0x18, 0x83, 0x09, 0xB6, 0x09, 0x55, 0x01, 0x14, 0x09, 0x34, 0x01, 0x09, 0x75, 0x01, 0x09, 0x76, 0x87, 0x11, 0xD7, 0x1A, 0x18, 0x19, 0xD7, 0x11, 0x74, 0x11, 0x32, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x87, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x11, 0x74, 0x21, 0xF7, 0x19, 0xD7, 0x11, 0xB7, 0x09, 0x96, 0x01, 0x09, 0x55, 0x01, 0x09, 0x34, 0x82, 0x01, 0x34, 0x09, 0x75, 0x11, 0xB7, 0x01, 0x11, 0xD7, 0x81, 0x19, 0xD7, 0x11, 0x55, 0x01, 0x11, 0x33, 0x80, 0x11, 0x12, 0x05, 0x11, 0x11, 0x01, 0x19, 0x31, + 0x82, 0x19, 0x11, 0x19, 0x31, 0x11, 0x11, 0x04, 0x19, 0x11, 0x80, 0x18, 0xF1, 0x09, 0x19, 0x11, 0x80, 0x19, 0x31, 0x0B, 0x19, 0x11, 0x80, 0x10, 0xF1, 0x02, 0x19, 0x11, 0x01, 0x11, 0x11, 0x01, 0x11, 0x12, 0x83, 0x11, 0x33, 0x09, 0x34, 0x11, 0xB6, 0x19, 0xD7, 0x01, 0x21, 0xF7, 0x86, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x33, 0x19, 0x12, 0x19, 0x32, 0x21, 0x32, 0x21, 0x11, 0x04, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x88, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x50, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x20, 0xF0, 0x18, 0xAF, 0x7B, 0xBB, 0x73, 0x7B, 0x02, 0x73, 0x5B, 0x82, 0x7B, 0x7C, 0x52, 0x37, 0x20, 0x90, 0x01, + 0x28, 0xD0, 0x01, 0x20, 0xEF, 0x01, 0x21, 0x10, 0x81, 0x18, 0xAF, 0x29, 0x31, 0x01, 0x73, 0x9C, 0x80, 0x6B, 0x5B, 0x01, 0x6B, 0x1B, 0x02, 0x73, 0x1B, 0x86, 0x6B, 0x1B, 0x6B, 0x3B, 0x6B, 0x5B, 0x73, 0x9B, 0x6B, 0x5A, 0x29, 0x52, 0x18, 0xEF, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x07, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x83, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x01, 0x19, 0xD6, 0x87, 0x19, 0xB5, 0x19, 0x94, 0x11, 0x52, 0x19, 0x32, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x31, 0x21, 0x52, 0x19, 0x33, 0x11, 0x53, 0x19, 0xB5, 0x01, 0x21, 0xF7, 0x82, 0x19, 0x94, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, + 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x13, 0x19, 0x96, 0x19, 0xD7, 0x1A, 0x19, 0x19, 0xF8, 0x11, 0xD8, 0x09, 0xB7, 0x11, 0xB7, 0x01, 0x11, 0xB8, 0x80, 0x19, 0xD8, 0x01, 0x19, 0xD7, 0x85, 0x21, 0xB6, 0x21, 0x95, 0x21, 0x73, 0x29, 0x72, 0x29, 0x51, 0x31, 0x51, 0x03, 0x31, 0x71, 0x8D, 0x39, 0x92, 0x31, 0x51, 0x39, 0x71, 0x39, 0x51, 0x41, 0x51, 0x41, 0x50, 0x40, 0xEE, 0x59, 0x2E, 0xDC, 0xDC, 0xDC, 0x9A, 0xDC, 0x99, 0xDC, 0x78, 0xE4, 0x58, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x06, 0xDC, 0x37, 0x81, 0xDC, 0x17, 0xE4, 0x37, 0x07, 0xDC, 0x37, 0x01, 0xDC, 0x17, 0x81, 0xDC, 0x16, 0xDC, 0x17, 0x01, 0xDC, 0x16, 0x81, 0xDC, 0x17, 0xDB, 0xF6, 0x02, 0xDC, 0x16, 0x02, 0xDB, 0xF6, 0x80, 0xDC, 0x16, 0x01, 0xDB, 0xF6, 0x82, 0xDC, 0x17, 0xDB, 0xF6, 0xDB, 0xF7, 0x01, 0xDC, 0x17, 0x87, 0xDC, 0x18, 0xD4, 0x38, 0xDC, 0x59, 0xD4, 0x7A, 0x69, 0x8F, 0x38, 0x8C, 0x41, 0x0E, 0x39, 0x0F, 0x03, 0x31, 0x30, 0x02, 0x31, 0x51, 0x80, 0x29, 0x50, 0x0A, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x05, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x51, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, + 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x28, 0xEF, 0x29, 0x30, 0x0A, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x8F, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0xD6, 0x11, 0xF7, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x20, 0xCF, 0x20, 0x8F, 0x20, 0x4F, 0x9B, 0x7D, 0xA3, 0x1D, 0x01, 0xA2, 0xBC, 0x84, 0xA2, 0x9C, 0xA2, 0x7C, 0xA2, 0x5C, 0xAA, 0x5C, 0xAA, 0x7D, 0x02, 0xAA, 0x5C, 0x95, 0xAA, 0x7C, 0xA2, 0x7C, 0xAA, 0x9C, 0xA2, 0xBB, 0x9A, 0xDB, 0xA3, 0x7C, 0x28, 0x4F, 0x30, 0xD0, 0x28, + 0xCF, 0x20, 0xEF, 0x29, 0x0F, 0x29, 0x10, 0x28, 0xD0, 0x28, 0xB0, 0x30, 0x4F, 0x69, 0xB6, 0x9A, 0xDC, 0xA2, 0xBC, 0xAA, 0x9C, 0xAA, 0x9D, 0xA2, 0x7C, 0xA2, 0x9C, 0x01, 0x9A, 0xBC, 0x84, 0x9B, 0x1D, 0x7A, 0x19, 0x48, 0x93, 0x92, 0xDC, 0x9A, 0xDC, 0x01, 0x9A, 0xBC, 0x8A, 0xA2, 0xBD, 0xA2, 0x9D, 0xA2, 0xBD, 0x9A, 0x9C, 0x9A, 0xDC, 0x8A, 0xBB, 0x38, 0x91, 0x30, 0xB0, 0x30, 0xD0, 0x28, 0xEF, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x94, 0x21, 0x0F, 0x20, 0xEF, 0x20, 0x8E, 0x28, 0x4F, 0x9B, 0x1D, 0x9A, 0xDD, 0xA2, 0xBD, 0xA2, 0x9D, 0xA2, 0xBD, 0xA2, 0x9D, 0xA2, 0x9C, 0x9A, 0x9C, 0x9A, 0xFC, 0xAB, 0xDF, 0x30, 0x50, 0x28, 0x70, 0x20, 0xAF, 0x28, 0xEF, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x85, 0x20, 0xCF, 0x28, 0x8F, 0x28, 0x4F, 0x9B, 0x1C, 0xA2, 0xFC, 0xA2, 0xBC, 0x01, 0xA2, 0x9C, 0x8A, 0xA2, 0x9D, 0x9A, 0x9C, 0x9A, 0xBC, 0x9B, 0x1D, 0x8A, 0xDB, 0x30, 0x70, 0x30, 0xB0, 0x28, 0xD0, 0x29, 0x10, 0x28, 0xF0, 0x20, 0xF0, 0x01, 0x21, 0x10, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x82, 0x19, 0x54, 0x19, 0x95, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x89, 0x1A, 0x18, 0x11, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0xF7, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x32, 0x80, 0x21, 0x32, 0x05, 0x21, 0x31, 0x84, 0x29, 0x31, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x05, 0x21, 0x31, 0x02, 0x21, 0x30, 0x03, 0x21, 0x31, 0x01, + 0x21, 0x32, 0x8D, 0x19, 0x12, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x22, 0x17, 0x21, 0xF8, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x13, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x31, 0x19, 0x31, 0x21, 0x52, 0x01, 0x19, 0x52, 0x84, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xD8, 0x02, 0x1A, 0x19, 0x85, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x55, 0x11, 0x34, 0x11, 0x33, 0x11, 0x11, 0x01, 0x19, 0x31, 0x82, 0x21, 0x31, 0x19, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, + 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x30, 0x96, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x75, 0x19, 0xF7, 0x1A, 0x19, 0x12, 0x18, 0x11, 0xD7, 0x09, 0x55, 0x01, 0x14, 0x09, 0x34, 0x09, 0x54, 0x09, 0x75, 0x09, 0x55, 0x09, 0x76, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x74, 0x11, 0x32, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x86, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x84, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB5, 0x19, 0xB6, 0x02, 0x11, 0xD7, 0x8A, 0x09, 0x76, 0x09, 0x75, 0x09, 0x96, 0x11, 0x96, 0x19, 0xD7, 0x19, 0xF7, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x55, 0x11, 0x34, 0x19, 0x33, 0x01, 0x19, 0x32, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x31, 0x02, 0x19, 0x10, 0x82, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x04, 0x21, 0x11, 0x82, 0x21, 0x31, 0x19, 0x10, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x19, 0x10, 0x02, 0x21, 0x10, 0x80, 0x19, 0x10, 0x01, 0x21, 0x31, 0x81, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x31, 0x80, 0x19, 0x11, 0x02, 0x19, 0x31, 0x85, 0x19, 0x11, 0x10, + 0xF1, 0x10, 0xF2, 0x11, 0x33, 0x09, 0x33, 0x19, 0xB6, 0x02, 0x21, 0xF7, 0x85, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x09, 0x21, 0x30, 0x02, 0x21, 0x10, 0x06, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x8D, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x86, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x50, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x8B, 0x18, 0xAF, 0x73, 0x9A, 0x7B, 0x9B, 0x73, 0x5B, 0x73, 0x3B, 0x73, 0x1B, 0x7B, 0x1B, 0x83, 0x7C, 0x5A, 0x37, 0x28, 0xB0, 0x28, 0xD0, 0x28, 0xF0, 0x01, 0x20, 0xCF, 0x85, 0x20, 0xF0, 0x18, 0x8F, 0x39, 0x93, 0x73, 0x7B, 0x73, 0x5B, 0x73, 0x3B, 0x01, 0x73, 0x1B, 0x82, 0x6A, 0xFB, 0x73, 0x1B, 0x73, 0x3B, 0x01, 0x73, 0x5B, 0x83, 0x73, 0x9B, 0x6B, 0x3A, 0x18, 0xD0, 0x18, 0xCF, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, + 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x53, 0x19, 0xD5, 0x01, 0x19, 0xF6, 0x8E, 0x19, 0xD5, 0x19, 0x93, 0x11, 0x31, 0x19, 0x31, 0x21, 0x72, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x19, 0x33, 0x11, 0x33, 0x19, 0xB5, 0x01, 0x21, 0xF7, 0x85, 0x19, 0x95, 0x11, 0x32, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x04, 0x29, 0x30, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x11, 0x11, 0x12, 0x11, 0x34, 0x19, 0xD8, 0x19, 0xF8, 0x19, 0xF9, 0x19, 0xF8, 0x11, 0xB7, 0x09, 0x97, 0x11, 0x97, 0x09, 0x97, 0x01, 0x11, 0x97, 0x85, 0x19, 0xD7, 0x22, 0x18, 0x21, 0xD7, 0x21, 0xB6, 0x21, + 0x94, 0x29, 0x73, 0x02, 0x31, 0x72, 0x80, 0x31, 0x51, 0x01, 0x31, 0x71, 0x80, 0x39, 0x72, 0x01, 0x39, 0x71, 0x89, 0x39, 0x51, 0x41, 0x51, 0x41, 0x30, 0x40, 0xEE, 0x61, 0x6F, 0xDC, 0xFC, 0xDC, 0x9A, 0xDC, 0x79, 0xDC, 0x58, 0xE4, 0x58, 0x05, 0xDC, 0x37, 0x80, 0xDC, 0x36, 0x03, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x37, 0x04, 0xDC, 0x37, 0x81, 0xDC, 0x17, 0xDC, 0x37, 0x01, 0xDC, 0x17, 0x81, 0xDC, 0x37, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x80, 0xDC, 0x16, 0x02, 0xDC, 0x17, 0x01, 0xDC, 0x16, 0x83, 0xDB, 0xF6, 0xDC, 0x17, 0xDB, 0xF6, 0xDC, 0x17, 0x02, 0xDB, 0xF6, 0x82, 0xDB, 0xD6, 0xDB, 0xF6, 0xDB, 0xF7, 0x02, 0xDC, 0x17, 0x87, 0xD4, 0x17, 0xDC, 0x58, 0xDC, 0x7A, 0xCC, 0x59, 0x61, 0x4F, 0x38, 0x6C, 0x38, 0xEE, 0x39, 0x0F, 0x01, 0x31, 0x30, 0x02, 0x31, 0x51, 0x83, 0x31, 0x31, 0x29, 0x30, 0x31, 0x51, 0x29, 0x30, 0x01, 0x29, 0x51, 0x03, 0x29, 0x30, 0x80, 0x31, 0x51, 0x12, 0x29, 0x30, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x02, 0x28, 0xEF, 0x81, 0x28, 0xEE, 0x28, 0xEF, 0x05, 0x28, 0xEE, 0x06, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, + 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x05, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xF7, 0x11, 0x95, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x86, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x86, 0x29, 0x50, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x87, 0x20, 0xEF, 0x20, 0xCF, 0x20, 0x8F, 0x30, 0x70, 0xAB, 0x7E, 0xAA, 0xFD, 0xAA, 0xBD, 0xAA, 0x7D, 0x01, 0xB2, 0x7D, 0x96, 0xBA, 0x9E, 0xBA, 0x7E, 0xB2, 0x3C, 0xB2, 0x3D, 0xBA, 0x7D, 0xB2, 0x5D, 0xB2, 0x7D, 0xBA, 0x9D, 0xB2, 0xBD, 0xAA, 0xBC, 0xA2, 0xDB, 0xA3, 0x5C, 0x28, 0x2E, 0x30, 0x8F, 0x28, 0xCF, 0x20, 0xCF, 0x28, 0xEF, 0x28, 0xF0, 0x30, 0xD0, 0x38, 0xD1, 0x40, 0x91, 0x9A, 0xBB, 0xAA, 0xBC, 0x01, 0xB2, 0x9D, 0x01, 0xB2, 0x7D, 0x8A, 0xAA, 0x7C, 0xAA, 0xBC, 0xA2, 0xDC, 0xA3, 0x3D, 0x50, 0xB3, 0x40, 0x31, 0x8A, 0x7A, 0xAA, 0xFD, 0xA2, 0xBC, 0xA2, 0x9D, 0xAA, 0x9D, 0x01, 0xB2, 0xBE, 0x93, 0xAA, 0xBD, 0xAA, 0xDD, 0xAB, 0x1D, 0x69, 0x76, 0x38, 0x50, 0x30, 0xD0, 0x28, 0xAF, 0x20, 0xEF, 0x20, 0xEE, 0x21, 0x0E, 0x21, 0x0F, 0x20, + 0xCE, 0x20, 0x6E, 0x28, 0x2F, 0xAB, 0x5E, 0xAA, 0xDD, 0xB2, 0xBE, 0xAA, 0x7D, 0xB2, 0x9E, 0xB2, 0x7D, 0x01, 0xAA, 0x9D, 0x86, 0xAA, 0xFD, 0xAB, 0x9E, 0x30, 0x30, 0x28, 0x70, 0x28, 0x8F, 0x28, 0xCF, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x21, 0x2F, 0x20, 0xEF, 0x28, 0xCF, 0x28, 0x8F, 0x38, 0x70, 0xA3, 0x1C, 0xAA, 0xDC, 0xB2, 0xDD, 0xB2, 0xBD, 0x01, 0xAA, 0x5C, 0x88, 0xAA, 0x9D, 0xAA, 0xBD, 0xAB, 0x1D, 0x9A, 0xFC, 0x30, 0x30, 0x30, 0x70, 0x28, 0xD0, 0x20, 0xCF, 0x20, 0xEF, 0x02, 0x29, 0x10, 0x86, 0x21, 0x11, 0x21, 0x31, 0x21, 0x32, 0x19, 0x32, 0x19, 0x54, 0x19, 0xB5, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x02, 0x11, 0xD7, 0x01, 0x11, 0xB7, 0x8A, 0x11, 0xD7, 0x19, 0xF8, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x13, 0x11, 0x33, 0x19, 0x32, 0x21, 0x53, 0x19, 0x32, 0x19, 0x11, 0x02, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x03, 0x21, 0x31, 0x02, 0x21, 0x11, 0x84, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x32, 0x19, 0x31, 0x02, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x88, 0x21, 0x11, 0x21, 0x31, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x02, 0x21, 0xF7, 0x83, 0x19, 0x75, 0x11, 0x13, 0x10, 0xF2, 0x19, 0x11, 0x02, 0x21, 0x31, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, + 0x29, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x51, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x32, 0x8F, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD8, 0x11, 0xF9, 0x1A, 0x1A, 0x1A, 0x19, 0x19, 0xF8, 0x11, 0x97, 0x11, 0x55, 0x11, 0x34, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x19, 0x10, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x89, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x11, 0xB6, 0x11, 0xF8, 0x1A, 0x39, 0x1A, 0x18, 0x09, 0x96, 0x01, 0x55, 0x03, 0x09, 0x55, 0x88, 0x11, 0xB6, 0x19, 0xF8, 0x19, 0xF7, 0x19, 0xD6, 0x19, + 0x74, 0x19, 0x11, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x04, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x01, 0x19, 0x11, 0x82, 0x11, 0x12, 0x11, 0x53, 0x19, 0xB6, 0x04, 0x19, 0xF7, 0x81, 0x19, 0xD7, 0x19, 0xF7, 0x02, 0x19, 0xD7, 0x82, 0x19, 0x95, 0x11, 0x34, 0x19, 0x33, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x51, 0x09, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x19, 0x30, 0x05, 0x21, 0x30, 0x8F, 0x19, 0x10, 0x19, 0x31, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x13, 0x11, 0x34, 0x19, 0x95, 0x19, 0xD7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x96, 0x19, 0x74, 0x11, 0x13, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, + 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x20, 0xEF, 0x21, 0x10, 0x20, 0xEF, 0x21, 0x10, 0x10, 0x8E, 0x6B, 0x39, 0x83, 0xBC, 0x7B, 0x5B, 0x03, 0x7B, 0x1B, 0x84, 0x8B, 0x7C, 0x6A, 0x78, 0x28, 0xB0, 0x28, 0xD0, 0x28, 0xF0, 0x01, 0x20, 0xAF, 0x8F, 0x18, 0x6E, 0x39, 0x94, 0x7B, 0x5C, 0x73, 0x3B, 0x73, 0x3C, 0x73, 0x1C, 0x73, 0x1B, 0x7B, 0x1C, 0x73, 0x1B, 0x7B, 0x3B, 0x7B, 0x5B, 0x7B, 0x9C, 0x6B, 0x1A, 0x29, 0x11, 0x18, 0xAF, 0x20, 0xF0, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, + 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x21, 0xF6, 0x21, 0xD5, 0x11, 0x52, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x51, 0x82, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x80, 0x19, 0x95, 0x01, 0x19, 0x32, 0x81, 0x21, 0x31, 0x21, 0x11, 0x04, 0x21, 0x10, 0x88, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x75, 0x21, 0xF8, 0x01, 0x19, 0xD8, 0x83, 0x09, 0x77, 0x09, 0x56, 0x09, 0x76, 0x11, 0x76, 0x01, 0x09, 0x76, 0x88, 0x11, 0x76, 0x19, 0xB7, 0x22, 0x18, 0x19, 0xD7, 0x21, 0xB6, 0x21, 0x95, 0x29, 0x73, 0x29, 0x72, 0x31, 0x52, 0x03, 0x31, 0x72, 0x01, 0x39, 0x72, 0x88, 0x39, 0x71, 0x41, 0x71, 0x41, 0x51, 0x41, 0x50, 0x40, 0xCE, 0x69, 0x90, 0xDC, 0xDC, 0xD4, 0x79, 0xDC, 0x99, 0x01, 0xDC, 0x58, 0x02, 0xDC, 0x37, 0x81, 0xDC, 0x17, 0xE4, 0x57, 0x05, 0xDC, 0x37, 0x80, 0xE4, 0x37, 0x03, 0xDC, 0x37, 0x82, 0xE4, 0x37, 0xDC, 0x37, 0xDC, 0x17, 0x02, + 0xDC, 0x37, 0x01, 0xDC, 0x17, 0x80, 0xDC, 0x16, 0x05, 0xDC, 0x17, 0x01, 0xDB, 0xF6, 0x82, 0xDC, 0x17, 0xDC, 0x16, 0xDC, 0x17, 0x04, 0xDB, 0xF6, 0x01, 0xDB, 0xD6, 0x80, 0xDB, 0xF7, 0x03, 0xDC, 0x17, 0x87, 0xDC, 0x38, 0xD4, 0x59, 0xCC, 0x39, 0xB3, 0xB7, 0x48, 0xAC, 0x40, 0xAD, 0x39, 0x0F, 0x39, 0x30, 0x01, 0x31, 0x50, 0x02, 0x31, 0x51, 0x80, 0x31, 0x31, 0x01, 0x31, 0x51, 0x81, 0x29, 0x50, 0x29, 0x51, 0x0A, 0x29, 0x30, 0x80, 0x29, 0x10, 0x07, 0x29, 0x30, 0x84, 0x21, 0x2F, 0x29, 0x50, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x10, 0x82, 0x20, 0xEF, 0x29, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x01, 0x31, 0x0F, 0x83, 0x30, 0xEF, 0x28, 0xEE, 0x30, 0xEE, 0x30, 0xCE, 0x09, 0x30, 0xEE, 0x82, 0x28, 0xEE, 0x30, 0xEE, 0x28, 0xEE, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x04, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xF7, 0x11, 0x95, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x85, + 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x50, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x8A, 0x20, 0xAF, 0x20, 0x6F, 0x30, 0x4F, 0xB3, 0x9E, 0xB2, 0xDD, 0xB2, 0x7C, 0xBA, 0x7D, 0xB2, 0x5D, 0xC2, 0x7E, 0xC2, 0x9E, 0xC2, 0x5E, 0x01, 0xBA, 0x3D, 0x80, 0xC2, 0x5D, 0x01, 0xC2, 0x7E, 0x97, 0xBA, 0x7D, 0xBA, 0x9D, 0xB2, 0xBD, 0xA2, 0xBB, 0xA3, 0x3C, 0x30, 0x2F, 0x30, 0xB0, 0x28, 0xAF, 0x28, 0xD0, 0x28, 0xF0, 0x30, 0xD0, 0x38, 0xB1, 0x38, 0x91, 0x71, 0x96, 0xAA, 0xFC, 0xB2, 0xBD, 0xBA, 0x9D, 0xBA, 0x7D, 0xBA, 0x9E, 0xBA, 0xBE, 0xB2, 0x9D, 0xB2, 0xBC, 0xB3, 0x1D, 0x92, 0x7A, 0x01, 0x38, 0x10, 0x84, 0x71, 0x76, 0xAA, 0xDD, 0xAA, 0x9C, 0xB2, 0x9D, 0xB2, 0xBE, 0x01, 0xBA, 0xBE, 0x87, 0xBA, 0xDE, 0xB2, 0xDE, 0xB2, 0xDD, 0xB3, 0x3E, 0x40, 0x51, 0x38, 0x91, 0x28, 0xD0, 0x28, 0xEF, 0x02, 0x21, 0x0F, 0x85, 0x20, 0xCE, 0x20, 0x6E, 0x28, 0x0E, 0xAB, 0x5E, 0xB2, 0xDE, 0xB2, 0x9D, 0x01, 0xBA, 0x7E, 0x8B, 0xBA, 0x7D, 0xB2, 0x9D, 0xB2, 0xBD, 0xB2, 0xDD, 0xBB, 0x9F, 0x38, 0x30, 0x30, 0x70, 0x28, 0x8F, 0x28, 0xEF, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x94, 0x21, 0x0F, 0x20, 0xEF, 0x28, 0xCF, 0x28, 0x8F, 0x38, 0x50, 0xAB, 0x1C, 0xBA, 0xFD, + 0xBA, 0x9D, 0xBA, 0x7D, 0xB2, 0x5D, 0xBA, 0x7D, 0xB2, 0x7D, 0xB2, 0xBD, 0xB2, 0xFE, 0xA2, 0xFD, 0x38, 0x30, 0x30, 0x90, 0x28, 0xB0, 0x28, 0xF0, 0x28, 0xEF, 0x29, 0x10, 0x01, 0x29, 0x30, 0x89, 0x21, 0x10, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB7, 0x03, 0x09, 0x76, 0x8C, 0x09, 0x96, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xD7, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x13, 0x11, 0x32, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x19, 0x31, 0x0A, 0x19, 0x11, 0x81, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x12, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x04, 0x19, 0x11, 0x80, 0x11, 0x11, 0x01, 0x11, 0x12, 0x01, 0x11, 0x33, 0x81, 0x11, 0x54, 0x19, 0xB6, 0x02, 0x21, 0xF7, 0x84, 0x11, 0x75, 0x11, 0x34, 0x10, 0xF2, 0x18, 0xF1, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x06, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, + 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x50, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8E, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD8, 0x11, 0xF9, 0x1A, 0x1A, 0x1A, 0x19, 0x19, 0xF8, 0x11, 0x97, 0x11, 0x55, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x82, 0x19, 0x10, 0x21, 0x31, 0x21, 0x51, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0xD7, 0x1A, 0x18, 0x11, 0xF8, 0x11, 0xF7, 0x09, 0x76, 0x09, 0x75, 0x01, 0x09, 0x76, 0x87, 0x09, 0x96, 0x19, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x19, 0xD6, 0x19, 0x74, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x29, 0x30, + 0x87, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x19, 0x95, 0x19, 0xF7, 0x22, 0x17, 0x02, 0x19, 0xF7, 0x80, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x87, 0x19, 0xD6, 0x21, 0xD6, 0x11, 0x74, 0x11, 0x12, 0x19, 0x32, 0x21, 0x52, 0x19, 0x31, 0x21, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x50, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x87, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x92, 0x21, 0x50, 0x21, 0x30, 0x21, 0x51, 0x21, 0x52, 0x19, 0x32, 0x10, 0xF2, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x13, 0x19, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x06, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, + 0x30, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x30, 0x9A, 0x5A, 0x97, 0x83, 0xBC, 0x7B, 0x5B, 0x7B, 0x3B, 0x7B, 0x1B, 0x7A, 0xFB, 0x82, 0xFB, 0x83, 0x1B, 0x83, 0x3B, 0x72, 0xD9, 0x39, 0x32, 0x28, 0xD0, 0x28, 0x8F, 0x20, 0x8F, 0x20, 0x6F, 0x41, 0x73, 0x83, 0x7C, 0x7B, 0x3C, 0x83, 0x3C, 0x7B, 0x1C, 0x72, 0xFB, 0x7B, 0x1C, 0x7B, 0x3C, 0x7B, 0x5C, 0x7B, 0x7C, 0x62, 0xD9, 0x20, 0xF1, 0x01, 0x20, 0xD0, 0x81, 0x20, 0xEF, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x87, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x93, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x50, 0x21, 0x30, 0x19, 0x30, 0x19, 0x11, 0x11, 0x31, 0x11, 0x32, 0x11, 0x54, 0x19, 0xB5, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x94, 0x19, 0x52, 0x19, 0x10, 0x19, 0x30, 0x21, 0x51, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB6, 0x01, + 0x21, 0xF7, 0x86, 0x19, 0x74, 0x19, 0x32, 0x19, 0x12, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x8A, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x21, 0xF7, 0x22, 0x39, 0x19, 0xD8, 0x11, 0x97, 0x09, 0x35, 0x09, 0x56, 0x11, 0x76, 0x02, 0x11, 0x96, 0x87, 0x11, 0x76, 0x19, 0xB7, 0x22, 0x18, 0x21, 0xF8, 0x21, 0xB6, 0x21, 0x95, 0x29, 0x73, 0x31, 0x73, 0x01, 0x31, 0x72, 0x84, 0x31, 0x71, 0x31, 0x51, 0x39, 0x92, 0x39, 0x72, 0x39, 0x92, 0x01, 0x41, 0x72, 0x86, 0x41, 0x71, 0x41, 0x50, 0x40, 0xEE, 0x72, 0x11, 0xDC, 0xFC, 0xD4, 0x99, 0xDC, 0x99, 0x01, 0xDC, 0x58, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xE4, 0x57, 0x04, 0xDC, 0x37, 0x82, 0xDC, 0x17, 0xDC, 0x37, 0xE4, 0x37, 0x01, 0xDC, 0x17, 0x05, 0xDC, 0x37, 0x03, 0xDC, 0x16, 0x05, 0xDC, 0x17, 0x02, 0xDB, 0xF6, 0x80, 0xDC, 0x17, 0x02, 0xDB, 0xF6, 0x80, 0xDC, 0x17, 0x01, 0xDB, 0xF6, 0x83, 0xDB, 0xF7, 0xDB, 0xF6, 0xDB, 0xF7, 0xDB, 0xF6, 0x01, 0xDC, 0x17, 0x01, 0xDC, 0x38, 0x86, 0xD4, 0x38, 0xCC, 0x39, 0xCC, 0x9B, 0x59, 0x4F, 0x40, 0xEE, 0x39, 0x30, 0x39, 0x51, 0x06, 0x31, 0x51, 0x01, 0x29, 0x30, 0x03, 0x29, 0x50, 0x80, 0x29, + 0x30, 0x01, 0x29, 0x50, 0x82, 0x29, 0x30, 0x29, 0x51, 0x31, 0x31, 0x0E, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x31, 0x0F, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x30, 0xEE, 0x03, 0x30, 0xCD, 0x01, 0x30, 0xAD, 0x01, 0x30, 0x8C, 0x03, 0x30, 0x6C, 0x80, 0x30, 0x8D, 0x01, 0x30, 0xAD, 0x01, 0x30, 0xCE, 0x02, 0x30, 0xEE, 0x01, 0x28, 0xEE, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x17, 0x11, 0xD7, 0x11, 0xB5, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x88, 0x20, 0xCF, 0x20, 0x8F, 0x38, 0xB1, 0xBB, 0xBF, 0xBA, 0xFD, 0xBA, 0xBE, + 0xBA, 0x7D, 0xC2, 0x5D, 0xC2, 0x5E, 0x03, 0xCA, 0x5E, 0x92, 0xC2, 0x3D, 0xCA, 0x9E, 0xC2, 0x5D, 0xC2, 0x7D, 0xBA, 0x7C, 0xB2, 0x9C, 0xB2, 0xDC, 0xBB, 0x9E, 0x30, 0x0F, 0x30, 0x90, 0x28, 0xB0, 0x28, 0xAF, 0x28, 0xD0, 0x30, 0xD0, 0x38, 0xB1, 0x48, 0xB2, 0xBB, 0x7E, 0xB2, 0xDD, 0xBA, 0xBD, 0x01, 0xC2, 0xBE, 0x80, 0xCA, 0xBE, 0x01, 0xBA, 0x9D, 0x8C, 0xB2, 0xBC, 0xBB, 0x3E, 0x50, 0xB2, 0x30, 0x0F, 0x38, 0x10, 0x58, 0xB3, 0x9A, 0x7B, 0xB2, 0xDD, 0xBA, 0xDE, 0xBA, 0xBE, 0xBA, 0x7D, 0xBA, 0x9E, 0xC2, 0xBE, 0x01, 0xBA, 0xDE, 0x84, 0xC3, 0x7F, 0x79, 0xB7, 0x40, 0x71, 0x30, 0xB0, 0x28, 0xEF, 0x01, 0x29, 0x0F, 0x88, 0x29, 0x2F, 0x28, 0xEF, 0x28, 0x8F, 0x30, 0x50, 0xB3, 0x7E, 0xBA, 0xDE, 0xBA, 0xBE, 0xC2, 0x9E, 0xBA, 0x7E, 0x01, 0xC2, 0x9E, 0x8A, 0xBA, 0xBD, 0xB2, 0xDD, 0xC3, 0xBF, 0x40, 0x50, 0x30, 0x70, 0x30, 0xB0, 0x28, 0xF0, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x96, 0x21, 0x0F, 0x29, 0x10, 0x28, 0xCF, 0x30, 0x8F, 0x48, 0xD2, 0xAB, 0x1C, 0xBA, 0xDD, 0xC2, 0xBE, 0xC2, 0x9E, 0xC2, 0x7D, 0xC2, 0x9E, 0xBA, 0x7D, 0xBA, 0xBE, 0xBB, 0x1E, 0xB3, 0x3E, 0x38, 0x30, 0x38, 0x90, 0x30, 0xD0, 0x28, 0xEF, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x11, 0x83, 0x19, 0x11, 0x11, 0x12, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x80, 0x09, 0x96, 0x01, 0x09, 0x75, 0x85, 0x09, 0x55, 0x01, 0x35, 0x01, 0x55, 0x09, 0x76, 0x09, 0x96, 0x11, 0xD8, 0x01, 0x19, 0xF8, 0x86, 0x11, 0x96, 0x09, 0x34, 0x11, 0x34, + 0x11, 0x53, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x01, 0x11, 0x32, 0x01, 0x19, 0x11, 0x82, 0x19, 0x31, 0x11, 0x31, 0x11, 0x11, 0x03, 0x19, 0x32, 0x03, 0x11, 0x12, 0x02, 0x11, 0x32, 0x81, 0x11, 0x31, 0x11, 0x32, 0x01, 0x11, 0x11, 0x80, 0x11, 0x12, 0x01, 0x11, 0x32, 0x84, 0x11, 0x33, 0x11, 0x34, 0x11, 0x14, 0x11, 0x75, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x87, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x13, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x52, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x19, 0x31, 0x86, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x97, 0x11, 0xB8, 0x19, 0xF9, 0x01, 0x1A, 0x19, 0x8B, + 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x87, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xF8, 0x1A, 0x18, 0x12, 0x18, 0x01, 0x11, 0xD7, 0x01, 0x11, 0xB7, 0x01, 0x19, 0xF7, 0x8B, 0x19, 0xD7, 0x11, 0x95, 0x19, 0x94, 0x19, 0x53, 0x19, 0x11, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8A, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x83, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x19, 0xB5, 0x01, 0x19, 0xB6, 0x80, 0x11, 0xB6, 0x01, 0x11, 0xB5, 0x01, 0x19, 0x95, 0x82, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x83, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, + 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x50, 0x01, 0x21, 0x30, 0x86, 0x29, 0x51, 0x21, 0x52, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x34, 0x19, 0x95, 0x02, 0x21, 0xF7, 0x83, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x05, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x90, 0x39, 0xB3, 0x8B, 0xDC, 0x7B, 0x5B, 0x7B, 0x3B, + 0x83, 0x1B, 0x83, 0x1C, 0x82, 0xFC, 0x82, 0xFB, 0x8B, 0x1B, 0x8B, 0x3B, 0x7A, 0xD9, 0x49, 0x74, 0x28, 0x90, 0x20, 0x4F, 0x18, 0x0E, 0x41, 0x54, 0x8B, 0x5D, 0x02, 0x83, 0x1C, 0x01, 0x7B, 0x1C, 0x84, 0x7B, 0x3C, 0x83, 0x9D, 0x62, 0x98, 0x20, 0xB0, 0x18, 0xAF, 0x01, 0x20, 0xF0, 0x84, 0x20, 0xEF, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x07, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x50, 0x19, 0x30, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x74, 0x19, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x21, 0xF7, 0x21, 0xB5, 0x19, 0x73, 0x19, 0x31, 0x01, 0x19, 0x30, 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x80, 0x19, 0x75, 0x01, 0x19, 0x32, 0x81, 0x21, 0x31, 0x21, 0x11, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, + 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x22, 0x17, 0x19, 0xF8, 0x19, 0xD8, 0x09, 0x76, 0x01, 0x09, 0x55, 0x81, 0x11, 0x75, 0x11, 0x96, 0x02, 0x11, 0x75, 0x8B, 0x19, 0xB7, 0x19, 0xF8, 0x21, 0xF8, 0x21, 0xD7, 0x21, 0x95, 0x29, 0x74, 0x31, 0x73, 0x31, 0x72, 0x39, 0x72, 0x31, 0x72, 0x39, 0x72, 0x39, 0x92, 0x01, 0x41, 0x92, 0x88, 0x41, 0x72, 0x41, 0x71, 0x41, 0x51, 0x49, 0x71, 0x40, 0xCD, 0x7A, 0x32, 0xDC, 0xFC, 0xD4, 0x79, 0xDC, 0x79, 0x01, 0xDC, 0x58, 0x81, 0xDC, 0x37, 0xDC, 0x57, 0x04, 0xDC, 0x37, 0x80, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x02, 0xE4, 0x37, 0x05, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x01, 0xDC, 0x16, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x16, 0x80, 0xDB, 0xF6, 0x02, 0xDC, 0x17, 0x80, 0xDB, 0xF6, 0x01, 0xDC, 0x16, 0x81, 0xDB, 0xF6, 0xDC, 0x16, 0x03, 0xDB, 0xF6, 0x01, 0xDC, 0x17, 0x80, 0xDB, 0xF7, 0x02, 0xDB, 0xF6, 0x80, 0xDC, 0x17, 0x01, 0xDB, 0xF7, 0x88, 0xDC, 0x17, 0xDC, 0x58, 0xD4, 0x59, 0xD4, 0x7A, 0x9A, 0xF5, 0x38, 0x6C, 0x41, 0x0F, 0x39, 0x10, 0x39, 0x51, 0x03, 0x31, 0x51, 0x80, 0x31, 0x31, 0x01, 0x31, 0x51, 0x05, 0x29, 0x50, 0x03, 0x29, 0x30, 0x80, 0x31, 0x31, 0x06, 0x29, 0x30, 0x80, 0x31, 0x50, 0x05, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, + 0x0F, 0x80, 0x31, 0x0F, 0x01, 0x28, 0xEF, 0x83, 0x30, 0xEF, 0x30, 0xEE, 0x28, 0xCE, 0x30, 0xCD, 0x01, 0x30, 0xAD, 0x01, 0x30, 0x8C, 0x80, 0x30, 0x4B, 0x02, 0x28, 0x0A, 0x03, 0x30, 0x0A, 0x02, 0x38, 0x2B, 0x81, 0x30, 0x2B, 0x30, 0x0B, 0x01, 0x28, 0x0B, 0x85, 0x30, 0x4C, 0x30, 0x8D, 0x30, 0xAD, 0x30, 0xCD, 0x30, 0xCE, 0x30, 0xEE, 0x01, 0x28, 0xEE, 0x01, 0x29, 0x0F, 0x81, 0x20, 0xEF, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x88, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x17, 0x11, 0xD6, 0x11, 0xB5, 0x11, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x84, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, + 0x0F, 0x87, 0x20, 0xCF, 0x20, 0x6E, 0x38, 0x90, 0xC3, 0xDF, 0xBA, 0xFE, 0xC2, 0xDE, 0xC2, 0x9E, 0xC2, 0x7E, 0x02, 0xCA, 0x5E, 0x82, 0xD2, 0x7E, 0xCA, 0x7E, 0xCA, 0x5E, 0x01, 0xCA, 0x7E, 0x88, 0xC2, 0x9D, 0xBA, 0x9C, 0xB2, 0xBC, 0xB2, 0xDC, 0xC3, 0xFF, 0x38, 0x0F, 0x38, 0x90, 0x28, 0x8F, 0x28, 0xB0, 0x01, 0x30, 0xB0, 0x8C, 0x38, 0x70, 0x8A, 0x79, 0xC3, 0x9F, 0xBB, 0x1E, 0xC2, 0xDD, 0xC2, 0xBE, 0xCA, 0xBE, 0xC2, 0xBE, 0xC2, 0xBD, 0xBA, 0xDD, 0xBA, 0xFD, 0xAB, 0x1D, 0x38, 0x0F, 0x01, 0x30, 0x0F, 0xA7, 0x38, 0x10, 0x92, 0x39, 0xBA, 0xFE, 0xC2, 0xFE, 0xC2, 0xBE, 0xBA, 0x9E, 0xC2, 0x9E, 0xBA, 0x9D, 0xBA, 0xBE, 0xBA, 0xFE, 0xBB, 0x3E, 0xB3, 0x3D, 0x50, 0xB2, 0x30, 0x90, 0x30, 0xF0, 0x29, 0x0F, 0x29, 0x2F, 0x20, 0xEF, 0x28, 0xEF, 0x20, 0x6E, 0x30, 0x2F, 0xB3, 0x7E, 0xBA, 0xFE, 0xC2, 0xDE, 0xC2, 0xBF, 0xC2, 0xBE, 0xC2, 0x9E, 0xC2, 0xBE, 0xC2, 0xDD, 0xBA, 0xFD, 0xC3, 0xBF, 0x40, 0x51, 0x30, 0x70, 0x28, 0xAF, 0x28, 0xEF, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x8A, 0x21, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x20, 0xEF, 0x28, 0xEF, 0x28, 0x6F, 0x48, 0xD1, 0xBB, 0x5D, 0xC2, 0xFD, 0xC2, 0xDE, 0xCA, 0xBE, 0x02, 0xC2, 0x9E, 0x85, 0xC2, 0xDE, 0xC3, 0x3F, 0xB3, 0x5E, 0x38, 0x30, 0x38, 0x90, 0x30, 0xD0, 0x01, 0x28, 0xEF, 0x8A, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x11, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xD7, 0x01, 0x09, 0x55, 0x81, 0x09, 0x35, 0x09, 0x34, + 0x01, 0x09, 0x35, 0x82, 0x01, 0x55, 0x09, 0x76, 0x09, 0xB7, 0x01, 0x11, 0xF8, 0x83, 0x11, 0xD7, 0x09, 0x55, 0x11, 0x55, 0x09, 0x34, 0x01, 0x11, 0x54, 0x82, 0x11, 0x53, 0x11, 0x33, 0x11, 0x53, 0x01, 0x11, 0x32, 0x01, 0x11, 0x52, 0x01, 0x11, 0x32, 0x80, 0x11, 0x53, 0x06, 0x11, 0x33, 0x06, 0x11, 0x32, 0x86, 0x11, 0x53, 0x11, 0x33, 0x11, 0x34, 0x11, 0x54, 0x19, 0x75, 0x19, 0xD7, 0x22, 0x18, 0x01, 0x21, 0xD7, 0x83, 0x19, 0x95, 0x11, 0x13, 0x11, 0x12, 0x19, 0x11, 0x02, 0x21, 0x31, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x0C, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x03, 0x21, 0x10, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x21, 0x11, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x95, 0x21, 0x30, 0x21, + 0x2F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x19, 0x51, 0x11, 0x31, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0x97, 0x11, 0xB8, 0x11, 0xF9, 0x19, 0xF9, 0x1A, 0x19, 0x19, 0xD8, 0x19, 0xB7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x86, 0x19, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x01, 0x1A, 0x18, 0x80, 0x11, 0xF8, 0x01, 0x11, 0xD7, 0x87, 0x22, 0x38, 0x1A, 0x17, 0x11, 0x95, 0x11, 0x54, 0x19, 0x74, 0x19, 0x52, 0x18, 0xF0, 0x19, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x19, 0x74, 0x11, 0x54, 0x01, 0x11, 0x74, 0x01, 0x11, 0x53, 0x82, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x02, 0x19, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x0B, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x06, 0x21, + 0x10, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x91, 0x21, 0x30, 0x21, 0x51, 0x21, 0x52, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x11, 0x34, 0x19, 0x95, 0x21, 0xF7, 0x19, 0xF7, 0x19, 0xD7, 0x21, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x85, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x20, 0xEF, 0x18, 0xCF, 0x01, 0x18, 0xAF, 0x82, 0x52, 0x36, 0x83, 0x7C, 0x7B, 0x3B, 0x01, 0x83, 0x1C, 0x80, 0x82, 0xFC, 0x01, 0x8B, 0x1C, 0x83, 0x8B, 0x3C, 0x8B, 0x1B, 0x82, 0xFA, 0x40, 0xF2, 0x01, 0x20, 0x0F, + 0x83, 0x49, 0x34, 0x8B, 0x3C, 0x82, 0xFC, 0x8B, 0x3D, 0x02, 0x83, 0x1C, 0x87, 0x8B, 0x7D, 0x62, 0x58, 0x18, 0x4F, 0x20, 0xAF, 0x18, 0xCF, 0x20, 0xEF, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8D, 0x19, 0x10, 0x11, 0x11, 0x11, 0x32, 0x19, 0x94, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xB5, 0x19, 0x74, 0x19, 0x32, 0x19, 0x31, 0x19, 0x30, 0x21, 0x50, 0x04, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x11, 0x10, 0xF1, 0x11, 0x12, 0x11, 0x54, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x74, 0x19, 0x33, 0x19, 0x32, 0x21, 0x31, 0x03, 0x21, 0x10, 0x03, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x87, 0x21, 0x30, + 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x21, 0xD7, 0x22, 0x18, 0x19, 0xD8, 0x11, 0x97, 0x02, 0x09, 0x55, 0x80, 0x11, 0x75, 0x02, 0x11, 0x55, 0x8B, 0x21, 0xD8, 0x22, 0x19, 0x21, 0xF8, 0x21, 0xB7, 0x21, 0x95, 0x29, 0x74, 0x31, 0x73, 0x31, 0x72, 0x39, 0x72, 0x31, 0x71, 0x39, 0x72, 0x39, 0x92, 0x02, 0x41, 0x92, 0x87, 0x41, 0x71, 0x41, 0x51, 0x49, 0x50, 0x48, 0xEE, 0x8A, 0xB4, 0xDC, 0xFC, 0xD4, 0x99, 0xDC, 0x79, 0x01, 0xDC, 0x58, 0x01, 0xDC, 0x37, 0x85, 0xE4, 0x58, 0xE4, 0x37, 0xDC, 0x37, 0xDC, 0x36, 0xDC, 0x37, 0xDC, 0x36, 0x05, 0xDC, 0x37, 0x80, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x36, 0x05, 0xDC, 0x16, 0x80, 0xDC, 0x17, 0x01, 0xDC, 0x16, 0x02, 0xDC, 0x17, 0x81, 0xDC, 0x16, 0xDC, 0x17, 0x06, 0xDB, 0xF6, 0x91, 0xD3, 0xD6, 0xDB, 0xD6, 0xDB, 0xF6, 0xDB, 0xF7, 0xDC, 0x17, 0xD3, 0xD6, 0xDB, 0xF6, 0xDB, 0xF7, 0xDC, 0x17, 0xDC, 0x18, 0xDC, 0x39, 0xDC, 0x7A, 0xAB, 0x56, 0x48, 0xAD, 0x40, 0xAE, 0x38, 0xEF, 0x39, 0x30, 0x39, 0x51, 0x08, 0x31, 0x51, 0x80, 0x31, 0x50, 0x01, 0x29, 0x30, 0x85, 0x29, 0x51, 0x29, 0x50, 0x31, 0x51, 0x29, 0x30, 0x31, 0x31, 0x31, 0x30, 0x06, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x31, 0x30, 0x31, 0x10, 0x28, 0xEF, 0x30, 0xEF, 0x02, 0x30, 0xCE, 0x83, 0x30, 0x8D, 0x28, 0x6C, 0x28, 0x4C, 0x28, 0x2B, 0x01, 0x30, 0x2A, 0x88, 0x48, 0xAC, 0x59, 0x2E, 0x71, 0xB0, 0x82, 0x32, 0x92, 0x94, 0xAB, 0x57, 0xBB, 0xB8, 0xC3, 0xF9, 0xC4, 0x1A, 0x01, 0xC4, 0x3A, 0x8D, 0xBB, + 0xFA, 0xBB, 0xD9, 0xB3, 0x98, 0xA3, 0x36, 0x9A, 0xF5, 0x82, 0x53, 0x61, 0x6F, 0x48, 0xAC, 0x38, 0x2B, 0x30, 0x2A, 0x28, 0x2B, 0x30, 0x8C, 0x30, 0xCE, 0x30, 0xEE, 0x01, 0x28, 0xEE, 0x01, 0x28, 0xEF, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x92, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x17, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x0D, 0x29, 0x30, 0x87, 0x29, 0x0F, 0x28, 0xEF, 0x28, 0xAF, 0x38, 0x90, 0xCC, 0x3F, 0xCB, 0x9F, 0xCB, 0x5F, 0xCB, 0x1F, 0x01, 0xD2, 0xFF, 0x01, 0xD2, 0xDF, 0x01, 0xD2, 0xFF, 0x80, 0xD2, 0xDF, 0x01, 0xD2, 0xFF, 0x87, 0xD3, 0x1F, 0xCB, 0x3E, 0xC3, 0x3E, 0xCB, 0xDF, 0xDC, 0xBF, 0x30, 0x0F, 0x38, 0x90, 0x30, 0xB0, 0x01, 0x30, 0xD0, 0x85, + 0x38, 0xB0, 0x59, 0x54, 0xBB, 0xFF, 0xC3, 0xBF, 0xC3, 0x5E, 0xC2, 0xFE, 0x01, 0xCB, 0x1F, 0x01, 0xCB, 0x1E, 0x8B, 0xCB, 0x5E, 0xC3, 0x9F, 0x9A, 0x9A, 0x30, 0x0F, 0x30, 0x2F, 0x30, 0x30, 0x38, 0x30, 0x8A, 0x18, 0xC3, 0x5E, 0xC3, 0x3F, 0xCB, 0x1F, 0xC2, 0xFE, 0x01, 0xCB, 0x1F, 0x90, 0xCB, 0x3F, 0xCB, 0x7F, 0xC3, 0x7F, 0xCC, 0x1F, 0x8A, 0x99, 0x30, 0x4F, 0x30, 0xF0, 0x31, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x20, 0xCE, 0x28, 0xAF, 0x38, 0x90, 0xC3, 0xFF, 0xCB, 0x9F, 0xCB, 0x5F, 0xCB, 0x1F, 0x02, 0xCA, 0xFE, 0x86, 0xC3, 0x1E, 0xCB, 0x9F, 0xD4, 0x3F, 0x38, 0x50, 0x30, 0x70, 0x28, 0xB0, 0x28, 0xF0, 0x01, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x96, 0x29, 0x50, 0x29, 0x30, 0x20, 0xEF, 0x28, 0xCF, 0x28, 0x8F, 0x40, 0xB0, 0xCC, 0x1F, 0xD3, 0x9F, 0xD3, 0x5F, 0xCB, 0x1F, 0xCA, 0xDE, 0xC2, 0xDE, 0xC2, 0xFE, 0xC3, 0x1F, 0xCB, 0x9F, 0xC3, 0xDF, 0x38, 0x2F, 0x30, 0x90, 0x28, 0xCF, 0x20, 0xEF, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x88, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xF7, 0x1A, 0x18, 0x11, 0xD7, 0x09, 0x55, 0x09, 0x35, 0x01, 0x09, 0x55, 0x80, 0x09, 0x35, 0x01, 0x09, 0x55, 0x86, 0x09, 0x56, 0x09, 0x97, 0x11, 0xD8, 0x1A, 0x18, 0x11, 0xD7, 0x09, 0x75, 0x11, 0x75, 0x03, 0x11, 0x95, 0x01, 0x11, 0x74, 0x80, 0x19, 0x74, 0x02, 0x19, 0x73, 0x04, 0x19, 0x74, 0x80, 0x19, 0x95, 0x01, 0x11, 0x74, 0x80, 0x19, 0x74, 0x01, 0x11, 0x74, 0x80, 0x19, 0x74, 0x01, 0x11, 0x73, 0x82, 0x19, + 0x94, 0x19, 0x73, 0x19, 0x94, 0x01, 0x19, 0xB5, 0x81, 0x19, 0xB6, 0x21, 0xB6, 0x03, 0x21, 0xD7, 0x82, 0x19, 0x95, 0x11, 0x33, 0x10, 0xF2, 0x01, 0x19, 0x11, 0x81, 0x21, 0x31, 0x29, 0x51, 0x01, 0x21, 0x30, 0x86, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x11, 0x02, 0x21, 0x31, 0x80, 0x21, 0x11, 0x03, 0x21, 0x31, 0x03, 0x21, 0x11, 0x82, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x02, 0x21, 0x10, 0x02, 0x21, 0x31, 0x82, 0x19, 0x10, 0x21, 0x10, 0x21, 0x11, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x87, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x88, 0x19, 0x51, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x11, 0x55, 0x11, 0x96, 0x11, 0xB7, 0x19, 0xF9, 0x01, + 0x1A, 0x19, 0x85, 0x19, 0xF8, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x19, 0x33, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x88, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x52, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB5, 0x19, 0xF7, 0x02, 0x19, 0xD6, 0x8A, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x53, 0x19, 0x52, 0x19, 0x32, 0x18, 0xF0, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x53, 0x80, 0x19, 0x73, 0x02, 0x11, 0x53, 0x82, 0x19, 0x52, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x82, + 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x31, 0x21, 0x51, 0x19, 0x11, 0x01, 0x11, 0x12, 0x89, 0x11, 0x34, 0x19, 0x95, 0x19, 0xD7, 0x22, 0x18, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x30, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x50, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x10, 0x21, 0x0F, 0x20, 0xEF, 0x01, 0x20, 0xCF, 0x82, 0x20, 0xAF, 0x52, 0x16, 0x83, 0x5C, 0x01, 0x83, 0x1B, 0x8B, 0x8A, 0xFB, 0x8B, + 0x1C, 0x8A, 0xFC, 0x93, 0x1C, 0x93, 0x3C, 0x8B, 0x1B, 0x82, 0xBA, 0x51, 0x75, 0x20, 0x0F, 0x40, 0xD3, 0x8A, 0xFC, 0x82, 0xFC, 0x02, 0x8B, 0x1C, 0x83, 0x8B, 0x3C, 0x62, 0x38, 0x18, 0x2F, 0x20, 0x8F, 0x01, 0x20, 0xCF, 0x81, 0x20, 0xEF, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x08, 0x21, 0x30, 0x8E, 0x19, 0x10, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x19, 0xD6, 0x19, 0xD7, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x32, 0x19, 0x11, 0x19, 0x30, 0x21, 0x30, 0x21, 0x50, 0x04, 0x21, 0x30, 0x8E, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x74, 0x19, 0x33, 0x19, 0x32, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x89, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, + 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x19, 0x75, 0x22, 0x18, 0x01, 0x19, 0xD8, 0x80, 0x11, 0x96, 0x01, 0x09, 0x75, 0x8C, 0x09, 0x55, 0x09, 0x34, 0x09, 0x35, 0x11, 0x56, 0x19, 0xD8, 0x21, 0xF9, 0x21, 0xF8, 0x21, 0xD7, 0x29, 0xB6, 0x29, 0x74, 0x31, 0x73, 0x39, 0x72, 0x39, 0x52, 0x02, 0x39, 0x72, 0x02, 0x41, 0x92, 0x87, 0x41, 0x72, 0x49, 0x51, 0x49, 0x71, 0x40, 0xCD, 0x92, 0xD4, 0xDC, 0xDB, 0xD4, 0x79, 0xDC, 0x79, 0x01, 0xDC, 0x58, 0x05, 0xDC, 0x37, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x57, 0x02, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x02, 0xDC, 0x37, 0x81, 0xDC, 0x16, 0xDC, 0x37, 0x01, 0xDC, 0x16, 0x80, 0xDC, 0x36, 0x07, 0xDC, 0x16, 0x01, 0xDB, 0xF6, 0x01, 0xDC, 0x16, 0x01, 0xDB, 0xF6, 0x80, 0xDC, 0x16, 0x03, 0xDB, 0xF6, 0x80, 0xDB, 0xD6, 0x01, 0xDB, 0xF6, 0x01, 0xDB, 0xF7, 0x84, 0xD3, 0xD6, 0xDB, 0xF6, 0xDB, 0xF7, 0xDC, 0x17, 0xDB, 0xF7, 0x01, 0xDC, 0x38, 0x86, 0xCB, 0xF8, 0x69, 0x4F, 0x40, 0xAE, 0x38, 0xCF, 0x39, 0x10, 0x39, 0x31, 0x39, 0x51, 0x01, 0x39, 0x71, 0x84, 0x31, 0x71, 0x31, 0x51, 0x31, 0x50, 0x31, 0x51, 0x31, 0x50, 0x03, 0x31, 0x51, 0x84, 0x31, 0x31, 0x31, 0x51, 0x29, 0x30, 0x31, 0x30, 0x31, 0x31, 0x02, 0x31, 0x30, 0x82, + 0x29, 0x30, 0x31, 0x50, 0x31, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x31, 0x0F, 0x80, 0x30, 0xEF, 0x01, 0x30, 0xCE, 0x82, 0x30, 0xAD, 0x38, 0xAD, 0x30, 0x6C, 0x01, 0x28, 0x0A, 0x85, 0x38, 0x2B, 0x59, 0x2E, 0x7A, 0x32, 0x9B, 0x16, 0xB3, 0xB8, 0xC3, 0xF9, 0x02, 0xCC, 0x19, 0x02, 0xCB, 0xF9, 0x84, 0xCC, 0x19, 0xCB, 0xF9, 0xCC, 0x19, 0xCB, 0xF9, 0xCC, 0x1A, 0x02, 0xC3, 0xD9, 0x01, 0xC3, 0xF9, 0x01, 0xCC, 0x3A, 0x88, 0xB3, 0xD8, 0x9B, 0x36, 0x71, 0xF1, 0x40, 0xAC, 0x28, 0x0A, 0x28, 0x2B, 0x28, 0x8D, 0x28, 0xAD, 0x28, 0xEE, 0x01, 0x28, 0xEF, 0x08, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x19, 0x30, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x17, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, + 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x8E, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x28, 0xEF, 0x28, 0xCF, 0x38, 0xB0, 0xAB, 0x9D, 0xC3, 0xBF, 0xBB, 0x3D, 0xBB, 0x1E, 0xC3, 0x1E, 0xC3, 0x3E, 0x01, 0xC3, 0x1E, 0x03, 0xC3, 0x3E, 0x88, 0xBB, 0x1D, 0xBB, 0x3D, 0xB3, 0x3D, 0xB3, 0x5C, 0xAB, 0x5C, 0x9B, 0x3B, 0x40, 0xD1, 0x38, 0xD0, 0x30, 0xD0, 0x01, 0x30, 0xF0, 0x95, 0x30, 0xD0, 0x82, 0xB8, 0xB3, 0xFE, 0xAB, 0x5D, 0xAB, 0x3D, 0xB3, 0x3D, 0xBB, 0x3D, 0xB3, 0x1D, 0xAA, 0xDC, 0xB3, 0x1C, 0xB3, 0x3C, 0x92, 0xBA, 0x50, 0xF3, 0x30, 0x4F, 0x30, 0x90, 0x30, 0x70, 0x38, 0x70, 0x58, 0xF3, 0x92, 0x7A, 0xB3, 0x1D, 0xBB, 0x3D, 0xBB, 0x3E, 0x02, 0xBB, 0x5E, 0x85, 0xB3, 0x5D, 0xB3, 0x7D, 0xBB, 0xDE, 0xAB, 0xDD, 0x30, 0xB0, 0x30, 0xF0, 0x02, 0x29, 0x0F, 0x85, 0x20, 0xEF, 0x28, 0xCF, 0x30, 0xB0, 0xB3, 0xDE, 0xC3, 0xBF, 0xB3, 0x3D, 0x03, 0xBB, 0x1D, 0x88, 0xB3, 0x3D, 0xBB, 0xBE, 0xAB, 0x9C, 0x30, 0x4F, 0x28, 0x8F, 0x20, 0xAF, 0x28, 0xEF, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x28, 0xEF, 0x30, 0xCF, 0x40, 0xD0, 0xB3, 0xBD, 0xCB, 0xDF, 0xC3, 0x7E, 0xC3, 0x5E, 0x02, 0xBB, 0x1D, 0x86, 0xBB, 0x5E, 0xC3, 0xDF, 0xAB, 0x9D, 0x38, 0x70, 0x30, 0xAF, 0x28, 0xCF, 0x20, 0xEF, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x88, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x95, 0x19, 0xF7, 0x1A, 0x18, 0x11, 0xD7, 0x09, + 0x55, 0x09, 0x35, 0x04, 0x09, 0x55, 0x87, 0x09, 0x56, 0x09, 0x96, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xD7, 0x09, 0x96, 0x19, 0xF7, 0x22, 0x38, 0x01, 0x22, 0x17, 0x80, 0x21, 0xF7, 0x05, 0x21, 0xF6, 0x81, 0x2A, 0x16, 0x21, 0xF6, 0x01, 0x29, 0xF6, 0x01, 0x21, 0xF6, 0x82, 0x21, 0xF7, 0x21, 0xF6, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x80, 0x21, 0xF5, 0x01, 0x21, 0xF6, 0x03, 0x2A, 0x16, 0x80, 0x2A, 0x17, 0x01, 0x21, 0xF7, 0x80, 0x21, 0xD7, 0x01, 0x21, 0xB6, 0x84, 0x19, 0x75, 0x19, 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x11, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x03, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x21, 0x11, 0x0D, 0x19, 0x11, 0x86, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x02, 0x19, 0x31, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x07, 0x29, 0x0F, 0x02, 0x29, 0x2F, + 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x8A, 0x21, 0x50, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB8, 0x19, 0xF9, 0x01, 0x1A, 0x19, 0x87, 0x19, 0xD8, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x19, 0x12, 0x21, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x82, 0x19, 0x32, 0x19, 0x53, 0x19, 0x73, 0x02, 0x19, 0x94, 0x01, 0x11, 0x53, 0x81, 0x19, 0x73, 0x19, 0x53, 0x01, 0x19, 0x32, 0x83, 0x19, 0x52, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x19, 0x10, 0x19, 0x11, 0x19, 0x31, 0x04, 0x19, 0x52, 0x01, 0x19, 0x31, 0x01, 0x19, 0x10, 0x04, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, + 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x29, 0x30, 0x29, 0x51, 0x21, 0x51, 0x19, 0x11, 0x01, 0x11, 0x12, 0x85, 0x11, 0x34, 0x11, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xF7, 0x11, 0x95, 0x01, 0x11, 0x74, 0x82, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x8B, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x20, 0xF0, 0x20, + 0xD0, 0x20, 0x8F, 0x5A, 0x16, 0x83, 0x3B, 0x83, 0x1C, 0x8B, 0x3C, 0x8B, 0x1C, 0x92, 0xFC, 0x02, 0x92, 0xFB, 0x86, 0x92, 0xFC, 0x93, 0x1C, 0x7A, 0x5A, 0x69, 0xF8, 0x82, 0x9B, 0x8A, 0xBC, 0x92, 0xFC, 0x01, 0x8A, 0xFC, 0x85, 0x8B, 0x1C, 0x20, 0x30, 0x20, 0x4F, 0x20, 0xD0, 0x20, 0xF0, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x19, 0x11, 0x88, 0x11, 0x32, 0x19, 0x74, 0x19, 0xB5, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xB6, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x30, 0x01, 0x21, 0x50, 0x89, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x95, 0x01, 0x22, 0x17, 0x84, 0x19, 0xD6, 0x11, 0x74, 0x19, 0x53, 0x19, 0x32, 0x21, 0x11, 0x06, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, + 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x30, 0x85, 0x29, 0x31, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x34, 0x19, 0xB7, 0x01, 0x19, 0xD8, 0x82, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x75, 0x01, 0x09, 0x55, 0x88, 0x09, 0x56, 0x11, 0x76, 0x19, 0xB8, 0x22, 0x19, 0x21, 0xF8, 0x21, 0xD7, 0x21, 0x95, 0x31, 0x94, 0x31, 0x73, 0x01, 0x39, 0x52, 0x01, 0x39, 0x72, 0x80, 0x41, 0x92, 0x01, 0x41, 0x72, 0x87, 0x41, 0x92, 0x41, 0x72, 0x49, 0x71, 0x51, 0x71, 0x48, 0xEE, 0x9B, 0x15, 0xE4, 0xFC, 0xD4, 0x79, 0x01, 0xDC, 0x58, 0x80, 0xE4, 0x58, 0x05, 0xDC, 0x37, 0x03, 0xDC, 0x36, 0x03, 0xDC, 0x37, 0x80, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x16, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x16, 0x80, 0xDC, 0x17, 0x01, 0xDC, 0x16, 0x80, 0xDC, 0x17, 0x04, 0xDC, 0x16, 0x81, 0xDB, 0xF6, 0xDC, 0x16, 0x05, 0xDB, 0xF6, 0x80, 0xDC, 0x17, 0x01, 0xDB, 0xF6, 0x81, 0xDB, 0xD6, 0xDB, 0xF7, 0x02, 0xDB, 0xD6, 0x80, 0xDB, 0xF6, 0x02, 0xDB, 0xF7, 0x8A, 0xDC, 0x18, 0xD4, 0x19, 0x92, 0x73, 0x48, 0x8D, 0x40, 0xEF, 0x38, 0xEF, 0x31, 0x10, 0x39, 0x31, 0x39, 0x51, 0x31, 0x51, 0x31, 0x71, 0x01, 0x31, 0x51, 0x80, 0x31, 0x50, 0x08, 0x31, 0x51, 0x01, 0x31, 0x30, 0x01, 0x31, 0x50, 0x01, 0x31, 0x30, 0x81, 0x29, + 0x30, 0x31, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x31, 0x0F, 0x8D, 0x28, 0xCE, 0x30, 0xAE, 0x30, 0xAD, 0x30, 0x8D, 0x30, 0x4B, 0x38, 0x4B, 0x40, 0x6B, 0x61, 0x0E, 0x8A, 0x53, 0xB3, 0x97, 0xCC, 0x3A, 0xD4, 0x3A, 0xCC, 0x19, 0xC3, 0xB8, 0x01, 0xC3, 0x97, 0x83, 0xC3, 0x77, 0xCB, 0x77, 0xCB, 0x97, 0xCB, 0x77, 0x03, 0xCB, 0x97, 0x83, 0xC3, 0x97, 0xC3, 0x98, 0xC3, 0xB8, 0xC3, 0x98, 0x01, 0xC3, 0xB8, 0x81, 0xBB, 0x97, 0xBB, 0x77, 0x02, 0xB3, 0x77, 0x8A, 0xB3, 0x97, 0xB3, 0xD8, 0xBB, 0xF9, 0x9B, 0x16, 0x69, 0xB0, 0x38, 0x8C, 0x28, 0x2B, 0x28, 0x6C, 0x30, 0xCE, 0x28, 0xEE, 0x28, 0xEF, 0x07, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x8A, 0x19, 0x30, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x17, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x32, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x86, 0x21, 0x10, 0x21, + 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x28, 0xCF, 0x20, 0x0D, 0x28, 0x0D, 0x28, 0x0E, 0x08, 0x30, 0x0E, 0x80, 0x28, 0x0E, 0x01, 0x28, 0x0D, 0x01, 0x20, 0x0D, 0x88, 0x18, 0x0C, 0x30, 0xCF, 0x28, 0xCF, 0x20, 0xAF, 0x20, 0xCF, 0x28, 0xCF, 0x28, 0xD0, 0x20, 0x4E, 0x18, 0x0D, 0x02, 0x20, 0x0D, 0x81, 0x28, 0x0D, 0x28, 0x0E, 0x01, 0x28, 0x0D, 0x01, 0x20, 0x0D, 0x81, 0x28, 0x4E, 0x30, 0xD0, 0x01, 0x28, 0xD0, 0x82, 0x30, 0xB0, 0x28, 0x2E, 0x20, 0x0D, 0x01, 0x28, 0x0E, 0x02, 0x30, 0x0E, 0x80, 0x28, 0x0E, 0x02, 0x28, 0x0D, 0x81, 0x28, 0x4E, 0x28, 0xCF, 0x01, 0x20, 0xEF, 0x80, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x83, 0x28, 0xEF, 0x30, 0xCF, 0x20, 0x0D, 0x28, 0x0D, 0x04, 0x30, 0x0E, 0x80, 0x28, 0x0D, 0x01, 0x20, 0x0D, 0x82, 0x28, 0xAF, 0x28, 0xCF, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x31, 0x10, 0x30, 0xAF, 0x20, 0x0D, 0x28, 0x0D, 0x04, 0x30, 0x0E, 0x85, 0x28, 0x0E, 0x28, 0x0D, 0x28, 0x2E, 0x30, 0xD0, 0x28, 0xCF, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x8A, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x95, 0x21, 0xF7, 0x19, 0xF7, 0x11, 0xB7, 0x09, 0x56, 0x05, 0x09, 0x55, 0x87, 0x09, 0x56, 0x09, 0x96, 0x11, 0xD7, 0x11, 0xF7, 0x11, 0xD7, 0x11, 0xF7, 0x22, 0x38, 0x2A, 0x79, 0x02, 0x2A, 0x38, 0x02, 0x2A, 0x37, 0x83, 0x2A, 0x17, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x37, 0x01, 0x2A, + 0x17, 0x80, 0x32, 0x37, 0x01, 0x32, 0x38, 0x82, 0x32, 0x58, 0x2A, 0x37, 0x2A, 0x17, 0x02, 0x2A, 0x37, 0x81, 0x2A, 0x16, 0x29, 0xF6, 0x02, 0x2A, 0x16, 0x01, 0x2A, 0x17, 0x86, 0x29, 0xF6, 0x2A, 0x17, 0x29, 0xF6, 0x21, 0x75, 0x19, 0x54, 0x19, 0x33, 0x19, 0x12, 0x01, 0x21, 0x11, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x31, 0x05, 0x19, 0x11, 0x80, 0x19, 0x32, 0x01, 0x19, 0x11, 0x82, 0x11, 0x11, 0x19, 0x11, 0x19, 0x12, 0x03, 0x11, 0x11, 0x82, 0x10, 0xF1, 0x11, 0x11, 0x19, 0x11, 0x03, 0x11, 0x11, 0x03, 0x11, 0x12, 0x02, 0x19, 0x12, 0x01, 0x11, 0x11, 0x80, 0x19, 0x12, 0x01, 0x19, 0x11, 0x01, 0x19, 0x32, 0x80, 0x11, 0x31, 0x01, 0x11, 0x11, 0x80, 0x19, 0x12, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x19, 0x54, 0x11, 0x55, 0x11, 0x96, 0x11, 0xB8, 0x19, 0xF9, 0x01, + 0x1A, 0x19, 0x83, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x75, 0x11, 0x53, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x03, 0x19, 0x31, 0x81, 0x19, 0x32, 0x19, 0x52, 0x01, 0x19, 0x32, 0x80, 0x19, 0x52, 0x05, 0x19, 0x31, 0x81, 0x19, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x19, 0x10, 0x06, 0x19, 0x31, 0x01, 0x19, 0x10, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, + 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xF7, 0x1A, 0x17, 0x22, 0x17, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x8C, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x86, 0x20, 0xF0, 0x20, 0xD0, 0x28, 0xD0, 0x20, 0x90, 0x5A, 0x17, 0x8B, 0x3C, 0x8A, 0xFB, 0x01, 0x93, 0x1C, 0x80, 0x92, 0xFB, 0x01, 0x92, 0xFC, 0x84, 0x92, 0xDC, 0x92, 0xFC, 0x92, 0xDC, 0x8A, 0x9C, 0x8A, 0x7B, 0x02, 0x92, 0xDC, 0x87, 0x92, 0xFC, 0x82, 0xFB, 0x20, 0x0E, 0x18, 0x4F, 0x28, 0xF0, 0x29, + 0x10, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x19, 0x74, 0x19, 0x95, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x86, 0x19, 0x96, 0x19, 0x74, 0x19, 0x53, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x05, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x11, 0x54, 0x19, 0x95, 0x01, 0x22, 0x17, 0x87, 0x19, 0xD6, 0x11, 0x74, 0x19, 0x53, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x06, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x02, 0x29, 0x10, + 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x11, 0x83, 0x19, 0x12, 0x11, 0x33, 0x19, 0x75, 0x19, 0xD7, 0x01, 0x19, 0xF8, 0x80, 0x11, 0xD7, 0x02, 0x09, 0x76, 0x86, 0x09, 0x97, 0x11, 0xB8, 0x19, 0xF9, 0x22, 0x19, 0x21, 0xD7, 0x21, 0xB6, 0x29, 0x75, 0x01, 0x31, 0x73, 0x02, 0x39, 0x72, 0x02, 0x41, 0x72, 0x01, 0x41, 0x92, 0x88, 0x49, 0x92, 0x49, 0x71, 0x51, 0x71, 0x48, 0xEE, 0xA3, 0x56, 0xDC, 0xDB, 0xD4, 0x79, 0xDC, 0x78, 0xDC, 0x58, 0x02, 0xDC, 0x37, 0x80, 0xDC, 0x57, 0x05, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x16, 0x01, 0xDC, 0x37, 0x82, 0xDC, 0x16, 0xDC, 0x37, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x02, 0xDC, 0x16, 0x80, 0xDC, 0x36, 0x04, 0xDC, 0x16, 0x84, 0xDB, 0xF6, 0xDC, 0x16, 0xDB, 0xF6, 0xDC, 0x17, 0xDC, 0x16, 0x01, 0xDB, 0xF6, 0x80, 0xDC, 0x16, 0x01, 0xDB, 0xF6, 0x80, 0xDC, 0x16, 0x03, 0xDB, 0xF6, 0x06, 0xDB, 0xD6, 0x80, 0xDB, 0xF7, 0x01, 0xDB, 0xD7, 0x8B, 0xDC, 0x18, 0xD4, 0x18, 0xCB, 0xF9, 0x79, 0xD1, 0x40, 0xAD, 0x41, 0x0F, 0x38, 0xF0, 0x39, 0x10, 0x39, 0x51, 0x39, 0x71, 0x31, 0x71, 0x31, 0x51, 0x01, 0x31, 0x71, 0x81, 0x31, 0x51, 0x31, 0x71, 0x07, 0x31, 0x51, 0x01, 0x31, 0x50, 0x02, 0x31, 0x30, 0x83, 0x31, 0x50, 0x31, 0x0F, 0x31, 0x2F, 0x31, 0x0F, 0x01, 0x30, 0xEE, 0x8B, 0x38, 0xEE, 0x38, 0xCD, 0x38, 0x8C, 0x30, 0x2B, 0x38, 0x4B, 0x69, 0x90, 0xA2, 0xF5, 0xC3, 0xD9, 0xCB, 0xF9, 0xD3, 0xF9, 0xCB, 0xB8, 0xD3, 0xB8, 0x03, 0xCB, 0x97, 0x84, 0xCB, 0x77, 0xCB, 0x56, 0xCB, 0x77, 0xD3, 0x77, 0xCB, 0x77, 0x02, 0xCB, 0x97, + 0x01, 0xC3, 0x77, 0x03, 0xC3, 0x97, 0x81, 0xBB, 0x97, 0xBB, 0xB7, 0x02, 0xBB, 0x97, 0x82, 0xB3, 0x97, 0xB3, 0x77, 0xB3, 0x97, 0x01, 0xAB, 0x97, 0x86, 0xB3, 0xD9, 0xA3, 0x98, 0x7A, 0x94, 0x38, 0xAD, 0x18, 0x0B, 0x20, 0x8C, 0x28, 0xCE, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x09, 0x33, 0x19, 0xD6, 0x11, 0xF7, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x30, 0x85, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x28, 0xAE, 0x20, 0x6E, 0x20, 0x4D, 0x03, 0x20, 0x2D, 0x80, 0x20, 0x0D, 0x01, 0x18, 0x0D, 0x01, 0x20, 0x2D, 0x86, 0x20, 0x4D, 0x20, 0x4E, 0x20, 0x6E, 0x20, 0x4D, 0x18, 0x6D, 0x20, 0x8E, 0x20, 0xAF, 0x02, 0x20, 0xCF, 0x85, 0x20, 0xEF, 0x20, 0xF0, 0x20, 0xCF, 0x20, 0xAF, 0x20, 0x8F, + 0x20, 0x8E, 0x05, 0x20, 0x6E, 0x87, 0x20, 0x8E, 0x28, 0xAF, 0x28, 0xCF, 0x28, 0xF0, 0x28, 0xCF, 0x28, 0xF0, 0x28, 0xCF, 0x28, 0x8F, 0x01, 0x28, 0x6E, 0x83, 0x28, 0x4E, 0x20, 0x4E, 0x28, 0x4E, 0x20, 0x4E, 0x02, 0x20, 0x6E, 0x81, 0x20, 0x8E, 0x20, 0xCF, 0x01, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x82, 0x20, 0xEF, 0x28, 0xEF, 0x28, 0xAF, 0x01, 0x28, 0x6E, 0x02, 0x28, 0x4E, 0x01, 0x28, 0x6E, 0x83, 0x28, 0x8E, 0x28, 0xAF, 0x28, 0xCF, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x28, 0xEF, 0x84, 0x28, 0xAF, 0x28, 0x6E, 0x28, 0x4E, 0x28, 0x6E, 0x28, 0x4E, 0x03, 0x28, 0x6E, 0x82, 0x28, 0x8E, 0x28, 0xCF, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x88, 0x21, 0x0E, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x30, 0x19, 0x11, 0x19, 0x31, 0x11, 0x32, 0x11, 0x74, 0x21, 0xF7, 0x01, 0x19, 0xF7, 0x01, 0x09, 0x76, 0x03, 0x09, 0x55, 0x01, 0x09, 0x76, 0x83, 0x09, 0x96, 0x11, 0xD7, 0x19, 0xF7, 0x11, 0xD6, 0x01, 0x11, 0xB6, 0x02, 0x19, 0xB6, 0x80, 0x19, 0x95, 0x01, 0x19, 0xB5, 0x80, 0x19, 0x95, 0x05, 0x19, 0xB5, 0x80, 0x19, 0x95, 0x01, 0x21, 0x95, 0x03, 0x21, 0xB5, 0x06, 0x19, 0x94, 0x02, 0x19, 0x74, 0x81, 0x19, 0x54, 0x19, 0x53, 0x01, 0x19, 0x12, 0x81, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x08, 0x21, 0x30, 0x80, 0x19, 0x10, 0x02, 0x19, 0x11, 0x80, 0x19, 0x32, 0x05, 0x11, 0x32, 0x81, + 0x11, 0x12, 0x11, 0x32, 0x05, 0x11, 0x12, 0x81, 0x11, 0x32, 0x11, 0x12, 0x01, 0x11, 0x32, 0x04, 0x11, 0x12, 0x80, 0x11, 0x32, 0x01, 0x11, 0x12, 0x08, 0x11, 0x32, 0x80, 0x11, 0x53, 0x01, 0x11, 0x33, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x8A, 0x21, 0x0F, 0x21, 0x31, 0x19, 0x31, 0x21, 0x52, 0x19, 0x33, 0x11, 0x33, 0x11, 0x55, 0x11, 0x97, 0x19, 0xD8, 0x19, 0xF9, 0x1A, 0x19, 0x01, 0x19, 0xF8, 0x84, 0x11, 0x96, 0x11, 0x55, 0x11, 0x53, 0x19, 0x32, 0x21, 0x52, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x10, 0x05, 0x19, 0x31, 0x84, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x21, 0x51, 0x21, 0x31, 0x02, 0x21, + 0x10, 0x80, 0x29, 0x10, 0x01, 0x20, 0xF0, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x19, 0x10, 0x84, 0x19, 0x30, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x30, 0x87, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x09, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x89, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x21, 0x52, 0x19, 0x32, 0x11, 0x12, 0x11, 0x32, 0x11, 0x53, 0x11, 0xB5, 0x19, 0xF7, 0x01, 0x22, 0x17, 0x83, 0x11, 0x95, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, + 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x88, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x86, 0x28, 0xF0, 0x20, 0xD0, 0x28, 0x90, 0x62, 0x37, 0x8B, 0x3C, 0x8B, 0x1C, 0x93, 0x1C, 0x01, 0x92, 0xFC, 0x01, 0x92, 0xDC, 0x83, 0x92, 0xBC, 0x9A, 0xDC, 0x92, 0x9C, 0x9A, 0xBC, 0x01, 0x9A, 0xDD, 0x88, 0x92, 0xDC, 0x92, 0xFC, 0x8A, 0xFB, 0x18, 0x0E, 0x20, 0x8F, 0x28, 0xF0, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x07, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, + 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x85, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x19, 0x53, 0x01, 0x19, 0x95, 0x8D, 0x22, 0x18, 0x22, 0x17, 0x19, 0x96, 0x11, 0x54, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x19, 0x10, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x30, 0x85, 0x21, 0x51, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x09, 0x54, 0x11, 0xB5, 0x01, 0x22, 0x17, 0x85, 0x19, 0xB5, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x04, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x31, 0x21, 0x32, 0x19, 0x33, 0x19, 0x54, 0x21, 0xD7, 0x22, 0x18, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x96, 0x11, 0xB7, 0x1A, 0x18, 0x01, 0x22, 0x39, 0x86, 0x22, 0x19, 0x22, 0x18, 0x21, 0xD7, 0x21, 0x95, 0x29, 0x74, 0x29, 0x52, 0x31, 0x52, 0x01, 0x39, 0x72, 0x80, 0x41, 0x72, 0x03, 0x41, 0x92, 0x01, 0x49, 0x92, 0x85, 0x49, 0x71, 0x51, 0x71, 0x49, 0x0E, 0xA3, 0x57, 0xE4, 0xFC, 0xDC, 0x79, 0x01, 0xDC, 0x58, 0x01, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x80, 0xDC, + 0x16, 0x05, 0xDC, 0x37, 0x81, 0xDC, 0x17, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x80, 0xDB, 0xF6, 0x0B, 0xDC, 0x16, 0x01, 0xDB, 0xF6, 0x80, 0xDC, 0x16, 0x01, 0xDB, 0xF6, 0x80, 0xD3, 0xF6, 0x03, 0xDB, 0xF6, 0x83, 0xDB, 0xF7, 0xDB, 0xF6, 0xDB, 0xD7, 0xDB, 0xF7, 0x02, 0xDB, 0xD6, 0x80, 0xDB, 0xB6, 0x01, 0xDB, 0xD6, 0x88, 0xDB, 0xD7, 0xDB, 0xF8, 0xDC, 0x18, 0xD4, 0x19, 0xD4, 0x5A, 0x58, 0xEE, 0x48, 0xEF, 0x49, 0x30, 0x39, 0x30, 0x01, 0x39, 0x51, 0x81, 0x39, 0x71, 0x39, 0x51, 0x01, 0x31, 0x50, 0x81, 0x31, 0x51, 0x31, 0x71, 0x05, 0x31, 0x51, 0x03, 0x31, 0x30, 0x82, 0x31, 0x50, 0x31, 0x30, 0x31, 0x2F, 0x01, 0x31, 0x0F, 0x01, 0x30, 0xEE, 0x89, 0x38, 0xEE, 0x38, 0xAD, 0x38, 0x6C, 0x40, 0x8C, 0x69, 0x6F, 0x9A, 0xF4, 0xD4, 0x7A, 0xDC, 0x7B, 0xCB, 0xF8, 0xC3, 0x77, 0x01, 0xCB, 0x77, 0x01, 0xD3, 0x97, 0x01, 0xD3, 0x77, 0x01, 0xD3, 0x56, 0x01, 0xD3, 0x77, 0x81, 0xCB, 0x56, 0xD3, 0x77, 0x02, 0xCB, 0x76, 0x83, 0xC3, 0x76, 0xC3, 0x97, 0xC3, 0x77, 0xBB, 0x76, 0x01, 0xBB, 0x97, 0x82, 0xB3, 0x97, 0xB3, 0xB7, 0xB3, 0x97, 0x03, 0xB3, 0xB8, 0x80, 0xAB, 0xD8, 0x01, 0xAB, 0xB8, 0x88, 0x9B, 0x77, 0x93, 0x37, 0x8B, 0x36, 0x93, 0x78, 0x9B, 0xD9, 0x72, 0xB5, 0x39, 0x0E, 0x20, 0x8D, 0x20, 0xAE, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, + 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x89, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x19, 0xF6, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x28, 0xEF, 0x82, 0x28, 0xCF, 0x28, 0xAE, 0x28, 0xAF, 0x04, 0x28, 0xCF, 0x01, 0x20, 0xCF, 0x81, 0x28, 0xCF, 0x28, 0xEF, 0x01, 0x20, 0xCF, 0x02, 0x20, 0xEF, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x20, 0xEF, 0x01, 0x28, 0xF0, 0x80, 0x20, 0xEF, 0x04, 0x28, 0xEF, 0x83, 0x29, 0x10, 0x28, 0xEF, 0x20, 0xEF, 0x28, 0xEF, 0x04, 0x29, 0x10, 0x81, 0x28, 0xCF, 0x28, 0xAF, 0x02, 0x28, 0xCF, 0x82, 0x28, 0xAF, 0x28, 0xEF, 0x28, 0xF0, 0x01, 0x20, 0xCF, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x03, 0x28, 0xEF, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x31, + 0x10, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xAF, 0x03, 0x28, 0xCF, 0x83, 0x28, 0xEF, 0x28, 0xCF, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x97, 0x21, 0x0E, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x21, 0xF7, 0x19, 0xF7, 0x11, 0x96, 0x11, 0x76, 0x09, 0x76, 0x11, 0x96, 0x09, 0x55, 0x09, 0x75, 0x09, 0x96, 0x11, 0xB7, 0x11, 0xF7, 0x1A, 0x18, 0x19, 0xF7, 0x09, 0x95, 0x01, 0x09, 0x13, 0x01, 0x09, 0x33, 0x81, 0x09, 0x13, 0x11, 0x13, 0x01, 0x09, 0x12, 0x81, 0x11, 0x12, 0x11, 0x32, 0x01, 0x11, 0x12, 0x84, 0x11, 0x32, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x11, 0x13, 0x08, 0x11, 0x12, 0x80, 0x11, 0x32, 0x01, 0x11, 0x12, 0x80, 0x19, 0x32, 0x01, 0x11, 0x12, 0x81, 0x10, 0xF2, 0x18, 0xF2, 0x01, 0x19, 0x11, 0x80, 0x21, 0x11, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x31, 0x19, 0x12, 0x19, 0x32, 0x19, 0x33, 0x11, 0x53, 0x19, 0x54, 0x02, 0x19, 0x74, 0x81, 0x19, 0x94, 0x19, 0x74, 0x05, 0x19, 0x94, 0x81, 0x21, 0xB5, 0x21, 0xB4, 0x01, 0x21, 0xB5, 0x81, 0x21, 0xD5, 0x21, 0xB5, 0x06, 0x21, 0xD5, 0x80, 0x21, 0xB5, 0x03, 0x21, 0xD5, 0x80, 0x21, 0xF6, 0x01, 0x29, 0xF5, 0x80, 0x21, 0xF5, 0x03, 0x21, 0xD5, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x8B, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, + 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x06, 0x29, 0x2F, 0x80, 0x29, 0x4F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8F, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x11, 0x55, 0x11, 0x97, 0x11, 0xD8, 0x11, 0xF8, 0x1A, 0x19, 0x19, 0xF8, 0x19, 0xD8, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x19, 0x10, 0x21, 0x30, 0x01, 0x19, 0x10, 0x01, 0x19, 0x31, 0x86, 0x19, 0x10, 0x21, 0x11, 0x19, 0x10, 0x19, 0x30, 0x19, 0x10, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, + 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x86, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x08, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x22, 0x38, 0x21, 0xF7, 0x11, 0x95, 0x11, 0x74, 0x01, 0x11, 0x32, 0x81, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, + 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x05, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x88, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x20, 0xF0, 0x28, 0xF0, 0x28, 0xB0, 0x20, 0x70, 0x59, 0xD6, 0x8B, 0x3C, 0x01, 0x93, 0x1C, 0x84, 0x92, 0xFC, 0x9A, 0xFC, 0x9A, 0xDC, 0x9A, 0xBC, 0x9A, 0xDC, 0x01, 0x9A, 0xBC, 0x87, 0x9A, 0x9C, 0xA2, 0xFD, 0x9A, 0xDD, 0x9A, 0xFC, 0x82, 0xDA, 0x18, 0x0E, 0x20, 0x8F, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x07, 0x29, 0x10, 0x04, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x11, 0x19, 0x12, 0x11, 0x32, 0x19, 0x53, 0x19, 0x95, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x31, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x51, 0x19, 0x31, 0x11, 0x32, 0x01, 0x11, 0x33, 0x85, 0x11, 0x75, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF6, 0x19, + 0x94, 0x11, 0x52, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x30, 0x04, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x88, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x21, 0x32, 0x19, 0x32, 0x19, 0x53, 0x19, 0x75, 0x01, 0x21, 0xF7, 0x01, 0x19, 0xF7, 0x80, 0x1A, 0x18, 0x02, 0x22, 0x39, 0x85, 0x21, 0xF8, 0x21, 0xD7, 0x21, 0xB6, 0x29, 0x95, 0x29, 0x74, 0x31, 0x73, 0x01, 0x39, 0x72, 0x01, 0x41, 0x72, 0x02, 0x41, 0x92, 0x81, 0x49, 0x92, 0x41, 0x92, 0x01, 0x49, 0x92, 0x85, 0x51, 0x91, 0x48, 0xEE, 0xA3, 0x56, 0xE4, 0xFC, 0xDC, 0x79, 0xDC, 0x58, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x05, 0xDC, 0x37, 0x88, 0xDC, 0x57, 0xDC, 0x16, 0xDC, 0x37, 0xDC, 0x17, 0xDC, 0x16, 0xDC, 0x17, 0xDC, 0x16, 0xDC, 0x17, 0xDB, 0xF6, 0x01, 0xDC, 0x16, 0x80, 0xDB, 0xF6, 0x03, 0xDC, 0x16, 0x80, 0xDC, 0x17, 0x01, 0xDC, 0x16, 0x80, 0xDC, 0x17, 0x02, 0xDB, 0xF6, 0x80, 0xDC, 0x16, 0x04, 0xDB, 0xF6, 0x82, 0xDB, 0xF7, 0xDB, 0xF6, 0xDB, 0xD6, 0x01, 0xDB, 0xF6, 0x83, 0xDB, 0xD7, 0xDB, 0xD6, 0xDB, 0xB6, 0xDB, 0xD6, 0x01, 0xDB, 0xB6, 0x81, 0xDB, 0xD6, 0xDB, 0xD7, 0x01, 0xDB, 0xF7, 0x85, + 0xDB, 0xF8, 0xD3, 0xF8, 0xD4, 0x3A, 0xB3, 0x57, 0x59, 0x2F, 0x49, 0x0F, 0x01, 0x41, 0x30, 0x81, 0x39, 0x30, 0x39, 0x51, 0x01, 0x39, 0x71, 0x06, 0x31, 0x51, 0x83, 0x31, 0x71, 0x31, 0x51, 0x31, 0x50, 0x31, 0x30, 0x01, 0x31, 0x50, 0x80, 0x31, 0x30, 0x01, 0x31, 0x2F, 0x80, 0x31, 0x0F, 0x01, 0x38, 0xEE, 0x8A, 0x40, 0xCE, 0x38, 0x6C, 0x48, 0xCD, 0x8A, 0x94, 0xCC, 0x39, 0xD4, 0x39, 0xD4, 0x19, 0xD3, 0xD8, 0xD3, 0xB7, 0xCB, 0x96, 0xCB, 0x76, 0x01, 0xD3, 0x76, 0x80, 0xD3, 0x77, 0x01, 0xD3, 0x56, 0x80, 0xD3, 0x76, 0x01, 0xD3, 0x56, 0x81, 0xCB, 0x56, 0xD3, 0x76, 0x01, 0xCB, 0x76, 0x83, 0xC3, 0x35, 0xCB, 0x96, 0xC3, 0x76, 0xC3, 0x97, 0x01, 0xBB, 0x97, 0x80, 0xB3, 0x97, 0x01, 0xAB, 0x97, 0x80, 0xAB, 0xB7, 0x01, 0xA3, 0xD8, 0x80, 0xA3, 0xF8, 0x01, 0xA4, 0x19, 0x02, 0xA3, 0xF9, 0x01, 0x9B, 0xD9, 0x86, 0x93, 0xB9, 0x93, 0xB8, 0x8B, 0xB8, 0x83, 0x78, 0x8B, 0x98, 0x8B, 0xB9, 0x6A, 0xD5, 0x01, 0x20, 0xAD, 0x80, 0x28, 0xEF, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x89, 0x11, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x1A, 0x17, 0x11, 0xD7, 0x11, + 0xB6, 0x11, 0x33, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x82, 0x28, 0xEF, 0x29, 0x0F, 0x28, 0xEF, 0x02, 0x29, 0x10, 0x80, 0x20, 0xEF, 0x02, 0x29, 0x10, 0x81, 0x28, 0xEF, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x20, 0xEF, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x83, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x28, 0xEF, 0x80, 0x20, 0xEF, 0x02, 0x28, 0xEF, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x20, 0xEF, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x28, 0xEF, 0x82, 0x29, 0x0F, 0x28, 0xEF, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x29, 0x50, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8A, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x20, 0xEF, 0x29, 0x10, 0x28, 0xF0, 0x29, 0x10, 0x02, 0x28, 0xEF, 0x81, 0x29, 0x0F, 0x28, 0xEF, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x8B, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, + 0x21, 0x10, 0x19, 0x30, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x21, 0xF7, 0x01, 0x19, 0xD7, 0x01, 0x11, 0xB6, 0x82, 0x11, 0x96, 0x11, 0xB6, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x82, 0x11, 0xD6, 0x11, 0x94, 0x09, 0x53, 0x01, 0x11, 0x33, 0x80, 0x11, 0x12, 0x04, 0x11, 0x32, 0x81, 0x11, 0x12, 0x11, 0x32, 0x01, 0x11, 0x12, 0x82, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x02, 0x19, 0x32, 0x82, 0x11, 0x12, 0x11, 0x11, 0x19, 0x12, 0x02, 0x19, 0x11, 0x86, 0x19, 0x32, 0x19, 0x31, 0x19, 0x32, 0x19, 0x31, 0x19, 0x32, 0x19, 0x11, 0x21, 0x32, 0x03, 0x19, 0x11, 0x84, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x32, 0x88, 0x19, 0x53, 0x21, 0x95, 0x21, 0xD6, 0x29, 0xF7, 0x2A, 0x38, 0x2A, 0x17, 0x32, 0x38, 0x2A, 0x37, 0x32, 0x37, 0x02, 0x32, 0x58, 0x80, 0x32, 0x78, 0x01, 0x32, 0x58, 0x01, 0x32, 0x78, 0x81, 0x32, 0x57, 0x32, 0x78, 0x03, 0x32, 0x57, 0x84, 0x32, 0x37, 0x32, 0x58, 0x32, 0x57, 0x32, 0x37, 0x2A, 0x37, 0x01, 0x32, 0x37, 0x02, 0x2A, 0x37, 0x83, 0x2A, 0x17, 0x2A, 0x37, 0x2A, 0x16, 0x2A, 0x37, 0x03, 0x2A, 0x16, 0x82, 0x29, 0xF6, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, + 0x05, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x32, 0x19, 0x33, 0x11, 0x34, 0x11, 0x55, 0x09, 0x96, 0x11, 0xD8, 0x01, 0x1A, 0x19, 0x88, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x12, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x07, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, + 0x29, 0x10, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x01, 0x11, 0x32, 0x88, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD6, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x74, 0x09, 0x12, 0x11, 0x12, 0x01, 0x19, 0x31, 0x81, 0x21, 0x51, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x87, 0x21, 0x10, 0x29, 0x10, 0x20, 0xD0, 0x20, 0xB0, 0x20, 0x4F, 0x59, 0xD5, 0x93, 0x3C, 0x93, + 0x1C, 0x01, 0x9A, 0xFC, 0x83, 0x9A, 0xDC, 0x9A, 0xBC, 0xA2, 0xDD, 0xA2, 0xBD, 0x01, 0x9A, 0x9C, 0x86, 0xA2, 0xBD, 0xA2, 0xDD, 0x9B, 0x1D, 0x8A, 0xDA, 0x18, 0x0D, 0x20, 0x8F, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x87, 0x19, 0x95, 0x11, 0x54, 0x19, 0x53, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x51, 0x01, 0x21, 0x31, 0x81, 0x19, 0x31, 0x19, 0x32, 0x01, 0x11, 0x33, 0x89, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x10, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, + 0x0F, 0x05, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x31, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x8D, 0x29, 0x31, 0x21, 0x31, 0x21, 0x52, 0x21, 0x32, 0x19, 0x53, 0x19, 0x74, 0x19, 0x95, 0x21, 0xF6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xF7, 0x21, 0xF7, 0x21, 0xD7, 0x21, 0xB6, 0x01, 0x21, 0x95, 0x80, 0x29, 0x95, 0x01, 0x31, 0x73, 0x80, 0x39, 0x72, 0x01, 0x41, 0x72, 0x03, 0x41, 0x92, 0x88, 0x49, 0xB2, 0x49, 0x92, 0x49, 0xB2, 0x49, 0x92, 0x51, 0x91, 0x51, 0x2F, 0x92, 0xD5, 0xDC, 0xDC, 0xDC, 0x99, 0x01, 0xDC, 0x78, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x81, 0xDC, 0x37, 0xDC, 0x57, 0x04, 0xDC, 0x37, 0x81, 0xDC, 0x16, 0xDC, 0x37, 0x06, 0xDC, 0x17, 0x80, 0xDC, 0x16, 0x02, 0xDC, 0x17, 0x02, 0xDC, 0x16, 0x80, 0xDB, 0xF6, 0x01, 0xDC, 0x16, 0x0C, 0xDB, 0xF6, 0x02, 0xDB, 0xD6, 0x80, 0xDB, 0xD7, 0x05, 0xDB, 0xB6, 0x01, 0xDB, 0xD7, 0x88, 0xDB, 0xF8, 0xD3, 0xF8, 0xE4, 0xBB, 0xA3, 0x16, 0x51, 0x0F, 0x49, 0x30, 0x41, 0x30, 0x39, 0x30, 0x39, 0x51, 0x01, 0x39, 0x71, 0x80, 0x39, 0x91, 0x01, 0x39, 0x71, 0x82, 0x31, 0x71, 0x39, 0x71, 0x39, 0x51, 0x03, 0x31, 0x51, 0x01, 0x31, 0x50, 0x01, 0x31, 0x30, 0x88, 0x31, 0x2F, 0x39, 0x0F, 0x38, 0xEE, 0x40, 0xCD, 0x48, 0xAD, 0x61, 0x2F, 0xA2, 0xF5, 0xDC, 0x5A, 0xD4, 0x19, 0x02, 0xCB, 0x97, 0x85, 0xCB, 0x76, 0xD3, 0x96, 0xD3, 0x76, 0xD3, 0x96, 0xD3, 0x76, 0xCB, 0x56, 0x04, 0xD3, 0x56, 0x85, 0xCB, 0x56, 0xCB, 0x76, 0xC3, 0x55, 0xCB, 0x76, 0xCB, + 0x96, 0xC3, 0x96, 0x01, 0xBB, 0x96, 0x87, 0xB3, 0x76, 0xAB, 0x76, 0xAB, 0xB7, 0xA3, 0xB7, 0x9B, 0xB7, 0x9B, 0xF8, 0x93, 0xF8, 0x94, 0x18, 0x02, 0x94, 0x19, 0x8A, 0x8C, 0x19, 0x94, 0x39, 0x94, 0x5A, 0x94, 0x3A, 0x94, 0x5A, 0x9C, 0x7B, 0x94, 0x7B, 0x94, 0x5B, 0x94, 0x5A, 0x94, 0x5B, 0x94, 0x1A, 0x01, 0x8B, 0xD9, 0x84, 0x7B, 0x78, 0x41, 0xB1, 0x20, 0xCE, 0x20, 0xEE, 0x28, 0xEF, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x8F, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0xD6, 0x11, 0xF7, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x10, 0x87, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, + 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x10, 0x20, 0xEF, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x20, 0xEF, 0x29, 0x0F, 0x28, 0xEF, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x28, 0xEF, 0x05, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x83, 0x19, 0x52, 0x11, 0x32, 0x19, 0x94, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x03, 0x19, 0xF7, 0x84, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x53, 0x01, 0x11, 0x52, 0x01, 0x11, 0x32, 0x01, 0x19, 0x52, 0x02, 0x19, 0x31, 0x81, 0x11, 0x31, 0x11, 0x11, 0x01, 0x19, 0x11, 0x82, 0x19, 0x32, 0x19, 0x31, 0x19, 0x52, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x82, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x04, 0x19, 0x31, 0x03, 0x21, 0x31, 0x85, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x19, 0x53, 0x19, 0x94, 0x29, 0xF6, 0x02, + 0x2A, 0x17, 0x80, 0x29, 0xF7, 0x02, 0x2A, 0x17, 0x80, 0x29, 0xF7, 0x01, 0x29, 0xF6, 0x81, 0x2A, 0x16, 0x29, 0xF6, 0x07, 0x21, 0xF6, 0x05, 0x21, 0xD6, 0x81, 0x21, 0xF6, 0x29, 0xF6, 0x03, 0x21, 0xF6, 0x80, 0x21, 0xD6, 0x01, 0x21, 0xF5, 0x01, 0x21, 0xB5, 0x01, 0x21, 0xD5, 0x01, 0x21, 0xB5, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x05, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x85, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x09, 0x75, 0x11, 0xB7, 0x11, 0xF8, 0x01, 0x1A, 0x19, 0x85, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x04, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, + 0x30, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x07, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x88, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x75, 0x19, 0xD6, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x74, 0x01, 0x11, 0x12, 0x81, 0x19, 0x31, 0x21, 0x51, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, + 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x8C, 0x21, 0x0F, 0x20, 0xEF, 0x20, 0xF0, 0x20, 0xD0, 0x28, 0xB0, 0x28, 0x6F, 0x51, 0x94, 0x93, 0x5C, 0x93, 0x1C, 0x9A, 0xFC, 0x9A, 0xDC, 0xA2, 0xFD, 0x9A, 0xBC, 0x01, 0x9A, 0x9D, 0x8A, 0x9A, 0x7C, 0xA2, 0xBD, 0xA2, 0xDD, 0xA3, 0x1D, 0x82, 0x9A, 0x18, 0x0D, 0x20, 0x8F, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, + 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0x75, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x85, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x51, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x11, 0x19, 0x32, 0x11, 0x13, 0x11, 0x33, 0x11, 0x75, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB5, 0x19, 0x74, 0x11, 0x52, 0x11, 0x31, 0x01, 0x19, 0x30, 0x01, 0x21, 0x30, 0x06, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x06, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x29, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x32, 0x82, 0x19, 0x53, 0x21, 0xB4, 0x21, 0xD5, 0x01, 0x19, 0xB5, 0x80, 0x21, 0xB5, 0x01, 0x21, 0x95, 0x86, 0x21, 0x94, 0x29, 0x94, 0x29, 0x73, 0x31, 0x73, 0x39, 0x73, 0x39, 0x72, 0x41, 0x72, 0x01, 0x49, 0x92, 0x8E, 0x49, 0x93, 0x49, 0x92, 0x41, 0x92, 0x49, 0xB2, 0x49, 0xB3, 0x49, 0x92, 0x51, 0xB2, 0x51, 0xB1, 0x51, 0x50, 0x8A, 0x94, 0xE4, 0xFC, 0xDC, 0x9A, 0xDC, 0x78, 0xDC, 0x58, 0xDC, 0x57, 0x02, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x57, 0x01, 0xD4, 0x17, 0x01, 0xDC, 0x37, 0x08, 0xDC, 0x17, 0x8A, + 0xDC, 0x16, 0xDC, 0x17, 0xDC, 0x16, 0xDB, 0xF6, 0xDC, 0x16, 0xDC, 0x17, 0xDC, 0x16, 0xDB, 0xF6, 0xDC, 0x16, 0xDB, 0xF6, 0xDC, 0x17, 0x05, 0xDB, 0xF6, 0x82, 0xDB, 0xF7, 0xDB, 0xF6, 0xD3, 0xD6, 0x02, 0xDB, 0xF6, 0x81, 0xDB, 0xD6, 0xDB, 0xB6, 0x01, 0xDB, 0xD6, 0x01, 0xDB, 0xB6, 0x80, 0xDB, 0xD6, 0x03, 0xDB, 0xB6, 0x80, 0xDB, 0xD7, 0x01, 0xDB, 0xF8, 0x87, 0xD4, 0x19, 0xE4, 0xDC, 0x71, 0xB1, 0x51, 0x0F, 0x49, 0x30, 0x41, 0x50, 0x41, 0x51, 0x39, 0x51, 0x06, 0x39, 0x71, 0x80, 0x31, 0x31, 0x01, 0x39, 0x51, 0x01, 0x39, 0x50, 0x81, 0x39, 0x30, 0x39, 0x2F, 0x01, 0x39, 0x0F, 0x87, 0x40, 0xEE, 0x38, 0x6C, 0x69, 0x70, 0xB3, 0x77, 0xD4, 0x3A, 0xDB, 0xF9, 0xD3, 0xB8, 0xD3, 0x77, 0x03, 0xD3, 0x76, 0x01, 0xD3, 0x56, 0x01, 0xD3, 0x76, 0x01, 0xD3, 0x56, 0x01, 0xCB, 0x56, 0x02, 0xCB, 0x76, 0x83, 0xC3, 0x76, 0xBB, 0x76, 0xC3, 0xB7, 0xB3, 0x96, 0x01, 0xAB, 0x96, 0x8E, 0x9B, 0x55, 0x9B, 0x76, 0x9B, 0xB7, 0x93, 0xB7, 0x9C, 0x18, 0x9C, 0x59, 0x9C, 0x9A, 0x9C, 0xBB, 0x94, 0xBB, 0x9C, 0xFC, 0x9C, 0xFD, 0x9D, 0x1D, 0x9D, 0x3D, 0x94, 0xFD, 0x94, 0xDC, 0x01, 0x9D, 0x1D, 0x03, 0x9C, 0xFD, 0x87, 0x9C, 0x9C, 0x94, 0x7C, 0x94, 0x7B, 0x8B, 0xFA, 0x8B, 0xF9, 0x8B, 0xFA, 0x52, 0x53, 0x20, 0xCE, 0x01, 0x20, 0xEF, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, + 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0xB6, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x33, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x8A, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x50, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, + 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x20, 0xEF, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x19, 0x31, 0x01, 0x19, 0x51, 0x01, 0x11, 0x32, 0x82, 0x11, 0x53, 0x19, 0x95, 0x19, 0xD6, 0x02, 0x19, 0xB6, 0x86, 0x19, 0xB5, 0x19, 0x95, 0x11, 0x74, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x11, 0x31, 0x03, 0x19, 0x31, 0x02, 0x19, 0x51, 0x09, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x06, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x81, 0x19, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x87, 0x19, 0x32, 0x19, 0x53, 0x19, 0x95, 0x21, 0xF6, 0x2A, 0x17, 0x21, 0xF7, 0x21, 0xD6, 0x21, 0xB6, 0x01, 0x19, 0x95, 0x06, 0x19, 0x74, 0x01, 0x11, 0x74, 0x0C, 0x19, 0x74, 0x04, 0x19, 0x94, 0x80, 0x19, 0x74, 0x01, 0x19, 0x94, 0x83, 0x19, 0x74, 0x19, 0x94, 0x19, 0x74, 0x19, 0x94, 0x01, 0x19, 0x74, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x0A, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, + 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x93, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB7, 0x11, 0xD8, 0x12, 0x19, 0x1A, 0x19, 0x11, 0xF8, 0x19, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x19, 0x33, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x03, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, + 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x87, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x8A, 0x19, 0x31, 0x19, 0x51, 0x19, 0x52, 0x11, 0x53, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x54, 0x01, 0x11, 0x12, 0x83, 0x19, 0x31, 0x21, 0x51, 0x29, 0x51, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, + 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x28, 0xF0, 0x20, 0xCF, 0x28, 0xB0, 0x28, 0x6F, 0x51, 0x74, 0x93, 0x3B, 0x9B, 0x1C, 0xA3, 0x1C, 0xA2, 0xFD, 0x9A, 0xBC, 0xA2, 0x9C, 0x01, 0xA2, 0x9D, 0x01, 0xAA, 0xDD, 0x85, 0xA2, 0xFC, 0x8A, 0xDA, 0x18, 0x0D, 0x20, 0xAF, 0x28, 0xEF, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x89, 0x11, 0x12, 0x11, 0x53, 0x19, 0xB5, 0x2A, 0x37, 0x21, 0xF7, 0x19, 0xD6, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x13, 0x11, 0x12, 0x01, 0x19, 0x31, 0x83, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x8D, 0x21, 0x32, 0x19, 0x12, 0x11, 0x13, 0x11, 0x34, 0x19, 0x76, 0x21, 0xD7, 0x22, 0x18, + 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x94, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x07, 0x29, 0x30, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x51, 0x01, 0x29, 0x31, 0x80, 0x29, 0x52, 0x01, 0x21, 0x52, 0x81, 0x21, 0x73, 0x21, 0x94, 0x01, 0x21, 0xB4, 0x80, 0x21, 0x94, 0x01, 0x21, 0x74, 0x80, 0x29, 0x94, 0x01, 0x29, 0x73, 0x80, 0x31, 0x73, 0x01, 0x39, 0x72, 0x01, 0x41, 0x72, 0x01, 0x49, 0x92, 0x80, 0x49, 0x93, 0x01, 0x49, 0xB3, 0x01, 0x49, 0xB2, 0x87, 0x51, 0xB2, 0x51, 0xB1, 0x49, 0x2F, 0x72, 0x12, 0xDC, 0xFC, 0xD4, 0x99, 0xD4, 0x58, 0xDC, 0x58, 0x01, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xDC, 0x36, 0x05, 0xDC, 0x37, 0x82, 0xDC, 0x17, 0xD4, 0x16, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x85, 0xE4, 0x17, 0xDC, 0x17, 0xDB, 0xF7, 0xDB, 0xF6, 0xDC, 0x17, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x16, 0x86, 0xDC, 0x17, 0xDC, 0x16, 0xDB, 0xF6, 0xDB, 0xF7, 0xDB, 0xF6, 0xDB, 0xF7, 0xDB, 0xF6, 0x03, 0xDB, 0xD6, 0x80, 0xDB, 0xF6, 0x05, 0xDB, 0xD6, 0x09, 0xDB, 0xB6, 0x01, 0xDB, 0xD7, 0x85, 0xD3, 0xD7, 0xD3, 0xD8, 0xCB, 0xD8, 0xB3, 0x57, 0x48, 0x8D, 0x49, 0x30, 0x01, 0x41, 0x50, 0x80, 0x41, 0x71, 0x03, 0x39, 0x71, 0x80, + 0x39, 0x91, 0x02, 0x39, 0x71, 0x01, 0x39, 0x51, 0x8A, 0x39, 0x50, 0x39, 0x30, 0x39, 0x2F, 0x39, 0x0F, 0x40, 0xCE, 0x40, 0xAD, 0x69, 0x90, 0xBB, 0xB8, 0xE4, 0xBC, 0xD3, 0xF9, 0xCB, 0x77, 0x01, 0xD3, 0x77, 0x81, 0xD3, 0x76, 0xD3, 0x77, 0x03, 0xD3, 0x56, 0x80, 0xD3, 0x76, 0x01, 0xD3, 0x56, 0x01, 0xCB, 0x56, 0x01, 0xCB, 0x76, 0x81, 0xC3, 0x96, 0xC3, 0xB6, 0x01, 0xBB, 0xB6, 0x84, 0xAB, 0xB6, 0xA3, 0x96, 0x9B, 0xB7, 0x9B, 0xD7, 0x93, 0xF7, 0x01, 0x94, 0x38, 0x84, 0x94, 0x79, 0x9C, 0xBA, 0x9C, 0xFB, 0xAD, 0x7D, 0xB5, 0xDF, 0x01, 0xB5, 0xFF, 0x80, 0x95, 0x3D, 0x01, 0x95, 0x3E, 0x84, 0x84, 0xDC, 0x8C, 0xFD, 0x8D, 0x3E, 0x84, 0xFD, 0x84, 0xDD, 0x03, 0x8C, 0xBD, 0x01, 0x9C, 0xDD, 0x87, 0x9C, 0x9C, 0x9C, 0x7C, 0x94, 0x3B, 0x94, 0x5B, 0x83, 0xB9, 0x41, 0xD2, 0x29, 0x0F, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0xD6, 0x01, 0x19, 0xF7, 0x81, 0x11, 0xB6, 0x11, 0x33, 0x01, 0x19, 0x11, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x83, 0x21, 0x2F, 0x29, 0x30, + 0x21, 0x2F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x20, 0xEF, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8D, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8E, 0x19, 0x31, 0x19, 0x51, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x19, 0x73, 0x19, 0x94, 0x19, 0x74, 0x11, 0x74, 0x11, + 0x54, 0x11, 0x74, 0x19, 0x94, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x51, 0x02, 0x19, 0x30, 0x81, 0x21, 0x31, 0x21, 0x51, 0x02, 0x21, 0x30, 0x02, 0x19, 0x30, 0x03, 0x21, 0x31, 0x08, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x89, 0x11, 0x31, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x21, 0xF6, 0x21, 0xF7, 0x21, 0xD6, 0x21, 0xB6, 0x19, 0x74, 0x11, 0x54, 0x03, 0x11, 0x33, 0x81, 0x11, 0x32, 0x11, 0x12, 0x02, 0x11, 0x32, 0x80, 0x19, 0x33, 0x01, 0x11, 0x32, 0x85, 0x11, 0x12, 0x11, 0x32, 0x19, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x33, 0x02, 0x11, 0x32, 0x84, 0x11, 0x12, 0x11, 0x32, 0x19, 0x53, 0x11, 0x32, 0x19, 0x33, 0x02, 0x11, 0x32, 0x80, 0x19, 0x53, 0x05, 0x11, 0x32, 0x81, 0x11, 0x33, 0x19, 0x53, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x88, 0x21, 0x10, 0x29, 0x10, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, + 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x92, 0x21, 0x30, 0x21, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xF8, 0x12, 0x18, 0x1A, 0x19, 0x1A, 0x18, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x05, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, + 0x81, 0x29, 0x30, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x29, 0x50, 0x21, 0x50, 0x02, 0x21, 0x30, 0x8A, 0x19, 0x30, 0x19, 0x52, 0x11, 0x52, 0x11, 0x53, 0x11, 0x54, 0x11, 0x55, 0x19, 0xD7, 0x22, 0x18, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x54, 0x01, 0x11, 0x12, 0x81, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, + 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x89, 0x20, 0xEF, 0x28, 0xCF, 0x28, 0xAF, 0x28, 0x6F, 0x51, 0x53, 0x93, 0x3B, 0xA3, 0x3C, 0xA2, 0xFD, 0xA2, 0xDD, 0xA2, 0xBD, 0x01, 0xA2, 0x9D, 0x87, 0xAA, 0xBD, 0xAA, 0xDD, 0xA2, 0xFD, 0x8A, 0xBA, 0x20, 0x0E, 0x20, 0x8F, 0x28, 0xF0, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x08, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x01, 0x22, 0x17, 0x8B, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x91, 0x21, 0x31, 0x19, 0x32, 0x19, 0x12, 0x11, 0x13, 0x11, 0x14, 0x11, 0x76, 0x21, 0xD7, 0x22, 0x18, 0x21, 0xF8, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x53, 0x19, 0x52, 0x19, 0x51, 0x19, 0x30, 0x21, 0x50, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, + 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x86, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x11, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x05, 0x29, 0x30, 0x01, 0x29, 0x31, 0x80, 0x29, 0x51, 0x02, 0x29, 0x31, 0x81, 0x29, 0x52, 0x21, 0x31, 0x01, 0x21, 0x52, 0x81, 0x21, 0x72, 0x21, 0x73, 0x02, 0x29, 0x73, 0x80, 0x31, 0x73, 0x01, 0x31, 0x72, 0x80, 0x39, 0x72, 0x01, 0x41, 0x72, 0x81, 0x49, 0x93, 0x41, 0x72, 0x01, 0x49, 0x93, 0x02, 0x49, 0xB3, 0x80, 0x49, 0xB2, 0x01, 0x51, 0xB2, 0x89, 0x51, 0x50, 0x71, 0xF2, 0xD4, 0xDC, 0xD4, 0x79, 0xDC, 0x78, 0xDC, 0x58, 0xDC, 0x78, 0xDC, 0x57, 0xD4, 0x37, 0xD4, 0x36, 0x06, 0xDC, 0x37, 0x81, 0xDC, 0x17, 0xDC, 0x37, 0x02, 0xDC, 0x16, 0x81, 0xDB, 0xF6, 0xDC, 0x17, 0x01, 0xDB, 0xF7, 0x86, 0xDC, 0x17, 0xDC, 0x16, 0xDC, 0x17, 0xDC, 0x16, 0xDC, 0x17, 0xDB, 0xF6, 0xDC, 0x16, 0x04, 0xDB, 0xF6, 0x81, 0xDB, 0xD6, 0xDB, 0xF6, 0x02, 0xDB, 0xD6, 0x01, 0xDB, 0xF6, 0x01, 0xDB, 0xD6, 0x01, 0xDB, 0xF6, 0x03, 0xDB, 0xD6, 0x07, 0xDB, 0xB6, 0x89, 0xDB, 0xB7, 0xDB, 0xD7, 0xDB, 0xD8, 0xD3, 0xD8, 0xC3, 0xB8, 0x79, 0xD1, 0x40, 0xAD, 0x49, 0x30, 0x41, 0x30, 0x41, 0x71, 0x01, 0x39, 0x51, 0x81, 0x41, 0x71, 0x41, 0x92, 0x01, 0x39, 0x71, 0x01, 0x41, 0x71, 0x8A, 0x41, 0x51, 0x39, 0x30, 0x41, 0x30, 0x41, 0x0F, 0x40, 0xEE, 0x38, 0x6C, 0x61, 0x50, 0xBB, 0xB8, 0xDC, 0x7B, 0xDC, + 0x19, 0xD3, 0xB8, 0x01, 0xD3, 0x77, 0x80, 0xDB, 0x77, 0x01, 0xD3, 0x56, 0x81, 0xDB, 0x77, 0xD3, 0x36, 0x02, 0xD3, 0x56, 0x80, 0xD3, 0x76, 0x01, 0xCB, 0x56, 0x8D, 0xCB, 0x76, 0xC3, 0x96, 0xC3, 0xB7, 0xBB, 0xD7, 0xB3, 0xB7, 0xAB, 0xB6, 0xA3, 0xD7, 0x9B, 0xD6, 0x8B, 0xB6, 0x94, 0x38, 0x8C, 0x38, 0x8C, 0x79, 0x8C, 0x99, 0x84, 0x99, 0x01, 0x95, 0x1B, 0x8B, 0xA5, 0xBE, 0xAD, 0xFF, 0xAD, 0xBF, 0x8C, 0xFC, 0x63, 0xB7, 0x42, 0xD4, 0x21, 0xB0, 0x19, 0x90, 0x11, 0x6F, 0x19, 0x70, 0x19, 0x90, 0x11, 0x4F, 0x01, 0x19, 0x70, 0x92, 0x21, 0x90, 0x19, 0x70, 0x29, 0x91, 0x29, 0xB1, 0x39, 0xF2, 0x42, 0x12, 0x52, 0x74, 0x5A, 0x94, 0x5A, 0x74, 0x5A, 0x54, 0x41, 0xD2, 0x31, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x31, 0x82, 0x19, 0x32, 0x11, 0x33, 0x11, 0xD6, 0x01, 0x11, 0xF7, 0x84, 0x11, 0xB6, 0x11, 0x33, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, + 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x08, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x86, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x03, 0x19, 0x31, 0x02, 0x19, 0x32, 0x84, 0x11, 0x32, 0x11, 0x33, 0x19, 0x53, 0x11, 0x32, 0x19, 0x52, 0x02, 0x19, 0x31, 0x80, 0x19, 0x30, 0x15, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, + 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x22, 0x17, 0x01, 0x21, 0xF7, 0x82, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x33, 0x01, 0x11, 0x32, 0x01, 0x19, 0x32, 0x82, 0x11, 0x12, 0x19, 0x32, 0x19, 0x12, 0x0A, 0x19, 0x32, 0x80, 0x19, 0x12, 0x07, 0x19, 0x32, 0x80, 0x19, 0x12, 0x01, 0x19, 0x32, 0x80, 0x11, 0x12, 0x04, 0x19, 0x32, 0x80, 0x11, 0x11, 0x01, 0x19, 0x32, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x09, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x88, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x91, 0x29, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x09, 0x53, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xF8, 0x1A, 0x19, 0x12, 0x19, 0x1A, 0x19, 0x19, 0xF8, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, + 0x05, 0x21, 0x30, 0x87, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x51, 0x8E, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD7, 0x22, 0x38, 0x22, 0x18, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, + 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x20, 0xEF, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x93, 0x28, 0xF0, 0x28, 0xD0, 0x28, 0x8F, 0x51, 0x53, 0x9B, 0x3C, 0xA3, 0x1D, 0xA2, 0xFD, 0xA2, 0xBD, 0xA2, 0x7C, 0xA2, 0x5C, 0xAA, 0xBD, 0xAA, 0xDD, 0xA2, 0xFD, 0x92, 0xFB, 0x20, 0x0E, 0x20, 0x8F, 0x28, 0xEF, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, + 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x84, 0x11, 0x11, 0x11, 0x12, 0x11, 0x73, 0x19, 0xB5, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x84, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x01, 0x19, 0x10, 0x81, 0x21, 0x51, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8C, 0x21, 0x32, 0x19, 0x12, 0x11, 0x13, 0x11, 0x34, 0x11, 0x76, 0x19, 0xD8, 0x22, 0x19, 0x21, 0xF8, 0x21, 0xD7, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x51, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x10, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x05, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x29, 0x51, 0x29, 0x31, 0x31, 0x31, 0x31, 0x51, 0x03, 0x29, 0x31, 0x01, 0x29, 0x52, 0x80, 0x29, 0x72, 0x01, 0x29, 0x52, 0x01, 0x31, 0x93, 0x82, 0x31, 0x72, 0x39, 0x72, 0x41, 0x92, 0x02, 0x41, 0x72, 0x81, 0x49, 0xB3, 0x49, 0x93, 0x03, 0x49, 0xB3, 0x88, 0x49, 0xB2, 0x51, 0xB2, 0x59, 0xD2, 0x59, 0x91, 0x72, 0x12, 0xD4, 0xDC, 0xCC, 0x59, 0xD4, 0x58, 0xD4, 0x37, 0x02, 0xD4, 0x57, 0x02, 0xDC, 0x57, 0x80, 0xD4, 0x37, 0x02, 0xDC, 0x37, 0x81, 0xD4, 0x37, 0xDC, 0x37, 0x02, 0xDC, 0x17, 0x83, 0xDC, + 0x16, 0xDC, 0x17, 0xDB, 0xF6, 0xDB, 0xF7, 0x01, 0xDC, 0x17, 0x80, 0xDC, 0x16, 0x01, 0xDB, 0xF6, 0x80, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x82, 0xDC, 0x16, 0xDC, 0x17, 0xDB, 0xF7, 0x02, 0xDB, 0xF6, 0x03, 0xDB, 0xD6, 0x03, 0xDB, 0xF6, 0x81, 0xD3, 0xD6, 0xD3, 0xB6, 0x01, 0xDB, 0xD6, 0x05, 0xDB, 0xB6, 0x8E, 0xDB, 0x96, 0xDB, 0xB6, 0xDB, 0x96, 0xDB, 0xD6, 0xDB, 0xB6, 0xDB, 0xB7, 0xDB, 0xD7, 0xDB, 0xF8, 0xD3, 0xD8, 0xCB, 0xF9, 0x61, 0x2F, 0x40, 0xAD, 0x49, 0x30, 0x49, 0x71, 0x41, 0x91, 0x01, 0x41, 0x71, 0x8D, 0x41, 0x51, 0x41, 0x91, 0x41, 0x71, 0x39, 0x51, 0x41, 0x51, 0x41, 0x30, 0x41, 0x0F, 0x40, 0xEE, 0x40, 0xAD, 0x61, 0x2E, 0xB3, 0x57, 0xE4, 0xBC, 0xD3, 0xD9, 0xCB, 0x98, 0x02, 0xD3, 0x77, 0x80, 0xDB, 0x77, 0x01, 0xD3, 0x56, 0x81, 0xDB, 0x76, 0xD3, 0x36, 0x01, 0xD3, 0x56, 0x01, 0xCB, 0x56, 0x98, 0xCB, 0x76, 0xC3, 0x76, 0xC3, 0x97, 0xC3, 0xB7, 0xB3, 0x97, 0xAB, 0xB7, 0x9B, 0xB7, 0x9B, 0xF7, 0x94, 0x38, 0x84, 0x38, 0x84, 0x78, 0x74, 0x58, 0x6C, 0x58, 0x74, 0xD9, 0x7D, 0x1A, 0x85, 0x5B, 0x8D, 0xBD, 0x8D, 0x5C, 0x95, 0xBE, 0x7C, 0xDB, 0x42, 0xB4, 0x11, 0x4E, 0x00, 0x8C, 0x08, 0xAC, 0x08, 0xCD, 0x06, 0x10, 0xEE, 0x82, 0x10, 0xCE, 0x10, 0xEE, 0x19, 0x0F, 0x01, 0x10, 0xAD, 0x81, 0x18, 0xAD, 0x10, 0x8D, 0x01, 0x18, 0xAD, 0x85, 0x18, 0x8D, 0x18, 0x6D, 0x18, 0xAE, 0x20, 0xEE, 0x20, 0xEF, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x8A, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, + 0x10, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xF7, 0x11, 0xB6, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x01, 0x29, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x07, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x0B, 0x21, + 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x80, 0x19, 0x30, 0x07, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x02, 0x21, 0xF7, 0x83, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x11, 0x02, 0x19, 0x31, 0x01, 0x19, 0x52, 0x03, 0x19, 0x31, 0x82, 0x21, 0x31, 0x19, 0x11, 0x21, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x32, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x04, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x02, 0x19, 0x31, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, + 0x2F, 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x01, 0x11, 0x32, 0x81, 0x11, 0x74, 0x09, 0x75, 0x01, 0x11, 0xD7, 0x89, 0x11, 0xF8, 0x1A, 0x19, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, + 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD7, 0x1A, 0x18, 0x22, 0x18, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0A, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x8A, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x9A, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x28, 0xEF, + 0x28, 0xCF, 0x30, 0x8F, 0x51, 0x53, 0xA3, 0x3D, 0xA3, 0x1D, 0xAA, 0xFD, 0xAA, 0x9D, 0xA2, 0x7C, 0xAA, 0x9D, 0xB2, 0xDD, 0xAA, 0xFD, 0x9A, 0xDB, 0x20, 0x0E, 0x20, 0x8F, 0x28, 0xF0, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x09, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x11, 0x19, 0x32, 0x11, 0x12, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xF6, 0x01, 0x22, 0x17, 0x85, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x83, 0x29, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x01, 0x11, 0x13, 0x89, 0x11, 0x55, 0x21, 0xD8, 0x22, 0x19, 0x22, 0x18, 0x21, 0xD7, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x88, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x80, 0x29, + 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x07, 0x29, 0x30, 0x82, 0x29, 0x31, 0x29, 0x51, 0x31, 0x51, 0x01, 0x31, 0x31, 0x02, 0x29, 0x31, 0x01, 0x29, 0x51, 0x02, 0x31, 0x52, 0x03, 0x31, 0x72, 0x80, 0x39, 0x72, 0x01, 0x41, 0x92, 0x80, 0x41, 0x72, 0x02, 0x49, 0x93, 0x01, 0x49, 0xB3, 0x80, 0x49, 0xD3, 0x02, 0x51, 0xD3, 0x86, 0x51, 0xB2, 0x51, 0x91, 0x69, 0xF2, 0xD4, 0xFD, 0xCC, 0x7A, 0xCC, 0x58, 0xD4, 0x38, 0x01, 0xD4, 0x57, 0x83, 0xD4, 0x77, 0xDC, 0x98, 0xDC, 0x57, 0xDC, 0x58, 0x02, 0xD4, 0x37, 0x80, 0xD4, 0x57, 0x01, 0xDC, 0x57, 0x02, 0xDC, 0x37, 0x81, 0xDC, 0x36, 0xDC, 0x16, 0x02, 0xDC, 0x17, 0x80, 0xDC, 0x16, 0x02, 0xDC, 0x17, 0x80, 0xD3, 0xF6, 0x01, 0xDC, 0x37, 0x84, 0xDC, 0x16, 0xDC, 0x17, 0xDB, 0xF6, 0xDB, 0xF7, 0xDB, 0xF6, 0x01, 0xDB, 0xD6, 0x80, 0xDB, 0xF6, 0x01, 0xDB, 0xD6, 0x02, 0xDB, 0xF6, 0x81, 0xDB, 0xF7, 0xD3, 0xB6, 0x02, 0xDB, 0xD6, 0x02, 0xDB, 0xB6, 0x01, 0xDB, 0x96, 0x80, 0xDB, 0xB6, 0x02, 0xDB, 0x96, 0x01, 0xDB, 0xB6, 0x89, 0xDB, 0xD7, 0xDB, 0xB7, 0xDB, 0xD7, 0xD3, 0xD7, 0xCB, 0xD8, 0xC3, 0xB8, 0x59, 0x0E, 0x48, 0xEE, 0x49, 0x50, 0x49, 0x71, 0x04, 0x41, 0x71, 0x88, 0x41, 0x51, 0x41, 0x30, 0x49, 0x0F, 0x40, 0xCD, 0x50, 0xCD, 0xA3, 0x16, 0xD4, 0x5A, 0xDC, 0x3A, 0xD3, 0xB8, 0x01, 0xD3, 0x77, 0x81, 0xD3, 0x76, 0xD3, 0x56, 0x02, 0xDB, 0x56, 0x02, 0xD3, 0x56, 0x99, 0xCB, 0x56, 0xCB, 0x77, 0xCB, 0x56, 0xC3, + 0x77, 0xC3, 0xB7, 0xBB, 0x97, 0xAB, 0x97, 0xA3, 0xB7, 0x9B, 0xB7, 0x93, 0xF8, 0x8C, 0x38, 0x84, 0x58, 0x74, 0x58, 0x7C, 0xDA, 0x75, 0x1A, 0x75, 0x1B, 0x75, 0x5C, 0x7D, 0xBD, 0x7D, 0xDD, 0x85, 0xBD, 0x85, 0x9D, 0x8D, 0xBE, 0x64, 0x59, 0x09, 0x4E, 0x00, 0xED, 0x09, 0x0E, 0x01, 0x10, 0xEE, 0x80, 0x18, 0xEE, 0x01, 0x18, 0xEF, 0x83, 0x19, 0x0F, 0x18, 0xEE, 0x19, 0x0F, 0x18, 0xEE, 0x01, 0x19, 0x0F, 0x02, 0x18, 0xEE, 0x04, 0x20, 0xEE, 0x03, 0x20, 0xEF, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x33, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, + 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x50, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x50, 0x21, 0x2F, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x50, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x4F, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x08, 0x21, 0x2F, 0x80, 0x21, 0x4F, 0x03, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x80, 0x19, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x05, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x30, 0x03, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x0A, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x12, 0x11, 0x33, 0x11, 0x53, 0x11, 0x95, 0x22, 0x17, + 0x01, 0x21, 0xF7, 0x84, 0x19, 0xB6, 0x11, 0x54, 0x19, 0x33, 0x19, 0x12, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x82, 0x21, 0x31, 0x19, 0x31, 0x19, 0x10, 0x03, 0x21, 0x31, 0x80, 0x21, 0x11, 0x02, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x03, 0x21, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x10, 0x02, 0x21, 0x31, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x07, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x8B, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x09, 0x53, 0x09, 0x75, 0x09, 0x96, 0x01, 0x11, 0xF8, 0x87, 0x1A, 0x19, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, + 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x07, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x04, 0x21, 0x30, 0x88, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x19, 0x30, 0x05, 0x21, 0x31, 0x81, 0x21, 0x51, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x52, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD7, 0x01, 0x22, 0x18, 0x84, 0x19, 0xB6, 0x11, 0x54, 0x09, 0x12, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, + 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x03, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x0F, 0x28, 0xCF, 0x28, 0xAF, 0x30, 0x4F, 0x51, 0x13, 0xA2, 0xFD, 0xAA, 0xFD, 0xAA, 0xDE, 0x01, 0xAA, 0x9D, 0x88, 0xB2, 0xBD, 0xAA, 0xDD, 0x9A, 0xDB, 0x28, 0x0E, 0x20, 0x6F, 0x28, 0xCF, 0x28, 0xF0, 0x20, 0xEF, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x05, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, + 0x0F, 0x01, 0x21, 0x2F, 0x91, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x12, 0x11, 0x12, 0x11, 0x53, 0x19, 0x95, 0x21, 0xF6, 0x22, 0x17, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x32, 0x11, 0x31, 0x11, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x71, 0x01, 0x21, 0x30, 0x8F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x52, 0x11, 0x33, 0x11, 0x13, 0x11, 0x55, 0x19, 0xD7, 0x22, 0x18, 0x22, 0x19, 0x21, 0xD7, 0x19, 0x75, 0x11, 0x13, 0x10, 0xF2, 0x01, 0x19, 0x11, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x0B, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x07, 0x29, 0x30, 0x80, 0x29, 0x31, 0x02, 0x29, 0x30, 0x02, 0x29, 0x31, 0x80, 0x31, 0x31, 0x05, 0x31, 0x51, 0x03, 0x31, 0x72, 0x80, 0x39, 0x72, 0x01, 0x39, 0x92, 0x83, 0x39, 0x72, 0x41, 0x72, 0x41, 0x92, 0x41, 0x93, 0x02, 0x49, 0x93, 0x82, 0x49, 0xB3, 0x49, 0xB4, 0x49, 0xD3, 0x02, 0x51, 0xD3, 0x89, 0x51, 0xD2, 0x49, 0x70, 0x61, 0xD2, 0xD5, 0x1D, 0xCC, 0xBB, 0xD4, 0x99, 0xCC, 0x58, 0xD4, 0x58, 0xD4, 0x78, 0xD4, 0x57, 0x01, 0xD4, 0x78, 0x01, 0xD4, 0x57, 0x01, 0xD4, 0x58, 0x01, 0xD4, 0x57, 0x81, 0xD4, 0x37, 0xD4, 0x36, 0x01, 0xD4, 0x37, 0x01, 0xDC, 0x36, 0x02, 0xDC, 0x17, 0x02, 0xDC, 0x37, 0x01, 0xDC, 0x17, 0x80, 0xDB, 0xF6, 0x02, + 0xD3, 0xF6, 0x02, 0xDB, 0xF6, 0x80, 0xDB, 0xF7, 0x02, 0xDB, 0xF6, 0x80, 0xDB, 0xF7, 0x01, 0xDB, 0xD6, 0x82, 0xD3, 0xD6, 0xDB, 0xD6, 0xD3, 0xD6, 0x02, 0xDB, 0xD6, 0x81, 0xDB, 0xB6, 0xDB, 0xD6, 0x01, 0xDB, 0xB6, 0x01, 0xDB, 0x96, 0x04, 0xDB, 0xB6, 0x80, 0xDB, 0x96, 0x01, 0xDB, 0xB7, 0x95, 0xDB, 0xD7, 0xD3, 0xF8, 0xCB, 0xF9, 0xCC, 0x3A, 0x59, 0x0E, 0x49, 0x0F, 0x49, 0x50, 0x49, 0x71, 0x41, 0x71, 0x49, 0x71, 0x41, 0x51, 0x41, 0x50, 0x49, 0x30, 0x49, 0x0F, 0x50, 0xCE, 0x82, 0x12, 0xD4, 0x5A, 0xDC, 0x3A, 0xD3, 0xB8, 0xD3, 0x97, 0xD3, 0x77, 0xD3, 0x76, 0x01, 0xDB, 0x77, 0x01, 0xDB, 0x56, 0x80, 0xD3, 0x36, 0x02, 0xD3, 0x56, 0x01, 0xCB, 0x76, 0x98, 0xCB, 0x97, 0xC3, 0xB7, 0xB3, 0x97, 0xAB, 0x97, 0xA3, 0xD8, 0x93, 0xD7, 0x8C, 0x18, 0x8C, 0x99, 0x7C, 0x58, 0x6C, 0x58, 0x74, 0xFA, 0x7D, 0x7C, 0x75, 0x5B, 0x7D, 0x9C, 0x7D, 0xDD, 0x7D, 0xBD, 0x7D, 0xDD, 0x75, 0x9D, 0x7D, 0x9D, 0x85, 0x7D, 0x53, 0xF7, 0x01, 0x0D, 0x11, 0x2E, 0x11, 0x2F, 0x19, 0x2F, 0x01, 0x19, 0x0F, 0x80, 0x18, 0xEF, 0x03, 0x19, 0x0F, 0x81, 0x21, 0x0F, 0x19, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x06, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, + 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x8D, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x05, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x50, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x29, 0x50, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x07, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x80, 0x29, 0x50, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, + 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x0A, 0x21, 0x30, 0x82, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x01, 0x19, 0x30, 0x02, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x09, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x19, 0x95, 0x01, 0x22, 0x17, 0x85, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x12, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x05, 0x21, 0x30, 0x07, 0x21, 0x10, 0x01, 0x21, 0x30, 0x06, 0x21, 0x10, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x09, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x81, + 0x29, 0x30, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x88, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x52, 0x09, 0x53, 0x09, 0x75, 0x09, 0x96, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x1A, 0x19, 0x88, 0x19, 0xD8, 0x11, 0xB6, 0x11, 0x55, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x08, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x04, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x06, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x19, 0x10, 0x19, 0x30, 0x02, 0x19, 0x31, 0x01, 0x19, 0x32, 0x01, 0x19, 0x52, 0x83, 0x21, 0x52, 0x19, 0x31, 0x21, 0x51, + 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x51, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD7, 0x01, 0x22, 0x18, 0x82, 0x11, 0x96, 0x11, 0x54, 0x11, 0x12, 0x01, 0x19, 0x32, 0x81, 0x19, 0x31, 0x21, 0x10, 0x07, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x21, 0x10, 0x04, 0x29, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x28, 0xEF, 0x28, 0xCF, 0x30, 0x90, 0x30, 0x50, 0x50, 0xB3, 0xA2, 0xDD, 0xB2, 0xFE, 0x01, 0xAA, 0x9D, 0x87, 0xB2, 0xBD, 0xB2, 0xDD, 0xA2, 0xDC, 0x28, 0x0E, 0x28, 0x8F, 0x28, 0xCF, 0x28, 0xEF, 0x29, + 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8F, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x21, 0xF6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x11, 0x31, 0x11, 0x11, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x50, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x21, 0xD7, 0x01, 0x22, 0x18, 0x86, 0x21, 0xF7, 0x19, 0x75, 0x11, 0x13, 0x10, 0xF2, 0x18, 0xF1, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x0D, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x07, 0x29, 0x30, 0x81, 0x29, 0x31, 0x29, 0x30, 0x01, 0x29, 0x31, 0x83, 0x31, + 0x31, 0x31, 0x51, 0x31, 0x31, 0x31, 0x51, 0x02, 0x31, 0x71, 0x05, 0x39, 0x72, 0x04, 0x41, 0x92, 0x80, 0x49, 0x93, 0x02, 0x49, 0xB3, 0x80, 0x49, 0xB4, 0x01, 0x49, 0xD3, 0x01, 0x51, 0xD3, 0x85, 0x51, 0xF3, 0x49, 0x71, 0x59, 0xD1, 0xCC, 0xFD, 0xCC, 0xDB, 0xCC, 0xBA, 0x01, 0xCC, 0x99, 0x04, 0xCC, 0x78, 0x81, 0xCC, 0x58, 0xCC, 0x57, 0x01, 0xD4, 0x78, 0x80, 0xCC, 0x57, 0x01, 0xD4, 0x57, 0x01, 0xD4, 0x36, 0x86, 0xD4, 0x57, 0xD4, 0x36, 0xDC, 0x37, 0xD4, 0x37, 0xD4, 0x16, 0xD4, 0x17, 0xD4, 0x37, 0x01, 0xD4, 0x17, 0x81, 0xDC, 0x37, 0xD4, 0x16, 0x01, 0xD3, 0xF6, 0x81, 0xD4, 0x17, 0xD3, 0xF6, 0x03, 0xDC, 0x17, 0x80, 0xDB, 0xF6, 0x02, 0xDB, 0xF7, 0x80, 0xD3, 0xD6, 0x02, 0xDB, 0xD6, 0x81, 0xD3, 0xD6, 0xDB, 0xD6, 0x03, 0xDB, 0xB6, 0x80, 0xDB, 0x96, 0x02, 0xDB, 0xB6, 0x82, 0xDB, 0x96, 0xDB, 0xB6, 0xDB, 0x96, 0x02, 0xDB, 0xB6, 0x80, 0xDB, 0xB7, 0x01, 0xDB, 0xD7, 0x84, 0xD3, 0xD8, 0xD4, 0x19, 0xBB, 0xF9, 0x59, 0x2F, 0x49, 0x0F, 0x02, 0x49, 0x71, 0x88, 0x49, 0x50, 0x51, 0x50, 0x48, 0xCE, 0x61, 0x2F, 0xC3, 0xF9, 0xD4, 0x3A, 0xD3, 0xD8, 0xD3, 0xB7, 0xD3, 0x97, 0x01, 0xD3, 0x76, 0x81, 0xD3, 0x36, 0xD3, 0x56, 0x01, 0xDB, 0x56, 0x01, 0xD3, 0x56, 0x8F, 0xCB, 0x36, 0xD3, 0x77, 0xCB, 0x97, 0xCB, 0xB7, 0xC3, 0xF8, 0xBB, 0xD8, 0xAB, 0x97, 0x9B, 0xB7, 0x9C, 0x19, 0x94, 0x59, 0x84, 0x59, 0x74, 0x58, 0x6C, 0x78, 0x74, 0xFA, 0x7D, 0x5B, 0x7D, 0x9C, 0x01, 0x75, 0x9C, 0x01, 0x7D, 0xBD, 0x87, 0x75, 0x9C, 0x75, 0x5C, 0x75, 0x1B, 0x7D, 0x3C, 0x74, 0xBB, + 0x09, 0x4E, 0x11, 0x4F, 0x11, 0x2F, 0x01, 0x19, 0x2F, 0x80, 0x19, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8A, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x19, 0xF7, 0x11, 0xD7, 0x19, 0xB6, 0x11, 0x13, 0x19, 0x12, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, + 0x29, 0x2F, 0x86, 0x20, 0xEF, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x83, 0x21, 0x50, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x50, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x50, 0x21, 0x2F, 0x19, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x19, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x02, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x31, 0x07, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8D, 0x19, 0x32, 0x11, 0x33, 0x11, 0x53, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x19, 0x10, 0x07, 0x21, + 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x07, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x09, 0x53, 0x09, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x02, 0x1A, 0x19, 0x84, 0x19, 0xF8, 0x11, 0x76, 0x11, 0x34, 0x11, 0x13, 0x11, 0x12, 0x01, 0x19, 0x11, 0x02, 0x21, 0x10, 0x07, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, + 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x85, 0x21, 0x2F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x19, 0x31, 0x19, 0x11, 0x11, 0x11, 0x01, 0x11, 0x32, 0x01, 0x11, 0x33, 0x01, 0x08, 0xF2, 0x84, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x07, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x30, 0x8E, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0x96, 0x19, 0xD7, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x09, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x08, 0x29, 0x0F, 0x82, 0x21, 0x0F, + 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x88, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x29, 0x0F, 0x28, 0xEF, 0x28, 0xAF, 0x30, 0x70, 0x38, 0x10, 0x69, 0x35, 0xB3, 0x1E, 0xB2, 0xBD, 0xB2, 0x9D, 0x01, 0xB2, 0xBD, 0x82, 0xA2, 0xDC, 0x28, 0x0E, 0x28, 0x6E, 0x01, 0x28, 0xF0, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x05, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x8F, 0x21, 0x30, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB5, 0x22, 0x17, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x09, 0x12, 0x10, 0xF1, 0x19, 0x51, 0x21, 0x51, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x19, 0x31, 0x8B, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x21, 0xF7, 0x2A, 0x38, 0x22, 0x18, 0x19, 0xD7, + 0x19, 0x95, 0x11, 0x34, 0x10, 0xF2, 0x18, 0xF1, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x85, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x88, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x0F, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x01, 0x29, 0x50, 0x80, 0x29, 0x30, 0x02, 0x29, 0x31, 0x01, 0x31, 0x31, 0x02, 0x31, 0x51, 0x83, 0x31, 0x71, 0x31, 0x51, 0x39, 0x72, 0x31, 0x51, 0x01, 0x39, 0x72, 0x03, 0x41, 0x92, 0x80, 0x41, 0x93, 0x02, 0x49, 0x93, 0x01, 0x49, 0xB3, 0x80, 0x51, 0xD4, 0x02, 0x51, 0xD3, 0x87, 0x51, 0xF3, 0x51, 0xD2, 0x51, 0xB1, 0x5A, 0x12, 0xC5, 0x1D, 0xBC, 0xDB, 0xBC, 0x99, 0xC4, 0xB9, 0x01, 0xC4, 0x98, 0x80, 0xC4, 0x78, 0x01, 0xBC, 0x57, 0x81, 0xBC, 0x37, 0xB4, 0x37, 0x01, 0xC4, 0x78, 0x01, 0xC4, 0x57, 0x80, 0xCC, 0x57, 0x01, 0xCC, 0x56, 0x02, 0xCC, 0x57, 0x01, 0xD4, 0x57, 0x03, 0xD4, 0x37, 0x01, 0xD4, 0x17, 0x01, 0xD4, 0x37, 0x03, 0xD4, 0x17, 0x84, 0xD3, 0xF6, 0xD4, 0x17, 0xD4, 0x16, 0xD3, 0xF6, 0xDC, 0x17, 0x02, 0xD3, 0xF7, 0x01, 0xD3, 0xD6, 0x80, 0xDB, 0xF6, 0x02, 0xDB, 0xD6, 0x01, 0xDB, 0xB6, 0x80, 0xDB, 0x96, 0x03, 0xDB, 0xB6, 0x80, 0xDB, 0xD6, 0x02, 0xDB, 0xB6, 0x8A, 0xD3, 0x96, 0xD3, 0x95, 0xD3, 0x96, 0xDB, 0xB7, 0xD3, 0xB7, 0xD3, 0xD7, 0xD3, 0xD8, 0xCC, 0x19, 0xC3, 0xF9, 0x59, 0x0F, 0x59, + 0x50, 0x01, 0x51, 0x51, 0x86, 0x50, 0xEF, 0x58, 0xEE, 0x92, 0x94, 0xDC, 0x9B, 0xCB, 0xD8, 0xCB, 0xB7, 0xD3, 0x97, 0x01, 0xD3, 0x76, 0x80, 0xDB, 0x96, 0x01, 0xDB, 0x76, 0x01, 0xD3, 0x56, 0x82, 0xD3, 0x35, 0xD3, 0x56, 0xD3, 0x76, 0x01, 0xCB, 0x97, 0x8B, 0xC3, 0xD7, 0xB3, 0xB7, 0xAB, 0xB7, 0x9B, 0xD7, 0x94, 0x18, 0x94, 0x9A, 0x7C, 0x79, 0x74, 0x79, 0x6C, 0x99, 0x75, 0x1A, 0x7D, 0x9C, 0x75, 0x9C, 0x01, 0x75, 0x7C, 0x8B, 0x7D, 0x9D, 0x75, 0x5C, 0x6C, 0xFB, 0x74, 0xFB, 0x7D, 0x3B, 0x7C, 0xDB, 0x8D, 0x1C, 0x8C, 0xFC, 0x4A, 0xD4, 0x21, 0x90, 0x21, 0x4F, 0x21, 0x50, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x4F, 0x8C, 0x21, 0x2F, 0x21, 0x50, 0x29, 0x50, 0x29, 0x70, 0x29, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x01, 0x19, 0x31, 0x88, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, + 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x50, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x01, 0x21, 0x50, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x30, 0x81, 0x19, 0x30, 0x21, 0x50, 0x02, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x50, 0x21, 0x2F, 0x21, 0x50, 0x01, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x21, 0x31, 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x50, 0x0C, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, + 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8D, 0x19, 0x12, 0x11, 0x32, 0x11, 0x54, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x08, 0x21, 0x10, 0x81, 0x29, 0x30, 0x20, 0xEF, 0x07, 0x21, 0x10, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x0C, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x19, 0x30, 0x19, 0x31, 0x01, 0x11, 0x32, 0x8F, 0x11, 0x54, 0x09, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF9, 0x1A, 0x19, 0x19, 0xF9, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, + 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x88, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x87, 0x19, 0x31, 0x19, 0x51, 0x19, 0x31, 0x19, 0x53, 0x19, 0x74, 0x19, 0x95, 0x19, 0xD6, 0x21, 0xF7, 0x01, 0x19, 0xD6, 0x86, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x19, 0x10, 0x05, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, + 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x19, 0xF7, 0x01, 0x22, 0x18, 0x83, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x52, 0x01, 0x19, 0x31, 0x08, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x8A, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x85, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x91, 0x29, 0x2F, 0x21, 0x0F, 0x28, 0xEF, 0x30, 0xD0, 0x30, 0x90, 0x38, 0x30, 0x50, 0x72, 0xB2, 0xFD, 0xB2, 0xBD, 0xB2, 0x9D, 0xBA, 0xBD, 0xB2, 0xBD, 0xA2, 0xBC, 0x30, 0x0E, 0x28, 0x6E, 0x28, 0xF0, 0x28, 0xEF, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, + 0x29, 0x2F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x07, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x51, 0x19, 0x11, 0x10, 0xF1, 0x11, 0x33, 0x11, 0x74, 0x02, 0x22, 0x17, 0x85, 0x19, 0xB6, 0x19, 0x74, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x02, 0x21, 0x50, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8A, 0x11, 0x32, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x38, 0x22, 0x18, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x33, 0x10, 0xF2, 0x18, 0xF1, 0x19, 0x11, 0x01, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x0C, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x50, 0x05, 0x29, 0x30, 0x81, 0x29, 0x50, 0x29, 0x30, 0x01, 0x29, 0x50, 0x82, 0x29, 0x30, 0x29, 0x51, 0x31, 0x51, 0x01, 0x31, 0x31, 0x03, 0x31, 0x51, 0x81, 0x31, 0x71, 0x39, 0x72, + 0x01, 0x39, 0x51, 0x01, 0x39, 0x72, 0x01, 0x41, 0x72, 0x81, 0x41, 0x92, 0x41, 0x93, 0x01, 0x49, 0x93, 0x03, 0x49, 0xB3, 0x80, 0x51, 0xB3, 0x02, 0x51, 0xD3, 0x89, 0x51, 0xF3, 0x51, 0xF2, 0x49, 0xD1, 0x5A, 0x32, 0xB4, 0xFC, 0xB4, 0xBA, 0xB4, 0x79, 0xB4, 0x58, 0xB4, 0x78, 0xB4, 0x57, 0x02, 0xBC, 0x78, 0x02, 0xBC, 0x98, 0x81, 0xC4, 0xB8, 0xC4, 0x98, 0x01, 0xC4, 0x77, 0x80, 0xCC, 0x97, 0x01, 0xC4, 0x77, 0x81, 0xCC, 0x77, 0xC4, 0x57, 0x01, 0xCC, 0x57, 0x01, 0xCC, 0x37, 0x80, 0xCC, 0x57, 0x02, 0xCC, 0x37, 0x82, 0xCC, 0x57, 0xCC, 0x37, 0xCC, 0x57, 0x03, 0xCC, 0x37, 0x85, 0xC4, 0x17, 0xCC, 0x37, 0xCB, 0xF6, 0xCB, 0xF7, 0xCC, 0x17, 0xD4, 0x17, 0x03, 0xD3, 0xF7, 0x80, 0xD3, 0xF6, 0x01, 0xD3, 0xD6, 0x82, 0xDB, 0xD6, 0xDB, 0xB6, 0xDB, 0x96, 0x01, 0xDB, 0xB6, 0x80, 0xDB, 0xD6, 0x04, 0xDB, 0xB6, 0x80, 0xDB, 0x96, 0x01, 0xDB, 0xB6, 0x80, 0xDB, 0xB7, 0x01, 0xDB, 0xD7, 0x8D, 0xD3, 0xD7, 0xD3, 0xD8, 0xDC, 0x7B, 0x9A, 0xB5, 0x61, 0x30, 0x61, 0x71, 0x59, 0x2F, 0x58, 0xCD, 0xBB, 0xB8, 0xD4, 0x19, 0xCB, 0xD7, 0xCB, 0x97, 0xD3, 0x96, 0xD3, 0x76, 0x01, 0xD3, 0x55, 0x82, 0xD3, 0x76, 0xD3, 0x56, 0xDB, 0x97, 0x01, 0xD3, 0x56, 0x8E, 0xCB, 0x56, 0xCB, 0x97, 0xCB, 0xB7, 0xCB, 0xF8, 0xBB, 0xB7, 0xA3, 0x96, 0x9B, 0xB7, 0x94, 0x18, 0x8C, 0x79, 0x84, 0x79, 0x6C, 0x58, 0x64, 0x78, 0x75, 0x3B, 0x7D, 0x9D, 0x75, 0xBC, 0x01, 0x75, 0x9C, 0x8C, 0x75, 0x5C, 0x75, 0x3B, 0x75, 0x1B, 0x74, 0xFB, 0x74, 0xBA, 0x7C, 0xBA, 0x84, 0xDB, 0x84, 0x7A, 0x8C, 0x7A, 0x52, + 0x93, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x4F, 0x82, 0x29, 0x50, 0x21, 0x50, 0x29, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xD7, 0x19, 0xB6, 0x11, 0x33, 0x19, 0x12, 0x21, 0x11, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x89, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, + 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x82, 0x21, 0x10, 0x21, 0x30, 0x19, 0x30, 0x02, 0x21, 0x50, 0x83, 0x21, 0x30, 0x19, 0x30, 0x21, 0x30, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x0B, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x28, 0xEF, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x51, 0x19, 0x30, 0x02, 0x19, 0x50, 0x02, 0x21, 0x50, 0x80, 0x21, 0x30, 0x01, 0x21, 0x50, 0x83, 0x19, 0x2F, 0x21, 0x50, 0x19, 0x30, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x07, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x08, 0x21, 0x30, 0x82, 0x19, 0x30, 0x21, 0x30, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x19, 0x30, 0x03, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x87, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x21, 0xD7, 0x01, 0x21, 0xF7, 0x85, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x19, 0x10, 0x03, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, + 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x19, 0xF9, 0x01, 0x1A, 0x19, 0x84, 0x19, 0xF8, 0x11, 0xB6, 0x09, 0x54, 0x11, 0x13, 0x11, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x86, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, + 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x50, 0x29, 0x30, 0x01, 0x21, 0x30, 0x86, 0x21, 0x51, 0x19, 0x51, 0x19, 0x52, 0x11, 0x73, 0x19, 0x94, 0x11, 0x95, 0x11, 0xB6, 0x01, 0x11, 0xD7, 0x8A, 0x11, 0xF8, 0x12, 0x18, 0x11, 0xF8, 0x1A, 0x18, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x94, 0x19, 0x53, 0x19, 0x52, 0x21, 0x31, 0x21, 0x51, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x88, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x52, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x19, 0xF7, 0x01, 0x22, 0x18, 0x86, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x07, 0x21, 0x30, + 0x01, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x86, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x8F, 0x29, 0x0F, 0x28, 0xEF, 0x28, 0xD0, 0x30, 0x90, 0x38, 0x50, 0x58, 0xF4, 0xB2, 0xFD, 0xB2, 0xBD, 0xB2, 0x9D, 0xBA, 0x9D, 0xB2, 0xBD, 0xAA, 0xFC, 0x30, 0x0E, 0x28, 0x6E, 0x30, 0xD0, 0x28, 0xEF, 0x01, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, + 0x01, 0x21, 0x10, 0x8C, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x21, 0xD6, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x8D, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x19, 0x95, 0x22, 0x38, 0x22, 0x18, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x53, 0x08, 0xF2, 0x11, 0x11, 0x01, 0x21, 0x31, 0x84, 0x29, 0x51, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x05, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x05, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x0F, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x05, 0x29, 0x30, 0x85, 0x29, 0x50, 0x29, 0x30, 0x31, 0x51, 0x29, 0x51, 0x31, 0x51, 0x31, 0x52, 0x04, 0x31, 0x51, 0x01, 0x39, 0x51, 0x01, 0x39, 0x52, 0x80, 0x39, 0x72, 0x01, 0x41, 0x72, 0x80, 0x41, 0x92, 0x02, 0x49, 0x93, 0x01, 0x49, 0xB3, 0x82, 0x51, 0xD3, 0x49, 0xB3, 0x51, 0xB4, 0x01, 0x51, 0xD3, 0x01, 0x51, 0xF3, 0x01, 0x51, 0xF2, 0x84, 0x6A, 0xF5, 0xCD, 0xBF, 0xBD, 0x1C, 0xBC, 0xFA, 0xB4, 0x99, 0x02, 0xBC, 0xD9, 0x86, 0xC4, 0xFA, 0xC4, 0xF9, 0xBC, 0xD9, 0xBC, 0xB8, 0xBC, 0x98, 0xBC, 0xB8, 0xC4, 0xB8, 0x02, 0xC4, 0x98, 0x01, 0xBC, 0x97, 0x81, 0xC4, 0x98, 0xBC, 0x97, 0x01, 0xBC, 0x77, 0x80, 0xBC, 0x57, 0x01, 0xC4, 0x77, 0x02, 0xC4, 0x57, 0x80, 0xBC, 0x37, 0x01, 0xBC, 0x57, 0x01, 0xBC, + 0x37, 0x80, 0xBC, 0x57, 0x02, 0xBC, 0x37, 0x01, 0xC4, 0x37, 0x01, 0xC4, 0x17, 0x82, 0xCC, 0x17, 0xCB, 0xF7, 0xD3, 0xF7, 0x02, 0xD3, 0xD6, 0x80, 0xD3, 0xB6, 0x0A, 0xDB, 0xB6, 0x80, 0xDB, 0x96, 0x01, 0xDB, 0xB6, 0x82, 0xD3, 0x96, 0xDB, 0x96, 0xDB, 0xB7, 0x01, 0xD3, 0xB7, 0x8C, 0xD3, 0xD8, 0xCB, 0xF9, 0x60, 0xCD, 0x48, 0x2B, 0x60, 0xCD, 0xCB, 0xD9, 0xD3, 0xF8, 0xCB, 0x97, 0xCB, 0x96, 0xD3, 0xB7, 0xD3, 0x96, 0xD3, 0x76, 0xDB, 0x76, 0x02, 0xD3, 0x56, 0x81, 0xCB, 0x56, 0xD3, 0x76, 0x01, 0xCB, 0x97, 0x9A, 0xC3, 0x97, 0xBB, 0xB7, 0xAB, 0xD7, 0x9B, 0xD7, 0x94, 0x38, 0x94, 0x9A, 0x84, 0x79, 0x6C, 0x78, 0x64, 0x78, 0x6D, 0x1A, 0x7D, 0xBD, 0x75, 0xBD, 0x6D, 0x7C, 0x75, 0xBD, 0x7D, 0xBD, 0x75, 0x3B, 0x74, 0xDA, 0x7C, 0xDA, 0x7C, 0xBA, 0x7C, 0x79, 0x84, 0x59, 0x73, 0xB7, 0x83, 0xD8, 0x94, 0x7A, 0x6B, 0x15, 0x18, 0x6C, 0x29, 0x0E, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x50, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x88, 0x19, + 0x31, 0x11, 0x12, 0x11, 0x33, 0x19, 0xD7, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x13, 0x19, 0x12, 0x01, 0x21, 0x11, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x11, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x21, 0x51, 0x86, 0x19, 0x50, 0x19, 0x30, 0x19, 0x50, 0x19, 0x51, 0x19, 0x30, 0x19, 0x10, 0x19, 0x11, 0x01, 0x19, 0x31, 0x83, 0x21, 0x51, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x31, 0x84, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x31, 0x01, 0x21, 0x11, 0x03, 0x21, 0x31, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x80, 0x21, 0x51, 0x05, 0x19, 0x31, 0x82, 0x19, 0x51, 0x21, 0x51, 0x19, 0x50, 0x01, 0x21, 0x50, 0x01, 0x19, 0x50, 0x80, 0x19, 0x51, + 0x04, 0x19, 0x31, 0x80, 0x21, 0x51, 0x05, 0x21, 0x31, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x04, 0x21, 0x31, 0x80, 0x19, 0x10, 0x02, 0x21, 0x51, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x19, 0x31, 0x19, 0x51, 0x07, 0x19, 0x31, 0x81, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x83, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x84, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x20, 0xF0, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, + 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x89, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x76, 0x11, 0xD8, 0x19, 0xF9, 0x01, 0x1A, 0x19, 0x88, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x55, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, + 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x93, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xD7, 0x19, 0xB6, 0x19, 0x94, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x32, 0x89, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x19, 0xD7, 0x22, 0x17, 0x22, 0x38, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x53, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x11, 0x05, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, + 0x50, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x88, 0x29, 0x0F, 0x28, 0xEF, 0x28, 0xD0, 0x30, 0x90, 0x38, 0x50, 0x50, 0xB3, 0xB2, 0xFD, 0xB2, 0xBD, 0xBA, 0x9D, 0x01, 0xBA, 0xBD, 0x86, 0xB3, 0x1D, 0x30, 0x0E, 0x28, 0x4E, 0x30, 0xCF, 0x28, 0xF0, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x94, 0x21, 0x10, 0x29, 0x30, 0x21, 0x31, 0x21, 0x11, 0x10, 0xF1, 0x11, 0x12, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x11, 0x19, 0x11, 0x11, 0x53, 0x11, 0x74, 0x19, 0xF7, 0x22, 0x38, 0x1A, 0x17, 0x11, 0xB5, 0x09, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, + 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x0D, 0x29, 0x30, 0x80, 0x29, 0x10, 0x05, 0x29, 0x30, 0x02, 0x29, 0x50, 0x01, 0x31, 0x51, 0x80, 0x31, 0x71, 0x02, 0x31, 0x51, 0x82, 0x31, 0x71, 0x31, 0x51, 0x39, 0x51, 0x01, 0x39, 0x52, 0x85, 0x41, 0x72, 0x39, 0x72, 0x41, 0x72, 0x41, 0x92, 0x41, 0x72, 0x41, 0x92, 0x01, 0x49, 0x93, 0x01, 0x49, 0xB3, 0x01, 0x51, 0xB3, 0x01, 0x51, 0xD4, 0x81, 0x51, 0xD3, 0x51, 0xF4, 0x01, 0x51, 0xF3, 0x01, 0x51, 0xF2, 0x86, 0x73, 0x15, 0xCD, 0xBE, 0xBD, 0x3C, 0xBD, 0x1B, 0xBD, 0x1A, 0xBC, 0xFA, 0xBC, 0xF9, 0x02, 0xC4, 0xFA, 0x80, 0xC5, 0x1A, 0x01, 0xC4, 0xF9, 0x84, 0xCC, 0xFA, 0xC4, 0xF9, 0xC4, 0xD9, 0xCC, 0xD9, 0xC4, 0xD9, 0x01, 0xC4, 0xF9, 0x81, 0xC5, 0x19, 0xC4, 0xF9, 0x01, 0xC5, 0x19, 0x01, 0xC4, 0xF9, 0x02, 0xC4, 0xD9, 0x81, 0xBC, 0xB9, 0xBC, 0xB8, 0x02, 0xB4, 0x98, 0x03, 0xA4, 0x57, 0x82, 0xA4, 0x36, 0xB4, 0x78, 0xB4, 0x58, 0x01, 0xBC, 0x78, 0x84, 0xC4, 0x58, 0xC4, 0x38, 0xCC, 0x17, 0xCB, 0xF7, 0xCB, 0xD6, 0x01, 0xD3, 0xD6, 0x80, 0xD3, 0xB6, 0x04, 0xDB, 0xB6, 0x81, 0xDB, 0xD6, 0xD3, 0xB6, 0x01, 0xDB, 0xB6, 0x01, 0xD3, 0x96, 0x80, 0xDB, 0xB6, 0x01, 0xD3, 0x96, 0x01, 0xDB, 0x96, 0x01, 0xDB, 0xB7, 0x8C, 0xDB, 0xD8, 0xD3, 0xB8, 0x91, 0xF1, 0x79, 0x0E, 0xCB, 0xB8, 0xD3, 0xB7, 0xD3, 0x97, 0xCB, 0x76, 0xD3, 0x97, 0xD3, 0x76, 0xD3, 0x96, 0xD3, 0x76, 0xD3, 0x56, 0x02, 0xD3, 0x76, 0x9D, 0xCB, 0x97, 0xCB, 0xB7, + 0xC3, 0xB7, 0xBB, 0xF8, 0xAB, 0xB7, 0x9B, 0xB7, 0x9C, 0x59, 0x94, 0x79, 0x84, 0xBA, 0x6C, 0x58, 0x5C, 0x57, 0x6C, 0xFA, 0x75, 0x9C, 0x7D, 0xDD, 0x75, 0xDD, 0x75, 0x9C, 0x75, 0x5B, 0x75, 0x3B, 0x6C, 0xB9, 0x7C, 0xDA, 0x84, 0xDA, 0x84, 0x99, 0x84, 0x59, 0x83, 0xF7, 0x83, 0xD8, 0x8B, 0xB8, 0x9C, 0x3A, 0x6A, 0xD5, 0x30, 0xEE, 0x31, 0x0E, 0x04, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x50, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x31, 0x19, 0x32, 0x11, 0x13, 0x19, 0xD6, 0x19, 0xF8, 0x11, 0xD7, 0x19, 0xB6, 0x11, 0x13, 0x19, 0x12, 0x21, 0x31, 0x21, 0x11, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, + 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x07, 0x21, 0x2F, 0x8C, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x31, 0x21, 0x11, 0x21, 0x32, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x19, 0x51, 0x19, 0x31, 0x02, 0x19, 0x51, 0x80, 0x19, 0x52, 0x03, 0x19, 0x32, 0x81, 0x19, 0x52, 0x21, 0x52, 0x03, 0x19, 0x31, 0x01, 0x19, 0x32, 0x81, 0x11, 0x32, 0x11, 0x31, 0x01, 0x19, 0x31, 0x81, 0x19, 0x51, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x88, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x21, 0x52, 0x19, 0x32, 0x19, 0x52, 0x02, 0x19, 0x32, 0x81, 0x19, 0x51, 0x21, 0x51, 0x03, 0x19, 0x31, 0x85, 0x19, 0x52, 0x11, 0x32, 0x11, 0x52, 0x11, 0x32, 0x19, 0x32, 0x19, 0x52, 0x06, 0x19, 0x51, 0x80, 0x11, 0x52, 0x01, 0x19, 0x52, 0x82, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x52, 0x04, 0x19, 0x32, 0x81, 0x21, 0x52, 0x19, 0x52, 0x01, 0x19, 0x31, 0x01, 0x19, 0x52, 0x81, 0x21, 0x52, 0x19, 0x32, 0x01, 0x19, 0x52, 0x85, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x19, 0x51, 0x19, 0x52, 0x19, 0x31, 0x04, 0x19, 0x52, 0x01, 0x19, + 0x32, 0x01, 0x19, 0x31, 0x85, 0x21, 0x31, 0x21, 0x30, 0x19, 0x30, 0x21, 0x30, 0x21, 0x50, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x8A, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x10, 0x19, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0A, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x85, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x30, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x87, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x11, 0x34, 0x11, 0x75, 0x11, 0x96, 0x11, + 0xD7, 0x19, 0xF9, 0x01, 0x1A, 0x19, 0x83, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x55, 0x11, 0x74, 0x01, 0x19, 0x32, 0x80, 0x21, 0x31, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x19, 0x31, 0x87, 0x11, 0x32, 0x11, 0x74, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xFA, 0x02, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x87, 0x09, 0xD8, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x07, 0x21, 0x30, 0x85, 0x21, 0x2F, 0x21, 0x30, + 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x84, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x82, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x53, 0x01, 0x19, 0x32, 0x84, 0x21, 0x31, 0x21, 0x11, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x90, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x31, 0x10, 0x28, 0xB0, 0x30, 0x70, 0x38, 0x50, 0x50, 0x72, 0xB3, 0x1E, 0xB2, 0xBD, 0xBA, 0x9D, 0xBA, 0x9E, 0xB2, 0x9D, 0xB3, 0x1D, 0x30, 0x0E, 0x28, 0x2D, 0x30, 0xCF, 0x01, 0x28, 0xEF, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, + 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x92, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x18, 0xF1, 0x08, 0xD1, 0x11, 0x33, 0x19, 0xD6, 0x22, 0x38, 0x22, 0x17, 0x19, 0xB6, 0x09, 0x34, 0x11, 0x13, 0x11, 0x12, 0x19, 0x11, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x20, 0xEF, 0x01, 0x21, 0x10, 0x03, 0x29, 0x10, 0x8C, 0x29, 0x30, 0x21, 0x31, 0x18, 0xF0, 0x11, 0x12, 0x11, 0x54, 0x19, 0xD6, 0x22, 0x38, 0x1A, 0x17, 0x11, 0xB5, 0x09, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x86, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x14, 0x29, 0x30, 0x80, 0x29, 0x10, 0x07, 0x29, 0x30, 0x80, 0x31, 0x30, 0x04, 0x29, 0x30, 0x81, 0x31, 0x50, 0x31, 0x51, 0x03, 0x31, 0x71, 0x01, 0x31, 0x51, 0x81, 0x39, 0x51, 0x39, 0x71, 0x01, 0x39, 0x72, 0x01, 0x41, 0x72, 0x82, + 0x41, 0x92, 0x41, 0x72, 0x41, 0x92, 0x01, 0x49, 0x93, 0x01, 0x49, 0xB3, 0x81, 0x51, 0xB4, 0x51, 0xB3, 0x03, 0x51, 0xD4, 0x01, 0x51, 0xD3, 0x01, 0x59, 0xF3, 0x87, 0x49, 0xB1, 0x72, 0xF5, 0xBD, 0x1C, 0xBD, 0x3C, 0xBD, 0x3B, 0xC5, 0x1B, 0xC5, 0x1A, 0xBC, 0xFA, 0x01, 0xC4, 0xFA, 0x02, 0xC5, 0x1A, 0x81, 0xC4, 0xFA, 0xC4, 0xD9, 0x02, 0xCC, 0xFA, 0x81, 0xC4, 0xD9, 0xC4, 0xFA, 0x01, 0xC5, 0x1A, 0x80, 0xBD, 0x1A, 0x01, 0xBD, 0x19, 0x82, 0xBD, 0x1A, 0xB5, 0x19, 0xBD, 0x3A, 0x03, 0xB5, 0x3A, 0x80, 0xAD, 0x3A, 0x01, 0xAD, 0x39, 0x80, 0xAD, 0x5A, 0x01, 0xA5, 0x39, 0x8B, 0x9C, 0xF8, 0x9C, 0xB8, 0x94, 0x77, 0x9C, 0x57, 0x9C, 0x37, 0xA4, 0x37, 0xAC, 0x17, 0xBC, 0x58, 0xBC, 0x17, 0xC4, 0x17, 0xCC, 0x17, 0xD3, 0xF7, 0x01, 0xD3, 0xD6, 0x80, 0xD3, 0xB6, 0x01, 0xDB, 0xB6, 0x01, 0xD3, 0xB6, 0x80, 0xD3, 0x95, 0x02, 0xD3, 0xB6, 0x01, 0xDB, 0xB6, 0x01, 0xDB, 0x96, 0x81, 0xD3, 0x76, 0xDB, 0x76, 0x01, 0xD3, 0x76, 0x80, 0xDB, 0x97, 0x01, 0xDB, 0xB7, 0x82, 0xD3, 0x97, 0xDB, 0xD8, 0xDB, 0xB7, 0x02, 0xD3, 0x96, 0x81, 0xD3, 0x76, 0xD3, 0x56, 0x02, 0xD3, 0x76, 0x01, 0xCB, 0x76, 0x8A, 0xCB, 0x97, 0xC3, 0x97, 0xBB, 0xB7, 0xB3, 0xD8, 0x9B, 0xB7, 0x93, 0xF8, 0x8C, 0x79, 0x74, 0x38, 0x64, 0x17, 0x5C, 0x37, 0x6C, 0xFA, 0x01, 0x7D, 0xBC, 0x8F, 0x75, 0xBC, 0x75, 0x9C, 0x7D, 0x7C, 0x74, 0xFA, 0x6C, 0x99, 0x7C, 0xB9, 0x8C, 0xB9, 0x84, 0x18, 0x83, 0xD6, 0x7B, 0x75, 0x83, 0x96, 0x8B, 0xB7, 0x9C, 0x39, 0x93, 0xB8, 0x5A, 0x32, 0x28, 0xCD, 0x01, 0x31, 0x0F, 0x80, + 0x31, 0x2F, 0x04, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x08, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x07, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD7, 0x11, 0xF8, 0x11, 0xD7, 0x19, 0xD6, 0x11, 0x33, 0x19, 0x12, 0x21, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x19, 0x33, 0x02, 0x11, 0x33, 0x85, 0x11, 0x53, 0x11, 0x33, 0x19, + 0x53, 0x19, 0x52, 0x11, 0x32, 0x11, 0x31, 0x01, 0x11, 0x73, 0x01, 0x11, 0x53, 0x02, 0x11, 0x33, 0x85, 0x19, 0x53, 0x19, 0x73, 0x19, 0x33, 0x19, 0x32, 0x11, 0x32, 0x19, 0x33, 0x02, 0x11, 0x33, 0x84, 0x11, 0x53, 0x11, 0x33, 0x11, 0x53, 0x19, 0x52, 0x19, 0x72, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x19, 0x52, 0x01, 0x19, 0x53, 0x82, 0x19, 0x74, 0x11, 0x54, 0x19, 0x54, 0x01, 0x19, 0x53, 0x01, 0x19, 0x52, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x80, 0x11, 0x53, 0x01, 0x11, 0x74, 0x80, 0x11, 0x54, 0x02, 0x11, 0x53, 0x86, 0x19, 0x73, 0x19, 0x72, 0x19, 0x31, 0x19, 0x52, 0x11, 0x52, 0x11, 0x53, 0x11, 0x73, 0x01, 0x11, 0x74, 0x82, 0x11, 0x73, 0x11, 0x53, 0x11, 0x32, 0x02, 0x19, 0x52, 0x81, 0x19, 0x31, 0x19, 0x52, 0x01, 0x19, 0x73, 0x80, 0x11, 0x53, 0x03, 0x11, 0x33, 0x82, 0x19, 0x53, 0x19, 0x52, 0x19, 0x32, 0x01, 0x11, 0x32, 0x04, 0x11, 0x53, 0x01, 0x19, 0x53, 0x01, 0x11, 0x52, 0x81, 0x11, 0x32, 0x11, 0x52, 0x01, 0x11, 0x53, 0x01, 0x19, 0x73, 0x01, 0x19, 0x53, 0x01, 0x19, 0x32, 0x82, 0x19, 0x52, 0x19, 0x51, 0x19, 0x31, 0x01, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x31, 0x83, 0x21, 0x52, 0x19, 0x52, 0x19, 0x32, 0x19, 0x52, 0x01, 0x11, 0x32, 0x82, 0x11, 0x53, 0x11, 0x94, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x82, 0x19, 0x95, 0x11, 0x53, + 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x8C, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x0E, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x04, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x86, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x19, 0xF8, 0x01, 0x1A, 0x19, 0x88, 0x11, 0xD8, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x74, 0x11, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, + 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x05, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x09, 0xB7, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x88, 0x01, 0xFA, 0x01, 0xD9, 0x09, 0xF9, 0x11, 0xD8, 0x11, 0x96, 0x11, 0x54, 0x19, 0x32, 0x19, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, + 0x53, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD6, 0x01, 0x22, 0x18, 0x85, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x12, 0x21, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x87, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x92, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x30, 0xF0, 0x30, 0xB0, 0x30, 0x70, 0x38, 0x30, 0x48, 0x11, 0xBA, 0xFE, 0xBA, 0xBE, 0xBA, 0x9D, 0xC2, 0x9E, 0xC2, 0xBE, 0xBB, 0x1D, 0x38, 0x0E, 0x28, 0x0D, 0x30, 0xAF, 0x30, 0xCF, 0x28, 0xEF, 0x05, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, + 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x8D, 0x21, 0x31, 0x18, 0xF1, 0x08, 0xD1, 0x11, 0x75, 0x21, 0xF7, 0x22, 0x18, 0x22, 0x17, 0x11, 0x74, 0x08, 0xF2, 0x10, 0xF2, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x8C, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x74, 0x19, 0xF7, 0x1A, 0x38, 0x1A, 0x17, 0x09, 0x53, 0x09, 0x12, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x01, 0x29, 0x10, 0x07, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x01, 0x31, 0x30, 0x01, 0x29, 0x30, 0x81, 0x31, 0x51, 0x31, 0x50, 0x01, 0x29, 0x30, 0x01, 0x31, 0x50, 0x80, 0x31, 0x51, 0x02, 0x31, 0x71, 0x01, 0x39, 0x71, 0x82, 0x39, 0x51, 0x39, 0x71, 0x39, 0x72, 0x01, 0x41, 0x72, 0x02, 0x41, 0x92, 0x01, 0x49, 0x93, 0x82, 0x49, 0xB3, 0x51, 0xB3, 0x49, 0xB3, 0x01, 0x51, 0xB3, 0x82, 0x51, 0xD4, 0x51, 0xB3, 0x59, 0xD4, 0x02, 0x59, 0xD3, 0x85, 0x59, 0xF2, 0x51, 0xB1, 0x51, + 0xB0, 0xB4, 0xDC, 0xC5, 0x5D, 0xBD, 0x1B, 0x01, 0xC4, 0xFA, 0x81, 0xC4, 0xDA, 0xBC, 0xB9, 0x03, 0xC4, 0xB9, 0x80, 0xC4, 0x98, 0x03, 0xC4, 0x99, 0x88, 0xC4, 0xB9, 0xC4, 0x99, 0xC4, 0xD9, 0xC4, 0xDA, 0xBC, 0xFA, 0xBC, 0xF9, 0xBD, 0x1A, 0xB5, 0x3A, 0xB5, 0x1A, 0x02, 0xB5, 0x3A, 0x01, 0xB5, 0x5A, 0x01, 0xAD, 0x7B, 0x01, 0xAD, 0x9B, 0x04, 0xA5, 0x9B, 0x8C, 0xA5, 0x7B, 0xA5, 0x5A, 0xA5, 0x1A, 0xAC, 0xD9, 0xA4, 0x78, 0xA3, 0xF6, 0xAB, 0xD6, 0xB3, 0xF6, 0xC4, 0x17, 0xC3, 0xF7, 0xCB, 0xF7, 0xD3, 0xD7, 0xD3, 0xD6, 0x07, 0xD3, 0xB6, 0x01, 0xDB, 0xB6, 0x01, 0xD3, 0x96, 0x80, 0xDB, 0x96, 0x01, 0xDB, 0x76, 0x84, 0xDB, 0x96, 0xDB, 0x76, 0xDB, 0x97, 0xDB, 0x96, 0xDB, 0x76, 0x01, 0xDB, 0x96, 0x02, 0xD3, 0x76, 0x80, 0xCB, 0x55, 0x01, 0xD3, 0x76, 0x8D, 0xCB, 0x56, 0xCB, 0x76, 0xCB, 0x97, 0xC3, 0xB7, 0xBB, 0x97, 0xB3, 0xB7, 0xA3, 0xD7, 0x93, 0xF7, 0x8C, 0x38, 0x7C, 0x59, 0x6C, 0x38, 0x64, 0x78, 0x6C, 0xFA, 0x6D, 0x3B, 0x01, 0x7D, 0xDD, 0x89, 0x7D, 0x9C, 0x7D, 0x5B, 0x75, 0x1A, 0x74, 0xB9, 0x74, 0x38, 0x7C, 0x38, 0x94, 0x99, 0x94, 0x17, 0x8B, 0x96, 0x8B, 0x55, 0x01, 0x93, 0x96, 0x84, 0xA4, 0x19, 0xA4, 0x3A, 0x5A, 0x12, 0x30, 0xCD, 0x30, 0xEE, 0x02, 0x31, 0x2F, 0x80, 0x31, 0x50, 0x09, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, + 0x29, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x8D, 0x21, 0x10, 0x21, 0x11, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD7, 0x11, 0xF8, 0x11, 0xD7, 0x19, 0xD7, 0x11, 0x53, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x8D, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x19, 0x33, 0x19, 0x74, 0x19, 0x95, 0x19, 0xB6, 0x21, 0xD7, 0x21, 0xD6, 0x19, 0xB5, 0x19, 0x74, 0x11, 0x53, 0x01, 0x09, 0x32, 0x83, 0x11, 0x73, 0x11, 0x94, 0x19, 0xF6, 0x19, 0xD6, 0x01, 0x19, 0xB6, 0x01, 0x19, 0x95, 0x80, 0x11, 0x54, 0x02, 0x11, 0x33, 0x82, 0x19, 0x54, 0x19, 0x96, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x88, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x74, 0x19, + 0x53, 0x19, 0x32, 0x21, 0x51, 0x21, 0x31, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x19, 0x31, 0x19, 0x53, 0x19, 0x74, 0x19, 0xB5, 0x02, 0x19, 0xB6, 0x82, 0x19, 0x95, 0x11, 0x95, 0x19, 0x74, 0x02, 0x11, 0x53, 0x83, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x19, 0xD7, 0x01, 0x19, 0xD6, 0x87, 0x11, 0x95, 0x19, 0x95, 0x19, 0x74, 0x11, 0x53, 0x19, 0x52, 0x11, 0x53, 0x11, 0x73, 0x11, 0x94, 0x01, 0x19, 0xD6, 0x89, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x74, 0x11, 0x53, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x19, 0x52, 0x19, 0x73, 0x01, 0x19, 0xB5, 0x01, 0x19, 0xB6, 0x88, 0x19, 0xB5, 0x19, 0x95, 0x19, 0x94, 0x11, 0x73, 0x19, 0x53, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x19, 0xB5, 0x02, 0x19, 0xB6, 0x82, 0x19, 0x95, 0x19, 0x74, 0x11, 0x74, 0x03, 0x11, 0x53, 0x83, 0x11, 0x94, 0x19, 0xB5, 0x19, 0x95, 0x21, 0xB6, 0x01, 0x19, 0x95, 0x86, 0x19, 0x74, 0x19, 0x53, 0x19, 0x52, 0x19, 0x51, 0x19, 0x31, 0x19, 0x30, 0x21, 0x51, 0x02, 0x21, 0x30, 0x81, 0x19, 0x31, 0x21, 0x31, 0x01, 0x19, 0x31, 0x80, 0x21, 0x32, 0x03, 0x19, 0x32, 0x87, 0x19, 0x52, 0x19, 0x53, 0x11, 0x53, 0x11, 0x32, 0x11, 0x33, 0x11, 0x53, 0x11, 0x74, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x87, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, + 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x84, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x89, 0x21, 0x51, 0x19, 0x31, 0x11, 0x12, 0x11, 0x13, 0x11, 0x34, 0x11, 0x75, 0x11, 0xB6, 0x19, 0xD7, 0x11, 0xD8, 0x1A, 0x19, 0x01, 0x19, 0xF8, 0x87, 0x09, 0x96, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x30, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, + 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x08, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x87, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xF9, 0x09, 0xFA, 0x04, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x86, 0x09, 0xFA, 0x11, 0xF9, 0x11, 0xB7, 0x11, 0x54, 0x19, 0x33, 0x21, 0x32, 0x21, 0x31, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x19, 0x31, 0x8A, 0x19, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x22, 0x58, 0x22, 0x38, + 0x19, 0xB6, 0x11, 0x74, 0x11, 0x12, 0x19, 0x12, 0x02, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x94, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x28, 0xCF, 0x28, 0xD0, 0x30, 0xB0, 0x38, 0x71, 0x40, 0x31, 0x50, 0x32, 0xC2, 0xFE, 0xC2, 0x7D, 0xC2, 0x7E, 0xC2, 0x7D, 0xCA, 0x9E, 0xBA, 0xBC, 0x38, 0x0E, 0x28, 0x0D, 0x38, 0x8F, 0x30, 0xAF, 0x30, 0xCF, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x83, + 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x8D, 0x19, 0x11, 0x19, 0x12, 0x19, 0x53, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x38, 0x19, 0xB6, 0x09, 0x13, 0x08, 0xF2, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x51, 0x29, 0x51, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x20, 0xEF, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x19, 0x11, 0x11, 0x53, 0x11, 0x95, 0x01, 0x1A, 0x38, 0x89, 0x11, 0xB6, 0x01, 0x12, 0x09, 0x11, 0x19, 0x52, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x50, 0x02, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x04, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x81, 0x31, 0x30, 0x29, 0x30, 0x03, 0x31, 0x30, 0x82, 0x31, 0x50, 0x31, 0x51, 0x31, 0x30, 0x02, 0x31, 0x50, 0x02, 0x31, 0x51, 0x01, 0x31, 0x71, 0x01, 0x39, 0x71, 0x85, 0x39, 0x51, 0x39, 0x71, 0x39, 0x72, 0x41, 0x72, 0x41, 0x92, 0x41, 0x72, 0x01, 0x41, 0x93, 0x02, 0x49, 0x93, 0x80, 0x49, 0xB3, 0x01, 0x51, 0xB3, 0x02, 0x51, 0xD4, 0x90, 0x59, 0xD3, 0x59, 0xB3, 0x59, 0xD3, 0x59, 0xB2, 0x49, 0x2F, 0x61, 0xD1, 0xBC, 0xBB, + 0xD5, 0x5D, 0xD5, 0x5C, 0xAB, 0xF7, 0xA3, 0xD6, 0xBC, 0x38, 0xBC, 0x58, 0xC4, 0x78, 0xC4, 0x58, 0xBC, 0x17, 0xC4, 0x37, 0x01, 0xBC, 0x17, 0x80, 0xC4, 0x37, 0x03, 0xC4, 0x17, 0x89, 0xBB, 0xF7, 0xBC, 0x17, 0xB4, 0x37, 0xB4, 0x58, 0xAC, 0x58, 0xA4, 0x37, 0xA4, 0x58, 0xA4, 0x78, 0xA4, 0x98, 0xA4, 0xB8, 0x02, 0xA4, 0xD9, 0x83, 0xAD, 0x1A, 0xA5, 0x3A, 0xA5, 0x1A, 0xA5, 0x3A, 0x01, 0xA5, 0x7A, 0x80, 0xA5, 0x7B, 0x01, 0xA5, 0x9B, 0x80, 0xAD, 0x9B, 0x01, 0xAD, 0x7B, 0x86, 0xB5, 0x5B, 0xB5, 0x1A, 0xB4, 0xFA, 0xB4, 0xD9, 0xBC, 0x98, 0xB4, 0x57, 0xB3, 0xF6, 0x01, 0xBB, 0xB6, 0x80, 0xCB, 0xF7, 0x03, 0xCB, 0xD6, 0x01, 0xD3, 0xD6, 0x01, 0xD3, 0xB6, 0x03, 0xD3, 0x96, 0x01, 0xDB, 0x96, 0x80, 0xD3, 0x76, 0x02, 0xDB, 0x76, 0x01, 0xDB, 0x96, 0x85, 0xDB, 0x76, 0xD3, 0x56, 0xD3, 0x96, 0xD3, 0x76, 0xCB, 0x55, 0xD3, 0x76, 0x01, 0xCB, 0x75, 0x8C, 0xCB, 0x96, 0xC3, 0xB7, 0xB3, 0x76, 0xB3, 0xB7, 0xA3, 0xD8, 0x93, 0xD7, 0x94, 0x59, 0x7C, 0x38, 0x6C, 0x17, 0x5C, 0x17, 0x75, 0x1A, 0x7D, 0x9C, 0x7D, 0xDD, 0x01, 0x75, 0x9C, 0x91, 0x7D, 0x7B, 0x7D, 0x1A, 0x74, 0x98, 0x7C, 0x37, 0x84, 0x17, 0x94, 0x17, 0x93, 0xF7, 0x8B, 0x55, 0x93, 0x55, 0x93, 0x76, 0x9B, 0x96, 0x9B, 0xB7, 0xAC, 0x39, 0xA4, 0x19, 0x51, 0xD1, 0x28, 0xAD, 0x30, 0xEF, 0x31, 0x0F, 0x02, 0x31, 0x30, 0x80, 0x29, 0x30, 0x01, 0x31, 0x50, 0x03, 0x31, 0x30, 0x01, 0x29, 0x30, 0x80, 0x31, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, + 0x10, 0x05, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x09, 0x34, 0x02, 0x11, 0xD7, 0x83, 0x11, 0xB7, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x8F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x19, 0x31, 0x19, 0x53, 0x19, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x01, 0x22, 0x18, 0x8A, 0x19, 0xF7, 0x19, 0xB6, 0x19, 0x96, 0x11, 0x54, 0x09, 0x33, 0x09, 0x13, 0x09, 0x54, 0x11, 0xB6, 0x1A, 0x17, 0x19, 0xF7, 0x1A, 0x17, 0x01, 0x19, 0xF7, + 0x82, 0x11, 0xB6, 0x11, 0x74, 0x11, 0x34, 0x01, 0x11, 0x33, 0x81, 0x11, 0x75, 0x19, 0xF7, 0x01, 0x1A, 0x18, 0x8B, 0x1A, 0x19, 0x1A, 0x18, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x53, 0x19, 0x53, 0x19, 0x52, 0x21, 0x31, 0x29, 0x31, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x92, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x10, 0x19, 0x32, 0x19, 0x73, 0x11, 0x95, 0x11, 0xD6, 0x11, 0xF7, 0x1A, 0x18, 0x11, 0xF7, 0x11, 0xD7, 0x11, 0xB6, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x53, 0x09, 0x33, 0x09, 0x74, 0x11, 0xB6, 0x1A, 0x38, 0x02, 0x1A, 0x18, 0x82, 0x11, 0xD7, 0x11, 0xB6, 0x19, 0x95, 0x02, 0x11, 0x53, 0x89, 0x11, 0x94, 0x11, 0xB6, 0x11, 0xF7, 0x12, 0x18, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0xD7, 0x11, 0x95, 0x19, 0x74, 0x19, 0x53, 0x01, 0x11, 0x32, 0x83, 0x11, 0x53, 0x11, 0x74, 0x19, 0xF6, 0x1A, 0x17, 0x02, 0x1A, 0x18, 0x87, 0x19, 0xF7, 0x19, 0xB5, 0x11, 0x95, 0x11, 0x54, 0x09, 0x13, 0x09, 0x54, 0x11, 0xB6, 0x22, 0x38, 0x01, 0x19, 0xF8, 0x01, 0x19, 0xD7, 0x86, 0x11, 0xB6, 0x11, 0x74, 0x11, 0x54, 0x11, 0x74, 0x11, 0x54, 0x11, 0x74, 0x11, 0xB5, 0x01, 0x19, 0xD7, 0x80, 0x21, 0xF8, 0x01, 0x19, 0xD7, 0x83, 0x19, 0xB6, 0x19, 0x54, 0x19, 0x53, 0x19, 0x52, 0x02, 0x19, 0x31, 0x83, 0x19, 0x30, 0x19, 0x31, 0x21, 0x52, 0x19, 0x52, 0x01, 0x19, 0x32, 0x83, 0x19, 0x52, 0x19, 0x32, 0x19, 0x33, 0x19, 0x53, 0x01, 0x11, 0x33, 0x8D, 0x11, 0x53, 0x11, 0x54, 0x09, 0x33, 0x09, 0x13, 0x09, 0x34, 0x11, 0x75, 0x19, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, + 0xB5, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x30, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x06, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x20, 0xEF, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x88, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x86, 0x11, 0xF8, 0x09, 0x96, 0x11, 0x74, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x04, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, + 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x05, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x04, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x08, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8C, 0x19, 0x31, 0x19, 0x32, 0x11, 0x54, 0x11, 0x95, 0x09, 0xB7, 0x09, 0xD8, 0x09, 0xFA, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xDB, 0x01, 0xFB, 0x01, 0x01, 0xDA, 0x89, 0x09, 0xDA, 0x09, 0xD9, 0x11, 0xB7, 0x11, 0x75, 0x19, 0x53, 0x21, 0x52, 0x21, 0x11, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x8E, 0x21, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x50, 0x21, 0x50, 0x21, 0x30, 0x01, 0x19, 0x30, 0x8B, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD6, 0x22, 0x38, 0x22, 0x18, 0x11, 0x95, 0x19, 0x74, 0x11, 0x12, 0x19, 0x11, + 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x88, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x89, 0x29, 0x10, 0x31, 0x10, 0x30, 0xF0, 0x30, 0xD0, 0x38, 0x91, 0x40, 0x51, 0x48, 0x10, 0x78, 0xF6, 0xCA, 0xDE, 0xCA, 0x5D, 0x01, 0xCA, 0x5E, 0x82, 0xCA, 0x7E, 0xC2, 0x7C, 0x50, 0x10, 0x01, 0x38, 0x0E, 0x84, 0x38, 0x6F, 0x30, 0x8F, 0x30, 0xCF, 0x28, 0xCF, 0x28, 0xF0, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, + 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x8D, 0x21, 0x31, 0x19, 0x32, 0x19, 0x54, 0x19, 0xD6, 0x22, 0x18, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x50, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x10, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0xB6, 0x01, 0x1A, 0x18, 0x84, 0x11, 0x95, 0x09, 0x12, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x06, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x06, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x07, 0x31, 0x30, 0x01, 0x31, 0x50, 0x03, 0x31, 0x51, 0x01, 0x31, 0x71, 0x02, 0x39, 0x71, 0x80, 0x39, 0x72, 0x02, 0x41, 0x72, 0x01, 0x41, 0x93, 0x83, 0x49, 0x93, 0x49, 0xB3, 0x49, 0x93, 0x49, 0xB3, 0x01, 0x51, 0xB3, 0x80, 0x51, 0xD4, 0x01, 0x51, 0xD3, 0x8A, 0x59, 0xD4, 0x59, 0xD3, 0x59, 0xB2, 0x61, 0xB2, 0x51, 0x2F, 0x69, 0xF1, 0xC4, 0x9B, 0xCC, 0xDB, 0xCC, 0xBA, 0xC4, 0x99, 0xC4, 0x79, 0x01, 0xC4, 0x58, 0x80, 0xCC, 0x79, 0x02, 0xCC, 0x58, 0x05, 0xCC, 0x38, 0x82, 0xCC, 0x18, 0xCC, 0x38, 0xCC, 0x18, 0x01, 0xC4, 0x38, 0x81, 0xBC, 0x38, 0xBC, 0x58, 0x01, 0xB4, 0x58, 0x01, 0xAC, 0x58, 0x81, + 0xAC, 0x57, 0xA4, 0x57, 0x01, 0xA4, 0x78, 0x81, 0xA4, 0x57, 0x9C, 0x57, 0x01, 0x9C, 0x77, 0x80, 0x94, 0x77, 0x01, 0x94, 0x97, 0x84, 0x94, 0x98, 0x94, 0xB8, 0x9C, 0xB8, 0xA4, 0xD9, 0xAC, 0xF9, 0x01, 0xB5, 0x1A, 0x8B, 0xBD, 0x3A, 0xBC, 0xFA, 0xBC, 0xD9, 0xBC, 0xB9, 0xC4, 0xB9, 0xCC, 0xBA, 0xBC, 0x17, 0xB3, 0xD6, 0xBB, 0xB6, 0xC3, 0xF6, 0xC4, 0x17, 0xCC, 0x17, 0x01, 0xCB, 0xF7, 0x81, 0xCB, 0xD6, 0xCB, 0xB6, 0x01, 0xD3, 0x96, 0x81, 0xD3, 0x75, 0xD3, 0x96, 0x01, 0xDB, 0x96, 0x88, 0xDB, 0x76, 0xD3, 0x76, 0xDB, 0x76, 0xDB, 0x56, 0xDB, 0x96, 0xDB, 0x76, 0xDB, 0x56, 0xDB, 0x76, 0xD3, 0x55, 0x01, 0xD3, 0x96, 0xA0, 0xCB, 0x76, 0xCB, 0x96, 0xCB, 0xB6, 0xC3, 0xF7, 0xB3, 0xD7, 0x9B, 0x96, 0x93, 0xD7, 0x94, 0x39, 0x8C, 0x79, 0x74, 0x79, 0x64, 0x58, 0x6C, 0xFA, 0x64, 0xDA, 0x75, 0x5B, 0x85, 0xFE, 0x7D, 0xBC, 0x75, 0x5B, 0x85, 0x5B, 0x74, 0x99, 0x7C, 0x37, 0x83, 0xF6, 0x8B, 0xD6, 0x93, 0xD7, 0xA3, 0xF7, 0x9B, 0x75, 0x9B, 0x76, 0xA3, 0x76, 0x9B, 0x76, 0xA3, 0xB7, 0xAC, 0x5A, 0xB4, 0x9B, 0x6A, 0x74, 0x30, 0xAD, 0x01, 0x31, 0x0F, 0x80, 0x31, 0x10, 0x02, 0x31, 0x30, 0x05, 0x31, 0x50, 0x01, 0x31, 0x30, 0x07, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, + 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x31, 0x85, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x33, 0x09, 0x54, 0x11, 0xB7, 0x01, 0x11, 0xD8, 0x84, 0x11, 0xB7, 0x11, 0x55, 0x08, 0xF2, 0x19, 0x12, 0x21, 0x32, 0x01, 0x21, 0x31, 0x05, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x8B, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x11, 0x19, 0x32, 0x19, 0x53, 0x19, 0x75, 0x11, 0xB7, 0x11, 0xD7, 0x1A, 0x18, 0x19, 0xF8, 0x01, 0x11, 0xD7, 0x81, 0x11, 0x96, 0x09, 0x55, 0x01, 0x09, 0x33, 0x90, 0x09, 0x74, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xF7, 0x11, 0xF8, 0x11, 0xF7, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x75, 0x09, 0x54, 0x11, 0x54, 0x09, 0x34, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xF8, 0x11, 0xF9, 0x12, 0x19, 0x01, 0x11, 0xF8, 0x86, 0x11, 0xB6, 0x11, 0x74, 0x19, 0x53, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x8D, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x95, 0x11, 0xD7, + 0x11, 0xF8, 0x12, 0x18, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0x96, 0x09, 0x74, 0x01, 0x09, 0x54, 0x82, 0x09, 0x75, 0x11, 0xB7, 0x11, 0xF8, 0x02, 0x12, 0x19, 0x82, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x02, 0x11, 0x54, 0x83, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x12, 0x19, 0x89, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x53, 0x11, 0x33, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0xD6, 0x11, 0xF8, 0x01, 0x12, 0x18, 0x88, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x75, 0x09, 0x34, 0x09, 0x13, 0x09, 0x55, 0x11, 0xB6, 0x1A, 0x18, 0x01, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x01, 0x11, 0xD7, 0x8C, 0x11, 0x95, 0x11, 0x74, 0x09, 0x34, 0x09, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x19, 0xD7, 0x11, 0xD8, 0x19, 0xF8, 0x19, 0xD8, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0x75, 0x01, 0x19, 0x53, 0x80, 0x19, 0x32, 0x03, 0x19, 0x31, 0x81, 0x19, 0x32, 0x19, 0x53, 0x02, 0x11, 0x53, 0x02, 0x11, 0x54, 0x02, 0x11, 0x75, 0x8E, 0x09, 0x75, 0x11, 0x96, 0x09, 0x96, 0x11, 0xB6, 0x19, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x19, 0x10, 0x19, 0x30, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, + 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x01, 0x11, 0x33, 0x8B, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x1A, 0x18, 0x1A, 0x39, 0x1A, 0x19, 0x11, 0xF8, 0x09, 0x96, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, + 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x8B, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x54, 0x11, 0xB6, 0x11, 0xF8, 0x09, 0xD9, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x01, 0xDB, 0x01, 0x01, 0xFB, 0x01, 0x01, 0xDA, 0x84, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x33, 0x01, 0x19, 0x11, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x87, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x8D, 0x19, 0x31, 0x19, 0x51, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD6, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x11, + 0x54, 0x10, 0xF2, 0x19, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x08, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x88, 0x29, 0x10, 0x30, 0xF0, 0x30, 0xD0, 0x38, 0x90, 0x40, 0x30, 0x48, 0x11, 0x81, 0x16, 0xCA, 0x9E, 0xD2, 0x7E, 0x02, 0xD2, 0x3E, 0x89, 0xD2, 0x5E, 0xD2, 0x9E, 0xC2, 0xBD, 0xA2, 0x39, 0x68, 0xD3, 0x48, 0x30, 0x38, 0x4F, 0x38, 0x90, 0x30, 0xB0, 0x28, 0xF0, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x8C, 0x21, 0x11, 0x19, 0x12, 0x11, + 0x13, 0x22, 0x17, 0x22, 0x38, 0x19, 0xF8, 0x11, 0x95, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xF7, 0x1A, 0x38, 0x1A, 0x18, 0x11, 0x96, 0x09, 0x13, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x06, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x06, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x03, 0x31, 0x30, 0x80, 0x31, 0x50, 0x02, 0x31, 0x51, 0x01, 0x31, 0x50, 0x87, 0x31, 0x51, 0x31, 0x71, 0x31, 0x51, 0x31, 0x71, 0x39, 0x71, 0x39, 0x72, 0x39, 0x92, 0x41, 0x92, 0x02, 0x39, 0x72, 0x80, 0x41, 0x72, 0x02, 0x41, 0x93, 0x82, 0x49, 0x93, 0x49, 0xB3, 0x49, 0xB4, 0x01, 0x49, 0xB3, 0x81, 0x51, 0xD3, 0x51, 0xD4, 0x01, 0x59, 0xD3, 0x8D, 0x59, 0xB3, 0x59, 0x92, 0x61, 0x91, 0x59, 0x2F, 0x8A, 0xD4, 0xD4, 0xFC, 0xCC, 0xBB, 0xCC, 0x9A, 0xCC, 0x99, 0xCC, 0x79, 0xCC, 0x58, 0xCC, 0x38, 0xCC, 0x58, 0xD4, 0x38, 0x01, 0xD4, 0x37, 0x03, 0xD4, 0x17, 0x81, 0xD4, 0x37, 0xD4, 0x38, 0x01, 0xD4, 0x37, 0x01, 0xD4, 0x38, 0x03, 0xCC, 0x38, 0x83, 0xC4, 0x58, 0xC4, 0x37, 0xC4, 0x58, 0xC4, 0x38, 0x01, 0xC4, 0x58, 0x03, + 0xBC, 0x58, 0x81, 0xB4, 0x58, 0xB4, 0x57, 0x01, 0xAC, 0x57, 0x03, 0xA4, 0x37, 0x94, 0xAC, 0x37, 0xAC, 0x17, 0xAC, 0x57, 0xB4, 0x78, 0xBC, 0x99, 0xB4, 0x99, 0xBC, 0xFA, 0xC5, 0x1A, 0xB4, 0xB9, 0xB4, 0x78, 0xAC, 0x58, 0xB4, 0x78, 0xB4, 0x58, 0xB4, 0x17, 0xAB, 0xD6, 0xB3, 0xB6, 0xBB, 0xF7, 0xC3, 0xF7, 0xCB, 0xF7, 0xCB, 0xD7, 0xD3, 0xD7, 0x01, 0xD3, 0xB6, 0x01, 0xD3, 0x96, 0x84, 0xDB, 0x96, 0xD3, 0x76, 0xDB, 0x76, 0xD3, 0x56, 0xDB, 0x76, 0x01, 0xD3, 0x55, 0x9A, 0xD3, 0x35, 0xD3, 0x55, 0xD3, 0x35, 0xD3, 0x76, 0xD3, 0x96, 0xCB, 0x96, 0xC3, 0xD6, 0xBB, 0xD6, 0xBC, 0x58, 0xA4, 0x58, 0x8C, 0x17, 0x73, 0xD7, 0x6C, 0x18, 0x6C, 0x99, 0x6D, 0x1B, 0x6D, 0x5B, 0x7D, 0xBC, 0x7D, 0xBD, 0x75, 0x3B, 0x7D, 0x5B, 0x8D, 0x7C, 0x84, 0xD9, 0x7C, 0x57, 0x83, 0xD6, 0x83, 0x74, 0x93, 0x75, 0xA3, 0xF7, 0x02, 0xAB, 0xD7, 0x8A, 0xA3, 0x96, 0x9B, 0x76, 0xA3, 0xB7, 0xAC, 0x19, 0xB4, 0x9B, 0x83, 0x77, 0x28, 0xAD, 0x31, 0x0F, 0x39, 0x50, 0x31, 0x50, 0x39, 0x50, 0x02, 0x31, 0x50, 0x80, 0x31, 0x30, 0x01, 0x31, 0x50, 0x80, 0x31, 0x30, 0x01, 0x31, 0x51, 0x01, 0x31, 0x50, 0x02, 0x29, 0x30, 0x80, 0x31, 0x30, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x0C, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, + 0x30, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x89, 0x21, 0x10, 0x19, 0x10, 0x21, 0x31, 0x19, 0x32, 0x19, 0x52, 0x11, 0x33, 0x11, 0x74, 0x11, 0x96, 0x11, 0xD7, 0x09, 0xD8, 0x01, 0x11, 0xD8, 0x84, 0x11, 0xB6, 0x11, 0x74, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x04, 0x29, 0x10, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x54, 0x19, 0x95, 0x19, 0xF7, 0x03, 0x11, 0xF8, 0x87, 0x11, 0xD7, 0x11, 0x96, 0x09, 0x75, 0x09, 0x54, 0x09, 0x34, 0x11, 0x95, 0x11, 0xD6, 0x11, 0xD7, 0x01, 0x11, 0xD8, 0x83, 0x09, 0xD7, 0x11, 0xD7, 0x11, 0xB7, 0x09, 0x76, 0x02, 0x09, 0x54, 0x83, 0x09, 0x76, 0x09, 0x97, 0x11, 0xD8, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x84, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x75, 0x19, 0x53, 0x19, 0x52, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x30, 0x85, 0x21, 0x10, 0x19, 0x31, 0x19, 0x53, 0x11, 0x74, 0x11, + 0xB6, 0x11, 0xD7, 0x02, 0x11, 0xF8, 0x83, 0x09, 0xD8, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x75, 0x01, 0x09, 0x54, 0x82, 0x09, 0x96, 0x11, 0xD7, 0x11, 0xF9, 0x01, 0x12, 0x19, 0x83, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x02, 0x11, 0x74, 0x8E, 0x11, 0x95, 0x11, 0xB6, 0x11, 0xF8, 0x11, 0xF9, 0x12, 0x19, 0x11, 0xF9, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0x95, 0x11, 0x74, 0x11, 0x53, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x11, 0xD7, 0x02, 0x11, 0xF8, 0x88, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x96, 0x09, 0x54, 0x09, 0x14, 0x09, 0x75, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x11, 0xD8, 0x84, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x75, 0x01, 0x09, 0x34, 0x81, 0x11, 0xB6, 0x11, 0xD7, 0x02, 0x11, 0xD8, 0x86, 0x11, 0xB7, 0x11, 0xD8, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x53, 0x19, 0x53, 0x19, 0x32, 0x02, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x95, 0x11, 0xB6, 0x01, 0x11, 0xD7, 0x80, 0x11, 0xD8, 0x01, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x01, 0x11, 0xF8, 0x81, 0x1A, 0x19, 0x11, 0xF8, 0x01, 0x1A, 0x18, 0x86, 0x19, 0xD7, 0x11, 0x95, 0x19, 0x74, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x89, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, + 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x21, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x21, 0x31, 0x01, 0x19, 0x32, 0x8C, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x11, 0xD7, 0x1A, 0x18, 0x1A, 0x39, 0x1A, 0x18, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x74, 0x11, 0x32, 0x11, 0x12, 0x02, 0x19, 0x31, 0x05, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x88, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, + 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x85, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x11, 0x96, 0x09, 0xB8, 0x09, 0xD9, 0x03, 0x01, 0xDA, 0x82, 0x01, 0xDB, 0x01, 0xFB, 0x01, 0xDB, 0x01, 0x01, 0xDA, 0x87, 0x09, 0xB9, 0x11, 0xD9, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8D, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x53, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x21, 0x51, 0x21, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, + 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x05, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x98, 0x30, 0xF0, 0x38, 0xB0, 0x40, 0x50, 0x50, 0x31, 0x99, 0xF9, 0xCA, 0xBE, 0xD2, 0x7E, 0xD2, 0x3E, 0xDA, 0x1E, 0xDA, 0x3E, 0xDA, 0x1E, 0xDA, 0x3E, 0xDA, 0x5E, 0xD2, 0x9D, 0xCA, 0xBD, 0xC2, 0xFD, 0xA2, 0x5A, 0x48, 0x30, 0x38, 0x2F, 0x38, 0x90, 0x30, 0xD0, 0x28, 0xF0, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x04, 0x29, 0x10, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x8A, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x89, 0x21, 0x31, 0x19, 0x12, 0x11, 0x13, 0x22, 0x17, 0x1A, 0x38, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x11, 0x09, 0x33, 0x19, 0xF7, 0x1A, 0x38, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x07, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x83, 0x29, 0x2F, 0x29, + 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x0D, 0x29, 0x30, 0x81, 0x31, 0x30, 0x29, 0x30, 0x03, 0x31, 0x30, 0x08, 0x31, 0x51, 0x82, 0x39, 0x51, 0x39, 0x71, 0x39, 0x72, 0x01, 0x41, 0x92, 0x01, 0x41, 0x72, 0x82, 0x39, 0x72, 0x41, 0x72, 0x41, 0x93, 0x02, 0x49, 0x93, 0x01, 0x49, 0xD4, 0x80, 0x49, 0xB3, 0x01, 0x51, 0xD3, 0x8A, 0x59, 0xD3, 0x59, 0xB3, 0x59, 0xB2, 0x59, 0x92, 0x59, 0x71, 0x59, 0x0F, 0x9B, 0x16, 0xDC, 0xDC, 0xD4, 0xBA, 0xD4, 0x9A, 0xD4, 0x79, 0x02, 0xD4, 0x58, 0x01, 0xD4, 0x37, 0x81, 0xD4, 0x17, 0xD4, 0x37, 0x0D, 0xD4, 0x17, 0x80, 0xD4, 0x37, 0x03, 0xCC, 0x17, 0x80, 0xCC, 0x37, 0x04, 0xCC, 0x17, 0x81, 0xC4, 0x37, 0xC4, 0x17, 0x01, 0xC4, 0x37, 0x01, 0xBC, 0x37, 0x88, 0xC4, 0x37, 0xBC, 0x37, 0xBC, 0x17, 0xBB, 0xF7, 0xBC, 0x17, 0xB3, 0xD6, 0xB3, 0xF6, 0xB4, 0x17, 0xB4, 0x58, 0x01, 0xB4, 0x99, 0x87, 0xB4, 0xBA, 0xAC, 0x78, 0xBC, 0xDA, 0xBC, 0xD9, 0xC4, 0xDA, 0xBC, 0x78, 0xB4, 0x38, 0xB3, 0xF7, 0x01, 0xB3, 0xB6, 0x83, 0xBB, 0xB6, 0xC3, 0xB6, 0xCB, 0xD6, 0xCB, 0xB7, 0x01, 0xD3, 0xB7, 0x81, 0xD3, 0x96, 0xDB, 0x97, 0x01, 0xD3, 0x76, 0x80, 0xDB, 0x56, 0x01, 0xD3, 0x56, 0x01, 0xD3, 0x55, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x76, 0xA0, 0xCB, 0xB7, 0xCB, 0xF7, 0xBC, 0x18, 0xB4, 0x99, 0xA4, 0xDA, 0x8C, 0xDA, 0x74, 0xBA, 0x64, 0xBA, 0x5C, 0xB9, 0x6D, 0x7C, 0x6D, 0xBD, 0x7E, 0x1E, 0x85, 0xFE, 0x6C, 0xDA, 0x64, 0x17, + 0x7C, 0x78, 0x84, 0x17, 0x8B, 0xF6, 0x8B, 0x54, 0x9B, 0x95, 0xA3, 0x95, 0xB3, 0xD7, 0xB3, 0xF7, 0xAB, 0x96, 0xAB, 0xB7, 0xA3, 0x97, 0x9B, 0xB7, 0xA4, 0x3A, 0xAC, 0x9B, 0x9C, 0x5B, 0x39, 0x70, 0x29, 0x0F, 0x31, 0x30, 0x01, 0x31, 0x50, 0x88, 0x39, 0x71, 0x31, 0x51, 0x39, 0x71, 0x31, 0x51, 0x31, 0x50, 0x31, 0x51, 0x31, 0x50, 0x31, 0x51, 0x31, 0x30, 0x01, 0x31, 0x51, 0x01, 0x31, 0x50, 0x04, 0x31, 0x30, 0x81, 0x29, 0x10, 0x31, 0x30, 0x0E, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x89, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x19, 0x52, 0x11, 0x53, 0x11, 0x75, 0x11, 0x96, 0x09, 0xB7, 0x02, 0x09, 0xD8, 0x87, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0xB6, 0x19, 0x95, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x51, 0x06, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x86, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, + 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x84, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x75, 0x11, 0xD7, 0x01, 0x11, 0xD8, 0x02, 0x11, 0xF8, 0x86, 0x09, 0xB7, 0x09, 0x75, 0x09, 0x54, 0x01, 0x34, 0x09, 0x95, 0x09, 0xB6, 0x09, 0xD7, 0x01, 0x11, 0xD8, 0x92, 0x09, 0xD8, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0x96, 0x09, 0x35, 0x09, 0x34, 0x09, 0x54, 0x09, 0x76, 0x09, 0x97, 0x11, 0xD8, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xD7, 0x11, 0x95, 0x11, 0x53, 0x19, 0x32, 0x21, 0x31, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x09, 0xF9, 0x8E, 0x11, 0xF8, 0x09, 0xD7, 0x09, 0x96, 0x09, 0x75, 0x09, 0x54, 0x01, 0x34, 0x09, 0x76, 0x09, 0xD7, 0x11, 0xF9, 0x12, 0x19, 0x09, 0xF9, 0x11, 0xF9, 0x11, 0xD9, 0x11, 0xB7, 0x11, 0x75, 0x02, 0x11, 0x54, 0x83, 0x11, 0x75, 0x09, 0xB6, 0x09, 0xB8, 0x11, 0xF9, 0x01, 0x09, 0xF9, 0x83, 0x11, 0xF9, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x74, 0x01, 0x11, 0x33, 0x82, 0x11, 0x74, 0x09, 0x75, 0x11, 0xB7, 0x02, 0x11, 0xF8, 0x83, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x76, 0x01, 0x09, 0x34, 0x82, 0x09, 0x76, 0x09, 0xB7, 0x11, 0xF9, 0x01, 0x09, 0xD9, 0x80, 0x09, 0xD8, 0x01, 0x11, 0xD8, 0x85, 0x11, 0xB6, 0x09, 0x54, 0x01, 0x13, 0x09, 0x34, 0x09, 0x96, 0x11, 0xB7, 0x01, 0x11, 0xD8, 0x86, 0x09, 0xB8, 0x11, + 0xD8, 0x11, 0xB8, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x54, 0x19, 0x53, 0x03, 0x19, 0x32, 0x86, 0x11, 0x32, 0x11, 0x54, 0x11, 0x95, 0x11, 0xD7, 0x11, 0xF8, 0x12, 0x19, 0x09, 0xF8, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x80, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x8A, 0x09, 0xD8, 0x11, 0xF9, 0x11, 0xD8, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, + 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x19, 0x11, 0x01, 0x19, 0x32, 0x8C, 0x11, 0x33, 0x19, 0x74, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x1A, 0x18, 0x1A, 0x19, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x31, 0x84, 0x21, 0x31, 0x21, 0x30, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x07, 0x29, 0x0F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x86, 0x11, 0x33, 0x11, 0x54, 0x11, 0xB7, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xFA, 0x01, 0xB9, 0x03, 0x01, + 0xDA, 0x01, 0x01, 0xBA, 0x91, 0x01, 0xB9, 0x09, 0xD9, 0x11, 0xF9, 0x19, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x19, 0x31, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x51, 0x01, 0x19, 0x52, 0x8A, 0x19, 0x73, 0x11, 0x74, 0x11, 0x75, 0x19, 0xD6, 0x19, 0xF7, 0x21, 0xF7, 0x21, 0xD6, 0x11, 0x54, 0x11, 0x12, 0x10, 0xF2, 0x19, 0x11, 0x01, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x30, 0x06, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x8C, 0x29, 0x0F, 0x29, 0x10, 0x28, 0xD0, 0x30, 0xB0, 0x38, 0x70, 0x58, 0x92, 0xB2, 0xDC, 0xD3, 0x1F, 0xD2, 0x7E, 0xDA, 0x3E, 0xE2, 0x3F, 0xE2, 0x1E, 0xE1, 0xFE, 0x01, + 0xE2, 0x1F, 0x8B, 0xE2, 0x3E, 0xDA, 0x5E, 0xD2, 0x7D, 0xCA, 0x9D, 0xBA, 0x9C, 0xBB, 0x1D, 0x71, 0x34, 0x38, 0x2F, 0x38, 0x90, 0x30, 0xD0, 0x28, 0xEF, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x88, 0x19, 0x32, 0x11, 0x13, 0x22, 0x18, 0x1A, 0x38, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x30, 0x90, 0x19, 0x10, 0x19, 0x32, 0x11, 0x33, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x96, 0x09, 0x12, 0x19, 0x32, 0x19, 0x11, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x30, 0x05, 0x29, 0x10, 0x06, 0x29, 0x30, 0x01, 0x31, 0x30, 0x80, 0x29, + 0x30, 0x02, 0x31, 0x30, 0x04, 0x31, 0x51, 0x82, 0x39, 0x71, 0x31, 0x51, 0x31, 0x71, 0x03, 0x39, 0x71, 0x80, 0x39, 0x51, 0x01, 0x39, 0x71, 0x81, 0x41, 0x72, 0x41, 0x92, 0x01, 0x41, 0xB3, 0x80, 0x41, 0x93, 0x02, 0x49, 0xB3, 0x81, 0x49, 0xD4, 0x51, 0xD4, 0x02, 0x51, 0xD3, 0x8F, 0x51, 0xB2, 0x59, 0xB2, 0x59, 0x91, 0x59, 0x50, 0x59, 0x0F, 0x9A, 0xF5, 0xDC, 0xDC, 0xD4, 0x7A, 0xD4, 0x79, 0xDC, 0x99, 0xD4, 0x58, 0xD4, 0x37, 0xDC, 0x37, 0xD4, 0x37, 0xD4, 0x17, 0xDC, 0x37, 0x05, 0xDC, 0x17, 0x80, 0xD4, 0x16, 0x01, 0xDC, 0x17, 0x01, 0xD4, 0x17, 0x82, 0xDC, 0x17, 0xD3, 0xF7, 0xDC, 0x17, 0x01, 0xD4, 0x17, 0x80, 0xD4, 0x16, 0x01, 0xD4, 0x17, 0x84, 0xD3, 0xF6, 0xD3, 0xF7, 0xD4, 0x17, 0xD3, 0xF7, 0xD4, 0x17, 0x04, 0xD3, 0xF7, 0x01, 0xCB, 0xF6, 0x07, 0xCB, 0xF7, 0x95, 0xC3, 0xF7, 0xC4, 0x37, 0xB3, 0xF6, 0xA3, 0xB6, 0x9B, 0x96, 0xAC, 0x18, 0xAC, 0x37, 0xB4, 0x78, 0xC4, 0xFA, 0xBC, 0xD9, 0xB4, 0x98, 0xB4, 0x78, 0xBC, 0x98, 0xBC, 0x78, 0xBC, 0x37, 0xBB, 0xD6, 0xBB, 0xB6, 0xBB, 0x95, 0xBB, 0x96, 0xC3, 0x96, 0xCB, 0xB7, 0xCB, 0x96, 0x01, 0xD3, 0x96, 0x81, 0xDB, 0x97, 0xD3, 0x76, 0x02, 0xDB, 0x76, 0xA4, 0xDB, 0x96, 0xD3, 0x75, 0xD3, 0x76, 0xCB, 0x76, 0xC3, 0x55, 0xBB, 0x76, 0xAB, 0xB6, 0xAC, 0x79, 0xA4, 0xFA, 0x8D, 0x1B, 0x85, 0x7C, 0x7D, 0xDE, 0x6D, 0xBD, 0x55, 0x1B, 0x4C, 0xDA, 0x6D, 0xBD, 0x75, 0x5C, 0x5B, 0xD7, 0x6B, 0xD7, 0x83, 0xD7, 0x8B, 0xD6, 0x93, 0x96, 0xAB, 0xD6, 0xB3, 0xF7, 0xB3, 0xD7, 0xAB, 0x96, 0xA3, 0x35, 0xA3, 0x56, 0x9B, + 0x76, 0x9B, 0xD8, 0x9C, 0x5A, 0xA4, 0xBC, 0xA4, 0xDD, 0x5A, 0x95, 0x29, 0x0F, 0x29, 0x30, 0x31, 0x51, 0x04, 0x39, 0x71, 0x80, 0x31, 0x71, 0x01, 0x31, 0x50, 0x05, 0x31, 0x51, 0x02, 0x31, 0x30, 0x80, 0x31, 0x50, 0x03, 0x31, 0x30, 0x12, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8A, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x31, 0x21, 0x30, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x09, 0x75, 0x09, 0xB7, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x86, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x54, 0x19, 0x52, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x50, 0x04, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x85, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x87, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, + 0x19, 0x32, 0x11, 0x33, 0x11, 0x95, 0x11, 0xD8, 0x11, 0xF9, 0x01, 0x09, 0xF9, 0x83, 0x09, 0xF8, 0x09, 0xD8, 0x09, 0xD7, 0x01, 0x75, 0x01, 0x01, 0x54, 0x81, 0x09, 0x96, 0x11, 0xB7, 0x01, 0x09, 0xD8, 0x86, 0x09, 0xF8, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xB7, 0x09, 0x76, 0x09, 0x55, 0x09, 0x34, 0x01, 0x09, 0x55, 0x82, 0x09, 0x97, 0x11, 0xD8, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x8C, 0x09, 0xD8, 0x09, 0xD7, 0x11, 0x75, 0x11, 0x54, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD8, 0x11, 0xF9, 0x01, 0x09, 0xF9, 0x82, 0x11, 0xF9, 0x09, 0xD8, 0x09, 0x96, 0x02, 0x09, 0x55, 0x89, 0x09, 0x76, 0x09, 0xB7, 0x09, 0xF9, 0x0A, 0x1A, 0x09, 0xFA, 0x09, 0xF9, 0x09, 0xD9, 0x11, 0xB8, 0x11, 0x96, 0x11, 0x54, 0x01, 0x09, 0x54, 0x82, 0x09, 0x75, 0x09, 0x97, 0x09, 0xD8, 0x02, 0x09, 0xF9, 0x83, 0x09, 0xD9, 0x09, 0xB7, 0x11, 0x96, 0x11, 0x74, 0x01, 0x09, 0x33, 0x83, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x11, 0xF9, 0x87, 0x11, 0xD9, 0x11, 0xB8, 0x11, 0xB7, 0x11, 0x96, 0x09, 0x14, 0x09, 0x34, 0x09, 0x76, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x80, 0x09, 0xD9, 0x01, 0x09, 0xD8, 0x90, 0x11, 0xD8, 0x11, 0xB6, 0x09, 0x55, 0x09, 0x13, 0x09, 0x14, 0x11, 0x97, 0x11, 0xD8, 0x11, 0xD9, 0x09, 0xD9, 0x09, 0xB8, 0x09, 0xD9, 0x11, 0xD9, 0x11, 0xD8, 0x11, 0x96, 0x11, 0x54, 0x11, 0x12, 0x19, 0x12, 0x01, 0x19, + 0x31, 0x8B, 0x19, 0x32, 0x19, 0x53, 0x11, 0x95, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xB8, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x8A, 0x01, 0xB9, 0x09, 0xD9, 0x11, 0xD9, 0x11, 0xB7, 0x09, 0x55, 0x09, 0x13, 0x10, 0xF1, 0x19, 0x11, 0x19, 0x31, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x06, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, + 0x29, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x85, 0x19, 0x33, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD7, 0x19, 0xF8, 0x01, 0x1A, 0x19, 0x85, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x11, 0x02, 0x21, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x09, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x75, 0x09, 0x96, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0xD9, 0x04, 0x01, 0xDA, 0x81, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0x09, 0xD9, 0x88, 0x19, 0xF8, 0x19, 0xF7, 0x19, 0x95, 0x11, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, + 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x50, 0x21, 0x30, 0x21, 0x51, 0x01, 0x19, 0x52, 0x8C, 0x19, 0x53, 0x11, 0x53, 0x11, 0x54, 0x19, 0xD6, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xD7, 0x11, 0x34, 0x08, 0xF2, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x51, 0x21, 0x31, 0x0B, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x31, 0x01, 0x19, 0x31, 0x02, 0x19, 0x32, 0x03, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x88, 0x29, 0x10, 0x28, 0xF0, 0x30, 0xD0, 0x30, 0x70, 0x48, 0x71, 0xAA, 0x7A, 0xD3, 0x1E, 0xD2, 0xBE, 0xDA, 0x3D, 0x01, 0xE2, 0x1E, 0x8F, 0xE1, 0xFE, 0xE1, 0xFF, 0xE1, 0xFE, 0xEA, 0x1F, 0xE2, 0x1E, 0xE2, 0x3E, 0xDA, 0x5E, 0xDA, 0x9E, 0xCA, 0x9D, 0xC2, 0xBC, 0xC3, 0x1D, 0x60, 0xD3, 0x38, 0x2F, 0x30, 0xB0, 0x28, 0xCF, + 0x28, 0xF0, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x09, 0x13, 0x1A, 0x17, 0x1A, 0x39, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x91, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x09, 0x12, 0x19, 0xD7, 0x22, 0x39, 0x19, 0xF8, 0x11, 0x95, 0x09, 0x12, 0x19, 0x32, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x86, 0x29, 0x2F, 0x29, 0x50, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x01, 0x31, 0x30, 0x82, 0x31, 0x50, 0x31, 0x30, 0x31, 0x50, 0x06, 0x31, 0x51, 0x82, + 0x39, 0x71, 0x31, 0x51, 0x39, 0x51, 0x01, 0x39, 0x71, 0x80, 0x39, 0x72, 0x01, 0x39, 0x71, 0x82, 0x39, 0x72, 0x41, 0x72, 0x41, 0xB3, 0x01, 0x49, 0xB3, 0x84, 0x41, 0x93, 0x49, 0x93, 0x49, 0xB3, 0x51, 0xD4, 0x49, 0xB3, 0x01, 0x51, 0xD3, 0x88, 0x51, 0xB3, 0x51, 0xB2, 0x59, 0xB2, 0x59, 0x91, 0x61, 0x91, 0x61, 0x4F, 0x9A, 0xF5, 0xDC, 0xBB, 0xDC, 0x7A, 0x01, 0xDC, 0x79, 0x82, 0xD4, 0x38, 0xD4, 0x37, 0xDC, 0x37, 0x05, 0xDC, 0x17, 0x80, 0xDB, 0xF6, 0x01, 0xDC, 0x17, 0x02, 0xDC, 0x16, 0x83, 0xDB, 0xF6, 0xDC, 0x17, 0xD3, 0xF6, 0xDB, 0xF7, 0x01, 0xDC, 0x17, 0x81, 0xD3, 0xF6, 0xDC, 0x17, 0x05, 0xD3, 0xF6, 0x01, 0xDB, 0xF7, 0x0C, 0xD3, 0xD6, 0x01, 0xD3, 0xF6, 0x01, 0xCB, 0xF7, 0x89, 0xC3, 0xF7, 0xC4, 0x17, 0xBC, 0x17, 0xB4, 0x18, 0xAB, 0xD7, 0xAB, 0xF7, 0xB4, 0x37, 0xBC, 0x58, 0xBC, 0x78, 0xB4, 0x58, 0x01, 0xC4, 0x99, 0x88, 0xBC, 0x78, 0xC4, 0x78, 0xBC, 0x38, 0xC4, 0x38, 0xBB, 0xD7, 0xB3, 0x96, 0xBB, 0x96, 0xBB, 0x75, 0xC3, 0x96, 0x01, 0xCB, 0x76, 0x81, 0xD3, 0x96, 0xDB, 0xB7, 0x02, 0xDB, 0x96, 0x01, 0xD3, 0x76, 0xA0, 0xD3, 0x96, 0xCB, 0x76, 0xBB, 0x96, 0xB3, 0xB7, 0xA3, 0xF7, 0x9C, 0xDA, 0x95, 0x5C, 0x8D, 0xBD, 0x75, 0x7C, 0x5D, 0x5C, 0x55, 0x1B, 0x44, 0x9A, 0x4C, 0x99, 0x5C, 0x99, 0x74, 0x79, 0x84, 0x38, 0x8B, 0xB6, 0x9B, 0xB6, 0xA3, 0xB6, 0xB3, 0xF7, 0xBC, 0x18, 0xB3, 0xD7, 0xAB, 0x96, 0xA3, 0x96, 0x93, 0x76, 0x9B, 0xD8, 0x94, 0x5A, 0x94, 0x7B, 0x9D, 0x1E, 0x5B, 0x37, 0x19, 0x0F, 0x29, 0x50, 0x31, 0x71, 0x04, 0x39, 0x71, 0x83, + 0x31, 0x51, 0x31, 0x71, 0x31, 0x51, 0x31, 0x71, 0x03, 0x31, 0x51, 0x81, 0x31, 0x71, 0x31, 0x51, 0x02, 0x31, 0x30, 0x80, 0x31, 0x50, 0x02, 0x31, 0x30, 0x82, 0x31, 0x50, 0x29, 0x30, 0x31, 0x50, 0x08, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x98, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x54, 0x11, 0x95, 0x09, 0x96, 0x11, 0xF8, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xB7, 0x11, 0xB7, 0x11, 0x95, 0x19, 0x94, 0x11, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, + 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x33, 0x19, 0x54, 0x11, 0x96, 0x11, 0xD8, 0x11, 0xF9, 0x09, 0xF9, 0x0A, 0x19, 0x01, 0x09, 0xD8, 0x81, 0x09, 0xB7, 0x01, 0x76, 0x01, 0x01, 0x34, 0x81, 0x09, 0x96, 0x11, 0xD7, 0x02, 0x09, 0xD8, 0x83, 0x09, 0xF8, 0x09, 0xD8, 0x09, 0xB7, 0x09, 0x97, 0x02, 0x09, 0x55, 0x82, 0x09, 0x76, 0x09, 0x97, 0x09, 0xD8, 0x02, 0x09, 0xD9, 0x87, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0x76, 0x11, 0x54, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x11, 0x19, 0x32, 0x19, 0x53, 0x19, 0x75, 0x11, 0x96, 0x11, 0xD8, 0x02, 0x09, 0xF9, 0x82, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0x96, 0x01, 0x09, 0x55, 0x89, 0x09, 0x75, 0x09, 0x96, 0x09, 0xB7, 0x09, 0xF9, 0x09, 0xFA, 0x09, 0xF9, 0x09, 0xFA, 0x11, 0xD9, 0x09, 0xB8, 0x11, 0x96, 0x02, 0x09, 0x54, 0x89, 0x09, 0x76, 0x09, 0xB7, 0x09, 0xD9, 0x09, 0xF9, 0x0A, 0x1A, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xB7, 0x11, 0x96, 0x11, 0x74, 0x01, 0x09, 0x33, 0x95, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xF9, 0x12, 0x19, 0x11, 0xF9, 0x09, 0xD8, 0x09, 0xB8, 0x11, 0x97, 0x11, 0x76, 0x09, 0x34, 0x01, 0x14, 0x09, 0x76, 0x09, 0xD8, 0x0A, 0x19, 0x01, 0xF9, 0x01, 0xD9, 0x09, 0xD8, 0x09, 0xB8, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x01, 0x09, 0x14, 0x81, 0x09, 0x97, 0x11, 0xD8, 0x02, 0x09, 0xD9, 0x87, 0x09, 0xB9, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x01, 0x19, 0x32, 0x85, 0x19, + 0x54, 0x11, 0x96, 0x11, 0xD8, 0x09, 0xB8, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x8E, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xDA, 0x09, 0xDA, 0x09, 0xB9, 0x11, 0x97, 0x11, 0x55, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x50, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x06, 0x29, 0x30, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x0A, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x08, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x51, 0x19, + 0x31, 0x01, 0x19, 0x32, 0x84, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0xB6, 0x11, 0xD7, 0x01, 0x11, 0xF8, 0x83, 0x1A, 0x19, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x01, 0x11, 0x32, 0x82, 0x19, 0x11, 0x21, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x13, 0x11, 0x55, 0x11, 0x97, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0xD9, 0x05, 0x01, 0xDA, 0x8A, 0x09, 0xFA, 0x09, 0xD9, 0x11, 0xF8, 0x19, 0xF8, 0x19, 0xB6, 0x19, 0x54, 0x19, 0x12, + 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x07, 0x21, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x19, 0xD7, 0x01, 0x22, 0x18, 0x86, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x13, 0x10, 0xF2, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x0B, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x11, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x11, 0x82, 0x19, 0x11, 0x21, 0x32, 0x19, 0x32, 0x01, 0x19, 0x33, 0x82, 0x11, 0x33, 0x11, 0x53, 0x11, 0x33, 0x02, 0x11, 0x32, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x05, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x89, 0x30, 0xD1, 0x38, 0x50, 0x79, 0x76, 0xCA, 0xFD, 0xD2, 0xBE, 0xDA, 0x5D, 0xE2, 0x5E, 0xE2, 0x1E, 0xE9, 0xFF, 0xEA, 0x1F, 0x02, 0xE9, 0xFF, 0x80, 0xE9, 0xFE, 0x01, 0xE2, 0x3E, 0x8A, 0xDA, 0x5E, 0xDA, 0x7D, 0xD2, 0xBD, 0xC2, 0xBC, 0xB2, 0xDC, 0x50, 0x71, 0x38, 0x6F, 0x30, 0xB0, 0x28, 0xCF, 0x28, 0xEF, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x05, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, + 0x21, 0x10, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x12, 0x11, 0x13, 0x22, 0x18, 0x22, 0x59, 0x19, 0xF8, 0x11, 0x75, 0x11, 0x33, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x11, 0x12, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x75, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x05, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x0A, 0x29, 0x30, 0x80, 0x29, 0x10, 0x08, 0x29, 0x30, 0x01, 0x31, 0x30, 0x80, 0x31, 0x50, 0x07, 0x31, 0x51, 0x81, 0x39, 0x71, 0x31, 0x51, 0x02, 0x39, 0x71, 0x82, 0x39, 0x72, 0x39, 0x71, 0x39, 0x72, 0x02, 0x41, 0x92, 0x01, 0x41, 0x93, 0x02, 0x49, 0xB3, 0x80, 0x49, 0x93, 0x01, 0x49, 0xB3, 0x02, 0x51, 0xB3, 0x01, 0x59, 0xB2, 0x87, 0x61, 0x91, 0x61, 0x4F, 0xAB, 0x36, 0xDC, 0xBB, 0xDC, 0x7A, 0xDC, 0x79, 0xDC, 0x58, 0xDC, 0x38, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x17, 0x01, 0xDC, 0x16, 0x03, 0xDC, 0x17, 0x01, 0xDB, 0xF6, 0x81, 0xDC, 0x16, 0xDB, 0xF6, 0x02, 0xDC, 0x16, 0x04, 0xDB, 0xF6, 0x01, 0xD3, 0xD6, 0x04, 0xDB, 0xF6, 0x82, 0xDB, 0xD6, 0xDB, 0xF7, 0xDB, + 0xD6, 0x01, 0xD3, 0xD6, 0x02, 0xDB, 0xD6, 0x84, 0xD3, 0xD6, 0xDB, 0xD6, 0xD3, 0xD6, 0xDB, 0xF6, 0xD3, 0xD6, 0x01, 0xDB, 0xD6, 0x01, 0xD3, 0xD6, 0x84, 0xD3, 0xB6, 0xCB, 0xD6, 0xCB, 0xF6, 0xCB, 0xF7, 0xCB, 0xD7, 0x02, 0xC3, 0xD7, 0x83, 0xC3, 0xF7, 0xBB, 0xB6, 0xB3, 0x96, 0xB3, 0xD6, 0x01, 0xC4, 0x79, 0x8C, 0xBC, 0x78, 0xBC, 0x58, 0xB4, 0x37, 0xB4, 0x38, 0xBC, 0x58, 0xBC, 0x38, 0xBC, 0x17, 0xBB, 0xB6, 0xBB, 0x96, 0xBB, 0x76, 0xCB, 0x96, 0xCB, 0x76, 0xD3, 0x96, 0x04, 0xD3, 0x76, 0xA0, 0xD3, 0x97, 0xCB, 0x97, 0xC3, 0x97, 0xB3, 0x96, 0xA3, 0xB7, 0x93, 0xD7, 0x94, 0x9A, 0x85, 0x1B, 0x85, 0xBE, 0x6D, 0x7D, 0x5D, 0x3C, 0x5D, 0x1C, 0x5C, 0xFB, 0x6C, 0xFB, 0x74, 0x79, 0x73, 0xF7, 0x93, 0xF7, 0xA4, 0x17, 0xAB, 0xF7, 0xAB, 0xD6, 0xAB, 0xB6, 0xA3, 0x96, 0xA3, 0xB7, 0x9B, 0xF8, 0x8B, 0xF8, 0x8C, 0x39, 0x94, 0xFC, 0x95, 0x3E, 0x6B, 0xD9, 0x19, 0x4F, 0x19, 0x2F, 0x31, 0xB1, 0x39, 0xB2, 0x01, 0x39, 0x91, 0x05, 0x39, 0x71, 0x01, 0x31, 0x51, 0x80, 0x31, 0x71, 0x06, 0x31, 0x51, 0x82, 0x31, 0x30, 0x31, 0x50, 0x31, 0x30, 0x04, 0x29, 0x30, 0x80, 0x29, 0x50, 0x05, 0x29, 0x30, 0x01, 0x29, 0x10, 0x06, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x31, 0x89, 0x19, 0x11, 0x11, + 0x11, 0x19, 0x73, 0x19, 0xB5, 0x11, 0x97, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0xFA, 0x01, 0x01, 0xB9, 0x86, 0x09, 0xF9, 0x09, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x19, 0xB5, 0x11, 0x32, 0x10, 0xF1, 0x01, 0x21, 0x51, 0x82, 0x29, 0x51, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x84, 0x19, 0x11, 0x19, 0x32, 0x19, 0x54, 0x11, 0x96, 0x11, 0xF8, 0x03, 0x09, 0xF9, 0x82, 0x09, 0xD8, 0x09, 0x97, 0x01, 0x76, 0x01, 0x01, 0x35, 0x82, 0x09, 0x76, 0x09, 0xB7, 0x09, 0xF8, 0x02, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x80, 0x09, 0x97, 0x02, 0x09, 0x55, 0x82, 0x09, 0x76, 0x09, 0x97, 0x09, 0xB8, 0x02, 0x09, 0xD9, 0x87, 0x09, 0xF9, 0x09, 0xB8, 0x09, 0x76, 0x11, 0x34, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x89, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD8, 0x11, + 0xF9, 0x01, 0x09, 0xF9, 0x83, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xB7, 0x09, 0x75, 0x01, 0x09, 0x55, 0x82, 0x09, 0x76, 0x09, 0xB7, 0x09, 0xF9, 0x02, 0x09, 0xFA, 0x82, 0x09, 0xF9, 0x09, 0xB8, 0x11, 0x96, 0x01, 0x09, 0x54, 0xA8, 0x09, 0x55, 0x09, 0x75, 0x09, 0x97, 0x09, 0xD8, 0x09, 0xF9, 0x0A, 0x1A, 0x12, 0x1A, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0x96, 0x11, 0x75, 0x09, 0x13, 0x09, 0x33, 0x09, 0x74, 0x09, 0x96, 0x11, 0xD8, 0x09, 0xF9, 0x11, 0xF9, 0x12, 0x19, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0xB7, 0x11, 0x96, 0x09, 0x34, 0x01, 0x14, 0x01, 0x76, 0x09, 0xD8, 0x0A, 0x19, 0x09, 0xF9, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xB8, 0x09, 0xB7, 0x11, 0x96, 0x09, 0x55, 0x09, 0x14, 0x09, 0x34, 0x09, 0xB7, 0x09, 0xB8, 0x09, 0xD9, 0x09, 0xFA, 0x02, 0x09, 0xD9, 0x84, 0x09, 0xB8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x11, 0x85, 0x19, 0x32, 0x19, 0x74, 0x11, 0xB6, 0x11, 0xF8, 0x09, 0xF9, 0x09, 0xFA, 0x02, 0x01, 0xB9, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x01, 0x09, 0xFA, 0x87, 0x09, 0xB9, 0x11, 0x97, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x06, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, + 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x02, 0x19, 0x31, 0x8E, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF8, 0x1A, 0x19, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x74, 0x11, 0x53, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x05, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, + 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x34, 0x11, 0x75, 0x09, 0x97, 0x09, 0xD8, 0x09, 0xB9, 0x09, 0xD9, 0x09, 0xDA, 0x03, 0x01, 0xD9, 0x88, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xF8, 0x19, 0xF8, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x32, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x08, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x19, 0x11, 0x8A, 0x19, 0x53, 0x11, 0x54, 0x19, 0x95, 0x19, 0xD7, 0x21, 0xF8, 0x22, 0x18, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x13, 0x11, 0x12, 0x11, 0x11, 0x01, 0x21, 0x31, 0x80, 0x19, 0x10, 0x08, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x21, 0x11, 0x84, 0x19, 0x11, 0x19, 0x32, 0x19, 0x13, 0x11, 0x33, 0x11, 0x34, 0x01, 0x11, + 0x54, 0x86, 0x11, 0x74, 0x11, 0x75, 0x11, 0x74, 0x11, 0x94, 0x19, 0x94, 0x19, 0x73, 0x19, 0x52, 0x01, 0x19, 0x11, 0x81, 0x21, 0x11, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x87, 0x28, 0xF0, 0x30, 0xB0, 0x40, 0x30, 0xAA, 0x7A, 0xD2, 0xDD, 0xDA, 0x9E, 0xE2, 0x5E, 0xE2, 0x3E, 0x01, 0xEA, 0x1F, 0x02, 0xF1, 0xFF, 0x01, 0xE9, 0xFF, 0x80, 0xEA, 0x1F, 0x01, 0xE2, 0x3E, 0x8A, 0xE2, 0x5E, 0xDA, 0x7E, 0xD2, 0x9D, 0xCB, 0x1D, 0xA2, 0x59, 0x38, 0x0F, 0x30, 0x90, 0x28, 0xAF, 0x28, 0xF0, 0x29, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x88, 0x19, 0x11, 0x19, 0x32, 0x09, 0x13, 0x22, 0x18, 0x1A, 0x39, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x33, 0x19, 0x32, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8A, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x12, 0x19, 0x12, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, + 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x09, 0x29, 0x30, 0x80, 0x29, 0x10, 0x0E, 0x29, 0x30, 0x80, 0x31, 0x50, 0x02, 0x31, 0x30, 0x81, 0x31, 0x51, 0x31, 0x31, 0x04, 0x31, 0x51, 0x80, 0x31, 0x71, 0x01, 0x31, 0x51, 0x01, 0x39, 0x71, 0x01, 0x39, 0x72, 0x81, 0x39, 0x71, 0x39, 0x72, 0x02, 0x41, 0x92, 0x03, 0x41, 0x93, 0x02, 0x49, 0xB3, 0x8B, 0x49, 0x93, 0x49, 0xB3, 0x51, 0xB3, 0x51, 0xB2, 0x59, 0xB2, 0x61, 0xB2, 0x61, 0xB1, 0x61, 0x4F, 0xAB, 0x56, 0xDC, 0xBB, 0xDC, 0x9A, 0xDC, 0x59, 0x01, 0xDC, 0x38, 0x80, 0xDC, 0x37, 0x04, 0xDC, 0x17, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x17, 0x01, 0xDC, 0x16, 0x80, 0xDB, 0xF6, 0x02, 0xDC, 0x16, 0x0B, 0xDB, 0xF6, 0x09, 0xDB, 0xD6, 0x01, 0xDB, 0xB6, 0x01, 0xDB, 0xD6, 0x82, 0xD3, 0xD6, 0xDB, 0xD6, 0xDB, 0xB6, 0x04, 0xD3, 0xB6, 0x81, 0xD3, 0xD6, 0xD3, 0xB6, 0x01, 0xD3, 0xD7, 0x03, 0xCB, 0xB7, 0x84, 0xBB, 0x96, 0xBB, 0xB6, 0xBB, 0xF7, 0xBC, 0x38, 0xC4, 0x79, 0x01, 0xBC, 0x79, 0x8C, 0xBC, 0x58, 0xB4, 0x58, 0xBC, 0x58, 0xBC, 0x38, 0xBB, 0xF7, 0xC3, 0xD7, 0xBB, 0x76, 0xBB, 0x55, 0xC3, 0x76, 0xCB, 0x76, 0xD3, 0x96, 0xCB, 0x56, 0xD3, 0x96, 0x01, 0xD3, 0x76, 0xA2, 0xD3, 0x97, 0xCB, 0x96, 0xC3, 0x97, 0xB3, 0xB7, 0xA3, 0xB7, 0x94, 0x18, 0x8C, 0x9A, 0x7C, 0xBA, 0x6C, 0xDB, 0x5C, 0xBB, 0x64, 0xFC, 0x5C, 0x9A, 0x6C, 0xDA, 0x84, 0xDA, 0x8C, 0x99, 0x94, 0x38, 0x9B, 0xD6, + 0xA3, 0xD6, 0xA3, 0xB6, 0x9B, 0x95, 0xA3, 0xD7, 0x93, 0xF7, 0x8C, 0x18, 0x8C, 0x9A, 0x8C, 0xDC, 0x8D, 0x3E, 0x85, 0x1D, 0x2A, 0x12, 0x11, 0x2F, 0x21, 0x70, 0x39, 0xB2, 0x39, 0x91, 0x39, 0x92, 0x39, 0x91, 0x39, 0x71, 0x01, 0x39, 0x91, 0x02, 0x39, 0x71, 0x82, 0x39, 0x51, 0x31, 0x51, 0x39, 0x71, 0x05, 0x31, 0x51, 0x04, 0x31, 0x30, 0x03, 0x29, 0x30, 0x80, 0x29, 0x50, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x07, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x87, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x84, 0x19, 0x11, 0x11, 0x11, 0x11, 0x53, 0x11, 0xB6, 0x09, 0xB7, 0x01, 0x09, 0xD9, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x8C, 0x01, 0xB9, 0x01, 0xF9, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0xB5, 0x11, 0x73, 0x10, 0xF1, 0x19, 0x31, 0x21, 0x51, 0x29, 0x31, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x88, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, + 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x21, 0x11, 0x19, 0x12, 0x19, 0x32, 0x11, 0x34, 0x11, 0x96, 0x11, 0xD8, 0x02, 0x09, 0xF9, 0x83, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xB8, 0x01, 0x56, 0x01, 0x01, 0x35, 0x83, 0x09, 0x76, 0x09, 0xB7, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x80, 0x09, 0x77, 0x02, 0x09, 0x55, 0x82, 0x11, 0x76, 0x09, 0x77, 0x09, 0xD8, 0x03, 0x09, 0xD9, 0x86, 0x09, 0xD8, 0x09, 0x76, 0x11, 0x54, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x8B, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x19, 0x12, 0x19, 0x33, 0x11, 0x55, 0x11, 0x96, 0x09, 0xB8, 0x01, 0x09, 0xF9, 0x84, 0x09, 0xFA, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0x97, 0x09, 0x75, 0x01, 0x09, 0x55, 0x82, 0x09, 0x96, 0x09, 0xB8, 0x09, 0xF9, 0x02, 0x09, 0xFA, 0x83, 0x09, 0xD9, 0x09, 0xB8, 0x09, 0x96, 0x09, 0x55, 0x01, 0x09, 0x54, 0xA7, 0x09, 0x76, 0x09, 0x97, 0x09, 0xD9, 0x09, 0xFA, 0x09, 0xF9, 0x0A, 0x1A, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0x96, 0x11, 0x75, 0x11, 0x34, 0x09, 0x33, 0x09, 0x74, 0x11, 0x96, 0x09, 0xD8, 0x11, 0xF9, 0x09, 0xF9, 0x12, 0x1A, 0x09, 0xD9, 0x09, 0xB8, 0x09, 0x97, 0x11, 0x96, 0x09, 0x35, 0x01, 0x14, 0x09, 0x76, 0x01, 0xB8, 0x09, 0xF9, 0x0A, 0x1A, 0x09, 0xF9, 0x01, 0xD9, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0x96, 0x11, 0x75, 0x01, 0x13, 0x09, 0x35, 0x11, 0xB7, 0x09, 0xD8, 0x09, 0xD9, 0x09, 0xFA, + 0x02, 0x09, 0xD9, 0x8E, 0x11, 0xF9, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x74, 0x11, 0x96, 0x11, 0xF8, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x01, 0x09, 0xDA, 0x83, 0x11, 0xD9, 0x11, 0xB7, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x11, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, + 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x19, 0x10, 0x02, 0x19, 0x31, 0x80, 0x19, 0x52, 0x01, 0x11, 0x33, 0x8A, 0x11, 0x54, 0x11, 0x76, 0x11, 0xD7, 0x11, 0xF8, 0x1A, 0x19, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x02, 0x21, 0x31, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x52, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x09, 0x97, 0x11, 0xD8, 0x09, 0xF9, 0x01, 0x09, + 0xD9, 0x8C, 0x01, 0xD9, 0x09, 0xD9, 0x01, 0xD9, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xF8, 0x19, 0xD7, 0x19, 0x96, 0x19, 0x74, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x87, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x05, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x11, 0x19, 0x31, 0x19, 0x12, 0x19, 0x33, 0x11, 0x33, 0x11, 0x75, 0x19, 0xD7, 0x01, 0x22, 0x18, 0x83, 0x19, 0xB6, 0x11, 0x55, 0x08, 0xF2, 0x11, 0x12, 0x01, 0x19, 0x32, 0x80, 0x21, 0x51, 0x20, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x19, 0x11, 0x8B, 0x19, 0x12, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x11, 0xB7, 0x19, 0xF7, 0x11, 0xF7, 0x1A, 0x18, 0x11, 0xF7, 0x11, 0xD6, 0x01, 0x11, 0xB5, 0x84, 0x11, 0x73, 0x11, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x91, 0x29, 0x0F, 0x29, 0x10, 0x28, 0xF0, 0x28, 0xD0, 0x30, 0x70, 0x61, 0x14, 0xCB, 0x1D, 0xDA, 0xDE, 0xDA, 0x5D, 0xE2, 0x1E, 0xEA, 0x1E, 0xEA, 0x1F, 0xF2, 0x1F, 0xF1, 0xFF, 0xF1, 0xDF, 0xF1, 0xFF, 0xF1, 0xDF, 0xF1, 0xFF, 0x01, 0xEA, 0x1F, 0x89, 0xEA, 0x1E, 0xE2, 0x3E, 0xDA, 0x3D, 0xDA, 0x7D, 0xDA, 0xFE, 0xCB, 0x5E, 0x48, 0x30, 0x30, + 0x4F, 0x30, 0xD0, 0x28, 0xF0, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x87, 0x19, 0x32, 0x11, 0x33, 0x1A, 0x18, 0x1A, 0x39, 0x19, 0xF8, 0x11, 0x76, 0x11, 0x13, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x75, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x08, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x0B, 0x29, 0x30, 0x80, 0x29, 0x10, 0x09, 0x29, 0x30, 0x82, 0x31, 0x50, 0x29, 0x30, 0x31, 0x30, 0x02, 0x29, 0x30, 0x01, 0x31, 0x30, 0x80, 0x31, 0x50, 0x03, 0x31, 0x51, 0x80, 0x31, 0x31, 0x05, 0x31, 0x51, 0x80, 0x39, 0x71, 0x04, 0x39, 0x72, 0x01, 0x41, 0x92, 0x80, 0x41, 0xB3, 0x03, 0x41, 0x93, 0x85, 0x49, 0x93, 0x49, 0xB3, 0x51, 0xB3, 0x51, 0xD3, 0x51, 0xB3, 0x51, 0xB2, 0x01, 0x59, 0xB2, 0x83, 0x61, 0x91, 0x61, 0x4F, + 0xA3, 0x36, 0xDC, 0x9B, 0x01, 0xDC, 0x59, 0x83, 0xDC, 0x58, 0xDC, 0x38, 0xDC, 0x17, 0xDC, 0x37, 0x04, 0xDC, 0x17, 0x80, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x03, 0xDC, 0x16, 0x80, 0xDB, 0xF6, 0x01, 0xDC, 0x16, 0x01, 0xDB, 0xF6, 0x80, 0xDC, 0x16, 0x07, 0xDB, 0xF6, 0x02, 0xDB, 0xD6, 0x01, 0xDB, 0xB6, 0x01, 0xDB, 0xD6, 0x04, 0xDB, 0xB6, 0x82, 0xDB, 0x95, 0xDB, 0xB6, 0xDB, 0xD6, 0x04, 0xDB, 0xB6, 0x81, 0xD3, 0x95, 0xD3, 0x96, 0x03, 0xD3, 0xB6, 0x80, 0xDB, 0xD7, 0x02, 0xD3, 0xB7, 0x01, 0xCB, 0x96, 0x85, 0xCB, 0xD7, 0xC3, 0xB6, 0xBB, 0xD7, 0xB3, 0xD7, 0xAB, 0x96, 0xBC, 0x38, 0x01, 0xBC, 0x58, 0x01, 0xB4, 0x38, 0x84, 0xBC, 0x38, 0xBC, 0x17, 0xC3, 0xF7, 0xBB, 0xB6, 0xC3, 0x96, 0x01, 0xC3, 0x76, 0x94, 0xCB, 0x76, 0xD3, 0x76, 0xCB, 0x76, 0xCB, 0x56, 0xCB, 0x76, 0xCB, 0x97, 0xCB, 0x96, 0xC3, 0x97, 0xB3, 0x97, 0xA3, 0xB7, 0x94, 0x18, 0x94, 0x9A, 0x84, 0xBB, 0x74, 0x9A, 0x74, 0xFC, 0x7D, 0x3C, 0x7C, 0xDA, 0x74, 0x17, 0x8C, 0x79, 0xA4, 0xDA, 0xA4, 0x79, 0x01, 0x9B, 0xD6, 0x8D, 0x9B, 0xF7, 0x8B, 0xD7, 0x84, 0x38, 0x84, 0x9A, 0x8D, 0x3C, 0x8D, 0x5E, 0x85, 0x3E, 0x42, 0xF5, 0x11, 0x0F, 0x29, 0x91, 0x31, 0xB2, 0x39, 0xD2, 0x39, 0xB2, 0x39, 0x92, 0x01, 0x41, 0x92, 0x80, 0x39, 0x91, 0x03, 0x39, 0x71, 0x01, 0x39, 0x51, 0x81, 0x39, 0x72, 0x39, 0x51, 0x02, 0x31, 0x51, 0x80, 0x31, 0x71, 0x01, 0x31, 0x51, 0x01, 0x31, 0x31, 0x80, 0x31, 0x51, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x0C, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x07, 0x29, 0x30, 0x81, 0x29, 0x10, + 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x87, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD7, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x89, 0x11, 0xD8, 0x11, 0xD6, 0x11, 0x74, 0x08, 0xD1, 0x19, 0x31, 0x29, 0x52, 0x29, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x06, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x31, 0x21, 0x11, 0x21, 0x32, 0x19, 0x32, 0x11, 0x34, 0x11, 0x96, 0x11, 0xB7, 0x02, 0x09, 0xF9, 0x83, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0x97, 0x01, 0x56, 0x01, 0x01, 0x35, 0x81, 0x09, 0x76, 0x09, 0xB7, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x82, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0x76, 0x02, 0x09, 0x55, 0x82, 0x09, 0x76, 0x09, 0x97, 0x09, 0xD8, 0x03, 0x09, 0xD9, 0x86, 0x09, 0xB8, 0x09, 0x75, 0x11, 0x54, 0x19, 0x53, 0x21, 0x31, 0x21, + 0x10, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x11, 0x19, 0x12, 0x19, 0x33, 0x11, 0x54, 0x11, 0x96, 0x09, 0xB8, 0x01, 0x09, 0xD9, 0x84, 0x09, 0xDA, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0x97, 0x09, 0x76, 0x01, 0x09, 0x55, 0x82, 0x01, 0x76, 0x09, 0xB7, 0x09, 0xF9, 0x02, 0x09, 0xFA, 0x82, 0x09, 0xD9, 0x09, 0xB8, 0x09, 0x76, 0x02, 0x09, 0x54, 0x89, 0x09, 0x75, 0x09, 0xB7, 0x09, 0xD9, 0x09, 0xFA, 0x0A, 0x1A, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0x96, 0x11, 0x75, 0x01, 0x09, 0x34, 0x82, 0x09, 0x55, 0x09, 0x96, 0x09, 0xD8, 0x02, 0x09, 0xF9, 0x89, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0x97, 0x11, 0x96, 0x09, 0x14, 0x01, 0x14, 0x09, 0x76, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xF9, 0x01, 0x01, 0xD9, 0x87, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xB6, 0x11, 0x75, 0x01, 0x13, 0x09, 0x34, 0x09, 0x97, 0x09, 0xB8, 0x01, 0x09, 0xFA, 0x88, 0x09, 0xD9, 0x01, 0xB9, 0x09, 0xB9, 0x09, 0xB8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x53, 0x19, 0x32, 0x11, 0x11, 0x01, 0x19, 0x32, 0x83, 0x19, 0x74, 0x11, 0xB6, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x89, 0x09, 0xDA, 0x09, 0xB9, 0x11, 0xD9, 0x11, 0x96, 0x11, 0x54, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, + 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x08, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x0C, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x08, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x30, 0x90, 0x19, 0x31, 0x19, 0x51, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x19, 0xF8, 0x1A, 0x39, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x96, 0x11, 0x74, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x07, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, + 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD8, 0x01, 0x11, 0xF9, 0x02, 0x09, 0xD9, 0x01, 0x09, 0xD8, 0x86, 0x11, 0xF8, 0x11, 0xD7, 0x19, 0xB7, 0x11, 0x75, 0x19, 0x54, 0x19, 0x33, 0x19, 0x12, 0x01, 0x19, 0x11, 0x8B, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x08, 0x21, 0x30, 0x8F, 0x21, 0x31, 0x21, 0x32, 0x19, 0x12, 0x11, 0x12, 0x11, 0x34, 0x11, 0x75, 0x19, 0xD7, 0x22, 0x18, 0x21, 0xF8, 0x19, 0xD7, 0x11, 0x54, 0x09, 0x13, 0x11, 0x12, 0x19, 0x53, 0x19, 0x52, 0x19, 0x32, 0x07, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x21, 0x31, 0x21, 0x32, 0x21, 0x31, 0x01, 0x19, 0x31, 0x02, 0x21, 0x31, 0x81, 0x19, 0x11, 0x21, 0x31, 0x07, 0x19, 0x11, 0x01, 0x19, 0x32, + 0x84, 0x19, 0x53, 0x11, 0x54, 0x11, 0x95, 0x11, 0x96, 0x11, 0xB7, 0x01, 0x11, 0xD8, 0x83, 0x11, 0xF9, 0x11, 0xF8, 0x12, 0x19, 0x11, 0xF8, 0x01, 0x11, 0xF7, 0x84, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x73, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x8D, 0x21, 0x0F, 0x29, 0x10, 0x28, 0xF0, 0x28, 0xD0, 0x28, 0x90, 0x38, 0x50, 0x81, 0xD7, 0xD3, 0x3E, 0xDA, 0x9D, 0xDA, 0x3D, 0xEA, 0x3E, 0xEA, 0x1E, 0xE9, 0xFF, 0xF1, 0xFF, 0x02, 0xF1, 0xDF, 0x80, 0xF9, 0xFF, 0x01, 0xF1, 0xFF, 0x80, 0xE9, 0xFE, 0x01, 0xEA, 0x1E, 0x88, 0xE2, 0x3E, 0xE2, 0x7E, 0xDA, 0xBD, 0xDB, 0x9F, 0x60, 0xF3, 0x38, 0x4F, 0x30, 0xB0, 0x28, 0xF0, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x88, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x8D, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x13, 0x1A, 0x18, 0x1A, 0x39, 0x19, 0xD8, 0x11, 0x96, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x31, 0x19, 0x32, 0x09, 0x12, + 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x55, 0x11, 0x13, 0x19, 0x12, 0x21, 0x11, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x0C, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x07, 0x29, 0x30, 0x80, 0x29, 0x10, 0x0C, 0x29, 0x30, 0x80, 0x31, 0x50, 0x03, 0x31, 0x30, 0x80, 0x31, 0x50, 0x02, 0x31, 0x51, 0x80, 0x31, 0x31, 0x03, 0x31, 0x51, 0x82, 0x39, 0x71, 0x39, 0x51, 0x39, 0x71, 0x01, 0x39, 0x72, 0x80, 0x41, 0x92, 0x01, 0x39, 0x72, 0x01, 0x41, 0x92, 0x03, 0x41, 0x93, 0x82, 0x41, 0x92, 0x49, 0x92, 0x49, 0xB3, 0x01, 0x51, 0xD3, 0x8A, 0x51, 0xB3, 0x51, 0x92, 0x59, 0xB2, 0x59, 0xB1, 0x61, 0xB1, 0x69, 0x6F, 0xAB, 0x77, 0xDC, 0x9B, 0xDC, 0x79, 0xDC, 0x59, 0xDC, 0x38, 0x01, 0xDC, 0x17, 0x80, 0xDC, 0x37, 0x05, 0xDC, 0x17, 0x83, 0xDC, 0x16, 0xDC, 0x17, 0xDC, 0x16, 0xDB, 0xF6, 0x04, 0xDC, 0x16, 0x08, 0xDB, 0xF6, 0x03, 0xDB, 0xD6, 0x80, 0xDB, 0xB6, 0x01, 0xDB, 0xD6, 0x80, 0xDB, 0xB6, 0x02, 0xDB, 0xD6, 0x0B, 0xDB, 0xB6, 0x01, 0xDB, 0x96, 0x01, 0xD3, 0x96, 0x01, 0xDB, 0x96, 0x80, 0xDB, 0xB6, 0x03, 0xDB, 0x96, 0x84, 0xDB, 0xB7, 0xD3, 0x96, 0xCB, 0xB7, 0xCB, 0xD7, 0xC3, 0xD7, 0x01, 0xB3, 0xB7, 0x8D, 0xB3, 0xD7, 0xBC, 0x18, 0xB4, 0x18, 0xB4, 0x17, 0xBC, 0x58, 0xBC, 0x38, 0xBC, 0x18, 0xBC, 0x17, 0xC3, 0xF7, 0xC3, 0xD7, 0xC3, 0x96, 0xC3, 0x76, 0xC3, 0x56, 0xCB, 0x76, 0x01, 0xD3, 0x76, 0x90, 0xD3, 0x96, 0xCB, 0x76, 0xCB, 0x97, 0xBB, 0x76, 0xB3, 0x97, 0xA3, 0x97, 0xA4, 0x39, 0x94, 0x7A, + 0x8C, 0x9A, 0x84, 0xDB, 0x84, 0xBB, 0x84, 0xDB, 0x8C, 0x99, 0x94, 0x79, 0x9C, 0x99, 0xA4, 0x99, 0x9C, 0x38, 0x01, 0x9C, 0x58, 0x8B, 0x8C, 0x58, 0x8C, 0xBA, 0x8D, 0x3C, 0x95, 0x9E, 0x95, 0x9F, 0x6C, 0x5B, 0x11, 0x70, 0x21, 0x91, 0x31, 0xD2, 0x39, 0xD2, 0x41, 0xB2, 0x39, 0xB2, 0x02, 0x41, 0x92, 0x81, 0x41, 0x72, 0x39, 0x71, 0x01, 0x39, 0x72, 0x82, 0x39, 0x71, 0x39, 0x51, 0x39, 0x72, 0x01, 0x39, 0x51, 0x08, 0x31, 0x51, 0x80, 0x31, 0x30, 0x02, 0x31, 0x50, 0x11, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD7, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x09, 0xD9, 0x88, 0x09, 0xD8, 0x19, 0xD7, 0x19, 0x95, 0x10, 0xF2, 0x19, 0x11, 0x29, 0x52, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x05, 0x29, + 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x8A, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x19, 0x12, 0x19, 0x32, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD8, 0x09, 0xD8, 0x03, 0x09, 0xF9, 0x81, 0x09, 0x97, 0x01, 0x56, 0x01, 0x01, 0x35, 0x81, 0x09, 0x96, 0x09, 0xB7, 0x03, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x81, 0x09, 0x97, 0x01, 0x55, 0x01, 0x09, 0x55, 0x82, 0x09, 0x76, 0x11, 0xB7, 0x09, 0xB8, 0x03, 0x09, 0xD9, 0x83, 0x09, 0xD8, 0x09, 0x76, 0x11, 0x54, 0x19, 0x32, 0x01, 0x21, 0x31, 0x87, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x21, 0x11, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x11, 0x96, 0x09, 0xB8, 0x01, 0x09, 0xD9, 0x8A, 0x09, 0xFA, 0x09, 0xF9, 0x09, 0xB8, 0x09, 0x97, 0x09, 0x76, 0x09, 0x55, 0x01, 0x55, 0x09, 0x96, 0x09, 0xB7, 0x09, 0xD9, 0x0A, 0x1A, 0x01, 0x09, 0xFA, 0xAC, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0x96, 0x09, 0x55, 0x09, 0x54, 0x09, 0x55, 0x09, 0x76, 0x09, 0xB7, 0x09, 0xD9, 0x0A, 0x1A, 0x09, 0xFA, 0x0A, 0x1A, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0x96, 0x11, 0x75, 0x11, 0x54, 0x09, 0x34, 0x09, 0x55, 0x09, 0x96, 0x09, 0xD8, 0x11, 0xF9, 0x09, 0xF9, 0x12, 0x1A, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x09, 0x14, 0x09, 0x34, 0x09, 0x76, 0x09, 0xD8, 0x09, 0xF9, 0x09, 0xFA, 0x01, 0xFA, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0x96, 0x11, 0x75, 0x09, 0x14, 0x09, 0x34, 0x09, 0x97, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0x09, 0xDA, 0x01, 0x09, + 0xB9, 0x83, 0x09, 0xB8, 0x09, 0x96, 0x11, 0x95, 0x11, 0x53, 0x03, 0x19, 0x32, 0x94, 0x19, 0x74, 0x11, 0xD7, 0x11, 0xF8, 0x09, 0xD9, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x09, 0xDA, 0x09, 0xBA, 0x09, 0xB9, 0x11, 0xB8, 0x11, 0x75, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x04, 0x21, + 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x87, 0x21, 0x51, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x55, 0x11, 0x96, 0x11, 0xD8, 0x01, 0x1A, 0x19, 0x84, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x12, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xF9, 0x01, 0x09, 0xD9, 0x88, 0x09, 0xB8, 0x11, 0xD8, 0x11, 0xB8, 0x11, 0xB7, 0x11, 0x96, + 0x11, 0x75, 0x19, 0x75, 0x19, 0x53, 0x11, 0x12, 0x01, 0x19, 0x12, 0x80, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x19, 0x32, 0x19, 0x12, 0x01, 0x11, 0x33, 0x81, 0x19, 0x75, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x85, 0x21, 0xD7, 0x19, 0x95, 0x09, 0x13, 0x09, 0x12, 0x10, 0xF2, 0x11, 0x12, 0x05, 0x11, 0x11, 0x82, 0x10, 0xF1, 0x11, 0x11, 0x19, 0x11, 0x04, 0x11, 0x11, 0x01, 0x19, 0x32, 0x01, 0x19, 0x12, 0x81, 0x11, 0x11, 0x11, 0x12, 0x01, 0x10, 0xF1, 0x80, 0x19, 0x12, 0x01, 0x19, 0x11, 0x80, 0x19, 0x12, 0x02, 0x10, 0xF1, 0x03, 0x10, 0xF2, 0x85, 0x11, 0x12, 0x11, 0x13, 0x09, 0x34, 0x09, 0x55, 0x09, 0x76, 0x09, 0x97, 0x01, 0x09, 0xB8, 0x01, 0x09, 0xD9, 0x02, 0x09, 0xF9, 0x8B, 0x12, 0x19, 0x12, 0x18, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x94, 0x11, 0x52, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x8C, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x28, 0xD0, 0x30, 0x8F, 0x38, 0x30, 0x92, 0x19, 0xD2, 0xFE, 0xDA, 0x5D, 0xE2, 0x5E, 0xF2, 0x5F, 0xEA, 0x1F, 0x02, 0xF1, 0xFF, 0x81, 0xF1, 0xDF, 0xF9, 0xDF, 0x01, 0xF9, 0xFF, 0x01, 0xF1, 0xFF, 0x8B, 0xF2, 0x1F, 0xF2, 0x3F, 0xF2, 0x5F, 0xE2, + 0x5E, 0xDA, 0x7D, 0xD3, 0x1E, 0x71, 0x35, 0x38, 0x0F, 0x30, 0x90, 0x28, 0xD0, 0x29, 0x10, 0x20, 0xEF, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x8C, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x12, 0x11, 0x13, 0x19, 0xF7, 0x1A, 0x39, 0x19, 0xD8, 0x11, 0x76, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xF7, 0x01, 0x1A, 0x18, 0x84, 0x11, 0x75, 0x11, 0x13, 0x19, 0x12, 0x21, 0x11, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x16, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x09, 0x29, 0x30, 0x83, 0x31, 0x50, 0x31, 0x30, 0x31, 0x50, 0x31, 0x30, 0x01, 0x31, 0x50, 0x81, 0x31, 0x30, 0x31, 0x50, 0x04, 0x31, 0x51, 0x80, 0x31, 0x52, 0x01, 0x31, 0x51, 0x04, 0x39, 0x72, 0x82, 0x39, 0x52, 0x39, 0x72, 0x39, 0x92, 0x01, 0x41, 0x92, 0x83, 0x41, 0x93, 0x41, 0x92, 0x41, 0x93, 0x41, 0x92, 0x01, 0x49, 0xB3, 0x01, 0x51, 0xD3, 0x80, 0x51, 0xB3, 0x01, 0x51, 0xB2, 0x8B, 0x59, 0x92, 0x59, 0x91, 0x59, 0x6F, 0x69, 0x90, 0xBB, + 0xD8, 0xDC, 0xBB, 0xDC, 0x79, 0xDC, 0x58, 0xD4, 0x17, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x38, 0x01, 0xDC, 0x17, 0x80, 0xDC, 0x37, 0x03, 0xDC, 0x17, 0x81, 0xDC, 0x16, 0xDC, 0x17, 0x04, 0xDC, 0x16, 0x03, 0xDB, 0xF6, 0x80, 0xDC, 0x16, 0x02, 0xDB, 0xF6, 0x08, 0xDB, 0xD6, 0x02, 0xDB, 0xB6, 0x01, 0xDB, 0xD6, 0x03, 0xDB, 0xB6, 0x80, 0xD3, 0x95, 0x01, 0xDB, 0x96, 0x02, 0xDB, 0xB6, 0x80, 0xDB, 0x95, 0x04, 0xDB, 0xB6, 0x82, 0xDB, 0x96, 0xD3, 0x76, 0xDB, 0x96, 0x03, 0xDB, 0x76, 0x02, 0xD3, 0x96, 0x01, 0xCB, 0xB7, 0x83, 0xC3, 0xD7, 0xC3, 0xB7, 0xBB, 0xB6, 0xB3, 0x96, 0x02, 0xBB, 0xF7, 0x83, 0xB3, 0xF7, 0xBC, 0x18, 0xBC, 0x38, 0xBC, 0x18, 0x01, 0xBB, 0xF7, 0x84, 0xBB, 0xB7, 0xC3, 0x96, 0xC3, 0x55, 0xC3, 0x36, 0xD3, 0x76, 0x01, 0xCB, 0x76, 0x01, 0xCB, 0x97, 0x8A, 0xBB, 0x76, 0xB3, 0x76, 0xAB, 0x97, 0xA4, 0x18, 0x9C, 0x5A, 0x94, 0x9A, 0x8C, 0x7A, 0x84, 0x59, 0x84, 0x38, 0x83, 0xD7, 0x94, 0x79, 0x01, 0x9C, 0x99, 0x8D, 0x94, 0x99, 0x94, 0xDA, 0x95, 0x3B, 0x8D, 0x3C, 0x8D, 0x7D, 0x8D, 0x5D, 0x74, 0xBC, 0x19, 0xD1, 0x21, 0xB1, 0x31, 0xD2, 0x41, 0xF3, 0x41, 0xD2, 0x41, 0xB2, 0x41, 0xD3, 0x04, 0x41, 0x92, 0x81, 0x41, 0x72, 0x39, 0x71, 0x01, 0x39, 0x72, 0x80, 0x39, 0x92, 0x01, 0x39, 0x72, 0x80, 0x39, 0x51, 0x08, 0x31, 0x51, 0x02, 0x31, 0x30, 0x0A, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x06, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, + 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x89, 0x19, 0x12, 0x11, 0x12, 0x11, 0x75, 0x19, 0xF8, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0x99, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x89, 0x01, 0xB9, 0x09, 0xDA, 0x09, 0xB9, 0x09, 0xB8, 0x11, 0xD7, 0x21, 0xF6, 0x08, 0xF2, 0x19, 0x11, 0x21, 0x52, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x87, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x31, 0x19, 0x12, 0x19, 0x32, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD8, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x83, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xB8, 0x01, 0x76, 0x01, 0x01, 0x35, 0x83, 0x09, 0x76, 0x09, 0xB7, 0x09, 0xF8, 0x09, 0xD9, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x87, 0x09, 0x97, 0x01, 0x55, 0x09, 0x55, 0x01, 0x35, 0x09, 0x76, 0x09, 0x97, 0x09, 0xB8, 0x09, 0xD9, 0x03, 0x09, 0xD8, 0x85, 0x09, 0x95, 0x09, 0x33, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x87, 0x21, 0x30, 0x21, 0x10, 0x21, + 0x11, 0x19, 0x11, 0x19, 0x33, 0x11, 0x54, 0x11, 0x76, 0x09, 0xB8, 0x02, 0x09, 0xF9, 0x88, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xB7, 0x09, 0x56, 0x09, 0x55, 0x01, 0x55, 0x01, 0x76, 0x09, 0xB7, 0x09, 0xD9, 0x01, 0x09, 0xFA, 0x01, 0x09, 0xD9, 0x87, 0x09, 0xB8, 0x09, 0x76, 0x09, 0x54, 0x09, 0x34, 0x09, 0x55, 0x09, 0x76, 0x09, 0x97, 0x09, 0xB8, 0x02, 0x09, 0xF9, 0x88, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x09, 0x34, 0x09, 0x75, 0x09, 0x96, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x89, 0x12, 0x1A, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0xB7, 0x11, 0x96, 0x09, 0x34, 0x01, 0x14, 0x01, 0x76, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0x09, 0xFA, 0x01, 0x09, 0xD9, 0x9A, 0x09, 0xB8, 0x11, 0xB7, 0x11, 0x75, 0x09, 0x14, 0x09, 0x55, 0x09, 0x97, 0x09, 0xB8, 0x09, 0xD9, 0x09, 0xFA, 0x09, 0xDA, 0x09, 0xD9, 0x09, 0xB9, 0x09, 0xB8, 0x09, 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x32, 0x19, 0x54, 0x11, 0xB6, 0x11, 0xF8, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0x99, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x02, 0x01, 0xBA, 0x88, 0x09, 0xDA, 0x09, 0xD9, 0x11, 0xD9, 0x11, 0x97, 0x11, 0x55, 0x11, 0x12, 0x19, 0x31, 0x19, 0x11, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, + 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x0C, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x19, 0x31, 0x85, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x01, 0x1A, 0x19, 0x89, 0x19, 0xF8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x33, 0x19, 0x32, 0x19, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x88, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, + 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x89, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x87, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xF8, 0x12, 0x19, 0x11, 0xF8, 0x01, 0x11, 0xD8, 0x01, 0x11, 0xB7, 0x84, 0x11, 0x96, 0x11, 0x55, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x19, 0x32, 0x83, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x21, 0xF7, + 0x85, 0x21, 0xD7, 0x21, 0xB6, 0x11, 0x54, 0x09, 0x13, 0x11, 0x13, 0x09, 0x12, 0x06, 0x11, 0x12, 0x01, 0x10, 0xF2, 0x01, 0x08, 0xF2, 0x03, 0x11, 0x12, 0x01, 0x10, 0xF2, 0x01, 0x11, 0x12, 0x82, 0x10, 0xF2, 0x11, 0x12, 0x10, 0xF2, 0x01, 0x11, 0x12, 0x03, 0x10, 0xF2, 0x81, 0x11, 0x12, 0x11, 0x13, 0x01, 0x11, 0x33, 0x85, 0x11, 0x34, 0x11, 0x54, 0x11, 0x75, 0x09, 0x76, 0x09, 0xB7, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x02, 0x01, 0xD9, 0x88, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xF8, 0x11, 0xD8, 0x11, 0xB7, 0x19, 0xB6, 0x19, 0x94, 0x11, 0x12, 0x01, 0x19, 0x31, 0x81, 0x21, 0x30, 0x19, 0x10, 0x02, 0x21, 0x30, 0x8D, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x31, 0x10, 0x28, 0xD0, 0x28, 0x6F, 0x38, 0x0F, 0x92, 0x19, 0xD2, 0xFE, 0xDA, 0x7D, 0xEA, 0x5E, 0xEA, 0x3E, 0x01, 0xF2, 0x1F, 0x80, 0xFA, 0x1F, 0x02, 0xF9, 0xFF, 0x80, 0xF9, 0xDF, 0x01, 0xF9, 0xFF, 0x8B, 0xF1, 0xFF, 0xFA, 0x1F, 0xF2, 0x3F, 0xEA, 0x1E, 0xEA, 0x5E, 0xDA, 0x7D, 0xDB, 0x1F, 0x89, 0xB7, 0x38, 0x0F, 0x30, 0x90, 0x30, 0xD0, 0x29, 0x10, 0x07, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x2F, + 0x21, 0x0F, 0x02, 0x21, 0x30, 0x92, 0x21, 0x31, 0x19, 0x32, 0x11, 0x13, 0x1A, 0x18, 0x1A, 0x19, 0x19, 0xD8, 0x11, 0x76, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x89, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x13, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x75, 0x11, 0x13, 0x19, 0x12, 0x01, 0x21, 0x31, 0x84, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x07, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x13, 0x29, 0x30, 0x85, 0x31, 0x30, 0x29, 0x30, 0x31, 0x50, 0x31, 0x30, 0x31, 0x50, 0x31, 0x30, 0x01, 0x31, 0x50, 0x01, 0x31, 0x51, 0x80, 0x31, 0x71, 0x01, 0x31, 0x51, 0x82, 0x31, 0x71, 0x31, 0x51, 0x39, 0x71, 0x05, 0x39, 0x72, 0x05, 0x41, 0x92, 0x80, 0x49, 0x93, 0x01, 0x49, 0xB3, 0x80, 0x51, 0xD3, 0x01, 0x51, 0xB3, 0x01, 0x51, 0x92, 0x01, 0x59, 0x91, 0x85, 0x59, 0x2F, 0x7A, 0x32, 0xCC, 0x59, 0xDC, 0xBB, 0xDC, 0x79, 0xD4, 0x38, 0x01, 0xDC, 0x38, 0x80, 0xDC, 0x17, 0x01, 0xDC, 0x37, 0x80, 0xDB, 0xF7, 0x03, 0xDC, 0x17, 0x81, 0xDB, 0xF6, 0xDC, 0x17, 0x01, 0xDC, 0x16, 0x01, 0xDB, 0xF6, 0x01, 0xDC, 0x16, 0x03, 0xDB, 0xF6, 0x80, 0xDC, 0x16, 0x03, 0xDB, 0xF6, 0x81, 0xDB, 0xD6, 0xDB, 0xF6, 0x07, 0xDB, 0xD6, 0x02, 0xDB, 0xB6, 0x82, 0xDB, 0xD6, 0xDB, 0xB6, 0xDB, 0xD6, 0x03, 0xDB, 0xB6, 0x80, 0xDB, 0x96, 0x01, 0xDB, 0xB6, 0x01, 0xDB, 0x96, 0x81, 0xDB, + 0xB6, 0xDB, 0x96, 0x02, 0xDB, 0xB6, 0x02, 0xDB, 0x96, 0x02, 0xDB, 0x76, 0x84, 0xDB, 0x96, 0xD3, 0x76, 0xDB, 0x96, 0xD3, 0x76, 0xD3, 0x96, 0x02, 0xCB, 0x96, 0x91, 0xC3, 0xB6, 0xC3, 0xB7, 0xBB, 0x96, 0xBB, 0xB6, 0xBB, 0xD7, 0xBB, 0xF7, 0xBB, 0xF8, 0xB3, 0xF7, 0xBC, 0x38, 0xBC, 0x18, 0xBC, 0x17, 0xBB, 0xF7, 0xC3, 0xF8, 0xC3, 0x96, 0xC3, 0x36, 0xCB, 0x56, 0xCB, 0x76, 0xCB, 0x97, 0x02, 0xCB, 0x76, 0x98, 0xC3, 0x76, 0xB3, 0x76, 0xB3, 0xD8, 0xA3, 0xF8, 0xA4, 0x59, 0x9C, 0x7A, 0x94, 0x59, 0x8C, 0x39, 0x8C, 0x38, 0x84, 0x17, 0x8C, 0x38, 0x8C, 0x79, 0x94, 0xBA, 0x95, 0x1B, 0x95, 0x5D, 0x95, 0x7D, 0x95, 0x9E, 0x8D, 0x3D, 0x32, 0x52, 0x21, 0x90, 0x31, 0xB1, 0x39, 0xD2, 0x49, 0xF3, 0x41, 0xB2, 0x49, 0xD2, 0x01, 0x49, 0xB2, 0x01, 0x41, 0x92, 0x02, 0x41, 0x72, 0x80, 0x41, 0x92, 0x03, 0x39, 0x72, 0x83, 0x39, 0x92, 0x39, 0x72, 0x31, 0x51, 0x39, 0x72, 0x01, 0x31, 0x51, 0x80, 0x31, 0x71, 0x04, 0x31, 0x51, 0x80, 0x31, 0x31, 0x01, 0x31, 0x30, 0x80, 0x31, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x06, 0x29, 0x30, 0x80, 0x29, 0x10, 0x06, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x87, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x11, 0x32, 0x19, 0x95, 0x19, 0xF8, 0x12, 0x19, 0x09, 0xDA, 0x02, 0x01, 0xBA, 0x03, 0x01, + 0xDA, 0x88, 0x09, 0xDA, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0xD7, 0x21, 0xF6, 0x11, 0x12, 0x11, 0x11, 0x21, 0x52, 0x21, 0x31, 0x02, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x8C, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x91, 0x19, 0x12, 0x19, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xF8, 0x09, 0xD8, 0x09, 0xD9, 0x09, 0xF9, 0x01, 0xD9, 0x09, 0xD8, 0x09, 0xB8, 0x01, 0x56, 0x01, 0x55, 0x01, 0x35, 0x09, 0x76, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0x09, 0xD8, 0x89, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0x96, 0x01, 0x55, 0x09, 0x55, 0x09, 0x75, 0x09, 0x76, 0x09, 0x97, 0x09, 0xD8, 0x09, 0xD9, 0x02, 0x09, 0xD8, 0x86, 0x09, 0xD7, 0x09, 0x95, 0x09, 0x53, 0x11, 0x32, 0x19, 0x51, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD8, 0x01, 0x09, 0xD9, 0x83, 0x09, 0xF9, 0x09, 0xD9, 0x11, 0xD8, 0x09, + 0x97, 0x01, 0x09, 0x55, 0x82, 0x09, 0x75, 0x09, 0x76, 0x09, 0xB7, 0x01, 0x09, 0xF9, 0x84, 0x09, 0xFA, 0x11, 0xFA, 0x11, 0xF9, 0x11, 0xB8, 0x09, 0x96, 0x01, 0x09, 0x54, 0x83, 0x09, 0x55, 0x09, 0x76, 0x09, 0x97, 0x09, 0xD9, 0x02, 0x09, 0xF9, 0x83, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0x96, 0x11, 0x75, 0x01, 0x09, 0x54, 0x82, 0x09, 0x75, 0x09, 0x96, 0x11, 0xD8, 0x01, 0x09, 0xF9, 0x88, 0x12, 0x1A, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0x97, 0x11, 0x96, 0x09, 0x34, 0x01, 0x34, 0x09, 0x76, 0x09, 0xD8, 0x03, 0x09, 0xF9, 0x8A, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0x96, 0x11, 0x75, 0x09, 0x14, 0x09, 0x34, 0x09, 0x97, 0x09, 0xB8, 0x09, 0xD9, 0x09, 0xFA, 0x09, 0xDA, 0x01, 0x09, 0xD9, 0x8C, 0x09, 0xB8, 0x11, 0x96, 0x11, 0x54, 0x11, 0x53, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x75, 0x11, 0xD8, 0x09, 0xF9, 0x01, 0xD9, 0x02, 0x01, 0xB9, 0x01, 0x01, 0xBA, 0x01, 0x01, 0xB9, 0x85, 0x09, 0xB9, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0x96, 0x11, 0x54, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, + 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x8C, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x21, 0x51, 0x21, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x34, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xD8, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x87, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, + 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x05, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x33, 0x11, 0x74, 0x11, 0x96, 0x11, 0xD7, 0x01, 0x11, 0xF8, 0x01, 0x12, 0x19, 0x82, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x01, 0x11, 0x54, 0x82, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x03, 0x19, 0x11, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x8D, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x19, 0x12, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x21, 0xD6, 0x21, 0xF7, 0x21, 0xD7, 0x19, 0x96, 0x21, 0xB6, 0x01, 0x21, 0xD6, 0x82, 0x21, 0xD5, 0x21, 0xB5, 0x19, 0xB5, 0x03, 0x19, 0x94, 0x01, 0x19, 0x74, 0x80, 0x19, 0x94, 0x04, 0x19, 0x74, 0x01, + 0x19, 0x94, 0x80, 0x19, 0x74, 0x01, 0x19, 0x94, 0x01, 0x19, 0x95, 0x01, 0x19, 0x94, 0x05, 0x19, 0xB5, 0x01, 0x21, 0xD6, 0x86, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xF8, 0x09, 0xF8, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x81, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x88, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xD8, 0x19, 0xD7, 0x19, 0xB5, 0x19, 0x53, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x8E, 0x29, 0x10, 0x28, 0xF0, 0x28, 0xD0, 0x30, 0x90, 0x38, 0x30, 0x9A, 0x39, 0xDB, 0x1E, 0xDA, 0x7D, 0xE2, 0x3E, 0xEA, 0x1E, 0xF1, 0xFE, 0xF1, 0xFF, 0xF9, 0xFF, 0xF9, 0xDF, 0xF9, 0xFF, 0x01, 0xF9, 0xDF, 0x02, 0xF9, 0xFF, 0x8A, 0xF1, 0xFF, 0xF1, 0xFE, 0xEA, 0x1E, 0xE2, 0x3E, 0xDA, 0x7E, 0xDB, 0x3F, 0x91, 0xF8, 0x38, 0x0F, 0x30, 0x6F, 0x28, 0xD0, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x8B, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x22, 0x18, 0x1A, 0x39, 0x19, 0xF8, 0x11, 0x76, 0x11, 0x13, 0x19, 0x11, 0x21, + 0x11, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x90, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0x75, 0x11, 0x12, 0x19, 0x32, 0x21, 0x11, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x05, 0x29, 0x30, 0x01, 0x31, 0x30, 0x81, 0x31, 0x50, 0x31, 0x30, 0x01, 0x31, 0x50, 0x03, 0x31, 0x51, 0x01, 0x31, 0x71, 0x81, 0x39, 0x72, 0x39, 0x71, 0x07, 0x39, 0x72, 0x82, 0x41, 0x72, 0x41, 0x93, 0x49, 0x93, 0x02, 0x49, 0xB3, 0x01, 0x49, 0x92, 0x01, 0x51, 0x92, 0x01, 0x51, 0x71, 0x87, 0x59, 0x91, 0x59, 0x70, 0x61, 0x6F, 0x9B, 0x15, 0xE5, 0x1D, 0xDC, 0x9A, 0xDC, 0x79, 0xD4, 0x38, 0x01, 0xDC, 0x38, 0x01, 0xDC, 0x37, 0x07, 0xDC, 0x17, 0x02, 0xDB, 0xF6, 0x80, 0xDC, 0x17, 0x09, 0xDB, 0xF6, 0x81, 0xDB, 0xD6, 0xDB, 0xF6, 0x03, 0xDB, 0xD6, 0x80, 0xD3, 0xD6, 0x02, 0xDB, 0xD6, 0x80, 0xD3, 0xD6, 0x01, 0xDB, 0xD6, 0x80, 0xDB, 0xB6, 0x01, 0xD3, 0xB6, 0x01, 0xDB, 0xB6, 0x80, 0xD3, 0xB6, 0x04, 0xDB, 0xB6, 0x82, 0xD3, 0x96, 0xDB, 0xB6, 0xD3, 0x96, 0x01, 0xDB, 0x96, 0x81, 0xDB, 0xB6, 0xD3, 0x96, 0x01, 0xD3, 0x76, 0x81, 0xDB, 0x96, 0xDB, 0x76, 0x01, 0xDB, 0x96, 0x83, 0xDB, + 0x76, 0xDB, 0x96, 0xDB, 0x76, 0xDB, 0x96, 0x02, 0xD3, 0x76, 0x01, 0xD3, 0x96, 0x02, 0xCB, 0x96, 0x80, 0xC3, 0x96, 0x01, 0xBB, 0x96, 0x81, 0xBB, 0xB7, 0xBB, 0xF7, 0x01, 0xB3, 0xD7, 0x84, 0xBC, 0x18, 0xBB, 0xF8, 0xB3, 0xB7, 0xBB, 0xD7, 0xC3, 0xB7, 0x02, 0xC3, 0x56, 0x80, 0xCB, 0x76, 0x01, 0xCB, 0x56, 0x96, 0xC3, 0x76, 0xBB, 0x56, 0xB3, 0x56, 0xB3, 0xD7, 0xAC, 0x39, 0xA4, 0x39, 0x9C, 0x59, 0x94, 0x39, 0x8C, 0x59, 0x94, 0xBA, 0x84, 0x38, 0x5A, 0xF3, 0x7C, 0x39, 0x8C, 0xFB, 0x8C, 0xFC, 0x95, 0x5D, 0x8C, 0xDC, 0x52, 0xF5, 0x31, 0xB0, 0x41, 0xD1, 0x49, 0xF2, 0x51, 0xF3, 0x49, 0xB2, 0x02, 0x49, 0x92, 0x82, 0x49, 0x72, 0x49, 0x92, 0x49, 0xB3, 0x02, 0x41, 0x72, 0x01, 0x39, 0x72, 0x80, 0x41, 0x92, 0x01, 0x39, 0x72, 0x81, 0x39, 0x71, 0x39, 0x72, 0x01, 0x39, 0x71, 0x01, 0x39, 0x51, 0x03, 0x31, 0x51, 0x81, 0x31, 0x31, 0x31, 0x51, 0x01, 0x31, 0x31, 0x01, 0x31, 0x30, 0x09, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x06, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x11, 0x11, 0x32, 0x19, 0x95, 0x19, 0xF8, 0x11, 0xF9, 0x09, 0xDA, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x03, 0x01, 0xDA, 0x01, 0x09, 0xB9, 0x85, 0x11, 0xB8, 0x11, 0xD7, 0x21, 0xD6, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, + 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x87, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xD9, 0x09, 0xF9, 0x01, 0x09, 0xD8, 0x87, 0x01, 0x97, 0x01, 0x56, 0x01, 0x55, 0x01, 0x35, 0x09, 0x76, 0x09, 0xB7, 0x09, 0xD8, 0x01, 0xD8, 0x03, 0x09, 0xD8, 0x86, 0x09, 0x97, 0x01, 0x55, 0x01, 0x35, 0x01, 0x34, 0x09, 0x76, 0x09, 0x97, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xF8, 0x83, 0x09, 0xD7, 0x09, 0x95, 0x11, 0x54, 0x19, 0x52, 0x01, 0x19, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD8, 0x01, 0x09, 0xD9, 0x88, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xB8, 0x09, 0x97, 0x09, 0x55, 0x09, 0x35, 0x09, 0x55, 0x01, 0x56, 0x09, 0x97, 0x01, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x88, 0x09, 0xB8, 0x09, 0x97, 0x11, 0x96, 0x09, 0x55, 0x09, + 0x74, 0x09, 0x55, 0x09, 0x76, 0x09, 0x97, 0x09, 0xD9, 0x02, 0x09, 0xF9, 0x87, 0x09, 0xB8, 0x09, 0x97, 0x11, 0x96, 0x11, 0x75, 0x09, 0x34, 0x09, 0x54, 0x09, 0x75, 0x09, 0x96, 0x01, 0x09, 0xD8, 0x89, 0x12, 0x19, 0x09, 0xF9, 0x11, 0xD9, 0x09, 0xB8, 0x11, 0xB7, 0x11, 0x96, 0x09, 0x34, 0x01, 0x34, 0x09, 0x76, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x85, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xB8, 0x09, 0x97, 0x11, 0x96, 0x11, 0x75, 0x01, 0x09, 0x34, 0x83, 0x09, 0x96, 0x09, 0xB8, 0x09, 0xF9, 0x09, 0xFA, 0x01, 0x09, 0xD9, 0x8D, 0x09, 0xB9, 0x09, 0xB8, 0x11, 0x96, 0x11, 0x75, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x12, 0x19, 0x33, 0x11, 0x55, 0x11, 0xB7, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x03, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x86, 0x11, 0xD8, 0x11, 0xB7, 0x19, 0xB6, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, + 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x06, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x21, 0x10, 0x04, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x87, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x88, 0x21, 0x31, 0x21, 0x51, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x01, 0x1A, 0x19, 0x01, 0x11, 0xF8, 0x86, 0x11, 0xB6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x02, 0x21, 0x30, 0x02, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x8B, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x88, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, + 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB7, 0x11, 0xF8, 0x01, 0x1A, 0x19, 0x83, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0xB6, 0x11, 0x75, 0x01, 0x11, 0x54, 0x01, 0x11, 0x12, 0x80, 0x19, 0x12, 0x02, 0x19, 0x11, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x87, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x19, 0x31, 0x84, 0x11, 0x32, 0x11, 0x33, 0x19, 0x74, 0x21, 0xB6, 0x21, 0xD6, 0x01, 0x21, 0xB6, 0x80, 0x21, 0xD6, 0x02, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x01, 0x32, 0x37, 0x82, 0x32, 0x57, 0x32, + 0x58, 0x32, 0x57, 0x02, 0x32, 0x58, 0x82, 0x32, 0x37, 0x32, 0x57, 0x32, 0x58, 0x03, 0x32, 0x37, 0x01, 0x2A, 0x37, 0x80, 0x32, 0x37, 0x01, 0x2A, 0x37, 0x80, 0x2A, 0x16, 0x02, 0x2A, 0x37, 0x81, 0x2A, 0x17, 0x2A, 0x37, 0x01, 0x22, 0x17, 0x80, 0x21, 0xF7, 0x02, 0x19, 0xF7, 0x83, 0x11, 0xD8, 0x11, 0xF8, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x8C, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0x99, 0x01, 0xDA, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0xD8, 0x11, 0xB7, 0x19, 0xD6, 0x11, 0x33, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x8A, 0x28, 0xF0, 0x28, 0xD0, 0x30, 0x90, 0x38, 0x30, 0x92, 0x39, 0xD3, 0x3E, 0xDA, 0x9D, 0xE2, 0x5E, 0xEA, 0x3F, 0xF2, 0x1F, 0xF1, 0xFF, 0x03, 0xF9, 0xFF, 0x01, 0xF9, 0xDF, 0x02, 0xF9, 0xFF, 0x89, 0xF1, 0xFE, 0xEA, 0x1E, 0xEA, 0x3E, 0xE2, 0x9E, 0xDB, 0x5F, 0x89, 0xF8, 0x38, 0x2F, 0x30, 0x90, 0x28, 0xCF, 0x28, 0xEF, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x06, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x22, 0x18, 0x1A, + 0x39, 0x19, 0xF8, 0x11, 0x76, 0x11, 0x13, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x21, 0x31, 0x88, 0x19, 0x12, 0x11, 0x13, 0x19, 0xD7, 0x22, 0x19, 0x19, 0xD7, 0x11, 0x96, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x07, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x0E, 0x29, 0x30, 0x01, 0x31, 0x30, 0x02, 0x31, 0x50, 0x03, 0x31, 0x51, 0x01, 0x31, 0x71, 0x01, 0x39, 0x72, 0x80, 0x39, 0x71, 0x02, 0x39, 0x72, 0x80, 0x41, 0x92, 0x03, 0x39, 0x72, 0x81, 0x41, 0x93, 0x41, 0x92, 0x01, 0x49, 0xB3, 0x82, 0x49, 0x93, 0x49, 0xB3, 0x49, 0xB2, 0x01, 0x51, 0x92, 0x8D, 0x51, 0x72, 0x51, 0x51, 0x59, 0x71, 0x59, 0x91, 0x59, 0x4F, 0x71, 0xD0, 0xCC, 0x5A, 0xDC, 0xDB, 0xDC, 0x7A, 0xDC, 0x79, 0xDC, 0x58, 0xDC, 0x38, 0xD4, 0x17, 0xDC, 0x17, 0x01, 0xDC, 0x37, 0x06, 0xDC, 0x17, 0x83, 0xDC, 0x16, 0xDB, 0xF6, 0xDC, 0x17, 0xDC, 0x16, 0x03, 0xDB, 0xF6, 0x80, 0xDC, 0x17, 0x0A, 0xDB, 0xF6, 0x83, 0xDB, 0xD6, 0xDB, 0xF6, 0xD3, 0xD6, 0xDB, 0xD6, 0x02, 0xD3, 0xD6, 0x01, 0xDB, 0xD6, 0x80, 0xD3, 0xD6, 0x02, 0xD3, 0xB6, 0x82, 0xD3, 0xD6, 0xD3, 0xB6, 0xDB, 0xD6, 0x02, 0xD3, 0xB6, 0x80, 0xDB, 0xB6, 0x01, 0xD3, 0xB6, 0x85, 0xD3, 0x96, 0xDB, 0xB6, 0xDB, 0x96, 0xD3, 0x96, 0xD3, 0x75, 0xD3, 0x76, 0x01, 0xDB, 0x96, 0x03, 0xDB, 0x76, + 0x80, 0xDB, 0x96, 0x01, 0xDB, 0x76, 0x01, 0xD3, 0x76, 0x84, 0xD3, 0x96, 0xD3, 0x76, 0xD3, 0x96, 0xD3, 0x76, 0xD3, 0x96, 0x01, 0xCB, 0x96, 0x82, 0xC3, 0x97, 0xBB, 0x76, 0xBB, 0xB7, 0x01, 0xBB, 0xD7, 0x01, 0xB3, 0xD7, 0x80, 0xB3, 0xB7, 0x01, 0xBB, 0xB7, 0xA1, 0xC3, 0xB7, 0xBB, 0x76, 0xC3, 0x97, 0xC3, 0x76, 0xC3, 0x56, 0xCB, 0x76, 0xC3, 0x35, 0xCB, 0x76, 0xBB, 0x76, 0xB3, 0x76, 0xB3, 0xD7, 0xB4, 0x59, 0xA4, 0x7A, 0x94, 0x59, 0x8C, 0x7A, 0x94, 0xDB, 0x8C, 0xBA, 0x7C, 0x39, 0x53, 0x14, 0x5B, 0x76, 0x84, 0x7A, 0x84, 0x9A, 0x6B, 0x76, 0x6B, 0x15, 0x62, 0x94, 0x51, 0xB0, 0x49, 0x4F, 0x51, 0x91, 0x51, 0x92, 0x51, 0x91, 0x51, 0x71, 0x51, 0x92, 0x49, 0x92, 0x49, 0x72, 0x01, 0x49, 0x92, 0x80, 0x41, 0x72, 0x01, 0x41, 0x92, 0x01, 0x41, 0x72, 0x80, 0x41, 0x92, 0x02, 0x39, 0x72, 0x84, 0x39, 0x51, 0x39, 0x72, 0x39, 0x52, 0x39, 0x72, 0x39, 0x71, 0x07, 0x31, 0x51, 0x02, 0x31, 0x31, 0x0A, 0x29, 0x30, 0x80, 0x29, 0x10, 0x06, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x11, 0x11, 0x12, 0x19, 0x74, 0x19, 0xD7, 0x11, 0xB8, 0x09, 0xD9, 0x09, 0xDA, 0x01, 0x01, 0xBA, 0x8A, 0x01, 0xDA, 0x01, 0xFB, 0x09, 0xFA, 0x01, 0xDA, 0x09, 0xB9, 0x11, 0xD9, 0x11, 0xB8, 0x19, 0xD7, 0x21, 0xD6, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, + 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x87, 0x21, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x95, 0x11, 0xD7, 0x09, 0xF8, 0x01, 0x09, 0xF9, 0x01, 0x09, 0xD8, 0x81, 0x09, 0xB7, 0x01, 0x76, 0x01, 0x01, 0x35, 0x82, 0x09, 0x76, 0x09, 0x97, 0x09, 0xF8, 0x03, 0x09, 0xD8, 0x82, 0x09, 0xD7, 0x09, 0x96, 0x01, 0x55, 0x01, 0x01, 0x34, 0x82, 0x09, 0x75, 0x09, 0xB7, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xF8, 0x83, 0x11, 0xD7, 0x09, 0x95, 0x11, 0x54, 0x11, 0x53, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x86, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD8, 0x11, 0xD9, 0x01, 0x09, 0xD9, 0x82, 0x11, 0xD9, 0x09, 0xB8, 0x09, 0x96, 0x01, 0x09, 0x55, 0x82, 0x09, 0x35, 0x09, 0x76, 0x09, 0x97, 0x03, 0x09, 0xF9, 0x88, 0x11, 0xD9, 0x11, 0xB8, 0x09, 0x96, 0x09, 0x75, 0x09, 0x54, 0x09, 0x75, 0x09, 0x76, 0x09, 0x97, 0x09, 0xD8, + 0x02, 0x09, 0xF9, 0x88, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x54, 0x09, 0x34, 0x09, 0x75, 0x09, 0x96, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x84, 0x12, 0x19, 0x11, 0xF9, 0x09, 0xB7, 0x09, 0x96, 0x11, 0x96, 0x01, 0x09, 0x34, 0x81, 0x09, 0x76, 0x09, 0xB8, 0x02, 0x09, 0xF9, 0x84, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0x97, 0x11, 0x96, 0x11, 0x75, 0x01, 0x09, 0x34, 0x81, 0x09, 0x76, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x87, 0x09, 0xFA, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0xB8, 0x11, 0x96, 0x11, 0x74, 0x19, 0x53, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x19, 0x32, 0x82, 0x19, 0x75, 0x11, 0xB6, 0x11, 0xD8, 0x01, 0x09, 0xD9, 0x83, 0x09, 0xD8, 0x01, 0xB8, 0x09, 0xD9, 0x01, 0xD8, 0x01, 0x09, 0xF8, 0x84, 0x11, 0xD8, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x19, 0x33, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, + 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x19, 0x11, 0x86, 0x19, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xF8, 0x1A, 0x18, 0x01, 0x11, 0xD7, 0x83, 0x11, 0xB6, 0x09, 0x74, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x50, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x06, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x89, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, + 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x97, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xF9, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x54, 0x19, 0x53, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0x74, 0x19, 0x95, 0x01, 0x21, 0xD7, 0x80, 0x21, 0xF6, 0x02, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x81, 0x29, 0xF6, 0x21, 0xF6, 0x01, 0x2A, 0x16, 0x07, 0x29, 0xF6, 0x82, 0x2A, 0x16, 0x21, 0xD6, 0x21, 0xF6, 0x01, 0x29, 0xF6, 0x01, 0x21, 0xF6, 0x01, 0x29, 0xF6, 0x03, 0x21, 0xF6, 0x83, 0x19, 0xD6, 0x21, 0xF6, 0x21, 0xF7, 0x19, 0xD7, + 0x01, 0x11, 0xB7, 0x80, 0x09, 0xB7, 0x01, 0x09, 0xD8, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x01, 0x01, 0xDB, 0x80, 0x01, 0xBA, 0x01, 0x09, 0xB9, 0x84, 0x11, 0xD8, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x83, 0x19, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x8D, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x28, 0xF0, 0x28, 0xD0, 0x30, 0x90, 0x38, 0x50, 0x89, 0xF8, 0xCB, 0x1E, 0xDA, 0x9D, 0xE2, 0x7E, 0xEA, 0x3F, 0xF2, 0x3F, 0xFA, 0x3F, 0x01, 0xF9, 0xFF, 0x80, 0xF9, 0xDF, 0x02, 0xF9, 0xFF, 0x8C, 0xF9, 0xDF, 0xF1, 0xFF, 0xFA, 0x1F, 0xF2, 0x3F, 0xEA, 0x3E, 0xE2, 0x3E, 0xDA, 0x9E, 0xD3, 0x1E, 0x79, 0x76, 0x38, 0x50, 0x30, 0xB0, 0x28, 0xCF, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x89, 0x19, 0x11, 0x11, 0x32, 0x22, 0x38, 0x22, 0x39, 0x19, 0xF8, 0x11, 0x76, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, + 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x89, 0x21, 0x10, 0x21, 0x11, 0x19, 0x12, 0x11, 0x13, 0x19, 0xD7, 0x22, 0x18, 0x19, 0xF7, 0x11, 0x75, 0x11, 0x12, 0x19, 0x11, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x0B, 0x29, 0x30, 0x80, 0x29, 0x10, 0x0A, 0x29, 0x30, 0x81, 0x31, 0x50, 0x31, 0x30, 0x02, 0x31, 0x50, 0x07, 0x31, 0x51, 0x06, 0x39, 0x72, 0x04, 0x41, 0x92, 0x80, 0x41, 0x93, 0x01, 0x41, 0x92, 0x81, 0x49, 0x93, 0x49, 0xB3, 0x01, 0x51, 0xB2, 0x01, 0x51, 0x71, 0x8B, 0x59, 0x91, 0x61, 0x91, 0x59, 0x50, 0x69, 0x90, 0x9B, 0x15, 0xE5, 0x1C, 0xDC, 0x9A, 0xD4, 0x59, 0xDC, 0x79, 0xDC, 0x58, 0xDC, 0x37, 0xDC, 0x58, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x17, 0x01, 0xDC, 0x16, 0x80, 0xDC, 0x17, 0x06, 0xDC, 0x16, 0x80, 0xDB, 0xF6, 0x01, 0xDC, 0x16, 0x80, 0xD3, 0xF6, 0x01, 0xDC, 0x17, 0x81, 0xD3, 0xF7, 0xDC, 0x17, 0x05, 0xD3, 0xF6, 0x01, 0xD3, 0xD6, 0x02, 0xD3, 0xF6, 0x85, 0xD3, 0xD6, 0xD3, 0xF6, 0xD3, 0xF7, 0xD3, 0xF6, 0xD3, 0xD6, 0xD3, 0xB6, 0x06, 0xD3, 0xD6, 0x01, 0xD3, 0xB6, 0x80, 0xD3, 0xD6, 0x04, 0xD3, 0xB6, 0x05, 0xD3, 0x96, 0x01, 0xDB, 0x96, 0x80, 0xDB, 0x75, 0x02, 0xDB, 0x76, 0x80, 0xD3, 0x35, 0x01, 0xD3, 0x55, 0x03, 0xD3, 0x76, 0x80, 0xD3, 0x96, 0x02, 0xD3, 0x76, 0x84, 0xCB, 0x96, 0xCB, 0x97, 0xC3, 0x76, 0xBB, 0x76, 0xBB, 0x96, 0x01, 0xBB, 0xB7, 0x80, 0xBB, 0xD7, 0x02, 0xBB, 0xB7, 0x8F, 0xBB, 0x97, 0xBB, 0x76, 0xC3, + 0x76, 0xCB, 0x97, 0xCB, 0x96, 0xCB, 0x76, 0xCB, 0x56, 0xC3, 0x76, 0xBB, 0x55, 0xB3, 0x56, 0xA3, 0x97, 0xA4, 0x19, 0xA4, 0xBB, 0x94, 0x9A, 0x84, 0x7A, 0x84, 0xDB, 0x01, 0x8C, 0xFB, 0x8A, 0x6B, 0xD7, 0x5B, 0x14, 0x6B, 0x55, 0x8B, 0xF8, 0xA4, 0x39, 0xAC, 0x3A, 0xAB, 0xD9, 0x92, 0xF5, 0x71, 0xD2, 0x59, 0x50, 0x59, 0x51, 0x01, 0x59, 0x92, 0x01, 0x51, 0x92, 0x02, 0x49, 0x92, 0x82, 0x41, 0x72, 0x41, 0x93, 0x41, 0x72, 0x02, 0x41, 0x92, 0x02, 0x39, 0x72, 0x81, 0x39, 0x71, 0x39, 0x51, 0x01, 0x39, 0x72, 0x80, 0x39, 0x52, 0x01, 0x39, 0x71, 0x02, 0x31, 0x51, 0x01, 0x31, 0x31, 0x80, 0x31, 0x51, 0x01, 0x31, 0x30, 0x01, 0x29, 0x30, 0x80, 0x31, 0x30, 0x05, 0x29, 0x30, 0x80, 0x29, 0x10, 0x07, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x8F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x19, 0x94, 0x19, 0xD7, 0x11, 0xB7, 0x09, 0xB8, 0x09, 0xDA, 0x04, 0x01, 0xDA, 0x01, 0x09, 0xFA, 0x86, 0x11, 0xD9, 0x11, 0xB8, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x87, 0x21, 0x0F, 0x29, 0x0F, + 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x86, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xF8, 0x85, 0x09, 0xB7, 0x01, 0x56, 0x01, 0x35, 0x01, 0x34, 0x09, 0x55, 0x09, 0xB7, 0x04, 0x09, 0xD8, 0x88, 0x09, 0xD7, 0x09, 0xB7, 0x01, 0x55, 0x09, 0x55, 0x09, 0x54, 0x09, 0x75, 0x09, 0x96, 0x09, 0xD7, 0x09, 0xF8, 0x01, 0x09, 0xD8, 0x8A, 0x09, 0xF7, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x52, 0x19, 0x32, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x54, 0x11, 0x76, 0x11, 0xB8, 0x02, 0x11, 0xD9, 0x82, 0x11, 0xD8, 0x11, 0xB8, 0x11, 0x97, 0x02, 0x09, 0x55, 0x82, 0x09, 0x75, 0x09, 0xB7, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x82, 0x11, 0xF9, 0x11, 0xD8, 0x09, 0x97, 0x01, 0x09, 0x75, 0x84, 0x11, 0x54, 0x09, 0x54, 0x09, 0x76, 0x09, 0x97, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x84, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0x97, 0x11, 0x96, 0x11, 0x75, 0x01, 0x09, 0x54, 0x87, 0x09, 0x75, 0x09, 0x96, 0x09, 0xD7, 0x11, 0xF8, 0x09, 0xF8, 0x11, 0xF9, 0x09, 0xD8, 0x09, 0xB7, 0x01, 0x11, 0xB6, 0x01, 0x09, 0x34, 0x82, 0x09, 0x76, 0x09, 0xD7, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x84, + 0x09, 0xD9, 0x09, 0xB8, 0x09, 0x97, 0x11, 0xB6, 0x11, 0x95, 0x01, 0x09, 0x34, 0x8A, 0x09, 0x76, 0x09, 0xB7, 0x09, 0xD8, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0x96, 0x19, 0x74, 0x19, 0x32, 0x01, 0x19, 0x11, 0x85, 0x18, 0xF0, 0x19, 0x11, 0x19, 0x12, 0x19, 0x54, 0x11, 0x95, 0x19, 0xD8, 0x02, 0x11, 0xF8, 0x82, 0x12, 0x19, 0x09, 0xF8, 0x12, 0x19, 0x01, 0x12, 0x18, 0x88, 0x19, 0xF7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, + 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x88, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x05, 0x29, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x92, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xF7, 0x11, 0xF8, 0x12, 0x18, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x05, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x0B, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x31, 0x19, + 0x32, 0x19, 0x33, 0x11, 0x33, 0x11, 0x55, 0x11, 0xB7, 0x01, 0x11, 0xF8, 0x87, 0x11, 0xF9, 0x19, 0xF8, 0x19, 0xD8, 0x19, 0xB6, 0x19, 0x75, 0x11, 0x13, 0x11, 0x33, 0x19, 0x32, 0x02, 0x19, 0x11, 0x84, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x06, 0x21, 0x10, 0x02, 0x29, 0x10, 0x02, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x84, 0x11, 0x32, 0x19, 0x53, 0x11, 0x54, 0x19, 0x54, 0x19, 0x74, 0x01, 0x19, 0x54, 0x80, 0x19, 0x74, 0x01, 0x19, 0x53, 0x01, 0x19, 0x74, 0x80, 0x19, 0x53, 0x02, 0x19, 0x74, 0x01, 0x19, 0x94, 0x02, 0x19, 0x74, 0x82, 0x19, 0x94, 0x19, 0x74, 0x19, 0x94, 0x04, 0x19, 0x74, 0x82, 0x19, 0x94, 0x21, 0x94, 0x19, 0x74, 0x02, 0x19, 0x94, 0x03, 0x19, 0x95, 0x84, 0x19, 0xB6, 0x11, 0x96, 0x11, 0xD7, 0x09, 0xB7, 0x09, 0xD8, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x82, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xDB, 0x01, 0x01, 0xBA, 0x01, 0x09, 0xB9, 0x86, 0x11, 0xB8, 0x19, 0xB7, 0x19, 0xB5, 0x11, 0x12, 0x19, 0x32, 0x19, 0x51, 0x19, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x28, + 0xF0, 0x8C, 0x30, 0xB0, 0x38, 0x70, 0x69, 0x35, 0xCB, 0x3E, 0xD2, 0xBD, 0xE2, 0x9E, 0xEA, 0x7F, 0xEA, 0x3E, 0xF2, 0x1F, 0xF9, 0xFF, 0xF1, 0xDF, 0xF9, 0xFF, 0xF9, 0xDF, 0x02, 0xF9, 0xFF, 0x8A, 0xFA, 0x1F, 0xF2, 0x1F, 0xF2, 0x5F, 0xEA, 0x3E, 0xE2, 0x7E, 0xD2, 0x9D, 0xD3, 0x5F, 0x50, 0x72, 0x38, 0x50, 0x30, 0xB0, 0x28, 0xF0, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x86, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x88, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x88, 0x19, 0x11, 0x11, 0x12, 0x22, 0x18, 0x22, 0x39, 0x19, 0xD8, 0x11, 0x96, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x31, 0x82, 0x19, 0x12, 0x11, 0x13, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x83, 0x11, 0x95, 0x11, 0x12, 0x19, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x0D, 0x29, 0x30, 0x01, 0x31, 0x30, 0x80, 0x31, 0x50, 0x01, 0x31, 0x30, + 0x82, 0x31, 0x50, 0x31, 0x51, 0x31, 0x50, 0x06, 0x31, 0x51, 0x81, 0x39, 0x51, 0x39, 0x71, 0x05, 0x39, 0x72, 0x01, 0x41, 0x92, 0x80, 0x41, 0x72, 0x01, 0x41, 0x92, 0x80, 0x49, 0x93, 0x01, 0x41, 0x92, 0x8C, 0x49, 0x92, 0x49, 0x93, 0x51, 0xB3, 0x51, 0x92, 0x51, 0x91, 0x51, 0x71, 0x59, 0x91, 0x61, 0xB1, 0x61, 0x90, 0x8A, 0x73, 0xCC, 0x7A, 0xE4, 0xFB, 0xDC, 0x99, 0x02, 0xDC, 0x58, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x17, 0x02, 0xDC, 0x37, 0x01, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x05, 0xDC, 0x16, 0x82, 0xDC, 0x17, 0xDC, 0x16, 0xDC, 0x17, 0x01, 0xD4, 0x16, 0x81, 0xD4, 0x17, 0xD4, 0x16, 0x04, 0xD4, 0x17, 0x81, 0xCC, 0x16, 0xCC, 0x17, 0x02, 0xCB, 0xF6, 0x83, 0xCB, 0xF7, 0xCB, 0xF6, 0xCC, 0x17, 0xCB, 0xF6, 0x01, 0xCB, 0xF7, 0x01, 0xCB, 0xF6, 0x01, 0xCB, 0xD6, 0x82, 0xCB, 0xF7, 0xCB, 0xD6, 0xCB, 0xF6, 0x01, 0xCB, 0xD6, 0x81, 0xCB, 0xF7, 0xCB, 0xD7, 0x03, 0xCB, 0xD6, 0x80, 0xCB, 0xB6, 0x01, 0xCB, 0xD6, 0x01, 0xD3, 0xB6, 0x81, 0xCB, 0xB6, 0xD3, 0xB6, 0x01, 0xD3, 0x96, 0x01, 0xDB, 0x96, 0x02, 0xDB, 0x76, 0x01, 0xDB, 0x55, 0x82, 0xD3, 0x55, 0xDB, 0x76, 0xD3, 0x76, 0x01, 0xDB, 0x76, 0x02, 0xD3, 0x76, 0x80, 0xDB, 0x96, 0x01, 0xD3, 0x56, 0x80, 0xD3, 0x76, 0x01, 0xCB, 0x76, 0x81, 0xC3, 0x76, 0xBB, 0x76, 0x02, 0xBB, 0x97, 0x82, 0xB3, 0x97, 0xB3, 0x96, 0xBB, 0x97, 0x01, 0xBB, 0x76, 0x01, 0xC3, 0x76, 0x80, 0xCB, 0x76, 0x02, 0xC3, 0x56, 0x95, 0xBB, 0x56, 0xAB, 0x56, 0xA3, 0x97, 0x9C, 0x19, 0x9C, 0xBB, 0x84, 0x9A, 0x7C, 0x9A, 0x7C, 0xBA, 0x84, 0xFB, + 0x8C, 0xFB, 0x73, 0xF8, 0x6B, 0x35, 0x8B, 0xB7, 0x9B, 0xD7, 0xA3, 0xB7, 0xB3, 0xB7, 0xB3, 0x77, 0xB3, 0x98, 0x9A, 0xD6, 0x69, 0x91, 0x59, 0x30, 0x59, 0x71, 0x01, 0x59, 0x92, 0x85, 0x51, 0x72, 0x51, 0x92, 0x49, 0x92, 0x49, 0x72, 0x49, 0x92, 0x41, 0x72, 0x02, 0x41, 0x92, 0x01, 0x41, 0x72, 0x03, 0x39, 0x72, 0x81, 0x39, 0x51, 0x39, 0x72, 0x01, 0x39, 0x51, 0x06, 0x31, 0x51, 0x02, 0x31, 0x30, 0x06, 0x29, 0x30, 0x80, 0x29, 0x10, 0x07, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x92, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x19, 0x95, 0x11, 0x97, 0x11, 0xB8, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0xD9, 0x09, 0xFA, 0x01, 0xDA, 0x09, 0xDA, 0x09, 0xD9, 0x09, 0xF9, 0x11, 0xD8, 0x19, 0xB7, 0x19, 0x95, 0x11, 0x12, 0x01, 0x19, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x10, 0x19, 0x31, 0x19, + 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x75, 0x01, 0x11, 0xD7, 0x80, 0x11, 0xF8, 0x01, 0x09, 0xF8, 0x88, 0x09, 0xD7, 0x09, 0x97, 0x01, 0x55, 0x01, 0x34, 0x09, 0x34, 0x09, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x09, 0xD8, 0x02, 0x09, 0xD7, 0x92, 0x11, 0xD7, 0x09, 0x96, 0x09, 0x75, 0x09, 0x55, 0x09, 0x34, 0x09, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xF8, 0x09, 0xD7, 0x11, 0xF8, 0x11, 0xF7, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x74, 0x19, 0x53, 0x19, 0x32, 0x19, 0x51, 0x21, 0x51, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x03, 0x11, 0xD8, 0x8D, 0x11, 0xB7, 0x11, 0x96, 0x09, 0x55, 0x09, 0x54, 0x09, 0x55, 0x09, 0x75, 0x09, 0x96, 0x11, 0xD8, 0x11, 0xF9, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xB8, 0x11, 0xB7, 0x11, 0x95, 0x01, 0x11, 0x54, 0x8A, 0x09, 0x54, 0x09, 0x75, 0x09, 0x96, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x74, 0x01, 0x11, 0x54, 0x89, 0x11, 0x74, 0x09, 0x95, 0x11, 0xD7, 0x11, 0xD8, 0x09, 0xD8, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0xB6, 0x11, 0x95, 0x01, 0x09, 0x34, 0x82, 0x09, 0x96, 0x09, 0xB7, 0x11, 0xF8, 0x01, 0x09, 0xF8, 0x89, 0x11, 0xD8, 0x11, 0xB8, 0x11, 0x97, 0x11, 0x96, 0x11, 0x75, 0x09, 0x13, 0x09, 0x14, 0x09, 0x75, 0x11, 0x97, 0x11, 0xD8, 0x02, 0x09, 0xD8, 0x90, 0x09, 0xB7, 0x11, 0xB7, 0x11, 0x95, 0x19, 0x74, 0x19, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x19, + 0x33, 0x11, 0x54, 0x11, 0x96, 0x19, 0xB7, 0x19, 0xF7, 0x11, 0xD7, 0x19, 0xF8, 0x01, 0x11, 0xF7, 0x01, 0x11, 0xD6, 0x85, 0x11, 0x95, 0x11, 0x53, 0x19, 0x33, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x05, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x89, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, + 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xD7, 0x1A, 0x18, 0x01, 0x12, 0x18, 0x81, 0x11, 0xD7, 0x11, 0x95, 0x01, 0x11, 0x74, 0x81, 0x11, 0x53, 0x19, 0x52, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x91, 0x21, 0x31, 0x21, 0x11, 0x19, 0x32, 0x10, 0xF2, 0x11, 0x13, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD8, 0x11, 0xF8, 0x1A, 0x39, 0x1A, 0x19, 0x19, 0xF8, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, + 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x19, 0x31, 0x19, 0x32, 0x01, 0x11, 0x12, 0x81, 0x19, 0x12, 0x11, 0x32, 0x01, 0x11, 0x12, 0x80, 0x19, 0x12, 0x01, 0x11, 0x12, 0x80, 0x10, 0xF2, 0x03, 0x11, 0x12, 0x80, 0x11, 0x32, 0x02, 0x11, 0x12, 0x80, 0x19, 0x32, 0x02, 0x11, 0x12, 0x80, 0x11, 0x32, 0x01, 0x11, 0x12, 0x02, 0x11, 0x32, 0x80, 0x19, 0x32, 0x01, 0x19, 0x12, 0x03, 0x11, 0x12, 0x80, 0x11, 0x32, 0x01, 0x11, 0x33, 0x82, 0x11, 0x54, 0x11, 0x75, 0x09, 0x76, 0x01, 0x09, 0xB7, 0x82, 0x01, 0xD8, 0x01, 0xD9, 0x01, 0xB9, 0x04, 0x01, 0xBA, 0x86, 0x01, 0xDA, 0x09, 0xD9, 0x09, 0xB9, 0x09, 0x97, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x12, 0x01, 0x19, 0x31, 0x81, 0x19, 0x30, 0x21, 0x50, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x88, 0x28, 0xF0, 0x30, 0xD0, 0x38, 0x90, 0x48, 0x50, 0xB2, 0xBC, 0xD2, 0xFE, 0xDA, 0xBE, 0xE2, 0x5E, 0xEA, 0x3E, 0x01, 0xF2, 0x1F, 0x01, 0xF9, 0xFF, 0x80, 0xFA, 0x1F, 0x03, 0xF1, 0xFF, 0x89, 0xF2, 0x3F, 0xEA, 0x3E, 0xE2, 0x3E, 0xDA, 0x9E, 0xDA, 0xFE, 0xC3, 0x1E, 0x40, 0x0F, + 0x38, 0x70, 0x30, 0xB0, 0x28, 0xF0, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x8D, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x11, 0x11, 0x12, 0x22, 0x18, 0x22, 0x39, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8D, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x31, 0x21, 0x31, 0x19, 0x12, 0x11, 0x13, 0x22, 0x18, 0x1A, 0x39, 0x19, 0xF8, 0x11, 0x95, 0x11, 0x12, 0x19, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x06, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x30, 0x80, 0x29, 0x50, 0x08, 0x29, 0x30, 0x81, 0x31, 0x50, 0x31, 0x30, 0x03, 0x31, 0x50, 0x04, 0x31, 0x51, 0x01, 0x31, 0x71, 0x01, 0x31, 0x51, 0x81, 0x39, 0x51, 0x39, 0x71, 0x03, 0x39, 0x72, 0x02, 0x41, 0x72, 0x04, 0x41, 0x92, 0x84, 0x49, 0x92, 0x49, 0xB3, 0x49, 0xB2, 0x49, 0x92, 0x49, 0x71, 0x01, 0x51, 0x71, 0x88, 0x59, 0x70, 0x69, 0x90, 0x79, 0xF1, 0xBB, 0xD8, 0xE5, 0x1C, 0xDC, 0x9A, 0xDC, 0x79, 0xDC, 0x58, 0xE4, 0x79, + 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x58, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x17, 0x04, 0xDC, 0x16, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x16, 0x01, 0xDB, 0xF6, 0x01, 0xDC, 0x16, 0x83, 0xD4, 0x16, 0xD3, 0xF6, 0xD4, 0x17, 0xCC, 0x16, 0x02, 0xCC, 0x37, 0x01, 0xC4, 0x37, 0x80, 0xC4, 0x17, 0x01, 0xC4, 0x37, 0x01, 0xC4, 0x17, 0x80, 0xC4, 0x37, 0x02, 0xBC, 0x17, 0x82, 0xC4, 0x37, 0xBC, 0x17, 0xBC, 0x37, 0x02, 0xBC, 0x17, 0x80, 0xC4, 0x17, 0x03, 0xBC, 0x17, 0x80, 0xBB, 0xF7, 0x01, 0xBB, 0xF6, 0x80, 0xC3, 0xF7, 0x04, 0xC3, 0xF6, 0x02, 0xC3, 0xD6, 0x82, 0xC3, 0xB6, 0xCB, 0xB6, 0xCB, 0xB5, 0x01, 0xCB, 0x95, 0x81, 0xD3, 0x75, 0xD3, 0x76, 0x01, 0xD3, 0x55, 0x01, 0xDB, 0x96, 0x84, 0xDB, 0x76, 0xDB, 0x56, 0xDB, 0x75, 0xDB, 0x76, 0xD3, 0x55, 0x01, 0xD3, 0x75, 0x06, 0xD3, 0x56, 0x84, 0xD3, 0x76, 0xCB, 0x76, 0xCB, 0x56, 0xC3, 0x56, 0xC3, 0x77, 0x01, 0xBB, 0x97, 0x80, 0xBB, 0x77, 0x01, 0xBB, 0x97, 0x83, 0xB3, 0x56, 0xBB, 0x76, 0xBB, 0x56, 0xC3, 0x76, 0x01, 0xCB, 0x76, 0x01, 0xC3, 0x76, 0x98, 0xB3, 0x36, 0xA3, 0x36, 0x93, 0x76, 0x8B, 0xF8, 0x84, 0x19, 0x84, 0xBB, 0x8D, 0x3C, 0x7C, 0xFB, 0x74, 0x9A, 0x8C, 0xDB, 0x8C, 0x9A, 0x83, 0xB7, 0x93, 0x96, 0x9B, 0x76, 0xAB, 0x77, 0xB3, 0x77, 0xB3, 0x57, 0xBB, 0x78, 0xBB, 0x98, 0xA2, 0xD6, 0x71, 0x91, 0x59, 0x10, 0x59, 0x71, 0x61, 0x92, 0x59, 0x92, 0x01, 0x51, 0x92, 0x01, 0x49, 0x92, 0x02, 0x41, 0x92, 0x02, 0x41, 0x72, 0x01, 0x41, 0x92, 0x01, 0x39, 0x71, 0x81, 0x39, 0x92, 0x39, 0x72, 0x01, 0x39, 0x71, 0x05, 0x31, + 0x51, 0x85, 0x31, 0x31, 0x31, 0x51, 0x31, 0x30, 0x31, 0x31, 0x31, 0x30, 0x31, 0x50, 0x01, 0x29, 0x50, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x0B, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x86, 0x19, 0x32, 0x19, 0x74, 0x11, 0x75, 0x11, 0xB7, 0x19, 0xF8, 0x12, 0x19, 0x12, 0x1A, 0x01, 0x09, 0xD9, 0x88, 0x09, 0xB9, 0x11, 0xF9, 0x1A, 0x19, 0x19, 0xF8, 0x21, 0xF7, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x19, 0x95, 0x22, 0x17, 0x01, 0x11, 0xF7, 0x01, 0x11, 0xF8, 0x87, 0x1A, 0x18, 0x11, 0xB7, 0x09, 0x55, 0x09, 0x34, 0x09, 0x14, 0x09, 0x75, 0x11, 0xB6, 0x11, 0xF7, + 0x03, 0x11, 0xD7, 0x81, 0x19, 0xF7, 0x11, 0x96, 0x02, 0x09, 0x54, 0x82, 0x11, 0x75, 0x11, 0xB6, 0x1A, 0x18, 0x01, 0x11, 0xF8, 0x86, 0x11, 0xF7, 0x1A, 0x17, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x53, 0x19, 0x52, 0x19, 0x51, 0x01, 0x21, 0x51, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0xA4, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0x95, 0x19, 0xD7, 0x19, 0xD8, 0x19, 0xF8, 0x11, 0xF8, 0x19, 0xD8, 0x19, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x34, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xF8, 0x11, 0xF9, 0x12, 0x19, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x95, 0x11, 0x54, 0x09, 0x33, 0x11, 0x54, 0x09, 0x74, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xF8, 0x12, 0x18, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x19, 0xB5, 0x11, 0x74, 0x01, 0x11, 0x53, 0x82, 0x11, 0x54, 0x11, 0x75, 0x11, 0xD6, 0x01, 0x11, 0xF7, 0x88, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x19, 0xD6, 0x11, 0xB5, 0x09, 0x33, 0x09, 0x13, 0x09, 0x75, 0x11, 0xB6, 0x03, 0x11, 0xF8, 0x83, 0x11, 0xB7, 0x11, 0x96, 0x19, 0xB6, 0x11, 0x75, 0x01, 0x09, 0x13, 0x83, 0x11, 0x75, 0x11, 0x96, 0x19, 0xD8, 0x11, 0xD8, 0x01, 0x11, 0xF8, 0x8C, 0x11, 0xB7, 0x11, 0xB6, 0x19, 0xB5, 0x19, 0x53, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x13, 0x11, 0x33, 0x02, 0x11, 0x54, 0x87, 0x11, 0x75, 0x11, 0x74, 0x11, 0x33, 0x11, 0x54, 0x19, 0x74, 0x19, 0x53, 0x11, 0x12, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x03, 0x21, + 0x2F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x50, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8D, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xF8, 0x1A, 0x19, 0x11, 0xF8, 0x11, 0xF7, + 0x11, 0xB6, 0x09, 0x74, 0x11, 0x74, 0x11, 0x53, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x15, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x90, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD7, 0x12, 0x18, 0x1A, 0x39, 0x1A, 0x19, 0x19, 0xF8, 0x19, 0xB7, 0x11, 0x55, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x4F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, + 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x12, 0x01, 0x19, 0x32, 0x80, 0x19, 0x12, 0x02, 0x19, 0x11, 0x81, 0x19, 0x32, 0x19, 0x12, 0x01, 0x19, 0x11, 0x80, 0x19, 0x32, 0x01, 0x19, 0x11, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x12, 0x02, 0x19, 0x32, 0x80, 0x19, 0x12, 0x01, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x12, 0x80, 0x19, 0x32, 0x02, 0x19, 0x12, 0x8A, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x53, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x09, 0xD7, 0x09, 0xD8, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xDB, 0x01, 0x01, 0xDA, 0x86, 0x09, 0xDA, 0x09, 0xD9, 0x09, 0xB9, 0x09, 0x97, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x12, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x28, 0xEF, 0x8D, 0x30, 0xF0, 0x38, 0xB0, 0x40, 0x50, 0x79, 0x55, 0xD3, 0x3E, 0xD2, 0xBE, 0xDA, 0x7E, 0xEA, 0x5E, 0xF2, 0x5F, 0xF2, 0x3F, 0xFA, 0x3F, 0xF2, 0x1F, 0xFA, 0x1F, 0xF1, 0xFF, 0x01, 0xF2, 0x1F, 0x8A, 0xF2, 0x3F, 0xEA, 0x3E, 0xE2, 0x5E, 0xE2, 0x7E, 0xDA, 0xBE, 0xDB, 0x5F, 0x89, 0xB7, 0x38, 0x0F, 0x30, 0x90, 0x28, 0xB0, 0x28, 0xF0, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, + 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x8C, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x11, 0x12, 0x22, 0x18, 0x22, 0x39, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x8F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x31, 0x21, 0x31, 0x21, 0x32, 0x19, 0x12, 0x11, 0x13, 0x22, 0x18, 0x1A, 0x19, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x11, 0x29, 0x30, 0x81, 0x31, 0x50, 0x31, 0x30, 0x04, 0x31, 0x50, 0x80, 0x31, 0x51, 0x01, 0x31, 0x50, 0x81, 0x31, 0x51, 0x31, 0x50, 0x01, 0x31, 0x51, 0x02, 0x31, 0x71, 0x80, 0x31, 0x51, 0x01, 0x39, 0x71, 0x03, 0x39, 0x72, 0x02, 0x41, 0x72, 0x03, 0x41, 0x92, 0x80, 0x49, 0xB3, 0x04, 0x49, 0x92, 0x89, 0x51, 0x92, 0x51, 0x91, 0x51, 0x70, 0x59, 0x70, 0x69, 0x90, 0x9A, 0xF4, 0xDC, 0xFC, 0xDC, 0xBB, 0xDC, 0x99, 0xDC, 0x59, 0x01, 0xDC, 0x58, 0x81, 0xDC, 0x37, 0xDC, 0x17, 0x02, 0xDC, 0x37, 0x83, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x16, 0xDC, 0x17, 0x04, 0xDC, 0x16, 0x82, 0xDB, 0xF6, 0xDC, 0x16, 0xDB, 0xF6, 0x01, 0xDC, 0x16, 0x88, 0xD4, 0x16, 0xD4, 0x17, 0xCC, 0x17, 0xCC, 0x37, 0xC4, 0x37, 0xC4, 0x78, 0xBC, 0x57, 0xBC, + 0x78, 0xB4, 0x57, 0x01, 0xB4, 0x77, 0x83, 0xB4, 0x98, 0xB4, 0x78, 0xB4, 0x98, 0xAC, 0x78, 0x01, 0xB4, 0x78, 0x01, 0xAC, 0x78, 0x85, 0xB4, 0x98, 0xAC, 0x78, 0xB4, 0x98, 0xB4, 0x78, 0xB4, 0x98, 0xAC, 0x78, 0x01, 0xB4, 0x78, 0x83, 0xB4, 0x98, 0xB4, 0x78, 0xB4, 0x98, 0xB4, 0x78, 0x03, 0xB4, 0x58, 0x82, 0xB4, 0x57, 0xB4, 0x37, 0xBC, 0x58, 0x01, 0xBC, 0x37, 0x83, 0xB4, 0x17, 0xBC, 0x17, 0xC4, 0x17, 0xC3, 0xF6, 0x01, 0xC3, 0xD6, 0x81, 0xCB, 0xB5, 0xD3, 0xB6, 0x01, 0xCB, 0x75, 0x85, 0xD3, 0x55, 0xD3, 0x96, 0xDB, 0x96, 0xD3, 0x76, 0xDB, 0x76, 0xD3, 0x75, 0x01, 0xD3, 0x76, 0x82, 0xD3, 0x55, 0xD3, 0x75, 0xD3, 0x55, 0x02, 0xD3, 0x56, 0x80, 0xD3, 0x35, 0x03, 0xD3, 0x56, 0x83, 0xCB, 0x56, 0xCB, 0x76, 0xC3, 0x56, 0xC3, 0x77, 0x01, 0xC3, 0x97, 0x02, 0xBB, 0x76, 0x01, 0xBB, 0x56, 0x81, 0xC3, 0x76, 0xC3, 0x56, 0x02, 0xC3, 0x76, 0x86, 0xBB, 0x56, 0xB3, 0x56, 0xA3, 0x77, 0x93, 0x97, 0x8B, 0xD8, 0x84, 0x39, 0x8D, 0x1C, 0x01, 0x7C, 0xFB, 0x89, 0x74, 0x9A, 0x7C, 0x7A, 0x94, 0xBB, 0x8B, 0xD7, 0x93, 0x76, 0xA3, 0x77, 0xAB, 0x56, 0xBB, 0x77, 0xBB, 0x57, 0xBB, 0x78, 0x01, 0xBB, 0x58, 0x87, 0x9A, 0xB6, 0x61, 0x30, 0x59, 0x10, 0x59, 0x72, 0x59, 0x92, 0x51, 0x92, 0x49, 0x72, 0x51, 0xB3, 0x01, 0x49, 0x92, 0x81, 0x41, 0x92, 0x41, 0x72, 0x01, 0x41, 0x92, 0x80, 0x41, 0x72, 0x04, 0x39, 0x72, 0x80, 0x39, 0x51, 0x01, 0x39, 0x71, 0x06, 0x31, 0x51, 0x83, 0x31, 0x30, 0x31, 0x51, 0x31, 0x30, 0x31, 0x50, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x09, 0x29, 0x30, + 0x8A, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8F, 0x19, 0x52, 0x19, 0x54, 0x19, 0x75, 0x11, 0x96, 0x19, 0xD7, 0x19, 0xF8, 0x11, 0xD8, 0x11, 0xB8, 0x11, 0xD8, 0x19, 0xD8, 0x21, 0xF8, 0x21, 0xD6, 0x19, 0x54, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x05, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x87, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x11, 0x19, 0x31, 0x01, 0x19, 0x32, 0x82, 0x19, 0x74, 0x19, 0xD5, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x80, 0x19, 0xD7, 0x01, 0x19, 0xD6, 0x85, 0x11, 0x54, 0x09, 0x34, 0x09, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF6, 0x01, 0x19, 0xD7, 0x85, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x53, 0x01, 0x11, 0x74, 0x81, 0x19, 0xB5, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x87, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xB5, 0x19, 0x74, + 0x19, 0x53, 0x19, 0x52, 0x19, 0x51, 0x21, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x92, 0x19, 0x31, 0x19, 0x52, 0x19, 0x53, 0x19, 0x74, 0x19, 0x95, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x54, 0x11, 0x74, 0x11, 0x95, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xF7, 0x01, 0x19, 0xD7, 0x81, 0x19, 0xB6, 0x19, 0x74, 0x02, 0x11, 0x53, 0x8A, 0x09, 0x53, 0x11, 0x95, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xF7, 0x11, 0xD7, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x73, 0x11, 0x52, 0x01, 0x11, 0x53, 0x86, 0x11, 0x74, 0x11, 0xB5, 0x19, 0xF6, 0x19, 0xF7, 0x11, 0xD6, 0x11, 0xB6, 0x19, 0xB6, 0x01, 0x19, 0xB5, 0x83, 0x09, 0x33, 0x09, 0x13, 0x11, 0x74, 0x11, 0xB6, 0x03, 0x11, 0xD7, 0x83, 0x11, 0xB6, 0x19, 0x96, 0x19, 0x95, 0x19, 0x74, 0x01, 0x11, 0x33, 0x83, 0x11, 0x54, 0x11, 0x96, 0x19, 0xB6, 0x11, 0xB7, 0x01, 0x11, 0xD6, 0x86, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x94, 0x19, 0x53, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x33, 0x01, 0x11, 0x32, 0x01, 0x19, 0x32, 0x80, 0x11, 0x12, 0x01, 0x19, 0x32, 0x84, 0x19, 0x31, 0x19, 0x10, 0x21, 0x31, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x30, 0x0D, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, + 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8D, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x51, 0x21, 0x51, 0x21, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x96, 0x11, 0xD7, 0x02, 0x1A, 0x18, 0x84, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x55, 0x11, 0x33, 0x11, 0x53, 0x01, 0x19, 0x32, 0x02, 0x21, 0x31, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x09, 0x21, 0x30, 0x81, 0x21, 0x10, + 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x84, 0x21, 0x31, 0x29, 0x31, 0x21, 0x10, 0x21, 0x30, 0x29, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x03, 0x21, 0x10, 0x81, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x86, 0x21, 0x52, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x11, 0x54, 0x11, 0x96, 0x19, 0xF8, 0x01, 0x1A, 0x19, 0x89, 0x1A, 0x39, 0x19, 0xF8, 0x19, 0xB7, 0x11, 0x34, 0x11, 0x13, 0x10, 0xF1, 0x18, 0xF1, 0x21, 0x11, 0x21, 0x10, 0x21, 0x51, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0E, 0x01, + 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x50, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x86, 0x19, 0x31, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x11, 0x05, 0x19, 0x31, 0x80, 0x21, 0x31, 0x05, 0x19, 0x31, 0x86, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x19, 0x32, 0x19, 0x31, 0x19, 0x52, 0x01, 0x19, 0x32, 0x01, 0x11, 0x12, 0x86, 0x11, 0x33, 0x09, 0x55, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xF9, 0x0A, 0x1A, 0x09, 0xFA, 0x03, 0x01, 0xDA, 0x88, 0x0A, 0x1B, 0x12, 0x1A, 0x09, 0xD9, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x28, 0xF0, 0x89, 0x30, 0xD0, 0x40, 0x90, 0x48, 0x50, 0xA2, 0x5A, 0xD3, 0x3E, 0xDA, 0x9E, 0xDA, 0x5E, 0xEA, 0x5E, 0xF2, 0x3F, 0xF2, 0x1F, 0x01, 0xF2, 0x1E, 0x01, 0xF2, 0x5F, 0x8D, 0xEA, 0x1E, 0xEA, 0x3E, 0xE2, 0x3E, 0xE2, 0x7E, 0xDA, 0xBE, 0xDB, 0x3F, 0xBA, 0xDC, 0x50, 0x51, 0x38, 0x70, 0x30, 0xB0, 0x28, 0xD0, 0x28, 0xF0, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, + 0x8A, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x12, 0x11, 0x33, 0x01, 0x19, 0xF8, 0x84, 0x1A, 0x19, 0x11, 0xB7, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x19, 0x30, 0x21, 0x51, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x8E, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x33, 0x11, 0x54, 0x19, 0xF8, 0x11, 0xF8, 0x1A, 0x18, 0x19, 0xD6, 0x11, 0x53, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x29, 0x50, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x0D, 0x29, 0x30, 0x80, 0x29, 0x10, 0x06, 0x29, 0x30, 0x80, 0x31, 0x30, 0x02, 0x31, 0x50, 0x02, 0x31, 0x51, 0x80, 0x31, 0x50, 0x03, 0x31, 0x51, 0x01, 0x39, 0x71, 0x01, 0x31, 0x71, 0x82, 0x31, 0x51, 0x39, 0x71, 0x39, 0x92, 0x03, 0x39, 0x72, 0x80, 0x41, 0x72, 0x03, 0x41, 0x92, 0x80, 0x49, 0x93, 0x01, 0x49, 0xB3, 0x80, 0x49, 0xB2, 0x02, 0x49, 0x92, 0x89, 0x51, 0x92, 0x51, 0x71, 0x59, 0x71, 0x61, 0x70, 0x7A, 0x11, 0xC4, 0x39, 0xED, 0x3C, 0xDC, 0x79, 0xD4, 0x58, 0xDC, 0x78, 0x01, 0xDC, 0x58, 0x01, 0xDC, 0x37, 0x81, 0xE4, 0x37, 0xDC, 0x17, 0x02, 0xDC, 0x16, 0x80, 0xDC, 0x37, 0x04, 0xDC, 0x16, 0x81, 0xDB, 0xF6, 0xDC, 0x16, 0x02, 0xDB, 0xF6, 0x8F, 0xDC, 0x16, 0xDC, 0x37, 0xD4, 0x37, 0xD4, 0x57, 0xCC, 0x57, 0xBC, 0x57, 0xB4, 0x57, 0xAC, 0x78, 0xA4, 0x57, 0xA4, 0x98, 0x94, 0x77, 0x94, 0x97, 0x8C, 0x77, 0x94, 0xB8, 0x8C, 0x97, 0x8C, 0x98, 0x02, 0x8C, 0x77, 0x80, 0x8C, + 0x98, 0x01, 0x8C, 0x77, 0x81, 0x84, 0x57, 0x8C, 0x57, 0x01, 0x84, 0x57, 0x82, 0x84, 0x36, 0x8C, 0x57, 0x84, 0x37, 0x01, 0x84, 0x36, 0x84, 0x8C, 0x37, 0x84, 0x16, 0x8C, 0x16, 0x83, 0xF6, 0x8C, 0x16, 0x02, 0x8B, 0xF6, 0x01, 0x94, 0x16, 0x88, 0x9C, 0x37, 0x9C, 0x17, 0xA4, 0x17, 0xA4, 0x16, 0xB4, 0x37, 0xB4, 0x17, 0xBB, 0xF7, 0xC3, 0xF7, 0xC3, 0xF6, 0x01, 0xCB, 0xD6, 0x81, 0xCB, 0x96, 0xD3, 0xB6, 0x01, 0xD3, 0x96, 0x80, 0xD3, 0x76, 0x01, 0xD3, 0x75, 0x81, 0xCB, 0x55, 0xD3, 0x75, 0x01, 0xD3, 0x76, 0x01, 0xD3, 0x56, 0x83, 0xDB, 0x76, 0xDB, 0x56, 0xD3, 0x35, 0xD3, 0x56, 0x01, 0xD3, 0x36, 0x85, 0xD3, 0x56, 0xCB, 0x36, 0xD3, 0x56, 0xCB, 0x56, 0xC3, 0x36, 0xC3, 0x56, 0x01, 0xC3, 0x76, 0x85, 0xC3, 0x56, 0xBB, 0x35, 0xB3, 0x35, 0xBB, 0x36, 0xC3, 0x77, 0xC3, 0x76, 0x01, 0xC3, 0x56, 0x01, 0xC3, 0x77, 0x85, 0xB3, 0x56, 0xA3, 0x56, 0x93, 0x77, 0x83, 0x97, 0x7C, 0x18, 0x85, 0x1C, 0x01, 0x7D, 0x1C, 0x87, 0x6C, 0x9A, 0x6C, 0x59, 0x84, 0x59, 0x8B, 0xD8, 0x8B, 0x56, 0xA3, 0x56, 0xAB, 0x57, 0xBB, 0x37, 0x01, 0xBB, 0x57, 0x86, 0xBB, 0x37, 0xBB, 0x58, 0xBB, 0x78, 0x92, 0x54, 0x61, 0x0F, 0x59, 0x10, 0x59, 0x71, 0x01, 0x51, 0x72, 0x04, 0x49, 0x92, 0x80, 0x41, 0x92, 0x01, 0x41, 0x72, 0x80, 0x41, 0x92, 0x02, 0x39, 0x72, 0x02, 0x39, 0x71, 0x01, 0x31, 0x51, 0x80, 0x39, 0x71, 0x04, 0x31, 0x51, 0x83, 0x31, 0x31, 0x31, 0x30, 0x31, 0x51, 0x31, 0x50, 0x08, 0x29, 0x30, 0x01, 0x29, 0x10, 0x08, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, + 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x21, 0x52, 0x19, 0x33, 0x19, 0x53, 0x11, 0x54, 0x11, 0x75, 0x19, 0x95, 0x01, 0x19, 0x96, 0x83, 0x19, 0x54, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x52, 0x82, 0x11, 0x53, 0x11, 0x54, 0x19, 0x74, 0x03, 0x11, 0x74, 0x88, 0x11, 0x54, 0x19, 0x73, 0x11, 0x53, 0x19, 0x73, 0x19, 0x74, 0x19, 0x94, 0x19, 0x95, 0x11, 0x95, 0x19, 0x94, 0x01, 0x11, 0x74, 0x84, 0x19, 0x73, 0x11, 0x53, 0x19, 0x53, 0x11, 0x53, 0x19, 0x73, 0x01, 0x19, 0x74, 0x02, 0x11, 0x74, 0x01, 0x11, 0x53, 0x80, 0x19, 0x52, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x05, 0x21, 0x30, 0x82, 0x19, 0x31, 0x19, 0x52, 0x19, 0x53, 0x01, 0x19, 0x74, 0x84, 0x19, 0x94, 0x19, 0x95, + 0x11, 0x74, 0x11, 0x53, 0x19, 0x73, 0x01, 0x19, 0x53, 0x82, 0x11, 0x53, 0x11, 0x74, 0x11, 0x94, 0x03, 0x11, 0x95, 0x83, 0x19, 0x95, 0x19, 0x74, 0x19, 0x53, 0x11, 0x32, 0x01, 0x19, 0x52, 0x80, 0x19, 0x73, 0x01, 0x11, 0x94, 0x88, 0x11, 0x95, 0x11, 0xB5, 0x19, 0xB5, 0x19, 0x94, 0x19, 0x74, 0x19, 0x73, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x01, 0x19, 0x73, 0x81, 0x19, 0x94, 0x11, 0x94, 0x01, 0x19, 0xB5, 0x82, 0x11, 0x94, 0x11, 0x74, 0x19, 0x74, 0x01, 0x19, 0x53, 0x81, 0x11, 0x52, 0x19, 0x74, 0x01, 0x11, 0x94, 0x80, 0x11, 0x95, 0x01, 0x19, 0xB5, 0x81, 0x11, 0x74, 0x19, 0x54, 0x03, 0x19, 0x53, 0x01, 0x11, 0x74, 0x82, 0x19, 0x95, 0x19, 0xB5, 0x19, 0x95, 0x01, 0x19, 0x94, 0x80, 0x19, 0x74, 0x01, 0x19, 0x52, 0x81, 0x21, 0x51, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x31, 0x19, 0x10, 0x01, 0x19, 0x31, 0x82, 0x19, 0x32, 0x19, 0x52, 0x19, 0x32, 0x01, 0x19, 0x52, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x19, 0x31, 0x21, 0x51, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, + 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x51, 0x8E, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x1A, 0x19, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0xD7, 0x11, 0x96, 0x09, 0x55, 0x09, 0x34, 0x11, 0x33, 0x19, 0x33, 0x01, 0x19, 0x32, 0x82, 0x21, 0x32, 0x21, 0x31, 0x19, 0x31, 0x0A, 0x21, 0x31, 0x81, 0x19, 0x30, 0x19, 0x31, 0x17, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x52, 0x80, 0x21, 0x51, 0x0D, 0x21, 0x31, 0x80, 0x21, 0x32, 0x09, 0x21, 0x31, + 0x80, 0x29, 0x31, 0x03, 0x21, 0x31, 0x01, 0x21, 0x52, 0x87, 0x21, 0x32, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x53, 0x11, 0x75, 0x11, 0xB6, 0x19, 0xF8, 0x01, 0x1A, 0x19, 0x86, 0x1A, 0x39, 0x19, 0xF8, 0x19, 0xB7, 0x11, 0x75, 0x11, 0x13, 0x10, 0xF1, 0x18, 0xF1, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x08, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0E, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x31, 0x82, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x19, 0x10, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x19, 0x10, 0x21, 0x11, 0x02, 0x21, 0x31, 0x88, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x05, 0x19, 0x31, 0x89, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x09, 0xB7, 0x11, 0xD8, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0xDA, 0x02, 0x09, 0xFA, 0x88, 0x12, 0x19, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, + 0x19, 0x30, 0x05, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x9B, 0x28, 0xF0, 0x30, 0xD0, 0x38, 0xB0, 0x40, 0x70, 0x50, 0x30, 0xBA, 0xBC, 0xDB, 0x5F, 0xDA, 0x9E, 0xE2, 0x7E, 0xE2, 0x3E, 0xEA, 0x5F, 0xEA, 0x3E, 0xEA, 0x5E, 0xEA, 0x5F, 0xEA, 0x5E, 0xE2, 0x3E, 0xE2, 0x5E, 0xDA, 0x5D, 0xD2, 0x9D, 0xD3, 0x1E, 0xD3, 0x9F, 0x60, 0xB3, 0x40, 0x50, 0x38, 0x90, 0x30, 0xD0, 0x28, 0xD0, 0x28, 0xF0, 0x29, 0x10, 0x08, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x34, 0x19, 0xF8, 0x12, 0x19, 0x11, 0xF9, 0x19, 0xF8, 0x09, 0x54, 0x11, 0x53, 0x19, 0x53, 0x19, 0x32, 0x01, 0x19, 0x31, 0x95, 0x21, 0x51, 0x21, 0x30, 0x19, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x31, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x55, 0x19, 0xD8, 0x1A, 0x19, 0x19, 0xF8, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x85, 0x29, 0x51, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x0F, 0x29, 0x30, 0x80, 0x31, 0x30, 0x02, 0x31, 0x50, 0x81, 0x31, + 0x51, 0x31, 0x30, 0x05, 0x31, 0x51, 0x80, 0x39, 0x51, 0x01, 0x31, 0x51, 0x80, 0x39, 0x71, 0x02, 0x31, 0x51, 0x02, 0x39, 0x72, 0x81, 0x39, 0x92, 0x39, 0x72, 0x01, 0x41, 0x72, 0x03, 0x41, 0x92, 0x82, 0x49, 0x93, 0x49, 0xB3, 0x49, 0xB2, 0x01, 0x49, 0x92, 0x01, 0x51, 0x92, 0x01, 0x51, 0x91, 0x87, 0x59, 0x50, 0x59, 0x2E, 0xA3, 0x36, 0xDC, 0xDB, 0xE4, 0xBA, 0xDC, 0x59, 0xDC, 0x79, 0xDC, 0x58, 0x02, 0xDC, 0x37, 0x02, 0xDC, 0x17, 0x81, 0xDC, 0x37, 0xDC, 0x17, 0x02, 0xDC, 0x16, 0x80, 0xDC, 0x37, 0x03, 0xDC, 0x16, 0x82, 0xE4, 0x17, 0xDC, 0x16, 0xDB, 0xF6, 0x01, 0xDC, 0x16, 0x89, 0xDC, 0x37, 0xD4, 0x57, 0xD4, 0x78, 0xC4, 0x57, 0xBC, 0x78, 0xA4, 0x57, 0x94, 0x57, 0x94, 0x97, 0x84, 0x77, 0x84, 0xD8, 0x01, 0x74, 0xB7, 0x80, 0x74, 0xD7, 0x01, 0x6C, 0xB7, 0x80, 0x74, 0xD8, 0x05, 0x6C, 0xB7, 0x03, 0x6C, 0x97, 0x80, 0x6C, 0xB7, 0x03, 0x6C, 0x97, 0x81, 0x74, 0x97, 0x6C, 0x77, 0x01, 0x74, 0x97, 0x80, 0x74, 0x77, 0x01, 0x74, 0x57, 0x81, 0x74, 0x36, 0x6C, 0x16, 0x01, 0x6B, 0xF5, 0x80, 0x6B, 0xB4, 0x01, 0x73, 0xB4, 0x84, 0x83, 0xD5, 0x8B, 0xF5, 0x9B, 0xF6, 0xA3, 0xF6, 0xAB, 0xF6, 0x01, 0xB3, 0xF6, 0x83, 0xB3, 0xD6, 0xBB, 0xD6, 0xBB, 0xB6, 0xC3, 0xD7, 0x01, 0xC3, 0xB6, 0x83, 0xC3, 0x75, 0xCB, 0xB6, 0xCB, 0x96, 0xCB, 0x75, 0x01, 0xCB, 0x76, 0x01, 0xD3, 0x76, 0x84, 0xD3, 0x55, 0xD3, 0x56, 0xD3, 0x35, 0xD3, 0x36, 0xD3, 0x56, 0x01, 0xD3, 0x36, 0x80, 0xD3, 0x56, 0x02, 0xCB, 0x36, 0x81, 0xCB, 0x56, 0xCB, 0x76, 0x01, 0xC3, 0x56, 0x83, 0xBB, 0x15, + 0xBB, 0x35, 0xBB, 0x36, 0xC3, 0x56, 0x01, 0xC3, 0x36, 0x88, 0xCB, 0x56, 0xC3, 0x76, 0xBB, 0x56, 0xB3, 0x56, 0xA3, 0x57, 0x93, 0xB8, 0x7B, 0xB7, 0x7C, 0x5A, 0x7C, 0xFC, 0x01, 0x75, 0x3C, 0x92, 0x6C, 0xDB, 0x74, 0xBA, 0x84, 0x9A, 0x8C, 0x18, 0x8B, 0x56, 0xA3, 0x57, 0xAB, 0x57, 0xBB, 0x78, 0xB2, 0xF6, 0xBB, 0x37, 0xBB, 0x16, 0xBB, 0x57, 0xC3, 0x78, 0xB3, 0x17, 0x79, 0xB2, 0x58, 0xEF, 0x59, 0x51, 0x59, 0x72, 0x51, 0x72, 0x01, 0x51, 0x92, 0x01, 0x49, 0x92, 0x01, 0x41, 0x72, 0x01, 0x41, 0x92, 0x82, 0x41, 0x72, 0x39, 0x72, 0x39, 0x92, 0x02, 0x39, 0x72, 0x02, 0x39, 0x71, 0x82, 0x31, 0x71, 0x31, 0x51, 0x31, 0x71, 0x01, 0x31, 0x51, 0x85, 0x31, 0x30, 0x31, 0x31, 0x31, 0x30, 0x31, 0x51, 0x29, 0x30, 0x29, 0x50, 0x07, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x32, 0x01, 0x19, 0x32, 0x01, 0x19, 0x33, 0x87, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x18, 0xF1, 0x19, 0x11, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, + 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x09, 0x21, 0x10, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x32, 0x01, 0x19, 0x33, 0x80, 0x11, 0x32, 0x01, 0x11, 0x33, 0x81, 0x11, 0x32, 0x19, 0x33, 0x04, 0x11, 0x32, 0x81, 0x11, 0x52, 0x11, 0x53, 0x03, 0x11, 0x32, 0x03, 0x19, 0x32, 0x83, 0x19, 0x52, 0x19, 0x33, 0x11, 0x33, 0x19, 0x53, 0x01, 0x19, 0x33, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x02, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x01, 0x19, 0x52, 0x81, 0x19, 0x53, 0x11, 0x52, 0x01, 0x19, 0x52, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x52, 0x04, 0x11, 0x53, 0x01, 0x19, 0x53, 0x86, 0x19, 0x32, 0x19, 0x31, 0x19, 0x51, 0x19, 0x72, 0x19, 0x52, 0x11, 0x52, 0x11, 0x73, 0x03, 0x11, 0x53, 0x02, 0x19, 0x52, 0x01, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x52, 0x80, 0x11, 0x52, 0x02, 0x11, 0x53, 0x80, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x19, 0x52, 0x82, 0x11, 0x52, 0x11, 0x53, 0x11, 0x73, 0x02, 0x11, 0x53, 0x80, 0x19, 0x53, 0x02, 0x19, 0x32, 0x83, 0x19, 0x52, 0x19, 0x32, 0x19, 0x52, 0x11, 0x52, 0x02, 0x11, 0x53, 0x80, 0x11, 0x52, 0x01, 0x19, 0x52, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, + 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x19, 0x10, 0x03, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x10, 0x03, 0x21, 0x31, 0x80, 0x19, 0x30, 0x04, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x87, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, + 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x19, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x01, 0x1A, 0x19, 0x86, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x09, 0x55, 0x09, 0x34, 0x09, 0x33, 0x11, 0x13, 0x01, 0x10, 0xF2, 0x01, 0x10, 0xF1, 0x80, 0x11, 0x11, 0x01, 0x10, 0xF0, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x11, 0x11, 0x01, 0x19, 0x11, 0x81, 0x11, 0x11, 0x19, 0x31, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x11, 0x10, 0xF1, 0x02, 0x19, 0x11, 0x83, 0x10, 0xF1, 0x11, 0x11, 0x10, 0xF1, 0x11, 0x11, 0x02, 0x10, 0xF1, 0x80, 0x19, 0x11, 0x08, 0x10, 0xF1, 0x04, 0x11, 0x11, 0x02, 0x10, 0xF1, 0x81, 0x19, 0x11, 0x11, 0x11, 0x01, 0x10, 0xF1, 0x81, 0x11, 0x11, 0x10, 0xF1, 0x03, 0x11, 0x11, 0x01, 0x19, 0x12, 0x81, 0x19, 0x11, 0x11, 0x11, 0x02, 0x19, 0x11, 0x85, 0x10, 0xF1, 0x19, 0x11, 0x18, 0xF0, 0x10, 0xF0, 0x18, 0xF0, 0x18, 0xF1, 0x01, 0x10, 0xF1, 0x81, 0x08, 0xF1, 0x10, 0xF1, 0x02, 0x08, 0xD1, 0x83, 0x08, 0xF2, 0x09, 0x13, 0x09, 0x55, 0x11, 0x96, 0x01, 0x11, 0xF8, 0x89, 0x12, 0x19, 0x1A, 0x19, 0x19, 0xD8, 0x11, 0x96, 0x11, 0x55, 0x11, 0x13, 0x19, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x06, + 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x08, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x19, 0x10, 0x02, 0x21, 0x30, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x84, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB7, 0x01, 0x11, 0xD8, 0x03, 0x09, 0xD9, 0x84, 0x09, 0xF9, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x95, 0x19, 0x74, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x8D, 0x29, 0x0F, 0x28, 0xEF, 0x30, 0xF0, 0x38, 0xD0, 0x40, 0xB0, 0x48, 0x50, 0x58, 0x51, 0xB2, 0x9B, 0xDB, 0x5F, 0xD2, 0x9E, 0xDA, 0x7E, 0xDA, 0x5E, 0xE2, 0x5E, 0xDA, 0x5E, 0x01, 0xE2, 0x7E, 0x8A, 0xDA, 0x5D, 0xD2, 0x7D, 0xD2, 0x9D, 0xD3, 0x3F, 0xC3, 0x1D, 0x71, 0x14, 0x40, 0x30, 0x38, 0x90, 0x30, 0xD0, 0x28, 0xD0, 0x28, 0xF0, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x8A, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, + 0x2F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x11, 0x75, 0x11, 0xF8, 0x01, 0x11, 0xF9, 0x88, 0x09, 0xB8, 0x09, 0x75, 0x09, 0x74, 0x11, 0x74, 0x11, 0x53, 0x11, 0x52, 0x11, 0x31, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x21, 0x11, 0x19, 0x12, 0x11, 0x13, 0x11, 0x34, 0x11, 0x76, 0x11, 0xB7, 0x01, 0x11, 0xF8, 0x81, 0x11, 0xD7, 0x11, 0x75, 0x01, 0x11, 0x33, 0x87, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x11, 0x29, 0x30, 0x80, 0x29, 0x50, 0x03, 0x31, 0x50, 0x81, 0x31, 0x30, 0x31, 0x50, 0x06, 0x31, 0x51, 0x80, 0x39, 0x51, 0x02, 0x39, 0x71, 0x02, 0x39, 0x72, 0x80, 0x39, 0x92, 0x01, 0x39, 0x72, 0x81, 0x41, 0x92, 0x41, 0x72, 0x01, 0x41, 0x92, 0x01, 0x41, 0x72, 0x80, 0x49, 0x93, 0x01, 0x49, 0x92, 0x81, 0x49, 0x93, 0x49, 0xB3, 0x01, 0x49, 0x92, 0x01, 0x51, 0x71, 0x86, 0x51, 0x70, 0x59, 0x4F, 0x7A, 0x11, 0xCC, 0x7A, 0xE4, 0xFB, 0xD4, 0x79, 0xDC, 0x79, 0x01, 0xDC, 0x58, 0x01, 0xDC, 0x37, 0x81, 0xE4, 0x37, 0xDC, 0x37, 0x04, 0xDC, 0x17, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x16, 0x01, 0xDC, 0x37, 0x81, 0xDC, 0x17, 0xDC, 0x16, 0x01, 0xDB, 0xF6, 0x81, 0xDC, 0x16, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x8B, 0xD4, 0x37, 0xC4, 0x37, + 0xBC, 0x57, 0xAC, 0x57, 0x9C, 0x98, 0x9D, 0x19, 0x95, 0x5A, 0x85, 0x7A, 0x7D, 0x9B, 0x75, 0xBA, 0x75, 0xDB, 0x76, 0x1C, 0x01, 0x76, 0x1B, 0x82, 0x76, 0x1C, 0x6E, 0x1C, 0x76, 0x1C, 0x01, 0x6E, 0x1C, 0x03, 0x76, 0x3C, 0x01, 0x76, 0x5D, 0x80, 0x76, 0x3D, 0x01, 0x76, 0x3C, 0x01, 0x7E, 0x3C, 0x81, 0x76, 0x1C, 0x7E, 0x3D, 0x02, 0x7E, 0x1C, 0x06, 0x7D, 0xFC, 0x89, 0x7D, 0xDC, 0x7D, 0xBB, 0x7D, 0x7A, 0x7D, 0x39, 0x7C, 0xB8, 0x7C, 0x97, 0x7C, 0x56, 0x84, 0x36, 0x83, 0xF5, 0x83, 0xB5, 0x01, 0x8B, 0xB5, 0x82, 0x9B, 0xB5, 0xA3, 0xD6, 0xAB, 0xD6, 0x01, 0xB3, 0xF6, 0x86, 0xBB, 0xD6, 0xBB, 0x96, 0xBB, 0xB6, 0xC3, 0x96, 0xCB, 0x96, 0xCB, 0x75, 0xCB, 0x55, 0x01, 0xD3, 0x76, 0x01, 0xD3, 0x56, 0x04, 0xD3, 0x36, 0x01, 0xCB, 0x36, 0x81, 0xCB, 0x35, 0xCB, 0x15, 0x01, 0xCB, 0x56, 0x81, 0xC3, 0x36, 0xBB, 0x15, 0x01, 0xBA, 0xF5, 0x96, 0xC3, 0x15, 0xC3, 0x36, 0xCB, 0x77, 0xC3, 0x36, 0xC3, 0x56, 0xBB, 0x56, 0xB3, 0x56, 0xA3, 0x57, 0x93, 0xB8, 0x7B, 0xB8, 0x6B, 0xD8, 0x85, 0x5D, 0x75, 0x5D, 0x75, 0x7D, 0x6C, 0xFB, 0x6C, 0xBA, 0x7C, 0xBB, 0x84, 0x18, 0x8B, 0x76, 0x93, 0x15, 0xAB, 0x57, 0xBB, 0x77, 0xBB, 0x36, 0x02, 0xBB, 0x16, 0x87, 0xBB, 0x37, 0xC3, 0x78, 0xA2, 0xD6, 0x71, 0x71, 0x61, 0x10, 0x59, 0x52, 0x59, 0x92, 0x51, 0x92, 0x04, 0x49, 0x92, 0x03, 0x41, 0x92, 0x85, 0x39, 0x92, 0x39, 0x72, 0x39, 0x71, 0x39, 0x51, 0x31, 0x51, 0x39, 0x71, 0x01, 0x31, 0x71, 0x05, 0x31, 0x51, 0x81, 0x31, 0x30, 0x31, 0x50, 0x06, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, + 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x31, 0x80, 0x21, 0x32, 0x01, 0x19, 0x31, 0x84, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x07, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x02, 0x19, 0x52, 0x02, 0x19, 0x32, 0x81, 0x19, 0x31, 0x11, 0x11, 0x02, 0x19, 0x31, 0x03, 0x19, 0x52, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x02, 0x19, 0x52, 0x81, 0x19, 0x53, 0x19, 0x52, 0x01, 0x19, 0x32, 0x84, 0x21, 0x31, 0x21, 0x11, 0x21, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x04, 0x29, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x19, 0x31, 0x02, 0x19, 0x52, 0x81, 0x19, 0x72, 0x19, + 0x51, 0x02, 0x19, 0x31, 0x82, 0x19, 0x11, 0x19, 0x31, 0x11, 0x31, 0x01, 0x11, 0x52, 0x04, 0x19, 0x52, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x03, 0x19, 0x31, 0x01, 0x19, 0x52, 0x80, 0x19, 0x72, 0x01, 0x19, 0x52, 0x07, 0x19, 0x31, 0x83, 0x19, 0x52, 0x19, 0x72, 0x19, 0x32, 0x19, 0x52, 0x04, 0x19, 0x31, 0x03, 0x19, 0x52, 0x80, 0x19, 0x72, 0x06, 0x19, 0x31, 0x80, 0x11, 0x32, 0x03, 0x19, 0x52, 0x02, 0x19, 0x31, 0x80, 0x19, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x07, 0x21, 0x30, 0x02, 0x21, 0x10, 0x07, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x09, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, + 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x07, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x86, 0x19, 0x11, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD8, 0x01, 0x1A, 0x19, 0x87, 0x19, 0xF9, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0x97, 0x11, 0x76, 0x11, 0x75, 0x09, 0x34, 0x11, 0x34, 0x02, 0x11, 0x33, 0x80, 0x11, 0x32, 0x01, 0x11, 0x12, 0x02, 0x11, 0x32, 0x81, 0x11, 0x33, 0x09, 0x32, 0x04, 0x11, 0x33, 0x82, 0x11, 0x13, 0x11, 0x33, 0x09, 0x33, 0x01, 0x11, 0x13, 0x03, 0x09, 0x12, 0x80, 0x11, 0x33, 0x01, 0x09, 0x12, 0x04, 0x11, 0x13, 0x80, 0x11, 0x33, 0x01, 0x11, 0x32, 0x82, 0x11, 0x33, 0x11, 0x32, 0x09, 0x32, 0x01, 0x11, 0x33, 0x83, 0x09, 0x13, 0x11, 0x33, 0x09, 0x33, 0x09, 0x12, 0x01, 0x09, 0x33, 0x83, 0x09, 0x13, 0x11, 0x33, 0x09, 0x13, 0x11, 0x33, 0x01, 0x11, 0x13, 0x01, 0x11, 0x33, 0x82, 0x09, 0x12, 0x11, 0x13, 0x09, 0x33, 0x02, 0x09, 0x13, 0x07, 0x09, 0x12, 0x84, 0x08, 0xF2, 0x08, 0xF1, 0x08, 0xF2, 0x09, 0x12, 0x09, 0x13, 0x02, 0x09, 0x33, 0x95, 0x11, 0x54, 0x11, 0x74, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x19, 0xF8, 0x11, 0xF8, 0x12, 0x18, 0x1A, 0x19, 0x11, 0xF8, 0x11, 0x96, 0x11, 0x55, 0x11, 0x33, 0x11, 0x12, + 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x05, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x09, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x31, 0x83, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x01, 0x11, 0x96, 0x01, 0x11, 0xB7, 0x86, 0x11, 0xB8, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0xB6, 0x11, 0x95, 0x19, 0x74, 0x19, 0x53, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x06, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x8C, 0x29, 0x0F, 0x28, 0xEF, 0x30, 0xF0, 0x38, 0xB0, 0x40, 0x90, 0x48, 0x70, 0x50, 0x30, 0x99, 0xF9, 0xD3, 0x3F, 0xD2, 0xFE, 0xCA, 0x9D, 0xCA, 0x7D, 0xD2, 0x9E, 0x01, 0xCA, 0x7D, 0x89, 0xCA, 0x9D, 0xCA, 0xBD, 0xD3, 0x7F, + 0xBB, 0x1D, 0x60, 0xD3, 0x40, 0x30, 0x38, 0x90, 0x30, 0xB0, 0x28, 0xD0, 0x28, 0xF0, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x09, 0x33, 0x11, 0x96, 0x11, 0xF8, 0x01, 0x09, 0xF9, 0x8C, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0xB6, 0x11, 0xB5, 0x11, 0x94, 0x11, 0x74, 0x11, 0x52, 0x11, 0x31, 0x19, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x21, 0x11, 0x19, 0x12, 0x19, 0x33, 0x11, 0x34, 0x11, 0x75, 0x11, 0xB7, 0x01, 0x11, 0xD8, 0x87, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x03, 0x29, 0x30, 0x80, 0x31, 0x30, 0x0A, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x04, 0x31, 0x50, 0x08, 0x31, 0x51, 0x01, 0x39, 0x51, 0x07, 0x39, 0x72, 0x80, 0x41, 0x72, 0x03, 0x41, 0x92, 0x05, 0x49, 0x92, 0x8A, 0x51, 0xB2, 0x51, 0x92, 0x51, 0x71, 0x59, 0x91, 0x59, 0x4F, 0x8A, 0xB4, 0xDC, 0xDB, 0xDC, 0xBA, 0xDC, 0x99, + 0xDC, 0x78, 0xDC, 0x58, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x17, 0x01, 0xDC, 0x37, 0x05, 0xDC, 0x17, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x16, 0x97, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x16, 0xDC, 0x37, 0xDB, 0xF6, 0xDC, 0x16, 0xDC, 0x37, 0xDC, 0x57, 0xD4, 0x57, 0xC4, 0x57, 0xAC, 0x57, 0x9C, 0x57, 0x94, 0xD8, 0x8D, 0x5A, 0x8E, 0x1C, 0x7E, 0x3C, 0x76, 0x5D, 0x6E, 0x7D, 0x6E, 0xBE, 0x66, 0xDE, 0x66, 0xFE, 0x66, 0xDE, 0x66, 0xFE, 0x5E, 0xDE, 0x01, 0x66, 0xFE, 0x01, 0x5E, 0xFE, 0x82, 0x66, 0xFE, 0x5E, 0xDE, 0x66, 0xFE, 0x02, 0x5E, 0xDE, 0x80, 0x5E, 0xBE, 0x01, 0x66, 0xBE, 0x80, 0x5E, 0xBE, 0x04, 0x66, 0xBE, 0x81, 0x66, 0x9E, 0x66, 0xBE, 0x01, 0x66, 0x9E, 0x83, 0x6E, 0x9E, 0x6E, 0xBE, 0x6E, 0x9E, 0x6E, 0xBE, 0x01, 0x76, 0xDF, 0x96, 0x7E, 0xBE, 0x86, 0xBE, 0x8E, 0x9F, 0x8E, 0x7E, 0x8E, 0x5E, 0x96, 0x3D, 0x95, 0xFC, 0x8D, 0x9B, 0x85, 0x19, 0x7C, 0xB8, 0x74, 0x56, 0x73, 0xF5, 0x7B, 0xF5, 0x8C, 0x16, 0x94, 0x36, 0x9C, 0x16, 0xAC, 0x37, 0xB4, 0x37, 0xAB, 0xD6, 0xBB, 0xD7, 0xBB, 0x96, 0xC3, 0x96, 0xCB, 0x96, 0x01, 0xCB, 0x76, 0x81, 0xCB, 0x56, 0xD3, 0x76, 0x02, 0xD3, 0x56, 0x02, 0xD3, 0x36, 0x01, 0xCB, 0x15, 0x80, 0xD3, 0x56, 0x01, 0xCB, 0x36, 0x85, 0xC3, 0x35, 0xC3, 0x15, 0xBA, 0xF5, 0xBA, 0xD5, 0xC3, 0x15, 0xCB, 0x56, 0x01, 0xCB, 0x36, 0x91, 0xC3, 0x36, 0xBB, 0x56, 0xB3, 0x57, 0xA3, 0x77, 0x93, 0xB8, 0x73, 0xD8, 0x64, 0x19, 0x75, 0x3C, 0x6D, 0x9D, 0x6D, 0x7D, 0x6D, 0x5D, 0x64, 0xDB, 0x7C, 0xFB, 0x8C, 0x9A, 0x83, 0x76, 0x93, 0x35, 0xA3, 0x56, + 0xBB, 0x77, 0x01, 0xBB, 0x36, 0x80, 0xBA, 0xF6, 0x01, 0xC3, 0x16, 0x85, 0xC3, 0x37, 0xBB, 0x38, 0x89, 0xF3, 0x61, 0x10, 0x61, 0x51, 0x59, 0x72, 0x01, 0x51, 0x72, 0x02, 0x49, 0x92, 0x01, 0x41, 0x92, 0x82, 0x41, 0x72, 0x41, 0x92, 0x41, 0x72, 0x03, 0x39, 0x72, 0x82, 0x39, 0x71, 0x31, 0x51, 0x39, 0x71, 0x05, 0x31, 0x51, 0x80, 0x31, 0x30, 0x01, 0x31, 0x51, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x08, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x8B, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x21, 0x11, 0x0A, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x8B, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x04, 0x19, + 0x31, 0x80, 0x19, 0x10, 0x08, 0x19, 0x31, 0x01, 0x19, 0x11, 0x04, 0x19, 0x31, 0x02, 0x19, 0x32, 0x80, 0x19, 0x31, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x19, 0x30, 0x19, 0x31, 0x02, 0x19, 0x51, 0x01, 0x19, 0x31, 0x01, 0x19, 0x30, 0x03, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x52, 0x01, 0x19, 0x31, 0x80, 0x19, 0x52, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x09, 0x19, 0x31, 0x81, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x13, 0x19, 0x31, 0x80, 0x19, 0x11, 0x05, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x0D, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, + 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x04, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x11, 0x53, 0x11, 0x75, 0x11, 0x96, 0x01, 0x11, 0xD8, 0x82, 0x11, 0xF9, 0x1A, 0x19, 0x11, 0xF9, 0x03, 0x11, 0xD8, 0x01, 0x19, 0xF8, 0x06, 0x19, 0xF7, 0x82, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x02, 0x19, 0xF7, 0x82, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x02, 0x19, 0xF7, 0x80, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x80, 0x19, 0xF8, 0x08, 0x19, 0xF7, 0x80, 0x22, 0x17, 0x0A, 0x19, 0xF7, 0x81, 0x1A, 0x17, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x84, 0x22, 0x18, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF7, 0x22, 0x18, 0x0C, 0x19, 0xF7, 0x89, 0x19, 0xD7, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xF8, 0x1A, 0x38, 0x22, 0x39, 0x22, 0x38, 0x22, 0x59, 0x22, 0x39, 0x1A, 0x39, 0x01, 0x1A, 0x18, 0x8B, 0x1A, 0x39, 0x12, + 0x19, 0x1A, 0x39, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0x96, 0x11, 0x75, 0x11, 0x34, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x09, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x88, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x11, 0x12, 0x19, 0x33, 0x19, 0x74, 0x19, 0x95, 0x19, 0xB6, 0x01, 0x19, 0x95, 0x87, 0x19, 0x75, 0x11, 0x54, 0x11, 0x53, 0x19, 0x53, 0x19, 0x52, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x04, 0x21, 0x30, 0x80, 0x29, 0x50, 0x03, 0x21, 0x30, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x8A, 0x29, 0x0F, 0x28, 0xEF, 0x30, 0xF0, 0x30, 0xB0, 0x38, 0xB0, 0x40, 0x90, 0x40, 0x30, 0x58, + 0x72, 0x92, 0x19, 0xB2, 0xDD, 0xC2, 0xFE, 0x01, 0xC2, 0xFD, 0x88, 0xC3, 0x1E, 0xC3, 0x3E, 0xBB, 0x3D, 0x81, 0xB6, 0x48, 0x50, 0x40, 0x70, 0x38, 0x90, 0x30, 0xB0, 0x28, 0xD0, 0x01, 0x28, 0xF0, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x95, 0x11, 0xF8, 0x03, 0x09, 0xF9, 0x85, 0x09, 0xD8, 0x09, 0xD7, 0x11, 0xF7, 0x11, 0xD6, 0x11, 0xB5, 0x09, 0x74, 0x01, 0x11, 0x32, 0x82, 0x19, 0x51, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x91, 0x21, 0x11, 0x21, 0x32, 0x19, 0x33, 0x19, 0x54, 0x19, 0x96, 0x19, 0xD7, 0x19, 0xF8, 0x11, 0xD8, 0x09, 0xB8, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x0C, 0x29, 0x30, 0x81, 0x31, 0x50, 0x29, 0x30, 0x02, 0x31, 0x50, 0x80, 0x29, 0x30, 0x01, 0x31, 0x50, 0x02, 0x31, 0x51, 0x84, 0x31, 0x50, 0x31, 0x51, 0x31, 0x50, 0x31, 0x51, 0x39, 0x51, 0x01, 0x31, 0x51, 0x81, 0x39, 0x51, 0x39, 0x71, 0x02, 0x39, 0x51, 0x80, 0x39, 0x71, 0x04, 0x39, 0x72, + 0x02, 0x41, 0x92, 0x01, 0x41, 0x72, 0x81, 0x49, 0x92, 0x49, 0xB3, 0x03, 0x49, 0x92, 0x01, 0x51, 0xB2, 0x89, 0x51, 0x91, 0x51, 0x71, 0x59, 0x50, 0x61, 0x6F, 0xAB, 0xB7, 0xDC, 0xDB, 0xDC, 0xBA, 0xDC, 0x99, 0xDC, 0x58, 0xDC, 0x38, 0x01, 0xDC, 0x58, 0x85, 0xDC, 0x38, 0xDC, 0x37, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x17, 0xE4, 0x37, 0x03, 0xDC, 0x16, 0x81, 0xDC, 0x17, 0xDC, 0x37, 0x01, 0xDC, 0x17, 0x01, 0xDB, 0xF6, 0x80, 0xD4, 0x16, 0x02, 0xDC, 0x37, 0x8B, 0xD4, 0x37, 0xCC, 0x58, 0xBC, 0x57, 0xAC, 0x57, 0x94, 0x98, 0x84, 0xF9, 0x7D, 0x9B, 0x6D, 0xFC, 0x66, 0x7D, 0x5E, 0xBD, 0x56, 0xFE, 0x4E, 0xFE, 0x01, 0x46, 0xFE, 0x01, 0x3E, 0xFE, 0x01, 0x3E, 0xDE, 0x02, 0x36, 0xDE, 0x81, 0x36, 0xDD, 0x36, 0xFE, 0x02, 0x36, 0xDE, 0x07, 0x3E, 0xDE, 0x82, 0x3E, 0xBE, 0x3E, 0xDE, 0x3E, 0xBE, 0x02, 0x46, 0xDE, 0x85, 0x46, 0xDF, 0x46, 0xDE, 0x46, 0xDF, 0x46, 0xBE, 0x46, 0xDE, 0x46, 0xBE, 0x01, 0x4E, 0xBE, 0x85, 0x56, 0xBE, 0x56, 0x9E, 0x5E, 0x9E, 0x66, 0x7E, 0x66, 0x9E, 0x6E, 0x9E, 0x01, 0x76, 0x9E, 0x93, 0x7E, 0x9E, 0x76, 0x5D, 0x75, 0xFC, 0x75, 0x9A, 0x6D, 0x19, 0x6C, 0x97, 0x74, 0x77, 0x7C, 0x36, 0x7B, 0xB5, 0x83, 0x95, 0x9B, 0xB6, 0xA3, 0xB6, 0xAB, 0x96, 0xBB, 0x96, 0xC3, 0x96, 0xC3, 0x76, 0xC3, 0x55, 0xCB, 0x56, 0xCB, 0x36, 0xD3, 0x36, 0x01, 0xD3, 0x56, 0x02, 0xD3, 0x36, 0x82, 0xD3, 0x16, 0xCB, 0x16, 0xCB, 0x36, 0x01, 0xD3, 0x56, 0x01, 0xCB, 0x36, 0x98, 0xCB, 0x15, 0xC2, 0xD4, 0xCB, 0x15, 0xCA, 0xF5, 0xCB, 0x16, 0xCB, 0x36, 0xC3, 0x57, 0xBB, + 0x57, 0xAB, 0x36, 0x93, 0x36, 0x8B, 0xD9, 0x73, 0xF9, 0x64, 0x59, 0x6D, 0x5D, 0x65, 0x9D, 0x5D, 0x9D, 0x65, 0x9D, 0x5C, 0xFB, 0x75, 0x1B, 0x84, 0xDA, 0x7B, 0xB6, 0x83, 0x14, 0xA3, 0x56, 0xB3, 0x76, 0xC3, 0x57, 0x02, 0xC3, 0x16, 0x88, 0xC2, 0xF6, 0xC3, 0x17, 0xC3, 0x38, 0xAA, 0xB6, 0x71, 0x71, 0x58, 0xF0, 0x59, 0x51, 0x59, 0x72, 0x51, 0x72, 0x02, 0x49, 0x92, 0x01, 0x41, 0x72, 0x01, 0x41, 0x92, 0x04, 0x39, 0x72, 0x80, 0x39, 0x71, 0x08, 0x31, 0x51, 0x0A, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x0A, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x80, 0x19, 0x31, 0x02, 0x21, 0x31, 0x82, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x01, 0x19, 0x31, 0x81, 0x19, 0x51, 0x19, 0x31, 0x01, 0x19, 0x51, 0x80, 0x21, 0x51, 0x02, 0x19, 0x31, 0x80, 0x19, + 0x11, 0x06, 0x19, 0x31, 0x03, 0x21, 0x31, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x19, 0x51, 0x01, 0x19, 0x31, 0x80, 0x21, 0x30, 0x02, 0x19, 0x30, 0x03, 0x19, 0x51, 0x81, 0x19, 0x31, 0x21, 0x52, 0x01, 0x19, 0x31, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x21, 0x31, 0x06, 0x19, 0x31, 0x81, 0x21, 0x51, 0x21, 0x31, 0x05, 0x21, 0x30, 0x01, 0x19, 0x30, 0x08, 0x19, 0x31, 0x84, 0x19, 0x30, 0x19, 0x31, 0x19, 0x30, 0x19, 0x31, 0x21, 0x31, 0x0B, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x19, 0x30, 0x06, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x0E, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, + 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x06, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x88, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xD7, 0x19, 0xF9, 0x11, 0xD8, 0x01, 0x11, 0xF9, 0x02, 0x11, 0xD9, 0x80, 0x11, 0xF9, 0x07, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x04, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x05, 0x11, 0xF8, 0x82, 0x12, 0x19, 0x11, 0xF8, 0x19, 0xF9, 0x04, 0x11, 0xF8, 0x80, 0x19, 0xF8, 0x02, 0x11, 0xF8, 0x80, 0x19, 0xF8, 0x07, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x09, 0x11, 0xF8, 0x80, 0x12, 0x18, 0x02, 0x11, 0xF8, 0x80, 0x12, 0x18, 0x02, 0x11, 0xF8, 0x80, 0x12, 0x18, 0x02, 0x11, 0xF8, 0x02, 0x12, 0x18, 0x82, 0x11, 0xF8, 0x12, 0x18, 0x1A, 0x39, 0x02, 0x11, 0xF9, 0x81, 0x11, 0xD8, 0x11, 0xF8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xD7, 0x01, 0x09, 0xB7, 0x8B, 0x09, 0xD7, + 0x11, 0xF8, 0x09, 0xD7, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x55, 0x11, 0x34, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x04, 0x21, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x04, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x19, 0x53, 0x01, 0x19, 0x33, 0x01, 0x19, 0x32, 0x02, 0x19, 0x31, 0x81, 0x19, 0x30, 0x19, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x85, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x28, 0xEF, 0x90, 0x30, 0xCF, 0x30, 0xB0, 0x38, 0x90, 0x38, 0x50, 0x38, 0x10, 0x40, + 0x10, 0x50, 0x72, 0x60, 0xF4, 0x69, 0x14, 0x60, 0xD3, 0x48, 0x51, 0x40, 0x10, 0x38, 0x0F, 0x38, 0x70, 0x38, 0xB0, 0x30, 0xAF, 0x28, 0xD0, 0x01, 0x28, 0xF0, 0x03, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x12, 0x18, 0x04, 0x09, 0xF9, 0x01, 0x09, 0xF8, 0x01, 0x11, 0xD7, 0x85, 0x11, 0xB5, 0x11, 0x74, 0x11, 0x53, 0x19, 0x52, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x31, 0x86, 0x21, 0x32, 0x21, 0x53, 0x19, 0x54, 0x19, 0x95, 0x19, 0xF7, 0x19, 0xF8, 0x11, 0xD8, 0x02, 0x09, 0xB7, 0x87, 0x09, 0xB8, 0x19, 0xF9, 0x11, 0xD8, 0x19, 0xB7, 0x19, 0x95, 0x19, 0x54, 0x19, 0x53, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x29, 0x31, 0x0B, 0x29, 0x30, 0x81, 0x31, 0x50, 0x31, 0x30, 0x03, 0x31, 0x50, 0x08, 0x31, 0x51, 0x04, 0x39, 0x51, 0x03, 0x39, 0x71, 0x04, 0x39, 0x72, 0x02, 0x41, 0x92, 0x83, 0x41, 0x72, 0x41, 0x92, 0x49, 0x93, 0x49, 0xB3, 0x02, 0x49, 0x92, 0x01, 0x51, 0xB2, 0x87, 0x51, 0x92, 0x59, 0x91, 0x59, 0x70, 0x61, 0x90, 0xB3, 0xF8, 0xDC, 0xDB, 0xDC, 0xBA, 0xDC, 0x79, 0x01, + 0xDC, 0x58, 0x82, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x58, 0x01, 0xDC, 0x37, 0x83, 0xDC, 0x16, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x17, 0x02, 0xDC, 0x16, 0x02, 0xDC, 0x17, 0x82, 0xDC, 0x37, 0xDC, 0x17, 0xDC, 0x16, 0x01, 0xD4, 0x16, 0x01, 0xDC, 0x57, 0x8B, 0xD4, 0x78, 0xCC, 0x57, 0xB4, 0x57, 0xA4, 0x77, 0x94, 0xB8, 0x7D, 0x19, 0x6D, 0x9A, 0x66, 0x3C, 0x5E, 0xBE, 0x4F, 0x1E, 0x3F, 0x1E, 0x37, 0x3E, 0x01, 0x2F, 0x1E, 0x02, 0x26, 0xFE, 0x81, 0x1E, 0xFE, 0x1E, 0xDE, 0x02, 0x1E, 0xFE, 0x84, 0x1F, 0x1E, 0x1E, 0xFE, 0x1E, 0xDE, 0x27, 0x1E, 0x1E, 0xFE, 0x07, 0x1E, 0xDE, 0x07, 0x26, 0xDE, 0x01, 0x2E, 0xDF, 0x02, 0x2E, 0xDE, 0x80, 0x36, 0xDE, 0x01, 0x36, 0xBE, 0x80, 0x36, 0x9D, 0x02, 0x3E, 0x9E, 0x99, 0x46, 0x9E, 0x4E, 0xBE, 0x4E, 0xDF, 0x56, 0xFF, 0x66, 0xFF, 0x6E, 0xFF, 0x76, 0xDF, 0x7E, 0x9E, 0x7E, 0x3D, 0x7D, 0xBB, 0x74, 0xF9, 0x74, 0x37, 0x73, 0xD6, 0x83, 0xF6, 0x8B, 0xB6, 0x9B, 0x95, 0xA3, 0x96, 0xAB, 0x96, 0xBB, 0xB7, 0xB3, 0x56, 0xC3, 0x76, 0xC3, 0x36, 0xCB, 0x56, 0xCB, 0x36, 0xCB, 0x56, 0xCB, 0x36, 0x02, 0xD3, 0x36, 0x82, 0xD3, 0x16, 0xD3, 0x36, 0xCB, 0x15, 0x01, 0xD3, 0x36, 0x01, 0xCB, 0x15, 0x82, 0xCA, 0xF5, 0xC2, 0xD5, 0xCA, 0xF5, 0x01, 0xCB, 0x16, 0x93, 0xC3, 0x16, 0xBB, 0x36, 0xA3, 0x16, 0x93, 0x37, 0x8B, 0xF9, 0x6C, 0x19, 0x5C, 0x9A, 0x65, 0x7D, 0x5D, 0x9D, 0x5D, 0xDE, 0x5D, 0xDD, 0x65, 0x9C, 0x64, 0xFA, 0x8D, 0x3C, 0x7B, 0xF7, 0x7A, 0xF4, 0x9B, 0x15, 0xBB, 0x77, 0xC3, 0x56, 0xC3, 0x16, 0x01, 0xCA, 0xF6, 0x87, 0xC2, 0xF6, + 0xCB, 0x17, 0xC3, 0x17, 0xBB, 0x18, 0x89, 0xF3, 0x58, 0xCF, 0x61, 0x51, 0x59, 0x72, 0x01, 0x51, 0x92, 0x02, 0x49, 0x92, 0x84, 0x41, 0x72, 0x41, 0x92, 0x41, 0x72, 0x39, 0x72, 0x41, 0x92, 0x03, 0x39, 0x72, 0x03, 0x31, 0x51, 0x80, 0x31, 0x71, 0x02, 0x31, 0x51, 0x82, 0x31, 0x31, 0x31, 0x50, 0x29, 0x50, 0x08, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x83, 0x29, 0x50, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x51, 0x07, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x0A, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x19, 0x10, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x83, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x51, 0x01, 0x19, 0x31, 0x80, 0x19, 0x51, 0x02, 0x19, 0x31, 0x02, 0x21, 0x31, 0x81, 0x19, 0x11, 0x21, + 0x51, 0x05, 0x19, 0x31, 0x05, 0x21, 0x31, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x02, 0x19, 0x51, 0x02, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x81, 0x19, 0x31, 0x21, 0x31, 0x03, 0x19, 0x31, 0x02, 0x21, 0x31, 0x82, 0x21, 0x51, 0x21, 0x30, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x30, 0x81, 0x19, 0x31, 0x21, 0x31, 0x02, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x89, 0x19, 0x30, 0x19, 0x10, 0x19, 0x30, 0x21, 0x51, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x0A, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x21, 0x51, 0x19, 0x30, 0x01, 0x21, 0x31, 0x08, 0x21, 0x30, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x51, 0x02, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x31, 0x05, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, + 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x05, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x51, 0x01, 0x19, 0x32, 0x83, 0x11, 0x13, 0x11, 0x55, 0x11, 0x96, 0x11, 0xB7, 0x02, 0x11, 0xD8, 0x80, 0x11, 0xD9, 0x01, 0x09, 0xB8, 0x02, 0x11, 0xD8, 0x01, 0x09, 0xB8, 0x80, 0x11, 0xB8, 0x01, 0x09, 0xB7, 0x02, 0x11, 0xD8, 0x01, 0x09, 0xB8, 0x80, 0x11, 0xD8, 0x0F, 0x09, 0xB8, 0x80, 0x09, 0xB7, 0x03, 0x09, 0xB8, 0x80, 0x09, 0xB7, 0x01, 0x09, 0xB8, 0x06, 0x09, 0xB7, 0x81, 0x09, 0x97, 0x09, 0xB7, 0x01, 0x09, 0xB8, 0x80, 0x09, 0x97, 0x01, 0x09, 0xB8, 0x01, 0x09, 0x97, 0x01, 0x09, 0xB7, 0x02, 0x09, 0xB8, 0x82, 0x09, 0xB7, + 0x09, 0x97, 0x09, 0xB8, 0x01, 0x09, 0xB7, 0x82, 0x09, 0xB8, 0x09, 0xB7, 0x09, 0x97, 0x01, 0x09, 0xB7, 0x01, 0x09, 0xD8, 0x02, 0x09, 0xB8, 0x80, 0x09, 0x98, 0x02, 0x09, 0x97, 0x01, 0x09, 0xB7, 0x8A, 0x09, 0xD8, 0x09, 0xD7, 0x11, 0xF8, 0x09, 0xB7, 0x19, 0xF7, 0x11, 0xB6, 0x09, 0x34, 0x11, 0x13, 0x19, 0x33, 0x19, 0x12, 0x21, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x20, 0xF0, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x19, 0x10, 0x84, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x30, 0x01, + 0x21, 0x30, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x31, 0x10, 0x30, 0xF0, 0x30, 0xD0, 0x30, 0xB0, 0x30, 0x90, 0x01, 0x38, 0x70, 0x80, 0x38, 0x2F, 0x01, 0x30, 0x0F, 0x84, 0x30, 0x4F, 0x30, 0x70, 0x30, 0x6F, 0x30, 0xAF, 0x30, 0xD0, 0x01, 0x28, 0xF0, 0x82, 0x28, 0xEF, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x86, 0x21, 0x31, 0x21, 0x11, 0x19, 0x12, 0x19, 0x54, 0x11, 0x95, 0x11, 0xD7, 0x12, 0x19, 0x03, 0x01, 0xD9, 0x01, 0x01, 0xF9, 0x87, 0x09, 0xF9, 0x09, 0xF8, 0x09, 0xD7, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x10, 0x88, 0x21, 0x31, 0x19, 0x32, 0x19, 0x54, 0x19, 0x75, 0x21, 0xD7, 0x19, 0xF8, 0x19, 0xD8, 0x11, 0xB7, 0x09, 0xB7, 0x01, 0x09, 0x97, 0x80, 0x09, 0xB7, 0x01, 0x19, 0xF9, 0x8B, 0x19, 0xF8, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x53, 0x19, 0x52, 0x21, 0x32, 0x21, 0x31, 0x29, 0x31, 0x29, 0x51, 0x29, 0x31, 0x29, 0x30, 0x29, 0x31, 0x01, 0x29, 0x30, 0x80, 0x31, 0x30, 0x03, 0x29, 0x30, 0x80, + 0x31, 0x30, 0x06, 0x31, 0x50, 0x04, 0x31, 0x51, 0x80, 0x31, 0x50, 0x01, 0x39, 0x51, 0x80, 0x39, 0x71, 0x04, 0x39, 0x51, 0x82, 0x39, 0x71, 0x39, 0x92, 0x39, 0x72, 0x01, 0x41, 0x72, 0x04, 0x41, 0x92, 0x03, 0x49, 0xB3, 0x81, 0x49, 0x92, 0x51, 0xB3, 0x02, 0x51, 0xB2, 0x89, 0x51, 0x92, 0x59, 0x71, 0x59, 0x50, 0x69, 0xD1, 0xC4, 0x7A, 0xD4, 0xBB, 0xDC, 0x9A, 0xDC, 0x79, 0xDC, 0x78, 0xDC, 0x58, 0x02, 0xDC, 0x37, 0x82, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x17, 0x01, 0xDC, 0x37, 0x85, 0xDC, 0x16, 0xDC, 0x37, 0xDC, 0x16, 0xDC, 0x17, 0xDC, 0x16, 0xDC, 0x37, 0x04, 0xDC, 0x16, 0x01, 0xD4, 0x37, 0x8D, 0xD4, 0x57, 0xCC, 0x57, 0xC4, 0x78, 0xB4, 0x57, 0x9C, 0x77, 0x84, 0x97, 0x75, 0x39, 0x6E, 0x1B, 0x66, 0x9D, 0x57, 0x1E, 0x47, 0x1F, 0x37, 0x3F, 0x27, 0x3E, 0x27, 0x5F, 0x01, 0x1F, 0x5F, 0x81, 0x1F, 0x3F, 0x17, 0x1E, 0x03, 0x17, 0x1F, 0x80, 0x17, 0x3F, 0x02, 0x17, 0x1F, 0x80, 0x17, 0x3F, 0x01, 0x17, 0x1F, 0x82, 0x16, 0xFE, 0x17, 0x1F, 0x16, 0xFE, 0x01, 0x17, 0x1F, 0x80, 0x16, 0xFF, 0x01, 0x17, 0x1F, 0x03, 0x16, 0xFF, 0x03, 0x17, 0x1F, 0x05, 0x1F, 0x1F, 0x80, 0x27, 0x1F, 0x01, 0x26, 0xFF, 0x82, 0x26, 0xFE, 0x26, 0xDE, 0x1E, 0xBE, 0x01, 0x26, 0xBE, 0x96, 0x2E, 0xDE, 0x2E, 0xBE, 0x36, 0xDE, 0x46, 0xDE, 0x4E, 0xBE, 0x5E, 0xBF, 0x66, 0xBF, 0x7E, 0xBF, 0x86, 0x9F, 0x8E, 0x5E, 0x85, 0xBC, 0x7D, 0x1A, 0x7C, 0xB9, 0x84, 0x58, 0x8C, 0x38, 0x8B, 0xD6, 0x93, 0x96, 0x9B, 0x96, 0xAB, 0x97, 0xB3, 0x76, 0xBB, 0x97, 0xC3, 0x76, 0xCB, 0x77, 0x01, 0xCB, 0x36, + 0x81, 0xD3, 0x36, 0xCB, 0x16, 0x02, 0xD3, 0x16, 0xA9, 0xCA, 0xF5, 0xD3, 0x16, 0xD3, 0x15, 0xCA, 0xF5, 0xCA, 0xD5, 0xC2, 0xB4, 0xC2, 0xD5, 0xCB, 0x16, 0xCB, 0x36, 0xCB, 0x16, 0xCB, 0x37, 0xBB, 0x37, 0xA2, 0xF6, 0x8B, 0x57, 0x84, 0x19, 0x6C, 0x59, 0x54, 0x9A, 0x5D, 0xBE, 0x55, 0xBD, 0x55, 0xFE, 0x5E, 0x3E, 0x5D, 0xBD, 0x5C, 0xFA, 0x85, 0x5C, 0x7C, 0x18, 0x7B, 0x14, 0x9A, 0xF4, 0xBB, 0x56, 0xC3, 0x16, 0xCB, 0x16, 0xCB, 0x37, 0xCA, 0xF6, 0xC2, 0xD6, 0xCA, 0xF6, 0xC2, 0xF6, 0xC3, 0x38, 0xA2, 0x96, 0x71, 0x30, 0x61, 0x30, 0x59, 0x72, 0x59, 0x92, 0x51, 0x92, 0x02, 0x49, 0x92, 0x81, 0x41, 0x92, 0x41, 0x72, 0x06, 0x39, 0x72, 0x80, 0x39, 0x71, 0x07, 0x31, 0x51, 0x80, 0x29, 0x50, 0x06, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x08, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x80, 0x21, 0x51, 0x08, 0x21, 0x31, 0x80, 0x21, 0x11, 0x11, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x11, 0x04, 0x21, 0x31, 0x80, 0x21, 0x11, 0x06, 0x21, 0x31, 0x80, 0x19, 0x31, 0x03, 0x21, 0x31, 0x80, 0x21, 0x11, 0x05, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x19, 0x31, 0x80, + 0x21, 0x31, 0x0B, 0x19, 0x31, 0x01, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x02, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x03, 0x21, 0x31, 0x80, 0x21, 0x30, 0x04, 0x21, 0x31, 0x01, 0x19, 0x31, 0x81, 0x21, 0x51, 0x19, 0x50, 0x01, 0x19, 0x30, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x09, 0x19, 0x31, 0x83, 0x19, 0x52, 0x19, 0x31, 0x19, 0x32, 0x19, 0x52, 0x02, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x51, 0x05, 0x19, 0x31, 0x02, 0x21, 0x31, 0x04, 0x19, 0x31, 0x80, 0x19, 0x10, 0x0A, 0x19, 0x31, 0x03, 0x21, 0x31, 0x81, 0x19, 0x31, 0x19, 0x11, 0x06, 0x19, 0x31, 0x01, 0x19, 0x51, 0x05, 0x19, 0x31, 0x81, 0x19, 0x52, 0x19, 0x51, 0x01, 0x19, 0x31, 0x02, 0x21, 0x31, 0x87, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x19, 0x30, 0x21, 0x31, 0x21, 0x30, 0x19, 0x31, 0x21, 0x51, 0x04, 0x19, 0x31, 0x02, 0x21, 0x31, 0x03, 0x21, 0x30, 0x85, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, + 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x19, 0x33, 0x19, 0x55, 0x19, 0x96, 0x19, 0xB7, 0x19, 0xD8, 0x02, 0x11, 0xD8, 0x81, 0x11, 0xF9, 0x11, 0xB8, 0x05, 0x11, 0xD8, 0x80, 0x11, 0xF8, 0x02, 0x11, 0xD8, 0x80, 0x11, 0xF8, 0x06, 0x11, 0xD8, 0x80, 0x11, 0xF8, 0x04, 0x11, 0xD8, 0x82, 0x11, 0xF9, 0x11, 0xD8, 0x09, 0xB8, 0x02, 0x11, 0xD8, 0x80, 0x09, 0xB8, 0x04, 0x11, 0xD8, 0x82, 0x09, 0xB7, 0x11, 0xD8, 0x11, 0xF8, 0x01, + 0x11, 0xD8, 0x81, 0x11, 0xD7, 0x09, 0xB7, 0x05, 0x11, 0xD8, 0x01, 0x09, 0xD8, 0x02, 0x11, 0xD8, 0x80, 0x11, 0xB8, 0x01, 0x11, 0xD8, 0x81, 0x11, 0xB8, 0x09, 0xB7, 0x02, 0x11, 0xD8, 0x80, 0x11, 0xF8, 0x04, 0x11, 0xD8, 0x83, 0x11, 0xF8, 0x09, 0xD8, 0x11, 0xF8, 0x11, 0xD8, 0x01, 0x11, 0xB8, 0x91, 0x09, 0xB8, 0x11, 0xB8, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0xF8, 0x1A, 0x18, 0x11, 0xD7, 0x11, 0xF7, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x12, 0x21, 0x32, 0x21, 0x11, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, + 0x81, 0x29, 0x10, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x05, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x28, 0xEF, 0x30, 0xF0, 0x02, 0x30, 0xB0, 0x87, 0x30, 0x90, 0x38, 0xD1, 0x30, 0xB0, 0x30, 0x90, 0x28, 0x8F, 0x30, 0xD0, 0x28, 0xD0, 0x28, 0xF0, 0x01, 0x28, 0xEF, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x12, 0x11, 0x33, 0x11, 0x96, 0x11, 0xF8, 0x09, 0xD8, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x93, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0xD9, 0x01, 0xD8, 0x09, 0xF8, 0x09, 0xB7, 0x11, 0xB6, 0x11, 0x74, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x19, 0x12, 0x19, 0x33, 0x19, 0x34, 0x19, 0x96, 0x19, 0xF7, 0x19, 0xF8, 0x11, 0xB8, 0x09, 0x97, 0x03, 0x09, 0x96, 0x80, 0x11, 0xB7, 0x01, + 0x19, 0xF8, 0x86, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x74, 0x19, 0x52, 0x21, 0x52, 0x21, 0x51, 0x29, 0x51, 0x03, 0x29, 0x31, 0x03, 0x29, 0x30, 0x02, 0x31, 0x50, 0x83, 0x31, 0x30, 0x31, 0x50, 0x31, 0x30, 0x31, 0x51, 0x02, 0x31, 0x50, 0x05, 0x31, 0x51, 0x03, 0x39, 0x51, 0x01, 0x39, 0x71, 0x81, 0x39, 0x51, 0x39, 0x52, 0x02, 0x39, 0x72, 0x01, 0x41, 0x92, 0x80, 0x41, 0x72, 0x03, 0x41, 0x92, 0x80, 0x49, 0xB2, 0x02, 0x49, 0xB3, 0x82, 0x49, 0xB2, 0x49, 0x92, 0x51, 0x92, 0x01, 0x51, 0xB2, 0x8B, 0x59, 0x92, 0x59, 0x91, 0x51, 0x4F, 0x69, 0xD1, 0xC4, 0x5A, 0xD4, 0x9A, 0xDC, 0x9A, 0xDC, 0x79, 0xDC, 0x58, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x17, 0x04, 0xDC, 0x37, 0x81, 0xDC, 0x16, 0xDC, 0x36, 0x01, 0xDC, 0x16, 0x95, 0xDC, 0x36, 0xDC, 0x37, 0xDC, 0x17, 0xDC, 0x37, 0xD4, 0x16, 0xD4, 0x36, 0xD4, 0x57, 0xD4, 0x37, 0xD4, 0x77, 0xC4, 0x57, 0xBC, 0x78, 0xAC, 0x78, 0x94, 0x57, 0x84, 0xB8, 0x75, 0x7A, 0x6E, 0x3C, 0x5E, 0xBD, 0x4F, 0x1E, 0x3F, 0x3F, 0x2F, 0x3E, 0x1F, 0x5F, 0x1F, 0x7F, 0x02, 0x17, 0x5F, 0x80, 0x0F, 0x5F, 0x07, 0x0F, 0x3F, 0x06, 0x0F, 0x1F, 0x80, 0x06, 0xFF, 0x04, 0x0F, 0x1F, 0x03, 0x0E, 0xFF, 0x01, 0x0F, 0x1F, 0x01, 0x0E, 0xFF, 0x01, 0x0F, 0x1F, 0x02, 0x0E, 0xFF, 0x83, 0x17, 0x1F, 0x16, 0xFF, 0x17, 0x1F, 0x0E, 0xFE, 0x03, 0x16, 0xFF, 0x80, 0x16, 0xDE, 0x01, 0x1E, 0xDE, 0x99, 0x26, 0xBE, 0x2E, 0xBE, 0x36, 0x9E, 0x3E, 0x5D, 0x46, 0x7D, 0x5E, 0x9E, 0x66, 0x9F, 0x76, 0x9F, 0x7E, 0x7F, 0x7E, 0x1D, 0x85, 0xDD, 0x7D, 0x3B, + 0x84, 0xFA, 0x84, 0x99, 0x8C, 0x58, 0x93, 0xF7, 0x9B, 0xB7, 0xA3, 0xB7, 0xAB, 0x97, 0xBB, 0x77, 0xC3, 0x57, 0xCB, 0x77, 0xCB, 0x36, 0xCB, 0x16, 0xD3, 0x36, 0xCB, 0x16, 0x02, 0xD3, 0x16, 0x80, 0xD3, 0x36, 0x01, 0xD3, 0x16, 0x83, 0xCA, 0xD5, 0xCA, 0xB5, 0xCA, 0xD5, 0xD3, 0x16, 0x01, 0xCB, 0x16, 0x93, 0xC3, 0x37, 0xB3, 0x17, 0x9B, 0x16, 0x8B, 0x77, 0x7C, 0x3A, 0x5C, 0x59, 0x55, 0x1C, 0x5D, 0xFE, 0x56, 0x1E, 0x4D, 0xFE, 0x5E, 0x5F, 0x66, 0x1E, 0x5D, 0x1A, 0x74, 0xDA, 0x84, 0x58, 0x83, 0x34, 0x92, 0xD4, 0xBB, 0x36, 0xC3, 0x36, 0xC3, 0x16, 0x01, 0xCA, 0xF6, 0x80, 0xCA, 0xB5, 0x01, 0xCA, 0xF6, 0x8E, 0xC3, 0x17, 0xB2, 0xF7, 0x79, 0xB2, 0x58, 0xF0, 0x59, 0x72, 0x59, 0x92, 0x51, 0x72, 0x49, 0x72, 0x49, 0x92, 0x41, 0x72, 0x41, 0x92, 0x41, 0x72, 0x41, 0x92, 0x39, 0x72, 0x39, 0x92, 0x03, 0x39, 0x72, 0x09, 0x31, 0x51, 0x80, 0x31, 0x50, 0x0B, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x02, 0x19, 0x31, 0x08, 0x19, 0x32, 0x82, 0x19, 0x31, 0x19, 0x32, 0x21, 0x32, 0x16, 0x19, 0x32, 0x82, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x19, 0x11, 0x06, 0x19, 0x32, 0x01, 0x19, 0x31, 0x02, 0x19, 0x32, 0x80, 0x19, 0x11, 0x01, 0x19, + 0x32, 0x07, 0x19, 0x11, 0x80, 0x19, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x12, 0x02, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x02, 0x19, 0x31, 0x82, 0x11, 0x31, 0x19, 0x32, 0x19, 0x11, 0x08, 0x19, 0x32, 0x85, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x02, 0x19, 0x31, 0x05, 0x19, 0x11, 0x09, 0x19, 0x31, 0x80, 0x19, 0x11, 0x06, 0x19, 0x31, 0x01, 0x19, 0x32, 0x02, 0x19, 0x52, 0x04, 0x19, 0x32, 0x02, 0x19, 0x31, 0x83, 0x19, 0x32, 0x19, 0x31, 0x19, 0x52, 0x19, 0x32, 0x01, 0x19, 0x52, 0x02, 0x19, 0x32, 0x80, 0x19, 0x31, 0x02, 0x19, 0x32, 0x03, 0x19, 0x31, 0x82, 0x19, 0x52, 0x19, 0x31, 0x19, 0x52, 0x01, 0x19, 0x31, 0x81, 0x19, 0x52, 0x19, 0x32, 0x07, 0x19, 0x31, 0x06, 0x19, 0x32, 0x83, 0x19, 0x52, 0x19, 0x32, 0x11, 0x31, 0x19, 0x52, 0x04, 0x19, 0x32, 0x81, 0x11, 0x32, 0x19, 0x32, 0x01, 0x11, 0x32, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x03, 0x19, 0x11, 0x83, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x0A, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, + 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x07, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x09, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x21, 0x12, 0x19, 0x12, 0x19, 0x53, 0x21, 0x95, 0x21, 0xB6, 0x19, 0xD7, 0x03, 0x19, 0xF8, 0x81, 0x19, 0xF7, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x83, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0xF8, 0x19, 0xD7, 0x01, 0x19, 0xF8, 0x04, 0x11, 0xF8, 0x81, 0x11, 0xD8, 0x11, 0xF8, 0x02, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x02, 0x19, 0xF8, 0x82, 0x1A, 0x19, 0x19, 0xF8, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x80, 0x1A, 0x18, 0x03, 0x19, 0xF8, 0x80, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x80, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x80, 0x19, 0xF8, 0x02, 0x1A, + 0x18, 0x01, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x02, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x80, 0x19, 0xF8, 0x06, 0x1A, 0x18, 0x83, 0x19, 0xF8, 0x1A, 0x18, 0x22, 0x38, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x80, 0x11, 0xF8, 0x06, 0x1A, 0x18, 0x81, 0x1A, 0x38, 0x1A, 0x17, 0x01, 0x22, 0x37, 0x85, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x88, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x0E, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, + 0x29, 0x2F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x84, 0x28, 0xEF, 0x28, 0xF0, 0x30, 0xF0, 0x28, 0xCF, 0x30, 0xF0, 0x01, 0x30, 0xD0, 0x82, 0x30, 0xF0, 0x31, 0x10, 0x28, 0xF0, 0x01, 0x28, 0xEF, 0x84, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x87, 0x21, 0x11, 0x19, 0x32, 0x11, 0x54, 0x19, 0xB7, 0x11, 0xF8, 0x09, 0xF9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x01, 0x09, 0xD8, 0x85, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x52, 0x11, 0x11, 0x19, 0x51, 0x19, 0x32, 0x01, 0x19, 0x12, 0x85, 0x19, 0x34, 0x21, 0xB7, 0x19, 0xD7, 0x11, 0xD7, 0x09, 0x97, 0x09, 0x76, 0x02, 0x09, 0x75, 0x01, 0x09, 0x96, 0x85, 0x11, 0xB7, 0x19, 0xD8, 0x19, 0xD7, 0x21, 0xD6, 0x19, 0x74, 0x19, 0x32, 0x01, 0x21, 0x52, 0x81, 0x29, 0x52, 0x29, 0x51, 0x01, 0x29, 0x31, 0x80, 0x29, 0x30, 0x01, 0x29, 0x31, 0x82, 0x31, 0x51, 0x31, 0x50, 0x29, 0x30, 0x01, + 0x31, 0x50, 0x80, 0x31, 0x30, 0x03, 0x31, 0x51, 0x80, 0x31, 0x50, 0x04, 0x31, 0x51, 0x80, 0x39, 0x71, 0x02, 0x39, 0x51, 0x05, 0x39, 0x72, 0x04, 0x41, 0x72, 0x80, 0x41, 0x93, 0x02, 0x41, 0x92, 0x81, 0x41, 0x72, 0x49, 0x92, 0x01, 0x49, 0xB3, 0x01, 0x51, 0xB3, 0x02, 0x51, 0xB2, 0x88, 0x51, 0x92, 0x59, 0x71, 0x59, 0x50, 0x72, 0x12, 0xD4, 0xBB, 0xD4, 0x7A, 0xD4, 0x79, 0xDC, 0x79, 0xDC, 0x58, 0x02, 0xDC, 0x37, 0x82, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x17, 0x02, 0xDC, 0x16, 0x81, 0xDC, 0x37, 0xDC, 0x17, 0x01, 0xDC, 0x16, 0x02, 0xDC, 0x36, 0x02, 0xD4, 0x16, 0x91, 0xD4, 0x36, 0xD4, 0x57, 0xCC, 0x57, 0xCC, 0x98, 0xC4, 0xB8, 0xB4, 0xB8, 0x9C, 0x36, 0x84, 0x56, 0x7C, 0xF8, 0x75, 0xBA, 0x6E, 0x9D, 0x5E, 0xBD, 0x4F, 0x3F, 0x37, 0x3E, 0x27, 0x3E, 0x1F, 0x5F, 0x17, 0x7F, 0x0F, 0x5E, 0x03, 0x0F, 0x5F, 0x03, 0x0F, 0x3F, 0x01, 0x0F, 0x1F, 0x07, 0x07, 0x1F, 0x80, 0x06, 0xFF, 0x01, 0x07, 0x1F, 0x80, 0x06, 0xFF, 0x01, 0x07, 0x1F, 0x02, 0x06, 0xFF, 0x80, 0x0E, 0xFF, 0x02, 0x06, 0xFF, 0x80, 0x07, 0x1F, 0x02, 0x06, 0xFF, 0x85, 0x0F, 0x1F, 0x06, 0xFF, 0x0E, 0xFF, 0x06, 0xFF, 0x0E, 0xFF, 0x0F, 0x1F, 0x05, 0x0E, 0xFF, 0x01, 0x16, 0xFF, 0x01, 0x1E, 0xDF, 0x80, 0x26, 0xDF, 0x01, 0x2E, 0xBF, 0x95, 0x36, 0x9E, 0x3E, 0x9E, 0x4E, 0x9F, 0x56, 0xBF, 0x66, 0xBF, 0x66, 0x7F, 0x66, 0x3E, 0x65, 0xBC, 0x65, 0x3A, 0x6C, 0xDA, 0x74, 0xBA, 0x7C, 0x59, 0x8B, 0xF8, 0x93, 0x97, 0x9B, 0x77, 0xAB, 0x77, 0xBB, 0x77, 0xC3, 0x98, 0xCB, 0x57, 0xCB, 0x36, 0xD3, 0x37, 0xCB, + 0x16, 0x01, 0xCA, 0xF6, 0x80, 0xCA, 0xF5, 0x01, 0xD3, 0x16, 0x8E, 0xDB, 0x37, 0xCA, 0xD5, 0xC2, 0x94, 0xC2, 0xB5, 0xCA, 0xD5, 0xCA, 0xF6, 0xC2, 0xF6, 0xC3, 0x57, 0xB3, 0x37, 0x92, 0xF6, 0x83, 0x77, 0x7C, 0x5A, 0x54, 0x79, 0x5D, 0xDE, 0x4D, 0xFE, 0x01, 0x45, 0xFD, 0x95, 0x56, 0x5F, 0x66, 0x5F, 0x6D, 0xBD, 0x74, 0xFA, 0x7C, 0x37, 0x7B, 0x34, 0x92, 0xF4, 0xB3, 0x35, 0xBA, 0xF5, 0xCB, 0x16, 0xCA, 0xF6, 0xCA, 0xD6, 0xC2, 0x95, 0xCA, 0xD6, 0xCA, 0xF6, 0xCB, 0x17, 0xBB, 0x17, 0x92, 0x34, 0x58, 0xEF, 0x59, 0x31, 0x59, 0x92, 0x51, 0x72, 0x01, 0x49, 0x72, 0x82, 0x49, 0x92, 0x41, 0x92, 0x41, 0x93, 0x04, 0x39, 0x72, 0x01, 0x39, 0x71, 0x06, 0x31, 0x51, 0x84, 0x31, 0x30, 0x31, 0x51, 0x31, 0x50, 0x29, 0x30, 0x31, 0x50, 0x0D, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x02, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x83, 0x11, 0x12, 0x19, 0x32, 0x11, 0x12, 0x19, 0x32, 0x04, 0x11, 0x12, 0x87, 0x10, 0xF2, 0x10, 0xF1, 0x11, 0x12, 0x10, 0xF2, 0x11, 0x12, 0x10, 0xF2, 0x11, 0x12, 0x10, 0xF1, 0x03, 0x10, 0xF2, 0x80, 0x11, 0x12, 0x05, 0x10, 0xF2, 0x82, 0x10, 0xF1, 0x10, 0xF2, 0x10, 0xF1, 0x02, 0x10, 0xF2, 0x04, 0x10, 0xF1, 0x03, 0x10, 0xF2, 0x01, 0x10, 0xF1, 0x80, 0x11, + 0x12, 0x04, 0x10, 0xF1, 0x03, 0x10, 0xF2, 0x02, 0x10, 0xF1, 0x80, 0x10, 0xD1, 0x02, 0x10, 0xF1, 0x82, 0x10, 0xF2, 0x10, 0xF1, 0x08, 0xF1, 0x04, 0x10, 0xF2, 0x81, 0x08, 0xF1, 0x10, 0xF2, 0x02, 0x08, 0xF1, 0x80, 0x09, 0x12, 0x01, 0x09, 0x11, 0x02, 0x08, 0xF1, 0x81, 0x08, 0xD1, 0x08, 0xF1, 0x01, 0x09, 0x12, 0x04, 0x08, 0xF2, 0x81, 0x10, 0xF2, 0x11, 0x12, 0x03, 0x10, 0xF2, 0x80, 0x08, 0xF1, 0x03, 0x10, 0xF1, 0x80, 0x10, 0xD1, 0x01, 0x10, 0xD2, 0x83, 0x08, 0xD1, 0x11, 0x12, 0x09, 0x12, 0x08, 0xF1, 0x01, 0x09, 0x11, 0x01, 0x11, 0x11, 0x80, 0x08, 0xF1, 0x02, 0x10, 0xF2, 0x84, 0x08, 0xF1, 0x10, 0xF2, 0x10, 0xF1, 0x11, 0x12, 0x10, 0xF1, 0x02, 0x11, 0x12, 0x82, 0x08, 0xF2, 0x09, 0x12, 0x08, 0xF2, 0x02, 0x11, 0x12, 0x86, 0x10, 0xF2, 0x10, 0xF1, 0x08, 0xF1, 0x11, 0x11, 0x10, 0xF1, 0x11, 0x12, 0x09, 0x11, 0x04, 0x09, 0x12, 0x01, 0x11, 0x12, 0x80, 0x08, 0xF2, 0x04, 0x11, 0x12, 0x06, 0x09, 0x11, 0x01, 0x09, 0x12, 0x80, 0x11, 0x32, 0x01, 0x11, 0x12, 0x81, 0x10, 0xF1, 0x11, 0x11, 0x02, 0x10, 0xF1, 0x02, 0x10, 0xF2, 0x84, 0x08, 0xF2, 0x11, 0x12, 0x08, 0xF2, 0x11, 0x12, 0x08, 0xF2, 0x01, 0x09, 0x11, 0x01, 0x08, 0xF2, 0x82, 0x11, 0x12, 0x08, 0xF2, 0x09, 0x12, 0x02, 0x08, 0xF2, 0x04, 0x09, 0x12, 0x80, 0x10, 0xF2, 0x03, 0x10, 0xF1, 0x80, 0x08, 0xF1, 0x02, 0x10, 0xF1, 0x81, 0x11, 0x12, 0x11, 0x11, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x81, 0x11, 0x12, 0x11, 0x32, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x03, 0x21, 0x31, 0x80, + 0x21, 0x50, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x89, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x0C, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x8C, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x89, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, + 0x04, 0x21, 0x10, 0x02, 0x21, 0x11, 0x83, 0x19, 0x12, 0x19, 0x32, 0x19, 0x53, 0x19, 0x54, 0x01, 0x19, 0x95, 0x08, 0x19, 0xB6, 0x87, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0xD7, 0x11, 0xD6, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0xD6, 0x01, 0x19, 0xB6, 0x80, 0x11, 0xB6, 0x03, 0x19, 0xB6, 0x86, 0x19, 0xD7, 0x19, 0xB7, 0x19, 0xD7, 0x19, 0xB7, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0xB7, 0x0E, 0x19, 0xB6, 0x02, 0x19, 0xD6, 0x03, 0x19, 0xB6, 0x82, 0x11, 0xB6, 0x19, 0xD6, 0x19, 0xB6, 0x01, 0x11, 0xB6, 0x02, 0x19, 0xB6, 0x88, 0x11, 0x96, 0x19, 0xD6, 0x11, 0xB6, 0x19, 0xD6, 0x11, 0xD6, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0xD6, 0x11, 0xB6, 0x01, 0x19, 0xD6, 0x82, 0x11, 0xB6, 0x19, 0xB6, 0x11, 0xB6, 0x01, 0x19, 0xB6, 0x86, 0x11, 0xB6, 0x19, 0xB6, 0x11, 0x95, 0x19, 0xB5, 0x11, 0x94, 0x11, 0x74, 0x11, 0x53, 0x01, 0x11, 0x32, 0x80, 0x19, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x11, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, + 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x08, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x03, 0x28, 0xEF, 0x02, 0x28, 0xF0, 0x87, 0x28, 0xEF, 0x29, 0x10, 0x20, 0xEF, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x07, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x11, 0x19, 0x12, 0x11, 0x54, 0x11, 0xB7, 0x12, 0x19, 0x09, 0xF9, 0x02, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x90, 0x09, 0xD8, 0x11, 0xD7, 0x11, 0xB6, 0x11, + 0x53, 0x11, 0x31, 0x21, 0x73, 0x19, 0x52, 0x19, 0x12, 0x11, 0x12, 0x19, 0x54, 0x19, 0xB7, 0x19, 0xF8, 0x11, 0xB7, 0x09, 0x76, 0x09, 0x55, 0x01, 0x54, 0x09, 0x74, 0x01, 0x09, 0x75, 0x87, 0x09, 0x76, 0x11, 0x96, 0x19, 0xB7, 0x19, 0xD7, 0x21, 0xB6, 0x19, 0x74, 0x19, 0x52, 0x21, 0x52, 0x01, 0x21, 0x31, 0x81, 0x29, 0x31, 0x29, 0x51, 0x01, 0x29, 0x31, 0x01, 0x31, 0x51, 0x80, 0x29, 0x30, 0x04, 0x31, 0x50, 0x04, 0x31, 0x51, 0x80, 0x39, 0x51, 0x01, 0x31, 0x51, 0x03, 0x39, 0x71, 0x80, 0x39, 0x51, 0x02, 0x39, 0x71, 0x02, 0x39, 0x72, 0x01, 0x41, 0x72, 0x01, 0x41, 0x92, 0x01, 0x41, 0x72, 0x01, 0x41, 0x93, 0x81, 0x41, 0x92, 0x49, 0x93, 0x01, 0x49, 0x92, 0x80, 0x49, 0x93, 0x01, 0x51, 0xB3, 0x02, 0x51, 0xB2, 0x88, 0x59, 0xB2, 0x59, 0x91, 0x51, 0x2F, 0x71, 0xF2, 0xC4, 0x5A, 0xD4, 0x79, 0xDC, 0x99, 0xD4, 0x58, 0xD4, 0x37, 0x04, 0xDC, 0x37, 0x80, 0xDC, 0x16, 0x02, 0xDC, 0x37, 0x82, 0xDC, 0x16, 0xDC, 0x37, 0xDC, 0x16, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x36, 0x02, 0xD4, 0x36, 0x92, 0xCC, 0x36, 0xD4, 0x77, 0xCC, 0x77, 0xCC, 0x98, 0xC4, 0x98, 0xBC, 0xB8, 0xA4, 0x77, 0x8C, 0x56, 0x84, 0xB7, 0x7D, 0x39, 0x75, 0xFB, 0x66, 0x7D, 0x5E, 0xFE, 0x47, 0x3E, 0x37, 0x5E, 0x1F, 0x3E, 0x17, 0x5E, 0x0F, 0x5E, 0x0F, 0x5F, 0x04, 0x07, 0x5F, 0x81, 0x0F, 0x5F, 0x07, 0x3F, 0x05, 0x07, 0x1F, 0x04, 0x06, 0xFF, 0x82, 0x07, 0x1F, 0x06, 0xFF, 0x07, 0x1F, 0x10, 0x06, 0xFF, 0x80, 0x06, 0xDF, 0x05, 0x06, 0xFF, 0x01, 0x0E, 0xFF, 0x80, 0x06, 0xDF, 0x03, 0x0E, 0xDF, 0x01, + 0x16, 0xDF, 0x81, 0x1E, 0xDF, 0x1E, 0xBF, 0x01, 0x26, 0x9E, 0x9A, 0x2E, 0x9E, 0x3E, 0xBF, 0x46, 0xDF, 0x4E, 0xDF, 0x56, 0xBF, 0x5E, 0x7F, 0x5E, 0x1E, 0x65, 0x7C, 0x6D, 0x1B, 0x74, 0xBA, 0x8C, 0x9A, 0xA4, 0x9B, 0x93, 0x97, 0x93, 0x36, 0xA3, 0x36, 0xBB, 0x98, 0xCB, 0x98, 0xCB, 0x78, 0xC3, 0x17, 0xCA, 0xF6, 0xCB, 0x16, 0xCA, 0xF6, 0xD3, 0x37, 0xD3, 0x16, 0xD3, 0x36, 0xCA, 0xF5, 0xD2, 0xF6, 0x01, 0xC2, 0x94, 0x99, 0xCA, 0xF6, 0xC2, 0xD5, 0xC2, 0xF6, 0xBB, 0x37, 0xB3, 0x37, 0x93, 0x16, 0x83, 0xB8, 0x74, 0x7A, 0x4C, 0xBA, 0x5E, 0x1F, 0x4E, 0x1E, 0x35, 0xDD, 0x46, 0x3E, 0x4E, 0x5E, 0x5E, 0x3E, 0x6D, 0xFE, 0x75, 0x3B, 0x7C, 0x37, 0x83, 0x35, 0x9B, 0x15, 0xB3, 0x36, 0xC3, 0x16, 0xCA, 0xF6, 0xCA, 0xB5, 0xCA, 0xD6, 0xCA, 0xB5, 0x01, 0xCA, 0xD6, 0x86, 0xCB, 0x17, 0xC3, 0x17, 0xAA, 0xD6, 0x61, 0x10, 0x61, 0x51, 0x59, 0x72, 0x51, 0x72, 0x02, 0x49, 0x92, 0x01, 0x41, 0x92, 0x03, 0x39, 0x72, 0x05, 0x39, 0x71, 0x05, 0x31, 0x51, 0x80, 0x31, 0x50, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x07, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x19, 0x11, 0x80, 0x11, 0x11, 0x01, 0x11, 0x12, 0x80, 0x09, 0x12, 0x01, 0x09, 0x13, 0x80, 0x08, 0xF3, 0x01, 0x09, 0x13, 0x80, 0x08, 0xF3, + 0x0C, 0x09, 0x13, 0x80, 0x08, 0xF3, 0x02, 0x09, 0x13, 0x81, 0x08, 0xF3, 0x09, 0x13, 0x01, 0x08, 0xF3, 0x02, 0x09, 0x13, 0x80, 0x08, 0xF3, 0x05, 0x09, 0x13, 0x82, 0x09, 0x12, 0x08, 0xF2, 0x09, 0x12, 0x01, 0x09, 0x13, 0x80, 0x08, 0xF3, 0x05, 0x09, 0x13, 0x01, 0x09, 0x33, 0x81, 0x11, 0x33, 0x09, 0x13, 0x02, 0x11, 0x34, 0x82, 0x11, 0x33, 0x11, 0x34, 0x11, 0x13, 0x05, 0x11, 0x33, 0x82, 0x11, 0x54, 0x11, 0x34, 0x11, 0x54, 0x01, 0x11, 0x34, 0x02, 0x11, 0x33, 0x82, 0x09, 0x13, 0x09, 0x33, 0x11, 0x33, 0x03, 0x09, 0x33, 0x80, 0x11, 0x53, 0x01, 0x09, 0x33, 0x81, 0x11, 0x34, 0x11, 0x54, 0x01, 0x09, 0x54, 0x82, 0x11, 0x54, 0x09, 0x34, 0x11, 0x54, 0x02, 0x09, 0x34, 0x01, 0x11, 0x34, 0x02, 0x11, 0x54, 0x85, 0x09, 0x34, 0x11, 0x54, 0x09, 0x33, 0x11, 0x33, 0x11, 0x34, 0x11, 0x14, 0x01, 0x11, 0x34, 0x81, 0x09, 0x13, 0x09, 0x33, 0x01, 0x11, 0x54, 0x02, 0x09, 0x33, 0x85, 0x11, 0x33, 0x09, 0x13, 0x09, 0x14, 0x11, 0x34, 0x09, 0x34, 0x09, 0x13, 0x04, 0x11, 0x33, 0x80, 0x09, 0x13, 0x01, 0x09, 0x33, 0x82, 0x09, 0x34, 0x09, 0x33, 0x09, 0x34, 0x03, 0x11, 0x34, 0x84, 0x09, 0x33, 0x09, 0x13, 0x09, 0x33, 0x09, 0x54, 0x09, 0x33, 0x04, 0x09, 0x54, 0x84, 0x11, 0x54, 0x09, 0x54, 0x09, 0x33, 0x11, 0x54, 0x11, 0x34, 0x01, 0x09, 0x33, 0x80, 0x11, 0x54, 0x08, 0x09, 0x53, 0x86, 0x09, 0x54, 0x09, 0x33, 0x11, 0x54, 0x11, 0x33, 0x11, 0x54, 0x11, 0x33, 0x11, 0x54, 0x02, 0x11, 0x33, 0x82, 0x11, 0x34, 0x09, 0x33, 0x09, 0x34, 0x01, 0x11, 0x54, 0x86, 0x09, 0x33, + 0x11, 0x54, 0x09, 0x53, 0x09, 0x54, 0x09, 0x34, 0x11, 0x54, 0x11, 0x34, 0x02, 0x09, 0x34, 0x01, 0x09, 0x54, 0x80, 0x09, 0x34, 0x01, 0x09, 0x54, 0x81, 0x11, 0x54, 0x09, 0x34, 0x01, 0x11, 0x34, 0x04, 0x11, 0x33, 0x01, 0x09, 0x33, 0x80, 0x09, 0x13, 0x04, 0x09, 0x33, 0x02, 0x09, 0x12, 0x02, 0x11, 0x12, 0x02, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x51, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x2F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x08, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x87, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, + 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x19, 0x11, 0x01, 0x19, 0x12, 0x81, 0x19, 0x33, 0x11, 0x33, 0x03, 0x11, 0x12, 0x83, 0x10, 0xF2, 0x11, 0x12, 0x10, 0xF2, 0x11, 0x12, 0x03, 0x11, 0x13, 0x01, 0x11, 0x33, 0x01, 0x11, 0x13, 0x02, 0x09, 0x13, 0x01, 0x11, 0x13, 0x80, 0x09, 0x13, 0x01, 0x11, 0x13, 0x01, 0x09, 0x13, 0x01, 0x08, 0xF3, 0x80, 0x11, 0x13, 0x01, 0x09, 0x13, 0x01, 0x11, 0x13, 0x82, 0x08, 0xF3, 0x11, 0x13, 0x09, 0x13, 0x01, 0x08, 0xF2, 0x84, 0x08, 0xF3, 0x08, 0xF2, 0x09, 0x12, 0x11, 0x13, 0x09, 0x12, 0x01, 0x09, 0x13, 0x83, 0x09, 0x12, 0x09, 0x13, 0x11, 0x13, 0x09, 0x12, 0x03, 0x09, 0x13, 0x80, 0x08, 0xF2, 0x04, 0x09, 0x13, 0x80, 0x08, 0xF2, 0x02, 0x11, 0x13, 0x80, 0x08, 0xF2, 0x01, 0x09, 0x13, 0x03, 0x09, 0x12, 0x81, 0x09, 0x13, 0x08, 0xF3, 0x03, 0x09, 0x13, 0x82, 0x09, 0x12, 0x11, 0x12, 0x08, 0xF2, 0x01, 0x10, 0xF2, 0x80, 0x11, 0x12, 0x01, 0x11, 0x32, 0x80, 0x19, 0x32, 0x02, 0x19, 0x11, 0x81, 0x21, 0x31, 0x21, 0x30, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, + 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x04, 0x29, 0x10, 0x03, 0x21, 0x10, 0x04, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, + 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x11, 0x19, 0x33, 0x19, 0x75, 0x1A, 0x18, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x8B, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD8, 0x11, 0xF8, 0x11, 0xB6, 0x11, 0x53, 0x11, 0x32, 0x21, 0x93, 0x19, 0x53, 0x19, 0x12, 0x19, 0x33, 0x19, 0x75, 0x01, 0x22, 0x18, 0x83, 0x11, 0xD7, 0x09, 0x56, 0x09, 0x35, 0x09, 0x54, 0x01, 0x09, 0x74, 0x87, 0x09, 0x75, 0x09, 0x55, 0x09, 0x76, 0x11, 0xB7, 0x19, 0xD7, 0x21, 0xD6, 0x21, 0x95, 0x19, 0x32, 0x01, 0x21, 0x52, 0x80, 0x29, 0x51, 0x03, 0x29, 0x31, 0x86, 0x31, 0x51, 0x29, 0x31, 0x29, 0x51, 0x31, 0x50, 0x29, 0x30, 0x31, 0x30, 0x31, 0x50, 0x07, 0x31, 0x51, 0x02, 0x39, 0x51, 0x04, 0x39, 0x71, 0x81, 0x41, 0x92, 0x41, 0x72, 0x01, 0x39, 0x72, 0x80, 0x41, 0x72, 0x05, 0x41, 0x92, 0x81, 0x49, 0x93, 0x41, 0x92, 0x01, 0x49, 0xB3, 0x80, 0x51, 0xD3, 0x02, 0x51, 0xB3, 0x01, 0x51, 0xB2, 0x87, 0x51, 0x92, 0x59, 0xB2, 0x59, 0x70, 0x71, 0xF1, 0xCC, 0x9B, 0xCC, 0x5A, 0xDC, 0x9A, 0xD4, 0x58, 0x01, 0xDC, 0x58, 0x01, 0xDC, 0x37, 0x81, 0xD4, 0x16, 0xDC, 0x16, 0x01, 0xDC, 0x37, 0x83, 0xD3, 0xF6, 0xDC, 0x37, 0xDC, 0x17, 0xDC, 0x16, 0x01, 0xDC, 0x37, 0x02, 0xD4, 0x16, 0x83, 0xD4, 0x36, 0xCC, 0x37, 0xCC, 0x57, 0xCC, 0x77, 0x01, 0xC4, 0x98, 0x8E, 0xB4, 0x98, 0xAC, 0x77, 0x94, 0x77, 0x8C, 0xB7, 0x85, 0x39, 0x85, 0xDB, 0x76, + 0x3C, 0x66, 0xBD, 0x4E, 0xDE, 0x3F, 0x3F, 0x2F, 0x3E, 0x1F, 0x5F, 0x17, 0x5E, 0x0F, 0x3E, 0x07, 0x5E, 0x03, 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x02, 0x07, 0x1F, 0x84, 0x06, 0xFF, 0x07, 0x1F, 0x06, 0xFF, 0x06, 0xDF, 0x06, 0xFF, 0x07, 0x06, 0xDF, 0x80, 0x06, 0xFF, 0x0D, 0x06, 0xDF, 0x06, 0x06, 0xFF, 0x03, 0x06, 0xDF, 0x80, 0x06, 0xFF, 0x02, 0x0E, 0xFF, 0x80, 0x06, 0xDF, 0x02, 0x0E, 0xDF, 0x01, 0x16, 0xDF, 0x97, 0x16, 0xBF, 0x1E, 0xBF, 0x1E, 0x9E, 0x1E, 0x7E, 0x26, 0x7F, 0x2E, 0xBF, 0x3E, 0xBF, 0x4E, 0xBF, 0x56, 0x7F, 0x5D, 0xFE, 0x65, 0x5C, 0x64, 0x9A, 0x63, 0xF9, 0x73, 0xD9, 0x9C, 0x7B, 0x9B, 0xF9, 0x9B, 0x57, 0xA3, 0x57, 0xBB, 0x78, 0xCB, 0x98, 0xCB, 0x58, 0xCB, 0x37, 0xCB, 0x17, 0xC2, 0xF6, 0x01, 0xCA, 0xF6, 0x85, 0xCA, 0xD5, 0xCA, 0xF6, 0xCA, 0xD5, 0xCA, 0xB5, 0xC2, 0x94, 0xCA, 0xF6, 0x01, 0xC2, 0xF6, 0x94, 0xC3, 0x37, 0xAB, 0x36, 0x93, 0x77, 0x84, 0x19, 0x5C, 0x38, 0x5D, 0x7D, 0x56, 0x3E, 0x46, 0x1E, 0x35, 0xFD, 0x3E, 0x3E, 0x4E, 0x5E, 0x56, 0x1E, 0x76, 0x7F, 0x7D, 0x7C, 0x7C, 0x38, 0x7B, 0x14, 0x9B, 0x55, 0xB3, 0x36, 0xC3, 0x36, 0xCA, 0xF5, 0xCA, 0xF6, 0x01, 0xCA, 0xB5, 0x88, 0xCA, 0xD6, 0xCA, 0xF6, 0xCB, 0x17, 0xC3, 0x17, 0xBB, 0x38, 0x71, 0x51, 0x61, 0x10, 0x59, 0x93, 0x51, 0x52, 0x01, 0x49, 0x72, 0x80, 0x49, 0x93, 0x02, 0x41, 0x92, 0x01, 0x39, 0x72, 0x01, 0x39, 0x71, 0x01, 0x39, 0x51, 0x01, 0x39, 0x71, 0x06, 0x31, 0x51, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, + 0x29, 0x10, 0x08, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x19, 0x10, 0x87, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xF8, 0x03, 0x22, 0x18, 0x84, 0x22, 0x19, 0x22, 0x18, 0x22, 0x39, 0x22, 0x18, 0x22, 0x38, 0x02, 0x22, 0x18, 0x05, 0x22, 0x38, 0x80, 0x2A, 0x39, 0x03, 0x22, 0x38, 0x8C, 0x22, 0x18, 0x22, 0x38, 0x2A, 0x39, 0x2A, 0x38, 0x22, 0x18, 0x2A, 0x39, 0x22, 0x38, 0x22, 0x39, 0x22, 0x38, 0x22, 0x39, 0x22, 0x18, 0x22, 0x38, 0x22, 0x18, 0x02, 0x22, 0x38, 0x80, 0x22, 0x18, 0x01, 0x22, 0x39, 0x82, 0x2A, 0x39, 0x22, 0x39, 0x2A, 0x39, 0x01, 0x22, 0x38, 0x81, 0x22, 0x18, 0x2A, 0x59, 0x02, 0x22, 0x38, 0x82, 0x2A, 0x18, 0x21, 0xF8, 0x2A, 0x18, 0x08, 0x22, 0x18, 0x85, 0x22, 0x38, 0x22, 0x18, 0x22, 0x39, 0x22, 0x18, 0x2A, 0x39, 0x22, 0x39, 0x01, 0x22, 0x18, 0x83, 0x22, 0x38, 0x22, 0x18, 0x22, 0x38, 0x22, 0x18, 0x02, 0x22, 0x38, 0x81, 0x22, 0x18, 0x22, 0x38, 0x02, 0x22, 0x18, 0x81, 0x22, 0x39, 0x22, 0x38, 0x01, 0x22, 0x19, 0x87, 0x22, 0x18, 0x1A, 0x18, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x39, 0x22, 0x18, 0x22, 0x38, 0x1A, 0x18, 0x01, 0x22, 0x38, 0x04, 0x22, 0x18, 0x83, 0x21, 0xF8, 0x1A, 0x18, 0x22, 0x18, 0x22, 0x38, 0x01, 0x22, 0x18, 0x82, 0x1A, 0x18, 0x22, 0x38, 0x1A, 0x18, 0x03, + 0x21, 0xF8, 0x02, 0x22, 0x18, 0x02, 0x21, 0xF8, 0x81, 0x22, 0x18, 0x19, 0xF8, 0x08, 0x22, 0x18, 0x82, 0x21, 0xF8, 0x22, 0x18, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x03, 0x1A, 0x38, 0x82, 0x22, 0x38, 0x22, 0x18, 0x22, 0x38, 0x01, 0x22, 0x18, 0x80, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x81, 0x22, 0x38, 0x22, 0x18, 0x02, 0x22, 0x38, 0x80, 0x1A, 0x18, 0x02, 0x1A, 0x38, 0x83, 0x1A, 0x18, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x38, 0x02, 0x22, 0x18, 0x01, 0x21, 0xF8, 0x05, 0x22, 0x18, 0x80, 0x22, 0x38, 0x04, 0x22, 0x18, 0x80, 0x22, 0x39, 0x02, 0x22, 0x18, 0x80, 0x22, 0x39, 0x01, 0x1A, 0x18, 0x88, 0x19, 0xF8, 0x22, 0x18, 0x1A, 0x18, 0x22, 0x19, 0x22, 0x18, 0x22, 0x19, 0x22, 0x18, 0x22, 0x19, 0x22, 0x18, 0x02, 0x22, 0x38, 0x01, 0x22, 0x18, 0x85, 0x22, 0x38, 0x1A, 0x18, 0x1A, 0x17, 0x1A, 0x38, 0x1A, 0x17, 0x22, 0x17, 0x01, 0x19, 0xF7, 0x01, 0x19, 0xB6, 0x80, 0x11, 0x75, 0x01, 0x11, 0x13, 0x01, 0x11, 0x12, 0x82, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x8A, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, + 0x21, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x09, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x11, 0x08, 0x19, 0x11, 0x80, 0x18, 0xF1, 0x02, 0x19, 0x12, 0x80, 0x11, 0x12, 0x01, 0x19, 0x12, 0x01, 0x11, 0x12, 0x01, 0x19, 0x12, 0x04, 0x11, 0x12, 0x84, 0x19, 0x12, 0x10, 0xF2, 0x11, 0x12, 0x19, 0x12, 0x10, 0xF1, 0x03, 0x11, 0x12, 0x82, 0x19, 0x12, 0x11, 0x12, 0x19, 0x12, 0x01, 0x11, 0x12, 0x82, 0x10, 0xF2, 0x19, 0x12, 0x11, 0x12, 0x01, 0x19, 0x12, 0x82, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x12, 0x03, 0x11, 0x12, 0x80, 0x10, 0xF2, 0x03, 0x11, 0x12, 0x80, 0x19, 0x32, 0x02, 0x11, 0x12, 0x81, 0x11, 0x32, 0x11, 0x12, 0x02, 0x19, 0x12, 0x80, 0x11, 0x12, 0x02, 0x19, 0x12, 0x81, + 0x11, 0x12, 0x19, 0x12, 0x08, 0x11, 0x12, 0x03, 0x19, 0x12, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, 0x82, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, + 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x11, 0x19, 0x33, 0x11, 0x75, 0x19, 0xF8, 0x11, 0xF9, 0x09, 0xF9, 0x01, 0xFA, 0x01, 0xD9, 0x02, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x86, 0x01, 0xB9, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xD7, 0x19, 0xD6, 0x11, 0x53, 0x11, 0x11, 0x01, 0x21, 0x73, 0x87, 0x19, 0x12, 0x11, 0x13, 0x19, 0x75, 0x21, 0xF7, 0x22, 0x18, 0x11, 0xD7, 0x09, 0x76, 0x09, 0x55, 0x01, 0x09, 0x54, 0x8C, 0x09, 0x74, 0x09, 0x54, 0x09, 0x55, 0x11, 0x76, 0x19, 0xD7, 0x21, 0xF8, 0x21, 0xB6, 0x21, 0x95, 0x19, 0x53, 0x21, 0x52, 0x21, 0x31, 0x29, 0x31, 0x29, 0x51, 0x01, 0x29, 0x31, 0x82, 0x29, 0x51, 0x29, 0x31, 0x31, 0x31, 0x08, 0x31, 0x51, 0x81, 0x39, 0x51, 0x31, 0x51, 0x01, 0x39, 0x51, 0x80, 0x31, + 0x51, 0x02, 0x39, 0x51, 0x80, 0x39, 0x71, 0x02, 0x39, 0x72, 0x80, 0x41, 0x92, 0x01, 0x41, 0x72, 0x01, 0x41, 0x92, 0x80, 0x41, 0x72, 0x01, 0x41, 0x92, 0x83, 0x49, 0x93, 0x49, 0x92, 0x49, 0xB3, 0x49, 0x93, 0x02, 0x49, 0xB3, 0x80, 0x51, 0xD3, 0x03, 0x51, 0xB3, 0x8A, 0x59, 0xB2, 0x59, 0x91, 0x59, 0x70, 0x69, 0xB1, 0xBC, 0x19, 0xCC, 0x5A, 0xDC, 0x7A, 0xDC, 0x79, 0xDC, 0x58, 0xDC, 0x38, 0xDC, 0x17, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x16, 0x01, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x16, 0x02, 0xDC, 0x37, 0x83, 0xD4, 0x37, 0xD4, 0x17, 0xD4, 0x16, 0xD4, 0x37, 0x01, 0xCC, 0x37, 0x90, 0xCC, 0x98, 0xC4, 0x98, 0xBC, 0xB8, 0xB4, 0xB8, 0xA4, 0x77, 0x94, 0x56, 0x8C, 0x97, 0x85, 0x18, 0x85, 0x9A, 0x7E, 0x1C, 0x6E, 0x9D, 0x5E, 0xDE, 0x4E, 0xFE, 0x37, 0x1E, 0x2F, 0x5F, 0x1F, 0x5E, 0x0F, 0x3E, 0x01, 0x07, 0x5E, 0x03, 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x01, 0x07, 0x1F, 0x03, 0x06, 0xFF, 0x07, 0x06, 0xDF, 0x80, 0x06, 0xBF, 0x02, 0x06, 0xDF, 0x01, 0x06, 0xBF, 0x02, 0x06, 0xDF, 0x80, 0x06, 0xBF, 0x01, 0x06, 0xDF, 0x80, 0x06, 0xBF, 0x08, 0x06, 0xDF, 0x80, 0x06, 0xFF, 0x06, 0x06, 0xDF, 0x01, 0x0E, 0xFF, 0x01, 0x06, 0xFF, 0x03, 0x06, 0xDF, 0x01, 0x0E, 0xDF, 0x01, 0x0E, 0xBF, 0x01, 0x0E, 0x9F, 0x95, 0x16, 0x7E, 0x1E, 0x7E, 0x26, 0x7E, 0x36, 0x5F, 0x4E, 0x5F, 0x5E, 0x3F, 0x65, 0xBE, 0x54, 0x7B, 0x54, 0x19, 0x74, 0x7B, 0x8C, 0xBD, 0x8C, 0x1A, 0x8B, 0x99, 0x9B, 0x58, 0xAB, 0x58, 0xBB, 0x99, 0xC3, 0x79, 0xC3, 0x38, 0xC2, 0xF6, 0xCB, 0x17, 0xCA, 0xF6, 0xD3, + 0x16, 0x02, 0xD2, 0xF6, 0x99, 0xC2, 0x74, 0xC2, 0x95, 0xC2, 0xB6, 0xC2, 0xD6, 0xBA, 0xF6, 0xBB, 0x37, 0x9B, 0x36, 0x8B, 0xB8, 0x7C, 0x7A, 0x5C, 0xBA, 0x5D, 0xFE, 0x56, 0x5F, 0x35, 0xFD, 0x36, 0x1D, 0x36, 0x3D, 0x4E, 0xBF, 0x56, 0x3E, 0x76, 0x7F, 0x7D, 0x9D, 0x6B, 0xF7, 0x72, 0xF4, 0x9B, 0x35, 0xB3, 0x56, 0xC3, 0x16, 0xC2, 0xF5, 0xCA, 0xD5, 0x02, 0xCA, 0xB5, 0x87, 0xCA, 0xD6, 0xCB, 0x17, 0xC3, 0x17, 0xBB, 0x17, 0x81, 0xD3, 0x58, 0xF0, 0x59, 0x72, 0x51, 0x52, 0x01, 0x49, 0x72, 0x81, 0x49, 0x92, 0x41, 0x92, 0x01, 0x41, 0x72, 0x01, 0x39, 0x72, 0x80, 0x39, 0x71, 0x01, 0x39, 0x72, 0x01, 0x39, 0x71, 0x03, 0x31, 0x51, 0x80, 0x31, 0x31, 0x01, 0x31, 0x51, 0x82, 0x29, 0x30, 0x29, 0x50, 0x31, 0x50, 0x0A, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x10, 0x91, 0x19, 0x11, 0x11, 0x31, 0x19, 0x53, 0x19, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xD8, 0x09, 0xB7, 0x11, 0xD8, 0x09, 0xD8, 0x11, 0xD8, 0x09, 0xD8, 0x11, 0xD8, 0x09, 0xB8, 0x11, 0xD8, 0x11, 0xB8, 0x02, 0x11, 0xD8, 0x80, 0x11, 0xB8, 0x04, 0x11, 0xD8, 0x80, 0x09, 0xD8, 0x08, 0x11, 0xD8, 0x80, 0x11, 0xB8, 0x02, 0x11, 0xD8, 0x80, 0x11, 0xB8, 0x14, 0x11, 0xD8, 0x82, 0x11, 0xB8, 0x11, 0xD8, 0x11, 0xB8, 0x01, 0x11, 0xD8, 0x01, 0x11, 0xB8, 0x8D, 0x11, 0xD8, 0x09, + 0xD8, 0x11, 0xD8, 0x09, 0xB7, 0x11, 0xD8, 0x11, 0xB8, 0x11, 0xD8, 0x11, 0xB8, 0x11, 0xD8, 0x11, 0xB8, 0x11, 0xD8, 0x11, 0xB8, 0x11, 0xD8, 0x09, 0xB7, 0x04, 0x11, 0xD8, 0x81, 0x11, 0xD7, 0x11, 0xD8, 0x03, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x80, 0x11, 0xD8, 0x04, 0x09, 0xD8, 0x82, 0x11, 0xF8, 0x09, 0xD8, 0x09, 0xF8, 0x04, 0x09, 0xD8, 0x85, 0x11, 0xD8, 0x09, 0xD8, 0x11, 0xD8, 0x09, 0xB7, 0x11, 0xD8, 0x09, 0xB7, 0x01, 0x11, 0xD7, 0x01, 0x11, 0xD8, 0x80, 0x11, 0xF8, 0x01, 0x11, 0xD8, 0x81, 0x11, 0xB8, 0x11, 0xF9, 0x01, 0x11, 0xD8, 0x8A, 0x11, 0xD9, 0x11, 0xD8, 0x11, 0xB8, 0x11, 0xD8, 0x11, 0xB8, 0x11, 0xD8, 0x09, 0xD8, 0x11, 0xD8, 0x09, 0xD8, 0x11, 0xD8, 0x09, 0xB8, 0x01, 0x11, 0xB8, 0x01, 0x11, 0xD8, 0x01, 0x09, 0xB8, 0x80, 0x09, 0xF8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xB7, 0x02, 0x09, 0xD8, 0x83, 0x09, 0xB7, 0x11, 0xD8, 0x09, 0xD8, 0x11, 0xD8, 0x01, 0x09, 0xD8, 0x82, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xB8, 0x02, 0x09, 0xD8, 0x82, 0x09, 0xD7, 0x09, 0xF8, 0x09, 0xD7, 0x03, 0x09, 0xD8, 0x02, 0x11, 0xD8, 0x80, 0x09, 0xB8, 0x02, 0x11, 0xD8, 0x80, 0x09, 0xB8, 0x01, 0x11, 0xD8, 0x81, 0x11, 0xF8, 0x09, 0xD8, 0x01, 0x11, 0xD8, 0x81, 0x11, 0xF8, 0x09, 0xD8, 0x02, 0x11, 0xD8, 0x85, 0x11, 0xB8, 0x11, 0xD8, 0x11, 0xB8, 0x11, 0xD8, 0x09, 0xB8, 0x11, 0xD8, 0x06, 0x09, 0xB8, 0x81, 0x11, 0xD8, 0x09, 0xB8, 0x03, 0x11, 0xD8, 0x81, 0x11, 0xF8, 0x11, 0xD8, 0x06, 0x11, 0xF8, 0x01, 0x1A, 0x18, 0x85, 0x22, 0x18, 0x19, 0xD7, 0x11, 0x75, + 0x09, 0x34, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x05, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x89, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, + 0x0F, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x84, 0x21, 0x10, 0x19, 0x10, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x21, 0x11, 0x03, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, 0x04, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x04, 0x19, 0x31, 0x01, 0x19, 0x11, 0x02, 0x19, 0x31, 0x81, 0x19, 0x32, 0x19, 0x11, 0x02, 0x19, 0x32, 0x80, 0x19, 0x12, 0x02, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x32, 0x04, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x83, 0x21, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x01, 0x19, 0x11, 0x82, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x19, 0x11, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, + 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x05, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, + 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x87, 0x21, 0x11, 0x19, 0x11, 0x19, 0x13, 0x11, 0x75, 0x19, 0xD7, 0x11, 0xD9, 0x09, 0xD9, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x90, 0x09, 0xB9, 0x09, 0xB8, 0x11, 0xB7, 0x19, 0x95, 0x11, 0x32, 0x11, 0x11, 0x19, 0x52, 0x19, 0x32, 0x19, 0x12, 0x11, 0x13, 0x19, 0x75, 0x21, 0xD7, 0x19, 0xF8, 0x11, 0xF8, 0x09, 0x76, 0x09, 0x55, 0x11, 0x75, 0x02, 0x09, 0x54, 0x80, 0x09, 0x76, 0x02, 0x19, 0xD7, 0x84, 0x19, 0xB6, 0x19, 0x75, 0x21, 0x53, 0x21, 0x52, 0x21, 0x32, 0x01, 0x29, 0x51, 0x80, 0x29, 0x31, 0x0C, 0x31, 0x51, 0x80, 0x39, 0x71, 0x02, 0x39, 0x51, 0x02, 0x39, 0x71, 0x04, 0x39, 0x72, 0x01, 0x41, 0x72, 0x02, 0x41, 0x92, 0x01, 0x41, 0x93, 0x80, 0x49, 0x93, 0x06, 0x49, 0xB3, 0x03, 0x51, 0xD3, 0x90, 0x51, 0xB2, 0x59, 0x92, 0x51, 0x30, 0x59, 0x4F, 0xBC, 0x19, 0xCC, 0x7A, 0xD4, 0x7A, 0xD4, 0x59, 0xD4, 0x17, 0xDC, 0x58, 0xDC, 0x38, 0xDC, 0x37, 0xD4, 0x16, 0xDC, 0x16, 0xDC, 0x37, 0xD4, 0x16, 0xD4, 0x36, 0x01, 0xDC, 0x37, 0x80, 0xD4, 0x16, 0x02, 0xD4, 0x37, 0x01, 0xCC, 0x37, 0x93, 0xC4, 0x57, 0xC4, 0x78, 0xC4, 0xB8, 0xBC, 0xD9, 0xB4, 0xB8, 0x9C, 0x97, 0x94, 0x97, 0x84, 0xB7, 0x7D, 0x38, 0x7D, 0xBA, 0x75, 0xFB, 0x6E, 0x5C, 0x5E, 0x9D, 0x4E, 0xDE, 0x3E, 0xFE, 0x37, 0x5F, 0x27, 0x5F, 0x17, 0x3E, 0x0F, 0x3E, 0x07, 0x5E, 0x04, 0x07, 0x5F, 0x02, 0x07, 0x3F, 0x80, 0x07, 0x1F, 0x03, 0x06, 0xFF, 0x02, 0x06, 0xDF, 0x81, 0x06, 0xBF, 0x06, 0xDF, 0x06, 0x06, 0xBF, + 0x01, 0x06, 0x9F, 0x11, 0x06, 0xBF, 0x80, 0x06, 0xDF, 0x05, 0x06, 0xBF, 0x80, 0x06, 0x9F, 0x01, 0x06, 0xBF, 0x07, 0x06, 0xDF, 0x80, 0x06, 0xBF, 0x01, 0x0E, 0xBF, 0x96, 0x0E, 0x9F, 0x0E, 0x5E, 0x16, 0x5E, 0x1E, 0x3E, 0x26, 0x1E, 0x35, 0xFF, 0x45, 0xDF, 0x4D, 0x9F, 0x55, 0x5E, 0x54, 0xBC, 0x33, 0x57, 0x43, 0x38, 0x6B, 0xBB, 0x8C, 0x1C, 0x9B, 0xFB, 0xA3, 0xBA, 0xAB, 0x58, 0xBB, 0x58, 0xC3, 0x37, 0xC3, 0x17, 0xCB, 0x17, 0xD3, 0x37, 0xCA, 0xF6, 0x01, 0xCA, 0xD6, 0x80, 0xCA, 0xB6, 0x01, 0xC2, 0x95, 0x97, 0xC2, 0xB6, 0xC2, 0xF7, 0xBB, 0x17, 0xAB, 0x16, 0x8A, 0xD5, 0x8C, 0x19, 0x6C, 0x79, 0x55, 0x1B, 0x5E, 0x3F, 0x4E, 0x5E, 0x36, 0x1D, 0x2E, 0x1D, 0x36, 0x5E, 0x4E, 0xBF, 0x56, 0x7E, 0x66, 0x3E, 0x7D, 0xDD, 0x63, 0xB6, 0x73, 0x14, 0x93, 0x15, 0xB3, 0x36, 0xC3, 0x36, 0xC2, 0xD5, 0xCA, 0xD5, 0x02, 0xCA, 0x95, 0x8A, 0xCA, 0xB5, 0xCA, 0xD6, 0xC2, 0xF6, 0xC3, 0x58, 0x92, 0x34, 0x61, 0x10, 0x59, 0x52, 0x51, 0x52, 0x49, 0x31, 0x49, 0x72, 0x49, 0x92, 0x01, 0x41, 0x92, 0x01, 0x41, 0x72, 0x04, 0x39, 0x72, 0x80, 0x39, 0x71, 0x05, 0x31, 0x51, 0x01, 0x31, 0x50, 0x0C, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x88, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x19, 0x52, 0x11, 0x74, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x09, 0xB7, 0x01, + 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x81, 0x09, 0xD8, 0x01, 0xB8, 0x01, 0x09, 0xD9, 0x81, 0x01, 0xB8, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x09, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x05, 0x09, 0xD8, 0x81, 0x09, 0xD9, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x02, 0x09, 0xB8, 0x03, 0x09, 0xD8, 0x81, 0x01, 0xB8, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x02, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x02, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x01, 0x11, 0xD8, 0x01, 0x09, 0xD9, 0x01, 0x09, 0xD8, 0x02, 0x09, 0xD9, 0x04, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x80, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x02, 0x09, 0xD8, 0x82, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xB8, 0x02, 0x09, 0xD8, 0x80, 0x01, 0xD8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xD9, 0x1A, 0x09, 0xD8, 0x02, 0x09, 0xD9, 0x80, 0x09, 0xB9, 0x06, 0x09, 0xD9, 0x80, 0x09, 0xB8, 0x02, 0x09, 0xD8, 0x83, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xD9, 0x09, 0xD8, 0x03, 0x09, 0xD9, 0x81, 0x09, 0xB9, 0x01, 0xB8, 0x01, 0x01, 0xD8, 0x80, 0x01, 0xB8, 0x03, 0x09, 0xD8, 0x81, 0x09, 0xD9, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xF9, 0x03, 0x09, 0xD8, 0x82, 0x09, 0xB8, 0x09, 0xD9, 0x09, 0xF9, 0x05, 0x09, 0xD9, 0x80, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x84, 0x09, 0xD8, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xF9, 0x09, 0xD8, 0x01, 0x09, 0xF8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x82, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xB8, 0x03, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x83, 0x09, + 0xD9, 0x09, 0xB8, 0x09, 0xB9, 0x09, 0xD9, 0x02, 0x09, 0xB8, 0x03, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xF8, 0x02, 0x09, 0xD8, 0x89, 0x09, 0xB8, 0x11, 0xD8, 0x1A, 0x19, 0x1A, 0x18, 0x11, 0xD7, 0x09, 0x54, 0x09, 0x13, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x88, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, + 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x85, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x09, 0x21, 0x31, 0x86, 0x21, 0x30, 0x21, 0x11, 0x19, 0x10, 0x21, 0x11, 0x21, 0x10, 0x21, 0x11, 0x19, 0x10, 0x02, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x03, 0x21, 0x31, 0x82, 0x19, 0x10, 0x21, 0x31, 0x19, 0x10, 0x01, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x31, 0x02, 0x21, 0x11, 0x80, 0x21, 0x31, 0x06, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x11, 0x82, 0x19, 0x10, 0x21, 0x11, 0x19, 0x11, 0x01, 0x21, 0x11, 0x85, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x21, 0x31, 0x02, 0x19, 0x11, 0x86, 0x19, 0x10, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x10, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, + 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x87, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x20, 0xEF, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x0A, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, + 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x89, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x11, 0x85, 0x19, 0x13, 0x11, 0x55, 0x11, 0xB7, 0x11, 0xB8, 0x09, 0xD9, 0x09, 0xF9, 0x05, 0x01, 0xD9, 0x86, 0x09, 0xB9, 0x09, 0xB8, 0x09, 0xB7, 0x11, 0xB6, 0x11, 0x74, 0x19, 0x53, 0x19, 0x32, 0x01, 0x19, 0x11, 0x83, 0x19, 0x12, 0x19, 0x33, 0x19, 0x54, 0x21, 0xB7, 0x01, 0x19, 0xF8, 0x81, 0x11, 0xB7, 0x11, 0x76, 0x01, 0x11, 0x75, 0x8A, 0x09, 0x54, 0x09, 0x55, 0x11, 0xB6, 0x19, 0xD7, 0x21, 0xF8, 0x21, 0xD7, 0x21, 0xB6, 0x21, 0x95, 0x21, 0x74, 0x21, 0x52, 0x29, 0x52, 0x02, 0x29, 0x51, 0x01, 0x31, 0x51, 0x82, 0x31, 0x71, 0x31, 0x51, 0x31, 0x31, 0x03, 0x31, 0x51, 0x80, 0x39, 0x51, 0x03, 0x39, 0x71, 0x82, 0x39, 0x51, 0x39, 0x72, 0x39, 0x71, 0x01, 0x39, 0x72, 0x80, 0x39, 0x71, 0x01, 0x39, 0x72, 0x80, 0x41, 0x92, 0x01, 0x41, 0x72, 0x01, 0x41, 0x92, 0x82, 0x41, 0x93, 0x41, 0x92, 0x41, 0x93, 0x02, 0x49, 0xB3, 0x80, 0x49, 0x93, 0x01, 0x49, 0xB3, 0x80, 0x51, 0xD3, 0x01, 0x49, 0xB3, 0x80, 0x51, 0xB3, 0x01, 0x51, 0xD3, 0x01, 0x59, 0xD3, 0x89, 0x59, 0xB2, 0x59, 0x71, 0x59, 0x70, 0xAB, 0x77, 0xCC, 0x7A, 0xD4, 0x9A, 0xD4, 0x59, 0xD4, 0x38, 0xD4, 0x37, 0xD4, 0x17, 0x01, 0xDC, 0x37, 0x81, 0xD4, 0x16, 0xD4, 0x36, 0x01, 0xDC, 0x57, 0x02, 0xD4, 0x57, 0x80, 0xCC, 0x57, 0x01, 0xC4, 0x37, 0x01, 0xC4, 0x78, 0x93, 0xC4, + 0xB8, 0xBC, 0xB9, 0xB4, 0x98, 0xA4, 0x98, 0x9C, 0x97, 0x84, 0x97, 0x84, 0xF8, 0x85, 0x79, 0x7D, 0xDB, 0x76, 0x3C, 0x6E, 0x7C, 0x5E, 0x9C, 0x56, 0xDE, 0x46, 0xFE, 0x3F, 0x3F, 0x2F, 0x5F, 0x1F, 0x5F, 0x17, 0x3F, 0x0F, 0x5E, 0x07, 0x3E, 0x04, 0x07, 0x5F, 0x03, 0x07, 0x3F, 0x82, 0x06, 0xFF, 0x06, 0xDF, 0x06, 0xFF, 0x01, 0x06, 0xDF, 0x04, 0x06, 0xBF, 0x80, 0x06, 0x9F, 0x02, 0x06, 0xBF, 0x0B, 0x06, 0x9F, 0x80, 0x06, 0x7F, 0x04, 0x06, 0x9F, 0x02, 0x06, 0xBF, 0x82, 0x06, 0x9F, 0x06, 0xBF, 0x06, 0x9F, 0x01, 0x06, 0xBF, 0x01, 0x06, 0x9F, 0x03, 0x06, 0x7F, 0x80, 0x06, 0x9F, 0x01, 0x06, 0xBF, 0x01, 0x06, 0xDF, 0x02, 0x06, 0xBF, 0x80, 0x06, 0xDF, 0x02, 0x06, 0xBF, 0x01, 0x0E, 0x9F, 0xB1, 0x0E, 0x7F, 0x16, 0x5F, 0x16, 0x3F, 0x1D, 0xFE, 0x1D, 0xBE, 0x2D, 0x9E, 0x35, 0x7E, 0x3D, 0x3E, 0x3C, 0x7C, 0x33, 0xDB, 0x33, 0x18, 0x42, 0xF7, 0x63, 0x59, 0x94, 0x1C, 0xAC, 0x3C, 0xB3, 0xFB, 0xB3, 0x38, 0xBB, 0x38, 0xC3, 0x38, 0xC2, 0xF7, 0xCB, 0x17, 0xCA, 0xF7, 0xCA, 0xB6, 0xD2, 0xF7, 0xCA, 0xB6, 0xC2, 0x96, 0xCA, 0xB6, 0xBA, 0x95, 0xBA, 0xD6, 0xB3, 0x17, 0xA3, 0x37, 0x83, 0x16, 0x84, 0x5A, 0x64, 0x79, 0x65, 0xBD, 0x56, 0x5E, 0x46, 0x7F, 0x2D, 0xFC, 0x2E, 0x3D, 0x36, 0x7E, 0x46, 0x9E, 0x56, 0x9F, 0x5E, 0x1D, 0x7D, 0xBD, 0x63, 0xF7, 0x73, 0x14, 0x92, 0xF4, 0xB3, 0x56, 0xC3, 0x15, 0xCA, 0xF5, 0x01, 0xCA, 0xB5, 0x82, 0xCA, 0x94, 0xD2, 0xB5, 0xCA, 0xB5, 0x01, 0xCA, 0xD6, 0x84, 0xCB, 0x38, 0xA2, 0x75, 0x60, 0xF0, 0x61, 0x52, 0x51, 0x52, 0x01, 0x49, + 0x72, 0x80, 0x49, 0x92, 0x01, 0x41, 0x92, 0x01, 0x41, 0x72, 0x04, 0x39, 0x72, 0x80, 0x39, 0x71, 0x05, 0x31, 0x51, 0x80, 0x31, 0x30, 0x0B, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8B, 0x19, 0x52, 0x19, 0x53, 0x11, 0x54, 0x09, 0x54, 0x09, 0x96, 0x11, 0xD8, 0x09, 0xD9, 0x09, 0xF9, 0x01, 0xD8, 0x01, 0xB8, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x02, 0x01, 0xD9, 0x80, 0x09, 0xD9, 0x02, 0x01, 0xD9, 0x80, 0x09, 0xD9, 0x03, 0x01, 0xD9, 0x83, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD9, 0x04, 0x01, 0xD9, 0x83, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xB9, 0x09, 0xD9, 0x04, 0x01, 0xD9, 0x80, 0x09, 0xD9, 0x0C, 0x01, 0xD9, 0x01, 0x01, 0xD8, 0x81, 0x09, 0xD8, 0x01, 0xB8, 0x02, 0x09, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x09, 0xD9, 0x81, 0x01, 0xD9, 0x09, 0xD9, 0x08, 0x01, 0xD9, 0x81, 0x01, 0xB9, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x80, 0x09, 0xF9, 0x03, 0x09, 0xD9, 0x81, 0x01, 0xD9, 0x01, 0xD8, 0x04, 0x01, 0xD9, 0x80, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x81, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x81, 0x01, 0xD9, 0x01, 0xD8, 0x0C, 0x01, 0xD9, 0x82, 0x01, 0xD8, 0x09, 0xD8, 0x09, 0xD9, 0x03, 0x01, 0xD9, 0x83, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xDA, 0x05, 0x09, 0xD9, 0x04, 0x01, 0xD9, 0x80, 0x09, 0xD9, 0x01, 0x01, 0xD9, + 0x02, 0x09, 0xD9, 0x80, 0x01, 0xB9, 0x05, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x83, 0x01, 0xD9, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xB9, 0x05, 0x01, 0xD9, 0x80, 0x09, 0xD9, 0x01, 0x01, 0xD8, 0x80, 0x01, 0xF9, 0x09, 0x01, 0xD9, 0x81, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x83, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0xD8, 0x01, 0x01, 0xF9, 0x80, 0x01, 0xD9, 0x03, 0x09, 0xD9, 0x80, 0x09, 0xB8, 0x02, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x0C, 0x01, 0xD9, 0x90, 0x01, 0xD8, 0x01, 0xF9, 0x01, 0xD9, 0x09, 0xD9, 0x01, 0xB8, 0x09, 0xD8, 0x09, 0xF8, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x19, 0x30, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, + 0x30, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x87, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x04, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x07, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x29, 0x51, 0x21, 0x30, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x31, 0x08, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x0A, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x31, 0x21, 0x10, 0x21, 0x11, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x07, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, + 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x8A, 0x21, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x07, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, + 0x0F, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x09, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x03, 0x29, 0x10, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x8B, 0x21, 0x11, 0x19, 0x12, 0x11, 0x54, 0x19, 0xD7, 0x11, 0x97, 0x09, 0xB8, 0x09, 0xF8, 0x09, 0xF9, 0x01, 0x98, 0x01, 0xB9, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0x09, 0xD9, 0x87, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0xB6, 0x11, 0x74, 0x19, 0x73, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x12, 0x85, 0x19, 0x54, 0x19, 0x95, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xD7, 0x02, 0x11, 0x95, 0x87, 0x11, 0xB6, 0x19, 0xF7, 0x19, 0xF8, 0x21, 0xF8, 0x21, 0xD7, 0x21, 0xB6, 0x21, 0x95, 0x21, 0x73, 0x01, 0x29, 0x52, 0x01, 0x29, 0x31, 0x03, 0x31, 0x51, 0x03, 0x31, 0x71, 0x04, 0x39, 0x71, 0x06, 0x39, 0x72, 0x81, 0x39, 0x92, 0x39, 0x72, 0x02, 0x41, 0x92, 0x03, 0x41, 0x93, 0x81, 0x49, 0x93, 0x41, 0x93, 0x03, 0x49, 0xB3, 0x80, 0x49, 0xD3, 0x05, 0x51, 0xD3, 0x8A, 0x59, 0xD3, 0x59, 0xB3, 0x59, 0xB2, 0x59, 0x91, 0x59, 0x50, 0xAB, 0x77, 0xCC, 0x7A, 0xCC, 0x59, 0xD4, 0x59, 0xD4, 0x58, 0xDC, 0x58, 0x01, 0xD4, 0x37, 0x80, 0xD4, 0x16, 0x01, 0xDC, 0x37, 0x01, 0xD4, 0x57, 0x81, 0xD4, 0x77, 0xCC, 0x77, 0x01, 0xC4, 0x77, 0x96, 0xBC, 0x77, 0xBC, 0xB8, 0xBC, 0xD9, + 0xB4, 0xD8, 0xAC, 0xB8, 0x9C, 0x77, 0x94, 0x77, 0x8C, 0xB8, 0x8C, 0xD8, 0x85, 0x59, 0x85, 0xBB, 0x7E, 0x1C, 0x76, 0x3C, 0x66, 0x5C, 0x5E, 0x9C, 0x56, 0xFD, 0x47, 0x1E, 0x3F, 0x5F, 0x2F, 0x5F, 0x27, 0x5F, 0x17, 0x3F, 0x0F, 0x3F, 0x0F, 0x5F, 0x03, 0x07, 0x5F, 0x02, 0x07, 0x3F, 0x81, 0x07, 0x1F, 0x06, 0xFE, 0x02, 0x06, 0xDE, 0x01, 0x06, 0xDF, 0x01, 0x06, 0xBF, 0x08, 0x06, 0x9F, 0x07, 0x06, 0x7F, 0x80, 0x06, 0x5F, 0x04, 0x06, 0x7F, 0x01, 0x06, 0x5F, 0x01, 0x06, 0x7F, 0x80, 0x06, 0x5F, 0x01, 0x06, 0x7F, 0x03, 0x06, 0x9F, 0x02, 0x06, 0x7F, 0x80, 0x06, 0x5F, 0x01, 0x06, 0x7F, 0x01, 0x06, 0x9F, 0x02, 0x06, 0xBF, 0x01, 0x06, 0x9F, 0x81, 0x06, 0xBF, 0x06, 0x9F, 0x04, 0x06, 0xBF, 0x80, 0x06, 0x9F, 0x01, 0x0E, 0x7F, 0x93, 0x16, 0x5F, 0x16, 0x1F, 0x15, 0xDE, 0x15, 0x7E, 0x1D, 0x5E, 0x25, 0x3E, 0x2D, 0x1E, 0x34, 0xDE, 0x3C, 0x7D, 0x3B, 0xDB, 0x2A, 0x76, 0x32, 0x15, 0x62, 0xD8, 0xA4, 0x3D, 0xB4, 0x1C, 0xAB, 0x7A, 0xAB, 0x18, 0xB2, 0xF8, 0xC3, 0x38, 0xCB, 0x18, 0x01, 0xCA, 0xF7, 0x99, 0xCA, 0xD7, 0xCA, 0x96, 0xC2, 0x95, 0xBA, 0x54, 0xBA, 0xB6, 0xBA, 0xF7, 0xB3, 0x37, 0x9B, 0x16, 0x7B, 0x15, 0x74, 0x19, 0x5C, 0xBA, 0x5E, 0x1E, 0x4E, 0x9F, 0x2D, 0xFC, 0x26, 0x3D, 0x2E, 0x5D, 0x36, 0x9E, 0x46, 0xBF, 0x56, 0xBF, 0x6E, 0x9F, 0x7D, 0xDD, 0x6C, 0x17, 0x6A, 0xF3, 0x92, 0xF4, 0xB3, 0x15, 0xC2, 0xF5, 0x01, 0xCA, 0xD5, 0x81, 0xCA, 0xB4, 0xCA, 0x94, 0x01, 0xCA, 0x95, 0x86, 0xCA, 0xB5, 0xCA, 0xB6, 0xCB, 0x38, 0xB2, 0xF7, 0x71, 0x51, 0x59, 0x31, + 0x51, 0x31, 0x01, 0x49, 0x72, 0x80, 0x49, 0x92, 0x03, 0x41, 0x72, 0x03, 0x39, 0x72, 0x83, 0x39, 0x71, 0x39, 0x51, 0x31, 0x51, 0x39, 0x71, 0x03, 0x31, 0x51, 0x02, 0x31, 0x50, 0x01, 0x29, 0x50, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x06, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x09, 0x33, 0x09, 0x55, 0x11, 0xD7, 0x12, 0x19, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x85, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x83, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xDA, 0x03, 0x01, 0xD9, 0x80, 0x01, 0xFA, 0x08, 0x01, 0xD9, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x0A, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x06, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x02, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x81, 0x01, 0xD9, 0x01, 0xB9, 0x09, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x84, 0x09, 0xFA, 0x01, 0xD9, 0x09, 0xFA, 0x09, 0xD9, 0x01, 0xB9, 0x04, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x04, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x02, 0x01, 0xD9, 0x01, 0x01, 0xF9, 0x05, 0x01, 0xD9, 0x01, 0x01, 0xF9, 0x04, 0x01, 0xD9, 0x82, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xD8, 0x03, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x03, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x0A, 0x01, 0xD9, 0x80, 0x01, 0xFA, 0x05, 0x01, 0xD9, + 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x09, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x07, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x0B, 0x01, 0xD9, 0x81, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x80, 0x09, 0xFA, 0x03, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x07, 0x01, 0xD9, 0x80, 0x09, 0xDA, 0x02, 0x01, 0xD9, 0x80, 0x09, 0xF9, 0x03, 0x01, 0xD9, 0x8A, 0x09, 0xF9, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0x95, 0x11, 0x33, 0x11, 0x11, 0x11, 0x10, 0x19, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x8A, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, + 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x8A, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x07, 0x21, 0x10, 0x80, 0x29, 0x30, 0x07, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x08, 0x21, 0x10, 0x87, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x11, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x82, 0x20, 0xF0, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, + 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x07, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x87, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x89, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, + 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x11, 0x19, 0x32, 0x19, 0x54, 0x19, 0xB6, 0x11, 0x97, 0x01, 0x11, 0xD8, 0x80, 0x11, 0xF8, 0x03, 0x09, 0xB8, 0x87, 0x09, 0xD8, 0x11, 0xF9, 0x11, 0xB7, 0x11, 0xB6, 0x19, 0x95, 0x19, 0x74, 0x21, 0x73, 0x19, 0x31, 0x01, 0x21, 0x31, 0x94, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0x75, 0x19, 0xB6, 0x22, 0x18, 0x19, 0xF8, 0x19, 0xF7, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x21, 0xB6, 0x21, 0x95, 0x21, 0x74, 0x21, 0x73, 0x29, 0x52, 0x29, 0x72, 0x05, 0x31, 0x51, 0x80, 0x39, 0x71, 0x01, 0x31, 0x71, 0x80, 0x31, 0x51, 0x01, 0x39, 0x51, 0x01, 0x39, 0x72, 0x85, 0x39, 0x92, 0x39, 0x72, 0x39, 0x71, 0x39, 0x72, 0x41, 0x92, 0x39, 0x72, 0x05, 0x41, 0x92, 0x02, 0x41, 0x93, 0x80, 0x49, 0x93, 0x03, 0x49, 0xB3, 0x01, 0x49, 0xD3, 0x80, 0x49, 0xB3, 0x06, 0x51, 0xD3, 0x86, 0x59, 0xF3, 0x59, 0xD3, 0x59, 0x91, 0x59, 0x50, 0x9B, 0x16, 0xCC, 0x7A, 0xD4, 0x7A, 0x01, 0xD4, 0x79, 0x81, 0xD4, 0x38, 0xD4, 0x37, 0x01, 0xDC, 0x57, 0x81, 0xD4, 0x16, 0xD4, 0x57, 0x01, 0xD4, 0x77, 0x98, 0xCC, 0x77, 0xC4, 0x77, 0xBC, 0xB8, 0xBC, 0xD8, 0xB4, 0xD8, 0xAC, 0xF9, 0xA4, 0xF9, 0x94, + 0xD8, 0x8C, 0xB7, 0x7C, 0x97, 0x7C, 0xD8, 0x7D, 0x59, 0x85, 0xBB, 0x7D, 0xFC, 0x76, 0x5C, 0x6E, 0x7C, 0x66, 0x9D, 0x56, 0xBD, 0x4E, 0xDD, 0x47, 0x1E, 0x3F, 0x3E, 0x37, 0x5E, 0x27, 0x7F, 0x1F, 0x5F, 0x17, 0x5F, 0x02, 0x07, 0x5F, 0x80, 0x07, 0x7F, 0x02, 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x80, 0x07, 0x1F, 0x01, 0x06, 0xFE, 0x01, 0x06, 0xDE, 0x81, 0x06, 0xBE, 0x06, 0xDF, 0x02, 0x06, 0xBF, 0x01, 0x06, 0x9F, 0x07, 0x06, 0x7F, 0x0D, 0x06, 0x5F, 0x80, 0x06, 0x3F, 0x0C, 0x06, 0x5F, 0x81, 0x06, 0x7F, 0x06, 0x5F, 0x05, 0x06, 0x7F, 0x08, 0x06, 0x9F, 0xC3, 0x06, 0x7F, 0x06, 0x5F, 0x0E, 0x3F, 0x0E, 0x1F, 0x0D, 0xFF, 0x0D, 0xBF, 0x0D, 0x7E, 0x15, 0x5E, 0x14, 0xFE, 0x1C, 0xDE, 0x2C, 0xBE, 0x34, 0x9E, 0x3B, 0xFC, 0x32, 0xF9, 0x2A, 0x16, 0x39, 0xF5, 0x6A, 0xD8, 0x9B, 0xDC, 0xAB, 0xDC, 0xB3, 0x7B, 0xB2, 0xF9, 0xBB, 0x19, 0xCB, 0x39, 0xCB, 0x18, 0xCA, 0xF8, 0xCA, 0xD7, 0xBA, 0x55, 0xC2, 0xB6, 0xBA, 0x95, 0xBA, 0xB6, 0xB2, 0xF7, 0xAB, 0x37, 0x8A, 0xF5, 0x73, 0x36, 0x74, 0x7A, 0x54, 0xFA, 0x5E, 0x7F, 0x46, 0x7E, 0x2E, 0x5D, 0x26, 0x5D, 0x26, 0x7E, 0x36, 0x9E, 0x46, 0xDF, 0x4E, 0x7E, 0x6E, 0xBF, 0x75, 0xBC, 0x6B, 0xF6, 0x72, 0xF3, 0x92, 0xD3, 0xB3, 0x35, 0xC2, 0xF5, 0xCA, 0xD5, 0xCA, 0x94, 0xCA, 0x95, 0xCA, 0x74, 0xD2, 0x95, 0xCA, 0x74, 0xCA, 0xB5, 0xCA, 0xB6, 0xCB, 0x17, 0xBB, 0x18, 0x71, 0x72, 0x59, 0x11, 0x59, 0x72, 0x51, 0x72, 0x49, 0x72, 0x49, 0x92, 0x41, 0x92, 0x01, 0x41, 0x72, 0x04, 0x39, 0x72, 0x01, 0x39, 0x71, 0x04, 0x31, 0x51, 0x81, + 0x31, 0x50, 0x29, 0x30, 0x02, 0x29, 0x50, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x09, 0x33, 0x09, 0x55, 0x11, 0xD7, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xFA, 0x04, 0x01, 0xD9, 0x82, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xBA, 0x03, 0x01, 0xDA, 0x85, 0x01, 0xB9, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x81, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xD9, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x07, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x06, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x05, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x80, 0x09, 0xDA, 0x06, 0x01, 0xD9, 0x82, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x11, 0x01, 0xD9, 0x81, 0x01, 0xDA, 0x01, 0xD9, 0x07, 0x01, 0xDA, 0x03, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x07, 0x01, 0xD9, 0x82, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x05, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x02, 0x01, 0xDA, + 0x06, 0x01, 0xD9, 0x81, 0x01, 0xF9, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x03, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x0A, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x03, 0x01, 0xD9, 0x81, 0x01, 0xDA, 0x01, 0xD9, 0x04, 0x01, 0xDA, 0x81, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x04, 0x01, 0xDA, 0x81, 0x01, 0xD9, 0x01, 0xFA, 0x04, 0x01, 0xD9, 0x88, 0x01, 0xF9, 0x01, 0xD9, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x19, 0x10, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x07, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, + 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x07, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, + 0x83, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x29, 0x30, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x07, 0x29, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, + 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x8E, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x12, 0x19, 0x33, 0x11, 0x54, 0x19, 0x76, 0x19, 0xB7, 0x19, 0xF8, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0xD8, 0x19, 0xF8, 0x11, 0xD8, 0x01, 0x19, 0xF8, 0x8D, 0x11, 0xB6, 0x19, 0x95, 0x19, 0x94, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0x74, 0x19, 0x95, 0x19, 0xB6, 0x01, 0x19, 0xF7, 0x83, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x96, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x86, 0x21, 0xB6, 0x21, 0x95, 0x21, 0x74, 0x21, 0x53, 0x29, 0x53, 0x29, 0x52, 0x29, 0x51, 0x06, 0x31, 0x51, 0x81, 0x39, 0x71, 0x31, 0x71, 0x01, 0x39, 0x71, 0x03, 0x39, 0x72, 0x01, 0x41, 0x92, 0x01, 0x39, 0x72, 0x02, 0x41, 0x92, 0x80, 0x41, 0x93, 0x01, 0x41, 0x92, 0x01, 0x41, 0x93, 0x83, 0x49, 0xB3, 0x41, 0x93, 0x49, 0x93, 0x49, 0xB3, 0x01, 0x49, 0xD3, 0x83, 0x49, 0xB3, 0x49, 0xD3, 0x51, 0xD3, 0x51, 0xD4, 0x02, 0x51, 0xD3, 0x82, 0x51, 0xD4, 0x51, 0xF4, 0x51, 0xD3, 0x01, 0x59, 0xD3, 0x83, 0x59, 0xB2, 0x59, 0x70, 0x8A, 0x74, 0xCC, 0x5A, 0x01, 0xD4, 0x7A, 0x82, 0xD4, 0x79, 0xD4, 0x58, 0xD4, 0x38, 0x02, 0xD4, 0x37, 0x9A, 0xD4, 0x57, 0xCC, 0x57, 0xCC, 0x77, 0xCC, 0xB8, 0xC4, 0xB8, 0xB4, 0xD8, 0xAC, 0xD8, 0x9C, 0xD8, 0x8C, 0xB8, 0x7C, 0xD8, 0x7D, 0x18, 0x75, 0x59, 0x75, 0xDB, + 0x76, 0x1B, 0x6E, 0x5C, 0x66, 0x5C, 0x66, 0x9D, 0x5E, 0xBD, 0x56, 0xDD, 0x4E, 0xFD, 0x47, 0x1E, 0x3F, 0x3E, 0x37, 0x5E, 0x2F, 0x5F, 0x27, 0x7F, 0x1F, 0x7E, 0x17, 0x7F, 0x01, 0x0F, 0x7F, 0x01, 0x07, 0x7F, 0x01, 0x07, 0x5F, 0x80, 0x07, 0x7F, 0x01, 0x07, 0x3F, 0x02, 0x07, 0x1E, 0x82, 0x06, 0xFE, 0x06, 0xDF, 0x06, 0xDE, 0x02, 0x06, 0xBE, 0x80, 0x06, 0x9E, 0x02, 0x06, 0x9F, 0x04, 0x06, 0x7F, 0x04, 0x06, 0x5F, 0x0C, 0x06, 0x3F, 0x80, 0x06, 0x5F, 0x02, 0x06, 0x3F, 0x01, 0x06, 0x1F, 0x0B, 0x06, 0x3F, 0x01, 0x06, 0x5F, 0x06, 0x06, 0x7F, 0x80, 0x06, 0x9F, 0x02, 0x06, 0x7F, 0x02, 0x06, 0x5F, 0xB1, 0x06, 0x1F, 0x05, 0xFF, 0x05, 0xDF, 0x0D, 0xBF, 0x0D, 0x5E, 0x0D, 0x1E, 0x14, 0xFE, 0x1C, 0xDF, 0x14, 0x3D, 0x1B, 0xFC, 0x2B, 0xFD, 0x33, 0x5B, 0x2A, 0xB9, 0x21, 0xD6, 0x31, 0xB6, 0x6A, 0xB9, 0xA3, 0xBD, 0xAB, 0xBD, 0xB3, 0x5B, 0xB3, 0x19, 0xBA, 0xF9, 0xCB, 0x19, 0xCA, 0xF8, 0xCA, 0xD8, 0xC2, 0x96, 0xBA, 0x76, 0xBA, 0x96, 0xBA, 0xD7, 0xBB, 0x37, 0xA3, 0x37, 0x7A, 0xD5, 0x73, 0xB8, 0x64, 0xBA, 0x55, 0x7C, 0x5E, 0xDF, 0x36, 0x7E, 0x26, 0x3D, 0x1E, 0x5D, 0x26, 0x9E, 0x2E, 0x9E, 0x46, 0xFF, 0x4E, 0x7E, 0x76, 0xDF, 0x7D, 0xFD, 0x6C, 0x17, 0x6A, 0xD3, 0x92, 0xD3, 0xB3, 0x15, 0xC2, 0xF5, 0xCA, 0xD5, 0x01, 0xCA, 0x94, 0x01, 0xCA, 0x95, 0x88, 0xD2, 0x95, 0xCA, 0x95, 0xCA, 0xB6, 0xC2, 0xD7, 0xC3, 0x38, 0x79, 0x72, 0x58, 0xF0, 0x59, 0x51, 0x51, 0x72, 0x01, 0x49, 0x72, 0x02, 0x41, 0x72, 0x02, 0x39, 0x71, 0x87, 0x39, 0x72, 0x39, 0x51, 0x31, 0x51, + 0x39, 0x51, 0x31, 0x31, 0x31, 0x51, 0x31, 0x71, 0x31, 0x51, 0x01, 0x31, 0x50, 0x81, 0x29, 0x30, 0x31, 0x50, 0x02, 0x29, 0x50, 0x08, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x50, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x09, 0x13, 0x09, 0x55, 0x19, 0xD7, 0x09, 0xB8, 0x09, 0xB9, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x02, 0x01, 0xB9, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x05, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x08, 0x01, 0xD9, 0x81, 0x01, 0xB9, 0x01, 0xDA, 0x03, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x03, 0x01, 0xB9, 0x81, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x81, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x04, 0x01, 0xD9, 0x84, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xDA, 0x0C, 0x01, 0xD9, 0x82, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x81, 0x01, 0xF9, 0x01, 0xB9, 0x02, 0x01, 0xD9, 0x0B, 0x01, 0xDA, 0x07, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, + 0x01, 0xB9, 0x06, 0x01, 0xDA, 0x05, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x03, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x05, 0x01, 0xD9, 0x82, 0x09, 0xDA, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x82, 0x01, 0xF9, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x05, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x81, 0x01, 0xDA, 0x01, 0xB9, 0x05, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x04, 0x01, 0xD9, 0x8B, 0x01, 0xF9, 0x09, 0xF9, 0x09, 0xF8, 0x09, 0xB7, 0x11, 0x75, 0x09, 0x12, 0x11, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x05, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, + 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x31, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x30, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x0C, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, + 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x0F, 0x8A, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, + 0x30, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x04, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x20, 0xEF, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8F, 0x19, 0x32, 0x19, 0x33, 0x19, 0x54, 0x19, 0x96, 0x11, 0x96, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xB6, 0x21, 0xF8, 0x11, 0xB6, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x74, 0x19, 0x53, 0x19, 0x32, 0x05, 0x21, 0x31, 0x84, 0x21, 0x32, 0x21, 0x53, 0x21, 0x94, 0x19, 0x95, 0x19, 0xB5, 0x01, 0x19, 0xD6, 0x82, 0x19, 0xB6, 0x19, 0x95, 0x19, 0xB6, 0x01, 0x21, 0xD6, 0x83, 0x21, 0xB5, 0x21, 0x74, 0x21, 0x53, 0x29, 0x73, 0x01, 0x29, 0x52, 0x84, 0x31, 0x51, 0x31, 0x71, 0x31, 0x51, 0x31, 0x71, 0x31, 0x51, 0x03, 0x39, 0x51, 0x80, 0x39, 0x71, 0x04, 0x39, 0x72, 0x81, 0x41, 0x92, 0x39, 0x92, 0x02, 0x41, 0x92, 0x82, 0x39, 0x72, 0x41, 0x92, 0x41, 0x93, 0x02, 0x41, 0x92, 0x80, 0x41, 0x93, 0x04, 0x49, 0xB3, 0x81, 0x51, 0xD4, 0x51, 0xD3, 0x01, 0x49, 0xB3, 0x01, 0x51, 0xD3, 0x80, 0x51, 0xD4, 0x02, 0x51, 0xD3, 0x86, 0x59, 0xF4, 0x59, 0xD3, 0x61, 0xF3, 0x61, 0xD2, 0x59, 0x50, 0x7A, 0x33, 0xC4, 0x1A, 0x01, 0xD4, 0x7A, 0x01, + 0xD4, 0x79, 0x80, 0xD4, 0x58, 0x01, 0xD4, 0x57, 0x01, 0xCC, 0x77, 0x96, 0xCC, 0xB8, 0xC4, 0xB8, 0xBC, 0xB8, 0xAC, 0x97, 0x9C, 0x97, 0x8C, 0x56, 0x7C, 0x97, 0x74, 0xB7, 0x75, 0x59, 0x75, 0xBB, 0x76, 0x3C, 0x76, 0x9D, 0x6E, 0xBE, 0x5E, 0xBD, 0x56, 0xFE, 0x46, 0xDD, 0x3E, 0xFD, 0x3F, 0x1E, 0x37, 0x3E, 0x2F, 0x5E, 0x2F, 0x7F, 0x27, 0x7E, 0x1F, 0x7F, 0x01, 0x17, 0x7F, 0x81, 0x0F, 0x7E, 0x0F, 0x7F, 0x05, 0x07, 0x7F, 0x01, 0x07, 0x5F, 0x80, 0x07, 0x3F, 0x01, 0x07, 0x1E, 0x01, 0x06, 0xFE, 0x80, 0x06, 0xDE, 0x02, 0x06, 0xBE, 0x01, 0x06, 0x9E, 0x02, 0x06, 0x9F, 0x02, 0x06, 0x7F, 0x01, 0x06, 0x5F, 0x81, 0x06, 0x3F, 0x06, 0x5F, 0x04, 0x06, 0x3F, 0x13, 0x06, 0x1F, 0x02, 0x06, 0x3F, 0x05, 0x06, 0x1F, 0x01, 0x06, 0x3F, 0x0A, 0x06, 0x5F, 0x9A, 0x06, 0x3F, 0x06, 0x5F, 0x06, 0x3F, 0x06, 0x1F, 0x05, 0xFF, 0x05, 0xDF, 0x05, 0xBF, 0x05, 0x7F, 0x05, 0x3F, 0x04, 0xFE, 0x0C, 0xBE, 0x0C, 0x7E, 0x0C, 0x3D, 0x13, 0xDC, 0x1B, 0x9C, 0x2B, 0x7C, 0x2B, 0x1B, 0x32, 0x7A, 0x21, 0x76, 0x39, 0x75, 0x72, 0x99, 0xB3, 0xFF, 0xB3, 0xBD, 0xB3, 0x3B, 0xBA, 0xFA, 0xBA, 0xD9, 0xC2, 0xF9, 0x01, 0xC2, 0xD8, 0x8A, 0xBA, 0x96, 0xBA, 0xB6, 0xB2, 0xD6, 0xB3, 0x17, 0x9B, 0x17, 0x7B, 0x16, 0x6C, 0x19, 0x65, 0x5C, 0x55, 0xFD, 0x4E, 0xBF, 0x2E, 0x5D, 0x01, 0x1E, 0x7D, 0x8B, 0x1E, 0x7E, 0x2E, 0xDF, 0x3E, 0xBF, 0x56, 0xBF, 0x6E, 0x7E, 0x85, 0xFD, 0x6B, 0xD6, 0x72, 0xD3, 0x9A, 0xF4, 0xBB, 0x35, 0xC2, 0xF5, 0xCA, 0xB5, 0x01, 0xCA, 0x94, 0x8A, 0xD2, 0x95, 0xCA, 0x74, 0xCA, + 0x75, 0xCA, 0x95, 0xCA, 0xB6, 0xC2, 0xB6, 0xC3, 0x18, 0x81, 0xB3, 0x58, 0xF0, 0x59, 0x51, 0x51, 0x72, 0x01, 0x49, 0x72, 0x01, 0x41, 0x72, 0x83, 0x41, 0x92, 0x41, 0x71, 0x41, 0x92, 0x39, 0x72, 0x01, 0x39, 0x71, 0x82, 0x39, 0x51, 0x31, 0x51, 0x31, 0x52, 0x03, 0x31, 0x51, 0x83, 0x29, 0x50, 0x29, 0x30, 0x31, 0x50, 0x29, 0x50, 0x06, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x04, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x32, 0x10, 0xF2, 0x09, 0x13, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x80, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x82, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xFA, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x08, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x03, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x04, 0x01, 0xD9, 0x80, 0x09, 0xFA, 0x09, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x84, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x81, 0x01, 0xB9, 0x01, 0xFA, 0x08, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x17, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x05, 0x01, 0xD9, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xD9, 0x81, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x81, + 0x01, 0xD9, 0x01, 0xDA, 0x06, 0x01, 0xD9, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x04, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x04, 0x01, 0xD9, 0x82, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xFA, 0x04, 0x01, 0xD9, 0x89, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x82, 0x01, 0xF9, 0x01, 0xD9, 0x01, 0xF9, 0x02, 0x01, 0xD9, 0x80, 0x09, 0xF9, 0x03, 0x01, 0xD9, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x05, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x82, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x81, 0x01, 0xB9, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x84, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0xFA, 0x02, 0x01, 0xD9, 0x8B, 0x01, 0xFA, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xF8, 0x11, 0xB7, 0x09, 0x74, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x29, 0x30, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, + 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x89, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x05, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x08, 0x21, 0x10, 0x08, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, + 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x05, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x88, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x06, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x85, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, + 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x19, 0x54, 0x01, 0x19, 0x74, 0x02, 0x19, 0x54, 0x82, 0x19, 0x55, 0x19, 0x75, 0x19, 0x74, 0x01, 0x19, 0x53, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x21, 0x52, 0x21, 0x73, 0x21, 0x93, 0x21, 0xB4, 0x21, 0xD5, 0x19, 0xB5, 0x19, 0x94, 0x01, 0x19, 0x74, 0x83, 0x21, 0xB5, 0x21, 0x95, 0x29, 0x74, 0x29, 0x53, 0x02, 0x29, 0x52, 0x01, 0x31, 0x51, 0x01, 0x31, 0x71, 0x81, 0x31, 0x51, 0x39, 0x71, 0x02, 0x39, 0x51, 0x80, 0x39, 0x71, 0x06, 0x39, 0x72, 0x03, 0x41, 0x92, 0x82, 0x41, 0xB3, 0x41, 0x92, 0x41, 0xB3, 0x06, 0x49, 0xB3, 0x81, 0x49, 0x93, 0x49, 0xB3, 0x01, 0x51, 0xD3, 0x80, 0x49, 0xB3, 0x01, 0x51, 0xD3, + 0x02, 0x51, 0xD4, 0x01, 0x59, 0xF4, 0x89, 0x59, 0xD3, 0x61, 0xF3, 0x59, 0xB2, 0x59, 0x50, 0x7A, 0x33, 0xC4, 0x1A, 0xCC, 0x7A, 0xD4, 0x7A, 0xCC, 0x59, 0xD4, 0x59, 0x01, 0xCC, 0x58, 0x97, 0xCC, 0x78, 0xCC, 0x98, 0xC4, 0xB8, 0xC4, 0xD8, 0xB4, 0xB8, 0xA4, 0x97, 0x94, 0x97, 0x8C, 0xB7, 0x85, 0x18, 0x85, 0x9A, 0x7D, 0xDB, 0x76, 0x3C, 0x76, 0x7D, 0x66, 0x7D, 0x5E, 0xBD, 0x56, 0xFE, 0x46, 0xFD, 0x3F, 0x1E, 0x37, 0x3E, 0x2F, 0x5E, 0x2F, 0x7F, 0x27, 0x7F, 0x1F, 0x7F, 0x1F, 0x9F, 0x02, 0x17, 0x9F, 0x01, 0x0F, 0x9F, 0x02, 0x07, 0x9F, 0x03, 0x07, 0x7F, 0x01, 0x07, 0x5F, 0x82, 0x07, 0x3F, 0x07, 0x1E, 0x07, 0x1F, 0x01, 0x06, 0xFE, 0x80, 0x06, 0xDE, 0x01, 0x06, 0xBE, 0x02, 0x06, 0x9E, 0x80, 0x06, 0x9F, 0x01, 0x06, 0x7E, 0x80, 0x06, 0x5E, 0x01, 0x06, 0x7F, 0x01, 0x06, 0x5F, 0x03, 0x06, 0x3F, 0x0A, 0x06, 0x1F, 0x81, 0x05, 0xFF, 0x06, 0x1F, 0x12, 0x05, 0xFF, 0x03, 0x06, 0x1F, 0x80, 0x06, 0x3F, 0x01, 0x06, 0x1F, 0x01, 0x06, 0x3F, 0x80, 0x06, 0x5F, 0x02, 0x06, 0x3F, 0x82, 0x06, 0x5F, 0x06, 0x3F, 0x06, 0x5F, 0x01, 0x06, 0x1F, 0x80, 0x05, 0xFF, 0x01, 0x05, 0xBF, 0xBF, 0x05, 0x9F, 0x05, 0x7F, 0x05, 0x1F, 0x04, 0xDF, 0x04, 0x7E, 0x0C, 0x5E, 0x14, 0x3E, 0x1B, 0xFE, 0x1B, 0x9D, 0x1B, 0x1C, 0x1A, 0xBB, 0x2A, 0x9B, 0x32, 0x19, 0x29, 0x36, 0x41, 0x56, 0x82, 0xDB, 0xAB, 0xBE, 0xBB, 0x7D, 0xBB, 0x1B, 0xC3, 0x1A, 0xC2, 0xF9, 0xC2, 0xD8, 0xBA, 0x97, 0xB2, 0x76, 0xBA, 0xD7, 0xB2, 0xF7, 0xA3, 0x17, 0x8A, 0xF6, 0x6B, 0x36, 0x74, 0xDB, 0x55, 0x1B, 0x56, + 0x7F, 0x3E, 0x9F, 0x26, 0x7E, 0x1E, 0x7E, 0x1E, 0xBE, 0x16, 0x7E, 0x2E, 0xBF, 0x3E, 0xDF, 0x56, 0xBF, 0x6E, 0x7E, 0x85, 0xFD, 0x74, 0x17, 0x72, 0xF3, 0x92, 0xD3, 0xB2, 0xF5, 0xC2, 0xF5, 0xCA, 0xB4, 0xCA, 0x94, 0xD2, 0x95, 0xCA, 0x74, 0xCA, 0x54, 0xCA, 0x74, 0xCA, 0x75, 0xCA, 0x95, 0xC2, 0xB6, 0xBA, 0xF7, 0x89, 0xD3, 0x58, 0xCF, 0x51, 0x31, 0x51, 0x52, 0x49, 0x72, 0x49, 0x92, 0x41, 0x72, 0x02, 0x41, 0x92, 0x80, 0x39, 0x72, 0x01, 0x39, 0x71, 0x80, 0x39, 0x51, 0x01, 0x39, 0x52, 0x03, 0x31, 0x51, 0x02, 0x31, 0x50, 0x04, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD9, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x03, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x05, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x86, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xB9, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x04, 0x09, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x82, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x80, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x81, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xB8, 0x02, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x81, 0x09, 0xD9, 0x01, 0xD9, 0x02, 0x09, 0xD9, 0x81, + 0x01, 0xD9, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x03, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x05, 0x09, 0xD9, 0x80, 0x01, 0xB9, 0x02, 0x09, 0xD9, 0x09, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x03, 0x01, 0xD9, 0x80, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x82, 0x01, 0xD9, 0x09, 0xD9, 0x01, 0xB9, 0x02, 0x01, 0xD9, 0x80, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x82, 0x09, 0xD9, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x02, 0x09, 0xD9, 0x82, 0x01, 0xD9, 0x09, 0xD9, 0x01, 0xD9, 0x02, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x02, 0x09, 0xD9, 0x06, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x03, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x02, 0x09, 0xD9, 0x85, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x83, 0x01, 0xB9, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xB8, 0x01, 0x01, 0xD9, 0x80, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x84, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x02, 0x09, 0xD9, 0x81, 0x01, 0xB8, 0x01, 0xD9, 0x04, 0x09, 0xD9, 0x80, 0x01, 0xB8, 0x02, 0x09, 0xD9, 0x81, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x83, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xFA, 0x01, 0xF9, 0x01, 0x01, 0xD9, 0x81, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x03, 0x01, 0xFA, 0x8B, 0x01, 0xF9, 0x09, 0xF9, 0x09, 0xF8, 0x11, 0xB7, 0x09, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, + 0x21, 0x31, 0x29, 0x31, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x09, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x84, + 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x07, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, + 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x19, 0x32, 0x19, 0x53, 0x01, 0x19, 0x33, 0x80, 0x19, 0x53, 0x03, 0x19, 0x33, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x03, 0x29, 0x30, 0x01, 0x29, 0x31, 0x83, 0x29, 0x52, 0x21, 0x52, 0x21, 0x72, 0x21, 0x73, 0x02, 0x19, 0x73, 0x84, 0x21, 0x73, 0x21, 0x74, 0x21, 0x53, + 0x21, 0x73, 0x21, 0x53, 0x02, 0x29, 0x52, 0x02, 0x31, 0x51, 0x80, 0x31, 0x71, 0x01, 0x31, 0x51, 0x02, 0x39, 0x71, 0x02, 0x39, 0x72, 0x80, 0x39, 0x92, 0x03, 0x39, 0x72, 0x80, 0x41, 0x72, 0x01, 0x41, 0x92, 0x82, 0x41, 0x93, 0x41, 0x92, 0x41, 0xB3, 0x04, 0x49, 0xB3, 0x81, 0x49, 0x93, 0x49, 0xB3, 0x01, 0x49, 0xD3, 0x01, 0x49, 0xB3, 0x80, 0x51, 0xD4, 0x03, 0x51, 0xD3, 0x02, 0x51, 0xF4, 0xA3, 0x59, 0xF4, 0x59, 0xD3, 0x61, 0xF3, 0x61, 0xD2, 0x59, 0x70, 0x71, 0xF2, 0xBB, 0xF9, 0xCC, 0x7B, 0xCC, 0x7A, 0xCC, 0x79, 0xD4, 0x99, 0xC4, 0x58, 0xCC, 0x98, 0xCC, 0xD9, 0xC4, 0xF9, 0xBD, 0x19, 0xA4, 0xB7, 0x94, 0x76, 0x8C, 0xB7, 0x8D, 0x39, 0x85, 0x7A, 0x85, 0xDB, 0x7E, 0x3C, 0x76, 0x5D, 0x6E, 0xBD, 0x5E, 0xBD, 0x56, 0xDE, 0x4E, 0xDD, 0x3E, 0xFD, 0x37, 0x1D, 0x2F, 0x3E, 0x27, 0x5E, 0x27, 0x7F, 0x17, 0x7E, 0x17, 0x9F, 0x0F, 0x9F, 0x02, 0x0F, 0xBF, 0x02, 0x07, 0xBF, 0x03, 0x07, 0x9F, 0x04, 0x07, 0x7F, 0x82, 0x07, 0x5F, 0x07, 0x3F, 0x07, 0x1F, 0x01, 0x06, 0xFE, 0x01, 0x06, 0xDE, 0x80, 0x06, 0xBE, 0x02, 0x06, 0x9E, 0x81, 0x06, 0x9F, 0x06, 0x9E, 0x01, 0x06, 0x7E, 0x02, 0x06, 0x5E, 0x80, 0x06, 0x5F, 0x03, 0x06, 0x3F, 0x03, 0x06, 0x1F, 0x08, 0x05, 0xFF, 0x81, 0x05, 0xDF, 0x05, 0xFF, 0x10, 0x05, 0xDF, 0x07, 0x05, 0xFF, 0x06, 0x06, 0x1F, 0x81, 0x06, 0x3F, 0x06, 0x1F, 0x02, 0x05, 0xFF, 0x98, 0x05, 0xDF, 0x05, 0xBF, 0x05, 0x9F, 0x05, 0x7F, 0x05, 0x1F, 0x04, 0xDF, 0x04, 0xBF, 0x0C, 0x7E, 0x04, 0x1E, 0x0B, 0xFE, 0x13, 0xBE, 0x0B, 0x3C, 0x0A, 0x9B, + 0x12, 0x7B, 0x22, 0x7C, 0x32, 0x3B, 0x31, 0xB8, 0x20, 0xD5, 0x41, 0x36, 0x93, 0x3D, 0xC3, 0xFF, 0xBB, 0x5C, 0xB2, 0xFA, 0xBB, 0x1A, 0xBA, 0xD9, 0x01, 0xBA, 0xD8, 0xA5, 0xB2, 0xD7, 0xB3, 0x38, 0x9B, 0x17, 0x7A, 0xF5, 0x73, 0xF8, 0x6D, 0x1C, 0x55, 0xDD, 0x4E, 0x9F, 0x36, 0xBF, 0x1E, 0x7E, 0x16, 0x7E, 0x1E, 0xBF, 0x1E, 0x9E, 0x26, 0xDF, 0x3E, 0xDF, 0x56, 0xBE, 0x6E, 0x7F, 0x85, 0xBC, 0x74, 0x17, 0x7A, 0xD3, 0x9A, 0xF4, 0xBB, 0x15, 0xC2, 0xD5, 0xCA, 0xB5, 0xCA, 0x54, 0xD2, 0x95, 0xD2, 0x54, 0xD2, 0x75, 0xCA, 0x54, 0xD2, 0x75, 0xCA, 0x95, 0xC2, 0x95, 0xC3, 0x38, 0x92, 0x14, 0x58, 0xF0, 0x59, 0x51, 0x51, 0x51, 0x49, 0x72, 0x01, 0x49, 0x92, 0x80, 0x41, 0x71, 0x01, 0x41, 0x72, 0x01, 0x39, 0x71, 0x01, 0x39, 0x72, 0x82, 0x31, 0x51, 0x31, 0x52, 0x31, 0x51, 0x01, 0x31, 0x71, 0x02, 0x31, 0x50, 0x81, 0x29, 0x30, 0x29, 0x50, 0x0A, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x88, 0x21, 0x51, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x55, 0x11, 0xB7, 0x11, 0xD9, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x04, 0x01, 0xDA, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x82, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x04, 0x09, 0xD8, 0x82, 0x09, 0xD9, 0x09, 0xB8, 0x09, 0xD9, 0x02, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x0C, 0x09, 0xD8, 0x80, 0x11, 0xF9, 0x02, 0x09, 0xD8, 0x80, 0x09, 0xD9, 0x04, 0x09, 0xD8, 0x82, 0x09, 0xF8, 0x09, 0xD8, + 0x09, 0xF9, 0x06, 0x09, 0xD8, 0x82, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xD9, 0x0F, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x83, 0x09, 0xB8, 0x11, 0xF9, 0x09, 0xD8, 0x11, 0xF9, 0x01, 0x09, 0xF8, 0x02, 0x09, 0xD8, 0x80, 0x11, 0xD9, 0x0A, 0x09, 0xD8, 0x80, 0x09, 0xD9, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xF8, 0x02, 0x09, 0xD8, 0x80, 0x09, 0xF9, 0x09, 0x09, 0xD8, 0x82, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xD9, 0x04, 0x09, 0xD8, 0x80, 0x11, 0xF9, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x08, 0x09, 0xD8, 0x80, 0x09, 0xF9, 0x03, 0x09, 0xD8, 0x80, 0x09, 0xF9, 0x0F, 0x09, 0xD8, 0x83, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xF8, 0x09, 0xF9, 0x03, 0x09, 0xD8, 0x81, 0x09, 0xB8, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x82, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0xD8, 0x02, 0x09, 0xB8, 0x81, 0x09, 0xD8, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x06, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x02, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x07, 0x09, 0xD8, 0x82, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xD9, 0x02, 0x09, 0xF9, 0x81, 0x01, 0xD9, 0x09, 0xF9, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x87, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, + 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x31, 0x80, 0x19, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x07, 0x21, 0x10, 0x80, 0x21, 0x30, 0x09, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x0C, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, + 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, + 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x0E, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x21, 0x32, 0x80, 0x21, 0x52, 0x02, 0x19, 0x32, 0x02, 0x21, 0x32, 0x02, 0x21, 0x31, 0x80, 0x21, 0x30, 0x04, 0x29, 0x30, 0x86, 0x29, 0x31, 0x29, 0x11, 0x29, 0x31, 0x29, 0x51, 0x29, 0x52, 0x21, 0x52, 0x29, 0x72, 0x02, 0x21, 0x73, 0x84, 0x21, 0x53, 0x21, 0x52, 0x29, 0x52, 0x29, 0x32, 0x29, 0x52, 0x01, 0x31, 0x52, 0x02, 0x31, 0x51, 0x02, 0x39, 0x71, 0x81, 0x39, 0x92, 0x39, 0x71, 0x04, 0x39, 0x72, 0x02, 0x41, 0x92, 0x84, 0x41, 0xB3, 0x41, 0x92, 0x41, 0xB2, 0x41, 0xB3, 0x41, 0x93, 0x01, 0x41, 0x92, 0x06, 0x49, 0xB3, 0x83, 0x51, 0xD3, 0x49, 0xD3, 0x51, 0xD3, 0x51, 0xF3, 0x01, 0x51, 0xD3, 0x81, 0x51, 0xF3, 0x51, 0xD3, + 0x03, 0x51, 0xF4, 0x85, 0x59, 0xF4, 0x59, 0xF3, 0x61, 0xB2, 0x61, 0x91, 0x7A, 0x53, 0xBC, 0x1A, 0x01, 0xCC, 0x7A, 0x97, 0xCC, 0x79, 0xCC, 0x99, 0xCC, 0xB9, 0xCC, 0xD9, 0xC4, 0xD9, 0xAC, 0xB8, 0x94, 0x96, 0x84, 0x96, 0x7C, 0xD7, 0x7D, 0x79, 0x7D, 0xDB, 0x6D, 0xFB, 0x6E, 0x5D, 0x66, 0x7D, 0x5E, 0xDE, 0x56, 0xFE, 0x4E, 0xFE, 0x47, 0x1E, 0x3F, 0x1E, 0x37, 0x3E, 0x2F, 0x5E, 0x27, 0x7E, 0x27, 0x9F, 0x1F, 0x9F, 0x01, 0x17, 0xBF, 0x02, 0x0F, 0xBF, 0x04, 0x07, 0xBF, 0x07, 0x07, 0x9F, 0x82, 0x07, 0x7F, 0x07, 0x5F, 0x07, 0x3E, 0x01, 0x06, 0xFE, 0x81, 0x06, 0xDE, 0x06, 0xFE, 0x02, 0x06, 0xBE, 0x02, 0x06, 0x9E, 0x81, 0x06, 0x9F, 0x06, 0x7E, 0x02, 0x06, 0x5E, 0x02, 0x06, 0x3E, 0x80, 0x06, 0x3F, 0x01, 0x06, 0x1E, 0x01, 0x06, 0x1F, 0x81, 0x05, 0xFE, 0x05, 0xFF, 0x01, 0x05, 0xDF, 0x80, 0x05, 0xFF, 0x04, 0x05, 0xDF, 0x01, 0x05, 0xBF, 0x02, 0x05, 0xDF, 0x0B, 0x05, 0xBF, 0x80, 0x05, 0xDF, 0x02, 0x05, 0xBF, 0x81, 0x05, 0xDF, 0x05, 0xBF, 0x05, 0x05, 0xDF, 0x09, 0x05, 0xFF, 0x80, 0x05, 0xDF, 0x01, 0x05, 0xBF, 0xB5, 0x05, 0x9F, 0x05, 0x7F, 0x05, 0x1F, 0x04, 0xFF, 0x04, 0xBF, 0x04, 0x9F, 0x0C, 0x5F, 0x0C, 0x1E, 0x0B, 0xBE, 0x0B, 0x5D, 0x0B, 0x1D, 0x0A, 0xBC, 0x0A, 0x3B, 0x1A, 0x3B, 0x22, 0x1B, 0x31, 0xFB, 0x29, 0x58, 0x20, 0x94, 0x59, 0xB8, 0xA3, 0x7E, 0xB3, 0x9E, 0xB3, 0x3C, 0xB2, 0xDA, 0xBA, 0xD9, 0xB2, 0xD9, 0xB2, 0xD8, 0xB3, 0x39, 0xAB, 0x38, 0x93, 0x37, 0x6A, 0xF5, 0x74, 0x7A, 0x5D, 0x3C, 0x56, 0x5E, 0x3E, 0x9F, 0x26, 0x9E, 0x16, 0x7E, + 0x16, 0xBE, 0x16, 0xBF, 0x1E, 0xBE, 0x26, 0xDF, 0x46, 0xFF, 0x4E, 0x9E, 0x6E, 0x5E, 0x7D, 0x7C, 0x7C, 0x17, 0x7A, 0xD3, 0x9A, 0xD4, 0xBA, 0xD5, 0xC2, 0xB5, 0xCA, 0xB5, 0xCA, 0x54, 0xD2, 0x74, 0xD2, 0x75, 0xD2, 0x54, 0x01, 0xD2, 0x75, 0x86, 0xCA, 0x95, 0xC2, 0x95, 0xC2, 0xF7, 0x89, 0xD3, 0x58, 0xF0, 0x59, 0x51, 0x51, 0x51, 0x01, 0x49, 0x72, 0x03, 0x41, 0x72, 0x80, 0x39, 0x72, 0x01, 0x39, 0x52, 0x80, 0x39, 0x72, 0x02, 0x31, 0x51, 0x81, 0x31, 0x71, 0x31, 0x51, 0x01, 0x31, 0x50, 0x81, 0x29, 0x50, 0x29, 0x30, 0x01, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x05, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x87, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x09, 0x54, 0x11, 0xB7, 0x11, 0xF9, 0x09, 0xF9, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x04, 0x01, 0xDA, 0x81, 0x01, 0xF9, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x85, 0x09, 0xD8, 0x12, 0x19, 0x11, 0xF8, 0x12, 0x18, 0x1A, 0x18, 0x11, 0xF8, 0x02, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x80, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x02, 0x19, 0xF8, 0x80, 0x11, 0xF8, 0x02, 0x19, 0xF8, 0x80, 0x11, 0xF8, 0x04, 0x19, 0xF8, 0x87, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xF8, 0x19, 0xF8, 0x03, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x04, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x05, 0x11, 0xF8, 0x80, 0x19, 0xF8, 0x01, 0x11, 0xF8, 0x01, 0x19, 0xF8, 0x03, 0x11, 0xF8, 0x80, 0x19, 0xF8, 0x01, 0x11, + 0xF8, 0x80, 0x19, 0xF8, 0x01, 0x11, 0xD8, 0x02, 0x11, 0xF8, 0x82, 0x11, 0xD8, 0x11, 0xF8, 0x19, 0xF8, 0x01, 0x11, 0xF8, 0x01, 0x19, 0xF8, 0x01, 0x11, 0xF8, 0x80, 0x11, 0xD7, 0x03, 0x11, 0xF8, 0x83, 0x1A, 0x18, 0x11, 0xF8, 0x11, 0xF7, 0x12, 0x18, 0x09, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x01, 0x19, 0xF8, 0x82, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xF8, 0x10, 0x19, 0xF8, 0x80, 0x11, 0xF8, 0x01, 0x19, 0xF8, 0x02, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x06, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x02, 0x11, 0xF8, 0x80, 0x19, 0xF8, 0x0A, 0x11, 0xF8, 0x82, 0x19, 0xF8, 0x11, 0xF8, 0x19, 0xF8, 0x01, 0x11, 0xF8, 0x80, 0x19, 0xF8, 0x01, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x05, 0x11, 0xF8, 0x01, 0x19, 0xF8, 0x81, 0x11, 0xF8, 0x19, 0xF8, 0x05, 0x11, 0xF8, 0x82, 0x11, 0xD8, 0x11, 0xF8, 0x12, 0x18, 0x01, 0x11, 0xF8, 0x04, 0x19, 0xF8, 0x03, 0x1A, 0x18, 0x80, 0x19, 0xF7, 0x01, 0x1A, 0x18, 0x84, 0x12, 0x18, 0x11, 0xF8, 0x12, 0x18, 0x11, 0xF8, 0x12, 0x18, 0x03, 0x11, 0xF8, 0x81, 0x09, 0xF8, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x81, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x8A, 0x01, 0xFA, 0x0A, 0x1A, 0x01, 0xF9, 0x09, 0xF9, 0x09, 0xF8, 0x09, 0xB6, 0x09, 0x54, 0x11, 0x53, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, + 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x11, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x0D, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x83, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0A, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x31, 0x02, 0x21, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, + 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x88, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8D, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, + 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x08, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x06, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x07, 0x29, 0x0F, 0x05, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x06, 0x21, 0x31, 0x01, 0x21, 0x30, 0x04, 0x29, 0x30, 0x01, 0x31, 0x31, 0x81, 0x29, 0x31, 0x29, 0x11, 0x02, 0x29, 0x31, 0x80, 0x29, 0x32, 0x01, 0x29, 0x52, 0x80, 0x29, 0x32, 0x02, 0x29, 0x52, 0x80, 0x29, 0x31, 0x01, 0x31, 0x51, 0x01, 0x31, 0x71, 0x02, 0x39, 0x71, 0x80, 0x39, 0x72, 0x02, 0x39, 0x71, 0x02, 0x39, 0x72, 0x85, 0x41, 0x92, 0x41, 0x72, 0x41, 0x92, 0x41, 0xB3, 0x41, 0x93, 0x41, 0xB3, 0x02, 0x41, 0x92, 0x81, 0x41, 0x93, 0x41, 0x92, 0x03, 0x49, 0xB3, 0x82, 0x49, 0xD3, 0x49, 0xB3, 0x49, 0xD3, 0x01, 0x51, 0xD3, 0x81, 0x51, 0xF3, 0x51, 0xD3, 0x04, 0x51, 0xF3, + 0x01, 0x52, 0x14, 0x86, 0x49, 0xF3, 0x51, 0xD3, 0x59, 0xF3, 0x59, 0xB2, 0x59, 0x91, 0x82, 0x94, 0xBC, 0x3A, 0x02, 0xCC, 0x9A, 0x8F, 0xCC, 0xDA, 0xCC, 0xFA, 0xBC, 0xB8, 0xA4, 0x77, 0x94, 0x56, 0x7C, 0x55, 0x7C, 0xF7, 0x7D, 0x79, 0x76, 0x1B, 0x6E, 0x5C, 0x66, 0xBD, 0x5E, 0xDE, 0x4E, 0xFE, 0x47, 0x1F, 0x3F, 0x3F, 0x37, 0x1E, 0x01, 0x2F, 0x5E, 0x84, 0x27, 0x5F, 0x27, 0x7F, 0x1F, 0x7E, 0x17, 0x9E, 0x17, 0x9F, 0x03, 0x0F, 0xBF, 0x06, 0x07, 0xBF, 0x07, 0x07, 0x9F, 0x83, 0x07, 0x7F, 0x07, 0x5F, 0x07, 0x1E, 0x06, 0xFE, 0x02, 0x06, 0xDE, 0x01, 0x06, 0xBE, 0x01, 0x06, 0x9E, 0x03, 0x06, 0x7E, 0x02, 0x06, 0x5E, 0x02, 0x06, 0x3E, 0x01, 0x06, 0x1E, 0x01, 0x05, 0xFE, 0x83, 0x05, 0xFF, 0x05, 0xFE, 0x05, 0xFF, 0x05, 0xDE, 0x02, 0x05, 0xDF, 0x01, 0x05, 0xBF, 0x80, 0x05, 0xDF, 0x05, 0x05, 0xBF, 0x81, 0x05, 0x9F, 0x05, 0xBF, 0x09, 0x05, 0x9F, 0x81, 0x05, 0xBF, 0x05, 0x9F, 0x09, 0x05, 0xBF, 0x04, 0x05, 0xDF, 0x83, 0x05, 0xBF, 0x05, 0xDF, 0x05, 0xFF, 0x05, 0xDF, 0x02, 0x05, 0xBF, 0xB4, 0x05, 0x9F, 0x05, 0x7F, 0x05, 0x5F, 0x05, 0x1F, 0x04, 0xFF, 0x04, 0xDF, 0x04, 0x9F, 0x04, 0x5F, 0x03, 0xFE, 0x0B, 0xFF, 0x03, 0x7E, 0x03, 0x3D, 0x02, 0xDD, 0x0A, 0x9D, 0x0A, 0x3C, 0x09, 0xFB, 0x19, 0xFB, 0x29, 0xFC, 0x31, 0xBA, 0x28, 0xF7, 0x28, 0x74, 0x72, 0x1A, 0xB3, 0xDF, 0xBB, 0x9E, 0xB3, 0x1B, 0xAA, 0xB9, 0xB2, 0xFA, 0xAA, 0xF9, 0xAB, 0x39, 0xA3, 0x59, 0x83, 0x37, 0x63, 0x57, 0x6C, 0xDB, 0x55, 0x9D, 0x4E, 0x9F, 0x2E, 0x9F, 0x1E, 0xBF, 0x16, 0xBE, 0x16, + 0xBF, 0x0E, 0x9E, 0x16, 0xBE, 0x26, 0xDF, 0x46, 0xFF, 0x56, 0x9F, 0x6E, 0x3E, 0x7D, 0x5C, 0x73, 0xB6, 0x82, 0xF4, 0xA2, 0xD4, 0xBA, 0xF5, 0xC2, 0xB5, 0xCA, 0x74, 0xD2, 0x74, 0x01, 0xD2, 0x75, 0x8C, 0xD2, 0x34, 0xD2, 0x54, 0xD2, 0x75, 0xCA, 0x75, 0xC2, 0xB5, 0xBA, 0xD7, 0x91, 0xF4, 0x58, 0xAF, 0x59, 0x51, 0x51, 0x72, 0x49, 0x92, 0x49, 0x72, 0x41, 0x92, 0x02, 0x41, 0x72, 0x81, 0x39, 0x72, 0x39, 0x52, 0x01, 0x39, 0x72, 0x02, 0x31, 0x51, 0x80, 0x31, 0x71, 0x02, 0x31, 0x50, 0x01, 0x29, 0x50, 0x81, 0x29, 0x30, 0x29, 0x50, 0x02, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0xD7, 0x09, 0xF8, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x04, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x87, 0x09, 0xFA, 0x0A, 0x1A, 0x09, 0xF9, 0x12, 0x19, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0xD7, 0x19, 0xF8, 0x02, 0x19, 0xF7, 0x8B, 0x21, 0xF7, 0x19, 0xD7, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xD6, 0x21, 0xF7, 0x21, 0xD7, 0x01, 0x19, 0xD6, 0x03, 0x19, 0xD7, 0x84, 0x21, 0xD7, 0x19, 0xD7, 0x21, 0xD7, 0x19, 0xD6, 0x21, 0xD7, 0x03, 0x19, 0xD7, 0x80, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x80, 0x19, 0xF7, 0x01, 0x19, 0xD6, 0x80, 0x19, 0xF7, 0x01, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x84, 0x21, 0xF7, 0x19, 0xD7, 0x21, 0xF7, 0x19, + 0xD7, 0x21, 0xF7, 0x02, 0x19, 0xD7, 0x83, 0x21, 0xF7, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x80, 0x21, 0xF7, 0x01, 0x19, 0xD7, 0x83, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xF6, 0x21, 0xF7, 0x01, 0x19, 0xD6, 0x81, 0x19, 0xD7, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x82, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xD6, 0x02, 0x19, 0xD7, 0x80, 0x19, 0xB6, 0x01, 0x19, 0xD7, 0x90, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xF7, 0x01, 0x19, 0xD7, 0x81, 0x19, 0xD6, 0x19, 0xD7, 0x01, 0x19, 0xD6, 0x83, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0xD6, 0x02, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x81, 0x19, 0xD7, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x01, 0x19, 0xB6, 0x83, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xB6, 0x02, 0x19, 0xD6, 0x80, 0x19, 0xB6, 0x02, 0x19, 0xD6, 0x02, 0x19, 0xB6, 0x81, 0x19, 0xD7, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x80, 0x19, 0xD7, 0x01, 0x19, 0xD6, 0x81, 0x19, 0xB6, 0x19, 0xD7, 0x02, 0x19, 0xD6, 0x80, 0x19, 0xD7, 0x02, 0x19, 0xD6, 0x80, 0x19, 0xD7, 0x02, 0x19, 0xD6, 0x84, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0xD7, 0x02, 0x19, 0xD6, 0x85, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xF7, 0x0A, 0x21, 0xF7, 0x80, 0x19, 0xF7, 0x01, 0x21, 0xF7, 0x80, 0x22, 0x17, 0x07, 0x21, 0xF7, 0x81, 0x19, 0xF6, 0x22, 0x17, 0x01, 0x21, 0xF7, 0x84, 0x19, 0xF7, + 0x22, 0x17, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xD7, 0x05, 0x19, 0xF7, 0x01, 0x11, 0xF8, 0x80, 0x09, 0xF8, 0x01, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x88, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xF9, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xD7, 0x09, 0x54, 0x11, 0x33, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8D, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x73, 0x04, 0x19, 0x52, 0x81, 0x19, 0x31, 0x21, 0x52, 0x01, 0x19, 0x31, 0x82, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x06, 0x21, 0x31, 0x80, 0x21, 0x51, 0x03, 0x21, 0x31, 0x80, 0x21, 0x51, 0x01, 0x19, 0x51, 0x80, 0x19, 0x31, 0x05, 0x21, 0x31, 0x80, 0x21, 0x51, 0x02, 0x21, 0x31, 0x80, 0x19, 0x10, 0x07, 0x21, 0x31, 0x80, 0x21, 0x11, 0x07, 0x21, 0x31, 0x80, 0x21, 0x11, 0x07, 0x21, 0x31, 0x80, 0x19, 0x30, 0x13, 0x21, 0x31, 0x83, 0x21, 0x51, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x51, 0x15, 0x21, 0x31, 0x80, 0x21, 0x51, 0x09, 0x21, 0x31, 0x80, 0x21, 0x11, 0x06, 0x21, 0x31, 0x80, 0x21, 0x11, 0x07, 0x21, 0x31, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x03, 0x21, 0x11, 0x03, 0x21, 0x31, 0x80, 0x21, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, + 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x88, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, + 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x06, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x03, 0x29, 0x10, 0x84, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x84, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x89, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x06, 0x21, 0x31, 0x81, 0x21, 0x50, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x81, 0x31, 0x30, 0x31, 0x51, 0x01, 0x31, 0x31, 0x81, 0x29, 0x31, 0x29, 0x51, 0x01, 0x29, 0x31, 0x01, 0x29, 0x52, 0x02, 0x31, 0x52, 0x82, 0x31, 0x51, 0x31, 0x31, 0x31, 0x51, 0x01, 0x39, 0x72, 0x02, 0x39, 0x92, 0x01, 0x39, 0x71, 0x84, 0x39, 0x72, 0x39, 0x71, 0x39, + 0x72, 0x39, 0x92, 0x39, 0x72, 0x01, 0x41, 0x72, 0x01, 0x41, 0x93, 0x04, 0x41, 0x92, 0x03, 0x49, 0xB3, 0x82, 0x49, 0x93, 0x49, 0xB3, 0x51, 0xB3, 0x02, 0x49, 0xD3, 0x81, 0x49, 0xB2, 0x49, 0xD3, 0x02, 0x51, 0xF3, 0x01, 0x49, 0xF3, 0x9E, 0x52, 0x14, 0x52, 0x34, 0x4A, 0x34, 0x4A, 0x13, 0x4A, 0x33, 0x49, 0xF3, 0x49, 0xB1, 0x59, 0xD1, 0x82, 0xF5, 0xAC, 0x19, 0xCC, 0xFB, 0xCC, 0xDB, 0xCD, 0x1B, 0xC4, 0xDA, 0xB4, 0xB9, 0xA4, 0x77, 0x94, 0x56, 0x8C, 0xB7, 0x85, 0x17, 0x7D, 0xBA, 0x86, 0x5C, 0x6E, 0x7C, 0x66, 0xDD, 0x56, 0xFE, 0x46, 0xFE, 0x3F, 0x1E, 0x37, 0x3F, 0x2F, 0x5F, 0x27, 0x5F, 0x27, 0x9F, 0x1F, 0x7F, 0x01, 0x17, 0x7F, 0x80, 0x0F, 0x9F, 0x02, 0x0F, 0xBF, 0x81, 0x0F, 0xDF, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x07, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x01, 0x07, 0xBF, 0x82, 0x07, 0x7F, 0x07, 0x3E, 0x07, 0x1E, 0x01, 0x06, 0xDE, 0x03, 0x06, 0xBE, 0x80, 0x06, 0x9E, 0x03, 0x06, 0x7E, 0x03, 0x06, 0x5E, 0x02, 0x06, 0x3E, 0x03, 0x06, 0x1E, 0x01, 0x05, 0xFE, 0x80, 0x05, 0xFF, 0x01, 0x05, 0xDE, 0x01, 0x05, 0xDF, 0x04, 0x05, 0xBF, 0x03, 0x05, 0x9F, 0x80, 0x05, 0x7F, 0x02, 0x05, 0x9F, 0x80, 0x05, 0x7F, 0x01, 0x05, 0x9F, 0x80, 0x05, 0x7F, 0x01, 0x05, 0x9F, 0x02, 0x05, 0x7F, 0x05, 0x05, 0x9F, 0x01, 0x05, 0x7F, 0x02, 0x05, 0x9F, 0x07, 0x05, 0xBF, 0x81, 0x05, 0x9F, 0x05, 0xBF, 0x01, 0x05, 0x9F, 0x01, 0x05, 0x7F, 0x97, 0x05, 0x5F, 0x05, 0x1F, 0x04, 0xFF, 0x04, 0xDF, 0x04, 0xBF, 0x04, 0x7F, 0x04, 0x3F, 0x03, 0xDE, 0x0B, 0xBF, 0x03, + 0x7E, 0x03, 0x1E, 0x02, 0xDD, 0x02, 0x9D, 0x12, 0x9E, 0x0A, 0x1C, 0x11, 0xBB, 0x21, 0xDC, 0x21, 0x9A, 0x31, 0x79, 0x20, 0x95, 0x38, 0xB5, 0x82, 0x9C, 0xB3, 0xDF, 0xB3, 0x7D, 0x01, 0xA2, 0xDA, 0x89, 0xA2, 0xF9, 0xA3, 0x3A, 0x8B, 0x18, 0x7B, 0x58, 0x63, 0xF9, 0x54, 0xDB, 0x55, 0xFE, 0x3E, 0x9F, 0x26, 0xBF, 0x16, 0x9E, 0x01, 0x0E, 0xBE, 0x8C, 0x16, 0xFF, 0x16, 0xBE, 0x2E, 0xDF, 0x3E, 0xDF, 0x5E, 0xDF, 0x6D, 0xFD, 0x7D, 0x3B, 0x6B, 0x35, 0x82, 0xB4, 0xA2, 0xB4, 0xBA, 0xB5, 0xCA, 0x95, 0xCA, 0x74, 0x04, 0xD2, 0x54, 0x89, 0xCA, 0x54, 0xCA, 0x95, 0xCA, 0xB6, 0xBA, 0xD7, 0x89, 0xF4, 0x50, 0xAF, 0x59, 0x51, 0x49, 0x51, 0x49, 0x72, 0x49, 0x92, 0x02, 0x41, 0x72, 0x81, 0x39, 0x72, 0x39, 0x52, 0x01, 0x39, 0x72, 0x80, 0x39, 0x71, 0x01, 0x31, 0x51, 0x81, 0x31, 0x71, 0x31, 0x51, 0x01, 0x31, 0x50, 0x80, 0x29, 0x30, 0x01, 0x29, 0x50, 0x81, 0x29, 0x30, 0x29, 0x50, 0x06, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x09, 0x54, 0x11, 0xD7, 0x11, 0xF9, 0x01, 0x01, 0xF9, 0x01, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x87, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0xD9, 0x11, 0xD8, 0x11, 0xB7, 0x09, 0x55, 0x09, 0x34, 0x08, 0xF3, 0x01, 0x00, 0xD2, 0x81, 0x08, 0xD2, 0x08, 0xB1, 0x01, 0x08, 0xD2, 0x83, 0x08, 0xB1, 0x08, 0xD1, 0x08, 0xB1, 0x08, 0xD1, 0x06, 0x08, 0xD2, 0x82, 0x08, 0xF2, 0x10, 0xF2, 0x08, 0xD2, 0x03, 0x10, 0xF2, + 0x83, 0x08, 0xF2, 0x08, 0xD2, 0x08, 0xF2, 0x10, 0xF2, 0x0B, 0x08, 0xF2, 0x84, 0x11, 0x12, 0x09, 0x12, 0x10, 0xF2, 0x08, 0xF2, 0x10, 0xF2, 0x02, 0x08, 0xF2, 0x01, 0x11, 0x12, 0x80, 0x10, 0xF2, 0x04, 0x08, 0xF2, 0x80, 0x10, 0xF2, 0x04, 0x08, 0xF2, 0x81, 0x10, 0xF2, 0x11, 0x13, 0x02, 0x10, 0xF2, 0x01, 0x11, 0x13, 0x80, 0x08, 0xF2, 0x01, 0x11, 0x13, 0x01, 0x11, 0x12, 0x82, 0x08, 0xF2, 0x08, 0xF3, 0x11, 0x13, 0x04, 0x08, 0xF2, 0x80, 0x08, 0xF3, 0x04, 0x08, 0xF2, 0x80, 0x11, 0x12, 0x02, 0x08, 0xF2, 0x01, 0x09, 0x12, 0x01, 0x08, 0xF2, 0x83, 0x11, 0x12, 0x10, 0xF2, 0x11, 0x13, 0x10, 0xF3, 0x03, 0x10, 0xF2, 0x80, 0x10, 0xF3, 0x04, 0x10, 0xF2, 0x80, 0x08, 0xF2, 0x01, 0x10, 0xF2, 0x80, 0x08, 0xF2, 0x06, 0x10, 0xF2, 0x82, 0x08, 0xF2, 0x10, 0xF3, 0x10, 0xF2, 0x01, 0x08, 0xF2, 0x8B, 0x10, 0xF3, 0x08, 0xF2, 0x11, 0x13, 0x11, 0x12, 0x08, 0xF2, 0x11, 0x13, 0x11, 0x12, 0x08, 0xF2, 0x11, 0x13, 0x10, 0xF3, 0x11, 0x13, 0x10, 0xF2, 0x01, 0x11, 0x13, 0x01, 0x11, 0x12, 0x01, 0x10, 0xF2, 0x01, 0x11, 0x13, 0x01, 0x08, 0xF3, 0x02, 0x11, 0x13, 0x80, 0x08, 0xF2, 0x01, 0x11, 0x13, 0x01, 0x08, 0xF2, 0x80, 0x11, 0x13, 0x03, 0x08, 0xF2, 0x82, 0x08, 0xD2, 0x08, 0xF2, 0x08, 0xD2, 0x08, 0x08, 0xF2, 0x80, 0x08, 0xD2, 0x01, 0x08, 0xF2, 0x03, 0x08, 0xD2, 0x04, 0x08, 0xF2, 0x80, 0x08, 0xD2, 0x01, 0x08, 0xF2, 0x02, 0x08, 0xD2, 0x80, 0x08, 0xF2, 0x03, 0x08, 0xD2, 0x01, 0x08, 0xF2, 0x81, 0x08, 0xD2, 0x08, 0xF2, 0x01, 0x09, 0x13, 0x83, 0x09, 0x75, 0x11, 0x96, + 0x09, 0xB7, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x01, 0x01, 0xB9, 0x82, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x87, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0xF9, 0x09, 0xF9, 0x11, 0xF8, 0x11, 0xD7, 0x09, 0x54, 0x11, 0x12, 0x01, 0x19, 0x31, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0xF5, 0x21, 0xD5, 0x21, 0x94, 0x19, 0x73, 0x19, 0x53, 0x11, 0x32, 0x09, 0x19, 0x32, 0x80, 0x21, 0x32, 0x03, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x52, 0x85, 0x19, 0x31, 0x19, 0x51, 0x19, 0x52, 0x19, 0x31, 0x19, 0x32, 0x21, 0x32, 0x07, 0x19, 0x31, 0x80, 0x19, 0x32, 0x06, 0x19, 0x31, 0x80, 0x21, 0x32, 0x03, 0x19, 0x31, 0x01, 0x19, 0x32, 0x02, 0x19, 0x31, 0x82, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x0F, 0x19, 0x31, 0x80, 0x19, 0x11, 0x0C, 0x19, 0x31, 0x80, 0x19, 0x51, 0x07, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x19, 0x11, 0x05, 0x19, 0x31, 0x82, 0x19, 0x32, 0x19, 0x31, 0x21, 0x32, 0x03, 0x19, 0x31, 0x82, 0x19, 0x32, 0x21, 0x32, 0x19, 0x32, 0x02, 0x19, 0x31, 0x81, 0x19, 0x32, 0x19, 0x31, 0x02, 0x19, 0x32, 0x01, 0x19, 0x31, 0x02, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x05, 0x19, 0x11, 0x80, 0x21, 0x32, 0x02, + 0x19, 0x11, 0x01, 0x19, 0x12, 0x86, 0x19, 0x11, 0x19, 0x32, 0x21, 0x32, 0x19, 0x11, 0x21, 0x31, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x88, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, + 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x86, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x07, 0x21, 0x30, 0x05, 0x29, 0x30, 0x81, 0x31, 0x50, 0x29, 0x30, 0x03, 0x31, 0x31, 0x03, 0x31, + 0x51, 0x80, 0x29, 0x51, 0x01, 0x31, 0x72, 0x82, 0x31, 0x51, 0x31, 0x52, 0x31, 0x51, 0x02, 0x39, 0x72, 0x83, 0x39, 0x92, 0x39, 0x72, 0x39, 0x92, 0x39, 0x71, 0x01, 0x39, 0x72, 0x80, 0x39, 0x71, 0x02, 0x41, 0x92, 0x82, 0x41, 0x93, 0x41, 0x92, 0x49, 0x93, 0x03, 0x41, 0x92, 0x81, 0x49, 0xB3, 0x49, 0x92, 0x03, 0x49, 0xB3, 0x86, 0x51, 0xB3, 0x51, 0xD3, 0x51, 0xB3, 0x51, 0xD3, 0x49, 0xB3, 0x49, 0xD3, 0x49, 0xB2, 0x01, 0x51, 0xF3, 0x80, 0x52, 0x13, 0x02, 0x49, 0xF3, 0x9E, 0x4A, 0x33, 0x42, 0x34, 0x3A, 0x12, 0x31, 0xD1, 0x3A, 0x12, 0x52, 0x73, 0x62, 0xB4, 0x8B, 0x97, 0xB4, 0x9A, 0xC4, 0xFB, 0xCD, 0x1B, 0xCD, 0x5B, 0xBC, 0xFA, 0xA4, 0x78, 0x84, 0x15, 0x84, 0x76, 0x8D, 0x59, 0x85, 0xBA, 0x76, 0x1B, 0x6E, 0x7C, 0x66, 0xDD, 0x56, 0xFD, 0x46, 0xFD, 0x36, 0xFD, 0x37, 0x5F, 0x2F, 0x7F, 0x27, 0x7F, 0x1F, 0x7F, 0x17, 0x7F, 0x0F, 0x7F, 0x0F, 0x9F, 0x01, 0x0F, 0xBF, 0x01, 0x0F, 0xDF, 0x08, 0x07, 0xDF, 0x0A, 0x07, 0xBF, 0x84, 0x07, 0x9F, 0x07, 0x7F, 0x07, 0x3E, 0x07, 0x1E, 0x06, 0xFE, 0x01, 0x06, 0xBD, 0x02, 0x06, 0xBE, 0x80, 0x06, 0x9E, 0x02, 0x06, 0x7E, 0x81, 0x06, 0x5E, 0x06, 0x7E, 0x02, 0x06, 0x5E, 0x81, 0x06, 0x3D, 0x06, 0x3E, 0x02, 0x06, 0x1E, 0x81, 0x05, 0xFE, 0x06, 0x1E, 0x01, 0x05, 0xFE, 0x80, 0x05, 0xFF, 0x01, 0x05, 0xDE, 0x01, 0x05, 0xBE, 0x01, 0x05, 0xBF, 0x02, 0x05, 0x9F, 0x0A, 0x05, 0x7F, 0x01, 0x05, 0x5F, 0x80, 0x05, 0x7F, 0x02, 0x05, 0x5F, 0x02, 0x05, 0x7F, 0x80, 0x05, 0x5F, 0x07, 0x05, 0x7F, 0x06, 0x05, 0x9F, 0x03, 0x05, + 0x7F, 0x85, 0x05, 0x5F, 0x05, 0x7F, 0x05, 0x5F, 0x05, 0x1F, 0x04, 0xFF, 0x04, 0xDF, 0x01, 0x04, 0x9F, 0xAB, 0x04, 0x3F, 0x04, 0x1F, 0x0B, 0xFF, 0x03, 0x9F, 0x03, 0x5E, 0x02, 0xFE, 0x02, 0xBE, 0x0A, 0x9E, 0x0A, 0x3D, 0x0A, 0x1C, 0x09, 0xBB, 0x19, 0xBC, 0x21, 0xBB, 0x31, 0xBB, 0x31, 0x39, 0x28, 0x95, 0x49, 0x16, 0x9B, 0x5E, 0xB3, 0xBF, 0xA3, 0x1C, 0x9A, 0xFB, 0x9A, 0xFA, 0x93, 0x3A, 0x7A, 0xF8, 0x6B, 0x99, 0x5C, 0x5A, 0x5D, 0x9D, 0x4E, 0x7F, 0x36, 0xBF, 0x26, 0xBF, 0x16, 0xDF, 0x0E, 0xDF, 0x0E, 0xDE, 0x16, 0xDF, 0x1E, 0xFF, 0x2E, 0xDF, 0x3E, 0xBE, 0x5E, 0xBF, 0x6D, 0xDD, 0x7C, 0xFB, 0x73, 0x55, 0x92, 0xF5, 0xAA, 0xB4, 0xC2, 0xB5, 0x01, 0xCA, 0x74, 0x81, 0xD2, 0x54, 0xD2, 0x74, 0x02, 0xD2, 0x54, 0x87, 0xD2, 0x74, 0xCA, 0x95, 0xC2, 0xB6, 0xC3, 0x18, 0x89, 0xD3, 0x59, 0x10, 0x51, 0x51, 0x51, 0x72, 0x01, 0x49, 0x72, 0x02, 0x41, 0x72, 0x01, 0x39, 0x72, 0x80, 0x39, 0x51, 0x01, 0x39, 0x71, 0x03, 0x31, 0x51, 0x03, 0x31, 0x50, 0x01, 0x29, 0x50, 0x06, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x88, 0x19, 0x11, 0x11, 0x32, 0x11, 0x34, 0x11, 0x75, 0x11, 0xB7, 0x09, 0xF8, 0x09, 0xF9, 0x01, 0xF9, 0x01, 0xD9, 0x02, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x88, 0x01, 0xB9, 0x09, 0xB9, 0x09, 0xB8, 0x11, 0xB8, 0x09, 0x76, 0x09, 0x35, 0x09, 0x14, 0x09, 0x13, 0x11, 0x13, 0x02, 0x10, 0xF2, 0x81, 0x18, 0xF2, 0x10, 0xF2, 0x01, 0x10, 0xF1, 0x82, 0x19, 0x12, 0x18, 0xF2, 0x10, 0xF1, 0x01, 0x18, 0xF2, + 0x80, 0x10, 0xF1, 0x01, 0x18, 0xF2, 0x86, 0x10, 0xF1, 0x18, 0xF2, 0x19, 0x12, 0x10, 0xF2, 0x19, 0x12, 0x18, 0xF2, 0x10, 0xF1, 0x03, 0x18, 0xF2, 0x80, 0x10, 0xF2, 0x01, 0x18, 0xF2, 0x02, 0x19, 0x12, 0x82, 0x18, 0xF2, 0x19, 0x12, 0x11, 0x12, 0x02, 0x19, 0x12, 0x80, 0x10, 0xF1, 0x01, 0x19, 0x12, 0x88, 0x19, 0x11, 0x10, 0xF1, 0x19, 0x12, 0x18, 0xF2, 0x10, 0xF1, 0x11, 0x12, 0x18, 0xF2, 0x19, 0x12, 0x10, 0xF1, 0x01, 0x18, 0xF2, 0x80, 0x18, 0xF1, 0x01, 0x10, 0xF1, 0x02, 0x18, 0xF2, 0x83, 0x10, 0xF1, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x12, 0x01, 0x18, 0xF2, 0x05, 0x19, 0x12, 0x80, 0x18, 0xF2, 0x06, 0x19, 0x12, 0x80, 0x11, 0x12, 0x02, 0x19, 0x12, 0x82, 0x11, 0x12, 0x19, 0x12, 0x10, 0xF2, 0x01, 0x19, 0x12, 0x87, 0x18, 0xF2, 0x10, 0xF2, 0x18, 0xF2, 0x11, 0x12, 0x19, 0x12, 0x11, 0x12, 0x19, 0x12, 0x11, 0x12, 0x01, 0x18, 0xF2, 0x02, 0x19, 0x12, 0x80, 0x18, 0xF2, 0x03, 0x19, 0x12, 0x03, 0x18, 0xF2, 0x05, 0x19, 0x12, 0x01, 0x18, 0xF2, 0x0B, 0x19, 0x12, 0x81, 0x18, 0xF2, 0x11, 0x12, 0x12, 0x19, 0x12, 0x80, 0x11, 0x12, 0x0C, 0x19, 0x12, 0x02, 0x18, 0xF2, 0x80, 0x19, 0x12, 0x03, 0x18, 0xF2, 0x80, 0x10, 0xF2, 0x01, 0x19, 0x12, 0x89, 0x10, 0xF1, 0x18, 0xF2, 0x19, 0x12, 0x10, 0xF1, 0x19, 0x12, 0x18, 0xF2, 0x10, 0xF1, 0x19, 0x12, 0x18, 0xF2, 0x10, 0xF1, 0x01, 0x19, 0x12, 0x83, 0x18, 0xF2, 0x10, 0xF1, 0x19, 0x12, 0x10, 0xF1, 0x01, 0x18, 0xF2, 0x88, 0x19, 0x12, 0x10, 0xF1, 0x18, 0xF2, 0x19, 0x12, 0x11, 0x12, 0x10, 0xF2, 0x19, 0x12, 0x11, 0x12, + 0x19, 0x33, 0x01, 0x11, 0x33, 0x83, 0x11, 0x54, 0x09, 0x75, 0x09, 0xB7, 0x11, 0xF8, 0x01, 0x09, 0xD9, 0x80, 0x09, 0xDA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x8B, 0x01, 0xB9, 0x01, 0xDA, 0x02, 0x1A, 0x01, 0xD9, 0x09, 0xD8, 0x11, 0xF8, 0x11, 0xD6, 0x11, 0x74, 0x11, 0x32, 0x19, 0x31, 0x21, 0x51, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x29, 0x50, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x19, 0xD6, 0x84, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x33, 0x11, 0x13, 0x11, 0x12, 0x01, 0x11, 0x33, 0x01, 0x19, 0x33, 0x02, 0x11, 0x32, 0x01, 0x11, 0x12, 0x81, 0x19, 0x32, 0x11, 0x12, 0x01, 0x19, 0x32, 0x82, 0x11, 0x12, 0x11, 0x32, 0x19, 0x32, 0x08, 0x11, 0x32, 0x03, 0x19, 0x32, 0x01, 0x11, 0x12, 0x06, 0x19, 0x32, 0x80, 0x11, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x01, 0x11, 0x32, 0x82, 0x11, 0x12, 0x19, 0x32, 0x19, 0x12, 0x02, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x32, 0x01, 0x11, 0x12, 0x81, 0x11, 0x32, 0x19, 0x32, 0x0B, 0x11, 0x32, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x80, 0x11, 0x12, 0x02, 0x11, 0x32, 0x01, 0x11, 0x12, 0x05, 0x11, 0x32, 0x80, 0x11, 0x31, 0x02, 0x11, 0x32, 0x05, 0x19, 0x32, 0x01, 0x19, 0x12, 0x80, 0x11, 0x11, 0x02, 0x19, 0x32, 0x82, 0x11, 0x12, 0x19, 0x32, 0x11, 0x12, 0x02, 0x19, 0x32, 0x01, 0x11, 0x32, + 0x02, 0x19, 0x32, 0x80, 0x11, 0x12, 0x01, 0x19, 0x32, 0x04, 0x11, 0x12, 0x80, 0x19, 0x32, 0x02, 0x11, 0x12, 0x81, 0x19, 0x32, 0x11, 0x12, 0x02, 0x19, 0x32, 0x01, 0x19, 0x12, 0x02, 0x11, 0x12, 0x02, 0x19, 0x12, 0x03, 0x19, 0x32, 0x80, 0x11, 0x12, 0x02, 0x19, 0x12, 0x02, 0x19, 0x32, 0x80, 0x19, 0x12, 0x03, 0x21, 0x11, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x8A, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x09, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, + 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x05, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x86, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, + 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x07, 0x29, 0x30, 0x81, 0x31, 0x50, 0x31, 0x51, 0x02, 0x31, 0x31, 0x80, 0x29, 0x31, 0x02, 0x31, 0x51, 0x04, 0x31, 0x72, 0x01, 0x31, 0x52, 0x01, 0x39, 0x72, 0x03, 0x39, 0x92, 0x01, 0x39, 0x72, 0x01, 0x41, 0x72, 0x03, 0x41, 0x92, 0x03, 0x41, 0x93, 0x80, 0x41, 0x92, 0x01, 0x49, 0x92, 0x01, 0x49, 0xB3, 0x82, 0x51, 0xB3, 0x51, 0xD3, 0x51, 0xB3, 0x01, 0x51, 0xB2, 0x01, 0x51, 0xD3, 0x02, 0x51, 0xF3, 0x01, 0x51, 0xD3, 0x9C, 0x52, 0x13, 0x52, 0x33, 0x4A, 0x34, 0x42, 0x13, 0x3A, 0x33, 0x3A, 0x73, 0x3A, 0x94, 0x4B, 0x56, 0x6C, 0x39, 0x84, 0xBB, 0xA5, 0x1C, 0xAD, 0x1C, 0xBD, 0x5C, 0xBD, 0x5B, 0xB4, 0xFA, 0x9C, 0x78, 0x7B, 0xF5, 0x7C, 0x76, 0x8D, 0x9A, 0x86, 0x1B, 0x6E, 0x1B, 0x66, 0x7C, 0x5E, 0xDD, 0x4E, 0xDD, 0x46, 0xFD, 0x37, 0x1E, 0x37, 0x5E, 0x2F, 0x7F, 0x1F, 0x5E, 0x01, 0x17, 0x7F, 0x01, 0x0F, 0x9F, 0x01, 0x0F, 0xBF, 0x80, 0x0F, 0xDF, 0x09, 0x07, 0xDF, 0x0C, 0x07, 0xBF, 0x83, 0x07, 0x9F, 0x07, 0x5E, 0x07, 0x3E, 0x06, 0xFD, 0x01, 0x06, 0xDD, 0x02, 0x06, 0xBD, 0x86, 0x06, 0xBE, 0x06, 0x9E, 0x06, 0x7D, 0x06, 0x7E, 0x06, 0x5E, 0x06, 0x5D, 0x06, 0x7D, 0x02, 0x06, 0x5D, 0x01, 0x06, 0x3D, 0x01, 0x06, 0x1D, 0x80, 0x06, 0x1E, 0x02, 0x05, 0xFE, 0x01, 0x05, 0xDE, 0x81, 0x05, 0xBE, 0x05, 0xDE, 0x03, 0x05, 0xBE, + 0x01, 0x05, 0x9E, 0x80, 0x05, 0x9F, 0x02, 0x05, 0x7E, 0x81, 0x05, 0x5F, 0x05, 0x7F, 0x05, 0x05, 0x5F, 0x01, 0x05, 0x3F, 0x01, 0x05, 0x5F, 0x01, 0x05, 0x3F, 0x0B, 0x05, 0x5F, 0x01, 0x05, 0x7F, 0x03, 0x05, 0x5F, 0x01, 0x05, 0x7F, 0x02, 0x05, 0x5F, 0x03, 0x05, 0x3F, 0x80, 0x04, 0xFF, 0x01, 0x04, 0xBF, 0xA0, 0x04, 0x9F, 0x04, 0x5F, 0x04, 0x3F, 0x03, 0xFF, 0x03, 0x9F, 0x03, 0x7F, 0x03, 0x3F, 0x02, 0xDE, 0x02, 0x7D, 0x02, 0x5E, 0x0A, 0x3D, 0x09, 0xFD, 0x09, 0xDC, 0x11, 0xBC, 0x19, 0xBC, 0x29, 0xBC, 0x31, 0x9B, 0x28, 0xF8, 0x20, 0x75, 0x59, 0xDA, 0x93, 0x3E, 0x9B, 0x3E, 0x92, 0xDB, 0x8A, 0xDA, 0x7A, 0xB8, 0x62, 0xF8, 0x5B, 0xB9, 0x54, 0xBB, 0x5E, 0x1F, 0x46, 0x9F, 0x2E, 0x9E, 0x16, 0xBE, 0x16, 0xDF, 0x01, 0x0E, 0xDE, 0x8D, 0x16, 0xFE, 0x27, 0x1F, 0x2E, 0xFF, 0x3E, 0xDF, 0x56, 0x7E, 0x76, 0x3E, 0x6C, 0x79, 0x7B, 0x55, 0x92, 0xD4, 0xAA, 0x94, 0xC2, 0xB4, 0xCA, 0xB5, 0xD2, 0x74, 0xCA, 0x34, 0x03, 0xD2, 0x54, 0x87, 0xCA, 0x54, 0xCA, 0x75, 0xC2, 0xB6, 0xBA, 0xF7, 0x79, 0x72, 0x59, 0x31, 0x51, 0x31, 0x49, 0x52, 0x01, 0x49, 0x72, 0x02, 0x41, 0x72, 0x83, 0x39, 0x72, 0x39, 0x71, 0x39, 0x72, 0x39, 0x71, 0x01, 0x31, 0x51, 0x81, 0x31, 0x71, 0x31, 0x51, 0x03, 0x31, 0x50, 0x82, 0x29, 0x30, 0x29, 0x50, 0x29, 0x2F, 0x07, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD7, 0x12, 0x19, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0xF9, 0x01, 0xFA, + 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x89, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xB9, 0x11, 0xF9, 0x19, 0xD8, 0x19, 0x96, 0x11, 0x54, 0x11, 0x13, 0x11, 0x33, 0x11, 0x12, 0x02, 0x19, 0x32, 0x01, 0x19, 0x11, 0x02, 0x21, 0x32, 0x83, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x32, 0x81, 0x21, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x06, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x32, 0x02, 0x21, 0x32, 0x82, 0x19, 0x31, 0x21, 0x32, 0x19, 0x11, 0x03, 0x21, 0x32, 0x80, 0x21, 0x52, 0x02, 0x21, 0x32, 0x80, 0x19, 0x32, 0x01, 0x21, 0x32, 0x80, 0x21, 0x11, 0x08, 0x21, 0x32, 0x82, 0x19, 0x11, 0x21, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x21, 0x31, 0x19, 0x11, 0x21, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x32, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x03, 0x21, 0x32, 0x80, 0x19, 0x31, 0x01, 0x21, 0x32, 0x80, 0x19, 0x11, 0x02, 0x21, 0x32, 0x81, 0x19, 0x32, 0x21, 0x52, 0x01, 0x21, 0x32, 0x02, 0x19, 0x11, 0x01, 0x21, 0x32, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x19, 0x11, 0x21, 0x32, 0x19, 0x11, 0x01, 0x21, 0x32, 0x01, 0x19, 0x11, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x21, 0x32, 0x87, 0x19, 0x11, 0x21, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x32, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x02, 0x19, 0x11, 0x81, 0x19, 0x31, 0x21, 0x32, 0x02, 0x19, 0x11, 0x80, 0x21, 0x32, 0x02, + 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x01, 0x21, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x81, 0x21, 0x32, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x21, 0x32, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x02, 0x21, 0x32, 0x82, 0x19, 0x11, 0x21, 0x32, 0x21, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x32, 0x19, 0x11, 0x02, 0x21, 0x32, 0x82, 0x19, 0x11, 0x21, 0x32, 0x19, 0x31, 0x04, 0x21, 0x32, 0x88, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x21, 0x32, 0x19, 0x11, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x03, 0x21, 0x32, 0x80, 0x21, 0x52, 0x04, 0x19, 0x32, 0x88, 0x19, 0x53, 0x11, 0x53, 0x11, 0x74, 0x11, 0x75, 0x09, 0x76, 0x11, 0xB8, 0x11, 0xF9, 0x0A, 0x1A, 0x09, 0xDA, 0x02, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x88, 0x0A, 0x1A, 0x01, 0xD9, 0x09, 0xD8, 0x09, 0xD7, 0x11, 0xB6, 0x11, 0x74, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x83, 0x29, 0x50, 0x29, 0x30, 0x21, 0x50, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x86, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x11, 0x96, 0x19, 0xB6, 0x11, 0x95, 0x01, 0x09, 0x54, 0x83, 0x11, 0x34, 0x09, 0x33, 0x11, 0x33, 0x11, 0x13, 0x01, 0x11, 0x33, 0x80, 0x11, 0x34, 0x01, 0x11, 0x33, 0x02, 0x11, 0x13, 0x81, 0x11, 0x33, 0x11, 0x12, 0x01, 0x11, 0x33, 0x80, 0x11, 0x12, 0x02, 0x11, 0x33, + 0x80, 0x09, 0x32, 0x01, 0x11, 0x33, 0x81, 0x09, 0x32, 0x11, 0x32, 0x01, 0x11, 0x33, 0x06, 0x11, 0x32, 0x83, 0x11, 0x33, 0x11, 0x32, 0x11, 0x33, 0x11, 0x12, 0x06, 0x11, 0x32, 0x80, 0x11, 0x12, 0x02, 0x11, 0x32, 0x82, 0x11, 0x33, 0x11, 0x13, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x11, 0x33, 0x01, 0x11, 0x32, 0x01, 0x11, 0x33, 0x80, 0x11, 0x12, 0x09, 0x11, 0x32, 0x04, 0x11, 0x33, 0x80, 0x11, 0x12, 0x02, 0x11, 0x33, 0x01, 0x11, 0x32, 0x81, 0x11, 0x13, 0x11, 0x33, 0x01, 0x11, 0x32, 0x01, 0x11, 0x33, 0x81, 0x11, 0x32, 0x09, 0x32, 0x04, 0x11, 0x32, 0x80, 0x11, 0x33, 0x06, 0x11, 0x32, 0x80, 0x11, 0x33, 0x0D, 0x11, 0x32, 0x80, 0x11, 0x12, 0x02, 0x11, 0x32, 0x82, 0x11, 0x12, 0x11, 0x33, 0x11, 0x12, 0x04, 0x11, 0x33, 0x80, 0x11, 0x13, 0x04, 0x11, 0x33, 0x80, 0x11, 0x13, 0x03, 0x11, 0x33, 0x03, 0x19, 0x53, 0x01, 0x11, 0x53, 0x01, 0x11, 0x33, 0x84, 0x11, 0x32, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x19, 0x32, 0x01, 0x19, 0x12, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x29, 0x31, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x21, + 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x04, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x87, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x87, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x07, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, + 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x88, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x05, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x03, 0x29, 0x30, 0x80, 0x29, 0x50, 0x02, 0x29, 0x30, 0x81, 0x29, 0x50, 0x29, 0x30, 0x02, 0x31, 0x31, 0x81, 0x31, 0x51, 0x31, 0x31, 0x02, 0x31, 0x51, 0x81, 0x31, 0x71, 0x31, 0x51, 0x02, 0x31, 0x72, 0x81, 0x31, 0x51, 0x31, 0x72, 0x04, 0x39, 0x72, 0x80, 0x39, 0x92, 0x01, 0x39, 0x72, 0x01, 0x41, 0x72, 0x83, 0x41, 0x92, 0x41, 0x93, 0x41, 0x72, 0x41, 0x92, 0x01, 0x49, 0x93, 0x80, 0x41, 0x92, 0x02, 0x49, 0xB3, 0x05, 0x51, 0xB3, 0x81, 0x51, 0xD3, 0x51, 0xB2, 0x01, 0x51, 0xD3, 0x81, 0x51, 0xD2, 0x51, 0xF3, 0x02, 0x51, 0xD3, 0x98, 0x52, 0x13, 0x52, 0x53, 0x42, 0x53, 0x32, 0x12, 0x3A, 0x93, 0x5B, 0xD8, 0x74, 0xFC, 0x85, 0x7D, 0x95, 0xBE, 0x95, 0x9D, 0xAD, 0xBD, 0xB5, 0xDD, 0xB5, 0x9C, 0xA5, 0x19, 0x7C, 0x15, 0x6B, + 0xF5, 0x85, 0x39, 0x85, 0xFC, 0x76, 0x5C, 0x66, 0x5C, 0x5E, 0xDD, 0x4E, 0xFD, 0x3F, 0x1E, 0x2E, 0xFD, 0x2F, 0x5F, 0x01, 0x27, 0x7F, 0x82, 0x1F, 0x7E, 0x17, 0x7F, 0x0F, 0x9F, 0x01, 0x0F, 0xBF, 0x80, 0x07, 0xBF, 0x0D, 0x07, 0xDF, 0x0B, 0x07, 0xBF, 0x84, 0x07, 0x9E, 0x07, 0x5E, 0x07, 0x3E, 0x07, 0x1D, 0x06, 0xDD, 0x03, 0x06, 0xBD, 0x01, 0x06, 0x9D, 0x01, 0x06, 0x7D, 0x04, 0x06, 0x5D, 0x02, 0x06, 0x3D, 0x02, 0x06, 0x1D, 0x81, 0x05, 0xFD, 0x05, 0xFE, 0x02, 0x05, 0xDE, 0x04, 0x05, 0xBE, 0x02, 0x05, 0x9E, 0x02, 0x05, 0x7E, 0x01, 0x05, 0x5E, 0x80, 0x05, 0x5F, 0x01, 0x05, 0x3E, 0x04, 0x05, 0x3F, 0x01, 0x05, 0x1F, 0x01, 0x05, 0x3F, 0x80, 0x05, 0x1F, 0x03, 0x05, 0x3F, 0x01, 0x05, 0x1F, 0x04, 0x05, 0x3F, 0x01, 0x05, 0x5F, 0x03, 0x05, 0x3F, 0x02, 0x05, 0x5F, 0x82, 0x05, 0x3F, 0x05, 0x1F, 0x05, 0x3F, 0x03, 0x05, 0x1F, 0x80, 0x04, 0xFF, 0x01, 0x04, 0xBF, 0x84, 0x04, 0x9F, 0x04, 0x7F, 0x04, 0x5F, 0x03, 0xFF, 0x03, 0xBF, 0x01, 0x03, 0x7F, 0x99, 0x02, 0xFE, 0x02, 0xBE, 0x02, 0x7E, 0x02, 0x3D, 0x02, 0x1D, 0x01, 0xFD, 0x01, 0xBC, 0x09, 0x9C, 0x11, 0x9C, 0x21, 0xBC, 0x29, 0xBC, 0x31, 0x7A, 0x18, 0x96, 0x30, 0xB6, 0x7A, 0xBD, 0x8B, 0x1D, 0x7A, 0x9A, 0x7A, 0xDA, 0x72, 0xF9, 0x63, 0x79, 0x5C, 0x3A, 0x4D, 0x1B, 0x5E, 0x7F, 0x3E, 0xBF, 0x26, 0xDE, 0x0E, 0xBE, 0x01, 0x0E, 0xFF, 0x8D, 0x17, 0x1F, 0x16, 0xFE, 0x27, 0x1F, 0x2F, 0x1F, 0x46, 0xFF, 0x56, 0x3E, 0x86, 0x5F, 0x74, 0x78, 0x73, 0x14, 0x9A, 0xF5, 0xB2, 0xD5, 0xC2, 0xB4, 0xCA, 0x74, 0xCA, + 0x54, 0x02, 0xD2, 0x54, 0x8A, 0xD2, 0x34, 0xCA, 0x34, 0xD2, 0x75, 0xCA, 0x95, 0xC2, 0xB6, 0xBA, 0xF7, 0x71, 0x31, 0x61, 0x31, 0x51, 0x52, 0x49, 0x52, 0x49, 0x72, 0x02, 0x41, 0x72, 0x80, 0x39, 0x72, 0x02, 0x39, 0x71, 0x81, 0x39, 0x51, 0x31, 0x51, 0x01, 0x31, 0x71, 0x81, 0x31, 0x50, 0x31, 0x30, 0x02, 0x31, 0x50, 0x82, 0x29, 0x50, 0x29, 0x30, 0x29, 0x50, 0x05, 0x29, 0x30, 0x8A, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD8, 0x01, 0x09, 0xF9, 0x07, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x09, 0xD9, 0x86, 0x11, 0xF9, 0x19, 0xD8, 0x11, 0x75, 0x11, 0x13, 0x11, 0x12, 0x10, 0xF2, 0x19, 0x12, 0x02, 0x19, 0x11, 0x82, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x11, 0x80, 0x19, 0x10, 0x02, 0x21, 0x31, 0x82, 0x19, 0x10, 0x21, 0x31, 0x19, 0x11, 0x02, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x85, 0x21, 0x11, 0x21, 0x31, 0x19, 0x11, 0x19, 0x10, 0x21, 0x31, 0x21, 0x11, 0x02, 0x21, 0x31, 0x01, 0x19, 0x10, 0x80, 0x21, 0x31, 0x01, 0x21, 0x10, 0x84, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x02, 0x21, 0x11, 0x89, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x11, 0x80, 0x21, 0x10, 0x02, 0x21, 0x11, 0x02, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x11, 0x02, 0x21, 0x10, 0x08, 0x21, 0x11, 0x8D, 0x19, 0x10, 0x19, 0x11, 0x19, 0x10, + 0x21, 0x11, 0x21, 0x10, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x19, 0x10, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x01, 0x21, 0x31, 0x83, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x02, 0x21, 0x11, 0x83, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x21, 0x11, 0x04, 0x21, 0x31, 0x82, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x06, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x11, 0x08, 0x21, 0x31, 0x80, 0x21, 0x11, 0x02, 0x21, 0x31, 0x82, 0x21, 0x11, 0x19, 0x31, 0x19, 0x11, 0x01, 0x21, 0x31, 0x85, 0x19, 0x11, 0x19, 0x10, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x11, 0x87, 0x19, 0x10, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x19, 0x10, 0x07, 0x21, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x04, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x11, 0x02, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x31, 0x05, 0x19, 0x31, 0x87, 0x19, 0x52, 0x11, 0x32, 0x11, 0x33, 0x11, 0x34, 0x11, 0x76, 0x09, 0xB7, 0x12, 0x19, 0x09, 0xD9, 0x04, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x8F, 0x01, 0xFA, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xF8, 0x09, 0xD7, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x29, 0x51, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, + 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x11, 0x76, 0x11, 0x96, 0x01, 0x11, 0x95, 0x04, 0x11, 0x75, 0x80, 0x11, 0x74, 0x02, 0x19, 0x75, 0x06, 0x11, 0x54, 0x80, 0x19, 0x74, 0x01, 0x11, 0x54, 0x01, 0x11, 0x74, 0x80, 0x11, 0x54, 0x07, 0x11, 0x74, 0x0A, 0x19, 0x74, 0x80, 0x11, 0x74, 0x02, 0x19, 0x74, 0x81, 0x11, 0x74, 0x19, 0x74, 0x02, 0x11, 0x74, 0x84, 0x19, 0x74, 0x11, 0x54, 0x19, 0x74, 0x11, 0x54, 0x19, 0x74, 0x01, 0x11, 0x74, 0x85, 0x11, 0x54, 0x11, 0x74, 0x11, 0x54, 0x11, 0x74, 0x11, 0x54, 0x11, 0x74, 0x01, 0x11, 0x54, 0x05, 0x11, 0x74, 0x02, 0x11, 0x54, 0x02, 0x11, 0x74, 0x02, 0x11, 0x54, 0x0D, 0x11, 0x74, 0x81, 0x19, 0x74, 0x11, 0x74, 0x01, 0x19, 0x74, 0x80, 0x11, 0x74, 0x01, 0x19, 0x74, 0x80, 0x11, 0x54, 0x01, 0x19, 0x74, 0x01, 0x11, 0x74, 0x02, 0x19, 0x74, 0x80, 0x11, 0x54, 0x07, 0x19, 0x74, 0x80, 0x19, 0x54, 0x02, 0x19, 0x74, 0x01, 0x11, 0x74, 0x82, 0x19, 0x74, 0x11, 0x74, 0x19, 0x75, 0x05, 0x19, 0x74, 0x80, 0x11, 0x74, 0x06, 0x19, 0x74, 0x87, 0x11, 0x74, 0x19, 0x74, 0x19, 0x94, 0x19, 0x74, 0x19, 0x94, 0x19, 0x74, 0x19, 0x94, 0x11, 0x74, 0x01, 0x19, 0x74, 0x01, 0x11, 0x54, 0x88, 0x11, 0x33, 0x19, 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x05, 0x29, 0x30, 0x01, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, + 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x21, 0x10, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, + 0x2F, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x09, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x85, 0x29, 0x50, 0x29, 0x30, 0x21, 0x30, 0x29, 0x50, 0x29, 0x30, 0x29, 0x50, 0x03, 0x29, 0x30, 0x01, 0x31, 0x50, 0x03, 0x29, 0x30, 0x81, 0x29, 0x31, 0x31, 0x31, 0x04, 0x31, 0x51, 0x81, 0x31, 0x71, 0x31, 0x51, 0x03, 0x31, 0x71, 0x81, 0x39, 0x72, 0x31, 0x51, 0x04, 0x39, 0x72, 0x81, 0x39, 0x92, 0x41, 0x92, 0x01, 0x41, 0x93, 0x01, 0x41, 0x92, 0x80, 0x41, 0x93, 0x01, 0x49, 0xB3, 0x81, 0x49, 0x93, 0x51, 0xB3, 0x01, 0x49, 0xB3, 0x01, 0x51, 0xB3, 0x80, 0x51, 0x92, 0x01, 0x51, 0xB2, 0x03, 0x51, 0x92, 0x80, 0x59, 0xB2, 0x02, 0x59, 0xD2, 0x02, 0x51, 0xB2, 0x85, 0x49, 0xD2, 0x41, 0xD2, 0x4A, 0x53, 0x63, 0x97, 0x84, + 0xFB, 0x95, 0x9E, 0x01, 0x8D, 0xDE, 0x91, 0x8D, 0xFE, 0x96, 0x1E, 0x9D, 0xFD, 0xA5, 0xFD, 0x9D, 0x9B, 0x84, 0x97, 0x74, 0x76, 0x7D, 0x39, 0x85, 0xFB, 0x75, 0xFB, 0x66, 0x1B, 0x5E, 0xBD, 0x57, 0x1E, 0x47, 0x1E, 0x37, 0x3E, 0x2F, 0x5E, 0x27, 0x9F, 0x1F, 0x9F, 0x01, 0x17, 0x9F, 0x80, 0x17, 0xBF, 0x01, 0x0F, 0xBF, 0x80, 0x07, 0xBF, 0x12, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x03, 0x07, 0xBF, 0x01, 0x07, 0x9E, 0x85, 0x07, 0x5E, 0x07, 0x1D, 0x06, 0xFD, 0x06, 0xDD, 0x06, 0xBC, 0x06, 0x9C, 0x01, 0x06, 0xBD, 0x02, 0x06, 0x9D, 0x82, 0x06, 0x7D, 0x06, 0x5D, 0x06, 0x5C, 0x01, 0x06, 0x5D, 0x02, 0x06, 0x3D, 0x03, 0x06, 0x1D, 0x01, 0x05, 0xFD, 0x01, 0x05, 0xDD, 0x80, 0x05, 0xDE, 0x04, 0x05, 0xBE, 0x02, 0x05, 0x9E, 0x01, 0x05, 0x7E, 0x03, 0x05, 0x5E, 0x02, 0x05, 0x3E, 0x80, 0x05, 0x3F, 0x15, 0x05, 0x1F, 0x80, 0x05, 0x3F, 0x02, 0x05, 0x1F, 0x02, 0x05, 0x3F, 0x02, 0x05, 0x1F, 0x01, 0x04, 0xFF, 0x82, 0x05, 0x1F, 0x04, 0xFF, 0x04, 0xBF, 0x01, 0x04, 0x9F, 0xB0, 0x04, 0x7F, 0x04, 0x3F, 0x03, 0xFF, 0x03, 0xBF, 0x03, 0x9F, 0x03, 0x7F, 0x0B, 0x5F, 0x0B, 0x1F, 0x02, 0x9E, 0x02, 0x7E, 0x02, 0x3E, 0x01, 0xFD, 0x01, 0xDE, 0x01, 0xBD, 0x09, 0x9D, 0x11, 0x9D, 0x19, 0x9C, 0x21, 0x9C, 0x31, 0xBC, 0x39, 0x7A, 0x20, 0x75, 0x38, 0xD6, 0x7A, 0xDD, 0x8B, 0x5D, 0x72, 0xFA, 0x63, 0x19, 0x63, 0xFA, 0x54, 0x5A, 0x55, 0xBE, 0x46, 0x7F, 0x36, 0xFF, 0x1E, 0xBE, 0x0E, 0xFE, 0x06, 0xDE, 0x06, 0xFE, 0x0E, 0xFF, 0x17, 0x1F, 0x27, 0x3F, 0x37, 0x1F, 0x4E, + 0xDF, 0x66, 0x7E, 0x7D, 0xFD, 0x6B, 0xF6, 0x83, 0x35, 0x9A, 0xB4, 0xBA, 0xD5, 0xC2, 0x94, 0xCA, 0x74, 0xD2, 0x54, 0x01, 0xD2, 0x34, 0x02, 0xD2, 0x54, 0x86, 0xCA, 0x55, 0xCA, 0x96, 0xC2, 0xD7, 0xB2, 0xD7, 0x69, 0x11, 0x59, 0x51, 0x51, 0x52, 0x01, 0x49, 0x72, 0x01, 0x41, 0x52, 0x02, 0x39, 0x72, 0x80, 0x39, 0x51, 0x01, 0x39, 0x71, 0x80, 0x31, 0x71, 0x01, 0x31, 0x51, 0x02, 0x31, 0x50, 0x80, 0x29, 0x30, 0x01, 0x29, 0x50, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB8, 0x11, 0xF9, 0x01, 0xD9, 0x09, 0xFA, 0x07, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x88, 0x11, 0xF9, 0x19, 0xB7, 0x11, 0x55, 0x11, 0x13, 0x11, 0x12, 0x19, 0x11, 0x18, 0xF1, 0x18, 0xF0, 0x21, 0x11, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x04, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x08, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0C, 0x21, 0x10, 0x80, 0x21, 0x30, 0x08, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0A, 0x21, 0x10, 0x80, 0x21, 0x30, 0x12, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x08, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, + 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x07, 0x21, 0x10, 0x85, 0x20, 0xF0, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x02, 0x19, 0x30, 0x01, 0x19, 0x11, 0x88, 0x19, 0x32, 0x11, 0x12, 0x11, 0x13, 0x11, 0x34, 0x11, 0x96, 0x11, 0xD8, 0x09, 0xB8, 0x09, 0xD9, 0x09, 0xDA, 0x03, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x01, 0x01, 0xF9, 0x86, 0x0A, 0x19, 0x11, 0xF8, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x86, 0x11, 0x96, 0x19, 0xB6, 0x19, 0xD6, 0x22, 0x17, 0x22, 0x37, 0x22, 0x17, 0x21, 0xF7, 0x01, 0x22, 0x17, 0x83, 0x2A, 0x17, 0x2A, 0x38, 0x2A, 0x17, 0x2A, 0x38, 0x03, 0x2A, 0x17, 0x82, 0x2A, 0x37, 0x2A, 0x17, 0x29, 0xF7, 0x03, 0x2A, 0x17, 0x82, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x37, 0x04, 0x2A, 0x17, 0x82, 0x2A, 0x37, 0x2A, 0x17, 0x2A, + 0x37, 0x01, 0x2A, 0x17, 0x80, 0x22, 0x16, 0x05, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x10, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x10, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x05, 0x2A, 0x17, 0x80, 0x29, 0xF7, 0x03, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x0A, 0x2A, 0x17, 0x82, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x37, 0x08, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x04, 0x2A, 0x17, 0x85, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x37, 0x2A, 0x17, 0x02, 0x2A, 0x37, 0x04, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x06, 0x2A, 0x17, 0x01, 0x2A, 0x16, 0x82, 0x29, 0xF6, 0x21, 0xF6, 0x2A, 0x16, 0x04, 0x21, 0xF6, 0x89, 0x22, 0x17, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x19, 0x33, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x21, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x87, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x85, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, + 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, + 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x82, 0x29, 0x50, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x04, 0x29, 0x30, 0x81, 0x29, 0x50, 0x29, 0x30, 0x01, 0x29, 0x50, 0x05, 0x29, 0x30, 0x82, 0x31, 0x50, 0x29, 0x30, 0x29, 0x50, 0x02, 0x29, 0x51, 0x80, 0x29, 0x30, 0x06, 0x31, 0x51, 0x02, 0x31, 0x71, 0x02, 0x39, 0x71, 0x03, 0x39, 0x72, 0x82, 0x41, 0x72, 0x41, 0x93, 0x41, 0x92, 0x02, 0x41, 0x93, 0x82, 0x41, 0x92, 0x49, 0xB3, 0x49, 0x93, 0x02, 0x49, 0xB3, 0x01, 0x51, 0xB3, 0x80, 0x49, 0xB2, 0x02, 0x51, 0xB2, 0x80, 0x51, 0x92, 0x01, 0x51, 0x91, 0xA2, 0x51, 0x71, 0x59, 0xB1, 0x59, 0x91, 0x59, 0xB1, 0x51, 0x90, 0x51, 0x70, 0x49, 0x70, 0x59, 0xD1, 0x62, 0x53, 0x7B, 0x37, 0x94, 0x3A, 0x9C, 0xDC, 0x9D, 0x3D, 0x95, 0x7D, 0x95, 0xBD, 0x8D, 0xBD, 0x85, 0xDD, 0x8E, 0x1D, 0x96, 0x3E, 0x96, 0x1D, 0x8D, 0xDC, 0x7D, 0x19, 0x6C, 0x97, 0x6C, 0xB7, 0x7D, 0xBA, 0x7E, 0x3C, 0x66, 0x3B, 0x5E, 0x7C, 0x56, 0xDE, 0x47, 0x1E, 0x37, 0x3E, 0x2F, 0x5E, 0x27, 0x7F, 0x1F, 0x9F, 0x17, 0xBF, 0x01, 0x0F, 0x9F, 0x81, 0x0F, 0xBF, 0x07, 0xBF, 0x17, 0x07, 0xDF, 0x06, 0x07, 0xBF, 0x84, 0x07, 0x7E, 0x07, 0x3D, 0x07, 0x1D, 0x06, 0xFC, 0x06, 0xDC, 0x02, 0x06, 0xBC, 0x83, 0x06, 0x9C, + 0x06, 0xBD, 0x06, 0x9C, 0x06, 0x9D, 0x02, 0x06, 0x7C, 0x80, 0x06, 0x5C, 0x03, 0x06, 0x3C, 0x80, 0x06, 0x3D, 0x02, 0x06, 0x1D, 0x02, 0x05, 0xFD, 0x01, 0x05, 0xDD, 0x02, 0x05, 0xBD, 0x01, 0x05, 0xBE, 0x01, 0x05, 0x9E, 0x02, 0x05, 0x7E, 0x01, 0x05, 0x5E, 0x03, 0x05, 0x3E, 0x80, 0x05, 0x1E, 0x02, 0x05, 0x1F, 0x01, 0x04, 0xFF, 0x80, 0x04, 0xFE, 0x10, 0x04, 0xFF, 0x02, 0x05, 0x1F, 0x06, 0x04, 0xFF, 0x02, 0x04, 0xDF, 0x80, 0x04, 0xFF, 0x02, 0x04, 0x9F, 0x84, 0x04, 0x7F, 0x04, 0x3F, 0x04, 0x1F, 0x03, 0xDF, 0x03, 0x9F, 0x01, 0x03, 0x5F, 0x9C, 0x03, 0x1F, 0x02, 0xDF, 0x02, 0x9F, 0x02, 0x5E, 0x02, 0x1E, 0x02, 0x1F, 0x01, 0xDE, 0x01, 0x9E, 0x09, 0xBE, 0x09, 0x7C, 0x09, 0x5B, 0x19, 0x7C, 0x29, 0x9C, 0x39, 0xDC, 0x31, 0x39, 0x28, 0xB6, 0x6A, 0x9C, 0x83, 0x7D, 0x6A, 0xF9, 0x63, 0x59, 0x64, 0x3B, 0x4C, 0xDB, 0x56, 0x7F, 0x3E, 0xDF, 0x26, 0xDE, 0x16, 0xDE, 0x0E, 0xFE, 0x06, 0xFE, 0x0F, 0x1F, 0x01, 0x17, 0x3F, 0x8D, 0x27, 0x3F, 0x3F, 0x3F, 0x4E, 0xFF, 0x6E, 0xBF, 0x7D, 0xDD, 0x6B, 0xB6, 0x7A, 0xD4, 0xA2, 0xF5, 0xBA, 0xB5, 0xC2, 0x74, 0xCA, 0x54, 0xD2, 0x54, 0xD2, 0x34, 0xD2, 0x54, 0x01, 0xD2, 0x34, 0x87, 0xD2, 0x55, 0xCA, 0x55, 0xC2, 0x76, 0xC2, 0xD7, 0xAA, 0xB7, 0x60, 0xD0, 0x59, 0x52, 0x51, 0x52, 0x01, 0x49, 0x72, 0x86, 0x41, 0x52, 0x41, 0x92, 0x41, 0x72, 0x39, 0x72, 0x39, 0x71, 0x39, 0x72, 0x39, 0x71, 0x02, 0x31, 0x51, 0x86, 0x31, 0x50, 0x31, 0x51, 0x31, 0x50, 0x31, 0x30, 0x31, 0x50, 0x29, 0x30, 0x31, 0x50, 0x06, 0x29, 0x30, 0x80, + 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xD8, 0x09, 0xD9, 0x09, 0xFA, 0x02, 0x01, 0xD9, 0x83, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x88, 0x09, 0xF9, 0x12, 0x1A, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0x55, 0x11, 0x13, 0x19, 0x12, 0x19, 0x11, 0x18, 0xF1, 0x07, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x0C, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x07, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x07, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x82, 0x21, 0x30, + 0x21, 0x10, 0x20, 0xEF, 0x04, 0x21, 0x10, 0x80, 0x20, 0xEF, 0x0E, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x89, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x34, 0x11, 0x76, 0x11, 0xB8, 0x11, 0xD9, 0x09, 0xD9, 0x09, 0xFA, 0x04, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0x01, 0xF9, 0x87, 0x09, 0xF8, 0x11, 0xF8, 0x11, 0xD7, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x08, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x89, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x09, 0x35, 0x11, 0x75, 0x19, 0x96, 0x22, 0x17, 0x2A, 0x37, 0x04, 0x22, 0x17, 0x80, 0x2A, 0x17, 0x02, 0x2A, 0x37, 0x03, 0x2A, 0x17, 0x82, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x37, 0x01, 0x2A, 0x17, 0x01, 0x2A, 0x38, 0x02, 0x2A, 0x37, 0x0A, 0x2A, 0x17, 0x80, 0x22, 0x17, 0x03, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x0A, 0x2A, 0x17, 0x80, 0x22, 0x17, 0x04, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x06, 0x2A, 0x17, 0x80, 0x2A, 0x18, 0x09, 0x2A, 0x17, 0x81, 0x2A, 0x18, 0x2A, 0x17, 0x01, 0x2A, 0x18, 0x02, 0x2A, 0x17, 0x80, 0x2A, 0x18, 0x09, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x01, 0x2A, 0x17, 0x02, 0x2A, 0x37, 0x80, 0x2A, 0x17, 0x07, 0x2A, 0x37, 0x01, 0x2A, 0x17, 0x81, 0x2A, 0x37, 0x2A, 0x17, 0x03, 0x2A, 0x37, 0x80, 0x2A, 0x38, 0x01, 0x2A, 0x37, 0x83, 0x22, + 0x17, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x37, 0x02, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x08, 0x2A, 0x17, 0x84, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x37, 0x2A, 0x16, 0x2A, 0x17, 0x02, 0x2A, 0x37, 0x01, 0x2A, 0x17, 0x02, 0x2A, 0x37, 0x8C, 0x22, 0x17, 0x19, 0xB6, 0x19, 0xB5, 0x21, 0xB5, 0x19, 0x54, 0x19, 0x53, 0x19, 0x33, 0x21, 0x32, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x86, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x84, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, + 0x29, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x07, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x8E, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x17, 0x29, 0x30, 0x82, 0x31, 0x30, 0x29, 0x30, 0x31, 0x50, 0x01, 0x31, 0x51, 0x80, 0x29, 0x51, 0x02, 0x31, 0x51, 0x80, 0x29, 0x50, 0x01, 0x31, 0x71, 0x80, 0x31, 0x51, 0x04, 0x31, 0x71, 0x02, 0x39, 0x71, 0x03, 0x39, 0x72, + 0x80, 0x41, 0x92, 0x01, 0x41, 0x72, 0x01, 0x41, 0x93, 0x81, 0x41, 0x92, 0x49, 0x93, 0x03, 0x49, 0xB3, 0x02, 0x49, 0x92, 0x03, 0x51, 0xB2, 0x80, 0x51, 0x92, 0x01, 0x59, 0x91, 0x01, 0x59, 0x70, 0x8D, 0x59, 0x90, 0x69, 0xD1, 0x72, 0x52, 0x8B, 0x35, 0x9B, 0xD8, 0xB4, 0xDC, 0xBD, 0x1D, 0xC5, 0x9F, 0xB5, 0x1D, 0xA5, 0x1C, 0x8C, 0xBA, 0x7C, 0x79, 0x8D, 0x5B, 0x95, 0xFD, 0x01, 0x96, 0x3E, 0x8F, 0x96, 0x5D, 0x85, 0xDC, 0x75, 0x59, 0x64, 0xB7, 0x4C, 0x35, 0x65, 0x18, 0x7E, 0x1C, 0x66, 0x1B, 0x5E, 0x7C, 0x5E, 0xFE, 0x4F, 0x1E, 0x3F, 0x1E, 0x2F, 0x5E, 0x27, 0x7F, 0x1F, 0x9F, 0x17, 0x9F, 0x02, 0x0F, 0x9F, 0x80, 0x07, 0xBF, 0x05, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x05, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x05, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x04, 0x07, 0xDF, 0x81, 0x07, 0xBF, 0x07, 0x9F, 0x02, 0x07, 0xBF, 0x84, 0x07, 0x9E, 0x07, 0x5D, 0x07, 0x3D, 0x07, 0x1D, 0x06, 0xDC, 0x04, 0x06, 0xBC, 0x03, 0x06, 0x9C, 0x80, 0x06, 0x7C, 0x03, 0x06, 0x5C, 0x02, 0x06, 0x3C, 0x83, 0x06, 0x1C, 0x06, 0x3C, 0x06, 0x1C, 0x05, 0xFC, 0x01, 0x05, 0xFD, 0x01, 0x05, 0xDD, 0x03, 0x05, 0xBD, 0x01, 0x05, 0x9D, 0x01, 0x05, 0x9E, 0x80, 0x05, 0x7E, 0x02, 0x05, 0x5E, 0x03, 0x05, 0x3E, 0x80, 0x05, 0x1E, 0x01, 0x05, 0x1F, 0x80, 0x04, 0xFE, 0x01, 0x04, 0xFF, 0x81, 0x04, 0xFE, 0x04, 0xFF, 0x01, 0x04, 0xDE, 0x81, 0x04, 0xDF, 0x04, 0xDE, 0x17, 0x04, 0xDF, 0x82, 0x04, 0xFF, 0x04, 0xBF, 0x04, 0x9F, 0x01, 0x04, 0x7F, 0x88, 0x04, 0x5F, 0x04, 0x3F, 0x04, 0x1F, 0x03, 0xDF, 0x03, 0xBF, + 0x03, 0x7F, 0x03, 0x5F, 0x02, 0xFF, 0x02, 0xDF, 0x01, 0x02, 0x9F, 0x96, 0x02, 0x5F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDE, 0x01, 0x9E, 0x01, 0x9D, 0x09, 0x9D, 0x09, 0x7C, 0x11, 0x5B, 0x19, 0x7B, 0x31, 0xBC, 0x31, 0x7A, 0x28, 0xD6, 0x6A, 0xBC, 0x7B, 0x7C, 0x63, 0x19, 0x63, 0xDA, 0x5C, 0x9B, 0x55, 0xBD, 0x4E, 0x9F, 0x3F, 0x1F, 0x26, 0xFE, 0x17, 0x3F, 0x02, 0x0F, 0x1E, 0x9E, 0x17, 0x5F, 0x17, 0x3F, 0x27, 0x3F, 0x37, 0x1F, 0x57, 0x1F, 0x6E, 0xBF, 0x7D, 0x9C, 0x6B, 0x75, 0x7A, 0x52, 0xAA, 0xB4, 0xC2, 0xB5, 0xCA, 0x74, 0xCA, 0x33, 0xD2, 0x34, 0xCA, 0x13, 0xD2, 0x14, 0xD2, 0x34, 0xD2, 0x35, 0xCA, 0x34, 0xCA, 0x55, 0xC2, 0x76, 0xC2, 0xF8, 0xA2, 0x56, 0x60, 0xF0, 0x59, 0x51, 0x51, 0x72, 0x49, 0x52, 0x41, 0x72, 0x41, 0x51, 0x39, 0x51, 0x39, 0x71, 0x02, 0x39, 0x72, 0x02, 0x31, 0x51, 0x81, 0x39, 0x51, 0x31, 0x30, 0x02, 0x31, 0x50, 0x08, 0x29, 0x30, 0x01, 0x21, 0x31, 0x89, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x09, 0x75, 0x11, 0xD8, 0x12, 0x1A, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x86, 0x09, 0xD8, 0x11, 0xF8, 0x19, 0xD7, 0x11, 0x55, 0x11, 0x13, 0x11, 0x12, 0x18, 0xF1, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x29, 0x31, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x06, 0x21, 0x0F, 0x80, 0x21, + 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x0B, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, + 0x30, 0x01, 0x21, 0x10, 0x89, 0x21, 0x30, 0x21, 0x31, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x76, 0x11, 0xB7, 0x11, 0xD9, 0x09, 0xF9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x86, 0x01, 0xF9, 0x09, 0xF9, 0x11, 0xF8, 0x11, 0xD7, 0x19, 0xB5, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x11, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x11, 0x14, 0x11, 0x13, 0x11, 0x34, 0x11, 0x54, 0x11, 0x74, 0x01, 0x19, 0x94, 0x01, 0x19, 0x74, 0x01, 0x19, 0x95, 0x81, 0x19, 0x74, 0x19, 0x94, 0x06, 0x19, 0x95, 0x80, 0x19, 0xB5, 0x02, 0x19, 0x95, 0x80, 0x19, 0xB5, 0x03, 0x19, 0x95, 0x80, 0x21, 0x95, 0x07, 0x19, 0x95, 0x83, 0x19, 0x94, 0x19, 0xB5, 0x19, 0x95, 0x19, 0x94, 0x05, 0x19, 0x95, 0x01, 0x19, 0xB5, 0x80, 0x19, 0x94, 0x0F, 0x19, 0x95, 0x80, 0x19, 0x75, 0x01, 0x19, 0x95, 0x01, 0x19, 0x75, 0x01, 0x21, 0x95, 0x80, 0x19, 0x75, 0x01, 0x19, 0x95, 0x03, 0x19, 0x75, 0x80, 0x19, 0x95, 0x01, 0x19, 0x75, 0x01, 0x19, 0x95, 0x80, 0x19, 0x75, 0x07, 0x19, 0x95, 0x82, 0x19, 0xB5, 0x19, 0x95, 0x19, 0xB5, 0x02, 0x19, 0x95, 0x80, 0x19, 0xB5, 0x01, 0x19, 0x95, 0x80, 0x21, 0xB5, 0x05, 0x19, 0x95, 0x80, 0x19, 0xB5, 0x02, 0x19, 0x95, 0x03, 0x19, 0xB5, 0x80, 0x19, 0x95, 0x0E, 0x19, 0xB5, 0x07, 0x19, 0x95, 0x02, 0x19, 0x94, 0x01, + 0x19, 0x95, 0x80, 0x19, 0x94, 0x02, 0x19, 0xB5, 0x81, 0x21, 0xD5, 0x21, 0xD6, 0x02, 0x21, 0xF6, 0x86, 0x22, 0x17, 0x21, 0xD6, 0x21, 0xB5, 0x11, 0x54, 0x19, 0x33, 0x19, 0x32, 0x21, 0x32, 0x01, 0x21, 0x11, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x04, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x0C, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x0A, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x86, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, + 0x10, 0x29, 0x10, 0x09, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x89, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x08, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x06, 0x29, 0x30, 0x82, 0x31, 0x30, 0x31, 0x50, 0x31, 0x51, 0x02, 0x29, 0x51, 0x80, 0x31, 0x51, 0x01, 0x31, 0x71, 0x80, 0x31, 0x51, 0x01, 0x31, 0x71, 0x80, 0x31, 0x51, 0x01, 0x31, 0x71, 0x81, 0x39, 0x71, 0x39, 0x91, 0x01, 0x39, 0x71, 0x82, 0x39, 0x92, 0x39, 0x71, 0x39, 0x72, 0x03, 0x41, 0x92, 0x01, 0x41, 0x93, 0x83, + 0x41, 0x92, 0x41, 0x72, 0x49, 0x92, 0x49, 0xB3, 0x02, 0x49, 0xB2, 0x82, 0x49, 0x92, 0x51, 0xB2, 0x51, 0x92, 0x01, 0x51, 0xB2, 0x80, 0x51, 0x91, 0x01, 0x59, 0x91, 0x85, 0x51, 0x50, 0x59, 0x70, 0x61, 0xD1, 0x8B, 0x16, 0xB4, 0x5A, 0xC4, 0xFC, 0x01, 0xD5, 0x9E, 0x89, 0xC5, 0x7D, 0xBD, 0x5D, 0xAD, 0x1B, 0x9C, 0xBA, 0x84, 0x58, 0x84, 0xB9, 0x8D, 0x5B, 0x9D, 0xFE, 0x96, 0x3E, 0x96, 0x5E, 0x01, 0x86, 0x1C, 0x92, 0x75, 0xBA, 0x65, 0x17, 0x5C, 0xD7, 0x65, 0x38, 0x76, 0x1B, 0x6E, 0x3B, 0x66, 0x7C, 0x5E, 0xBD, 0x4E, 0xFE, 0x3F, 0x3E, 0x37, 0x5F, 0x27, 0x5E, 0x1F, 0x5E, 0x17, 0x7E, 0x17, 0x9F, 0x0F, 0x7E, 0x0F, 0xBF, 0x07, 0xBF, 0x0F, 0xDF, 0x04, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x0D, 0x07, 0xDF, 0x04, 0x07, 0xBF, 0x86, 0x07, 0xBE, 0x07, 0x9E, 0x07, 0x7E, 0x07, 0x5D, 0x07, 0x1C, 0x06, 0xFC, 0x06, 0xDC, 0x03, 0x06, 0xBC, 0x03, 0x06, 0x9B, 0x02, 0x06, 0x7B, 0x83, 0x06, 0x5B, 0x06, 0x7B, 0x06, 0x5B, 0x06, 0x3B, 0x02, 0x06, 0x3C, 0x01, 0x06, 0x1C, 0x02, 0x05, 0xFC, 0x82, 0x05, 0xDC, 0x05, 0xBC, 0x05, 0xDD, 0x02, 0x05, 0xBD, 0x02, 0x05, 0x9D, 0x81, 0x05, 0x7D, 0x05, 0x7E, 0x02, 0x05, 0x5E, 0x01, 0x05, 0x3E, 0x02, 0x05, 0x1E, 0x02, 0x04, 0xFE, 0x80, 0x04, 0xFF, 0x02, 0x04, 0xDE, 0x83, 0x04, 0xFF, 0x04, 0xDF, 0x04, 0xDE, 0x04, 0xBE, 0x10, 0x04, 0xBF, 0x80, 0x04, 0x9F, 0x06, 0x04, 0xBF, 0x01, 0x04, 0x9F, 0x80, 0x04, 0x7F, 0x01, 0x04, 0x5F, 0x01, 0x04, 0x3F, 0x85, 0x03, 0xFF, 0x03, 0xBF, 0x03, 0x7F, 0x03, + 0x5F, 0x03, 0x1F, 0x02, 0xDF, 0x01, 0x02, 0xBF, 0x85, 0x02, 0x7F, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDE, 0x01, 0xBE, 0x01, 0x01, 0x9D, 0x8F, 0x09, 0x9C, 0x09, 0x5B, 0x11, 0x3A, 0x29, 0xBC, 0x31, 0x9A, 0x31, 0x37, 0x73, 0x3D, 0x73, 0x7C, 0x63, 0x59, 0x64, 0x1A, 0x54, 0xFB, 0x5E, 0x5F, 0x46, 0xDF, 0x2F, 0x1F, 0x1F, 0x3F, 0x0F, 0x1E, 0x02, 0x0F, 0x3F, 0x8F, 0x17, 0x3F, 0x1F, 0x5F, 0x2F, 0x5F, 0x37, 0x1F, 0x56, 0xFF, 0x76, 0x7F, 0x74, 0xDA, 0x73, 0x14, 0x8A, 0x73, 0xB2, 0xB4, 0xC2, 0xB4, 0xCA, 0x74, 0xCA, 0x34, 0xD2, 0x34, 0xD2, 0x14, 0xDA, 0x35, 0x01, 0xD2, 0x35, 0x8A, 0xCA, 0x35, 0xCA, 0x55, 0xC2, 0x76, 0xBA, 0xB7, 0x91, 0xF4, 0x58, 0xD0, 0x59, 0x52, 0x49, 0x51, 0x49, 0x72, 0x41, 0x51, 0x39, 0x51, 0x01, 0x39, 0x72, 0x03, 0x39, 0x71, 0x01, 0x39, 0x51, 0x82, 0x31, 0x51, 0x31, 0x30, 0x31, 0x50, 0x01, 0x31, 0x30, 0x82, 0x31, 0x50, 0x29, 0x30, 0x29, 0x50, 0x01, 0x29, 0x30, 0x81, 0x29, 0x50, 0x29, 0x30, 0x01, 0x21, 0x31, 0x87, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x95, 0x11, 0xD7, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0xB9, 0x04, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x85, 0x09, 0xF9, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, + 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x05, 0x29, 0x30, 0x80, 0x21, 0x10, 0x04, 0x29, 0x30, 0x84, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x06, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, + 0x0F, 0x01, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x87, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x85, 0x11, 0x32, 0x11, 0x34, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xD9, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x81, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x83, 0x0A, 0x19, 0x11, 0xF8, 0x11, 0xD7, 0x19, 0xB5, 0x01, 0x11, 0x32, 0x82, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x80, 0x11, 0x33, 0x01, 0x11, 0x12, 0x02, 0x11, 0x32, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x80, 0x11, 0x33, 0x01, 0x11, 0x32, 0x85, 0x11, 0x33, 0x11, 0x12, 0x11, 0x13, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x01, 0x11, 0x33, 0x82, 0x11, 0x32, 0x11, 0x13, 0x19, 0x33, 0x01, 0x11, 0x33, 0x80, 0x19, 0x33, 0x01, 0x11, 0x13, 0x80, 0x19, 0x33, 0x01, 0x11, 0x13, 0x80, 0x19, 0x33, 0x02, 0x11, 0x33, 0x01, 0x11, 0x32, 0x81, 0x11, 0x33, 0x19, 0x33, 0x07, 0x11, 0x33, 0x01, 0x11, 0x32, 0x01, 0x11, 0x33, 0x82, 0x11, 0x32, 0x11, 0x53, 0x11, 0x33, 0x01, 0x11, 0x32, 0x02, 0x11, 0x33, 0x80, 0x19, 0x53, 0x01, 0x11, 0x33, 0x80, 0x19, 0x53, 0x04, 0x11, 0x33, 0x02, 0x19, 0x33, 0x01, + 0x11, 0x13, 0x02, 0x19, 0x33, 0x83, 0x11, 0x33, 0x11, 0x13, 0x19, 0x33, 0x11, 0x33, 0x06, 0x19, 0x33, 0x82, 0x11, 0x13, 0x19, 0x33, 0x11, 0x13, 0x07, 0x11, 0x33, 0x81, 0x11, 0x12, 0x11, 0x32, 0x02, 0x11, 0x33, 0x80, 0x19, 0x33, 0x02, 0x11, 0x33, 0x80, 0x11, 0x32, 0x01, 0x11, 0x33, 0x80, 0x11, 0x32, 0x04, 0x11, 0x33, 0x80, 0x11, 0x53, 0x03, 0x11, 0x33, 0x85, 0x19, 0x33, 0x11, 0x33, 0x11, 0x32, 0x11, 0x33, 0x11, 0x12, 0x11, 0x32, 0x0A, 0x11, 0x33, 0x81, 0x19, 0x33, 0x11, 0x13, 0x02, 0x11, 0x12, 0x01, 0x11, 0x32, 0x01, 0x11, 0x33, 0x03, 0x11, 0x32, 0x80, 0x08, 0xF2, 0x01, 0x09, 0x12, 0x89, 0x11, 0x33, 0x19, 0x95, 0x22, 0x17, 0x2A, 0x37, 0x21, 0xF6, 0x19, 0x95, 0x19, 0x54, 0x19, 0x53, 0x19, 0x32, 0x21, 0x32, 0x01, 0x21, 0x11, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x07, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x06, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x04, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, + 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x03, 0x21, 0x31, 0x84, 0x19, 0x31, 0x19, 0x51, 0x19, 0x31, 0x19, 0x52, 0x19, 0x51, 0x01, 0x21, 0x31, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, + 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x09, 0x29, 0x30, 0x01, 0x31, 0x30, 0x02, 0x31, 0x51, 0x84, 0x29, 0x51, 0x31, 0x71, 0x29, 0x51, 0x31, 0x71, 0x31, 0x51, 0x02, 0x31, 0x71, 0x82, 0x31, 0x51, 0x39, 0x71, 0x31, 0x71, 0x04, 0x39, 0x71, 0x82, 0x41, 0x72, 0x41, 0x92, 0x41, 0x72, 0x02, 0x41, 0x92, 0x80, 0x41, 0x72, 0x01, 0x49, 0x93, 0x80, 0x49, 0xB3, 0x03, 0x49, 0x92, 0x01, 0x51, 0x92, 0x83, 0x51, 0x91, 0x51, 0xB2, 0x51, 0x91, 0x59, 0x91, 0x01, 0x59, 0x90, 0x92, 0x69, 0xF2, 0x8A, 0xF5, 0xB4, 0x3A, 0xCD, 0x1D, 0xD5, 0x7E, 0xCD, 0x5D, 0xC5, 0x7D, 0xAC, 0xFB, 0x9C, 0xB9, 0x8C, 0x78, 0x84, 0x37, 0x95, 0x1A, 0x9D, 0x9C, 0x95, 0xDC, 0x96, 0x1D, 0x8E, 0x3D, 0x8E, 0x5E, 0x7E, 0x1C, 0x6D, 0xDB, 0x01, 0x7E, 0x5C, 0x8F, 0x65, 0x78, 0x5D, 0x99, 0x76, 0x5C, 0x6E, 0x9C, 0x66, 0x7C, 0x56, 0x9D, 0x56, 0xFE, 0x47, 0x3E, 0x37, 0x3E, 0x27, 0x5E, 0x1F, 0x7E, 0x17, 0x7E, 0x0F, 0x7E, 0x0F, 0x9E, 0x0F, 0xBF, 0x0F, 0xDF, 0x05, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x09, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x03, 0x07, 0xDF, 0x03, 0x07, 0xBF, 0x85, 0x07, 0x5D, 0x07, 0x3D, 0x07, 0x1C, 0x06, 0xFC, 0x06, 0xDC, 0x06, 0xBB, 0x01, 0x06, 0xBC, 0x01, 0x06, 0xBB, 0x03, 0x06, 0x9B, 0x01, 0x06, 0x7B, 0x04, 0x06, 0x5B, 0x01, 0x06, 0x3B, 0x82, 0x06, 0x1B, 0x06, 0x3C, 0x06, + 0x1C, 0x01, 0x05, 0xFC, 0x01, 0x05, 0xDC, 0x82, 0x05, 0xDD, 0x05, 0xBC, 0x05, 0x9C, 0x03, 0x05, 0x9D, 0x80, 0x05, 0x7D, 0x01, 0x05, 0x5D, 0x80, 0x05, 0x5E, 0x04, 0x05, 0x3E, 0x02, 0x04, 0xFE, 0x05, 0x04, 0xDE, 0x80, 0x04, 0xBE, 0x03, 0x04, 0xBF, 0x09, 0x04, 0x9F, 0x80, 0x04, 0xBF, 0x02, 0x04, 0x9F, 0x01, 0x04, 0x7F, 0x81, 0x04, 0x9F, 0x04, 0x7F, 0x02, 0x04, 0x9F, 0x04, 0x04, 0x7F, 0x80, 0x04, 0x5F, 0x01, 0x04, 0x3F, 0x8B, 0x04, 0x1F, 0x03, 0xFF, 0x03, 0xDF, 0x03, 0x9F, 0x03, 0x5F, 0x03, 0x3F, 0x03, 0x1F, 0x02, 0xDF, 0x02, 0xBF, 0x02, 0x9F, 0x02, 0x5F, 0x02, 0x1F, 0x01, 0x01, 0xFF, 0x80, 0x01, 0xDE, 0x01, 0x01, 0xBE, 0x91, 0x09, 0xBD, 0x09, 0x9D, 0x11, 0x7C, 0x11, 0x3B, 0x29, 0xBC, 0x31, 0x9A, 0x4A, 0x19, 0x7B, 0x7D, 0x63, 0x19, 0x5B, 0x99, 0x4C, 0x19, 0x55, 0x7D, 0x56, 0x7F, 0x3E, 0xDF, 0x27, 0x1F, 0x17, 0x3E, 0x17, 0x7F, 0x0F, 0x3E, 0x01, 0x0F, 0x5F, 0x8D, 0x17, 0x5F, 0x1F, 0x3F, 0x2F, 0x3F, 0x3E, 0xFE, 0x5E, 0xFF, 0x7E, 0x5E, 0x7C, 0x99, 0x6A, 0x92, 0x92, 0x93, 0xB2, 0x94, 0xC2, 0x74, 0xCA, 0x54, 0xD2, 0x54, 0xD2, 0x34, 0x01, 0xD2, 0x14, 0x88, 0xD1, 0xF4, 0xD2, 0x35, 0xCA, 0x34, 0xCA, 0x55, 0xC2, 0x76, 0xC2, 0xF8, 0x81, 0x92, 0x58, 0xF0, 0x59, 0x52, 0x01, 0x49, 0x72, 0x80, 0x41, 0x72, 0x04, 0x39, 0x72, 0x04, 0x31, 0x51, 0x80, 0x31, 0x50, 0x02, 0x31, 0x30, 0x05, 0x29, 0x30, 0x86, 0x29, 0x51, 0x21, 0x52, 0x19, 0x32, 0x11, 0x53, 0x11, 0x75, 0x19, 0xF8, 0x11, 0xF8, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xBA, 0x02, 0x01, 0xDA, + 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x83, 0x09, 0xF9, 0x11, 0xF9, 0x11, 0x96, 0x11, 0x34, 0x01, 0x11, 0x12, 0x83, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x86, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x05, 0x21, 0x0F, + 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x07, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x91, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x50, 0x19, 0x30, 0x19, 0x51, 0x19, 0x52, 0x19, 0x53, 0x11, 0x34, 0x11, 0x55, 0x11, 0xB7, 0x11, 0xF9, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x88, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0xD8, 0x09, 0xD8, 0x11, 0xF8, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x31, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x03, 0x19, 0x12, 0x01, 0x19, 0x11, 0x05, 0x19, 0x12, 0x01, 0x19, 0x32, 0x83, 0x19, 0x12, 0x11, 0x12, 0x19, 0x12, 0x19, 0x32, 0x10, 0x19, 0x12, 0x02, 0x19, 0x32, 0x01, 0x19, 0x12, 0x03, 0x19, 0x32, 0x01, 0x11, 0x12, 0x83, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x11, 0x32, 0x05, 0x19, 0x32, 0x80, 0x11, 0x32, 0x02, 0x19, 0x32, 0x81, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x32, 0x04, 0x19, 0x12, 0x80, 0x19, 0x32, + 0x02, 0x19, 0x12, 0x82, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x12, 0x82, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x05, 0x19, 0x12, 0x84, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x11, 0x12, 0x19, 0x12, 0x02, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x32, 0x03, 0x19, 0x12, 0x01, 0x19, 0x32, 0x82, 0x11, 0x12, 0x19, 0x32, 0x11, 0x32, 0x01, 0x19, 0x32, 0x81, 0x11, 0x12, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x11, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x12, 0x80, 0x19, 0x32, 0x01, 0x11, 0x12, 0x80, 0x19, 0x12, 0x03, 0x11, 0x12, 0x85, 0x19, 0x32, 0x11, 0x12, 0x19, 0x12, 0x11, 0x12, 0x19, 0x12, 0x19, 0x32, 0x01, 0x11, 0x12, 0x80, 0x19, 0x32, 0x02, 0x19, 0x12, 0x81, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x12, 0x01, 0x11, 0x11, 0x80, 0x19, 0x32, 0x04, 0x11, 0x12, 0x87, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF6, 0x22, 0x17, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x19, 0x53, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x07, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, + 0x21, 0x10, 0x29, 0x10, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x86, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x03, 0x19, 0x31, 0x01, 0x19, 0x32, 0x03, 0x19, 0x52, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x02, 0x29, 0x30, 0x88, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, + 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x03, 0x29, 0x10, 0x05, 0x29, 0x30, 0x80, 0x29, 0x50, 0x05, 0x29, 0x30, 0x01, 0x31, 0x51, 0x80, 0x29, 0x30, 0x02, 0x31, 0x51, 0x01, 0x29, 0x51, 0x01, 0x31, 0x71, 0x01, 0x31, 0x51, 0x01, 0x31, 0x71, 0x81, 0x39, 0x71, 0x31, 0x71, 0x04, 0x39, 0x71, 0x80, 0x41, 0x71, 0x01, 0x41, 0x92, 0x01, 0x41, 0x72, 0x80, 0x41, 0x92, 0x01, 0x49, 0x92, 0x01, 0x49, 0x93, 0x82, 0x49, 0x92, 0x51, 0xB2, 0x49, 0x92, 0x02, 0x51, 0x92, 0x87, 0x59, 0xB2, 0x59, 0x91, 0x59, 0x70, 0x51, 0x50, 0x59, 0x70, 0x7A, 0x53, 0xAB, 0xD9, 0xCC, 0xDC, 0x01, 0xD5, 0x5D, 0x90, 0xCD, 0x7D, 0xB4, 0xFA, 0x9C, 0x98, 0x84, 0x16, 0x74, 0x16, 0x84, 0xD8, 0x8D, 0x7B, 0x8D, 0xDC, 0x8E, 0x1D, 0x86, 0x1C, 0x7E, 0x3C, 0x76, 0x3C, 0x76, 0x5D, 0x66, 0x1C, 0x66, 0x1B, 0x66, 0x5C, 0x66, 0x5B, 0x01, 0x5E, 0x1A, 0x8A, 0x66, 0x7B, 0x5E, 0x9C, 0x56, 0xDD, 0x4E, 0xDD, 0x47, 0x1E, 0x37, 0x1E, 0x2F, 0x3E, 0x27, 0x7E, 0x1F, 0x9F, 0x17, 0x9F, 0x0F, 0x9F, 0x01, 0x0F, 0xBF, 0x05, 0x07, 0xDF, 0x09, 0x07, 0xFF, 0x11, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x8A, 0x0F, 0xBF, 0x07, 0x5D, 0x07, 0x3C, 0x06, 0xFC, 0x06, 0xDC, 0x06, 0xDB, + 0x06, 0xBB, 0x06, 0xDC, 0x06, 0xBB, 0x06, 0x9B, 0x06, 0xBB, 0x01, 0x06, 0x9B, 0x01, 0x06, 0x9A, 0x03, 0x06, 0x7A, 0x02, 0x06, 0x5B, 0x80, 0x06, 0x3B, 0x03, 0x06, 0x1B, 0x01, 0x05, 0xFB, 0x02, 0x05, 0xDC, 0x02, 0x05, 0xBC, 0x80, 0x05, 0x9C, 0x01, 0x05, 0x9D, 0x01, 0x05, 0x7D, 0x02, 0x05, 0x5D, 0x80, 0x05, 0x3E, 0x01, 0x05, 0x1D, 0x80, 0x05, 0x1E, 0x02, 0x04, 0xFE, 0x04, 0x04, 0xDE, 0x01, 0x04, 0xBE, 0x80, 0x04, 0xBF, 0x07, 0x04, 0x9F, 0x01, 0x04, 0x7F, 0x80, 0x04, 0x9F, 0x05, 0x04, 0x7F, 0x01, 0x04, 0x5F, 0x03, 0x04, 0x7F, 0x02, 0x04, 0x5F, 0x80, 0x04, 0x7F, 0x01, 0x04, 0x5F, 0x01, 0x04, 0x3F, 0x80, 0x04, 0x1F, 0x01, 0x03, 0xFF, 0x85, 0x03, 0xDF, 0x03, 0xBF, 0x03, 0x7F, 0x03, 0x5F, 0x03, 0x1F, 0x02, 0xFF, 0x01, 0x02, 0xBF, 0x85, 0x02, 0x5F, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xDE, 0x01, 0x01, 0xBE, 0x8F, 0x09, 0xBE, 0x09, 0x9D, 0x11, 0x7C, 0x11, 0x3A, 0x29, 0xBB, 0x31, 0x78, 0x5A, 0x9B, 0x83, 0xFE, 0x53, 0x19, 0x5C, 0x1B, 0x4C, 0x9B, 0x5E, 0x1F, 0x4E, 0xDF, 0x37, 0x1F, 0x1F, 0x3F, 0x17, 0x3E, 0x01, 0x0F, 0x5F, 0x01, 0x0F, 0x7F, 0x8E, 0x17, 0x5F, 0x1F, 0x5F, 0x2F, 0x1F, 0x46, 0xFF, 0x66, 0xDF, 0x86, 0x1E, 0x73, 0xF6, 0x72, 0x93, 0x9A, 0x94, 0xBA, 0x94, 0xCA, 0x74, 0xCA, 0x54, 0xD2, 0x34, 0xD2, 0x14, 0xD1, 0xF4, 0x02, 0xD2, 0x14, 0x01, 0xCA, 0x35, 0x85, 0xC2, 0x56, 0xC2, 0xF8, 0x71, 0x31, 0x61, 0x11, 0x51, 0x52, 0x49, 0x72, 0x01, 0x41, 0x72, 0x03, 0x39, 0x72, 0x81, 0x39, 0x71, 0x39, 0x72, 0x02, 0x31, + 0x51, 0x01, 0x31, 0x30, 0x80, 0x31, 0x51, 0x01, 0x31, 0x30, 0x80, 0x29, 0x30, 0x02, 0x29, 0x50, 0x87, 0x29, 0x31, 0x21, 0x51, 0x21, 0x52, 0x19, 0x53, 0x11, 0x54, 0x11, 0xB6, 0x12, 0x19, 0x11, 0xF9, 0x01, 0x01, 0xB9, 0x80, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x02, 0x01, 0xD9, 0x85, 0x09, 0xF9, 0x11, 0xF9, 0x11, 0xB7, 0x11, 0x34, 0x11, 0x13, 0x19, 0x32, 0x01, 0x19, 0x11, 0x03, 0x21, 0x30, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x08, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x08, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, + 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x51, 0x87, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xF9, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x83, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x01, 0x09, 0xD8, 0x88, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x32, 0x11, 0x12, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x19, 0x11, 0x19, 0x31, 0x09, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x84, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x18, 0xF1, 0x01, 0x19, 0x11, 0x01, 0x18, 0xF1, 0x04, 0x19, 0x11, 0x80, 0x19, 0x32, 0x03, 0x19, 0x11, 0x83, 0x19, 0x31, 0x19, 0x11, 0x19, + 0x32, 0x19, 0x11, 0x01, 0x19, 0x31, 0x03, 0x19, 0x11, 0x80, 0x19, 0x32, 0x02, 0x19, 0x31, 0x01, 0x19, 0x11, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x08, 0x19, 0x11, 0x82, 0x19, 0x12, 0x19, 0x11, 0x19, 0x32, 0x09, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x03, 0x19, 0x11, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x82, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x05, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x31, 0x03, 0x19, 0x11, 0x80, 0x19, 0x31, 0x03, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x02, 0x19, 0x11, 0x80, 0x19, 0x32, 0x02, 0x19, 0x31, 0x01, 0x19, 0x11, 0x03, 0x19, 0x31, 0x91, 0x19, 0x32, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0x52, 0x19, 0x53, 0x19, 0x94, 0x21, 0xD6, 0x22, 0x17, 0x21, 0xF6, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x21, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, + 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x04, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x06, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x82, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x02, 0x11, 0x53, 0x01, 0x11, 0x33, 0x02, 0x11, 0x32, 0x83, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x29, 0x30, 0x83, + 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x07, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x0B, 0x29, 0x30, 0x02, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x31, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x31, 0x51, 0x80, 0x29, 0x30, 0x01, 0x31, 0x51, 0x01, 0x29, 0x51, 0x82, 0x31, 0x71, 0x31, 0x51, 0x31, 0x71, 0x01, 0x31, 0x72, 0x81, 0x31, 0x51, 0x31, 0x71, 0x02, 0x39, 0x71, 0x80, 0x39, 0x91, 0x01, 0x41, 0x92, 0x80, 0x41, 0x71, 0x03, 0x41, 0x92, 0x01, 0x49, 0xB2, 0x80, 0x49, 0xB3, 0x01, 0x49, 0x93, 0x86, 0x49, 0x92, 0x49, 0x72, 0x49, 0x71, 0x51, 0x92, 0x51, 0x91, 0x59, 0xB2, 0x59, 0x91, 0x01, 0x59, 0x70, 0xA5, 0x69, 0xB1, 0x8A, 0xB4, 0xB3, 0xF9, 0xCC, 0xDC, 0xD4, 0xFD, 0xCC, 0xFC, 0xCD, 0x1C, 0xB4, 0xDA, 0xA4, 0x98, 0x94, 0x98, 0x8C, 0xD8, 0x8D, 0x7A, 0x8E, 0x1C, 0x86, 0x5D, 0x76, 0x5C, 0x66, 0x5C, 0x5E, 0x5C, 0x5E, 0x7C, 0x5E, 0xBD, 0x56, 0xDD, 0x56, 0xBD, 0x56, 0x9D, 0x4E, 0x7C, 0x46, 0x3B, 0x46, 0x1A, 0x46, 0x5B, 0x4E, 0x7B, 0x46, 0xBC, 0x46, 0xFD, 0x47, 0x3E, 0x3F, 0x3E, 0x2F, 0x3E, 0x27, 0x5E, + 0x1F, 0x9F, 0x17, 0x9E, 0x0F, 0x9E, 0x0F, 0x9F, 0x0F, 0xBF, 0x05, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x06, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x07, 0x07, 0xDF, 0x86, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0x9E, 0x07, 0x5D, 0x07, 0x1C, 0x06, 0xFC, 0x02, 0x06, 0xDB, 0x80, 0x06, 0xDC, 0x01, 0x06, 0xBB, 0x80, 0x06, 0xBA, 0x04, 0x06, 0x9A, 0x80, 0x06, 0x7A, 0x03, 0x06, 0x5A, 0x80, 0x06, 0x3A, 0x02, 0x06, 0x3B, 0x01, 0x06, 0x1B, 0x01, 0x05, 0xFB, 0x01, 0x05, 0xDB, 0x01, 0x05, 0xDC, 0x02, 0x05, 0xBC, 0x80, 0x05, 0x9C, 0x01, 0x05, 0x9D, 0x80, 0x05, 0x7D, 0x02, 0x05, 0x5D, 0x01, 0x05, 0x3D, 0x80, 0x05, 0x1D, 0x01, 0x05, 0x1E, 0x02, 0x04, 0xFE, 0x03, 0x04, 0xDE, 0x01, 0x04, 0x9E, 0x80, 0x04, 0x9F, 0x03, 0x04, 0x7E, 0x81, 0x04, 0x7F, 0x04, 0x9F, 0x02, 0x04, 0x7F, 0x0C, 0x04, 0x5F, 0x80, 0x04, 0x3F, 0x04, 0x04, 0x5F, 0x01, 0x04, 0x3F, 0x01, 0x04, 0x1F, 0x01, 0x03, 0xFF, 0x8A, 0x03, 0xBF, 0x03, 0x9F, 0x03, 0x7F, 0x03, 0x5F, 0x03, 0x1F, 0x02, 0xFF, 0x02, 0xDF, 0x02, 0xBF, 0x02, 0x7F, 0x02, 0x5F, 0x02, 0x1F, 0x01, 0x01, 0xFF, 0x03, 0x01, 0xBE, 0x8E, 0x09, 0xBE, 0x09, 0x9D, 0x11, 0x9C, 0x19, 0x7A, 0x29, 0x9A, 0x29, 0x98, 0x73, 0x9E, 0x6B, 0x9C, 0x53, 0x7A, 0x5C, 0x5B, 0x4C, 0xDB, 0x5E, 0x7F, 0x3E, 0xDF, 0x27, 0x1F, 0x17, 0x3F, 0x01, 0x0F, 0x5F, 0x8F, 0x07, 0x7F, 0x0F, 0x9F, 0x17, 0x7F, 0x1F, 0x7F, 0x27, 0x3F, 0x37, 0x1F, 0x4E, 0xDE, 0x76, 0xBF, + 0x7D, 0x9C, 0x73, 0x95, 0x7A, 0x72, 0xA2, 0x94, 0xBA, 0x94, 0xCA, 0x54, 0xCA, 0x34, 0xD2, 0x34, 0x01, 0xD2, 0x14, 0x80, 0xD1, 0xF4, 0x01, 0xD2, 0x14, 0x89, 0xCA, 0x14, 0xC2, 0x35, 0xC2, 0x96, 0xBA, 0xD7, 0x68, 0xF0, 0x59, 0x31, 0x51, 0x51, 0x49, 0x72, 0x41, 0x51, 0x41, 0x72, 0x03, 0x39, 0x72, 0x80, 0x39, 0x71, 0x04, 0x31, 0x51, 0x82, 0x31, 0x31, 0x31, 0x30, 0x31, 0x50, 0x01, 0x29, 0x50, 0x8C, 0x29, 0x30, 0x29, 0x50, 0x29, 0x51, 0x21, 0x31, 0x21, 0x52, 0x19, 0x53, 0x11, 0x95, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x98, 0x09, 0xB9, 0x01, 0xB9, 0x09, 0xFA, 0x01, 0x01, 0xDA, 0x82, 0x01, 0xBA, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x84, 0x12, 0x19, 0x11, 0xB7, 0x11, 0x55, 0x19, 0x54, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x03, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x08, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x04, 0x21, 0x30, 0x03, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, + 0x0F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x89, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x8A, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x07, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x04, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x51, 0x01, 0x19, 0x31, 0x87, 0x11, 0x12, 0x11, 0x34, 0x11, 0x55, 0x11, 0x97, 0x11, 0xD8, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xD9, 0x86, 0x09, 0xF8, 0x09, 0xD8, 0x11, 0xD7, 0x11, 0x95, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, + 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x11, 0x02, 0x21, 0x31, 0x02, 0x21, 0x11, 0x80, 0x19, 0x10, 0x03, 0x21, 0x11, 0x80, 0x21, 0x10, 0x06, 0x21, 0x11, 0x80, 0x19, 0x11, 0x0C, 0x21, 0x11, 0x84, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x21, 0x11, 0x19, 0x11, 0x02, 0x19, 0x10, 0x81, 0x19, 0x11, 0x21, 0x31, 0x01, 0x19, 0x11, 0x82, 0x19, 0x10, 0x21, 0x31, 0x19, 0x10, 0x02, 0x19, 0x31, 0x82, 0x19, 0x10, 0x21, 0x31, 0x21, 0x11, 0x01, 0x19, 0x11, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x02, 0x19, 0x11, 0x80, 0x21, 0x31, 0x03, 0x21, 0x11, 0x81, 0x19, 0x10, 0x21, 0x31, 0x04, 0x21, 0x11, 0x82, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x02, 0x21, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x11, 0x83, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x11, 0x03, 0x21, 0x11, 0x84, 0x19, 0x11, 0x21, 0x11, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x11, 0x8A, 0x19, 0x10, 0x21, 0x11, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x19, 0x11, 0x19, 0x10, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x21, 0x11, 0x84, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x84, 0x19, 0x11, 0x21, 0x11, 0x19, 0x11, 0x21, + 0x31, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x10, 0x07, 0x19, 0x31, 0x8B, 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x21, 0xF6, 0x22, 0x37, 0x22, 0x17, 0x19, 0x95, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x82, 0x11, 0x32, 0x11, 0x73, 0x11, 0x74, 0x01, + 0x19, 0xB5, 0x88, 0x11, 0x94, 0x11, 0x74, 0x09, 0x54, 0x11, 0x54, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x87, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x88, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x09, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x50, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x09, 0x29, 0x30, 0x87, 0x29, 0x50, 0x29, 0x30, 0x29, 0x50, 0x31, 0x50, 0x31, 0x51, 0x29, 0x30, 0x31, 0x30, 0x31, 0x31, 0x02, 0x31, 0x51, 0x02, 0x31, 0x71, 0x83, 0x31, 0x51, 0x31, 0x71, 0x31, + 0x51, 0x39, 0x71, 0x02, 0x39, 0x92, 0x82, 0x41, 0x92, 0x41, 0x91, 0x41, 0x92, 0x01, 0x41, 0x91, 0x89, 0x41, 0x92, 0x41, 0xB2, 0x49, 0xB2, 0x49, 0xD2, 0x49, 0xB2, 0x49, 0x92, 0x49, 0x72, 0x49, 0x92, 0x51, 0x92, 0x51, 0x72, 0x01, 0x51, 0x91, 0x95, 0x51, 0x70, 0x51, 0x50, 0x51, 0x2F, 0x69, 0xB1, 0x92, 0xD5, 0xC4, 0x3A, 0xD4, 0xBC, 0xD4, 0xDC, 0xD4, 0xFC, 0xCC, 0xFC, 0xC4, 0xDB, 0xA4, 0x78, 0x94, 0x77, 0x84, 0x97, 0x85, 0x19, 0x85, 0xBB, 0x86, 0x5C, 0x6E, 0x7C, 0x5E, 0x7C, 0x46, 0x5B, 0x46, 0x9C, 0x3E, 0xBC, 0x01, 0x3F, 0x1D, 0x01, 0x36, 0xDD, 0x80, 0x36, 0xBC, 0x01, 0x3E, 0xBC, 0x8A, 0x46, 0xDD, 0x46, 0xFD, 0x3F, 0x1D, 0x3F, 0x3D, 0x37, 0x5E, 0x2F, 0x5E, 0x27, 0x5E, 0x1F, 0x7E, 0x17, 0x7E, 0x17, 0x9E, 0x0F, 0xBF, 0x01, 0x07, 0xBF, 0x03, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x07, 0x07, 0xFF, 0x81, 0x07, 0xDF, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x0E, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x86, 0x07, 0xDF, 0x0F, 0xDF, 0x0F, 0xBE, 0x0F, 0x9E, 0x07, 0x5C, 0x07, 0x1B, 0x06, 0xFB, 0x01, 0x06, 0xDB, 0x82, 0x06, 0xFB, 0x06, 0xDB, 0x06, 0xBB, 0x03, 0x06, 0xBA, 0x03, 0x06, 0x9A, 0x01, 0x06, 0x7A, 0x02, 0x06, 0x5A, 0x02, 0x06, 0x3A, 0x02, 0x06, 0x1A, 0x02, 0x05, 0xFB, 0x02, 0x05, 0xDB, 0x80, 0x05, 0xBB, 0x01, 0x05, 0xBC, 0x80, 0x05, 0x9C, 0x01, 0x05, 0x7C, 0x80, 0x05, 0x7D, 0x01, 0x05, 0x5D, 0x01, 0x05, 0x3D, 0x01, 0x05, 0x1D, 0x02, 0x04, 0xFD, 0x80, 0x04, 0xFE, 0x01, 0x04, 0xDE, 0x01, 0x04, 0xBE, 0x02, 0x04, 0x9E, + 0x01, 0x04, 0x7E, 0x82, 0x04, 0x9F, 0x04, 0x7E, 0x04, 0x7F, 0x05, 0x04, 0x5F, 0x0A, 0x04, 0x3F, 0x80, 0x04, 0x1F, 0x04, 0x04, 0x3F, 0x85, 0x04, 0x1F, 0x04, 0x3F, 0x04, 0x1F, 0x03, 0xFF, 0x03, 0xDF, 0x03, 0xBF, 0x01, 0x03, 0x9F, 0x01, 0x03, 0x5F, 0x88, 0x03, 0x3F, 0x02, 0xFF, 0x02, 0xDF, 0x02, 0xBF, 0x02, 0x9F, 0x02, 0x5F, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x02, 0x01, 0xBE, 0x91, 0x09, 0xBE, 0x09, 0x9D, 0x11, 0x9C, 0x21, 0xBB, 0x29, 0xBA, 0x42, 0x1A, 0x7B, 0xFF, 0x5B, 0x5B, 0x53, 0xBA, 0x4C, 0x5B, 0x55, 0xBE, 0x4E, 0xDF, 0x37, 0x1F, 0x1F, 0x3F, 0x17, 0x5F, 0x0F, 0x7F, 0x0F, 0x9F, 0x07, 0x7F, 0x01, 0x0F, 0x7F, 0x98, 0x1F, 0x7F, 0x2F, 0x5F, 0x3F, 0x1F, 0x56, 0xBE, 0x7E, 0xBF, 0x85, 0x3B, 0x6A, 0xF3, 0x8A, 0xB3, 0xAA, 0x94, 0xC2, 0x74, 0xCA, 0x54, 0xD2, 0x34, 0xD2, 0x13, 0xD2, 0x14, 0xD1, 0xF4, 0xD2, 0x14, 0xD1, 0xF4, 0xD2, 0x35, 0xCA, 0x14, 0xC2, 0x55, 0xC2, 0xB7, 0xA2, 0x76, 0x60, 0xF0, 0x59, 0x51, 0x49, 0x51, 0x02, 0x41, 0x72, 0x83, 0x39, 0x71, 0x39, 0x72, 0x39, 0x51, 0x39, 0x71, 0x05, 0x31, 0x51, 0x82, 0x31, 0x31, 0x31, 0x30, 0x29, 0x30, 0x02, 0x29, 0x50, 0x85, 0x21, 0x51, 0x21, 0x52, 0x21, 0x53, 0x11, 0x54, 0x11, 0xB6, 0x11, 0xF8, 0x01, 0x09, 0xB8, 0x01, 0x09, 0xD9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x8A, 0x01, 0xDA, 0x01, 0xD9, 0x09, 0xF9, 0x1A, 0x19, 0x11, 0xD7, 0x09, 0x54, 0x11, 0x54, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, + 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x07, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x8F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, + 0x21, 0x30, 0x05, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x19, 0x31, 0x87, 0x19, 0x32, 0x11, 0x33, 0x11, 0x75, 0x11, 0x97, 0x11, 0xD8, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xD9, 0x88, 0x01, 0xD8, 0x09, 0xF8, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x32, 0x10, 0xF1, 0x19, 0x31, 0x21, 0x51, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x1D, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x0C, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x11, 0x07, 0x21, 0x10, 0x80, 0x20, 0xF0, 0x0D, 0x21, 0x10, 0x86, 0x21, 0x11, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x08, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x31, 0x01, + 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x31, 0x02, 0x21, 0x51, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x84, 0x11, 0x12, 0x11, 0x33, 0x19, 0x94, 0x21, 0xF6, 0x22, 0x17, 0x01, 0x19, 0xD6, 0x81, 0x11, 0x74, 0x19, 0x53, 0x01, 0x19, 0x32, 0x84, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x05, 0x29, 0x10, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0xB5, 0x19, 0xD6, 0x11, 0xD6, 0x01, 0x22, 0x17, 0x01, 0x19, 0xF7, 0x85, 0x22, 0x17, 0x19, 0xF6, 0x21, 0xD6, 0x19, 0x74, 0x19, 0x32, 0x19, 0x11, + 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x29, 0x10, 0x80, 0x28, 0xEF, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x30, 0x01, 0x29, 0x50, 0x03, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x31, 0x30, 0x01, 0x31, 0x50, 0x01, 0x31, 0x71, 0x01, 0x31, 0x51, 0x81, 0x31, 0x50, 0x31, 0x51, 0x01, 0x31, 0x71, 0x04, 0x39, 0x72, 0x80, 0x41, 0x92, 0x03, 0x41, 0x91, 0x81, 0x41, 0xB2, 0x49, 0xB2, 0x01, 0x41, 0x91, 0x80, 0x41, 0x71, 0x01, 0x49, 0x91, 0x80, 0x51, 0xB2, 0x01, 0x51, 0x92, 0x87, 0x51, 0x71, + 0x51, 0x50, 0x51, 0x2F, 0x59, 0x4F, 0x72, 0x12, 0xAB, 0x97, 0xCC, 0x9B, 0xD4, 0xDC, 0x01, 0xCC, 0x9B, 0x93, 0xCC, 0xDB, 0xC4, 0x9A, 0xB4, 0x99, 0xA4, 0x78, 0x8C, 0x77, 0x84, 0xD8, 0x85, 0xBA, 0x86, 0x5C, 0x76, 0x9D, 0x66, 0x9C, 0x4E, 0x9C, 0x3E, 0xDC, 0x37, 0x1D, 0x2F, 0x5E, 0x2F, 0x7E, 0x27, 0x7E, 0x1F, 0x5D, 0x27, 0x5D, 0x27, 0x5E, 0x2F, 0x5E, 0x02, 0x37, 0x5E, 0x81, 0x37, 0x7E, 0x2F, 0x7E, 0x01, 0x27, 0x9E, 0x80, 0x1F, 0x9F, 0x01, 0x17, 0x9E, 0x82, 0x0F, 0x9E, 0x0F, 0xBF, 0x07, 0xBF, 0x04, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x05, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x08, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x85, 0x0F, 0xBF, 0x0F, 0xBE, 0x17, 0xDE, 0x0F, 0x9D, 0x07, 0x3C, 0x06, 0xFB, 0x01, 0x06, 0xDA, 0x01, 0x06, 0xBA, 0x85, 0x06, 0xDA, 0x06, 0xBA, 0x06, 0xDA, 0x06, 0xBA, 0x06, 0xDA, 0x06, 0xB9, 0x03, 0x06, 0x99, 0x01, 0x06, 0x79, 0x85, 0x06, 0x7A, 0x06, 0x5A, 0x06, 0x59, 0x06, 0x5A, 0x06, 0x3A, 0x06, 0x19, 0x01, 0x06, 0x1A, 0x02, 0x05, 0xFA, 0x82, 0x05, 0xDA, 0x05, 0xFB, 0x05, 0xDB, 0x03, 0x05, 0xBB, 0x80, 0x05, 0x9B, 0x02, 0x05, 0x7C, 0x01, 0x05, 0x5C, 0x80, 0x05, 0x5D, 0x01, 0x05, 0x3D, 0x01, 0x05, 0x1D, 0x01, 0x04, 0xFD, 0x80, 0x04, 0xFE, 0x02, 0x04, 0xDE, 0x80, 0x04, 0xBE, 0x03, 0x04, 0x9E, 0x80, 0x04, 0x9F, 0x02, 0x04, 0x7E, 0x02, 0x04, 0x5F, 0x04, 0x04, 0x3F, 0x01, 0x04, 0x1F, 0x81, 0x04, 0x3F, 0x04, 0x1F, 0x03, 0x04, 0x3F, 0x01, 0x04, 0x1F, 0x80, 0x04, + 0x3F, 0x04, 0x04, 0x1F, 0x02, 0x03, 0xFF, 0x85, 0x03, 0xDF, 0x03, 0xBF, 0x03, 0x9F, 0x03, 0x7F, 0x03, 0x5F, 0x03, 0x3F, 0x01, 0x03, 0x1F, 0x01, 0x02, 0xDF, 0x82, 0x02, 0xBF, 0x02, 0x5F, 0x02, 0x3F, 0x01, 0x01, 0xFF, 0x02, 0x01, 0xDF, 0x01, 0x01, 0xBE, 0x8E, 0x01, 0x9E, 0x09, 0x9D, 0x09, 0x9C, 0x11, 0x7C, 0x21, 0xBB, 0x29, 0x99, 0x5A, 0xFD, 0x6B, 0x7C, 0x5B, 0x9B, 0x53, 0xFA, 0x4C, 0xDB, 0x4E, 0x5F, 0x3E, 0xDF, 0x2F, 0x3F, 0x17, 0x5F, 0x04, 0x0F, 0x7F, 0x8C, 0x17, 0x7F, 0x1F, 0x7F, 0x2F, 0x3F, 0x47, 0x1F, 0x56, 0x9E, 0x86, 0x7F, 0x6C, 0x57, 0x72, 0xF3, 0x92, 0x93, 0xBA, 0xD5, 0xC2, 0x74, 0xCA, 0x13, 0xD2, 0x14, 0x02, 0xD1, 0xF4, 0x01, 0xD2, 0x14, 0x88, 0xD2, 0x34, 0xCA, 0x35, 0xC2, 0x55, 0xC2, 0xD7, 0x91, 0xF4, 0x58, 0xCF, 0x51, 0x51, 0x49, 0x51, 0x41, 0x51, 0x02, 0x41, 0x72, 0x81, 0x39, 0x71, 0x39, 0x72, 0x01, 0x39, 0x71, 0x04, 0x31, 0x51, 0x80, 0x31, 0x30, 0x02, 0x29, 0x30, 0x01, 0x29, 0x51, 0x85, 0x21, 0x32, 0x21, 0x53, 0x11, 0x53, 0x11, 0x95, 0x1A, 0x39, 0x09, 0xF9, 0x01, 0x09, 0xB9, 0x81, 0x01, 0xB9, 0x01, 0xBA, 0x02, 0x01, 0xDA, 0x88, 0x09, 0xDA, 0x09, 0xD9, 0x11, 0xD8, 0x09, 0x76, 0x11, 0x54, 0x19, 0x54, 0x19, 0x33, 0x19, 0x32, 0x19, 0x11, 0x02, 0x19, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x0B, + 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x87, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, + 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x51, 0x87, 0x19, 0x31, 0x19, 0x53, 0x11, 0x33, 0x11, 0x75, 0x11, 0x97, 0x09, 0xB8, 0x11, 0xF9, 0x09, 0xDA, 0x05, 0x01, 0xDA, 0x82, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0x09, 0xD8, 0x85, 0x09, 0x96, 0x11, 0x75, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x30, 0x09, 0x21, 0x10, 0x80, 0x29, 0x30, 0x31, 0x21, 0x10, 0x80, 0x21, 0x30, 0x1A, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x0B, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x51, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x89, 0x19, 0x12, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x33, 0x01, 0x19, 0x32, 0x82, 0x21, 0x31, 0x19, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, + 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x03, 0x29, 0x10, 0x87, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x82, 0x11, 0x54, 0x11, 0x95, 0x1A, 0x17, 0x03, 0x19, 0xF7, 0x80, 0x22, 0x18, 0x02, 0x1A, 0x17, 0x85, 0x19, 0xF6, 0x21, 0xD6, 0x19, 0x73, 0x19, 0x32, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x07, 0x21, 0x10, 0x87, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, + 0x21, 0x0F, 0x86, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x08, 0x21, 0x10, 0x02, 0x29, 0x30, 0x06, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x09, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x50, 0x04, 0x29, 0x30, 0x80, 0x31, 0x30, 0x01, 0x31, 0x51, 0x01, 0x31, 0x71, 0x03, 0x31, 0x51, 0x88, 0x39, 0x71, 0x31, 0x71, 0x39, 0x71, 0x39, 0x72, 0x39, 0x71, 0x41, 0x72, 0x39, 0x72, 0x41, 0x71, 0x41, 0x91, 0x01, 0x39, 0x71, 0x81, 0x41, 0x71, 0x41, 0x92, 0x01, 0x49, 0xB2, 0x80, 0x41, 0x71, 0x01, 0x49, 0x71, 0x01, 0x51, 0x91, 0x9C, 0x59, 0x91, 0x51, 0x71, 0x51, 0x2F, 0x48, 0xCE, 0x59, 0x4F, 0x8A, 0xB5, 0xB3, 0xB8, 0xCC, 0x7B, 0xD4, 0xBB, 0xD4, 0xDB, 0xD4, 0xBB, 0xD4, 0xDB, 0xCC, 0xDB, 0xBC, 0xBA, 0xAC, 0x98, 0x94, 0x57, 0x84, 0x77, 0x7D, 0x39, 0x7E, 0x1B, 0x76, 0x7C, 0x66, 0x9C, 0x4E, 0x9C, 0x3E, 0xBC, 0x36, 0xDD, 0x2F, 0x5E, 0x27, 0x9E, 0x1F, 0x9E, 0x17, 0x7E, 0x0F, 0x7E, 0x01, 0x17, 0x9E, 0x82, 0x1F, 0x9E, 0x1F, + 0x7E, 0x27, 0x9E, 0x01, 0x27, 0x7E, 0x87, 0x1F, 0x7E, 0x1F, 0x9E, 0x17, 0x9E, 0x0F, 0x9E, 0x0F, 0xBE, 0x0F, 0xBF, 0x07, 0xBE, 0x0F, 0xBF, 0x05, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x09, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x88, 0x0F, 0xBF, 0x0F, 0xBE, 0x17, 0xBE, 0x1F, 0xDE, 0x17, 0x7D, 0x0F, 0x1B, 0x0E, 0xFA, 0x06, 0xDA, 0x06, 0xBA, 0x01, 0x06, 0xB9, 0x81, 0x06, 0xBA, 0x06, 0xDA, 0x02, 0x06, 0xD9, 0x80, 0x06, 0xB9, 0x03, 0x06, 0x99, 0x03, 0x06, 0x79, 0x01, 0x06, 0x59, 0x03, 0x06, 0x39, 0x80, 0x06, 0x19, 0x02, 0x05, 0xF9, 0x80, 0x05, 0xFA, 0x02, 0x05, 0xDA, 0x82, 0x05, 0xBA, 0x05, 0xBB, 0x05, 0x9B, 0x01, 0x05, 0x7B, 0x80, 0x05, 0x7C, 0x02, 0x05, 0x5C, 0x80, 0x05, 0x3C, 0x01, 0x05, 0x1C, 0x80, 0x05, 0x1D, 0x01, 0x04, 0xFD, 0x02, 0x04, 0xDD, 0x02, 0x04, 0xBE, 0x02, 0x04, 0x9E, 0x02, 0x04, 0x7E, 0x80, 0x04, 0x5E, 0x01, 0x04, 0x5F, 0x04, 0x04, 0x3F, 0x0A, 0x04, 0x1F, 0x04, 0x03, 0xFF, 0x02, 0x03, 0xDF, 0x02, 0x03, 0xBF, 0x01, 0x03, 0x7F, 0x80, 0x03, 0x5F, 0x01, 0x03, 0x3F, 0x88, 0x03, 0x1F, 0x02, 0xFF, 0x02, 0xDF, 0x02, 0x9F, 0x02, 0x7F, 0x02, 0x5F, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x02, 0x01, 0xDF, 0x80, 0x01, 0xBF, 0x01, 0x01, 0x9E, 0x01, 0x09, 0x9D, 0x8B, 0x11, 0x7B, 0x21, 0x9A, 0x31, 0xB9, 0x73, 0xBF, 0x6B, 0x9C, 0x5B, 0xDB, 0x4C, 0x5B, 0x45, 0x7D, 0x46, 0xBF, 0x2E, 0xFF, 0x1F, 0x3F, + 0x17, 0x5F, 0x01, 0x0F, 0x7F, 0x8E, 0x07, 0x7F, 0x0F, 0x9F, 0x0F, 0x7F, 0x17, 0x9F, 0x27, 0x9F, 0x37, 0x3F, 0x4E, 0xFE, 0x6E, 0x9E, 0x86, 0x1E, 0x6B, 0x95, 0x7A, 0xD3, 0xA2, 0xD4, 0xBA, 0x94, 0xC2, 0x33, 0xCA, 0x13, 0x01, 0xD2, 0x14, 0x01, 0xD1, 0xF3, 0x8A, 0xD1, 0xF4, 0xD2, 0x14, 0xD2, 0x35, 0xC2, 0x34, 0xBA, 0x55, 0xC2, 0xF8, 0x81, 0x92, 0x58, 0xF0, 0x51, 0x31, 0x49, 0x51, 0x41, 0x52, 0x01, 0x41, 0x72, 0x01, 0x39, 0x72, 0x01, 0x39, 0x71, 0x02, 0x31, 0x51, 0x84, 0x31, 0x31, 0x31, 0x51, 0x31, 0x31, 0x31, 0x30, 0x31, 0x51, 0x02, 0x29, 0x51, 0x85, 0x21, 0x52, 0x21, 0x53, 0x11, 0x53, 0x19, 0xD6, 0x11, 0xF8, 0x09, 0xF9, 0x01, 0x09, 0xB9, 0x8A, 0x01, 0xB9, 0x09, 0xDA, 0x01, 0xDA, 0x09, 0xDA, 0x09, 0xFA, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0x55, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x10, 0x03, 0x21, 0x30, 0x80, 0x29, 0x50, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x07, 0x21, 0x10, 0x8B, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, + 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, + 0x30, 0x01, 0x21, 0x51, 0x87, 0x19, 0x31, 0x19, 0x52, 0x11, 0x33, 0x11, 0x55, 0x11, 0x97, 0x11, 0xD8, 0x11, 0xFA, 0x09, 0xFA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x89, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xF9, 0x09, 0xD9, 0x09, 0xB7, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x81, 0x29, 0x10, 0x20, 0xEF, 0x04, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x20, 0xEF, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x20, 0xEF, 0x04, 0x21, 0x10, 0x80, 0x20, 0xF0, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x20, 0xEF, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x0A, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x09, 0x21, 0x10, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, + 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x51, 0x01, 0x21, 0x31, 0x85, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF7, 0x01, 0x19, 0xF7, 0x83, 0x19, 0x95, 0x11, 0x54, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x10, 0x06, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x0A, 0x21, 0x10, 0x02, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x87, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x22, 0x17, 0x22, 0x38, 0x11, 0xD7, 0x11, 0xB7, 0x03, 0x11, 0xB6, 0x80, + 0x11, 0xD6, 0x01, 0x19, 0xF7, 0x85, 0x19, 0xD6, 0x19, 0x94, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x8D, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x05, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x05, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x21, 0x10, 0x08, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x08, 0x29, 0x30, 0x01, 0x29, 0x50, 0x04, 0x29, 0x30, 0x80, 0x31, 0x71, 0x02, 0x31, 0x51, 0x81, 0x31, 0x30, 0x31, 0x50, 0x01, 0x31, 0x51, 0x01, 0x39, 0x71, 0x03, 0x39, 0x51, 0x81, 0x39, 0x71, 0x39, 0x51, 0x01, 0x41, 0x71, 0x80, 0x39, 0x31, 0x01, 0x41, 0x71, 0x82, 0x41, 0x91, 0x49, 0x92, 0x49, 0xB2, 0x02, 0x49, 0x71, 0x01, 0x51, 0x91, 0x87, 0x51, 0x50, 0x51, 0x2F, 0x50, 0xEE, 0x59, 0x0F, 0x79, 0xF2, + 0xA3, 0x36, 0xC4, 0x1A, 0xCC, 0x9B, 0x01, 0xD4, 0x9B, 0x80, 0xD4, 0x9A, 0x01, 0xD4, 0xDB, 0x8E, 0xCC, 0xFA, 0xBC, 0xB9, 0x9C, 0x57, 0x8C, 0x97, 0x85, 0x39, 0x8E, 0x3C, 0x7E, 0x9D, 0x66, 0xBD, 0x56, 0xBD, 0x46, 0xFD, 0x37, 0x1D, 0x2F, 0x5E, 0x2F, 0x9F, 0x1F, 0x9F, 0x17, 0x9E, 0x01, 0x0F, 0xBE, 0x83, 0x0F, 0xDF, 0x07, 0x9E, 0x0F, 0xBE, 0x0F, 0x9E, 0x02, 0x17, 0x9E, 0x84, 0x17, 0x9F, 0x17, 0xBF, 0x0F, 0xBF, 0x0F, 0xBE, 0x07, 0xBE, 0x01, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x04, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x0B, 0x07, 0xDF, 0x0C, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x81, 0x0F, 0xDF, 0x0F, 0xBE, 0x01, 0x1F, 0x9E, 0x85, 0x2F, 0x9E, 0x1F, 0x1B, 0x16, 0xDA, 0x16, 0xBA, 0x16, 0xDA, 0x0E, 0xB9, 0x02, 0x06, 0xB9, 0x03, 0x06, 0xD9, 0x01, 0x06, 0xB8, 0x05, 0x06, 0x98, 0x80, 0x06, 0x78, 0x02, 0x06, 0x58, 0x82, 0x06, 0x38, 0x06, 0x58, 0x06, 0x38, 0x02, 0x06, 0x18, 0x02, 0x05, 0xF9, 0x81, 0x05, 0xD9, 0x05, 0xDA, 0x01, 0x05, 0xBA, 0x80, 0x05, 0x9A, 0x01, 0x05, 0x9B, 0x01, 0x05, 0x7B, 0x82, 0x05, 0x7C, 0x05, 0x5C, 0x05, 0x3C, 0x02, 0x05, 0x1C, 0x03, 0x04, 0xFD, 0x81, 0x04, 0xDD, 0x04, 0xDE, 0x01, 0x04, 0xBE, 0x02, 0x04, 0x9E, 0x01, 0x04, 0x7E, 0x01, 0x04, 0x5E, 0x80, 0x04, 0x3E, 0x02, 0x04, 0x3F, 0x04, 0x04, 0x1F, 0x05, 0x03, 0xFF, 0x05, 0x03, 0xDF, 0x01, 0x03, 0xBF, 0x82, 0x03, 0xDF, 0x03, 0x9F, 0x03, 0xBF, 0x01, 0x03, 0x9F, 0x01, 0x03, 0x7F, 0x01, 0x03, 0x5F, 0x80, 0x03, 0x3F, 0x01, 0x03, + 0x1F, 0x85, 0x02, 0xFF, 0x02, 0xDF, 0x02, 0xBF, 0x02, 0x9F, 0x02, 0x7F, 0x02, 0x3F, 0x01, 0x02, 0x1F, 0x81, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x02, 0x01, 0x9E, 0x9E, 0x09, 0x9D, 0x11, 0x7C, 0x21, 0xBC, 0x21, 0x59, 0x52, 0xBC, 0x6B, 0x9D, 0x6C, 0x1E, 0x54, 0x1B, 0x3C, 0xBB, 0x4E, 0x5F, 0x36, 0xBF, 0x27, 0x1F, 0x17, 0x1F, 0x0F, 0x7F, 0x0F, 0x9F, 0x07, 0x9F, 0x0F, 0xBF, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x9F, 0x27, 0x7F, 0x37, 0x1E, 0x56, 0xBE, 0x76, 0x9F, 0x7D, 0x5B, 0x63, 0x13, 0x7A, 0x72, 0xAA, 0xB4, 0xBA, 0x74, 0xCA, 0x33, 0xD2, 0x34, 0x04, 0xD1, 0xF3, 0x89, 0xD2, 0x14, 0xCA, 0x34, 0xC2, 0x35, 0xBA, 0x55, 0xBA, 0xD7, 0x69, 0x10, 0x58, 0xF0, 0x51, 0x31, 0x49, 0x31, 0x41, 0x51, 0x01, 0x39, 0x51, 0x02, 0x39, 0x71, 0x04, 0x31, 0x51, 0x01, 0x31, 0x31, 0x80, 0x31, 0x51, 0x02, 0x29, 0x51, 0x8A, 0x21, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0x95, 0x1A, 0x18, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0x99, 0x09, 0xB9, 0x09, 0xDA, 0x09, 0xFA, 0x01, 0x09, 0xD9, 0x84, 0x09, 0xB8, 0x11, 0xD7, 0x11, 0x75, 0x11, 0x13, 0x19, 0x12, 0x01, 0x19, 0x11, 0x81, 0x21, 0x11, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, + 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x86, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, + 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x8A, 0x21, 0x50, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x11, 0x12, 0x19, 0x54, 0x11, 0x75, 0x11, 0x97, 0x11, 0xD8, 0x09, 0xD9, 0x01, 0xDA, 0x02, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x87, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x11, 0x05, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x17, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x0D, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x09, 0x21, 0x10, 0x80, 0x21, 0x30, 0x07, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, + 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x08, 0x21, 0x30, 0x87, 0x21, 0x31, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x19, 0x12, 0x11, 0x32, 0x11, 0x33, 0x11, 0x95, 0x01, 0x19, 0xF7, 0x85, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x02, 0x21, 0x31, 0x05, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x05, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x19, + 0x95, 0x22, 0x18, 0x19, 0xF7, 0x01, 0x11, 0x96, 0x80, 0x11, 0x75, 0x01, 0x09, 0x75, 0x87, 0x09, 0x55, 0x09, 0x95, 0x11, 0xD7, 0x1A, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x74, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x02, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x08, 0x29, 0x30, 0x80, 0x31, 0x51, 0x01, 0x31, 0x50, 0x81, 0x31, 0x51, 0x31, 0x50, 0x01, + 0x31, 0x51, 0x80, 0x31, 0x30, 0x02, 0x31, 0x51, 0x81, 0x39, 0x51, 0x39, 0x71, 0x02, 0x39, 0x50, 0x01, 0x39, 0x51, 0x80, 0x39, 0x31, 0x01, 0x41, 0x51, 0x80, 0x49, 0x71, 0x02, 0x49, 0x91, 0x80, 0x49, 0x71, 0x02, 0x49, 0x50, 0x9C, 0x51, 0x50, 0x49, 0x0F, 0x48, 0xCD, 0x50, 0xEE, 0x69, 0xB1, 0x9A, 0xF5, 0xBB, 0xF9, 0xCC, 0x3A, 0xD4, 0x7A, 0xD4, 0x5A, 0xD4, 0x7A, 0xD4, 0x9A, 0xD4, 0xBA, 0xDC, 0xFB, 0xD4, 0xFB, 0xCD, 0x1A, 0xB4, 0x98, 0x8C, 0x15, 0x84, 0xB7, 0x8D, 0xBA, 0x7E, 0x5C, 0x6E, 0xBD, 0x56, 0xBD, 0x46, 0xDD, 0x3F, 0x1E, 0x2F, 0x3D, 0x27, 0x9F, 0x1F, 0x9F, 0x17, 0xBF, 0x01, 0x0F, 0xBF, 0x80, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x03, 0x0F, 0xBF, 0x81, 0x0F, 0x9F, 0x0F, 0xBF, 0x01, 0x07, 0xBF, 0x09, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x83, 0x07, 0xDF, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xFF, 0x0A, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x07, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x01, 0x0F, 0xDF, 0x89, 0x17, 0xBE, 0x27, 0x7D, 0x27, 0x5D, 0x2F, 0x1C, 0x26, 0xBA, 0x26, 0x9A, 0x26, 0x99, 0x2F, 0x1B, 0x1E, 0xFA, 0x0E, 0xD9, 0x02, 0x06, 0xB9, 0x80, 0x06, 0xD9, 0x03, 0x06, 0xD8, 0x01, 0x06, 0xB8, 0x03, 0x06, 0x98, 0x8A, 0x06, 0x78, 0x06, 0x77, 0x06, 0x78, 0x06, 0x57, 0x06, 0x58, 0x06, 0x57, 0x06, 0x37, 0x06, 0x17, 0x06, 0x38, 0x06, 0x17, 0x06, 0x18, 0x01, 0x05, 0xF8, 0x84, 0x05, 0xF9, 0x05, 0xD8, 0x05, 0xD9, 0x05, 0xB9, 0x05, 0xBA, 0x01, 0x05, 0x9A, 0x81, 0x05, 0x7A, 0x05, 0x7B, 0x01, 0x05, 0x5B, 0x01, 0x05, 0x3B, 0x80, + 0x05, 0x3C, 0x01, 0x05, 0x1C, 0x01, 0x04, 0xFC, 0x80, 0x04, 0xFD, 0x01, 0x04, 0xDD, 0x80, 0x04, 0xBE, 0x01, 0x04, 0x9E, 0x02, 0x04, 0x7E, 0x02, 0x04, 0x5E, 0x03, 0x04, 0x3E, 0x80, 0x04, 0x3F, 0x03, 0x04, 0x1F, 0x02, 0x03, 0xFF, 0x04, 0x03, 0xDF, 0x05, 0x03, 0xBF, 0x03, 0x03, 0x9F, 0x01, 0x03, 0x7F, 0x01, 0x03, 0x5F, 0x80, 0x03, 0x3F, 0x02, 0x03, 0x1F, 0x80, 0x02, 0xFF, 0x01, 0x02, 0xDF, 0x83, 0x02, 0x9F, 0x02, 0x7F, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x92, 0x01, 0xBE, 0x01, 0x9E, 0x09, 0x9E, 0x09, 0x9D, 0x11, 0x5B, 0x21, 0x9B, 0x29, 0x79, 0x6B, 0x7F, 0x63, 0x9D, 0x5C, 0x1D, 0x3C, 0x3B, 0x3D, 0x3D, 0x4E, 0xFF, 0x2E, 0xFF, 0x1F, 0x3F, 0x17, 0x5F, 0x0F, 0x7F, 0x0F, 0x9F, 0x07, 0x9F, 0x01, 0x0F, 0x9F, 0x90, 0x17, 0x9F, 0x1F, 0x7F, 0x2F, 0x5F, 0x3E, 0xFE, 0x5E, 0x9E, 0x86, 0x5E, 0x74, 0x58, 0x72, 0xD3, 0x92, 0x93, 0xBA, 0xB5, 0xC2, 0x33, 0xCA, 0x33, 0xC9, 0xF3, 0xD2, 0x13, 0xD1, 0xF3, 0xD9, 0xF4, 0xD1, 0xF3, 0x01, 0xD2, 0x14, 0x88, 0xCA, 0x14, 0xC2, 0x34, 0xBA, 0x96, 0xB2, 0xD7, 0x58, 0xAF, 0x59, 0x11, 0x51, 0x31, 0x49, 0x52, 0x41, 0x51, 0x02, 0x39, 0x51, 0x85, 0x39, 0x72, 0x31, 0x51, 0x39, 0x71, 0x31, 0x71, 0x31, 0x51, 0x31, 0x71, 0x02, 0x31, 0x51, 0x02, 0x29, 0x31, 0x89, 0x21, 0x31, 0x21, 0x32, 0x19, 0x33, 0x19, 0x74, 0x19, 0xD7, 0x19, 0xF8, 0x19, 0xF9, 0x09, 0xB8, 0x09, 0x98, 0x09, 0xB9, 0x02, 0x09, 0xB8, 0x83, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x53, 0x19, 0x32, 0x01, 0x19, 0x11, + 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x8A, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x04, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x0C, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, + 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x07, 0x21, 0x30, 0x8B, 0x19, 0x10, 0x21, 0x10, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x34, 0x11, 0x75, 0x11, 0x97, 0x11, 0xD9, 0x11, 0xFA, 0x01, 0xDA, 0x01, 0xBA, 0x03, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x01, 0x09, 0xD8, 0x84, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x09, 0x21, 0x10, 0x01, 0x29, 0x10, 0x08, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, + 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x12, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x10, 0x21, 0x30, 0x02, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x11, 0x12, 0x88, 0x09, 0x33, 0x11, 0x95, 0x19, 0xF7, 0x22, 0x18, 0x1A, 0x17, 0x11, 0xB5, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x84, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x83, 0x29, + 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x09, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x88, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x19, 0x33, 0x11, 0x33, 0x21, 0xD6, 0x19, 0xF7, 0x01, 0x11, 0x96, 0x82, 0x09, 0x76, 0x09, 0x55, 0x09, 0x54, 0x01, 0x09, 0x34, 0x81, 0x09, 0x75, 0x11, 0xB6, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x30, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, + 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x06, 0x29, 0x2F, 0x06, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x31, 0x50, 0x81, 0x31, 0x51, 0x31, 0x30, 0x01, 0x31, 0x50, 0x01, 0x39, 0x51, 0x01, 0x39, 0x50, 0x80, 0x39, 0x30, 0x01, 0x39, 0x50, 0x81, 0x41, 0x71, 0x41, 0x50, 0x03, 0x49, 0x71, 0x02, 0x49, 0x50, 0x01, 0x49, 0x0F, 0x86, 0x48, 0xCE, 0x50, 0xEE, 0x59, 0x2E, 0x79, 0xF1, 0xA3, 0x15, 0xC4, 0x19, 0xD4, 0x7B, 0x02, 0xD4, 0x5A, 0x93, 0xDC, 0x7A, 0xDC, 0x9A, 0xD4, 0x9A, 0xD4, 0xBA, 0xD4, 0xDA, 0xCC, 0xBA, 0xBC, 0x98, 0x9C, 0x56, 0x84, 0x56, 0x8D, 0x59, 0x8E, 0x3C, 0x76, 0x5C, 0x66, 0x9D, 0x4E, 0xDD, 0x3F, 0x1E, 0x37, 0x5E, 0x27, 0x7F, 0x1F, 0x9F, 0x17, 0x9F, 0x0F, 0x9E, 0x01, 0x0F, 0xBF, 0x80, 0x07, 0xBF, 0x06, 0x07, 0xDF, 0x04, 0x07, 0xBF, 0x0C, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x0A, 0x07, 0xDF, 0x82, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x8E, 0x07, 0xFF, 0x0F, 0xDF, 0x17, 0xDE, 0x1F, 0x9E, 0x2F, 0x5D, 0x2E, 0xFC, 0x2E, 0x7A, 0x2E, 0x18, 0x2E, 0x38, 0x36, 0x79, 0x3F, 0x1B, 0x2E, 0xD9, 0x1E, 0xF9, 0x0E, 0xD9, 0x06, 0xB8, 0x01, 0x06, 0xD8, 0x01, 0x06, 0xF8, 0x80, + 0x06, 0xD8, 0x02, 0x06, 0xD7, 0x02, 0x06, 0xB7, 0x01, 0x06, 0x97, 0x03, 0x06, 0x77, 0x81, 0x06, 0x56, 0x06, 0x36, 0x02, 0x06, 0x37, 0x02, 0x06, 0x17, 0x81, 0x06, 0x18, 0x05, 0xF8, 0x01, 0x05, 0xD8, 0x83, 0x05, 0xD9, 0x05, 0xB9, 0x05, 0x99, 0x05, 0x9A, 0x01, 0x05, 0x7A, 0x81, 0x05, 0x5A, 0x05, 0x5B, 0x01, 0x05, 0x3B, 0x81, 0x05, 0x3C, 0x05, 0x1C, 0x01, 0x04, 0xFC, 0x81, 0x04, 0xDC, 0x04, 0xDD, 0x01, 0x04, 0xBD, 0x80, 0x04, 0xBE, 0x01, 0x04, 0x9E, 0x01, 0x04, 0x7E, 0x03, 0x04, 0x5E, 0x81, 0x04, 0x3F, 0x04, 0x3E, 0x01, 0x04, 0x3F, 0x82, 0x04, 0x1F, 0x04, 0x1E, 0x04, 0x1F, 0x02, 0x03, 0xFF, 0x02, 0x03, 0xDF, 0x05, 0x03, 0xBF, 0x03, 0x03, 0x9F, 0x04, 0x03, 0x7F, 0x80, 0x03, 0x5F, 0x01, 0x03, 0x3F, 0x01, 0x03, 0x1F, 0x01, 0x02, 0xFF, 0x87, 0x02, 0xDF, 0x02, 0xBF, 0x02, 0x9F, 0x02, 0x7F, 0x02, 0x5F, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x02, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x91, 0x01, 0x9E, 0x01, 0xBE, 0x09, 0xBE, 0x11, 0x9D, 0x19, 0x9C, 0x21, 0x7A, 0x31, 0xFA, 0x5B, 0x5D, 0x5B, 0xDD, 0x44, 0x1B, 0x34, 0x9B, 0x46, 0x3F, 0x36, 0xDF, 0x27, 0x1F, 0x17, 0x5F, 0x0F, 0x7F, 0x0F, 0x9F, 0x0F, 0xBF, 0x02, 0x0F, 0x9F, 0x8C, 0x17, 0x9F, 0x27, 0x7F, 0x37, 0x1E, 0x4E, 0xDE, 0x6E, 0x9E, 0x7D, 0xDD, 0x6B, 0xB6, 0x72, 0x52, 0xA2, 0xB4, 0xBA, 0x74, 0xC1, 0xF3, 0xD2, 0x13, 0xC9, 0xF3, 0x01, 0xD1, 0xF3, 0x8C, 0xDA, 0x14, 0xD2, 0x14, 0xC9, 0xF3, 0xC9, 0xF4, 0xCA, 0x14, 0xC2, 0x55, 0xC2, 0xD7, 0xA2, 0x76, 0x60, 0xD0, 0x59, 0x31, 0x49, 0x31, 0x49, + 0x52, 0x41, 0x72, 0x02, 0x39, 0x51, 0x80, 0x39, 0x71, 0x05, 0x31, 0x51, 0x01, 0x31, 0x31, 0x01, 0x29, 0x51, 0x86, 0x29, 0x31, 0x21, 0x31, 0x19, 0x12, 0x19, 0x33, 0x21, 0xB6, 0x22, 0x18, 0x22, 0x19, 0x01, 0x1A, 0x19, 0x01, 0x12, 0x19, 0x84, 0x12, 0x18, 0x19, 0xD7, 0x11, 0x75, 0x19, 0x74, 0x11, 0x32, 0x01, 0x19, 0x11, 0x80, 0x21, 0x11, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x09, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, + 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x0A, 0x21, 0x30, 0x8C, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD9, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xBA, 0x05, 0x01, 0xDA, 0x8B, 0x01, 0xD9, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xB6, 0x11, 0x74, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x2F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x0C, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, + 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x08, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x29, 0x30, 0x07, 0x21, 0x30, 0x80, 0x29, 0x51, 0x0A, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x09, 0x54, 0x11, 0xB6, 0x19, 0xD7, 0x01, 0x1A, 0x17, 0x84, 0x11, 0xB5, 0x11, 0x94, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x29, 0x50, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x06, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x05, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, + 0x04, 0x29, 0x0F, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x75, 0x19, 0xD7, 0x11, 0xB7, 0x02, 0x09, 0x76, 0x81, 0x09, 0x75, 0x09, 0x34, 0x01, 0x09, 0x54, 0x81, 0x09, 0x75, 0x11, 0xB6, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xD7, 0x11, 0x74, 0x19, 0x33, 0x19, 0x32, 0x19, 0x31, 0x04, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x08, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, + 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x31, 0x30, 0x31, 0x50, 0x31, 0x30, 0x02, 0x31, 0x50, 0x01, 0x31, 0x30, 0x04, 0x39, 0x30, 0x02, 0x41, 0x50, 0x81, 0x49, 0x50, 0x49, 0x30, 0x02, 0x49, 0x2F, 0x8A, 0x49, 0x0E, 0x40, 0xCD, 0x40, 0xAD, 0x48, 0xAD, 0x61, 0x4F, 0x8A, 0xB4, 0xB3, 0x97, 0xCC, 0x3A, 0xD4, 0x5A, 0xD4, 0x7A, 0xDC, 0x5A, 0x01, 0xDC, 0x59, 0x94, 0xDC, 0x79, 0xDC, 0x9A, 0xDC, 0x99, 0xDC, 0x9A, 0xD4, 0xB9, 0xCC, 0xB9, 0xCC, 0xFA, 0xB4, 0x98, 0x8C, 0x15, 0x8C, 0xB7, 0x95, 0xBA, 0x86, 0x3B, 0x6E, 0x5B, 0x56, 0x9C, 0x4E, 0xFD, 0x3F, 0x3E, 0x2F, 0x5E, 0x27, 0x9F, 0x17, 0x9F, 0x0F, 0x9E, 0x0F, 0xBF, 0x02, 0x07, 0xBF, 0x04, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x03, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x07, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x0C, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x05, 0x07, 0xDF, 0x8F, 0x0F, 0xDE, 0x17, 0xBE, 0x27, 0x7D, 0x2F, 0x3C, 0x2E, 0x9A, 0x36, 0x19, 0x35, 0x97, 0x45, 0xF8, 0x46, 0x38, 0x46, 0x58, 0x3E, 0xB9, 0x26, 0xD9, 0x16, 0xD8, 0x0E, 0xD8, 0x06, 0xD8, 0x06, 0xF8, 0x04, 0x06, + 0xF7, 0x01, 0x06, 0xD6, 0x02, 0x06, 0xB6, 0x01, 0x06, 0x96, 0x80, 0x06, 0xB6, 0x01, 0x06, 0x96, 0x01, 0x06, 0x76, 0x01, 0x06, 0x56, 0x03, 0x06, 0x36, 0x81, 0x06, 0x16, 0x06, 0x17, 0x01, 0x05, 0xF7, 0x81, 0x05, 0xD7, 0x05, 0xD8, 0x01, 0x05, 0xB8, 0x82, 0x05, 0x98, 0x05, 0x99, 0x05, 0x79, 0x02, 0x05, 0x5A, 0x80, 0x05, 0x3B, 0x01, 0x05, 0x1B, 0x80, 0x04, 0xFB, 0x01, 0x04, 0xFC, 0x80, 0x04, 0xDC, 0x01, 0x04, 0xBD, 0x80, 0x04, 0x9D, 0x01, 0x04, 0x7E, 0x80, 0x04, 0x5D, 0x03, 0x04, 0x5E, 0x02, 0x04, 0x3E, 0x82, 0x04, 0x3F, 0x04, 0x1E, 0x04, 0x1F, 0x02, 0x03, 0xFF, 0x01, 0x03, 0xDF, 0x01, 0x03, 0xBF, 0x81, 0x03, 0xDF, 0x03, 0xBF, 0x04, 0x03, 0x9F, 0x02, 0x03, 0x7F, 0x03, 0x03, 0x5F, 0x02, 0x03, 0x3F, 0x80, 0x03, 0x1F, 0x02, 0x02, 0xFF, 0x80, 0x02, 0xDF, 0x01, 0x02, 0xBF, 0x82, 0x02, 0x9F, 0x02, 0x7F, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x01, 0x01, 0xFF, 0x02, 0x01, 0xDF, 0xA2, 0x01, 0xBF, 0x01, 0xBE, 0x01, 0x9E, 0x09, 0xBE, 0x09, 0x7D, 0x11, 0x7C, 0x21, 0x9C, 0x19, 0x59, 0x52, 0xFD, 0x53, 0x9D, 0x54, 0x3E, 0x3C, 0x7C, 0x35, 0x1C, 0x46, 0xBF, 0x2E, 0xFF, 0x1F, 0x3F, 0x0F, 0x5F, 0x0F, 0x7F, 0x0F, 0x9F, 0x0F, 0xBF, 0x07, 0x9F, 0x0F, 0x9F, 0x17, 0xBF, 0x1F, 0x9F, 0x2F, 0x5F, 0x3F, 0x1F, 0x4E, 0x9E, 0x76, 0x9F, 0x85, 0x5B, 0x62, 0xF3, 0x8A, 0x93, 0xAA, 0x94, 0xBA, 0x34, 0xCA, 0x13, 0xD2, 0x13, 0x03, 0xD1, 0xF3, 0x89, 0xC9, 0xF3, 0xD2, 0x14, 0xD2, 0x34, 0xC2, 0x14, 0xC2, 0x55, 0xBA, 0x97, 0x89, 0x93, 0x58, 0xAF, 0x59, 0x31, 0x49, 0x31, + 0x01, 0x41, 0x51, 0x80, 0x39, 0x51, 0x01, 0x39, 0x72, 0x81, 0x39, 0x71, 0x31, 0x71, 0x01, 0x31, 0x51, 0x80, 0x31, 0x50, 0x03, 0x31, 0x51, 0x01, 0x29, 0x31, 0x80, 0x21, 0x31, 0x01, 0x21, 0x32, 0x84, 0x19, 0x53, 0x19, 0x95, 0x19, 0xB6, 0x19, 0xB7, 0x22, 0x38, 0x01, 0x1A, 0x18, 0x83, 0x11, 0xB6, 0x11, 0x54, 0x19, 0x54, 0x11, 0x12, 0x01, 0x19, 0x31, 0x80, 0x21, 0x11, 0x03, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x87, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x17, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, + 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x10, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB8, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xBA, 0x02, 0x01, 0xDA, 0x82, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0x09, 0xD9, 0x87, 0x09, 0xB7, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x29, 0x51, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x05, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x08, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x31, 0x21, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x0D, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, + 0x21, 0x10, 0x87, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x31, 0x21, 0x10, 0x21, 0x11, 0x21, 0x10, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x11, 0x21, 0x10, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x07, 0x21, 0x10, 0x80, 0x21, 0x31, 0x08, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x07, 0x21, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x51, 0x21, 0x30, 0x01, 0x21, 0x51, 0x90, 0x21, 0x72, 0x19, 0x31, 0x19, 0x52, 0x11, 0x12, 0x11, 0x33, 0x09, 0x54, 0x11, 0x95, 0x19, 0xF7, 0x1A, 0x17, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x87, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, + 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x03, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x19, 0xB6, 0x22, 0x18, 0x11, 0x96, 0x02, 0x09, 0x76, 0x8D, 0x11, 0x75, 0x09, 0x54, 0x09, 0x34, 0x09, 0x54, 0x09, 0x55, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x8E, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x50, 0x21, 0x30, 0x29, 0x30, + 0x29, 0x50, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x31, 0x30, 0x01, 0x31, 0x50, 0x01, 0x31, 0x30, 0x80, 0x31, 0x50, 0x03, 0x31, 0x2F, 0x81, 0x39, 0x30, 0x41, 0x70, 0x01, 0x39, 0x0F, 0x01, 0x41, 0x2F, 0x82, 0x41, 0x0F, 0x40, 0xEE, 0x40, 0xCD, 0x02, 0x40, 0xAD, 0x87, 0x48, 0xCD, 0x59, 0x4E, 0x82, 0x73, 0xAB, 0x97, 0xCC, 0x7A, 0xDC, 0xDB, 0xD4, 0x9B, 0xD4, 0x7A, 0x01, 0xD4, 0x59, 0x02, 0xDC, 0x59, 0x02, 0xDC, 0x79, 0x90, 0xD4, 0x79, 0xD4, 0x99, 0xD4, 0xD9, 0xC4, 0xD9, 0x9C, 0x36, 0x8C, 0x76, 0x95, 0x7A, 0x8E, 0x1B, 0x76, 0x3B, 0x66, 0x7C, 0x56, 0xFD, 0x4F, 0x3E, 0x37, 0x5E, 0x27, 0x7E, 0x1F, 0x7E, 0x0F, 0x7E, 0x0F, 0x9E, 0x01, 0x0F, 0xBF, 0x09, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x0F, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x0C, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x07, 0x07, 0xDF, 0x8F, 0x07, 0xDE, 0x0F, 0xBE, 0x17, 0x9D, 0x27, 0x5C, 0x36, 0xFB, 0x36, 0x39, 0x45, 0xF8, 0x3D, 0x15, 0x4D, 0x76, 0x5D, 0xD8, 0x4D, 0xD7, 0x46, 0x58, 0x2E, 0x98, 0x1E, 0xD8, 0x0E, + 0xD8, 0x0E, 0xF7, 0x01, 0x07, 0x17, 0x01, 0x06, 0xF7, 0x05, 0x06, 0xF6, 0x01, 0x06, 0xD5, 0x03, 0x06, 0xB5, 0x80, 0x06, 0x95, 0x03, 0x06, 0x75, 0x02, 0x06, 0x55, 0x01, 0x06, 0x35, 0x80, 0x06, 0x15, 0x01, 0x05, 0xF6, 0x81, 0x05, 0xF7, 0x05, 0xD7, 0x01, 0x05, 0xB7, 0x81, 0x05, 0x97, 0x05, 0x98, 0x01, 0x05, 0x78, 0x80, 0x05, 0x59, 0x01, 0x05, 0x39, 0x83, 0x05, 0x3A, 0x05, 0x1A, 0x05, 0x1B, 0x04, 0xFC, 0x01, 0x04, 0xDC, 0x01, 0x04, 0xBD, 0x81, 0x04, 0x9D, 0x04, 0x7D, 0x01, 0x04, 0x7E, 0x82, 0x04, 0x5E, 0x04, 0x3E, 0x04, 0x5E, 0x01, 0x04, 0x3E, 0x02, 0x04, 0x1E, 0x01, 0x04, 0x1F, 0x80, 0x03, 0xFF, 0x02, 0x03, 0xDF, 0x04, 0x03, 0xBF, 0x01, 0x03, 0x9F, 0x03, 0x03, 0x7F, 0x01, 0x03, 0x5F, 0x04, 0x03, 0x3F, 0x01, 0x03, 0x1F, 0x80, 0x02, 0xFF, 0x03, 0x02, 0xDF, 0x83, 0x02, 0xBF, 0x02, 0x9F, 0x02, 0x7F, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x80, 0x02, 0x1F, 0x01, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x92, 0x01, 0xBF, 0x01, 0xBE, 0x01, 0x9E, 0x01, 0x9D, 0x09, 0x7D, 0x09, 0x7C, 0x19, 0x9C, 0x19, 0x7A, 0x29, 0xFB, 0x53, 0x7E, 0x4B, 0xDE, 0x4C, 0x7E, 0x24, 0x5B, 0x3E, 0x1F, 0x36, 0xDF, 0x1F, 0x1F, 0x17, 0x5F, 0x0F, 0x9F, 0x0F, 0xBF, 0x02, 0x07, 0x9F, 0x91, 0x0F, 0x9F, 0x17, 0x7F, 0x27, 0x9F, 0x2F, 0x3E, 0x47, 0x1F, 0x5E, 0xBE, 0x7E, 0x5E, 0x74, 0x58, 0x72, 0xD3, 0x92, 0x73, 0xB2, 0x74, 0xC2, 0x33, 0xD2, 0x34, 0xD2, 0x13, 0xD1, 0xF3, 0xD1, 0xF4, 0xD1, 0xD3, 0xD1, 0xF3, 0x01, 0xD2, 0x14, 0x86, 0xCA, 0x14, 0xC2, 0x35, 0xC2, 0x76, 0xB2, 0x97, 0x71, + 0x31, 0x58, 0xF0, 0x51, 0x31, 0x01, 0x49, 0x51, 0x82, 0x41, 0x51, 0x41, 0x72, 0x39, 0x51, 0x01, 0x39, 0x71, 0x01, 0x31, 0x51, 0x81, 0x29, 0x30, 0x31, 0x30, 0x01, 0x31, 0x51, 0x82, 0x29, 0x31, 0x29, 0x51, 0x29, 0x31, 0x01, 0x29, 0x51, 0x83, 0x21, 0x32, 0x21, 0x73, 0x21, 0x53, 0x19, 0x33, 0x03, 0x11, 0x33, 0x87, 0x11, 0x32, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x0B, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x0C, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x01, 0x29, + 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x86, 0x19, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB8, 0x12, 0x19, 0x09, 0xF9, 0x01, 0xB9, 0x01, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x02, 0x01, 0xDA, 0x8B, 0x01, 0xD9, 0x0A, 0x19, 0x09, 0xD8, 0x09, 0xB6, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x4F, 0x21, 0x2F, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x02, 0x21, 0x31, 0x01, 0x21, 0x11, 0x01, 0x21, 0x31, 0x05, 0x21, 0x11, 0x81, 0x19, 0x10, 0x21, 0x11, 0x01, 0x19, 0x11, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x19, 0x10, 0x81, 0x19, 0x30, 0x21, 0x30, 0x01, 0x19, 0x30, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x21, 0x11, 0x06, 0x19, 0x11, 0x01, 0x21, 0x11, 0x80, + 0x19, 0x10, 0x02, 0x21, 0x11, 0x03, 0x19, 0x11, 0x01, 0x21, 0x10, 0x85, 0x19, 0x10, 0x21, 0x10, 0x21, 0x11, 0x19, 0x10, 0x21, 0x11, 0x19, 0x10, 0x03, 0x19, 0x11, 0x87, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x21, 0x11, 0x19, 0x11, 0x02, 0x21, 0x11, 0x01, 0x19, 0x11, 0x80, 0x21, 0x11, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x03, 0x19, 0x11, 0x01, 0x21, 0x11, 0x03, 0x19, 0x11, 0x80, 0x21, 0x31, 0x02, 0x19, 0x11, 0x01, 0x19, 0x10, 0x0C, 0x19, 0x11, 0x80, 0x19, 0x10, 0x02, 0x19, 0x11, 0x84, 0x19, 0x10, 0x19, 0x11, 0x19, 0x10, 0x19, 0x11, 0x18, 0xF0, 0x02, 0x19, 0x10, 0x80, 0x19, 0x11, 0x0A, 0x19, 0x10, 0x80, 0x21, 0x30, 0x01, 0x19, 0x10, 0x80, 0x21, 0x30, 0x05, 0x19, 0x10, 0x80, 0x21, 0x11, 0x01, 0x19, 0x11, 0x03, 0x19, 0x10, 0x83, 0x21, 0x10, 0x19, 0x10, 0x21, 0x31, 0x21, 0x11, 0x01, 0x21, 0x31, 0x03, 0x21, 0x51, 0x8D, 0x19, 0x32, 0x19, 0x53, 0x11, 0x32, 0x09, 0x33, 0x09, 0x54, 0x09, 0x95, 0x19, 0xF7, 0x22, 0x38, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, + 0x80, 0x29, 0x30, 0x04, 0x29, 0x10, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x84, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x03, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x85, 0x19, 0x10, 0x19, 0x11, 0x11, 0x12, 0x11, 0x53, 0x19, 0xD6, 0x19, 0xF7, 0x01, 0x11, 0x97, 0x01, 0x09, 0x76, 0x81, 0x09, 0x55, 0x09, 0x54, 0x01, 0x09, 0x34, 0x88, 0x01, 0x55, 0x11, 0xB6, 0x11, 0xD7, 0x1A, 0x18, 0x19, 0xD7, 0x19, 0x95, 0x19, 0x33, 0x19, 0x32, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, + 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x28, 0xEE, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x31, 0x2F, 0x83, 0x31, 0x0F, 0x31, 0x2F, 0x31, 0x0F, 0x31, 0x2F, 0x01, 0x31, 0x0F, 0x02, 0x30, 0xEE, 0x86, 0x31, 0x0E, 0x39, 0x0E, 0x41, 0x2F, 0x41, 0x0E, 0x38, 0xCD, 0x38, 0xAC, 0x30, 0x4B, 0x01, 0x30, 0x2A, 0x8A, 0x38, 0x6B, 0x48, 0xED, 0x61, 0x90, 0x8A, 0xB4, 0xAB, 0xB8, 0xCC, 0x7A, 0xD4, 0xDB, 0xDC, 0xFB, 0xDC, 0xBB, 0xDC, 0xBA, 0xDC, 0x99, 0x04, 0xDC, 0x79, 0x92, 0xE4, 0x79, 0xDC, 0x58, 0xDC, 0x79, 0xDC, 0x99, 0xD4, 0x79, 0xCC, 0xB9, 0xCC, 0xD9, 0xB4, 0x97, 0x9C, 0x36, 0x94, 0xF8, 0x95, 0xBA, 0x7D, 0xFB, 0x6E, 0x3B, 0x5E, 0xBC, 0x4F, 0x1D, 0x3F, 0x3E, 0x2F, 0x5E, 0x27, 0x5E, 0x17, 0x7E, 0x01, 0x0F, 0x9E, 0x80, 0x0F, 0xBF, 0x01, 0x07, 0xBF, 0x17, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x06, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x82, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xFF, 0x0D, 0x07, 0xDF, 0x01, 0x07, 0xDE, 0x8F, 0x07, 0xBE, 0x0F, 0x9D, 0x17, 0x7D, 0x27, 0x3C, 0x3E, + 0xFB, 0x46, 0x59, 0x55, 0xF8, 0x4D, 0x15, 0x54, 0xF5, 0x65, 0x56, 0x5D, 0x76, 0x56, 0x18, 0x3E, 0x78, 0x2E, 0xB8, 0x16, 0xB7, 0x0F, 0x17, 0x02, 0x07, 0x17, 0x02, 0x07, 0x16, 0x01, 0x07, 0x15, 0x01, 0x06, 0xF5, 0x01, 0x06, 0xF4, 0x02, 0x06, 0xD4, 0x01, 0x06, 0xB4, 0x03, 0x06, 0x94, 0x03, 0x06, 0x74, 0x80, 0x06, 0x54, 0x01, 0x06, 0x34, 0x81, 0x06, 0x14, 0x06, 0x15, 0x01, 0x05, 0xF5, 0x80, 0x05, 0xD5, 0x01, 0x05, 0xB6, 0x8D, 0x05, 0x96, 0x05, 0x97, 0x05, 0x77, 0x05, 0x57, 0x05, 0x58, 0x05, 0x59, 0x05, 0x39, 0x05, 0x1A, 0x04, 0xFA, 0x04, 0xFB, 0x04, 0xDB, 0x04, 0xBC, 0x04, 0x9C, 0x04, 0x9D, 0x01, 0x04, 0x7D, 0x82, 0x04, 0x5D, 0x04, 0x3D, 0x04, 0x5E, 0x02, 0x04, 0x3E, 0x03, 0x04, 0x1E, 0x01, 0x03, 0xFF, 0x02, 0x03, 0xDF, 0x03, 0x03, 0xBF, 0x80, 0x03, 0x9F, 0x03, 0x03, 0x7F, 0x03, 0x03, 0x5F, 0x02, 0x03, 0x3F, 0x02, 0x03, 0x1F, 0x01, 0x02, 0xFF, 0x02, 0x02, 0xDF, 0x80, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x80, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x80, 0x02, 0x3F, 0x01, 0x02, 0x1F, 0x95, 0x01, 0xDF, 0x01, 0xFF, 0x01, 0xBF, 0x01, 0xDF, 0x01, 0xBE, 0x01, 0x9E, 0x01, 0x7D, 0x01, 0x9D, 0x09, 0x9D, 0x09, 0x7C, 0x19, 0x9C, 0x09, 0x59, 0x3A, 0xDD, 0x53, 0xFF, 0x44, 0x1D, 0x34, 0x7D, 0x24, 0xFC, 0x3E, 0xBF, 0x27, 0x1F, 0x17, 0x3F, 0x0F, 0x7F, 0x0F, 0x9F, 0x01, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x90, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x7F, 0x37, 0x3F, 0x46, 0xDE, 0x6E, 0xBF, 0x85, 0xDD, 0x73, 0x96, 0x82, 0x73, 0xAA, 0x94, 0xBA, 0x34, 0xCA, 0x34, 0xCA, + 0x13, 0xD1, 0xF3, 0xD1, 0xD3, 0xD1, 0xF3, 0xD1, 0xD3, 0x01, 0xD1, 0xF3, 0x01, 0xCA, 0x14, 0x86, 0xC2, 0x55, 0xBA, 0x76, 0xA2, 0x35, 0x60, 0xD0, 0x58, 0xF0, 0x51, 0x31, 0x49, 0x51, 0x01, 0x41, 0x51, 0x80, 0x39, 0x51, 0x01, 0x39, 0x71, 0x80, 0x31, 0x71, 0x05, 0x31, 0x51, 0x80, 0x29, 0x51, 0x03, 0x29, 0x31, 0x01, 0x21, 0x32, 0x81, 0x21, 0x52, 0x21, 0x32, 0x02, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, + 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x0B, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x30, 0x29, 0x50, 0x21, 0x30, 0x01, 0x19, 0x10, 0x89, 0x19, 0x31, 0x19, 0x11, 0x19, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xD7, 0x11, 0xD9, 0x09, 0xD9, 0x09, 0xB9, 0x01, 0xB9, 0x05, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x85, 0x01, 0xD8, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x53, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x50, 0x06, 0x21, 0x2F, 0x81, 0x19, 0x12, 0x11, 0x11, 0x02, 0x19, 0x32, 0x03, 0x19, 0x11, 0x80, 0x19, 0x32, 0x11, 0x19, 0x11, 0x01, 0x11, 0x11, 0x02, 0x19, 0x11, 0x80, 0x11, 0x11, 0x07, 0x19, 0x11, 0x80, 0x11, 0x11, 0x06, 0x19, 0x11, 0x80, 0x11, 0x11, + 0x0A, 0x19, 0x11, 0x81, 0x19, 0x12, 0x19, 0x11, 0x01, 0x11, 0x11, 0x01, 0x19, 0x11, 0x02, 0x19, 0x12, 0x80, 0x19, 0x11, 0x02, 0x19, 0x12, 0x04, 0x19, 0x11, 0x80, 0x19, 0x32, 0x07, 0x19, 0x12, 0x01, 0x19, 0x32, 0x81, 0x11, 0x12, 0x19, 0x32, 0x0D, 0x19, 0x11, 0x01, 0x11, 0x11, 0x02, 0x19, 0x11, 0x01, 0x11, 0x11, 0x82, 0x10, 0xF1, 0x19, 0x11, 0x10, 0xF1, 0x04, 0x19, 0x11, 0x83, 0x10, 0xF1, 0x11, 0x11, 0x19, 0x11, 0x11, 0x11, 0x03, 0x19, 0x11, 0x81, 0x11, 0x11, 0x19, 0x11, 0x01, 0x11, 0x11, 0x81, 0x19, 0x11, 0x11, 0x11, 0x01, 0x19, 0x11, 0x03, 0x11, 0x11, 0x03, 0x19, 0x11, 0x82, 0x10, 0xF1, 0x19, 0x11, 0x10, 0xF1, 0x03, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x10, 0x21, 0x31, 0x01, 0x19, 0x31, 0x81, 0x19, 0x51, 0x19, 0x52, 0x01, 0x11, 0x32, 0x8D, 0x09, 0x33, 0x09, 0x53, 0x11, 0x95, 0x19, 0xF7, 0x1A, 0x17, 0x22, 0x17, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x32, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x03, 0x29, + 0x10, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x87, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB6, 0x19, 0xD7, 0x11, 0xD8, 0x11, 0xB7, 0x09, 0x97, 0x09, 0x76, 0x09, 0x55, 0x09, 0x54, 0x01, 0x09, 0x34, 0x81, 0x09, 0x55, 0x11, 0xB6, 0x01, 0x19, 0xF8, 0x85, 0x19, 0xD7, 0x19, 0x75, 0x19, 0x13, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x80, 0x28, 0xEE, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x20, 0xEF, 0x05, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, + 0x21, 0x0F, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x05, 0x28, 0xEE, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x86, 0x31, 0x2F, 0x29, 0x0F, 0x31, 0x0F, 0x29, 0x0F, 0x28, 0xEE, 0x29, 0x0F, 0x31, 0x0F, 0x01, 0x30, 0xEE, 0x01, 0x31, 0x0E, 0x01, 0x39, 0x0E, 0x83, 0x30, 0xED, 0x30, 0xCD, 0x30, 0xAC, 0x28, 0x8C, 0x01, 0x28, 0x6B, 0x8E, 0x28, 0x4B, 0x30, 0x6B, 0x30, 0x4B, 0x40, 0xAC, 0x51, 0x2E, 0x69, 0xD0, 0x7A, 0x32, 0x9B, 0x15, 0xBC, 0x18, 0xD4, 0xBB, 0xE5, 0x3D, 0xE5, 0x3C, 0xDD, 0x1C, 0xDC, 0xDB, 0xD4, 0xBA, 0x01, 0xD4, 0x99, 0x87, 0xD4, 0x79, 0xD4, 0x78, 0xDC, 0x79, 0xE4, 0x99, 0xDC, 0x79, 0xDC, 0x78, 0xDC, 0x58, 0xDC, 0x37, 0x01, 0xDC, 0x58, 0x8F, 0xD4, 0x78, 0xD4, 0x99, 0xD4, 0xFA, 0xC4, 0xB8, 0xA4, 0x56, 0x94, 0x96, 0x95, 0x38, 0x8D, 0xDA, 0x75, 0xFB, 0x6E, 0x9C, 0x56, 0xDD, 0x47, 0x1E, 0x37, 0x3D, 0x27, 0x5E, 0x1F, 0x5E, 0x17, 0x7E, 0x01, 0x0F, 0xBF, 0x80, 0x07, 0xBF, 0x20, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x82, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xFF, 0x07, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x05, 0x07, 0xDE, 0x92, 0x07, 0x9D, 0x0F, 0x9D, 0x17, 0x7D, 0x27, 0x3C, 0x3E, 0xFB, 0x4E, 0x9A, 0x5E, 0x19, 0x5D, 0x36, 0x5C, 0xB5, 0x64, 0xB5, 0x64, 0xF5, 0x6D, 0xF8, 0x56, 0x99, 0x3E, 0xD8, 0x2F, 0x18, 0x16, 0xF7, 0x0E, + 0xF6, 0x06, 0xF6, 0x07, 0x16, 0x01, 0x07, 0x36, 0x80, 0x07, 0x35, 0x01, 0x07, 0x15, 0x01, 0x07, 0x14, 0x03, 0x06, 0xF4, 0x80, 0x06, 0xF3, 0x04, 0x06, 0xD3, 0x01, 0x06, 0xB2, 0x01, 0x06, 0x92, 0x02, 0x06, 0x72, 0x81, 0x06, 0x52, 0x06, 0x53, 0x01, 0x06, 0x33, 0x80, 0x06, 0x13, 0x01, 0x05, 0xF4, 0x80, 0x05, 0xD4, 0x01, 0x05, 0xB4, 0x01, 0x05, 0x95, 0x8B, 0x05, 0x76, 0x05, 0x56, 0x05, 0x57, 0x05, 0x38, 0x05, 0x19, 0x04, 0xF9, 0x04, 0xDA, 0x04, 0xDB, 0x04, 0xBB, 0x04, 0x9C, 0x04, 0x7C, 0x04, 0x7D, 0x02, 0x04, 0x5D, 0x81, 0x04, 0x3D, 0x04, 0x3E, 0x03, 0x04, 0x1E, 0x82, 0x03, 0xFE, 0x03, 0xDE, 0x03, 0xDF, 0x02, 0x03, 0xBF, 0x80, 0x03, 0xDF, 0x01, 0x03, 0xBF, 0x01, 0x03, 0x9F, 0x03, 0x03, 0x7F, 0x01, 0x03, 0x5F, 0x02, 0x03, 0x3F, 0x81, 0x03, 0x5F, 0x03, 0x3F, 0x01, 0x03, 0x1F, 0x80, 0x02, 0xFF, 0x03, 0x02, 0xDF, 0x80, 0x02, 0xBF, 0x02, 0x02, 0x9F, 0x01, 0x02, 0x7F, 0x84, 0x02, 0x5F, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x02, 0x1F, 0x01, 0x01, 0xDF, 0x01, 0x01, 0xBE, 0x80, 0x01, 0xDF, 0x01, 0x01, 0xBE, 0x8C, 0x01, 0x9D, 0x09, 0xBD, 0x11, 0xBD, 0x11, 0xBB, 0x11, 0x99, 0x43, 0x7F, 0x43, 0xFE, 0x3C, 0x9E, 0x24, 0xBC, 0x2E, 0x3F, 0x2E, 0xFF, 0x17, 0x1F, 0x0F, 0x5F, 0x01, 0x0F, 0x9F, 0x93, 0x0F, 0xBF, 0x07, 0xBF, 0x07, 0x9F, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x9F, 0x27, 0x3E, 0x37, 0x1E, 0x56, 0xDE, 0x76, 0x5E, 0x84, 0xDA, 0x6A, 0x93, 0x8A, 0x53, 0xB2, 0x74, 0xC2, 0x54, 0xCA, 0x34, 0xC9, 0xD2, 0xD1, 0xF3, 0xC9, 0xD3, 0xD1, 0xF4, 0x01, + 0xD1, 0xD3, 0x8B, 0xC9, 0xF3, 0xC9, 0xF4, 0xC1, 0xF4, 0xC2, 0x35, 0xB2, 0x76, 0x89, 0xB3, 0x50, 0x6E, 0x51, 0x10, 0x49, 0x31, 0x41, 0x31, 0x41, 0x51, 0x39, 0x51, 0x01, 0x39, 0x71, 0x07, 0x31, 0x51, 0x05, 0x29, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x52, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x07, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0A, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, + 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x0E, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x33, 0x11, 0x33, 0x11, 0x55, 0x11, 0xB7, 0x11, 0xB8, 0x09, 0xB9, 0x09, 0xD9, 0x06, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x85, 0x09, 0xD9, 0x09, 0xF8, 0x11, 0xB7, 0x11, 0x95, 0x19, 0x54, 0x10, 0xF2, 0x01, 0x19, 0x11, 0x80, 0x18, 0xF0, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x11, 0x33, 0x11, 0x53, 0x06, 0x11, 0x33, 0x80, 0x11, 0x32, 0x05, 0x11, 0x33, 0x01, 0x11, 0x32, 0x03, 0x11, 0x12, 0x81, 0x11, 0x32, 0x11, 0x12, 0x05, 0x11, 0x32, 0x06, 0x11, 0x33, 0x80, 0x11, 0x32, 0x03, 0x11, 0x33, 0x01, 0x11, 0x32, 0x05, 0x11, 0x33, 0x01, 0x11, 0x12, 0x01, 0x11, 0x33, 0x81, 0x11, 0x32, 0x11, 0x12, 0x08, 0x11, 0x33, 0x80, 0x11, 0x32, 0x17, 0x11, 0x33, 0x80, 0x11, 0x53, 0x04, 0x11, 0x33, 0x80, 0x11, 0x53, 0x01, 0x11, 0x32, 0x81, 0x11, 0x33, 0x11, 0x13, 0x01, 0x11, 0x33, 0x01, 0x11, 0x32, 0x02, 0x11, 0x33, 0x81, 0x11, 0x12, 0x11, 0x33, + 0x01, 0x11, 0x32, 0x01, 0x11, 0x33, 0x01, 0x11, 0x13, 0x0A, 0x11, 0x33, 0x80, 0x11, 0x13, 0x02, 0x11, 0x33, 0x80, 0x11, 0x13, 0x01, 0x11, 0x33, 0x81, 0x11, 0x32, 0x11, 0x33, 0x05, 0x11, 0x32, 0x80, 0x11, 0x53, 0x01, 0x11, 0x32, 0x03, 0x11, 0x33, 0x04, 0x11, 0x32, 0x81, 0x11, 0x12, 0x11, 0x32, 0x01, 0x19, 0x32, 0x05, 0x19, 0x31, 0x01, 0x19, 0x52, 0x8E, 0x11, 0x32, 0x09, 0x33, 0x09, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x37, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x08, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x84, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8C, 0x11, 0x32, 0x11, 0x54, 0x11, 0x96, + 0x19, 0xF8, 0x11, 0xF8, 0x11, 0xB8, 0x09, 0x97, 0x09, 0x77, 0x09, 0x76, 0x09, 0x55, 0x09, 0x35, 0x01, 0x35, 0x09, 0x76, 0x02, 0x19, 0xF8, 0x86, 0x19, 0xB6, 0x11, 0x34, 0x19, 0x12, 0x21, 0x32, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x04, 0x28, 0xEE, 0x80, 0x28, 0xCD, 0x05, 0x28, 0xEE, 0x09, 0x29, 0x0E, 0x03, 0x20, 0xEE, 0x83, 0x21, 0x0F, 0x20, 0xEE, 0x20, 0xEF, 0x29, 0x0F, 0x01, 0x20, 0xEF, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x84, 0x31, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x28, 0xEE, 0x29, 0x0E, 0x02, 0x28, 0xEE, 0x01, 0x28, 0xCE, 0x01, 0x28, 0xEE, 0x02, 0x29, 0x0E, 0x81, 0x28, 0xED, 0x28, 0xCD, 0x01, 0x28, 0xAD, 0x80, 0x28, 0xCD, 0x01, 0x28, 0xAD, 0x85, 0x30, 0xCD, 0x30, 0x8C, 0x30, 0xAC, 0x30, 0x6B, 0x28, 0x4A, 0x28, 0x29, 0x01, 0x20, 0x09, 0x88, 0x28, 0x29, 0x38, 0xAB, 0x59, 0x6E, 0x7A, 0x52, 0x9B, 0x56, 0xAB, 0xF8, 0xC4, 0x7A, 0xCC, 0xBB, + 0xD4, 0xDC, 0x01, 0xDC, 0xFC, 0x01, 0xDC, 0xFB, 0x01, 0xDC, 0xDA, 0x80, 0xDC, 0xB9, 0x02, 0xD4, 0x99, 0x84, 0xDC, 0x99, 0xD4, 0x78, 0xDC, 0x78, 0xD4, 0x58, 0xDC, 0x58, 0x02, 0xDC, 0x78, 0x01, 0xDC, 0x57, 0x91, 0xDC, 0x78, 0xD4, 0x98, 0xD4, 0xD9, 0xC4, 0xB8, 0xA4, 0x56, 0x94, 0x56, 0x94, 0xF8, 0x8D, 0x79, 0x7D, 0xDA, 0x6E, 0x3B, 0x5E, 0xBC, 0x4E, 0xDD, 0x3F, 0x1D, 0x2F, 0x3E, 0x1F, 0x5E, 0x17, 0x7E, 0x0F, 0x9E, 0x0F, 0xBF, 0x01, 0x07, 0xBF, 0x20, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x81, 0x07, 0xDF, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x06, 0x07, 0xDF, 0x05, 0x07, 0xDE, 0x01, 0x07, 0xBE, 0x93, 0x07, 0xBD, 0x07, 0x7D, 0x0F, 0x5C, 0x27, 0x3C, 0x3E, 0xFB, 0x4E, 0xBB, 0x66, 0x39, 0x6D, 0x98, 0x64, 0x54, 0x5B, 0xF2, 0x7D, 0x16, 0x75, 0xB7, 0x66, 0x58, 0x4E, 0xD8, 0x36, 0xF8, 0x1E, 0xD7, 0x0E, 0xD6, 0x06, 0xF6, 0x07, 0x16, 0x07, 0x36, 0x02, 0x07, 0x35, 0x80, 0x07, 0x34, 0x03, 0x07, 0x14, 0x82, 0x07, 0x13, 0x06, 0xF3, 0x07, 0x13, 0x04, 0x06, 0xF2, 0x03, 0x06, 0xD1, 0x01, 0x06, 0xB1, 0x01, 0x06, 0x91, 0x01, 0x06, 0x71, 0x01, 0x06, 0x51, 0x82, 0x06, 0x31, 0x06, 0x32, 0x06, 0x12, 0x01, 0x05, 0xF2, 0x81, 0x05, 0xD2, 0x05, 0xB3, 0x01, 0x05, 0x94, 0x88, 0x05, 0x55, 0x05, 0x56, 0x05, 0x16, 0x05, 0x17, 0x04, 0xF8, 0x04, 0xD9, 0x04, 0xB9, 0x04, 0xBA, 0x04, 0x9B, 0x01, 0x04, 0x7C, 0x81, 0x04, 0x5C, 0x04, 0x5D, 0x01, 0x04, 0x3D, 0x01, 0x04, 0x1D, 0x02, 0x03, 0xFE, 0x01, 0x03, 0xDE, 0x80, 0x03, 0xDF, 0x02, 0x03, 0xBF, 0x02, 0x03, + 0x9F, 0x04, 0x03, 0x7F, 0x02, 0x03, 0x5F, 0x03, 0x03, 0x3F, 0x80, 0x03, 0x1F, 0x01, 0x02, 0xFF, 0x02, 0x02, 0xDF, 0x01, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x01, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x80, 0x02, 0x3F, 0x01, 0x02, 0x1F, 0x01, 0x01, 0xFF, 0x80, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x83, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0xBE, 0x01, 0x9E, 0x01, 0x01, 0x7D, 0x8B, 0x09, 0xBC, 0x01, 0x7A, 0x1A, 0x5B, 0x43, 0xFF, 0x34, 0x3E, 0x2C, 0xBD, 0x15, 0x3D, 0x2E, 0xDF, 0x1F, 0x1F, 0x0F, 0x5F, 0x0F, 0x7F, 0x0F, 0x9F, 0x03, 0x07, 0xBF, 0x8D, 0x07, 0x9F, 0x17, 0x9F, 0x27, 0xBF, 0x2F, 0x5F, 0x46, 0xDE, 0x66, 0xBF, 0x85, 0xFE, 0x6B, 0x75, 0x7A, 0x73, 0x9A, 0x54, 0xBA, 0x74, 0xC2, 0x34, 0xCA, 0x13, 0xC9, 0xF3, 0x01, 0xD1, 0xF3, 0x01, 0xD1, 0xD3, 0x01, 0xD1, 0xF4, 0x87, 0xCA, 0x14, 0xC2, 0x35, 0xBA, 0x35, 0xB2, 0x76, 0x79, 0x52, 0x58, 0xF0, 0x51, 0x31, 0x49, 0x31, 0x01, 0x41, 0x51, 0x83, 0x39, 0x71, 0x39, 0x51, 0x39, 0x71, 0x31, 0x71, 0x04, 0x31, 0x51, 0x02, 0x31, 0x31, 0x04, 0x29, 0x31, 0x03, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x07, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x29, + 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x18, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x0A, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x19, 0x31, 0x84, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x19, 0xD8, 0x11, 0xF9, 0x01, 0x09, 0xD9, 0x83, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xFB, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x88, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xB7, 0x19, + 0x96, 0x11, 0x33, 0x19, 0x12, 0x19, 0x32, 0x21, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x11, 0x95, 0x11, 0x96, 0x11, 0xB6, 0x06, 0x11, 0x95, 0x80, 0x11, 0x96, 0x02, 0x11, 0x95, 0x01, 0x11, 0x96, 0x01, 0x11, 0x95, 0x01, 0x11, 0x96, 0x87, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x96, 0x11, 0x95, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x96, 0x11, 0xB6, 0x01, 0x11, 0x96, 0x80, 0x11, 0xB6, 0x02, 0x11, 0x96, 0x80, 0x11, 0xB6, 0x03, 0x11, 0x96, 0x81, 0x11, 0x95, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x80, 0x11, 0x95, 0x02, 0x11, 0xB6, 0x80, 0x11, 0x95, 0x08, 0x11, 0xB6, 0x80, 0x11, 0x95, 0x01, 0x11, 0x96, 0x04, 0x11, 0xB6, 0x80, 0x11, 0xB5, 0x02, 0x11, 0xB6, 0x84, 0x11, 0x95, 0x11, 0xB6, 0x11, 0x95, 0x11, 0xB6, 0x11, 0x95, 0x01, 0x11, 0xB6, 0x81, 0x19, 0xB6, 0x11, 0xB5, 0x01, 0x11, 0xB6, 0x82, 0x11, 0xB5, 0x11, 0x95, 0x11, 0xB6, 0x01, 0x11, 0x95, 0x06, 0x11, 0x96, 0x09, 0x11, 0x95, 0x80, 0x11, 0x96, 0x05, 0x11, 0x95, 0x01, 0x11, 0xB6, 0x81, 0x11, 0x96, 0x11, 0x95, 0x01, 0x11, 0xB6, 0x84, 0x11, 0x96, 0x11, 0xB6, 0x11, 0xB5, 0x11, 0xB6, 0x11, 0x96, 0x02, 0x11, 0xB6, 0x80, 0x11, 0x95, 0x05, 0x11, 0xB6, 0x80, 0x19, 0xB6, 0x04, 0x11, 0xB6, 0x81, 0x19, 0xD6, 0x11, 0xD6, 0x01, 0x19, 0xB6, 0x80, 0x19, 0xD6, 0x01, 0x11, 0xB6, 0x81, 0x19, 0xB6, 0x11, 0xB6, 0x05, 0x19, 0xB6, 0x88, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x95, 0x11, 0x74, 0x11, 0x53, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x03, 0x19, 0x31, + 0x82, 0x21, 0x52, 0x21, 0x72, 0x19, 0x72, 0x01, 0x11, 0x32, 0x90, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x22, 0x37, 0x22, 0x17, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x53, 0x19, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x05, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x05, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x07, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x8E, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x50, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x54, 0x11, 0x96, 0x19, 0xF8, 0x11, 0xF8, 0x11, 0xD8, 0x09, 0x97, 0x09, 0x77, 0x09, 0x76, 0x01, 0x09, 0x56, 0x88, 0x09, 0x96, 0x11, 0xF8, 0x1A, 0x18, 0x19, 0xF8, 0x21, 0xF8, 0x19, 0x95, 0x11, 0x33, 0x19, 0x12, 0x21, 0x11, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, + 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x28, 0xEE, 0x20, 0xCE, 0x20, 0xAD, 0x20, 0x8C, 0x03, 0x20, 0x6C, 0x01, 0x28, 0x8C, 0x80, 0x20, 0x8C, 0x01, 0x28, 0x8C, 0x80, 0x28, 0xAC, 0x01, 0x28, 0xCD, 0x85, 0x28, 0xAD, 0x28, 0xED, 0x28, 0xCD, 0x28, 0xEE, 0x28, 0xED, 0x29, 0x0E, 0x01, 0x28, 0xEE, 0x02, 0x29, 0x0E, 0x01, 0x28, 0xEE, 0x81, 0x29, 0x0F, 0x28, 0xEE, 0x01, 0x20, 0xEE, 0x80, 0x21, 0x0F, 0x02, 0x20, 0xEF, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x86, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x20, 0xEF, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x84, 0x28, 0xEE, 0x29, 0x0E, 0x29, 0x0F, 0x28, 0xEE, 0x29, 0x0F, 0x02, 0x28, 0xEE, 0x80, 0x28, 0xCD, 0x01, 0x28, 0xCE, 0x03, 0x28, 0xCD, 0x01, 0x30, 0xEE, 0x85, 0x30, 0xED, 0x31, 0x0D, 0x28, 0xED, 0x28, 0xAC, 0x20, 0x8B, 0x20, 0x6B, 0x01, 0x20, 0x2A, 0x94, 0x28, 0x2A, 0x28, 0x0A, 0x20, 0x0A, 0x28, 0x2A, 0x30, 0x2A, 0x38, 0x6A, 0x40, 0xAB, 0x51, 0x2D, 0x72, 0x10, 0x92, 0xD3, 0xAB, 0xB6, 0xCC, 0x79, 0xD4, 0xFB, 0xDD, 0x1B, 0xE5, 0x1C, 0xDC, 0xFB, 0xDC, 0xDA, 0xD4, 0xBA, 0xD4, 0x9A, 0xD4, 0x99, 0xD4, 0x79, 0x02, 0xD4, 0x99, 0x80, 0xDC, 0xB9, 0x01, 0xDC, 0x99, 0x83, 0xD4, 0x78, 0xDC, 0x78, 0xD4, 0x78, 0xDC, 0x78, 0x01, 0xD4, 0x58, 0x81, 0xDC, + 0x58, 0xDC, 0x78, 0x01, 0xD4, 0x37, 0x93, 0xD4, 0x57, 0xD4, 0x77, 0xDC, 0x98, 0xDC, 0xB8, 0xD4, 0xD9, 0xC4, 0xB8, 0xAC, 0x76, 0x9C, 0x76, 0x94, 0xD7, 0x8D, 0x79, 0x85, 0xDA, 0x76, 0x5C, 0x66, 0x7C, 0x56, 0xDD, 0x46, 0xFD, 0x37, 0x5E, 0x27, 0x5E, 0x1F, 0x7E, 0x17, 0x9E, 0x0F, 0xBE, 0x01, 0x0F, 0xDF, 0x04, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x04, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x06, 0x07, 0xDF, 0x82, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xBF, 0x0B, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x07, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x07, 0xDF, 0x01, 0x07, 0xDE, 0x06, 0x07, 0xBE, 0x92, 0x07, 0x7D, 0x07, 0x7C, 0x0F, 0x5C, 0x1F, 0x3C, 0x37, 0x1B, 0x4E, 0xDB, 0x66, 0x5A, 0x6D, 0x98, 0x74, 0xB6, 0x63, 0x92, 0x7C, 0x75, 0x85, 0x77, 0x76, 0x18, 0x5E, 0x78, 0x46, 0xB8, 0x26, 0xB6, 0x16, 0xB6, 0x0E, 0xF6, 0x0F, 0x36, 0x01, 0x07, 0x56, 0x80, 0x07, 0x55, 0x03, 0x07, 0x34, 0x03, 0x07, 0x33, 0x03, 0x07, 0x32, 0x01, 0x07, 0x11, 0x03, 0x07, 0x10, 0x83, 0x07, 0x0F, 0x06, 0xEF, 0x06, 0xF0, 0x06, 0xEF, 0x01, 0x06, 0xCF, 0x80, 0x06, 0xAF, 0x01, 0x06, 0x8F, 0x80, 0x06, 0x6F, 0x01, 0x06, 0x50, 0x01, 0x06, 0x30, 0x8C, 0x05, 0xF1, 0x05, 0xD1, 0x05, 0xB1, 0x05, 0x92, 0x05, 0x73, 0x05, 0x54, 0x05, 0x35, 0x05, 0x16, 0x04, 0xF7, 0x04, 0xD8, 0x04, 0xD9, 0x04, 0x99, 0x04, 0x9A, 0x01, 0x04, 0x7B, 0x01, 0x04, 0x5C, 0x80, 0x04, 0x3D, 0x02, 0x04, 0x1D, 0x02, 0x03, 0xFE, 0x81, 0x03, 0xDE, 0x03, 0xDF, 0x03, 0x03, + 0xBF, 0x01, 0x03, 0x9F, 0x02, 0x03, 0x7F, 0x04, 0x03, 0x5F, 0x02, 0x03, 0x3F, 0x01, 0x03, 0x1F, 0x01, 0x02, 0xFF, 0x02, 0x02, 0xDF, 0x80, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x02, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x02, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x80, 0x01, 0xBF, 0x01, 0x01, 0xBE, 0x02, 0x01, 0x9E, 0x8D, 0x01, 0x9D, 0x09, 0xBD, 0x09, 0xBC, 0x01, 0xBA, 0x1A, 0xDD, 0x2B, 0xFE, 0x24, 0x9E, 0x0C, 0xDD, 0x15, 0xDE, 0x1F, 0x1F, 0x0F, 0x1F, 0x0F, 0x5F, 0x0F, 0x9F, 0x0F, 0xBF, 0x02, 0x07, 0xBF, 0x8F, 0x07, 0x9F, 0x0F, 0x9F, 0x17, 0xBF, 0x27, 0x7F, 0x37, 0x1E, 0x4E, 0xDE, 0x76, 0x7E, 0x7D, 0x1B, 0x62, 0xD4, 0x82, 0x53, 0xA2, 0x33, 0xBA, 0x34, 0xCA, 0x34, 0xC9, 0xF3, 0xD2, 0x14, 0xD1, 0xF3, 0x01, 0xD1, 0xD3, 0x81, 0xC9, 0xD3, 0xC9, 0xF3, 0x01, 0xCA, 0x14, 0x88, 0xBA, 0x14, 0xB2, 0x35, 0xAA, 0x56, 0x60, 0xAF, 0x59, 0x11, 0x51, 0x51, 0x41, 0x30, 0x41, 0x51, 0x39, 0x51, 0x01, 0x39, 0x71, 0x02, 0x31, 0x71, 0x01, 0x31, 0x51, 0x02, 0x31, 0x31, 0x01, 0x29, 0x30, 0x03, 0x29, 0x31, 0x80, 0x29, 0x51, 0x02, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x04, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x08, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, + 0x82, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, + 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x89, 0x19, 0x30, 0x19, 0x31, 0x11, 0x12, 0x11, 0x53, 0x11, 0x95, 0x11, 0xD8, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0x99, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x82, 0x01, 0xFA, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0x09, 0xD8, 0x86, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x1A, 0x18, 0x81, 0x19, 0xF8, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x87, 0x22, 0x18, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x39, 0x1A, 0x18, 0x22, 0x38, 0x1A, 0x38, 0x1A, 0x39, 0x07, 0x22, 0x39, 0x80, 0x1A, 0x39, 0x01, 0x22, 0x39, 0x01, 0x22, 0x19, 0x01, 0x22, 0x39, 0x80, 0x1A, 0x18, 0x01, 0x22, 0x39, 0x81, 0x1A, 0x38, 0x22, 0x39, 0x02, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x02, 0x1A, 0x38, 0x80, 0x22, 0x38, 0x01, 0x1A, 0x38, 0x02, 0x1A, 0x18, 0x80, 0x1A, 0x38, 0x02, 0x1A, 0x18, 0x82, 0x1A, 0x38, 0x1A, 0x18, 0x22, 0x38, 0x01, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x01, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x02, 0x1A, 0x18, 0x81, 0x22, 0x38, 0x1A, 0x38, 0x01, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x01, 0x1A, 0x18, 0x84, 0x22, 0x18, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x38, 0x22, 0x18, 0x02, 0x22, 0x38, 0x82, 0x1A, 0x18, 0x22, 0x38, 0x22, 0x18, 0x03, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x02, 0x1A, 0x18, 0x80, 0x22, 0x18, 0x0E, 0x1A, + 0x18, 0x80, 0x22, 0x38, 0x02, 0x1A, 0x18, 0x80, 0x22, 0x38, 0x03, 0x1A, 0x18, 0x83, 0x22, 0x38, 0x1A, 0x38, 0x1A, 0x18, 0x1A, 0x38, 0x02, 0x1A, 0x18, 0x01, 0x22, 0x38, 0x01, 0x1A, 0x18, 0x83, 0x22, 0x39, 0x22, 0x38, 0x22, 0x39, 0x22, 0x38, 0x04, 0x22, 0x39, 0x84, 0x1A, 0x18, 0x22, 0x38, 0x1A, 0x38, 0x22, 0x38, 0x1A, 0x18, 0x02, 0x22, 0x38, 0x03, 0x1A, 0x18, 0x01, 0x22, 0x38, 0x80, 0x22, 0x18, 0x04, 0x22, 0x38, 0x84, 0x22, 0x17, 0x19, 0xF6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x88, 0x21, 0x31, 0x29, 0x72, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x82, 0x19, 0xB5, 0x11, 0x74, 0x19, 0x53, 0x01, 0x19, 0x12, 0x02, 0x21, 0x31, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x09, 0x29, 0x10, 0x02, 0x21, 0x10, 0x08, 0x29, 0x10, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, + 0x29, 0x10, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x09, 0x54, 0x11, 0x96, 0x02, 0x11, 0xD8, 0x80, 0x11, 0xB8, 0x01, 0x09, 0x97, 0x82, 0x11, 0xB7, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x1A, 0x18, 0x89, 0x22, 0x18, 0x19, 0xB6, 0x11, 0x34, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x86, 0x29, 0x0F, 0x28, 0xEF, 0x20, 0xCE, 0x18, 0x8C, 0x20, 0xAC, 0x20, 0x8B, 0x18, 0x4B, 0x01, 0x20, 0x2A, 0x88, 0x20, 0x4B, 0x20, 0x2A, 0x20, 0x4B, 0x28, 0x4B, 0x20, 0x4A, 0x20, 0x2A, 0x20, 0x4A, 0x20, 0x4B, 0x28, 0x8B, 0x01, 0x30, 0xAC, 0x02, 0x28, 0xAC, 0x81, 0x28, 0xCC, 0x28, 0xAC, 0x01, 0x28, 0xCD, 0x80, 0x28, 0xAD, 0x01, 0x28, 0xED, 0x01, 0x28, 0xCD, 0x81, 0x28, 0xEE, 0x28, 0xCD, 0x01, 0x20, 0xCD, 0x84, 0x28, 0xCE, 0x20, 0xCE, 0x20, 0xCD, 0x20, 0xCE, 0x28, 0xEE, 0x02, 0x20, 0xCE, 0x01, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x81, 0x20, 0xAD, 0x20, 0xCD, 0x02, 0x20, 0xCE, 0x80, 0x28, 0xEE, 0x02, 0x20, 0xCE, 0x02, 0x28, 0xCE, 0x80, 0x28, 0xCD, 0x01, 0x20, 0xAD, 0x02, 0x28, 0xCD, 0x80, 0x28, 0xCE, 0x01, 0x28, 0xAD, 0x01, 0x28, 0x8C, 0x81, 0x28, 0xAC, 0x30, 0xAD, 0x01, + 0x30, 0xCD, 0x82, 0x28, 0x8C, 0x30, 0xAC, 0x30, 0x8C, 0x01, 0x28, 0x6B, 0x81, 0x20, 0x2A, 0x18, 0x09, 0x02, 0x18, 0x08, 0x88, 0x20, 0x08, 0x28, 0x29, 0x40, 0xCC, 0x59, 0x8F, 0x7A, 0x72, 0x9B, 0x36, 0xAB, 0xB7, 0xBC, 0x59, 0xCC, 0xBB, 0x01, 0xDC, 0xFC, 0x01, 0xDC, 0xFB, 0x02, 0xDC, 0xDA, 0x01, 0xDC, 0xB9, 0x04, 0xDC, 0x99, 0x01, 0xDC, 0x78, 0x82, 0xDC, 0x79, 0xDC, 0x99, 0xDC, 0x98, 0x02, 0xDC, 0x78, 0x02, 0xD4, 0x57, 0x80, 0xDC, 0x78, 0x01, 0xD4, 0x57, 0x95, 0xD4, 0x58, 0xD4, 0x78, 0xD4, 0x77, 0xD4, 0x97, 0xD4, 0xB8, 0xD4, 0xD8, 0xC4, 0x97, 0xAC, 0x56, 0x9C, 0x35, 0x94, 0xB6, 0x8D, 0x18, 0x85, 0xDA, 0x7E, 0x3B, 0x6E, 0x7C, 0x5E, 0xBD, 0x4E, 0xFD, 0x3F, 0x1E, 0x2F, 0x5E, 0x1F, 0x7E, 0x17, 0x9E, 0x0F, 0x9E, 0x0F, 0xBE, 0x0C, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x06, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x80, 0x0F, 0xDF, 0x01, 0x07, 0xBF, 0x0A, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x07, 0xDF, 0x08, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x01, 0x07, 0xDE, 0x01, 0x07, 0xBE, 0x04, 0x07, 0x9E, 0x01, 0x07, 0x9D, 0x92, 0x07, 0x7D, 0x0F, 0x5C, 0x1F, 0x5C, 0x2F, 0x3C, 0x46, 0xFB, 0x56, 0x3A, 0x6D, 0x78, 0x7C, 0xB6, 0x7B, 0xF4, 0x7B, 0xD3, 0x84, 0xD6, 0x7D, 0x97, 0x6E, 0x38, 0x56, 0x98, 0x36, 0xB7, 0x1E, 0xB6, 0x16, 0xF6, 0x0F, 0x36, 0x0F, 0x56, 0x01, 0x07, 0x55, 0x02, 0x07, 0x54, 0x03, 0x07, 0x53, 0x01, 0x07, 0x32, 0x80, 0x07, 0x52, 0x01, 0x07, 0x51, 0x80, 0x07, 0x31, 0x01, 0x07, 0x30, 0x01, 0x07, 0x2F, 0x03, 0x07, 0x2E, + 0x02, 0x07, 0x0E, 0x01, 0x06, 0xEE, 0x01, 0x06, 0xCE, 0x01, 0x06, 0xAE, 0x8F, 0x06, 0x8E, 0x06, 0x6E, 0x06, 0x4F, 0x06, 0x2F, 0x06, 0x0F, 0x05, 0xD0, 0x05, 0xB0, 0x05, 0x91, 0x05, 0x72, 0x05, 0x53, 0x05, 0x34, 0x04, 0xF5, 0x04, 0xF6, 0x04, 0xD7, 0x04, 0xB8, 0x04, 0x99, 0x01, 0x04, 0x7A, 0x01, 0x04, 0x5B, 0x80, 0x04, 0x3C, 0x01, 0x04, 0x1C, 0x01, 0x03, 0xFD, 0x80, 0x03, 0xDD, 0x01, 0x03, 0xDE, 0x80, 0x03, 0xBE, 0x01, 0x03, 0xBF, 0x01, 0x03, 0x9F, 0x03, 0x03, 0x7F, 0x03, 0x03, 0x5F, 0x02, 0x03, 0x3F, 0x02, 0x03, 0x1F, 0x01, 0x02, 0xFF, 0x01, 0x02, 0xDF, 0x80, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x81, 0x02, 0x7F, 0x02, 0x9F, 0x01, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x02, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x80, 0x01, 0x9E, 0x01, 0x01, 0xBF, 0x8E, 0x01, 0x9E, 0x01, 0xBE, 0x01, 0x7D, 0x01, 0x9D, 0x01, 0x7B, 0x01, 0xFB, 0x1B, 0x3D, 0x1C, 0x1E, 0x14, 0xFF, 0x0D, 0x5E, 0x16, 0x9F, 0x17, 0x3F, 0x0F, 0x5F, 0x0F, 0x7F, 0x0F, 0xBF, 0x03, 0x07, 0xBF, 0x8F, 0x0F, 0xBF, 0x0F, 0x9F, 0x1F, 0x9F, 0x27, 0x3E, 0x3E, 0xFE, 0x5E, 0x9E, 0x7E, 0x1E, 0x7C, 0x59, 0x72, 0x93, 0x9A, 0x94, 0xB2, 0x54, 0xC2, 0x34, 0xCA, 0x14, 0xD1, 0xF3, 0xD1, 0xD3, 0xD1, 0xF4, 0x01, 0xD1, 0xD3, 0x80, 0xD1, 0xF4, 0x01, 0xC9, 0xF4, 0x87, 0xC2, 0x14, 0xBA, 0x14, 0xB2, 0x55, 0x91, 0xF4, 0x58, 0xAF, 0x59, 0x31, 0x49, 0x31, 0x41, 0x51, 0x01, 0x39, 0x51, 0x80, 0x39, 0x71, 0x02, 0x31, 0x71, 0x82, 0x31, 0x51, 0x31, 0x71, 0x31, 0x51, 0x03, 0x31, 0x31, + 0x80, 0x29, 0x31, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x29, 0x30, 0x05, 0x21, 0x30, 0x80, 0x29, 0x30, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, + 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x84, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x09, 0x33, 0x11, 0xB6, 0x01, 0x11, 0xD8, 0x82, 0x09, 0xD9, 0x09, 0xDA, 0x01, 0xB9, 0x03, 0x01, 0xDA, 0x81, 0x01, 0xFA, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x89, 0x01, 0xB8, 0x09, 0xB8, 0x11, 0xB7, 0x19, 0x96, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x1A, 0x18, 0x06, 0x19, 0xF8, 0x80, 0x1A, 0x18, 0x02, 0x22, 0x18, 0x01, 0x22, 0x38, 0x02, 0x1A, 0x18, 0x84, 0x22, 0x18, 0x22, 0x19, 0x19, 0xF8, 0x22, 0x39, 0x1A, 0x18, 0x01, 0x22, 0x19, 0x01, 0x22, 0x18, 0x01, 0x22, 0x19, + 0x84, 0x22, 0x18, 0x19, 0xF8, 0x1A, 0x18, 0x22, 0x18, 0x1A, 0x18, 0x01, 0x22, 0x18, 0x0C, 0x1A, 0x18, 0x81, 0x1A, 0x17, 0x1A, 0x18, 0x01, 0x19, 0xF7, 0x80, 0x19, 0xD7, 0x02, 0x19, 0xF7, 0x03, 0x19, 0xF8, 0x80, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x80, 0x1A, 0x17, 0x0C, 0x19, 0xF7, 0x81, 0x1A, 0x18, 0x22, 0x18, 0x01, 0x19, 0xF7, 0x80, 0x1A, 0x18, 0x01, 0x19, 0xF7, 0x80, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x81, 0x19, 0xF7, 0x1A, 0x18, 0x01, 0x19, 0xF7, 0x81, 0x1A, 0x18, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x80, 0x1A, 0x18, 0x09, 0x19, 0xF8, 0x07, 0x1A, 0x18, 0x81, 0x19, 0xF8, 0x1A, 0x18, 0x03, 0x19, 0xF8, 0x81, 0x1A, 0x18, 0x19, 0xF8, 0x02, 0x1A, 0x18, 0x04, 0x19, 0xF8, 0x82, 0x1A, 0x18, 0x19, 0xF7, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x82, 0x19, 0xF8, 0x19, 0xF7, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x01, 0x1A, 0x17, 0x81, 0x19, 0xF7, 0x22, 0x18, 0x01, 0x19, 0xB6, 0x83, 0x19, 0xD7, 0x19, 0xF7, 0x22, 0x38, 0x1A, 0x17, 0x01, 0x19, 0xF7, 0x83, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x12, 0x11, 0x32, 0x01, 0x19, 0x11, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x82, 0x21, 0x32, 0x19, 0x32, 0x11, 0x32, 0x01, 0x11, 0x53, 0x81, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x82, 0x19, 0x95, 0x11, 0x74, 0x19, 0x54, 0x01, 0x19, 0x32, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, + 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x07, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x95, 0x21, 0x30, 0x19, 0x51, 0x19, 0x52, 0x11, 0x32, 0x11, 0x33, 0x09, 0x54, 0x11, 0xB6, 0x19, 0xF8, 0x11, 0xD8, 0x09, 0xB8, 0x11, 0xD8, 0x09, 0xB7, 0x11, 0xB7, 0x11, 0xD7, 0x19, 0xF8, 0x1A, 0x18, 0x22, 0x39, 0x22, 0x38, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x8A, 0x28, 0xEE, 0x8B, 0xD9, 0xCD, 0xBF, 0xD5, 0xFF, 0xBD, 0x3D, 0xAC, 0x9B, 0xA4, 0x5A, 0x93, 0xB8, 0x9B, 0xB8, 0x8B, 0x36, 0x72, 0x93, 0x01, 0x6A, 0x32, 0x8A, 0x59, 0xB0, 0x59, 0xAF, 0x49, 0x4E, 0x40, 0xEC, 0x38, 0xCC, 0x30, 0x8B, 0x30, 0xAB, 0x28, 0x6A, 0x28, 0x6B, + 0x28, 0x4A, 0x28, 0x6B, 0x01, 0x28, 0x4A, 0x84, 0x28, 0x6A, 0x28, 0x6B, 0x20, 0x2A, 0x20, 0x4B, 0x20, 0x2A, 0x01, 0x18, 0x2A, 0x02, 0x18, 0x0A, 0x83, 0x18, 0x2A, 0x18, 0x2B, 0x20, 0x4B, 0x18, 0x2B, 0x01, 0x20, 0x4B, 0x01, 0x20, 0x2B, 0x01, 0x20, 0x4B, 0x01, 0x18, 0x4B, 0x01, 0x18, 0x2B, 0x01, 0x20, 0x4B, 0x80, 0x20, 0x2B, 0x01, 0x20, 0x4B, 0x01, 0x20, 0x2B, 0x80, 0x20, 0x0A, 0x01, 0x18, 0x0A, 0x04, 0x18, 0x09, 0x02, 0x20, 0x0A, 0x9B, 0x20, 0x09, 0x20, 0x0A, 0x20, 0x09, 0x28, 0x4A, 0x30, 0x6B, 0x30, 0x8B, 0x38, 0xAC, 0x40, 0xCC, 0x41, 0x0D, 0x51, 0x4E, 0x59, 0x8F, 0x69, 0xF0, 0x7A, 0x72, 0x8B, 0x14, 0xA3, 0xB6, 0xB4, 0x59, 0xCC, 0xFB, 0xDD, 0x5C, 0xE5, 0x9D, 0xE5, 0x9E, 0xE5, 0x9D, 0xE5, 0x7D, 0xE5, 0x3C, 0xDD, 0x1C, 0xDC, 0xDB, 0xD4, 0x9A, 0xD4, 0x99, 0xD4, 0x79, 0x01, 0xDC, 0x79, 0x01, 0xDC, 0x78, 0x84, 0xDC, 0x98, 0xDC, 0x78, 0xE4, 0x99, 0xDC, 0x78, 0xE4, 0x98, 0x04, 0xDC, 0x78, 0x01, 0xDC, 0x58, 0x05, 0xDC, 0x57, 0x03, 0xD4, 0x57, 0x93, 0xD4, 0x77, 0xD4, 0x98, 0xD4, 0xB8, 0xCC, 0xD8, 0xC4, 0xB8, 0xAC, 0x77, 0x9C, 0x76, 0x94, 0xB7, 0x95, 0x59, 0x8D, 0xBA, 0x86, 0x5C, 0x76, 0x7C, 0x66, 0xBD, 0x4E, 0xDD, 0x3F, 0x1E, 0x37, 0x3E, 0x27, 0x7E, 0x1F, 0x7E, 0x17, 0x9E, 0x17, 0xBE, 0x01, 0x0F, 0xDF, 0x0D, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x02, 0x0F, 0xBF, 0x80, 0x0F, 0x9F, 0x02, 0x0F, 0xBF, 0x81, 0x07, 0xBF, 0x0F, 0xDF, 0x0A, + 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x03, 0x07, 0xBE, 0x01, 0x07, 0x7D, 0x01, 0x07, 0x9D, 0x80, 0x07, 0xBE, 0x01, 0x07, 0x9D, 0x95, 0x07, 0x7D, 0x0F, 0x7C, 0x17, 0x5C, 0x27, 0x5C, 0x3E, 0xFB, 0x56, 0x5A, 0x65, 0x78, 0x84, 0xF7, 0x94, 0x96, 0x83, 0xB3, 0x73, 0xB2, 0x84, 0xF6, 0x75, 0xD8, 0x5E, 0x38, 0x46, 0xB8, 0x26, 0x96, 0x1E, 0xF6, 0x17, 0x36, 0x0F, 0x56, 0x07, 0x35, 0x07, 0x55, 0x07, 0x75, 0x02, 0x07, 0x74, 0x01, 0x07, 0x53, 0x80, 0x07, 0x73, 0x02, 0x07, 0x72, 0x01, 0x07, 0x71, 0x85, 0x07, 0x70, 0x07, 0x50, 0x07, 0x6F, 0x07, 0x4F, 0x07, 0x6F, 0x07, 0x6E, 0x05, 0x07, 0x4D, 0x80, 0x07, 0x4E, 0x01, 0x07, 0x4D, 0x01, 0x07, 0x2D, 0x02, 0x07, 0x0D, 0x90, 0x06, 0xEE, 0x0E, 0xEE, 0x0E, 0xCF, 0x06, 0x8F, 0x06, 0x4F, 0x06, 0x0F, 0x05, 0xCF, 0x05, 0x90, 0x05, 0x71, 0x05, 0x52, 0x05, 0x33, 0x05, 0x14, 0x04, 0xD5, 0x04, 0xB6, 0x04, 0xB7, 0x04, 0x98, 0x04, 0x79, 0x01, 0x04, 0x5A, 0x01, 0x04, 0x3B, 0x84, 0x04, 0x1C, 0x03, 0xFC, 0x03, 0xFD, 0x03, 0xDD, 0x03, 0xDE, 0x02, 0x03, 0xBE, 0x02, 0x03, 0x9F, 0x01, 0x03, 0x7F, 0x01, 0x03, 0x5F, 0x81, 0x03, 0x3F, 0x03, 0x5F, 0x01, 0x03, 0x3F, 0x81, 0x03, 0x1F, 0x03, 0x3F, 0x01, 0x03, 0x1F, 0x02, 0x02, 0xFF, 0x01, 0x02, 0xDF, 0x80, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x03, 0x02, 0x7F, 0x01, 0x02, 0x3F, 0x80, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x80, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x81, 0x01, 0xBF, 0x01, 0xDF, 0x02, 0x01, 0xBF, 0xA2, 0x01, 0x9E, 0x01, 0xBF, 0x01, + 0x9E, 0x01, 0xDE, 0x01, 0xBE, 0x01, 0x9C, 0x01, 0x9B, 0x02, 0x5B, 0x13, 0xBE, 0x0C, 0x7E, 0x0D, 0x3E, 0x05, 0xDE, 0x16, 0xBF, 0x17, 0x3F, 0x0F, 0x7F, 0x0F, 0x9F, 0x0F, 0xBF, 0x0F, 0xDF, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0x9E, 0x17, 0x9F, 0x27, 0x7F, 0x2F, 0x1E, 0x46, 0xDE, 0x66, 0x5D, 0x85, 0xBD, 0x63, 0x14, 0x8A, 0xB4, 0xAA, 0x74, 0xBA, 0x34, 0xCA, 0x14, 0xC1, 0xB2, 0xC9, 0xD3, 0x01, 0xD1, 0xD3, 0x81, 0xD1, 0xB3, 0xD1, 0xF4, 0x01, 0xC9, 0xD3, 0x89, 0xCA, 0x14, 0xC2, 0x15, 0xBA, 0x35, 0xBA, 0xB7, 0x68, 0xF0, 0x58, 0xCF, 0x59, 0x72, 0x49, 0x51, 0x41, 0x51, 0x39, 0x51, 0x01, 0x39, 0x71, 0x04, 0x31, 0x51, 0x02, 0x31, 0x31, 0x81, 0x31, 0x51, 0x31, 0x31, 0x06, 0x29, 0x30, 0x01, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x07, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, + 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0B, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x08, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x50, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x86, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xF9, 0x09, 0xD9, 0x09, 0xFA, 0x05, 0x01, 0xDA, 0x8B, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0xF9, 0x09, 0xD9, + 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x33, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x11, 0x75, 0x82, 0x19, 0x96, 0x11, 0x95, 0x19, 0xB6, 0x01, 0x19, 0x96, 0x01, 0x11, 0x96, 0x81, 0x19, 0x96, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x02, 0x19, 0xB6, 0x01, 0x19, 0x96, 0x81, 0x19, 0xB6, 0x11, 0xB6, 0x02, 0x19, 0xB6, 0x80, 0x19, 0x96, 0x04, 0x19, 0xB6, 0x02, 0x19, 0x96, 0x0B, 0x19, 0xB6, 0x80, 0x19, 0xB5, 0x01, 0x19, 0xB6, 0x03, 0x19, 0xB5, 0x8A, 0x11, 0x95, 0x19, 0xB6, 0x11, 0x96, 0x19, 0xB6, 0x11, 0xB6, 0x11, 0x95, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0x95, 0x19, 0xB5, 0x19, 0x96, 0x01, 0x19, 0xB6, 0x80, 0x11, 0x95, 0x01, 0x19, 0xB6, 0x82, 0x11, 0x96, 0x19, 0xB6, 0x11, 0x95, 0x02, 0x19, 0xB5, 0x01, 0x19, 0x95, 0x01, 0x19, 0xB5, 0x82, 0x19, 0x95, 0x19, 0xB5, 0x19, 0x95, 0x04, 0x19, 0xB6, 0x80, 0x11, 0x95, 0x04, 0x19, 0xB6, 0x81, 0x11, 0xB6, 0x19, 0xB6, 0x03, 0x11, 0xB6, 0x84, 0x11, 0x96, 0x19, 0xB6, 0x11, 0xB6, 0x11, 0x96, 0x19, 0xB6, 0x01, 0x11, 0x96, 0x83, 0x19, 0xB6, 0x19, 0x96, 0x11, 0x95, 0x11, 0x96, 0x02, 0x19, 0xB6, 0x01, 0x11, 0x96, 0x80, 0x19, 0xB6, 0x01, 0x19, 0x96, 0x80, 0x19, 0xB6, 0x01, 0x11, 0x96, 0x83, 0x11, 0xB6, 0x19, 0xB6, 0x11, 0x95, 0x19, 0xB6, 0x04, 0x11, 0x96, 0x80, 0x11, 0x95, 0x01, 0x19, 0x96, 0x03, 0x11, 0x96, 0x80, 0x11, 0x95, 0x02, 0x19, 0x95, 0x80, 0x11, 0x95, 0x01, 0x11, 0x96, 0x05, 0x11, 0x95, 0x01, 0x11, 0x75, 0x8E, 0x19, 0x75, 0x11, 0x54, 0x11, 0x75, + 0x11, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xF6, 0x11, 0x74, 0x09, 0x12, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x21, 0x11, 0x01, 0x21, 0x31, 0x83, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x33, 0x01, 0x11, 0x74, 0x85, 0x19, 0xD6, 0x22, 0x18, 0x22, 0x17, 0x11, 0x95, 0x11, 0x75, 0x19, 0x54, 0x01, 0x19, 0x12, 0x81, 0x21, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x06, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x88, 0x21, 0x51, 0x19, 0x51, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x09, 0x75, 0x11, 0xD7, 0x11, 0xF8, 0x11, 0xD8, 0x01, 0x11, 0xB7, 0x01, 0x11, 0xD7, 0x86, 0x11, 0xB6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xD6, 0x19, + 0xB5, 0x19, 0x74, 0x11, 0x33, 0x01, 0x19, 0x11, 0x84, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x20, 0xEE, 0x20, 0xCE, 0x83, 0x98, 0xEE, 0x9F, 0x01, 0xE6, 0x5F, 0xA3, 0xE6, 0x1F, 0xD5, 0x9E, 0xCD, 0x5E, 0xC4, 0xFC, 0xC4, 0xBB, 0xC4, 0xDC, 0xC4, 0xDB, 0xCC, 0xFC, 0xC4, 0xBB, 0xCC, 0xDB, 0xC4, 0x9A, 0xBC, 0x9A, 0xB4, 0x59, 0xB4, 0x39, 0xAB, 0xF8, 0xA3, 0xD7, 0xA3, 0xB7, 0x9B, 0x96, 0x93, 0x55, 0x93, 0x56, 0x93, 0x35, 0x93, 0x76, 0x8B, 0x35, 0x93, 0x55, 0x82, 0xD4, 0x7A, 0x93, 0x6A, 0x11, 0x61, 0xD0, 0x51, 0x4E, 0x41, 0x0D, 0x38, 0xAC, 0x38, 0x8B, 0x30, 0x4A, 0x28, 0x4A, 0x28, 0x29, 0x28, 0x2A, 0x01, 0x28, 0x29, 0x02, 0x28, 0x09, 0x01, 0x20, 0x09, 0x01, 0x28, 0x09, 0x03, 0x28, 0x2A, 0x02, 0x30, 0x4A, 0x81, 0x30, 0x6A, 0x38, 0x8B, 0x01, 0x40, 0xAB, 0x85, 0x40, 0xEC, 0x59, 0x6E, 0x6A, 0x31, 0x82, 0xD4, 0x8B, 0x15, 0x9B, 0x77, 0x01, 0x9B, 0x97, 0x8B, 0xA3, 0xB7, 0xAB, 0xD8, 0xBC, 0x59, 0xCC, 0xDB, 0xCC, 0xFC, 0xD5, 0x3D, 0xDD, 0x3D, 0xD5, 0x3D, 0xDD, 0x3D, 0xDD, 0x5D, 0xE5, 0x7D, 0xE5, 0x5D, 0x01, 0xDD, 0x3C, 0x01, 0xDD, 0x1B, 0x01, 0xDC, 0xFA, 0x81, 0xD4, 0xDA, 0xD4, 0xB9, 0x01, 0xDC, 0xB9, 0x81, 0xDC, 0x99, 0xD4, 0x78, 0x02, 0xDC, 0x79, + 0x81, 0xDC, 0x78, 0xDC, 0x58, 0x01, 0xDC, 0x78, 0x81, 0xDC, 0x57, 0xDC, 0x78, 0x01, 0xDC, 0x58, 0x81, 0xE4, 0x78, 0xDC, 0x57, 0x02, 0xE4, 0x58, 0x82, 0xE4, 0x57, 0xE4, 0x58, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x97, 0xD4, 0x57, 0xD4, 0x77, 0xD4, 0x98, 0xCC, 0xB8, 0xCC, 0xD9, 0xC4, 0xD8, 0xAC, 0x97, 0x9C, 0x96, 0x94, 0xD7, 0x95, 0x38, 0x8D, 0xBA, 0x86, 0x1B, 0x76, 0x5C, 0x66, 0x9C, 0x56, 0xBC, 0x46, 0xFD, 0x37, 0x1E, 0x2F, 0x5E, 0x1F, 0x7E, 0x1F, 0x9E, 0x17, 0x9E, 0x0F, 0x9E, 0x0F, 0xBE, 0x0F, 0xDF, 0x10, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x01, 0x0F, 0xBF, 0x85, 0x17, 0x9F, 0x0F, 0x7E, 0x17, 0x9F, 0x1F, 0x9F, 0x1F, 0x7E, 0x17, 0x9F, 0x01, 0x17, 0xBF, 0x01, 0x0F, 0xBF, 0x01, 0x07, 0xBF, 0x06, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x05, 0x07, 0xDF, 0x03, 0x07, 0xBE, 0x84, 0x07, 0x9D, 0x07, 0x9E, 0x07, 0x9D, 0x07, 0xBE, 0x07, 0xBD, 0x02, 0x07, 0x9D, 0x92, 0x07, 0x7C, 0x17, 0x5C, 0x1F, 0x5C, 0x37, 0x1C, 0x56, 0x9B, 0x6D, 0xD9, 0x84, 0xD6, 0x94, 0x76, 0x93, 0xF4, 0x7B, 0x92, 0x84, 0x54, 0x85, 0x77, 0x65, 0xB7, 0x5E, 0x98, 0x3E, 0xD8, 0x27, 0x17, 0x17, 0x16, 0x0F, 0x36, 0x07, 0x55, 0x02, 0x07, 0x75, 0x01, 0x07, 0x74, 0x01, 0x07, 0x73, 0x02, 0x07, 0x72, 0x80, 0x07, 0x92, 0x01, 0x07, 0x71, 0x01, 0x07, 0x70, 0x01, 0x07, 0x6F, 0x81, 0x07, 0x8E, 0x07, 0x6E, 0x04, 0x07, 0x6D, 0x82, 0x07, 0x6C, 0x07, 0x6D, 0x07, 0x4C, 0x01, 0x07, 0x6C, 0x03, + 0x07, 0x4C, 0x80, 0x07, 0x2C, 0x01, 0x07, 0x2D, 0x98, 0x0F, 0x0D, 0x0E, 0xEE, 0x0E, 0xCE, 0x0E, 0xAE, 0x06, 0x4E, 0x06, 0x0F, 0x05, 0xCF, 0x05, 0x90, 0x05, 0x71, 0x05, 0x32, 0x05, 0x13, 0x04, 0xF4, 0x04, 0xD5, 0x04, 0x96, 0x04, 0x77, 0x04, 0x78, 0x04, 0x59, 0x04, 0x39, 0x04, 0x1A, 0x04, 0x1B, 0x03, 0xFC, 0x03, 0xDC, 0x03, 0xDD, 0x03, 0xBD, 0x03, 0xBE, 0x02, 0x03, 0x9E, 0x01, 0x03, 0x7F, 0x02, 0x03, 0x5F, 0x04, 0x03, 0x3F, 0x01, 0x03, 0x1F, 0x01, 0x02, 0xFF, 0x82, 0x02, 0xDF, 0x02, 0xFF, 0x02, 0xDF, 0x01, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x03, 0x02, 0x7F, 0x80, 0x02, 0x5F, 0x02, 0x02, 0x3F, 0x80, 0x02, 0x1F, 0x01, 0x01, 0xFF, 0x02, 0x01, 0xDF, 0x05, 0x01, 0xBF, 0x8D, 0x01, 0x9E, 0x01, 0xBE, 0x01, 0xBD, 0x01, 0x9C, 0x01, 0xFB, 0x02, 0xFD, 0x0B, 0xFE, 0x0C, 0xDE, 0x05, 0x7F, 0x06, 0x1F, 0x16, 0xFF, 0x17, 0x5F, 0x0F, 0x7F, 0x0F, 0x9F, 0x03, 0x07, 0xBF, 0x9C, 0x0F, 0xBF, 0x0F, 0x9F, 0x1F, 0x9F, 0x27, 0x5F, 0x3F, 0x1E, 0x56, 0x9E, 0x7E, 0x5E, 0x7C, 0xBA, 0x72, 0x93, 0x9A, 0x74, 0xB2, 0x54, 0xC2, 0x14, 0xC9, 0xF3, 0xC9, 0xD3, 0xD1, 0xD3, 0xD1, 0xB3, 0xD9, 0xF4, 0xD1, 0xB3, 0xD1, 0xD3, 0xC9, 0xD4, 0xCA, 0x14, 0xC2, 0x14, 0xBA, 0x14, 0xBA, 0x55, 0xA2, 0x15, 0x60, 0xAF, 0x59, 0x31, 0x51, 0x51, 0x41, 0x51, 0x01, 0x39, 0x51, 0x81, 0x39, 0x71, 0x31, 0x71, 0x01, 0x31, 0x51, 0x80, 0x31, 0x71, 0x02, 0x31, 0x31, 0x82, 0x31, 0x51, 0x31, 0x31, 0x31, 0x51, 0x05, 0x29, 0x30, 0x80, 0x29, 0x50, 0x04, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x10, + 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x0A, 0x21, 0x30, 0x85, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x8B, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x87, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, + 0x01, 0x21, 0x2F, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x86, 0x11, 0x12, 0x11, 0x33, 0x11, 0x96, 0x11, 0xB7, 0x12, 0x19, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x86, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x11, 0x12, 0x01, 0x11, 0x32, 0x01, 0x11, 0x33, 0x80, 0x11, 0x13, 0x04, 0x11, 0x33, 0x80, 0x19, 0x33, 0x01, 0x11, 0x33, 0x80, 0x11, 0x12, 0x03, 0x11, 0x33, 0x01, 0x11, 0x13, 0x01, 0x11, 0x33, 0x01, 0x19, 0x33, 0x81, 0x11, 0x12, 0x11, 0x33, 0x01, 0x11, 0x13, 0x80, 0x19, 0x33, 0x08, 0x11, 0x33, 0x83, 0x19, 0x53, 0x11, 0x33, 0x11, + 0x32, 0x19, 0x53, 0x03, 0x11, 0x32, 0x01, 0x11, 0x53, 0x80, 0x19, 0x73, 0x01, 0x11, 0x53, 0x80, 0x19, 0x53, 0x02, 0x11, 0x53, 0x80, 0x11, 0x33, 0x01, 0x19, 0x53, 0x02, 0x19, 0x33, 0x80, 0x19, 0x53, 0x06, 0x11, 0x53, 0x80, 0x11, 0x52, 0x01, 0x19, 0x53, 0x82, 0x11, 0x53, 0x11, 0x33, 0x19, 0x53, 0x01, 0x11, 0x33, 0x80, 0x11, 0x53, 0x04, 0x11, 0x33, 0x01, 0x11, 0x53, 0x01, 0x11, 0x33, 0x05, 0x11, 0x53, 0x01, 0x11, 0x33, 0x80, 0x19, 0x53, 0x01, 0x11, 0x33, 0x83, 0x11, 0x53, 0x11, 0x33, 0x19, 0x53, 0x11, 0x53, 0x09, 0x11, 0x33, 0x80, 0x11, 0x12, 0x02, 0x11, 0x33, 0x80, 0x11, 0x32, 0x06, 0x11, 0x33, 0x82, 0x11, 0x53, 0x11, 0x33, 0x11, 0x13, 0x06, 0x11, 0x33, 0x80, 0x19, 0x33, 0x06, 0x11, 0x33, 0x86, 0x11, 0x32, 0x11, 0x33, 0x11, 0x53, 0x11, 0x33, 0x19, 0x53, 0x11, 0x33, 0x11, 0x53, 0x01, 0x11, 0x33, 0x8A, 0x11, 0x54, 0x11, 0x95, 0x19, 0xF7, 0x22, 0x38, 0x1A, 0x17, 0x19, 0xF6, 0x11, 0x94, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x52, 0x8E, 0x21, 0x51, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x09, 0x54, 0x19, 0xB6, 0x22, 0x38, 0x22, 0x18, 0x11, 0x75, 0x19, 0x75, 0x11, 0x13, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x03, 0x29, 0x30, 0x84, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, + 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x04, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x19, 0x31, 0x01, 0x11, 0x53, 0x85, 0x11, 0x75, 0x19, 0xD7, 0x1A, 0x39, 0x1A, 0x18, 0x11, 0xB7, 0x09, 0x76, 0x01, 0x11, 0xB6, 0x01, 0x11, 0x95, 0x89, 0x11, 0x54, 0x11, 0x53, 0x11, 0x33, 0x11, 0x32, 0x19, 0x52, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x87, 0x29, 0x0F, 0x20, 0xEF, 0x20, 0xEE, 0x20, 0x8C, 0x5A, 0x32, 0xAC, 0x7B, 0xDD, 0xFF, 0xDD, 0xDF, 0x01, 0xCD, 0x3D, 0x01, 0xCC, 0xFC, 0x01, 0xC4, 0x9A, 0x01, 0xCC, 0xDB, 0x04, 0xCC, 0xBA, 0x80, 0xCC, 0x9A, 0x01, 0xD4, 0xDA, 0x01, 0xDC, 0xFB, 0x84, 0xDD, 0x1C, 0xD4, 0xFB, 0xDD, 0x3C, 0xE5, 0x3C, 0xDD, 0x3C, 0x01, 0xE5, 0x3C, + 0x80, 0xE5, 0x5D, 0x02, 0xE5, 0x7D, 0x81, 0xED, 0x7D, 0xE5, 0x5D, 0x01, 0xE5, 0x7D, 0x80, 0xE5, 0x5D, 0x06, 0xE5, 0x7D, 0x8A, 0xDD, 0x5D, 0xE5, 0x5D, 0xDD, 0x3C, 0xE5, 0x5D, 0xDD, 0x3C, 0xE5, 0x5D, 0xDD, 0x5C, 0xE5, 0x5D, 0xDD, 0x3C, 0xE5, 0x5D, 0xDD, 0x3C, 0x01, 0xE5, 0x5D, 0x81, 0xE5, 0x7D, 0xE5, 0x5D, 0x01, 0xE5, 0x5C, 0x01, 0xDD, 0x3C, 0x83, 0xDD, 0x1C, 0xDC, 0xFB, 0xDD, 0x1B, 0xD4, 0xDA, 0x01, 0xD4, 0xBA, 0x80, 0xCC, 0x99, 0x01, 0xD4, 0x99, 0x80, 0xCC, 0x79, 0x01, 0xD4, 0x99, 0x83, 0xCC, 0x79, 0xD4, 0x79, 0xD4, 0x78, 0xD4, 0x79, 0x03, 0xD4, 0x99, 0x84, 0xDC, 0x99, 0xD4, 0x98, 0xDC, 0x99, 0xD4, 0x78, 0xDC, 0x99, 0x03, 0xDC, 0x78, 0x81, 0xDC, 0x58, 0xE4, 0x78, 0x03, 0xDC, 0x57, 0x80, 0xE4, 0x77, 0x02, 0xDC, 0x57, 0x80, 0xE4, 0x57, 0x03, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x94, 0xDC, 0x57, 0xD4, 0x57, 0xDC, 0x77, 0xDC, 0x98, 0xDC, 0xB8, 0xD4, 0xB8, 0xC4, 0xB8, 0xAC, 0x97, 0x9C, 0x97, 0x9D, 0x18, 0x9D, 0xBA, 0x8D, 0xDA, 0x86, 0x3B, 0x76, 0x5B, 0x66, 0x7C, 0x5E, 0xBD, 0x4E, 0xDD, 0x3E, 0xFD, 0x37, 0x5E, 0x27, 0x5E, 0x1F, 0x7E, 0x01, 0x17, 0x9E, 0x01, 0x0F, 0xBE, 0x80, 0x0F, 0xDF, 0x11, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x8E, 0x0F, 0xBF, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x7F, 0x27, 0x7F, 0x27, 0x5E, 0x27, 0x3E, 0x37, 0x9F, 0x2F, 0x5E, 0x27, 0x7E, 0x1F, 0x7E, 0x17, 0x9F, 0x0F, 0x9F, 0x0F, 0xBF, 0x07, 0xBF, 0x03, 0x07, 0xDF, 0x82, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xFF, 0x01, 0x07, + 0xDF, 0x04, 0x07, 0xFF, 0x05, 0x07, 0xDF, 0x01, 0x07, 0xDE, 0x02, 0x07, 0xBE, 0x80, 0x07, 0x9E, 0x02, 0x07, 0xBD, 0x02, 0x07, 0x9D, 0x92, 0x07, 0x7C, 0x0F, 0x7C, 0x1F, 0x5C, 0x37, 0x1C, 0x4E, 0xBB, 0x6D, 0xFA, 0x84, 0xD7, 0x8C, 0x15, 0xA4, 0x76, 0x8B, 0xB3, 0x83, 0xB3, 0x8C, 0xF6, 0x75, 0x56, 0x66, 0x38, 0x4E, 0xF9, 0x2F, 0x17, 0x16, 0xF6, 0x0F, 0x36, 0x07, 0x55, 0x02, 0x07, 0x75, 0x01, 0x07, 0x94, 0x02, 0x07, 0x73, 0x81, 0x07, 0x72, 0x07, 0x92, 0x02, 0x07, 0x91, 0x01, 0x07, 0x90, 0x01, 0x07, 0x8F, 0x01, 0x07, 0x8E, 0x03, 0x07, 0x8D, 0x80, 0x07, 0x6C, 0x02, 0x07, 0x8C, 0x81, 0x07, 0x6C, 0x07, 0x8C, 0x03, 0x07, 0x6B, 0x03, 0x07, 0x4B, 0x01, 0x0F, 0x4C, 0x96, 0x0F, 0x2C, 0x0F, 0x2D, 0x0F, 0x0E, 0x0E, 0xEE, 0x0E, 0xAE, 0x06, 0x4E, 0x05, 0xEF, 0x05, 0xB0, 0x05, 0x70, 0x05, 0x11, 0x04, 0xD3, 0x04, 0x94, 0x04, 0x75, 0x04, 0x56, 0x04, 0x37, 0x04, 0x18, 0x04, 0x19, 0x03, 0xFA, 0x03, 0xFB, 0x03, 0xDC, 0x03, 0xBC, 0x03, 0xBD, 0x03, 0x9D, 0x02, 0x03, 0x9E, 0x83, 0x03, 0x7F, 0x03, 0x5F, 0x03, 0x7F, 0x03, 0x5F, 0x03, 0x03, 0x3F, 0x03, 0x03, 0x1F, 0x01, 0x02, 0xFF, 0x80, 0x02, 0xDF, 0x03, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x84, 0x02, 0x7F, 0x02, 0x5F, 0x02, 0x7F, 0x02, 0x5F, 0x02, 0x3F, 0x03, 0x02, 0x1F, 0x05, 0x01, 0xDF, 0x03, 0x01, 0x9F, 0x01, 0x01, 0x9E, 0x8B, 0x01, 0xBE, 0x01, 0x9D, 0x01, 0xFD, 0x02, 0x7C, 0x03, 0x5D, 0x0C, 0x5E, 0x0D, 0x5F, 0x05, 0xDF, 0x06, 0x5F, 0x17, 0x3F, 0x0F, 0x7F, 0x0F, 0xBF, 0x04, 0x07, 0xBF, 0x8D, 0x0F, + 0xBF, 0x17, 0x9F, 0x1F, 0x7F, 0x2F, 0x3E, 0x46, 0xFE, 0x66, 0x7E, 0x85, 0xFE, 0x73, 0x76, 0x7A, 0x53, 0xA2, 0x54, 0xBA, 0x34, 0xCA, 0x14, 0xC9, 0xF3, 0xC9, 0xD3, 0x02, 0xD1, 0xD3, 0x81, 0xD1, 0xD4, 0xD1, 0xD3, 0x01, 0xC9, 0xF4, 0x8E, 0xC2, 0x14, 0xBA, 0x14, 0xBA, 0x96, 0x81, 0x51, 0x50, 0x8F, 0x51, 0x31, 0x49, 0x51, 0x41, 0x51, 0x41, 0x72, 0x39, 0x71, 0x39, 0x51, 0x31, 0x71, 0x31, 0x51, 0x31, 0x71, 0x39, 0x71, 0x02, 0x31, 0x51, 0x81, 0x31, 0x31, 0x31, 0x51, 0x06, 0x29, 0x30, 0x80, 0x21, 0x30, 0x06, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x0D, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x21, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x21, 0x31, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, + 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x88, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x09, 0x33, 0x11, 0x76, 0x09, 0x97, 0x09, 0xB8, 0x09, 0xD9, 0x01, 0xD9, 0x05, 0x01, 0xDA, 0x89, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xB9, 0x09, 0xF9, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0x95, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, + 0x30, 0x80, 0x21, 0x10, 0x05, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x32, 0x06, 0x19, 0x11, 0x81, 0x19, 0x12, 0x19, 0x31, 0x05, 0x19, 0x11, 0x02, 0x19, 0x12, 0x06, 0x19, 0x11, 0x01, 0x19, 0x12, 0x08, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, 0x02, 0x19, 0x11, 0x83, 0x19, 0x32, 0x19, 0x11, 0x11, 0x11, 0x19, 0x12, 0x08, 0x19, 0x11, 0x83, 0x19, 0x32, 0x19, 0x11, 0x11, 0x11, 0x19, 0x11, 0x04, 0x19, 0x31, 0x04, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x12, 0x19, 0x31, 0x05, 0x19, 0x32, 0x80, 0x11, 0x12, 0x05, 0x19, 0x32, 0x83, 0x19, 0x11, 0x11, 0x11, 0x19, 0x11, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x0E, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x12, 0x19, 0x11, 0x01, 0x11, 0x11, 0x81, 0x19, 0x12, 0x19, 0x11, 0x03, 0x19, 0x12, 0x80, 0x10, 0xF1, 0x05, 0x19, 0x11, 0x02, 0x19, 0x12, 0x83, 0x19, 0x32, 0x11, 0x11, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x02, 0x11, 0x11, 0x85, 0x11, 0x12, 0x11, 0x32, 0x11, 0x33, 0x09, 0x33, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x1A, 0x17, 0x86, 0x19, 0xF6, 0x11, 0x94, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x21, 0x32, 0x21, 0x52, 0x02, 0x21, 0x31, 0x01, 0x19, 0x32, 0x88, 0x19, 0x53, 0x11, 0x53, 0x09, 0x54, 0x19, 0xD6, 0x2A, 0x59, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x54, 0x19, 0x33, 0x01, 0x19, 0x32, 0x02, 0x21, 0x31, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, + 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x05, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x87, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x1A, 0x18, 0x1A, 0x38, 0x11, 0xD7, 0x11, 0x96, 0x01, 0x11, 0x75, 0x81, 0x11, 0x74, 0x11, 0x53, 0x01, 0x11, 0x32, 0x80, 0x19, 0x32, 0x03, 0x19, 0x11, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x20, 0xEF, 0x28, 0xEF, 0x28, 0xCE, 0x28, 0x8D, 0x28, 0x6C, 0x49, 0x6F, 0x9B, 0xB8, 0x01, + 0xD5, 0x7E, 0x80, 0xD5, 0x3D, 0x01, 0xD5, 0x1C, 0x81, 0xDD, 0x3C, 0xD4, 0xFB, 0x01, 0xD4, 0xDB, 0x05, 0xD4, 0xDA, 0x80, 0xD4, 0xB9, 0x02, 0xDC, 0xBA, 0x84, 0xD4, 0xBA, 0xDC, 0xBA, 0xD4, 0x99, 0xDC, 0xB9, 0xD4, 0x99, 0x02, 0xDC, 0x99, 0x05, 0xDC, 0xB9, 0x80, 0xDC, 0xDA, 0x01, 0xDC, 0xD9, 0x02, 0xDC, 0xDA, 0x80, 0xDC, 0xB9, 0x01, 0xDC, 0xDA, 0x84, 0xE4, 0xFA, 0xDC, 0xDA, 0xE4, 0xFA, 0xDC, 0xDA, 0xE4, 0xFA, 0x06, 0xDC, 0xDA, 0x03, 0xDC, 0xB9, 0x80, 0xD4, 0x98, 0x01, 0xD4, 0x99, 0x81, 0xDC, 0x99, 0xD4, 0x98, 0x01, 0xD4, 0x78, 0x84, 0xDC, 0x78, 0xD4, 0x78, 0xDC, 0x78, 0xD4, 0x78, 0xDC, 0x99, 0x02, 0xD4, 0x78, 0x81, 0xDC, 0x78, 0xD4, 0x58, 0x04, 0xDC, 0x78, 0x81, 0xDC, 0x58, 0xD4, 0x58, 0x01, 0xDC, 0x78, 0x01, 0xDC, 0x58, 0x80, 0xDC, 0x78, 0x03, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xE4, 0x77, 0x02, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x85, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x36, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x77, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x77, 0x01, 0xDC, 0x98, 0x8F, 0xCC, 0x77, 0xBC, 0x36, 0xAC, 0x57, 0xAC, 0xF9, 0xA5, 0x5A, 0x95, 0xBA, 0x85, 0xFB, 0x76, 0x3B, 0x6E, 0x7C, 0x5E, 0x9C, 0x56, 0xDD, 0x46, 0xFD, 0x3F, 0x1D, 0x2F, 0x3D, 0x2F, 0x7E, 0x1F, 0x7E, 0x01, 0x17, 0x9E, 0x82, 0x17, 0xBE, 0x0F, 0xBE, 0x0F, 0xDF, 0x0D, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x05, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x87, 0x0F, 0x9F, 0x17, 0x9F, 0x17, 0x5E, 0x27, 0x5E, 0x2F, 0x3E, 0x37, 0x1E, 0x3F, 0x1E, 0x46, 0xFE, 0x01, 0x47, + 0x1E, 0x84, 0x3F, 0x5F, 0x2F, 0x3E, 0x27, 0x5E, 0x1F, 0x7E, 0x17, 0x9E, 0x01, 0x0F, 0xBF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x05, 0x07, 0xDF, 0x02, 0x07, 0xDE, 0x04, 0x07, 0xBE, 0x03, 0x07, 0xBD, 0x94, 0x07, 0x9D, 0x07, 0x9C, 0x0F, 0x7C, 0x1F, 0x7C, 0x2F, 0x3C, 0x4E, 0xBB, 0x6E, 0x1A, 0x7C, 0xD6, 0x94, 0x35, 0xAC, 0x97, 0x9B, 0xD4, 0x8B, 0x93, 0x84, 0x14, 0x8D, 0x57, 0x6D, 0xB7, 0x5E, 0xF9, 0x3F, 0x18, 0x1F, 0x17, 0x0F, 0x36, 0x0F, 0x56, 0x07, 0x76, 0x01, 0x07, 0x75, 0x80, 0x07, 0x95, 0x02, 0x07, 0x94, 0x01, 0x07, 0x93, 0x01, 0x07, 0x92, 0x80, 0x07, 0xB2, 0x01, 0x07, 0x91, 0x01, 0x07, 0x90, 0x01, 0x07, 0x8F, 0x01, 0x07, 0x8E, 0x80, 0x07, 0xAE, 0x01, 0x07, 0x8D, 0x03, 0x07, 0x8C, 0x04, 0x07, 0x8B, 0x01, 0x07, 0x8A, 0x05, 0x07, 0x6A, 0x01, 0x07, 0x6B, 0x01, 0x0F, 0x4C, 0x96, 0x0F, 0x0D, 0x0E, 0xEE, 0x0E, 0xAF, 0x0E, 0x4F, 0x05, 0xD0, 0x05, 0x91, 0x05, 0x11, 0x04, 0xD2, 0x04, 0x93, 0x04, 0x74, 0x04, 0x55, 0x04, 0x37, 0x04, 0x18, 0x03, 0xF9, 0x03, 0xDA, 0x03, 0xDB, 0x03, 0xBB, 0x03, 0xBC, 0x03, 0xBD, 0x03, 0x9D, 0x03, 0x9E, 0x03, 0x7E, 0x03, 0x7F, 0x02, 0x03, 0x5F, 0x82, 0x03, 0x3F, 0x03, 0x1F, 0x03, 0x3F, 0x02, 0x03, 0x1F, 0x01, 0x02, 0xFF, 0x83, 0x02, 0xDF, 0x02, 0xBF, 0x02, 0xDF, 0x02, 0xBF, 0x03, 0x02, 0x9F, 0x01, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x80, 0x02, 0x3F, 0x02, 0x02, 0x1F, 0x02, 0x01, 0xFF, 0x02, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x03, 0x01, + 0x9F, 0x8D, 0x01, 0xBF, 0x01, 0x9E, 0x01, 0xBE, 0x01, 0xBD, 0x02, 0x1C, 0x02, 0xDD, 0x03, 0x9D, 0x0C, 0xDF, 0x0D, 0x9F, 0x06, 0x1F, 0x0E, 0xBF, 0x17, 0x7F, 0x0F, 0x9F, 0x0F, 0xBF, 0x01, 0x07, 0xBF, 0x91, 0x07, 0xDF, 0x07, 0xBF, 0x0F, 0xBF, 0x0F, 0x9F, 0x17, 0x7F, 0x27, 0x7F, 0x37, 0x3F, 0x4E, 0x9D, 0x76, 0x5E, 0x8D, 0x3C, 0x6A, 0x73, 0xA2, 0xD5, 0xB2, 0x34, 0xC2, 0x13, 0xC9, 0xF3, 0xC9, 0xD3, 0xD1, 0xB3, 0xD1, 0xD4, 0x02, 0xD1, 0xD3, 0x89, 0xC9, 0xD3, 0xC9, 0xF3, 0xC9, 0xF4, 0xC2, 0x35, 0xBA, 0x35, 0xB2, 0x96, 0x58, 0x6E, 0x58, 0xF0, 0x51, 0x31, 0x49, 0x51, 0x01, 0x41, 0x72, 0x81, 0x39, 0x72, 0x39, 0x71, 0x05, 0x31, 0x51, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x0B, 0x29, 0x30, 0x85, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x07, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x05, 0x29, 0x30, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x18, 0xF0, 0x01, 0x21, 0x31, 0x01, 0x21, 0x32, 0x80, 0x19, 0x31, 0x05, 0x21, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, + 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x87, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, + 0x21, 0x2F, 0x02, 0x21, 0x30, 0x88, 0x21, 0x31, 0x19, 0x31, 0x11, 0x33, 0x09, 0x34, 0x09, 0x55, 0x11, 0xB8, 0x09, 0xD9, 0x0A, 0x1A, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x88, 0x01, 0xD9, 0x01, 0xF9, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x19, 0x10, 0x80, 0x21, 0x10, 0x03, 0x19, 0x10, 0x82, 0x21, 0x11, 0x21, 0x31, 0x19, 0x11, 0x02, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x19, 0x31, 0x02, 0x21, 0x31, 0x81, 0x19, 0x10, 0x21, 0x31, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x21, 0x11, 0x80, 0x19, 0x10, 0x01, 0x21, 0x11, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x19, 0x10, 0x01, 0x21, 0x31, 0x82, 0x21, 0x30, 0x21, 0x31, 0x19, 0x10, 0x02, 0x19, 0x30, 0x80, 0x19, 0x10, 0x04, 0x19, 0x31, 0x80, 0x19, 0x10, 0x01, 0x19, 0x11, 0x01, 0x19, 0x10, 0x81, 0x21, 0x11, 0x19, 0x10, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x02, 0x19, 0x10, 0x81, 0x19, 0x30, 0x19, 0x31, 0x03, 0x19, 0x10, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x81, 0x19, 0x31, 0x21, 0x31, 0x03, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x11, 0x02, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x31, 0x03, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x02, 0x21, 0x31, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x84, 0x21, + 0x11, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x01, 0x19, 0x11, 0x82, 0x19, 0x31, 0x21, 0x11, 0x19, 0x10, 0x02, 0x19, 0x11, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x21, 0x11, 0x19, 0x10, 0x19, 0x11, 0x21, 0x11, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x21, 0x51, 0x04, 0x19, 0x31, 0x80, 0x21, 0x31, 0x03, 0x19, 0x31, 0x8D, 0x11, 0x12, 0x11, 0x53, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x19, 0xF7, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x32, 0x01, 0x21, 0x31, 0x82, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x01, 0x11, 0x53, 0x88, 0x11, 0x75, 0x19, 0xD7, 0x21, 0xF8, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x05, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x08, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x06, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x02, 0x21, 0x2F, + 0x01, 0x29, 0x2F, 0x90, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x32, 0x09, 0x32, 0x11, 0x74, 0x19, 0xD6, 0x1A, 0x17, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x96, 0x09, 0x54, 0x11, 0x54, 0x01, 0x11, 0x33, 0x80, 0x19, 0x32, 0x02, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x29, 0x30, 0x8D, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x28, 0xEF, 0x28, 0xEE, 0x28, 0xCD, 0x28, 0xAD, 0x28, 0x8C, 0x20, 0x2A, 0x40, 0xED, 0x8B, 0x36, 0xD5, 0x5E, 0xE5, 0xBF, 0xE5, 0x7E, 0x01, 0xDD, 0x1C, 0x85, 0xD4, 0xFB, 0xD4, 0xDB, 0xDC, 0xFB, 0xD4, 0xDA, 0xDC, 0xDA, 0xD4, 0x9A, 0x01, 0xD4, 0xBA, 0x80, 0xDC, 0xDA, 0x05, 0xDC, 0xBA, 0x01, 0xDC, 0xB9, 0x05, 0xDC, 0x99, 0x84, 0xE4, 0xB9, 0xDC, 0xB9, 0xE4, 0xB9, 0xDC, 0x99, 0xDC, 0xB9, 0x01, 0xDC, 0x99, 0x82, 0xDC, 0x78, 0xDC, 0x99, 0xDC, 0x98, 0x03, 0xDC, 0x78, 0x80, 0xDC, 0x79, 0x05, 0xDC, 0x78, 0x03, 0xDC, 0x99, 0x81, 0xDC, 0x78, 0xDC, 0x99, 0x02, 0xDC, 0x98, 0x01, 0xDC, 0x78, 0x82, 0xDC, 0x98, 0xDC, 0x78, 0xDC, 0x99, 0x03, 0xDC, 0x78, 0x83, 0xDC, 0x58, 0xDC, 0x78, 0xDC, 0x58, 0xDC, 0x78, 0x03, 0xDC, 0x57, 0x01, 0xDC, 0x58, 0x80, 0xDC, 0x57, 0x01, + 0xDC, 0x58, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x05, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x04, 0xDC, 0x57, 0x01, 0xD4, 0x37, 0x91, 0xCC, 0x57, 0xCC, 0xD8, 0xCD, 0x7A, 0xB5, 0x7A, 0x9D, 0x9A, 0x8D, 0xDB, 0x7E, 0x1B, 0x76, 0x5C, 0x66, 0xBD, 0x56, 0xDD, 0x4F, 0x1D, 0x3F, 0x1D, 0x37, 0x5E, 0x2F, 0x5E, 0x27, 0x7E, 0x1F, 0x7E, 0x17, 0x9E, 0x17, 0xBF, 0x01, 0x0F, 0xBE, 0x80, 0x0F, 0xDF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x0C, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x91, 0x0F, 0x9F, 0x17, 0x7E, 0x1F, 0x7F, 0x2F, 0x5E, 0x37, 0x1E, 0x4F, 0x3F, 0x5F, 0x1E, 0x5E, 0xBD, 0x5E, 0x7C, 0x5E, 0x5C, 0x56, 0x7D, 0x56, 0xDE, 0x4F, 0x1E, 0x47, 0x3E, 0x2F, 0x5E, 0x1F, 0x7E, 0x17, 0x9E, 0x0F, 0xBF, 0x03, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x81, 0x07, 0xDF, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x03, 0x07, 0xDE, 0x03, 0x07, 0xBE, 0x81, 0x07, 0xBD, 0x07, 0xBE, 0x03, 0x07, 0xBD, 0x9D, 0x07, 0x9C, 0x0F, 0x7C, 0x17, 0x7C, 0x2F, 0x5C, 0x4E, 0xDC, 0x66, 0x1A, 0x7D, 0x17, 0x94, 0x56, 0xAC, 0x56, 0xA3, 0xD4, 0x9B, 0xB3, 0x83, 0xB3, 0x8C, 0xF6, 0x7D, 0x97, 0x5E, 0x78, 0x46, 0xF9, 0x2F, 0x38, 0x17, 0x57, 0x0F, 0x76, 0x07, 0x76, 0x07, 0x96, 0x07, 0x95, 0x07, 0xB5, 0x07, 0x95, 0x07, 0x94, 0x07, 0xB4, 0x07, 0x94, 0x07, 0xB3, 0x07, 0x93, 0x07, 0xB3, 0x01, 0x07, 0xB2, 0x01, 0x07, + 0xB1, 0x01, 0x07, 0xB0, 0x02, 0x07, 0xAF, 0x01, 0x07, 0xAE, 0x82, 0x07, 0xAD, 0x07, 0x8D, 0x07, 0xAD, 0x02, 0x07, 0xAC, 0x01, 0x07, 0xAB, 0x81, 0x07, 0x8B, 0x07, 0x8A, 0x02, 0x07, 0xAA, 0x81, 0x07, 0x8A, 0x07, 0xAA, 0x03, 0x07, 0x89, 0x01, 0x07, 0x6A, 0x92, 0x07, 0x6B, 0x0F, 0x6B, 0x0F, 0x2C, 0x0F, 0x2D, 0x0E, 0xEE, 0x16, 0xF0, 0x16, 0xD1, 0x16, 0x92, 0x0E, 0x32, 0x05, 0x92, 0x05, 0x12, 0x04, 0xB2, 0x04, 0x53, 0x04, 0x35, 0x03, 0xF6, 0x03, 0xF7, 0x03, 0xF8, 0x03, 0xDA, 0x03, 0xDB, 0x01, 0x03, 0xBC, 0x84, 0x03, 0x9D, 0x03, 0x9E, 0x03, 0x7E, 0x03, 0x5E, 0x03, 0x3E, 0x02, 0x03, 0x3F, 0x02, 0x03, 0x1F, 0x01, 0x02, 0xFF, 0x01, 0x02, 0xDF, 0x03, 0x02, 0xBF, 0x03, 0x02, 0x9F, 0x80, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x01, 0x02, 0x1F, 0x02, 0x01, 0xFF, 0x02, 0x01, 0xDF, 0x80, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x02, 0x01, 0xBF, 0x80, 0x01, 0x9F, 0x01, 0x01, 0x9E, 0x89, 0x01, 0x9D, 0x01, 0xBC, 0x02, 0x7C, 0x03, 0x1C, 0x0C, 0x3E, 0x15, 0x3F, 0x0D, 0xDF, 0x06, 0x5F, 0x0E, 0xFF, 0x17, 0x9F, 0x01, 0x0F, 0xBF, 0x03, 0x07, 0xBF, 0x92, 0x0F, 0xBF, 0x17, 0x9F, 0x1F, 0x9F, 0x2F, 0x3E, 0x46, 0xFE, 0x5E, 0x7D, 0x8E, 0x3E, 0x6B, 0xB6, 0x82, 0xB4, 0xA2, 0x53, 0xBA, 0x34, 0xC1, 0xF3, 0xC9, 0xF4, 0xD1, 0xD3, 0xD1, 0xD4, 0xD9, 0xD4, 0xD1, 0x93, 0xD1, 0xB3, 0xC9, 0xB3, 0x01, 0xC9, 0xD3, 0x86, 0xC1, 0xF4, 0xC2, 0x34, 0xBA, 0x55, 0x91, 0xB3, 0x58, 0x6E, 0x59, 0x11, 0x49, 0x51, 0x01, 0x41, 0x51, 0x82, 0x39, 0x72, 0x39, 0x71, 0x31, 0x71, + 0x01, 0x31, 0x51, 0x80, 0x31, 0x71, 0x03, 0x31, 0x51, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x51, 0x1D, 0x29, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x51, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x07, 0x19, 0x32, 0x02, 0x19, 0x31, 0x80, 0x21, 0x31, 0x05, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x03, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x05, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x03, + 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x11, 0x86, 0x11, 0x33, 0x11, 0x54, 0x09, 0x75, 0x11, 0xD7, 0x09, 0xF9, 0x09, 0xFA, 0x0A, 0x1A, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x87, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xB8, 0x09, 0xF9, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x33, 0x01, 0x11, 0x11, 0x02, 0x19, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x51, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x02, 0x19, 0x30, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x31, 0x21, 0x10, 0x19, 0x10, 0x21, 0x11, 0x21, 0x10, 0x01, 0x19, 0x10, 0x80, 0x21, 0x10, 0x04, 0x19, 0x10, 0x80, 0x21, 0x30, 0x02, + 0x19, 0x10, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x19, 0x10, 0x01, 0x21, 0x11, 0x02, 0x21, 0x31, 0x80, 0x19, 0x10, 0x01, 0x21, 0x31, 0x85, 0x19, 0x31, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x10, 0x19, 0x31, 0x02, 0x19, 0x10, 0x84, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x19, 0x10, 0x04, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x31, 0x0B, 0x21, 0x30, 0x01, 0x19, 0x31, 0x80, 0x11, 0x12, 0x01, 0x11, 0x33, 0x88, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x52, 0x81, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x31, 0x91, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x75, 0x19, 0xF7, 0x22, 0x38, 0x21, 0xF8, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x11, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x08, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, + 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x04, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x80, 0x29, 0x30, 0x04, 0x29, 0x2F, 0x88, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x09, 0x54, 0x11, 0xB6, 0x01, 0x1A, 0x17, 0x82, 0x19, 0xF7, 0x11, 0x96, 0x11, 0x54, 0x01, 0x11, 0x33, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x90, 0x28, 0xEF, 0x28, 0xEE, 0x28, 0xCE, 0x28, 0xAD, 0x28, 0xAC, 0x28, 0x8C, 0x28, 0x4B, 0x38, 0xAC, 0x61, 0xB0, 0xA3, 0x77, 0xCC, 0xDB, 0xE5, 0x9E, 0xE5, 0x7E, 0xDD, 0x3D, 0xD4, 0xFB, 0xD4, 0xDB, 0xD4, 0xBA, 0x01, 0xD4, 0xDB, 0x81, 0xD4, 0xBA, 0xDC, 0xDA, 0x07, 0xDC, 0xBA, 0x03, 0xDC, 0x99, 0x01, 0xE4, 0x99, 0x80, 0xDC, 0x98, 0x02, 0xE4, 0x99, 0x83, 0xE4, 0x98, 0xDC, 0x78, 0xDC, 0x98, 0xDC, 0x99, 0x02, 0xDC, 0x78, 0x80, 0xDC, 0x58, 0x02, 0xDC, 0x78, 0x80, 0xE4, 0x79, 0x08, 0xDC, 0x58, 0x01, + 0xDC, 0x78, 0x80, 0xDC, 0x58, 0x02, 0xDC, 0x78, 0x01, 0xDC, 0x58, 0x01, 0xDC, 0x78, 0x83, 0xDC, 0x57, 0xE4, 0x78, 0xDC, 0x37, 0xDC, 0x78, 0x02, 0xDC, 0x57, 0x81, 0xDC, 0x58, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x82, 0xDC, 0x58, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x17, 0x03, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x81, 0xDC, 0x36, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x82, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0x04, 0xDC, 0x57, 0x91, 0xDC, 0x37, 0xD4, 0x36, 0xDC, 0x57, 0xD4, 0x57, 0xD4, 0x77, 0xCC, 0xD8, 0xC5, 0x39, 0xB5, 0x5A, 0x9D, 0x7A, 0x8D, 0xDA, 0x86, 0x3C, 0x76, 0x7C, 0x66, 0x9C, 0x56, 0xFD, 0x46, 0xFD, 0x3F, 0x3E, 0x37, 0x3E, 0x2F, 0x5E, 0x01, 0x27, 0x7E, 0x80, 0x1F, 0x9E, 0x01, 0x17, 0x9E, 0x80, 0x0F, 0xBF, 0x01, 0x0F, 0xDF, 0x80, 0x07, 0xBF, 0x0B, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x05, 0x07, 0xDF, 0x95, 0x07, 0xBF, 0x0F, 0xBF, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x7F, 0x37, 0x5F, 0x47, 0x1E, 0x5E, 0xFE, 0x66, 0x9D, 0x6E, 0x3C, 0x75, 0xFB, 0x6D, 0x79, 0x6D, 0x59, 0x65, 0x59, 0x65, 0xBA, 0x66, 0x7D, 0x5E, 0xFE, 0x4F, 0x3E, 0x2F, 0x3E, 0x1F, 0x5E, 0x17, 0x9E, 0x0F, 0xBE, 0x04, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x05, 0x07, 0xDF, 0x02, 0x07, 0xDE, 0x04, 0x07, 0xBE, 0x82, 0x07, 0xDE, 0x07, 0xBD, 0x07, 0xDE, 0x01, 0x07, 0xBD, 0x93, 0x07, 0x9C, 0x0F, 0x9C, 0x17, 0x7C, 0x27, 0x3C, 0x46, 0xFC, 0x5E, + 0x3A, 0x85, 0x79, 0x94, 0x56, 0xAC, 0x56, 0xB4, 0x16, 0x9B, 0x93, 0x8B, 0x72, 0x8C, 0x55, 0x85, 0x57, 0x65, 0xF7, 0x4E, 0xD9, 0x37, 0x59, 0x1F, 0x58, 0x0F, 0x57, 0x0F, 0x97, 0x01, 0x07, 0x96, 0x80, 0x07, 0xB6, 0x02, 0x07, 0xB5, 0x02, 0x07, 0xB4, 0x01, 0x07, 0xB3, 0x02, 0x07, 0xB2, 0x01, 0x07, 0xB1, 0x01, 0x07, 0xB0, 0x01, 0x07, 0xAF, 0x02, 0x07, 0xAE, 0x02, 0x07, 0xAD, 0x02, 0x07, 0xAC, 0x02, 0x07, 0xAB, 0x02, 0x07, 0xAA, 0x03, 0x07, 0xA9, 0x02, 0x07, 0x89, 0x9A, 0x07, 0x8A, 0x07, 0x6A, 0x07, 0x6B, 0x0F, 0x6C, 0x0F, 0x4D, 0x0F, 0x4E, 0x0F, 0x2F, 0x0F, 0x10, 0x16, 0xF1, 0x16, 0xD2, 0x16, 0x53, 0x0D, 0xD2, 0x05, 0x32, 0x04, 0xB2, 0x04, 0x73, 0x04, 0x54, 0x04, 0x36, 0x04, 0x17, 0x03, 0xF9, 0x03, 0xB9, 0x03, 0xBB, 0x03, 0x9C, 0x03, 0x9D, 0x03, 0x7D, 0x03, 0x7E, 0x03, 0x5E, 0x03, 0x3E, 0x01, 0x03, 0x3F, 0x01, 0x03, 0x1F, 0x02, 0x02, 0xFF, 0x80, 0x02, 0xDF, 0x03, 0x02, 0xBF, 0x02, 0x02, 0x9F, 0x02, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x01, 0x02, 0x1F, 0x02, 0x01, 0xFF, 0x02, 0x01, 0xDF, 0x05, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x8B, 0x01, 0x9E, 0x01, 0x9D, 0x01, 0x9C, 0x02, 0x1C, 0x02, 0xBD, 0x03, 0x5C, 0x14, 0xBF, 0x1D, 0xDF, 0x0E, 0x1F, 0x0E, 0x9F, 0x17, 0x3F, 0x17, 0xBF, 0x01, 0x0F, 0xBF, 0x01, 0x07, 0xBF, 0x01, 0x0F, 0xBF, 0x8E, 0x17, 0xBF, 0x17, 0x7E, 0x2F, 0x9F, 0x37, 0x3E, 0x4E, 0xDE, 0x7E, 0xBF, 0x85, 0x5B, 0x72, 0xF4, 0x8A, 0x73, 0xAA, 0x33, 0xC2, 0x14, 0xC9, 0xF3, 0xD1, 0xD3, 0xD1, 0xB3, 0xD1, 0xB4, 0x01, + 0xD1, 0x93, 0x8D, 0xD1, 0xB3, 0xD1, 0xD3, 0xC9, 0xB3, 0xC1, 0xB3, 0xC2, 0x14, 0xBA, 0x35, 0xB2, 0x55, 0x68, 0xCF, 0x58, 0xD0, 0x51, 0x31, 0x49, 0x52, 0x41, 0x52, 0x39, 0x71, 0x39, 0x72, 0x01, 0x31, 0x71, 0x01, 0x31, 0x51, 0x01, 0x31, 0x71, 0x83, 0x31, 0x51, 0x31, 0x50, 0x29, 0x30, 0x31, 0x50, 0x07, 0x29, 0x30, 0x80, 0x21, 0x10, 0x16, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x31, 0x82, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x01, 0x11, 0x33, 0x85, 0x11, 0x53, 0x11, 0x54, 0x11, 0x74, 0x19, 0x94, 0x19, 0x74, 0x19, 0x53, 0x02, 0x19, 0x32, 0x01, 0x19, 0x31, 0x07, 0x21, 0x30, 0x80, 0x21, 0x10, 0x07, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x85, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x07, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, + 0x2F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x09, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x19, 0x11, 0x83, 0x11, 0x32, 0x11, 0x54, 0x11, 0xB6, 0x09, 0x97, 0x01, 0x09, 0xF9, 0x82, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x89, 0x01, 0xD9, 0x01, 0xB9, 0x09, 0xF9, 0x09, 0xB8, 0x11, 0xD8, 0x19, 0xF7, 0x11, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x31, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x07, 0x21, 0x10, 0x0B, 0x21, 0x30, 0x85, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x11, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, + 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x08, 0x21, 0x10, 0x01, 0x21, 0x11, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x19, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x19, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x19, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x0B, 0x21, 0x30, 0x80, 0x29, 0x50, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x11, 0x12, 0x11, 0x33, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x84, 0x21, 0xD6, 0x11, 0x74, 0x11, 0x12, 0x10, 0xF2, 0x10, 0xF1, 0x01, 0x21, 0x52, 0x80, 0x21, 0x51, 0x02, 0x19, 0x31, 0x8B, 0x19, 0x32, 0x11, 0x52, 0x11, 0x53, 0x11, 0x95, 0x21, 0xF7, 0x22, 0x38, 0x22, 0x17, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x31, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x06, 0x21, 0x10, 0x80, 0x29, + 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x06, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x88, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x09, 0x54, 0x19, 0xB6, 0x01, 0x1A, 0x17, 0x83, 0x21, 0xF7, 0x19, 0xB5, 0x09, 0x33, 0x11, 0x12, 0x01, 0x11, 0x32, 0x01, 0x19, 0x31, 0x82, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x28, 0xEE, 0x01, 0x28, 0xCD, 0x89, 0x28, 0xAD, 0x30, 0xAC, 0x28, 0x6B, 0x20, 0x09, 0x28, 0x09, 0x51, 0x4E, 0x7A, 0x73, 0xA3, 0xB8, 0xBC, 0x5A, 0xD4, 0xFC, 0x01, 0xDD, 0x3D, 0x01, 0xDD, 0x1C, 0x01, 0xDC, 0xFC, 0x01, 0xDC, 0xDB, 0x02, 0xDC, 0xBA, 0x80, 0xDC, 0x9A, 0x01, 0xDC, 0x99, 0x80, 0xDC, 0x9A, 0x03, 0xDC, 0x99, 0x83, 0xDC, 0x79, 0xE4, 0x99, 0xDC, 0x58, 0xE4, 0x79, 0x05, 0xDC, 0x78, 0x01, 0xE4, + 0x99, 0x01, 0xDC, 0x58, 0x89, 0xDC, 0x38, 0xDC, 0x58, 0xE4, 0x99, 0xDC, 0x78, 0xDC, 0x58, 0xE4, 0x79, 0xDC, 0x38, 0xDC, 0x58, 0xDC, 0x78, 0xDC, 0x58, 0x01, 0xDC, 0x78, 0x01, 0xDC, 0x58, 0x04, 0xDC, 0x37, 0x04, 0xDC, 0x58, 0x06, 0xDC, 0x37, 0x80, 0xDC, 0x57, 0x01, 0xDC, 0x17, 0x08, 0xDC, 0x37, 0x80, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x83, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x36, 0xDC, 0x16, 0x03, 0xDC, 0x36, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x82, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x36, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x77, 0x02, 0xDC, 0x57, 0x91, 0xD4, 0x77, 0xCC, 0x57, 0xC4, 0x77, 0xBC, 0xF9, 0xB5, 0xBB, 0xA5, 0xFC, 0x8E, 0x1B, 0x7E, 0x1B, 0x6E, 0x5C, 0x5E, 0x9C, 0x4E, 0xBC, 0x46, 0xFD, 0x3F, 0x1D, 0x37, 0x3E, 0x2F, 0x3E, 0x27, 0x7E, 0x1F, 0x7E, 0x1F, 0x9E, 0x01, 0x17, 0x9F, 0x80, 0x0F, 0x9F, 0x02, 0x0F, 0xBF, 0x82, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xBF, 0x0C, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x95, 0x0F, 0xBF, 0x17, 0xBF, 0x27, 0x9F, 0x2F, 0x3E, 0x4F, 0x1E, 0x66, 0x9D, 0x65, 0x9A, 0x85, 0xBB, 0x85, 0x39, 0x8C, 0xB8, 0x7C, 0x35, 0x8C, 0x97, 0x84, 0x97, 0x6C, 0x56, 0x6C, 0xF8, 0x76, 0x1C, 0x6E, 0xDE, 0x3E, 0x9C, 0x37, 0x1E, 0x27, 0x9E, 0x17, 0x9E, 0x0F, 0xBE, 0x03, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x07, 0x07, 0xDE, 0x03, 0x07, 0xBE, 0x01, 0x07, 0xBD, 0x95, 0x07, 0x9D, 0x07, 0x9C, 0x17, 0x9D, 0x27, 0x5D, 0x46, 0xFC, 0x5E, 0x5B, 0x85, 0x9A, 0x8C, 0x76, 0xAC, + 0x77, 0xBC, 0x57, 0xA3, 0x94, 0x93, 0x32, 0x8B, 0xD3, 0x8D, 0x17, 0x75, 0xF8, 0x5E, 0xB9, 0x47, 0x39, 0x27, 0x58, 0x17, 0x57, 0x0F, 0x77, 0x0F, 0x97, 0x07, 0x96, 0x02, 0x07, 0xB6, 0x02, 0x07, 0xB5, 0x01, 0x07, 0xB4, 0x01, 0x07, 0xB3, 0x83, 0x07, 0xD3, 0x07, 0xD2, 0x07, 0xB2, 0x07, 0xB1, 0x01, 0x07, 0xD1, 0x01, 0x07, 0xD0, 0x85, 0x07, 0xCF, 0x07, 0xAF, 0x07, 0xAE, 0x07, 0xCE, 0x07, 0xAE, 0x07, 0xAD, 0x01, 0x07, 0xCD, 0x02, 0x07, 0xAC, 0x02, 0x07, 0xAB, 0x80, 0x07, 0xCB, 0x01, 0x07, 0xCA, 0x80, 0x07, 0xAA, 0x01, 0x07, 0xA9, 0x01, 0x07, 0x89, 0x01, 0x07, 0x8A, 0x01, 0x07, 0x8B, 0x80, 0x07, 0x6C, 0x01, 0x0F, 0x6D, 0x92, 0x0F, 0x4E, 0x0F, 0x2E, 0x0F, 0x0F, 0x0E, 0xF0, 0x16, 0xD1, 0x16, 0xD3, 0x16, 0x73, 0x0D, 0xF3, 0x05, 0x53, 0x04, 0xB3, 0x04, 0x54, 0x04, 0x16, 0x03, 0xD7, 0x03, 0xB8, 0x03, 0x9A, 0x03, 0x9B, 0x03, 0x7C, 0x03, 0x5C, 0x03, 0x5D, 0x01, 0x03, 0x5E, 0x81, 0x03, 0x3E, 0x03, 0x1E, 0x01, 0x03, 0x1F, 0x02, 0x02, 0xFF, 0x81, 0x02, 0xDF, 0x02, 0xBF, 0x04, 0x02, 0x9F, 0x01, 0x02, 0x7F, 0x02, 0x02, 0x5F, 0x02, 0x02, 0x3F, 0x02, 0x02, 0x1F, 0x82, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x01, 0xDF, 0x81, 0x01, 0xBF, 0x01, 0x9F, 0x01, 0x01, 0xBF, 0x8F, 0x01, 0x9F, 0x01, 0xBF, 0x01, 0x9F, 0x01, 0xBE, 0x01, 0x9E, 0x01, 0x9C, 0x01, 0xDC, 0x02, 0x3C, 0x02, 0xFC, 0x03, 0xBC, 0x1D, 0x5F, 0x15, 0xFF, 0x0E, 0x5F, 0x06, 0x9E, 0x17, 0x5F, 0x17, 0xBF, 0x01, 0x0F, 0xBF, 0x81, 0x07, 0xBF, 0x0F, 0xDF, 0x01, 0x0F, 0xBF, 0x8D, 0x0F, + 0x7E, 0x1F, 0x9F, 0x2F, 0x3E, 0x3E, 0xDE, 0x66, 0xBE, 0x86, 0x5E, 0x74, 0x17, 0x6A, 0x31, 0x9A, 0x32, 0xBA, 0x33, 0xCA, 0x14, 0xD1, 0xD3, 0xD1, 0xB3, 0xD1, 0xD4, 0x01, 0xD1, 0x93, 0x8C, 0xD1, 0xB3, 0xD1, 0xD3, 0xC9, 0xB3, 0xC9, 0xD3, 0xC9, 0xF4, 0xC2, 0x35, 0xBA, 0x56, 0x99, 0xD4, 0x50, 0x4E, 0x50, 0xF1, 0x51, 0x52, 0x41, 0x52, 0x39, 0x51, 0x01, 0x39, 0x71, 0x81, 0x31, 0x51, 0x31, 0x31, 0x04, 0x31, 0x51, 0x01, 0x31, 0x31, 0x11, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x06, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x01, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x02, 0x19, 0xF7, 0x84, 0x11, 0x95, 0x11, 0x53, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x0E, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, + 0x10, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x06, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x19, 0x11, 0x84, 0x11, 0x32, 0x11, 0x33, 0x11, 0x95, 0x11, 0xD7, 0x09, 0xD8, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x01, 0x09, 0xF9, 0x86, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x33, 0x08, 0xF2, 0x11, 0x12, 0x11, 0x33, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, + 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x31, 0x05, 0x21, 0x30, 0x0B, 0x21, 0x31, 0x80, 0x21, 0x10, 0x03, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x11, 0x80, 0x21, 0x10, 0x02, 0x21, 0x11, 0x01, 0x21, 0x10, 0x83, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x01, 0x19, 0x30, 0x81, 0x21, 0x30, 0x19, 0x10, 0x01, 0x21, 0x30, 0x83, 0x19, 0x10, 0x21, 0x30, 0x19, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x19, 0x12, 0x11, 0x32, 0x09, 0x33, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x33, 0x11, 0x11, 0x01, 0x19, 0x31, 0x85, 0x21, 0x51, 0x21, 0x71, 0x19, 0x31, 0x19, 0x10, 0x19, 0x31, 0x11, 0x31, 0x01, 0x11, 0x53, 0x80, 0x11, 0x95, 0x01, 0x19, 0xF7, 0x85, 0x22, 0x18, 0x19, 0xB6, + 0x11, 0x74, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x8C, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xB5, 0x11, 0x33, 0x01, 0x11, 0x12, 0x86, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x84, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x10, 0x08, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, + 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x28, 0xEE, 0x01, 0x28, 0xCD, 0x93, 0x28, 0xAC, 0x28, 0xAD, 0x28, 0xAC, 0x28, 0x6C, 0x28, 0x4B, 0x28, 0x2B, 0x28, 0x2A, 0x38, 0x8C, 0x51, 0x2E, 0x72, 0x11, 0x8A, 0xD4, 0xAB, 0xB8, 0xBC, 0x5A, 0xCC, 0xDC, 0xDD, 0x1D, 0xE5, 0x5E, 0xE5, 0x5D, 0xE5, 0x1D, 0xDC, 0xFC, 0xD4, 0xBB, 0x02, 0xD4, 0x9A, 0x80, 0xD4, 0x7A, 0x01, 0xDC, 0x9A, 0x09, 0xDC, 0x79, 0x01, 0xDC, 0x99, 0x89, 0xE4, 0x99, 0xDC, 0x79, 0xDC, 0x58, 0xD4, 0x58, 0xDC, 0x58, 0xDC, 0x79, 0xDC, 0x99, 0xDC, 0x79, 0xDC, 0x58, 0xD4, 0x38, 0x01, 0xDC, 0x58, 0x80, 0xDC, 0x79, 0x02, 0xDC, 0x58, 0x80, 0xDC, 0x38, 0x01, 0xDC, 0x58, 0x84, 0xDC, 0x37, 0xDC, 0x58, 0xDC, 0x38, 0xDC, 0x58, 0xDC, 0x38, 0x02, 0xDC, 0x58, 0x01, 0xDC, 0x37, 0x82, 0xDC, 0x57, 0xDC, 0x58, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x81, 0xDC, 0x58, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x81, 0xE4, 0x57, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x83, 0xDC, 0x37, 0xDC, 0x16, 0xDC, 0x37, 0xDC, 0x16, 0x01, 0xDC, 0x36, 0x02, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x81, 0xDC, 0x77, 0xDC, 0x57, 0x02, 0xDC, 0x77, 0x91, 0xD4, 0x57, 0xC4, 0x57, 0xBC, 0x77, 0xB4, 0xF8, 0xB5, 0x9A, 0xA5, 0xFB, 0x96, 0x3C, 0x7E, 0x5C, 0x76, 0x7C, 0x66, 0x9C, 0x56, 0x9C, 0x4E, 0xBC, 0x46, 0xFD, 0x3E, 0xFD, 0x37, 0x1E, 0x2F, 0x3D, 0x2F, 0x7E, 0x27, 0x7E, + 0x01, 0x1F, 0x7E, 0x82, 0x17, 0x7E, 0x17, 0x9F, 0x17, 0xBF, 0x03, 0x0F, 0xBF, 0x0C, 0x07, 0xDF, 0x98, 0x07, 0xBF, 0x0F, 0xBF, 0x0F, 0x9F, 0x1F, 0x9E, 0x2F, 0x5E, 0x3E, 0xFD, 0x56, 0x7C, 0x6D, 0xBB, 0x74, 0xB7, 0x84, 0x36, 0x8B, 0xF5, 0xAC, 0x97, 0xAC, 0x77, 0xBC, 0xD8, 0xAC, 0x97, 0x9C, 0x77, 0x73, 0xF5, 0x74, 0xD8, 0x75, 0xFB, 0x56, 0x5C, 0x46, 0xFD, 0x37, 0x7E, 0x1F, 0x9E, 0x0F, 0x9E, 0x0F, 0xDF, 0x04, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x07, 0x07, 0xDF, 0x07, 0x07, 0xDE, 0x03, 0x07, 0xBE, 0x01, 0x07, 0xBD, 0x94, 0x07, 0x9D, 0x0F, 0x9D, 0x17, 0x9D, 0x27, 0x7D, 0x47, 0x1D, 0x5E, 0x5B, 0x7D, 0x99, 0x94, 0xB7, 0xA4, 0x36, 0xB4, 0x36, 0xAB, 0x94, 0xA3, 0x53, 0x93, 0x73, 0x8C, 0x75, 0x7D, 0xB8, 0x66, 0x79, 0x4E, 0xF9, 0x37, 0x39, 0x1F, 0x58, 0x17, 0x78, 0x0F, 0x97, 0x01, 0x07, 0xB7, 0x80, 0x07, 0xD7, 0x01, 0x07, 0xB6, 0x03, 0x07, 0xB5, 0x81, 0x07, 0xB4, 0x07, 0xD4, 0x02, 0x07, 0xD3, 0x01, 0x07, 0xD2, 0x02, 0x07, 0xD1, 0x82, 0x07, 0xB0, 0x07, 0xD0, 0x07, 0xCF, 0x01, 0x07, 0xAF, 0x02, 0x07, 0xCE, 0x01, 0x07, 0xCD, 0x80, 0x07, 0xCC, 0x02, 0x07, 0xAC, 0x02, 0x07, 0xCB, 0x80, 0x07, 0xCA, 0x03, 0x07, 0xAA, 0x01, 0x07, 0x8A, 0x02, 0x07, 0x8B, 0x01, 0x07, 0x8C, 0x01, 0x07, 0x6D, 0x91, 0x07, 0x4D, 0x0F, 0x2E, 0x0F, 0x4F, 0x0F, 0x10, 0x16, 0xF1, 0x16, 0xD3, 0x1E, 0x94, 0x16, 0x15, 0x0D, 0x54, 0x04, 0xB4, 0x04, 0x35, 0x03, 0xF6, 0x03, 0xB7, 0x03, 0xB8, 0x03, 0x9A, 0x03, 0x9B, 0x03, 0x5B, 0x03, 0x5C, 0x01, 0x03, 0x3D, 0x80, 0x03, 0x3E, + 0x01, 0x03, 0x1E, 0x02, 0x02, 0xFF, 0x81, 0x02, 0xDF, 0x02, 0xBF, 0x02, 0x02, 0x9F, 0x02, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x80, 0x02, 0x7F, 0x03, 0x02, 0x3F, 0x80, 0x02, 0x1F, 0x02, 0x01, 0xFF, 0x03, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x03, 0x01, 0x9F, 0x8E, 0x01, 0xBF, 0x01, 0xBE, 0x01, 0xDE, 0x01, 0xBD, 0x01, 0x9B, 0x01, 0xDB, 0x02, 0x3B, 0x03, 0x1C, 0x0C, 0x7E, 0x1D, 0x9F, 0x16, 0x1F, 0x0E, 0x7F, 0x0E, 0xDF, 0x17, 0x9F, 0x17, 0xBF, 0x01, 0x0F, 0xBF, 0xA0, 0x07, 0xBF, 0x0F, 0xBF, 0x07, 0x9F, 0x17, 0xBF, 0x17, 0x7F, 0x2F, 0x9F, 0x37, 0x1E, 0x4E, 0xBD, 0x76, 0xDF, 0x8D, 0x9C, 0x62, 0xD3, 0x8A, 0x52, 0xAA, 0x33, 0xC2, 0x13, 0xC9, 0xF3, 0xC9, 0xB3, 0xD1, 0x93, 0xD1, 0xB4, 0xD1, 0x93, 0xD1, 0xB3, 0xD1, 0xD4, 0xD1, 0xB3, 0xC9, 0xD4, 0xC9, 0xD3, 0xC1, 0xF4, 0xBA, 0x35, 0xBA, 0x97, 0x79, 0x31, 0x58, 0xB0, 0x51, 0x31, 0x49, 0x52, 0x41, 0x52, 0x39, 0x51, 0x01, 0x39, 0x72, 0x02, 0x31, 0x51, 0x82, 0x39, 0x71, 0x31, 0x51, 0x31, 0x30, 0x01, 0x31, 0x51, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x14, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x09, 0x34, 0x11, 0xB6, 0x02, 0x1A, 0x18, 0x80, 0x19, 0xF8, 0x03, 0x1A, 0x18, 0x85, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x02, 0x19, 0x31, + 0x05, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x19, 0x30, 0x08, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x8D, + 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xFA, 0x01, 0xD9, 0x04, 0x01, 0xDA, 0x8E, 0x01, 0xD9, 0x09, 0xF9, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x55, 0x08, 0xF3, 0x11, 0x34, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x10, 0x04, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x83, 0x19, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x30, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x02, 0x19, 0x31, 0x84, 0x21, 0x31, 0x19, 0x11, 0x19, 0x10, 0x21, 0x11, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x83, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x03, 0x21, 0x31, 0x81, 0x19, 0x31, 0x19, 0x10, 0x03, 0x21, 0x31, 0x83, 0x21, 0x11, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x01, 0x21, 0x11, 0x05, 0x21, 0x31, 0x81, 0x19, 0x31, 0x19, 0x30, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x19, 0x31, 0x0E, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0A, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x4F, 0x01, + 0x21, 0x2F, 0x01, 0x29, 0x30, 0x87, 0x21, 0x30, 0x21, 0x31, 0x21, 0x32, 0x19, 0x12, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x96, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x72, 0x21, 0x31, 0x19, 0x10, 0x19, 0x31, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x09, 0x33, 0x11, 0x95, 0x19, 0xF7, 0x22, 0x18, 0x22, 0x17, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x53, 0x19, 0x32, 0x19, 0x12, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x50, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x8F, 0x21, 0x51, 0x19, 0x52, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0xD6, 0x1A, 0x17, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, + 0x11, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x20, 0xEE, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x03, 0x28, 0xEE, 0x80, 0x28, 0xCD, 0x01, 0x28, 0xAD, 0x01, 0x30, 0xAD, 0x90, 0x30, 0x8C, 0x28, 0x6C, 0x20, 0x2B, 0x20, 0x0A, 0x18, 0x09, 0x20, 0x09, 0x28, 0x0A, 0x38, 0x6B, 0x51, 0x4E, 0x61, 0xD0, 0x7A, 0x72, 0x92, 0xF5, 0xAB, 0xD8, 0xBC, 0x3A, 0xC4, 0x5A, 0xCC, 0x9B, 0xD4, 0xDC, 0x01, 0xDC, 0xFC, 0x02, 0xE5, 0x1C, 0x81, 0xED, 0x1C, 0xE4, 0xFC, 0x01, 0xE4, 0xFB, 0x01, 0xE4, 0xDB, 0x84, 0xDC, 0xDB, 0xDC, 0xBA, 0xD4, 0x9A, 0xD4, 0x79, 0xD4, 0x9A, 0x02, 0xD4, 0x79, 0x84, 0xCC, 0x58, 0xD4, 0x58, 0xD4, 0x59, 0xDC, 0x79, 0xD4, 0x79, 0x02, 0xDC, 0x79, 0x82, 0xD4, 0x38, 0xD4, 0x58, 0xDC, 0x59, 0x01, 0xDC, 0x79, 0x02, 0xDC, 0x58, 0x80, 0xD4, 0x38, 0x02, 0xDC, 0x38, 0x03, 0xDC, 0x58, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x03, 0xDC, 0x58, 0x04, 0xDC, 0x57, 0x80, 0xE4, 0x58, 0x02, 0xDC, 0x37, 0x80, 0xDC, 0x16, 0x06, 0xDC, 0x37, 0x80, 0xDC, 0x36, 0x02, 0xDC, + 0x37, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x83, 0xDC, 0x57, 0xDC, 0x36, 0xD4, 0x16, 0xDC, 0x56, 0x02, 0xDC, 0x57, 0x81, 0xD4, 0x36, 0xDC, 0x36, 0x02, 0xDC, 0x57, 0x01, 0xDC, 0x77, 0x96, 0xDC, 0x78, 0xD4, 0x78, 0xCC, 0x98, 0xBC, 0x97, 0xA4, 0x36, 0x8C, 0x56, 0x84, 0xB7, 0x7D, 0x18, 0x7D, 0x9A, 0x7E, 0x1C, 0x76, 0x5C, 0x6E, 0x9D, 0x66, 0x9D, 0x5E, 0xDD, 0x56, 0xDD, 0x46, 0xFD, 0x3E, 0xFD, 0x37, 0x1E, 0x37, 0x3E, 0x2F, 0x3E, 0x2F, 0x5E, 0x27, 0x5E, 0x1F, 0x7F, 0x01, 0x17, 0x9F, 0x03, 0x0F, 0xBF, 0x80, 0x0F, 0xDF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x05, 0x07, 0xDF, 0x99, 0x07, 0xBF, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x7E, 0x37, 0x5E, 0x57, 0x1E, 0x6E, 0x7D, 0x95, 0xFB, 0x8C, 0x76, 0x9C, 0x16, 0xB4, 0x36, 0xC4, 0x97, 0xC4, 0x77, 0xCC, 0xB8, 0xC4, 0x77, 0xBC, 0x77, 0x9C, 0x16, 0x84, 0x36, 0x85, 0x7A, 0x6E, 0x3B, 0x5E, 0xFD, 0x47, 0x3D, 0x2F, 0x5E, 0x17, 0x7E, 0x0F, 0xBE, 0x07, 0xBE, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x05, 0x07, 0xDF, 0x08, 0x07, 0xDE, 0x84, 0x07, 0xBE, 0x07, 0xDE, 0x07, 0xBE, 0x07, 0xDE, 0x07, 0xBD, 0x01, 0x07, 0x9D, 0x97, 0x17, 0x9D, 0x2F, 0x7D, 0x47, 0x1D, 0x56, 0x5B, 0x85, 0xBA, 0x8C, 0xB7, 0xA4, 0x36, 0xB4, 0x16, 0xB3, 0xD5, 0xAB, 0xB4, 0x9B, 0x73, 0x83, 0xD3, 0x7D, 0x37, 0x76, 0x59, 0x4E, 0x99, 0x3F, 0x19, 0x27, 0x38, 0x17, 0x78, 0x0F, 0x98, 0x07, 0x98, 0x07, 0xD8, 0x07, 0xD7, 0x07, 0xB7, 0x07, 0xD7, 0x01, 0x07, 0xD6, 0x81, 0x07, 0xB6, 0x07, 0xB5, 0x01, 0x07, 0xD5, + 0x01, 0x07, 0xD4, 0x02, 0x07, 0xD3, 0x02, 0x07, 0xD2, 0x01, 0x07, 0xD1, 0x01, 0x07, 0xD0, 0x02, 0x07, 0xCF, 0x02, 0x07, 0xCE, 0x03, 0x07, 0xCD, 0x82, 0x07, 0xCC, 0x07, 0xAC, 0x07, 0xCC, 0x02, 0x07, 0xAB, 0x80, 0x07, 0xCB, 0x02, 0x07, 0xAB, 0x82, 0x07, 0x8B, 0x07, 0xAB, 0x07, 0x8B, 0x03, 0x07, 0x8C, 0x01, 0x07, 0x8D, 0x92, 0x07, 0x6E, 0x0F, 0x6F, 0x0F, 0x50, 0x0F, 0x31, 0x17, 0x12, 0x16, 0xD3, 0x1E, 0xB5, 0x1E, 0x56, 0x15, 0xD7, 0x04, 0xD5, 0x04, 0x55, 0x03, 0xF6, 0x03, 0xB7, 0x03, 0x78, 0x03, 0x7A, 0x03, 0x7B, 0x03, 0x5C, 0x03, 0x3C, 0x03, 0x3D, 0x01, 0x03, 0x1E, 0x81, 0x02, 0xFE, 0x02, 0xFF, 0x01, 0x02, 0xDF, 0x01, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x82, 0x02, 0x7F, 0x02, 0x9F, 0x02, 0x7F, 0x03, 0x02, 0x5F, 0x81, 0x02, 0x3F, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x80, 0x02, 0x1F, 0x01, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x80, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x02, 0x01, 0x9F, 0x8E, 0x01, 0xBF, 0x01, 0xBE, 0x09, 0xFE, 0x09, 0xDD, 0x01, 0x9C, 0x01, 0x7B, 0x02, 0x1B, 0x02, 0x5A, 0x03, 0x7C, 0x1D, 0x3F, 0x1D, 0xDF, 0x16, 0x3F, 0x06, 0x5E, 0x17, 0x3F, 0x17, 0xBF, 0x01, 0x0F, 0xBF, 0x80, 0x0F, 0xDF, 0x02, 0x0F, 0xBF, 0x8B, 0x17, 0x9F, 0x1F, 0x7F, 0x2F, 0x5F, 0x3E, 0xFE, 0x5E, 0xBE, 0x86, 0x5E, 0x63, 0xB5, 0x69, 0xF0, 0x9A, 0x12, 0xBA, 0x13, 0xC9, 0xF3, 0xC9, 0xB3, 0x01, 0xD1, 0xB3, 0x80, 0xD1, 0x93, 0x01, 0xD1, 0xB3, 0x80, 0xD1, 0xD4, 0x01, 0xC9, 0xB3, 0x88, 0xC9, 0xF4, 0xC2, 0x35, 0xC2, 0x76, 0xAA, 0x35, 0x58, 0x6F, 0x59, + 0x11, 0x51, 0x52, 0x41, 0x52, 0x41, 0x51, 0x02, 0x39, 0x71, 0x07, 0x31, 0x51, 0x03, 0x29, 0x30, 0x80, 0x29, 0x50, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x06, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x83, 0x11, 0x12, 0x09, 0x33, 0x11, 0xB6, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x82, 0x11, 0xD7, 0x09, 0x97, 0x11, 0xB7, 0x01, 0x19, 0xF8, 0x88, 0x11, 0xF8, 0x11, 0xD7, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x04, 0x19, 0x31, 0x80, 0x19, 0x30, 0x03, 0x19, 0x31, 0x81, 0x19, 0x51, 0x19, 0x30, 0x07, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, + 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x08, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x30, 0x19, 0x10, 0x11, 0x11, 0x11, 0x33, 0x09, 0x74, 0x11, 0xD7, 0x11, 0xF9, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x8B, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xB7, 0x09, 0x55, 0x09, 0x35, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x51, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x03, 0x21, 0x11, 0x81, 0x19, 0x11, 0x21, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x32, 0x03, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, + 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x0A, 0x19, 0x11, 0x02, 0x19, 0x31, 0x02, 0x19, 0x11, 0x06, 0x19, 0x31, 0x05, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x24, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x51, 0x01, 0x21, 0x31, 0x01, 0x21, 0x50, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x89, 0x29, 0x30, 0x21, 0x30, 0x29, 0x51, 0x21, 0x31, 0x21, 0x32, 0x19, 0x12, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x82, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x32, 0x01, 0x11, 0x11, 0x01, 0x21, 0x51, 0x01, 0x21, 0x31, 0x81, 0x21, 0x51, 0x19, 0x52, 0x01, 0x11, 0x32, 0x87, 0x09, 0x53, 0x11, 0x95, 0x19, 0xF7, 0x22, 0x38, 0x22, 0x17, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x33, 0x01, 0x19, 0x12, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x29, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, + 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x50, 0x19, 0x51, 0x11, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x1A, 0x17, 0x22, 0x17, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x18, 0xF1, 0x02, 0x19, 0x11, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x06, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x0E, 0x20, 0xEE, 0x01, 0x29, 0x0E, 0x01, 0x28, 0xCD, 0x04, 0x28, 0xCE, 0x01, 0x28, 0xAD, 0x85, 0x28, 0x8C, 0x28, 0x6C, 0x28, 0x4C, 0x28, 0x4B, 0x20, 0x2A, 0x20, 0x0A, 0x02, 0x28, 0x0A, 0x8E, 0x30, 0x2A, 0x38, 0x4B, 0x40, 0x8C, 0x48, 0xCC, 0x51, 0x2E, 0x61, 0x6E, 0x69, 0xD0, 0x71, 0xF1, 0x8A, 0x93, 0x92, 0xF5, 0xAB, 0x97, 0xBC, 0x18, 0xD4, 0xDB, 0xDD, 0x1D, 0xDD, 0x1C, 0x01, 0xE5, 0x5E, 0x88, 0xED, 0x7E, 0xE5, 0x5E, 0xE5, 0x3D, 0xDD, 0x1C, 0xDC, 0xFC, 0xD4, 0xDB, 0xD4, 0xBA, 0xD4, 0xBB, 0xD4, 0x9A, 0x01, 0xDC, 0xBB, 0x84, 0xDC, 0x9A, 0xD4, 0x9A, 0xD4, + 0x7A, 0xDC, 0x9A, 0xDC, 0x7A, 0x03, 0xDC, 0x9A, 0x02, 0xDC, 0x79, 0x01, 0xDC, 0x59, 0x03, 0xDC, 0x58, 0x01, 0xDC, 0x78, 0x81, 0xDC, 0x58, 0xDC, 0x78, 0x07, 0xDC, 0x58, 0x80, 0xDC, 0x57, 0x04, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x04, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x57, 0x01, 0xDC, 0x36, 0x05, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x9C, 0xDC, 0x77, 0xDC, 0x78, 0xD4, 0x57, 0xD4, 0x77, 0xCC, 0xB8, 0xCC, 0xD9, 0xBC, 0xF9, 0xAC, 0xF9, 0x9C, 0xD8, 0x84, 0xB7, 0x7C, 0xB7, 0x74, 0xD7, 0x75, 0x39, 0x75, 0xBA, 0x76, 0x3C, 0x76, 0x7D, 0x76, 0xBD, 0x66, 0x9D, 0x5E, 0xBD, 0x4E, 0xBD, 0x4E, 0xDD, 0x47, 0x1E, 0x3F, 0x3E, 0x37, 0x5E, 0x27, 0x5E, 0x27, 0x7E, 0x1F, 0x7E, 0x17, 0x9F, 0x17, 0xBF, 0x03, 0x0F, 0xBF, 0x05, 0x07, 0xDF, 0x81, 0x07, 0xBF, 0x07, 0xBE, 0x01, 0x0F, 0xBF, 0x97, 0x1F, 0x9E, 0x27, 0x7E, 0x47, 0x5F, 0x5E, 0xBD, 0x7E, 0x1C, 0xA5, 0xBB, 0x93, 0xD4, 0xBC, 0x36, 0xCC, 0x57, 0xD4, 0x57, 0xCC, 0x16, 0xD4, 0x57, 0xCC, 0x16, 0xC4, 0x36, 0xB4, 0x57, 0x94, 0x16, 0x7C, 0x76, 0x7D, 0xDA, 0x6E, 0x9C, 0x4E, 0xBC, 0x37, 0x3D, 0x27, 0x7E, 0x17, 0x9E, 0x0F, 0xBF, 0x04, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x08, 0x07, 0xDE, 0x01, 0x07, 0xBE, 0x98, 0x07, 0xDE, 0x07, 0xBE, 0x07, 0xBD, 0x07, 0x9D, 0x17, 0x9D, 0x27, 0x7D, 0x3F, 0x1D, 0x56, 0x5B, 0x7D, 0xDA, 0x8C, 0xF8, 0x9C, 0x15, 0xB4, 0x16, 0xBC, 0x16, 0xB3, 0xB5, 0xAB, + 0xB5, 0x8B, 0x93, 0x7C, 0x95, 0x86, 0x19, 0x5E, 0x79, 0x46, 0xFA, 0x2F, 0x39, 0x1F, 0x79, 0x0F, 0x78, 0x0F, 0x98, 0x07, 0xB8, 0x01, 0x07, 0xD8, 0x03, 0x07, 0xD7, 0x01, 0x07, 0xD6, 0x02, 0x07, 0xD5, 0x02, 0x07, 0xD4, 0x02, 0x07, 0xD3, 0x01, 0x07, 0xD2, 0x01, 0x07, 0xD1, 0x03, 0x07, 0xD0, 0x02, 0x07, 0xCF, 0x02, 0x07, 0xCE, 0x04, 0x07, 0xCD, 0x02, 0x07, 0xCC, 0x02, 0x07, 0xAC, 0x82, 0x07, 0x8C, 0x07, 0xAC, 0x07, 0x8C, 0x01, 0x07, 0xAC, 0x01, 0x07, 0xAD, 0x01, 0x07, 0x8D, 0x91, 0x07, 0x8E, 0x07, 0x6F, 0x0F, 0x70, 0x0F, 0x51, 0x17, 0x32, 0x1F, 0x34, 0x16, 0xD5, 0x1E, 0xB6, 0x1E, 0x77, 0x1D, 0xF8, 0x0D, 0x17, 0x04, 0x56, 0x03, 0xD6, 0x03, 0xB7, 0x03, 0x79, 0x03, 0x5A, 0x03, 0x5B, 0x03, 0x3C, 0x01, 0x03, 0x1D, 0x01, 0x02, 0xFE, 0x81, 0x02, 0xDE, 0x02, 0xDF, 0x01, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x02, 0x02, 0x7F, 0x02, 0x02, 0x5F, 0x02, 0x02, 0x3F, 0x02, 0x02, 0x1F, 0x82, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xFF, 0x03, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x81, 0x01, 0x9F, 0x01, 0x7F, 0x01, 0x01, 0x9F, 0x90, 0x01, 0xBF, 0x01, 0xBE, 0x09, 0xDE, 0x01, 0x5B, 0x01, 0x5A, 0x11, 0xFB, 0x02, 0x3A, 0x02, 0x9A, 0x1C, 0x5E, 0x2D, 0xDF, 0x1D, 0xFF, 0x16, 0x7F, 0x0E, 0xBF, 0x17, 0x7F, 0x17, 0xBF, 0x0F, 0xDF, 0x07, 0xBF, 0x01, 0x0F, 0xDF, 0x8D, 0x07, 0x9F, 0x0F, 0xBF, 0x17, 0x7E, 0x27, 0x7F, 0x2F, 0x1E, 0x4E, 0xDE, 0x76, 0xBF, 0x7D, 0x5B, 0x5A, 0x51, 0x8A, 0x12, 0xB2, 0x33, 0xCA, 0x14, 0xC9, 0xD3, 0xC9, 0xB3, 0x04, 0xD1, 0xB3, 0x90, 0xD1, 0xD4, 0xC9, + 0xB3, 0xC9, 0xD3, 0xC1, 0xF4, 0xC2, 0x35, 0xBA, 0x76, 0x81, 0x31, 0x50, 0xAF, 0x59, 0x52, 0x49, 0x52, 0x41, 0x52, 0x39, 0x51, 0x39, 0x71, 0x39, 0x72, 0x31, 0x71, 0x31, 0x51, 0x31, 0x31, 0x03, 0x31, 0x51, 0x01, 0x31, 0x50, 0x80, 0x29, 0x50, 0x0B, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x04, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x31, 0x21, 0x11, 0x19, 0x31, 0x11, 0x12, 0x09, 0x54, 0x01, 0x19, 0xF8, 0x81, 0x1A, 0x39, 0x11, 0xD8, 0x02, 0x09, 0x76, 0x81, 0x09, 0x56, 0x09, 0x96, 0x01, 0x11, 0xB7, 0x85, 0x1A, 0x18, 0x22, 0x18, 0x19, 0xB6, 0x11, 0x55, 0x11, 0x54, 0x11, 0x33, 0x01, 0x11, 0x12, 0x81, 0x11, 0x31, 0x11, 0x11, 0x03, 0x19, 0x11, 0x80, 0x11, 0x11, 0x05, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x31, 0x81, 0x21, 0x51, 0x21, 0x31, 0x0A, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x09, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x09, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, + 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x8A, 0x19, 0x10, 0x19, 0x31, 0x11, 0x31, 0x09, 0x33, 0x11, 0x95, 0x09, 0xB7, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x83, 0x09, 0xD8, 0x11, 0xD8, 0x09, 0x97, 0x01, 0x36, 0x03, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x19, 0x0F, 0x19, 0x10, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x01, 0x19, 0x11, 0x80, 0x10, 0xF1, 0x01, 0x19, 0x11, 0x82, 0x18, 0xF1, 0x19, 0x12, + 0x11, 0x12, 0x04, 0x10, 0xF2, 0x80, 0x11, 0x12, 0x0E, 0x11, 0x11, 0x01, 0x19, 0x11, 0x81, 0x19, 0x12, 0x11, 0x11, 0x01, 0x11, 0x12, 0x03, 0x11, 0x11, 0x03, 0x11, 0x12, 0x80, 0x11, 0x31, 0x01, 0x11, 0x11, 0x81, 0x19, 0x11, 0x11, 0x11, 0x02, 0x19, 0x11, 0x80, 0x19, 0x31, 0x05, 0x19, 0x11, 0x20, 0x11, 0x11, 0x83, 0x10, 0xF0, 0x11, 0x10, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x02, 0x19, 0x30, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x74, 0x09, 0x12, 0x11, 0x11, 0x11, 0x10, 0x19, 0x31, 0x01, 0x21, 0x31, 0x90, 0x21, 0x51, 0x21, 0x52, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x09, 0x53, 0x11, 0x74, 0x19, 0xF7, 0x22, 0x38, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x13, 0x19, 0x12, 0x18, 0xF1, 0x21, 0x11, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x29, 0x10, 0x04, 0x21, 0x10, 0x02, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, + 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x84, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x51, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x17, 0x22, 0x38, 0x19, 0xD6, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x08, 0x21, 0x30, 0x80, 0x21, 0x50, 0x07, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x28, 0xEF, 0x02, 0x28, 0xEE, 0x81, 0x28, 0xCE, 0x28, 0xEE, 0x01, 0x28, 0xAD, 0x80, 0x28, 0x8D, 0x02, 0x28, 0xAD, 0x82, 0x30, 0xAD, 0x28, 0xAD, 0x28, 0xAC, 0x01, 0x28, 0x8C, 0x01, 0x28, 0x6C, 0x82, 0x20, 0x4B, 0x20, 0x2B, 0x20, 0x2A, 0x04, 0x18, 0x09, 0x8D, 0x20, 0x09, 0x20, 0x0A, 0x28, 0x2A, 0x30, 0x6B, 0x59, 0x90, 0x6A, 0x32, 0x82, 0xB4, 0x93, 0x36, 0x9B, 0x77, 0xAB, 0xD9, + 0xC4, 0xBB, 0xCC, 0xDC, 0xD4, 0xFD, 0xDD, 0x1E, 0x01, 0xDD, 0x1D, 0x80, 0xE5, 0x5E, 0x01, 0xE5, 0x3E, 0x83, 0xE5, 0x3D, 0xE5, 0x1D, 0xE5, 0x3D, 0xE5, 0x1C, 0x01, 0xE4, 0xFC, 0x80, 0xE4, 0xFB, 0x01, 0xDC, 0xDB, 0x83, 0xDC, 0xBA, 0xDC, 0x9A, 0xDC, 0x99, 0xDC, 0xBA, 0x07, 0xDC, 0x99, 0x01, 0xDC, 0x79, 0x81, 0xDC, 0x78, 0xDC, 0x99, 0x01, 0xDC, 0x58, 0x80, 0xDC, 0x78, 0x04, 0xE4, 0x78, 0x01, 0xDC, 0x58, 0x85, 0xDC, 0x37, 0xDC, 0x57, 0xE4, 0x58, 0xE4, 0x78, 0xE4, 0x58, 0xE4, 0x57, 0x01, 0xE4, 0x58, 0x01, 0xDC, 0x37, 0x81, 0xDC, 0x16, 0xDC, 0x37, 0x06, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x9E, 0xDC, 0x37, 0xDC, 0x57, 0xD4, 0x37, 0xDC, 0x37, 0xDC, 0x78, 0xD4, 0x78, 0xCC, 0x37, 0xC4, 0x57, 0xC4, 0x77, 0xC4, 0xB8, 0xC5, 0x19, 0xBD, 0x1A, 0xB5, 0x1A, 0xAD, 0x19, 0x9C, 0xD8, 0x8C, 0x97, 0x7C, 0x76, 0x7C, 0xD7, 0x8D, 0x7A, 0x8D, 0xFC, 0x8E, 0x3D, 0x7E, 0x5D, 0x7E, 0xBD, 0x6E, 0xBD, 0x56, 0xBD, 0x46, 0x9D, 0x3E, 0xFD, 0x37, 0x1E, 0x2F, 0x5E, 0x27, 0x5E, 0x1F, 0x7E, 0x01, 0x17, 0x9E, 0x80, 0x0F, 0xBE, 0x01, 0x0F, 0xBF, 0x01, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x8C, 0x07, 0xBE, 0x0F, 0x9E, 0x17, 0xBF, 0x27, 0x9E, 0x37, 0x7E, 0x46, 0xFD, 0x66, 0x5C, 0x75, 0x59, 0xA5, 0x39, 0xAC, 0x56, 0xCC, 0x78, 0xD4, 0x57, 0xCB, 0xF6, 0x01, 0xD3, 0xF6, 0x8B, 0xCB, 0xD5, 0xD4, 0x37, 0xCC, 0x78, 0xAC, 0x17, 0x83, 0xD5, 0x7C, 0xF8, 0x7E, 0x3C, 0x56, 0x5B, 0x46, 0xFD, 0x37, 0x7E, 0x1F, 0x9E, 0x0F, 0xBE, 0x03, 0x07, 0xDF, 0x80, + 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x02, 0x07, 0xDE, 0x80, 0x07, 0xDF, 0x05, 0x07, 0xDE, 0x95, 0x07, 0xBE, 0x0F, 0x9D, 0x17, 0x9E, 0x27, 0x7E, 0x36, 0xFD, 0x56, 0x7B, 0x7D, 0xFA, 0x95, 0x59, 0x94, 0x15, 0xAB, 0xF6, 0xC4, 0x37, 0xC3, 0xF6, 0xB3, 0xB5, 0x93, 0x94, 0x7B, 0xF3, 0x8D, 0x98, 0x6E, 0x5A, 0x56, 0xDA, 0x37, 0x3A, 0x27, 0x5A, 0x17, 0x79, 0x0F, 0x99, 0x01, 0x07, 0xB9, 0x80, 0x07, 0xD9, 0x02, 0x07, 0xD8, 0x02, 0x07, 0xD7, 0x02, 0x07, 0xD6, 0x03, 0x07, 0xD5, 0x01, 0x07, 0xD4, 0x01, 0x07, 0xD3, 0x02, 0x07, 0xD2, 0x02, 0x07, 0xD1, 0x03, 0x07, 0xD0, 0x02, 0x07, 0xCF, 0x04, 0x07, 0xCE, 0x81, 0x07, 0xCD, 0x07, 0xAD, 0x04, 0x07, 0xCD, 0x05, 0x07, 0xAD, 0x01, 0x07, 0xAE, 0x95, 0x07, 0x8F, 0x07, 0x6F, 0x0F, 0x70, 0x0F, 0x51, 0x0F, 0x32, 0x17, 0x74, 0x17, 0x15, 0x16, 0xF5, 0x1E, 0xD7, 0x26, 0x98, 0x1E, 0x18, 0x15, 0x78, 0x04, 0x97, 0x03, 0xD7, 0x03, 0x77, 0x03, 0x38, 0x03, 0x3A, 0x03, 0x3C, 0x03, 0x1C, 0x03, 0x1D, 0x02, 0xFE, 0x02, 0xDE, 0x01, 0x02, 0xBE, 0x80, 0x02, 0x9E, 0x02, 0x02, 0x9F, 0x01, 0x02, 0x7F, 0x02, 0x02, 0x5F, 0x03, 0x02, 0x3F, 0x01, 0x02, 0x1F, 0x02, 0x01, 0xDF, 0x81, 0x01, 0xFF, 0x01, 0xDF, 0x03, 0x01, 0xBF, 0x03, 0x01, 0x9F, 0x8E, 0x01, 0x9E, 0x09, 0xBE, 0x11, 0xBE, 0x09, 0x3C, 0x09, 0x1A, 0x21, 0xFC, 0x1A, 0x5B, 0x01, 0xF8, 0x13, 0x5B, 0x3D, 0x9F, 0x25, 0xDF, 0x1E, 0x3F, 0x16, 0x7F, 0x17, 0x3F, 0x17, 0x9F, 0x03, 0x0F, 0xDF, 0x90, 0x0F, + 0xBF, 0x0F, 0x9F, 0x17, 0xBF, 0x1F, 0x7F, 0x27, 0x5F, 0x3E, 0xFE, 0x5E, 0xBE, 0x86, 0x3E, 0x6B, 0xB6, 0x69, 0xD0, 0xA2, 0x33, 0xBA, 0x14, 0xCA, 0x14, 0xC9, 0xD3, 0xD1, 0xB3, 0xD1, 0xB4, 0xD1, 0x73, 0x01, 0xD1, 0x93, 0x8F, 0xD1, 0xB3, 0xC9, 0x93, 0xC9, 0xB3, 0xC1, 0xD3, 0xC2, 0x14, 0xC2, 0x76, 0xB2, 0x76, 0x60, 0x8F, 0x58, 0xF1, 0x51, 0x72, 0x41, 0x31, 0x39, 0x51, 0x39, 0x72, 0x41, 0x92, 0x39, 0x92, 0x31, 0x51, 0x01, 0x31, 0x31, 0x02, 0x31, 0x51, 0x80, 0x31, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x15, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x8B, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x10, 0xF2, 0x19, 0x95, 0x22, 0x38, 0x1A, 0x18, 0x11, 0xF8, 0x11, 0xB7, 0x09, 0x76, 0x09, 0x35, 0x01, 0x34, 0x01, 0x09, 0x35, 0x88, 0x09, 0x76, 0x11, 0xB7, 0x1A, 0x19, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x55, 0x09, 0x34, 0x09, 0x13, 0x09, 0x12, 0x04, 0x11, 0x12, 0x80, 0x11, 0x32, 0x04, 0x11, 0x11, 0x02, 0x11, 0x31, 0x06, 0x19, 0x31, 0x02, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x05, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, + 0x10, 0x0A, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0B, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x17, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x08, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x89, 0x19, 0x10, 0x19, 0x11, 0x11, 0x52, 0x11, 0x53, 0x09, 0x75, 0x11, 0xB7, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x80, 0x09, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x83, 0x09, 0xFA, 0x09, 0xD9, 0x09, 0xB8, 0x01, 0x98, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x19, 0x10, 0x11, 0x10, 0x02, 0x11, 0x11, 0x80, 0x11, 0x32, 0x06, 0x11, 0x12, 0x05, 0x11, 0x13, 0x01, 0x11, 0x33, 0x05, 0x11, 0x32, 0x80, 0x11, 0x12, 0x1C, 0x11, 0x32, 0x81, 0x11, 0x12, 0x11, 0x32, + 0x05, 0x11, 0x12, 0x01, 0x11, 0x32, 0x81, 0x09, 0x12, 0x11, 0x12, 0x01, 0x09, 0x12, 0x81, 0x11, 0x12, 0x11, 0x32, 0x02, 0x09, 0x12, 0x80, 0x11, 0x32, 0x01, 0x09, 0x32, 0x03, 0x09, 0x12, 0x80, 0x11, 0x12, 0x03, 0x09, 0x12, 0x80, 0x11, 0x12, 0x01, 0x09, 0x11, 0x81, 0x11, 0x12, 0x09, 0x12, 0x01, 0x09, 0x11, 0x02, 0x08, 0xF1, 0x84, 0x09, 0x11, 0x11, 0x11, 0x11, 0x32, 0x11, 0x31, 0x11, 0x11, 0x01, 0x19, 0x11, 0x80, 0x11, 0x10, 0x01, 0x19, 0x31, 0x03, 0x21, 0x31, 0x04, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x52, 0x19, 0x12, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x82, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x32, 0x01, 0x11, 0x11, 0x80, 0x19, 0x11, 0x02, 0x21, 0x31, 0x01, 0x19, 0x51, 0x8B, 0x11, 0x31, 0x11, 0x32, 0x09, 0x53, 0x11, 0x74, 0x19, 0xF6, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x74, 0x19, 0x33, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x11, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x86, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, + 0x10, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x81, 0x11, 0x31, 0x11, 0x32, 0x01, 0x11, 0x53, 0x80, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x82, 0x21, 0xD6, 0x19, 0x75, 0x11, 0x33, 0x01, 0x19, 0x12, 0x80, 0x19, 0x11, 0x02, 0x21, 0x31, 0x04, 0x21, 0x30, 0x89, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x31, 0x82, 0x21, 0x51, 0x21, 0x31, 0x21, 0x51, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x28, 0xEF, 0x28, 0xEE, 0x29, 0x0F, 0x02, 0x28, 0xEE, 0x81, 0x29, 0x0E, 0x28, 0xEE, 0x04, 0x28, 0xCE, 0x82, 0x28, 0xCD, 0x28, 0xCE, 0x20, 0xAD, 0x01, 0x28, 0xCE, 0x01, 0x20, 0xAD, 0x80, 0x28, 0xCE, 0x01, 0x28, 0xCD, 0x03, 0x20, 0xAD, 0x87, 0x20, 0xAC, 0x20, 0x8C, 0x20, 0x6C, 0x20, 0x6B, 0x20, 0x4B, 0x20, 0x6C, + 0x28, 0x6C, 0x20, 0x4B, 0x01, 0x20, 0x0A, 0x9B, 0x20, 0x2A, 0x28, 0x4B, 0x30, 0x6B, 0x38, 0x8C, 0x38, 0xAD, 0x48, 0xED, 0x59, 0x4F, 0x69, 0xB1, 0x72, 0x12, 0x8A, 0xB4, 0x9B, 0x36, 0xAB, 0x97, 0xB3, 0xF9, 0xCC, 0xDB, 0xD5, 0x1C, 0xE5, 0x5E, 0xE5, 0x7E, 0xED, 0xBF, 0xED, 0x9E, 0xED, 0x7E, 0xED, 0x5D, 0xE5, 0x3C, 0xDC, 0xFB, 0xE5, 0x1C, 0xDC, 0xDB, 0xE4, 0xFB, 0xDC, 0xDB, 0xE4, 0xDB, 0x02, 0xDC, 0xBA, 0x02, 0xDC, 0x9A, 0x80, 0xDC, 0x99, 0x03, 0xDC, 0x79, 0x01, 0xDC, 0x99, 0x01, 0xE4, 0x99, 0x81, 0xDC, 0x99, 0xDC, 0x79, 0x01, 0xDC, 0x78, 0x81, 0xDC, 0x58, 0xDC, 0x78, 0x04, 0xDC, 0x58, 0x81, 0xE4, 0x58, 0xDC, 0x37, 0x01, 0xDC, 0x58, 0x80, 0xDC, 0x78, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x58, 0x02, 0xDC, 0x78, 0x03, 0xDC, 0x57, 0x83, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x58, 0xD4, 0x37, 0x01, 0xD4, 0x57, 0x80, 0xCC, 0x58, 0x01, 0xCC, 0x78, 0x81, 0xCC, 0x98, 0xCC, 0xB9, 0x01, 0xC4, 0xD9, 0x99, 0xBC, 0xD8, 0xB4, 0xD9, 0xAC, 0xB8, 0x94, 0x56, 0x84, 0x15, 0x7C, 0x35, 0x8D, 0x19, 0xA6, 0x7D, 0x9F, 0x1F, 0x7E, 0xBE, 0x6E, 0x9D, 0x56, 0x9D, 0x56, 0xFD, 0x47, 0x1D, 0x3F, 0x3E, 0x2F, 0x5E, 0x27, 0x5D, 0x1F, 0x5D, 0x1F, 0x7E, 0x17, 0x9E, 0x17, 0xBF, 0x0F, 0xBF, 0x0F, 0xBE, 0x0F, 0xBF, 0x07, 0xBF, 0x0F, 0xDF, 0x01, 0x0F, 0xBF, 0x9A, 0x0F, 0x9E, 0x17, 0x9E, 0x27, 0x7E, 0x37, 0x3E, 0x4E, 0xBD, 0x65, 0xDB, 0x85, 0x39, 0x94, 0x56, 0xBC, 0x98, 0xCC, 0x78, 0xCB, 0xF6, 0xD4, 0x16, 0xDB, 0xF6, 0xD3, 0xD6, 0xDB, 0xF6, 0xDC, 0x57, 0xCC, 0x37, 0xC4, 0x58, + 0x9C, 0x37, 0x74, 0x36, 0x75, 0x7A, 0x66, 0x3C, 0x4E, 0xBC, 0x3F, 0x5E, 0x27, 0x7E, 0x17, 0xBF, 0x0F, 0xBF, 0x03, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x81, 0x07, 0xDF, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x07, 0x07, 0xDF, 0x03, 0x07, 0xDE, 0x95, 0x07, 0xBE, 0x0F, 0x9E, 0x17, 0x9D, 0x27, 0x9E, 0x37, 0x1D, 0x4E, 0x7C, 0x76, 0x1B, 0x95, 0x79, 0x93, 0xF5, 0xAB, 0xF5, 0xBC, 0x16, 0xC3, 0xF6, 0xBB, 0xD5, 0xA3, 0x94, 0x8B, 0xD4, 0x84, 0xD6, 0x86, 0x7B, 0x5E, 0xBA, 0x3F, 0x1A, 0x27, 0x5A, 0x17, 0x7A, 0x0F, 0x9A, 0x01, 0x07, 0xB9, 0x03, 0x07, 0xD9, 0x02, 0x07, 0xD8, 0x02, 0x07, 0xD7, 0x02, 0x07, 0xD6, 0x02, 0x07, 0xD5, 0x01, 0x07, 0xD4, 0x03, 0x07, 0xD3, 0x02, 0x07, 0xD2, 0x03, 0x07, 0xD1, 0x03, 0x07, 0xD0, 0x05, 0x07, 0xCF, 0x07, 0x07, 0xCE, 0x82, 0x07, 0xAE, 0x07, 0xCE, 0x07, 0xAE, 0x01, 0x07, 0xAF, 0x99, 0x07, 0x8F, 0x07, 0x90, 0x07, 0x70, 0x0F, 0x71, 0x0F, 0x52, 0x0F, 0x53, 0x17, 0x54, 0x17, 0x35, 0x1E, 0xF6, 0x1E, 0xB7, 0x26, 0x99, 0x26, 0x5A, 0x1D, 0x9A, 0x04, 0x78, 0x03, 0xB7, 0x03, 0x58, 0x03, 0x39, 0x03, 0x3B, 0x03, 0x1C, 0x02, 0xFD, 0x02, 0xFE, 0x02, 0xBD, 0x02, 0x9E, 0x02, 0xBE, 0x02, 0x9E, 0x02, 0x9F, 0x02, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x02, 0x02, 0x3F, 0x02, 0x02, 0x1F, 0x01, 0x01, 0xFF, 0x02, 0x01, 0xDF, 0x06, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x90, 0x09, 0x9F, 0x09, 0x9E, 0x11, 0x9D, 0x11, 0x3C, 0x19, 0x3B, 0x42, 0xBF, 0x3A, 0xDD, 0x2A, 0xBB, 0x02, 0x58, 0x3C, 0xFF, 0x35, 0xBF, + 0x26, 0x1F, 0x16, 0x5F, 0x0E, 0xBE, 0x17, 0x5F, 0x17, 0xBF, 0x0F, 0xBF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x8F, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x9F, 0x2F, 0x1E, 0x46, 0xBE, 0x76, 0x9F, 0x8D, 0x5B, 0x5A, 0x31, 0x92, 0x53, 0xB2, 0x34, 0xC2, 0x14, 0xC9, 0xD3, 0xD1, 0xB3, 0xD1, 0x93, 0xD1, 0xB3, 0xD1, 0x93, 0x01, 0xD1, 0xB3, 0x8F, 0xC9, 0xB3, 0xC9, 0xD3, 0xC9, 0xD4, 0xC2, 0x14, 0xC2, 0x35, 0xBA, 0x96, 0x89, 0x93, 0x58, 0xB0, 0x59, 0x31, 0x49, 0x51, 0x41, 0x52, 0x39, 0x51, 0x39, 0x71, 0x39, 0x92, 0x31, 0x51, 0x31, 0x31, 0x02, 0x31, 0x51, 0x84, 0x31, 0x31, 0x31, 0x51, 0x31, 0x30, 0x29, 0x30, 0x31, 0x50, 0x15, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x11, 0x81, 0x10, 0xF2, 0x11, 0x96, 0x01, 0x1A, 0x18, 0x88, 0x11, 0xB7, 0x09, 0x76, 0x09, 0x55, 0x09, 0x35, 0x01, 0x14, 0x09, 0x34, 0x01, 0x14, 0x01, 0x35, 0x09, 0x76, 0x01, 0x11, 0xD8, 0x85, 0x09, 0x97, 0x09, 0x56, 0x09, 0x55, 0x09, 0x34, 0x09, 0x33, 0x11, 0x53, 0x02, 0x11, 0x33, 0x01, 0x11, 0x32, 0x01, 0x11, 0x12, 0x83, 0x11, 0x32, 0x11, 0x12, 0x11, 0x11, 0x11, 0x32, 0x01, 0x11, 0x31, 0x01, 0x11, 0x32, 0x80, 0x11, 0x11, 0x02, 0x11, 0x12, 0x02, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, + 0x30, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x09, 0x21, 0x0F, 0x89, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x87, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x09, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x0A, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x91, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x09, 0x33, 0x09, 0x75, 0x11, 0xD7, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xF9, 0x01, + 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x11, 0x31, 0x11, 0x52, 0x19, 0x73, 0x19, 0x74, 0x02, 0x19, 0x94, 0x81, 0x19, 0x95, 0x19, 0x94, 0x03, 0x19, 0x74, 0x02, 0x19, 0x75, 0x01, 0x19, 0x95, 0x01, 0x19, 0x74, 0x81, 0x19, 0x94, 0x19, 0x95, 0x13, 0x19, 0x94, 0x04, 0x19, 0x74, 0x80, 0x19, 0x94, 0x02, 0x19, 0x74, 0x81, 0x19, 0x73, 0x19, 0x74, 0x01, 0x19, 0x73, 0x81, 0x19, 0x74, 0x19, 0x73, 0x02, 0x19, 0x74, 0x80, 0x19, 0x94, 0x02, 0x19, 0x74, 0x80, 0x19, 0x94, 0x01, 0x19, 0x74, 0x0F, 0x19, 0x94, 0x80, 0x19, 0x74, 0x03, 0x19, 0x94, 0x81, 0x19, 0xB4, 0x19, 0x94, 0x04, 0x19, 0xB5, 0x8B, 0x21, 0xD5, 0x19, 0xD5, 0x19, 0xB4, 0x21, 0xD5, 0x21, 0xB5, 0x19, 0xB4, 0x19, 0x94, 0x19, 0x73, 0x19, 0x52, 0x11, 0x32, 0x11, 0x11, 0x19, 0x32, 0x01, 0x19, 0x11, 0x82, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x99, 0x21, 0x10, 0x21, 0x51, 0x21, 0x72, 0x19, 0x32, 0x11, 0x12, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xF7, 0x19, 0xD5, 0x11, 0x74, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x21, 0x51, 0x19, 0x51, 0x19, 0x31, 0x11, 0x31, + 0x11, 0x32, 0x09, 0x33, 0x11, 0x95, 0x02, 0x19, 0xF7, 0x86, 0x19, 0xB6, 0x11, 0x54, 0x19, 0x53, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x19, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x85, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x8C, 0x19, 0x30, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x19, 0x33, 0x11, 0x12, 0x01, 0x18, 0xF1, 0x81, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x50, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x31, 0x21, 0x11, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x83, 0x21, 0x52, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x09, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, + 0x30, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x81, 0x28, 0xEE, 0x28, 0xEF, 0x05, 0x28, 0xEE, 0x01, 0x20, 0xCE, 0x82, 0x20, 0xEE, 0x20, 0xCE, 0x20, 0xEE, 0x03, 0x20, 0xCE, 0x02, 0x20, 0xAD, 0x01, 0x28, 0xCE, 0x84, 0x30, 0xEE, 0x30, 0xCD, 0x30, 0xEE, 0x30, 0xCD, 0x28, 0xAD, 0x01, 0x28, 0x8C, 0x80, 0x28, 0x6C, 0x01, 0x28, 0x4B, 0x81, 0x20, 0x2A, 0x20, 0x0A, 0x04, 0x20, 0x09, 0x90, 0x28, 0x29, 0x38, 0x8B, 0x48, 0xEC, 0x59, 0x6E, 0x69, 0xF0, 0x82, 0x93, 0x93, 0x15, 0xAB, 0xD7, 0xBC, 0x19, 0xC4, 0x5A, 0xCC, 0x7A, 0xCC, 0x9B, 0xD4, 0xDC, 0xD4, 0xDB, 0xD4, 0xFC, 0xDC, 0xFC, 0xDD, 0x1C, 0x01, 0xE5, 0x1D, 0x81, 0xE5, 0x3D, 0xED, 0x5D, 0x01, 0xED, 0x3C, 0x84, 0xE5, 0x1C, 0xE4, 0xFC, 0xE4, 0xDB, 0xDC, 0xDB, 0xE4, 0xDB, 0x02, 0xDC, 0xBA, 0x80, 0xDC, 0x99, 0x01, 0xDC, 0x79, 0x80, 0xDC, 0x99, 0x04, 0xDC, 0x79, 0x82, 0xDC, 0x59, 0xDC, 0x78, 0xE4, 0x79, 0x01, 0xDC, 0x58, 0x01, 0xDC, 0x78, 0x82, 0xDC, 0x58, 0xD4, 0x58, 0xD4, 0x38, 0x01, 0xDC, 0x58, 0x80, 0xDC, 0x78, 0x05, 0xDC, 0x58, 0x80, 0xDC, 0x78, 0x03, 0xD4, 0x58, 0x82, 0xCC, 0x57, 0xD4, 0x58, 0xCC, 0x57, 0x01, 0xCC, 0x78, 0x93, 0xC4, 0x77, 0xC4, 0xB8, 0xC4, 0xD8, 0xC4, 0xF9, 0xB4, 0xD8, 0x94, 0x56, 0x6B, 0x93, 0x5B, 0x93, 0x74, 0xD8, 0x86, 0x1C, 0x86, 0xBE, 0x76, 0xBE, 0x6E, 0xFE, 0x5E, 0xFD, 0x57, 0x3E, 0x47, 0x3D, + 0x3F, 0x3D, 0x2F, 0x3D, 0x27, 0x5D, 0x1F, 0x7E, 0x01, 0x17, 0x9E, 0x81, 0x0F, 0xBE, 0x0F, 0xBF, 0x02, 0x0F, 0x9E, 0x9B, 0x17, 0x9E, 0x1F, 0x9F, 0x2F, 0x5E, 0x47, 0x1E, 0x56, 0x9C, 0x6D, 0xBA, 0x84, 0xD8, 0x9C, 0x36, 0xBC, 0x37, 0xCC, 0x37, 0xD4, 0x16, 0xDC, 0x16, 0xDB, 0xF6, 0xD3, 0xB6, 0xDB, 0xF7, 0xD3, 0xF6, 0xD4, 0x37, 0xCC, 0x78, 0xBC, 0xB9, 0x8C, 0x36, 0x74, 0xB7, 0x76, 0x1C, 0x5E, 0xBD, 0x3E, 0xFD, 0x27, 0x5E, 0x1F, 0x9F, 0x0F, 0xBF, 0x0F, 0xDF, 0x06, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x06, 0x07, 0xDF, 0x82, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xDE, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xDE, 0x8A, 0x07, 0xBE, 0x0F, 0x9E, 0x17, 0x9E, 0x27, 0x7E, 0x36, 0xFD, 0x4E, 0x7C, 0x76, 0x3B, 0x95, 0x7A, 0x8B, 0xF5, 0xAB, 0xD5, 0xBB, 0xF6, 0x01, 0xC3, 0xD6, 0x88, 0xB3, 0xB5, 0x93, 0x94, 0x7C, 0x14, 0x8E, 0x3B, 0x6E, 0xBB, 0x46, 0xFB, 0x2F, 0x3B, 0x17, 0x5A, 0x0F, 0x7A, 0x01, 0x07, 0xBA, 0x82, 0x07, 0xDA, 0x07, 0xFA, 0x07, 0xDA, 0x02, 0x07, 0xD9, 0x80, 0x07, 0xF9, 0x01, 0x07, 0xF8, 0x80, 0x07, 0xD8, 0x02, 0x07, 0xD7, 0x80, 0x07, 0xF7, 0x01, 0x07, 0xD6, 0x82, 0x07, 0xD5, 0x07, 0xF5, 0x07, 0xD5, 0x02, 0x07, 0xD4, 0x01, 0x07, 0xD3, 0x81, 0x07, 0xF3, 0x07, 0xD3, 0x01, 0x07, 0xD2, 0x02, 0x07, 0xF2, 0x02, 0x07, 0xF1, 0x80, 0x07, 0xD1, 0x06, 0x07, 0xD0, 0x06, 0x07, 0xCF, 0x01, 0x07, 0xAF, 0x80, 0x07, 0xD0, 0x01, 0x07, 0xB0, 0x94, 0x07, 0x90, 0x07, 0x91, 0x07, 0x71, 0x0F, 0x72, 0x07, 0x73, 0x0F, 0x54, 0x17, 0x55, 0x17, 0x16, 0x16, 0xD7, 0x1E, 0xB8, + 0x26, 0x9A, 0x26, 0x3B, 0x1D, 0x9B, 0x04, 0x99, 0x03, 0xB8, 0x03, 0x59, 0x03, 0x1A, 0x02, 0xFB, 0x02, 0xBC, 0x02, 0xBD, 0x02, 0xBE, 0x02, 0x02, 0x9E, 0x80, 0x02, 0x7E, 0x02, 0x02, 0x7F, 0x80, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x82, 0x02, 0x1F, 0x01, 0xFF, 0x02, 0x1F, 0x03, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x81, 0x01, 0x9F, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x80, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x90, 0x09, 0x9F, 0x09, 0x9E, 0x11, 0x9D, 0x19, 0x3C, 0x21, 0x5C, 0x5A, 0xFF, 0x52, 0xDD, 0x4B, 0x3D, 0x1A, 0x38, 0x23, 0x7A, 0x3D, 0x5F, 0x2D, 0xFF, 0x1E, 0x1F, 0x16, 0x9F, 0x17, 0x3F, 0x17, 0xBF, 0x0F, 0xBF, 0x02, 0x07, 0xDF, 0x8E, 0x07, 0xBF, 0x07, 0x9F, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x3E, 0x3E, 0xFE, 0x66, 0xBF, 0x8E, 0x3E, 0x63, 0x55, 0x7A, 0x73, 0xA2, 0x33, 0xC2, 0x54, 0xC1, 0xF3, 0xC9, 0xB3, 0xD1, 0xB3, 0x02, 0xD1, 0x93, 0x01, 0xD1, 0xB3, 0x8A, 0xC9, 0x93, 0xC1, 0x93, 0xC1, 0xD4, 0xC2, 0x14, 0xC2, 0x76, 0xAA, 0x56, 0x68, 0xB0, 0x50, 0xD0, 0x51, 0x52, 0x41, 0x51, 0x41, 0x52, 0x01, 0x39, 0x72, 0x80, 0x39, 0x71, 0x04, 0x31, 0x51, 0x01, 0x31, 0x31, 0x81, 0x31, 0x30, 0x31, 0x50, 0x14, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x8A, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x18, 0xF1, 0x10, 0xF2, 0x19, 0xB6, 0x1A, 0x19, 0x11, 0xD8, 0x09, 0x97, 0x03, 0x09, 0x55, 0x01, 0x09, 0x34, 0x83, 0x09, 0x35, + 0x09, 0x56, 0x11, 0xF8, 0x11, 0xD8, 0x01, 0x09, 0x97, 0x80, 0x11, 0x96, 0x01, 0x11, 0x95, 0x03, 0x19, 0x95, 0x04, 0x19, 0x94, 0x04, 0x19, 0xB4, 0x03, 0x19, 0x94, 0x01, 0x19, 0x54, 0x87, 0x11, 0x33, 0x11, 0x13, 0x10, 0xF2, 0x19, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x04, 0x21, 0x30, 0x03, 0x29, 0x30, 0x05, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, + 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x12, 0x09, 0x33, 0x09, 0x75, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x03, 0x01, 0xD9, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x86, 0x19, 0x30, 0x19, 0x31, 0x19, 0x52, 0x19, 0x73, 0x19, 0xB4, 0x19, 0xB5, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x80, 0x21, 0xF7, 0x01, 0x21, 0xF6, 0x81, 0x29, 0xF7, 0x29, 0xF6, 0x01, 0x29, 0xF7, 0x83, 0x29, 0xF6, 0x29, 0xF7, 0x2A, 0x17, 0x29, 0xF7, 0x02, 0x2A, 0x17, 0x84, 0x29, 0xF6, 0x2A, 0x17, 0x2A, 0x37, 0x29, 0xF6, 0x2A, 0x16, 0x02, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x03, 0x2A, 0x17, 0x83, 0x2A, 0x16, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x37, 0x02, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x07, 0x2A, 0x17, 0x0C, 0x2A, 0x16, 0x01, 0x2A, 0x17, 0x04, 0x2A, 0x37, 0x80, 0x2A, 0x17, 0x0C, 0x2A, 0x37, 0x82, 0x32, 0x37, 0x32, 0x57, 0x2A, 0x37, 0x01, 0x32, 0x37, 0x82, 0x32, 0x57, 0x2A, 0x37, 0x32, 0x57, 0x01, 0x2A, 0x37, 0x81, 0x2A, 0x16, 0x2A, 0x17, 0x01, 0x2A, 0x37, + 0x81, 0x2A, 0x57, 0x2A, 0x37, 0x01, 0x2A, 0x17, 0x85, 0x2A, 0x16, 0x29, 0xF6, 0x21, 0xD6, 0x21, 0xB5, 0x19, 0x53, 0x11, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x09, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x51, 0x21, 0x72, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x11, 0x21, 0x52, 0x01, 0x21, 0x51, 0x8D, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x09, 0x53, 0x11, 0x94, 0x19, 0xF7, 0x22, 0x18, 0x22, 0x17, 0x19, 0xB6, 0x11, 0x54, 0x19, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x19, 0x31, 0x89, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x19, 0xD5, 0x22, 0x17, + 0x21, 0xF7, 0x21, 0xD7, 0x19, 0x75, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x18, 0xF0, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x84, 0x29, 0x10, 0x21, 0x10, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x05, 0x19, 0x32, 0x82, 0x19, 0x52, 0x19, 0x32, 0x21, 0x32, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x07, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x20, 0xEF, 0x03, 0x20, 0xEE, 0x01, 0x28, 0xEE, 0x01, 0x28, 0xCE, 0x02, 0x28, 0xEE, 0x01, 0x28, 0xCE, 0x02, 0x28, 0xCD, 0x80, 0x28, 0xAD, 0x01, 0x28, 0xCD, 0x82, 0x28, 0x8C, 0x28, 0xAC, 0x20, 0x8C, 0x01, 0x28, 0x8B, 0x83, 0x20, 0x4B, 0x20, 0x4A, 0x28, 0x4A, 0x20, 0x2A, 0x05, 0x28, 0x2A, 0x81, 0x30, 0x2A, 0x30, 0x4B, 0x01, 0x38, 0x8B, 0x80, 0x38, 0x6B, 0x01, 0x38, 0x8B, 0x8D, 0x48, 0xED, 0x51, 0x2E, 0x59, 0x6F, 0x69, 0xD0, 0x72, 0x11, 0x82, 0x72, 0x92, 0xF4, 0xA3, 0x56, 0xAB, 0xB7, 0xC4, 0x7A, + 0xCC, 0xBB, 0xDC, 0xFC, 0xE5, 0x3D, 0xE5, 0x5D, 0x01, 0xED, 0x7E, 0x85, 0xED, 0x5D, 0xED, 0x3D, 0xE5, 0x1C, 0xDC, 0xDB, 0xDC, 0xBA, 0xD4, 0x9A, 0x01, 0xD4, 0x7A, 0x02, 0xDC, 0x7A, 0x02, 0xDC, 0x79, 0x80, 0xDC, 0x99, 0x03, 0xDC, 0x79, 0x02, 0xDC, 0x58, 0x80, 0xDC, 0x78, 0x03, 0xDC, 0x58, 0x01, 0xDC, 0x78, 0x84, 0xDC, 0x58, 0xD4, 0x58, 0xDC, 0x58, 0xD4, 0x37, 0xD4, 0x58, 0x03, 0xD4, 0x57, 0xB5, 0xD4, 0x77, 0xCC, 0x77, 0xCC, 0x97, 0xC4, 0xB8, 0xBC, 0xB8, 0xBC, 0xF9, 0xAC, 0xF9, 0x94, 0xB7, 0x7C, 0x76, 0x6C, 0x56, 0x6C, 0xD7, 0x75, 0xBA, 0x7E, 0x5C, 0x76, 0xBD, 0x66, 0xDD, 0x5E, 0xFD, 0x57, 0x5E, 0x47, 0x3E, 0x37, 0x5E, 0x2F, 0x5E, 0x27, 0x7E, 0x17, 0x7E, 0x17, 0x9F, 0x17, 0x9E, 0x0F, 0x9E, 0x17, 0x9E, 0x17, 0x7E, 0x1F, 0x5E, 0x2F, 0x3E, 0x47, 0x1E, 0x5E, 0x5C, 0x7D, 0xDB, 0x84, 0x77, 0xA4, 0x36, 0xC4, 0x37, 0xCB, 0xF6, 0xD3, 0xF6, 0xDB, 0xF6, 0xDB, 0xD6, 0xD3, 0xB6, 0xDB, 0xB6, 0xDB, 0xF6, 0xDC, 0x37, 0xCC, 0x37, 0xC4, 0xB9, 0x94, 0x57, 0x74, 0x97, 0x7E, 0x1C, 0x5E, 0x9D, 0x3E, 0xFD, 0x2F, 0x5E, 0x1F, 0x9F, 0x0F, 0x9F, 0x07, 0xBF, 0x05, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x0C, 0x07, 0xDF, 0x8B, 0x07, 0xDE, 0x07, 0xBE, 0x0F, 0x9E, 0x17, 0x9E, 0x27, 0x7E, 0x3F, 0x1E, 0x4E, 0x7C, 0x76, 0x3B, 0x8D, 0x7A, 0x94, 0x15, 0xAB, 0xD5, 0xBB, 0xD5, 0x01, 0xC3, 0xD6, 0x89, 0xBB, 0xD6, 0xA3, 0xB5, 0x7B, 0x93, 0x8D, 0x99, 0x7E, 0xBC, 0x4E, 0xDB, 0x2F, 0x3B, 0x1F, 0x7B, 0x0F, 0x9B, 0x0F, 0xBB, 0x02, 0x07, 0xDB, 0x03, 0x07, 0xDA, 0x83, 0x07, + 0xD9, 0x07, 0xF9, 0x07, 0xD9, 0x07, 0xD8, 0x01, 0x07, 0xF8, 0x80, 0x07, 0xD8, 0x02, 0x07, 0xD7, 0x02, 0x07, 0xD6, 0x02, 0x07, 0xD5, 0x05, 0x07, 0xD4, 0x80, 0x07, 0xD3, 0x03, 0x07, 0xF3, 0x83, 0x07, 0xF2, 0x07, 0xD2, 0x07, 0xF2, 0x07, 0xD2, 0x03, 0x07, 0xD1, 0x80, 0x07, 0xF1, 0x05, 0x07, 0xD1, 0x01, 0x07, 0xB0, 0x80, 0x07, 0xD0, 0x01, 0x07, 0xD1, 0x02, 0x07, 0xB1, 0x95, 0x07, 0xB2, 0x07, 0x92, 0x07, 0x93, 0x07, 0x73, 0x0F, 0x54, 0x0F, 0x35, 0x0F, 0x16, 0x16, 0xF6, 0x16, 0xB8, 0x1E, 0x99, 0x1E, 0x5A, 0x1D, 0xFB, 0x1D, 0x3B, 0x0C, 0x3A, 0x03, 0x79, 0x03, 0x1A, 0x02, 0xFB, 0x02, 0xDC, 0x02, 0xBD, 0x02, 0x9D, 0x02, 0x9E, 0x02, 0x7E, 0x01, 0x02, 0x7F, 0x02, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x01, 0x02, 0x1F, 0x05, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x03, 0x01, 0x9F, 0x92, 0x01, 0xBF, 0x01, 0x9F, 0x09, 0x7E, 0x11, 0x7E, 0x19, 0x9E, 0x19, 0x1C, 0x29, 0x3B, 0x5A, 0xBF, 0x5A, 0xBD, 0x5B, 0x1D, 0x3A, 0x9A, 0x12, 0x16, 0x3C, 0x7E, 0x35, 0x7F, 0x1D, 0xDE, 0x16, 0x5F, 0x16, 0xFF, 0x17, 0x7F, 0x0F, 0xBF, 0x01, 0x07, 0xBF, 0x91, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0x9F, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x9F, 0x37, 0x1E, 0x56, 0xDE, 0x86, 0xBF, 0x85, 0x3B, 0x72, 0xD4, 0x8A, 0x32, 0xAA, 0x33, 0xC2, 0x13, 0xC9, 0xD3, 0xC9, 0xB3, 0xD1, 0xD4, 0xD1, 0xB3, 0x01, 0xD1, 0x93, 0x80, 0xD1, 0xB3, 0x01, 0xC9, 0xB3, 0x88, 0xC1, 0xB3, 0xC1, 0xD4, 0xC2, 0x35, 0xBA, 0x56, 0x89, 0x93, 0x58, 0xAF, 0x59, 0x52, 0x49, 0x52, 0x41, 0x52, 0x01, 0x39, 0x51, + 0x8A, 0x39, 0x92, 0x39, 0x71, 0x31, 0x51, 0x39, 0x71, 0x31, 0x51, 0x31, 0x31, 0x31, 0x51, 0x31, 0x31, 0x31, 0x51, 0x31, 0x30, 0x31, 0x50, 0x16, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x87, 0x19, 0x31, 0x19, 0x11, 0x08, 0xF2, 0x19, 0xD7, 0x19, 0xF8, 0x11, 0xD8, 0x09, 0x97, 0x09, 0x56, 0x02, 0x09, 0x55, 0x85, 0x09, 0x34, 0x01, 0x34, 0x09, 0x55, 0x09, 0x76, 0x11, 0xD8, 0x11, 0xF8, 0x01, 0x11, 0xD8, 0x81, 0x11, 0xF7, 0x1A, 0x18, 0x01, 0x22, 0x38, 0x80, 0x2A, 0x38, 0x05, 0x2A, 0x37, 0x81, 0x32, 0x57, 0x32, 0x78, 0x01, 0x32, 0x77, 0x03, 0x2A, 0x37, 0x02, 0x2A, 0x17, 0x84, 0x29, 0xF7, 0x21, 0xB6, 0x21, 0x95, 0x11, 0x34, 0x11, 0x13, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, + 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x11, 0xD7, 0x09, 0xF8, 0x01, 0xD9, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xB9, 0x05, 0x01, 0xDA, 0x82, 0x01, 0xFA, 0x01, 0xDA, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x84, 0x19, 0x31, 0x19, 0x51, 0x19, 0x32, 0x11, 0x53, 0x19, 0xB4, 0x04, 0x19, 0xD6, 0x04, 0x21, 0xD6, 0x84, 0x29, 0xD6, 0x2A, 0x17, 0x29, 0xF6, 0x29, 0xF7, 0x2A, 0x17, 0x09, 0x29, 0xF6, 0x03, 0x21, 0xF6, 0x82, 0x21, 0xD6, 0x21, 0xF6, 0x22, 0x16, 0x02, 0x21, 0xF6, 0x80, 0x21, 0xD6, 0x04, 0x21, 0xF6, 0x02, 0x21, + 0xD6, 0x80, 0x21, 0xF6, 0x01, 0x21, 0xD6, 0x04, 0x21, 0xF6, 0x80, 0x21, 0xF5, 0x02, 0x21, 0xF6, 0x80, 0x21, 0xD6, 0x05, 0x21, 0xF6, 0x80, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x80, 0x21, 0xD6, 0x06, 0x21, 0xF6, 0x01, 0x21, 0xD6, 0x80, 0x21, 0xF6, 0x02, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x01, 0x21, 0xD6, 0x80, 0x21, 0xF6, 0x04, 0x21, 0xD6, 0x80, 0x21, 0xF6, 0x01, 0x29, 0xF6, 0x80, 0x29, 0xF7, 0x01, 0x21, 0xD6, 0x02, 0x21, 0xF6, 0x82, 0x29, 0xF6, 0x21, 0xF6, 0x2A, 0x17, 0x01, 0x22, 0x17, 0x86, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x08, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x29, 0x71, 0x21, 0x52, 0x19, 0x31, 0x01, 0x11, 0x11, 0x89, 0x11, 0x53, 0x11, 0x95, 0x19, 0xF6, 0x22, 0x17, 0x1A, 0x17, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x12, 0x19, 0x32, 0x01, 0x19, 0x11, 0x8F, 0x19, 0x31, 0x21, 0x51, 0x21, 0x72, 0x19, 0x31, 0x11, 0x31, 0x11, 0x12, 0x09, 0x33, 0x19, 0xB5, 0x19, 0xF7, 0x22, 0x38, 0x22, 0x18, 0x19, 0x96, 0x11, 0x54, 0x19, 0x53, 0x19, 0x32, 0x21, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, + 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x19, 0x31, 0x8A, 0x19, 0x52, 0x19, 0x73, 0x11, 0x74, 0x19, 0xB5, 0x21, 0xF6, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x75, 0x11, 0x13, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x20, 0xF0, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x08, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x02, 0x11, 0x33, 0x02, 0x11, 0x34, 0x82, 0x11, 0x33, 0x19, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x20, 0xEE, 0x02, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x31, 0x0F, 0x03, 0x28, 0xEE, 0x01, 0x29, 0x0E, 0x86, 0x31, 0x0F, 0x28, 0xEE, 0x28, 0xCE, 0x28, 0xCD, 0x28, + 0xEE, 0x28, 0xAD, 0x28, 0xEE, 0x01, 0x28, 0xCD, 0x82, 0x20, 0xAD, 0x28, 0xCD, 0x28, 0xAC, 0x01, 0x28, 0xCD, 0x83, 0x30, 0xCD, 0x28, 0xAC, 0x30, 0xAD, 0x28, 0xAD, 0x04, 0x30, 0xCD, 0x83, 0x30, 0xEE, 0x30, 0xCD, 0x28, 0x8C, 0x28, 0xAC, 0x01, 0x28, 0x8C, 0x83, 0x28, 0x6C, 0x20, 0x4B, 0x20, 0x2A, 0x20, 0x0A, 0x01, 0x18, 0x09, 0x02, 0x20, 0x09, 0x8B, 0x28, 0x2A, 0x30, 0x4B, 0x40, 0xCD, 0x51, 0x2E, 0x72, 0x11, 0x7A, 0x73, 0x93, 0x16, 0xA3, 0x98, 0xB3, 0xF9, 0xC4, 0x7B, 0xCC, 0xBC, 0xDC, 0xFD, 0x01, 0xE5, 0x1E, 0x81, 0xED, 0x3E, 0xED, 0x5E, 0x02, 0xED, 0x1D, 0x83, 0xE4, 0xDC, 0xDC, 0xDB, 0xDC, 0xBB, 0xDC, 0x9A, 0x02, 0xDC, 0x79, 0x81, 0xDC, 0x59, 0xDC, 0x79, 0x02, 0xDC, 0x58, 0x80, 0xE4, 0x78, 0x06, 0xDC, 0x58, 0x9B, 0xD4, 0x58, 0xDC, 0x58, 0xD4, 0x57, 0xDC, 0x78, 0xD4, 0x58, 0xD4, 0x57, 0xD4, 0x77, 0xCC, 0x57, 0xCC, 0x77, 0xC4, 0x98, 0xBC, 0xB8, 0xBC, 0xF9, 0xB4, 0xF9, 0xAD, 0x19, 0x9C, 0xB7, 0x84, 0x35, 0x74, 0x55, 0x7D, 0x18, 0x7D, 0xFB, 0x7E, 0x7D, 0x6E, 0x9D, 0x66, 0xDD, 0x56, 0xFD, 0x46, 0xFD, 0x37, 0x3E, 0x2F, 0x5E, 0x1F, 0x5E, 0x1F, 0x7E, 0x01, 0x17, 0x7E, 0x9B, 0x1F, 0x5E, 0x27, 0x3E, 0x37, 0x1D, 0x4E, 0xFD, 0x5E, 0x7C, 0x86, 0x1C, 0x8C, 0xB7, 0xA4, 0x56, 0xC4, 0x36, 0xD4, 0x57, 0xDB, 0xF6, 0xD3, 0xD6, 0xD3, 0xB6, 0xDB, 0xB6, 0xDB, 0xD6, 0xD3, 0xB6, 0xD3, 0xF7, 0xCC, 0x17, 0xB3, 0xF6, 0x9C, 0x57, 0x7C, 0xB8, 0x7D, 0xFB, 0x66, 0x9D, 0x3E, 0xDD, 0x2F, 0x5E, 0x1F, 0x9F, 0x0F, 0xBF, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x80, + 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x07, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x03, 0x07, 0xDF, 0x98, 0x07, 0xBE, 0x07, 0xBF, 0x0F, 0xBE, 0x17, 0x9E, 0x27, 0x7E, 0x3F, 0x1E, 0x56, 0x9D, 0x76, 0x3C, 0x8D, 0x59, 0x8B, 0xF5, 0xAB, 0xD5, 0xB3, 0xB5, 0xC3, 0xB5, 0xCB, 0xF6, 0xC3, 0xD6, 0xB3, 0xB5, 0x8B, 0x73, 0x84, 0xD7, 0x86, 0x9C, 0x56, 0xBC, 0x37, 0x3C, 0x1F, 0x7C, 0x0F, 0x9C, 0x0F, 0xBC, 0x07, 0xBC, 0x01, 0x07, 0xDB, 0x01, 0x07, 0xFB, 0x80, 0x07, 0xDB, 0x01, 0x07, 0xDA, 0x01, 0x07, 0xFA, 0x03, 0x07, 0xD9, 0x02, 0x07, 0xD8, 0x02, 0x07, 0xD7, 0x02, 0x07, 0xD6, 0x81, 0x07, 0xD5, 0x07, 0xD6, 0x05, 0x07, 0xD5, 0x01, 0x07, 0xD4, 0x80, 0x07, 0xF4, 0x01, 0x07, 0xD4, 0x01, 0x07, 0xD3, 0x80, 0x07, 0xF3, 0x01, 0x07, 0xD3, 0x01, 0x07, 0xF3, 0x05, 0x07, 0xD2, 0x81, 0x07, 0xB2, 0x07, 0xB1, 0x01, 0x07, 0xD1, 0x04, 0x07, 0xD2, 0x01, 0x07, 0xB3, 0x93, 0x07, 0x94, 0x07, 0x74, 0x07, 0x54, 0x0F, 0x35, 0x0F, 0x36, 0x0E, 0xF7, 0x16, 0xD8, 0x16, 0x99, 0x1E, 0x7A, 0x1D, 0xDA, 0x1D, 0x7B, 0x1C, 0xFC, 0x0C, 0x1B, 0x03, 0x5A, 0x02, 0xDA, 0x02, 0xDC, 0x02, 0xBD, 0x02, 0x9D, 0x02, 0x9E, 0x02, 0x5E, 0x01, 0x02, 0x3E, 0x80, 0x02, 0x5F, 0x02, 0x02, 0x3F, 0x02, 0x02, 0x1F, 0x83, 0x01, 0xDF, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x80, 0x02, 0x1F, 0x01, 0x01, 0xDF, 0x80, 0x01, 0xBF, 0x03, 0x01, 0x9F, 0x91, 0x01, 0x7E, 0x09, 0x7E, 0x11, 0x7D, 0x19, 0x7D, 0x21, 0x3C, 0x20, 0xFA, 0x62, 0x9F, 0x62, 0x7C, 0x62, 0xDC, 0x5A, 0xFC, 0x21, + 0xF7, 0x1A, 0xF9, 0x2C, 0xDE, 0x1D, 0x7E, 0x15, 0xFE, 0x1E, 0xDF, 0x0F, 0x1F, 0x0F, 0x9F, 0x01, 0x07, 0xBF, 0x80, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x8E, 0x0F, 0x9F, 0x1F, 0x9F, 0x27, 0x3E, 0x3E, 0xDE, 0x6E, 0xDF, 0x96, 0x9F, 0x7B, 0xF7, 0x72, 0x32, 0xA2, 0x33, 0xBA, 0x13, 0xC1, 0xB2, 0xC9, 0xB3, 0xD1, 0xD4, 0xD1, 0xB4, 0xD1, 0xB3, 0x01, 0xD1, 0x93, 0x8D, 0xD1, 0xD4, 0xC9, 0x93, 0xC9, 0xB3, 0xC1, 0xB3, 0xC1, 0xF4, 0xBA, 0x35, 0xB2, 0x56, 0x60, 0xAF, 0x50, 0xD0, 0x51, 0x52, 0x49, 0x52, 0x39, 0x31, 0x39, 0x51, 0x39, 0x72, 0x01, 0x39, 0x71, 0x80, 0x39, 0x51, 0x05, 0x31, 0x51, 0x80, 0x31, 0x50, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x30, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x19, 0xD7, 0x19, 0xF8, 0x11, 0xD8, 0x11, 0xB8, 0x09, 0x56, 0x09, 0x55, 0x09, 0x35, 0x09, 0x55, 0x01, 0x01, 0x55, 0x81, 0x09, 0x76, 0x11, 0xD7, 0x01, 0x09, 0xD8, 0x80, 0x11, 0xD8, 0x01, 0x11, 0xD7, 0x84, 0x19, 0xF7, 0x1A, 0x17, 0x22, 0x17, 0x21, 0xF7, 0x22, 0x17, 0x01, 0x21, 0xF6, 0x81, 0x29, 0xF6, 0x21, 0xF6, 0x01, 0x2A, 0x16, 0x83, 0x22, 0x16, 0x21, 0xF6, 0x21, 0xD5, 0x21, 0xF5, 0x02, 0x21, 0xF6, 0x80, 0x22, 0x17, 0x02, 0x2A, 0x17, 0x80, 0x21, 0xF7, 0x01, 0x21, 0xB6, 0x87, 0x19, 0x75, 0x11, 0x34, 0x19, 0x53, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x21, 0x30, 0x21, 0x51, 0x01, + 0x21, 0x30, 0x80, 0x29, 0x30, 0x07, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x84, 0x19, 0x10, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0xB6, 0x01, 0x11, 0xF8, + 0x81, 0x09, 0xB8, 0x01, 0xB8, 0x01, 0x01, 0xB9, 0x04, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x06, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x19, 0x53, 0x19, 0x74, 0x11, 0xB5, 0x04, 0x19, 0xD6, 0x02, 0x19, 0xB5, 0x05, 0x19, 0x95, 0x02, 0x19, 0x94, 0x04, 0x19, 0x74, 0x80, 0x21, 0x95, 0x01, 0x19, 0x74, 0x07, 0x19, 0x94, 0x80, 0x19, 0x95, 0x02, 0x19, 0x94, 0x83, 0x19, 0x74, 0x19, 0x95, 0x19, 0x74, 0x19, 0x95, 0x01, 0x19, 0x74, 0x80, 0x19, 0x94, 0x01, 0x19, 0x74, 0x09, 0x19, 0x94, 0x01, 0x19, 0x74, 0x01, 0x19, 0x94, 0x05, 0x19, 0x74, 0x80, 0x19, 0x94, 0x0B, 0x19, 0x74, 0x80, 0x11, 0x54, 0x02, 0x19, 0x74, 0x01, 0x19, 0x54, 0x81, 0x19, 0x74, 0x19, 0x54, 0x04, 0x19, 0x74, 0x80, 0x19, 0x54, 0x03, 0x19, 0x74, 0x02, 0x19, 0x54, 0x86, 0x19, 0x95, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x18, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x01, 0x11, 0x33, 0x01, 0x19, 0x32, 0x81, 0x21, 0x31, 0x21, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x86, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0xB5, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x82, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x01, 0x19, 0x32, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x21, 0x51, 0x01, 0x19, 0x31, 0x8D, 0x11, 0x31, 0x11, 0x52, 0x11, 0x73, + 0x11, 0xB5, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x17, 0x19, 0x95, 0x19, 0x74, 0x19, 0x53, 0x19, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x07, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x83, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0x95, 0x02, 0x21, 0xF7, 0x84, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x86, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x19, 0x73, 0x19, 0x94, 0x11, 0x75, 0x11, 0x95, 0x01, 0x11, 0x96, 0x85, 0x11, 0xB7, 0x19, 0xB7, 0x11, 0x75, 0x11, 0x34, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x05, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, + 0x2F, 0x04, 0x21, 0x0F, 0x86, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x81, 0x28, 0xEE, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x0E, 0x28, 0xEE, 0x28, 0xCE, 0x01, 0x28, 0xEE, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x28, 0xEE, 0x80, 0x28, 0xCE, 0x05, 0x28, 0xEE, 0x82, 0x28, 0xCE, 0x28, 0xEE, 0x20, 0xCD, 0x04, 0x28, 0xCE, 0x80, 0x20, 0xCE, 0x01, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x82, 0x28, 0xCE, 0x28, 0xCD, 0x28, 0xCE, 0x01, 0x28, 0xCD, 0x80, 0x28, 0xAD, 0x02, 0x28, 0x8C, 0x81, 0x28, 0x6C, 0x28, 0x4C, 0x02, 0x28, 0x4B, 0x01, 0x30, 0x4B, 0x01, 0x30, 0x6C, 0x8A, 0x38, 0x8D, 0x40, 0xAD, 0x48, 0xEE, 0x51, 0x2F, 0x69, 0xB1, 0x71, 0xF2, 0x8A, 0x94, 0x9B, 0x16, 0xB3, 0xD9, 0xC4, 0x5A, 0xDC, 0xFD, 0x02, 0xED, 0x5E, 0x83, 0xE5, 0x1C, 0xDC, 0xBB, 0xDC, 0x9A, 0xDC, 0x7A, 0x02, 0xDC, 0x79, 0x82, 0xE4, 0x79, 0xDC, 0x79, 0xDC, 0x58, 0x02, 0xDC, 0x79, 0x03, 0xDC, 0x58, 0x81, 0xDC, 0x78, 0xDC, 0x58, 0x01, 0xDC, 0x57, 0x82, 0xD4, 0x57, 0xD4, 0x58, 0xD4, 0x57, 0x01, 0xCC, 0x77, 0x90, 0xCC, 0x98, 0xC4, 0x98, 0xC4, 0xD8, 0xC4, + 0xF9, 0xBC, 0xF9, 0xAC, 0xB8, 0x94, 0x76, 0x74, 0x15, 0x6C, 0x76, 0x75, 0x39, 0x7E, 0x3C, 0x76, 0x9D, 0x66, 0xFE, 0x57, 0x1E, 0x3E, 0xFD, 0x3F, 0x5E, 0x2F, 0x3E, 0x01, 0x27, 0x5E, 0x8D, 0x27, 0x3E, 0x2F, 0x3E, 0x3E, 0xFD, 0x4E, 0xDD, 0x66, 0x9D, 0x7D, 0xBA, 0x8C, 0xD7, 0xAC, 0x97, 0xC4, 0x57, 0xCC, 0x16, 0xDC, 0x17, 0xDB, 0xF6, 0xD3, 0xB6, 0xDB, 0xD6, 0x01, 0xDB, 0xD7, 0x8B, 0xD3, 0xF7, 0xCC, 0x17, 0xB4, 0x17, 0x9C, 0x78, 0x84, 0xD8, 0x7D, 0xFB, 0x66, 0xBD, 0x46, 0xFD, 0x27, 0x3E, 0x17, 0x7F, 0x0F, 0x9F, 0x07, 0xBF, 0x04, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x09, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x95, 0x0F, 0xBF, 0x17, 0x9F, 0x27, 0x7E, 0x3F, 0x1E, 0x56, 0x9D, 0x76, 0x3C, 0x8D, 0x39, 0x94, 0x15, 0xA3, 0xB5, 0xB3, 0x95, 0xC3, 0xB5, 0xC3, 0xB6, 0xCB, 0xD6, 0xBB, 0xD5, 0x9B, 0x94, 0x73, 0xF4, 0x8E, 0x5C, 0x5E, 0xBC, 0x37, 0x1C, 0x27, 0x5C, 0x17, 0x9C, 0x0F, 0xBC, 0x01, 0x07, 0xDC, 0x82, 0x07, 0xFC, 0x07, 0xDC, 0x07, 0xFC, 0x02, 0x07, 0xDB, 0x01, 0x07, 0xFB, 0x03, 0x07, 0xDA, 0x02, 0x07, 0xD9, 0x02, 0x07, 0xD8, 0x04, 0x07, 0xD7, 0x07, 0x07, 0xD6, 0x04, 0x07, 0xD5, 0x04, 0x07, 0xF4, 0x01, 0x07, 0xD4, 0x01, 0x07, 0xD3, 0x01, 0x07, 0xD4, 0x01, 0x07, 0xB3, 0x07, 0x07, 0xD3, 0x01, 0x07, 0xB4, 0x95, 0x07, 0x94, 0x07, 0x75, 0x07, 0x55, 0x07, 0x36, 0x0F, 0x36, 0x0E, 0xF7, 0x16, 0xD8, 0x16, 0x98, 0x1E, 0x7A, 0x26, 0x1B, 0x1D, 0x5A, 0x24, 0xFB, 0x1C, 0x5C, 0x0B, 0x7A, 0x02, 0xFA, 0x02, 0xBC, 0x02, 0x9C, + 0x02, 0x7D, 0x02, 0x5E, 0x02, 0x3E, 0x02, 0x5E, 0x02, 0x3E, 0x03, 0x02, 0x3F, 0x80, 0x02, 0x1F, 0x04, 0x01, 0xFF, 0x04, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x01, 0x01, 0x7E, 0x91, 0x09, 0x5E, 0x11, 0x9E, 0x19, 0x5D, 0x21, 0x1B, 0x28, 0xFA, 0x5A, 0x3D, 0x6A, 0x7D, 0x62, 0x3A, 0x6A, 0xDC, 0x42, 0x38, 0x11, 0xB5, 0x34, 0x7D, 0x1C, 0xFD, 0x15, 0x9E, 0x16, 0x5F, 0x17, 0x1F, 0x0F, 0x7F, 0x0F, 0xBF, 0x01, 0x07, 0xBF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x8E, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x7F, 0x36, 0xFE, 0x4E, 0x9D, 0x8F, 0x1F, 0x7C, 0xFA, 0x6A, 0xD3, 0x8A, 0x12, 0xB2, 0x33, 0xC1, 0xD3, 0xC9, 0xB3, 0xD1, 0xB3, 0xD1, 0xB4, 0xD1, 0xB3, 0x01, 0xD1, 0x93, 0x80, 0xD1, 0xB3, 0x01, 0xC9, 0x93, 0x89, 0xC9, 0xD4, 0xC1, 0xD4, 0xC2, 0x14, 0xBA, 0x56, 0x89, 0xB4, 0x58, 0xAF, 0x51, 0x31, 0x49, 0x52, 0x41, 0x51, 0x39, 0x51, 0x01, 0x39, 0x71, 0x83, 0x39, 0x51, 0x39, 0x71, 0x31, 0x51, 0x39, 0x71, 0x01, 0x31, 0x51, 0x81, 0x31, 0x31, 0x31, 0x51, 0x01, 0x31, 0x50, 0x14, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x8A, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x12, 0x11, 0x13, 0x11, 0x96, 0x1A, 0x18, 0x19, 0xF9, 0x11, 0xD8, 0x09, 0x96, 0x09, 0x76, 0x02, 0x01, 0x55, 0x83, 0x09, 0x75, 0x09, 0x96, 0x09, 0xB7, 0x09, 0xD8, 0x01, 0x11, 0xF8, 0x82, 0x11, 0xD7, 0x11, 0xD6, 0x11, 0xB6, 0x02, 0x11, 0x95, 0x80, 0x11, 0x74, 0x04, 0x19, 0x74, 0x04, + 0x11, 0x73, 0x81, 0x11, 0x74, 0x11, 0x73, 0x01, 0x11, 0x74, 0x81, 0x19, 0x75, 0x19, 0xB5, 0x03, 0x21, 0xF7, 0x83, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x54, 0x19, 0x53, 0x01, 0x19, 0x32, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x08, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x86, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x03, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x0C, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, + 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x30, 0x19, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x96, 0x11, 0xD7, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x29, 0x10, 0x05, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x8C, 0x19, 0x10, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x74, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x95, 0x11, 0x74, 0x01, 0x11, 0x53, 0x83, 0x11, 0x33, 0x11, 0x32, 0x11, 0x33, 0x11, 0x32, 0x01, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x11, 0x33, 0x01, 0x11, 0x32, 0x86, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x0B, 0x11, 0x32, 0x81, 0x11, 0x33, 0x11, 0x32, 0x01, 0x11, 0x33, 0x80, 0x19, 0x33, 0x02, 0x11, 0x33, 0x83, 0x11, 0x32, 0x11, 0x33, 0x11, 0x32, 0x11, 0x53, 0x08, 0x11, 0x32, 0x80, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x11, 0x12, 0x03, 0x11, 0x32, 0x80, 0x19, 0x33, 0x01, 0x11, 0x32, 0x80, 0x11, 0x12, 0x01, 0x11, 0x32, 0x01, 0x11, 0x12, 0x80, 0x19, 0x33, 0x11, 0x11, 0x12, 0x80, 0x10, 0xF2, 0x02, 0x11, 0x12, 0x87, 0x19, + 0x33, 0x11, 0x33, 0x19, 0x33, 0x11, 0x33, 0x11, 0x13, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x17, 0x01, 0x21, 0xF7, 0x85, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x13, 0x19, 0x12, 0x19, 0x32, 0x19, 0x31, 0x03, 0x21, 0x31, 0x06, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x51, 0x19, 0x51, 0x11, 0x32, 0x01, 0x11, 0x53, 0x81, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x88, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x13, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x31, 0x11, 0x52, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x38, 0x22, 0x17, 0x11, 0x95, 0x19, 0x74, 0x19, 0x53, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x82, 0x29, 0x51, 0x29, 0x30, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x29, 0x50, 0x21, 0x50, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x19, 0x73, + 0x11, 0x74, 0x11, 0x94, 0x01, 0x22, 0x17, 0x82, 0x21, 0xD6, 0x19, 0x75, 0x11, 0x33, 0x01, 0x19, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x29, 0x50, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x31, 0x01, 0x21, 0x31, 0x87, 0x18, 0xF0, 0x19, 0x11, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xF7, 0x11, 0xF7, 0x11, 0xF8, 0x12, 0x18, 0x02, 0x1A, 0x39, 0x84, 0x1A, 0x19, 0x19, 0xD7, 0x11, 0x54, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x06, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEE, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x20, 0xEE, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x20, 0xEE, 0x80, 0x21, 0x0E, 0x03, 0x29, 0x2F, 0x80, 0x28, 0xEE, 0x02, 0x20, 0xEE, 0x01, 0x29, 0x0F, 0x03, 0x20, 0xEE, 0x81, 0x28, 0xEF, + 0x20, 0xCE, 0x02, 0x28, 0xEF, 0x82, 0x28, 0xEE, 0x28, 0xEF, 0x28, 0xCE, 0x01, 0x28, 0xEE, 0x82, 0x30, 0xEF, 0x28, 0xCE, 0x30, 0xEE, 0x06, 0x30, 0xCE, 0x81, 0x38, 0xCE, 0x30, 0xCE, 0x01, 0x38, 0xCE, 0x97, 0x30, 0xCE, 0x30, 0xAE, 0x30, 0x8D, 0x28, 0x4C, 0x30, 0x4C, 0x28, 0x2B, 0x28, 0x0A, 0x30, 0x0A, 0x38, 0x4B, 0x48, 0xAC, 0x61, 0x6F, 0x7A, 0x11, 0xA3, 0x57, 0xBB, 0xF9, 0xD4, 0x9B, 0xE4, 0xDC, 0xE4, 0xFC, 0xED, 0x1C, 0xEC, 0xFC, 0xE4, 0xBB, 0xE4, 0x9A, 0xDC, 0x79, 0xDC, 0x9A, 0xDC, 0x99, 0x03, 0xDC, 0x79, 0x80, 0xD4, 0x58, 0x05, 0xDC, 0x58, 0x01, 0xD4, 0x58, 0x80, 0xD4, 0x57, 0x02, 0xCC, 0x57, 0x8D, 0xCC, 0x78, 0xCC, 0x98, 0xC4, 0xB8, 0xC4, 0xF9, 0xBD, 0x19, 0xA4, 0xB7, 0x7C, 0x15, 0x74, 0x56, 0x7D, 0x59, 0x7E, 0x1C, 0x76, 0x7D, 0x66, 0xDE, 0x4E, 0xBD, 0x46, 0xFD, 0x01, 0x37, 0x1D, 0x8C, 0x2F, 0x1D, 0x3F, 0x1E, 0x46, 0xFD, 0x56, 0xDD, 0x66, 0x7C, 0x7D, 0xFB, 0x84, 0xB7, 0xA4, 0x56, 0xBC, 0x16, 0xCB, 0xF6, 0xDB, 0xF6, 0xD3, 0xB6, 0xDB, 0xD6, 0x01, 0xE3, 0xF7, 0x8B, 0xD3, 0xD7, 0xCB, 0xD7, 0xCC, 0x38, 0xB4, 0x37, 0x94, 0x78, 0x85, 0x19, 0x76, 0x1C, 0x5E, 0xBD, 0x47, 0x3E, 0x27, 0x5E, 0x17, 0x7F, 0x0F, 0xBF, 0x07, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x05, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x89, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x7F, 0x3F, 0x1E, 0x56, 0x9D, 0x7E, 0x3C, 0x8D, 0x39, 0x9C, 0x56, 0xAB, 0xD5, 0xBB, 0xB5, 0x01, 0xC3, 0x95, 0x89, 0xCB, 0xB6, 0xBB, 0xB5, 0xA3, + 0xB5, 0x73, 0x73, 0x85, 0xBB, 0x5E, 0x9C, 0x3F, 0x1C, 0x27, 0x5D, 0x17, 0x9D, 0x0F, 0xBD, 0x02, 0x07, 0xDD, 0x01, 0x07, 0xFC, 0x02, 0x07, 0xDC, 0x80, 0x07, 0xDB, 0x02, 0x07, 0xFB, 0x02, 0x07, 0xDA, 0x01, 0x07, 0xFA, 0x02, 0x07, 0xF9, 0x02, 0x07, 0xD8, 0x01, 0x07, 0xF8, 0x81, 0x07, 0xD8, 0x07, 0xF8, 0x06, 0x07, 0xD7, 0x04, 0x07, 0xD6, 0x03, 0x07, 0xF5, 0x81, 0x07, 0xD5, 0x07, 0xF5, 0x07, 0x07, 0xD5, 0x06, 0x07, 0xD4, 0x01, 0x07, 0xB5, 0x94, 0x07, 0x95, 0x07, 0x76, 0x07, 0x56, 0x07, 0x36, 0x0F, 0x16, 0x0F, 0x17, 0x16, 0xD8, 0x1E, 0x99, 0x26, 0x3A, 0x36, 0x1B, 0x35, 0x7B, 0x2C, 0x9B, 0x2C, 0x5C, 0x1B, 0x9C, 0x0A, 0xFB, 0x02, 0x9C, 0x02, 0x5C, 0x02, 0x3D, 0x02, 0x3E, 0x02, 0x5E, 0x02, 0x3E, 0x03, 0x02, 0x3F, 0x80, 0x02, 0x1F, 0x04, 0x01, 0xFF, 0x04, 0x01, 0xDF, 0x80, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x95, 0x01, 0xBF, 0x01, 0x9F, 0x09, 0x9F, 0x09, 0x7E, 0x11, 0x9E, 0x21, 0xBE, 0x29, 0x3C, 0x28, 0xFA, 0x62, 0x3D, 0x6A, 0x3C, 0x61, 0xD9, 0x72, 0x7B, 0x62, 0x9A, 0x19, 0x74, 0x2B, 0x7A, 0x2C, 0xDE, 0x15, 0x1D, 0x0D, 0xDE, 0x16, 0xBF, 0x17, 0x5F, 0x17, 0xBF, 0x0F, 0xBF, 0x02, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x8E, 0x17, 0x9F, 0x1F, 0x7F, 0x2F, 0x3E, 0x3E, 0xBD, 0x6E, 0xBE, 0x85, 0xDD, 0x63, 0x34, 0x79, 0xF1, 0xAA, 0x33, 0xC2, 0x14, 0xC9, 0xF3, 0xC9, 0x92, 0xC9, 0xB3, 0xD1, 0xB3, 0xD1, 0xB4, 0x01, 0xD1, 0xB3, 0x81, 0xC9, 0x93, 0xC9, 0xB3, 0x01, 0xC9, 0xD4, 0x87, 0xC1, 0xD4, 0xBA, 0x35, 0xAA, 0x56, 0x60, 0x8F, 0x50, 0xB0, 0x51, 0x31, + 0x49, 0x72, 0x41, 0x51, 0x02, 0x39, 0x51, 0x83, 0x31, 0x51, 0x31, 0x71, 0x31, 0x51, 0x31, 0x71, 0x01, 0x31, 0x51, 0x82, 0x31, 0x30, 0x31, 0x51, 0x31, 0x50, 0x09, 0x29, 0x30, 0x80, 0x29, 0x50, 0x07, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x8A, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x10, 0xF2, 0x09, 0x34, 0x19, 0xD7, 0x19, 0xF9, 0x1A, 0x19, 0x11, 0xF8, 0x09, 0xB7, 0x01, 0x09, 0x76, 0x89, 0x09, 0x75, 0x09, 0x96, 0x09, 0xB7, 0x11, 0xF8, 0x12, 0x18, 0x11, 0xF8, 0x11, 0xD7, 0x09, 0x95, 0x09, 0x54, 0x09, 0x53, 0x01, 0x09, 0x33, 0x02, 0x09, 0x12, 0x04, 0x11, 0x12, 0x82, 0x11, 0x11, 0x11, 0x12, 0x11, 0x52, 0x01, 0x11, 0x53, 0x80, 0x11, 0x32, 0x02, 0x09, 0x12, 0x8B, 0x09, 0x13, 0x11, 0x34, 0x19, 0x75, 0x21, 0xD6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x54, 0x19, 0x53, 0x19, 0x32, 0x21, 0x32, 0x02, 0x21, 0x31, 0x07, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, + 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x51, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0xD7, 0x11, 0xF8, 0x09, 0xD8, 0x01, 0xB8, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0x01, 0xFA, 0x82, 0x01, 0xDA, 0x01, 0xFA, 0x29, 0x10, 0x04, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x19, 0x33, 0x11, + 0x53, 0x19, 0x74, 0x01, 0x21, 0xD6, 0x85, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x74, 0x11, 0x53, 0x11, 0x33, 0x11, 0x32, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x82, 0x19, 0x32, 0x11, 0x32, 0x11, 0x12, 0x02, 0x11, 0x32, 0x80, 0x19, 0x32, 0x01, 0x11, 0x12, 0x82, 0x11, 0x32, 0x19, 0x32, 0x19, 0x12, 0x03, 0x19, 0x32, 0x81, 0x11, 0x32, 0x11, 0x31, 0x03, 0x11, 0x32, 0x84, 0x11, 0x31, 0x11, 0x12, 0x11, 0x11, 0x11, 0x31, 0x19, 0x32, 0x02, 0x11, 0x12, 0x02, 0x19, 0x12, 0x80, 0x11, 0x12, 0x02, 0x11, 0x32, 0x80, 0x11, 0x12, 0x01, 0x11, 0x32, 0x81, 0x11, 0x11, 0x11, 0x32, 0x01, 0x11, 0x31, 0x84, 0x19, 0x32, 0x11, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x11, 0x01, 0x11, 0x32, 0x81, 0x11, 0x12, 0x19, 0x12, 0x01, 0x19, 0x32, 0x81, 0x19, 0x12, 0x11, 0x11, 0x01, 0x19, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x12, 0x80, 0x19, 0x32, 0x03, 0x19, 0x12, 0x82, 0x11, 0x11, 0x19, 0x12, 0x19, 0x11, 0x01, 0x19, 0x12, 0x80, 0x19, 0x11, 0x01, 0x19, 0x12, 0x80, 0x19, 0x11, 0x05, 0x19, 0x12, 0x05, 0x11, 0x12, 0x01, 0x11, 0x13, 0x86, 0x11, 0x34, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x34, 0x01, 0x11, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x50, 0x01, 0x21, 0x30, 0x87, 0x21, 0x51, 0x21, 0x72, 0x19, 0x51, 0x19, 0x52, 0x11, 0x32, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x01, 0x19, 0xF7, 0x86, 0x19, + 0xB6, 0x11, 0x55, 0x11, 0x13, 0x19, 0x12, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x01, 0x21, 0x51, 0x8D, 0x19, 0x31, 0x19, 0x52, 0x11, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x38, 0x19, 0xF7, 0x11, 0x95, 0x19, 0x74, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x19, 0x95, 0x01, 0x21, 0xF7, 0x84, 0x21, 0xD6, 0x19, 0x75, 0x11, 0x13, 0x11, 0x12, 0x19, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x51, 0x85, 0x19, 0x11, 0x11, 0x32, 0x11, 0x74, 0x19, 0xF7, 0x1A, 0x38, 0x12, 0x18, 0x01, 0x09, 0xF9, 0x01, 0x0A, 0x19, + 0x87, 0x09, 0xF9, 0x11, 0xF9, 0x11, 0xD8, 0x19, 0xB6, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x0B, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x20, 0xEF, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x20, 0xEF, 0x01, 0x29, 0x0F, 0x80, 0x20, 0xEF, 0x02, 0x29, 0x0F, 0x82, 0x28, 0xEF, 0x29, 0x0F, 0x28, 0xEF, 0x01, 0x29, 0x0F, 0x05, 0x31, 0x0F, 0x03, 0x30, 0xEF, 0x02, 0x31, 0x0F, 0x82, 0x30, 0xEF, 0x39, 0x0F, 0x31, 0x0F, 0x02, 0x39, 0x0F, 0x94, 0x38, 0xEF, 0x41, 0x0F, 0x41, 0x0E, 0x40, 0xEE, 0x40, 0xCE, 0x48, 0xCD, 0x48, 0xAD, 0x48, 0xCD, 0x48, 0xAD, 0x50, 0xCD, 0x58, 0xED, 0x69, 0x8F, 0x82, 0x32, 0xA3, 0x36, 0xC3, 0xF9, 0xDC, 0xDC, 0xED, 0x3D, 0xE4, 0xFC, 0xDC, 0xDB, 0xDC, 0x9A, 0xD4, 0x7A, 0x01, 0xDC, 0x7A, 0x01, 0xDC, 0x79, 0x80, 0xDC, 0x59, 0x03, 0xDC, 0x58, 0xA0, 0xDC, 0x59, 0xDC, 0x58, 0xD4, 0x37, 0xD4, 0x58, + 0xD4, 0x37, 0xD4, 0x58, 0xCC, 0x37, 0xCC, 0x58, 0xCC, 0x78, 0xCC, 0x98, 0xC4, 0x98, 0xC4, 0xB8, 0xBC, 0xD9, 0xA4, 0xB8, 0x84, 0x56, 0x6C, 0x36, 0x74, 0xF8, 0x86, 0x3D, 0x76, 0x7D, 0x6E, 0xDE, 0x5E, 0xDE, 0x4E, 0xDD, 0x4E, 0xFE, 0x46, 0xFD, 0x4E, 0xDD, 0x56, 0x9D, 0x66, 0x5C, 0x7E, 0x1B, 0x85, 0x38, 0xA4, 0x97, 0xBC, 0x57, 0xC3, 0xF6, 0xD3, 0xF6, 0x01, 0xDB, 0xF7, 0x8D, 0xDC, 0x17, 0xDB, 0xF7, 0xCB, 0xB6, 0xCC, 0x17, 0xBC, 0x17, 0xA4, 0x37, 0x84, 0x57, 0x75, 0x39, 0x76, 0x5D, 0x56, 0xDD, 0x3F, 0x3E, 0x1F, 0x7E, 0x17, 0x9F, 0x0F, 0xBF, 0x07, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x81, 0x07, 0xDF, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x95, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x7F, 0x3F, 0x1E, 0x56, 0x9D, 0x7E, 0x1C, 0x8D, 0x39, 0x9C, 0x36, 0xAB, 0xD5, 0xBB, 0xB5, 0xBB, 0x75, 0xCB, 0x95, 0xCB, 0xB6, 0xC3, 0xB6, 0xAB, 0xB5, 0x72, 0xF2, 0x8D, 0x7A, 0x6E, 0xBD, 0x47, 0x1D, 0x27, 0x5D, 0x1F, 0x9D, 0x0F, 0x9D, 0x04, 0x07, 0xDD, 0x80, 0x07, 0xFD, 0x02, 0x07, 0xDC, 0x01, 0x07, 0xFC, 0x01, 0x07, 0xFB, 0x01, 0x07, 0xDB, 0x80, 0x07, 0xFB, 0x02, 0x07, 0xFA, 0x80, 0x07, 0xDA, 0x03, 0x07, 0xD9, 0x80, 0x07, 0xF9, 0x01, 0x07, 0xD8, 0x80, 0x07, 0xF8, 0x05, 0x07, 0xD8, 0x04, 0x07, 0xD7, 0x02, 0x07, 0xD6, 0x82, 0x07, 0xF6, 0x07, 0xD6, 0x07, 0xF7, 0x02, 0x07, 0xD7, 0x07, 0x07, 0xD6, 0x03, 0x07, 0xD5, 0x81, 0x07, 0xB5, 0x07, 0xB6, 0x01, 0x07, 0x96, 0x92, 0x07, 0x76, 0x07, 0x56, 0x07, 0x36, 0x0F, 0x37, 0x16, + 0xF7, 0x1E, 0xB8, 0x2E, 0x99, 0x3E, 0x5B, 0x45, 0xDB, 0x45, 0x5C, 0x3C, 0xBC, 0x2B, 0xFB, 0x23, 0x9C, 0x1B, 0x3C, 0x0A, 0x9C, 0x02, 0x5C, 0x02, 0x5D, 0x02, 0x3D, 0x02, 0x3E, 0x02, 0x02, 0x3F, 0x01, 0x02, 0x1F, 0x04, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x80, 0x01, 0xDF, 0x02, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x93, 0x09, 0x9F, 0x11, 0x9E, 0x11, 0x5D, 0x21, 0x9E, 0x29, 0x5C, 0x20, 0x98, 0x6A, 0x3D, 0x72, 0x3C, 0x69, 0xB8, 0x7A, 0x3A, 0x7A, 0xDB, 0x39, 0xF6, 0x1A, 0x57, 0x34, 0x7D, 0x1C, 0xDD, 0x0D, 0x7D, 0x0E, 0x5F, 0x17, 0x3F, 0x17, 0x9F, 0x0F, 0xBF, 0x04, 0x07, 0xBF, 0x8B, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x5F, 0x36, 0xFE, 0x56, 0xBE, 0x7E, 0x7F, 0x74, 0x58, 0x7A, 0x93, 0x91, 0xF2, 0xB2, 0x13, 0xC9, 0xF3, 0xC1, 0x92, 0x01, 0xC9, 0xB3, 0x83, 0xD1, 0xB3, 0xD1, 0x93, 0xD1, 0xB3, 0xC9, 0x93, 0x01, 0xC9, 0xB3, 0x87, 0xC9, 0xD3, 0xC1, 0xD4, 0xC1, 0xF4, 0xBA, 0x56, 0x89, 0x72, 0x50, 0x6F, 0x59, 0x11, 0x51, 0x52, 0x01, 0x41, 0x51, 0x81, 0x39, 0x51, 0x39, 0x71, 0x01, 0x39, 0x51, 0x80, 0x39, 0x71, 0x04, 0x31, 0x51, 0x80, 0x31, 0x50, 0x0B, 0x29, 0x30, 0x80, 0x29, 0x50, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x11, 0x10, 0xF2, 0x11, 0x13, 0x11, 0x75, 0x11, 0xD7, 0x1A, 0x39, 0x1A, 0x38, 0x1A, 0x18, 0x11, 0xD7, + 0x11, 0xB7, 0x09, 0x96, 0x01, 0x11, 0xD7, 0x01, 0x11, 0xF7, 0x87, 0x09, 0xB6, 0x09, 0x95, 0x09, 0x54, 0x09, 0x33, 0x09, 0x32, 0x11, 0x12, 0x11, 0x11, 0x11, 0x32, 0x01, 0x11, 0x11, 0x80, 0x19, 0x32, 0x01, 0x11, 0x11, 0x81, 0x19, 0x31, 0x11, 0x11, 0x01, 0x19, 0x31, 0x80, 0x11, 0x11, 0x01, 0x11, 0x31, 0x82, 0x11, 0x32, 0x19, 0x52, 0x11, 0x32, 0x01, 0x11, 0x12, 0x8A, 0x11, 0x33, 0x11, 0x34, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x54, 0x19, 0x53, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x07, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x88, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, + 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x0E, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x87, 0x19, 0x31, 0x19, 0x12, 0x11, 0x12, 0x11, 0x54, 0x11, 0x95, 0x11, 0xD7, 0x11, 0xF8, 0x09, 0xD8, 0x03, 0x01, 0xD9, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x81, 0x29, 0x30, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x11, 0x01, 0x19, 0x11, 0x89, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x74, 0x21, 0xD6, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0xB5, 0x19, 0x74, 0x11, 0x53, 0x03, 0x11, 0x32, 0x80, 0x19, 0x52, 0x02, 0x19, 0x32, 0x04, 0x19, 0x52, 0x04, 0x19, 0x32, 0x80, 0x19, 0x11, 0x04, 0x19, 0x31, 0x01, 0x19, 0x52, 0x80, 0x19, 0x51, 0x02, 0x19, 0x31, 0x80, 0x19, 0x51, 0x02, 0x19, 0x31, 0x01, 0x19, 0x11, 0x84, 0x19, 0x32, 0x19, 0x31, 0x19, 0x32, 0x19, 0x12, + 0x19, 0x11, 0x03, 0x19, 0x31, 0x80, 0x11, 0x11, 0x08, 0x19, 0x31, 0x84, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x11, 0x04, 0x19, 0x31, 0x84, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x21, 0x31, 0x82, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x02, 0x19, 0x31, 0x01, 0x21, 0x32, 0x8A, 0x21, 0x31, 0x19, 0x11, 0x21, 0x32, 0x19, 0x31, 0x21, 0x32, 0x19, 0x31, 0x21, 0x32, 0x19, 0x31, 0x21, 0x52, 0x19, 0x32, 0x21, 0x52, 0x01, 0x19, 0x32, 0x80, 0x19, 0x12, 0x01, 0x10, 0xF2, 0x01, 0x11, 0x33, 0x86, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x34, 0x09, 0x12, 0x01, 0x11, 0x32, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x21, 0x51, 0x82, 0x21, 0x31, 0x19, 0x31, 0x19, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x51, 0x01, 0x19, 0x52, 0x83, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x19, 0xB6, 0x01, 0x21, 0xF8, 0x85, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x51, 0x8E, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x19, 0x32, 0x11, 0x53, 0x11, 0x54, 0x09, 0x54, 0x19, 0xD6, 0x22, 0x38, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x74, 0x11, 0x32, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x05, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, + 0x10, 0x85, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x06, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8D, 0x19, 0x52, 0x19, 0x53, 0x11, 0x53, 0x19, 0xB5, 0x21, 0xD6, 0x22, 0x17, 0x21, 0xD7, 0x19, 0x75, 0x11, 0x13, 0x10, 0xF2, 0x18, 0xF2, 0x19, 0x11, 0x21, 0x32, 0x21, 0x31, 0x01, 0x19, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x31, 0x21, 0x30, 0x03, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x50, 0x04, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x21, 0x51, 0x01, 0x21, 0x52, 0x87, 0x19, 0x52, 0x11, 0x32, 0x19, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xF7, 0x12, 0x18, 0x01, 0xD8, 0x02, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x88, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xB7, 0x19, 0xB5, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x88, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, + 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x89, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x31, 0x30, 0x29, 0x30, 0x02, 0x31, 0x30, 0x82, 0x31, 0x0F, 0x31, 0x30, 0x31, 0x10, 0x04, 0x31, 0x30, 0x80, 0x39, 0x30, 0x01, 0x31, 0x30, 0x01, 0x39, 0x30, 0x80, 0x39, 0x50, 0x02, 0x39, 0x30, 0x86, 0x41, 0x30, 0x41, 0x0F, 0x49, 0x30, 0x49, 0x2F, 0x51, 0x50, 0x49, 0x30, 0x51, 0x50, 0x01, 0x51, 0x70, 0x92, 0x51, 0x50, 0x51, 0x4F, 0x49, 0x0E, 0x40, 0xCD, 0x40, 0x8D, 0x59, 0x2F, 0x69, 0xB1, 0x92, 0xB5, 0xB3, 0xB8, 0xD4, 0x9B, 0xDC, 0xDC, 0xE4, 0xFC, 0xDC, 0xDB, 0xDC, 0x9A, 0xDC, 0x7A, 0xDC, 0x59, 0xDC, 0x79, 0xDC, 0x59, 0xDC, 0x79, 0x01, 0xDC, 0x59, 0x80, 0xE4, 0x79, 0x01, 0xDC, 0x58, 0x01, 0xD4, 0x38, 0x80, 0xD4, 0x58, 0x01, 0xD4, 0x38, 0x82, 0xD4, 0x58, 0xCC, 0x58, 0xCC, 0x78, 0x01, 0xC4, 0x98, 0x88, 0xBC, 0xD9, 0xAC, 0xD8, 0x8C, 0x36, 0x74, 0x15, 0x85, 0x19, 0x8E, 0x1C, 0x86, 0x9E, 0x76, 0xDE, 0x5E, 0x7C, 0x01, 0x56, 0x9C, 0x95, 0x5E, + 0x7C, 0x66, 0x3B, 0x7E, 0x1B, 0x9D, 0xFB, 0xA5, 0x19, 0xAC, 0x16, 0xBB, 0xF6, 0xCB, 0xF6, 0xD3, 0xF6, 0xD4, 0x17, 0xDC, 0x17, 0xD4, 0x17, 0xCB, 0xF6, 0xBB, 0xF6, 0xAC, 0x37, 0x9C, 0x77, 0x74, 0x77, 0x75, 0xDB, 0x66, 0xBD, 0x46, 0xFE, 0x2F, 0x5E, 0x1F, 0x7E, 0x01, 0x0F, 0xBF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x97, 0x0F, 0xBF, 0x1F, 0xBF, 0x2F, 0x7F, 0x3F, 0x1F, 0x5E, 0x7D, 0x7D, 0xFB, 0x8C, 0xD8, 0x93, 0xD5, 0xAB, 0xB5, 0xC3, 0xD6, 0xCB, 0xB5, 0xCB, 0x95, 0xCB, 0x96, 0xCB, 0xB6, 0xBB, 0xD6, 0x7A, 0xF2, 0x84, 0xF9, 0x76, 0xDE, 0x47, 0x1D, 0x2F, 0x7E, 0x1F, 0xBE, 0x0F, 0xBD, 0x07, 0xBD, 0x07, 0xDE, 0x04, 0x07, 0xDD, 0x01, 0x07, 0xFD, 0x02, 0x07, 0xDC, 0x81, 0x07, 0xFC, 0x07, 0xDC, 0x01, 0x07, 0xDB, 0x80, 0x07, 0xFB, 0x01, 0x07, 0xDB, 0x03, 0x07, 0xDA, 0x80, 0x07, 0xFA, 0x02, 0x07, 0xF9, 0x06, 0x07, 0xD9, 0x02, 0x07, 0xD8, 0x01, 0x07, 0xF8, 0x81, 0x07, 0xD7, 0x07, 0xF7, 0x03, 0x07, 0xD7, 0x80, 0x07, 0xF8, 0x04, 0x07, 0xD8, 0x08, 0x07, 0xD7, 0x01, 0x07, 0xB7, 0x02, 0x07, 0x97, 0x93, 0x07, 0x77, 0x07, 0x57, 0x0F, 0x37, 0x17, 0x17, 0x1E, 0xD7, 0x36, 0x99, 0x4E, 0x9B, 0x56, 0x3B, 0x5D, 0xDC, 0x5D, 0x7D, 0x54, 0xDD, 0x44, 0x1C, 0x23, 0x3B, 0x23, 0x1C, 0x1A, 0xBD, 0x0A, 0x5C, 0x02, 0x5D, 0x02, 0x3E, 0x02, 0x1E, 0x02, 0x3E, 0x02, 0x02, 0x1F, 0x02, + 0x01, 0xFF, 0x81, 0x01, 0xDF, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x83, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0x01, 0x9F, 0x92, 0x01, 0x7E, 0x09, 0x7E, 0x11, 0x7D, 0x21, 0x7D, 0x29, 0x5C, 0x28, 0xB9, 0x6A, 0x1C, 0x82, 0x7C, 0x79, 0xB8, 0x8A, 0x5A, 0x8A, 0xDA, 0x62, 0x99, 0x11, 0x74, 0x33, 0xDC, 0x24, 0x9D, 0x0D, 0x1D, 0x0D, 0xBD, 0x16, 0xBF, 0x17, 0x5F, 0x01, 0x0F, 0xBF, 0x80, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x8C, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x7F, 0x2F, 0x3F, 0x46, 0xDE, 0x6E, 0x9E, 0x7D, 0x7C, 0x7B, 0x55, 0x79, 0xD1, 0xA1, 0xD2, 0xB9, 0xD3, 0xC1, 0xD3, 0xC9, 0xB3, 0x01, 0xC9, 0x93, 0x01, 0xD1, 0x93, 0x01, 0xC9, 0x93, 0x01, 0xC9, 0xB3, 0x88, 0xC1, 0xB3, 0xC1, 0xF4, 0xBA, 0x35, 0xB2, 0x56, 0x60, 0x8F, 0x58, 0xD0, 0x51, 0x31, 0x41, 0x31, 0x41, 0x51, 0x02, 0x39, 0x71, 0x81, 0x31, 0x51, 0x39, 0x71, 0x06, 0x31, 0x51, 0x80, 0x31, 0x50, 0x11, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x89, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x18, 0xF1, 0x11, 0x13, 0x11, 0x34, 0x11, 0x75, 0x19, 0xD7, 0x19, 0xF7, 0x01, 0x1A, 0x17, 0x80, 0x11, 0xF7, 0x01, 0x11, 0xD7, 0x01, 0x19, 0xF7, 0x85, 0x11, 0x95, 0x09, 0x74, 0x11, 0x73, 0x11, 0x53, 0x11, 0x52, 0x11, 0x32, 0x02, 0x19, 0x31, 0x80, 0x19, 0x11, 0x03, 0x19, 0x31, 0x82, 0x21, 0x51, 0x19, 0x31, 0x21, 0x51, 0x02, 0x19, 0x31, 0x83, 0x19, 0x51, 0x19, + 0x31, 0x19, 0x51, 0x19, 0x31, 0x01, 0x19, 0x32, 0x8D, 0x11, 0x12, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0x95, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x19, 0x12, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x31, 0x07, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x88, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x07, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, + 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x11, 0x89, 0x11, 0x12, 0x11, 0x33, 0x11, 0x95, 0x11, 0xD7, 0x12, 0x19, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x07, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x89, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x74, 0x21, 0xD6, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x74, 0x11, 0x33, 0x03, 0x11, 0x32, 0x05, 0x19, 0x32, 0x01, 0x19, 0x52, 0x80, 0x19, 0x32, 0x04, 0x19, 0x52, 0x06, 0x19, 0x31, 0x82, 0x19, 0x51, 0x19, 0x31, 0x21, 0x51, 0x02, 0x19, 0x31, 0x01, 0x21, 0x51, 0x80, 0x21, 0x31, 0x01, 0x19, 0x10, 0x81, 0x19, 0x31, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x02, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x03, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x04, 0x21, 0x31, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x82, 0x21, 0x30, 0x21, 0x11, 0x21, 0x10, 0x02, 0x21, 0x31, 0x84, 0x19, 0x10, 0x21, + 0x31, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x52, 0x81, 0x19, 0x32, 0x19, 0x12, 0x01, 0x11, 0x12, 0x86, 0x11, 0x53, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xD7, 0x21, 0xD7, 0x19, 0x96, 0x11, 0x54, 0x01, 0x09, 0x33, 0x01, 0x11, 0x32, 0x02, 0x19, 0x32, 0x02, 0x19, 0x52, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x04, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB7, 0x01, 0x21, 0xF8, 0x83, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x52, 0x01, 0x19, 0x10, 0x8D, 0x19, 0x31, 0x19, 0x52, 0x19, 0x32, 0x19, 0x73, 0x11, 0x54, 0x09, 0x54, 0x19, 0xD6, 0x22, 0x38, 0x19, 0xF7, 0x19, 0x95, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x02, 0x21, 0x31, 0x06, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x52, 0x8A, 0x11, 0x53, 0x19, 0x95, 0x21, 0xF6, 0x21, 0xF7, 0x21, + 0xD7, 0x19, 0x95, 0x11, 0x34, 0x10, 0xF2, 0x18, 0xF2, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x02, 0x21, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x04, 0x21, 0x31, 0x02, 0x19, 0x31, 0x80, 0x19, 0x51, 0x02, 0x19, 0x32, 0x85, 0x11, 0x12, 0x11, 0x53, 0x11, 0x75, 0x19, 0xD7, 0x09, 0xD7, 0x09, 0xD8, 0x01, 0x01, 0xB8, 0x80, 0x01, 0xB9, 0x04, 0x01, 0xD9, 0x85, 0x09, 0xD9, 0x11, 0xD8, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x51, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x03, 0x29, 0x10, 0x03, 0x29, 0x30, 0x02, + 0x31, 0x30, 0x80, 0x31, 0x10, 0x01, 0x31, 0x30, 0x80, 0x31, 0x50, 0x03, 0x31, 0x30, 0x81, 0x39, 0x50, 0x31, 0x30, 0x05, 0x39, 0x50, 0x02, 0x41, 0x50, 0x02, 0x49, 0x51, 0x03, 0x49, 0x71, 0x84, 0x51, 0x91, 0x49, 0x71, 0x51, 0x91, 0x59, 0x92, 0x59, 0x91, 0x01, 0x59, 0x70, 0x88, 0x59, 0x0F, 0x59, 0x2F, 0x69, 0xB0, 0x92, 0xB4, 0xB3, 0xB8, 0xCC, 0x7B, 0xE4, 0xFD, 0xDC, 0xBC, 0xDC, 0x9B, 0x01, 0xDC, 0x7A, 0x81, 0xDC, 0x59, 0xDC, 0x79, 0x03, 0xDC, 0x59, 0x81, 0xD4, 0x38, 0xD4, 0x18, 0x01, 0xD4, 0x38, 0x02, 0xD4, 0x58, 0x96, 0xCC, 0x57, 0xCC, 0x77, 0xC4, 0x77, 0xC4, 0x98, 0xBC, 0xB8, 0xAC, 0x98, 0x8B, 0xF5, 0x73, 0xF5, 0x85, 0x39, 0x96, 0x7D, 0x8E, 0xBE, 0x76, 0x7D, 0x66, 0x5C, 0x6E, 0x5C, 0x76, 0x5C, 0x7E, 0x1B, 0x95, 0xDB, 0xA5, 0x5A, 0x9C, 0x56, 0xBC, 0x57, 0xC4, 0x58, 0xC3, 0xF6, 0xCC, 0x37, 0x01, 0xC4, 0x17, 0x8A, 0xC4, 0x78, 0xB4, 0x98, 0x94, 0x36, 0x7C, 0x77, 0x6D, 0x59, 0x6E, 0x9D, 0x56, 0xDD, 0x3F, 0x3E, 0x27, 0x5E, 0x17, 0x9E, 0x0F, 0xBF, 0x03, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x08, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x97, 0x07, 0xBF, 0x0F, 0xBF, 0x17, 0x9F, 0x2F, 0x7F, 0x47, 0x1E, 0x5E, 0x7D, 0x85, 0xFC, 0x8C, 0xB8, 0x93, 0xD5, 0xB3, 0xB5, 0xBB, 0xB5, 0xCB, 0x95, 0xCB, 0x75, 0xCB, 0x95, 0xCB, 0xB6, 0xBB, 0xB6, 0x82, 0xF3, 0x84, 0x98, 0x76, 0x9D, 0x4F, 0x1E, 0x2F, 0x7E, 0x1F, 0x9E, 0x0F, 0xBE, 0x07, 0xBE, 0x03, 0x07, 0xDE, 0x80, 0x07, + 0xFE, 0x02, 0x07, 0xFD, 0x01, 0x07, 0xDD, 0x82, 0x07, 0xDC, 0x07, 0xFC, 0x07, 0xDC, 0x02, 0x07, 0xFC, 0x80, 0x07, 0xDC, 0x04, 0x07, 0xDB, 0x03, 0x07, 0xFA, 0x03, 0x07, 0xDA, 0x06, 0x07, 0xD9, 0x83, 0x07, 0xD8, 0x07, 0xF8, 0x07, 0xD8, 0x07, 0xF8, 0x01, 0x07, 0xD8, 0x04, 0x07, 0xF9, 0x03, 0x07, 0xD9, 0x06, 0x07, 0xD8, 0x02, 0x07, 0xB8, 0x80, 0x07, 0x97, 0x02, 0x07, 0x98, 0x91, 0x0F, 0x58, 0x17, 0x17, 0x1E, 0xD7, 0x26, 0x77, 0x46, 0x99, 0x5E, 0x7B, 0x65, 0xFC, 0x6D, 0xBC, 0x65, 0x5D, 0x5C, 0x9C, 0x4C, 0x1C, 0x2A, 0xDA, 0x22, 0xBB, 0x22, 0xFE, 0x12, 0x9D, 0x0A, 0x3D, 0x02, 0x3D, 0x02, 0x3E, 0x01, 0x02, 0x1E, 0x01, 0x02, 0x1F, 0x02, 0x01, 0xFF, 0x02, 0x01, 0xDF, 0x80, 0x01, 0xBF, 0x02, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x94, 0x01, 0x7E, 0x09, 0x7D, 0x09, 0x5D, 0x19, 0x7D, 0x29, 0x7C, 0x28, 0xD9, 0x69, 0xFC, 0x8A, 0x9C, 0x81, 0xD9, 0x92, 0x19, 0x8A, 0x79, 0x7A, 0xDA, 0x29, 0x74, 0x22, 0xB8, 0x2C, 0x7E, 0x14, 0xBD, 0x0D, 0x7D, 0x0E, 0x5F, 0x17, 0x1F, 0x17, 0x9F, 0x0F, 0xBF, 0x04, 0x07, 0xBF, 0x8D, 0x0F, 0x9F, 0x1F, 0x9F, 0x27, 0x5F, 0x3E, 0xFE, 0x56, 0x9E, 0x7E, 0x3E, 0x84, 0x59, 0x71, 0xF1, 0x91, 0xD2, 0xB1, 0xF3, 0xC1, 0xF4, 0xC9, 0xB3, 0xC9, 0x93, 0xC9, 0x72, 0x02, 0xD1, 0x93, 0x80, 0xC9, 0x93, 0x01, 0xC9, 0xB3, 0x88, 0xC9, 0xD4, 0xC1, 0xD4, 0xB9, 0xD4, 0xC2, 0x97, 0x89, 0x52, 0x58, 0xB0, 0x51, 0x11, 0x49, 0x31, 0x41, 0x51, 0x01, 0x41, 0x71, 0x02, 0x39, 0x51, 0x05, 0x31, 0x51, 0x83, 0x29, 0x50, 0x31, 0x51, + 0x29, 0x30, 0x31, 0x50, 0x12, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x28, 0xEF, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x91, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x34, 0x11, 0x54, 0x11, 0x75, 0x11, 0x95, 0x11, 0xB5, 0x11, 0x95, 0x11, 0xB5, 0x19, 0xD6, 0x11, 0xB5, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x52, 0x02, 0x19, 0x31, 0x03, 0x21, 0x31, 0x01, 0x19, 0x10, 0x83, 0x19, 0x30, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x03, 0x19, 0x30, 0x02, 0x19, 0x31, 0x8D, 0x19, 0x11, 0x11, 0x12, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x19, 0xD6, 0x2A, 0x38, 0x21, 0xF7, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x07, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, + 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x0E, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x86, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x19, 0x10, 0x01, 0x19, 0x11, 0x86, 0x11, 0x32, 0x09, 0x33, 0x09, 0x74, 0x11, 0xD7, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xD9, 0x03, 0x01, 0xD9, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x20, 0xEF, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8D, 0x19, 0x11, 0x11, 0x12, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x21, 0xF6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x53, 0x11, 0x33, 0x19, 0x53, 0x19, 0x32, 0x19, 0x52, 0x05, 0x19, 0x32, 0x80, 0x11, 0x32, 0x03, 0x11, 0x12, 0x01, 0x11, 0x32, 0x81, 0x11, 0x12, 0x11, 0x32, 0x01, 0x19, 0x52, 0x80, 0x19, 0x32, 0x05, 0x19, 0x31, 0x81, 0x19, 0x11, 0x21, 0x31, 0x01, 0x19, 0x10, 0x02, 0x21, 0x30, 0x80, 0x19, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x31, 0x83, 0x20, 0xF0, 0x21, 0x10, 0x21, 0x30, + 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x19, 0x10, 0x06, 0x19, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x31, 0x02, 0x19, 0x10, 0x80, 0x21, 0x31, 0x01, 0x21, 0x51, 0x8D, 0x21, 0x52, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x75, 0x09, 0x34, 0x01, 0x11, 0x33, 0x83, 0x11, 0x53, 0x11, 0x32, 0x19, 0x53, 0x11, 0x52, 0x02, 0x19, 0x52, 0x83, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x21, 0x50, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x32, 0x19, 0x54, 0x11, 0x54, 0x19, 0x76, 0x19, 0xB7, 0x01, 0x22, 0x18, 0x82, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x33, 0x01, 0x11, 0x11, 0x04, 0x19, 0x31, 0x8B, 0x19, 0x32, 0x11, 0x32, 0x19, 0x74, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x32, 0x11, 0x12, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x0C, 0x29, 0x30, 0x80, + 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x51, 0x8A, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xD6, 0x19, 0x75, 0x11, 0x34, 0x11, 0x13, 0x01, 0x19, 0x12, 0x83, 0x19, 0x32, 0x21, 0x31, 0x21, 0x32, 0x21, 0x31, 0x03, 0x19, 0x11, 0x02, 0x19, 0x32, 0x05, 0x19, 0x11, 0x81, 0x11, 0x11, 0x19, 0x11, 0x03, 0x11, 0x11, 0x80, 0x10, 0xF1, 0x02, 0x08, 0xF1, 0x86, 0x08, 0xF2, 0x09, 0x13, 0x09, 0x34, 0x09, 0x55, 0x09, 0x96, 0x09, 0xD8, 0x01, 0xF9, 0x02, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x8A, 0x01, 0xFA, 0x09, 0xFA, 0x09, 0xD9, 0x11, 0xD8, 0x19, 0xD7, 0x19, 0x94, 0x11, 0x12, 0x19, 0x31, 0x21, 0x51, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x02, + 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x08, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x31, 0x50, 0x80, 0x29, 0x30, 0x02, 0x31, 0x30, 0x02, 0x31, 0x51, 0x80, 0x31, 0x30, 0x01, 0x31, 0x51, 0x03, 0x39, 0x51, 0x01, 0x39, 0x71, 0x02, 0x41, 0x71, 0x80, 0x41, 0x51, 0x01, 0x49, 0x72, 0x03, 0x49, 0x92, 0x01, 0x51, 0xB2, 0x01, 0x51, 0x92, 0x01, 0x59, 0xB2, 0x81, 0x61, 0xD3, 0x61, 0xD2, 0x01, 0x69, 0xD2, 0x8D, 0x61, 0x70, 0x51, 0x0F, 0x61, 0x50, 0x71, 0xB1, 0x92, 0xD5, 0xB3, 0xB8, 0xCC, 0x3A, 0xDC, 0x9B, 0xE4, 0xBB, 0xDC, 0x7A, 0xDC, 0x59, 0xDC, 0x39, 0xD4, 0x39, 0xDC, 0x59, 0x01, 0xDC, 0x58, 0x01, 0xD4, 0x38, 0x80, 0xD4, 0x17, 0x02, 0xD4, 0x37, 0x80, 0xD4, 0x57, 0x01, 0xCC, 0x57, 0x88, 0xCC, 0x78, 0xC4, 0x98, 0xBC, 0xB8, 0xAC, 0x98, 0x83, 0xD4, 0x73, 0xF4, 0x8D, 0x5A, 0x8E, 0x3D, 0x86, 0x5D, 0x01, 0x7E, 0x1B, 0x94, 0x86, 0x1B, 0x8D, 0xDB, 0x9D, 0x9A, 0x94, 0x97, 0xA4, 0x77, 0xAC, 0x57, 0xB4, 0x78, 0xB4, 0x77, 0xBC, 0x98, 0xB4, 0x77, 0xA4, 0x57, 0x8C, 0x36, 0x74, 0x36, 0x64, 0xD7, 0x7E, 0xDE, 0x5F, 0x1E, 0x3F, 0x3E, 0x2F, 0x7E, 0x1F, 0xBF, 0x17, 0xBF, 0x0F, 0xBF, 0x03, 0x07, 0xDF, 0x0A, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x07, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x97, 0x07, 0xBF, 0x0F, 0x9E, 0x17, 0x9F, 0x2F, 0x7F, 0x3E, 0xFE, 0x5E, 0x7D, 0x85, 0xDC, 0x8C, 0xB8, 0x9B, 0xD5, 0xB3, 0xB5, 0xC3, 0x95, 0xCB, 0x75, 0xCB, 0x55, 0xD3, 0x76, 0xCB, 0x75, 0xBB, 0x95, 0x8A, 0xF3, 0x84, 0x77, 0x7E, 0x9E, 0x4F, 0x1E, 0x2F, 0x5E, + 0x1F, 0x7E, 0x0F, 0x9E, 0x07, 0xBE, 0x03, 0x07, 0xDE, 0x02, 0x07, 0xFE, 0x03, 0x07, 0xFD, 0x02, 0x07, 0xDD, 0x81, 0x07, 0xFD, 0x07, 0xFC, 0x04, 0x07, 0xDC, 0x02, 0x07, 0xDB, 0x80, 0x07, 0xFB, 0x01, 0x07, 0xDB, 0x08, 0x07, 0xDA, 0x02, 0x07, 0xD9, 0x01, 0x07, 0xF9, 0x08, 0x07, 0xFA, 0x81, 0x07, 0xDA, 0x07, 0xFA, 0x02, 0x07, 0xF9, 0x03, 0x07, 0xD9, 0x04, 0x07, 0xB9, 0x01, 0x07, 0x99, 0x90, 0x07, 0x78, 0x17, 0x79, 0x27, 0x39, 0x2E, 0xD8, 0x2E, 0x17, 0x56, 0x7A, 0x6E, 0x7C, 0x6D, 0xFC, 0x6D, 0x7C, 0x6D, 0x1C, 0x64, 0x7D, 0x5C, 0x1D, 0x22, 0xB9, 0x1A, 0x7A, 0x22, 0xDD, 0x12, 0x7D, 0x0A, 0x7E, 0x01, 0x02, 0x3E, 0x80, 0x02, 0x1E, 0x01, 0x02, 0x1F, 0x01, 0x01, 0xFF, 0x81, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x80, 0x01, 0xDF, 0x02, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x96, 0x01, 0x9E, 0x09, 0x7E, 0x11, 0x9D, 0x19, 0x7D, 0x29, 0x7C, 0x28, 0xF9, 0x6A, 0x1C, 0x92, 0x9D, 0x89, 0xF9, 0x92, 0x19, 0x92, 0x38, 0x8A, 0xBA, 0x4A, 0x17, 0x11, 0xB5, 0x2B, 0xFC, 0x14, 0x7C, 0x0D, 0x1D, 0x16, 0x1F, 0x0E, 0xBF, 0x17, 0x7F, 0x17, 0xBF, 0x07, 0xBF, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x8D, 0x0F, 0xBF, 0x17, 0x9F, 0x1F, 0x5F, 0x2F, 0x3F, 0x4E, 0xBE, 0x76, 0x7E, 0x8D, 0x5C, 0x62, 0x52, 0x89, 0xF2, 0xAA, 0x13, 0xC2, 0x13, 0xC1, 0xD3, 0xC9, 0xD3, 0xD1, 0xD4, 0x03, 0xD1, 0x93, 0x80, 0xC9, 0x93, 0x01, 0xC9, 0xB3, 0x8C, 0xC1, 0xB3, 0xC1, 0xD4, 0xBA, 0x35, 0xAA, 0x36, 0x68, 0xB0, 0x61, 0x31, 0x51, 0x31, 0x49, 0x51, 0x41, 0x51, 0x41, 0x71, + 0x39, 0x51, 0x39, 0x71, 0x39, 0x51, 0x06, 0x31, 0x51, 0x80, 0x31, 0x31, 0x0E, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x19, 0x33, 0x19, 0x53, 0x11, 0x33, 0x01, 0x11, 0x53, 0x02, 0x11, 0x74, 0x88, 0x19, 0x94, 0x19, 0x73, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x51, 0x19, 0x30, 0x19, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x19, 0x11, 0x8D, 0x19, 0x31, 0x19, 0x32, 0x19, 0x52, 0x19, 0x73, 0x19, 0x74, 0x19, 0x95, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xD6, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x05, 0x21, 0x10, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x05, 0x21, 0x0F, + 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x10, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x88, 0x21, 0x51, 0x19, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x52, 0x11, 0x74, 0x11, 0x54, 0x11, 0x76, 0x11, 0x97, 0x01, 0x09, 0xB8, 0x80, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x11, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x53, 0x19, 0xB5, 0x01, 0x21, 0xF7, 0x85, 0x21, 0xF6, 0x19, 0x94, 0x11, 0x53, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x52, 0x04, 0x11, 0x32, 0x01, 0x11, 0x33, 0x81, 0x11, 0x53, 0x09, 0x32, 0x04, 0x09, 0x33, 0x81, 0x11, 0x32, 0x09, 0x12, 0x01, 0x11, 0x32, 0x01, 0x19, 0x52, 0x04, 0x19, + 0x31, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x83, 0x21, 0x31, 0x21, 0x51, 0x19, 0x52, 0x11, 0x31, 0x01, 0x11, 0x32, 0x83, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD7, 0x19, 0xF8, 0x01, 0x11, 0xF7, 0x80, 0x11, 0xD7, 0x01, 0x11, 0xB6, 0x01, 0x11, 0x75, 0x01, 0x11, 0x74, 0x83, 0x09, 0x53, 0x09, 0x33, 0x11, 0x33, 0x11, 0x53, 0x01, 0x19, 0x52, 0x83, 0x19, 0x31, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x11, 0x21, 0x32, 0x21, 0x33, 0x19, 0x33, 0x11, 0x34, 0x11, 0x75, 0x19, 0xD7, 0x01, 0x22, 0x18, 0x85, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x32, 0x11, 0x11, 0x10, 0xF1, 0x19, 0x51, 0x01, 0x21, 0x52, 0x8E, 0x21, 0x51, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x74, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD7, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, + 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x03, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x05, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x80, 0x21, 0x51, 0x01, 0x19, 0x31, 0x83, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x8C, 0x19, 0x95, 0x11, 0x34, 0x11, 0x13, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, 0x12, 0x01, 0x11, 0x12, 0x02, 0x11, 0x32, 0x81, 0x11, 0x12, 0x09, 0x12, 0x09, 0x08, 0xF2, 0x87, 0x09, 0x13, 0x01, 0x13, 0x09, 0x33, 0x09, 0x34, 0x09, 0x55, 0x11, 0x96, 0x11, 0xB7, 0x09, 0xD8, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x8F, 0x09, 0xDA, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0xD7, 0x19, 0xB5, 0x11, 0x32, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, + 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x85, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x08, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x09, 0x29, 0x30, 0x01, 0x31, 0x30, 0x05, 0x31, 0x51, 0x82, 0x39, 0x51, 0x39, 0x71, 0x39, 0x51, 0x02, 0x39, 0x71, 0x80, 0x41, 0x71, 0x03, 0x41, 0x72, 0x01, 0x49, 0x92, 0x86, 0x49, 0xB3, 0x49, 0x92, 0x49, 0xB2, 0x49, 0xB3, 0x51, 0xB3, 0x51, 0x93, 0x51, 0xB3, 0x01, 0x59, 0xB3, 0x02, 0x61, 0xD3, 0x02, 0x69, 0xF3, 0x8D, 0x69, 0xD3, 0x71, 0xD2, 0x69, 0x91, 0x71, 0xB1, 0x79, 0xD1, 0x9A, 0xB4, 0xBB, 0xB8, 0xD4, 0x5A, 0xDC, 0x9B, 0xDC, 0x7A, 0xDC, 0x5A, 0xD4, 0x59, 0xDC, 0x79, 0xD4, 0x58, 0x02, 0xD4, 0x38, 0x03, 0xD4, 0x37, 0x8A, 0xD4, 0x58, 0xD4, 0x37, 0xCC, 0x57, 0xC4, 0x57, 0xC4, 0x78, 0xBC, 0x98, 0xA4, 0x77, 0x7B, 0xB4, 0x74, 0x35, 0x95, 0x9A, 0x9E, 0x5D, 0x01, 0x8D, 0xFB, 0x93, 0x95, 0xDB, 0x9D, 0xBB, 0x9D, 0x5A, 0x94, 0xB8, 0xA4, 0xB8, 0x94, 0x57, 0x94, 0x56, 0xA4, 0xB8, 0x9C, 0xD8, 0x84, 0x76, 0x6C, 0x56, 0x6D, 0x18, 0x6E, 0x7C, + 0x5E, 0xFE, 0x3F, 0x3D, 0x27, 0x3D, 0x1F, 0x7E, 0x17, 0xBF, 0x0F, 0xBF, 0x0F, 0xDF, 0x04, 0x07, 0xDF, 0x09, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x08, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x96, 0x0F, 0x9F, 0x1F, 0x9F, 0x2F, 0x5E, 0x47, 0x1E, 0x66, 0x9D, 0x85, 0xDB, 0x8C, 0x77, 0xA3, 0xD5, 0xB3, 0x75, 0xC3, 0x95, 0xCB, 0x95, 0xD3, 0x96, 0xCB, 0x55, 0xD3, 0x95, 0xC3, 0x95, 0x93, 0x34, 0x7C, 0x36, 0x7E, 0x9E, 0x4E, 0xFE, 0x2F, 0x5E, 0x1F, 0x9E, 0x0F, 0x9E, 0x0F, 0xBE, 0x01, 0x07, 0xDE, 0x81, 0x07, 0xFE, 0x07, 0xDE, 0x04, 0x07, 0xFE, 0x82, 0x07, 0xDE, 0x07, 0xFD, 0x07, 0xDD, 0x05, 0x07, 0xFD, 0x06, 0x07, 0xDC, 0x08, 0x07, 0xDB, 0x80, 0x07, 0xFB, 0x03, 0x07, 0xDA, 0x81, 0x07, 0xFA, 0x07, 0xDA, 0x0A, 0x07, 0xFB, 0x02, 0x07, 0xFA, 0x80, 0x07, 0xFB, 0x01, 0x07, 0xDB, 0x80, 0x07, 0xDA, 0x01, 0x07, 0xBA, 0x80, 0x07, 0xDA, 0x01, 0x07, 0xBA, 0x02, 0x07, 0x99, 0x94, 0x17, 0x79, 0x1F, 0x59, 0x2F, 0x3A, 0x36, 0x98, 0x35, 0xD7, 0x66, 0x7B, 0x76, 0x5C, 0x6D, 0xBB, 0x75, 0x3B, 0x74, 0xDC, 0x6C, 0x7C, 0x5C, 0x1D, 0x2A, 0x99, 0x1A, 0x39, 0x22, 0x9C, 0x12, 0x7D, 0x0A, 0x5D, 0x0A, 0x5E, 0x02, 0x1E, 0x02, 0x1F, 0x02, 0x1E, 0x03, 0x01, 0xFF, 0x82, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0xDF, 0x03, 0x01, 0xBF, 0x80, 0x01, 0x9F, 0x01, 0x01, 0xBF, 0x95, 0x01, 0x9E, 0x01, 0x7E, 0x09, 0x7D, 0x11, 0x7D, 0x21, 0x7C, 0x28, 0xF9, 0x61, 0xBA, 0x9A, 0xBD, 0x9A, 0x3A, 0x91, 0xD8, 0x92, 0x17, 0x92, 0x99, 0x62, 0x58, 0x19, 0x33, 0x2B, 0x7B, 0x1C, 0x5C, 0x14, + 0xDD, 0x0D, 0x9E, 0x16, 0x7F, 0x17, 0x1F, 0x17, 0xBF, 0x0F, 0xBF, 0x01, 0x07, 0xBF, 0x8E, 0x07, 0xDF, 0x07, 0x9F, 0x0F, 0xBF, 0x0F, 0x9F, 0x1F, 0x9F, 0x27, 0x5F, 0x3E, 0xDE, 0x66, 0x9E, 0x8E, 0x1E, 0x73, 0x96, 0x71, 0xF1, 0x99, 0xF2, 0xB1, 0xF3, 0xC1, 0xD3, 0xC9, 0xB3, 0x01, 0xC9, 0x93, 0x01, 0xD1, 0x93, 0x8D, 0xD1, 0xB3, 0xC9, 0x93, 0xD1, 0xB3, 0xC9, 0xB3, 0xC1, 0xB3, 0xC1, 0xD4, 0xB9, 0xF4, 0xBA, 0x56, 0x81, 0x31, 0x61, 0x11, 0x51, 0x11, 0x49, 0x31, 0x41, 0x51, 0x41, 0x71, 0x04, 0x39, 0x71, 0x02, 0x31, 0x51, 0x02, 0x31, 0x31, 0x81, 0x29, 0x30, 0x29, 0x50, 0x10, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x19, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x31, 0x80, 0x21, 0x32, 0x02, 0x19, 0x12, 0x80, 0x19, 0x32, 0x02, 0x11, 0x32, 0x82, 0x19, 0x53, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x02, 0x19, 0x30, 0x02, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x31, 0x02, 0x19, 0x31, 0x84, 0x19, 0x32, 0x19, 0x53, 0x19, 0x74, 0x11, 0x94, 0x21, 0xF7, 0x01, 0x22, 0x17, 0x85, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x05, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x84, 0x29, + 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x0B, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x8E, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x50, 0x21, 0x51, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x76, 0x11, 0x97, 0x09, 0xB7, 0x01, 0x11, 0xF9, 0x80, 0x09, 0xD9, 0x01, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, + 0x11, 0x83, 0x19, 0x32, 0x11, 0x33, 0x11, 0x53, 0x19, 0x95, 0x01, 0x21, 0xF6, 0x83, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x33, 0x01, 0x11, 0x12, 0x80, 0x19, 0x32, 0x01, 0x19, 0x52, 0x87, 0x11, 0x52, 0x11, 0x32, 0x11, 0x53, 0x11, 0x33, 0x11, 0x54, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB5, 0x01, 0x11, 0xD6, 0x83, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xF6, 0x11, 0xD6, 0x01, 0x11, 0xB5, 0x82, 0x11, 0x94, 0x11, 0x73, 0x11, 0x33, 0x01, 0x11, 0x32, 0x03, 0x19, 0x31, 0x81, 0x21, 0x51, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x84, 0x21, 0x10, 0x29, 0x10, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x72, 0x88, 0x11, 0x31, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD7, 0x1A, 0x18, 0x11, 0xF8, 0x11, 0xD8, 0x02, 0x09, 0xB7, 0x01, 0x11, 0xF8, 0x80, 0x1A, 0x18, 0x01, 0x11, 0xD7, 0x85, 0x11, 0x95, 0x09, 0x74, 0x11, + 0x53, 0x19, 0x53, 0x19, 0x52, 0x19, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x11, 0x01, 0x21, 0x32, 0x83, 0x19, 0x13, 0x11, 0x34, 0x11, 0x95, 0x19, 0xD7, 0x01, 0x1A, 0x17, 0x82, 0x19, 0xD6, 0x11, 0x74, 0x09, 0x12, 0x01, 0x11, 0x11, 0x81, 0x19, 0x31, 0x21, 0x52, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x82, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x02, 0x19, 0xF7, 0x84, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x94, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x80, 0x19, 0x95, 0x01, 0x11, 0x33, 0x80, 0x19, 0x12, 0x02, 0x19, 0x11, 0x80, 0x21, 0x11, 0x01, 0x19, 0x11, 0x82, 0x19, 0x12, 0x19, 0x32, 0x19, 0x33, 0x01, 0x11, 0x33, 0x82, 0x11, 0x54, 0x11, 0x74, 0x19, 0xB5, 0x01, 0x11, 0x95, 0x84, 0x11, 0x96, 0x11, 0xB6, 0x11, 0x96, 0x11, 0xB6, 0x11, 0xD6, 0x01, 0x19, + 0xD7, 0x80, 0x19, 0xF7, 0x02, 0x19, 0xF8, 0x02, 0x1A, 0x18, 0x88, 0x1A, 0x19, 0x11, 0xF8, 0x11, 0xD8, 0x09, 0xB8, 0x09, 0xD8, 0x01, 0xF9, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x85, 0x09, 0xDA, 0x09, 0xD9, 0x11, 0xB8, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x33, 0x01, 0x19, 0x32, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x80, 0x29, 0x30, 0x08, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x07, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x31, 0x50, 0x01, 0x31, 0x51, 0x80, 0x31, 0x71, 0x01, 0x31, 0x51, 0x85, 0x31, 0x31, 0x39, 0x51, 0x31, 0x30, 0x31, 0x51, 0x39, 0x71, 0x39, 0x72, 0x01, 0x39, 0x71, 0x80, 0x39, 0x72, 0x03, 0x41, 0x92, 0x80, 0x41, 0x93, 0x01, 0x41, 0x92, 0x01, + 0x49, 0xB3, 0x82, 0x49, 0xD3, 0x49, 0xB3, 0x51, 0xD4, 0x01, 0x51, 0xB4, 0x83, 0x51, 0xB3, 0x59, 0xB3, 0x61, 0xD4, 0x61, 0xF4, 0x01, 0x61, 0xD3, 0x84, 0x61, 0xB3, 0x61, 0xD3, 0x69, 0xD3, 0x71, 0xF3, 0x71, 0xD3, 0x01, 0x7A, 0x13, 0x8A, 0x71, 0xF2, 0x69, 0x70, 0x71, 0xB1, 0x82, 0x32, 0xAB, 0x36, 0xC3, 0xD8, 0xCC, 0x5A, 0xD4, 0x7A, 0xD4, 0x79, 0xD4, 0x59, 0xD4, 0x38, 0x01, 0xD4, 0x58, 0x80, 0xD4, 0x38, 0x01, 0xD4, 0x37, 0x80, 0xCC, 0x16, 0x01, 0xD4, 0x37, 0x89, 0xCC, 0x37, 0xCC, 0x57, 0xC4, 0x57, 0xBC, 0x77, 0xBC, 0xB8, 0x9C, 0x56, 0x83, 0xD4, 0x8C, 0x97, 0x9D, 0xBB, 0x9D, 0xFC, 0x01, 0x95, 0xDB, 0x91, 0x9D, 0xBB, 0x9D, 0x9B, 0x9D, 0x7A, 0x9D, 0x9A, 0x95, 0x59, 0x85, 0x39, 0x75, 0x18, 0x75, 0x59, 0x6D, 0xDA, 0x6E, 0xBD, 0x56, 0xFD, 0x3F, 0x3E, 0x27, 0x5D, 0x1F, 0x9E, 0x17, 0x9E, 0x0F, 0xBF, 0x0F, 0xDF, 0x07, 0xBF, 0x05, 0x07, 0xDF, 0x12, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x97, 0x07, 0xBF, 0x0F, 0xBF, 0x1F, 0x9F, 0x2F, 0x5E, 0x3E, 0xFE, 0x66, 0x7D, 0x85, 0xBB, 0x8C, 0x16, 0xAB, 0xF6, 0xBB, 0x95, 0xCB, 0x96, 0xD3, 0x75, 0xD3, 0x76, 0xD3, 0x55, 0xD3, 0x75, 0xC3, 0xB6, 0x93, 0x13, 0x84, 0x57, 0x7E, 0x7D, 0x57, 0x1E, 0x37, 0x5E, 0x1F, 0x9F, 0x17, 0x9E, 0x0F, 0xBE, 0x01, 0x07, 0xDE, 0x02, 0x07, 0xFF, 0x02, 0x07, 0xFE, 0x80, 0x07, 0xDE, 0x05, 0x07, 0xFE, 0x02, 0x07, 0xFD, 0x03, 0x07, 0xDD, 0x02, 0x07, 0xDC, 0x01, 0x07, 0xFC, 0x01, 0x07, 0xDC, 0x81, 0x07, 0xDB, 0x07, 0xFB, 0x02, 0x07, 0xFC, 0x04, 0x07, 0xFB, 0x80, 0x07, 0xDB, 0x01, + 0x07, 0xDC, 0x80, 0x07, 0xDB, 0x01, 0x07, 0xDC, 0x07, 0x07, 0xFC, 0x82, 0x07, 0xFB, 0x07, 0xFC, 0x07, 0xFB, 0x04, 0x07, 0xDB, 0x80, 0x07, 0xBB, 0x01, 0x07, 0xDB, 0x98, 0x07, 0xBB, 0x07, 0xBA, 0x07, 0x9A, 0x0F, 0x7A, 0x17, 0x7A, 0x1F, 0x3A, 0x37, 0x3B, 0x3E, 0xBA, 0x3D, 0xF8, 0x66, 0x5B, 0x76, 0x3C, 0x75, 0x9B, 0x74, 0xFB, 0x74, 0xBB, 0x74, 0x9D, 0x6C, 0x3D, 0x2A, 0x78, 0x1A, 0x19, 0x12, 0x5B, 0x12, 0x5D, 0x0A, 0x3D, 0x02, 0x3E, 0x02, 0x5F, 0x02, 0x1E, 0x02, 0x1F, 0x04, 0x01, 0xFF, 0x01, 0x01, 0xDF, 0x03, 0x01, 0xBF, 0x99, 0x01, 0xDF, 0x01, 0x9E, 0x01, 0x7E, 0x01, 0x7D, 0x09, 0x7D, 0x11, 0x9D, 0x21, 0x9C, 0x31, 0x3A, 0x61, 0xDB, 0xA2, 0xFE, 0x9A, 0x3A, 0x99, 0xD7, 0x9A, 0x17, 0x9A, 0x99, 0x7A, 0x79, 0x29, 0x53, 0x22, 0x77, 0x2C, 0x3D, 0x14, 0x7C, 0x0D, 0x5D, 0x0E, 0x1E, 0x16, 0xDF, 0x17, 0x9F, 0x0F, 0xBF, 0x0F, 0xDF, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x8B, 0x07, 0x9F, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x5F, 0x37, 0x1F, 0x56, 0xBF, 0x86, 0x7F, 0x84, 0xDA, 0x59, 0xF1, 0x89, 0xD1, 0xA9, 0xF3, 0xC1, 0xD3, 0x01, 0xC9, 0xB3, 0x85, 0xC9, 0x93, 0xD1, 0x93, 0xC9, 0x73, 0xD1, 0x93, 0xC9, 0x93, 0xD1, 0xB3, 0x01, 0xC9, 0xB3, 0x86, 0xC1, 0xD3, 0xB9, 0xF4, 0xC2, 0x76, 0xA2, 0x15, 0x60, 0xD0, 0x59, 0x11, 0x49, 0x10, 0x01, 0x41, 0x51, 0x80, 0x41, 0x71, 0x01, 0x39, 0x71, 0x81, 0x31, 0x51, 0x31, 0x71, 0x02, 0x31, 0x51, 0x02, 0x31, 0x31, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x0C, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x03, 0x29, + 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x88, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x21, 0x11, 0x02, 0x19, 0x11, 0x01, 0x19, 0x32, 0x81, 0x19, 0x31, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x30, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x02, 0x22, 0x17, 0x85, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x04, 0x21, 0x30, 0x8A, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x0F, + 0x81, 0x29, 0x10, 0x21, 0x10, 0x08, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x09, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x09, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x8C, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x19, 0x12, 0x11, 0x33, 0x19, 0x95, 0x19, 0x96, 0x19, 0xD7, 0x11, 0xB8, 0x01, 0x11, 0xF9, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x84, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x32, 0x81, 0x11, 0x32, 0x19, 0x52, 0x01, 0x11, 0x53, 0x93, 0x11, 0x54, 0x11, 0x74, 0x11, 0x75, 0x11, 0x95, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x11, 0xF7, 0x1A, 0x38, 0x1A, 0x18, 0x1A, 0x38, 0x1A, 0x18, 0x1A, 0x38, 0x1A, 0x17, 0x19, 0xF7, 0x19, 0xF6, 0x19, 0xD6, 0x19, 0xD5, 0x19, 0xB4, 0x11, 0x53, + 0x01, 0x11, 0x32, 0x81, 0x11, 0x11, 0x19, 0x31, 0x02, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x51, 0x89, 0x19, 0x31, 0x11, 0x32, 0x11, 0x12, 0x11, 0x33, 0x09, 0x54, 0x11, 0xD6, 0x11, 0xF7, 0x09, 0xD8, 0x09, 0xF8, 0x09, 0xD8, 0x02, 0x09, 0xD9, 0x80, 0x09, 0xF9, 0x02, 0x12, 0x19, 0x86, 0x1A, 0x18, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x53, 0x19, 0x52, 0x21, 0x52, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x11, 0x89, 0x19, 0x11, 0x19, 0x12, 0x19, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xB6, 0x11, 0x74, 0x01, 0x11, 0x32, 0x83, 0x19, 0x32, 0x21, 0x52, 0x21, 0x31, 0x21, 0x52, 0x01, 0x19, 0x11, 0x8C, 0x19, 0x12, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, + 0x11, 0x95, 0x19, 0xF7, 0x22, 0x18, 0x22, 0x17, 0x11, 0x95, 0x11, 0x53, 0x11, 0x32, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x05, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x11, 0x32, 0x11, 0x53, 0x19, 0x94, 0x02, 0x21, 0xF6, 0x89, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x01, 0x19, 0x12, 0x85, 0x11, 0x33, 0x11, 0x34, 0x11, 0x54, 0x19, 0x96, 0x19, 0xD7, 0x22, 0x18, 0x01, 0x2A, 0x79, 0x86, 0x2A, 0x9A, 0x2A, 0x79, 0x22, 0x79, 0x2A, 0x7A, 0x2A, 0x9A, 0x22, 0x7A, 0x2A, 0x7A, 0x01, 0x22, 0x5A, 0x81, 0x22, 0x3A, 0x1A, 0x3A, 0x03, 0x1A, 0x19, 0x02, 0x11, 0xF9, 0x82, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x87, 0x01, 0xDA, 0x09, 0xFA, 0x09, 0xDA, 0x09, 0xB9, 0x11, 0xB8, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x33, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, + 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x03, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x0E, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x07, 0x31, 0x51, 0x02, 0x39, 0x71, 0x03, 0x39, 0x72, 0x01, 0x41, 0x92, 0x81, 0x41, 0x93, 0x41, 0xB3, 0x03, 0x49, 0xB3, 0x01, 0x51, 0xB4, 0x82, 0x51, 0xB3, 0x51, 0xB4, 0x59, 0xB4, 0x01, 0x59, 0xD4, 0x81, 0x59, 0xB3, 0x61, 0xD4, 0x01, 0x69, 0xF4, 0x82, 0x69, 0xD4, 0x69, 0xF4, 0x71, 0xF4, 0x01, 0x72, 0x13, 0x8B, 0x7A, 0x34, 0x72, 0x13, 0x71, 0xD2, 0x71, 0xB1, 0x69, 0x6F, 0x71, 0xB0, 0x8A, 0x72, 0x9B, 0x15, 0xBC, 0x18, 0xCC, 0x9A, 0xD4, 0x9A, 0xCC, 0x59, 0x02, 0xD4, 0x58, 0x02, 0xD4, 0x37, 0x01, 0xD4, 0x17, 0x80, 0xD4, 0x37, 0x01, 0xCC, 0x57, 0x88, 0xC4, 0x57, 0xBC, 0x57, 0xB4, 0x77, 0xA4, 0x57, 0x83, 0xD4, 0x94, 0xD8, 0xAD, 0xFC, 0xA5, + 0xFC, 0x9D, 0xDB, 0x01, 0x95, 0xDB, 0x8C, 0x95, 0xFB, 0x8E, 0x1B, 0x85, 0xFB, 0x76, 0x1B, 0x6E, 0x7C, 0x6E, 0xFE, 0x5F, 0x5F, 0x3F, 0x1D, 0x2F, 0x5E, 0x1F, 0x7E, 0x17, 0x9E, 0x0F, 0xBE, 0x0F, 0xBF, 0x07, 0x07, 0xDF, 0x09, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x07, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x97, 0x07, 0xBF, 0x0F, 0xBF, 0x1F, 0x7E, 0x2F, 0x5E, 0x46, 0xFE, 0x66, 0x7D, 0x85, 0x7A, 0x8B, 0xF5, 0xAB, 0xD5, 0xC3, 0xB6, 0xCB, 0x75, 0xD3, 0x75, 0xD3, 0x55, 0xDB, 0x75, 0xCB, 0x55, 0xC3, 0x96, 0x9B, 0x33, 0x84, 0x16, 0x7E, 0x7D, 0x56, 0xFE, 0x37, 0x5E, 0x1F, 0x7E, 0x0F, 0x9E, 0x0F, 0xBE, 0x02, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x0B, 0x07, 0xFE, 0x81, 0x07, 0xFD, 0x07, 0xDD, 0x01, 0x07, 0xFD, 0x02, 0x07, 0xDD, 0x81, 0x07, 0xFD, 0x07, 0xFC, 0x01, 0x07, 0xDC, 0x08, 0x07, 0xFC, 0x05, 0x07, 0xDC, 0x82, 0x07, 0xDD, 0x07, 0xFD, 0x07, 0xFC, 0x02, 0x07, 0xFD, 0x05, 0x07, 0xFC, 0x06, 0x07, 0xDC, 0x96, 0x07, 0xDB, 0x07, 0xDC, 0x07, 0xBB, 0x07, 0x9B, 0x0F, 0x9B, 0x0F, 0x7B, 0x17, 0x5B, 0x27, 0x3B, 0x37, 0x1B, 0x3E, 0x9A, 0x45, 0xF9, 0x6E, 0x3B, 0x7E, 0x1C, 0x7D, 0x7B, 0x7C, 0xDA, 0x7C, 0xBB, 0x7C, 0x9D, 0x6C, 0x3E, 0x2A, 0x38, 0x1A, 0x19, 0x1A, 0x3B, 0x0A, 0x1C, 0x0A, 0x3D, 0x01, 0x02, 0x1E, 0x82, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x03, 0x01, 0xDF, 0x06, 0x01, 0xBF, 0x96, 0x01, 0xBE, 0x01, 0x9E, 0x09, 0x7D, 0x11, 0x7D, 0x21, 0x9C, 0x31, 0x3A, 0x59, 0x9A, 0x9A, 0xDE, 0x9A, 0x19, 0x99, 0xD7, 0xA1, 0xF7, 0x9A, 0x58, 0x8A, 0xB9, 0x41, 0x94, 0x19, + 0xB5, 0x33, 0xFC, 0x1C, 0x3C, 0x0C, 0xDD, 0x15, 0xDE, 0x16, 0x9F, 0x17, 0x5F, 0x17, 0xBF, 0x0F, 0xBF, 0x02, 0x07, 0xDF, 0x8E, 0x07, 0xBF, 0x0F, 0xBF, 0x0F, 0x9F, 0x1F, 0x7F, 0x2F, 0x3F, 0x46, 0xDF, 0x6E, 0x9F, 0x8D, 0xDE, 0x62, 0xF4, 0x71, 0xF1, 0xA2, 0x13, 0xB9, 0xD3, 0xC1, 0xB3, 0xC9, 0x93, 0xD1, 0xB3, 0x03, 0xD1, 0x93, 0x02, 0xC9, 0xB3, 0x8B, 0xC9, 0xD3, 0xC1, 0xF4, 0xBA, 0x14, 0xC2, 0xD7, 0x68, 0xF0, 0x61, 0x31, 0x49, 0x10, 0x49, 0x51, 0x41, 0x51, 0x41, 0x71, 0x39, 0x71, 0x39, 0x51, 0x01, 0x39, 0x71, 0x04, 0x31, 0x51, 0x81, 0x31, 0x31, 0x31, 0x51, 0x0D, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x85, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x21, 0x31, 0x02, 0x19, 0x31, 0x85, 0x19, 0x11, 0x19, 0x31, 0x19, 0x30, 0x19, 0x10, 0x21, 0x30, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x19, 0x11, 0x84, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x19, 0xD6, 0x21, 0xF7, 0x01, 0x22, 0x17, 0x85, 0x11, 0x95, 0x11, 0x54, 0x11, 0x32, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x05, 0x21, + 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x88, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x08, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x8A, 0x21, 0x11, + 0x19, 0x11, 0x19, 0x32, 0x19, 0x33, 0x19, 0x53, 0x19, 0x75, 0x11, 0x75, 0x11, 0x96, 0x19, 0xB7, 0x11, 0x97, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x33, 0x04, 0x11, 0x32, 0x84, 0x11, 0x53, 0x11, 0x54, 0x11, 0x74, 0x11, 0x75, 0x11, 0x95, 0x01, 0x11, 0xB6, 0x02, 0x11, 0xB7, 0x81, 0x11, 0xD7, 0x19, 0xF8, 0x02, 0x19, 0xF7, 0x03, 0x11, 0xF7, 0x01, 0x11, 0xD6, 0x86, 0x11, 0xB5, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x8B, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x91, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x11, 0x12, 0x11, 0x32, 0x11, 0x54, 0x11, 0xB6, 0x11, 0xD7, 0x09, + 0xD8, 0x09, 0xF9, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xFA, 0x01, 0xD9, 0x09, 0xF9, 0x01, 0x09, 0xFA, 0x86, 0x12, 0x1A, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x53, 0x19, 0x52, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x91, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x11, 0x53, 0x11, 0x95, 0x19, 0xF6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x11, 0x19, 0x32, 0x01, 0x21, 0x32, 0x90, 0x21, 0x11, 0x18, 0xF0, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x09, 0x54, 0x11, 0xB5, 0x19, 0xF7, 0x22, 0x38, 0x22, 0x17, 0x11, 0x95, 0x11, 0x74, 0x11, 0x12, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x02, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x0D, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x02, 0x19, 0x32, 0x88, 0x11, 0x53, 0x19, 0x94, 0x19, 0xF6, 0x22, 0x17, 0x21, 0xF6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x02, 0x19, 0x11, 0x02, 0x21, 0x31, 0x01, 0x19, 0x12, 0x83, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD7, 0x01, 0x22, 0x18, 0x02, 0x19, 0xF8, 0x81, 0x19, 0xF7, 0x11, 0xD7, 0x01, 0x19, 0xD7, 0x03, 0x11, 0xD7, 0x81, 0x11, + 0xD8, 0x19, 0xD8, 0x02, 0x19, 0xF8, 0x80, 0x11, 0xD8, 0x02, 0x11, 0xF8, 0x82, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x83, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x85, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0xB8, 0x19, 0xD7, 0x19, 0x75, 0x11, 0x33, 0x01, 0x19, 0x32, 0x84, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x0A, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x86, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x20, 0xEF, 0x01, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x0B, 0x29, 0x30, 0x85, 0x29, 0x51, 0x29, 0x50, 0x29, 0x30, 0x31, 0x31, 0x31, 0x51, 0x31, 0x31, 0x03, 0x31, 0x51, 0x81, 0x39, 0x72, 0x39, 0x71, 0x02, 0x39, 0x72, 0x02, 0x39, 0x92, 0x02, 0x41, 0x93, 0x01, 0x49, 0xB3, + 0x81, 0x49, 0xD4, 0x51, 0xD4, 0x01, 0x51, 0xB4, 0x82, 0x51, 0xD4, 0x59, 0xD4, 0x59, 0xB4, 0x01, 0x59, 0xD4, 0x02, 0x61, 0xF4, 0x82, 0x6A, 0x14, 0x69, 0xF4, 0x6A, 0x14, 0x01, 0x72, 0x14, 0x88, 0x72, 0x13, 0x7A, 0x34, 0x72, 0x13, 0x69, 0x91, 0x61, 0x90, 0x7A, 0x32, 0x9B, 0x76, 0x93, 0x55, 0x82, 0xF4, 0x01, 0x7A, 0x92, 0x85, 0xA3, 0x96, 0xBC, 0x59, 0xCC, 0x9A, 0xCC, 0x79, 0xCC, 0x38, 0xD4, 0x58, 0x01, 0xD4, 0x38, 0x01, 0xD4, 0x37, 0x81, 0xD4, 0x17, 0xD4, 0x37, 0x01, 0xCC, 0x37, 0x96, 0xCC, 0x57, 0xC4, 0x57, 0xBC, 0x37, 0xB4, 0x78, 0x93, 0xB5, 0x8B, 0xF6, 0xA5, 0x9B, 0xAE, 0x1D, 0x9D, 0xDB, 0x95, 0xFB, 0x85, 0xFB, 0x86, 0x3C, 0x7E, 0x7D, 0x6E, 0x9D, 0x66, 0xDE, 0x4F, 0x1E, 0x36, 0xFD, 0x2F, 0x5E, 0x1F, 0x9E, 0x17, 0x9E, 0x0F, 0x9E, 0x0F, 0xBF, 0x07, 0xBF, 0x07, 0x07, 0xDF, 0x12, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x97, 0x0F, 0xBF, 0x0F, 0x9F, 0x1F, 0x7E, 0x2F, 0x3E, 0x4E, 0xFE, 0x76, 0xBE, 0x85, 0x19, 0x8B, 0xB4, 0xB3, 0xB6, 0xC3, 0x75, 0xCB, 0x55, 0xD3, 0x55, 0xDB, 0x55, 0xD3, 0x35, 0xD3, 0x55, 0xC3, 0x96, 0x92, 0xF3, 0x84, 0x16, 0x86, 0x7D, 0x57, 0x1E, 0x37, 0x5F, 0x1F, 0x7E, 0x17, 0x9E, 0x0F, 0xBE, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xDE, 0x03, 0x07, 0xFF, 0x81, 0x07, 0xFE, 0x07, 0xDE, 0x08, 0x07, 0xFE, 0x01, 0x07, 0xFD, 0x02, 0x07, 0xDD, 0x01, 0x07, 0xFD, 0x01, 0x07, 0xDD, 0x04, 0x07, 0xFD, 0x01, 0x07, 0xDD, 0x80, 0x07, 0xFD, 0x02, 0x07, 0xDD, 0x01, 0x07, 0xFD, 0x01, 0x07, 0xDD, 0x09, 0x07, + 0xFD, 0x03, 0x07, 0xDD, 0x80, 0x07, 0xBD, 0x01, 0x07, 0xDD, 0x01, 0x07, 0xDC, 0x02, 0x07, 0xBC, 0x92, 0x0F, 0x9C, 0x17, 0x9C, 0x1F, 0x7C, 0x2F, 0x5C, 0x3F, 0x3C, 0x46, 0x9B, 0x4D, 0xD9, 0x6E, 0x3B, 0x7D, 0xDB, 0x85, 0x5B, 0x84, 0xDB, 0x7C, 0x9B, 0x8C, 0xBE, 0x74, 0x1D, 0x2A, 0x18, 0x1A, 0x19, 0x1A, 0x3C, 0x0A, 0x3C, 0x02, 0x1D, 0x01, 0x02, 0x1E, 0x82, 0x02, 0x1F, 0x01, 0xFE, 0x01, 0xFF, 0x02, 0x01, 0xDF, 0x02, 0x01, 0xBF, 0x83, 0x01, 0x9F, 0x01, 0xBF, 0x01, 0xDF, 0x01, 0x9E, 0x01, 0x01, 0xBE, 0x95, 0x09, 0x9D, 0x11, 0x7D, 0x21, 0x7C, 0x39, 0x7B, 0x49, 0x39, 0x92, 0xBD, 0x9A, 0x3A, 0x99, 0xD7, 0xA1, 0xD7, 0xA2, 0x78, 0x9A, 0xD9, 0x62, 0x36, 0x19, 0x53, 0x43, 0xDC, 0x1B, 0xFB, 0x14, 0xDD, 0x0D, 0x9E, 0x16, 0x5F, 0x17, 0x3F, 0x17, 0x9F, 0x0F, 0xBF, 0x0F, 0xDF, 0x01, 0x07, 0xDF, 0x8E, 0x0F, 0xDF, 0x0F, 0xBF, 0x0F, 0x9F, 0x1F, 0x9F, 0x27, 0x5F, 0x3F, 0x1F, 0x56, 0x9E, 0x86, 0x7F, 0x74, 0x38, 0x61, 0xF1, 0x92, 0x12, 0xB2, 0x13, 0xB9, 0x92, 0xC9, 0x93, 0xD1, 0xB3, 0x01, 0xD1, 0x93, 0x82, 0xC9, 0x73, 0xD1, 0x93, 0xC9, 0x93, 0x01, 0xC9, 0xB3, 0x87, 0xC1, 0x93, 0xC1, 0xD3, 0xB9, 0xF4, 0xC2, 0xD7, 0x81, 0x92, 0x58, 0xF0, 0x51, 0x31, 0x49, 0x51, 0x01, 0x41, 0x51, 0x04, 0x39, 0x71, 0x80, 0x31, 0x71, 0x03, 0x31, 0x51, 0x03, 0x29, 0x30, 0x80, 0x29, 0x50, 0x0A, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, + 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x11, 0x03, 0x21, 0x31, 0x02, 0x19, 0x31, 0x80, 0x19, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x86, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x11, 0x33, 0x11, 0x53, 0x19, 0xB5, 0x02, 0x22, 0x17, 0x85, 0x11, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x12, 0x19, 0x31, 0x19, 0x30, 0x04, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x86, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x81, + 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x4F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x32, 0x82, 0x19, 0x53, 0x19, 0x74, 0x19, 0x75, 0x01, 0x11, 0x34, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x85, 0x19, 0x10, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x53, 0x11, 0x95, 0x02, 0x19, 0xF7, 0x81, 0x19, 0xB6, 0x11, 0x54, 0x01, 0x11, 0x33, 0x03, 0x11, 0x32, 0x87, 0x11, 0x53, 0x11, 0x54, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x11, 0xD7, 0x01, 0x11, 0xB7, 0x83, 0x11, 0xB6, 0x19, 0xB7, 0x11, 0xB6, 0x11, 0x96, 0x02, 0x11, 0xB6, 0x01, 0x11, 0xF7, 0x01, 0x19, 0xF7, 0x82, 0x11, 0xD7, 0x11, 0xD6, 0x19, 0xF6, 0x01, 0x11, 0x95, 0x86, 0x11, 0x54, 0x11, 0x32, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x19, 0x10, 0x02, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, + 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x09, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x19, 0x10, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x11, 0xD7, 0x01, 0x09, 0xD8, 0x81, 0x09, 0xFA, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x88, 0x01, 0xFA, 0x09, 0xDA, 0x09, 0xD9, 0x09, 0xF9, 0x11, 0xD8, 0x11, 0xB6, 0x11, 0x74, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x8B, 0x11, 0x12, 0x11, 0x53, 0x19, 0x95, 0x19, 0xF6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x32, 0x10, 0xF2, 0x19, 0x12, 0x21, 0x32, 0x01, 0x21, 0x31, 0x91, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x09, 0x53, 0x11, 0xB6, 0x19, 0xF7, 0x22, 0x17, 0x1A, 0x17, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x07, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, + 0x30, 0x04, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x8C, 0x11, 0x33, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xD6, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x11, 0x10, 0x19, 0x10, 0x01, 0x19, 0x31, 0x8A, 0x21, 0x31, 0x19, 0x32, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0x96, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF8, 0x19, 0xF7, 0x19, 0xB6, 0x01, 0x11, 0x75, 0x83, 0x09, 0x54, 0x11, 0x74, 0x11, 0x54, 0x11, 0x74, 0x03, 0x11, 0x75, 0x81, 0x11, 0x95, 0x11, 0x75, 0x02, 0x11, 0x76, 0x02, 0x11, 0x96, 0x02, 0x11, 0xB7, 0x83, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xF9, 0x03, 0x01, 0xDA, 0x87, 0x01, 0xBA, 0x09, 0xD9, 0x09, 0xB9, 0x09, 0xB8, 0x11, 0xB7, 0x19, 0xB6, 0x11, 0x33, 0x19, 0x33, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x21, 0x10, 0x04, 0x21, + 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x29, 0x30, 0x85, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x04, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x01, 0x29, 0x50, 0x06, 0x31, 0x51, 0x81, 0x39, 0x71, 0x31, 0x51, 0x04, 0x39, 0x72, 0x80, 0x41, 0x92, 0x01, 0x39, 0x92, 0x87, 0x39, 0x93, 0x41, 0x93, 0x41, 0xB3, 0x41, 0x93, 0x49, 0xB3, 0x49, 0xB4, 0x49, 0xB3, 0x49, 0xB4, 0x01, 0x51, 0xD4, 0x01, 0x51, 0xB4, 0x02, 0x59, 0xD4, 0x01, 0x61, 0xF4, 0x82, 0x69, 0xF4, 0x6A, 0x34, 0x6A, 0x14, 0x01, 0x72, 0x14, 0x92, 0x72, 0x13, 0x69, 0xD2, 0x61, 0x91, 0x72, 0x33, 0x9B, 0x97, 0xAC, 0x18, 0xA4, 0x18, 0xAC, 0x79, 0x8B, 0xD7, 0x73, 0x14, 0x72, 0xF4, 0x62, 0x72, 0x62, 0x10, 0x8B, 0x14, 0xB4, 0x18, 0xCC, 0x99, 0xC4, 0x38, 0xCC, 0x38, 0xD4, 0x58, 0x01, 0xD4, 0x38, 0x03, 0xD4, 0x37, 0x92, 0xD4, 0x38, 0xCC, 0x17, 0xCC, 0x37, 0xC4, 0x38, 0xB4, 0x17, 0xA3, 0xF7, 0x83, 0x94, 0x94, 0xB8, 0xAD, 0xFD, 0x9E, 0x1C, 0x8E, 0x1C, 0x7E, 0x3C, 0x6E, 0x5C, 0x5E, 0x9D, 0x4E, 0xDD, 0x3E, 0xFD, 0x2F, 0x5E, 0x27, 0x7E, 0x17, 0x9E, 0x02, 0x0F, 0xBF, 0x07, 0x07, 0xDF, 0x12, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x97, 0x0F, 0xBF, 0x17, 0xBF, 0x1F, 0x7E, 0x37, 0x3E, 0x4E, 0xDD, 0x76, 0x7D, 0x84, 0xD8, 0x93, 0xB5, 0xB3, 0xB6, 0xC3, 0x55, 0xCB, 0x55, 0xD3, 0x55, 0xDB, 0x55, 0xD3, 0x35, 0xD3, 0x75, 0xC3, 0x96, 0x9B, + 0x13, 0x84, 0x16, 0x7E, 0x5D, 0x56, 0xFE, 0x37, 0x5F, 0x1F, 0x9F, 0x17, 0x9E, 0x0F, 0xBF, 0x03, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x08, 0x07, 0xFF, 0x07, 0x07, 0xFE, 0x81, 0x07, 0xDD, 0x07, 0xFE, 0x01, 0x07, 0xFD, 0x81, 0x07, 0xDD, 0x07, 0xFD, 0x01, 0x07, 0xDD, 0x02, 0x07, 0xFD, 0x02, 0x07, 0xDD, 0x82, 0x07, 0xFD, 0x07, 0xFE, 0x07, 0xDD, 0x03, 0x07, 0xFE, 0x81, 0x07, 0xFD, 0x07, 0xFE, 0x02, 0x07, 0xFD, 0x80, 0x07, 0xFE, 0x01, 0x07, 0xFD, 0x80, 0x07, 0xFE, 0x01, 0x07, 0xFD, 0x85, 0x07, 0xFE, 0x07, 0xDE, 0x07, 0xDD, 0x07, 0xDE, 0x07, 0xDD, 0x07, 0xBD, 0x03, 0x07, 0xDD, 0x01, 0x07, 0xBD, 0x96, 0x07, 0xBC, 0x0F, 0x9C, 0x17, 0x7C, 0x1F, 0x5C, 0x2F, 0x3C, 0x47, 0x3D, 0x4E, 0x7A, 0x55, 0xF9, 0x76, 0x1B, 0x7D, 0xBB, 0x85, 0x3B, 0x84, 0xBA, 0x8C, 0x9C, 0x8C, 0xBE, 0x73, 0xFD, 0x21, 0xF7, 0x22, 0x1A, 0x12, 0x1B, 0x0A, 0x1C, 0x01, 0xFD, 0x02, 0x1E, 0x01, 0xFE, 0x02, 0x1F, 0x01, 0x01, 0xFF, 0x03, 0x01, 0xDF, 0x03, 0x01, 0xBF, 0x80, 0x01, 0xBE, 0x01, 0x01, 0x9E, 0x95, 0x01, 0x7D, 0x11, 0x9D, 0x19, 0x7C, 0x31, 0x7B, 0x38, 0xD8, 0x92, 0x9D, 0xA2, 0x5A, 0xA1, 0xF8, 0xA1, 0xB6, 0xA2, 0x57, 0x9A, 0xB8, 0x7A, 0x98, 0x29, 0x33, 0x3B, 0x1A, 0x23, 0xBB, 0x14, 0x9C, 0x15, 0x5D, 0x0E, 0x1E, 0x16, 0xFF, 0x17, 0x7F, 0x0F, 0xBF, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x90, 0x0F, 0xDF, 0x07, 0xBF, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x7F, 0x2F, 0x1E, 0x46, 0xBE, 0x76, 0xBF, 0x8D, 0xBD, 0x5A, 0x72, 0x92, 0x53, 0xB2, 0x13, 0xB9, 0xB3, 0xC9, 0xB3, + 0xC9, 0x93, 0xD1, 0x93, 0xC9, 0x73, 0x01, 0xD1, 0x93, 0x01, 0xD1, 0xB3, 0x88, 0xC9, 0x93, 0xC9, 0xB3, 0xC1, 0xD3, 0xB9, 0xD3, 0xBA, 0x55, 0xA2, 0x56, 0x58, 0xAF, 0x61, 0x72, 0x49, 0x31, 0x01, 0x41, 0x51, 0x82, 0x41, 0x72, 0x39, 0x71, 0x39, 0x72, 0x01, 0x39, 0x71, 0x04, 0x31, 0x51, 0x83, 0x31, 0x50, 0x29, 0x50, 0x29, 0x30, 0x29, 0x50, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x03, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x03, 0x21, 0x31, 0x80, 0x19, 0x31, 0x03, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x8F, 0x21, 0x31, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB5, 0x19, 0xF7, 0x22, 0x37, 0x22, 0x17, 0x19, 0x95, 0x11, 0x54, 0x11, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x09, 0x29, 0x0F, 0x80, 0x29, 0x10, + 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x50, 0x02, 0x21, 0x30, 0x81, 0x21, 0x11, 0x19, 0x11, 0x02, 0x19, 0x32, 0x80, 0x11, 0x32, 0x01, 0x11, 0x33, 0x07, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, + 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x88, 0x11, 0x12, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x75, 0x01, 0x11, 0x53, 0x03, 0x11, 0x32, 0x01, 0x11, 0x53, 0x83, 0x11, 0x74, 0x11, 0x95, 0x11, 0x96, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x01, 0x11, 0xB6, 0x80, 0x11, 0x95, 0x04, 0x11, 0x54, 0x80, 0x11, 0x53, 0x02, 0x09, 0x54, 0x8A, 0x11, 0x95, 0x11, 0xD6, 0x19, 0xF7, 0x1A, 0x17, 0x19, 0xF7, 0x1A, 0x17, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x09, 0x12, 0x11, 0x12, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8A, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x10, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x12, 0x11, 0x54, 0x11, 0xD7, 0x09, 0xF8, 0x01, 0x09, 0xF9, 0x01, 0x01, 0xB9, 0x04, 0x01, 0xBA, 0x87, 0x09, 0xDA, 0x09, 0xF9, 0x09, 0xD9, 0x19, 0xF8, 0x11, 0x95, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x02, + 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x90, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x53, 0x11, 0x94, 0x19, 0xD6, 0x2A, 0x38, 0x22, 0x17, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x52, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x32, 0x11, 0x33, 0x09, 0x53, 0x11, 0x95, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xF6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x31, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x11, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x33, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x04, 0x19, 0x31, 0x01, 0x19, 0x11, 0x83, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x02, 0x21, 0xF7, 0x82, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x01, 0x11, 0x12, 0x05, 0x11, 0x32, 0x01, 0x11, 0x53, 0x81, 0x09, 0x12, 0x11, 0x32, 0x01, 0x11, 0x33, 0x01, 0x11, 0x53, 0x02, 0x09, 0x33, 0x8B, 0x09, 0x54, 0x09, 0x55, 0x09, 0x96, 0x09, 0xB7, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xF9, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xD9, 0x09, 0xD9, 0x01, + 0x11, 0xF9, 0x82, 0x19, 0xF8, 0x11, 0x55, 0x11, 0x33, 0x01, 0x19, 0x32, 0x83, 0x19, 0x31, 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x20, 0xEF, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x04, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x87, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x08, 0x29, 0x30, 0x05, 0x29, 0x50, 0x01, 0x31, 0x51, 0x80, 0x31, 0x31, 0x04, 0x31, 0x51, 0x01, 0x39, 0x51, 0x05, 0x39, 0x72, 0x01, 0x41, 0x92, 0x02, 0x41, 0x93, 0x81, 0x49, 0xB3, 0x49, 0xD4, 0x01, 0x49, 0xB4, 0x80, 0x51, 0xB4, 0x01, 0x51, 0xD4, 0x02, 0x59, 0xD4, 0x9B, 0x59, 0xF4, 0x61, 0xF4, 0x59, 0xB3, 0x61, 0xD4, 0x61, 0xD3, 0x61, 0xF3, 0x69, 0xF4, 0x69, 0xF3, 0x69, 0xD2, 0x69, 0xB2, 0x7A, 0x12, 0xA3, 0x77, + 0xBC, 0x7A, 0xB4, 0x79, 0xAC, 0x79, 0xAC, 0xFA, 0xA4, 0xFA, 0x63, 0x54, 0x4A, 0x91, 0x5A, 0xF3, 0x63, 0x14, 0x62, 0xF4, 0x5A, 0x51, 0x51, 0xD0, 0x72, 0x93, 0xAB, 0xF8, 0xCC, 0x9A, 0xCC, 0x38, 0x01, 0xD4, 0x38, 0x01, 0xD4, 0x18, 0x80, 0xD4, 0x17, 0x01, 0xD4, 0x18, 0x91, 0xD3, 0xF7, 0xD4, 0x17, 0xCC, 0x17, 0xCC, 0x18, 0xC4, 0x38, 0xBC, 0x58, 0x8B, 0x74, 0x83, 0xF5, 0x9D, 0x9B, 0x96, 0x1C, 0x86, 0x3C, 0x76, 0x7D, 0x5E, 0xBD, 0x4E, 0xFD, 0x37, 0x1E, 0x2F, 0x5E, 0x1F, 0x7E, 0x17, 0x9E, 0x01, 0x0F, 0xBF, 0x08, 0x07, 0xDF, 0x11, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x8B, 0x07, 0xBF, 0x0F, 0xBF, 0x17, 0x7E, 0x27, 0x5F, 0x3F, 0x3E, 0x56, 0xBD, 0x76, 0x3C, 0x7C, 0x57, 0x9B, 0xB5, 0xBB, 0xB6, 0xCB, 0x76, 0xD3, 0x55, 0x02, 0xDB, 0x35, 0x89, 0xD3, 0x75, 0xC3, 0x75, 0x92, 0xF3, 0x84, 0x37, 0x7E, 0x5D, 0x56, 0xFE, 0x37, 0x5F, 0x1F, 0x7F, 0x0F, 0x9E, 0x07, 0xBF, 0x03, 0x07, 0xDF, 0x0E, 0x07, 0xFF, 0x02, 0x07, 0xDE, 0x01, 0x07, 0xFE, 0x02, 0x07, 0xDE, 0x0A, 0x07, 0xFE, 0x80, 0x07, 0xDE, 0x10, 0x07, 0xFE, 0x08, 0x07, 0xDE, 0x01, 0x07, 0xDD, 0x02, 0x07, 0xBD, 0x91, 0x0F, 0x9D, 0x17, 0x7D, 0x1F, 0x5D, 0x2F, 0x3C, 0x47, 0x1C, 0x4E, 0x9B, 0x5E, 0x3B, 0x75, 0xFB, 0x7D, 0x7B, 0x85, 0x1B, 0x8C, 0xBB, 0x84, 0x7B, 0x94, 0xFF, 0x73, 0xFD, 0x29, 0xF7, 0x22, 0x1A, 0x12, 0x1B, 0x0A, 0x1C, 0x01, 0x02, 0x1E, 0x01, 0x01, 0xFE, 0x80, 0x01, 0xFF, 0x03, 0x01, 0xDF, 0x05, 0x01, 0xBF, 0x96, 0x01, 0x9E, 0x01, 0x7D, 0x09, 0x7D, 0x19, 0x7C, 0x29, 0x5B, 0x30, 0xB8, + 0x82, 0x3C, 0xAA, 0x9C, 0xAA, 0x39, 0xA1, 0xB6, 0xA2, 0x17, 0xA2, 0x98, 0x92, 0xD9, 0x41, 0x54, 0x32, 0x78, 0x23, 0x7A, 0x1C, 0x7C, 0x0D, 0x1D, 0x0D, 0xFE, 0x0E, 0x9E, 0x17, 0x7F, 0x17, 0xDF, 0x0F, 0xDF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x01, 0x0F, 0xBF, 0x88, 0x17, 0x9F, 0x27, 0x5F, 0x36, 0xFE, 0x5E, 0xDF, 0x86, 0x5F, 0x5B, 0x34, 0x8A, 0x73, 0xAA, 0x13, 0xB9, 0xF3, 0x01, 0xC9, 0xD3, 0x83, 0xC9, 0xB3, 0xC9, 0x93, 0xD1, 0x93, 0xC9, 0x73, 0x01, 0xD1, 0xB3, 0x01, 0xC9, 0xB3, 0x87, 0xC1, 0xD3, 0xB9, 0xD3, 0xB2, 0x14, 0xB2, 0x96, 0x69, 0x10, 0x61, 0x51, 0x51, 0x51, 0x49, 0x51, 0x01, 0x41, 0x71, 0x02, 0x39, 0x72, 0x81, 0x31, 0x51, 0x39, 0x51, 0x03, 0x31, 0x51, 0x80, 0x31, 0x50, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x0E, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x06, 0x21, 0x31, 0x83, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x19, 0x30, 0x04, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x92, 0x21, 0x31, 0x21, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB5, 0x22, 0x17, 0x22, 0x37, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, + 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x86, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x29, + 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x50, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x31, 0x02, 0x19, 0x31, 0x01, 0x19, 0x32, 0x81, 0x11, 0x12, 0x21, 0x50, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x19, 0x31, 0x01, 0x11, 0x32, 0x89, 0x11, 0x53, 0x19, 0x95, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x11, 0x53, 0x02, 0x11, 0x32, 0x81, 0x11, 0x53, 0x11, 0x54, 0x01, 0x11, 0x95, 0x8D, 0x11, 0xB6, 0x11, 0xD6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x95, 0x11, 0x75, 0x11, 0x54, 0x11, 0x53, 0x11, 0x33, 0x11, 0x53, 0x11, 0x33, 0x11, 0x53, 0x11, 0x32, 0x02, 0x11, 0x53, 0x01, 0x09, 0x54, 0x81, 0x11, 0x95, 0x11, 0xB6, 0x02, 0x19, 0xF7, 0x85, 0x19, 0xD6, 0x11, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x87, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, + 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x8B, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x21, 0x31, 0x19, 0x32, 0x10, 0xF2, 0x11, 0x33, 0x11, 0xB6, 0x11, 0xF8, 0x01, 0xD8, 0x09, 0xF9, 0x01, 0xB9, 0x05, 0x01, 0xBA, 0x87, 0x01, 0xDA, 0x01, 0xB9, 0x09, 0xF9, 0x11, 0xF8, 0x11, 0x96, 0x11, 0x12, 0x19, 0x31, 0x21, 0x11, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x84, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x02, 0x21, 0x31, 0x8D, 0x19, 0x11, 0x19, 0x31, 0x19, 0x52, 0x11, 0x12, 0x11, 0x32, 0x11, 0x54, 0x11, 0x95, 0x22, 0x17, 0x22, 0x37, 0x21, 0xF6, 0x11, 0x94, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x11, 0x08, 0x21, 0x10, 0x09, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x31, 0x01, 0x21, 0x11, 0x85, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x86, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x11, 0x04, 0x19, 0x31, 0x89, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x95, + 0x11, 0x54, 0x11, 0x12, 0x01, 0x11, 0x11, 0x80, 0x19, 0x11, 0x01, 0x11, 0x11, 0x04, 0x19, 0x31, 0x81, 0x11, 0x11, 0x19, 0x31, 0x01, 0x19, 0x11, 0x82, 0x19, 0x32, 0x11, 0x32, 0x11, 0x11, 0x01, 0x11, 0x32, 0x01, 0x11, 0x53, 0x84, 0x11, 0x74, 0x09, 0x75, 0x11, 0xB6, 0x09, 0xD7, 0x09, 0xF8, 0x01, 0x09, 0xF9, 0x03, 0x09, 0xD9, 0x86, 0x11, 0xF9, 0x22, 0x39, 0x21, 0xF8, 0x11, 0x54, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x05, 0x21, 0x30, 0x05, 0x29, 0x30, 0x05, 0x29, 0x50, 0x80, 0x29, 0x30, 0x04, 0x31, 0x51, 0x81, 0x39, 0x51, 0x31, 0x51, 0x01, 0x39, 0x71, 0x01, 0x39, 0x72, 0x81, 0x41, 0x72, 0x39, 0x72, 0x02, 0x41, 0x92, + 0x01, 0x41, 0x93, 0x80, 0x41, 0xB3, 0x01, 0x49, 0xB3, 0x81, 0x49, 0xB4, 0x49, 0xD4, 0x01, 0x51, 0xB4, 0x81, 0x59, 0xD4, 0x51, 0xD4, 0x03, 0x59, 0xD4, 0x81, 0x61, 0xF4, 0x59, 0xD3, 0x01, 0x61, 0xD3, 0x9A, 0x69, 0xF3, 0x72, 0x13, 0x61, 0x91, 0x71, 0xD2, 0x9B, 0x57, 0xBC, 0x5B, 0xBC, 0x9A, 0xAC, 0x58, 0xAC, 0xB9, 0xB5, 0x5B, 0x9C, 0xD9, 0x6B, 0xF5, 0x5B, 0xB4, 0x53, 0x94, 0x53, 0x74, 0x4B, 0x34, 0x53, 0x13, 0x5B, 0x14, 0x5A, 0xB3, 0x52, 0x11, 0x51, 0x8F, 0x7A, 0x92, 0xB3, 0xF8, 0xD4, 0x9A, 0xCC, 0x39, 0xD4, 0x38, 0xD4, 0x39, 0x02, 0xD4, 0x18, 0x80, 0xD3, 0xF8, 0x01, 0xD4, 0x18, 0x8E, 0xD3, 0xF7, 0xCB, 0xF8, 0xCC, 0x38, 0xC4, 0x79, 0x9B, 0xF6, 0x83, 0xD5, 0xA5, 0xBC, 0x8E, 0x1D, 0x7E, 0x5D, 0x66, 0x9D, 0x4E, 0xBD, 0x3F, 0x1E, 0x2F, 0x3E, 0x1F, 0x7E, 0x17, 0xBF, 0x01, 0x0F, 0xBF, 0x80, 0x07, 0xBF, 0x07, 0x07, 0xDF, 0x10, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x98, 0x07, 0xBF, 0x0F, 0x9F, 0x1F, 0x7F, 0x2F, 0x5F, 0x3F, 0x1E, 0x5E, 0xBE, 0x7D, 0xFC, 0x7C, 0x16, 0xA3, 0xD6, 0xBB, 0x96, 0xCB, 0x55, 0xD3, 0x35, 0xDB, 0x55, 0xDB, 0x35, 0xDB, 0x55, 0xD3, 0x55, 0xCB, 0x96, 0x92, 0xF3, 0x84, 0x16, 0x7E, 0x5D, 0x57, 0x1E, 0x37, 0x5F, 0x1F, 0x7F, 0x0F, 0x9F, 0x0F, 0xBF, 0x03, 0x07, 0xDF, 0x10, 0x07, 0xFF, 0x80, 0x07, 0xDE, 0x03, 0x07, 0xFE, 0x01, 0x07, 0xDE, 0x01, 0x07, 0xFE, 0x80, 0x07, 0xDE, 0x19, 0x07, 0xFE, 0x09, 0x07, 0xDE, 0x80, 0x07, 0xDD, 0x01, 0x07, 0xBD, 0x01, 0x0F, 0x9D, 0x96, 0x17, 0x7D, 0x27, 0x5D, 0x37, 0x3D, 0x47, 0x1D, 0x56, + 0x7B, 0x6E, 0x5C, 0x75, 0xDB, 0x7D, 0x5A, 0x8D, 0x3B, 0x8C, 0xBB, 0x94, 0x9C, 0x9D, 0x1F, 0x6B, 0xBD, 0x29, 0xD7, 0x1A, 0x1A, 0x12, 0x1C, 0x01, 0xFC, 0x01, 0xFD, 0x01, 0xFE, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xFF, 0x01, 0xDF, 0x04, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x97, 0x01, 0xBF, 0x01, 0x9E, 0x09, 0xBE, 0x09, 0x9D, 0x11, 0x5C, 0x29, 0xBD, 0x30, 0xD9, 0x69, 0xBB, 0xAA, 0xBC, 0xB2, 0x59, 0xA1, 0xB6, 0xA9, 0xF6, 0xA2, 0x37, 0xA2, 0xFA, 0x59, 0xB5, 0x29, 0xB5, 0x33, 0x7A, 0x1C, 0x5C, 0x15, 0x1D, 0x0D, 0xDE, 0x0E, 0x9F, 0x17, 0x5F, 0x17, 0xBF, 0x0F, 0xDF, 0x01, 0x07, 0xDF, 0x8F, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xBF, 0x0F, 0xBF, 0x17, 0x9F, 0x1F, 0x7F, 0x2F, 0x3F, 0x4E, 0xDF, 0x76, 0xBF, 0x74, 0x99, 0x7A, 0x73, 0xA2, 0x33, 0xB1, 0xF3, 0xC1, 0xD3, 0xC9, 0xB3, 0xC9, 0x93, 0x02, 0xD1, 0x93, 0x02, 0xD1, 0xB3, 0x01, 0xC9, 0xB3, 0x88, 0xC1, 0xD4, 0xB1, 0xF4, 0xB2, 0x76, 0x89, 0xB2, 0x61, 0x10, 0x59, 0x51, 0x49, 0x51, 0x41, 0x51, 0x41, 0x72, 0x02, 0x39, 0x72, 0x81, 0x39, 0x71, 0x39, 0x51, 0x02, 0x31, 0x51, 0x84, 0x31, 0x30, 0x31, 0x51, 0x31, 0x50, 0x29, 0x30, 0x31, 0x50, 0x06, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x11, 0x02, 0x21, 0x31, 0x80, + 0x19, 0x31, 0x04, 0x19, 0x32, 0x02, 0x19, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x19, 0x32, 0x8B, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x19, 0xF7, 0x22, 0x17, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x11, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, + 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x09, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x19, 0x10, 0x19, 0x30, 0x02, 0x19, 0x31, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x01, 0x11, 0x53, 0x86, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x96, 0x11, 0x75, 0x11, 0x54, 0x01, 0x11, 0x33, 0x03, 0x11, 0x32, 0x80, 0x11, 0x94, 0x01, 0x11, 0xB5, 0x84, 0x11, 0xB6, 0x11, 0xD6, 0x19, 0xD7, 0x11, 0xB6, 0x11, 0x95, 0x02, 0x11, 0x54, 0x80, 0x11, 0x53, 0x01, 0x19, 0x53, 0x01, 0x19, 0x52, 0x85, 0x19, 0x53, 0x19, 0x52, 0x19, 0x53, 0x11, 0x53, 0x11, 0x32, 0x11, 0x33, 0x01, 0x11, 0x54, 0x8A, 0x11, 0x75, 0x11, 0x95, 0x11, 0xD6, 0x19, 0xD7, 0x11, 0xB6, 0x19, 0xD7, 0x21, 0xF7, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, + 0x31, 0x80, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x51, 0x21, 0x32, 0x10, 0xF1, 0x09, 0x12, 0x11, 0xB6, 0x12, 0x18, 0x09, 0xF8, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xBA, 0x01, 0xFA, 0x02, 0x1B, 0x01, 0xFB, 0x01, 0xFA, 0x01, 0x01, 0xBA, 0x86, 0x01, 0xB9, 0x09, 0xF9, 0x12, 0x19, 0x19, 0xD7, 0x08, 0xF2, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8A, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x21, 0xD6, 0x21, 0xF7, 0x21, 0xD6, 0x21, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x10, 0xF1, 0x19, 0x11, 0x02, 0x19, 0x31, 0x8A, 0x21, 0x52, 0x19, 0x52, 0x11, 0x31, 0x11, 0x12, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xF6, 0x11, 0x95, 0x01, 0x11, 0x53, 0x02, 0x19, 0x32, 0x0D, 0x21, 0x31, 0x01, + 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x19, 0x10, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x0B, 0x21, 0x31, 0x82, 0x19, 0x11, 0x21, 0x31, 0x21, 0x32, 0x01, 0x19, 0x32, 0x8B, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x21, 0xD6, 0x21, 0xF7, 0x19, 0xD6, 0x21, 0xD7, 0x19, 0x75, 0x11, 0x53, 0x11, 0x32, 0x11, 0x12, 0x19, 0x32, 0x03, 0x19, 0x31, 0x95, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x30, 0x21, 0x31, 0x19, 0x30, 0x19, 0x31, 0x21, 0x31, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x19, 0x31, 0x19, 0x11, 0x02, 0x19, 0x31, 0x86, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x75, 0x09, 0x96, 0x11, 0xD7, 0x11, 0xD8, 0x01, 0x09, 0xD8, 0x88, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xB8, 0x11, 0xD7, 0x22, 0x18, 0x19, 0x96, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, + 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x29, 0x10, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x29, 0x30, 0x01, 0x29, 0x50, 0x80, 0x29, 0x30, 0x02, 0x29, 0x50, 0x80, 0x31, 0x30, 0x01, 0x31, 0x51, 0x80, 0x31, 0x31, 0x01, 0x31, 0x51, 0x01, 0x39, 0x71, 0x01, 0x39, 0x51, 0x01, 0x39, 0x72, 0x84, 0x41, 0x72, 0x39, 0x72, 0x39, 0x92, 0x41, 0x92, 0x39, 0x92, 0x01, 0x41, 0x93, 0x81, 0x41, 0xB3, 0x49, 0xB3, 0x02, 0x49, 0xB4, 0x01, 0x51, 0xB4, 0x82, 0x51, 0xB3, 0x51, 0xB4, 0x59, 0xD4, 0x01, 0x59, 0xB3, 0x02, 0x61, 0xD3, 0x9C, 0x69, 0xF3, 0x72, 0x13, 0x69, 0xB1, 0x8A, 0xD5, 0xC4, 0x9B, 0xC4, 0xBB, 0xB4, 0x39, 0xA4, 0x17, 0xAC, 0xF9, 0xAD, 0x3A, 0x94, 0xF9, 0x6C, 0x15, 0x74, 0xB7, 0x64, 0x77, 0x54, 0x36, 0x4B, 0xD5, 0x4B, 0x74, 0x4B, 0x54, 0x53, 0x34, 0x5B, 0x14, 0x5A, 0xD3, 0x5A, 0x92, 0x51, 0xD0, 0x49, 0x2E, 0x72, 0x32, 0xB3, 0xB8, 0xCC, 0x5A, 0xCC, 0x39, 0xCC, 0x18, 0x01, 0xD4, 0x18, 0x80, 0xD3, 0xF8, 0x01, 0xD3, 0xD7, 0x8E, 0xDC, 0x18, 0xD3, 0xF8, 0xCB, 0xF7, 0xCC, + 0x18, 0xBC, 0x38, 0xA4, 0x17, 0x73, 0x33, 0x95, 0x5B, 0x8E, 0x1D, 0x6E, 0x5D, 0x56, 0xBD, 0x46, 0xFE, 0x2F, 0x3E, 0x27, 0x5E, 0x17, 0x7E, 0x01, 0x0F, 0xBF, 0x07, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x0F, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x8B, 0x07, 0xBF, 0x0F, 0xBF, 0x17, 0x9F, 0x27, 0x7F, 0x2F, 0x3E, 0x46, 0xFE, 0x66, 0x9D, 0x7D, 0xDB, 0x84, 0x16, 0xAB, 0xB6, 0xC3, 0xB6, 0xCB, 0x35, 0x01, 0xDB, 0x56, 0x8B, 0xDB, 0x36, 0xDB, 0x55, 0xD3, 0x35, 0xBB, 0x55, 0x8A, 0xF2, 0x84, 0x77, 0x7E, 0x9D, 0x4E, 0xFD, 0x37, 0x5F, 0x1F, 0x7F, 0x0F, 0x9E, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x11, 0x07, 0xFF, 0x83, 0x07, 0xFE, 0x07, 0xFF, 0x07, 0xFE, 0x07, 0xFF, 0x01, 0x07, 0xDE, 0x82, 0x07, 0xFF, 0x07, 0xFE, 0x07, 0xFF, 0x03, 0x07, 0xFE, 0x01, 0x07, 0xFF, 0x10, 0x07, 0xFE, 0x80, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x81, 0x07, 0xDE, 0x07, 0xDF, 0x02, 0x07, 0xDE, 0x80, 0x07, 0xFE, 0x02, 0x07, 0xDE, 0x95, 0x07, 0xBE, 0x07, 0x9D, 0x0F, 0x9E, 0x17, 0x7E, 0x27, 0x7E, 0x37, 0x5D, 0x3E, 0xBC, 0x56, 0x7C, 0x76, 0x5C, 0x7D, 0xDB, 0x85, 0x5B, 0x8C, 0xFB, 0x8C, 0x9B, 0x94, 0x7C, 0xA5, 0x1F, 0x5A, 0xFA, 0x21, 0xF8, 0x19, 0xFA, 0x09, 0xFB, 0x01, 0xFD, 0x01, 0xBD, 0x01, 0xDE, 0x02, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x83, 0x01, 0xDF, 0x01, 0x9F, 0x01, 0xBF, 0x01, 0x9F, 0x01, 0x01, 0xBF, 0x01, 0x01, 0x9E, 0x86, 0x09, 0x9E, 0x11, 0x7D, 0x21, 0x7C, 0x28, 0xB9, 0x51, 0x39, 0xAA, 0x9C, 0xB2, 0x5A, 0x01, 0xA1, 0xB6, 0x8B, 0xA2, + 0x16, 0xA2, 0xB9, 0x72, 0x37, 0x31, 0x73, 0x2A, 0xF8, 0x2C, 0x7C, 0x14, 0xFD, 0x15, 0xDE, 0x0E, 0x7F, 0x17, 0x5F, 0x17, 0xBF, 0x0F, 0xBF, 0x02, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x8A, 0x0F, 0xBF, 0x1F, 0x9F, 0x27, 0x5F, 0x3E, 0xFE, 0x66, 0xBF, 0x85, 0xDD, 0x6A, 0xB3, 0x92, 0x33, 0xAA, 0x13, 0xB9, 0xD3, 0xC1, 0x92, 0x01, 0xC9, 0xB3, 0x03, 0xD1, 0x93, 0x80, 0xC9, 0x93, 0x01, 0xC9, 0xB3, 0x87, 0xC1, 0xB3, 0xB9, 0xD4, 0xBA, 0x55, 0xA2, 0x55, 0x58, 0xAF, 0x59, 0x11, 0x49, 0x31, 0x41, 0x51, 0x01, 0x41, 0x72, 0x01, 0x39, 0x72, 0x01, 0x39, 0x51, 0x04, 0x31, 0x51, 0x82, 0x31, 0x30, 0x29, 0x30, 0x31, 0x50, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x84, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x01, 0x19, 0x33, 0x01, 0x11, 0x33, 0x80, 0x19, 0x33, 0x01, 0x19, 0x32, 0x83, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8C, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x11, + 0x74, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x11, 0x21, 0x31, 0x05, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, + 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x50, 0x19, 0x30, 0x01, 0x21, 0x51, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x01, 0x11, 0x53, 0x84, 0x19, 0xB5, 0x19, 0xF6, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x01, 0x11, 0x54, 0x81, 0x11, 0x33, 0x19, 0x53, 0x03, 0x11, 0x32, 0x88, 0x11, 0x73, 0x11, 0x95, 0x11, 0xB5, 0x11, 0xD6, 0x19, 0xF7, 0x11, 0xD6, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x54, 0x01, 0x11, 0x53, 0x83, 0x11, 0x33, 0x19, 0x53, 0x19, 0x52, 0x19, 0x32, 0x02, 0x19, 0x52, 0x84, 0x19, 0x32, 0x19, 0x52, 0x19, 0x73, 0x19, 0x52, 0x11, 0x53, 0x01, 0x11, 0x33, 0x83, 0x11, 0x53, 0x11, 0x74, 0x11, 0x75, 0x11, 0xB6, 0x01, 0x19, 0xD7, 0x84, 0x22, 0x18, 0x22, 0x17, 0x11, 0x53, 0x11, 0x32, 0x11, 0x12, 0x02, 0x19, 0x31, 0x82, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x88, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x85, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, + 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x11, 0x11, 0x12, 0x11, 0xB5, 0x11, 0xF8, 0x09, 0xF8, 0x0A, 0x1A, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xFA, 0x0A, 0x1B, 0x02, 0x1B, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x8E, 0x01, 0xB9, 0x09, 0xF9, 0x1A, 0x19, 0x19, 0xB6, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x8F, 0x21, 0x31, 0x19, 0x51, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x75, 0x21, 0xD6, 0x21, 0xF7, 0x21, 0xD7, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x52, 0x21, 0x51, 0x01, 0x19, 0x51, 0x8A, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xF6, 0x11, 0xB5, 0x11, 0x53, 0x01, 0x11, 0x33, 0x02, 0x19, 0x32, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x16, 0x19, 0x31, 0x01, 0x19, 0x32, 0x03, 0x19, 0x31, 0x02, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x12, 0x01, 0x11, 0x33, 0x81, 0x11, 0x54, 0x19, 0xB6, 0x02, 0x21, 0xF7, 0x82, 0x11, 0x75, 0x11, 0x54, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x32, 0x8D, 0x11, 0x32, 0x09, 0x13, 0x11, 0x54, 0x19, 0xD6, 0x22, + 0x17, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x05, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x21, 0x10, 0x83, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x51, 0x93, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x75, 0x11, 0x95, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x04, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x85, 0x21, + 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x04, 0x29, 0x30, 0x04, 0x29, 0x50, 0x81, 0x31, 0x50, 0x31, 0x30, 0x04, 0x31, 0x51, 0x82, 0x39, 0x51, 0x31, 0x51, 0x39, 0x51, 0x04, 0x39, 0x72, 0x01, 0x39, 0x92, 0x02, 0x41, 0x93, 0x81, 0x49, 0xB3, 0x49, 0x93, 0x01, 0x49, 0xB3, 0x01, 0x51, 0xB4, 0x81, 0x51, 0x93, 0x51, 0xB3, 0x02, 0x59, 0xB3, 0x02, 0x61, 0xD3, 0x8C, 0x69, 0xF3, 0x69, 0xB1, 0x82, 0x74, 0xB4, 0x19, 0xC4, 0x9B, 0xBC, 0x79, 0xAC, 0x38, 0xAC, 0x78, 0xAC, 0xFA, 0xA5, 0x5A, 0x84, 0xB7, 0x6C, 0x76, 0x64, 0x76, 0x01, 0x54, 0x76, 0x91, 0x4C, 0x56, 0x4C, 0x35, 0x4B, 0xF5, 0x43, 0x94, 0x4B, 0x53, 0x53, 0x54, 0x53, 0x14, 0x5A, 0xD3, 0x5A, 0x72, 0x5A, 0x32, 0x59, 0xF1, 0x61, 0xB0, 0x7A, 0x32, 0xAB, 0x97, 0xCC, 0x5A, 0xC4, 0x18, 0xCC, 0x19, 0xD4, 0x19, 0x03, 0xD3, 0xF8, 0x8E, 0xD4, 0x18, 0xD4, 0x17, 0xCC, 0x17, 0xBC, 0x38, 0xA3, 0xF7, 0x6B, 0x13, 0x95, 0x5B, 0x86, 0x3D, 0x66, 0x5D, 0x4E, 0xBD, 0x3F, 0x1E, 0x2F, 0x3E, 0x1F, 0x7E, 0x17, 0x9F, 0x0F, 0xBF, 0x04, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x0A, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x98, 0x0F, 0xBF, 0x1F, 0x9F, 0x27, 0x5E, 0x37, 0x3E, 0x4E, 0xDE, 0x76, 0x7D, 0x7D, 0x39, 0x8B, 0xF6, 0xAB, 0xB6, 0xC3, 0x96, 0xD3, 0x55, 0xDB, 0x56, 0xDB, 0x36, 0xDB, 0x35, 0xDB, 0x55, 0xD3, 0x76, 0xC3, 0x75, 0x93, 0x13, 0x84, 0x97, 0x76, 0x7D, 0x4F, 0x1E, + 0x2F, 0x5E, 0x1F, 0x7F, 0x0F, 0x9F, 0x07, 0xBF, 0x04, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x07, 0xDF, 0x0A, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x07, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x0B, 0x07, 0xFF, 0x84, 0x07, 0xDE, 0x07, 0xFF, 0x07, 0xFE, 0x07, 0xFF, 0x07, 0xFE, 0x09, 0x07, 0xFF, 0x07, 0x07, 0xDF, 0x83, 0x07, 0xDE, 0x07, 0xFF, 0x07, 0xDE, 0x07, 0xFE, 0x01, 0x07, 0xDE, 0x01, 0x07, 0xBE, 0x01, 0x0F, 0x9E, 0x93, 0x17, 0x7E, 0x27, 0x7E, 0x37, 0x5E, 0x46, 0xDD, 0x5E, 0x7C, 0x76, 0x3C, 0x7D, 0x9B, 0x85, 0x1A, 0x94, 0xDB, 0x94, 0x7B, 0xA4, 0xBD, 0xA4, 0xFF, 0x42, 0x58, 0x21, 0xD8, 0x19, 0xFB, 0x11, 0xFC, 0x01, 0xDD, 0x01, 0xBD, 0x01, 0xDE, 0x01, 0xDF, 0x04, 0x01, 0xBF, 0x80, 0x01, 0x9F, 0x02, 0x01, 0xBF, 0x96, 0x01, 0xDF, 0x01, 0x7E, 0x09, 0x9E, 0x09, 0x7D, 0x19, 0x7D, 0x28, 0xFA, 0x48, 0xD8, 0xA2, 0x7C, 0xBA, 0x9B, 0xA9, 0xD7, 0xA1, 0xB5, 0xA1, 0xF6, 0xA2, 0x98, 0x8A, 0x98, 0x39, 0x72, 0x2A, 0xB7, 0x2C, 0x5C, 0x1C, 0xFD, 0x0D, 0x7D, 0x0E, 0x5E, 0x17, 0x3F, 0x17, 0xBF, 0x0F, 0xBF, 0x04, 0x07, 0xDF, 0x8D, 0x07, 0xBF, 0x0F, 0xBF, 0x17, 0x9F, 0x27, 0x5F, 0x37, 0x1E, 0x56, 0xDF, 0x86, 0x5F, 0x73, 0x76, 0x7A, 0x12, 0xAA, 0x54, 0xBA, 0x13, 0xB9, 0xB2, 0xC9, 0xD3, 0xD1, 0xD3, 0x01, 0xC9, 0x93, 0x02, 0xD1, 0x93, 0x89, 0xC9, 0x73, 0xC9, 0xB3, 0xC9, 0xD4, 0xC1, 0xD4, 0xB1, 0xF4, 0xBA, 0xB7, 0x68, 0xF0, 0x59, 0x11, 0x49, 0x31, 0x49, 0x51, 0x01, 0x41, 0x72, 0x80, 0x41, 0x92, 0x02, 0x39, 0x71, 0x80, 0x31, 0x71, 0x03, 0x31, 0x51, 0x01, 0x31, 0x30, + 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x08, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x11, 0x01, 0x19, 0x11, 0x80, 0x11, 0x12, 0x01, 0x11, 0x33, 0x82, 0x11, 0x54, 0x11, 0x75, 0x19, 0x95, 0x01, 0x11, 0x75, 0x80, 0x11, 0x54, 0x01, 0x11, 0x33, 0x83, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x11, 0x19, 0x11, 0x01, 0x19, 0x32, 0x86, 0x19, 0x53, 0x11, 0x54, 0x19, 0x95, 0x22, 0x17, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0x95, 0x01, 0x11, 0x33, 0x82, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x30, 0x8A, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x83, 0x21, 0x10, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x06, 0x19, 0x32, 0x80, 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, + 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x0B, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x21, 0x30, 0x83, 0x21, 0x50, 0x21, 0x30, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x19, 0x31, 0x88, 0x19, 0x53, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x19, 0xF6, 0x22, 0x17, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x54, 0x01, 0x11, 0x33, 0x82, 0x19, 0x33, 0x19, 0x32, 0x11, 0x12, 0x01, 0x11, 0x11, 0x89, 0x11, 0x33, 0x11, 0x74, 0x11, 0xB5, 0x11, 0xB6, 0x11, 0xD6, 0x11, 0xB6, 0x19, 0xD7, 0x11, 0x96, 0x19, 0x74, 0x11, + 0x33, 0x01, 0x11, 0x32, 0x81, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x31, 0x81, 0x11, 0x11, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x52, 0x80, 0x19, 0x53, 0x03, 0x11, 0x33, 0x88, 0x11, 0x75, 0x11, 0x95, 0x19, 0xB6, 0x22, 0x18, 0x22, 0x17, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x05, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x95, 0x1A, 0x18, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x87, 0x01, 0xD9, 0x11, 0xF9, 0x1A, 0x18, 0x11, 0x95, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x88, 0x21, 0x30, + 0x21, 0x51, 0x21, 0x72, 0x19, 0x32, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x21, 0xD7, 0x01, 0x21, 0xF7, 0x84, 0x19, 0xB5, 0x11, 0x74, 0x09, 0x12, 0x11, 0x32, 0x19, 0x52, 0x03, 0x19, 0x31, 0x82, 0x19, 0x51, 0x19, 0x32, 0x11, 0x32, 0x01, 0x11, 0x53, 0x8A, 0x19, 0xB5, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x54, 0x09, 0x13, 0x11, 0x33, 0x11, 0x12, 0x11, 0x32, 0x11, 0x12, 0x06, 0x19, 0x32, 0x01, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x11, 0x32, 0x01, 0x19, 0x32, 0x81, 0x11, 0x31, 0x11, 0x32, 0x02, 0x19, 0x32, 0x80, 0x11, 0x32, 0x07, 0x19, 0x32, 0x02, 0x19, 0x12, 0x80, 0x11, 0x12, 0x01, 0x19, 0x32, 0x04, 0x11, 0x12, 0x01, 0x11, 0x33, 0x82, 0x11, 0x13, 0x11, 0x34, 0x11, 0x75, 0x01, 0x19, 0xD7, 0x83, 0x19, 0xD6, 0x19, 0x75, 0x11, 0x13, 0x11, 0x32, 0x02, 0x19, 0x32, 0x80, 0x19, 0x52, 0x01, 0x19, 0x11, 0x81, 0x21, 0x52, 0x19, 0x52, 0x01, 0x11, 0x12, 0x81, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x86, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x06, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8E, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x11, 0x96, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, + 0x0F, 0x85, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x09, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0B, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x21, 0x30, 0x05, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x50, 0x84, 0x29, 0x30, 0x29, 0x50, 0x29, 0x30, 0x29, 0x50, 0x29, 0x30, 0x06, 0x31, 0x51, 0x83, 0x39, 0x71, 0x39, 0x51, 0x39, 0x72, 0x39, 0x51, 0x02, 0x39, 0x72, 0x80, 0x39, 0x92, 0x02, 0x41, 0x93, 0x80, 0x41, 0xB3, 0x01, 0x49, 0xB3, 0x01, 0x49, 0x93, 0x02, 0x51, 0xB3, 0x02, 0x59, 0xB3, 0xA5, 0x61, 0xD3, 0x61, 0xB2, 0x69, 0xB2, 0x69, 0xB1, 0x79, 0xF2, 0xAB, 0x97, 0xD4, 0xDC, 0xC4, 0x7A, 0xB4, 0x38, 0xB4, 0x99, 0xB4, 0xF9, 0xAD, 0x3A, 0x94, 0xD8, 0x7C, 0xB7, 0x6C, 0xD7, 0x6D, 0x18, 0x5C, 0xD7, 0x4C, 0x95, 0x4C, 0x96, 0x4C, 0x76, 0x44, 0x55, 0x44, 0x35, 0x54, 0x36, 0x4B, 0xB4, 0x4B, 0x53, 0x53, 0x34, 0x53, 0x14, 0x5A, 0xD3, 0x62, 0xB3, 0x5A, 0x52, 0x5A, 0x11, 0x62, 0x12, 0x61, 0xB0, 0x82, 0x93, 0xAB, 0xB7, 0xC4, 0x3A, + 0xCC, 0x19, 0xCB, 0xF8, 0x01, 0xD3, 0xD8, 0x80, 0xD3, 0xD7, 0x01, 0xD3, 0xF7, 0x8B, 0xD4, 0x17, 0xCC, 0x18, 0xC4, 0x58, 0xAC, 0x58, 0x73, 0x54, 0x9D, 0x9C, 0x86, 0x1D, 0x66, 0x9D, 0x56, 0xFE, 0x3F, 0x3E, 0x27, 0x7E, 0x17, 0x9F, 0x01, 0x0F, 0xBF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x08, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x8B, 0x07, 0xBF, 0x0F, 0x9F, 0x1F, 0x9F, 0x2F, 0x7F, 0x47, 0x1E, 0x5E, 0xBE, 0x7E, 0x1C, 0x7C, 0x98, 0x93, 0xF6, 0xBB, 0xD6, 0xC3, 0x55, 0xD3, 0x56, 0x02, 0xDB, 0x35, 0x8A, 0xD3, 0x35, 0xD3, 0x76, 0xB3, 0x34, 0x82, 0xF2, 0x84, 0x77, 0x76, 0x9D, 0x4F, 0x3E, 0x2F, 0x3E, 0x17, 0x7F, 0x0F, 0xBF, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x82, 0x07, 0xDF, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x08, 0x07, 0xFF, 0x82, 0x07, 0xDF, 0x07, 0xFF, 0x07, 0xFE, 0x07, 0x07, 0xFF, 0x08, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0x07, 0xDE, 0x94, 0x07, 0xBE, 0x07, 0xBF, 0x0F, 0xBE, 0x0F, 0x9E, 0x17, 0x9E, 0x27, 0x7E, 0x3F, 0x3E, 0x46, 0xBC, 0x5E, 0x7C, 0x7E, 0x3C, 0x85, 0x9B, 0x8C, 0xFA, 0x94, 0xBA, 0x9C, 0x9B, 0xA4, 0xBE, 0x94, 0x7E, 0x39, 0xF7, 0x19, 0xB8, 0x19, 0xDB, 0x11, 0xFC, 0x09, 0xDD, 0x02, 0x01, 0xBE, 0x08, 0x01, 0xBF, 0x95, 0x01, 0x9F, 0x01, 0x7E, 0x09, 0x9E, 0x19, 0x5D, 0x29, 0x3B, + 0x40, 0xB8, 0x89, 0xDA, 0xB2, 0x7B, 0xA9, 0xD7, 0xA9, 0xB5, 0xA9, 0xD5, 0xAA, 0x77, 0x9A, 0xD8, 0x49, 0xD3, 0x22, 0x34, 0x34, 0x5C, 0x1C, 0xFD, 0x15, 0x9E, 0x0E, 0x3E, 0x17, 0x3F, 0x0F, 0x7F, 0x0F, 0xBF, 0x01, 0x07, 0xDF, 0x81, 0x07, 0xBF, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x8D, 0x0F, 0xBF, 0x17, 0xBF, 0x1F, 0x7F, 0x2F, 0x3E, 0x46, 0xBE, 0x76, 0x7F, 0x7C, 0x79, 0x6A, 0x32, 0x9A, 0x53, 0xA9, 0xF3, 0xB1, 0xB2, 0xC1, 0xD3, 0xC9, 0xD3, 0xC9, 0xB3, 0x01, 0xD1, 0xB3, 0x8B, 0xC9, 0x73, 0xD1, 0x93, 0xC9, 0x73, 0xC9, 0x93, 0xC1, 0xB3, 0xC1, 0xD4, 0xB9, 0xD4, 0xBA, 0x55, 0x89, 0x72, 0x58, 0xD0, 0x51, 0x31, 0x49, 0x51, 0x01, 0x41, 0x72, 0x81, 0x39, 0x72, 0x39, 0x92, 0x02, 0x39, 0x71, 0x04, 0x31, 0x51, 0x01, 0x31, 0x31, 0x80, 0x31, 0x50, 0x08, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x8B, 0x29, 0x30, 0x21, 0x30, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB7, 0x11, 0xD7, 0x19, 0xF8, 0x1A, 0x19, 0x1A, 0x39, 0x01, 0x1A, 0x18, 0x84, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x11, 0x10, 0x21, 0x30, 0x81, 0x29, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x85, 0x21, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x53, 0x11, 0x54, 0x19, + 0xB5, 0x01, 0x22, 0x17, 0x86, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x54, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x11, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x19, 0x53, 0x01, 0x11, 0x33, 0x02, 0x11, 0x53, 0x84, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, + 0x30, 0x02, 0x21, 0x30, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8F, 0x21, 0x10, 0x21, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x75, 0x19, 0xF6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x01, 0x19, 0x12, 0x85, 0x19, 0x11, 0x11, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x01, 0x19, 0xD7, 0x85, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x11, 0x12, 0x01, 0x11, 0x11, 0x82, 0x19, 0x11, 0x11, 0x31, 0x11, 0x11, 0x01, 0x19, 0x31, 0x01, 0x11, 0x11, 0x82, 0x19, 0x31, 0x11, 0x31, 0x19, 0x31, 0x02, 0x19, 0x52, 0x01, 0x11, 0x32, 0x01, 0x11, 0x33, 0x82, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x01, 0x21, 0xF7, 0x84, 0x11, 0x94, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, + 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x87, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x74, 0x19, 0xF7, 0x11, 0xF8, 0x01, 0xB8, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x89, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xB9, 0x09, 0xD8, 0x12, 0x19, 0x1A, 0x18, 0x11, 0x74, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x12, 0x8A, 0x19, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x8F, 0x19, 0x51, 0x21, 0x52, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB5, 0x19, 0xF7, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x75, 0x09, 0x54, 0x11, 0x54, 0x09, 0x33, 0x11, 0x53, 0x04, 0x11, 0x33, 0x81, 0x11, 0x53, 0x11, 0x32, 0x04, 0x11, 0x33, 0x81, 0x11, 0x32, 0x11, 0x33, 0x06, 0x11, 0x32, 0x02, 0x11, 0x33, 0x03, 0x11, 0x32, 0x80, 0x11, 0x52, 0x01, 0x11, 0x32, 0x83, 0x11, 0x33, 0x11, 0x32, 0x11, 0x33, 0x11, 0x32, 0x03, 0x11, 0x33, 0x80, 0x11, 0x13, 0x02, 0x11, 0x33, 0x82, 0x11, 0x34, 0x19, 0x95, 0x21, 0xF7, 0x01, 0x19, 0xD6, 0x82, 0x19, 0x75, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x32, 0x02, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x32, 0x83, 0x11, 0x12, 0x11, 0x13, 0x11, + 0x54, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x84, 0x19, 0xF6, 0x11, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x11, 0x32, 0x04, 0x11, 0x53, 0x80, 0x11, 0x32, 0x02, 0x19, 0x31, 0x80, 0x19, 0x30, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x0C, 0x21, 0x10, 0x80, 0x29, 0x30, 0x07, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0B, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x0C, 0x29, 0x30, 0x80, 0x29, 0x10, 0x06, 0x29, 0x30, 0x81, 0x29, 0x50, 0x29, 0x30, 0x01, 0x29, 0x50, 0x01, 0x31, 0x50, 0x05, 0x31, 0x51, 0x01, 0x39, 0x71, 0x80, 0x39, 0x51, 0x04, 0x39, 0x72, 0x03, 0x41, 0x93, 0x83, 0x49, 0xB3, 0x49, 0x93, 0x51, 0x93, 0x51, 0xB3, 0x01, 0x51, 0x93, 0x91, 0x59, 0xB3, 0x59, 0xB2, 0x61, 0xB2, 0x69, 0xD2, 0x61, 0x91, 0x61, 0x2F, 0x9A, 0xD5, 0xCC, 0x7B, 0xCC, 0x9A, 0xC4, 0x59, + 0xBC, 0x79, 0xBC, 0xB9, 0xB4, 0xF9, 0xAD, 0x39, 0x94, 0xF8, 0x7C, 0xB7, 0x6C, 0xF7, 0x5C, 0xF6, 0x01, 0x55, 0x17, 0x80, 0x4C, 0xF7, 0x01, 0x44, 0xB6, 0x92, 0x44, 0x96, 0x4C, 0x76, 0x4C, 0x35, 0x54, 0x15, 0x53, 0xB4, 0x4B, 0x33, 0x52, 0xF3, 0x5A, 0xF4, 0x62, 0xF4, 0x52, 0x72, 0x5A, 0x52, 0x62, 0x52, 0x62, 0x32, 0x61, 0xF1, 0x59, 0x6F, 0x7A, 0x52, 0xB3, 0xB8, 0xCC, 0x19, 0xCB, 0xF8, 0x01, 0xD3, 0xF8, 0x01, 0xD3, 0xD7, 0x8E, 0xD3, 0xF7, 0xD4, 0x18, 0xC4, 0x17, 0xC4, 0x38, 0xA4, 0x17, 0x83, 0xD5, 0x95, 0x9B, 0x7E, 0x3D, 0x66, 0xBD, 0x4E, 0xFD, 0x37, 0x5E, 0x1F, 0x7E, 0x17, 0xBF, 0x0F, 0xBF, 0x0F, 0xDF, 0x0B, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x07, 0xDF, 0x06, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x8B, 0x07, 0xBF, 0x0F, 0xBF, 0x17, 0xBF, 0x1F, 0x7F, 0x37, 0x3F, 0x4E, 0xFE, 0x6E, 0x9D, 0x85, 0xDC, 0x7C, 0x36, 0xA3, 0xD6, 0xBB, 0xB6, 0xCB, 0x55, 0x01, 0xD3, 0x35, 0x8B, 0xDB, 0x15, 0xDB, 0x35, 0xD3, 0x35, 0xD3, 0x96, 0xB3, 0x54, 0x83, 0x12, 0x84, 0xF9, 0x6E, 0x9D, 0x47, 0x1E, 0x2F, 0x5E, 0x17, 0x7F, 0x0F, 0x9F, 0x01, 0x07, 0xBF, 0x09, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x07, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x0C, 0x07, 0xDF, 0x81, 0x07, 0xDE, 0x07, 0xDF, 0x02, 0x07, 0xDE, 0x80, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x95, 0x0F, 0xBF, 0x0F, + 0x9E, 0x17, 0x7E, 0x2F, 0x7F, 0x3F, 0x3E, 0x4E, 0xBC, 0x66, 0x5C, 0x7D, 0xFC, 0x85, 0x5A, 0x8C, 0xDA, 0x94, 0x9A, 0x9C, 0x7B, 0xA4, 0xDE, 0x8C, 0x3E, 0x21, 0x75, 0x21, 0xD9, 0x19, 0xDB, 0x09, 0xDD, 0x01, 0xBD, 0x01, 0xBE, 0x01, 0xDE, 0x01, 0xDF, 0x06, 0x01, 0xBF, 0x96, 0x01, 0x9F, 0x01, 0x7E, 0x01, 0x9E, 0x09, 0x9E, 0x11, 0x5D, 0x29, 0x5C, 0x30, 0x98, 0x81, 0x9A, 0xB2, 0x7B, 0xA9, 0xD8, 0xA9, 0xD6, 0xA9, 0xD5, 0xA2, 0x15, 0xA2, 0xF8, 0x62, 0x55, 0x21, 0xF3, 0x3C, 0x1B, 0x24, 0xDD, 0x1D, 0xBE, 0x16, 0x5F, 0x17, 0x1F, 0x17, 0x9F, 0x0F, 0xBF, 0x05, 0x07, 0xDF, 0x8C, 0x07, 0xBF, 0x0F, 0xBF, 0x1F, 0xBF, 0x27, 0x3F, 0x3E, 0xBE, 0x6E, 0x9F, 0x85, 0x7C, 0x62, 0xB3, 0x92, 0x94, 0x99, 0xD2, 0xB1, 0xD2, 0xC1, 0xD3, 0xC9, 0xB3, 0x01, 0xD1, 0xB3, 0x81, 0xC9, 0x73, 0xD1, 0x93, 0x01, 0xC9, 0x73, 0x90, 0xC9, 0x93, 0xC9, 0xB4, 0xC1, 0xB4, 0xB9, 0xD4, 0xB1, 0xF5, 0xA2, 0x15, 0x68, 0xD0, 0x59, 0x31, 0x49, 0x51, 0x49, 0x72, 0x41, 0x72, 0x39, 0x72, 0x39, 0x92, 0x39, 0x51, 0x39, 0x71, 0x39, 0x51, 0x39, 0x71, 0x04, 0x31, 0x51, 0x80, 0x31, 0x31, 0x05, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x75, 0x19, 0xD7, 0x19, 0xF8, 0x1A, 0x39, 0x01, 0x11, 0xF9, 0x80, 0x09, 0xD9, + 0x01, 0x09, 0xF9, 0x85, 0x12, 0x19, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x53, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x09, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x54, 0x19, 0x53, 0x01, 0x19, 0x32, 0x83, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x19, 0x52, 0x19, 0x73, 0x19, 0x74, 0x11, 0x74, 0x02, 0x11, 0x95, 0x87, 0x11, 0xB5, 0x11, 0x95, 0x11, 0x74, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, + 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x05, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x09, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x04, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x19, 0x53, 0x01, 0x11, 0x54, 0x89, 0x19, 0xF6, 0x22, 0x38, 0x19, 0xD6, 0x11, 0x95, 0x19, 0x94, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x11, 0x89, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x09, 0x54, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x95, 0x11, 0x74, 0x11, 0x53, 0x01, 0x11, 0x32, 0x01, 0x11, 0x11, 0x81, 0x19, 0x32, 0x19, 0x31, 0x02, 0x11, 0x31, 0x01, 0x11, 0x11, 0x81, 0x11, 0x32, 0x11, 0x11, 0x01, 0x11, 0x32, 0x02, 0x19, 0x52, 0x80, 0x19, 0x32, 0x01, 0x11, 0x12, 0x8A, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xB6, 0x22, 0x17, 0x22, 0x38, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, + 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x87, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x12, 0x18, 0x09, 0xF8, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xD9, 0x86, 0x01, 0xB8, 0x11, 0xF8, 0x1A, 0x18, 0x21, 0xF7, 0x11, 0x53, 0x19, 0x12, 0x19, 0x11, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x19, 0x12, 0x82, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x01, 0x19, 0xD6, 0x85, 0x19, 0xF6, 0x21, 0xF6, 0x11, 0x74, 0x09, 0x12, 0x11, 0x12, 0x19, 0x11, 0x01, 0x19, 0x31, 0x83, 0x21, 0x51, 0x21, 0x52, 0x19, 0x52, 0x19, 0x11, 0x01, 0x11, 0x32, 0x85, 0x11, 0x54, 0x11, 0x95, 0x19, 0xF7, 0x1A, 0x17, 0x19, 0xF7, 0x11, 0xB6, 0x01, 0x11, 0x95, 0x81, 0x11, 0x94, 0x19, 0x94, 0x04, 0x19, 0x74, 0x82, 0x19, 0x94, 0x19, 0x74, 0x11, 0x74, 0x04, 0x19, 0x74, 0x80, 0x19, 0x94, 0x08, 0x19, 0x74, 0x81, 0x11, + 0x74, 0x19, 0x94, 0x01, 0x19, 0x74, 0x80, 0x11, 0x74, 0x01, 0x19, 0x74, 0x80, 0x19, 0x54, 0x03, 0x19, 0x74, 0x01, 0x11, 0x74, 0x02, 0x19, 0x75, 0x89, 0x19, 0x95, 0x19, 0xB6, 0x21, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x02, 0x19, 0x31, 0x02, 0x19, 0x11, 0x84, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD7, 0x01, 0x22, 0x17, 0x84, 0x19, 0xD6, 0x11, 0x74, 0x09, 0x33, 0x11, 0x12, 0x11, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x30, 0x19, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x04, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x19, 0x31, 0x03, 0x19, 0x32, 0x81, 0x19, 0x52, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x20, 0xEF, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x0E, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x0B, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x11, 0x29, 0x30, 0x05, 0x29, 0x50, 0x01, 0x31, 0x50, 0x02, 0x31, 0x51, 0x80, 0x31, 0x71, 0x01, + 0x39, 0x71, 0x81, 0x39, 0x72, 0x39, 0x71, 0x03, 0x39, 0x72, 0x81, 0x39, 0x92, 0x41, 0x93, 0x01, 0x41, 0xB3, 0x01, 0x41, 0x93, 0x01, 0x49, 0x93, 0x02, 0x51, 0x93, 0x01, 0x59, 0x92, 0xAA, 0x61, 0x92, 0x61, 0x91, 0x61, 0x70, 0x82, 0x53, 0xC4, 0x3A, 0xE4, 0xFC, 0xCC, 0x7A, 0xCC, 0x99, 0xC4, 0x79, 0xBC, 0xB9, 0xB4, 0xF9, 0xA4, 0xF8, 0x84, 0xB7, 0x7C, 0xF7, 0x6C, 0xF7, 0x65, 0x17, 0x55, 0x16, 0x55, 0x37, 0x4D, 0x16, 0x55, 0x37, 0x4D, 0x17, 0x4C, 0xF6, 0x44, 0x96, 0x44, 0x75, 0x4C, 0x56, 0x4B, 0xF5, 0x53, 0xD5, 0x53, 0x95, 0x5B, 0x54, 0x52, 0xF3, 0x52, 0xB3, 0x5A, 0xD3, 0x62, 0xB3, 0x5A, 0x52, 0x5A, 0x32, 0x62, 0x52, 0x6A, 0x52, 0x61, 0xF1, 0x59, 0x6F, 0x82, 0x53, 0xB3, 0x97, 0xCC, 0x19, 0xCB, 0xF8, 0x02, 0xCB, 0xD7, 0x01, 0xCB, 0xF7, 0x89, 0xCC, 0x37, 0xC4, 0x58, 0x9B, 0xB6, 0x73, 0x95, 0x8D, 0x9B, 0x76, 0x3C, 0x5E, 0xBD, 0x3E, 0xFD, 0x27, 0x5E, 0x17, 0x9E, 0x01, 0x0F, 0xBF, 0x0A, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x8C, 0x0F, 0xDF, 0x0F, 0x9F, 0x17, 0x7F, 0x27, 0x5F, 0x3F, 0x1F, 0x56, 0x9D, 0x76, 0x3C, 0x8D, 0x5A, 0x83, 0xD5, 0xB4, 0x17, 0xBB, 0x96, 0xCB, 0x76, 0xD3, 0x36, 0x02, 0xDB, 0x35, 0x89, 0xD3, 0x55, 0xD3, 0x96, 0xB3, 0x54, 0x7B, 0x12, 0x85, 0x19, 0x6E, 0xDE, 0x47, 0x3E, 0x27, 0x7F, 0x17, 0xBF, 0x0F, 0xBF, 0x02, 0x07, 0xBF, 0x0E, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x81, 0x07, 0xDF, 0x07, 0xBF, 0x0C, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x03, + 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x11, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xDE, 0x80, 0x07, 0xBE, 0x01, 0x07, 0xDF, 0x81, 0x07, 0xBF, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x94, 0x0F, 0xBF, 0x17, 0x9F, 0x1F, 0x7E, 0x2F, 0x5E, 0x3E, 0xFD, 0x56, 0x7C, 0x6E, 0x5C, 0x85, 0xDB, 0x8D, 0x5A, 0x8C, 0xB9, 0x94, 0x7A, 0xA4, 0xBC, 0xB5, 0x1F, 0x8B, 0xFE, 0x29, 0x76, 0x21, 0xBA, 0x11, 0xDC, 0x09, 0x9C, 0x01, 0xBD, 0x01, 0x9D, 0x01, 0xBE, 0x02, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x80, 0x01, 0xBF, 0x02, 0x01, 0x9F, 0x94, 0x01, 0x7E, 0x09, 0x9E, 0x11, 0x9D, 0x29, 0x7C, 0x38, 0xF9, 0x71, 0x99, 0xB2, 0x9C, 0xA9, 0xF8, 0xA9, 0xD6, 0xA9, 0xB5, 0xA1, 0xF4, 0xA2, 0xD8, 0x72, 0x75, 0x29, 0xD3, 0x2B, 0x59, 0x24, 0x9C, 0x15, 0x7E, 0x16, 0x5E, 0x17, 0x3F, 0x17, 0x9F, 0x0F, 0xBF, 0x05, 0x07, 0xDF, 0x8C, 0x07, 0xBF, 0x0F, 0xBF, 0x17, 0x9F, 0x27, 0x7F, 0x36, 0xFE, 0x56, 0x9E, 0x7D, 0xDD, 0x63, 0x34, 0x82, 0xB4, 0x9A, 0x13, 0xA9, 0xD2, 0xC1, 0xF3, 0xC1, 0xB2, 0x01, 0xC9, 0x93, 0x02, 0xD1, 0x93, 0x8C, 0xC9, 0x52, 0xC9, 0x93, 0xD1, 0xD4, 0xC9, 0xD4, 0xC1, 0xD4, 0xB9, 0xF4, 0xBA, 0x76, 0x71, 0x10, 0x59, 0x10, 0x49, 0x31, 0x49, 0x51, 0x41, 0x72, 0x41, 0x92, 0x01, 0x39, 0x71, 0x01, 0x39, 0x51, 0x02, 0x31, 0x71, 0x02, 0x31, 0x51, 0x81, 0x31, 0x50, 0x29, 0x50, 0x09, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, + 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x8B, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD8, 0x11, 0xF9, 0x12, 0x1A, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x87, 0x09, 0xF9, 0x12, 0x19, 0x11, 0xF8, 0x09, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x21, 0x51, 0x02, 0x21, 0x30, 0x09, 0x21, 0x31, 0x04, 0x21, 0x11, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x19, 0xB5, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x81, 0x11, 0xF7, 0x1A, 0x38, 0x01, 0x1A, 0x18, 0x84, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x85, + 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x8A, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x19, 0x11, 0x19, 0x12, 0x11, 0x32, 0x11, 0x33, 0x01, 0x11, 0x54, 0x88, 0x19, 0xB6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x19, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x02, 0x19, 0x31, 0x84, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x01, 0x19, 0xF7, 0x82, 0x11, 0x96, 0x11, 0x74, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x11, 0x11, 0x01, 0x19, 0x32, 0x84, 0x19, 0x52, 0x11, 0x32, 0x11, 0x52, 0x11, 0x32, 0x11, 0x53, 0x02, 0x11, 0x73, 0x01, 0x11, 0x53, 0x02, 0x11, 0x32, 0x8D, 0x19, 0x52, 0x19, 0x32, 0x19, 0x11, 0x19, + 0x12, 0x19, 0x32, 0x11, 0x32, 0x19, 0x74, 0x11, 0x75, 0x19, 0xD6, 0x22, 0x38, 0x1A, 0x17, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x8A, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x94, 0x21, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x94, 0x1A, 0x17, 0x12, 0x18, 0x12, 0x19, 0x09, 0xD9, 0x01, 0xD9, 0x09, 0xF9, 0x01, 0xD9, 0x09, 0xD8, 0x01, 0xB8, 0x11, 0xF8, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x32, 0x19, 0x31, 0x21, 0x11, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x80, 0x21, 0x32, 0x01, 0x19, 0x32, 0x8D, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x19, + 0xB6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x54, 0x09, 0x12, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x31, 0x86, 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x22, 0x17, 0x02, 0x2A, 0x58, 0x84, 0x2A, 0x37, 0x32, 0x58, 0x2A, 0x37, 0x32, 0x37, 0x2A, 0x17, 0x02, 0x2A, 0x37, 0x81, 0x2A, 0x17, 0x2A, 0x38, 0x04, 0x2A, 0x17, 0x82, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x37, 0x06, 0x2A, 0x17, 0x01, 0x2A, 0x16, 0x02, 0x2A, 0x37, 0x04, 0x2A, 0x17, 0x84, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x38, 0x04, 0x2A, 0x17, 0x83, 0x21, 0xF6, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x53, 0x01, 0x19, 0x32, 0x81, 0x19, 0x31, 0x19, 0x11, 0x02, 0x19, 0x31, 0x85, 0x19, 0x32, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x82, 0x19, 0xD6, 0x11, 0x74, 0x09, 0x33, 0x01, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x07, 0x19, 0x31, 0x80, 0x19, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, + 0x30, 0x29, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x08, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x09, 0x29, 0x30, 0x01, 0x29, 0x50, 0x01, 0x29, 0x30, 0x85, 0x29, 0x50, 0x29, 0x30, 0x29, 0x50, 0x31, 0x50, 0x31, 0x51, 0x31, 0x71, 0x02, 0x31, 0x51, 0x82, 0x31, 0x71, 0x39, 0x71, 0x31, 0x51, 0x03, 0x39, 0x72, 0x02, 0x41, 0x92, 0x81, 0x41, 0x93, 0x41, 0xB3, 0x02, 0x49, 0x93, 0x01, 0x51, 0x93, 0x80, 0x51, 0xB3, 0x01, 0x59, 0x92, 0x83, 0x61, 0x91, 0x61, 0x71, 0x61, 0x4F, 0xAB, 0x57, 0x01, 0xDC, 0xBB, 0x8B, 0xD4, 0x7A, 0xCC, 0x79, 0xC4, 0x78, 0xBC, 0xB9, 0xBC, 0xF9, 0xA4, 0xF8, 0x84, 0xB6, 0x74, 0xD6, 0x6C, 0xF6, 0x5C, 0xF6, 0x5D, 0x37, 0x55, 0x37, 0x01, 0x4D, 0x16, 0x01, 0x4D, 0x37, 0x96, 0x4D, 0x17, 0x54, 0xF7, 0x4C, 0xB6, 0x4C, 0x55, 0x54, 0x36, 0x5B, 0xF5, 0x5B, 0xB5, 0x5B, 0x74, 0x5B, 0x34, 0x5A, 0xF3, 0x5A, 0xD3, 0x5A, 0xB3, 0x5A, 0x93, 0x62, 0x93, 0x62, 0x72, 0x62, 0x52, 0x6A, 0x52, 0x6A, 0x11, 0x61, 0xB0, + 0x59, 0x2E, 0x8A, 0x52, 0xBB, 0xD8, 0xD4, 0x39, 0x01, 0xCB, 0xF8, 0x8D, 0xCB, 0xD7, 0xCB, 0xF7, 0xCC, 0x17, 0xC4, 0x38, 0xB4, 0x38, 0x8B, 0x95, 0x7C, 0x37, 0x85, 0xDC, 0x66, 0x5C, 0x4E, 0xFD, 0x37, 0x5E, 0x1F, 0x7E, 0x17, 0xBF, 0x0F, 0xBF, 0x0B, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x81, 0x07, 0xDF, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x8C, 0x0F, 0xBF, 0x0F, 0x9F, 0x1F, 0x7F, 0x2F, 0x3F, 0x46, 0xFE, 0x66, 0x7D, 0x7D, 0xFC, 0x8C, 0x98, 0x93, 0xD6, 0xB3, 0xB6, 0xC3, 0x75, 0xCB, 0x35, 0xD3, 0x35, 0x02, 0xDB, 0x35, 0x89, 0xD3, 0x76, 0xCB, 0x96, 0xA3, 0x54, 0x7B, 0x53, 0x85, 0x9B, 0x66, 0xDE, 0x3F, 0x5E, 0x27, 0x7F, 0x17, 0x9F, 0x0F, 0xBF, 0x02, 0x07, 0xBF, 0x0C, 0x07, 0xDF, 0x07, 0x07, 0xBF, 0x81, 0x07, 0xDF, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x0F, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x0C, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x05, 0x07, 0xDF, 0x80, 0x07, 0xDE, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x93, 0x0F, 0xBF, 0x17, 0x9E, 0x27, 0x7E, 0x37, 0x5E, 0x46, 0xDD, 0x5E, 0x7C, 0x76, 0x3C, 0x85, 0xBB, 0x95, 0x3A, 0x94, 0xB9, 0x9C, 0x9A, 0xAC, 0x9C, 0xB4, 0xFF, 0x73, 0x1B, 0x21, 0x57, 0x19, 0xBA, 0x11, 0xBC, 0x09, 0xBD, 0x01, 0xBE, 0x01, 0x9E, 0x03, 0x01, 0xBF, 0x02, 0x01, 0x9F, 0x96, 0x01, 0x7F, 0x01, 0x9F, 0x01, 0x7E, 0x09, 0x9E, 0x19, 0xBE, 0x21, 0x5C, 0x31, 0x19, 0x61, 0x38, 0xA2, 0x5B, 0xAA, 0x39, 0xA9, 0xD6, 0xB2, 0x16, 0xA1, 0xF4, 0xA2, 0x96, 0x7A, 0x76, 0x42, + 0x14, 0x2A, 0xF7, 0x2C, 0xBC, 0x1D, 0x9E, 0x16, 0x3E, 0x17, 0x3F, 0x17, 0x9F, 0x0F, 0xBF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x8A, 0x0F, 0x9F, 0x27, 0x9F, 0x37, 0x3F, 0x4E, 0x9E, 0x76, 0x3E, 0x74, 0x58, 0x72, 0xB4, 0x8A, 0x12, 0xAA, 0x12, 0xB9, 0xD2, 0xC9, 0xD3, 0x01, 0xC9, 0x92, 0x02, 0xD1, 0x93, 0x80, 0xC9, 0x73, 0x01, 0xC9, 0x93, 0x89, 0xC9, 0xD4, 0xC1, 0xD4, 0xB9, 0xD4, 0xBA, 0x56, 0x81, 0x52, 0x58, 0xD0, 0x51, 0x51, 0x49, 0x51, 0x49, 0x92, 0x41, 0x71, 0x02, 0x39, 0x71, 0x80, 0x39, 0x51, 0x06, 0x31, 0x51, 0x08, 0x29, 0x30, 0x05, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x87, 0x19, 0x31, 0x11, 0x32, 0x09, 0x54, 0x11, 0xB7, 0x09, 0xB8, 0x09, 0xFA, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0x01, 0xBA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x01, 0x09, 0xF9, 0x84, 0x09, 0xF8, 0x09, 0xB7, 0x09, 0x75, 0x09, 0x54, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x19, 0x32, 0x02, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x31, 0x02, 0x21, 0x31, 0x81, 0x19, 0x31, 0x21, 0x32, 0x03, 0x19, 0x32, 0x81, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x90, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x18, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, + 0x21, 0x52, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x11, 0xD6, 0x01, 0x11, 0xF8, 0x81, 0x12, 0x19, 0x09, 0xF8, 0x01, 0x12, 0x19, 0x87, 0x12, 0x18, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x53, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x29, 0x10, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x85, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x04, + 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x31, 0x86, 0x19, 0x31, 0x11, 0x12, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x86, 0x19, 0xB6, 0x19, 0x94, 0x19, 0x53, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x31, 0x89, 0x19, 0x11, 0x11, 0x11, 0x19, 0x53, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD6, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x01, 0x11, 0x32, 0x81, 0x19, 0x52, 0x19, 0x32, 0x02, 0x11, 0x32, 0x82, 0x11, 0x53, 0x11, 0x94, 0x19, 0xB5, 0x01, 0x19, 0xD6, 0x85, 0x19, 0xF6, 0x19, 0xD6, 0x11, 0x96, 0x11, 0x95, 0x11, 0x94, 0x11, 0x53, 0x01, 0x11, 0x32, 0x01, 0x19, 0x32, 0x82, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x01, 0x11, 0x33, 0x85, 0x11, 0x95, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x01, 0x19, 0x11, 0x81, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, + 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x06, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x95, 0x19, 0xF7, 0x1A, 0x18, 0x04, 0x09, 0xD8, 0x85, 0x11, 0xF8, 0x1A, 0x38, 0x19, 0xF7, 0x19, 0x94, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x21, 0x31, 0x21, 0x51, 0x21, 0x32, 0x01, 0x19, 0x32, 0x8A, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x03, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x11, 0x32, 0x01, 0x11, 0x53, 0x84, 0x11, 0x74, 0x19, 0x95, 0x21, 0xF6, 0x2A, 0x17, 0x29, 0xF6, 0x01, 0x2A, 0x17, 0x87, 0x32, 0x37, 0x32, 0x58, 0x2A, 0x17, 0x32, 0x37, 0x32, 0x38, 0x2A, 0x17, 0x32, 0x38, 0x2A, 0x38, 0x01, 0x2A, 0x17, 0x81, 0x2A, 0x37, 0x2A, 0x17, 0x01, 0x2A, 0x37, 0x80, 0x2A, 0x17, 0x04, 0x2A, 0x37, 0x80, 0x22, 0x17, 0x01, 0x2A, 0x37, 0x01, 0x2A, 0x17, 0x85, 0x2A, 0x37, 0x2A, 0x17, 0x32, 0x57, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x37, 0x04, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x01, 0x2A, 0x17, 0x02, 0x29, 0xF7, 0x86, 0x21, + 0xD6, 0x11, 0x53, 0x11, 0x33, 0x11, 0x53, 0x19, 0x52, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x11, 0x02, 0x19, 0x31, 0x8B, 0x11, 0x12, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x22, 0x37, 0x22, 0x17, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x30, 0x19, 0x10, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x51, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x08, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x06, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x09, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, + 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x51, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x50, 0x01, 0x31, 0x50, 0x01, 0x31, 0x51, 0x01, 0x31, 0x71, 0x01, 0x31, 0x51, 0x01, 0x31, 0x71, 0x80, 0x39, 0x71, 0x01, 0x39, 0x72, 0x81, 0x39, 0x51, 0x39, 0x72, 0x02, 0x41, 0x92, 0x81, 0x41, 0x72, 0x41, 0x93, 0x01, 0x49, 0x93, 0x83, 0x51, 0xB3, 0x51, 0xB2, 0x49, 0x72, 0x51, 0x71, 0x01, 0x59, 0x71, 0x9C, 0x59, 0x2F, 0x79, 0xD1, 0xCC, 0x5A, 0xE4, 0xDC, 0xDC, 0x9A, 0xD4, 0x9A, 0xCC, 0x79, 0xCC, 0x99, 0xBC, 0x98, 0xB4, 0xB8, 0xA4, 0xB7, 0x8C, 0x96, 0x7C, 0xD6, 0x64, 0xD6, 0x65, 0x37, 0x5D, 0x37, 0x55, 0x36, 0x4D, 0x16, 0x4D, 0x37, 0x4D, 0x57, 0x4D, 0x16, 0x4C, 0xF6, 0x4C, 0xF7, 0x54, 0xF7, 0x54, 0xD7, 0x5C, 0x96, 0x5C, 0x56, 0x64, 0x16, 0x63, 0xB5, 0x01, 0x63, 0x75, 0x8E, 0x63, 0x13, 0x6B, 0x34, 0x62, 0xD3, 0x5A, 0x92, 0x5A, 0x52, 0x5A, 0x72, 0x62, 0x52, 0x62, 0x72, 0x6A, 0x52, 0x61, 0xF1, 0x69, 0xF0, 0x59, 0x4E, 0x59, 0x2E, 0x8A, 0x72, 0xBB, 0xD8, 0x01, 0xCC, 0x18, 0x8D, 0xCB, 0xF7, 0xC4, 0x17, 0xC4, 0x38, 0xC4, 0x78, 0xAC, 0x37, 0x7B, 0x94, 0x74, 0xB8, 0x75, 0xFC, 0x5E, 0xDD, 0x3F, 0x3E, 0x27, 0x7E, 0x17, 0x9E, 0x0F, 0xBE, 0x07, 0xBE, 0x03, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x08, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x8D, 0x07, 0xBF, 0x0F, 0x9F, 0x17, 0x7F, 0x27, 0x5F, 0x37, 0x3F, 0x56, 0xFE, 0x6E, 0x3C, 0x95, 0xFC, 0x7B, 0xB5, 0xA3, 0xB6, 0xC3, 0xD6, 0xCB, 0x55, 0xD3, 0x55, 0xDB, 0x56, 0x01, 0xD3, + 0x15, 0x8A, 0xD3, 0x35, 0xCB, 0x55, 0xC3, 0xB6, 0x9B, 0x33, 0x7B, 0xB4, 0x85, 0xDB, 0x66, 0xFE, 0x37, 0x3E, 0x27, 0x7F, 0x17, 0x9F, 0x0F, 0x9F, 0x01, 0x07, 0xBF, 0x03, 0x07, 0xDF, 0x82, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x0D, 0x07, 0xBF, 0x05, 0x07, 0x9F, 0x06, 0x07, 0xDF, 0x82, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xFF, 0x07, 0x07, 0xDF, 0x81, 0x07, 0xBF, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x09, 0x07, 0xDF, 0x80, 0x07, 0xDE, 0x01, 0x07, 0xDF, 0x86, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xBF, 0x01, 0x0F, 0xBF, 0x94, 0x17, 0x9E, 0x27, 0x7E, 0x3F, 0x3E, 0x4E, 0xBD, 0x66, 0x7C, 0x7E, 0x1B, 0x95, 0xDB, 0x95, 0x1A, 0x9C, 0xBA, 0xA4, 0x9A, 0xB4, 0xDE, 0xBD, 0x1F, 0x5A, 0x7A, 0x21, 0x37, 0x19, 0x9A, 0x11, 0x9C, 0x09, 0xBD, 0x09, 0xBE, 0x01, 0x7E, 0x01, 0x9E, 0x01, 0x9F, 0x01, 0x01, 0xBF, 0x99, 0x01, 0x9F, 0x01, 0x7F, 0x01, 0x7E, 0x01, 0x9F, 0x01, 0x7E, 0x09, 0xBF, 0x11, 0xBE, 0x19, 0x7C, 0x31, 0x3A, 0x50, 0xF8, 0x9A, 0x5B, 0xAA, 0x5A, 0xA9, 0xF7, 0xB2, 0x16, 0xA9, 0xF5, 0x9A, 0x55, 0x8A, 0xB6, 0x52, 0x75, 0x3B, 0x58, 0x45, 0x3D, 0x2D, 0xBE, 0x16, 0x3E, 0x17, 0x1F, 0x17, 0x7F, 0x0F, 0xBF, 0x0F, 0xDF, 0x01, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x8F, 0x07, 0xDF, 0x07, 0xBF, 0x0F, 0x9F, 0x1F, 0x7F, 0x2F, 0x3F, 0x46, 0xDE, 0x6E, 0x7E, 0x85, 0x7C, 0x62, 0xD3, 0x71, 0xF1, 0xA2, 0x53, 0xBA, 0x33, 0xCA, 0x13, 0xC9, 0xD3, 0xC9, 0x92, 0xC9, 0x72, 0x01, 0xD1, + 0x93, 0x8B, 0xC9, 0x72, 0xC9, 0x93, 0xD1, 0xB4, 0xC9, 0xD4, 0xC1, 0x93, 0xB9, 0xB4, 0xBA, 0x15, 0xA1, 0xF4, 0x58, 0xAF, 0x59, 0x52, 0x51, 0x51, 0x49, 0x72, 0x02, 0x39, 0x51, 0x02, 0x39, 0x71, 0x80, 0x39, 0x51, 0x02, 0x31, 0x51, 0x01, 0x31, 0x31, 0x84, 0x31, 0x51, 0x29, 0x50, 0x31, 0x50, 0x29, 0x30, 0x29, 0x50, 0x02, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x87, 0x21, 0x31, 0x19, 0x11, 0x11, 0x13, 0x19, 0xB6, 0x19, 0xF9, 0x09, 0xB9, 0x01, 0xB9, 0x01, 0xBA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x86, 0x09, 0xB8, 0x09, 0x96, 0x09, 0x75, 0x09, 0x54, 0x09, 0x33, 0x11, 0x33, 0x11, 0x12, 0x01, 0x11, 0x11, 0x01, 0x19, 0x11, 0x01, 0x19, 0x12, 0x80, 0x19, 0x32, 0x01, 0x11, 0x11, 0x02, 0x19, 0x32, 0x02, 0x19, 0x12, 0x01, 0x19, 0x32, 0x81, 0x19, 0x12, 0x21, 0x32, 0x03, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x90, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x17, 0x22, 0x38, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x54, 0x08, 0xF2, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x21, 0x52, 0x01, 0x21, 0x51, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x85, 0x11, 0x33, 0x11, 0x74, 0x11, 0x96, + 0x11, 0xF7, 0x11, 0xF8, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x80, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x88, 0x12, 0x3A, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xD7, 0x19, 0x95, 0x19, 0x53, 0x19, 0x12, 0x21, 0x11, 0x21, 0x31, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x06, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x05, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x20, 0xF0, 0x01, 0x29, 0x10, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, + 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x11, 0x12, 0x89, 0x11, 0x33, 0x09, 0x34, 0x11, 0x95, 0x19, 0xD6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x53, 0x19, 0x32, 0x01, 0x19, 0x11, 0x83, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x11, 0x86, 0x11, 0x33, 0x11, 0x74, 0x11, 0x96, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x74, 0x01, 0x11, 0x32, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x12, 0x11, 0x32, 0x09, 0x53, 0x11, 0x94, 0x01, 0x19, 0xF6, 0x01, 0x1A, 0x17, 0x03, 0x19, 0xF7, 0x83, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x74, 0x11, 0x33, 0x01, 0x19, 0x32, 0x8D, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x19, 0xF7, 0x22, 0x39, 0x11, 0xD7, 0x11, 0x75, 0x11, 0x12, 0x19, 0x12, 0x19, 0x11, 0x18, 0xF0, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x87, 0x21, 0x10, 0x19, 0x31, 0x19, 0x11, 0x11, + 0x33, 0x19, 0x95, 0x19, 0xD6, 0x1A, 0x18, 0x11, 0xF7, 0x02, 0x11, 0xD7, 0x86, 0x19, 0xF7, 0x22, 0x17, 0x19, 0x95, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x32, 0x89, 0x11, 0x32, 0x11, 0x53, 0x19, 0x94, 0x21, 0xD6, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x02, 0x19, 0x31, 0x84, 0x19, 0x51, 0x19, 0x52, 0x19, 0x31, 0x19, 0x32, 0x19, 0x52, 0x01, 0x11, 0x32, 0x80, 0x11, 0x33, 0x01, 0x11, 0x53, 0x82, 0x19, 0x53, 0x19, 0x54, 0x19, 0x53, 0x02, 0x19, 0x74, 0x03, 0x19, 0x95, 0x80, 0x19, 0x75, 0x02, 0x19, 0x95, 0x01, 0x19, 0xB5, 0x80, 0x19, 0x95, 0x06, 0x19, 0xB5, 0x80, 0x19, 0x95, 0x01, 0x19, 0xB5, 0x81, 0x19, 0x94, 0x19, 0x95, 0x01, 0x19, 0xB5, 0x84, 0x19, 0x95, 0x19, 0xB5, 0x19, 0x94, 0x19, 0x74, 0x19, 0x94, 0x01, 0x19, 0x74, 0x02, 0x19, 0x94, 0x01, 0x19, 0x74, 0x83, 0x19, 0x54, 0x11, 0x53, 0x11, 0x13, 0x11, 0x12, 0x01, 0x19, 0x32, 0x02, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x89, 0x19, 0x32, 0x19, 0x12, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x22, 0x17, 0x22, 0x16, 0x19, 0xD5, 0x11, 0x74, 0x01, 0x11, 0x32, 0x02, 0x19, 0x31, 0x81, 0x19, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, + 0x83, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x87, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x0A, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x08, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x80, 0x29, 0x10, 0x05, 0x29, 0x30, 0x81, 0x29, 0x50, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x31, 0x50, 0x31, 0x51, 0x29, 0x50, 0x04, 0x31, 0x51, 0x81, 0x39, 0x71, 0x31, 0x51, 0x02, 0x39, 0x71, 0x80, 0x39, 0x51, 0x01, 0x39, 0x72, 0x02, 0x41, 0x92, 0x83, 0x41, 0x72, 0x41, 0x92, 0x41, 0x72, 0x49, 0xB3, 0x01, 0x51, 0x92, 0x93, 0x51, 0x71, 0x51, 0x50, 0x59, 0x50, 0x59, 0x0E, 0xA3, 0x15, + 0xD4, 0x7B, 0xDC, 0xBB, 0xDC, 0x9A, 0xD4, 0x79, 0xD4, 0x78, 0xCC, 0x58, 0xC4, 0x78, 0xC4, 0xB9, 0xAC, 0xB8, 0x94, 0x76, 0x84, 0x96, 0x74, 0xB6, 0x6D, 0x17, 0x64, 0xF6, 0x5C, 0xF6, 0x01, 0x5D, 0x16, 0x81, 0x55, 0x16, 0x5D, 0x16, 0x01, 0x5C, 0xF6, 0x91, 0x64, 0xD6, 0x64, 0xB6, 0x6C, 0x96, 0x6C, 0x76, 0x6C, 0x36, 0x6B, 0xF5, 0x73, 0xD5, 0x6B, 0x74, 0x6B, 0x54, 0x63, 0x13, 0x5A, 0xD2, 0x52, 0x50, 0x52, 0x51, 0x5A, 0x71, 0x52, 0x30, 0x4A, 0x30, 0x52, 0x71, 0x5A, 0x92, 0x02, 0x5A, 0x72, 0x84, 0x5A, 0x31, 0x51, 0xEF, 0x59, 0xEF, 0x83, 0x34, 0xAC, 0x38, 0x02, 0xB4, 0x58, 0x8A, 0xAC, 0x99, 0xA4, 0x79, 0x8C, 0x37, 0x5B, 0xD5, 0x75, 0x9B, 0x5E, 0xBD, 0x47, 0x1D, 0x2F, 0x5E, 0x1F, 0x9E, 0x17, 0xBE, 0x0F, 0xBE, 0x05, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x06, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x9B, 0x07, 0xBF, 0x0F, 0x9F, 0x17, 0x7F, 0x1F, 0x5E, 0x2F, 0x1E, 0x47, 0x1E, 0x5E, 0x9D, 0x7D, 0xFC, 0x95, 0x19, 0x8B, 0x95, 0xB3, 0xB6, 0xC3, 0x75, 0xCB, 0x35, 0xD3, 0x56, 0xD3, 0x35, 0xD3, 0x15, 0xCB, 0x35, 0xCB, 0x56, 0xC3, 0x96, 0xB3, 0xB6, 0x83, 0x53, 0x74, 0x36, 0x7E, 0x3C, 0x56, 0xFE, 0x37, 0x3E, 0x1F, 0x7F, 0x17, 0x9F, 0x0F, 0x9F, 0x04, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x08, 0x07, 0xBF, 0x09, 0x07, 0x9F, 0x04, 0x07, 0x7F, 0x03, 0x07, 0xBF, 0x08, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x0A, 0x07, 0xBF, 0x81, 0x07, 0xDF, 0x07, 0xBF, 0x03, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x81, 0x07, 0xBF, 0x07, 0xDF, 0x02, + 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x01, 0x0F, 0xBF, 0x8F, 0x1F, 0x9F, 0x27, 0x5E, 0x3F, 0x1D, 0x4E, 0xBC, 0x66, 0x5C, 0x7D, 0xFB, 0x8D, 0x7A, 0x94, 0xFA, 0x9C, 0x9A, 0xAC, 0x9B, 0xB4, 0xBE, 0xA4, 0x9F, 0x41, 0xB7, 0x21, 0x37, 0x19, 0x9B, 0x11, 0x9C, 0x01, 0x09, 0x9D, 0x9C, 0x01, 0x7E, 0x01, 0xBE, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x9F, 0x01, 0x7E, 0x01, 0x9F, 0x01, 0x7E, 0x01, 0x9E, 0x01, 0x7E, 0x11, 0xBE, 0x19, 0x7C, 0x31, 0x7B, 0x38, 0xB7, 0x8A, 0x3B, 0xA2, 0x5A, 0xAA, 0x38, 0xA9, 0xF6, 0xA1, 0xF5, 0x91, 0xF4, 0x92, 0xF8, 0x5A, 0x55, 0x3A, 0xF6, 0x45, 0x1D, 0x25, 0x7C, 0x1E, 0x1D, 0x1E, 0xFF, 0x17, 0x7F, 0x0F, 0x9F, 0x03, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x90, 0x07, 0xDF, 0x07, 0xBF, 0x0F, 0xBF, 0x17, 0x9F, 0x27, 0x7F, 0x3F, 0x1F, 0x5E, 0x7E, 0x86, 0x1E, 0x63, 0x55, 0x72, 0x52, 0x9A, 0x33, 0xBA, 0x33, 0xC1, 0xF3, 0xC9, 0xB3, 0xC9, 0x92, 0xD1, 0x93, 0xC9, 0x72, 0x01, 0xD1, 0x93, 0x01, 0xC9, 0x93, 0x01, 0xC9, 0xB4, 0x89, 0xC1, 0xB4, 0xB9, 0xF4, 0xB2, 0x76, 0x68, 0xF0, 0x59, 0x31, 0x51, 0x72, 0x49, 0x71, 0x41, 0x51, 0x39, 0x51, 0x41, 0x71, 0x02, 0x39, 0x71, 0x02, 0x31, 0x51, 0x82, 0x31, 0x31, 0x31, 0x30, 0x31, 0x31, 0x01, 0x31, 0x51, 0x04, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x10, 0x8C, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, + 0x30, 0x21, 0x31, 0x19, 0x12, 0x11, 0x33, 0x11, 0xB7, 0x09, 0xB8, 0x09, 0xB9, 0x09, 0xDA, 0x04, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x86, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0x96, 0x11, 0x96, 0x09, 0x34, 0x01, 0x09, 0x33, 0x03, 0x11, 0x12, 0x80, 0x11, 0x32, 0x09, 0x11, 0x12, 0x80, 0x10, 0xF2, 0x01, 0x11, 0x12, 0x83, 0x19, 0x12, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x02, 0x21, 0x31, 0x07, 0x21, 0x30, 0x8B, 0x19, 0x11, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x17, 0x22, 0x18, 0x19, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x09, 0x13, 0x01, 0x11, 0x12, 0x01, 0x19, 0x52, 0x80, 0x21, 0x52, 0x02, 0x21, 0x31, 0x82, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x03, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x32, 0x86, 0x11, 0x33, 0x11, 0x54, 0x09, 0x54, 0x11, 0x96, 0x09, 0xB7, 0x09, 0xF8, 0x09, 0xD9, 0x04, 0x01, 0xD9, 0x88, 0x01, 0xF9, 0x09, 0xF9, 0x09, 0xD9, 0x11, 0xD8, 0x19, 0xB6, 0x11, 0x54, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x05, 0x29, 0x10, 0x80, 0x29, 0x30, 0x05, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, + 0x30, 0x03, 0x29, 0x10, 0x02, 0x21, 0x10, 0x07, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x88, 0x29, 0x31, 0x21, 0x31, 0x18, 0xF1, 0x19, 0x11, 0x11, 0x33, 0x11, 0x54, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x10, 0x01, 0x21, 0x31, 0x93, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x11, 0x12, 0x11, 0x74, 0x11, 0x75, 0x11, 0xB7, 0x22, 0x38, 0x19, 0xD6, 0x09, 0x74, 0x11, 0x74, 0x11, 0x52, 0x11, 0x31, 0x19, 0x51, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x11, 0xD6, 0x02, 0x11, 0xF7, 0x82, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0xD7, 0x01, 0x19, 0xD7, 0x85, 0x19, 0xF7, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x02, 0x19, 0x31, 0x89, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x1A, 0x18, 0x1A, 0x39, 0x11, 0xF7, 0x11, 0x95, 0x11, 0x33, 0x19, 0x12, 0x19, + 0x11, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x11, 0x32, 0x11, 0x54, 0x19, 0x95, 0x01, 0x19, 0xB6, 0x82, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x01, 0x11, 0x33, 0x83, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x03, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x51, 0x01, 0x19, 0x31, 0x85, 0x19, 0x12, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x19, 0x95, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x52, 0x04, 0x19, 0x31, 0x02, 0x19, 0x32, 0x80, 0x19, 0x11, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x81, 0x11, 0x32, 0x19, 0x53, 0x01, 0x11, 0x32, 0x01, + 0x11, 0x12, 0x03, 0x11, 0x33, 0x81, 0x11, 0x32, 0x11, 0x12, 0x02, 0x11, 0x33, 0x80, 0x11, 0x53, 0x01, 0x11, 0x33, 0x80, 0x11, 0x32, 0x02, 0x11, 0x33, 0x81, 0x11, 0x32, 0x11, 0x12, 0x02, 0x11, 0x32, 0x81, 0x11, 0x33, 0x11, 0x32, 0x03, 0x11, 0x12, 0x03, 0x11, 0x32, 0x80, 0x19, 0x53, 0x03, 0x11, 0x12, 0x01, 0x19, 0x52, 0x01, 0x19, 0x31, 0x01, 0x19, 0x30, 0x88, 0x21, 0x51, 0x21, 0x52, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x54, 0x19, 0xD6, 0x21, 0xF6, 0x01, 0x21, 0xB4, 0x81, 0x19, 0x73, 0x19, 0x52, 0x01, 0x19, 0x31, 0x81, 0x21, 0x51, 0x21, 0x31, 0x05, 0x21, 0x30, 0x05, 0x29, 0x30, 0x01, 0x21, 0x30, 0x04, 0x29, 0x30, 0x04, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x04, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x08, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x07, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x06, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x09, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x17, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x0C, 0x29, 0x30, 0x81, 0x29, 0x50, 0x31, 0x50, 0x01, 0x31, 0x30, 0x01, 0x31, 0x51, 0x82, 0x31, 0x50, 0x31, 0x51, 0x31, 0x50, 0x02, 0x31, 0x51, 0x81, 0x39, 0x51, 0x39, 0x71, 0x01, 0x39, 0x72, 0x81, 0x41, 0x72, 0x41, 0x92, 0x01, 0x41, 0x72, 0x03, 0x41, 0x92, 0x01, + 0x49, 0x92, 0x81, 0x49, 0x91, 0x51, 0x91, 0x01, 0x51, 0x70, 0x83, 0x61, 0x6F, 0x79, 0xF1, 0xBB, 0x97, 0xD4, 0x59, 0x01, 0xDC, 0x79, 0x89, 0xDC, 0x99, 0xD4, 0x79, 0xD4, 0x78, 0xCC, 0x78, 0xBC, 0x77, 0xB4, 0x97, 0xAC, 0xB7, 0x9C, 0xB7, 0x84, 0x96, 0x7C, 0xB6, 0x01, 0x74, 0xD6, 0x01, 0x74, 0xF6, 0x01, 0x74, 0xD6, 0x88, 0x7C, 0xD7, 0x84, 0xF7, 0x8C, 0xF8, 0x8C, 0xD8, 0x94, 0xF8, 0x8C, 0xB7, 0x8C, 0x77, 0x8C, 0x56, 0x8C, 0x36, 0x02, 0x94, 0x37, 0x93, 0x94, 0x57, 0x94, 0x58, 0x94, 0x78, 0x94, 0xB9, 0x8C, 0x99, 0x8C, 0xB9, 0x84, 0x99, 0x7C, 0x78, 0x74, 0x78, 0x6C, 0x57, 0x6C, 0x78, 0x6C, 0x58, 0x64, 0x58, 0x6C, 0x78, 0x64, 0x57, 0x6C, 0x37, 0x6C, 0x16, 0x74, 0x37, 0x7C, 0x58, 0x84, 0x79, 0x01, 0x7C, 0x78, 0x87, 0x74, 0x58, 0x64, 0x58, 0x44, 0x57, 0x45, 0xDA, 0x4F, 0x3E, 0x37, 0x7E, 0x1F, 0x9E, 0x17, 0xBE, 0x01, 0x0F, 0xDF, 0x06, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x0B, 0x07, 0xFF, 0x8E, 0x07, 0xDF, 0x0F, 0xDF, 0x17, 0xBF, 0x1F, 0xBF, 0x27, 0x9F, 0x37, 0x5F, 0x47, 0x3E, 0x5F, 0x1E, 0x7E, 0xDE, 0x8D, 0x7A, 0x8B, 0xF6, 0xAB, 0x95, 0xBB, 0x56, 0xC3, 0x56, 0xCB, 0x36, 0x01, 0xD3, 0x36, 0x8C, 0xCB, 0x56, 0xC3, 0x76, 0xBB, 0x96, 0xB3, 0xD7, 0xA3, 0xF7, 0x84, 0x16, 0x64, 0xD7, 0x5E, 0x7C, 0x4F, 0x3E, 0x37, 0x7F, 0x1F, 0x9F, 0x17, 0xBF, 0x0F, 0xBF, 0x09, 0x07, 0xBF, 0x81, 0x07, 0x9F, 0x07, 0xBF, 0x02, 0x07, 0x9F, 0x05, 0x07, 0x7F, 0x04, 0x07, 0x5F, 0x80, 0x07, 0x3F, 0x01, 0x07, 0x5F, 0x80, 0x07, 0x3F, 0x02, 0x07, 0x5F, 0x01, 0x07, 0x7F, + 0x80, 0x07, 0x9F, 0x03, 0x07, 0xBF, 0x82, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x81, 0x07, 0xDF, 0x07, 0xBF, 0x03, 0x07, 0xDF, 0x07, 0x07, 0xBF, 0x80, 0x07, 0x9F, 0x0B, 0x07, 0xBF, 0x06, 0x07, 0xDF, 0x92, 0x07, 0xBF, 0x0F, 0x9E, 0x1F, 0x9E, 0x27, 0x5E, 0x3F, 0x3E, 0x57, 0x1E, 0x66, 0x7C, 0x7D, 0xFB, 0x8D, 0x7B, 0x9C, 0xFA, 0xA4, 0xBA, 0xAC, 0x9B, 0xAC, 0x9C, 0xAC, 0xBF, 0x31, 0x75, 0x21, 0x57, 0x19, 0x7A, 0x11, 0x7B, 0x11, 0x9C, 0x01, 0x09, 0x9D, 0x80, 0x09, 0x9E, 0x02, 0x01, 0x9E, 0x01, 0x01, 0x9F, 0x95, 0x09, 0x9F, 0x09, 0x9E, 0x11, 0x7D, 0x19, 0x7C, 0x29, 0x3B, 0x30, 0xD8, 0x61, 0x99, 0x9A, 0x7A, 0xAA, 0x59, 0xAA, 0x38, 0xAA, 0x57, 0x9A, 0x57, 0x8A, 0x77, 0x72, 0xB7, 0x4B, 0x16, 0x4C, 0xBB, 0x46, 0x1F, 0x36, 0x9F, 0x26, 0xFF, 0x1F, 0x7F, 0x0F, 0x9F, 0x0F, 0xDF, 0x03, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x8E, 0x0F, 0xDF, 0x17, 0xBF, 0x2F, 0x7F, 0x46, 0x7D, 0x76, 0x3E, 0x6C, 0x38, 0x6A, 0x52, 0x92, 0x32, 0xB2, 0x33, 0xC1, 0xD2, 0xC9, 0xB2, 0xC9, 0x92, 0xC9, 0x93, 0xD1, 0x93, 0xD1, 0xB3, 0x02, 0xC9, 0x93, 0x88, 0xC9, 0xB3, 0xC9, 0xB4, 0xC1, 0xD4, 0xB9, 0xF4, 0xB2, 0x76, 0x79, 0x72, 0x58, 0xF0, 0x59, 0x72, 0x49, 0x51, 0x02, 0x41, 0x71, 0x02, 0x39, 0x71, 0x80, 0x31, 0x51, 0x01, 0x39, 0x51, 0x03, 0x31, 0x51, 0x80, 0x31, 0x50, 0x05, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, + 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x87, 0x21, 0x30, 0x21, 0x31, 0x19, 0x12, 0x11, 0x33, 0x19, 0xD7, 0x11, 0xD9, 0x09, 0xD9, 0x09, 0xDA, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x80, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x86, 0x09, 0xB8, 0x09, 0xB7, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x95, 0x19, 0x95, 0x19, 0x75, 0x01, 0x19, 0x74, 0x81, 0x19, 0x94, 0x19, 0x74, 0x01, 0x19, 0x95, 0x85, 0x21, 0xB5, 0x19, 0xB5, 0x21, 0xD6, 0x21, 0xF6, 0x21, 0xD5, 0x21, 0xD6, 0x01, 0x21, 0xB5, 0x80, 0x21, 0xD5, 0x01, 0x21, 0xB5, 0x84, 0x19, 0x74, 0x19, 0x53, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x19, 0x31, 0x19, 0x51, 0x01, 0x11, 0x32, 0x81, 0x11, 0x54, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x8A, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x75, 0x09, 0x33, 0x09, 0x12, 0x08, 0xF1, 0x11, 0x11, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x32, 0x01, 0x19, 0x12, 0x80, 0x19, 0x32, 0x02, 0x19, 0x12, 0x80, 0x19, 0x32, 0x01, 0x11, 0x12, 0x01, 0x11, 0x33, 0x84, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0x01, 0xF9, 0x01, 0x01, 0xD9, 0x87, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xF9, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xD7, 0x11, 0x74, 0x01, 0x19, 0x32, 0x02, 0x21, 0x31, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, + 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x05, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x10, 0x04, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x04, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x04, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x86, 0x21, 0x31, 0x21, 0x11, 0x18, 0xF1, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0xB6, 0x02, 0x19, 0xF7, 0x84, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x32, 0x11, 0x12, 0x19, 0x11, 0x01, 0x19, 0x10, 0x03, 0x21, 0x30, 0x8A, 0x19, 0x30, 0x19, 0x11, 0x11, 0x12, 0x11, 0x54, 0x11, 0x75, 0x19, 0xF7, 0x22, 0x38, 0x11, 0x96, 0x11, 0x54, 0x19, 0x74, 0x11, 0x52, 0x03, 0x19, 0x31, 0x83, 0x11, 0x33, 0x11, 0x74, 0x11, + 0xB6, 0x12, 0x17, 0x01, 0x11, 0xF7, 0x81, 0x11, 0xD7, 0x09, 0x96, 0x01, 0x11, 0x96, 0x88, 0x11, 0xB7, 0x19, 0xD7, 0x19, 0xD8, 0x11, 0xD7, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x53, 0x19, 0x52, 0x19, 0x32, 0x01, 0x19, 0x31, 0x89, 0x19, 0x32, 0x11, 0x32, 0x11, 0x74, 0x11, 0xF7, 0x1A, 0x39, 0x11, 0xF8, 0x11, 0x96, 0x11, 0x54, 0x19, 0x32, 0x21, 0x31, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x86, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x53, 0x19, 0x54, 0x11, 0x53, 0x11, 0x33, 0x19, 0x33, 0x19, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, + 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x8A, 0x19, 0x53, 0x11, 0x53, 0x19, 0x95, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x74, 0x11, 0x53, 0x11, 0x12, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x02, 0x19, 0x31, 0x86, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x11, 0x01, 0x19, 0x32, 0x80, 0x19, 0x11, 0x01, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x32, 0x01, 0x11, 0x12, 0x83, 0x19, 0x32, 0x11, 0x12, 0x11, 0x32, 0x19, 0x32, 0x03, 0x11, 0x32, 0x02, 0x19, 0x32, 0x80, 0x11, 0x12, 0x01, 0x19, 0x12, 0x02, 0x19, 0x32, 0x82, 0x11, 0x12, 0x19, 0x32, 0x19, 0x12, 0x08, 0x19, 0x32, 0x80, 0x19, 0x11, 0x03, 0x19, 0x32, 0x84, 0x21, 0x52, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x19, 0x30, 0x01, 0x21, 0x51, 0x8A, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x21, 0xF6, 0x21, 0xF5, 0x21, 0xB3, 0x21, 0x93, 0x19, 0x52, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x05, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x04, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x12, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x09, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x06, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x09, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x19, 0x29, 0x30, 0x08, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x10, 0x29, 0x30, + 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x85, 0x31, 0x51, 0x31, 0x30, 0x29, 0x30, 0x31, 0x50, 0x31, 0x51, 0x31, 0x50, 0x02, 0x31, 0x51, 0x80, 0x39, 0x51, 0x03, 0x39, 0x71, 0x02, 0x41, 0x72, 0x03, 0x41, 0x92, 0x80, 0x49, 0x92, 0x01, 0x49, 0x91, 0x85, 0x49, 0x71, 0x49, 0x50, 0x51, 0x70, 0x59, 0x4E, 0x92, 0xB3, 0xD4, 0x79, 0x01, 0xDC, 0x79, 0x01, 0xDC, 0x78, 0x8A, 0xDC, 0x98, 0xD4, 0x78, 0xD4, 0x58, 0xC4, 0x57, 0xBC, 0x77, 0xB4, 0x77, 0xA4, 0x77, 0x8C, 0x55, 0x84, 0x75, 0x84, 0x96, 0x84, 0xB6, 0x02, 0x7C, 0xB6, 0x80, 0x84, 0xB6, 0x01, 0x84, 0x96, 0x81, 0x84, 0x76, 0x8C, 0x55, 0x01, 0x8C, 0x35, 0x04, 0x94, 0x36, 0x01, 0x94, 0x37, 0x80, 0x94, 0x57, 0x01, 0x8C, 0x58, 0x86, 0x84, 0x78, 0x7C, 0x78, 0x74, 0x78, 0x6C, 0x98, 0x64, 0x98, 0x5C, 0x98, 0x54, 0x97, 0x01, 0x44, 0x97, 0x87, 0x3C, 0x76, 0x34, 0x76, 0x34, 0x56, 0x34, 0x35, 0x34, 0x15, 0x3C, 0x36, 0x44, 0x57, 0x54, 0x98, 0x02, 0x5C, 0x78, 0x86, 0x54, 0x58, 0x44, 0x98, 0x3D, 0x9A, 0x46, 0xDD, 0x2F, 0x1D, 0x1F, 0x7E, 0x17, 0xBE, 0x01, 0x0F, 0xDF, 0x11, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x0F, 0xDF, 0x01, 0x17, 0xBF, 0x8C, 0x1F, 0x9F, 0x2F, 0x7E, 0x3F, 0x3E, 0x4F, 0x1D, 0x6E, 0xDD, 0x86, 0x5C, 0x8C, 0xB8, 0xA3, 0xB6, 0xB3, 0x76, 0xC3, 0x56, 0xCB, 0x36, 0xCB, 0x56, 0xD3, 0x56, 0x01, 0xCB, 0x56, 0x8B, 0xC3, 0x76, 0xB3, 0x96, 0xA3, 0xD6, 0x8B, 0xD6, 0x74, 0x57, 0x5D, 0x79, 0x56, 0xDD, 0x3F, 0x5E, 0x2F, 0x7E, 0x1F, 0x9F, 0x17, 0x9F, 0x0F, 0xBF, 0x08, 0x07, 0xBF, 0x04, 0x07, 0x9F, + 0x04, 0x07, 0x7F, 0x01, 0x07, 0x5F, 0x0A, 0x07, 0x3F, 0x81, 0x07, 0x5F, 0x07, 0x3F, 0x01, 0x07, 0x5F, 0x83, 0x07, 0x7F, 0x07, 0x9F, 0x0F, 0x9F, 0x0F, 0xBF, 0x0F, 0x07, 0xBF, 0x09, 0x07, 0x9F, 0x06, 0x07, 0xBF, 0x81, 0x07, 0xDF, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x92, 0x0F, 0xBF, 0x17, 0xBF, 0x1F, 0x9E, 0x2F, 0x5E, 0x47, 0x3E, 0x56, 0xBD, 0x6E, 0x1C, 0x7D, 0x9B, 0x95, 0x3B, 0xA4, 0xDA, 0xAC, 0xBA, 0xB4, 0xBB, 0xB4, 0xBC, 0x8B, 0xBC, 0x31, 0x55, 0x21, 0x58, 0x19, 0x7A, 0x11, 0x7B, 0x09, 0x9C, 0x01, 0x09, 0x9D, 0x01, 0x09, 0x9E, 0x01, 0x01, 0x9E, 0x02, 0x09, 0x9E, 0x93, 0x11, 0x7D, 0x19, 0x7D, 0x21, 0x5C, 0x28, 0xF9, 0x51, 0x38, 0x92, 0x3A, 0xA2, 0x59, 0xA2, 0x38, 0xA2, 0x37, 0x9A, 0x37, 0x8A, 0x57, 0x72, 0x96, 0x5B, 0x57, 0x4C, 0x7A, 0x45, 0xBD, 0x2E, 0x3E, 0x1E, 0xBE, 0x1F, 0x5F, 0x17, 0x9F, 0x0F, 0xDF, 0x02, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x8E, 0x0F, 0xDF, 0x27, 0x9F, 0x3E, 0xBE, 0x76, 0x9F, 0x85, 0x5C, 0x5A, 0x51, 0x92, 0x52, 0xB2, 0x13, 0xB9, 0xD2, 0xC9, 0xD3, 0xC9, 0xB2, 0xC9, 0xB3, 0xD1, 0xB3, 0xC9, 0x92, 0xD1, 0x93, 0x01, 0xC9, 0x93, 0x88, 0xD1, 0xB4, 0xC9, 0xB3, 0xC1, 0xD4, 0xB9, 0xF4, 0xB2, 0x35, 0x9A, 0x15, 0x58, 0xAF, 0x59, 0x72, 0x49, 0x51, 0x01, 0x41, 0x51, 0x80, 0x41, 0x71, 0x02, 0x39, 0x71, 0x83, 0x31, 0x51, 0x39, 0x51, 0x39, 0x71, 0x31, 0x71, 0x02, 0x31, 0x51, 0x80, 0x31, 0x50, 0x05, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, + 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x31, 0x19, 0x32, 0x19, 0x54, 0x19, 0xB7, 0x11, 0xF9, 0x09, 0xB9, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFB, 0x02, 0x01, 0xDA, 0x80, 0x09, 0xFA, 0x01, 0x01, 0xD9, 0x8A, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0xB8, 0x19, 0xD8, 0x21, 0xF8, 0x2A, 0x18, 0x2A, 0x38, 0x32, 0x38, 0x3A, 0x58, 0x32, 0x38, 0x32, 0x58, 0x02, 0x32, 0x37, 0x86, 0x32, 0x58, 0x32, 0x57, 0x32, 0x58, 0x2A, 0x17, 0x2A, 0x37, 0x21, 0xF6, 0x2A, 0x16, 0x02, 0x29, 0xF6, 0x01, 0x2A, 0x17, 0x84, 0x29, 0xF6, 0x21, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x02, 0x21, 0x31, 0x80, 0x29, 0x51, 0x04, 0x21, 0x30, 0x83, 0x21, 0x50, 0x21, 0x51, 0x19, 0x51, 0x19, 0x31, 0x01, 0x11, 0x32, 0x81, 0x11, 0x54, 0x19, 0x95, 0x01, 0x22, 0x17, 0x88, 0x19, 0xF7, 0x1A, 0x17, 0x11, 0xB6, 0x09, 0x54, 0x09, 0x12, 0x01, 0x12, 0x09, 0x12, 0x09, 0x33, 0x09, 0x32, 0x03, 0x11, 0x33, 0x80, 0x11, 0x53, 0x01, 0x11, 0x33, 0x81, 0x11, 0x53, 0x11, 0x33, 0x01, 0x11, 0x54, 0x86, 0x11, 0x75, 0x09, 0x76, 0x09, 0x97, 0x09, 0xD8, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x82, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x85, 0x0A, 0x1A, 0x09, 0xD8, 0x11, 0xB7, 0x19, 0x95, 0x11, 0x32, 0x19, 0x32, 0x01, 0x21, 0x31, 0x03, 0x21, 0x10, 0x82, 0x29, 0x30, + 0x21, 0x10, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x03, 0x29, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x07, 0x29, 0x10, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x92, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0x96, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x01, 0x19, 0x10, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, + 0x30, 0x01, 0x19, 0x11, 0x87, 0x11, 0x32, 0x11, 0x74, 0x11, 0x96, 0x1A, 0x18, 0x22, 0x18, 0x11, 0x75, 0x11, 0x54, 0x11, 0x53, 0x01, 0x19, 0x32, 0x88, 0x19, 0x52, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x11, 0x95, 0x1A, 0x18, 0x12, 0x18, 0x11, 0xF8, 0x11, 0xB7, 0x01, 0x11, 0x96, 0x95, 0x11, 0x75, 0x09, 0x55, 0x11, 0x96, 0x11, 0xB7, 0x19, 0xF8, 0x19, 0xD8, 0x11, 0xB7, 0x19, 0x96, 0x11, 0x54, 0x19, 0x33, 0x19, 0x12, 0x19, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x11, 0x54, 0x11, 0xD6, 0x1A, 0x18, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x54, 0x19, 0x12, 0x01, 0x21, 0x31, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x07, 0x29, 0x0F, 0x85, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x51, 0x21, 0x10, 0x02, 0x19, 0x11, 0x80, 0x19, 0x32, 0x01, 0x19, 0x52, 0x80, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, + 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x8A, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xF6, 0x11, 0xB6, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x02, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x19, 0x10, 0x80, 0x21, 0x31, 0x05, 0x19, 0x31, 0x01, 0x19, 0x11, 0x0B, 0x19, 0x31, 0x80, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x11, 0x04, 0x19, 0x31, 0x80, 0x19, 0x11, 0x09, 0x19, 0x31, 0x82, 0x21, 0x31, 0x19, 0x31, 0x21, 0x52, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xF6, 0x21, 0xB4, 0x21, 0x93, 0x21, 0x72, 0x19, 0x51, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x05, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x0B, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x08, 0x29, 0x30, 0x02, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x0A, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, + 0x29, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x18, 0x29, 0x30, 0x07, 0x21, 0x30, 0x13, 0x29, 0x30, 0x80, 0x29, 0x50, 0x05, 0x29, 0x30, 0x85, 0x31, 0x51, 0x31, 0x50, 0x31, 0x51, 0x31, 0x71, 0x31, 0x51, 0x31, 0x71, 0x03, 0x39, 0x71, 0x80, 0x39, 0x72, 0x03, 0x41, 0x72, 0x02, 0x41, 0x92, 0x01, 0x41, 0x71, 0x88, 0x49, 0x71, 0x49, 0x70, 0x51, 0x4F, 0x59, 0x4F, 0xA3, 0x55, 0xD4, 0x79, 0xD4, 0x58, 0xDC, 0x58, 0xDC, 0x78, 0x01, 0xDC, 0x58, 0x80, 0xDC, 0x78, 0x01, 0xD4, 0x58, 0x8A, 0xCC, 0x57, 0xBC, 0x57, 0xAC, 0x36, 0xA4, 0x56, 0x94, 0x35, 0x8C, 0x55, 0x94, 0x96, 0x8C, 0x96, 0x8C, 0xB6, 0x8C, 0xD6, 0x8C, 0xB6, 0x02, 0x8C, 0xB7, 0x01, 0x94, 0xB7, 0x02, 0x94, 0x97, 0x80, 0x94, 0x98, 0x02, 0x9C, 0x98, 0x81, 0x94, 0x98, 0x94, 0x58, 0x01, 0x8C, 0x58, 0x89, 0x84, 0x58, 0x7C, 0x78, 0x74, 0x98, 0x6C, 0x98, 0x64, 0xD9, 0x5D, 0x19, 0x5D, 0x9B, 0x5E, 0x1C, 0x5E, 0x9D, 0x5E, 0xDE, 0x03, 0x5E, 0xFE, 0x8F, 0x5E, 0xDE, 0x66, 0xBE, 0x5E, 0x5D, 0x4D, 0x7A, 0x4D, 0x3A, 0x4C, 0xF9, 0x55, 0x1A, 0x4C, 0x78, 0x3C, 0xB8, 0x35, 0x9A, 0x3E, 0xBD, 0x27, 0x1D, 0x1F, 0x9E, 0x17, 0xDF, 0x0F, 0xDF, 0x0F, 0xFF, 0x0D, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x80, 0x0F, 0xBF, 0x01, 0x17, 0xBF, 0x8A, 0x1F, 0x9F, 0x27, 0x7E, 0x2F, 0x5E, 0x3F, 0x1D, 0x56, 0xDD, 0x76, 0xBD, 0x85, 0xBB, 0x8B, 0xF6, 0xAB, 0x96, 0xBB, 0x56, 0xC3, 0x56, 0x02, 0xCB, 0x56, 0x8C, 0xCB, 0x55, 0xC3, 0x75, 0xC3, 0x76, 0xB3, 0x96, 0xA3, 0xB6, 0x83, 0x96, 0x74, 0x78, 0x5D, 0xDB, 0x56, 0xFE, 0x3F, + 0x5E, 0x27, 0x7F, 0x1F, 0x7F, 0x17, 0x7F, 0x01, 0x0F, 0x9F, 0x05, 0x07, 0xBF, 0x02, 0x07, 0x9F, 0x81, 0x07, 0x7F, 0x07, 0x9F, 0x01, 0x07, 0x7F, 0x04, 0x07, 0x5F, 0x03, 0x07, 0x3F, 0x0A, 0x07, 0x1F, 0x81, 0x07, 0x3F, 0x07, 0x1E, 0x01, 0x07, 0x3E, 0x82, 0x07, 0x5F, 0x07, 0x7F, 0x0F, 0x9F, 0x01, 0x07, 0x9F, 0x04, 0x07, 0xBF, 0x05, 0x07, 0x9F, 0x80, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x80, 0x07, 0x7F, 0x07, 0x07, 0x9F, 0x80, 0x07, 0x7F, 0x01, 0x07, 0x9F, 0x01, 0x07, 0xBF, 0x80, 0x07, 0x9F, 0x06, 0x07, 0xBF, 0x93, 0x07, 0x9F, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x9E, 0x2F, 0x7E, 0x3F, 0x3E, 0x56, 0xBD, 0x66, 0x3C, 0x7D, 0xBB, 0x8D, 0x5B, 0x9C, 0xFA, 0xAC, 0xDA, 0xB4, 0xBA, 0xB4, 0xBB, 0xB4, 0xBE, 0x62, 0xB8, 0x21, 0x36, 0x19, 0x5A, 0x11, 0x7B, 0x09, 0x7C, 0x01, 0x09, 0x9D, 0x81, 0x09, 0x9E, 0x01, 0x9E, 0x04, 0x09, 0x9E, 0x92, 0x09, 0x7D, 0x19, 0x7D, 0x21, 0x5C, 0x29, 0x1A, 0x40, 0xF8, 0x8A, 0x19, 0xA2, 0x59, 0xA2, 0x17, 0xA2, 0x37, 0x9A, 0x17, 0x8A, 0x37, 0x72, 0x96, 0x63, 0x58, 0x4C, 0x59, 0x45, 0x7C, 0x36, 0x3E, 0x1E, 0xBE, 0x1F, 0x5F, 0x17, 0xBF, 0x01, 0x0F, 0xDF, 0x80, 0x0F, 0xFF, 0x01, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x88, 0x0F, 0xDF, 0x1F, 0x9F, 0x36, 0xDE, 0x66, 0x9E, 0x85, 0xFD, 0x5A, 0xB2, 0x8A, 0x32, 0xB2, 0x33, 0xB9, 0xD3, 0x01, 0xC9, 0xB2, 0x82, 0xC9, 0x92, 0xD1, 0xB3, 0xC9, 0x92, 0x01, 0xD1, 0x93, 0x80, 0xC9, 0x73, 0x01, 0xC9, 0x93, 0x89, 0xC1, 0xB3, 0xB9, 0xD4, 0xB2, 0x15, 0xAA, 0x76, 0x60, 0xD0, 0x61, 0x52, 0x51, 0x51, + 0x49, 0x31, 0x41, 0x51, 0x41, 0x71, 0x01, 0x39, 0x71, 0x80, 0x39, 0x72, 0x06, 0x31, 0x51, 0x80, 0x31, 0x50, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x0B, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x8C, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x19, 0x11, 0x11, 0x33, 0x19, 0xB6, 0x11, 0xD8, 0x09, 0xB9, 0x09, 0xD9, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x95, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xB9, 0x09, 0xFA, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xD9, 0x11, 0xD8, 0x19, 0xF8, 0x21, 0xF8, 0x21, 0xF7, 0x21, 0xD7, 0x29, 0xF7, 0x32, 0x17, 0x29, 0xF7, 0x2A, 0x17, 0x29, 0xF6, 0x29, 0xD6, 0x21, 0xD6, 0x21, 0xB5, 0x02, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x81, 0x29, 0xF6, 0x21, 0xD5, 0x01, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x01, 0x19, 0xD6, 0x84, 0x21, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x02, 0x21, 0x31, 0x01, 0x29, 0x51, 0x03, 0x21, 0x30, 0x01, 0x21, 0x51, 0x85, 0x19, 0x11, 0x11, 0x31, 0x11, 0x12, 0x11, 0x53, 0x19, 0x95, 0x19, 0xF6, 0x01, 0x1A, 0x17, 0x82, 0x19, 0xF7, 0x11, 0xD6, 0x11, 0xB5, 0x01, 0x09, 0xB5, 0x80, 0x09, 0x95, 0x01, 0x11, 0xB6, 0x01, 0x09, 0x95, 0x82, 0x11, 0x96, 0x11, 0xB6, 0x11, 0x95, 0x04, 0x11, 0x96, 0x81, 0x09, 0x96, 0x09, 0x97, 0x01, 0x09, 0xB8, 0x80, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x85, 0x01, 0xD9, 0x09, 0xD9, 0x11, 0xF9, 0x19, 0xF7, 0x19, 0x95, 0x11, 0x12, 0x01, 0x19, + 0x11, 0x81, 0x19, 0x10, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x86, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x8D, 0x19, 0x10, 0x18, 0xF1, 0x19, 0x12, 0x11, 0x13, 0x11, 0x55, 0x19, 0xB6, 0x19, 0xF7, 0x22, 0x18, 0x22, 0x17, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x10, 0x80, 0x21, 0x10, + 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x19, 0x11, 0x82, 0x11, 0x33, 0x11, 0x74, 0x11, 0x96, 0x01, 0x1A, 0x18, 0x82, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x89, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x34, 0x11, 0xB6, 0x1A, 0x18, 0x12, 0x18, 0x11, 0xB7, 0x09, 0x96, 0x09, 0x76, 0x02, 0x09, 0x55, 0x88, 0x09, 0x35, 0x11, 0x75, 0x19, 0xB7, 0x11, 0xB7, 0x19, 0xD7, 0x19, 0x96, 0x19, 0x74, 0x19, 0x53, 0x19, 0x32, 0x02, 0x19, 0x11, 0x8A, 0x11, 0x32, 0x11, 0x53, 0x11, 0x96, 0x1A, 0x39, 0x1A, 0x18, 0x11, 0xD7, 0x11, 0x54, 0x19, 0x53, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x89, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x21, 0x11, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, + 0x19, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x86, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x01, 0x19, 0xF6, 0x01, 0x19, 0xD6, 0x80, 0x11, 0x74, 0x01, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x10, 0x19, 0x31, 0x01, 0x19, 0x30, 0x81, 0x21, 0x31, 0x19, 0x10, 0x02, 0x21, 0x31, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x19, 0x31, 0x08, 0x21, 0x31, 0x80, 0x19, 0x10, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x10, 0x02, 0x21, 0x31, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x89, 0x21, 0x51, 0x19, 0x51, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xF7, 0x21, 0xF6, 0x01, 0x19, 0x52, 0x02, 0x19, 0x31, 0x80, 0x19, 0x30, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x05, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x0B, 0x29, 0x2F, 0x07, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x06, 0x29, 0x30, 0x02, 0x21, 0x30, 0x06, 0x29, 0x30, + 0x0A, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x09, 0x29, 0x30, 0x84, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x06, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x10, 0x29, 0x30, 0x07, 0x21, 0x30, 0x1A, 0x29, 0x30, 0x81, 0x31, 0x50, 0x31, 0x51, 0x03, 0x31, 0x71, 0x03, 0x39, 0x71, 0x80, 0x39, 0x72, 0x03, 0x41, 0x72, 0x8A, 0x41, 0x92, 0x41, 0x72, 0x41, 0x71, 0x41, 0x91, 0x41, 0x71, 0x49, 0x70, 0x51, 0x6F, 0x61, 0xB0, 0xBC, 0x19, 0xD4, 0x9A, 0xD4, 0x79, 0x03, 0xDC, 0x78, 0x81, 0xDC, 0x58, 0xD4, 0x58, 0x01, 0xD4, 0x57, 0x85, 0xCC, 0x57, 0xC4, 0x57, 0xB4, 0x56, 0xB4, 0x76, 0xA4, 0x76, 0xA4, 0x96, 0x01, 0xA4, 0xD7, 0x80, 0x9C, 0xD7, 0x01, 0x9C, 0xF7, 0x98, 0xA5, 0x18, 0xA5, 0x19, 0xA5, 0x39, 0xAD, 0x5A, 0xA5, 0x5A, 0xAD, 0x7A, 0xAD, 0x5A, 0xA5, 0x5B, 0xA5, 0x3A, 0xA5, 0x1A, 0x9D, 0x1A, 0x94, 0xFA, 0x8C, 0xDA, 0x8C, 0xB9, 0x84, 0xB9, 0x7C, 0x99, 0x74, 0x98, 0x6C, 0xF9, 0x6D, 0x3A, 0x6D, 0x7B, 0x65, 0xDC, 0x5E, 0x1C, 0x5E, 0x9E, 0x56, 0xDE, 0x4E, 0xFE, 0x01, 0x47, 0x1E, 0x92, 0x3F, 0x3E, 0x3F, 0x1E, 0x3F, 0x1D, 0x3E, 0xFD, 0x46, 0xDD, 0x4E, 0xDD, 0x56, 0xBD, 0x56, 0x9E, 0x56, 0x3D, 0x56, 0x1C, 0x34, 0xD8, 0x24, 0xB7, 0x25, 0xBA, 0x2E, 0xDD, 0x27, 0x3D, 0x1F, 0x9E, 0x17, 0xDF, 0x0F, 0xDF, 0x0F, 0xFF, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x02, 0x0F, 0xDF, 0x01, 0x17, 0xBF, 0x8B, 0x1F, 0x9F, 0x27, 0x7E, 0x2F, 0x7E, 0x3F, 0x3E, 0x4F, + 0x1D, 0x66, 0xBD, 0x7E, 0x3C, 0x84, 0xB8, 0x9B, 0xB6, 0xB3, 0x76, 0xC3, 0x56, 0xC3, 0x36, 0x02, 0xCB, 0x56, 0x8C, 0xCB, 0x76, 0xC3, 0x75, 0xC3, 0x96, 0xB3, 0x76, 0x9B, 0x75, 0x7B, 0xB6, 0x74, 0xD9, 0x5E, 0x5C, 0x47, 0x1E, 0x37, 0x5E, 0x1F, 0x5E, 0x17, 0x5F, 0x17, 0x7F, 0x01, 0x0F, 0x9F, 0x01, 0x07, 0xBF, 0x05, 0x07, 0x9F, 0x03, 0x07, 0x7F, 0x01, 0x07, 0x5F, 0x05, 0x07, 0x3F, 0x02, 0x07, 0x1F, 0x80, 0x06, 0xFE, 0x01, 0x06, 0xFF, 0x81, 0x07, 0x1F, 0x06, 0xFE, 0x04, 0x06, 0xFF, 0x03, 0x06, 0xFE, 0x01, 0x07, 0x1E, 0x80, 0x07, 0x3F, 0x01, 0x07, 0x5F, 0x01, 0x07, 0x9F, 0x80, 0x07, 0xBF, 0x0B, 0x07, 0x9F, 0x06, 0x07, 0x7F, 0x07, 0x07, 0x9F, 0x06, 0x07, 0xBF, 0x92, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x9F, 0x27, 0x7E, 0x3F, 0x5E, 0x4E, 0xFD, 0x66, 0x7C, 0x75, 0xFC, 0x8D, 0x7B, 0x9D, 0x1A, 0xA4, 0xDA, 0xAC, 0xBA, 0xB4, 0xBB, 0xBC, 0xBC, 0xB4, 0xFF, 0x41, 0xD7, 0x21, 0x38, 0x11, 0x5B, 0x11, 0x7C, 0x01, 0x09, 0x7D, 0x06, 0x09, 0x9E, 0x93, 0x11, 0x7E, 0x19, 0x7D, 0x21, 0x5C, 0x29, 0x3A, 0x40, 0xF8, 0x81, 0xF9, 0xA2, 0x59, 0xA2, 0x18, 0xA2, 0x17, 0x91, 0xF6, 0x8A, 0x36, 0x7A, 0x96, 0x6B, 0x38, 0x4C, 0x39, 0x45, 0x5C, 0x36, 0x3E, 0x26, 0xDE, 0x1F, 0x5F, 0x17, 0xBF, 0x0F, 0xBF, 0x03, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x8E, 0x0F, 0xDF, 0x17, 0x9F, 0x2F, 0x1E, 0x56, 0xBE, 0x86, 0x7F, 0x63, 0x54, 0x82, 0x32, 0xA9, 0xF2, 0xB9, 0xD3, 0xC9, 0xD3, 0xC1, 0x92, 0xC9, 0xB3, 0xC9, 0x93, 0xD1, 0xB3, 0xD1, 0x93, 0x01, 0xC9, 0x73, 0x01, + 0xC9, 0x93, 0x8E, 0xC9, 0xD4, 0xC1, 0xD4, 0xB1, 0xF5, 0xAA, 0x76, 0x68, 0xF0, 0x61, 0x32, 0x51, 0x52, 0x49, 0x51, 0x41, 0x51, 0x41, 0x71, 0x41, 0x92, 0x39, 0x71, 0x39, 0x72, 0x31, 0x51, 0x31, 0x71, 0x02, 0x31, 0x51, 0x80, 0x31, 0x31, 0x01, 0x31, 0x50, 0x02, 0x29, 0x30, 0x83, 0x31, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x50, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x85, 0x19, 0x11, 0x19, 0x12, 0x19, 0x75, 0x19, 0xB7, 0x11, 0xD8, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x02, 0x01, 0xD9, 0x85, 0x09, 0xFA, 0x11, 0xF9, 0x11, 0xD9, 0x11, 0xB8, 0x11, 0xB7, 0x19, 0x97, 0x02, 0x19, 0x75, 0x80, 0x19, 0x74, 0x01, 0x19, 0x54, 0x86, 0x19, 0x74, 0x19, 0x53, 0x19, 0x54, 0x19, 0x74, 0x19, 0x54, 0x19, 0x74, 0x19, 0x53, 0x05, 0x19, 0x74, 0x81, 0x19, 0x95, 0x21, 0xB5, 0x01, 0x19, 0xD6, 0x86, 0x21, 0xF7, 0x19, 0xD6, 0x21, 0xD6, 0x11, 0x74, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x02, 0x21, 0x31, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x51, 0x21, 0x30, 0x03, 0x19, 0x31, 0x85, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xF7, 0x1A, 0x17, 0x01, 0x1A, 0x18, 0x80, 0x1A, 0x38, 0x02, 0x1A, 0x18, 0x80, 0x11, 0xF7, 0x01, 0x12, 0x18, 0x02, 0x11, 0xF7, 0x81, 0x11, 0xD7, 0x19, 0xF7, 0x02, 0x11, 0xD7, 0x01, 0x11, 0xF8, 0x82, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xFA, 0x01, 0x01, 0xD9, + 0x80, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x8D, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x09, 0xFA, 0x09, 0xF9, 0x11, 0xF8, 0x19, 0xD7, 0x11, 0x74, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x8C, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x05, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x86, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x19, 0x11, + 0x19, 0x31, 0x01, 0x10, 0xF1, 0x89, 0x10, 0xF2, 0x11, 0x13, 0x19, 0x55, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x01, 0x10, 0xF1, 0x80, 0x19, 0x10, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x85, 0x21, 0x10, 0x19, 0x10, 0x19, 0x32, 0x19, 0x53, 0x11, 0x75, 0x11, 0xB6, 0x01, 0x19, 0xF8, 0x82, 0x11, 0x95, 0x11, 0x54, 0x11, 0x32, 0x02, 0x19, 0x32, 0x85, 0x19, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD7, 0x1A, 0x18, 0x11, 0xF8, 0x01, 0x09, 0x76, 0x01, 0x09, 0x55, 0x03, 0x09, 0x34, 0x85, 0x11, 0x96, 0x19, 0xB7, 0x19, 0xD8, 0x19, 0xD7, 0x19, 0x95, 0x19, 0x54, 0x01, 0x19, 0x32, 0x8D, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x74, 0x09, 0x95, 0x11, 0xF8, 0x1A, 0x19, 0x11, 0xB7, 0x11, 0x54, 0x19, 0x33, 0x19, 0x31, 0x21, 0x11, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x03, + 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x11, 0x01, 0x21, 0x10, 0x80, 0x19, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0E, 0x29, 0x0F, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0xB5, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xF6, 0x19, 0xB5, 0x11, 0x73, 0x11, 0x12, 0x11, 0x32, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x51, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x07, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x50, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x88, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x11, 0xD6, 0x01, 0x1A, 0x17, 0x86, 0x19, 0xF6, 0x19, 0x95, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x19, 0x30, 0x06, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x29, 0x30, 0x84, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x07, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x08, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x84, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, + 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x29, 0x29, 0x30, 0x07, 0x21, 0x30, 0x19, 0x29, 0x30, 0x01, 0x31, 0x50, 0x83, 0x31, 0x51, 0x31, 0x71, 0x31, 0x51, 0x39, 0x71, 0x01, 0x31, 0x71, 0x04, 0x39, 0x71, 0x01, 0x41, 0x72, 0x03, 0x41, 0x71, 0x86, 0x41, 0x50, 0x49, 0x50, 0x51, 0x4F, 0x69, 0xF0, 0xD4, 0xBB, 0xDC, 0x9A, 0xDC, 0x79, 0x01, 0xDC, 0x78, 0x80, 0xDC, 0x58, 0x01, 0xDC, 0x78, 0x81, 0xD4, 0x58, 0xD4, 0x37, 0x01, 0xD4, 0x57, 0x85, 0xCC, 0x57, 0xCC, 0x77, 0xC4, 0x77, 0xC4, 0x97, 0xBC, 0x97, 0xB4, 0x96, 0x01, 0xB4, 0xB7, 0x02, 0xAC, 0xD7, 0x99, 0xAC, 0xF8, 0xA4, 0xF8, 0xA4, 0xF9, 0x9C, 0xF9, 0x9C, 0xD9, 0x94, 0xB8, 0x94, 0x98, 0x8C, 0x78, 0x8C, 0x79, 0x84, 0x99, 0x84, 0xB9, 0x84, 0xDA, 0x7C, 0xFA, 0x7D, 0x5B, 0x7D, 0x9C, 0x75, 0xDC, 0x76, 0x1D, 0x6E, 0x1C, 0x66, 0x3D, 0x5E, 0x5D, 0x56, 0x9D, 0x4E, 0xBD, 0x4E, 0xFE, 0x47, 0x1E, 0x3F, 0x3E, 0x37, 0x3E, 0x01, 0x37, 0x5E, 0x01, 0x2F, 0x5E, 0x80, 0x2F, 0x3E, 0x01, 0x37, 0x3D, 0x01, 0x3F, 0x1E, 0x01, 0x47, 0x1E, 0x01, 0x47, 0x3F, 0x84, 0x2E, 0xDD, 0x27, 0x3D, 0x27, 0xBF, 0x17, 0xBF, 0x17, 0xDF, 0x01, 0x0F, 0xFF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x03, 0x0F, 0xDF, 0x8D, 0x17, 0xBF, 0x17, 0xBE, 0x1F, 0xBF, 0x27, 0x9E, 0x2F, 0x9E, 0x37, 0x5E, 0x47, 0x3D, 0x56, 0xDD, 0x76, 0x5C, 0x84, 0xF9, 0x8B, 0xF6, 0xAB, 0x96, 0xBB, 0x56, 0xC3, 0x56, 0x01, 0xCB, 0x56, + 0x01, 0xCB, 0x55, 0x8E, 0xCB, 0x75, 0xC3, 0x95, 0xBB, 0xB6, 0xB3, 0x76, 0x8B, 0x55, 0x73, 0xF6, 0x6D, 0x5A, 0x5E, 0x9D, 0x3F, 0x1E, 0x2F, 0x3E, 0x1F, 0x5F, 0x17, 0x5F, 0x0F, 0x5F, 0x0F, 0x7F, 0x0F, 0x9F, 0x05, 0x07, 0x9F, 0x01, 0x07, 0x7F, 0x02, 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x80, 0x07, 0x5F, 0x02, 0x07, 0x3F, 0x03, 0x07, 0x1F, 0x03, 0x06, 0xFF, 0x80, 0x06, 0xFE, 0x02, 0x06, 0xFF, 0x81, 0x06, 0xDE, 0x06, 0xFF, 0x08, 0x06, 0xDE, 0x83, 0x06, 0xFF, 0x07, 0x1F, 0x07, 0x1E, 0x07, 0x3F, 0x02, 0x07, 0x7F, 0x06, 0x07, 0x9F, 0x81, 0x07, 0x7F, 0x07, 0x9F, 0x0D, 0x07, 0x7F, 0x04, 0x07, 0x9F, 0x01, 0x07, 0xBF, 0x81, 0x07, 0x9F, 0x07, 0xBF, 0x01, 0x0F, 0x9F, 0x93, 0x17, 0x9F, 0x27, 0x9F, 0x37, 0x5E, 0x47, 0x1E, 0x56, 0x9D, 0x6E, 0x1C, 0x85, 0xBB, 0x95, 0x5B, 0xA4, 0xFA, 0xAC, 0xBA, 0xB4, 0x9A, 0xBC, 0xBB, 0xBC, 0xDE, 0x9C, 0x1E, 0x39, 0xB7, 0x19, 0x59, 0x11, 0x5B, 0x09, 0x7C, 0x09, 0x7D, 0x09, 0x9D, 0x01, 0x09, 0x9E, 0x80, 0x01, 0x9E, 0x02, 0x09, 0x9E, 0x94, 0x09, 0x7E, 0x19, 0x7D, 0x21, 0x5C, 0x29, 0x3B, 0x38, 0xF8, 0x71, 0x98, 0x9A, 0x5A, 0xA2, 0x18, 0xA2, 0x17, 0x99, 0xF6, 0x8A, 0x16, 0x7A, 0x76, 0x6B, 0x58, 0x4B, 0xD8, 0x45, 0x1B, 0x36, 0x3D, 0x26, 0xBE, 0x1F, 0x5F, 0x17, 0x9F, 0x0F, 0xBF, 0x0F, 0xDF, 0x08, 0x07, 0xDF, 0x8E, 0x17, 0xBF, 0x2F, 0x3F, 0x4E, 0xDE, 0x7E, 0x9F, 0x63, 0xF6, 0x7A, 0x52, 0xAA, 0x13, 0xC2, 0x34, 0xC9, 0xF3, 0xC1, 0x92, 0xC9, 0x92, 0xC9, 0x72, 0xD1, 0x93, 0xC9, 0x73, 0xD1, 0x93, 0x01, 0xC9, 0x73, 0x8B, + 0xC9, 0x93, 0xC1, 0xB3, 0xC1, 0xD4, 0xB1, 0xF4, 0xBA, 0x97, 0x79, 0x52, 0x60, 0xF1, 0x59, 0x32, 0x49, 0x31, 0x49, 0x51, 0x41, 0x71, 0x41, 0x92, 0x01, 0x39, 0x71, 0x06, 0x31, 0x51, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x31, 0x50, 0x0F, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x8B, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x19, 0x32, 0x19, 0x74, 0x19, 0xB6, 0x11, 0x97, 0x09, 0xB8, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x85, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0x97, 0x11, 0x76, 0x11, 0x55, 0x11, 0x34, 0x01, 0x11, 0x13, 0x01, 0x11, 0x12, 0x80, 0x19, 0x12, 0x03, 0x11, 0x12, 0x82, 0x11, 0x32, 0x19, 0x32, 0x11, 0x32, 0x03, 0x19, 0x32, 0x01, 0x19, 0x53, 0x80, 0x19, 0x33, 0x01, 0x11, 0x33, 0x89, 0x11, 0x54, 0x11, 0x95, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x03, 0x21, 0x31, 0x04, 0x21, 0x30, 0x89, 0x21, 0x51, 0x21, 0x31, 0x21, 0x51, 0x19, 0x51, 0x19, 0x52, 0x11, 0x53, 0x19, 0x74, 0x19, 0xD6, 0x21, 0xF7, 0x22, 0x38, 0x01, 0x1A, 0x38, 0x81, 0x1A, 0x18, 0x1A, 0x38, 0x01, 0x1A, 0x18, 0x01, 0x1A, 0x38, 0x82, 0x12, 0x17, 0x1A, 0x18, 0x11, 0xF7, 0x01, 0x19, 0xF7, 0x84, 0x11, 0xF7, 0x19, 0xF7, 0x19, 0xF8, 0x11, 0xD8, 0x09, 0xB8, 0x01, 0x09, 0xD9, 0x83, 0x09, 0xFA, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x8B, 0x01, 0xB9, 0x09, 0xDA, 0x09, 0xD9, 0x11, 0xD8, 0x19, + 0xD7, 0x11, 0x74, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x04, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x07, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x11, 0x32, 0x01, 0x11, 0x12, 0x83, 0x08, 0xF2, 0x11, 0x13, 0x11, 0x75, 0x19, 0x96, 0x01, 0x21, 0xF7, 0x87, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x10, 0x19, 0x30, 0x07, 0x21, 0x30, 0x95, 0x21, 0x31, 0x19, 0x32, 0x11, + 0x53, 0x11, 0x75, 0x11, 0xB6, 0x19, 0xF7, 0x1A, 0x18, 0x11, 0x96, 0x11, 0x54, 0x11, 0x12, 0x19, 0x12, 0x21, 0x32, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x09, 0x54, 0x19, 0xF7, 0x1A, 0x19, 0x11, 0xF8, 0x09, 0x96, 0x09, 0x55, 0x09, 0x35, 0x01, 0x09, 0x54, 0x02, 0x09, 0x34, 0x80, 0x11, 0x75, 0x02, 0x19, 0xD7, 0x8F, 0x21, 0xB6, 0x19, 0x74, 0x19, 0x33, 0x19, 0x32, 0x19, 0x31, 0x19, 0x12, 0x19, 0x53, 0x11, 0x54, 0x09, 0x95, 0x11, 0xF8, 0x1A, 0x19, 0x19, 0xD7, 0x19, 0x75, 0x19, 0x33, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, + 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x11, 0x11, 0x8A, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xF6, 0x19, 0xD5, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x0D, 0x21, 0x30, 0x80, 0x21, 0x50, 0x0A, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x10, 0x07, 0x21, 0x30, 0x85, 0x21, 0x51, 0x11, 0x31, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x11, 0xD6, 0x01, 0x1A, 0x17, 0x83, 0x19, 0xF6, 0x19, 0xB5, 0x11, 0x53, 0x19, 0x31, 0x01, 0x21, 0x31, 0x06, 0x21, 0x30, 0x08, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x08, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x06, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x08, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x0B, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x18, 0x29, 0x30, 0x0B, 0x21, 0x30, 0x15, 0x29, 0x30, 0x03, 0x29, 0x50, 0x02, 0x31, 0x50, 0x80, 0x31, 0x71, 0x03, 0x31, 0x51, 0x04, 0x39, 0x71, 0x89, 0x41, 0x71, 0x41, 0x72, 0x41, 0x71, 0x39, 0x51, 0x41, 0x51, 0x41, 0x50, 0x41, 0x2F, 0x49, 0x0E, 0x8A, 0xD4, 0xD4, 0xBB, 0x01, 0xDC, 0x99, 0x02, 0xDC, + 0x78, 0x83, 0xDC, 0x58, 0xDC, 0x78, 0xD4, 0x58, 0xD4, 0x37, 0x02, 0xD4, 0x57, 0x81, 0xCC, 0x57, 0xCC, 0x77, 0x01, 0xC4, 0x77, 0x01, 0xBC, 0x77, 0x80, 0xBC, 0x97, 0x01, 0xB4, 0xB7, 0x85, 0xAC, 0xB7, 0xAC, 0xD8, 0xA4, 0xB8, 0x9C, 0x98, 0x94, 0x98, 0x8C, 0x98, 0x01, 0x84, 0x98, 0x93, 0x7C, 0x98, 0x74, 0x98, 0x6C, 0x78, 0x74, 0xD9, 0x74, 0xFA, 0x75, 0x7C, 0x75, 0x9C, 0x6D, 0xFD, 0x6E, 0x3D, 0x66, 0x5D, 0x5E, 0x7D, 0x56, 0x9D, 0x4E, 0xBD, 0x4E, 0xDD, 0x46, 0xFE, 0x3F, 0x1E, 0x3F, 0x3E, 0x37, 0x5E, 0x2F, 0x5E, 0x2F, 0x7E, 0x01, 0x27, 0x7E, 0x03, 0x27, 0x9E, 0x80, 0x27, 0x7E, 0x05, 0x2F, 0x7E, 0x83, 0x27, 0x9E, 0x1F, 0x9E, 0x1F, 0xBF, 0x17, 0xDF, 0x01, 0x0F, 0xDF, 0x81, 0x07, 0xDF, 0x07, 0xFF, 0x09, 0x07, 0xDF, 0x03, 0x0F, 0xDF, 0x80, 0x0F, 0xBF, 0x01, 0x17, 0xBF, 0x8E, 0x17, 0x9E, 0x1F, 0x9E, 0x27, 0x7E, 0x2F, 0x7E, 0x37, 0x7E, 0x3F, 0x5D, 0x56, 0xFD, 0x6E, 0x7C, 0x7D, 0x79, 0x8C, 0x16, 0xA3, 0xB6, 0xB3, 0x76, 0xC3, 0x56, 0xCB, 0x36, 0xCB, 0x56, 0x01, 0xCB, 0x55, 0x8D, 0xCB, 0x75, 0xC3, 0x75, 0xC3, 0x96, 0xBB, 0xD7, 0xA3, 0x56, 0x83, 0x76, 0x74, 0x98, 0x65, 0xDB, 0x4E, 0xBD, 0x37, 0x1E, 0x27, 0x3E, 0x1F, 0x5F, 0x17, 0x5F, 0x0F, 0x5F, 0x01, 0x0F, 0x7F, 0x02, 0x07, 0x9F, 0x03, 0x07, 0x7F, 0x02, 0x07, 0x5F, 0x03, 0x07, 0x3F, 0x03, 0x07, 0x1F, 0x05, 0x06, 0xFF, 0x82, 0x06, 0xDF, 0x06, 0xDE, 0x06, 0xDF, 0x04, 0x06, 0xDE, 0x0A, 0x06, 0xBE, 0x82, 0x06, 0xDE, 0x07, 0x1F, 0x07, 0x3F, 0x01, 0x07, 0x5F, 0x05, 0x0F, 0x7F, 0x0A, 0x07, + 0x7F, 0x80, 0x07, 0x5F, 0x04, 0x07, 0x7F, 0x08, 0x07, 0x9F, 0x93, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x9F, 0x2F, 0x7E, 0x3F, 0x3E, 0x4E, 0xBD, 0x66, 0x5C, 0x75, 0xFB, 0x8D, 0x7B, 0x9D, 0x1A, 0xAC, 0xBA, 0xB4, 0x9A, 0xBC, 0xBB, 0xBC, 0xBC, 0xB4, 0xBE, 0x7B, 0x3B, 0x21, 0x17, 0x11, 0x3A, 0x09, 0x5C, 0x09, 0x7D, 0x01, 0x09, 0x9D, 0x03, 0x09, 0x9E, 0x01, 0x09, 0x7E, 0x94, 0x11, 0x7E, 0x21, 0x7D, 0x29, 0x3B, 0x38, 0xF9, 0x61, 0x38, 0x92, 0x3A, 0xA2, 0x18, 0xA2, 0x17, 0x99, 0xD6, 0x8A, 0x16, 0x82, 0x76, 0x73, 0x37, 0x53, 0xD8, 0x44, 0xFA, 0x3E, 0x3E, 0x26, 0xDE, 0x1F, 0x5F, 0x17, 0x9F, 0x0F, 0xBF, 0x0F, 0xDF, 0x07, 0xBF, 0x07, 0x07, 0xDF, 0x8C, 0x17, 0xBF, 0x2F, 0x7F, 0x46, 0xFE, 0x6E, 0xBF, 0x7C, 0xFA, 0x72, 0x72, 0x99, 0xF2, 0xBA, 0x13, 0xC1, 0xD3, 0xC1, 0x92, 0xC9, 0x92, 0xC9, 0x93, 0xC9, 0x72, 0x02, 0xD1, 0x93, 0x01, 0xC9, 0x93, 0x8A, 0xC9, 0xD4, 0xC1, 0xD4, 0xB1, 0xD4, 0xBA, 0x76, 0x89, 0xB3, 0x58, 0xD0, 0x61, 0x52, 0x49, 0x31, 0x49, 0x51, 0x41, 0x71, 0x41, 0x72, 0x01, 0x39, 0x71, 0x05, 0x31, 0x51, 0x82, 0x31, 0x50, 0x29, 0x30, 0x29, 0x50, 0x08, 0x29, 0x30, 0x80, 0x29, 0x10, 0x07, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x10, 0x19, 0x32, 0x19, 0x54, 0x19, 0x75, 0x11, 0x97, 0x19, 0xF8, 0x11, 0xF9, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x88, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0x97, 0x11, + 0x76, 0x11, 0x55, 0x11, 0x34, 0x11, 0x33, 0x19, 0x13, 0x03, 0x19, 0x12, 0x88, 0x19, 0x11, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x19, 0x11, 0x19, 0x32, 0x19, 0x11, 0x04, 0x19, 0x32, 0x8D, 0x11, 0x12, 0x19, 0x33, 0x19, 0x53, 0x11, 0x54, 0x19, 0xB5, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x32, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x21, 0x31, 0x87, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x74, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xF6, 0x02, 0x19, 0xD6, 0x81, 0x19, 0xF6, 0x11, 0xD6, 0x01, 0x19, 0xD6, 0x01, 0x11, 0xB5, 0x84, 0x19, 0xD6, 0x11, 0xB5, 0x11, 0xB6, 0x19, 0xB6, 0x11, 0xB6, 0x01, 0x11, 0xB7, 0x85, 0x09, 0xB8, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xDA, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x88, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD9, 0x11, 0xD8, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x04, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8A, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, + 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x89, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x11, 0xB6, 0x11, 0x95, 0x01, 0x11, 0x75, 0x87, 0x19, 0xB6, 0x11, 0xB6, 0x21, 0xF7, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x34, 0x11, 0x12, 0x01, 0x11, 0x11, 0x80, 0x19, 0x11, 0x02, 0x21, 0x30, 0x91, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x19, 0x30, 0x19, 0x52, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x12, 0x19, 0x32, 0x01, 0x19, 0x31, 0x86, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD7, 0x1A, 0x39, 0x11, 0xF8, 0x09, 0x97, 0x01, 0x09, 0x55, 0x02, 0x09, 0x54, 0x82, 0x09, 0x33, 0x09, 0x34, 0x11, 0x75, 0x01, 0x19, 0xD7, 0x90, 0x19, 0xB6, + 0x21, 0xB6, 0x19, 0x74, 0x19, 0x53, 0x19, 0x32, 0x19, 0x11, 0x11, 0x11, 0x19, 0x32, 0x11, 0x54, 0x09, 0x75, 0x11, 0xF8, 0x19, 0xF8, 0x19, 0xB7, 0x19, 0x74, 0x19, 0x53, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x86, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x84, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x51, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x31, 0x11, 0x52, 0x11, 0x73, 0x19, 0xB5, 0x19, 0xD5, 0x19, 0xF6, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x74, 0x11, 0x33, 0x11, 0x12, + 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x29, 0x30, 0x05, 0x21, 0x30, 0x80, 0x29, 0x50, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x19, 0xF7, 0x1A, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x04, 0x21, 0x30, 0x08, 0x29, 0x30, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x03, 0x21, 0x30, 0x09, 0x29, 0x30, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x09, 0x21, 0x2F, 0x26, 0x29, 0x30, 0x0B, 0x21, 0x30, 0x15, 0x29, 0x30, 0x80, 0x31, 0x50, 0x01, 0x29, 0x50, 0x03, 0x31, 0x51, 0x80, 0x31, 0x50, 0x02, 0x31, 0x51, 0x80, 0x31, 0x71, 0x04, 0x39, 0x71, 0x01, 0x41, 0x71, 0x87, 0x39, 0x51, 0x41, 0x51, 0x41, 0x50, 0x41, 0x2F, 0x59, 0x90, 0xAB, 0xB7, 0xDC, 0xDB, 0xDC, 0x99, 0x02, 0xDC, 0x78, 0x02, 0xDC, 0x58, 0x01, 0xD4, 0x57, 0x80, 0xD4, + 0x37, 0x02, 0xD4, 0x57, 0x81, 0xCC, 0x57, 0xCC, 0x77, 0x02, 0xC4, 0x77, 0x8E, 0xBC, 0x77, 0xBC, 0x97, 0xB4, 0xB8, 0xB4, 0xD8, 0xAC, 0xB8, 0x9C, 0x77, 0x9C, 0x78, 0x8C, 0x78, 0x84, 0x98, 0x7C, 0xB8, 0x74, 0xD9, 0x75, 0x19, 0x6D, 0x5B, 0x75, 0xBC, 0x76, 0x5E, 0x01, 0x6E, 0x5E, 0x88, 0x66, 0x5D, 0x5E, 0x7E, 0x56, 0x7D, 0x56, 0x9D, 0x4E, 0xBD, 0x46, 0xDD, 0x46, 0xFE, 0x3F, 0x1E, 0x3F, 0x3E, 0x01, 0x37, 0x3E, 0x80, 0x2F, 0x5E, 0x02, 0x27, 0x7E, 0x82, 0x27, 0x9F, 0x1F, 0x9E, 0x1F, 0xBF, 0x03, 0x1F, 0x9E, 0x80, 0x1F, 0x7E, 0x04, 0x27, 0x9E, 0x87, 0x1F, 0x9E, 0x1F, 0xBE, 0x17, 0xBE, 0x17, 0xDF, 0x0F, 0xDE, 0x0F, 0xDF, 0x0F, 0xFF, 0x07, 0xFF, 0x09, 0x07, 0xDF, 0x83, 0x0F, 0xDF, 0x0F, 0xBF, 0x0F, 0xDF, 0x0F, 0xBF, 0x01, 0x17, 0xBF, 0x82, 0x1F, 0x9F, 0x1F, 0x9E, 0x27, 0x9E, 0x01, 0x2F, 0x7E, 0x97, 0x3F, 0x5D, 0x4E, 0xFC, 0x6E, 0x9C, 0x7D, 0x7A, 0x84, 0x37, 0x9B, 0xB6, 0xB3, 0x76, 0xBB, 0x56, 0xC3, 0x36, 0xCB, 0x56, 0xCB, 0x55, 0xD3, 0x55, 0xCB, 0x55, 0xCB, 0x76, 0xC3, 0x76, 0xBB, 0x96, 0xB3, 0xB7, 0x93, 0x35, 0x7B, 0xD7, 0x6D, 0x5A, 0x56, 0x5C, 0x3E, 0xDD, 0x2F, 0x1E, 0x27, 0x3E, 0x01, 0x17, 0x3F, 0x81, 0x0F, 0x5F, 0x0F, 0x7F, 0x04, 0x07, 0x7F, 0x04, 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x04, 0x07, 0x1F, 0x83, 0x06, 0xFE, 0x06, 0xFF, 0x06, 0xFE, 0x06, 0xFF, 0x01, 0x06, 0xFE, 0x80, 0x06, 0xFF, 0x02, 0x06, 0xDE, 0x80, 0x06, 0xDF, 0x04, 0x06, 0xBE, 0x80, 0x06, 0xDF, 0x01, 0x06, 0xBE, 0x03, 0x06, 0x9E, 0x03, 0x06, 0x7E, 0x84, 0x06, 0x9E, + 0x06, 0x7E, 0x06, 0x9E, 0x06, 0xDF, 0x06, 0xFF, 0x03, 0x07, 0x1F, 0x02, 0x07, 0x3F, 0x80, 0x07, 0x5F, 0x03, 0x07, 0x7F, 0x80, 0x07, 0x5F, 0x01, 0x07, 0x7F, 0x80, 0x07, 0x5F, 0x08, 0x07, 0x7F, 0x07, 0x07, 0x9F, 0x94, 0x0F, 0x9F, 0x1F, 0x9F, 0x27, 0x7E, 0x37, 0x3E, 0x46, 0xFD, 0x5E, 0xBC, 0x6E, 0x3C, 0x85, 0x9B, 0x95, 0x1A, 0xA4, 0xB9, 0xB4, 0x9A, 0xBC, 0x9A, 0xC4, 0x9B, 0xBC, 0xBC, 0xB4, 0xBF, 0x52, 0x19, 0x21, 0x59, 0x11, 0x5B, 0x09, 0x7C, 0x09, 0x7D, 0x09, 0x9D, 0x01, 0x09, 0x9E, 0x98, 0x09, 0xBE, 0x09, 0x9E, 0x01, 0x7E, 0x09, 0x7E, 0x11, 0x7E, 0x19, 0x7D, 0x29, 0x5C, 0x31, 0x1A, 0x59, 0x18, 0x91, 0xFA, 0xA2, 0x38, 0xA2, 0x17, 0x99, 0xF6, 0x92, 0x16, 0x82, 0x96, 0x7B, 0x38, 0x53, 0x97, 0x44, 0xBA, 0x3E, 0x3D, 0x2E, 0xDF, 0x1F, 0x3F, 0x17, 0x7F, 0x17, 0xBF, 0x0F, 0xBF, 0x07, 0xBF, 0x05, 0x07, 0xDF, 0x8C, 0x07, 0xBF, 0x07, 0xDF, 0x0F, 0xBF, 0x1F, 0x7F, 0x3F, 0x1F, 0x5E, 0xBE, 0x85, 0xFD, 0x6A, 0x72, 0x91, 0xD1, 0xBA, 0x34, 0xC1, 0xD3, 0xC1, 0xB2, 0xC9, 0x92, 0x01, 0xC9, 0x93, 0x82, 0xD1, 0x93, 0xC9, 0x93, 0xD1, 0x93, 0x01, 0xC9, 0x93, 0x88, 0xC9, 0xD4, 0xB9, 0x93, 0xB9, 0xD4, 0xB2, 0x35, 0xA2, 0x35, 0x60, 0xB0, 0x59, 0x11, 0x51, 0x31, 0x49, 0x51, 0x01, 0x41, 0x71, 0x82, 0x39, 0x71, 0x39, 0x92, 0x31, 0x71, 0x02, 0x31, 0x51, 0x01, 0x31, 0x31, 0x80, 0x31, 0x51, 0x01, 0x31, 0x50, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x05, + 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x8A, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x19, 0x11, 0x19, 0x53, 0x19, 0x74, 0x19, 0x75, 0x19, 0xB7, 0x19, 0xD8, 0x11, 0xF8, 0x02, 0x11, 0xF9, 0x84, 0x11, 0xF8, 0x19, 0xF9, 0x11, 0xD8, 0x11, 0x76, 0x11, 0x75, 0x01, 0x19, 0x74, 0x80, 0x19, 0x33, 0x01, 0x19, 0x32, 0x84, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x83, 0x19, 0x51, 0x19, 0x31, 0x21, 0x51, 0x21, 0x52, 0x01, 0x19, 0x31, 0x8B, 0x19, 0x11, 0x19, 0x31, 0x21, 0x51, 0x19, 0x31, 0x21, 0x52, 0x19, 0x32, 0x19, 0x12, 0x11, 0x12, 0x19, 0x54, 0x11, 0x54, 0x19, 0x95, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x86, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x13, 0x10, 0xF2, 0x18, 0xF1, 0x21, 0x11, 0x21, 0x52, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x11, 0x11, 0x10, 0xF1, 0x03, 0x11, 0x12, 0x81, 0x11, 0x33, 0x11, 0x32, 0x02, 0x11, 0x53, 0x04, 0x11, 0x32, 0x01, 0x11, 0x33, 0x01, 0x09, 0x34, 0x82, 0x09, 0x56, 0x09, 0x97, 0x09, 0x98, 0x01, 0x09, 0xD9, 0x84, 0x09, 0xDA, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x09, 0xFA, 0x87, 0x09, 0xF9, 0x11, 0xD7, 0x19, 0xD6, 0x11, 0x73, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x30, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, + 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x07, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x8A, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x0A, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x11, 0xF7, 0x11, 0xD7, 0x19, 0xF7, 0x01, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xD7, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x19, 0x30, 0x19, 0x31, 0x19, 0x53, 0x11, 0x75, 0x11, 0xB6, 0x1A, 0x18, 0x1A, 0x17, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x01, 0x19, 0x31, 0x89, 0x19, 0x12, 0x19, 0x33, 0x11, + 0x54, 0x11, 0xB6, 0x1A, 0x19, 0x11, 0xF8, 0x09, 0xB7, 0x09, 0x76, 0x09, 0x75, 0x01, 0x54, 0x03, 0x09, 0x54, 0x86, 0x11, 0x95, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x53, 0x19, 0x32, 0x01, 0x19, 0x11, 0x8A, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x96, 0x11, 0xF8, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0x75, 0x19, 0x33, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, + 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x51, 0x01, 0x19, 0x31, 0x8A, 0x11, 0x31, 0x11, 0x52, 0x11, 0x73, 0x11, 0x94, 0x19, 0xF6, 0x21, 0xF6, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x74, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x08, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x80, 0x29, 0x30, 0x06, 0x21, 0x30, 0x85, 0x21, 0x51, 0x19, 0x31, 0x11, 0x32, 0x09, 0x33, 0x09, 0x74, 0x11, 0xB6, 0x02, 0x19, 0xF7, 0x84, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x08, 0x21, 0x30, 0x04, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x30, 0x09, 0x29, 0x30, 0x04, 0x21, 0x30, 0x04, 0x29, 0x30, 0x07, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x26, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x03, 0x21, 0x30, 0x18, 0x29, 0x30, 0x80, 0x31, 0x50, 0x05, 0x31, 0x51, 0x80, 0x31, 0x50, 0x01, 0x31, 0x51, 0x02, 0x39, 0x71, 0x80, 0x39, 0x72, 0x02, 0x39, 0x71, 0x87, 0x39, 0x51, 0x39, 0x50, 0x41, 0x50, 0x41, 0x0E, 0x61, 0xD0, 0xBC, + 0x19, 0xD4, 0xBA, 0xDC, 0x99, 0x01, 0xDC, 0x78, 0x02, 0xDC, 0x58, 0x01, 0xD4, 0x58, 0x80, 0xD4, 0x57, 0x01, 0xD4, 0x37, 0x01, 0xD4, 0x57, 0x80, 0xCC, 0x57, 0x01, 0xCC, 0x77, 0x81, 0xC4, 0x78, 0xC4, 0x98, 0x01, 0xBC, 0x98, 0x8F, 0xBC, 0xD9, 0xAC, 0x98, 0x9C, 0x77, 0x94, 0x97, 0x8C, 0x98, 0x8C, 0xB8, 0x7C, 0xB8, 0x74, 0xF9, 0x7D, 0x9B, 0x7D, 0xFC, 0x76, 0x3D, 0x6E, 0x5D, 0x66, 0x9E, 0x5E, 0xBE, 0x56, 0xBE, 0x56, 0xDE, 0x01, 0x4E, 0xDE, 0x85, 0x46, 0xDE, 0x46, 0xFE, 0x3F, 0x1D, 0x3F, 0x3E, 0x37, 0x3E, 0x37, 0x5E, 0x01, 0x2F, 0x5E, 0x80, 0x2F, 0x7E, 0x01, 0x27, 0x7E, 0x02, 0x1F, 0x9E, 0x02, 0x17, 0x9E, 0x02, 0x1F, 0xBE, 0x80, 0x17, 0x9E, 0x02, 0x1F, 0x9E, 0x02, 0x1F, 0xBE, 0x01, 0x17, 0xBE, 0x80, 0x0F, 0xBE, 0x01, 0x0F, 0xDE, 0x80, 0x07, 0xDE, 0x02, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x04, 0x07, 0xDF, 0x01, 0x0F, 0xDF, 0x80, 0x0F, 0xBF, 0x02, 0x17, 0xBF, 0x81, 0x1F, 0xBF, 0x1F, 0x9E, 0x01, 0x27, 0x9E, 0x9C, 0x2F, 0x7E, 0x37, 0x5D, 0x3F, 0x3D, 0x4E, 0xFD, 0x66, 0x9C, 0x7D, 0xBA, 0x84, 0x77, 0x9B, 0xB6, 0xB3, 0x76, 0xBB, 0x36, 0xC3, 0x36, 0xCB, 0x36, 0xCB, 0x35, 0xCB, 0x55, 0xD3, 0x75, 0xCB, 0x75, 0xC3, 0x76, 0xC3, 0x96, 0xBB, 0x97, 0xA3, 0x56, 0x83, 0x56, 0x74, 0x79, 0x65, 0xFC, 0x4E, 0xBD, 0x36, 0xFD, 0x27, 0x1E, 0x1F, 0x3E, 0x17, 0x3E, 0x0F, 0x3F, 0x01, 0x0F, 0x5F, 0x02, 0x07, 0x7F, 0x81, 0x07, 0x5F, 0x07, 0x7F, 0x03, 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x04, 0x07, 0x1F, 0x01, 0x06, 0xFF, 0x03, 0x06, 0xFE, 0x80, 0x06, 0xDE, 0x02, + 0x06, 0xDF, 0x81, 0x06, 0xBE, 0x06, 0xBF, 0x01, 0x06, 0xBE, 0x07, 0x06, 0x9E, 0x82, 0x06, 0x7E, 0x06, 0x5E, 0x06, 0x7E, 0x05, 0x06, 0x5E, 0x01, 0x06, 0x7E, 0x80, 0x06, 0x9F, 0x01, 0x06, 0xBF, 0x01, 0x06, 0xDF, 0x01, 0x06, 0xFF, 0x81, 0x07, 0x1F, 0x0F, 0x3F, 0x01, 0x0F, 0x5F, 0x01, 0x07, 0x5F, 0x01, 0x07, 0x7F, 0x07, 0x07, 0x5F, 0x03, 0x07, 0x7F, 0x05, 0x07, 0x9F, 0x93, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x7E, 0x2F, 0x5E, 0x3F, 0x1D, 0x4E, 0xDD, 0x66, 0x7C, 0x7D, 0xDB, 0x8D, 0x3A, 0x9C, 0xB9, 0xAC, 0x99, 0xBC, 0x9A, 0xC4, 0x9A, 0xC4, 0x9B, 0xBC, 0xBD, 0x8B, 0x9D, 0x41, 0xD9, 0x19, 0x5A, 0x11, 0x5C, 0x09, 0x7C, 0x01, 0x09, 0x9D, 0x81, 0x09, 0x9E, 0x09, 0xBE, 0x01, 0x09, 0x9E, 0x95, 0x09, 0x7E, 0x11, 0x7E, 0x19, 0x7D, 0x21, 0x5D, 0x31, 0x1B, 0x50, 0xF8, 0x81, 0xDA, 0xA2, 0x39, 0xAA, 0x38, 0x99, 0xF6, 0x91, 0xF6, 0x8A, 0x76, 0x7B, 0x17, 0x5B, 0x97, 0x4C, 0x99, 0x46, 0x3E, 0x2E, 0xDF, 0x1F, 0x3F, 0x17, 0x5F, 0x17, 0xBF, 0x0F, 0xBF, 0x07, 0xBF, 0x07, 0x07, 0xDF, 0x91, 0x0F, 0xBF, 0x1F, 0x9F, 0x37, 0x1E, 0x56, 0xDE, 0x8E, 0x5F, 0x6A, 0xF4, 0x89, 0xF1, 0xB2, 0x33, 0xC1, 0xF3, 0xC1, 0xB3, 0xC9, 0xB2, 0xC9, 0x93, 0xC9, 0x72, 0xC9, 0x93, 0xD1, 0x93, 0xD1, 0xB3, 0xC9, 0x93, 0xC9, 0xB3, 0x01, 0xC1, 0xB3, 0x88, 0xB9, 0xD4, 0xB2, 0x15, 0xB2, 0x76, 0x68, 0xD0, 0x61, 0x11, 0x51, 0x51, 0x49, 0x51, 0x41, 0x71, 0x41, 0x72, 0x01, 0x39, 0x92, 0x84, 0x31, 0x71, 0x31, 0x51, 0x31, 0x71, 0x31, 0x51, 0x31, 0x31, 0x01, 0x31, 0x51, 0x80, 0x29, 0x30, + 0x01, 0x29, 0x50, 0x08, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x06, 0x29, 0x10, 0x80, 0x29, 0x30, 0x04, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x86, 0x19, 0x31, 0x19, 0x53, 0x19, 0x54, 0x19, 0x75, 0x11, 0x96, 0x19, 0xB7, 0x19, 0xD7, 0x02, 0x11, 0xB7, 0x87, 0x11, 0x96, 0x11, 0x95, 0x11, 0x74, 0x19, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x19, 0x31, 0x01, 0x21, 0x31, 0x82, 0x19, 0x31, 0x19, 0x10, 0x19, 0x31, 0x01, 0x19, 0x30, 0x85, 0x19, 0x31, 0x19, 0x10, 0x19, 0x30, 0x19, 0x31, 0x21, 0x31, 0x19, 0x10, 0x01, 0x21, 0x31, 0x81, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x32, 0x01, 0x11, 0x33, 0x88, 0x11, 0x74, 0x19, 0xB6, 0x22, 0x17, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x13, 0x11, 0x12, 0x18, 0xF1, 0x01, 0x21, 0x11, 0x81, 0x29, 0x31, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x31, 0x09, 0x19, 0x11, 0x80, 0x11, 0x11, 0x06, 0x19, 0x11, 0x01, 0x19, 0x12, 0x86, 0x11, 0x12, 0x11, 0x33, 0x11, 0x55, 0x11, 0x76, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xF9, 0x03, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x85, 0x09, 0xD8, 0x11, 0xF8, 0x19, 0xF7, 0x19, 0xB5, 0x19, 0x73, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x07, 0x29, 0x10, 0x81, 0x29, + 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x88, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0x95, 0x19, 0x74, 0x11, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x10, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x19, 0x10, 0x87, 0x19, 0x32, 0x11, 0x74, 0x11, 0xB6, 0x1A, 0x38, 0x1A, 0x18, 0x11, 0x95, 0x09, 0x54, 0x11, 0x33, 0x01, 0x19, 0x32, 0x86, 0x21, 0x52, 0x19, 0x11, 0x11, + 0x12, 0x11, 0x33, 0x11, 0x96, 0x19, 0xF8, 0x11, 0xF8, 0x01, 0x09, 0xB7, 0x8A, 0x09, 0x96, 0x09, 0x75, 0x09, 0x95, 0x01, 0x54, 0x09, 0x74, 0x11, 0x95, 0x11, 0xD6, 0x19, 0xF7, 0x11, 0xB6, 0x19, 0x95, 0x11, 0x53, 0x01, 0x19, 0x32, 0x02, 0x19, 0x11, 0x8A, 0x11, 0x12, 0x11, 0x33, 0x11, 0xD7, 0x22, 0x39, 0x19, 0xF8, 0x19, 0xB7, 0x19, 0x74, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x07, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x51, 0x8C, 0x19, 0x51, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, + 0x11, 0x73, 0x19, 0xB4, 0x19, 0xD5, 0x22, 0x17, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x86, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0xD6, 0x01, 0x19, 0xF7, 0x85, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x19, 0x30, 0x07, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x05, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x04, 0x29, 0x2F, 0x02, 0x21, 0x30, 0x09, 0x29, 0x30, 0x04, 0x21, 0x30, 0x05, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x24, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x14, 0x29, 0x30, 0x83, 0x31, 0x50, 0x29, 0x50, 0x31, 0x51, 0x31, 0x50, 0x01, 0x31, 0x51, 0x80, 0x31, 0x31, 0x01, 0x31, 0x51, 0x81, 0x31, 0x50, 0x31, + 0x71, 0x05, 0x39, 0x71, 0x88, 0x39, 0x51, 0x39, 0x50, 0x39, 0x2F, 0x41, 0x0E, 0x72, 0x52, 0xCC, 0xBA, 0xD4, 0x99, 0xDC, 0x99, 0xDC, 0x78, 0x02, 0xDC, 0x58, 0x02, 0xD4, 0x57, 0x82, 0xD4, 0x58, 0xD4, 0x37, 0xD4, 0x57, 0x01, 0xCC, 0x57, 0x02, 0xCC, 0x78, 0x8D, 0xC4, 0x78, 0xBC, 0x98, 0xBC, 0x99, 0xB4, 0xB9, 0xAC, 0xDA, 0x94, 0x58, 0x8C, 0x78, 0x84, 0xB8, 0x84, 0xF9, 0x7D, 0x39, 0x7D, 0x9A, 0x86, 0x3C, 0x7E, 0x7D, 0x76, 0x7D, 0x01, 0x66, 0x7D, 0x84, 0x5E, 0x9D, 0x56, 0xBD, 0x4E, 0xDD, 0x4E, 0xFD, 0x46, 0xFD, 0x01, 0x47, 0x1E, 0x01, 0x3F, 0x3E, 0x81, 0x37, 0x3E, 0x37, 0x5E, 0x01, 0x2F, 0x5E, 0x80, 0x2F, 0x7E, 0x02, 0x27, 0x7E, 0x02, 0x1F, 0x9E, 0x01, 0x17, 0x9E, 0x06, 0x17, 0xBE, 0x04, 0x1F, 0xBE, 0x02, 0x17, 0xBE, 0x02, 0x0F, 0xBE, 0x01, 0x0F, 0xDF, 0x01, 0x07, 0xDF, 0x83, 0x07, 0xBF, 0x0F, 0xDF, 0x0F, 0xBF, 0x0F, 0xDF, 0x02, 0x0F, 0xBF, 0x01, 0x17, 0xBF, 0x80, 0x1F, 0xBF, 0x01, 0x1F, 0x9E, 0x90, 0x27, 0x9E, 0x2F, 0x7E, 0x2F, 0x7D, 0x37, 0x5D, 0x47, 0x1C, 0x56, 0xFC, 0x6E, 0x9C, 0x7D, 0x79, 0x84, 0x57, 0x93, 0x96, 0xAB, 0x56, 0xBB, 0x36, 0xC3, 0x15, 0xCB, 0x56, 0xD3, 0x76, 0xCB, 0x35, 0xCB, 0x55, 0x01, 0xCB, 0x76, 0x8C, 0xC3, 0x96, 0xC3, 0x97, 0xB3, 0x56, 0x93, 0x35, 0x73, 0xB7, 0x6D, 0x1A, 0x5E, 0x9E, 0x3F, 0x1E, 0x2F, 0x3E, 0x27, 0x5E, 0x1F, 0x3E, 0x17, 0x3E, 0x0F, 0x3F, 0x01, 0x0F, 0x5F, 0x02, 0x07, 0x5F, 0x81, 0x07, 0x3F, 0x07, 0x5F, 0x03, 0x07, 0x3F, 0x02, 0x07, 0x1F, 0x02, 0x06, 0xFF, 0x01, 0x06, 0xFE, 0x80, 0x06, + 0xFF, 0x04, 0x06, 0xDE, 0x03, 0x06, 0xBE, 0x06, 0x06, 0x9E, 0x02, 0x06, 0x7E, 0x03, 0x06, 0x5E, 0x03, 0x06, 0x3E, 0x01, 0x06, 0x1E, 0x02, 0x06, 0x3E, 0x02, 0x06, 0x5F, 0x01, 0x06, 0x7F, 0x81, 0x06, 0x9F, 0x06, 0xBF, 0x01, 0x0E, 0xFF, 0x81, 0x0F, 0x3F, 0x07, 0x3F, 0x0B, 0x07, 0x5F, 0x03, 0x07, 0x7F, 0x05, 0x07, 0x9F, 0x94, 0x0F, 0x9F, 0x17, 0x9E, 0x27, 0x7E, 0x37, 0x3D, 0x47, 0x1D, 0x5E, 0xBC, 0x76, 0x1C, 0x85, 0x7A, 0x9C, 0xD9, 0xAC, 0x99, 0xBC, 0x99, 0xC4, 0x9A, 0xCC, 0x7A, 0xC4, 0x9C, 0xB4, 0x7E, 0x7A, 0xFB, 0x21, 0x38, 0x19, 0x5B, 0x11, 0x5C, 0x09, 0x7D, 0x09, 0x9D, 0x03, 0x09, 0x9E, 0x01, 0x09, 0x7E, 0x91, 0x11, 0x7D, 0x21, 0x5D, 0x31, 0x3B, 0x40, 0xD8, 0x79, 0xB9, 0xA2, 0x59, 0xAA, 0x38, 0xA1, 0xF6, 0x91, 0xF6, 0x8A, 0x56, 0x82, 0xF7, 0x5B, 0x57, 0x4C, 0x99, 0x46, 0x3E, 0x36, 0xDF, 0x27, 0x3F, 0x17, 0x5F, 0x0F, 0x9F, 0x01, 0x0F, 0xBF, 0x07, 0x07, 0xDF, 0x8C, 0x0F, 0xDF, 0x1F, 0x9F, 0x2F, 0x3F, 0x4E, 0xDE, 0x8E, 0xBF, 0x73, 0x76, 0x79, 0xD1, 0xAA, 0x13, 0xB9, 0xD3, 0xC1, 0xD3, 0xC9, 0xB3, 0xC9, 0x92, 0xC9, 0x93, 0x01, 0xC9, 0x72, 0x82, 0xD1, 0xB3, 0xC9, 0x93, 0xC9, 0xB3, 0x01, 0xC1, 0xB3, 0x8C, 0xB9, 0xF4, 0xB2, 0x15, 0xB2, 0x56, 0x70, 0xF1, 0x60, 0xF1, 0x59, 0x51, 0x49, 0x31, 0x49, 0x71, 0x41, 0x71, 0x41, 0x92, 0x39, 0x92, 0x31, 0x71, 0x31, 0x51, 0x01, 0x39, 0x71, 0x01, 0x31, 0x51, 0x02, 0x31, 0x50, 0x02, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x02, 0x29, 0x30, 0x02, 0x29, 0x10, 0x03, 0x29, 0x30, 0x82, + 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x20, 0xEF, 0x21, 0x10, 0x21, 0x11, 0x01, 0x19, 0x12, 0x81, 0x19, 0x33, 0x19, 0x74, 0x04, 0x19, 0x75, 0x8B, 0x19, 0x54, 0x19, 0x53, 0x11, 0x32, 0x19, 0x12, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x21, 0x31, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x31, 0x8D, 0x21, 0x32, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x19, 0x75, 0x21, 0xD6, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x34, 0x11, 0x13, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x11, 0x02, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x31, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x18, 0xF0, 0x03, 0x19, 0x10, 0x86, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x19, 0x10, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x01, 0x19, 0x32, 0x85, 0x19, 0x33, 0x19, 0x54, 0x19, 0x75, 0x19, 0xB7, 0x11, 0xB7, 0x11, 0xD8, 0x01, 0x11, 0xF9, 0x80, 0x09, 0xF8, 0x01, 0x11, 0xF9, 0x87, 0x12, 0x19, 0x1A, 0x18, 0x11, 0xB6, 0x11, 0x96, 0x19, 0x95, 0x19, 0x53, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x0B, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, + 0x02, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x11, 0x95, 0x11, 0x96, 0x02, 0x19, 0xB6, 0x86, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8A, 0x19, 0x10, 0x19, 0x52, 0x11, 0x54, 0x11, 0xB6, 0x19, 0xF7, 0x1A, 0x38, 0x11, 0xB6, 0x09, 0x54, 0x11, 0x53, 0x19, 0x32, 0x19, 0x52, 0x01, 0x19, 0x11, 0x84, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0xD7, 0x1A, 0x18, 0x01, 0x11, 0xD7, 0x8B, 0x09, 0xB7, 0x09, + 0x96, 0x09, 0x95, 0x09, 0x75, 0x09, 0x95, 0x11, 0xD6, 0x19, 0xF6, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0x74, 0x19, 0x33, 0x19, 0x32, 0x02, 0x19, 0x11, 0x8F, 0x19, 0x12, 0x11, 0x33, 0x11, 0x34, 0x19, 0xD7, 0x22, 0x39, 0x19, 0xF8, 0x19, 0xB7, 0x19, 0x74, 0x19, 0x33, 0x19, 0x31, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x86, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x19, 0x30, 0x84, 0x19, 0x31, 0x11, 0x31, 0x11, 0x52, 0x11, 0x73, 0x19, 0xB5, 0x01, 0x19, 0xD6, + 0x85, 0x21, 0xD6, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x53, 0x11, 0x12, 0x19, 0x12, 0x01, 0x19, 0x31, 0x82, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x06, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x85, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB5, 0x02, 0x19, 0xF7, 0x84, 0x11, 0x95, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x07, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x15, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x33, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x12, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x03, 0x31, 0x50, 0x04, 0x31, 0x51, 0x04, 0x39, 0x71, 0x01, 0x39, 0x51, 0x86, 0x39, 0x50, 0x39, 0x2F, 0x41, 0x0E, 0x7A, 0x93, 0xCC, 0xBA, 0xD4, 0xB9, 0xDC, 0x99, 0x01, 0xDC, 0x78, 0x81, 0xD4, 0x57, 0xD4, 0x58, 0x05, 0xD4, 0x57, 0x01, 0xCC, 0x57, 0x81, 0xCC, 0x78, 0xCC, 0x98, 0x01, 0xC4, 0x99, 0x92, 0xBC, 0x99, 0xAC, + 0x78, 0x9C, 0x78, 0x94, 0x78, 0x8C, 0x99, 0x7C, 0x78, 0x85, 0x19, 0x8D, 0x9B, 0x85, 0xFC, 0x86, 0x3C, 0x76, 0x5C, 0x6E, 0x9C, 0x66, 0x7C, 0x5E, 0x9C, 0x5E, 0xBD, 0x56, 0xBD, 0x56, 0xDD, 0x4E, 0xDD, 0x46, 0xFD, 0x01, 0x47, 0x1D, 0x01, 0x3F, 0x3D, 0x80, 0x3F, 0x3E, 0x01, 0x37, 0x5E, 0x02, 0x2F, 0x5E, 0x03, 0x27, 0x7E, 0x03, 0x1F, 0x9E, 0x01, 0x1F, 0xBE, 0x05, 0x17, 0xBE, 0x81, 0x1F, 0xBE, 0x1F, 0x9E, 0x03, 0x1F, 0xBE, 0x02, 0x17, 0xBE, 0x01, 0x17, 0xBF, 0x81, 0x0F, 0xBF, 0x17, 0xDF, 0x03, 0x0F, 0xBF, 0x04, 0x17, 0xBF, 0x81, 0x1F, 0xBF, 0x1F, 0x9F, 0x01, 0x27, 0x9E, 0x01, 0x2F, 0x7E, 0x8D, 0x37, 0x5D, 0x3F, 0x3D, 0x46, 0xFC, 0x5E, 0xDC, 0x76, 0x7C, 0x7D, 0x79, 0x84, 0x37, 0x93, 0x96, 0xAB, 0x56, 0xBB, 0x16, 0xC3, 0x15, 0xCB, 0x36, 0xCB, 0x56, 0xD3, 0x56, 0x01, 0xCB, 0x55, 0x8D, 0xCB, 0x76, 0xCB, 0x96, 0xC3, 0x96, 0xB3, 0x77, 0x9A, 0xF5, 0x83, 0x56, 0x6C, 0x58, 0x65, 0xBC, 0x4E, 0xBD, 0x37, 0x1E, 0x27, 0x3E, 0x1F, 0x3E, 0x17, 0x3E, 0x0F, 0x1E, 0x01, 0x0F, 0x3F, 0x81, 0x07, 0x3F, 0x07, 0x5F, 0x05, 0x07, 0x3F, 0x03, 0x07, 0x1F, 0x81, 0x06, 0xFF, 0x06, 0xFE, 0x01, 0x06, 0xFF, 0x80, 0x06, 0xFE, 0x04, 0x06, 0xDE, 0x80, 0x06, 0xDF, 0x03, 0x06, 0xBE, 0x81, 0x06, 0x9E, 0x06, 0xBE, 0x02, 0x06, 0x9E, 0x02, 0x06, 0x7E, 0x03, 0x06, 0x5E, 0x03, 0x06, 0x3E, 0x02, 0x06, 0x1E, 0x81, 0x05, 0xFE, 0x05, 0xFF, 0x01, 0x05, 0xFE, 0x80, 0x05, 0xFF, 0x03, 0x05, 0xFE, 0x01, 0x05, 0xFF, 0x86, 0x06, 0x1F, 0x0E, 0x5F, 0x06, 0x5F, 0x0E, 0xBF, 0x0E, + 0xDF, 0x0F, 0x1F, 0x07, 0x3F, 0x02, 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x05, 0x07, 0x5F, 0x03, 0x07, 0x7F, 0x04, 0x07, 0x9F, 0x8B, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x7E, 0x2F, 0x5E, 0x3F, 0x3D, 0x56, 0xDD, 0x6E, 0x5C, 0x7D, 0xBB, 0x95, 0x1A, 0xA4, 0xB9, 0xB4, 0x79, 0xC4, 0x7A, 0x01, 0xCC, 0x7A, 0x85, 0xC4, 0x7C, 0xAC, 0x3E, 0x41, 0x98, 0x21, 0x19, 0x19, 0x5B, 0x11, 0x7C, 0x01, 0x09, 0x7D, 0x03, 0x09, 0x9E, 0x92, 0x09, 0x7E, 0x11, 0x7D, 0x19, 0x7D, 0x29, 0x3C, 0x38, 0xD9, 0x69, 0x79, 0x9A, 0x5A, 0xAA, 0x38, 0xA1, 0xD6, 0x99, 0xF6, 0x92, 0x36, 0x82, 0xB6, 0x63, 0x57, 0x54, 0x79, 0x4E, 0x3E, 0x36, 0xDF, 0x27, 0x3F, 0x17, 0x5F, 0x0F, 0x9F, 0x01, 0x0F, 0xBF, 0x01, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x8B, 0x0F, 0xDF, 0x17, 0x9F, 0x2F, 0x5F, 0x46, 0xDE, 0x7E, 0xBF, 0x84, 0x59, 0x69, 0xD1, 0xA2, 0x54, 0xBA, 0x13, 0xC1, 0xD3, 0xC9, 0xB3, 0xC9, 0x93, 0x01, 0xC9, 0x72, 0x02, 0xC9, 0x93, 0x8D, 0xC9, 0xB3, 0xC1, 0xB3, 0xC1, 0xD3, 0xB9, 0xD4, 0xB1, 0xF4, 0xBA, 0x76, 0x89, 0x73, 0x60, 0xD0, 0x59, 0x51, 0x51, 0x51, 0x49, 0x51, 0x41, 0x71, 0x39, 0x71, 0x41, 0xB2, 0x01, 0x39, 0x51, 0x01, 0x39, 0x71, 0x01, 0x31, 0x31, 0x81, 0x31, 0x51, 0x31, 0x50, 0x01, 0x29, 0x50, 0x81, 0x29, 0x30, 0x29, 0x50, 0x05, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x06, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, + 0x21, 0x11, 0x19, 0x11, 0x01, 0x19, 0x32, 0x04, 0x19, 0x33, 0x01, 0x19, 0x12, 0x85, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x31, 0x01, 0x19, 0x11, 0x88, 0x19, 0x32, 0x11, 0x33, 0x19, 0x95, 0x21, 0xD6, 0x21, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x13, 0x01, 0x19, 0x11, 0x80, 0x21, 0x11, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x19, 0x12, 0x11, 0x33, 0x19, 0x75, 0x19, 0x95, 0x11, 0xB6, 0x11, 0x96, 0x02, 0x11, 0xD7, 0x88, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x75, 0x19, 0x74, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x06, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, + 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x87, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x88, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x11, 0x13, 0x80, 0x11, 0x12, 0x01, 0x11, 0x33, 0x81, 0x11, 0x32, 0x10, 0xF1, 0x02, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8B, 0x19, 0x10, 0x19, 0x31, 0x19, 0x73, 0x11, 0x95, 0x19, 0xF7, 0x1A, 0x18, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x11, 0x84, 0x11, 0x32, 0x11, 0x54, 0x11, 0xB6, 0x11, 0xF7, 0x11, 0xF8, 0x02, 0x11, 0xD7, 0x01, 0x09, 0x96, 0x85, 0x11, 0xB6, 0x11, 0xD6, 0x1A, 0x17, 0x19, 0xD6, + 0x19, 0xB5, 0x19, 0x54, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x8A, 0x19, 0x32, 0x11, 0x33, 0x11, 0x75, 0x19, 0xF7, 0x22, 0x39, 0x19, 0xD7, 0x19, 0x96, 0x11, 0x54, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x06, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x83, 0x11, 0x31, 0x11, 0x52, 0x11, 0x53, 0x19, + 0x95, 0x02, 0x19, 0xD6, 0x83, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x13, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x03, 0x21, 0x31, 0x15, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x04, 0x21, 0x31, 0x8D, 0x19, 0x32, 0x19, 0x52, 0x11, 0x53, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0x96, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x06, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x05, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x4D, 0x29, 0x30, 0x02, 0x29, 0x50, 0x02, 0x31, 0x50, 0x83, 0x31, 0x30, 0x31, 0x50, 0x31, 0x51, 0x39, 0x51, 0x03, 0x39, 0x71, 0x01, 0x39, 0x51, 0x01, 0x39, 0x30, 0x85, 0x39, 0x0F, 0x38, 0xEE, 0x82, 0xB3, 0xCC, 0x9A, 0xD4, 0x99, 0xDC, 0x98, 0x01, 0xDC, 0x78, 0x01, 0xD4, 0x58, 0x03, 0xD4, 0x57, 0x01, 0xCC, 0x57, 0x01, 0xCC, 0x77, 0x90, 0xCC, 0x78, 0xC4, 0x98, + 0xBC, 0xBA, 0xB4, 0xBA, 0xAC, 0xBA, 0x9C, 0x79, 0x8C, 0x99, 0x84, 0xB9, 0x85, 0x1A, 0x85, 0x7B, 0x96, 0x3D, 0x86, 0x3C, 0x7E, 0x3C, 0x76, 0x5C, 0x76, 0x7C, 0x6E, 0x7C, 0x66, 0x9C, 0x01, 0x5E, 0xBC, 0x84, 0x56, 0xBD, 0x56, 0xDD, 0x4E, 0xDD, 0x4E, 0xFD, 0x46, 0xFD, 0x01, 0x47, 0x1D, 0x02, 0x3F, 0x3D, 0x80, 0x37, 0x3E, 0x01, 0x37, 0x5E, 0x01, 0x2F, 0x5E, 0x02, 0x2F, 0x7E, 0x02, 0x27, 0x7E, 0x01, 0x27, 0x9F, 0x80, 0x27, 0x9E, 0x02, 0x1F, 0x9E, 0x80, 0x1F, 0xBE, 0x08, 0x1F, 0x9E, 0x80, 0x1F, 0xBE, 0x01, 0x1F, 0x9E, 0x01, 0x1F, 0xBF, 0x80, 0x17, 0x9F, 0x01, 0x17, 0xBF, 0x01, 0x1F, 0xBF, 0x04, 0x1F, 0x9F, 0x90, 0x27, 0x9F, 0x27, 0x9E, 0x27, 0x7E, 0x2F, 0x7E, 0x37, 0x7E, 0x37, 0x5D, 0x3F, 0x3D, 0x47, 0x1C, 0x56, 0xFC, 0x66, 0x9B, 0x7E, 0x3B, 0x74, 0x76, 0x83, 0xB5, 0x9B, 0x76, 0xAB, 0x56, 0xBB, 0x56, 0xC3, 0x56, 0x01, 0xCB, 0x56, 0x80, 0xCB, 0x55, 0x01, 0xCB, 0x35, 0x8E, 0xCB, 0x55, 0xCB, 0x76, 0xC3, 0x76, 0xBB, 0x77, 0xAB, 0x36, 0x8B, 0x36, 0x7C, 0x18, 0x65, 0x5B, 0x56, 0x5D, 0x3E, 0xFE, 0x2F, 0x3E, 0x27, 0x3E, 0x1F, 0x1E, 0x17, 0x1E, 0x0F, 0x1F, 0x01, 0x0F, 0x3F, 0x82, 0x07, 0x1F, 0x07, 0x3F, 0x07, 0x1F, 0x02, 0x07, 0x3F, 0x03, 0x07, 0x1F, 0x04, 0x06, 0xFF, 0x03, 0x06, 0xDE, 0x82, 0x06, 0xBE, 0x06, 0xDF, 0x06, 0xBE, 0x01, 0x06, 0xBF, 0x01, 0x06, 0xBE, 0x02, 0x06, 0x9E, 0x03, 0x06, 0x7E, 0x03, 0x06, 0x5E, 0x01, 0x06, 0x3E, 0x03, 0x06, 0x1E, 0x80, 0x05, 0xFE, 0x01, 0x05, 0xFF, 0x01, 0x05, 0xDE, 0x01, 0x05, 0xBE, 0x01, 0x05, + 0x9E, 0x01, 0x05, 0x7E, 0x01, 0x05, 0x5E, 0x01, 0x05, 0x3E, 0x86, 0x05, 0x5D, 0x05, 0x7E, 0x05, 0x9E, 0x05, 0xDE, 0x0E, 0x7F, 0x0E, 0xDF, 0x0F, 0x3F, 0x07, 0x07, 0x3F, 0x02, 0x07, 0x5F, 0x02, 0x07, 0x7F, 0x05, 0x07, 0x9F, 0x93, 0x0F, 0x9F, 0x17, 0x9E, 0x27, 0x7E, 0x37, 0x5E, 0x4E, 0xFD, 0x66, 0x9C, 0x75, 0xFB, 0x8D, 0x5A, 0xA4, 0xF9, 0xAC, 0x58, 0xC4, 0x59, 0xCC, 0x79, 0xCC, 0x7A, 0xCC, 0x7B, 0xBC, 0x7D, 0x7B, 0x1B, 0x31, 0x58, 0x21, 0x5A, 0x11, 0x7C, 0x09, 0x7C, 0x01, 0x09, 0x7D, 0x02, 0x09, 0x9E, 0x94, 0x09, 0x7E, 0x11, 0x7E, 0x19, 0x7D, 0x29, 0x5C, 0x38, 0xF9, 0x50, 0xF7, 0x9A, 0x5A, 0xAA, 0x38, 0xA1, 0xD6, 0x99, 0xF6, 0x92, 0x15, 0x82, 0x96, 0x6B, 0x37, 0x54, 0x59, 0x4E, 0x1E, 0x3E, 0xDF, 0x27, 0x1F, 0x1F, 0x5F, 0x0F, 0x7F, 0x0F, 0x9F, 0x0F, 0xBF, 0x03, 0x07, 0xBF, 0x03, 0x07, 0xDF, 0x8B, 0x0F, 0xDF, 0x17, 0x9F, 0x2F, 0x5F, 0x3E, 0xDE, 0x6E, 0x7E, 0x8D, 0x5C, 0x61, 0xF0, 0x9A, 0x33, 0xB2, 0x14, 0xB9, 0xF3, 0xC1, 0xB3, 0xC9, 0x92, 0x01, 0xC9, 0x93, 0x90, 0xC9, 0x73, 0xC9, 0x93, 0xC9, 0xB3, 0xC9, 0x93, 0xC1, 0x93, 0xC1, 0xD3, 0xB9, 0xD4, 0xB1, 0xD4, 0xB2, 0x35, 0x91, 0xB4, 0x60, 0xD0, 0x59, 0x31, 0x51, 0x51, 0x41, 0x51, 0x41, 0x71, 0x41, 0x72, 0x41, 0x92, 0x02, 0x39, 0x51, 0x83, 0x39, 0x71, 0x31, 0x51, 0x31, 0x31, 0x31, 0x51, 0x02, 0x31, 0x50, 0x02, 0x29, 0x50, 0x02, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, + 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x86, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x21, 0x52, 0x19, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x11, 0x01, 0x19, 0x11, 0x82, 0x11, 0x32, 0x19, 0x95, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x86, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x29, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x07, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x21, 0x11, 0x87, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x19, 0x33, 0x11, 0x33, 0x11, 0x54, 0x19, 0x75, 0x19, 0x95, 0x01, 0x19, 0x75, 0x01, 0x11, 0x54, 0x01, 0x11, 0x12, 0x01, 0x19, 0x11, 0x8D, 0x19, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, + 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x83, 0x19, 0x11, 0x18, 0xF1, 0x19, 0x11, 0x19, 0x12, 0x04, 0x19, 0x11, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x19, 0x10, 0x19, 0x11, 0x19, 0x53, 0x11, 0x74, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xD7, 0x11, 0x75, 0x01, 0x11, 0x33, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x85, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xD7, 0x01, 0x11, 0xD7, 0x81, 0x09, 0xB7, 0x11, 0xB7, 0x01, 0x11, 0xD7, 0x85, 0x19, 0xD7, 0x19, 0xF6, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x53, 0x19, 0x32, 0x02, 0x19, 0x31, 0x01, + 0x19, 0x32, 0x88, 0x11, 0x53, 0x11, 0x95, 0x1A, 0x18, 0x22, 0x39, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x92, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x0A, 0x21, 0x2F, 0x88, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x30, 0x01, 0x11, 0x11, 0x82, 0x11, 0x32, 0x11, 0x74, 0x19, 0xB5, 0x02, 0x19, 0xD6, 0x85, 0x19, + 0xB6, 0x11, 0x75, 0x11, 0x34, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x82, 0x21, 0x31, 0x19, 0x11, 0x21, 0x11, 0x0A, 0x21, 0x31, 0x82, 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x11, 0x09, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x32, 0x83, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x87, 0x19, 0x96, 0x11, 0x54, 0x11, 0x13, 0x19, 0x12, 0x19, 0x31, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x09, 0x29, 0x30, 0x09, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x4E, 0x29, 0x30, 0x02, 0x29, 0x50, 0x03, 0x31, 0x50, 0x80, 0x31, 0x51, 0x02, 0x39, 0x71, 0x02, 0x39, 0x51, 0x02, 0x31, 0x30, 0x88, 0x39, 0x0F, 0x38, 0xEE, 0x7A, 0x72, 0xCC, 0x9A, 0xD4, 0xB9, 0xD4, 0x98, 0xDC, 0x78, 0xD4, 0x57, 0xD4, 0x78, 0x01, 0xD4, 0x58, 0x01, 0xD4, 0x57, 0x02, 0xCC, 0x57, 0x91, 0xCC, 0x78, 0xC4, 0x78, 0xC4, 0x98, 0xBC, 0xB9, 0xAC, + 0x78, 0x9C, 0x58, 0x94, 0x99, 0x84, 0x78, 0x84, 0xB9, 0x8D, 0x9C, 0x8D, 0xDC, 0x8E, 0x1D, 0x86, 0x1D, 0x7E, 0x3C, 0x76, 0x3C, 0x6E, 0x5C, 0x6E, 0x7C, 0x6E, 0x9C, 0x01, 0x66, 0x9C, 0x01, 0x5E, 0xBC, 0x80, 0x56, 0xBC, 0x01, 0x56, 0xDD, 0x80, 0x4E, 0xDD, 0x01, 0x4E, 0xFD, 0x02, 0x47, 0x1D, 0x01, 0x3F, 0x1D, 0x04, 0x3F, 0x3E, 0x80, 0x37, 0x3E, 0x01, 0x37, 0x5E, 0x02, 0x2F, 0x5E, 0x80, 0x2F, 0x7E, 0x03, 0x2F, 0x9E, 0x05, 0x27, 0x9E, 0x80, 0x27, 0x7E, 0x06, 0x27, 0x9E, 0x01, 0x27, 0x9F, 0x01, 0x27, 0x9E, 0x80, 0x27, 0x9F, 0x04, 0x27, 0x7E, 0x81, 0x2F, 0x7E, 0x2F, 0x5E, 0x01, 0x37, 0x5E, 0x8C, 0x3F, 0x5E, 0x3F, 0x1D, 0x47, 0x1D, 0x56, 0xDC, 0x66, 0xBC, 0x76, 0x7C, 0x85, 0xDA, 0x7C, 0x76, 0x93, 0xB5, 0xAB, 0x76, 0xB3, 0x36, 0xBB, 0x36, 0xC3, 0x56, 0x01, 0xCB, 0x56, 0x80, 0xCB, 0x55, 0x01, 0xCB, 0x35, 0x01, 0xCB, 0x55, 0x8A, 0xCB, 0x76, 0xC3, 0x56, 0xAB, 0x36, 0x9B, 0x36, 0x83, 0xF8, 0x74, 0xFB, 0x5D, 0xFD, 0x4E, 0xDE, 0x37, 0x1E, 0x2F, 0x3F, 0x1F, 0x1E, 0x01, 0x16, 0xFE, 0x80, 0x0F, 0x1E, 0x01, 0x0F, 0x1F, 0x80, 0x07, 0x1E, 0x02, 0x0F, 0x1F, 0x80, 0x06, 0xFF, 0x01, 0x07, 0x1F, 0x80, 0x0E, 0xFF, 0x02, 0x06, 0xFF, 0x04, 0x06, 0xDF, 0x01, 0x06, 0xDE, 0x01, 0x06, 0xBE, 0x81, 0x06, 0xBF, 0x06, 0xBE, 0x01, 0x06, 0xBF, 0x02, 0x06, 0x9E, 0x04, 0x06, 0x7E, 0x02, 0x06, 0x5E, 0x02, 0x06, 0x3E, 0x01, 0x06, 0x1E, 0x02, 0x05, 0xFE, 0x02, 0x05, 0xDF, 0x01, 0x05, 0xBF, 0x86, 0x05, 0x9F, 0x05, 0x9E, 0x05, 0x7E, 0x05, 0x5E, 0x05, 0x3E, 0x05, + 0x1E, 0x04, 0xFE, 0x01, 0x04, 0xDE, 0x01, 0x04, 0xBD, 0x84, 0x04, 0xDD, 0x04, 0xFD, 0x05, 0x3D, 0x05, 0xBE, 0x06, 0x3F, 0x01, 0x0E, 0xFF, 0x82, 0x0F, 0x1F, 0x07, 0x1F, 0x07, 0x3F, 0x01, 0x07, 0x1F, 0x02, 0x07, 0x3F, 0x02, 0x07, 0x5F, 0x03, 0x07, 0x7F, 0x03, 0x07, 0x9F, 0x93, 0x0F, 0x7F, 0x17, 0x7E, 0x1F, 0x7E, 0x2F, 0x5E, 0x47, 0x1E, 0x56, 0xBD, 0x6E, 0x3C, 0x85, 0xBB, 0x9D, 0x1A, 0xAC, 0x79, 0xBC, 0x59, 0xCC, 0x59, 0xCC, 0x79, 0xCC, 0x5A, 0xC4, 0x7C, 0xAC, 0x1E, 0x49, 0xB7, 0x29, 0x59, 0x19, 0x5B, 0x11, 0x5C, 0x01, 0x09, 0x7D, 0x01, 0x09, 0x9E, 0x01, 0x09, 0x7E, 0x93, 0x11, 0x7E, 0x19, 0x7D, 0x21, 0x5C, 0x31, 0x1A, 0x48, 0xD7, 0x92, 0x3A, 0xAA, 0x38, 0xA1, 0xD6, 0xA1, 0xF6, 0x92, 0x15, 0x82, 0x76, 0x6B, 0x17, 0x5C, 0x39, 0x55, 0xDD, 0x3E, 0x9F, 0x2E, 0xFF, 0x17, 0x3F, 0x0F, 0x5F, 0x0F, 0x7F, 0x07, 0x9F, 0x05, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x8A, 0x17, 0x9F, 0x27, 0x5F, 0x3E, 0xFE, 0x66, 0x9E, 0x95, 0xFE, 0x62, 0x72, 0x92, 0x74, 0xA1, 0xF3, 0xB9, 0xD3, 0xC1, 0xD3, 0xC1, 0x93, 0x02, 0xC9, 0x93, 0x80, 0xC9, 0xB3, 0x01, 0xC9, 0x93, 0x8D, 0xC1, 0x93, 0xC1, 0xD3, 0xC1, 0xF4, 0xB9, 0xF4, 0xB2, 0x15, 0xA1, 0xF4, 0x68, 0xD0, 0x61, 0x51, 0x51, 0x51, 0x49, 0x51, 0x41, 0x51, 0x41, 0x72, 0x39, 0x72, 0x39, 0x71, 0x03, 0x39, 0x51, 0x81, 0x31, 0x31, 0x31, 0x51, 0x01, 0x31, 0x50, 0x01, 0x29, 0x50, 0x81, 0x29, 0x4F, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x04, 0x29, 0x10, 0x04, 0x29, 0x30, 0x80, 0x21, 0x10, 0x04, 0x29, 0x30, 0x01, 0x29, 0x10, + 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x19, 0x10, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x19, 0x11, 0x19, 0x12, 0x11, 0x32, 0x19, 0xB5, 0x01, 0x21, 0xD6, 0x85, 0x21, 0xF6, 0x21, 0xD5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x21, 0x11, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x33, 0x03, 0x19, 0x12, 0x02, 0x19, 0x11, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, + 0x01, 0x29, 0x10, 0x86, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x87, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x19, 0x10, 0x19, 0x31, 0x11, 0x52, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x19, 0xF8, 0x97, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x13, 0x19, 0x32, 0x19, 0x31, 0x21, 0x52, 0x19, 0x52, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x19, 0xD7, + 0x11, 0xB7, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xD7, 0x11, 0xB6, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x11, 0x8B, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x1A, 0x17, 0x22, 0x18, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x29, 0x50, 0x02, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x02, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x4F, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x06, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x51, 0x86, 0x19, 0x31, 0x11, 0x10, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x19, 0xB6, 0x01, 0x19, 0xD7, + 0x85, 0x19, 0xB6, 0x11, 0x75, 0x09, 0x33, 0x09, 0x13, 0x11, 0x32, 0x11, 0x12, 0x01, 0x10, 0xF1, 0x81, 0x19, 0x11, 0x10, 0xF1, 0x01, 0x19, 0x11, 0x03, 0x10, 0xF1, 0x02, 0x19, 0x11, 0x80, 0x11, 0x11, 0x0B, 0x19, 0x11, 0x01, 0x18, 0xF1, 0x01, 0x19, 0x11, 0x02, 0x19, 0x12, 0x82, 0x19, 0x32, 0x19, 0x12, 0x19, 0x11, 0x01, 0x19, 0x12, 0x82, 0x10, 0xF1, 0x11, 0x11, 0x19, 0x12, 0x01, 0x11, 0x12, 0x8E, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD7, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0x96, 0x11, 0x54, 0x11, 0x13, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x07, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x30, 0x0E, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x06, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x29, 0x30, 0x02, 0x21, 0x30, 0x08, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x17, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x2D, 0x29, 0x30, 0x02, 0x29, 0x50, 0x03, 0x31, 0x50, 0x01, 0x31, 0x51, 0x02, 0x39, 0x51, 0x81, 0x39, 0x50, 0x39, 0x51, 0x01, 0x39, 0x50, 0x85, 0x39, 0x2F, 0x40, 0xEE, 0x82, 0xB4, 0xCC, 0x9A, 0xD4, 0x99, 0xD4, 0x98, 0x02, 0xD4, 0x78, 0x80, 0xD4, 0x58, 0x02, 0xD4, 0x57, 0x80, 0xD4, 0x77, 0x01, 0xCC, 0x57, 0x8A, 0xC4, 0x77, 0xC4, 0x98, 0xBC, 0xB9, 0xB4, 0xDA, 0x9C, 0x58, 0x8C, 0x58, 0x84, + 0xB9, 0x84, 0xFA, 0x95, 0xFC, 0x96, 0x3D, 0x86, 0x1C, 0x01, 0x7E, 0x3C, 0x01, 0x76, 0x5C, 0x02, 0x6E, 0x7C, 0x03, 0x66, 0x9D, 0x80, 0x66, 0xBD, 0x02, 0x5E, 0xBD, 0x80, 0x5E, 0xDD, 0x02, 0x56, 0xDD, 0x81, 0x4E, 0xDD, 0x4E, 0xFD, 0x03, 0x4E, 0xDD, 0x80, 0x46, 0xBD, 0x01, 0x46, 0xDD, 0x81, 0x46, 0xFD, 0x3E, 0xFD, 0x02, 0x3F, 0x1E, 0x81, 0x37, 0x1E, 0x37, 0x3E, 0x03, 0x37, 0x3D, 0x80, 0x37, 0x5E, 0x03, 0x37, 0x7E, 0x82, 0x2F, 0x7E, 0x37, 0x7E, 0x2F, 0x5E, 0x01, 0x37, 0x7E, 0x0B, 0x2F, 0x5E, 0x02, 0x37, 0x5E, 0x8C, 0x3F, 0x3D, 0x47, 0x1D, 0x46, 0xFD, 0x4E, 0xDC, 0x56, 0x9C, 0x66, 0x9C, 0x76, 0x5C, 0x7D, 0x79, 0x7C, 0x76, 0x8B, 0xD5, 0x9B, 0x96, 0xAB, 0x56, 0xBB, 0x56, 0x01, 0xC3, 0x36, 0x01, 0xCB, 0x56, 0x80, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x80, 0xCB, 0x35, 0x01, 0xCB, 0x55, 0x8E, 0xC3, 0x56, 0xBB, 0x57, 0xA3, 0x36, 0x8B, 0xB7, 0x7C, 0xBA, 0x6D, 0xDC, 0x56, 0x9E, 0x46, 0xFE, 0x37, 0x1E, 0x26, 0xFE, 0x16, 0xBD, 0x16, 0xDE, 0x16, 0xFE, 0x0E, 0xFE, 0x0F, 0x1E, 0x01, 0x0F, 0x1F, 0x06, 0x0E, 0xFF, 0x01, 0x0E, 0xDF, 0x80, 0x06, 0xDE, 0x02, 0x06, 0xDF, 0x01, 0x06, 0xBF, 0x03, 0x06, 0xBE, 0x03, 0x06, 0x9E, 0x81, 0x06, 0x9F, 0x06, 0x9E, 0x01, 0x06, 0x7E, 0x05, 0x06, 0x5E, 0x02, 0x06, 0x3E, 0x02, 0x06, 0x1E, 0x81, 0x05, 0xFF, 0x05, 0xDE, 0x01, 0x05, 0xBE, 0x82, 0x05, 0xBF, 0x05, 0x9F, 0x05, 0x9E, 0x01, 0x05, 0x9F, 0x80, 0x05, 0x7F, 0x01, 0x05, 0x5F, 0x85, 0x05, 0x3F, 0x04, 0xFF, 0x04, 0xDE, 0x04, 0xBE, 0x04, 0x7D, 0x04, 0x5D, 0x02, + 0x04, 0x7D, 0x85, 0x04, 0xBD, 0x04, 0xFD, 0x05, 0x5D, 0x05, 0xFF, 0x0E, 0x9F, 0x0E, 0xDF, 0x01, 0x06, 0xFF, 0x80, 0x06, 0xFE, 0x02, 0x07, 0x1F, 0x02, 0x07, 0x3F, 0x01, 0x07, 0x5F, 0x07, 0x07, 0x7F, 0x8A, 0x0F, 0x7F, 0x1F, 0x7E, 0x2F, 0x7E, 0x3F, 0x3E, 0x4E, 0xDD, 0x66, 0x7C, 0x7D, 0xFB, 0x95, 0x3A, 0xA4, 0x79, 0xB4, 0x58, 0xC4, 0x59, 0x01, 0xCC, 0x59, 0x9F, 0xCC, 0x7B, 0xC4, 0x7D, 0x93, 0x5C, 0x31, 0x38, 0x21, 0x5B, 0x19, 0x5C, 0x11, 0x7D, 0x11, 0x9D, 0x09, 0x9E, 0x09, 0x7E, 0x01, 0x7E, 0x09, 0x9E, 0x11, 0x9E, 0x11, 0x7D, 0x21, 0x3C, 0x31, 0x1B, 0x40, 0xD8, 0x81, 0xD9, 0xA2, 0x59, 0xA1, 0xF7, 0xA1, 0xF6, 0x9A, 0x15, 0x82, 0x55, 0x72, 0xD6, 0x63, 0xF9, 0x55, 0x9D, 0x3E, 0x5E, 0x2E, 0xBF, 0x1F, 0x1F, 0x0F, 0x1F, 0x07, 0x3F, 0x07, 0x7F, 0x01, 0x07, 0x9F, 0x81, 0x07, 0xBF, 0x07, 0x9F, 0x02, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x8A, 0x17, 0xBF, 0x27, 0x7F, 0x36, 0xFE, 0x56, 0x7E, 0x96, 0x5F, 0x73, 0x95, 0x8A, 0x94, 0xA2, 0x34, 0xB2, 0x13, 0xC1, 0xD3, 0xC1, 0x92, 0x02, 0xC9, 0x93, 0x81, 0xD1, 0xD4, 0xC9, 0xB3, 0x01, 0xC1, 0x92, 0x8C, 0xC1, 0xB3, 0xC1, 0xD3, 0xC1, 0xF4, 0xB2, 0x14, 0xAA, 0x15, 0x68, 0xD0, 0x61, 0x51, 0x51, 0x72, 0x49, 0x51, 0x41, 0x52, 0x41, 0x72, 0x41, 0x92, 0x39, 0x72, 0x01, 0x39, 0x51, 0x81, 0x39, 0x72, 0x39, 0x51, 0x01, 0x31, 0x51, 0x02, 0x31, 0x50, 0x82, 0x29, 0x50, 0x29, 0x4F, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x04, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, + 0x29, 0x10, 0x02, 0x29, 0x30, 0x8B, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x31, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x8D, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x32, 0x19, 0x94, 0x21, 0xD6, 0x21, 0xF6, 0x22, 0x16, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x02, 0x19, 0x11, 0x82, 0x19, 0x31, 0x19, 0x12, 0x19, 0x11, 0x01, 0x19, 0x32, 0x82, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x10, 0x81, 0x29, 0x51, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, + 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x06, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x11, 0x86, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x50, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x8E, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x19, 0x53, 0x11, 0x74, 0x11, 0x95, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x52, 0x01, 0x19, 0x31, 0x85, 0x11, 0x12, 0x11, 0x33, 0x11, 0x53, 0x11, 0x95, 0x11, 0x75, 0x19, 0xB6, 0x01, 0x11, 0xB6, 0x85, 0x19, 0xB5, 0x11, 0x95, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x03, 0x19, + 0x31, 0x83, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x01, 0x22, 0x18, 0x84, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x29, 0x50, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x29, 0x30, 0x84, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x87, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x86, 0x19, 0x10, 0x19, 0x31, 0x11, 0x12, 0x11, 0x53, 0x11, 0x54, 0x11, 0x95, 0x19, 0xB6, 0x01, 0x19, 0xD7, 0x83, 0x11, 0xB6, 0x11, 0x75, 0x09, 0x54, 0x09, 0x34, 0x01, 0x09, 0x13, 0x02, 0x11, 0x13, + 0x02, 0x11, 0x12, 0x80, 0x09, 0x12, 0x03, 0x11, 0x12, 0x01, 0x11, 0x32, 0x10, 0x11, 0x12, 0x01, 0x11, 0x33, 0x81, 0x11, 0x12, 0x11, 0x33, 0x02, 0x11, 0x13, 0x02, 0x11, 0x33, 0x83, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB6, 0x01, 0x19, 0xF7, 0x86, 0x21, 0xF7, 0x19, 0x96, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x06, 0x29, 0x30, 0x82, 0x29, 0x50, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x50, 0x02, 0x29, 0x30, 0x02, 0x29, 0x50, 0x82, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x0D, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x06, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x03, 0x21, 0x30, 0x07, 0x29, 0x30, 0x05, 0x21, 0x30, 0x03, 0x29, 0x30, 0x01, 0x21, 0x30, 0x10, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x0A, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x21, 0x29, 0x30, 0x02, 0x29, 0x50, 0x03, 0x31, 0x50, 0x81, 0x31, 0x51, 0x39, 0x50, 0x02, 0x31, 0x50, 0x01, 0x39, 0x50, 0x87, 0x39, 0x30, 0x39, 0x2F, 0x41, 0x0E, 0x72, 0x52, 0xCC, 0x9A, 0xD4, 0xB9, 0xD4, 0x98, 0xDC, 0x98, 0x02, 0xD4, 0x78, 0x90, 0xD4, 0x57, 0xCC, 0x57, 0xCC, 0x78, 0xCC, 0x77, 0xCC, 0x78, 0xC4, 0x77, 0xC4, 0x78, 0xC4, 0xB9, 0xB4, 0x98, 0x94, 0x37, 0x8C, 0x37, 0x84, 0x98, 0x8D, 0x7B, 0x8D, 0xDC, 0x8E, 0x1D, 0x86, 0x1C, 0x7E, 0x3C, + 0x01, 0x76, 0x5C, 0x01, 0x6E, 0x5C, 0x82, 0x6E, 0x7C, 0x6E, 0x7D, 0x6E, 0x9D, 0x07, 0x6E, 0x7D, 0x80, 0x6E, 0x5D, 0x02, 0x6E, 0x7D, 0x81, 0x66, 0x7D, 0x6E, 0x9D, 0x01, 0x66, 0x9D, 0x86, 0x66, 0x7D, 0x66, 0x5C, 0x5E, 0x5C, 0x5E, 0x5D, 0x5E, 0x5C, 0x5E, 0x7D, 0x56, 0x9D, 0x01, 0x56, 0xBD, 0x80, 0x4E, 0xBD, 0x01, 0x4E, 0xDD, 0x83, 0x46, 0xDD, 0x46, 0xFD, 0x3E, 0xFD, 0x46, 0xFD, 0x01, 0x3E, 0xFD, 0x01, 0x3F, 0x1D, 0x02, 0x3F, 0x3D, 0x01, 0x3F, 0x1D, 0x01, 0x3F, 0x3D, 0x80, 0x3F, 0x1D, 0x01, 0x3E, 0xFD, 0x80, 0x3F, 0x1D, 0x01, 0x3F, 0x1E, 0x80, 0x3F, 0x3E, 0x04, 0x3F, 0x1E, 0x90, 0x47, 0x1E, 0x47, 0x1D, 0x4E, 0xFD, 0x56, 0xDD, 0x5E, 0x9C, 0x5E, 0x5B, 0x6E, 0x3B, 0x6D, 0xFA, 0x85, 0xDB, 0x84, 0xF8, 0x83, 0xF5, 0x9B, 0x95, 0xAB, 0x55, 0xBB, 0x56, 0xBB, 0x36, 0xC3, 0x36, 0xCB, 0x36, 0x01, 0xCB, 0x56, 0x92, 0xD3, 0x55, 0xD3, 0x35, 0xD3, 0x15, 0xD3, 0x35, 0xD3, 0x76, 0xCB, 0x56, 0xC3, 0x56, 0xBB, 0x36, 0xAB, 0x56, 0x9B, 0x97, 0x8C, 0x59, 0x75, 0x5B, 0x66, 0x3D, 0x4E, 0xBE, 0x3E, 0xDE, 0x36, 0xFF, 0x1E, 0x9D, 0x1E, 0xBE, 0x1E, 0xDE, 0x02, 0x16, 0xFE, 0x02, 0x16, 0xFF, 0x80, 0x16, 0xDE, 0x03, 0x16, 0xDF, 0x01, 0x0E, 0xDF, 0x01, 0x0E, 0xBF, 0x80, 0x0E, 0xBE, 0x01, 0x0E, 0xBF, 0x01, 0x06, 0xBF, 0x80, 0x0E, 0xBF, 0x05, 0x06, 0x9E, 0x02, 0x06, 0x7E, 0x03, 0x06, 0x5E, 0x03, 0x06, 0x3E, 0x03, 0x06, 0x1E, 0x01, 0x05, 0xFE, 0x82, 0x05, 0xDE, 0x05, 0xBE, 0x05, 0xBF, 0x02, 0x05, 0x9F, 0x02, 0x05, 0x7F, 0x85, 0x05, 0x5F, 0x05, 0x3F, 0x05, + 0x1F, 0x04, 0xDF, 0x04, 0xBE, 0x04, 0x7E, 0x01, 0x04, 0x5E, 0x81, 0x04, 0x3D, 0x04, 0x1D, 0x01, 0x04, 0x3D, 0x88, 0x04, 0x5D, 0x04, 0x7D, 0x04, 0x9D, 0x05, 0x3D, 0x0D, 0xFF, 0x0E, 0x9F, 0x0E, 0xDF, 0x0E, 0xFF, 0x06, 0xFE, 0x01, 0x06, 0xFF, 0x82, 0x06, 0xFE, 0x07, 0x1F, 0x07, 0x1E, 0x01, 0x07, 0x3F, 0x02, 0x07, 0x5F, 0x05, 0x07, 0x7F, 0x8A, 0x0F, 0x7F, 0x17, 0x7F, 0x27, 0x7E, 0x37, 0x3E, 0x4E, 0xFD, 0x5E, 0x7C, 0x76, 0x1C, 0x8D, 0x7B, 0x9C, 0x99, 0xAC, 0x38, 0xC4, 0x58, 0x01, 0xCC, 0x59, 0x85, 0xCC, 0x5A, 0xCC, 0x7B, 0xC4, 0x9F, 0x49, 0x98, 0x29, 0x39, 0x19, 0x5B, 0x01, 0x11, 0x7D, 0x81, 0x09, 0x7D, 0x09, 0x7E, 0x01, 0x09, 0x9E, 0x92, 0x11, 0x9E, 0x11, 0x7D, 0x19, 0x5C, 0x29, 0x3B, 0x38, 0xF8, 0x71, 0x98, 0x9A, 0x39, 0xA1, 0xF7, 0xA1, 0xF6, 0x99, 0xF5, 0x8A, 0x35, 0x72, 0xB6, 0x63, 0xB8, 0x55, 0x5C, 0x3D, 0xFE, 0x2E, 0x9F, 0x1E, 0xDF, 0x0E, 0xDF, 0x06, 0xFF, 0x01, 0x07, 0x7F, 0x03, 0x07, 0x9F, 0x80, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x8B, 0x0F, 0x9F, 0x27, 0x7F, 0x37, 0x1F, 0x56, 0xBE, 0x86, 0x5F, 0x7C, 0x79, 0x72, 0x73, 0x9A, 0x53, 0xB2, 0x13, 0xB9, 0xD3, 0xC1, 0x93, 0xC9, 0xB3, 0x01, 0xC9, 0x93, 0x8F, 0xD1, 0xB3, 0xC9, 0xB3, 0xC1, 0x72, 0xC1, 0x93, 0xC1, 0xB3, 0xC1, 0xD4, 0xB9, 0xD4, 0xB1, 0xF4, 0xAA, 0x35, 0x68, 0xD0, 0x61, 0x31, 0x51, 0x72, 0x49, 0x72, 0x41, 0x51, 0x41, 0x72, 0x41, 0x92, 0x01, 0x39, 0x72, 0x82, 0x39, 0x51, 0x39, 0x72, 0x39, 0x51, 0x01, 0x31, 0x51, 0x01, 0x31, 0x50, 0x01, 0x29, 0x50, 0x80, 0x29, 0x4F, + 0x01, 0x29, 0x50, 0x82, 0x29, 0x30, 0x29, 0x50, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x09, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xD6, 0x01, 0x22, 0x16, 0x86, 0x19, 0xB4, 0x19, 0x73, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x11, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x84, 0x21, 0x31, 0x21, 0x11, 0x21, 0x10, 0x19, 0x10, 0x21, 0x11, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x82, 0x19, 0x10, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x84, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, + 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x04, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x87, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x84, 0x19, 0x11, 0x19, 0x52, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x01, 0x19, 0xF7, 0x85, 0x19, 0xD7, 0x11, 0x74, 0x09, 0x12, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x11, 0x12, 0x84, 0x11, 0x33, 0x19, 0x53, 0x19, 0x54, 0x19, 0x74, + 0x11, 0x54, 0x01, 0x11, 0x33, 0x83, 0x11, 0x52, 0x19, 0x52, 0x19, 0x32, 0x19, 0x52, 0x01, 0x19, 0x31, 0x01, 0x11, 0x11, 0x8E, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x22, 0x17, 0x22, 0x18, 0x22, 0x17, 0x11, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x86, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x82, 0x29, 0x50, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x06, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, + 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0xD7, 0x11, 0xB7, 0x19, 0xD7, 0x03, 0x19, 0xB7, 0x80, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x80, 0x19, 0xB6, 0x02, 0x19, 0xD6, 0x06, 0x19, 0xB6, 0x85, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0xD6, 0x03, 0x19, 0xB6, 0x80, 0x19, 0x96, 0x07, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x81, 0x19, 0xF7, 0x19, 0xD6, 0x03, 0x19, 0xF7, 0x87, 0x1A, 0x17, 0x22, 0x38, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x53, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x4F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x50, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x50, 0x80, 0x29, 0x30, 0x04, 0x29, 0x50, 0x07, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x04, 0x29, 0x30, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x07, 0x29, 0x30, 0x06, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x13, 0x29, 0x30, 0x80, 0x21, 0x10, 0x11, 0x29, 0x30, 0x80, + 0x21, 0x2F, 0x15, 0x29, 0x30, 0x02, 0x29, 0x50, 0x01, 0x31, 0x50, 0x81, 0x31, 0x30, 0x31, 0x50, 0x01, 0x39, 0x51, 0x81, 0x39, 0x50, 0x31, 0x30, 0x02, 0x39, 0x30, 0x83, 0x39, 0x0F, 0x38, 0xEE, 0x82, 0xB3, 0xCC, 0xBA, 0x01, 0xD4, 0x99, 0x80, 0xD4, 0x98, 0x01, 0xD4, 0x78, 0x81, 0xD4, 0x57, 0xD4, 0x77, 0x02, 0xCC, 0x78, 0x8D, 0xC4, 0x78, 0xC4, 0x98, 0xC4, 0xB9, 0xBC, 0xDA, 0xA4, 0x58, 0x8C, 0x17, 0x84, 0x98, 0x95, 0x7B, 0x9E, 0x3E, 0x86, 0x1C, 0x7E, 0x1C, 0x7E, 0x3D, 0x76, 0x5C, 0x6E, 0x5C, 0x03, 0x6E, 0x7D, 0x80, 0x66, 0x7D, 0x01, 0x6E, 0x7D, 0x84, 0x6E, 0x5D, 0x76, 0x3D, 0x75, 0xFC, 0x75, 0xDC, 0x75, 0xBC, 0x02, 0x75, 0x9B, 0x02, 0x75, 0x7B, 0x05, 0x75, 0x5A, 0x01, 0x75, 0x7A, 0x83, 0x75, 0x9B, 0x6D, 0xBB, 0x75, 0xFC, 0x6E, 0x1C, 0x01, 0x6E, 0x3C, 0x84, 0x66, 0x5D, 0x66, 0x5C, 0x5E, 0x7D, 0x5E, 0x9D, 0x56, 0xBD, 0x04, 0x56, 0xDD, 0x81, 0x56, 0xFD, 0x4E, 0xFD, 0x01, 0x57, 0x1D, 0x03, 0x56, 0xFD, 0x80, 0x57, 0x1D, 0x01, 0x56, 0xFD, 0x82, 0x4E, 0xFD, 0x57, 0x1E, 0x4E, 0xFD, 0x02, 0x56, 0xFD, 0x01, 0x56, 0xDD, 0x8F, 0x56, 0xBD, 0x5E, 0xBD, 0x66, 0x9D, 0x66, 0x5C, 0x6D, 0xFB, 0x6D, 0x9A, 0x7D, 0x39, 0x7C, 0xB8, 0x84, 0x77, 0x83, 0xB5, 0x93, 0x95, 0xA3, 0x96, 0xB3, 0x76, 0xBB, 0x56, 0xC3, 0x56, 0xC3, 0x36, 0x01, 0xCB, 0x56, 0x81, 0xD3, 0x56, 0xD3, 0x55, 0x02, 0xD3, 0x35, 0x90, 0xD3, 0x55, 0xD3, 0x76, 0xCB, 0x56, 0xC3, 0x36, 0xB3, 0x15, 0xA3, 0x76, 0x94, 0x18, 0x8C, 0xFA, 0x75, 0xDC, 0x5E, 0x5D, 0x4E, 0x9E, 0x46, 0xBE, 0x2E, + 0x5D, 0x26, 0x7E, 0x1E, 0xBE, 0x1E, 0xDE, 0x1E, 0xFE, 0x01, 0x16, 0xFE, 0x01, 0x16, 0xDE, 0x83, 0x16, 0xDF, 0x16, 0xBE, 0x1E, 0xDF, 0x16, 0xBE, 0x02, 0x1E, 0xBF, 0x80, 0x16, 0xBE, 0x01, 0x16, 0x9E, 0x03, 0x0E, 0x9F, 0x80, 0x0E, 0x9E, 0x02, 0x06, 0x9E, 0x05, 0x06, 0x7E, 0x02, 0x06, 0x5E, 0x02, 0x06, 0x3E, 0x04, 0x06, 0x1E, 0x80, 0x05, 0xFE, 0x01, 0x05, 0xDE, 0x01, 0x05, 0xBE, 0x81, 0x05, 0x9E, 0x05, 0x9F, 0x02, 0x05, 0x7F, 0x86, 0x05, 0x5F, 0x05, 0x3F, 0x05, 0x1F, 0x04, 0xFF, 0x04, 0xDF, 0x04, 0x9E, 0x04, 0x7E, 0x01, 0x04, 0x5E, 0x01, 0x04, 0x3E, 0x05, 0x04, 0x1D, 0x84, 0x04, 0x3D, 0x04, 0x7D, 0x04, 0xDC, 0x0D, 0xDF, 0x16, 0x7F, 0x02, 0x0E, 0xDF, 0x01, 0x06, 0xDE, 0x80, 0x06, 0xFE, 0x01, 0x07, 0x1E, 0x02, 0x07, 0x3F, 0x02, 0x07, 0x5F, 0x02, 0x07, 0x7F, 0x01, 0x0F, 0x7F, 0x94, 0x17, 0x7F, 0x27, 0x7E, 0x37, 0x3E, 0x46, 0xFE, 0x56, 0xBD, 0x6E, 0x3C, 0x85, 0xBB, 0x94, 0xB8, 0xA4, 0x38, 0xBC, 0x58, 0xC4, 0x38, 0xCC, 0x38, 0xCC, 0x39, 0xCC, 0x3A, 0xC4, 0x7D, 0x93, 0x7D, 0x31, 0x37, 0x21, 0x5A, 0x19, 0x5C, 0x11, 0x7D, 0x09, 0x7D, 0x03, 0x09, 0x9E, 0x85, 0x11, 0x7D, 0x19, 0x5C, 0x29, 0x3B, 0x39, 0x19, 0x69, 0x78, 0x9A, 0x5A, 0x01, 0xA1, 0xF7, 0x8B, 0x99, 0xF6, 0x8A, 0x15, 0x7A, 0x96, 0x63, 0x78, 0x54, 0xDB, 0x3D, 0xBE, 0x2E, 0x3F, 0x1E, 0xBF, 0x0E, 0xBF, 0x06, 0xDF, 0x07, 0x3F, 0x07, 0x5F, 0x02, 0x07, 0x7F, 0x80, 0x07, 0x9F, 0x01, 0x07, 0xBF, 0x90, 0x07, 0xDF, 0x07, 0xBF, 0x0F, 0x9F, 0x1F, 0x5F, 0x2F, 0x1F, 0x4E, 0xBE, 0x76, + 0x7E, 0x85, 0x3B, 0x5A, 0x31, 0x8A, 0x12, 0xAA, 0x13, 0xB9, 0xF3, 0xC1, 0xD3, 0xC9, 0xB3, 0xC9, 0x93, 0xC9, 0x73, 0xD1, 0xB3, 0x02, 0xC9, 0x93, 0x88, 0xC1, 0x93, 0xC1, 0xD4, 0xB9, 0xB3, 0xB1, 0xF4, 0xB2, 0x76, 0x79, 0x11, 0x59, 0x11, 0x51, 0x51, 0x49, 0x51, 0x01, 0x41, 0x72, 0x80, 0x41, 0x92, 0x01, 0x39, 0x72, 0x80, 0x31, 0x31, 0x02, 0x39, 0x51, 0x81, 0x31, 0x51, 0x31, 0x50, 0x01, 0x29, 0x30, 0x01, 0x29, 0x50, 0x80, 0x29, 0x71, 0x01, 0x29, 0x51, 0x81, 0x29, 0x30, 0x29, 0x31, 0x01, 0x29, 0x30, 0x83, 0x21, 0x30, 0x29, 0x31, 0x21, 0x30, 0x29, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x85, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x06, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x08, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x51, 0x19, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x53, 0x11, 0x94, 0x19, 0xF6, 0x22, 0x37, 0x1A, 0x16, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, + 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x89, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, + 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x95, 0x02, 0x19, 0xF7, 0x87, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x32, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x52, 0x21, 0x72, 0x01, 0x19, 0x32, 0x85, 0x19, 0x11, 0x11, 0x12, 0x19, 0x32, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x19, 0x52, 0x01, 0x19, 0x32, 0x8A, 0x11, 0x11, 0x11, 0x12, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x22, 0x17, 0x22, 0x38, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x53, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x4F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x85, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x4F, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x83, 0x29, + 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x31, 0x01, 0x19, 0x31, 0x85, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x19, 0xF7, 0x08, 0x19, 0xF8, 0x05, 0x1A, 0x18, 0x80, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x80, 0x19, 0xF8, 0x02, 0x19, 0xF7, 0x87, 0x22, 0x18, 0x19, 0xF7, 0x22, 0x18, 0x1A, 0x18, 0x22, 0x18, 0x19, 0xF8, 0x1A, 0x18, 0x19, 0xF8, 0x03, 0x22, 0x18, 0x80, 0x1A, 0x18, 0x02, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xF8, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF7, 0x19, 0xF8, 0x02, 0x19, 0xF7, 0x88, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x32, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x29, 0x50, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, + 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x10, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x0D, 0x21, 0x30, 0x0E, 0x29, 0x30, 0x80, 0x21, 0x30, 0x08, 0x29, 0x30, 0x01, 0x21, 0x30, 0x12, 0x29, 0x30, 0x03, 0x31, 0x50, 0x80, 0x31, 0x51, 0x02, 0x31, 0x50, 0x01, 0x31, 0x30, 0x86, 0x39, 0x30, 0x39, 0x0F, 0x40, 0xEE, 0x7A, 0x93, 0xCC, 0xBA, 0xD4, 0xB9, 0xD4, 0x99, 0x03, 0xD4, 0x78, 0x80, 0xCC, 0x77, 0x01, 0xCC, 0x78, 0x01, 0xC4, 0x78, 0x8F, 0xBC, 0xB9, 0xB4, 0xB9, 0x9C, 0x37, 0x94, 0x57, 0x7C, 0x17, 0x9D, 0x7B, 0x95, 0xDC, 0x8E, 0x1C, 0x86, 0x1C, 0x7E, 0x3C, 0x76, 0x3C, 0x6E, 0x5C, 0x6E, 0x7D, 0x6E, 0x5D, 0x6E, 0x7D, 0x66, 0x7D, 0x01, 0x66, 0x9D, 0x01, 0x6E, 0x5D, 0x86, 0x76, 0x5E, 0x76, 0x1D, 0x75, 0xBC, 0x75, 0x5B, 0x75, 0x3B, 0x7D, 0x1B, 0x7D, 0x1A, 0x01, 0x85, 0x1A, 0x82, 0x84, 0xFA, 0x84, 0xDA, 0x8C, 0xDA, 0x03, 0x8C, 0xD9, 0x80, 0x8C, 0xB8, 0x01, 0x8C, 0xD8, 0x8B, 0x8C, 0xD9, 0x8C, 0xF9, 0x85, 0x19, 0x85, 0x3A, 0x85, 0x5A, 0x85, 0x7B, 0x7D, 0x7B, 0x7D, 0x9B, 0x75, 0x9B, 0x7D, 0xDB, 0x7E, 0x1C, 0x7E, 0x5D, 0x01, 0x7E, 0x7D, 0x84, 0x76, 0x5D, 0x76, 0x3C, 0x76, 0x5C, 0x76, 0x7D, 0x76, 0x9D, 0x05, 0x76, 0x7D, 0x80, 0x76, 0x9D, 0x05, 0x76, 0x7D, 0x01, 0x76, 0x5D, 0x8F, 0x76, 0x3C, 0x76, 0x3D, 0x75, 0xFC, 0x75, 0xDB, 0x75, 0x7A, 0x75, 0x19, 0x7C, 0xB8, 0x84, 0x77, 0x8C, 0x16, 0x93, 0xD6, 0x9B, 0x95, 0xA3, 0x55, 0xB3, 0x56, 0xBB, 0x56, 0xC3, 0x76, 0xC3, + 0x56, 0x02, 0xCB, 0x56, 0x80, 0xD3, 0x56, 0x03, 0xD3, 0x35, 0x8E, 0xD3, 0x55, 0xD3, 0x56, 0xCB, 0x56, 0xC3, 0x35, 0xBB, 0x15, 0xAB, 0x15, 0xA3, 0xB7, 0x94, 0x79, 0x85, 0x5B, 0x75, 0xFC, 0x66, 0x5D, 0x56, 0x7E, 0x3E, 0x1C, 0x36, 0x3D, 0x36, 0x7E, 0x01, 0x26, 0xBE, 0x82, 0x1E, 0xDE, 0x1E, 0xDF, 0x1E, 0xDE, 0x01, 0x1E, 0xBE, 0x01, 0x1E, 0x9E, 0x80, 0x1E, 0xBE, 0x01, 0x1E, 0x9E, 0x01, 0x26, 0x9E, 0x80, 0x1E, 0x9E, 0x01, 0x1E, 0x7E, 0x01, 0x16, 0x7E, 0x81, 0x16, 0x7F, 0x0E, 0x7F, 0x02, 0x0E, 0x7E, 0x83, 0x0E, 0x9F, 0x06, 0x7E, 0x06, 0x5E, 0x06, 0x7E, 0x02, 0x06, 0x5E, 0x04, 0x06, 0x3E, 0x01, 0x06, 0x1E, 0x03, 0x05, 0xFE, 0x80, 0x05, 0xDE, 0x01, 0x05, 0xBE, 0x01, 0x05, 0x9E, 0x80, 0x05, 0x7F, 0x01, 0x0D, 0x7F, 0x86, 0x0D, 0x5F, 0x05, 0x5F, 0x05, 0x3F, 0x04, 0xFE, 0x04, 0xDE, 0x04, 0x9E, 0x04, 0x7E, 0x01, 0x04, 0x5E, 0x01, 0x04, 0x3E, 0x01, 0x04, 0x1E, 0x80, 0x04, 0x1D, 0x01, 0x03, 0xFD, 0x02, 0x03, 0xDD, 0x87, 0x03, 0xDC, 0x04, 0x1C, 0x04, 0x3C, 0x05, 0x1D, 0x15, 0xFF, 0x16, 0x9F, 0x16, 0xBF, 0x0E, 0xBF, 0x01, 0x0E, 0xBE, 0x80, 0x06, 0xDE, 0x01, 0x06, 0xFE, 0x01, 0x07, 0x1F, 0x02, 0x07, 0x3F, 0x01, 0x07, 0x5F, 0x02, 0x0F, 0x7F, 0x95, 0x17, 0x7F, 0x17, 0x5E, 0x27, 0x5E, 0x2F, 0x3E, 0x3F, 0x1E, 0x4E, 0xBD, 0x66, 0x5C, 0x7D, 0xDB, 0x8C, 0xF9, 0xA4, 0x78, 0xB4, 0x58, 0xC4, 0x38, 0xCC, 0x38, 0xCC, 0x18, 0xCC, 0x39, 0xCC, 0x5B, 0xBC, 0x5E, 0x49, 0x76, 0x29, 0x59, 0x19, 0x5C, 0x11, 0x5C, 0x09, 0x7D, 0x02, 0x09, 0x9E, 0x94, 0x09, + 0x7E, 0x11, 0x7D, 0x11, 0x5C, 0x21, 0x5C, 0x39, 0x3A, 0x61, 0x58, 0x92, 0x3A, 0xA2, 0x18, 0xA1, 0xF7, 0x99, 0xD6, 0x92, 0x16, 0x7A, 0x76, 0x6B, 0x38, 0x54, 0x7B, 0x3D, 0x5D, 0x2D, 0xFE, 0x1E, 0x5F, 0x0E, 0x7F, 0x06, 0x9F, 0x06, 0xFF, 0x07, 0x3F, 0x01, 0x07, 0x7F, 0x02, 0x07, 0x9F, 0x02, 0x07, 0xBF, 0x8A, 0x0F, 0x9F, 0x1F, 0x5F, 0x37, 0x5F, 0x46, 0xDE, 0x66, 0x7E, 0x8D, 0xFE, 0x5A, 0x92, 0x82, 0x53, 0xA2, 0x33, 0xB9, 0xF3, 0xC1, 0xB3, 0x01, 0xC9, 0x93, 0x01, 0xC9, 0x73, 0x01, 0xC9, 0x93, 0x89, 0xC1, 0x92, 0xC1, 0x93, 0xC1, 0xD3, 0xC1, 0xD4, 0xB9, 0xF4, 0xB2, 0x35, 0x79, 0x31, 0x58, 0xF0, 0x59, 0x72, 0x49, 0x51, 0x02, 0x41, 0x72, 0x01, 0x39, 0x72, 0x03, 0x39, 0x51, 0x01, 0x31, 0x51, 0x01, 0x29, 0x30, 0x81, 0x29, 0x50, 0x29, 0x71, 0x02, 0x29, 0x51, 0x80, 0x21, 0x51, 0x09, 0x21, 0x31, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x87, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x07, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x50, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x94, 0x19, 0xF6, 0x01, 0x1A, 0x17, 0x88, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, + 0x19, 0x32, 0x21, 0x31, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x29, 0x31, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x07, 0x21, 0x30, 0x05, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x86, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x85, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x08, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, + 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x02, 0x19, 0xF7, 0x83, 0x11, 0xB5, 0x09, 0x53, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x32, 0x01, 0x21, 0x52, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x05, 0x19, 0x32, 0x01, 0x19, 0x52, 0x8C, 0x19, 0x32, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x22, 0x17, 0x22, 0x38, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x53, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, + 0x21, 0x30, 0x05, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x08, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x03, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x19, 0x74, 0x19, 0x95, 0x19, 0xB6, 0x02, 0x19, 0xD7, 0x80, 0x19, 0xD8, 0x02, 0x19, 0xD7, 0x81, 0x19, 0xF8, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x82, 0x19, 0xD7, 0x11, 0xD7, 0x19, 0xF8, 0x03, 0x19, 0xF7, 0x01, 0x19, 0xD7, 0x80, 0x19, 0xF7, 0x03, 0x19, 0xD7, 0x81, 0x19, 0xF7, 0x19, 0xD7, 0x02, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x81, 0x19, 0xD7, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x02, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x80, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x80, 0x19, 0xB6, 0x01, 0x11, 0x54, 0x81, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x0A, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x25, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x1D, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, + 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x10, 0x29, 0x30, 0x07, 0x31, 0x50, 0x01, 0x31, 0x30, 0x84, 0x31, 0x0F, 0x39, 0x0F, 0x38, 0xCD, 0x7A, 0x93, 0xCC, 0xBA, 0x01, 0xD4, 0x99, 0x03, 0xD4, 0x78, 0x90, 0xCC, 0x78, 0xCC, 0x77, 0xCC, 0x78, 0xC4, 0x98, 0xC4, 0xB9, 0xB4, 0xBA, 0xA4, 0x79, 0x83, 0xF7, 0x8C, 0x78, 0x95, 0x1A, 0xA6, 0x3E, 0x8D, 0xFC, 0x86, 0x1C, 0x7E, 0x3C, 0x76, 0x5C, 0x76, 0x5D, 0x6E, 0x5D, 0x02, 0x6E, 0x7D, 0x01, 0x66, 0x9D, 0x88, 0x66, 0x9E, 0x6E, 0x7E, 0x76, 0x5E, 0x7E, 0x3E, 0x75, 0x7C, 0x74, 0xFA, 0x74, 0xDA, 0x84, 0xFA, 0x84, 0xDA, 0x01, 0x8C, 0xBA, 0x01, 0x94, 0xB9, 0x80, 0x94, 0x99, 0x02, 0x9C, 0x99, 0x82, 0x9C, 0xB9, 0xA4, 0x99, 0xA4, 0x98, 0x01, 0xA4, 0x78, 0x01, 0x9C, 0x57, 0x01, 0x9C, 0x37, 0x01, 0x94, 0x37, 0x80, 0x94, 0x17, 0x02, 0x8C, 0x17, 0x01, 0x84, 0x17, 0x86, 0x7B, 0xF6, 0x7C, 0x17, 0x73, 0xF6, 0x74, 0x16, 0x73, 0xF6, 0x74, 0x16, 0x73, 0xF6, 0x01, 0x74, 0x16, 0x82, 0x74, 0x37, 0x74, 0x16, 0x74, 0x17, 0x01, 0x74, 0x37, 0x07, 0x73, 0xF6, 0x81, 0x73, 0xD6, 0x7B, 0xD6, 0x02, 0x7B, 0xB6, 0x87, 0x83, 0xB6, 0x8B, 0x96, 0x93, 0x96, 0x9B, 0x96, 0xA3, 0x96, 0xAB, 0x76, 0xB3, 0x76, 0xBB, 0x76, 0x01, 0xC3, 0x76, 0x02, 0xCB, 0x56, 0x80, 0xD3, 0x56, 0x01, 0xD3, 0x36, 0x80, 0xD3, 0x35, 0x02, 0xD3, 0x36, 0x01, 0xD3, 0x56, 0x8F, 0xC3, 0x35, 0xBB, 0x15, 0xB3, 0x15, 0xA3, 0x56, 0x9B, 0xD7, 0x8C, 0xB9, 0x85, 0x5B, 0x75, 0xDC, 0x6E, 0x3D, 0x5D, + 0xDC, 0x45, 0xBC, 0x46, 0x1E, 0x3E, 0x7E, 0x2E, 0x9E, 0x2E, 0xBE, 0x26, 0xBE, 0x01, 0x26, 0x9E, 0x02, 0x26, 0x7E, 0x01, 0x2E, 0xBE, 0x01, 0x2E, 0x9E, 0x01, 0x2E, 0x7E, 0x01, 0x2E, 0x5E, 0x82, 0x26, 0x5E, 0x26, 0x7E, 0x1E, 0x7E, 0x01, 0x16, 0x7E, 0x01, 0x0E, 0x7E, 0x80, 0x0E, 0x5E, 0x01, 0x0E, 0x7E, 0x80, 0x0E, 0x5E, 0x02, 0x06, 0x5E, 0x02, 0x06, 0x3E, 0x03, 0x06, 0x1E, 0x83, 0x05, 0xFE, 0x0D, 0xFE, 0x05, 0xDE, 0x0D, 0xDE, 0x02, 0x0D, 0xBE, 0x80, 0x0D, 0x9E, 0x01, 0x0D, 0x7E, 0x80, 0x0D, 0x7F, 0x01, 0x0D, 0x5F, 0x84, 0x0D, 0x3F, 0x0C, 0xFE, 0x0C, 0xDE, 0x04, 0xBE, 0x04, 0x9E, 0x01, 0x04, 0x5E, 0x01, 0x04, 0x3E, 0x01, 0x04, 0x1E, 0x01, 0x03, 0xFE, 0x02, 0x03, 0xFD, 0x80, 0x0B, 0xFD, 0x01, 0x03, 0xDD, 0x8C, 0x03, 0xBC, 0x03, 0xDC, 0x03, 0xFC, 0x04, 0x7D, 0x04, 0xFD, 0x15, 0xDF, 0x16, 0x3F, 0x16, 0x9F, 0x16, 0xBF, 0x0E, 0xBE, 0x0E, 0x9E, 0x0E, 0xBE, 0x0E, 0xDF, 0x01, 0x0E, 0xFF, 0x81, 0x0F, 0x1F, 0x0F, 0x1E, 0x02, 0x0F, 0x3F, 0x02, 0x0F, 0x5F, 0x8B, 0x17, 0x5E, 0x1F, 0x5E, 0x27, 0x5E, 0x2F, 0x3E, 0x3F, 0x1E, 0x4E, 0xBD, 0x5E, 0x5C, 0x75, 0xFC, 0x8D, 0x5A, 0x9C, 0xB8, 0xAC, 0x38, 0xC4, 0x18, 0x02, 0xCC, 0x18, 0x87, 0xCC, 0x3A, 0xCC, 0x7D, 0x93, 0x3C, 0x28, 0xF7, 0x19, 0x3B, 0x11, 0x5C, 0x11, 0x7D, 0x09, 0x7D, 0x01, 0x09, 0x9E, 0x96, 0x09, 0x7D, 0x11, 0x7D, 0x19, 0x7D, 0x21, 0x5C, 0x31, 0x3A, 0x59, 0x58, 0x89, 0xF9, 0xA2, 0x18, 0xAA, 0x17, 0x99, 0xF6, 0x92, 0x16, 0x82, 0x56, 0x6A, 0xF8, 0x53, 0xFA, 0x3C, 0xDC, 0x2D, 0x9E, + 0x1E, 0x1F, 0x0E, 0x1E, 0x06, 0x5F, 0x06, 0xDF, 0x07, 0x1F, 0x07, 0x5F, 0x07, 0x7F, 0x02, 0x07, 0x9F, 0x80, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x8C, 0x0F, 0x9F, 0x1F, 0x7F, 0x2F, 0x5F, 0x3E, 0xFF, 0x5E, 0x7E, 0x86, 0x3E, 0x63, 0x34, 0x72, 0x32, 0xA2, 0x54, 0xB1, 0xF3, 0xC1, 0xD3, 0xC1, 0x93, 0xC1, 0x72, 0x01, 0xC9, 0x93, 0x83, 0xD1, 0x93, 0xC9, 0x92, 0xC9, 0x93, 0xC1, 0x93, 0x01, 0xC1, 0xD4, 0x88, 0xB9, 0xF4, 0xB2, 0x55, 0x81, 0x51, 0x58, 0xD0, 0x59, 0x72, 0x49, 0x51, 0x41, 0x72, 0x41, 0x51, 0x41, 0x72, 0x01, 0x39, 0x72, 0x03, 0x39, 0x51, 0x80, 0x39, 0x71, 0x01, 0x31, 0x51, 0x80, 0x29, 0x50, 0x02, 0x29, 0x51, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x02, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x81, 0x21, 0x52, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x07, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x51, 0x8D, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x94, 0x19, 0xF6, 0x19, 0xF7, 0x19, 0xF6, 0x19, 0xD5, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x21, 0x31, 0x21, 0x11, 0x02, 0x21, 0x31, 0x03, 0x21, 0x10, 0x01, + 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x81, 0x29, 0x30, 0x20, 0xEF, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x08, 0x21, 0x30, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x84, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, + 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x11, 0x75, 0x19, 0xF7, 0x11, 0xF7, 0x1A, 0x17, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x19, 0x52, 0x01, 0x19, 0x32, 0x03, 0x19, 0x31, 0x04, 0x19, 0x32, 0x02, 0x11, 0x32, 0x8E, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x19, 0xF7, 0x22, 0x38, 0x22, 0x17, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x30, 0x21, 0x50, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x89, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, + 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x8F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x52, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x19, 0xB6, 0x11, 0x96, 0x19, 0xB6, 0x11, 0xB6, 0x19, 0xB7, 0x01, 0x11, 0x96, 0x83, 0x19, 0xB6, 0x19, 0xD6, 0x11, 0xB6, 0x19, 0xB6, 0x01, 0x11, 0xB6, 0x01, 0x19, 0xB6, 0x82, 0x11, 0xB6, 0x19, 0xB6, 0x19, 0x96, 0x02, 0x19, 0xB6, 0x82, 0x19, 0x96, 0x19, 0xB6, 0x11, 0x96, 0x04, 0x19, 0xB6, 0x82, 0x19, 0x96, 0x19, 0xB6, 0x19, 0x96, 0x02, 0x19, 0xB6, 0x80, 0x19, 0x96, 0x01, 0x19, 0xB6, 0x80, 0x11, 0x96, 0x01, 0x19, 0x96, 0x81, 0x11, 0x96, 0x11, 0x76, 0x01, 0x11, 0x95, 0x8A, 0x11, 0x75, 0x11, 0x74, 0x09, 0x33, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x19, 0x10, 0x19, 0x11, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x82, 0x29, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x10, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x21, 0x21, 0x30, 0x80, 0x21, 0x50, 0x52, 0x21, 0x30, 0x08, 0x29, 0x30, 0x80, 0x29, 0x50, 0x03, 0x29, 0x30, 0x05, 0x31, 0x50, 0x89, 0x31, 0x30, 0x31, 0x2F, 0x31, 0x0F, 0x39, 0x0F, 0x38, 0xED, 0x72, 0x52, 0xCC, 0xBB, 0xD4, 0xB9, 0xD4, 0x99, 0xDC, 0x78, + 0x02, 0xD4, 0x78, 0x01, 0xCC, 0x78, 0x8D, 0xC4, 0x98, 0xC4, 0x99, 0xC4, 0xDA, 0x93, 0xB5, 0x7B, 0x74, 0x9C, 0xDA, 0x9D, 0x5C, 0x9D, 0xDD, 0x9D, 0xFD, 0x8E, 0x1C, 0x86, 0x3C, 0x7E, 0x3C, 0x76, 0x5C, 0x76, 0x5D, 0x02, 0x6E, 0x5D, 0x01, 0x6E, 0x5E, 0x88, 0x76, 0x5E, 0x76, 0x7F, 0x7E, 0x9F, 0x86, 0x5F, 0x7D, 0xBD, 0x64, 0x99, 0x64, 0x38, 0x74, 0x39, 0x7C, 0x59, 0x01, 0x8C, 0x7A, 0x81, 0x94, 0x7A, 0x9C, 0x9A, 0x02, 0xA4, 0x99, 0x81, 0xA4, 0x79, 0xAC, 0x79, 0x01, 0xAC, 0x78, 0x02, 0xAC, 0x58, 0x80, 0xAC, 0x37, 0x01, 0xB4, 0x37, 0x01, 0xB4, 0x17, 0x80, 0xAC, 0x17, 0x03, 0xAB, 0xF7, 0x02, 0xA3, 0xD7, 0x05, 0x9B, 0xD7, 0x80, 0x9B, 0xB7, 0x06, 0x9B, 0xD7, 0x80, 0x93, 0xB6, 0x01, 0x9B, 0xB6, 0x80, 0x9B, 0x96, 0x01, 0x9B, 0xB6, 0x02, 0x9B, 0x96, 0x01, 0x9B, 0x76, 0x80, 0x9B, 0x56, 0x01, 0xA3, 0x56, 0x82, 0xAB, 0x56, 0xAB, 0x76, 0xB3, 0x76, 0x01, 0xBB, 0x76, 0x01, 0xC3, 0x76, 0x03, 0xCB, 0x56, 0x03, 0xD3, 0x36, 0x02, 0xD3, 0x35, 0x01, 0xD3, 0x56, 0x97, 0xCB, 0x56, 0xBB, 0x15, 0xBB, 0x36, 0xB3, 0x76, 0xA3, 0x96, 0x9C, 0x38, 0x94, 0xF9, 0x85, 0x3A, 0x7D, 0xBB, 0x6D, 0xBB, 0x65, 0x7B, 0x5D, 0xBC, 0x55, 0xFD, 0x4E, 0x3E, 0x3E, 0x7E, 0x36, 0x9E, 0x2E, 0x7D, 0x26, 0x5D, 0x2E, 0x5D, 0x2E, 0x3D, 0x2E, 0x5D, 0x36, 0x9E, 0x3E, 0x7E, 0x46, 0x7E, 0x01, 0x46, 0x5E, 0x80, 0x4E, 0x5E, 0x01, 0x46, 0x3E, 0x84, 0x3E, 0x3D, 0x36, 0x3E, 0x2E, 0x5E, 0x26, 0x5E, 0x1E, 0x5E, 0x01, 0x16, 0x5E, 0x02, 0x0E, 0x5E, 0x04, 0x0E, 0x3E, 0x80, 0x06, 0x3E, 0x01, + 0x06, 0x1E, 0x01, 0x0E, 0x1E, 0x01, 0x0D, 0xFE, 0x01, 0x0D, 0xDE, 0x80, 0x0D, 0xBE, 0x02, 0x0D, 0x9E, 0x01, 0x0D, 0x7E, 0x01, 0x0D, 0x5E, 0x01, 0x0D, 0x3E, 0x88, 0x0D, 0x1F, 0x0C, 0xFE, 0x0C, 0xDE, 0x0C, 0x9E, 0x0C, 0x7E, 0x0C, 0x5E, 0x0C, 0x3E, 0x0C, 0x3D, 0x0C, 0x1D, 0x01, 0x0C, 0x1E, 0x80, 0x0B, 0xFE, 0x01, 0x0B, 0xFD, 0x03, 0x0B, 0xDD, 0x80, 0x0B, 0xBD, 0x03, 0x0B, 0xBC, 0x84, 0x03, 0xFC, 0x04, 0x3C, 0x15, 0x1D, 0x1D, 0xBE, 0x1E, 0x5F, 0x01, 0x1E, 0x7E, 0x83, 0x16, 0x5E, 0x16, 0x7E, 0x16, 0x9F, 0x16, 0xBE, 0x01, 0x16, 0xDF, 0x80, 0x16, 0xFF, 0x01, 0x17, 0x1E, 0x01, 0x17, 0x3F, 0x97, 0x17, 0x5F, 0x17, 0x5E, 0x17, 0x3E, 0x1F, 0x5E, 0x27, 0x3E, 0x2F, 0x3E, 0x3F, 0x1E, 0x46, 0xDD, 0x56, 0x9D, 0x6E, 0x3C, 0x8D, 0x9B, 0x94, 0xB8, 0xAC, 0x38, 0xBC, 0x18, 0xC4, 0x18, 0xCC, 0x18, 0xD4, 0x18, 0xD4, 0x39, 0xCC, 0x3B, 0xC4, 0x7F, 0x39, 0x37, 0x21, 0x19, 0x19, 0x5B, 0x11, 0x7D, 0x01, 0x09, 0x7D, 0x01, 0x09, 0x9E, 0x96, 0x11, 0x9D, 0x11, 0x7D, 0x21, 0x5C, 0x31, 0x3A, 0x51, 0x38, 0x81, 0xFA, 0xA2, 0x39, 0xAA, 0x18, 0xA2, 0x17, 0x92, 0x16, 0x82, 0x36, 0x6A, 0xB7, 0x53, 0x99, 0x3C, 0x5B, 0x2D, 0x5E, 0x1D, 0xBE, 0x0E, 0x1F, 0x06, 0x1E, 0x06, 0x9F, 0x06, 0xDF, 0x07, 0x3F, 0x07, 0x5F, 0x07, 0x7F, 0x02, 0x07, 0x9F, 0x90, 0x07, 0xDF, 0x0F, 0xDF, 0x0F, 0x9F, 0x17, 0x7F, 0x27, 0x5F, 0x36, 0xFF, 0x56, 0x9E, 0x86, 0x7F, 0x6B, 0xF7, 0x62, 0x11, 0x9A, 0x74, 0xB1, 0xF3, 0xC1, 0xD3, 0xC9, 0xB3, 0xC1, 0x93, 0xC9, 0x93, 0xD1, 0x93, 0x02, 0xC9, + 0x93, 0x8F, 0xC1, 0x93, 0xC1, 0xD3, 0xC1, 0xD4, 0xB9, 0xD4, 0xB2, 0x15, 0x89, 0x72, 0x58, 0xD0, 0x51, 0x52, 0x51, 0x72, 0x49, 0x72, 0x41, 0x72, 0x41, 0x92, 0x39, 0x72, 0x41, 0x92, 0x39, 0x51, 0x31, 0x31, 0x01, 0x39, 0x51, 0x01, 0x31, 0x51, 0x81, 0x31, 0x71, 0x31, 0x51, 0x01, 0x29, 0x51, 0x01, 0x21, 0x31, 0x82, 0x19, 0x32, 0x19, 0x52, 0x19, 0x53, 0x01, 0x11, 0x73, 0x83, 0x11, 0x52, 0x11, 0x32, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x0A, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x07, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x50, 0x02, 0x21, 0x30, 0x01, 0x21, 0x51, 0x85, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xF6, 0x01, 0x22, 0x17, 0x82, 0x19, 0xB5, 0x09, 0x33, 0x11, 0x12, 0x01, 0x19, 0x12, 0x04, 0x21, 0x11, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x29, 0x50, 0x07, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x50, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, + 0x0F, 0x01, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x06, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x84, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x0A, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x84, 0x19, 0x11, 0x11, 0x12, 0x11, 0x53, 0x11, 0x95, 0x19, 0xF7, 0x01, 0x1A, 0x18, 0x83, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x54, 0x09, 0x33, 0x01, 0x11, 0x53, 0x80, 0x19, 0x53, 0x03, 0x19, 0x52, 0x81, 0x19, 0x72, 0x21, 0x92, 0x02, 0x19, 0x52, 0x01, 0x11, 0x32, 0x8B, + 0x11, 0x33, 0x11, 0x54, 0x11, 0x74, 0x11, 0x95, 0x11, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x09, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x19, 0x51, 0x19, 0x52, 0x19, 0x53, 0x01, 0x11, 0x53, 0x06, 0x11, 0x54, 0x82, 0x11, 0x33, 0x11, 0x53, 0x11, 0x54, 0x03, 0x11, 0x53, 0x01, 0x11, 0x54, 0x80, 0x19, 0x54, 0x01, 0x11, 0x54, 0x80, 0x11, 0x33, 0x05, 0x11, 0x54, 0x83, + 0x19, 0x74, 0x11, 0x54, 0x19, 0x54, 0x19, 0x74, 0x05, 0x11, 0x54, 0x01, 0x19, 0x74, 0x01, 0x11, 0x54, 0x81, 0x19, 0x54, 0x11, 0x54, 0x01, 0x09, 0x33, 0x02, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x19, 0x51, 0x01, 0x19, 0x31, 0x81, 0x19, 0x30, 0x19, 0x10, 0x23, 0x21, 0x30, 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x85, 0x21, 0x50, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x21, 0x51, 0x21, 0x30, 0x03, 0x21, 0x50, 0x01, 0x21, 0x51, 0x80, 0x21, 0x50, 0x10, 0x21, 0x30, 0x80, 0x21, 0x50, 0x12, 0x21, 0x30, 0x80, 0x21, 0x50, 0x3D, 0x21, 0x30, 0x0B, 0x29, 0x30, 0x06, 0x31, 0x50, 0x80, 0x31, 0x30, 0x02, 0x31, 0x0F, 0x84, 0x38, 0xCD, 0x6A, 0x11, 0xCC, 0xBB, 0xD4, 0x9A, 0xD4, 0x99, 0x03, 0xD4, 0x78, 0x01, 0xCC, 0x78, 0x8E, 0xCC, 0x98, 0xC4, 0x99, 0xB4, 0x98, 0x93, 0xF6, 0x9C, 0xB8, 0xB5, 0xBC, 0xA5, 0x9C, 0x9D, 0xBC, 0x95, 0xFC, 0x8E, 0x1C, 0x86, 0x1C, 0x86, 0x3D, 0x7E, 0x5D, 0x76, 0x3D, 0x76, 0x5D, 0x01, 0x76, 0x5E, 0x90, 0x7E, 0x5F, 0x75, 0xFE, 0x75, 0xBD, 0x6D, 0x3C, 0x54, 0x59, 0x43, 0x55, 0x3A, 0xB3, 0x3A, 0x73, 0x42, 0x73, 0x52, 0xB4, 0x62, 0xF5, 0x73, 0x16, 0x7B, 0x36, 0x83, 0x77, 0x8B, 0xB8, 0x9C, 0x19, 0xAC, 0x59, 0x02, 0xAC, 0x79, 0x01, 0xB4, 0x79, 0x81, 0xB4, 0x59, 0xB4, 0x58, 0x01, 0xB4, 0x38, 0x03, 0xBC, 0x38, 0x04, 0xBC, 0x18, 0x80, 0xB4, 0x18, 0x04, 0xB4, 0x17, 0x04, 0xAB, 0xF7, 0x82, 0xAC, 0x17, 0xAB, 0xF7, 0xAC, 0x17, 0x06, 0xAB, 0xF7, 0x81, 0xAB, 0xD7, 0xAB, 0xB6, 0x01, 0xAB, 0x96, 0x81, 0xAB, 0xB6, 0xAB, 0x96, 0x03, 0xB3, + 0xB7, 0x01, 0xBB, 0xB7, 0x81, 0xBB, 0x97, 0xC3, 0x77, 0x01, 0xC3, 0x76, 0x80, 0xC3, 0x56, 0x02, 0xCB, 0x56, 0x80, 0xCB, 0x36, 0x03, 0xD3, 0x36, 0x01, 0xD3, 0x35, 0x02, 0xD3, 0x36, 0x90, 0xCB, 0x56, 0xBB, 0x15, 0xBB, 0x56, 0xBB, 0x77, 0xB3, 0xD7, 0xB4, 0x59, 0xAD, 0x1A, 0x9D, 0x5B, 0x95, 0x7A, 0x8D, 0x9B, 0x85, 0xBB, 0x85, 0xBC, 0x7D, 0xFD, 0x6D, 0xDD, 0x5D, 0xFD, 0x4E, 0x3D, 0x46, 0x7E, 0x01, 0x3E, 0x9E, 0x80, 0x36, 0x7E, 0x01, 0x3E, 0x5D, 0x84, 0x46, 0x5D, 0x4E, 0x1D, 0x4D, 0xBC, 0x55, 0x7C, 0x55, 0x3B, 0x01, 0x5D, 0x7C, 0x86, 0x5D, 0xBD, 0x55, 0xDD, 0x4E, 0x1D, 0x46, 0x3D, 0x36, 0x5D, 0x2E, 0x5E, 0x1E, 0x1D, 0x01, 0x16, 0x3E, 0x82, 0x16, 0x5E, 0x0E, 0x3E, 0x0E, 0x5E, 0x02, 0x0E, 0x3E, 0x03, 0x0E, 0x1E, 0x01, 0x0D, 0xFE, 0x01, 0x0D, 0xDE, 0x01, 0x0D, 0xBE, 0x83, 0x0D, 0x9E, 0x0D, 0x7E, 0x15, 0x7E, 0x15, 0x5E, 0x01, 0x15, 0x3E, 0x01, 0x15, 0x1E, 0x84, 0x14, 0xFE, 0x14, 0xDE, 0x14, 0xBE, 0x14, 0x9E, 0x14, 0x7D, 0x01, 0x14, 0x5D, 0x01, 0x14, 0x3D, 0x03, 0x14, 0x1D, 0x01, 0x13, 0xFD, 0x01, 0x13, 0xDD, 0x81, 0x13, 0xBC, 0x13, 0xDD, 0x02, 0x13, 0xBC, 0x80, 0x13, 0x9C, 0x02, 0x0B, 0x9C, 0x86, 0x0B, 0xDC, 0x14, 0x7D, 0x1C, 0xFD, 0x25, 0x9E, 0x25, 0xDE, 0x26, 0x1E, 0x26, 0x1D, 0x01, 0x1E, 0x3E, 0x87, 0x1E, 0x5E, 0x16, 0x7E, 0x1E, 0x9E, 0x16, 0xBE, 0x1E, 0xDE, 0x1E, 0xFE, 0x1F, 0x1E, 0x17, 0x1E, 0x02, 0x1F, 0x3E, 0x01, 0x27, 0x3E, 0x94, 0x37, 0x3E, 0x3F, 0x1E, 0x46, 0xDD, 0x56, 0xBD, 0x6E, 0x7D, 0x85, 0xDB, 0x94, 0xD8, 0xA4, + 0x38, 0xBB, 0xF8, 0xC4, 0x18, 0xCC, 0x18, 0xD4, 0x18, 0xD4, 0x19, 0xD4, 0x3A, 0xCC, 0x5D, 0x82, 0xDC, 0x31, 0x38, 0x21, 0x3B, 0x11, 0x5C, 0x09, 0x5D, 0x09, 0x7D, 0x01, 0x09, 0x9E, 0x96, 0x09, 0x7D, 0x11, 0x7D, 0x19, 0x7C, 0x31, 0x5B, 0x51, 0x59, 0x79, 0xDA, 0xA2, 0x39, 0xAA, 0x38, 0xA2, 0x17, 0x92, 0x16, 0x82, 0x36, 0x72, 0xB7, 0x5B, 0x59, 0x44, 0x1A, 0x2C, 0xFD, 0x1D, 0x9E, 0x0D, 0xBE, 0x05, 0xFE, 0x06, 0x5F, 0x06, 0xBF, 0x07, 0x1F, 0x07, 0x3F, 0x07, 0x7F, 0x02, 0x07, 0x9F, 0x01, 0x07, 0xDF, 0x8F, 0x0F, 0x9F, 0x17, 0x7F, 0x27, 0x5F, 0x37, 0x1F, 0x4E, 0xBE, 0x7E, 0xDF, 0x74, 0x99, 0x5A, 0x11, 0x92, 0x53, 0xB2, 0x34, 0xB9, 0xD3, 0xC1, 0xB3, 0xC1, 0x73, 0xC9, 0x73, 0xC9, 0x93, 0xD1, 0xB3, 0x01, 0xC9, 0x93, 0x89, 0xC9, 0xB3, 0xC1, 0xB3, 0xC1, 0xD3, 0xB9, 0xF4, 0xB2, 0x35, 0x91, 0xD3, 0x58, 0xB0, 0x51, 0x31, 0x51, 0x72, 0x49, 0x92, 0x01, 0x41, 0x72, 0x01, 0x41, 0x92, 0x01, 0x39, 0x51, 0x81, 0x31, 0x31, 0x39, 0x71, 0x03, 0x31, 0x51, 0x01, 0x29, 0x51, 0x88, 0x29, 0x52, 0x21, 0x52, 0x19, 0x53, 0x19, 0x94, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xF6, 0x11, 0xD6, 0x11, 0xB5, 0x01, 0x11, 0x95, 0x82, 0x11, 0x53, 0x11, 0x33, 0x19, 0x32, 0x02, 0x19, 0x31, 0x19, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x29, 0x50, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, + 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x51, 0x85, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0xB5, 0x19, 0xF6, 0x01, 0x22, 0x17, 0x80, 0x19, 0x95, 0x01, 0x11, 0x33, 0x81, 0x19, 0x12, 0x21, 0x32, 0x03, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x07, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x50, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x09, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, + 0x10, 0x29, 0x30, 0x0B, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x11, 0x01, 0x19, 0x11, 0x87, 0x11, 0x32, 0x11, 0x74, 0x11, 0xB6, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF7, 0x19, 0xB7, 0x11, 0x96, 0x01, 0x11, 0x54, 0x87, 0x09, 0x33, 0x11, 0x33, 0x11, 0x53, 0x11, 0x52, 0x11, 0x32, 0x19, 0x52, 0x11, 0x51, 0x11, 0x52, 0x03, 0x11, 0x32, 0x84, 0x11, 0x53, 0x11, 0x54, 0x11, 0x75, 0x11, 0x95, 0x19, 0xD6, 0x02, 0x19, 0xF7, 0x85, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x02, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, + 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x29, 0x30, 0x03, 0x21, 0x30, 0x02, 0x21, 0x31, 0x08, 0x21, 0x30, 0x0A, 0x21, 0x31, 0x03, 0x21, 0x51, 0x04, 0x21, 0x31, 0x01, 0x21, 0x51, 0x03, 0x21, 0x31, 0x80, 0x21, 0x11, 0x07, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x11, 0x32, 0x02, 0x11, 0x33, 0x01, 0x11, 0x13, 0x81, 0x11, 0x33, 0x11, 0x13, 0x03, 0x11, 0x12, 0x01, 0x11, 0x32, 0x03, 0x11, 0x12, 0x80, 0x11, 0x13, 0x06, 0x11, 0x12, 0x01, 0x11, 0x13, 0x01, 0x11, 0x12, 0x01, 0x11, 0x13, 0x01, 0x11, 0x33, 0x01, 0x11, 0x13, 0x01, 0x11, 0x12, 0x06, 0x11, 0x13, 0x02, 0x11, 0x12, 0x82, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x51, 0x01, 0x21, 0x51, 0x80, 0x21, 0x31, 0x01, 0x21, 0x51, 0x05, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x19, 0x30, 0x03, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x07, 0x19, 0x31, 0x02, 0x19, 0x30, 0x03, 0x21, 0x30, 0x84, 0x19, 0x30, 0x21, 0x31, 0x19, 0x30, 0x19, 0x31, 0x21, 0x31, 0x1F, 0x19, 0x31, 0x80, 0x19, 0x30, 0x14, 0x19, 0x31, 0x80, 0x19, 0x30, 0x05, 0x19, 0x31, 0x80, 0x19, 0x10, 0x01, 0x19, 0x31, 0x01, 0x19, 0x30, 0x01, 0x19, 0x31, 0x01, 0x19, 0x30, 0x06, 0x19, 0x31, 0x80, 0x19, 0x30, 0x09, 0x19, 0x31, 0x81, 0x19, 0x30, 0x19, 0x31, 0x01, 0x19, 0x30, 0x80, 0x19, 0x31, 0x03, 0x19, 0x30, 0x80, 0x19, 0x31, + 0x07, 0x19, 0x30, 0x81, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x03, 0x21, 0x30, 0x09, 0x29, 0x30, 0x80, 0x31, 0x30, 0x02, 0x31, 0x50, 0x01, 0x31, 0x30, 0x01, 0x31, 0x50, 0x80, 0x31, 0x30, 0x01, 0x31, 0x0F, 0x83, 0x30, 0xCD, 0x51, 0x6F, 0xCC, 0xBB, 0xD4, 0xBA, 0x01, 0xD4, 0x99, 0x03, 0xD4, 0x78, 0xA9, 0xCC, 0x78, 0xCC, 0x98, 0xC4, 0x99, 0xB4, 0x98, 0x8B, 0x94, 0xB5, 0x5B, 0xB5, 0xBC, 0xA5, 0x9B, 0x9D, 0xBC, 0x95, 0xDC, 0x95, 0xFD, 0x8D, 0xFD, 0x8E, 0x1D, 0x8E, 0x3E, 0x8E, 0x5F, 0x8E, 0x7F, 0x86, 0x3E, 0x5D, 0x1A, 0x3B, 0xF7, 0x2B, 0x14, 0x22, 0xB3, 0x22, 0x52, 0x22, 0x32, 0x2A, 0x32, 0x3A, 0x13, 0x42, 0x13, 0x4A, 0x13, 0x52, 0x34, 0x52, 0x33, 0x5A, 0x34, 0x62, 0x54, 0x6A, 0x74, 0x72, 0x95, 0x7A, 0xD5, 0x8B, 0x16, 0x9B, 0x97, 0xAC, 0x19, 0xB4, 0x7A, 0xBC, 0x7A, 0xB4, 0x5A, 0xB4, 0x39, 0xBC, 0x59, 0x01, 0xBC, 0x39, 0x02, 0xBC, 0x38, 0x81, 0xC4, 0x18, 0xBC, 0x18, 0x03, 0xC4, 0x18, 0x80, 0xC4, 0x17, 0x0D, 0xBB, 0xF7, 0x02, 0xBB, 0xD7, 0x02, 0xB3, 0xD7, 0x01, 0xBB, 0xD7, 0x01, 0xBB, 0xB6, 0x80, 0xBB, 0x96, 0x01, 0xBB, 0xB6, 0x80, 0xBB, 0x96, 0x01, 0xBB, 0xB7, 0x81, 0xBB, 0x97, 0xC3, 0x97, 0x02, 0xC3, 0x76, 0x80, 0xCB, 0x76, 0x02, 0xCB, 0x56, 0x80, 0xD3, 0x56, 0x09, 0xD3, 0x36, 0xA9, 0xCB, 0x56, 0xC3, 0x36, 0xBB, 0x16, 0xBB, 0x77, 0xB3, 0x97, 0xB3, 0xF8, 0xBC, 0xDA, 0xB5, 0x1A, 0xA5, 0x3A, 0x9D, 0x3A, 0x9D, 0x5A, 0x95, 0x5A, 0x95, 0x7B, 0x8D, 0x7B, 0x7D, 0x5B, 0x6D, 0x7B, 0x5D, 0xDC, 0x56, 0x1D, 0x4E, + 0x5D, 0x46, 0x7E, 0x46, 0x5D, 0x46, 0x3D, 0x45, 0xFC, 0x4D, 0xDC, 0x55, 0x3A, 0x64, 0xFA, 0x6C, 0xBA, 0x64, 0x79, 0x64, 0x38, 0x64, 0x18, 0x64, 0x79, 0x64, 0xDA, 0x65, 0x7C, 0x55, 0xBC, 0x4D, 0xFD, 0x3E, 0x3D, 0x2E, 0x3D, 0x1D, 0xFD, 0x1E, 0x1E, 0x16, 0x3E, 0x16, 0x1E, 0x0E, 0x3E, 0x03, 0x0E, 0x1E, 0x02, 0x0D, 0xFE, 0x01, 0x0D, 0xDE, 0x01, 0x0D, 0xBE, 0x01, 0x15, 0x9E, 0x80, 0x15, 0x7E, 0x01, 0x15, 0x5E, 0x89, 0x1D, 0x3E, 0x1D, 0x1D, 0x1C, 0xFD, 0x1C, 0xFE, 0x1C, 0xDD, 0x1C, 0xBD, 0x1C, 0x9D, 0x1C, 0x5D, 0x1C, 0x3D, 0x1C, 0x3C, 0x01, 0x1C, 0x1C, 0x01, 0x1B, 0xFC, 0x80, 0x1B, 0xDC, 0x03, 0x23, 0xDC, 0x01, 0x23, 0xBC, 0x81, 0x1B, 0x9B, 0x23, 0xBB, 0x02, 0x1B, 0x9B, 0x01, 0x1B, 0x7B, 0x01, 0x1B, 0x5B, 0x91, 0x13, 0x3A, 0x1B, 0x7B, 0x1B, 0xBB, 0x24, 0x3C, 0x2C, 0xDD, 0x35, 0x3D, 0x35, 0x9E, 0x35, 0xBD, 0x35, 0xDD, 0x2D, 0xDD, 0x2D, 0xFE, 0x2E, 0x1E, 0x2E, 0x3E, 0x26, 0x5D, 0x2E, 0x7E, 0x26, 0x9D, 0x26, 0xDE, 0x26, 0xFD, 0x01, 0x26, 0xFE, 0x80, 0x27, 0x1E, 0x01, 0x2F, 0x1E, 0xAE, 0x37, 0x1E, 0x47, 0x1E, 0x4E, 0xFE, 0x5E, 0xBD, 0x6E, 0x7D, 0x85, 0xFB, 0x8C, 0xF9, 0xA4, 0x37, 0xB3, 0xF8, 0xC3, 0xF8, 0xCB, 0xF8, 0xD3, 0xF8, 0xD4, 0x18, 0xD4, 0x19, 0xCC, 0x3C, 0xB3, 0xFE, 0x41, 0x77, 0x29, 0x5A, 0x19, 0x5C, 0x11, 0x7C, 0x09, 0x7D, 0x09, 0x9E, 0x11, 0x9E, 0x11, 0x9D, 0x11, 0x7D, 0x19, 0x7C, 0x29, 0x5B, 0x49, 0x39, 0x71, 0xBA, 0x9A, 0x3A, 0xAA, 0x38, 0x99, 0xF7, 0x91, 0xF6, 0x8A, 0x36, 0x72, 0x97, 0x5B, 0x18, 0x43, 0xBA, 0x34, + 0xDD, 0x1D, 0x5E, 0x0D, 0x7E, 0x05, 0xBE, 0x06, 0x5F, 0x06, 0x9F, 0x06, 0xFF, 0x07, 0x1F, 0x07, 0x5F, 0x07, 0x7F, 0x01, 0x07, 0x9F, 0x01, 0x07, 0xDF, 0x8C, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x7F, 0x2F, 0x3F, 0x46, 0xBE, 0x76, 0xDF, 0x7D, 0x3B, 0x52, 0x31, 0x92, 0x73, 0xA9, 0xF3, 0xB1, 0xB2, 0xC1, 0xB3, 0xC1, 0x93, 0x01, 0xC9, 0x93, 0x8C, 0xC9, 0xB3, 0xC9, 0x93, 0xC1, 0x93, 0xC1, 0xB3, 0xC1, 0xD3, 0xB9, 0xB3, 0xB9, 0xF4, 0xB2, 0x14, 0x99, 0xD4, 0x58, 0xD0, 0x51, 0x31, 0x49, 0x52, 0x49, 0x92, 0x01, 0x41, 0x72, 0x01, 0x39, 0x72, 0x80, 0x39, 0x71, 0x02, 0x39, 0x51, 0x03, 0x31, 0x51, 0x01, 0x29, 0x51, 0x86, 0x21, 0x32, 0x19, 0x53, 0x19, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xF7, 0x12, 0x17, 0x01, 0x12, 0x18, 0x01, 0x1A, 0x18, 0x84, 0x19, 0xF7, 0x11, 0xB5, 0x11, 0x74, 0x11, 0x52, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x31, 0x08, 0x21, 0x30, 0x83, 0x19, 0x30, 0x21, 0x31, 0x21, 0x30, 0x21, 0x50, 0x18, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x52, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x19, 0xF6, 0x19, 0xD6, 0x19, 0x95, 0x01, 0x11, 0x33, 0x80, 0x11, 0x12, 0x01, 0x19, 0x12, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x19, 0x31, 0x19, 0x10, 0x04, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, + 0x2F, 0x05, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x08, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x51, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x07, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x09, 0x21, 0x30, 0x87, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, + 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x87, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x01, 0x19, 0xD7, 0x85, 0x11, 0xB6, 0x11, 0x95, 0x09, 0x55, 0x09, 0x54, 0x09, 0x33, 0x09, 0x53, 0x01, 0x11, 0x53, 0x88, 0x11, 0x32, 0x09, 0x32, 0x11, 0x12, 0x09, 0x12, 0x11, 0x33, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x19, 0xF7, 0x02, 0x1A, 0x17, 0x81, 0x19, 0xD6, 0x11, 0x95, 0x01, 0x11, 0x33, 0x83, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x09, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x11, 0x04, 0x19, 0x11, 0x81, 0x10, 0xF1, 0x19, 0x11, 0x01, 0x11, 0x10, 0x83, 0x10, 0xF0, 0x19, 0x10, 0x10, 0xF0, 0x19, 0x11, 0x01, 0x11, 0x10, 0x83, 0x11, 0x11, 0x10, 0xF1, 0x10, 0xF0, 0x11, 0x11, 0x02, 0x10, 0xF1, 0x02, 0x11, 0x11, 0x81, 0x10, 0xF1, 0x11, 0x11, + 0x02, 0x10, 0xF1, 0x80, 0x11, 0x11, 0x01, 0x10, 0xF1, 0x02, 0x10, 0xF0, 0x81, 0x10, 0xD0, 0x10, 0xD1, 0x01, 0x10, 0xF1, 0x03, 0x10, 0xD1, 0x01, 0x10, 0xF1, 0x05, 0x10, 0xF0, 0x02, 0x08, 0xF1, 0x04, 0x08, 0xF2, 0x80, 0x09, 0x12, 0x04, 0x08, 0xF2, 0x01, 0x08, 0xF1, 0x0C, 0x08, 0xF2, 0x80, 0x08, 0xD2, 0x0A, 0x08, 0xF2, 0x80, 0x10, 0xF2, 0x01, 0x08, 0xF2, 0x01, 0x10, 0xF2, 0x01, 0x09, 0x12, 0x01, 0x10, 0xF2, 0x81, 0x08, 0xF1, 0x10, 0xF1, 0x02, 0x11, 0x11, 0x80, 0x11, 0x10, 0x01, 0x10, 0xF0, 0x02, 0x11, 0x10, 0x82, 0x10, 0xF0, 0x11, 0x11, 0x10, 0xF0, 0x06, 0x19, 0x31, 0x01, 0x11, 0x31, 0x81, 0x11, 0x11, 0x19, 0x11, 0x05, 0x11, 0x11, 0x80, 0x11, 0x31, 0x02, 0x11, 0x11, 0x0C, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x11, 0x11, 0x0B, 0x11, 0x31, 0x81, 0x11, 0x11, 0x11, 0x31, 0x04, 0x11, 0x11, 0x82, 0x19, 0x31, 0x11, 0x11, 0x19, 0x31, 0x0A, 0x11, 0x11, 0x80, 0x11, 0x31, 0x01, 0x11, 0x11, 0x82, 0x19, 0x11, 0x11, 0x11, 0x11, 0x31, 0x02, 0x11, 0x11, 0x81, 0x11, 0x31, 0x11, 0x11, 0x09, 0x11, 0x31, 0x02, 0x11, 0x11, 0x0D, 0x11, 0x31, 0x80, 0x11, 0x32, 0x01, 0x11, 0x31, 0x80, 0x11, 0x11, 0x12, 0x11, 0x31, 0x80, 0x19, 0x31, 0x01, 0x11, 0x31, 0x0B, 0x19, 0x31, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x07, 0x29, 0x30, 0x81, 0x31, 0x30, 0x31, 0x50, 0x04, 0x31, 0x30, 0x01, 0x31, 0x2F, 0x84, 0x31, 0x0F, 0x30, 0xCE, 0x51, 0x6F, 0xBC, 0x39, 0xD4, 0xBB, 0x02, 0xD4, 0x99, 0x02, 0xD4, 0x78, 0x90, 0xCC, 0x78, 0xCC, 0x99, 0xC4, 0x78, 0xAC, 0x37, 0xAC, + 0x98, 0xC5, 0xBD, 0xB5, 0x7B, 0xAD, 0xBC, 0x9D, 0xBC, 0x95, 0xBC, 0x95, 0xDD, 0x95, 0xDE, 0x85, 0x5C, 0x74, 0xFB, 0x5C, 0x38, 0x3A, 0xD4, 0x19, 0xD0, 0x01, 0x11, 0x8F, 0x85, 0x19, 0xB0, 0x21, 0xB1, 0x21, 0xD2, 0x29, 0xB2, 0x31, 0xD2, 0x39, 0xD2, 0x01, 0x41, 0xD3, 0x80, 0x49, 0xD3, 0x01, 0x51, 0xD3, 0x83, 0x51, 0xF3, 0x59, 0xF3, 0x61, 0xF3, 0x61, 0xD3, 0x01, 0x61, 0xD2, 0x89, 0x61, 0xB2, 0x51, 0x70, 0x61, 0xB2, 0x72, 0x34, 0x8A, 0xF6, 0xA3, 0x98, 0xB4, 0x1A, 0xBC, 0x1A, 0xC4, 0x5A, 0xC4, 0x39, 0x01, 0xC4, 0x38, 0x03, 0xC4, 0x18, 0x80, 0xC3, 0xF8, 0x03, 0xC3, 0xF7, 0x02, 0xC3, 0xD7, 0x80, 0xC3, 0xF7, 0x08, 0xC3, 0xD7, 0x05, 0xC3, 0xB7, 0x82, 0xC3, 0xB6, 0xC3, 0x96, 0xC3, 0xB7, 0x02, 0xC3, 0x97, 0x83, 0xC3, 0x96, 0xC3, 0x97, 0xC3, 0x96, 0xC3, 0x97, 0x01, 0xCB, 0x76, 0x03, 0xCB, 0x56, 0x80, 0xD3, 0x56, 0x0B, 0xD3, 0x36, 0x01, 0xC3, 0x16, 0x90, 0xB3, 0x16, 0xB3, 0x36, 0xA2, 0xF5, 0xAB, 0x96, 0xBC, 0xBA, 0xB4, 0xD9, 0xAC, 0xD9, 0xA4, 0xB8, 0xA4, 0x98, 0x9C, 0x97, 0x9C, 0x98, 0x9C, 0xB9, 0x84, 0x78, 0x74, 0x99, 0x6D, 0x1A, 0x5D, 0x7C, 0x55, 0xDC, 0x01, 0x4E, 0x1D, 0x86, 0x4D, 0xFC, 0x55, 0xBB, 0x54, 0xD9, 0x5C, 0x17, 0x74, 0x18, 0x7B, 0xF9, 0x83, 0xF9, 0x01, 0x83, 0xB8, 0x87, 0x73, 0x36, 0x6B, 0x56, 0x63, 0x97, 0x5C, 0x38, 0x55, 0x3A, 0x55, 0xFC, 0x46, 0x3D, 0x36, 0x3D, 0x01, 0x1D, 0xFD, 0x02, 0x16, 0x1E, 0x03, 0x0D, 0xFE, 0x01, 0x0D, 0xDE, 0x01, 0x0D, 0xBE, 0x88, 0x0D, 0x9E, 0x15, 0x7D, 0x15, 0x5D, 0x15, 0x5E, 0x1D, 0x5E, + 0x1D, 0x3E, 0x25, 0x3E, 0x25, 0x1E, 0x24, 0xFD, 0x01, 0x2C, 0xDD, 0x85, 0x2C, 0x9D, 0x2C, 0x7C, 0x2C, 0x3C, 0x2C, 0x1C, 0x2B, 0xDB, 0x2B, 0xBB, 0x01, 0x2B, 0x9A, 0x80, 0x2B, 0x7A, 0x02, 0x2B, 0x79, 0x80, 0x33, 0x79, 0x01, 0x33, 0x59, 0x81, 0x33, 0x79, 0x2B, 0x59, 0x02, 0x33, 0x59, 0x03, 0x33, 0x39, 0x03, 0x2B, 0x19, 0x8E, 0x23, 0x19, 0x2B, 0x5A, 0x2B, 0xBA, 0x34, 0x1B, 0x44, 0x9C, 0x44, 0xFD, 0x55, 0x7D, 0x4D, 0x9E, 0x4D, 0xDE, 0x4D, 0xFE, 0x4E, 0x1E, 0x4E, 0x3E, 0x46, 0x5D, 0x46, 0x9D, 0x46, 0xBD, 0x01, 0x3E, 0xDD, 0x8E, 0x3E, 0xFD, 0x36, 0xDD, 0x36, 0xFE, 0x3E, 0xFD, 0x3E, 0xFE, 0x46, 0xDD, 0x4E, 0xDD, 0x5E, 0xBD, 0x6E, 0x7D, 0x86, 0x1C, 0x8D, 0x39, 0x9C, 0x37, 0xB3, 0xF7, 0xC3, 0xF7, 0xCB, 0xF8, 0x01, 0xD3, 0xF8, 0xA1, 0xD4, 0x19, 0xD4, 0x1B, 0xC4, 0x3D, 0x72, 0x59, 0x29, 0x38, 0x19, 0x3B, 0x11, 0x5C, 0x11, 0x7D, 0x09, 0x7D, 0x09, 0x9E, 0x09, 0x7D, 0x11, 0x7D, 0x19, 0x7C, 0x21, 0x5B, 0x39, 0x3A, 0x59, 0x59, 0x9A, 0x3A, 0xA2, 0x39, 0x99, 0xF7, 0x91, 0xF6, 0x8A, 0x37, 0x7A, 0x77, 0x62, 0xD8, 0x43, 0x59, 0x34, 0x7C, 0x25, 0x1D, 0x0D, 0x3D, 0x05, 0x7E, 0x05, 0xFE, 0x06, 0x5F, 0x06, 0xDF, 0x07, 0x1F, 0x07, 0x5F, 0x07, 0x7F, 0x01, 0x07, 0x9F, 0x8D, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0x9F, 0x0F, 0x7F, 0x1F, 0x7F, 0x2F, 0x3F, 0x3E, 0xDE, 0x66, 0xBF, 0x85, 0xBD, 0x52, 0x51, 0x8A, 0x94, 0xAA, 0x13, 0xB9, 0xB3, 0xC1, 0xB3, 0x01, 0xC9, 0x93, 0x81, 0xD1, 0xB4, 0xD1, 0xB3, 0x01, 0xC1, 0x93, 0x8A, 0xC1, 0x72, 0xC1, 0xB3, 0xC1, 0xD4, + 0xBA, 0x14, 0xB2, 0x14, 0x99, 0xF4, 0x58, 0xD0, 0x51, 0x11, 0x51, 0x72, 0x49, 0x92, 0x41, 0x72, 0x02, 0x39, 0x72, 0x01, 0x39, 0x51, 0x81, 0x31, 0x31, 0x39, 0x51, 0x03, 0x31, 0x51, 0x88, 0x29, 0x51, 0x29, 0x32, 0x21, 0x53, 0x21, 0x74, 0x19, 0x95, 0x11, 0xB6, 0x11, 0xD7, 0x12, 0x18, 0x0A, 0x18, 0x02, 0x09, 0xF8, 0x87, 0x12, 0x39, 0x12, 0x18, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x11, 0x31, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x04, 0x21, 0x31, 0x80, 0x21, 0x51, 0x03, 0x21, 0x31, 0x80, 0x19, 0x30, 0x01, 0x21, 0x31, 0x01, 0x21, 0x51, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x30, 0x05, 0x21, 0x31, 0x09, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x51, 0x8D, 0x19, 0x51, 0x11, 0x31, 0x11, 0x32, 0x11, 0x73, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x33, 0x11, 0x13, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x52, 0x03, 0x19, 0x31, 0x01, 0x21, 0x31, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x82, 0x19, 0x30, 0x21, 0x30, 0x21, 0x31, 0x01, 0x21, 0x30, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, + 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x29, 0x51, 0x07, 0x21, 0x30, 0x02, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0C, 0x21, 0x30, 0x80, 0x21, 0x31, 0x0E, 0x21, 0x30, 0x81, 0x29, 0x51, 0x21, 0x30, 0x02, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x50, 0x21, 0x51, 0x21, 0x30, 0x02, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x50, 0x09, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x8D, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x21, 0xF8, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0x96, 0x09, 0x75, 0x09, 0x74, 0x09, 0x33, 0x01, 0x09, 0x53, 0x01, 0x09, 0x33, 0x84, 0x11, 0x54, 0x11, 0x74, 0x11, 0x95, 0x19, 0xB6, 0x19, 0xF7, 0x01, 0x1A, 0x17, 0x86, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x13, 0x11, 0x12, 0x11, 0x32, 0x01, 0x19, + 0x31, 0x02, 0x21, 0x30, 0x84, 0x29, 0x50, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x06, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x10, 0x02, 0x10, 0xF1, 0x80, 0x10, 0xF2, 0x02, 0x09, 0x12, 0x80, 0x08, 0xF2, 0x0B, 0x09, 0x12, 0x03, 0x09, 0x13, 0x80, 0x11, 0x33, 0x03, 0x09, 0x33, 0x06, 0x11, 0x33, 0x82, 0x11, 0x53, 0x11, 0x33, 0x11, 0x54, 0x01, 0x11, 0x34, 0x01, 0x11, 0x54, 0x82, 0x11, 0x33, 0x11, 0x54, 0x11, 0x53, 0x01, 0x11, 0x33, 0x83, 0x11, 0x53, 0x11, 0x32, 0x11, 0x53, 0x11, 0x32, 0x02, 0x11, 0x53, 0x80, 0x09, 0x53, 0x01, 0x11, 0x74, 0x03, 0x09, 0x54, 0x07, 0x11, 0x54, 0x80, 0x09, 0x54, 0x01, 0x11, 0x54, 0x80, 0x09, 0x34, 0x01, 0x11, 0x54, 0x80, 0x11, 0x34, 0x01, 0x11, 0x54, 0x83, 0x09, 0x34, 0x11, 0x54, 0x11, 0x34, 0x11, 0x54, 0x01, 0x11, 0x34, 0x01, 0x11, 0x54, 0x01, 0x09, 0x34, 0x82, 0x11, 0x54, 0x11, 0x34, 0x09, 0x34, 0x01, 0x11, 0x34, 0x82, 0x09, 0x34, 0x11, 0x34, 0x11, + 0x54, 0x04, 0x09, 0x34, 0x81, 0x09, 0x13, 0x11, 0x33, 0x01, 0x09, 0x33, 0x03, 0x11, 0x33, 0x81, 0x11, 0x32, 0x09, 0x12, 0x01, 0x09, 0x32, 0x80, 0x11, 0x33, 0x01, 0x09, 0x32, 0x02, 0x09, 0x12, 0x84, 0x08, 0xF2, 0x00, 0xF2, 0x08, 0xF2, 0x00, 0xD1, 0x08, 0xF2, 0x02, 0x00, 0xF2, 0x80, 0x08, 0xF2, 0x02, 0x00, 0xF2, 0x80, 0x08, 0xF2, 0x02, 0x00, 0xF2, 0x81, 0x08, 0xF2, 0x00, 0xF2, 0x04, 0x08, 0xF2, 0x82, 0x08, 0xD1, 0x08, 0xF2, 0x08, 0xD2, 0x04, 0x08, 0xF2, 0x83, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD1, 0x00, 0xF2, 0x05, 0x00, 0xD1, 0x82, 0x00, 0xF1, 0x00, 0xF2, 0x00, 0xF1, 0x09, 0x00, 0xF2, 0x82, 0x08, 0xF2, 0x00, 0xF2, 0x08, 0xF2, 0x01, 0x00, 0xF2, 0x80, 0x00, 0xD1, 0x01, 0x00, 0xF2, 0x80, 0x08, 0xF2, 0x04, 0x00, 0xF2, 0x81, 0x09, 0x12, 0x00, 0xF2, 0x01, 0x08, 0xF2, 0x86, 0x09, 0x12, 0x00, 0xF2, 0x09, 0x12, 0x00, 0xF2, 0x09, 0x12, 0x00, 0xF2, 0x09, 0x12, 0x04, 0x00, 0xF2, 0x81, 0x01, 0x12, 0x00, 0xF2, 0x0A, 0x09, 0x12, 0x01, 0x09, 0x32, 0x82, 0x09, 0x12, 0x09, 0x32, 0x09, 0x12, 0x02, 0x09, 0x33, 0x81, 0x09, 0x12, 0x09, 0x33, 0x12, 0x09, 0x12, 0x80, 0x09, 0x13, 0x0C, 0x09, 0x12, 0x81, 0x09, 0x32, 0x09, 0x12, 0x01, 0x11, 0x32, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x03, 0x29, 0x30, 0x05, 0x31, 0x30, 0x01, 0x31, 0x2F, 0x86, 0x31, 0x0E, 0x30, 0xCE, 0x38, 0xCD, 0xAB, 0xD8, 0xD4, 0xDB, 0xDC, 0xBA, 0xDC, 0x99, 0x01, 0xD4, 0x99, 0x01, 0xD4, 0x78, 0x93, 0xCC, 0x98, + 0xCC, 0x99, 0xC4, 0x99, 0xB4, 0x58, 0xC5, 0x1B, 0xBD, 0x5C, 0xBD, 0x7C, 0xB5, 0x9D, 0xA5, 0xBD, 0xA5, 0xFE, 0x8D, 0x5C, 0x4B, 0x55, 0x2A, 0x51, 0x21, 0xF0, 0x19, 0xAF, 0x19, 0x90, 0x21, 0xB1, 0x29, 0xB1, 0x29, 0x91, 0x29, 0xB2, 0x01, 0x31, 0xB2, 0x80, 0x39, 0xD3, 0x01, 0x39, 0xB3, 0x01, 0x41, 0xB3, 0x01, 0x49, 0xD3, 0x01, 0x51, 0xB3, 0x01, 0x51, 0xB2, 0x80, 0x59, 0xB2, 0x01, 0x51, 0x92, 0x02, 0x59, 0x72, 0x03, 0x59, 0x51, 0x85, 0x61, 0x91, 0x69, 0xD2, 0x7A, 0x33, 0xB3, 0xB8, 0xCC, 0x7B, 0xCC, 0x5A, 0x01, 0xC4, 0x39, 0x81, 0xC4, 0x19, 0xCC, 0x19, 0x02, 0xCB, 0xF8, 0x01, 0xCB, 0xD7, 0x01, 0xCB, 0xB7, 0x05, 0xCB, 0xD7, 0x01, 0xCB, 0xB7, 0x80, 0xCB, 0xB6, 0x01, 0xCB, 0xB7, 0x82, 0xCB, 0x96, 0xC3, 0x96, 0xCB, 0x96, 0x01, 0xC3, 0x96, 0x03, 0xCB, 0x96, 0x06, 0xCB, 0x76, 0x82, 0xCB, 0x56, 0xCB, 0x76, 0xCB, 0x56, 0x01, 0xD3, 0x56, 0x81, 0xD3, 0x36, 0xD3, 0x56, 0x01, 0xD3, 0x36, 0x80, 0xD3, 0x16, 0x07, 0xD3, 0x36, 0x88, 0xCB, 0x37, 0xC3, 0x16, 0xBB, 0x37, 0xAA, 0xD6, 0x8A, 0x33, 0x8A, 0x32, 0xB3, 0xF8, 0xBC, 0x99, 0xBC, 0x98, 0x01, 0xB4, 0x98, 0x01, 0xB4, 0x77, 0x86, 0xB4, 0x98, 0xB4, 0xB8, 0x9C, 0x78, 0x8C, 0x79, 0x7C, 0xDA, 0x6D, 0x5B, 0x5D, 0x7B, 0x02, 0x55, 0xFD, 0x92, 0x5D, 0x9B, 0x64, 0xFA, 0x6B, 0xD7, 0x8B, 0xD8, 0x93, 0xB8, 0x9B, 0xB8, 0x9B, 0x98, 0x9B, 0x57, 0x92, 0xF6, 0x82, 0xB5, 0x72, 0xB5, 0x6B, 0x36, 0x64, 0x38, 0x5D, 0x3B, 0x55, 0xDC, 0x46, 0x3D, 0x2D, 0xFD, 0x25, 0xFD, 0x1D, 0xFE, 0x03, 0x15, 0xFE, 0x01, 0x15, + 0xDE, 0x81, 0x15, 0xBD, 0x15, 0x9D, 0x01, 0x15, 0x7D, 0x82, 0x15, 0x5D, 0x1D, 0x3D, 0x1D, 0x1D, 0x01, 0x25, 0x1D, 0x01, 0x2C, 0xFE, 0x90, 0x34, 0xDD, 0x3C, 0xDD, 0x44, 0xBD, 0x44, 0x9C, 0x44, 0x7C, 0x44, 0x3B, 0x4C, 0x1B, 0x4B, 0xDA, 0x4B, 0x9A, 0x4B, 0x79, 0x43, 0x58, 0x4B, 0x78, 0x53, 0x78, 0x53, 0x98, 0x5B, 0x99, 0x5B, 0xD9, 0x63, 0xDA, 0x02, 0x63, 0xFA, 0x05, 0x63, 0xDA, 0x02, 0x63, 0x99, 0x93, 0x63, 0xB9, 0x63, 0x99, 0x5B, 0x79, 0x4B, 0x18, 0x42, 0xF7, 0x43, 0x38, 0x4B, 0x79, 0x53, 0xFA, 0x5C, 0x7B, 0x64, 0xDB, 0x6D, 0x3C, 0x6D, 0x5D, 0x6D, 0x9D, 0x6D, 0xBD, 0x6D, 0xFD, 0x66, 0x1D, 0x66, 0x3D, 0x5E, 0x7D, 0x5E, 0x9D, 0x56, 0xBD, 0x01, 0x4E, 0xBD, 0x81, 0x46, 0xBD, 0x46, 0xDD, 0x01, 0x4E, 0xBD, 0x93, 0x56, 0xBD, 0x66, 0x9D, 0x76, 0x7D, 0x86, 0x1C, 0x95, 0x7A, 0xA4, 0x58, 0xB4, 0x18, 0xC3, 0xF7, 0xCB, 0xF8, 0xD3, 0xD7, 0xD3, 0xF8, 0xDB, 0xF8, 0xD4, 0x1A, 0xCC, 0x3C, 0xAB, 0xBD, 0x39, 0x37, 0x19, 0x1A, 0x19, 0x5B, 0x11, 0x7D, 0x11, 0x9D, 0x01, 0x09, 0x7D, 0x96, 0x11, 0x7D, 0x19, 0x7D, 0x21, 0x5B, 0x31, 0x3A, 0x49, 0x18, 0x92, 0x3A, 0xA2, 0x59, 0x99, 0xF7, 0x91, 0xF7, 0x8A, 0x17, 0x7A, 0x77, 0x62, 0xB8, 0x4B, 0x19, 0x34, 0x3C, 0x24, 0xBD, 0x15, 0x1E, 0x05, 0x5D, 0x05, 0xDF, 0x06, 0x3F, 0x06, 0xBF, 0x06, 0xFF, 0x07, 0x3F, 0x07, 0x5F, 0x01, 0x07, 0x9F, 0x01, 0x07, 0xDF, 0x8C, 0x0F, 0x9F, 0x0F, 0x7F, 0x17, 0x7F, 0x27, 0x5F, 0x36, 0xFE, 0x5E, 0xDF, 0x86, 0x5F, 0x52, 0xB2, 0x82, 0x73, 0xA2, 0x13, 0xB1, 0xD3, 0xC1, 0xB3, + 0xC1, 0x93, 0x02, 0xC9, 0xB3, 0x80, 0xC9, 0x93, 0x01, 0xC1, 0x93, 0x8B, 0xC1, 0xB3, 0xC1, 0xD4, 0xB9, 0xF4, 0xB1, 0xF4, 0xA2, 0x15, 0x61, 0x11, 0x51, 0x11, 0x51, 0x72, 0x49, 0x72, 0x41, 0x72, 0x41, 0x71, 0x41, 0x72, 0x01, 0x39, 0x72, 0x83, 0x39, 0x71, 0x31, 0x31, 0x31, 0x51, 0x39, 0x72, 0x02, 0x31, 0x51, 0x8B, 0x29, 0x31, 0x29, 0x52, 0x21, 0x33, 0x19, 0x74, 0x19, 0xB6, 0x11, 0xB7, 0x09, 0xB7, 0x09, 0xF8, 0x09, 0xF9, 0x01, 0xD8, 0x01, 0xF9, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x86, 0x12, 0x19, 0x12, 0x18, 0x11, 0xF7, 0x11, 0xD6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x12, 0x01, 0x11, 0x11, 0x01, 0x19, 0x31, 0x02, 0x19, 0x11, 0x0B, 0x19, 0x31, 0x01, 0x19, 0x11, 0x83, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x0A, 0x19, 0x31, 0x03, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x51, 0x01, 0x19, 0x31, 0x89, 0x11, 0x32, 0x11, 0x53, 0x11, 0x94, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xB6, 0x11, 0x54, 0x09, 0x33, 0x09, 0x13, 0x01, 0x11, 0x32, 0x03, 0x19, 0x52, 0x02, 0x19, 0x31, 0x84, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x03, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x51, 0x01, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, + 0x30, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x18, 0xF0, 0x01, 0x19, 0x10, 0x85, 0x21, 0x10, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x01, 0x21, 0x51, 0x8A, 0x21, 0x31, 0x21, 0x30, 0x19, 0x10, 0x21, 0x10, 0x19, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x50, 0x29, 0x51, 0x04, 0x21, 0x30, 0x01, 0x21, 0x50, 0x83, 0x21, 0x51, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x82, 0x21, 0x51, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x30, 0x84, 0x21, 0x51, 0x21, 0x50, 0x21, 0x51, 0x21, 0x30, 0x21, 0x31, 0x01, 0x21, 0x51, 0x80, 0x21, 0x31, 0x02, 0x21, 0x51, 0x80, 0x29, 0x51, 0x01, 0x29, 0x31, 0x81, 0x21, 0x30, 0x29, 0x51, 0x01, 0x21, 0x30, 0x82, 0x29, 0x91, 0x29, 0x71, 0x21, 0x51, 0x03, 0x21, 0x31, 0x82, 0x19, 0x10, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x06, 0x21, 0x30, 0x01, 0x21, 0x31, 0x06, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, + 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x86, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0x75, 0x19, 0x96, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x01, 0x11, 0xD7, 0x01, 0x11, 0xB7, 0x83, 0x11, 0xD7, 0x11, 0xD6, 0x11, 0xB6, 0x11, 0x95, 0x01, 0x11, 0xB6, 0x03, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x85, 0x21, 0xF6, 0x19, 0x95, 0x19, 0x94, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x82, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x01, 0x19, 0xB6, 0x83, 0x19, 0xF7, 0x19, 0xF8, 0x1A, 0x18, 0x19, 0xF8, 0x09, 0x1A, 0x18, 0x87, 0x22, 0x39, 0x1A, 0x18, 0x22, 0x19, 0x1A, 0x18, 0x1A, 0x19, + 0x1A, 0x18, 0x22, 0x39, 0x1A, 0x18, 0x02, 0x1A, 0x19, 0x02, 0x1A, 0x18, 0x82, 0x1A, 0x39, 0x1A, 0x18, 0x22, 0x39, 0x02, 0x1A, 0x18, 0x82, 0x22, 0x18, 0x19, 0xF8, 0x1A, 0x18, 0x03, 0x19, 0xF8, 0x80, 0x11, 0xF7, 0x01, 0x19, 0xF8, 0x05, 0x19, 0xF7, 0x80, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x03, 0x11, 0xF8, 0x80, 0x12, 0x18, 0x01, 0x11, 0xF8, 0x87, 0x1A, 0x18, 0x11, 0xF8, 0x1A, 0x18, 0x19, 0xF8, 0x1A, 0x18, 0x11, 0xF8, 0x1A, 0x18, 0x12, 0x18, 0x03, 0x11, 0xF8, 0x80, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x02, 0x11, 0xF8, 0x81, 0x19, 0xF8, 0x11, 0xF8, 0x02, 0x19, 0xF8, 0x81, 0x11, 0xF8, 0x1A, 0x19, 0x03, 0x19, 0xF8, 0x86, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0xF8, 0x1A, 0x19, 0x19, 0xF8, 0x02, 0x1A, 0x19, 0x80, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x82, 0x22, 0x39, 0x1A, 0x18, 0x1A, 0x38, 0x02, 0x1A, 0x18, 0x87, 0x1A, 0x38, 0x1A, 0x18, 0x1A, 0x39, 0x1A, 0x19, 0x22, 0x39, 0x1A, 0x18, 0x22, 0x38, 0x22, 0x18, 0x07, 0x1A, 0x18, 0x80, 0x19, 0xF8, 0x05, 0x1A, 0x18, 0x82, 0x1A, 0x19, 0x1A, 0x18, 0x1A, 0x19, 0x08, 0x1A, 0x18, 0x84, 0x22, 0x18, 0x1A, 0x18, 0x1A, 0x19, 0x1A, 0x18, 0x22, 0x18, 0x0C, 0x1A, 0x18, 0x80, 0x1A, 0x38, 0x16, 0x1A, 0x18, 0x80, 0x1A, 0x38, 0x11, 0x1A, 0x18, 0x83, 0x19, 0xF8, 0x1A, 0x18, 0x19, 0xF8, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x8A, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xD8, 0x19, 0xF8, 0x11, 0xF8, 0x05, 0x19, 0xF8, 0x08, 0x1A, 0x18, 0x83, 0x19, + 0xF8, 0x1A, 0x18, 0x19, 0xF8, 0x1A, 0x18, 0x05, 0x19, 0xF8, 0x80, 0x11, 0xF8, 0x08, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x86, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x95, 0x19, 0x74, 0x19, 0x73, 0x19, 0x52, 0x21, 0x31, 0x01, 0x21, 0x30, 0x04, 0x29, 0x30, 0x01, 0x31, 0x30, 0x81, 0x29, 0x30, 0x31, 0x30, 0x01, 0x29, 0x30, 0x89, 0x29, 0x2F, 0x31, 0x2F, 0x29, 0x0F, 0x30, 0xEE, 0x38, 0xCD, 0x9B, 0x77, 0xD4, 0xFC, 0xD4, 0xBA, 0xDC, 0xB9, 0xDC, 0x99, 0x01, 0xD4, 0x79, 0x01, 0xD4, 0x78, 0x01, 0xCC, 0x99, 0x88, 0xC4, 0xB9, 0xC4, 0xFA, 0xBD, 0x3B, 0xBD, 0x7D, 0xAD, 0x5C, 0x94, 0xDB, 0x63, 0x76, 0x21, 0xB0, 0x19, 0x6F, 0x01, 0x21, 0x90, 0x85, 0x21, 0x91, 0x29, 0x91, 0x29, 0xB1, 0x29, 0xB2, 0x31, 0xB2, 0x39, 0xD3, 0x01, 0x31, 0xD3, 0x02, 0x39, 0xD3, 0x01, 0x41, 0xB3, 0x01, 0x49, 0xB3, 0x83, 0x49, 0xD3, 0x51, 0xD3, 0x51, 0xB3, 0x49, 0xB2, 0x04, 0x51, 0x92, 0x81, 0x59, 0xB2, 0x59, 0x93, 0x01, 0x59, 0x92, 0x02, 0x59, 0x72, 0x89, 0x59, 0x92, 0x59, 0x71, 0x51, 0x30, 0x51, 0x0F, 0x7A, 0x74, 0xA3, 0x57, 0xAB, 0xB8, 0xC4, 0x1A, 0xC4, 0x19, 0xCC, 0x19, 0x02, 0xCB, 0xF8, 0x82, 0xD3, 0xF8, 0xCB, 0xD7, 0xD3, 0xD7, 0x07, 0xCB, 0xB7, 0x80, 0xCB, 0xB6, 0x04, 0xCB, 0x96, 0x06, 0xCB, 0x76, 0x03, 0xCB, 0x56, 0x82, 0xD3, 0x76, 0xD3, 0x56, 0xD3, 0x76, 0x03, 0xD3, 0x56, 0x81, 0xD3, 0x36, 0xD3, 0x56, 0x09, 0xD3, 0x36, 0x87, 0xCB, 0x37, 0xCB, 0x57, 0xB2, 0xF6, 0xA2, 0x95, 0x79, 0xD2, 0x79, 0xD1, 0x92, 0x93, 0xCC, 0x9A, 0x01, 0xCC, 0xB9, 0x03, 0xC4, 0xB8, 0x9C, 0xC4, + 0xD8, 0xC4, 0xD9, 0xB4, 0x99, 0x9C, 0x99, 0x8D, 0x1B, 0x75, 0x5C, 0x65, 0x9C, 0x5D, 0xFD, 0x56, 0x1D, 0x5E, 0x1D, 0x65, 0xBC, 0x6D, 0x1A, 0x73, 0xD7, 0x93, 0xB8, 0x9B, 0x98, 0xA3, 0x78, 0xAB, 0x78, 0xAB, 0x57, 0xA2, 0xF5, 0x9A, 0xB5, 0x8A, 0x54, 0x82, 0x95, 0x73, 0x16, 0x64, 0x18, 0x5D, 0x3B, 0x4D, 0xDC, 0x3D, 0xFD, 0x2D, 0xFD, 0x25, 0xFD, 0x01, 0x1D, 0xFD, 0x80, 0x15, 0xDD, 0x01, 0x15, 0xBD, 0x87, 0x15, 0x9E, 0x1D, 0x9E, 0x25, 0x9E, 0x25, 0x7E, 0x25, 0x5D, 0x25, 0x3D, 0x2D, 0x1D, 0x2C, 0xFD, 0x01, 0x34, 0xDD, 0x8C, 0x34, 0xBD, 0x3C, 0x9C, 0x44, 0x7C, 0x44, 0x5B, 0x54, 0x3B, 0x5C, 0x3B, 0x64, 0x3A, 0x6C, 0x1A, 0x7C, 0x5A, 0x8C, 0x7B, 0x9C, 0xDC, 0xB5, 0x3D, 0xBD, 0x5E, 0x01, 0xBD, 0x5D, 0x04, 0xBD, 0x3D, 0x01, 0xBD, 0x1D, 0x02, 0xB5, 0x1D, 0x84, 0xBD, 0x1C, 0xB5, 0x1C, 0xBD, 0x1C, 0xBD, 0x1D, 0xBD, 0x3D, 0x01, 0xBD, 0x1C, 0x86, 0xBD, 0x1D, 0xBD, 0x1C, 0xBD, 0x3D, 0xB5, 0x3D, 0xA4, 0xBB, 0x9C, 0x9B, 0x94, 0xBB, 0x01, 0x8C, 0x9A, 0x8B, 0x84, 0x7A, 0x84, 0xBA, 0x84, 0xDB, 0x84, 0xFB, 0x85, 0x3C, 0x7D, 0x5C, 0x7D, 0x9C, 0x75, 0xBC, 0x75, 0xFD, 0x6E, 0x3D, 0x66, 0x5D, 0x5E, 0x7D, 0x01, 0x5E, 0x9D, 0x89, 0x5E, 0xBD, 0x5E, 0x9D, 0x66, 0x9D, 0x6E, 0x7D, 0x76, 0x5C, 0x8E, 0x1C, 0x9D, 0xBB, 0xA4, 0x78, 0xB3, 0xF7, 0xC3, 0xF7, 0x02, 0xD3, 0xD7, 0x88, 0xDB, 0xD8, 0xD3, 0xF9, 0xD4, 0x1A, 0xC4, 0x3E, 0x59, 0xD8, 0x29, 0x39, 0x19, 0x5B, 0x11, 0x7C, 0x11, 0x7D, 0x01, 0x09, 0x7D, 0x01, 0x11, 0x7D, 0x84, 0x21, 0x5C, 0x29, 0x5B, 0x40, + 0xF8, 0x79, 0xD9, 0x9A, 0x19, 0x01, 0x91, 0xF7, 0x8E, 0x8A, 0x17, 0x82, 0x57, 0x6A, 0x98, 0x53, 0x19, 0x3B, 0xFB, 0x2C, 0x9D, 0x14, 0xDD, 0x0D, 0x3D, 0x05, 0xBE, 0x06, 0x3F, 0x06, 0x9F, 0x06, 0xFF, 0x07, 0x3F, 0x07, 0x7F, 0x07, 0x9F, 0x01, 0x07, 0xBF, 0x8D, 0x07, 0xDF, 0x07, 0xBF, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x7F, 0x2E, 0xFE, 0x4E, 0x9E, 0x86, 0xBF, 0x53, 0x33, 0x7A, 0x73, 0x99, 0xF2, 0xBA, 0x14, 0xC1, 0xB3, 0xC1, 0x93, 0x01, 0xC9, 0x93, 0x81, 0xC9, 0xB3, 0xC1, 0x73, 0x01, 0xC1, 0x93, 0x8C, 0xC1, 0xB3, 0xB9, 0xB3, 0xB9, 0xF4, 0xB2, 0x14, 0xAA, 0x35, 0x69, 0x11, 0x50, 0xF1, 0x51, 0x52, 0x51, 0x92, 0x49, 0x92, 0x41, 0x71, 0x39, 0x71, 0x41, 0x72, 0x02, 0x39, 0x71, 0x81, 0x31, 0x51, 0x39, 0x71, 0x01, 0x31, 0x51, 0x89, 0x31, 0x52, 0x29, 0x11, 0x21, 0x12, 0x21, 0x33, 0x21, 0x95, 0x11, 0xB7, 0x11, 0xF8, 0x01, 0xB8, 0x01, 0xD9, 0x01, 0xF9, 0x02, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x85, 0x01, 0xF9, 0x0A, 0x19, 0x09, 0xF8, 0x11, 0xD7, 0x09, 0x95, 0x09, 0x33, 0x01, 0x09, 0x12, 0x01, 0x11, 0x12, 0x85, 0x11, 0x32, 0x11, 0x12, 0x19, 0x11, 0x10, 0xF1, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x32, 0x80, 0x11, 0x12, 0x01, 0x19, 0x32, 0x80, 0x11, 0x31, 0x0A, 0x19, 0x11, 0x01, 0x19, 0x12, 0x81, 0x11, 0x11, 0x11, 0x12, 0x02, 0x11, 0x11, 0x01, 0x11, 0x31, 0x81, 0x11, 0x11, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x85, 0x19, 0x31, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, + 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x50, 0x86, 0x21, 0x51, 0x19, 0x10, 0x19, 0x31, 0x19, 0x52, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x01, 0x22, 0x18, 0x85, 0x11, 0x96, 0x09, 0x34, 0x09, 0x33, 0x09, 0x13, 0x09, 0x33, 0x11, 0x33, 0x01, 0x11, 0x53, 0x83, 0x11, 0x73, 0x11, 0x52, 0x19, 0x52, 0x19, 0x32, 0x01, 0x19, 0x11, 0x81, 0x21, 0x11, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x50, 0x21, 0x50, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x50, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x80, 0x21, 0x52, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x21, 0x30, 0x19, 0x10, 0x21, 0x31, 0x19, 0x11, 0x01, 0x19, 0x10, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x51, 0x81, 0x21, 0x31, 0x19, 0x10, 0x01, 0x18, 0xF0, 0x02, 0x19, 0x10, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x51, 0x01, 0x19, 0x10, 0x01, 0x19, 0x31, 0x86, 0x19, 0x11, 0x19, 0x10, 0x21, 0x31, 0x19, 0x10, 0x21, 0x51, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x19, 0x10, 0x19, 0x30, 0x02, 0x19, 0x10, 0x85, 0x21, 0x31, 0x21, 0x51, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x19, 0x10, 0x80, 0x18, 0xF0, 0x01, 0x19, 0x10, 0x81, + 0x18, 0xF0, 0x19, 0x10, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x01, 0x21, 0x10, 0x82, 0x18, 0xF0, 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x19, 0x10, 0x01, 0x19, 0x11, 0x82, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x03, 0x21, 0x31, 0x01, 0x19, 0x10, 0x82, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x04, 0x19, 0x10, 0x07, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x89, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xB6, 0x19, 0xF7, 0x1A, 0x18, 0x02, 0x19, 0xF8, 0x81, 0x11, 0xF8, 0x11, 0xF7, 0x01, 0x1A, 0x18, 0x80, 0x19, 0xF8, 0x01, 0x19, 0xF7, 0x80, 0x11, 0xB6, 0x01, 0x19, 0xD6, 0x88, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x74, 0x11, 0x53, 0x19, 0x52, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, + 0x29, 0x10, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0x54, 0x19, 0x95, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xD8, 0x11, 0xF9, 0x11, 0xD8, 0x02, 0x11, 0xF9, 0x82, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xD8, 0x02, 0x09, 0xD9, 0x80, 0x09, 0xD8, 0x03, 0x09, 0xD9, 0x80, 0x09, 0xF9, 0x06, 0x09, 0xD9, 0x81, 0x09, 0xF9, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x80, 0x09, 0xF9, 0x03, 0x09, 0xD9, 0x82, 0x09, 0xD8, 0x11, 0xF9, 0x09, 0xD9, 0x0D, 0x09, 0xD8, 0x81, 0x09, 0xF8, 0x09, 0xD8, 0x06, 0x09, 0xF8, 0x01, 0x09, 0xF9, 0x82, 0x09, 0xD8, 0x09, 0xF9, 0x09, 0xD8, 0x02, 0x09, 0xF8, 0x80, 0x09, 0xD8, 0x01, 0x09, 0xF8, 0x87, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xD9, 0x02, 0x09, 0xF9, 0x80, 0x09, 0xD8, 0x03, 0x09, 0xF9, 0x81, 0x11, 0xF9, 0x09, 0xD9, 0x02, 0x09, 0xF9, 0x81, 0x09, 0xD9, 0x09, 0xF9, 0x06, 0x09, 0xD9, 0x81, 0x09, 0xF9, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x85, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xD9, 0x09, 0xD8, 0x02, 0x09, 0xD9, 0x82, 0x09, 0xB8, + 0x11, 0xF9, 0x11, 0xF8, 0x06, 0x11, 0xF9, 0x03, 0x09, 0xF9, 0x81, 0x11, 0xF9, 0x09, 0xF9, 0x12, 0x11, 0xF9, 0x80, 0x09, 0xF9, 0x0A, 0x11, 0xF9, 0x01, 0x09, 0xF9, 0x01, 0x11, 0xF9, 0x01, 0x09, 0xF9, 0x01, 0x11, 0xF9, 0x02, 0x09, 0xF9, 0x81, 0x11, 0xF9, 0x09, 0xF9, 0x01, 0x11, 0xF9, 0x05, 0x09, 0xF9, 0x80, 0x11, 0xF9, 0x18, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x81, 0x09, 0xF9, 0x11, 0xF9, 0x02, 0x09, 0xF9, 0x80, 0x09, 0xD9, 0x04, 0x09, 0xF9, 0x05, 0x11, 0xF9, 0x06, 0x09, 0xF9, 0x80, 0x11, 0xF9, 0x03, 0x09, 0xF9, 0x02, 0x09, 0xD9, 0x83, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x80, 0x11, 0xF9, 0x01, 0x09, 0xF9, 0x01, 0x11, 0xF9, 0x80, 0x09, 0xD9, 0x04, 0x11, 0xF9, 0x01, 0x11, 0xF8, 0x86, 0x19, 0xF8, 0x19, 0xD7, 0x21, 0xB5, 0x21, 0x94, 0x21, 0x32, 0x21, 0x31, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x81, 0x31, 0x30, 0x31, 0x50, 0x01, 0x31, 0x30, 0x02, 0x29, 0x2F, 0x86, 0x29, 0x0F, 0x30, 0xEE, 0x28, 0x8C, 0x7A, 0x93, 0xD4, 0xDC, 0xD4, 0xBA, 0xDC, 0xBA, 0x01, 0xDC, 0x99, 0x82, 0xD4, 0x99, 0xD4, 0x79, 0xD4, 0x99, 0x01, 0xCC, 0x99, 0x88, 0xCC, 0xBA, 0xC4, 0xDA, 0xC5, 0x1C, 0xBD, 0x3D, 0x5A, 0xB3, 0x39, 0xD0, 0x29, 0x4F, 0x21, 0x70, 0x29, 0x90, 0x01, 0x29, 0x91, 0x80, 0x31, 0x92, 0x02, 0x31, 0xB2, 0x02, 0x39, 0xB3, 0x02, 0x39, 0xD3, 0x02, 0x41, 0xD3, 0x80, 0x41, 0xB3, 0x01, 0x49, 0xD3, 0x80, 0x49, 0xD4, 0x01, 0x49, 0xD3, 0x80, 0x49, 0xB3, 0x03, 0x51, 0xB3, 0x05, 0x59, 0xB3, 0x01, + 0x59, 0x93, 0x80, 0x59, 0x92, 0x01, 0x51, 0x92, 0x8B, 0x59, 0x92, 0x51, 0x71, 0x59, 0x71, 0x61, 0x91, 0x71, 0xD2, 0x8A, 0x94, 0xAB, 0x37, 0xBB, 0xD8, 0xCC, 0x19, 0xD4, 0x19, 0xCB, 0xF8, 0xD3, 0xF8, 0x01, 0xD3, 0xD8, 0x80, 0xD3, 0xB7, 0x02, 0xCB, 0x97, 0x01, 0xD3, 0x97, 0x80, 0xD3, 0x96, 0x01, 0xCB, 0x96, 0x80, 0xD3, 0x96, 0x05, 0xD3, 0x76, 0x0E, 0xD3, 0x56, 0x01, 0xD3, 0x36, 0x01, 0xD3, 0x56, 0x03, 0xD3, 0x36, 0x02, 0xD3, 0x57, 0x84, 0xCB, 0x57, 0xC3, 0x37, 0xB2, 0xD6, 0x92, 0x34, 0x79, 0x91, 0x01, 0x71, 0xB1, 0x85, 0xCC, 0x39, 0xD4, 0x99, 0xD4, 0xB9, 0xD4, 0xD9, 0xD4, 0xB8, 0xCC, 0xB8, 0x01, 0xD4, 0xB8, 0x87, 0xCC, 0xB8, 0xCC, 0xD9, 0xBC, 0x98, 0xA4, 0x98, 0x8D, 0x1B, 0x75, 0x5B, 0x65, 0x7B, 0x5D, 0xDC, 0x01, 0x5E, 0x1D, 0x94, 0x65, 0xDC, 0x6D, 0x1B, 0x7B, 0xF8, 0x9B, 0xB8, 0xA3, 0x57, 0xAB, 0x37, 0xB3, 0x16, 0xBB, 0x16, 0xB2, 0xD5, 0xB2, 0xB5, 0xA2, 0x75, 0x9A, 0x75, 0x7A, 0x54, 0x73, 0x16, 0x64, 0x79, 0x5D, 0x7B, 0x45, 0xBC, 0x35, 0xBC, 0x2D, 0xDD, 0x25, 0xDD, 0x1D, 0xDD, 0x01, 0x1D, 0xBD, 0x96, 0x1D, 0x9D, 0x25, 0x9E, 0x2D, 0x7E, 0x35, 0x7E, 0x3D, 0x7E, 0x3D, 0x5E, 0x45, 0x3E, 0x44, 0xFD, 0x4C, 0xDD, 0x54, 0xBC, 0x54, 0x9C, 0x54, 0x5B, 0x5C, 0x5B, 0x5C, 0x3A, 0x6C, 0x3A, 0x7C, 0x7B, 0x8C, 0xBC, 0x9C, 0xFC, 0xAC, 0xFC, 0xB4, 0xFC, 0xBC, 0xFC, 0xC4, 0xFB, 0xC4, 0xDB, 0x01, 0xC4, 0xDA, 0x80, 0xCC, 0xDA, 0x01, 0xC4, 0xDA, 0x82, 0xCC, 0xDA, 0xC4, 0xDA, 0xCC, 0xDA, 0x05, 0xCC, 0xBA, 0x81, 0xCC, 0xDA, 0xCC, 0xBA, 0x02, + 0xCC, 0xDA, 0x80, 0xCC, 0xBA, 0x01, 0xCC, 0xDA, 0x81, 0xC4, 0xD9, 0xC4, 0xDA, 0x02, 0xBC, 0xDA, 0x82, 0xB4, 0xDA, 0xAC, 0xBA, 0xA4, 0x79, 0x01, 0xA4, 0x9A, 0x8A, 0xA4, 0xBA, 0x9C, 0xBA, 0x94, 0xDA, 0x8C, 0xDA, 0x8C, 0xFB, 0x85, 0x3B, 0x7D, 0x7B, 0x75, 0x9B, 0x75, 0xFC, 0x76, 0x3D, 0x76, 0x5D, 0x01, 0x76, 0x7D, 0x87, 0x76, 0x5D, 0x7E, 0x5D, 0x86, 0x3C, 0x95, 0xFC, 0xA5, 0x7B, 0xAC, 0x99, 0xBB, 0xF7, 0xCB, 0xF7, 0x02, 0xD3, 0xD7, 0x88, 0xDB, 0xD7, 0xDB, 0xF8, 0xD3, 0xF9, 0xCC, 0x3D, 0x82, 0xDB, 0x39, 0x38, 0x21, 0x5A, 0x19, 0x7C, 0x11, 0x7C, 0x01, 0x09, 0x7D, 0x97, 0x11, 0x9D, 0x11, 0x7D, 0x19, 0x5C, 0x29, 0x5B, 0x39, 0x19, 0x69, 0x79, 0x92, 0x1A, 0x91, 0xF8, 0x91, 0xF7, 0x89, 0xF7, 0x7A, 0x37, 0x6A, 0x98, 0x53, 0x19, 0x3B, 0xBB, 0x2C, 0x5D, 0x1C, 0xDD, 0x0D, 0x1D, 0x0D, 0xBE, 0x06, 0x1F, 0x06, 0x9F, 0x06, 0xFF, 0x07, 0x3F, 0x07, 0x7F, 0x07, 0x9F, 0x01, 0x07, 0xBF, 0x8E, 0x07, 0xDF, 0x07, 0x9F, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x7F, 0x2F, 0x1F, 0x46, 0xBE, 0x7E, 0xDF, 0x5B, 0xD6, 0x72, 0x52, 0xA2, 0x33, 0xB1, 0xD3, 0xC1, 0xB3, 0xC1, 0x93, 0xC9, 0x93, 0x01, 0xC9, 0xB3, 0x80, 0xC1, 0x73, 0x01, 0xC9, 0xB3, 0x01, 0xC1, 0xB3, 0x87, 0xB9, 0xF4, 0xB1, 0xD4, 0xAA, 0x35, 0x71, 0x32, 0x50, 0xF0, 0x51, 0x52, 0x51, 0x72, 0x49, 0x72, 0x01, 0x41, 0x71, 0x80, 0x41, 0x72, 0x01, 0x39, 0x71, 0x80, 0x39, 0x51, 0x01, 0x31, 0x51, 0x80, 0x31, 0x72, 0x01, 0x31, 0x52, 0x88, 0x29, 0x31, 0x21, 0x32, 0x21, 0x53, 0x21, 0x96, 0x19, 0xD8, 0x09, 0xD8, + 0x09, 0xD9, 0x01, 0xF9, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x8B, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xF9, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0x96, 0x09, 0x54, 0x11, 0x54, 0x09, 0x33, 0x01, 0x11, 0x33, 0x83, 0x11, 0x32, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x02, 0x19, 0x32, 0x07, 0x11, 0x32, 0x80, 0x11, 0x12, 0x03, 0x19, 0x12, 0x05, 0x11, 0x12, 0x80, 0x11, 0x33, 0x06, 0x11, 0x32, 0x81, 0x11, 0x33, 0x19, 0x52, 0x01, 0x19, 0x53, 0x01, 0x19, 0x32, 0x01, 0x19, 0x12, 0x83, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x50, 0x21, 0x30, 0x19, 0x30, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x52, 0x11, 0x53, 0x11, 0x75, 0x19, 0xD6, 0x22, 0x38, 0x19, 0xD7, 0x09, 0x75, 0x09, 0x54, 0x09, 0x34, 0x09, 0x33, 0x01, 0x33, 0x09, 0x33, 0x01, 0x09, 0x53, 0x86, 0x11, 0x73, 0x19, 0x94, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x18, 0xF1, 0x19, 0x11, 0x05, 0x21, 0x31, 0x83, 0x29, 0x72, 0x21, 0x52, 0x19, 0x11, 0x19, 0x10, 0x01, 0x19, 0x11, 0x82, 0x21, 0x51, 0x21, 0x71, 0x21, 0x51, 0x06, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x19, 0x11, 0x18, 0xF0, 0x03, 0x19, 0x11, 0x01, 0x18, 0xF0, + 0x02, 0x19, 0x10, 0x83, 0x21, 0x31, 0x19, 0x31, 0x10, 0xF0, 0x11, 0x10, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x86, 0x29, 0x51, 0x21, 0x30, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x10, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x84, 0x21, 0x52, 0x21, 0x31, 0x19, 0x31, 0x19, 0x10, 0x19, 0x30, 0x01, 0x19, 0x10, 0x85, 0x19, 0x30, 0x18, 0xEF, 0x19, 0x10, 0x10, 0xEF, 0x10, 0xF0, 0x18, 0xF0, 0x01, 0x10, 0xD0, 0x80, 0x19, 0x11, 0x03, 0x21, 0x31, 0x88, 0x19, 0x10, 0x21, 0x30, 0x29, 0x71, 0x21, 0x30, 0x19, 0x0F, 0x19, 0x10, 0x19, 0x30, 0x19, 0x10, 0x19, 0x11, 0x01, 0x21, 0x52, 0x01, 0x19, 0x11, 0x01, 0x21, 0x51, 0x81, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x52, 0x01, 0x19, 0x10, 0x83, 0x21, 0x51, 0x21, 0x31, 0x21, 0x51, 0x19, 0x30, 0x06, 0x19, 0x10, 0x80, 0x21, 0x30, 0x01, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x84, 0x29, 0x10, 0x20, 0xEF, 0x29, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x31, 0x01, 0x19, 0x11, 0x01, 0x11, 0x12, 0x90, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xB6, 0x19, 0xD7, 0x19, + 0xF7, 0x19, 0xF8, 0x1A, 0x18, 0x22, 0x38, 0x22, 0x39, 0x22, 0x38, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x19, 0x74, 0x01, 0x11, 0x53, 0x83, 0x11, 0x32, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x51, 0x80, 0x19, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x07, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x50, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x53, 0x11, 0x54, 0x11, 0x95, 0x11, 0x96, 0x11, 0xB7, 0x09, 0xB8, 0x09, 0xD8, 0x01, 0x09, 0xB9, 0x82, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xB9, 0x05, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x02, 0x09, 0xD9, 0x01, 0x09, 0xB9, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x81, 0x01, 0xB9, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x80, 0x09, 0xD9, 0x02, 0x01, 0xD9, 0x09, 0x09, 0xD9, + 0x85, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xFA, 0x09, 0xF9, 0x01, 0xD9, 0x04, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x83, 0x01, 0xD8, 0x09, 0xF8, 0x09, 0xF9, 0x01, 0xF9, 0x05, 0x01, 0xD9, 0x03, 0x09, 0xD9, 0x82, 0x09, 0xF9, 0x01, 0xD8, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x86, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0xD9, 0x03, 0x09, 0xD9, 0x80, 0x01, 0xB9, 0x05, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x05, 0x09, 0xD9, 0x82, 0x01, 0xD9, 0x09, 0xB9, 0x09, 0xD9, 0x02, 0x01, 0xB9, 0x02, 0x01, 0xD9, 0x01, 0x01, 0xB8, 0x03, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x04, 0x09, 0xF9, 0x84, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xFA, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x01, 0x09, 0xFA, 0x80, 0x09, 0xF9, 0x03, 0x09, 0xFA, 0x80, 0x09, 0xDA, 0x09, 0x09, 0xD9, 0x1E, 0x09, 0xF9, 0x80, 0x09, 0xD9, 0x0A, 0x09, 0xF9, 0x80, 0x09, 0xD9, 0x16, 0x09, 0xF9, 0x80, 0x09, 0xD9, 0x02, 0x09, 0xF9, 0x80, 0x09, 0xFA, 0x07, 0x09, 0xF9, 0x80, 0x09, 0xFA, 0x07, 0x09, 0xF9, 0x80, 0x09, 0xD9, 0x04, 0x09, 0xF9, 0x81, 0x09, 0xFA, 0x09, 0xF9, 0x02, 0x09, 0xD9, 0x05, 0x09, 0xF9, 0x81, 0x09, 0xFA, 0x09, 0xF9, 0x02, 0x09, 0xFA, 0x82, 0x09, 0xD9, 0x09, 0xFA, 0x09, 0xF9, 0x02, 0x11, 0xF9, 0x85, 0x19, 0xF8, 0x19, 0xD7, 0x21, 0xB5, 0x19, 0x52, 0x21, 0x31, 0x21, 0x30, 0x04, 0x29, 0x30, 0x02, 0x31, 0x30, 0x80, 0x31, 0x2F, 0x01, 0x29, 0x2F, 0x87, 0x29, 0x0F, 0x30, 0xEE, 0x30, 0xCD, 0x61, 0xD1, 0xDD, 0x3D, 0xD4, 0xBA, 0xD4, 0x9A, 0xD4, 0x99, 0x03, 0xD4, + 0x79, 0x01, 0xCC, 0x99, 0x85, 0xCC, 0xBA, 0xCC, 0xFB, 0xB4, 0xDB, 0x7B, 0x76, 0x29, 0x0E, 0x29, 0x4F, 0x01, 0x29, 0x70, 0x01, 0x29, 0x91, 0x80, 0x31, 0x91, 0x02, 0x31, 0x92, 0x01, 0x39, 0xB2, 0x03, 0x39, 0xB3, 0x82, 0x39, 0xD3, 0x39, 0xB3, 0x41, 0xB3, 0x01, 0x41, 0xD3, 0x05, 0x49, 0xD3, 0x05, 0x51, 0xD3, 0x06, 0x51, 0xB3, 0x80, 0x59, 0xB3, 0x02, 0x51, 0xB3, 0x80, 0x51, 0x92, 0x02, 0x59, 0x92, 0x88, 0x59, 0x71, 0x59, 0x50, 0x71, 0xF2, 0x7A, 0x33, 0x9A, 0xF5, 0xB3, 0x98, 0xC3, 0xB8, 0xCB, 0xF9, 0xD3, 0xF8, 0x01, 0xD3, 0xD8, 0x01, 0xD3, 0xD7, 0x02, 0xD3, 0xB7, 0x03, 0xD3, 0x97, 0x01, 0xD3, 0x96, 0x02, 0xD3, 0x76, 0x80, 0xD3, 0x56, 0x01, 0xD3, 0x76, 0x0C, 0xD3, 0x56, 0x80, 0xDB, 0x56, 0x03, 0xD3, 0x56, 0x81, 0xD3, 0x37, 0xD3, 0x57, 0x01, 0xCB, 0x57, 0x89, 0xC3, 0x57, 0xB3, 0x17, 0x9A, 0x75, 0x8A, 0x34, 0x71, 0x91, 0x69, 0x91, 0x71, 0x91, 0x9A, 0xD5, 0xDC, 0xBB, 0xD4, 0x79, 0x01, 0xD4, 0x99, 0x04, 0xD4, 0x98, 0x9C, 0xCC, 0xB8, 0xBC, 0x98, 0xA4, 0x98, 0x8D, 0x1A, 0x7D, 0x7B, 0x5D, 0x7B, 0x55, 0xDC, 0x56, 0x1D, 0x5E, 0x1D, 0x65, 0xDD, 0x6D, 0x1B, 0x7B, 0xF8, 0x9B, 0xD8, 0xA3, 0x16, 0xB2, 0xD6, 0xBA, 0xD5, 0xC2, 0xD6, 0xC2, 0xB5, 0xC2, 0x95, 0xBA, 0x95, 0xB2, 0x95, 0x91, 0xF4, 0x7A, 0x54, 0x63, 0x77, 0x6C, 0xFB, 0x55, 0x9C, 0x45, 0xBC, 0x35, 0x9C, 0x25, 0x9C, 0x01, 0x25, 0x9D, 0x8F, 0x2D, 0x9E, 0x2D, 0x7D, 0x35, 0x5D, 0x35, 0x3E, 0x3D, 0x1E, 0x4C, 0xFD, 0x54, 0xDD, 0x64, 0xDC, 0x85, 0x3D, 0x95, 0x5D, 0x9D, 0x5D, 0x9D, 0x3D, + 0xA5, 0x3D, 0xAD, 0x3D, 0xAD, 0x3C, 0xB5, 0x1C, 0x01, 0xB4, 0xFC, 0x01, 0xBC, 0xDB, 0x01, 0xC4, 0xDB, 0x08, 0xCC, 0xBA, 0x03, 0xCC, 0x99, 0x03, 0xD4, 0x99, 0x02, 0xD4, 0xB9, 0x80, 0xD4, 0x99, 0x03, 0xD4, 0xB9, 0x80, 0xCC, 0x99, 0x02, 0xCC, 0xB9, 0x81, 0xC4, 0xB9, 0xC4, 0x99, 0x02, 0xC4, 0xB9, 0x01, 0xBC, 0xB9, 0x89, 0xAC, 0x78, 0xA4, 0x59, 0x9C, 0x58, 0x94, 0x79, 0x8C, 0x99, 0x8C, 0xDA, 0x84, 0xDA, 0x85, 0x3B, 0x85, 0x9B, 0x85, 0xDC, 0x01, 0x85, 0xFC, 0x86, 0x8D, 0xFC, 0x95, 0xDC, 0x9D, 0x9B, 0xAD, 0x1A, 0xB4, 0x99, 0xBB, 0xF7, 0xCB, 0xD7, 0x01, 0xD3, 0xB7, 0x8A, 0xDB, 0xB7, 0xDB, 0xD7, 0xDB, 0xD8, 0xDB, 0xD9, 0xD3, 0xFB, 0xB3, 0xDD, 0x59, 0xD8, 0x29, 0x59, 0x19, 0x5B, 0x11, 0x7C, 0x11, 0x7D, 0x01, 0x11, 0x9D, 0x95, 0x11, 0x9E, 0x19, 0x7D, 0x21, 0x5C, 0x31, 0x3A, 0x59, 0x38, 0x81, 0xFA, 0x92, 0x19, 0x92, 0x18, 0x89, 0xF6, 0x7A, 0x16, 0x6A, 0x77, 0x5B, 0x19, 0x43, 0x9A, 0x34, 0x3C, 0x1C, 0x9D, 0x0C, 0xFD, 0x05, 0x7E, 0x06, 0x1F, 0x06, 0x7F, 0x06, 0xFF, 0x07, 0x3F, 0x07, 0x7F, 0x02, 0x07, 0xBF, 0x8D, 0x07, 0xDF, 0x07, 0x9F, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x7F, 0x27, 0x3F, 0x46, 0xFE, 0x6E, 0xDF, 0x64, 0x78, 0x6A, 0x52, 0x9A, 0x33, 0xB1, 0xD3, 0xB9, 0xB3, 0xC1, 0x93, 0x04, 0xC9, 0x93, 0x80, 0xC9, 0xB3, 0x01, 0xC1, 0xB3, 0x89, 0xB9, 0xF4, 0xB1, 0xF4, 0xAA, 0x35, 0x79, 0x52, 0x58, 0xF1, 0x59, 0x52, 0x51, 0x93, 0x49, 0x72, 0x41, 0x51, 0x41, 0x71, 0x03, 0x39, 0x71, 0x02, 0x31, 0x51, 0x01, 0x31, 0x52, 0x88, 0x29, 0x32, 0x21, + 0x32, 0x21, 0x54, 0x21, 0xB6, 0x19, 0xF8, 0x12, 0x19, 0x09, 0xFA, 0x01, 0xD9, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x84, 0x09, 0xF9, 0x09, 0xF8, 0x11, 0xF8, 0x11, 0xD7, 0x09, 0xB5, 0x02, 0x11, 0x95, 0x84, 0x19, 0x95, 0x19, 0x75, 0x19, 0x95, 0x19, 0x74, 0x21, 0x94, 0x04, 0x19, 0x74, 0x04, 0x19, 0x94, 0x02, 0x19, 0x74, 0x01, 0x21, 0x74, 0x02, 0x19, 0x74, 0x83, 0x21, 0x94, 0x19, 0x94, 0x19, 0x74, 0x19, 0x95, 0x02, 0x19, 0x94, 0x80, 0x19, 0x74, 0x02, 0x19, 0x94, 0x80, 0x19, 0x95, 0x01, 0x19, 0x94, 0x81, 0x19, 0xB5, 0x19, 0x94, 0x01, 0x19, 0x74, 0x01, 0x19, 0x53, 0x81, 0x19, 0x32, 0x21, 0x52, 0x01, 0x21, 0x31, 0x82, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x29, 0x50, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x50, 0x8C, 0x21, 0x31, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD7, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0xD7, 0x11, 0xD6, 0x11, 0xD7, 0x11, 0xD6, 0x01, 0x11, 0xF6, 0x01, 0x1A, 0x16, 0x86, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x33, 0x19, 0x53, 0x19, 0x31, 0x19, 0x11, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x2F, 0x80, 0x19, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x87, 0x21, 0x31, 0x21, 0x51, 0x19, 0x52, 0x21, 0x73, 0x21, 0x93, 0x21, 0x53, 0x19, 0x12, 0x19, 0x31, 0x01, 0x19, 0x11, 0x8D, 0x19, 0x10, 0x19, 0x31, 0x19, 0x11, 0x29, 0x93, 0x21, 0x73, 0x21, 0x32, 0x21, 0x52, 0x29, 0x93, 0x29, 0x73, + 0x21, 0x72, 0x21, 0x52, 0x21, 0x72, 0x21, 0x51, 0x21, 0x31, 0x05, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x10, 0x86, 0x19, 0x31, 0x31, 0xF4, 0x29, 0x93, 0x29, 0xB3, 0x31, 0xF4, 0x29, 0xD4, 0x21, 0x72, 0x01, 0x19, 0x31, 0x80, 0x21, 0x52, 0x01, 0x19, 0x10, 0x01, 0x19, 0x11, 0x81, 0x19, 0x52, 0x21, 0x93, 0x01, 0x21, 0xB3, 0x01, 0x29, 0xB4, 0x81, 0x29, 0x93, 0x21, 0x73, 0x01, 0x19, 0x52, 0x84, 0x21, 0x52, 0x21, 0x31, 0x19, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x51, 0x87, 0x21, 0x52, 0x21, 0x72, 0x21, 0x52, 0x29, 0x71, 0x21, 0x10, 0x21, 0x31, 0x21, 0x51, 0x21, 0x72, 0x01, 0x21, 0x73, 0x8C, 0x19, 0x72, 0x19, 0x52, 0x19, 0x31, 0x19, 0x32, 0x19, 0x52, 0x21, 0x72, 0x21, 0x93, 0x21, 0x73, 0x21, 0x52, 0x19, 0x31, 0x21, 0x51, 0x29, 0x71, 0x29, 0x92, 0x01, 0x29, 0xB2, 0x81, 0x31, 0xD3, 0x29, 0xB3, 0x01, 0x3A, 0x35, 0x81, 0x31, 0xF4, 0x21, 0x73, 0x01, 0x21, 0x52, 0x97, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x19, 0x10, 0x21, 0x51, 0x29, 0x92, 0x21, 0x30, 0x19, 0x0F, 0x21, 0x30, 0x19, 0x30, 0x19, 0x10, 0x19, 0x31, 0x29, 0xD4, 0x29, 0xB4, 0x19, 0x32, 0x11, 0x11, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x19, 0x11, 0x21, 0x52, 0x29, 0x73, 0x19, 0x10, 0x19, 0x31, 0x01, 0x21, 0x31, 0x87, 0x21, 0x51, 0x19, 0x31, 0x19, 0x10, 0x19, 0x31, 0x29, 0x72, 0x21, 0x72, 0x29, 0x72, 0x21, 0x52, 0x01, 0x21, 0x51, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, + 0x29, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x86, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x19, 0x31, 0x19, 0x11, 0x19, 0x12, 0x11, 0x32, 0x01, 0x11, 0x33, 0x88, 0x11, 0x74, 0x11, 0x54, 0x11, 0x95, 0x19, 0x95, 0x11, 0x75, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x95, 0x11, 0x95, 0x01, 0x11, 0x54, 0x84, 0x11, 0x33, 0x11, 0x12, 0x11, 0x32, 0x11, 0x12, 0x19, 0x12, 0x01, 0x19, 0x11, 0x85, 0x19, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x87, 0x21, 0x51, 0x19, 0x11, 0x11, 0x11, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, + 0xD8, 0x03, 0x09, 0xD9, 0x80, 0x09, 0xFA, 0x01, 0x09, 0xD9, 0x81, 0x01, 0xD9, 0x09, 0xDA, 0x02, 0x01, 0xDA, 0x87, 0x01, 0xD9, 0x01, 0xDA, 0x09, 0xDA, 0x09, 0xD9, 0x01, 0xD9, 0x09, 0xDA, 0x09, 0xD9, 0x01, 0xD9, 0x02, 0x09, 0xDA, 0x81, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x84, 0x01, 0xDA, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xFA, 0x01, 0xDA, 0x01, 0x09, 0xDA, 0x04, 0x09, 0xD9, 0x81, 0x09, 0xFA, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x02, 0x01, 0xF9, 0x01, 0x01, 0xFA, 0x80, 0x09, 0xDA, 0x02, 0x09, 0xD9, 0x80, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xF9, 0x80, 0x09, 0xF9, 0x03, 0x01, 0xD9, 0x80, 0x09, 0xF9, 0x07, 0x09, 0xD9, 0x82, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x83, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0xD9, 0x09, 0xD9, 0x01, 0x09, 0xFA, 0x06, 0x09, 0xD9, 0x81, 0x01, 0xD9, 0x09, 0xD9, 0x01, 0x09, 0xDA, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x02, 0x09, 0xD9, 0x82, 0x09, 0xDA, 0x09, 0xD9, 0x09, 0xDA, 0x02, 0x09, 0xD9, 0x83, 0x01, 0xD9, 0x01, 0xB9, 0x09, 0xD9, 0x09, 0xF9, 0x03, 0x01, 0xD9, 0x86, 0x09, 0xFA, 0x09, 0xDA, 0x09, 0xFA, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xDA, 0x07, 0x09, 0xFA, 0x03, 0x09, 0xDA, 0x02, 0x09, 0xFA, 0x01, 0x09, 0xDA, 0x01, 0x09, 0xFA, 0x01, 0x09, 0xDA, 0x01, 0x09, 0xFA, 0x80, 0x09, 0xDA, 0x0A, 0x09, 0xFA, 0x06, 0x09, 0xF9, 0x0E, 0x09, 0xFA, 0x01, 0x09, 0xF9, 0x01, 0x09, 0xFA, 0x05, 0x09, 0xF9, 0x01, 0x09, 0xFA, 0x05, 0x09, 0xF9, 0x05, 0x09, 0xFA, 0x01, 0x09, 0xF9, + 0x01, 0x09, 0xFA, 0x01, 0x09, 0xF9, 0x01, 0x09, 0xFA, 0x01, 0x09, 0xF9, 0x80, 0x09, 0xD9, 0x02, 0x09, 0xFA, 0x01, 0x09, 0xDA, 0x0F, 0x09, 0xFA, 0x01, 0x09, 0xF9, 0x81, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0x09, 0xF9, 0x82, 0x09, 0xD9, 0x09, 0xDA, 0x09, 0xD9, 0x11, 0x09, 0xFA, 0x01, 0x11, 0xF9, 0x86, 0x19, 0xF8, 0x19, 0xD7, 0x21, 0xB5, 0x21, 0x73, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x05, 0x29, 0x30, 0x81, 0x31, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x0E, 0x30, 0xEE, 0x41, 0x2E, 0xBC, 0x9B, 0xD4, 0xBB, 0xD4, 0x9A, 0x01, 0xD4, 0x99, 0x02, 0xD4, 0x79, 0x80, 0xCC, 0x99, 0x01, 0xCC, 0xBA, 0x85, 0xC4, 0xFB, 0x93, 0xB7, 0x41, 0x6F, 0x31, 0x2F, 0x29, 0x50, 0x29, 0x71, 0x01, 0x31, 0x71, 0x01, 0x31, 0x91, 0x01, 0x31, 0x92, 0x01, 0x39, 0x92, 0x81, 0x39, 0xB3, 0x39, 0xB2, 0x01, 0x39, 0xB3, 0x07, 0x41, 0xB3, 0x06, 0x49, 0xD3, 0x80, 0x49, 0xB3, 0x02, 0x51, 0xD3, 0x0D, 0x51, 0xB3, 0x80, 0x51, 0xB2, 0x01, 0x51, 0x92, 0x88, 0x51, 0x71, 0x59, 0x71, 0x59, 0x70, 0x69, 0xB1, 0x82, 0x33, 0x9A, 0xD5, 0xBB, 0x98, 0xD4, 0x3A, 0xD3, 0xF9, 0x02, 0xD3, 0xF8, 0x01, 0xD3, 0xD8, 0x80, 0xD3, 0xB7, 0x01, 0xD3, 0x97, 0x82, 0xD3, 0x77, 0xD3, 0x97, 0xD3, 0x77, 0x01, 0xDB, 0x97, 0x80, 0xD3, 0x77, 0x03, 0xD3, 0x76, 0x0F, 0xD3, 0x56, 0x80, 0xD3, 0x57, 0x01, 0xCB, 0x57, 0x8A, 0xC3, 0x57, 0xBB, 0x37, 0xAA, 0xD6, 0x81, 0xD2, 0x79, 0xD3, 0x71, 0xB2, 0x69, 0x92, 0x69, 0x91, 0x71, 0x91, 0xBB, 0xD8, 0xDC, 0xBA, 0x01, 0xDC, 0x99, 0x80, 0xD4, 0x78, 0x01, 0xD4, + 0x57, 0x92, 0xD4, 0x77, 0xD4, 0x78, 0xD4, 0x98, 0xCC, 0x98, 0xBC, 0x98, 0xA4, 0x98, 0x8D, 0x1A, 0x75, 0x5B, 0x5D, 0x9B, 0x5D, 0xFD, 0x56, 0x1D, 0x5E, 0x1D, 0x65, 0xBC, 0x6D, 0x1B, 0x7B, 0xF8, 0xA3, 0xD8, 0xAB, 0x16, 0xB2, 0xB5, 0xBA, 0x95, 0x01, 0xC2, 0x54, 0x89, 0xC2, 0x74, 0xC2, 0x75, 0xBA, 0x75, 0xA1, 0xF4, 0x81, 0xF4, 0x6A, 0x95, 0x6C, 0x39, 0x65, 0x5C, 0x4D, 0x9C, 0x45, 0x9C, 0x01, 0x35, 0x7C, 0x8C, 0x35, 0x7D, 0x35, 0x5D, 0x45, 0x5D, 0x45, 0x1D, 0x4C, 0xFD, 0x5C, 0xDD, 0x64, 0xDC, 0x74, 0xDC, 0x8C, 0xFC, 0xA5, 0x3D, 0xAD, 0x1C, 0xB5, 0x1B, 0xBD, 0x1B, 0x01, 0xBC, 0xFB, 0x80, 0xBC, 0xDA, 0x01, 0xC4, 0xDA, 0x81, 0xC4, 0xBA, 0xCC, 0xDA, 0x01, 0xCC, 0xBA, 0x80, 0xCC, 0x9A, 0x01, 0xCC, 0x99, 0x07, 0xD4, 0x99, 0x01, 0xD4, 0x79, 0x83, 0xD4, 0x99, 0xD4, 0x79, 0xD4, 0x99, 0xD4, 0x78, 0x02, 0xD4, 0x99, 0x81, 0xD4, 0x78, 0xDC, 0x99, 0x01, 0xDC, 0x98, 0x05, 0xD4, 0x98, 0x01, 0xD4, 0x78, 0x01, 0xCC, 0x78, 0x80, 0xCC, 0x98, 0x01, 0xCC, 0x78, 0x83, 0xC4, 0x58, 0xBC, 0x58, 0xB4, 0x58, 0xAC, 0x59, 0x01, 0xA4, 0x79, 0x8C, 0x9C, 0x79, 0x94, 0x99, 0x94, 0xD9, 0x8C, 0xD9, 0x95, 0x1A, 0x95, 0x3B, 0x9D, 0x5B, 0xA5, 0x3A, 0xA4, 0xD9, 0xB4, 0xB9, 0xBC, 0x58, 0xC3, 0xF7, 0xCB, 0xD7, 0x01, 0xD3, 0xB7, 0x02, 0xDB, 0xB7, 0x88, 0xDB, 0xD8, 0xD3, 0xDA, 0xC3, 0xFD, 0x72, 0x59, 0x31, 0x59, 0x21, 0x5B, 0x19, 0x7C, 0x11, 0x7D, 0x11, 0x9D, 0x01, 0x11, 0x9E, 0x96, 0x19, 0x7D, 0x21, 0x7C, 0x31, 0x3A, 0x49, 0x18, 0x79, 0xFA, 0x92, 0x39, 0x9A, 0x38, + 0x81, 0xD6, 0x79, 0xF6, 0x6A, 0x77, 0x63, 0x19, 0x43, 0x7A, 0x33, 0xFC, 0x24, 0xBD, 0x14, 0xDD, 0x0D, 0x7E, 0x05, 0xDF, 0x06, 0x7F, 0x06, 0xDF, 0x07, 0x3F, 0x07, 0x7F, 0x07, 0x9F, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0x9F, 0x01, 0x0F, 0x9F, 0x8C, 0x1F, 0x9F, 0x27, 0x7F, 0x37, 0x1E, 0x5E, 0xDF, 0x75, 0x5B, 0x6A, 0x92, 0x92, 0x12, 0xA9, 0xD3, 0xB9, 0xB3, 0xC1, 0x93, 0xC9, 0xB3, 0xC9, 0x93, 0xC9, 0x73, 0x02, 0xC9, 0x93, 0x90, 0xC9, 0xB3, 0xC1, 0xB3, 0xB9, 0xD3, 0xB1, 0xF4, 0xAA, 0x35, 0x81, 0xB3, 0x50, 0xD0, 0x51, 0x52, 0x51, 0x72, 0x49, 0x92, 0x41, 0x71, 0x41, 0x92, 0x39, 0x72, 0x39, 0x71, 0x31, 0x51, 0x39, 0x71, 0x31, 0x71, 0x01, 0x31, 0x51, 0x88, 0x31, 0x72, 0x31, 0x52, 0x29, 0x32, 0x21, 0x12, 0x19, 0x34, 0x21, 0xB6, 0x11, 0xD8, 0x12, 0x19, 0x09, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x04, 0x01, 0xDA, 0x01, 0x09, 0xF9, 0x80, 0x12, 0x19, 0x01, 0x1A, 0x38, 0x02, 0x22, 0x38, 0x02, 0x2A, 0x38, 0x82, 0x2A, 0x37, 0x32, 0x37, 0x32, 0x17, 0x04, 0x32, 0x37, 0x83, 0x2A, 0x37, 0x32, 0x58, 0x2A, 0x57, 0x32, 0x58, 0x02, 0x32, 0x37, 0x84, 0x32, 0x38, 0x32, 0x37, 0x32, 0x38, 0x32, 0x58, 0x32, 0x38, 0x02, 0x32, 0x37, 0x81, 0x32, 0x58, 0x2A, 0x37, 0x02, 0x32, 0x37, 0x01, 0x2A, 0x37, 0x8A, 0x2A, 0x17, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x37, 0x22, 0x17, 0x2A, 0x17, 0x22, 0x17, 0x21, 0xF6, 0x21, 0xB5, 0x19, 0x74, 0x19, 0x53, 0x01, 0x19, 0x32, 0x85, 0x19, 0x12, 0x21, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, + 0x30, 0x82, 0x29, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x11, 0xB7, 0x19, 0xD7, 0x22, 0x39, 0x22, 0x59, 0x22, 0x38, 0x19, 0xF7, 0x01, 0x12, 0x17, 0x01, 0x1A, 0x17, 0x87, 0x1A, 0x38, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x73, 0x19, 0x52, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x88, 0x21, 0x31, 0x21, 0x52, 0x19, 0x52, 0x29, 0xB4, 0x32, 0x16, 0x31, 0xF5, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x84, 0x21, 0x93, 0x29, 0xB4, 0x21, 0x73, 0x29, 0x93, 0x29, 0xB3, 0x01, 0x21, 0x93, 0x01, 0x21, 0x72, 0x82, 0x21, 0x52, 0x21, 0x51, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x87, 0x19, 0x10, 0x21, 0x72, 0x32, 0x15, 0x21, 0xB3, 0x21, 0x73, 0x21, 0x93, 0x21, 0x73, 0x19, 0x52, 0x01, 0x21, 0x73, 0x85, 0x29, 0x93, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x21, 0x93, 0x01, 0x21, 0xB4, 0x01, 0x21, 0x93, 0x02, 0x21, 0x73, 0x8A, 0x19, 0x73, 0x21, 0x93, 0x21, 0x52, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x18, 0xF0, 0x19, 0x10, 0x21, 0x72, 0x21, 0x93, 0x19, 0x52, 0x01, 0x19, 0x31, 0x87, 0x18, 0xF0, 0x19, 0x10, 0x21, 0x52, 0x21, 0xB3, 0x21, 0x93, 0x19, 0x73, 0x21, 0x93, 0x19, 0x52, 0x01, 0x11, 0x11, 0x85, 0x19, 0x32, 0x21, 0x73, 0x21, 0x93, 0x21, 0x52, + 0x19, 0x11, 0x11, 0x10, 0x01, 0x19, 0x10, 0x80, 0x19, 0x30, 0x01, 0x21, 0x51, 0x01, 0x21, 0x72, 0x83, 0x29, 0xD4, 0x29, 0xB3, 0x21, 0x73, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x85, 0x19, 0x31, 0x19, 0x10, 0x21, 0x51, 0x29, 0x92, 0x21, 0x50, 0x19, 0x0F, 0x01, 0x19, 0x10, 0x01, 0x19, 0x31, 0x82, 0x29, 0xD4, 0x32, 0x15, 0x29, 0xD4, 0x03, 0x19, 0x32, 0x83, 0x11, 0x11, 0x21, 0x73, 0x29, 0xB3, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x21, 0x52, 0x01, 0x29, 0xB3, 0x80, 0x29, 0x93, 0x01, 0x29, 0xB3, 0x02, 0x31, 0xB3, 0x83, 0x29, 0x93, 0x29, 0x92, 0x29, 0x71, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x03, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x31, 0x86, 0x19, 0x31, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x11, 0x33, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x02, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, + 0x01, 0x29, 0x0F, 0x01, 0x21, 0x30, 0x09, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x31, 0x8C, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xD8, 0x11, 0xF9, 0x09, 0xF9, 0x09, 0xFA, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0xD9, 0x09, 0xDA, 0x01, 0x09, 0xFA, 0x83, 0x01, 0xD9, 0x09, 0xDA, 0x09, 0xFA, 0x09, 0xDA, 0x01, 0x01, 0xDA, 0x80, 0x09, 0xDA, 0x01, 0x01, 0xD9, 0x01, 0x09, 0xDA, 0x85, 0x01, 0xDA, 0x09, 0xDA, 0x09, 0xFA, 0x01, 0xDA, 0x09, 0xDA, 0x09, 0xFA, 0x01, 0x01, 0xDA, 0x01, 0x09, 0xFA, 0x83, 0x01, 0xDA, 0x09, 0xDA, 0x01, 0xD9, 0x09, 0xFA, 0x01, 0x09, 0xDA, 0x80, 0x09, 0xFA, 0x01, 0x09, 0xD9, 0x80, 0x09, 0xFA, 0x01, 0x01, 0xD9, 0x88, 0x09, 0xFA, 0x01, 0xDA, 0x01, 0xF9, 0x09, 0xFA, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xFA, 0x09, 0xFA, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x02, 0x09, 0xD9, 0x80, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x80, 0x09, 0xF9, 0x06, 0x01, 0xD9, 0x84, 0x09, 0xD9, 0x09, 0xDA, 0x01, 0xD9, 0x09, 0xD9, 0x01, 0xD9, 0x02, 0x09, 0xD9, 0x81, 0x01, 0xD9, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x80, 0x09, 0xFA, 0x04, 0x09, 0xD9, 0x82, + 0x09, 0xDA, 0x09, 0xD9, 0x09, 0xB9, 0x07, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x84, 0x09, 0xDA, 0x01, 0xB9, 0x09, 0xDA, 0x09, 0xD9, 0x09, 0xDA, 0x01, 0x09, 0xD9, 0x80, 0x09, 0xDA, 0x03, 0x01, 0xD9, 0x01, 0x09, 0xFA, 0x89, 0x01, 0xDA, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xFA, 0x09, 0xDA, 0x09, 0xFA, 0x09, 0xD9, 0x09, 0xDA, 0x09, 0xFA, 0x02, 0x09, 0xDA, 0x80, 0x09, 0xFA, 0x02, 0x09, 0xDA, 0x80, 0x09, 0xFA, 0x01, 0x09, 0xDA, 0x80, 0x09, 0xFA, 0x05, 0x09, 0xDA, 0x82, 0x09, 0xFA, 0x09, 0xDA, 0x09, 0xFA, 0x01, 0x09, 0xDA, 0x01, 0x09, 0xFA, 0x80, 0x09, 0xDA, 0x02, 0x09, 0xFA, 0x81, 0x09, 0xD9, 0x09, 0xFA, 0x07, 0x09, 0xF9, 0x15, 0x09, 0xFA, 0x01, 0x09, 0xF9, 0x04, 0x09, 0xFA, 0x85, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xFA, 0x09, 0xF9, 0x09, 0xFA, 0x09, 0xD9, 0x16, 0x09, 0xFA, 0x01, 0x09, 0xDA, 0x15, 0x09, 0xFA, 0x05, 0x09, 0xDA, 0x83, 0x09, 0xFA, 0x09, 0xDA, 0x09, 0xFA, 0x09, 0xD9, 0x05, 0x09, 0xFA, 0x80, 0x09, 0xF9, 0x01, 0x11, 0xF9, 0x87, 0x19, 0xF8, 0x19, 0xD7, 0x19, 0xB5, 0x21, 0x73, 0x21, 0x51, 0x21, 0x31, 0x29, 0x30, 0x29, 0x50, 0x04, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x84, 0x29, 0x0E, 0x28, 0xEE, 0x30, 0xAC, 0xAB, 0xF9, 0xD4, 0xDB, 0x01, 0xD4, 0x9A, 0x81, 0xD4, 0x99, 0xDC, 0x99, 0x02, 0xD4, 0x99, 0x87, 0xCC, 0x9A, 0xCC, 0xDB, 0xBC, 0x9B, 0x72, 0xB4, 0x31, 0x0E, 0x31, 0x2F, 0x31, 0x50, 0x29, 0x51, 0x02, 0x31, 0x71, 0x01, 0x31, 0x92, 0x03, 0x39, 0x92, 0x80, 0x39, 0xB2, 0x01, 0x41, 0xB2, 0x0B, + 0x41, 0xB3, 0x82, 0x49, 0xB3, 0x41, 0x92, 0x41, 0xB3, 0x01, 0x49, 0xB3, 0x80, 0x51, 0xD3, 0x04, 0x49, 0xB3, 0x80, 0x51, 0xD3, 0x0A, 0x51, 0xB3, 0x80, 0x51, 0xB2, 0x01, 0x51, 0x92, 0x80, 0x51, 0x72, 0x01, 0x51, 0x71, 0x8A, 0x51, 0x50, 0x59, 0x50, 0x51, 0x2F, 0x61, 0x70, 0x9A, 0xD5, 0xB3, 0x77, 0xC3, 0xD9, 0xCC, 0x19, 0xD3, 0xF9, 0xD3, 0xD8, 0xD3, 0xB8, 0x01, 0xDB, 0xB7, 0x03, 0xD3, 0x97, 0x80, 0xDB, 0x97, 0x02, 0xD3, 0x97, 0x80, 0xD3, 0x77, 0x05, 0xD3, 0x76, 0x01, 0xD3, 0x56, 0x81, 0xDB, 0x77, 0xD3, 0x56, 0x06, 0xD3, 0x57, 0x90, 0xCB, 0x57, 0xC3, 0x57, 0xBB, 0x58, 0xAA, 0xF7, 0x82, 0x13, 0x69, 0x91, 0x71, 0xD3, 0x69, 0xB3, 0x69, 0xB2, 0x61, 0x92, 0x61, 0x71, 0x8A, 0x53, 0xD4, 0x7A, 0xDC, 0x9A, 0xDC, 0x99, 0xDC, 0x78, 0xDC, 0x58, 0x02, 0xDC, 0x57, 0x87, 0xD4, 0x57, 0xCC, 0x57, 0xC4, 0x77, 0xB4, 0x77, 0x9C, 0x98, 0x84, 0xF9, 0x6D, 0x3A, 0x5D, 0xBC, 0x01, 0x55, 0xFD, 0x9F, 0x55, 0xFC, 0x5D, 0x9C, 0x6D, 0x1B, 0x7C, 0x18, 0xA3, 0xD8, 0xAA, 0xF6, 0xBA, 0x95, 0xC2, 0x54, 0xC2, 0x14, 0xC2, 0x13, 0xCA, 0x14, 0xCA, 0x34, 0xC2, 0x55, 0xB2, 0x15, 0x91, 0xF4, 0x7A, 0x35, 0x6B, 0x37, 0x75, 0x1C, 0x5D, 0x9C, 0x55, 0x9D, 0x4D, 0x9C, 0x45, 0x7C, 0x45, 0x7D, 0x4D, 0x3D, 0x5D, 0x3D, 0x85, 0xDF, 0x8D, 0x7E, 0x85, 0x1C, 0x94, 0xFC, 0x9D, 0x1C, 0xAD, 0x1C, 0xB4, 0xFB, 0x01, 0xBC, 0xFB, 0x80, 0xC4, 0xFB, 0x02, 0xC4, 0xDA, 0x03, 0xCC, 0xBA, 0x80, 0xCC, 0x9A, 0x01, 0xD4, 0x9A, 0x06, 0xD4, 0x99, 0x02, 0xD4, 0x79, 0x05, 0xD4, 0x78, 0x80, 0xD4, + 0x58, 0x03, 0xDC, 0x78, 0x80, 0xDC, 0x98, 0x07, 0xDC, 0x78, 0x81, 0xD4, 0x78, 0xD4, 0x57, 0x01, 0xD4, 0x77, 0x80, 0xD4, 0x57, 0x02, 0xCC, 0x58, 0x01, 0xC4, 0x78, 0x85, 0xBC, 0x98, 0xBC, 0x99, 0xB4, 0x99, 0xAC, 0x99, 0xAC, 0x58, 0xA4, 0x58, 0x01, 0xA4, 0x38, 0x87, 0xAC, 0x18, 0xAC, 0x17, 0xB4, 0x18, 0xBC, 0x38, 0xCC, 0x58, 0xCB, 0xF7, 0xD3, 0xB7, 0xD3, 0xB6, 0x01, 0xDB, 0xB6, 0x01, 0xDB, 0xB7, 0x86, 0xDB, 0xB8, 0xD3, 0xD9, 0xCB, 0xFC, 0xAB, 0xBD, 0x39, 0x37, 0x21, 0x5A, 0x19, 0x7C, 0x01, 0x11, 0x9D, 0x80, 0x09, 0x9D, 0x01, 0x11, 0x7D, 0x95, 0x21, 0x7C, 0x31, 0x5B, 0x41, 0x18, 0x71, 0xBA, 0x92, 0x5A, 0x9A, 0x59, 0x81, 0xD7, 0x79, 0xF6, 0x6A, 0x78, 0x63, 0x1A, 0x43, 0x3A, 0x33, 0xDC, 0x24, 0x5D, 0x14, 0xDD, 0x0D, 0x5E, 0x05, 0xDE, 0x06, 0x5F, 0x06, 0xDF, 0x07, 0x3F, 0x07, 0x7F, 0x0F, 0xBF, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x8D, 0x07, 0x9F, 0x0F, 0xBF, 0x07, 0x7F, 0x17, 0x9F, 0x1F, 0x7F, 0x37, 0x3E, 0x56, 0xFF, 0x86, 0x5E, 0x62, 0xB2, 0x8A, 0x12, 0xA9, 0xF3, 0xB9, 0xB3, 0xC1, 0x93, 0xC9, 0xB3, 0x01, 0xC9, 0x73, 0x01, 0xC9, 0x93, 0x8A, 0xC9, 0xB3, 0xC9, 0xB4, 0xC1, 0xB3, 0xB9, 0xD3, 0xB1, 0xD4, 0xAA, 0x35, 0x89, 0xD4, 0x58, 0xF1, 0x51, 0x32, 0x51, 0x72, 0x49, 0x72, 0x01, 0x41, 0x92, 0x80, 0x39, 0x72, 0x02, 0x39, 0x71, 0x02, 0x31, 0x51, 0x01, 0x31, 0x72, 0x87, 0x29, 0x32, 0x21, 0x32, 0x21, 0x34, 0x21, 0x96, 0x19, 0xF8, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x02, 0x01, 0xDA, 0x86, 0x01, 0xD9, + 0x09, 0xD9, 0x09, 0xB8, 0x09, 0xD8, 0x11, 0xF7, 0x1A, 0x17, 0x1A, 0x37, 0x01, 0x22, 0x38, 0x80, 0x2A, 0x58, 0x01, 0x2A, 0x38, 0x82, 0x32, 0x58, 0x2A, 0x17, 0x29, 0xF7, 0x03, 0x2A, 0x17, 0x82, 0x2A, 0x37, 0x2A, 0x17, 0x2A, 0x38, 0x03, 0x2A, 0x37, 0x01, 0x32, 0x37, 0x06, 0x2A, 0x37, 0x05, 0x2A, 0x17, 0x81, 0x2A, 0x37, 0x29, 0xF6, 0x02, 0x29, 0xF7, 0x01, 0x2A, 0x17, 0x89, 0x22, 0x17, 0x22, 0x37, 0x22, 0x17, 0x21, 0xF6, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x33, 0x10, 0xF2, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x04, 0x21, 0x30, 0x98, 0x19, 0x10, 0x19, 0x30, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x55, 0x19, 0xB7, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xD7, 0x09, 0x96, 0x09, 0x75, 0x01, 0x55, 0x09, 0x95, 0x11, 0xD6, 0x19, 0xF7, 0x1A, 0x18, 0x1A, 0x38, 0x22, 0x38, 0x21, 0xF7, 0x19, 0x94, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x21, 0x52, 0x01, 0x19, 0x32, 0x80, 0x19, 0x33, 0x02, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x52, 0x88, 0x29, 0xD4, 0x21, 0x93, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x21, 0x72, 0x21, 0x93, 0x21, 0x73, 0x01, 0x21, 0x72, 0x01, 0x21, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x86, 0x21, 0x51, 0x19, 0x31, 0x21, 0x93, 0x19, 0x73, 0x19, 0x52, 0x19, 0x32, 0x11, 0x12, 0x02, 0x19, 0x32, 0x85, 0x19, 0x52, + 0x21, 0x93, 0x21, 0x52, 0x19, 0x31, 0x21, 0x52, 0x19, 0x52, 0x01, 0x19, 0x53, 0x01, 0x11, 0x32, 0x80, 0x11, 0x12, 0x01, 0x11, 0x11, 0x81, 0x19, 0x32, 0x19, 0x73, 0x01, 0x21, 0x94, 0x82, 0x21, 0x73, 0x21, 0x31, 0x21, 0x10, 0x01, 0x18, 0xF0, 0x93, 0x21, 0x93, 0x21, 0x94, 0x21, 0x73, 0x19, 0x32, 0x19, 0x11, 0x18, 0xF0, 0x19, 0x11, 0x21, 0x52, 0x21, 0xB4, 0x21, 0x94, 0x19, 0x94, 0x19, 0x74, 0x19, 0x53, 0x11, 0x32, 0x11, 0x12, 0x19, 0x52, 0x21, 0x94, 0x21, 0x93, 0x21, 0x73, 0x19, 0x31, 0x01, 0x19, 0x10, 0x03, 0x19, 0x30, 0x84, 0x19, 0x31, 0x21, 0x52, 0x21, 0x93, 0x19, 0x52, 0x19, 0x12, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x83, 0x19, 0x10, 0x21, 0x51, 0x29, 0x92, 0x21, 0x50, 0x01, 0x19, 0x10, 0x86, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x21, 0xB4, 0x29, 0xF5, 0x29, 0xD5, 0x19, 0x53, 0x02, 0x19, 0x32, 0x83, 0x11, 0x12, 0x21, 0x93, 0x29, 0xB4, 0x19, 0x32, 0x03, 0x19, 0x31, 0x86, 0x19, 0x32, 0x31, 0xD4, 0x21, 0x73, 0x19, 0x11, 0x19, 0x31, 0x21, 0x52, 0x19, 0x31, 0x06, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x29, 0x30, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x86, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x51, 0x02, 0x21, + 0x31, 0x04, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x02, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x10, 0x21, 0x31, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x31, 0x11, 0x32, 0x11, 0x54, 0x11, 0x95, 0x11, 0xB7, 0x11, 0xF8, 0x02, 0x09, 0xF9, 0x80, 0x09, 0xFA, 0x07, 0x09, 0xD9, 0x80, 0x01, 0xB9, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x07, 0x09, 0xD9, 0x82, 0x09, 0xFA, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x83, 0x09, 0xD9, 0x09, 0xFA, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x02, 0x09, 0xF9, 0x80, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x82, 0x09, 0xD9, 0x09, 0xFA, 0x09, + 0xF9, 0x01, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x03, 0x09, 0xD9, 0x80, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x80, 0x09, 0xF9, 0x04, 0x09, 0xD9, 0x03, 0x01, 0xD9, 0x14, 0x09, 0xD9, 0x01, 0x09, 0xB9, 0x07, 0x09, 0xD9, 0x80, 0x09, 0xF9, 0x0C, 0x09, 0xD9, 0x82, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xF9, 0x03, 0x09, 0xD9, 0x83, 0x09, 0xF9, 0x11, 0xF9, 0x09, 0xF9, 0x11, 0xF9, 0x02, 0x09, 0xF9, 0x82, 0x09, 0xD9, 0x09, 0xFA, 0x09, 0xDA, 0x01, 0x09, 0xF9, 0x03, 0x09, 0xFA, 0x80, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x06, 0x09, 0xD9, 0x81, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0x09, 0xFA, 0x01, 0x09, 0xF9, 0x01, 0x09, 0xFA, 0x03, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x80, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x1E, 0x09, 0xF9, 0x80, 0x11, 0xF9, 0x03, 0x09, 0xF9, 0x82, 0x09, 0xFA, 0x09, 0xF9, 0x09, 0xFA, 0x01, 0x09, 0xF9, 0x02, 0x09, 0xFA, 0x07, 0x09, 0xF9, 0x82, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xFA, 0x05, 0x09, 0xF9, 0x80, 0x09, 0xD9, 0x04, 0x09, 0xF9, 0x80, 0x09, 0xFA, 0x07, 0x09, 0xF9, 0x80, 0x11, 0xFA, 0x05, 0x09, 0xFA, 0x80, 0x09, 0xD9, 0x02, 0x09, 0xFA, 0x01, 0x09, 0xF9, 0x82, 0x09, 0xFA, 0x09, 0xD9, 0x09, 0xFA, 0x01, 0x09, 0xF9, 0x80, 0x09, 0xFA, 0x01, 0x09, 0xF9, 0x02, 0x11, 0xFA, 0x02, 0x11, 0xF9, 0x88, 0x11, 0xF8, 0x19, 0xF8, 0x19, 0xD6, 0x19, 0x94, 0x19, 0x52, 0x21, 0x31, 0x21, 0x51, 0x29, 0x30, 0x29, 0x50, 0x04, 0x29, 0x30, 0x87, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x28, 0xEE, 0x28, 0xCD, 0x7A, 0xD4, 0xD4, 0xFC, 0xD4, 0xBB, 0x02, 0xDC, 0xBA, 0x02, 0xD4, 0xBA, 0x86, + 0xCC, 0xDB, 0xCC, 0xFC, 0x82, 0xF5, 0x49, 0x6F, 0x31, 0x0E, 0x29, 0x2F, 0x29, 0x50, 0x03, 0x31, 0x71, 0x81, 0x31, 0x92, 0x31, 0x71, 0x02, 0x39, 0x92, 0x80, 0x39, 0xB2, 0x02, 0x39, 0x92, 0x80, 0x41, 0x92, 0x02, 0x41, 0xB2, 0x03, 0x41, 0xB3, 0x01, 0x41, 0xB2, 0x80, 0x41, 0x92, 0x01, 0x41, 0xB3, 0x80, 0x41, 0xB2, 0x01, 0x41, 0xB3, 0x80, 0x41, 0x92, 0x0F, 0x49, 0xB3, 0x02, 0x51, 0xB3, 0x80, 0x51, 0xB2, 0x04, 0x51, 0x92, 0x01, 0x51, 0x72, 0x8A, 0x51, 0x71, 0x51, 0x51, 0x51, 0x50, 0x59, 0x2F, 0x69, 0x90, 0x79, 0xD1, 0xA2, 0xD5, 0xC3, 0xD9, 0xDC, 0x3A, 0xD3, 0xF9, 0xD3, 0xD8, 0x01, 0xD3, 0xB8, 0x80, 0xD3, 0x98, 0x03, 0xD3, 0x97, 0x01, 0xD3, 0x77, 0x01, 0xD3, 0x97, 0x80, 0xD3, 0x77, 0x01, 0xD3, 0x97, 0x01, 0xD3, 0x77, 0x03, 0xDB, 0x97, 0x80, 0xD3, 0x77, 0x01, 0xD3, 0x98, 0x80, 0xD3, 0x78, 0x01, 0xCB, 0x77, 0x8E, 0xC3, 0x98, 0xB3, 0x17, 0x79, 0xD2, 0x69, 0x91, 0x61, 0x71, 0x61, 0xB2, 0x61, 0xD3, 0x69, 0xB3, 0x61, 0xB2, 0x61, 0x91, 0x61, 0x50, 0xB3, 0x97, 0xD4, 0x59, 0xDC, 0x79, 0xDC, 0x78, 0x02, 0xDC, 0x58, 0x01, 0xDC, 0x37, 0x92, 0xD4, 0x57, 0xCC, 0x37, 0xC4, 0x57, 0xAC, 0x57, 0x94, 0x78, 0x74, 0xF9, 0x65, 0x7B, 0x5D, 0xDC, 0x55, 0xFD, 0x56, 0x1D, 0x55, 0xDC, 0x5D, 0x9C, 0x75, 0x1B, 0x84, 0x18, 0x9B, 0x97, 0xAA, 0xD6, 0xBA, 0x75, 0xC2, 0x34, 0xC2, 0x14, 0x01, 0xC9, 0xF3, 0x93, 0xCA, 0x14, 0xC2, 0x15, 0xBA, 0x15, 0xA1, 0xF4, 0x81, 0xF5, 0x6A, 0x95, 0x74, 0xBB, 0x65, 0x3C, 0x5D, 0x7C, 0x5D, 0x9D, 0x5D, 0x7D, 0x55, 0x3C, 0x5C, + 0xFC, 0x6C, 0xDC, 0x85, 0x1C, 0x9D, 0x3D, 0xA5, 0x1C, 0xA4, 0xDB, 0xB4, 0xFB, 0xB4, 0xDB, 0x01, 0xBC, 0xDA, 0x01, 0xC4, 0xDA, 0x01, 0xCC, 0xDA, 0x02, 0xCC, 0xBA, 0x01, 0xD4, 0xBA, 0x01, 0xD4, 0x9A, 0x06, 0xD4, 0x99, 0x03, 0xDC, 0x99, 0x80, 0xDC, 0x79, 0x0E, 0xDC, 0x78, 0x80, 0xDC, 0x58, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x80, 0xD4, 0x57, 0x03, 0xD4, 0x37, 0x01, 0xCC, 0x37, 0x85, 0xCC, 0x57, 0xC4, 0x57, 0xC4, 0x78, 0xC4, 0x58, 0xBC, 0x58, 0xBC, 0x38, 0x01, 0xBB, 0xF8, 0x01, 0xBB, 0xD7, 0x01, 0xC3, 0xD7, 0x84, 0xC3, 0xF7, 0xD4, 0x18, 0xD3, 0xD7, 0xD3, 0xB6, 0xD3, 0x96, 0x02, 0xDB, 0x96, 0x01, 0xDB, 0xB7, 0xA0, 0xD3, 0xB9, 0xD3, 0xFA, 0xC4, 0x3E, 0x49, 0x78, 0x21, 0x39, 0x19, 0x7B, 0x11, 0x7C, 0x09, 0x7D, 0x09, 0x9D, 0x09, 0x7D, 0x11, 0x7D, 0x19, 0x7D, 0x29, 0x5B, 0x39, 0x19, 0x61, 0x9A, 0x92, 0x5B, 0x9A, 0x59, 0x81, 0xD7, 0x71, 0xD7, 0x6A, 0x78, 0x63, 0x1A, 0x4B, 0x1A, 0x33, 0x9B, 0x2C, 0x5D, 0x14, 0xBD, 0x0D, 0x5E, 0x05, 0xBE, 0x06, 0x5F, 0x06, 0xBF, 0x07, 0x3F, 0x07, 0x5F, 0x0F, 0xBF, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x8C, 0x07, 0xBF, 0x07, 0x9F, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x9F, 0x2F, 0x3E, 0x4E, 0xFE, 0x86, 0xBF, 0x62, 0xF3, 0x82, 0x12, 0xA1, 0xF3, 0xB1, 0xB3, 0xC1, 0xB3, 0x05, 0xC9, 0x93, 0x89, 0xC9, 0xB4, 0xC1, 0xD4, 0xC1, 0xF4, 0xB1, 0xD4, 0xAA, 0x35, 0x89, 0xD4, 0x58, 0xF1, 0x51, 0x32, 0x51, 0x73, 0x51, 0x92, 0x01, 0x41, 0x72, 0x01, 0x39, 0x71, 0x84, 0x39, 0x72, 0x39, 0x71, 0x39, 0x51, 0x39, + 0x71, 0x31, 0x31, 0x01, 0x31, 0x72, 0x88, 0x29, 0x12, 0x21, 0x32, 0x21, 0x34, 0x21, 0x96, 0x19, 0xD8, 0x09, 0xB8, 0x09, 0xB9, 0x09, 0xDA, 0x01, 0xDA, 0x02, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x86, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xB8, 0x09, 0xB8, 0x09, 0xB7, 0x09, 0xD6, 0x09, 0xB6, 0x03, 0x11, 0xB5, 0x03, 0x19, 0x95, 0x81, 0x21, 0x95, 0x19, 0x75, 0x05, 0x19, 0x95, 0x80, 0x19, 0xB5, 0x01, 0x19, 0x95, 0x80, 0x19, 0x94, 0x02, 0x19, 0x95, 0x01, 0x19, 0xB5, 0x01, 0x19, 0x95, 0x82, 0x19, 0xB5, 0x19, 0x95, 0x19, 0x94, 0x03, 0x19, 0x95, 0x01, 0x19, 0x94, 0x01, 0x19, 0x74, 0x81, 0x19, 0x95, 0x19, 0x75, 0x01, 0x19, 0x95, 0x82, 0x19, 0xB6, 0x22, 0x17, 0x22, 0x38, 0x01, 0x22, 0x17, 0x84, 0x21, 0xD6, 0x19, 0x74, 0x19, 0x53, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x89, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x76, 0x19, 0xD7, 0x11, 0xD7, 0x11, 0xB7, 0x09, 0x76, 0x01, 0x55, 0x02, 0x09, 0x55, 0x88, 0x09, 0x75, 0x09, 0xB6, 0x11, 0xD7, 0x1A, 0x18, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x51, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x21, 0x32, 0x21, 0x53, 0x21, 0x73, 0x19, 0x33, 0x01, 0x19, 0x32, 0x81, 0x19, 0x52, 0x19, 0x31, 0x01, 0x19, 0x52, 0x83, 0x11, 0x32, 0x21, 0xB4, + 0x21, 0xB3, 0x19, 0x52, 0x02, 0x19, 0x31, 0x86, 0x19, 0x32, 0x19, 0x72, 0x21, 0x72, 0x21, 0x52, 0x21, 0x72, 0x21, 0x31, 0x19, 0x10, 0x06, 0x21, 0x30, 0x02, 0x21, 0x31, 0x82, 0x19, 0x31, 0x21, 0x93, 0x19, 0x73, 0x01, 0x11, 0x12, 0x89, 0x19, 0x12, 0x11, 0x12, 0x19, 0x32, 0x19, 0x52, 0x19, 0x73, 0x21, 0x93, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x52, 0x01, 0x19, 0x53, 0x8D, 0x19, 0x74, 0x11, 0x33, 0x19, 0x32, 0x11, 0x12, 0x19, 0x12, 0x19, 0x32, 0x19, 0x53, 0x19, 0x94, 0x19, 0x74, 0x19, 0x53, 0x21, 0x52, 0x19, 0x10, 0x18, 0xF0, 0x19, 0x11, 0x01, 0x21, 0x73, 0x8E, 0x19, 0x53, 0x19, 0x52, 0x19, 0x31, 0x18, 0xF0, 0x19, 0x11, 0x21, 0x52, 0x21, 0x93, 0x21, 0xB4, 0x21, 0x94, 0x19, 0x73, 0x19, 0x53, 0x11, 0x32, 0x11, 0x12, 0x19, 0x33, 0x19, 0x73, 0x01, 0x21, 0x73, 0x8A, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x19, 0x30, 0x21, 0x50, 0x19, 0x30, 0x19, 0x31, 0x19, 0x51, 0x21, 0x93, 0x19, 0x53, 0x02, 0x19, 0x32, 0x89, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x21, 0x51, 0x29, 0x92, 0x21, 0x50, 0x19, 0x30, 0x21, 0x30, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x19, 0x73, 0x21, 0xB5, 0x21, 0xB4, 0x01, 0x19, 0x53, 0x80, 0x11, 0x32, 0x01, 0x11, 0x12, 0x01, 0x21, 0x94, 0x80, 0x11, 0x11, 0x01, 0x19, 0x31, 0x84, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x29, 0xB4, 0x21, 0x53, 0x02, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x03, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x83, 0x29, 0x0F, + 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x20, 0xEF, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x02, 0x21, 0x11, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x07, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x8A, 0x21, 0x31, 0x21, 0x51, 0x10, 0xF1, 0x11, 0x12, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xF8, 0x09, 0xD8, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x02, + 0x01, 0xB8, 0x01, 0x11, 0xF9, 0x80, 0x09, 0xF9, 0x01, 0x11, 0xF9, 0x80, 0x09, 0xD9, 0x01, 0x11, 0xF9, 0x02, 0x12, 0x19, 0x01, 0x11, 0xF9, 0x01, 0x12, 0x19, 0x06, 0x11, 0xF9, 0x85, 0x09, 0xD8, 0x11, 0xF9, 0x09, 0xD8, 0x11, 0xF9, 0x09, 0xD8, 0x11, 0xF9, 0x01, 0x11, 0xD9, 0x03, 0x11, 0xF9, 0x03, 0x09, 0xF9, 0x01, 0x11, 0xF9, 0x81, 0x09, 0xF9, 0x09, 0xD9, 0x05, 0x11, 0xF9, 0x01, 0x11, 0xD9, 0x81, 0x11, 0xF9, 0x11, 0xD9, 0x01, 0x11, 0xF9, 0x81, 0x11, 0xD8, 0x11, 0xF9, 0x01, 0x09, 0xF9, 0x81, 0x0A, 0x19, 0x09, 0xF9, 0x04, 0x11, 0xF9, 0x82, 0x11, 0xD9, 0x11, 0xF9, 0x12, 0x19, 0x01, 0x11, 0xF9, 0x01, 0x12, 0x19, 0x03, 0x11, 0xF9, 0x01, 0x12, 0x19, 0x03, 0x11, 0xF9, 0x80, 0x12, 0x19, 0x01, 0x11, 0xF9, 0x80, 0x12, 0x19, 0x01, 0x11, 0xF9, 0x80, 0x12, 0x19, 0x01, 0x11, 0xF9, 0x80, 0x12, 0x19, 0x01, 0x11, 0xF9, 0x80, 0x12, 0x19, 0x02, 0x11, 0xF9, 0x80, 0x12, 0x19, 0x06, 0x11, 0xF9, 0x81, 0x09, 0xF8, 0x11, 0xF8, 0x02, 0x11, 0xF9, 0x83, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xF9, 0x11, 0xF8, 0x01, 0x11, 0xF9, 0x80, 0x11, 0xD9, 0x03, 0x11, 0xF9, 0x80, 0x09, 0xD9, 0x07, 0x11, 0xF9, 0x01, 0x11, 0xD9, 0x5A, 0x11, 0xF9, 0x80, 0x12, 0x19, 0x08, 0x11, 0xF9, 0x80, 0x12, 0x19, 0x05, 0x11, 0xF9, 0x80, 0x11, 0xD9, 0x0D, 0x11, 0xF9, 0x01, 0x11, 0xF8, 0x85, 0x19, 0xF8, 0x19, 0xD7, 0x21, 0xB5, 0x19, 0x53, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x04, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x85, 0x29, 0x0F, 0x29, 0x0E, 0x30, 0xEE, 0x49, 0x6F, 0xBC, 0x7B, 0xD4, + 0xBB, 0x01, 0xDC, 0xBB, 0x80, 0xDC, 0xBA, 0x01, 0xD4, 0xBA, 0x88, 0xD4, 0xBB, 0xC4, 0x9B, 0x8B, 0x36, 0x38, 0xED, 0x30, 0xEE, 0x31, 0x0F, 0x31, 0x30, 0x31, 0x50, 0x31, 0x51, 0x02, 0x31, 0x71, 0x80, 0x39, 0x91, 0x04, 0x39, 0x92, 0x81, 0x41, 0x92, 0x39, 0x92, 0x06, 0x41, 0x92, 0x02, 0x41, 0xB2, 0x86, 0x49, 0xB3, 0x41, 0xB3, 0x41, 0xB2, 0x49, 0xB3, 0x41, 0xB3, 0x49, 0xB3, 0x41, 0xB3, 0x04, 0x49, 0xB3, 0x81, 0x41, 0x92, 0x49, 0x93, 0x06, 0x49, 0xB3, 0x80, 0x49, 0xD3, 0x03, 0x49, 0xB3, 0x01, 0x51, 0xB3, 0x01, 0x49, 0xB2, 0x04, 0x49, 0x92, 0x01, 0x49, 0x72, 0x80, 0x51, 0x72, 0x01, 0x51, 0x71, 0x88, 0x51, 0x51, 0x51, 0x50, 0x51, 0x0F, 0x50, 0xEF, 0x59, 0x0F, 0x82, 0x13, 0xA3, 0x17, 0xB3, 0x78, 0xC3, 0xB9, 0x01, 0xCB, 0xD9, 0x01, 0xCB, 0xB8, 0x80, 0xD3, 0xB8, 0x06, 0xD3, 0x97, 0x81, 0xD3, 0x98, 0xD3, 0x97, 0x03, 0xD3, 0x98, 0x01, 0xCB, 0x98, 0x89, 0xC3, 0x98, 0xBB, 0x78, 0xB3, 0x37, 0x9A, 0xD6, 0x79, 0xF2, 0x61, 0x50, 0x61, 0x71, 0x59, 0x72, 0x59, 0x92, 0x59, 0xB2, 0x01, 0x61, 0xB3, 0x87, 0x61, 0x92, 0x61, 0x71, 0x71, 0xB1, 0xCC, 0x39, 0xDC, 0x59, 0xDC, 0x79, 0xDC, 0x78, 0xDC, 0x58, 0x01, 0xE4, 0x58, 0x89, 0xE4, 0x57, 0xDC, 0x37, 0xD4, 0x57, 0xCC, 0x37, 0xB4, 0x37, 0xA4, 0x58, 0x8C, 0xB9, 0x6D, 0x1A, 0x5D, 0x9C, 0x55, 0xDD, 0x01, 0x4D, 0xFD, 0x89, 0x55, 0xDC, 0x5D, 0x7C, 0x75, 0x1B, 0x83, 0xD8, 0x9B, 0x16, 0xAA, 0x75, 0xBA, 0x55, 0xC2, 0x34, 0xCA, 0x34, 0xCA, 0x14, 0x01, 0xC9, 0xF4, 0x87, 0xC1, 0xD4, 0xB1, 0xD4, 0xA1, 0xF4, + 0x92, 0x35, 0x7A, 0xB6, 0x84, 0xBB, 0x75, 0x3C, 0x6D, 0x5C, 0x01, 0x6D, 0x7D, 0x85, 0x75, 0x7D, 0x7D, 0x3D, 0x85, 0x3D, 0x9D, 0x3D, 0xAD, 0x5D, 0xAD, 0x1C, 0x01, 0xBD, 0x1C, 0x01, 0xC4, 0xFB, 0x80, 0xC4, 0xDB, 0x02, 0xCC, 0xDB, 0x80, 0xCC, 0xBA, 0x06, 0xD4, 0xBA, 0x81, 0xDC, 0xBA, 0xD4, 0x9A, 0x01, 0xDC, 0x99, 0x01, 0xD4, 0x99, 0x06, 0xDC, 0x99, 0x80, 0xDC, 0x98, 0x06, 0xDC, 0x78, 0x05, 0xDC, 0x58, 0x80, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x03, 0xD4, 0x37, 0x80, 0xD4, 0x17, 0x02, 0xD4, 0x37, 0x03, 0xCC, 0x37, 0x80, 0xCC, 0x17, 0x01, 0xC4, 0x17, 0x80, 0xC3, 0xF7, 0x01, 0xCB, 0xF7, 0x02, 0xCB, 0xD7, 0x82, 0xD3, 0xF7, 0xD3, 0xD7, 0xD3, 0xB6, 0x01, 0xD3, 0x96, 0x01, 0xDB, 0x96, 0x88, 0xDB, 0xB7, 0xDB, 0x97, 0xDB, 0xB8, 0xD3, 0xDA, 0xCC, 0x1D, 0x72, 0x7A, 0x31, 0x59, 0x21, 0x5B, 0x11, 0x7C, 0x02, 0x09, 0x7D, 0x94, 0x11, 0x7D, 0x19, 0x7D, 0x29, 0x7C, 0x39, 0x1A, 0x51, 0x38, 0x92, 0x7B, 0x92, 0x5A, 0x81, 0xF8, 0x71, 0xF7, 0x6A, 0x78, 0x6B, 0x1A, 0x4B, 0x1A, 0x33, 0x7B, 0x24, 0x1C, 0x14, 0x9D, 0x0D, 0x1E, 0x05, 0xBE, 0x06, 0x5F, 0x06, 0xBF, 0x07, 0x1F, 0x07, 0x5F, 0x01, 0x0F, 0xBF, 0x01, 0x07, 0xDF, 0x8D, 0x07, 0xBF, 0x07, 0x9F, 0x0F, 0x9F, 0x17, 0xBF, 0x17, 0x7F, 0x2F, 0x5F, 0x46, 0xFE, 0x86, 0xFF, 0x63, 0x54, 0x71, 0xD1, 0x99, 0xF2, 0xB1, 0xD3, 0xC1, 0xD4, 0xC9, 0xB3, 0x05, 0xC9, 0x93, 0x87, 0xC1, 0xB3, 0xB9, 0xD3, 0xB9, 0xF4, 0xB2, 0x35, 0x91, 0xF4, 0x58, 0xF1, 0x51, 0x11, 0x51, 0x72, 0x01, 0x49, 0x92, 0x80, 0x41, 0x71, 0x03, + 0x39, 0x71, 0x80, 0x39, 0x51, 0x01, 0x31, 0x51, 0x8B, 0x31, 0x52, 0x31, 0x72, 0x29, 0x32, 0x21, 0x32, 0x21, 0x33, 0x21, 0x96, 0x19, 0xF8, 0x11, 0xF9, 0x09, 0xB9, 0x09, 0xDA, 0x01, 0xDA, 0x09, 0xFA, 0x02, 0x01, 0xBA, 0x80, 0x09, 0xDA, 0x01, 0x09, 0xD9, 0x84, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0xD7, 0x09, 0x75, 0x09, 0x54, 0x02, 0x09, 0x33, 0x81, 0x09, 0x32, 0x11, 0x33, 0x05, 0x11, 0x12, 0x82, 0x11, 0x13, 0x11, 0x12, 0x11, 0x13, 0x03, 0x11, 0x33, 0x82, 0x11, 0x12, 0x11, 0x32, 0x11, 0x12, 0x03, 0x11, 0x32, 0x01, 0x11, 0x12, 0x03, 0x11, 0x32, 0x02, 0x11, 0x12, 0x96, 0x10, 0xF2, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x13, 0x08, 0xF2, 0x09, 0x13, 0x09, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x53, 0x19, 0x33, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x29, 0x31, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0x55, 0x11, 0x96, 0x01, 0x11, 0xB7, 0x82, 0x11, 0x97, 0x09, 0x76, 0x09, 0x55, 0x01, 0x09, 0x34, 0x8A, 0x09, 0x55, 0x09, 0x75, 0x09, 0x96, 0x11, 0xD7, 0x19, 0xF7, 0x21, 0xF7, 0x11, 0x74, 0x11, 0x12, 0x19, 0x32, 0x21, 0x52, 0x21, 0x51, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x50, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x31, 0x19, 0x32, 0x21, 0x53, 0x21, 0x73, 0x01, 0x21, 0x74, 0x80, 0x21, 0x73, 0x02, 0x19, 0x32, 0x83, + 0x19, 0x52, 0x11, 0x32, 0x19, 0x93, 0x21, 0x93, 0x05, 0x19, 0x32, 0x84, 0x19, 0x52, 0x21, 0x73, 0x21, 0x72, 0x21, 0x52, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x21, 0x73, 0x19, 0x53, 0x10, 0xF1, 0x01, 0x11, 0x12, 0x01, 0x19, 0x32, 0x82, 0x19, 0x52, 0x29, 0xB4, 0x19, 0x52, 0x02, 0x19, 0x11, 0x81, 0x19, 0x32, 0x11, 0x32, 0x01, 0x19, 0x53, 0x84, 0x19, 0x74, 0x19, 0x53, 0x11, 0x32, 0x11, 0x12, 0x19, 0x33, 0x01, 0x19, 0x73, 0x85, 0x19, 0x74, 0x19, 0x53, 0x21, 0x31, 0x19, 0x11, 0x19, 0x10, 0x21, 0x32, 0x01, 0x19, 0x53, 0x82, 0x19, 0x73, 0x19, 0x52, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x21, 0x52, 0x01, 0x19, 0x73, 0x83, 0x19, 0x94, 0x19, 0x53, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x73, 0x86, 0x19, 0x53, 0x19, 0x73, 0x21, 0x73, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x51, 0x02, 0x19, 0x30, 0x01, 0x19, 0x31, 0x81, 0x21, 0x73, 0x19, 0x73, 0x02, 0x19, 0x32, 0x03, 0x19, 0x31, 0x85, 0x19, 0x11, 0x21, 0x51, 0x29, 0x92, 0x21, 0x30, 0x19, 0x30, 0x21, 0x51, 0x01, 0x19, 0x31, 0x81, 0x19, 0x32, 0x19, 0x53, 0x01, 0x19, 0x73, 0x87, 0x19, 0x53, 0x19, 0x73, 0x19, 0x53, 0x11, 0x13, 0x19, 0x33, 0x29, 0xB5, 0x19, 0x53, 0x11, 0x12, 0x03, 0x19, 0x31, 0x82, 0x19, 0x52, 0x21, 0x93, 0x19, 0x52, 0x05, 0x19, 0x32, 0x81, 0x19, 0x52, 0x21, 0x52, 0x02, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, + 0x2F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x08, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x04, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x88, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x11, 0x11, 0x32, 0x19, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x01, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x85, 0x01, 0xB9, 0x01, 0xB8, 0x09, 0xB8, 0x09, 0xD8, 0x11, 0xF8, 0x19, 0xF9, 0x02, 0x11, 0xD8, 0x01, 0x11, 0xD7, 0x82, 0x19, 0xD7, 0x11, 0xB7, 0x11, 0xD7, 0x04, 0x11, + 0xB7, 0x80, 0x19, 0xD7, 0x04, 0x11, 0xB7, 0x04, 0x11, 0xD7, 0x05, 0x11, 0xB7, 0x81, 0x11, 0xD7, 0x19, 0xD7, 0x04, 0x11, 0xD7, 0x81, 0x19, 0xD7, 0x11, 0xD7, 0x01, 0x19, 0xD7, 0x82, 0x11, 0xD7, 0x11, 0xB6, 0x19, 0xD7, 0x01, 0x11, 0xD7, 0x80, 0x11, 0xB7, 0x01, 0x19, 0xB7, 0x83, 0x11, 0xB7, 0x19, 0xB7, 0x19, 0xD8, 0x11, 0xB7, 0x01, 0x19, 0xD7, 0x88, 0x19, 0xF7, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xF7, 0x11, 0xD7, 0x19, 0xD7, 0x11, 0xD7, 0x19, 0xD7, 0x19, 0xD8, 0x04, 0x19, 0xD7, 0x01, 0x11, 0xD7, 0x81, 0x19, 0xD7, 0x19, 0xB7, 0x01, 0x19, 0xD7, 0x01, 0x19, 0xB7, 0x01, 0x19, 0xD7, 0x80, 0x19, 0xB7, 0x01, 0x19, 0xD7, 0x80, 0x11, 0xB7, 0x01, 0x19, 0xD7, 0x81, 0x19, 0xB7, 0x11, 0xB7, 0x04, 0x19, 0xD7, 0x80, 0x11, 0xB7, 0x03, 0x19, 0xD7, 0x84, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0xD7, 0x19, 0xD7, 0x11, 0xD7, 0x08, 0x11, 0xB6, 0x80, 0x19, 0xF7, 0x04, 0x19, 0xD7, 0x86, 0x19, 0xF7, 0x11, 0xD7, 0x19, 0xF7, 0x11, 0xD7, 0x19, 0xF7, 0x11, 0xD7, 0x19, 0xF8, 0x01, 0x19, 0xD8, 0x04, 0x19, 0xD7, 0x80, 0x19, 0xD8, 0x01, 0x19, 0xD7, 0x02, 0x11, 0xD7, 0x80, 0x19, 0xD7, 0x03, 0x11, 0xD7, 0x06, 0x19, 0xD8, 0x01, 0x11, 0xD7, 0x80, 0x19, 0xD8, 0x01, 0x19, 0xF8, 0x80, 0x19, 0xF7, 0x01, 0x19, 0xD8, 0x82, 0x19, 0xF8, 0x19, 0xF7, 0x19, 0xD8, 0x03, 0x19, 0xF8, 0x04, 0x19, 0xD8, 0x82, 0x19, 0xF8, 0x19, 0xF7, 0x19, 0xD8, 0x01, 0x11, 0xD7, 0x80, 0x19, 0xD7, 0x02, 0x11, 0xD7, 0x02, 0x19, 0xD7, 0x81, 0x11, 0xD7, 0x19, 0xD7, 0x07, 0x11, 0xD7, 0x80, 0x19, 0xD7, 0x09, + 0x11, 0xD7, 0x82, 0x19, 0xD7, 0x11, 0xD7, 0x19, 0xD7, 0x03, 0x11, 0xD7, 0x80, 0x19, 0xD7, 0x02, 0x19, 0xD8, 0x81, 0x19, 0xF8, 0x19, 0xD8, 0x02, 0x19, 0xF8, 0x04, 0x19, 0xD7, 0x80, 0x11, 0xD7, 0x01, 0x19, 0xD7, 0x01, 0x11, 0xD7, 0x80, 0x19, 0xD7, 0x0D, 0x11, 0xD7, 0x01, 0x19, 0xD8, 0x01, 0x19, 0xD7, 0x07, 0x19, 0xF8, 0x87, 0x19, 0xF7, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x94, 0x19, 0x53, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x05, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x85, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0x8C, 0x8B, 0x56, 0xCC, 0xFC, 0xDC, 0xDC, 0x01, 0xDC, 0xDB, 0x89, 0xDC, 0xBB, 0xD4, 0xBB, 0xD4, 0xFC, 0xAB, 0xD8, 0x49, 0x4F, 0x30, 0xCD, 0x30, 0xEE, 0x31, 0x0F, 0x31, 0x30, 0x31, 0x50, 0x01, 0x31, 0x51, 0x01, 0x31, 0x71, 0x81, 0x39, 0x91, 0x39, 0x71, 0x01, 0x39, 0x91, 0x01, 0x39, 0x92, 0x83, 0x39, 0x72, 0x39, 0x92, 0x41, 0x92, 0x39, 0x92, 0x0A, 0x41, 0x92, 0x04, 0x41, 0xB2, 0x80, 0x41, 0xB3, 0x03, 0x41, 0xB2, 0x03, 0x41, 0x92, 0x80, 0x41, 0xB2, 0x03, 0x49, 0xB2, 0x80, 0x49, 0xB3, 0x07, 0x49, 0xB2, 0x07, 0x49, 0x92, 0x02, 0x49, 0x72, 0x82, 0x49, 0x71, 0x49, 0x51, 0x51, 0x51, 0x01, 0x51, 0x30, 0x8A, 0x51, 0x0F, 0x59, 0x2F, 0x69, 0x70, 0x71, 0xB1, 0x82, 0x13, 0x9A, 0xB5, 0xAB, 0x37, 0xC3, 0xD9, 0xD4, 0x1A, 0xD3, 0xF9, 0xCB, 0xD9, 0x01, 0xCB, 0xB8, 0x81, 0xCB, 0x98, 0xCB, 0xB8, 0x01, 0xCB, 0xD9, 0x85, 0xD3, 0xF9, 0xCB, 0xD9, 0xC3, 0xB9, 0xB3, 0x37, 0xA2, 0xB5, 0x8A, 0x33, 0x01, 0x71, 0x91, 0x82, 0x61, 0x50, 0x59, 0x50, 0x59, 0x71, 0x03, + 0x59, 0x92, 0x01, 0x59, 0xB3, 0x87, 0x59, 0xB2, 0x61, 0xB2, 0x61, 0x71, 0xA3, 0x36, 0xDC, 0x7A, 0xDC, 0x79, 0xE4, 0x99, 0xE4, 0x78, 0x02, 0xE4, 0x58, 0x89, 0xE4, 0x57, 0xDC, 0x37, 0xD4, 0x37, 0xC4, 0x37, 0xB4, 0x38, 0x9C, 0x78, 0x84, 0xD9, 0x6D, 0x5B, 0x5D, 0xBC, 0x55, 0xFD, 0x01, 0x4D, 0xFD, 0xA4, 0x55, 0xBC, 0x65, 0x7C, 0x74, 0xFB, 0x83, 0x77, 0x9A, 0xD6, 0xAA, 0x75, 0xBA, 0x35, 0xC2, 0x34, 0xCA, 0x35, 0xCA, 0x14, 0xC9, 0xF4, 0xC1, 0xD3, 0xC1, 0xD4, 0xB1, 0xD4, 0xA9, 0xF5, 0x9A, 0x36, 0x8A, 0xD7, 0x8C, 0x5B, 0x85, 0x1D, 0x85, 0x5E, 0x85, 0x7E, 0x8D, 0x9F, 0x95, 0x9F, 0x9D, 0x7F, 0x9C, 0xFD, 0x9C, 0xBC, 0xAC, 0xFD, 0xC5, 0x5E, 0xCD, 0x5E, 0xCD, 0x3D, 0xCD, 0x1D, 0xCD, 0x1C, 0xCC, 0xFC, 0xCC, 0xDC, 0xCC, 0xDB, 0xCC, 0xDC, 0xCC, 0xDB, 0x01, 0xD4, 0xDB, 0x04, 0xD4, 0xBB, 0x02, 0xD4, 0xBA, 0x05, 0xD4, 0x9A, 0x01, 0xD4, 0x99, 0x05, 0xDC, 0x99, 0x80, 0xDC, 0x79, 0x01, 0xDC, 0x78, 0x80, 0xE4, 0x79, 0x01, 0xDC, 0x78, 0x80, 0xDC, 0x58, 0x01, 0xDC, 0x38, 0x02, 0xDC, 0x37, 0x80, 0xDC, 0x38, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x17, 0x08, 0xD4, 0x17, 0x80, 0xD3, 0xF7, 0x03, 0xCB, 0xF7, 0x80, 0xD3, 0xF7, 0x04, 0xD3, 0xD7, 0x81, 0xD3, 0xB7, 0xD3, 0x96, 0x03, 0xDB, 0x96, 0xA0, 0xDB, 0xB7, 0xDB, 0x97, 0xDB, 0xB8, 0xD3, 0xB9, 0xCB, 0xFC, 0x93, 0x3C, 0x41, 0x58, 0x29, 0x7A, 0x19, 0x7C, 0x11, 0x7D, 0x09, 0x7D, 0x09, 0x9D, 0x11, 0x7D, 0x19, 0x7D, 0x21, 0x5C, 0x31, 0x3A, 0x49, 0x39, 0x8A, 0x7C, 0x92, 0x7A, 0x81, 0xF8, 0x7A, 0x18, 0x72, 0x99, + 0x62, 0xFA, 0x4A, 0xFA, 0x33, 0x5B, 0x2C, 0x3D, 0x14, 0x9D, 0x0D, 0x1E, 0x05, 0x9E, 0x06, 0x5F, 0x06, 0xBF, 0x07, 0x1F, 0x07, 0x5F, 0x01, 0x0F, 0xBF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x01, 0x0F, 0x9F, 0x8B, 0x17, 0x9F, 0x27, 0x3E, 0x3E, 0xFE, 0x7E, 0xFF, 0x73, 0xF7, 0x69, 0xD1, 0x9A, 0x13, 0xB1, 0xF3, 0xB9, 0xD3, 0xC9, 0xD3, 0xC1, 0x93, 0xC9, 0x93, 0x01, 0xC9, 0xB4, 0x01, 0xC9, 0x93, 0x8D, 0xC1, 0xB3, 0xC1, 0xD3, 0xB1, 0xD4, 0xB2, 0x35, 0x92, 0x15, 0x61, 0x11, 0x51, 0x11, 0x51, 0x72, 0x49, 0x72, 0x49, 0x92, 0x41, 0x72, 0x39, 0x71, 0x39, 0x51, 0x39, 0x71, 0x01, 0x39, 0x51, 0x01, 0x31, 0x51, 0x88, 0x31, 0x52, 0x31, 0x72, 0x29, 0x32, 0x21, 0x32, 0x21, 0x53, 0x21, 0x75, 0x19, 0xD7, 0x19, 0xF9, 0x11, 0xD9, 0x01, 0x09, 0xDA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xBA, 0x89, 0x01, 0xB9, 0x09, 0xB9, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xB7, 0x09, 0x95, 0x09, 0x54, 0x09, 0x53, 0x11, 0x53, 0x03, 0x11, 0x32, 0x84, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x03, 0x19, 0x12, 0x02, 0x11, 0x12, 0x02, 0x11, 0x32, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x81, 0x19, 0x32, 0x11, 0x31, 0x03, 0x19, 0x32, 0x01, 0x19, 0x12, 0x02, 0x19, 0x32, 0x85, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x33, 0x01, 0x11, 0x13, 0x82, 0x11, 0x33, 0x11, 0x34, 0x19, 0x95, 0x02, 0x21, 0xF6, 0x84, 0x21, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x31, 0x88, 0x21, 0x10, 0x29, 0x10, + 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x83, 0x19, 0x31, 0x19, 0x32, 0x19, 0x54, 0x19, 0x96, 0x02, 0x11, 0xB7, 0x85, 0x11, 0x96, 0x09, 0x76, 0x09, 0x55, 0x09, 0x54, 0x09, 0x55, 0x09, 0x54, 0x01, 0x09, 0x75, 0x87, 0x11, 0x96, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x32, 0x81, 0x21, 0x73, 0x19, 0x74, 0x01, 0x19, 0x73, 0x02, 0x19, 0x32, 0x01, 0x11, 0x11, 0x01, 0x21, 0x93, 0x83, 0x11, 0x12, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x01, 0x19, 0x32, 0x81, 0x19, 0x52, 0x21, 0x93, 0x01, 0x21, 0x72, 0x80, 0x21, 0x31, 0x06, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x21, 0x73, 0x19, 0x53, 0x11, 0x12, 0x01, 0x19, 0x32, 0x84, 0x11, 0x32, 0x19, 0x52, 0x29, 0xB4, 0x29, 0xD4, 0x21, 0x52, 0x01, 0x19, 0x31, 0x84, 0x19, 0x11, 0x19, 0x32, 0x19, 0x73, 0x19, 0x74, 0x19, 0x53, 0x01, 0x19, 0x73, 0x80, 0x19, 0x53, 0x01, 0x19, 0x73, 0x88, 0x19, 0x74, 0x19, 0x94, 0x19, 0x73, 0x19, 0x32, 0x19, 0x31, 0x19, 0x10, 0x19, 0x11, 0x19, 0x31, 0x21, 0x73, 0x01, 0x19, 0x73, 0x85, 0x19, 0x72, 0x19, 0x31, 0x19, 0x10, 0x19, 0x11, 0x19, 0x52, 0x21, 0x73, 0x01, 0x19, 0x74, 0x01, 0x11, 0x33, 0x86, 0x19, 0x53, 0x21, 0x94, 0x19, 0x74, 0x19, 0x53, 0x19, 0x73, 0x21, 0x73, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x19, 0x30, 0x88, 0x19, 0x10, 0x19, 0x31, + 0x21, 0x93, 0x19, 0x73, 0x11, 0x32, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x19, 0x51, 0x01, 0x19, 0x31, 0x82, 0x18, 0xF0, 0x21, 0x51, 0x29, 0x92, 0x02, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x11, 0x32, 0x19, 0x73, 0x21, 0x94, 0x02, 0x19, 0x73, 0x01, 0x11, 0x33, 0x8A, 0x19, 0x34, 0x21, 0x95, 0x19, 0x53, 0x19, 0x12, 0x19, 0x11, 0x19, 0x31, 0x19, 0x52, 0x19, 0x32, 0x19, 0x72, 0x21, 0x73, 0x19, 0x52, 0x03, 0x19, 0x32, 0x01, 0x11, 0x32, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x82, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x81, 0x29, 0x50, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, + 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0x97, 0x11, 0xB8, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x80, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x89, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x09, 0x34, 0x09, 0x13, 0x00, 0xF2, 0x11, 0x34, 0x11, 0x13, 0x09, 0x12, 0x11, 0x12, 0x01, 0x10, 0xF2, 0x82, 0x11, 0x12, 0x09, 0x12, 0x11, 0x33, 0x03, 0x11, 0x12, 0x80, 0x10, 0xF2, 0x01, 0x11, 0x12, 0x82, 0x11, 0x33, 0x11, 0x12, 0x11, 0x32, 0x02, 0x11, 0x12, 0x81, 0x11, 0x33, 0x11, 0x13, 0x03, 0x11, 0x33, 0x04, 0x11, 0x13, 0x06, 0x11, 0x33, 0x81, 0x09, 0x12, 0x11, 0x12, 0x01, 0x09, 0x12, 0x01, 0x11, 0x13, 0x01, 0x11, 0x33, 0x01, 0x08, 0xF2, 0x81, 0x10, 0xF3, 0x10, 0xF2, 0x01, 0x11, 0x33, 0x01, 0x09, 0x12, 0x01, 0x08, 0xF2, 0x84, 0x11, 0x13, 0x11, 0x12, 0x11, 0x13, 0x11, 0x12, 0x10, 0xF2, 0x01, 0x11, 0x12, 0x80, 0x10, 0xF2, 0x01, 0x11, 0x12, 0x02, 0x10, 0xF2, 0x80, 0x11, 0x12, 0x06, 0x10, 0xF2, 0x82, 0x11, 0x12, 0x11, 0x13, 0x10, 0xF2, 0x06, 0x11, 0x12, + 0x80, 0x11, 0x33, 0x03, 0x11, 0x12, 0x81, 0x11, 0x13, 0x11, 0x12, 0x01, 0x11, 0x13, 0x09, 0x11, 0x12, 0x01, 0x11, 0x33, 0x02, 0x11, 0x53, 0x03, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x09, 0x32, 0x01, 0x09, 0x12, 0x05, 0x11, 0x33, 0x81, 0x09, 0x13, 0x09, 0x33, 0x04, 0x11, 0x33, 0x04, 0x11, 0x53, 0x02, 0x11, 0x54, 0x04, 0x11, 0x53, 0x05, 0x11, 0x33, 0x01, 0x11, 0x53, 0x0B, 0x11, 0x33, 0x0F, 0x11, 0x53, 0x02, 0x11, 0x54, 0x80, 0x11, 0x74, 0x06, 0x11, 0x54, 0x08, 0x11, 0x53, 0x01, 0x11, 0x33, 0x01, 0x11, 0x53, 0x0B, 0x11, 0x33, 0x13, 0x11, 0x53, 0x05, 0x11, 0x33, 0x81, 0x09, 0x33, 0x11, 0x33, 0x01, 0x09, 0x33, 0x01, 0x11, 0x33, 0x02, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x05, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x0E, 0x28, 0xED, 0x51, 0x90, 0xCC, 0xDC, 0x01, 0xD4, 0xDB, 0x80, 0xDC, 0xDB, 0x01, 0xD4, 0xBB, 0x83, 0xC4, 0xBB, 0x8A, 0xF5, 0x28, 0x6B, 0x30, 0xEE, 0x01, 0x31, 0x0F, 0x82, 0x31, 0x30, 0x31, 0x50, 0x31, 0x51, 0x02, 0x31, 0x71, 0x03, 0x39, 0x71, 0x01, 0x39, 0x91, 0x05, 0x39, 0x92, 0x02, 0x41, 0x92, 0x80, 0x39, 0x92, 0x1E, 0x41, 0x92, 0x80, 0x49, 0x92, 0x01, 0x41, 0x92, 0x04, 0x49, 0x92, 0x80, 0x49, 0x93, 0x05, 0x49, 0x92, 0x02, 0x49, 0x72, 0x81, 0x49, 0x51, 0x51, 0x51, 0x02, 0x51, 0x50, 0x82, 0x51, 0x30, 0x51, 0x0F, 0x49, 0x0F, 0x01, 0x48, 0xEE, 0x8D, 0x59, 0x2F, 0x7A, 0x12, 0x8A, 0x74, 0x9A, 0xD6, 0xA2, 0xF6, 0x9A, 0xF6, 0x92, 0xB5, 0x82, 0x33, 0x69, 0x91, 0x61, + 0x50, 0x59, 0x10, 0x51, 0x0F, 0x51, 0x10, 0x59, 0x50, 0x02, 0x59, 0x71, 0x83, 0x59, 0x92, 0x51, 0x92, 0x59, 0xB2, 0x59, 0xB3, 0x01, 0x59, 0xD3, 0x80, 0x59, 0xB3, 0x01, 0x59, 0x92, 0x83, 0x59, 0x91, 0x61, 0x91, 0xBB, 0xF9, 0xDC, 0x7A, 0x01, 0xE4, 0x99, 0x81, 0xE4, 0x78, 0xE4, 0x38, 0x01, 0xE4, 0x37, 0x88, 0xDC, 0x37, 0xD4, 0x17, 0xCC, 0x17, 0xBB, 0xF7, 0xAC, 0x17, 0x94, 0x78, 0x7D, 0x1A, 0x65, 0x7C, 0x55, 0xDD, 0x01, 0x4D, 0xFD, 0x89, 0x4D, 0xDD, 0x55, 0xBC, 0x65, 0x7C, 0x74, 0x9A, 0x83, 0x16, 0x9A, 0x95, 0xAA, 0x55, 0xBA, 0x35, 0xC2, 0x14, 0xCA, 0x14, 0x01, 0xC9, 0xF4, 0x01, 0xC1, 0xD4, 0x89, 0xB9, 0xF4, 0xAA, 0x15, 0x9A, 0x56, 0x8A, 0xB7, 0x8B, 0xBA, 0x83, 0xFB, 0x5A, 0xF7, 0x52, 0x95, 0x42, 0x13, 0x41, 0xF3, 0x01, 0x49, 0xF3, 0x8C, 0x51, 0xD3, 0x51, 0xD2, 0x51, 0x91, 0x61, 0xF2, 0x72, 0x95, 0x82, 0xF6, 0x9B, 0x98, 0xAB, 0xF9, 0xAB, 0xFA, 0xAC, 0x1A, 0xAB, 0xFA, 0xB3, 0xFA, 0xAB, 0xD9, 0x02, 0xB3, 0xF9, 0x81, 0xBC, 0x19, 0xBC, 0x3A, 0x03, 0xC4, 0x5A, 0x82, 0xCC, 0x7A, 0xCC, 0x7B, 0xCC, 0x7A, 0x01, 0xD4, 0x9B, 0x01, 0xD4, 0xBB, 0x84, 0xDC, 0xDB, 0xDC, 0xBB, 0xDC, 0xBA, 0xDC, 0x9A, 0xDC, 0xBA, 0x02, 0xDC, 0x99, 0x02, 0xDC, 0x79, 0x02, 0xDC, 0x78, 0x04, 0xDC, 0x58, 0x01, 0xDC, 0x38, 0x01, 0xDC, 0x37, 0x82, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x17, 0x02, 0xD4, 0x17, 0x07, 0xD3, 0xF7, 0x01, 0xD3, 0xD7, 0x80, 0xD3, 0xD6, 0x03, 0xD3, 0xB6, 0x82, 0xD3, 0x96, 0xDB, 0x96, 0xD3, 0x96, 0x02, 0xDB, 0x96, 0x89, 0xDB, 0x97, 0xD3, 0x97, + 0xD3, 0x98, 0xD3, 0xB9, 0xCB, 0xDB, 0xAB, 0x9D, 0x59, 0xD9, 0x29, 0x5A, 0x19, 0x7C, 0x11, 0x7C, 0x01, 0x09, 0x7D, 0x94, 0x11, 0x9D, 0x19, 0x9D, 0x21, 0x7C, 0x31, 0x3B, 0x39, 0x19, 0x7A, 0x3B, 0x8A, 0x7B, 0x7A, 0x18, 0x72, 0x38, 0x72, 0x99, 0x62, 0xFA, 0x4A, 0xFA, 0x3B, 0x7B, 0x2C, 0x1C, 0x1C, 0x9D, 0x0D, 0x1E, 0x05, 0x9E, 0x06, 0x3F, 0x06, 0xBF, 0x07, 0x1F, 0x07, 0x5F, 0x01, 0x0F, 0xBF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x8D, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x5F, 0x3E, 0xDE, 0x76, 0xBF, 0x84, 0xDA, 0x62, 0x11, 0x9A, 0x74, 0xB2, 0x13, 0xB9, 0xD3, 0xC1, 0xB3, 0xC9, 0xB4, 0xC9, 0x93, 0xC9, 0x94, 0x01, 0xC9, 0x93, 0x80, 0xC9, 0xB4, 0x01, 0xC1, 0xB3, 0x86, 0xB1, 0xB4, 0xAA, 0x15, 0x9A, 0x35, 0x61, 0x31, 0x51, 0x31, 0x51, 0x72, 0x51, 0x92, 0x01, 0x41, 0x72, 0x01, 0x39, 0x72, 0x02, 0x39, 0x51, 0x80, 0x31, 0x51, 0x01, 0x31, 0x72, 0x88, 0x31, 0x52, 0x29, 0x52, 0x29, 0x32, 0x21, 0x33, 0x21, 0x75, 0x19, 0x76, 0x11, 0xB7, 0x11, 0xF9, 0x09, 0xD9, 0x01, 0x09, 0xFA, 0x8B, 0x09, 0xDA, 0x01, 0xD9, 0x09, 0xF9, 0x12, 0x19, 0x11, 0xD8, 0x11, 0xB7, 0x09, 0x96, 0x09, 0x75, 0x11, 0x54, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x32, 0x81, 0x19, 0x52, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x21, 0x32, 0x19, 0x11, 0x21, 0x32, 0x19, 0x32, 0x02, 0x19, 0x12, 0x81, 0x19, 0x11, 0x19, 0x32, 0x04, 0x19, 0x31, 0x80, 0x21, 0x52, 0x07, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x21, 0x52, 0x01, 0x21, 0x31, 0x01, 0x21, 0x32, 0x89, 0x19, + 0x32, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x12, 0x11, 0x13, 0x11, 0x33, 0x19, 0x74, 0x19, 0xD6, 0x21, 0xF7, 0x01, 0x21, 0xD6, 0x82, 0x11, 0x53, 0x11, 0x12, 0x19, 0x12, 0x02, 0x21, 0x31, 0x81, 0x21, 0x10, 0x20, 0xF0, 0x03, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x12, 0x11, 0x33, 0x19, 0xD6, 0x19, 0xF8, 0x01, 0x11, 0xB7, 0x85, 0x01, 0x35, 0x09, 0x55, 0x09, 0x75, 0x09, 0x74, 0x11, 0x95, 0x09, 0x74, 0x01, 0x09, 0x75, 0x80, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x85, 0x11, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x51, 0x04, 0x21, 0x30, 0x01, 0x21, 0x31, 0x88, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x21, 0xB4, 0x21, 0xD5, 0x21, 0x94, 0x19, 0x93, 0x19, 0x52, 0x19, 0x31, 0x02, 0x11, 0x11, 0x83, 0x21, 0xD4, 0x21, 0xB4, 0x19, 0x32, 0x19, 0x52, 0x01, 0x19, 0x32, 0x01, 0x11, 0x12, 0x82, 0x19, 0x32, 0x21, 0x73, 0x21, 0x72, 0x01, 0x21, 0x51, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x82, 0x19, 0x31, 0x21, 0x73, 0x29, 0xD4, 0x01, 0x19, 0x73, 0x01, 0x21, 0xB4, 0x84, 0x29, 0xD4, 0x29, 0xB4, 0x21, 0x52, 0x19, 0x32, 0x21, 0x52, 0x02, 0x19, 0x11, 0x80, 0x21, 0xB4, 0x02, 0x19, 0x74, 0x8C, 0x21, 0x94, 0x21, 0x73, 0x21, 0x93, 0x21, 0xB4, 0x19, 0x74, 0x19, 0x73, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x21, 0x52, 0x21, 0x73, 0x01, 0x19, 0x73, 0x88, 0x19, 0x72, 0x19, 0x31, 0x10, 0xF0, 0x19, 0x31, 0x21, 0x72, 0x21, 0x73, + 0x19, 0x73, 0x19, 0x53, 0x11, 0x32, 0x01, 0x19, 0x53, 0x01, 0x19, 0x94, 0x01, 0x19, 0x73, 0x81, 0x19, 0x53, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x10, 0x01, 0x21, 0x30, 0x88, 0x19, 0x10, 0x19, 0x31, 0x29, 0xB4, 0x21, 0x94, 0x11, 0x32, 0x19, 0x32, 0x11, 0x31, 0x19, 0x31, 0x19, 0x51, 0x01, 0x19, 0x31, 0x94, 0x19, 0x10, 0x29, 0x72, 0x31, 0xD3, 0x21, 0x51, 0x19, 0x30, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x19, 0x52, 0x19, 0x73, 0x21, 0xB4, 0x19, 0x74, 0x19, 0x33, 0x19, 0x53, 0x11, 0x33, 0x19, 0x34, 0x19, 0x75, 0x19, 0x54, 0x19, 0x33, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x51, 0x80, 0x19, 0x52, 0x01, 0x21, 0x93, 0x8B, 0x19, 0x53, 0x19, 0x32, 0x19, 0x52, 0x19, 0x32, 0x19, 0x52, 0x19, 0x73, 0x19, 0x93, 0x21, 0x93, 0x19, 0x73, 0x21, 0x72, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x84, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x0F, + 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x88, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB8, 0x09, 0xD8, 0x03, 0x09, 0xD9, 0x01, 0x09, 0xD8, 0x83, 0x11, 0xD8, 0x11, 0xB7, 0x09, 0x75, 0x09, 0x13, 0x01, 0x08, 0xF2, 0x01, 0x11, 0x12, 0x01, 0x19, 0x12, 0x81, 0x19, 0x11, 0x18, 0xF1, 0x06, 0x19, 0x11, 0x82, 0x18, 0xF1, 0x19, 0x11, 0x18, 0xF1, 0x01, 0x19, 0x11, 0x01, 0x18, 0xF1, 0x80, 0x19, 0x31, 0x18, 0x19, 0x11, 0x80, 0x18, 0xF1, 0x01, 0x19, 0x12, 0x81, 0x18, 0xF1, 0x18, 0xF2, 0x01, 0x18, 0xF1, 0x01, 0x19, 0x11, 0x80, 0x19, 0x12, 0x02, 0x19, 0x11, 0x80, 0x18, 0xF1, 0x03, 0x19, 0x11, 0x01, 0x18, 0xF1, 0x81, 0x19, 0x11, 0x21, 0x31, + 0x01, 0x19, 0x11, 0x01, 0x18, 0xF1, 0x05, 0x19, 0x11, 0x01, 0x18, 0xF1, 0x82, 0x19, 0x12, 0x19, 0x11, 0x18, 0xF1, 0x0E, 0x19, 0x11, 0x80, 0x19, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x06, 0x19, 0x11, 0x14, 0x19, 0x31, 0x06, 0x19, 0x32, 0x02, 0x11, 0x31, 0x01, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x11, 0x32, 0x81, 0x19, 0x32, 0x11, 0x32, 0x02, 0x19, 0x32, 0x80, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x06, 0x19, 0x31, 0x12, 0x19, 0x32, 0x01, 0x19, 0x52, 0x80, 0x19, 0x32, 0x03, 0x19, 0x52, 0x0A, 0x19, 0x32, 0x01, 0x19, 0x31, 0x02, 0x19, 0x32, 0x80, 0x11, 0x31, 0x07, 0x19, 0x32, 0x02, 0x19, 0x31, 0x0E, 0x19, 0x32, 0x81, 0x11, 0x32, 0x19, 0x52, 0x01, 0x19, 0x32, 0x81, 0x11, 0x31, 0x11, 0x32, 0x01, 0x19, 0x32, 0x05, 0x19, 0x31, 0x81, 0x11, 0x31, 0x19, 0x32, 0x05, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x06, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x28, 0xEE, 0x30, 0xED, 0xA3, 0xF9, 0xCC, 0xDC, 0x01, 0xD4, 0xDC, 0x01, 0xD4, 0xDB, 0x85, 0xD5, 0x1D, 0x6A, 0x52, 0x30, 0xAD, 0x30, 0xEE, 0x30, 0xEF, 0x31, 0x0F, 0x01, 0x31, 0x30, 0x01, 0x31, 0x51, 0x82, 0x31, 0x71, 0x31, 0x51, 0x31, 0x71, 0x05, 0x39, 0x71, 0x81, 0x39, 0x92, 0x39, 0x71, 0x04, 0x39, 0x92, 0x23, 0x41, 0x92, 0x81, 0x49, 0xB2, 0x41, 0x92, 0x01, 0x49, 0x92, 0x80, 0x41, 0x92, 0x08, 0x49, 0x92, 0x01, 0x49, 0x72, 0x81, 0x49, 0x92, 0x49, 0x72, 0x02, 0x49, 0x71, 0x01, 0x49, 0x51, 0x80, 0x49, 0x71, 0x01, + 0x49, 0x51, 0x81, 0x49, 0x50, 0x49, 0x30, 0x01, 0x51, 0x30, 0x01, 0x51, 0x0F, 0x81, 0x51, 0x30, 0x51, 0x50, 0x01, 0x51, 0x51, 0x02, 0x51, 0x71, 0x03, 0x51, 0x92, 0x01, 0x51, 0xB2, 0x01, 0x51, 0xB3, 0x8D, 0x59, 0xD3, 0x59, 0xF4, 0x59, 0xD4, 0x59, 0xB3, 0x59, 0xB2, 0x59, 0x91, 0x71, 0xD1, 0xD4, 0x7A, 0xDC, 0x7A, 0xE4, 0x79, 0xE4, 0x78, 0xDC, 0x38, 0xDC, 0x37, 0xDC, 0x17, 0x01, 0xDB, 0xF7, 0x87, 0xD3, 0xF7, 0xCB, 0xF7, 0xB3, 0xF7, 0xA4, 0x18, 0x8C, 0x79, 0x7D, 0x1B, 0x65, 0x9C, 0x55, 0xDD, 0x01, 0x4D, 0xFD, 0x88, 0x4D, 0xDD, 0x5D, 0xBD, 0x65, 0x5B, 0x7C, 0x79, 0x82, 0xF6, 0xA2, 0x75, 0xB2, 0x55, 0xBA, 0x35, 0xC2, 0x14, 0x01, 0xC1, 0xF4, 0x01, 0xC1, 0xD3, 0x86, 0xC1, 0xF4, 0xBA, 0x15, 0xAA, 0x35, 0x9A, 0x56, 0x8A, 0x77, 0x7A, 0xB7, 0x62, 0x55, 0x01, 0x5A, 0x15, 0x80, 0x59, 0xF5, 0x03, 0x59, 0xF4, 0x01, 0x59, 0xD4, 0x83, 0x59, 0xD3, 0x59, 0xB3, 0x59, 0xB2, 0x59, 0x92, 0x03, 0x59, 0x91, 0x02, 0x59, 0x71, 0x01, 0x59, 0x70, 0x01, 0x61, 0x91, 0x80, 0x69, 0xB1, 0x02, 0x69, 0xD1, 0x81, 0x69, 0xF2, 0x71, 0xF2, 0x01, 0x72, 0x12, 0x89, 0x7A, 0x12, 0x7A, 0x32, 0x82, 0x53, 0x8A, 0xB4, 0xA3, 0x36, 0xB3, 0xB8, 0xCC, 0x5A, 0xDC, 0xDC, 0xDC, 0xDB, 0xDC, 0xBB, 0x02, 0xDC, 0x9A, 0x03, 0xDC, 0x79, 0x80, 0xDC, 0x78, 0x03, 0xDC, 0x58, 0x80, 0xDC, 0x38, 0x02, 0xDC, 0x37, 0x04, 0xDC, 0x17, 0x80, 0xD3, 0xF7, 0x01, 0xDB, 0xF7, 0x80, 0xD3, 0xF7, 0x05, 0xD3, 0xD7, 0x01, 0xD3, 0xD6, 0x01, 0xD3, 0xB6, 0x80, 0xDB, 0xB6, 0x02, 0xD3, 0x96, 0x03, 0xDB, + 0x96, 0x8A, 0xD3, 0x76, 0xD3, 0x77, 0xD3, 0x97, 0xD3, 0x99, 0xCB, 0xBA, 0xBB, 0xDD, 0x72, 0x5A, 0x31, 0x59, 0x19, 0x5B, 0x11, 0x7C, 0x09, 0x7D, 0x02, 0x11, 0x9D, 0x92, 0x19, 0x7C, 0x29, 0x5B, 0x39, 0x19, 0x61, 0xBA, 0x82, 0x5B, 0x7A, 0x19, 0x7A, 0x59, 0x72, 0xBA, 0x62, 0xDA, 0x4A, 0xFA, 0x3B, 0x5B, 0x2C, 0x1C, 0x1C, 0x9D, 0x0D, 0x1E, 0x05, 0x9E, 0x06, 0x5F, 0x06, 0x9F, 0x07, 0x1F, 0x07, 0x5F, 0x01, 0x0F, 0xBF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x9E, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x5F, 0x3E, 0xFE, 0x66, 0xBF, 0x95, 0xBD, 0x5A, 0x31, 0x9A, 0x94, 0xA9, 0xF3, 0xB9, 0xF3, 0xB9, 0xB3, 0xC1, 0xB3, 0xC9, 0xB4, 0xC9, 0x73, 0xC9, 0x93, 0xC9, 0xB4, 0xC9, 0x93, 0xC1, 0x93, 0xC1, 0xD4, 0xB9, 0xD4, 0xB2, 0x15, 0x92, 0x15, 0x69, 0x32, 0x59, 0x32, 0x49, 0x32, 0x49, 0x92, 0x41, 0x72, 0x41, 0x92, 0x41, 0x72, 0x39, 0x72, 0x39, 0x71, 0x01, 0x39, 0x51, 0x8B, 0x39, 0x72, 0x31, 0x72, 0x31, 0x31, 0x31, 0x52, 0x29, 0x52, 0x29, 0x32, 0x21, 0x32, 0x21, 0x54, 0x19, 0x75, 0x11, 0x96, 0x11, 0xD8, 0x12, 0x19, 0x03, 0x09, 0xF9, 0x85, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x75, 0x11, 0x54, 0x01, 0x11, 0x53, 0x80, 0x11, 0x32, 0x02, 0x19, 0x31, 0x84, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x01, 0x21, 0x11, 0x80, 0x21, 0x31, 0x03, 0x21, 0x11, 0x83, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x03, 0x21, 0x31, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x10, 0x19, 0x30, 0x21, 0x31, 0x21, 0x11, 0x19, 0x10, 0x21, + 0x31, 0x19, 0x10, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x01, 0x21, 0x11, 0x01, 0x21, 0x31, 0x02, 0x19, 0x32, 0x01, 0x11, 0x12, 0x82, 0x11, 0x53, 0x19, 0x74, 0x19, 0xB5, 0x01, 0x21, 0xF6, 0x84, 0x19, 0xB5, 0x19, 0x54, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x88, 0x21, 0x31, 0x19, 0x11, 0x11, 0x33, 0x19, 0x95, 0x19, 0xF8, 0x19, 0xD8, 0x11, 0xB7, 0x09, 0x76, 0x01, 0x35, 0x01, 0x09, 0x54, 0x01, 0x09, 0x74, 0x01, 0x09, 0x75, 0x89, 0x11, 0x96, 0x11, 0xB6, 0x19, 0xD6, 0x19, 0x95, 0x19, 0x53, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x19, 0x11, 0x19, 0x12, 0x01, 0x19, 0x32, 0x83, 0x19, 0x73, 0x21, 0xB4, 0x21, 0x93, 0x19, 0x52, 0x03, 0x19, 0x32, 0x89, 0x21, 0xB3, 0x21, 0xB4, 0x11, 0x12, 0x19, 0x32, 0x19, 0x52, 0x19, 0x32, 0x11, 0x12, 0x19, 0x32, 0x19, 0x52, 0x21, 0x73, 0x01, 0x21, 0x72, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x11, 0x21, 0x73, 0x29, 0xD4, 0x21, 0xB4, 0x19, 0x73, 0x21, 0x73, 0x02, 0x19, 0x52, 0x05, 0x19, 0x11, 0x02, 0x19, 0x73, 0x80, 0x19, 0x53, 0x01, 0x19, 0x52, 0x83, 0x19, 0x73, 0x21, 0x93, 0x19, 0x73, 0x19, 0x53, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x19, 0x10, 0x21, 0x51, 0x01, 0x21, 0x73, 0x85, 0x19, 0x73, 0x19, 0x72, 0x19, 0x11, + 0x10, 0xF0, 0x19, 0x31, 0x21, 0x72, 0x01, 0x21, 0x93, 0x89, 0x19, 0x33, 0x11, 0x12, 0x11, 0x32, 0x19, 0x53, 0x19, 0x73, 0x21, 0x94, 0x21, 0xB4, 0x21, 0x94, 0x19, 0x53, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x03, 0x21, 0x30, 0x82, 0x19, 0x11, 0x29, 0xB4, 0x21, 0x73, 0x01, 0x19, 0x32, 0x82, 0x19, 0x51, 0x11, 0x31, 0x19, 0x51, 0x01, 0x19, 0x31, 0x83, 0x18, 0xF0, 0x29, 0x92, 0x31, 0xB2, 0x21, 0x51, 0x01, 0x19, 0x10, 0x01, 0x19, 0x11, 0x84, 0x19, 0x52, 0x21, 0x94, 0x21, 0xB4, 0x19, 0x32, 0x11, 0x12, 0x01, 0x19, 0x33, 0x85, 0x19, 0x54, 0x21, 0x75, 0x21, 0x55, 0x19, 0x53, 0x19, 0x32, 0x19, 0x10, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x21, 0x93, 0x21, 0xB4, 0x19, 0x73, 0x02, 0x19, 0x32, 0x86, 0x19, 0x53, 0x19, 0x93, 0x21, 0xB4, 0x29, 0xD4, 0x21, 0xB4, 0x21, 0xB3, 0x21, 0x52, 0x01, 0x21, 0x31, 0x80, 0x19, 0x30, 0x02, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, + 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x06, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x89, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x09, 0xB8, 0x11, 0xD9, 0x09, 0xD9, 0x09, 0xB9, 0x01, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x85, 0x19, 0xF8, 0x11, 0xB6, 0x11, 0x54, 0x09, 0x13, 0x11, 0x12, 0x19, 0x53, 0x01, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x19, 0x10, 0x21, 0x10, 0x02, 0x21, 0x31, 0x81, 0x21, 0x10, 0x19, 0x10, 0x01, 0x21, 0x10, 0x01, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x30, 0x07, 0x19, 0x10, 0x81, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x31, 0x82, 0x21, 0x11, 0x19, 0x10, 0x18, 0xF0, 0x01, 0x19, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x19, 0x10, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x01, + 0x21, 0x11, 0x82, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x01, 0x21, 0x11, 0x01, 0x21, 0x31, 0x84, 0x21, 0x11, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x03, 0x21, 0x11, 0x08, 0x21, 0x10, 0x0C, 0x21, 0x11, 0x80, 0x21, 0x10, 0x01, 0x21, 0x11, 0x82, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x02, 0x21, 0x10, 0x04, 0x21, 0x11, 0x80, 0x21, 0x10, 0x02, 0x21, 0x11, 0x81, 0x21, 0x10, 0x21, 0x11, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x07, 0x19, 0x31, 0x81, 0x21, 0x31, 0x19, 0x30, 0x1A, 0x19, 0x31, 0x80, 0x19, 0x52, 0x0A, 0x19, 0x31, 0x04, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x07, 0x19, 0x31, 0x02, 0x21, 0x31, 0x02, 0x19, 0x31, 0x80, 0x21, 0x51, 0x04, 0x19, 0x31, 0x80, 0x19, 0x51, 0x03, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x31, 0x82, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x03, 0x19, 0x31, 0x80, 0x21, 0x31, 0x0A, 0x19, 0x31, 0x80, 0x21, 0x31, 0x07, 0x19, 0x31, 0x01, 0x21, 0x31, 0x83, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x21, 0x51, 0x01, 0x19, 0x31, 0x80, 0x19, 0x51, 0x09, 0x19, 0x31, 0x80, 0x21, 0x31, 0x09, 0x19, 0x31, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x29, 0x50, 0x05, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x8F, 0x29, 0x0F, 0x29, 0x0E, 0x28, 0xED, 0x49, 0x90, 0xBC, 0xBB, 0xCC, 0xDC, 0xD4, 0xFC, 0xD4, 0xDC, 0xCC, 0xDC, 0xC4, 0x9B, 0x61, 0xF1, 0x30, 0xAD, 0x30, 0xEE, 0x31, 0x0F, 0x31, 0x2F, 0x31, 0x30, 0x02, 0x31, 0x50, 0x81, 0x31, 0x51, 0x31, 0x71, 0x07, 0x39, 0x71, 0x83, 0x39, 0x92, 0x39, 0x91, 0x39, 0x92, 0x39, + 0x71, 0x01, 0x39, 0x92, 0x02, 0x41, 0x92, 0x02, 0x39, 0x92, 0x03, 0x41, 0x92, 0x80, 0x39, 0x72, 0x02, 0x41, 0x92, 0x01, 0x41, 0x72, 0x02, 0x41, 0x92, 0x01, 0x41, 0x72, 0x06, 0x41, 0x92, 0x80, 0x41, 0x72, 0x02, 0x41, 0x92, 0x80, 0x41, 0x72, 0x0E, 0x41, 0x92, 0x07, 0x49, 0x92, 0x02, 0x49, 0x71, 0x02, 0x41, 0x71, 0x03, 0x49, 0x71, 0x01, 0x49, 0x51, 0x02, 0x49, 0x71, 0x04, 0x49, 0x72, 0x84, 0x49, 0x92, 0x51, 0x92, 0x51, 0xB2, 0x51, 0x92, 0x51, 0xB2, 0x03, 0x51, 0xB3, 0x01, 0x59, 0xD3, 0x85, 0x59, 0xB3, 0x59, 0xB2, 0x59, 0x71, 0x9A, 0xD5, 0xDC, 0xBB, 0xDC, 0x79, 0x01, 0xE4, 0x58, 0x01, 0xDC, 0x17, 0x8A, 0xDB, 0xF7, 0xDB, 0xD6, 0xDB, 0xD7, 0xD3, 0xF7, 0xC3, 0xF7, 0xAB, 0xD7, 0x9C, 0x18, 0x84, 0x79, 0x75, 0x3B, 0x5D, 0xBD, 0x55, 0xFD, 0x01, 0x4D, 0xFD, 0x88, 0x4D, 0xDD, 0x5D, 0x9D, 0x6D, 0x1B, 0x7B, 0xF8, 0x8A, 0xB5, 0xA2, 0x55, 0xB2, 0x35, 0xBA, 0x35, 0xC2, 0x14, 0x01, 0xC1, 0xF4, 0x01, 0xC1, 0xD3, 0x87, 0xC1, 0xF4, 0xBA, 0x15, 0xAA, 0x36, 0x92, 0x36, 0x82, 0x35, 0x6A, 0x15, 0x62, 0x15, 0x5A, 0x15, 0x01, 0x62, 0x15, 0x03, 0x59, 0xF4, 0x02, 0x59, 0xD4, 0x01, 0x59, 0xD3, 0x04, 0x59, 0xB3, 0x81, 0x59, 0xB2, 0x61, 0xB2, 0x04, 0x59, 0xB2, 0x02, 0x59, 0x92, 0x80, 0x59, 0xB2, 0x02, 0x59, 0x92, 0x03, 0x59, 0x91, 0x80, 0x59, 0x71, 0x01, 0x59, 0x50, 0x86, 0x51, 0x2F, 0x59, 0x4F, 0x82, 0x94, 0xA3, 0x56, 0xBC, 0x19, 0xC4, 0x3A, 0xD4, 0x7B, 0x01, 0xDC, 0xBB, 0x82, 0xDC, 0xBA, 0xDC, 0x9A, 0xDC, 0x99, 0x01, 0xDC, 0x79, 0x80, 0xDC, 0x59, + 0x01, 0xDC, 0x58, 0x02, 0xDC, 0x38, 0x02, 0xDC, 0x37, 0x83, 0xDC, 0x17, 0xD3, 0xF7, 0xDC, 0x17, 0xDB, 0xF7, 0x01, 0xD3, 0xF7, 0x01, 0xD3, 0xD7, 0x80, 0xD3, 0xD6, 0x02, 0xDB, 0xD7, 0x01, 0xD3, 0xB6, 0x03, 0xDB, 0xB6, 0x03, 0xDB, 0x96, 0x02, 0xD3, 0x76, 0x8A, 0xD3, 0x77, 0xD3, 0x97, 0xD3, 0x98, 0xD3, 0xBA, 0xC3, 0xDC, 0x93, 0x1C, 0x31, 0x38, 0x21, 0x3A, 0x11, 0x7C, 0x11, 0x7D, 0x09, 0x9D, 0x01, 0x11, 0x9D, 0x92, 0x19, 0x7C, 0x29, 0x5B, 0x39, 0x3A, 0x51, 0x79, 0x72, 0x1A, 0x7A, 0x19, 0x7A, 0x59, 0x72, 0xBA, 0x62, 0xDA, 0x4A, 0xFA, 0x3B, 0x7B, 0x2C, 0x1C, 0x1C, 0x7D, 0x0D, 0x1D, 0x05, 0x9E, 0x06, 0x3F, 0x06, 0x9F, 0x07, 0x1F, 0x0F, 0x7F, 0x01, 0x0F, 0xBF, 0x02, 0x07, 0xDF, 0x92, 0x07, 0xBF, 0x0F, 0xDF, 0x0F, 0xBF, 0x17, 0x9F, 0x1F, 0x5E, 0x36, 0xFE, 0x66, 0xBF, 0x9E, 0x3F, 0x62, 0xB2, 0x92, 0xB4, 0xA2, 0x13, 0xBA, 0x33, 0xC1, 0xF3, 0xC1, 0xB3, 0xC1, 0x93, 0xC9, 0x93, 0xC9, 0xB3, 0xC1, 0x73, 0xC1, 0x93, 0x01, 0xC1, 0xB3, 0x87, 0xB9, 0xF5, 0xB2, 0x35, 0x9A, 0x35, 0x61, 0x31, 0x51, 0x11, 0x51, 0x52, 0x49, 0x72, 0x41, 0x92, 0x01, 0x41, 0x72, 0x85, 0x39, 0x71, 0x39, 0x72, 0x39, 0x71, 0x39, 0x51, 0x39, 0x72, 0x39, 0x52, 0x01, 0x31, 0x52, 0x80, 0x31, 0x72, 0x01, 0x29, 0x32, 0x84, 0x21, 0x53, 0x21, 0x74, 0x19, 0x95, 0x19, 0xF7, 0x1A, 0x18, 0x02, 0x1A, 0x39, 0x81, 0x11, 0xF8, 0x11, 0xB7, 0x01, 0x11, 0x96, 0x82, 0x11, 0x75, 0x19, 0x74, 0x19, 0x53, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, + 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x21, 0x10, 0x07, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x31, 0x8D, 0x19, 0x32, 0x19, 0x12, 0x11, 0x12, 0x19, 0x33, 0x19, 0x53, 0x19, 0x95, 0x19, 0xB5, 0x19, 0xB6, 0x21, 0xF6, 0x21, 0xD6, 0x11, 0x53, 0x11, 0x12, 0x11, 0x11, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x31, 0x21, 0x11, 0x18, 0xF1, 0x10, 0xF2, 0x19, 0x75, 0x21, 0xF8, 0x01, 0x19, 0xF8, 0x8F, 0x09, 0x96, 0x09, 0x55, 0x01, 0x34, 0x01, 0x33, 0x09, 0x34, 0x01, 0x34, 0x09, 0x75, 0x09, 0x96, 0x11, 0xD7, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0x95, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x32, 0x02, 0x19, 0x12, 0x82, 0x21, 0x73, 0x21, 0x94, 0x19, 0x73, 0x01, 0x19, 0x52, 0x84, 0x19, 0x32, 0x19, 0x31, 0x19, 0x52, 0x21, 0x93, 0x21, 0xB3, 0x01, 0x11, 0x11, 0x82, 0x19, 0x32, 0x19, 0x12, 0x11, 0x12, 0x01, 0x21, 0x73, 0x83, 0x21, 0x52, 0x21, 0x72, 0x21, 0x51, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x84, 0x21, 0x93, 0x19, 0x73, 0x19, 0x52, 0x19, 0x32, 0x19, 0x11, 0x02, 0x19, + 0x31, 0x88, 0x19, 0x11, 0x19, 0x10, 0x21, 0x31, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x21, 0x52, 0x21, 0x73, 0x19, 0x53, 0x03, 0x19, 0x32, 0x01, 0x19, 0x52, 0x81, 0x19, 0x53, 0x19, 0x52, 0x02, 0x19, 0x31, 0x82, 0x19, 0x10, 0x21, 0x31, 0x21, 0x72, 0x01, 0x21, 0x73, 0x84, 0x21, 0x52, 0x19, 0x11, 0x10, 0xF0, 0x19, 0x31, 0x21, 0x92, 0x01, 0x21, 0x93, 0x85, 0x19, 0x32, 0x11, 0x12, 0x19, 0x32, 0x19, 0x53, 0x19, 0x73, 0x21, 0x94, 0x01, 0x21, 0xB4, 0x84, 0x21, 0x93, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x8F, 0x21, 0x31, 0x29, 0x93, 0x21, 0x94, 0x19, 0x32, 0x19, 0x52, 0x19, 0x51, 0x19, 0x31, 0x19, 0x71, 0x19, 0x51, 0x19, 0x31, 0x19, 0x10, 0x29, 0x92, 0x31, 0xB3, 0x21, 0x51, 0x21, 0x30, 0x19, 0x10, 0x01, 0x19, 0x11, 0x84, 0x21, 0x73, 0x21, 0xB4, 0x21, 0x94, 0x11, 0x32, 0x11, 0x12, 0x01, 0x19, 0x33, 0x8B, 0x19, 0x55, 0x21, 0x96, 0x29, 0xB6, 0x21, 0x74, 0x21, 0x52, 0x19, 0x31, 0x19, 0x10, 0x11, 0x10, 0x19, 0x31, 0x19, 0x72, 0x29, 0xD4, 0x19, 0x53, 0x01, 0x11, 0x12, 0x01, 0x19, 0x12, 0x80, 0x19, 0x32, 0x01, 0x19, 0x53, 0x01, 0x19, 0x52, 0x80, 0x19, 0x31, 0x03, 0x19, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, + 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x07, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x88, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x19, 0x32, 0x11, 0x53, 0x11, 0x75, 0x11, 0x96, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xD9, 0x02, 0x09, 0xB9, 0x89, 0x09, 0xB8, 0x11, 0xD8, 0x11, 0xF8, 0x19, 0xD7, 0x11, 0x54, 0x11, 0x13, 0x11, 0x12, 0x19, 0x11, 0x19, 0x32, 0x21, 0x32, 0x02, 0x21, 0x31, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x50, 0x21, 0x51, 0x21, 0x50, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x19, 0x10, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, + 0x10, 0x02, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x11, 0x03, 0x21, 0x10, 0x04, 0x21, 0x30, 0x0C, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x08, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x31, 0x1A, 0x21, 0x30, 0x80, 0x21, 0x50, 0x06, 0x21, 0x30, 0x07, 0x21, 0x31, 0x22, 0x21, 0x30, 0x01, 0x21, 0x31, 0x28, 0x21, 0x30, 0x01, 0x21, 0x50, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x07, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x28, 0xEE, 0x28, 0xAC, 0x83, 0x15, 0xC4, 0xDC, 0x01, 0xCC, 0xFC, 0x84, 0xCC, 0xDC, 0xC4, 0xDC, 0x59, 0xD1, 0x30, 0xCD, 0x30, 0xEE, 0x01, 0x31, 0x0F, 0x81, 0x31, 0x2F, 0x31, 0x30, 0x01, 0x39, 0x50, 0x08, 0x39, 0x71, 0x80, 0x39, 0x72, 0x05, 0x39, 0x71, 0x80, 0x39, 0x92, 0x07, 0x39, 0x72, 0x80, 0x41, 0x92, 0x01, 0x39, 0x72, 0x08, 0x41, 0x72, 0x80, 0x41, 0x92, 0x02, 0x41, 0x72, 0x19, 0x41, 0x92, 0x03, 0x49, 0x92, 0x80, 0x49, 0x72, 0x03, 0x49, 0x92, 0x80, 0x41, 0x71, 0x01, 0x41, 0x72, 0x81, 0x41, 0x71, 0x41, 0x92, 0x01, 0x41, 0x71, 0x80, 0x49, 0x71, 0x02, 0x49, 0x72, 0x80, 0x49, 0x92, 0x01, 0x49, 0x72, 0x81, 0x49, 0x92, 0x49, 0x72, 0x03, 0x49, 0x92, 0x80, 0x49, 0xB2, 0x06, 0x51, 0xB3, 0x86, 0x51, 0x92, 0x59, 0xB2, 0x59, 0x50, 0xC4, 0x19, + 0xE4, 0xBA, 0xE4, 0x79, 0xDC, 0x38, 0x01, 0xDC, 0x17, 0x01, 0xDB, 0xF7, 0x88, 0xDB, 0xD6, 0xDB, 0xD7, 0xD3, 0xD7, 0xC3, 0xD7, 0xAB, 0xF7, 0x94, 0x18, 0x7C, 0x79, 0x6D, 0x3B, 0x5D, 0xBD, 0x02, 0x4D, 0xFD, 0x89, 0x55, 0xDD, 0x65, 0x9D, 0x74, 0xBB, 0x7B, 0x77, 0x92, 0x96, 0xAA, 0x35, 0xB2, 0x35, 0xBA, 0x14, 0xC1, 0xF4, 0xC1, 0xF3, 0x01, 0xC1, 0xD3, 0x87, 0xC1, 0xD4, 0xB9, 0xF4, 0xB1, 0xF5, 0xA2, 0x15, 0x89, 0xF5, 0x79, 0xD5, 0x69, 0xD4, 0x61, 0xF5, 0x01, 0x59, 0xF5, 0x82, 0x5A, 0x15, 0x59, 0xF4, 0x59, 0xF5, 0x02, 0x59, 0xF4, 0x04, 0x59, 0xD4, 0x82, 0x59, 0xB3, 0x59, 0xD4, 0x59, 0xD3, 0x0B, 0x59, 0xB3, 0x01, 0x51, 0xB2, 0x01, 0x59, 0x93, 0x01, 0x59, 0xB2, 0x04, 0x59, 0x92, 0x8C, 0x59, 0x91, 0x59, 0x71, 0x59, 0x70, 0x59, 0x50, 0x69, 0xB1, 0x71, 0xF2, 0x79, 0xF1, 0x92, 0xD5, 0xB3, 0xB8, 0xD4, 0x9B, 0xE4, 0xFC, 0xDC, 0xBB, 0xDC, 0x9A, 0x01, 0xDC, 0x7A, 0x80, 0xDC, 0x79, 0x01, 0xDC, 0x59, 0x80, 0xDC, 0x38, 0x02, 0xDC, 0x18, 0x01, 0xDC, 0x17, 0x02, 0xDB, 0xF7, 0x80, 0xD3, 0xD7, 0x02, 0xD3, 0xD6, 0x80, 0xDB, 0xD6, 0x04, 0xDB, 0xB6, 0x06, 0xDB, 0x96, 0x02, 0xD3, 0x76, 0x9F, 0xD3, 0x77, 0xD3, 0x97, 0xD3, 0x98, 0xD3, 0x99, 0xCB, 0xBB, 0xAB, 0x9D, 0x41, 0x58, 0x21, 0x3A, 0x19, 0x5B, 0x11, 0x9C, 0x09, 0x9D, 0x11, 0xBD, 0x11, 0x9D, 0x19, 0x9C, 0x21, 0x7C, 0x31, 0x5A, 0x41, 0x39, 0x61, 0xDA, 0x72, 0x3A, 0x7A, 0x7A, 0x72, 0x9A, 0x62, 0xDA, 0x4A, 0xFA, 0x3B, 0x7B, 0x2C, 0x1C, 0x1C, 0x7C, 0x15, 0x1D, 0x05, 0x7E, 0x06, 0x3F, 0x06, 0x9F, + 0x07, 0x1F, 0x0F, 0x7F, 0x01, 0x0F, 0xBF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x8C, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x5F, 0x3F, 0x1F, 0x5E, 0xBF, 0x9E, 0x9F, 0x62, 0xF3, 0x82, 0x93, 0xA2, 0x33, 0xB2, 0x13, 0xB9, 0xD3, 0xB9, 0x92, 0xC1, 0x93, 0x01, 0xC9, 0xB3, 0x8B, 0xC1, 0x73, 0xC9, 0x93, 0xC1, 0xB3, 0xC1, 0xD4, 0xB9, 0xD4, 0xB2, 0x15, 0x9A, 0x15, 0x69, 0x52, 0x51, 0x11, 0x51, 0x72, 0x49, 0x92, 0x41, 0x92, 0x02, 0x41, 0x72, 0x80, 0x39, 0x71, 0x01, 0x39, 0x51, 0x81, 0x39, 0x52, 0x39, 0x51, 0x02, 0x31, 0x51, 0x80, 0x29, 0x51, 0x01, 0x29, 0x52, 0x80, 0x21, 0x53, 0x01, 0x19, 0x74, 0x81, 0x19, 0x95, 0x19, 0xB6, 0x01, 0x11, 0xB6, 0x88, 0x11, 0x95, 0x11, 0x75, 0x19, 0x75, 0x11, 0x54, 0x19, 0x74, 0x19, 0x53, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x89, 0x19, 0x32, 0x19, 0x12, 0x19, 0x33, 0x19, 0x53, 0x19, 0x94, 0x19, 0xB5, 0x21, 0xD6, 0x21, 0xF6, 0x21, 0xD6, 0x11, 0x53, 0x01, 0x11, 0x12, 0x81, 0x21, 0x32, 0x21, 0x51, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x10, 0x21, 0x11, 0x18, 0xF1, 0x10, 0xF2, 0x11, 0x34, 0x19, 0xD7, 0x1A, 0x18, + 0x1A, 0x19, 0x19, 0xF8, 0x09, 0x96, 0x01, 0x54, 0x02, 0x01, 0x34, 0x87, 0x09, 0x75, 0x11, 0xD7, 0x1A, 0x18, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x74, 0x19, 0x53, 0x19, 0x52, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x31, 0x21, 0x32, 0x01, 0x19, 0x12, 0x01, 0x11, 0x12, 0x80, 0x11, 0x32, 0x01, 0x19, 0x52, 0x01, 0x19, 0x32, 0x83, 0x19, 0x11, 0x19, 0x31, 0x21, 0x73, 0x29, 0xB3, 0x01, 0x11, 0x11, 0x82, 0x10, 0xF1, 0x11, 0x12, 0x19, 0x53, 0x01, 0x21, 0x73, 0x81, 0x21, 0x72, 0x21, 0x52, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x82, 0x19, 0x31, 0x21, 0x72, 0x19, 0x52, 0x01, 0x19, 0x11, 0x03, 0x19, 0x31, 0x81, 0x19, 0x30, 0x19, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x31, 0x21, 0x72, 0x21, 0x73, 0x19, 0x52, 0x19, 0x32, 0x02, 0x19, 0x11, 0x80, 0x19, 0x32, 0x01, 0x19, 0x72, 0x86, 0x21, 0x73, 0x19, 0x32, 0x21, 0x51, 0x19, 0x31, 0x19, 0x10, 0x21, 0x31, 0x21, 0x72, 0x01, 0x21, 0x73, 0x84, 0x21, 0x52, 0x19, 0x11, 0x10, 0xF0, 0x21, 0x51, 0x21, 0x92, 0x01, 0x21, 0x93, 0x80, 0x19, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x80, 0x21, 0x73, 0x01, 0x21, 0x94, 0x80, 0x21, 0x73, 0x01, 0x21, 0x52, 0x84, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x93, 0x29, 0x93, 0x01, 0x19, 0x32, 0x81, 0x19, 0x51, 0x19, 0x30, 0x01, 0x19, 0x51, 0x83, 0x19, 0x30, 0x19, 0x10, 0x29, 0x72, 0x31, 0xB3, 0x01, + 0x21, 0x31, 0x8A, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x52, 0x21, 0x94, 0x21, 0x93, 0x11, 0x12, 0x19, 0x12, 0x19, 0x32, 0x19, 0x33, 0x19, 0x54, 0x01, 0x29, 0xB6, 0x81, 0x21, 0x74, 0x21, 0x52, 0x01, 0x19, 0x30, 0x82, 0x19, 0x10, 0x19, 0x51, 0x19, 0x52, 0x01, 0x21, 0x93, 0x87, 0x11, 0x32, 0x11, 0x12, 0x19, 0x32, 0x19, 0x12, 0x11, 0x32, 0x19, 0x32, 0x19, 0x52, 0x19, 0x32, 0x02, 0x19, 0x31, 0x01, 0x19, 0x10, 0x87, 0x19, 0x30, 0x21, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x84, 0x29, 0x50, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x03, 0x29, 0x10, 0x02, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, + 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x87, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x75, 0x11, 0xD7, 0x11, 0xF8, 0x09, 0xD8, 0x02, 0x09, 0xD9, 0x88, 0x09, 0xB9, 0x09, 0xD8, 0x09, 0xB8, 0x11, 0xD7, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x10, 0xF1, 0x01, 0x19, 0x11, 0x02, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x09, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x18, 0xEF, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x80, 0x21, 0x51, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x07, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, + 0x30, 0x01, 0x21, 0x10, 0x23, 0x21, 0x30, 0x80, 0x21, 0x50, 0x0F, 0x21, 0x30, 0x80, 0x29, 0x50, 0x0E, 0x21, 0x30, 0x80, 0x21, 0x50, 0x11, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x50, 0x19, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x50, 0x08, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x8D, 0x29, 0x0F, 0x29, 0x0E, 0x28, 0xEE, 0x39, 0x2E, 0xCD, 0x3D, 0xCC, 0xFD, 0xCC, 0xFC, 0xC4, 0xBC, 0xA3, 0xF9, 0x49, 0x6F, 0x30, 0xAD, 0x30, 0xEE, 0x30, 0xEF, 0x31, 0x0F, 0x01, 0x31, 0x2F, 0x80, 0x31, 0x30, 0x03, 0x39, 0x50, 0x01, 0x39, 0x71, 0x80, 0x39, 0x51, 0x0B, 0x39, 0x71, 0x80, 0x39, 0x72, 0x01, 0x39, 0x71, 0x82, 0x39, 0x72, 0x41, 0x92, 0x41, 0x72, 0x01, 0x39, 0x72, 0x80, 0x39, 0x71, 0x05, 0x39, 0x72, 0x02, 0x41, 0x72, 0x01, 0x39, 0x72, 0x05, 0x41, 0x72, 0x83, 0x39, 0x72, 0x41, 0x92, 0x41, 0x72, 0x41, 0x92, 0x01, 0x41, 0x72, 0x80, 0x41, 0x92, 0x01, 0x41, 0x72, 0x0B, 0x41, 0x92, 0x80, 0x41, 0x72, 0x04, 0x41, 0x92, 0x80, 0x49, 0x92, 0x01, 0x41, 0x92, 0x01, 0x49, 0x92, 0x84, 0x41, 0x92, 0x41, 0x72, 0x41, 0x71, 0x49, 0x92, 0x41, 0x72, 0x03, 0x41, 0x92, 0x81, 0x49, 0x92, 0x49, 0x72, 0x0A, 0x49, 0x92, 0x80, 0x49, 0xB2, 0x01, 0x49, 0xB3, 0x01, 0x51, 0xB3, 0x01, 0x49, 0x92, 0x88, 0x51, 0x92, 0x59, 0x92, 0x69, 0xB1, 0xDC, 0xDC, 0xE4, 0x9A, 0xE4, 0x59, 0xDC, 0x38, 0xE4, 0x38, 0xDC, 0x17, 0x01, 0xE3, 0xF7, 0x89, 0xDB, + 0xD6, 0xD3, 0xB6, 0xCB, 0xB6, 0xBB, 0xB7, 0xA3, 0xD7, 0x8C, 0x18, 0x74, 0x79, 0x6D, 0x3C, 0x5D, 0xBD, 0x55, 0xFD, 0x01, 0x4D, 0xDD, 0x8A, 0x55, 0x9C, 0x6D, 0x5C, 0x7C, 0x5A, 0x83, 0x16, 0x9A, 0x55, 0xAA, 0x15, 0xBA, 0x15, 0xB9, 0xF4, 0xC1, 0xF3, 0xC1, 0xD3, 0xC1, 0xF3, 0x01, 0xC1, 0xF4, 0x87, 0xB9, 0xF5, 0xAA, 0x15, 0x99, 0xF5, 0x81, 0xD4, 0x71, 0xD4, 0x69, 0xD4, 0x61, 0xD5, 0x59, 0xD4, 0x06, 0x59, 0xF4, 0x08, 0x59, 0xD4, 0x04, 0x59, 0xB3, 0x80, 0x59, 0xD3, 0x03, 0x59, 0xB3, 0x01, 0x59, 0xD3, 0x08, 0x59, 0xB3, 0x01, 0x59, 0xB2, 0x82, 0x59, 0x92, 0x59, 0xB2, 0x59, 0x92, 0x01, 0x59, 0x91, 0x8C, 0x61, 0x91, 0x59, 0x91, 0x59, 0x70, 0x59, 0x50, 0x59, 0x4F, 0x8A, 0x94, 0xAB, 0x77, 0xC4, 0x1A, 0xCC, 0x3A, 0xD4, 0x7A, 0xDC, 0x7A, 0xDC, 0x59, 0xDC, 0x39, 0x01, 0xDC, 0x38, 0x03, 0xDC, 0x18, 0x01, 0xDB, 0xF7, 0x87, 0xD3, 0xF7, 0xDB, 0xF7, 0xDB, 0xD7, 0xD3, 0xD7, 0xDB, 0xD7, 0xDB, 0xB6, 0xD3, 0xB6, 0xD3, 0x96, 0x03, 0xDB, 0x96, 0x80, 0xDB, 0xB6, 0x03, 0xDB, 0x96, 0x02, 0xD3, 0x76, 0x01, 0xDB, 0x97, 0x87, 0xD3, 0x98, 0xD3, 0x99, 0xCB, 0xBA, 0xBB, 0xDD, 0x51, 0xB9, 0x29, 0x39, 0x19, 0x5B, 0x11, 0x7C, 0x03, 0x11, 0x9D, 0x91, 0x21, 0x7C, 0x29, 0x5B, 0x39, 0x19, 0x59, 0xBA, 0x72, 0x5B, 0x7A, 0x7A, 0x72, 0xBA, 0x62, 0xDA, 0x4A, 0xB9, 0x3B, 0x1A, 0x2B, 0xDB, 0x1C, 0x9D, 0x0C, 0xFD, 0x05, 0x5E, 0x06, 0x1F, 0x06, 0x9F, 0x0F, 0x1F, 0x0F, 0x7F, 0x01, 0x0F, 0xBF, 0x01, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x8B, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x5F, + 0x37, 0x1F, 0x5E, 0xBE, 0x9E, 0xFF, 0x63, 0x95, 0x72, 0x52, 0x9A, 0x12, 0xAA, 0x13, 0xB9, 0xD3, 0xC1, 0x93, 0x01, 0xC9, 0xB3, 0x8A, 0xC9, 0x93, 0xC1, 0x73, 0xC9, 0x93, 0xC1, 0x93, 0xC1, 0xB4, 0xB9, 0xD4, 0xB2, 0x15, 0x9A, 0x15, 0x69, 0x32, 0x59, 0x32, 0x51, 0x52, 0x01, 0x49, 0x92, 0x02, 0x41, 0x72, 0x80, 0x39, 0x72, 0x03, 0x39, 0x51, 0x83, 0x31, 0x51, 0x31, 0x31, 0x31, 0x51, 0x31, 0x31, 0x01, 0x29, 0x31, 0x01, 0x21, 0x32, 0x84, 0x19, 0x32, 0x19, 0x53, 0x11, 0x33, 0x19, 0x33, 0x11, 0x33, 0x01, 0x19, 0x53, 0x80, 0x19, 0x33, 0x01, 0x19, 0x32, 0x02, 0x19, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x8A, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x33, 0x11, 0x53, 0x19, 0x74, 0x19, 0xD5, 0x21, 0xF6, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x53, 0x01, 0x11, 0x12, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x94, 0x21, 0x11, 0x18, 0xF1, 0x19, 0x12, 0x11, 0x33, 0x19, 0x96, 0x19, 0xF8, 0x1A, 0x18, 0x1A, 0x39, 0x1A, 0x18, 0x09, 0x76, 0x01, 0x55, 0x09, 0x75, 0x09, 0x96, 0x11, 0xD7, 0x11, 0xF8, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x95, 0x11, + 0x54, 0x19, 0x53, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x72, 0x21, 0x72, 0x01, 0x21, 0x52, 0x86, 0x21, 0x73, 0x29, 0xD4, 0x29, 0xB5, 0x21, 0x94, 0x21, 0x93, 0x19, 0x32, 0x19, 0x31, 0x02, 0x19, 0x11, 0x8A, 0x21, 0x93, 0x29, 0xD4, 0x19, 0x32, 0x21, 0x73, 0x29, 0xD4, 0x21, 0xB4, 0x21, 0x73, 0x21, 0x72, 0x21, 0x93, 0x21, 0x52, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x31, 0x21, 0x51, 0x21, 0x72, 0x19, 0x52, 0x05, 0x19, 0x31, 0x81, 0x19, 0x30, 0x19, 0x10, 0x01, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x31, 0x21, 0x72, 0x21, 0x93, 0x19, 0x52, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x52, 0x8F, 0x21, 0x73, 0x21, 0x52, 0x21, 0x72, 0x19, 0x30, 0x19, 0x10, 0x19, 0x31, 0x21, 0x72, 0x21, 0x73, 0x21, 0x52, 0x19, 0x52, 0x19, 0x10, 0x18, 0xF0, 0x19, 0x31, 0x21, 0x72, 0x21, 0x93, 0x21, 0x73, 0x01, 0x19, 0x12, 0x80, 0x19, 0x11, 0x01, 0x19, 0x32, 0x86, 0x21, 0x73, 0x21, 0xB3, 0x21, 0x93, 0x21, 0x73, 0x19, 0x52, 0x21, 0x52, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x30, 0x21, 0x31, 0x21, 0x93, 0x21, 0x73, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x30, 0x8D, 0x19, 0x50, 0x21, 0x51, 0x19, 0x30, 0x19, 0x10, 0x29, 0x51, 0x29, 0x72, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x21, 0x93, 0x19, 0x72, 0x01, 0x19, 0x11, 0x87, 0x19, 0x12, 0x19, 0x33, + 0x21, 0x54, 0x21, 0x75, 0x29, 0xB6, 0x21, 0x74, 0x21, 0x72, 0x19, 0x30, 0x01, 0x19, 0x10, 0x81, 0x21, 0x51, 0x19, 0x52, 0x01, 0x21, 0x93, 0x80, 0x21, 0xB4, 0x01, 0x21, 0x93, 0x80, 0x21, 0x73, 0x01, 0x21, 0x93, 0x82, 0x21, 0xB4, 0x21, 0x93, 0x21, 0x73, 0x01, 0x21, 0x51, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x88, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x09, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x19, 0x11, 0x19, 0x12, 0x01, 0x11, 0x33, 0x82, 0x11, + 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x02, 0x09, 0xD8, 0x81, 0x01, 0xB9, 0x09, 0xD9, 0x01, 0x09, 0xD8, 0x8B, 0x11, 0xF8, 0x19, 0xD7, 0x11, 0x55, 0x11, 0x33, 0x10, 0xF2, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x19, 0x10, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x19, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x50, 0x01, 0x29, 0x51, 0x81, 0x21, 0x31, 0x29, 0x51, 0x03, 0x21, 0x30, 0x83, 0x29, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x07, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x06, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x1B, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0B, 0x21, 0x30, 0x80, 0x29, 0x50, 0x02, 0x21, 0x30, 0x03, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x0A, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x08, 0x21, 0x30, 0x06, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x30, 0x81, + 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x03, 0x29, 0x50, 0x05, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x89, 0x29, 0x0E, 0x31, 0x0E, 0x7B, 0x16, 0xD5, 0x7F, 0xCD, 0x3D, 0xC4, 0xFD, 0x9B, 0xB8, 0x41, 0x0E, 0x30, 0xCD, 0x30, 0xEE, 0x01, 0x31, 0x0F, 0x01, 0x31, 0x2F, 0x81, 0x31, 0x30, 0x39, 0x30, 0x04, 0x39, 0x50, 0x02, 0x39, 0x51, 0x80, 0x31, 0x51, 0x13, 0x39, 0x71, 0x80, 0x39, 0x51, 0x04, 0x39, 0x72, 0x01, 0x41, 0x72, 0x82, 0x39, 0x71, 0x39, 0x72, 0x39, 0x52, 0x05, 0x39, 0x72, 0x07, 0x41, 0x72, 0x80, 0x39, 0x72, 0x01, 0x41, 0x72, 0x80, 0x39, 0x72, 0x03, 0x41, 0x72, 0x80, 0x41, 0x92, 0x05, 0x41, 0x72, 0x81, 0x41, 0x71, 0x41, 0x72, 0x01, 0x41, 0x92, 0x01, 0x41, 0x72, 0x83, 0x41, 0x71, 0x41, 0x72, 0x41, 0x71, 0x41, 0x92, 0x01, 0x41, 0x72, 0x01, 0x41, 0x92, 0x02, 0x41, 0x72, 0x01, 0x41, 0x92, 0x82, 0x41, 0x72, 0x49, 0x92, 0x49, 0x72, 0x08, 0x49, 0x92, 0x80, 0x49, 0xB2, 0x01, 0x49, 0xB3, 0x80, 0x49, 0xB2, 0x01, 0x49, 0x92, 0x87, 0x51, 0x91, 0x59, 0x71, 0x8A, 0x94, 0xE4, 0xDB, 0xE4, 0x79, 0xDC, 0x38, 0xDC, 0x17, 0xE4, 0x18, 0x01, 0xE3, 0xF7, 0xA1, 0xDB, 0xD7, 0xDB, 0xB6, 0xD3, 0xB6, 0xC3, 0x96, 0xB3, 0xB7, 0x9B, 0xB7, 0x8C, 0x18, 0x74, 0x9A, 0x65, 0x3C, 0x5D, 0xBD, 0x55, 0xFD, + 0x4D, 0xDD, 0x4D, 0xBD, 0x5D, 0x7C, 0x6D, 0x1C, 0x7B, 0xD9, 0x8A, 0x96, 0xA2, 0x35, 0xB1, 0xF5, 0xB9, 0xF4, 0xC1, 0xF4, 0xB9, 0xD3, 0xC1, 0xD3, 0xC1, 0xF3, 0xC2, 0x14, 0xBA, 0x14, 0xB2, 0x15, 0xA1, 0xF5, 0x89, 0xB4, 0x79, 0xB4, 0x69, 0xB4, 0x69, 0xD4, 0x61, 0xD4, 0x61, 0xF4, 0x03, 0x59, 0xF4, 0x81, 0x59, 0xD4, 0x59, 0xF4, 0x07, 0x59, 0xD4, 0x01, 0x59, 0xB3, 0x80, 0x59, 0xD4, 0x05, 0x59, 0xB3, 0x80, 0x59, 0xD3, 0x02, 0x51, 0xB3, 0x81, 0x51, 0xD3, 0x51, 0xB3, 0x0A, 0x59, 0xB3, 0x80, 0x59, 0x92, 0x01, 0x59, 0xB2, 0x02, 0x59, 0x92, 0x80, 0x59, 0xB2, 0x01, 0x59, 0x92, 0x80, 0x61, 0x91, 0x01, 0x61, 0x70, 0x83, 0x69, 0xB1, 0x79, 0xF1, 0x82, 0x32, 0xB3, 0x77, 0x01, 0xD4, 0x5A, 0x81, 0xD4, 0x59, 0xD4, 0x39, 0x02, 0xD4, 0x18, 0x81, 0xDB, 0xF8, 0xDC, 0x18, 0x02, 0xDB, 0xF7, 0x01, 0xDB, 0xD7, 0x02, 0xDB, 0xB6, 0x06, 0xDB, 0x96, 0x02, 0xD3, 0x96, 0x02, 0xD3, 0x76, 0x01, 0xD3, 0x77, 0x86, 0xD3, 0x99, 0xCB, 0xBA, 0xBB, 0xDD, 0x6A, 0x19, 0x31, 0x38, 0x21, 0x7B, 0x11, 0x9C, 0x03, 0x11, 0x9D, 0x93, 0x19, 0x7C, 0x21, 0x5B, 0x31, 0x1A, 0x49, 0x9A, 0x72, 0x7B, 0x7A, 0x9B, 0x72, 0xBB, 0x62, 0xBA, 0x4A, 0x79, 0x3A, 0xFA, 0x2B, 0xFC, 0x1C, 0x9D, 0x14, 0xDD, 0x05, 0x5E, 0x0E, 0x3F, 0x06, 0xBF, 0x0F, 0x1F, 0x0F, 0x5F, 0x0F, 0x9F, 0x0F, 0xBF, 0x01, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x8B, 0x0F, 0xBF, 0x17, 0x9F, 0x27, 0x7F, 0x37, 0x1F, 0x56, 0xDF, 0x8E, 0xBF, 0x74, 0x37, 0x6A, 0x31, 0x9A, 0x53, 0xA1, 0xF2, 0xB9, 0xF3, 0xC1, 0xB3, 0x01, 0xC9, 0xB3, + 0x02, 0xC9, 0x93, 0x8B, 0xC1, 0xB3, 0xC1, 0xD4, 0xB9, 0xD4, 0xB2, 0x35, 0x9A, 0x15, 0x69, 0x52, 0x51, 0x11, 0x51, 0x52, 0x49, 0x72, 0x49, 0x92, 0x41, 0x52, 0x41, 0x72, 0x01, 0x39, 0x71, 0x01, 0x39, 0x51, 0x81, 0x31, 0x31, 0x39, 0x51, 0x01, 0x31, 0x31, 0x81, 0x31, 0x51, 0x31, 0x30, 0x02, 0x29, 0x31, 0x02, 0x21, 0x31, 0x82, 0x21, 0x32, 0x19, 0x32, 0x19, 0x12, 0x02, 0x19, 0x32, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x07, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x8D, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x19, 0x94, 0x19, 0xB5, 0x21, 0xF6, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x13, 0x11, 0x74, 0x19, 0xB6, 0x02, 0x1A, 0x18, 0x01, 0x11, 0xD7, 0x81, 0x11, 0xB6, 0x11, 0xB7, 0x01, 0x11, 0xF8, 0x87, 0x19, 0xF7, 0x11, 0xB6, 0x19, 0x95, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x31, 0x21, 0x51, 0x01, 0x21, 0x52, 0x86, 0x19, 0x32, 0x21, 0x73, 0x29, + 0xB4, 0x21, 0x94, 0x21, 0x73, 0x21, 0x72, 0x19, 0x31, 0x03, 0x19, 0x11, 0x85, 0x21, 0x72, 0x29, 0xB4, 0x21, 0x72, 0x21, 0x73, 0x29, 0xB4, 0x21, 0x93, 0x01, 0x19, 0x52, 0x84, 0x21, 0x72, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x72, 0x03, 0x19, 0x31, 0x81, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x50, 0x86, 0x21, 0x10, 0x19, 0x10, 0x21, 0x52, 0x29, 0x93, 0x21, 0x52, 0x19, 0x31, 0x21, 0x52, 0x02, 0x19, 0x31, 0x85, 0x19, 0x52, 0x21, 0x52, 0x21, 0x73, 0x21, 0x52, 0x21, 0x51, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x72, 0x01, 0x21, 0x52, 0x82, 0x19, 0x10, 0x18, 0xF0, 0x21, 0x31, 0x02, 0x21, 0x72, 0x82, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x32, 0x86, 0x19, 0x52, 0x21, 0x73, 0x21, 0xB3, 0x21, 0x72, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x72, 0x21, 0x73, 0x01, 0x19, 0x31, 0x8F, 0x19, 0x50, 0x19, 0x30, 0x19, 0x50, 0x21, 0x50, 0x19, 0x10, 0x19, 0x0F, 0x29, 0x51, 0x29, 0x72, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x21, 0x52, 0x19, 0x52, 0x02, 0x19, 0x31, 0x85, 0x19, 0x12, 0x19, 0x33, 0x21, 0x54, 0x21, 0x74, 0x21, 0x73, 0x21, 0x72, 0x02, 0x19, 0x30, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x83, 0x29, 0xB3, 0x29, 0xD4, 0x21, 0x93, 0x21, 0x72, 0x02, 0x21, 0x93, 0x01, 0x21, 0x72, + 0x80, 0x21, 0x52, 0x01, 0x21, 0x31, 0x80, 0x21, 0x51, 0x02, 0x21, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x87, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x88, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x88, 0x19, 0x11, 0x19, 0x12, 0x11, + 0x32, 0x11, 0x54, 0x11, 0x75, 0x09, 0x96, 0x09, 0xD7, 0x09, 0xD8, 0x09, 0xF8, 0x01, 0x01, 0xD8, 0x87, 0x01, 0xD9, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xF8, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x13, 0x11, 0x12, 0x01, 0x19, 0x11, 0x81, 0x21, 0x52, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x19, 0x0F, 0x18, 0xEF, 0x01, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x51, 0x29, 0x30, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x29, 0x30, 0x0A, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x29, + 0x30, 0x80, 0x21, 0x2F, 0x07, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x50, 0x05, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x08, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x09, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x08, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x87, 0x31, 0x0E, 0x39, 0x2F, 0xAC, 0x7B, 0xCD, 0x7F, 0xCD, 0x3E, 0x93, 0x98, 0x41, 0x4F, 0x30, 0xED, 0x01, 0x30, 0xEE, 0x02, 0x31, 0x0F, 0x01, 0x31, 0x30, 0x01, 0x39, 0x30, 0x80, 0x31, 0x30, 0x03, 0x31, 0x50, 0x81, 0x39, 0x51, 0x31, 0x51, 0x01, 0x39, 0x51, 0x80, 0x31, 0x50, 0x06, 0x39, 0x51, 0x80, 0x39, 0x71, 0x01, 0x39, 0x51, 0x80, 0x39, 0x71, 0x04, 0x39, 0x51, 0x80, 0x39, 0x71, 0x02, 0x39, 0x51, 0x80, 0x39, 0x71, 0x01, 0x39, 0x51, 0x80, 0x39, 0x71, 0x01, 0x39, 0x51, 0x01, 0x39, 0x72, 0x02, 0x39, 0x52, 0x81, 0x39, 0x51, 0x39, 0x52, 0x01, 0x39, 0x72, 0x82, 0x39, 0x52, 0x39, 0x72, 0x39, 0x52, 0x02, 0x39, 0x71, 0x02, 0x39, 0x72, 0x81, 0x39, 0x51, 0x39, 0x71, 0x01, 0x39, 0x72, 0x04, 0x39, + 0x71, 0x80, 0x41, 0x72, 0x05, 0x39, 0x71, 0x0B, 0x41, 0x71, 0x05, 0x41, 0x72, 0x82, 0x41, 0x92, 0x41, 0x72, 0x49, 0x92, 0x01, 0x49, 0x72, 0x80, 0x41, 0x72, 0x07, 0x49, 0x92, 0x01, 0x49, 0xB2, 0x86, 0x49, 0x92, 0x51, 0x91, 0x59, 0x50, 0xA3, 0x36, 0xE4, 0xBB, 0xE4, 0x79, 0xDC, 0x18, 0x01, 0xDB, 0xF7, 0x81, 0xDB, 0xD7, 0xDB, 0xB6, 0x01, 0xDB, 0x96, 0x92, 0xD3, 0x96, 0xC3, 0x76, 0xB3, 0x96, 0x9B, 0xB7, 0x83, 0xF8, 0x74, 0x9A, 0x65, 0x3C, 0x5D, 0xBD, 0x55, 0xFD, 0x55, 0xDD, 0x55, 0x9D, 0x65, 0x5C, 0x74, 0xBB, 0x7B, 0x17, 0x92, 0x55, 0xAA, 0x15, 0xB1, 0xF4, 0xB9, 0xF4, 0xC1, 0xF4, 0x01, 0xC1, 0xD3, 0x89, 0xC1, 0xF4, 0xC2, 0x14, 0xBA, 0x15, 0xAA, 0x15, 0x91, 0xD4, 0x79, 0x94, 0x71, 0x94, 0x69, 0xB4, 0x61, 0xB4, 0x61, 0xD4, 0x04, 0x59, 0xD4, 0x80, 0x59, 0xF4, 0x04, 0x59, 0xD4, 0x01, 0x51, 0xD4, 0x11, 0x51, 0xB3, 0x11, 0x59, 0xB3, 0x01, 0x59, 0x92, 0x02, 0x61, 0x92, 0x01, 0x61, 0x91, 0x01, 0x61, 0x50, 0x85, 0x7A, 0x12, 0xA3, 0x36, 0xBB, 0xB8, 0xC3, 0xF9, 0xCB, 0xF9, 0xCB, 0xF8, 0x01, 0xD3, 0xF8, 0x01, 0xD3, 0xF7, 0x80, 0xD3, 0xD7, 0x01, 0xDB, 0xD7, 0x80, 0xDB, 0xD6, 0x01, 0xDB, 0xB6, 0x03, 0xDB, 0x96, 0x01, 0xDB, 0x76, 0x80, 0xD3, 0x76, 0x02, 0xDB, 0x96, 0x01, 0xD3, 0x76, 0x01, 0xD3, 0x56, 0x88, 0xD3, 0x77, 0xD3, 0x98, 0xD3, 0x99, 0xC3, 0xDC, 0x82, 0xBB, 0x41, 0x78, 0x29, 0x7A, 0x19, 0x9C, 0x11, 0x9C, 0x01, 0x11, 0xBD, 0x96, 0x11, 0x9D, 0x19, 0x9D, 0x21, 0x7C, 0x29, 0x3A, 0x31, 0x19, 0x72, 0x7C, 0x7A, 0xBB, 0x72, 0xBA, 0x62, + 0x9A, 0x4A, 0x79, 0x3A, 0xFA, 0x2B, 0xFC, 0x24, 0x9D, 0x14, 0xFD, 0x0D, 0x5E, 0x0E, 0x3F, 0x0E, 0xBF, 0x0F, 0x1F, 0x07, 0x3F, 0x0F, 0x9F, 0x0F, 0xBF, 0x0F, 0xDF, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x8A, 0x07, 0x9F, 0x17, 0x9F, 0x27, 0x7F, 0x2F, 0x1F, 0x4E, 0xBE, 0x7E, 0xBF, 0x74, 0x98, 0x62, 0x31, 0x92, 0x53, 0xA1, 0xD2, 0xB9, 0xF3, 0x01, 0xC1, 0xB3, 0x81, 0xC1, 0x93, 0xC9, 0x93, 0x01, 0xC9, 0x94, 0x8A, 0xC1, 0x93, 0xC1, 0xD4, 0xB9, 0xD4, 0xB2, 0x35, 0x9A, 0x15, 0x69, 0x31, 0x51, 0x11, 0x51, 0x52, 0x49, 0x72, 0x41, 0x72, 0x41, 0x52, 0x02, 0x39, 0x72, 0x05, 0x39, 0x51, 0x01, 0x31, 0x51, 0x81, 0x31, 0x30, 0x31, 0x31, 0x02, 0x29, 0x31, 0x04, 0x21, 0x31, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x31, 0x8A, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x19, 0x74, 0x21, 0xB6, 0x2A, 0x17, 0x22, 0x17, 0x19, 0xB5, 0x11, 0x53, 0x01, 0x11, 0x32, 0x86, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, + 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x89, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xF7, 0x19, 0xF8, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0xD7, 0x01, 0x19, 0xF7, 0x87, 0x11, 0xB6, 0x11, 0x95, 0x19, 0x74, 0x19, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x04, 0x19, 0x11, 0x02, 0x19, 0x31, 0x01, 0x19, 0x11, 0x82, 0x21, 0x31, 0x21, 0x72, 0x21, 0x52, 0x02, 0x19, 0x11, 0x85, 0x19, 0x31, 0x21, 0x52, 0x21, 0x72, 0x21, 0x51, 0x19, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x51, 0x21, 0x71, 0x19, 0x30, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x21, 0x51, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x21, 0x52, 0x82, 0x19, 0x31, 0x21, 0x31, 0x19, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x52, 0x81, 0x21, 0x31, 0x21, 0x51, 0x02, 0x21, 0x10, 0x84, 0x19, 0x10, 0x21, 0x31, 0x21, 0x52, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x10, 0x84, 0x21, 0x31, 0x21, 0x51, 0x21, 0x52, 0x21, 0x31, 0x19, 0x11, 0x03, 0x19, 0x31, 0x01, 0x21, 0x72, 0x01, 0x19, 0x31, 0x03, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x52, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x30, 0x81, 0x21, 0x50, 0x21, 0x30, 0x01, 0x19, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x51, 0x02, 0x21, 0x10, 0x80, 0x19, 0x10, 0x01, 0x21, 0x31, 0x83, 0x21, 0x52, + 0x19, 0x51, 0x21, 0x52, 0x19, 0x31, 0x01, 0x19, 0x11, 0x89, 0x19, 0x12, 0x19, 0x32, 0x21, 0x53, 0x21, 0x52, 0x21, 0x51, 0x21, 0x30, 0x19, 0x30, 0x21, 0x30, 0x19, 0x30, 0x21, 0x51, 0x01, 0x19, 0x31, 0x01, 0x21, 0x52, 0x02, 0x19, 0x31, 0x01, 0x19, 0x52, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8A, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x06, 0x29, 0x2F, 0x87, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, + 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x11, 0x19, 0x12, 0x19, 0x33, 0x11, 0x54, 0x09, 0x75, 0x09, 0x96, 0x09, 0xD7, 0x01, 0x09, 0xD8, 0x89, 0x01, 0xD8, 0x01, 0xB8, 0x01, 0xD8, 0x09, 0xD9, 0x09, 0xF9, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x75, 0x11, 0x13, 0x10, 0xF2, 0x01, 0x19, 0x11, 0x80, 0x21, 0x32, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x83, 0x19, 0x31, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x19, 0x10, 0x19, 0x31, 0x01, 0x19, 0x10, 0x01, 0x18, 0xF0, 0x81, 0x19, 0x10, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x04, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, + 0x02, 0x21, 0x30, 0x11, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x08, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x86, 0x31, 0x0E, 0x41, 0x70, 0x9C, 0x3A, 0x9B, 0xF9, 0x72, 0x94, 0x39, 0x0E, 0x30, 0xCD, 0x02, 0x30, 0xEE, 0x03, 0x31, 0x0F, 0x81, 0x31, 0x30, 0x39, 0x30, 0x07, 0x31, 0x30, 0x82, 0x31, 0x50, 0x39, 0x51, 0x31, 0x50, 0x05, + 0x31, 0x51, 0x81, 0x39, 0x51, 0x31, 0x51, 0x19, 0x39, 0x51, 0x02, 0x39, 0x52, 0x04, 0x39, 0x51, 0x80, 0x39, 0x71, 0x13, 0x39, 0x51, 0x01, 0x41, 0x71, 0x80, 0x41, 0x51, 0x07, 0x41, 0x71, 0x80, 0x41, 0x51, 0x02, 0x41, 0x71, 0x80, 0x41, 0x72, 0x01, 0x41, 0x71, 0x01, 0x41, 0x72, 0x80, 0x49, 0x72, 0x09, 0x49, 0x92, 0x93, 0x51, 0x92, 0x51, 0x91, 0x59, 0x6F, 0xBB, 0xF9, 0xE4, 0x9A, 0xE4, 0x59, 0xDB, 0xF7, 0xDB, 0xD7, 0xDB, 0xB7, 0xDB, 0xB6, 0xDB, 0x96, 0xDB, 0x76, 0xD3, 0x75, 0xCB, 0x76, 0xC3, 0x76, 0xB3, 0x96, 0x9B, 0x97, 0x83, 0xF8, 0x74, 0x9A, 0x65, 0x3B, 0x02, 0x5D, 0xDD, 0x91, 0x5D, 0x7C, 0x6D, 0x1C, 0x7C, 0x3A, 0x82, 0xB6, 0x9A, 0x15, 0xA9, 0xF4, 0xB1, 0xD4, 0xB9, 0xF4, 0xB9, 0xF3, 0xC1, 0xF3, 0xB9, 0xF3, 0xB9, 0xF4, 0xBA, 0x15, 0xB2, 0x15, 0xA1, 0xF4, 0x81, 0x93, 0x71, 0x93, 0x69, 0x94, 0x01, 0x61, 0xB4, 0x80, 0x61, 0xD4, 0x07, 0x59, 0xD4, 0x83, 0x51, 0xD4, 0x51, 0xB3, 0x51, 0xD3, 0x51, 0xD4, 0x07, 0x51, 0xB3, 0x80, 0x51, 0x93, 0x02, 0x51, 0xB3, 0x80, 0x51, 0x92, 0x09, 0x51, 0xB3, 0x07, 0x59, 0xB3, 0x01, 0x59, 0x93, 0x02, 0x59, 0xB3, 0x01, 0x59, 0x93, 0x04, 0x59, 0x92, 0x01, 0x61, 0xB2, 0x01, 0x61, 0x92, 0x87, 0x61, 0x91, 0x69, 0xB1, 0x82, 0x12, 0x9A, 0xB4, 0xBB, 0xB8, 0xCB, 0xF9, 0xCB, 0xF8, 0xCB, 0xD8, 0x01, 0xD3, 0xD7, 0x02, 0xD3, 0xB6, 0x81, 0xDB, 0xB6, 0xDB, 0xB7, 0x04, 0xDB, 0x96, 0x01, 0xD3, 0x76, 0x81, 0xDB, 0x96, 0xD3, 0x75, 0x02, 0xD3, 0x76, 0x01, 0xD3, 0x56, 0x88, 0xD3, 0x77, 0xD3, 0x78, 0xD3, 0x99, 0xC3, + 0xDB, 0x93, 0x1B, 0x49, 0x98, 0x29, 0x7A, 0x19, 0x9B, 0x19, 0xBD, 0x01, 0x11, 0xBD, 0x95, 0x09, 0x9D, 0x11, 0x9D, 0x21, 0x9C, 0x21, 0x5B, 0x29, 0x39, 0x6A, 0x7C, 0x7A, 0xDC, 0x6A, 0x9B, 0x62, 0x9A, 0x4A, 0x79, 0x3A, 0xDA, 0x33, 0xDC, 0x24, 0x9D, 0x14, 0xFD, 0x05, 0x5D, 0x0E, 0x3F, 0x0E, 0x9F, 0x0F, 0x1F, 0x07, 0x3F, 0x0F, 0x9F, 0x0F, 0xBF, 0x0F, 0xDF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x8B, 0x0F, 0xBF, 0x0F, 0x9F, 0x1F, 0x7F, 0x2F, 0x3F, 0x46, 0xBE, 0x7E, 0xDF, 0x7D, 0x3B, 0x62, 0x72, 0x82, 0x32, 0xA1, 0xF2, 0xB1, 0xD3, 0xB9, 0xB3, 0x01, 0xC9, 0xB3, 0x80, 0xC9, 0x93, 0x01, 0xC9, 0xB4, 0x88, 0xC1, 0x93, 0xC1, 0xB3, 0xB9, 0xD4, 0xB2, 0x15, 0x9A, 0x15, 0x69, 0x52, 0x51, 0x31, 0x49, 0x52, 0x49, 0x72, 0x01, 0x41, 0x72, 0x02, 0x39, 0x72, 0x02, 0x39, 0x51, 0x80, 0x31, 0x31, 0x01, 0x39, 0x51, 0x81, 0x31, 0x50, 0x31, 0x30, 0x02, 0x31, 0x50, 0x82, 0x29, 0x30, 0x29, 0x51, 0x29, 0x31, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x02, + 0x19, 0x32, 0x82, 0x19, 0x53, 0x19, 0x74, 0x19, 0xB6, 0x01, 0x22, 0x17, 0x86, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x31, 0x85, 0x19, 0x11, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x01, 0x19, 0xB6, 0x01, 0x11, 0x96, 0x8C, 0x11, 0xB6, 0x11, 0x96, 0x11, 0x95, 0x11, 0x74, 0x11, 0x54, 0x19, 0x33, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x05, 0x21, 0x10, 0x02, 0x21, 0x31, 0x80, 0x21, 0x11, 0x02, 0x21, 0x31, 0x03, 0x21, 0x11, 0x80, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x19, 0x11, 0x03, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x50, 0x03, 0x19, 0x30, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x31, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x21, 0x11, 0x02, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x81, 0x19, 0x31, 0x21, 0x51, 0x03, 0x19, 0x31, 0x82, 0x21, 0x51, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x51, 0x21, 0x31, 0x19, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x51, 0x03, 0x21, 0x10, 0x02, 0x21, 0x31, + 0x82, 0x19, 0x31, 0x21, 0x51, 0x19, 0x30, 0x01, 0x19, 0x31, 0x84, 0x19, 0x11, 0x19, 0x12, 0x19, 0x32, 0x21, 0x32, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x19, 0x30, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x52, 0x01, 0x19, 0x31, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x04, 0x21, 0x2F, + 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x11, 0x19, 0x12, 0x19, 0x33, 0x11, 0x34, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xF8, 0x09, 0xB7, 0x09, 0xD8, 0x01, 0xB8, 0x01, 0xD8, 0x01, 0x09, 0xD9, 0x85, 0x09, 0xD8, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x75, 0x09, 0x13, 0x10, 0xF2, 0x01, 0x19, 0x12, 0x83, 0x21, 0x52, 0x21, 0x32, 0x21, 0x31, 0x21, 0x32, 0x02, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x83, 0x19, 0x10, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x19, 0x31, 0x01, 0x21, 0x52, 0x81, 0x19, 0x52, 0x19, 0x32, 0x01, 0x11, 0x11, 0x82, 0x10, 0xF1, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x11, 0x05, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x10, 0x29, 0x30, + 0x01, 0x21, 0x2F, 0x04, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x0C, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x0A, 0x29, 0x0F, 0x80, 0x20, 0xEF, 0x03, 0x29, 0x0F, 0x80, 0x28, 0xEF, 0x02, 0x29, 0x0F, 0x0A, 0x20, 0xEF, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x05, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x0A, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x09, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x09, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x86, 0x29, 0x2F, 0x29, 0x0F, 0x28, 0xEF, 0x28, 0xEE, 0x39, 0x50, 0x39, 0x4F, 0x30, 0xCD, 0x05, 0x30, 0xEE, 0x03, 0x30, 0xEF, 0x03, 0x31, 0x10, 0x81, 0x31, 0x30, 0x31, 0x10, 0x02, 0x31, 0x30, 0x80, 0x31, 0x10, 0x08, 0x31, 0x30, 0x05, 0x31, 0x31, 0x84, 0x31, 0x30, 0x31, 0x31, 0x31, 0x51, 0x31, 0x31, 0x31, 0x30, 0x02, 0x31, 0x31, 0x80, 0x39, 0x31, 0x01, 0x31, 0x31, 0x02, 0x39, 0x31, 0x80, 0x31, 0x31, 0x04, 0x39, 0x31, 0x80, 0x31, 0x31, 0x03, 0x39, 0x31, 0x82, 0x31, 0x31, 0x39, 0x31, 0x31, 0x31, 0x12, 0x39, 0x31, 0x04, 0x39, 0x51, 0x01, 0x39, 0x31, 0x06, 0x39, 0x51, 0x01, 0x41, 0x51, 0x80, 0x39, 0x51, 0x07, 0x41, 0x51, 0x01, 0x41, 0x71, 0x80, 0x41, 0x51, 0x01, 0x41, 0x71, 0x82, 0x49, 0x72, 0x49, 0x92, 0x41, 0x71, 0x01, 0x49, 0x71, 0x8A, 0x49, 0x51, 0x51, 0x50, 0x59, 0x4F, 0xC3, 0xF8, 0xE4, 0x79, 0xE4, 0x38, 0xDB, 0xD7, 0xDB, 0xB7, 0xDB, 0xB6, 0xDB, 0x96, 0xDB, 0x76, 0x01, 0xD3, 0x55, + 0x86, 0xCB, 0x56, 0xC3, 0x55, 0xB3, 0x76, 0x9B, 0x97, 0x8C, 0x18, 0x74, 0xBA, 0x6D, 0x5C, 0x01, 0x65, 0xDD, 0x89, 0x65, 0x9D, 0x65, 0x1C, 0x74, 0x7B, 0x83, 0x99, 0x92, 0x76, 0xA2, 0x15, 0xB2, 0x15, 0xBA, 0x14, 0xB9, 0xF4, 0xB9, 0xF3, 0x01, 0xB9, 0xD3, 0x8A, 0xB9, 0xF4, 0xB1, 0xF4, 0xA9, 0xF5, 0x91, 0x93, 0x79, 0x73, 0x69, 0x73, 0x61, 0x73, 0x61, 0x94, 0x61, 0xB4, 0x61, 0xD4, 0x59, 0xB4, 0x01, 0x59, 0xB3, 0x06, 0x51, 0xB3, 0x81, 0x51, 0x93, 0x51, 0xB3, 0x0D, 0x51, 0x93, 0x01, 0x51, 0x92, 0x05, 0x51, 0x93, 0x01, 0x51, 0x92, 0x02, 0x51, 0x93, 0x83, 0x51, 0xB3, 0x51, 0x93, 0x51, 0x92, 0x51, 0x93, 0x01, 0x59, 0x93, 0x80, 0x59, 0xB3, 0x04, 0x59, 0x93, 0x04, 0x59, 0x92, 0x80, 0x61, 0xB2, 0x02, 0x61, 0x92, 0x8C, 0x61, 0x91, 0x61, 0x71, 0x61, 0x50, 0x61, 0x2F, 0x8A, 0x53, 0xAB, 0x36, 0xBB, 0xB7, 0xCB, 0xF8, 0xD3, 0xD7, 0xD3, 0xB7, 0xD3, 0xD7, 0xDB, 0xB7, 0xDB, 0xB6, 0x01, 0xDB, 0x96, 0x80, 0xDB, 0x76, 0x02, 0xDB, 0x96, 0x80, 0xD3, 0x76, 0x02, 0xD3, 0x75, 0x01, 0xD3, 0x76, 0x02, 0xD3, 0x56, 0x9E, 0xD3, 0x77, 0xD3, 0x78, 0xD3, 0x99, 0xC3, 0xBB, 0xAB, 0x7C, 0x62, 0x19, 0x31, 0x79, 0x21, 0x9B, 0x19, 0xBD, 0x19, 0xDE, 0x09, 0xBD, 0x09, 0xBE, 0x11, 0xBD, 0x19, 0xBD, 0x29, 0xBC, 0x29, 0x5A, 0x52, 0x1B, 0x72, 0xBC, 0x6A, 0x7B, 0x62, 0x7A, 0x4A, 0x59, 0x3A, 0xBA, 0x33, 0xBC, 0x2C, 0x9D, 0x14, 0xFE, 0x0D, 0x7E, 0x0E, 0x1F, 0x0E, 0x9F, 0x0F, 0x1F, 0x0F, 0x5F, 0x0F, 0x9F, 0x01, 0x0F, 0xBF, 0x81, 0x0F, 0xDF, 0x07, 0xDF, 0x01, 0x07, 0xBF, + 0x8E, 0x0F, 0xBF, 0x17, 0x9F, 0x1F, 0x7F, 0x2F, 0x3F, 0x46, 0xFF, 0x6E, 0xDF, 0x86, 0x1D, 0x5A, 0xB2, 0x7A, 0x32, 0xA2, 0x33, 0xB1, 0xF3, 0xC1, 0xD3, 0xC9, 0xB4, 0xC1, 0x73, 0xC9, 0x73, 0x01, 0xC9, 0x93, 0x88, 0xC1, 0x93, 0xC1, 0xB3, 0xB9, 0xD4, 0xB2, 0x15, 0x9A, 0x15, 0x69, 0x32, 0x51, 0x11, 0x51, 0x52, 0x49, 0x72, 0x01, 0x41, 0x72, 0x03, 0x39, 0x72, 0x81, 0x39, 0x51, 0x31, 0x51, 0x01, 0x31, 0x31, 0x80, 0x31, 0x51, 0x03, 0x31, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x87, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x51, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x83, 0x19, 0x33, 0x11, 0x53, 0x19, 0x95, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x86, 0x19, 0xB6, 0x11, 0x54, 0x08, 0xF2, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x51, 0x03, 0x21, 0x30, 0x88, 0x21, 0x31, 0x21, 0x30, 0x19, 0x30, 0x19, 0x10, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0x74, 0x03, 0x11, 0x74, 0x01, 0x11, 0x53, 0x80, 0x19, 0x53, 0x01, 0x19, 0x32, + 0x81, 0x19, 0x31, 0x19, 0x11, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x02, 0x21, 0x31, 0x80, 0x21, 0x52, 0x01, 0x21, 0x31, 0x01, 0x21, 0x10, 0x88, 0x21, 0x11, 0x21, 0x10, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x06, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x07, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x20, 0xF0, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x19, 0x31, 0x21, 0x51, 0x05, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x29, 0x51, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x06, 0x21, 0x30, 0x01, 0x19, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x19, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x31, 0x03, 0x19, 0x10, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x19, 0x30, 0x04, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, + 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x8A, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x0A, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x87, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x11, 0x34, 0x11, 0x75, 0x11, 0xB7, 0x09, 0xB7, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x01, 0x01, 0xD8, 0x01, 0x09, 0xD8, 0x88, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x75, 0x09, 0x13, 0x11, 0x12, 0x10, 0xF1, 0x19, + 0x12, 0x21, 0x52, 0x21, 0x32, 0x02, 0x19, 0x32, 0x81, 0x19, 0x53, 0x11, 0x32, 0x01, 0x09, 0x12, 0x84, 0x11, 0x12, 0x09, 0x12, 0x11, 0x32, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x31, 0x84, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x19, 0x31, 0x19, 0x52, 0x01, 0x11, 0x32, 0x89, 0x11, 0x53, 0x19, 0x74, 0x19, 0x94, 0x19, 0x74, 0x19, 0x53, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x03, 0x11, 0x32, 0x81, 0x09, 0x11, 0x11, 0x11, 0x01, 0x19, 0x11, 0x80, 0x21, 0x11, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x06, 0x29, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x87, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x0B, 0x29, 0x30, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x04, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x08, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x07, 0x20, 0xEE, 0x80, 0x28, 0xEF, 0x03, + 0x20, 0xEE, 0x82, 0x28, 0xEF, 0x20, 0xEE, 0x20, 0xEF, 0x03, 0x20, 0xEE, 0x81, 0x28, 0xEE, 0x28, 0xEF, 0x01, 0x20, 0xEE, 0x05, 0x28, 0xEF, 0x01, 0x20, 0xEE, 0x82, 0x28, 0xEF, 0x20, 0xCE, 0x20, 0xEE, 0x02, 0x20, 0xCE, 0x80, 0x20, 0xEE, 0x03, 0x20, 0xCE, 0x81, 0x20, 0xEE, 0x20, 0xCE, 0x03, 0x20, 0xEE, 0x80, 0x20, 0xCE, 0x05, 0x20, 0xEE, 0x02, 0x20, 0xEF, 0x81, 0x20, 0xEE, 0x20, 0xEF, 0x03, 0x20, 0xEE, 0x80, 0x20, 0xEF, 0x01, 0x20, 0xEE, 0x01, 0x20, 0xEF, 0x05, 0x20, 0xEE, 0x81, 0x20, 0xEF, 0x20, 0xCF, 0x01, 0x20, 0xEF, 0x82, 0x28, 0xEF, 0x20, 0xEF, 0x20, 0xEE, 0x07, 0x20, 0xEF, 0x81, 0x20, 0xEE, 0x20, 0xEF, 0x02, 0x20, 0xEE, 0x03, 0x20, 0xEF, 0x80, 0x20, 0xEE, 0x01, 0x20, 0xEF, 0x02, 0x28, 0xEF, 0x02, 0x28, 0xEE, 0x02, 0x28, 0xCE, 0x81, 0x28, 0xCD, 0x28, 0xAD, 0x01, 0x28, 0xCD, 0x01, 0x28, 0xCE, 0x01, 0x30, 0xCE, 0x82, 0x30, 0xEE, 0x30, 0xCE, 0x30, 0xEE, 0x04, 0x30, 0xEF, 0x83, 0x28, 0xEF, 0x30, 0xEF, 0x31, 0x0F, 0x29, 0x0F, 0x27, 0x31, 0x10, 0x01, 0x31, 0x11, 0x07, 0x31, 0x10, 0x80, 0x31, 0x30, 0x0C, 0x31, 0x10, 0x01, 0x31, 0x30, 0x80, 0x39, 0x30, 0x02, 0x39, 0x10, 0x81, 0x39, 0x31, 0x39, 0x10, 0x02, 0x39, 0x31, 0x80, 0x39, 0x30, 0x01, 0x39, 0x31, 0x01, 0x39, 0x30, 0x80, 0x39, 0x31, 0x01, 0x39, 0x30, 0x01, 0x39, 0x31, 0x05, 0x41, 0x31, 0x07, 0x41, 0x51, 0x87, 0x41, 0x30, 0x49, 0x30, 0x51, 0x2F, 0x61, 0x4E, 0xCC, 0x19, 0xDC, 0x39, 0xE3, 0xF8, 0xDB, 0xB7, 0x01, 0xDB, 0x96, 0x01, 0xDB, 0x76, 0x88, 0xD3, 0x55, 0xD3, 0x35, + 0xCB, 0x35, 0xBB, 0x15, 0xB3, 0x56, 0x9B, 0x77, 0x8B, 0xF8, 0x7C, 0xBA, 0x75, 0x5B, 0x01, 0x6D, 0xBD, 0x92, 0x6D, 0x5C, 0x74, 0xBB, 0x83, 0xFA, 0x8A, 0xF7, 0x9A, 0x56, 0xA9, 0xF5, 0xB2, 0x15, 0xBA, 0x14, 0xB9, 0xF4, 0xC1, 0xF4, 0xB9, 0xF3, 0xB9, 0xF4, 0xB1, 0xD4, 0xA9, 0xD4, 0x91, 0x93, 0x81, 0x52, 0x71, 0x52, 0x69, 0x53, 0x61, 0x73, 0x01, 0x61, 0x93, 0x01, 0x59, 0x93, 0x07, 0x51, 0x93, 0x80, 0x51, 0x73, 0x01, 0x51, 0x72, 0x81, 0x51, 0x73, 0x51, 0x72, 0x11, 0x49, 0x72, 0x01, 0x51, 0x72, 0x80, 0x49, 0x72, 0x07, 0x51, 0x72, 0x80, 0x51, 0x92, 0x04, 0x51, 0x72, 0x81, 0x59, 0x92, 0x59, 0x72, 0x01, 0x59, 0x92, 0x80, 0x59, 0x72, 0x02, 0x59, 0x92, 0x82, 0x59, 0x72, 0x59, 0x92, 0x59, 0x91, 0x02, 0x61, 0x71, 0x01, 0x61, 0x50, 0x8A, 0x61, 0x2F, 0x71, 0x8F, 0x8A, 0x32, 0xC3, 0xB7, 0xD4, 0x18, 0xD3, 0xD7, 0xD3, 0xB7, 0xDB, 0xB7, 0xDB, 0x96, 0xD3, 0x96, 0xDB, 0x76, 0x01, 0xD3, 0x76, 0x81, 0xDB, 0x76, 0xD3, 0x76, 0x02, 0xD3, 0x75, 0x01, 0xD3, 0x76, 0x01, 0xD3, 0x55, 0x80, 0xD3, 0x56, 0x01, 0xD3, 0x77, 0x9C, 0xD3, 0x98, 0xC3, 0xBA, 0xAB, 0x9C, 0x6A, 0x39, 0x31, 0x79, 0x21, 0x9B, 0x19, 0xDD, 0x19, 0xDE, 0x09, 0xBE, 0x09, 0xDE, 0x11, 0xDE, 0x19, 0xDE, 0x29, 0xDD, 0x29, 0x9B, 0x41, 0xBA, 0x6A, 0xBD, 0x6A, 0x7B, 0x5A, 0x5A, 0x4A, 0x3A, 0x3A, 0x9A, 0x33, 0x7C, 0x24, 0x5D, 0x1C, 0xFE, 0x0D, 0x5E, 0x0D, 0xFF, 0x06, 0x7F, 0x0F, 0x1F, 0x0F, 0x5F, 0x0F, 0x9F, 0x01, 0x0F, 0xBF, 0x80, 0x0F, 0xDF, 0x01, 0x07, 0xDF, 0x8D, 0x07, 0xBF, 0x07, 0x9F, + 0x0F, 0x9F, 0x1F, 0x7F, 0x2F, 0x5F, 0x3E, 0xFE, 0x66, 0xDF, 0x8E, 0x5E, 0x52, 0xF3, 0x72, 0x32, 0x9A, 0x33, 0xB1, 0xD2, 0xC1, 0xB3, 0xC9, 0xB3, 0x03, 0xC9, 0x93, 0x88, 0xC9, 0xB3, 0xC1, 0xB3, 0xB9, 0xD4, 0xB2, 0x15, 0x9A, 0x15, 0x69, 0x52, 0x51, 0x11, 0x51, 0x73, 0x49, 0x72, 0x02, 0x41, 0x72, 0x01, 0x39, 0x72, 0x85, 0x39, 0x52, 0x39, 0x51, 0x31, 0x51, 0x39, 0x51, 0x31, 0x31, 0x31, 0x51, 0x02, 0x31, 0x30, 0x80, 0x31, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x02, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x03, 0x21, 0x31, 0x92, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x02, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x19, 0x11, 0x01, 0x19, 0x32, 0x83, 0x19, 0x33, 0x11, 0x33, 0x11, 0x32, 0x19, 0x53, 0x03, 0x19, 0x32, 0x81, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x04, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, + 0x31, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x31, 0x19, 0x10, 0x19, 0x30, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x31, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x21, 0x30, 0x83, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x21, 0x10, 0x04, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x50, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x30, 0x03, 0x19, 0x10, 0x81, 0x21, 0x11, 0x19, 0x10, 0x01, 0x21, 0x31, 0x08, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, + 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x19, 0x11, 0x84, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x09, 0xD7, 0x05, 0x09, 0xD8, 0x84, 0x09, 0xF8, 0x11, 0xF8, 0x11, 0xB6, 0x11, 0x55, 0x11, 0x33, 0x01, 0x11, 0x12, 0x93, 0x19, 0x12, 0x19, 0x11, 0x19, 0x31, 0x19, 0x32, 0x19, 0x12, 0x19, 0x33, 0x19, 0x54, 0x09, 0x33, 0x11, 0x74, 0x19, 0xF6, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xF6, 0x22, 0x17, 0x21, 0xF6, 0x19, 0xB5, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x20, 0xEF, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x8E, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x19, 0xD5, 0x19, 0xF7, 0x1A, 0x17, 0x22, 0x17, 0x19, 0xF6, 0x19, 0xB6, 0x11, 0x74, 0x19, 0x53, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, + 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x19, 0x31, 0x82, 0x19, 0x72, 0x11, 0x53, 0x11, 0x94, 0x02, 0x22, 0x37, 0x85, 0x22, 0x17, 0x19, 0xF6, 0x19, 0x94, 0x19, 0x32, 0x19, 0x31, 0x21, 0x11, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x0A, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x05, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x09, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x28, 0xEE, 0x29, 0x0F, 0x28, 0xEE, 0x01, 0x20, 0xEE, 0x03, 0x20, 0xCE, 0x05, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x03, 0x20, 0xAD, 0x80, 0x20, 0xAE, 0x03, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x03, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x09, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x80, 0x20, 0xAE, 0x03, 0x20, 0xAD, 0x01, 0x20, 0xCE, 0x80, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xAD, 0x81, 0x20, 0xCD, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x83, 0x20, 0xAD, 0x20, 0xCE, + 0x20, 0xAD, 0x20, 0xCE, 0x01, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x01, 0x20, 0xCE, 0x82, 0x20, 0xAD, 0x20, 0xCE, 0x20, 0xCD, 0x01, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x03, 0x20, 0xAD, 0x01, 0x28, 0xAD, 0x80, 0x28, 0x8D, 0x05, 0x28, 0xAD, 0x82, 0x28, 0xCD, 0x28, 0xCE, 0x30, 0xCE, 0x01, 0x28, 0xCE, 0x80, 0x30, 0xCE, 0x01, 0x28, 0xCE, 0x80, 0x28, 0xEE, 0x02, 0x28, 0xCE, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x08, 0x28, 0xCF, 0x87, 0x30, 0xEF, 0x28, 0xCF, 0x30, 0xEF, 0x28, 0xCF, 0x30, 0xEF, 0x28, 0xCF, 0x28, 0xEF, 0x30, 0xEF, 0x02, 0x28, 0xCF, 0x82, 0x30, 0xEF, 0x28, 0xCF, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x82, 0x30, 0xEF, 0x30, 0xCF, 0x30, 0xEF, 0x09, 0x30, 0xCF, 0x80, 0x30, 0xF0, 0x03, 0x30, 0xCF, 0x01, 0x30, 0xEF, 0x81, 0x30, 0xF0, 0x30, 0xCF, 0x07, 0x30, 0xEF, 0x80, 0x30, 0xCF, 0x0C, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x01, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x81, 0x30, 0xEF, 0x38, 0xF0, 0x01, 0x30, 0xEF, 0x80, 0x38, 0xEF, 0x03, 0x38, 0xF0, 0x80, 0x38, 0xEF, 0x01, 0x38, 0xF0, 0x04, 0x39, 0x10, 0x80, 0x41, 0x30, 0x01, 0x41, 0x10, 0x01, 0x41, 0x0F, 0x85, 0x49, 0x0F, 0x51, 0x0E, 0x61, 0x2E, 0xCC, 0x18, 0xDC, 0x18, 0xDB, 0xD7, 0x01, 0xDB, 0x96, 0x80, 0xDB, 0x76, 0x01, 0xDB, 0x56, 0x93, 0xD3, 0x35, 0xD3, 0x15, 0xCB, 0x15, 0xC3, 0x15, 0xB3, + 0x36, 0xA3, 0x76, 0x9B, 0xF8, 0x8C, 0xBA, 0x85, 0x3B, 0x7D, 0x9D, 0x7D, 0x7D, 0x7C, 0xDB, 0x84, 0x3A, 0x8B, 0x58, 0x92, 0x76, 0xA2, 0x15, 0xA9, 0xF4, 0xB1, 0xF4, 0xB9, 0xF4, 0xB9, 0xD4, 0x01, 0xB9, 0xD3, 0x85, 0xB9, 0xD4, 0xA9, 0xB3, 0x99, 0x73, 0x81, 0x32, 0x71, 0x31, 0x69, 0x32, 0x01, 0x61, 0x52, 0x81, 0x59, 0x52, 0x59, 0x72, 0x02, 0x51, 0x52, 0x01, 0x51, 0x72, 0x81, 0x49, 0x52, 0x51, 0x52, 0x03, 0x49, 0x52, 0x02, 0x49, 0x51, 0x04, 0x49, 0x31, 0x81, 0x41, 0x31, 0x49, 0x31, 0x01, 0x41, 0x31, 0x07, 0x49, 0x31, 0x0B, 0x49, 0x51, 0x0B, 0x51, 0x51, 0x08, 0x59, 0x51, 0x01, 0x61, 0x50, 0x01, 0x61, 0x2F, 0x85, 0x61, 0x0E, 0x60, 0xCD, 0x81, 0xB0, 0xB2, 0xF4, 0xC3, 0x55, 0xD3, 0x96, 0x03, 0xDB, 0x96, 0x80, 0xD3, 0x76, 0x04, 0xD3, 0x75, 0x8E, 0xD3, 0x55, 0xD3, 0x75, 0xD3, 0x55, 0xCB, 0x55, 0xD3, 0x56, 0xD3, 0x76, 0xD3, 0x77, 0xCB, 0x78, 0xC3, 0x99, 0xB3, 0xBB, 0x7A, 0xBA, 0x29, 0x58, 0x21, 0x9B, 0x19, 0xDC, 0x19, 0xFE, 0x01, 0x09, 0xDE, 0x92, 0x11, 0xFE, 0x19, 0xFE, 0x21, 0xFD, 0x21, 0x9B, 0x31, 0x9A, 0x5A, 0x7D, 0x62, 0x9C, 0x5A, 0x5B, 0x4A, 0x19, 0x3A, 0x5A, 0x2B, 0x1B, 0x23, 0xFD, 0x1C, 0xDE, 0x0D, 0x5E, 0x05, 0xDE, 0x06, 0x5E, 0x0F, 0x1F, 0x0F, 0x7F, 0x0F, 0x9F, 0x01, 0x0F, 0xBF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x8B, 0x07, 0x9F, 0x0F, 0x9F, 0x17, 0x7F, 0x2F, 0x5F, 0x3E, 0xFE, 0x5E, 0xDE, 0x8E, 0xBF, 0x52, 0xF3, 0x6A, 0x11, 0x9A, 0x33, 0xB2, 0x13, 0xC1, 0xD3, 0x01, 0xC9, 0xB3, 0x8C, 0xC9, 0x93, 0xC1, 0x73, 0xC9, 0x93, + 0xC1, 0xB3, 0xC1, 0x93, 0xB9, 0xD4, 0xB2, 0x15, 0x9A, 0x15, 0x69, 0x52, 0x59, 0x11, 0x51, 0x52, 0x51, 0x93, 0x49, 0x92, 0x01, 0x41, 0x72, 0x80, 0x39, 0x52, 0x03, 0x39, 0x72, 0x80, 0x39, 0x51, 0x01, 0x31, 0x51, 0x80, 0x31, 0x50, 0x02, 0x31, 0x30, 0x03, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x04, 0x29, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x31, 0x21, 0x11, 0x21, 0x51, 0x01, 0x19, 0x32, 0x8D, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x21, 0xD7, 0x22, 0x17, 0x19, 0xF6, 0x19, 0xB5, 0x09, 0x33, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x07, 0x21, 0x30, 0x01, 0x19, 0x11, 0x80, 0x21, 0x32, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x51, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x50, 0x81, 0x21, 0x30, 0x21, 0x50, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x08, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, + 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x07, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x50, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x50, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x19, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x83, 0x21, 0x51, 0x21, 0x30, 0x21, 0x50, 0x19, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x07, 0x21, 0x2F, + 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x8C, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x19, 0x33, 0x11, 0x54, 0x09, 0x75, 0x11, 0xD7, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xD8, 0x02, 0x09, 0xD8, 0x85, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x11, 0x02, 0x19, 0x32, 0x85, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xF7, 0x11, 0xF7, 0x1A, 0x18, 0x01, 0x11, 0xF7, 0x01, 0x11, 0xD7, 0x85, 0x11, 0xD6, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x85, 0x19, 0x31, 0x11, 0x11, 0x11, 0x53, 0x11, 0x94, 0x19, 0xD6, 0x11, 0xF7, 0x02, 0x12, 0x18, + 0x85, 0x11, 0xF7, 0x11, 0xD7, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x53, 0x19, 0x31, 0x03, 0x21, 0x30, 0x03, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8D, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x19, 0xF6, 0x1A, 0x37, 0x1A, 0x38, 0x09, 0xF7, 0x11, 0xF8, 0x09, 0xF7, 0x1A, 0x17, 0x1A, 0x16, 0x19, 0x74, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x89, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x0D, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x02, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x06, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x28, 0xEE, 0x01, 0x28, 0xCD, 0x87, 0x28, 0xAD, 0x20, 0x8C, 0x20, 0x6B, 0x18, 0x4B, 0x18, 0x2A, 0x18, 0x0A, 0x10, 0x09, 0x18, 0x09, 0x02, 0x10, 0x09, 0x81, 0x18, 0x09, 0x10, 0x09, 0x01, 0x18, 0x09, 0x01, 0x10, 0x09, 0x02, 0x18, 0x09, 0x08, 0x10, 0x09, 0x02, 0x18, 0x09, 0x80, 0x10, 0x09, 0x02, 0x18, 0x09, 0x80, 0x10, 0x09, 0x02, 0x18, 0x09, + 0x82, 0x10, 0x09, 0x18, 0x09, 0x10, 0x09, 0x02, 0x18, 0x09, 0x81, 0x10, 0x09, 0x18, 0x09, 0x08, 0x10, 0x09, 0x80, 0x18, 0x09, 0x02, 0x10, 0x09, 0x80, 0x18, 0x09, 0x0A, 0x10, 0x09, 0x80, 0x18, 0x09, 0x18, 0x10, 0x09, 0x0F, 0x18, 0x09, 0x04, 0x20, 0x09, 0x80, 0x20, 0x29, 0x05, 0x20, 0x2A, 0x80, 0x20, 0x4A, 0x05, 0x20, 0x2A, 0x80, 0x18, 0x2A, 0x02, 0x20, 0x2A, 0x83, 0x20, 0x0A, 0x20, 0x2B, 0x20, 0x2A, 0x20, 0x2B, 0x02, 0x20, 0x2A, 0x01, 0x20, 0x0B, 0x82, 0x20, 0x2B, 0x20, 0x2A, 0x20, 0x2B, 0x05, 0x20, 0x2A, 0x80, 0x20, 0x0A, 0x04, 0x20, 0x2A, 0x80, 0x20, 0x0A, 0x01, 0x20, 0x2A, 0x03, 0x20, 0x0A, 0x01, 0x20, 0x2A, 0x03, 0x20, 0x0A, 0x82, 0x20, 0x0B, 0x20, 0x0A, 0x20, 0x2B, 0x01, 0x20, 0x0A, 0x81, 0x20, 0x2B, 0x20, 0x0B, 0x01, 0x20, 0x2B, 0x80, 0x20, 0x0B, 0x02, 0x20, 0x2B, 0x84, 0x20, 0x2A, 0x20, 0x2B, 0x20, 0x2A, 0x20, 0x2B, 0x20, 0x0A, 0x06, 0x20, 0x2B, 0x80, 0x20, 0x2A, 0x07, 0x20, 0x2B, 0x80, 0x28, 0x2B, 0x03, 0x20, 0x2B, 0x80, 0x28, 0x2B, 0x01, 0x20, 0x2B, 0x04, 0x28, 0x2B, 0x03, 0x28, 0x4B, 0x01, 0x30, 0x6B, 0x01, 0x30, 0x6C, 0x8A, 0x30, 0x6B, 0x30, 0x6C, 0x38, 0x6B, 0x40, 0x8C, 0x48, 0xAC, 0x79, 0xAF, 0xD4, 0x18, 0xDB, 0xF8, 0xDB, 0xD7, 0xDB, 0x97, 0xDB, 0x76, 0x01, 0xDB, 0x56, 0x92, 0xDB, 0x36, 0xDB, 0x35, 0xD3, 0x15, 0xCA, 0xF5, 0xC2, 0xF5, 0xBB, 0x15, 0xAB, 0x36, 0xA3, 0xB7, 0x9C, 0x7A, 0x9C, 0xFB, 0x9D, 0x3C, 0x94, 0xFC, 0x94, 0x3A, 0x93, 0x58, 0x92, 0x96, 0xA2, 0x35, 0xAA, 0x14, 0xB1, 0xF4, 0xB9, 0xF4, 0x02, + 0xB9, 0xD3, 0x89, 0xB1, 0xD3, 0xA9, 0xB2, 0x91, 0x50, 0x80, 0xEF, 0x68, 0xAE, 0x60, 0xAE, 0x58, 0xAE, 0x50, 0xAE, 0x50, 0xCE, 0x48, 0xCE, 0x01, 0x48, 0xEE, 0x80, 0x48, 0xCE, 0x03, 0x40, 0xCE, 0x01, 0x40, 0xAD, 0x83, 0x38, 0x8D, 0x38, 0xAD, 0x38, 0x8D, 0x38, 0xAD, 0x09, 0x38, 0x8D, 0x81, 0x38, 0x6D, 0x38, 0x8D, 0x01, 0x38, 0x6D, 0x80, 0x38, 0x6C, 0x02, 0x38, 0x8D, 0x03, 0x40, 0x8D, 0x81, 0x40, 0xAD, 0x40, 0x8D, 0x07, 0x40, 0xAD, 0x06, 0x48, 0xAD, 0x80, 0x48, 0xCE, 0x01, 0x48, 0xAD, 0x01, 0x48, 0xCD, 0x80, 0x50, 0xCE, 0x04, 0x50, 0xEE, 0x03, 0x58, 0xEE, 0x80, 0x58, 0xED, 0x01, 0x58, 0xCD, 0x88, 0x69, 0x2E, 0x79, 0x6E, 0x92, 0x10, 0x9A, 0x31, 0xB2, 0x92, 0xB2, 0xB2, 0xC2, 0xF3, 0xC3, 0x14, 0xCB, 0x34, 0x02, 0xCB, 0x55, 0x02, 0xD3, 0x55, 0x04, 0xCB, 0x55, 0x89, 0xCB, 0x56, 0xD3, 0x77, 0xCB, 0x97, 0xC3, 0xB9, 0xB3, 0xBB, 0x82, 0xFB, 0x31, 0x57, 0x21, 0x9A, 0x21, 0xDC, 0x19, 0xFE, 0x02, 0x09, 0xFE, 0x91, 0x11, 0xFE, 0x22, 0x1E, 0x21, 0xDD, 0x29, 0x7A, 0x4A, 0x3D, 0x62, 0x9D, 0x62, 0x9C, 0x4A, 0x1A, 0x3A, 0x3A, 0x2A, 0xBB, 0x23, 0x9C, 0x1C, 0xBE, 0x0D, 0x3E, 0x0D, 0xDF, 0x06, 0x5E, 0x0F, 0x1F, 0x0F, 0x7F, 0x0F, 0x9F, 0x01, 0x0F, 0xBF, 0x80, 0x0F, 0xDF, 0x02, 0x07, 0xBF, 0x8E, 0x07, 0x9F, 0x0F, 0x9F, 0x17, 0x7F, 0x27, 0x5F, 0x36, 0xFF, 0x56, 0xDE, 0x8E, 0xFF, 0x53, 0x54, 0x62, 0x31, 0x9A, 0x53, 0xB2, 0x33, 0xB9, 0xD3, 0xC1, 0xB3, 0xC9, 0xB4, 0xC9, 0x93, 0x01, 0xC1, 0x73, 0x87, 0xC1, 0x93, 0xC1, 0xB3, 0xB9, 0xF4, 0xB2, 0x15, + 0x9A, 0x35, 0x69, 0x32, 0x59, 0x11, 0x51, 0x52, 0x01, 0x49, 0x72, 0x80, 0x41, 0x72, 0x02, 0x39, 0x72, 0x83, 0x39, 0x52, 0x39, 0x51, 0x39, 0x72, 0x39, 0x51, 0x01, 0x31, 0x51, 0x83, 0x31, 0x50, 0x31, 0x30, 0x31, 0x50, 0x31, 0x30, 0x04, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x07, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8D, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x19, 0xF6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x02, 0x21, 0x31, 0x81, 0x19, 0x11, 0x21, 0x11, 0x01, 0x19, 0x10, 0x01, 0x21, 0x10, 0x82, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x04, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x08, 0x21, 0x30, 0x81, 0x29, 0x50, 0x21, 0x30, 0x07, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, + 0x85, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x19, 0x10, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x04, 0x29, 0x2F, + 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x50, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x31, 0x01, 0x19, 0x11, 0x89, 0x19, 0x33, 0x11, 0x33, 0x11, 0x75, 0x11, 0xB7, 0x09, 0xB7, 0x09, 0xD8, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0xD8, 0x01, 0x09, 0xD8, 0x86, 0x09, 0xB7, 0x11, 0xB6, 0x11, 0x75, 0x09, 0x12, 0x10, 0xF1, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x52, 0x85, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xF8, 0x01, 0x09, 0xD7, 0x89, 0x09, 0xB7, 0x09, 0xD8, 0x09, 0xB7, 0x01, 0xB7, 0x09, 0xD7, 0x09, 0xB7, 0x09, 0x96, 0x11, 0x95, 0x11, 0x33, 0x19, 0x32, 0x01, 0x21, 0x31, 0x80, 0x29, 0x51, 0x01, 0x29, 0x30, 0x92, 0x21, 0x30, 0x21, 0x11, 0x19, 0x11, 0x11, 0x32, 0x11, 0x74, 0x11, 0xB6, + 0x11, 0xD7, 0x09, 0xD7, 0x11, 0xF8, 0x09, 0xF8, 0x09, 0xD8, 0x09, 0xF8, 0x09, 0xD8, 0x09, 0xD7, 0x11, 0xB7, 0x19, 0xD6, 0x19, 0x74, 0x10, 0xF1, 0x19, 0x10, 0x01, 0x21, 0x31, 0x01, 0x21, 0x51, 0x80, 0x21, 0x31, 0x02, 0x19, 0x31, 0x92, 0x11, 0x32, 0x19, 0x73, 0x11, 0x74, 0x19, 0xD6, 0x11, 0xF7, 0x09, 0xF8, 0x01, 0xD7, 0x09, 0xD8, 0x01, 0xD8, 0x01, 0xB7, 0x0A, 0x18, 0x11, 0xF7, 0x11, 0xB5, 0x11, 0x53, 0x19, 0x32, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x0E, 0x29, 0x30, 0x04, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x08, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x8D, 0x20, 0xEE, 0x20, 0xCE, 0x20, 0xCD, 0x20, 0xAC, 0x20, 0x8C, 0x28, 0x8B, 0x39, 0x0D, 0x49, 0x6E, 0x6A, 0x51, 0x8B, 0x34, 0xAC, 0x18, 0xC4, 0xDB, 0xD5, 0x5D, 0xDD, 0x9D, 0x01, 0xE5, 0xBE, 0x81, 0xE5, 0xBD, 0xE5, 0xBE, 0x01, 0xE5, 0xBD, 0x02, 0xDD, 0xBD, 0x03, 0xE5, 0xBD, 0x01, 0xE5, 0xDD, 0x83, 0xDD, 0xBD, 0xE5, 0xDD, + 0xDD, 0xBD, 0xE5, 0xDD, 0x03, 0xDD, 0xBD, 0x03, 0xE5, 0xBD, 0x80, 0xDD, 0xBD, 0x08, 0xE5, 0xBD, 0x80, 0xDD, 0xBD, 0x2A, 0xE5, 0xBD, 0x80, 0xE5, 0xDD, 0x03, 0xE5, 0xBD, 0x80, 0xE5, 0xDD, 0x03, 0xE5, 0xBD, 0x80, 0xE5, 0xDD, 0x03, 0xE5, 0xBD, 0x80, 0xDD, 0xBD, 0x05, 0xE5, 0xBD, 0x80, 0xDD, 0xBD, 0x0A, 0xDD, 0x9D, 0x04, 0xE5, 0x9D, 0x80, 0xDD, 0x9D, 0x04, 0xDD, 0xBD, 0x82, 0xE5, 0x9D, 0xE5, 0xBD, 0xDD, 0xBD, 0x02, 0xE5, 0xBD, 0x86, 0xDD, 0xBD, 0xDD, 0x9D, 0xE5, 0x9D, 0xE5, 0xBD, 0xE5, 0x9D, 0xE5, 0xBD, 0xE5, 0x9D, 0x14, 0xE5, 0xBD, 0x82, 0xE5, 0x9D, 0xE5, 0xBD, 0xE5, 0x9D, 0x01, 0xE5, 0xBD, 0x02, 0xE5, 0x9D, 0x01, 0xE5, 0xBD, 0x80, 0xE5, 0x9D, 0x04, 0xE5, 0xBD, 0x81, 0xE5, 0x9D, 0xE5, 0xBD, 0x01, 0xE5, 0x9D, 0x82, 0xE5, 0xBD, 0xE5, 0x9D, 0xE5, 0xBD, 0x0A, 0xE5, 0x9D, 0x85, 0xE5, 0xBD, 0xE5, 0x9D, 0xE5, 0xBD, 0xE5, 0xBE, 0xE5, 0x9D, 0xE5, 0xBD, 0x12, 0xE5, 0x9D, 0x01, 0xE5, 0x7D, 0x80, 0xDD, 0x7D, 0x02, 0xE5, 0x5D, 0x88, 0xE5, 0x3C, 0xE5, 0x1C, 0xE4, 0xDB, 0xE4, 0x9A, 0xDC, 0x18, 0xDB, 0xD7, 0xDB, 0x97, 0xDB, 0x76, 0xDB, 0x56, 0x01, 0xDB, 0x36, 0x80, 0xDB, 0x15, 0x01, 0xD2, 0xF5, 0x8E, 0xD2, 0xD5, 0xCA, 0xD5, 0xC2, 0xD5, 0xB2, 0xD5, 0xAA, 0xF6, 0xAB, 0x77, 0xA3, 0x98, 0xA3, 0xB8, 0x9B, 0x37, 0x92, 0xB6, 0x9A, 0x55, 0xA2, 0x35, 0xA9, 0xF4, 0xB2, 0x14, 0xB9, 0xF4, 0x01, 0xB9, 0xD3, 0x88, 0xB1, 0xB3, 0xB1, 0xB2, 0xA9, 0xD2, 0xBA, 0xB4, 0xE4, 0x19, 0xEC, 0xDB, 0xEC, 0xFC, 0xED, 0x1C, 0xE5, 0x1C, 0x01, 0xE5, 0x3C, 0x83, 0xE5, + 0x5D, 0xE5, 0x5C, 0xE5, 0x7D, 0xE5, 0x5D, 0x02, 0xE5, 0x7D, 0x80, 0xE5, 0x5D, 0x0E, 0xE5, 0x7D, 0x03, 0xE5, 0x5D, 0x03, 0xE5, 0x3C, 0x83, 0xED, 0x3D, 0xE5, 0x1C, 0xED, 0x3C, 0xE5, 0x3C, 0x02, 0xED, 0x3C, 0x80, 0xE5, 0x3C, 0x02, 0xED, 0x3C, 0x80, 0xE5, 0x1C, 0x08, 0xED, 0x3C, 0x80, 0xED, 0x1C, 0x04, 0xED, 0x3C, 0x04, 0xE5, 0x1C, 0x01, 0xE4, 0xFC, 0x81, 0xEC, 0xFC, 0xED, 0x1C, 0x01, 0xEC, 0xFB, 0x84, 0xEC, 0xDB, 0xEC, 0xFB, 0xEC, 0xDA, 0xEC, 0xBA, 0xE4, 0x99, 0x01, 0xEC, 0x99, 0x04, 0xEC, 0x78, 0x82, 0xEC, 0x58, 0xE4, 0x58, 0xE4, 0x37, 0x01, 0xE4, 0x38, 0x82, 0xE4, 0x37, 0xE4, 0x58, 0xE4, 0x38, 0x01, 0xEC, 0x58, 0x01, 0xEC, 0x59, 0x87, 0xE4, 0x59, 0xDC, 0x5A, 0xC4, 0x1B, 0x8B, 0x3B, 0x31, 0x57, 0x21, 0x9A, 0x21, 0xFC, 0x1A, 0x1D, 0x01, 0x09, 0xFE, 0x01, 0x0A, 0x1E, 0x90, 0x1A, 0x1E, 0x21, 0xFD, 0x21, 0x9B, 0x39, 0xFC, 0x62, 0xBD, 0x62, 0xBC, 0x4A, 0x3B, 0x3A, 0x3A, 0x2A, 0x5A, 0x1B, 0x1B, 0x1C, 0x7E, 0x15, 0x3E, 0x0D, 0xFF, 0x06, 0x7F, 0x0E, 0xFF, 0x0F, 0x5F, 0x0F, 0x9F, 0x01, 0x0F, 0xBF, 0x80, 0x0F, 0xDF, 0x01, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x8C, 0x0F, 0xBF, 0x17, 0x9F, 0x27, 0x5F, 0x36, 0xFF, 0x4E, 0xBE, 0x7E, 0x9F, 0x5B, 0xB5, 0x5A, 0x11, 0x92, 0x53, 0xA9, 0xF3, 0xC1, 0xF4, 0xC1, 0x93, 0xC9, 0xB4, 0x02, 0xC9, 0x93, 0x87, 0xC1, 0x93, 0xC1, 0xB3, 0xB9, 0xD4, 0xB2, 0x15, 0x9A, 0x15, 0x69, 0x32, 0x59, 0x11, 0x51, 0x52, 0x01, 0x49, 0x72, 0x01, 0x41, 0x72, 0x01, 0x39, 0x72, 0x82, 0x39, 0x52, 0x39, 0x51, 0x39, 0x72, 0x01, + 0x31, 0x51, 0x81, 0x31, 0x31, 0x31, 0x50, 0x01, 0x31, 0x30, 0x81, 0x31, 0x50, 0x29, 0x50, 0x02, 0x29, 0x30, 0x03, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x07, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x21, 0xF6, 0x01, 0x22, 0x37, 0x82, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x01, 0x19, 0x31, 0x83, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x03, 0x21, 0x0F, 0x83, 0x18, 0xEF, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x10, 0x80, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x20, 0xEF, + 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x08, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x20, 0xEF, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, + 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x11, 0x89, 0x19, 0x11, 0x19, 0x12, 0x19, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xD9, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x01, 0x09, 0xD8, 0x83, 0x09, 0xB7, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x12, 0x01, 0x11, 0x11, 0x88, 0x19, 0x11, 0x19, 0x31, 0x21, 0x52, 0x19, 0x32, 0x11, 0x32, 0x09, 0x12, 0x11, 0x74, 0x11, 0xB6, 0x09, 0xD7, 0x02, 0x09, 0xD8, 0x03, 0x01, 0xD8, 0x01, 0x09, 0xD8, 0x8E, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x53, 0x19, 0x32, 0x19, 0x11, 0x29, 0x51, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x11, 0x33, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xF7, 0x01, 0x09, 0xF8, 0x01, 0x01, 0xD8, 0x89, 0x01, 0xF8, 0x01, 0xD8, 0x01, 0xB8, 0x09, 0xD8, 0x09, 0xD7, 0x11, 0xD7, 0x19, 0xB5, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x31, 0x80, 0x21, 0x51, 0x01, 0x19, 0x31, 0x86, 0x11, 0x11, 0x11, 0x12, 0x11, 0x53, 0x11, 0x95, 0x19, 0xF7, 0x11, 0xF8, 0x09, 0xD8, 0x01, 0x01, 0xD8, 0x88, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0xD8, 0x09, 0xF8, 0x11, 0xF8, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, + 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x88, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x07, 0x29, 0x30, 0x01, 0x21, 0x30, 0x09, 0x29, 0x30, 0x84, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x50, 0x29, 0x30, 0x05, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8E, 0x20, 0xEF, 0x28, 0xEF, 0x20, 0xEE, 0x20, 0xCE, 0x20, 0xAD, 0x20, 0x8C, 0x20, 0x6B, 0x28, 0xAC, 0x59, 0xD0, 0x9B, 0xD7, 0xBC, 0x9A, 0xCC, 0xFB, 0xD5, 0x3C, 0xD5, 0x3B, 0xDD, 0x3B, 0x01, 0xD5, 0x1A, 0x80, 0xD4, 0xFA, 0x08, 0xD4, 0xF9, 0x80, 0xD5, 0x19, 0x01, 0xD4, 0xF9, 0x03, 0xD5, 0x19, 0x2D, 0xD4, 0xF9, 0x01, 0xDC, 0xF9, 0x10, 0xD4, 0xF9, 0x80, 0xD5, 0x19, 0x0A, 0xD4, 0xF9, 0x80, 0xD5, 0x19, 0x51, 0xD4, 0xF9, 0x80, 0xD4, 0xF8, 0x28, 0xD4, 0xF9, 0x04, 0xD4, 0xD9, 0x01, 0xD4, 0xB9, 0x01, 0xDC, 0x99, 0x86, 0xDC, 0x78, 0xDC, 0x38, 0xDB, 0xF7, 0xDB, 0xB7, 0xD3, 0x76, 0xD3, 0x56, 0xDB, 0x36, 0x01, 0xDB, 0x16, 0x83, 0xDA, 0xF5, 0xDA, 0xD5, 0xD2, 0xB5, 0xD2, 0x95, 0x01, 0xCA, 0x95, 0x87, 0xBA, 0x95, 0xB2, 0x75, 0xA2, 0x54, 0xA2, 0x74, 0xA2, 0x75, 0xA2, 0x55, 0xA2, 0x34, 0xAA, 0x14, 0x02, 0xB1, 0xF4, 0x89, 0xB9, 0xF3, 0xB9, 0xD3, 0xB1, 0xD3, 0xB1, 0xD2, 0xB1, 0xF2, 0xCB, + 0x16, 0xE4, 0x39, 0xE4, 0x79, 0xDC, 0x99, 0xDC, 0x98, 0x02, 0xDC, 0xB9, 0x80, 0xD4, 0xB9, 0x0C, 0xD4, 0xD9, 0x80, 0xD4, 0xF9, 0x02, 0xD4, 0xD9, 0x80, 0xDC, 0xF9, 0x01, 0xD4, 0xD9, 0x05, 0xDC, 0xD9, 0x80, 0xDC, 0xB9, 0x04, 0xE4, 0xB9, 0x80, 0xE4, 0x99, 0x06, 0xE4, 0xB9, 0x80, 0xE4, 0xB8, 0x0A, 0xE4, 0xB9, 0x80, 0xE4, 0x99, 0x02, 0xE4, 0xB9, 0x81, 0xE4, 0x99, 0xE4, 0xB9, 0x05, 0xE4, 0x99, 0x80, 0xE4, 0x98, 0x01, 0xE4, 0x99, 0x01, 0xE4, 0x98, 0x03, 0xE4, 0x78, 0x80, 0xE4, 0x77, 0x07, 0xE4, 0x57, 0x03, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xE4, 0x58, 0x01, 0xEC, 0x58, 0x01, 0xEC, 0x79, 0x9C, 0xE4, 0x7A, 0xCC, 0x3B, 0x9B, 0x7B, 0x39, 0x77, 0x21, 0x9A, 0x21, 0xFC, 0x1A, 0x1D, 0x0A, 0x1E, 0x02, 0x1E, 0x02, 0x1F, 0x0A, 0x3E, 0x12, 0x3E, 0x1A, 0x1D, 0x19, 0xBC, 0x21, 0xBB, 0x5A, 0xDE, 0x5A, 0xDD, 0x4A, 0x7C, 0x3A, 0x3B, 0x22, 0x3A, 0x12, 0xBB, 0x13, 0xFD, 0x14, 0xFE, 0x0D, 0xDF, 0x0E, 0x5F, 0x0E, 0xFF, 0x0F, 0x3F, 0x0F, 0x9F, 0x0F, 0xBF, 0x01, 0x0F, 0xDF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x8B, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x7F, 0x36, 0xFE, 0x4E, 0xDF, 0x76, 0x9F, 0x6C, 0x58, 0x51, 0xF0, 0x92, 0x73, 0xA9, 0xF2, 0xB9, 0xB3, 0xC9, 0xB3, 0x02, 0xC9, 0x93, 0x8A, 0xC9, 0xB4, 0xC1, 0x93, 0xC1, 0xB4, 0xB9, 0xD4, 0xB2, 0x15, 0x99, 0xF5, 0x69, 0x52, 0x59, 0x32, 0x51, 0x52, 0x51, 0x72, 0x49, 0x72, 0x01, 0x41, 0x72, 0x80, 0x39, 0x72, 0x01, 0x39, 0x52, 0x82, 0x39, 0x72, 0x31, 0x51, 0x31, 0x31, 0x02, 0x31, 0x51, 0x01, 0x31, 0x50, 0x02, + 0x29, 0x50, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x05, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x07, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x06, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF6, 0x19, 0x94, 0x11, 0x53, 0x11, 0x12, 0x01, 0x19, 0x31, 0x84, 0x19, 0x10, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x08, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x06, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x28, 0xEF, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x87, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x20, 0xEF, 0x01, 0x29, 0x0F, + 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x09, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x07, + 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x11, 0x85, 0x21, 0x32, 0x19, 0x12, 0x11, 0x12, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD7, 0x01, 0x09, 0xD8, 0x03, 0x09, 0xD9, 0x87, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0x96, 0x19, 0xB7, 0x19, 0x95, 0x11, 0x33, 0x10, 0xF1, 0x11, 0x11, 0x01, 0x19, 0x31, 0x88, 0x21, 0x52, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x11, 0xB6, 0x09, 0xB7, 0x09, 0xF9, 0x09, 0xD8, 0x01, 0x01, 0xD9, 0x81, 0x01, 0xF9, 0x01, 0xD9, 0x01, 0x01, 0xB8, 0x86, 0x09, 0xF9, 0x09, 0xF8, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0x54, 0x19, 0x32, 0x19, 0x11, 0x02, 0x21, 0x31, 0x85, 0x19, 0x11, 0x10, 0xF1, 0x11, 0x33, 0x11, 0x95, 0x11, 0xB6, 0x09, 0xD7, 0x01, 0x09, 0xF9, 0x02, 0x01, 0xD9, 0x02, 0x01, 0xD8, 0x01, 0x09, 0xD8, 0x83, 0x11, 0xF7, 0x19, 0xD6, 0x11, 0x32, 0x19, 0x11, 0x01, 0x21, 0x51, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x11, 0x32, 0x87, 0x11, 0x74, 0x11, 0xB6, 0x19, 0xF8, 0x11, 0xF8, 0x09, 0xD8, 0x01, 0xD8, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0x01, 0xD9, 0x87, 0x01, 0xF9, 0x0A, 0x19, 0x12, 0x19, 0x11, 0xF7, 0x11, 0x74, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x8A, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, + 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x05, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x05, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x20, 0xEE, 0x01, 0x20, 0xCD, 0x84, 0x28, 0x8C, 0x38, 0xEC, 0x7A, 0x92, 0xBC, 0x79, 0xDD, 0x5C, 0x03, 0xD4, 0xFA, 0x06, 0xD4, 0xD9, 0x80, 0xD4, 0xD8, 0x02, 0xD4, 0xB8, 0x03, 0xCC, 0xB8, 0x80, 0xD4, 0xD8, 0x05, 0xCC, 0xD8, 0x01, 0xCC, 0xB8, 0x07, 0xCC, 0xD8, 0x80, 0xCC, 0xB8, 0x01, 0xCC, 0xD8, 0x03, 0xCC, 0xB8, 0x22, 0xD4, 0xB8, 0x09, 0xCC, 0xB8, 0x01, 0xCC, 0xD8, 0x81, 0xD4, 0xD8, 0xCC, 0xB8, 0x0A, 0xD4, 0xB8, 0x81, 0xD4, 0xD8, 0xD4, 0xB8, 0x01, 0xCC, 0xB8, 0x01, 0xD4, 0xB8, 0x12, 0xCC, 0xB8, 0x81, 0xD4, 0xD8, 0xCC, 0xB8, 0x04, 0xCC, 0xD8, 0x0C, 0xCC, 0xB8, 0x07, 0xD4, 0xB8, 0x01, 0xD4, 0xD8, 0x83, 0xD4, 0xB8, 0xD4, 0xD8, 0xCC, 0xB8, 0xD4, 0xD8, 0x09, 0xD4, 0xB8, 0x80, 0xD4, 0xD8, 0x06, 0xCC, 0xB8, 0x80, 0xD4, 0xB8, 0x02, 0xCC, 0xB8, 0x81, 0xD4, 0xB8, 0xCC, 0xB8, 0x02, 0xD4, 0xB8, 0x0F, 0xCC, 0xB8, 0x01, 0xD4, 0xB8, 0x80, 0xCC, 0xB8, 0x01, 0xD4, 0xB8, 0x0F, 0xCC, 0xB8, 0x01, 0xD4, 0xB8, + 0x01, 0xCC, 0xB8, 0x01, 0xD4, 0xB8, 0x01, 0xD4, 0x98, 0x8C, 0xD4, 0x78, 0xDC, 0x78, 0xDC, 0x58, 0xDC, 0x17, 0xDB, 0xD7, 0xD3, 0x96, 0xD3, 0x76, 0xDB, 0x56, 0xDB, 0x36, 0xDA, 0xF6, 0xD2, 0xD5, 0xDA, 0xB5, 0xDA, 0x95, 0x02, 0xD2, 0x74, 0x82, 0xD2, 0x75, 0xC2, 0x54, 0xBA, 0x34, 0x04, 0xB2, 0x14, 0x01, 0xB1, 0xF4, 0x80, 0xB9, 0xF4, 0x02, 0xB1, 0xD3, 0x84, 0xB1, 0xD2, 0xB2, 0x12, 0xCB, 0x15, 0xDB, 0xD8, 0xDC, 0x18, 0x01, 0xDC, 0x78, 0x01, 0xD4, 0x78, 0x04, 0xD4, 0x98, 0x81, 0xCC, 0xB8, 0xD4, 0x98, 0x05, 0xD4, 0xB8, 0x80, 0xCC, 0x98, 0x02, 0xD4, 0xB8, 0x83, 0xD4, 0x98, 0xD4, 0xB8, 0xD4, 0x98, 0xD4, 0xB8, 0x01, 0xD4, 0x98, 0x80, 0xD4, 0xB8, 0x01, 0xD4, 0x98, 0x05, 0xDC, 0x98, 0x80, 0xE4, 0xB8, 0x24, 0xE4, 0x98, 0x04, 0xE4, 0x78, 0x80, 0xE4, 0x77, 0x08, 0xE4, 0x57, 0x82, 0xE4, 0x37, 0xE4, 0x57, 0xDC, 0x37, 0x02, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0xA2, 0xE4, 0x58, 0xEC, 0x58, 0xEC, 0x59, 0xEC, 0x79, 0xE4, 0x7A, 0xCC, 0x3B, 0x9B, 0x7B, 0x41, 0xB7, 0x29, 0xBA, 0x22, 0x1C, 0x1A, 0x3D, 0x0A, 0x3E, 0x0A, 0x3F, 0x02, 0x3F, 0x0A, 0x3E, 0x12, 0x5E, 0x12, 0x3D, 0x11, 0xFC, 0x19, 0xDB, 0x42, 0x7D, 0x5A, 0xFE, 0x42, 0x9D, 0x32, 0x3C, 0x19, 0xFA, 0x0A, 0x5A, 0x0B, 0x7C, 0x0C, 0x9E, 0x0D, 0x9F, 0x0E, 0x3F, 0x0E, 0xDF, 0x0F, 0x3F, 0x0F, 0x7F, 0x0F, 0xBF, 0x0F, 0xDF, 0x0F, 0xFF, 0x01, 0x07, 0xDF, 0x9B, 0x07, 0xBF, 0x07, 0x9F, 0x0F, 0x9F, 0x17, 0x7F, 0x27, 0x7F, 0x37, 0x3F, 0x46, 0xDE, 0x76, 0xBF, 0x74, 0xB9, 0x5A, 0x71, 0x9A, 0x94, 0xB2, 0x33, + 0xB9, 0xD3, 0xC9, 0xB3, 0xC1, 0x73, 0xC9, 0x73, 0xC9, 0x93, 0xC9, 0x94, 0xC1, 0x93, 0xC1, 0xB4, 0xB9, 0xD4, 0xB2, 0x15, 0x99, 0xF5, 0x69, 0x32, 0x59, 0x11, 0x51, 0x52, 0x51, 0x93, 0x49, 0x72, 0x01, 0x41, 0x72, 0x01, 0x39, 0x51, 0x82, 0x39, 0x31, 0x39, 0x51, 0x39, 0x72, 0x02, 0x31, 0x51, 0x81, 0x31, 0x50, 0x29, 0x30, 0x01, 0x31, 0x51, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x29, 0x31, 0x09, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8E, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x19, 0x94, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x73, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x20, 0xF0, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, + 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x87, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x20, 0xEF, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, + 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x86, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x20, 0xEF, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x87, 0x21, 0x31, 0x21, 0x11, 0x21, 0x32, 0x19, 0x12, 0x11, 0x13, 0x11, 0x54, 0x11, 0x95, 0x11, 0xB7, 0x01, 0x09, 0xD8, 0x81, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x87, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0x97, 0x11, 0x96, 0x19, 0x95, 0x11, 0x13, 0x10, 0xF1, 0x11, 0x11, 0x01, 0x19, 0x31, 0x81, 0x21, 0x32, 0x19, 0x32, 0x01, 0x11, 0x32, 0x83, 0x11, 0x74, 0x11, 0xD6, 0x11, 0xD8, 0x09, 0xD8, 0x06, 0x01, 0xD9, 0x87, 0x01, 0xB8, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xB7, 0x19, 0x95, 0x19, 0x53, 0x19, 0x12, 0x01, 0x21, 0x31, 0x84, 0x19, 0x11, 0x10, 0xF1, 0x11, 0x33, 0x11, 0x95, 0x11, 0xB6, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xF9, 0x06, 0x01, 0xD9, 0x87, 0x09, 0xD8, 0x11, 0xF8, 0x11, 0xD7, 0x19, 0xF6, 0x11, 0x53, 0x19, 0x31, 0x21, 0x31, 0x21, 0x52, 0x01, 0x19, 0x31, 0x01, + 0x11, 0x32, 0x85, 0x11, 0x54, 0x19, 0xD6, 0x1A, 0x18, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xB8, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x02, 0x01, 0xD9, 0x86, 0x0A, 0x19, 0x12, 0x19, 0x11, 0xF7, 0x11, 0x74, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x0B, 0x21, 0x30, 0x08, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x20, 0xEE, 0x87, 0x20, 0xCD, 0x20, 0xAC, 0x20, 0x6B, 0x51, 0xAF, 0xB4, 0x59, 0xCC, 0xDA, 0xD4, 0xDA, 0xD4, 0xFA, 0x02, 0xD4, 0xD9, 0x80, 0xD4, 0xB9, 0x02, 0xD4, 0xB8, 0x01, 0xCC, 0xB8, 0x01, 0xCC, 0x98, 0x80, 0xCC, 0xB8, 0x04, 0xCC, 0x98, 0x0D, 0xCC, 0x97, 0x80, 0xC4, 0x97, 0x01, 0xCC, 0x97, 0x80, 0xC4, 0x97, 0x0B, 0xCC, 0x97, 0x05, 0xCC, 0x77, 0x04, 0xCC, 0x97, 0x01, 0xCC, 0x77, 0x80, 0xCC, 0x97, 0x01, 0xCC, 0x77, 0x01, 0xCC, 0x97, 0x07, 0xCC, 0x77, 0x80, 0xCC, 0x98, 0x02, 0xCC, 0x97, 0x01, 0xCC, 0x77, 0x1D, 0xCC, 0x97, + 0x80, 0xCC, 0x77, 0x02, 0xCC, 0x97, 0x82, 0xCC, 0x98, 0xCC, 0x97, 0xCC, 0x98, 0x01, 0xCC, 0x77, 0x01, 0xCC, 0x98, 0x80, 0xCC, 0x77, 0x01, 0xCC, 0x98, 0x81, 0xCC, 0x97, 0xCC, 0x98, 0x0B, 0xCC, 0x97, 0x01, 0xCC, 0x98, 0x01, 0xCC, 0x97, 0x80, 0xCC, 0x77, 0x02, 0xCC, 0x97, 0x81, 0xCC, 0x77, 0xCC, 0x97, 0x01, 0xCC, 0x98, 0x0D, 0xCC, 0x97, 0x01, 0xCC, 0x77, 0x05, 0xCC, 0x97, 0x80, 0xCC, 0x77, 0x03, 0xCC, 0x97, 0x01, 0xCC, 0x77, 0x08, 0xCC, 0x97, 0x01, 0xCC, 0x77, 0x01, 0xCC, 0x97, 0x80, 0xCC, 0x77, 0x06, 0xCC, 0x97, 0x01, 0xCC, 0x77, 0x01, 0xCC, 0x97, 0x80, 0xCC, 0x77, 0x08, 0xCC, 0x97, 0x80, 0xCC, 0x77, 0x05, 0xCC, 0x97, 0x02, 0xCC, 0x98, 0x81, 0xCC, 0x78, 0xCC, 0x77, 0x04, 0xCC, 0x78, 0x90, 0xCC, 0x98, 0xCC, 0x78, 0xD4, 0x78, 0xD4, 0x58, 0xD4, 0x78, 0xD4, 0x38, 0xD4, 0x17, 0xD3, 0xD7, 0xD3, 0xB7, 0xD3, 0x76, 0xD3, 0x56, 0xD3, 0x36, 0xDB, 0x16, 0xDA, 0xF6, 0xD2, 0xB5, 0xDA, 0x95, 0xDA, 0x75, 0x01, 0xD2, 0x54, 0x83, 0xD2, 0x34, 0xD2, 0x54, 0xCA, 0x34, 0xC2, 0x14, 0x01, 0xB9, 0xF3, 0x03, 0xB9, 0xF4, 0x02, 0xB9, 0xD3, 0x91, 0xB1, 0xB2, 0xA9, 0xD2, 0xB2, 0x12, 0xCB, 0x36, 0xDB, 0xF8, 0xDC, 0x38, 0xD4, 0x37, 0xD4, 0x58, 0xD4, 0x57, 0xD4, 0x78, 0xD4, 0x57, 0xCC, 0x57, 0xD4, 0x78, 0xCC, 0x78, 0xCC, 0x77, 0xCC, 0x98, 0xCC, 0x78, 0xCC, 0x77, 0x02, 0xCC, 0x78, 0x80, 0xCC, 0x98, 0x02, 0xCC, 0x78, 0x02, 0xCC, 0x77, 0x05, 0xCC, 0x78, 0x04, 0xD4, 0x78, 0x80, 0xDC, 0x78, 0x04, 0xDC, 0x77, 0x81, 0xE4, 0x78, 0xE4, 0x77, 0x01, 0xDC, 0x77, + 0x81, 0xE4, 0x77, 0xDC, 0x77, 0x01, 0xE4, 0x77, 0x80, 0xDC, 0x77, 0x02, 0xE4, 0x77, 0x81, 0xDC, 0x77, 0xE4, 0x98, 0x01, 0xE4, 0x77, 0x06, 0xE4, 0x78, 0x82, 0xDC, 0x57, 0xE4, 0x78, 0xDC, 0x78, 0x01, 0xDC, 0x77, 0x83, 0xDC, 0x78, 0xDC, 0x77, 0xDC, 0x78, 0xDC, 0x57, 0x01, 0xDC, 0x77, 0x01, 0xE4, 0x77, 0x80, 0xE4, 0x57, 0x01, 0xE4, 0x77, 0x0A, 0xE4, 0x57, 0x82, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x82, 0xE4, 0x57, 0xE4, 0x37, 0xE4, 0x57, 0x01, 0xEC, 0x58, 0x9D, 0xEC, 0x59, 0xDC, 0x5A, 0xCC, 0x3B, 0x9B, 0x9B, 0x49, 0xF8, 0x31, 0xDA, 0x22, 0x1C, 0x1A, 0x5D, 0x0A, 0x3E, 0x0A, 0x5F, 0x02, 0x5F, 0x02, 0x5E, 0x0A, 0x5E, 0x12, 0x5E, 0x1A, 0x5E, 0x1A, 0x3D, 0x2A, 0x3C, 0x4A, 0xFF, 0x3A, 0x9D, 0x2A, 0x5C, 0x19, 0xFB, 0x0A, 0x3A, 0x0A, 0xFC, 0x0B, 0xFD, 0x0D, 0x3F, 0x0D, 0xFF, 0x0E, 0xBF, 0x0F, 0x3F, 0x0F, 0x9F, 0x0F, 0xBF, 0x01, 0x0F, 0xFF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x8C, 0x0F, 0x9F, 0x17, 0x9F, 0x27, 0x7F, 0x2F, 0x3F, 0x46, 0xDF, 0x6E, 0x9F, 0x74, 0xFA, 0x5A, 0x51, 0x92, 0x93, 0xAA, 0x13, 0xB9, 0xD3, 0xC1, 0xB3, 0xC1, 0x73, 0x01, 0xC9, 0x93, 0x8A, 0xC9, 0xB4, 0xC1, 0x93, 0xC1, 0xB4, 0xB9, 0xF4, 0xB2, 0x15, 0x9A, 0x15, 0x69, 0x32, 0x59, 0x12, 0x51, 0x52, 0x51, 0x72, 0x49, 0x92, 0x01, 0x41, 0x72, 0x81, 0x39, 0x52, 0x41, 0x72, 0x01, 0x39, 0x51, 0x81, 0x39, 0x71, 0x31, 0x71, 0x01, 0x31, 0x51, 0x80, 0x31, 0x50, 0x01, 0x29, 0x50, 0x0A, 0x29, 0x30, 0x01, 0x21, 0x30, 0x04, 0x29, 0x30, 0x01, + 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x8E, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0x53, 0x19, 0x74, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF6, 0x19, 0xB5, 0x11, 0x73, 0x11, 0x12, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x20, 0xF0, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x84, 0x20, 0xEF, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, + 0x0F, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x89, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x50, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x05, 0x21, 0x10, 0x0A, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, + 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x90, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x10, 0xF2, 0x11, 0x13, 0x11, 0x54, 0x11, 0x96, 0x09, 0x96, 0x09, 0x97, 0x09, 0xD8, 0x09, 0xD9, 0x09, 0xF9, 0x01, 0x09, 0xD9, 0x01, 0x09, 0xB8, 0x86, 0x11, 0xD8, 0x11, 0x96, 0x19, 0x95, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x52, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x87, 0x11, 0x74, 0x11, 0xB6, 0x09, 0xD7, 0x09, 0xD8, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x02, 0x01, 0xD9, 0x8C, 0x01, 0xB8, 0x09, 0xB7, 0x11, 0x96, 0x19, 0x95, 0x19, 0x53, 0x19, 0x12, 0x19, 0x11, 0x18, 0xF1, 0x10, 0xF1, 0x11, 0x53, 0x11, 0x95, 0x11, 0xD7, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xF9, 0x01, 0x01, 0xD9, 0x85, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0xD7, 0x21, 0xF7, 0x11, 0x12, 0x11, 0x11, 0x01, 0x21, 0x52, 0x01, 0x19, 0x32, 0x85, 0x09, 0x12, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xF8, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x88, 0x01, 0xDA, 0x01, 0xFA, 0x0A, 0x19, 0x09, 0xF8, 0x11, 0xD7, 0x11, 0x74, 0x19, 0x53, + 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x07, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x8B, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x0B, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x20, 0xEE, 0x85, 0x20, 0xCD, 0x20, 0x8C, 0x41, 0x0D, 0x93, 0x55, 0xD5, 0x1C, 0xD4, 0xFA, 0x01, 0xD4, 0xD9, 0x80, 0xD4, 0xB9, 0x02, 0xD4, 0x98, 0x01, 0xCC, 0x98, 0x80, 0xCC, 0x78, 0x01, 0xCC, 0x98, 0x80, 0xCC, 0x78, 0x05, 0xC4, 0x77, 0x80, 0xC4, 0x57, 0x12, 0xC4, 0x77, 0x80, 0xC4, 0x57, 0x02, 0xC4, 0x77, 0x83, 0xC4, 0x57, 0xC4, 0x77, 0xC4, 0x57, 0xC4, 0x77, 0x05, 0xC4, 0x57, 0x02, 0xC4, 0x56, 0x01, 0xC4, 0x57, 0x81, 0xC4, 0x77, 0xC4, 0x56, 0x06, 0xC4, 0x57, 0x80, 0xC4, 0x56, 0x0D, 0xC4, 0x57, 0x83, 0xC4, 0x77, 0xC4, 0x57, 0xC4, 0x77, 0xC4, 0x57, 0x02, 0xC4, 0x77, 0x87, 0xC4, 0x57, 0xC4, 0x77, 0xC4, 0x56, 0xC4, 0x77, 0xC4, 0x56, 0xC4, 0x77, 0xC4, 0x57, 0xC4, 0x77, 0x03, 0xC4, 0x57, 0x81, 0xC4, 0x56, 0xC4, 0x57, 0x02, 0xC4, 0x56, 0x0D, 0xC4, 0x57, 0x80, 0xC4, 0x77, 0x04, 0xC4, 0x57, 0x01, 0xC4, 0x77, 0x01, + 0xC4, 0x57, 0x02, 0xC4, 0x77, 0x85, 0xC4, 0x57, 0xC4, 0x77, 0xC4, 0x56, 0xC4, 0x77, 0xC4, 0x57, 0xC4, 0x77, 0x07, 0xC4, 0x57, 0x80, 0xC4, 0x56, 0x08, 0xC4, 0x57, 0x82, 0xC4, 0x77, 0xC4, 0x57, 0xC4, 0x56, 0x08, 0xC4, 0x57, 0x82, 0xC4, 0x56, 0xC4, 0x57, 0xC4, 0x56, 0x1A, 0xC4, 0x57, 0x01, 0xC4, 0x56, 0x02, 0xC4, 0x57, 0x80, 0xC4, 0x56, 0x06, 0xC4, 0x57, 0x80, 0xC4, 0x56, 0x12, 0xC4, 0x57, 0x84, 0xCC, 0x78, 0xC4, 0x57, 0xCC, 0x57, 0xCC, 0x58, 0xCC, 0x57, 0x01, 0xCC, 0x37, 0x8E, 0xD4, 0x17, 0xD3, 0xF7, 0xD3, 0xB7, 0xD3, 0x76, 0xD3, 0x36, 0xD3, 0x16, 0xD2, 0xF5, 0xD2, 0xD5, 0xD2, 0xB5, 0xDA, 0xB5, 0xDA, 0x95, 0xDA, 0x75, 0xDA, 0x55, 0xD2, 0x34, 0xD2, 0x14, 0x01, 0xCA, 0x14, 0x83, 0xC9, 0xF4, 0xC1, 0xF3, 0xC1, 0xD3, 0xC1, 0xF3, 0x03, 0xB9, 0xD3, 0x88, 0xB9, 0xF3, 0xB1, 0xB2, 0xB1, 0xD2, 0xA9, 0xF2, 0xBA, 0xB4, 0xDC, 0x18, 0xD4, 0x38, 0xD4, 0x17, 0xCC, 0x17, 0x04, 0xCC, 0x37, 0x02, 0xCC, 0x57, 0x01, 0xC4, 0x57, 0x80, 0xC4, 0x37, 0x07, 0xC4, 0x57, 0x80, 0xC4, 0x37, 0x01, 0xC4, 0x57, 0x80, 0xCC, 0x57, 0x01, 0xC4, 0x57, 0x04, 0xCC, 0x57, 0x80, 0xD4, 0x58, 0x02, 0xD4, 0x57, 0x04, 0xDC, 0x57, 0x02, 0xDC, 0x77, 0x07, 0xDC, 0x57, 0x01, 0xDC, 0x77, 0x80, 0xE4, 0x77, 0x02, 0xDC, 0x77, 0x03, 0xDC, 0x57, 0x80, 0xE4, 0x77, 0x0D, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x57, 0x08, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x81, 0xDC, 0x37, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x81, 0xE4, 0x37, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x01, 0xEC, 0x58, 0x88, 0xEC, + 0x59, 0xE4, 0x5A, 0xCC, 0x1A, 0x9B, 0x9A, 0x52, 0x18, 0x31, 0xFA, 0x2A, 0x3C, 0x1A, 0x5D, 0x0A, 0x5E, 0x01, 0x0A, 0x7F, 0x80, 0x02, 0x7F, 0x01, 0x0A, 0x7E, 0x90, 0x12, 0x7E, 0x1A, 0x5D, 0x22, 0x5D, 0x32, 0xBE, 0x32, 0x9E, 0x22, 0x5D, 0x12, 0x1B, 0x0A, 0x5B, 0x02, 0xBB, 0x03, 0x7C, 0x04, 0x7D, 0x0D, 0x9F, 0x16, 0xBF, 0x0F, 0x3F, 0x0F, 0x9F, 0x0F, 0xBF, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x99, 0x07, 0x9F, 0x17, 0x9F, 0x1F, 0x7F, 0x2F, 0x3F, 0x46, 0xDE, 0x6E, 0xBF, 0x7D, 0x3B, 0x52, 0x51, 0x92, 0x73, 0xAA, 0x13, 0xB9, 0xF3, 0xC1, 0xB3, 0xC9, 0xB3, 0xC9, 0xB4, 0xC9, 0x93, 0xC1, 0x93, 0xC1, 0xB3, 0xB9, 0xB3, 0xB9, 0xF4, 0xB2, 0x15, 0x9A, 0x36, 0x69, 0x52, 0x59, 0x32, 0x51, 0x32, 0x51, 0x73, 0x41, 0x52, 0x01, 0x41, 0x72, 0x01, 0x39, 0x52, 0x02, 0x39, 0x51, 0x80, 0x31, 0x71, 0x01, 0x31, 0x51, 0x01, 0x31, 0x50, 0x04, 0x29, 0x50, 0x04, 0x29, 0x30, 0x04, 0x21, 0x30, 0x04, 0x29, 0x30, 0x02, 0x29, 0x10, 0x09, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x0B, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x51, 0x01, 0x19, 0x11, 0x8A, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x21, 0xD5, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, + 0x80, 0x21, 0x50, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x06, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, + 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x09, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x84, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x06, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x87, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x09, 0xB8, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xD9, + 0x01, 0x09, 0xD9, 0x88, 0x09, 0xD8, 0x11, 0xD8, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x10, 0xF1, 0x19, 0x11, 0x19, 0x31, 0x19, 0x51, 0x01, 0x19, 0x31, 0x86, 0x11, 0x32, 0x11, 0x53, 0x11, 0x94, 0x11, 0xD6, 0x09, 0xB7, 0x01, 0xB8, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x91, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0xD9, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0xB7, 0x11, 0xB6, 0x19, 0x74, 0x19, 0x53, 0x19, 0x12, 0x19, 0x11, 0x10, 0xD1, 0x11, 0x33, 0x11, 0x95, 0x11, 0xB7, 0x09, 0xB7, 0x01, 0xB8, 0x09, 0xF9, 0x03, 0x01, 0xD9, 0x82, 0x01, 0xFA, 0x02, 0x1A, 0x01, 0xF9, 0x01, 0x01, 0xD9, 0x85, 0x01, 0xB8, 0x09, 0xB8, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x12, 0x19, 0x11, 0x01, 0x19, 0x32, 0x87, 0x11, 0x11, 0x11, 0x32, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xD7, 0x09, 0xF8, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x88, 0x01, 0xFA, 0x09, 0xFA, 0x09, 0xF9, 0x09, 0xF8, 0x11, 0xB6, 0x19, 0x74, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x10, 0x29, 0x30, 0x83, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x29, 0x2F, 0x02, 0x29, + 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x89, 0x20, 0xEF, 0x20, 0xEE, 0x28, 0xCD, 0x20, 0x6B, 0x51, 0x8F, 0xB4, 0x38, 0xD4, 0xDB, 0xD4, 0xFA, 0xDC, 0xD9, 0xD4, 0xB9, 0x01, 0xD4, 0x98, 0x02, 0xCC, 0x78, 0x03, 0xC4, 0x77, 0x84, 0xBC, 0x76, 0xBC, 0x56, 0xB4, 0x35, 0xAC, 0x35, 0xAC, 0x15, 0x16, 0xAC, 0x14, 0x80, 0xAB, 0xF4, 0x08, 0xAC, 0x14, 0x03, 0xAB, 0xF4, 0x08, 0xAC, 0x14, 0x04, 0xAB, 0xF4, 0x80, 0xAC, 0x14, 0x05, 0xAB, 0xF4, 0x81, 0xAC, 0x14, 0xAB, 0xF4, 0x08, 0xAC, 0x14, 0x82, 0xAB, 0xF4, 0xAC, 0x14, 0xAB, 0xF4, 0x0A, 0xAC, 0x14, 0x80, 0xAB, 0xF4, 0x01, 0xAC, 0x14, 0x80, 0xAB, 0xF4, 0x09, 0xAC, 0x14, 0x80, 0xAB, 0xF4, 0x17, 0xAC, 0x14, 0x02, 0xAB, 0xF4, 0x02, 0xAC, 0x14, 0x03, 0xAB, 0xF4, 0x82, 0xAC, 0x14, 0xAB, 0xF4, 0xAC, 0x14, 0x01, 0xAB, 0xF4, 0x03, 0xAC, 0x14, 0x09, 0xAB, 0xF4, 0x80, 0xAC, 0x14, 0x0D, 0xAB, 0xF4, 0x02, 0xAC, 0x14, 0x02, 0xAB, 0xF4, 0x80, 0xAC, 0x14, 0x03, 0xAB, 0xF4, 0x80, 0xAC, 0x14, 0x0A, 0xAB, 0xF4, 0x82, 0xA3, 0xF4, 0xAB, 0xF4, 0xA3, 0xF4, 0x04, 0xAB, 0xF4, 0x80, 0xA3, 0xF4, 0x0D, 0xAB, 0xF4, 0x03, 0xAC, 0x15, 0x01, 0xAB, 0xF5, 0x03, 0xB4, 0x15, 0x8E, 0xB3, 0xF5, 0xBB, 0xD5, 0xC3, 0xD5, 0xCB, 0x96, 0xD3, 0x56, 0xD3, 0x15, 0xD2, 0xF5, 0xD2, 0xD5, 0xD2, 0xB4, 0xD2, 0x95, 0xDA, 0x95, 0xDA, 0x75, 0xD2, 0x55, 0xD2, 0x34, 0xC9, 0xF4, 0x03, 0xC9, 0xF3, 0x02, 0xC1, 0xD3, 0x01, 0xB9, 0xD3, 0x01, 0xB9, 0xB3, 0x89, 0xB1, 0xB2, 0xA9, 0xD2, 0xA1, 0xF1, 0xB2, 0xD3, 0xDC, 0xB9, 0xDC, + 0xD9, 0xCC, 0xB8, 0xCC, 0x97, 0xC4, 0x76, 0xBC, 0x35, 0x03, 0xB4, 0x15, 0x04, 0xAB, 0xF4, 0x80, 0xAB, 0xD4, 0x0A, 0xAB, 0xF4, 0x80, 0xAB, 0xF5, 0x01, 0xAB, 0xF4, 0x81, 0xAC, 0x15, 0xAB, 0xF4, 0x01, 0xB4, 0x15, 0x82, 0xBC, 0x15, 0xC4, 0x36, 0xCC, 0x37, 0x01, 0xD4, 0x37, 0x05, 0xDC, 0x57, 0x80, 0xDC, 0x77, 0x07, 0xDC, 0x57, 0x80, 0xE4, 0x57, 0x0D, 0xDC, 0x57, 0x84, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x36, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x05, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x02, 0xE4, 0x57, 0x82, 0xE4, 0x37, 0xDC, 0x37, 0xE4, 0x37, 0x04, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x02, 0xE4, 0x37, 0x01, 0xEC, 0x58, 0x89, 0xE4, 0x59, 0xDC, 0x5A, 0xCC, 0x1A, 0x9B, 0x7A, 0x5A, 0x58, 0x3A, 0x3A, 0x2A, 0x5C, 0x1A, 0x7D, 0x12, 0x7E, 0x0A, 0x7F, 0x01, 0x0A, 0x9F, 0x80, 0x02, 0x9E, 0x01, 0x0A, 0x7E, 0x81, 0x12, 0x9E, 0x1A, 0x7D, 0x01, 0x22, 0x9E, 0x89, 0x1A, 0x7D, 0x12, 0x5C, 0x0A, 0x7C, 0x02, 0x9C, 0x03, 0x1C, 0x03, 0xFC, 0x05, 0x1E, 0x16, 0x9F, 0x17, 0x3F, 0x17, 0x9F, 0x01, 0x0F, 0xBF, 0x80, 0x0F, 0xDF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x99, 0x0F, 0xBF, 0x17, 0x9F, 0x1F, 0x7F, 0x2F, 0x3F, 0x46, 0xFF, 0x6E, 0xBF, 0x85, 0x9D, 0x52, 0x71, 0x92, 0x93, 0xAA, 0x33, 0xB9, 0xB3, 0xC1, 0xB3, 0xC9, 0xB3, 0xC9, 0x93, 0xC1, 0x73, 0xC1, 0x93, 0xC1, 0xB3, 0xC1, 0xD4, 0xB9, 0xF4, 0xB2, 0x15, 0x9A, 0x15, 0x69, 0x32, 0x59, 0x32, 0x51, 0x32, 0x49, 0x52, 0x41, 0x52, 0x01, 0x41, 0x72, 0x80, 0x39, 0x72, 0x03, 0x39, 0x51, + 0x81, 0x31, 0x71, 0x31, 0x51, 0x01, 0x31, 0x50, 0x05, 0x29, 0x50, 0x03, 0x29, 0x30, 0x06, 0x21, 0x30, 0x05, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x08, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x50, 0x21, 0x51, 0x21, 0x31, 0x19, 0x10, 0x01, 0x19, 0x11, 0x8E, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x21, 0xF6, 0x22, 0x17, 0x21, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x19, 0x10, 0x21, 0x30, 0x19, 0x30, 0x21, 0x30, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x50, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, + 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x05, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x19, 0x11, 0x02, 0x21, 0x11, 0x03, 0x21, 0x31, 0x81, 0x19, 0x10, 0x21, 0x30, 0x19, 0x21, 0x31, 0x03, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x07, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, + 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x8A, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x11, 0x10, 0xF1, 0x11, 0x32, 0x11, 0x53, 0x11, 0x75, 0x11, 0x76, 0x11, 0xB7, 0x09, 0xD8, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0xB8, 0x01, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x85, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x10, 0xF1, 0x02, 0x19, 0x31, 0x88, 0x11, 0x31, 0x11, 0x32, 0x09, 0x32, 0x09, 0x74, 0x11, 0xD6, 0x09, 0xD7, 0x09, 0xF8, 0x01, 0xD8, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x8F, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0xB7, 0x19, 0x96, 0x19, 0x53, 0x11, 0x12, 0x10, 0xF1, 0x10, 0xD1, 0x11, 0x33, 0x19, 0x95, 0x11, 0x96, 0x09, 0xB7, 0x09, 0xF9, 0x02, 0x01, 0xD9, 0x03, 0x01, 0xFA, 0x03, 0x01, 0xD9, 0x8F, 0x09, 0xD8, 0x11, 0xD8, 0x19, 0xD7, 0x11, 0x54, 0x11, 0x33, 0x19, 0x52, 0x11, 0x11, 0x10, 0xF1, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD7, 0x09, 0xB7, 0x09, 0xF9, 0x01, 0xD9, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xB9, 0x03, 0x01, 0xDA, 0x86, 0x01, 0xD9, 0x09, 0xF9, 0x12, 0x18, 0x11, 0x96, 0x19, 0x53, 0x19, 0x11, 0x19, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, + 0x29, 0x30, 0x21, 0x30, 0x03, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x0F, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x09, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x20, 0xEE, 0x85, 0x20, 0xAD, 0x20, 0x6B, 0x72, 0x52, 0xCC, 0xDB, 0xD4, 0xFB, 0xD4, 0xDA, 0x01, 0xD4, 0xB9, 0x80, 0xD4, 0x98, 0x02, 0xCC, 0x78, 0x01, 0xC4, 0x57, 0x87, 0xBC, 0x56, 0xBC, 0x97, 0xC4, 0xD7, 0xC5, 0x17, 0xD5, 0xBA, 0xE6, 0x7C, 0xF7, 0x1F, 0xFF, 0x9F, 0x3C, 0xFF, 0xBF, 0x80, 0xFF, 0x9F, 0x1F, 0xFF, 0xBF, 0x80, 0xFF, 0x9F, 0x79, 0xFF, 0xBF, 0x81, 0xFF, 0x9F, 0xFF, 0xBF, 0x01, 0xFF, 0x9F, 0x80, 0xFF, 0xBF, 0x01, 0xFF, 0x9F, 0x85, 0xFF, 0x7F, 0xFF, 0x1F, 0xE4, 0x99, 0xC3, 0x14, 0xD2, 0xF5, 0xD2, 0xD5, 0x01, 0xD2, 0xB5, 0x86, 0xD2, 0x95, 0xD2, 0x75, 0xD2, 0x54, 0xD2, 0x14, 0xCA, 0x14, 0xD2, 0x14, 0xC9, 0xF3, 0x02, 0xC9, 0xD3, 0x02, 0xC1, 0xD3, 0x02, 0xB9, 0xB3, 0x86, 0xB1, 0x92, 0xA9, 0xB1, 0xA1, 0xF1, 0xBB, 0x95, 0xFE, 0x5E, 0xFF, 0x3F, 0xFF, 0x7F, 0x0B, 0xFF, 0x9F, 0x0F, 0xFF, 0xBF, 0x80, 0xFF, 0x9F, 0x01, 0xFF, 0xBF, 0x84, 0xFF, 0x9F, 0xFF, 0x5F, 0xCD, 0x39, 0xC4, 0x56, 0xCC, 0x36, 0x01, 0xD4, 0x37, 0x0D, 0xDC, 0x57, + 0x80, 0xE4, 0x57, 0x12, 0xDC, 0x57, 0x03, 0xDC, 0x36, 0x04, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x82, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xEC, 0x58, 0x8F, 0xEC, 0x59, 0xDC, 0x5A, 0xC3, 0xFA, 0xA3, 0x7A, 0x5A, 0x58, 0x42, 0x5A, 0x2A, 0x5C, 0x1A, 0x7D, 0x12, 0x7E, 0x0A, 0x9F, 0x02, 0x9F, 0x0A, 0xBF, 0x02, 0xBE, 0x02, 0x9E, 0x0A, 0x9E, 0x0A, 0xBE, 0x01, 0x12, 0xBE, 0x81, 0x1A, 0xBE, 0x12, 0x7E, 0x01, 0x0A, 0x9D, 0x89, 0x02, 0xBC, 0x02, 0xFC, 0x03, 0x9C, 0x04, 0x9D, 0x16, 0x1F, 0x16, 0xFF, 0x17, 0x7F, 0x17, 0xBF, 0x0F, 0xBF, 0x0F, 0xDF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x8D, 0x0F, 0xBF, 0x17, 0xBF, 0x1F, 0x7F, 0x2F, 0x5F, 0x3E, 0xDE, 0x66, 0x9F, 0x7D, 0x9C, 0x52, 0x72, 0x8A, 0x73, 0xAA, 0x33, 0xB1, 0xB3, 0xC1, 0x93, 0xC9, 0xB4, 0xC1, 0x93, 0x01, 0xC9, 0x93, 0x88, 0xC1, 0x93, 0xC1, 0xB3, 0xB9, 0xF4, 0xB2, 0x15, 0x9A, 0x35, 0x69, 0x32, 0x59, 0x12, 0x51, 0x52, 0x49, 0x52, 0x01, 0x49, 0x72, 0x83, 0x41, 0x72, 0x39, 0x72, 0x39, 0x51, 0x39, 0x71, 0x01, 0x39, 0x51, 0x80, 0x31, 0x71, 0x01, 0x31, 0x51, 0x01, 0x31, 0x50, 0x01, 0x29, 0x50, 0x81, 0x29, 0x30, 0x29, 0x50, 0x05, 0x29, 0x30, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x30, 0x29, 0x50, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, + 0x2F, 0x03, 0x29, 0x0F, 0x8D, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x87, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x19, 0x74, 0x19, 0xB5, 0x19, 0xD6, 0x01, 0x19, 0xB6, 0x82, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x88, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, + 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x84, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x19, 0x12, 0x03, 0x19, 0x32, 0x01, 0x21, 0x32, 0x07, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x52, 0x81, 0x19, 0x32, 0x19, 0x52, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x03, 0x19, 0x32, 0x80, 0x19, 0x52, 0x02, 0x19, 0x32, 0x02, 0x19, 0x31, 0x06, 0x19, 0x32, 0x01, 0x19, 0x31, 0x03, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x10, 0x04, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x0F, + 0x29, 0x30, 0x01, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x11, 0x84, 0x19, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x01, 0x09, 0xD8, 0x94, 0x09, 0xD9, 0x01, 0xB8, 0x01, 0xD9, 0x01, 0xB9, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x10, 0xF1, 0x21, 0x32, 0x21, 0x52, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x94, 0x11, 0xB6, 0x09, 0xD7, 0x02, 0x01, 0xD8, 0x01, 0x01, 0xD9, 0x84, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x8C, 0x09, 0xD9, 0x09, 0xB8, 0x19, 0xF8, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x32, 0x11, 0x12, 0x10, 0xD1, 0x11, 0x33, 0x11, 0x95, 0x11, 0x96, 0x11, 0xD8, 0x09, 0xD9, 0x02, 0x01, 0xD9, 0x80, 0x01, 0xDA, 0x03, 0x01, 0xFA, 0x8E, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xB9, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xD8, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x09, 0x11, 0x11, 0x32, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xD8, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x04, 0x01, 0xDA, 0x86, + 0x09, 0xFA, 0x09, 0xF9, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x74, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x08, 0x21, 0x10, 0x89, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x06, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x20, 0xEF, 0x20, 0xEE, 0x28, 0xCD, 0x20, 0x6B, 0x7A, 0xD3, 0xCC, 0xFB, 0xD4, 0xDA, 0x01, 0xD4, 0xB9, 0x8D, 0xD4, 0x99, 0xD4, 0x98, 0xCC, 0x78, 0xC4, 0x57, 0xC4, 0x77, 0xBC, 0x77, 0xB4, 0x36, 0xD5, 0x59, 0xEE, 0x7D, 0xFE, 0xFF, 0xFF, 0x5F, 0xFF, 0x7F, 0xFF, 0x9F, 0xFF, 0xBF, 0x02, 0xF7, 0xBF, 0x0B, 0xF7, 0xDF, 0x82, 0xF7, 0xBF, 0xF7, 0xDF, 0xF7, 0xBF, 0x21, 0xF7, 0xDF, 0x80, 0xF7, 0xBF, 0x1B, 0xF7, 0xDF, 0x01, 0xF7, 0xBF, 0x01, 0xF7, 0xDF, 0x80, 0xF7, 0xBF, 0x20, 0xF7, 0xDF, 0x80, 0xF7, 0xBF, 0x61, 0xF7, 0xDF, 0x07, 0xF7, 0xBF, 0x8B, 0xFF, 0x9F, 0xFF, 0x7F, 0xD4, 0x57, 0xC2, 0xD4, 0xCA, 0xB4, 0xCA, 0x94, 0xD2, 0x94, 0xD2, 0x95, 0xD2, 0x75, 0xD2, 0x54, 0xCA, 0x34, 0xCA, 0x13, 0x03, 0xC9, 0xF3, 0x01, 0xC9, 0xD3, 0x02, 0xC1, 0xD3, 0x01, 0xB9, 0xB3, 0x87, 0xB1, 0xB2, 0xB1, + 0xD2, 0xA1, 0xF1, 0xC3, 0xD6, 0xFE, 0xBF, 0xFF, 0x7F, 0xFF, 0xBF, 0xFF, 0xDF, 0x04, 0xF7, 0xDF, 0x80, 0xF7, 0xBF, 0x02, 0xF7, 0xDF, 0x01, 0xF7, 0xBF, 0x14, 0xF7, 0xDF, 0x84, 0xFF, 0xBF, 0xFF, 0x5F, 0xD5, 0x79, 0xC4, 0x36, 0xCC, 0x56, 0x01, 0xD4, 0x57, 0x82, 0xD4, 0x37, 0xDC, 0x57, 0xDC, 0x77, 0x06, 0xDC, 0x57, 0x80, 0xE4, 0x57, 0x0A, 0xDC, 0x57, 0x80, 0xE4, 0x57, 0x07, 0xDC, 0x57, 0x81, 0xDC, 0x36, 0xDC, 0x56, 0x03, 0xDC, 0x36, 0x81, 0xE4, 0x57, 0xDC, 0x37, 0x04, 0xE4, 0x57, 0x80, 0xDC, 0x37, 0x03, 0xE4, 0x37, 0x82, 0xE4, 0x57, 0xE4, 0x37, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x04, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x8D, 0xE4, 0x57, 0xEC, 0x58, 0xEC, 0x78, 0xE4, 0x59, 0xDC, 0x59, 0xC3, 0xF9, 0x9B, 0x7A, 0x5A, 0x78, 0x42, 0x7A, 0x2A, 0x7B, 0x1A, 0x7D, 0x12, 0x9E, 0x0A, 0x9E, 0x0A, 0xBF, 0x01, 0x0A, 0xDF, 0x01, 0x02, 0xBE, 0x83, 0x02, 0x9E, 0x0A, 0xBE, 0x12, 0xDF, 0x12, 0xBF, 0x01, 0x0A, 0x9E, 0x01, 0x02, 0xBD, 0x8A, 0x02, 0xFC, 0x03, 0x5C, 0x04, 0x1C, 0x0D, 0x9E, 0x16, 0xBF, 0x17, 0x5F, 0x17, 0x9F, 0x17, 0xBF, 0x0F, 0xDF, 0x07, 0xBF, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x8A, 0x17, 0xBF, 0x1F, 0x7F, 0x2F, 0x3F, 0x3E, 0xFF, 0x66, 0xBF, 0x7D, 0xDD, 0x52, 0x92, 0x8A, 0x93, 0xAA, 0x13, 0xB1, 0xB3, 0xC1, 0xB3, 0x01, 0xC9, 0xB3, 0x8B, 0xC9, 0x93, 0xC9, 0xB3, 0xC1, 0xB3, 0xC1, 0xB4, 0xB9, 0xD4, 0xB2, 0x15, 0x91, 0xF5, 0x69, 0x52, 0x59, 0x32, 0x51, 0x52, 0x51, 0x72, 0x49, 0x72, 0x01, 0x41, 0x72, 0x81, 0x39, 0x51, 0x39, 0x72, 0x02, 0x39, 0x71, + 0x02, 0x31, 0x51, 0x02, 0x31, 0x50, 0x80, 0x29, 0x50, 0x08, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x88, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x8D, 0x21, 0x51, 0x21, 0x32, 0x19, 0x32, 0x19, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x11, 0x96, 0x19, 0xB6, 0x22, 0x17, 0x19, 0xB5, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x03, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, + 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x84, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x86, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x06, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x8E, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x08, 0xF2, 0x03, 0x10, 0xF2, 0x02, 0x11, 0x12, 0x80, 0x11, 0x11, 0x01, 0x08, 0xF1, 0x80, 0x11, 0x12, 0x10, 0x08, 0xF1, 0x85, 0x08, 0xD1, 0x08, 0xF1, 0x11, 0x11, 0x10, 0xF1, 0x08, 0xF1, 0x11, 0x11, 0x01, 0x08, 0xF1, 0x80, 0x11, 0x12, 0x01, 0x09, 0x12, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x01, 0x19, 0x32, 0x02, 0x19, 0x31, 0x03, 0x21, 0x10, + 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x89, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x87, 0x29, 0x31, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x11, 0x96, 0x01, 0x11, 0xD8, 0x82, 0x09, 0xD8, 0x01, 0xB8, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x91, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x19, 0x33, 0x19, 0x12, 0x10, 0xF1, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB6, 0x09, 0xD7, 0x01, 0xD8, 0x02, 0x01, 0xF9, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x82, 0x01, 0xFA, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x8C, 0x01, 0xB8, 0x09, 0xB8, 0x09, 0xB7, 0x11, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x08, 0xF1, 0x08, 0xD1, 0x11, 0x33, 0x11, 0x95, 0x11, 0xD7, 0x11, 0xF8, 0x09, 0xD8, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x02, 0x01, 0xFA, 0x81, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x8D, 0x09, 0xD9, 0x11, 0xF8, 0x11, + 0xB7, 0x09, 0x34, 0x11, 0x13, 0x11, 0x32, 0x08, 0xF1, 0x09, 0x13, 0x11, 0x74, 0x19, 0xD7, 0x11, 0xD8, 0x12, 0x19, 0x09, 0xF9, 0x01, 0xD9, 0x07, 0x01, 0xDA, 0x88, 0x09, 0xFA, 0x01, 0xD9, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0x75, 0x19, 0x53, 0x19, 0x32, 0x19, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x87, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x0E, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x09, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x20, 0xEE, 0x84, 0x20, 0xCD, 0x28, 0x8B, 0x8B, 0x14, 0xD5, 0x1B, 0xD4, 0xDA, 0x01, 0xD4, 0xB9, 0x87, 0xD4, 0x99, 0xD4, 0x78, 0xCC, 0x78, 0xC4, 0x57, 0xBC, 0x56, 0xBC, 0xB7, 0xDD, 0xFB, 0xFF, 0x7F, 0x01, 0xFF, 0x9F, 0x80, 0xF7, 0x9F, 0x03, 0xF7, 0xBF, 0x04, 0xEF, 0xDF, 0x01, 0xEF, 0xFF, 0x09, 0xEF, 0xDF, 0x80, 0xEF, 0xBF, 0x04, 0xEF, 0xDF, 0x80, 0xEF, 0xBF, 0x08, 0xEF, 0xDF, 0x80, 0xEF, 0xFF, 0x7F, 0xEF, 0xDF, 0x0D, 0xEF, 0xDF, 0x80, 0xEF, 0xFF, 0x0A, 0xEF, 0xDF, 0x80, 0xEF, 0xFF, 0x03, 0xEF, 0xDF, 0x80, 0xEF, 0xFF, 0x18, 0xEF, 0xDF, 0x01, 0xF7, + 0xDF, 0x80, 0xEF, 0xBF, 0x04, 0xF7, 0xBF, 0x89, 0xFF, 0x7F, 0xCC, 0x17, 0xBA, 0x93, 0xC2, 0x73, 0xCA, 0x54, 0xCA, 0x74, 0xD2, 0x74, 0xD2, 0x54, 0xD2, 0x34, 0xCA, 0x13, 0x03, 0xC9, 0xF3, 0x01, 0xC9, 0xD3, 0x01, 0xC1, 0xD3, 0x01, 0xC1, 0xB3, 0x88, 0xB9, 0xB3, 0xB1, 0x92, 0xA9, 0xB1, 0x99, 0xD0, 0xB3, 0x74, 0xFF, 0x3F, 0xFF, 0x9F, 0xFF, 0xBF, 0xF7, 0xBF, 0x0A, 0xF7, 0xDF, 0x81, 0xEF, 0xDF, 0xF7, 0xDF, 0x01, 0xEF, 0xDF, 0x01, 0xF7, 0xDF, 0x05, 0xEF, 0xDF, 0x02, 0xEF, 0xFF, 0x04, 0xEF, 0xDF, 0x01, 0xF7, 0xDF, 0x88, 0xF7, 0xBF, 0xFF, 0xBF, 0xFF, 0x9F, 0xDD, 0x9A, 0xC4, 0x56, 0xCC, 0x36, 0xD4, 0x36, 0xD4, 0x37, 0xDC, 0x37, 0x12, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x03, 0xDC, 0x57, 0x83, 0xE4, 0x57, 0xDC, 0x57, 0xDC, 0x36, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x37, 0x06, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x80, 0xDC, 0x37, 0x02, 0xE4, 0x37, 0x80, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x80, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xEC, 0x58, 0x8A, 0xE4, 0x59, 0xDC, 0x59, 0xC3, 0xF9, 0x9B, 0x79, 0x62, 0x98, 0x42, 0x9A, 0x2A, 0x7B, 0x1A, 0x9D, 0x12, 0xBE, 0x0A, 0xBF, 0x0A, 0xDF, 0x01, 0x0A, 0xFF, 0x81, 0x02, 0xDF, 0x0A, 0xFF, 0x01, 0x02, 0xBE, 0x81, 0x0A, 0xDE, 0x0A, 0xDF, 0x02, 0x02, 0xBE, 0x89, 0x02, 0xDD, 0x02, 0xFD, 0x03, 0x3C, 0x03, 0xBC, 0x04, 0xFD, 0x16, 0x3F, 0x1F, 0x3F, 0x17, 0x9F, 0x17, 0xBF, 0x0F, 0xBF, 0x04, 0x07, 0xBF, 0x8D, 0x0F, 0x9F, 0x1F, + 0x7F, 0x27, 0x5F, 0x3E, 0xFF, 0x5E, 0xBF, 0x7D, 0xFD, 0x5B, 0x34, 0x8A, 0x93, 0xAA, 0x33, 0xB9, 0xD3, 0xC1, 0xB3, 0xC1, 0x93, 0xC9, 0x93, 0xC9, 0xB3, 0x01, 0xC1, 0x93, 0x86, 0xC1, 0xD4, 0xB9, 0xF4, 0xAA, 0x15, 0x91, 0xF5, 0x69, 0x32, 0x59, 0x52, 0x51, 0x53, 0x01, 0x49, 0x72, 0x01, 0x41, 0x72, 0x82, 0x39, 0x51, 0x39, 0x71, 0x39, 0x51, 0x01, 0x39, 0x71, 0x01, 0x31, 0x71, 0x80, 0x31, 0x51, 0x01, 0x31, 0x50, 0x03, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x05, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x89, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x19, 0x74, 0x11, 0x75, 0x11, 0x96, 0x22, 0x17, 0x21, 0xF7, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x10, 0x02, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, + 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x8D, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x84, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x03, 0x21, 0x10, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x10, + 0x09, 0x13, 0x09, 0x34, 0x03, 0x09, 0x13, 0x01, 0x09, 0x33, 0x80, 0x09, 0x13, 0x01, 0x09, 0x33, 0x01, 0x09, 0x13, 0x80, 0x09, 0x33, 0x01, 0x09, 0x13, 0x06, 0x09, 0x33, 0x01, 0x09, 0x13, 0x04, 0x09, 0x33, 0x01, 0x11, 0x33, 0x05, 0x11, 0x53, 0x80, 0x09, 0x53, 0x01, 0x11, 0x54, 0x01, 0x09, 0x53, 0x81, 0x09, 0x33, 0x11, 0x33, 0x01, 0x11, 0x12, 0x83, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x01, 0x21, 0x31, 0x86, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x03, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x11, 0x87, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x11, 0x54, 0x11, 0x96, 0x11, 0xB7, 0x09, 0xD8, 0x09, 0xB8, 0x01, 0x09, 0xD9, 0x80, 0x01, 0xB8, 0x01, 0x09, 0xD9, 0x85, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0x96, 0x11, 0x75, 0x11, 0x13, 0x11, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x86, 0x19, 0x11, 0x11, 0x12, 0x11, 0x53, 0x11, 0x75, 0x11, 0xD7, 0x09, 0xD7, 0x01, 0xB8, 0x02, 0x01, + 0xD9, 0x01, 0x01, 0xFA, 0x82, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x91, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0xD7, 0x19, 0xB6, 0x11, 0x33, 0x11, 0x12, 0x08, 0xD2, 0x11, 0x13, 0x19, 0x96, 0x19, 0xD7, 0x09, 0xD8, 0x01, 0xD8, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xDA, 0x04, 0x01, 0xFA, 0x02, 0x01, 0xD9, 0x8F, 0x09, 0xD9, 0x12, 0x19, 0x11, 0xD7, 0x11, 0x75, 0x11, 0x34, 0x11, 0x33, 0x08, 0xF2, 0x09, 0x13, 0x11, 0x75, 0x11, 0xD7, 0x11, 0xF8, 0x09, 0xD9, 0x09, 0xF9, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x88, 0x01, 0xD9, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0x95, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x0E, 0x29, 0x30, 0x0A, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x20, 0xEE, 0x8F, 0x20, 0xCD, 0x28, 0x8C, 0x7A, 0xD4, 0xD5, 0x1B, 0xD4, 0xDA, 0xDC, 0xB9, 0xDC, 0x99, 0xD4, 0x98, 0xD4, 0x78, 0xCC, 0x78, + 0xC4, 0x77, 0xB4, 0x56, 0xD5, 0x9A, 0xFF, 0x1F, 0xFF, 0x9F, 0xF7, 0xBF, 0x01, 0xF7, 0xDF, 0x06, 0xEF, 0xDF, 0x81, 0xE7, 0xDF, 0xEF, 0xDF, 0x01, 0xEF, 0xFF, 0x04, 0xE7, 0xDF, 0x02, 0xEF, 0xDF, 0x82, 0xE7, 0xDF, 0xEF, 0xDF, 0xE7, 0xDF, 0x01, 0xEF, 0xDF, 0x80, 0xE7, 0xDF, 0x03, 0xEF, 0xDF, 0x80, 0xE7, 0xDF, 0x03, 0xEF, 0xDF, 0x81, 0xEF, 0xFF, 0xE7, 0xDF, 0x17, 0xEF, 0xDF, 0x80, 0xEF, 0xFF, 0x01, 0xEF, 0xDF, 0x02, 0xE7, 0xDF, 0x01, 0xEF, 0xDF, 0x01, 0xE7, 0xDF, 0x84, 0xEF, 0xFF, 0xE7, 0xDF, 0xEF, 0xFF, 0xE7, 0xDF, 0xEF, 0xFF, 0x05, 0xEF, 0xDF, 0x06, 0xE7, 0xDF, 0x81, 0xEF, 0xDF, 0xE7, 0xDF, 0x10, 0xEF, 0xDF, 0x02, 0xE7, 0xDF, 0x01, 0xEF, 0xDF, 0x02, 0xE7, 0xDF, 0x06, 0xEF, 0xDF, 0x80, 0xEF, 0xFF, 0x08, 0xEF, 0xDF, 0x08, 0xE7, 0xDF, 0x09, 0xEF, 0xDF, 0x01, 0xE7, 0xDF, 0x01, 0xEF, 0xDF, 0x06, 0xE7, 0xDF, 0x80, 0xEF, 0xDF, 0x02, 0xE7, 0xDF, 0x06, 0xEF, 0xDF, 0x01, 0xE7, 0xDF, 0x19, 0xEF, 0xFF, 0x04, 0xEF, 0xDF, 0x01, 0xEF, 0xFF, 0x03, 0xE7, 0xFF, 0x80, 0xEF, 0xFF, 0x0D, 0xEF, 0xDF, 0x80, 0xF7, 0xDF, 0x01, 0xEF, 0xBF, 0x01, 0xF7, 0xBF, 0x84, 0xFF, 0x7F, 0xCB, 0xF6, 0xBA, 0x72, 0xC2, 0x53, 0xCA, 0x53, 0x01, 0xCA, 0x54, 0x80, 0xD2, 0x54, 0x01, 0xCA, 0x14, 0x02, 0xC9, 0xF3, 0x01, 0xC9, 0xD3, 0x01, 0xC1, 0xD3, 0x89, 0xC1, 0xB3, 0xC1, 0x93, 0xB9, 0xB3, 0xB9, 0x92, 0xB1, 0x92, 0xA1, 0xB1, 0xA2, 0xB2, 0xFE, 0xBF, 0xFF, 0x9F, 0xFF, 0xDF, 0x03, 0xF7, 0xDF, 0x12, 0xEF, 0xDF, 0x81, 0xEF, 0xFF, 0xE7, 0xDF, 0x07, 0xEF, 0xFF, 0x02, 0xEF, + 0xDF, 0x86, 0xF7, 0xDF, 0xFF, 0xBF, 0xFF, 0x7F, 0xD5, 0x99, 0xBC, 0x35, 0xCC, 0x36, 0xD4, 0x36, 0x01, 0xD4, 0x37, 0x80, 0xDC, 0x37, 0x09, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x03, 0xE4, 0x57, 0x02, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x06, 0xE4, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x80, 0xDC, 0x37, 0x04, 0xE4, 0x37, 0x03, 0xDC, 0x37, 0x80, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xEC, 0x58, 0x88, 0xE4, 0x58, 0xDC, 0x39, 0xBB, 0xD9, 0x9B, 0x7A, 0x62, 0x98, 0x42, 0x9A, 0x2A, 0x9C, 0x1A, 0xBD, 0x12, 0xDE, 0x01, 0x0A, 0xDF, 0x01, 0x02, 0xDF, 0x03, 0x02, 0xFF, 0x03, 0x02, 0xDF, 0x01, 0x02, 0xDE, 0x88, 0x02, 0xFD, 0x03, 0x1C, 0x03, 0x7C, 0x04, 0x5C, 0x0D, 0xDE, 0x1F, 0x3F, 0x1F, 0x7F, 0x17, 0x9F, 0x0F, 0xBF, 0x04, 0x07, 0xBF, 0x8B, 0x0F, 0x9F, 0x1F, 0x9F, 0x27, 0x5F, 0x3F, 0x1F, 0x56, 0xBF, 0x7E, 0x1E, 0x5B, 0x54, 0x8A, 0x93, 0xA2, 0x12, 0xB1, 0xD3, 0xC1, 0xB3, 0xC1, 0x93, 0x01, 0xC9, 0x93, 0x88, 0xC9, 0xB4, 0xC1, 0xB3, 0xB9, 0xB3, 0xBA, 0x15, 0xB2, 0x35, 0x91, 0xD4, 0x69, 0x32, 0x59, 0x52, 0x51, 0x52, 0x01, 0x49, 0x72, 0x01, 0x41, 0x72, 0x84, 0x41, 0x71, 0x39, 0x51, 0x39, 0x71, 0x39, 0x72, 0x31, 0x71, 0x03, 0x31, 0x51, 0x80, 0x31, 0x50, 0x0B, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, + 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x0C, 0x21, 0x2F, 0x93, 0x19, 0x0F, 0x21, 0x2F, 0x21, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x19, 0x54, 0x11, 0x75, 0x11, 0x96, 0x21, 0xF8, 0x22, 0x17, 0x11, 0x95, 0x11, 0x53, 0x19, 0x52, 0x19, 0x31, 0x21, 0x11, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x88, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x0A, 0x21, 0x10, 0x80, 0x29, + 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x08, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x22, 0x59, 0x03, 0x1A, 0x18, 0x80, 0x1A, 0x17, 0x01, 0x1A, 0x18, 0x06, 0x22, 0x18, 0x80, 0x21, 0xF8, 0x05, 0x22, 0x18, 0x83, 0x19, 0xF7, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x01, 0x21, 0xF8, 0x81, 0x22, 0x18, 0x21, 0xF8, 0x01, 0x21, 0xF7, 0x02, 0x19, 0xF7, 0x80, 0x19, 0xD7, 0x08, 0x19, 0xF7, 0x85, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x11, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x8B, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x86, + 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x88, 0x21, 0x10, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x19, 0x53, 0x11, 0x74, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xD8, 0x01, 0x09, 0xD8, 0x01, 0x01, 0xB8, 0x86, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xF9, 0x11, 0xF8, 0x19, 0xD7, 0x11, 0x75, 0x09, 0x12, 0x01, 0x10, 0xF1, 0x89, 0x19, 0x11, 0x21, 0x51, 0x21, 0x52, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x09, 0x96, 0x09, 0xB8, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xF9, 0x02, 0x01, 0xD9, 0x01, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x8E, 0x01, 0xD9, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x34, 0x08, 0xF2, 0x08, 0xD2, 0x09, 0x13, 0x19, 0x95, 0x19, 0xD7, 0x11, 0xD8, 0x12, 0x19, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xFA, 0x80, 0x02, 0x1A, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x8C, 0x01, 0xD9, 0x09, 0xF9, 0x11, 0xF9, 0x11, 0xD7, 0x11, 0x96, 0x09, 0x34, 0x08, 0xF3, 0x08, 0xF2, 0x09, 0x33, 0x11, 0x95, 0x11, 0xD7, 0x11, 0xD8, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x04, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x86, 0x01, 0xD9, 0x09, 0xF9, 0x12, 0x19, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x03, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, + 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x06, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x85, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x09, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x05, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x20, 0xEE, 0x20, 0xCE, 0x20, 0x8C, 0x72, 0x52, 0xCC, 0xFB, 0xD4, 0xDA, 0xD4, 0xB9, 0xD4, 0x98, 0x01, 0xD4, 0x78, 0x84, 0xCC, 0x58, 0xC4, 0x57, 0xBC, 0x76, 0xE6, 0x5C, 0xFF, 0x9F, 0x01, 0xF7, 0xBF, 0x01, 0xEF, 0xDF, 0x83, 0xEF, 0xFF, 0xEF, 0xDF, 0xEF, 0xFF, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x05, 0xE7, 0xDF, 0x03, 0xE7, 0xFF, 0x05, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x16, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x0D, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x12, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x03, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x1F, 0xE7, 0xDF, 0x85, 0xE7, 0xFF, 0xE7, 0xDF, 0xE7, 0xFF, 0xE7, 0xDF, 0xE7, 0xFF, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x80, 0xE7, 0xDF, 0x02, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x2C, 0xE7, 0xDF, 0x05, 0xE7, 0xFF, 0x05, 0xE7, 0xDF, 0x02, 0xE7, 0xFF, 0x02, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x03, 0xE7, 0xFF, 0x80, 0xE7, 0xDF, 0x02, + 0xE7, 0xFF, 0x07, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x81, 0xEF, 0xFF, 0xE7, 0xDF, 0x01, 0xEF, 0xDF, 0x02, 0xEF, 0xBF, 0x01, 0xF7, 0xBF, 0x83, 0xFF, 0x5F, 0xC3, 0xD6, 0xBA, 0x52, 0xC2, 0x53, 0x01, 0xCA, 0x54, 0x82, 0xD2, 0x54, 0xCA, 0x34, 0xCA, 0x13, 0x03, 0xC9, 0xF3, 0x80, 0xC9, 0xD3, 0x01, 0xC1, 0xD3, 0x01, 0xC1, 0xB3, 0x87, 0xC1, 0x93, 0xB9, 0x92, 0xB1, 0x92, 0xA1, 0xB1, 0x91, 0xD0, 0xFE, 0xDF, 0xFF, 0x9F, 0xFF, 0xBF, 0x02, 0xF7, 0xDF, 0x05, 0xEF, 0xDF, 0x06, 0xE7, 0xDF, 0x01, 0xEF, 0xFF, 0x80, 0xE7, 0xDF, 0x01, 0xEF, 0xDF, 0x03, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x80, 0xE7, 0xDF, 0x04, 0xE7, 0xFF, 0x8C, 0xEF, 0xFF, 0xE7, 0xDF, 0xEF, 0xDF, 0xEF, 0xFF, 0xEF, 0xDF, 0xEF, 0xBF, 0xF7, 0xBF, 0xFF, 0x9F, 0xD5, 0x59, 0xC4, 0x56, 0xCC, 0x56, 0xD4, 0x37, 0xD4, 0x36, 0x01, 0xD4, 0x37, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x08, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x03, 0xDC, 0x57, 0x05, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x02, 0xE4, 0x57, 0x07, 0xDC, 0x37, 0x82, 0xE4, 0x37, 0xDC, 0x37, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x8B, 0xE4, 0x58, 0xEC, 0x58, 0xE4, 0x59, 0xDC, 0x39, 0xBB, 0xF9, 0x9B, 0x9A, 0x62, 0xB9, 0x42, 0x9A, 0x2A, 0xBC, 0x1A, 0xBD, 0x12, 0xDE, 0x0A, 0xDF, 0x02, 0x02, 0xDF, 0x01, 0x03, 0x1F, 0x05, 0x02, 0xFF, 0x01, 0x02, 0xFE, 0x89, 0x03, 0x1E, 0x02, 0xFD, 0x03, 0x5C, 0x03, 0xFC, 0x05, 0x3D, 0x27, + 0x1F, 0x1F, 0x7F, 0x1F, 0xBF, 0x17, 0xBF, 0x0F, 0xBF, 0x02, 0x07, 0xDF, 0x97, 0x07, 0xBF, 0x0F, 0x9F, 0x17, 0x7F, 0x27, 0x5F, 0x37, 0x3F, 0x56, 0xDF, 0x7E, 0x3E, 0x63, 0x96, 0x82, 0x93, 0xA2, 0x13, 0xBA, 0x14, 0xC1, 0xB3, 0xC1, 0x73, 0xC1, 0x93, 0xC1, 0x73, 0xC9, 0xB4, 0xC1, 0xB3, 0xB9, 0xB4, 0xB9, 0xD4, 0xB2, 0x35, 0x91, 0xF5, 0x69, 0x52, 0x61, 0x52, 0x51, 0x52, 0x01, 0x49, 0x72, 0x81, 0x41, 0x92, 0x41, 0x72, 0x02, 0x39, 0x71, 0x04, 0x31, 0x51, 0x02, 0x31, 0x50, 0x03, 0x29, 0x30, 0x80, 0x29, 0x50, 0x03, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x06, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x86, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x0E, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8D, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x54, 0x11, 0x55, 0x19, 0xD7, 0x22, 0x18, 0x19, 0xB6, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x20, 0xEF, 0x21, 0x0F, 0x29, + 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x10, 0x02, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x09, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x04, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x09, 0xD8, 0x83, 0x09, 0xB8, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0xD8, 0x02, 0x11, 0xD7, + 0x85, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0xD8, 0x11, 0xB7, 0x03, 0x11, 0xD8, 0x82, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xD8, 0x01, 0x11, 0xD7, 0x02, 0x11, 0xD8, 0x83, 0x19, 0xF8, 0x11, 0xD7, 0x19, 0xD8, 0x11, 0xD8, 0x05, 0x11, 0xD7, 0x81, 0x11, 0xF7, 0x11, 0xD7, 0x02, 0x11, 0xF7, 0x01, 0x11, 0xD7, 0x80, 0x19, 0xD7, 0x01, 0x22, 0x18, 0x82, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x33, 0x01, 0x19, 0x32, 0x83, 0x19, 0x11, 0x19, 0x31, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x8A, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x87, 0x21, 0x10, 0x19, 0x11, 0x19, 0x12, 0x19, 0x33, 0x19, 0x74, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x01, 0x09, 0xD8, 0x81, 0x09, 0xD9, 0x01, 0xB8, 0x01, 0x09, 0xD9, 0x83, 0x09, 0xD8, 0x11, 0xD8, 0x19, 0xD7, 0x11, 0x54, 0x01, 0x11, 0x12, 0x8E, 0x18, 0xF1, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, + 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0xB6, 0x11, 0xD8, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xF9, 0x01, 0xD9, 0x04, 0x01, 0xFA, 0x80, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x8C, 0x09, 0xB8, 0x11, 0xF9, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x34, 0x08, 0xF2, 0x08, 0xD2, 0x09, 0x13, 0x11, 0x75, 0x19, 0xD7, 0x11, 0xD9, 0x09, 0xD9, 0x09, 0xF9, 0x02, 0x01, 0xD9, 0x82, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x8F, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xF9, 0x12, 0x19, 0x11, 0xD8, 0x11, 0x96, 0x09, 0x34, 0x09, 0x13, 0x08, 0xF3, 0x09, 0x34, 0x11, 0x95, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x89, 0x01, 0xBA, 0x01, 0xB9, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x19, 0x11, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x86, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x8A, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x09, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, + 0x2F, 0x29, 0x30, 0x09, 0x29, 0x2F, 0x87, 0x21, 0x0F, 0x20, 0xEE, 0x20, 0xCE, 0x28, 0x8C, 0x41, 0x2E, 0xD5, 0x1C, 0xD4, 0xDA, 0xD4, 0xB9, 0x01, 0xD4, 0x98, 0x86, 0xD4, 0x78, 0xCC, 0x57, 0xC4, 0x77, 0xBC, 0x76, 0xF6, 0xDE, 0xFF, 0xBF, 0xF7, 0xDF, 0x01, 0xEF, 0xDF, 0x01, 0xE7, 0xFF, 0x81, 0xE7, 0xDF, 0xE7, 0xFF, 0x02, 0xE7, 0xDF, 0x07, 0xE7, 0xFF, 0x02, 0xDF, 0xFF, 0x02, 0xDF, 0xDF, 0x03, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x03, 0xE7, 0xDF, 0x80, 0xDF, 0xDF, 0x01, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x06, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x03, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x06, 0xE7, 0xDF, 0x81, 0xE7, 0xFF, 0xE7, 0xDF, 0x06, 0xE7, 0xFF, 0x01, 0xDF, 0xDF, 0x80, 0xE7, 0xDF, 0x03, 0xDF, 0xDF, 0x01, 0xE7, 0xFF, 0x82, 0xDF, 0xDF, 0xE7, 0xFF, 0xDF, 0xDF, 0x01, 0xE7, 0xDF, 0x80, 0xDF, 0xDF, 0x03, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x01, 0xDF, 0xDF, 0x80, 0xE7, 0xFF, 0x01, 0xDF, 0xFF, 0x81, 0xE7, 0xFF, 0xDF, 0xDF, 0x0C, 0xE7, 0xDF, 0x82, 0xE7, 0xFF, 0xE7, 0xDF, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x04, 0xDF, 0xFF, 0x81, 0xE7, 0xFF, 0xE7, 0xDF, 0x01, 0xDF, 0xDF, 0x01, 0xE7, 0xDF, 0x83, 0xE7, 0xFF, 0xDF, 0xDF, 0xDF, 0xFF, 0xDF, 0xDF, 0x05, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x09, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x0C, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x03, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x05, 0xE7, 0xDF, 0x81, 0xE7, 0xFF, 0xE7, 0xDF, 0x02, 0xDF, 0xDF, 0x02, 0xE7, 0xDF, 0x0B, 0xE7, 0xFF, 0x01, + 0xE7, 0xDF, 0x07, 0xE7, 0xFF, 0x01, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x02, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x05, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x03, 0xEF, 0xDF, 0x85, 0xF7, 0xDF, 0xF7, 0xBF, 0xFF, 0x5F, 0xC3, 0x75, 0xBA, 0x52, 0xC2, 0x53, 0x02, 0xCA, 0x34, 0x83, 0xCA, 0x13, 0xC9, 0xF3, 0xCA, 0x13, 0xC9, 0xF3, 0x04, 0xC1, 0xD3, 0x01, 0xC1, 0xB3, 0x88, 0xB9, 0x92, 0xB1, 0x92, 0xA9, 0x91, 0x99, 0xD0, 0xE5, 0x3B, 0xFF, 0x7F, 0xFF, 0xBF, 0xF7, 0xBF, 0xF7, 0xDF, 0x04, 0xEF, 0xDF, 0x80, 0xEF, 0xFF, 0x01, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x80, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x05, 0xE7, 0xDF, 0x83, 0xE7, 0xFF, 0xE7, 0xDF, 0xE7, 0xFF, 0xE7, 0xDF, 0x05, 0xE7, 0xFF, 0x02, 0xE7, 0xDF, 0x02, 0xE7, 0xFF, 0x01, 0xEF, 0xFF, 0x8A, 0xEF, 0xDF, 0xF7, 0xDF, 0xF7, 0xBF, 0xFF, 0x7F, 0xD5, 0x79, 0xBC, 0x56, 0xCC, 0x56, 0xD4, 0x37, 0xD4, 0x57, 0xD4, 0x37, 0xDC, 0x37, 0x0B, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x57, 0x06, 0xE4, 0x57, 0x04, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x02, 0xDC, 0x37, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x04, 0xE4, 0x57, 0x93, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0xE4, 0x37, 0xE4, 0x57, 0xEC, 0x58, 0xE4, 0x58, 0xE4, 0x59, 0xDC, 0x59, 0xBB, 0xF9, 0x9B, 0x9A, 0x62, 0xB9, 0x42, 0x9A, 0x2A, 0xBC, 0x22, 0xDE, 0x12, 0xDE, 0x0A, 0xFF, 0x01, 0x02, 0xDF, 0x80, 0x02, 0xFF, 0x05, + 0x03, 0x1F, 0x02, 0x02, 0xFF, 0x8A, 0x03, 0x1F, 0x03, 0x1E, 0x02, 0xFD, 0x03, 0x1C, 0x03, 0x9B, 0x04, 0xBC, 0x26, 0xDF, 0x1F, 0x5F, 0x1F, 0x9F, 0x17, 0xBF, 0x07, 0x9F, 0x03, 0x07, 0xBF, 0x8B, 0x0F, 0xBF, 0x17, 0x9F, 0x27, 0x7F, 0x37, 0x3F, 0x4E, 0xDF, 0x76, 0x3E, 0x63, 0xB6, 0x7A, 0x73, 0xAA, 0x33, 0xB1, 0xD3, 0xB9, 0xB3, 0xC1, 0x93, 0x01, 0xC9, 0x94, 0x88, 0xC1, 0x94, 0xC1, 0xB4, 0xB9, 0xB4, 0xB9, 0xD4, 0xB2, 0x15, 0x89, 0xB4, 0x69, 0x52, 0x59, 0x52, 0x51, 0x73, 0x01, 0x49, 0x72, 0x01, 0x41, 0x72, 0x01, 0x39, 0x71, 0x80, 0x39, 0x51, 0x06, 0x31, 0x51, 0x80, 0x29, 0x50, 0x09, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x85, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x19, 0x33, 0x11, 0x33, 0x11, 0x55, 0x19, 0xB7, 0x22, 0x18, 0x21, 0xF7, 0x11, 0x54, 0x11, 0x53, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x2F, + 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x0D, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x05, 0x21, 0x10, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x86, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x87, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, + 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x81, 0x09, 0xD8, 0x09, 0xB8, 0x01, 0x11, 0xD8, 0x03, 0x09, 0xB8, 0x81, 0x11, 0xB8, 0x09, 0xB8, 0x03, 0x11, 0xD8, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x81, 0x09, 0xD8, 0x09, 0xB8, 0x07, 0x11, 0xD8, 0x81, 0x09, 0xD8, 0x09, 0xD7, 0x01, 0x11, 0xF8, 0x80, 0x11, 0xD8, 0x02, 0x09, 0xD8, 0x80, 0x09, 0xF8, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xB7, 0x88, 0x11, 0xD7, 0x1A, 0x18, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x11, 0x19, 0x12, 0x19, 0x53, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xB8, 0x01, 0xB8, 0x01, 0x09, 0xD9, 0x01, 0x09, 0xD8, 0x85, 0x19, 0xF9, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x11, 0x89, 0x19, 0x31, 0x19, 0x52, 0x11, 0x11, 0x11, + 0x12, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xD8, 0x01, 0xB8, 0x01, 0xD9, 0x01, 0xB9, 0x03, 0x01, 0xFA, 0x81, 0x02, 0x1A, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x80, 0x01, 0xDA, 0x01, 0x09, 0xD9, 0x83, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0x96, 0x11, 0x34, 0x01, 0x08, 0xF2, 0x82, 0x09, 0x13, 0x11, 0x75, 0x19, 0xD7, 0x01, 0x11, 0xF9, 0x82, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x02, 0x01, 0xB9, 0x8B, 0x09, 0xD9, 0x09, 0xF9, 0x11, 0xD8, 0x09, 0x76, 0x09, 0x34, 0x00, 0xF3, 0x08, 0xF3, 0x11, 0x54, 0x11, 0x96, 0x09, 0x96, 0x11, 0xD8, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x02, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x8C, 0x01, 0xFB, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x74, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x0A, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x09, 0x29, 0x2F, 0x87, 0x21, 0x0F, 0x20, 0xEF, 0x20, 0xEE, 0x28, 0xCD, 0x38, 0xED, + 0xB4, 0x39, 0xD4, 0xDA, 0xD4, 0xB9, 0x01, 0xD4, 0x98, 0x88, 0xD4, 0x78, 0xCC, 0x77, 0xC4, 0x57, 0xBC, 0x96, 0xFF, 0x5F, 0xFF, 0xBF, 0xF7, 0xDF, 0xEF, 0xDF, 0xEF, 0xFF, 0x04, 0xE7, 0xFF, 0x01, 0xDF, 0xDF, 0x08, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x06, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x02, 0xDF, 0xFF, 0x05, 0xDF, 0xDF, 0x02, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x03, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x02, 0xE7, 0xDF, 0x81, 0xE7, 0xFF, 0xDF, 0xDF, 0x02, 0xE7, 0xFF, 0x02, 0xDF, 0xDF, 0x03, 0xDF, 0xFF, 0x02, 0xDF, 0xDF, 0x80, 0xDF, 0xFF, 0x04, 0xDF, 0xDF, 0x03, 0xDF, 0xFF, 0x01, 0xE7, 0xFF, 0x80, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x06, 0xDF, 0xDF, 0x80, 0xDF, 0xFF, 0x02, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x02, 0xDF, 0xDF, 0x08, 0xE7, 0xFF, 0x80, 0xDF, 0xDF, 0x0A, 0xDF, 0xFF, 0x03, 0xDF, 0xDF, 0x81, 0xDF, 0xFF, 0xDF, 0xDF, 0x05, 0xDF, 0xFF, 0x02, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x81, 0xDF, 0xFF, 0xE7, 0xFF, 0x04, 0xDF, 0xDF, 0x02, 0xE7, 0xDF, 0x09, 0xDF, 0xDF, 0x03, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x02, 0xE7, 0xFF, 0x01, 0xDF, 0xDF, 0x06, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x08, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x15, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x04, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x06, 0xDF, 0xFF, 0x01, 0xE7, 0xFF, 0x03, 0xE7, 0xDF, 0x02, 0xEF, 0xDF, 0x87, 0xF7, 0xBF, 0xF7, 0x9F, 0xFF, 0x5F, 0xB3, 0x13, 0xBA, 0x33, 0xC2, 0x13, 0xC2, 0x14, 0xCA, 0x34, 0x01, 0xC2, 0x13, + 0x81, 0xC1, 0xF3, 0xC9, 0xF3, 0x01, 0xC1, 0xF3, 0x03, 0xC1, 0xD3, 0x8A, 0xC1, 0xB3, 0xB9, 0x93, 0xB9, 0x92, 0xB1, 0x72, 0x99, 0x90, 0xB3, 0x54, 0xFF, 0x1F, 0xFF, 0x9F, 0xF7, 0xBF, 0xF7, 0xDF, 0xF7, 0xFF, 0x02, 0xEF, 0xDF, 0x80, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x03, 0xE7, 0xDF, 0x03, 0xE7, 0xFF, 0x80, 0xE7, 0xDF, 0x03, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x03, 0xE7, 0xFF, 0x04, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x04, 0xE7, 0xFF, 0x80, 0xEF, 0xFF, 0x01, 0xEF, 0xDF, 0x84, 0xF7, 0xBF, 0xFF, 0x9F, 0xD5, 0xBA, 0xBC, 0x76, 0xCC, 0x56, 0x02, 0xD4, 0x37, 0x80, 0xDC, 0x37, 0x0A, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x01, 0xDC, 0x37, 0x04, 0xE4, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x81, 0xDC, 0x57, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x04, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x09, 0xE4, 0x57, 0x81, 0xDC, 0x37, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xE4, 0x58, 0x89, 0xE4, 0x59, 0xDC, 0x59, 0xBC, 0x1A, 0x9B, 0xBA, 0x5A, 0xB9, 0x3A, 0x9A, 0x2A, 0xDC, 0x22, 0xFD, 0x12, 0xFE, 0x0B, 0x1F, 0x02, 0x03, 0x1F, 0x04, 0x03, 0x3F, 0x03, 0x03, 0x1F, 0x8A, 0x03, 0x3F, 0x03, 0x1E, 0x02, 0xFD, 0x03, 0x3C, 0x03, 0x7C, 0x04, 0x5C, 0x26, 0x9F, 0x1F, 0x3F, 0x1F, 0x7F, 0x17, 0x9F, 0x0F, 0xBF, 0x01, 0x07, 0xBF, 0x8B, 0x07, 0xBE, 0x07, 0xDF, 0x0F, 0xBE, 0x17, 0xBF, 0x27, 0x7F, 0x2F, 0x3F, 0x4E, 0xDF, 0x76, 0x7F, 0x5B, 0xB6, 0x72, 0x52, 0xA2, 0x13, 0xB9, 0xF3, 0x01, 0xC1, 0xB3, 0x8A, 0xC9, 0x94, + 0xC9, 0xB4, 0xC1, 0x94, 0xC1, 0xB4, 0xB9, 0xB4, 0xB9, 0xF5, 0xB2, 0x15, 0x89, 0x94, 0x61, 0x12, 0x59, 0x52, 0x51, 0x73, 0x01, 0x49, 0x72, 0x01, 0x41, 0x92, 0x02, 0x39, 0x71, 0x05, 0x31, 0x51, 0x80, 0x31, 0x31, 0x01, 0x29, 0x51, 0x80, 0x29, 0x30, 0x01, 0x29, 0x50, 0x06, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x04, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x50, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x22, 0x18, 0x21, 0xF7, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x10, 0x01, 0x29, 0x30, 0x86, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x04, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, + 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x09, 0x21, 0x10, 0x80, 0x29, 0x30, 0x07, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x09, 0xD8, 0x84, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x02, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x01, 0x11, 0xD8, 0x83, 0x09, 0xD8, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xB8, 0x05, 0x09, 0xD8, 0x01, 0x11, 0xD8, 0x02, 0x09, 0xD8, 0x80, 0x11, 0xD9, + 0x02, 0x09, 0xD8, 0x82, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xF8, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x01, 0x09, 0xD8, 0x81, 0x09, 0xD9, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x81, 0x09, 0xD8, 0x1A, 0x18, 0x01, 0x11, 0xD7, 0x84, 0x11, 0x75, 0x11, 0x54, 0x11, 0x12, 0x19, 0x32, 0x19, 0x52, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x34, 0x11, 0x96, 0x01, 0x11, 0xB7, 0x01, 0x09, 0xD8, 0x88, 0x09, 0xD9, 0x01, 0xB8, 0x09, 0xB8, 0x09, 0xF9, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x54, 0x11, 0x12, 0x01, 0x10, 0xF1, 0x01, 0x19, 0x31, 0x87, 0x21, 0x52, 0x19, 0x52, 0x11, 0x11, 0x11, 0x12, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xD7, 0x01, 0xD8, 0x02, 0x01, 0xD9, 0x03, 0x01, 0xFA, 0x83, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0x09, 0xD9, 0x84, 0x09, 0xB8, 0x11, 0xF8, 0x11, 0xB6, 0x11, 0x34, 0x08, 0xF3, 0x01, 0x08, 0xF2, + 0x82, 0x11, 0x75, 0x19, 0xD7, 0x11, 0xF8, 0x01, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x8D, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0x76, 0x09, 0x14, 0x00, 0xD3, 0x08, 0xF3, 0x09, 0x54, 0x11, 0x95, 0x11, 0xB6, 0x11, 0xD8, 0x09, 0xB8, 0x09, 0xF9, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x83, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xFB, 0x02, 0x01, 0xDA, 0x87, 0x09, 0xB9, 0x11, 0xF9, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x0A, 0x29, 0x30, 0x07, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x2F, 0x86, 0x21, 0x0F, 0x20, 0xEE, 0x20, 0xCD, 0x20, 0x4B, 0x8B, 0x14, 0xD4, 0xDB, 0xD4, 0xB9, 0x01, 0xD4, 0x98, 0x85, 0xD4, 0x78, 0xCC, 0x77, 0xC4, 0x77, 0xBC, 0x96, 0xF7, 0x1F, 0xF7, 0xBF, 0x01, 0xEF, 0xDF, 0x03, 0xE7, 0xFF, 0x14, + 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x81, 0xDF, 0xDF, 0xDF, 0xFF, 0x04, 0xDF, 0xDF, 0x86, 0xE7, 0xFF, 0xE7, 0xDF, 0xDF, 0xDF, 0xE7, 0xDF, 0xE7, 0xFF, 0xE7, 0xDF, 0xE7, 0xFF, 0x01, 0xDF, 0xDF, 0x06, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x07, 0xDF, 0xFF, 0x81, 0xDF, 0xDF, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x81, 0xDF, 0xFF, 0xDF, 0xDF, 0x05, 0xDF, 0xFF, 0x82, 0xDF, 0xDF, 0xE7, 0xFF, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x82, 0xDF, 0xDF, 0xDF, 0xFF, 0xDF, 0xDF, 0x03, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x04, 0xDF, 0xFF, 0x02, 0xDF, 0xDF, 0x08, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x03, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x09, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x0A, 0xDF, 0xFF, 0x02, 0xDF, 0xDF, 0x0A, 0xDF, 0xFF, 0x0E, 0xDF, 0xDF, 0x02, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x02, 0xDF, 0xFF, 0x02, 0xDF, 0xDF, 0x04, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x0C, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x07, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x09, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x82, 0xDF, 0xFF, 0xDF, 0xDF, 0xDF, 0xFF, 0x03, 0xDF, 0xDF, 0x03, 0xDF, 0xFF, 0x80, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x01, 0xEF, 0xDF, 0x88, 0xEF, 0xBF, 0xF7, 0xBF, 0xFF, 0x9F, 0xFF, 0x1F, 0xAA, 0xB3, 0xB2, 0x13, 0xC2, 0x13, 0xC2, 0x14, 0xC2, 0x13, 0x04, 0xC1, 0xF3, 0x80, 0xC1, 0xF4, 0x02, 0xC1, 0xD3, 0x80, 0xB9, 0xB3, 0x01, 0xB9, 0x92, 0x86, 0xB1, 0x92, 0xA9, 0xB1, 0x91, 0xF0, 0xFE, 0x9F, 0xFF, 0x7F, 0xF7, 0xBF, 0xF7, 0xDF, 0x03, 0xEF, 0xDF, + 0x02, 0xE7, 0xDF, 0x81, 0xE7, 0xFF, 0xE7, 0xDF, 0x03, 0xE7, 0xFF, 0x80, 0xDF, 0xDF, 0x01, 0xE7, 0xFF, 0x81, 0xDF, 0xDF, 0xE7, 0xFF, 0x01, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x02, 0xE7, 0xFF, 0x03, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x07, 0xDF, 0xFF, 0x03, 0xE7, 0xFF, 0x01, 0xEF, 0xDF, 0x85, 0xF7, 0xBF, 0xFF, 0x9F, 0xE6, 0x3C, 0xBC, 0x55, 0xC4, 0x56, 0xCC, 0x37, 0x01, 0xD4, 0x37, 0x83, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0x07, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x37, 0x01, 0xDC, 0x37, 0x03, 0xE4, 0x57, 0x80, 0xDC, 0x57, 0x02, 0xE4, 0x57, 0x81, 0xDC, 0x37, 0xE4, 0x57, 0x02, 0xDC, 0x57, 0x03, 0xE4, 0x57, 0x80, 0xDC, 0x37, 0x0A, 0xE4, 0x57, 0x80, 0xDC, 0x57, 0x02, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xE4, 0x58, 0x89, 0xE4, 0x59, 0xDC, 0x5A, 0xC4, 0x3B, 0x93, 0xBB, 0x52, 0x98, 0x32, 0x7A, 0x2A, 0xDC, 0x1A, 0xFD, 0x0A, 0xFE, 0x0B, 0x1F, 0x01, 0x0B, 0x3F, 0x08, 0x03, 0x3F, 0xA8, 0x03, 0x1E, 0x03, 0x3F, 0x03, 0x3E, 0x03, 0x1D, 0x03, 0x3D, 0x03, 0x5C, 0x04, 0x1B, 0x15, 0xFF, 0x1F, 0x1F, 0x1F, 0x7F, 0x17, 0x9F, 0x0F, 0x9F, 0x07, 0xBE, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xDE, 0x0F, 0xBE, 0x0F, 0x9E, 0x1F, 0x7F, 0x2F, 0x3F, 0x46, 0xDE, 0x76, 0x9F, 0x5B, 0xF7, 0x72, 0x52, 0xA2, 0x33, 0xB1, 0xB3, 0xC1, 0xD4, 0xC1, 0xB3, 0xC1, 0x93, 0xC9, 0x94, 0xC9, 0xB4, 0xC1, 0x93, 0xB9, 0xB4, 0xB1, 0xD4, 0xB2, 0x36, 0x81, 0x93, 0x69, 0x52, 0x59, 0x52, 0x51, 0x72, 0x49, 0x72, 0x41, 0x72, 0x01, 0x41, 0x92, + 0x80, 0x39, 0x71, 0x01, 0x39, 0x72, 0x03, 0x31, 0x51, 0x80, 0x31, 0x31, 0x01, 0x31, 0x51, 0x83, 0x29, 0x30, 0x29, 0x51, 0x29, 0x30, 0x29, 0x50, 0x07, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x04, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8F, 0x29, 0x50, 0x29, 0x30, 0x21, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x34, 0x19, 0xB6, 0x21, 0xF8, 0x22, 0x17, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, + 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x03, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x02, 0x09, 0xD8, 0x80, 0x11, 0xD8, 0x01, 0x09, 0xB8, 0x82, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0xD8, 0x02, 0x09, 0xB8, 0x80, 0x09, 0xD8, 0x02, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x06, 0x09, 0xD8, 0x80, 0x09, 0xF8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xF9, 0x02, 0x09, 0xD9, 0x80, 0x01, 0xB8, 0x01, + 0x09, 0xF9, 0x89, 0x12, 0x19, 0x09, 0xF8, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xB7, 0x09, 0x75, 0x11, 0x54, 0x11, 0x13, 0x11, 0x32, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x29, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x86, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x09, 0x96, 0x11, 0xB7, 0x02, 0x09, 0xB8, 0x80, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x85, 0x09, 0xF8, 0x11, 0xD8, 0x11, 0x96, 0x11, 0x54, 0x10, 0xF2, 0x10, 0xF1, 0x01, 0x19, 0x11, 0x02, 0x19, 0x31, 0x85, 0x11, 0x11, 0x11, 0x12, 0x11, 0x74, 0x11, 0x96, 0x09, 0xB7, 0x09, 0xF9, 0x01, 0x01, 0xD9, 0x86, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x85, 0x01, 0xB9, 0x01, 0xB8, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0x76, 0x09, 0x34, 0x01, 0x08, 0xF3, 0x85, 0x09, 0x13, 0x11, 0x95, 0x19, 0xF7, 0x11, 0xF8, 0x11, 0xF9, 0x01, 0xB9, 0x01, 0x01, 0xBA, 0x80, 0x01, 0xB9, 0x05, 0x01, 0xDA, 0x86, + 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD9, 0x11, 0xD9, 0x11, 0xB8, 0x09, 0x55, 0x09, 0x14, 0x01, 0x08, 0xF3, 0x8C, 0x09, 0x34, 0x11, 0x95, 0x11, 0xB6, 0x11, 0xD8, 0x09, 0xB8, 0x09, 0xD8, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x02, 0x1B, 0x01, 0xFA, 0x01, 0xBA, 0x02, 0x01, 0xDA, 0x85, 0x01, 0xD9, 0x11, 0xF9, 0x1A, 0x19, 0x19, 0xB6, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x88, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x84, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x0D, 0x29, 0x30, 0x05, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x20, 0xEE, 0x20, 0xCE, 0x28, 0xAC, 0x49, 0x6E, 0xDD, 0x5D, 0xD4, 0xB9, 0x01, 0xD4, 0x98, 0x86, 0xD4, 0x78, 0xCC, 0x77, 0xC4, 0x77, 0xB4, 0x76, 0xFF, 0x3F, 0xF7, 0xBF, 0xEF, 0xDF, 0x03, 0xE7, 0xFF, 0x03, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x81, 0xDF, 0xFF, 0xDF, 0xDF, 0x0C, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x03, 0xDF, 0xFF, 0x81, 0xE7, 0xFF, 0xDF, 0xDF, 0x01, 0xE7, 0xFF, 0x80, 0xDF, 0xDF, + 0x03, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x02, 0xE7, 0xDF, 0x03, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x81, 0xDF, 0xDF, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x06, 0xDF, 0xFF, 0x03, 0xDF, 0xDF, 0x83, 0xDF, 0xFF, 0xDF, 0xDF, 0xDF, 0xFF, 0xDF, 0xDF, 0x02, 0xDF, 0xFF, 0x04, 0xE7, 0xFF, 0x01, 0xDF, 0xFF, 0x80, 0xE7, 0xFF, 0x01, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x07, 0xDF, 0xFF, 0x80, 0xD7, 0xFF, 0x02, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x2F, 0xDF, 0xFF, 0x0E, 0xDF, 0xDF, 0x08, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x0B, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x23, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x05, 0xDF, 0xFF, 0x82, 0xDF, 0xDF, 0xDF, 0xFF, 0xDF, 0xDF, 0x01, 0xE7, 0xDF, 0x86, 0xEF, 0xDF, 0xEF, 0xBF, 0xF7, 0xBF, 0xFF, 0x9F, 0xFE, 0xFF, 0xFD, 0xFE, 0xBA, 0xF5, 0x01, 0xBA, 0x13, 0x80, 0xC1, 0xF4, 0x04, 0xC1, 0xF3, 0x83, 0xC1, 0xD3, 0xC1, 0xF3, 0xC1, 0xD3, 0xB9, 0xD3, 0x01, 0xB9, 0xB3, 0x87, 0xB9, 0xB2, 0xB1, 0x92, 0xA9, 0xB1, 0x99, 0xF0, 0xDC, 0xD9, 0xFF, 0x7F, 0xFF, 0x9F, 0xF7, 0xBF, 0x03, 0xEF, 0xDF, 0x03, 0xE7, 0xDF, 0x80, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x83, 0xE7, 0xFF, 0xE7, 0xDF, 0xE7, 0xFF, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x82, 0xDF, 0xDF, 0xDF, 0xFF, 0xDF, 0xDF, 0x02, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x0A, 0xDF, 0xFF, 0x84, 0xDF, 0xDF, 0xDF, 0xFF, 0xDF, 0xDF, 0xE7, 0xFF, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x8C, 0xE7, 0xDF, 0xEF, 0xDF, 0xF7, 0xBF, 0xFF, 0x9F, 0xEE, 0xBD, 0xBC, 0xB6, 0xC4, 0x56, 0xCC, 0x37, 0xD4, 0x36, + 0xD4, 0x37, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0x07, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x03, 0xE4, 0x57, 0x80, 0xDC, 0x37, 0x0F, 0xE4, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x57, 0x05, 0xE4, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xE4, 0x58, 0x8B, 0xE4, 0x59, 0xD4, 0x5A, 0xC4, 0x5C, 0x8B, 0x9A, 0x4A, 0x78, 0x32, 0x9A, 0x2A, 0xFD, 0x1B, 0x1E, 0x0A, 0xFE, 0x03, 0x1F, 0x03, 0x3F, 0x03, 0x5F, 0x02, 0x03, 0x3F, 0x80, 0x03, 0x1F, 0x02, 0x03, 0x3F, 0x01, 0x03, 0x5F, 0x02, 0x03, 0x3F, 0x88, 0x03, 0x1E, 0x03, 0x3D, 0x03, 0x5C, 0x03, 0xFC, 0x0D, 0x9E, 0x1E, 0xDF, 0x1F, 0x5F, 0x17, 0x9F, 0x0F, 0x9E, 0x02, 0x07, 0xBE, 0x8D, 0x07, 0xDE, 0x0F, 0xBE, 0x0F, 0x9E, 0x1F, 0x7F, 0x2F, 0x3E, 0x46, 0xDE, 0x6E, 0x9F, 0x64, 0x17, 0x72, 0x32, 0xA2, 0x33, 0xB1, 0xD3, 0xB9, 0xB3, 0xC1, 0x93, 0xC9, 0x94, 0x01, 0xC1, 0x94, 0x89, 0xC1, 0xB4, 0xB9, 0xB4, 0xB1, 0xD4, 0xAA, 0x15, 0x81, 0x73, 0x69, 0x52, 0x59, 0x52, 0x51, 0x73, 0x49, 0x72, 0x41, 0x72, 0x01, 0x41, 0x92, 0x01, 0x39, 0x72, 0x81, 0x31, 0x51, 0x39, 0x72, 0x04, 0x31, 0x51, 0x82, 0x31, 0x31, 0x31, 0x51, 0x29, 0x51, 0x09, 0x29, 0x30, 0x01, 0x29, 0x10, 0x06, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x21, 0x10, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, + 0x01, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x19, 0x31, 0x19, 0x12, 0x11, 0x33, 0x11, 0x34, 0x19, 0xB6, 0x22, 0x38, 0x22, 0x17, 0x11, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x11, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x06, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x06, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, + 0x10, 0x03, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x30, 0x04, 0x09, 0xD8, 0x80, 0x11, 0xD8, 0x01, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x04, 0x11, 0xD8, 0x80, 0x09, 0xB8, 0x01, 0x11, 0xD8, 0x81, 0x09, 0xB8, 0x11, 0xD8, 0x01, 0x09, 0xD8, 0x01, 0x11, 0xD8, 0x01, 0x09, 0xB8, 0x81, 0x11, 0xB8, 0x11, 0xD8, 0x01, 0x09, 0xD8, 0x01, 0x11, 0xB8, 0x01, 0x09, 0xD8, 0x84, 0x11, 0xD8, 0x09, 0xB8, 0x09, 0xD8, 0x11, 0xD8, 0x09, 0xB8, 0x03, 0x09, 0xD8, 0x81, 0x09, 0xD9, 0x09, 0xD8, 0x01, 0x09, 0xD9, 0x81, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x8A, 0x09, 0xD9, 0x09, 0xF8, 0x11, 0xD7, 0x11, 0x96, 0x09, 0x34, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x29, 0x31, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x01, + 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x91, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x11, 0x53, 0x11, 0x54, 0x11, 0x95, 0x11, 0xB7, 0x09, 0xB7, 0x01, 0x09, 0xB8, 0x81, 0x09, 0xD9, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x01, 0x11, 0xF8, 0x85, 0x11, 0xB6, 0x09, 0x34, 0x10, 0xF2, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x01, 0x19, 0x31, 0x87, 0x19, 0x11, 0x19, 0x32, 0x11, 0x12, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xD8, 0x09, 0xF8, 0x01, 0xD8, 0x01, 0x01, 0xD9, 0x80, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x89, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xB9, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x09, 0x34, 0x02, 0x08, 0xF3, 0x84, 0x11, 0x75, 0x19, 0xD7, 0x11, 0xF8, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x82, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x89, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xF9, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x76, 0x09, 0x14, 0x08, 0xF3, 0x01, 0x09, 0x13, 0x82, 0x11, 0x96, 0x11, 0xB7, 0x11, 0xF8, 0x01, 0x09, 0xD8, 0x81, 0x01, 0xB8, 0x01, 0xD9, 0x03, 0x01, 0xFA, 0x02, 0x01, 0xDA, 0x86, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xF9, 0x11, 0xF8, 0x19, 0xB6, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x19, 0x30, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, + 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x0D, 0x29, 0x30, 0x05, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x8F, 0x21, 0x0F, 0x20, 0xEE, 0x28, 0xCD, 0x30, 0xAC, 0xB4, 0x39, 0xD4, 0xDA, 0xD4, 0xB9, 0xD4, 0x98, 0xD4, 0x78, 0xCC, 0x77, 0xC4, 0x77, 0xBC, 0x97, 0xEE, 0xDE, 0xF7, 0xBF, 0xEF, 0xDF, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x19, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x02, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x04, 0xE7, 0xFF, 0x02, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x02, 0xE7, 0xDF, 0x02, 0xDF, 0xDF, 0x02, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x04, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x03, 0xDF, 0xFF, 0x03, 0xDF, 0xDF, 0x01, 0xE7, 0xFF, 0x82, 0xE7, 0xDF, 0xE7, 0xFF, 0xE7, 0xDF, 0x06, 0xE7, 0xFF, 0x80, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x83, 0xDF, 0xFF, 0xE7, 0xFF, 0xDF, 0xDF, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x09, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x0A, 0xDF, 0xFF, 0x80, 0xD7, 0xFF, 0x02, 0xDF, 0xFF, 0x01, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x03, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x01, 0xD7, 0xFF, 0x06, 0xDF, 0xFF, + 0x80, 0xD7, 0xFF, 0x03, 0xDF, 0xFF, 0x03, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x02, 0xD7, 0xDF, 0x0C, 0xDF, 0xDF, 0x01, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x03, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x80, 0xDF, 0xFF, 0x02, 0xD7, 0xFF, 0x80, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x01, 0xD7, 0xFF, 0x81, 0xDF, 0xFF, 0xD7, 0xFF, 0x01, 0xDF, 0xFF, 0x01, 0xD7, 0xFF, 0x81, 0xDF, 0xFF, 0xD7, 0xDF, 0x02, 0xD7, 0xFF, 0x80, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x83, 0xDF, 0xFF, 0xD7, 0xDF, 0xDF, 0xFF, 0xD7, 0xFF, 0x01, 0xDF, 0xFF, 0x01, 0xD7, 0xFF, 0x81, 0xDF, 0xFF, 0xDF, 0xDF, 0x04, 0xD7, 0xFF, 0x80, 0xD7, 0xDF, 0x03, 0xD7, 0xFF, 0x0D, 0xDF, 0xFF, 0x01, 0xE7, 0xDF, 0x87, 0xEF, 0xBF, 0xF7, 0x9F, 0xFF, 0x9F, 0xFF, 0x3F, 0xC4, 0x57, 0xA2, 0x92, 0xBA, 0x94, 0xB1, 0xF3, 0x01, 0xB9, 0xF3, 0x81, 0xB9, 0xD3, 0xB9, 0xF3, 0x01, 0xC1, 0xF3, 0x02, 0xC1, 0xD3, 0x80, 0xB9, 0xD3, 0x02, 0xB9, 0xB3, 0x86, 0xB1, 0x92, 0xA9, 0x91, 0x99, 0xB0, 0xA3, 0x13, 0xFE, 0xFF, 0xFF, 0x9F, 0xF7, 0xBF, 0x03, 0xEF, 0xDF, 0x05, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x82, 0xE7, 0xDF, 0xE7, 0xFF, 0xE7, 0xDF, 0x03, 0xE7, 0xFF, 0x04, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x08, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x84, 0xDF, 0xFF, 0xDF, 0xDF, 0xDF, 0xFF, 0xDF, 0xDF, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x02, 0xE7, 0xDF, 0x85, 0xEF, 0xBF, 0xF7, 0x9F, 0xF7, 0x1F, 0xC4, 0xB7, 0xC4, 0x56, 0xCC, 0x56, 0x01, 0xD4, 0x37, 0x02, 0xDC, 0x37, 0x09, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xE4, 0x57, 0x02, 0xDC, + 0x57, 0x09, 0xE4, 0x57, 0x80, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x85, 0xDC, 0x37, 0xE4, 0x37, 0xDC, 0x36, 0xE4, 0x37, 0xDC, 0x37, 0xE4, 0x37, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x81, 0xDC, 0x57, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x80, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x02, 0xE4, 0x57, 0x8C, 0xE4, 0x58, 0xE4, 0x59, 0xE4, 0x79, 0xD4, 0x7B, 0xBC, 0x3C, 0x83, 0x7B, 0x4A, 0x99, 0x32, 0xBB, 0x2B, 0x1D, 0x1B, 0x3E, 0x0B, 0x1E, 0x03, 0x1F, 0x03, 0x3F, 0x02, 0x03, 0x5F, 0x80, 0x03, 0x3F, 0x02, 0x03, 0x5F, 0x80, 0x03, 0x3F, 0x03, 0x03, 0x5F, 0x89, 0x03, 0x3E, 0x03, 0x5E, 0x03, 0x5D, 0x03, 0x7D, 0x03, 0xDC, 0x05, 0x1C, 0x26, 0xBF, 0x27, 0x5F, 0x17, 0x7F, 0x0F, 0x9E, 0x03, 0x07, 0xBE, 0x8C, 0x0F, 0xDE, 0x0F, 0xBE, 0x1F, 0x7E, 0x2F, 0x7F, 0x3E, 0xDE, 0x66, 0x7F, 0x64, 0x58, 0x72, 0x52, 0x9A, 0x13, 0xB1, 0xD3, 0xB9, 0x93, 0xC1, 0x93, 0xC9, 0x94, 0x01, 0xC1, 0x94, 0x88, 0xC1, 0xB4, 0xB9, 0xB4, 0xB1, 0xD4, 0xAA, 0x36, 0x81, 0x93, 0x61, 0x32, 0x59, 0x52, 0x51, 0x72, 0x49, 0x72, 0x02, 0x41, 0x92, 0x01, 0x39, 0x71, 0x01, 0x39, 0x72, 0x04, 0x31, 0x51, 0x82, 0x31, 0x31, 0x31, 0x51, 0x31, 0x50, 0x09, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, + 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x31, 0x19, 0x32, 0x01, 0x11, 0x33, 0x86, 0x19, 0xB6, 0x22, 0x18, 0x22, 0x17, 0x11, 0x95, 0x09, 0x33, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x08, 0x21, 0x10, 0x81, + 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x04, 0x21, 0x10, 0x86, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x87, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x11, 0xF8, 0x82, 0x19, 0xF8, 0x11, 0xF8, 0x11, 0xD7, 0x02, 0x19, 0xF8, 0x82, 0x1A, 0x18, 0x11, 0xF7, 0x1A, 0x18, 0x02, 0x19, 0xF8, 0x80, 0x11, 0xD7, 0x01, 0x19, 0xF8, 0x80, 0x11, 0xD7, 0x03, 0x19, 0xF8, 0x80, 0x19, 0xF7, 0x05, 0x19, 0xF8, 0x89, 0x11, 0xF8, 0x19, 0xF8, 0x11, 0xF8, 0x11, 0xF7, 0x1A, 0x18, 0x11, 0xF8, 0x19, 0xF8, 0x1A, 0x18, 0x11, 0xF7, 0x19, 0xF8, 0x03, 0x11, 0xF8, 0x86, 0x11, 0xF9, 0x09, 0xF9, 0x09, 0xD9, 0x0A, 0x1A, 0x01, 0xD9, 0x01, 0xB8, 0x01, 0xB9, 0x01, 0x09, 0xFA, 0x8A, 0x09, 0xF9, 0x09, 0xD8, 0x09, 0xB7, 0x11, 0x96, 0x09, 0x34, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x29, 0x31, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, + 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x01, 0x21, 0x10, 0x85, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x11, 0x54, 0x09, 0x75, 0x01, 0x09, 0xB7, 0x80, 0x09, 0xF8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xD9, 0x01, 0x09, 0xD8, 0x87, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x54, 0x08, 0xF2, 0x11, 0x11, 0x18, 0xF0, 0x19, 0x10, 0x01, 0x21, 0x31, 0x87, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x09, 0x54, 0x09, 0xB6, 0x09, 0xD8, 0x0A, 0x19, 0x01, 0xD8, 0x01, 0x01, 0xD9, 0x81, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x81, 0x01, 0x99, 0x01, 0xBA, 0x01, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x83, 0x09, 0xB7, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x34, 0x01, 0x09, 0x13, 0x85, 0x08, 0xF3, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xF8, 0x11, 0xF9, 0x09, 0xF9, 0x02, 0x01, 0xB9, 0x82, 0x01, 0xDA, 0x0A, 0x1B, 0x01, 0xFA, 0x02, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x92, 0x09, 0xD8, 0x11, 0xF9, 0x11, 0xD7, 0x11, 0x75, 0x09, 0x13, 0x08, 0xF3, 0x09, 0x13, 0x09, 0x33, 0x11, 0x96, 0x19, 0xF8, 0x11, 0xD8, 0x09, 0xD8, 0x01, 0xB8, 0x09, 0xF9, 0x01, 0xF9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x88, 0x01, 0xD9, 0x11, 0xF9, 0x1A, 0x19, 0x19, 0xB6, 0x09, 0x13, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, + 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x0C, 0x29, 0x30, 0x06, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x20, 0xCE, 0x28, 0xAC, 0x6A, 0x11, 0xD4, 0xFB, 0xD4, 0xB9, 0x01, 0xD4, 0x98, 0x87, 0xD4, 0x78, 0xCC, 0x78, 0xBC, 0x56, 0xDE, 0x1B, 0xF7, 0x9F, 0xEF, 0xBF, 0xE7, 0xDF, 0xE7, 0xFF, 0x05, 0xDF, 0xFF, 0x81, 0xD7, 0xFF, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x82, 0xD7, 0xFF, 0xDF, 0xFF, 0xD7, 0xFF, 0x09, 0xDF, 0xFF, 0x81, 0xE7, 0xFF, 0xE7, 0xDF, 0x05, 0xE7, 0xFF, 0x05, 0xE7, 0xDF, 0x01, 0xEF, 0xDF, 0x0A, 0xE7, 0xDF, 0x81, 0xDF, 0xDF, 0xDF, 0xFF, 0x02, 0xDF, 0xDF, 0x03, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x02, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x03, 0xE7, 0xFF, 0x0C, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x02, 0xE7, 0xFF, 0x81, 0xDF, 0xFF, 0xDF, 0xDF, 0x02, 0xDF, 0xFF, 0x07, 0xD7, 0xFF, 0x01, 0xDF, 0xFF, 0x06, 0xD7, 0xDF, 0x80, 0xD7, 0xFF, 0x02, 0xD7, 0xDF, 0x80, 0xD7, 0xFF, 0x03, 0xD7, 0xDF, 0x80, 0xD7, 0xFF, 0x07, + 0xD7, 0xDF, 0x83, 0xD7, 0xFF, 0xD7, 0xDF, 0xD7, 0xFF, 0xD7, 0xDF, 0x02, 0xD7, 0xFF, 0x02, 0xD7, 0xDF, 0x03, 0xD7, 0xFF, 0x06, 0xD7, 0xDF, 0x05, 0xDF, 0xDF, 0x01, 0xD7, 0xFF, 0x81, 0xDF, 0xDF, 0xDF, 0xFF, 0x06, 0xD7, 0xDF, 0x80, 0xDF, 0xFF, 0x01, 0xD7, 0xFF, 0x01, 0xD7, 0xDF, 0x04, 0xD7, 0xFF, 0x81, 0xD7, 0xDF, 0xD7, 0xFF, 0x06, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x02, 0xD7, 0xDF, 0x80, 0xD7, 0xFF, 0x11, 0xD7, 0xDF, 0x09, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x01, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x81, 0xDF, 0xDF, 0xD7, 0xFF, 0x02, 0xDF, 0xFF, 0x87, 0xE7, 0xDF, 0xEF, 0xBF, 0xE6, 0xFF, 0x72, 0x6F, 0x69, 0x8D, 0x71, 0x4D, 0x89, 0xB0, 0x99, 0xD1, 0x01, 0xA9, 0xD2, 0x81, 0xB1, 0xD3, 0xB9, 0xD3, 0x01, 0xB9, 0xF3, 0x80, 0xB9, 0xD3, 0x02, 0xB9, 0xF3, 0x01, 0xB9, 0xD3, 0x01, 0xB9, 0xB3, 0x86, 0xB1, 0x92, 0xA9, 0x92, 0xA1, 0xB1, 0x89, 0xCF, 0xFE, 0xDF, 0xFF, 0x7F, 0xF7, 0xBF, 0x03, 0xEF, 0xDF, 0x01, 0xE7, 0xDF, 0x01, 0xEF, 0xFF, 0x82, 0xE7, 0xDF, 0xEF, 0xFF, 0xEF, 0xDF, 0x01, 0xEF, 0xFF, 0x80, 0xEF, 0xDF, 0x06, 0xE7, 0xFF, 0x02, 0xDF, 0xFF, 0x02, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x03, 0xD7, 0xFF, 0x84, 0xD7, 0xDF, 0xD7, 0xFF, 0xDF, 0xFF, 0xDF, 0xDF, 0xDF, 0xFF, 0x02, 0xDF, 0xDF, 0x82, 0xDF, 0xFF, 0xDF, 0xDF, 0xE7, 0xFF, 0x02, 0xE7, 0xDF, 0x85, 0xEF, 0xDF, 0xF7, 0x9F, 0xFF, 0x5F, 0xC5, 0x18, 0xC4, 0x76, 0xCC, 0x56, 0x01, 0xD4, 0x37, 0x02, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x04, + 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x80, 0xDC, 0x37, 0x04, 0xE4, 0x37, 0x82, 0xDC, 0x37, 0xE4, 0x37, 0xE4, 0x57, 0x01, 0xDC, 0x36, 0x81, 0xDC, 0x16, 0xDC, 0x36, 0x04, 0xDC, 0x37, 0x81, 0xE4, 0x57, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x80, 0xE4, 0x37, 0x02, 0xDC, 0x37, 0x80, 0xE4, 0x37, 0x01, 0xE4, 0x58, 0x89, 0xE4, 0x79, 0xE4, 0x7A, 0xD4, 0x7B, 0xB4, 0x3C, 0x73, 0x3A, 0x42, 0x9A, 0x32, 0xDC, 0x33, 0x5E, 0x23, 0x5F, 0x0B, 0x3E, 0x01, 0x03, 0x5F, 0x01, 0x03, 0x7F, 0x01, 0x03, 0x5F, 0x80, 0x03, 0x3F, 0x06, 0x03, 0x5F, 0x01, 0x03, 0x5E, 0x01, 0x03, 0x7D, 0x85, 0x03, 0xDC, 0x04, 0xBC, 0x1E, 0x7F, 0x27, 0x3F, 0x1F, 0x7F, 0x0F, 0x9E, 0x02, 0x07, 0xBE, 0x8D, 0x07, 0xDE, 0x07, 0xBE, 0x17, 0xBE, 0x1F, 0x9E, 0x2F, 0x7F, 0x47, 0x1F, 0x66, 0x9F, 0x6C, 0xB9, 0x6A, 0x72, 0x9A, 0x33, 0xB2, 0x14, 0xB9, 0xD3, 0xC1, 0xB3, 0xC9, 0xB4, 0x01, 0xC1, 0x73, 0x87, 0xC1, 0x94, 0xB9, 0xB4, 0xB9, 0xF5, 0xB2, 0x36, 0x79, 0x73, 0x61, 0x32, 0x59, 0x72, 0x49, 0x72, 0x01, 0x41, 0x72, 0x01, 0x41, 0x92, 0x01, 0x39, 0x71, 0x80, 0x39, 0x72, 0x04, 0x31, 0x51, 0x83, 0x31, 0x31, 0x29, 0x30, 0x31, 0x30, 0x31, 0x50, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x06, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, + 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x8B, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x22, 0x38, 0x22, 0x17, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x88, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, + 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x11, 0x96, 0x11, 0x95, 0x01, 0x11, 0x96, 0x81, 0x11, 0x95, 0x11, 0x75, 0x03, 0x11, 0x95, 0x81, 0x11, 0xB6, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x80, 0x11, 0x96, 0x05, 0x19, 0xB6, 0x89, 0x11, 0xB6, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0xD6, 0x11, 0xB6, 0x19, 0xD6, 0x06, 0x11, 0xB6, 0x81, 0x19, 0xD6, 0x11, 0xB6, 0x01, 0x11, 0xD7, 0x80, 0x19, 0xD8, 0x01, 0x11, 0xD8, 0x8F, 0x11, 0xF9, 0x12, 0x3A, 0x12, 0x1A, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xB9, 0x09, 0xFA, 0x09, 0xD9, 0x09, 0xF9, 0x11, 0xF9, 0x09, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x13, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, + 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x11, 0x01, 0x19, 0x11, 0x85, 0x19, 0x32, 0x11, 0x33, 0x09, 0x54, 0x09, 0x95, 0x11, 0xD7, 0x09, 0xD7, 0x04, 0x09, 0xD8, 0x87, 0x09, 0xF8, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x12, 0x10, 0xF1, 0x18, 0xF0, 0x02, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x74, 0x11, 0xB6, 0x09, 0xD7, 0x01, 0xD8, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xBA, 0x90, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x34, 0x09, 0x13, 0x08, 0xF2, 0x00, 0xF3, 0x11, 0x75, 0x11, 0xD7, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0xB8, 0x01, 0x01, 0xB9, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xB9, 0x02, 0x01, 0xD9, 0x85, 0x09, 0xD8, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x75, 0x09, 0x33, 0x08, 0xF2, 0x01, 0x09, 0x13, 0x84, 0x11, 0x95, 0x19, 0xF7, 0x09, 0xB7, 0x09, 0xD8, 0x01, 0xB8, 0x02, 0x01, 0xD9, 0x81, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0x01, 0xFA, 0x8C, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xD9, 0x09, 0xF9, 0x19, 0xF9, 0x11, 0x96, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x19, 0x30, 0x19, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, + 0x2F, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x0C, 0x29, 0x30, 0x09, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x8E, 0x20, 0xEE, 0x28, 0xCE, 0x20, 0x2A, 0xC4, 0xBA, 0xD4, 0xDA, 0xDC, 0xB9, 0xDC, 0x99, 0xD4, 0x98, 0xCC, 0x78, 0xC4, 0x77, 0xCD, 0x39, 0xFF, 0x9F, 0xEF, 0xBF, 0xE7, 0xDF, 0xE7, 0xFF, 0x01, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x03, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x04, 0xD7, 0xFF, 0x08, 0xDF, 0xFF, 0x02, 0xE7, 0xFF, 0x04, 0xE7, 0xDF, 0x02, 0xEF, 0xDF, 0x02, 0xEF, 0xBF, 0x05, 0xF7, 0xBF, 0x02, 0xEF, 0xBF, 0x80, 0xEF, 0xDF, 0x05, 0xE7, 0xDF, 0x07, 0xDF, 0xDF, 0x80, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x07, 0xE7, 0xDF, 0x01, 0xEF, 0xDF, 0x02, 0xEF, 0xBF, 0x01, 0xF7, 0xBF, 0x82, 0xEF, 0xBF, 0xF7, 0xBF, 0xEF, 0x9F, 0x03, 0xEF, 0xBF, 0x02, 0xEF, 0xDF, 0x03, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x03, 0xDF, 0xFF, 0x82, 0xD7, 0xDF, 0xD7, 0xFF, 0xD7, 0xDF, 0x02, 0xD7, 0xFF, 0x21, 0xD7, 0xDF, 0x80, 0xD7, 0xFF, 0x48, 0xD7, 0xDF, 0x80, 0xD7, 0xFF, 0x05, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x80, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x01, 0xD7, 0xDF, 0x05, + 0xD7, 0xFF, 0x01, 0xDF, 0xFF, 0x89, 0xE7, 0xDF, 0xEF, 0x9F, 0xEE, 0xDF, 0x8A, 0xF2, 0x81, 0xD0, 0x91, 0xB1, 0x99, 0xB1, 0xA1, 0xB2, 0xA9, 0xD2, 0xB1, 0xD2, 0x01, 0xB1, 0xD3, 0x01, 0xB9, 0xD3, 0x80, 0xB9, 0xF3, 0x03, 0xB9, 0xD3, 0x01, 0xB9, 0xB3, 0x86, 0xB1, 0xB2, 0xB1, 0x92, 0xA1, 0xB1, 0x91, 0xB0, 0xDC, 0xFA, 0xFF, 0x7F, 0xF7, 0xBF, 0x03, 0xEF, 0xDF, 0x02, 0xE7, 0xDF, 0x04, 0xEF, 0xDF, 0x80, 0xF7, 0xDF, 0x02, 0xEF, 0xBF, 0x02, 0xEF, 0xDF, 0x82, 0xE7, 0xDF, 0xE7, 0xFF, 0xE7, 0xDF, 0x01, 0xE7, 0xFF, 0x80, 0xDF, 0xFF, 0x06, 0xDF, 0xDF, 0x80, 0xD7, 0xFF, 0x05, 0xD7, 0xDF, 0x80, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x80, 0xDF, 0xFF, 0x02, 0xDF, 0xDF, 0x81, 0xDF, 0xFF, 0xDF, 0xDF, 0x02, 0xE7, 0xDF, 0x85, 0xEF, 0xBF, 0xF7, 0xBF, 0xFF, 0x7F, 0xBC, 0xB6, 0xC4, 0x56, 0xCC, 0x57, 0x01, 0xD4, 0x37, 0x03, 0xDC, 0x37, 0x80, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x80, 0xE4, 0x57, 0x0B, 0xE4, 0x37, 0x83, 0xE4, 0x36, 0xDC, 0x36, 0xE4, 0x36, 0xE4, 0x37, 0x01, 0xDC, 0x36, 0x83, 0xDC, 0x16, 0xE4, 0x37, 0xDC, 0x37, 0xE4, 0x37, 0x02, 0xDC, 0x37, 0x02, 0xE4, 0x37, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x37, 0x01, 0xE4, 0x58, 0x8A, 0xE4, 0x59, 0xDC, 0x5A, 0xD4, 0x9C, 0x83, 0x19, 0x4A, 0x58, 0x32, 0x39, 0x22, 0x7B, 0x2B, 0x3E, 0x23, 0x7F, 0x13, 0x7F, 0x0B, 0x7F, 0x04, 0x03, 0x7F, 0x80, 0x0B, 0x7F, 0x02, 0x03, 0x7F, 0x80, 0x03, 0x5F, 0x02, 0x03, 0x7F, 0x8A, 0x03, 0x5E, 0x03, + 0x7E, 0x03, 0x7D, 0x03, 0x9D, 0x03, 0xBC, 0x04, 0x7B, 0x1E, 0x3F, 0x2F, 0x3F, 0x1F, 0x7F, 0x17, 0x9E, 0x0F, 0xBE, 0x02, 0x07, 0xBE, 0x8B, 0x07, 0xBD, 0x0F, 0x9E, 0x1F, 0x9E, 0x27, 0x5F, 0x3F, 0x1F, 0x66, 0x9F, 0x6C, 0xDA, 0x72, 0x92, 0x9A, 0x33, 0xB1, 0xF3, 0xB9, 0xB3, 0xC1, 0xB3, 0x01, 0xC1, 0x94, 0x01, 0xC1, 0xB4, 0x85, 0xC1, 0xD4, 0xB1, 0xD4, 0xA9, 0xF5, 0x79, 0x52, 0x61, 0x52, 0x59, 0x72, 0x01, 0x49, 0x72, 0x01, 0x41, 0x72, 0x85, 0x41, 0x92, 0x39, 0x92, 0x39, 0x71, 0x39, 0x92, 0x31, 0x51, 0x39, 0x51, 0x02, 0x31, 0x51, 0x81, 0x31, 0x30, 0x31, 0x51, 0x01, 0x31, 0x30, 0x80, 0x29, 0x30, 0x02, 0x29, 0x50, 0x0F, 0x29, 0x30, 0x86, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x87, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x94, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x09, 0x33, 0x19, 0xB6, 0x2A, 0x38, 0x22, 0x17, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, + 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x07, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x03, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x11, 0x33, 0x02, 0x11, 0x13, 0x80, 0x11, 0x12, 0x01, 0x11, 0x13, 0x05, 0x11, 0x33, 0x01, 0x11, 0x13, 0x01, 0x11, 0x33, + 0x01, 0x11, 0x13, 0x02, 0x11, 0x33, 0x80, 0x11, 0x13, 0x0D, 0x11, 0x33, 0x81, 0x11, 0x54, 0x11, 0x33, 0x01, 0x09, 0x33, 0x81, 0x09, 0x13, 0x09, 0x14, 0x01, 0x09, 0x35, 0x85, 0x01, 0x56, 0x09, 0xB8, 0x11, 0xFA, 0x09, 0xFA, 0x09, 0xDA, 0x01, 0x99, 0x01, 0x01, 0xD9, 0x89, 0x09, 0xF9, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0x96, 0x11, 0x54, 0x11, 0x13, 0x19, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x0D, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x21, 0x32, 0x19, 0x12, 0x11, 0x33, 0x11, 0x74, 0x09, 0x96, 0x09, 0xB7, 0x04, 0x09, 0xD8, 0x01, 0x09, 0xF9, 0x86, 0x09, 0xB8, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x54, 0x08, 0xF1, 0x10, 0xF1, 0x19, 0x11, 0x01, 0x21, 0x51, 0x88, 0x21, 0x30, 0x21, 0x10, 0x19, 0x11, 0x11, 0x32, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xF8, 0x09, 0xF9, 0x01, 0xD8, 0x02, 0x01, 0xD9, 0x04, 0x01, 0xDA, 0x91, 0x01, 0xBA, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x08, 0xF2, 0x08, 0xD2, 0x09, 0x13, 0x11, 0x75, 0x11, 0xD7, 0x11, 0xD8, 0x12, 0x19, 0x01, 0xB8, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0x01, 0xFA, 0x83, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x85, 0x01, 0xB8, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xD7, 0x11, 0x74, 0x09, 0x33, 0x01, 0x09, + 0x12, 0x84, 0x09, 0x13, 0x11, 0x95, 0x19, 0xF7, 0x09, 0xD7, 0x09, 0xF9, 0x02, 0x01, 0xB9, 0x84, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x89, 0x09, 0xF9, 0x11, 0xD8, 0x11, 0x96, 0x11, 0x54, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x84, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x0B, 0x29, 0x30, 0x09, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x8D, 0x20, 0xEE, 0x28, 0xAC, 0x62, 0x11, 0xDD, 0x3C, 0xD4, 0xB9, 0xD4, 0x98, 0xD4, 0x78, 0xCC, 0x57, 0xC4, 0x57, 0xBC, 0x97, 0xF6, 0xDF, 0xF7, 0x9F, 0xE7, 0xBF, 0xE7, 0xDF, 0x02, 0xDF, 0xDF, 0x80, 0xD7, 0xFF, 0x06, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x80, 0xD7, 0xDF, 0x03, 0xD7, 0xFF, 0x03, 0xDF, 0xFF, 0x02, 0xE7, 0xFF, 0x04, 0xEF, 0xDF, 0x81, 0xEF, 0xBF, 0xF7, 0xBF, 0x01, 0xF7, 0x9F, 0x80, 0xFF, 0x7F, 0x05, 0xFF, 0x5F, 0x80, 0xFF, 0x7F, 0x01, 0xFF, 0x9F, 0x80, 0xF7, 0x9F, 0x01, 0xF7, 0xBF, 0x01, 0xEF, 0xBF, 0x01, 0xEF, 0xDF, 0x03, 0xE7, + 0xDF, 0x07, 0xDF, 0xDF, 0x04, 0xE7, 0xDF, 0x01, 0xEF, 0xDF, 0x02, 0xEF, 0xBF, 0x01, 0xF7, 0x9F, 0x01, 0xFF, 0x7F, 0x01, 0xFF, 0x5F, 0x01, 0xFF, 0x3F, 0x80, 0xFF, 0x5F, 0x02, 0xFF, 0x7F, 0x81, 0xFF, 0x9F, 0xF7, 0x9F, 0x01, 0xF7, 0xBF, 0x02, 0xEF, 0xBF, 0x80, 0xEF, 0xDF, 0x02, 0xE7, 0xDF, 0x81, 0xDF, 0xDF, 0xDF, 0xFF, 0x02, 0xDF, 0xDF, 0x81, 0xD7, 0xDF, 0xD7, 0xFF, 0x14, 0xD7, 0xDF, 0x84, 0xD7, 0xFF, 0xD7, 0xDF, 0xD7, 0xFF, 0xD7, 0xDF, 0xD7, 0xFF, 0x07, 0xD7, 0xDF, 0x80, 0xD7, 0xFF, 0x06, 0xD7, 0xDF, 0x80, 0xD7, 0xFF, 0x3D, 0xD7, 0xDF, 0x80, 0xD7, 0xFF, 0x11, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x02, 0xD7, 0xDF, 0x81, 0xD7, 0xFF, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x85, 0xEF, 0xBF, 0xEE, 0xDF, 0x93, 0x33, 0x89, 0xB0, 0x99, 0xB1, 0xA1, 0xB1, 0x01, 0xA9, 0xD2, 0x80, 0xB1, 0xD2, 0x03, 0xB1, 0xD3, 0x80, 0xB9, 0xF3, 0x03, 0xB9, 0xD3, 0x88, 0xB9, 0xB3, 0xB1, 0xB3, 0xB1, 0xB2, 0xA9, 0x92, 0x99, 0xD1, 0x92, 0x91, 0xFE, 0xBF, 0xF7, 0x7F, 0xEF, 0xBF, 0x05, 0xE7, 0xDF, 0x01, 0xEF, 0xDF, 0x80, 0xEF, 0xBF, 0x01, 0xF7, 0xBF, 0x01, 0xFF, 0xBF, 0x02, 0xFF, 0x9F, 0x80, 0xF7, 0x9F, 0x01, 0xF7, 0xBF, 0x81, 0xEF, 0xBF, 0xEF, 0xDF, 0x01, 0xE7, 0xDF, 0x01, 0xDF, 0xDF, 0x80, 0xDF, 0xFF, 0x03, 0xDF, 0xDF, 0x08, 0xD7, 0xDF, 0x80, 0xD7, 0xFF, 0x01, 0xD7, 0xDF, 0x08, 0xDF, 0xDF, 0x86, 0xE7, 0xDF, 0xE7, 0xBF, 0xEF, 0x9F, 0xFF, 0x5F, 0xBC, 0xD7, 0xC4, 0x56, 0xCC, 0x36, 0x01, 0xD4, 0x17, 0x0B, 0xDC, 0x37, 0x81, 0xE4, 0x37, 0xE4, 0x36, 0x10, 0xE4, 0x37, 0x82, + 0xE4, 0x36, 0xDC, 0x16, 0xDC, 0x36, 0x04, 0xE4, 0x37, 0x83, 0xDC, 0x37, 0xE4, 0x37, 0xDC, 0x37, 0xE4, 0x37, 0x05, 0xDC, 0x37, 0x8C, 0xE4, 0x38, 0xE4, 0x58, 0xE4, 0x59, 0xDC, 0x7A, 0xD4, 0xDE, 0x41, 0x54, 0x21, 0x35, 0x19, 0x98, 0x11, 0xF9, 0x1A, 0xFD, 0x1B, 0x7F, 0x13, 0x9F, 0x0B, 0xBF, 0x03, 0x03, 0x9F, 0x81, 0x03, 0x7F, 0x0B, 0x9F, 0x06, 0x03, 0x7F, 0x8A, 0x03, 0x5E, 0x03, 0x7E, 0x03, 0x9E, 0x03, 0xBD, 0x03, 0xDC, 0x04, 0x5B, 0x1D, 0xDE, 0x2F, 0x3F, 0x1F, 0x7F, 0x17, 0xBF, 0x0F, 0xBE, 0x01, 0x07, 0xBE, 0x8B, 0x07, 0xDE, 0x0F, 0xDE, 0x0F, 0xBE, 0x17, 0x9E, 0x2F, 0x7F, 0x3F, 0x1F, 0x66, 0xBF, 0x6C, 0xDA, 0x6A, 0x93, 0x9A, 0x53, 0xA9, 0xD3, 0xB9, 0xB3, 0x02, 0xC1, 0xB4, 0x8A, 0xC1, 0x94, 0xB9, 0x94, 0xB9, 0xD4, 0xB9, 0xF5, 0xAA, 0x15, 0x71, 0x52, 0x61, 0x52, 0x51, 0x72, 0x49, 0x72, 0x49, 0x93, 0x41, 0x72, 0x01, 0x41, 0x92, 0x82, 0x39, 0x92, 0x39, 0x71, 0x39, 0x72, 0x03, 0x39, 0x51, 0x80, 0x31, 0x51, 0x01, 0x31, 0x50, 0x81, 0x31, 0x51, 0x31, 0x31, 0x08, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x08, 0x29, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x88, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, + 0x2F, 0x88, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x51, 0x19, 0x52, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x22, 0x38, 0x22, 0x17, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, + 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x19, 0x32, 0x03, 0x19, 0x12, 0x04, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x32, 0x01, 0x19, 0x12, 0x80, 0x19, 0x32, 0x04, 0x19, 0x12, 0x80, 0x19, 0x32, 0x02, 0x19, 0x12, 0x01, 0x19, 0x32, 0x83, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x02, 0x19, 0x12, 0x82, 0x19, 0x32, 0x19, 0x33, 0x19, 0x32, 0x03, 0x11, 0x32, 0x80, 0x11, 0x12, 0x01, 0x11, 0x33, 0x87, 0x11, 0x34, 0x11, 0x14, 0x09, 0x35, 0x09, 0x56, 0x09, 0xB8, 0x12, 0x1A, 0x09, 0xD9, 0x09, 0xDA, 0x01, 0x01, 0xB9, 0x88, 0x09, 0xD9, 0x09, 0xFA, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x54, 0x11, 0x13, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x08, 0x21, 0x30, 0x80, 0x21, 0x11, 0x01, 0x19, 0x32, 0x83, 0x11, 0x33, 0x11, 0x74, 0x09, 0x95, 0x09, 0xD7, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xF9, + 0x89, 0x01, 0xD8, 0x0A, 0x19, 0x09, 0xF9, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x34, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x01, 0x21, 0x51, 0x88, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x19, 0x11, 0x11, 0x53, 0x11, 0xB6, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xF9, 0x02, 0x01, 0xD9, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x95, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0x95, 0x11, 0x53, 0x11, 0x12, 0x10, 0xF2, 0x08, 0xF2, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xFA, 0x01, 0xDA, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x8D, 0x09, 0xD9, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x08, 0xF2, 0x09, 0x53, 0x11, 0xD6, 0x11, 0xF8, 0x09, 0xB8, 0x01, 0xB8, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x03, 0x01, 0xDA, 0x89, 0x01, 0xD9, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0x96, 0x11, 0x34, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x85, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, + 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x0B, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8C, 0x28, 0xCD, 0x28, 0xAC, 0xA3, 0xF8, 0xD4, 0xDB, 0xD4, 0x99, 0xD4, 0x78, 0xCC, 0x58, 0xCC, 0x57, 0xC4, 0x77, 0xBC, 0xF7, 0xF7, 0x7F, 0xEF, 0xBF, 0xE7, 0xDF, 0x01, 0xDF, 0xDF, 0x06, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x80, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x88, 0xDF, 0xFF, 0xD7, 0xDF, 0xD7, 0xFF, 0xD7, 0xDF, 0xDF, 0xDF, 0xDF, 0xFF, 0xDF, 0xDF, 0xDF, 0xFF, 0xE7, 0xFF, 0x01, 0xE7, 0xDF, 0x82, 0xEF, 0xBF, 0xF7, 0xBF, 0xF7, 0x9F, 0x01, 0xFF, 0x9F, 0x87, 0xFF, 0x7F, 0xFF, 0x1F, 0xE6, 0x5E, 0xD5, 0xBB, 0xC4, 0xF9, 0xB4, 0x77, 0xAB, 0xF5, 0xA3, 0x94, 0x01, 0x93, 0x12, 0x87, 0xA3, 0x94, 0xAB, 0xB5, 0xB4, 0x16, 0xBC, 0x77, 0xCD, 0x19, 0xDD, 0xDC, 0xF6, 0xDF, 0xFF, 0x7F, 0x01, 0xFF, 0x9F, 0x81, 0xF7, 0x7F, 0xF7, 0x9F, 0x01, 0xEF, 0xBF, 0x03, 0xE7, 0xDF, 0x04, 0xDF, 0xDF, 0x03, 0xE7, 0xDF, 0x01, 0xEF, 0xBF, 0x94, 0xF7, 0xBF, 0xF7, 0x9F, 0xFF, 0x9F, 0xFF, 0x7F, 0xFF, 0x5F, 0xE6, 0x3D, 0xCD, 0x5A, 0xBC, 0x97, 0xA3, 0xD5, 0x93, 0x32, 0x93, 0x12, 0x92, 0xF2, 0x93, 0x12, 0x9B, 0x73, 0xAB, 0xD5, 0xBC, 0x57, 0xC4, 0xB8, 0xCD, 0x19, 0xDD, 0x9B, 0xEE, 0x5D, 0xFF, 0x1F, 0x02, 0xFF, 0x7F, 0x85, 0xF7, 0x7F, 0xF7, 0x9F, 0xEF, 0xBF, 0xE7, 0xBF, 0xE7, 0xDF, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x06, 0xD7, 0xDF, 0x01, 0xCF, + 0xDF, 0x02, 0xD7, 0xDF, 0x80, 0xCF, 0xBF, 0x03, 0xD7, 0xDF, 0x80, 0xD7, 0xBF, 0x01, 0xD7, 0xDF, 0x80, 0xD7, 0xFF, 0x01, 0xD7, 0xDF, 0x0B, 0xD7, 0xFF, 0x02, 0xD7, 0xDF, 0x80, 0xD7, 0xFF, 0x0D, 0xD7, 0xDF, 0x80, 0xD7, 0xBF, 0x46, 0xD7, 0xDF, 0x80, 0xCF, 0xDF, 0x02, 0xD7, 0xDF, 0x80, 0xD7, 0xFF, 0x01, 0xD7, 0xDF, 0x02, 0xDF, 0xDF, 0x85, 0xE7, 0x9F, 0xE6, 0xDF, 0x93, 0x53, 0x89, 0xB0, 0x99, 0xB1, 0xA1, 0xD2, 0x01, 0xA9, 0xD2, 0x01, 0xB1, 0xD3, 0x01, 0xB1, 0xF3, 0x03, 0xB9, 0xF3, 0x81, 0xB9, 0xD3, 0xB1, 0xD3, 0x01, 0xB1, 0xB3, 0x85, 0xA9, 0xB2, 0x99, 0xB1, 0x79, 0x6E, 0xBC, 0x57, 0xFF, 0x7F, 0xEF, 0x9F, 0x05, 0xE7, 0xDF, 0x92, 0xEF, 0xBF, 0xEF, 0x9F, 0xF7, 0x9F, 0xFF, 0x9F, 0xFF, 0x7F, 0xE6, 0x3D, 0xCD, 0x7A, 0xC4, 0xF9, 0xBC, 0x97, 0xBC, 0x77, 0xC4, 0xD8, 0xD5, 0x7A, 0xE6, 0x1D, 0xFF, 0x1F, 0xFF, 0x7F, 0xFF, 0x9F, 0xF7, 0x9F, 0xEF, 0xDF, 0xE7, 0xDF, 0x04, 0xDF, 0xDF, 0x0E, 0xD7, 0xDF, 0x07, 0xDF, 0xDF, 0x86, 0xE7, 0xDF, 0xE7, 0xBF, 0xF7, 0x9F, 0xF7, 0x1F, 0xBC, 0x96, 0xC4, 0x56, 0xCC, 0x36, 0x01, 0xD4, 0x17, 0x0A, 0xDC, 0x37, 0x01, 0xE4, 0x36, 0x80, 0xDC, 0x36, 0x01, 0xE4, 0x37, 0x01, 0xDC, 0x37, 0x81, 0xE4, 0x37, 0xE4, 0x17, 0x01, 0xE4, 0x37, 0x80, 0xE4, 0x16, 0x0C, 0xE4, 0x37, 0x83, 0xE4, 0x16, 0xE4, 0x37, 0xDC, 0x37, 0xDC, 0x36, 0x07, 0xDC, 0x37, 0x80, 0xDC, 0x38, 0x01, 0xE4, 0x59, 0x8C, 0xDC, 0x5A, 0xD4, 0xDF, 0x28, 0xD3, 0x19, 0x57, 0x11, 0x98, 0x09, 0xFA, 0x12, 0xBC, 0x1B, 0x5E, 0x13, 0x9F, 0x0B, 0xBF, 0x0B, 0x9F, + 0x03, 0x9F, 0x0B, 0xBF, 0x03, 0x0B, 0x9F, 0x80, 0x03, 0x7F, 0x01, 0x0B, 0x7F, 0x82, 0x0B, 0x9F, 0x0B, 0x7F, 0x03, 0x7F, 0x01, 0x03, 0x7E, 0x88, 0x03, 0x9E, 0x03, 0xBD, 0x03, 0xDC, 0x04, 0x3B, 0x15, 0xBE, 0x2F, 0x1F, 0x1F, 0x5F, 0x17, 0x9E, 0x0F, 0xBE, 0x01, 0x07, 0xBD, 0x8E, 0x07, 0xDD, 0x07, 0xDE, 0x0F, 0x9E, 0x17, 0x9E, 0x27, 0x7F, 0x3F, 0x1F, 0x66, 0xBF, 0x6D, 0x1A, 0x72, 0x93, 0x9A, 0x33, 0xA9, 0xD3, 0xB9, 0xD3, 0xC1, 0xB3, 0xC1, 0xB4, 0xC1, 0x94, 0x01, 0xC1, 0xB4, 0x8A, 0xB9, 0xD4, 0xB1, 0xF5, 0xAA, 0x36, 0x71, 0x52, 0x59, 0x52, 0x51, 0x72, 0x49, 0x72, 0x41, 0x72, 0x41, 0x92, 0x41, 0x72, 0x41, 0x92, 0x01, 0x39, 0x72, 0x02, 0x39, 0x71, 0x03, 0x31, 0x51, 0x82, 0x31, 0x50, 0x31, 0x31, 0x31, 0x30, 0x12, 0x29, 0x30, 0x86, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x91, 0x29, 0x2F, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x19, 0x31, 0x19, 0x52, 0x11, 0x32, 0x11, 0x33, 0x11, 0x95, 0x2A, 0x38, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x33, 0x19, 0x32, + 0x21, 0x52, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x08, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x0B, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x30, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, + 0x0F, 0x02, 0x19, 0x31, 0x03, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x32, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x19, 0x31, 0x04, 0x19, 0x11, 0x80, 0x19, 0x31, 0x05, 0x19, 0x11, 0x01, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x04, 0x19, 0x31, 0x96, 0x19, 0x32, 0x19, 0x12, 0x19, 0x33, 0x11, 0x33, 0x11, 0x34, 0x09, 0x34, 0x09, 0x56, 0x11, 0xB7, 0x11, 0xF9, 0x09, 0xD9, 0x09, 0xDA, 0x01, 0xB9, 0x01, 0x99, 0x01, 0xB9, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x19, 0x31, 0x01, 0x21, 0x31, 0x06, 0x21, 0x30, 0x04, 0x21, 0x10, 0x06, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x08, 0x21, 0x30, 0x81, 0x21, 0x51, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x32, 0x11, 0x11, 0x11, 0x12, 0x11, 0x54, 0x09, 0x95, 0x09, 0xB7, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xD9, 0x01, 0x01, 0xB8, 0x88, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x19, 0x10, 0x19, 0x32, 0x11, 0x74, 0x11, 0xB7, 0x09, 0xB8, 0x01, 0x01, 0xB9, 0x80, 0x01, 0xD9, 0x03, 0x01, 0xDA, 0x82, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0x01, 0xD9, 0x84, 0x09, 0xF9, 0x11, 0xF8, 0x11, 0xD7, 0x09, 0x54, 0x11, 0x33, 0x01, 0x11, 0x32, 0x86, 0x10, 0xF2, 0x11, 0x33, 0x19, 0xD7, 0x11, 0xF8, 0x01, 0x97, 0x01, 0xB8, 0x01, 0xB9, 0x01, + 0x01, 0xD9, 0x82, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xDA, 0x02, 0x01, 0xB9, 0x87, 0x01, 0xDA, 0x01, 0xD9, 0x09, 0xD9, 0x11, 0xF8, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x19, 0x32, 0x01, 0x11, 0x11, 0x88, 0x09, 0x12, 0x19, 0xD6, 0x1A, 0x17, 0x09, 0xB7, 0x01, 0x98, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xBA, 0x04, 0x01, 0xDA, 0x89, 0x09, 0xDA, 0x01, 0xB9, 0x09, 0xD9, 0x11, 0xD8, 0x11, 0x96, 0x09, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x84, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x88, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x09, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x0A, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0E, 0x28, 0xCD, 0x38, 0xED, 0xBC, 0x79, 0xCC, 0x99, 0xD4, 0x78, 0x01, 0xCC, 0x58, 0x84, 0xCC, 0x57, 0xB4, 0x15, 0xF7, 0x1F, 0xEF, 0x9F, 0xE7, 0xBF, 0x01, 0xDF, 0xDF, 0x06, 0xD7, 0xDF, 0x80, 0xCF, 0xDF, 0x03, 0xD7, 0xDF, 0x80, 0xD7, 0xFF, 0x01, 0xD7, + 0xDF, 0x01, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x80, 0xDF, 0xDF, 0x01, 0xE7, 0xDF, 0x88, 0xEF, 0xDF, 0xEF, 0xBF, 0xFF, 0x9F, 0xFF, 0x3F, 0xEE, 0x5E, 0xCC, 0xFA, 0xA3, 0x33, 0x79, 0xCF, 0x71, 0x6E, 0x01, 0x79, 0x6E, 0x01, 0x81, 0x8F, 0x01, 0x89, 0x8F, 0x03, 0x89, 0x90, 0x80, 0x89, 0x6F, 0x01, 0x81, 0x6F, 0x89, 0x81, 0x6E, 0x79, 0x4E, 0x79, 0x4D, 0x8A, 0x30, 0xBB, 0xF6, 0xED, 0xDD, 0xFE, 0xDF, 0xFF, 0x5F, 0xF7, 0x9F, 0xEF, 0x9F, 0x01, 0xE7, 0xBF, 0x07, 0xE7, 0xDF, 0x8B, 0xE7, 0xBF, 0xEF, 0xBF, 0xF7, 0x9F, 0xF7, 0x3F, 0xEE, 0x9E, 0xDD, 0x9C, 0xAB, 0xD6, 0x8A, 0x30, 0x71, 0x6E, 0x79, 0x6E, 0x81, 0x6F, 0x81, 0x8F, 0x04, 0x89, 0xB0, 0x80, 0x89, 0x90, 0x01, 0x89, 0x8F, 0x01, 0x81, 0x6F, 0x8A, 0x81, 0x4E, 0x79, 0x4E, 0x79, 0x4D, 0x79, 0x8E, 0x9A, 0xF3, 0xDD, 0x5B, 0xF6, 0x5E, 0xFE, 0xFF, 0xFF, 0x7F, 0xF7, 0x9F, 0xEF, 0xBF, 0x01, 0xE7, 0xDF, 0x02, 0xDF, 0xDF, 0x04, 0xD7, 0xDF, 0x01, 0xCF, 0xDF, 0x82, 0xD7, 0xDF, 0xCF, 0xDF, 0xCF, 0xBF, 0x2C, 0xD7, 0xDF, 0x01, 0xD7, 0xBF, 0x27, 0xD7, 0xDF, 0x80, 0xD7, 0xBF, 0x17, 0xD7, 0xDF, 0x80, 0xCF, 0xDF, 0x08, 0xD7, 0xDF, 0x01, 0xDF, 0xDF, 0x88, 0xE7, 0x9F, 0xEE, 0xDF, 0x93, 0x53, 0x89, 0xD0, 0x99, 0xD2, 0xA1, 0xD2, 0xA9, 0xD2, 0xA9, 0xD3, 0xB1, 0xD3, 0x01, 0xB1, 0xF3, 0x01, 0xB1, 0xD3, 0x01, 0xB1, 0xF3, 0x03, 0xB1, 0xD3, 0x87, 0xA9, 0xB2, 0x99, 0xB1, 0xC3, 0xD7, 0xFE, 0x9F, 0xFF, 0x5F, 0xF7, 0x9F, 0xEF, 0xBF, 0xE7, 0xBF, 0x02, 0xE7, 0xDF, 0x01, 0xE7, 0xBF, 0x87, 0xEF, 0xBF, 0xF7, 0x7F, 0xF6, + 0xDF, 0xA3, 0xB5, 0x71, 0xAE, 0x71, 0x6E, 0x79, 0x6E, 0x79, 0x6F, 0x02, 0x81, 0x6F, 0x89, 0x79, 0x4E, 0x79, 0x6E, 0x71, 0x4D, 0x79, 0xCE, 0xB4, 0x36, 0xF6, 0xBF, 0xF7, 0x9F, 0xE7, 0xBF, 0xE7, 0xDF, 0xDF, 0xDF, 0x01, 0xDF, 0xFF, 0x05, 0xD7, 0xDF, 0x82, 0xD7, 0xBF, 0xD7, 0xDF, 0xD7, 0xBF, 0x06, 0xD7, 0xDF, 0x01, 0xD7, 0xBF, 0x81, 0xD7, 0xDF, 0xD7, 0xBF, 0x04, 0xDF, 0xDF, 0x87, 0xE7, 0xDF, 0xE7, 0xBF, 0xEF, 0x9F, 0xF7, 0x3F, 0xBC, 0xD7, 0xC4, 0x36, 0xCC, 0x16, 0xD4, 0x16, 0x01, 0xD4, 0x17, 0x01, 0xDC, 0x17, 0x81, 0xDC, 0x37, 0xDC, 0x17, 0x01, 0xDC, 0x37, 0x82, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x36, 0x02, 0xDC, 0x16, 0x81, 0xDC, 0x17, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x03, 0xE4, 0x17, 0x01, 0xE4, 0x16, 0x03, 0xE4, 0x17, 0x80, 0xE4, 0x37, 0x01, 0xE4, 0x17, 0x80, 0xE4, 0x37, 0x01, 0xE4, 0x17, 0x81, 0xDC, 0x16, 0xE4, 0x37, 0x02, 0xE4, 0x17, 0x80, 0xE4, 0x37, 0x01, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x80, 0xE4, 0x17, 0x01, 0xE4, 0x37, 0x01, 0xE4, 0x38, 0x8B, 0xDC, 0x38, 0xDC, 0x59, 0xDC, 0x7A, 0xD4, 0xFF, 0x20, 0xB2, 0x19, 0x57, 0x11, 0x99, 0x09, 0xDA, 0x12, 0x9C, 0x1B, 0x3E, 0x13, 0x9F, 0x13, 0xBF, 0x03, 0x0B, 0xBF, 0x03, 0x0B, 0x9F, 0x81, 0x0B, 0x7F, 0x0B, 0x9F, 0x02, 0x0B, 0x7F, 0x01, 0x03, 0x7E, 0x88, 0x03, 0x9E, 0x03, 0xBD, 0x03, 0xFC, 0x04, 0x3B, 0x0D, 0x5D, 0x2F, 0x1F, 0x1F, 0x5F, 0x17, 0x7E, 0x0F, 0x9E, 0x01, 0x07, 0xBD, 0x8D, 0x07, 0xDD, 0x07, 0xBD, 0x0F, 0xBE, 0x17, 0x9E, 0x27, 0x7E, 0x3F, 0x1F, 0x5E, 0xBF, 0x75, 0x7C, 0x6A, + 0x93, 0x92, 0x13, 0xB2, 0x14, 0xB9, 0xD4, 0xB9, 0x93, 0xC1, 0x94, 0x01, 0xC1, 0xB4, 0x8C, 0xB9, 0x93, 0xB9, 0xB4, 0xB1, 0xD4, 0xA1, 0xF5, 0x79, 0x93, 0x61, 0x52, 0x51, 0x52, 0x41, 0x52, 0x41, 0x72, 0x41, 0x93, 0x49, 0xB3, 0x41, 0x92, 0x39, 0x71, 0x01, 0x39, 0x51, 0x80, 0x39, 0x71, 0x03, 0x31, 0x51, 0x02, 0x31, 0x30, 0x01, 0x31, 0x50, 0x80, 0x29, 0x50, 0x0C, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x2A, 0x38, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x01, 0x19, 0x11, 0x01, 0x21, + 0x32, 0x80, 0x21, 0x31, 0x02, 0x19, 0x11, 0x02, 0x21, 0x31, 0x82, 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x08, 0x21, 0x10, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x05, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x06, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x05, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x05, 0x21, 0x31, 0x83, 0x21, 0x11, 0x19, 0x10, 0x21, 0x11, 0x21, 0x10, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x87, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x19, 0x10, 0x19, 0x11, 0x21, 0x11, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x10, 0x82, 0x19, 0x31, 0x19, 0x10, 0x19, 0x31, 0x02, 0x19, 0x11, 0x01, 0x19, 0x31, + 0x80, 0x19, 0x11, 0x03, 0x19, 0x31, 0x01, 0x19, 0x32, 0x84, 0x11, 0x13, 0x11, 0x33, 0x11, 0x34, 0x09, 0x55, 0x11, 0x97, 0x01, 0x11, 0xF9, 0x89, 0x09, 0xFA, 0x09, 0xB9, 0x01, 0x99, 0x09, 0xB9, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x12, 0x01, 0x19, 0x32, 0x80, 0x21, 0x32, 0x06, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x51, 0x06, 0x21, 0x30, 0x01, 0x21, 0x31, 0x88, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x09, 0x75, 0x09, 0xB7, 0x09, 0xD8, 0x01, 0xB8, 0x02, 0x01, 0xD8, 0x86, 0x09, 0xD9, 0x09, 0xF9, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x01, 0x19, 0x11, 0x80, 0x21, 0x51, 0x03, 0x21, 0x10, 0x85, 0x19, 0x10, 0x19, 0x31, 0x11, 0x33, 0x11, 0x75, 0x09, 0x97, 0x09, 0xB8, 0x01, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x81, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0x01, 0xD9, 0x85, 0x09, 0xF9, 0x11, 0xF9, 0x09, 0xB7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x01, 0x11, 0x11, 0x82, 0x11, 0x32, 0x11, 0x54, 0x11, 0xD7, 0x01, 0x09, 0xB8, 0x80, 0x01, 0xD9, 0x02, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x87, 0x01, 0xBA, 0x01, 0xDA, 0x01, 0xB9, 0x09, 0xDA, 0x09, 0xD9, 0x11, 0xD8, 0x19, 0xD7, 0x11, 0x95, 0x01, 0x11, 0x32, 0x80, 0x19, 0x31, 0x01, 0x11, 0x11, 0x86, 0x11, 0x33, 0x19, 0xD6, 0x09, 0xB7, 0x09, + 0xB8, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x02, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x8A, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xF8, 0x09, 0x75, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x19, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x04, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x05, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x20, 0xEE, 0x28, 0xAD, 0x59, 0xAF, 0xCC, 0xBA, 0xCC, 0x79, 0xD4, 0x78, 0x01, 0xCC, 0x58, 0x85, 0xC4, 0x57, 0xBC, 0xD8, 0xF7, 0x9F, 0xE7, 0x9F, 0xDF, 0xBF, 0xDF, 0xDF, 0x07, 0xD7, 0xDF, 0x01, 0xCF, 0xDF, 0x05, 0xD7, 0xDF, 0x01, 0xDF, 0xFF, 0x01, 0xDF, 0xDF, 0x01, 0xE7, 0xDF, 0x88, 0xEF, 0xBF, 0xF7, 0x9F, 0xFF, 0x7F, 0xC5, 0x19, 0x9B, 0x74, 0x82, 0x30, 0x89, 0xD0, 0x91, 0xB0, 0x91, 0x91, 0x06, 0x99, 0x91, 0x92, 0x99, 0x71, 0xA1, + 0x91, 0x99, 0x91, 0x99, 0x71, 0xA1, 0x92, 0xA1, 0x72, 0x99, 0x71, 0xA1, 0x71, 0x99, 0x71, 0x99, 0x91, 0x91, 0x90, 0x89, 0xB0, 0x81, 0xAF, 0x8A, 0x91, 0xB4, 0x16, 0xF6, 0xDF, 0xFF, 0x9F, 0xF7, 0x9F, 0xEF, 0x9F, 0x03, 0xE7, 0xBF, 0x8B, 0xE7, 0xDF, 0xE7, 0xBF, 0xEF, 0xBF, 0xEF, 0x9F, 0xF7, 0x7F, 0xFF, 0x7F, 0xF6, 0xDF, 0xBC, 0x77, 0x82, 0x71, 0x81, 0xF0, 0x89, 0xB0, 0x91, 0xB1, 0x03, 0x99, 0x91, 0x01, 0x99, 0x92, 0x05, 0x99, 0x91, 0x04, 0x99, 0x71, 0x8A, 0x99, 0x91, 0x91, 0x90, 0x81, 0x8F, 0x8A, 0x30, 0x92, 0xD2, 0xBC, 0x57, 0xFE, 0xFF, 0xFF, 0x7F, 0xF7, 0x7F, 0xEF, 0xBF, 0xE7, 0xBF, 0x02, 0xDF, 0xDF, 0x03, 0xD7, 0xDF, 0x03, 0xCF, 0xDF, 0x80, 0xCF, 0xBF, 0x07, 0xD7, 0xDF, 0x08, 0xD7, 0xBF, 0x01, 0xD7, 0xDF, 0x80, 0xCF, 0xBF, 0x01, 0xD7, 0xDF, 0x03, 0xCF, 0xDF, 0x01, 0xD7, 0xDF, 0x84, 0xCF, 0xBF, 0xD7, 0xDF, 0xCF, 0xDF, 0xCF, 0xBF, 0xCF, 0xDF, 0x02, 0xD7, 0xDF, 0x80, 0xCF, 0xBF, 0x06, 0xD7, 0xDF, 0x05, 0xD7, 0xBF, 0x03, 0xD7, 0xDF, 0x02, 0xCF, 0xDF, 0x06, 0xD7, 0xDF, 0x03, 0xCF, 0xDF, 0x01, 0xD7, 0xDF, 0x03, 0xCF, 0xDF, 0x03, 0xD7, 0xDF, 0x04, 0xCF, 0xDF, 0x02, 0xD7, 0xDF, 0x80, 0xD7, 0xBF, 0x0A, 0xD7, 0xDF, 0x80, 0xCF, 0xBF, 0x0D, 0xD7, 0xDF, 0x05, 0xCF, 0xDF, 0x01, 0xD7, 0xDF, 0x8A, 0xD7, 0xFF, 0xDF, 0xFF, 0xDF, 0xDF, 0xE7, 0x9F, 0xEE, 0xFF, 0x93, 0x53, 0x89, 0xD0, 0x99, 0xD2, 0xA1, 0xD2, 0xA9, 0xF2, 0xA9, 0xF3, 0x07, 0xB1, 0xF3, 0x02, 0xB1, 0xD3, 0x85, 0xA9, 0xB2, 0x91, 0xB0, 0xD4, 0xB9, 0xFF, 0x3F, 0xF7, 0x7F, 0xE7, + 0x9F, 0x03, 0xE7, 0xBF, 0x80, 0xE7, 0xDF, 0x01, 0xE7, 0xBF, 0x84, 0xEF, 0x7F, 0xEE, 0xBF, 0x8A, 0xF2, 0x79, 0xD0, 0x89, 0x90, 0x01, 0x91, 0x91, 0x01, 0x99, 0x91, 0x01, 0x99, 0x71, 0x02, 0x99, 0x91, 0x85, 0x91, 0xB1, 0x81, 0xAF, 0x8A, 0x91, 0xEE, 0x9E, 0xF7, 0x9F, 0xE7, 0xBF, 0x01, 0xDF, 0xDF, 0x04, 0xD7, 0xDF, 0x03, 0xD7, 0xBF, 0x03, 0xD7, 0xDF, 0x0A, 0xD7, 0xBF, 0x01, 0xDF, 0xDF, 0x01, 0xDF, 0xBF, 0x85, 0xE7, 0xBF, 0xEF, 0x9F, 0xF7, 0x1F, 0xBC, 0xB7, 0xBC, 0x36, 0xCC, 0x16, 0x02, 0xD4, 0x16, 0x05, 0xDC, 0x17, 0x02, 0xDC, 0x16, 0x80, 0xDC, 0x17, 0x01, 0xDC, 0x16, 0x01, 0xDC, 0x17, 0x81, 0xDC, 0x16, 0xE4, 0x16, 0x02, 0xE4, 0x17, 0x80, 0xE4, 0x16, 0x09, 0xE4, 0x17, 0x84, 0xE4, 0x16, 0xE4, 0x17, 0xDB, 0xF6, 0xE4, 0x17, 0xE3, 0xF7, 0x01, 0xE4, 0x17, 0x81, 0xDC, 0x16, 0xE4, 0x17, 0x02, 0xDC, 0x17, 0x01, 0xE4, 0x17, 0x8C, 0xE4, 0x38, 0xDC, 0x38, 0xE4, 0x39, 0xDC, 0x59, 0xD4, 0x5B, 0xCC, 0xBF, 0x18, 0xB3, 0x11, 0x58, 0x11, 0x99, 0x09, 0xFA, 0x12, 0x5C, 0x12, 0xFE, 0x1B, 0x9F, 0x05, 0x13, 0xBF, 0x81, 0x13, 0x9E, 0x13, 0x7E, 0x01, 0x13, 0x7F, 0x90, 0x13, 0x9F, 0x13, 0x7F, 0x13, 0x7E, 0x0B, 0x7F, 0x0B, 0x7E, 0x03, 0x7E, 0x03, 0x9E, 0x03, 0xBD, 0x03, 0xDC, 0x04, 0x3C, 0x0D, 0x3D, 0x2E, 0xFF, 0x1F, 0x3F, 0x17, 0x7E, 0x0F, 0x9E, 0x0F, 0xBE, 0x07, 0xBD, 0x01, 0x07, 0xDD, 0x8B, 0x0F, 0xBE, 0x17, 0x9E, 0x27, 0x7E, 0x3F, 0x1F, 0x5E, 0xDF, 0x75, 0x5B, 0x6A, 0x93, 0x92, 0x13, 0xA9, 0xD3, 0xB9, 0xD3, 0xB9, 0xB3, 0xB9, 0x93, 0x01, 0xC1, + 0xB4, 0x8C, 0xC1, 0xD4, 0xB9, 0xD4, 0xB1, 0xD4, 0xA2, 0x35, 0x79, 0xB3, 0x59, 0x52, 0x51, 0x52, 0x41, 0x52, 0x41, 0x72, 0x41, 0x93, 0x41, 0xB3, 0x41, 0x92, 0x39, 0x71, 0x01, 0x39, 0x51, 0x80, 0x39, 0x71, 0x01, 0x31, 0x51, 0x83, 0x39, 0x51, 0x31, 0x51, 0x31, 0x30, 0x31, 0x51, 0x01, 0x29, 0x50, 0x80, 0x31, 0x50, 0x11, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x0F, 0x86, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8F, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x13, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x02, 0x19, 0x31, 0x07, 0x19, 0x32, 0x86, 0x19, 0x31, 0x21, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x21, 0x31, 0x21, 0x10, 0x03, 0x21, + 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x0D, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x03, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x07, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x0D, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x19, 0x10, 0x21, 0x31, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x19, 0x10, 0x21, 0x10, 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x21, 0x11, 0x19, 0x11, 0x01, 0x19, 0x32, 0x84, 0x11, 0x13, 0x11, 0x34, 0x11, 0x76, 0x11, 0xB8, 0x11, 0xF9, 0x01, 0x09, 0xD9, 0x89, 0x09, 0xB9, 0x01, + 0x99, 0x01, 0xB9, 0x09, 0xB9, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xB6, 0x11, 0x55, 0x11, 0x33, 0x19, 0x53, 0x02, 0x19, 0x32, 0x01, 0x19, 0x31, 0x05, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x21, 0x11, 0x03, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x01, 0x21, 0x31, 0x89, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x31, 0x85, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x09, 0x54, 0x09, 0x75, 0x09, 0xD7, 0x01, 0x09, 0xD8, 0x01, 0x01, 0xD9, 0x89, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x11, 0x11, 0x53, 0x11, 0x96, 0x09, 0xB8, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x92, 0x09, 0xF9, 0x0A, 0x19, 0x09, 0xB8, 0x09, 0x96, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x54, 0x19, 0xD7, 0x09, 0xB8, 0x09, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xBA, 0x01, 0x01, 0xDA, 0x87, 0x01, 0xD9, 0x09, 0xB9, 0x11, 0xF9, 0x19, 0xD8, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x01, 0x19, 0x10, 0x87, 0x11, 0x11, 0x11, 0x53, 0x19, 0xF7, 0x09, 0xD7, 0x09, 0xD8, 0x09, + 0xD9, 0x01, 0xD9, 0x01, 0xDA, 0x02, 0x01, 0xBA, 0x82, 0x01, 0xB9, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0x09, 0xF9, 0x89, 0x11, 0xD7, 0x11, 0x96, 0x09, 0x54, 0x11, 0x32, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x21, 0x30, 0x29, 0x50, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x03, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x84, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x10, 0x29, 0x30, 0x87, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x20, 0xEF, 0x20, 0xEE, 0x20, 0x6C, 0x8B, 0x14, 0xCC, 0x9A, 0x01, 0xCC, 0x58, 0x86, 0xCC, 0x57, 0xC4, 0x57, 0xBC, 0x56, 0xE6, 0x5D, 0xEF, 0x7F, 0xDF, 0x9F, 0xDF, 0xBF, 0x03, 0xD7, 0xBF, 0x80, 0xCF, 0xBF, 0x01, 0xD7, 0xBF, 0x80, 0xD7, 0xDF, 0x03, 0xCF, 0xDF, 0x03, 0xD7, 0xDF, 0x04, 0xDF, 0xDF, 0x89, 0xE7, 0xBF, 0xEF, 0x9F, 0xF7, 0x3F, 0xDD, 0xBC, 0x92, 0xD2, 0x81, 0xAF, 0x89, 0xD0, 0x91, 0xB1, 0x99, 0xB1, 0x99, 0xB2, 0x05, 0xA1, 0xB2, 0x06, 0xA9, 0xB2, 0x02, 0xA9, 0x92, 0x02, 0xA1, 0x92, 0x87, 0xA1, 0x91, 0x99, 0xB1, 0x91, 0xD1, 0x89, 0xD0, 0x81, + 0xCF, 0xC4, 0x78, 0xF6, 0xBF, 0xF7, 0x5F, 0x01, 0xEF, 0x9F, 0x02, 0xE7, 0xBF, 0x8A, 0xEF, 0x9F, 0xEF, 0x7F, 0xF7, 0x5F, 0xF6, 0xDF, 0xC4, 0x99, 0x82, 0x10, 0x81, 0xB0, 0x91, 0xD1, 0x91, 0xB1, 0x99, 0xB2, 0xA1, 0x92, 0x04, 0xA1, 0xB2, 0x81, 0xA1, 0x92, 0xA9, 0xB2, 0x01, 0xA1, 0xB2, 0x02, 0xA9, 0xB2, 0x80, 0xA9, 0x92, 0x02, 0xA9, 0xB2, 0x02, 0xA1, 0x92, 0x8B, 0x99, 0xB1, 0x99, 0xD1, 0x91, 0xD1, 0x89, 0xD0, 0x79, 0xAF, 0xB3, 0xF6, 0xF6, 0x9F, 0xF7, 0x5F, 0xEF, 0x9F, 0xE7, 0xBF, 0xDF, 0xBF, 0xDF, 0xDF, 0x03, 0xD7, 0xDF, 0x01, 0xCF, 0xDF, 0x07, 0xCF, 0xBF, 0x80, 0xD7, 0xBF, 0x11, 0xCF, 0xBF, 0x80, 0xCF, 0xBE, 0x03, 0xCF, 0xBF, 0x80, 0xCF, 0xBE, 0x3B, 0xCF, 0xBF, 0x80, 0xD7, 0xDF, 0x17, 0xCF, 0xBF, 0x80, 0xCF, 0xDF, 0x03, 0xCF, 0xBF, 0x80, 0xD7, 0xBF, 0x01, 0xD7, 0xDF, 0x86, 0xDF, 0xDF, 0xE7, 0x9F, 0xEE, 0xDF, 0x93, 0x54, 0x89, 0xD0, 0x99, 0xD2, 0xA1, 0xF2, 0x01, 0xA9, 0xF3, 0x07, 0xB1, 0xF3, 0x01, 0xB1, 0xD3, 0x87, 0xA9, 0xD3, 0xA9, 0xB2, 0x91, 0xB0, 0xCC, 0xB9, 0xFF, 0x3F, 0xEF, 0x7F, 0xE7, 0x9F, 0xE7, 0xBF, 0x03, 0xDF, 0xBF, 0x88, 0xE7, 0xBF, 0xEF, 0xBF, 0xF7, 0x7F, 0x9B, 0x94, 0x81, 0xF0, 0x89, 0xB1, 0x91, 0xB2, 0x99, 0x92, 0x99, 0xB2, 0x05, 0xA1, 0xB2, 0x88, 0xA1, 0x92, 0x99, 0x92, 0x91, 0xB1, 0x89, 0xD0, 0x8A, 0xD2, 0xF6, 0xFF, 0xEF, 0x9F, 0xDF, 0xDF, 0xDF, 0xFF, 0x01, 0xD7, 0xDF, 0x01, 0xD7, 0xBF, 0x01, 0xD7, 0xDF, 0x01, 0xCF, 0xBF, 0x80, 0xD7, 0xBF, 0x02, 0xCF, 0xBF, 0x0D, 0xD7, 0xBF, 0x8C, 0xDF, 0xBF, 0xDF, 0xDF, + 0xDF, 0xBF, 0xE7, 0xBF, 0xEF, 0x7F, 0xF7, 0x5F, 0xC5, 0x38, 0xBC, 0x36, 0xCC, 0x16, 0xD4, 0x16, 0xD3, 0xF6, 0xD4, 0x17, 0xD4, 0x16, 0x01, 0xDB, 0xF6, 0x01, 0xDC, 0x16, 0x84, 0xDC, 0x17, 0xDB, 0xF6, 0xDC, 0x16, 0xDB, 0xF6, 0xDC, 0x16, 0x02, 0xDB, 0xF6, 0x80, 0xDC, 0x17, 0x01, 0xDB, 0xF6, 0x02, 0xE3, 0xF6, 0x85, 0xE4, 0x17, 0xDB, 0xF6, 0xE4, 0x17, 0xDB, 0xF6, 0xE3, 0xF6, 0xE4, 0x17, 0x01, 0xE3, 0xF6, 0x81, 0xE4, 0x16, 0xE3, 0xF6, 0x01, 0xDB, 0xF6, 0x83, 0xE3, 0xF6, 0xDB, 0xF6, 0xE3, 0xF7, 0xE3, 0xF6, 0x01, 0xE4, 0x16, 0x01, 0xDB, 0xF6, 0x01, 0xDB, 0xF7, 0x02, 0xDC, 0x17, 0x8B, 0xDC, 0x18, 0xDC, 0x39, 0xDC, 0x5A, 0xD4, 0x7B, 0xC4, 0xBF, 0x20, 0xB3, 0x19, 0x58, 0x11, 0x79, 0x11, 0xDA, 0x0A, 0x3B, 0x12, 0x9D, 0x1B, 0x5F, 0x01, 0x1B, 0xBF, 0x85, 0x1B, 0x9F, 0x1B, 0x9E, 0x1B, 0x7E, 0x1B, 0x9E, 0x1B, 0x7E, 0x23, 0x7E, 0x01, 0x23, 0x5E, 0x01, 0x23, 0x7E, 0x80, 0x1B, 0x7E, 0x01, 0x13, 0x7E, 0x01, 0x0B, 0x9E, 0x88, 0x03, 0xBD, 0x03, 0xDC, 0x04, 0x1C, 0x04, 0xDC, 0x26, 0xBF, 0x1F, 0x3F, 0x17, 0x7E, 0x0F, 0xBE, 0x07, 0xBD, 0x01, 0x07, 0xDD, 0x89, 0x07, 0xDE, 0x0F, 0xBE, 0x17, 0x9E, 0x27, 0x7F, 0x3F, 0x1F, 0x5E, 0xBF, 0x75, 0x5C, 0x6A, 0xB3, 0x92, 0x13, 0xB1, 0xF4, 0x01, 0xB9, 0xB3, 0x8D, 0xC1, 0xD4, 0xC1, 0x93, 0xC1, 0xB4, 0xB9, 0xB3, 0xB9, 0xD4, 0xB2, 0x15, 0xAA, 0x36, 0x69, 0x32, 0x50, 0xF1, 0x51, 0x73, 0x49, 0x72, 0x49, 0x93, 0x41, 0x93, 0x41, 0x92, 0x01, 0x39, 0x72, 0x80, 0x39, 0x71, 0x01, 0x39, 0x51, 0x04, 0x31, 0x51, 0x80, + 0x31, 0x50, 0x01, 0x29, 0x50, 0x12, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x8C, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x09, 0x13, 0x19, 0xB5, 0x2A, 0x38, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x32, 0x19, 0x51, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x50, 0x21, 0x30, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x32, 0x85, 0x19, 0x52, 0x19, 0x53, 0x11, 0x53, 0x19, 0x53, 0x11, 0x53, 0x19, 0x53, 0x01, 0x11, 0x33, 0x01, 0x11, 0x32, 0x80, 0x19, 0x32, 0x01, 0x19, 0x12, 0x80, 0x21, 0x32, 0x03, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x05, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, + 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x0B, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x08, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x08, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x13, 0x11, 0x14, 0x11, 0x76, 0x11, 0xB7, 0x11, 0xD9, 0x11, 0xF9, 0x09, 0xD9, 0x02, 0x09, 0xB9, 0x87, 0x09, 0xB8, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x11, 0x74, 0x11, 0x53, 0x11, 0x33, 0x02, 0x19, 0x32, 0x01, 0x19, 0x12, 0x81, 0x19, 0x32, 0x19, 0x12, 0x01, 0x19, 0x32, 0x84, 0x19, 0x31, 0x19, 0x32, 0x19, 0x11, + 0x19, 0x32, 0x19, 0x11, 0x08, 0x19, 0x31, 0x81, 0x19, 0x32, 0x19, 0x31, 0x03, 0x19, 0x32, 0x01, 0x11, 0x31, 0x86, 0x11, 0x11, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x19, 0x52, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x53, 0x09, 0x53, 0x09, 0x54, 0x09, 0x76, 0x09, 0xB7, 0x09, 0xD8, 0x09, 0xF9, 0x01, 0xD8, 0x09, 0xD9, 0x01, 0x09, 0xF9, 0x85, 0x11, 0xF9, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x19, 0x11, 0x19, 0x74, 0x09, 0x76, 0x11, 0xD8, 0x09, 0xF9, 0x03, 0x01, 0xD9, 0x02, 0x01, 0xB9, 0x80, 0x01, 0xD9, 0x01, 0x09, 0xF9, 0x86, 0x11, 0xF8, 0x09, 0x96, 0x11, 0x75, 0x09, 0x33, 0x11, 0x32, 0x19, 0x12, 0x19, 0x11, 0x01, 0x19, 0x31, 0x86, 0x11, 0x12, 0x11, 0x54, 0x11, 0xB7, 0x11, 0xF9, 0x01, 0xB9, 0x01, 0x98, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x8B, 0x01, 0xDA, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xDA, 0x01, 0xB9, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xD7, 0x11, 0x55, 0x11, 0x13, 0x11, 0x32, 0x19, 0x11, 0x02, 0x19, 0x10, 0x85, 0x19, 0x11, 0x19, 0x74, 0x19, 0xF7, 0x12, 0x19, 0x09, 0xD8, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x01, 0x01, 0xDA, 0x8B, 0x01, 0xBA, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xFA, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0x96, 0x09, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x02, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, + 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x05, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x84, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x0E, 0x29, 0x30, 0x89, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x20, 0xEF, 0x20, 0xCE, 0x20, 0x4B, 0xB4, 0x18, 0xCC, 0x79, 0x01, 0xCC, 0x58, 0x86, 0xCC, 0x37, 0xC4, 0x57, 0xB4, 0x77, 0xEE, 0xDF, 0xEF, 0x9F, 0xDF, 0x9F, 0xDF, 0xBF, 0x02, 0xD7, 0xBF, 0x02, 0xCF, 0xBF, 0x80, 0xD7, 0xBF, 0x02, 0xCF, 0xBF, 0x81, 0xCF, 0xDF, 0xCF, 0xBF, 0x03, 0xD7, 0xDF, 0x02, 0xDF, 0xDF, 0x8A, 0xE7, 0xDF, 0xEF, 0xBF, 0xF7, 0x9F, 0xEE, 0xDF, 0xA3, 0xB4, 0x82, 0x10, 0x91, 0xD1, 0x99, 0xB1, 0x99, 0xB2, 0xA1, 0x92, 0xA1, 0xB2, 0x01, 0xA9, 0xB2, 0x85, 0xA9, 0xB3, 0xA9, 0xB2, 0xA9, 0xB3, 0xA9, 0xD3, 0xA9, 0xB3, 0xA9, 0xD3, 0x01, 0xA9, 0xB3, 0x80, 0xA9, 0xD3, 0x07, 0xA9, 0xB3, 0x80, 0xA9, 0xB2, 0x01, 0xA9, 0x92, 0x88, 0xA1, 0xB2, 0xA1, 0x91, 0x99, 0xB1, 0x89, 0xB0, 0x92, 0xB2, 0xE5, 0xFD, 0xFF, 0x5F, 0xF7, 0x7F, 0xEF, 0x7F, 0x01, 0xEF, 0x9F, 0x86, 0xF7, 0x7F, 0xFF, 0x5F, 0xE5, 0xDC, 0x92, + 0xF3, 0x89, 0xD0, 0x91, 0xB1, 0x99, 0xB1, 0x02, 0xA1, 0xB2, 0x01, 0xA9, 0xB2, 0x01, 0xA9, 0xB3, 0x03, 0xA9, 0xD3, 0x80, 0xA9, 0xB3, 0x02, 0xA9, 0xD3, 0x04, 0xA9, 0xB3, 0x81, 0xB1, 0xB3, 0xA9, 0xB3, 0x02, 0xA9, 0xB2, 0x01, 0xA1, 0xB2, 0x88, 0x99, 0xD1, 0x91, 0xF1, 0x8A, 0x71, 0xC4, 0xF9, 0xFF, 0x7F, 0xEF, 0x7F, 0xE7, 0xBF, 0xDF, 0xBF, 0xDF, 0xDF, 0x01, 0xD7, 0xDF, 0x81, 0xD7, 0xBF, 0xCF, 0xDF, 0x39, 0xCF, 0xBF, 0x80, 0xCF, 0xBE, 0x08, 0xCF, 0xBF, 0x80, 0xCF, 0xBE, 0x01, 0xCF, 0xBF, 0x80, 0xCF, 0xBE, 0x18, 0xCF, 0xBF, 0x02, 0xCF, 0x9F, 0x0C, 0xCF, 0xBF, 0x01, 0xCF, 0xBE, 0x08, 0xCF, 0xBF, 0x80, 0xD7, 0xBF, 0x01, 0xD7, 0xDF, 0x86, 0xD7, 0xBF, 0xE7, 0x9F, 0xE6, 0xFF, 0x93, 0x74, 0x81, 0xD0, 0x99, 0xF2, 0xA1, 0xF2, 0x01, 0xA9, 0xF3, 0x02, 0xB1, 0xF3, 0x80, 0xB1, 0xD3, 0x01, 0xB9, 0xF3, 0x01, 0xB1, 0xF3, 0x01, 0xB1, 0xD3, 0x86, 0xA9, 0xD2, 0xA1, 0xB2, 0x89, 0xB0, 0xC4, 0x98, 0xFF, 0x5F, 0xEF, 0x7F, 0xE7, 0x9F, 0x01, 0xDF, 0xBF, 0x80, 0xDF, 0x9F, 0x01, 0xDF, 0xBF, 0x87, 0xE7, 0xBF, 0xEF, 0x9F, 0xD6, 0x1C, 0x82, 0x30, 0x89, 0xB1, 0x91, 0xB2, 0x99, 0xB2, 0xA1, 0xD2, 0x01, 0xA1, 0xD3, 0x02, 0xA9, 0xD3, 0x02, 0xA9, 0xB3, 0x86, 0xA1, 0x92, 0x99, 0x92, 0x91, 0xB1, 0x8A, 0x10, 0xCD, 0x3A, 0xEF, 0x9F, 0xDF, 0xDF, 0x02, 0xD7, 0xDF, 0x80, 0xD7, 0xBF, 0x0B, 0xCF, 0xBF, 0x80, 0xD7, 0xBF, 0x02, 0xCF, 0xBF, 0x81, 0xD7, 0xBF, 0xCF, 0x9F, 0x06, 0xD7, 0xBF, 0x02, 0xDF, 0xBF, 0x85, 0xE7, 0x9F, 0xF7, 0x5F, 0xCD, 0x59, 0xBC, 0x15, 0xC3, 0xF6, + 0xCB, 0xF6, 0x03, 0xD3, 0xF6, 0x80, 0xDC, 0x16, 0x0A, 0xDB, 0xF6, 0x83, 0xE3, 0xF6, 0xDB, 0xF6, 0xDB, 0xD6, 0xE3, 0xF6, 0x02, 0xDB, 0xF6, 0x05, 0xE3, 0xF6, 0x01, 0xDB, 0xF6, 0x01, 0xE3, 0xF6, 0x05, 0xDB, 0xF6, 0x04, 0xDB, 0xF7, 0x01, 0xDC, 0x18, 0x8E, 0xDC, 0x39, 0xDC, 0x3A, 0xD4, 0x5B, 0xC4, 0x9E, 0x20, 0xD4, 0x19, 0x78, 0x11, 0x99, 0x11, 0xBA, 0x12, 0x1B, 0x12, 0x5C, 0x1A, 0xFE, 0x23, 0x7F, 0x2B, 0xBF, 0x2B, 0x9F, 0x23, 0x7E, 0x01, 0x2B, 0x7D, 0x01, 0x33, 0x5D, 0x01, 0x33, 0x3D, 0x8F, 0x33, 0x5E, 0x33, 0x7E, 0x2B, 0x7E, 0x23, 0x9E, 0x1B, 0x7E, 0x13, 0x9E, 0x0B, 0x9E, 0x03, 0x9D, 0x03, 0xDC, 0x04, 0x1C, 0x04, 0xBC, 0x1E, 0x5F, 0x1E, 0xFF, 0x17, 0x7E, 0x0F, 0xBE, 0x07, 0xBD, 0x01, 0x07, 0xDD, 0x89, 0x07, 0xBD, 0x0F, 0xBD, 0x17, 0x9E, 0x27, 0x7E, 0x37, 0x1E, 0x5E, 0xBF, 0x75, 0x7C, 0x6A, 0xB3, 0x92, 0x33, 0xA9, 0xD3, 0x01, 0xB9, 0xB3, 0x02, 0xC1, 0xB4, 0x89, 0xC1, 0xD4, 0xB9, 0xD4, 0xB1, 0xF4, 0xAA, 0x56, 0x60, 0xF1, 0x50, 0xF1, 0x51, 0x73, 0x49, 0x72, 0x41, 0x72, 0x41, 0x93, 0x02, 0x39, 0x72, 0x02, 0x39, 0x71, 0x04, 0x31, 0x51, 0x82, 0x29, 0x50, 0x29, 0x51, 0x29, 0x50, 0x05, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x0A, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, + 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x07, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x19, 0x31, 0x85, 0x11, 0x32, 0x11, 0x12, 0x19, 0x95, 0x2A, 0x17, 0x21, 0xF6, 0x19, 0xB5, 0x01, 0x11, 0x12, 0x81, 0x19, 0x31, 0x19, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x19, 0x32, 0x11, 0x32, 0x11, 0x52, 0x01, 0x11, 0x53, 0x84, 0x19, 0x94, 0x19, 0x95, 0x19, 0xB5, 0x11, 0x75, 0x19, 0xB5, 0x03, 0x19, 0x95, 0x82, 0x11, 0x74, 0x11, 0x54, 0x11, 0x33, 0x01, 0x11, 0x12, 0x01, 0x19, 0x12, 0x80, 0x21, 0x32, 0x02, 0x21, 0x31, 0x83, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x86, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, + 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x0B, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x50, 0x09, 0x21, 0x30, 0x82, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x01, 0x11, 0x13, 0x84, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xF9, 0x09, 0xD9, 0x02, 0x09, 0xB9, 0x85, 0x09, 0xD9, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0xB7, 0x00, 0xF3, 0x00, 0xD2, 0x04, 0x08, 0xF2, 0x80, 0x08, 0xD2, 0x03, 0x08, 0xF2, 0x82, 0x09, 0x12, 0x08, 0xF1, 0x08, 0xF2, 0x01, 0x08, 0xF1, 0x02, 0x09, 0x12, 0x03, 0x08, 0xF1, 0x81, 0x08, 0xF2, 0x08, 0xF1, 0x01, 0x08, 0xF2, 0x03, 0x08, 0xF1, 0x01, 0x09, 0x12, 0x02, 0x08, 0xF1, 0x02, 0x10, 0xF1, 0x89, 0x09, 0x11, 0x09, 0x12, 0x09, 0x13, 0x01, 0x13, 0x09, 0x55, 0x09, 0x76, 0x09, 0x97, 0x09, 0xB8, 0x01, 0xB8, 0x01, 0xD8, 0x02, 0x09, 0xF9, 0x97, 0x12, 0x19, 0x11, 0xF8, 0x11, 0x96, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x18, 0xF0, 0x19, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x19, + 0x10, 0x19, 0x11, 0x11, 0x33, 0x11, 0x96, 0x11, 0xD8, 0x09, 0xF9, 0x09, 0xFA, 0x01, 0xD9, 0x01, 0x01, 0xB9, 0x02, 0x01, 0xD9, 0x87, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xF8, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x91, 0x11, 0x13, 0x1A, 0x17, 0x12, 0x19, 0x01, 0xB8, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0x99, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xD9, 0x11, 0xB8, 0x09, 0x96, 0x09, 0x34, 0x11, 0x33, 0x11, 0x32, 0x02, 0x19, 0x31, 0x85, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x19, 0x53, 0x19, 0xF8, 0x11, 0xF8, 0x01, 0x09, 0xD9, 0x04, 0x01, 0xB9, 0x01, 0x09, 0xF9, 0x85, 0x09, 0xF8, 0x11, 0xF8, 0x11, 0xB6, 0x09, 0x54, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x89, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, + 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x0E, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x8E, 0x21, 0x2F, 0x21, 0x0F, 0x20, 0xEF, 0x20, 0xCE, 0x20, 0x6B, 0xC4, 0x9A, 0xCC, 0x59, 0xCC, 0x38, 0xCC, 0x37, 0xC4, 0x37, 0xBC, 0x36, 0xB4, 0xB7, 0xEF, 0x1F, 0xE7, 0x9F, 0xDF, 0x9F, 0x02, 0xD7, 0xBF, 0x08, 0xCF, 0xBF, 0x80, 0xCF, 0xDF, 0x03, 0xD7, 0xDF, 0x01, 0xDF, 0xDF, 0x87, 0xDF, 0xBF, 0xEF, 0x9F, 0xF7, 0x3F, 0xD5, 0x5B, 0x82, 0x50, 0x89, 0xD0, 0x91, 0xD1, 0x99, 0xD2, 0x01, 0xA1, 0xB2, 0x83, 0xA9, 0xB2, 0xA9, 0xB3, 0xA9, 0xD3, 0xA9, 0xB3, 0x01, 0xA9, 0xD3, 0x0E, 0xB1, 0xD3, 0x80, 0xB1, 0xB3, 0x01, 0xA9, 0xB3, 0x8F, 0xA9, 0xB2, 0xA9, 0x92, 0xA1, 0x92, 0x99, 0xB1, 0x91, 0xB1, 0x89, 0xD0, 0xCC, 0x99, 0xFE, 0xDF, 0xFF, 0x5F, 0xF7, 0x5F, 0xFF, 0x5F, 0xFE, 0xDF, 0xCC, 0xB9, 0x81, 0xD0, 0x91, 0xB0, 0x99, 0xD2, 0x01, 0xA1, 0xB2, 0x81, 0xA9, 0xB2, 0xA9, 0xB3, 0x01, 0xA9, 0xD3, 0x80, 0xA9, 0xB3, 0x01, 0xB1, 0xD3, 0x01, 0xA9, 0xD3, 0x02, 0xB1, 0xD3, 0x80, 0xB1, 0xF3, 0x08, 0xB1, 0xD3, 0x01, 0xB1, 0xB3, 0x80, 0xA9, 0xB3, 0x01, 0xA9, 0xB2, 0x88, 0xA1, 0xB2, 0x99, 0xB1, 0x99, 0xD1, 0x81, 0xAF, 0xA3, 0x95, 0xF6, 0xBF, 0xEF, 0x7F, 0xE7, 0x9F, 0xDF, 0xBF, 0x02, 0xD7, 0xDF, 0x80, 0xD7, 0xBF, 0x04, 0xCF, 0xBF, 0x02, 0xCF, 0x9F, 0x0F, 0xCF, 0xBF, 0x81, 0xCF, 0x9F, 0xCF, 0xBF, 0x04, 0xCF, 0x9E, 0x07, 0xCF, 0xBF, 0x01, 0xCF, 0x9F, 0x07, 0xCF, 0xBF, 0x80, 0xCF, 0x9F, 0x11, 0xCF, 0xBF, 0x03, 0xCF, 0xBE, 0x15, 0xCF, 0xBF, 0x85, 0xCF, 0x9F, 0xCF, 0xBF, 0xCF, 0x9E, 0xCF, + 0xBF, 0xCF, 0x9F, 0xCF, 0xBF, 0x01, 0xCF, 0x9F, 0x01, 0xCF, 0xBF, 0x01, 0xCF, 0x9E, 0x0C, 0xCF, 0xBF, 0x80, 0xCF, 0x9F, 0x04, 0xCF, 0xBF, 0x8A, 0xCF, 0xDF, 0xD7, 0xDF, 0xDF, 0xDF, 0xE7, 0x9F, 0xE6, 0xBF, 0x9B, 0x94, 0x81, 0xF0, 0x99, 0xF1, 0xA1, 0xF2, 0xA9, 0xF2, 0xA9, 0xF3, 0x03, 0xB1, 0xF3, 0x80, 0xB1, 0xD3, 0x02, 0xB1, 0xF3, 0x80, 0xB1, 0xD3, 0x01, 0xA9, 0xD3, 0x84, 0xA1, 0xB2, 0x89, 0xB0, 0xC4, 0xD9, 0xF7, 0x3F, 0xE7, 0x7F, 0x01, 0xDF, 0x9F, 0x80, 0xDF, 0xBF, 0x01, 0xDF, 0x9F, 0x88, 0xDF, 0xBF, 0xE7, 0x9F, 0xEF, 0x5F, 0xB4, 0xB7, 0x79, 0xF0, 0x91, 0xD2, 0x99, 0xF2, 0xA1, 0xD3, 0xA1, 0xF3, 0x04, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x01, 0xA9, 0xB3, 0x85, 0xA1, 0xB2, 0x99, 0xB2, 0x91, 0xD1, 0x92, 0xD2, 0xF7, 0x7F, 0xDF, 0xBF, 0x01, 0xD7, 0xDF, 0x80, 0xD7, 0xBF, 0x03, 0xCF, 0xBF, 0x80, 0xCF, 0x9F, 0x0B, 0xCF, 0xBF, 0x02, 0xCF, 0x9F, 0x01, 0xD7, 0xBF, 0x80, 0xCF, 0x9F, 0x02, 0xD7, 0x9F, 0x01, 0xD7, 0xBF, 0x87, 0xDF, 0xBF, 0xDF, 0x9F, 0xE7, 0x7F, 0xF7, 0x5F, 0xCD, 0x9A, 0xB4, 0x15, 0xC3, 0xF6, 0xCB, 0xD6, 0x01, 0xD3, 0xD6, 0x82, 0xD3, 0xF6, 0xD3, 0xD6, 0xD3, 0xF6, 0x07, 0xDB, 0xF6, 0x01, 0xDB, 0xD6, 0x80, 0xDB, 0xF6, 0x01, 0xDB, 0xD6, 0x80, 0xDB, 0xF6, 0x01, 0xE3, 0xD6, 0x88, 0xDB, 0xD6, 0xE3, 0xD6, 0xE3, 0xF6, 0xE3, 0xD6, 0xE3, 0xF6, 0xE3, 0xD6, 0xDB, 0xD6, 0xE3, 0xF6, 0xE3, 0xD6, 0x01, 0xDB, 0xF6, 0x80, 0xDB, 0xD6, 0x01, 0xDB, 0xF6, 0x01, 0xE3, 0xF6, 0x82, 0xDB, 0xF6, 0xDB, 0xD6, 0xDB, 0xF6, 0x01, 0xDB, 0xF7, 0xA7, 0xE3, + 0xF7, 0xDB, 0xF8, 0xE4, 0x18, 0xE4, 0x19, 0xDC, 0x3A, 0xD4, 0x5B, 0xC4, 0x7E, 0x20, 0xD4, 0x21, 0x99, 0x19, 0x9A, 0x11, 0xBA, 0x11, 0xDB, 0x12, 0x1B, 0x1A, 0xBD, 0x2B, 0x3E, 0x3B, 0x9F, 0x43, 0xBF, 0x43, 0x9E, 0x43, 0x7D, 0x4B, 0x7D, 0x4B, 0x5D, 0x53, 0x5D, 0x53, 0x3D, 0x53, 0x5D, 0x53, 0x7D, 0x4B, 0x7D, 0x43, 0x7E, 0x33, 0x7D, 0x23, 0x9E, 0x1B, 0x9D, 0x13, 0xBD, 0x03, 0x9C, 0x03, 0xDC, 0x03, 0xFC, 0x04, 0xBC, 0x1E, 0x3F, 0x1E, 0xDF, 0x17, 0x5E, 0x0F, 0x9D, 0x07, 0xBD, 0x01, 0x07, 0xDD, 0x8C, 0x0F, 0xDD, 0x0F, 0xBD, 0x17, 0x9E, 0x27, 0x7E, 0x37, 0x1E, 0x5E, 0xBF, 0x75, 0x7C, 0x6A, 0x93, 0x92, 0x12, 0xB1, 0xF4, 0xB9, 0xB3, 0xB9, 0xD4, 0xC1, 0xB3, 0x01, 0xC1, 0xB4, 0x86, 0xB9, 0xB3, 0xB9, 0xD4, 0xB2, 0x15, 0xAA, 0x56, 0x68, 0xF1, 0x59, 0x11, 0x59, 0x73, 0x01, 0x49, 0x72, 0x83, 0x41, 0x92, 0x39, 0x52, 0x39, 0x72, 0x39, 0x71, 0x01, 0x39, 0x92, 0x80, 0x39, 0x71, 0x02, 0x31, 0x51, 0x80, 0x31, 0x31, 0x02, 0x29, 0x51, 0x02, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x0C, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x07, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, + 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8C, 0x21, 0x50, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x2A, 0x17, 0x22, 0x17, 0x19, 0x95, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x01, 0x11, 0x53, 0x81, 0x11, 0x74, 0x11, 0x95, 0x01, 0x11, 0xB5, 0x80, 0x19, 0xD6, 0x02, 0x19, 0xF7, 0x82, 0x19, 0xD7, 0x11, 0xD7, 0x19, 0xD7, 0x02, 0x19, 0xF7, 0x82, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x54, 0x01, 0x11, 0x33, 0x01, 0x19, 0x12, 0x81, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x08, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, + 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x04, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x87, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x0A, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x88, 0x21, 0x10, 0x21, 0x11, 0x21, 0x31, 0x19, 0x12, 0x11, 0x12, 0x09, 0x13, 0x11, 0x75, 0x19, 0xD7, 0x11, 0xF8, 0x01, 0x11, 0xF9, 0x83, 0x09, 0xB9, 0x09, 0xD9, 0x01, 0xB9, 0x09, 0xD9, 0x01, 0x11, 0xF9, 0x88, 0x09, 0x96, 0x01, 0x35, 0x01, 0x34, 0x09, 0x54, 0x09, 0x34, 0x09, 0x14, 0x09, 0x34, 0x09, 0x14, 0x09, 0x33, 0x01, 0x09, 0x34, 0x03, 0x09, 0x33, 0x80, 0x09, 0x13, 0x05, 0x09, 0x33, 0x80, 0x09, 0x53, 0x01, 0x09, 0x33, 0x80, 0x11, 0x54, 0x02, 0x09, 0x54, 0x80, 0x09, 0x53, 0x01, 0x09, 0x54, 0x02, 0x11, 0x74, 0x80, 0x11, 0x53, 0x01, 0x11, 0x33, 0x80, 0x11, 0x53, 0x01, 0x09, 0x33, 0x92, 0x09, 0x54, 0x11, 0x75, 0x11, 0x96, 0x09, 0xB7, 0x09, 0xB8, 0x09, 0xD9, 0x01, 0xB9, 0x09, 0xD9, 0x01, 0xD9, 0x09, 0xF9, 0x12, 0x1A, 0x12, 0x19, 0x11, 0xD8, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, + 0x10, 0x93, 0x19, 0x10, 0x19, 0x11, 0x19, 0x33, 0x11, 0x75, 0x11, 0xD7, 0x09, 0xD8, 0x09, 0xF9, 0x09, 0xD9, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xB8, 0x01, 0xD8, 0x01, 0xB8, 0x11, 0xF8, 0x11, 0xB7, 0x09, 0x75, 0x11, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x01, 0x19, 0x11, 0x88, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x18, 0xF1, 0x11, 0x12, 0x19, 0xD6, 0x12, 0x18, 0x09, 0xB8, 0x09, 0xD9, 0x01, 0x01, 0xD9, 0x89, 0x01, 0xB9, 0x01, 0xB8, 0x09, 0xD9, 0x09, 0xF9, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x55, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x11, 0x8B, 0x19, 0x31, 0x21, 0x31, 0x19, 0x30, 0x19, 0x11, 0x18, 0xF1, 0x19, 0x33, 0x19, 0xB6, 0x11, 0xF8, 0x11, 0xD9, 0x09, 0xD9, 0x09, 0xB9, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x01, 0x09, 0xF9, 0x84, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x01, 0x11, 0x32, 0x81, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x88, 0x21, + 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x0D, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x8B, 0x20, 0xEF, 0x20, 0xCE, 0x28, 0xAC, 0xCC, 0xBB, 0xCC, 0x58, 0xCC, 0x38, 0xCC, 0x37, 0xC4, 0x17, 0xBC, 0x36, 0xBC, 0xD8, 0xEF, 0x5F, 0xE7, 0x9F, 0x01, 0xD7, 0x9F, 0x01, 0xCF, 0x9F, 0x02, 0xCF, 0xBF, 0x02, 0xCF, 0x9F, 0x02, 0xCF, 0xBF, 0x01, 0xD7, 0xBF, 0x01, 0xD7, 0xDF, 0x01, 0xD7, 0xBF, 0x88, 0xDF, 0xBF, 0xE7, 0x7F, 0xF7, 0x5F, 0xAC, 0x36, 0x82, 0x30, 0x91, 0xD1, 0x99, 0xB1, 0xA1, 0xB2, 0xA9, 0xB2, 0x02, 0xA9, 0xD3, 0x07, 0xB1, 0xD3, 0x01, 0xB1, 0xF3, 0x01, 0xB1, 0xD3, 0x01, 0xB1, 0xF3, 0x01, 0xB1, 0xD3, 0x80, 0xB1, 0xF3, 0x02, 0xB1, 0xD3, 0x81, 0xB1, 0xB3, 0xB1, 0xD3, 0x01, 0xB1, 0xB3, 0x80, 0xA9, 0xB3, 0x01, 0xA9, 0x92, 0x89, 0xA1, 0x92, 0x99, 0xB1, 0x91, 0xD0, 0xA3, 0x14, 0xED, 0xBD, 0xFF, 0x1F, 0xFE, 0x7F, 0xAB, 0x54, 0x91, 0xF1, 0x99, 0xB1, 0x01, 0xA1, 0xB2, 0x02, 0xA9, 0xB3, 0x07, 0xB1, 0xD3, 0x01, 0xB1, 0xF4, 0x05, 0xB1, 0xF3, 0x01, 0xB1, 0xD3, 0x80, 0xB1, 0xF3, 0x05, 0xB1, 0xD3, 0x02, 0xA9, 0xB2, 0x87, 0xA1, 0x92, 0x99, 0xB1, 0x89, 0xD0, 0x92, 0xD2, 0xEE, 0x9F, 0xF7, 0x7F, 0xE7, 0x9F, 0xDF, 0xBF, 0x02, 0xD7, 0xBF, 0x04, 0xCF, 0xBF, 0x08, 0xCF, 0x9F, 0x01, 0xCF, 0xBF, 0x01, 0xCF, 0x9E, 0x84, 0xCF, 0xBF, 0xCF, 0xBE, 0xC7, 0x9E, 0xC7, 0xBE, 0xCF, 0xBE, 0x04, 0xCF, 0x9E, 0x81, 0xCF, 0xBF, 0xC7, 0x9E, 0x03, 0xCF, 0x9E, + 0x80, 0xCF, 0x9F, 0x04, 0xCF, 0xBF, 0x80, 0xCF, 0x9F, 0x03, 0xCF, 0xBF, 0x01, 0xCF, 0x9F, 0x01, 0xCF, 0xBF, 0x01, 0xCF, 0x9F, 0x81, 0xCF, 0xBF, 0xCF, 0x9E, 0x05, 0xCF, 0xBF, 0x02, 0xCF, 0xBE, 0x80, 0xCF, 0xBF, 0x01, 0xCF, 0x9F, 0x81, 0xCF, 0xBF, 0xCF, 0xBE, 0x01, 0xCF, 0x9E, 0x81, 0xCF, 0xBE, 0xC7, 0x9E, 0x01, 0xCF, 0x9E, 0x05, 0xCF, 0xBE, 0x80, 0xCF, 0x9E, 0x03, 0xCF, 0x9F, 0x01, 0xCF, 0x9E, 0x0A, 0xCF, 0x9F, 0x80, 0xCF, 0xBF, 0x05, 0xCF, 0x9F, 0x14, 0xCF, 0xBF, 0x8A, 0xCF, 0xDF, 0xD7, 0xDF, 0xD7, 0xBF, 0xDF, 0x9F, 0xDE, 0xBF, 0x9B, 0xB5, 0x81, 0xF0, 0x99, 0xF1, 0xA1, 0xF2, 0xA9, 0xF2, 0xA9, 0xF3, 0x06, 0xB1, 0xF3, 0x01, 0xB1, 0xD3, 0x86, 0xA9, 0xD3, 0xA9, 0xD2, 0xA1, 0xB2, 0x89, 0x90, 0xC4, 0xD9, 0xF7, 0x3F, 0xE7, 0x7F, 0x01, 0xDF, 0x9F, 0x02, 0xD7, 0x9F, 0x84, 0xDF, 0xBF, 0xE7, 0x9F, 0xEF, 0x3F, 0x93, 0x94, 0x81, 0xF0, 0x01, 0x99, 0xF2, 0x01, 0xA1, 0xF3, 0x01, 0xAA, 0x13, 0x80, 0xB2, 0x13, 0x03, 0xA9, 0xF3, 0x89, 0xA9, 0xD3, 0xA9, 0xB3, 0xA9, 0xB2, 0xA1, 0xB2, 0x99, 0xB1, 0x79, 0xCF, 0xF7, 0x5F, 0xE7, 0x9F, 0xD7, 0xBF, 0xD7, 0xDF, 0x02, 0xCF, 0xBF, 0x05, 0xCF, 0x9F, 0x02, 0xCF, 0xBF, 0x81, 0xCF, 0x9F, 0xCF, 0xBF, 0x01, 0xCF, 0x9F, 0x80, 0xCF, 0xBF, 0x07, 0xCF, 0x9F, 0x05, 0xD7, 0x9F, 0x86, 0xDF, 0x9F, 0xE7, 0x7F, 0xEF, 0x5F, 0xD5, 0x9A, 0xB3, 0xF5, 0xC3, 0xD5, 0xCB, 0xD6, 0x05, 0xD3, 0xD6, 0x81, 0xDB, 0xD6, 0xDB, 0xF6, 0x11, 0xDB, 0xD6, 0x01, 0xE3, 0xD6, 0x01, 0xDB, 0xD6, 0x80, 0xE3, 0xD6, 0x07, 0xDB, 0xD6, 0x01, + 0xDB, 0xD7, 0x93, 0xE3, 0xF7, 0xDB, 0xF8, 0xE3, 0xF8, 0xDC, 0x19, 0xDC, 0x3A, 0xD4, 0x3B, 0xC4, 0x5E, 0x28, 0xF4, 0x29, 0x78, 0x21, 0x79, 0x19, 0x9A, 0x19, 0xBA, 0x1A, 0x1B, 0x2A, 0x9D, 0x32, 0xDD, 0x43, 0x3D, 0x53, 0x5D, 0x5B, 0x7D, 0x63, 0x7D, 0x6B, 0x5C, 0x02, 0x6B, 0x1B, 0x90, 0x62, 0xFB, 0x63, 0x1C, 0x5B, 0x3C, 0x53, 0x5C, 0x3B, 0x5C, 0x33, 0x9D, 0x23, 0xBD, 0x1B, 0xDD, 0x0B, 0xBC, 0x03, 0xDC, 0x04, 0x1C, 0x04, 0x9C, 0x15, 0xFF, 0x16, 0xBF, 0x17, 0x5F, 0x0F, 0x9E, 0x07, 0xBD, 0x02, 0x07, 0xDD, 0x96, 0x0F, 0xBD, 0x17, 0x9D, 0x27, 0x7E, 0x37, 0x1E, 0x5E, 0xDF, 0x75, 0x7C, 0x6A, 0x93, 0x92, 0x12, 0xA9, 0xD3, 0xB9, 0xD4, 0xB9, 0x93, 0xC1, 0xB3, 0xC1, 0x93, 0xC1, 0xB4, 0xB9, 0xB3, 0xB9, 0xD4, 0xB1, 0xD4, 0xAA, 0x15, 0x79, 0x32, 0x58, 0xF1, 0x59, 0x52, 0x51, 0x72, 0x49, 0x72, 0x01, 0x41, 0x52, 0x85, 0x39, 0x71, 0x39, 0x92, 0x39, 0x91, 0x31, 0x71, 0x31, 0x51, 0x31, 0x71, 0x02, 0x31, 0x51, 0x02, 0x29, 0x51, 0x80, 0x29, 0x50, 0x05, 0x29, 0x30, 0x80, 0x29, 0x10, 0x0A, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x07, + 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x2A, 0x38, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x19, 0x51, 0x21, 0x31, 0x21, 0x50, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x01, 0x19, 0x31, 0x88, 0x19, 0x32, 0x11, 0x52, 0x11, 0x53, 0x11, 0x73, 0x11, 0x95, 0x19, 0xD6, 0x19, 0xF6, 0x19, 0xF7, 0x1A, 0x17, 0x01, 0x19, 0xF7, 0x83, 0x1A, 0x18, 0x19, 0xF7, 0x1A, 0x18, 0x19, 0xF7, 0x01, 0x1A, 0x18, 0x81, 0x1A, 0x38, 0x1A, 0x18, 0x01, 0x1A, 0x17, 0x82, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x01, 0x11, 0x33, 0x80, 0x11, 0x12, 0x01, 0x19, 0x32, 0x81, 0x21, 0x51, 0x21, 0x31, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x06, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x06, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x03, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, + 0x0F, 0x04, 0x21, 0x30, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x85, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x86, 0x19, 0x11, 0x10, 0xF1, 0x10, 0xF2, 0x09, 0x13, 0x11, 0x55, 0x19, 0xD7, 0x1A, 0x19, 0x01, 0x11, 0xF9, 0x80, 0x09, 0xB9, 0x01, 0x01, 0xB9, 0x82, 0x09, 0xB9, 0x09, 0xD9, 0x12, 0x19, 0x01, 0x1A, 0x39, 0x80, 0x1A, 0x19, 0x01, 0x1A, 0x18, 0x01, 0x22, 0x19, 0x81, 0x22, 0x39, 0x22, 0x18, 0x01, 0x22, 0x38, 0x06, 0x22, 0x18, 0x02, 0x22, 0x38, 0x05, 0x22, 0x18, 0x85, 0x22, 0x38, 0x1A, 0x18, 0x22, 0x38, 0x1A, 0x18, 0x1A, 0x17, 0x1A, 0x18, 0x07, 0x19, 0xF7, 0x80, 0x19, 0xF8, 0x01, 0x11, 0xF9, 0x82, 0x09, 0xF9, 0x0A, 0x1A, 0x09, 0xFA, 0x01, 0x01, 0xD9, 0x86, 0x09, 0xD9, 0x12, 0x19, 0x11, 0xF9, 0x11, 0xB7, 0x09, + 0x34, 0x11, 0x33, 0x11, 0x11, 0x01, 0x19, 0x11, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x10, 0x19, 0x11, 0x19, 0x33, 0x11, 0x54, 0x11, 0x97, 0x11, 0xD8, 0x09, 0xD9, 0x01, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x86, 0x09, 0xF8, 0x12, 0x18, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x54, 0x11, 0x53, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x83, 0x18, 0xF1, 0x11, 0x12, 0x11, 0x95, 0x19, 0xF7, 0x01, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x89, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xB8, 0x11, 0xB7, 0x19, 0xD7, 0x11, 0x96, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x21, 0x10, 0x87, 0x19, 0x11, 0x19, 0x12, 0x19, 0x95, 0x11, 0xD7, 0x11, 0xB8, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x87, 0x11, 0xF8, 0x1A, 0x18, 0x11, 0xB6, 0x11, 0x75, 0x09, 0x33, 0x11, 0x33, 0x19, 0x53, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x51, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x50, 0x01, 0x21, 0x2F, 0x8C, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, + 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x0C, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x20, 0xEE, 0x20, 0xCD, 0x39, 0x0D, 0xCC, 0xDB, 0x01, 0xCC, 0x38, 0x86, 0xCC, 0x17, 0xC3, 0xF7, 0xB4, 0x16, 0xC5, 0x7A, 0xEF, 0x5F, 0xDF, 0x9F, 0xD7, 0x9F, 0x04, 0xCF, 0x9F, 0x80, 0xCF, 0xBF, 0x03, 0xCF, 0x9F, 0x82, 0xCF, 0xBF, 0xCF, 0x9F, 0xCF, 0xBF, 0x03, 0xD7, 0xBF, 0x86, 0xDF, 0xBF, 0xE7, 0x9F, 0xF7, 0x3F, 0xAB, 0xF6, 0x81, 0xF0, 0x91, 0xD1, 0x99, 0xB2, 0x01, 0xA1, 0xB2, 0x01, 0xA9, 0xD3, 0x01, 0xB1, 0xD3, 0x05, 0xB1, 0xF3, 0x80, 0xB1, 0xD3, 0x02, 0xB1, 0xF3, 0x02, 0xB1, 0xF4, 0x04, 0xB1, 0xF3, 0x05, 0xB1, 0xD3, 0x01, 0xB1, 0xB3, 0x80, 0xB1, 0x93, 0x01, 0xA9, 0x92, 0x89, 0xA1, 0xB2, 0x99, 0xB1, 0x91, 0xD0, 0xCB, 0x97, 0x91, 0xD0, 0x99, 0xB1, 0xA1, 0xB1, 0xA1, 0xB2, 0xA9, 0xB2, 0xA9, 0xB3, 0x02, 0xB1, 0xB3, 0x03, 0xB1, 0xD3, 0x80, 0xB1, 0xF4, 0x01, 0xB1, 0xD3, 0x03, 0xB1, 0xF4, 0x80, 0xB1, 0xD3, 0x09, 0xB1, 0xF3, 0x03, 0xB1, 0xD3, 0x81, 0xB1, 0xB3, 0xA9, 0xB3, 0x01, 0xA9, 0xB2, 0x87, 0xA1, 0xB1, 0x91, 0xD1, 0x8A, 0x30, 0xEE, 0x1E, 0xF7, 0x5F, 0xE7, 0x9F, 0xDF, 0xBF, 0xD7, 0xBF, 0x02, 0xCF, 0xBF, 0x01, 0xCF, 0x9F, 0x80, 0xC7, 0x9F, 0x02, 0xCF, 0x9F, 0x05, 0xC7, 0x9F, 0x13, 0xC7, 0x9E, 0x80, 0xC7, 0x9F, 0x01, 0xCF, 0x9F, 0x83, 0xC7, 0x9F, 0xC7, 0x9E, 0xC7, 0x9F, 0xCF, 0x9E, 0x04, 0xCF, 0x9F, 0x80, 0xCF, 0x9E, 0x02, 0xCF, 0x9F, + 0x04, 0xC7, 0x9E, 0x80, 0xCF, 0x9F, 0x1E, 0xC7, 0x9E, 0x01, 0xC7, 0x9F, 0x02, 0xC7, 0x9E, 0x80, 0xC7, 0x9F, 0x02, 0xCF, 0x9F, 0x80, 0xCF, 0xBF, 0x02, 0xCF, 0x9F, 0x04, 0xCF, 0xBF, 0x01, 0xCF, 0x9F, 0x02, 0xCF, 0x9E, 0x01, 0xC7, 0x9E, 0x80, 0xCF, 0x9F, 0x01, 0xCF, 0xBF, 0x01, 0xCF, 0x9F, 0x01, 0xCF, 0xBF, 0x04, 0xCF, 0x9F, 0x01, 0xCF, 0xBF, 0x01, 0xD7, 0xBF, 0x85, 0xE7, 0x9F, 0xDE, 0x9E, 0x9B, 0xB5, 0x81, 0xF0, 0x99, 0xF2, 0xA1, 0xF2, 0x01, 0xA9, 0xF3, 0x02, 0xB1, 0xF3, 0x02, 0xB1, 0xD3, 0x01, 0xB1, 0xF3, 0x88, 0xB1, 0xD3, 0xA9, 0xD3, 0xA9, 0xD2, 0xA1, 0xB1, 0x89, 0x90, 0xC4, 0xD9, 0xF7, 0x3F, 0xE7, 0x5F, 0xDF, 0x7F, 0x02, 0xD7, 0x9F, 0x86, 0xD7, 0x7F, 0xDF, 0x9F, 0xE7, 0x7F, 0xEE, 0xFF, 0x8B, 0x33, 0x8A, 0x11, 0x99, 0xF2, 0x01, 0xA1, 0xF3, 0x02, 0xAA, 0x13, 0x80, 0xB2, 0x13, 0x01, 0xB2, 0x14, 0x81, 0xB1, 0xF3, 0xB1, 0xF4, 0x01, 0xA9, 0xD3, 0x86, 0xA9, 0xB3, 0xA1, 0xB2, 0xA1, 0xD2, 0x81, 0xD0, 0xDE, 0x3D, 0xE7, 0x9F, 0xD7, 0xBF, 0x02, 0xCF, 0xBF, 0x06, 0xCF, 0x9F, 0x01, 0xC7, 0x9F, 0x01, 0xCF, 0x9F, 0x80, 0xC7, 0x9F, 0x0F, 0xCF, 0x9F, 0x01, 0xD7, 0x9F, 0x89, 0xDF, 0x9F, 0xE7, 0x7F, 0xF7, 0x5F, 0xD5, 0xBA, 0xB3, 0xF5, 0xC3, 0xD5, 0xCB, 0xB6, 0xD3, 0xB6, 0xD3, 0xD6, 0xD3, 0xB6, 0x01, 0xD3, 0xD6, 0x0A, 0xDB, 0xD6, 0x0F, 0xDB, 0xB6, 0x80, 0xE3, 0xD6, 0x01, 0xDB, 0xD6, 0x83, 0xDB, 0xB6, 0xDB, 0xD6, 0xDB, 0xB6, 0xDB, 0xD6, 0x02, 0xDB, 0xD7, 0x01, 0xDB, 0xF8, 0xA3, 0xDC, 0x1A, 0xD4, 0x3B, 0xBC, 0x3D, 0x28, 0xD4, 0x29, 0x58, + 0x21, 0x79, 0x21, 0x99, 0x21, 0xBA, 0x29, 0xFB, 0x32, 0x3B, 0x3A, 0x7B, 0x42, 0x7A, 0x5A, 0xBB, 0x6A, 0xDA, 0x7B, 0x1B, 0x83, 0x1B, 0x82, 0xDA, 0x7A, 0x78, 0x72, 0x78, 0x72, 0x99, 0x72, 0xB9, 0x6A, 0xDA, 0x62, 0xFB, 0x4B, 0x3B, 0x3B, 0x7C, 0x33, 0xBD, 0x23, 0xFD, 0x13, 0xDD, 0x0B, 0xFC, 0x04, 0x1C, 0x04, 0x9C, 0x15, 0xBE, 0x16, 0x7E, 0x17, 0x5F, 0x0F, 0x9E, 0x0F, 0xBD, 0x02, 0x07, 0xBD, 0x9D, 0x0F, 0xBD, 0x17, 0x9D, 0x27, 0x7E, 0x37, 0x1E, 0x56, 0xBE, 0x75, 0x9C, 0x6A, 0xB3, 0x92, 0x33, 0xA9, 0xF3, 0xB9, 0xD3, 0xB9, 0xB3, 0xC1, 0xD4, 0xC1, 0xB3, 0xC1, 0xD4, 0xB9, 0xB3, 0xB9, 0xD4, 0xB1, 0xB3, 0xA9, 0xD4, 0x89, 0x73, 0x69, 0x11, 0x61, 0x52, 0x59, 0x52, 0x49, 0x72, 0x41, 0x31, 0x41, 0x51, 0x39, 0x72, 0x39, 0x92, 0x39, 0x91, 0x39, 0x71, 0x31, 0x71, 0x04, 0x31, 0x51, 0x82, 0x29, 0x51, 0x29, 0x50, 0x29, 0x51, 0x01, 0x29, 0x50, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x06, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x07, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, + 0x21, 0x10, 0x8D, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x13, 0x19, 0x95, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x12, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x50, 0x03, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x87, 0x21, 0x51, 0x19, 0x51, 0x19, 0x32, 0x11, 0x52, 0x11, 0x53, 0x11, 0x74, 0x11, 0xB5, 0x19, 0xF6, 0x01, 0x19, 0xF7, 0x8B, 0x1A, 0x17, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0xB6, 0x11, 0x96, 0x11, 0x95, 0x11, 0xB6, 0x19, 0xF7, 0x1A, 0x17, 0x01, 0x1A, 0x38, 0x84, 0x1A, 0x18, 0x1A, 0x17, 0x19, 0xF7, 0x11, 0xB5, 0x09, 0x53, 0x01, 0x11, 0x33, 0x01, 0x19, 0x32, 0x01, 0x21, 0x31, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x05, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, + 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x03, 0x29, 0x30, 0x04, 0x21, 0x10, 0x85, 0x29, 0x30, 0x29, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x84, 0x11, 0x12, 0x11, 0x13, 0x11, 0x75, 0x11, 0xB7, 0x12, 0x19, 0x02, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x81, 0x01, 0xB8, 0x09, 0xB8, 0x01, 0x09, 0xD9, 0x02, 0x09, 0xD8, 0x87, 0x11, 0xD8, 0x09, 0xD8, 0x11, 0xD8, 0x09, 0xB7, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0xD8, 0x11, 0xD7, 0x05, 0x11, 0xD8, 0x82, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xF8, 0x04, 0x11, 0xD8, 0x83, 0x11, 0xF8, 0x11, 0xD7, 0x11, 0xF8, 0x11, 0xD8, 0x04, 0x11, 0xD7, 0x80, 0x11, 0xB7, 0x02, 0x11, 0xD7, 0x82, 0x11, 0xD8, 0x09, 0xD8, 0x09, 0xB8, 0x01, 0x09, 0xD9, 0x02, 0x01, 0xD9, 0x80, 0x09, + 0xD9, 0x01, 0x11, 0xF9, 0x86, 0x11, 0x97, 0x11, 0x75, 0x11, 0x13, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x19, 0x11, 0x19, 0x12, 0x19, 0x34, 0x19, 0x96, 0x11, 0xB7, 0x01, 0x11, 0xD8, 0x81, 0x09, 0xD8, 0x11, 0xF8, 0x01, 0x11, 0xF7, 0x84, 0x11, 0xD6, 0x11, 0x94, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x84, 0x21, 0x11, 0x19, 0x12, 0x11, 0x74, 0x19, 0xD6, 0x11, 0xB7, 0x01, 0x11, 0xD8, 0x88, 0x11, 0xF8, 0x11, 0xD8, 0x09, 0xB7, 0x11, 0xB7, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x54, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x11, 0x81, 0x19, 0x30, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x11, 0x19, 0x12, 0x19, 0x75, 0x19, 0xD7, 0x11, 0xB7, 0x19, 0xF8, 0x01, 0x11, 0xD7, 0x86, 0x11, 0xF8, 0x11, 0xF7, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x09, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x07, 0x21, + 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x0C, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x20, 0xEE, 0x20, 0xAD, 0x39, 0x0D, 0xCC, 0xBA, 0xCC, 0x38, 0x02, 0xC3, 0xF7, 0x84, 0xAB, 0xF5, 0xD5, 0xFC, 0xEF, 0x7F, 0xDF, 0x9F, 0xCF, 0x9F, 0x01, 0xCF, 0x7F, 0x01, 0xCF, 0x9F, 0x80, 0xCF, 0xBF, 0x05, 0xCF, 0x9F, 0x03, 0xCF, 0xBF, 0x89, 0xD7, 0xBF, 0xDF, 0x9F, 0xE7, 0x7F, 0xF7, 0x3F, 0xA3, 0xF5, 0x81, 0xF0, 0x91, 0xB1, 0xA1, 0xB2, 0xA9, 0xB2, 0xA9, 0xB3, 0x02, 0xA9, 0xD3, 0x80, 0xB1, 0xD3, 0x03, 0xB1, 0xF3, 0x82, 0xB9, 0xF3, 0xB1, 0xF3, 0xB9, 0xF3, 0x01, 0xB1, 0xF3, 0x82, 0xB9, 0xF4, 0xB1, 0xF3, 0xB1, 0xF4, 0x01, 0xB1, 0xD3, 0x09, 0xB1, 0xF3, 0x01, 0xB1, 0xD3, 0x01, 0xB1, 0xB3, 0x80, 0xB1, 0x93, 0x01, 0xB1, 0x92, 0x86, 0xA9, 0x92, 0xA9, 0xB2, 0xA1, 0x92, 0xA1, 0xB2, 0xA9, 0xB2, 0xA9, 0x92, 0xA9, 0xB2, 0x01, 0xB1, 0xB3, 0x81, 0xB1, 0xD3, 0xB1, 0xB3, 0x05, 0xB1, 0xD3, 0x80, 0xB1, 0xF4, 0x01, 0xB9, 0xF4, 0x80, 0xB1, 0xD3, 0x01, 0xB1, 0xF4, 0x81, 0xB1, 0xF3, 0xB9, 0xF4, 0x07, 0xB1, 0xF3, 0x81, 0xB9, 0xF3, 0xB1, 0xF3, 0x03, 0xB1, 0xD3, 0x01, 0xB1, 0xB3, 0x01, 0xA9, 0x92, 0x85, 0xA1, 0xB1, 0x91, 0xB1, 0x8A, 0x31, 0xE6, 0x1D, 0xF7, 0x5F, 0xE7, 0x9F, 0x01, 0xD7, 0xBF, 0x01, 0xCF, 0xBF, 0x80, 0xCF, 0x9F, 0x03, 0xC7, 0x9F, 0x82, 0xC7, 0x7E, 0xC7, 0x9F, 0xC7, 0x9E, 0x03, 0xC7, 0x9F, 0x01, 0xC7, 0x9E, 0x80, 0xC7, 0x9F, 0x01, 0xC7, + 0x9E, 0x80, 0xC7, 0x9F, 0x0A, 0xC7, 0x9E, 0x80, 0xC7, 0x9F, 0x02, 0xC7, 0x9E, 0x81, 0xC7, 0x9F, 0xCF, 0x9F, 0x05, 0xC7, 0x9E, 0x01, 0xCF, 0x9F, 0x82, 0xC7, 0x9E, 0xC7, 0x9F, 0xCF, 0x9F, 0x25, 0xC7, 0x9E, 0x04, 0xC7, 0x9F, 0x80, 0xC7, 0x9E, 0x03, 0xC7, 0x9F, 0x80, 0xC7, 0x9E, 0x01, 0xC7, 0x9F, 0x81, 0xC7, 0x9E, 0xCF, 0x9F, 0x01, 0xC7, 0x9E, 0x04, 0xCF, 0x9F, 0x81, 0xC7, 0x9E, 0xC7, 0x9F, 0x01, 0xC7, 0x9E, 0x80, 0xCF, 0xBF, 0x01, 0xC7, 0x9E, 0x07, 0xC7, 0x9F, 0x01, 0xCF, 0x9F, 0x01, 0xCF, 0xBF, 0x87, 0xD7, 0xBF, 0xDF, 0x9F, 0xD6, 0x9E, 0x9B, 0xB5, 0x81, 0xF0, 0x99, 0xF2, 0xA1, 0xF2, 0xA9, 0xF3, 0x02, 0xB1, 0xF3, 0x02, 0xB1, 0xD3, 0x83, 0xB9, 0xF3, 0xB1, 0xF3, 0xB1, 0xF4, 0xB1, 0xD3, 0x01, 0xA9, 0xD3, 0x84, 0xA1, 0x91, 0x89, 0xB0, 0xC4, 0xD9, 0xF7, 0x3F, 0xE7, 0x5F, 0x02, 0xD7, 0x7F, 0x01, 0xD7, 0x9F, 0x85, 0xDF, 0x9F, 0xE7, 0x7F, 0xE6, 0xDF, 0x8B, 0x33, 0x8A, 0x11, 0x9A, 0x12, 0x01, 0xA1, 0xF3, 0x87, 0xAA, 0x13, 0xAA, 0x34, 0xAA, 0x13, 0xB2, 0x13, 0xB2, 0x14, 0xB2, 0x13, 0xB2, 0x14, 0xB1, 0xF3, 0x01, 0xA9, 0xD3, 0x86, 0xA9, 0xB3, 0xA9, 0xD2, 0xA1, 0xD2, 0x89, 0xF0, 0xC5, 0x5A, 0xE7, 0x7F, 0xD7, 0x9F, 0x02, 0xCF, 0xBF, 0x86, 0xC7, 0x9F, 0xCF, 0x9F, 0xC7, 0x9F, 0xCF, 0x9F, 0xC7, 0x9E, 0xCF, 0x9F, 0xC7, 0x9E, 0x06, 0xC7, 0x9F, 0x05, 0xCF, 0x9F, 0x80, 0xC7, 0x7F, 0x08, 0xCF, 0x9F, 0x88, 0xD7, 0x9F, 0xDF, 0x9F, 0xE7, 0x7F, 0xEF, 0x5F, 0xDD, 0xFC, 0xAB, 0xD5, 0xC3, 0xD5, 0xCB, 0xB5, 0xCB, 0xB6, 0x04, 0xD3, 0xB6, 0x80, 0xDB, + 0xD6, 0x14, 0xDB, 0xB6, 0x01, 0xE3, 0xB6, 0x05, 0xDB, 0xB6, 0x81, 0xE3, 0xD6, 0xDB, 0xB6, 0x01, 0xDB, 0xB7, 0x89, 0xDB, 0xD7, 0xDB, 0xD8, 0xDB, 0xF8, 0xDB, 0xF9, 0xD4, 0x1A, 0xBC, 0x1D, 0x30, 0xD3, 0x29, 0x37, 0x29, 0x78, 0x31, 0x99, 0x01, 0x31, 0xB9, 0x9A, 0x41, 0xF9, 0x49, 0xF8, 0x62, 0x7A, 0x7A, 0xDA, 0x8A, 0xFA, 0x92, 0xD9, 0x92, 0xB9, 0x9A, 0x98, 0x92, 0x78, 0x8A, 0x77, 0x8A, 0x78, 0x8A, 0xB9, 0x7A, 0xB9, 0x6A, 0xDA, 0x53, 0x1B, 0x4B, 0x9C, 0x3B, 0xDD, 0x2C, 0x1E, 0x13, 0xFD, 0x0C, 0x1D, 0x04, 0x3C, 0x04, 0x7C, 0x0D, 0x9E, 0x16, 0x5E, 0x17, 0x5F, 0x0F, 0x9E, 0x0F, 0xBD, 0x02, 0x07, 0xBD, 0x8B, 0x0F, 0xBD, 0x17, 0x9D, 0x27, 0x7E, 0x37, 0x1E, 0x56, 0xBE, 0x75, 0x7C, 0x6A, 0xB3, 0x92, 0x33, 0xA9, 0xF3, 0xB1, 0xB3, 0xB9, 0xB3, 0xC1, 0xB3, 0x02, 0xC1, 0xD4, 0x8A, 0xB9, 0xB3, 0xB1, 0xB4, 0xA9, 0xB4, 0xAA, 0x15, 0x9A, 0x15, 0x71, 0x72, 0x61, 0x32, 0x51, 0x31, 0x41, 0x31, 0x41, 0x72, 0x41, 0x71, 0x01, 0x39, 0x71, 0x83, 0x39, 0x51, 0x39, 0x71, 0x31, 0x51, 0x31, 0x71, 0x02, 0x31, 0x51, 0x02, 0x29, 0x50, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x0C, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x08, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, + 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x8A, 0x21, 0x11, 0x19, 0x31, 0x19, 0x12, 0x11, 0x13, 0x19, 0x95, 0x29, 0xF7, 0x21, 0xF7, 0x21, 0xD6, 0x11, 0x33, 0x11, 0x32, 0x19, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x8A, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x94, 0x19, 0xD6, 0x19, 0xF6, 0x19, 0xF7, 0x01, 0x1A, 0x17, 0x81, 0x19, 0xF7, 0x11, 0xB6, 0x01, 0x11, 0x95, 0x80, 0x11, 0x74, 0x03, 0x11, 0x54, 0x01, 0x09, 0x54, 0x84, 0x09, 0x74, 0x11, 0xB6, 0x19, 0xF7, 0x1A, 0x17, 0x1A, 0x38, 0x01, 0x1A, 0x17, 0x83, 0x11, 0xB6, 0x11, 0x74, 0x11, 0x53, 0x11, 0x33, 0x01, 0x19, 0x32, 0x83, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x07, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, + 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x04, 0x29, 0x10, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8E, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x11, 0x11, 0x10, 0xF2, 0x09, 0x13, 0x11, 0x75, 0x11, 0xB7, 0x11, 0xF8, 0x11, 0xD9, 0x09, 0xD9, 0x09, 0xB9, 0x01, 0x01, 0xB9, 0x01, 0x01, 0xB8, 0x80, 0x09, 0xD8, 0x09, 0x09, 0xB8, 0x80, 0x09, 0xD8, 0x02, 0x09, 0xB8, 0x85, 0x09, 0xD8, 0x11, 0xB8, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xD7, 0x11, 0xD8, 0x02, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xD7, 0x03, 0x09, 0xD8, 0x01, 0x11, 0xD8, 0x01, + 0x11, 0xF8, 0x81, 0x12, 0x18, 0x11, 0xF8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x01, 0x09, 0xB9, 0x02, 0x01, 0xB9, 0x8A, 0x09, 0xD9, 0x12, 0x1A, 0x11, 0xD8, 0x09, 0x76, 0x09, 0x55, 0x11, 0x13, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x29, 0x51, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x83, 0x20, 0xEF, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x86, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x34, 0x19, 0x75, 0x19, 0xB6, 0x19, 0xD7, 0x01, 0x11, 0xB6, 0x85, 0x19, 0xB6, 0x11, 0x94, 0x11, 0x73, 0x19, 0x53, 0x19, 0x32, 0x11, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x8D, 0x21, 0x11, 0x19, 0x11, 0x19, 0x33, 0x19, 0x74, 0x11, 0x75, 0x19, 0xD7, 0x19, 0xF7, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x19, 0x74, 0x11, 0x32, 0x11, 0x12, 0x02, 0x19, 0x31, 0x01, 0x19, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x8E, 0x18, 0xF0, 0x18, 0xF1, 0x19, 0x53, 0x21, 0xB5, 0x19, 0xB6, 0x11, 0xB6, 0x19, 0xB6, 0x19, 0xD7, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x33, 0x19, 0x33, 0x19, 0x12, 0x11, 0x11, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, + 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x0C, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x91, 0x21, 0x0F, 0x20, 0xEE, 0x20, 0xAD, 0x41, 0x2E, 0xCC, 0x9A, 0xCC, 0x18, 0xC3, 0xF7, 0xC3, 0xD6, 0xBB, 0xD6, 0xB4, 0x16, 0xD6, 0x3C, 0xE7, 0x7F, 0xDF, 0x9F, 0xCF, 0x9F, 0xCF, 0x5E, 0xCF, 0x7F, 0xCF, 0x9F, 0xC7, 0x7F, 0x01, 0xCF, 0x9F, 0x01, 0xC7, 0x7F, 0x02, 0xCF, 0x9F, 0x80, 0xCF, 0xBF, 0x01, 0xCF, 0x9F, 0x8A, 0xD7, 0xBF, 0xD7, 0x9F, 0xE7, 0x7F, 0xEF, 0x1F, 0xAC, 0x16, 0x81, 0xF0, 0x91, 0xD1, 0xA1, 0xB2, 0xA1, 0xD2, 0xA9, 0xD3, 0xA9, 0xB3, 0x01, 0xB1, 0xD3, 0x84, 0xB1, 0xF3, 0xB1, 0xD3, 0xB1, 0xF3, 0xB9, 0xF3, 0xB1, 0xD3, 0x04, 0xB9, 0xF3, 0x82, 0xB1, 0xF3, 0xB9, 0xF4, 0xB9, 0xF3, 0x07, 0xB1, 0xF3, 0x80, 0xB9, 0xF3, 0x01, 0xB9, 0xF4, 0x81, 0xB1, 0xD3, 0xB9, 0xF3, 0x03, 0xB9, 0xD3, 0x0B, 0xB1, 0xB3, 0x80, 0xB1, 0xD3, 0x04, 0xB9, 0xD3, 0x80, 0xB9, 0xF4, 0x01, 0xB9, 0xD4, 0x01, 0xB9, 0xF4, 0x02, 0xB1, 0xF4, 0x04, 0xB1, 0xF3, 0x81, 0xB1, 0xD3, 0xB1, 0xF3, 0x01, 0xB9, 0xF3, 0x02, 0xB1, 0xF3, 0x81, 0xB9, 0xF3, 0xB1, 0xF3, 0x02, 0xB1, 0xD3, 0x01, 0xB1, 0xB3, 0x88, 0xB1, 0x92, 0xA9, 0x92, 0xA1, 0xB2, 0x99, 0xD1, 0x8A, 0x31, 0xE5, 0xFD, 0xEF, 0x5F, 0xDF, 0x9F, 0xD7, 0x9F, 0x02, 0xCF, 0x9F, 0x02, 0xC7, 0x9F, 0x84, + 0xC7, 0x7E, 0xC7, 0x7F, 0xC7, 0x7E, 0xC7, 0x9F, 0xC7, 0x9E, 0x01, 0xC7, 0x9F, 0x03, 0xC7, 0x9E, 0x81, 0xC7, 0x9F, 0xC7, 0x9E, 0x01, 0xC7, 0x9F, 0x1A, 0xC7, 0x9E, 0x80, 0xC7, 0x7E, 0x2A, 0xC7, 0x9E, 0x03, 0xC7, 0x9F, 0x03, 0xC7, 0x9E, 0x80, 0xC7, 0x9F, 0x02, 0xC7, 0x9E, 0x01, 0xC7, 0x9F, 0x09, 0xC7, 0x9E, 0x80, 0xC7, 0x7E, 0x03, 0xC7, 0x9E, 0x83, 0xC7, 0x7E, 0xC7, 0x9E, 0xC7, 0x9F, 0xCF, 0x9F, 0x01, 0xCF, 0xBF, 0x87, 0xCF, 0x9F, 0xDF, 0x7F, 0xD6, 0x7E, 0x9B, 0xB5, 0x81, 0xF0, 0x99, 0xF2, 0xA1, 0xF2, 0xA9, 0xF3, 0x02, 0xB1, 0xF3, 0x8D, 0xB1, 0xD3, 0xB9, 0xD3, 0xB9, 0xF3, 0xB9, 0xD3, 0xB1, 0xD3, 0xB1, 0xF4, 0xB1, 0xF3, 0xA9, 0xD3, 0xA9, 0xD2, 0xA1, 0x91, 0x89, 0xB0, 0xC4, 0xD9, 0xEF, 0x3F, 0xDF, 0x5F, 0x01, 0xD7, 0x7F, 0x80, 0xD7, 0x9F, 0x01, 0xD7, 0x7F, 0x8A, 0xD7, 0x9F, 0xDF, 0x7F, 0xE6, 0xDF, 0x8B, 0x33, 0x8A, 0x31, 0x9A, 0x13, 0xA2, 0x13, 0xA1, 0xF3, 0xAA, 0x13, 0xA9, 0xF3, 0xAA, 0x13, 0x02, 0xB2, 0x13, 0x80, 0xB1, 0xF3, 0x01, 0xA9, 0xF3, 0x02, 0xA9, 0xD3, 0x86, 0xA1, 0xD2, 0x89, 0xF0, 0xC5, 0x3A, 0xE7, 0x7F, 0xD7, 0x9F, 0xCF, 0x9F, 0xCF, 0xBF, 0x02, 0xC7, 0x9F, 0x01, 0xC7, 0x9E, 0x80, 0xC7, 0x9F, 0x01, 0xC7, 0x9E, 0x82, 0xC7, 0x9F, 0xC7, 0x9E, 0xC7, 0x9F, 0x01, 0xC7, 0x9E, 0x01, 0xC7, 0x9F, 0x80, 0xC7, 0x9E, 0x03, 0xC7, 0x9F, 0x03, 0xC7, 0x7F, 0x01, 0xCF, 0x9F, 0x05, 0xCF, 0x7F, 0x88, 0xD7, 0x7F, 0xDF, 0x7F, 0xE7, 0x5F, 0xEF, 0x3F, 0xDD, 0xFC, 0xB3, 0xF5, 0xC3, 0xB5, 0xCB, 0xB5, 0xCB, 0xB6, 0x06, 0xD3, 0xB6, 0x04, + 0xDB, 0xB6, 0x01, 0xDB, 0x96, 0x80, 0xDB, 0xB6, 0x01, 0xDB, 0x96, 0x02, 0xDB, 0xB6, 0x07, 0xDB, 0x96, 0x01, 0xDB, 0xB6, 0x05, 0xDB, 0x96, 0x80, 0xDB, 0xB6, 0x01, 0xDB, 0xB7, 0x8F, 0xDB, 0xD7, 0xDB, 0xD8, 0xDB, 0xF9, 0xD3, 0xFA, 0xC4, 0x1D, 0x38, 0xB3, 0x39, 0x57, 0x39, 0x78, 0x41, 0x78, 0x41, 0x77, 0x41, 0x36, 0x61, 0xD7, 0x9B, 0x3C, 0xA3, 0x1B, 0x9A, 0xD9, 0x9A, 0x98, 0x01, 0xA2, 0x77, 0x80, 0xAA, 0x77, 0x01, 0xAA, 0x97, 0x90, 0xA2, 0x97, 0x9A, 0xB8, 0x8A, 0xD9, 0x72, 0xD9, 0x63, 0x1A, 0x53, 0x9C, 0x43, 0xFD, 0x34, 0x1D, 0x1C, 0x1D, 0x0C, 0x1C, 0x04, 0x3C, 0x04, 0x9C, 0x0D, 0x5E, 0x0E, 0x3E, 0x1F, 0x5F, 0x0F, 0x9D, 0x0F, 0xBD, 0x01, 0x07, 0xBD, 0x01, 0x0F, 0xBD, 0x87, 0x17, 0x9D, 0x27, 0x7E, 0x37, 0x1E, 0x56, 0xBE, 0x75, 0x7C, 0x6A, 0xB3, 0x92, 0x12, 0xAA, 0x13, 0x01, 0xB9, 0xD3, 0x02, 0xC1, 0xB4, 0x01, 0xC1, 0xD4, 0x8C, 0xB1, 0xB3, 0xB1, 0xB4, 0xA9, 0xD4, 0xAA, 0x15, 0x92, 0x15, 0x61, 0x11, 0x59, 0x31, 0x49, 0x31, 0x49, 0x51, 0x41, 0x51, 0x41, 0x71, 0x39, 0x71, 0x39, 0x51, 0x04, 0x31, 0x51, 0x02, 0x29, 0x51, 0x05, 0x29, 0x30, 0x01, 0x29, 0x10, 0x0A, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x09, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x89, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, + 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x08, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x8E, 0x29, 0x2F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x21, 0xB5, 0x2A, 0x38, 0x21, 0xF7, 0x19, 0x95, 0x09, 0x12, 0x11, 0x12, 0x19, 0x31, 0x02, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xF7, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x95, 0x01, 0x11, 0x74, 0x80, 0x11, 0x53, 0x01, 0x11, 0x33, 0x80, 0x11, 0x53, 0x01, 0x11, 0x33, 0x01, 0x11, 0x53, 0x85, 0x11, 0x73, 0x09, 0x53, 0x09, 0x33, 0x09, 0x74, 0x11, 0x95, 0x19, 0xF7, 0x01, 0x1A, 0x38, 0x84, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x53, 0x11, 0x12, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x09, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x07, 0x21, + 0x2F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x8D, 0x21, 0x30, 0x21, 0x50, 0x21, 0x51, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x09, 0x33, 0x11, 0x75, 0x11, 0xD7, 0x11, 0xF8, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xB9, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x05, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x02, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x08, 0x09, 0xD8, 0x03, 0x11, 0xD8, 0x03, 0x09, 0xB8, 0x01, 0x09, 0xB9, 0x86, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xFA, 0x12, 0x3A, 0x11, 0xF9, 0x11, 0x97, 0x11, 0x55, 0x01, 0x11, 0x33, 0x01, 0x19, 0x11, 0x80, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, + 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x21, 0x10, 0x8B, 0x21, 0x11, 0x19, 0x12, 0x19, 0x33, 0x19, 0x54, 0x19, 0x74, 0x19, 0x95, 0x11, 0x74, 0x19, 0x74, 0x11, 0x53, 0x19, 0x52, 0x11, 0x32, 0x19, 0x31, 0x02, 0x19, 0x11, 0x81, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x87, 0x11, 0x53, 0x19, 0x95, 0x19, 0xB5, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x53, 0x19, 0x52, 0x19, 0x32, 0x01, 0x19, 0x11, 0x81, 0x19, 0x10, 0x19, 0x30, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x84, 0x20, 0xF0, 0x21, 0x11, 0x19, 0x32, 0x19, 0x73, 0x19, 0x94, 0x01, 0x19, 0x74, 0x81, 0x19, 0x95, 0x19, 0x74, 0x01, 0x19, 0x33, 0x80, 0x19, 0x32, 0x03, 0x19, 0x11, 0x02, 0x21, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x8D, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, + 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x0D, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x20, 0xEE, 0x20, 0xAD, 0x41, 0x2E, 0xCC, 0x9A, 0xC4, 0x17, 0xC3, 0xD6, 0x01, 0xBB, 0xB6, 0x85, 0xB4, 0x16, 0xDE, 0x9E, 0xDF, 0x7F, 0xD7, 0x9F, 0xCF, 0x9F, 0xCF, 0x7F, 0x05, 0xC7, 0x7F, 0x01, 0xC7, 0x9F, 0x81, 0xCF, 0x9F, 0xC7, 0x9F, 0x02, 0xCF, 0x9F, 0x88, 0xD7, 0xBF, 0xDF, 0x7F, 0xEF, 0x3F, 0xAC, 0x37, 0x82, 0x10, 0x91, 0xB1, 0xA1, 0xB2, 0xA9, 0xB2, 0xA9, 0xD3, 0x03, 0xB1, 0xD3, 0x02, 0xB9, 0xF3, 0x80, 0xB9, 0xD3, 0x06, 0xB9, 0xF3, 0x01, 0xB1, 0xF3, 0x80, 0xB1, 0xD3, 0x01, 0xB1, 0xF3, 0x01, 0xB1, 0xF4, 0x02, 0xB1, 0xF3, 0x01, 0xB9, 0xF3, 0x82, 0xB9, 0xF4, 0xB9, 0xD3, 0xB9, 0xF3, 0x04, 0xB9, 0xD3, 0x05, 0xB1, 0xB3, 0x01, 0xB9, 0xB3, 0x01, 0xB1, 0xB3, 0x06, 0xB9, 0xD3, 0x01, 0xB9, 0xF4, 0x02, 0xB9, 0xD4, 0x02, 0xB1, 0xD3, 0x03, 0xB1, 0xF3, 0x80, 0xB9, 0xF3, 0x02, 0xB1, 0xF3, 0x05, 0xB9, 0xF3, 0x80, 0xB1, 0xF3, 0x02, 0xB1, 0xD3, 0x8A, 0xB1, 0xB3, 0xB1, 0x93, 0xB1, 0x92, 0xA9, 0x92, 0xA1, 0x92, 0x99, 0xD1, 0x8A, 0x31, 0xE6, 0x5E, 0xEF, 0x5F, 0xDF, 0x7F, 0xD7, 0x9F, 0x01, 0xCF, 0x9F, 0x01, 0xC7, 0x9F, 0x02, 0xC7, 0x7E, 0x80, 0xC7, 0x9F, 0x02, 0xC7, 0x7E, 0x80, 0xBF, 0x7E, 0x02, 0xC7, 0x7E, 0x02, 0xC7, 0x9E, 0x01, 0xC7, 0x9F, 0x05, 0xC7, 0x9E, 0x80, 0xC7, 0x7E, 0x02, 0xC7, 0x9E, 0x02, 0xC7, 0x7E, 0x80, 0xC7, 0x9E, 0x04, 0xC7, 0x7E, 0x04, 0xC7, 0x9E, 0x80, 0xC7, 0x7E, 0x03, 0xC7, 0x9E, + 0x80, 0xC7, 0x7E, 0x23, 0xC7, 0x9E, 0x03, 0xC7, 0x9F, 0x80, 0xC7, 0x9E, 0x02, 0xC7, 0x9F, 0x03, 0xC7, 0x7E, 0x04, 0xC7, 0x9E, 0x01, 0xC7, 0x7E, 0x81, 0xC7, 0x9F, 0xC7, 0x7E, 0x08, 0xC7, 0x9E, 0x05, 0xC7, 0x7E, 0x01, 0xC7, 0x9F, 0x02, 0xCF, 0x9F, 0x87, 0xDF, 0x7F, 0xD6, 0x7E, 0x9B, 0xB5, 0x81, 0xF0, 0x99, 0xF2, 0xA1, 0xF2, 0xA9, 0xF3, 0xB2, 0x13, 0x01, 0xB1, 0xF3, 0x80, 0xB1, 0xD3, 0x02, 0xB9, 0xD3, 0x89, 0xB9, 0xF3, 0xB1, 0xF4, 0xB1, 0xF3, 0xA9, 0xD3, 0xA9, 0xD2, 0x99, 0x91, 0x89, 0xB0, 0xC4, 0xB9, 0xEF, 0x3F, 0xDF, 0x5F, 0x01, 0xD7, 0x7F, 0x01, 0xCF, 0x7F, 0x01, 0xD7, 0x9F, 0x84, 0xDF, 0x7F, 0xE6, 0xDF, 0x8B, 0x33, 0x8A, 0x31, 0x9A, 0x13, 0x01, 0xA2, 0x13, 0x80, 0xA9, 0xF3, 0x02, 0xAA, 0x13, 0x81, 0xA9, 0xF3, 0xB2, 0x13, 0x01, 0xB1, 0xF3, 0x80, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x01, 0xA1, 0xD2, 0x84, 0x89, 0xF0, 0xC5, 0x3A, 0xE7, 0x5F, 0xD7, 0x9F, 0xCF, 0x9F, 0x02, 0xC7, 0x9F, 0x80, 0xC7, 0x9E, 0x05, 0xC7, 0x7E, 0x01, 0xC7, 0x9E, 0x80, 0xC7, 0x9F, 0x04, 0xC7, 0x7E, 0x05, 0xC7, 0x7F, 0x81, 0xC7, 0x7E, 0xC7, 0x7F, 0x01, 0xC7, 0x7E, 0x06, 0xCF, 0x7F, 0x87, 0xD7, 0x7F, 0xDF, 0x5F, 0xEF, 0x5F, 0xE6, 0x1C, 0xB3, 0xF5, 0xBB, 0xD5, 0xC3, 0xB5, 0xCB, 0xB6, 0x05, 0xD3, 0xB6, 0x01, 0xD3, 0x96, 0x1B, 0xDB, 0x96, 0x01, 0xDB, 0x97, 0x8F, 0xDB, 0xB7, 0xDB, 0xB8, 0xDB, 0xD9, 0xD3, 0xDA, 0xC3, 0xFC, 0x40, 0xB3, 0x49, 0x56, 0x49, 0x57, 0x51, 0x77, 0x48, 0xD4, 0x82, 0x59, 0xA2, 0xFA, 0xAA, 0xD9, 0xAA, 0xB8, 0xAA, 0x77, 0xAA, 0x56, 0x01, + 0xB2, 0x56, 0x01, 0xBA, 0x76, 0xA1, 0xB2, 0x76, 0xB2, 0x96, 0xA2, 0x97, 0x92, 0x97, 0x7A, 0xB8, 0x63, 0x1A, 0x5B, 0x9C, 0x43, 0xFD, 0x34, 0x3E, 0x1C, 0x1D, 0x0C, 0x1D, 0x04, 0x5C, 0x04, 0x9C, 0x0D, 0x5E, 0x0D, 0xFE, 0x1F, 0x7F, 0x0F, 0x9D, 0x0F, 0xBD, 0x0F, 0xDD, 0x07, 0xBD, 0x07, 0xBC, 0x0F, 0xBD, 0x17, 0x9D, 0x27, 0x7E, 0x37, 0x1D, 0x5E, 0xBE, 0x75, 0x7B, 0x62, 0x93, 0x92, 0x12, 0xA9, 0xF3, 0xB9, 0xD3, 0xB9, 0x93, 0xC1, 0xB4, 0xB9, 0xB4, 0x01, 0xC1, 0xD4, 0x81, 0xB9, 0xD4, 0xB9, 0xB4, 0x01, 0xB1, 0xB4, 0x88, 0xB2, 0x15, 0xAA, 0x36, 0x81, 0x73, 0x61, 0x31, 0x51, 0x31, 0x49, 0x31, 0x41, 0x51, 0x41, 0x71, 0x39, 0x51, 0x01, 0x39, 0x71, 0x03, 0x31, 0x51, 0x01, 0x29, 0x51, 0x80, 0x29, 0x31, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x05, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x05, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x08, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x11, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x21, 0xB5, 0x2A, 0x17, + 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x13, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x11, 0xA4, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x95, 0x11, 0x54, 0x09, 0x33, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x19, 0x32, 0x11, 0x12, 0x19, 0x32, 0x19, 0x52, 0x11, 0x32, 0x19, 0x52, 0x11, 0x52, 0x11, 0x32, 0x11, 0x52, 0x11, 0x53, 0x09, 0x53, 0x11, 0x95, 0x11, 0xD6, 0x22, 0x38, 0x1A, 0x37, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x0D, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x89, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, + 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x50, 0x21, 0x51, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x11, 0x13, 0x11, 0x55, 0x19, 0xD7, 0x01, 0x11, 0xF8, 0x01, 0x09, 0xB8, 0x80, 0x01, 0x98, 0x01, 0x09, 0xB8, 0x83, 0x09, 0xD9, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0xD9, 0x02, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x80, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x80, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x81, 0x09, 0xD8, 0x09, 0xB8, 0x06, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x06, 0x09, 0xD8, 0x80, 0x11, 0xD9, 0x02, 0x09, 0xB8, 0x80, 0x09, 0x98, 0x03, 0x09, 0xB8, 0x01, 0x09, 0xD9, 0x88, 0x09, 0xF9, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0xB7, 0x11, 0x55, 0x11, 0x34, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x29, 0x30, + 0x01, 0x21, 0x10, 0x83, 0x19, 0x11, 0x18, 0xF1, 0x21, 0x53, 0x19, 0x33, 0x01, 0x19, 0x53, 0x81, 0x19, 0x73, 0x19, 0x52, 0x02, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x02, 0x19, 0x52, 0x80, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x19, 0x10, 0x80, 0x19, 0x30, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x31, 0x21, 0x32, 0x01, 0x19, 0x32, 0x01, 0x19, 0x12, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x85, 0x21, 0x11, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x84, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x07, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x10, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x8F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x20, 0xEE, 0x20, 0xAD, 0x41, 0x2E, 0xC4, 0x7A, 0xC3, 0xF7, 0xBB, 0xB6, 0xBB, 0x96, + 0xBB, 0xB6, 0xB4, 0x36, 0xE6, 0xFF, 0xDF, 0x7F, 0xD7, 0x9F, 0xCF, 0x9F, 0x01, 0xC7, 0x7E, 0x01, 0xC7, 0x7F, 0x01, 0xC7, 0x7E, 0x02, 0xC7, 0x7F, 0x03, 0xC7, 0x9F, 0x89, 0xD7, 0xBF, 0xDF, 0x9F, 0xEF, 0x7F, 0xC4, 0xF9, 0x82, 0x30, 0x91, 0xD1, 0xA1, 0xB2, 0xA9, 0xB2, 0xA9, 0xB3, 0xB1, 0xB3, 0x01, 0xB1, 0xD3, 0x80, 0xB9, 0xD3, 0x06, 0xB9, 0xF3, 0x81, 0xB9, 0xD3, 0xB9, 0xF3, 0x08, 0xB1, 0xD3, 0x81, 0xB1, 0xF4, 0xB1, 0xD3, 0x01, 0xB1, 0xF4, 0x80, 0xB1, 0xF3, 0x02, 0xB9, 0xF4, 0x03, 0xB9, 0xF3, 0x03, 0xB9, 0xD3, 0x01, 0xB9, 0xB3, 0x81, 0xB9, 0xD3, 0xB9, 0xB3, 0x0A, 0xB9, 0xD3, 0x84, 0xB9, 0xD4, 0xB9, 0xF4, 0xB9, 0xD3, 0xB9, 0xD4, 0xB1, 0xD4, 0x09, 0xB1, 0xD3, 0x01, 0xB1, 0xF3, 0x03, 0xB9, 0xF3, 0x01, 0xB9, 0xF4, 0x82, 0xB9, 0xF3, 0xB9, 0xD3, 0xB1, 0xD3, 0x02, 0xB1, 0xB3, 0x87, 0xB1, 0x92, 0xA9, 0x92, 0xA1, 0xB2, 0x99, 0xF1, 0x9A, 0xD3, 0xEE, 0x9F, 0xE7, 0x7F, 0xD7, 0x9F, 0x01, 0xCF, 0x9F, 0x01, 0xC7, 0x9F, 0x17, 0xC7, 0x7E, 0x80, 0xC7, 0x9E, 0x0D, 0xC7, 0x7E, 0x80, 0xC7, 0x9E, 0x03, 0xC7, 0x7E, 0x09, 0xC7, 0x9E, 0x01, 0xC7, 0x7E, 0x04, 0xC7, 0x9E, 0x01, 0xBF, 0x9E, 0x05, 0xC7, 0x9E, 0x01, 0xBF, 0x9E, 0x07, 0xC7, 0x9E, 0x02, 0xC7, 0x9F, 0x01, 0xC7, 0x7E, 0x01, 0xC7, 0x9E, 0x02, 0xC7, 0x9F, 0x06, 0xC7, 0x7E, 0x01, 0xC7, 0x9E, 0x04, 0xC7, 0x7E, 0x80, 0xC7, 0x9E, 0x09, 0xC7, 0x7E, 0x01, 0xC7, 0x7F, 0x01, 0xC7, 0x7E, 0x81, 0xC7, 0x7F, 0xC7, 0x9F, 0x02, 0xCF, 0x9F, 0x86, 0xDF, 0x9F, 0xD6, 0x7E, 0x9B, 0xB5, 0x81, 0xD0, 0x99, 0xF2, + 0xA1, 0xF2, 0xA9, 0xF3, 0x02, 0xB1, 0xF3, 0x85, 0xB1, 0xD3, 0xB9, 0xD3, 0xB1, 0xD3, 0xB9, 0xD3, 0xB9, 0xF3, 0xB9, 0xF4, 0x01, 0xB1, 0xD3, 0x86, 0xA9, 0xD3, 0xA1, 0x91, 0x89, 0xB0, 0xBC, 0xB9, 0xEF, 0x3F, 0xDF, 0x5F, 0xD7, 0x7F, 0x03, 0xCF, 0x7F, 0x85, 0xD7, 0x7F, 0xDF, 0x7F, 0xE6, 0xDF, 0x8B, 0x33, 0x8A, 0x31, 0x9A, 0x33, 0x02, 0xA2, 0x13, 0x04, 0xA9, 0xF3, 0x81, 0xB1, 0xF3, 0xA9, 0xF3, 0x03, 0xA9, 0xD3, 0x85, 0xA1, 0xD2, 0x89, 0xF1, 0xBC, 0xF9, 0xE7, 0x5F, 0xD7, 0x7F, 0xCF, 0x9F, 0x02, 0xC7, 0x9F, 0x80, 0xC7, 0x7E, 0x01, 0xC7, 0x7F, 0x81, 0xC7, 0x7E, 0xC7, 0x7F, 0x06, 0xC7, 0x7E, 0x81, 0xC7, 0x7F, 0xC7, 0x9F, 0x07, 0xC7, 0x7E, 0x80, 0xC7, 0x5E, 0x02, 0xC7, 0x7E, 0x80, 0xC7, 0x5E, 0x04, 0xCF, 0x7F, 0x01, 0xD7, 0x7F, 0x85, 0xDF, 0x5F, 0xEF, 0x3F, 0xE6, 0x5D, 0xB3, 0xF5, 0xBB, 0xB5, 0xC3, 0x95, 0x01, 0xCB, 0x96, 0x04, 0xD3, 0x96, 0x08, 0xDB, 0x96, 0x02, 0xDB, 0x76, 0x01, 0xDB, 0x96, 0x81, 0xDB, 0x76, 0xDB, 0x75, 0x01, 0xDB, 0x96, 0x08, 0xDB, 0x76, 0x01, 0xDB, 0x96, 0x92, 0xDB, 0x76, 0xDB, 0x77, 0xDB, 0x97, 0xDB, 0xB8, 0xDB, 0x98, 0xD3, 0xBA, 0xCB, 0xDC, 0x48, 0x71, 0x51, 0x15, 0x59, 0x15, 0x60, 0xD4, 0xAA, 0xFB, 0xB2, 0xDA, 0xB2, 0x98, 0xB2, 0x77, 0xBA, 0x77, 0xBA, 0x76, 0xBA, 0x56, 0xC2, 0x76, 0x01, 0xC2, 0x56, 0x01, 0xBA, 0x56, 0x8F, 0xB2, 0x56, 0xAA, 0x76, 0x9A, 0x97, 0x7A, 0x97, 0x6B, 0x19, 0x5B, 0x9C, 0x4B, 0xFD, 0x34, 0x5E, 0x1C, 0x1D, 0x0C, 0x3D, 0x04, 0x5C, 0x04, 0x9C, 0x05, 0x1D, 0x05, 0xBD, 0x1F, 0x5F, 0x17, + 0x9D, 0x01, 0x0F, 0xBD, 0x01, 0x07, 0xBC, 0x8A, 0x0F, 0xBD, 0x17, 0x9D, 0x1F, 0x5D, 0x37, 0x1E, 0x56, 0xBE, 0x75, 0x9C, 0x6A, 0x92, 0x92, 0x32, 0xA9, 0xF3, 0xB1, 0xB3, 0xB9, 0xD4, 0x01, 0xB9, 0xB3, 0x8D, 0xC1, 0xB4, 0xB9, 0xB3, 0xB9, 0x93, 0xB9, 0xB4, 0xB1, 0x94, 0xB1, 0xB4, 0xB1, 0xD4, 0xB2, 0x56, 0xA2, 0x36, 0x69, 0x31, 0x50, 0xF0, 0x49, 0x10, 0x41, 0x31, 0x41, 0x51, 0x03, 0x39, 0x51, 0x04, 0x31, 0x51, 0x80, 0x29, 0x31, 0x13, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x19, 0x12, 0x11, 0x33, 0x21, 0xD6, 0x2A, 0x37, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x32, 0x19, 0x51, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x10, 0x21, 0x51, 0x21, 0x31, 0x18, 0xF1, 0x10, 0xF2, 0x11, 0x33, 0x19, 0x95, 0x19, 0xB6, 0x01, 0x19, 0xD7, 0x01, 0x19, 0xD6, 0x82, 0x11, 0x75, 0x09, 0x33, 0x09, 0x12, 0x01, 0x11, 0x32, 0x81, + 0x19, 0x32, 0x19, 0x52, 0x03, 0x19, 0x32, 0x02, 0x19, 0x52, 0x81, 0x11, 0x52, 0x11, 0x32, 0x01, 0x09, 0x32, 0x8D, 0x09, 0x33, 0x09, 0x74, 0x11, 0xB5, 0x1A, 0x17, 0x22, 0x37, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x53, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x10, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x08, 0x21, 0x10, 0x80, 0x29, 0x10, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x8B, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x21, + 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x50, 0x88, 0x21, 0x51, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xF8, 0x11, 0xD8, 0x01, 0x09, 0xB8, 0x83, 0x09, 0xD8, 0x09, 0xB8, 0x09, 0xD8, 0x09, 0xB8, 0x02, 0x09, 0xD8, 0x82, 0x09, 0xF8, 0x09, 0xD8, 0x11, 0xD8, 0x01, 0x09, 0xD8, 0x01, 0x11, 0xD8, 0x81, 0x09, 0xB8, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x80, 0x11, 0xD8, 0x02, 0x09, 0xD8, 0x80, 0x09, 0xB8, 0x02, 0x09, 0xD8, 0x81, 0x11, 0xD8, 0x09, 0xD8, 0x02, 0x11, 0xD8, 0x82, 0x09, 0xD8, 0x11, 0xF8, 0x09, 0xD8, 0x01, 0x09, 0xB8, 0x83, 0x11, 0xB8, 0x09, 0xB8, 0x11, 0xB8, 0x09, 0xB8, 0x01, 0x11, 0xD8, 0x8C, 0x11, 0xF9, 0x12, 0x19, 0x11, 0xD8, 0x1A, 0x19, 0x11, 0xD7, 0x11, 0x96, 0x09, 0x55, 0x11, 0x33, 0x11, 0x13, 0x19, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x11, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x82, 0x19, 0x31, 0x21, 0x30, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x10, + 0x21, 0x30, 0x21, 0x10, 0x06, 0x19, 0x11, 0x01, 0x19, 0x10, 0x82, 0x21, 0x10, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x20, 0xF0, 0x01, 0x21, 0x10, 0x01, 0x21, 0x11, 0x02, 0x19, 0x11, 0x80, 0x21, 0x11, 0x01, 0x19, 0x11, 0x81, 0x21, 0x10, 0x19, 0x10, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x0F, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x20, 0xEE, 0x20, 0xAD, 0x41, 0x4E, 0xC4, 0x7A, 0xC3, 0xF7, 0x01, 0xBB, 0x96, 0x88, 0xB3, 0x96, 0xB4, 0x36, 0xEF, 0x3F, 0xDF, 0x7F, 0xD7, 0x9F, 0xCF, 0x7F, 0xC7, 0x7E, 0xC7, 0x5E, 0xC7, 0x7F, 0x01, 0xC7, 0x7E, 0x8F, 0xC7, 0x7F, 0xC7, 0x7E, 0xC7, 0x7F, 0xC7, 0x7E, 0xC7, 0x9F, 0xC7, 0x7F, 0xC7, 0x9F, 0xCF, + 0xBF, 0xD7, 0x9F, 0xE7, 0x7F, 0xDE, 0x5D, 0x82, 0x51, 0x91, 0xD1, 0xA1, 0xB2, 0xA9, 0xB2, 0xA9, 0xB3, 0x01, 0xB1, 0xB3, 0x80, 0xB1, 0xD3, 0x02, 0xB9, 0xD3, 0x02, 0xB9, 0xF3, 0x80, 0xB9, 0xD3, 0x01, 0xB9, 0xF3, 0x01, 0xB9, 0xD3, 0x0A, 0xB1, 0xD3, 0x83, 0xB1, 0xD4, 0xB1, 0xF4, 0xB1, 0xD3, 0xB1, 0xF3, 0x01, 0xB9, 0xF4, 0x81, 0xB9, 0xF3, 0xB9, 0xD3, 0x01, 0xB9, 0xF3, 0x15, 0xB9, 0xD3, 0x0C, 0xB1, 0xD3, 0x82, 0xB1, 0xF3, 0xB9, 0xF3, 0xB1, 0xD3, 0x01, 0xB9, 0xF3, 0x01, 0xB9, 0xF4, 0x01, 0xB9, 0xF3, 0x01, 0xB9, 0xD3, 0x01, 0xB1, 0xB3, 0x80, 0xB1, 0x93, 0x01, 0xB1, 0x92, 0x88, 0xA1, 0xB2, 0x91, 0xD1, 0xA3, 0x75, 0xF7, 0x1F, 0xDF, 0x7F, 0xD7, 0x9F, 0xCF, 0x9F, 0xC7, 0x9F, 0xC7, 0x7F, 0x01, 0xC7, 0x7E, 0x01, 0xBF, 0x7E, 0x1E, 0xC7, 0x7E, 0x01, 0xBF, 0x7E, 0x06, 0xC7, 0x7E, 0x82, 0xBF, 0x7E, 0xBF, 0x9E, 0xBF, 0x7E, 0x02, 0xC7, 0x9E, 0x01, 0xBF, 0x7E, 0x80, 0xC7, 0x9E, 0x02, 0xBF, 0x7E, 0x02, 0xC7, 0x9E, 0x0B, 0xBF, 0x9E, 0x01, 0xBF, 0x7E, 0x80, 0xC7, 0x9E, 0x01, 0xBF, 0x7E, 0x80, 0xC7, 0x9E, 0x02, 0xBF, 0x7E, 0x83, 0xBF, 0x9F, 0xC7, 0x9F, 0xC7, 0x7F, 0xC7, 0x7E, 0x04, 0xBF, 0x7E, 0x80, 0xC7, 0x7E, 0x01, 0xBF, 0x7E, 0x80, 0xC7, 0x7E, 0x01, 0xBF, 0x7E, 0x80, 0xC7, 0x7E, 0x01, 0xBF, 0x7E, 0x13, 0xC7, 0x7E, 0x80, 0xC7, 0x7F, 0x01, 0xC7, 0x9F, 0x01, 0xCF, 0x9F, 0x86, 0xDF, 0x9F, 0xD6, 0x9E, 0x93, 0xB5, 0x81, 0xF0, 0x99, 0xF2, 0xA1, 0xF2, 0xA9, 0xF3, 0x01, 0xB1, 0xF3, 0x82, 0xB9, 0xF3, 0xB9, 0xD3, 0xB1, 0xD3, 0x01, 0xB9, 0xD3, 0x01, + 0xB9, 0xF4, 0x01, 0xB1, 0xD3, 0x86, 0xA9, 0xD3, 0xA1, 0x91, 0x89, 0xB0, 0xBC, 0xB9, 0xEF, 0x3F, 0xDF, 0x7F, 0xD7, 0x7F, 0x04, 0xCF, 0x7F, 0x86, 0xDF, 0x5F, 0xE6, 0xDF, 0x8B, 0x33, 0x8A, 0x32, 0x9A, 0x12, 0x9A, 0x13, 0xA2, 0x13, 0x01, 0xA1, 0xF3, 0x04, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x87, 0xA9, 0xD2, 0xA9, 0xB2, 0xA1, 0xB2, 0xA1, 0xD2, 0x89, 0xF0, 0xBC, 0xF9, 0xE7, 0x5F, 0xD7, 0x7F, 0x02, 0xC7, 0x9F, 0x83, 0xC7, 0x7F, 0xBF, 0x7E, 0xC7, 0x7E, 0xC7, 0x7F, 0x03, 0xC7, 0x7E, 0x01, 0xBF, 0x7E, 0x0F, 0xC7, 0x7E, 0x83, 0xC7, 0x5E, 0xC7, 0x7F, 0xC7, 0x7E, 0xC7, 0x5F, 0x01, 0xCF, 0x5F, 0x80, 0xCF, 0x7F, 0x01, 0xCF, 0x5F, 0x87, 0xD7, 0x7F, 0xDF, 0x5F, 0xEF, 0x3F, 0xE6, 0x5D, 0xAB, 0xD5, 0xBB, 0xB5, 0xC3, 0x95, 0xCB, 0x96, 0x02, 0xD3, 0x96, 0x80, 0xD3, 0x76, 0x01, 0xD3, 0x96, 0x03, 0xDB, 0x96, 0x18, 0xDB, 0x76, 0x01, 0xDB, 0x77, 0x01, 0xDB, 0x98, 0x89, 0xD3, 0x99, 0xCB, 0xBB, 0x48, 0x0F, 0x69, 0x34, 0x8A, 0x18, 0xAA, 0x99, 0xBA, 0xB9, 0xB2, 0x57, 0xB2, 0x36, 0xBA, 0x36, 0x01, 0xC2, 0x56, 0x01, 0xCA, 0x56, 0x03, 0xC2, 0x35, 0x91, 0xBA, 0x55, 0xB2, 0x76, 0x9A, 0x76, 0x82, 0x97, 0x6B, 0x19, 0x5B, 0x9B, 0x4C, 0x3D, 0x34, 0x5E, 0x1C, 0x3D, 0x0C, 0x3D, 0x04, 0x5C, 0x04, 0x9C, 0x04, 0xFD, 0x05, 0x9D, 0x1F, 0x5F, 0x0F, 0x9D, 0x0F, 0xBD, 0x0F, 0xBC, 0x01, 0x07, 0xBC, 0x89, 0x0F, 0xBD, 0x17, 0x9D, 0x27, 0x7D, 0x37, 0x1D, 0x56, 0xBE, 0x75, 0x7B, 0x6A, 0x92, 0x92, 0x12, 0xA1, 0xD2, 0xB9, 0xD3, 0x01, 0xB9, 0xB3, 0x82, 0xC1, 0xB3, 0xB9, 0x93, + 0xC1, 0xB4, 0x03, 0xB9, 0xB4, 0x86, 0xB1, 0xB4, 0xB1, 0xF5, 0xB2, 0x76, 0x92, 0x15, 0x58, 0xD0, 0x51, 0x10, 0x49, 0x30, 0x01, 0x41, 0x51, 0x01, 0x39, 0x51, 0x80, 0x31, 0x31, 0x03, 0x31, 0x51, 0x81, 0x29, 0x51, 0x29, 0x31, 0x01, 0x29, 0x30, 0x80, 0x31, 0x30, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x02, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x8B, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x21, 0xB6, 0x2A, 0x17, 0x22, 0x17, 0x19, 0xB5, 0x09, 0x32, 0x11, 0x32, 0x19, 0x51, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x19, 0x12, 0x10, 0xF2, 0x11, 0x54, 0x19, 0xB6, 0x02, 0x19, 0xD7, 0x86, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x11, 0x11, 0x19, 0x32, 0x01, 0x19, 0x52, 0x01, 0x19, 0x32, 0x02, 0x19, 0x52, 0x8B, 0x19, 0x31, 0x19, 0x72, 0x19, 0x51, 0x19, 0x52, 0x11, 0x52, 0x11, 0x32, 0x11, 0x33, 0x09, 0x33, 0x09, 0x54, 0x11, 0x95, 0x19, 0xF6, 0x1A, 0x17, 0x01, 0x19, 0xD6, 0x88, 0x19, 0x94, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, + 0x21, 0x11, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x09, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x89, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, + 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x51, 0x87, 0x19, 0x10, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xF7, 0x01, 0x1A, 0x18, 0x01, 0x11, 0xF8, 0x80, 0x12, 0x18, 0x03, 0x11, 0xF8, 0x82, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0xD8, 0x01, 0x11, 0xF8, 0x02, 0x19, 0xF8, 0x01, 0x11, 0xF8, 0x01, 0x19, 0xF8, 0x80, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x86, 0x1A, 0x18, 0x11, 0xF8, 0x1A, 0x18, 0x12, 0x18, 0x1A, 0x18, 0x12, 0x18, 0x1A, 0x18, 0x01, 0x11, 0xF8, 0x84, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xF9, 0x19, 0xF8, 0x19, 0xD8, 0x01, 0x19, 0xF8, 0x80, 0x1A, 0x19, 0x03, 0x1A, 0x18, 0x01, 0x19, 0xF7, 0x86, 0x11, 0x95, 0x09, 0x33, 0x09, 0x12, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x84, 0x21, 0x30, 0x21, 0x10, 0x18, 0xF0, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x19, 0x10, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x20, 0xF0, 0x03, 0x21, 0x10, 0x81, 0x21, 0x31, 0x21, 0x11, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x29, 0x10, 0x87, 0x29, 0x30, 0x21, 0x10, 0x29, + 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x07, 0x29, 0x10, 0x06, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x09, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x08, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8C, 0x20, 0xEE, 0x20, 0xAD, 0x49, 0x4F, 0xC4, 0x7A, 0xC3, 0xF7, 0xBB, 0x96, 0xBB, 0x75, 0xB3, 0xB5, 0xAC, 0x15, 0xEF, 0x7F, 0xD7, 0x9F, 0xCF, 0x9F, 0xCF, 0x7F, 0x01, 0xC7, 0x5E, 0x80, 0xC7, 0x7E, 0x01, 0xC7, 0x7F, 0x80, 0xBF, 0x5E, 0x01, 0xC7, 0x5E, 0x01, 0xC7, 0x7E, 0x89, 0xC7, 0x7F, 0xC7, 0x9F, 0xCF, 0x9F, 0xDF, 0x7F, 0xE6, 0xFF, 0x9B, 0x94, 0x89, 0xD0, 0x99, 0xB1, 0xA1, 0xB2, 0xA9, 0xB3, 0x01, 0xB1, 0xB3, 0x03, 0xB9, 0xD3, 0x01, 0xB9, 0xF3, 0x01, 0xB9, 0xD3, 0x83, 0xB9, 0xF3, 0xB9, 0xD3, 0xB9, 0xF3, 0xB9, 0xD3, 0x01, 0xB1, 0xD3, 0x80, 0xB1, 0xB3, 0x02, 0xB1, 0xD3, 0x03, 0xA9, 0xD3, 0x80, 0xB1, 0xD3, 0x01, 0xB1, 0xB3, 0x02, 0xB1, 0xD3, 0x01, 0xB1, 0xF3, 0x02, 0xB9, 0xF3, 0x82, 0xB9, 0xD3, 0xB9, 0xF4, 0xB9, 0xD4, 0x09, 0xB9, 0xD3, 0x80, 0xB9, 0xF4, 0x07, 0xB9, 0xD3, 0x81, 0xB1, 0xD3, + 0xB1, 0xB3, 0x02, 0xB1, 0xD3, 0x05, 0xA9, 0xD3, 0x03, 0xB1, 0xD3, 0x82, 0xB1, 0xF3, 0xB1, 0xD3, 0xB1, 0xF3, 0x04, 0xB9, 0xF3, 0x02, 0xB9, 0xD3, 0x01, 0xB9, 0xB3, 0x88, 0xB1, 0x93, 0xB1, 0x92, 0xA9, 0x92, 0xA1, 0xB1, 0x89, 0xD0, 0xCD, 0x3A, 0xEF, 0x3F, 0xD7, 0x7F, 0xCF, 0x9F, 0x01, 0xC7, 0x7F, 0x82, 0xC7, 0x7E, 0xBF, 0x7E, 0xBF, 0x5E, 0x01, 0xBF, 0x7E, 0x80, 0xBF, 0x5E, 0x0C, 0xBF, 0x7E, 0x80, 0xC7, 0x7E, 0x01, 0xBF, 0x7E, 0x80, 0xC7, 0x7E, 0x04, 0xBF, 0x7E, 0x80, 0xC7, 0x7E, 0x01, 0xBF, 0x7E, 0x01, 0xC7, 0x7E, 0x81, 0xBF, 0x7E, 0xC7, 0x7E, 0x3E, 0xBF, 0x7E, 0x81, 0xC7, 0x7E, 0xBF, 0x5E, 0x02, 0xC7, 0x7E, 0x03, 0xBF, 0x7E, 0x80, 0xBF, 0x5E, 0x01, 0xC7, 0x7E, 0x80, 0xBF, 0x5E, 0x03, 0xC7, 0x7E, 0x80, 0xBF, 0x5E, 0x02, 0xC7, 0x7F, 0x02, 0xC7, 0x9F, 0x8A, 0xCF, 0x9F, 0xDF, 0x9F, 0xD6, 0x7E, 0x9B, 0xB5, 0x81, 0xF0, 0x99, 0xF2, 0xA1, 0xF2, 0xA9, 0xF3, 0xB2, 0x13, 0xB1, 0xF3, 0xB9, 0xF3, 0x02, 0xB9, 0xD3, 0x80, 0xB9, 0xD4, 0x01, 0xB9, 0xF4, 0x01, 0xB1, 0xD3, 0x85, 0xA9, 0xD3, 0xA1, 0x91, 0x89, 0xB0, 0xBC, 0xB9, 0xEF, 0x3F, 0xDF, 0x5F, 0x02, 0xCF, 0x7F, 0x89, 0xC7, 0x5F, 0xCF, 0x5F, 0xCF, 0x7F, 0xDF, 0x5F, 0xDE, 0xBF, 0x8B, 0x33, 0x82, 0x31, 0x91, 0xF2, 0x99, 0xF2, 0x99, 0xF3, 0x02, 0xA1, 0xF3, 0x01, 0xA9, 0xF3, 0x02, 0xA9, 0xD3, 0x02, 0xA9, 0xD2, 0x85, 0xA1, 0xB2, 0x99, 0xB2, 0x89, 0xF0, 0xB4, 0xF9, 0xDF, 0x3F, 0xCF, 0x7F, 0x01, 0xC7, 0x7F, 0x82, 0xBF, 0x7F, 0xBF, 0x7E, 0xBF, 0x7F, 0x0B, 0xBF, 0x7E, 0x06, 0xC7, 0x7E, 0x81, + 0xC7, 0x7F, 0xC7, 0x5E, 0x01, 0xC7, 0x7E, 0x04, 0xC7, 0x5E, 0x80, 0xC7, 0x5F, 0x04, 0xCF, 0x5F, 0x86, 0xD7, 0x5F, 0xDF, 0x3F, 0xE7, 0x3F, 0xEE, 0xBF, 0xB3, 0xF5, 0xBB, 0x95, 0xC3, 0x75, 0x01, 0xCB, 0x75, 0x80, 0xD3, 0x75, 0x04, 0xD3, 0x76, 0x08, 0xDB, 0x76, 0x05, 0xDB, 0x56, 0x03, 0xDB, 0x76, 0x04, 0xDB, 0x56, 0x02, 0xDB, 0x76, 0x81, 0xDB, 0x56, 0xDB, 0x77, 0x01, 0xDB, 0x78, 0x86, 0xDB, 0x99, 0xC3, 0x39, 0x89, 0xB4, 0xB2, 0xFA, 0xB2, 0xB9, 0xBA, 0x99, 0xBA, 0x77, 0x01, 0xC2, 0x77, 0x01, 0xC2, 0x56, 0x81, 0xCA, 0x56, 0xCA, 0x35, 0x03, 0xC2, 0x15, 0x92, 0xC2, 0x35, 0xBA, 0x35, 0xB2, 0x56, 0x9A, 0x56, 0x82, 0x97, 0x73, 0x19, 0x63, 0xDC, 0x4C, 0x5E, 0x3C, 0x9E, 0x24, 0x7E, 0x14, 0x7D, 0x04, 0x7D, 0x04, 0x9D, 0x04, 0xFD, 0x05, 0x7C, 0x1F, 0x5F, 0x0F, 0x9D, 0x0F, 0xBD, 0x0F, 0xBC, 0x01, 0x07, 0xBC, 0x89, 0x0F, 0x9C, 0x17, 0x9D, 0x27, 0x7D, 0x3F, 0x1E, 0x5E, 0xBE, 0x75, 0x7B, 0x6A, 0xB2, 0x92, 0x33, 0xA9, 0xF3, 0xB9, 0xD3, 0x01, 0xB9, 0xB3, 0x81, 0xC1, 0xD4, 0xC1, 0xB3, 0x02, 0xB9, 0x93, 0x88, 0xB9, 0x94, 0xB9, 0x93, 0xB1, 0xB4, 0xB1, 0xD4, 0xB2, 0x56, 0xAA, 0x97, 0x58, 0xCF, 0x51, 0x10, 0x49, 0x30, 0x01, 0x41, 0x51, 0x80, 0x39, 0x71, 0x01, 0x39, 0x51, 0x02, 0x31, 0x51, 0x02, 0x29, 0x31, 0x80, 0x31, 0x31, 0x0E, 0x29, 0x30, 0x80, 0x29, 0x10, 0x09, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, + 0x30, 0x04, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD5, 0x2A, 0x37, 0x22, 0x17, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x21, 0x51, 0x04, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8F, 0x11, 0x33, 0x11, 0x34, 0x19, 0xB6, 0x21, 0xF7, 0x19, 0xF7, 0x11, 0xB6, 0x11, 0x96, 0x11, 0x54, 0x11, 0x53, 0x09, 0x32, 0x09, 0x11, 0x11, 0x11, 0x19, 0x52, 0x19, 0x72, 0x19, 0x52, 0x19, 0x32, 0x01, 0x19, 0x52, 0x80, 0x19, 0x32, 0x01, 0x11, 0x11, 0x83, 0x19, 0x31, 0x11, 0x31, 0x19, 0x71, 0x19, 0x72, 0x01, 0x19, 0x52, 0x01, 0x11, 0x32, 0x88, 0x09, 0x33, 0x09, 0x53, 0x11, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xB5, 0x19, 0x94, 0x11, 0x12, 0x01, 0x19, 0x11, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x07, 0x21, 0x10, 0x80, 0x29, 0x10, 0x04, 0x21, + 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x09, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x11, 0x12, 0x84, 0x11, 0x53, 0x11, 0x54, 0x11, 0x75, 0x11, 0x95, 0x11, 0x96, 0x04, 0x11, 0xB6, 0x80, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x80, 0x19, 0xB6, 0x01, 0x11, 0x96, 0x80, 0x11, 0xB6, 0x01, 0x11, 0x96, 0x81, 0x11, 0xB6, + 0x11, 0x96, 0x02, 0x11, 0xB6, 0x84, 0x11, 0x96, 0x11, 0xB6, 0x11, 0x96, 0x19, 0xB6, 0x11, 0x96, 0x01, 0x11, 0xB6, 0x80, 0x11, 0xD6, 0x04, 0x11, 0xB6, 0x83, 0x11, 0xB7, 0x11, 0x96, 0x11, 0xB6, 0x11, 0x96, 0x02, 0x11, 0xB6, 0x01, 0x11, 0x95, 0x84, 0x11, 0x75, 0x09, 0x54, 0x11, 0x54, 0x09, 0x33, 0x11, 0x32, 0x01, 0x11, 0x12, 0x85, 0x19, 0x11, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x2F, 0x29, 0x50, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x05, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x07, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, + 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x13, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8D, 0x20, 0xEE, 0x20, 0xAD, 0x49, 0x4F, 0xC4, 0x5A, 0xC3, 0xD7, 0xBB, 0x96, 0xBB, 0x75, 0xB3, 0x95, 0xAC, 0x15, 0xEF, 0x7F, 0xD7, 0x7F, 0xCF, 0x7F, 0xC7, 0x7E, 0xC7, 0x5E, 0x01, 0xBF, 0x5E, 0x80, 0xBF, 0x7E, 0x04, 0xBF, 0x5E, 0x80, 0xC7, 0x7F, 0x01, 0xC7, 0x9F, 0x86, 0xCF, 0x9F, 0xDF, 0x5F, 0xC5, 0x5B, 0x82, 0x51, 0x91, 0xD1, 0xA1, 0xB2, 0xA9, 0xD3, 0x01, 0xB1, 0xD3, 0x06, 0xB9, 0xD3, 0x82, 0xB9, 0xF3, 0xB9, 0xD3, 0xB9, 0xF3, 0x01, 0xB9, 0xD3, 0x80, 0xB1, 0xD3, 0x02, 0xB1, 0xB3, 0x83, 0xA9, 0xB3, 0xA9, 0xD3, 0xA1, 0xD2, 0xA1, 0xF2, 0x01, 0x99, 0xF2, 0x81, 0xA1, 0xF2, 0xA1, 0xF3, 0x01, 0xA9, 0xD3, 0x81, 0xA9, 0xB3, 0xB1, 0xB3, 0x02, 0xB1, 0xD3, 0x81, 0xB9, 0xD3, 0xB9, 0xF3, 0x01, 0xB9, 0xF4, 0x02, 0xB9, 0xD4, 0x10, 0xB9, 0xD3, 0x01, 0xB1, 0xB3, 0x83, 0xB1, 0xD3, 0xA9, 0xD3, 0xA1, 0xD3, 0xA1, 0xF3, 0x03, 0x99, 0xF2, 0x81, 0xA1, 0xF2, 0xA1, 0xD2, 0x01, 0xA9, 0xD3, 0x80, 0xB1, 0xB3, 0x03, 0xB1, 0xD3, 0x06, 0xB9, 0xF3, 0x80, 0xB9, 0xD3, 0x02, 0xB9, 0xB3, 0x87, 0xB1, 0x93, 0xB1, 0x92, 0xA9, 0x92, 0xA1, 0xD1, 0x92, 0x92, 0xEE, 0x7F, 0xDF, 0x5F, 0xCF, 0x9F, 0x01, 0xC7, 0x7F, 0x01, 0xBF, 0x7E, 0x09, 0xBF, 0x5E, 0x03, 0xBF, 0x7E, 0x03, 0xBF, 0x5E, + 0x03, 0xBF, 0x7E, 0x04, 0xBF, 0x5E, 0x03, 0xBF, 0x7E, 0x0A, 0xBF, 0x5E, 0x0A, 0xBF, 0x7E, 0x80, 0xBF, 0x5E, 0x28, 0xBF, 0x7E, 0x06, 0xBF, 0x5E, 0x01, 0xBF, 0x7E, 0x01, 0xBF, 0x5E, 0x80, 0xC7, 0x7E, 0x06, 0xBF, 0x5E, 0x81, 0xC7, 0x7F, 0xBF, 0x5F, 0x02, 0xC7, 0x7F, 0x88, 0xC7, 0x9F, 0xCF, 0x9F, 0xD7, 0x7F, 0xD6, 0x7E, 0x93, 0x95, 0x81, 0xF1, 0x99, 0xF2, 0xA1, 0xF2, 0xA9, 0xF3, 0x01, 0xB1, 0xF3, 0x04, 0xB9, 0xD3, 0x8B, 0xB9, 0xD4, 0xB9, 0xF4, 0xB1, 0xF3, 0xB1, 0xD3, 0xA9, 0xD3, 0xA1, 0x91, 0x89, 0xB0, 0xBC, 0xB9, 0xE7, 0x1F, 0xD7, 0x5F, 0xCF, 0x7F, 0xCF, 0x5F, 0x02, 0xC7, 0x5F, 0x87, 0xCF, 0x7F, 0xD7, 0x5F, 0xDE, 0xDF, 0x83, 0x33, 0x82, 0x31, 0x92, 0x12, 0x91, 0xF2, 0x99, 0xF2, 0x01, 0x99, 0xD2, 0x81, 0xA1, 0xF2, 0xA1, 0xF3, 0x03, 0xA1, 0xD2, 0x02, 0xA1, 0xB2, 0x85, 0x99, 0xB2, 0x99, 0xB1, 0x81, 0xF0, 0xB4, 0xF9, 0xDF, 0x3F, 0xCF, 0x7F, 0x01, 0xC7, 0x7F, 0x80, 0xBF, 0x7F, 0x01, 0xBF, 0x7E, 0x04, 0xBF, 0x5E, 0x02, 0xBF, 0x7E, 0x80, 0xBF, 0x5E, 0x06, 0xBF, 0x7E, 0x02, 0xC7, 0x7E, 0x81, 0xC7, 0x5E, 0xC7, 0x7F, 0x07, 0xC7, 0x5E, 0x80, 0xC7, 0x5F, 0x04, 0xCF, 0x5F, 0x86, 0xD7, 0x5F, 0xDF, 0x5F, 0xEF, 0x1F, 0xEE, 0x5E, 0xAB, 0xD5, 0xBB, 0x95, 0xC3, 0x75, 0x01, 0xCB, 0x75, 0x80, 0xD3, 0x55, 0x01, 0xD3, 0x75, 0x01, 0xD3, 0x76, 0x81, 0xD3, 0x75, 0xD3, 0x76, 0x01, 0xD3, 0x55, 0x03, 0xDB, 0x55, 0x07, 0xDB, 0x56, 0x06, 0xDB, 0x55, 0x03, 0xDB, 0x56, 0x80, 0xDB, 0x36, 0x01, 0xDB, 0x57, 0x84, 0xDB, 0x78, 0xDB, 0x79, 0xCB, 0x19, 0x89, + 0x93, 0xB2, 0xB8, 0x01, 0xBA, 0x98, 0x80, 0xBA, 0x77, 0x01, 0xC2, 0x56, 0x80, 0xCA, 0x56, 0x01, 0xCA, 0x36, 0x01, 0xCA, 0x15, 0x80, 0xCA, 0x35, 0x01, 0xCA, 0x15, 0x90, 0xC2, 0x15, 0xBA, 0x35, 0xB2, 0x35, 0x9A, 0x56, 0x82, 0x76, 0x73, 0x19, 0x63, 0xDC, 0x4C, 0x7E, 0x3C, 0x9E, 0x24, 0x9E, 0x14, 0x7D, 0x04, 0x7D, 0x04, 0xBD, 0x04, 0xDD, 0x05, 0x5C, 0x1F, 0x5F, 0x0F, 0x9D, 0x01, 0x0F, 0xBC, 0x01, 0x07, 0xBC, 0x8E, 0x0F, 0x9C, 0x17, 0x9D, 0x27, 0x5D, 0x3F, 0x1D, 0x5E, 0xBE, 0x75, 0x7B, 0x6A, 0x92, 0x92, 0x12, 0xA1, 0xD2, 0xB1, 0xD3, 0xB9, 0xB3, 0xC1, 0xD3, 0xC1, 0xB3, 0xB9, 0x93, 0xC1, 0xB3, 0x03, 0xB9, 0x93, 0x88, 0xB9, 0xB4, 0xB1, 0xB4, 0xB2, 0x15, 0xAA, 0x96, 0x81, 0xB2, 0x50, 0xCF, 0x51, 0x30, 0x41, 0x30, 0x41, 0x51, 0x02, 0x39, 0x51, 0x82, 0x31, 0x51, 0x31, 0x31, 0x31, 0x51, 0x01, 0x31, 0x31, 0x80, 0x29, 0x31, 0x18, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x8D, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0xB5, 0x22, 0x37, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x33, 0x11, 0x32, 0x19, + 0x52, 0x21, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8C, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x19, 0xF7, 0x21, 0xF8, 0x19, 0xD7, 0x11, 0xB6, 0x11, 0x55, 0x09, 0x33, 0x09, 0x32, 0x11, 0x12, 0x01, 0x11, 0x31, 0x80, 0x19, 0x52, 0x01, 0x19, 0x32, 0x01, 0x11, 0x32, 0x01, 0x11, 0x12, 0x02, 0x11, 0x11, 0x82, 0x08, 0xF0, 0x11, 0x51, 0x11, 0x31, 0x02, 0x19, 0x52, 0x84, 0x11, 0x32, 0x09, 0x12, 0x09, 0x33, 0x09, 0x54, 0x11, 0xB6, 0x01, 0x19, 0xF7, 0x86, 0x22, 0x17, 0x19, 0x95, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x29, 0x10, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x05, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, + 0x2F, 0x85, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x31, 0x21, 0x11, 0x01, 0x19, 0x11, 0x83, 0x11, 0x12, 0x19, 0x53, 0x19, 0x33, 0x11, 0x12, 0x02, 0x09, 0x13, 0x83, 0x08, 0xF2, 0x09, 0x13, 0x11, 0x13, 0x09, 0x13, 0x01, 0x11, 0x33, 0x83, 0x11, 0x13, 0x09, 0x13, 0x09, 0x12, 0x11, 0x33, 0x01, 0x09, 0x13, 0x80, 0x11, 0x33, 0x01, 0x11, 0x13, 0x80, 0x11, 0x33, 0x01, 0x09, 0x33, 0x80, 0x11, 0x13, 0x03, 0x09, 0x13, 0x01, 0x11, 0x13, 0x80, 0x09, 0x13, 0x01, 0x11, 0x13, 0x01, 0x09, 0x13, 0x83, 0x11, 0x34, 0x09, 0x13, 0x11, 0x34, 0x11, 0x33, 0x01, 0x11, 0x13, 0x01, 0x09, 0x12, 0x01, 0x11, 0x33, 0x02, 0x11, 0x32, 0x03, 0x19, 0x31, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, + 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x07, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x09, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x20, 0xEE, 0x28, 0xAD, 0x49, 0x4F, 0xC4, 0x39, + 0xC3, 0xB7, 0xBB, 0x76, 0x01, 0xB3, 0x75, 0x84, 0xA3, 0xD5, 0xEF, 0x7F, 0xD7, 0x7F, 0xCF, 0x7E, 0xC7, 0x7E, 0x02, 0xBF, 0x5E, 0x01, 0xBF, 0x7E, 0x02, 0xBF, 0x5E, 0x01, 0xBF, 0x7E, 0x01, 0xC7, 0x9F, 0x85, 0xD7, 0x7F, 0xE7, 0x1F, 0x8A, 0xF3, 0x89, 0xD1, 0x99, 0xD2, 0xA9, 0xD3, 0x02, 0xB1, 0xD3, 0x02, 0xB9, 0xD3, 0x02, 0xB9, 0xF3, 0x04, 0xB9, 0xD3, 0x80, 0xB1, 0xD3, 0x01, 0xB1, 0xB3, 0x85, 0xB1, 0xB2, 0xA9, 0xB2, 0xA1, 0xD2, 0x99, 0xF2, 0x89, 0xF1, 0x92, 0x73, 0x01, 0x9A, 0xD4, 0x86, 0x92, 0xB3, 0x92, 0x32, 0x91, 0xF2, 0xA1, 0xD3, 0xA1, 0xB2, 0xA9, 0xB3, 0xB1, 0xB3, 0x01, 0xB1, 0xD3, 0x0A, 0xB9, 0xD3, 0x01, 0xC1, 0xD3, 0x09, 0xB9, 0xD3, 0x90, 0xB9, 0xB3, 0xB1, 0xB3, 0xB1, 0xB2, 0xA9, 0xD2, 0xA1, 0xD2, 0x91, 0xD2, 0x92, 0x32, 0x9A, 0xD4, 0x9B, 0x34, 0xA3, 0x55, 0x9B, 0x14, 0x92, 0x72, 0x91, 0xF1, 0xA1, 0xD2, 0xA1, 0xB2, 0xA9, 0xB3, 0xB1, 0xB3, 0x03, 0xB1, 0xD3, 0x80, 0xB9, 0xD3, 0x04, 0xB9, 0xF3, 0x02, 0xB9, 0xD3, 0x01, 0xB9, 0xB3, 0x89, 0xB1, 0x93, 0xB1, 0x92, 0xA9, 0xB2, 0x91, 0xD1, 0xBC, 0x38, 0xEF, 0x3F, 0xD7, 0x7F, 0xCF, 0x7F, 0xC7, 0x7F, 0xBF, 0x7F, 0x2B, 0xBF, 0x5E, 0x80, 0xBF, 0x7E, 0x04, 0xBF, 0x5E, 0x01, 0xBF, 0x7E, 0x02, 0xBF, 0x5E, 0x01, 0xBF, 0x7E, 0x81, 0xBF, 0x5E, 0xBF, 0x7E, 0x04, 0xB7, 0x7E, 0x01, 0xBF, 0x7E, 0x80, 0xBF, 0x5E, 0x02, 0xBF, 0x7E, 0x02, 0xBF, 0x5E, 0x83, 0xBF, 0x7E, 0xBF, 0x5E, 0xBF, 0x7E, 0xBF, 0x5E, 0x04, 0xBF, 0x7E, 0x1E, 0xBF, 0x5E, 0x80, 0xBF, 0x3E, 0x03, 0xBF, 0x5E, 0x80, 0xBF, 0x5F, + 0x02, 0xC7, 0x7F, 0x87, 0xD7, 0x7F, 0xCE, 0x5E, 0x93, 0x95, 0x81, 0xF1, 0x99, 0xF2, 0xA1, 0xF3, 0xA9, 0xF3, 0xB1, 0xF3, 0x01, 0xB9, 0xF3, 0x02, 0xB9, 0xD3, 0x02, 0xB9, 0xF4, 0x88, 0xB9, 0xD3, 0xB1, 0xD3, 0xA9, 0xF3, 0xA1, 0x92, 0x89, 0xB0, 0xBC, 0x99, 0xE7, 0x1F, 0xD7, 0x5F, 0xCF, 0x7F, 0x04, 0xC7, 0x5F, 0x86, 0xD7, 0x3F, 0xDE, 0xBF, 0x7A, 0xF2, 0x7A, 0x10, 0x8A, 0x11, 0x89, 0xF1, 0x91, 0xD1, 0x01, 0x91, 0xD2, 0x03, 0x99, 0xD2, 0x02, 0x99, 0xB1, 0x01, 0x99, 0x91, 0x01, 0x91, 0xB1, 0x83, 0x79, 0xD0, 0xB5, 0x19, 0xDF, 0x5F, 0xCF, 0x5F, 0x01, 0xC7, 0x7F, 0x01, 0xBF, 0x7E, 0x0B, 0xBF, 0x5E, 0x81, 0xBF, 0x7E, 0xBF, 0x5E, 0x02, 0xBF, 0x7E, 0x01, 0xBF, 0x5E, 0x06, 0xC7, 0x5E, 0x80, 0xC7, 0x7F, 0x01, 0xC7, 0x5E, 0x03, 0xC7, 0x5F, 0x02, 0xCF, 0x5F, 0x01, 0xD7, 0x5F, 0x85, 0xDF, 0x3F, 0xEF, 0x1F, 0xEE, 0x7F, 0xAB, 0xB5, 0xBB, 0x75, 0xC3, 0x55, 0x02, 0xCB, 0x55, 0x05, 0xD3, 0x55, 0x80, 0xDB, 0x56, 0x01, 0xDB, 0x35, 0x80, 0xDB, 0x55, 0x0B, 0xDB, 0x35, 0x01, 0xDB, 0x55, 0x02, 0xDB, 0x35, 0x80, 0xDB, 0x56, 0x02, 0xDB, 0x36, 0x80, 0xDB, 0x57, 0x01, 0xDB, 0x58, 0x89, 0xDB, 0x79, 0xCB, 0x39, 0x99, 0xF5, 0xB2, 0xB9, 0xB2, 0x98, 0xBA, 0x98, 0xBA, 0x77, 0xC2, 0x57, 0xC2, 0x36, 0xCA, 0x36, 0x01, 0xCA, 0x15, 0x80, 0xD2, 0x35, 0x03, 0xCA, 0x15, 0x92, 0xC2, 0x15, 0xBA, 0x15, 0xB2, 0x35, 0x9A, 0x35, 0x82, 0x56, 0x6A, 0xF8, 0x5B, 0xDB, 0x4C, 0x5D, 0x34, 0x9E, 0x1C, 0x7E, 0x14, 0x7D, 0x04, 0x7D, 0x04, 0xBD, 0x04, 0xDD, 0x05, 0x5C, 0x27, 0x7F, + 0x17, 0x9D, 0x0F, 0x9C, 0x07, 0x9C, 0x01, 0x07, 0xBC, 0x89, 0x0F, 0x9C, 0x17, 0x9D, 0x27, 0x5D, 0x3F, 0x1D, 0x5E, 0xBE, 0x75, 0x7B, 0x6A, 0xB3, 0x92, 0x12, 0xAA, 0x13, 0xB1, 0xD3, 0x02, 0xB9, 0xB3, 0x02, 0xC1, 0xB3, 0x01, 0xB9, 0x93, 0x01, 0xB9, 0xB3, 0x88, 0xB1, 0xB3, 0xB1, 0xF4, 0xB2, 0x76, 0xA2, 0x75, 0x48, 0x2D, 0x48, 0xEF, 0x49, 0x51, 0x41, 0x51, 0x39, 0x30, 0x01, 0x39, 0x51, 0x80, 0x31, 0x51, 0x02, 0x31, 0x31, 0x80, 0x29, 0x51, 0x0B, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x08, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x05, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0C, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x21, 0xB5, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x09, 0x33, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x32, 0x11, 0x12, 0x11, 0x54, 0x19, 0x96, 0x22, 0x18, 0x19, 0xF8, 0x19, 0xB7, 0x11, 0x75, 0x09, 0x13, 0x09, 0x12, 0x11, 0x52, 0x19, 0x52, 0x01, 0x11, 0x31, 0x80, 0x19, 0x31, 0x01, 0x11, 0x11, 0x82, + 0x09, 0x12, 0x11, 0x33, 0x11, 0x54, 0x01, 0x11, 0x74, 0x01, 0x11, 0x53, 0x82, 0x11, 0x52, 0x09, 0x11, 0x11, 0x11, 0x01, 0x11, 0x31, 0x8B, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x53, 0x11, 0x75, 0x11, 0xB6, 0x1A, 0x17, 0x22, 0x17, 0x11, 0x95, 0x11, 0x53, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x11, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x06, 0x29, 0x30, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x84, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x06, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, + 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x10, 0x01, 0x19, 0x31, 0x02, 0x19, 0x32, 0x02, 0x19, 0x12, 0x8A, 0x11, 0x12, 0x19, 0x32, 0x19, 0x12, 0x11, 0x12, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x11, 0x12, 0x19, 0x32, 0x11, 0x12, 0x02, 0x19, 0x32, 0x80, 0x11, 0x12, 0x01, 0x11, 0x32, 0x82, 0x11, 0x12, 0x19, 0x32, 0x11, 0x12, 0x03, 0x19, 0x12, 0x04, 0x11, 0x12, 0x01, 0x19, 0x13, 0x01, 0x11, 0x12, 0x01, 0x19, 0x12, 0x04, 0x19, 0x32, 0x80, 0x19, 0x31, 0x02, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x08, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, + 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x02, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x03, 0x21, 0x10, 0x82, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x07, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x0B, 0x29, 0x30, 0x86, 0x21, 0x0F, 0x20, 0xEE, 0x28, 0xAD, 0x49, 0x4F, 0xC4, 0x39, 0xC3, 0xB7, 0xBB, 0x76, 0x01, 0xB3, 0x55, 0x84, 0xA3, 0xB4, 0xEF, 0x7F, 0xCF, 0x7F, 0xCF, 0x5E, 0xC7, 0x5E, 0x07, 0xBF, 0x5E, 0x01, 0xBF, 0x7E, 0x87, 0xC7, 0x9F, 0xCF, 0x7F, 0xDF, 0x3F, 0xBD, 0x5A, 0x81, 0xF0, 0x99, 0xB1, 0xA1, 0xD2, 0xA9, 0xD3, 0x01, 0xB1, 0xD3, 0x0A, 0xB9, 0xD3, 0x01, 0xB1, 0xB3, 0x87, 0xB1, 0xB2, 0xA9, 0xB2, 0xA1, 0xD2, 0x99, 0xD1, 0x92, 0x12, 0xAB, 0x96, 0xD5, 0x3C, 0xE6, 0x1F, 0x01, 0xEE, 0x7F, 0x85, 0xE6, 0x3F, 0xE5, 0xBE, 0xBC, 0x18, 0x81, 0xD0, 0x91, 0xF2, 0xA1, + 0xD2, 0x01, 0xA9, 0xB3, 0x02, 0xB1, 0xD3, 0x07, 0xB9, 0xD3, 0x06, 0xC1, 0xD3, 0x04, 0xB9, 0xD3, 0x88, 0xB9, 0xB3, 0xB1, 0xB3, 0xA9, 0xB2, 0xA1, 0xD2, 0x91, 0xD1, 0x92, 0x72, 0xC4, 0x79, 0xDD, 0xBE, 0xEE, 0x7F, 0x01, 0xEE, 0xBF, 0x86, 0xEE, 0x9F, 0xE5, 0xFE, 0xCC, 0xBA, 0x8A, 0x31, 0x91, 0xF1, 0xA1, 0xD2, 0xA9, 0xB2, 0x01, 0xB1, 0xB3, 0x01, 0xB1, 0xD3, 0x01, 0xB9, 0xD3, 0x03, 0xB9, 0xF3, 0x02, 0xB9, 0xD3, 0x02, 0xB9, 0xB3, 0x88, 0xB1, 0x93, 0xB1, 0xB2, 0xA1, 0xD2, 0x8A, 0x10, 0xEE, 0xDF, 0xD7, 0x5F, 0xCF, 0x7F, 0xC7, 0x7F, 0xBF, 0x7E, 0x08, 0xBF, 0x5E, 0x80, 0xBF, 0x3E, 0x25, 0xBF, 0x5E, 0x80, 0xB7, 0x3E, 0x03, 0xBF, 0x5E, 0x0C, 0xB7, 0x5E, 0x01, 0xBF, 0x7E, 0x01, 0xBF, 0x5E, 0x80, 0xBF, 0x7E, 0x03, 0xBF, 0x5E, 0x01, 0xB7, 0x5E, 0x81, 0xBF, 0x5E, 0xB7, 0x5E, 0x0F, 0xBF, 0x5E, 0x80, 0xC7, 0x5E, 0x01, 0xBF, 0x5E, 0x05, 0xC7, 0x5E, 0x80, 0xBF, 0x3E, 0x07, 0xBF, 0x5E, 0x02, 0xBF, 0x3E, 0x02, 0xBF, 0x5E, 0x80, 0xBF, 0x7F, 0x01, 0xC7, 0x7F, 0x84, 0xD7, 0x5F, 0xCE, 0x5E, 0x93, 0x95, 0x89, 0xF1, 0x99, 0xF2, 0x01, 0xA9, 0xF3, 0x81, 0xB1, 0xF3, 0xB9, 0xF3, 0x04, 0xB9, 0xD3, 0x01, 0xB9, 0xF4, 0x89, 0xB9, 0xD3, 0xB1, 0xD3, 0xA9, 0xD3, 0xA1, 0x92, 0x89, 0xB0, 0xBC, 0x99, 0xE7, 0x1F, 0xD7, 0x5F, 0xCF, 0x7F, 0xC7, 0x5F, 0x01, 0xC7, 0x3F, 0x01, 0xC7, 0x5F, 0x83, 0xCF, 0x5F, 0xD6, 0xDF, 0x62, 0xD0, 0x61, 0xEE, 0x01, 0x69, 0xAE, 0x83, 0x71, 0xAE, 0x71, 0xAF, 0x79, 0xCF, 0x79, 0xAF, 0x01, 0x79, 0x8F, 0x02, 0x79, 0x8E, 0x02, 0x79, 0x6E, + 0x86, 0x71, 0x6E, 0x71, 0x8E, 0x59, 0x8D, 0xAD, 0x59, 0xD7, 0x5F, 0xC7, 0x5F, 0xC7, 0x7F, 0x09, 0xBF, 0x5E, 0x80, 0xBF, 0x7E, 0x0C, 0xBF, 0x5E, 0x04, 0xC7, 0x5E, 0x80, 0xC7, 0x7F, 0x03, 0xC7, 0x5F, 0x04, 0xCF, 0x5F, 0x8D, 0xD7, 0x5F, 0xD7, 0x3F, 0xD7, 0x1F, 0xE7, 0x3F, 0xEE, 0xFF, 0xEE, 0x3E, 0xB3, 0xB5, 0xBB, 0x75, 0xC3, 0x55, 0xCB, 0x55, 0xCB, 0x35, 0xCB, 0x55, 0xCB, 0x35, 0xD3, 0x55, 0x04, 0xD3, 0x35, 0x13, 0xDB, 0x35, 0x02, 0xDB, 0x36, 0x01, 0xDB, 0x37, 0x8B, 0xDB, 0x58, 0xDB, 0x79, 0xCB, 0x5A, 0x9A, 0x17, 0xB3, 0x1B, 0xB2, 0xFB, 0xBA, 0xFA, 0xBA, 0x79, 0xBA, 0x57, 0xC2, 0x57, 0xCA, 0x36, 0xCA, 0x15, 0x01, 0xC9, 0xF5, 0x80, 0xCA, 0x15, 0x01, 0xD2, 0x15, 0x92, 0xCA, 0x15, 0xC2, 0x15, 0xBA, 0x15, 0xB2, 0x35, 0x9A, 0x35, 0x82, 0x56, 0x6B, 0x19, 0x5B, 0xDB, 0x4C, 0x7D, 0x34, 0x9E, 0x1C, 0x7E, 0x14, 0x7D, 0x04, 0x7D, 0x04, 0xBD, 0x04, 0xDD, 0x05, 0x5C, 0x1F, 0x3F, 0x17, 0x7D, 0x0F, 0x9C, 0x02, 0x07, 0xBC, 0x89, 0x0F, 0xBC, 0x17, 0x7C, 0x27, 0x7D, 0x36, 0xFD, 0x5E, 0xBE, 0x6D, 0x5B, 0x6A, 0xB3, 0x92, 0x12, 0xA1, 0xD3, 0xB1, 0xD3, 0x01, 0xB9, 0xB3, 0x01, 0xC1, 0xB3, 0x83, 0xC1, 0xD4, 0xC1, 0xB3, 0xB9, 0x73, 0xB9, 0x93, 0x01, 0xB9, 0xB3, 0x88, 0xB1, 0xB3, 0xB1, 0xD3, 0xB2, 0x34, 0xB2, 0xB6, 0x68, 0xF0, 0x50, 0xCF, 0x51, 0x31, 0x41, 0x31, 0x39, 0x31, 0x01, 0x39, 0x51, 0x01, 0x31, 0x51, 0x01, 0x31, 0x31, 0x80, 0x29, 0x50, 0x1F, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, + 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x51, 0x04, 0x21, 0x30, 0x80, 0x19, 0x30, 0x08, 0x21, 0x30, 0x83, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x01, 0x22, 0x17, 0x84, 0x19, 0x95, 0x09, 0x33, 0x11, 0x12, 0x19, 0x31, 0x19, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x95, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x21, 0xF8, 0x22, 0x18, 0x19, 0xF8, 0x11, 0x96, 0x11, 0x55, 0x09, 0x13, 0x11, 0x12, 0x19, 0x52, 0x19, 0x31, 0x11, 0x31, 0x19, 0x31, 0x11, 0x31, 0x11, 0x12, 0x09, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x19, 0xB6, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x73, 0x11, 0x32, 0x01, 0x11, 0x11, 0x80, 0x19, 0x11, 0x01, 0x19, 0x52, 0x8B, 0x11, 0x12, 0x11, 0x53, 0x09, 0x54, 0x11, 0x96, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x87, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, + 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x09, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x06, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x30, 0x01, 0x21, 0x31, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x32, 0x01, 0x19, 0x11, 0x82, 0x19, 0x32, + 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x32, 0x03, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x52, 0x03, 0x19, 0x31, 0x80, 0x19, 0x32, 0x03, 0x19, 0x11, 0x04, 0x19, 0x32, 0x81, 0x19, 0x11, 0x19, 0x12, 0x02, 0x19, 0x32, 0x01, 0x19, 0x11, 0x02, 0x19, 0x31, 0x03, 0x21, 0x31, 0x03, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x20, 0xEF, 0x01, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x2F, 0x07, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, + 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x13, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x8C, 0x20, 0xEE, 0x20, 0xAD, 0x49, 0x2F, 0xBC, 0x19, 0xBB, 0xB7, 0xBB, 0x76, 0xBB, 0x75, 0xAB, 0x54, 0xA3, 0xD5, 0xEF, 0x7F, 0xD7, 0x7F, 0xCF, 0x7F, 0xC7, 0x5E, 0x03, 0xBF, 0x5E, 0x01, 0xB7, 0x5E, 0x03, 0xBF, 0x5E, 0x87, 0xC7, 0x7F, 0xCF, 0x5F, 0xDE, 0xDF, 0x8B, 0x54, 0x81, 0xD0, 0x99, 0xD2, 0xA1, 0xD3, 0xA9, 0xF3, 0x01, 0xB1, 0xD3, 0x09, 0xB9, 0xD3, 0x8A, 0xB9, 0xB3, 0xB1, 0xB3, 0xB1, 0xB2, 0xA9, 0xB2, 0xA1, 0xF2, 0x91, 0xF1, 0xA3, 0x75, 0xEE, 0x9F, 0xEF, 0x1F, 0xE7, 0x1F, 0xDF, 0x1F, 0x01, 0xD6, 0xFF, 0x01, 0xDE, 0xFF, 0x86, 0xE6, 0xFF, 0xEE, 0x7F, 0x9B, 0x75, 0x8A, 0x11, 0x99, 0xD2, 0xA9, 0xB2, 0xB1, 0xB3, 0x01, 0xB1, 0xD3, 0x06, 0xB9, 0xD3, 0x09, 0xC1, 0xD3, 0x8A, 0xB9, 0xD3, 0xB9, 0xB3, 0xB9, 0xD3, 0xB1, 0xB2, 0xA9, 0xB2, 0xA1, 0xD2, 0x92, 0x11, 0xB4, 0x38, 0xEE, 0xBF, 0xE6, 0xFF, 0xDE, 0xFF, 0x02, 0xD6, 0xFF, 0x87, 0xD7, 0x1F, 0xDE, 0xFF, 0xE6, 0xFF, 0xEE, 0x9F, 0xA3, 0x95, 0x91, 0xF1, 0xA1, 0xD2, 0xA9, 0xB2, 0x02, 0xB1, 0xB3, 0x03, 0xB9, 0xD3, 0x02, 0xB9, 0xF3, 0x02, 0xB9, 0xD3, 0x01, 0xB9, 0xB3, 0x88, 0xB9, 0x93, 0xB1, 0x92, 0xA9, 0xB2, 0x91, 0xD0, 0xCD, 0x5B, 0xE7, 0x3F, 0xCF, 0x7F, 0xC7, + 0x7E, 0xBF, 0x7E, 0x03, 0xBF, 0x5E, 0x04, 0xB7, 0x3E, 0x0E, 0xBF, 0x5E, 0x81, 0xC7, 0x5E, 0xC7, 0x5F, 0x07, 0xC7, 0x5E, 0x03, 0xBF, 0x5E, 0x80, 0xBF, 0x3E, 0x07, 0xBF, 0x5E, 0x02, 0xB7, 0x5E, 0x80, 0xBF, 0x5E, 0x1A, 0xB7, 0x5E, 0x81, 0xBF, 0x5E, 0xB7, 0x5E, 0x06, 0xBF, 0x5E, 0x03, 0xBF, 0x7F, 0x82, 0xBF, 0x5E, 0xBF, 0x7E, 0xC7, 0x7E, 0x06, 0xC7, 0x5E, 0x80, 0xC7, 0x5F, 0x03, 0xC7, 0x5E, 0x05, 0xBF, 0x5E, 0x06, 0xBF, 0x3E, 0x88, 0xBF, 0x5E, 0xBF, 0x5F, 0xC7, 0x7F, 0xD7, 0x5F, 0xCE, 0x3E, 0x93, 0x75, 0x81, 0xF1, 0x99, 0xF2, 0xA9, 0xF2, 0x01, 0xB1, 0xF3, 0x80, 0xB9, 0xF3, 0x04, 0xB9, 0xD3, 0x82, 0xB9, 0xD4, 0xB9, 0xF4, 0xB9, 0xD3, 0x01, 0xB1, 0xD3, 0x84, 0xA1, 0x92, 0x89, 0xD0, 0xB4, 0x78, 0xE7, 0x1F, 0xD7, 0x5F, 0x01, 0xC7, 0x5F, 0x80, 0xC7, 0x3E, 0x03, 0xC7, 0x3F, 0x82, 0xCF, 0x3F, 0xDF, 0x7F, 0xEF, 0x7F, 0x01, 0xF7, 0x5F, 0x01, 0xFF, 0x5F, 0x02, 0xFF, 0x3F, 0x01, 0xFF, 0x1F, 0x01, 0xFF, 0x3F, 0x80, 0xFF, 0x1F, 0x01, 0xFF, 0x3F, 0x85, 0xFF, 0x5F, 0xF7, 0x3F, 0xEF, 0x5F, 0xD7, 0x5F, 0xC7, 0x3F, 0xC7, 0x5F, 0x17, 0xBF, 0x5E, 0x80, 0xC7, 0x5F, 0x03, 0xC7, 0x5E, 0x81, 0xC7, 0x5F, 0xC7, 0x7F, 0x02, 0xC7, 0x5F, 0x04, 0xCF, 0x5F, 0x80, 0xCF, 0x3F, 0x01, 0xD7, 0x3F, 0x87, 0xD7, 0x1F, 0xDF, 0x1F, 0xE7, 0x1F, 0xEE, 0xFF, 0xFE, 0xBF, 0xB3, 0xB5, 0xBB, 0x54, 0xC3, 0x35, 0x02, 0xCB, 0x35, 0x05, 0xD3, 0x35, 0x02, 0xDB, 0x35, 0x0F, 0xDB, 0x15, 0x81, 0xDB, 0x35, 0xDB, 0x36, 0x01, 0xDB, 0x16, 0x01, 0xDB, 0x37, 0x8B, 0xDB, 0x38, 0xD3, + 0x59, 0xCB, 0x7B, 0x69, 0x35, 0x58, 0xF5, 0x40, 0x52, 0x48, 0x11, 0x89, 0xB7, 0xB2, 0x79, 0xC2, 0x37, 0xCA, 0x37, 0xC9, 0xF6, 0x01, 0xC9, 0xF5, 0x02, 0xCA, 0x15, 0x80, 0xC9, 0xF5, 0x01, 0xC2, 0x15, 0x8F, 0xB2, 0x35, 0xA2, 0x36, 0x8A, 0x77, 0x6B, 0x19, 0x63, 0xFC, 0x4C, 0x7E, 0x3C, 0xBF, 0x24, 0x9E, 0x14, 0x9D, 0x04, 0x9D, 0x04, 0xBD, 0x04, 0xDD, 0x05, 0x3C, 0x1F, 0x3E, 0x0F, 0x7C, 0x0F, 0x9C, 0x02, 0x07, 0xBC, 0x8A, 0x0F, 0xBC, 0x17, 0x9C, 0x27, 0x9E, 0x3F, 0x3E, 0x5E, 0xBE, 0x6D, 0x7B, 0x6A, 0xB3, 0x92, 0x13, 0xAA, 0x13, 0xB9, 0xD3, 0xB1, 0x93, 0x01, 0xB9, 0xB3, 0x84, 0xB9, 0x93, 0xC1, 0xB3, 0xB9, 0x93, 0xC1, 0xB4, 0xB9, 0x93, 0x02, 0xB9, 0xB3, 0x89, 0xB1, 0xD4, 0xB1, 0xF4, 0xAA, 0x35, 0x9A, 0x34, 0x58, 0xAF, 0x49, 0x10, 0x41, 0x30, 0x41, 0x51, 0x39, 0x51, 0x39, 0x71, 0x01, 0x31, 0x51, 0x81, 0x31, 0x71, 0x31, 0x50, 0x02, 0x29, 0x30, 0x80, 0x31, 0x50, 0x03, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x10, 0x07, 0x29, 0x30, 0x80, 0x29, 0x10, 0x04, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, + 0x21, 0x51, 0x19, 0x31, 0x19, 0x30, 0x01, 0x19, 0x10, 0x01, 0x21, 0x31, 0x82, 0x19, 0x31, 0x19, 0x30, 0x21, 0x31, 0x04, 0x21, 0x30, 0x8D, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x07, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x22, 0x38, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x96, 0x11, 0x54, 0x09, 0x12, 0x11, 0x12, 0x19, 0x52, 0x19, 0x51, 0x01, 0x11, 0x31, 0x85, 0x11, 0x52, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xF7, 0x02, 0x1A, 0x18, 0x93, 0x11, 0xD7, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x53, 0x11, 0x32, 0x10, 0xF1, 0x11, 0x11, 0x19, 0x52, 0x19, 0x53, 0x11, 0x12, 0x11, 0x32, 0x09, 0x33, 0x11, 0x95, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x10, 0x80, 0x29, 0x10, 0x10, 0x21, 0x10, 0x80, 0x29, 0x10, 0x07, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x05, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x21, + 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x11, 0x02, 0x21, 0x31, 0x82, 0x21, 0x11, 0x21, 0x31, 0x19, 0x31, 0x03, 0x19, 0x11, 0x81, 0x21, 0x31, 0x21, 0x11, 0x01, 0x19, 0x11, 0x85, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x19, 0x10, 0x01, 0x19, 0x11, 0x01, 0x21, 0x31, 0x8B, 0x21, 0x11, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x08, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x0F, + 0x21, 0x10, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x10, 0x04, 0x21, 0x10, 0x8D, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x2F, 0x08, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x03, 0x29, 0x10, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x06, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x13, 0x29, 0x30, 0x90, 0x21, 0x2F, 0x21, 0x0F, 0x20, 0xEE, 0x20, 0xAD, 0x49, 0x4F, 0xBC, 0x19, 0xBB, 0xB6, 0xBB, 0x55, 0xB3, 0x55, 0xAB, 0x34, 0xAB, 0xF5, 0xEF, 0x5F, 0xCF, 0x5E, 0xC7, 0x3E, 0xC7, 0x5E, 0xBF, 0x5E, 0xBF, 0x3E, 0x01, 0xB7, 0x3E, 0x80, 0xB7, 0x5E, 0x01, 0xB7, 0x3E, 0x01, 0xBF, 0x5E, 0x87, 0xBF, + 0x7F, 0xC7, 0x7F, 0xD7, 0x5F, 0xCD, 0xDD, 0x82, 0x71, 0x91, 0xF1, 0xA1, 0xD2, 0xA9, 0xF3, 0x01, 0xB1, 0xF3, 0x03, 0xB9, 0xD3, 0x80, 0xC1, 0xD4, 0x01, 0xC1, 0xD3, 0x81, 0xC1, 0xF3, 0xC1, 0xD3, 0x01, 0xB9, 0xD3, 0x8A, 0xB9, 0xB3, 0xB1, 0xB3, 0xA9, 0xB2, 0xA1, 0xF2, 0x81, 0xD0, 0xCC, 0xBA, 0xEE, 0xBF, 0xDF, 0x1F, 0xD7, 0x3F, 0xCF, 0x3F, 0xC7, 0x3F, 0x02, 0xC7, 0x1F, 0x01, 0xCF, 0x3F, 0x88, 0xDF, 0x1F, 0xE6, 0xBF, 0xBC, 0x79, 0x89, 0xF1, 0x99, 0xF2, 0xA9, 0xB2, 0xB1, 0xD3, 0xB1, 0xB3, 0xB1, 0xD3, 0x02, 0xB9, 0xD3, 0x81, 0xC1, 0xD3, 0xB9, 0xD3, 0x0A, 0xC1, 0xD3, 0x89, 0xB9, 0xB3, 0xB9, 0xD3, 0xB1, 0xB2, 0xA9, 0xB2, 0xA1, 0xF2, 0x89, 0xF1, 0xDD, 0x7C, 0xE6, 0xDF, 0xD6, 0xFF, 0xCF, 0x3F, 0x01, 0xC7, 0x1F, 0x02, 0xC7, 0x3F, 0x01, 0xCF, 0x3F, 0x88, 0xDF, 0x1F, 0xE6, 0xBF, 0xC4, 0xBA, 0x89, 0xF1, 0xA1, 0xD2, 0xA9, 0xB2, 0xB1, 0xD3, 0xB1, 0xB3, 0xB1, 0xD3, 0x03, 0xB9, 0xD3, 0x01, 0xB9, 0xF3, 0x03, 0xB9, 0xD3, 0x02, 0xB9, 0xB3, 0x86, 0xB1, 0x92, 0x99, 0xD1, 0x9B, 0x54, 0xE6, 0xDF, 0xD7, 0x5F, 0xC7, 0x5F, 0xBF, 0x7F, 0x01, 0xBF, 0x5E, 0x06, 0xB7, 0x3E, 0x82, 0xBF, 0x3E, 0xBF, 0x5E, 0xB7, 0x3E, 0x05, 0xBF, 0x5E, 0x05, 0xC7, 0x5F, 0x0C, 0xC7, 0x5E, 0x80, 0xC7, 0x3E, 0x01, 0xBF, 0x3E, 0x06, 0xBF, 0x5E, 0x19, 0xB7, 0x5E, 0x01, 0xB7, 0x3E, 0x01, 0xB7, 0x5E, 0x08, 0xBF, 0x5E, 0x81, 0xBF, 0x5F, 0xC7, 0x5F, 0x04, 0xC7, 0x7F, 0x04, 0xC7, 0x5E, 0x82, 0xCF, 0x5F, 0xC7, 0x5E, 0xC7, 0x5F, 0x04, 0xC7, 0x3E, 0x85, 0xC7, 0x5F, 0xC7, 0x5E, 0xC7, + 0x3E, 0xC7, 0x5F, 0xBF, 0x3E, 0xBF, 0x5E, 0x06, 0xBF, 0x3E, 0x01, 0xBF, 0x5E, 0x88, 0xC7, 0x7F, 0xD7, 0x5F, 0xCE, 0x3E, 0x93, 0x54, 0x89, 0xF1, 0x99, 0xF2, 0xA1, 0xD2, 0xB1, 0xF3, 0xB1, 0xD3, 0x04, 0xB9, 0xD3, 0x83, 0xB9, 0xD4, 0xC1, 0xF4, 0xB9, 0xF4, 0xB9, 0xD3, 0x01, 0xB1, 0xD3, 0x84, 0xA1, 0x92, 0x89, 0xB0, 0xB4, 0x78, 0xE7, 0x1F, 0xD7, 0x3F, 0x01, 0xC7, 0x5F, 0x02, 0xBF, 0x3E, 0x01, 0xC7, 0x3F, 0x83, 0xC7, 0x5F, 0xCF, 0x5F, 0xD7, 0x3F, 0xD7, 0x3E, 0x01, 0xDF, 0x3E, 0x82, 0xE7, 0x3E, 0xE7, 0x1E, 0xE7, 0x1F, 0x01, 0xEF, 0x1F, 0x81, 0xE6, 0xFE, 0xEF, 0x1F, 0x02, 0xE7, 0x1E, 0x01, 0xDF, 0x1E, 0x01, 0xD7, 0x3E, 0x81, 0xCF, 0x3F, 0xC7, 0x5F, 0x02, 0xBF, 0x5E, 0x80, 0xB7, 0x5E, 0x01, 0xB7, 0x3E, 0x01, 0xBF, 0x5E, 0x03, 0xB7, 0x3E, 0x03, 0xB7, 0x5E, 0x07, 0xBF, 0x5E, 0x05, 0xC7, 0x5F, 0x01, 0xCF, 0x7F, 0x01, 0xCF, 0x5F, 0x82, 0xCF, 0x5E, 0xCF, 0x5F, 0xCF, 0x3E, 0x01, 0xCF, 0x3F, 0x01, 0xD7, 0x3F, 0x02, 0xD7, 0x1F, 0x87, 0xDE, 0xFF, 0xDF, 0x1F, 0xE6, 0xFF, 0xF6, 0xDF, 0xFE, 0x7F, 0xC4, 0x17, 0xBB, 0x34, 0xC3, 0x34, 0x02, 0xCB, 0x35, 0x04, 0xD3, 0x35, 0x80, 0xD3, 0x15, 0x0C, 0xDB, 0x15, 0x80, 0xDA, 0xF5, 0x05, 0xDB, 0x15, 0x01, 0xDB, 0x16, 0x8E, 0xDB, 0x17, 0xDB, 0x37, 0xDB, 0x38, 0xD3, 0x59, 0xC3, 0x3B, 0x48, 0x73, 0x40, 0xB5, 0x40, 0xB6, 0x48, 0xB5, 0x50, 0x74, 0x9A, 0x19, 0xBA, 0x59, 0xC2, 0x37, 0xC1, 0xF6, 0xCA, 0x16, 0x02, 0xC9, 0xF5, 0x93, 0xC9, 0xF4, 0xC9, 0xF5, 0xC1, 0xF5, 0xC2, 0x15, 0xB2, 0x35, 0xA2, 0x36, 0x82, + 0x76, 0x73, 0x19, 0x63, 0xFC, 0x4C, 0x7E, 0x3C, 0xBF, 0x24, 0xBE, 0x14, 0x9E, 0x04, 0x9D, 0x04, 0xBD, 0x04, 0xDD, 0x05, 0x3C, 0x1F, 0x1E, 0x17, 0x7C, 0x0F, 0x9C, 0x01, 0x07, 0xBC, 0x01, 0x0F, 0xBC, 0x8B, 0x17, 0x9C, 0x27, 0x7D, 0x37, 0x1E, 0x56, 0xBE, 0x6D, 0x5B, 0x62, 0x93, 0x92, 0x33, 0xA1, 0xD3, 0xB1, 0xB3, 0xB9, 0xB3, 0xB9, 0x93, 0xC1, 0xB4, 0x01, 0xC1, 0xB3, 0x8D, 0xB9, 0x93, 0xC1, 0xB3, 0xB9, 0xB3, 0xB9, 0x93, 0xB9, 0xB3, 0xB9, 0xD4, 0xB1, 0xD3, 0xB1, 0xD4, 0xAA, 0x14, 0xAA, 0x96, 0x69, 0x31, 0x48, 0xEF, 0x49, 0x31, 0x39, 0x31, 0x01, 0x39, 0x51, 0x02, 0x31, 0x51, 0x81, 0x29, 0x30, 0x31, 0x50, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x12, 0x29, 0x30, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x84, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x19, 0x30, 0x02, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x51, 0x01, 0x19, 0x31, 0x01, 0x19, 0x51, 0x82, 0x19, 0x31, 0x21, 0x30, 0x21, 0x31, 0x02, 0x21, 0x30, 0x8A, 0x19, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x22, 0x17, 0x22, 0x18, 0x19, 0xD6, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x02, 0x21, 0x30, 0x93, 0x21, 0x2F, 0x21, + 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x09, 0x53, 0x19, 0xF7, 0x22, 0x38, 0x19, 0xD7, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x31, 0x19, 0x51, 0x19, 0x31, 0x01, 0x11, 0x31, 0x82, 0x19, 0x94, 0x19, 0xD5, 0x19, 0xF6, 0x01, 0x11, 0xD7, 0x80, 0x19, 0xF8, 0x03, 0x11, 0xF8, 0x85, 0x11, 0xF7, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x74, 0x11, 0x32, 0x11, 0x12, 0x01, 0x19, 0x32, 0x8D, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x11, 0x96, 0x19, 0xF8, 0x1A, 0x18, 0x11, 0x96, 0x11, 0x54, 0x11, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x29, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x04, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x05, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x07, 0x21, 0x2F, + 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x07, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x08, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x19, 0x10, 0x05, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x85, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x2F, 0x21, + 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x04, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x05, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x86, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x11, 0x29, 0x30, 0x8E, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x20, 0xEE, 0x20, 0xAD, 0x49, 0x2F, 0xBB, 0xF8, 0xBB, 0x96, 0xB3, 0x55, 0xB3, 0x35, 0xA3, 0x34, 0xAC, 0x16, 0xE7, 0x5F, 0xCF, 0x5F, 0xC7, 0x1E, 0x01, 0xBF, 0x3E, 0x06, 0xB7, 0x3E, 0x8A, 0xB7, 0x5E, 0xBF, 0x7E, 0xC7, 0x9F, 0xDF, 0x7F, 0xA4, 0x16, 0x81, 0xF0, 0x99, 0xF2, 0xA1, 0xD2, 0xA9, 0xD3, 0xB1, 0xF3, 0xB9, 0xF3, 0x01, 0xB9, 0xD3, 0x05, 0xC1, 0xD3, 0x01, 0xB9, 0xD3, 0x01, 0xB9, 0xB3, 0x86, 0xB1, 0xB2, 0xA1, 0xD2, 0x92, 0x31, 0xE6, 0x1F, 0xE6, 0xFF, 0xD7, 0x1F, 0xCF, 0x3F, 0x01, 0xC7, 0x3F, + 0x80, 0xBF, 0x1E, 0x01, 0xBF, 0x3F, 0x01, 0xC7, 0x3F, 0x89, 0xC7, 0x3E, 0xC7, 0x3F, 0xD7, 0x1F, 0xE6, 0xDF, 0xB4, 0x78, 0x8A, 0x11, 0x99, 0xD2, 0xA9, 0xD3, 0xB1, 0xB3, 0xB1, 0xD3, 0x03, 0xB9, 0xD3, 0x0B, 0xC1, 0xD3, 0x01, 0xB9, 0xB3, 0x89, 0xB1, 0xB2, 0xA1, 0xF2, 0x92, 0x31, 0xEE, 0x3F, 0xE7, 0x1F, 0xD7, 0x1F, 0xCF, 0x3F, 0xC7, 0x5F, 0xBF, 0x3F, 0xBF, 0x1E, 0x01, 0xBF, 0x3E, 0x01, 0xC7, 0x5F, 0x88, 0xC7, 0x3F, 0xC7, 0x1E, 0xD7, 0x1F, 0xE6, 0xDF, 0xB4, 0x78, 0x89, 0xF1, 0xA1, 0xD2, 0xA9, 0xB3, 0xB1, 0xB3, 0x01, 0xB1, 0xD3, 0x01, 0xB9, 0xD3, 0x01, 0xB9, 0xF3, 0x01, 0xB9, 0xD3, 0x80, 0xC1, 0xD3, 0x01, 0xB9, 0xD3, 0x01, 0xB9, 0xB3, 0x86, 0xB9, 0xB2, 0xB1, 0x92, 0xA1, 0xD2, 0x92, 0x92, 0xE6, 0x5F, 0xD7, 0x3F, 0xC7, 0x5F, 0x02, 0xBF, 0x5E, 0x07, 0xB7, 0x3E, 0x05, 0xBF, 0x5E, 0x02, 0xC7, 0x5F, 0x81, 0xCF, 0x5F, 0xCF, 0x7F, 0x02, 0xCF, 0x5F, 0x05, 0xD7, 0x5E, 0x01, 0xCF, 0x5E, 0x81, 0xCF, 0x3E, 0xCF, 0x3F, 0x02, 0xCF, 0x3E, 0x83, 0xCF, 0x3F, 0xC7, 0x3F, 0xC7, 0x3E, 0xC7, 0x5F, 0x03, 0xBF, 0x5E, 0x80, 0xBF, 0x3E, 0x01, 0xBF, 0x5E, 0x06, 0xB7, 0x3E, 0x80, 0xB7, 0x3D, 0x01, 0xB7, 0x5E, 0x80, 0xB7, 0x3D, 0x02, 0xB7, 0x3E, 0x05, 0xB7, 0x5E, 0x80, 0xB7, 0x3D, 0x09, 0xB7, 0x3E, 0x04, 0xBF, 0x5E, 0x03, 0xC7, 0x5F, 0x03, 0xCF, 0x5F, 0x80, 0xCF, 0x7F, 0x01, 0xCF, 0x5E, 0x03, 0xD7, 0x5E, 0x80, 0xD7, 0x5F, 0x06, 0xCF, 0x3F, 0x01, 0xC7, 0x3F, 0x81, 0xC7, 0x3E, 0xC7, 0x5E, 0x04, 0xBF, 0x3E, 0x01, 0xBF, 0x1E, 0x02, 0xBF, 0x3E, 0x86, 0xC7, + 0x3F, 0xCF, 0x3F, 0xD6, 0x5E, 0x8B, 0x34, 0x81, 0xF0, 0xA1, 0xF2, 0xA9, 0xD2, 0x01, 0xB1, 0xF3, 0x80, 0xB9, 0xF3, 0x02, 0xB9, 0xD3, 0x83, 0xC1, 0xD4, 0xB9, 0xD4, 0xC1, 0xF4, 0xB9, 0xF4, 0x01, 0xB9, 0xD3, 0x86, 0xB1, 0xD3, 0xA9, 0xB2, 0x91, 0xD0, 0xB4, 0x37, 0xE6, 0xFF, 0xD7, 0x3F, 0xC7, 0x3F, 0x02, 0xBF, 0x3E, 0x80, 0xBF, 0x1E, 0x01, 0xBF, 0x3E, 0x82, 0xC7, 0x3E, 0xC7, 0x1F, 0xCF, 0x1F, 0x01, 0xD7, 0x1F, 0x01, 0xDF, 0x1F, 0x02, 0xE7, 0x1F, 0x01, 0xE6, 0xFF, 0x02, 0xE7, 0x1F, 0x01, 0xDF, 0x1F, 0x82, 0xDF, 0x3F, 0xD7, 0x1E, 0xCF, 0x1F, 0x01, 0xC7, 0x3F, 0x02, 0xBF, 0x5E, 0x81, 0xB7, 0x3E, 0xBF, 0x5E, 0x06, 0xB7, 0x3E, 0x04, 0xB7, 0x5E, 0x05, 0xBF, 0x5E, 0x02, 0xC7, 0x5F, 0x03, 0xCF, 0x5F, 0x01, 0xD7, 0x5E, 0x03, 0xD7, 0x5F, 0x83, 0xD7, 0x5E, 0xD7, 0x3E, 0xD7, 0x3F, 0xD7, 0x1F, 0x01, 0xDF, 0x1F, 0x02, 0xDE, 0xFF, 0x01, 0xE6, 0xFF, 0x85, 0xEE, 0xDF, 0xF6, 0xDF, 0xFE, 0xBF, 0xCC, 0x57, 0xBB, 0x14, 0xC3, 0x14, 0x01, 0xCB, 0x15, 0x05, 0xD3, 0x15, 0x81, 0xD2, 0xF5, 0xD3, 0x15, 0x02, 0xDB, 0x15, 0x01, 0xDA, 0xF5, 0x80, 0xDB, 0x15, 0x0B, 0xDA, 0xF5, 0x01, 0xDA, 0xF6, 0x01, 0xDB, 0x17, 0x84, 0xD3, 0x38, 0xD3, 0x59, 0xBB, 0x1B, 0x40, 0x94, 0x40, 0xD6, 0x01, 0x40, 0xF7, 0x87, 0x48, 0xB6, 0x48, 0x53, 0xB2, 0x7A, 0xBA, 0x38, 0xC2, 0x17, 0xC1, 0xF6, 0xC9, 0xF5, 0xCA, 0x15, 0x03, 0xC9, 0xF5, 0xA1, 0xC2, 0x15, 0xB2, 0x15, 0xA2, 0x35, 0x8A, 0x76, 0x73, 0x19, 0x63, 0xFC, 0x54, 0x7E, 0x3C, 0xBF, 0x24, 0xBE, 0x14, 0xBE, 0x0C, 0xBD, 0x04, + 0xBD, 0x04, 0xFD, 0x05, 0x3B, 0x16, 0xFD, 0x17, 0x7C, 0x0F, 0x9C, 0x07, 0x9B, 0x07, 0xBB, 0x07, 0xBC, 0x0F, 0x9C, 0x17, 0x9C, 0x27, 0x7D, 0x37, 0x1E, 0x56, 0xBE, 0x6D, 0x5B, 0x62, 0x93, 0x92, 0x13, 0xAA, 0x14, 0xB1, 0xD3, 0xB9, 0xB3, 0xB9, 0xB4, 0xB9, 0x93, 0xC1, 0xD4, 0x04, 0xB9, 0x93, 0x80, 0xB9, 0xB3, 0x01, 0xB9, 0xD3, 0x85, 0xB1, 0xD3, 0xB2, 0x14, 0xB2, 0x96, 0x81, 0xB3, 0x50, 0xD0, 0x41, 0x10, 0x01, 0x39, 0x31, 0x80, 0x39, 0x51, 0x02, 0x31, 0x51, 0x80, 0x31, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x04, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x08, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x19, 0x10, 0x80, 0x11, 0x31, 0x01, 0x11, 0x52, 0x02, 0x11, 0x32, 0x01, 0x19, 0x52, 0x01, 0x11, 0x31, 0x01, 0x19, 0x52, 0x81, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x51, 0x01, 0x21, 0x31, 0x8A, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x33, 0x19, 0x95, 0x22, 0x17, 0x22, 0x18, 0x19, 0xB6, 0x11, 0x33, 0x11, 0x11, 0x19, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x09, 0x53, 0x19, 0xD6, 0x1A, 0x18, 0x11, 0xB6, 0x11, + 0x96, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x31, 0x84, 0x19, 0x51, 0x11, 0x31, 0x19, 0x73, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x11, 0xD7, 0x01, 0x11, 0xB7, 0x01, 0x09, 0xB7, 0x88, 0x11, 0xB7, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0xF7, 0x19, 0xD7, 0x11, 0x95, 0x19, 0x74, 0x11, 0x12, 0x19, 0x12, 0x01, 0x19, 0x32, 0x8A, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD7, 0x19, 0xF8, 0x11, 0xD7, 0x11, 0x75, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x06, 0x21, 0x30, 0x03, 0x21, 0x10, 0x05, 0x29, 0x10, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x50, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, + 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x87, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x08, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, + 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x87, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x05, 0x21, 0x10, 0x86, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x06, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x11, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x8C, 0x21, 0x0F, 0x20, 0xEE, 0x28, 0xAD, 0x49, 0x2F, 0xBC, 0x19, 0xBB, 0x96, 0xB3, 0x35, 0xAB, 0x14, 0xA3, 0x14, 0xAC, 0x16, 0xE7, 0x5F, 0xCF, 0x5F, 0xC7, 0x3E, 0x01, 0xBF, 0x3E, 0x05, 0xB7, 0x3E, 0x8A, 0xB7, 0x5E, 0xBF, 0x5E, 0xBF, 0x7E, 0xC7, 0x7F, 0xDF, 0x5F, 0x82, 0xB2, 0x89, 0xD1, 0x99, 0xD2, 0xA1, 0xD2, 0xA9, 0xF3, 0xB9, 0xF3, 0x01, 0xB9, 0xD3, 0x06, 0xC1, 0xD3, 0x02, 0xB9, 0xD3, 0x85, 0xB1, 0xB2, 0xA9, 0xD2, 0x92, 0x11, 0xDD, 0x7C, 0xE6, 0xFF, 0xCF, 0x1F, 0x01, 0xC7, 0x3F, 0x01, 0xBF, 0x3E, 0x80, 0xBF, 0x3F, 0x01, 0xBF, 0x3E, 0x80, 0xBF, 0x1E, 0x01, 0xBF, 0x3E, 0x89, 0xBF, 0x5F, + 0xC7, 0x3F, 0xD7, 0x3F, 0xE6, 0xDF, 0xA3, 0xD6, 0x8A, 0x11, 0xA1, 0xD2, 0xA9, 0xB2, 0xB1, 0xB3, 0xB1, 0xD3, 0x01, 0xB9, 0xD3, 0x0C, 0xC1, 0xD3, 0x8B, 0xB9, 0xB3, 0xB9, 0xB2, 0xA9, 0xD2, 0x92, 0x11, 0xDD, 0x5C, 0xE7, 0x1F, 0xCF, 0x3F, 0xC7, 0x3F, 0xBF, 0x5F, 0xBF, 0x5E, 0xBF, 0x3E, 0xB7, 0x1E, 0x01, 0xBF, 0x1E, 0x01, 0xBF, 0x3E, 0x01, 0xBF, 0x5F, 0x85, 0xC7, 0x3F, 0xCF, 0x1F, 0xE6, 0xDF, 0xAB, 0xD7, 0x91, 0xF1, 0xA1, 0xD2, 0x01, 0xB1, 0xB3, 0x02, 0xB9, 0xD3, 0x01, 0xB9, 0xF3, 0x80, 0xB9, 0xD3, 0x01, 0xC1, 0xD3, 0x01, 0xB9, 0xD3, 0x02, 0xB9, 0xB3, 0x86, 0xB1, 0x92, 0xA9, 0xB2, 0x91, 0xF1, 0xDD, 0xBD, 0xDF, 0x1F, 0xC7, 0x5F, 0xBF, 0x5E, 0x09, 0xB7, 0x3E, 0x02, 0xBF, 0x5E, 0x87, 0xBF, 0x7F, 0xC7, 0x5F, 0xCF, 0x5F, 0xCF, 0x3F, 0xD7, 0x3F, 0xDF, 0x3F, 0xDF, 0x1F, 0xE7, 0x1F, 0x01, 0xEF, 0x3F, 0x07, 0xF7, 0x3F, 0x01, 0xEF, 0x1F, 0x01, 0xE6, 0xFF, 0x80, 0xE7, 0x1F, 0x01, 0xDF, 0x1F, 0x84, 0xD7, 0x1F, 0xD7, 0x3F, 0xCF, 0x3F, 0xC7, 0x5F, 0xC7, 0x5E, 0x01, 0xBF, 0x3E, 0x80, 0xBF, 0x5E, 0x01, 0xBF, 0x3E, 0x05, 0xB7, 0x3E, 0x80, 0xB7, 0x3D, 0x02, 0xB7, 0x3E, 0x80, 0xB7, 0x3D, 0x05, 0xB7, 0x3E, 0x80, 0xB7, 0x3D, 0x0C, 0xB7, 0x3E, 0x02, 0xBF, 0x5E, 0x82, 0xBF, 0x3E, 0xC7, 0x5F, 0xCF, 0x5F, 0x01, 0xD7, 0x3F, 0x83, 0xDF, 0x3F, 0xE7, 0x3F, 0xEF, 0x3F, 0xEF, 0x5F, 0x01, 0xF7, 0x5F, 0x01, 0xF7, 0x3F, 0x84, 0xF7, 0x5F, 0xF7, 0x3F, 0xF7, 0x5F, 0xF7, 0x3F, 0xEF, 0x3F, 0x01, 0xEF, 0x1F, 0x01, 0xE7, 0x1F, 0x80, 0xE6, 0xFF, 0x01, 0xDF, 0x1F, + 0x01, 0xD7, 0x1F, 0x80, 0xCF, 0x3F, 0x02, 0xC7, 0x3E, 0x01, 0xBF, 0x3E, 0x03, 0xBF, 0x1E, 0x01, 0xBF, 0x3E, 0x87, 0xC7, 0x3F, 0xCF, 0x1F, 0xD6, 0x5E, 0x8B, 0x13, 0x89, 0xF1, 0xA1, 0xF2, 0xA9, 0xF2, 0xB1, 0xF3, 0x01, 0xB9, 0xF3, 0x01, 0xB9, 0xD3, 0x80, 0xC1, 0xD3, 0x01, 0xC1, 0xD4, 0x01, 0xC1, 0xF4, 0x80, 0xB9, 0xD3, 0x01, 0xB1, 0xD3, 0x85, 0xA1, 0xB1, 0x91, 0xD0, 0xB4, 0x37, 0xE6, 0xFF, 0xD7, 0x3F, 0xC7, 0x3F, 0x03, 0xBF, 0x1E, 0x80, 0xBF, 0x3E, 0x01, 0xC7, 0x3F, 0x82, 0xCF, 0x1F, 0xCE, 0xFF, 0xD6, 0xFF, 0x01, 0xDF, 0x1F, 0x02, 0xE6, 0xFF, 0x02, 0xEE, 0xFF, 0x80, 0xEE, 0xDF, 0x01, 0xEE, 0xFF, 0x01, 0xE6, 0xFF, 0x84, 0xDE, 0xFF, 0xD6, 0xFF, 0xD7, 0x1F, 0xCF, 0x3F, 0xC7, 0x3F, 0x01, 0xBF, 0x3E, 0x05, 0xB7, 0x3E, 0x80, 0xBF, 0x5E, 0x02, 0xB7, 0x3E, 0x03, 0xB7, 0x5E, 0x03, 0xBF, 0x5E, 0x8B, 0xBF, 0x7E, 0xBF, 0x5E, 0xC7, 0x5F, 0xCF, 0x5F, 0xCF, 0x3F, 0xD7, 0x3F, 0xDF, 0x3F, 0xE7, 0x1F, 0xEF, 0x3F, 0xF7, 0x5F, 0xF7, 0x3F, 0xF7, 0x5F, 0x06, 0xFF, 0x3F, 0x01, 0xF6, 0xFF, 0x04, 0xEE, 0xDF, 0x02, 0xF6, 0xDF, 0x84, 0xFE, 0xBF, 0xFE, 0x7F, 0xDC, 0x99, 0xB2, 0xF4, 0xC3, 0x14, 0x01, 0xCB, 0x15, 0x80, 0xD3, 0x15, 0x02, 0xD2, 0xF5, 0x80, 0xD3, 0x15, 0x01, 0xD2, 0xF5, 0x82, 0xD3, 0x15, 0xDA, 0xF5, 0xD2, 0xF5, 0x0E, 0xDA, 0xF5, 0x01, 0xDA, 0xF6, 0x8D, 0xD2, 0xF6, 0xDB, 0x17, 0xD3, 0x38, 0xCB, 0x5A, 0xB2, 0xFB, 0x40, 0x94, 0x38, 0xF7, 0x41, 0x18, 0x41, 0x39, 0x38, 0xF7, 0x48, 0xD6, 0x79, 0x57, 0xB2, 0x79, 0xC2, 0x38, 0x01, 0xC1, 0xD5, + 0x80, 0xC1, 0xF5, 0x03, 0xC9, 0xF5, 0xA2, 0xC1, 0xF5, 0xB2, 0x15, 0xA2, 0x15, 0x8A, 0x76, 0x73, 0x19, 0x6C, 0x1C, 0x54, 0x9E, 0x3C, 0xBE, 0x2C, 0xDE, 0x1C, 0xDE, 0x0C, 0xBD, 0x04, 0xDD, 0x04, 0xFD, 0x05, 0x5B, 0x16, 0xDD, 0x0F, 0x5C, 0x0F, 0x7C, 0x0F, 0xBC, 0x07, 0xBC, 0x07, 0xBB, 0x0F, 0x9C, 0x17, 0x9C, 0x1F, 0x7D, 0x37, 0x3E, 0x5E, 0xDF, 0x6D, 0x5B, 0x62, 0x93, 0x8A, 0x13, 0xA1, 0xD3, 0xB9, 0xF4, 0xB1, 0x93, 0xB9, 0xB4, 0xC1, 0xB3, 0xB9, 0x93, 0xC1, 0xD4, 0x02, 0xB9, 0x93, 0x02, 0xB9, 0xB3, 0x88, 0xB9, 0xD4, 0xB1, 0xD3, 0xBA, 0x35, 0xB2, 0x76, 0xA2, 0x96, 0x59, 0x11, 0x40, 0xF0, 0x39, 0x10, 0x39, 0x31, 0x04, 0x31, 0x51, 0x01, 0x31, 0x50, 0x81, 0x29, 0x30, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x8A, 0x19, 0x10, 0x19, 0x11, 0x11, 0x31, 0x11, 0x53, 0x11, 0x94, 0x19, 0xB5, 0x19, 0x95, 0x19, 0xB5, 0x19, 0x95, 0x19, 0xB5, 0x19, 0x94, 0x01, 0x11, 0x73, 0x81, 0x11, 0x53, 0x19, 0x52, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x51, 0x01, 0x21, + 0x31, 0x84, 0x21, 0x51, 0x19, 0x32, 0x11, 0x53, 0x11, 0x33, 0x11, 0x95, 0x01, 0x19, 0xF7, 0x83, 0x19, 0xD6, 0x09, 0x12, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x31, 0x11, 0x53, 0x09, 0x53, 0x19, 0xD6, 0x22, 0x18, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x54, 0x11, 0x33, 0x11, 0x11, 0x01, 0x19, 0x51, 0x86, 0x19, 0x31, 0x11, 0x52, 0x11, 0x73, 0x11, 0xB5, 0x19, 0xD6, 0x11, 0xD6, 0x11, 0xB7, 0x01, 0x09, 0x96, 0x02, 0x09, 0x76, 0x80, 0x09, 0x96, 0x02, 0x11, 0xD7, 0x85, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x33, 0x19, 0x32, 0x19, 0x12, 0x19, 0x32, 0x01, 0x11, 0x12, 0x8E, 0x11, 0x54, 0x11, 0x96, 0x11, 0xD7, 0x1A, 0x18, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x19, 0x12, 0x19, 0x11, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, + 0x30, 0x80, 0x21, 0x10, 0x0A, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x09, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x88, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, + 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x04, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x06, 0x21, 0x10, 0x03, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x87, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x0D, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x90, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x28, 0xEE, 0x28, 0xAD, 0x49, 0x2F, 0xBC, 0x19, 0xBB, 0x96, 0xB3, 0x35, 0xAA, 0xF4, 0xA3, 0x14, 0xAC, 0x16, 0xE7, 0x3F, 0xCF, 0x5F, 0xBF, 0x1E, 0xBF, 0x3E, 0xB7, 0x3E, 0x02, 0xB7, 0x1E, 0x81, 0xB7, 0x3E, 0xB7, 0x3D, 0x01, 0xB7, 0x3E, 0x88, 0xB7, 0x5E, 0xBF, 0x7F, 0xC7, 0x5F, 0xDF, 0x1F, 0x7A, 0x51, 0x91, 0xF1, 0x99, + 0xD2, 0xA9, 0xD2, 0xB1, 0xF3, 0x01, 0xB9, 0xF3, 0x80, 0xB9, 0xD3, 0x06, 0xC1, 0xD3, 0x02, 0xB9, 0xB3, 0x8B, 0xB1, 0xD2, 0x99, 0xF1, 0xB3, 0xF7, 0xE6, 0xBF, 0xD7, 0x1F, 0xC7, 0x3F, 0xBF, 0x1E, 0xBF, 0x3E, 0xBF, 0x1E, 0xBF, 0x3F, 0xBF, 0x3E, 0xB7, 0x3E, 0x02, 0xB7, 0x1E, 0x01, 0xB7, 0x3E, 0x88, 0xBF, 0x3E, 0xC7, 0x5F, 0xD7, 0x1F, 0xDE, 0x7E, 0x93, 0x13, 0x91, 0xF2, 0xA1, 0xB2, 0xA9, 0xB2, 0xB1, 0xD3, 0x02, 0xB9, 0xD3, 0x09, 0xC1, 0xD3, 0x8A, 0xC1, 0xB3, 0xC1, 0xD3, 0xB9, 0xB3, 0xB1, 0xB2, 0xA1, 0xF2, 0xA3, 0x75, 0xEE, 0xBF, 0xD7, 0x1F, 0xC7, 0x3F, 0xBF, 0x3F, 0xB7, 0x3E, 0x05, 0xB7, 0x1E, 0x02, 0xB7, 0x3E, 0x86, 0xBF, 0x3E, 0xC7, 0x3F, 0xD7, 0x1F, 0xDE, 0x5E, 0x92, 0xF3, 0x99, 0xF2, 0xA9, 0xD3, 0x01, 0xB1, 0xB3, 0x01, 0xB9, 0xD3, 0x01, 0xB9, 0xF3, 0x01, 0xC1, 0xF3, 0x03, 0xC1, 0xD3, 0x01, 0xB9, 0xB3, 0x85, 0xB9, 0xB2, 0xA9, 0xB2, 0x99, 0xF1, 0xB3, 0xF7, 0xE7, 0x1F, 0xC7, 0x3F, 0x01, 0xBF, 0x3E, 0x08, 0xB7, 0x3E, 0x02, 0xBF, 0x5E, 0x8B, 0xC7, 0x5F, 0xCF, 0x3F, 0xD6, 0xFF, 0xE6, 0xFF, 0xE6, 0x9F, 0xDD, 0xFD, 0xD5, 0x5C, 0xC4, 0x58, 0xA3, 0x35, 0x9A, 0x92, 0x89, 0xF0, 0x81, 0x8F, 0x01, 0x81, 0x6E, 0x91, 0x81, 0x4E, 0x81, 0x6E, 0x89, 0xAF, 0x9A, 0x52, 0xAA, 0xF4, 0xB3, 0x96, 0xBB, 0xF7, 0xCC, 0x99, 0xD4, 0xFB, 0xDD, 0x7C, 0xDD, 0xDD, 0xE6, 0x5E, 0xE6, 0xDF, 0xDF, 0x1F, 0xD7, 0x3F, 0xCF, 0x3E, 0xC7, 0x5F, 0xC7, 0x5E, 0x03, 0xBF, 0x3E, 0x02, 0xB7, 0x3E, 0x82, 0xB7, 0x1D, 0xB7, 0x3E, 0xAF, 0x1D, 0x01, 0xB7, 0x1D, 0x80, 0xAF, + 0x1D, 0x01, 0xAF, 0x3D, 0x02, 0xAF, 0x3E, 0x83, 0xB7, 0x3E, 0xAF, 0x3D, 0xB7, 0x3D, 0xAF, 0x3D, 0x01, 0xAF, 0x1D, 0x01, 0xB7, 0x3E, 0x80, 0xB7, 0x3D, 0x06, 0xB7, 0x3E, 0x8E, 0xBF, 0x3E, 0xBF, 0x5E, 0xC7, 0x5F, 0xC7, 0x3F, 0xCF, 0x1F, 0xDF, 0x1F, 0xE6, 0xBF, 0xDE, 0x3E, 0xD5, 0x9C, 0xCC, 0xFB, 0xAB, 0x75, 0x92, 0x92, 0x89, 0xF0, 0x81, 0x8F, 0x79, 0x6E, 0x01, 0x79, 0x4E, 0x92, 0x81, 0x8E, 0x89, 0xCF, 0x92, 0x51, 0xA2, 0xD3, 0xB3, 0x76, 0xC4, 0x18, 0xD4, 0xBA, 0xD4, 0xFB, 0xDD, 0x5C, 0xDD, 0x9C, 0xE6, 0x3E, 0xEE, 0x9F, 0xE6, 0xFF, 0xDF, 0x1F, 0xCF, 0x1F, 0xCF, 0x3F, 0xC7, 0x3F, 0xC7, 0x3E, 0xBF, 0x3E, 0x04, 0xBF, 0x1E, 0x89, 0xBF, 0x3E, 0xC7, 0x3F, 0xCF, 0x1F, 0xD6, 0x5E, 0x8B, 0x33, 0x89, 0xF1, 0x99, 0xD2, 0xA9, 0xD2, 0xB1, 0xF3, 0xB9, 0xF3, 0x02, 0xB9, 0xD3, 0x84, 0xC1, 0xD3, 0xC1, 0xD4, 0xC1, 0xD3, 0xC1, 0xD4, 0xC1, 0xF4, 0x01, 0xB9, 0xD3, 0x86, 0xB1, 0xF3, 0xA1, 0xB1, 0x91, 0xD0, 0xAC, 0x37, 0xE6, 0xFF, 0xD7, 0x3F, 0xC7, 0x3F, 0x04, 0xBF, 0x1E, 0x83, 0xC7, 0x1F, 0xCF, 0x1F, 0xD7, 0x1F, 0xDE, 0xFF, 0x01, 0xE6, 0xFF, 0x81, 0xEE, 0xDF, 0xF6, 0xFF, 0x01, 0xF6, 0xDF, 0x01, 0xFE, 0xDF, 0x80, 0xFE, 0xBF, 0x02, 0xFE, 0xDF, 0x01, 0xF6, 0xDF, 0x85, 0xEE, 0xDF, 0xE6, 0xDF, 0xDE, 0xFF, 0xCF, 0x1F, 0xC7, 0x1F, 0xBF, 0x3E, 0x08, 0xB7, 0x3E, 0x01, 0xB7, 0x3D, 0x82, 0xB7, 0x3E, 0xB7, 0x5E, 0xB7, 0x3E, 0x03, 0xBF, 0x5E, 0x80, 0xBF, 0x7E, 0x01, 0xC7, 0x5F, 0x89, 0xCF, 0x3F, 0xD7, 0x1F, 0xE6, 0xDF, 0xDE, 0x3E, 0xD5, 0x9C, 0xC4, 0xB9, + 0xA3, 0x55, 0x92, 0x92, 0x89, 0xF0, 0x81, 0x8F, 0x03, 0x81, 0x4E, 0x8A, 0x89, 0x8F, 0x89, 0xAF, 0x9A, 0x31, 0xAB, 0x14, 0xC3, 0xB7, 0xCC, 0x59, 0xE5, 0x1C, 0xED, 0x7D, 0xED, 0x9D, 0xF5, 0xDE, 0xFE, 0x3F, 0x02, 0xFE, 0xBF, 0x01, 0xFE, 0x9F, 0x84, 0xDC, 0x99, 0xBB, 0x14, 0xC3, 0x15, 0xCA, 0xF4, 0xCA, 0xF5, 0x01, 0xD2, 0xF5, 0x80, 0xD2, 0xD5, 0x04, 0xD2, 0xF5, 0x02, 0xDA, 0xF5, 0x03, 0xDA, 0xD5, 0x80, 0xDA, 0xF5, 0x06, 0xDA, 0xD5, 0x91, 0xDA, 0xF5, 0xDA, 0xD5, 0xDA, 0xF6, 0xD2, 0xF6, 0xD3, 0x17, 0xD3, 0x38, 0xCB, 0x5A, 0xAB, 0x1B, 0x38, 0x94, 0x38, 0xF7, 0x39, 0x39, 0x39, 0x59, 0x31, 0x18, 0x38, 0xF7, 0x50, 0xF6, 0x9A, 0x5A, 0xBA, 0x58, 0xC2, 0x17, 0x01, 0xC1, 0xF5, 0x02, 0xC9, 0xF5, 0x01, 0xC1, 0xF5, 0x91, 0xBA, 0x15, 0xA1, 0xF5, 0x8A, 0x36, 0x73, 0x18, 0x6C, 0x1C, 0x54, 0x9E, 0x3C, 0xDE, 0x2C, 0xDE, 0x1C, 0xFE, 0x0C, 0xBD, 0x04, 0xDD, 0x04, 0xFC, 0x05, 0x3B, 0x16, 0xDD, 0x17, 0x7C, 0x0F, 0x7B, 0x07, 0x9B, 0x07, 0xBB, 0x01, 0x0F, 0xBC, 0x88, 0x17, 0x9C, 0x1F, 0x7D, 0x37, 0x3E, 0x56, 0xDE, 0x65, 0x5B, 0x62, 0x93, 0x92, 0x33, 0xA9, 0xF3, 0xB1, 0xB3, 0x01, 0xB9, 0xB4, 0x81, 0xC1, 0xB4, 0xC1, 0xD4, 0x01, 0xB9, 0x93, 0x82, 0xB9, 0xB3, 0xB9, 0x93, 0xB9, 0xB4, 0x02, 0xB9, 0xB3, 0x88, 0xB1, 0x93, 0xA9, 0xB3, 0xB2, 0x55, 0xB2, 0xF8, 0x69, 0x52, 0x40, 0xAF, 0x38, 0xF0, 0x39, 0x31, 0x39, 0x51, 0x01, 0x31, 0x51, 0x80, 0x31, 0x31, 0x0C, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x09, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x04, 0x29, + 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x84, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0xB5, 0x11, 0xD6, 0x01, 0x19, 0xF7, 0x02, 0x19, 0xD7, 0x01, 0x19, 0xD6, 0x83, 0x19, 0xB5, 0x19, 0x94, 0x11, 0x53, 0x19, 0x32, 0x02, 0x19, 0x11, 0x02, 0x19, 0x31, 0x8B, 0x19, 0x32, 0x11, 0x32, 0x09, 0x33, 0x19, 0xB6, 0x22, 0x18, 0x22, 0x17, 0x11, 0xB5, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xF7, 0x22, 0x38, 0x11, 0x96, 0x11, 0x75, 0x09, 0x34, 0x11, 0x33, 0x19, 0x32, 0x02, 0x19, 0x51, 0x84, 0x11, 0x52, 0x11, 0x73, 0x19, 0xF6, 0x19, 0xD6, 0x11, 0xB6, 0x01, 0x11, 0x96, 0x80, 0x09, 0x75, 0x02, 0x09, 0x55, 0x87, 0x09, 0x75, 0x09, 0xB7, 0x11, 0xD7, 0x11, 0xF8, 0x19, 0xD7, 0x19, 0x95, 0x19, 0x74, 0x19, 0x12, 0x01, 0x19, 0x32, 0x90, 0x19, 0x12, 0x10, 0xF2, 0x11, 0x33, 0x11, 0x75, 0x11, 0xD7, 0x11, 0xF8, 0x19, 0xF7, 0x11, 0x96, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, + 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x02, 0x29, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x03, 0x21, 0x31, 0x01, 0x21, 0x11, 0x01, 0x21, 0x31, 0x04, 0x21, 0x10, 0x04, 0x21, 0x30, 0x84, 0x21, 0x50, 0x21, 0x51, 0x21, 0x30, 0x21, 0x31, 0x21, 0x51, 0x02, 0x21, 0x31, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x0E, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x06, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, + 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x8B, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x03, 0x29, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x84, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, + 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x0D, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x8E, 0x21, 0x2F, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0xAD, 0x49, 0x2F, 0xBB, 0xF9, 0xBB, 0x76, 0xB3, 0x15, 0xAA, 0xF4, 0xA3, 0x14, 0xAC, 0x16, 0xE7, 0x3F, 0xCF, 0x3F, 0xBF, 0x1E, 0xBF, 0x3E, 0x01, 0xB7, 0x1E, 0x81, 0xB7, 0x1D, 0xAF, 0x1D, 0x01, 0xB7, 0x1D, 0x01, 0xB7, 0x3E, 0x88, 0xB7, 0x5E, 0xBF, 0x5F, 0xCF, 0x5F, 0xC6, 0x3D, 0x82, 0x51, 0x91, 0xD1, 0x99, 0xD2, 0xA9, 0xD2, 0xB1, 0xF3, 0x01, 0xB9, 0xF3, 0x81, 0xB9, 0xD3, 0xC1, 0xF3, 0x06, 0xC1, 0xD3, 0x86, 0xB9, 0xD3, 0xB1, 0xB2, 0xA9, 0xD2, 0x89, 0xF1, 0xEE, 0x5F, 0xD6, 0xFF, 0xCF, 0x1F, 0x01, 0xBF, 0x1E, 0x83, 0xB7, 0x1E, 0xB7, 0x3E, 0xB7, 0x1E, 0xB7, 0x3E, 0x04, 0xB7, 0x1E, 0x01, 0xB7, 0x3E, 0x87, 0xBF, 0x5E, 0xC7, 0x3F, 0xD7, 0x1F, 0xCD, 0x9C, 0x8A, 0x31, 0x99, 0xD2, 0xA9, 0xD2, 0xB1, 0xB2, 0x01, 0xB9, 0xD3, 0x07, 0xC1, 0xD3, 0x80, 0xC1, 0xD4, 0x01, 0xC1, 0xD3, 0x88, 0xC1, 0xB3, 0xC1, 0xD3, 0xB9, 0xD3, 0xB1, 0xD2, 0x91, 0xF1, 0xD5, 0x9C, 0xDE, 0xFF, 0xCF, 0x3F, 0xBF, 0x3F, 0x09, 0xB7, + 0x1E, 0x01, 0xB7, 0x3E, 0x87, 0xBF, 0x5F, 0xC7, 0x3F, 0xD6, 0xFF, 0xC5, 0x7B, 0x8A, 0x31, 0xA1, 0xD2, 0xA9, 0xD3, 0xB1, 0xB3, 0x03, 0xB9, 0xD3, 0x81, 0xC1, 0xD3, 0xC1, 0xF3, 0x02, 0xC1, 0xD3, 0x88, 0xC1, 0xD4, 0xC1, 0xB3, 0xB9, 0xB3, 0xB9, 0xB2, 0xB1, 0xB2, 0xA1, 0xD1, 0xA3, 0x34, 0xE7, 0x1F, 0xC7, 0x3F, 0x01, 0xBF, 0x3E, 0x81, 0xB7, 0x3E, 0xB7, 0x1E, 0x01, 0xB7, 0x3E, 0x80, 0xB7, 0x1E, 0x02, 0xB7, 0x3E, 0x01, 0xBF, 0x3E, 0x8C, 0xC7, 0x3F, 0xCF, 0x1F, 0xDF, 0x1F, 0xEE, 0xFF, 0xCD, 0x7B, 0x9B, 0x95, 0x92, 0xD2, 0x8A, 0x31, 0x89, 0xF0, 0x91, 0xB0, 0x99, 0xB1, 0x99, 0x71, 0xA1, 0x91, 0x05, 0xA9, 0x71, 0x80, 0xA9, 0x91, 0x01, 0xA1, 0x91, 0x01, 0x99, 0xB1, 0x8B, 0x91, 0xD0, 0x91, 0xF0, 0x8A, 0x11, 0x92, 0xB2, 0x9B, 0x75, 0xCD, 0x5B, 0xF7, 0x1F, 0xE7, 0x1F, 0xD7, 0x1F, 0xCF, 0x1F, 0xC7, 0x3F, 0xC7, 0x3E, 0x01, 0xBF, 0x3E, 0x01, 0xB7, 0x3E, 0x01, 0xB7, 0x1E, 0x83, 0xB7, 0x1D, 0xB7, 0x1E, 0xAF, 0x1D, 0xB7, 0x1D, 0x01, 0xAF, 0x1D, 0x01, 0xAF, 0x3D, 0x80, 0xAF, 0x3E, 0x03, 0xAF, 0x3D, 0x01, 0xAF, 0x1D, 0x82, 0xAF, 0x1E, 0xAF, 0x1D, 0xB7, 0x1E, 0x02, 0xB7, 0x3E, 0x80, 0xB7, 0x1E, 0x02, 0xB7, 0x3E, 0x01, 0xBF, 0x3E, 0x8E, 0xC7, 0x3F, 0xCF, 0x1F, 0xDE, 0xFF, 0xE6, 0xDF, 0xAC, 0x77, 0x93, 0x34, 0x8A, 0x71, 0x89, 0xF0, 0x89, 0xB0, 0x99, 0xB1, 0x99, 0x91, 0xA1, 0x91, 0xA1, 0x71, 0xA9, 0x71, 0xA1, 0x51, 0x01, 0xA9, 0x71, 0x80, 0xA9, 0x91, 0x01, 0xA1, 0x91, 0x80, 0xA1, 0xB1, 0x01, 0x99, 0xB1, 0x01, 0x91, 0xD0, 0x87, 0x92, 0x11, 0x92, + 0x72, 0x92, 0xF3, 0xA3, 0xD6, 0xDE, 0x1E, 0xEF, 0x1F, 0xDE, 0xFF, 0xD7, 0x1F, 0x01, 0xC7, 0x1E, 0x04, 0xBF, 0x1E, 0x01, 0xC7, 0x1E, 0x88, 0xCE, 0xFF, 0xD6, 0x5E, 0x8B, 0x13, 0x89, 0xF1, 0x99, 0xD2, 0xA9, 0xD2, 0xB1, 0xF3, 0xB9, 0xF3, 0xB9, 0xD3, 0x05, 0xC1, 0xD3, 0x80, 0xC1, 0xF4, 0x01, 0xB9, 0xD3, 0x87, 0xB1, 0xD3, 0xA1, 0x91, 0x91, 0xD0, 0xB4, 0x57, 0xDE, 0xFF, 0xCF, 0x1F, 0xC7, 0x3F, 0xBE, 0xFE, 0x02, 0xB7, 0x1E, 0x8B, 0xBF, 0x1E, 0xC7, 0x1F, 0xC6, 0xDE, 0x94, 0xB7, 0xA4, 0x77, 0xAC, 0x78, 0xAC, 0x57, 0xAC, 0x17, 0xB3, 0xF7, 0xAB, 0xB6, 0xAB, 0x95, 0xAB, 0x54, 0x04, 0xA3, 0x34, 0x87, 0xA3, 0x54, 0xA3, 0x75, 0xA3, 0x95, 0x9B, 0xB5, 0x8B, 0x93, 0xAD, 0x9A, 0xCF, 0x1F, 0xBF, 0x3E, 0x01, 0xB7, 0x3E, 0x84, 0xB7, 0x1E, 0xB7, 0x3E, 0xAF, 0x1E, 0xB7, 0x3E, 0xB7, 0x1E, 0x07, 0xB7, 0x3E, 0x01, 0xBF, 0x5E, 0x8D, 0xC7, 0x5E, 0xCF, 0x5F, 0xD7, 0x3F, 0xDF, 0x1F, 0xE6, 0xFF, 0xB4, 0xF9, 0x93, 0x54, 0x82, 0x51, 0x89, 0xF1, 0x89, 0xB0, 0x91, 0x90, 0x99, 0x71, 0xA1, 0x71, 0xA9, 0x71, 0x03, 0xA9, 0x51, 0x02, 0xA9, 0x71, 0x90, 0xA1, 0x91, 0xA1, 0xB1, 0x99, 0xB1, 0x99, 0xB0, 0x99, 0xD1, 0x99, 0xF1, 0x9A, 0x52, 0xA2, 0xB3, 0xB3, 0x54, 0xED, 0x7C, 0xFE, 0x9F, 0xFE, 0x7F, 0xFE, 0x5F, 0xFE, 0x1F, 0xE4, 0x9A, 0xBA, 0xD4, 0xC2, 0xF4, 0x01, 0xCA, 0xF5, 0x80, 0xD2, 0xD5, 0x06, 0xD2, 0xF5, 0x0A, 0xDA, 0xD5, 0x80, 0xD2, 0xB4, 0x03, 0xDA, 0xD5, 0x91, 0xD2, 0xD6, 0xD2, 0xF6, 0xD2, 0xF7, 0xD3, 0x18, 0xCB, 0x3A, 0xAB, 0x1B, 0x38, 0x94, 0x31, 0x18, + 0x31, 0x39, 0x31, 0x5A, 0x31, 0x39, 0x31, 0x19, 0x40, 0xF7, 0x71, 0xB9, 0xB2, 0x7A, 0xC2, 0x37, 0xB9, 0xD5, 0xC1, 0xF5, 0x01, 0xC9, 0xF5, 0x8C, 0xC9, 0xD5, 0xC1, 0xD4, 0xC1, 0xD5, 0xB9, 0xF5, 0xA1, 0xF5, 0x8A, 0x15, 0x7B, 0x18, 0x6C, 0x1C, 0x5C, 0xBE, 0x3C, 0xFE, 0x2C, 0xFF, 0x1C, 0xFE, 0x0C, 0xFD, 0x01, 0x04, 0xFD, 0x84, 0x05, 0x5B, 0x0E, 0xBC, 0x0F, 0x5C, 0x0F, 0x7B, 0x0F, 0xBB, 0x01, 0x07, 0xBB, 0x9E, 0x0F, 0x9C, 0x17, 0x9C, 0x1F, 0x7D, 0x37, 0x3D, 0x56, 0xDE, 0x65, 0x5B, 0x62, 0x93, 0x92, 0x33, 0xA1, 0xF3, 0xB1, 0x93, 0xB9, 0xB3, 0xB9, 0xB4, 0xC1, 0xD4, 0xC1, 0xB4, 0xB9, 0xB4, 0xB9, 0x93, 0xB1, 0x73, 0xB9, 0xB4, 0xB9, 0xB3, 0xB9, 0xD4, 0xB9, 0xD3, 0xB9, 0xD4, 0xB1, 0xB3, 0xA9, 0xD4, 0xAA, 0x15, 0xB2, 0xD8, 0x79, 0xF4, 0x40, 0xD0, 0x39, 0x10, 0x39, 0x31, 0x31, 0x30, 0x03, 0x31, 0x51, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x82, 0x29, 0x50, 0x29, 0x30, 0x29, 0x2F, 0x0D, 0x29, 0x30, 0x80, 0x29, 0x10, 0x05, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x03, 0x21, 0x10, 0x84, 0x21, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x95, 0x11, 0xD7, 0x03, 0x11, 0xF8, 0x02, 0x11, 0xD7, 0x87, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xB5, + 0x19, 0x94, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x32, 0x01, 0x11, 0x33, 0x80, 0x19, 0xB6, 0x01, 0x22, 0x17, 0x85, 0x19, 0xB6, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x30, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x8D, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xF7, 0x22, 0x18, 0x11, 0x96, 0x11, 0x75, 0x11, 0x34, 0x11, 0x33, 0x19, 0x32, 0x19, 0x52, 0x01, 0x19, 0x51, 0x8D, 0x11, 0x32, 0x19, 0x94, 0x19, 0xF6, 0x11, 0xB6, 0x11, 0x96, 0x09, 0x76, 0x09, 0x75, 0x09, 0x55, 0x09, 0x54, 0x09, 0x34, 0x09, 0x54, 0x09, 0x55, 0x09, 0x76, 0x11, 0xF7, 0x01, 0x11, 0xD7, 0x88, 0x19, 0xB5, 0x19, 0x54, 0x19, 0x53, 0x19, 0x12, 0x19, 0x32, 0x19, 0x12, 0x11, 0x12, 0x11, 0x13, 0x11, 0x95, 0x01, 0x11, 0xD7, 0x84, 0x1A, 0x18, 0x11, 0x96, 0x11, 0x54, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x85, 0x21, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x29, 0x30, 0x88, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, + 0x31, 0x80, 0x21, 0x52, 0x02, 0x19, 0x31, 0x01, 0x21, 0x32, 0x05, 0x21, 0x31, 0x80, 0x21, 0x11, 0x06, 0x21, 0x31, 0x80, 0x21, 0x51, 0x09, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x21, 0x31, 0x80, 0x19, 0x10, 0x03, 0x21, 0x31, 0x80, 0x19, 0x31, 0x05, 0x21, 0x31, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x08, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x85, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x0A, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x09, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x08, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x06, 0x21, 0x0F, + 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x09, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x08, 0x29, 0x30, 0x8C, 0x29, 0x2F, 0x21, 0x0F, 0x28, 0xEE, 0x28, 0xAD, 0x49, 0x2F, 0xBB, 0xF9, 0xBB, 0x76, 0xB2, 0xF4, 0xAA, 0xF4, 0xA2, 0xF3, 0xAC, 0x16, 0xDF, 0x1F, 0xCF, 0x3F, 0x01, 0xBF, 0x1E, 0x80, 0xB7, 0x1E, 0x01, 0xAE, 0xFD, 0x02, 0xAF, 0x1D, 0x80, 0xAF, 0x1E, 0x01, 0xB7, 0x3E, 0x88, 0xBF, 0x5F, 0xCF, 0x3F, 0xBD, 0xBB, 0x71, 0xCF, 0x99, 0xF2, 0xA1, 0xD2, 0xA9, 0xD3, 0xB2, 0x13, 0xB9, 0xF3, 0x01, 0xB9, + 0xD3, 0x83, 0xC1, 0xD3, 0xC1, 0xF3, 0xC1, 0xD3, 0xC1, 0xF3, 0x03, 0xC1, 0xD3, 0x87, 0xB9, 0xB3, 0xB1, 0xD2, 0xA1, 0xF1, 0xB3, 0xB6, 0xEE, 0xFF, 0xCF, 0x1F, 0xC7, 0x1F, 0xBF, 0x3F, 0x04, 0xB7, 0x1E, 0x05, 0xAF, 0x1E, 0x88, 0xB7, 0x3E, 0xB7, 0x5F, 0xBF, 0x5F, 0xC7, 0x3F, 0xE7, 0x3F, 0xA3, 0xB6, 0x92, 0x11, 0xA1, 0xD2, 0xB1, 0xB2, 0x02, 0xB9, 0xD3, 0x09, 0xC1, 0xD3, 0x01, 0xC1, 0xB3, 0x87, 0xB9, 0xD3, 0xA9, 0xD2, 0x92, 0x51, 0xF7, 0x1F, 0xCF, 0x1F, 0xC7, 0x3F, 0xBF, 0x3F, 0xB7, 0x1E, 0x08, 0xAF, 0x1E, 0x02, 0xB7, 0x3E, 0x87, 0xBF, 0x3E, 0xCF, 0x1F, 0xE7, 0x1F, 0x9B, 0x55, 0x9A, 0x12, 0xA9, 0xD2, 0xB1, 0xB3, 0xB1, 0xD3, 0x01, 0xB9, 0xD3, 0x81, 0xC1, 0xD3, 0xC1, 0xF3, 0x05, 0xC1, 0xD3, 0x01, 0xB9, 0xB3, 0x84, 0xB1, 0xD2, 0xA9, 0xB1, 0x89, 0xF0, 0xEE, 0xFF, 0xC7, 0x1F, 0x01, 0xBF, 0x1E, 0x05, 0xB7, 0x1E, 0x8E, 0xB7, 0x3E, 0xBF, 0x3E, 0xC7, 0x3F, 0xCF, 0x1F, 0xDE, 0xFF, 0xD6, 0x3E, 0xB4, 0x58, 0x82, 0x10, 0x89, 0xD0, 0x91, 0xD1, 0x99, 0xD1, 0xA1, 0xB1, 0xA1, 0xB2, 0xA9, 0xB2, 0xA9, 0x92, 0x02, 0xB1, 0x92, 0x02, 0xB9, 0x92, 0x81, 0xB9, 0x72, 0xB9, 0x92, 0x02, 0xB1, 0x92, 0x01, 0xB1, 0xB2, 0x01, 0xA9, 0xB2, 0x01, 0xA1, 0xD1, 0x89, 0x99, 0xD1, 0x89, 0xD0, 0x81, 0xCF, 0xBC, 0x17, 0xDD, 0xFD, 0xE6, 0xFF, 0xD7, 0x1F, 0xCF, 0x3F, 0xC7, 0x3E, 0xBF, 0x3E, 0x04, 0xB7, 0x1E, 0x80, 0xAF, 0x1E, 0x05, 0xAF, 0x1D, 0x80, 0xAF, 0x3D, 0x06, 0xAF, 0x1D, 0x01, 0xB7, 0x1E, 0x81, 0xB7, 0x3E, 0xAF, 0x1E, 0x03, 0xB7, 0x3E, 0x8B, 0xBF, 0x3E, 0xBF, + 0x3F, 0xCF, 0x3F, 0xD6, 0xFF, 0xD6, 0x1E, 0xB4, 0x58, 0x79, 0xF0, 0x89, 0xB0, 0x91, 0xD1, 0x99, 0xB1, 0xA1, 0xB1, 0xA1, 0xB2, 0x01, 0xA9, 0x92, 0x03, 0xB1, 0x92, 0x81, 0xB9, 0x92, 0xB1, 0xB2, 0x01, 0xB1, 0x92, 0x03, 0xB1, 0xB2, 0x01, 0xA9, 0xB2, 0x89, 0xA1, 0xB1, 0xA1, 0xD1, 0x99, 0xD1, 0x91, 0xF1, 0x81, 0xB0, 0x9B, 0x14, 0xDD, 0x9C, 0xE6, 0xBF, 0xD6, 0xFF, 0xCE, 0xFE, 0x01, 0xC7, 0x1E, 0x03, 0xBF, 0x1E, 0x87, 0xC7, 0x1E, 0xCE, 0xFF, 0xD6, 0x3E, 0x82, 0xF3, 0x89, 0xF1, 0x99, 0xD2, 0xA9, 0xD3, 0xB1, 0xF3, 0x01, 0xB9, 0xF3, 0x04, 0xC1, 0xD3, 0x01, 0xC1, 0xF4, 0x89, 0xB9, 0xF3, 0xB9, 0xD3, 0xB1, 0xD3, 0xA9, 0xB2, 0x91, 0xD1, 0xAC, 0x37, 0xE6, 0xFF, 0xCF, 0x1F, 0xC7, 0x3E, 0xBF, 0x1E, 0x02, 0xB7, 0x1E, 0x87, 0xBF, 0x1E, 0xC6, 0xFF, 0xCE, 0x9E, 0x6A, 0xD1, 0x69, 0xCF, 0x79, 0xAF, 0x81, 0xB0, 0x81, 0x90, 0x01, 0x89, 0xB0, 0x01, 0x91, 0xB0, 0x02, 0x99, 0xB0, 0x03, 0x91, 0xB0, 0x86, 0x91, 0xD0, 0x8A, 0x10, 0x7A, 0x30, 0xA4, 0xB8, 0xCE, 0xFF, 0xBF, 0x1E, 0xB7, 0x1E, 0x03, 0xAF, 0x1E, 0x01, 0xAF, 0x1D, 0x82, 0xAF, 0x1E, 0xAF, 0x1D, 0xB7, 0x3D, 0x04, 0xB7, 0x3E, 0x88, 0xBF, 0x3E, 0xC7, 0x3E, 0xCF, 0x3F, 0xD7, 0x1F, 0xD6, 0x3E, 0xB4, 0x58, 0x82, 0x10, 0x81, 0xB0, 0x89, 0xB0, 0x01, 0x99, 0xB1, 0x82, 0xA1, 0x91, 0xA9, 0x92, 0xB1, 0x92, 0x01, 0xB1, 0x72, 0x06, 0xB9, 0x72, 0x01, 0xB1, 0x92, 0x82, 0xB1, 0xB2, 0xB1, 0x92, 0xB1, 0xB2, 0x01, 0xA9, 0xB2, 0x85, 0xA9, 0xB1, 0xA1, 0xB1, 0x99, 0x90, 0x99, 0xF1, 0xEC, 0xDB, 0xFD, 0xFF, 0x01, + 0xFE, 0x1F, 0x82, 0xEC, 0x9A, 0xC3, 0x15, 0xC2, 0xF4, 0x01, 0xCA, 0xD5, 0x07, 0xD2, 0xD5, 0x01, 0xDA, 0xD5, 0x08, 0xDA, 0xB5, 0x03, 0xDA, 0xD5, 0x01, 0xD2, 0xD6, 0x91, 0xD2, 0xF7, 0xD3, 0x18, 0xC3, 0x1A, 0xB3, 0x3C, 0x30, 0x95, 0x31, 0x18, 0x31, 0x39, 0x31, 0x5A, 0x29, 0x5A, 0x31, 0x3A, 0x39, 0x39, 0x48, 0xF6, 0xAA, 0x9B, 0xBA, 0x58, 0xB9, 0xF6, 0xC1, 0xF6, 0xC1, 0xF5, 0xC9, 0xF5, 0x01, 0xC1, 0xD5, 0x9D, 0xC1, 0xF5, 0xB9, 0xF5, 0xA1, 0xD5, 0x8A, 0x15, 0x7A, 0xF8, 0x74, 0x3C, 0x5C, 0xDE, 0x45, 0x1F, 0x2D, 0x1F, 0x1C, 0xFE, 0x0C, 0xFD, 0x04, 0xFD, 0x05, 0x1C, 0x05, 0x5B, 0x0E, 0xBC, 0x0F, 0x3B, 0x0F, 0x9B, 0x0F, 0xBB, 0x0F, 0xDB, 0x07, 0xBB, 0x0F, 0x9B, 0x17, 0x7C, 0x1F, 0x7D, 0x37, 0x3D, 0x5E, 0xDE, 0x65, 0x3A, 0x62, 0x93, 0x8A, 0x33, 0xAA, 0x14, 0xB1, 0xD4, 0x02, 0xB9, 0xB4, 0x90, 0xB9, 0x93, 0xC1, 0xD4, 0xB1, 0x73, 0xB9, 0x93, 0xB9, 0xB4, 0xB9, 0x93, 0xB1, 0x93, 0xB9, 0xD4, 0xB1, 0xD3, 0xA9, 0xB3, 0x99, 0x72, 0xAA, 0x55, 0xAA, 0xF8, 0x92, 0xB7, 0x51, 0x31, 0x41, 0x31, 0x39, 0x31, 0x02, 0x31, 0x51, 0x80, 0x31, 0x50, 0x01, 0x29, 0x30, 0x01, 0x29, 0x50, 0x06, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x08, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x29, 0x30, 0x04, 0x29, 0x0F, + 0x02, 0x29, 0x10, 0x02, 0x21, 0x10, 0x01, 0x21, 0x31, 0x91, 0x19, 0x32, 0x11, 0x53, 0x19, 0xB6, 0x19, 0xF7, 0x11, 0xF8, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xD7, 0x09, 0x97, 0x09, 0x96, 0x11, 0x96, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x74, 0x19, 0x53, 0x19, 0x32, 0x03, 0x19, 0x31, 0x83, 0x19, 0x32, 0x11, 0x33, 0x09, 0x33, 0x19, 0x95, 0x01, 0x19, 0xF7, 0x83, 0x19, 0xD6, 0x09, 0x33, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x30, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8B, 0x29, 0x30, 0x21, 0x30, 0x21, 0x31, 0x19, 0x52, 0x19, 0x53, 0x11, 0x74, 0x19, 0xF7, 0x22, 0x18, 0x11, 0x76, 0x11, 0x55, 0x11, 0x34, 0x11, 0x33, 0x01, 0x19, 0x52, 0x01, 0x11, 0x31, 0x85, 0x11, 0x52, 0x11, 0x74, 0x19, 0xF6, 0x19, 0xD6, 0x11, 0x95, 0x09, 0x75, 0x01, 0x09, 0x55, 0x01, 0x09, 0x34, 0x87, 0x01, 0x13, 0x01, 0x34, 0x01, 0x55, 0x09, 0x96, 0x11, 0xD7, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x53, 0x02, 0x19, 0x32, 0x8C, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x95, 0x11, 0xD7, 0x11, 0xD8, 0x19, 0xF8, 0x11, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x84, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x29, + 0x30, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x21, 0x11, 0x19, 0x11, 0x01, 0x19, 0x32, 0x81, 0x19, 0x11, 0x11, 0x11, 0x02, 0x19, 0x12, 0x80, 0x19, 0x32, 0x02, 0x19, 0x12, 0x01, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x32, 0x03, 0x19, 0x11, 0x80, 0x10, 0xF1, 0x05, 0x19, 0x11, 0x80, 0x11, 0x11, 0x02, 0x19, 0x11, 0x03, 0x11, 0x11, 0x01, 0x19, 0x11, 0x81, 0x10, 0xF1, 0x19, 0x11, 0x01, 0x11, 0x11, 0x81, 0x19, 0x11, 0x10, 0xF1, 0x01, 0x11, 0x11, 0x02, 0x19, 0x11, 0x80, 0x10, 0xF1, 0x01, 0x11, 0x11, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, + 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x09, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x85, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x08, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x08, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, + 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x0E, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x30, 0x90, 0x29, 0x2F, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0xAD, 0x49, 0x2F, 0xBB, 0xD8, 0xBB, 0x56, 0xB2, 0xF4, 0xAA, 0xD4, 0x9A, 0xD3, 0xAC, 0x16, 0xDF, 0x1F, 0xC7, 0x3F, 0xBF, 0x3E, 0xBF, 0x1E, 0xB6, 0xFD, 0xAE, 0xFD, 0x02, 0xAF, 0x1D, 0x8E, 0xAE, 0xFD, 0xAF, 0x1D, 0xAF, 0x1E, 0xB7, 0x3E, 0xBF, 0x5F, 0xCF, 0x3F, 0xAC, 0xF9, 0x79, 0xF0, 0x99, 0xD2, 0xA1, 0xD2, 0xA9, 0xF3, 0xB2, 0x13, 0xBA, 0x14, 0xB9, 0xF3, 0xB9, 0xD3, 0x01, 0xC1, 0xD3, 0x01, 0xC1, 0xF3, 0x02, 0xC1, 0xD3, 0x87, 0xB9, 0xD3, 0xB9, 0xB2, 0xB1, 0xD2, 0x9A, 0x31, 0xDD, 0x7C, 0xDE, 0xDF, 0xC7, 0x1F, 0xBF, 0x1E, 0x02, 0xB7, 0x1E, 0x08, 0xAF, 0x1E, 0x80, 0xAF, 0x3E, 0x01, 0xB7, 0x5E, 0x88, 0xBF, 0x5F, 0xD7, 0x3F, 0xCD, 0x7C, 0x8A, 0x52, 0x99, 0xF2, 0xA9, 0xD2, 0xB1, 0xD3, 0xB9, 0xD3, 0xC1, 0xF3, 0x09, 0xC1, 0xD3, 0x88, 0xC1, 0xB3, 0xB9, 0xB3, 0xB1, 0xD2, 0xA1, 0xF1, 0xBC, 0x18, 0xE6, 0xFF, 0xC7, 0x1F, 0xBF, 0x1E, 0xB7, 0x1E, 0x02, 0xAF, 0x1E, 0x82, 0xAF, 0x1D, 0xAE, 0xFD, 0xAF, 0x1D, 0x03, 0xAF, 0x1E, 0x01, 0xB7, 0x1E, 0x86, 0xB7, 0x3E, 0xBF, 0x3E, 0xBF, 0x1E, 0xD6, 0xFF, 0xCD, 0x5C, 0x92, 0x52, 0xA1, 0xF2, 0x01, 0xB1, 0xD3, 0x01, 0xB9, 0xD3, 0x01, 0xC1, 0xF3, 0x05, 0xC1, 0xD3, 0x88, 0xC1, 0xB3, 0xB9, 0xB3, 0xB9, 0xD3, 0xA9, 0xB2, 0x89, 0xF0, 0xDE, 0x7E, 0xCE, 0xFE, 0xBE, 0xFE, 0xBF, 0x1E, 0x02, 0xB7, 0x1E, 0x81, 0xB6, 0xFE, 0xB7, 0x1E, 0x01, 0xBF, 0x1E, 0x8B, + 0xC7, 0x1F, 0xCF, 0x1F, 0xE6, 0xFF, 0xB4, 0xB9, 0x82, 0x71, 0x89, 0xF1, 0x99, 0xB1, 0xA1, 0xB1, 0xA9, 0xB2, 0xB1, 0xB2, 0xB1, 0x92, 0xB9, 0xB2, 0x02, 0xB9, 0x92, 0x81, 0xB9, 0xB3, 0xB9, 0x93, 0x05, 0xC1, 0x93, 0x81, 0xC1, 0xB3, 0xC1, 0x93, 0x01, 0xB9, 0x93, 0x01, 0xB9, 0x92, 0x80, 0xB1, 0x92, 0x01, 0xB1, 0xB2, 0x88, 0xA9, 0xB2, 0xA1, 0xD1, 0x99, 0xF1, 0x92, 0x51, 0xA3, 0x95, 0xDE, 0x5E, 0xE7, 0x1F, 0xCE, 0xFF, 0xC7, 0x1F, 0x01, 0xBF, 0x1E, 0x03, 0xB7, 0x1E, 0x81, 0xAF, 0x1D, 0xAE, 0xFD, 0x0C, 0xAF, 0x1D, 0x80, 0xB7, 0x1E, 0x01, 0xAF, 0x1E, 0x02, 0xB7, 0x3E, 0x88, 0xBF, 0x3E, 0xC7, 0x1F, 0xCE, 0xFF, 0xE6, 0xFF, 0xB4, 0xF9, 0x8A, 0xD3, 0x89, 0xD0, 0x99, 0xD1, 0xA1, 0xB1, 0x01, 0xA9, 0xB2, 0x01, 0xB1, 0xB2, 0x04, 0xB9, 0xB3, 0x01, 0xC1, 0xB3, 0x05, 0xB9, 0xB3, 0x81, 0xB9, 0xB2, 0xB9, 0xB3, 0x01, 0xB1, 0x92, 0x01, 0xB1, 0xB2, 0x01, 0xA9, 0xB2, 0x86, 0x99, 0xD1, 0x8A, 0x11, 0x9B, 0x34, 0xE6, 0x5E, 0xDE, 0xDF, 0xD6, 0xDE, 0xCE, 0xFE, 0x04, 0xC7, 0x1E, 0x86, 0xCE, 0xFF, 0xD6, 0x5E, 0x82, 0xF3, 0x89, 0xF1, 0x99, 0xD2, 0xA9, 0xD3, 0xB1, 0xF3, 0x01, 0xB9, 0xF3, 0x82, 0xC1, 0xF3, 0xC1, 0xD3, 0xC1, 0xF4, 0x02, 0xC1, 0xD3, 0x80, 0xC1, 0xF4, 0x01, 0xB9, 0xD3, 0x86, 0xB1, 0xD3, 0xA9, 0xB2, 0x91, 0xD1, 0xB4, 0x37, 0xDE, 0xDF, 0xCF, 0x1F, 0xBF, 0x1E, 0x03, 0xB7, 0x1E, 0x84, 0xBF, 0x1E, 0xC6, 0xFF, 0xD6, 0x9F, 0x7B, 0x12, 0x79, 0xD0, 0x01, 0x91, 0xB1, 0x80, 0x99, 0x91, 0x03, 0xA1, 0xB1, 0x03, 0xA9, 0xB1, 0x88, 0xA1, 0x91, 0xA9, 0xB1, + 0xA1, 0x91, 0xA1, 0xB1, 0x99, 0xD1, 0x82, 0x10, 0xA4, 0x98, 0xCE, 0xFF, 0xBE, 0xFE, 0x01, 0xB7, 0x1E, 0x80, 0xAF, 0x1E, 0x05, 0xAF, 0x1D, 0x8D, 0xB7, 0x3E, 0xB7, 0x3D, 0xB7, 0x3E, 0xB7, 0x3D, 0xB7, 0x3E, 0xBF, 0x3E, 0xC7, 0x3F, 0xCF, 0x1F, 0xE6, 0xFF, 0xB4, 0xD9, 0x8A, 0xD3, 0x89, 0xF1, 0x99, 0xB1, 0xA1, 0xB2, 0x01, 0xA9, 0xB2, 0x01, 0xB1, 0xB2, 0x80, 0xB9, 0x92, 0x02, 0xB9, 0x93, 0x08, 0xC1, 0x93, 0x80, 0xC1, 0x92, 0x05, 0xB9, 0x92, 0x89, 0xB1, 0x92, 0xA9, 0xB2, 0xA1, 0xD1, 0xAA, 0x73, 0xFD, 0x5E, 0xFD, 0xFF, 0xFD, 0xBF, 0xFD, 0x1C, 0xBA, 0xD4, 0xC2, 0xD4, 0x02, 0xCA, 0xD5, 0x02, 0xD2, 0xD5, 0x01, 0xD2, 0xB4, 0x01, 0xD2, 0xB5, 0x03, 0xDA, 0xB5, 0x02, 0xDA, 0xB4, 0x06, 0xDA, 0xB5, 0x91, 0xD2, 0xB6, 0xD2, 0xD6, 0xD2, 0xD7, 0xCA, 0xF8, 0xC3, 0x1A, 0xAB, 0x3C, 0x30, 0x95, 0x29, 0x19, 0x29, 0x3A, 0x29, 0x5A, 0x29, 0x7B, 0x29, 0x5A, 0x31, 0x5A, 0x41, 0x18, 0x79, 0x98, 0xAA, 0x59, 0xBA, 0x17, 0xB9, 0xF6, 0x01, 0xC1, 0xF5, 0x80, 0xC9, 0xF5, 0x01, 0xC1, 0xF5, 0x89, 0xB9, 0xF5, 0xA1, 0xB4, 0x89, 0xF5, 0x7A, 0xD8, 0x74, 0x1C, 0x5C, 0xFF, 0x45, 0x3F, 0x2D, 0x1F, 0x1D, 0x1E, 0x0D, 0x1E, 0x01, 0x05, 0x1D, 0x91, 0x05, 0x7B, 0x0E, 0x9C, 0x0F, 0x5C, 0x0F, 0x7B, 0x0F, 0xBB, 0x07, 0xBB, 0x0F, 0xDB, 0x0F, 0x9B, 0x17, 0x9C, 0x1F, 0x7C, 0x37, 0x3D, 0x5E, 0xFE, 0x65, 0x1A, 0x62, 0x93, 0x8A, 0x33, 0xA1, 0xF3, 0xB1, 0xD4, 0xB1, 0xB3, 0x01, 0xB9, 0xB4, 0x83, 0xC1, 0xD4, 0xB9, 0xD4, 0xB1, 0x73, 0xB9, 0x93, 0x01, 0xB1, 0x93, 0x80, 0xB1, 0xB3, + 0x01, 0xB1, 0xD4, 0x87, 0xAA, 0x15, 0x99, 0xB3, 0x89, 0xB3, 0x8A, 0x35, 0x82, 0x76, 0x51, 0x72, 0x41, 0x31, 0x39, 0x31, 0x01, 0x31, 0x51, 0x02, 0x31, 0x50, 0x01, 0x29, 0x50, 0x04, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x0D, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x10, 0x83, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x31, 0x87, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x19, 0xF8, 0x11, 0xF8, 0x09, 0xB7, 0x11, 0xB7, 0x09, 0x97, 0x02, 0x09, 0x76, 0x87, 0x09, 0x96, 0x11, 0xD7, 0x19, 0xD7, 0x11, 0xB6, 0x19, 0x95, 0x19, 0x73, 0x19, 0x53, 0x19, 0x32, 0x02, 0x19, 0x31, 0x89, 0x19, 0x32, 0x11, 0x33, 0x09, 0x33, 0x19, 0x95, 0x22, 0x17, 0x19, 0xF7, 0x19, 0xB6, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x0E, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0xA1, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x18, 0x11, 0x76, 0x11, 0x75, 0x11, 0x34, 0x11, 0x33, 0x19, 0x53, 0x19, 0x52, 0x11, 0x31, 0x11, 0x32, 0x11, 0x52, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0x96, 0x11, 0x75, 0x09, 0x55, 0x09, 0x34, 0x09, 0x33, 0x09, 0x13, 0x09, 0x33, 0x01, 0x34, 0x09, + 0x55, 0x09, 0x96, 0x11, 0xD7, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x74, 0x19, 0x53, 0x01, 0x19, 0x32, 0x8B, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x75, 0x11, 0xD7, 0x11, 0xF8, 0x19, 0xD8, 0x11, 0x95, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x02, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x04, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x11, 0x02, 0x19, 0x32, 0x04, 0x11, 0x13, 0x81, 0x11, 0x33, 0x11, 0x13, 0x05, 0x11, 0x33, 0x05, 0x11, 0x12, 0x80, 0x08, 0xF2, 0x01, 0x11, 0x12, 0x80, 0x09, 0x12, 0x02, 0x11, 0x12, 0x02, 0x09, 0x12, 0x80, 0x11, 0x12, 0x01, 0x09, 0x12, 0x01, 0x11, 0x12, 0x01, 0x11, 0x13, 0x82, 0x09, 0x12, 0x11, 0x12, 0x11, 0x33, 0x01, 0x11, 0x12, 0x85, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x01, 0x11, 0x33, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x8A, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x29, + 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x08, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x03, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x19, 0x30, 0x19, 0x10, 0x02, 0x19, 0x30, 0x03, 0x21, 0x30, 0x85, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x04, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, + 0x30, 0x89, 0x29, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x21, 0x31, 0x85, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x31, 0x04, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x0E, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x8F, 0x29, 0x0F, 0x28, 0xEF, 0x28, 0x8D, 0x51, 0x2F, 0xBB, 0xB8, 0xBB, 0x56, 0xB2, 0xF4, 0xAA, 0xD4, 0x9A, 0xD3, 0xAB, 0xF6, 0xDF, 0x1F, 0xC7, 0x3F, 0xBF, 0x3E, 0xB7, 0x1E, 0xB6, 0xFD, 0xAE, 0xFD, 0x02, 0xAF, 0x1D, 0x01, 0xAE, 0xFD, 0x8B, 0xAF, 0x1E, 0xB7, 0x3E, 0xBF, 0x5F, 0xCF, 0x1F, 0xA4, 0x97, 0x79, 0xF0, 0x99, 0xD2, 0xA1, 0xD2, 0xB1, 0xF3, 0xB2, 0x13, 0xB9, 0xF3, 0xB9, 0xD3, 0x02, 0xC1, 0xD3, 0x01, 0xC1, 0xF3, 0x02, 0xC1, 0xD3, 0x88, 0xB9, 0xD3, 0xB9, 0xB2, 0xA9, 0xF2, 0xA2, 0x93, 0xDD, 0x9C, 0xD6, 0xDF, 0xC6, 0xFE, 0xB6, 0xDD, 0xB6, 0xFE, 0x01, 0xB7, 0x1E, 0x80, 0xAE, 0xFE, 0x01, 0xAE, 0xFD, + 0x80, 0xAF, 0x1D, 0x03, 0xAF, 0x1E, 0x80, 0xAE, 0xFD, 0x01, 0xAF, 0x1D, 0x89, 0xB7, 0x3E, 0xBF, 0x5E, 0xCF, 0x3F, 0xD6, 0x5E, 0x92, 0xF3, 0x91, 0xF2, 0xA9, 0xD2, 0xB1, 0xD3, 0xB9, 0xF3, 0xB9, 0xD3, 0x04, 0xC1, 0xD3, 0x81, 0xC9, 0xD3, 0xC9, 0xF3, 0x03, 0xC1, 0xD3, 0x87, 0xB9, 0xD3, 0xB1, 0xF2, 0x9A, 0x12, 0xDD, 0x3C, 0xD6, 0xDF, 0xC7, 0x1F, 0xB6, 0xFE, 0xB7, 0x1E, 0x02, 0xAF, 0x1E, 0x81, 0xAE, 0xFE, 0xAF, 0x1E, 0x01, 0xAE, 0xFD, 0x81, 0xAE, 0xFE, 0xAE, 0xFD, 0x03, 0xAF, 0x1E, 0x88, 0xB7, 0x3E, 0xBF, 0x1E, 0xCF, 0x1F, 0xDE, 0x3E, 0x92, 0xD3, 0x99, 0xF2, 0xA9, 0xD3, 0xB1, 0xD3, 0xB9, 0xD3, 0x01, 0xB9, 0xF3, 0x01, 0xC1, 0xF3, 0x05, 0xC1, 0xD3, 0x87, 0xB9, 0xB3, 0xB9, 0xD3, 0xA9, 0xB2, 0x91, 0xD0, 0xCD, 0xBC, 0xCE, 0xDE, 0xBE, 0xFE, 0xBF, 0x1E, 0x01, 0xB6, 0xFE, 0x02, 0xB7, 0x1E, 0x88, 0xBE, 0xFE, 0xC6, 0xFF, 0xD6, 0xDF, 0xD5, 0xFD, 0x93, 0x33, 0x81, 0xD0, 0x99, 0xD1, 0xA1, 0xB2, 0xA9, 0xB2, 0x01, 0xB1, 0xB2, 0x80, 0xB9, 0xB2, 0x02, 0xB9, 0xB3, 0x05, 0xC1, 0xB3, 0x01, 0xC1, 0x93, 0x81, 0xC1, 0xB3, 0xC1, 0x93, 0x03, 0xC1, 0xB3, 0x01, 0xC1, 0x93, 0x02, 0xB9, 0xB3, 0x8A, 0xB9, 0xB2, 0xB1, 0xB2, 0xA9, 0xD2, 0xA1, 0xF2, 0x9A, 0x11, 0x89, 0xF0, 0xC4, 0x99, 0xDE, 0x5E, 0xD6, 0xFF, 0xC6, 0xFF, 0xBF, 0x1E, 0x01, 0xB7, 0x1E, 0x81, 0xB6, 0xFD, 0xB7, 0x1E, 0x01, 0xAE, 0xFD, 0x01, 0xAF, 0x1D, 0x80, 0xAE, 0xFD, 0x01, 0xAF, 0x1D, 0x01, 0xA6, 0xFD, 0x03, 0xAF, 0x1D, 0x01, 0xAF, 0x3E, 0x02, 0xAF, 0x1E, 0x01, 0xB7, 0x3E, 0x8B, 0xBF, 0x3E, + 0xC7, 0x1F, 0xD6, 0xDF, 0xD6, 0x1E, 0xA3, 0xB5, 0x81, 0xF0, 0x91, 0xD1, 0x99, 0xB1, 0xA9, 0xB2, 0xB1, 0xD3, 0xB1, 0xB2, 0xB1, 0xB3, 0x02, 0xB9, 0xB3, 0x02, 0xC1, 0xB3, 0x01, 0xC1, 0xD3, 0x01, 0xC1, 0xB3, 0x80, 0xC1, 0xD3, 0x03, 0xC1, 0xB3, 0x80, 0xC1, 0xD3, 0x03, 0xB9, 0xB3, 0x01, 0xB9, 0x92, 0x88, 0xB1, 0x92, 0xA9, 0xB2, 0xA1, 0xD2, 0x99, 0xF1, 0x8A, 0x10, 0xCC, 0xFA, 0xE6, 0x9F, 0xD6, 0xDF, 0xCE, 0xFE, 0x03, 0xC6, 0xFE, 0x87, 0xCE, 0xDF, 0xD6, 0x3E, 0x8A, 0xF3, 0x89, 0xF1, 0x99, 0xD2, 0xA9, 0xD2, 0xB1, 0xF3, 0xB9, 0xF3, 0x01, 0xC1, 0xF3, 0x03, 0xC1, 0xD3, 0x89, 0xC1, 0xD4, 0xC1, 0xF4, 0xC1, 0xD3, 0xB9, 0xF3, 0xB1, 0xD3, 0xA9, 0xB1, 0x91, 0xD0, 0xAC, 0x17, 0xDE, 0xDF, 0xCE, 0xFF, 0x01, 0xBF, 0x1E, 0x01, 0xB6, 0xFE, 0x86, 0xB7, 0x1E, 0xBF, 0x1E, 0xC6, 0xFF, 0xD6, 0x9F, 0x83, 0x33, 0x81, 0xF1, 0x91, 0xD1, 0x01, 0xA1, 0xD2, 0x01, 0xA9, 0xD2, 0x81, 0xA9, 0xB2, 0xA9, 0xD2, 0x03, 0xB1, 0xD2, 0x01, 0xB1, 0xB2, 0x01, 0xA9, 0xB2, 0x86, 0xA1, 0xD1, 0x8A, 0x11, 0xA4, 0x77, 0xCE, 0xDF, 0xBE, 0xFE, 0xB7, 0x1E, 0xAF, 0x1E, 0x07, 0xAF, 0x1D, 0x8E, 0xB7, 0x3E, 0xB7, 0x3D, 0xB7, 0x3E, 0xBF, 0x5F, 0xC7, 0x3F, 0xD7, 0x1F, 0xD6, 0x3E, 0xA3, 0x95, 0x8A, 0x11, 0x91, 0xD1, 0x99, 0xB1, 0xA1, 0xB2, 0xA9, 0xD3, 0xB1, 0xD3, 0xB1, 0xB3, 0x02, 0xB9, 0xB3, 0x09, 0xC1, 0xB3, 0x01, 0xC1, 0x93, 0x80, 0xC1, 0xB3, 0x01, 0xC1, 0x93, 0x82, 0xC1, 0xB3, 0xC1, 0x93, 0xC1, 0x92, 0x01, 0xB9, 0x92, 0x8A, 0xB9, 0xB2, 0xB1, 0xB2, 0xB1, 0xD2, 0xA1, 0xB1, 0xE3, + 0xF9, 0xFD, 0x7E, 0xFD, 0x9E, 0xFD, 0x3D, 0xCB, 0x36, 0xC2, 0xD4, 0xCA, 0xD5, 0x01, 0xCA, 0xB5, 0x02, 0xD2, 0xB5, 0x01, 0xD2, 0xB4, 0x83, 0xD2, 0xB5, 0xD2, 0xB4, 0xDA, 0xB4, 0xDA, 0xB5, 0x04, 0xDA, 0x94, 0x80, 0xD2, 0x94, 0x01, 0xDA, 0x95, 0x02, 0xDA, 0xB5, 0x89, 0xD2, 0xB5, 0xD2, 0xB6, 0xD2, 0xD7, 0xCA, 0xF8, 0xC3, 0x1A, 0xB3, 0x3C, 0x30, 0xB5, 0x29, 0x19, 0x21, 0x3A, 0x21, 0x5B, 0x01, 0x29, 0x7B, 0x87, 0x29, 0x5A, 0x39, 0x39, 0x59, 0x16, 0x9A, 0x5A, 0xB2, 0x38, 0xB1, 0xD5, 0xB9, 0xF5, 0xC2, 0x16, 0x01, 0xC9, 0xF5, 0x9E, 0xC1, 0xD5, 0xB9, 0xD5, 0xA9, 0xB4, 0x91, 0xF5, 0x7A, 0x97, 0x73, 0xFC, 0x65, 0x1F, 0x45, 0x5F, 0x2D, 0x3F, 0x1D, 0x1E, 0x0D, 0x1E, 0x0D, 0x3D, 0x05, 0x3D, 0x05, 0x7B, 0x06, 0x5B, 0x0F, 0x3B, 0x0F, 0x7B, 0x0F, 0x9B, 0x0F, 0xBB, 0x07, 0xBB, 0x0F, 0x9B, 0x17, 0x7B, 0x27, 0x7C, 0x3F, 0x3D, 0x5E, 0xFE, 0x65, 0x3A, 0x62, 0xB3, 0x92, 0x53, 0xA1, 0xF3, 0xB1, 0xB3, 0xB1, 0x93, 0x01, 0xB9, 0xB3, 0x83, 0xB9, 0x93, 0xB1, 0xB3, 0xA1, 0x11, 0xC1, 0xF4, 0x01, 0xB9, 0xD4, 0x89, 0xB1, 0xB3, 0xB1, 0xD4, 0xB2, 0x35, 0x99, 0xD4, 0x50, 0x2D, 0x48, 0x2D, 0x38, 0x4E, 0x41, 0x10, 0x41, 0x31, 0x31, 0x10, 0x02, 0x31, 0x51, 0x80, 0x31, 0x50, 0x01, 0x29, 0x30, 0x01, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x12, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, + 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x89, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x53, 0x19, 0xB6, 0x19, 0xF7, 0x11, 0xB7, 0x09, 0x96, 0x01, 0x09, 0x76, 0x02, 0x09, 0x55, 0x86, 0x09, 0x76, 0x09, 0x96, 0x11, 0xD7, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x74, 0x21, 0x73, 0x01, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x8C, 0x11, 0x53, 0x11, 0x33, 0x11, 0x95, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x50, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x9C, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x19, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF8, 0x11, 0x96, 0x09, 0x55, 0x11, 0x54, 0x11, 0x33, 0x19, 0x53, 0x19, 0x52, 0x11, 0x31, 0x11, 0x32, 0x11, 0x52, 0x11, 0x74, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xB6, 0x11, 0x96, 0x09, 0x75, 0x09, 0x55, 0x09, 0x34, 0x01, 0x13, 0x09, 0x34, 0x09, 0x54, 0x09, 0x96, 0x01, 0x11, 0xD7, 0x85, 0x11, 0xD6, 0x11, 0x95, 0x11, 0x53, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x01, 0x19, 0x32, 0x88, 0x11, 0x33, 0x11, 0x95, 0x11, 0xD7, 0x11, 0xD8, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x53, 0x19, 0x52, 0x19, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x86, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, + 0x81, 0x29, 0x10, 0x21, 0x10, 0x04, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x8A, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x19, 0x32, 0x81, 0x19, 0x33, 0x11, 0x33, 0x01, 0x19, 0x75, 0x02, 0x11, 0x75, 0x01, 0x11, 0x96, 0x81, 0x11, 0x76, 0x11, 0x96, 0x03, 0x11, 0x95, 0x01, 0x09, 0x75, 0x0A, 0x11, 0x75, 0x83, 0x11, 0x96, 0x11, 0x75, 0x11, 0x96, 0x11, 0x75, 0x02, 0x11, 0x95, 0x80, 0x11, 0x75, 0x03, 0x11, 0x96, 0x01, 0x11, 0x95, 0x86, 0x11, 0x96, 0x11, 0xB6, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0xB6, 0x19, 0xB6, 0x19, 0xD6, 0x01, 0x19, 0xB6, 0x80, 0x11, 0xB6, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, + 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x03, 0x19, 0x31, 0x01, 0x21, 0x31, 0x05, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, + 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x05, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x0B, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x8F, 0x29, 0x0F, 0x28, 0xEF, 0x28, 0x8D, 0x49, 0x2F, 0xB3, 0x98, 0xB3, 0x35, 0xAA, 0xD4, 0xAA, 0xB3, 0x9A, 0xB3, 0xA3, 0xF6, 0xDF, 0x1F, 0xC7, 0x1E, 0xBF, 0x1E, 0xB7, 0x1E, 0xB6, 0xFD, 0xAE, 0xFD, 0x02, 0xAF, 0x1D, 0x01, 0xAE, 0xFD, 0x8B, 0xAF, 0x1D, 0xB7, 0x3E, 0xBF, 0x3F, 0xCF, 0x1F, 0x9C, 0x77, 0x81, 0xF0, 0x99, 0xD2, 0xA1, 0xF3, 0xB1, 0xF3, 0xBA, 0x13, 0xB9, 0xF3, 0xB9, 0xD3, 0x01, 0xC1, 0xD3, 0x80, 0xC1, 0xF3, 0x04, 0xC1, 0xD3, 0x88, 0xB9, 0xD3, 0xB9, 0xD2, 0xA9, 0xF2, 0xA2, 0xF4, 0xDD, 0xFE, 0xD6, 0xDF, 0xBE, 0xFE, 0xB6, 0xDD, 0xB6, 0xFD, 0x01, 0xAF, 0x1E, 0x08, 0xAE, 0xFD, 0x89, 0xAF, 0x1D, 0xAE, 0xFD, 0xAF, 0x1E, 0xB7, 0x3E, 0xC7, 0x3F, 0xD6, 0x9F, 0x8B, 0x13, 0x92, 0x12, 0xA9, 0xF2, 0xB1, 0xF3, 0x01, 0xB9, 0xD3, 0x03, 0xC1, 0xD3, 0x82, 0xC9, 0xD3, 0xC1, 0xD3, 0xC9, 0xD3, 0x03, 0xC1, 0xD3, 0x89, 0xB9, 0xD3, 0xA9, 0xF2, 0x9A, 0x72, 0xDD, 0xBD, 0xD6, 0xBF, 0xBE, 0xDE, 0xB6, 0xFE, 0xAE, 0xFE, 0xAF, 0x1E, 0xAE, 0xFE, 0x02, 0xAF, 0x1E, 0x02, 0xA6, 0xFD, 0x01, 0xAE, 0xFD, 0x89, 0xAF, 0x1E, 0xAE, 0xFD, 0xAF, 0x1E, 0xB7, 0x1E, 0xB7, 0x3E, 0xC7, 0x1F, 0xDE, 0x7F, 0x93, 0x13, 0x9A, 0x12, 0xA9, 0xD3, 0x01, 0xB1, 0xD3, 0x81, 0xB9, + 0xF3, 0xB9, 0xD3, 0x03, 0xC1, 0xF3, 0x03, 0xC1, 0xD3, 0x86, 0xB9, 0xD3, 0xB9, 0xF3, 0xA9, 0xB1, 0x91, 0xF1, 0xBD, 0x1A, 0xCE, 0xBE, 0xC6, 0xFE, 0x01, 0xBE, 0xFE, 0x80, 0xBF, 0x1E, 0x01, 0xB6, 0xFE, 0x87, 0xBE, 0xFE, 0xC6, 0xDE, 0xDE, 0xDF, 0xB4, 0xF9, 0x8A, 0x91, 0x89, 0xF0, 0x99, 0xD1, 0xA9, 0xB2, 0x01, 0xB1, 0xB2, 0x02, 0xB9, 0xB3, 0x81, 0xC1, 0xB3, 0xC1, 0xD3, 0x03, 0xC1, 0xB3, 0x80, 0xC9, 0xB3, 0x01, 0xC1, 0xB3, 0x07, 0xC9, 0xB3, 0x81, 0xC1, 0xB3, 0xC9, 0xB3, 0x03, 0xC1, 0xB3, 0x01, 0xB9, 0xB3, 0x88, 0xB1, 0xB2, 0xB1, 0xD2, 0xA9, 0xF2, 0x92, 0x11, 0x9B, 0x13, 0xDD, 0xFD, 0xDE, 0xFF, 0xC6, 0xFE, 0xBE, 0xFE, 0x01, 0xB7, 0x1E, 0x80, 0xB7, 0x1D, 0x02, 0xAE, 0xFD, 0x83, 0xAF, 0x1D, 0xAE, 0xFD, 0xA6, 0xFD, 0xAF, 0x1D, 0x01, 0xA6, 0xFD, 0x06, 0xAF, 0x1D, 0x01, 0xAF, 0x1E, 0x8A, 0xB7, 0x3E, 0xBF, 0x1E, 0xC7, 0x1F, 0xD6, 0xFF, 0xC5, 0x7B, 0x82, 0xB2, 0x89, 0xF0, 0x99, 0xD1, 0xA1, 0xD2, 0xA9, 0xD2, 0xB1, 0xB3, 0x02, 0xB9, 0xB3, 0x07, 0xC1, 0xD3, 0x01, 0xC9, 0xD3, 0x01, 0xC1, 0xD3, 0x80, 0xC9, 0xD3, 0x07, 0xC1, 0xB3, 0x80, 0xB9, 0xB3, 0x01, 0xB9, 0x92, 0x01, 0xB1, 0xB2, 0x86, 0xA1, 0xD2, 0x92, 0x11, 0xA3, 0x75, 0xEE, 0x9F, 0xDE, 0xBF, 0xCE, 0xDE, 0xCE, 0xFE, 0x01, 0xC6, 0xFE, 0x88, 0xCE, 0xDF, 0xD6, 0x1E, 0x8A, 0xF3, 0x89, 0xF1, 0x99, 0xD2, 0xA9, 0xD2, 0xB1, 0xF3, 0xB9, 0xF3, 0xC1, 0xF4, 0x01, 0xC1, 0xF3, 0x02, 0xC1, 0xD3, 0x82, 0xC1, 0xD4, 0xC1, 0xF4, 0xC1, 0xF3, 0x01, 0xB9, 0xF3, 0x91, 0xA9, 0xB1, 0x91, 0xD1, 0xAC, 0x17, + 0xE6, 0xDF, 0xCE, 0xFF, 0xBF, 0x1E, 0xB6, 0xFE, 0xB6, 0xFD, 0xB6, 0xFE, 0xB7, 0x1E, 0xBF, 0x1E, 0xC7, 0x1F, 0xD6, 0x9F, 0x8B, 0x33, 0x8A, 0x11, 0x99, 0xF2, 0xA1, 0xF2, 0xA9, 0xF3, 0x03, 0xB1, 0xF3, 0x84, 0xB1, 0xD3, 0xB9, 0xF3, 0xB9, 0xD3, 0xB9, 0xF3, 0xB9, 0xD3, 0x01, 0xB1, 0xD3, 0x87, 0xA9, 0xD2, 0xA1, 0xD2, 0x92, 0x31, 0xAC, 0x78, 0xCE, 0xDF, 0xBE, 0xFE, 0xB7, 0x1E, 0xAF, 0x1E, 0x02, 0xAF, 0x1D, 0x01, 0xAE, 0xFD, 0x03, 0xAF, 0x1D, 0x89, 0xB7, 0x3E, 0xBF, 0x3E, 0xC7, 0x1F, 0xD6, 0xFF, 0xCD, 0xDD, 0x8A, 0xF3, 0x89, 0xF1, 0x99, 0xD2, 0xA1, 0xD2, 0xA9, 0xD3, 0x01, 0xB1, 0xD3, 0x02, 0xB9, 0xD3, 0x80, 0xC1, 0xD3, 0x04, 0xC1, 0xB3, 0x0A, 0xC9, 0xB3, 0x02, 0xC1, 0xB3, 0x82, 0xC1, 0x92, 0xC1, 0x93, 0xC1, 0xB3, 0x01, 0xB9, 0xB2, 0x87, 0xB9, 0xD2, 0xA9, 0xB2, 0xC2, 0xD5, 0xFD, 0x5E, 0xFD, 0x7E, 0xFD, 0x3D, 0xCB, 0x76, 0xC2, 0xB4, 0x01, 0xCA, 0xB4, 0x82, 0xCA, 0xB5, 0xCA, 0xB4, 0xD2, 0xB5, 0x01, 0xD2, 0xB4, 0x03, 0xD2, 0x94, 0x02, 0xDA, 0x94, 0x83, 0xD2, 0x94, 0xDA, 0x94, 0xDA, 0x95, 0xDA, 0x94, 0x02, 0xDA, 0x95, 0x80, 0xD2, 0x95, 0x01, 0xD2, 0xB6, 0x90, 0xCA, 0xB7, 0xCA, 0xF8, 0xC3, 0x19, 0xAB, 0x3C, 0x30, 0xB5, 0x29, 0x39, 0x21, 0x5A, 0x21, 0x5B, 0x21, 0x7B, 0x29, 0x9C, 0x29, 0x7B, 0x31, 0x3A, 0x40, 0xF7, 0x8A, 0x3A, 0xAA, 0x59, 0xB9, 0xF6, 0xB1, 0xD5, 0x01, 0xC1, 0xD5, 0x9E, 0xC9, 0xF5, 0xC1, 0xF5, 0xB9, 0xD5, 0xA9, 0xB4, 0x91, 0xD4, 0x7A, 0x76, 0x6B, 0xBB, 0x65, 0x3F, 0x45, 0x7F, 0x2D, 0x3F, 0x1D, 0x3E, 0x15, 0x3E, 0x0D, + 0x3D, 0x05, 0x3D, 0x05, 0x7B, 0x06, 0x5B, 0x0F, 0x3B, 0x0F, 0x7B, 0x0F, 0x9B, 0x0F, 0xBB, 0x07, 0xBB, 0x0F, 0x9B, 0x17, 0x7C, 0x27, 0x7D, 0x3F, 0x3D, 0x66, 0xFE, 0x65, 0x19, 0x6A, 0xB3, 0x92, 0x33, 0xA1, 0xF3, 0xB1, 0xB3, 0x01, 0xB9, 0xB4, 0x84, 0xB9, 0xD4, 0xB9, 0xB3, 0xB1, 0xB3, 0xA1, 0x11, 0xB9, 0xD4, 0x02, 0xB1, 0xB3, 0x86, 0xB1, 0xD4, 0xB2, 0x56, 0x81, 0x92, 0x48, 0x6E, 0x48, 0xAF, 0x40, 0xF0, 0x41, 0x10, 0x01, 0x39, 0x51, 0x87, 0x31, 0x51, 0x31, 0x50, 0x29, 0x50, 0x31, 0x50, 0x29, 0x50, 0x31, 0x50, 0x29, 0x50, 0x31, 0x50, 0x07, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x0B, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x30, 0x88, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x88, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x19, 0xB5, 0x19, 0xF7, 0x11, 0xB7, 0x09, 0x76, 0x09, 0x56, 0x09, 0x35, 0x02, 0x09, 0x55, 0x88, 0x09, 0x75, 0x09, 0x95, 0x11, 0xD6, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x74, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x02, 0x19, 0x32, 0x8A, 0x11, 0x53, 0x11, 0x33, 0x19, 0xB6, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xB6, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x8D, 0x21, 0x2F, 0x21, 0x30, + 0x21, 0x31, 0x19, 0x31, 0x19, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x21, 0xF8, 0x19, 0xD7, 0x09, 0x55, 0x11, 0x54, 0x11, 0x33, 0x19, 0x53, 0x19, 0x52, 0x01, 0x11, 0x32, 0x82, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x82, 0x11, 0xB6, 0x11, 0x75, 0x09, 0x75, 0x02, 0x09, 0x54, 0x87, 0x09, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x19, 0x52, 0x02, 0x19, 0x31, 0x89, 0x19, 0x32, 0x11, 0x53, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xF8, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x06, 0x29, 0x10, 0x80, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x8F, 0x21, 0x30, 0x21, 0x51, 0x21, 0x31, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x19, 0x33, 0x19, 0x53, 0x19, 0x75, 0x21, 0xB6, 0x21, 0xD7, 0x21, 0xF8, 0x22, 0x19, 0x22, 0x18, 0x21, 0xF8, 0x22, 0x18, 0x01, 0x22, 0x39, 0x01, 0x22, 0x38, 0x84, 0x22, 0x59, 0x1A, 0x38, 0x22, 0x59, 0x22, 0x39, 0x1A, 0x19, 0x02, 0x22, 0x39, 0x80, 0x22, 0x19, 0x08, 0x22, 0x39, 0x80, 0x22, 0x59, 0x08, 0x22, 0x39, 0x80, 0x22, 0x38, 0x01, 0x22, + 0x39, 0x81, 0x1A, 0x18, 0x22, 0x39, 0x01, 0x1A, 0x18, 0x80, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x01, 0x19, 0xF8, 0x06, 0x21, 0x10, 0x85, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x04, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x82, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x02, 0x19, 0x52, 0x85, 0x11, 0x32, 0x19, 0x32, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x11, 0x31, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x0B, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x86, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x04, 0x29, + 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x84, 0x29, 0x30, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x02, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x10, 0x03, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x31, 0x08, 0x19, 0x31, 0x82, 0x21, 0x51, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x08, 0x29, 0x30, 0x08, 0x29, 0x2F, 0x8E, 0x21, 0x2F, 0x29, 0x0F, 0x28, 0xEF, 0x28, 0xAD, 0x51, 0x2F, 0xB3, 0x77, 0xB3, 0x15, 0xAA, 0xD4, 0xAA, 0xB4, 0x9A, 0xB3, 0xA3, 0xB5, 0xDF, 0x1F, 0xC6, 0xFE, 0xBE, 0xFE, 0xB7, 0x1E, 0x01, 0xAE, 0xDD, 0x80, 0xAE, 0xFD, 0x01, 0xAF, 0x1D, 0x01, 0xA6, 0xFD, 0x8F, 0xAF, 0x1D, 0xB7, 0x3E, 0xBF, 0x3F, 0xCF, 0x3F, 0x9C, 0x97, 0x82, 0x10, 0x99, 0xF2, 0xA1, 0xF2, 0xB1, 0xF3, 0xBA, 0x13, 0xB9, 0xF3, 0xB9, 0xD3, 0xC1, 0xD3, 0xC1, 0xF3, 0xC1, 0xD3, 0xC9, 0xF3, 0x04, 0xC1, 0xD3, 0x86, + 0xB9, 0xD2, 0xA9, 0xF2, 0xA2, 0xF4, 0xD5, 0x9C, 0xD6, 0xDF, 0xBE, 0xFE, 0xB6, 0xDD, 0x02, 0xAE, 0xFD, 0x80, 0xA6, 0xFD, 0x01, 0xA6, 0xDD, 0x01, 0xA6, 0xFD, 0x02, 0xAE, 0xFD, 0x80, 0xA6, 0xFD, 0x02, 0xAF, 0x1D, 0x88, 0xB7, 0x3E, 0xC7, 0x1F, 0xD6, 0x9F, 0x8B, 0x13, 0x8A, 0x11, 0xA1, 0xF2, 0xA9, 0xF3, 0xB9, 0xF3, 0xB9, 0xD3, 0x02, 0xC1, 0xD3, 0x04, 0xC9, 0xD3, 0x02, 0xC1, 0xD3, 0x88, 0xB9, 0xD2, 0xA9, 0xF2, 0x9A, 0xB3, 0xDD, 0xDD, 0xD6, 0xBF, 0xBE, 0xFE, 0xB6, 0xFE, 0xAF, 0x1E, 0xAE, 0xFD, 0x08, 0xA6, 0xFD, 0x80, 0xAE, 0xFD, 0x02, 0xAF, 0x1E, 0x87, 0xB7, 0x1E, 0xC7, 0x1F, 0xD6, 0x7E, 0x93, 0x34, 0x91, 0xF2, 0xA9, 0xD3, 0xB1, 0xD3, 0xB1, 0xF3, 0x01, 0xB9, 0xF3, 0x02, 0xC1, 0xF3, 0x04, 0xC1, 0xD3, 0x88, 0xB9, 0xD3, 0xB9, 0xF3, 0xA9, 0xB2, 0x91, 0xF1, 0xBC, 0xD9, 0xCE, 0x9E, 0xC6, 0xDE, 0xBE, 0xFE, 0xB6, 0xDE, 0x01, 0xBE, 0xFE, 0x87, 0xBE, 0xDE, 0xC6, 0xDE, 0xD6, 0x7E, 0xB4, 0x78, 0x82, 0x10, 0x91, 0xD1, 0xA1, 0xB1, 0xA9, 0xB2, 0x01, 0xB1, 0xD3, 0x02, 0xB9, 0xD3, 0x02, 0xC1, 0xD3, 0x04, 0xC9, 0xD3, 0x80, 0xC9, 0xB3, 0x02, 0xC9, 0xD3, 0x02, 0xC9, 0xD4, 0x05, 0xC9, 0xB3, 0x01, 0xC1, 0xB3, 0x80, 0xC1, 0xD3, 0x01, 0xC1, 0xB3, 0x8B, 0xB9, 0xB3, 0xB9, 0xD3, 0xB1, 0xB2, 0xA9, 0xF2, 0xA1, 0xF1, 0x8A, 0x31, 0xC4, 0xFA, 0xDE, 0x9F, 0xC6, 0xDE, 0xBE, 0xFE, 0xB7, 0x1E, 0xB6, 0xFD, 0x03, 0xAE, 0xFD, 0x05, 0xA6, 0xFD, 0x04, 0xAF, 0x1D, 0x81, 0xAE, 0xFD, 0xAF, 0x1D, 0x01, 0xB7, 0x3E, 0x8A, 0xBF, 0x1F, 0xD6, 0xDF, 0xBD, 0x3A, 0x71, 0xCF, + 0x89, 0xF1, 0x99, 0xD1, 0xA9, 0xD2, 0xB1, 0xD3, 0xB1, 0xB3, 0xB9, 0xD3, 0xB9, 0xB3, 0x01, 0xC1, 0xD3, 0x01, 0xC1, 0xD4, 0x01, 0xC9, 0xD3, 0x02, 0xC9, 0xD4, 0x05, 0xC9, 0xD3, 0x80, 0xC9, 0xD4, 0x03, 0xC9, 0xD3, 0x02, 0xC1, 0xD3, 0x02, 0xC1, 0xB3, 0x88, 0xB9, 0x93, 0xB9, 0xB2, 0xB1, 0xB2, 0xA9, 0xD2, 0x99, 0xF1, 0x8A, 0x51, 0xE5, 0xFE, 0xDE, 0x9F, 0xD6, 0xDE, 0x01, 0xCE, 0xDE, 0x87, 0xD6, 0xBF, 0xD6, 0x1E, 0x8A, 0xD3, 0x89, 0xF1, 0x99, 0xD1, 0xA9, 0xD2, 0xB1, 0xF3, 0xB9, 0xF3, 0x01, 0xC1, 0xF4, 0x04, 0xC1, 0xD3, 0x81, 0xC1, 0xF4, 0xC1, 0xF3, 0x01, 0xB9, 0xF3, 0x85, 0xA9, 0xB1, 0x99, 0xD1, 0xAC, 0x17, 0xDE, 0x9F, 0xC6, 0xBE, 0xBE, 0xFE, 0x02, 0xB6, 0xFD, 0x8B, 0xB6, 0xFE, 0xB7, 0x1E, 0xC6, 0xFF, 0xD6, 0x9F, 0x82, 0xF2, 0x8A, 0x11, 0xA2, 0x12, 0xA9, 0xF3, 0xAA, 0x13, 0xB1, 0xF3, 0xBA, 0x14, 0xBA, 0x13, 0x04, 0xB9, 0xF3, 0x01, 0xB9, 0xD3, 0x87, 0xB1, 0xB3, 0xB1, 0xD3, 0xA9, 0xD2, 0x92, 0x31, 0xAC, 0x57, 0xCE, 0xDF, 0xBE, 0xDE, 0xB7, 0x1E, 0x05, 0xAE, 0xFD, 0x02, 0xAF, 0x1D, 0x88, 0xAF, 0x1E, 0xB7, 0x3E, 0xC7, 0x1E, 0xD6, 0xDF, 0xCD, 0xDD, 0x7A, 0x31, 0x89, 0xD1, 0x99, 0xD2, 0xA9, 0xB2, 0x02, 0xB1, 0xD3, 0x81, 0xB9, 0xD3, 0xB9, 0xD4, 0x03, 0xC1, 0xD3, 0x80, 0xC9, 0xB3, 0x01, 0xC9, 0xD3, 0x04, 0xC9, 0xB3, 0x03, 0xC9, 0xD3, 0x02, 0xC9, 0xB3, 0x80, 0xC9, 0xD3, 0x01, 0xC9, 0xB3, 0x04, 0xC1, 0xB3, 0x84, 0xB9, 0xB3, 0xB9, 0xD3, 0xB1, 0xD2, 0xB2, 0x33, 0xFD, 0x3E, 0x01, 0xFD, 0x7E, 0x82, 0xD3, 0xB7, 0xBA, 0x94, 0xC2, 0xB4, 0x01, + 0xCA, 0x94, 0x81, 0xCA, 0xB4, 0xCA, 0x94, 0x06, 0xD2, 0x94, 0x80, 0xDA, 0x94, 0x04, 0xDA, 0x74, 0x98, 0xD2, 0x74, 0xDA, 0x95, 0xD2, 0x95, 0xD2, 0x75, 0xD2, 0x96, 0xD2, 0xB7, 0xCA, 0xD8, 0xC2, 0xF9, 0xB3, 0x5C, 0x30, 0xB5, 0x29, 0x39, 0x21, 0x5A, 0x19, 0x5B, 0x21, 0x7C, 0x21, 0x9C, 0x21, 0x7B, 0x29, 0x5A, 0x39, 0x19, 0x61, 0x37, 0xB2, 0x7A, 0xBA, 0x17, 0xB1, 0xB5, 0xB9, 0xD5, 0xC1, 0xB5, 0xC9, 0xF5, 0x01, 0xC1, 0xF5, 0xAC, 0xB1, 0xD4, 0x99, 0xF4, 0x7A, 0x36, 0x6B, 0x59, 0x65, 0x5F, 0x45, 0x9F, 0x2D, 0x7F, 0x1D, 0x5E, 0x15, 0x5E, 0x0D, 0x3D, 0x05, 0x5D, 0x05, 0x9C, 0x06, 0x5B, 0x0F, 0x1B, 0x0F, 0x5B, 0x0F, 0x9A, 0x07, 0xBB, 0x0F, 0xBB, 0x0F, 0x9B, 0x17, 0x5B, 0x27, 0x7D, 0x47, 0x3E, 0x66, 0xDE, 0x64, 0xD9, 0x6A, 0xB3, 0x92, 0x33, 0xA9, 0xF3, 0xB1, 0xD4, 0xB1, 0xB4, 0xB9, 0xB4, 0xB1, 0x93, 0xB9, 0xB4, 0xB1, 0xD4, 0xA1, 0x52, 0xB9, 0xF4, 0xB1, 0xD4, 0xB1, 0xB3, 0xB1, 0xD4, 0xA9, 0xD4, 0xAA, 0x55, 0x71, 0x51, 0x50, 0xCF, 0x49, 0x10, 0x41, 0x30, 0x41, 0x31, 0x01, 0x39, 0x51, 0x01, 0x31, 0x51, 0x84, 0x31, 0x71, 0x31, 0x50, 0x31, 0x51, 0x29, 0x50, 0x31, 0x50, 0x01, 0x31, 0x31, 0x01, 0x31, 0x30, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x07, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x83, + 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x53, 0x21, 0xF7, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0x96, 0x02, 0x09, 0x55, 0x80, 0x09, 0x34, 0x01, 0x09, 0x55, 0x84, 0x09, 0x95, 0x11, 0xD6, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x74, 0x01, 0x19, 0x32, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x82, 0x19, 0x32, 0x11, 0x53, 0x11, 0x33, 0x01, 0x21, 0xF7, 0x84, 0x22, 0x17, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x30, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0x94, 0x11, 0x96, 0x01, 0x19, 0xF7, 0x80, 0x11, 0x75, 0x01, 0x11, 0x54, 0x80, 0x11, 0x53, 0x02, 0x11, 0x32, 0x87, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x19, 0xF7, 0x1A, 0x17, 0x19, 0xF7, 0x11, 0xB6, 0x11, 0x96, 0x01, 0x09, 0x75, 0x88, 0x11, 0x96, 0x11, 0xD6, 0x19, 0xF7, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x52, 0x19, 0x52, 0x01, 0x19, 0x31, 0x8A, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x96, 0x11, 0xF7, 0x11, 0xF8, 0x11, 0xD7, 0x19, 0xB5, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x29, 0x10, 0x85, 0x29, 0x30, 0x29, 0x10, + 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x21, 0x51, 0x87, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0x74, 0x19, 0xB6, 0x21, 0xD6, 0x21, 0xF7, 0x19, 0xB7, 0x02, 0x21, 0xF8, 0x01, 0x22, 0x18, 0x01, 0x22, 0x38, 0x80, 0x22, 0x18, 0x02, 0x22, 0x38, 0x01, 0x22, 0x39, 0x80, 0x22, 0x38, 0x01, 0x1A, 0x18, 0x80, 0x1A, 0x19, 0x01, 0x1A, 0x18, 0x81, 0x22, 0x19, 0x22, 0x18, 0x03, 0x1A, 0x18, 0x07, 0x22, 0x18, 0x80, 0x19, 0xF8, 0x01, 0x22, 0x18, 0x81, 0x19, 0xF8, 0x19, 0xF7, 0x02, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x80, 0x19, 0xF8, 0x01, 0x1A, 0x18, 0x02, 0x19, 0xF8, 0x04, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x05, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x09, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x04, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x07, 0x21, + 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x09, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x50, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0x73, 0x01, 0x19, 0x74, 0x01, 0x19, 0x95, 0x02, 0x19, 0xB5, 0x84, 0x19, 0x74, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x09, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x03, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, + 0x21, 0x31, 0x04, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x19, 0x52, 0x02, 0x19, 0x32, 0x02, 0x19, 0x31, 0x80, 0x21, 0x31, 0x05, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x08, 0x29, 0x30, 0x09, 0x29, 0x2F, 0x8D, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0xAD, 0x51, 0x2F, 0xB3, 0x78, 0xB3, 0x15, 0xAA, 0xD4, 0xAA, 0xB4, 0x9A, 0x93, 0xA3, 0x95, 0xDE, 0xFF, 0xBE, 0xDE, 0xBE, 0xFE, 0xB6, 0xFD, 0x01, 0xAE, 0xDD, 0x01, 0xAF, 0x1D, 0x02, 0xA6, 0xFD, 0x8D, 0xAE, 0xFD, 0xB7, 0x3E, 0xBF, 0x3E, 0xCF, 0x1F, 0x94, 0x56, 0x82, 0x10, 0x99, 0xF2, 0xA1, 0xF2, 0xB2, 0x13, 0xBA, 0x13, 0xB9, 0xF3, 0xC1, 0xD3, 0xC1, 0xF3, 0xC9, 0xF4, 0x04, 0xC1, 0xD3, 0x89, 0xC1, 0xF3, 0xC1, 0xD3, 0xB9, 0xB2, 0xA9, 0xF2, 0x9A, 0xD3, 0xCD, 0x9C, 0xCE, 0xDF, 0xBE, 0xFE, 0xB6, 0xFE, 0xAE, 0xDD, 0x01, 0xAE, 0xFD, 0x80, 0xA6, 0xDD, 0x03, 0xA6, 0xFD, 0x82, 0xAE, 0xFD, 0xA6, 0xFD, 0xA6, 0xDD, 0x01, 0xA6, 0xFD, 0x8A, 0xAE, 0xFD, 0xAF, 0x1D, 0xB7, 0x3E, 0xBF, 0x1F, 0xD6, 0x9F, 0x83, 0x13, 0x8A, 0x31, 0xA1, 0xF2, 0xA9, 0xF3, 0xB9, 0xF3, 0xB9, 0xD3, 0x01, 0xC1, 0xD3, 0x05, 0xC9, 0xD3, 0x01, 0xC1, 0xD3, 0x88, 0xC1, 0xF3, 0xB9, 0xD2, 0xA9, 0xF2, 0xA2, 0xF4, 0xE6, 0x1E, 0xCE, 0xBF, 0xBE, 0xDE, 0xB6, 0xDE, 0xAE, 0xFE, 0x07, 0xA6, 0xFD, 0x01, 0xA6, 0xDD, 0x81, 0xA6, 0xFD, 0xAE, 0xFD, 0x01, 0xAF, 0x1D, 0x87, 0xB7, 0x1E, 0xC6, 0xFE, 0xD6, 0x7E, 0x93, 0x54, 0x92, 0x12, 0xA9, 0xD3, 0xA9, 0xF3, 0xB1, 0xF3, 0x01, 0xB9, 0xF3, 0x02, 0xC1, 0xF3, 0x80, 0xC1, 0xD3, 0x01, 0xC9, 0xF3, 0x01, 0xC1, 0xD3, 0x86, + 0xB9, 0xF3, 0xBA, 0x13, 0xB1, 0xD2, 0x99, 0xF1, 0xBC, 0xB9, 0xD6, 0x7E, 0xC6, 0xBE, 0x03, 0xBE, 0xDE, 0x87, 0xC6, 0xBE, 0xDE, 0x9F, 0x9B, 0xB5, 0x82, 0x11, 0x99, 0xD1, 0xA1, 0xD2, 0xA9, 0xD2, 0xB1, 0xD3, 0x01, 0xB9, 0xD3, 0x06, 0xC1, 0xD3, 0x07, 0xC9, 0xD3, 0x80, 0xC9, 0xB3, 0x04, 0xC9, 0xD3, 0x01, 0xC9, 0xB3, 0x02, 0xC9, 0xD3, 0x03, 0xC1, 0xD3, 0x80, 0xC1, 0xB3, 0x01, 0xB9, 0xB2, 0x86, 0xB1, 0xD2, 0xA1, 0xF2, 0x92, 0x51, 0xC5, 0x1A, 0xDE, 0xDF, 0xC6, 0xDE, 0xBE, 0xFE, 0x01, 0xB6, 0xFD, 0x02, 0xAE, 0xFD, 0x03, 0xA6, 0xFD, 0x80, 0xAE, 0xFD, 0x05, 0xA6, 0xFD, 0x01, 0xAF, 0x1E, 0x8B, 0xB7, 0x1E, 0xBF, 0x1F, 0xD6, 0xFF, 0xB4, 0xFA, 0x7A, 0x30, 0x91, 0xF1, 0x99, 0xB1, 0xA9, 0xD2, 0xB1, 0xD2, 0xB9, 0xD3, 0xB9, 0xF3, 0xB9, 0xD3, 0x02, 0xC1, 0xD3, 0x80, 0xC9, 0xD4, 0x0B, 0xC9, 0xD3, 0x80, 0xC9, 0xD4, 0x06, 0xC9, 0xD3, 0x01, 0xC1, 0xD3, 0x01, 0xC1, 0xB3, 0x91, 0xC1, 0x93, 0xB9, 0x93, 0xB9, 0xB2, 0xB1, 0xB2, 0xA1, 0xF2, 0x92, 0x72, 0xDD, 0xBD, 0xDE, 0x9F, 0xD6, 0xBE, 0xCE, 0xBE, 0xD6, 0x9F, 0xDD, 0xFE, 0x8A, 0xD3, 0x89, 0xF1, 0x99, 0xD2, 0xA9, 0xF2, 0xB1, 0xF3, 0xB9, 0xF3, 0x02, 0xC1, 0xF4, 0x80, 0xC9, 0xF3, 0x02, 0xC1, 0xD3, 0x81, 0xC1, 0xF4, 0xC1, 0xF3, 0x01, 0xB9, 0xF3, 0x85, 0xA9, 0xB1, 0x99, 0xD1, 0xAC, 0x17, 0xDE, 0x9F, 0xC6, 0xDE, 0xBE, 0xDE, 0x02, 0xB6, 0xDD, 0x87, 0xB6, 0xFD, 0xB6, 0xFE, 0xC6, 0xFE, 0xD6, 0x7E, 0x82, 0xF3, 0x92, 0x32, 0xA1, 0xF2, 0xAA, 0x13, 0x01, 0xB2, 0x13, 0x81, 0xBA, 0x13, 0xBA, 0x14, 0x02, 0xB9, + 0xF3, 0x82, 0xC1, 0xF3, 0xC1, 0xF4, 0xC1, 0xF3, 0x01, 0xB9, 0xD3, 0x86, 0xB1, 0xF3, 0xA9, 0xF2, 0x9A, 0x32, 0xAC, 0x78, 0xCE, 0xBF, 0xBE, 0xFE, 0xB6, 0xFE, 0x05, 0xAE, 0xFD, 0x01, 0xAF, 0x1D, 0x87, 0xAF, 0x3E, 0xB7, 0x3E, 0xBF, 0x1E, 0xCE, 0xFF, 0xBD, 0x5B, 0x82, 0x71, 0x89, 0xD1, 0xA1, 0xB2, 0x01, 0xA9, 0xB2, 0x81, 0xB1, 0xD3, 0xB9, 0xD3, 0x01, 0xB9, 0xD4, 0x01, 0xC1, 0xD4, 0x80, 0xC1, 0xD3, 0x08, 0xC9, 0xD3, 0x80, 0xC9, 0xB3, 0x05, 0xC9, 0xD3, 0x80, 0xC9, 0xB3, 0x06, 0xC9, 0xD3, 0x01, 0xC1, 0xB3, 0x84, 0xC1, 0xD3, 0xB9, 0xD3, 0xB1, 0xF2, 0xBA, 0x94, 0xFD, 0x3E, 0x01, 0xFD, 0x7E, 0x83, 0xDB, 0xD8, 0xBA, 0x93, 0xC2, 0x94, 0xCA, 0x94, 0x02, 0xCA, 0x74, 0x03, 0xD2, 0x74, 0x80, 0xD2, 0x94, 0x08, 0xD2, 0x74, 0x01, 0xD2, 0x75, 0x92, 0xD2, 0x96, 0xD2, 0xB7, 0xCA, 0xD8, 0xC2, 0xF9, 0xAB, 0x1C, 0x30, 0xB6, 0x29, 0x3A, 0x21, 0x5B, 0x19, 0x5B, 0x19, 0x7C, 0x21, 0x7C, 0x21, 0x9C, 0x29, 0x7B, 0x31, 0x3A, 0x40, 0xB6, 0xB2, 0xBB, 0xBA, 0x38, 0xB1, 0xB5, 0xB9, 0xD6, 0x02, 0xC1, 0xD5, 0x90, 0xC1, 0xF5, 0xB1, 0xD4, 0x99, 0xF4, 0x7A, 0x15, 0x62, 0xF8, 0x65, 0x3E, 0x45, 0x9F, 0x2D, 0x7F, 0x1D, 0x7E, 0x15, 0x5E, 0x0D, 0x5D, 0x05, 0x5D, 0x05, 0x9C, 0x06, 0x3B, 0x06, 0xFB, 0x0F, 0x5B, 0x0F, 0x9A, 0x01, 0x0F, 0xBB, 0x99, 0x0F, 0x9B, 0x17, 0x7B, 0x27, 0x5C, 0x3F, 0x1D, 0x66, 0xDE, 0x64, 0xB8, 0x6A, 0x92, 0x9A, 0x53, 0xA1, 0xF3, 0xB1, 0xD3, 0xB1, 0x93, 0xB1, 0xB4, 0xB9, 0xB4, 0xB9, 0xF4, 0xA9, 0x93, 0xA1, 0x52, 0xBA, 0x15, 0xB1, 0xD3, 0xB1, + 0xB4, 0xA9, 0xB3, 0xA9, 0xF4, 0xA2, 0x55, 0x58, 0xAF, 0x50, 0xF0, 0x49, 0x30, 0x41, 0x30, 0x01, 0x39, 0x51, 0x83, 0x39, 0x71, 0x31, 0x51, 0x31, 0x50, 0x31, 0x71, 0x01, 0x31, 0x51, 0x04, 0x29, 0x30, 0x80, 0x31, 0x30, 0x01, 0x29, 0x10, 0x04, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x87, 0x21, 0x10, 0x19, 0x31, 0x19, 0x11, 0x19, 0x53, 0x21, 0xD6, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0x96, 0x01, 0x09, 0x55, 0x8E, 0x09, 0x54, 0x09, 0x34, 0x09, 0x54, 0x09, 0x55, 0x09, 0x96, 0x11, 0xD6, 0x19, 0xF7, 0x19, 0xB5, 0x11, 0x73, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x52, 0x01, 0x11, 0x33, 0x86, 0x19, 0xD6, 0x22, 0x18, 0x22, 0x17, 0x19, 0xB5, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8C, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0x94, 0x11, 0x95, 0x19, 0xD7, 0x22, 0x18, 0x11, 0x96, 0x11, 0x55, 0x11, 0x34, 0x11, 0x33, 0x03, 0x11, 0x32, 0x85, 0x11, 0x74, 0x11, 0x94, 0x19, 0xB6, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x02, 0x11, 0xB6, 0x01, 0x11, 0xD6, + 0x01, 0x19, 0xF7, 0x83, 0x19, 0xD7, 0x19, 0xB5, 0x19, 0x73, 0x11, 0x32, 0x03, 0x19, 0x31, 0x87, 0x11, 0x32, 0x11, 0x33, 0x11, 0xB6, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x53, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x29, 0x51, 0x01, 0x21, 0x51, 0x84, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0x94, 0x19, 0xB6, 0x04, 0x21, 0xF7, 0x02, 0x21, 0xD7, 0x01, 0x19, 0xB6, 0x02, 0x19, 0x95, 0x04, 0x11, 0x95, 0x84, 0x19, 0xB6, 0x11, 0x95, 0x11, 0x96, 0x19, 0xB6, 0x11, 0x96, 0x04, 0x11, 0x95, 0x82, 0x19, 0x96, 0x11, 0x95, 0x19, 0x95, 0x04, 0x11, 0x95, 0x83, 0x19, 0x95, 0x11, 0x95, 0x19, 0x95, 0x11, 0x75, 0x03, 0x19, 0x95, 0x02, 0x11, 0x95, 0x82, 0x19, 0xB6, 0x11, 0x96, 0x11, 0x95, 0x02, 0x11, 0x96, 0x04, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x08, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, + 0x10, 0x08, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x29, 0x30, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x10, 0x1F, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x29, 0x30, 0x86, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x19, 0x95, 0x01, 0x19, 0xB6, 0x01, 0x19, 0xD7, 0x02, 0x19, 0xF7, 0x84, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x29, 0x30, 0x81, 0x21, + 0x2F, 0x21, 0x30, 0x01, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x30, 0x03, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x52, 0x01, 0x19, 0x32, 0x80, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x82, 0x19, 0x11, 0x21, 0x31, 0x19, 0x10, 0x04, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x08, 0x29, 0x30, 0x09, 0x29, 0x2F, 0x85, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0xAD, 0x51, 0x2F, 0xB3, 0x77, 0xB2, 0xF5, 0x01, 0xAA, 0xB4, 0x85, 0x9A, 0x93, 0x9B, 0x54, 0xDE, 0xFF, 0xC6, 0xDE, 0xB6, 0xDD, 0xB6, 0xFD, 0x01, 0xAE, 0xDD, 0x80, 0xAF, 0x1D, 0x01, 0xA6, 0xFD, 0x01, 0xA6, 0xDC, 0x89, 0xA6, 0xFD, 0xAF, 0x1E, 0xBF, 0x1E, 0xCF, 0x1F, 0x94, 0x16, 0x82, 0x10, 0x99, 0xF1, 0xA1, 0xF2, 0xB1, 0xF3, 0xB9, 0xF3, 0x02, 0xC1, 0xF3, 0x81, 0xC9, 0xF3, 0xC9, 0xF4, 0x02, 0xC9, 0xD3, 0x01, 0xC1, 0xD3, 0x87, 0xC1, 0xF3, 0xB1, 0xB2, 0xA1, 0xD1, 0xA2, 0xF4, 0xD5, 0xBC, 0xCE, 0xDF, 0xBE, 0xFE, 0xB6, 0xFD, 0x01, 0xAE, 0xFD, 0x05, 0xA6, 0xFD, 0x81, 0xA6, 0xDC, 0xA6, 0xFD, 0x01, 0xA6, 0xDD, 0x8B, 0xA6, 0xFD, 0xAE, 0xFD, 0xAF, 0x1D, 0xAF, 0x1E, 0xBF, 0x1F, 0xCE, 0x7E, 0x83, 0x13, 0x8A, 0x11, 0xA2, 0x12, 0xA9, 0xF3, 0xB1, 0xF3, 0xB9, 0xF3, 0x01, 0xC1, 0xF3, 0x86, 0xC9, 0xF3, 0xC9, 0xD3, 0xC9, 0xF3, 0xC9, 0xD3, 0xC9, 0xF3, 0xC9, 0xD3, 0xC1, 0xD3, 0x01, 0xC1, 0xF3, 0x87, 0xB9, 0xD2, 0xA9, 0xF2, 0x9A, 0xB3, 0xD5, 0xBD, 0xCE, 0xBF, 0xBE, 0xDE, 0xAE, 0xBD, 0xAE, 0xDD, 0x01, 0xA6, 0xDD, 0x80, 0xA6, 0xDC, 0x04, 0xA6, 0xFD, 0x01, + 0xA6, 0xDD, 0x02, 0xA6, 0xFD, 0x89, 0xAE, 0xFD, 0xB6, 0xFD, 0xC6, 0xFE, 0xCE, 0x7E, 0x8B, 0x13, 0x92, 0x12, 0xA1, 0xD2, 0xA9, 0xF3, 0xB1, 0xF3, 0xB9, 0xF3, 0x04, 0xC1, 0xF3, 0x02, 0xC9, 0xF3, 0x87, 0xC1, 0xD3, 0xC1, 0xF3, 0xBA, 0x13, 0xB1, 0xD2, 0x99, 0xF1, 0xBC, 0xB9, 0xCE, 0x7E, 0xC6, 0xBE, 0x01, 0xBE, 0xDE, 0x88, 0xC6, 0xDE, 0xCE, 0xBF, 0xD6, 0x7F, 0xA3, 0xD6, 0x82, 0x11, 0x99, 0xF1, 0xA1, 0xD2, 0xA9, 0xF2, 0xB1, 0xF3, 0x01, 0xB9, 0xF3, 0x80, 0xC1, 0xF3, 0x02, 0xC1, 0xD3, 0x05, 0xC9, 0xD3, 0x80, 0xC9, 0xD4, 0x0A, 0xC9, 0xD3, 0x82, 0xD1, 0xF4, 0xC9, 0xD3, 0xC9, 0xF4, 0x01, 0xC9, 0xD3, 0x02, 0xC9, 0xF3, 0x80, 0xC9, 0xD3, 0x01, 0xC1, 0xD3, 0x01, 0xB9, 0xD3, 0x87, 0xB1, 0xD2, 0xA1, 0xF2, 0x8A, 0x10, 0xC5, 0x3A, 0xD6, 0x9E, 0xC6, 0xDE, 0xBE, 0xFE, 0xB6, 0xFD, 0x02, 0xAE, 0xFD, 0x03, 0xA6, 0xDD, 0x05, 0xA6, 0xFD, 0x89, 0xAE, 0xFD, 0xAF, 0x1E, 0xB7, 0x3E, 0xBF, 0x1E, 0xCE, 0xFF, 0xC5, 0xDC, 0x69, 0xCF, 0x89, 0xF1, 0x99, 0xD1, 0xA9, 0xD2, 0x01, 0xB1, 0xD2, 0x84, 0xB9, 0xF3, 0xC1, 0xF4, 0xC1, 0xF3, 0xC9, 0xF4, 0xC9, 0xD4, 0x04, 0xC9, 0xD3, 0x05, 0xC9, 0xB3, 0x0D, 0xC9, 0xD3, 0x01, 0xC1, 0xD3, 0x80, 0xC1, 0xB3, 0x01, 0xB9, 0xB3, 0x8D, 0xB1, 0xD2, 0xA2, 0x12, 0x8A, 0x10, 0xEE, 0x3F, 0xDE, 0x9F, 0xD6, 0x9E, 0xDE, 0x7F, 0xD5, 0xBD, 0x92, 0xD3, 0x89, 0xF1, 0xA1, 0xF2, 0xA9, 0xF2, 0xB1, 0xF3, 0xB9, 0xF3, 0x01, 0xC1, 0xF4, 0x8F, 0xC1, 0xF3, 0xC9, 0xF3, 0xC9, 0xD3, 0xC9, 0xF3, 0xC9, 0xD3, 0xC9, 0xF4, 0xC1, 0xF3, 0xB9, 0xF3, 0xBA, + 0x13, 0xA9, 0xB2, 0x99, 0xF1, 0xAC, 0x17, 0xDE, 0x9F, 0xC6, 0xBE, 0xBE, 0xDE, 0xB6, 0xBD, 0x02, 0xB6, 0xDD, 0x87, 0xB6, 0xDE, 0xC6, 0xDE, 0xCE, 0x5E, 0x83, 0x13, 0x92, 0x32, 0xA2, 0x13, 0xAA, 0x13, 0xB2, 0x13, 0x01, 0xBA, 0x13, 0x80, 0xB9, 0xF3, 0x02, 0xC1, 0xF3, 0x83, 0xC1, 0xF4, 0xC1, 0xF3, 0xC1, 0xF4, 0xC1, 0xF3, 0x01, 0xB9, 0xD3, 0x85, 0xB1, 0xF2, 0x9A, 0x32, 0xAC, 0x77, 0xCE, 0xDF, 0xBE, 0xDE, 0xB6, 0xFD, 0x01, 0xAE, 0xFD, 0x80, 0xA6, 0xDC, 0x01, 0xAE, 0xFD, 0x02, 0xAF, 0x1D, 0x87, 0xB7, 0x3E, 0xBF, 0x1E, 0xCE, 0xDF, 0xC5, 0x9C, 0x71, 0xF0, 0x89, 0xD1, 0x99, 0xD1, 0xA9, 0xD2, 0x01, 0xB1, 0xF3, 0x81, 0xB9, 0xF3, 0xB9, 0xF4, 0x02, 0xC1, 0xF4, 0x02, 0xC9, 0xF4, 0x80, 0xC9, 0xF3, 0x01, 0xC9, 0xD3, 0x80, 0xC9, 0xD4, 0x0C, 0xC9, 0xD3, 0x03, 0xC9, 0xF3, 0x02, 0xC9, 0xD3, 0x02, 0xC1, 0xD3, 0x83, 0xB9, 0xF3, 0xB9, 0xF2, 0xAA, 0x12, 0xFD, 0x5E, 0x01, 0xFD, 0x9E, 0x83, 0xC3, 0x56, 0xBA, 0x93, 0xC2, 0x94, 0xC2, 0x74, 0x02, 0xCA, 0x74, 0x80, 0xD2, 0x54, 0x07, 0xD2, 0x74, 0x01, 0xD2, 0x54, 0x81, 0xD2, 0x74, 0xDA, 0x75, 0x01, 0xD2, 0x75, 0x88, 0xD2, 0x76, 0xD2, 0x97, 0xCA, 0xB8, 0xC2, 0xD9, 0xB3, 0x3D, 0x30, 0xB6, 0x29, 0x3A, 0x21, 0x5B, 0x19, 0x5B, 0x01, 0x19, 0x7C, 0x88, 0x19, 0x9C, 0x21, 0x9C, 0x31, 0x5B, 0x40, 0xF7, 0x92, 0x1A, 0xBA, 0x59, 0xB1, 0xD6, 0xB9, 0xD6, 0xB9, 0xD5, 0x01, 0xC1, 0xD5, 0xA3, 0xC1, 0xF5, 0xB1, 0xF4, 0xA2, 0x15, 0x81, 0xF5, 0x62, 0x97, 0x64, 0xDD, 0x45, 0x9F, 0x35, 0x9F, 0x1D, 0x9F, 0x15, 0x7E, 0x0D, + 0x5D, 0x05, 0x5D, 0x05, 0x9C, 0x06, 0x3A, 0x0E, 0xFB, 0x0F, 0x5B, 0x0F, 0x9A, 0x0F, 0xDB, 0x0F, 0xBB, 0x0F, 0x9B, 0x17, 0x7B, 0x2F, 0x5C, 0x47, 0x3D, 0x6E, 0xBE, 0x64, 0x98, 0x72, 0x92, 0x9A, 0x53, 0xA9, 0xF3, 0xB1, 0xB3, 0xB9, 0xD4, 0xB9, 0xF4, 0xB1, 0xB3, 0xB1, 0xD4, 0xA1, 0x72, 0x99, 0x52, 0xBA, 0x15, 0x01, 0xB1, 0xF4, 0x8A, 0xB2, 0x15, 0xA9, 0xD4, 0x9A, 0x15, 0x48, 0x4D, 0x49, 0x10, 0x49, 0x51, 0x41, 0x51, 0x39, 0x51, 0x39, 0x31, 0x39, 0x51, 0x31, 0x51, 0x01, 0x31, 0x50, 0x81, 0x31, 0x51, 0x29, 0x51, 0x02, 0x29, 0x30, 0x01, 0x31, 0x30, 0x03, 0x29, 0x30, 0x01, 0x29, 0x10, 0x04, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x96, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xF7, 0x09, 0x96, 0x09, 0x55, 0x09, 0x75, 0x09, 0x54, 0x09, 0x34, 0x09, 0x54, 0x09, 0x55, 0x11, 0x96, 0x11, 0xD7, 0x11, 0xD6, 0x19, 0xB5, 0x11, 0x74, 0x19, 0x53, 0x19, 0x32, 0x21, 0x52, 0x19, 0x31, 0x01, 0x19, 0x32, 0x82, 0x11, 0x12, 0x09, 0x12, + 0x19, 0xB5, 0x01, 0x22, 0x17, 0x83, 0x19, 0xB6, 0x11, 0x33, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x89, 0x19, 0x11, 0x19, 0x31, 0x19, 0x53, 0x19, 0x94, 0x19, 0x95, 0x19, 0xF7, 0x22, 0x18, 0x11, 0xB6, 0x09, 0x55, 0x09, 0x54, 0x01, 0x11, 0x32, 0x87, 0x11, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x53, 0x11, 0x95, 0x19, 0xB6, 0x19, 0xD7, 0x01, 0x11, 0xB7, 0x82, 0x19, 0xD7, 0x11, 0xD7, 0x11, 0xB6, 0x02, 0x19, 0xD7, 0x83, 0x19, 0x95, 0x11, 0x54, 0x11, 0x32, 0x19, 0x11, 0x02, 0x19, 0x31, 0x8A, 0x19, 0x11, 0x11, 0x32, 0x11, 0x74, 0x11, 0xB6, 0x1A, 0x18, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x95, 0x11, 0x33, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x10, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x31, 0x8B, 0x19, 0x32, 0x11, 0x12, 0x11, 0x32, 0x11, 0x53, 0x19, 0x95, 0x19, 0xD6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x54, 0x11, 0x33, 0x01, 0x11, 0x12, 0x01, 0x10, + 0xF2, 0x03, 0x10, 0xF1, 0x01, 0x11, 0x11, 0x01, 0x11, 0x12, 0x81, 0x09, 0x12, 0x11, 0x32, 0x07, 0x11, 0x12, 0x80, 0x11, 0x32, 0x01, 0x11, 0x12, 0x07, 0x11, 0x32, 0x81, 0x11, 0x12, 0x19, 0x32, 0x01, 0x11, 0x12, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x80, 0x19, 0x53, 0x02, 0x11, 0x32, 0x02, 0x11, 0x12, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x05, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x19, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x51, 0x02, 0x21, 0x31, 0x07, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB6, 0x19, 0xD7, 0x19, 0xF8, 0x11, 0xF8, 0x1A, 0x18, 0x01, 0x11, 0xF8, 0x86, 0x11, 0xD7, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, + 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x08, 0x21, 0x30, 0x02, 0x19, 0x31, 0x81, 0x19, 0x32, 0x19, 0x52, 0x05, 0x19, 0x73, 0x80, 0x19, 0x53, 0x01, 0x11, 0x32, 0x80, 0x19, 0x11, 0x02, 0x19, 0x31, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x07, 0x29, 0x30, 0x0A, 0x29, 0x2F, 0x8F, 0x21, 0x0F, 0x28, 0xEE, 0x28, 0x8D, 0x51, 0x2F, 0xB3, 0x57, 0xB2, 0xF5, 0xAA, 0xB4, 0xAA, 0x94, 0xA2, 0x93, 0x9B, 0x34, 0xE6, 0xFF, 0xBE, 0xDD, 0xB6, 0xDD, 0xB6, 0xFD, 0xAE, 0xDD, 0xAE, 0xDC, 0x01, 0xA6, 0xFD, 0x02, 0xA6, 0xDC, 0x89, 0xA6, 0xDD, 0xAE, 0xFD, 0xBE, 0xFE, 0xCE, 0xFF, 0x94, 0x15, 0x82, 0x10, 0x99, 0xD1, 0xA1, 0xF2, 0xB1, 0xF3, 0xB9, 0xF3, 0x02, 0xC1, 0xF3, 0x01, 0xCA, 0x14, 0x01, 0xC9, 0xF3, 0x81, 0xC9, 0xD3, 0xC9, 0xF3, 0x01, 0xC1, 0xF3, + 0x87, 0xB1, 0xD2, 0xA2, 0x12, 0x9A, 0xF3, 0xCD, 0xBC, 0xCE, 0xBE, 0xB6, 0xFE, 0xB6, 0xFD, 0xAE, 0xFD, 0x01, 0xA6, 0xDD, 0x80, 0xA6, 0xDC, 0x02, 0xA6, 0xFD, 0x03, 0xA6, 0xDC, 0x80, 0xA6, 0xDD, 0x03, 0xAE, 0xFD, 0x86, 0xBE, 0xFE, 0xCE, 0x7E, 0x82, 0xF3, 0x8A, 0x11, 0xA1, 0xF2, 0xA9, 0xF3, 0xB9, 0xF3, 0x02, 0xC1, 0xF3, 0x03, 0xC9, 0xF3, 0x80, 0xC9, 0xD3, 0x01, 0xC9, 0xF3, 0x01, 0xC1, 0xF3, 0x88, 0xB9, 0xD2, 0xA9, 0xF2, 0x9A, 0xD3, 0xD5, 0x9C, 0xCE, 0xBE, 0xBE, 0xDE, 0xAE, 0xBD, 0xAE, 0xDD, 0xA6, 0xDD, 0x02, 0xA6, 0xDC, 0x03, 0xA6, 0xFD, 0x01, 0xA6, 0xDD, 0x02, 0xA6, 0xFD, 0x01, 0xAE, 0xFD, 0x87, 0xBE, 0xFE, 0xCE, 0x5E, 0x8B, 0x13, 0x92, 0x12, 0xA1, 0xF2, 0xA9, 0xF3, 0xB1, 0xF3, 0xB9, 0xF3, 0x04, 0xC1, 0xF3, 0x02, 0xC9, 0xF3, 0x01, 0xC1, 0xF3, 0x84, 0xBA, 0x13, 0xB1, 0xD2, 0x9A, 0x11, 0xC4, 0xD9, 0xD6, 0x7E, 0x01, 0xC6, 0xBE, 0x88, 0xC6, 0xDE, 0xCE, 0x9E, 0xDE, 0x7F, 0xA3, 0xF6, 0x82, 0x11, 0x99, 0xF1, 0xA1, 0xD2, 0xA9, 0xD2, 0xB1, 0xF3, 0x01, 0xB9, 0xF3, 0x02, 0xC1, 0xF3, 0x83, 0xC9, 0xF3, 0xC9, 0xD3, 0xC1, 0xD3, 0xC9, 0xD3, 0x01, 0xC9, 0xF3, 0x80, 0xC9, 0xD3, 0x02, 0xC9, 0xD4, 0x81, 0xC9, 0xD3, 0xC9, 0xD4, 0x01, 0xC9, 0xD3, 0x01, 0xC9, 0xD4, 0x80, 0xC9, 0xF4, 0x01, 0xC9, 0xD3, 0x81, 0xD1, 0xF4, 0xC9, 0xF3, 0x02, 0xC9, 0xD3, 0x05, 0xC9, 0xF3, 0x02, 0xC1, 0xF3, 0x89, 0xB9, 0xD3, 0xB1, 0xD2, 0xA1, 0xF1, 0x92, 0x71, 0xCD, 0x5B, 0xD6, 0xBF, 0xC6, 0xDE, 0xB6, 0xDD, 0xAE, 0xDD, 0xAE, 0xFD, 0x01, 0xAE, 0xDD, 0x06, 0xA6, 0xDD, + 0x01, 0xA6, 0xFD, 0x89, 0xAF, 0x1D, 0xAF, 0x1E, 0xB7, 0x1E, 0xC6, 0xFF, 0xC5, 0xFD, 0x7A, 0x91, 0x8A, 0x11, 0x99, 0xD1, 0xA9, 0xF2, 0xB1, 0xD2, 0x01, 0xB9, 0xF3, 0x82, 0xC2, 0x14, 0xC1, 0xF4, 0xC9, 0xF4, 0x04, 0xC9, 0xD3, 0x81, 0xC9, 0xF4, 0xC9, 0xD4, 0x02, 0xC9, 0xD3, 0x80, 0xC9, 0xB3, 0x0B, 0xC9, 0xD3, 0x01, 0xC9, 0xF3, 0x81, 0xC9, 0xF4, 0xC9, 0xF3, 0x01, 0xC9, 0xD3, 0x02, 0xC1, 0xD3, 0x84, 0xB9, 0xD3, 0xB1, 0xD2, 0xA2, 0x12, 0xA3, 0x35, 0xEE, 0x1F, 0x01, 0xDE, 0x5F, 0x97, 0xDD, 0xBD, 0x92, 0xD4, 0x91, 0xF1, 0xA1, 0xD2, 0xA9, 0xF2, 0xB2, 0x13, 0xBA, 0x13, 0xC2, 0x14, 0xC1, 0xF4, 0xC1, 0xF3, 0xC9, 0xF3, 0xC9, 0xD3, 0xC9, 0xF3, 0xC9, 0xF4, 0xC9, 0xF3, 0xC1, 0xF3, 0xC2, 0x13, 0xBA, 0x13, 0xA9, 0xD2, 0x99, 0xF1, 0xB4, 0x37, 0xDE, 0x9F, 0xC6, 0xBE, 0xBE, 0xDD, 0x01, 0xB6, 0xBD, 0x02, 0xB6, 0xDD, 0x86, 0xC6, 0xDE, 0xCE, 0x5E, 0x83, 0x13, 0x92, 0x32, 0xA2, 0x12, 0xAA, 0x13, 0xB2, 0x13, 0x01, 0xBA, 0x13, 0x80, 0xB9, 0xF3, 0x06, 0xC1, 0xF3, 0x01, 0xB9, 0xF3, 0x86, 0xB1, 0xF2, 0x9A, 0x31, 0xAC, 0x78, 0xCE, 0xBE, 0xBE, 0xDD, 0xB6, 0xFD, 0xAE, 0xFD, 0x01, 0xAE, 0xDC, 0x02, 0xAE, 0xFD, 0x01, 0xAF, 0x1D, 0x87, 0xB7, 0x1E, 0xC6, 0xFF, 0xBD, 0xBB, 0x82, 0xB2, 0x89, 0xF1, 0x99, 0xB1, 0xA9, 0xD2, 0xB1, 0xF3, 0x01, 0xB9, 0xF3, 0x01, 0xC1, 0xF3, 0x01, 0xC1, 0xF4, 0x80, 0xC9, 0xF3, 0x04, 0xC9, 0xF4, 0x03, 0xC9, 0xD3, 0x01, 0xC9, 0xD4, 0x04, 0xC9, 0xD3, 0x81, 0xC9, 0xF3, 0xC9, 0xD3, 0x03, 0xC9, 0xF3, 0x01, 0xC9, 0xF4, 0x04, 0xC9, 0xF3, + 0x02, 0xC1, 0xF3, 0x86, 0xB2, 0x12, 0xBA, 0xD4, 0xFD, 0x7E, 0xFD, 0xBE, 0xFD, 0x9E, 0xBA, 0xD4, 0xBA, 0x73, 0x01, 0xC2, 0x74, 0x01, 0xCA, 0x74, 0x81, 0xCA, 0x54, 0xD2, 0x54, 0x01, 0xD2, 0x74, 0x03, 0xD2, 0x54, 0x80, 0xD2, 0x74, 0x02, 0xD2, 0x54, 0x02, 0xD2, 0x55, 0x88, 0xD2, 0x76, 0xD2, 0x97, 0xCA, 0xB8, 0xC2, 0xD9, 0xAA, 0xFC, 0x38, 0xB6, 0x29, 0x19, 0x21, 0x5B, 0x21, 0x7C, 0x01, 0x19, 0x7C, 0x9A, 0x19, 0x9C, 0x19, 0x7C, 0x29, 0x7B, 0x39, 0x18, 0x71, 0x78, 0xB2, 0x5A, 0xB2, 0x18, 0xB9, 0xF6, 0xB9, 0xD5, 0xC1, 0xD5, 0xC1, 0xF5, 0xC1, 0xD4, 0xB1, 0xF4, 0xA2, 0x15, 0x89, 0xF5, 0x62, 0x76, 0x5C, 0x7C, 0x4D, 0x9F, 0x35, 0x9F, 0x1D, 0x9F, 0x15, 0x7E, 0x0D, 0x7D, 0x05, 0x7D, 0x05, 0x9C, 0x06, 0x3A, 0x06, 0xDA, 0x0F, 0x5B, 0x01, 0x0F, 0x9A, 0x89, 0x0F, 0xBB, 0x0F, 0x7B, 0x1F, 0x7B, 0x2F, 0x5C, 0x4F, 0x3D, 0x6E, 0xBE, 0x64, 0x57, 0x72, 0x92, 0x9A, 0x33, 0xA9, 0xF3, 0x01, 0xB1, 0xD4, 0x84, 0xB9, 0xD4, 0xB1, 0xB4, 0xB1, 0xD4, 0xA1, 0x72, 0x99, 0x52, 0x03, 0xB1, 0xF4, 0x87, 0xA9, 0xF4, 0x91, 0xF4, 0x50, 0xAF, 0x49, 0x10, 0x41, 0x51, 0x39, 0x51, 0x39, 0x31, 0x39, 0x71, 0x01, 0x31, 0x51, 0x81, 0x31, 0x71, 0x29, 0x71, 0x03, 0x29, 0x50, 0x05, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, 0x29, 0x10, 0x03, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, + 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x85, 0x11, 0x53, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xF7, 0x11, 0x96, 0x09, 0x76, 0x01, 0x09, 0x75, 0x8B, 0x09, 0x54, 0x01, 0x34, 0x09, 0x55, 0x11, 0xB6, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x73, 0x19, 0x52, 0x19, 0x32, 0x21, 0x52, 0x19, 0x51, 0x01, 0x19, 0x32, 0x82, 0x11, 0x32, 0x11, 0x13, 0x19, 0x95, 0x01, 0x21, 0xF7, 0x87, 0x19, 0xB6, 0x11, 0x12, 0x11, 0x11, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x90, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x11, 0x19, 0x31, 0x19, 0x32, 0x19, 0x74, 0x11, 0x75, 0x19, 0xB6, 0x22, 0x18, 0x19, 0xF7, 0x09, 0x75, 0x09, 0x54, 0x11, 0x33, 0x11, 0x32, 0x19, 0x52, 0x19, 0x31, 0x01, 0x11, 0x32, 0x85, 0x19, 0x53, 0x11, 0x53, 0x11, 0x75, 0x19, 0xB6, 0x11, 0xB6, 0x19, 0xB6, 0x01, 0x11, 0xB6, 0x01, 0x19, 0xB6, 0x84, 0x11, 0x96, 0x11, 0x95, 0x11, 0x74, 0x19, 0x53, 0x19, 0x32, 0x03, 0x19, 0x31, 0x8A, 0x11, 0x12, 0x11, 0x33, 0x11, 0x75, 0x19, 0xD7, 0x1A, 0x18, 0x19, 0xD7, 0x11, 0xB6, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x88, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, + 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB5, 0x01, 0x21, 0xF7, 0x86, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x10, 0xF1, 0x01, 0x19, 0x11, 0x81, 0x18, 0xF1, 0x18, 0xF0, 0x02, 0x19, 0x10, 0x80, 0x18, 0xF0, 0x01, 0x19, 0x10, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x18, 0xF1, 0x19, 0x31, 0x0A, 0x19, 0x11, 0x01, 0x19, 0x31, 0x02, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x02, 0x19, 0x11, 0x80, 0x19, 0x31, 0x03, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x02, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x83, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, + 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x14, 0x21, 0x31, 0x80, 0x21, 0x30, 0x04, 0x21, 0x51, 0x82, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x05, 0x21, 0x51, 0x81, 0x19, 0x51, 0x21, 0x51, 0x01, 0x19, 0x31, 0x82, 0x21, 0x51, 0x19, 0x31, 0x21, 0x52, 0x01, 0x21, 0x31, 0x81, 0x21, 0x51, 0x21, 0x31, 0x02, 0x19, 0x31, 0x8A, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB7, 0x19, 0xF8, 0x11, 0xF8, 0x11, 0xB7, 0x09, 0xB7, 0x11, 0xD7, 0x02, 0x11, 0xF8, 0x85, 0x19, 0xF7, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x53, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8B, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x29, 0x30, 0x02, 0x29, 0x10, 0x06, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0C, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x52, 0x8B, 0x19, 0x53, + 0x19, 0x74, 0x19, 0x94, 0x21, 0xD5, 0x21, 0xF6, 0x2A, 0x37, 0x22, 0x16, 0x21, 0xD5, 0x19, 0x94, 0x19, 0x73, 0x11, 0x52, 0x19, 0x52, 0x01, 0x19, 0x31, 0x83, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x30, 0x0D, 0x29, 0x2F, 0x90, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0x8D, 0x51, 0x2F, 0xB3, 0x37, 0xB2, 0xD5, 0xAA, 0x94, 0xAA, 0x73, 0xA2, 0x73, 0x9B, 0x13, 0xE6, 0xFF, 0xC6, 0xFE, 0xBE, 0xDD, 0xB6, 0xFD, 0xAE, 0xBD, 0xAE, 0xDC, 0xA6, 0xDD, 0x03, 0xA6, 0xDC, 0x89, 0xA6, 0xDD, 0xAE, 0xDD, 0xBE, 0xFE, 0xCE, 0xDF, 0x93, 0xF5, 0x82, 0x10, 0x99, 0xF2, 0xA1, 0xF2, 0xB1, 0xF3, 0xBA, 0x13, 0x01, 0xC2, 0x14, 0x02, 0xCA, 0x14, 0x01, 0xC9, 0xF4, 0x89, 0xCA, 0x14, 0xC9, 0xF3, 0xC1, 0xF3, 0xC2, 0x13, 0xB9, 0xF3, 0xAA, 0x32, 0xAB, 0x95, 0xCD, 0xBC, 0xC6, 0x9E, 0xB6, 0xDD, 0x01, 0xAE, 0xDD, 0x80, 0xA6, 0xDD, 0x02, 0xA6, 0xDC, 0x80, 0xA6, 0xFC, 0x07, 0xA6, 0xDC, 0x01, 0xAE, 0xDD, 0x8D, 0xBE, 0xBE, 0xCE, 0x5E, 0x82, 0xF2, 0x8A, 0x31, 0x99, 0xF2, 0xAA, 0x12, 0xBA, 0x13, 0xC2, 0x13, 0xC2, 0x14, 0xC9, 0xF4, 0xC9, 0xF3, 0xC9, 0xF4, 0xC9, 0xF3, 0xC9, 0xF4, 0x01, 0xC9, 0xF3, 0x8A, 0xC1, 0xF4, 0xC2, 0x14, 0xC2, 0x13, 0xB9, 0xD2, 0xAA, 0x12, 0xA3, 0x14, 0xCD, 0x7C, 0xCE, 0xBF, 0xBE, 0xDE, 0xB6, 0xDD, 0xAE, 0xDD, 0x01, 0xA6, 0xDD, 0x83, 0xA6, 0xDC, 0x9E, 0xDC, 0xA6, 0xDC, 0x9E, 0xDC, 0x01, 0xA6, 0xDC, 0x01, 0xA6, 0xDD, 0x02, 0xA6, 0xFD, 0x89, 0xA6, 0xDD, 0xAE, 0xFD, 0xBE, 0xDE, 0xCE, 0x5E, 0x8B, 0x54, + 0x8A, 0x11, 0xA2, 0x12, 0xA9, 0xF3, 0xB1, 0xF3, 0xBA, 0x14, 0x01, 0xC2, 0x14, 0x82, 0xC2, 0x13, 0xC9, 0xF3, 0xCA, 0x13, 0x02, 0xC9, 0xF3, 0x01, 0xC1, 0xF3, 0x8F, 0xBA, 0x33, 0xB1, 0xF2, 0x91, 0xF1, 0xDD, 0xBD, 0xD6, 0x7E, 0xCE, 0x9E, 0xC6, 0xBE, 0xCE, 0x9E, 0xDE, 0x7F, 0xAC, 0x37, 0x81, 0xF0, 0x91, 0xF1, 0xA1, 0xF2, 0xA9, 0xF2, 0xB1, 0xF3, 0xBA, 0x13, 0x01, 0xC2, 0x14, 0x01, 0xC1, 0xF3, 0x80, 0xCA, 0x14, 0x01, 0xC9, 0xF4, 0x80, 0xCA, 0x14, 0x02, 0xC9, 0xF4, 0x80, 0xC9, 0xF3, 0x0D, 0xC9, 0xF4, 0x02, 0xC9, 0xF3, 0x81, 0xC9, 0xF4, 0xD1, 0xF4, 0x01, 0xC9, 0xF4, 0x01, 0xC9, 0xF3, 0x81, 0xCA, 0x14, 0xCA, 0x13, 0x01, 0xC1, 0xF3, 0x87, 0xB9, 0xF3, 0xB1, 0xF2, 0xA1, 0xF1, 0x81, 0xF0, 0xD5, 0xBC, 0xCE, 0x9E, 0xBE, 0xBE, 0xB6, 0xDD, 0x01, 0xAE, 0xDD, 0x80, 0xAE, 0xDC, 0x04, 0xA6, 0xDC, 0x01, 0xA6, 0xDD, 0x89, 0xA6, 0xFD, 0xAE, 0xFD, 0xAF, 0x1D, 0xB7, 0x1E, 0xBE, 0xFE, 0xD6, 0x9F, 0x82, 0xD2, 0x81, 0xF0, 0x99, 0xF1, 0xA9, 0xF2, 0x01, 0xB1, 0xF3, 0x80, 0xBA, 0x13, 0x01, 0xC2, 0x14, 0x80, 0xCA, 0x14, 0x07, 0xC9, 0xF4, 0x80, 0xD1, 0xF4, 0x01, 0xC9, 0xF4, 0x84, 0xD1, 0xF4, 0xC9, 0xD3, 0xC9, 0xD4, 0xD1, 0xF4, 0xC9, 0xD4, 0x01, 0xC9, 0xF4, 0x05, 0xC9, 0xF3, 0x01, 0xC9, 0xF4, 0x80, 0xCA, 0x14, 0x02, 0xC9, 0xF4, 0x8F, 0xC9, 0xF3, 0xC1, 0xF4, 0xC1, 0xD3, 0xC1, 0xF3, 0xB9, 0xD3, 0xB1, 0xF3, 0xA2, 0x32, 0xCC, 0x39, 0xEE, 0x3F, 0xE6, 0x1E, 0xE5, 0xBE, 0x9A, 0xF4, 0x91, 0xF1, 0xA1, 0xD2, 0xA9, 0xF2, 0xB2, 0x13, 0x01, 0xC2, 0x14, 0x81, 0xC1, + 0xF3, 0xC9, 0xF3, 0x03, 0xC9, 0xF4, 0x80, 0xCA, 0x14, 0x01, 0xC2, 0x14, 0x86, 0xBA, 0x13, 0xB1, 0xF2, 0x99, 0xF1, 0xB4, 0x37, 0xDE, 0x9F, 0xC6, 0xBE, 0xBE, 0xDE, 0x01, 0xB6, 0xBD, 0x02, 0xB6, 0xDD, 0x86, 0xC6, 0xDE, 0xCE, 0x5E, 0x82, 0xF3, 0x8A, 0x31, 0xA2, 0x12, 0xAA, 0x13, 0xB2, 0x33, 0x01, 0xBA, 0x13, 0x01, 0xC2, 0x14, 0x84, 0xC2, 0x13, 0xC1, 0xF3, 0xCA, 0x13, 0xC1, 0xF3, 0xCA, 0x14, 0x01, 0xC1, 0xF3, 0x86, 0xB9, 0xF3, 0xB2, 0x12, 0xA2, 0x72, 0xB4, 0xB8, 0xCE, 0x9E, 0xBE, 0xDD, 0xB6, 0xFD, 0x04, 0xAE, 0xDC, 0x01, 0xAE, 0xFD, 0x8A, 0xB7, 0x1E, 0xC6, 0xFE, 0xCE, 0x7E, 0x8B, 0x33, 0x8A, 0x11, 0x99, 0xF2, 0xA9, 0xD2, 0xB1, 0xF3, 0xB9, 0xF3, 0xBA, 0x13, 0xC2, 0x13, 0x01, 0xC1, 0xF4, 0x82, 0xCA, 0x14, 0xC9, 0xF4, 0xCA, 0x14, 0x01, 0xC9, 0xF4, 0x80, 0xC9, 0xF3, 0x01, 0xC9, 0xF4, 0x81, 0xC9, 0xD4, 0xD1, 0xD4, 0x01, 0xC9, 0xD3, 0x01, 0xC9, 0xD4, 0x80, 0xC9, 0xF4, 0x02, 0xC9, 0xD3, 0x01, 0xC9, 0xF3, 0x01, 0xC9, 0xF4, 0x01, 0xC9, 0xF3, 0x82, 0xC9, 0xF4, 0xC9, 0xF3, 0xC9, 0xF4, 0x02, 0xCA, 0x14, 0x02, 0xC9, 0xF3, 0x01, 0xC1, 0xF3, 0x89, 0xBA, 0x13, 0xB2, 0x12, 0xD3, 0x97, 0xFD, 0xDF, 0xFD, 0xDE, 0xFD, 0xBE, 0xBB, 0x14, 0xBA, 0x93, 0xC2, 0x73, 0xC2, 0x54, 0x02, 0xCA, 0x54, 0x09, 0xD2, 0x54, 0x01, 0xDA, 0x55, 0x95, 0xD2, 0x55, 0xD2, 0x56, 0xD2, 0x77, 0xCA, 0x98, 0xC2, 0xB9, 0xAA, 0xFC, 0x38, 0xB6, 0x29, 0x1A, 0x21, 0x5B, 0x21, 0x7C, 0x19, 0x7D, 0x11, 0x7D, 0x19, 0x9D, 0x19, 0x7C, 0x29, 0x7C, 0x39, 0x39, 0x59, 0x17, 0x9A, 0x3A, + 0xB2, 0x18, 0xB9, 0xF7, 0xC1, 0xD6, 0xC1, 0xD5, 0x01, 0xC1, 0xF5, 0x8E, 0xB9, 0xF5, 0xA9, 0xF5, 0x91, 0xF5, 0x6A, 0x76, 0x53, 0xFA, 0x4D, 0x5E, 0x35, 0x9F, 0x1D, 0xBF, 0x15, 0x7E, 0x0D, 0x7D, 0x0D, 0x9D, 0x05, 0xBC, 0x06, 0x3A, 0x06, 0xDA, 0x0F, 0x7B, 0x02, 0x0F, 0x9A, 0x8F, 0x0F, 0x7A, 0x1F, 0x5B, 0x2F, 0x3C, 0x4F, 0x1D, 0x76, 0xBE, 0x64, 0x57, 0x72, 0x72, 0x9A, 0x33, 0xA1, 0xB2, 0xB1, 0xD3, 0xB1, 0xD4, 0xB1, 0xB4, 0xB1, 0xD4, 0xB1, 0xF4, 0x99, 0x52, 0xA1, 0x93, 0x01, 0xA9, 0xD4, 0x86, 0xB1, 0xF4, 0xA9, 0xD4, 0xAA, 0x15, 0x89, 0xB3, 0x50, 0xF0, 0x49, 0x31, 0x41, 0x30, 0x02, 0x39, 0x51, 0x81, 0x31, 0x51, 0x31, 0x71, 0x01, 0x29, 0x51, 0x01, 0x29, 0x50, 0x03, 0x29, 0x30, 0x80, 0x29, 0x50, 0x03, 0x29, 0x30, 0x02, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x92, 0x18, 0xF0, 0x10, 0xF1, 0x11, 0x32, 0x19, 0x95, 0x19, 0xF6, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0xD7, 0x09, 0xB6, 0x09, 0x96, 0x09, 0x76, 0x09, 0xB6, 0x11, 0xF7, 0x1A, 0x17, 0x19, 0xD6, 0x11, 0x94, 0x11, 0x52, 0x11, + 0x31, 0x03, 0x19, 0x31, 0x89, 0x19, 0x32, 0x11, 0x12, 0x11, 0x13, 0x21, 0xD6, 0x2A, 0x38, 0x22, 0x17, 0x19, 0x95, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x31, 0x89, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0x96, 0x22, 0x18, 0x1A, 0x18, 0x09, 0x75, 0x09, 0x34, 0x09, 0x33, 0x11, 0x32, 0x01, 0x19, 0x52, 0x80, 0x11, 0x31, 0x01, 0x19, 0x32, 0x82, 0x19, 0x33, 0x11, 0x54, 0x11, 0x74, 0x01, 0x11, 0x75, 0x01, 0x11, 0xB5, 0x8D, 0x11, 0x95, 0x19, 0x75, 0x19, 0x74, 0x11, 0x54, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x19, 0x51, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x19, 0xB6, 0x01, 0x1A, 0x18, 0x88, 0x19, 0xF7, 0x11, 0x95, 0x09, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x30, 0x29, 0x51, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x10, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x85, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, + 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x19, 0x10, 0x19, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x30, 0x02, 0x21, 0x31, 0x02, 0x21, 0x30, 0x83, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x02, 0x21, 0x31, 0x81, 0x19, 0x10, 0x21, 0x30, 0x01, 0x19, 0x30, 0x84, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x19, 0x10, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x51, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x19, 0x11, 0x21, 0x11, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x02, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x21, 0x31, 0x19, 0x31, 0x21, 0x31, 0x02, 0x19, 0x31, 0x02, 0x21, 0x31, 0x02, 0x19, 0x31, 0x83, 0x19, 0x51, 0x19, 0x31, 0x21, 0x52, 0x19, 0x31, 0x01, 0x21, 0x51, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x03, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x05, + 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x11, 0x89, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xB7, 0x11, 0xD7, 0x11, 0xF8, 0x09, 0xB7, 0x01, 0x09, 0x96, 0x8A, 0x09, 0x76, 0x09, 0x96, 0x09, 0xB7, 0x11, 0xB7, 0x19, 0xF8, 0x11, 0xB6, 0x19, 0xB5, 0x19, 0x73, 0x19, 0x32, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x84, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x10, 0x08, 0x21, 0x30, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x86, 0x19, 0x53, 0x11, 0x53, 0x19, 0x95, 0x21, 0xD6, 0x21, 0xF6, 0x22, 0x17, 0x19, 0xD6, 0x02, 0x22, 0x17, 0x86, 0x21, 0xF6, 0x19, 0xD5, 0x19, 0x94, 0x19, 0x53, 0x19, 0x52, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, + 0x05, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x8D, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0x8D, 0x51, 0x2F, 0xB3, 0x37, 0xB2, 0xD5, 0xAA, 0x94, 0xAA, 0x73, 0xA2, 0x73, 0x92, 0xF3, 0xE6, 0xFF, 0xC6, 0xFE, 0xBE, 0xFD, 0xB6, 0xFD, 0x01, 0xAE, 0xBC, 0x04, 0xA6, 0xDC, 0x8B, 0xAE, 0xFD, 0xB6, 0xFD, 0xBE, 0xDE, 0xCE, 0xDF, 0x93, 0xF5, 0x82, 0x10, 0x9A, 0x12, 0xAA, 0x13, 0xB2, 0x13, 0xBA, 0x34, 0xC2, 0x34, 0xCA, 0x34, 0x06, 0xCA, 0x14, 0x87, 0xC2, 0x14, 0xC2, 0x13, 0xB9, 0xF3, 0xA2, 0x32, 0xAB, 0x95, 0xC5, 0xBB, 0xC6, 0x9D, 0xB6, 0xBD, 0x01, 0xAE, 0xDD, 0x80, 0xA6, 0xDD, 0x0B, 0xA6, 0xDC, 0x88, 0xAE, 0xDC, 0xAE, 0xDD, 0xBE, 0xFE, 0xCE, 0x7E, 0x83, 0x13, 0x8A, 0x31, 0x9A, 0x12, 0xAA, 0x13, 0xBA, 0x13, 0x01, 0xC2, 0x14, 0x01, 0xCA, 0x14, 0x81, 0xC9, 0xF4, 0xCA, 0x14, 0x01, 0xC9, 0xF4, 0x01, 0xCA, 0x14, 0x89, 0xC2, 0x34, 0xC2, 0x14, 0xB9, 0xF3, 0xAA, 0x32, 0xAB, 0x55, 0xCD, 0x9C, 0xCE, 0x9E, 0xB6, 0xDE, 0xB6, 0xDD, 0xAE, 0xDD, 0x01, 0xA6, 0xDD, 0x06, 0xA6, 0xDC, 0x80, 0xA6, 0xDD, 0x01, 0xA6, 0xFD, 0x80, 0xA6, 0xFC, 0x01, 0xAE, 0xFD, 0x87, 0xBE, 0xFE, 0xCE, 0x3D, 0x83, 0x13, 0x8A, 0x32, 0xA2, 0x13, 0xAA, 0x33, 0xB2, 0x13, 0xBA, 0x14, 0x01, 0xC2, 0x14, 0x02, 0xCA, 0x14, 0x80, 0xC9, 0xF3, 0x01, 0xCA, 0x14, 0x86, 0xC2, 0x13, 0xC1, 0xF3, 0xC2, 0x33, 0xB1, 0xF2, 0x92, 0x11, 0xDD, 0xBC, 0xD6, 0x5E, 0x01, 0xCE, 0x9E, 0x89, 0xD6, 0x7E, 0xAC, 0x78, 0x82, 0x10, 0x91, 0xD1, 0xA1, 0xF2, 0xA9, 0xF3, 0xB1, 0xF3, 0xBA, 0x13, + 0xC2, 0x13, 0xC2, 0x34, 0x08, 0xCA, 0x14, 0x0E, 0xC9, 0xF4, 0x01, 0xC9, 0xF3, 0x03, 0xC9, 0xF4, 0x81, 0xD2, 0x14, 0xC9, 0xF4, 0x03, 0xCA, 0x14, 0x01, 0xCA, 0x13, 0x01, 0xC2, 0x13, 0x86, 0xB1, 0xD2, 0xA2, 0x11, 0x92, 0xB2, 0xD5, 0xDD, 0xCE, 0x9E, 0xBE, 0xDD, 0xB6, 0xDD, 0x01, 0xAE, 0xDD, 0x80, 0xAE, 0xFD, 0x02, 0xA6, 0xBC, 0x01, 0xAE, 0xDC, 0x01, 0xAE, 0xFD, 0x87, 0xAF, 0x1D, 0xB7, 0x3E, 0xBE, 0xFE, 0xCE, 0xBE, 0x8B, 0xB4, 0x7A, 0x10, 0x91, 0xD1, 0xA1, 0xF2, 0x01, 0xB2, 0x13, 0x82, 0xBA, 0x13, 0xC2, 0x34, 0xC2, 0x14, 0x02, 0xCA, 0x14, 0x03, 0xC9, 0xF4, 0x80, 0xD2, 0x14, 0x01, 0xC9, 0xF4, 0x04, 0xD1, 0xF4, 0x03, 0xC9, 0xF4, 0x80, 0xD1, 0xF4, 0x01, 0xC9, 0xF3, 0x84, 0xCA, 0x14, 0xC9, 0xF4, 0xCA, 0x14, 0xC9, 0xF4, 0xD2, 0x14, 0x02, 0xCA, 0x14, 0x80, 0xC9, 0xF4, 0x01, 0xCA, 0x14, 0x01, 0xC9, 0xF4, 0x91, 0xC1, 0xF4, 0xC1, 0xD3, 0xB9, 0xF3, 0xB2, 0x13, 0x9A, 0x32, 0xED, 0x7D, 0xED, 0xFF, 0xE5, 0x9E, 0xA2, 0xF4, 0x91, 0xD1, 0xA1, 0xD1, 0xB2, 0x13, 0xBA, 0x13, 0xC2, 0x34, 0xC2, 0x14, 0xC2, 0x13, 0xCA, 0x14, 0xC9, 0xF3, 0x02, 0xCA, 0x14, 0x8C, 0xCA, 0x34, 0xC2, 0x34, 0xC2, 0x14, 0xC2, 0x34, 0xB1, 0xF2, 0x99, 0xF1, 0xB4, 0x37, 0xDE, 0x7E, 0xC6, 0xBE, 0xBE, 0xBD, 0xB6, 0xBD, 0xB6, 0xBC, 0xB6, 0xBD, 0x01, 0xB6, 0xDD, 0x87, 0xC6, 0xDE, 0xCE, 0x5E, 0x82, 0xF2, 0x8A, 0x31, 0x9A, 0x12, 0xAA, 0x13, 0xB2, 0x33, 0xBA, 0x34, 0x01, 0xC2, 0x34, 0x01, 0xC2, 0x14, 0x02, 0xCA, 0x13, 0x80, 0xC2, 0x13, 0x01, 0xC1, 0xF3, 0x88, 0xBA, 0x13, 0xB2, + 0x12, 0x9A, 0x52, 0xBC, 0xD8, 0xCE, 0x9E, 0xBE, 0xDD, 0xB6, 0xDD, 0xAE, 0xDC, 0xAE, 0xBC, 0x03, 0xAE, 0xDC, 0x89, 0xB7, 0x1D, 0xBF, 0x1E, 0xCE, 0xBE, 0x93, 0xF6, 0x8A, 0x51, 0x91, 0xF2, 0xA1, 0xF2, 0xB1, 0xF3, 0xBA, 0x14, 0xC2, 0x34, 0x01, 0xC2, 0x14, 0x04, 0xCA, 0x14, 0x80, 0xCA, 0x13, 0x01, 0xC9, 0xF3, 0x80, 0xC9, 0xF4, 0x02, 0xC9, 0xF3, 0x80, 0xD1, 0xF4, 0x01, 0xC9, 0xD4, 0x01, 0xC9, 0xD3, 0x80, 0xC9, 0xF3, 0x03, 0xC9, 0xF4, 0x80, 0xC9, 0xF3, 0x01, 0xC9, 0xF4, 0x81, 0xCA, 0x14, 0xCA, 0x13, 0x03, 0xCA, 0x14, 0x80, 0xCA, 0x13, 0x01, 0xCA, 0x14, 0x01, 0xCA, 0x13, 0x02, 0xC2, 0x13, 0x86, 0xAA, 0x11, 0xF4, 0xFC, 0xFD, 0xFF, 0xFE, 0x1F, 0xFD, 0xDE, 0xB2, 0xB3, 0xBA, 0x73, 0x01, 0xC2, 0x53, 0x02, 0xCA, 0x54, 0x03, 0xD2, 0x54, 0x03, 0xD2, 0x34, 0x8E, 0xD2, 0x54, 0xD2, 0x34, 0xDA, 0x55, 0xD2, 0x35, 0xD2, 0x55, 0xD2, 0x77, 0xCA, 0x98, 0xC2, 0xB9, 0xAA, 0xFC, 0x38, 0xB6, 0x29, 0x1A, 0x21, 0x5B, 0x21, 0x7C, 0x19, 0x7C, 0x11, 0x7D, 0x01, 0x19, 0x9D, 0x87, 0x29, 0x9C, 0x31, 0x3A, 0x49, 0x18, 0x81, 0xDA, 0xAA, 0x39, 0xB9, 0xF7, 0xB9, 0xD6, 0xC1, 0xD5, 0x01, 0xC1, 0xF5, 0x8E, 0xB9, 0xF5, 0xA9, 0xD5, 0x91, 0xF5, 0x72, 0x56, 0x53, 0x99, 0x4D, 0x1E, 0x35, 0x9F, 0x25, 0xBF, 0x15, 0x9E, 0x0D, 0x9E, 0x0D, 0x9D, 0x05, 0xDC, 0x06, 0x3A, 0x06, 0xBA, 0x0F, 0x5B, 0x02, 0x0F, 0x9A, 0x88, 0x17, 0x9B, 0x1F, 0x5B, 0x2F, 0x3C, 0x4F, 0x1D, 0x76, 0x7D, 0x64, 0x37, 0x72, 0x72, 0x9A, 0x33, 0xA1, 0xD3, 0x01, 0xB1, 0xD4, 0x85, 0xB9, 0xF5, 0xB1, 0xB3, + 0xB2, 0x15, 0x88, 0xF0, 0x99, 0x73, 0xA9, 0xF4, 0x01, 0xA9, 0xD4, 0x88, 0xA9, 0xF4, 0xA2, 0x15, 0x81, 0x72, 0x50, 0xF0, 0x49, 0x30, 0x41, 0x31, 0x39, 0x30, 0x31, 0x51, 0x39, 0x71, 0x01, 0x31, 0x71, 0x02, 0x29, 0x51, 0x01, 0x29, 0x50, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x30, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x10, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x8B, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x86, 0x19, 0x10, 0x18, 0xF0, 0x19, 0x11, 0x19, 0x32, 0x19, 0x73, 0x11, 0xB5, 0x1A, 0x17, 0x01, 0x11, 0xD7, 0x8A, 0x12, 0x18, 0x11, 0xD7, 0x09, 0xB7, 0x09, 0xB6, 0x11, 0xD7, 0x11, 0xF7, 0x19, 0xD6, 0x11, 0x94, 0x11, 0x73, 0x11, 0x32, 0x19, 0x32, 0x03, 0x19, 0x31, 0x01, 0x19, 0x32, 0x81, 0x11, 0x13, 0x19, 0xB6, 0x01, 0x22, 0x17, 0x80, 0x19, 0xB5, 0x01, 0x11, 0x12, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8D, 0x19, 0x32, 0x11, 0x12, 0x19, 0x54, 0x19, 0x95, 0x19, 0xF7, 0x22, 0x18, 0x11, 0x96, 0x09, 0x54, 0x09, 0x53, + 0x11, 0x53, 0x11, 0x52, 0x19, 0x52, 0x11, 0x11, 0x19, 0x31, 0x01, 0x19, 0x32, 0x82, 0x19, 0x53, 0x11, 0x53, 0x11, 0x54, 0x03, 0x11, 0x74, 0x81, 0x19, 0x74, 0x11, 0x53, 0x01, 0x19, 0x53, 0x81, 0x19, 0x32, 0x11, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x8B, 0x11, 0x75, 0x19, 0xF7, 0x22, 0x18, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x01, 0x21, 0x10, 0x01, 0x29, 0x10, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x10, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x11, 0x11, 0x12, 0x11, 0x53, 0x11, 0x74, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x82, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x01, 0x11, 0x32, 0x02, 0x19, 0x31, 0x86, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x0A, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x03, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, + 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x29, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x50, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x19, 0x31, 0x03, 0x19, 0x32, 0x80, 0x19, 0x12, 0x01, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x32, 0x0A, 0x19, 0x12, 0x01, 0x11, 0x12, 0x02, 0x11, 0x32, 0x03, 0x11, 0x11, 0x07, 0x11, 0x12, 0x02, 0x11, 0x32, 0x81, 0x11, 0x12, 0x11, 0x32, 0x06, 0x11, 0x12, 0x8A, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xB7, 0x09, 0xB7, 0x09, 0x97, 0x09, 0x96, 0x09, 0x76, 0x09, 0x75, 0x01, 0x01, 0x55, 0x8A, 0x09, 0x76, 0x11, 0xB6, 0x11, 0xD7, 0x19, 0xD7, 0x19, 0xB5, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x88, 0x21, 0x10, 0x29, 0x10, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, + 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x08, 0x21, 0x30, 0x84, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x01, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x51, 0x02, 0x19, 0x31, 0x84, 0x19, 0x32, 0x11, 0x53, 0x19, 0x74, 0x21, 0xD6, 0x21, 0xF7, 0x01, 0x19, 0xD7, 0x8A, 0x11, 0x96, 0x11, 0x95, 0x11, 0x96, 0x11, 0xB6, 0x11, 0xD6, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xB5, 0x19, 0x74, 0x11, 0x32, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x07, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x8D, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0x8D, 0x59, 0x4F, 0xB3, 0x37, 0xB2, 0xD5, 0xAA, 0x94, 0xAA, 0x73, 0xA2, 0x53, 0x92, 0xD2, 0xE6, 0xFF, 0xC6, 0xFE, 0xBE, 0xDD, 0xB6, 0xFD, 0x01, 0xAE, 0xBC, 0x81, 0xA6, 0xDC, 0xA6, 0xBC, 0x02, 0xA6, 0xDC, 0x89, 0xAE, 0xFD, 0xB6, 0xFD, 0xBE, 0xFE, 0xD6, 0xFF, 0x94, 0x15, 0x82, 0x10, 0x9A, 0x12, 0xAA, 0x13, 0xB2, 0x33, 0xBA, 0x34, 0x01, 0xC2, 0x34, 0x01, 0xCA, 0x34, 0x03, 0xCA, 0x14, 0x8C, 0xCA, 0x34, 0xC2, 0x14, 0xC2, 0x13, 0xBA, 0x13, 0xA2, + 0x52, 0xA3, 0x95, 0xC5, 0x9B, 0xC6, 0xBE, 0xB6, 0xDD, 0xAE, 0xDC, 0xAE, 0xFD, 0xAE, 0xDD, 0xA6, 0xDD, 0x0A, 0xA6, 0xDC, 0x89, 0xAE, 0xFC, 0xB7, 0x1D, 0xC7, 0x1E, 0xCE, 0x7E, 0x82, 0xF2, 0x8A, 0x31, 0x9A, 0x12, 0xAA, 0x33, 0xBA, 0x34, 0xC2, 0x34, 0x01, 0xCA, 0x34, 0x82, 0xCA, 0x14, 0xCA, 0x34, 0xD2, 0x34, 0x01, 0xCA, 0x13, 0x8A, 0xCA, 0x14, 0xCA, 0x34, 0xC2, 0x34, 0xC2, 0x33, 0xBA, 0x13, 0xAA, 0x32, 0xAB, 0x96, 0xCD, 0x9C, 0xC6, 0x7E, 0xB6, 0xBD, 0xAE, 0xBC, 0x01, 0xAE, 0xDC, 0x81, 0xAE, 0xFD, 0xA6, 0xFD, 0x01, 0xA6, 0xFC, 0x05, 0xA6, 0xDC, 0x8B, 0xA6, 0xFC, 0xAE, 0xFC, 0xAF, 0x1D, 0xAE, 0xFD, 0xBE, 0xFE, 0xCE, 0x7E, 0x83, 0x13, 0x8A, 0x31, 0xA2, 0x12, 0xAA, 0x33, 0xBA, 0x33, 0xC2, 0x34, 0x02, 0xCA, 0x34, 0x05, 0xCA, 0x14, 0x8E, 0xC2, 0x13, 0xC2, 0x33, 0xB2, 0x12, 0xAA, 0x93, 0xDD, 0xBD, 0xD6, 0x5E, 0xCE, 0x7E, 0xD6, 0x5E, 0xD5, 0x9C, 0x82, 0x51, 0x89, 0xF1, 0x99, 0xD1, 0xAA, 0x13, 0xB2, 0x33, 0xBA, 0x34, 0x01, 0xC2, 0x34, 0x80, 0xCA, 0x34, 0x03, 0xCA, 0x14, 0x01, 0xCA, 0x34, 0x81, 0xCA, 0x14, 0xD2, 0x14, 0x01, 0xCA, 0x14, 0x81, 0xD2, 0x14, 0xCA, 0x14, 0x01, 0xC9, 0xF4, 0x81, 0xCA, 0x14, 0xC9, 0xF4, 0x02, 0xCA, 0x14, 0x01, 0xC9, 0xF4, 0x02, 0xCA, 0x14, 0x80, 0xC9, 0xF4, 0x02, 0xCA, 0x14, 0x81, 0xD2, 0x14, 0xCA, 0x14, 0x01, 0xD2, 0x14, 0x01, 0xCA, 0x14, 0x8C, 0xCA, 0x34, 0xCA, 0x14, 0xCA, 0x34, 0xCA, 0x13, 0xC2, 0x13, 0xC2, 0x33, 0xC2, 0x13, 0xB2, 0x12, 0xA2, 0x32, 0x9B, 0x34, 0xDE, 0x9F, 0xC6, 0xBD, 0xBE, 0xBD, 0x01, + 0xB6, 0xDD, 0x81, 0xAE, 0xDD, 0xAE, 0xDC, 0x01, 0xAE, 0xBC, 0x01, 0xAE, 0xDC, 0x02, 0xAE, 0xFD, 0x8A, 0xB7, 0x1D, 0xC6, 0xFE, 0xB5, 0x3A, 0x7A, 0x50, 0x89, 0xF1, 0x99, 0xD1, 0xA9, 0xF2, 0xB2, 0x33, 0xBA, 0x33, 0xC2, 0x54, 0xC2, 0x34, 0x01, 0xCA, 0x34, 0x82, 0xCA, 0x14, 0xD2, 0x34, 0xD2, 0x14, 0x02, 0xCA, 0x14, 0x80, 0xD2, 0x14, 0x01, 0xD1, 0xF4, 0x80, 0xD2, 0x14, 0x04, 0xC9, 0xF4, 0x80, 0xCA, 0x14, 0x04, 0xC9, 0xF4, 0x03, 0xCA, 0x14, 0x01, 0xD2, 0x34, 0x01, 0xCA, 0x14, 0x81, 0xD2, 0x14, 0xD2, 0x34, 0x03, 0xCA, 0x14, 0x01, 0xC2, 0x14, 0x89, 0xBA, 0x13, 0xB2, 0x53, 0xAA, 0xF5, 0xF5, 0x9E, 0xED, 0x7E, 0xA2, 0xF4, 0x91, 0xD1, 0xA1, 0xD1, 0xB2, 0x13, 0xBA, 0x33, 0x01, 0xC2, 0x34, 0x84, 0xC2, 0x13, 0xCA, 0x13, 0xCA, 0x14, 0xCA, 0x34, 0xCA, 0x14, 0x01, 0xCA, 0x34, 0x02, 0xC2, 0x34, 0x86, 0xB1, 0xF2, 0x9A, 0x11, 0xB4, 0x37, 0xDE, 0x7E, 0xC6, 0xBD, 0xBE, 0xDD, 0xB6, 0xBD, 0x02, 0xB6, 0xBC, 0x87, 0xB6, 0xDD, 0xC6, 0xBE, 0xD6, 0x5E, 0x83, 0x12, 0x8A, 0x31, 0x9A, 0x12, 0xAA, 0x33, 0xB2, 0x33, 0x01, 0xC2, 0x54, 0x80, 0xC2, 0x34, 0x03, 0xCA, 0x34, 0x01, 0xCA, 0x14, 0x01, 0xC2, 0x13, 0x88, 0xC2, 0x33, 0xBA, 0x33, 0xA2, 0x72, 0xBC, 0xB8, 0xCE, 0x9E, 0xBE, 0xBD, 0xB6, 0xDD, 0xAE, 0xDC, 0xAE, 0xBC, 0x01, 0xAE, 0xDC, 0x89, 0xAE, 0xFC, 0xB6, 0xFD, 0xB7, 0x3E, 0xC6, 0xFF, 0xC5, 0xBC, 0x82, 0xB2, 0x8A, 0x11, 0x99, 0xD2, 0xA9, 0xF2, 0xB2, 0x33, 0x01, 0xC2, 0x54, 0x81, 0xC2, 0x34, 0xCA, 0x34, 0x07, 0xCA, 0x14, 0x03, 0xC9, 0xF4, 0x81, 0xD1, + 0xF4, 0xC9, 0xF4, 0x03, 0xC9, 0xF3, 0x02, 0xC9, 0xF4, 0x80, 0xC9, 0xF3, 0x01, 0xC9, 0xF4, 0x02, 0xCA, 0x14, 0x81, 0xCA, 0x34, 0xD2, 0x34, 0x03, 0xCA, 0x34, 0x80, 0xCA, 0x14, 0x02, 0xCA, 0x34, 0x84, 0xCA, 0x33, 0xC2, 0x33, 0xBA, 0x53, 0xBA, 0xD4, 0xFD, 0xDE, 0x01, 0xFE, 0x3E, 0x85, 0xFD, 0xFE, 0xBB, 0x14, 0xB2, 0x73, 0xBA, 0x33, 0xC2, 0x13, 0xCA, 0x14, 0x02, 0xCA, 0x34, 0x07, 0xD2, 0x34, 0x8C, 0xD2, 0x35, 0xD2, 0x14, 0xCA, 0x35, 0xCA, 0x57, 0xCA, 0x78, 0xC2, 0x99, 0xAA, 0xDC, 0x38, 0xB6, 0x31, 0x1A, 0x21, 0x5B, 0x19, 0x7C, 0x19, 0x7D, 0x11, 0x7D, 0x01, 0x19, 0x9D, 0x87, 0x21, 0x7C, 0x31, 0x5B, 0x41, 0x19, 0x59, 0x17, 0xA2, 0x3A, 0xB1, 0xF7, 0xB9, 0xD6, 0xC1, 0xD5, 0x01, 0xC1, 0xF5, 0x9B, 0xB9, 0xD5, 0xA9, 0xD5, 0x91, 0xD5, 0x72, 0x36, 0x53, 0x39, 0x4C, 0xBD, 0x3D, 0x9F, 0x25, 0xDF, 0x15, 0x9E, 0x0D, 0x9D, 0x0D, 0xBD, 0x0D, 0xFC, 0x06, 0x3A, 0x06, 0xB9, 0x0F, 0x5A, 0x0F, 0x7A, 0x07, 0x7A, 0x0F, 0x7A, 0x17, 0x9B, 0x1F, 0x7B, 0x37, 0x5C, 0x4F, 0x1D, 0x6E, 0x7D, 0x5B, 0xD6, 0x72, 0x73, 0x9A, 0x33, 0xAA, 0x14, 0xB1, 0xF4, 0x01, 0xB1, 0xB4, 0x01, 0xB1, 0xF4, 0x81, 0x80, 0xAF, 0x99, 0x93, 0x01, 0xA9, 0xF4, 0x01, 0xAA, 0x15, 0x87, 0x99, 0xF4, 0x68, 0xF0, 0x51, 0x10, 0x49, 0x31, 0x41, 0x51, 0x39, 0x51, 0x31, 0x31, 0x39, 0x51, 0x01, 0x31, 0x51, 0x80, 0x31, 0x71, 0x01, 0x29, 0x71, 0x01, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x0D, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, + 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x85, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x86, 0x21, 0x10, 0x19, 0x10, 0x19, 0x30, 0x19, 0x31, 0x19, 0x52, 0x19, 0x53, 0x19, 0x74, 0x01, 0x11, 0x95, 0x82, 0x09, 0x96, 0x11, 0xF8, 0x11, 0xD7, 0x01, 0x11, 0xB7, 0x82, 0x11, 0xD7, 0x11, 0xD6, 0x11, 0x74, 0x01, 0x11, 0x53, 0x01, 0x19, 0x52, 0x01, 0x19, 0x51, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x19, 0x53, 0x11, 0x33, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xB5, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x19, 0x11, 0x19, 0x32, 0x19, 0x54, 0x19, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x94, 0x09, 0x53, 0x11, 0x52, 0x11, 0x32, 0x04, 0x19, 0x32, 0x80, 0x19, 0x53, 0x01, 0x11, 0x53, 0x83, 0x11, 0x52, 0x11, 0x53, 0x19, 0x73, 0x19, 0x53, 0x01, 0x19, 0x52, 0x82, 0x19, 0x32, 0x19, 0x11, 0x11, 0x11, 0x01, 0x19, 0x31, 0x8E, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x18, 0x19, 0xF8, 0x19, 0xB7, 0x11, 0x75, 0x11, 0x34, 0x19, 0x32, 0x19, 0x52, 0x19, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, + 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x21, 0x0F, 0x02, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x05, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x19, 0x11, 0x83, 0x19, 0x32, 0x19, 0x53, 0x11, 0x75, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x84, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x30, 0x03, 0x21, 0x10, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x29, 0x10, 0x29, 0x30, 0x01, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x04, 0x29, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, + 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x19, 0x31, 0x02, 0x19, 0x32, 0x81, 0x19, 0x52, 0x19, 0x32, 0x05, 0x11, 0x32, 0x05, 0x11, 0x12, 0x80, 0x10, 0xF2, 0x07, 0x11, 0x12, 0x01, 0x09, 0x12, 0x02, 0x11, 0x12, 0x80, 0x09, 0x12, 0x07, 0x11, 0x12, 0x80, 0x11, 0x13, 0x08, 0x11, 0x33, 0x01, 0x11, 0x53, 0x80, 0x11, 0x54, 0x01, 0x11, 0x75, 0x80, 0x11, 0x96, 0x02, 0x11, 0xB7, 0x81, 0x09, 0x97, 0x09, 0x76, 0x01, 0x09, 0x96, 0x84, 0x09, 0x75, 0x01, 0x54, 0x01, 0x34, 0x01, 0x55, 0x09, 0x96, 0x01, 0x19, 0xD7, 0x86, 0x19, 0xB6, 0x19, 0x74, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x83, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x10, 0x21, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x82, 0x29, 0x31, 0x21, 0x11, 0x21, 0x31, 0x02, 0x21, 0x10, 0x01, 0x21, 0x11, 0x82, 0x21, 0x31, 0x21, 0x30, 0x19, + 0x10, 0x04, 0x21, 0x11, 0x83, 0x21, 0x31, 0x19, 0x11, 0x21, 0x31, 0x21, 0x11, 0x04, 0x19, 0x11, 0x88, 0x19, 0x10, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x11, 0x31, 0x11, 0x11, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x81, 0x11, 0xB6, 0x09, 0x96, 0x01, 0x09, 0x76, 0x80, 0x09, 0x96, 0x01, 0x09, 0x75, 0x85, 0x11, 0xD6, 0x1A, 0x17, 0x19, 0xF6, 0x19, 0x95, 0x11, 0x33, 0x19, 0x32, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x08, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x90, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0x8D, 0x51, 0x2F, 0xAB, 0x16, 0xB2, 0xB5, 0xAA, 0x74, 0xAA, 0x53, 0xA2, 0x53, 0x8A, 0x92, 0xE6, 0xFF, 0xC6, 0xDD, 0xBE, 0xFD, 0xB6, 0xFD, 0x01, 0xAE, 0xBC, 0x80, 0xAE, 0xDC, 0x01, 0xA6, 0xDC, 0x80, 0xAE, 0xDC, 0x01, 0xAE, 0xFD, 0x89, 0xB7, 0x1D, 0xBF, 0x1E, 0xD6, 0xFF, 0x94, 0x15, 0x82, 0x30, 0x9A, 0x12, 0xA2, 0x33, 0xB2, 0x33, 0xBA, 0x34, 0xC2, 0x34, 0x04, 0xCA, 0x34, 0x01, 0xD2, 0x34, 0x01, 0xCA, 0x34, 0x86, 0xC2, 0x34, 0xBA, 0x13, 0xAA, 0x73, 0xA3, 0x75, 0xC5, 0x9B, 0xCE, 0xBE, 0xB6, 0xDD, 0x03, 0xAE, 0xDC, 0x08, 0xA6, 0xDC, 0x01, 0xAE, 0xDC, 0x89, 0xAE, 0xFC, 0xB7, 0x1D, 0xC6, 0xFE, 0xCE, 0x7E, 0x83, 0x12, 0x8A, 0x31, 0x9A, 0x12, 0xAA, 0x33, 0xBA, 0x34, 0xC2, 0x34, 0x02, 0xCA, 0x34, 0x02, 0xD2, 0x34, 0x02, 0xCA, 0x34, 0x88, 0xC2, 0x34, 0xC2, 0x33, 0xB2, 0x13, 0xA2, 0x52, 0xB3, 0xF7, 0xCD, 0xDC, 0xC6, 0x9D, 0xB6, 0x9D, 0xB6, + 0xBC, 0x02, 0xAE, 0xDC, 0x03, 0xA6, 0xFC, 0x04, 0xA6, 0xDC, 0x81, 0xA6, 0xFC, 0xAE, 0xFC, 0x01, 0xAE, 0xFD, 0x88, 0xBE, 0xFE, 0xCE, 0x5D, 0x83, 0x12, 0x8A, 0x51, 0xA2, 0x32, 0xAA, 0x53, 0xBA, 0x33, 0xC2, 0x54, 0xCA, 0x54, 0x03, 0xCA, 0x34, 0x80, 0xCA, 0x14, 0x01, 0xCA, 0x34, 0x80, 0xCA, 0x14, 0x01, 0xC2, 0x33, 0x90, 0xBA, 0x33, 0xAA, 0x93, 0xE5, 0xDD, 0xD6, 0x3D, 0xD6, 0x5E, 0xE6, 0x7F, 0x9B, 0x54, 0x89, 0xF0, 0x99, 0xF1, 0xAA, 0x12, 0xB2, 0x33, 0xBA, 0x34, 0xC2, 0x54, 0xCA, 0x54, 0xCA, 0x34, 0xCA, 0x33, 0xCA, 0x34, 0x01, 0xCA, 0x13, 0x03, 0xD2, 0x34, 0x81, 0xCA, 0x34, 0xD2, 0x34, 0x04, 0xCA, 0x14, 0x81, 0xCA, 0x13, 0xCA, 0x14, 0x04, 0xC2, 0x13, 0x03, 0xCA, 0x14, 0x02, 0xCA, 0x34, 0x80, 0xCA, 0x14, 0x03, 0xD2, 0x34, 0x01, 0xCA, 0x14, 0x01, 0xCA, 0x33, 0x8E, 0xCA, 0x34, 0xCA, 0x33, 0xCA, 0x34, 0xC2, 0x34, 0xBA, 0x33, 0xB2, 0x32, 0x9A, 0x72, 0xB4, 0x98, 0xD6, 0x9E, 0xC6, 0xDD, 0xB6, 0xDD, 0xB6, 0xFD, 0xB6, 0xDD, 0xAE, 0xDC, 0xAE, 0xBC, 0x02, 0xAE, 0xDC, 0x8A, 0xAE, 0xFD, 0xAF, 0x1D, 0xB7, 0x1D, 0xBF, 0x1E, 0xD6, 0xDE, 0x82, 0xF2, 0x82, 0x10, 0x9A, 0x11, 0xAA, 0x12, 0xB2, 0x33, 0xBA, 0x53, 0x01, 0xC2, 0x54, 0x03, 0xCA, 0x34, 0x81, 0xD2, 0x34, 0xD2, 0x14, 0x01, 0xD2, 0x34, 0x08, 0xCA, 0x14, 0x02, 0xC2, 0x13, 0x03, 0xCA, 0x14, 0x01, 0xCA, 0x34, 0x01, 0xCA, 0x14, 0x82, 0xCA, 0x34, 0xD2, 0x34, 0xCA, 0x34, 0x01, 0xD2, 0x34, 0x05, 0xCA, 0x34, 0x01, 0xC2, 0x34, 0x89, 0xBA, 0x54, 0xAA, 0x73, 0xEC, 0xBC, 0xED, 0x1D, 0xAA, 0xF5, + 0x99, 0xF1, 0xA1, 0xD1, 0xB2, 0x13, 0xBA, 0x34, 0xC2, 0x34, 0x08, 0xCA, 0x34, 0x86, 0xC2, 0x34, 0xC2, 0x54, 0xB2, 0x12, 0x9A, 0x11, 0xB4, 0x37, 0xDE, 0x9E, 0xCE, 0xBD, 0x01, 0xBE, 0xBD, 0x01, 0xB6, 0xBC, 0x8A, 0xB6, 0xDC, 0xBE, 0xDD, 0xC6, 0xDE, 0xD6, 0x5E, 0x83, 0x12, 0x8A, 0x31, 0x9A, 0x32, 0xAA, 0x33, 0xB2, 0x33, 0xBA, 0x54, 0xC2, 0x54, 0x01, 0xCA, 0x54, 0x04, 0xCA, 0x34, 0x89, 0xCA, 0x14, 0xC2, 0x13, 0xBA, 0x13, 0xB2, 0x12, 0xA2, 0x72, 0xBC, 0xD8, 0xCE, 0x9D, 0xBE, 0xDD, 0xB6, 0xDD, 0xB6, 0xDC, 0x02, 0xAE, 0xDC, 0x01, 0xB7, 0x1D, 0x8A, 0xBF, 0x1E, 0xD6, 0xDF, 0x93, 0x94, 0x82, 0x31, 0x99, 0xF1, 0xA1, 0xD2, 0xB2, 0x33, 0xBA, 0x54, 0xC2, 0x74, 0xCA, 0x74, 0xCA, 0x54, 0x04, 0xCA, 0x34, 0x01, 0xD2, 0x34, 0x80, 0xCA, 0x34, 0x04, 0xCA, 0x14, 0x82, 0xCA, 0x13, 0xCA, 0x14, 0xCA, 0x13, 0x02, 0xC2, 0x13, 0x81, 0xC1, 0xF3, 0xC9, 0xF3, 0x02, 0xC9, 0xF4, 0x02, 0xCA, 0x14, 0x01, 0xCA, 0x34, 0x82, 0xD2, 0x34, 0xCA, 0x34, 0xD2, 0x34, 0x05, 0xCA, 0x34, 0x8D, 0xCA, 0x33, 0xC2, 0x33, 0xBA, 0x53, 0xB2, 0x72, 0xF4, 0xFB, 0xFE, 0x5F, 0xFE, 0x7E, 0xFE, 0x7F, 0xFD, 0xFE, 0xBB, 0x34, 0xB2, 0x32, 0xBA, 0x12, 0xC2, 0x13, 0xCA, 0x13, 0x01, 0xCA, 0x14, 0x80, 0xCA, 0x34, 0x07, 0xD2, 0x34, 0xB3, 0xD2, 0x15, 0xD2, 0x35, 0xCA, 0x36, 0xCA, 0x58, 0xC2, 0x99, 0xAA, 0xDC, 0x40, 0xB7, 0x31, 0x1A, 0x21, 0x5B, 0x19, 0x7C, 0x11, 0x7D, 0x11, 0x9D, 0x11, 0x7D, 0x19, 0x9D, 0x21, 0x9D, 0x29, 0x5C, 0x39, 0x3A, 0x48, 0xD7, 0x91, 0xD9, 0xB2, 0x18, 0xB1, 0xD6, + 0xC1, 0xF6, 0xC1, 0xD5, 0xC1, 0xF5, 0xB9, 0xD5, 0xB1, 0xF5, 0x99, 0xF6, 0x7A, 0x36, 0x5A, 0xF8, 0x54, 0x5C, 0x3D, 0x9F, 0x25, 0xDF, 0x1D, 0x9E, 0x15, 0xBE, 0x0D, 0xBD, 0x0D, 0xFC, 0x06, 0x5A, 0x06, 0xB9, 0x0F, 0x5A, 0x0F, 0x7A, 0x07, 0x7A, 0x0F, 0x9A, 0x17, 0x9A, 0x1F, 0x7B, 0x2F, 0x3C, 0x4E, 0xDC, 0x76, 0x7D, 0x5B, 0xB5, 0x72, 0x73, 0x9A, 0x33, 0xA1, 0xD3, 0xB1, 0xD4, 0x01, 0xA9, 0xB4, 0x8D, 0xA9, 0xD4, 0xB2, 0x15, 0x80, 0xD0, 0x99, 0x93, 0xA1, 0xD4, 0xAA, 0x15, 0xAA, 0x14, 0xAA, 0x35, 0x9A, 0x15, 0x60, 0xD0, 0x50, 0xF0, 0x49, 0x51, 0x41, 0x51, 0x39, 0x71, 0x01, 0x39, 0x51, 0x80, 0x31, 0x51, 0x02, 0x31, 0x71, 0x80, 0x29, 0x51, 0x02, 0x29, 0x50, 0x0D, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x88, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x50, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x30, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x19, 0x73, 0x19, 0x74, 0x11, 0x75, 0x11, 0x96, 0x01, 0x11, 0xD7, 0x83, 0x11, 0xB7, 0x09, 0x96, 0x11, 0xD6, 0x11, 0x95, 0x01, 0x11, 0x53, 0x83, 0x11, 0x32, 0x19, 0x52, 0x19, 0x72, 0x19, 0x51, 0x02, 0x19, 0x31, 0x80, 0x19, 0x32, + 0x01, 0x11, 0x33, 0x8C, 0x19, 0xB6, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x12, 0x19, 0x32, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x19, 0x33, 0x19, 0x74, 0x11, 0x95, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xF6, 0x11, 0xB5, 0x11, 0x74, 0x09, 0x32, 0x01, 0x11, 0x32, 0x02, 0x19, 0x32, 0x80, 0x19, 0x52, 0x01, 0x19, 0x32, 0x03, 0x11, 0x32, 0x80, 0x19, 0x32, 0x01, 0x11, 0x32, 0x01, 0x11, 0x11, 0x01, 0x11, 0x31, 0x8D, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x22, 0x18, 0x21, 0xF8, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x03, 0x29, 0x10, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x30, 0x01, 0x21, 0x10, 0x85, 0x21, 0x11, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x21, 0xD7, 0x01, 0x21, 0xF7, 0x84, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, + 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x03, 0x21, 0x10, 0x85, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x05, 0x29, 0x10, 0x01, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x19, 0x30, 0x02, 0x19, 0x31, 0x85, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x19, 0x73, 0x19, 0x74, 0x11, 0x53, 0x08, 0x19, 0x74, 0x80, 0x19, 0x95, 0x04, 0x19, 0x94, 0x80, 0x19, 0x95, 0x01, 0x19, 0x94, 0x02, 0x19, 0x95, 0x82, 0x19, 0xB5, 0x19, 0x95, 0x19, 0xB5, 0x04, 0x19, 0x95, 0x04, 0x21, 0xB5, 0x81, 0x21, 0xD5, 0x21, 0xD6, 0x02, 0x21, 0xB5, 0x01, 0x21, 0xD6, 0x80, 0x19, 0xD5, 0x01, 0x19, 0xB5, 0x85, 0x19, 0xB6, 0x19, 0x95, 0x19, 0xB5, 0x11, 0x95, 0x11, 0x96, 0x11, 0xB6, 0x01, 0x11, 0xB7, 0x82, 0x11, 0xD7, 0x11, 0xD8, 0x09, 0x97, 0x01, 0x09, 0x76, 0x81, 0x09, 0x96, 0x09, 0x75, 0x01, 0x01, 0x34, 0x89, 0x09, 0x55, 0x11, 0xB7, 0x19, 0xF8, 0x19, 0xD7, 0x21, 0xD7, 0x19, 0x95, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x02, 0x21, + 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x87, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x02, 0x21, 0x11, 0x82, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x01, 0x18, 0xF1, 0x01, 0x19, 0x11, 0x81, 0x11, 0x11, 0x10, 0xF1, 0x01, 0x19, 0x11, 0x80, 0x10, 0xF1, 0x01, 0x19, 0x11, 0x80, 0x11, 0x11, 0x06, 0x10, 0xF1, 0x80, 0x10, 0xF0, 0x02, 0x08, 0xF0, 0x84, 0x08, 0xF1, 0x09, 0x32, 0x11, 0x74, 0x11, 0xB5, 0x11, 0xB6, 0x02, 0x11, 0xB7, 0x80, 0x09, 0x96, 0x01, 0x01, 0x55, 0x01, 0x09, 0x75, 0x01, 0x09, 0x96, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xB5, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x0B, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x90, 0x29, 0x2F, 0x29, 0x0F, 0x28, 0xEE, 0x30, 0x8D, 0x51, 0x2F, 0xAB, 0x16, 0xB2, 0x94, 0xAA, 0x53, 0xAA, 0x33, 0xA2, 0x32, 0x8A, 0x71, 0xEF, 0x1F, 0xCE, 0xFD, 0xBE, 0xDD, 0xBE, 0xFD, 0xB6, 0xBC, 0xAE, 0xDC, 0x04, 0xAE, 0xFC, 0x8A, 0xB6, 0xFD, 0xB7, 0x1D, 0xC7, + 0x1E, 0xD7, 0x1F, 0x9C, 0x36, 0x7A, 0x10, 0x92, 0x12, 0xA2, 0x12, 0xB2, 0x33, 0xBA, 0x54, 0xC2, 0x54, 0x02, 0xCA, 0x54, 0x02, 0xD2, 0x54, 0x80, 0xD2, 0x34, 0x01, 0xCA, 0x34, 0x87, 0xC2, 0x54, 0xBA, 0x53, 0xAA, 0x73, 0xAB, 0xB5, 0xCD, 0xBB, 0xCE, 0xBE, 0xBE, 0xDD, 0xB6, 0xDC, 0x02, 0xAE, 0xDC, 0x80, 0xA6, 0xDC, 0x01, 0xAE, 0xDC, 0x03, 0xA6, 0xDC, 0x02, 0xAE, 0xDC, 0x8A, 0xAE, 0xFC, 0xB6, 0xFC, 0xB7, 0x1D, 0xC7, 0x1E, 0xD6, 0x9E, 0x83, 0x12, 0x8A, 0x51, 0x9A, 0x12, 0xAA, 0x53, 0xBA, 0x54, 0xC2, 0x54, 0x01, 0xCA, 0x54, 0x02, 0xD2, 0x54, 0x01, 0xD2, 0x34, 0x01, 0xCA, 0x34, 0x88, 0xC2, 0x34, 0xC2, 0x54, 0xBA, 0x33, 0xAA, 0x93, 0xBC, 0x78, 0xD6, 0x3D, 0xC6, 0x9D, 0xBE, 0xDD, 0xB6, 0xDC, 0x01, 0xAE, 0xDC, 0x03, 0xAE, 0xFC, 0x81, 0xA6, 0xFC, 0xAE, 0xFC, 0x01, 0xA6, 0xDC, 0x81, 0xA6, 0xFC, 0xA6, 0xDC, 0x02, 0xAE, 0xFC, 0x88, 0xB6, 0xFD, 0xBE, 0xDD, 0xCE, 0x5D, 0x83, 0x12, 0x8A, 0x51, 0xA2, 0x32, 0xAA, 0x53, 0xBA, 0x54, 0xC2, 0x54, 0x02, 0xCA, 0x54, 0x03, 0xCA, 0x34, 0x81, 0xCA, 0x54, 0xCA, 0x34, 0x01, 0xC2, 0x33, 0x8A, 0xBA, 0x33, 0xAA, 0xB3, 0xED, 0xFE, 0xDE, 0x1E, 0xE6, 0x3E, 0xCD, 0x3B, 0x79, 0xCF, 0x91, 0xF1, 0xA2, 0x12, 0xB2, 0x53, 0xBA, 0x54, 0x01, 0xC2, 0x54, 0x80, 0xCA, 0x74, 0x01, 0xCA, 0x54, 0x01, 0xCA, 0x34, 0x02, 0xD2, 0x54, 0x03, 0xD2, 0x34, 0x01, 0xCA, 0x34, 0x01, 0xCA, 0x14, 0x83, 0xC2, 0x13, 0xC2, 0x33, 0xBA, 0x33, 0xBA, 0x32, 0x01, 0xB2, 0x32, 0x80, 0xB2, 0x12, 0x01, 0xBA, 0x13, 0x81, 0xC2, 0x13, 0xC2, 0x34, + 0x04, 0xCA, 0x34, 0x82, 0xD2, 0x54, 0xD2, 0x55, 0xD2, 0x54, 0x02, 0xD2, 0x34, 0x02, 0xCA, 0x34, 0x02, 0xCA, 0x54, 0x89, 0xC2, 0x54, 0xBA, 0x33, 0xAA, 0x52, 0x9A, 0xF3, 0xDD, 0xDD, 0xCE, 0xBE, 0xBE, 0xFD, 0xBE, 0xDD, 0xB6, 0xFD, 0xB6, 0xDC, 0x03, 0xAE, 0xDC, 0x8D, 0xB6, 0xFC, 0xB7, 0x1D, 0xBF, 0x1D, 0xCF, 0x1E, 0xBD, 0x9B, 0x71, 0xCE, 0x91, 0xF1, 0xA2, 0x32, 0xB2, 0x53, 0xBA, 0x53, 0xBA, 0x54, 0xC2, 0x74, 0xCA, 0x74, 0xCA, 0x54, 0x01, 0xCA, 0x34, 0x80, 0xD2, 0x54, 0x07, 0xD2, 0x34, 0x02, 0xCA, 0x34, 0x01, 0xC2, 0x33, 0x01, 0xBA, 0x33, 0x01, 0xBA, 0x13, 0x80, 0xC2, 0x13, 0x04, 0xCA, 0x34, 0x84, 0xCA, 0x14, 0xD2, 0x34, 0xD2, 0x55, 0xD2, 0x34, 0xD2, 0x54, 0x01, 0xD2, 0x34, 0x05, 0xCA, 0x54, 0x01, 0xC2, 0x54, 0x86, 0xBA, 0x74, 0xC3, 0x16, 0xF5, 0x1D, 0xB3, 0x15, 0x99, 0xF1, 0xA1, 0xF2, 0xB2, 0x13, 0x01, 0xC2, 0x54, 0x82, 0xC2, 0x34, 0xCA, 0x54, 0xCA, 0x34, 0x01, 0xCA, 0x54, 0x83, 0xD2, 0x54, 0xCA, 0x34, 0xCA, 0x55, 0xCA, 0x54, 0x01, 0xC2, 0x54, 0x87, 0xBA, 0x13, 0xA2, 0x32, 0xB4, 0x57, 0xDE, 0x9E, 0xCE, 0xBD, 0xC6, 0xFD, 0xBE, 0xBC, 0xB6, 0xBC, 0x01, 0xB6, 0xDC, 0x87, 0xBE, 0xDD, 0xC6, 0xDD, 0xD6, 0x7E, 0x83, 0x12, 0x8A, 0x51, 0x9A, 0x32, 0xAA, 0x33, 0xB2, 0x53, 0x01, 0xC2, 0x54, 0x06, 0xCA, 0x54, 0x80, 0xCA, 0x34, 0x01, 0xC2, 0x33, 0x84, 0xBA, 0x33, 0xAA, 0xD3, 0xBC, 0xF9, 0xD6, 0xBD, 0xC6, 0xDD, 0x04, 0xB6, 0xDC, 0x88, 0xB7, 0x1D, 0xBF, 0x1D, 0xC6, 0xFE, 0xC5, 0xFC, 0x7A, 0x30, 0x91, 0xF1, 0x99, 0xF2, 0xA9, 0xF2, 0xBA, + 0x33, 0x01, 0xC2, 0x74, 0x80, 0xCA, 0x74, 0x02, 0xCA, 0x54, 0x02, 0xD2, 0x54, 0x81, 0xCA, 0x34, 0xD2, 0x54, 0x03, 0xCA, 0x34, 0x88, 0xCA, 0x13, 0xCA, 0x34, 0xCA, 0x33, 0xC2, 0x33, 0xBA, 0x33, 0xBA, 0x32, 0xB2, 0x32, 0xB2, 0x12, 0xBA, 0x12, 0x01, 0xC2, 0x13, 0x80, 0xCA, 0x13, 0x01, 0xCA, 0x14, 0x03, 0xCA, 0x34, 0x04, 0xD2, 0x54, 0x81, 0xCA, 0x54, 0xD2, 0x54, 0x02, 0xCA, 0x54, 0x85, 0xC2, 0x33, 0xC2, 0x53, 0xBA, 0x73, 0xB2, 0xF3, 0xFE, 0x7F, 0xFE, 0x7E, 0x01, 0xFE, 0x9E, 0x88, 0xFE, 0x3E, 0xBB, 0x74, 0xAA, 0x11, 0xBA, 0x12, 0xC1, 0xF3, 0xC9, 0xF3, 0xCA, 0x13, 0xCA, 0x14, 0xD2, 0x14, 0x06, 0xD2, 0x34, 0x89, 0xCA, 0x14, 0xCA, 0x15, 0xCA, 0x36, 0xC2, 0x58, 0xBA, 0x79, 0xAA, 0xDC, 0x40, 0xB7, 0x29, 0x1A, 0x21, 0x5B, 0x19, 0x7C, 0x03, 0x11, 0x7D, 0x87, 0x21, 0x9D, 0x29, 0x9D, 0x31, 0x3A, 0x40, 0xF8, 0x71, 0x78, 0xA2, 0x19, 0xA9, 0xB6, 0xB9, 0xF6, 0x01, 0xC1, 0xD5, 0xA1, 0xB9, 0xD5, 0xB1, 0xF6, 0xA1, 0xF6, 0x82, 0x37, 0x62, 0xD8, 0x4B, 0xDB, 0x45, 0x7F, 0x2D, 0xDF, 0x1D, 0xBE, 0x15, 0xBE, 0x0D, 0xDD, 0x0D, 0xFC, 0x06, 0x5A, 0x06, 0xDA, 0x07, 0x3A, 0x07, 0x59, 0x0F, 0x7A, 0x0F, 0x9A, 0x17, 0x7A, 0x1F, 0x5B, 0x37, 0x5C, 0x4E, 0xFD, 0x76, 0x7D, 0x5B, 0xD6, 0x7A, 0x73, 0x9A, 0x13, 0xAA, 0x14, 0xA9, 0xD4, 0xA9, 0xB3, 0xA9, 0xB4, 0xA9, 0xB3, 0xA1, 0x93, 0x80, 0xAF, 0xA1, 0xF4, 0x01, 0xA1, 0xD4, 0x86, 0xA1, 0xF4, 0x99, 0xF4, 0x9A, 0x35, 0x61, 0x10, 0x51, 0x10, 0x41, 0x30, 0x41, 0x71, 0x01, 0x39, 0x71, 0x81, 0x39, 0x51, 0x39, 0x71, + 0x01, 0x31, 0x51, 0x01, 0x29, 0x51, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x50, 0x08, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x05, 0x29, 0x30, 0x07, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x96, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x19, 0x52, 0x19, 0x73, 0x11, 0x54, 0x11, 0x75, 0x11, 0xD7, 0x11, 0xD8, 0x09, 0xB7, 0x11, 0xB7, 0x11, 0x95, 0x09, 0x54, 0x11, 0x53, 0x11, 0x52, 0x19, 0x52, 0x19, 0x51, 0x19, 0x71, 0x19, 0x51, 0x19, 0x10, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x19, 0x53, 0x11, 0x33, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x83, 0x19, 0x95, 0x11, 0x12, 0x11, 0x11, 0x21, 0x31, 0x03, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8B, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x74, 0x11, 0xB6, 0x11, 0xD6, 0x19, 0xF7, 0x19, 0xF6, 0x11, 0xB5, 0x09, 0x33, 0x11, 0x33, 0x01, 0x11, 0x32, 0x85, 0x19, 0x32, 0x19, 0x52, 0x19, 0x53, 0x19, 0x52, 0x19, 0x32, 0x11, 0x32, 0x02, 0x11, 0x31, 0x01, 0x19, 0x32, 0x02, 0x11, 0x32, 0x8D, 0x11, 0x52, 0x11, 0x53, 0x11, 0x33, 0x11, 0x74, 0x11, 0x95, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x75, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x21, 0x31, + 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x05, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x86, 0x21, 0x11, 0x19, 0x31, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB6, 0x21, 0xF7, 0x01, 0x21, 0xD7, 0x85, 0x19, 0x95, 0x19, 0x74, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x10, 0x29, 0x30, 0x02, 0x21, 0x10, 0x84, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, + 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x10, 0x02, 0x29, 0x10, 0x03, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x01, 0x19, 0x31, 0x85, 0x19, 0x11, 0x19, 0x12, 0x11, 0x32, 0x19, 0x53, 0x19, 0xB5, 0x21, 0xF6, 0x01, 0x2A, 0x37, 0x81, 0x32, 0x57, 0x2A, 0x57, 0x01, 0x32, 0x58, 0x01, 0x32, 0x78, 0x80, 0x3A, 0x78, 0x02, 0x32, 0x58, 0x02, 0x32, 0x78, 0x08, 0x32, 0x58, 0x80, 0x32, 0x78, 0x01, 0x32, 0x58, 0x81, 0x2A, 0x37, 0x32, 0x58, 0x01, 0x2A, 0x58, 0x01, 0x32, 0x58, 0x86, 0x2A, 0x37, 0x32, 0x58, 0x2A, 0x38, 0x32, 0x38, 0x2A, 0x37, 0x32, 0x38, 0x2A, 0x38, 0x01, 0x2A, 0x37, 0x02, 0x2A, 0x17, 0x01, 0x22, 0x17, 0x81, 0x21, 0xF7, 0x21, 0xF6, 0x01, 0x19, 0xD6, 0x81, 0x19, 0xD7, 0x11, 0xB6, 0x01, 0x11, 0xD7, 0x92, 0x11, 0xB7, 0x11, 0xD7, 0x09, 0x96, 0x09, 0x76, 0x09, 0x55, 0x01, 0x55, 0x09, 0x55, 0x01, 0x34, 0x09, 0x54, 0x09, 0x55, 0x19, 0xB7, 0x19, 0xD8, 0x21, 0xF8, 0x21, 0xF7, 0x19, 0x74, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, + 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x51, 0x82, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x82, 0x11, 0x12, 0x10, 0xF2, 0x08, 0xF2, 0x02, 0x09, 0x12, 0x80, 0x08, 0xF2, 0x02, 0x11, 0x12, 0x02, 0x09, 0x12, 0x02, 0x08, 0xF2, 0x04, 0x09, 0x12, 0x84, 0x09, 0x32, 0x09, 0x53, 0x09, 0x73, 0x11, 0x94, 0x11, 0xB5, 0x01, 0x11, 0xB6, 0x83, 0x11, 0x96, 0x11, 0x97, 0x09, 0x96, 0x09, 0x76, 0x03, 0x01, 0x55, 0x01, 0x09, 0x75, 0x86, 0x11, 0xF7, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x8C, 0x29, 0x2F, 0x29, 0x0F, 0x28, 0xEE, 0x28, 0x8D, 0x51, 0x0F, 0xAA, 0xF6, 0xB2, 0x94, 0xAA, 0x53, 0xAA, 0x33, 0xA2, 0x32, 0x8A, 0x71, 0xEF, 0x1F, 0xCE, 0xFD, 0x01, 0xC6, 0xFD, 0x01, 0xB6, 0xDC, 0x81, 0xB6, 0xFC, 0xB7, 0x1C, 0x02, 0xAE, 0xFC, 0x89, 0xB7, 0x1D, 0xBF, 0x1D, 0xC7, 0x1E, 0xDF, 0x3F, 0x94, 0x15, 0x7A, 0x10, 0x92, 0x11, 0xA2, 0x32, 0xB2, 0x53, 0xC2, 0x74, 0x01, 0xCA, 0x74, 0x01, 0xCA, 0x54, 0x82, 0xD2, 0x54, 0xD2, 0x75, 0xD2, 0x54, 0x02, 0xCA, 0x54, 0x86, 0xC2, 0x74, 0xBA, 0x74, 0xAA, 0x93, 0xAB, 0xD5, 0xCD, 0xDB, 0xCE, 0xDE, + 0xC7, 0x1D, 0x02, 0xB6, 0xFC, 0x05, 0xAE, 0xFC, 0x01, 0xAE, 0xDC, 0x81, 0xAE, 0xFC, 0xAE, 0xDC, 0x01, 0xAE, 0xFC, 0x8A, 0xB7, 0x1C, 0xBF, 0x1D, 0xC7, 0x1D, 0xD6, 0x9E, 0x83, 0x12, 0x8A, 0x51, 0x9A, 0x32, 0xAA, 0x53, 0xBA, 0x54, 0xC2, 0x54, 0xCA, 0x74, 0x01, 0xCA, 0x54, 0x03, 0xD2, 0x54, 0x81, 0xCA, 0x54, 0xCA, 0x34, 0x01, 0xC2, 0x54, 0x87, 0xBA, 0x53, 0xAA, 0xB3, 0xC4, 0xB9, 0xD6, 0x7D, 0xCE, 0xDD, 0xBE, 0xFD, 0xB6, 0xFC, 0xB6, 0xDC, 0x06, 0xAE, 0xFC, 0x01, 0xAE, 0xDC, 0x02, 0xAE, 0xFC, 0x01, 0xB7, 0x1C, 0x89, 0xBF, 0x1D, 0xC6, 0xDD, 0xD6, 0x7E, 0x83, 0x12, 0x8A, 0x51, 0x9A, 0x32, 0xAA, 0x53, 0xBA, 0x54, 0xC2, 0x74, 0xCA, 0x74, 0x02, 0xCA, 0x54, 0x01, 0xD2, 0x55, 0x90, 0xD2, 0x54, 0xD2, 0x74, 0xCA, 0x54, 0xC2, 0x54, 0xC2, 0x53, 0xBA, 0x53, 0xB2, 0xD4, 0xED, 0xFE, 0xE5, 0xFE, 0xE5, 0xDE, 0x9A, 0xF3, 0x92, 0x11, 0x99, 0xF1, 0xB2, 0x53, 0xBA, 0x74, 0xC2, 0x74, 0xC2, 0x54, 0x01, 0xCA, 0x74, 0x01, 0xCA, 0x54, 0x05, 0xD2, 0x54, 0x03, 0xCA, 0x34, 0x80, 0xCA, 0x54, 0x01, 0xC2, 0x53, 0x89, 0xB2, 0x52, 0xAA, 0x72, 0xB2, 0xD2, 0xC3, 0xB5, 0xD4, 0x58, 0xE4, 0xB9, 0xD4, 0x37, 0xB2, 0xD3, 0xA2, 0x31, 0xB2, 0x32, 0x01, 0xBA, 0x33, 0x01, 0xC2, 0x54, 0x02, 0xCA, 0x54, 0x06, 0xD2, 0x54, 0x04, 0xCA, 0x54, 0x87, 0xC2, 0x74, 0xB2, 0x53, 0xA2, 0x72, 0xA3, 0x95, 0xE6, 0xFF, 0xCE, 0xDD, 0xBE, 0xDD, 0xBE, 0xFC, 0x03, 0xB6, 0xDC, 0x8B, 0xB6, 0xFC, 0xB7, 0x1D, 0xBF, 0x1D, 0xC7, 0x1E, 0xD6, 0xFF, 0x8B, 0x93, 0x82, 0x10, 0x99, 0xF1, 0xAA, 0x33, + 0xB2, 0x53, 0xBA, 0x74, 0xC2, 0x74, 0x01, 0xCA, 0x74, 0x82, 0xD2, 0x74, 0xD2, 0x54, 0xD2, 0x74, 0x03, 0xD2, 0x54, 0x83, 0xD2, 0x34, 0xD2, 0x54, 0xD2, 0x34, 0xD2, 0x54, 0x01, 0xCA, 0x54, 0x88, 0xC2, 0x74, 0xBA, 0x73, 0xB2, 0x92, 0xAA, 0x92, 0xBB, 0x54, 0xCB, 0xD6, 0xCB, 0xB6, 0xAA, 0x51, 0xB2, 0x52, 0x01, 0xBA, 0x33, 0x81, 0xC2, 0x34, 0xCA, 0x34, 0x01, 0xCA, 0x54, 0x02, 0xD2, 0x55, 0x80, 0xD2, 0x54, 0x01, 0xD2, 0x55, 0x82, 0xD2, 0x75, 0xCA, 0x54, 0xD2, 0x54, 0x01, 0xCA, 0x54, 0x01, 0xCA, 0x74, 0x01, 0xC2, 0x74, 0x85, 0xB2, 0x74, 0xEC, 0x5B, 0xBB, 0x16, 0x99, 0xD1, 0xA1, 0xF2, 0xB2, 0x33, 0x01, 0xC2, 0x54, 0x02, 0xCA, 0x54, 0x01, 0xD2, 0x54, 0x01, 0xD2, 0x74, 0x80, 0xCA, 0x75, 0x01, 0xCA, 0x74, 0x86, 0xC2, 0x54, 0xBA, 0x33, 0xA2, 0x52, 0xB4, 0x57, 0xDE, 0xBE, 0xCE, 0xDE, 0xC6, 0xFD, 0x01, 0xBE, 0xDC, 0x8A, 0xBE, 0xFD, 0xBE, 0xFC, 0xBE, 0xFD, 0xCE, 0xDD, 0xD6, 0x7E, 0x83, 0x12, 0x8A, 0x51, 0x9A, 0x32, 0xAA, 0x33, 0xB2, 0x53, 0xC2, 0x74, 0x02, 0xCA, 0x74, 0x81, 0xCA, 0x54, 0xD2, 0x54, 0x03, 0xCA, 0x54, 0x95, 0xCA, 0x34, 0xC2, 0x33, 0xBA, 0x53, 0xA2, 0xB3, 0xBC, 0xF9, 0xCE, 0x9D, 0xC6, 0xDD, 0xBE, 0xFD, 0xBE, 0xFC, 0xB6, 0xFC, 0xB6, 0xDC, 0xB6, 0xFC, 0xBF, 0x1D, 0xC7, 0x1D, 0xCE, 0xDE, 0x8B, 0xD4, 0x82, 0x31, 0x91, 0xD1, 0xA1, 0xF2, 0xB2, 0x53, 0xC2, 0x74, 0xCA, 0x94, 0x02, 0xCA, 0x74, 0x81, 0xD2, 0x74, 0xCA, 0x74, 0x04, 0xD2, 0x54, 0x01, 0xCA, 0x54, 0x01, 0xCA, 0x34, 0x8C, 0xCA, 0x53, 0xC2, 0x53, 0xBA, 0x72, 0xB2, 0x92, + 0xBB, 0x13, 0xCB, 0xD6, 0xDC, 0x78, 0xDC, 0x37, 0xAA, 0xB2, 0xAA, 0x31, 0xB2, 0x12, 0xBA, 0x13, 0xC2, 0x13, 0x01, 0xCA, 0x34, 0x03, 0xCA, 0x54, 0x80, 0xD2, 0x54, 0x01, 0xCA, 0x54, 0x02, 0xD2, 0x74, 0x80, 0xCA, 0x54, 0x02, 0xCA, 0x74, 0x84, 0xC2, 0x74, 0xC2, 0x73, 0xAA, 0x72, 0xED, 0x7C, 0xFE, 0x9E, 0x01, 0xF6, 0xBE, 0x85, 0xFE, 0x9E, 0xFE, 0x5E, 0xC3, 0x95, 0xAA, 0x11, 0xB9, 0xF2, 0xC1, 0xF3, 0x01, 0xC9, 0xF3, 0x01, 0xCA, 0x14, 0x01, 0xD2, 0x14, 0x80, 0xCA, 0x13, 0x03, 0xD2, 0x14, 0x8A, 0xC9, 0xF5, 0xCA, 0x36, 0xC2, 0x37, 0xBA, 0x79, 0xAA, 0xBC, 0x40, 0xB7, 0x29, 0x1A, 0x21, 0x5B, 0x19, 0x7D, 0x19, 0x9D, 0x11, 0x9D, 0x01, 0x11, 0x7D, 0xA4, 0x19, 0x7D, 0x29, 0x9D, 0x29, 0x5B, 0x39, 0x19, 0x60, 0xF7, 0x91, 0x98, 0xA9, 0xD7, 0xB9, 0xF7, 0xC1, 0xF6, 0xC1, 0xF5, 0xB9, 0xD5, 0xB1, 0xF6, 0xA1, 0xF6, 0x8A, 0x37, 0x6A, 0xB8, 0x53, 0x9A, 0x4D, 0x5F, 0x35, 0xDF, 0x25, 0xDE, 0x15, 0xBE, 0x15, 0xDD, 0x0E, 0x1C, 0x06, 0x5A, 0x06, 0xB9, 0x0F, 0x3A, 0x0F, 0x7A, 0x0F, 0x79, 0x0F, 0x7A, 0x17, 0x7A, 0x27, 0x7B, 0x37, 0x3C, 0x4E, 0xFD, 0x76, 0x5D, 0x53, 0x95, 0x7A, 0x93, 0x9A, 0x33, 0xA1, 0xF4, 0x03, 0xA9, 0xD4, 0x83, 0xA1, 0x93, 0x78, 0xAF, 0x99, 0xD4, 0xA2, 0x15, 0x01, 0xA1, 0xF4, 0x86, 0xA2, 0x15, 0x91, 0xF5, 0x61, 0x11, 0x51, 0x31, 0x41, 0x10, 0x39, 0x31, 0x41, 0x92, 0x01, 0x39, 0x71, 0x80, 0x31, 0x31, 0x02, 0x31, 0x51, 0x80, 0x29, 0x30, 0x02, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x0B, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, + 0x29, 0x30, 0x04, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x88, 0x19, 0x52, 0x19, 0x53, 0x11, 0x53, 0x09, 0x55, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xB7, 0x11, 0xB6, 0x11, 0x95, 0x01, 0x11, 0x53, 0x80, 0x11, 0x31, 0x01, 0x19, 0x31, 0x80, 0x19, 0x51, 0x03, 0x19, 0x31, 0x83, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x83, 0x21, 0xB6, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x11, 0x12, 0x11, 0x53, 0x11, 0x95, 0x11, 0xB6, 0x01, 0x19, 0xF7, 0x82, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x54, 0x01, 0x11, 0x33, 0x81, 0x11, 0x32, 0x19, 0x53, 0x09, 0x11, 0x32, 0x03, 0x11, 0x53, 0x81, 0x09, 0x54, 0x11, 0xB5, 0x01, 0x19, 0xF7, 0x83, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x75, 0x11, 0x53, 0x01, 0x11, 0x12, 0x80, 0x19, 0x31, 0x01, 0x21, 0x51, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x05, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x30, + 0x21, 0x0F, 0x02, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x85, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x21, 0xF7, 0x01, 0x21, 0xD7, 0x85, 0x19, 0x75, 0x19, 0x74, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x87, 0x21, 0x0F, 0x20, 0xEF, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x20, 0xEF, 0x29, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x29, 0x50, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x19, 0x12, 0x19, 0x33, 0x19, 0x94, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x80, 0x21, 0xF7, 0x01, 0x2A, 0x17, 0x01, 0x22, + 0x17, 0x05, 0x21, 0xF6, 0x03, 0x21, 0xD6, 0x81, 0x21, 0xD5, 0x21, 0xD6, 0x01, 0x21, 0xD5, 0x02, 0x21, 0xD6, 0x80, 0x21, 0xF6, 0x04, 0x21, 0xD6, 0x81, 0x21, 0xF6, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x06, 0x21, 0xD6, 0x01, 0x19, 0xB6, 0x01, 0x21, 0xD6, 0x01, 0x19, 0xD6, 0x01, 0x21, 0xD6, 0x84, 0x21, 0xF6, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0xF6, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xF8, 0x11, 0xF8, 0x11, 0xD7, 0x09, 0x96, 0x09, 0x76, 0x01, 0x09, 0x55, 0x84, 0x09, 0x54, 0x09, 0x34, 0x01, 0x34, 0x09, 0x55, 0x11, 0x96, 0x01, 0x19, 0xD7, 0x85, 0x21, 0xD6, 0x11, 0x54, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x31, 0x84, 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x74, 0x01, 0x11, 0xB5, 0x09, 0x11, 0x95, 0x01, 0x19, 0xB5, 0x87, 0x19, 0xB6, 0x11, 0xB6, 0x19, 0xB6, 0x19, 0xD6, 0x19, + 0xF7, 0x19, 0xD6, 0x19, 0xF7, 0x1A, 0x17, 0x01, 0x11, 0xD6, 0x82, 0x11, 0xF6, 0x09, 0xD6, 0x11, 0xF7, 0x01, 0x11, 0xD7, 0x81, 0x11, 0xB7, 0x09, 0x97, 0x02, 0x09, 0x76, 0x01, 0x01, 0x55, 0x80, 0x01, 0x35, 0x01, 0x01, 0x55, 0x86, 0x09, 0x75, 0x11, 0xF7, 0x1A, 0x18, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x12, 0x19, 0x31, 0x03, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x05, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x84, 0x28, 0xEE, 0x30, 0x8D, 0x51, 0x0F, 0xAA, 0xF6, 0xB2, 0x94, 0x01, 0xAA, 0x33, 0x85, 0xA2, 0x32, 0x8A, 0x51, 0xF7, 0x3F, 0xD7, 0x3E, 0xCF, 0x1D, 0xC7, 0x1D, 0x01, 0xB6, 0xDC, 0x80, 0xB6, 0xFC, 0x01, 0xB7, 0x1C, 0x01, 0xB6, 0xFC, 0x8B, 0xB7, 0x1C, 0xBF, 0x3D, 0xCF, 0x3E, 0xDF, 0x3F, 0x93, 0xF5, 0x7A, 0x10, 0x91, 0xF1, 0xA2, 0x32, 0xB2, 0x73, 0xC2, 0x94, 0xCA, 0x94, 0xCA, 0x74, 0x01, 0xD2, 0x74, 0x8C, 0xD2, 0x75, 0xD2, 0x95, 0xD2, 0x75, 0xD2, 0x54, 0xCA, 0x54, 0xCA, 0x75, 0xCA, 0x95, 0xBA, 0x74, 0xAA, 0x93, 0xB3, 0xF5, 0xCD, 0xFB, 0xCE, 0xFD, 0xC7, 0x1D, 0x01, 0xBE, 0xFC, 0x04, 0xB6, 0xFC, 0x04, 0xAE, 0xFC, 0x03, 0xB6, 0xFC, 0x88, 0xBF, 0x1C, 0xCF, 0x1D, 0xD6, 0x9E, 0x83, 0x12, 0x8A, 0x31, 0x9A, 0x12, 0xAA, 0x53, 0xBA, 0x74, 0xC2, 0x74, 0x01, 0xCA, 0x74, 0x02, 0xD2, 0x74, 0x01, 0xD2, 0x54, 0x80, 0xD2, 0x74, 0x01, 0xCA, 0x74, 0x87, 0xC2, 0x74, 0xBA, 0x73, 0xAA, 0xB3, 0xC4, 0xD9, 0xD6, 0x9D, 0xCE, 0xFD, 0xC7, 0x1D, 0xBE, 0xFC, 0x03, 0xB6, 0xFC, 0x05, 0xAE, 0xFC, 0x02, 0xB6, 0xFC, 0x8A, 0xB7, 0x1C, 0xBF, + 0x1C, 0xBF, 0x1D, 0xCE, 0xFE, 0xD6, 0x7E, 0x83, 0x12, 0x8A, 0x51, 0x9A, 0x32, 0xAA, 0x53, 0xBA, 0x74, 0xC2, 0x74, 0x01, 0xCA, 0x75, 0x01, 0xD2, 0x75, 0x80, 0xD2, 0x55, 0x01, 0xD2, 0x75, 0x8E, 0xD2, 0x74, 0xCA, 0x74, 0xCA, 0x54, 0xC2, 0x53, 0xBA, 0x73, 0xBB, 0x14, 0xF5, 0xFE, 0xE5, 0xDD, 0xD4, 0xDB, 0x8A, 0x31, 0x91, 0xF1, 0xA2, 0x12, 0xB2, 0x74, 0xC2, 0x74, 0xC2, 0x94, 0x01, 0xCA, 0x74, 0x81, 0xD2, 0x74, 0xCA, 0x54, 0x06, 0xD2, 0x74, 0x03, 0xCA, 0x54, 0x85, 0xC2, 0x73, 0xBA, 0x73, 0xB2, 0xF3, 0xCC, 0x57, 0xE5, 0xBA, 0xFE, 0xBD, 0x01, 0xF6, 0xDD, 0x01, 0xF6, 0xBD, 0x85, 0xEE, 0x3C, 0xDD, 0x5A, 0xB3, 0x54, 0xA2, 0x31, 0xB2, 0x12, 0xBA, 0x13, 0x01, 0xC2, 0x54, 0x83, 0xCA, 0x54, 0xCA, 0x75, 0xCA, 0x74, 0xD2, 0x54, 0x02, 0xD2, 0x74, 0x80, 0xD2, 0x94, 0x02, 0xD2, 0x74, 0x03, 0xCA, 0x74, 0x88, 0xC2, 0x94, 0xB2, 0x73, 0x9A, 0xB2, 0xD5, 0xBB, 0xD6, 0xDE, 0xCE, 0xFD, 0xC7, 0x1C, 0xBE, 0xFC, 0xB6, 0xFC, 0x01, 0xB6, 0xDC, 0x8E, 0xB6, 0xFC, 0xBF, 0x1D, 0xC7, 0x3D, 0xCF, 0x1E, 0xD6, 0x7D, 0x7A, 0xB0, 0x8A, 0x10, 0xA2, 0x12, 0xB2, 0x53, 0xBA, 0x74, 0xC2, 0x74, 0xCA, 0x94, 0xCA, 0x95, 0xD2, 0x94, 0xCA, 0x74, 0x01, 0xD2, 0x74, 0x80, 0xD2, 0x94, 0x01, 0xD2, 0x74, 0x81, 0xD2, 0x75, 0xD2, 0x55, 0x01, 0xD2, 0x54, 0x91, 0xCA, 0x54, 0xC2, 0x54, 0xC2, 0x93, 0xBA, 0xD3, 0xC3, 0xF5, 0xF5, 0xFB, 0xFE, 0xFF, 0xFE, 0xFE, 0xF6, 0xDD, 0xFE, 0xBE, 0xFE, 0x7E, 0xCC, 0x57, 0xAA, 0x92, 0xAA, 0x32, 0xBA, 0x33, 0xC2, 0x34, 0xCA, 0x74, 0xCA, 0x75, 0x09, + 0xD2, 0x75, 0x81, 0xCA, 0x74, 0xD2, 0x95, 0x01, 0xCA, 0x75, 0x89, 0xC2, 0x95, 0xC2, 0x94, 0xC3, 0x16, 0xBA, 0xF5, 0x99, 0xD1, 0xA1, 0xF1, 0xB2, 0x33, 0xC2, 0x74, 0xCA, 0x74, 0xCA, 0x95, 0x01, 0xD2, 0x95, 0x01, 0xD2, 0x75, 0x8B, 0xD2, 0x74, 0xD2, 0x75, 0xD2, 0x95, 0xCA, 0x95, 0xCA, 0x74, 0xC2, 0x74, 0xBA, 0x53, 0xA2, 0x72, 0xB4, 0x57, 0xE6, 0xDF, 0xD6, 0xFE, 0xC6, 0xFD, 0x01, 0xBE, 0xDC, 0x01, 0xBE, 0xFD, 0x8B, 0xC6, 0xFD, 0xCE, 0xFD, 0xDE, 0x9E, 0x8B, 0x32, 0x8A, 0x51, 0x9A, 0x32, 0xAA, 0x33, 0xB2, 0x53, 0xC2, 0x74, 0xCA, 0x95, 0xCA, 0x94, 0xCA, 0x74, 0x04, 0xD2, 0x74, 0x01, 0xCA, 0x54, 0x86, 0xC2, 0x53, 0xBA, 0x73, 0xAA, 0xD3, 0xC5, 0x19, 0xCE, 0x9D, 0xC6, 0xFD, 0xBF, 0x1D, 0x01, 0xBE, 0xFC, 0x8B, 0xB6, 0xFC, 0xBE, 0xFC, 0xBF, 0x1D, 0xCE, 0xFE, 0xCE, 0x1C, 0x7A, 0xB1, 0x89, 0xF0, 0x99, 0xF1, 0xAA, 0x33, 0xBA, 0x74, 0xCA, 0xB5, 0xCA, 0x95, 0x01, 0xCA, 0x94, 0x80, 0xD2, 0x94, 0x04, 0xD2, 0x74, 0x02, 0xD2, 0x54, 0x87, 0xCA, 0x74, 0xCA, 0x54, 0xCA, 0x73, 0xBA, 0x93, 0xB2, 0xD2, 0xCC, 0x16, 0xF5, 0xFB, 0xFE, 0xDE, 0x01, 0xF6, 0xDD, 0x89, 0xFE, 0xDD, 0xFE, 0xBE, 0xD4, 0xF8, 0xA2, 0xB1, 0xAA, 0x31, 0xB2, 0x12, 0xC2, 0x13, 0xC2, 0x34, 0xC2, 0x54, 0xCA, 0x54, 0x02, 0xCA, 0x74, 0x07, 0xD2, 0x74, 0x8E, 0xCA, 0x74, 0xCA, 0x94, 0xC2, 0x94, 0xBA, 0xB3, 0xBB, 0x95, 0xFE, 0x7E, 0xF6, 0xBE, 0xF6, 0xDE, 0xF6, 0xDD, 0xFE, 0xBE, 0xFE, 0x9E, 0xCB, 0xF6, 0xAA, 0x11, 0xB9, 0xF2, 0xC1, 0xF2, 0x04, 0xC9, 0xF3, 0x90, 0xCA, 0x13, 0xCA, 0x14, + 0xC9, 0xF4, 0xD2, 0x14, 0xCA, 0x14, 0xCA, 0x15, 0xCA, 0x16, 0xC2, 0x37, 0xBA, 0x59, 0xAA, 0xBC, 0x40, 0xD7, 0x29, 0x1A, 0x21, 0x5C, 0x21, 0x9D, 0x19, 0x9D, 0x11, 0x9E, 0x11, 0x9D, 0x01, 0x11, 0x7D, 0x86, 0x19, 0x7D, 0x21, 0x5C, 0x31, 0x19, 0x61, 0x79, 0x91, 0xD9, 0x99, 0x96, 0xB9, 0xF7, 0x01, 0xC1, 0xF6, 0x8F, 0xB9, 0xF5, 0xB1, 0xD5, 0xA1, 0xD5, 0x92, 0x16, 0x7A, 0x98, 0x5B, 0x7B, 0x4D, 0x3E, 0x35, 0xBF, 0x25, 0xBE, 0x1D, 0xDD, 0x15, 0xDD, 0x0E, 0x1C, 0x06, 0x7A, 0x06, 0xB9, 0x07, 0x19, 0x07, 0x59, 0x01, 0x0F, 0x7A, 0x88, 0x17, 0x7A, 0x27, 0x5B, 0x37, 0x3C, 0x4E, 0xDD, 0x76, 0x5E, 0x5B, 0xD6, 0x7A, 0x93, 0x9A, 0x53, 0xAA, 0x34, 0x03, 0xA9, 0xD4, 0x91, 0x91, 0x52, 0x78, 0xD0, 0x99, 0xB3, 0xA2, 0x14, 0xAA, 0x35, 0xAA, 0x15, 0xA2, 0x35, 0x89, 0xB4, 0x58, 0x8F, 0x59, 0x51, 0x41, 0x10, 0x39, 0x10, 0x39, 0x31, 0x41, 0x72, 0x39, 0x71, 0x39, 0x51, 0x31, 0x51, 0x31, 0x31, 0x01, 0x31, 0x51, 0x80, 0x31, 0x50, 0x01, 0x29, 0x50, 0x03, 0x29, 0x30, 0x82, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x06, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x09, + 0x54, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0xB6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x52, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x19, 0x51, 0x8E, 0x19, 0x30, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x11, 0x85, 0x11, 0x32, 0x11, 0x53, 0x11, 0x95, 0x19, 0xB6, 0x19, 0xF6, 0x19, 0xD6, 0x01, 0x11, 0xB5, 0x83, 0x11, 0x94, 0x11, 0x54, 0x11, 0x53, 0x09, 0x33, 0x06, 0x11, 0x32, 0x81, 0x11, 0x53, 0x11, 0x32, 0x02, 0x09, 0x33, 0x82, 0x09, 0x74, 0x11, 0x95, 0x11, 0xB6, 0x01, 0x19, 0xF7, 0x8C, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x21, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x19, 0x11, 0x89, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0xD6, 0x21, 0xD7, 0x19, 0x95, 0x19, + 0x53, 0x11, 0x12, 0x01, 0x19, 0x31, 0x81, 0x19, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x30, 0x02, 0x21, 0x10, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x81, 0x29, 0x51, 0x21, 0x31, 0x01, 0x19, 0x11, 0x82, 0x19, 0x12, 0x19, 0x33, 0x19, 0x95, 0x02, 0x21, 0xF7, 0x83, 0x21, 0xF6, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x95, 0x01, 0x11, 0x74, 0x80, 0x11, 0x94, 0x05, 0x11, 0x74, 0x81, 0x11, 0x53, 0x11, 0x73, 0x01, 0x11, 0x74, 0x80, 0x11, 0x53, 0x02, 0x11, 0x74, 0x85, 0x11, 0x54, 0x11, 0x74, 0x11, 0x54, 0x19, 0x74, 0x19, 0x54, 0x11, 0x54, 0x01, 0x19, 0x54, 0x05, 0x11, 0x74, 0x07, 0x19, 0x74, 0x81, 0x19, 0x94, 0x19, 0x74, 0x01, 0x19, 0x94, 0x03, 0x19, 0x95, 0x01, 0x19, 0xB5, 0x88, 0x19, 0xB6, 0x19, 0xD6, 0x11, 0xD7, 0x19, 0xD7, 0x19, 0xF7, 0x11, 0xD7, 0x11, + 0x96, 0x09, 0x76, 0x01, 0x35, 0x01, 0x01, 0x34, 0x82, 0x09, 0x34, 0x09, 0x55, 0x11, 0x96, 0x01, 0x19, 0xB7, 0x83, 0x19, 0x95, 0x11, 0x53, 0x19, 0x52, 0x19, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x0A, 0x21, 0x0F, 0x84, 0x29, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x21, 0x51, 0x01, 0x19, 0x31, 0x01, 0x11, 0x32, 0x83, 0x11, 0x53, 0x19, 0xD5, 0x22, 0x17, 0x22, 0x18, 0x01, 0x22, 0x38, 0x02, 0x22, 0x59, 0x81, 0x22, 0x58, 0x22, 0x59, 0x01, 0x22, 0x38, 0x83, 0x22, 0x58, 0x2A, 0x58, 0x22, 0x38, 0x22, 0x58, 0x03, 0x22, 0x38, 0x80, 0x1A, 0x17, 0x02, 0x1A, 0x38, 0x82, 0x12, 0x18, 0x1A, 0x38, 0x11, 0xF7, 0x01, 0x12, 0x17, 0x02, 0x11, 0xF7, 0x84, 0x11, 0xD7, 0x11, 0xB7, 0x09, 0x96, 0x09, 0x76, 0x01, 0x55, 0x03, 0x01, 0x35, 0x01, 0x01, 0x55, 0x86, 0x11, 0xD7, 0x1A, 0x38, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x0B, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x8C, 0x30, 0xEF, 0x30, 0x8D, 0x51, 0x0F, 0xB2, 0xF6, 0xB2, + 0x94, 0xAA, 0x53, 0xAA, 0x32, 0xA2, 0x12, 0x8A, 0x51, 0xF7, 0x3F, 0xDF, 0x3D, 0xD7, 0x5D, 0xC7, 0x1C, 0x01, 0xBE, 0xFC, 0x01, 0xB6, 0xFC, 0x02, 0xB7, 0x1C, 0x8C, 0xBF, 0x1C, 0xC7, 0x5D, 0xCF, 0x5E, 0xE7, 0x5F, 0x93, 0xF4, 0x7A, 0x10, 0x92, 0x11, 0xA2, 0x32, 0xB2, 0x73, 0xC2, 0x94, 0xCA, 0xB5, 0xCA, 0x94, 0xD2, 0x94, 0x03, 0xD2, 0x95, 0x01, 0xD2, 0x75, 0x87, 0xCA, 0x95, 0xCA, 0xB5, 0xC2, 0x94, 0xAA, 0xB3, 0xB3, 0xF5, 0xD6, 0x1B, 0xD6, 0xFD, 0xC7, 0x1C, 0x02, 0xBF, 0x1C, 0x80, 0xBE, 0xFC, 0x08, 0xB7, 0x1C, 0x80, 0xB6, 0xFB, 0x01, 0xBF, 0x1C, 0x8A, 0xC7, 0x3C, 0xCF, 0x3D, 0xDE, 0xBD, 0x83, 0x12, 0x82, 0x51, 0x9A, 0x11, 0xAA, 0x53, 0xBA, 0x74, 0xC2, 0x74, 0xCA, 0x94, 0xCA, 0x74, 0x01, 0xD2, 0x74, 0x80, 0xD2, 0x94, 0x01, 0xD2, 0x74, 0x80, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x86, 0xC2, 0x94, 0xBA, 0x94, 0xAA, 0xD3, 0xCD, 0x19, 0xDE, 0xBD, 0xCE, 0xFD, 0xC6, 0xFC, 0x01, 0xBE, 0xFC, 0x01, 0xB7, 0x1C, 0x80, 0xB6, 0xFC, 0x02, 0xB7, 0x1C, 0x01, 0xB6, 0xFC, 0x01, 0xB7, 0x1C, 0x01, 0xB7, 0x1B, 0x01, 0xBF, 0x3C, 0x88, 0xC7, 0x3D, 0xD7, 0x1E, 0xDE, 0x9D, 0x8B, 0x12, 0x8A, 0x51, 0x9A, 0x32, 0xAA, 0x73, 0xBA, 0x74, 0xC2, 0x95, 0x01, 0xCA, 0x95, 0x80, 0xD2, 0x95, 0x02, 0xD2, 0x75, 0x01, 0xD2, 0x95, 0x01, 0xCA, 0x74, 0x8A, 0xCA, 0x94, 0xC2, 0xB4, 0xC3, 0x35, 0xF5, 0xBE, 0xF5, 0xDE, 0xA2, 0xD3, 0x91, 0xF1, 0x99, 0xF1, 0xAA, 0x33, 0xBA, 0x94, 0xC2, 0x94, 0x01, 0xCA, 0x94, 0x81, 0xD2, 0x95, 0xCA, 0x74, 0x01, 0xD2, 0x74, 0x80, 0xD2, 0x94, 0x04, + 0xD2, 0x74, 0x02, 0xCA, 0x74, 0x86, 0xC2, 0x93, 0xBA, 0xB3, 0xBB, 0x33, 0xDD, 0x39, 0xF6, 0x9D, 0xEE, 0xDC, 0xE6, 0xFC, 0x01, 0xDE, 0xFB, 0x8A, 0xDF, 0x1B, 0xDE, 0xFB, 0xE6, 0xDC, 0xEE, 0xBC, 0xF6, 0x5D, 0xD4, 0xB8, 0x9A, 0x51, 0xA2, 0x11, 0xB2, 0x33, 0xBA, 0x74, 0xC2, 0x74, 0x03, 0xCA, 0x74, 0x80, 0xD2, 0x74, 0x06, 0xD2, 0x94, 0x87, 0xCA, 0x74, 0xCA, 0x94, 0xCA, 0xB4, 0xBA, 0x73, 0xAA, 0xB3, 0xA3, 0x94, 0xDE, 0x9E, 0xD6, 0xFD, 0x01, 0xC7, 0x1C, 0x02, 0xBE, 0xFC, 0x80, 0xBF, 0x1C, 0x01, 0xC7, 0x3D, 0x8A, 0xD7, 0x1E, 0xCD, 0xDB, 0x7A, 0x2F, 0x92, 0x11, 0xA2, 0x12, 0xB2, 0x73, 0xBA, 0x74, 0xCA, 0x94, 0xCA, 0x95, 0xD2, 0x95, 0xD2, 0xB5, 0x03, 0xD2, 0x94, 0x03, 0xD2, 0x74, 0x01, 0xCA, 0x74, 0x93, 0xC2, 0x74, 0xBA, 0x93, 0xBB, 0x13, 0xDC, 0xD8, 0xF6, 0x7C, 0xEE, 0xFC, 0xE6, 0xFC, 0xDE, 0xDB, 0xDE, 0xFB, 0xE6, 0xDB, 0xEE, 0xFD, 0xF6, 0xDD, 0xE5, 0x7A, 0xA2, 0x91, 0xAA, 0x32, 0xB2, 0x33, 0xC2, 0x74, 0xCA, 0x74, 0xCA, 0x75, 0xCA, 0x74, 0x02, 0xD2, 0x75, 0x04, 0xD2, 0x95, 0x80, 0xCA, 0x95, 0x01, 0xD2, 0x95, 0x01, 0xCA, 0x95, 0x89, 0xC2, 0x95, 0xC2, 0xB5, 0xBA, 0xD5, 0x99, 0xD1, 0xA1, 0xF1, 0xB2, 0x53, 0xC2, 0x94, 0xCA, 0xB5, 0xCA, 0x95, 0xD2, 0xB5, 0x05, 0xD2, 0x95, 0x88, 0xCA, 0x95, 0xCA, 0x94, 0xC2, 0x94, 0xBA, 0x73, 0xAA, 0x92, 0xBC, 0x57, 0xE6, 0xDE, 0xD6, 0xFE, 0xCF, 0x1D, 0x01, 0xC6, 0xFC, 0x02, 0xC7, 0x1D, 0x87, 0xD6, 0xFD, 0xDE, 0x9E, 0x8B, 0x32, 0x8A, 0x51, 0x9A, 0x32, 0xAA, 0x53, 0xB2, 0x73, 0xC2, 0x94, 0x01, 0xCA, + 0x94, 0x03, 0xD2, 0x94, 0x02, 0xD2, 0x74, 0x86, 0xCA, 0x74, 0xC2, 0x74, 0xBA, 0x73, 0xAA, 0xF3, 0xC5, 0x39, 0xD6, 0xDD, 0xCE, 0xFD, 0x02, 0xBE, 0xFC, 0x89, 0xBF, 0x1C, 0xBF, 0x1D, 0xC7, 0x1D, 0xD6, 0xFE, 0xAC, 0xB8, 0x7A, 0x30, 0x89, 0xF1, 0x99, 0xF1, 0xB2, 0x73, 0xC2, 0x94, 0x01, 0xCA, 0xB5, 0x80, 0xCA, 0x95, 0x05, 0xD2, 0x94, 0x81, 0xD2, 0x74, 0xD2, 0x94, 0x01, 0xD2, 0x74, 0x01, 0xCA, 0x94, 0x87, 0xBA, 0xB3, 0xB2, 0xF2, 0xE5, 0x39, 0xF6, 0x9D, 0xEE, 0xDC, 0xE6, 0xFC, 0xE7, 0x1C, 0xDF, 0x1C, 0x01, 0xE6, 0xFC, 0x87, 0xF6, 0xDD, 0xF5, 0xFC, 0xAB, 0x12, 0xA2, 0x31, 0xB2, 0x12, 0xBA, 0x33, 0xC2, 0x54, 0xC2, 0x74, 0x02, 0xCA, 0x94, 0x03, 0xD2, 0x95, 0x83, 0xD2, 0x74, 0xD2, 0x94, 0xD2, 0x95, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x84, 0xC2, 0xB4, 0xBA, 0xB3, 0xB3, 0x13, 0xF5, 0xFD, 0xFE, 0xBE, 0x01, 0xF6, 0xFD, 0x88, 0xF6, 0xDD, 0xFE, 0xDE, 0xFE, 0x9E, 0xD4, 0x17, 0xA2, 0x10, 0xB1, 0xF1, 0xB9, 0xD2, 0xC1, 0xD2, 0xC1, 0xD3, 0x02, 0xC9, 0xF3, 0x81, 0xC9, 0xF4, 0xC9, 0xF3, 0x01, 0xCA, 0x14, 0x8B, 0xCA, 0x15, 0xCA, 0x16, 0xC2, 0x37, 0xBA, 0x59, 0xAA, 0xBC, 0x40, 0xD7, 0x29, 0x1A, 0x21, 0x5B, 0x19, 0x7D, 0x19, 0x9D, 0x11, 0xBE, 0x11, 0x9E, 0x01, 0x11, 0x9D, 0xA4, 0x11, 0x5C, 0x19, 0x5C, 0x31, 0x3A, 0x59, 0x5A, 0x89, 0xDA, 0xA1, 0xD8, 0xB1, 0xF7, 0xB9, 0xF6, 0xC2, 0x16, 0xB9, 0xF5, 0xB1, 0xD5, 0xA1, 0xD5, 0x92, 0x16, 0x7A, 0x58, 0x63, 0x19, 0x4C, 0xBC, 0x3D, 0xBE, 0x2D, 0xDE, 0x1D, 0xBD, 0x1D, 0xDD, 0x16, 0x1C, 0x0E, 0x9A, 0x06, 0xB9, + 0x07, 0x39, 0x07, 0x59, 0x07, 0x79, 0x0F, 0x7A, 0x17, 0x7A, 0x27, 0x5B, 0x37, 0x3C, 0x56, 0xDD, 0x76, 0x5D, 0x5B, 0xB5, 0x7A, 0x93, 0x9A, 0x54, 0xA2, 0x13, 0xA9, 0xF4, 0x01, 0xA9, 0xD4, 0x8E, 0xA9, 0xF5, 0x81, 0x11, 0x78, 0xD0, 0x99, 0xD4, 0xAA, 0x35, 0xA1, 0xF4, 0xA2, 0x14, 0xA2, 0x15, 0x89, 0xB4, 0x50, 0x6E, 0x51, 0x31, 0x49, 0x51, 0x39, 0x10, 0x39, 0x31, 0x39, 0x51, 0x01, 0x39, 0x72, 0x02, 0x31, 0x51, 0x80, 0x31, 0x50, 0x01, 0x29, 0x50, 0x04, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x85, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x86, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x89, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x54, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xB7, 0x11, 0xB6, 0x11, 0x74, 0x01, 0x11, 0x32, 0x01, 0x19, 0x31, 0x82, 0x19, 0x30, 0x21, 0x51, 0x19, 0x50, 0x01, 0x19, 0x30, 0x81, 0x19, 0x31, 0x19, 0x32, 0x01, 0x11, 0x33, 0x80, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x85, 0x19, 0x95, 0x11, 0x12, 0x19, 0x32, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, + 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x11, 0x53, 0x11, 0x95, 0x19, 0xB6, 0x19, 0xD6, 0x01, 0x19, 0xF6, 0x01, 0x11, 0xB5, 0x85, 0x11, 0x75, 0x11, 0x54, 0x11, 0x53, 0x09, 0x33, 0x11, 0x33, 0x11, 0x53, 0x02, 0x11, 0x33, 0x02, 0x09, 0x33, 0x84, 0x09, 0x54, 0x11, 0x75, 0x11, 0xB5, 0x19, 0xF7, 0x1A, 0x17, 0x01, 0x19, 0xF7, 0x83, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x01, 0x11, 0x11, 0x81, 0x19, 0x11, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x05, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x86, 0x19, 0x10, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x21, 0xF7, 0x84, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x02, 0x19, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, + 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x81, 0x21, 0x10, 0x29, 0x10, 0x08, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x09, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x88, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x19, 0x10, 0x18, 0xF1, 0x19, 0x12, 0x19, 0x33, 0x19, 0x95, 0x21, 0xF7, 0x01, 0x21, 0xD7, 0x82, 0x19, 0xB6, 0x19, 0x75, 0x11, 0x54, 0x01, 0x11, 0x33, 0x83, 0x09, 0x33, 0x09, 0x12, 0x09, 0x32, 0x09, 0x12, 0x09, 0x11, 0x32, 0x80, 0x11, 0x52, 0x03, 0x11, 0x32, 0x85, 0x11, 0x12, 0x19, 0x33, 0x11, 0x33, 0x11, 0x12, 0x11, 0x32, 0x19, 0x33, 0x01, 0x11, 0x12, 0x80, 0x11, 0x32, 0x0B, 0x11, 0x12, 0x80, 0x11, 0x33, 0x02, 0x11, 0x12, 0x80, 0x11, 0x13, 0x04, 0x11, 0x33, 0x86, 0x11, 0x34, 0x11, 0x55, 0x11, 0x75, 0x11, 0x96, 0x11, 0xB6, 0x11, 0xB7, 0x11, 0xD7, 0x02, 0x09, 0x75, 0x88, 0x11, 0x96, 0x19, 0xB7, 0x19, 0xF7, 0x19, 0xB7, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x33, 0x19, 0x32, 0x21, 0x51, 0x01, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x11, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x20, 0xEF, 0x09, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x21, + 0x31, 0x19, 0x31, 0x01, 0x19, 0x52, 0x82, 0x11, 0x53, 0x11, 0x74, 0x19, 0xF6, 0x02, 0x1A, 0x17, 0x01, 0x19, 0xF7, 0x81, 0x22, 0x38, 0x1A, 0x18, 0x08, 0x19, 0xF7, 0x80, 0x19, 0xD7, 0x04, 0x19, 0xF7, 0x88, 0x11, 0xF7, 0x11, 0xD7, 0x11, 0xF7, 0x12, 0x17, 0x11, 0xF7, 0x12, 0x17, 0x11, 0xF7, 0x09, 0xD7, 0x09, 0xB7, 0x02, 0x11, 0xD7, 0x82, 0x09, 0xB7, 0x09, 0x96, 0x09, 0x76, 0x01, 0x01, 0x35, 0x80, 0x09, 0x55, 0x01, 0x01, 0x55, 0x87, 0x09, 0x76, 0x11, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x11, 0x74, 0x11, 0x12, 0x19, 0x31, 0x19, 0x30, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x0C, 0x29, 0x2F, 0x91, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x28, 0xEF, 0x30, 0x8D, 0x51, 0x0F, 0xB2, 0xF6, 0xB2, 0x74, 0xAA, 0x33, 0xAA, 0x12, 0xA2, 0x12, 0x8A, 0x30, 0xFF, 0x5F, 0xDF, 0x5D, 0xD7, 0x5D, 0xCF, 0x3C, 0x01, 0xBE, 0xFC, 0x80, 0xBF, 0x1C, 0x01, 0xBF, 0x1B, 0x8C, 0xB7, 0x1B, 0xBF, 0x1B, 0xC7, 0x3C, 0xC7, 0x5D, 0xD7, 0x7E, 0xE7, 0x5F, 0x93, 0xD4, 0x7A, 0x30, 0x92, 0x11, 0xA2, 0x52, 0xB2, 0x94, 0xC2, 0xB4, 0xCA, 0xB5, 0x05, 0xD2, 0xB5, 0x80, 0xD2, 0x95, 0x01, 0xD2, 0xB5, 0x86, 0xCA, 0xD5, 0xC2, 0xB4, 0xB2, 0xD3, 0xB4, 0x15, 0xD6, 0x1B, 0xD7, 0x1D, 0xCF, 0x3C, 0x01, 0xC7, 0x1C, 0x03, 0xBF, 0x1C, 0x02, 0xBF, 0x1B, 0x80, 0xBF, 0x1C, 0x01, 0xBF, 0x1B, 0x80, 0xBF, 0x3C, 0x01, 0xBF, 0x1B, 0x8F, 0xC7, 0x3C, 0xC7, 0x5C, 0xD7, 0x3D, 0xDE, 0xBD, 0x83, 0x31, 0x82, 0x50, 0x92, 0x31, 0xAA, 0x73, 0xBA, 0x94, 0xC2, 0x94, 0xCA, 0x94, 0xD2, 0xB5, + 0xD2, 0x95, 0xD2, 0xB5, 0xD2, 0x94, 0xD2, 0x95, 0x01, 0xD2, 0x94, 0x8B, 0xCA, 0xB4, 0xCA, 0xB5, 0xCA, 0xB4, 0xC2, 0xB4, 0xB2, 0xF3, 0xCD, 0x39, 0xDE, 0xBD, 0xD7, 0x1D, 0xCF, 0x1C, 0xC7, 0x1C, 0xBF, 0x1C, 0xBF, 0x1B, 0x05, 0xBF, 0x1C, 0x04, 0xBF, 0x1B, 0x80, 0xBF, 0x3B, 0x01, 0xC7, 0x3C, 0x89, 0xD7, 0x3E, 0xDE, 0x9D, 0x8B, 0x12, 0x8A, 0x51, 0x9A, 0x11, 0xAA, 0x53, 0xBA, 0x94, 0xC2, 0x94, 0xCA, 0xB5, 0xCA, 0x95, 0x05, 0xD2, 0x95, 0x01, 0xCA, 0x94, 0x89, 0xCA, 0xB4, 0xC2, 0xD4, 0xC3, 0x15, 0xFD, 0x7D, 0xCC, 0x38, 0x89, 0xD0, 0x99, 0xF1, 0xA2, 0x12, 0xBA, 0x74, 0xC2, 0x94, 0x01, 0xCA, 0xB5, 0x80, 0xD2, 0xD5, 0x01, 0xD2, 0x95, 0x01, 0xD2, 0xB5, 0x85, 0xD2, 0x95, 0xD2, 0x94, 0xD2, 0x95, 0xD2, 0x94, 0xD2, 0x95, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x87, 0xC2, 0x94, 0xB2, 0x92, 0xBB, 0xB4, 0xED, 0xDB, 0xF6, 0xDD, 0xE6, 0xFC, 0xDF, 0x1C, 0xDF, 0x1B, 0x01, 0xD7, 0x1B, 0x8A, 0xD7, 0x1A, 0xDF, 0x3B, 0xDF, 0x1B, 0xDE, 0xDB, 0xE6, 0xBB, 0xF6, 0xBD, 0xDD, 0x59, 0x9A, 0xB1, 0xA2, 0x31, 0xB2, 0x33, 0xBA, 0x74, 0x01, 0xC2, 0x94, 0x80, 0xCA, 0x94, 0x01, 0xD2, 0x94, 0x02, 0xD2, 0xB5, 0x80, 0xD2, 0x94, 0x01, 0xD2, 0xB5, 0x8B, 0xD2, 0x94, 0xCA, 0x94, 0xCA, 0xB4, 0xCA, 0xD5, 0xC2, 0x94, 0xB2, 0x93, 0xA3, 0x13, 0xD5, 0x9B, 0xDE, 0xFE, 0xCF, 0x1D, 0xCF, 0x1C, 0xC7, 0x1C, 0x01, 0xC6, 0xFC, 0x01, 0xC7, 0x3D, 0x88, 0xCF, 0x5D, 0xE7, 0x3F, 0xAC, 0x36, 0x82, 0x0F, 0x92, 0x11, 0xA2, 0x32, 0xBA, 0x74, 0xC2, 0x94, 0xCA, 0xB5, 0x04, 0xD2, 0xB5, 0x03, 0xD2, + 0x94, 0x8C, 0xD2, 0x95, 0xD2, 0x94, 0xCA, 0x94, 0xC2, 0x94, 0xBA, 0xB3, 0xC3, 0x74, 0xED, 0xBA, 0xEE, 0x7C, 0xEE, 0xFC, 0xDE, 0xFB, 0xD6, 0xDA, 0xD6, 0xFB, 0xD7, 0x1B, 0x01, 0xDF, 0x1B, 0x88, 0xE6, 0xFC, 0xEE, 0xDD, 0xDD, 0x7A, 0x9A, 0x70, 0xA2, 0x11, 0xAA, 0x12, 0xBA, 0x53, 0xC2, 0x74, 0xCA, 0x95, 0x07, 0xD2, 0x95, 0x03, 0xD2, 0xB5, 0x80, 0xCA, 0xB5, 0x01, 0xC2, 0x94, 0x80, 0xBA, 0x94, 0x01, 0xA1, 0xF1, 0x81, 0xB2, 0x53, 0xC2, 0x94, 0x01, 0xCA, 0xB5, 0x02, 0xD2, 0xB5, 0x01, 0xD2, 0x95, 0x01, 0xD2, 0xB5, 0x01, 0xCA, 0xB5, 0x86, 0xCA, 0xB4, 0xBA, 0x93, 0xAA, 0x92, 0xBC, 0x77, 0xEE, 0xDE, 0xDF, 0x1D, 0xCF, 0x1D, 0x01, 0xC6, 0xFC, 0x01, 0xC7, 0x1C, 0x89, 0xCF, 0x1C, 0xD7, 0x1D, 0xDE, 0x9E, 0x8B, 0x32, 0x8A, 0x51, 0x9A, 0x31, 0xAA, 0x52, 0xB2, 0x73, 0xC2, 0xB4, 0xCA, 0xB5, 0x03, 0xD2, 0xB5, 0x03, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x85, 0xC2, 0xB3, 0xAA, 0xF3, 0xCD, 0x59, 0xDE, 0xDD, 0xD7, 0x1D, 0xCF, 0x1D, 0x01, 0xC6, 0xFC, 0x89, 0xC7, 0x3C, 0xC7, 0x3D, 0xCF, 0x3D, 0xDF, 0x1F, 0x93, 0x73, 0x81, 0xF0, 0x91, 0xF1, 0xA2, 0x12, 0xBA, 0x94, 0xC2, 0xB5, 0x01, 0xCA, 0xD5, 0x81, 0xCA, 0xB5, 0xD2, 0xB5, 0x01, 0xD2, 0xB4, 0x01, 0xD2, 0xB5, 0x8B, 0xD2, 0x95, 0xD2, 0x94, 0xD2, 0x95, 0xD2, 0x94, 0xCA, 0x74, 0xCA, 0x94, 0xC2, 0xB3, 0xB3, 0x12, 0xFE, 0x1C, 0xFE, 0xDD, 0xEE, 0xFC, 0xE7, 0x1C, 0x04, 0xDF, 0x1B, 0x86, 0xE6, 0xFC, 0xEE, 0xFD, 0xFF, 0x1F, 0xAB, 0x32, 0x9A, 0x10, 0xAA, 0x12, 0xB2, 0x33, 0x01, 0xC2, 0x94, 0x81, 0xCA, 0x94, 0xCA, + 0xB5, 0x01, 0xD2, 0x95, 0x80, 0xD2, 0xB5, 0x01, 0xD2, 0x95, 0x80, 0xD2, 0x94, 0x02, 0xD2, 0xB5, 0x01, 0xCA, 0xB4, 0x84, 0xC2, 0xD4, 0xAA, 0xD3, 0xE5, 0x5A, 0xFE, 0xBE, 0xF6, 0xFD, 0x01, 0xEE, 0xFD, 0x88, 0xF6, 0xFD, 0xFE, 0xDD, 0xFE, 0xBE, 0xCC, 0x16, 0xA2, 0x10, 0xB1, 0xD1, 0xB9, 0xD2, 0xC1, 0xB3, 0xC1, 0xD3, 0x01, 0xC9, 0xD3, 0x01, 0xC9, 0xF3, 0x8C, 0xC9, 0xF4, 0xCA, 0x14, 0xCA, 0x15, 0xC2, 0x16, 0xBA, 0x17, 0xBA, 0x59, 0xAA, 0xDC, 0x40, 0xD7, 0x29, 0x1A, 0x21, 0x5B, 0x19, 0x5C, 0x11, 0x7D, 0x11, 0xBE, 0x01, 0x09, 0x9E, 0x88, 0x11, 0x9D, 0x11, 0x5C, 0x19, 0x5C, 0x29, 0x3B, 0x49, 0x3A, 0x71, 0x99, 0xA2, 0x19, 0xB2, 0x18, 0xB9, 0xF7, 0x01, 0xBA, 0x16, 0x8D, 0xB2, 0x16, 0xA9, 0xF6, 0x9A, 0x16, 0x82, 0x17, 0x62, 0x97, 0x54, 0x3B, 0x4D, 0x9E, 0x35, 0xFE, 0x25, 0xFE, 0x1D, 0xDD, 0x15, 0xFB, 0x06, 0x7A, 0x06, 0xD9, 0x07, 0x19, 0x02, 0x0F, 0x79, 0x88, 0x17, 0x7A, 0x27, 0x7B, 0x37, 0x1C, 0x4E, 0xBC, 0x76, 0x5D, 0x5B, 0xB5, 0x7A, 0x93, 0x9A, 0x53, 0xAA, 0x34, 0x02, 0xA9, 0xF4, 0x8E, 0xA1, 0xF4, 0x78, 0xD0, 0x79, 0x11, 0x89, 0x72, 0xB2, 0x76, 0xAA, 0x15, 0xAA, 0x35, 0xA2, 0x35, 0x91, 0xF4, 0x58, 0x8F, 0x48, 0xEF, 0x51, 0x71, 0x41, 0x30, 0x39, 0x10, 0x31, 0x10, 0x02, 0x39, 0x51, 0x84, 0x31, 0x51, 0x31, 0x50, 0x29, 0x30, 0x31, 0x50, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, + 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x88, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0xB6, 0x11, 0xF7, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x54, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x01, 0x19, 0x30, 0x80, 0x19, 0x51, 0x02, 0x19, 0x30, 0x8A, 0x19, 0x51, 0x19, 0x52, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x01, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB5, 0x01, 0x19, 0xD6, 0x81, 0x19, 0xF7, 0x19, 0xD6, 0x03, 0x11, 0x95, 0x01, 0x11, 0x74, 0x02, 0x11, 0x54, 0x01, 0x11, 0x75, 0x01, 0x11, 0x96, 0x80, 0x19, 0xB7, 0x01, 0x19, 0xD7, 0x84, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0xB5, 0x19, 0x94, 0x11, 0x53, 0x01, 0x11, 0x32, 0x80, 0x11, 0x11, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x03, + 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x19, 0x11, 0x83, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x01, 0x22, 0x17, 0x88, 0x21, 0xD7, 0x19, 0x75, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x18, 0xF0, 0x21, 0x10, 0x21, 0x30, 0x21, 0x50, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x50, 0x05, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x10, 0x21, 0x0F, 0x09, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x11, 0x11, 0x19, 0x33, 0x19, 0x75, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x81, + 0x19, 0xB6, 0x11, 0x54, 0x02, 0x11, 0x33, 0x06, 0x11, 0x32, 0x03, 0x11, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x31, 0x01, 0x11, 0x31, 0x08, 0x19, 0x32, 0x80, 0x19, 0x12, 0x02, 0x19, 0x32, 0x80, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x19, 0x12, 0x02, 0x19, 0x11, 0x04, 0x19, 0x12, 0x82, 0x11, 0x12, 0x19, 0x32, 0x11, 0x11, 0x03, 0x11, 0x12, 0x81, 0x11, 0x32, 0x11, 0x12, 0x01, 0x11, 0x33, 0x01, 0x11, 0x34, 0x81, 0x19, 0x75, 0x19, 0xB6, 0x01, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x82, 0x19, 0xD7, 0x19, 0xF7, 0x21, 0xF8, 0x01, 0x19, 0xD7, 0x86, 0x19, 0x95, 0x19, 0x74, 0x19, 0x52, 0x19, 0x31, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x87, 0x19, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x53, 0x11, 0x94, 0x22, 0x17, 0x01, 0x1A, 0x17, 0x01, 0x19, 0xD6, 0x82, 0x11, 0xB6, 0x19, 0xB6, 0x11, 0xB6, 0x02, 0x11, 0x95, 0x83, 0x11, 0x75, 0x11, 0x95, 0x11, 0x75, 0x11, 0x95, 0x01, 0x11, 0x74, 0x81, 0x11, 0x95, 0x19, 0x95, 0x02, 0x11, + 0x75, 0x80, 0x11, 0x74, 0x03, 0x11, 0x95, 0x80, 0x09, 0x95, 0x01, 0x11, 0xB5, 0x03, 0x11, 0xB6, 0x85, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0xF8, 0x11, 0xB7, 0x09, 0x76, 0x01, 0x55, 0x02, 0x09, 0x55, 0x81, 0x09, 0x76, 0x11, 0x96, 0x01, 0x19, 0xF7, 0x84, 0x19, 0xD6, 0x11, 0x54, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x0C, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x86, 0x29, 0x0F, 0x28, 0xEE, 0x30, 0x8D, 0x50, 0xEF, 0xAA, 0xD5, 0xB2, 0x74, 0xAA, 0x33, 0x01, 0xA2, 0x12, 0x81, 0x8A, 0x0F, 0xFF, 0x7F, 0x01, 0xDF, 0x5D, 0x80, 0xCF, 0x3C, 0x01, 0xC7, 0x1B, 0x02, 0xBF, 0x1B, 0x8C, 0xBF, 0x3B, 0xC7, 0x3B, 0xC7, 0x3C, 0xCF, 0x7C, 0xD7, 0x7E, 0xE7, 0x1E, 0x8B, 0xB3, 0x7A, 0x2F, 0x92, 0x11, 0xA2, 0x52, 0xB2, 0x94, 0xC2, 0xD4, 0xCA, 0xD5, 0x02, 0xD2, 0xD5, 0x04, 0xD2, 0xB5, 0x86, 0xCA, 0xB5, 0xCA, 0xD5, 0xC2, 0xB4, 0xB2, 0xF3, 0xB4, 0x15, 0xDE, 0x3B, 0xDF, 0x1D, 0x01, 0xCF, 0x3C, 0x83, 0xC7, 0x3C, 0xC7, 0x1B, 0xC7, 0x1C, 0xC7, 0x1B, 0x01, 0xBF, 0x1B, 0x82, 0xBF, 0x3B, 0xBF, 0x1B, 0xBF, 0x3B, 0x01, 0xBF, 0x1B, 0x01, 0xBF, 0x3B, 0x8B, 0xC7, 0x3B, 0xC7, 0x3C, 0xCF, 0x5C, 0xD7, 0x5D, 0xDE, 0xDE, 0x83, 0x31, 0x82, 0x50, 0x92, 0x31, 0xAA, 0x73, 0xBA, 0x94, 0xC2, 0xB5, 0xCA, 0xD5, 0x05, 0xD2, 0xB5, 0x80, 0xD2, 0xB4, 0x01, 0xCA, 0xB4, 0x01, 0xC2, 0xB4, 0x83, 0xAA, 0xF3, 0xD5, 0x59, 0xDE, 0xBD, 0xD6, 0xFC, 0x01, 0xCF, 0x1C, 0x81, 0xC7, 0x1B, 0xC7, 0x3B, 0x02, 0xBF, 0x3B, 0x01, 0xC7, 0x1B, 0x03, 0xBF, 0x1B, + 0x02, 0xC7, 0x3B, 0x01, 0xCF, 0x5C, 0x88, 0xDF, 0x5D, 0xDE, 0x9D, 0x8B, 0x12, 0x8A, 0x51, 0x9A, 0x32, 0xAA, 0x53, 0xBA, 0x94, 0xCA, 0xB5, 0xCA, 0xD5, 0x06, 0xD2, 0xB5, 0x8B, 0xD2, 0xB4, 0xCA, 0xD4, 0xCA, 0xD5, 0xCA, 0xF5, 0xC3, 0x15, 0xE4, 0x7A, 0xAA, 0xB3, 0x9A, 0x11, 0x99, 0xF2, 0xAA, 0x33, 0xBA, 0xB4, 0xC2, 0xB5, 0x01, 0xCA, 0xB5, 0x04, 0xD2, 0xB5, 0x80, 0xD2, 0xB4, 0x04, 0xD2, 0xB5, 0x87, 0xCA, 0xB4, 0xC2, 0xB4, 0xBA, 0xB3, 0xBB, 0x53, 0xED, 0xFB, 0xF6, 0xDC, 0xE7, 0x1C, 0xDF, 0x3B, 0x02, 0xD7, 0x3B, 0x03, 0xD7, 0x3A, 0x8C, 0xDF, 0x3B, 0xDF, 0x1B, 0xE6, 0xFC, 0xEE, 0xBC, 0xDD, 0x9A, 0x9A, 0xB1, 0x9A, 0x31, 0xAA, 0x53, 0xBA, 0x94, 0xC2, 0xD5, 0xCA, 0xD5, 0xCA, 0xB5, 0xD2, 0xB4, 0x02, 0xD2, 0xB5, 0x01, 0xD2, 0xD5, 0x02, 0xD2, 0xB5, 0x86, 0xD2, 0xD5, 0xCA, 0xD5, 0xC2, 0xB4, 0xBA, 0x93, 0xAA, 0xD3, 0xBC, 0x36, 0xE6, 0xDD, 0x01, 0xD7, 0x1C, 0x01, 0xCF, 0x1C, 0x80, 0xC7, 0x1C, 0x02, 0xCF, 0x5D, 0x87, 0xEF, 0x5F, 0x8B, 0x12, 0x89, 0xF0, 0x9A, 0x11, 0xAA, 0x52, 0xBA, 0x94, 0xC2, 0xB4, 0xCA, 0xD5, 0x03, 0xD2, 0xD5, 0x82, 0xD2, 0xB5, 0xD2, 0xB4, 0xD2, 0xB5, 0x02, 0xD2, 0xB4, 0x89, 0xCA, 0xB4, 0xCA, 0x94, 0xBA, 0xB3, 0xBB, 0x33, 0xE5, 0x59, 0xF6, 0xBC, 0xE6, 0xFB, 0xDF, 0x1B, 0xDF, 0x3B, 0xD7, 0x1B, 0x02, 0xD7, 0x1A, 0x8A, 0xD7, 0x3B, 0xDF, 0x3B, 0xE7, 0x1C, 0xF6, 0xDD, 0xD4, 0xF8, 0x92, 0x30, 0xA1, 0xF1, 0xB2, 0x12, 0xC2, 0x74, 0xCA, 0x94, 0xCA, 0xB5, 0x03, 0xD2, 0xB5, 0x80, 0xDA, 0xD5, 0x02, 0xD2, 0xB5, 0x81, 0xD2, 0x95, + 0xD2, 0xB5, 0x01, 0xD2, 0xD5, 0x82, 0xCA, 0xB5, 0xC2, 0xB5, 0xBA, 0x94, 0x01, 0xA1, 0xF1, 0x82, 0xB2, 0x53, 0xC2, 0xB4, 0xCA, 0xD5, 0x01, 0xD2, 0xD5, 0x02, 0xD2, 0xB5, 0x80, 0xD2, 0x95, 0x01, 0xD2, 0xB5, 0x8B, 0xD2, 0xD5, 0xCA, 0xB5, 0xCA, 0xB4, 0xC2, 0xB3, 0xAA, 0xB2, 0xBC, 0x77, 0xEE, 0xFE, 0xDF, 0x1D, 0xD7, 0x1D, 0xCF, 0x1C, 0xCE, 0xFC, 0xCF, 0x1C, 0x01, 0xCF, 0x3C, 0x88, 0xDF, 0x3D, 0xE6, 0xBE, 0x8B, 0x32, 0x8A, 0x50, 0x9A, 0x31, 0xAA, 0x52, 0xBA, 0x94, 0xC2, 0xB4, 0xCA, 0xD5, 0x01, 0xD2, 0xD5, 0x81, 0xD2, 0xB5, 0xD2, 0xD5, 0x02, 0xD2, 0xB5, 0x80, 0xD2, 0x94, 0x01, 0xCA, 0xB4, 0x88, 0xC2, 0xB4, 0xB3, 0x13, 0xCD, 0x79, 0xDE, 0xDD, 0xD7, 0x1D, 0xCF, 0x3C, 0xC6, 0xFC, 0xC7, 0x1C, 0xCF, 0x5D, 0x01, 0xD7, 0x5D, 0x86, 0xDE, 0xBD, 0x82, 0x90, 0x81, 0xD0, 0x91, 0xF1, 0xA2, 0x32, 0xBA, 0x94, 0xC2, 0xD5, 0x01, 0xCA, 0xD5, 0x80, 0xD2, 0xD5, 0x06, 0xD2, 0xB5, 0x80, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x85, 0xC2, 0xB3, 0xB2, 0xF2, 0xED, 0x9A, 0xF6, 0xDD, 0xE6, 0xFC, 0xE7, 0x1B, 0x01, 0xDF, 0x3B, 0x80, 0xD7, 0x1B, 0x02, 0xD7, 0x3B, 0x8A, 0xDF, 0x3B, 0xE7, 0x3C, 0xEF, 0x1D, 0xED, 0xFB, 0x9A, 0xB1, 0xA2, 0x31, 0xAA, 0x12, 0xBA, 0x73, 0xC2, 0xB4, 0xCA, 0xB4, 0xCA, 0xB5, 0x06, 0xD2, 0xB5, 0x01, 0xD2, 0xD5, 0x01, 0xCA, 0xD4, 0x85, 0xC2, 0xD4, 0xB2, 0xD3, 0xCC, 0x36, 0xFE, 0xDE, 0xEE, 0xFD, 0xEE, 0xFC, 0x01, 0xEF, 0x1C, 0x88, 0xF7, 0x1D, 0xFE, 0xFD, 0xFE, 0xBE, 0xE4, 0xD9, 0x99, 0xEF, 0xB1, 0xD1, 0xB9, 0xB2, 0xC1, 0xB2, 0xC1, 0xD2, 0x01, + 0xC9, 0xD3, 0x8D, 0xC9, 0xF3, 0xC9, 0xF4, 0xCA, 0x14, 0xCA, 0x15, 0xC1, 0xF5, 0xBA, 0x17, 0xB2, 0x58, 0xA2, 0xBC, 0x40, 0xD7, 0x29, 0x1A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x9D, 0x11, 0x9E, 0x01, 0x09, 0x9E, 0x99, 0x11, 0x9E, 0x11, 0x9D, 0x19, 0x7D, 0x21, 0x3B, 0x41, 0x5A, 0x61, 0x7A, 0x92, 0x1A, 0xAA, 0x39, 0xB2, 0x17, 0xB1, 0xF6, 0xBA, 0x16, 0xBA, 0x56, 0xAA, 0x36, 0x9A, 0x16, 0x89, 0xF7, 0x6A, 0x77, 0x53, 0xBA, 0x55, 0x5E, 0x3D, 0xDE, 0x2D, 0xFE, 0x1D, 0xDD, 0x16, 0x1B, 0x0E, 0x9A, 0x06, 0xD8, 0x07, 0x19, 0x07, 0x39, 0x01, 0x0F, 0x79, 0x88, 0x17, 0x7A, 0x2F, 0x7B, 0x3F, 0x1C, 0x4E, 0x9C, 0x76, 0x3D, 0x5B, 0x75, 0x7A, 0x93, 0x9A, 0x53, 0xA1, 0xF3, 0x01, 0xA9, 0xF4, 0x84, 0xA2, 0x15, 0x91, 0xB3, 0x70, 0xD0, 0x79, 0x11, 0x81, 0x52, 0x01, 0xA2, 0x35, 0x86, 0xA2, 0x14, 0xA2, 0x15, 0xA2, 0x35, 0x69, 0x10, 0x48, 0xAE, 0x51, 0x71, 0x49, 0x51, 0x01, 0x39, 0x10, 0x01, 0x39, 0x51, 0x80, 0x39, 0x71, 0x03, 0x31, 0x50, 0x80, 0x29, 0x50, 0x09, 0x29, 0x30, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x95, 0x01, 0x19, 0xF7, 0x84, 0x11, 0xB6, 0x11, 0x53, + 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x01, 0x19, 0x30, 0x80, 0x19, 0x50, 0x03, 0x19, 0x30, 0x83, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x01, 0x21, 0xF7, 0x83, 0x19, 0x95, 0x11, 0x12, 0x19, 0x12, 0x19, 0x31, 0x01, 0x21, 0x30, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x88, 0x19, 0x10, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0x74, 0x11, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD7, 0x01, 0x19, 0xB6, 0x80, 0x11, 0xB6, 0x01, 0x19, 0xD6, 0x80, 0x19, 0xB6, 0x02, 0x11, 0x96, 0x81, 0x19, 0xB6, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x02, 0x19, 0xD7, 0x88, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x94, 0x19, 0x73, 0x19, 0x52, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x19, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x19, 0x11, 0x83, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xB5, 0x01, 0x22, 0x17, 0x87, 0x21, 0xD7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x10, 0x18, 0xF0, 0x19, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, + 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x29, 0x10, 0x06, 0x29, 0x0F, 0x0B, 0x21, 0x0F, 0x0A, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x31, 0x85, 0x19, 0x10, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0x74, 0x19, 0xB6, 0x01, 0x22, 0x17, 0x84, 0x21, 0xB6, 0x19, 0x74, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x01, 0x11, 0x32, 0x80, 0x11, 0x52, 0x01, 0x19, 0x52, 0x81, 0x11, 0x32, 0x11, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x51, 0x80, 0x19, 0x31, 0x02, 0x19, 0x30, 0x05, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x32, 0x05, 0x19, 0x31, 0x8A, 0x19, 0x11, 0x21, 0x31, 0x19, 0x31, 0x21, 0x51, 0x19, 0x31, 0x21, 0x52, 0x19, 0x31, 0x19, 0x51, 0x19, 0x31, 0x21, 0x52, 0x19, 0x51, 0x05, 0x19, 0x31, 0x01, 0x19, 0x32, 0x01, 0x19, 0x12, 0x87, 0x11, 0x12, 0x11, 0x33, 0x19, 0x74, 0x21, 0x95, 0x21, 0xD7, 0x21, 0xF7, 0x21, 0xD7, 0x19, 0xD7, 0x01, 0x22, 0x18, 0x88, 0x2A, 0x18, 0x21, 0xF7, + 0x19, 0x95, 0x19, 0x74, 0x19, 0x53, 0x19, 0x52, 0x19, 0x31, 0x21, 0x30, 0x21, 0x50, 0x05, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x0A, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x0C, 0x21, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x86, 0x21, 0x31, 0x21, 0x32, 0x19, 0x12, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF6, 0x01, 0x22, 0x17, 0x84, 0x19, 0xD6, 0x11, 0x94, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x02, 0x11, 0x53, 0x82, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x07, 0x11, 0x12, 0x01, 0x09, 0x12, 0x80, 0x11, 0x32, 0x01, 0x09, 0x32, 0x01, 0x09, 0x33, 0x93, 0x09, 0x34, 0x09, 0x55, 0x11, 0xB6, 0x19, 0xF8, 0x11, 0xD8, 0x11, 0xF8, 0x11, 0xD7, 0x09, 0x76, 0x09, 0x56, 0x09, 0x76, 0x11, 0x96, 0x11, 0xB7, 0x19, 0xF8, 0x11, 0xD7, 0x19, 0xD7, 0x19, 0x96, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x51, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x0B, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x8F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x28, 0xEE, 0x30, 0x8D, 0x50, 0xEE, 0xAA, 0xD5, 0xB2, 0x73, 0xAA, 0x12, 0xA2, 0x12, 0xA2, 0x11, 0x8A, 0x0F, 0xFF, 0x5F, 0xE7, 0x5D, 0xDF, 0x5C, 0xD7, 0x3C, 0x04, 0xC7, 0x1B, 0x02, 0xC7, 0x3B, 0x89, 0xCF, 0x7C, 0xDF, 0x7D, 0xE6, 0xFE, 0x8B, 0x72, 0x7A, 0x2F, 0x92, 0x11, 0xA2, 0x72, + 0xB2, 0xB4, 0xC2, 0xF5, 0xCA, 0xF5, 0x07, 0xD2, 0xD5, 0x87, 0xD2, 0xF5, 0xCA, 0xF5, 0xC2, 0xD4, 0xB3, 0x13, 0xBC, 0x35, 0xDE, 0x3B, 0xDF, 0x1C, 0xD7, 0x3C, 0x02, 0xCF, 0x3B, 0x01, 0xC7, 0x1B, 0x04, 0xC7, 0x3B, 0x01, 0xC7, 0x1B, 0x02, 0xC7, 0x3B, 0x88, 0xCF, 0x5B, 0xCF, 0x7C, 0xDF, 0x5D, 0xE6, 0xDD, 0x83, 0x31, 0x82, 0x50, 0x92, 0x31, 0xAA, 0x73, 0xBA, 0xB4, 0x01, 0xCA, 0xF5, 0x07, 0xD2, 0xD5, 0x89, 0xCA, 0xF5, 0xCA, 0xD4, 0xC2, 0xD4, 0xB2, 0xF3, 0xDD, 0x9A, 0xE6, 0xFD, 0xDF, 0x1C, 0xD7, 0x1B, 0xCF, 0x3B, 0xCF, 0x1B, 0x03, 0xC7, 0x3B, 0x80, 0xC7, 0x1B, 0x06, 0xC7, 0x3B, 0x01, 0xCF, 0x5B, 0x88, 0xD7, 0x5C, 0xDF, 0x5D, 0xE6, 0xBD, 0x8B, 0x11, 0x8A, 0x30, 0x9A, 0x11, 0xAA, 0x53, 0xBA, 0xB4, 0xCA, 0xD5, 0x06, 0xD2, 0xD5, 0x81, 0xD2, 0xB5, 0xD2, 0xD5, 0x01, 0xD2, 0xF5, 0x87, 0xCB, 0x15, 0xCB, 0x36, 0xD3, 0xB7, 0xA2, 0x32, 0x9A, 0x12, 0xA2, 0x12, 0xB2, 0x73, 0xC2, 0xD5, 0x01, 0xCA, 0xD5, 0x06, 0xD2, 0xD5, 0x80, 0xD2, 0xB4, 0x01, 0xD2, 0xD5, 0x87, 0xD2, 0xB5, 0xD2, 0xB4, 0xCA, 0xB4, 0xC2, 0xD3, 0xBB, 0x73, 0xED, 0xDA, 0xF7, 0x1D, 0xEF, 0x3B, 0x01, 0xDF, 0x3B, 0x80, 0xD7, 0x3B, 0x05, 0xD7, 0x3A, 0x89, 0xD7, 0x5A, 0xDF, 0x5B, 0xDF, 0x3B, 0xDE, 0xFB, 0xF6, 0xFD, 0xCC, 0xF7, 0x8A, 0x4F, 0x9A, 0x11, 0xAA, 0x52, 0xBA, 0xB4, 0x01, 0xCA, 0xD5, 0x01, 0xCA, 0xB5, 0x80, 0xD2, 0xB5, 0x06, 0xD2, 0xD5, 0x01, 0xCA, 0xD5, 0x88, 0xC2, 0xD4, 0xB2, 0xD3, 0xAB, 0x53, 0xEE, 0xBD, 0xDF, 0x1D, 0xDF, 0x3C, 0xD7, 0x3C, 0xCF, 0x1B, 0xCF, 0x3C, 0x01, + 0xCF, 0x5C, 0x86, 0xD7, 0x5D, 0xF7, 0x7F, 0x72, 0x2E, 0x89, 0xF0, 0x9A, 0x11, 0xAA, 0x53, 0xC2, 0xD4, 0x01, 0xCA, 0xD5, 0x80, 0xD2, 0xF5, 0x03, 0xD2, 0xD5, 0x01, 0xD2, 0xB5, 0x80, 0xD2, 0xB4, 0x01, 0xD2, 0xB5, 0x01, 0xCA, 0xB4, 0x88, 0xBA, 0xF3, 0xDC, 0xF8, 0xF6, 0xBC, 0xEF, 0x1C, 0xE7, 0x3B, 0xDF, 0x5B, 0xDF, 0x3B, 0xD7, 0x3A, 0xD7, 0x1A, 0x01, 0xD7, 0x3A, 0x80, 0xD7, 0x5A, 0x01, 0xDF, 0x5B, 0x8A, 0xE7, 0x1C, 0xF6, 0x9C, 0x9B, 0x32, 0x91, 0xEF, 0xA1, 0xF1, 0xB2, 0x53, 0xC2, 0xB4, 0xCA, 0xD5, 0xD2, 0xF5, 0xD2, 0xD5, 0xD2, 0xB5, 0x01, 0xD2, 0xD5, 0x80, 0xDA, 0xD5, 0x01, 0xD2, 0xD5, 0x01, 0xD2, 0xB5, 0x02, 0xD2, 0xD5, 0x81, 0xCA, 0xD5, 0xC2, 0x94, 0x01, 0xA1, 0xF1, 0x84, 0xB2, 0x73, 0xC2, 0xB4, 0xCA, 0xD5, 0xD2, 0xD5, 0xD2, 0xF5, 0x05, 0xD2, 0xD5, 0x88, 0xD2, 0xF5, 0xCA, 0xD5, 0xCA, 0xD4, 0xC2, 0xB3, 0xAA, 0xD2, 0xC4, 0x96, 0xEE, 0xFD, 0xDF, 0x1D, 0xD7, 0x3C, 0x01, 0xCF, 0x1C, 0x01, 0xCF, 0x3C, 0x89, 0xD7, 0x3D, 0xDF, 0x3E, 0xE6, 0xDE, 0x8B, 0x31, 0x8A, 0x50, 0x9A, 0x31, 0xAA, 0x52, 0xBA, 0x94, 0xCA, 0xD5, 0xD2, 0xF5, 0x06, 0xD2, 0xD5, 0x88, 0xD2, 0xB5, 0xCA, 0xB4, 0xCA, 0xD4, 0xC2, 0xD4, 0xB3, 0x13, 0xD5, 0x79, 0xE6, 0xFD, 0xDF, 0x3D, 0xD7, 0x3C, 0x01, 0xCF, 0x1B, 0x01, 0xD7, 0x7D, 0x86, 0xDF, 0x5D, 0xD6, 0x7C, 0x7A, 0x0F, 0x89, 0xF0, 0x91, 0xF1, 0xAA, 0x32, 0xBA, 0xB4, 0x01, 0xCA, 0xD5, 0x07, 0xD2, 0xD5, 0x01, 0xD2, 0xB5, 0x86, 0xCA, 0x94, 0xCA, 0xB4, 0xBA, 0xD3, 0xD4, 0xB7, 0xFE, 0xBC, 0xEE, 0xFC, 0xE7, 0x3B, 0x01, + 0xDF, 0x3B, 0x81, 0xD7, 0x1A, 0xD7, 0x3A, 0x03, 0xD7, 0x3B, 0x89, 0xDF, 0x5B, 0xE7, 0x1C, 0xE6, 0x9B, 0xB4, 0x35, 0x9A, 0x50, 0xA2, 0x31, 0xAA, 0x32, 0xBA, 0x94, 0xC2, 0xB4, 0xCA, 0xB4, 0x07, 0xD2, 0xD5, 0x80, 0xD2, 0xF5, 0x01, 0xCA, 0xF5, 0x84, 0xC2, 0xD4, 0xBA, 0xD3, 0xB3, 0x53, 0xFE, 0xFE, 0xEE, 0xFC, 0x03, 0xEF, 0x1C, 0x89, 0xF7, 0x1C, 0xFF, 0x1D, 0xFF, 0x1E, 0xED, 0x5A, 0x9A, 0x0F, 0xA9, 0xD0, 0xB9, 0xB1, 0xC1, 0xB2, 0xC1, 0xD3, 0xC9, 0xD3, 0x01, 0xC9, 0xF3, 0x8B, 0xCA, 0x14, 0xC2, 0x15, 0xC1, 0xF5, 0xBA, 0x16, 0xB2, 0x38, 0x9A, 0x9B, 0x40, 0xD7, 0x29, 0x1A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x9D, 0x09, 0x9D, 0x01, 0x09, 0x9E, 0x89, 0x11, 0xBE, 0x11, 0x9E, 0x11, 0x7D, 0x19, 0x5C, 0x31, 0x5B, 0x41, 0x3A, 0x69, 0x58, 0xA2, 0x3A, 0xAA, 0x18, 0xB2, 0x16, 0x01, 0xB2, 0x36, 0xAD, 0xAA, 0x16, 0xA2, 0x16, 0x8A, 0x17, 0x72, 0x77, 0x53, 0x79, 0x54, 0xDC, 0x45, 0xDE, 0x36, 0x1E, 0x25, 0xDD, 0x1E, 0x1C, 0x0E, 0x9A, 0x06, 0xD9, 0x07, 0x19, 0x07, 0x38, 0x07, 0x59, 0x0F, 0x79, 0x1F, 0x7A, 0x27, 0x5B, 0x3F, 0x1C, 0x56, 0xBD, 0x76, 0x1D, 0x5B, 0x54, 0x7A, 0x93, 0x9A, 0x54, 0xA1, 0xF3, 0xAA, 0x14, 0xA1, 0xD4, 0xA1, 0xF4, 0x89, 0xB3, 0x70, 0xF0, 0x71, 0x52, 0x71, 0x11, 0x9A, 0x15, 0xA2, 0x35, 0xA1, 0xF4, 0xA2, 0x15, 0xA2, 0x35, 0x81, 0xB3, 0x48, 0x8E, 0x49, 0x10, 0x51, 0x91, 0x41, 0x50, 0x39, 0x30, 0x39, 0x31, 0x39, 0x51, 0x31, 0x51, 0x03, 0x31, 0x50, 0x01, 0x29, 0x50, 0x07, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x2F, + 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x88, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0xB6, 0x19, 0xF7, 0x1A, 0x18, 0x11, 0xB6, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x51, 0x01, 0x19, 0x30, 0x81, 0x19, 0x50, 0x21, 0x50, 0x01, 0x19, 0x30, 0x01, 0x19, 0x31, 0x82, 0x11, 0x32, 0x11, 0x33, 0x21, 0xB6, 0x01, 0x21, 0xF7, 0x84, 0x19, 0x95, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x19, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8D, 0x29, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x19, 0x54, 0x19, 0x75, 0x19, 0xB6, 0x19, 0xD6, 0x01, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x80, 0x11, 0xD7, 0x02, 0x11, 0xB7, 0x8B, 0x19, 0xB7, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xD7, 0x21, 0xF7, 0x21, 0xD7, 0x19, 0xB6, 0x19, 0x95, 0x19, 0x74, 0x11, 0x53, 0x19, 0x53, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x19, 0x51, 0x19, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, + 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x8A, 0x11, 0x12, 0x11, 0x32, 0x11, 0x74, 0x19, 0xB5, 0x22, 0x17, 0x22, 0x38, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x10, 0x84, 0x21, 0x30, 0x29, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x07, 0x21, 0x10, 0x81, 0x29, 0x10, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x51, 0x01, 0x19, 0x31, 0x84, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x82, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x53, 0x01, + 0x11, 0x12, 0x80, 0x11, 0x32, 0x01, 0x19, 0x32, 0x80, 0x19, 0x52, 0x03, 0x19, 0x31, 0x06, 0x19, 0x30, 0x80, 0x21, 0x30, 0x01, 0x19, 0x30, 0x80, 0x21, 0x30, 0x02, 0x19, 0x10, 0x81, 0x21, 0x11, 0x21, 0x31, 0x01, 0x19, 0x11, 0x82, 0x21, 0x11, 0x19, 0x10, 0x21, 0x31, 0x01, 0x19, 0x30, 0x81, 0x19, 0x10, 0x19, 0x30, 0x01, 0x21, 0x30, 0x82, 0x19, 0x30, 0x21, 0x30, 0x19, 0x30, 0x02, 0x21, 0x31, 0x87, 0x19, 0x10, 0x21, 0x31, 0x19, 0x30, 0x21, 0x51, 0x21, 0x30, 0x21, 0x31, 0x19, 0x10, 0x21, 0x31, 0x02, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x32, 0x01, 0x19, 0x12, 0x8C, 0x19, 0x32, 0x19, 0x33, 0x19, 0x74, 0x19, 0x75, 0x19, 0x95, 0x19, 0x75, 0x19, 0xB6, 0x21, 0xD6, 0x21, 0xB6, 0x19, 0x75, 0x19, 0x74, 0x19, 0x53, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x21, 0x30, 0x21, 0x50, 0x05, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x0A, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x19, 0xD6, 0x22, 0x37, 0x22, 0x17, 0x19, 0xB5, 0x11, 0x53, 0x02, 0x11, 0x32, 0x04, 0x11, 0x11, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x09, 0x19, 0x11, 0x81, 0x10, 0xF1, 0x19, 0x11, 0x03, 0x11, 0x11, 0x01, + 0x11, 0x12, 0x84, 0x11, 0x13, 0x09, 0x34, 0x11, 0x75, 0x19, 0xD7, 0x19, 0xF7, 0x01, 0x19, 0xF8, 0x81, 0x11, 0xD7, 0x11, 0xB7, 0x01, 0x11, 0x96, 0x80, 0x19, 0xD7, 0x01, 0x19, 0xF7, 0x85, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x0B, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x91, 0x29, 0x2F, 0x29, 0x0F, 0x28, 0xEF, 0x30, 0x8D, 0x50, 0xEE, 0xAA, 0xD5, 0xB2, 0x53, 0xAA, 0x12, 0xA1, 0xF2, 0xA1, 0xF1, 0x8A, 0x0F, 0xFF, 0x7F, 0xE7, 0x5D, 0xDF, 0x5C, 0xD7, 0x3B, 0xCF, 0x1B, 0xCF, 0x3B, 0xC7, 0x3B, 0x01, 0xC7, 0x3A, 0x80, 0xCF, 0x3B, 0x01, 0xCF, 0x5B, 0x88, 0xD7, 0x7C, 0xDF, 0x5D, 0xE6, 0xDD, 0x8B, 0x51, 0x82, 0x2F, 0x92, 0x31, 0xAA, 0x93, 0xBA, 0xD4, 0xC2, 0xF5, 0x01, 0xD3, 0x15, 0x07, 0xD2, 0xF5, 0x85, 0xCB, 0x15, 0xC2, 0xF4, 0xBB, 0x34, 0xBC, 0x35, 0xDE, 0x5B, 0xDF, 0x1C, 0x01, 0xD7, 0x3B, 0x04, 0xCF, 0x3B, 0x80, 0xC7, 0x3B, 0x03, 0xC7, 0x3A, 0x01, 0xC7, 0x3B, 0x80, 0xCF, 0x3B, 0x01, 0xCF, 0x5B, 0x88, 0xD7, 0x7B, 0xDF, 0x5D, 0xE6, 0xFD, 0x83, 0x31, 0x82, 0x50, 0x92, 0x31, 0xAA, 0x92, 0xBA, 0xD4, 0xCA, 0xF5, 0x04, 0xD2, 0xF5, 0x80, 0xDA, 0xF5, 0x02, 0xD2, 0xF5, 0x88, 0xCA, 0xF5, 0xCA, 0xF4, 0xC2, 0xD4, 0xB2, 0xF2, 0xDD, 0xBA, 0xE6, 0xFC, 0xDF, 0x1B, 0xD7, 0x1B, 0xD7, 0x3B, 0x01, 0xCF, 0x3B, 0x80, 0xCF, 0x3A, 0x04, 0xCF, 0x3B, 0x04, 0xCF, 0x3A, 0x89, 0xCF, 0x5B, 0xD7, 0x5B, 0xD7, 0x5C, 0xE7, 0x5D, 0xE6, 0xBD, 0x8B, 0x11, 0x8A, 0x30, 0x9A, 0x11, 0xAA, 0x72, 0xBA, 0xB4, + 0x01, 0xCA, 0xD5, 0x01, 0xD2, 0xF5, 0x02, 0xD2, 0xD5, 0x81, 0xD2, 0xF5, 0xD2, 0xD5, 0x01, 0xD2, 0xF5, 0x87, 0xD3, 0x15, 0xCB, 0x15, 0xCB, 0x36, 0xBA, 0xF5, 0x9A, 0x11, 0xA2, 0x12, 0xA2, 0x32, 0xBA, 0xB4, 0x01, 0xCA, 0xF5, 0x81, 0xCA, 0xD5, 0xD2, 0xD5, 0x01, 0xD2, 0xF5, 0x81, 0xD2, 0xD5, 0xDA, 0xF5, 0x04, 0xD2, 0xD5, 0x87, 0xD2, 0xB5, 0xCA, 0xD4, 0xC2, 0xF3, 0xBB, 0x32, 0xDD, 0x58, 0xFE, 0xFD, 0xEF, 0x3B, 0xE7, 0x3B, 0x01, 0xDF, 0x5A, 0x07, 0xD7, 0x3A, 0x89, 0xDF, 0x5A, 0xDF, 0x7B, 0xDF, 0x5B, 0xE6, 0xFB, 0xEE, 0xBC, 0xB4, 0x14, 0x8A, 0x0F, 0x9A, 0x10, 0xAA, 0x73, 0xC2, 0xD5, 0x02, 0xCA, 0xD5, 0x01, 0xD2, 0xD5, 0x02, 0xD2, 0xF5, 0x80, 0xD2, 0xD5, 0x02, 0xD2, 0xF5, 0x87, 0xCA, 0xF5, 0xCB, 0x15, 0xBA, 0xF4, 0xAB, 0x33, 0xD5, 0x99, 0xEF, 0x1D, 0xDF, 0x3C, 0xD7, 0x3C, 0x01, 0xD7, 0x3B, 0x8A, 0xD7, 0x3C, 0xD7, 0x5C, 0xDF, 0x7D, 0xEF, 0x3F, 0x71, 0xED, 0x92, 0x10, 0x9A, 0x11, 0xB2, 0x73, 0xC2, 0xD4, 0xCA, 0xF5, 0xD3, 0x15, 0x04, 0xD2, 0xF5, 0x04, 0xD2, 0xD5, 0x87, 0xCA, 0xD4, 0xC2, 0xF3, 0xC3, 0x94, 0xF6, 0x5B, 0xEF, 0x1C, 0xE7, 0x3B, 0xDF, 0x3B, 0xDF, 0x3A, 0x04, 0xD7, 0x3A, 0x01, 0xD7, 0x5A, 0x88, 0xDF, 0x5B, 0xE7, 0x5C, 0xF7, 0x5D, 0xCD, 0x38, 0x81, 0xCE, 0x99, 0xF0, 0xAA, 0x32, 0xC2, 0x94, 0xCA, 0xF5, 0x03, 0xD2, 0xF5, 0x07, 0xD2, 0xD5, 0x01, 0xD2, 0xF5, 0x85, 0xC2, 0xD4, 0xA1, 0xF1, 0x99, 0xF1, 0xB2, 0x73, 0xC2, 0xD5, 0xCA, 0xF5, 0x04, 0xD2, 0xF5, 0x80, 0xD2, 0xD5, 0x02, 0xD2, 0xF5, 0x88, 0xCA, 0xF5, 0xCA, 0xF4, 0xC2, + 0xD3, 0xB2, 0xD2, 0xC4, 0xB6, 0xF6, 0xFD, 0xE7, 0x3D, 0xDF, 0x3C, 0xD7, 0x1C, 0x03, 0xD7, 0x3C, 0x87, 0xE7, 0x5D, 0xEE, 0xDE, 0x8B, 0x31, 0x8A, 0x50, 0x9A, 0x31, 0xAA, 0x72, 0xBA, 0xB4, 0xCA, 0xF5, 0x06, 0xD2, 0xF5, 0x01, 0xD2, 0xD5, 0x87, 0xD2, 0xD4, 0xCA, 0xD4, 0xC2, 0xD4, 0xB3, 0x33, 0xD5, 0x99, 0xE6, 0xFD, 0xDF, 0x3C, 0xD7, 0x3C, 0x01, 0xD7, 0x1B, 0x88, 0xD7, 0x5C, 0xDF, 0x7D, 0xE7, 0x5D, 0xC5, 0x99, 0x71, 0xEE, 0x89, 0xF0, 0x9A, 0x11, 0xAA, 0x73, 0xC2, 0xD5, 0x01, 0xCA, 0xF5, 0x04, 0xD2, 0xF5, 0x04, 0xD2, 0xD5, 0x86, 0xCA, 0xD4, 0xC2, 0xD3, 0xC3, 0x74, 0xF6, 0x1B, 0xF6, 0xFC, 0xE6, 0xFB, 0xDF, 0x1A, 0x01, 0xDF, 0x3B, 0x80, 0xDF, 0x3A, 0x02, 0xD7, 0x3A, 0x80, 0xDF, 0x5A, 0x01, 0xDF, 0x5B, 0x89, 0xE7, 0x5B, 0xEF, 0x3C, 0xDD, 0xFA, 0x92, 0xB1, 0xA2, 0x51, 0xA2, 0x11, 0xBA, 0x93, 0xC2, 0xD4, 0xCA, 0xB4, 0xCA, 0xD5, 0x01, 0xD2, 0xF5, 0x04, 0xD2, 0xD5, 0x86, 0xD2, 0xF5, 0xD3, 0x15, 0xCA, 0xF5, 0xC2, 0xF4, 0xBA, 0xD3, 0xAB, 0x12, 0xFE, 0xFE, 0x03, 0xEF, 0x1C, 0x01, 0xEF, 0x3C, 0x86, 0xF7, 0x3C, 0xFF, 0x3D, 0xFF, 0x1E, 0xF5, 0x9B, 0xA2, 0x50, 0xA9, 0xD0, 0xB1, 0xB1, 0x01, 0xC1, 0xB2, 0x81, 0xC1, 0xD3, 0xC9, 0xF3, 0x01, 0xC1, 0xF4, 0x89, 0xB9, 0xF5, 0xBA, 0x16, 0xAA, 0x38, 0x9A, 0x9B, 0x40, 0xD7, 0x29, 0x1A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x9D, 0x09, 0x9D, 0x03, 0x09, 0x9E, 0x87, 0x11, 0x9E, 0x11, 0x5D, 0x21, 0x5C, 0x31, 0x3A, 0x49, 0x18, 0x81, 0xFA, 0xA2, 0x39, 0xB2, 0x38, 0x02, 0xAA, 0x16, 0x97, 0xA2, 0x36, 0x92, 0x16, + 0x7A, 0x57, 0x5B, 0x17, 0x54, 0x7B, 0x4D, 0xDE, 0x36, 0x1E, 0x2D, 0xFD, 0x1E, 0x1B, 0x0E, 0x79, 0x06, 0xD9, 0x07, 0x18, 0x0F, 0x59, 0x0F, 0x79, 0x17, 0x9A, 0x1F, 0x7A, 0x2F, 0x7B, 0x3F, 0x3C, 0x56, 0xBC, 0x75, 0xDC, 0x53, 0x34, 0x7A, 0x93, 0x92, 0x33, 0x99, 0xF4, 0x01, 0xA1, 0xF4, 0x8E, 0x99, 0xF4, 0x79, 0x52, 0x71, 0x11, 0x71, 0x72, 0x69, 0x31, 0x79, 0x72, 0xA2, 0x56, 0xA2, 0x35, 0xA2, 0x15, 0x99, 0xF4, 0x9A, 0x15, 0x50, 0xAE, 0x40, 0xAE, 0x51, 0x71, 0x41, 0x71, 0x01, 0x39, 0x30, 0x81, 0x39, 0x31, 0x31, 0x51, 0x01, 0x31, 0x50, 0x80, 0x29, 0x50, 0x0B, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x20, 0xEF, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x0D, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x8C, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x11, 0x95, 0x19, 0xD7, 0x19, 0xF7, 0x11, 0xB5, 0x09, 0x32, 0x11, 0x31, 0x19, 0x31, 0x03, 0x19, 0x30, 0x81, 0x21, 0x30, 0x19, 0x2F, 0x01, 0x19, 0x30, 0x83, 0x19, 0x51, 0x11, 0x32, 0x11, 0x13, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x83, 0x19, 0x95, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x87, 0x21, 0x11, 0x19, 0x11, + 0x19, 0x12, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0x95, 0x19, 0xB6, 0x01, 0x19, 0xD7, 0x83, 0x11, 0xD7, 0x19, 0xD7, 0x11, 0xD7, 0x11, 0xB7, 0x01, 0x19, 0xB7, 0x01, 0x19, 0xD7, 0x83, 0x19, 0xB6, 0x21, 0xB6, 0x19, 0x95, 0x19, 0x74, 0x01, 0x11, 0x33, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x30, 0x04, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x50, 0x21, 0x11, 0x01, 0x19, 0x31, 0x8F, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x19, 0xF7, 0x22, 0x17, 0x19, 0xD7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x10, 0x19, 0x0F, 0x21, 0x30, 0x29, 0x50, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x10, 0x01, 0x29, 0x10, + 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x09, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x01, 0x19, 0x31, 0x84, 0x19, 0x11, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x83, 0x21, 0xD6, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x02, 0x19, 0x32, 0x05, 0x19, 0x31, 0x80, 0x19, 0x10, 0x05, 0x19, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x04, 0x21, 0x30, 0x07, 0x21, 0x10, 0x80, 0x19, 0x10, 0x02, 0x21, 0x10, 0x80, 0x19, 0x10, 0x01, 0x21, 0x10, 0x01, 0x19, 0x10, 0x04, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x12, 0x19, 0x32, 0x03, 0x19, 0x33, 0x82, 0x19, 0x74, 0x19, 0x75, 0x19, 0x54, 0x01, 0x19, 0x33, 0x84, 0x19, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x30, 0x21, 0x10, 0x06, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, + 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8C, 0x19, 0x30, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x21, 0xD6, 0x21, 0xF7, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x33, 0x11, 0x32, 0x01, 0x11, 0x11, 0x82, 0x19, 0x11, 0x19, 0x10, 0x19, 0x11, 0x01, 0x19, 0x10, 0x80, 0x19, 0x30, 0x01, 0x19, 0x10, 0x81, 0x19, 0x11, 0x19, 0x10, 0x02, 0x21, 0x31, 0x82, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x11, 0x81, 0x21, 0x31, 0x21, 0x10, 0x02, 0x21, 0x31, 0x01, 0x19, 0x31, 0x86, 0x19, 0x11, 0x11, 0x11, 0x10, 0xF2, 0x11, 0x53, 0x11, 0x74, 0x19, 0x95, 0x19, 0xB6, 0x03, 0x19, 0xD7, 0x81, 0x19, 0xB7, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x0B, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x85, 0x30, 0xEF, 0x30, 0x8D, 0x50, 0xCE, 0xAA, 0xD5, 0xB2, 0x53, 0xAA, 0x12, 0x01, 0xA1, 0xF1, 0x86, 0x89, 0xEE, 0xFF, 0x7F, 0xEF, 0x5D, 0xE7, 0x7C, 0xDF, 0x3B, 0xD7, 0x3B, 0xD7, 0x3A, 0x03, 0xCF, 0x3A, 0x8A, 0xD7, 0x5A, 0xD7, 0x7B, 0xDF, 0x7B, 0xE7, 0x7D, 0xE6, 0xBD, 0x8B, 0x51, 0x82, 0x2F, 0x92, 0x31, 0xAA, 0x93, 0xBA, 0xF4, 0xCB, 0x15, 0x02, 0xD3, 0x15, 0x81, 0xD2, 0xF5, 0xDB, 0x15, 0x02, 0xD3, 0x15, 0x88, 0xD2, 0xF5, 0xCA, 0xF5, 0xCB, 0x15, 0xC2, 0xF4, 0xBB, 0x34, 0xBC, 0x55, 0xE6, 0x5B, 0xE7, 0x3C, 0xDF, 0x5B, 0x03, 0xD7, 0x3B, 0x80, 0xCF, 0x3B, 0x08, 0xCF, 0x3A, 0x8A, 0xCF, 0x5A, 0xD7, 0x5B, 0xD7, 0x7B, + 0xE7, 0x7D, 0xEE, 0xFD, 0x83, 0x30, 0x82, 0x4F, 0x92, 0x31, 0xAA, 0x92, 0xBA, 0xD4, 0xCB, 0x15, 0x02, 0xD3, 0x16, 0x01, 0xD3, 0x15, 0x01, 0xDA, 0xF5, 0x01, 0xD2, 0xF5, 0x89, 0xD3, 0x15, 0xCB, 0x15, 0xC2, 0xF4, 0xB3, 0x12, 0xE5, 0xDA, 0xEF, 0x1C, 0xDF, 0x1B, 0xDF, 0x3B, 0xD7, 0x5B, 0xD7, 0x3B, 0x01, 0xD7, 0x3A, 0x81, 0xCF, 0x3A, 0xCF, 0x5B, 0x01, 0xCF, 0x3A, 0x01, 0xCF, 0x5A, 0x01, 0xCF, 0x3A, 0x01, 0xD7, 0x3A, 0x8A, 0xD7, 0x5A, 0xD7, 0x5B, 0xDF, 0x7C, 0xE7, 0x5D, 0xEE, 0xBD, 0x8B, 0x11, 0x8A, 0x30, 0x9A, 0x11, 0xAA, 0x73, 0xBA, 0xB4, 0xCA, 0xF5, 0x07, 0xD2, 0xF5, 0x02, 0xD3, 0x15, 0x82, 0xD3, 0x35, 0xD3, 0x36, 0xBA, 0xB4, 0x01, 0xA2, 0x12, 0x83, 0xAA, 0x53, 0xC2, 0xD5, 0xCB, 0x15, 0xD3, 0x15, 0x03, 0xD2, 0xF5, 0x80, 0xDB, 0x15, 0x03, 0xD2, 0xF5, 0x02, 0xD2, 0xD5, 0x86, 0xCA, 0xF4, 0xC3, 0x53, 0xDD, 0x17, 0xFF, 0x3D, 0xF7, 0x3B, 0xE7, 0x5B, 0xE7, 0x5A, 0x01, 0xDF, 0x5A, 0x07, 0xD7, 0x3A, 0x8F, 0xDF, 0x3A, 0xDF, 0x5A, 0xE7, 0x7B, 0xE7, 0x3A, 0xE6, 0xFB, 0xFF, 0x1D, 0x92, 0xD0, 0x89, 0xEF, 0x9A, 0x10, 0xBA, 0xB4, 0xC2, 0xF5, 0xCA, 0xF5, 0xCA, 0xD5, 0xCA, 0xF5, 0xD2, 0xF5, 0xD3, 0x15, 0x01, 0xD2, 0xF5, 0x81, 0xD3, 0x16, 0xD3, 0x15, 0x01, 0xD2, 0xF5, 0x87, 0xD3, 0x15, 0xCB, 0x15, 0xC2, 0xF4, 0xB3, 0x33, 0xC4, 0xB6, 0xF7, 0x1D, 0xE7, 0x3C, 0xDF, 0x5C, 0x01, 0xD7, 0x1B, 0x89, 0xD7, 0x3B, 0xDF, 0x5C, 0xE7, 0x5D, 0xDE, 0x5C, 0x71, 0xED, 0x92, 0x10, 0x9A, 0x31, 0xB2, 0x93, 0xC2, 0xF5, 0xCB, 0x15, 0x01, 0xD3, 0x15, 0x80, 0xD2, + 0xF5, 0x01, 0xD3, 0x15, 0x81, 0xD2, 0xF5, 0xDA, 0xF5, 0x03, 0xD2, 0xF5, 0x86, 0xCA, 0xF4, 0xC3, 0x34, 0xCC, 0x76, 0xFE, 0xFC, 0xEF, 0x3B, 0xE7, 0x3B, 0xDF, 0x5A, 0x03, 0xD7, 0x3A, 0x03, 0xD7, 0x5A, 0x89, 0xDF, 0x7B, 0xDF, 0x5B, 0xEF, 0x5C, 0xFF, 0x1D, 0x79, 0xCD, 0x91, 0xCF, 0xA2, 0x11, 0xB2, 0x73, 0xCA, 0xF5, 0xCB, 0x15, 0x01, 0xD3, 0x15, 0x01, 0xD2, 0xF5, 0x01, 0xD2, 0xD5, 0x81, 0xDA, 0xF5, 0xDA, 0xF6, 0x01, 0xDA, 0xF5, 0x01, 0xDB, 0x16, 0x86, 0xD3, 0x15, 0xCA, 0xF5, 0x99, 0xF1, 0x99, 0xD0, 0xB2, 0x73, 0xC2, 0xD5, 0xCA, 0xF5, 0x02, 0xD3, 0x16, 0x01, 0xD3, 0x15, 0x80, 0xD2, 0xF5, 0x03, 0xD3, 0x15, 0x86, 0xCB, 0x15, 0xC2, 0xF4, 0xB3, 0x12, 0xC4, 0xB6, 0xF7, 0x1D, 0xE7, 0x5C, 0xDF, 0x5C, 0x02, 0xD7, 0x3B, 0x8A, 0xD7, 0x5C, 0xDF, 0x5C, 0xE7, 0x3D, 0xEE, 0xDD, 0x8B, 0x31, 0x8A, 0x50, 0x9A, 0x31, 0xAA, 0x72, 0xBA, 0xD4, 0xCB, 0x15, 0xCA, 0xF5, 0x03, 0xD3, 0x15, 0x04, 0xD2, 0xF5, 0x93, 0xCA, 0xF4, 0xC2, 0xF4, 0xBB, 0x53, 0xDD, 0x99, 0xEE, 0xFC, 0xE7, 0x3C, 0xDF, 0x5C, 0xD7, 0x1B, 0xD7, 0x3B, 0xDF, 0x7C, 0xE7, 0x7D, 0xEF, 0x7E, 0xBD, 0x37, 0x71, 0xCD, 0x89, 0xF0, 0x9A, 0x11, 0xB2, 0x93, 0xC2, 0xF5, 0xCB, 0x15, 0xCA, 0xF5, 0x01, 0xD3, 0x15, 0x82, 0xD3, 0x16, 0xD3, 0x15, 0xD2, 0xF5, 0x01, 0xD2, 0xF6, 0x02, 0xD2, 0xF5, 0x84, 0xCB, 0x14, 0xC3, 0x34, 0xCC, 0x56, 0xFE, 0xDC, 0xEF, 0x1B, 0x01, 0xE7, 0x3B, 0x05, 0xDF, 0x3A, 0x01, 0xDF, 0x5A, 0x8A, 0xDF, 0x7B, 0xE7, 0x5B, 0xEF, 0x5B, 0xFF, 0x7E, 0xA3, 0x52, 0x92, 0x30, 0x91, 0xF0, + 0xAA, 0x52, 0xC2, 0xD4, 0xCA, 0xD4, 0xCA, 0xD5, 0x06, 0xD2, 0xF5, 0x01, 0xD3, 0x15, 0x01, 0xCB, 0x15, 0x82, 0xC2, 0xF4, 0xA2, 0xD1, 0xFF, 0x3E, 0x01, 0xEF, 0x1C, 0x04, 0xEF, 0x3C, 0x87, 0xF7, 0x5C, 0xFF, 0x3D, 0xFF, 0x1E, 0xFE, 0x1C, 0xA2, 0x50, 0xA9, 0xD0, 0xB9, 0xB1, 0xC1, 0xB2, 0x01, 0xC1, 0xD3, 0x01, 0xC1, 0xF4, 0x89, 0xB9, 0xF5, 0xBA, 0x16, 0xB2, 0x58, 0xA2, 0xBB, 0x40, 0xD7, 0x29, 0x1A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x9D, 0x11, 0x9E, 0x03, 0x09, 0x9E, 0x01, 0x11, 0x9E, 0x95, 0x19, 0x7D, 0x21, 0x3C, 0x39, 0x1A, 0x48, 0xD8, 0x9A, 0x3B, 0xAA, 0x39, 0xAA, 0x37, 0xAA, 0x16, 0xAA, 0x37, 0xA2, 0x57, 0x92, 0x16, 0x7A, 0x36, 0x6B, 0x18, 0x54, 0x1A, 0x4D, 0xBD, 0x36, 0x1D, 0x2E, 0x1D, 0x26, 0x5C, 0x0E, 0x79, 0x06, 0xD8, 0x06, 0xD7, 0x07, 0x18, 0x01, 0x0F, 0x58, 0x89, 0x1F, 0x7A, 0x2F, 0x5A, 0x3F, 0x1C, 0x5E, 0xBD, 0x75, 0x9B, 0x52, 0xF3, 0x82, 0xB4, 0x9A, 0x34, 0xA2, 0x35, 0xAA, 0x35, 0x01, 0x99, 0xF4, 0x81, 0x71, 0x31, 0x69, 0x31, 0x01, 0x69, 0x52, 0x8C, 0x69, 0x11, 0x92, 0x15, 0xA2, 0x36, 0xAA, 0x56, 0xA2, 0x15, 0xA2, 0x76, 0x71, 0x51, 0x38, 0x4D, 0x49, 0x10, 0x49, 0x71, 0x41, 0x51, 0x39, 0x50, 0x39, 0x51, 0x03, 0x31, 0x50, 0x03, 0x29, 0x50, 0x06, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x85, 0x21, 0x2F, + 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x50, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0xB5, 0x1A, 0x17, 0x19, 0xF7, 0x11, 0x95, 0x09, 0x12, 0x11, 0x31, 0x19, 0x51, 0x21, 0x51, 0x02, 0x19, 0x30, 0x01, 0x19, 0x2F, 0x01, 0x19, 0x30, 0x86, 0x19, 0x31, 0x11, 0x32, 0x11, 0x13, 0x21, 0xB6, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x01, 0x11, 0x12, 0x81, 0x19, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x12, 0x82, 0x19, 0x53, 0x19, 0x54, 0x19, 0x74, 0x01, 0x11, 0x75, 0x80, 0x11, 0x95, 0x01, 0x11, 0x96, 0x01, 0x19, 0xB7, 0x84, 0x19, 0xB6, 0x19, 0x96, 0x19, 0x75, 0x19, 0x54, 0x11, 0x33, 0x01, 0x11, 0x12, 0x80, 0x19, 0x12, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, + 0x19, 0x11, 0x8D, 0x19, 0x32, 0x11, 0x53, 0x11, 0x74, 0x21, 0xF6, 0x19, 0xD6, 0x19, 0xD7, 0x21, 0xD7, 0x11, 0x75, 0x09, 0x13, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x19, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x50, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x06, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x21, 0x2F, 0x05, 0x21, 0x10, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x20, 0xEF, 0x29, 0x10, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x8E, 0x21, 0x31, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x19, 0x53, 0x19, 0x74, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF6, 0x19, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x11, 0x03, 0x19, 0x31, 0x01, 0x19, 0x10, 0x82, 0x21, 0x30, 0x19, 0x10, 0x21, 0x10, 0x01, 0x19, 0x30, 0x80, 0x21, 0x30, 0x01, 0x19, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x08, 0x21, 0x10, 0x80, 0x21, 0x0F, + 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x31, 0x80, 0x19, 0x11, 0x02, 0x19, 0x31, 0x03, 0x19, 0x32, 0x80, 0x19, 0x13, 0x01, 0x19, 0x33, 0x01, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x30, 0x84, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x19, 0x95, 0x02, 0x21, 0xF7, 0x83, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x30, 0x29, 0x51, 0x03, 0x21, 0x30, 0x84, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x11, 0x32, 0x01, 0x11, 0x33, 0x90, 0x11, 0x74, 0x19, 0xB5, 0x19, 0x95, 0x19, 0xB6, 0x19, 0xB5, 0x19, 0x95, 0x19, 0xB5, 0x19, + 0xB6, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x19, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x05, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x30, 0xEF, 0x30, 0x8D, 0x48, 0xCE, 0xAA, 0xD5, 0xB2, 0x53, 0xAA, 0x12, 0x01, 0xA1, 0xF1, 0x84, 0x89, 0xEE, 0xFF, 0x7F, 0xEF, 0x5C, 0xE7, 0x7C, 0xDF, 0x5B, 0x02, 0xD7, 0x3A, 0x02, 0xD7, 0x5A, 0x80, 0xD7, 0x7A, 0x01, 0xDF, 0x7B, 0x87, 0xEF, 0x7D, 0xE6, 0xBC, 0x8B, 0x31, 0x82, 0x2F, 0x92, 0x30, 0xAA, 0xB3, 0xBA, 0xF4, 0xCB, 0x35, 0x01, 0xD3, 0x35, 0x03, 0xD3, 0x15, 0x81, 0xD3, 0x35, 0xDB, 0x36, 0x01, 0xD3, 0x15, 0x85, 0xCB, 0x15, 0xC3, 0x14, 0xBB, 0x33, 0xC4, 0x55, 0xE6, 0x5B, 0xE7, 0x3C, 0x01, 0xDF, 0x5B, 0x01, 0xDF, 0x3B, 0x01, 0xD7, 0x3A, 0x80, 0xD7, 0x5A, 0x01, 0xD7, 0x3A, 0x80, 0xCF, 0x3A, 0x05, 0xD7, 0x5A, 0x01, 0xDF, 0x7B, 0x87, 0xE7, 0x7C, 0xEF, 0x1D, 0x8B, 0x30, 0x82, 0x4F, 0x92, 0x31, 0xAA, 0x93, 0xBA, 0xD4, 0xCB, 0x15, 0x02, 0xD3, 0x16, 0x80, 0xD3, 0x15, 0x02, 0xDB, 0x15, 0x80, 0xDB, 0x35, 0x01, 0xD3, 0x15, 0x85, 0xCB, 0x14, 0xC3, 0x14, 0xB3, 0x12, 0xE5, 0xDA, 0xEF, 0x1C, 0xE7, 0x3B, 0x01, 0xDF, 0x3A, 0x80, 0xD7, 0x3A, 0x04, 0xD7, 0x5A, 0x80, 0xD7, 0x3A, 0x01, 0xD7, 0x5A, 0x01, 0xD7, 0x3A, 0x8D, 0xD7, 0x5A, 0xD7, 0x3A, 0xD7, 0x5A, 0xDF, 0x5B, 0xDF, 0x7C, 0xEF, 0x7D, 0xEE, 0xDD, 0x8B, 0x31, 0x8A, 0x50, 0x9A, 0x31, 0xAA, 0x72, 0xC2, 0xD4, 0xCA, 0xF5, + 0xD3, 0x15, 0x01, 0xD3, 0x16, 0x80, 0xDB, 0x16, 0x01, 0xDB, 0x15, 0x04, 0xD3, 0x15, 0x82, 0xD3, 0x35, 0xD3, 0x36, 0xBA, 0xB4, 0x01, 0xA2, 0x12, 0x83, 0xB2, 0x94, 0xC2, 0xF5, 0xCB, 0x15, 0xD3, 0x36, 0x03, 0xD3, 0x15, 0x01, 0xDB, 0x15, 0x80, 0xD3, 0x15, 0x03, 0xD2, 0xF5, 0x86, 0xD2, 0xF4, 0xC3, 0x13, 0xCC, 0x35, 0xFE, 0x9B, 0xF7, 0x3C, 0xEF, 0x5A, 0xE7, 0x3A, 0x04, 0xDF, 0x5A, 0x80, 0xD7, 0x3A, 0x01, 0xD7, 0x39, 0x81, 0xDF, 0x59, 0xD7, 0x39, 0x01, 0xDF, 0x5A, 0x89, 0xDF, 0x39, 0xDF, 0x5A, 0xE7, 0x9B, 0xE7, 0x5A, 0xEF, 0x1B, 0xD5, 0x58, 0x82, 0x2E, 0x91, 0xEF, 0xA2, 0x31, 0xC2, 0xD4, 0x02, 0xCA, 0xF5, 0x08, 0xD3, 0x15, 0x86, 0xCB, 0x15, 0xC3, 0x14, 0xBB, 0x53, 0xB3, 0xF3, 0xF6, 0xFD, 0xEF, 0x3C, 0xE7, 0x5B, 0x01, 0xDF, 0x3B, 0x8A, 0xDF, 0x5B, 0xE7, 0x5C, 0xEF, 0x7D, 0xC5, 0x98, 0x7A, 0x0E, 0x92, 0x10, 0xA2, 0x31, 0xB2, 0xB3, 0xCB, 0x15, 0xD3, 0x36, 0xD3, 0x16, 0x02, 0xD3, 0x15, 0x03, 0xDB, 0x15, 0x01, 0xD3, 0x15, 0x89, 0xD2, 0xF4, 0xCB, 0x34, 0xC3, 0x73, 0xDD, 0x38, 0xFF, 0x1C, 0xEF, 0x5B, 0xE7, 0x7A, 0xDF, 0x7A, 0xDF, 0x5A, 0xD7, 0x3A, 0x02, 0xD7, 0x39, 0x80, 0xD7, 0x5A, 0x01, 0xDF, 0x7A, 0x89, 0xDF, 0x9A, 0xE7, 0x9B, 0xEF, 0x9B, 0xFF, 0x7E, 0x9B, 0x31, 0x89, 0xEF, 0x9A, 0x11, 0xB2, 0x73, 0xC2, 0xF4, 0xCB, 0x15, 0x02, 0xD3, 0x15, 0x03, 0xD2, 0xF5, 0x8B, 0xDA, 0xF5, 0xDB, 0x16, 0xDB, 0x15, 0xDB, 0x16, 0xDB, 0x36, 0xD3, 0x36, 0xCB, 0x15, 0x99, 0xF0, 0x99, 0xF1, 0xB2, 0x73, 0xC2, 0xF5, 0xCB, 0x16, 0x03, 0xD3, 0x16, 0x04, + 0xD3, 0x15, 0x86, 0xD3, 0x35, 0xCB, 0x34, 0xC3, 0x14, 0xBB, 0x33, 0xCC, 0xB6, 0xFF, 0x1D, 0xEF, 0x5C, 0x03, 0xDF, 0x5B, 0x01, 0xDF, 0x5C, 0x88, 0xEF, 0x5D, 0xEE, 0xFD, 0x8B, 0x31, 0x8A, 0x50, 0x9A, 0x31, 0xAA, 0x92, 0xBA, 0xD4, 0xCB, 0x15, 0xD3, 0x35, 0x03, 0xD3, 0x15, 0x80, 0xDB, 0x15, 0x02, 0xD3, 0x15, 0x87, 0xD2, 0xF5, 0xCA, 0xF4, 0xC2, 0xF4, 0xBB, 0x53, 0xDD, 0xB9, 0xEE, 0xFB, 0xE7, 0x3B, 0xE7, 0x5B, 0x01, 0xDF, 0x3B, 0x01, 0xE7, 0x7C, 0x87, 0xF7, 0x7E, 0xAC, 0x95, 0x79, 0xEE, 0x89, 0xF0, 0x9A, 0x31, 0xB2, 0xB3, 0xCB, 0x15, 0xD3, 0x36, 0x01, 0xD3, 0x16, 0x01, 0xD3, 0x36, 0x01, 0xD3, 0x15, 0x80, 0xD2, 0xF5, 0x01, 0xD3, 0x16, 0x01, 0xD3, 0x15, 0x86, 0xCB, 0x34, 0xC3, 0x73, 0xDD, 0x38, 0xFF, 0x1C, 0xEF, 0x3B, 0xE7, 0x3B, 0xE7, 0x5B, 0x05, 0xDF, 0x3A, 0x01, 0xDF, 0x5A, 0x88, 0xE7, 0x7A, 0xE7, 0x7B, 0xEF, 0x9B, 0xFF, 0x9E, 0xAB, 0xD3, 0x92, 0x50, 0x91, 0xEF, 0xA2, 0x31, 0xC2, 0xF4, 0x01, 0xCA, 0xF5, 0x01, 0xD2, 0xF5, 0x81, 0xD3, 0x15, 0xDB, 0x16, 0x04, 0xD3, 0x15, 0x89, 0xCB, 0x15, 0xCB, 0x14, 0xC2, 0xF4, 0xA2, 0xF1, 0xFF, 0x1E, 0xF7, 0x3C, 0xEF, 0x3C, 0xEF, 0x3B, 0xEF, 0x3C, 0xEF, 0x3B, 0x01, 0xEF, 0x5C, 0x95, 0xEF, 0x5B, 0xF7, 0x7C, 0xFF, 0x5D, 0xFF, 0x3E, 0xFD, 0xFC, 0xA2, 0x70, 0xA9, 0xD0, 0xB9, 0xB1, 0xC1, 0xB2, 0xC1, 0xD3, 0xC1, 0xD4, 0xB9, 0xF4, 0xC1, 0xF5, 0xBA, 0x16, 0xB2, 0x58, 0x9A, 0x9B, 0x40, 0xF7, 0x29, 0x1A, 0x21, 0x5B, 0x19, 0x7D, 0x11, 0x9D, 0x11, 0x9E, 0x02, 0x09, 0x9E, 0xA7, 0x09, 0x7E, 0x09, 0x9E, + 0x11, 0x9E, 0x11, 0x5D, 0x19, 0x5D, 0x29, 0x3C, 0x39, 0x1A, 0x61, 0x18, 0x9A, 0x5A, 0xA2, 0x38, 0xAA, 0x37, 0xAA, 0x57, 0xA2, 0x36, 0x9A, 0x36, 0x82, 0x36, 0x6A, 0xB7, 0x5B, 0x98, 0x55, 0x5C, 0x46, 0x1D, 0x36, 0x1D, 0x26, 0x5B, 0x0E, 0x79, 0x06, 0xD8, 0x07, 0x18, 0x06, 0xF7, 0x07, 0x37, 0x17, 0x78, 0x1F, 0x79, 0x2F, 0x5A, 0x47, 0x1C, 0x66, 0xBD, 0x6D, 0x3A, 0x5A, 0xD3, 0x82, 0x94, 0x92, 0x34, 0xA2, 0x14, 0xA2, 0x15, 0x99, 0xF5, 0x91, 0xD4, 0x71, 0x31, 0x02, 0x69, 0x52, 0x8D, 0x61, 0x11, 0x79, 0x52, 0xA2, 0x56, 0xAA, 0x56, 0xA1, 0xF4, 0xA2, 0x35, 0x8A, 0x14, 0x48, 0x8E, 0x40, 0xCF, 0x49, 0x50, 0x41, 0x71, 0x39, 0x30, 0x31, 0x50, 0x31, 0x51, 0x01, 0x31, 0x50, 0x01, 0x29, 0x50, 0x81, 0x29, 0x30, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x04, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8F, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x95, 0x19, 0xF7, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x12, 0x11, 0x31, 0x19, 0x51, 0x21, 0x51, 0x21, 0x50, 0x19, 0x2F, 0x21, 0x2F, 0x21, + 0x50, 0x19, 0x2F, 0x01, 0x19, 0x30, 0x83, 0x19, 0x31, 0x11, 0x32, 0x09, 0x12, 0x19, 0xB5, 0x01, 0x21, 0xF7, 0x80, 0x19, 0x95, 0x01, 0x11, 0x12, 0x80, 0x19, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x02, 0x11, 0x53, 0x02, 0x11, 0x54, 0x83, 0x11, 0x74, 0x11, 0x54, 0x11, 0x53, 0x19, 0x33, 0x01, 0x19, 0x32, 0x80, 0x19, 0x12, 0x03, 0x19, 0x11, 0x84, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8E, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x19, 0x94, 0x19, 0xB6, 0x19, 0xF7, 0x21, 0xF7, 0x21, 0xD7, 0x11, 0x55, 0x11, 0x34, 0x11, 0x13, 0x11, 0x12, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x80, 0x21, + 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x87, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x10, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8E, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x19, 0x74, 0x19, 0xB6, 0x22, 0x17, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x03, 0x19, 0x31, 0x80, 0x19, 0x30, 0x03, 0x19, 0x10, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x02, 0x19, 0x10, 0x83, 0x21, 0x31, + 0x19, 0x31, 0x21, 0x31, 0x21, 0x32, 0x01, 0x19, 0x11, 0x03, 0x19, 0x12, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0A, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x0C, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x31, 0x82, 0x19, 0x33, 0x11, 0x33, 0x11, 0x75, 0x01, 0x21, 0xF7, 0x87, 0x22, 0x17, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x21, 0x51, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x10, 0x06, 0x21, 0x30, 0x02, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x11, 0x85, 0x10, 0xF1, 0x11, 0x11, 0x11, 0x12, 0x11, 0x32, 0x19, 0x73, 0x19, 0x74, 0x03, 0x19, 0x53, 0x01, 0x11, 0x32, 0x84, 0x11, 0x11, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x4F, 0x02, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x05, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x89, 0x28, 0xEF, 0x30, 0x8D, 0x48, 0xAE, 0xAA, 0xD5, 0xB2, 0x53, 0xAA, 0x12, 0xA9, 0xF1, 0xA1, 0xF1, 0x89, 0xEE, 0xFF, 0x7F, 0x01, 0xEF, 0x7C, 0x83, 0xE7, 0x5B, 0xDF, 0x3A, 0xDF, 0x5A, 0xDF, 0x3A, 0x01, + 0xDF, 0x5A, 0x80, 0xDF, 0x59, 0x01, 0xDF, 0x7A, 0x89, 0xE7, 0x9B, 0xEF, 0x9D, 0xE6, 0xBC, 0x8B, 0x51, 0x82, 0x2F, 0x92, 0x30, 0xAA, 0xD3, 0xBB, 0x14, 0xCB, 0x35, 0xD3, 0x56, 0x01, 0xD3, 0x36, 0x8D, 0xD3, 0x35, 0xD3, 0x15, 0xD3, 0x35, 0xDB, 0x36, 0xDB, 0x56, 0xD3, 0x35, 0xD3, 0x15, 0xCB, 0x35, 0xCB, 0x34, 0xBB, 0x74, 0xC4, 0x75, 0xE6, 0x5A, 0xEF, 0x3C, 0xE7, 0x5B, 0x03, 0xDF, 0x5A, 0x01, 0xD7, 0x5A, 0x80, 0xD7, 0x3A, 0x06, 0xD7, 0x5A, 0x8A, 0xDF, 0x5A, 0xDF, 0x7A, 0xE7, 0x9B, 0xEF, 0x7C, 0xF7, 0x1D, 0x8B, 0x30, 0x82, 0x4F, 0x92, 0x30, 0xAA, 0x92, 0xBA, 0xF4, 0xCB, 0x36, 0x02, 0xD3, 0x36, 0x02, 0xDB, 0x36, 0x80, 0xDB, 0x35, 0x03, 0xD3, 0x35, 0x85, 0xCB, 0x34, 0xB3, 0x52, 0xE5, 0xF9, 0xF7, 0x1C, 0xEF, 0x3B, 0xE7, 0x5A, 0x03, 0xDF, 0x5A, 0x07, 0xD7, 0x5A, 0x82, 0xD7, 0x59, 0xDF, 0x5A, 0xDF, 0x7A, 0x01, 0xE7, 0x7B, 0x87, 0xEF, 0x7D, 0xF6, 0xFD, 0x93, 0x31, 0x8A, 0x50, 0x9A, 0x31, 0xAA, 0x92, 0xC2, 0xD4, 0xCB, 0x35, 0x02, 0xD3, 0x36, 0x01, 0xDB, 0x36, 0x80, 0xD3, 0x15, 0x01, 0xD3, 0x35, 0x80, 0xDB, 0x35, 0x01, 0xD3, 0x35, 0x82, 0xD3, 0x36, 0xD3, 0x56, 0xBA, 0x94, 0x01, 0xA2, 0x12, 0x81, 0xBA, 0xD5, 0xCB, 0x15, 0x01, 0xD3, 0x36, 0x82, 0xDB, 0x56, 0xD3, 0x36, 0xD3, 0x35, 0x02, 0xDB, 0x36, 0x01, 0xDB, 0x16, 0x02, 0xD3, 0x15, 0x85, 0xCB, 0x14, 0xC3, 0x53, 0xED, 0xD9, 0xFE, 0xFB, 0xF7, 0x5B, 0xEF, 0x5A, 0x01, 0xE7, 0x5A, 0x03, 0xDF, 0x59, 0x82, 0xDF, 0x5A, 0xDF, 0x7A, 0xDF, 0x5A, 0x04, 0xDF, 0x59, 0x80, 0xE7, 0x79, 0x01, 0xE7, + 0x7A, 0x8A, 0xEF, 0x3B, 0xE6, 0x5A, 0x92, 0xEF, 0x89, 0xEE, 0x91, 0xCF, 0xB2, 0xB3, 0xC2, 0xF5, 0xCB, 0x15, 0xD3, 0x35, 0xD3, 0x36, 0xD3, 0x15, 0x04, 0xD3, 0x35, 0x81, 0xD3, 0x36, 0xD3, 0x15, 0x01, 0xCB, 0x35, 0x85, 0xC3, 0x54, 0xB3, 0xD3, 0xF6, 0x9C, 0xF7, 0x3C, 0xEF, 0x5B, 0xE7, 0x3B, 0x01, 0xE7, 0x5B, 0x87, 0xE7, 0x5C, 0xF7, 0x7D, 0xBD, 0x16, 0x7A, 0x0E, 0x92, 0x10, 0x9A, 0x51, 0xB2, 0xB3, 0xCB, 0x36, 0x01, 0xD3, 0x36, 0x82, 0xD3, 0x15, 0xD3, 0x36, 0xD3, 0x35, 0x01, 0xDB, 0x15, 0x01, 0xDB, 0x35, 0x80, 0xD3, 0x15, 0x01, 0xD3, 0x35, 0x86, 0xCB, 0x34, 0xC3, 0xB4, 0xED, 0xD9, 0xFF, 0x5C, 0xEF, 0x7B, 0xE7, 0x7B, 0xE7, 0x7A, 0x01, 0xDF, 0x5A, 0x81, 0xDF, 0x59, 0xD7, 0x59, 0x03, 0xDF, 0x7A, 0x01, 0xE7, 0x9A, 0x89, 0xEF, 0xBB, 0xFF, 0x9D, 0xBC, 0x75, 0x8A, 0x2F, 0x92, 0x30, 0xAA, 0x72, 0xBA, 0xF4, 0xC3, 0x15, 0xCB, 0x35, 0xD3, 0x35, 0x03, 0xD3, 0x15, 0x81, 0xD2, 0xF5, 0xDA, 0xF5, 0x01, 0xDB, 0x15, 0x83, 0xDB, 0x35, 0xD3, 0x35, 0xD3, 0x56, 0xCB, 0x35, 0x01, 0x99, 0xD0, 0x81, 0xB2, 0x93, 0xC2, 0xF5, 0x04, 0xD3, 0x36, 0x05, 0xD3, 0x35, 0x87, 0xCB, 0x35, 0xCB, 0x34, 0xBB, 0x33, 0xCC, 0xD6, 0xFF, 0x3D, 0xEF, 0x5C, 0xE7, 0x7B, 0xE7, 0x5B, 0x01, 0xDF, 0x5B, 0x01, 0xE7, 0x7C, 0x8C, 0xEF, 0x7D, 0xF6, 0xFD, 0x8B, 0x31, 0x8A, 0x4F, 0x92, 0x31, 0xAA, 0x92, 0xBA, 0xF4, 0xCB, 0x35, 0xD3, 0x36, 0xD3, 0x35, 0xD3, 0x36, 0xDB, 0x36, 0xD3, 0x35, 0x01, 0xDB, 0x35, 0x80, 0xD3, 0x35, 0x01, 0xD3, 0x15, 0x92, 0xCB, 0x14, 0xCB, 0x34, 0xBB, 0x73, + 0xE5, 0xD9, 0xEF, 0x1B, 0xEF, 0x5B, 0xE7, 0x5B, 0xDF, 0x3A, 0xDF, 0x3B, 0xE7, 0x7B, 0xEF, 0x7C, 0xFF, 0x7E, 0x9B, 0xF2, 0x82, 0x0E, 0x91, 0xF0, 0x9A, 0x31, 0xB2, 0xD4, 0xCB, 0x36, 0xD3, 0x56, 0x05, 0xD3, 0x36, 0x80, 0xDB, 0x36, 0x01, 0xD3, 0x36, 0x01, 0xD3, 0x35, 0x88, 0xCB, 0x54, 0xC3, 0xD4, 0xED, 0xD9, 0xFF, 0x3C, 0xEF, 0x7B, 0xEF, 0x5A, 0xE7, 0x5A, 0xDF, 0x3A, 0xDF, 0x39, 0x03, 0xDF, 0x5A, 0x02, 0xE7, 0x5A, 0x87, 0xE7, 0x7B, 0xEF, 0x9B, 0xFF, 0x9D, 0xB4, 0x54, 0x8A, 0x4F, 0x89, 0xEF, 0x9A, 0x10, 0xC3, 0x15, 0x01, 0xD3, 0x35, 0x01, 0xD3, 0x15, 0x01, 0xD3, 0x36, 0x04, 0xD3, 0x35, 0x84, 0xCB, 0x15, 0xCB, 0x35, 0xC3, 0x14, 0xAA, 0xF1, 0xFF, 0x3E, 0x01, 0xF7, 0x5C, 0x80, 0xEF, 0x5B, 0x02, 0xEF, 0x3B, 0x02, 0xEF, 0x5B, 0x86, 0xF7, 0x7C, 0xFF, 0x7D, 0xFF, 0x5E, 0xFE, 0x7D, 0x99, 0xEE, 0xA9, 0xD0, 0xB9, 0xB2, 0x01, 0xC1, 0xD3, 0x8A, 0xC1, 0xD4, 0xB9, 0xF5, 0xB2, 0x16, 0xAA, 0x38, 0x9A, 0x7A, 0x40, 0xD7, 0x31, 0x1A, 0x21, 0x5B, 0x19, 0x7C, 0x11, 0x7D, 0x11, 0x9E, 0x05, 0x09, 0x9E, 0xA6, 0x11, 0x7E, 0x11, 0x5D, 0x19, 0x5D, 0x29, 0x1B, 0x38, 0xD9, 0x71, 0xDA, 0xA2, 0x7A, 0xA2, 0x37, 0xA2, 0x16, 0xA2, 0x36, 0x9A, 0x36, 0x8A, 0x57, 0x7A, 0x96, 0x5B, 0x37, 0x5D, 0x1B, 0x4D, 0xFC, 0x3E, 0x3C, 0x2E, 0x5B, 0x0E, 0x78, 0x06, 0xD8, 0x0F, 0x38, 0x07, 0x37, 0x07, 0x57, 0x0F, 0x58, 0x1F, 0x79, 0x2F, 0x5A, 0x47, 0x1B, 0x66, 0xBC, 0x64, 0xD8, 0x52, 0xB2, 0x82, 0x94, 0x92, 0x34, 0xA2, 0x35, 0xA2, 0x15, 0x9A, 0x15, 0x89, 0xD4, 0x69, 0x32, + 0x69, 0x72, 0x61, 0x72, 0x01, 0x61, 0x52, 0x8D, 0x69, 0x31, 0x92, 0x15, 0xA2, 0x56, 0x99, 0xF4, 0x9A, 0x14, 0x9A, 0x76, 0x69, 0x30, 0x40, 0x6D, 0x40, 0xEF, 0x41, 0x51, 0x39, 0x50, 0x31, 0x30, 0x31, 0x50, 0x29, 0x30, 0x04, 0x29, 0x50, 0x07, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x19, 0xB5, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x12, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x4F, 0x01, 0x21, 0x2F, 0x01, 0x19, 0x30, 0x86, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x21, 0xD6, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x01, 0x11, 0x32, 0x80, 0x19, 0x31, 0x01, 0x21, 0x10, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x20, 0xEF, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x31, 0x82, 0x19, 0x11, 0x10, 0xF1, 0x11, 0x11, 0x02, 0x19, 0x52, 0x80, 0x11, 0x32, 0x02, 0x11, 0x12, 0x80, 0x11, + 0x11, 0x01, 0x19, 0x31, 0x81, 0x21, 0x52, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x10, 0x19, 0x11, 0x11, 0x11, 0x11, 0x33, 0x11, 0x74, 0x19, 0x95, 0x22, 0x17, 0x19, 0xF7, 0x21, 0xF7, 0x19, 0x75, 0x11, 0x13, 0x11, 0x12, 0x01, 0x19, 0x52, 0x81, 0x19, 0x30, 0x19, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x10, 0x0A, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x31, 0x01, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x10, 0x29, + 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x33, 0x19, 0x74, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x86, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x11, 0x19, 0x10, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x21, 0x10, 0x82, 0x19, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x04, 0x21, 0x31, 0x05, 0x21, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x17, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0E, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x89, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, + 0x33, 0x11, 0x74, 0x21, 0xD7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x74, 0x01, 0x11, 0x32, 0x81, 0x19, 0x31, 0x19, 0x51, 0x01, 0x21, 0x51, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x81, 0x19, 0x10, 0x19, 0x11, 0x03, 0x19, 0x31, 0x02, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x11, 0x11, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x4F, 0x29, 0x50, 0x01, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x06, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8D, 0x28, 0xEF, 0x30, 0x8D, 0x48, 0xAD, 0xB2, 0xD5, 0xB2, 0x53, 0xA9, 0xF2, 0xA9, 0xF1, 0xA1, 0xF1, 0x89, 0xEE, 0xFF, 0x7F, 0xEF, 0x7C, 0xEF, 0x9B, 0xE7, 0x7A, 0xDF, 0x5A, 0x03, 0xDF, 0x59, 0x01, 0xDF, 0x79, 0x8A, 0xE7, 0x9A, 0xE7, 0xBB, 0xF7, 0xBD, 0xEE, 0xDC, 0x93, 0x50, 0x82, 0x2F, 0x92, 0x30, 0xAA, 0xD3, 0xBB, 0x14, 0xCB, 0x35, 0xD3, 0x56, 0x01, 0xDB, 0x56, 0x02, 0xD3, 0x35, 0x01, 0xDB, 0x56, 0x01, 0xD3, 0x35, 0x88, 0xD3, 0x55, 0xCB, 0x54, 0xBB, 0x74, 0xC4, 0x95, 0xEE, 0x7A, 0xEF, 0x5B, 0xE7, 0x7B, 0xE7, 0x5A, 0xE7, 0x7A, 0x03, 0xDF, 0x5A, 0x82, 0xDF, 0x59, 0xDF, 0x7A, 0xDF, 0x59, 0x02, 0xDF, 0x79, 0x80, 0xDF, 0x59, 0x01, 0xDF, 0x7A, 0x89, 0xE7, 0x7A, 0xE7, 0x9B, 0xEF, 0x9C, 0xF7, 0x1D, 0x8B, + 0x30, 0x82, 0x4F, 0x92, 0x30, 0xAA, 0x92, 0xBA, 0xF4, 0xCB, 0x36, 0x02, 0xD3, 0x56, 0x01, 0xDB, 0x56, 0x81, 0xDB, 0x36, 0xDB, 0x35, 0x02, 0xD3, 0x35, 0x85, 0xD3, 0x55, 0xCB, 0x34, 0xBB, 0x73, 0xE5, 0xD9, 0xF7, 0x3C, 0xEF, 0x5B, 0x02, 0xE7, 0x5A, 0x05, 0xDF, 0x59, 0x05, 0xDF, 0x79, 0x8A, 0xDF, 0x7A, 0xE7, 0x9A, 0xE7, 0x9B, 0xF7, 0x9D, 0xF6, 0xFD, 0x93, 0x30, 0x8A, 0x50, 0x9A, 0x51, 0xAA, 0x92, 0xC3, 0x14, 0xCB, 0x35, 0x01, 0xD3, 0x56, 0x02, 0xDB, 0x56, 0x01, 0xDB, 0x36, 0x82, 0xD3, 0x35, 0xDB, 0x56, 0xD3, 0x55, 0x01, 0xD3, 0x56, 0x81, 0xDB, 0x77, 0xB2, 0x73, 0x01, 0xA2, 0x12, 0x81, 0xBA, 0xD5, 0xCB, 0x36, 0x01, 0xD3, 0x56, 0x80, 0xDB, 0x56, 0x01, 0xD3, 0x56, 0x80, 0xDB, 0x56, 0x01, 0xDB, 0x36, 0x81, 0xDB, 0x56, 0xDB, 0x36, 0x01, 0xD3, 0x15, 0x86, 0xD3, 0x35, 0xCB, 0x34, 0xCC, 0x15, 0xFE, 0xBB, 0xF7, 0x3B, 0xEF, 0x5A, 0xEF, 0x59, 0x05, 0xE7, 0x59, 0x04, 0xDF, 0x59, 0x02, 0xE7, 0x79, 0x01, 0xE7, 0x7A, 0x88, 0xEF, 0x9A, 0xF7, 0x9B, 0xFF, 0x5D, 0xC5, 0x16, 0x79, 0xCD, 0x91, 0xCF, 0xA2, 0x52, 0xC2, 0xF5, 0xCB, 0x35, 0x01, 0xD3, 0x56, 0x01, 0xD3, 0x36, 0x80, 0xD3, 0x56, 0x01, 0xDB, 0x56, 0x02, 0xD3, 0x36, 0x87, 0xD3, 0x35, 0xCB, 0x55, 0xC3, 0x74, 0xBB, 0xD3, 0xF6, 0x7B, 0xF7, 0x3C, 0xEF, 0x7B, 0xEF, 0x5B, 0x01, 0xEF, 0x7B, 0x87, 0xEF, 0x7C, 0xFF, 0x9D, 0xBD, 0x16, 0x82, 0x2E, 0x92, 0x30, 0xA2, 0x51, 0xB2, 0xD3, 0xCB, 0x56, 0x01, 0xD3, 0x56, 0x01, 0xD3, 0x36, 0x02, 0xDB, 0x36, 0x02, 0xDB, 0x35, 0x01, 0xD3, 0x35, 0x88, 0xC3, + 0x54, 0xC3, 0xF4, 0xF6, 0x3A, 0xF7, 0x5C, 0xEF, 0x7B, 0xE7, 0x7A, 0xE7, 0x9A, 0xE7, 0x7A, 0xDF, 0x7A, 0x02, 0xDF, 0x79, 0x80, 0xDF, 0x59, 0x01, 0xDF, 0x79, 0x01, 0xE7, 0x9A, 0x87, 0xEF, 0xBB, 0xFF, 0x9D, 0xCD, 0x37, 0x82, 0x2E, 0x92, 0x30, 0xA2, 0x92, 0xBB, 0x14, 0xC3, 0x34, 0x01, 0xCB, 0x35, 0x03, 0xD3, 0x35, 0x81, 0xD3, 0x15, 0xD2, 0xF5, 0x01, 0xD3, 0x15, 0x89, 0xD3, 0x35, 0xD3, 0x55, 0xD3, 0x76, 0xCB, 0x55, 0x99, 0xF0, 0x91, 0xD0, 0xB2, 0x93, 0xC2, 0xF5, 0xD3, 0x36, 0xD3, 0x56, 0x01, 0xD3, 0x36, 0x82, 0xD3, 0x56, 0xD3, 0x36, 0xDB, 0x56, 0x03, 0xD3, 0x55, 0x86, 0xCB, 0x55, 0xCB, 0x34, 0xBB, 0x53, 0xCC, 0xD6, 0xFF, 0x3D, 0xEF, 0x5C, 0xE7, 0x7B, 0x01, 0xE7, 0x5B, 0x01, 0xE7, 0x7B, 0x8B, 0xEF, 0x9C, 0xF7, 0x7D, 0xF6, 0xFD, 0x8B, 0x30, 0x8A, 0x4F, 0x92, 0x30, 0xAA, 0xB3, 0xBA, 0xF4, 0xCB, 0x55, 0xD3, 0x56, 0xD3, 0x36, 0xD3, 0x56, 0x03, 0xDB, 0x56, 0x80, 0xDB, 0x36, 0x01, 0xD3, 0x35, 0x01, 0xCB, 0x34, 0x84, 0xBB, 0x93, 0xE5, 0xF9, 0xF7, 0x3B, 0xEF, 0x7B, 0xEF, 0x7A, 0x01, 0xE7, 0x5A, 0x88, 0xEF, 0x9B, 0xF7, 0x9C, 0xFF, 0x7D, 0xA3, 0xF2, 0x82, 0x0E, 0x92, 0x10, 0x9A, 0x31, 0xB2, 0xD4, 0xCB, 0x56, 0x02, 0xD3, 0x56, 0x82, 0xD3, 0x36, 0xDB, 0x56, 0xD3, 0x36, 0x01, 0xDB, 0x56, 0x01, 0xD3, 0x36, 0x8B, 0xD3, 0x35, 0xCB, 0x35, 0xC3, 0x74, 0xC3, 0xF4, 0xF6, 0x3A, 0xFF, 0x7C, 0xF7, 0x7B, 0xEF, 0x7A, 0xE7, 0x7A, 0xE7, 0x59, 0xDF, 0x39, 0xDF, 0x59, 0x01, 0xDF, 0x39, 0x8E, 0xE7, 0x59, 0xE7, 0x5A, 0xE7, 0x7A, 0xEF, 0x7A, 0xEF, 0x9A, + 0xEF, 0x9B, 0xFF, 0xBD, 0xBC, 0x95, 0x8A, 0x6F, 0x8A, 0x0F, 0x9A, 0x10, 0xC3, 0x15, 0xCB, 0x35, 0xD3, 0x56, 0xDB, 0x56, 0x01, 0xD3, 0x36, 0x02, 0xD3, 0x56, 0x02, 0xD3, 0x55, 0x85, 0xD3, 0x35, 0xCB, 0x35, 0xC3, 0x14, 0xAB, 0x11, 0xFF, 0x3E, 0xF7, 0x3B, 0x01, 0xF7, 0x5B, 0x02, 0xEF, 0x5B, 0x80, 0xEF, 0x5A, 0x01, 0xEF, 0x5B, 0x92, 0xF7, 0x7B, 0xF7, 0x9C, 0xFF, 0x7D, 0xFF, 0x5E, 0xF5, 0x9B, 0x9A, 0x0F, 0xB1, 0xD1, 0xB9, 0xD3, 0xC1, 0xD3, 0xB9, 0xD4, 0xB9, 0xF5, 0xBA, 0x16, 0xB2, 0x38, 0x9A, 0x5A, 0x40, 0xD7, 0x31, 0x1A, 0x21, 0x5B, 0x19, 0x7D, 0x11, 0x9D, 0x01, 0x09, 0x9E, 0x82, 0x01, 0x9E, 0x09, 0x9E, 0x09, 0x9F, 0x01, 0x09, 0x9E, 0xA4, 0x09, 0x7E, 0x11, 0x7E, 0x19, 0x5D, 0x21, 0x3C, 0x28, 0xFB, 0x40, 0xD8, 0x92, 0x5B, 0xA2, 0x7A, 0xA2, 0x58, 0x9A, 0x16, 0x92, 0x36, 0x8A, 0x57, 0x7A, 0x56, 0x62, 0xD6, 0x5C, 0x99, 0x5D, 0xDC, 0x4E, 0x1C, 0x36, 0x5B, 0x16, 0x78, 0x0E, 0xD7, 0x0F, 0x37, 0x07, 0x37, 0x07, 0x57, 0x0F, 0x37, 0x1F, 0x79, 0x37, 0x5A, 0x4E, 0xFB, 0x6E, 0xBD, 0x5C, 0x57, 0x5A, 0x92, 0x82, 0x94, 0x9A, 0x54, 0x99, 0xF4, 0xA2, 0x15, 0x9A, 0x15, 0x81, 0x93, 0x69, 0x52, 0x01, 0x61, 0x52, 0x8B, 0x59, 0x52, 0x61, 0x72, 0x61, 0x31, 0x71, 0x52, 0x92, 0x15, 0x9A, 0x35, 0xA2, 0x35, 0xA2, 0x96, 0x92, 0x34, 0x50, 0x8E, 0x40, 0x8E, 0x41, 0x30, 0x01, 0x39, 0x50, 0x03, 0x31, 0x50, 0x03, 0x29, 0x50, 0x05, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, + 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x19, 0x10, 0x19, 0x11, 0x11, 0x12, 0x19, 0x95, 0x01, 0x19, 0xD6, 0x85, 0x11, 0x74, 0x11, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x8E, 0x21, 0x50, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x13, 0x19, 0xB6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x06, 0x21, 0x0F, 0x05, 0x21, 0x30, 0x01, 0x19, 0x10, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x03, 0x19, 0x31, 0x01, 0x19, 0x30, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x81, 0x20, 0xEF, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x85, 0x21, 0x31, 0x19, 0x10, 0x11, 0x11, + 0x11, 0x32, 0x11, 0x53, 0x19, 0xB6, 0x02, 0x21, 0xF7, 0x81, 0x19, 0x95, 0x11, 0x33, 0x01, 0x11, 0x12, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x06, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x0C, 0x21, 0x30, 0x85, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x19, 0x31, 0x21, 0x32, 0x01, 0x21, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x84, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0x74, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x89, 0x21, 0xD6, 0x19, 0x75, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x50, 0x21, 0x10, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, + 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x09, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x0F, 0x06, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x19, 0x10, 0x88, 0x19, 0x31, 0x19, 0x53, 0x11, 0x53, 0x11, 0x74, 0x21, 0xF7, 0x2A, 0x38, 0x21, 0xD7, 0x11, 0x75, 0x11, 0x33, 0x01, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x31, 0x01, 0x21, 0x51, 0x02, 0x19, 0x11, 0x84, 0x19, 0x31, 0x29, 0xB2, 0x21, 0x51, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x04, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x07, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x90, 0x29, + 0x2F, 0x29, 0x0F, 0x28, 0xEF, 0x30, 0x8D, 0x48, 0xAD, 0xB2, 0xF5, 0xB2, 0x52, 0xAA, 0x12, 0xA9, 0xF1, 0xA1, 0xF1, 0x89, 0xCD, 0xFF, 0x7E, 0xF7, 0x7C, 0xEF, 0x9B, 0xEF, 0x7A, 0xE7, 0x5A, 0xE7, 0x79, 0x01, 0xE7, 0x59, 0x02, 0xE7, 0x79, 0x8A, 0xEF, 0x9A, 0xEF, 0xBB, 0xFF, 0xBD, 0xEE, 0xDC, 0x93, 0x50, 0x82, 0x2F, 0x8A, 0x30, 0xAA, 0xD3, 0xBB, 0x35, 0xCB, 0x56, 0xD3, 0x76, 0x03, 0xDB, 0x56, 0x81, 0xD3, 0x55, 0xDB, 0x56, 0x01, 0xDB, 0x76, 0x01, 0xD3, 0x55, 0x85, 0xCB, 0x55, 0xC3, 0x94, 0xCC, 0xB5, 0xEE, 0x9A, 0xF7, 0x5B, 0xEF, 0x9B, 0x02, 0xE7, 0x7A, 0x04, 0xE7, 0x79, 0x01, 0xDF, 0x79, 0x81, 0xE7, 0x79, 0xDF, 0x79, 0x01, 0xE7, 0x79, 0x8C, 0xE7, 0x7A, 0xE7, 0x9A, 0xE7, 0xBB, 0xF7, 0xBC, 0xF7, 0x1D, 0x8B, 0x30, 0x82, 0x4F, 0x92, 0x30, 0xA2, 0x92, 0xC3, 0x14, 0xCB, 0x56, 0xD3, 0x76, 0xD3, 0x56, 0x05, 0xDB, 0x56, 0x02, 0xD3, 0x55, 0x86, 0xCB, 0x75, 0xBB, 0x93, 0xE5, 0xD8, 0xFF, 0x3C, 0xF7, 0x7B, 0xEF, 0x9A, 0xE7, 0x7A, 0x05, 0xE7, 0x79, 0x01, 0xDF, 0x79, 0x80, 0xE7, 0x99, 0x02, 0xDF, 0x79, 0x80, 0xE7, 0x99, 0x01, 0xE7, 0x9A, 0x8A, 0xEF, 0xBB, 0xF7, 0xBD, 0xF6, 0xFD, 0x93, 0x30, 0x8A, 0x6F, 0x9A, 0x50, 0xAA, 0xB2, 0xC3, 0x14, 0xD3, 0x76, 0xD3, 0x56, 0xDB, 0x76, 0x03, 0xDB, 0x56, 0x80, 0xD3, 0x56, 0x02, 0xDB, 0x56, 0x01, 0xDB, 0x76, 0x85, 0xDB, 0x77, 0xB2, 0x73, 0xA2, 0x12, 0xAA, 0x32, 0xC2, 0xF5, 0xD3, 0x56, 0x01, 0xD3, 0x76, 0x83, 0xDB, 0x76, 0xD3, 0x56, 0xDB, 0x56, 0xD3, 0x56, 0x01, 0xDB, 0x56, 0x89, 0xDB, 0x76, 0xD3, 0x56, + 0xD3, 0x55, 0xD3, 0x35, 0xD3, 0x55, 0xCB, 0x74, 0xDC, 0xB6, 0xFF, 0x1C, 0xF7, 0x7B, 0xF7, 0x7A, 0x01, 0xEF, 0x79, 0x01, 0xE7, 0x79, 0x05, 0xE7, 0x59, 0x01, 0xE7, 0x79, 0x80, 0xE7, 0x99, 0x02, 0xE7, 0x79, 0x8A, 0xEF, 0x99, 0xEF, 0xBA, 0xEF, 0x9B, 0xFF, 0xBC, 0xFF, 0x7F, 0x71, 0x8C, 0x89, 0xCF, 0x9A, 0x10, 0xBA, 0xF4, 0xCB, 0x55, 0xD3, 0x76, 0x02, 0xD3, 0x56, 0x01, 0xDB, 0x56, 0x03, 0xD3, 0x56, 0x87, 0xD3, 0x55, 0xCB, 0x55, 0xC3, 0x74, 0xBB, 0xB3, 0xF6, 0x5B, 0xFF, 0x5C, 0xF7, 0x7B, 0xEF, 0x7B, 0x01, 0xEF, 0x9B, 0x88, 0xF7, 0x9C, 0xFF, 0x9D, 0xBD, 0x16, 0x82, 0x2E, 0x92, 0x30, 0x9A, 0x51, 0xB2, 0xD3, 0xCB, 0x56, 0xD3, 0x76, 0x01, 0xD3, 0x56, 0x05, 0xDB, 0x56, 0x01, 0xDB, 0x55, 0x84, 0xD3, 0x55, 0xCB, 0x74, 0xC4, 0x34, 0xFE, 0x7B, 0xFF, 0x5B, 0x01, 0xEF, 0x7A, 0x80, 0xE7, 0x9A, 0x07, 0xE7, 0x79, 0x8A, 0xE7, 0x99, 0xEF, 0xB9, 0xEF, 0x9A, 0xFF, 0x9C, 0xD5, 0x97, 0x7A, 0x2D, 0x8A, 0x0E, 0x92, 0x50, 0xB3, 0x33, 0xC3, 0x54, 0xC3, 0x55, 0x01, 0xCB, 0x55, 0x80, 0xD3, 0x35, 0x01, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x02, 0xD3, 0x75, 0x86, 0xCB, 0x55, 0x99, 0xF0, 0x91, 0xD0, 0xB2, 0x93, 0xC3, 0x15, 0xD3, 0x56, 0xD3, 0x77, 0x02, 0xD3, 0x56, 0x01, 0xDB, 0x76, 0x81, 0xDB, 0x56, 0xD3, 0x56, 0x01, 0xD3, 0x55, 0x86, 0xD3, 0x75, 0xCB, 0x54, 0xBB, 0x73, 0xCC, 0xF6, 0xFF, 0x3C, 0xF7, 0x7C, 0xEF, 0x7B, 0x02, 0xE7, 0x7B, 0x89, 0xEF, 0x7B, 0xEF, 0x9B, 0xF7, 0x9D, 0xF6, 0xFD, 0x93, 0x30, 0x8A, 0x4F, 0x92, 0x30, 0xAA, 0xB2, 0xBB, 0x14, 0xCB, 0x56, + 0x01, 0xD3, 0x76, 0x03, 0xDB, 0x76, 0x01, 0xDB, 0x56, 0x02, 0xD3, 0x55, 0x85, 0xCB, 0x74, 0xC3, 0xD3, 0xE6, 0x18, 0xF7, 0x5B, 0xF7, 0x9B, 0xEF, 0x9A, 0x01, 0xEF, 0x7A, 0x8A, 0xEF, 0x9B, 0xF7, 0x9C, 0xFF, 0x7D, 0xA4, 0x12, 0x82, 0x0E, 0x92, 0x10, 0xA2, 0x51, 0xB2, 0xD4, 0xCB, 0x56, 0xD3, 0x77, 0xD3, 0x76, 0x01, 0xD3, 0x56, 0x01, 0xDB, 0x56, 0x80, 0xDB, 0x76, 0x01, 0xD3, 0x56, 0x02, 0xD3, 0x55, 0x86, 0xC3, 0x74, 0xC3, 0xF3, 0xF6, 0x5A, 0xFF, 0x7C, 0xF7, 0x9A, 0xEF, 0x7A, 0xEF, 0x79, 0x01, 0xE7, 0x79, 0x04, 0xE7, 0x59, 0x8A, 0xEF, 0x79, 0xEF, 0x9A, 0xEF, 0x7A, 0xF7, 0xBB, 0xFF, 0xBD, 0xC4, 0xD5, 0x92, 0xAF, 0x8A, 0x2F, 0x92, 0x10, 0xBA, 0xF4, 0xCB, 0x35, 0x04, 0xD3, 0x56, 0x80, 0xDB, 0x76, 0x03, 0xD3, 0x76, 0x80, 0xD3, 0x55, 0x01, 0xCB, 0x55, 0x82, 0xB3, 0x32, 0xFF, 0x1D, 0xF7, 0x5B, 0x02, 0xF7, 0x7B, 0x80, 0xF7, 0x5A, 0x01, 0xEF, 0x5A, 0x94, 0xF7, 0x7B, 0xEF, 0x5A, 0xEF, 0x7B, 0xF7, 0x7B, 0xF7, 0x7C, 0xFF, 0x7D, 0xFF, 0x5E, 0xE5, 0x39, 0xA1, 0xD0, 0xB9, 0xD2, 0xB9, 0xD3, 0xB9, 0xD4, 0xB9, 0xF5, 0xBA, 0x16, 0xB2, 0x38, 0xA2, 0x7B, 0x48, 0xD7, 0x31, 0x1A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x9D, 0x02, 0x09, 0x9E, 0x02, 0x09, 0x9F, 0x80, 0x01, 0x7E, 0x01, 0x09, 0x7E, 0x93, 0x11, 0x7E, 0x19, 0x5D, 0x29, 0x3C, 0x30, 0xFA, 0x48, 0xD7, 0x8A, 0x7B, 0x9A, 0x79, 0x9A, 0x57, 0x92, 0x16, 0x8A, 0x36, 0x82, 0x56, 0x6A, 0xB6, 0x53, 0xB7, 0x65, 0x7B, 0x55, 0xFC, 0x3E, 0x5B, 0x16, 0x57, 0x0E, 0xB7, 0x06, 0xD6, 0x07, 0x16, 0x01, 0x0F, 0x57, + 0x8E, 0x27, 0x79, 0x37, 0x5A, 0x4F, 0x1B, 0x76, 0xBD, 0x53, 0xF5, 0x5A, 0x72, 0x7A, 0x53, 0x92, 0x14, 0x99, 0xF4, 0x99, 0xF5, 0x9A, 0x15, 0x79, 0x73, 0x71, 0x73, 0x61, 0x72, 0x59, 0x52, 0x01, 0x59, 0x72, 0x8C, 0x59, 0x51, 0x59, 0x10, 0x71, 0x72, 0x9A, 0x35, 0xA2, 0x76, 0xAA, 0x96, 0xA2, 0x96, 0x69, 0x31, 0x40, 0x4D, 0x38, 0xCE, 0x41, 0x50, 0x39, 0x70, 0x31, 0x30, 0x01, 0x31, 0x50, 0x01, 0x29, 0x50, 0x06, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x20, 0xEF, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x97, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x74, 0x11, 0x11, 0x19, 0x11, 0x21, 0x51, 0x21, 0x50, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x8B, 0x21, 0x30, 0x21, 0x51, 0x19, 0x51, 0x11, 0x32, 0x09, 0x12, 0x21, 0xD6, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x32, 0x19, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x20, 0xEF, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x30, 0x29, 0x50, 0x21, 0x30, 0x21, + 0x50, 0x02, 0x21, 0x30, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x19, 0x10, 0x08, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x20, 0xEF, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x89, 0x29, 0x30, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x11, 0x31, 0x11, 0x52, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x84, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x01, 0x19, 0x11, 0x03, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x19, 0x31, 0x01, 0x19, 0x11, 0x04, 0x19, 0x31, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x85, 0x11, 0x33, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, + 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x84, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x19, 0x54, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x83, 0x21, 0xD6, 0x19, 0x75, 0x11, 0x13, 0x11, 0x12, 0x01, 0x19, 0x31, 0x82, 0x21, 0x30, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x05, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x09, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8F, 0x19, 0x11, 0x19, 0x31, 0x11, + 0x32, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF7, 0x2A, 0x38, 0x22, 0x18, 0x19, 0x96, 0x11, 0x54, 0x11, 0x32, 0x11, 0x12, 0x19, 0x31, 0x19, 0x10, 0x19, 0x31, 0x19, 0x30, 0x03, 0x21, 0x30, 0x84, 0x20, 0xEF, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x10, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x85, 0x29, 0x0F, 0x28, 0xEF, 0x30, 0xAE, 0x48, 0x8D, 0xB2, 0xD5, 0xB2, 0x53, 0x01, 0xA9, 0xF1, 0x86, 0xA1, 0xF1, 0x89, 0xED, 0xFF, 0x7E, 0xF7, 0x9C, 0xEF, 0x9B, 0xEF, 0x9A, 0xEF, 0x79, 0x01, 0xE7, 0x59, 0x02, 0xE7, 0x79, 0x01, 0xEF, 0x99, 0x89, 0xF7, 0xBB, 0xFF, 0xBC, 0xF6, 0xDB, 0x93, 0x70, 0x82, 0x2E, 0x8A, 0x10, 0xAA, 0xD3, 0xBB, 0x35, 0xCB, 0x76, 0xD3, 0x76, 0x01, 0xDB, 0x76, 0x01, 0xDB, 0x56, 0x80, 0xD3, 0x55, 0x02, 0xDB, 0x76, 0x86, 0xD3, 0x76, 0xD3, 0x75, 0xCB, 0x75, 0xC3, 0x93, 0xCC, 0xB5, 0xF6, 0x9A, 0xF7, 0x7B, 0x02, 0xEF, 0x9A, 0x82, 0xEF, 0x99, 0xEF, 0x79, 0xE7, 0x99, 0x01, 0xE7, 0x79, 0x80, 0xE7, 0x99, 0x02, 0xE7, 0x79, 0x8C, 0xE7, 0x99, 0xE7, 0x79, 0xE7, 0x99, 0xEF, 0x99, 0xEF, 0xBA, 0xEF, 0xDB, 0xF7, 0xBC, 0xFF, + 0x1D, 0x93, 0x30, 0x8A, 0x4F, 0x92, 0x30, 0xAA, 0x92, 0xBB, 0x14, 0x01, 0xD3, 0x76, 0x03, 0xDB, 0x76, 0x01, 0xDB, 0x56, 0x81, 0xD3, 0x76, 0xD3, 0x55, 0x01, 0xD3, 0x75, 0x85, 0xCB, 0x75, 0xC3, 0x93, 0xE5, 0xB8, 0xFF, 0x3B, 0xF7, 0x9B, 0xEF, 0x9A, 0x01, 0xEF, 0x79, 0x05, 0xE7, 0x79, 0x02, 0xE7, 0x99, 0x80, 0xE7, 0x79, 0x01, 0xE7, 0x99, 0x01, 0xEF, 0xBA, 0x87, 0xEF, 0xBB, 0xF7, 0xBC, 0xF6, 0xFC, 0x93, 0x50, 0x8A, 0x6F, 0x92, 0x50, 0xAA, 0xB2, 0xBB, 0x14, 0x01, 0xD3, 0x76, 0x08, 0xDB, 0x76, 0x83, 0xDB, 0x96, 0xDB, 0x76, 0xDB, 0xB7, 0xAA, 0x52, 0x01, 0xA2, 0x12, 0x81, 0xC3, 0x15, 0xD3, 0x77, 0x03, 0xD3, 0x76, 0x05, 0xDB, 0x76, 0x87, 0xD3, 0x76, 0xD3, 0x55, 0xCB, 0x75, 0xC3, 0xB4, 0xE5, 0x78, 0xFF, 0x5C, 0xF7, 0x7A, 0xEF, 0x9A, 0x01, 0xEF, 0x99, 0x03, 0xEF, 0x79, 0x05, 0xE7, 0x79, 0x81, 0xE7, 0x78, 0xE7, 0x79, 0x02, 0xEF, 0x99, 0x88, 0xF7, 0xBA, 0xF7, 0xDB, 0xF7, 0xBC, 0xFF, 0x9E, 0x71, 0xCC, 0x89, 0xCF, 0x91, 0xEF, 0xBA, 0xF4, 0xCB, 0x56, 0x03, 0xD3, 0x76, 0x04, 0xDB, 0x76, 0x01, 0xD3, 0x76, 0x85, 0xD3, 0x75, 0xC3, 0x74, 0xBB, 0x92, 0xFE, 0x5B, 0xFF, 0x5C, 0xF7, 0x7B, 0x03, 0xF7, 0x9B, 0x89, 0xFF, 0x9D, 0xC5, 0x36, 0x82, 0x2E, 0x92, 0x30, 0x9A, 0x51, 0xB2, 0xF3, 0xCB, 0x76, 0xD3, 0x96, 0xD3, 0x76, 0xDB, 0x96, 0x05, 0xDB, 0x76, 0x86, 0xDB, 0x75, 0xD3, 0x75, 0xD3, 0x55, 0xC3, 0x74, 0xCC, 0x54, 0xFE, 0xBB, 0xFF, 0x7B, 0x01, 0xEF, 0x9A, 0x80, 0xEF, 0x79, 0x01, 0xE7, 0x79, 0x80, 0xE7, 0x78, 0x01, 0xE7, 0x79, 0x83, 0xE7, 0x78, + 0xE7, 0x98, 0xE7, 0x99, 0xEF, 0xB9, 0x01, 0xEF, 0x99, 0x88, 0xFF, 0x9B, 0xD5, 0xB7, 0x72, 0x4C, 0x7A, 0x0D, 0x8A, 0x2E, 0xAB, 0x32, 0xBB, 0x73, 0xC3, 0x94, 0xC3, 0x74, 0x02, 0xCB, 0x74, 0x03, 0xD3, 0x74, 0x80, 0xD3, 0x95, 0x02, 0xD3, 0xB5, 0x86, 0xC3, 0x54, 0x91, 0xEF, 0x91, 0xD0, 0xB2, 0x93, 0xC3, 0x15, 0xD3, 0x56, 0xDB, 0x97, 0x01, 0xDB, 0x76, 0x80, 0xD3, 0x76, 0x02, 0xDB, 0x76, 0x01, 0xD3, 0x76, 0x01, 0xD3, 0x75, 0x85, 0xCB, 0x74, 0xBB, 0x73, 0xD4, 0xF6, 0xFF, 0x5C, 0xF7, 0x7B, 0xF7, 0x9B, 0x02, 0xEF, 0x7A, 0x8B, 0xEF, 0x9A, 0xEF, 0x9B, 0xF7, 0x9C, 0xFF, 0x1D, 0x93, 0x50, 0x8A, 0x4F, 0x92, 0x30, 0xAA, 0xB2, 0xBB, 0x14, 0xCB, 0x76, 0xD3, 0x96, 0xD3, 0x76, 0x06, 0xDB, 0x76, 0x01, 0xD3, 0x75, 0x91, 0xCB, 0x74, 0xC3, 0xD3, 0xE6, 0x18, 0xFF, 0x5B, 0xF7, 0xBA, 0xEF, 0x9A, 0xEF, 0x99, 0xEF, 0x9A, 0xF7, 0xBB, 0xF7, 0x9C, 0xFF, 0x7D, 0xB4, 0x73, 0x82, 0x0E, 0x92, 0x30, 0x9A, 0x51, 0xB2, 0xD3, 0xCB, 0x56, 0xD3, 0x77, 0x01, 0xD3, 0x76, 0x80, 0xDB, 0x56, 0x04, 0xDB, 0x76, 0x80, 0xD3, 0x76, 0x01, 0xD3, 0x75, 0x85, 0xC3, 0x94, 0xC4, 0x13, 0xFE, 0x9A, 0xFF, 0x7B, 0xF7, 0x9A, 0xEF, 0x99, 0x05, 0xEF, 0x79, 0x80, 0xEF, 0x59, 0x01, 0xEF, 0x79, 0x8B, 0xEF, 0x99, 0xF7, 0xBA, 0xF7, 0xBB, 0xFF, 0xBD, 0xC4, 0xF6, 0x92, 0xAF, 0x8A, 0x2F, 0x92, 0x10, 0xBB, 0x14, 0xCB, 0x35, 0xD3, 0x56, 0xDB, 0x76, 0x01, 0xD3, 0x56, 0x80, 0xD3, 0x76, 0x01, 0xDB, 0x96, 0x02, 0xD3, 0x76, 0x86, 0xD3, 0x55, 0xCB, 0x55, 0xCB, 0x54, 0xB3, 0x31, 0xFF, 0x1D, 0xFF, + 0x7B, 0xF7, 0x7B, 0x01, 0xF7, 0x7A, 0x81, 0xF7, 0x5A, 0xEF, 0x5A, 0x02, 0xF7, 0x7A, 0x92, 0xF7, 0x7B, 0xF7, 0x9B, 0xF7, 0x9C, 0xFF, 0x9C, 0xFF, 0x9D, 0xFF, 0x3F, 0xA2, 0x30, 0xB1, 0xD2, 0xB9, 0xD3, 0xB9, 0xD4, 0xB9, 0xF5, 0xBA, 0x16, 0xB2, 0x38, 0x9A, 0x7B, 0x48, 0xD7, 0x31, 0x1A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x9D, 0x01, 0x09, 0x9E, 0x02, 0x09, 0x9F, 0x83, 0x01, 0x9F, 0x01, 0x9E, 0x09, 0x9E, 0x09, 0x7E, 0x01, 0x11, 0x7E, 0xB0, 0x19, 0x5D, 0x29, 0x1B, 0x30, 0xF9, 0x48, 0xD7, 0x9A, 0xDC, 0x9A, 0x59, 0x92, 0x37, 0x8A, 0x16, 0x82, 0x57, 0x72, 0x96, 0x5B, 0x56, 0x6D, 0x1B, 0x65, 0xDC, 0x4E, 0x3A, 0x26, 0x77, 0x0E, 0xB6, 0x06, 0xD6, 0x07, 0x16, 0x0F, 0x56, 0x17, 0x58, 0x27, 0x79, 0x3F, 0x5A, 0x4E, 0xDB, 0x76, 0x9D, 0x53, 0xB4, 0x62, 0x72, 0x82, 0x53, 0x92, 0x14, 0x99, 0xF4, 0x99, 0xF5, 0x91, 0xF5, 0x71, 0x73, 0x69, 0x73, 0x61, 0x93, 0x59, 0x72, 0x51, 0x72, 0x59, 0x92, 0x51, 0x51, 0x59, 0x51, 0x59, 0x10, 0x81, 0xF4, 0x9A, 0x76, 0xA2, 0x55, 0xA2, 0x96, 0x8A, 0x14, 0x50, 0xAE, 0x38, 0xAE, 0x39, 0x0F, 0x39, 0x50, 0x03, 0x31, 0x50, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x05, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, + 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x8B, 0x29, 0x30, 0x29, 0x50, 0x21, 0x50, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xF7, 0x11, 0x74, 0x11, 0x11, 0x19, 0x11, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x8C, 0x19, 0x2F, 0x21, 0x30, 0x19, 0x30, 0x19, 0x51, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x2A, 0x37, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x32, 0x19, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x04, 0x21, 0x30, 0x89, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x85, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x20, 0xEF, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x30, 0x86, 0x21, 0x51, 0x19, 0x30, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x11, 0x73, 0x19, 0xD5, 0x01, 0x22, 0x17, 0x83, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x13, 0x11, 0x12, 0x02, 0x19, 0x11, 0x80, 0x21, 0x10, + 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x19, 0x31, 0x81, 0x11, 0x32, 0x11, 0x12, 0x05, 0x11, 0x32, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x03, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x85, 0x11, 0x95, 0x11, 0x74, 0x19, 0x73, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x10, 0x80, 0x29, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x05, 0x21, 0x30, 0x84, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x54, 0x19, 0xB6, 0x01, 0x22, 0x17, 0x83, 0x21, 0xD6, 0x11, 0x74, 0x11, 0x13, 0x11, 0x32, 0x01, 0x19, 0x31, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, + 0x2F, 0x08, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x85, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB6, 0x19, 0xD7, 0x01, 0x21, 0xF8, 0x85, 0x19, 0xB6, 0x19, 0x74, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x31, 0x01, 0x19, 0x30, 0x01, 0x21, 0x30, 0x84, 0x19, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x0F, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x28, 0xEF, 0x30, 0xAE, 0x40, 0x8D, 0xB2, 0xB5, 0xB2, 0x53, 0x01, 0xA9, 0xF1, 0x82, + 0xA1, 0xF0, 0x81, 0xAD, 0xFF, 0x7E, 0x01, 0xF7, 0x9B, 0x80, 0xEF, 0x9A, 0x01, 0xEF, 0x79, 0x04, 0xEF, 0x78, 0x8A, 0xEF, 0x99, 0xF7, 0xDA, 0xFF, 0xDC, 0xF6, 0xDB, 0x9B, 0x71, 0x82, 0x2E, 0x8A, 0x0F, 0xAA, 0xD3, 0xC3, 0x35, 0xCB, 0x76, 0xD3, 0x96, 0x01, 0xDB, 0x96, 0x03, 0xDB, 0x76, 0x01, 0xDB, 0x96, 0x87, 0xDB, 0x76, 0xD3, 0x75, 0xCB, 0x74, 0xC3, 0x93, 0xCC, 0xB5, 0xF6, 0x9A, 0xFF, 0x9B, 0xF7, 0x9A, 0x04, 0xEF, 0x99, 0x02, 0xEF, 0x78, 0x80, 0xEF, 0x99, 0x02, 0xEF, 0x98, 0x02, 0xEF, 0x99, 0x89, 0xEF, 0xBA, 0xF7, 0xBA, 0xFF, 0xBC, 0xFF, 0x1C, 0x93, 0x50, 0x8A, 0x4E, 0x92, 0x50, 0xA2, 0x92, 0xC3, 0x35, 0xD3, 0x96, 0x03, 0xDB, 0x97, 0x80, 0xDB, 0x96, 0x01, 0xDB, 0x76, 0x01, 0xDB, 0x96, 0x02, 0xD3, 0x95, 0x88, 0xC3, 0xB3, 0xE5, 0xD8, 0xFF, 0x5B, 0xFF, 0x9A, 0xF7, 0xBA, 0xF7, 0x99, 0xEF, 0x99, 0xEF, 0x98, 0xEF, 0x99, 0x06, 0xEF, 0x98, 0x80, 0xE7, 0x98, 0x01, 0xEF, 0x99, 0x8C, 0xEF, 0xB9, 0xEF, 0xBA, 0xF7, 0xBB, 0xFF, 0xBC, 0xF6, 0xFC, 0x93, 0x30, 0x8A, 0x4E, 0x92, 0x2F, 0xAA, 0xB2, 0xC3, 0x34, 0xD3, 0x76, 0xD3, 0x96, 0xDB, 0x96, 0x04, 0xDB, 0x76, 0x04, 0xDB, 0x96, 0x85, 0xDB, 0xB7, 0xAA, 0x52, 0xA2, 0x12, 0xA2, 0x32, 0xC3, 0x35, 0xD3, 0x97, 0x01, 0xD3, 0x96, 0x81, 0xD3, 0x76, 0xD3, 0x96, 0x06, 0xDB, 0x96, 0x86, 0xD3, 0x75, 0xD3, 0x95, 0xC3, 0xB3, 0xED, 0xB9, 0xFF, 0x7C, 0xF7, 0x9A, 0xF7, 0x99, 0x03, 0xEF, 0x99, 0x04, 0xEF, 0x79, 0x02, 0xEF, 0x78, 0x80, 0xEF, 0x98, 0x03, 0xEF, 0x99, 0x88, 0xEF, 0xBA, 0xF7, 0xBA, 0xF7, 0xBB, + 0xFF, 0x9E, 0x71, 0xCC, 0x89, 0xCE, 0x89, 0xCF, 0xB2, 0xD3, 0xCB, 0x75, 0x03, 0xD3, 0x96, 0x81, 0xD3, 0x76, 0xDB, 0x96, 0x01, 0xDB, 0x76, 0x95, 0xD3, 0x75, 0xDB, 0x76, 0xDB, 0x96, 0xD3, 0x75, 0xCB, 0x74, 0xBB, 0xD3, 0xFE, 0x5A, 0xFF, 0x5C, 0xF7, 0x9B, 0xF7, 0x7A, 0xF7, 0x9A, 0xF7, 0x9B, 0xFF, 0x9B, 0xFF, 0x9D, 0xCD, 0x36, 0x82, 0x2E, 0x92, 0x30, 0x9A, 0x51, 0xB2, 0xF3, 0xCB, 0x96, 0xD3, 0x97, 0xDB, 0x97, 0x02, 0xDB, 0x96, 0x84, 0xDB, 0x76, 0xDB, 0x96, 0xDB, 0x76, 0xDB, 0x96, 0xDB, 0x76, 0x01, 0xD3, 0x75, 0x84, 0xCB, 0x73, 0xC4, 0x33, 0xFE, 0xBB, 0xFF, 0x7B, 0xF7, 0x9A, 0x01, 0xEF, 0x99, 0x04, 0xEF, 0x98, 0x80, 0xEF, 0x78, 0x01, 0xEF, 0x98, 0x01, 0xEF, 0xB9, 0x89, 0xF7, 0x99, 0xFF, 0x9B, 0xD6, 0x17, 0x7A, 0xCC, 0x82, 0xCD, 0x92, 0xEE, 0xA3, 0x50, 0xAB, 0x71, 0xB3, 0x91, 0xBB, 0x91, 0x01, 0xBB, 0x92, 0x01, 0xC3, 0x92, 0x80, 0xC3, 0x93, 0x01, 0xC3, 0xB3, 0x89, 0xCB, 0xB3, 0xCB, 0xD4, 0xCB, 0xF4, 0xCB, 0xF5, 0xC3, 0x74, 0x91, 0xEF, 0x91, 0xD0, 0xB2, 0xB3, 0xC3, 0x15, 0xD3, 0x76, 0x02, 0xDB, 0x97, 0x03, 0xDB, 0x96, 0x80, 0xDB, 0x76, 0x01, 0xDB, 0x96, 0x86, 0xD3, 0x95, 0xD3, 0x94, 0xC3, 0xB3, 0xD5, 0x16, 0xFF, 0x5C, 0xFF, 0x7B, 0xF7, 0x9A, 0x01, 0xEF, 0x7A, 0x01, 0xEF, 0x9A, 0x89, 0xF7, 0xBB, 0xFF, 0x9C, 0xFF, 0x1C, 0x93, 0x50, 0x82, 0x4E, 0x92, 0x2F, 0xA2, 0xB2, 0xBB, 0x34, 0xCB, 0x96, 0xD3, 0x96, 0x03, 0xDB, 0x96, 0x03, 0xDB, 0x76, 0x01, 0xD3, 0x75, 0x85, 0xCB, 0x94, 0xC3, 0xF3, 0xEE, 0x38, 0xFF, 0x5A, 0xF7, 0x9A, 0xF7, + 0xBA, 0x01, 0xEF, 0x99, 0x88, 0xF7, 0xBA, 0xFF, 0xBB, 0xFF, 0x9D, 0xB4, 0x73, 0x7A, 0x0D, 0x92, 0x10, 0x9A, 0x51, 0xB2, 0xD3, 0xCB, 0x76, 0x02, 0xDB, 0x97, 0x81, 0xDB, 0x96, 0xDB, 0x76, 0x02, 0xDB, 0x96, 0x80, 0xDB, 0x76, 0x01, 0xDB, 0x96, 0x87, 0xD3, 0x95, 0xCB, 0xB4, 0xCC, 0x54, 0xFE, 0xBA, 0xFF, 0x9B, 0xF7, 0x9A, 0xF7, 0x99, 0xEF, 0x98, 0x01, 0xEF, 0x78, 0x01, 0xEF, 0x98, 0x80, 0xEF, 0x78, 0x01, 0xEF, 0x79, 0x01, 0xEF, 0x99, 0x01, 0xF7, 0xDA, 0x89, 0xFF, 0xBC, 0xC4, 0xF5, 0x92, 0xAF, 0x8A, 0x2E, 0x92, 0x0F, 0xC3, 0x34, 0xCB, 0x56, 0xD3, 0x76, 0xDB, 0x96, 0xD3, 0x76, 0x01, 0xDB, 0x76, 0x01, 0xDB, 0x96, 0x02, 0xD3, 0x96, 0x86, 0xD3, 0x75, 0xCB, 0x55, 0xCB, 0x54, 0xB3, 0x51, 0xFF, 0x3D, 0xFF, 0x7B, 0xF7, 0x9B, 0x06, 0xF7, 0x7A, 0x01, 0xF7, 0x9B, 0x92, 0xFF, 0xBC, 0xFF, 0x9C, 0xFF, 0x7C, 0xFF, 0x3E, 0xC3, 0x74, 0xA9, 0xD1, 0xB1, 0xD2, 0xB1, 0xB3, 0xB9, 0xD5, 0xB1, 0xF6, 0xB2, 0x58, 0x9A, 0x5A, 0x48, 0xF8, 0x31, 0x1A, 0x21, 0x3B, 0x19, 0x7D, 0x11, 0x9D, 0x11, 0x9E, 0x09, 0x9E, 0x02, 0x09, 0x9F, 0x01, 0x01, 0x9F, 0xA5, 0x01, 0x9E, 0x09, 0x9E, 0x09, 0x7E, 0x11, 0x7E, 0x19, 0x5D, 0x21, 0x5D, 0x29, 0x3B, 0x38, 0xF9, 0x69, 0xB9, 0x92, 0x7A, 0x92, 0x58, 0x8A, 0x57, 0x82, 0x57, 0x72, 0x97, 0x62, 0xF6, 0x74, 0x79, 0x7D, 0xDC, 0x5E, 0x3A, 0x36, 0x98, 0x0E, 0x75, 0x0E, 0xD6, 0x0F, 0x16, 0x0F, 0x37, 0x17, 0x37, 0x2F, 0x79, 0x3F, 0x3A, 0x56, 0xFC, 0x7E, 0x9D, 0x4B, 0x53, 0x62, 0x72, 0x7A, 0x33, 0x92, 0x34, 0x9A, 0x15, 0xA2, 0x36, + 0x81, 0xB4, 0x69, 0x32, 0x69, 0x93, 0x61, 0x93, 0x01, 0x51, 0x72, 0x8E, 0x51, 0x92, 0x51, 0x72, 0x51, 0x51, 0x51, 0x10, 0x61, 0x31, 0x81, 0xD4, 0x92, 0x35, 0x9A, 0x76, 0xAA, 0xF8, 0x82, 0x14, 0x40, 0xAE, 0x38, 0xCE, 0x39, 0x30, 0x31, 0x30, 0x31, 0x50, 0x06, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x05, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x0A, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x8A, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0x74, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x19, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x19, 0x30, 0x8B, 0x19, 0x31, 0x11, 0x12, 0x11, 0x13, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x10, + 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x20, 0xEF, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x87, 0x11, 0x11, 0x11, 0x12, 0x11, 0x54, 0x19, 0xD6, 0x22, 0x37, 0x22, 0x17, 0x21, 0xF6, 0x11, 0x74, 0x01, 0x11, 0x12, 0x01, 0x19, 0x11, 0x83, 0x21, 0x31, 0x21, 0x11, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x88, 0x11, 0x32, 0x11, 0x53, 0x19, 0x94, 0x19, 0xB6, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x75, 0x01, 0x11, 0x33, 0x01, 0x19, 0x32, 0x86, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x19, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x87, 0x19, 0xF7, 0x11, 0x95, 0x11, 0x74, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x29, 0x2F, 0x21, 0x0F, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, + 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x88, 0x11, 0x12, 0x11, 0x53, 0x19, 0xB6, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0x75, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x29, 0x10, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x8C, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF7, 0x21, 0xF8, 0x21, 0xF7, 0x19, 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x19, 0x11, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, + 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x03, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x05, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x07, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x28, 0xEF, 0x30, 0xAE, 0x40, 0x8D, 0xAA, 0xB4, 0xB2, 0x52, 0x01, 0xA9, 0xF1, 0x86, 0xA9, 0xF0, 0x89, 0xCD, 0xFF, 0x7E, 0xF7, 0x9B, 0xF7, 0x9A, 0xEF, 0x9A, 0xEF, 0x99, 0x01, 0xEF, 0x78, 0x03, 0xEF, 0x98, 0x8D, 0xF7, 0x99, 0xF7, 0xDA, 0xFF, 0xBC, 0xF6, 0xDB, 0x9B, 0x91, 0x82, 0x2E, 0x8A, 0x0F, 0xAA, 0xD3, 0xC3, 0x55, 0xD3, 0x96, 0xDB, 0x97, 0xDB, 0xB7, 0xDB, 0x96, 0xDB, 0x76, 0x02, 0xDB, 0x96, 0x80, 0xDB, 0xB6, 0x01, 0xDB, 0x96, 0x85, 0xD3, 0x95, 0xCB, 0x94, 0xC3, 0xB3, 0xCC, 0xB4, 0xF6, 0xBA, 0xFF, 0x9B, 0x03, 0xF7, 0xB9, 0x81, 0xF7, 0x99, 0xF7, 0x98, 0x07, 0xEF, 0x98, 0x80, 0xEF, 0xB9, 0x01, 0xF7, 0xB9, 0x88, 0xF7, 0xBA, 0xFF, 0xBB, 0xFF, 0x1C, 0x93, 0x4F, 0x82, 0x4E, 0x92, 0x2F, 0xA2, 0xB2, 0xBB, 0x34, 0xD3, 0x96, 0x02, 0xDB, 0xB7, 0x01, 0xDB, 0x97, 0x80, 0xDB, 0xB6, 0x01, 0xDB, 0x96, 0x01, 0xDB, 0x95, 0x85, 0xD3, 0xB5, 0xD3, 0x95, 0xC3, 0xB3, 0xE5, 0xD7, 0xFF, 0x3A, + 0xFF, 0x9A, 0x01, 0xF7, 0x99, 0x81, 0xF7, 0x98, 0xF7, 0xB8, 0x01, 0xF7, 0x98, 0x02, 0xEF, 0x98, 0x80, 0xEF, 0xB8, 0x02, 0xEF, 0x98, 0x80, 0xEF, 0xB8, 0x01, 0xEF, 0xB9, 0x8A, 0xF7, 0xBA, 0xF7, 0xDB, 0xFF, 0xBC, 0xFE, 0xFC, 0x93, 0x50, 0x8A, 0x4E, 0x92, 0x4F, 0xAA, 0xB2, 0xC3, 0x54, 0xD3, 0x96, 0xDB, 0xB6, 0x07, 0xDB, 0x96, 0x01, 0xDB, 0xB6, 0x82, 0xDB, 0x96, 0xDB, 0xD7, 0xAA, 0x73, 0x01, 0xA2, 0x32, 0x81, 0xC3, 0x35, 0xD3, 0x97, 0x03, 0xDB, 0xB6, 0x82, 0xDB, 0x96, 0xDB, 0xB6, 0xDB, 0x96, 0x01, 0xD3, 0x96, 0x02, 0xDB, 0x96, 0x84, 0xD3, 0x95, 0xC3, 0xB3, 0xFE, 0x5A, 0xFF, 0x7B, 0xF7, 0x9A, 0x01, 0xF7, 0xB9, 0x83, 0xEF, 0x99, 0xF7, 0xB9, 0xF7, 0x99, 0xEF, 0x99, 0x07, 0xEF, 0x98, 0x01, 0xEF, 0xB8, 0x02, 0xF7, 0xB9, 0x89, 0xF7, 0xBA, 0xF7, 0xBB, 0xFF, 0x9E, 0x71, 0xEC, 0x81, 0xCE, 0x89, 0xCF, 0xB2, 0xD3, 0xCB, 0x96, 0xD3, 0xB7, 0xDB, 0xB7, 0x02, 0xD3, 0x96, 0x04, 0xDB, 0x96, 0x86, 0xD3, 0x95, 0xD3, 0x75, 0xCB, 0x94, 0xC3, 0xD3, 0xF6, 0x39, 0xFF, 0x5B, 0xF7, 0x7A, 0x02, 0xF7, 0x9A, 0x89, 0xFF, 0x9B, 0xFF, 0x9D, 0xCD, 0x77, 0x82, 0x2D, 0x92, 0x2F, 0x9A, 0x51, 0xB2, 0xF4, 0xD3, 0x97, 0xD3, 0xB7, 0xDB, 0xB7, 0x01, 0xDB, 0x96, 0x80, 0xDB, 0xB6, 0x04, 0xDB, 0x96, 0x87, 0xDB, 0x95, 0xD3, 0x75, 0xCB, 0x94, 0xC4, 0x33, 0xFE, 0xBA, 0xFF, 0x7B, 0xF7, 0xBA, 0xF7, 0x99, 0x01, 0xEF, 0x98, 0x80, 0xEF, 0xB8, 0x04, 0xEF, 0x98, 0x01, 0xF7, 0xB8, 0x01, 0xF7, 0xB9, 0x85, 0xFF, 0xBA, 0xFF, 0x5A, 0xF6, 0xD9, 0xFE, 0xDA, 0xFE, 0xBA, 0xFE, 0x9A, + 0x02, 0xFE, 0x5A, 0x90, 0xFE, 0x39, 0xFE, 0x19, 0xFD, 0xF9, 0xF5, 0xD9, 0xF5, 0xB8, 0xF5, 0xB9, 0xF5, 0xB8, 0xF5, 0xB9, 0xED, 0xB9, 0xED, 0x99, 0xE4, 0xF8, 0xC3, 0xB4, 0x92, 0x0F, 0x91, 0xCF, 0xB2, 0xB3, 0xC3, 0x35, 0xD3, 0x76, 0x01, 0xDB, 0xB7, 0x80, 0xDB, 0x97, 0x06, 0xDB, 0x96, 0x85, 0xD3, 0x95, 0xCB, 0x94, 0xC3, 0xB3, 0xD5, 0x15, 0xFF, 0x5C, 0xFF, 0x7B, 0x02, 0xF7, 0x9A, 0x8C, 0xF7, 0xBA, 0xF7, 0x9A, 0xF7, 0xBB, 0xFF, 0x9C, 0xFF, 0x1C, 0x93, 0x50, 0x8A, 0x4F, 0x92, 0x2F, 0xAA, 0xD2, 0xBB, 0x34, 0xD3, 0x96, 0xD3, 0xB6, 0xDB, 0xB6, 0x06, 0xDB, 0x96, 0x86, 0xD3, 0x75, 0xD3, 0x95, 0xCB, 0x94, 0xC3, 0xF3, 0xEE, 0x38, 0xFF, 0x7A, 0xFF, 0xBA, 0x02, 0xF7, 0xB9, 0x88, 0xF7, 0xBA, 0xFF, 0xBB, 0xFF, 0x9D, 0xB4, 0x94, 0x7A, 0x0D, 0x8A, 0x0F, 0x9A, 0x50, 0xB2, 0xD3, 0xD3, 0x96, 0x02, 0xDB, 0xB7, 0x05, 0xDB, 0x96, 0x89, 0xDB, 0xB6, 0xDB, 0xB5, 0xD3, 0x95, 0xCB, 0xB4, 0xC4, 0x53, 0xFE, 0xBA, 0xFF, 0x7A, 0xF7, 0x99, 0xF7, 0x98, 0xF7, 0xB8, 0x01, 0xF7, 0x98, 0x01, 0xEF, 0x98, 0x81, 0xEF, 0x78, 0xF7, 0x98, 0x02, 0xF7, 0xB9, 0x01, 0xF7, 0xDA, 0x86, 0xFF, 0xBC, 0xC4, 0xF5, 0x92, 0xAF, 0x8A, 0x0E, 0x9A, 0x2F, 0xC3, 0x55, 0xD3, 0x96, 0x01, 0xDB, 0xB7, 0x04, 0xDB, 0x96, 0x88, 0xD3, 0x96, 0xD3, 0xB6, 0xD3, 0x96, 0xD3, 0x95, 0xD3, 0x75, 0xCB, 0x74, 0xB3, 0x51, 0xFF, 0x3C, 0xFF, 0x7B, 0x01, 0xF7, 0x9A, 0x80, 0xFF, 0x9A, 0x04, 0xF7, 0x7A, 0x81, 0xF7, 0x9A, 0xFF, 0x9B, 0x01, 0xFF, 0xBC, 0x8E, 0xFF, 0x7C, 0xFF, 0x1C, 0xE4, 0xB8, 0xAA, 0x10, + 0xA9, 0xD2, 0xB1, 0xD4, 0xB9, 0xF5, 0xB2, 0x16, 0xB2, 0x58, 0x9A, 0x5A, 0x48, 0xF8, 0x29, 0x1A, 0x21, 0x5B, 0x19, 0x7D, 0x11, 0x9D, 0x01, 0x09, 0x9E, 0x80, 0x09, 0x9F, 0x01, 0x01, 0x9F, 0x02, 0x09, 0x9F, 0x01, 0x09, 0x9E, 0x92, 0x09, 0x7E, 0x11, 0x7E, 0x19, 0x5D, 0x21, 0x3D, 0x29, 0x1B, 0x40, 0xF8, 0x7A, 0x3B, 0x8A, 0x7A, 0x8A, 0x58, 0x7A, 0x37, 0x72, 0x77, 0x6A, 0xB6, 0x6B, 0x97, 0x85, 0x9C, 0x66, 0x3A, 0x46, 0xB9, 0x1E, 0xB6, 0x0E, 0xB5, 0x0F, 0x16, 0x01, 0x17, 0x37, 0x87, 0x27, 0x39, 0x47, 0x3B, 0x5E, 0xFC, 0x7E, 0x5C, 0x53, 0x33, 0x6A, 0x72, 0x82, 0x33, 0x92, 0x14, 0x01, 0x9A, 0x15, 0x83, 0x81, 0xB4, 0x69, 0x52, 0x61, 0x93, 0x59, 0x93, 0x01, 0x51, 0x72, 0x8E, 0x49, 0x72, 0x49, 0x71, 0x49, 0x51, 0x51, 0x31, 0x50, 0xF0, 0x61, 0x31, 0x92, 0x35, 0x9A, 0x76, 0xA2, 0xB6, 0xA2, 0xF8, 0x61, 0x71, 0x38, 0xAE, 0x39, 0x0F, 0x31, 0x30, 0x31, 0x50, 0x01, 0x29, 0x30, 0x81, 0x29, 0x50, 0x31, 0x50, 0x02, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x0E, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x8B, 0x21, 0x30, 0x19, 0x11, 0x19, 0x12, 0x11, 0x13, 0x11, 0x95, 0x19, 0xD6, 0x11, 0xB6, 0x19, 0xB5, 0x11, 0x12, 0x19, + 0x31, 0x21, 0x31, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x8F, 0x19, 0x2F, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x04, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x10, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x8B, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x11, 0x53, 0x21, 0xD6, 0x21, 0xF7, 0x2A, 0x38, 0x21, 0xF7, 0x19, 0x74, 0x11, 0x32, 0x19, 0x12, 0x01, 0x19, 0x11, 0x82, 0x19, 0x31, 0x21, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x83, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x88, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x74, 0x19, 0xB5, 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xF8, 0x11, 0xD8, 0x01, 0x11, 0xF8, 0x85, 0x19, 0xF8, 0x11, 0xB6, 0x09, 0x54, 0x11, 0x54, + 0x19, 0x73, 0x19, 0x52, 0x01, 0x19, 0x31, 0x81, 0x19, 0x30, 0x21, 0x50, 0x04, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x89, 0x1A, 0x18, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x20, 0xEF, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x19, 0x10, 0x83, 0x19, 0x11, 0x11, 0x12, 0x19, 0x54, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x85, 0x19, 0xB6, 0x11, 0x75, 0x11, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0A, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x0C, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, + 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x8B, 0x10, 0xF1, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x19, 0xD7, 0x22, 0x18, 0x21, 0xD7, 0x19, 0x96, 0x11, 0x33, 0x11, 0x13, 0x11, 0x12, 0x19, 0x11, 0x01, 0x19, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x07, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x06, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x06, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8A, 0x28, 0xEE, 0x30, 0xAE, 0x40, 0x6C, 0xAA, 0xB4, 0xB2, 0x52, 0xAA, 0x11, 0xA9, 0xF1, 0xA9, 0xF0, 0x89, 0xCD, 0xFF, 0x7E, 0xF7, 0x9B, 0x01, 0xF7, 0xBA, 0x80, 0xF7, 0x99, 0x03, 0xF7, 0x98, 0x8B, 0xF7, 0xB8, 0xF7, 0xB9, 0xF7, 0xD9, 0xFF, 0xDA, 0xFF, 0xBB, 0xF6, 0xDB, 0xA3, 0xB1, 0x82, 0x2E, 0x8A, 0x0F, 0xAA, 0xD3, 0xC3, 0x55, 0xD3, 0xB6, 0x01, 0xDB, 0xB7, 0x02, 0xDB, 0xB6, 0x82, 0xDB, 0x96, 0xDB, 0xB6, 0xE3, 0xD6, 0x01, 0xDB, 0xB6, 0x85, 0xD3, 0xB5, 0xD3, 0x94, 0xCB, 0xD4, 0xD4, 0xF5, 0xFE, 0xFA, 0xFF, 0x9A, 0x01, 0xF7, 0xB9, 0x83, 0xF7, 0xD9, 0xF7, 0xD8, 0xF7, 0xB8, 0xF7, 0xD8, 0x05, 0xF7, 0xB8, 0x80, 0xF7, 0xD8, + 0x01, 0xF7, 0xB8, 0x01, 0xF7, 0xD9, 0x88, 0xFF, 0xDA, 0xFF, 0xBB, 0xFF, 0x1C, 0x93, 0x4F, 0x82, 0x4E, 0x8A, 0x0F, 0xA2, 0xB1, 0xBB, 0x54, 0xD3, 0xB6, 0x04, 0xDB, 0xD7, 0x02, 0xDB, 0xB6, 0x02, 0xDB, 0xB5, 0x85, 0xD3, 0xB5, 0xC3, 0xD3, 0xF6, 0x59, 0xFF, 0x7A, 0xFF, 0x99, 0xF7, 0x98, 0x0B, 0xF7, 0xB8, 0x82, 0xF7, 0xD8, 0xF7, 0xB9, 0xF7, 0xD9, 0x01, 0xF7, 0xDA, 0x87, 0xFF, 0xBC, 0xFE, 0xFC, 0x9B, 0x70, 0x8A, 0x6E, 0x92, 0x2F, 0xAA, 0xD2, 0xC3, 0x54, 0xD3, 0xB6, 0x0A, 0xDB, 0xB6, 0x88, 0xDB, 0xD7, 0xDB, 0xF8, 0xAA, 0x73, 0xA2, 0x12, 0xA2, 0x32, 0xCB, 0x56, 0xD3, 0xB7, 0xDB, 0xB6, 0xDB, 0xD6, 0x02, 0xDB, 0xB6, 0x80, 0xDB, 0xD6, 0x01, 0xDB, 0xB6, 0x80, 0xD3, 0xB6, 0x01, 0xDB, 0xB6, 0x85, 0xD3, 0x96, 0xD3, 0xB5, 0xCC, 0x14, 0xFE, 0x7A, 0xFF, 0x7B, 0xFF, 0xBA, 0x01, 0xF7, 0xB9, 0x03, 0xF7, 0xB8, 0x81, 0xF7, 0xB9, 0xF7, 0xB8, 0x01, 0xF7, 0x98, 0x06, 0xF7, 0xB8, 0x01, 0xF7, 0xB9, 0x87, 0xF7, 0xBA, 0xFF, 0xBB, 0xFF, 0x9E, 0x71, 0xCB, 0x81, 0xCE, 0x89, 0xCE, 0xB2, 0xF3, 0xD3, 0xB6, 0x01, 0xDB, 0xD7, 0x81, 0xDB, 0xB7, 0xD3, 0xB6, 0x05, 0xDB, 0xB6, 0x01, 0xD3, 0x95, 0x83, 0xD3, 0xB4, 0xC3, 0xF3, 0xFE, 0x7A, 0xFF, 0x5B, 0x01, 0xFF, 0x9A, 0x01, 0xFF, 0xBA, 0x87, 0xFF, 0xBB, 0xFF, 0x9C, 0xD5, 0x97, 0x82, 0x0D, 0x92, 0x2F, 0x9A, 0x50, 0xBB, 0x14, 0xD3, 0xB7, 0x02, 0xDB, 0xB7, 0x01, 0xDB, 0xD7, 0x04, 0xDB, 0xB6, 0x87, 0xDB, 0x95, 0xD3, 0x95, 0xCB, 0xB4, 0xCC, 0x74, 0xFE, 0xFB, 0xFF, 0x7A, 0xFF, 0xB9, 0xFF, 0xD9, 0x09, 0xF7, 0xB8, 0x85, + 0xF7, 0xD8, 0xFF, 0xD9, 0xFF, 0xB9, 0xFF, 0xBA, 0xFF, 0x9A, 0xFF, 0x7A, 0x01, 0xFF, 0x5A, 0x04, 0xFF, 0x3A, 0x81, 0xFF, 0x1A, 0xFF, 0x1B, 0x02, 0xFF, 0x3B, 0x80, 0xFF, 0x5C, 0x01, 0xFF, 0x3C, 0x88, 0xFE, 0x5B, 0xBB, 0xF4, 0x89, 0xEE, 0x89, 0xCF, 0xAA, 0xB3, 0xC3, 0x35, 0xD3, 0x97, 0xDB, 0xB7, 0xDB, 0xD7, 0x01, 0xDB, 0xB7, 0x81, 0xDB, 0xB6, 0xDB, 0xD7, 0x03, 0xDB, 0xB6, 0x01, 0xD3, 0xB5, 0x86, 0xC3, 0xD3, 0xDD, 0x36, 0xFF, 0x5C, 0xFF, 0x7A, 0xFF, 0x9A, 0xF7, 0x9A, 0xF7, 0xBA, 0x01, 0xF7, 0xDA, 0x8A, 0xFF, 0xDB, 0xFF, 0xBC, 0xFF, 0x1C, 0x9B, 0x70, 0x8A, 0x4F, 0x92, 0x2F, 0xAA, 0xD2, 0xC3, 0x54, 0xD3, 0xB6, 0xDB, 0xD7, 0xDB, 0xB7, 0x06, 0xDB, 0xB6, 0x01, 0xD3, 0x95, 0x90, 0xD3, 0x94, 0xC3, 0xD2, 0xFE, 0x99, 0xFF, 0x9A, 0xFF, 0x99, 0xFF, 0xB9, 0xF7, 0xB9, 0xFF, 0xD9, 0xFF, 0xBA, 0xFF, 0xBB, 0xFF, 0x9C, 0xBC, 0xB4, 0x7A, 0x0D, 0x8A, 0x0F, 0x92, 0x50, 0xB3, 0x14, 0xD3, 0xB7, 0x02, 0xDB, 0xB7, 0x83, 0xDB, 0xD7, 0xDB, 0xB7, 0xDB, 0xB6, 0xDB, 0x96, 0x03, 0xDB, 0xB6, 0x85, 0xD3, 0xB5, 0xCB, 0xD3, 0xCC, 0x94, 0xFE, 0xFA, 0xFF, 0x7A, 0xFF, 0xB9, 0x01, 0xF7, 0xB8, 0x80, 0xF7, 0x98, 0x02, 0xF7, 0xB8, 0x80, 0xF7, 0x98, 0x02, 0xF7, 0xB8, 0x89, 0xF7, 0xD9, 0xF7, 0xB9, 0xFF, 0xDA, 0xFF, 0xBC, 0xC4, 0xF5, 0x92, 0xAF, 0x8A, 0x0E, 0x9A, 0x2F, 0xC3, 0x55, 0xD3, 0x96, 0x03, 0xDB, 0xB7, 0x02, 0xDB, 0xB6, 0x03, 0xD3, 0xB6, 0x84, 0xD3, 0x95, 0xCB, 0x94, 0xB3, 0x72, 0xFF, 0x5C, 0xFF, 0x9B, 0x02, 0xFF, 0x9A, 0x80, 0xF7, 0x79, 0x01, 0xFF, 0x99, + 0x02, 0xFF, 0x9A, 0x91, 0xF7, 0x9A, 0xFF, 0xBB, 0xFF, 0xBC, 0xFF, 0x7B, 0xFF, 0x1C, 0xED, 0x38, 0xAA, 0x51, 0xA9, 0xD1, 0xA9, 0xB3, 0xB1, 0xF5, 0xB2, 0x16, 0xAA, 0x38, 0x92, 0x3A, 0x48, 0xF8, 0x29, 0x1A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x9D, 0x02, 0x09, 0x9E, 0x02, 0x09, 0x9F, 0x80, 0x01, 0x9F, 0x02, 0x09, 0x9F, 0x01, 0x09, 0x7E, 0xB1, 0x11, 0x5E, 0x19, 0x5D, 0x21, 0x3C, 0x31, 0x1B, 0x38, 0xD8, 0x82, 0x9C, 0x82, 0x59, 0x7A, 0x38, 0x72, 0x57, 0x6A, 0x76, 0x6B, 0x16, 0x8D, 0x3B, 0x75, 0xFA, 0x56, 0xDA, 0x26, 0x96, 0x0E, 0x74, 0x16, 0xF6, 0x17, 0x16, 0x1F, 0x37, 0x2F, 0x39, 0x3E, 0xFA, 0x5E, 0xDC, 0x7E, 0x5C, 0x52, 0xF2, 0x72, 0xB3, 0x82, 0x54, 0x92, 0x14, 0x9A, 0x15, 0x9A, 0x36, 0x79, 0x94, 0x69, 0x73, 0x59, 0x72, 0x59, 0x93, 0x51, 0x92, 0x51, 0xB2, 0x49, 0x92, 0x51, 0xB2, 0x49, 0x72, 0x49, 0x51, 0x51, 0x51, 0x59, 0x10, 0x71, 0x92, 0x8A, 0x55, 0x92, 0x55, 0x9A, 0xB7, 0x82, 0x55, 0x51, 0x30, 0x38, 0xCF, 0x39, 0x10, 0x31, 0x30, 0x07, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x09, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x8B, 0x21, 0x10, 0x21, 0x30, 0x19, 0x31, 0x19, + 0x12, 0x11, 0x12, 0x11, 0x95, 0x19, 0xD7, 0x19, 0xB6, 0x11, 0x95, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x19, 0x30, 0x89, 0x19, 0x51, 0x19, 0x32, 0x11, 0x33, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xF6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x10, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x11, 0x74, 0x02, 0x21, 0xF7, 0x85, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x01, 0x21, 0x31, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x30, + 0x87, 0x21, 0x31, 0x19, 0x31, 0x11, 0x52, 0x11, 0x94, 0x11, 0x95, 0x11, 0xB6, 0x11, 0xD7, 0x11, 0xF8, 0x01, 0x09, 0xD8, 0x80, 0x09, 0xD9, 0x02, 0x09, 0xD8, 0x8B, 0x11, 0xD7, 0x11, 0x96, 0x09, 0x33, 0x11, 0x32, 0x11, 0x52, 0x19, 0x31, 0x19, 0x51, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x19, 0x30, 0x19, 0x0F, 0x05, 0x21, 0x30, 0x01, 0x11, 0xD7, 0x83, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x10, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x30, 0x05, 0x21, 0x30, 0x86, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x21, 0xD6, 0x01, 0x21, 0xF7, 0x83, 0x21, 0xD7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x0A, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x12, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, + 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x0A, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x51, 0x19, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0x95, 0x21, 0xF7, 0x22, 0x18, 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x02, 0x19, 0x10, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x0A, 0x21, 0x0F, 0x82, 0x20, 0xEE, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8C, 0x28, 0xEF, 0x30, 0xAE, 0x40, 0x6C, 0xAA, 0x94, 0xB2, 0x52, 0xB2, 0x11, 0xA9, 0xF1, 0xA9, 0xF0, 0x89, 0xCD, 0xFF, 0x7E, 0xF7, 0x9B, 0xF7, 0xBA, 0xF7, 0xB9, 0x01, 0xF7, 0x98, 0x03, 0xF7, 0xB8, 0x8A, 0xF7, 0xD8, 0xFF, 0xD9, 0xFF, 0xB9, 0xFF, 0x7A, 0xFE, + 0xDB, 0xAB, 0xB1, 0x8A, 0x2E, 0x8A, 0x0F, 0xAA, 0xF3, 0xC3, 0x55, 0xD3, 0xB7, 0x02, 0xDB, 0xD7, 0x80, 0xDB, 0xB7, 0x01, 0xDB, 0xB6, 0x01, 0xDB, 0xD6, 0x01, 0xDB, 0xB6, 0x01, 0xD3, 0xB5, 0x86, 0xCB, 0xF4, 0xDD, 0x15, 0xFE, 0xD9, 0xFF, 0x99, 0xFF, 0xB9, 0xFF, 0xB8, 0xF7, 0xB8, 0x06, 0xFF, 0xB8, 0x82, 0xFF, 0xD8, 0xFF, 0xB8, 0xF7, 0xB8, 0x01, 0xFF, 0xD8, 0x01, 0xFF, 0xD9, 0x89, 0xFF, 0xDA, 0xFF, 0x9B, 0xFF, 0x1B, 0x9B, 0x4F, 0x8A, 0x4E, 0x8A, 0x2F, 0xAA, 0xB2, 0xC3, 0x54, 0xD3, 0xD7, 0xDB, 0xF7, 0x02, 0xDB, 0xD7, 0x04, 0xDB, 0xD6, 0x8B, 0xDB, 0xB5, 0xD3, 0xB5, 0xD3, 0xD5, 0xCB, 0xF3, 0xFE, 0x59, 0xFF, 0x7A, 0xFF, 0x78, 0xFF, 0x98, 0xFF, 0xB8, 0xF7, 0xB7, 0xFF, 0xB8, 0xF7, 0xB7, 0x02, 0xFF, 0xB8, 0x80, 0xF7, 0xB7, 0x02, 0xFF, 0xB8, 0x01, 0xFF, 0xD8, 0x01, 0xFF, 0xD9, 0x8A, 0xFF, 0xDA, 0xFF, 0xBA, 0xFF, 0x9B, 0xFE, 0xFB, 0x9B, 0x70, 0x8A, 0x4E, 0x92, 0x2F, 0xAA, 0xD2, 0xC3, 0x54, 0xD3, 0xD6, 0xDB, 0xD7, 0x02, 0xDB, 0xD6, 0x01, 0xDB, 0xB6, 0x03, 0xDB, 0xD6, 0x01, 0xDB, 0xD7, 0x81, 0xE3, 0xF8, 0xAA, 0x72, 0x01, 0xA2, 0x32, 0x81, 0xCB, 0x76, 0xD3, 0xB7, 0x01, 0xDB, 0xD7, 0x04, 0xDB, 0xD6, 0x80, 0xDB, 0xB6, 0x02, 0xDB, 0xD6, 0x86, 0xD3, 0xB6, 0xD3, 0xD5, 0xCC, 0x13, 0xFE, 0x7A, 0xFF, 0x5A, 0xFF, 0x99, 0xFF, 0xB9, 0x03, 0xF7, 0xB8, 0x80, 0xFF, 0xB8, 0x01, 0xF7, 0xB8, 0x82, 0xFF, 0xB8, 0xF7, 0xB8, 0xFF, 0xB8, 0x03, 0xF7, 0xB8, 0x01, 0xFF, 0xB8, 0x89, 0xF7, 0xB8, 0xFF, 0xB9, 0xFF, 0xBA, 0xFF, 0xBB, 0xFF, 0x9E, 0x71, 0xCB, 0x81, + 0xCE, 0x89, 0xCE, 0xAA, 0xD3, 0xD3, 0xD6, 0x01, 0xDB, 0xF7, 0x81, 0xDB, 0xD7, 0xDB, 0xB7, 0x03, 0xDB, 0xB6, 0x80, 0xDB, 0xD6, 0x01, 0xDB, 0xB6, 0x84, 0xD3, 0xB5, 0xD3, 0xD4, 0xCC, 0x13, 0xFE, 0x7A, 0xFF, 0x5B, 0x01, 0xFF, 0x9A, 0x01, 0xFF, 0xBA, 0x88, 0xFF, 0x9B, 0xFF, 0x9C, 0xDD, 0xB8, 0x82, 0x0D, 0x92, 0x2F, 0x9A, 0x50, 0xB3, 0x13, 0xD3, 0xB7, 0xDB, 0xF7, 0x01, 0xDB, 0xD7, 0x03, 0xDB, 0xD6, 0x80, 0xDB, 0xB6, 0x02, 0xDB, 0xD6, 0x85, 0xDB, 0xB5, 0xCB, 0xD4, 0xCC, 0x94, 0xFE, 0xFA, 0xFF, 0x7A, 0xFF, 0x99, 0x02, 0xFF, 0xB8, 0x03, 0xF7, 0xB7, 0x03, 0xFF, 0xB7, 0x02, 0xFF, 0xB8, 0x01, 0xFF, 0xB9, 0x01, 0xFF, 0x99, 0x03, 0xFF, 0x79, 0x80, 0xFF, 0x59, 0x01, 0xFF, 0x79, 0x80, 0xFF, 0x59, 0x01, 0xFF, 0x5A, 0x01, 0xFF, 0x7A, 0x88, 0xFF, 0x7B, 0xFF, 0x5C, 0xFE, 0x7B, 0xBB, 0xF3, 0x8A, 0x0E, 0x89, 0xCF, 0xAA, 0xB3, 0xC3, 0x55, 0xD3, 0xB7, 0x01, 0xDB, 0xD7, 0x84, 0xDB, 0xB7, 0xDB, 0xD7, 0xDB, 0xB6, 0xDB, 0xD7, 0xDB, 0xB6, 0x01, 0xDB, 0xD6, 0x87, 0xDB, 0xB6, 0xDB, 0xD5, 0xD3, 0xD5, 0xCB, 0xF4, 0xDD, 0x56, 0xFF, 0x3B, 0xFF, 0x7A, 0xFF, 0x99, 0x01, 0xFF, 0xB9, 0x02, 0xFF, 0xBA, 0x87, 0xFF, 0x9B, 0xFF, 0x1C, 0x9B, 0x70, 0x8A, 0x4E, 0x92, 0x2F, 0xAA, 0xD2, 0xC3, 0x54, 0xD3, 0xD6, 0x01, 0xDB, 0xD7, 0x81, 0xDB, 0xB6, 0xDB, 0xD7, 0x03, 0xDB, 0xD6, 0x01, 0xDB, 0xB6, 0x85, 0xD3, 0xB5, 0xD3, 0xB4, 0xC3, 0xD2, 0xFE, 0xB9, 0xFF, 0x79, 0xFF, 0x99, 0x01, 0xFF, 0xB8, 0x01, 0xFF, 0xB9, 0x89, 0xFF, 0x9A, 0xFF, 0x9C, 0xBC, 0xB4, 0x7A, 0x0D, 0x8A, + 0x0F, 0x92, 0x50, 0xB2, 0xF3, 0xD3, 0xB6, 0xDB, 0xD7, 0xDB, 0xB7, 0x02, 0xDB, 0xD7, 0x01, 0xDB, 0xB6, 0x02, 0xDB, 0xD6, 0x8E, 0xDB, 0xD5, 0xD3, 0xB5, 0xCB, 0xD3, 0xD4, 0xB4, 0xFE, 0xF9, 0xFF, 0x59, 0xF7, 0x78, 0xF7, 0x97, 0xFF, 0xB8, 0xF7, 0x97, 0xF7, 0xB7, 0xFF, 0xB7, 0xF7, 0xB7, 0xFF, 0xB8, 0xFF, 0xB7, 0x01, 0xFF, 0xB8, 0x89, 0xFF, 0xD8, 0xFF, 0xD9, 0xFF, 0xDA, 0xFF, 0xBC, 0xCC, 0xF5, 0x92, 0xAE, 0x8A, 0x0D, 0x9A, 0x2F, 0xC3, 0x55, 0xD3, 0x96, 0x03, 0xDB, 0xD7, 0x82, 0xDB, 0xB6, 0xDB, 0xD6, 0xDB, 0xB6, 0x01, 0xDB, 0xD6, 0x85, 0xDB, 0xB6, 0xD3, 0xB6, 0xD3, 0xB5, 0xCB, 0x94, 0xB3, 0x91, 0xFF, 0x5C, 0x01, 0xFF, 0x9A, 0x02, 0xFF, 0x99, 0x80, 0xFF, 0x79, 0x01, 0xFF, 0x99, 0x82, 0xFF, 0x79, 0xFF, 0x9A, 0xFF, 0xBA, 0x01, 0xFF, 0xBB, 0x8E, 0xFF, 0x7B, 0xFF, 0x1B, 0xF5, 0x99, 0xAA, 0xB1, 0xA1, 0xD1, 0xA9, 0xD3, 0xB1, 0xF5, 0xB2, 0x16, 0xAA, 0x38, 0x92, 0x5A, 0x41, 0x18, 0x29, 0x1A, 0x21, 0x5B, 0x19, 0x9D, 0x11, 0x9D, 0x02, 0x09, 0x9E, 0x87, 0x09, 0x9F, 0x01, 0x9F, 0x09, 0x9F, 0x01, 0x9F, 0x09, 0x9F, 0x01, 0x9F, 0x09, 0x9F, 0x09, 0x9E, 0x01, 0x09, 0x7E, 0x9F, 0x11, 0x7E, 0x11, 0x3D, 0x21, 0x3D, 0x31, 0x1B, 0x51, 0x9A, 0x7A, 0x9B, 0x7A, 0x59, 0x72, 0x37, 0x6A, 0x57, 0x62, 0x75, 0x7C, 0x18, 0x7D, 0x7A, 0x5E, 0x9A, 0x36, 0xB7, 0x16, 0x54, 0x16, 0xD6, 0x17, 0x16, 0x1F, 0x17, 0x37, 0x3A, 0x46, 0xFA, 0x6E, 0xDC, 0x7D, 0xDB, 0x52, 0xD2, 0x72, 0x93, 0x8A, 0x54, 0x92, 0x14, 0x9A, 0x15, 0x92, 0x16, 0x71, 0x94, 0x61, 0x52, 0x59, 0x73, + 0x59, 0xB3, 0x01, 0x51, 0xB3, 0x87, 0x49, 0x92, 0x49, 0x72, 0x49, 0x71, 0x41, 0x51, 0x49, 0x31, 0x51, 0x51, 0x59, 0x30, 0x71, 0xB3, 0x01, 0x8A, 0x55, 0x84, 0x92, 0xB6, 0x72, 0x14, 0x38, 0xCF, 0x39, 0x10, 0x31, 0x10, 0x04, 0x29, 0x30, 0x83, 0x29, 0x10, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x89, 0x19, 0x11, 0x11, 0x11, 0x11, 0x13, 0x11, 0x95, 0x11, 0xB6, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x06, 0x21, 0x30, 0x8B, 0x19, 0x30, 0x19, 0x51, 0x11, 0x32, 0x09, 0x13, 0x19, 0xB5, 0x22, 0x17, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x21, 0x30, 0x01, 0x21, 0x50, 0x01, 0x21, 0x0F, 0x89, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0E, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x30, 0x21, 0x10, 0x01, + 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x50, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x11, 0x8B, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x21, 0xD6, 0x22, 0x18, 0x21, 0xF7, 0x21, 0xD6, 0x11, 0x54, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x31, 0x21, 0x51, 0x04, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x85, 0x19, 0x31, 0x11, 0x32, 0x11, 0x53, 0x11, 0xB5, 0x11, 0xD7, 0x11, 0xD8, 0x01, 0x09, 0xD8, 0x80, 0x01, 0xB8, 0x01, 0x01, 0xD9, 0x87, 0x01, 0xB9, 0x01, 0xD9, 0x09, 0xF9, 0x09, 0xD8, 0x11, 0xD8, 0x11, 0x96, 0x09, 0x33, 0x09, 0x32, 0x01, 0x11, 0x32, 0x02, 0x19, 0x31, 0x81, 0x19, 0x10, 0x19, 0x30, 0x03, 0x19, 0x10, 0x82, 0x19, 0x30, 0x19, 0x10, 0x09, 0x96, 0x01, 0x11, 0x96, 0x81, 0x19, 0xB6, 0x11, 0x74, 0x01, 0x11, 0x53, 0x80, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x31, 0x06, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x29, 0x30, 0x04, + 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x19, 0x0F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x84, 0x19, 0x32, 0x19, 0x53, 0x11, 0x53, 0x19, 0xB6, 0x21, 0xF7, 0x01, 0x21, 0xD7, 0x83, 0x19, 0x75, 0x11, 0x13, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x06, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x09, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x8E, 0x19, 0x11, 0x19, 0x52, 0x19, 0x32, 0x11, 0x33, 0x19, 0x75, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x19, 0x74, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, + 0x01, 0x29, 0x0F, 0x0D, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x07, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x84, 0x28, 0xEF, 0x30, 0xAE, 0x40, 0x6C, 0xAA, 0xB4, 0xB2, 0x52, 0x01, 0xB2, 0x11, 0x87, 0xA9, 0xF0, 0x89, 0xCD, 0xFF, 0x5D, 0xFF, 0x9A, 0xFF, 0x99, 0xFF, 0x98, 0xF7, 0x98, 0xF7, 0x97, 0x03, 0xFF, 0xB7, 0x01, 0xFF, 0xB8, 0x88, 0xFF, 0x99, 0xFF, 0x59, 0xFE, 0xBA, 0xAB, 0xD1, 0x82, 0x2E, 0x8A, 0x0F, 0xB2, 0xF3, 0xC3, 0x75, 0xD3, 0xD7, 0x01, 0xDB, 0xF7, 0x01, 0xDB, 0xD7, 0x85, 0xE3, 0xF7, 0xDB, 0xD7, 0xDB, 0xD6, 0xE3, 0xF7, 0xDB, 0xF6, 0xDB, 0xD6, 0x01, 0xD3, 0xD5, 0x84, 0xCB, 0xF3, 0xDC, 0xF4, 0xFE, 0xB8, 0xFF, 0x79, 0xFF, 0x98, 0x04, 0xFF, 0xB7, 0x03, 0xFF, 0x96, 0x01, 0xFF, 0x97, 0x02, 0xFF, 0xB7, 0x01, 0xFF, 0xB8, 0x88, 0xFF, 0xB9, 0xFF, 0x9A, 0xFF, 0x1B, 0x9B, 0x70, 0x8A, 0x6E, 0x92, 0x2F, 0xAA, 0xD2, 0xC3, 0x75, 0xD3, 0xF7, 0x04, 0xDB, 0xF7, 0x81, 0xDB, 0xD6, 0xDB, 0xF6, 0x02, 0xDB, 0xD6, 0x01, 0xDB, 0xD5, 0x83, 0xCB, 0xF3, 0xF6, 0x38, 0xFF, 0x59, 0xFF, 0x78, 0x02, 0xFF, 0x97, 0x03, 0xFF, 0xB7, 0x01, 0xFF, 0x97, 0x01, 0xFF, 0xB7, 0x01, 0xFF, 0x97, 0x80, 0xFF, 0xB7, 0x01, 0xFF, 0xB8, 0x89, 0xFF, 0xB9, 0xFF, + 0x99, 0xFF, 0x7B, 0xFE, 0xDB, 0xA3, 0x91, 0x8A, 0x6E, 0x92, 0x4F, 0xAA, 0xD2, 0xC3, 0x74, 0xD3, 0xD6, 0x02, 0xDB, 0xF7, 0x81, 0xDB, 0xD6, 0xDB, 0xD7, 0x01, 0xDB, 0xD6, 0x81, 0xDB, 0xF7, 0xDB, 0xD6, 0x03, 0xDB, 0xF7, 0x84, 0xAA, 0x93, 0xA2, 0x32, 0xA2, 0x31, 0xCB, 0x76, 0xDB, 0xD7, 0x02, 0xDB, 0xF7, 0x01, 0xDB, 0xD6, 0x04, 0xDB, 0xF6, 0x01, 0xDB, 0xD6, 0x84, 0xD3, 0xF5, 0xCC, 0x33, 0xFE, 0x39, 0xFF, 0x3A, 0xFF, 0x79, 0x01, 0xFF, 0xB8, 0x0E, 0xFF, 0xB7, 0x01, 0xFF, 0xB8, 0x89, 0xFF, 0xB9, 0xFF, 0xBB, 0xFF, 0x9D, 0x71, 0xCB, 0x89, 0xEE, 0x89, 0xCE, 0xAA, 0xD3, 0xD3, 0xF7, 0xDB, 0xF8, 0xDB, 0xF7, 0x02, 0xDB, 0xD7, 0x02, 0xDB, 0xD6, 0x80, 0xDB, 0xF6, 0x01, 0xDB, 0xD6, 0x85, 0xDB, 0xD5, 0xD3, 0xF4, 0xCC, 0x13, 0xFE, 0x59, 0xFF, 0x5A, 0xFF, 0x79, 0x02, 0xFF, 0x99, 0x87, 0xFF, 0x7A, 0xFF, 0x7C, 0xDD, 0xB7, 0x82, 0x0D, 0x92, 0x2F, 0x9A, 0x50, 0xB3, 0x13, 0xD3, 0xB6, 0x04, 0xDB, 0xF7, 0x01, 0xDB, 0xD6, 0x81, 0xDB, 0xF6, 0xDB, 0xD6, 0x01, 0xDB, 0xF6, 0x86, 0xDB, 0xD5, 0xD3, 0xF4, 0xD4, 0xB4, 0xFE, 0xD9, 0xFF, 0x38, 0xFF, 0x77, 0xFF, 0x97, 0x01, 0xFF, 0xB7, 0x06, 0xFF, 0x96, 0x81, 0xFF, 0xB6, 0xFF, 0xB7, 0x01, 0xFF, 0x97, 0x02, 0xFF, 0x98, 0x04, 0xFF, 0x78, 0x80, 0xFF, 0x58, 0x01, 0xFF, 0x78, 0x03, 0xFF, 0x79, 0x01, 0xFF, 0x7A, 0x89, 0xFF, 0x5B, 0xFE, 0x9A, 0xBC, 0x13, 0x8A, 0x0E, 0x89, 0xEF, 0xB2, 0xD3, 0xCB, 0x76, 0xD3, 0xD7, 0xDB, 0xF8, 0xDB, 0xF7, 0x01, 0xDB, 0xD7, 0x02, 0xDB, 0xF7, 0x01, 0xDB, 0xD6, 0x89, 0xDB, 0xF6, 0xDB, + 0xF5, 0xD3, 0xD5, 0xCC, 0x14, 0xDD, 0x15, 0xFF, 0x1A, 0xFF, 0x39, 0xFF, 0x58, 0xFF, 0x78, 0xFF, 0x98, 0x01, 0xFF, 0x99, 0x88, 0xFF, 0xBA, 0xFF, 0x9B, 0xFF, 0x1B, 0xA3, 0x90, 0x8A, 0x4E, 0x92, 0x4F, 0xAA, 0xD2, 0xC3, 0x54, 0xD3, 0xD6, 0x01, 0xDB, 0xF7, 0x82, 0xDB, 0xD7, 0xDB, 0xD6, 0xDB, 0xF7, 0x02, 0xDB, 0xD7, 0x87, 0xDB, 0xD6, 0xDB, 0xB6, 0xDB, 0xD5, 0xD3, 0xD5, 0xCC, 0x13, 0xFE, 0x57, 0xFF, 0x58, 0xFF, 0x78, 0x02, 0xFF, 0x98, 0x88, 0xFF, 0x99, 0xFF, 0x9A, 0xFF, 0x7C, 0xC4, 0xD4, 0x7A, 0x0D, 0x8A, 0x0F, 0x9A, 0x50, 0xB3, 0x14, 0xD3, 0xB7, 0x02, 0xDB, 0xD7, 0x81, 0xDB, 0xF7, 0xE3, 0xF7, 0x01, 0xDB, 0xD6, 0x01, 0xE3, 0xF6, 0x86, 0xDB, 0xD6, 0xDB, 0xD5, 0xD3, 0xD5, 0xCB, 0xF3, 0xD4, 0x93, 0xFE, 0xD9, 0xFF, 0x58, 0x01, 0xFF, 0x97, 0x01, 0xFF, 0xB7, 0x82, 0xFF, 0xB6, 0xFF, 0x96, 0xFF, 0xB6, 0x03, 0xFF, 0xB7, 0x01, 0xFF, 0xB8, 0x88, 0xFF, 0xD9, 0xFF, 0x9B, 0xCC, 0xF4, 0x9A, 0xCE, 0x8A, 0x0D, 0x92, 0x0F, 0xC3, 0x54, 0xD3, 0xB6, 0xDB, 0xD7, 0x02, 0xDB, 0xF7, 0x01, 0xDB, 0xD7, 0x01, 0xDB, 0xF7, 0x80, 0xDB, 0xF6, 0x01, 0xDB, 0xD6, 0x01, 0xD3, 0xD5, 0x84, 0xBB, 0xB2, 0xFF, 0x1B, 0xFF, 0x7A, 0xFF, 0x79, 0xFF, 0x99, 0x01, 0xFF, 0x78, 0x01, 0xFF, 0x98, 0x01, 0xFF, 0x99, 0x81, 0xFF, 0x79, 0xFF, 0x9A, 0x01, 0xFF, 0xBB, 0x8E, 0xFF, 0x9B, 0xFF, 0x3C, 0xFD, 0xFA, 0xBB, 0x32, 0xA1, 0xF1, 0xA9, 0xD3, 0xB1, 0xF5, 0xB2, 0x16, 0xAA, 0x58, 0x92, 0x5A, 0x41, 0x18, 0x29, 0x3A, 0x21, 0x5B, 0x19, 0x7C, 0x11, 0x9D, 0x01, 0x09, 0x9E, 0x80, 0x01, + 0x9E, 0x05, 0x01, 0x9F, 0x81, 0x09, 0x9F, 0x09, 0x9E, 0x02, 0x09, 0x7E, 0x9E, 0x11, 0x5E, 0x19, 0x5D, 0x21, 0x3C, 0x29, 0x1A, 0x49, 0xBA, 0x72, 0x9B, 0x72, 0x78, 0x6A, 0x57, 0x62, 0x56, 0x6B, 0x17, 0x74, 0xD9, 0x66, 0x59, 0x4E, 0xF8, 0x2E, 0xD6, 0x1E, 0xD6, 0x1F, 0x17, 0x26, 0xF7, 0x37, 0x19, 0x4E, 0xFB, 0x6E, 0xDC, 0x7D, 0x9A, 0x52, 0xB2, 0x7A, 0x94, 0x82, 0x34, 0x92, 0x35, 0x9A, 0x36, 0x92, 0x16, 0x71, 0x94, 0x61, 0x73, 0x59, 0x72, 0x51, 0x92, 0x01, 0x51, 0xB3, 0x03, 0x49, 0x92, 0x84, 0x41, 0x51, 0x41, 0x10, 0x48, 0xF0, 0x51, 0x10, 0x71, 0xB2, 0x01, 0x82, 0x75, 0x84, 0x82, 0x95, 0x59, 0xB2, 0x39, 0x0F, 0x31, 0x10, 0x31, 0x30, 0x04, 0x29, 0x30, 0x80, 0x29, 0x10, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x31, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x11, 0xB5, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x04, 0x21, 0x30, 0x8E, 0x21, 0x2F, 0x19, 0x30, 0x19, 0x31, 0x19, 0x52, 0x11, 0x52, 0x11, 0x33, 0x19, 0xB6, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x33, + 0x11, 0x12, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x06, 0x29, 0x2F, 0x81, 0x29, 0x30, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x11, 0x83, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x01, 0x22, 0x18, 0x88, 0x21, 0xF7, 0x19, 0x74, 0x10, 0xF2, 0x11, 0x11, 0x19, 0x11, 0x21, 0x30, 0x29, 0x51, 0x29, 0x30, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x29, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x09, 0x21, 0x2F, 0x89, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x54, 0x19, 0xD6, 0x11, 0xF7, 0x11, 0xF8, 0x09, 0xD9, 0x06, 0x01, 0xD9, 0x85, 0x09, 0xD9, 0x09, 0xF9, 0x09, 0xD7, 0x11, 0xD6, 0x09, 0x75, 0x09, 0x33, 0x01, 0x09, 0x12, 0x80, 0x11, 0x11, 0x01, 0x11, 0x32, 0x81, 0x11, 0x11, 0x11, + 0x31, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x11, 0x11, 0x8A, 0x09, 0x55, 0x11, 0x76, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0xB5, 0x11, 0x74, 0x11, 0x52, 0x11, 0x32, 0x11, 0x31, 0x19, 0x51, 0x02, 0x21, 0x51, 0x06, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x18, 0xEF, 0x19, 0x0F, 0x01, 0x19, 0x10, 0x02, 0x21, 0x51, 0x8D, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xF8, 0x21, 0xD7, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x02, 0x19, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8C, 0x11, 0x32, 0x11, 0x53, 0x19, 0x94, 0x21, 0xF7, 0x22, 0x17, + 0x21, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x13, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x19, 0x30, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x09, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x0C, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x0A, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x8F, 0x28, 0xEF, 0x30, 0xAE, 0x38, 0x6C, 0xAA, 0xB4, 0xB2, 0x52, 0xB2, 0x11, 0xB1, 0xF1, 0xA9, 0xF0, 0x91, 0xCD, 0xFF, 0x3C, 0xFF, 0x7A, 0xFF, 0x99, 0xFF, 0x78, 0xFF, 0x77, 0xFF, 0x76, 0xFF, 0x97, 0x02, 0xFF, 0x76, 0x01, 0xFF, 0x77, 0x89, 0xFF, 0x58, 0xFF, 0x19, 0xFE, 0x79, 0xB3, 0xD1, 0x8A, 0x0D, 0x89, 0xEF, 0xAA, 0xF3, 0xC3, 0x75, 0xD3, 0xD7, 0xDC, 0x17, 0x04, 0xDB, 0xF7, 0x82, 0xDB, 0xF6, 0xDB, 0xF7, 0xE3, 0xF7, 0x01, 0xDB, 0xF6, 0x84, 0xDB, 0xF5, 0xD4, 0x14, 0xDC, 0xF4, 0xFE, 0x78, 0xFF, 0x38, 0x01, 0xFF, 0x77, 0x01, 0xFF, 0x96, 0x02, 0xFF, 0x76, 0x01, 0xFF, 0x75, 0x03, 0xFF, 0x55, 0x01, 0xFF, 0x76, 0x8A, 0xFF, 0x56, 0xFF, 0x57, 0xFF, 0x78, 0xFF, 0x59, 0xFE, 0xDA, 0xA3, 0x6F, 0x8A, 0x6E, 0x92, 0x4F, 0xAA, 0xF2, 0xC3, 0x75, 0xD3, 0xF7, 0x03, 0xDB, 0xF7, 0x81, 0xDC, 0x17, 0xDB, 0xF7, 0x03, 0xDB, 0xF6, 0x01, 0xDB, 0xF5, 0x82, 0xCC, 0x13, 0xF5, 0xF7, 0xFF, 0x18, 0x01, 0xFF, 0x57, 0x01, 0xFF, + 0x76, 0x80, 0xFF, 0x96, 0x05, 0xFF, 0x76, 0x04, 0xFF, 0x56, 0x80, 0xFF, 0x77, 0x01, 0xFF, 0x58, 0x87, 0xFF, 0x3A, 0xFE, 0x9A, 0xAB, 0xB1, 0x8A, 0x4E, 0x92, 0x2F, 0xAA, 0xF2, 0xC3, 0x74, 0xD3, 0xF6, 0x02, 0xDC, 0x17, 0x03, 0xDB, 0xF7, 0x80, 0xDB, 0xF6, 0x01, 0xDB, 0xF7, 0x83, 0xDC, 0x17, 0xDB, 0xF7, 0xE4, 0x18, 0xB2, 0xB3, 0x01, 0xA2, 0x31, 0x80, 0xCB, 0x56, 0x04, 0xDB, 0xF7, 0x06, 0xDB, 0xF6, 0x87, 0xDB, 0xD6, 0xD3, 0xF5, 0xCC, 0x14, 0xF5, 0xD8, 0xFE, 0xD9, 0xFF, 0x18, 0xFF, 0x57, 0xFF, 0x77, 0x0A, 0xFF, 0x76, 0x81, 0xFF, 0x56, 0xFF, 0x76, 0x01, 0xFF, 0x56, 0x8A, 0xFF, 0x76, 0xFF, 0x77, 0xFF, 0x98, 0xFF, 0x9A, 0xFF, 0x7D, 0x71, 0xCB, 0x89, 0xEE, 0x89, 0xCE, 0xAA, 0xD2, 0xD3, 0xF7, 0xDC, 0x18, 0x04, 0xDB, 0xF7, 0x02, 0xDB, 0xF6, 0x80, 0xE3, 0xF6, 0x01, 0xDB, 0xF6, 0x85, 0xD3, 0xF5, 0xCC, 0x33, 0xFE, 0x39, 0xFF, 0x1A, 0xFF, 0x39, 0xFF, 0x38, 0x01, 0xFF, 0x58, 0x87, 0xFF, 0x39, 0xFF, 0x3B, 0xE5, 0xB7, 0x82, 0x0C, 0x92, 0x2F, 0x9A, 0x50, 0xB3, 0x13, 0xD3, 0xB6, 0x01, 0xDB, 0xF7, 0x01, 0xE4, 0x17, 0x80, 0xDC, 0x17, 0x05, 0xDB, 0xF6, 0x84, 0xDB, 0xF5, 0xD3, 0xF4, 0xD4, 0xB4, 0xFE, 0xB9, 0xFF, 0x18, 0x01, 0xFF, 0x57, 0x04, 0xFF, 0x76, 0x80, 0xFF, 0x75, 0x06, 0xFF, 0x76, 0x0B, 0xFF, 0x57, 0x01, 0xFF, 0x58, 0x80, 0xFF, 0x38, 0x01, 0xFF, 0x59, 0x87, 0xFF, 0x3A, 0xFE, 0x59, 0xBB, 0xF2, 0x8A, 0x0E, 0x89, 0xEF, 0xB2, 0xF3, 0xCB, 0x76, 0xDB, 0xD7, 0x01, 0xDC, 0x18, 0x05, 0xDB, 0xF7, 0x88, 0xDB, 0xF6, 0xDC, 0x16, 0xDB, 0xF6, 0xDB, + 0xF5, 0xD4, 0x14, 0xD4, 0xD4, 0xFE, 0xB9, 0xFF, 0x18, 0xFF, 0x37, 0x02, 0xFF, 0x57, 0x8B, 0xFF, 0x58, 0xFF, 0x79, 0xFF, 0x5A, 0xFE, 0xDB, 0xAB, 0x90, 0x92, 0x4E, 0x92, 0x2F, 0xAA, 0xD2, 0xC3, 0x74, 0xD3, 0xD6, 0xDB, 0xF7, 0xDC, 0x17, 0x05, 0xDB, 0xF7, 0x87, 0xDB, 0xF6, 0xDB, 0xD6, 0xDB, 0xD5, 0xDB, 0xF5, 0xD4, 0x13, 0xF6, 0x37, 0xFF, 0x17, 0xFF, 0x37, 0x02, 0xFF, 0x57, 0x88, 0xFF, 0x58, 0xFF, 0x59, 0xFF, 0x5B, 0xC4, 0xD4, 0x79, 0xED, 0x8A, 0x0F, 0x9A, 0x50, 0xB3, 0x14, 0xD3, 0xD7, 0x04, 0xDB, 0xF7, 0x84, 0xDB, 0xD6, 0xDB, 0xF6, 0xE3, 0xF6, 0xE4, 0x16, 0xE3, 0xF6, 0x01, 0xDB, 0xF5, 0x84, 0xD4, 0x13, 0xD4, 0xB3, 0xFE, 0xB8, 0xFF, 0x38, 0xFF, 0x77, 0x01, 0xFF, 0x76, 0x80, 0xFF, 0x96, 0x01, 0xFF, 0x76, 0x81, 0xFF, 0x55, 0xFF, 0x75, 0x02, 0xFF, 0x76, 0x8A, 0xFF, 0x77, 0xFF, 0x98, 0xFF, 0x99, 0xFF, 0x7A, 0xCC, 0xD4, 0x9A, 0xAE, 0x8A, 0x0D, 0x92, 0x0F, 0xC3, 0x54, 0xD3, 0xB7, 0xDB, 0xD7, 0x03, 0xDB, 0xF7, 0x8B, 0xDC, 0x17, 0xE4, 0x17, 0xDB, 0xF7, 0xDC, 0x17, 0xDB, 0xF6, 0xDB, 0xD6, 0xD3, 0xD5, 0xD3, 0xD4, 0xC3, 0xB2, 0xFE, 0xFA, 0xFF, 0x59, 0xFF, 0x58, 0x01, 0xFF, 0x78, 0x02, 0xFF, 0x57, 0x02, 0xFF, 0x58, 0x81, 0xFF, 0x38, 0xFF, 0x59, 0x01, 0xFF, 0x7A, 0x8D, 0xFF, 0x1B, 0xFE, 0x1A, 0xC3, 0x93, 0xA1, 0xF1, 0xA9, 0xD3, 0xB1, 0xF5, 0xB2, 0x16, 0xAA, 0x58, 0x92, 0x5A, 0x41, 0x18, 0x29, 0x3A, 0x21, 0x5B, 0x19, 0x9D, 0x11, 0x9D, 0x01, 0x09, 0x9E, 0x82, 0x09, 0x9F, 0x01, 0x9F, 0x09, 0x9F, 0x04, 0x01, 0x9F, 0x01, 0x09, 0x9F, 0x80, + 0x09, 0x9E, 0x01, 0x09, 0x7E, 0x8C, 0x11, 0x7E, 0x19, 0x7D, 0x21, 0x5C, 0x20, 0xD8, 0x52, 0x1A, 0x72, 0xBB, 0x62, 0x78, 0x5A, 0x36, 0x52, 0x76, 0x53, 0x76, 0x5D, 0x97, 0x4E, 0xB7, 0x47, 0x58, 0x01, 0x27, 0x17, 0x87, 0x26, 0xF8, 0x36, 0xF9, 0x4E, 0xDA, 0x76, 0xBC, 0x75, 0x19, 0x5A, 0xB2, 0x7A, 0x94, 0x8A, 0x34, 0x01, 0x92, 0x15, 0x84, 0x81, 0xD4, 0x69, 0x73, 0x61, 0x73, 0x59, 0x93, 0x51, 0x72, 0x01, 0x51, 0xB3, 0x01, 0x49, 0xB2, 0x01, 0x49, 0x92, 0x8B, 0x41, 0x31, 0x41, 0x30, 0x41, 0x10, 0x48, 0xF0, 0x59, 0x51, 0x72, 0x14, 0x7A, 0x54, 0x7A, 0x95, 0x6A, 0x54, 0x41, 0x51, 0x31, 0x10, 0x31, 0x30, 0x04, 0x29, 0x30, 0x81, 0x29, 0x10, 0x29, 0x0F, 0x06, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x09, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x88, 0x11, 0x32, 0x09, 0x12, 0x11, 0x95, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x19, 0x30, 0x8D, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x19, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, + 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x29, 0x10, 0x01, 0x29, 0x30, 0x80, 0x21, 0x30, 0x04, 0x21, 0x10, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x80, 0x21, 0x0E, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8D, 0x29, 0x51, 0x21, 0x10, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x11, 0x53, 0x11, 0x54, 0x19, 0xB6, 0x21, 0xF8, 0x22, 0x18, 0x21, 0xD7, 0x11, 0x74, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x0A, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x08, 0xF1, 0x11, 0x74, 0x19, 0xD7, 0x11, 0xD7, 0x09, 0xD8, 0x01, 0xB8, 0x01, 0x01, 0xB9, 0x84, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0xDA, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x85, 0x09, 0xD8, 0x11, 0xF8, 0x11, 0xB7, 0x11, 0x96, 0x09, 0x34, 0x09, 0x33, 0x01, 0x09, 0x12, 0x83, 0x11, 0x33, 0x19, 0x73, 0x11, 0x53, 0x11, 0x52, 0x03, 0x11, 0x32, 0x01, 0x09, 0x55, 0x8E, 0x11, 0xB6, 0x19, 0xF7, + 0x22, 0x17, 0x11, 0xB5, 0x11, 0x95, 0x11, 0x73, 0x11, 0x53, 0x11, 0x32, 0x11, 0x52, 0x19, 0x52, 0x19, 0x72, 0x19, 0x51, 0x19, 0x31, 0x19, 0x30, 0x21, 0x51, 0x03, 0x21, 0x31, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x84, 0x21, 0x30, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x80, 0x19, 0x10, 0x01, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x52, 0x85, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x74, 0x11, 0x95, 0x01, 0x22, 0x17, 0x86, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x13, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x51, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x86, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0E, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, + 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x01, 0x11, 0x32, 0x8A, 0x19, 0x94, 0x21, 0xF6, 0x21, 0xF7, 0x22, 0x17, 0x19, 0xB6, 0x11, 0x33, 0x11, 0x12, 0x10, 0xF2, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x03, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8D, 0x28, 0xEF, 0x30, 0xAE, 0x38, 0x4C, 0xB2, 0xB4, 0xBA, 0x52, 0xB2, 0x11, 0xB1, 0xF1, 0xA9, 0xF0, 0x91, 0xAC, 0xFE, 0xDB, 0xFF, 0x19, 0xFF, 0x38, 0xFF, 0x37, 0xFF, 0x16, 0x01, 0xFF, 0x15, 0x80, 0xFF, 0x14, 0x01, 0xFE, 0xF4, 0x8A, 0xFE, 0xF5, 0xFE, 0xF6, 0xFE, 0xF7, 0xFE, 0xB8, 0xF6, 0x18, 0xBB, 0xD1, 0x8A, 0x0D, 0x92, 0x0E, 0xB2, 0xF3, 0xCB, 0x95, 0xDB, 0xF7, 0x01, 0xDC, 0x18, 0x01, 0xDC, 0x17, 0x80, 0xE4, 0x17, 0x01, 0xDB, 0xF7, + 0x01, 0xE4, 0x17, 0x01, 0xDC, 0x16, 0x84, 0xDB, 0xF5, 0xDC, 0x14, 0xDC, 0xB4, 0xFE, 0x17, 0xFE, 0xD7, 0x01, 0xFF, 0x16, 0x01, 0xFF, 0x15, 0x81, 0xFF, 0x14, 0xFE, 0xF4, 0x03, 0xFE, 0xD4, 0x82, 0xFE, 0xD3, 0xFE, 0xD4, 0xFE, 0xB3, 0x01, 0xFE, 0xB4, 0x8B, 0xFE, 0xB5, 0xFE, 0xD5, 0xFE, 0xD6, 0xFE, 0xB7, 0xFE, 0x58, 0xA3, 0x4F, 0x8A, 0x4D, 0x92, 0x4F, 0xAA, 0xF2, 0xC3, 0x95, 0xD3, 0xF7, 0xDC, 0x18, 0x01, 0xDC, 0x17, 0x01, 0xE4, 0x17, 0x80, 0xDC, 0x17, 0x01, 0xE4, 0x17, 0x89, 0xE4, 0x16, 0xDB, 0xF6, 0xDB, 0xF5, 0xDC, 0x15, 0xD4, 0x33, 0xF5, 0xD6, 0xFE, 0xB7, 0xFE, 0xD6, 0xFE, 0xF6, 0xFF, 0x16, 0x01, 0xFF, 0x15, 0x81, 0xFF, 0x14, 0xFE, 0xF4, 0x07, 0xFE, 0xD4, 0x01, 0xFE, 0xD5, 0x8B, 0xFE, 0xD6, 0xFE, 0xD7, 0xFE, 0xB8, 0xF6, 0x18, 0xB3, 0x91, 0x92, 0x2E, 0x92, 0x2F, 0xAA, 0xF2, 0xC3, 0x95, 0xD3, 0xF7, 0xDC, 0x37, 0xE4, 0x37, 0x02, 0xE4, 0x17, 0x06, 0xDC, 0x17, 0x81, 0xE4, 0x38, 0xB2, 0xB3, 0x01, 0xA2, 0x31, 0x82, 0xBA, 0xF4, 0xE4, 0x38, 0xE4, 0x18, 0x03, 0xDC, 0x17, 0x05, 0xDC, 0x16, 0x88, 0xDB, 0xF6, 0xD3, 0xF5, 0xD4, 0x14, 0xED, 0x57, 0xFE, 0x57, 0xFE, 0x96, 0xFE, 0xD6, 0xFE, 0xD5, 0xFE, 0xF5, 0x02, 0xFE, 0xD4, 0x80, 0xFE, 0xF4, 0x0A, 0xFE, 0xD4, 0x84, 0xFE, 0xF5, 0xFE, 0xF6, 0xFE, 0xF8, 0xFF, 0x1B, 0x79, 0xCB, 0x01, 0x89, 0xEE, 0x82, 0xAA, 0xF3, 0xD4, 0x17, 0xDC, 0x38, 0x01, 0xDC, 0x18, 0x01, 0xDC, 0x17, 0x01, 0xDB, 0xF7, 0x89, 0xDB, 0xF6, 0xE4, 0x17, 0xE4, 0x16, 0xE3, 0xF6, 0xDC, 0x16, 0xDC, 0x15, 0xD4, 0x33, 0xFE, 0x18, + 0xFE, 0xB9, 0xFE, 0xD8, 0x02, 0xFE, 0xF7, 0x88, 0xFE, 0xB7, 0xFE, 0xB9, 0xDD, 0x15, 0x82, 0x0C, 0x92, 0x0F, 0x9A, 0x50, 0xBB, 0x13, 0xD3, 0xD6, 0xDC, 0x17, 0x03, 0xE4, 0x17, 0x80, 0xDB, 0xF6, 0x04, 0xDC, 0x16, 0x87, 0xDB, 0xF5, 0xD4, 0x14, 0xDC, 0xB4, 0xFE, 0x78, 0xFE, 0xB7, 0xFE, 0xD6, 0xFE, 0xF6, 0xFE, 0xF5, 0x02, 0xFF, 0x15, 0x05, 0xFE, 0xF4, 0x80, 0xFF, 0x14, 0x02, 0xFF, 0x15, 0x09, 0xFF, 0x16, 0x03, 0xFE, 0xF6, 0x01, 0xFE, 0xF7, 0x8A, 0xFE, 0xD8, 0xED, 0xD7, 0xB3, 0x91, 0x89, 0xED, 0x89, 0xCE, 0xB2, 0xF3, 0xCB, 0x96, 0xD3, 0xF7, 0xDC, 0x18, 0xE4, 0x38, 0xDC, 0x17, 0x03, 0xDB, 0xF7, 0x81, 0xDC, 0x17, 0xE4, 0x16, 0x01, 0xDC, 0x16, 0x85, 0xDC, 0x15, 0xDC, 0x34, 0xDC, 0x93, 0xFE, 0x58, 0xFE, 0xB7, 0xFE, 0xD6, 0x03, 0xFE, 0xF6, 0x8E, 0xFE, 0xF7, 0xFE, 0xD8, 0xF6, 0x18, 0xAB, 0x4F, 0x92, 0x4E, 0x9A, 0x4F, 0xB2, 0xD2, 0xC3, 0x75, 0xD3, 0xD6, 0xDC, 0x17, 0xE4, 0x37, 0xDC, 0x17, 0xDB, 0xF7, 0xE4, 0x17, 0xDC, 0x17, 0x01, 0xE4, 0x17, 0x01, 0xDB, 0xF6, 0x87, 0xDB, 0xF5, 0xDC, 0x15, 0xD4, 0x13, 0xFD, 0xF6, 0xFE, 0x96, 0xFE, 0xB5, 0xFE, 0xD5, 0xFE, 0xF5, 0x01, 0xFE, 0xF6, 0x87, 0xFE, 0xF8, 0xFE, 0xFA, 0xCC, 0xB4, 0x81, 0xEC, 0x8A, 0x0F, 0x9A, 0x50, 0xBB, 0x34, 0xD3, 0xD7, 0x01, 0xDC, 0x18, 0x84, 0xDB, 0xF7, 0xDC, 0x17, 0xE4, 0x17, 0xDB, 0xF7, 0xDB, 0xF6, 0x01, 0xE4, 0x16, 0x80, 0xDC, 0x16, 0x01, 0xDC, 0x15, 0x85, 0xD4, 0x14, 0xDC, 0xB3, 0xFE, 0x57, 0xFE, 0xD7, 0xFE, 0xF6, 0xFF, 0x15, 0x01, 0xFE, 0xF5, 0x01, 0xFE, 0xF4, 0x03, + 0xFE, 0xD4, 0x8D, 0xFE, 0xD5, 0xFE, 0xF5, 0xFE, 0xF6, 0xFF, 0x17, 0xFE, 0xF9, 0xCC, 0x93, 0x9A, 0x8E, 0x89, 0xED, 0x92, 0x2F, 0xC3, 0x55, 0xD3, 0xD7, 0xDB, 0xF7, 0xDC, 0x18, 0xE4, 0x18, 0x02, 0xDC, 0x17, 0x01, 0xE4, 0x17, 0x80, 0xDC, 0x17, 0x01, 0xDC, 0x16, 0x86, 0xDB, 0xF5, 0xD3, 0xF4, 0xC3, 0xD2, 0xFE, 0xB9, 0xFF, 0x19, 0xFF, 0x18, 0xFF, 0x17, 0x04, 0xFE, 0xF6, 0x02, 0xFE, 0xD6, 0x90, 0xFE, 0xD7, 0xFE, 0xF8, 0xFE, 0xF9, 0xFE, 0xD9, 0xFD, 0xF9, 0xD3, 0xF4, 0xA1, 0xF0, 0xA9, 0xD3, 0xA9, 0xF4, 0xAA, 0x16, 0xAA, 0x58, 0x92, 0x5A, 0x41, 0x18, 0x29, 0x3A, 0x21, 0x5B, 0x19, 0x7D, 0x11, 0x9D, 0x01, 0x09, 0x9E, 0x80, 0x09, 0x9F, 0x03, 0x01, 0x9F, 0x80, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0xA3, 0x01, 0x9E, 0x01, 0x9F, 0x01, 0x9E, 0x09, 0x9E, 0x09, 0x7E, 0x11, 0x9E, 0x11, 0x7D, 0x19, 0x7D, 0x21, 0x5B, 0x21, 0x18, 0x52, 0x5B, 0x5A, 0x99, 0x52, 0x57, 0x4A, 0x36, 0x42, 0xD5, 0x3C, 0x94, 0x4E, 0x77, 0x3E, 0xD7, 0x26, 0xF6, 0x2F, 0x37, 0x2F, 0x18, 0x36, 0xF9, 0x4E, 0xBA, 0x7E, 0xBC, 0x74, 0xF8, 0x62, 0xD3, 0x82, 0x94, 0x8A, 0x54, 0x92, 0x35, 0x92, 0x15, 0x81, 0xD4, 0x69, 0x73, 0x61, 0x73, 0x59, 0x73, 0x51, 0x93, 0x51, 0xB3, 0x01, 0x49, 0x92, 0x02, 0x41, 0x92, 0x80, 0x49, 0x92, 0x01, 0x41, 0x51, 0x01, 0x41, 0x10, 0x86, 0x49, 0x10, 0x61, 0xB2, 0x6A, 0x14, 0x61, 0xF3, 0x41, 0x51, 0x30, 0xF0, 0x31, 0x10, 0x05, 0x29, 0x30, 0x08, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, + 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0x95, 0x11, 0x12, 0x19, 0x11, 0x21, 0x51, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x2F, 0x8E, 0x19, 0x0F, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x13, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x11, 0x19, 0x31, 0x21, 0x50, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0E, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x30, 0x84, 0x21, 0x10, 0x29, 0x30, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x80, 0x21, 0x11, 0x01, 0x19, 0x11, 0x81, 0x21, 0x31, 0x21, 0x11, 0x04, 0x21, 0x30, 0x84, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x0D, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, + 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x11, 0x8E, 0x11, 0x32, 0x19, 0x74, 0x11, 0x74, 0x19, 0xB6, 0x22, 0x18, 0x2A, 0x38, 0x19, 0xB6, 0x19, 0x54, 0x11, 0x12, 0x11, 0x11, 0x19, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x08, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x89, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x11, 0x12, 0x19, 0x95, 0x19, 0xD7, 0x11, 0xF8, 0x09, 0xF8, 0x01, 0xB8, 0x01, 0xB9, 0x01, 0x01, 0xD9, 0x02, 0x01, 0xFA, 0x86, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0xB8, 0x09, 0xB8, 0x09, 0xD8, 0x11, 0xB7, 0x11, 0xB6, 0x01, 0x11, 0x96, 0x81, 0x19, 0x95, 0x11, 0x95, 0x01, 0x19, 0x95, 0x02, 0x19, 0x94, 0x02, 0x19, 0x73, 0x01, 0x11, 0x54, 0x8A, 0x09, 0x54, 0x11, 0xB6, 0x19, 0xD6, 0x19, 0xF6, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x94, 0x09, 0x53, 0x11, 0x53, 0x11, 0x32, 0x11, 0x31, 0x02, 0x11, 0x11, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x11, 0x05, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x81, 0x19, 0x10, 0x19, 0x11, 0x01, 0x19, 0x10, 0x01, 0x19, 0x11, 0x8B, 0x21, 0x31, 0x19, 0x32, 0x19, 0x31, 0x19, 0x32, 0x19, 0x11, 0x11, 0x11, 0x08, 0xF1, 0x11, 0x11, 0x11, 0x32, 0x09, 0x33, 0x09, 0x54, 0x11, 0xB5, 0x01, 0x22, 0x17, 0x84, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x13, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x31, 0x02, 0x21, + 0x30, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x8A, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x06, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x05, 0x21, 0x30, 0x01, 0x21, 0x31, 0x01, 0x19, 0x31, 0x89, 0x11, 0x31, 0x11, 0x32, 0x19, 0xB5, 0x21, 0xF6, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0xB6, 0x11, 0x54, 0x11, 0x33, 0x19, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x09, 0x21, 0x0F, + 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x90, 0x28, 0xEF, 0x30, 0xAE, 0x38, 0x4C, 0xAA, 0xB4, 0xBA, 0x52, 0xB2, 0x11, 0xB1, 0xF1, 0xB1, 0xF0, 0x99, 0xCD, 0xFD, 0xD8, 0xF6, 0x15, 0xEE, 0x14, 0xEE, 0x33, 0xED, 0xD2, 0xED, 0xD1, 0xED, 0xF1, 0xEE, 0x11, 0x01, 0xF6, 0x31, 0x8A, 0xF6, 0x32, 0xF6, 0x33, 0xFE, 0x35, 0xFE, 0x16, 0xE5, 0x35, 0xB3, 0x91, 0x8A, 0x0D, 0x92, 0x0E, 0xB2, 0xF2, 0xCB, 0x95, 0xDC, 0x17, 0x01, 0xE4, 0x38, 0x01, 0xDC, 0x17, 0x80, 0xE4, 0x37, 0x01, 0xDC, 0x17, 0x01, 0xE4, 0x17, 0x88, 0xE4, 0x16, 0xE4, 0x36, 0xDC, 0x15, 0xDC, 0x34, 0xDC, 0x93, 0xED, 0x74, 0xF5, 0xF4, 0xF6, 0x13, 0xED, 0xF2, 0x01, 0xED, 0xF1, 0x02, 0xED, 0xD0, 0x01, 0xF5, 0xD0, 0x85, 0xF5, 0xF0, 0xF5, 0xF1, 0xFE, 0x11, 0xF6, 0x11, 0xF6, 0x12, 0xF6, 0x32, 0x01, 0xFE, 0x33, 0x88, 0xFE, 0x54, 0xFE, 0x36, 0xED, 0x95, 0xA3, 0x2E, 0x8A, 0x2D, 0x92, 0x4F, 0xAA, 0xF2, 0xC3, 0x95, 0xDC, 0x17, 0x02, 0xDC, 0x18, 0x80, 0xDC, 0x17, 0x02, 0xE4, 0x17, 0x01, 0xE4, 0x37, 0x80, 0xDC, 0x16, 0x01, 0xDC, 0x15, 0x85, 0xDC, 0x33, 0xED, 0x14, 0xF5, 0xB4, 0xF5, 0xD3, 0xED, 0xF2, 0xED, 0xD2, 0x01, 0xED, 0xF1, 0x80, 0xED, 0xF0, 0x07, 0xF5, 0xF1, 0x01, 0xFE, + 0x12, 0x8F, 0xFE, 0x33, 0xF6, 0x34, 0xFE, 0x34, 0xFE, 0x16, 0xE5, 0x35, 0xB3, 0x50, 0x92, 0x2E, 0x92, 0x2F, 0xB3, 0x12, 0xC3, 0x95, 0xDC, 0x17, 0xE4, 0x58, 0xE4, 0x38, 0xE4, 0x37, 0xDC, 0x17, 0xE4, 0x17, 0x02, 0xDC, 0x17, 0x80, 0xDC, 0x16, 0x02, 0xDC, 0x37, 0x85, 0xE4, 0x58, 0xB2, 0xD3, 0xA2, 0x11, 0xA2, 0x31, 0xAA, 0x92, 0xE4, 0x59, 0x01, 0xE4, 0x38, 0x01, 0xDC, 0x37, 0x82, 0xDC, 0x17, 0xDC, 0x16, 0xDC, 0x17, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x17, 0x01, 0xDC, 0x16, 0x84, 0xDB, 0xF5, 0xD4, 0x14, 0xEC, 0xF6, 0xF5, 0xD6, 0xF6, 0x15, 0x01, 0xF6, 0x34, 0x86, 0xFE, 0x33, 0xFE, 0x32, 0xF6, 0x32, 0xF6, 0x11, 0xF6, 0x31, 0xF6, 0x11, 0xF6, 0x31, 0x02, 0xF6, 0x11, 0x82, 0xF6, 0x31, 0xF6, 0x11, 0xF6, 0x31, 0x02, 0xFE, 0x32, 0x84, 0xFE, 0x54, 0xF6, 0x54, 0xF6, 0x55, 0xFE, 0x99, 0x79, 0xCB, 0x01, 0x89, 0xEE, 0x83, 0xB2, 0xF3, 0xDC, 0x38, 0xDC, 0x58, 0xDC, 0x38, 0x04, 0xDC, 0x17, 0x80, 0xE4, 0x17, 0x02, 0xE4, 0x16, 0x85, 0xDC, 0x16, 0xDC, 0x15, 0xD4, 0x33, 0xF5, 0x76, 0xF5, 0xF6, 0xF6, 0x36, 0x01, 0xF6, 0x55, 0x8C, 0xFE, 0x56, 0xF6, 0x16, 0xF5, 0xF6, 0xCC, 0x73, 0x8A, 0x0C, 0x92, 0x2F, 0x9A, 0x50, 0xBB, 0x33, 0xD3, 0xF7, 0xDC, 0x37, 0xE4, 0x37, 0xE4, 0x17, 0xE4, 0x37, 0x01, 0xE4, 0x17, 0x80, 0xE4, 0x37, 0x02, 0xDC, 0x16, 0x01, 0xDC, 0x15, 0x85, 0xDC, 0x14, 0xDC, 0x73, 0xED, 0x54, 0xED, 0xB4, 0xED, 0xF3, 0xED, 0xD2, 0x02, 0xED, 0xD1, 0x02, 0xED, 0xB0, 0x86, 0xED, 0x8F, 0xED, 0xB0, 0xE5, 0x90, 0xE5, 0xAF, 0xE5, 0x8F, 0xE5, 0xAF, 0xE5, + 0x8F, 0x06, 0xE5, 0xB0, 0x81, 0xED, 0xB1, 0xED, 0xD1, 0x01, 0xED, 0xF1, 0x93, 0xF6, 0x12, 0xF6, 0x32, 0xF6, 0x33, 0xFE, 0x53, 0xFE, 0x54, 0xFE, 0x55, 0xFE, 0x36, 0xE5, 0x35, 0xAB, 0x50, 0x81, 0xCD, 0x89, 0xCE, 0xB2, 0xF3, 0xCB, 0xB6, 0xDB, 0xF7, 0xDC, 0x38, 0xE4, 0x38, 0xDC, 0x17, 0xDB, 0xF7, 0xDC, 0x17, 0xDB, 0xF7, 0x02, 0xE4, 0x37, 0x86, 0xE4, 0x36, 0xDC, 0x16, 0xDC, 0x15, 0xDC, 0x14, 0xD4, 0x52, 0xF5, 0xB6, 0xFE, 0x35, 0x04, 0xFE, 0x54, 0x88, 0xFE, 0x55, 0xFE, 0x36, 0xE5, 0x35, 0xA3, 0x0F, 0x92, 0x2E, 0x9A, 0x4F, 0xB2, 0xF2, 0xCB, 0x75, 0xDB, 0xF7, 0x01, 0xE4, 0x37, 0x03, 0xDC, 0x17, 0x80, 0xE4, 0x17, 0x01, 0xDC, 0x16, 0x80, 0xDB, 0xF6, 0x01, 0xDC, 0x15, 0x8F, 0xD4, 0x33, 0xF5, 0x95, 0xF5, 0xF4, 0xFE, 0x34, 0xFE, 0x54, 0xFE, 0x74, 0xFE, 0x54, 0xFE, 0x55, 0xFE, 0x56, 0xFE, 0x38, 0xC4, 0x52, 0x81, 0xED, 0x8A, 0x0F, 0x9A, 0x50, 0xBB, 0x34, 0xD3, 0xF7, 0x01, 0xDC, 0x18, 0x01, 0xDC, 0x17, 0x02, 0xE4, 0x17, 0x01, 0xE4, 0x16, 0x80, 0xE4, 0x36, 0x01, 0xDC, 0x15, 0x86, 0xDC, 0x34, 0xDC, 0x73, 0xED, 0x74, 0xF5, 0xF4, 0xEE, 0x13, 0xED, 0xF2, 0xED, 0xF1, 0x03, 0xF5, 0xF1, 0x01, 0xF6, 0x11, 0x82, 0xF6, 0x12, 0xFE, 0x33, 0xFE, 0x53, 0x01, 0xF6, 0x54, 0x89, 0xFE, 0x56, 0xC4, 0x32, 0x9A, 0x6D, 0x89, 0xED, 0x92, 0x0F, 0xC3, 0x75, 0xDB, 0xF7, 0xDC, 0x18, 0xE4, 0x38, 0xE4, 0x18, 0x04, 0xDC, 0x17, 0x87, 0xE4, 0x37, 0xDC, 0x36, 0xDC, 0x16, 0xDC, 0x15, 0xDB, 0xF4, 0xCC, 0x12, 0xF5, 0xB6, 0xED, 0xD4, 0x01, 0xED, 0xD3, 0x83, 0xED, 0xF3, + 0xF5, 0xF3, 0xF6, 0x13, 0xF6, 0x33, 0x01, 0xFE, 0x34, 0x92, 0xF6, 0x34, 0xFE, 0x34, 0xFE, 0x55, 0xFE, 0x56, 0xFE, 0x77, 0xFE, 0x58, 0xFD, 0xB7, 0xDC, 0x14, 0xA1, 0xF0, 0xA9, 0xF3, 0xA9, 0xF4, 0xAA, 0x16, 0xAA, 0x58, 0x8A, 0x5A, 0x41, 0x18, 0x29, 0x1A, 0x21, 0x5B, 0x19, 0x7D, 0x11, 0x9D, 0x01, 0x09, 0x9E, 0x09, 0x01, 0x9F, 0x80, 0x01, 0x9E, 0x02, 0x09, 0x9E, 0x9D, 0x09, 0x7E, 0x11, 0x7D, 0x11, 0x5C, 0x19, 0x3A, 0x19, 0x38, 0x5B, 0x3C, 0x52, 0xF9, 0x3A, 0x56, 0x22, 0x93, 0x02, 0xCD, 0x25, 0x32, 0x2E, 0x54, 0x2F, 0x16, 0x2F, 0x37, 0x2F, 0x17, 0x3E, 0xF9, 0x56, 0xBA, 0x86, 0x9D, 0x6C, 0x56, 0x62, 0xB3, 0x82, 0x94, 0x82, 0x34, 0x8A, 0x35, 0x8A, 0x15, 0x79, 0xB4, 0x69, 0x73, 0x59, 0x73, 0x59, 0x93, 0x51, 0x93, 0x49, 0x93, 0x01, 0x49, 0x92, 0x80, 0x49, 0xB2, 0x01, 0x41, 0x92, 0x8B, 0x41, 0x72, 0x41, 0x71, 0x41, 0x51, 0x41, 0x30, 0x41, 0x10, 0x41, 0x0F, 0x41, 0x10, 0x49, 0x71, 0x49, 0x51, 0x39, 0x10, 0x31, 0x10, 0x31, 0x30, 0x04, 0x29, 0x30, 0x06, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x8C, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, + 0x11, 0xB5, 0x11, 0xD6, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x8C, 0x21, 0x30, 0x19, 0x10, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x32, 0x11, 0x31, 0x19, 0x51, 0x01, 0x21, 0x30, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x31, 0x03, 0x19, 0x32, 0x81, 0x19, 0x12, 0x19, 0x11, 0x03, 0x21, 0x31, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x09, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x50, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x01, 0x19, 0x11, 0x8A, 0x19, 0x32, 0x11, 0x53, 0x19, 0x74, 0x19, 0xB6, 0x22, 0x18, 0x2A, 0x18, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x51, 0x19, 0x31, + 0x11, 0x32, 0x19, 0x95, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xD8, 0x01, 0xB8, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x80, 0x01, 0xB9, 0x01, 0x09, 0xD9, 0x80, 0x09, 0xB8, 0x01, 0x09, 0xB7, 0x85, 0x11, 0xB6, 0x19, 0xD7, 0x21, 0xF7, 0x22, 0x17, 0x21, 0xF7, 0x22, 0x17, 0x01, 0x21, 0xF6, 0x01, 0x21, 0xD5, 0x01, 0x21, 0xB5, 0x80, 0x21, 0xD5, 0x02, 0x11, 0x33, 0x81, 0x11, 0x54, 0x11, 0x75, 0x01, 0x11, 0xB6, 0x85, 0x11, 0xD6, 0x11, 0xB5, 0x11, 0x95, 0x09, 0x54, 0x09, 0x33, 0x09, 0x12, 0x02, 0x08, 0xF1, 0x80, 0x11, 0x11, 0x02, 0x11, 0x12, 0x81, 0x11, 0x11, 0x11, 0x31, 0x01, 0x11, 0x32, 0x01, 0x11, 0x31, 0x80, 0x11, 0x11, 0x02, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x82, 0x19, 0x31, 0x10, 0xF1, 0x19, 0x12, 0x02, 0x11, 0x12, 0x80, 0x10, 0xF2, 0x01, 0x08, 0xF2, 0x8E, 0x09, 0x13, 0x09, 0x33, 0x09, 0x54, 0x11, 0xB5, 0x22, 0x37, 0x22, 0x17, 0x21, 0xD6, 0x11, 0x54, 0x11, 0x13, 0x10, 0xF2, 0x19, 0x11, 0x19, 0x31, 0x21, 0x51, 0x21, 0x50, 0x19, 0x30, 0x01, 0x19, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x88, 0x29, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x80, 0x21, + 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x50, 0x02, 0x21, 0x30, 0x01, 0x21, 0x10, 0x8C, 0x21, 0x31, 0x19, 0x31, 0x11, 0x11, 0x11, 0x12, 0x11, 0x53, 0x19, 0xD5, 0x19, 0xD6, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x95, 0x19, 0x54, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x84, 0x21, 0x30, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0xA0, 0x28, 0xEF, 0x30, 0xCE, 0x38, 0x4C, + 0xAA, 0xB4, 0xBA, 0x52, 0xB2, 0x12, 0xB1, 0xF1, 0xB1, 0xD0, 0xA1, 0xCD, 0xF5, 0x35, 0xF5, 0x74, 0xED, 0xB3, 0xED, 0x92, 0xE5, 0x30, 0xED, 0x2F, 0xED, 0x4F, 0xED, 0x4E, 0xED, 0x4F, 0xED, 0x6F, 0xED, 0x70, 0xED, 0x71, 0xED, 0x92, 0xED, 0x53, 0xDC, 0x93, 0xB3, 0x50, 0x89, 0xED, 0x92, 0x0E, 0xB2, 0xF3, 0xCB, 0x95, 0xDC, 0x17, 0xE4, 0x58, 0xE4, 0x38, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x02, 0xDC, 0x17, 0x80, 0xE4, 0x37, 0x01, 0xE4, 0x36, 0x88, 0xDC, 0x15, 0xDC, 0x34, 0xDC, 0x53, 0xED, 0x13, 0xED, 0x52, 0xED, 0x71, 0xED, 0x50, 0xED, 0x4F, 0xED, 0x2F, 0x03, 0xED, 0x2E, 0x81, 0xED, 0x2F, 0xED, 0x2E, 0x02, 0xED, 0x4F, 0x91, 0xED, 0x6F, 0xED, 0x70, 0xF5, 0x70, 0xF5, 0x91, 0xF5, 0xB2, 0xF5, 0x93, 0xE5, 0x14, 0xA3, 0x0E, 0x8A, 0x2D, 0x92, 0x2E, 0xB2, 0xF2, 0xCB, 0xB5, 0xDC, 0x17, 0xDC, 0x38, 0xE4, 0x38, 0xDC, 0x18, 0xE4, 0x38, 0xE4, 0x37, 0x01, 0xE4, 0x17, 0x01, 0xE4, 0x37, 0x01, 0xE4, 0x36, 0x86, 0xDC, 0x15, 0xDC, 0x34, 0xE4, 0xD3, 0xED, 0x33, 0xED, 0x52, 0xED, 0x51, 0xED, 0x30, 0x01, 0xED, 0x2F, 0x03, 0xED, 0x2E, 0x81, 0xED, 0x0E, 0xED, 0x2F, 0x01, 0xED, 0x2E, 0x02, 0xED, 0x2F, 0x8A, 0xED, 0x50, 0xED, 0x51, 0xED, 0x72, 0xED, 0x53, 0xE4, 0xD3, 0xB3, 0x2F, 0x92, 0x2E, 0x9A, 0x4F, 0xB3, 0x12, 0xCB, 0xB5, 0xDC, 0x17, 0x01, 0xE4, 0x58, 0x80, 0xE4, 0x37, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x17, 0x01, 0xDC, 0x37, 0x81, 0xE4, 0x37, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x86, 0xE4, 0x58, 0xB2, 0xD3, 0x9A, 0x11, 0x9A, 0x31, 0xA2, 0x72, 0xE4, 0x58, 0xE4, + 0x38, 0x01, 0xE4, 0x58, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x17, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x8B, 0xE4, 0x17, 0xE4, 0x16, 0xDB, 0xF5, 0xDC, 0x15, 0xE4, 0x74, 0xED, 0x14, 0xED, 0x53, 0xED, 0x73, 0xED, 0x72, 0xED, 0x71, 0xED, 0x70, 0xED, 0x4F, 0x01, 0xED, 0x4E, 0x03, 0xED, 0x2E, 0x80, 0xED, 0x4E, 0x02, 0xED, 0x2F, 0x01, 0xED, 0x4F, 0x85, 0xED, 0x50, 0xED, 0x71, 0xED, 0x92, 0xED, 0x73, 0xF5, 0xD7, 0x81, 0xCB, 0x01, 0x89, 0xEE, 0x83, 0xB2, 0xF3, 0xDC, 0x58, 0xE4, 0x58, 0xDC, 0x38, 0x01, 0xDC, 0x17, 0x82, 0xDC, 0x37, 0xE4, 0x37, 0xDC, 0x17, 0x01, 0xE4, 0x17, 0x80, 0xE4, 0x37, 0x01, 0xE4, 0x16, 0x85, 0xDC, 0x35, 0xDC, 0x34, 0xE4, 0xB4, 0xED, 0x34, 0xE5, 0x33, 0xE5, 0x53, 0x01, 0xED, 0x73, 0x87, 0xED, 0x74, 0xED, 0x55, 0xCC, 0x32, 0x8A, 0x0D, 0x9A, 0x2F, 0x9A, 0x70, 0xBB, 0x34, 0xDC, 0x17, 0x01, 0xE4, 0x38, 0x02, 0xE4, 0x37, 0x81, 0xDC, 0x37, 0xDC, 0x36, 0x01, 0xE4, 0x36, 0x88, 0xDC, 0x16, 0xDC, 0x36, 0xDC, 0x35, 0xDC, 0x34, 0xDC, 0x53, 0xEC, 0xF3, 0xED, 0x53, 0xED, 0x72, 0xED, 0x51, 0x01, 0xED, 0x30, 0x02, 0xED, 0x2F, 0x81, 0xED, 0x2E, 0xE4, 0xEE, 0x01, 0xED, 0x0E, 0x0E, 0xE5, 0x0E, 0x01, 0xE5, 0x2E, 0x8B, 0xED, 0x4F, 0xED, 0x70, 0xED, 0x91, 0xED, 0x92, 0xED, 0x73, 0xDC, 0xB3, 0xAB, 0x0E, 0x81, 0xAC, 0x89, 0xCE, 0xB3, 0x13, 0xCB, 0xB6, 0xDC, 0x18, 0x01, 0xE4, 0x38, 0x80, 0xDC, 0x18, 0x01, 0xDC, 0x17, 0x81, 0xE4, 0x37, 0xDC, 0x17, 0x01, 0xE4, 0x37, 0x87, 0xDC, 0x36, 0xE4, 0x36, 0xDC, 0x15, 0xDC, 0x14, 0xDC, 0x53, 0xE4, + 0xF3, 0xED, 0x53, 0xED, 0x72, 0x02, 0xED, 0x71, 0x8E, 0xED, 0x72, 0xE5, 0x72, 0xED, 0x74, 0xE4, 0xF4, 0xAA, 0xEF, 0x92, 0x2E, 0x9A, 0x4F, 0xB2, 0xF2, 0xCB, 0x95, 0xDC, 0x17, 0xE4, 0x38, 0xE4, 0x58, 0xE4, 0x37, 0xDC, 0x17, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x80, 0xE4, 0x36, 0x01, 0xDC, 0x16, 0x84, 0xDC, 0x15, 0xDC, 0x35, 0xDC, 0x33, 0xED, 0x14, 0xED, 0x53, 0x01, 0xED, 0x72, 0x8C, 0xED, 0x92, 0xED, 0x72, 0xED, 0x93, 0xED, 0x74, 0xED, 0x34, 0xB3, 0x90, 0x89, 0xED, 0x92, 0x0F, 0x9A, 0x50, 0xBB, 0x54, 0xDC, 0x17, 0xDC, 0x38, 0xE4, 0x38, 0x01, 0xDC, 0x17, 0x03, 0xE4, 0x37, 0x01, 0xE4, 0x36, 0x01, 0xDC, 0x35, 0x85, 0xDC, 0x34, 0xDC, 0x73, 0xED, 0x13, 0xED, 0x53, 0xED, 0x71, 0xE5, 0x50, 0x04, 0xED, 0x2F, 0x02, 0xED, 0x4F, 0x80, 0xED, 0x70, 0x01, 0xED, 0x91, 0x88, 0xED, 0x92, 0xED, 0x94, 0xC3, 0xF1, 0x9A, 0x4D, 0x89, 0xCD, 0x9A, 0x2F, 0xC3, 0x75, 0xDB, 0xF7, 0xDC, 0x18, 0x02, 0xE4, 0x38, 0x80, 0xE4, 0x37, 0x02, 0xDC, 0x17, 0x01, 0xE4, 0x37, 0x88, 0xDC, 0x36, 0xDC, 0x15, 0xDC, 0x14, 0xD3, 0xF2, 0xED, 0x34, 0xED, 0x53, 0xED, 0x52, 0xED, 0x31, 0xE5, 0x31, 0x01, 0xED, 0x30, 0x81, 0xED, 0x50, 0xED, 0x51, 0x01, 0xED, 0x71, 0x91, 0xED, 0x92, 0xF5, 0xB3, 0xF5, 0xB4, 0xFD, 0xD5, 0xFD, 0xB5, 0xFD, 0x76, 0xE4, 0x54, 0xA1, 0xEF, 0xA9, 0xD2, 0xA9, 0xF4, 0xAA, 0x16, 0xA2, 0x58, 0x8A, 0x5A, 0x41, 0x18, 0x29, 0x1A, 0x21, 0x5B, 0x19, 0x7D, 0x11, 0x9D, 0x01, 0x09, 0x9E, 0x0A, 0x01, 0x9F, 0x80, 0x01, 0x9E, 0x02, 0x09, 0x9E, 0x99, 0x09, 0x7E, 0x11, + 0x7D, 0x11, 0x7C, 0x11, 0x79, 0x2A, 0x79, 0x5C, 0x3D, 0x64, 0xDD, 0x65, 0x7B, 0x0B, 0xAF, 0x04, 0x0C, 0x0D, 0x4F, 0x2E, 0xD5, 0x2F, 0x57, 0x37, 0x38, 0x3E, 0xD8, 0x56, 0x9A, 0x86, 0x5C, 0x6C, 0x16, 0x6A, 0xD4, 0x82, 0x94, 0x82, 0x34, 0x8A, 0x15, 0x81, 0xF5, 0x71, 0x94, 0x69, 0x94, 0x59, 0x93, 0x01, 0x51, 0x93, 0x03, 0x49, 0x92, 0x8B, 0x41, 0x92, 0x39, 0x71, 0x41, 0x92, 0x41, 0x71, 0x41, 0x92, 0x41, 0x71, 0x39, 0x30, 0x38, 0xEF, 0x39, 0x0F, 0x39, 0x10, 0x38, 0xF0, 0x31, 0x10, 0x01, 0x31, 0x30, 0x80, 0x31, 0x31, 0x04, 0x29, 0x30, 0x03, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x0A, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x01, 0x19, 0xD7, 0x83, 0x19, 0x95, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x8E, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x10, 0x19, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB5, 0x21, 0xF7, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x30, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, + 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x10, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x02, 0x19, 0x32, 0x01, 0x19, 0x53, 0x83, 0x11, 0x53, 0x11, 0x33, 0x11, 0x12, 0x19, 0x12, 0x01, 0x19, 0x11, 0x80, 0x19, 0x10, 0x04, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x29, 0x51, 0x01, 0x19, 0x11, 0x83, 0x11, 0x12, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x02, 0x21, 0xF7, 0x84, 0x19, 0x74, 0x11, 0x12, 0x10, 0xF1, 0x18, 0xF1, 0x19, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x21, 0x31, 0x19, 0x31, 0x11, 0x12, 0x19, 0x95, 0x11, 0xB7, 0x11, 0xD8, 0x09, 0xB8, 0x01, 0xB8, 0x01, 0x01, 0xB9, 0x81, 0x01, 0xDA, 0x01, 0xFA, 0x01, 0x01, 0xDA, 0x85, 0x01, 0xD9, 0x01, 0xB9, 0x01, 0x98, 0x09, 0xB8, 0x09, 0xB7, 0x11, 0xB7, 0x01, 0x11, 0xB6, 0x81, 0x19, 0xD6, 0x19, 0xF6, 0x02, 0x21, 0xF6, + 0x01, 0x21, 0xB5, 0x85, 0x21, 0xD5, 0x21, 0xB5, 0x21, 0xD5, 0x21, 0xB5, 0x19, 0x52, 0x11, 0x32, 0x01, 0x11, 0x33, 0x83, 0x11, 0x54, 0x11, 0x75, 0x11, 0xB6, 0x19, 0xF7, 0x01, 0x11, 0xD6, 0x84, 0x11, 0x95, 0x09, 0x74, 0x09, 0x54, 0x09, 0x33, 0x09, 0x13, 0x02, 0x11, 0x33, 0x82, 0x11, 0x32, 0x11, 0x12, 0x11, 0x32, 0x02, 0x11, 0x12, 0x04, 0x11, 0x32, 0x02, 0x11, 0x12, 0x01, 0x11, 0x32, 0x80, 0x11, 0x12, 0x01, 0x10, 0xF2, 0x80, 0x11, 0x12, 0x01, 0x08, 0xF2, 0x8D, 0x09, 0x12, 0x09, 0x13, 0x11, 0x54, 0x11, 0x75, 0x19, 0xF7, 0x2A, 0x58, 0x22, 0x17, 0x21, 0xF6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x11, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x0D, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, + 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x19, 0x11, 0x83, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x19, 0xB5, 0x02, 0x21, 0xF6, 0x81, 0x19, 0x95, 0x11, 0x53, 0x01, 0x11, 0x12, 0x81, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x2F, 0x29, 0x30, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x9D, 0x28, 0xEF, 0x28, 0xCE, 0x38, 0x4C, 0xAA, 0xB4, 0xBA, 0x53, 0xB2, 0x12, 0xB1, 0xF1, 0xB1, 0xD0, 0xA1, 0xAD, 0xFD, 0x36, 0xFD, 0x74, 0xF5, 0x93, 0xF5, 0x72, 0xF5, 0x30, 0xED, 0x2F, 0xED, 0x0E, 0xED, 0x2E, 0xF5, 0x2E, 0xF5, 0x2F, 0xF5, 0x4F, 0xF5, 0x30, 0xF5, 0x51, 0xED, 0x33, 0xDC, 0x92, 0xBB, 0x4F, 0x92, 0x0D, 0x92, 0x0E, 0xB2, 0xF2, 0xCB, 0xB5, 0xDC, 0x37, 0x01, 0xE4, 0x58, 0x03, 0xE4, 0x37, 0x02, 0xDC, 0x37, 0x01, 0xE4, 0x36, 0x8A, 0xE4, 0x35, 0xDC, 0x34, 0xE4, 0x53, 0xF5, 0x14, 0xF5, 0x32, 0xED, 0x51, 0xED, 0x30, 0xED, 0x2F, 0xED, 0x0F, 0xF5, 0x2F, + 0xF5, 0x0E, 0x02, 0xF5, 0x2F, 0x01, 0xF5, 0x0E, 0x01, 0xED, 0x0E, 0x01, 0xED, 0x2F, 0x8C, 0xF5, 0x2F, 0xED, 0x50, 0xF5, 0x51, 0xF5, 0x53, 0xE4, 0xD3, 0xAB, 0x0E, 0x92, 0x2D, 0x92, 0x2F, 0xB3, 0x12, 0xCB, 0xB5, 0xDC, 0x17, 0xE4, 0x38, 0xE4, 0x58, 0x01, 0xE4, 0x38, 0x81, 0xE4, 0x37, 0xE4, 0x17, 0x02, 0xE4, 0x37, 0x88, 0xE4, 0x57, 0xE4, 0x36, 0xE4, 0x35, 0xDC, 0x33, 0xEC, 0xB3, 0xF5, 0x13, 0xED, 0x32, 0xED, 0x31, 0xED, 0x10, 0x01, 0xED, 0x0F, 0x80, 0xF5, 0x0E, 0x01, 0xED, 0x0E, 0x05, 0xF5, 0x0E, 0x81, 0xF5, 0x0F, 0xF5, 0x2F, 0x01, 0xF5, 0x30, 0x8A, 0xF5, 0x31, 0xF5, 0x33, 0xE4, 0xB3, 0xBB, 0x4F, 0x92, 0x2E, 0x9A, 0x2F, 0xB3, 0x13, 0xCB, 0x95, 0xDC, 0x17, 0xDC, 0x58, 0xE4, 0x58, 0x01, 0xDC, 0x37, 0x03, 0xE4, 0x37, 0x8C, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0xE4, 0x78, 0xBA, 0xF3, 0x9A, 0x10, 0x9A, 0x31, 0xA2, 0x51, 0xD3, 0xF7, 0xE4, 0x58, 0xE4, 0x38, 0xE4, 0x37, 0x03, 0xDC, 0x37, 0x8E, 0xE4, 0x37, 0xDC, 0x37, 0xE4, 0x37, 0xDC, 0x36, 0xE4, 0x37, 0xDC, 0x16, 0xDC, 0x15, 0xDC, 0x34, 0xEC, 0xB4, 0xEC, 0xF4, 0xF5, 0x33, 0xF5, 0x32, 0xF5, 0x31, 0xF5, 0x30, 0xF5, 0x0F, 0x02, 0xF5, 0x2F, 0x01, 0xF5, 0x0E, 0x01, 0xED, 0x0E, 0x80, 0xF5, 0x0F, 0x01, 0xED, 0x0F, 0x01, 0xF5, 0x2F, 0x01, 0xF5, 0x30, 0x86, 0xF5, 0x51, 0xED, 0x52, 0xFD, 0xD7, 0x81, 0xCB, 0x89, 0xEE, 0x91, 0xEF, 0xB2, 0xF3, 0x01, 0xDC, 0x58, 0x80, 0xDC, 0x38, 0x01, 0xDC, 0x37, 0x02, 0xE4, 0x37, 0x80, 0xE4, 0x17, 0x02, 0xE4, 0x37, 0x84, 0xE4, 0x36, 0xE4, 0x35, + 0xDC, 0x34, 0xEC, 0xD5, 0xED, 0x14, 0x01, 0xED, 0x33, 0x01, 0xED, 0x53, 0x87, 0xED, 0x54, 0xED, 0x35, 0xCC, 0x32, 0x92, 0x0D, 0x9A, 0x4F, 0xA2, 0x91, 0xBB, 0x54, 0xDC, 0x17, 0x01, 0xE4, 0x58, 0x84, 0xDC, 0x17, 0xE4, 0x17, 0xE4, 0x37, 0xDC, 0x37, 0xE4, 0x37, 0x01, 0xE4, 0x56, 0x01, 0xE4, 0x36, 0x86, 0xDC, 0x35, 0xDC, 0x34, 0xE4, 0x53, 0xF5, 0x14, 0xF5, 0x53, 0xED, 0x52, 0xED, 0x31, 0x01, 0xF5, 0x30, 0x80, 0xF5, 0x2F, 0x02, 0xF5, 0x0F, 0x06, 0xF5, 0x0E, 0x04, 0xF5, 0x2E, 0x01, 0xF5, 0x0E, 0x81, 0xED, 0x0E, 0xF5, 0x2E, 0x04, 0xED, 0x2E, 0x8C, 0xED, 0x2F, 0xED, 0x30, 0xED, 0x51, 0xED, 0x32, 0xE4, 0xB2, 0xAB, 0x0E, 0x89, 0xCC, 0x91, 0xEE, 0xB3, 0x13, 0xCB, 0xD6, 0xDC, 0x17, 0xE4, 0x58, 0xE4, 0x38, 0x01, 0xDC, 0x38, 0x80, 0xE4, 0x58, 0x01, 0xE4, 0x37, 0x81, 0xDC, 0x37, 0xDC, 0x36, 0x01, 0xE4, 0x36, 0x86, 0xE4, 0x35, 0xDC, 0x34, 0xDC, 0x33, 0xEC, 0xF4, 0xED, 0x33, 0xED, 0x52, 0xED, 0x31, 0x01, 0xED, 0x51, 0x01, 0xED, 0x52, 0x8A, 0xED, 0x53, 0xE4, 0xD4, 0xAA, 0xEF, 0x9A, 0x2E, 0xA2, 0x4F, 0xB3, 0x13, 0xCB, 0x95, 0xDC, 0x17, 0xE4, 0x58, 0xE4, 0x57, 0xE4, 0x37, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xE4, 0x36, 0x01, 0xE4, 0x35, 0x83, 0xDC, 0x33, 0xEC, 0xF4, 0xED, 0x13, 0xED, 0x32, 0x03, 0xED, 0x52, 0x89, 0xED, 0x53, 0xED, 0x15, 0xB3, 0x50, 0x89, 0xED, 0x92, 0x0F, 0x9A, 0x50, 0xBB, 0x54, 0xDC, 0x17, 0xE4, 0x38, 0xDC, 0x38, 0x01, 0xDC, 0x37, 0x03, 0xE4, 0x37, 0x80, 0xDC, 0x36, 0x01, 0xE4, 0x36, 0x87, 0xE4, + 0x35, 0xDC, 0x34, 0xDC, 0x73, 0xED, 0x13, 0xED, 0x33, 0xED, 0x51, 0xED, 0x30, 0xF5, 0x30, 0x02, 0xF5, 0x0F, 0x01, 0xF5, 0x2F, 0x01, 0xED, 0x0F, 0x8A, 0xED, 0x2F, 0xED, 0x50, 0xED, 0x51, 0xED, 0x52, 0xF5, 0x74, 0xCB, 0xF1, 0x9A, 0x6D, 0x89, 0xED, 0x9A, 0x2F, 0xCB, 0x95, 0xDC, 0x17, 0x02, 0xE4, 0x38, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x17, 0x83, 0xDC, 0x37, 0xE4, 0x37, 0xE4, 0x57, 0xE4, 0x36, 0x01, 0xDC, 0x35, 0x82, 0xD4, 0x12, 0xF5, 0x34, 0xF5, 0x73, 0x01, 0xF5, 0x52, 0x02, 0xF5, 0x31, 0x02, 0xF5, 0x51, 0x01, 0xED, 0x51, 0x91, 0xF5, 0x52, 0xF5, 0x72, 0xF5, 0x93, 0xFD, 0x74, 0xFD, 0x55, 0xEC, 0x75, 0xA1, 0xEF, 0xA1, 0xD2, 0xAA, 0x14, 0xAA, 0x36, 0xA2, 0x58, 0x8A, 0x5A, 0x41, 0x18, 0x29, 0x1A, 0x21, 0x5C, 0x19, 0x9D, 0x11, 0x9D, 0x09, 0x9E, 0x01, 0x01, 0x9E, 0x09, 0x01, 0x9F, 0x01, 0x01, 0x9E, 0x01, 0x09, 0x9E, 0x99, 0x09, 0x7E, 0x09, 0x7D, 0x09, 0x7C, 0x09, 0x9A, 0x09, 0xF8, 0x43, 0xFC, 0x76, 0x1F, 0x6E, 0x9D, 0x4E, 0x58, 0x15, 0x30, 0x05, 0x4F, 0x26, 0xB4, 0x2F, 0x36, 0x37, 0x38, 0x3E, 0xD8, 0x5E, 0x9A, 0x8E, 0x3C, 0x5B, 0x74, 0x72, 0xD4, 0x82, 0x95, 0x82, 0x35, 0x8A, 0x15, 0x81, 0xF5, 0x69, 0x73, 0x61, 0x94, 0x59, 0x94, 0x01, 0x51, 0x93, 0x8A, 0x49, 0xB3, 0x49, 0x93, 0x49, 0x92, 0x41, 0x92, 0x41, 0x72, 0x39, 0x71, 0x41, 0x72, 0x39, 0x51, 0x41, 0x91, 0x39, 0x71, 0x39, 0x50, 0x04, 0x39, 0x30, 0x01, 0x31, 0x30, 0x81, 0x29, 0x30, 0x29, 0x10, 0x02, 0x29, 0x30, 0x04, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, + 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x09, 0x21, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x01, 0x11, 0x12, 0x86, 0x19, 0xB5, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0xB5, 0x11, 0x32, 0x11, 0x11, 0x19, 0x51, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x10, 0x01, 0x19, 0x11, 0x84, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x53, 0x11, 0x74, 0x01, 0x19, 0xB5, 0x83, 0x19, 0x95, 0x19, 0x54, 0x11, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x81, 0x21, 0x11, 0x21, 0x31, 0x03, 0x21, 0x10, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0D, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x88, 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, + 0x11, 0x18, 0xF1, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x84, 0x21, 0xD6, 0x11, 0x54, 0x11, 0x33, 0x11, 0x12, 0x18, 0xF1, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x50, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x32, 0x19, 0x95, 0x19, 0xD7, 0x11, 0xD8, 0x09, 0xD8, 0x01, 0xB8, 0x01, 0x01, 0xB9, 0x02, 0x01, 0xDA, 0x84, 0x01, 0xFA, 0x01, 0xD9, 0x01, 0xB8, 0x09, 0xB8, 0x09, 0xB7, 0x01, 0x11, 0xD7, 0x88, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0xB5, 0x11, 0x94, 0x11, 0x74, 0x19, 0x74, 0x11, 0x53, 0x19, 0x53, 0x19, 0x73, 0x03, 0x19, 0x53, 0x80, 0x19, 0x52, 0x01, 0x19, 0x32, 0x01, 0x11, 0x32, 0x84, 0x11, 0x53, 0x19, 0xB5, 0x19, 0xD6, 0x22, 0x17, 0x19, 0xF7, 0x01, 0x19, 0xD7, 0x80, 0x19, 0xD6, 0x01, 0x19, 0xB5, 0x81, 0x19, 0x95, 0x19, 0x94, 0x03, 0x19, 0x74, 0x80, 0x11, 0x74, 0x04, 0x19, 0x74, 0x82, 0x11, 0x53, 0x19, 0x74, 0x19, 0x53, 0x01, 0x19, 0x54, 0x81, 0x19, 0x53, 0x11, 0x53, 0x01, 0x11, 0x33, 0x93, 0x11, 0x54, 0x19, 0x74, 0x11, 0x74, 0x19, 0x95, 0x19, 0xB5, 0x19, 0xD6, 0x22, 0x37, 0x2A, 0x58, 0x22, 0x37, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x54, 0x11, 0x32, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, + 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x0D, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x0D, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x09, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x85, 0x19, 0x10, 0x19, 0x11, 0x19, 0x12, 0x11, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x01, 0x22, 0x17, 0x84, 0x21, 0xF6, 0x19, 0x95, 0x19, 0x74, 0x11, 0x32, 0x10, 0xF1, 0x01, 0x19, 0x11, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x0B, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x0F, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x05, 0x29, + 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x8E, 0x29, 0x0F, 0x28, 0xEF, 0x28, 0xAE, 0x38, 0x4C, 0xAA, 0xB5, 0xBA, 0x53, 0xB2, 0x11, 0xB1, 0xF1, 0xB1, 0xF0, 0xA1, 0xCD, 0xFD, 0x36, 0xFD, 0x74, 0xFD, 0xB3, 0xF5, 0x71, 0xF5, 0x50, 0x02, 0xF5, 0x2F, 0x02, 0xF5, 0x4F, 0x89, 0xF5, 0x50, 0xF5, 0x31, 0xF5, 0x32, 0xE4, 0x92, 0xBB, 0x4F, 0x91, 0xED, 0x9A, 0x2F, 0xB3, 0x13, 0xCB, 0xB6, 0xDC, 0x37, 0x01, 0xE4, 0x78, 0x80, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x8B, 0xDC, 0x37, 0xE4, 0x37, 0xDC, 0x37, 0xE4, 0x37, 0xE4, 0x36, 0xE4, 0x56, 0xE4, 0x35, 0xE4, 0x34, 0xE4, 0x73, 0xF5, 0x13, 0xF5, 0x53, 0xF5, 0x51, 0x01, 0xF5, 0x30, 0x01, 0xF5, 0x2F, 0x82, 0xFD, 0x4F, 0xF5, 0x2F, 0xFD, 0x4F, 0x01, 0xF5, 0x2F, 0x81, 0xF5, 0x0E, 0xF5, 0x2F, 0x01, 0xF5, 0x0F, 0x80, 0xF5, 0x2F, 0x02, 0xF5, 0x30, 0x87, 0xF5, 0x52, 0xE4, 0xB2, 0xB3, 0x0E, 0x92, 0x2D, 0x9A, 0x4F, 0xB3, 0x13, 0xCB, 0xB5, 0xDC, 0x38, 0x01, 0xE4, 0x58, 0x80, 0xE4, 0x38, 0x05, 0xE4, 0x37, 0x01, 0xE4, 0x56, 0x86, 0xE4, 0x35, 0xE4, 0x34, 0xEC, 0xB3, 0xF5, 0x13, 0xED, 0x11, 0xF5, 0x31, 0xF5, 0x10, 0x08, 0xF5, 0x2F, 0x83, 0xF5, 0x2E, 0xF5, 0x2F, 0xFD, 0x2F, 0xF5, 0x2F, 0x01, 0xF5, 0x30, 0x8B, 0xF5, 0x31, 0xF5, 0x33, 0xE4, 0xB2, 0xBB, 0x4F, 0x9A, 0x4D, 0x9A, 0x2F, 0xBB, 0x13, 0xCB, 0xB5, 0xDC, 0x37, 0xDC, 0x58, 0xE4, 0x57, 0xDC, 0x37, 0x02, 0xE4, 0x37, 0x04, 0xE4, 0x57, 0x86, 0xDC, 0x57, 0xE4, 0x57, 0xC3, 0x54, 0x9A, 0x10, 0x9A, 0x30, 0x9A, 0x31, 0xD3, 0xD6, 0x02, 0xE4, 0x58, 0x80, 0xE4, 0x37, + 0x02, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x8A, 0xDC, 0x37, 0xDC, 0x36, 0xE4, 0x37, 0xE4, 0x36, 0xE4, 0x16, 0xDC, 0x15, 0xE4, 0x34, 0xEC, 0x94, 0xF4, 0xD3, 0xF5, 0x12, 0xFD, 0x32, 0x01, 0xFD, 0x31, 0x02, 0xFD, 0x30, 0x05, 0xF5, 0x2F, 0x8B, 0xF5, 0x30, 0xF5, 0x50, 0xF5, 0x30, 0xF5, 0x50, 0xF5, 0x51, 0xF5, 0x72, 0xF5, 0x73, 0xFD, 0xD7, 0x81, 0xCB, 0x89, 0xEE, 0x91, 0xEE, 0xB2, 0xF3, 0x01, 0xDC, 0x58, 0x80, 0xDC, 0x38, 0x01, 0xDC, 0x37, 0x05, 0xE4, 0x37, 0x86, 0xE4, 0x57, 0xE4, 0x36, 0xE4, 0x35, 0xE4, 0x54, 0xF5, 0x15, 0xF5, 0x34, 0xF5, 0x54, 0x02, 0xF5, 0x53, 0x8A, 0xF5, 0x54, 0xF5, 0x35, 0xCC, 0x12, 0x92, 0x0D, 0x9A, 0x2F, 0xA2, 0x91, 0xC3, 0x74, 0xDC, 0x38, 0xE4, 0x78, 0xE4, 0x58, 0xDC, 0x37, 0x03, 0xE4, 0x37, 0x80, 0xE4, 0x57, 0x02, 0xE4, 0x36, 0x86, 0xE4, 0x35, 0xDC, 0x34, 0xE4, 0x73, 0xF5, 0x14, 0xF5, 0x53, 0xF5, 0x52, 0xF5, 0x31, 0x02, 0xF5, 0x30, 0x0B, 0xF5, 0x2F, 0x01, 0xF5, 0x4F, 0x05, 0xF5, 0x2F, 0x01, 0xF5, 0x2E, 0x01, 0xF5, 0x2F, 0x8D, 0xF5, 0x4F, 0xF5, 0x2F, 0xED, 0x10, 0xF5, 0x31, 0xE4, 0xD2, 0xB3, 0x4F, 0x89, 0xCC, 0x91, 0xEE, 0xBB, 0x13, 0xD3, 0xD6, 0xDC, 0x17, 0xDC, 0x58, 0xE4, 0x58, 0xDC, 0x37, 0x01, 0xE4, 0x58, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x36, 0x01, 0xE4, 0x56, 0x85, 0xE4, 0x36, 0xE4, 0x35, 0xE4, 0x53, 0xEC, 0xD4, 0xF5, 0x34, 0xF5, 0x53, 0x03, 0xF5, 0x72, 0x8E, 0xF5, 0x53, 0xF5, 0x54, 0xE4, 0xD4, 0xB3, 0x0F, 0x9A, 0x4E, 0xA2, 0x50, 0xBB, 0x13, 0xCB, 0x95, 0xDC, 0x17, 0xE4, 0x58, 0xE4, + 0x57, 0xE4, 0x37, 0xDC, 0x16, 0xDC, 0x37, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xE4, 0x36, 0x85, 0xDC, 0x35, 0xE4, 0x35, 0xE4, 0x54, 0xEC, 0xF4, 0xF5, 0x13, 0xF5, 0x33, 0x02, 0xF5, 0x52, 0x8D, 0xF5, 0x53, 0xF5, 0x54, 0xF5, 0x35, 0xBB, 0x50, 0x89, 0xED, 0x92, 0x0F, 0xA2, 0x71, 0xC3, 0x75, 0xDC, 0x37, 0xE4, 0x38, 0xE4, 0x58, 0xE4, 0x37, 0xDC, 0x37, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x81, 0xE4, 0x37, 0xE4, 0x57, 0x01, 0xE4, 0x36, 0x84, 0xE4, 0x55, 0xE4, 0x54, 0xE4, 0x73, 0xEC, 0xF3, 0xF5, 0x53, 0x01, 0xF5, 0x51, 0x02, 0xF5, 0x30, 0x01, 0xF5, 0x2F, 0x80, 0xF5, 0x4F, 0x01, 0xF5, 0x2F, 0x81, 0xF5, 0x4F, 0xF5, 0x50, 0x01, 0xED, 0x51, 0x89, 0xF5, 0x74, 0xCB, 0xF1, 0x9A, 0x6D, 0x89, 0xED, 0x9A, 0x2F, 0xC3, 0x95, 0xDB, 0xF7, 0xE4, 0x58, 0xE4, 0x38, 0xDC, 0x38, 0x04, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x84, 0xE4, 0x56, 0xE4, 0x35, 0xDC, 0x34, 0xDC, 0x12, 0xFD, 0x55, 0x01, 0xFD, 0x73, 0x01, 0xFD, 0x72, 0x80, 0xF5, 0x52, 0x04, 0xF5, 0x51, 0x80, 0xF5, 0x71, 0x01, 0xF5, 0x72, 0x8E, 0xF5, 0x73, 0xFD, 0x74, 0xFD, 0x55, 0xF4, 0xD6, 0xA1, 0xEF, 0xA9, 0xD2, 0xAA, 0x14, 0xAA, 0x36, 0xA2, 0x78, 0x8A, 0x5A, 0x41, 0x18, 0x29, 0x1A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x9D, 0x01, 0x09, 0x9E, 0x0C, 0x01, 0x9F, 0x01, 0x01, 0x9E, 0x99, 0x09, 0x9E, 0x09, 0x9D, 0x01, 0x9D, 0x01, 0xBB, 0x02, 0x19, 0x2B, 0xBB, 0x66, 0x5F, 0x5E, 0xBD, 0x4E, 0xD9, 0x2E, 0x74, 0x26, 0xB3, 0x1E, 0xB3, 0x2F, 0x56, 0x37, 0x37, 0x46, 0xD8, 0x5E, 0x7A, 0x8E, 0x1C, 0x5B, 0x33, 0x72, 0xD4, + 0x82, 0x95, 0x82, 0x35, 0x82, 0x15, 0x79, 0xD4, 0x69, 0x93, 0x61, 0x94, 0x59, 0x93, 0x01, 0x51, 0x93, 0x85, 0x51, 0xB3, 0x49, 0xB3, 0x49, 0x92, 0x41, 0x92, 0x41, 0x72, 0x39, 0x72, 0x01, 0x39, 0x51, 0x01, 0x41, 0x71, 0x02, 0x39, 0x71, 0x82, 0x39, 0x50, 0x39, 0x51, 0x39, 0x30, 0x01, 0x31, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x50, 0x06, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0x95, 0x08, 0xF1, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x8A, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x21, 0xD6, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x94, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x80, 0x21, 0x11, 0x01, 0x19, 0x32, 0x83, + 0x19, 0x74, 0x11, 0x74, 0x11, 0x95, 0x19, 0xB6, 0x01, 0x19, 0xD6, 0x80, 0x19, 0xF6, 0x01, 0x21, 0xF6, 0x84, 0x19, 0xB5, 0x21, 0x94, 0x19, 0x33, 0x19, 0x32, 0x19, 0x11, 0x01, 0x21, 0x31, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0F, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x18, 0xF1, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xB6, 0x19, 0x74, 0x19, 0x33, 0x11, 0x12, 0x01, 0x19, 0x11, 0x82, 0x21, 0x30, 0x21, 0x10, 0x29, 0x30, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8A, 0x21, 0x51, 0x19, 0x11, 0x10, 0xF1, 0x11, 0x74, 0x19, 0xD6, 0x11, 0xD7, 0x09, 0xD8, 0x01, 0xB8, 0x01, 0xD9, 0x01, 0x98, 0x01, 0xB9, 0x01, 0x01, 0xBA, 0x80, 0x01, 0xDA, 0x01, 0x09, 0xD9, 0x86, 0x11, 0xD8, 0x11, 0xF8, 0x19, 0xF7, 0x11, 0xB5, 0x11, 0x54, 0x11, 0x33, 0x09, 0x12, 0x01, 0x11, 0x12, 0x01, 0x11, 0x32, 0x02, 0x19, 0x52, 0x82, 0x19, 0x32, 0x11, 0x12, 0x19, 0x32, 0x02, 0x19, 0x31, 0x86, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x11, 0x33, 0x11, 0x94, 0x19, 0xD5, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x82, + 0x21, 0xF7, 0x22, 0x17, 0x2A, 0x37, 0x04, 0x2A, 0x17, 0x80, 0x2A, 0x37, 0x01, 0x2A, 0x16, 0x01, 0x2A, 0x17, 0x02, 0x2A, 0x16, 0x8C, 0x32, 0x37, 0x2A, 0x16, 0x2A, 0x37, 0x2A, 0x17, 0x29, 0xF6, 0x21, 0xF6, 0x29, 0xF7, 0x2A, 0x37, 0x32, 0x57, 0x2A, 0x37, 0x32, 0x58, 0x32, 0x37, 0x2A, 0x57, 0x01, 0x2A, 0x37, 0x85, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x94, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x11, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, + 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x06, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x81, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x32, 0x81, 0x11, 0x33, 0x19, 0x95, 0x01, 0x22, 0x17, 0x88, 0x21, 0xF7, 0x19, 0x95, 0x19, 0x54, 0x19, 0x53, 0x11, 0x11, 0x19, 0x11, 0x18, 0xF0, 0x19, 0x10, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x8D, 0x28, 0xEF, 0x30, 0xCE, 0x38, 0x4C, 0xAA, 0xB4, 0xB2, 0x52, 0xB2, 0x12, 0xB1, 0xF1, 0xB1, 0xF0, 0xA1, 0xAD, 0xFD, 0x36, 0xFD, 0x74, 0xFD, 0x92, 0xF5, 0x71, 0xF5, 0x50, 0x01, 0xF5, 0x2F, 0x01, 0xFD, 0x4F, 0x90, 0xFD, 0x6F, 0xFD, 0x70, 0xFD, 0x50, 0xFD, 0x51, 0xF5, 0x32, 0xE4, 0xB2, 0xC3, 0x70, 0x92, 0x0D, 0x92, 0x0E, 0xB2, 0xF2, 0xCB, 0x95, 0xDC, 0x17, 0xE4, 0x58, 0xE4, 0x78, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x8C, 0xDC, 0x36, 0xE4, 0x36, 0xE4, 0x56, 0xE4, + 0x35, 0xE4, 0x34, 0xE4, 0x73, 0xF5, 0x14, 0xFD, 0x73, 0xF5, 0x51, 0xF5, 0x30, 0xFD, 0x50, 0xF5, 0x50, 0xFD, 0x50, 0x03, 0xFD, 0x4F, 0x90, 0xFD, 0x2F, 0xFD, 0x4F, 0xFD, 0x2F, 0xFD, 0x4F, 0xF5, 0x2F, 0xFD, 0x50, 0xF5, 0x50, 0xFD, 0x50, 0xFD, 0x51, 0xFD, 0x53, 0xEC, 0xD3, 0xB3, 0x2F, 0x92, 0x2D, 0x9A, 0x4F, 0xB3, 0x33, 0xCB, 0xB6, 0xDC, 0x37, 0x01, 0xE4, 0x58, 0x80, 0xE4, 0x38, 0x05, 0xE4, 0x37, 0x89, 0xE4, 0x36, 0xE4, 0x56, 0xE4, 0x35, 0xE4, 0x54, 0xEC, 0xD3, 0xF5, 0x33, 0xF5, 0x32, 0xF5, 0x31, 0xF5, 0x30, 0xFD, 0x30, 0x01, 0xFD, 0x2F, 0x81, 0xF5, 0x2F, 0xFD, 0x2F, 0x07, 0xFD, 0x4F, 0x01, 0xFD, 0x50, 0x89, 0xFD, 0x51, 0xFD, 0x53, 0xE4, 0xB2, 0xBB, 0x6F, 0x9A, 0x4D, 0x9A, 0x4F, 0xBB, 0x13, 0xCB, 0xB5, 0xDC, 0x37, 0xDC, 0x58, 0x03, 0xE4, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x36, 0x01, 0xE4, 0x57, 0x01, 0xE4, 0x77, 0x80, 0xD3, 0xF6, 0x02, 0x9A, 0x30, 0x80, 0xC3, 0x75, 0x03, 0xE4, 0x58, 0x05, 0xDC, 0x37, 0x80, 0xE4, 0x36, 0x01, 0xE4, 0x37, 0x87, 0xE4, 0x36, 0xDC, 0x15, 0xE4, 0x14, 0xE4, 0x54, 0xF4, 0xB4, 0xF4, 0xD3, 0xFD, 0x13, 0xFD, 0x32, 0x01, 0xFD, 0x31, 0x01, 0xFD, 0x51, 0x80, 0xFD, 0x50, 0x01, 0xFD, 0x30, 0x81, 0xFD, 0x50, 0xFD, 0x30, 0x03, 0xFD, 0x50, 0x01, 0xF5, 0x51, 0x86, 0xF5, 0x52, 0xF5, 0x93, 0xFD, 0xB6, 0x81, 0xCB, 0x89, 0xEE, 0x91, 0xEE, 0xB2, 0xF3, 0x01, 0xDC, 0x58, 0x82, 0xE4, 0x58, 0xDC, 0x38, 0xE4, 0x38, 0x05, 0xE4, 0x37, 0x01, 0xE4, 0x36, 0x83, 0xE4, 0x35, 0xE4, 0x54, 0xF5, 0x16, 0xFD, + 0x55, 0x01, 0xF5, 0x54, 0x89, 0xF5, 0x53, 0xF5, 0x74, 0xF5, 0x54, 0xF5, 0x55, 0xD4, 0x12, 0x92, 0x0D, 0x92, 0x0F, 0x9A, 0x70, 0xBB, 0x34, 0xDC, 0x37, 0x01, 0xE4, 0x58, 0x01, 0xE4, 0x57, 0x02, 0xE4, 0x37, 0x80, 0xE4, 0x56, 0x02, 0xE4, 0x36, 0x86, 0xE4, 0x35, 0xE4, 0x54, 0xE4, 0x73, 0xF5, 0x34, 0xF5, 0x53, 0xF5, 0x52, 0xF5, 0x31, 0x01, 0xF5, 0x30, 0x83, 0xFD, 0x50, 0xFD, 0x30, 0xFD, 0x50, 0xFD, 0x2F, 0x0B, 0xFD, 0x4F, 0x80, 0xF5, 0x4F, 0x01, 0xFD, 0x4F, 0x83, 0xF5, 0x4F, 0xF5, 0x2E, 0xF5, 0x4F, 0xFD, 0x4F, 0x02, 0xF5, 0x4F, 0x01, 0xF5, 0x50, 0x87, 0xF5, 0x52, 0xED, 0x13, 0xBB, 0x6F, 0x89, 0xEC, 0x92, 0x0E, 0xAA, 0xD2, 0xCB, 0xB6, 0xD4, 0x17, 0x01, 0xE4, 0x58, 0x83, 0xDC, 0x38, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x36, 0x02, 0xE4, 0x56, 0x86, 0xE4, 0x35, 0xE4, 0x54, 0xEC, 0xD4, 0xF5, 0x34, 0xF5, 0x53, 0xFD, 0x73, 0xFD, 0x93, 0x02, 0xF5, 0x73, 0x89, 0xF5, 0x75, 0xEC, 0xF5, 0xB3, 0x0F, 0x9A, 0x4E, 0xA2, 0x50, 0xBB, 0x13, 0xCB, 0x95, 0xDC, 0x17, 0xE4, 0x58, 0xE4, 0x57, 0x03, 0xE4, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xE4, 0x36, 0x87, 0xDC, 0x36, 0xDC, 0x35, 0xE4, 0x55, 0xE4, 0x54, 0xF4, 0xF4, 0xF5, 0x14, 0xF5, 0x33, 0xFD, 0x53, 0x01, 0xFD, 0x73, 0x88, 0xFD, 0x74, 0xFD, 0x75, 0xF5, 0x36, 0xB3, 0x30, 0x89, 0xED, 0x92, 0x0F, 0xA2, 0x71, 0xCB, 0x95, 0xDC, 0x38, 0x01, 0xE4, 0x58, 0x80, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x81, 0xE4, 0x57, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x84, 0xE4, 0x55, 0xE4, + 0x54, 0xE4, 0x93, 0xF4, 0xF4, 0xF5, 0x53, 0x01, 0xF5, 0x51, 0x07, 0xFD, 0x50, 0x01, 0xF5, 0x50, 0x89, 0xF5, 0x51, 0xF5, 0x52, 0xFD, 0x74, 0xCB, 0xF1, 0x9A, 0x6E, 0x92, 0x0D, 0x9A, 0x2F, 0xCB, 0x95, 0xDC, 0x17, 0xE4, 0x58, 0x01, 0xDC, 0x38, 0x80, 0xDC, 0x37, 0x02, 0xE4, 0x37, 0x80, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x84, 0xE4, 0x36, 0xE4, 0x35, 0xDC, 0x34, 0xDC, 0x32, 0xFD, 0x54, 0x01, 0xFD, 0x73, 0x03, 0xFD, 0x72, 0x02, 0xF5, 0x71, 0x80, 0xF5, 0x72, 0x02, 0xFD, 0x72, 0x01, 0xFD, 0x73, 0x8D, 0xFD, 0x75, 0xFD, 0x37, 0xA1, 0xEF, 0xA1, 0xD2, 0xAA, 0x14, 0xAA, 0x36, 0xA2, 0x78, 0x8A, 0x5A, 0x41, 0x18, 0x29, 0x1A, 0x21, 0x5C, 0x19, 0x9D, 0x11, 0x7D, 0x09, 0x9E, 0x01, 0x01, 0x9E, 0x0B, 0x01, 0x9F, 0x02, 0x01, 0x9E, 0x01, 0x01, 0x9D, 0x9F, 0x01, 0xBB, 0x02, 0x3A, 0x23, 0xDC, 0x5E, 0x7F, 0x4E, 0xBD, 0x2E, 0x77, 0x1E, 0x94, 0x1E, 0xD3, 0x16, 0xD3, 0x27, 0x35, 0x2F, 0x37, 0x46, 0xD8, 0x66, 0x7A, 0x85, 0x9A, 0x5B, 0x13, 0x7A, 0xF5, 0x82, 0x75, 0x82, 0x35, 0x82, 0x15, 0x71, 0xB4, 0x61, 0x73, 0x59, 0x73, 0x59, 0x93, 0x51, 0x73, 0x51, 0x93, 0x51, 0xB3, 0x49, 0xB3, 0x49, 0x72, 0x41, 0x92, 0x41, 0x72, 0x41, 0x92, 0x41, 0x72, 0x01, 0x39, 0x71, 0x81, 0x39, 0x51, 0x39, 0x71, 0x03, 0x39, 0x50, 0x82, 0x31, 0x50, 0x31, 0x51, 0x31, 0x30, 0x03, 0x29, 0x30, 0x80, 0x29, 0x50, 0x04, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, + 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x88, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x12, 0x19, 0x11, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x88, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x12, 0x21, 0xB5, 0x21, 0xF7, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x10, 0x84, 0x21, 0x31, 0x19, 0x52, 0x19, 0x53, 0x11, 0x74, 0x19, 0xB6, 0x01, 0x19, 0xF7, 0x82, 0x19, 0xD7, 0x11, 0xB6, 0x19, 0xD6, 0x01, 0x19, 0xF7, 0x85, 0x21, 0xF7, 0x21, 0xD6, 0x21, 0xB5, 0x19, 0x53, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x31, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x07, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x85, 0x21, 0x31, 0x18, 0xF1, 0x11, 0x12, 0x11, 0x33, 0x11, 0x53, 0x19, 0xB6, 0x01, 0x21, 0xF7, 0x83, 0x19, 0xD6, 0x19, 0x54, 0x11, 0x12, 0x19, 0x12, 0x01, 0x19, + 0x11, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x07, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x11, 0x11, 0x11, 0x11, 0x53, 0x19, 0xB6, 0x11, 0xB6, 0x11, 0xD8, 0x09, 0xD9, 0x01, 0xD9, 0x03, 0x01, 0xB9, 0x86, 0x01, 0xD9, 0x09, 0xF9, 0x11, 0xF9, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0x95, 0x11, 0x54, 0x02, 0x11, 0x32, 0x82, 0x19, 0x32, 0x11, 0x12, 0x19, 0x31, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x01, 0x21, 0x30, 0x89, 0x21, 0x10, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0x53, 0x19, 0x94, 0x21, 0xB6, 0x21, 0xD6, 0x02, 0x21, 0xF6, 0x04, 0x29, 0xF6, 0x84, 0x21, 0xF6, 0x2A, 0x16, 0x21, 0xD6, 0x21, 0xF6, 0x29, 0xF6, 0x04, 0x21, 0xF6, 0x01, 0x2A, 0x17, 0x8E, 0x21, 0xF6, 0x2A, 0x17, 0x32, 0x38, 0x2A, 0x17, 0x2A, 0x37, 0x32, 0x57, 0x2A, 0x16, 0x29, 0xF6, 0x21, 0xD5, 0x19, 0x94, 0x21, 0xB5, 0x21, 0xB4, 0x19, 0x94, 0x11, 0x32, 0x10, 0xF1, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, + 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x10, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x32, 0x82, 0x11, 0x33, 0x19, 0x94, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x87, 0x19, 0xB5, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, 0x19, 0x52, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x02, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x0F, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x84, 0x28, 0xEF, 0x28, 0xCE, 0x38, 0x4C, 0xAA, 0xB4, 0xB2, 0x52, 0x01, 0xB1, 0xF1, 0x86, 0xB1, 0xD0, 0xA9, 0xCD, 0xFD, 0x35, 0xFD, 0x73, 0xFD, 0xB2, + 0xFD, 0x91, 0xF5, 0x30, 0x02, 0xFD, 0x4F, 0x81, 0xFD, 0x6F, 0xFD, 0x8F, 0x01, 0xFD, 0x70, 0x88, 0xFD, 0x51, 0xFD, 0x52, 0xEC, 0xF3, 0xC3, 0xB0, 0x92, 0x0D, 0x92, 0x0E, 0xB2, 0xF2, 0xC3, 0x95, 0xD4, 0x17, 0x01, 0xE4, 0x78, 0x81, 0xE4, 0x57, 0xDC, 0x57, 0x02, 0xE4, 0x57, 0x81, 0xDC, 0x37, 0xE4, 0x37, 0x01, 0xE4, 0x56, 0x87, 0xE4, 0x35, 0xDC, 0x14, 0xE4, 0x73, 0xFD, 0x34, 0xFD, 0x73, 0xFD, 0x71, 0xF5, 0x50, 0xFD, 0x50, 0x05, 0xFD, 0x70, 0x01, 0xFD, 0x4F, 0x04, 0xFD, 0x70, 0x01, 0xFD, 0x71, 0x89, 0xFD, 0x93, 0xEC, 0xF3, 0xB3, 0x2F, 0x92, 0x4D, 0x9A, 0x6F, 0xB3, 0x33, 0xCB, 0xB5, 0xDC, 0x37, 0xE4, 0x78, 0xE4, 0x58, 0x06, 0xE4, 0x37, 0x89, 0xE4, 0x36, 0xE4, 0x56, 0xE4, 0x35, 0xE4, 0x54, 0xEC, 0xD3, 0xFD, 0x53, 0xFD, 0x72, 0xFD, 0x51, 0xFD, 0x50, 0xFD, 0x70, 0x01, 0xFD, 0x50, 0x04, 0xFD, 0x4F, 0x80, 0xFD, 0x6F, 0x03, 0xFD, 0x4F, 0x8A, 0xFD, 0x50, 0xFD, 0x70, 0xFD, 0x71, 0xFD, 0x73, 0xEC, 0xD3, 0xC3, 0x70, 0x9A, 0x4D, 0x9A, 0x4F, 0xBB, 0x13, 0xCB, 0xB5, 0xDC, 0x37, 0x01, 0xE4, 0x58, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x83, 0xE4, 0x77, 0xE4, 0x97, 0xE4, 0x78, 0xA2, 0x90, 0x01, 0x92, 0x0F, 0x85, 0xB2, 0xD2, 0xDC, 0x17, 0xE4, 0x58, 0xE4, 0x78, 0xE4, 0x58, 0xE4, 0x57, 0x03, 0xDC, 0x37, 0x80, 0xE4, 0x37, 0x02, 0xE4, 0x57, 0x87, 0xE4, 0x36, 0xDC, 0x16, 0xE4, 0x15, 0xE4, 0x35, 0xEC, 0x74, 0xEC, 0x93, 0xF4, 0xD3, 0xF4, 0xF2, 0x01, 0xFD, 0x32, 0x80, 0xFD, 0x52, 0x0B, 0xFD, 0x51, + 0x86, 0xFD, 0x72, 0xFD, 0x93, 0xFD, 0xD7, 0x89, 0xCB, 0x92, 0x0F, 0x91, 0xEF, 0xB2, 0xF3, 0x02, 0xE4, 0x58, 0x80, 0xDC, 0x38, 0x01, 0xE4, 0x38, 0x01, 0xE4, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x01, 0xE4, 0x36, 0x86, 0xE4, 0x55, 0xE4, 0x54, 0xF5, 0x16, 0xFD, 0x55, 0xFD, 0x54, 0xF5, 0x53, 0xFD, 0x53, 0x01, 0xFD, 0x54, 0x88, 0xFD, 0x55, 0xD4, 0x33, 0x92, 0x0D, 0x92, 0x0E, 0x9A, 0x50, 0xBB, 0x33, 0xDC, 0x17, 0xE4, 0x57, 0xE4, 0x58, 0x01, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x80, 0xDC, 0x36, 0x02, 0xE4, 0x36, 0x89, 0xE4, 0x56, 0xE4, 0x35, 0xE4, 0x54, 0xE4, 0x93, 0xFD, 0x34, 0xFD, 0x73, 0xF5, 0x52, 0xF5, 0x51, 0xFD, 0x51, 0xFD, 0x70, 0x03, 0xFD, 0x50, 0x05, 0xFD, 0x4F, 0x80, 0xFD, 0x6F, 0x0C, 0xFD, 0x4F, 0x80, 0xFD, 0x6F, 0x01, 0xFD, 0x70, 0x8D, 0xFD, 0x71, 0xFD, 0x72, 0xF5, 0x53, 0xC3, 0x8F, 0x89, 0xCB, 0x89, 0xEE, 0xA2, 0xB1, 0xC3, 0x75, 0xD3, 0xF7, 0xE4, 0x58, 0xE4, 0x78, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x81, 0xDC, 0x37, 0xDC, 0x36, 0x01, 0xE4, 0x57, 0x87, 0xE4, 0x56, 0xE4, 0x35, 0xE4, 0x54, 0xEC, 0x94, 0xF5, 0x34, 0xF5, 0x53, 0xFD, 0x73, 0xFD, 0x93, 0x01, 0xF5, 0x73, 0x8A, 0xFD, 0x74, 0xFD, 0x75, 0xEC, 0xF5, 0xB3, 0x10, 0x9A, 0x4F, 0xA2, 0x50, 0xB2, 0xF2, 0xCB, 0x95, 0xDC, 0x17, 0xE4, 0x58, 0xE4, 0x57, 0x02, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x03, 0xE4, 0x36, 0x83, 0xE4, 0x55, 0xE4, 0x54, 0xF4, 0xF5, 0xFD, 0x34, 0x04, 0xFD, 0x74, 0x87, 0xFD, 0x55, 0xF4, 0xF5, 0xAA, 0xCF, 0x92, 0x0D, 0x92, 0x0F, 0xA2, + 0x91, 0xCB, 0xB6, 0xDC, 0x58, 0x01, 0xE4, 0x58, 0x80, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x81, 0xE4, 0x57, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x85, 0xE4, 0x55, 0xE4, 0x54, 0xE4, 0x73, 0xF4, 0xF3, 0xFD, 0x53, 0xFD, 0x52, 0x01, 0xFD, 0x51, 0x80, 0xFD, 0x71, 0x05, 0xFD, 0x70, 0x80, 0xF5, 0x70, 0x01, 0xFD, 0x71, 0x8A, 0xFD, 0x72, 0xFD, 0x94, 0xD4, 0x12, 0xA2, 0x8E, 0x92, 0x0D, 0x9A, 0x4F, 0xCB, 0x95, 0xDC, 0x17, 0xE4, 0x58, 0xDC, 0x38, 0xDC, 0x37, 0x03, 0xE4, 0x37, 0x02, 0xE4, 0x57, 0x84, 0xDC, 0x36, 0xDC, 0x35, 0xDC, 0x34, 0xDC, 0x32, 0xFD, 0x54, 0x01, 0xFD, 0x73, 0x81, 0xFD, 0x72, 0xFD, 0x52, 0x02, 0xFD, 0x72, 0x03, 0xFD, 0x92, 0x02, 0xFD, 0x93, 0x8D, 0xFD, 0x94, 0xFD, 0x95, 0xFD, 0x57, 0xA1, 0xEF, 0xA1, 0xF2, 0xAA, 0x14, 0xA2, 0x16, 0xA2, 0x78, 0x8A, 0x5A, 0x41, 0x18, 0x29, 0x3A, 0x21, 0x7C, 0x19, 0x9D, 0x11, 0x9D, 0x01, 0x09, 0x9E, 0x05, 0x01, 0x9F, 0x04, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x80, 0x01, 0xBF, 0x01, 0x01, 0x9E, 0x88, 0x01, 0x9D, 0x01, 0xBD, 0x01, 0xFC, 0x02, 0x5A, 0x1B, 0xFC, 0x56, 0x9F, 0x46, 0xDD, 0x26, 0x96, 0x16, 0xB3, 0x01, 0x17, 0x13, 0x94, 0x27, 0x55, 0x2E, 0xF6, 0x46, 0xD8, 0x6E, 0x9B, 0x7D, 0x39, 0x62, 0xD3, 0x7A, 0xD5, 0x82, 0x95, 0x82, 0x55, 0x79, 0xF5, 0x71, 0xB4, 0x61, 0x73, 0x59, 0x73, 0x59, 0x94, 0x51, 0x73, 0x51, 0x93, 0x49, 0xB3, 0x49, 0x72, 0x49, 0x92, 0x41, 0x92, 0x41, 0x71, 0x01, 0x41, 0x92, 0x01, 0x39, 0x71, 0x01, 0x39, 0x51, 0x82, 0x31, 0x50, 0x39, 0x50, 0x31, 0x50, 0x02, 0x31, + 0x30, 0x84, 0x31, 0x50, 0x31, 0x51, 0x29, 0x30, 0x29, 0x50, 0x29, 0x30, 0x05, 0x29, 0x2F, 0x80, 0x29, 0x30, 0x05, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x0A, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x51, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x01, 0x19, 0xD6, 0x84, 0x19, 0x95, 0x11, 0x11, 0x19, 0x11, 0x21, 0x30, 0x21, 0x10, 0x05, 0x21, 0x2F, 0x81, 0x19, 0x30, 0x19, 0x31, 0x01, 0x11, 0x32, 0x87, 0x21, 0xD6, 0x21, 0xF7, 0x19, 0xB6, 0x19, 0x94, 0x11, 0x32, 0x11, 0x11, 0x19, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x19, 0x31, 0x21, 0x94, 0x19, 0xB5, 0x11, 0x95, 0x11, 0xD7, 0x01, 0x19, 0xF7, 0x83, 0x11, 0xB6, 0x11, 0x96, 0x11, 0xB6, 0x11, 0xD6, 0x01, 0x19, 0xF7, 0x85, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x02, 0x21, 0x31, 0x07, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x04, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x10, 0x02, 0x29, 0x30, 0x80, 0x21, 0x30, 0x01, 0x29, 0x30, 0x94, 0x29, 0x10, + 0x21, 0x10, 0x21, 0x30, 0x21, 0x31, 0x21, 0x11, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB5, 0x19, 0xF6, 0x19, 0xD6, 0x21, 0xF6, 0x19, 0x74, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x21, 0x51, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x10, 0x19, 0x11, 0x11, 0x53, 0x19, 0xB5, 0x11, 0xB6, 0x11, 0xB7, 0x09, 0xD8, 0x09, 0xD9, 0x01, 0x01, 0xB9, 0x80, 0x01, 0xD9, 0x01, 0x09, 0xD9, 0x86, 0x09, 0xD8, 0x19, 0xF8, 0x11, 0xD7, 0x09, 0x34, 0x09, 0x33, 0x11, 0x52, 0x19, 0x52, 0x01, 0x19, 0x31, 0x82, 0x19, 0x51, 0x19, 0x31, 0x19, 0x51, 0x06, 0x19, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x87, 0x19, 0x11, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x33, 0x11, 0x53, 0x11, 0x33, 0x02, 0x19, 0x54, 0x04, 0x19, 0x74, 0x80, 0x19, 0x94, 0x02, 0x19, 0x74, 0x80, 0x19, 0x94, 0x01, 0x19, 0x74, 0x82, 0x11, 0x74, 0x19, 0x74, 0x11, 0x74, 0x01, 0x19, 0x74, 0x83, 0x11, 0x74, 0x19, 0x75, 0x19, 0x95, 0x19, 0x74, 0x01, 0x11, 0x53, 0x86, 0x11, 0x33, 0x11, 0x32, 0x19, 0x53, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x01, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, + 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x0A, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x89, 0x29, 0x2F, 0x21, 0x0E, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x83, 0x19, 0x32, 0x19, 0x33, 0x19, 0x74, 0x21, 0xF6, 0x01, 0x21, 0xF7, 0x83, 0x19, 0x95, 0x11, 0x53, 0x11, 0x12, 0x19, 0x11, 0x01, 0x19, 0x31, 0x83, 0x19, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x10, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, + 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x0D, 0x29, 0x0F, 0x8B, 0x30, 0xCE, 0x38, 0x4C, 0xA2, 0x94, 0xB2, 0x52, 0xB2, 0x11, 0xB1, 0xF1, 0xB1, 0xD0, 0xA1, 0xCC, 0xFD, 0x35, 0xFD, 0x93, 0xFD, 0xB2, 0xFD, 0x91, 0x01, 0xFD, 0x50, 0x01, 0xFD, 0x4F, 0x01, 0xFD, 0x8F, 0x8C, 0xFD, 0x90, 0xFD, 0x91, 0xFD, 0x92, 0xFD, 0x73, 0xF5, 0x13, 0xCB, 0xD1, 0x91, 0xEC, 0x92, 0x0E, 0xAA, 0xD2, 0xC3, 0x74, 0xD3, 0xF6, 0xE4, 0x58, 0xE4, 0x78, 0x01, 0xDC, 0x37, 0x82, 0xDC, 0x57, 0xDC, 0x36, 0xE4, 0x57, 0x02, 0xDC, 0x36, 0x86, 0xE4, 0x56, 0xE4, 0x35, 0xE4, 0x34, 0xE4, 0x73, 0xFD, 0x34, 0xFD, 0x73, 0xFD, 0x91, 0x02, 0xFD, 0x70, 0x80, 0xFD, 0x4F, 0x06, 0xFD, 0x70, 0x80, 0xFD, 0x6F, 0x02, 0xFD, 0x70, 0x89, 0xFD, 0x91, 0xFD, 0x92, 0xFD, 0x93, 0xEC, 0xF3, 0xBB, 0x4F, 0x92, 0x4D, 0x9A, 0x6F, 0xB3, 0x13, 0xC3, 0xB5, 0xDC, 0x37, 0x01, 0xE4, 0x58, 0x01, 0xE4, 0x37, 0x01, 0xDC, 0x37, 0x02, 0xE4, 0x37, 0x86, 0xE4, 0x36, 0xE4, 0x56, 0xE4, 0x35, 0xE4, 0x54, 0xEC, 0xD3, 0xFD, 0x53, 0xFD, 0x72, 0x01, 0xFD, 0x71, 0x02, 0xFD, 0x70, 0x01, 0xFD, 0x6F, 0x80, 0xFD, 0x4F, 0x02, 0xFD, 0x6F, 0x80, 0xFD, 0x4F, 0x02, 0xFD, 0x6F, 0x01, 0xFD, 0x70, 0x88, 0xFD, 0x91, 0xFD, 0x93, 0xEC, 0xD3, 0xC3, 0x6F, 0x9A, 0x4E, 0x9A, 0x4F, 0xBB, 0x33, 0xCB, 0xB5, 0xDC, 0x37, 0x01, 0xE4, 0x58, 0x83, 0xDC, 0x57, 0xE4, 0x57, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x02, + 0xDC, 0x56, 0x83, 0xE4, 0x76, 0xE4, 0x97, 0xEC, 0xD8, 0xBB, 0x32, 0x01, 0x92, 0x0F, 0x81, 0xA2, 0x71, 0xCB, 0xB6, 0x01, 0xE4, 0x58, 0x83, 0xE4, 0x78, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0x02, 0xDC, 0x37, 0x03, 0xE4, 0x57, 0x01, 0xE4, 0x36, 0x87, 0xE4, 0x35, 0xE4, 0x55, 0xEC, 0x95, 0xF4, 0xD5, 0xF4, 0xF4, 0xFD, 0x13, 0xFD, 0x33, 0xFD, 0x53, 0x02, 0xFD, 0x52, 0x03, 0xFD, 0x51, 0x80, 0xFD, 0x71, 0x03, 0xFD, 0x72, 0x87, 0xFD, 0x73, 0xFD, 0x94, 0xFD, 0xB7, 0x89, 0xEC, 0x92, 0x0E, 0x91, 0xEF, 0xB2, 0xF3, 0xE4, 0x79, 0x01, 0xE4, 0x58, 0x80, 0xDC, 0x38, 0x01, 0xE4, 0x38, 0x84, 0xE4, 0x58, 0xE4, 0x37, 0xE4, 0x57, 0xE4, 0x37, 0xE4, 0x57, 0x01, 0xE4, 0x36, 0x83, 0xE4, 0x35, 0xE4, 0x54, 0xF5, 0x16, 0xFD, 0x55, 0x03, 0xFD, 0x54, 0x88, 0xFD, 0x75, 0xFD, 0x76, 0xDC, 0x53, 0x92, 0x0D, 0x92, 0x0F, 0x9A, 0x50, 0xBB, 0x33, 0xD4, 0x16, 0xDC, 0x37, 0x03, 0xE4, 0x57, 0x81, 0xDC, 0x37, 0xE4, 0x37, 0x01, 0xDC, 0x36, 0x89, 0xE4, 0x36, 0xE4, 0x56, 0xE4, 0x35, 0xE4, 0x54, 0xE4, 0x93, 0xF5, 0x34, 0xFD, 0x73, 0xF5, 0x72, 0xFD, 0x51, 0xFD, 0x71, 0x03, 0xFD, 0x70, 0x0D, 0xFD, 0x6F, 0x82, 0xFD, 0x4F, 0xFD, 0x6F, 0xFD, 0x4F, 0x04, 0xFD, 0x6F, 0x01, 0xFD, 0x90, 0x8C, 0xFD, 0x91, 0xFD, 0x92, 0xFD, 0x73, 0xC3, 0xD0, 0x81, 0xCB, 0x89, 0xCD, 0x9A, 0x70, 0xBB, 0x34, 0xD3, 0xF7, 0xE4, 0x58, 0xE4, 0x78, 0xDC, 0x38, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x89, 0xDC, 0x37, 0xDC, 0x57, 0xE4, 0x56, 0xDC, 0x36, 0xDC, 0x35, 0xE4, 0x55, 0xEC, 0x94, 0xF5, + 0x14, 0xFD, 0x54, 0xFD, 0x74, 0x02, 0xFD, 0x73, 0x89, 0xFD, 0x74, 0xFD, 0x76, 0xF5, 0x16, 0xB3, 0x10, 0x9A, 0x4F, 0x9A, 0x50, 0xB2, 0xF2, 0xCB, 0x95, 0xDC, 0x37, 0xE4, 0x58, 0x02, 0xE4, 0x57, 0x83, 0xE4, 0x37, 0xE4, 0x57, 0xE4, 0x36, 0xE4, 0x57, 0x01, 0xE4, 0x36, 0x01, 0xE4, 0x56, 0x82, 0xE4, 0x75, 0xF4, 0xF5, 0xFD, 0x35, 0x01, 0xFD, 0x74, 0x01, 0xFD, 0x94, 0x8C, 0xFD, 0x95, 0xFD, 0x75, 0xF4, 0xF6, 0xAA, 0xAE, 0x92, 0x0E, 0x92, 0x0F, 0xA2, 0xB1, 0xCB, 0xB6, 0xDC, 0x37, 0xE4, 0x58, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x88, 0xDC, 0x37, 0xDC, 0x56, 0xE4, 0x56, 0xE4, 0x35, 0xE4, 0x54, 0xE4, 0x73, 0xF5, 0x14, 0xFD, 0x73, 0xFD, 0x72, 0x02, 0xFD, 0x71, 0x01, 0xFD, 0x70, 0x01, 0xFD, 0x50, 0x01, 0xFD, 0x70, 0x80, 0xFD, 0x90, 0x01, 0xFD, 0x91, 0x89, 0xFD, 0xB2, 0xFD, 0xB4, 0xD4, 0x12, 0xA2, 0x8E, 0x92, 0x0D, 0x9A, 0x4F, 0xCB, 0x95, 0xDC, 0x17, 0xE4, 0x58, 0xDC, 0x38, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x37, 0x03, 0xE4, 0x57, 0x87, 0xE4, 0x56, 0xDC, 0x36, 0xDC, 0x35, 0xE4, 0x34, 0xDC, 0x33, 0xF5, 0x34, 0xFD, 0x53, 0xF5, 0x52, 0x03, 0xFD, 0x72, 0x04, 0xFD, 0x92, 0x80, 0xFD, 0x93, 0x01, 0xFD, 0xB3, 0x8F, 0xFD, 0xB4, 0xFD, 0xB5, 0xFD, 0x77, 0xA2, 0x10, 0xA1, 0xD2, 0xAA, 0x14, 0xAA, 0x36, 0xA2, 0x78, 0x8A, 0x5A, 0x41, 0x38, 0x29, 0x1A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x7D, 0x09, 0x9E, 0x01, 0x9E, 0x05, 0x01, 0x9F, 0x02, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x02, 0x01, 0xBF, 0x01, 0x01, 0x9E, 0x94, 0x01, 0x9D, + 0x01, 0xBD, 0x01, 0xFB, 0x02, 0x7A, 0x1C, 0x3C, 0x56, 0x9F, 0x46, 0xFD, 0x1E, 0xB6, 0x16, 0xF4, 0x0F, 0x13, 0x17, 0x33, 0x1F, 0x55, 0x2F, 0x17, 0x46, 0xD8, 0x76, 0xBB, 0x74, 0xB8, 0x62, 0xB3, 0x7A, 0xB5, 0x82, 0x75, 0x82, 0x35, 0x79, 0xF5, 0x01, 0x69, 0x94, 0x84, 0x61, 0x94, 0x59, 0xB4, 0x51, 0x93, 0x51, 0xB3, 0x49, 0x93, 0x01, 0x41, 0x72, 0x04, 0x41, 0x92, 0x01, 0x39, 0x51, 0x82, 0x31, 0x30, 0x31, 0x50, 0x31, 0x51, 0x02, 0x31, 0x30, 0x02, 0x31, 0x50, 0x01, 0x29, 0x30, 0x82, 0x29, 0x50, 0x29, 0x2F, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x09, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x0F, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x83, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0xB5, 0x01, 0x19, 0xD6, 0x82, 0x11, 0x94, 0x11, 0x11, 0x19, 0x31, 0x01, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x89, 0x19, 0x31, 0x19, 0x32, 0x09, 0x12, 0x19, 0xB5, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x94, 0x11, 0x32, 0x11, 0x11, 0x19, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x52, 0x11, 0x73, 0x11, 0x95, 0x11, 0xB6, + 0x19, 0xF7, 0x11, 0xD7, 0x11, 0xB6, 0x09, 0x76, 0x02, 0x09, 0x75, 0x80, 0x11, 0xB6, 0x01, 0x19, 0xF7, 0x86, 0x11, 0xB6, 0x11, 0x95, 0x11, 0x33, 0x11, 0x12, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x03, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x10, 0x81, 0x21, 0x31, 0x21, 0x30, 0x09, 0x21, 0x31, 0x02, 0x21, 0x30, 0x04, 0x21, 0x10, 0x8D, 0x18, 0xF1, 0x10, 0xF1, 0x11, 0x12, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x21, 0xF6, 0x22, 0x17, 0x21, 0xF6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x11, 0x19, 0x11, 0x19, 0x31, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x90, 0x19, 0x11, 0x11, 0x32, 0x19, 0x74, 0x19, 0x95, 0x19, 0xD7, 0x11, 0xD7, 0x09, 0xF8, 0x09, 0xD8, 0x09, 0xF9, 0x09, 0xD9, 0x09, 0xB8, 0x11, 0xD8, 0x11, 0xD7, 0x11, 0x96, 0x11, 0x54, 0x11, 0x33, 0x11, 0x52, 0x02, 0x19, 0x31, 0x81, 0x19, 0x10, 0x19, 0x31, 0x02, 0x19, 0x30, 0x81, 0x19, 0x10, 0x21, 0x30, 0x01, 0x19, 0x10, 0x01, 0x21, 0x31, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x12, 0x04, 0x11, 0x12, 0x81, 0x19, 0x32, 0x11, 0x11, 0x05, 0x11, 0x12, 0x80, 0x11, 0x32, + 0x01, 0x11, 0x33, 0x01, 0x11, 0x32, 0x86, 0x11, 0x33, 0x11, 0x53, 0x11, 0x33, 0x11, 0x32, 0x11, 0x33, 0x11, 0x32, 0x11, 0x12, 0x02, 0x11, 0x11, 0x80, 0x19, 0x52, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x30, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x28, 0xEF, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0C, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x84, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x8C, 0x21, 0x10, 0x19, 0x11, 0x19, 0x31, 0x19, 0x52, 0x11, 0x33, 0x11, 0x54, 0x21, 0xF6, 0x22, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x32, + 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x20, 0xEF, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x8C, 0x28, 0xEF, 0x30, 0xCE, 0x38, 0x4C, 0xA2, 0x94, 0xB2, 0x52, 0xB2, 0x12, 0xBA, 0x11, 0xB1, 0xF0, 0xA1, 0xCD, 0xFD, 0x55, 0xFD, 0xB4, 0xFD, 0xD3, 0xFD, 0xB1, 0x01, 0xFD, 0x70, 0x01, 0xFD, 0x6F, 0x80, 0xFD, 0x8F, 0x01, 0xFD, 0xB0, 0x8B, 0xFD, 0xB1, 0xFD, 0xB2, 0xFD, 0xB4, 0xFD, 0x54, 0xD4, 0x11, 0x89, 0xEC, 0x92, 0x0E, 0xAA, 0xB1, 0xBB, 0x54, 0xCB, 0xF6, 0xDC, 0x58, 0xE4, 0x78, 0x02, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x88, 0xE4, 0x56, 0xE4, 0x36, 0xE4, 0x35, 0xE4, 0x34, 0xE4, 0x73, 0xFD, 0x54, 0xFD, 0x93, 0xFD, 0x91, 0xFD, 0x71, 0x01, 0xFD, 0x70, 0x01, 0xFD, 0x6F, 0x81, 0xFD, 0x70, 0xFD, 0x6F, 0x03, 0xFD, 0x70, 0x80, 0xFD, + 0x6F, 0x01, 0xFD, 0x70, 0x80, 0xFD, 0x90, 0x01, 0xFD, 0x91, 0x87, 0xFD, 0x93, 0xEC, 0xF3, 0xB3, 0x4E, 0x92, 0x4D, 0x9A, 0x4F, 0xAA, 0xF2, 0xC3, 0x95, 0xD4, 0x37, 0x01, 0xE4, 0x58, 0x03, 0xDC, 0x37, 0x81, 0xE4, 0x57, 0xE4, 0x37, 0x02, 0xE4, 0x36, 0x84, 0xE4, 0x35, 0xE4, 0x53, 0xF4, 0xF3, 0xFD, 0x73, 0xFD, 0x72, 0x01, 0xFD, 0x71, 0x03, 0xFD, 0x70, 0x01, 0xFD, 0x6F, 0x80, 0xFD, 0x8F, 0x04, 0xFD, 0x6F, 0x8D, 0xFD, 0x8F, 0xFD, 0x70, 0xFD, 0x90, 0xFD, 0x91, 0xFD, 0x93, 0xEC, 0xD3, 0xBB, 0x70, 0x9A, 0x4D, 0x9A, 0x4F, 0xBB, 0x33, 0xCB, 0xB5, 0xDC, 0x37, 0xE4, 0x78, 0xE4, 0x58, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x03, 0xDC, 0x56, 0x88, 0xE4, 0x76, 0xEC, 0xB7, 0xF5, 0x39, 0xE4, 0x97, 0x92, 0x4F, 0x92, 0x2F, 0x9A, 0x2F, 0xBB, 0x33, 0xDC, 0x17, 0x01, 0xE4, 0x58, 0x01, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x05, 0xE4, 0x57, 0x01, 0xDC, 0x36, 0x01, 0xE4, 0x35, 0x83, 0xE4, 0x54, 0xEC, 0x94, 0xFD, 0x15, 0xFD, 0x14, 0x01, 0xFD, 0x33, 0x80, 0xFD, 0x53, 0x03, 0xFD, 0x52, 0x04, 0xFD, 0x72, 0x80, 0xFD, 0x73, 0x01, 0xFD, 0x94, 0x81, 0xFD, 0xB7, 0x89, 0xEC, 0x01, 0x91, 0xEF, 0x85, 0xB3, 0x13, 0xE4, 0x79, 0xE4, 0x78, 0xE4, 0x58, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x86, 0xE4, 0x36, 0xDC, 0x36, 0xDC, 0x35, 0xE4, 0x54, 0xFD, 0x16, 0xFD, 0x55, 0xFD, 0x75, 0x02, 0xFD, 0x74, 0x88, 0xFD, 0x75, 0xFD, 0x76, 0xDC, 0x54, 0x92, 0x0D, 0x9A, 0x2F, 0xA2, 0x50, 0xC3, 0x54, 0xDC, 0x17, 0xDC, 0x37, 0x04, + 0xE4, 0x57, 0x02, 0xDC, 0x36, 0x87, 0xE4, 0x36, 0xE4, 0x56, 0xE4, 0x35, 0xE4, 0x34, 0xE4, 0x93, 0xFD, 0x34, 0xFD, 0x73, 0xFD, 0x72, 0x01, 0xFD, 0x71, 0x81, 0xFD, 0x90, 0xFD, 0x70, 0x01, 0xFD, 0x90, 0x0B, 0xFD, 0x6F, 0x80, 0xFD, 0x8F, 0x06, 0xFD, 0x6F, 0x01, 0xFD, 0x8F, 0x8D, 0xFD, 0x90, 0xFD, 0xB0, 0xFD, 0x91, 0xFD, 0x92, 0xFD, 0x73, 0xCC, 0x10, 0x81, 0xAB, 0x89, 0xCD, 0x9A, 0x30, 0xB3, 0x13, 0xD3, 0xF7, 0xE4, 0x78, 0xE4, 0x79, 0xE4, 0x58, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x85, 0xE4, 0x36, 0xE4, 0x55, 0xEC, 0x75, 0xF4, 0xD4, 0xF5, 0x14, 0xFD, 0x54, 0x01, 0xFD, 0x74, 0x8A, 0xFD, 0x94, 0xFD, 0x75, 0xFD, 0x76, 0xEC, 0xF6, 0xB3, 0x10, 0x9A, 0x4F, 0x9A, 0x30, 0xB2, 0xD2, 0xCB, 0xB5, 0xDC, 0x37, 0xE4, 0x58, 0x02, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x01, 0xE4, 0x36, 0x01, 0xE4, 0x56, 0x83, 0xE4, 0x75, 0xF4, 0xF5, 0xFD, 0x35, 0xFD, 0x75, 0x02, 0xFD, 0x74, 0x88, 0xFD, 0x75, 0xFD, 0x76, 0xF4, 0xF6, 0xAA, 0xAF, 0x92, 0x0E, 0x92, 0x0F, 0xAA, 0xB1, 0xD3, 0xF6, 0xDC, 0x37, 0x02, 0xE4, 0x57, 0x02, 0xE4, 0x37, 0x82, 0xE4, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xE4, 0x56, 0x85, 0xE4, 0x35, 0xE4, 0x54, 0xE4, 0x73, 0xF5, 0x33, 0xFD, 0x73, 0xFD, 0x72, 0x02, 0xFD, 0x71, 0x03, 0xFD, 0x70, 0x01, 0xFD, 0x90, 0x02, 0xFD, 0x91, 0x8C, 0xFD, 0xB2, 0xFD, 0xB5, 0xD4, 0x31, 0x9A, 0x6D, 0x92, 0x0D, 0x9A, 0x2F, 0xC3, 0x95, 0xDC, 0x17, 0xE4, 0x58, 0xDC, 0x38, 0xDC, 0x37, 0xDC, 0x57, + 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x82, 0xDC, 0x36, 0xE4, 0x57, 0xE4, 0x36, 0x01, 0xDC, 0x35, 0x82, 0xDC, 0x34, 0xDC, 0x32, 0xFD, 0x54, 0x01, 0xFD, 0x93, 0x08, 0xFD, 0x92, 0x02, 0xFD, 0xB3, 0x8F, 0xFD, 0xB4, 0xFD, 0xB5, 0xFD, 0x78, 0xA2, 0x10, 0xA1, 0xF2, 0xA1, 0xF4, 0xA2, 0x16, 0xA2, 0x58, 0x8A, 0x5A, 0x41, 0x18, 0x29, 0x1A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x7D, 0x09, 0x9E, 0x01, 0x9E, 0x05, 0x01, 0x9F, 0x06, 0x01, 0xBF, 0x80, 0x01, 0xBE, 0x01, 0x01, 0x9E, 0x88, 0x01, 0x9D, 0x01, 0xBC, 0x02, 0x1B, 0x02, 0x9A, 0x1C, 0x7D, 0x4E, 0x9F, 0x3F, 0x1D, 0x1E, 0xF7, 0x17, 0x14, 0x01, 0x0F, 0x13, 0x8F, 0x1F, 0x55, 0x2F, 0x17, 0x4E, 0xF9, 0x7E, 0xDC, 0x74, 0x77, 0x6A, 0xB4, 0x82, 0xB5, 0x82, 0x55, 0x79, 0xF5, 0x79, 0xD5, 0x69, 0x73, 0x61, 0x73, 0x59, 0x73, 0x59, 0x93, 0x51, 0xB4, 0x51, 0x93, 0x01, 0x49, 0x93, 0x01, 0x49, 0x92, 0x01, 0x39, 0x71, 0x81, 0x39, 0x72, 0x41, 0x92, 0x02, 0x39, 0x51, 0x80, 0x39, 0x71, 0x01, 0x31, 0x51, 0x81, 0x31, 0x50, 0x31, 0x30, 0x01, 0x31, 0x50, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x50, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, + 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x8A, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x19, 0x11, 0x19, 0x31, 0x11, 0x32, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xF7, 0x11, 0x94, 0x11, 0x11, 0x01, 0x19, 0x10, 0x80, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x89, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x10, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x8E, 0x19, 0x10, 0x19, 0x31, 0x11, 0x73, 0x11, 0x95, 0x11, 0xD6, 0x11, 0xD7, 0x11, 0xB7, 0x09, 0x76, 0x09, 0x75, 0x09, 0x55, 0x01, 0x34, 0x09, 0x54, 0x09, 0x75, 0x11, 0xB6, 0x11, 0xF7, 0x01, 0x11, 0xD7, 0x83, 0x11, 0x95, 0x11, 0x54, 0x09, 0x12, 0x08, 0xF1, 0x01, 0x11, 0x11, 0x1D, 0x19, 0x11, 0x80, 0x18, 0xF1, 0x01, 0x19, 0x11, 0x8B, 0x10, 0xF1, 0x19, 0x12, 0x10, 0xF2, 0x08, 0xF2, 0x09, 0x33, 0x11, 0x95, 0x22, 0x17, 0x22, 0x37, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, + 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x50, 0x21, 0x30, 0x21, 0x10, 0x01, 0x19, 0x10, 0x86, 0x11, 0x12, 0x11, 0x53, 0x19, 0x95, 0x19, 0xD6, 0x12, 0x17, 0x1A, 0x39, 0x1A, 0x19, 0x01, 0x1A, 0x18, 0x81, 0x19, 0xB7, 0x11, 0x75, 0x01, 0x11, 0x33, 0x86, 0x19, 0x32, 0x19, 0x31, 0x19, 0x10, 0x19, 0x30, 0x21, 0x30, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x02, 0x21, 0x31, 0x80, 0x19, 0x31, 0x01, 0x19, 0x11, 0x03, 0x19, 0x31, 0x06, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x02, 0x19, 0x12, 0x80, 0x19, 0x32, 0x02, 0x11, 0x32, 0x02, 0x19, 0x32, 0x80, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x51, 0x01, 0x19, 0x31, 0x82, 0x21, 0x51, 0x19, 0x10, 0x19, 0x30, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, + 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x08, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x0E, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x30, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x52, 0x8A, 0x19, 0x74, 0x21, 0xD6, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0x95, 0x19, 0x54, 0x11, 0x32, 0x19, 0x12, 0x19, 0x11, 0x19, 0x10, 0x19, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0E, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0E, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x05, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x8D, 0x28, 0xEE, 0x30, 0xCE, 0x38, + 0x4C, 0xA2, 0x94, 0xB2, 0x52, 0xB2, 0x11, 0xB1, 0xF1, 0xB1, 0xD0, 0xA1, 0xCD, 0xFD, 0x56, 0xFD, 0xD4, 0xFD, 0xD3, 0xFD, 0xB1, 0xFD, 0x90, 0x01, 0xFD, 0x6F, 0x80, 0xFD, 0x8F, 0x01, 0xFD, 0xAF, 0x01, 0xFD, 0xB0, 0x8A, 0xFD, 0xD2, 0xFD, 0xD4, 0xFD, 0x95, 0xD4, 0x12, 0x89, 0xEC, 0x91, 0xEE, 0xA2, 0xB1, 0xBB, 0x53, 0xCB, 0xF6, 0xDC, 0x57, 0xE4, 0x78, 0x02, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x02, 0xDC, 0x36, 0x86, 0xE4, 0x56, 0xE4, 0x35, 0xDC, 0x34, 0xE4, 0x73, 0xFD, 0x74, 0xFD, 0x93, 0xFD, 0x91, 0x01, 0xFD, 0x70, 0x04, 0xFD, 0x90, 0x01, 0xFD, 0x70, 0x82, 0xFD, 0x90, 0xFD, 0x70, 0xFD, 0x90, 0x02, 0xFD, 0x70, 0x8B, 0xFD, 0x90, 0xFD, 0x91, 0xFD, 0x93, 0xEC, 0xF3, 0xBB, 0x4F, 0x92, 0x4D, 0x92, 0x4F, 0xB3, 0x12, 0xC3, 0x95, 0xD4, 0x37, 0xE4, 0x78, 0xE4, 0x58, 0x03, 0xDC, 0x37, 0x02, 0xE4, 0x57, 0x01, 0xE4, 0x36, 0x85, 0xE4, 0x55, 0xE4, 0x53, 0xEC, 0xD3, 0xFD, 0x73, 0xFD, 0x72, 0xFD, 0x71, 0x02, 0xFD, 0x70, 0x82, 0xFD, 0x6F, 0xFD, 0x70, 0xFD, 0x6F, 0x06, 0xFD, 0x8F, 0x01, 0xFD, 0x90, 0x89, 0xFD, 0x91, 0xFD, 0xB1, 0xFD, 0x93, 0xEC, 0xD3, 0xC3, 0x90, 0x9A, 0x4E, 0x9A, 0x4F, 0xBB, 0x13, 0xCB, 0xB5, 0xDC, 0x37, 0x01, 0xE4, 0x58, 0x01, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x36, 0x03, 0xDC, 0x56, 0x8A, 0xDC, 0x76, 0xE4, 0xB7, 0xF5, 0x58, 0xFD, 0x79, 0xBB, 0x72, 0x92, 0x4F, 0x92, 0x2F, 0xA2, 0xB1, 0xCB, 0xD6, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x83, 0xDC, 0x37, 0xDC, 0x57, 0xE4, 0x57, 0xDC, 0x37, 0x03, 0xE4, 0x57, 0x04, 0xDC, + 0x36, 0x85, 0xDC, 0x35, 0xE4, 0x54, 0xE4, 0x94, 0xF4, 0xD4, 0xFD, 0x35, 0xFD, 0x34, 0x01, 0xFD, 0x54, 0x04, 0xFD, 0x53, 0x03, 0xFD, 0x73, 0x83, 0xFD, 0x74, 0xFD, 0x95, 0xFD, 0xB8, 0x89, 0xEC, 0x01, 0x91, 0xEF, 0x81, 0xB3, 0x13, 0xE4, 0x78, 0x01, 0xE4, 0x58, 0x80, 0xE4, 0x57, 0x03, 0xDC, 0x57, 0x80, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x85, 0xE4, 0x57, 0xDC, 0x36, 0xDC, 0x35, 0xDC, 0x55, 0xF5, 0x16, 0xFD, 0x56, 0x03, 0xFD, 0x75, 0x89, 0xFD, 0x55, 0xFD, 0x56, 0xDC, 0x54, 0x9A, 0x0D, 0x9A, 0x4F, 0xA2, 0x70, 0xC3, 0x74, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x37, 0x02, 0xE4, 0x57, 0x02, 0xDC, 0x36, 0x01, 0xE4, 0x36, 0x87, 0xE4, 0x56, 0xE4, 0x35, 0xE4, 0x33, 0xE4, 0x72, 0xFD, 0x54, 0xFD, 0x93, 0xFD, 0x92, 0xFD, 0x91, 0x01, 0xFD, 0x70, 0x81, 0xFD, 0x6F, 0xFD, 0x90, 0x01, 0xFD, 0x8F, 0x01, 0xFD, 0x6F, 0x02, 0xFD, 0x8F, 0x80, 0xFD, 0x6F, 0x0B, 0xFD, 0x8F, 0x80, 0xFD, 0x6F, 0x01, 0xFD, 0x8F, 0x02, 0xFD, 0x90, 0x87, 0xFD, 0x91, 0xFD, 0x73, 0xE4, 0x92, 0x89, 0xCB, 0x89, 0xEE, 0x9A, 0x50, 0xB2, 0xF3, 0xD3, 0xF7, 0x01, 0xE4, 0x78, 0x01, 0xE4, 0x58, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x87, 0xE4, 0x36, 0xE4, 0x35, 0xE4, 0x55, 0xF4, 0xD5, 0xF4, 0xF5, 0xFD, 0x35, 0xFD, 0x75, 0xFD, 0x74, 0x01, 0xFD, 0x95, 0x88, 0xFD, 0x96, 0xF4, 0xF6, 0xB3, 0x10, 0x9A, 0x4F, 0x9A, 0x30, 0xB2, 0xD2, 0xCB, 0x95, 0xDC, 0x37, 0xE4, 0x78, 0x03, 0xE4, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x80, 0xE4, 0x57, 0x01, 0xE4, + 0x36, 0x83, 0xE4, 0x56, 0xE4, 0x35, 0xF4, 0xD5, 0xFD, 0x36, 0x01, 0xFD, 0x55, 0x02, 0xFD, 0x75, 0x89, 0xFD, 0x76, 0xF4, 0xF6, 0xA2, 0x8E, 0x92, 0x0E, 0x92, 0x0F, 0xAA, 0xB1, 0xD4, 0x16, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0x03, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, 0x56, 0x86, 0xE4, 0x56, 0xDC, 0x55, 0xE4, 0x54, 0xE4, 0x93, 0xFD, 0x33, 0xFD, 0x93, 0xFD, 0x92, 0x01, 0xFD, 0x91, 0x80, 0xFD, 0x71, 0x01, 0xFD, 0x70, 0x04, 0xFD, 0x90, 0x01, 0xFD, 0x91, 0x88, 0xFD, 0xB2, 0xFD, 0xD5, 0xCC, 0x11, 0x9A, 0x6D, 0x92, 0x0D, 0x9A, 0x2F, 0xC3, 0x94, 0xD4, 0x17, 0xDC, 0x38, 0x03, 0xDC, 0x37, 0x84, 0xDC, 0x57, 0xDC, 0x37, 0xE4, 0x37, 0xE4, 0x57, 0xE4, 0x36, 0x01, 0xDC, 0x35, 0x82, 0xDC, 0x34, 0xDC, 0x33, 0xF5, 0x54, 0x03, 0xFD, 0xB3, 0x80, 0xFD, 0x92, 0x02, 0xFD, 0xB2, 0x80, 0xFD, 0x92, 0x01, 0xFD, 0xB2, 0x02, 0xFD, 0xB3, 0x8D, 0xFD, 0xB4, 0xFD, 0xB5, 0xFD, 0x78, 0xA2, 0x10, 0xA1, 0xF2, 0xA1, 0xF4, 0xA2, 0x16, 0xA2, 0x78, 0x8A, 0x5A, 0x41, 0x38, 0x29, 0x1A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x9E, 0x01, 0x09, 0x9E, 0x08, 0x01, 0x9F, 0x03, 0x01, 0xBF, 0x80, 0x01, 0xBE, 0x01, 0x01, 0x9E, 0x88, 0x01, 0x9D, 0x01, 0xBC, 0x02, 0x3B, 0x02, 0xBA, 0x1C, 0x9D, 0x46, 0xBF, 0x37, 0x1D, 0x16, 0xF6, 0x0F, 0x34, 0x01, 0x0F, 0x33, 0x90, 0x27, 0x76, 0x2F, 0x17, 0x4E, 0xD9, 0x7E, 0xBC, 0x6B, 0xF5, 0x72, 0x94, 0x82, 0x75, 0x8A, 0x55, 0x82, 0x15, 0x79, 0xD4, 0x61, 0x73, 0x61, 0x94, 0x59, 0x73, 0x59, 0x93, 0x51, 0xB3, 0x51, 0x93, 0x49, 0xB3, 0x01, 0x49, + 0x93, 0x81, 0x41, 0x92, 0x39, 0x51, 0x01, 0x39, 0x71, 0x82, 0x41, 0x72, 0x39, 0x51, 0x39, 0x71, 0x01, 0x39, 0x51, 0x81, 0x39, 0x71, 0x31, 0x50, 0x01, 0x31, 0x30, 0x01, 0x31, 0x50, 0x03, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x06, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x89, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x19, 0x95, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8D, 0x21, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0xB5, 0x11, 0x32, 0x11, 0x11, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x53, 0x11, 0x95, 0x01, 0x11, 0xD7, 0x88, 0x09, 0x76, 0x09, 0x75, 0x09, 0x55, 0x01, 0x34, 0x09, 0x34, 0x01, 0x34, 0x09, 0x55, 0x01, 0x55, 0x09, 0x96, 0x01, 0x11, + 0xD7, 0x83, 0x19, 0xF7, 0x19, 0xB6, 0x11, 0x54, 0x09, 0x13, 0x01, 0x11, 0x33, 0x83, 0x11, 0x32, 0x11, 0x33, 0x11, 0x12, 0x11, 0x32, 0x17, 0x11, 0x12, 0x80, 0x10, 0xF1, 0x02, 0x11, 0x12, 0x85, 0x11, 0x32, 0x11, 0x12, 0x09, 0x12, 0x09, 0x13, 0x09, 0x33, 0x11, 0x95, 0x01, 0x22, 0x17, 0x83, 0x21, 0xF6, 0x19, 0x94, 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x21, 0x30, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8C, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x94, 0x11, 0xB5, 0x19, 0xD6, 0x11, 0xB5, 0x19, 0xB5, 0x11, 0x75, 0x11, 0x54, 0x11, 0x33, 0x11, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x10, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x21, 0x31, 0x80, 0x19, 0x31, 0x04, 0x21, 0x31, 0x80, 0x19, 0x10, 0x01, 0x19, 0x31, 0x84, 0x21, 0x31, 0x19, 0x11, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x01, 0x19, 0x11, 0x04, 0x19, 0x31, 0x01, 0x21, 0x31, 0x01, 0x19, 0x30, 0x01, + 0x19, 0x31, 0x80, 0x21, 0x31, 0x05, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x19, 0x11, 0x01, 0x19, 0x32, 0x87, 0x11, 0x32, 0x19, 0x74, 0x21, 0xF6, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x95, 0x19, 0x53, 0x19, 0x32, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, + 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x06, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x28, 0xEF, 0x30, 0xCE, 0x38, 0x4C, 0xA2, 0x73, 0xB2, 0x52, 0x01, 0xB2, 0x11, 0x85, 0xB1, 0xF0, 0xAA, 0x0D, 0xFD, 0x76, 0xFD, 0xD4, 0xFD, 0xF3, 0xFD, 0xD1, 0x01, 0xFD, 0x90, 0x83, 0xFD, 0x8F, 0xFD, 0xAF, 0xFD, 0xB0, 0xFD, 0xAF, 0x01, 0xFD, 0xB0, 0x8A, 0xFD, 0xD2, 0xFD, 0xD4, 0xFD, 0xB5, 0xD4, 0x31, 0x89, 0xEC, 0x92, 0x0E, 0xA2, 0x91, 0xBB, 0x33, 0xCB, 0xF6, 0xDC, 0x57, 0xE4, 0x78, 0x03, 0xDC, 0x57, 0x8C, 0xE4, 0x57, 0xDC, 0x36, 0xE4, 0x36, 0xDC, 0x36, 0xE4, 0x56, 0xE4, 0x35, 0xDC, 0x54, 0xE4, 0x72, 0xFD, 0x74, 0xFD, 0xD3, 0xFD, 0xB2, 0xFD, 0x91, 0xFD, 0x90, 0x03, 0xFD, 0xB0, 0x01, 0xFD, 0x90, 0x80, 0xFD, 0xB0, 0x04, 0xFD, 0x90, 0x8A, 0xFD, 0xB0, 0xFD, 0xB1, 0xFD, 0x91, 0xFD, 0xB3, 0xEC, 0xF3, 0xB3, 0x4E, 0x92, 0x4D, 0x92, 0x4F, 0xB3, 0x12, 0xC3, 0xB5, 0xDC, 0x37, 0x01, 0xE4, 0x78, 0x02, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xE4, + 0x56, 0x84, 0xE4, 0x55, 0xE4, 0x74, 0xEC, 0xF3, 0xFD, 0x93, 0xFD, 0x92, 0x01, 0xFD, 0x91, 0x02, 0xFD, 0x90, 0x04, 0xFD, 0x8F, 0x03, 0xFD, 0xAF, 0x01, 0xFD, 0xB0, 0x01, 0xFD, 0xB1, 0x87, 0xFD, 0xB3, 0xEC, 0xF3, 0xBB, 0x70, 0x9A, 0x4E, 0x9A, 0x4F, 0xB3, 0x13, 0xCB, 0xB5, 0xDC, 0x37, 0x01, 0xE4, 0x58, 0x01, 0xE4, 0x57, 0x83, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x36, 0xDC, 0x57, 0x02, 0xDC, 0x56, 0x8A, 0xDC, 0x76, 0xE4, 0xB6, 0xFD, 0x78, 0xFD, 0xB9, 0xDC, 0xB6, 0xA2, 0xAF, 0x92, 0x2E, 0x9A, 0x4F, 0xBB, 0x74, 0xD4, 0x17, 0xDC, 0x57, 0x01, 0xE4, 0x78, 0x03, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x56, 0x01, 0xDC, 0x36, 0x86, 0xDC, 0x35, 0xE4, 0x55, 0xDC, 0x34, 0xE4, 0x54, 0xEC, 0x94, 0xF4, 0xD5, 0xF4, 0xD4, 0x01, 0xFC, 0xF4, 0x81, 0xFD, 0x14, 0xFD, 0x13, 0x01, 0xF5, 0x13, 0x01, 0xF5, 0x33, 0x84, 0xF5, 0x53, 0xFD, 0x74, 0xFD, 0x75, 0xFD, 0xB8, 0x89, 0xCD, 0x01, 0x91, 0xEF, 0x81, 0xB3, 0x13, 0xE4, 0x79, 0x01, 0xE4, 0x58, 0x82, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x83, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x37, 0xE4, 0x36, 0x01, 0xE4, 0x56, 0x83, 0xE4, 0x55, 0xF4, 0xF7, 0xFD, 0x57, 0xFD, 0x76, 0x02, 0xFD, 0x75, 0x87, 0xFD, 0x55, 0xFD, 0x36, 0xE4, 0x54, 0x9A, 0x0D, 0x9A, 0x4F, 0xA2, 0x70, 0xCB, 0x95, 0xDC, 0x57, 0x04, 0xE4, 0x57, 0x01, 0xDC, 0x36, 0x03, 0xE4, 0x56, 0x86, 0xE4, 0x35, 0xDC, 0x33, 0xE4, 0x92, 0xFD, 0x54, 0xFD, 0xB3, 0xFD, 0xB2, 0xFD, 0x91, 0x03, 0xFD, + 0x90, 0x04, 0xFD, 0x8F, 0x80, 0xFD, 0xAF, 0x07, 0xFD, 0x8F, 0x80, 0xFD, 0xAF, 0x06, 0xFD, 0x8F, 0x01, 0xFD, 0xAF, 0x8D, 0xFD, 0xB0, 0xFD, 0xD1, 0xFD, 0xB1, 0xFD, 0xB3, 0xFD, 0x74, 0x92, 0x2B, 0x8A, 0x0D, 0x9A, 0x4F, 0xAA, 0xD2, 0xD3, 0xD6, 0xDC, 0x38, 0xE4, 0x58, 0xDC, 0x57, 0xE4, 0x58, 0x03, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x95, 0xDC, 0x36, 0xDC, 0x56, 0xDC, 0x36, 0xE4, 0x36, 0xE4, 0x35, 0xE4, 0x75, 0xEC, 0x95, 0xF4, 0xD5, 0xFD, 0x35, 0xFD, 0x75, 0xFD, 0x95, 0xFD, 0x96, 0xFD, 0x97, 0xF5, 0x17, 0xB3, 0x11, 0x9A, 0x4F, 0x9A, 0x30, 0xB2, 0xD2, 0xCB, 0xB5, 0xDC, 0x37, 0xE4, 0x78, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x81, 0xE4, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x80, 0xE4, 0x56, 0x01, 0xDC, 0x36, 0x83, 0xE4, 0x36, 0xE4, 0x35, 0xF4, 0xB6, 0xF4, 0xF6, 0x01, 0xF4, 0xF5, 0x01, 0xF5, 0x15, 0x87, 0xFD, 0x35, 0xFD, 0x37, 0xEC, 0xB6, 0xA2, 0x4E, 0x92, 0x0E, 0x92, 0x0F, 0xAA, 0xB1, 0xDC, 0x16, 0x02, 0xDC, 0x37, 0x80, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x82, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x86, 0xE4, 0x56, 0xDC, 0x55, 0xDC, 0x54, 0xE4, 0x93, 0xFD, 0x54, 0xFD, 0xB3, 0xFD, 0xB2, 0x02, 0xFD, 0x91, 0x02, 0xFD, 0x90, 0x03, 0xFD, 0xB0, 0x8C, 0xFD, 0x90, 0xFD, 0xB1, 0xFD, 0xD2, 0xFD, 0xD5, 0xD4, 0x31, 0x9A, 0x6D, 0x92, 0x0D, 0x9A, 0x2F, 0xC3, 0x74, 0xD4, 0x16, 0xDC, 0x58, 0xE4, 0x58, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x8B, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0xE4, 0x36, 0xE4, 0x56, 0xE4, 0x36, 0xE4, 0x35, 0xDC, 0x34, 0xDC, 0x53, + 0xF5, 0x74, 0xFD, 0xD4, 0xFD, 0xD3, 0x02, 0xFD, 0xB3, 0x03, 0xFD, 0xB2, 0x03, 0xFD, 0xD3, 0x8E, 0xFD, 0xB3, 0xFD, 0xD4, 0xFD, 0xD5, 0xFD, 0x98, 0x9A, 0x10, 0xA1, 0xF2, 0xA1, 0xF4, 0xA2, 0x36, 0xA2, 0x78, 0x8A, 0x5A, 0x41, 0x18, 0x29, 0x1A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x9E, 0x01, 0x09, 0x9E, 0x06, 0x01, 0x9F, 0x04, 0x01, 0xBF, 0x80, 0x01, 0x9E, 0x01, 0x01, 0xBE, 0x9A, 0x01, 0x9E, 0x01, 0xBD, 0x01, 0xDC, 0x02, 0x3B, 0x02, 0x9A, 0x1C, 0x7D, 0x46, 0xDF, 0x37, 0x1D, 0x16, 0xF6, 0x0F, 0x13, 0x0F, 0x33, 0x0F, 0x53, 0x1F, 0x76, 0x37, 0x58, 0x56, 0xFA, 0x7E, 0x9C, 0x63, 0x74, 0x72, 0x74, 0x82, 0x55, 0x81, 0xF4, 0x82, 0x15, 0x71, 0xB4, 0x69, 0x94, 0x61, 0x93, 0x59, 0x73, 0x51, 0x93, 0x51, 0xB3, 0x02, 0x49, 0x93, 0x85, 0x49, 0x92, 0x49, 0x93, 0x41, 0x92, 0x39, 0x72, 0x39, 0x51, 0x39, 0x72, 0x01, 0x39, 0x71, 0x81, 0x31, 0x50, 0x31, 0x51, 0x02, 0x31, 0x50, 0x82, 0x31, 0x30, 0x29, 0x30, 0x31, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x08, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, + 0x2F, 0x05, 0x21, 0x0F, 0x84, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x11, 0x12, 0x19, 0xB5, 0x01, 0x19, 0xD6, 0x95, 0x19, 0x75, 0x11, 0x11, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x32, 0x11, 0x12, 0x21, 0x31, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x85, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x88, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x31, 0x19, 0x52, 0x11, 0x74, 0x11, 0xB6, 0x19, 0xF7, 0x11, 0xB7, 0x01, 0x55, 0x02, 0x09, 0x55, 0x01, 0x09, 0x54, 0x8C, 0x09, 0x55, 0x09, 0x75, 0x09, 0x96, 0x09, 0xB7, 0x09, 0xD7, 0x11, 0xD8, 0x11, 0xF7, 0x11, 0xD7, 0x11, 0xB6, 0x11, 0x96, 0x11, 0xB6, 0x11, 0x96, 0x11, 0x95, 0x03, 0x11, 0x75, 0x80, 0x11, 0x55, 0x06, 0x11, 0x75, 0x82, 0x11, 0x55, 0x11, 0x75, 0x11, 0x55, 0x0A, 0x11, 0x75, 0x01, 0x11, 0x95, 0x80, 0x11, 0x74, 0x01, 0x11, 0x95, 0x8B, 0x19, 0xD6, 0x19, 0xF6, 0x22, 0x17, 0x22, 0x37, 0x22, 0x38, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x74, 0x19, 0x53, 0x11, 0x32, 0x19, 0x31, 0x19, 0x11, 0x02, 0x21, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, + 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x31, 0x01, 0x19, 0x31, 0x82, 0x11, 0x31, 0x11, 0x11, 0x11, 0x32, 0x01, 0x11, 0x12, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x19, 0x10, 0x19, 0x30, 0x02, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x50, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x07, 0x21, 0x30, 0x01, 0x21, 0x31, 0x83, 0x21, 0x30, 0x21, 0x31, 0x21, 0x30, 0x21, 0x31, 0x06, 0x21, 0x30, 0x03, 0x21, 0x31, 0x84, 0x21, 0x30, 0x19, 0x10, 0x21, 0x31, 0x19, 0x10, 0x21, 0x10, 0x03, 0x21, 0x30, 0x80, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x20, 0xEF, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x06, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x0F, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x05, + 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x31, 0x01, 0x19, 0x32, 0x81, 0x11, 0x33, 0x11, 0x74, 0x02, 0x21, 0xF6, 0x82, 0x21, 0x95, 0x19, 0x53, 0x19, 0x12, 0x01, 0x19, 0x11, 0x81, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x8A, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x09, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x08, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8B, 0x28, 0xEF, 0x30, 0xCE, 0x38, 0x6C, 0xA2, 0x94, 0xB2, 0x52, 0xB2, 0x32, 0xB2, 0x11, 0xB1, 0xF0, 0xA9, 0xED, 0xFD, 0x76, 0xFD, 0xD4, 0xFD, 0xF3, 0x01, 0xFD, 0xD1, 0x01, 0xFD, 0xB0, 0x01, 0xFD, 0xCF, 0x80, 0xFD, 0xAF, 0x01, 0xFD, 0xD0, 0x8A, 0xFD, 0xF2, 0xFD, 0xF4, 0xFD, 0xB5, 0xCC, 0x11, 0x89, 0xEC, 0x92, 0x0E, 0xA2, 0x90, 0xBB, 0x33, 0xD3, + 0xF6, 0xDC, 0x57, 0xE4, 0x78, 0x03, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x87, 0xE4, 0x36, 0xE4, 0x35, 0xE4, 0x54, 0xE4, 0x92, 0xFD, 0x94, 0xFD, 0xD3, 0xFD, 0xD2, 0xFD, 0xB1, 0x01, 0xFD, 0xB0, 0x01, 0xFD, 0xD0, 0x07, 0xFD, 0xB0, 0x01, 0xFD, 0xD0, 0x01, 0xFD, 0xD1, 0x87, 0xFD, 0xD3, 0xED, 0x13, 0xB3, 0x4E, 0x92, 0x4D, 0x9A, 0x4F, 0xB3, 0x12, 0xC3, 0xB5, 0xDC, 0x37, 0x01, 0xE4, 0x58, 0x80, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x80, 0xDC, 0x37, 0x01, 0xE4, 0x37, 0x80, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x84, 0xE4, 0x55, 0xE4, 0x74, 0xED, 0x13, 0xFD, 0xB3, 0xFD, 0xB2, 0x01, 0xFD, 0xB1, 0x03, 0xFD, 0xB0, 0x02, 0xFD, 0xAF, 0x80, 0xFD, 0xCF, 0x03, 0xFD, 0xAF, 0x01, 0xFD, 0xD0, 0x01, 0xFD, 0xD1, 0x89, 0xFD, 0xD3, 0xED, 0x13, 0xC3, 0x90, 0x9A, 0x4D, 0x9A, 0x4F, 0xB3, 0x12, 0xCB, 0xB5, 0xDC, 0x37, 0xE4, 0x58, 0xDC, 0x57, 0x02, 0xE4, 0x57, 0x82, 0xDC, 0x57, 0xE4, 0x57, 0xDC, 0x57, 0x02, 0xDC, 0x56, 0x8C, 0xDC, 0x76, 0xE4, 0x96, 0xF5, 0x78, 0xFD, 0xB8, 0xF5, 0x78, 0xB3, 0x71, 0x92, 0x4E, 0x92, 0x4F, 0xAA, 0xD1, 0xCB, 0xB5, 0xDC, 0x57, 0xE4, 0x78, 0xE4, 0x57, 0x01, 0xE4, 0x77, 0x01, 0xE4, 0x57, 0x06, 0xDC, 0x57, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x56, 0x87, 0xDC, 0x36, 0xE4, 0x56, 0xDC, 0x35, 0xDC, 0x55, 0xE4, 0x55, 0xE4, 0x54, 0xE4, 0x74, 0xEC, 0x74, 0x01, 0xEC, 0x94, 0x02, 0xEC, 0xB3, 0x81, 0xEC, 0xD3, 0xEC, 0xF3, 0x01, 0xED, 0x14, 0x82, 0xF5, 0x76, 0xFD, 0xB9, 0x89, 0xCD, 0x01, 0x91, 0xEF, 0x82, 0xB3, 0x13, 0xE4, 0x78, 0xE4, 0x58, + 0x01, 0xE4, 0x57, 0x82, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x80, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x02, 0xE4, 0x56, 0x84, 0xE4, 0x75, 0xE4, 0x95, 0xEC, 0xD5, 0xFD, 0x57, 0xFD, 0x76, 0x01, 0xFD, 0x56, 0x81, 0xFD, 0x36, 0xE4, 0x54, 0x01, 0xC3, 0x73, 0x81, 0xC3, 0x94, 0xD3, 0xF6, 0x01, 0xE4, 0x57, 0x84, 0xDC, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0xE4, 0x37, 0xDC, 0x36, 0x01, 0xDC, 0x56, 0x02, 0xE4, 0x56, 0x85, 0xDC, 0x35, 0xDC, 0x33, 0xE4, 0x92, 0xFD, 0x74, 0xFD, 0xB3, 0xFD, 0xD2, 0x01, 0xFD, 0xB1, 0x02, 0xFD, 0xB0, 0x80, 0xFD, 0x8F, 0x05, 0xFD, 0xAF, 0x80, 0xFD, 0xCF, 0x0F, 0xFD, 0xAF, 0x01, 0xFD, 0xD0, 0x8B, 0xFD, 0xD1, 0xFD, 0xD2, 0xFD, 0xD4, 0xB3, 0x4F, 0x8A, 0x0C, 0x92, 0x2E, 0xA2, 0x91, 0xCB, 0x95, 0xDC, 0x37, 0xE4, 0x58, 0xDC, 0x57, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xDC, 0x57, 0x02, 0xE4, 0x57, 0x9B, 0xDC, 0x57, 0xDC, 0x56, 0xDC, 0x36, 0xDC, 0x35, 0xE4, 0x35, 0xE4, 0x55, 0xE4, 0x74, 0xE4, 0x94, 0xF5, 0x15, 0xFD, 0x56, 0xFD, 0x97, 0xFD, 0x98, 0xF5, 0x18, 0xB3, 0x11, 0x9A, 0x50, 0x9A, 0x30, 0xB2, 0xD3, 0xCB, 0xB6, 0xDC, 0x37, 0xE4, 0x78, 0xE4, 0x57, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x36, 0xE4, 0x36, 0xE4, 0x56, 0x02, 0xDC, 0x36, 0x82, 0xE4, 0x35, 0xE4, 0x75, 0xE4, 0x55, 0x01, 0xE4, 0x54, 0x02, 0xE4, 0x74, 0x8A, 0xEC, 0xB5, 0xC3, 0x72, 0x91, 0xED, 0x89, 0xCD, 0x89, 0xCE, 0xAA, 0xB1, 0xDC, 0x36, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xDC, + 0x57, 0x81, 0xDC, 0x56, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x85, 0xDC, 0x55, 0xDC, 0x54, 0xE4, 0xB3, 0xFD, 0x54, 0xFD, 0xB3, 0xFD, 0xB2, 0x03, 0xFD, 0xB1, 0x02, 0xFD, 0xB0, 0x01, 0xFD, 0xD0, 0x02, 0xFD, 0xD1, 0x97, 0xFD, 0xD2, 0xFD, 0xF5, 0xD4, 0x52, 0x9A, 0x6D, 0x92, 0x0D, 0x92, 0x2E, 0xC3, 0x74, 0xD4, 0x16, 0xDC, 0x37, 0xDC, 0x57, 0xE4, 0x57, 0xDC, 0x57, 0xDC, 0x37, 0xDC, 0x57, 0xDC, 0x37, 0xE4, 0x36, 0xE4, 0x57, 0xE4, 0x56, 0xE4, 0x36, 0xE4, 0x35, 0xDC, 0x34, 0xDC, 0x53, 0xF5, 0x74, 0xFD, 0xD4, 0x01, 0xFD, 0xD3, 0x01, 0xFD, 0xB3, 0x80, 0xFD, 0xD3, 0x03, 0xFD, 0xD2, 0x81, 0xFD, 0xD3, 0xFD, 0xF3, 0x01, 0xFD, 0xF4, 0x8F, 0xFD, 0xD4, 0xFD, 0xF6, 0xFD, 0xB8, 0x9A, 0x10, 0xA1, 0xF2, 0xA2, 0x14, 0xA2, 0x36, 0xA2, 0x78, 0x82, 0x5A, 0x41, 0x18, 0x29, 0x1A, 0x19, 0x5C, 0x19, 0x7D, 0x11, 0x7E, 0x09, 0x9E, 0x01, 0x9E, 0x07, 0x01, 0x9F, 0x04, 0x01, 0xBF, 0x01, 0x01, 0xBE, 0x89, 0x01, 0x9E, 0x01, 0xBD, 0x01, 0xDC, 0x02, 0x3B, 0x02, 0xBA, 0x1C, 0x9D, 0x46, 0xDF, 0x37, 0x3D, 0x16, 0xF6, 0x0F, 0x54, 0x01, 0x0F, 0x53, 0x89, 0x1F, 0x56, 0x37, 0x37, 0x56, 0xFA, 0x7E, 0x5C, 0x5B, 0x13, 0x72, 0x54, 0x82, 0x14, 0x82, 0x15, 0x81, 0xF5, 0x71, 0xB4, 0x01, 0x61, 0x93, 0x82, 0x59, 0x93, 0x59, 0xB3, 0x51, 0x93, 0x01, 0x49, 0x92, 0x81, 0x49, 0x93, 0x41, 0x92, 0x02, 0x41, 0x72, 0x85, 0x39, 0x72, 0x39, 0x51, 0x39, 0x71, 0x39, 0x51, 0x31, 0x51, 0x39, 0x71, 0x02, 0x31, 0x50, 0x80, 0x31, 0x30, 0x03, 0x29, 0x30, 0x0D, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, + 0x2F, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x19, 0x11, 0x11, 0x12, 0x19, 0xB5, 0x01, 0x19, 0xD6, 0x83, 0x19, 0x75, 0x11, 0x11, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x8B, 0x21, 0x10, 0x21, 0x30, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x21, 0xD5, 0x22, 0x16, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x21, 0x31, 0x01, 0x21, 0x30, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0E, 0x8B, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x31, 0x19, 0x52, 0x11, 0x74, 0x19, 0xD6, 0x1A, 0x18, 0x11, 0xB7, 0x09, 0x75, 0x09, 0x55, 0x02, 0x09, 0x34, 0x83, 0x09, 0x54, 0x09, 0x55, 0x09, 0x75, 0x09, 0x76, 0x01, 0x09, 0xB7, 0x82, 0x09, 0xD7, 0x11, 0xD7, 0x11, 0xF8, 0x05, 0x1A, 0x18, 0x82, 0x22, 0x18, 0x1A, 0x18, 0x22, 0x38, 0x02, 0x22, 0x18, 0x80, 0x22, 0x38, 0x01, 0x22, 0x18, 0x01, 0x22, 0x38, 0x01, 0x22, 0x18, 0x01, 0x22, 0x39, 0x81, 0x22, 0x38, 0x22, 0x39, 0x01, 0x22, 0x38, 0x82, 0x22, 0x39, + 0x22, 0x59, 0x22, 0x38, 0x01, 0x22, 0x59, 0x82, 0x22, 0x79, 0x22, 0x58, 0x22, 0x59, 0x02, 0x22, 0x58, 0x80, 0x2A, 0x59, 0x01, 0x22, 0x58, 0x8A, 0x22, 0x37, 0x21, 0xF7, 0x19, 0xB5, 0x19, 0x74, 0x19, 0x53, 0x11, 0x32, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x04, 0x21, 0x30, 0x03, 0x19, 0x10, 0x80, 0x21, 0x30, 0x01, 0x19, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x19, 0x30, 0x12, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x12, 0x21, 0x30, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x09, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, + 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x31, 0x84, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x19, 0x74, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x82, 0x19, 0x95, 0x19, 0x53, 0x19, 0x12, 0x02, 0x19, 0x11, 0x81, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x88, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x06, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x07, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, + 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x12, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8B, 0x28, 0xEF, 0x30, 0xCE, 0x38, 0x4C, 0xA2, 0xB4, 0xB2, 0x52, 0xB2, 0x32, 0xB2, 0x31, 0xB1, 0xF0, 0xA1, 0xCD, 0xFD, 0x96, 0xFD, 0xF4, 0xFE, 0x13, 0x01, 0xFD, 0xF1, 0x80, 0xFD, 0xF0, 0x03, 0xFD, 0xCF, 0x8C, 0xFD, 0xF0, 0xFD, 0xF1, 0xFD, 0xF2, 0xFD, 0xF4, 0xFD, 0xD5, 0xCC, 0x11, 0x89, 0xEC, 0x92, 0x0E, 0xA2, 0x90, 0xB3, 0x12, 0xD3, 0xF6, 0xDC, 0x57, 0xE4, 0x78, 0x02, 0xDC, 0x57, 0x83, 0xE4, 0x57, 0xDC, 0x36, 0xDC, 0x56, 0xE4, 0x56, 0x01, 0xE4, 0x36, 0x86, 0xE4, 0x35, 0xDC, 0x54, 0xE4, 0x92, 0xFD, 0x94, 0xFD, 0xF3, 0xFD, 0xF2, 0xFD, 0xD1, 0x02, 0xFD, 0xD0, 0x80, 0xFD, 0xF0, 0x01, 0xFD, 0xD0, 0x01, 0xFD, 0xCF, 0x02, 0xFD, 0xD0, 0x82, 0xFD, 0xF0, 0xFD, 0xD0, 0xFD, 0xF0, 0x01, 0xFD, 0xF1, 0x8A, 0xFD, 0xF3, 0xED, 0x33, 0xBB, 0x6F, 0x92, 0x6D, 0x9A, 0x6F, 0xB3, 0x12, 0xC3, 0x95, 0xDC, 0x37, 0xE4, 0x78, 0xE4, 0x58, 0xE4, 0x57, 0x02, 0xE4, 0x37, 0x02, 0xE4, 0x57, 0x80, 0xE4, 0x36, 0x01, 0xE4, 0x55, 0x83, 0xE4, 0x73, 0xF5, 0x13, 0xFD, 0xB3, 0xFD, 0xD2, 0x01, 0xFD, 0xD1, 0x03, 0xFD, 0xD0, 0x80, 0xFD, 0xCF, 0x01, 0xFD, 0xD0, 0x03, 0xFD, 0xCF, 0x01, 0xFD, 0xF0, 0x80, 0xFE, 0x11, 0x01, 0xFD, 0xF1, 0x8A, 0xFD, 0xD3, 0xED, 0x13, 0xBB, 0x8F, 0x9A, 0x4D, 0x9A, 0x2E, 0xB2, 0xF2, 0xCB, 0xB5, 0xDC, 0x37, 0xE4, 0x78, 0xE4, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x57, 0x03, 0xDC, 0x56, 0x8A, 0xE4, 0x95, 0xFD, + 0x97, 0xFD, 0xD7, 0xFD, 0xF8, 0xE5, 0x15, 0x92, 0x6D, 0x92, 0x2E, 0x92, 0x4F, 0xB3, 0x12, 0xD4, 0x16, 0xDC, 0x57, 0x01, 0xE4, 0x78, 0x80, 0xE4, 0x77, 0x06, 0xDC, 0x57, 0x80, 0xE4, 0x57, 0x07, 0xDC, 0x56, 0x80, 0xE4, 0x56, 0x02, 0xE4, 0x55, 0x80, 0xE4, 0x54, 0x02, 0xE4, 0x74, 0x80, 0xDC, 0x74, 0x01, 0xE4, 0x94, 0x84, 0xE4, 0xB4, 0xEC, 0xD4, 0xF5, 0x36, 0xFD, 0x99, 0x91, 0xED, 0x01, 0x91, 0xEF, 0x81, 0xB3, 0x13, 0xE4, 0x78, 0x01, 0xE4, 0x58, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x01, 0xE4, 0x57, 0x02, 0xE4, 0x56, 0x80, 0xDC, 0x56, 0x01, 0xDC, 0x55, 0x83, 0xDC, 0x34, 0xD4, 0x14, 0xD4, 0x13, 0xDC, 0x34, 0x01, 0xE4, 0x55, 0x80, 0xE4, 0x77, 0x05, 0xE4, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x56, 0x04, 0xE4, 0x56, 0x85, 0xDC, 0x35, 0xDC, 0x53, 0xE4, 0x92, 0xFD, 0x94, 0xFD, 0xD3, 0xFD, 0xD2, 0x01, 0xFD, 0xD1, 0x03, 0xFD, 0xD0, 0x16, 0xFD, 0xCF, 0x01, 0xFD, 0xF0, 0x88, 0xFD, 0xF1, 0xFD, 0xF2, 0xFD, 0xF4, 0xDC, 0xB2, 0x92, 0x4C, 0x92, 0x2E, 0x9A, 0x4F, 0xBB, 0x53, 0xDC, 0x17, 0x02, 0xE4, 0x78, 0x80, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x02, 0xDC, 0x36, 0x81, 0xE4, 0x56, 0xDC, 0x35, 0x02, 0xE4, 0x55, 0x8C, 0xE4, 0x74, 0xE4, 0x95, 0xEC, 0xB6, 0xEC, 0xB7, 0xB3, 0x12, 0x9A, 0x50, 0x9A, 0x30, 0xB2, 0xD3, 0xCB, 0xD6, 0xDC, 0x37, 0xE4, 0x78, 0xE4, 0x57, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xE4, 0x57, 0x02, 0xE4, 0x36, 0x01, 0xDC, 0x36, 0x81, 0xE4, 0x56, 0xDC, 0x36, 0x05, + 0xDC, 0x55, 0x82, 0xE4, 0x55, 0xE4, 0x75, 0xEC, 0xB7, 0x01, 0xEC, 0xB8, 0x81, 0xEC, 0x98, 0xE4, 0x77, 0x02, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x83, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x57, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x85, 0xE4, 0x55, 0xE4, 0x74, 0xE4, 0xB3, 0xFD, 0x74, 0xFD, 0xB3, 0xFD, 0xD2, 0x03, 0xFD, 0xD1, 0x04, 0xFD, 0xD0, 0x02, 0xFD, 0xF1, 0x8B, 0xFD, 0xF2, 0xFD, 0xF5, 0xD4, 0x72, 0x9A, 0x6D, 0x92, 0x0D, 0x9A, 0x2F, 0xC3, 0x74, 0xDC, 0x17, 0xDC, 0x37, 0xDC, 0x57, 0xE4, 0x58, 0xDC, 0x57, 0x02, 0xDC, 0x37, 0x88, 0xE4, 0x57, 0xE4, 0x56, 0xDC, 0x36, 0xDC, 0x35, 0xE4, 0x55, 0xDC, 0x34, 0xDC, 0x73, 0xED, 0x33, 0xFD, 0xF4, 0x03, 0xFD, 0xD3, 0x01, 0xFD, 0xF3, 0x80, 0xFD, 0xD2, 0x02, 0xFD, 0xF3, 0x01, 0xFE, 0x13, 0x8F, 0xFE, 0x14, 0xFD, 0xF5, 0xFD, 0xF6, 0xFD, 0x98, 0x9A, 0x10, 0xA1, 0xF3, 0xA1, 0xF4, 0xA2, 0x36, 0x9A, 0x58, 0x82, 0x5A, 0x41, 0x18, 0x29, 0x1A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x9E, 0x09, 0x9E, 0x01, 0x01, 0x9E, 0x03, 0x01, 0x9F, 0x08, 0x01, 0xBF, 0x89, 0x01, 0xBE, 0x01, 0x9E, 0x01, 0xBD, 0x01, 0xDC, 0x02, 0x5B, 0x02, 0xDA, 0x14, 0x7C, 0x3E, 0xDF, 0x2F, 0x3D, 0x0E, 0xF6, 0x02, 0x0F, 0x53, 0x8A, 0x1F, 0x56, 0x37, 0x17, 0x5E, 0xFA, 0x7E, 0x3C, 0x52, 0xB2, 0x72, 0x33, 0x79, 0xF4, 0x82, 0x15, 0x79, 0xD4, 0x69, 0x93, 0x61, 0x93, 0x01, 0x59, 0x93, 0x01, 0x51, 0xB3, 0x02, 0x49, 0x93, 0x81, 0x49, 0x92, 0x41, 0x92, 0x01, 0x41, 0x72, 0x80, 0x39, 0x72, 0x04, 0x39, 0x51, 0x80, 0x31, 0x50, 0x01, 0x31, 0x30, + 0x02, 0x31, 0x50, 0x81, 0x29, 0x30, 0x31, 0x30, 0x0B, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x19, 0x31, 0x11, 0x32, 0x19, 0xB5, 0x01, 0x19, 0xD7, 0x83, 0x19, 0x95, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x02, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x86, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x21, 0xD5, 0x22, 0x17, 0x19, 0xD6, 0x11, 0x74, 0x01, 0x11, 0x12, 0x82, 0x19, 0x31, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8A, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x54, 0x19, 0xD6, 0x1A, 0x18, 0x11, 0xF7, 0x09, 0x96, 0x01, 0x55, 0x09, 0x35, 0x02, 0x09, 0x34, 0x82, 0x09, 0x54, 0x11, 0x96, 0x09, 0x97, 0x02, 0x11, 0xD8, 0x80, 0x11, 0xF8, 0x01, 0x19, 0xF8, 0x01, 0x22, 0x18, 0x01, 0x1A, 0x18, 0x82, 0x22, 0x18, 0x1A, 0x18, 0x19, 0xF8, 0x01, 0x22, 0x18, 0x81, 0x1A, 0x18, 0x22, 0x38, 0x05, 0x22, 0x18, 0x80, 0x21, 0xF8, 0x09, 0x22, 0x18, 0x03, 0x22, 0x38, 0x82, 0x22, 0x18, 0x19, 0xF7, 0x19, 0xD6, 0x01, 0x19, 0xB6, + 0x85, 0x11, 0x95, 0x11, 0x74, 0x19, 0x94, 0x19, 0x74, 0x19, 0x73, 0x19, 0x32, 0x01, 0x19, 0x11, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x07, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x11, 0x11, 0x01, 0x19, 0x31, 0x81, 0x21, 0x31, 0x21, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, + 0x80, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x51, 0x21, 0x31, 0x01, 0x19, 0x32, 0x82, 0x11, 0x33, 0x19, 0x74, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x82, 0x19, 0xB5, 0x19, 0x74, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x19, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x08, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, + 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x10, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8E, 0x28, 0xEF, 0x30, 0xCE, 0x38, 0x6C, 0xA2, 0x94, 0xB2, 0x53, 0xB2, 0x32, 0xB2, 0x11, 0xA9, 0xF0, 0xA1, 0xCD, 0xFD, 0x76, 0xFD, 0xF4, 0xFE, 0x13, 0xFD, 0xF1, 0xFE, 0x11, 0xFD, 0xF0, 0x03, 0xFD, 0xEF, 0x8C, 0xFD, 0xF0, 0xFE, 0x11, 0xFE, 0x12, 0xFE, 0x14, 0xFD, 0xF5, 0xCC, 0x11, 0x89, 0xEC, 0x92, 0x0E, 0xA2, 0x90, 0xB3, 0x12, 0xD3, 0xF6, 0xDC, 0x57, 0xE4, 0x78, 0x01, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x81, 0xDC, 0x57, 0xE4, 0x57, 0x02, 0xE4, 0x56, 0x87, 0xE4, 0x55, 0xE4, 0x54, 0xE4, 0x92, 0xFD, 0xB4, 0xFD, 0xF3, 0xFD, 0xF2, 0xFD, 0xD1, 0xFD, 0xF1, 0x03, 0xFD, 0xF0, 0x02, 0xFD, 0xEF, 0x80, 0xFD, 0xCF, 0x02, 0xFD, 0xEF, 0x02, 0xFD, 0xF0, 0x8D, 0xFE, 0x12, 0xFE, 0x13, 0xF5, 0x73, 0xBB, 0x8F, 0x92, 0x6D, 0x9A, 0x6F, 0xAA, 0xF2, 0xC3, 0x95, 0xDC, 0x37, 0xE4, 0x78, 0xE4, 0x58, 0xE4, 0x37, 0xE4, 0x57, 0xE4, 0x58, 0x01, 0xE4, 0x37, 0x82, 0xE4, 0x57, 0xE4, 0x36, 0xDC, 0x36, 0x01, 0xE4, 0x55, 0x83, 0xE4, 0x73, 0xF5, 0x13, 0xFD, 0xD3, 0xFD, 0xF2, 0x01, 0xFD, 0xF1, 0x03, 0xFD, 0xF0, 0x07, 0xFD, 0xEF, 0x81, 0xFD, 0xF0, 0xFE, 0x10, 0x01, 0xFE, 0x11, 0x8A, 0xFD, 0xF3, 0xED, 0x33, 0xBB, 0x8F, 0x9A, 0x4D, 0x9A, 0x2E, 0xB3, 0x12, 0xCB, 0xB5, 0xDC, 0x37, 0xE4, 0x78, 0xE4, 0x77, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x82, 0xDC, 0x56, 0xE4, 0x57, 0xDC, 0x56, 0x01, 0xDC, + 0x36, 0x84, 0xDC, 0x56, 0xDC, 0x55, 0xDC, 0x75, 0xFD, 0xB7, 0xFD, 0xD7, 0x01, 0xFD, 0xF7, 0x86, 0xBB, 0xD1, 0x8A, 0x2C, 0x8A, 0x2D, 0x92, 0x4E, 0xC3, 0x94, 0xD4, 0x16, 0xDC, 0x57, 0x01, 0xE4, 0x77, 0x05, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x57, 0x07, 0xDC, 0x56, 0x80, 0xE4, 0x56, 0x01, 0xDC, 0x56, 0x81, 0xDC, 0x55, 0xE4, 0x55, 0x02, 0xDC, 0x55, 0x86, 0xDC, 0x75, 0xDC, 0x74, 0xE4, 0x94, 0xE4, 0xB5, 0xED, 0x16, 0xFD, 0x99, 0x89, 0xCD, 0x01, 0x91, 0xEF, 0x81, 0xB3, 0x13, 0xE4, 0x78, 0x01, 0xE4, 0x58, 0x08, 0xE4, 0x57, 0x81, 0xDC, 0x36, 0xDC, 0x56, 0x01, 0xDC, 0x36, 0x85, 0xDC, 0x56, 0xDC, 0x36, 0xDC, 0x56, 0xDC, 0x36, 0xDC, 0x56, 0xDC, 0x55, 0x02, 0xE4, 0x56, 0x02, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x03, 0xE4, 0x56, 0x86, 0xDC, 0x55, 0xDC, 0x54, 0xE4, 0xB3, 0xFD, 0xB4, 0xFD, 0xD3, 0xFD, 0xF2, 0xFD, 0xF1, 0x01, 0xFD, 0xD0, 0x81, 0xFD, 0xF0, 0xFD, 0xCF, 0x06, 0xFD, 0xEF, 0x82, 0xFD, 0xCF, 0xFD, 0xEF, 0xFD, 0xCF, 0x08, 0xFD, 0xEF, 0x80, 0xFD, 0xCF, 0x03, 0xFD, 0xEF, 0x01, 0xFE, 0x10, 0x8B, 0xFE, 0x11, 0xFE, 0x12, 0xFE, 0x13, 0xFD, 0xB5, 0xA2, 0xCC, 0x92, 0x0C, 0x92, 0x2E, 0xB2, 0xF1, 0xCB, 0xD5, 0xDC, 0x57, 0xE4, 0x98, 0xE4, 0x78, 0x01, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x80, 0xDC, 0x57, 0x02, 0xDC, 0x56, 0x06, 0xE4, 0x56, 0x89, 0xE4, 0x76, 0xE4, 0x96, 0xE4, 0x97, 0xB3, 0x12, 0x9A, 0x50, 0x9A, 0x30, 0xAA, 0xD3, 0xCB, 0xD6, 0xDC, 0x37, 0xE4, 0x78, 0x01, + 0xE4, 0x57, 0x80, 0xDC, 0x57, 0x01, 0xDC, 0x36, 0x01, 0xE4, 0x57, 0x80, 0xE4, 0x36, 0x02, 0xE4, 0x56, 0x04, 0xDC, 0x56, 0x01, 0xE4, 0x56, 0x02, 0xE4, 0x76, 0x80, 0xE4, 0x77, 0x02, 0xE4, 0x57, 0x02, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x03, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x85, 0xDC, 0x55, 0xDC, 0x54, 0xE4, 0xB3, 0xFD, 0x74, 0xFD, 0xD3, 0xFD, 0xD2, 0x03, 0xFD, 0xD1, 0x82, 0xFD, 0xF1, 0xFD, 0xF0, 0xFD, 0xD0, 0x01, 0xFD, 0xF0, 0x8E, 0xFD, 0xF1, 0xFE, 0x11, 0xFE, 0x12, 0xFE, 0x13, 0xFE, 0x15, 0xD4, 0x72, 0x9A, 0x6D, 0x92, 0x0D, 0x92, 0x2F, 0xC3, 0x74, 0xD4, 0x17, 0xDC, 0x37, 0xDC, 0x57, 0xE4, 0x58, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x80, 0xDC, 0x36, 0x01, 0xE4, 0x56, 0x81, 0xDC, 0x36, 0xDC, 0x35, 0x01, 0xE4, 0x55, 0x83, 0xDC, 0x53, 0xF5, 0x54, 0xFD, 0xF4, 0xFE, 0x14, 0x01, 0xFD, 0xF3, 0x03, 0xFD, 0xF2, 0x80, 0xFD, 0xF3, 0x03, 0xFE, 0x13, 0x8F, 0xFE, 0x14, 0xFD, 0xF4, 0xFD, 0xF6, 0xFD, 0x98, 0x9A, 0x30, 0xA1, 0xF3, 0x99, 0xF4, 0x9A, 0x16, 0x9A, 0x58, 0x8A, 0x7A, 0x41, 0x38, 0x29, 0x1A, 0x21, 0x5C, 0x19, 0x9D, 0x11, 0x9D, 0x09, 0x9E, 0x01, 0x01, 0x9E, 0x03, 0x01, 0x9F, 0x08, 0x01, 0xBF, 0x01, 0x01, 0x9E, 0x88, 0x01, 0xBD, 0x01, 0xDC, 0x02, 0x5B, 0x03, 0x1A, 0x14, 0xBC, 0x3E, 0xDF, 0x2F, 0x3C, 0x0E, 0xF5, 0x0F, 0x33, 0x01, 0x0F, 0x53, 0x92, 0x27, 0x56, 0x37, 0x18, 0x5F, 0x1B, 0x75, 0xFB, 0x52, 0x72, 0x72, 0x34, 0x81, 0xF4, 0x81, 0xF5, 0x71, 0x94, 0x69, 0x93, 0x61, 0x73, 0x61, 0xB4, 0x59, 0x93, 0x59, 0xB3, 0x51, 0xB3, + 0x49, 0x93, 0x49, 0x72, 0x49, 0x93, 0x49, 0x92, 0x01, 0x41, 0x92, 0x80, 0x41, 0x72, 0x01, 0x39, 0x72, 0x01, 0x39, 0x71, 0x01, 0x39, 0x51, 0x02, 0x31, 0x50, 0x80, 0x31, 0x30, 0x03, 0x29, 0x30, 0x0C, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x89, 0x21, 0x30, 0x21, 0x51, 0x19, 0x31, 0x11, 0x32, 0x19, 0xB5, 0x19, 0xD7, 0x19, 0xB7, 0x19, 0x95, 0x11, 0x11, 0x19, 0x11, 0x02, 0x21, 0x30, 0x80, 0x21, 0x50, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8C, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x93, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x10, 0x19, 0x32, 0x19, 0x74, 0x19, 0xB6, 0x11, 0xD7, 0x1A, 0x18, 0x11, 0xD7, 0x09, 0x75, 0x09, 0x55, 0x09, 0x34, 0x01, 0x14, 0x09, 0x34, 0x09, 0x75, 0x11, 0xD7, 0x11, 0xF8, 0x01, + 0x11, 0xD8, 0x81, 0x11, 0xB7, 0x11, 0xB6, 0x01, 0x11, 0x96, 0x86, 0x19, 0xB6, 0x19, 0x96, 0x11, 0x96, 0x19, 0x96, 0x11, 0x95, 0x11, 0x96, 0x19, 0xB6, 0x04, 0x11, 0x95, 0x80, 0x19, 0x95, 0x02, 0x11, 0x95, 0x80, 0x19, 0x95, 0x01, 0x11, 0x95, 0x82, 0x11, 0x75, 0x19, 0x95, 0x11, 0x75, 0x02, 0x11, 0x95, 0x82, 0x11, 0x75, 0x11, 0x95, 0x11, 0x75, 0x03, 0x11, 0x74, 0x85, 0x11, 0x54, 0x11, 0x74, 0x11, 0x54, 0x11, 0x34, 0x11, 0x54, 0x11, 0x53, 0x01, 0x19, 0x53, 0x81, 0x19, 0x52, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x86, 0x19, 0xB4, 0x11, 0x32, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x30, + 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x86, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x08, 0x21, 0x0F, 0x12, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x0B, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x50, 0x21, 0x30, 0x01, 0x19, 0x31, 0x88, 0x11, 0x32, 0x11, 0x53, 0x19, 0x94, 0x21, 0xF6, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0xB5, 0x19, 0x74, 0x19, 0x32, 0x01, 0x19, 0x11, 0x80, 0x19, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, + 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x0A, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x30, 0x04, 0x29, 0x0F, 0x14, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x8B, 0x28, 0xEF, 0x30, 0xCE, 0x38, 0x6C, 0xA2, 0x94, 0xB2, 0x53, 0xB2, 0x12, 0xB2, 0x11, 0xA9, 0xF0, 0xA1, 0xED, 0xF5, 0x15, 0xFD, 0xD4, 0xFE, 0x13, 0x01, 0xFE, 0x11, 0x80, 0xFD, 0xF0, 0x01, 0xFE, 0x0F, 0x80, 0xFE, 0x30, 0x02, 0xFE, 0x10, 0x8A, 0xFE, 0x32, 0xFE, 0x33, 0xFE, 0x16, 0xC3, 0xF0, 0x89, 0xEC, 0x92, 0x0E, 0xA2, 0x90, 0xB3, 0x32, 0xD3, 0xF6, 0xDC, 0x78, 0xE4, 0x98, 0x01, 0xDC, 0x57, 0x03, 0xE4, 0x57, 0x02, 0xE4, 0x56, 0x87, 0xDC, 0x35, 0xDC, 0x54, 0xE4, 0x92, 0xFD, 0x94, 0xFE, 0x13, 0xFD, 0xF1, 0xFE, 0x11, 0xFD, 0xF0, 0x03, 0xFE, 0x10, 0x80, 0xFD, 0xF0, 0x06, 0xFD, 0xEF, 0x8A, 0xFD, 0xF0, 0xFE, 0x10, 0xFE, 0x11, 0xFE, 0x33, 0xF5, 0x73, 0xBB, 0x8F, 0x92, 0x6D, 0x92, 0x4E, 0xAA, 0xF2, 0xC3, 0x95, 0xDC, 0x37, 0x01, 0xE4, 0x78, 0x81, 0xE4, 0x37, 0xE4, 0x57, 0x01, 0xE4, 0x37, 0x89, 0xDC, 0x37, 0xE4, 0x57, 0xE4, 0x36, 0xDC, 0x36, 0xE4, 0x56, 0xE4, 0x55, 0xE4, 0x73, 0xF5, 0x33, 0xFD, 0xF3, 0xFE, 0x12, 0x01, 0xFE, 0x11, 0x83, 0xFE, 0x10, 0xFD, 0xF0, 0xFD, 0xEF, 0xFD, + 0xF0, 0x05, 0xFD, 0xEF, 0x01, 0xFE, 0x0F, 0x01, 0xFE, 0x10, 0x8A, 0xFE, 0x11, 0xFD, 0xF1, 0xFD, 0xF3, 0xED, 0x53, 0xBB, 0x8F, 0x9A, 0x6D, 0x9A, 0x4F, 0xB3, 0x12, 0xCB, 0xB5, 0xDC, 0x37, 0xE4, 0x78, 0x04, 0xDC, 0x57, 0x81, 0xE4, 0x57, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x84, 0xDC, 0x36, 0xDC, 0x55, 0xDC, 0x74, 0xF5, 0x96, 0xFD, 0xD6, 0x01, 0xFE, 0x16, 0x86, 0xF5, 0xB6, 0xAB, 0x4E, 0x8A, 0x0B, 0x8A, 0x0D, 0xA2, 0xD0, 0xC3, 0xB4, 0xDC, 0x37, 0x02, 0xE4, 0x77, 0x04, 0xDC, 0x57, 0x82, 0xE4, 0x57, 0xDC, 0x57, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x0A, 0xDC, 0x56, 0x01, 0xDC, 0x55, 0x03, 0xDC, 0x75, 0x83, 0xE4, 0x95, 0xED, 0x17, 0xFD, 0x9A, 0x89, 0xCE, 0x01, 0x91, 0xEF, 0x82, 0xB3, 0x13, 0xE4, 0x78, 0xE4, 0x58, 0x01, 0xDC, 0x57, 0x81, 0xE4, 0x57, 0xDC, 0x57, 0x05, 0xE4, 0x57, 0x01, 0xDC, 0x36, 0x07, 0xDC, 0x56, 0x01, 0xE4, 0x56, 0x01, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x07, 0xE4, 0x57, 0x01, 0xE4, 0x76, 0x88, 0xE4, 0x56, 0xE4, 0x55, 0xDC, 0x35, 0xDC, 0x54, 0xE4, 0xB3, 0xFD, 0x94, 0xFD, 0xF3, 0xFE, 0x12, 0xFD, 0xF1, 0x02, 0xFD, 0xF0, 0x02, 0xFD, 0xEF, 0x80, 0xFE, 0x0F, 0x12, 0xFD, 0xEF, 0x01, 0xFE, 0x0F, 0x01, 0xFE, 0x10, 0x01, 0xFE, 0x31, 0x89, 0xFE, 0x32, 0xFE, 0x34, 0xD4, 0xB1, 0x89, 0xEB, 0x92, 0x0D, 0x9A, 0x6F, 0xBB, 0x53, 0xDC, 0x37, 0xE4, 0x78, 0xE4, 0x77, 0x02, 0xE4, 0x57, 0x83, 0xDC, 0x57, 0xDC, 0x36, 0xDC, 0x37, 0xDC, 0x57, 0x02, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x80, 0xDC, 0x56, 0x02, 0xE4, 0x56, 0x01, 0xE4, 0x76, 0x87, 0xE4, 0x97, + 0xE4, 0x77, 0xB3, 0x33, 0x9A, 0x50, 0x9A, 0x30, 0xAA, 0xD2, 0xCB, 0xD6, 0xDC, 0x37, 0x01, 0xE4, 0x78, 0x01, 0xDC, 0x57, 0x82, 0xDC, 0x36, 0xE4, 0x57, 0xDC, 0x57, 0x02, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x03, 0xDC, 0x56, 0x06, 0xE4, 0x56, 0x01, 0xE4, 0x57, 0x07, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x81, 0xDC, 0x57, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x86, 0xDC, 0x35, 0xDC, 0x54, 0xE4, 0x92, 0xFD, 0x74, 0xFD, 0xD3, 0xFD, 0xD2, 0xFD, 0xF2, 0x02, 0xFD, 0xF1, 0x82, 0xFD, 0xF0, 0xFE, 0x10, 0xFD, 0xF0, 0x01, 0xFE, 0x10, 0x01, 0xFE, 0x11, 0x01, 0xFE, 0x12, 0x88, 0xFE, 0x15, 0xD4, 0x72, 0x9A, 0x6D, 0x92, 0x0D, 0x92, 0x2F, 0xC3, 0x74, 0xD3, 0xF6, 0xDC, 0x37, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x02, 0xDC, 0x57, 0x80, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x80, 0xDC, 0x36, 0x01, 0xE4, 0x55, 0x82, 0xDC, 0x53, 0xF5, 0x54, 0xFE, 0x14, 0x04, 0xFE, 0x13, 0x83, 0xFE, 0x12, 0xFE, 0x13, 0xFE, 0x12, 0xFE, 0x13, 0x02, 0xFE, 0x33, 0x8E, 0xFD, 0xF4, 0xFD, 0xD4, 0xFD, 0xD6, 0xFD, 0x78, 0x9A, 0x10, 0x99, 0xF3, 0x99, 0xF4, 0x9A, 0x16, 0x9A, 0x58, 0x8A, 0x7A, 0x39, 0x18, 0x29, 0x3A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x7D, 0x01, 0x09, 0x9E, 0x80, 0x01, 0x9E, 0x03, 0x01, 0x9F, 0x81, 0x01, 0xBF, 0x01, 0x9F, 0x06, 0x01, 0xBF, 0x01, 0x01, 0xBE, 0x94, 0x01, 0xBD, 0x01, 0xDC, 0x02, 0x5B, 0x03, 0x5A, 0x14, 0xDC, 0x3E, 0xFF, 0x2F, 0x5C, 0x0F, 0x15, 0x0F, 0x33, 0x0F, 0x53, 0x0F, 0x33, 0x1F, 0x56, 0x37, 0x38, 0x67, 0x3C, 0x75, 0xFB, 0x52, 0x92, 0x72, 0x54, 0x82, 0x15, 0x81, 0xF5, 0x71, + 0x94, 0x69, 0x93, 0x01, 0x61, 0x93, 0x82, 0x59, 0xD4, 0x51, 0xB3, 0x51, 0x93, 0x01, 0x49, 0x93, 0x88, 0x49, 0x92, 0x49, 0xB3, 0x41, 0x92, 0x41, 0x72, 0x41, 0x92, 0x39, 0x72, 0x39, 0x71, 0x39, 0x51, 0x39, 0x71, 0x01, 0x39, 0x51, 0x01, 0x31, 0x50, 0x01, 0x31, 0x30, 0x80, 0x31, 0x50, 0x01, 0x29, 0x30, 0x80, 0x31, 0x30, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x07, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x19, 0x31, 0x11, 0x32, 0x19, 0xB5, 0x01, 0x19, 0xD7, 0x82, 0x19, 0x75, 0x10, 0xF1, 0x19, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x89, 0x21, 0x32, 0x19, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x21, 0xF6, 0x19, 0xD6, 0x19, 0x94, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, + 0x19, 0x11, 0x19, 0x53, 0x11, 0x95, 0x19, 0xD7, 0x01, 0x11, 0xF8, 0x82, 0x11, 0xF7, 0x09, 0x96, 0x09, 0x76, 0x01, 0x09, 0x75, 0x87, 0x19, 0xD7, 0x19, 0xF8, 0x1A, 0x18, 0x19, 0xF8, 0x11, 0xB7, 0x11, 0x75, 0x09, 0x34, 0x11, 0x13, 0x09, 0x11, 0x12, 0x81, 0x11, 0x32, 0x11, 0x12, 0x01, 0x11, 0x32, 0x01, 0x11, 0x12, 0x01, 0x11, 0x11, 0x07, 0x11, 0x12, 0x80, 0x11, 0x11, 0x03, 0x11, 0x12, 0x02, 0x11, 0x32, 0x80, 0x19, 0x52, 0x02, 0x19, 0x32, 0x01, 0x10, 0xF1, 0x87, 0x18, 0xF1, 0x19, 0x11, 0x19, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x85, 0x2A, 0x57, 0x11, 0x74, 0x11, 0x33, 0x11, 0x12, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, + 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x0A, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x0E, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x19, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x86, 0x21, 0x51, 0x19, 0x31, 0x11, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x22, 0x17, 0x01, 0x21, 0xF6, 0x82, 0x21, 0xD6, 0x19, 0x74, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x19, 0x10, 0x02, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, + 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x0A, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x06, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x09, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x8F, 0x28, 0xEE, 0x30, 0xCE, 0x38, 0x6C, 0xA2, 0x94, 0xAA, 0x53, 0xB2, 0x32, 0xB2, 0x11, 0xA9, 0xF0, 0xA1, 0xED, 0xEC, 0xB4, 0xFD, 0xD5, 0xFE, 0x13, 0xFE, 0x12, 0xFE, 0x11, 0xFE, 0x10, 0xFE, 0x0F, 0x03, 0xFE, 0x30, 0x8B, 0xFE, 0x10, 0xFE, 0x32, 0xFE, 0x54, 0xFE, 0x36, 0xC3, 0xF0, 0x89, 0xEC, 0x92, 0x0E, 0xA2, 0x90, 0xB3, 0x32, 0xD4, 0x16, 0xE4, 0x78, 0xE4, 0x98, 0x05, 0xE4, 0x57, 0x80, 0xDC, 0x56, 0x01, 0xE4, 0x56, 0x87, 0xDC, 0x55, 0xDC, 0x53, 0xDC, 0x92, 0xFD, 0x93, 0xFE, 0x13, 0xFE, 0x32, 0xFE, 0x11, 0xFE, 0x31, 0x01, 0xFE, 0x30, 0x03, 0xFE, 0x10, 0x80, 0xFE, 0x0F, 0x01, 0xFE, 0x30, 0x01, 0xFE, 0x0F, 0x81, 0xFE, 0x10, 0xFE, 0x30, 0x01, 0xFE, 0x31, 0x89, 0xFE, 0x33, 0xED, 0x53, 0xBB, 0x8F, 0x92, 0x4D, 0x92, 0x4E, 0xAA, 0xF2, 0xC3, 0x95, 0xDC, 0x37, 0xE4, 0x78, 0xE4, 0x58, 0x01, 0xE4, 0x57, 0x01, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x02, 0xE4, 0x56, 0x84, 0xE4, 0x55, 0xDC, 0x73, 0xF5, 0x33, 0xFD, 0xF3, 0xFE, 0x12, 0x01, 0xFE, 0x11, 0x02, 0xFE, 0x10, 0x03, 0xFE, 0x0F, 0x80, 0xFE, 0x10, 0x03, 0xFE, 0x0F, 0x81, 0xFE, 0x10, 0xFE, 0x30, 0x01, + 0xFE, 0x31, 0x87, 0xFE, 0x33, 0xF5, 0x73, 0xBB, 0x8F, 0x9A, 0x6D, 0x9A, 0x2F, 0xB2, 0xF2, 0xC3, 0x95, 0xDC, 0x37, 0x01, 0xDC, 0x57, 0x01, 0xE4, 0x77, 0x80, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x80, 0xDC, 0x57, 0x02, 0xDC, 0x56, 0x90, 0xDC, 0x55, 0xDC, 0x74, 0xF5, 0x96, 0xFD, 0xF5, 0xFE, 0x15, 0xFE, 0x35, 0xFE, 0x36, 0xF5, 0xB5, 0x9A, 0xCC, 0x8A, 0x2C, 0x92, 0x6E, 0xB3, 0x32, 0xCB, 0xF5, 0xDC, 0x36, 0xDC, 0x77, 0xE4, 0x77, 0xDC, 0x77, 0x05, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x81, 0xDC, 0x57, 0xE4, 0x57, 0x04, 0xDC, 0x56, 0x81, 0xE4, 0x76, 0xE4, 0x56, 0x06, 0xDC, 0x56, 0x85, 0xDC, 0x76, 0xDC, 0x75, 0xDC, 0x96, 0xED, 0x17, 0xFD, 0x7A, 0x89, 0xCE, 0x01, 0x91, 0xEF, 0x80, 0xB3, 0x13, 0x01, 0xE4, 0x78, 0x80, 0xDC, 0x58, 0x06, 0xDC, 0x57, 0x02, 0xE4, 0x57, 0x82, 0xDC, 0x36, 0xE4, 0x57, 0xDC, 0x57, 0x07, 0xDC, 0x56, 0x03, 0xDC, 0x57, 0x04, 0xE4, 0x57, 0x80, 0xE4, 0x77, 0x01, 0xE4, 0x57, 0x02, 0xE4, 0x56, 0x86, 0xE4, 0x55, 0xDC, 0x55, 0xDC, 0x54, 0xE4, 0xB3, 0xFD, 0xB4, 0xFE, 0x13, 0xFE, 0x12, 0x01, 0xFE, 0x11, 0x01, 0xFE, 0x10, 0x81, 0xFE, 0x0F, 0xFE, 0x10, 0x16, 0xFE, 0x0F, 0x8C, 0xFE, 0x2F, 0xFE, 0x30, 0xFE, 0x50, 0xFE, 0x51, 0xFE, 0x52, 0xFE, 0x53, 0xFE, 0x15, 0x9A, 0x8B, 0x92, 0x2C, 0x9A, 0x4E, 0xAA, 0xF1, 0xD4, 0x16, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x01, 0xE4, 0x77, 0x01, 0xDC, 0x57, 0x83, 0xDC, 0x36, 0xDC, 0x57, 0xDC, 0x56, 0xDC, 0x57, 0x05, 0xDC, 0x56, 0x80, 0xE4, 0x56, 0x01, 0xE4, 0x76, 0x89, 0xE4, 0x97, 0xE4, 0x77, 0xBB, 0x33, + 0x9A, 0x51, 0x9A, 0x31, 0xAA, 0xD3, 0xD3, 0xF6, 0xDC, 0x37, 0xE4, 0x78, 0xE4, 0x77, 0x04, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x81, 0xE4, 0x57, 0xDC, 0x56, 0x01, 0xE4, 0x56, 0x80, 0xDC, 0x56, 0x02, 0xE4, 0x56, 0x06, 0xDC, 0x56, 0x07, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xE4, 0x57, 0x81, 0xDC, 0x57, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x85, 0xDC, 0x35, 0xDC, 0x34, 0xE4, 0x92, 0xFD, 0x94, 0xFD, 0xF3, 0xFD, 0xF2, 0x04, 0xFE, 0x11, 0x01, 0xFE, 0x31, 0x8C, 0xFE, 0x11, 0xFE, 0x10, 0xFE, 0x11, 0xFE, 0x31, 0xFE, 0x32, 0xFE, 0x33, 0xFE, 0x35, 0xD4, 0x92, 0x9A, 0x6D, 0x92, 0x0D, 0x9A, 0x2F, 0xC3, 0x94, 0xD4, 0x17, 0x06, 0xDC, 0x57, 0x80, 0xE4, 0x77, 0x02, 0xE4, 0x56, 0x85, 0xE4, 0x55, 0xDC, 0x55, 0xDC, 0x53, 0xF5, 0x74, 0xFE, 0x14, 0xFE, 0x34, 0x0A, 0xFE, 0x33, 0x91, 0xFE, 0x14, 0xFE, 0x15, 0xFD, 0xF6, 0xFD, 0x57, 0x9A, 0x10, 0x99, 0xF3, 0x99, 0xD4, 0x9A, 0x16, 0x9A, 0x58, 0x8A, 0x7B, 0x39, 0x18, 0x29, 0x3A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x7D, 0x09, 0x7E, 0x09, 0x9E, 0x01, 0x9E, 0x03, 0x01, 0x9F, 0x81, 0x01, 0xBF, 0x01, 0x9F, 0x06, 0x01, 0xBF, 0x01, 0x01, 0xBE, 0x87, 0x01, 0xBD, 0x01, 0xDC, 0x02, 0x7B, 0x03, 0x9A, 0x15, 0x1C, 0x36, 0xFF, 0x2F, 0x5C, 0x0F, 0x15, 0x01, 0x0F, 0x53, 0x8E, 0x0F, 0x33, 0x27, 0x56, 0x37, 0x18, 0x67, 0x3C, 0x65, 0x79, 0x4A, 0x92, 0x72, 0x54, 0x82, 0x35, 0x79, 0xD4, 0x69, 0x94, 0x61, 0x73, 0x61, 0x93, 0x59, 0x93, 0x59, 0xB3, 0x51, 0xB3, 0x01, 0x49, 0x93, 0x82, 0x49, 0x92, 0x49, 0x93, 0x49, 0x92, 0x02, 0x41, 0x72, + 0x80, 0x39, 0x51, 0x02, 0x39, 0x71, 0x81, 0x39, 0x51, 0x31, 0x51, 0x01, 0x31, 0x50, 0x02, 0x31, 0x30, 0x82, 0x29, 0x30, 0x29, 0x2F, 0x31, 0x30, 0x0D, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8A, 0x19, 0x31, 0x11, 0x12, 0x19, 0x95, 0x19, 0xD7, 0x19, 0xB6, 0x19, 0x75, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x92, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x22, 0x17, 0x21, 0xF6, 0x11, 0x74, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x84, 0x19, 0x11, 0x19, 0x33, 0x11, 0x74, 0x11, 0xB6, 0x19, 0xF7, 0x01, 0x11, 0xF8, 0x03, 0x11, 0xB7, 0x01, 0x19, 0xF7, 0x83, 0x19, 0xD7, 0x11, 0xB6, 0x19, 0x95, 0x11, 0x34, 0x01, 0x11, 0x12, 0x80, 0x11, 0x11, 0x06, 0x19, 0x11, + 0x01, 0x19, 0x10, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x10, 0x80, 0x19, 0x30, 0x01, 0x19, 0x10, 0x08, 0x19, 0x11, 0x80, 0x19, 0x10, 0x01, 0x19, 0x11, 0x80, 0x19, 0x31, 0x04, 0x19, 0x11, 0x80, 0x19, 0x31, 0x02, 0x19, 0x11, 0x81, 0x21, 0x11, 0x19, 0x10, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x86, 0x1A, 0x17, 0x19, 0xF6, 0x11, 0x74, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, + 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x19, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x0B, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x01, 0x11, 0x32, 0x81, 0x11, 0x74, 0x21, 0xF6, 0x01, 0x22, 0x17, 0x83, 0x19, 0xD5, 0x11, 0x53, 0x11, 0x12, 0x10, 0xF1, 0x01, 0x19, 0x11, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x06, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, + 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x07, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x91, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x28, 0xEE, 0x30, 0xEE, 0x38, 0x6C, 0x9A, 0x94, 0xB2, 0x73, 0xB2, 0x32, 0xB2, 0x11, 0xA9, 0xF0, 0xA1, 0xEE, 0xE4, 0x93, 0xFD, 0xD5, 0xFE, 0x34, 0xFE, 0x32, 0xFE, 0x31, 0x01, 0xFE, 0x30, 0x03, 0xFE, 0x50, 0x8B, 0xFE, 0x30, 0xFE, 0x72, 0xFE, 0x74, 0xFE, 0x36, 0xBB, 0xF0, 0x89, 0xEC, 0x92, 0x0E, 0xA2, 0x90, 0xB3, 0x12, 0xD3, 0xF6, 0xE4, 0x77, 0xE4, 0x98, 0x05, 0xE4, 0x57, 0x02, 0xE4, 0x56, 0x84, 0xDC, 0x55, 0xDC, 0x53, 0xE4, 0xB2, 0xFD, 0xB4, 0xFE, 0x33, 0x01, 0xFE, 0x31, 0x02, 0xFE, 0x30, 0x01, 0xFE, 0x2F, 0x06, 0xFE, 0x30, 0x01, 0xFE, 0x50, 0x01, 0xFE, 0x51, 0x87, 0xFE, 0x53, 0xED, 0x73, 0xB3, 0x8F, 0x92, 0x6D, 0x9A, 0x6F, 0xB3, 0x12, 0xC3, 0x95, 0xDC, 0x37, 0x01, 0xE4, 0x78, 0x81, 0xE4, 0x57, 0xE4, 0x37, 0x03, 0xE4, 0x57, 0x02, 0xE4, 0x56, 0x85, 0xE4, 0x75, 0xDC, 0x52, 0xF5, 0x52, 0xFE, 0x13, 0xFE, 0x32, 0xFE, 0x31, 0x03, 0xFE, 0x30, 0x01, 0xFE, 0x2F, 0x01, 0xFE, 0x30, 0x01, 0xFE, 0x2F, 0x82, 0xFE, 0x30, 0xFE, 0x2F, 0xFE, 0x10, 0x01, 0xFE, 0x30, 0x8A, 0xFE, 0x51, 0xFE, 0x52, 0xFE, 0x54, 0xF5, 0x93, 0xBB, 0x8F, 0x92, 0x4D, 0x92, 0x4F, 0xAA, 0xF2, 0xC3, 0x95, 0xDC, + 0x57, 0xE4, 0x78, 0x01, 0xDC, 0x57, 0x82, 0xE4, 0x77, 0xDC, 0x57, 0xDC, 0x36, 0x04, 0xDC, 0x56, 0x83, 0xDC, 0x75, 0xDC, 0x94, 0xF5, 0xB5, 0xFE, 0x35, 0x01, 0xFE, 0x34, 0x88, 0xFE, 0x54, 0xFE, 0x55, 0xE5, 0x53, 0x92, 0xAB, 0x8A, 0x4C, 0x92, 0x6E, 0xBB, 0x93, 0xCC, 0x15, 0xDC, 0x56, 0x02, 0xDC, 0x77, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x56, 0x03, 0xDC, 0x57, 0x84, 0xE4, 0x57, 0xDC, 0x56, 0xDC, 0x57, 0xDC, 0x56, 0xDC, 0x57, 0x04, 0xDC, 0x56, 0x80, 0xE4, 0x56, 0x03, 0xDC, 0x56, 0x01, 0xDC, 0x76, 0x89, 0xDC, 0x96, 0xED, 0x18, 0xFD, 0x9B, 0x89, 0xCE, 0x92, 0x10, 0x91, 0xEF, 0xB3, 0x13, 0xE4, 0x78, 0xDC, 0x58, 0xDC, 0x78, 0x05, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x84, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x57, 0xDC, 0x36, 0x01, 0xE4, 0x57, 0x03, 0xDC, 0x56, 0x85, 0xE4, 0x57, 0xDC, 0x36, 0xDC, 0x57, 0xDC, 0x36, 0xDC, 0x57, 0xDC, 0x37, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x56, 0x03, 0xDC, 0x57, 0x82, 0xDC, 0x56, 0xE4, 0x56, 0xDC, 0x56, 0x01, 0xDC, 0x55, 0x85, 0xDC, 0x53, 0xE4, 0xB2, 0xFD, 0xB4, 0xFE, 0x13, 0xFE, 0x32, 0xFE, 0x11, 0x05, 0xFE, 0x30, 0x16, 0xFE, 0x2F, 0x01, 0xFE, 0x50, 0x01, 0xFE, 0x51, 0x87, 0xFE, 0x52, 0xFE, 0x54, 0xDC, 0xB1, 0x92, 0x6B, 0x92, 0x4D, 0x9A, 0x6E, 0xC3, 0x93, 0xDC, 0x56, 0x03, 0xE4, 0x77, 0x81, 0xE4, 0x57, 0xDC, 0x57, 0x02, 0xDC, 0x56, 0x81, 0xDC, 0x36, 0xDC, 0x56, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x56, 0x01, 0xE4, 0x56, 0x80, 0xDC, 0x56, 0x01, 0xE4, 0x76, 0x89, 0xE4, 0x97, 0xE4, 0x77, 0xBB, 0x33, 0x9A, 0x50, + 0x9A, 0x30, 0xB2, 0xF3, 0xD3, 0xF7, 0xDC, 0x57, 0xE4, 0x78, 0xE4, 0x77, 0x04, 0xDC, 0x57, 0x01, 0xDC, 0x36, 0x80, 0xDC, 0x56, 0x01, 0xDC, 0x57, 0x03, 0xDC, 0x56, 0x80, 0xE4, 0x57, 0x01, 0xDC, 0x56, 0x03, 0xDC, 0x57, 0x03, 0xDC, 0x56, 0x81, 0xDC, 0x36, 0xDC, 0x57, 0x04, 0xDC, 0x37, 0x02, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x85, 0xDC, 0x55, 0xDC, 0x54, 0xE4, 0xB3, 0xFD, 0xB4, 0xFE, 0x13, 0xFE, 0x12, 0x01, 0xFE, 0x11, 0x05, 0xFE, 0x31, 0x80, 0xFE, 0x30, 0x01, 0xFE, 0x31, 0x88, 0xFE, 0x52, 0xFE, 0x32, 0xFE, 0x55, 0xDC, 0xB2, 0x9A, 0x6D, 0x92, 0x0D, 0x9A, 0x4F, 0xC3, 0x95, 0xD4, 0x16, 0x04, 0xDC, 0x57, 0x8B, 0xE4, 0x57, 0xDC, 0x57, 0xE4, 0x77, 0xE4, 0x76, 0xDC, 0x56, 0xDC, 0x36, 0xE4, 0x55, 0xDC, 0x35, 0xDC, 0x53, 0xF5, 0x74, 0xFE, 0x35, 0xFE, 0x34, 0x01, 0xFE, 0x53, 0x83, 0xFE, 0x33, 0xFE, 0x32, 0xFE, 0x53, 0xFE, 0x33, 0x01, 0xFE, 0x53, 0x91, 0xFE, 0x33, 0xFE, 0x53, 0xFE, 0x54, 0xFE, 0x55, 0xFE, 0x36, 0xFE, 0x17, 0xEC, 0xF6, 0x9A, 0x10, 0x99, 0xD3, 0xA1, 0xF5, 0x9A, 0x16, 0x9A, 0x58, 0x82, 0x5A, 0x39, 0x18, 0x29, 0x3A, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x7D, 0x02, 0x09, 0x9E, 0x80, 0x01, 0x9E, 0x01, 0x01, 0x9F, 0x80, 0x01, 0x9E, 0x08, 0x01, 0xBF, 0x01, 0x01, 0xBE, 0x97, 0x01, 0xDD, 0x01, 0xDB, 0x02, 0x7A, 0x03, 0xFB, 0x1D, 0x7C, 0x36, 0xFF, 0x2F, 0x7C, 0x0F, 0x15, 0x0F, 0x33, 0x0F, 0x53, 0x0F, 0x33, 0x27, 0x77, 0x3F, 0x39, 0x5F, 0x3C, 0x5D, 0x38, 0x4A, 0xB3, 0x72, 0x74, 0x82, 0x55, 0x71, 0xB4, 0x69, 0x94, 0x61, 0x94, 0x59, 0x73, + 0x61, 0xB4, 0x59, 0xB3, 0x01, 0x51, 0x93, 0x82, 0x49, 0x73, 0x49, 0x72, 0x49, 0x93, 0x01, 0x49, 0x92, 0x81, 0x41, 0x72, 0x39, 0x71, 0x02, 0x39, 0x51, 0x82, 0x39, 0x71, 0x39, 0x51, 0x31, 0x51, 0x02, 0x31, 0x30, 0x80, 0x31, 0x50, 0x01, 0x31, 0x30, 0x81, 0x31, 0x50, 0x31, 0x30, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x06, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x08, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x30, 0x86, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x19, 0x31, 0x11, 0x32, 0x19, 0x95, 0x01, 0x19, 0xD7, 0x85, 0x11, 0x95, 0x11, 0x11, 0x19, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x84, 0x21, 0x31, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x01, 0x21, 0xF6, 0x83, 0x19, 0x95, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x8B, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x10, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x96, 0x19, 0xD7, 0x19, 0xF8, 0x19, 0xD7, 0x11, 0xB7, 0x01, 0x11, 0xB6, 0x87, 0x11, 0x96, 0x19, 0xB5, 0x19, 0x95, 0x11, 0x74, 0x19, 0x54, + 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x01, 0x19, 0x10, 0x80, 0x21, 0x51, 0x07, 0x21, 0x30, 0x80, 0x21, 0x50, 0x04, 0x21, 0x30, 0x86, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x31, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x02, 0x21, 0x30, 0x83, 0x21, 0x10, 0x19, 0x10, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x21, 0x10, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x84, 0x11, 0xB6, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x53, 0x01, 0x19, 0x32, 0x81, 0x21, 0x31, 0x21, 0x10, 0x04, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x81, + 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x06, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x14, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x0E, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x15, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8C, 0x11, 0x32, 0x11, 0x52, 0x11, 0x74, 0x21, 0xF6, 0x22, 0x17, 0x21, 0xF6, 0x19, 0xB5, 0x19, 0x74, 0x19, 0x53, 0x11, 0x11, 0x10, 0xF1, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x86, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0E, 0x21, 0x2E, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x82, 0x21, + 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x09, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x92, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x28, 0xEE, 0x30, 0xEE, 0x38, 0x6C, 0x9A, 0x94, 0xB2, 0x73, 0xB2, 0x32, 0xAA, 0x11, 0xA9, 0xF1, 0xA1, 0xEE, 0xE4, 0x93, 0xFD, 0xF5, 0xFE, 0x34, 0xFE, 0x52, 0x01, 0xFE, 0x51, 0x01, 0xFE, 0x50, 0x80, 0xFE, 0x4F, 0x01, 0xFE, 0x50, 0x89, 0xFE, 0x71, 0xFE, 0x92, 0xFE, 0x74, 0xFE, 0x56, 0xBB, 0xF0, 0x8A, 0x0C, 0x92, 0x2E, 0xA2, 0x90, 0xB3, 0x12, 0xD3, 0xF6, 0x01, 0xE4, 0x77, 0x02, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x82, 0xE4, 0x57, 0xE4, 0x56, 0xDC, 0x36, 0x01, 0xE4, 0x55, 0x85, 0xDC, 0x53, 0xDC, 0xB2, 0xFD, 0xD4, 0xFE, 0x33, 0xFE, 0x52, 0xFE, 0x51, 0x01, 0xFE, 0x50, 0x02, 0xFE, 0x2F, 0x81, 0xFE, 0x4F, 0xFE, 0x50, 0x01, 0xFE, 0x4F, 0x80, 0xFE, 0x50, 0x01, 0xFE, 0x2F, 0x80, 0xFE, 0x50, 0x01, 0xFE, 0x71, 0x88, 0xFE, 0x72, 0xFE, 0x53, 0xED, 0x93, 0xB3, 0x8E, 0x92, 0x6D, 0x92, 0x4E, 0xAB, 0x12, 0xC3, 0x94, 0xDC, 0x37, 0x01, 0xE4, 0x58, 0x05, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x83, 0xE4, 0x55, 0xDC, 0x54, 0xDC, 0x52, 0xF5, 0x93, 0x01, 0xFE, 0x32, 0x80, 0xFE, 0x31, 0x04, 0xFE, 0x30, 0x01, 0xFE, 0x50, 0x03, 0xFE, 0x30, 0x80, 0xFE, 0x2F, 0x01, 0xFE, 0x30, + 0x8C, 0xFE, 0x50, 0xFE, 0x71, 0xFE, 0x72, 0xFE, 0x54, 0xED, 0x93, 0xB3, 0x6E, 0x92, 0x4D, 0x92, 0x2E, 0xAA, 0xF2, 0xC3, 0xB5, 0xDC, 0x57, 0xE4, 0x78, 0xE4, 0x57, 0x01, 0xDC, 0x57, 0x82, 0xDC, 0x36, 0xDC, 0x56, 0xE4, 0x57, 0x02, 0xDC, 0x56, 0x01, 0xDC, 0x55, 0x82, 0xDC, 0x94, 0xF5, 0xD5, 0xFE, 0x55, 0x01, 0xFE, 0x54, 0x89, 0xFE, 0x73, 0xFE, 0x54, 0xFE, 0x55, 0xE5, 0x53, 0x92, 0x8B, 0x8A, 0x6C, 0x9A, 0xAF, 0xC3, 0xD4, 0xD4, 0x15, 0xDC, 0x56, 0x03, 0xDC, 0x77, 0x80, 0xDC, 0x56, 0x01, 0xDC, 0x77, 0x02, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x82, 0xE4, 0x77, 0xDC, 0x56, 0xDC, 0x57, 0x09, 0xDC, 0x56, 0x01, 0xDC, 0x76, 0x87, 0xE4, 0x96, 0xEC, 0xF8, 0xFD, 0x9B, 0x89, 0xCE, 0x9A, 0x10, 0x91, 0xEF, 0xB3, 0x13, 0xE4, 0x78, 0x01, 0xDC, 0x78, 0x06, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x81, 0xDC, 0x56, 0xDC, 0x57, 0x04, 0xDC, 0x56, 0x01, 0xDC, 0x36, 0x80, 0xDC, 0x37, 0x04, 0xDC, 0x57, 0x03, 0xDC, 0x56, 0x80, 0xDC, 0x57, 0x03, 0xDC, 0x56, 0x01, 0xDC, 0x55, 0x84, 0xDC, 0x53, 0xDC, 0x92, 0xFD, 0xB4, 0xFE, 0x13, 0xFE, 0x32, 0x01, 0xFE, 0x51, 0x06, 0xFE, 0x50, 0x04, 0xFE, 0x4F, 0x81, 0xFE, 0x2F, 0xFE, 0x4F, 0x01, 0xFE, 0x2F, 0x81, 0xFE, 0x4F, 0xFE, 0x2F, 0x04, 0xFE, 0x4F, 0x80, 0xFE, 0x2F, 0x04, 0xFE, 0x4F, 0x01, 0xFE, 0x70, 0x01, 0xFE, 0x71, 0x88, 0xFE, 0x53, 0xFE, 0x14, 0xB3, 0x8D, 0x92, 0x4B, 0x92, 0x4D, 0xA2, 0xCF, 0xD4, 0x35, 0xDC, 0x77, 0xE4, 0x77, 0x01, 0xDC, 0x57, 0x02, 0xE4, 0x57, 0x84, 0xDC, 0x57, 0xDC, 0x36, 0xDC, 0x56, + 0xDC, 0x36, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x8E, 0xE4, 0x57, 0xDC, 0x57, 0xE4, 0x77, 0xDC, 0x76, 0xE4, 0x77, 0xE4, 0x97, 0xE4, 0x77, 0xBB, 0x53, 0x9A, 0x50, 0x9A, 0x30, 0xB2, 0xF3, 0xCB, 0xD6, 0xDC, 0x57, 0xE4, 0x78, 0xE4, 0x77, 0x04, 0xDC, 0x57, 0x01, 0xDC, 0x36, 0x08, 0xDC, 0x56, 0x01, 0xDC, 0x36, 0x81, 0xDC, 0x57, 0xDC, 0x36, 0x01, 0xDC, 0x57, 0x02, 0xDC, 0x56, 0x01, 0xDC, 0x57, 0x82, 0xDC, 0x37, 0xDC, 0x57, 0xE4, 0x57, 0x02, 0xDC, 0x37, 0x82, 0xDC, 0x36, 0xDC, 0x56, 0xDC, 0x36, 0x01, 0xDC, 0x55, 0x84, 0xDC, 0x54, 0xE4, 0xB3, 0xFD, 0xB4, 0xFE, 0x13, 0xFE, 0x32, 0x04, 0xFE, 0x31, 0x01, 0xFE, 0x30, 0x80, 0xFE, 0x50, 0x02, 0xFE, 0x51, 0x8A, 0xFE, 0x52, 0xFE, 0x73, 0xFE, 0x55, 0xDC, 0xD3, 0x9A, 0x6C, 0x92, 0x0D, 0x92, 0x2F, 0xC3, 0x74, 0xD4, 0x16, 0xDC, 0x57, 0xE4, 0x77, 0x04, 0xDC, 0x57, 0x82, 0xE4, 0x77, 0xE4, 0x76, 0xDC, 0x36, 0x02, 0xDC, 0x35, 0x83, 0xDC, 0x53, 0xF5, 0x94, 0xFE, 0x35, 0xFE, 0x54, 0x01, 0xFE, 0x53, 0x01, 0xFE, 0x52, 0x03, 0xFE, 0x53, 0x80, 0xFE, 0x74, 0x01, 0xFE, 0x54, 0x8F, 0xFE, 0x75, 0xFE, 0x56, 0xFE, 0x18, 0xDC, 0x75, 0x99, 0xF1, 0xA1, 0xF3, 0xA1, 0xF5, 0xA2, 0x37, 0x9A, 0x58, 0x82, 0x3A, 0x38, 0xF8, 0x29, 0x1A, 0x21, 0x5B, 0x19, 0x7D, 0x11, 0x7D, 0x09, 0x7E, 0x01, 0x09, 0x9E, 0x80, 0x01, 0x9E, 0x03, 0x01, 0x9F, 0x07, 0x01, 0xBF, 0x01, 0x01, 0xBE, 0x87, 0x01, 0xDD, 0x01, 0xFB, 0x02, 0x9A, 0x0C, 0x5B, 0x1D, 0xBD, 0x2E, 0xFE, 0x2F, 0x5B, 0x0F, 0x15, 0x02, 0x0F, 0x33, 0x86, 0x27, 0x77, 0x37, 0x39, + 0x5F, 0x1C, 0x4C, 0xF7, 0x4A, 0xD3, 0x72, 0x95, 0x7A, 0x15, 0x01, 0x69, 0x94, 0x82, 0x61, 0x93, 0x61, 0xB4, 0x59, 0xB4, 0x01, 0x51, 0x93, 0x02, 0x49, 0x93, 0x80, 0x49, 0x72, 0x02, 0x41, 0x72, 0x01, 0x39, 0x71, 0x03, 0x39, 0x51, 0x80, 0x31, 0x30, 0x01, 0x31, 0x50, 0x03, 0x31, 0x30, 0x01, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x07, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x19, 0x31, 0x11, 0x12, 0x19, 0x95, 0x01, 0x19, 0xD7, 0x82, 0x19, 0x95, 0x11, 0x11, 0x19, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x8B, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0x95, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x12, 0x19, 0x32, 0x21, 0x51, 0x03, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x10, 0x8D, 0x19, 0x11, 0x19, 0x32, 0x11, 0x33, 0x11, 0x54, 0x11, 0x75, 0x19, 0xD6, 0x11, 0xB6, 0x11, 0x96, 0x11, 0x95, 0x19, 0x95, 0x11, 0x74, 0x11, 0x54, + 0x11, 0x53, 0x11, 0x32, 0x01, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x09, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x0F, 0x20, 0xEF, 0x01, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x30, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x09, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x06, 0x29, 0x2F, 0x8B, 0x11, 0x95, 0x11, 0xD6, 0x11, 0xB6, 0x19, 0xD6, 0x11, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x06, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x0A, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, + 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x10, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x8B, 0x19, 0x31, 0x19, 0x11, 0x11, 0x32, 0x11, 0x53, 0x11, 0x94, 0x21, 0xF6, 0x22, 0x17, 0x21, 0xF6, 0x19, 0xB5, 0x19, 0x53, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x11, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0E, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x03, 0x29, 0x2F, 0x09, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x0A, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x2F, + 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x0E, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x90, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0E, 0x30, 0xEE, 0x38, 0x8C, 0x92, 0x53, 0xAA, 0x93, 0xB2, 0x52, 0xAA, 0x12, 0xA9, 0xF1, 0xA1, 0xEE, 0xD4, 0x12, 0xFD, 0xF6, 0xFE, 0x54, 0xFE, 0x73, 0xFE, 0x72, 0xFE, 0x71, 0x01, 0xFE, 0x70, 0x8C, 0xFE, 0x4F, 0xFE, 0x6F, 0xFE, 0x70, 0xFE, 0x91, 0xFE, 0x92, 0xFE, 0x94, 0xFE, 0x76, 0xBB, 0xEF, 0x8A, 0x2C, 0x92, 0x2E, 0xA2, 0x90, 0xB3, 0x32, 0xD4, 0x16, 0x01, 0xE4, 0x77, 0x03, 0xE4, 0x57, 0x81, 0xDC, 0x57, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x85, 0xE4, 0x55, 0xDC, 0x35, 0xDC, 0x53, 0xDC, 0xB1, 0xFD, 0xF4, 0xFE, 0x53, 0x01, 0xFE, 0x71, 0x80, 0xFE, 0x70, 0x01, 0xFE, 0x50, 0x08, 0xFE, 0x4F, 0x8B, 0xFE, 0x50, 0xFE, 0x70, 0xFE, 0x71, 0xFE, 0x72, 0xFE, 0x73, 0xF5, 0xB4, 0xB3, 0x6E, 0x8A, 0x4C, 0x8A, 0x0D, 0xAA, 0xD1, 0xC3, 0xB5, 0xDC, 0x57, 0x01, 0xE4, 0x58, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x84, 0xDC, 0x55, 0xDC, 0x54, 0xDC, 0x52, 0xF5, 0x93, 0xFE, 0x32, 0x01, 0xFE, 0x51, 0x0A, 0xFE, 0x50, 0x80, 0xFE, 0x4F, 0x01, 0xFE, 0x50, 0x8B, 0xFE, 0x70, 0xFE, 0x71, 0xFE, 0x72, 0xFE, 0x74, 0xED, 0x93, 0xB3, 0x8E, 0x92, 0x4D, 0x92, 0x4F, 0xB3, 0x12, 0xCB, 0xB5, 0xE4, 0x58, 0xE4, 0x78, 0x05, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x55, 0x83, 0xD4, 0x73, 0xF5, 0xD4, 0xFE, 0x54, 0xFE, 0x74, 0x02, 0xFE, 0x73, 0x87, 0xFE, 0x74, 0xFE, 0x75, 0xDD, + 0x12, 0x92, 0xAB, 0x92, 0x6C, 0x9A, 0x8E, 0xC3, 0xB3, 0xD4, 0x35, 0x01, 0xDC, 0x56, 0x80, 0xDC, 0x76, 0x02, 0xDC, 0x77, 0x80, 0xDC, 0x57, 0x02, 0xDC, 0x56, 0x80, 0xDC, 0x57, 0x02, 0xDC, 0x56, 0x80, 0xDC, 0x57, 0x07, 0xDC, 0x56, 0x01, 0xE4, 0x76, 0x01, 0xDC, 0x76, 0x89, 0xE4, 0x96, 0xF5, 0x39, 0xFD, 0x9B, 0x89, 0xCE, 0x92, 0x10, 0x91, 0xEF, 0xB2, 0xF3, 0xE4, 0x78, 0xDC, 0x78, 0xDC, 0x77, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x37, 0x84, 0xDC, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x57, 0xDC, 0x37, 0x05, 0xDC, 0x57, 0x86, 0xDC, 0x56, 0xE4, 0x57, 0xE4, 0x56, 0xDC, 0x56, 0xDC, 0x36, 0xDC, 0x57, 0xDC, 0x36, 0x02, 0xDC, 0x57, 0x81, 0xDC, 0x37, 0xDC, 0x57, 0x03, 0xDC, 0x56, 0x01, 0xDC, 0x57, 0x03, 0xDC, 0x56, 0x86, 0xDC, 0x55, 0xDC, 0x53, 0xE4, 0xB2, 0xFD, 0xD4, 0xFE, 0x33, 0xFE, 0x32, 0xFE, 0x51, 0x01, 0xFE, 0x71, 0x01, 0xFE, 0x50, 0x83, 0xFE, 0x70, 0xFE, 0x50, 0xFE, 0x4F, 0xFE, 0x50, 0x05, 0xFE, 0x4F, 0x80, 0xFE, 0x6F, 0x0A, 0xFE, 0x4F, 0x03, 0xFE, 0x6F, 0x01, 0xFE, 0x70, 0x8A, 0xFE, 0x90, 0xFE, 0x91, 0xFE, 0x92, 0xFE, 0x73, 0xF5, 0xF4, 0x92, 0x8A, 0x8A, 0x4B, 0x92, 0x4D, 0xA2, 0xD0, 0xD4, 0x56, 0xDC, 0x56, 0x02, 0xDC, 0x76, 0x01, 0xE4, 0x77, 0x80, 0xDC, 0x56, 0x06, 0xDC, 0x57, 0x8B, 0xE4, 0x57, 0xDC, 0x57, 0xDC, 0x77, 0xE4, 0x77, 0xE4, 0x97, 0xDC, 0x77, 0xBB, 0x53, 0x9A, 0x50, 0x9A, 0x10, 0xAA, 0xD2, 0xCB, 0xB6, 0xDC, 0x57, 0x01, 0xE4, 0x78, 0x03, 0xDC, 0x57, 0x80, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x83, 0xDC, 0x57, 0xDC, 0x36, 0xDC, + 0x57, 0xDC, 0x56, 0x03, 0xDC, 0x57, 0x81, 0xDC, 0x56, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x04, 0xDC, 0x57, 0x84, 0xE4, 0x57, 0xDC, 0x36, 0xDC, 0x57, 0xE4, 0x57, 0xDC, 0x37, 0x03, 0xDC, 0x57, 0x02, 0xDC, 0x56, 0x01, 0xDC, 0x35, 0x85, 0xDC, 0x54, 0xE4, 0xB2, 0xFD, 0xD4, 0xFE, 0x33, 0xFE, 0x32, 0xFE, 0x52, 0x03, 0xFE, 0x51, 0x80, 0xFE, 0x30, 0x01, 0xFE, 0x51, 0x02, 0xFE, 0x71, 0x89, 0xFE, 0x72, 0xFE, 0x93, 0xFE, 0x75, 0xDC, 0xD3, 0x92, 0x6C, 0x8A, 0x0D, 0x92, 0x0E, 0xBB, 0x74, 0xD4, 0x16, 0xDC, 0x57, 0x01, 0xE4, 0x77, 0x01, 0xDC, 0x57, 0x02, 0xE4, 0x57, 0x82, 0xE4, 0x56, 0xDC, 0x35, 0xDC, 0x56, 0x01, 0xDC, 0x55, 0x86, 0xD4, 0x53, 0xF5, 0x94, 0xFE, 0x55, 0xFE, 0x74, 0xFE, 0x73, 0xFE, 0x53, 0xFE, 0x52, 0x02, 0xFE, 0x53, 0x01, 0xFE, 0x73, 0x01, 0xFE, 0x74, 0x01, 0xFE, 0x75, 0x91, 0xFE, 0x57, 0xFD, 0xF8, 0xCB, 0xD4, 0x99, 0xD1, 0xA1, 0xF4, 0xA2, 0x15, 0xA2, 0x37, 0x9A, 0x58, 0x82, 0x39, 0x41, 0x18, 0x29, 0x1A, 0x21, 0x5B, 0x19, 0x5C, 0x19, 0x7D, 0x11, 0x7E, 0x09, 0x7E, 0x09, 0x9E, 0x01, 0x9E, 0x04, 0x01, 0x9F, 0x05, 0x01, 0xBF, 0x02, 0x01, 0xBE, 0x93, 0x01, 0xDD, 0x01, 0xFB, 0x02, 0x9A, 0x14, 0x7C, 0x1D, 0xFD, 0x2E, 0xFE, 0x27, 0x5B, 0x0F, 0x15, 0x0F, 0x33, 0x0F, 0x53, 0x0F, 0x34, 0x27, 0x97, 0x3F, 0x7A, 0x56, 0xFC, 0x44, 0xD8, 0x4A, 0xD4, 0x6A, 0x96, 0x61, 0xD4, 0x61, 0x73, 0x61, 0x94, 0x01, 0x61, 0xB4, 0x82, 0x59, 0xD4, 0x51, 0xB3, 0x51, 0x93, 0x01, 0x49, 0x93, 0x81, 0x49, 0x92, 0x41, 0x72, 0x01, 0x41, 0x92, 0x82, 0x41, 0x72, + 0x39, 0x51, 0x39, 0x71, 0x03, 0x39, 0x51, 0x80, 0x31, 0x51, 0x01, 0x31, 0x30, 0x01, 0x31, 0x50, 0x01, 0x31, 0x30, 0x81, 0x29, 0x30, 0x31, 0x30, 0x0B, 0x29, 0x2F, 0x0B, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x0E, 0x05, 0x21, 0x0F, 0x88, 0x21, 0x30, 0x19, 0x31, 0x11, 0x12, 0x19, 0x95, 0x19, 0xD7, 0x19, 0xD6, 0x11, 0x74, 0x11, 0x11, 0x19, 0x10, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x8B, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x19, 0xB5, 0x2A, 0x17, 0x21, 0xF7, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x19, 0x51, 0x04, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x19, 0x11, 0x88, 0x19, 0x32, 0x11, 0x53, 0x19, 0x74, 0x19, 0x94, 0x19, 0x74, 0x19, 0x94, 0x19, 0x73, 0x11, 0x32, 0x19, 0x32, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x04, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x10, 0x84, 0x21, + 0x0F, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x11, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x86, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x88, 0x09, 0x75, 0x11, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xF6, 0x11, 0x95, 0x11, 0x53, 0x11, 0x12, 0x19, 0x31, 0x01, 0x21, 0x31, 0x03, 0x21, 0x30, 0x08, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x0F, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, + 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x06, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x86, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x31, 0x89, 0x11, 0x11, 0x11, 0x32, 0x19, 0xB4, 0x21, 0xF6, 0x22, 0x17, 0x22, 0x16, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x11, 0x11, 0x01, 0x19, 0x11, 0x80, 0x21, 0x31, 0x01, 0x21, 0x30, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x08, 0x29, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x06, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x0D, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x9D, 0x29, 0x0E, 0x30, 0xEE, 0x38, 0x8C, 0x8A, 0x12, + 0xAA, 0x94, 0xAA, 0x53, 0xAA, 0x32, 0xA9, 0xF1, 0xA1, 0xEF, 0xBB, 0x2F, 0xFD, 0xD7, 0xFE, 0x34, 0xFE, 0x73, 0xFE, 0x72, 0xFE, 0x71, 0xFE, 0x91, 0xFE, 0x90, 0xFE, 0x6F, 0xF6, 0x6F, 0xFE, 0x90, 0xFE, 0xB1, 0xFE, 0xB2, 0xFE, 0x94, 0xFE, 0x96, 0xBB, 0xEF, 0x8A, 0x2B, 0x92, 0x2E, 0x9A, 0x8F, 0xB3, 0x12, 0xD4, 0x16, 0x02, 0xE4, 0x77, 0x03, 0xE4, 0x57, 0x01, 0xDC, 0x56, 0x86, 0xE4, 0x56, 0xDC, 0x35, 0xDC, 0x34, 0xDC, 0x33, 0xDC, 0xB1, 0xFD, 0xF4, 0xFE, 0x52, 0x01, 0xFE, 0x71, 0x02, 0xFE, 0x70, 0x01, 0xFE, 0x6F, 0x01, 0xFE, 0x70, 0x02, 0xFE, 0x6F, 0x81, 0xFE, 0x4F, 0xFE, 0x6F, 0x01, 0xFE, 0x70, 0x89, 0xFE, 0x91, 0xFE, 0x92, 0xFE, 0x94, 0xED, 0xB3, 0xB3, 0x6E, 0x92, 0x4C, 0x92, 0x2E, 0xAA, 0xF1, 0xC3, 0xB5, 0xDC, 0x57, 0x01, 0xE4, 0x58, 0x84, 0xE4, 0x57, 0xDC, 0x37, 0xE4, 0x57, 0xDC, 0x57, 0xE4, 0x57, 0x01, 0xE4, 0x56, 0x87, 0xDC, 0x56, 0xDC, 0x55, 0xDC, 0x34, 0xDC, 0x52, 0xF5, 0xB3, 0xFE, 0x53, 0xFE, 0x51, 0xFE, 0x71, 0x03, 0xFE, 0x50, 0x01, 0xFE, 0x70, 0x01, 0xFE, 0x50, 0x81, 0xFE, 0x70, 0xFE, 0x50, 0x01, 0xFE, 0x4F, 0x80, 0xFE, 0x50, 0x01, 0xFE, 0x70, 0x88, 0xFE, 0x91, 0xFE, 0x92, 0xFE, 0x94, 0xF5, 0xB4, 0xB3, 0x6E, 0x92, 0x4D, 0x9A, 0x4F, 0xB3, 0x12, 0xCB, 0xD5, 0x01, 0xE4, 0x58, 0x02, 0xDC, 0x57, 0x81, 0xE4, 0x57, 0xDC, 0x57, 0x02, 0xDC, 0x56, 0x85, 0xDC, 0x36, 0xDC, 0x35, 0xDC, 0x75, 0xD4, 0x73, 0xFD, 0xF4, 0xFE, 0x54, 0x01, 0xFE, 0x73, 0x02, 0xFE, 0x93, 0x87, 0xFE, 0x94, 0xFE, 0x75, 0xE5, 0x52, 0x92, 0xAB, 0x92, 0x6C, + 0x9A, 0x8E, 0xBB, 0x92, 0xD4, 0x56, 0x04, 0xDC, 0x76, 0x01, 0xDC, 0x77, 0x81, 0xDC, 0x76, 0xDC, 0x77, 0x0C, 0xDC, 0x56, 0x80, 0xE4, 0x56, 0x02, 0xE4, 0x76, 0x87, 0xE4, 0xB7, 0xF5, 0x39, 0xFD, 0x9B, 0x89, 0xCE, 0x92, 0x0F, 0x91, 0xEF, 0xB2, 0xF2, 0xE4, 0x98, 0x01, 0xDC, 0x77, 0x02, 0xDC, 0x57, 0x03, 0xDC, 0x37, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x05, 0xDC, 0x57, 0x03, 0xDC, 0x56, 0x82, 0xDC, 0x57, 0xDC, 0x56, 0xDC, 0x36, 0x04, 0xDC, 0x57, 0x04, 0xDC, 0x56, 0x81, 0xDC, 0x77, 0xE4, 0x77, 0x01, 0xDC, 0x56, 0x01, 0xDC, 0x55, 0x84, 0xDC, 0x53, 0xDC, 0xD2, 0xFD, 0xF4, 0xFE, 0x53, 0xFE, 0x52, 0x01, 0xFE, 0x71, 0x05, 0xFE, 0x70, 0x81, 0xFE, 0x6F, 0xFE, 0x70, 0x06, 0xFE, 0x6F, 0x80, 0xFE, 0x4F, 0x0C, 0xFE, 0x6F, 0x8F, 0xFE, 0x90, 0xFE, 0xB0, 0xFE, 0x90, 0xFE, 0xB1, 0xFE, 0x91, 0xFE, 0x92, 0xFE, 0x94, 0xDD, 0x32, 0x8A, 0x8A, 0x92, 0x6C, 0x92, 0x4D, 0xB3, 0x51, 0xD4, 0x56, 0xDC, 0x76, 0xDC, 0x56, 0xDC, 0x76, 0x01, 0xDC, 0x56, 0x82, 0xDC, 0x77, 0xDC, 0x57, 0xE4, 0x77, 0x07, 0xDC, 0x57, 0x89, 0xDC, 0x77, 0xE4, 0x97, 0xDC, 0x57, 0xBB, 0x54, 0x9A, 0x50, 0x9A, 0x30, 0xAA, 0xD2, 0xCB, 0xD6, 0xDC, 0x57, 0xE4, 0x77, 0x01, 0xDC, 0x77, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x04, 0xDC, 0x57, 0x80, 0xDC, 0x56, 0x03, 0xDC, 0x57, 0x80, 0xDC, 0x56, 0x03, 0xDC, 0x57, 0x80, 0xDC, 0x56, 0x08, 0xDC, 0x57, 0x83, 0xDC, 0x56, 0xE4, 0x57, 0xDC, 0x56, 0xDC, 0x36, 0x01, 0xDC, 0x56, 0x87, 0xDC, 0x35, 0xDC, 0x55, 0xDC, 0x53, 0xE4, 0xB2, 0xFD, 0xD4, + 0xFE, 0x53, 0xFE, 0x52, 0xFE, 0x72, 0x03, 0xFE, 0x71, 0x01, 0xFE, 0x70, 0x01, 0xFE, 0x71, 0x80, 0xFE, 0x91, 0x01, 0xFE, 0x92, 0x87, 0xFE, 0x93, 0xFE, 0x95, 0xDC, 0xF3, 0x92, 0x6C, 0x8A, 0x0D, 0x92, 0x0E, 0xBB, 0x74, 0xD4, 0x16, 0x02, 0xDC, 0x57, 0x82, 0xE4, 0x77, 0xE4, 0x57, 0xDC, 0x57, 0x03, 0xDC, 0x56, 0x80, 0xDC, 0x35, 0x01, 0xDC, 0x55, 0x81, 0xD4, 0x53, 0xFD, 0xD5, 0x01, 0xFE, 0x74, 0x07, 0xFE, 0x73, 0x01, 0xFE, 0x94, 0x93, 0xFE, 0x75, 0xFE, 0x96, 0xFE, 0x77, 0xFD, 0xD9, 0xBB, 0x12, 0x99, 0xF1, 0xA1, 0xF4, 0xA2, 0x15, 0xA2, 0x37, 0x9A, 0x58, 0x82, 0x19, 0x41, 0x18, 0x31, 0x1A, 0x29, 0x3B, 0x21, 0x5C, 0x19, 0x5D, 0x11, 0x7E, 0x11, 0x9E, 0x09, 0x7E, 0x09, 0x9E, 0x03, 0x01, 0x9F, 0x05, 0x01, 0xBF, 0x01, 0x01, 0xDF, 0x93, 0x01, 0xDE, 0x01, 0xBD, 0x01, 0xDD, 0x01, 0xFB, 0x02, 0x9A, 0x14, 0x9C, 0x26, 0x1D, 0x26, 0xDD, 0x27, 0x5B, 0x0F, 0x15, 0x0F, 0x53, 0x0F, 0x73, 0x0F, 0x34, 0x27, 0x97, 0x37, 0x7A, 0x46, 0xBB, 0x44, 0xF8, 0x42, 0xF4, 0x62, 0x96, 0x59, 0xD4, 0x01, 0x61, 0x94, 0x82, 0x61, 0xB4, 0x59, 0xD4, 0x59, 0xB4, 0x02, 0x51, 0xB3, 0x80, 0x49, 0x93, 0x01, 0x49, 0x72, 0x01, 0x41, 0x72, 0x80, 0x41, 0x71, 0x01, 0x39, 0x71, 0x03, 0x39, 0x51, 0x80, 0x31, 0x30, 0x02, 0x31, 0x50, 0x80, 0x29, 0x30, 0x02, 0x31, 0x30, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x06, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x0F, + 0x03, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x08, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x21, 0x0E, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x8B, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x11, 0x11, 0x12, 0x19, 0x95, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x11, 0x19, 0x30, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x8B, 0x21, 0x50, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x21, 0xB5, 0x21, 0xD6, 0x21, 0xF6, 0x19, 0x95, 0x11, 0x12, 0x19, 0x32, 0x01, 0x21, 0x51, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x83, 0x19, 0x10, 0x19, 0x11, 0x19, 0x31, 0x11, 0x32, 0x03, 0x19, 0x52, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x19, 0x30, 0x19, 0x10, 0x02, 0x21, 0x30, 0x82, 0x29, 0x50, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x20, 0xEE, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x87, 0x29, 0x0F, 0x20, 0xEF, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, + 0x0F, 0x03, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x87, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x0D, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x8A, 0x09, 0x34, 0x09, 0x54, 0x11, 0xB6, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0xD6, 0x11, 0x75, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x07, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x0B, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x0E, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, + 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x09, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x19, 0x31, 0x01, 0x11, 0x32, 0x80, 0x19, 0xB5, 0x02, 0x21, 0xF6, 0x83, 0x19, 0xB5, 0x19, 0x73, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x10, 0x81, 0x21, 0x30, 0x29, 0x51, 0x01, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0E, 0x05, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x06, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x0B, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x91, 0x29, 0x0F, 0x28, 0xEE, 0x30, 0xEE, 0x38, 0x8D, 0x79, 0xD1, 0xAA, 0x94, 0xAA, 0x53, 0xAA, 0x32, 0xA9, 0xF1, 0xA1, 0xEF, 0xAA, 0x6E, 0xFD, 0x56, 0xFE, 0x35, 0xFE, 0x73, 0xFE, 0x92, 0xFE, 0x91, 0xFE, 0xB1, 0xFE, 0xB0, 0x02, 0xFE, 0x90, 0x8A, 0xFE, 0xB1, 0xFE, 0xB2, 0xFE, 0xB4, 0xFE, 0x96, 0xBC, 0x0F, 0x8A, 0x2B, + 0x8A, 0x2D, 0x9A, 0x6F, 0xAB, 0x11, 0xD4, 0x36, 0xDC, 0x77, 0x01, 0xE4, 0x77, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x88, 0xE4, 0x56, 0xDC, 0x56, 0xE4, 0x56, 0xE4, 0x55, 0xDC, 0x34, 0xDC, 0x53, 0xDC, 0xB1, 0xFE, 0x14, 0xFE, 0x73, 0x01, 0xFE, 0x91, 0x80, 0xFE, 0x90, 0x01, 0xFE, 0x70, 0x01, 0xFE, 0x90, 0x81, 0xFE, 0x6F, 0xFE, 0x90, 0x01, 0xFE, 0x6F, 0x82, 0xFE, 0x90, 0xFE, 0x6F, 0xFE, 0x70, 0x01, 0xFE, 0x90, 0x8B, 0xFE, 0x91, 0xFE, 0xB2, 0xFE, 0x94, 0xF5, 0xD4, 0xB3, 0x8E, 0x92, 0x6D, 0x92, 0x6E, 0xB3, 0x12, 0xCB, 0xD5, 0xDC, 0x57, 0xE4, 0x57, 0xE4, 0x77, 0x01, 0xE4, 0x57, 0x80, 0xDC, 0x57, 0x01, 0xE4, 0x57, 0x87, 0xDC, 0x56, 0xE4, 0x77, 0xE4, 0x56, 0xDC, 0x55, 0xDC, 0x54, 0xD4, 0x52, 0xF5, 0xB3, 0xFE, 0x52, 0x01, 0xFE, 0x71, 0x08, 0xFE, 0x70, 0x80, 0xFE, 0x6F, 0x03, 0xFE, 0x70, 0x89, 0xFE, 0x90, 0xFE, 0x91, 0xFE, 0xB2, 0xFE, 0x93, 0xF5, 0xD4, 0xB3, 0x6E, 0x92, 0x4D, 0x92, 0x2E, 0xAA, 0xF2, 0xCB, 0xD5, 0x05, 0xE4, 0x57, 0x03, 0xDC, 0x56, 0x87, 0xDC, 0x36, 0xDC, 0x55, 0xDC, 0x54, 0xDC, 0x73, 0xF5, 0xD4, 0xFE, 0x53, 0xFE, 0x73, 0xFE, 0x72, 0x03, 0xFE, 0x92, 0x87, 0xFE, 0x93, 0xFE, 0x95, 0xF5, 0xD4, 0xA3, 0x2C, 0x92, 0x6B, 0x92, 0x4C, 0xAB, 0x30, 0xC3, 0xD3, 0x01, 0xD4, 0x55, 0x04, 0xDC, 0x76, 0x08, 0xDC, 0x56, 0x01, 0xDC, 0x36, 0x03, 0xDC, 0x56, 0x8A, 0xE4, 0x56, 0xE4, 0x76, 0xDC, 0x76, 0xE4, 0x96, 0xF5, 0x38, 0xFD, 0x9B, 0x89, 0xCD, 0x92, 0x0F, 0x91, 0xEF, 0xAA, 0xD2, 0xE4, 0x98, 0x01, 0xDC, 0x77, 0x11, 0xDC, 0x57, 0x02, + 0xDC, 0x56, 0x80, 0xDC, 0x36, 0x03, 0xDC, 0x37, 0x80, 0xDC, 0x57, 0x02, 0xDC, 0x56, 0x80, 0xDC, 0x76, 0x01, 0xDC, 0x56, 0x01, 0xDC, 0x76, 0x80, 0xDC, 0x56, 0x01, 0xDC, 0x55, 0x84, 0xDC, 0x53, 0xE4, 0xF2, 0xFE, 0x14, 0xFE, 0x73, 0xFE, 0x72, 0x01, 0xFE, 0x71, 0x02, 0xFE, 0x70, 0x80, 0xFE, 0x90, 0x02, 0xFE, 0x70, 0x01, 0xFE, 0x6F, 0x80, 0xFE, 0x90, 0x01, 0xFE, 0x6F, 0x81, 0xFE, 0x8F, 0xFE, 0x6F, 0x01, 0xFE, 0x8F, 0x80, 0xFE, 0x6F, 0x0B, 0xFE, 0x8F, 0x80, 0xFE, 0x90, 0x02, 0xFE, 0xB0, 0x01, 0xFE, 0xB1, 0x86, 0xFE, 0xB2, 0xFE, 0xB4, 0xD5, 0x10, 0x8A, 0x8A, 0x92, 0x6C, 0x92, 0x8D, 0xBB, 0x72, 0x02, 0xDC, 0x56, 0x02, 0xDC, 0x76, 0x03, 0xDC, 0x56, 0x03, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x83, 0xDC, 0x77, 0xE4, 0x97, 0xDC, 0x57, 0xBB, 0x54, 0x01, 0x9A, 0x30, 0x82, 0xAA, 0xD2, 0xCB, 0xF6, 0xE4, 0x78, 0x02, 0xDC, 0x77, 0x80, 0xDC, 0x57, 0x01, 0xDC, 0x36, 0x03, 0xDC, 0x56, 0x06, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x56, 0x01, 0xDC, 0x57, 0x02, 0xDC, 0x56, 0x80, 0xDC, 0x57, 0x08, 0xDC, 0x56, 0x01, 0xDC, 0x55, 0x83, 0xDC, 0x73, 0xDC, 0xD2, 0xFD, 0xF4, 0xFE, 0x53, 0x01, 0xFE, 0x72, 0x03, 0xFE, 0x71, 0x02, 0xFE, 0x70, 0x01, 0xFE, 0x91, 0x01, 0xFE, 0xB2, 0x87, 0xFE, 0xB3, 0xFE, 0x95, 0xDC, 0xF3, 0x8A, 0x4B, 0x8A, 0x0D, 0x92, 0x0E, 0xC3, 0x74, 0xD4, 0x16, 0x05, 0xDC, 0x57, 0x03, 0xDC, 0x56, 0x01, 0xDC, 0x55, 0x83, 0xDC, 0x54, 0xD4, 0x52, 0xFD, 0xF5, 0xFE, 0x74, 0x07, 0xFE, 0x93, 0x01, 0xFE, 0x94, 0x01, 0xFE, 0x95, + 0x90, 0xFE, 0x96, 0xFE, 0x58, 0xFD, 0x59, 0xAA, 0x51, 0xA1, 0xF2, 0xA1, 0xF4, 0xA1, 0xF5, 0xA2, 0x16, 0x9A, 0x38, 0x79, 0xD8, 0x48, 0xF7, 0x39, 0x19, 0x31, 0x3B, 0x29, 0x5C, 0x21, 0x5C, 0x19, 0x7D, 0x11, 0x7E, 0x01, 0x09, 0x9E, 0x03, 0x01, 0x9F, 0x04, 0x01, 0xBF, 0x01, 0x01, 0xDF, 0x01, 0x01, 0xDE, 0x94, 0x01, 0xDD, 0x01, 0xDC, 0x01, 0xFB, 0x02, 0xBA, 0x14, 0x9B, 0x1D, 0xFC, 0x26, 0xFD, 0x27, 0x5A, 0x0F, 0x15, 0x07, 0x33, 0x0F, 0x74, 0x0F, 0x55, 0x27, 0xB8, 0x2F, 0x5A, 0x3E, 0x9B, 0x45, 0x7A, 0x4B, 0xB7, 0x5A, 0xF6, 0x51, 0xF4, 0x59, 0xD4, 0x59, 0x93, 0x01, 0x59, 0xD4, 0x81, 0x51, 0xB4, 0x51, 0x93, 0x03, 0x49, 0x93, 0x01, 0x41, 0x72, 0x80, 0x41, 0x92, 0x04, 0x39, 0x71, 0x82, 0x39, 0x51, 0x31, 0x51, 0x31, 0x50, 0x01, 0x31, 0x30, 0x80, 0x31, 0x50, 0x03, 0x31, 0x30, 0x81, 0x29, 0x30, 0x31, 0x30, 0x05, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x11, 0x11, 0x12, + 0x19, 0xB5, 0x19, 0xD7, 0x19, 0xD6, 0x19, 0x75, 0x11, 0x11, 0x19, 0x10, 0x03, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x8C, 0x21, 0x50, 0x19, 0x31, 0x19, 0x32, 0x11, 0x12, 0x21, 0xB5, 0x29, 0xF6, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x19, 0x12, 0x21, 0x51, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x85, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x19, 0x11, 0x01, 0x19, 0x31, 0x83, 0x19, 0x51, 0x21, 0x51, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x88, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x07, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x21, 0x0E, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, + 0x0D, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x11, 0x54, 0x80, 0x19, 0x95, 0x02, 0x19, 0xD6, 0x84, 0x11, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x02, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x07, + 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x87, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x33, 0x19, 0x94, 0x02, 0x21, 0xF6, 0x85, 0x19, 0xB5, 0x19, 0x73, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x29, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x81, 0x29, 0x2F, 0x21, 0x0E, 0x02, 0x29, 0x2F, 0x85, 0x21, 0x0E, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x0D, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x0B, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x8D, 0x29, 0x0F, 0x29, 0x0E, 0x30, 0xEE, 0x38, 0xAD, 0x61, 0x2F, 0xA2, 0xB4, 0xAA, 0x53, 0xAA, 0x32, 0xAA, 0x11, 0xA1, 0xCF, 0xA2, 0x0E, 0xE4, 0x74, 0xFE, 0x36, 0xFE, 0x74, 0x01, 0xFE, 0x92, 0x01, 0xFE, 0xB1, 0x02, 0xFE, 0xB0, 0x8B, 0xFE, 0xB1, 0xFE, 0xB2, 0xFE, 0xB3, 0xFE, 0x95, 0xB3, 0xEE, 0x82, 0x2B, 0x8A, 0x2D, 0x9A, 0x6E, 0xB3, + 0x11, 0xD4, 0x15, 0xDC, 0x76, 0xDC, 0x77, 0x02, 0xDC, 0x56, 0x8A, 0xE4, 0x56, 0xDC, 0x36, 0xE4, 0x56, 0xDC, 0x36, 0xE4, 0x55, 0xDC, 0x35, 0xDC, 0x34, 0xDC, 0x52, 0xDC, 0xB1, 0xFE, 0x14, 0xFE, 0x72, 0x01, 0xFE, 0x91, 0x07, 0xFE, 0x90, 0x01, 0xFE, 0x8F, 0x02, 0xFE, 0x90, 0x89, 0xFE, 0xB0, 0xFE, 0xB1, 0xFE, 0xB2, 0xFE, 0xB3, 0xF5, 0xF4, 0xAB, 0x6D, 0x9A, 0x8D, 0x92, 0x6E, 0xAA, 0xF1, 0xCB, 0xD5, 0x03, 0xDC, 0x57, 0x02, 0xE4, 0x57, 0x01, 0xE4, 0x77, 0x87, 0xE4, 0x76, 0xE4, 0x56, 0xDC, 0x55, 0xDC, 0x54, 0xD4, 0x51, 0xF5, 0xD3, 0xFE, 0x52, 0xFE, 0x71, 0x05, 0xFE, 0x70, 0x01, 0xFE, 0x6F, 0x01, 0xFE, 0x90, 0x82, 0xFE, 0x70, 0xFE, 0x90, 0xFE, 0x8F, 0x01, 0xFE, 0x90, 0x8A, 0xFE, 0xB0, 0xFE, 0xB1, 0xFE, 0xB2, 0xFE, 0x93, 0xF5, 0xF4, 0xAB, 0x4D, 0x92, 0x4C, 0x92, 0x2E, 0xAA, 0xF1, 0xCB, 0xD5, 0xDC, 0x57, 0x01, 0xE4, 0x77, 0x80, 0xDC, 0x56, 0x01, 0xE4, 0x57, 0x80, 0xE4, 0x56, 0x03, 0xDC, 0x56, 0x85, 0xDC, 0x55, 0xDC, 0x54, 0xD4, 0x72, 0xF5, 0xD3, 0xFE, 0x53, 0xFE, 0x72, 0x02, 0xFE, 0x92, 0x8B, 0xFE, 0xB2, 0xFE, 0x92, 0xFE, 0xB2, 0xFE, 0x93, 0xFE, 0x94, 0xFE, 0x34, 0xC4, 0x50, 0x8A, 0x6A, 0x9A, 0x8C, 0xA2, 0xCE, 0xBB, 0x71, 0xD4, 0x55, 0x02, 0xDC, 0x76, 0x0C, 0xDC, 0x56, 0x80, 0xE4, 0x56, 0x04, 0xDC, 0x56, 0x89, 0xDC, 0x76, 0xE4, 0x96, 0xF5, 0x58, 0xFD, 0x9A, 0x89, 0xCD, 0x9A, 0x0F, 0x91, 0xEF, 0xA2, 0x91, 0xE4, 0xB8, 0xDC, 0x77, 0x02, 0xDC, 0x57, 0x80, 0xDC, 0x36, 0x02, 0xDC, 0x37, 0x83, 0xDC, 0x36, 0xDC, 0x37, 0xDC, 0x36, 0xDC, + 0x57, 0x01, 0xDC, 0x36, 0x02, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x81, 0xDC, 0x57, 0xDC, 0x56, 0x03, 0xDC, 0x36, 0x81, 0xDC, 0x57, 0xDC, 0x37, 0x01, 0xDC, 0x36, 0x01, 0xDC, 0x56, 0x82, 0xDC, 0x76, 0xDC, 0x56, 0xDC, 0x76, 0x03, 0xDC, 0x56, 0x86, 0xDC, 0x55, 0xDC, 0x54, 0xDC, 0x73, 0xE4, 0xF2, 0xFE, 0x34, 0xFE, 0x73, 0xFE, 0x92, 0x01, 0xFE, 0x91, 0x04, 0xFE, 0x90, 0x80, 0xFE, 0xB0, 0x01, 0xFE, 0x90, 0x0D, 0xFE, 0x8F, 0x01, 0xFE, 0xAF, 0x01, 0xFE, 0x8F, 0x01, 0xFE, 0xAF, 0x04, 0xFE, 0xB0, 0x01, 0xFE, 0xD1, 0x87, 0xFE, 0xB1, 0xFE, 0xB2, 0xFE, 0x94, 0xDD, 0x52, 0x8A, 0xAA, 0x92, 0xAC, 0x9A, 0x8D, 0xB3, 0x51, 0x02, 0xDC, 0x76, 0x07, 0xDC, 0x56, 0x01, 0xDC, 0x57, 0x01, 0xDC, 0x56, 0x83, 0xDC, 0x77, 0xE4, 0x97, 0xDC, 0x36, 0xBB, 0x74, 0x01, 0x9A, 0x30, 0x85, 0xAA, 0xD2, 0xCB, 0xD5, 0xDC, 0x77, 0xE4, 0x77, 0xDC, 0x77, 0xDC, 0x57, 0x0F, 0xDC, 0x56, 0x80, 0xDC, 0x57, 0x02, 0xDC, 0x56, 0x01, 0xDC, 0x36, 0x02, 0xDC, 0x56, 0x03, 0xDC, 0x36, 0x04, 0xDC, 0x56, 0x01, 0xDC, 0x55, 0x85, 0xDC, 0x54, 0xDC, 0x73, 0xDC, 0xD2, 0xFE, 0x14, 0xFE, 0x73, 0xFE, 0x92, 0x09, 0xFE, 0x91, 0x01, 0xFE, 0xB2, 0x87, 0xFE, 0xB3, 0xFE, 0x95, 0xDD, 0x13, 0x8A, 0x4B, 0x8A, 0x0D, 0x92, 0x0E, 0xBB, 0x74, 0xD4, 0x16, 0x04, 0xDC, 0x57, 0x04, 0xDC, 0x56, 0x85, 0xDC, 0x55, 0xDC, 0x35, 0xDC, 0x34, 0xD4, 0x32, 0xFE, 0x35, 0xFE, 0x94, 0x03, 0xFE, 0xB3, 0x01, 0xFE, 0x93, 0x01, 0xFE, 0xB4, 0x01, 0xFE, 0x94, 0x95, 0xFE, 0x95, 0xFE, 0x96, 0xFE, 0x77, 0xFE, 0x5A, 0xBB, 0x32, + 0xA2, 0x11, 0xA1, 0xF3, 0xA1, 0xF4, 0xA1, 0xF5, 0xA2, 0x16, 0x9A, 0x18, 0x79, 0xD8, 0x50, 0xF7, 0x41, 0x19, 0x41, 0x3A, 0x31, 0x3B, 0x29, 0x3B, 0x21, 0x3C, 0x19, 0x7D, 0x11, 0x7E, 0x09, 0x9E, 0x09, 0x9F, 0x02, 0x01, 0x9F, 0x03, 0x01, 0xBF, 0x03, 0x01, 0xDF, 0x97, 0x01, 0xDE, 0x01, 0xDD, 0x01, 0xDC, 0x01, 0xFB, 0x02, 0xBA, 0x14, 0xBB, 0x1E, 0x1C, 0x26, 0xDC, 0x27, 0x5A, 0x0F, 0x14, 0x07, 0x53, 0x0F, 0x74, 0x0F, 0x55, 0x1F, 0x98, 0x2F, 0x7A, 0x36, 0x9B, 0x3D, 0x9A, 0x64, 0xBA, 0x53, 0x16, 0x52, 0x35, 0x59, 0xD4, 0x59, 0xF4, 0x59, 0xD4, 0x51, 0xB4, 0x01, 0x51, 0xB3, 0x02, 0x49, 0x93, 0x84, 0x49, 0x92, 0x41, 0x72, 0x41, 0x92, 0x41, 0x72, 0x41, 0x71, 0x01, 0x39, 0x71, 0x02, 0x39, 0x51, 0x83, 0x31, 0x51, 0x31, 0x50, 0x31, 0x30, 0x31, 0x50, 0x03, 0x31, 0x30, 0x80, 0x29, 0x30, 0x0C, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x09, 0x29, 0x0F, 0x08, 0x29, 0x2F, 0x88, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x87, 0x19, 0x31, 0x11, 0x12, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xB6, 0x11, 0x74, 0x11, 0x11, 0x19, 0x31, 0x02, 0x21, 0x30, 0x04, 0x21, 0x2F, 0x8C, 0x21, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x12, 0x21, 0xB5, 0x21, 0xF6, 0x21, 0xD6, 0x19, + 0x95, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x4F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x80, 0x29, 0x30, 0x04, 0x21, 0x10, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x0E, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x01, 0x20, 0xEE, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x11, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, + 0x02, 0x21, 0x0F, 0x86, 0x29, 0x2F, 0x19, 0x53, 0x19, 0x33, 0x11, 0x33, 0x11, 0x54, 0x11, 0x95, 0x19, 0xD6, 0x01, 0x19, 0xF6, 0x88, 0x19, 0x95, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x21, 0x31, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x0A, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x0B, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x0D, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x09, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x0C, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x09, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0E, 0x03, 0x29, 0x2F, 0x88, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x10, 0x19, 0x32, 0x19, 0x53, 0x11, 0x33, 0x11, 0x54, 0x19, 0xD6, 0x01, 0x21, 0xF6, 0x81, 0x19, 0xB5, 0x11, 0x33, 0x01, 0x11, 0x11, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x01, 0x29, 0x30, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x21, 0x0E, 0x29, 0x2E, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x83, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0E, 0x09, 0x29, 0x0F, 0x01, 0x29, + 0x2F, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x85, 0x21, 0x0E, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x0D, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x8F, 0x29, 0x0F, 0x29, 0x0E, 0x31, 0x0E, 0x38, 0xCD, 0x50, 0xED, 0x9A, 0x94, 0xA2, 0x53, 0xAA, 0x52, 0xAA, 0x12, 0xA1, 0xF0, 0x99, 0xAE, 0xBB, 0x10, 0xFE, 0x57, 0xFE, 0x94, 0xFE, 0xB3, 0xFE, 0xB2, 0x01, 0xFE, 0xB1, 0x02, 0xFE, 0xB0, 0x8A, 0xFE, 0xB1, 0xFE, 0xD2, 0xFE, 0xB3, 0xFE, 0xB5, 0xBC, 0x0E, 0x82, 0x2B, 0x8A, 0x2D, 0x9A, 0x6E, 0xAA, 0xF1, 0xD4, 0x15, 0xDC, 0x76, 0x04, 0xDC, 0x56, 0x80, 0xDC, 0x36, 0x01, 0xE4, 0x35, 0x80, 0xDC, 0x35, 0x01, 0xDC, 0x34, 0x85, 0xDC, 0x52, 0xDC, 0xB1, 0xFE, 0x34, 0xFE, 0x93, 0xFE, 0x91, 0xFE, 0xB1, 0x02, 0xFE, 0x90, 0x0A, 0xFE, 0xB0, 0x88, 0xFE, 0xB1, 0xFE, 0xD2, 0xFE, 0xB3, 0xF5, 0xF4, 0xA3, 0x2C, 0x8A, 0x4B, 0x8A, 0x2D, 0xA2, 0x8F, 0xC3, 0xB4, 0x08, 0xDC, 0x56, 0x01, 0xDC, 0x55, 0x84, 0xDC, 0x54, 0xDC, 0x53, 0xD4, 0x51, 0xF5, 0xD2, 0xFE, 0x72, 0x01, 0xFE, 0x91, 0x0B, 0xFE, 0x90, 0x02, 0xFE, 0xB0, 0x89, 0xFE, 0xD1, 0xFE, 0xB1, 0xFE, 0x93, 0xF5, 0xD3, 0xA3, 0x0C, + 0x92, 0x2C, 0x92, 0x2D, 0xAA, 0xD0, 0xCB, 0xF5, 0xDC, 0x57, 0x04, 0xDC, 0x56, 0x80, 0xDC, 0x36, 0x01, 0xDC, 0x56, 0x01, 0xDC, 0x35, 0x85, 0xDC, 0x34, 0xDC, 0x54, 0xD4, 0x71, 0xF5, 0xF3, 0xFE, 0x73, 0xFE, 0x92, 0x07, 0xFE, 0xB2, 0x88, 0xFE, 0xB3, 0xFE, 0x95, 0xED, 0xB3, 0xB3, 0x8D, 0xA2, 0xEC, 0xAB, 0x0F, 0xB3, 0x50, 0xC3, 0xD3, 0xCC, 0x14, 0x01, 0xD4, 0x55, 0x81, 0xDC, 0x55, 0xDC, 0x76, 0x0F, 0xDC, 0x56, 0x84, 0xDC, 0x75, 0xE4, 0xB6, 0xF5, 0x57, 0xFD, 0xBA, 0x89, 0xCD, 0x01, 0x92, 0x0F, 0x82, 0x9A, 0x50, 0xE4, 0xB8, 0xDC, 0x76, 0x02, 0xDC, 0x56, 0x04, 0xDC, 0x36, 0x80, 0xDC, 0x57, 0x08, 0xDC, 0x36, 0x80, 0xDC, 0x56, 0x08, 0xDC, 0x36, 0x05, 0xDC, 0x56, 0x02, 0xDC, 0x55, 0x01, 0xDC, 0x54, 0x86, 0xD4, 0x52, 0xDC, 0xB1, 0xFE, 0x34, 0xFE, 0x93, 0xFE, 0xB2, 0xFE, 0x91, 0xFE, 0xB1, 0x01, 0xFE, 0x90, 0x06, 0xFE, 0xB0, 0x14, 0xFE, 0xAF, 0x80, 0xFE, 0xB0, 0x02, 0xFE, 0xD0, 0x01, 0xFE, 0xD1, 0x8A, 0xFE, 0xD2, 0xFE, 0xB2, 0xFE, 0xB4, 0xF6, 0x14, 0xA3, 0x2C, 0x92, 0xAC, 0x9A, 0xAD, 0xA2, 0xAF, 0xCB, 0xF4, 0xD4, 0x35, 0xDC, 0x76, 0x0A, 0xDC, 0x56, 0x88, 0xDC, 0x76, 0xDC, 0x77, 0xD4, 0x16, 0xBB, 0x53, 0x9A, 0x50, 0x9A, 0x30, 0xAA, 0xB1, 0xCB, 0xB5, 0xDC, 0x57, 0x02, 0xDC, 0x77, 0x80, 0xD4, 0x36, 0x01, 0xDC, 0x36, 0x0C, 0xDC, 0x56, 0x01, 0xDC, 0x36, 0x80, 0xDC, 0x56, 0x04, 0xDC, 0x36, 0x80, 0xDC, 0x56, 0x03, 0xDC, 0x36, 0x80, 0xDC, 0x56, 0x04, 0xDC, 0x35, 0x01, 0xDC, 0x34, 0x84, 0xD4, 0x52, 0xDC, 0xD1, 0xFE, 0x34, 0xFE, 0x93, 0xFE, + 0x92, 0x03, 0xFE, 0x91, 0x04, 0xFE, 0xB1, 0x02, 0xFE, 0xB2, 0x88, 0xFE, 0xD3, 0xFE, 0xB5, 0xDD, 0x33, 0x8A, 0x2B, 0x8A, 0x0D, 0x89, 0xEE, 0xBB, 0x73, 0xD4, 0x16, 0xDC, 0x56, 0x01, 0xDC, 0x57, 0x05, 0xDC, 0x56, 0x86, 0xDC, 0x55, 0xDC, 0x35, 0xDC, 0x34, 0xDC, 0x54, 0xCC, 0x31, 0xFE, 0x75, 0xFE, 0xB4, 0x04, 0xFE, 0xB3, 0x03, 0xFE, 0xB4, 0x01, 0xFE, 0xB5, 0x94, 0xFE, 0x97, 0xFE, 0x78, 0xF5, 0x37, 0x99, 0xEF, 0xA1, 0xF2, 0xA1, 0xF3, 0xA1, 0xF4, 0xA1, 0xF5, 0xA2, 0x16, 0x9A, 0x17, 0x79, 0x77, 0x58, 0xF7, 0x59, 0x39, 0x49, 0x19, 0x38, 0xD9, 0x51, 0x7B, 0x51, 0xFD, 0x21, 0x3C, 0x19, 0x7E, 0x09, 0x7E, 0x09, 0x9E, 0x01, 0x01, 0x9F, 0x05, 0x01, 0xBF, 0x8C, 0x01, 0xDF, 0x01, 0xDE, 0x01, 0xDF, 0x01, 0xDE, 0x01, 0xDD, 0x01, 0xFD, 0x02, 0x1B, 0x02, 0xB9, 0x14, 0xBB, 0x1E, 0x1C, 0x26, 0xFC, 0x27, 0x5A, 0x0F, 0x14, 0x01, 0x0F, 0x73, 0x8B, 0x0F, 0x54, 0x1F, 0x98, 0x27, 0x5A, 0x2E, 0xBB, 0x4E, 0x3C, 0x6D, 0x5C, 0x53, 0x56, 0x5A, 0xB6, 0x51, 0xF4, 0x5A, 0x15, 0x51, 0xD4, 0x51, 0xB4, 0x01, 0x51, 0xB3, 0x01, 0x49, 0x93, 0x01, 0x49, 0x92, 0x02, 0x41, 0x92, 0x01, 0x41, 0x71, 0x80, 0x39, 0x51, 0x01, 0x39, 0x71, 0x03, 0x31, 0x50, 0x01, 0x31, 0x30, 0x01, 0x31, 0x50, 0x01, 0x29, 0x30, 0x0B, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, + 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x21, 0x30, 0x19, 0x31, 0x11, 0x32, 0x19, 0xB5, 0x01, 0x19, 0xD7, 0x97, 0x11, 0x74, 0x11, 0x11, 0x19, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0xB5, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x74, 0x10, 0xF2, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x84, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x20, 0xEF, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x21, 0x0E, 0x83, 0x29, 0x0F, 0x21, 0x0E, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x02, 0x21, 0x0E, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x80, 0x20, 0xEE, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, + 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x0C, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x09, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x8D, 0x29, 0x2F, 0x21, 0x52, 0x19, 0x32, 0x19, 0x12, 0x11, 0x33, 0x11, 0x54, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xF6, 0x21, 0xF6, 0x11, 0x74, 0x11, 0x53, 0x19, 0x32, 0x19, 0x31, 0x02, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x0D, 0x29, 0x0F, 0x81, 0x21, 0x0E, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x0F, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x11, 0x29, 0x0F, 0x01, 0x29, 0x2F, + 0x80, 0x29, 0x0E, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x11, 0x52, 0x11, 0x53, 0x11, 0x54, 0x02, 0x21, 0xF6, 0x85, 0x19, 0x95, 0x19, 0x53, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x01, 0x29, 0x30, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x10, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x09, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x0E, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x8D, 0x31, 0x0E, 0x30, 0xCE, 0x48, 0xCD, 0x8A, 0x73, 0xA2, 0x73, 0xAA, 0x52, 0xAA, 0x32, 0xA1, 0xF1, 0x99, 0xCF, 0x91, 0xCC, 0xFD, 0xD6, 0xFE, 0x75, 0xFE, 0xB3, 0xFE, 0xD2, 0x01, 0xFE, 0xB1, 0x80, 0xFE, 0xD1, 0x01, 0xFE, 0xD0, 0x01, 0xFE, 0xD1, 0x89, 0xFE, 0xB3, 0xFE, 0xB5, 0xBC, 0x2E, 0x82, 0x2A, 0x8A, 0x2D, 0x92, 0x6E, 0xA2, 0xD0, 0xD4, 0x14, 0xDC, 0x55, 0xDC, 0x56, 0x02, 0xDC, 0x55, 0x02, 0xDC, 0x35, 0x02, 0xDC, 0x34, 0x84, 0xDC, 0x33, + 0xDC, 0x52, 0xDC, 0xD1, 0xFE, 0x33, 0xFE, 0x92, 0x02, 0xFE, 0xB1, 0x02, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x06, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x01, 0xFE, 0xD1, 0x88, 0xFE, 0xD2, 0xFE, 0xB3, 0xF5, 0xF3, 0x9A, 0xEA, 0x8A, 0x2A, 0x8A, 0x0C, 0x9A, 0x6E, 0xC3, 0xD3, 0xDC, 0x56, 0x01, 0xDC, 0x55, 0x82, 0xDC, 0x35, 0xDC, 0x55, 0xDC, 0x56, 0x03, 0xDC, 0x55, 0x85, 0xDC, 0x34, 0xDC, 0x33, 0xDC, 0x53, 0xD4, 0x50, 0xF5, 0xD2, 0xFE, 0x92, 0x01, 0xFE, 0xB1, 0x01, 0xFE, 0xB0, 0x01, 0xFE, 0x90, 0x81, 0xFE, 0xB0, 0xFE, 0x90, 0x07, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x01, 0xFE, 0xD1, 0x87, 0xFE, 0x93, 0xF5, 0xF3, 0x9A, 0xEB, 0x8A, 0x2B, 0x92, 0x2D, 0xA2, 0xCF, 0xCB, 0xF4, 0xDC, 0x56, 0x03, 0xDC, 0x55, 0x02, 0xDC, 0x35, 0x81, 0xDC, 0x55, 0xDC, 0x35, 0x01, 0xDC, 0x34, 0x82, 0xDC, 0x53, 0xD4, 0x51, 0xFE, 0x13, 0x01, 0xFE, 0x92, 0x04, 0xFE, 0xB1, 0x03, 0xFE, 0xD2, 0x89, 0xFE, 0xD3, 0xFE, 0xB4, 0xFE, 0x54, 0xDD, 0x11, 0xAB, 0x4D, 0xA3, 0x2D, 0xB3, 0x6F, 0xBB, 0xB0, 0xC3, 0xF2, 0xC4, 0x12, 0x01, 0xD4, 0x54, 0x81, 0xD4, 0x55, 0xDC, 0x75, 0x02, 0xD4, 0x55, 0x01, 0xDC, 0x55, 0x01, 0xDC, 0x35, 0x06, 0xDC, 0x55, 0x84, 0xDC, 0x75, 0xDC, 0x95, 0xED, 0x56, 0xFD, 0xB9, 0x89, 0xCC, 0x01, 0x92, 0x0F, 0x82, 0x9A, 0x2F, 0xE4, 0xB7, 0xDC, 0x76, 0x03, 0xDC, 0x56, 0x07, 0xDC, 0x36, 0x01, 0xDC, 0x35, 0x06, 0xDC, 0x36, 0x80, 0xDC, 0x56, 0x05, 0xDC, 0x36, 0x01, 0xDC, 0x35, 0x05, 0xDC, 0x55, 0x01, 0xD4, 0x54, 0x84, 0xD4, 0x53, 0xD4, 0x52, 0xDC, 0xB0, 0xFE, 0x33, 0xFE, + 0x92, 0x01, 0xFE, 0xB1, 0x80, 0xFE, 0xD1, 0x03, 0xFE, 0xB0, 0x05, 0xFE, 0xD0, 0x81, 0xFE, 0xCF, 0xFE, 0xD0, 0x06, 0xFE, 0xCF, 0x08, 0xFE, 0xAF, 0x01, 0xFE, 0xCF, 0x04, 0xFE, 0xD0, 0x01, 0xFE, 0xD1, 0x01, 0xFE, 0xD2, 0x88, 0xFE, 0xB4, 0xFE, 0x55, 0xCC, 0x90, 0x92, 0xCB, 0x9A, 0xAC, 0xA3, 0x0E, 0xB3, 0x4F, 0xBB, 0x91, 0xCB, 0xF3, 0x01, 0xDC, 0x75, 0x80, 0xDC, 0x55, 0x06, 0xDC, 0x56, 0x01, 0xDC, 0x76, 0x8F, 0xCC, 0x15, 0xB3, 0x32, 0x9A, 0x50, 0x9A, 0x2F, 0xA2, 0x90, 0xC3, 0xB4, 0xDC, 0x56, 0xDC, 0x76, 0xDC, 0x56, 0xD4, 0x56, 0xDC, 0x56, 0xDC, 0x35, 0xDC, 0x55, 0xDC, 0x56, 0xDC, 0x55, 0xDC, 0x35, 0x01, 0xDC, 0x55, 0x80, 0xDC, 0x56, 0x15, 0xDC, 0x35, 0x81, 0xDC, 0x55, 0xDC, 0x35, 0x02, 0xDC, 0x34, 0x84, 0xD4, 0x33, 0xD4, 0x52, 0xD4, 0xD1, 0xFE, 0x54, 0xFE, 0x93, 0x01, 0xFE, 0xB2, 0x07, 0xFE, 0xB1, 0x80, 0xFE, 0xB2, 0x01, 0xFE, 0xD2, 0x89, 0xFE, 0xD3, 0xFE, 0xB5, 0xDD, 0x33, 0x8A, 0x2A, 0x8A, 0x0C, 0x89, 0xED, 0xB3, 0x52, 0xD4, 0x15, 0xDC, 0x56, 0xDC, 0x76, 0x05, 0xDC, 0x56, 0x81, 0xDC, 0x55, 0xDC, 0x35, 0x01, 0xDC, 0x34, 0x84, 0xD4, 0x53, 0xD4, 0x71, 0xFE, 0x75, 0xFE, 0xB4, 0xFE, 0xD4, 0x04, 0xFE, 0xB3, 0x01, 0xFE, 0xD4, 0x01, 0xFE, 0xB5, 0x85, 0xFE, 0x96, 0xFE, 0x58, 0xFD, 0xF9, 0xAA, 0x8F, 0xA1, 0xF1, 0xA1, 0xD3, 0x01, 0xA1, 0xF4, 0x8E, 0xA1, 0xF5, 0xA2, 0x16, 0x91, 0xF7, 0x71, 0x35, 0x60, 0xF6, 0x69, 0x58, 0x50, 0xD7, 0x59, 0x39, 0x82, 0x9E, 0x7A, 0x9F, 0x31, 0x3B, 0x21, 0x3C, 0x11, 0x7D, 0x09, 0x7E, 0x09, 0x9F, 0x01, + 0x01, 0x9F, 0x02, 0x01, 0xBF, 0x81, 0x01, 0xDF, 0x01, 0xBE, 0x03, 0x01, 0xDE, 0x96, 0x01, 0xDD, 0x01, 0xFC, 0x02, 0x1B, 0x02, 0xD9, 0x14, 0xDB, 0x1E, 0x1C, 0x26, 0xDC, 0x1F, 0x5A, 0x0F, 0x34, 0x07, 0x53, 0x0F, 0x73, 0x0F, 0x75, 0x1F, 0xB9, 0x1F, 0x5A, 0x36, 0xFC, 0x4E, 0x7D, 0x6D, 0xBD, 0x43, 0x36, 0x4A, 0x95, 0x4A, 0x14, 0x51, 0xF4, 0x51, 0xD4, 0x51, 0xB4, 0x01, 0x51, 0xB3, 0x81, 0x49, 0xB3, 0x49, 0x93, 0x01, 0x49, 0x92, 0x80, 0x41, 0x92, 0x01, 0x41, 0x72, 0x80, 0x41, 0x92, 0x02, 0x39, 0x71, 0x81, 0x39, 0x51, 0x39, 0x50, 0x06, 0x31, 0x50, 0x80, 0x31, 0x30, 0x08, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x0E, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x0B, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x19, 0x11, 0x11, 0x32, 0x19, 0x95, 0x19, 0xF7, 0x19, 0xD7, 0x19, 0x95, 0x11, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x05, 0x21, 0x2F, 0x8A, 0x19, 0x10, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x19, 0xB5, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x75, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x0A, 0x29, 0x0F, 0x80, 0x29, + 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x02, 0x28, 0xEF, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x07, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x0F, 0x21, 0x0E, 0x21, 0x0F, 0x03, 0x21, 0x0E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0E, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x0A, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0E, 0x02, 0x29, 0x2F, 0x87, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x8D, 0x21, 0x10, 0x21, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x11, 0x74, 0x19, 0xB5, 0x21, 0xF6, 0x19, 0xF6, 0x19, 0xD6, 0x19, 0x94, 0x19, 0x53, 0x11, 0x31, 0x19, 0x31, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, + 0x29, 0x2F, 0x83, 0x29, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x0B, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x0C, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x09, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x0A, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x21, 0x0E, 0x03, 0x29, 0x2F, 0x90, 0x21, 0x2F, 0x21, 0x0F, 0x19, 0x0F, 0x19, 0x10, 0x19, 0x31, 0x19, 0x52, 0x11, 0x33, 0x09, 0x33, 0x21, 0xF6, 0x22, 0x37, 0x21, 0xD6, 0x19, 0x74, 0x19, 0x73, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x20, 0xEF, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x85, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x13, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, + 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x20, 0xEE, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x0D, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x8E, 0x30, 0xEE, 0x38, 0xAD, 0x71, 0xD1, 0xA2, 0x73, 0xAA, 0x53, 0xAA, 0x32, 0xA2, 0x11, 0x99, 0xD0, 0x91, 0xAD, 0xCB, 0xF1, 0xFE, 0x36, 0xFE, 0x94, 0xFE, 0xD2, 0xFE, 0xB2, 0xFE, 0xB1, 0x04, 0xFE, 0xD1, 0x87, 0xFE, 0xD2, 0xFE, 0xB4, 0xC4, 0x6E, 0x7A, 0x09, 0x8A, 0x2C, 0x92, 0x6D, 0x9A, 0xAE, 0xCC, 0x14, 0x02, 0xD4, 0x55, 0x01, 0xDC, 0x55, 0x03, 0xDC, 0x54, 0x01, 0xDC, 0x33, 0x84, 0xDC, 0x52, 0xD4, 0x71, 0xDC, 0xB0, 0xFE, 0x53, 0xFE, 0xB2, 0x01, 0xFE, 0xB1, 0x80, 0xFE, 0xB0, 0x01, 0xFE, 0xD0, 0x81, 0xFE, 0xB0, 0xFE, 0xD0, 0x01, 0xFE, 0xB0, 0x06, 0xFE, 0xD0, 0x01, 0xFE, 0xF1, 0x86, 0xFE, 0xB2, 0xF6, 0x12, 0x92, 0xA8, 0x82, 0x29, 0x82, 0x0A, 0x92, 0x6C, 0xBB, 0x71, 0x03, 0xDC, 0x54, 0x02, 0xDC, 0x55, 0x01, 0xDC, 0x54, 0x01, 0xD4, 0x33, 0x86, 0xD4, 0x32, 0xD4, 0x52, 0xD4, 0x70, 0xF5, 0xD1, 0xFE, 0xB2, 0xFE, 0xB1, 0xFE, 0xD1, 0x06, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x03, 0xFE, 0xB0, 0x02, 0xFE, 0xD0, 0x01, 0xFE, 0xD1, 0x89, 0xFE, 0xB2, 0xF5, 0xF3, 0x92, 0xC9, 0x8A, 0x2A, 0x8A, 0x2C, 0x9A, 0xAE, 0xBB, 0x91, 0xCC, 0x34, 0xD4, 0x34, 0xD4, 0x54, 0x02, 0xDC, 0x55, 0x02, 0xDC, 0x54, 0x86, + 0xDC, 0x34, 0xDC, 0x33, 0xD4, 0x33, 0xD4, 0x52, 0xCC, 0x50, 0xF6, 0x12, 0xFE, 0x92, 0x02, 0xFE, 0xB1, 0x05, 0xFE, 0xD1, 0x90, 0xFE, 0xF1, 0xFE, 0xF2, 0xFE, 0xD2, 0xFE, 0xD3, 0xFE, 0xD5, 0xFE, 0xD6, 0xD5, 0x31, 0xBC, 0x0E, 0xB3, 0xCE, 0xB3, 0xAE, 0xB3, 0xAF, 0xBB, 0xAF, 0xBB, 0xD0, 0xC3, 0xD1, 0xC3, 0xF2, 0xCC, 0x13, 0xD4, 0x33, 0x04, 0xD4, 0x34, 0x82, 0xDC, 0x34, 0xDC, 0x54, 0xDC, 0x55, 0x02, 0xDC, 0x54, 0x01, 0xDC, 0x74, 0x83, 0xDC, 0xB4, 0xED, 0x35, 0xF5, 0x97, 0x81, 0xCB, 0x02, 0x92, 0x0E, 0x80, 0xDC, 0x96, 0x01, 0xDC, 0x75, 0x04, 0xDC, 0x55, 0x08, 0xDC, 0x35, 0x80, 0xDC, 0x34, 0x01, 0xDC, 0x35, 0x81, 0xDC, 0x34, 0xDC, 0x55, 0x04, 0xDC, 0x35, 0x80, 0xDC, 0x55, 0x01, 0xDC, 0x35, 0x02, 0xDC, 0x34, 0x84, 0xDC, 0x54, 0xDC, 0x34, 0xDC, 0x54, 0xD4, 0x34, 0xD4, 0x54, 0x01, 0xD4, 0x53, 0x86, 0xD4, 0x52, 0xD4, 0x51, 0xD4, 0xCF, 0xFE, 0x53, 0xFE, 0xB2, 0xFE, 0xB1, 0xFE, 0xD1, 0x02, 0xFE, 0xD0, 0x80, 0xFE, 0xB0, 0x06, 0xFE, 0xD0, 0x01, 0xFE, 0xCF, 0x01, 0xFE, 0xD0, 0x03, 0xFE, 0xCF, 0x80, 0xFE, 0xD0, 0x06, 0xFE, 0xCF, 0x01, 0xFE, 0xD0, 0x80, 0xFE, 0xCF, 0x05, 0xFE, 0xD0, 0x02, 0xFE, 0xD1, 0x8D, 0xFE, 0xD2, 0xFE, 0xD3, 0xFE, 0xD4, 0xFE, 0xB5, 0xFE, 0x95, 0xD4, 0xF0, 0xB3, 0xAD, 0xAB, 0x6D, 0xAB, 0x2D, 0xB3, 0x4F, 0xB3, 0x50, 0xC3, 0xB2, 0xCC, 0x13, 0xCC, 0x14, 0x01, 0xD4, 0x34, 0x01, 0xD4, 0x35, 0x81, 0xD4, 0x55, 0xDC, 0x55, 0x01, 0xDC, 0x75, 0x86, 0xCB, 0xF4, 0xB3, 0x51, 0x9A, 0x6F, 0x92, 0x4E, 0xA2, 0xB0, 0xBB, 0x72, 0xD4, + 0x35, 0x03, 0xD4, 0x55, 0x06, 0xDC, 0x55, 0x82, 0xD4, 0x35, 0xDC, 0x55, 0xDC, 0x34, 0x03, 0xD4, 0x54, 0x06, 0xD4, 0x34, 0x01, 0xDC, 0x34, 0x01, 0xD4, 0x34, 0x03, 0xDC, 0x34, 0x04, 0xD4, 0x34, 0x85, 0xD4, 0x33, 0xD4, 0x52, 0xD4, 0x51, 0xD4, 0xD0, 0xFE, 0x74, 0xFE, 0xB3, 0x01, 0xFE, 0xD2, 0x80, 0xFE, 0xB2, 0x01, 0xFE, 0xB1, 0x80, 0xFE, 0xD1, 0x02, 0xFE, 0xB1, 0x80, 0xFE, 0xD1, 0x02, 0xFE, 0xD2, 0x88, 0xFE, 0xF3, 0xFE, 0xB4, 0xE5, 0x53, 0x82, 0x29, 0x82, 0x0B, 0x81, 0xEC, 0xAB, 0x31, 0xCC, 0x14, 0xD4, 0x55, 0x06, 0xDC, 0x55, 0x86, 0xDC, 0x54, 0xDC, 0x34, 0xD4, 0x33, 0xD4, 0x52, 0xD4, 0x51, 0xDC, 0xF1, 0xFE, 0xB5, 0x01, 0xFE, 0xD4, 0x01, 0xFE, 0xD3, 0x80, 0xFE, 0xB3, 0x02, 0xFE, 0xD4, 0x01, 0xFE, 0xD5, 0x85, 0xFE, 0xB6, 0xFE, 0x57, 0xFD, 0xD8, 0xAA, 0x8F, 0x99, 0xAF, 0xA1, 0xD2, 0x01, 0xA9, 0xD3, 0x86, 0xA9, 0xF4, 0xAA, 0x15, 0xAA, 0x36, 0x91, 0xD6, 0x81, 0x75, 0x79, 0x56, 0x89, 0xD8, 0x01, 0x9A, 0x9B, 0x87, 0x92, 0x7B, 0x8A, 0x9D, 0x72, 0xBF, 0x31, 0x7C, 0x19, 0x5D, 0x09, 0x7E, 0x09, 0x9E, 0x01, 0x9F, 0x03, 0x01, 0xBF, 0x02, 0x01, 0xDF, 0x01, 0x01, 0xDE, 0x95, 0x01, 0xFE, 0x01, 0xFD, 0x01, 0xFC, 0x02, 0x1B, 0x02, 0xD9, 0x14, 0xFC, 0x1E, 0x3C, 0x26, 0xFC, 0x1F, 0x59, 0x07, 0x34, 0x07, 0x53, 0x07, 0x73, 0x07, 0x54, 0x1F, 0xD9, 0x27, 0x9B, 0x37, 0x3C, 0x4E, 0xBE, 0x6D, 0xFE, 0x3B, 0x36, 0x42, 0x75, 0x41, 0xF3, 0x49, 0xF4, 0x01, 0x49, 0xB3, 0x82, 0x51, 0xB3, 0x51, 0xD4, 0x49, 0x93, 0x01, 0x49, 0x72, 0x01, 0x41, 0x72, 0x82, + 0x41, 0x92, 0x41, 0x72, 0x41, 0x71, 0x02, 0x39, 0x51, 0x82, 0x31, 0x50, 0x39, 0x51, 0x39, 0x71, 0x02, 0x31, 0x50, 0x82, 0x31, 0x30, 0x31, 0x2F, 0x31, 0x30, 0x0B, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x82, 0x19, 0x10, 0x11, 0x11, 0x19, 0x95, 0x01, 0x19, 0xD6, 0x82, 0x11, 0x95, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x8A, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x32, 0x21, 0xB5, 0x29, 0xF7, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x19, 0x11, 0x21, 0x51, 0x01, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x28, 0xEF, 0x28, 0xEE, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0E, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x8C, 0x29, 0x0E, 0x21, + 0x0E, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x21, 0x0E, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x82, 0x29, 0x0E, 0x29, 0x2F, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x05, 0x29, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x10, 0x85, 0x21, 0x31, 0x19, 0x32, 0x19, 0x53, 0x11, 0x73, 0x19, 0xB5, 0x19, 0xF6, 0x01, 0x21, 0xF6, 0x83, 0x19, 0x94, 0x11, 0x52, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x83, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x80, 0x29, + 0x2F, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x0F, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x0A, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x02, 0x29, 0x2F, 0x90, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x11, 0x52, 0x11, 0x53, 0x21, 0xD6, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x95, 0x19, 0x74, 0x19, 0x32, 0x19, 0x31, 0x19, 0x30, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x20, 0xEE, 0x04, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x85, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0E, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x03, 0x29, + 0x0F, 0x80, 0x29, 0x2F, 0x0C, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x84, 0x30, 0xEE, 0x30, 0xCD, 0x48, 0xEE, 0x9A, 0x94, 0xA2, 0x53, 0x01, 0xA2, 0x32, 0x87, 0xA1, 0xF1, 0x99, 0xCE, 0x9A, 0x4D, 0xF5, 0x96, 0xFE, 0x95, 0xFE, 0xB3, 0xFE, 0xB2, 0xFE, 0xB1, 0x04, 0xFE, 0xD1, 0x83, 0xFE, 0xD2, 0xFE, 0xD3, 0xFE, 0x74, 0x8A, 0xC9, 0x01, 0x7A, 0x08, 0x83, 0x82, 0x49, 0xAB, 0x6E, 0xBB, 0xCF, 0xC3, 0xF0, 0x03, 0xCC, 0x31, 0x81, 0xD4, 0x51, 0xD4, 0x31, 0x02, 0xCC, 0x30, 0x85, 0xCC, 0x2F, 0xCC, 0x6E, 0xD4, 0xCE, 0xFE, 0x72, 0xFE, 0xB1, 0xFE, 0xD1, 0x01, 0xFE, 0xB0, 0x0B, 0xFE, 0xD0, 0x80, 0xFE, 0xF0, 0x01, 0xFE, 0xF1, 0x88, 0xFE, 0xD2, 0xFE, 0x93, 0xC4, 0x8D, 0xAB, 0xAC, 0x9A, 0xEA, 0x8A, 0x69, 0x9A, 0xCB, 0xBB, 0xF0, 0xCC, 0x31, 0x02, 0xD4, 0x52, 0x80, 0xD4, 0x72, 0x01, 0xD4, 0x52, 0x01, 0xCC, 0x51, 0x01, 0xCC, 0x50, 0x84, 0xD4, 0x70, 0xCC, 0x6E, 0xED, 0xF0, 0xFE, 0xB2, 0xFE, 0xD1, 0x0D, 0xFE, 0xD0, 0x81, 0xFE, 0xB0, 0xFE, 0xD0, 0x01, 0xFE, 0xF1, 0x8D, 0xFE, 0xD2, 0xFE, 0x73, 0xA3, 0x8A, 0x8A, 0x88, 0x82, 0x28, 0x8A, 0x69, 0x92, 0xCB, 0xB3, 0x8E, 0xC4, 0x10, 0xCC, 0x31, 0xD4, 0x51, 0xCC, 0x31, 0xD4, 0x51, 0xD4, 0x52, 0x02, 0xD4, 0x51, 0x89, 0xCC, 0x31, 0xCC, 0x30, 0xCC, 0x4F, 0xC4, 0x4E, 0xF6, 0x11, 0xFE, 0xB2, 0xFE, 0xB1, 0xFE, 0xD1, 0xFE, 0xB1, 0xFE, 0xD0, 0x02, 0xFE, 0xD1, 0x81, 0xFE, 0xF1, 0xFE, 0xD1, 0x02, 0xFE, 0xF1, 0x80, 0xFE, 0xF2, 0x01, 0xFE, 0xF3, 0x82, + 0xFE, 0xD4, 0xFE, 0xB5, 0xFE, 0x55, 0x01, 0xF5, 0xF4, 0x84, 0xF5, 0xD4, 0xE5, 0x53, 0xD4, 0xB1, 0xC4, 0x50, 0xC4, 0x0F, 0x01, 0xBB, 0xEF, 0x81, 0xC4, 0x10, 0xC3, 0xF0, 0x01, 0xC4, 0x10, 0x03, 0xCC, 0x31, 0x82, 0xCC, 0x51, 0xCC, 0x31, 0xCC, 0x51, 0x01, 0xCC, 0x70, 0x88, 0xD4, 0xF1, 0xE5, 0x33, 0x69, 0x46, 0x79, 0xC9, 0x79, 0xE9, 0x81, 0xE9, 0xAB, 0x6E, 0xBB, 0xCF, 0xC4, 0x11, 0x01, 0xCC, 0x31, 0x04, 0xD4, 0x52, 0x87, 0xD4, 0x32, 0xD4, 0x53, 0xD4, 0x32, 0xD4, 0x52, 0xCC, 0x32, 0xD4, 0x52, 0xCC, 0x52, 0xCC, 0x32, 0x03, 0xD4, 0x32, 0x82, 0xD4, 0x52, 0xD4, 0x32, 0xCC, 0x32, 0x01, 0xD4, 0x52, 0x82, 0xCC, 0x32, 0xD4, 0x32, 0xCC, 0x32, 0x02, 0xD4, 0x32, 0x01, 0xD4, 0x51, 0x02, 0xCC, 0x31, 0x87, 0xCC, 0x51, 0xCC, 0x50, 0xCC, 0x4F, 0xCC, 0x4E, 0xD4, 0xEE, 0xFE, 0x93, 0xFE, 0xB2, 0xFE, 0xD1, 0x07, 0xFE, 0xD0, 0x01, 0xFE, 0xCF, 0x80, 0xFE, 0xD0, 0x12, 0xFE, 0xCF, 0x07, 0xFE, 0xD0, 0x02, 0xFE, 0xD1, 0x01, 0xFE, 0xD2, 0x01, 0xFE, 0xD3, 0x85, 0xFE, 0xB4, 0xFE, 0x75, 0xF5, 0xF4, 0xF5, 0xB4, 0xE5, 0x33, 0xCC, 0x71, 0x01, 0xBB, 0xCF, 0x81, 0xBB, 0xD0, 0xBB, 0xF0, 0x01, 0xC3, 0xF0, 0x82, 0xC4, 0x11, 0xCC, 0x31, 0xCC, 0x51, 0x01, 0xCC, 0x72, 0x81, 0xB3, 0x8F, 0x9A, 0xED, 0x01, 0x82, 0x2A, 0x84, 0x92, 0x8B, 0x9A, 0xED, 0xBB, 0xB0, 0xC4, 0x11, 0xCC, 0x32, 0x02, 0xCC, 0x52, 0x04, 0xD4, 0x52, 0x02, 0xCC, 0x52, 0x82, 0xCC, 0x32, 0xCC, 0x31, 0xCC, 0x51, 0x03, 0xCC, 0x31, 0x02, 0xCC, 0x32, 0x03, 0xCC, 0x31, 0x04, 0xCC, 0x32, 0x03, 0xCC, 0x31, + 0x02, 0xCC, 0x51, 0x84, 0xCC, 0x50, 0xCC, 0x6F, 0xD4, 0xCF, 0xFE, 0x93, 0xFE, 0xD3, 0x01, 0xFE, 0xD2, 0x08, 0xFE, 0xD1, 0x01, 0xFE, 0xD2, 0x98, 0xFE, 0xF3, 0xFE, 0xD4, 0xE5, 0x92, 0x7A, 0x47, 0x71, 0xC7, 0x71, 0xC8, 0x82, 0x4A, 0xA3, 0x4E, 0xC4, 0x11, 0xCC, 0x52, 0xCC, 0x33, 0xCC, 0x53, 0xD4, 0x53, 0xD4, 0x73, 0xD4, 0x53, 0xD4, 0x52, 0xD4, 0x32, 0xD4, 0x51, 0xCC, 0x30, 0xD4, 0x91, 0xE5, 0x73, 0xFE, 0x75, 0xFE, 0xB4, 0xFE, 0xD4, 0xFE, 0xD3, 0x03, 0xFE, 0xD4, 0x89, 0xFE, 0xF4, 0xFE, 0xF5, 0xFE, 0xD5, 0xFE, 0xD6, 0xFE, 0x97, 0xFD, 0xD7, 0xAA, 0xCF, 0x99, 0xAE, 0xA1, 0xB1, 0xA9, 0xD2, 0x01, 0xA9, 0xD3, 0x8F, 0xA9, 0xF4, 0xAA, 0x15, 0xAA, 0x56, 0x91, 0xB5, 0x91, 0xB6, 0x91, 0xD6, 0x9A, 0x38, 0xA2, 0x58, 0xA2, 0x59, 0x9A, 0x7A, 0x92, 0x7C, 0x61, 0xDB, 0x31, 0x1A, 0x21, 0x5C, 0x11, 0x7E, 0x09, 0x9E, 0x01, 0x01, 0x9E, 0x01, 0x01, 0xBF, 0x03, 0x01, 0xDF, 0x01, 0x01, 0xFF, 0x9A, 0x01, 0xFE, 0x01, 0xFD, 0x02, 0x1C, 0x02, 0x3B, 0x02, 0xD9, 0x14, 0xFC, 0x1E, 0x3C, 0x26, 0xDB, 0x1F, 0x59, 0x0F, 0x34, 0x07, 0x53, 0x07, 0x73, 0x07, 0x74, 0x1F, 0xD9, 0x27, 0x7A, 0x2F, 0x1C, 0x4E, 0xBE, 0x65, 0xBD, 0x3B, 0x15, 0x3A, 0x54, 0x41, 0xF4, 0x41, 0xB3, 0x49, 0xB3, 0x51, 0xD4, 0x51, 0xF4, 0x51, 0xB3, 0x49, 0xB3, 0x02, 0x49, 0x92, 0x01, 0x41, 0x92, 0x01, 0x41, 0x71, 0x02, 0x39, 0x71, 0x81, 0x39, 0x51, 0x39, 0x50, 0x02, 0x31, 0x50, 0x01, 0x31, 0x30, 0x82, 0x31, 0x2F, 0x29, 0x2F, 0x31, 0x50, 0x07, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, + 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x86, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x31, 0x11, 0x11, 0x19, 0x95, 0x01, 0x19, 0xD6, 0x84, 0x11, 0x95, 0x11, 0x12, 0x19, 0x31, 0x21, 0x50, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x4F, 0x19, 0x30, 0x01, 0x19, 0x31, 0x81, 0x11, 0x32, 0x19, 0xB5, 0x01, 0x21, 0xF7, 0x84, 0x19, 0x95, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x03, 0x29, 0x0E, 0x84, 0x21, 0x0E, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x28, 0xEE, 0x29, 0x0F, 0x28, 0xEE, 0x01, 0x29, 0x0E, 0x02, 0x21, 0x0E, 0x02, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x01, + 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x20, 0xEE, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x83, 0x29, 0x0F, 0x21, 0x0E, 0x29, 0x0E, 0x29, 0x0F, 0x08, 0x29, 0x2F, 0x84, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x0A, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x04, 0x21, 0x0F, 0x08, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x01, 0x19, 0x11, 0x82, 0x19, 0x73, 0x19, 0x74, 0x19, 0xB5, 0x01, 0x21, 0xF6, 0x84, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x32, 0x19, 0x32, 0x21, 0x11, 0x01, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x08, 0x29, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, + 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x86, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x02, 0x21, 0x2F, 0x03, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x01, 0x21, 0x2F, 0x8D, 0x21, 0x30, 0x21, 0x31, 0x19, 0x31, 0x11, 0x32, 0x11, 0x33, 0x11, 0x53, 0x21, 0xF6, 0x2A, 0x38, 0x21, 0xD6, 0x19, 0x74, 0x11, 0x53, 0x11, 0x32, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x21, 0x0E, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x20, 0xEE, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x0D, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x29, + 0x0F, 0x04, 0x29, 0x2F, 0x91, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x30, 0xEE, 0x30, 0x6C, 0x82, 0x33, 0xA2, 0x73, 0xA2, 0x52, 0xAA, 0x32, 0xA2, 0x11, 0x99, 0xF0, 0x91, 0xCD, 0xB3, 0x0F, 0xFE, 0x77, 0xFE, 0xB4, 0xFE, 0xB3, 0xFE, 0xD2, 0x04, 0xFE, 0xD1, 0x01, 0xFE, 0xD2, 0x82, 0xFE, 0xD3, 0xFE, 0xF5, 0xFF, 0x16, 0x01, 0xFE, 0xF6, 0x82, 0xFE, 0xD6, 0xFE, 0xB6, 0xFE, 0x95, 0x01, 0xFE, 0x54, 0x01, 0xFE, 0x34, 0x83, 0xFE, 0x13, 0xFE, 0x54, 0xFE, 0x74, 0xFE, 0x94, 0x01, 0xFE, 0xB4, 0x83, 0xFE, 0xB3, 0xFE, 0x91, 0xFE, 0xB1, 0xFE, 0xD1, 0x0F, 0xFE, 0xD0, 0x02, 0xFE, 0xF1, 0x87, 0xFE, 0xD2, 0xFE, 0xF3, 0xFE, 0xF4, 0xFE, 0xF5, 0xFE, 0xF6, 0xFE, 0xD6, 0xFE, 0x95, 0xF5, 0xF3, 0x01, 0xED, 0xB3, 0x83, 0xF5, 0xD3, 0xED, 0xB3, 0xF5, 0xD3, 0xF5, 0xF3, 0x01, 0xFE, 0x13, 0x85, 0xFE, 0x33, 0xFE, 0x73, 0xFE, 0x93, 0xFE, 0x72, 0xFE, 0xD2, 0xFE, 0xD1, 0x10, 0xFE, 0xD0, 0x80, 0xFE, 0xF0, 0x01, 0xFE, 0xF1, 0x82, 0xFE, 0xF2, 0xFF, 0x14, 0xFE, 0xF5, 0x02, 0xFE, 0xF6, 0x82, 0xFE, 0xD5, 0xFE, 0x74, 0xFE, 0x54, 0x01, 0xFE, 0x34, 0x02, 0xF6, 0x13, 0x86, 0xFE, 0x34, 0xF6, 0x13, 0xFE, 0x33, 0xFE, 0x53, 0xFE, 0x94, 0xFE, 0x72, 0xFE, 0xB1, 0x01, 0xFE, 0xD1, 0x04, 0xFE, 0xD0, 0x02, 0xFE, 0xD1, 0x03, 0xFE, 0xF1, 0x02, 0xFE, 0xF2, 0x80, 0xFE, 0xF3, 0x03, 0xFE, 0xD4, 0x01, 0xFE, 0xD5, 0x02, 0xFE, 0xF5, 0x83, 0xFE, 0xD5, 0xFE, 0xF6, 0xFE, 0xD5, 0xFE, 0xB5, 0x01, 0xFE, 0x95, 0x01, 0xFE, 0x94, 0x80, 0xFE, 0x95, 0x02, 0xFE, 0x94, 0x01, 0xFE, 0xB5, + 0x81, 0xFE, 0xD4, 0xFE, 0xD5, 0x03, 0xFE, 0xF7, 0x82, 0xFE, 0xB6, 0xF6, 0x14, 0xED, 0xB3, 0x02, 0xE5, 0x72, 0x83, 0xED, 0x93, 0xE5, 0x72, 0xED, 0x93, 0xED, 0x92, 0x03, 0xED, 0xB3, 0x01, 0xF5, 0xD3, 0x80, 0xF5, 0xF3, 0x01, 0xF5, 0xD3, 0x01, 0xF5, 0xF3, 0x85, 0xF5, 0xD3, 0xF5, 0xF3, 0xF5, 0xD3, 0xF5, 0xF4, 0xF5, 0xF3, 0xF5, 0xF4, 0x02, 0xF5, 0xD3, 0x83, 0xF5, 0xF3, 0xF5, 0xD3, 0xF5, 0xF3, 0xF5, 0xD3, 0x01, 0xF5, 0xF3, 0x80, 0xFE, 0x34, 0x01, 0xFE, 0x33, 0x85, 0xFE, 0x53, 0xFE, 0x73, 0xFE, 0x93, 0xFE, 0xB2, 0xFE, 0xD2, 0xFE, 0xD1, 0x03, 0xFE, 0xD0, 0x10, 0xFE, 0xCF, 0x02, 0xFE, 0xD0, 0x80, 0xFE, 0xCF, 0x01, 0xFE, 0xD0, 0x01, 0xFE, 0xCF, 0x0A, 0xFE, 0xD0, 0x03, 0xFE, 0xD1, 0x01, 0xFE, 0xD2, 0x81, 0xFE, 0xD3, 0xFE, 0xB3, 0x01, 0xFE, 0xB4, 0x81, 0xFE, 0xB5, 0xFE, 0xD5, 0x01, 0xFE, 0xD6, 0x8A, 0xFE, 0xF6, 0xFE, 0xD6, 0xFE, 0xB5, 0xFE, 0x95, 0xFE, 0x75, 0xF6, 0x34, 0xF5, 0xF3, 0xED, 0xF3, 0xF6, 0x14, 0xFE, 0xB6, 0xFE, 0xD7, 0x02, 0xFE, 0xF7, 0x84, 0xFE, 0xD7, 0xFE, 0xB6, 0xFE, 0x34, 0xF5, 0xF4, 0xED, 0xB3, 0x02, 0xE5, 0x93, 0x80, 0xE5, 0x72, 0x01, 0xED, 0x93, 0x81, 0xED, 0xB3, 0xED, 0xD3, 0x01, 0xF5, 0xF4, 0x83, 0xF6, 0x14, 0xF6, 0x34, 0xFE, 0x35, 0xFE, 0x34, 0x08, 0xFE, 0x35, 0x84, 0xFE, 0x34, 0xF6, 0x34, 0xF6, 0x14, 0xFE, 0x15, 0xF6, 0x15, 0x01, 0xF6, 0x14, 0x81, 0xFE, 0x34, 0xF6, 0x14, 0x02, 0xFE, 0x34, 0x84, 0xFE, 0x54, 0xFE, 0x74, 0xFE, 0x73, 0xF6, 0x31, 0xFE, 0xD3, 0x02, 0xFE, 0xD2, 0x06, 0xFE, 0xD1, 0x01, 0xFE, 0xD2, + 0x80, 0xFE, 0xF2, 0x01, 0xFE, 0xD2, 0x82, 0xFE, 0xF3, 0xFE, 0xF4, 0xFF, 0x16, 0x01, 0xFF, 0x17, 0x82, 0xFE, 0xF7, 0xFE, 0xD7, 0xF6, 0x35, 0x01, 0xE5, 0x73, 0x89, 0xDD, 0x53, 0xDD, 0x33, 0xDD, 0x32, 0xE5, 0x53, 0xE5, 0x73, 0xED, 0xB3, 0xF6, 0x14, 0xFE, 0x95, 0xFE, 0xD6, 0xFE, 0xD5, 0x01, 0xFE, 0xD4, 0x81, 0xFE, 0xD3, 0xFE, 0xF4, 0x01, 0xFE, 0xD4, 0x02, 0xFE, 0xF4, 0x99, 0xFE, 0xF5, 0xFE, 0xD6, 0xFE, 0x97, 0xFE, 0x38, 0xAA, 0xCF, 0x99, 0xAE, 0xA1, 0xB0, 0xA1, 0xB2, 0xA9, 0xF3, 0xB1, 0xF4, 0xA9, 0xF3, 0xAA, 0x14, 0xAA, 0x15, 0x99, 0xD4, 0x91, 0x94, 0x91, 0xD6, 0x99, 0xF6, 0xA2, 0x37, 0xAA, 0x38, 0xA2, 0x58, 0xA2, 0x79, 0x92, 0x9C, 0x59, 0x9A, 0x31, 0x1A, 0x21, 0x5C, 0x11, 0x7D, 0x01, 0x09, 0x9E, 0x80, 0x01, 0xBE, 0x01, 0x01, 0xBF, 0x81, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x01, 0xDE, 0x80, 0x01, 0xFF, 0x01, 0x01, 0xFE, 0x93, 0x01, 0xFD, 0x02, 0x1C, 0x02, 0x3B, 0x02, 0xD9, 0x14, 0xFC, 0x1E, 0x3C, 0x26, 0xFC, 0x1F, 0x59, 0x07, 0x14, 0x07, 0x52, 0x07, 0x73, 0x0F, 0x95, 0x1F, 0xB9, 0x1F, 0x5A, 0x37, 0x3C, 0x4E, 0x9E, 0x44, 0xBA, 0x32, 0xD5, 0x42, 0x75, 0x42, 0x14, 0x01, 0x49, 0xD4, 0x81, 0x51, 0xF4, 0x51, 0xD4, 0x02, 0x49, 0x93, 0x80, 0x49, 0x92, 0x01, 0x41, 0x72, 0x82, 0x41, 0x92, 0x41, 0x72, 0x41, 0x71, 0x01, 0x39, 0x71, 0x82, 0x39, 0x51, 0x31, 0x50, 0x39, 0x51, 0x02, 0x31, 0x50, 0x01, 0x31, 0x30, 0x01, 0x31, 0x2F, 0x80, 0x31, 0x50, 0x03, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x0A, 0x29, + 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x0E, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x86, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x88, 0x21, 0x30, 0x19, 0x31, 0x11, 0x32, 0x19, 0x95, 0x19, 0xD7, 0x21, 0xF7, 0x11, 0x95, 0x11, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x4F, 0x29, 0x4F, 0x01, 0x21, 0x2F, 0x8D, 0x21, 0x4F, 0x21, 0x2F, 0x21, 0x50, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0xB5, 0x21, 0xF7, 0x21, 0xF6, 0x19, 0x74, 0x11, 0x12, 0x19, 0x32, 0x21, 0x31, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x05, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x82, 0x29, 0x2E, 0x29, 0x2F, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x0F, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x08, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x84, 0x21, + 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x2E, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0E, 0x21, 0x0E, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x2E, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x19, 0x10, 0x01, 0x19, 0x31, 0x89, 0x19, 0x53, 0x19, 0x74, 0x19, 0xB5, 0x21, 0xF6, 0x22, 0x17, 0x19, 0xD6, 0x19, 0x74, 0x11, 0x12, 0x19, 0x11, 0x21, 0x11, 0x01, 0x21, 0x10, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x0E, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, + 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x05, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x30, 0x19, 0x31, 0x11, 0x11, 0x11, 0x32, 0x11, 0x74, 0x19, 0xD6, 0x2A, 0x37, 0x21, 0xF6, 0x19, 0x95, 0x19, 0x53, 0x19, 0x32, 0x19, 0x11, 0x01, 0x19, 0x10, 0x03, 0x21, 0x0F, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0E, 0x02, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, + 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x21, 0x0E, 0x0A, 0x29, 0x0F, 0x0A, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x8E, 0x29, 0x2F, 0x29, 0x0E, 0x28, 0xEE, 0x30, 0xCD, 0x51, 0x0E, 0x9A, 0xB4, 0xA2, 0x53, 0xA2, 0x32, 0xA2, 0x12, 0xA1, 0xF1, 0x99, 0xCF, 0x91, 0xED, 0xE4, 0xF4, 0xFE, 0x76, 0xFE, 0xB4, 0x01, 0xFE, 0xD2, 0x04, 0xFE, 0xD1, 0x02, 0xFE, 0xD2, 0x02, 0xFE, 0xF3, 0x01, 0xFE, 0xD3, 0x80, 0xFE, 0xF3, 0x01, 0xFE, 0xD3, 0x80, 0xFE, 0xB3, 0x02, 0xFE, 0xD3, 0x02, 0xFE, 0xD2, 0x01, 0xFE, 0xD1, 0x81, 0xFE, 0xF1, 0xFE, 0xD1, 0x11, 0xFE, 0xD0, 0x03, 0xFE, 0xF1, 0x82, 0xFE, 0xF2, 0xFE, 0xD2, 0xFE, 0xF2, 0x02, 0xFE, 0xD3, 0x80, 0xFE, 0xB3, 0x03, 0xFE, 0xB4, 0x02, 0xFE, 0xB3, 0x02, 0xFE, 0xD2, 0x01, 0xFE, 0xD1, 0x05, 0xFE, 0xD0, 0x80, 0xFE, 0xCF, 0x0C, 0xFE, 0xD0, 0x01, 0xFE, 0xD1, 0x80, 0xFE, 0xF1, 0x02, 0xFE, 0xF2, 0x80, 0xFE, 0xF3, 0x05, 0xFE, 0xD3, 0x03, 0xFE, 0xB3, 0x02, 0xFE, 0xD2, 0x01, 0xFE, 0xD1, 0x0C, 0xFE, 0xD0, 0x03, 0xFE, 0xF1, 0x03, 0xFE, 0xF2, 0x80, 0xFE, 0xF3, 0x01, 0xFE, 0xF2, 0x01, 0xFE, 0xF3, 0x04, 0xFE, 0xF2, 0x0A, 0xFE, 0xD2, 0x04, 0xFE, 0xF3, 0x01, 0xFE, 0xD3, 0x82, 0xFE, 0xD4, 0xFE, 0xB4, 0xFE, 0xD4, 0x03, 0xFE, 0xB4, 0x80, 0xFE, 0xD4, 0x02, 0xFE, 0xB4, 0x83, 0xFE, 0xB3, 0xFE, 0xB4, 0xFE, 0xD4, 0xFE, + 0xB4, 0x06, 0xFE, 0xB3, 0x01, 0xFE, 0xD4, 0x06, 0xFE, 0xB4, 0x03, 0xFE, 0xB3, 0x01, 0xFE, 0xB2, 0x02, 0xFE, 0xD2, 0x01, 0xFE, 0xD1, 0x03, 0xFE, 0xD0, 0x12, 0xFE, 0xCF, 0x80, 0xFE, 0xD0, 0x01, 0xFE, 0xCF, 0x80, 0xFE, 0xD0, 0x03, 0xFE, 0xCF, 0x0B, 0xFE, 0xD0, 0x03, 0xFE, 0xD1, 0x02, 0xFE, 0xD2, 0x01, 0xFE, 0xD3, 0x06, 0xFE, 0xF3, 0x01, 0xFE, 0xD3, 0x80, 0xFE, 0xD4, 0x01, 0xFE, 0xD3, 0x81, 0xFE, 0xF4, 0xFE, 0xF3, 0x02, 0xFE, 0xF4, 0x81, 0xFE, 0xF3, 0xFE, 0xD3, 0x01, 0xFE, 0xD4, 0x04, 0xFE, 0xB4, 0x80, 0xFE, 0xB5, 0x01, 0xFE, 0xB4, 0x01, 0xFE, 0xD4, 0x80, 0xFE, 0xB4, 0x10, 0xFE, 0xD4, 0x80, 0xFE, 0xD5, 0x05, 0xFE, 0xD4, 0x03, 0xFE, 0xD3, 0x04, 0xFE, 0xD2, 0x04, 0xFE, 0xD1, 0x80, 0xFE, 0xB1, 0x01, 0xFE, 0xD1, 0x03, 0xFE, 0xD2, 0x82, 0xFE, 0xF2, 0xFE, 0xF3, 0xFF, 0x14, 0x03, 0xFE, 0xF4, 0x01, 0xFE, 0xD5, 0x80, 0xFE, 0xD6, 0x03, 0xFE, 0xB6, 0x01, 0xFE, 0xD5, 0x03, 0xFE, 0xD4, 0x82, 0xFE, 0xF4, 0xFE, 0xD3, 0xFE, 0xF3, 0x04, 0xFE, 0xF4, 0x88, 0xFE, 0xF5, 0xFE, 0xD6, 0xFE, 0xB7, 0xFE, 0x18, 0xAB, 0x0F, 0x99, 0xAE, 0xA1, 0xB0, 0xA1, 0xB1, 0xA9, 0xD2, 0x01, 0xA9, 0xF3, 0x01, 0xAA, 0x14, 0x90, 0xA2, 0x15, 0x91, 0x93, 0x91, 0xD4, 0x99, 0xF6, 0xA2, 0x16, 0xA2, 0x17, 0xAA, 0x37, 0xAA, 0x58, 0xA2, 0x59, 0x9A, 0x9C, 0x51, 0x5A, 0x28, 0xFA, 0x21, 0x3C, 0x19, 0x7D, 0x09, 0x9E, 0x09, 0xBE, 0x01, 0xBE, 0x02, 0x01, 0xBF, 0x02, 0x01, 0xDF, 0x02, 0x01, 0xFE, 0x97, 0x01, 0xFD, 0x02, 0x1C, 0x02, 0x3B, 0x02, 0xD9, 0x15, 0x1C, 0x1E, 0x3C, 0x26, + 0xFC, 0x1F, 0x59, 0x07, 0x14, 0x07, 0x53, 0x07, 0x93, 0x0F, 0x95, 0x1F, 0x98, 0x27, 0x5A, 0x3F, 0x3D, 0x56, 0xBE, 0x3C, 0x38, 0x32, 0xB5, 0x3A, 0x34, 0x4A, 0x14, 0x49, 0xD4, 0x51, 0xD4, 0x51, 0xF4, 0x51, 0xB4, 0x01, 0x49, 0x93, 0x85, 0x49, 0xB3, 0x49, 0x93, 0x41, 0x92, 0x41, 0x72, 0x41, 0x92, 0x41, 0x71, 0x03, 0x39, 0x71, 0x81, 0x31, 0x50, 0x39, 0x50, 0x01, 0x31, 0x50, 0x03, 0x31, 0x30, 0x81, 0x31, 0x50, 0x31, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x0B, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x10, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x06, 0x29, 0x0F, 0x95, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x31, 0x11, 0x32, 0x19, 0x95, 0x19, 0xD6, 0x19, 0xF7, 0x19, 0x95, 0x11, 0x11, 0x19, 0x31, 0x21, 0x30, 0x21, 0x50, 0x21, 0x4F, 0x21, 0x2F, 0x21, 0x2E, 0x02, 0x21, 0x2F, 0x8A, 0x21, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x33, 0x19, 0x94, 0x22, 0x17, 0x21, 0xD6, 0x19, 0xB5, 0x11, 0x12, 0x19, 0x12, 0x21, 0x31, 0x01, 0x21, 0x30, 0x81, 0x29, 0x30, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x06, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, + 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x21, 0x0E, 0x01, 0x29, 0x2F, 0x12, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0E, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x06, 0x29, 0x2F, 0x87, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x82, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x90, 0x29, 0x2F, 0x29, 0x30, 0x21, 0x30, 0x19, 0x10, 0x18, 0xF0, 0x19, 0x11, 0x11, 0x53, 0x19, 0x74, 0x19, 0xD6, 0x21, 0xF6, 0x22, 0x16, 0x21, 0xF6, 0x19, 0x74, 0x19, 0x32, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x01, 0x29, 0x10, 0x80, 0x29, 0x30, 0x07, 0x29, + 0x0F, 0x02, 0x21, 0x0F, 0x86, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x84, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x08, 0x21, 0x0F, 0x02, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x8E, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x30, 0x21, 0x31, 0x19, 0x11, 0x11, 0x31, 0x11, 0x32, 0x19, 0x94, 0x19, 0xD5, 0x22, 0x17, 0x21, 0xF6, 0x19, 0xB5, 0x19, 0x74, 0x19, 0x32, 0x11, 0x10, 0x01, 0x19, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0E, 0x04, 0x29, 0x0F, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, + 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x0B, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0E, 0x07, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0E, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x0A, 0x29, 0x2F, 0x85, 0x28, 0xEE, 0x30, 0xCD, 0x40, 0xAD, 0x82, 0x53, 0x9A, 0x73, 0xA2, 0x52, 0x01, 0xA2, 0x32, 0x87, 0xA1, 0xF1, 0x99, 0xEF, 0x9A, 0x2C, 0xF5, 0x96, 0xFE, 0x95, 0xFE, 0xD4, 0xFE, 0xD3, 0xFE, 0xD2, 0x04, 0xFE, 0xD1, 0x82, 0xFE, 0xD2, 0xFE, 0xF2, 0xFE, 0xD2, 0x01, 0xFE, 0xF2, 0x04, 0xFE, 0xD2, 0x82, 0xFE, 0xB2, 0xFE, 0xB1, 0xFE, 0xD2, 0x04, 0xFE, 0xD1, 0x14, 0xFE, 0xD0, 0x81, 0xFE, 0xF0, 0xFE, 0xD0, 0x05, 0xFE, 0xD1, 0x08, 0xFE, 0xB2, 0x80, 0xFE, 0xD2, 0x02, 0xFE, 0xD1, 0x03, 0xFE, 0xD0, 0x80, 0xFE, 0xCF, 0x01, 0xFE, 0xD0, 0x03, 0xFE, 0xCF, 0x0B, 0xFE, 0xD0, 0x02, 0xFE, 0xD1, 0x01, 0xFE, 0xF1, 0x80, 0xFE, 0xD1, 0x07, 0xFE, 0xD2, 0x80, 0xFE, 0xB2, 0x03, 0xFE, 0xD1, 0x04, 0xFE, 0xD0, 0x80, 0xFE, 0xB0, 0x0B, 0xFE, 0xD0, 0x07, 0xFE, 0xD1, 0x81, 0xFE, 0xF1, 0xFE, 0xF2, 0x02, 0xFE, 0xF1, 0x0B, 0xFE, 0xD1, 0x27, 0xFE, 0xD2, 0x02, + 0xFE, 0xB2, 0x04, 0xFE, 0xD1, 0x05, 0xFE, 0xD0, 0x0B, 0xFE, 0xCF, 0x80, 0xFE, 0xEF, 0x0A, 0xFE, 0xCF, 0x01, 0xFE, 0xD0, 0x01, 0xFE, 0xCF, 0x0C, 0xFE, 0xD0, 0x04, 0xFE, 0xD1, 0x15, 0xFE, 0xD2, 0x80, 0xFE, 0xB2, 0x01, 0xFE, 0xB3, 0x04, 0xFE, 0xD3, 0x80, 0xFE, 0xB3, 0x19, 0xFE, 0xD3, 0x83, 0xFE, 0xF3, 0xFE, 0xD3, 0xFE, 0xD2, 0xFE, 0xF2, 0x05, 0xFE, 0xD2, 0x80, 0xFE, 0xD1, 0x01, 0xFE, 0xD2, 0x04, 0xFE, 0xD1, 0x05, 0xFE, 0xD2, 0x01, 0xFE, 0xD3, 0x02, 0xFE, 0xF3, 0x05, 0xFE, 0xD4, 0x80, 0xFE, 0xB4, 0x01, 0xFE, 0xD4, 0x02, 0xFE, 0xD3, 0x01, 0xFE, 0xD4, 0x01, 0xFE, 0xD3, 0x03, 0xFE, 0xF4, 0x88, 0xFE, 0xF5, 0xFE, 0xD5, 0xFE, 0x96, 0xFD, 0xF7, 0xA2, 0x8E, 0x91, 0xAD, 0xA1, 0xB0, 0xA1, 0xB1, 0xA9, 0xD2, 0x02, 0xA9, 0xF3, 0x85, 0xB2, 0x14, 0xAA, 0x35, 0xA2, 0x15, 0x91, 0xB4, 0x91, 0xD4, 0x99, 0xF5, 0x01, 0xA2, 0x16, 0x8D, 0xAA, 0x37, 0xAA, 0x38, 0xA2, 0x59, 0x9A, 0x9C, 0x48, 0xF9, 0x28, 0xFA, 0x21, 0x5C, 0x11, 0x7D, 0x09, 0x9E, 0x09, 0xBE, 0x01, 0xBE, 0x01, 0xBF, 0x01, 0xDF, 0x01, 0xDE, 0x01, 0x01, 0xDF, 0x02, 0x01, 0xFF, 0x97, 0x01, 0xFE, 0x01, 0xFD, 0x02, 0x1C, 0x02, 0x3B, 0x02, 0xF9, 0x15, 0x1C, 0x1E, 0x3C, 0x26, 0xFC, 0x1F, 0x59, 0x07, 0x14, 0x07, 0x32, 0x07, 0x73, 0x0F, 0x95, 0x1F, 0x98, 0x27, 0x19, 0x47, 0x5D, 0x6F, 0x5F, 0x33, 0xF6, 0x32, 0xB4, 0x3A, 0x13, 0x49, 0xF4, 0x49, 0xB3, 0x51, 0xD4, 0x51, 0xB4, 0x01, 0x49, 0x93, 0x85, 0x49, 0x72, 0x49, 0x93, 0x49, 0x92, 0x49, 0x72, 0x41, 0x72, 0x41, 0x92, 0x01, 0x41, 0x71, 0x01, + 0x39, 0x71, 0x01, 0x39, 0x51, 0x04, 0x31, 0x50, 0x81, 0x29, 0x2F, 0x31, 0x30, 0x01, 0x31, 0x2F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x31, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x21, 0x0E, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x82, 0x20, 0xEE, 0x21, 0x0E, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0E, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x21, 0x0E, 0x81, 0x29, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x8A, 0x21, 0x30, 0x19, 0x10, 0x11, 0x12, 0x19, 0xB5, 0x19, 0xD6, 0x19, 0xD7, 0x11, 0x74, 0x11, 0x11, 0x19, 0x31, 0x19, 0x30, 0x21, 0x50, 0x01, 0x21, 0x2F, 0x90, 0x21, 0x0E, 0x21, 0x2E, 0x21, 0x2F, 0x21, 0x4F, 0x21, 0x0F, 0x19, 0x30, 0x19, 0x31, 0x11, 0x32, 0x19, 0x94, 0x2A, 0x17, 0x21, 0xD6, 0x19, 0x95, 0x11, 0x12, 0x19, 0x32, 0x19, 0x31, 0x21, 0x31, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x04, 0x29, 0x2F, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x80, 0x28, 0xEE, 0x01, 0x29, 0x0F, 0x83, + 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x0F, 0x29, 0x0F, 0x82, 0x29, 0x0E, 0x20, 0xEE, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x84, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x03, 0x21, 0x0E, 0x83, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x84, 0x29, 0x2F, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0E, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x08, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0E, 0x81, 0x21, 0x0E, 0x29, 0x0F, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x21, 0x0E, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x83, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x0E, 0x07, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x8F, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x2E, 0x29, 0x2F, 0x29, 0x50, 0x21, 0x2F, 0x19, 0x0F, 0x19, 0x10, 0x19, 0x31, 0x11, 0x11, 0x19, 0x73, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x19, 0xF6, 0x85, 0x21, 0xD6, 0x19, 0x74, 0x19, 0x32, 0x19, 0x11, 0x21, 0x11, 0x21, 0x10, 0x03, 0x29, 0x10, 0x80, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, + 0x01, 0x21, 0x0F, 0x85, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x0C, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x82, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0B, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x11, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x07, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x11, 0x32, 0x81, 0x11, 0x74, 0x19, 0xD6, 0x01, 0x22, 0x17, 0x85, 0x19, 0x95, 0x19, 0x74, 0x19, 0x52, 0x19, 0x31, 0x19, 0x30, 0x19, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0E, 0x29, 0x0F, 0x05, 0x21, 0x0E, 0x81, 0x29, 0x0F, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0E, 0x03, 0x29, 0x0F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2F, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x2F, 0x21, 0x0E, + 0x01, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x07, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x02, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x82, 0x21, 0x0E, 0x29, 0x0F, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x83, 0x29, 0x0F, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x0C, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x8D, 0x28, 0xCD, 0x30, 0xAD, 0x48, 0xEE, 0x9A, 0x94, 0xA2, 0x73, 0xA2, 0x53, 0xA2, 0x32, 0xA2, 0x12, 0x99, 0xF0, 0x99, 0xEE, 0x9A, 0x6D, 0xFE, 0x37, 0xFE, 0x95, 0xFE, 0xD4, 0x01, 0xFE, 0xD2, 0x05, 0xFE, 0xD1, 0x80, 0xFE, 0xB1, 0x02, 0xFE, 0xD1, 0x80, 0xFE, 0xB1, 0x07, 0xFE, 0xD1, 0x80, 0xFE, 0xB0, 0x02, 0xFE, 0xD0, 0x80, 0xFE, 0xB0, 0x03, 0xFE, 0xD0, 0x05, 0xFE, 0xCF, 0x0E, 0xFE, 0xD0, 0x03, 0xFE, 0xD1, 0x03, 0xFE, 0xB1, 0x04, 0xFE, 0xD1, 0x06, 0xFE, 0xD0, 0x01, 0xFE, 0xCF, 0x01, 0xFE, 0xAF, 0x02, 0xFE, 0xCF, 0x02, 0xFE, 0xD0, 0x80, 0xFE, 0xAF, 0x0A, 0xFE, 0xD0, 0x0C, 0xFE, 0xD1, 0x15, 0xFE, 0xD0, 0x07, 0xFE, 0xD1, 0x80, 0xFE, 0xF1, 0x01, 0xFE, 0xD0, 0x02, 0xFE, 0xD1, 0x80, 0xFE, 0xD0, 0x01, 0xFE, 0xD1, 0x80, 0xFE, 0xD0, 0x03, 0xFE, 0xD1, 0x80, 0xFE, 0xB1, 0x2D, 0xFE, 0xD1, 0x04, 0xFE, 0xD0, 0x81, 0xFE, 0xCF, 0xFE, 0xD0, 0x1A, 0xFE, 0xCF, 0x02, 0xFE, 0xD0, 0x80, 0xFE, 0xAF, 0x01, 0xFE, 0xD0, + 0x01, 0xFE, 0xB0, 0x08, 0xFE, 0xD0, 0x05, 0xFE, 0xD1, 0x80, 0xFE, 0xF1, 0x06, 0xFE, 0xD1, 0x16, 0xFE, 0xD2, 0x80, 0xFE, 0xD3, 0x0B, 0xFE, 0xD2, 0x03, 0xFE, 0xD3, 0x01, 0xFE, 0xF3, 0x80, 0xFE, 0xD3, 0x05, 0xFE, 0xD2, 0x80, 0xFE, 0xF2, 0x05, 0xFE, 0xD2, 0x80, 0xFE, 0xD1, 0x02, 0xFE, 0xD2, 0x05, 0xFE, 0xD1, 0x05, 0xFE, 0xD2, 0x81, 0xFE, 0xD3, 0xFE, 0xD2, 0x0F, 0xFE, 0xD3, 0x80, 0xFE, 0xF3, 0x02, 0xFE, 0xF4, 0x88, 0xFE, 0xF5, 0xFE, 0xF6, 0xFE, 0x97, 0xF5, 0xB6, 0xAA, 0xAE, 0x99, 0xCE, 0xA1, 0xB0, 0xA1, 0xB1, 0xA9, 0xD2, 0x01, 0xA9, 0xF3, 0x80, 0xAA, 0x13, 0x01, 0xAA, 0x14, 0x81, 0xAA, 0x35, 0x99, 0xF4, 0x01, 0x91, 0xB4, 0x8B, 0x99, 0xD5, 0xA2, 0x16, 0xAA, 0x16, 0xAA, 0x37, 0xAA, 0x38, 0xA2, 0x59, 0x92, 0x7B, 0x40, 0xF8, 0x29, 0x1B, 0x21, 0x5C, 0x11, 0x7D, 0x09, 0xBE, 0x01, 0x01, 0xBE, 0x80, 0x01, 0xBF, 0x03, 0x01, 0xDF, 0x02, 0x01, 0xFF, 0x95, 0x01, 0xFE, 0x01, 0xFD, 0x02, 0x1C, 0x02, 0x3B, 0x02, 0xD9, 0x15, 0x1C, 0x26, 0x5C, 0x26, 0xFC, 0x1F, 0x59, 0x07, 0x14, 0x07, 0x32, 0x0F, 0x94, 0x17, 0x75, 0x1F, 0x78, 0x2F, 0x19, 0x4F, 0x5D, 0x66, 0xDF, 0x33, 0xB6, 0x32, 0x73, 0x42, 0x14, 0x49, 0xD3, 0x49, 0xB3, 0x01, 0x51, 0xB4, 0x80, 0x49, 0x73, 0x01, 0x49, 0x93, 0x80, 0x49, 0x92, 0x01, 0x49, 0x72, 0x81, 0x41, 0x72, 0x41, 0x92, 0x01, 0x41, 0x71, 0x82, 0x39, 0x71, 0x39, 0x51, 0x39, 0x71, 0x01, 0x39, 0x50, 0x02, 0x31, 0x50, 0x81, 0x31, 0x2F, 0x31, 0x30, 0x02, 0x31, 0x2F, 0x83, 0x29, 0x2F, 0x31, 0x2F, 0x29, 0x2F, 0x29, 0x0F, 0x01, + 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x04, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x0E, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x80, 0x21, 0x0F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x29, 0x0F, 0x05, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x8B, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x10, 0x11, 0x32, 0x19, 0x95, 0x19, 0xD6, 0x19, 0xB6, 0x19, 0x95, 0x11, 0x11, 0x19, 0x10, 0x19, 0x30, 0x02, 0x21, 0x2F, 0x8F, 0x21, 0x2E, 0x21, 0x2F, 0x29, 0x4F, 0x21, 0x2F, 0x21, 0x0F, 0x19, 0x30, 0x19, 0x31, 0x19, 0x52, 0x11, 0x54, 0x21, 0xF7, 0x22, 0x17, 0x11, 0x95, 0x11, 0x33, 0x11, 0x32, 0x19, 0x32, 0x21, 0x31, 0x01, 0x29, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x2F, 0x02, 0x21, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x06, 0x29, 0x0F, 0x85, 0x29, 0x0E, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x28, 0xEF, 0x03, 0x29, 0x0F, 0x80, 0x28, 0xEF, 0x04, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x80, 0x28, 0xEE, 0x01, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x81, + 0x21, 0x0F, 0x20, 0xEE, 0x01, 0x21, 0x0E, 0x81, 0x29, 0x0E, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x80, 0x20, 0xEE, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x05, 0x29, 0x0F, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2F, 0x29, 0x2E, 0x21, 0x0E, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2F, 0x21, 0x0E, 0x05, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2E, 0x84, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x18, 0xEF, 0x01, 0x19, 0x10, 0x87, 0x19, 0x11, 0x19, 0x73, 0x19, 0x74, 0x19, 0xB5, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0xB5, 0x19, 0x74, 0x01, 0x19, 0x32, 0x82, 0x19, 0x11, 0x18, 0xF0, 0x20, 0xF0, 0x05, 0x21, 0x10, 0x85, 0x29, 0x30, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, + 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x09, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x05, 0x21, 0x0F, 0x81, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x29, 0x30, 0x01, 0x21, 0x30, 0x01, 0x19, 0x31, 0x8B, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD5, 0x21, 0xF6, 0x21, 0xD6, 0x19, 0x94, 0x11, 0x33, 0x19, 0x32, 0x19, 0x31, 0x19, 0x30, 0x19, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2E, 0x03, 0x21, 0x2E, 0x05, 0x21, 0x0E, 0x83, 0x20, 0xEE, 0x21, 0x0E, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x07, 0x29, 0x0F, 0x82, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0E, 0x08, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x0E, 0x80, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x83, 0x21, 0x0E, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x21, 0x0E, + 0x01, 0x29, 0x0F, 0x04, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x0E, 0x0D, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x06, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x90, 0x28, 0xEE, 0x30, 0xCE, 0x38, 0xCD, 0x69, 0x90, 0x92, 0x12, 0xA2, 0x33, 0xAA, 0x53, 0xA2, 0x32, 0xA2, 0x11, 0x99, 0xF0, 0x99, 0xEE, 0xA2, 0xCE, 0xFD, 0xD6, 0xFE, 0x95, 0xFE, 0xD4, 0xFE, 0xF3, 0xFE, 0xF2, 0x01, 0xFE, 0xD2, 0x02, 0xFE, 0xD1, 0x81, 0xFE, 0xB1, 0xFE, 0xD1, 0x07, 0xFE, 0xB1, 0x05, 0xFE, 0xB0, 0x01, 0xFE, 0xD0, 0x01, 0xFE, 0xB0, 0x01, 0xFE, 0xD0, 0x80, 0xFE, 0xAF, 0x02, 0xFE, 0xCF, 0x81, 0xFE, 0xAF, 0xFE, 0xCF, 0x04, 0xFE, 0xAF, 0x01, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x02, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x05, 0xFE, 0xB0, 0x81, 0xFE, 0xD1, 0xFE, 0xB0, 0x05, 0xFE, 0xB1, 0x80, 0xFE, 0xB0, 0x02, 0xFE, 0xD0, 0x03, 0xFE, 0xB0, 0x82, 0xFE, 0xAF, 0xFE, 0xD0, 0xFE, 0xCF, 0x03, 0xFE, 0xAF, 0x02, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x04, 0xFE, 0xAF, 0x02, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x04, 0xFE, 0xB0, 0x04, 0xFE, 0xD0, 0x01, 0xFE, 0xD1, 0x01, 0xFE, 0xD0, 0x80, 0xFE, 0xB0, 0x04, 0xFE, 0xD0, 0x02, 0xFE, 0xB0, 0x09, 0xFE, 0xAF, 0x0B, 0xFE, 0xD0, 0x80, 0xFE, 0xB0, 0x03, 0xFE, 0xD0, 0x81, 0xFE, 0xB0, 0xFE, 0xD0, 0x09, 0xFE, 0xB0, 0x80, 0xFE, 0xB1, 0x02, 0xFE, 0xD1, 0x80, 0xFE, 0xB1, 0x01, 0xFE, 0xB0, 0x01, 0xFE, 0xD1, 0x01, 0xFE, 0xB0, 0x05, 0xFE, 0xD1, 0x80, 0xFE, 0xD0, 0x01, 0xFE, 0xB0, 0x03, 0xFE, 0xB1, 0x02, 0xFE, 0xD1, + 0x80, 0xFE, 0xB1, 0x0B, 0xFE, 0xD1, 0x03, 0xFE, 0xD0, 0x80, 0xFE, 0xB0, 0x02, 0xFE, 0xD0, 0x80, 0xFE, 0xB0, 0x02, 0xFE, 0xD0, 0x03, 0xFE, 0xCF, 0x80, 0xFE, 0xAF, 0x04, 0xFE, 0xCF, 0x07, 0xFE, 0xAF, 0x02, 0xFE, 0xCF, 0x03, 0xFE, 0xAF, 0x01, 0xFE, 0xCF, 0x01, 0xFE, 0xAF, 0x80, 0xFE, 0xD0, 0x0E, 0xFE, 0xB0, 0x82, 0xFE, 0xD0, 0xFE, 0xB0, 0xFE, 0xD0, 0x0A, 0xFE, 0xD1, 0x02, 0xFE, 0xB1, 0x80, 0xFE, 0xD1, 0x06, 0xFE, 0xB1, 0x80, 0xFE, 0xB2, 0x01, 0xFE, 0xB1, 0x01, 0xFE, 0xB2, 0x82, 0xFE, 0xD2, 0xFE, 0xB2, 0xFE, 0xD2, 0x07, 0xFE, 0xB2, 0x80, 0xFE, 0xD2, 0x03, 0xFE, 0xB2, 0x18, 0xFE, 0xD2, 0x02, 0xFE, 0xB1, 0x02, 0xFE, 0xB2, 0x01, 0xFE, 0xD2, 0x81, 0xFE, 0xB2, 0xFE, 0xD2, 0x02, 0xFE, 0xB2, 0x03, 0xFE, 0xD2, 0x0D, 0xFE, 0xD3, 0x03, 0xFE, 0xF4, 0x88, 0xFE, 0xF5, 0xFE, 0xF6, 0xFE, 0x97, 0xF5, 0x96, 0xAA, 0x8E, 0x99, 0xAD, 0xA1, 0xB0, 0xA9, 0xD1, 0xA9, 0xF2, 0x01, 0xA9, 0xF3, 0x80, 0xAA, 0x13, 0x01, 0xAA, 0x14, 0x91, 0xAA, 0x34, 0x91, 0xD4, 0x89, 0xB3, 0x89, 0xD4, 0x91, 0xD5, 0x99, 0xF5, 0xA2, 0x16, 0xAA, 0x16, 0xAA, 0x37, 0xA2, 0x38, 0xA2, 0x59, 0x82, 0x1A, 0x38, 0xD8, 0x29, 0x1B, 0x21, 0x5C, 0x11, 0x9D, 0x09, 0x9E, 0x01, 0xBE, 0x01, 0x01, 0xBF, 0x02, 0x01, 0xDF, 0x99, 0x01, 0xFF, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xFE, 0x02, 0x1E, 0x02, 0x1D, 0x02, 0x3D, 0x02, 0x5B, 0x02, 0xF9, 0x1D, 0x3C, 0x26, 0x7C, 0x26, 0xFC, 0x1F, 0x39, 0x06, 0xF4, 0x07, 0x12, 0x17, 0x94, 0x1F, 0x75, 0x27, 0x78, 0x37, 0x1A, 0x5F, 0x7F, 0x55, 0xFC, 0x33, 0x75, + 0x3A, 0x74, 0x4A, 0x55, 0x51, 0xF4, 0x51, 0xD4, 0x01, 0x51, 0xB4, 0x01, 0x51, 0x93, 0x85, 0x51, 0xB3, 0x49, 0xB3, 0x49, 0x72, 0x49, 0x92, 0x41, 0x72, 0x41, 0x91, 0x01, 0x41, 0x71, 0x02, 0x39, 0x71, 0x81, 0x31, 0x50, 0x31, 0x30, 0x02, 0x31, 0x50, 0x81, 0x31, 0x2F, 0x31, 0x50, 0x01, 0x31, 0x2F, 0x80, 0x31, 0x50, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x10, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0E, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x10, 0x11, 0x32, 0x11, 0x94, 0x01, 0x19, 0xB6, 0x83, 0x11, 0x95, 0x11, 0x11, 0x19, 0x31, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x91, 0x21, 0x0E, 0x21, 0x2F, 0x29, 0x4F, 0x21, 0x4F, 0x21, 0x2F, 0x19, 0x30, 0x19, 0x10, 0x11, 0x32, 0x11, 0x53, 0x21, 0xF6, 0x22, 0x37, 0x19, 0xF6, 0x09, 0x53, 0x09, 0x12, 0x19, 0x32, 0x19, 0x31, 0x29, 0x51, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x21, 0x0E, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x0E, 0x29, 0x2E, 0x07, + 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x80, 0x20, 0xEE, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x20, 0xEE, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x03, 0x29, 0x0E, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x08, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x05, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x02, 0x21, 0x0E, 0x82, 0x29, 0x0F, 0x21, 0x0E, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x81, 0x21, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x01, 0x19, 0x10, 0x8A, 0x19, 0x31, 0x11, 0x53, 0x19, 0x94, 0x19, 0xB5, 0x19, 0xD6, 0x21, 0xF6, 0x21, 0xD5, 0x19, 0x74, 0x19, 0x53, 0x11, 0x11, 0x18, 0xF1, 0x01, 0x18, 0xF0, 0x01, 0x21, 0x31, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2F, + 0x08, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x0F, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x07, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x08, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x83, 0x21, 0x0F, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x30, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x86, 0x21, 0x31, 0x19, 0x11, 0x11, 0x11, 0x11, 0x12, 0x11, 0x32, 0x11, 0x74, 0x19, 0xD5, 0x01, 0x21, 0xF6, 0x84, 0x19, 0x95, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x01, 0x19, 0x0F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x4F, 0x21, 0x2F, 0x21, 0x2E, 0x01, 0x21, 0x0E, 0x01, 0x21, 0x2E, 0x88, 0x29, 0x2F, 0x29, 0x2E, 0x21, 0x0E, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0F, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x81, 0x21, 0x0E, 0x29, 0x0F, 0x04, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x82, 0x21, 0x0E, 0x29, 0x2F, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x82, + 0x29, 0x2F, 0x29, 0x0E, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x03, 0x21, 0x0E, 0x81, 0x29, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x82, 0x21, 0x0E, 0x29, 0x0E, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x84, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x2F, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x04, 0x29, 0x0E, 0x0B, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x09, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x8F, 0x28, 0xEE, 0x30, 0xCD, 0x48, 0xEE, 0x79, 0xD1, 0x9A, 0x33, 0xA2, 0x53, 0xAA, 0x53, 0xA2, 0x32, 0x99, 0xF1, 0x99, 0xF0, 0x91, 0xED, 0x9A, 0x8D, 0xFD, 0xF6, 0xFE, 0x96, 0xFE, 0xD4, 0xFE, 0xD3, 0x02, 0xFE, 0xD2, 0x01, 0xFE, 0xD1, 0x08, 0xFE, 0xB1, 0x07, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x02, 0xFE, 0xB0, 0x0C, 0xFE, 0xAF, 0x1D, 0xFE, 0xB0, 0x03, 0xFE, 0xAF, 0x80, 0xFE, 0xB0, 0x06, 0xFE, 0xAF, 0x17, 0xFE, 0xB0, 0x81, 0xFE, 0xD0, 0xFE, 0xAF, 0x01, 0xFE, 0xB0, 0x01, 0xFE, 0xAF, 0x80, 0xFE, 0xD0, 0x08, 0xFE, 0xAF, 0x05, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x06, 0xFE, 0xB0, 0x82, 0xFE, 0xD0, 0xFE, 0xB0, 0xFE, 0xD0, 0x28, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x01, 0xFE, 0xB0, 0x01, 0xFE, 0xD0, 0x01, 0xFE, 0xB0, 0x01, 0xFE, 0xD0, 0x07, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x01, 0xFE, 0xB0, 0x82, 0xFE, 0xAF, 0xFE, 0xD0, 0xFE, 0xCF, 0x02, 0xFE, 0xD0, 0x81, 0xFE, 0xAF, 0xFE, 0xCF, 0x15, 0xFE, 0xAF, 0x11, 0xFE, 0xB0, 0x88, 0xFE, 0xD0, 0xFE, 0xB0, 0xFE, 0xD0, 0xFE, 0xB0, 0xFE, 0xD1, 0xFE, 0xD0, 0xFE, 0xD1, + 0xFE, 0xB0, 0xFE, 0xD1, 0x14, 0xFE, 0xB1, 0x81, 0xFE, 0xB2, 0xFE, 0xB1, 0x06, 0xFE, 0xB2, 0x80, 0xFE, 0xB1, 0x07, 0xFE, 0xB2, 0x01, 0xFE, 0xD2, 0x80, 0xFE, 0xB2, 0x0B, 0xFE, 0xD2, 0x80, 0xFE, 0xB2, 0x02, 0xFE, 0xD2, 0x01, 0xFE, 0xB2, 0x80, 0xFE, 0xB1, 0x0C, 0xFE, 0xB2, 0x01, 0xFE, 0xD2, 0x82, 0xFE, 0xB2, 0xFE, 0xD2, 0xFE, 0xB2, 0x01, 0xFE, 0xD2, 0x04, 0xFE, 0xD3, 0x80, 0xFE, 0xB3, 0x02, 0xFE, 0xD3, 0x01, 0xFE, 0xD4, 0x02, 0xFE, 0xF4, 0x88, 0xFE, 0xF5, 0xFE, 0xD6, 0xFE, 0xB7, 0xF5, 0x96, 0xB2, 0xEF, 0x99, 0xCE, 0xA1, 0xB0, 0xA9, 0xD1, 0xA9, 0xD2, 0x01, 0xA9, 0xF3, 0x02, 0xAA, 0x14, 0x87, 0xAA, 0x34, 0x9A, 0x14, 0x89, 0xB3, 0x89, 0xB4, 0x89, 0xD4, 0x89, 0xB4, 0x99, 0xF5, 0xA2, 0x16, 0x01, 0xAA, 0x37, 0x89, 0xA2, 0x38, 0x9A, 0x39, 0x79, 0xD9, 0x38, 0xD9, 0x29, 0x1B, 0x19, 0x5C, 0x11, 0x7D, 0x01, 0x9E, 0x01, 0xBE, 0x01, 0xBF, 0x01, 0x01, 0xDF, 0x02, 0x01, 0xFF, 0x02, 0x02, 0x1F, 0x01, 0x02, 0x1E, 0x97, 0x02, 0x3C, 0x02, 0x5B, 0x02, 0xF9, 0x15, 0x1C, 0x26, 0x7C, 0x26, 0xFC, 0x1F, 0x39, 0x07, 0x14, 0x07, 0x12, 0x17, 0x74, 0x1F, 0x55, 0x37, 0x78, 0x36, 0xB9, 0x6F, 0x5F, 0x45, 0x19, 0x33, 0x14, 0x42, 0x54, 0x4A, 0x14, 0x51, 0xD4, 0x59, 0xD4, 0x51, 0xB4, 0x59, 0xD4, 0x59, 0xB4, 0x51, 0xB3, 0x03, 0x49, 0x92, 0x80, 0x41, 0x92, 0x01, 0x41, 0x71, 0x01, 0x39, 0x71, 0x01, 0x39, 0x70, 0x01, 0x39, 0x50, 0x02, 0x31, 0x50, 0x04, 0x31, 0x2F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, + 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x84, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2F, 0x29, 0x0E, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x2E, 0x88, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x30, 0x11, 0x32, 0x11, 0x74, 0x01, 0x19, 0xD6, 0x84, 0x19, 0x95, 0x11, 0x31, 0x19, 0x31, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x19, 0x30, 0x8F, 0x19, 0x31, 0x11, 0x32, 0x19, 0xB5, 0x22, 0x37, 0x22, 0x17, 0x11, 0x95, 0x09, 0x12, 0x11, 0x12, 0x19, 0x11, 0x21, 0x31, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x86, 0x21, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x06, 0x29, 0x0F, + 0x83, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x87, 0x21, 0x0E, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x0F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x08, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x0F, 0x04, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x05, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x02, 0x29, 0x0F, 0x81, 0x21, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x0E, 0x81, 0x21, 0x2F, 0x29, 0x50, 0x01, 0x21, 0x50, 0x01, 0x19, 0x10, 0x90, 0x19, 0x31, 0x11, 0x32, 0x11, 0x74, 0x19, 0xD5, 0x19, 0xD6, 0x22, 0x16, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x53, 0x11, 0x11, 0x19, 0x31, 0x19, 0x32, 0x19, 0x31, 0x21, 0x51, 0x21, 0x72, 0x21, 0x51, 0x21, 0x31, 0x16, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0D, 0x21, 0x30, 0x80, + 0x21, 0x2F, 0x12, 0x21, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x06, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x10, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x10, 0x01, 0x21, 0x2F, 0x06, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x80, 0x21, 0x0F, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x03, 0x21, 0x30, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x31, 0x19, 0x11, 0x01, 0x19, 0x32, 0x89, 0x11, 0x32, 0x11, 0x33, 0x11, 0x74, 0x19, 0xD6, 0x22, 0x17, 0x22, 0x16, 0x19, 0x94, 0x11, 0x52, 0x11, 0x31, 0x19, 0x11, 0x01, 0x19, 0x10, 0x86, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x2E, 0x29, 0x2F, 0x29, 0x2E, 0x01, 0x21, 0x0E, 0x80, 0x21, 0x2E, 0x04, 0x29, 0x2E, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0E, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x84, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0E, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x84, 0x21, 0x0E, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2F, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0E, 0x02, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x02, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x87, 0x29, 0x0F, 0x29, 0x0E, 0x29, + 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x03, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x05, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x83, 0x29, 0x2E, 0x29, 0x2F, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2F, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x2F, 0x04, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x8F, 0x28, 0xEE, 0x30, 0xEE, 0x38, 0xCE, 0x51, 0x0E, 0x8A, 0x13, 0x9A, 0x53, 0xAA, 0x73, 0xAA, 0x53, 0xA2, 0x12, 0x99, 0xF1, 0x99, 0xF0, 0x91, 0xEE, 0x9A, 0x4C, 0xED, 0x55, 0xFE, 0x96, 0xFE, 0xD5, 0x01, 0xFE, 0xD3, 0x01, 0xFE, 0xD2, 0x09, 0xFE, 0xB1, 0x0D, 0xFE, 0xB0, 0x80, 0xFE, 0xAF, 0x02, 0xFE, 0xB0, 0x05, 0xFE, 0xAF, 0x81, 0xFE, 0xB0, 0xFE, 0xAF, 0x04, 0xFE, 0xB0, 0x82, 0xFE, 0x90, 0xFE, 0xB0, 0xFE, 0x90, 0x04, 0xFE, 0xB0, 0x80, 0xFE, 0x90, 0x2F, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x07, 0xFE, 0xB0, 0x80, 0xFE, 0xAF, 0x5B, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x01, 0xFE, 0xB0, 0x01, 0xFE, 0xAF, 0x83, 0xFE, 0xD0, 0xFE, 0xAF, 0xFE, 0xB0, 0xFE, 0xAF, 0x01, 0xFE, 0xB0, 0x80, 0xFE, 0xAF, 0x02, 0xFE, 0xB0, 0x01, 0xFE, 0xAF, 0x04, 0xFE, 0xB0, 0x82, 0xFE, 0xAF, 0xFE, 0xB0, 0xFE, 0xD0, 0x0A, 0xFE, 0xB0, 0x02, 0xFE, 0xD0, 0x03, 0xFE, 0xB0, 0x81, 0xFE, 0xD0, 0xFE, 0xB0, 0x01, 0xFE, 0xB1, 0x84, 0xFE, 0xB0, 0xFE, 0xB1, 0xFE, 0xB0, 0xFE, 0xB1, 0xFE, 0xD1, 0x01, 0xFE, 0xB1, 0x80, 0xFE, 0xD1, 0x0A, 0xFE, 0xB1, 0x80, 0xFE, 0xD1, 0x04, 0xFE, 0xB1, 0x17, 0xFE, 0xB2, 0x02, 0xFE, 0xD2, 0x80, 0xFE, 0xB2, 0x02, + 0xFE, 0xD2, 0x80, 0xFE, 0xB2, 0x07, 0xFE, 0xD2, 0x01, 0xFE, 0xB2, 0x80, 0xFE, 0xD2, 0x06, 0xFE, 0xB2, 0x83, 0xFE, 0xD2, 0xFE, 0xB2, 0xFE, 0xD2, 0xFE, 0xB2, 0x01, 0xFE, 0xD2, 0x81, 0xFE, 0xD3, 0xFE, 0xD2, 0x01, 0xFE, 0xD3, 0x80, 0xFE, 0xB3, 0x08, 0xFE, 0xD3, 0x80, 0xFE, 0xD4, 0x02, 0xFE, 0xF4, 0x88, 0xFE, 0xF5, 0xFE, 0xD6, 0xFE, 0xB7, 0xFE, 0x18, 0xA2, 0x8E, 0x99, 0xAE, 0xA1, 0xB0, 0xA1, 0xB1, 0xA9, 0xF2, 0x01, 0xA9, 0xF3, 0x87, 0xA1, 0xF3, 0xA2, 0x14, 0xAA, 0x14, 0xAA, 0x35, 0xA2, 0x35, 0x91, 0xF4, 0x89, 0xF4, 0x89, 0xD4, 0x01, 0x81, 0xB4, 0x81, 0x91, 0xF5, 0xA2, 0x16, 0x01, 0xAA, 0x37, 0x89, 0xA2, 0x38, 0x92, 0x3A, 0x61, 0x78, 0x38, 0xF9, 0x29, 0x3B, 0x19, 0x7D, 0x11, 0x9D, 0x01, 0x9E, 0x01, 0xBE, 0x01, 0xBF, 0x01, 0x01, 0xDF, 0x02, 0x01, 0xFF, 0x02, 0x02, 0x1F, 0x9F, 0x02, 0x1E, 0x02, 0x1D, 0x02, 0x3D, 0x02, 0x7B, 0x02, 0xF9, 0x14, 0xFB, 0x26, 0x7D, 0x26, 0xFC, 0x1F, 0x39, 0x0E, 0xF4, 0x0F, 0x12, 0x1F, 0x74, 0x27, 0x35, 0x3F, 0x38, 0x4E, 0xBA, 0x5E, 0x3B, 0x2B, 0x94, 0x32, 0x93, 0x42, 0x13, 0x49, 0xF4, 0x59, 0xD4, 0x51, 0xB4, 0x51, 0x93, 0x59, 0x94, 0x59, 0xB4, 0x51, 0x93, 0x49, 0x72, 0x49, 0x92, 0x49, 0x72, 0x49, 0x92, 0x41, 0x71, 0x41, 0x91, 0x01, 0x41, 0x71, 0x82, 0x39, 0x70, 0x39, 0x71, 0x39, 0x70, 0x01, 0x39, 0x50, 0x80, 0x31, 0x2F, 0x01, 0x31, 0x50, 0x84, 0x31, 0x2F, 0x31, 0x4F, 0x31, 0x2F, 0x31, 0x4F, 0x31, 0x2F, 0x09, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2E, 0x04, 0x29, 0x0F, 0x02, 0x29, + 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x2E, 0x80, 0x21, 0x2E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x19, 0x10, 0x19, 0x32, 0x19, 0x94, 0x01, 0x19, 0xD6, 0x83, 0x19, 0x95, 0x11, 0x31, 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x4F, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x8D, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x19, 0x52, 0x19, 0x94, 0x22, 0x16, 0x22, 0x37, 0x19, 0xD6, 0x11, 0x54, 0x11, 0x12, 0x10, 0xF1, 0x19, 0x11, 0x21, 0x31, 0x29, 0x50, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x21, 0x0E, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0E, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x06, 0x29, 0x2E, 0x01, 0x21, 0x0E, 0x81, 0x21, 0x2F, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x29, 0x2F, + 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x07, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x05, 0x29, 0x0E, 0x83, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x03, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x86, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x21, 0x2E, 0x01, 0x21, 0x0E, 0x80, 0x21, 0x2E, 0x01, 0x21, 0x2F, 0x90, 0x29, 0x70, 0x21, 0x50, 0x19, 0x0F, 0x19, 0x10, 0x19, 0x11, 0x11, 0x11, 0x11, 0x52, 0x11, 0x73, 0x19, 0xB5, 0x21, 0xD6, 0x21, 0xF6, 0x19, 0xD5, 0x19, 0xB4, 0x11, 0x53, 0x11, 0x52, 0x11, 0x12, 0x11, 0x32, 0x01, 0x11, 0x31, 0x02, 0x19, 0x31, 0x80, 0x21, 0x31, 0x02, 0x21, 0x30, 0x81, 0x19, 0x30, 0x21, 0x31, 0x03, 0x21, 0x30, 0x82, 0x19, 0x30, 0x21, 0x30, 0x19, 0x30, 0x01, 0x21, 0x30, 0x80, 0x19, 0x30, 0x02, 0x21, 0x30, 0x80, 0x19, 0x10, 0x04, 0x21, 0x30, 0x81, 0x21, 0x10, 0x19, 0x10, 0x05, 0x21, 0x30, 0x01, 0x21, 0x31, 0x0C, 0x21, 0x30, + 0x80, 0x19, 0x30, 0x05, 0x21, 0x30, 0x80, 0x21, 0x31, 0x03, 0x21, 0x30, 0x80, 0x19, 0x10, 0x02, 0x21, 0x30, 0x82, 0x19, 0x30, 0x21, 0x30, 0x19, 0x30, 0x0E, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x19, 0x10, 0x1A, 0x21, 0x30, 0x80, 0x21, 0x10, 0x09, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x19, 0x10, 0x01, 0x19, 0x31, 0x8B, 0x19, 0x11, 0x19, 0x12, 0x11, 0x12, 0x11, 0x33, 0x19, 0x94, 0x21, 0xF6, 0x22, 0x16, 0x21, 0xF6, 0x19, 0x94, 0x19, 0x73, 0x11, 0x31, 0x19, 0x11, 0x01, 0x19, 0x10, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x2E, 0x21, 0x0E, 0x21, 0x2E, 0x01, 0x21, 0x0E, 0x05, 0x29, 0x2E, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x06, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x83, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0E, 0x29, 0x0F, 0x0F, 0x29, 0x2F, 0x81, 0x29, 0x2E, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0E, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x82, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2F, + 0x03, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x91, 0x28, 0xEE, 0x30, 0xEE, 0x38, 0xAD, 0x61, 0x70, 0x92, 0x53, 0xA2, 0x94, 0xAA, 0x73, 0xA2, 0x33, 0xA2, 0x12, 0x99, 0xF1, 0x99, 0xD0, 0x91, 0xEE, 0x92, 0x2C, 0xD4, 0x92, 0xFE, 0x77, 0xFE, 0xB6, 0xFE, 0xB4, 0xFE, 0xB3, 0x01, 0xFE, 0xB2, 0x80, 0xFE, 0xD2, 0x01, 0xFE, 0xB2, 0x07, 0xFE, 0xB1, 0x04, 0xFE, 0xB0, 0x06, 0xFE, 0xD0, 0x81, 0xFE, 0xB0, 0xFE, 0xD0, 0x20, 0xFE, 0xB0, 0x02, 0xFE, 0xD0, 0x82, 0xFE, 0xB0, 0xFE, 0xD0, 0xFE, 0xB0, 0x01, 0xFE, 0xD0, 0x81, 0xFE, 0xB0, 0xFE, 0xD0, 0x09, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x1B, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x04, 0xFE, 0xB0, 0x80, 0xFE, 0xD0, 0x13, 0xFE, 0xB0, 0x81, 0xFE, 0xD0, 0xFE, 0xD1, 0x15, 0xFE, 0xB0, 0x02, 0xFE, 0xB1, 0x01, 0xFE, 0xB0, 0x01, 0xFE, 0xB1, 0x80, 0xFE, 0xD1, 0x08, 0xFE, 0xB0, 0x01, 0xFE, 0xB1, 0x0E, 0xFE, 0xB0, 0x80, 0xFE, 0xD1, 0x04, 0xFE, 0xD0, 0x03, 0xFE, 0xB0, 0x81, 0xFE, 0xD0, 0xFE, 0xB0, 0x07, 0xFE, 0xD0, 0x80, 0xFE, 0xB0, 0x03, 0xFE, 0xD0, 0x80, 0xFE, 0xB0, 0x08, 0xFE, 0xD0, 0x83, 0xFE, 0xB0, 0xFE, 0xD0, 0xFE, 0xB0, 0xFE, 0xD0, 0x01, 0xFE, 0xB0, 0x01, 0xFE, 0xD0, 0x80, 0xFE, 0xD1, 0x02, 0xFE, 0xD0, 0x80, 0xFE, 0xB1, 0x03, 0xFE, 0xD1, 0x80, 0xFE, 0xB1, 0x02, 0xFE, 0xD1, 0x02, 0xFE, 0xB1, 0x09, 0xFE, 0xD1, 0x05, 0xFE, 0xB1, 0x03, 0xFE, 0xD2, 0x80, 0xFE, 0xB2, 0x06, 0xFE, 0xD2, 0x01, 0xFE, 0xB2, 0x11, 0xFE, 0xD2, 0x80, 0xFE, 0xD3, 0x02, 0xFE, 0xD2, + 0x80, 0xFE, 0xD3, 0x0A, 0xFE, 0xD2, 0x83, 0xFE, 0xB2, 0xFE, 0xD2, 0xFE, 0xD3, 0xFE, 0xD2, 0x01, 0xFE, 0xD3, 0x02, 0xFE, 0xD2, 0x81, 0xFE, 0xD3, 0xFE, 0xB2, 0x0D, 0xFE, 0xD3, 0x01, 0xFE, 0xD4, 0x80, 0xFE, 0xF4, 0x01, 0xFE, 0xF5, 0x8B, 0xFE, 0xD6, 0xFE, 0xB7, 0xFD, 0xD7, 0xAA, 0xCE, 0x99, 0xEF, 0xA1, 0xB0, 0xA1, 0xD1, 0xA9, 0xD2, 0xA9, 0xF3, 0xAA, 0x13, 0xA9, 0xF3, 0xAA, 0x13, 0x01, 0xA2, 0x14, 0x84, 0xA2, 0x35, 0x91, 0xD4, 0x89, 0xD4, 0x89, 0xF5, 0x81, 0xD4, 0x01, 0x81, 0xB4, 0x8B, 0x91, 0xF6, 0xA2, 0x16, 0xAA, 0x37, 0xA2, 0x17, 0xA2, 0x39, 0x8A, 0x1A, 0x59, 0x38, 0x39, 0x1A, 0x29, 0x3C, 0x19, 0x7D, 0x09, 0x9D, 0x01, 0xBE, 0x02, 0x01, 0xDF, 0x03, 0x01, 0xFF, 0x80, 0x02, 0x1F, 0x01, 0x02, 0x3F, 0x01, 0x02, 0x3E, 0x92, 0x02, 0x5D, 0x02, 0x7B, 0x02, 0xF9, 0x0C, 0xBB, 0x26, 0x5D, 0x26, 0xDC, 0x27, 0x3A, 0x0E, 0xD4, 0x0E, 0xF2, 0x27, 0x54, 0x2F, 0x14, 0x47, 0x18, 0x56, 0x9A, 0x55, 0x59, 0x2A, 0xF3, 0x3A, 0x52, 0x4A, 0x13, 0x51, 0xF4, 0x59, 0xB4, 0x01, 0x51, 0x93, 0x80, 0x59, 0xB4, 0x01, 0x51, 0x93, 0x03, 0x49, 0x92, 0x01, 0x41, 0x92, 0x01, 0x41, 0x71, 0x01, 0x39, 0x71, 0x80, 0x39, 0x70, 0x01, 0x39, 0x50, 0x02, 0x31, 0x50, 0x04, 0x31, 0x2F, 0x01, 0x31, 0x0F, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x82, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x0F, + 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x2E, 0x81, 0x21, 0x0E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x83, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x8A, 0x21, 0x0F, 0x21, 0x2F, 0x19, 0x10, 0x19, 0x32, 0x19, 0x94, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0x95, 0x11, 0x11, 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x90, 0x29, 0x4F, 0x21, 0x2F, 0x21, 0x0E, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x19, 0x53, 0x19, 0xD5, 0x22, 0x37, 0x21, 0xF6, 0x19, 0xB5, 0x11, 0x54, 0x11, 0x12, 0x01, 0x19, 0x11, 0x88, 0x29, 0x51, 0x29, 0x30, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x0E, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x84, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x07, 0x29, 0x0F, 0x82, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x06, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x83, 0x21, 0x0E, 0x29, 0x2E, 0x21, 0x0E, 0x21, 0x2E, 0x01, 0x21, 0x0E, 0x02, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x02, 0x29, 0x2F, 0x05, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x01, + 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x82, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x03, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x02, 0x21, 0x2E, 0x02, 0x21, 0x0E, 0x8A, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x19, 0x31, 0x19, 0x11, 0x19, 0x32, 0x11, 0x53, 0x19, 0x94, 0x03, 0x19, 0xB5, 0x85, 0x11, 0x74, 0x09, 0x32, 0x09, 0x12, 0x09, 0x11, 0x11, 0x11, 0x11, 0x31, 0x01, 0x11, 0x11, 0x81, 0x19, 0x31, 0x11, 0x10, 0x03, 0x19, 0x31, 0x80, 0x19, 0x11, 0x05, 0x19, 0x31, 0x82, 0x19, 0x11, 0x19, 0x31, 0x19, 0x10, 0x06, 0x19, 0x31, 0x80, 0x19, 0x11, 0x11, 0x19, 0x31, 0x02, 0x19, 0x30, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x0E, 0x19, 0x31, 0x80, 0x19, 0x51, 0x02, 0x19, 0x31, 0x01, 0x19, 0x30, 0x16, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x80, 0x19, 0x30, 0x02, 0x19, 0x31, 0x01, 0x19, 0x30, 0x12, 0x19, 0x31, 0x80, 0x19, 0x11, + 0x0A, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x11, 0x12, 0x8B, 0x11, 0x33, 0x11, 0x74, 0x21, 0xD5, 0x21, 0xF6, 0x19, 0xD5, 0x11, 0x73, 0x11, 0x32, 0x11, 0x31, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x83, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x21, 0x0E, 0x81, 0x21, 0x2E, 0x21, 0x0E, 0x04, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x85, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x04, 0x29, 0x2F, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x85, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x06, 0x29, 0x2E, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x0A, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x83, 0x30, 0xCE, 0x40, 0xCE, 0x61, 0x70, 0x92, 0x53, 0x01, 0xA2, 0x53, 0x8A, 0xAA, 0x53, 0xA2, 0x32, 0xA2, 0x11, 0x99, 0xF0, 0x91, 0xEF, 0x92, 0x0D, 0xAB, 0x0F, 0xE5, 0x14, 0xFE, 0x36, 0xFE, 0x95, 0xFE, 0xB4, 0x02, 0xFE, 0xB3, 0x02, 0xFE, 0xB2, 0x03, + 0xFE, 0xB1, 0x81, 0xFE, 0xD1, 0xFE, 0xB1, 0x0B, 0xFE, 0xD1, 0x80, 0xFE, 0xF1, 0x01, 0xFE, 0xD1, 0x81, 0xFE, 0xD0, 0xFE, 0xD1, 0x06, 0xFE, 0xD0, 0x47, 0xFE, 0xD1, 0x04, 0xFE, 0xD0, 0x81, 0xFE, 0xD1, 0xFE, 0xD0, 0x6F, 0xFE, 0xD1, 0x80, 0xFE, 0xD0, 0x10, 0xFE, 0xD1, 0x80, 0xFE, 0xD2, 0x07, 0xFE, 0xD1, 0x02, 0xFE, 0xD2, 0x80, 0xFE, 0xF2, 0x10, 0xFE, 0xD2, 0x80, 0xFE, 0xF2, 0x0A, 0xFE, 0xD2, 0x13, 0xFE, 0xF3, 0x04, 0xFE, 0xD2, 0x01, 0xFE, 0xD3, 0x80, 0xFE, 0xD2, 0x0D, 0xFE, 0xD3, 0x80, 0xFE, 0xF3, 0x01, 0xFE, 0xD3, 0x80, 0xFE, 0xF3, 0x03, 0xFE, 0xD3, 0x80, 0xFE, 0xF4, 0x03, 0xFE, 0xD4, 0x89, 0xFE, 0xF4, 0xFE, 0xD5, 0xFE, 0xF5, 0xFE, 0xD7, 0xFE, 0x98, 0xFD, 0xB8, 0xA2, 0x4E, 0x99, 0xCE, 0xA1, 0xD1, 0xA9, 0xD2, 0x02, 0xA9, 0xF3, 0x02, 0xAA, 0x14, 0x82, 0xA2, 0x14, 0xA2, 0x35, 0x92, 0x14, 0x02, 0x81, 0xD4, 0x90, 0x81, 0xD5, 0x81, 0xB4, 0x89, 0xB4, 0x9A, 0x16, 0xA2, 0x16, 0xA2, 0x17, 0xA2, 0x38, 0x9A, 0x59, 0x81, 0xFA, 0x49, 0x18, 0x39, 0x1A, 0x29, 0x5C, 0x19, 0x7D, 0x09, 0x9E, 0x01, 0xBE, 0x01, 0xBF, 0x01, 0xDF, 0x02, 0x01, 0xFF, 0x02, 0x02, 0x1F, 0x01, 0x02, 0x3F, 0x01, 0x02, 0x5E, 0x99, 0x02, 0x5D, 0x02, 0x7C, 0x02, 0xFA, 0x04, 0x5A, 0x26, 0x1C, 0x26, 0xDC, 0x27, 0x3A, 0x0E, 0xB4, 0x0E, 0xB1, 0x2F, 0x33, 0x36, 0xF4, 0x4E, 0xF7, 0x7F, 0x3C, 0x3C, 0x14, 0x32, 0xB2, 0x42, 0x32, 0x52, 0x13, 0x59, 0xF4, 0x61, 0xD4, 0x59, 0xB4, 0x59, 0x93, 0x59, 0xB4, 0x59, 0xB3, 0x51, 0xB3, 0x49, 0x92, 0x51, 0x92, 0x01, 0x49, 0x92, 0x81, 0x41, + 0x71, 0x41, 0x91, 0x01, 0x41, 0x71, 0x83, 0x39, 0x71, 0x39, 0x50, 0x39, 0x70, 0x39, 0x50, 0x01, 0x31, 0x50, 0x01, 0x31, 0x30, 0x81, 0x31, 0x2F, 0x31, 0x4F, 0x05, 0x31, 0x2F, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x05, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x87, 0x21, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x83, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x89, 0x19, 0x10, 0x19, 0x31, 0x19, 0x94, 0x19, 0xD6, 0x21, 0xF7, 0x19, 0x95, 0x11, 0x11, 0x19, 0x10, 0x21, 0x30, 0x29, 0x30, 0x01, 0x21, 0x2F, 0x83, 0x21, 0x0E, 0x21, 0x2F, 0x21, 0x0E, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x8E, 0x19, 0x10, 0x19, 0x31, 0x19, 0x52, 0x19, 0x94, 0x19, 0xD5, 0x19, 0xF6, 0x21, 0xF6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x12, 0x18, 0xF1, 0x21, 0x31, 0x29, 0x30, 0x29, 0x50, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x06, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x2F, 0x08, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x02, 0x29, + 0x2E, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x86, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x21, 0x2E, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x84, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x82, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x84, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x2F, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x2F, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x06, 0x29, 0x2F, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x03, 0x21, 0x2E, 0x84, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x21, 0x0E, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x30, 0x21, 0x30, 0x01, 0x19, 0x11, 0x8C, 0x19, 0x32, 0x19, 0x53, 0x19, 0x94, 0x19, 0xD5, 0x19, 0xD6, 0x11, 0xB5, 0x19, 0xD5, 0x11, 0x94, 0x11, 0x53, 0x09, 0x32, 0x09, 0x11, 0x11, 0x11, 0x11, 0x32, 0x0D, 0x11, 0x31, 0x80, 0x11, 0x11, 0x03, 0x11, 0x31, 0x81, 0x19, + 0x32, 0x11, 0x31, 0x01, 0x19, 0x52, 0x01, 0x19, 0x32, 0x80, 0x19, 0x52, 0x01, 0x19, 0x32, 0x80, 0x11, 0x31, 0x02, 0x19, 0x32, 0x01, 0x11, 0x32, 0x81, 0x19, 0x31, 0x19, 0x32, 0x01, 0x11, 0x31, 0x80, 0x19, 0x32, 0x02, 0x19, 0x31, 0x80, 0x11, 0x31, 0x01, 0x19, 0x31, 0x04, 0x11, 0x31, 0x82, 0x19, 0x31, 0x19, 0x52, 0x19, 0x31, 0x01, 0x19, 0x52, 0x80, 0x19, 0x32, 0x01, 0x19, 0x52, 0x01, 0x19, 0x32, 0x01, 0x19, 0x52, 0x01, 0x19, 0x32, 0x83, 0x19, 0x52, 0x19, 0x31, 0x19, 0x52, 0x19, 0x31, 0x01, 0x19, 0x51, 0x81, 0x19, 0x31, 0x19, 0x52, 0x06, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x01, 0x19, 0x32, 0x80, 0x19, 0x52, 0x02, 0x19, 0x31, 0x80, 0x19, 0x51, 0x02, 0x19, 0x31, 0x01, 0x19, 0x51, 0x01, 0x19, 0x31, 0x01, 0x19, 0x51, 0x04, 0x19, 0x31, 0x84, 0x19, 0x32, 0x19, 0x31, 0x19, 0x51, 0x19, 0x31, 0x19, 0x52, 0x01, 0x19, 0x51, 0x01, 0x19, 0x52, 0x80, 0x19, 0x31, 0x02, 0x19, 0x32, 0x01, 0x19, 0x52, 0x07, 0x19, 0x32, 0x81, 0x19, 0x31, 0x19, 0x32, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x02, 0x11, 0x32, 0x01, 0x11, 0x12, 0x81, 0x19, 0x54, 0x21, 0xD6, 0x01, 0x21, 0xD5, 0x82, 0x19, 0x73, 0x11, 0x32, 0x19, 0x31, 0x01, 0x19, 0x10, 0x84, 0x19, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x05, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x80, + 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x2F, 0x29, 0x2E, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x2F, 0x07, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x06, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x2E, 0x85, 0x29, 0x0E, 0x30, 0xEE, 0x30, 0xCE, 0x40, 0xCD, 0x61, 0x50, 0x8A, 0x53, 0x01, 0xA2, 0x73, 0x88, 0xA2, 0x53, 0xA2, 0x32, 0x9A, 0x11, 0x99, 0xF1, 0x99, 0xF0, 0x91, 0xEE, 0x9A, 0x4D, 0xAB, 0x2E, 0xE5, 0x33, 0x01, 0xFE, 0x76, 0x80, 0xFE, 0x95, 0x01, 0xFE, 0x94, 0x81, 0xFE, 0xB3, 0xFE, 0x93, 0x02, 0xFE, 0xB2, 0x06, 0xFE, 0xD2, 0x0D, 0xFE, 0xF2, 0x01, 0xFE, 0xF1, 0x01, 0xFE, 0xF2, 0x80, 0xFE, 0xF1, 0x06, 0xFE, 0xF2, 0x01, 0xFE, 0xD2, 0x02, 0xFE, 0xF2, 0x09, 0xFE, 0xD2, 0x34, 0xFE, 0xF2, 0x01, 0xFE, 0xF1, 0x06, 0xFE, 0xF2, 0x04, 0xFE, 0xD2, 0x81, 0xFE, 0xF2, 0xFE, 0xD2, 0x0F, 0xFE, 0xF2, 0x01, 0xFE, 0xD2, 0x80, 0xFE, 0xF2, 0x13, 0xFE, 0xD2, 0x80, 0xFE, 0xF2, 0x09, 0xFE, 0xD2, 0x80, 0xFE, 0xF2, 0x02, 0xFE, 0xD2, 0x01, 0xFE, 0xF2, 0x06, 0xFE, 0xD2, 0x80, 0xFE, 0xF2, 0x06, 0xFE, 0xD2, 0x2E, 0xFE, 0xF2, 0x80, 0xFE, 0xF3, 0x0B, 0xFE, 0xF2, 0x19, 0xFE, 0xF3, 0x80, 0xFE, 0xF4, + 0x06, 0xFE, 0xF3, 0x2E, 0xFE, 0xF4, 0x02, 0xFE, 0xD5, 0x89, 0xFE, 0xB5, 0xFE, 0xD6, 0xFE, 0xB6, 0xFE, 0x97, 0xFE, 0x78, 0xE4, 0xF5, 0x9A, 0x4E, 0x99, 0xCF, 0xA1, 0xB1, 0xA1, 0xB2, 0x01, 0xA9, 0xF3, 0x80, 0xAA, 0x13, 0x01, 0xA9, 0xF3, 0x84, 0xAA, 0x14, 0xAA, 0x34, 0xA2, 0x35, 0x91, 0xF4, 0x81, 0xB3, 0x03, 0x79, 0xD4, 0x8D, 0x81, 0xB4, 0x89, 0xD5, 0x9A, 0x16, 0xA2, 0x16, 0xA2, 0x17, 0xA2, 0x38, 0x9A, 0x5A, 0x71, 0xDA, 0x40, 0xF9, 0x31, 0x3B, 0x21, 0x5C, 0x11, 0x7D, 0x09, 0x9E, 0x01, 0xBE, 0x01, 0x01, 0xDF, 0x01, 0x01, 0xFF, 0x80, 0x02, 0x1F, 0x02, 0x02, 0x3F, 0x01, 0x02, 0x5F, 0x93, 0x02, 0x5E, 0x02, 0x7E, 0x02, 0x7D, 0x02, 0x7C, 0x02, 0xFA, 0x03, 0xF9, 0x25, 0xDD, 0x2E, 0xDD, 0x27, 0x3A, 0x0E, 0xB4, 0x16, 0xD2, 0x2F, 0x33, 0x36, 0xB4, 0x5E, 0xD7, 0x7E, 0xDB, 0x3B, 0x72, 0x3A, 0x72, 0x42, 0x12, 0x5A, 0x14, 0x61, 0xF4, 0x01, 0x61, 0xD4, 0x01, 0x59, 0xB3, 0x80, 0x51, 0x93, 0x01, 0x51, 0xB3, 0x83, 0x51, 0xB2, 0x49, 0x92, 0x41, 0x71, 0x41, 0x92, 0x02, 0x41, 0x71, 0x03, 0x39, 0x50, 0x82, 0x31, 0x50, 0x31, 0x30, 0x31, 0x50, 0x07, 0x31, 0x2F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x03, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x0F, 0x05, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x83, 0x21, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, + 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x86, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x83, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x8E, 0x29, 0x0E, 0x29, 0x0F, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x0F, 0x19, 0x10, 0x11, 0x31, 0x19, 0x94, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x11, 0x19, 0x10, 0x21, 0x30, 0x29, 0x30, 0x03, 0x21, 0x2F, 0x94, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x4F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x30, 0x19, 0x31, 0x11, 0x52, 0x11, 0x73, 0x19, 0xD5, 0x19, 0xD6, 0x21, 0xD6, 0x19, 0x94, 0x19, 0x53, 0x11, 0x12, 0x19, 0x11, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x09, 0x29, 0x0F, 0x84, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x29, 0x0F, 0x05, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x04, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x82, 0x29, 0x2E, 0x21, 0x2E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x09, 0x21, 0x30, 0x02, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x08, 0x29, 0x0E, + 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x05, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2F, 0x06, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x2E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x20, 0xEE, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x92, 0x21, 0x2F, 0x29, 0x50, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x19, 0x52, 0x19, 0x73, 0x19, 0xB4, 0x19, 0xD5, 0x19, 0xF5, 0x19, 0xD5, 0x19, 0xB5, 0x19, 0xB4, 0x11, 0x94, 0x19, 0x94, 0x19, 0x93, 0x11, 0x73, 0x19, 0x73, 0x19, 0x72, 0x01, 0x19, 0x52, 0x03, 0x11, 0x52, 0x84, 0x19, 0x72, 0x11, 0x52, 0x19, 0x53, 0x11, 0x52, 0x19, 0x72, 0x01, 0x11, 0x52, 0x05, 0x19, 0x52, 0x81, 0x11, 0x52, 0x19, 0x53, 0x02, 0x19, 0x52, 0x08, 0x19, 0x53, 0x01, 0x19, 0x52, 0x82, 0x19, 0x72, 0x19, 0x52, 0x11, 0x52, 0x01, 0x19, 0x72, 0x01, 0x19, 0x52, 0x80, 0x19, 0x72, 0x01, 0x19, 0x52, 0x82, 0x11, 0x52, 0x19, 0x72, 0x11, 0x52, 0x03, 0x19, 0x52, 0x80, 0x19, 0x73, 0x01, 0x19, 0x52, 0x80, 0x19, 0x72, 0x01, 0x19, 0x53, 0x81, 0x19, 0x52, 0x19, 0x72, 0x07, 0x19, 0x52, 0x81, 0x19, 0x72, 0x19, 0x73, 0x13, 0x19, 0x52, 0x81, 0x19, 0x72, 0x11, 0x52, 0x07, 0x19, 0x52, 0x82, 0x19, 0x73, 0x19, 0x52, 0x19, 0x72, 0x02, 0x19, 0x52, 0x83, 0x19, 0x73, 0x19, 0x72, 0x19, 0x73, + 0x19, 0x52, 0x02, 0x19, 0x73, 0x02, 0x19, 0x52, 0x03, 0x19, 0x53, 0x80, 0x19, 0x52, 0x03, 0x19, 0x53, 0x80, 0x19, 0x73, 0x01, 0x19, 0x52, 0x81, 0x19, 0x73, 0x19, 0x53, 0x01, 0x19, 0x73, 0x01, 0x19, 0x94, 0x80, 0x21, 0xF6, 0x01, 0x21, 0xD5, 0x85, 0x19, 0x73, 0x19, 0x52, 0x11, 0x11, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x03, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x2E, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0E, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x0C, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x06, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x0A, 0x29, 0x0E, 0x82, 0x29, 0x2F, 0x29, 0x0E, 0x21, 0x0E, 0x06, 0x29, 0x2E, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x0B, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x28, 0xEE, 0x85, 0x30, 0xCD, 0x38, 0xAD, 0x61, 0x70, 0x92, 0x94, 0x9A, 0x53, 0xA2, 0x53, 0x01, 0xA2, 0x32, 0x8F, 0xA2, 0x12, 0x9A, 0x11, 0x9A, 0x10, 0x9A, 0x0F, 0x92, 0x0E, 0x92, 0x0C, 0x9A, 0x8D, 0xD4, 0x93, 0xED, 0x55, 0xFE, 0x16, 0xFE, 0x36, 0xFE, 0x55, 0xFE, 0x75, 0xFE, 0x94, 0xFE, 0xB4, 0xFE, 0xB3, 0x01, 0xFE, 0xD3, 0x08, 0xFE, 0xF3, 0x04, 0xFF, 0x13, 0x21, 0xFE, 0xF3, + 0x80, 0xFF, 0x14, 0x01, 0xFE, 0xF3, 0x01, 0xFE, 0xF4, 0x01, 0xFE, 0xF3, 0x01, 0xFE, 0xF4, 0x09, 0xFE, 0xF3, 0x81, 0xFF, 0x13, 0xFE, 0xF3, 0x03, 0xFF, 0x14, 0x01, 0xFE, 0xF4, 0x80, 0xFF, 0x14, 0x06, 0xFE, 0xF4, 0x04, 0xFF, 0x14, 0x02, 0xFF, 0x13, 0x08, 0xFE, 0xF3, 0x80, 0xFF, 0x13, 0x01, 0xFE, 0xF3, 0x80, 0xFF, 0x13, 0x01, 0xFF, 0x14, 0x80, 0xFE, 0xF4, 0x08, 0xFE, 0xF3, 0x01, 0xFF, 0x13, 0x80, 0xFE, 0xF3, 0x01, 0xFF, 0x14, 0x80, 0xFE, 0xF4, 0x07, 0xFF, 0x14, 0x80, 0xFF, 0x13, 0x01, 0xFE, 0xF3, 0x80, 0xFF, 0x13, 0x08, 0xFE, 0xF3, 0x80, 0xFF, 0x14, 0x05, 0xFE, 0xF3, 0x80, 0xFF, 0x14, 0x01, 0xFE, 0xF3, 0x06, 0xFE, 0xF4, 0x80, 0xFF, 0x14, 0x05, 0xFE, 0xF3, 0x01, 0xFE, 0xF4, 0x01, 0xFE, 0xF3, 0x01, 0xFE, 0xF4, 0x03, 0xFE, 0xF3, 0x83, 0xFF, 0x14, 0xFE, 0xF3, 0xFE, 0xF4, 0xFF, 0x14, 0x05, 0xFE, 0xF4, 0x06, 0xFE, 0xF3, 0x82, 0xFF, 0x14, 0xFF, 0x13, 0xFF, 0x14, 0x04, 0xFF, 0x13, 0x02, 0xFE, 0xF3, 0x83, 0xFF, 0x13, 0xFF, 0x14, 0xFF, 0x13, 0xFF, 0x14, 0x03, 0xFF, 0x13, 0x02, 0xFE, 0xF3, 0x06, 0xFF, 0x13, 0x81, 0xFE, 0xF3, 0xFF, 0x14, 0x01, 0xFE, 0xF4, 0x03, 0xFF, 0x14, 0x01, 0xFE, 0xF4, 0x03, 0xFF, 0x14, 0x01, 0xFE, 0xF4, 0x0E, 0xFF, 0x14, 0x0C, 0xFF, 0x15, 0x80, 0xFF, 0x35, 0x2C, 0xFF, 0x15, 0x80, 0xFE, 0xF5, 0x02, 0xFF, 0x15, 0x06, 0xFF, 0x16, 0x02, 0xFE, 0xF6, 0x80, 0xFE, 0xD6, 0x01, 0xFE, 0xB6, 0x8A, 0xFE, 0x97, 0xFE, 0x98, 0xFE, 0x58, 0xF5, 0x77, 0xBB, 0x71, 0x91, 0xCD, 0x99, 0xD0, 0xA1, 0xD1, 0xA9, 0xD2, 0xA9, 0xF3, 0xA9, + 0xD3, 0x02, 0xA9, 0xF3, 0x84, 0xAA, 0x14, 0xA2, 0x14, 0xA2, 0x35, 0x9A, 0x35, 0x81, 0xD4, 0x04, 0x79, 0xD4, 0x8C, 0x81, 0xB4, 0x91, 0xF6, 0x9A, 0x16, 0xA2, 0x16, 0xA2, 0x17, 0xA2, 0x58, 0x9A, 0x9B, 0x61, 0x7A, 0x39, 0x1A, 0x31, 0x5C, 0x21, 0x7D, 0x11, 0x7D, 0x09, 0x9E, 0x01, 0x01, 0xDF, 0x01, 0x01, 0xFF, 0x81, 0x02, 0x1F, 0x02, 0x3F, 0x02, 0x02, 0x5F, 0x02, 0x02, 0x7F, 0x96, 0x02, 0x9E, 0x02, 0x9D, 0x02, 0x9C, 0x02, 0xDA, 0x03, 0x99, 0x15, 0x5B, 0x36, 0xFE, 0x2F, 0x5B, 0x0E, 0xB4, 0x1E, 0xD2, 0x2E, 0xF3, 0x3E, 0xB4, 0x6E, 0xD8, 0x6D, 0xD8, 0x43, 0x32, 0x4A, 0xB3, 0x52, 0x33, 0x5A, 0x14, 0x59, 0xD3, 0x61, 0xB3, 0x61, 0xD4, 0x59, 0xB3, 0x59, 0x93, 0x02, 0x51, 0x92, 0x80, 0x51, 0xB2, 0x01, 0x49, 0x92, 0x03, 0x41, 0x71, 0x01, 0x39, 0x50, 0x84, 0x39, 0x71, 0x39, 0x50, 0x31, 0x50, 0x39, 0x70, 0x31, 0x50, 0x05, 0x31, 0x2F, 0x83, 0x31, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x2E, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x03, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x07, 0x29, 0x0E, 0x85, 0x21, 0x0E, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x0C, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x8A, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x30, 0x19, 0x32, 0x19, 0x94, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x11, 0x19, 0x10, + 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x4F, 0x21, 0x2F, 0x02, 0x21, 0x0E, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x8C, 0x21, 0x30, 0x19, 0x30, 0x11, 0x11, 0x11, 0x52, 0x19, 0x94, 0x21, 0xD5, 0x21, 0xD6, 0x21, 0xD5, 0x21, 0xB5, 0x11, 0x33, 0x19, 0x32, 0x19, 0x11, 0x19, 0x10, 0x01, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x21, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x04, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x05, 0x29, 0x2E, 0x01, 0x21, 0x0E, 0x81, 0x21, 0x2E, 0x29, 0x2E, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x03, 0x21, 0x30, 0x84, 0x19, 0x10, 0x19, 0x31, 0x21, 0x31, 0x19, 0x31, 0x19, 0x10, 0x01, 0x19, 0x30, 0x81, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x05, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2F, 0x07, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x09, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x85, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, + 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x8A, 0x29, 0x2F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x31, 0x19, 0x31, 0x19, 0x52, 0x11, 0x52, 0x19, 0x94, 0x19, 0xD4, 0x19, 0xF5, 0x04, 0x21, 0xF5, 0x82, 0x29, 0xF5, 0x2A, 0x16, 0x2A, 0x15, 0x02, 0x29, 0xF5, 0x89, 0x21, 0xF5, 0x29, 0xF5, 0x21, 0xD5, 0x21, 0xF5, 0x21, 0xD5, 0x29, 0xF5, 0x21, 0xD5, 0x21, 0xF5, 0x21, 0xD5, 0x29, 0xF5, 0x02, 0x21, 0xD5, 0x80, 0x29, 0xF5, 0x01, 0x29, 0xD5, 0x04, 0x21, 0xD5, 0x80, 0x21, 0xD4, 0x02, 0x21, 0xD5, 0x80, 0x29, 0xD5, 0x03, 0x21, 0xD5, 0x84, 0x21, 0xB4, 0x21, 0xD5, 0x21, 0xD4, 0x21, 0xD5, 0x21, 0xB4, 0x01, 0x21, 0xD4, 0x01, 0x21, 0xB4, 0x81, 0x21, 0xD4, 0x21, 0xB4, 0x02, 0x21, 0xD4, 0x02, 0x21, 0xB4, 0x82, 0x21, 0xD4, 0x21, 0xB4, 0x21, 0xD4, 0x08, 0x21, 0xB4, 0x80, 0x21, 0xD4, 0x06, 0x21, 0xB4, 0x80, 0x21, 0xD4, 0x02, 0x21, 0xB4, 0x01, 0x21, 0xD4, 0x03, 0x21, 0xB4, 0x89, 0x21, 0xD4, 0x21, 0xB4, 0x21, 0xD4, 0x21, 0xB4, 0x21, 0xD4, 0x21, 0xB4, 0x21, 0xD4, 0x21, 0xB4, 0x21, 0xD4, 0x21, 0xB4, 0x02, 0x21, 0xD4, 0x81, 0x21, 0xB4, 0x21, 0xD4, 0x02, 0x21, 0xB4, 0x82, 0x21, 0xD4, 0x21, 0xB4, 0x21, 0xD4, 0x02, 0x21, 0xB4, 0x82, 0x21, 0xD4, 0x21, 0xB4, 0x21, 0xD4, 0x02, 0x21, 0xB4, 0x80, 0x21, 0xD5, 0x02, 0x21, 0xB4, 0x87, 0x21, 0xD4, 0x21, 0xB4, 0x21, 0xD4, 0x21, 0xB4, + 0x21, 0xD4, 0x21, 0xB4, 0x21, 0xD5, 0x21, 0xB4, 0x03, 0x21, 0xD5, 0x80, 0x2A, 0x15, 0x02, 0x29, 0xF5, 0x81, 0x29, 0xF6, 0x29, 0xF5, 0x01, 0x2A, 0x16, 0x86, 0x29, 0xF5, 0x21, 0xD5, 0x19, 0x73, 0x19, 0x52, 0x19, 0x31, 0x19, 0x10, 0x21, 0x10, 0x03, 0x21, 0x0F, 0x80, 0x21, 0x2E, 0x02, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x82, 0x21, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x08, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x08, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x13, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x13, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x0B, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x28, 0xEE, 0x85, 0x30, 0xCD, 0x38, 0xAD, 0x61, 0x6F, 0x92, 0x94, 0x9A, 0x73, 0x9A, 0x53, 0x02, 0xA2, 0x32, 0x02, 0x9A, 0x11, 0x8B, 0x9A, 0x10, 0x92, 0x0E, 0x92, 0x0D, 0x92, 0x4C, 0x9A, 0x8C, 0xA2, 0xED, 0xC3, 0xF0, 0xD4, 0xB2, 0xE5, 0x53, 0xF5, 0xF5, 0xFE, 0x56, 0xFE, 0xB7, 0x02, 0xFE, 0xF8, 0x80, 0xFF, 0x18, 0x03, 0xFE, 0xF8, 0x81, 0xFF, 0x18, 0xFE, 0xF8, 0x01, 0xFF, 0x18, 0x01, 0xFE, 0xF8, 0x80, 0xFF, 0x18, 0x01, 0xFE, 0xF8, 0x80, 0xFF, 0x18, 0x01, 0xFE, 0xF8, 0x01, 0xFF, 0x18, 0x03, 0xFE, 0xF8, 0x0D, 0xFF, 0x18, 0x05, 0xFE, 0xF8, 0x0C, 0xFF, 0x18, 0x82, 0xFE, 0xF8, 0xFF, + 0x18, 0xFE, 0xF8, 0x13, 0xFF, 0x18, 0x03, 0xFE, 0xF8, 0x07, 0xFF, 0x18, 0x07, 0xFE, 0xF8, 0x01, 0xFF, 0x18, 0x80, 0xFE, 0xF8, 0x0B, 0xFF, 0x18, 0x80, 0xFE, 0xF8, 0x0A, 0xFF, 0x18, 0x80, 0xFE, 0xF8, 0x02, 0xFF, 0x18, 0x05, 0xFE, 0xF8, 0x80, 0xFF, 0x18, 0x02, 0xFE, 0xF8, 0x03, 0xFF, 0x18, 0x0B, 0xFE, 0xF8, 0x80, 0xFF, 0x18, 0x02, 0xFE, 0xF8, 0x81, 0xFF, 0x18, 0xFE, 0xF8, 0x01, 0xFF, 0x18, 0x09, 0xFE, 0xF8, 0x80, 0xFF, 0x18, 0x0F, 0xFE, 0xF8, 0x01, 0xFF, 0x18, 0x80, 0xFE, 0xF8, 0x05, 0xFF, 0x18, 0x80, 0xFE, 0xF8, 0x02, 0xFF, 0x18, 0x80, 0xFE, 0xF8, 0x01, 0xFF, 0x18, 0x02, 0xFE, 0xF8, 0x01, 0xFF, 0x18, 0x80, 0xFE, 0xF8, 0x04, 0xFF, 0x18, 0x80, 0xFE, 0xF8, 0x01, 0xFF, 0x18, 0x02, 0xFE, 0xF8, 0x04, 0xFF, 0x18, 0x02, 0xFF, 0x19, 0x02, 0xFF, 0x18, 0x01, 0xFE, 0xF8, 0x01, 0xFF, 0x18, 0x01, 0xFF, 0x19, 0x01, 0xFF, 0x18, 0x02, 0xFF, 0x19, 0x80, 0xFE, 0xF9, 0x1E, 0xFF, 0x19, 0x80, 0xFE, 0xF9, 0x08, 0xFF, 0x19, 0x85, 0xFE, 0xF9, 0xFF, 0x1A, 0xFF, 0x19, 0xFF, 0x1A, 0xFF, 0x19, 0xFF, 0x1A, 0x03, 0xFF, 0x19, 0x80, 0xFE, 0xF9, 0x04, 0xFF, 0x19, 0x04, 0xFE, 0xF9, 0x80, 0xFF, 0x19, 0x02, 0xFE, 0xF9, 0x01, 0xFF, 0x1A, 0x80, 0xFE, 0xFA, 0x01, 0xFF, 0x1A, 0x01, 0xFE, 0xFA, 0x01, 0xFF, 0x1A, 0x8C, 0xFE, 0xD9, 0xFE, 0xB9, 0xFE, 0x78, 0xFE, 0x58, 0xFD, 0xD6, 0xED, 0x35, 0xD4, 0x73, 0xBB, 0x70, 0xA2, 0xAE, 0x99, 0xED, 0x99, 0xCE, 0xA1, 0xD0, 0xA1, 0xB1, 0x01, 0xA9, 0xD2, 0x02, 0xA9, 0xF3, 0x86, 0xA1, 0xF3, 0xA1, 0xF4, 0xA2, 0x14, 0xA2, 0x35, + 0x91, 0xF4, 0x81, 0xB3, 0x79, 0xB4, 0x04, 0x79, 0xD4, 0x8D, 0x81, 0xB4, 0x91, 0xF6, 0x9A, 0x16, 0xA2, 0x17, 0xA2, 0x37, 0xA2, 0x59, 0x9A, 0x9B, 0x51, 0x59, 0x31, 0x1A, 0x29, 0x5C, 0x19, 0x7D, 0x09, 0x7D, 0x01, 0xBE, 0x01, 0xDF, 0x01, 0x01, 0xFF, 0x01, 0x02, 0x1F, 0x80, 0x02, 0x3F, 0x03, 0x02, 0x7F, 0x01, 0x02, 0x9F, 0x96, 0x02, 0xBE, 0x02, 0xBD, 0x02, 0x9C, 0x02, 0xDB, 0x03, 0x59, 0x14, 0xFB, 0x3F, 0x1F, 0x2F, 0x5B, 0x16, 0xB4, 0x16, 0x92, 0x36, 0xF3, 0x46, 0x73, 0x6E, 0x97, 0x65, 0x15, 0x4B, 0x32, 0x52, 0x92, 0x62, 0x74, 0x59, 0xF3, 0x61, 0xD3, 0x61, 0xB3, 0x61, 0xD4, 0x59, 0xB3, 0x51, 0x93, 0x01, 0x51, 0x92, 0x80, 0x51, 0xB2, 0x02, 0x49, 0x92, 0x03, 0x41, 0x71, 0x82, 0x39, 0x71, 0x39, 0x50, 0x39, 0x70, 0x01, 0x39, 0x50, 0x82, 0x31, 0x50, 0x31, 0x2F, 0x31, 0x4F, 0x04, 0x31, 0x2F, 0x85, 0x31, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x2E, 0x29, 0x2F, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x06, 0x29, 0x0E, 0x82, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x06, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x86, 0x29, 0x2E, 0x21, 0x0E, 0x29, 0x2E, 0x21, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x10, 0x29, 0x0E, 0x02, 0x29, 0x2F, 0x8A, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x19, 0x94, 0x19, 0xB6, 0x19, 0xD6, 0x21, 0xB5, 0x11, 0x11, 0x19, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x4F, 0x01, 0x21, + 0x0E, 0x01, 0x21, 0x2E, 0x01, 0x29, 0x2F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x19, 0x10, 0x83, 0x19, 0x31, 0x11, 0x52, 0x19, 0x94, 0x21, 0xD5, 0x01, 0x21, 0xD6, 0x83, 0x19, 0x94, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x02, 0x21, 0x30, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x03, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x82, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x82, 0x29, 0x2F, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x83, 0x29, 0x2E, 0x21, 0x2E, 0x29, 0x2E, 0x21, 0x2E, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x19, 0x10, 0x01, 0x19, 0x31, 0x86, 0x19, 0x32, 0x11, 0x32, 0x11, 0x52, 0x11, 0x32, 0x19, 0x52, 0x11, 0x31, 0x11, 0x11, 0x01, 0x19, 0x10, 0x01, 0x21, 0x30, 0x80, 0x29, 0x30, 0x02, 0x29, 0x2F, 0x82, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x84, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x07, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x82, 0x29, + 0x2F, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2F, 0x03, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x19, 0x31, 0x85, 0x11, 0x52, 0x19, 0x73, 0x21, 0xB4, 0x21, 0xD4, 0x2A, 0x15, 0x21, 0xF5, 0x0A, 0x29, 0xF5, 0x80, 0x21, 0xD5, 0x01, 0x29, 0xF5, 0x01, 0x21, 0xF5, 0x07, 0x29, 0xF5, 0x80, 0x2A, 0x16, 0x02, 0x29, 0xF5, 0x80, 0x29, 0xD5, 0x01, 0x29, 0xF5, 0x80, 0x29, 0xD5, 0x02, 0x29, 0xF5, 0x04, 0x29, 0xD5, 0x01, 0x21, 0xD5, 0x86, 0x29, 0xF5, 0x21, 0xD5, 0x29, 0xD5, 0x21, 0xD4, 0x29, 0xD5, 0x21, 0xD5, 0x29, 0xF5, 0x01, 0x21, 0xD4, 0x81, 0x21, 0xF5, 0x21, 0xD5, 0x01, 0x29, 0xF5, 0x83, 0x29, 0xD4, 0x29, 0xF5, 0x29, 0xD5, 0x29, 0xF5, 0x01, 0x29, 0xD5, 0x82, 0x29, 0xD4, 0x29, 0xF4, 0x21, 0xD4, 0x01, 0x29, 0xD4, 0x85, 0x29, 0xD5, 0x29, 0xF5, 0x29, 0xD5, 0x29, 0xD4, 0x29, 0xF5, 0x29, 0xD4, 0x0A, 0x29, 0xF5, 0x80, 0x21, 0xF5, 0x06, 0x29, 0xF5, 0x80, 0x21, 0xF5, 0x04, 0x29, 0xF5, 0x80, 0x21, 0xF5, 0x18, 0x29, 0xF5, 0x01, 0x2A, 0x16, 0x03, 0x29, 0xF5, 0x01, 0x32, 0x16, 0x02, 0x29, 0xF5, 0x86, 0x29, 0xD5, 0x19, 0x94, 0x29, 0xF5, 0x2A, 0x15, 0x29, 0xF5, 0x19, 0x52, 0x19, 0x11, 0x01, 0x19, 0x10, 0x80, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x0E, 0x20, 0xEE, 0x03, 0x21, 0x0E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, + 0x29, 0x2F, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x85, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x06, 0x29, 0x0E, 0x81, 0x29, 0x2F, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x09, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x20, 0xEE, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x82, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x0F, 0x06, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x06, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x0E, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x88, 0x28, 0xED, 0x30, 0xCD, 0x30, 0xAC, 0x51, 0x2E, 0x92, 0x94, 0x9A, 0x73, 0x9A, 0x53, 0xA2, 0x52, 0xA2, 0x32, 0x01, 0x9A, 0x32, 0x01, 0x9A, 0x11, 0x01, 0x9A, 0x10, 0x86, 0x92, 0x0F, 0x91, 0xEE, 0x91, 0xED, 0x89, 0xCC, 0x81, 0x8B, 0x79, 0x8B, 0x79, 0x6A, 0x01, 0x71, 0x49, 0x81, 0x69, 0x29, 0x69, 0x49, 0x01, 0x69, 0x29, 0x83, 0x69, 0x28, 0x69, 0x49, 0x69, 0x28, 0x69, 0x49, 0x01, 0x69, 0x28, 0x87, 0x69, 0x29, 0x69, 0x49, 0x69, 0x29, 0x69, 0x49, 0x69, 0x29, 0x69, 0x49, 0x69, 0x28, 0x69, 0x49, 0x02, 0x69, 0x28, 0x84, 0x69, 0x48, 0x69, 0x28, 0x69, 0x49, 0x69, 0x29, 0x69, 0x49, 0x05, 0x69, 0x29, 0x80, 0x69, 0x28, 0x04, 0x69, 0x29, 0x01, 0x69, 0x28, 0x80, 0x69, 0x29, 0x04, 0x69, 0x28, 0x01, 0x69, 0x29, 0x80, 0x69, 0x28, + 0x03, 0x69, 0x29, 0x04, 0x69, 0x28, 0x05, 0x69, 0x29, 0x81, 0x69, 0x28, 0x69, 0x49, 0x01, 0x69, 0x29, 0x82, 0x69, 0x28, 0x69, 0x29, 0x69, 0x28, 0x09, 0x69, 0x29, 0x81, 0x69, 0x28, 0x69, 0x29, 0x01, 0x69, 0x28, 0x81, 0x69, 0x29, 0x69, 0x28, 0x02, 0x69, 0x29, 0x02, 0x69, 0x28, 0x02, 0x69, 0x29, 0x02, 0x69, 0x28, 0x86, 0x69, 0x29, 0x69, 0x28, 0x69, 0x29, 0x69, 0x28, 0x69, 0x49, 0x69, 0x29, 0x69, 0x49, 0x01, 0x69, 0x29, 0x01, 0x69, 0x28, 0x82, 0x69, 0x29, 0x69, 0x28, 0x69, 0x48, 0x05, 0x69, 0x28, 0x04, 0x69, 0x29, 0x80, 0x69, 0x28, 0x03, 0x69, 0x29, 0x84, 0x69, 0x49, 0x69, 0x28, 0x69, 0x49, 0x69, 0x28, 0x69, 0x48, 0x03, 0x69, 0x49, 0x03, 0x69, 0x29, 0x80, 0x69, 0x28, 0x01, 0x69, 0x49, 0x02, 0x69, 0x29, 0x01, 0x69, 0x28, 0x89, 0x69, 0x29, 0x69, 0x49, 0x69, 0x28, 0x69, 0x49, 0x69, 0x29, 0x69, 0x49, 0x69, 0x29, 0x69, 0x49, 0x69, 0x29, 0x69, 0x49, 0x03, 0x69, 0x29, 0x01, 0x69, 0x28, 0x0C, 0x69, 0x29, 0x01, 0x69, 0x49, 0x06, 0x69, 0x29, 0x80, 0x69, 0x28, 0x02, 0x69, 0x29, 0x80, 0x69, 0x28, 0x02, 0x69, 0x29, 0x81, 0x61, 0x28, 0x69, 0x49, 0x01, 0x69, 0x29, 0x80, 0x69, 0x28, 0x03, 0x69, 0x29, 0x01, 0x69, 0x28, 0x81, 0x69, 0x29, 0x69, 0x28, 0x02, 0x69, 0x29, 0x02, 0x69, 0x28, 0x81, 0x69, 0x29, 0x69, 0x28, 0x01, 0x69, 0x29, 0x82, 0x69, 0x49, 0x69, 0x28, 0x69, 0x49, 0x04, 0x69, 0x29, 0x80, 0x69, 0x49, 0x0A, 0x69, 0x29, 0x80, 0x69, 0x09, 0x0C, 0x69, 0x29, 0x80, 0x69, 0x49, 0x05, 0x69, 0x29, 0x01, 0x69, 0x09, 0x80, 0x69, 0x29, 0x06, + 0x71, 0x29, 0x81, 0x71, 0x09, 0x71, 0x29, 0x09, 0x71, 0x09, 0x82, 0x70, 0xE9, 0x79, 0x09, 0x71, 0x09, 0x01, 0x70, 0xE9, 0x80, 0x71, 0x09, 0x01, 0x79, 0x09, 0x02, 0x71, 0x09, 0x01, 0x79, 0x09, 0x01, 0x70, 0xE9, 0x84, 0x79, 0x09, 0x71, 0x09, 0x79, 0x09, 0x70, 0xE9, 0x79, 0x09, 0x03, 0x71, 0x09, 0x80, 0x70, 0xE9, 0x0A, 0x71, 0x09, 0x01, 0x70, 0xE9, 0x01, 0x79, 0x0A, 0x80, 0x78, 0xE9, 0x03, 0x79, 0x0A, 0x88, 0x81, 0x2A, 0x81, 0x2B, 0x89, 0x4B, 0x89, 0x4C, 0x91, 0x6D, 0x91, 0x8E, 0x99, 0xAF, 0xA1, 0xB0, 0xA1, 0xD1, 0x01, 0xA9, 0xD2, 0x01, 0xA9, 0xD3, 0x80, 0xA9, 0xF3, 0x02, 0xAA, 0x14, 0x01, 0xA2, 0x14, 0x81, 0x92, 0x14, 0x81, 0xB3, 0x01, 0x79, 0xB4, 0x01, 0x79, 0xD4, 0x90, 0x79, 0xF4, 0x81, 0xF5, 0x81, 0xB4, 0x89, 0xD5, 0x91, 0xD5, 0x99, 0xF6, 0xA2, 0x17, 0xA2, 0x38, 0xA2, 0x59, 0x92, 0x9B, 0x41, 0x19, 0x29, 0x3B, 0x21, 0x7D, 0x19, 0x7D, 0x09, 0x9E, 0x01, 0xBE, 0x01, 0xFF, 0x02, 0x02, 0x1F, 0x81, 0x02, 0x3F, 0x02, 0x5F, 0x04, 0x02, 0x9F, 0x80, 0x02, 0xBF, 0x01, 0x02, 0xBE, 0x8F, 0x02, 0xBD, 0x02, 0xDB, 0x03, 0x3A, 0x0C, 0x7A, 0x47, 0x3F, 0x37, 0x3B, 0x16, 0x94, 0x26, 0xB2, 0x36, 0xD3, 0x4E, 0x94, 0x76, 0x57, 0x5C, 0x73, 0x5B, 0x53, 0x62, 0xB3, 0x6A, 0x94, 0x62, 0x14, 0x02, 0x61, 0xB3, 0x85, 0x59, 0xB3, 0x51, 0x92, 0x51, 0x93, 0x51, 0x92, 0x51, 0xB3, 0x51, 0xB2, 0x01, 0x49, 0x92, 0x80, 0x41, 0x91, 0x03, 0x41, 0x71, 0x80, 0x39, 0x70, 0x01, 0x39, 0x50, 0x80, 0x39, 0x70, 0x01, 0x31, 0x50, 0x82, 0x31, 0x4F, 0x31, 0x2F, 0x31, + 0x4F, 0x01, 0x31, 0x2F, 0x86, 0x31, 0x4F, 0x31, 0x0F, 0x29, 0x0F, 0x31, 0x2F, 0x29, 0x0E, 0x31, 0x2F, 0x29, 0x2F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x05, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x0C, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x2F, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x2F, 0x8A, 0x21, 0x2F, 0x21, 0x0F, 0x19, 0x10, 0x11, 0x11, 0x19, 0x74, 0x21, 0xD6, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x32, 0x19, 0x30, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x21, 0x2E, 0x03, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x01, 0x19, 0x10, 0x82, 0x19, 0x31, 0x11, 0x32, 0x19, 0x74, 0x01, 0x21, 0xD6, 0x84, 0x21, 0xF6, 0x19, 0x74, 0x11, 0x32, 0x11, 0x11, 0x19, 0x11, 0x01, 0x21, 0x30, 0x83, 0x29, 0x30, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x09, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x21, 0x0F, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x2F, 0x02, 0x21, 0x2F, 0x81, 0x29, 0x2F, 0x29, 0x50, 0x03, + 0x21, 0x30, 0x8A, 0x19, 0x30, 0x19, 0x31, 0x19, 0x32, 0x11, 0x52, 0x19, 0x94, 0x19, 0xD5, 0x19, 0xF5, 0x1A, 0x16, 0x22, 0x36, 0x21, 0xF5, 0x19, 0xB4, 0x01, 0x19, 0x52, 0x01, 0x19, 0x10, 0x84, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x0A, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x2F, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x06, 0x29, 0x0E, 0x83, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x2F, 0x07, 0x29, 0x2E, 0x81, 0x29, 0x2F, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x21, 0x0E, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x03, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x19, 0x31, 0x01, 0x19, 0x52, 0x01, 0x19, 0x72, 0x80, 0x19, 0x73, 0x02, 0x19, 0x52, 0x80, 0x19, 0x73, 0x01, 0x21, 0x73, 0x01, 0x19, 0x73, 0x01, 0x19, 0x93, 0x02, 0x19, 0x73, 0x80, 0x19, 0x93, 0x08, 0x19, 0x73, 0x81, 0x21, 0x73, 0x19, 0x73, 0x03, 0x21, 0x73, 0x81, 0x21, 0x93, 0x21, 0x73, 0x01, 0x19, 0x73, 0x82, 0x21, 0x73, 0x19, 0x73, 0x21, 0x73, 0x03, 0x19, 0x73, 0x80, 0x21, 0x73, 0x01, 0x19, 0x73, 0x01, 0x21, 0x73, 0x08, 0x19, 0x73, 0x84, 0x19, 0x72, 0x21, 0x73, 0x19, 0x72, 0x21, 0x73, 0x19, 0x73, 0x01, 0x21, 0x73, 0x01, + 0x19, 0x72, 0x80, 0x19, 0x73, 0x01, 0x21, 0x73, 0x81, 0x19, 0x72, 0x21, 0x73, 0x02, 0x19, 0x72, 0x80, 0x19, 0x73, 0x01, 0x19, 0x72, 0x02, 0x19, 0x73, 0x81, 0x21, 0x93, 0x19, 0x73, 0x05, 0x19, 0x93, 0x01, 0x19, 0x73, 0x04, 0x19, 0x93, 0x82, 0x21, 0x93, 0x19, 0x93, 0x19, 0x73, 0x03, 0x19, 0x93, 0x83, 0x21, 0x93, 0x19, 0x73, 0x21, 0x93, 0x21, 0x73, 0x02, 0x21, 0x93, 0x80, 0x19, 0x73, 0x04, 0x21, 0x93, 0x80, 0x19, 0x73, 0x01, 0x19, 0x93, 0x83, 0x21, 0x93, 0x21, 0x73, 0x21, 0x93, 0x19, 0x73, 0x01, 0x21, 0x73, 0x80, 0x19, 0x93, 0x04, 0x19, 0x73, 0x01, 0x19, 0x53, 0x01, 0x19, 0x73, 0x80, 0x19, 0x53, 0x02, 0x19, 0x52, 0x01, 0x19, 0x32, 0x80, 0x11, 0x10, 0x01, 0x19, 0x10, 0x80, 0x21, 0x10, 0x02, 0x21, 0x0F, 0x05, 0x21, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x05, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x0C, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x07, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x0C, 0x29, 0x0E, 0x81, 0x29, 0x2F, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x09, 0x29, 0x0E, 0x10, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x8C, 0x28, 0xED, 0x30, 0xED, 0x30, 0xAC, 0x48, 0xED, 0x8A, 0x53, 0x9A, 0x94, 0x9A, + 0x73, 0x9A, 0x53, 0x9A, 0x52, 0xA2, 0x52, 0xA2, 0x32, 0x9A, 0x32, 0x9A, 0x31, 0x02, 0x9A, 0x11, 0x80, 0x9A, 0x10, 0x02, 0x91, 0xF0, 0x02, 0x91, 0xCF, 0x07, 0x89, 0xAF, 0x83, 0x89, 0xAE, 0x89, 0x8E, 0x81, 0x8E, 0x81, 0x8F, 0x0E, 0x81, 0x8E, 0x81, 0x81, 0xAF, 0x81, 0xAE, 0x29, 0x81, 0x8E, 0x04, 0x89, 0x8E, 0x02, 0x89, 0xAE, 0x02, 0x89, 0x8E, 0x81, 0x89, 0x8F, 0x89, 0x8E, 0x01, 0x89, 0xAE, 0x81, 0x89, 0xAF, 0x89, 0x8F, 0x04, 0x89, 0x8E, 0x04, 0x81, 0x8E, 0x80, 0x89, 0x8E, 0x05, 0x81, 0x8E, 0x01, 0x89, 0xAE, 0x01, 0x89, 0x8E, 0x80, 0x89, 0xAE, 0x09, 0x81, 0x8E, 0x03, 0x81, 0x8F, 0x04, 0x81, 0x8E, 0x03, 0x89, 0x8E, 0x01, 0x81, 0x8E, 0x03, 0x89, 0xAE, 0x01, 0x89, 0x8E, 0x80, 0x89, 0xAE, 0x01, 0x89, 0x8E, 0x3E, 0x81, 0x8E, 0x01, 0x89, 0x8E, 0x81, 0x81, 0x8E, 0x89, 0x8E, 0x01, 0x81, 0x8E, 0x01, 0x89, 0x8E, 0x81, 0x81, 0x8E, 0x89, 0x8E, 0x04, 0x81, 0x8E, 0x81, 0x81, 0x8F, 0x81, 0x8E, 0x01, 0x89, 0x8E, 0x02, 0x89, 0x8F, 0x80, 0x89, 0xAF, 0x02, 0x89, 0x8F, 0x01, 0x81, 0x8F, 0x81, 0x89, 0x8F, 0x89, 0x8E, 0x0A, 0x89, 0x8F, 0x02, 0x81, 0x8F, 0x03, 0x81, 0x6E, 0x80, 0x81, 0x6F, 0x01, 0x89, 0x6F, 0x01, 0x89, 0x6E, 0x05, 0x89, 0x6F, 0x81, 0x91, 0x6F, 0x91, 0x8F, 0x03, 0x91, 0x6F, 0x01, 0x99, 0x8F, 0x80, 0x99, 0x6F, 0x01, 0x99, 0x8F, 0x01, 0x99, 0x6F, 0x82, 0x99, 0x8F, 0x99, 0x6F, 0x99, 0x90, 0x04, 0x99, 0x6F, 0x80, 0xA1, 0x8F, 0x06, 0x99, 0x6F, 0x80, 0xA1, 0x6F, 0x04, 0x99, 0x6F, 0x01, 0x99, 0x4F, 0x80, 0x99, 0x6F, 0x03, 0x99, 0x4F, + 0x81, 0x91, 0x4F, 0x99, 0x6F, 0x01, 0x99, 0x4F, 0x88, 0x91, 0x4F, 0x99, 0x6F, 0x91, 0x4F, 0x99, 0x6F, 0x99, 0x4F, 0x99, 0x6F, 0x99, 0x4F, 0x99, 0x70, 0x99, 0x4F, 0x01, 0x99, 0x6F, 0x01, 0x99, 0x70, 0x83, 0xA1, 0x70, 0x99, 0x70, 0xA1, 0x70, 0xA1, 0x90, 0x02, 0xA1, 0x91, 0x81, 0xA1, 0xB1, 0xA9, 0xB1, 0x01, 0xA9, 0xD2, 0x81, 0xB1, 0xF3, 0xA9, 0xF3, 0x01, 0xB1, 0xF3, 0x80, 0xAA, 0x13, 0x01, 0xAA, 0x14, 0x84, 0xA2, 0x14, 0xA2, 0x35, 0x89, 0xB3, 0x81, 0xB3, 0x79, 0xB3, 0x01, 0x79, 0xB4, 0x01, 0x79, 0xD4, 0x90, 0x81, 0xF4, 0x81, 0xD4, 0x89, 0xD4, 0x91, 0xF5, 0x91, 0xB4, 0x99, 0xF6, 0xA2, 0x37, 0xA2, 0x58, 0x9A, 0x79, 0x82, 0x5B, 0x41, 0x19, 0x29, 0x3B, 0x21, 0x7D, 0x11, 0x7D, 0x09, 0x9E, 0x01, 0xDE, 0x02, 0x1F, 0x02, 0x02, 0x3F, 0x81, 0x02, 0x5F, 0x02, 0x7F, 0x03, 0x02, 0x9F, 0x01, 0x02, 0xBF, 0x93, 0x02, 0xDF, 0x02, 0xDE, 0x02, 0xDD, 0x02, 0xDC, 0x02, 0xFA, 0x03, 0xD9, 0x4F, 0x3F, 0x37, 0x3C, 0x16, 0x74, 0x26, 0xB3, 0x3E, 0xD3, 0x56, 0x94, 0x76, 0x16, 0x53, 0xD2, 0x63, 0x33, 0x6A, 0xB3, 0x72, 0x94, 0x69, 0xF3, 0x61, 0xD3, 0x61, 0xB3, 0x02, 0x59, 0xB3, 0x82, 0x51, 0xB3, 0x51, 0xB2, 0x49, 0xB2, 0x01, 0x49, 0x92, 0x80, 0x49, 0x91, 0x01, 0x41, 0x71, 0x80, 0x41, 0x91, 0x01, 0x41, 0x71, 0x81, 0x39, 0x50, 0x39, 0x70, 0x01, 0x39, 0x50, 0x01, 0x31, 0x50, 0x01, 0x31, 0x4F, 0x02, 0x31, 0x2F, 0x83, 0x31, 0x4F, 0x31, 0x0F, 0x31, 0x2F, 0x29, 0x0E, 0x01, 0x31, 0x2F, 0x13, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, + 0x02, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x83, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x2F, 0x21, 0x0E, 0x08, 0x29, 0x0E, 0x90, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0F, 0x21, 0x0F, 0x21, 0x2F, 0x19, 0x10, 0x11, 0x11, 0x19, 0x74, 0x19, 0xB6, 0x19, 0xD6, 0x19, 0xD5, 0x11, 0x32, 0x19, 0x31, 0x21, 0x30, 0x02, 0x21, 0x2F, 0x83, 0x29, 0x2E, 0x21, 0x2E, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x21, 0x2E, 0x03, 0x21, 0x2F, 0x84, 0x19, 0x10, 0x19, 0x11, 0x11, 0x11, 0x19, 0x53, 0x19, 0x74, 0x02, 0x21, 0xD6, 0x84, 0x19, 0x74, 0x11, 0x32, 0x11, 0x11, 0x11, 0x10, 0x19, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x01, 0x29, 0x0F, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x06, 0x29, 0x2F, 0x81, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x85, 0x21, 0x4F, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x30, 0x01, 0x19, 0x31, 0x84, 0x19, 0x52, 0x19, 0x53, 0x19, 0xB4, 0x19, 0xF6, 0x1A, 0x16, 0x01, 0x1A, 0x17, 0x89, 0x1A, 0x37, 0x22, 0x16, 0x21, 0xF6, 0x21, 0xD5, 0x19, 0x94, 0x11, 0x32, 0x10, 0xF1, + 0x19, 0x10, 0x21, 0x10, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0F, 0x05, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x05, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x13, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x84, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x81, 0x19, 0x30, 0x19, 0x10, 0x01, 0x19, 0x31, 0x80, 0x19, 0x10, 0x02, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x07, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x81, 0x19, 0x11, 0x19, 0x31, 0x01, 0x19, 0x11, 0x03, 0x19, 0x31, 0x03, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x11, 0x0C, 0x19, 0x31, 0x80, 0x19, 0x11, 0x05, 0x19, 0x31, 0x80, 0x19, 0x11, 0x0B, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x10, 0x19, 0x31, 0x01, 0x19, 0x11, 0x14, 0x19, 0x31, 0x80, 0x19, 0x32, 0x01, 0x19, 0x31, 0x82, 0x19, 0x32, 0x19, 0x31, 0x19, 0x11, 0x0A, 0x19, 0x31, 0x80, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x11, 0x04, 0x19, 0x31, 0x03, 0x19, + 0x11, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x02, 0x19, 0x31, 0x8B, 0x10, 0xF0, 0x18, 0xF0, 0x18, 0xEF, 0x19, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x0E, 0x21, 0x0F, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x02, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x87, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x29, 0x2F, 0x18, 0x29, 0x0E, 0x88, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x0F, 0x08, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x17, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x89, 0x29, 0x0D, 0x28, 0xED, 0x28, 0xCD, 0x30, 0xCD, 0x30, 0x4B, 0x61, 0x6F, 0x8A, 0x53, 0x9A, 0x94, 0x9A, 0x73, 0x9A, 0x52, 0x04, 0xA2, 0x52, 0x80, 0x9A, 0x32, 0x02, 0x9A, 0x31, 0x0B, 0x9A, 0x11, 0x81, 0x92, 0x10, 0x9A, 0x11, 0x08, 0x92, 0x11, 0x81, 0x91, 0xF0, 0x92, 0x11, 0x04, 0x91, 0xF1, 0x84, 0x92, 0x11, 0x91, 0xF1, 0x92, 0x11, 0x91, 0xF1, 0x92, 0x11, 0x10, 0x91, 0xF1, 0x01, 0x92, 0x11, 0x81, 0x91, 0xF1, 0x91, 0xF0, 0x08, 0x91, 0xF1, 0x82, 0x91, 0xD0, 0x91, 0xF0, 0x91, 0xD0, 0x02, 0x91, 0xF0, 0x80, 0x91, 0xD0, 0x03, 0x91, 0xF0, 0x86, 0x92, 0x11, 0x91, 0xF1, 0x9A, 0x11, 0x91, 0xF1, 0x92, 0x11, + 0x91, 0xF0, 0x9A, 0x11, 0x08, 0x99, 0xF1, 0x80, 0x91, 0xF1, 0x01, 0x9A, 0x11, 0x81, 0x91, 0xF1, 0x92, 0x11, 0x07, 0x91, 0xF1, 0x80, 0x91, 0xF0, 0x01, 0x91, 0xF1, 0x80, 0x92, 0x11, 0x02, 0x91, 0xF1, 0x80, 0x99, 0xF1, 0x01, 0x91, 0xF1, 0x85, 0x92, 0x11, 0x9A, 0x11, 0x92, 0x10, 0x92, 0x11, 0x9A, 0x11, 0x92, 0x10, 0x01, 0x9A, 0x11, 0x02, 0x92, 0x11, 0x01, 0x91, 0xF1, 0x01, 0x92, 0x11, 0x01, 0x91, 0xF1, 0x81, 0x9A, 0x11, 0x91, 0xF1, 0x01, 0x99, 0xF1, 0x80, 0x9A, 0x11, 0x03, 0x92, 0x11, 0x01, 0x91, 0xF1, 0x80, 0x99, 0xF1, 0x02, 0x91, 0xF1, 0x01, 0x91, 0xF0, 0x80, 0x91, 0xD0, 0x04, 0x91, 0xF0, 0x80, 0x91, 0xF1, 0x01, 0x91, 0xF0, 0x01, 0x91, 0xF1, 0x02, 0x92, 0x11, 0x01, 0x9A, 0x11, 0x80, 0x91, 0xF1, 0x03, 0x92, 0x11, 0x02, 0x91, 0xF1, 0x80, 0x92, 0x11, 0x10, 0x91, 0xF1, 0x82, 0x91, 0xD0, 0x91, 0xF1, 0x91, 0xF0, 0x05, 0x91, 0xF1, 0x05, 0x92, 0x11, 0x82, 0x9A, 0x11, 0x91, 0xF1, 0x92, 0x11, 0x05, 0x9A, 0x11, 0x08, 0x91, 0xF1, 0x01, 0x92, 0x11, 0x04, 0x9A, 0x11, 0x80, 0x91, 0xF1, 0x01, 0x9A, 0x11, 0x80, 0x91, 0xF1, 0x06, 0x9A, 0x11, 0x01, 0x99, 0xF1, 0x02, 0x9A, 0x11, 0x80, 0x9A, 0x12, 0x05, 0x9A, 0x11, 0x80, 0x91, 0xF1, 0x02, 0x99, 0xF1, 0x80, 0x91, 0xF1, 0x02, 0x99, 0xF1, 0x81, 0x99, 0xD1, 0x99, 0xF1, 0x06, 0x99, 0xD1, 0x01, 0xA1, 0xD1, 0x02, 0xA1, 0xB1, 0x81, 0xA1, 0xD1, 0xA1, 0xB1, 0x01, 0xA1, 0xD1, 0x80, 0xA1, 0xB1, 0x12, 0xA9, 0xB1, 0x81, 0xA9, 0x91, 0xA9, 0xB1, 0x01, 0xA9, 0x91, 0x03, 0xA9, 0xB1, 0x01, 0xA9, 0xB2, 0x03, + 0xA9, 0xB1, 0x80, 0xA9, 0xB2, 0x01, 0xA9, 0xB1, 0x81, 0xA9, 0xB2, 0xA9, 0xB1, 0x01, 0xA9, 0xB2, 0x80, 0xA9, 0xB1, 0x01, 0xA9, 0xB2, 0x01, 0xA9, 0xB1, 0x09, 0xA9, 0xB2, 0x04, 0xA9, 0xD2, 0x87, 0xB1, 0xD3, 0xB1, 0xF3, 0xB2, 0x14, 0xAA, 0x14, 0xA9, 0xF4, 0xA1, 0xF4, 0x99, 0xF4, 0x89, 0xB3, 0x01, 0x81, 0xB3, 0x05, 0x79, 0xD4, 0x8F, 0x81, 0xD4, 0x89, 0xF5, 0x91, 0xF5, 0x91, 0xD5, 0x99, 0xF6, 0xA2, 0x37, 0xA2, 0x58, 0x9A, 0x7A, 0x7A, 0x3A, 0x39, 0x39, 0x29, 0x7C, 0x19, 0x9D, 0x11, 0xBE, 0x09, 0xDE, 0x02, 0x1F, 0x02, 0x3F, 0x01, 0x02, 0x5F, 0x80, 0x02, 0x7F, 0x01, 0x02, 0x9F, 0x03, 0x02, 0xBF, 0x01, 0x02, 0xDF, 0x9D, 0x02, 0xFF, 0x02, 0xFE, 0x02, 0xDE, 0x02, 0xFC, 0x02, 0xFB, 0x03, 0x99, 0x3E, 0xBF, 0x37, 0x1C, 0x1E, 0x54, 0x1E, 0x52, 0x3E, 0x92, 0x56, 0x74, 0x75, 0xB5, 0x5B, 0x91, 0x5A, 0xB2, 0x6A, 0x53, 0x72, 0x54, 0x6A, 0x14, 0x69, 0xD4, 0x61, 0xB3, 0x59, 0x92, 0x59, 0x93, 0x59, 0xD3, 0x59, 0xB3, 0x51, 0xB2, 0x49, 0x92, 0x49, 0x71, 0x49, 0x92, 0x41, 0x71, 0x41, 0x91, 0x03, 0x41, 0x71, 0x04, 0x39, 0x50, 0x80, 0x31, 0x4F, 0x03, 0x31, 0x2F, 0x01, 0x31, 0x4F, 0x81, 0x31, 0x2F, 0x31, 0x0E, 0x01, 0x29, 0x0E, 0x80, 0x31, 0x2F, 0x02, 0x29, 0x0E, 0x84, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2F, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x29, + 0x2F, 0x07, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x8B, 0x19, 0x10, 0x11, 0x11, 0x19, 0x73, 0x21, 0xF6, 0x19, 0xD6, 0x19, 0xB5, 0x11, 0x53, 0x11, 0x31, 0x19, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x85, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x21, 0x0E, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x30, 0x8B, 0x19, 0x11, 0x11, 0x11, 0x11, 0x32, 0x19, 0x74, 0x21, 0xB5, 0x21, 0xF6, 0x21, 0xD5, 0x19, 0x94, 0x11, 0x53, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x06, 0x21, 0x30, 0x01, 0x21, 0x10, 0x02, 0x21, 0x30, 0x82, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x03, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0F, 0x04, 0x21, 0x2F, 0x82, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x83, 0x29, 0x30, 0x21, 0x30, 0x29, 0x30, 0x21, 0x30, 0x03, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x02, 0x19, 0x30, 0x01, 0x19, 0x31, 0x83, 0x19, 0x52, 0x19, 0x94, 0x19, 0xB5, 0x19, 0xD5, 0x01, 0x11, 0xD5, 0x01, 0x11, 0xB5, 0x89, 0x11, 0xD5, 0x19, 0xF6, 0x22, 0x16, 0x19, 0xF6, 0x19, 0xB5, 0x19, 0x94, 0x11, 0x32, 0x19, 0x11, 0x21, 0x30, 0x21, 0x10, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2E, 0x06, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x21, + 0x2E, 0x03, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x21, 0x0E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x81, 0x29, 0x2F, 0x21, 0x0E, 0x02, 0x21, 0x2E, 0x82, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x21, 0x2E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x2F, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x03, 0x29, 0x2E, 0x01, 0x21, 0x2E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x82, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x0E, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x19, 0x10, 0x80, 0x21, 0x30, 0x01, 0x19, 0x10, 0x80, 0x21, 0x10, 0x03, 0x19, 0x10, 0x01, 0x19, 0x30, 0x01, 0x19, 0x10, 0x01, 0x19, 0x30, 0x81, 0x19, 0x10, 0x21, 0x31, 0x08, 0x19, 0x10, 0x80, 0x19, 0x30, 0x02, 0x19, 0x10, 0x80, 0x19, 0x30, 0x05, 0x19, 0x10, 0x80, 0x19, 0x31, 0x02, 0x19, 0x10, 0x80, 0x19, 0x30, 0x02, 0x19, 0x10, 0x01, 0x19, 0x30, 0x02, 0x19, 0x10, 0x80, 0x19, 0x30, 0x01, 0x21, 0x30, 0x03, 0x19, 0x10, 0x01, 0x19, 0x30, 0x81, 0x19, 0x10, 0x21, 0x30, 0x01, 0x19, 0x10, 0x81, 0x21, 0x10, 0x19, 0x10, 0x01, 0x21, 0x10, 0x81, 0x19, 0x10, 0x21, 0x30, 0x09, 0x19, + 0x10, 0x80, 0x19, 0x30, 0x01, 0x19, 0x10, 0x80, 0x19, 0x30, 0x01, 0x19, 0x10, 0x01, 0x19, 0x30, 0x01, 0x19, 0x10, 0x80, 0x19, 0x30, 0x01, 0x19, 0x10, 0x82, 0x19, 0x30, 0x19, 0x10, 0x19, 0x30, 0x01, 0x19, 0x10, 0x84, 0x19, 0x30, 0x19, 0x10, 0x19, 0x11, 0x21, 0x31, 0x19, 0x10, 0x01, 0x19, 0x11, 0x01, 0x19, 0x10, 0x80, 0x19, 0x30, 0x04, 0x19, 0x10, 0x83, 0x19, 0x31, 0x19, 0x11, 0x19, 0x10, 0x21, 0x31, 0x01, 0x19, 0x11, 0x80, 0x19, 0x10, 0x02, 0x19, 0x11, 0x04, 0x19, 0x10, 0x01, 0x21, 0x11, 0x05, 0x19, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x02, 0x21, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x1A, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x0D, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x15, 0x29, 0x2E, 0x06, 0x29, 0x0E, 0x01, 0x28, 0xED, 0x85, 0x30, 0xCD, 0x30, 0xAC, 0x40, 0xAC, 0x61, 0x4F, 0x92, 0x93, 0xA2, 0xD4, 0x01, 0x9A, 0x93, 0x01, 0x9A, 0x73, 0x81, 0xA2, 0x73, 0xA2, 0x53, 0x06, 0xA2, 0x52, 0x80, 0xA2, 0x32, 0x08, 0xA2, 0x52, 0x04, 0xA2, 0x73, 0x80, 0xA2, 0x53, 0x03, 0xA2, 0x73, 0x80, 0xA2, 0x52, 0x0A, 0xA2, 0x53, + 0x80, 0xA2, 0x73, 0x04, 0xA2, 0x53, 0x80, 0xA2, 0x73, 0x07, 0xA2, 0x53, 0x80, 0xA2, 0x73, 0x03, 0xA2, 0x52, 0x0C, 0xA2, 0x53, 0x81, 0xA2, 0x73, 0xA2, 0x53, 0x02, 0xA2, 0x73, 0x04, 0xA2, 0x52, 0x81, 0xA2, 0x73, 0xA2, 0x52, 0x01, 0xA2, 0x73, 0x04, 0xA2, 0x53, 0x01, 0xA2, 0x52, 0x01, 0xA2, 0x53, 0x81, 0xA2, 0x73, 0xA2, 0x52, 0x07, 0xA2, 0x53, 0x82, 0x9A, 0x52, 0xA2, 0x53, 0xA2, 0x73, 0x03, 0xA2, 0x53, 0x02, 0xA2, 0x52, 0x80, 0xA2, 0x53, 0x0C, 0xA2, 0x52, 0x01, 0xA2, 0x53, 0x80, 0xA2, 0x52, 0x02, 0xA2, 0x53, 0x02, 0xA2, 0x52, 0x01, 0xA2, 0x53, 0x07, 0xA2, 0x52, 0x0A, 0xA2, 0x53, 0x83, 0xA2, 0x73, 0xA2, 0x52, 0xA2, 0x73, 0xA2, 0x53, 0x04, 0xA2, 0x52, 0x82, 0xA2, 0x53, 0xA2, 0x73, 0xA2, 0x53, 0x05, 0xA2, 0x73, 0x07, 0xA2, 0x53, 0x81, 0xA2, 0x73, 0xA2, 0x53, 0x01, 0xA2, 0x73, 0x0D, 0xA2, 0x53, 0x01, 0xA2, 0x73, 0x80, 0xA2, 0x53, 0x02, 0xA2, 0x52, 0x13, 0xA2, 0x53, 0x04, 0xA2, 0x52, 0x01, 0xA2, 0x53, 0x80, 0xA2, 0x73, 0x01, 0xA2, 0x53, 0x80, 0xA2, 0x32, 0x01, 0xA2, 0x52, 0x06, 0xA2, 0x53, 0x80, 0xA2, 0x33, 0x06, 0xA2, 0x53, 0x81, 0xA2, 0x33, 0xA2, 0x53, 0x04, 0xA2, 0x32, 0x01, 0xA2, 0x33, 0x80, 0xA2, 0x32, 0x01, 0xA2, 0x12, 0x80, 0xA2, 0x13, 0x01, 0xA2, 0x12, 0x85, 0xA1, 0xF2, 0xA9, 0xF2, 0xA9, 0xF3, 0xA9, 0xF2, 0xA9, 0xD2, 0xA9, 0xF2, 0x07, 0xA9, 0xD2, 0x80, 0xB1, 0xB2, 0x01, 0xB1, 0xD2, 0x04, 0xB1, 0xB2, 0x80, 0xB1, 0xD2, 0x0E, 0xB1, 0xB2, 0x02, 0xB1, 0xB3, 0x01, 0xB1, 0xB2, 0x80, 0xA9, 0xB2, 0x04, 0xB1, 0xB2, 0x81, 0xB1, + 0xD3, 0xB1, 0xB3, 0x01, 0xB1, 0xB2, 0x01, 0xB1, 0xD3, 0x02, 0xB1, 0xB2, 0x0C, 0xB1, 0xB3, 0x01, 0xB1, 0xD3, 0x88, 0xB1, 0xF3, 0xB2, 0x14, 0xA9, 0xD3, 0x91, 0x52, 0x91, 0x72, 0x89, 0x93, 0x81, 0x73, 0x81, 0x93, 0x81, 0xB4, 0x05, 0x81, 0xD4, 0x8F, 0x89, 0xD4, 0x91, 0xF4, 0x99, 0xF5, 0x99, 0xD5, 0xA2, 0x16, 0xA2, 0x37, 0xA2, 0x58, 0x92, 0x79, 0x72, 0x1A, 0x39, 0x5A, 0x29, 0x9C, 0x19, 0xBD, 0x11, 0xDE, 0x12, 0x1F, 0x0A, 0x5F, 0x02, 0x5F, 0x01, 0x02, 0x7F, 0x80, 0x02, 0x9F, 0x02, 0x02, 0xBF, 0x04, 0x02, 0xDF, 0x98, 0x02, 0xFF, 0x03, 0x1F, 0x02, 0xFE, 0x02, 0xFD, 0x02, 0xFB, 0x03, 0x5A, 0x2D, 0xFF, 0x36, 0xDD, 0x1E, 0x75, 0x1E, 0x52, 0x3E, 0x72, 0x5E, 0x54, 0x75, 0x75, 0x53, 0x30, 0x62, 0x91, 0x72, 0x73, 0x72, 0x34, 0x72, 0x14, 0x69, 0xD4, 0x69, 0xB3, 0x61, 0xB3, 0x59, 0x93, 0x59, 0xD3, 0x59, 0xB3, 0x51, 0x92, 0x02, 0x49, 0x92, 0x02, 0x41, 0x91, 0x02, 0x41, 0x71, 0x01, 0x41, 0x50, 0x02, 0x39, 0x50, 0x01, 0x31, 0x4F, 0x04, 0x31, 0x2F, 0x81, 0x31, 0x0F, 0x31, 0x2F, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x09, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x0B, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x21, 0x0F, 0x82, 0x19, 0x10, 0x11, 0x11, 0x11, + 0x52, 0x01, 0x21, 0xF6, 0x82, 0x19, 0xD5, 0x11, 0x53, 0x11, 0x31, 0x01, 0x19, 0x10, 0x01, 0x21, 0x2F, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x2F, 0x8D, 0x21, 0x2F, 0x21, 0x30, 0x21, 0x10, 0x19, 0x11, 0x19, 0x32, 0x11, 0x32, 0x19, 0x74, 0x21, 0xB5, 0x21, 0xF6, 0x19, 0xB5, 0x19, 0x94, 0x11, 0x53, 0x11, 0x32, 0x11, 0x11, 0x01, 0x19, 0x10, 0x03, 0x19, 0x30, 0x82, 0x19, 0x10, 0x21, 0x30, 0x19, 0x10, 0x04, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x03, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x82, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x03, 0x21, 0x30, 0x03, 0x19, 0x30, 0x02, 0x19, 0x31, 0x81, 0x11, 0x32, 0x11, 0x53, 0x01, 0x19, 0xB5, 0x84, 0x19, 0xF6, 0x09, 0x95, 0x11, 0x95, 0x09, 0x74, 0x11, 0x94, 0x01, 0x09, 0x74, 0x8D, 0x11, 0xB5, 0x19, 0xD6, 0x19, 0xF6, 0x19, 0xB5, 0x19, 0x94, 0x19, 0x32, 0x19, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x21, 0x0E, 0x29, 0x2E, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x02, 0x21, 0x2E, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x2E, 0x82, 0x29, 0x2E, 0x21, 0x2E, 0x29, 0x2E, 0x01, 0x21, 0x0E, 0x81, 0x21, 0x2E, 0x29, 0x2F, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x83, 0x29, 0x0F, 0x29, 0x2F, 0x29, 0x0F, 0x29, 0x2F, + 0x01, 0x29, 0x2E, 0x80, 0x29, 0x4E, 0x05, 0x21, 0x2E, 0x81, 0x29, 0x2E, 0x21, 0x2E, 0x04, 0x29, 0x2E, 0x07, 0x21, 0x2E, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x2E, 0x01, 0x21, 0x0E, 0x01, 0x21, 0x2E, 0x82, 0x21, 0x0E, 0x21, 0x2E, 0x21, 0x0E, 0x01, 0x21, 0x2E, 0x02, 0x21, 0x0E, 0x80, 0x21, 0x2E, 0x03, 0x21, 0x0E, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x21, 0x2E, 0x02, 0x21, 0x2F, 0x84, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x19, 0x0F, 0x02, 0x21, 0x0F, 0x82, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x80, 0x21, 0x30, 0x02, 0x21, 0x10, 0x88, 0x21, 0x30, 0x19, 0x0F, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x10, 0x19, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x19, 0x0F, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x30, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x19, 0x0F, 0x01, 0x21, 0x30, 0x81, 0x21, 0x10, 0x21, 0x0F, 0x01, 0x21, 0x30, + 0x01, 0x21, 0x10, 0x01, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x83, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x01, 0x21, 0x10, 0x86, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x19, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x30, 0x02, 0x21, 0x10, 0x82, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x08, 0x21, 0x10, 0x85, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x08, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x10, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x06, 0x29, 0x2E, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x09, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x06, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x16, 0x29, 0x2E, 0x06, 0x29, 0x0E, 0x81, 0x28, 0xEE, 0x28, 0xED, 0x01, 0x30, 0xCD, 0x84, 0x30, 0xAC, 0x30, 0x6B, 0x48, 0xCD, 0x71, 0xD1, 0x8A, 0x73, 0x01, 0x9A, 0xB4, 0x80, 0xA2, 0xB4, 0x01, 0xA2, 0x94, 0x80, 0xAA, 0x94, 0x02, 0xAA, 0x93, 0x81, 0xA2, 0x73, 0xAA, 0x73, 0x03, 0xAA, 0x93, 0x83, 0xAA, 0x73, 0xAA, 0x93, 0xA2, 0x93, 0xAA, 0x93, 0x02, 0xA2, 0x93, 0x81, 0xA2, 0x94, + 0xA2, 0x93, 0x02, 0xA2, 0x94, 0x85, 0xA2, 0x93, 0xAA, 0x94, 0xA2, 0x94, 0xAA, 0x94, 0xA2, 0x94, 0xA2, 0x93, 0x02, 0xAA, 0x94, 0x03, 0xA2, 0x94, 0x02, 0xAA, 0x94, 0x80, 0xA2, 0x94, 0x06, 0xAA, 0x94, 0x80, 0xAA, 0xB4, 0x07, 0xAA, 0x94, 0x82, 0xA2, 0x93, 0xA2, 0x94, 0xA2, 0x93, 0x0E, 0xAA, 0x94, 0x83, 0xAA, 0xB4, 0xA2, 0x93, 0xAA, 0xB4, 0xA2, 0x93, 0x04, 0xAA, 0x93, 0x80, 0xA2, 0x93, 0x07, 0xAA, 0x94, 0x80, 0xAA, 0x93, 0x01, 0xAA, 0x94, 0x81, 0xA2, 0x93, 0xAA, 0x94, 0x01, 0xA2, 0x94, 0x80, 0xA2, 0x73, 0x02, 0xA2, 0x94, 0x01, 0xA2, 0x93, 0x01, 0xA2, 0x94, 0x01, 0xA2, 0x93, 0x81, 0xAA, 0x93, 0xAA, 0x94, 0x0F, 0xAA, 0x93, 0x01, 0xA2, 0x93, 0x05, 0xAA, 0x94, 0x80, 0xA2, 0x93, 0x06, 0xAA, 0x93, 0x80, 0xA2, 0x93, 0x03, 0xAA, 0x93, 0x80, 0xAA, 0x94, 0x01, 0xAA, 0x93, 0x85, 0xAA, 0x94, 0xAA, 0xB4, 0xAA, 0x94, 0xAA, 0xB4, 0xAA, 0x94, 0xAA, 0xB4, 0x02, 0xAA, 0x94, 0x81, 0xAA, 0x93, 0xAA, 0x94, 0x01, 0xAA, 0x93, 0x80, 0xA2, 0x93, 0x01, 0xAA, 0x93, 0x83, 0xA2, 0x93, 0xAA, 0x93, 0xA2, 0x93, 0xAA, 0x94, 0x03, 0xA2, 0x93, 0x82, 0xA2, 0x94, 0xAA, 0x94, 0xA2, 0x93, 0x02, 0xA2, 0x94, 0x08, 0xAA, 0x94, 0x02, 0xAA, 0xB4, 0x07, 0xA2, 0x94, 0x01, 0xAA, 0x94, 0x81, 0xA2, 0x94, 0xAA, 0x94, 0x02, 0xA2, 0x93, 0x80, 0xA2, 0x94, 0x01, 0xAA, 0x94, 0x01, 0xA2, 0x94, 0x0B, 0xAA, 0x94, 0x81, 0xA2, 0x93, 0xA2, 0x94, 0x07, 0xA2, 0x93, 0x05, 0xA2, 0x73, 0x01, 0xAA, 0x73, 0x05, 0xA2, 0x73, 0x02, 0xA2, 0x74, 0x83, 0xAA, 0x74, 0xA2, 0x73, 0xA2, 0x74, 0xA2, + 0x73, 0x04, 0xA2, 0x53, 0x02, 0xA2, 0x33, 0x81, 0xAA, 0x53, 0xA2, 0x33, 0x03, 0xAA, 0x33, 0x02, 0xAA, 0x13, 0x03, 0xA9, 0xF3, 0x02, 0xB1, 0xF3, 0x09, 0xB1, 0xD3, 0x81, 0xB1, 0xB3, 0xB1, 0xD3, 0x09, 0xB9, 0xD3, 0x82, 0xB1, 0xB3, 0xB9, 0xB3, 0xB9, 0xD3, 0x02, 0xB9, 0xB3, 0x02, 0xB1, 0xB3, 0x05, 0xB1, 0xD3, 0x01, 0xB1, 0xB3, 0x80, 0xB9, 0xD3, 0x02, 0xB1, 0xD3, 0x05, 0xB1, 0xB3, 0x85, 0xB9, 0xD3, 0xB9, 0xB3, 0xB9, 0xD3, 0xB9, 0xB3, 0xB1, 0xB3, 0xB1, 0xD3, 0x01, 0xB1, 0xB3, 0x80, 0xB1, 0xD3, 0x03, 0xB1, 0xB3, 0x01, 0xB1, 0xD3, 0x8C, 0xB1, 0xF4, 0xB1, 0xD4, 0xA1, 0x72, 0x91, 0x11, 0x89, 0x31, 0x89, 0x52, 0x81, 0x52, 0x79, 0x72, 0x79, 0x73, 0x81, 0xB3, 0x81, 0xB4, 0x79, 0x93, 0x79, 0xB3, 0x01, 0x81, 0xB4, 0x90, 0x81, 0xB3, 0x89, 0xB3, 0x91, 0xD4, 0xA1, 0xF4, 0xA1, 0xF5, 0xAA, 0x16, 0xA2, 0x37, 0xA2, 0x58, 0x92, 0x79, 0x69, 0xF9, 0x39, 0x7A, 0x29, 0xBC, 0x19, 0xDD, 0x12, 0x1E, 0x12, 0x5F, 0x0A, 0x7F, 0x02, 0x7F, 0x01, 0x02, 0x9F, 0x80, 0x02, 0xBF, 0x02, 0x02, 0xDF, 0x04, 0x02, 0xFF, 0x01, 0x03, 0x1F, 0x92, 0x03, 0x1E, 0x02, 0xFD, 0x02, 0xFC, 0x03, 0x3A, 0x25, 0x7E, 0x36, 0xBD, 0x26, 0x76, 0x2E, 0x73, 0x3E, 0x52, 0x5E, 0x33, 0x7D, 0x75, 0x63, 0x51, 0x6A, 0x91, 0x72, 0x53, 0x7A, 0x34, 0x7A, 0x14, 0x71, 0xD3, 0x69, 0xB3, 0x61, 0xB3, 0x02, 0x59, 0xB3, 0x85, 0x51, 0xB3, 0x51, 0xB2, 0x49, 0x72, 0x49, 0x92, 0x49, 0x91, 0x41, 0x91, 0x03, 0x41, 0x71, 0x81, 0x39, 0x50, 0x41, 0x70, 0x02, 0x39, 0x50, 0x02, 0x31, 0x2F, 0x80, 0x31, 0x4F, + 0x04, 0x31, 0x2F, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x8C, 0x21, 0x2E, 0x21, 0x2F, 0x19, 0x10, 0x19, 0x11, 0x11, 0x52, 0x19, 0x94, 0x22, 0x16, 0x21, 0xF6, 0x11, 0x73, 0x11, 0x32, 0x19, 0x31, 0x19, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x21, 0x0E, 0x80, 0x21, 0x2E, 0x01, 0x29, 0x2F, 0x85, 0x21, 0x30, 0x21, 0x10, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x19, 0x73, 0x01, 0x21, 0xB5, 0x85, 0x19, 0xB5, 0x19, 0x74, 0x11, 0x53, 0x11, 0x12, 0x11, 0x11, 0x10, 0xF0, 0x06, 0x19, 0x10, 0x05, 0x19, 0x30, 0x81, 0x19, 0x10, 0x19, 0x30, 0x06, 0x19, 0x10, 0x80, 0x19, 0x30, 0x01, 0x19, 0x10, 0x80, 0x19, 0x30, 0x18, 0x19, 0x10, 0x84, 0x18, 0xEF, 0x18, 0xF0, 0x19, 0x30, 0x19, 0x10, 0x11, 0x10, 0x01, 0x11, 0x11, 0x86, 0x09, 0x11, 0x11, 0x73, 0x19, 0xB5, 0x1A, 0x17, 0x11, 0xD5, 0x11, 0x94, 0x09, 0x74, 0x02, 0x09, 0x53, 0x8A, 0x09, 0x52, 0x09, 0x53, 0x11, 0x94, 0x19, 0xF6, 0x19, 0xB5, 0x21, 0xD5, 0x19, + 0x73, 0x10, 0xF0, 0x21, 0x10, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x0E, 0x81, 0x29, 0x2E, 0x31, 0x2F, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x4E, 0x86, 0x21, 0x4E, 0x21, 0x2E, 0x21, 0x4F, 0x21, 0x2E, 0x21, 0x2F, 0x21, 0x2E, 0x21, 0x0E, 0x03, 0x21, 0x2E, 0x01, 0x21, 0x0E, 0x81, 0x29, 0x0E, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x0B, 0x21, 0x2E, 0x01, 0x29, 0x2E, 0x05, 0x21, 0x2E, 0x84, 0x19, 0x0E, 0x21, 0x2E, 0x21, 0x2F, 0x21, 0x2E, 0x21, 0x2F, 0x01, 0x21, 0x2E, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0E, 0x01, 0x21, 0x2E, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0E, 0x01, 0x21, 0x2E, 0x80, 0x19, 0x0E, 0x01, 0x21, 0x2E, 0x81, 0x21, 0x0E, 0x21, 0x2F, 0x01, 0x21, 0x2E, 0x80, 0x21, 0x0E, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x83, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x21, 0x2E, 0x03, 0x21, 0x0E, 0x82, 0x29, 0x2F, 0x21, 0x2F, 0x29, 0x2F, 0x03, 0x21, 0x2F, 0x80, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x03, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0A, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x85, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, + 0x02, 0x21, 0x0F, 0x83, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x07, 0x21, 0x0F, 0x82, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x0F, 0x21, 0x0F, 0x81, 0x21, 0x0E, 0x21, 0x2F, 0x03, 0x21, 0x0E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x05, 0x29, 0x2E, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x06, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x06, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x0B, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x07, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x31, 0x2E, 0x05, 0x29, 0x0E, 0x01, 0x28, 0xED, 0x89, 0x30, 0xED, 0x30, 0xCD, 0x30, 0xAC, 0x38, 0x8C, 0x40, 0xAC, + 0x50, 0xCD, 0x59, 0x2E, 0x71, 0xB1, 0x8A, 0x53, 0x9A, 0xB4, 0x01, 0xA2, 0xD5, 0x84, 0xA2, 0xF5, 0xA2, 0xD5, 0xA2, 0xF5, 0xA2, 0xD5, 0xAA, 0xF5, 0x01, 0xA2, 0xF5, 0x05, 0xA2, 0xD5, 0x81, 0xA2, 0xD4, 0xA2, 0xF5, 0x02, 0x9A, 0xD4, 0x81, 0xA2, 0xD5, 0x9A, 0xB4, 0x08, 0xA2, 0xD5, 0x84, 0x9A, 0xB5, 0xA2, 0xD5, 0x9A, 0xB5, 0xA2, 0xD5, 0x9A, 0xB5, 0x02, 0xA2, 0xD5, 0x84, 0x9A, 0xB4, 0xA2, 0xD5, 0x9A, 0xB4, 0xA2, 0xD5, 0xA2, 0xB4, 0x08, 0xA2, 0xD5, 0x82, 0xA2, 0xB4, 0xA2, 0xD5, 0x9A, 0xD4, 0x02, 0xA2, 0xD5, 0x81, 0x9A, 0xB4, 0xA2, 0xD5, 0x01, 0x9A, 0xB5, 0x81, 0x9A, 0x94, 0x9A, 0xB5, 0x0B, 0x9A, 0x94, 0x82, 0x9A, 0x93, 0x9A, 0xB4, 0x9A, 0x93, 0x07, 0x9A, 0x94, 0x02, 0x9A, 0xB4, 0x80, 0x9A, 0x94, 0x01, 0x9A, 0xB4, 0x9B, 0x9A, 0xD4, 0x9A, 0xB4, 0xA2, 0xD5, 0x9A, 0xB4, 0xA2, 0xD5, 0x9A, 0xB4, 0x9A, 0xD5, 0x9A, 0xB4, 0x9A, 0xD4, 0x9A, 0xB4, 0x9A, 0xD4, 0x9A, 0xB4, 0xA2, 0xD5, 0x9A, 0xB4, 0xA2, 0xD5, 0xA2, 0xD4, 0xA2, 0xD5, 0xA2, 0xD4, 0xA2, 0xD5, 0xA2, 0xD4, 0xA2, 0xD5, 0xA2, 0xD4, 0xA2, 0xD5, 0xA2, 0xD4, 0xA2, 0xD5, 0xA2, 0xD4, 0xA2, 0xF5, 0xA2, 0xD4, 0x02, 0xA2, 0xD5, 0x80, 0xA2, 0xD4, 0x08, 0xA2, 0xD5, 0x81, 0xA2, 0xD4, 0xA2, 0xF5, 0x05, 0xA2, 0xD5, 0x85, 0xA2, 0xD4, 0xA2, 0xD5, 0xA2, 0xD4, 0xA2, 0xD5, 0xA2, 0xB4, 0xA2, 0xD4, 0x03, 0x9A, 0xB4, 0x02, 0x9A, 0x94, 0x81, 0x9A, 0xB4, 0x9A, 0x94, 0x03, 0x9A, 0xB4, 0x8B, 0xA2, 0xD4, 0x9A, 0xB4, 0xA2, 0xD5, 0xA2, 0xD4, 0xA2, 0xD5, 0xA2, 0xD4, 0xA2, 0xD5, 0xA2, 0xD4, 0xA2, 0xD5, 0x9A, + 0xD4, 0xA2, 0xD5, 0x9A, 0xD4, 0x0A, 0xA2, 0xD5, 0x85, 0x9A, 0xB4, 0xA2, 0xD5, 0x9A, 0xB4, 0x9A, 0xD4, 0x9A, 0xB4, 0x9A, 0xD4, 0x06, 0x9A, 0xB4, 0x8C, 0x9A, 0xD4, 0x9A, 0xB4, 0x9A, 0xB5, 0x9A, 0xB4, 0xA2, 0xD5, 0x9A, 0xB4, 0xA2, 0xD5, 0x9A, 0xB4, 0xA2, 0xD5, 0x9A, 0xB4, 0xA2, 0xD5, 0x9A, 0xB4, 0xA2, 0xD5, 0x02, 0x9A, 0xB4, 0x89, 0xA2, 0xD5, 0x9A, 0xB4, 0xA2, 0xD5, 0xA2, 0xB4, 0xA2, 0xD5, 0x9A, 0xB4, 0xA2, 0xD5, 0x9A, 0xB4, 0xA2, 0xD5, 0x9A, 0xB4, 0x07, 0xA2, 0xD5, 0x02, 0xA2, 0xF5, 0x81, 0xA2, 0xD5, 0xA2, 0xF5, 0x03, 0xA2, 0xD5, 0x84, 0xA2, 0xB5, 0xA2, 0xD5, 0xA2, 0xB5, 0xA2, 0xD5, 0xA2, 0xB4, 0x02, 0xA2, 0xB5, 0x89, 0xA2, 0x95, 0xA2, 0xB5, 0xA2, 0x95, 0xA2, 0xB5, 0xA2, 0x95, 0xA2, 0x74, 0xA2, 0x54, 0xA2, 0x74, 0xA2, 0x54, 0xA2, 0x74, 0x03, 0xAA, 0x74, 0x02, 0xAA, 0x54, 0x80, 0xB2, 0x54, 0x02, 0xB2, 0x34, 0x80, 0xAA, 0x13, 0x01, 0xB2, 0x13, 0x04, 0xB1, 0xF3, 0x04, 0xB1, 0xD3, 0x80, 0xB9, 0xF3, 0x03, 0xB9, 0xD3, 0x80, 0xB9, 0xF3, 0x0D, 0xB9, 0xD3, 0x01, 0xB9, 0xD4, 0x02, 0xB9, 0xD3, 0x02, 0xB9, 0xD4, 0x01, 0xB9, 0xD3, 0x81, 0xB9, 0xD4, 0xB9, 0xD3, 0x02, 0xB9, 0xD4, 0x01, 0xB9, 0xD3, 0x01, 0xB9, 0xD4, 0x01, 0xB9, 0xD3, 0x01, 0xB9, 0xD4, 0x80, 0xB9, 0xB3, 0x01, 0xB9, 0xD3, 0x06, 0xB9, 0xB3, 0x01, 0xB9, 0xD3, 0x80, 0xB9, 0xD4, 0x01, 0xB9, 0xB3, 0x01, 0xB1, 0xB3, 0x83, 0xA9, 0x93, 0xA9, 0x72, 0xA1, 0x93, 0xA1, 0xB3, 0x01, 0x99, 0xB3, 0x80, 0x91, 0xB3, 0x02, 0x81, 0x52, 0x81, 0x79, 0x52, 0x81, 0x52, 0x01, 0x81, 0x72, 0x81, + 0x91, 0xB4, 0x99, 0xF4, 0x01, 0xA1, 0xF4, 0x8D, 0xA9, 0xF4, 0xAA, 0x15, 0xAA, 0x16, 0xA2, 0x37, 0x9A, 0x58, 0x8A, 0x79, 0x61, 0xF9, 0x39, 0xBA, 0x29, 0xFD, 0x19, 0xFD, 0x12, 0x3E, 0x12, 0x7F, 0x0A, 0x9F, 0x02, 0x9F, 0x01, 0x02, 0xBF, 0x80, 0x02, 0xDF, 0x04, 0x02, 0xFF, 0x02, 0x03, 0x1F, 0x01, 0x03, 0x3F, 0x91, 0x03, 0x3E, 0x03, 0x1D, 0x02, 0xFC, 0x03, 0x3A, 0x0C, 0x9C, 0x36, 0x5D, 0x2E, 0x97, 0x2E, 0x73, 0x3E, 0x53, 0x5E, 0x13, 0x7D, 0x75, 0x63, 0x10, 0x6A, 0x91, 0x7A, 0x32, 0x82, 0x34, 0x79, 0xF4, 0x71, 0xB3, 0x69, 0xB3, 0x01, 0x61, 0xB3, 0x81, 0x59, 0x93, 0x51, 0x92, 0x01, 0x51, 0xB2, 0x01, 0x49, 0x92, 0x01, 0x49, 0x91, 0x80, 0x41, 0x91, 0x01, 0x41, 0x71, 0x01, 0x41, 0x50, 0x02, 0x39, 0x50, 0x81, 0x39, 0x30, 0x39, 0x50, 0x07, 0x31, 0x2F, 0x02, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x0D, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x05, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x05, 0x29, 0x2E, 0x8E, 0x21, 0x0E, 0x21, 0x2F, 0x19, 0x0F, 0x19, 0x10, 0x11, 0x32, 0x11, 0x53, 0x21, 0xD5, 0x22, 0x16, 0x19, 0xB5, 0x11, 0x32, 0x19, 0x32, 0x19, 0x31, 0x19, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x03, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x21, 0x0E, + 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x85, 0x21, 0x10, 0x19, 0x10, 0x19, 0x11, 0x19, 0x32, 0x19, 0x53, 0x19, 0x94, 0x01, 0x21, 0xD6, 0x89, 0x19, 0x95, 0x11, 0x53, 0x11, 0x52, 0x11, 0x11, 0x11, 0x31, 0x11, 0x11, 0x19, 0x31, 0x11, 0x11, 0x19, 0x31, 0x11, 0x11, 0x06, 0x19, 0x31, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x31, 0x19, 0x11, 0x02, 0x19, 0x31, 0x80, 0x19, 0x30, 0x07, 0x19, 0x31, 0x01, 0x11, 0x11, 0x82, 0x19, 0x31, 0x11, 0x10, 0x19, 0x31, 0x01, 0x19, 0x11, 0x81, 0x19, 0x10, 0x19, 0x11, 0x01, 0x19, 0x10, 0x80, 0x19, 0x11, 0x05, 0x11, 0x10, 0x84, 0x19, 0x10, 0x11, 0x10, 0x10, 0xF0, 0x19, 0x11, 0x19, 0x31, 0x01, 0x11, 0x31, 0x82, 0x11, 0x12, 0x09, 0x12, 0x09, 0x53, 0x01, 0x19, 0xF6, 0x83, 0x09, 0x94, 0x09, 0x53, 0x09, 0x32, 0x09, 0x53, 0x03, 0x09, 0x32, 0x86, 0x09, 0x53, 0x19, 0xD5, 0x19, 0xF6, 0x19, 0xB5, 0x19, 0x73, 0x19, 0x11, 0x19, 0x0F, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x82, 0x21, 0x2E, 0x21, 0x0E, 0x19, 0x2E, 0x02, 0x21, 0x4E, 0x81, 0x19, 0x2E, 0x19, 0x4E, 0x02, 0x19, 0x2E, 0x01, 0x19, 0x0E, 0x02, 0x19, 0x2E, 0x84, 0x19, 0x0E, 0x21, 0x2E, 0x21, 0x2F, 0x21, 0x0F, 0x29, 0x0F, 0x01, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x2E, 0x07, 0x19, 0x2E, 0x02, 0x21, 0x2E, 0x82, 0x21, 0x4F, 0x21, 0x2E, 0x21, 0x4E, 0x01, 0x21, 0x2E, 0x80, 0x19, 0x4E, 0x02, 0x19, 0x2E, 0x80, 0x19, 0x0E, 0x01, 0x19, 0x2E, 0x01, 0x19, 0x2F, 0x01, 0x21, 0x4F, + 0x01, 0x19, 0x0E, 0x04, 0x19, 0x2E, 0x80, 0x19, 0x0E, 0x01, 0x19, 0x2F, 0x04, 0x19, 0x2E, 0x82, 0x19, 0x0E, 0x19, 0x2E, 0x19, 0x2F, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x82, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x85, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x2E, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x84, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x2E, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x8C, 0x21, 0x0E, 0x21, 0x2E, 0x21, 0x0E, 0x21, 0x0F, 0x21, 0x0E, 0x21, 0x2F, 0x21, 0x0E, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2E, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x0E, 0x04, 0x21, 0x0F, 0x88, 0x21, 0x0E, 0x21, 0x0F, 0x21, 0x0E, 0x21, 0x2F, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x0E, 0x21, 0x2E, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x2E, 0x02, 0x21, 0x0E, 0x8C, 0x21, 0x2F, 0x21, 0x0E, 0x21, 0x2F, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x0E, 0x21, 0x2E, 0x21, 0x0E, 0x21, 0x2E, 0x21, 0x0E, 0x21, 0x2F, 0x21, 0x0E, 0x21, 0x2F, 0x01, 0x21, 0x0E, 0x82, 0x21, 0x0F, 0x21, 0x2E, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x03, 0x21, 0x0E, 0x82, 0x21, 0x0F, 0x21, 0x0E, 0x29, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x0E, 0x29, 0x0F, 0x02, 0x21, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x82, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, + 0x0E, 0x02, 0x29, 0x0F, 0x80, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x2F, 0x82, 0x21, 0x0E, 0x29, 0x0F, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x02, 0x29, 0x0F, 0x83, 0x21, 0x0E, 0x29, 0x2F, 0x21, 0x0F, 0x29, 0x2F, 0x02, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x83, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x2E, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x83, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x0A, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x0A, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x08, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x06, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x0E, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2F, 0x04, 0x29, 0x0E, 0x10, 0x29, 0x2E, 0x08, 0x29, 0x0E, 0x05, 0x29, 0x2E, 0x84, 0x29, 0x0E, 0x29, 0x2E, 0x31, 0x2E, 0x29, 0x0E, 0x31, 0x0E, 0x04, 0x29, 0x0E, 0x01, 0x28, 0xED, 0x01, 0x30, 0xED, 0x86, 0x30, 0xCD, 0x30, 0xAD, 0x30, 0xAC, 0x30, 0x8C, 0x30, 0x6C, 0x30, 0x6B, 0x30, 0x4B, 0x02, 0x30, 0x2B, 0x80, 0x30, 0x2A, 0x08, 0x30, 0x0A, 0x0A, 0x30, 0x2A, 0x80, 0x30, 0x2B, 0x03, 0x30, 0x2A, 0x05, 0x30, 0x2B, 0x18, 0x30, 0x2A, 0x04, 0x30, 0x2B, 0x08, 0x30, 0x4B, 0x01, 0x30, 0x4A, 0x01, 0x30, 0x2A, 0x80, 0x30, 0x4B, 0x02, 0x30, 0x4A, 0x80, 0x30, 0x4B, 0x0A, 0x30, 0x2B, 0x01, 0x30, 0x4B, 0x80, 0x30, 0x2B, 0x02, 0x30, 0x2A, 0x01, + 0x30, 0x2B, 0x01, 0x30, 0x2A, 0x01, 0x30, 0x2B, 0x34, 0x30, 0x2A, 0x02, 0x30, 0x0A, 0x01, 0x30, 0x2A, 0x01, 0x30, 0x2B, 0x80, 0x28, 0x2A, 0x03, 0x30, 0x2A, 0x81, 0x28, 0x2A, 0x30, 0x2B, 0x03, 0x30, 0x2A, 0x03, 0x30, 0x2B, 0x80, 0x30, 0x0A, 0x05, 0x30, 0x2A, 0x0B, 0x30, 0x2B, 0x83, 0x30, 0x2A, 0x30, 0x2B, 0x30, 0x2A, 0x30, 0x2B, 0x03, 0x30, 0x2A, 0x01, 0x30, 0x2B, 0x80, 0x30, 0x2A, 0x05, 0x30, 0x2B, 0x80, 0x30, 0x2A, 0x04, 0x30, 0x2B, 0x02, 0x30, 0x4B, 0x04, 0x30, 0x2B, 0x04, 0x38, 0x4B, 0x03, 0x38, 0x4C, 0x01, 0x38, 0x6C, 0x80, 0x40, 0x4C, 0x05, 0x40, 0x6C, 0x83, 0x48, 0x6D, 0x48, 0x6C, 0x48, 0x4C, 0x50, 0x6D, 0x01, 0x50, 0x4D, 0x83, 0x58, 0x4D, 0x58, 0x6E, 0x58, 0x4D, 0x58, 0x2D, 0x01, 0x58, 0x0C, 0x80, 0x60, 0x0C, 0x01, 0x60, 0x0B, 0x89, 0x68, 0x0C, 0x70, 0x0C, 0x78, 0x4D, 0x78, 0x6E, 0x80, 0x8E, 0x88, 0xAF, 0x90, 0xF0, 0x91, 0x10, 0x99, 0x31, 0xA1, 0x51, 0x01, 0xA1, 0x52, 0x81, 0xA9, 0x72, 0xA9, 0x92, 0x01, 0xB1, 0xB3, 0x01, 0xB9, 0xD3, 0x81, 0xB9, 0xF3, 0xB9, 0xF4, 0x02, 0xC1, 0xF4, 0x01, 0xC2, 0x14, 0x04, 0xC1, 0xF4, 0x80, 0xC9, 0xF4, 0x03, 0xC1, 0xF4, 0x03, 0xC1, 0xD4, 0x01, 0xB9, 0xD4, 0x03, 0xC1, 0xD4, 0x06, 0xB9, 0xD4, 0x80, 0xC1, 0xD4, 0x02, 0xB9, 0xD4, 0x03, 0xC1, 0xD4, 0x80, 0xB9, 0xD4, 0x03, 0xC1, 0xD4, 0x82, 0xC1, 0xB4, 0xB9, 0xD4, 0xB9, 0xD3, 0x01, 0xB9, 0xB3, 0x82, 0xB9, 0xD3, 0xB9, 0xD4, 0xC1, 0xF4, 0x01, 0xB9, 0xD4, 0x80, 0xB9, 0xF4, 0x02, 0xB9, 0xD4, 0x02, 0xB9, 0xF4, 0x80, 0xBA, 0x15, 0x01, 0xBA, + 0x35, 0x81, 0xB2, 0x55, 0xB2, 0x76, 0x01, 0xB2, 0x56, 0x80, 0xB2, 0x76, 0x02, 0xB2, 0x56, 0x80, 0xB2, 0x35, 0x01, 0xB2, 0x15, 0x8D, 0xB2, 0x14, 0xB1, 0xF4, 0xA9, 0xF5, 0xAA, 0x15, 0xAA, 0x37, 0x9A, 0x58, 0x82, 0x59, 0x51, 0xD9, 0x3A, 0x1B, 0x2A, 0x3D, 0x1A, 0x5E, 0x12, 0x7E, 0x0A, 0x9F, 0x0A, 0xBF, 0x01, 0x02, 0xDF, 0x01, 0x02, 0xFF, 0x07, 0x03, 0x1F, 0x01, 0x03, 0x3F, 0x92, 0x03, 0x3E, 0x03, 0x1E, 0x02, 0xFD, 0x03, 0x3B, 0x04, 0x1B, 0x2D, 0xDD, 0x36, 0xB8, 0x2E, 0x53, 0x3E, 0x33, 0x5D, 0xF3, 0x85, 0x55, 0x63, 0x10, 0x7A, 0xB2, 0x82, 0x53, 0x8A, 0x54, 0x82, 0x14, 0x71, 0xB3, 0x69, 0xB3, 0x61, 0x93, 0x01, 0x59, 0x93, 0x82, 0x59, 0xB3, 0x51, 0x92, 0x51, 0xB2, 0x01, 0x49, 0x92, 0x82, 0x49, 0x71, 0x41, 0x71, 0x49, 0x91, 0x01, 0x41, 0x71, 0x01, 0x41, 0x50, 0x80, 0x39, 0x50, 0x02, 0x39, 0x30, 0x81, 0x31, 0x2F, 0x39, 0x4F, 0x05, 0x31, 0x2F, 0x01, 0x29, 0x0E, 0x05, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x0C, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x82, 0x29, 0x2F, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x80, 0x21, 0x2E, 0x01, 0x21, 0x0F, 0x83, 0x19, 0x10, 0x19, 0x51, 0x19, 0x73, 0x19, 0xB4, 0x01, 0x21, 0xF6, 0x84, 0x19, 0x94, 0x11, 0x32, + 0x11, 0x11, 0x19, 0x10, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2F, 0x86, 0x21, 0x30, 0x19, 0x10, 0x19, 0x31, 0x19, 0x52, 0x19, 0x94, 0x21, 0xB5, 0x21, 0xD6, 0x01, 0x21, 0xF6, 0x87, 0x19, 0xD5, 0x19, 0x93, 0x19, 0x73, 0x19, 0x93, 0x19, 0x73, 0x19, 0x93, 0x19, 0x73, 0x21, 0x93, 0x02, 0x19, 0x72, 0x02, 0x21, 0x72, 0x80, 0x19, 0x72, 0x01, 0x21, 0x72, 0x82, 0x21, 0x73, 0x19, 0x72, 0x21, 0x73, 0x07, 0x21, 0x72, 0x06, 0x19, 0x72, 0x01, 0x19, 0x73, 0x01, 0x19, 0x72, 0x88, 0x21, 0x73, 0x19, 0x72, 0x21, 0x72, 0x19, 0x72, 0x21, 0x73, 0x21, 0x72, 0x21, 0x73, 0x19, 0x72, 0x21, 0x72, 0x03, 0x19, 0x72, 0x80, 0x21, 0x93, 0x01, 0x19, 0x72, 0x81, 0x21, 0x93, 0x21, 0xB3, 0x01, 0x21, 0xB4, 0x85, 0x19, 0x94, 0x11, 0x74, 0x11, 0x95, 0x11, 0xD6, 0x11, 0xB5, 0x09, 0x54, 0x01, 0x09, 0x32, 0x80, 0x11, 0x73, 0x02, 0x09, 0x52, 0x89, 0x09, 0x53, 0x11, 0x53, 0x11, 0x94, 0x11, 0x95, 0x19, 0xD5, 0x19, 0x73, 0x19, 0x31, 0x19, 0x30, 0x21, 0x0F, 0x21, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x87, 0x29, 0x2E, 0x29, 0x2F, 0x29, 0x0E, 0x21, 0x2E, 0x19, 0x0E, 0x19, 0x2E, 0x11, 0x2E, 0x11, 0x0D, 0x01, 0x08, 0xED, 0x81, 0x08, 0xCC, 0x09, 0x0D, 0x04, 0x08, 0xED, 0x86, 0x11, 0x2E, 0x11, 0x0E, 0x08, 0xCD, 0x10, 0xED, 0x11, 0x0E, 0x19, 0x0E, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x86, 0x21, 0x0E, 0x21, 0x2E, 0x19, 0x0E, 0x19, 0x2E, + 0x11, 0x0E, 0x11, 0x4E, 0x11, 0x2E, 0x01, 0x09, 0x0D, 0x81, 0x09, 0x2D, 0x09, 0x0E, 0x01, 0x11, 0x2E, 0x80, 0x11, 0x0E, 0x01, 0x19, 0x0E, 0x80, 0x19, 0x2E, 0x04, 0x11, 0x2E, 0x82, 0x09, 0x0E, 0x11, 0x2E, 0x08, 0xED, 0x01, 0x09, 0x0E, 0x87, 0x08, 0xEE, 0x08, 0xCE, 0x10, 0xEE, 0x19, 0x0E, 0x19, 0x2E, 0x11, 0x0E, 0x10, 0xED, 0x08, 0xED, 0x01, 0x11, 0x0E, 0x82, 0x09, 0x0E, 0x08, 0xED, 0x11, 0x2F, 0x01, 0x11, 0x2E, 0x80, 0x09, 0x0E, 0x02, 0x09, 0x0D, 0x80, 0x08, 0xED, 0x01, 0x09, 0x0E, 0x81, 0x29, 0x0E, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x80, 0x28, 0xED, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x8E, 0x29, 0x2E, 0x21, 0x0E, 0x21, 0x2E, 0x21, 0x0E, 0x21, 0x2E, 0x29, 0x2E, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x2E, 0x21, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x83, 0x21, 0x0E, 0x21, 0x2E, 0x21, 0x0E, 0x21, 0x2E, 0x03, 0x21, 0x0E, 0x83, 0x21, 0x2E, 0x29, 0x2E, 0x21, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x81, 0x21, 0x0E, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x80, 0x29, 0x0E, 0x02, 0x21, 0x0E, 0x81, 0x29, 0x0E, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x21, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x21, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x82, 0x29, 0x2E, 0x21, 0x0E, 0x29, 0x2E, 0x02, 0x21, 0x0E, 0x84, 0x29, 0x2E, 0x21, 0x0E, 0x29, 0x2E, + 0x21, 0x0E, 0x21, 0x2E, 0x08, 0x21, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x21, 0x0E, 0x29, 0x0E, 0x02, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x21, 0x0E, 0x06, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x07, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x83, 0x21, 0x0E, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x83, 0x29, 0x0E, 0x29, 0x2E, 0x21, 0x0E, 0x29, 0x0E, 0x02, 0x21, 0x0E, 0x81, 0x29, 0x2E, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x06, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x06, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x05, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x0F, 0x29, 0x2E, 0x08, 0x29, 0x0E, 0x08, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0E, + 0x01, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x01, 0x30, 0xED, 0x04, 0x30, 0xCD, 0x06, 0x30, 0xAD, 0x01, 0x30, 0xAC, 0x0D, 0x30, 0xAD, 0x80, 0x30, 0xAC, 0x01, 0x30, 0xAD, 0x02, 0x30, 0xAC, 0x08, 0x30, 0xAD, 0x01, 0x30, 0xCD, 0x01, 0x30, 0xAD, 0x80, 0x30, 0xAC, 0x02, 0x30, 0xAD, 0x01, 0x30, 0xCD, 0x05, 0x30, 0xAD, 0x01, 0x30, 0xCD, 0x05, 0x30, 0xAD, 0x15, 0x30, 0xAC, 0x01, 0x30, 0xAD, 0x01, 0x30, 0xAC, 0x01, 0x30, 0xAD, 0x01, 0x30, 0xAC, 0x01, 0x30, 0xAD, 0x01, 0x30, 0xAC, 0x80, 0x30, 0xAD, 0x02, 0x30, 0xAC, 0x01, 0x30, 0xAD, 0x01, 0x30, 0xAC, 0x01, 0x30, 0xAD, 0x01, 0x30, 0xCD, 0x0A, 0x30, 0xAD, 0x80, 0x30, 0xAC, 0x0A, 0x30, 0xAD, 0x80, 0x30, 0xAC, 0x18, 0x30, 0xAD, 0x01, 0x30, 0xAC, 0x21, 0x30, 0xAD, 0x80, 0x30, 0xAC, 0x04, 0x30, 0xAD, 0x80, 0x30, 0xAC, 0x0A, 0x30, 0xAD, 0x80, 0x30, 0xCD, 0x05, 0x30, 0xAD, 0x80, 0x30, 0xCD, 0x01, 0x30, 0xAD, 0x01, 0x30, 0xCD, 0x80, 0x30, 0xAD, 0x03, 0x30, 0xCD, 0x85, 0x30, 0xAD, 0x38, 0xAD, 0x38, 0xCE, 0x38, 0xCD, 0x38, 0xCE, 0x38, 0xCD, 0x06, 0x38, 0xCE, 0x07, 0x40, 0xCE, 0x87, 0x48, 0xCE, 0x48, 0xAE, 0x48, 0xCE, 0x50, 0xAE, 0x50, 0x8E, 0x58, 0x6E, 0x58, 0x4D, 0x58, 0x0D, 0x01, 0x58, 0x0C, 0x83, 0x60, 0x0C, 0x80, 0xF0, 0x99, 0x92, 0xA1, 0xD3, 0x01, 0xB2, 0x14, 0x01, 0xB1, 0xF4, 0x82, 0xB1, 0xD4, 0xB1, 0xD3, 0xB1, 0xD4, 0x02, 0xB1, 0xD3, 0x03, 0xB9, 0xF4, 0x82, 0xC1, 0xF4, 0xB9, 0xF4, 0xC1, 0xF4, 0x01, 0xC2, 0x14, 0x81, 0xC1, 0xF4, 0xC2, 0x14, 0x04, 0xCA, 0x14, 0x02, 0xCA, 0x15, 0x83, 0xCA, + 0x14, 0xC9, 0xF4, 0xC9, 0xF5, 0xC9, 0xF4, 0x01, 0xC9, 0xF5, 0x02, 0xC1, 0xF4, 0x81, 0xC1, 0xD4, 0xC1, 0xF4, 0x0D, 0xC1, 0xD4, 0x80, 0xC1, 0xB4, 0x08, 0xC1, 0xD4, 0x80, 0xC1, 0xB3, 0x0C, 0xC1, 0xD4, 0x02, 0xC1, 0xF4, 0x80, 0xB9, 0xF5, 0x01, 0xBA, 0x15, 0x02, 0xBA, 0x14, 0x85, 0xBA, 0x35, 0xB2, 0x34, 0xBA, 0x35, 0xB2, 0x14, 0xBA, 0x35, 0xB2, 0x14, 0x01, 0xBA, 0x14, 0x80, 0xB2, 0x14, 0x03, 0xB1, 0xF4, 0x8A, 0xAA, 0x15, 0xA2, 0x36, 0x9A, 0x78, 0x7A, 0x59, 0x51, 0xD9, 0x3A, 0x5C, 0x2A, 0x7D, 0x1A, 0x9E, 0x12, 0xBE, 0x0A, 0xDF, 0x0A, 0xFF, 0x01, 0x02, 0xFF, 0x02, 0x03, 0x1F, 0x06, 0x03, 0x3F, 0x01, 0x03, 0x5F, 0x01, 0x03, 0x3E, 0x91, 0x03, 0x1D, 0x03, 0x3C, 0x03, 0xBB, 0x25, 0x5C, 0x46, 0xFB, 0x36, 0x95, 0x3D, 0xF3, 0x5D, 0xD4, 0x7C, 0xD4, 0x6A, 0xEF, 0x7A, 0x91, 0x82, 0x52, 0x8A, 0x54, 0x82, 0x14, 0x71, 0xB3, 0x69, 0x93, 0x61, 0x93, 0x61, 0xB3, 0x01, 0x59, 0xB3, 0x81, 0x51, 0xB3, 0x51, 0xB2, 0x01, 0x49, 0x92, 0x80, 0x49, 0x91, 0x03, 0x41, 0x71, 0x80, 0x41, 0x70, 0x04, 0x39, 0x50, 0x81, 0x31, 0x2F, 0x31, 0x4F, 0x04, 0x31, 0x2F, 0x81, 0x29, 0x0E, 0x31, 0x2E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x0B, 0x29, 0x2E, 0x09, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x06, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x81, + 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x90, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x31, 0x19, 0x52, 0x19, 0x73, 0x19, 0xD5, 0x22, 0x16, 0x19, 0xD5, 0x19, 0x74, 0x11, 0x32, 0x19, 0x31, 0x18, 0xEF, 0x21, 0x0F, 0x29, 0x2F, 0x29, 0x0E, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x84, 0x19, 0x31, 0x19, 0x52, 0x21, 0x94, 0x19, 0xB4, 0x21, 0xF5, 0x01, 0x2A, 0x16, 0x01, 0x2A, 0x36, 0x81, 0x2A, 0x16, 0x29, 0xF5, 0x02, 0x32, 0x15, 0x8A, 0x2A, 0x15, 0x32, 0x15, 0x2A, 0x15, 0x32, 0x15, 0x29, 0xF5, 0x29, 0xF4, 0x29, 0xF5, 0x31, 0xF5, 0x29, 0xF5, 0x32, 0x15, 0x2A, 0x15, 0x01, 0x31, 0xF5, 0x01, 0x32, 0x15, 0x80, 0x31, 0xF5, 0x0D, 0x32, 0x15, 0x80, 0x2A, 0x15, 0x03, 0x32, 0x15, 0x84, 0x31, 0xF5, 0x29, 0xF5, 0x2A, 0x15, 0x29, 0xF5, 0x2A, 0x15, 0x01, 0x29, 0xF5, 0x83, 0x29, 0xD4, 0x29, 0xF5, 0x29, 0xD4, 0x21, 0xD4, 0x01, 0x21, 0xB3, 0x01, 0x21, 0xB4, 0x8A, 0x19, 0xB4, 0x21, 0xD5, 0x19, 0xB5, 0x11, 0xB5, 0x11, 0xD6, 0x11, 0xB5, 0x09, 0x54, 0x09, 0x33, 0x09, 0x32, 0x09, 0x52, 0x11, 0x52, 0x01, 0x11, 0x53, 0x89, 0x09, 0x53, 0x11, 0x53, 0x11, 0x95, 0x19, 0xD5, 0x19, 0xB5, 0x19, 0x73, 0x19, 0x51, 0x19, 0x10, 0x21, 0x2F, 0x21, 0x0E, 0x01, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x83, 0x29, 0x2E, 0x21, 0x0E, 0x19, 0x2F, 0x11, 0x2E, 0x01, 0x00, 0xED, 0x80, 0x00, 0xEC, 0x01, 0x00, 0xED, 0x80, 0x01, 0x0D, 0x01, 0x01, + 0x2D, 0x01, 0x01, 0x2E, 0x80, 0x01, 0x4E, 0x01, 0x01, 0x2E, 0x8D, 0x01, 0x0E, 0x00, 0xED, 0x00, 0xCD, 0x00, 0xED, 0x09, 0x2E, 0x11, 0x0E, 0x19, 0x0E, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x2E, 0x19, 0x0E, 0x00, 0xAC, 0x00, 0xED, 0x01, 0x2E, 0x02, 0x01, 0x2D, 0x01, 0x01, 0x4E, 0x84, 0x01, 0x2E, 0x01, 0x0D, 0x00, 0xCD, 0x09, 0x0E, 0x19, 0x6F, 0x01, 0x19, 0x90, 0x82, 0x11, 0x90, 0x00, 0xED, 0x01, 0x0D, 0x01, 0x01, 0x0E, 0x84, 0x01, 0x2E, 0x01, 0x0E, 0x01, 0x4F, 0x01, 0x2E, 0x01, 0x0E, 0x01, 0x00, 0xCD, 0x86, 0x11, 0x2E, 0x19, 0x90, 0x09, 0x2E, 0x00, 0xCC, 0x00, 0xED, 0x01, 0x0D, 0x01, 0x2E, 0x03, 0x01, 0x0E, 0x82, 0x01, 0x4E, 0x01, 0x2E, 0x01, 0x4E, 0x01, 0x01, 0x2D, 0x01, 0x01, 0x4E, 0x80, 0x01, 0x4F, 0x04, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x06, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x21, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x04, 0x29, 0x2E, 0x81, 0x21, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x06, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x21, 0x2E, 0x81, 0x21, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x21, 0x0E, 0x29, 0x2E, 0x02, 0x21, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x86, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x83, 0x29, 0x2E, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x89, 0x29, 0x2E, 0x29, + 0x0E, 0x29, 0x2E, 0x21, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x21, 0x0E, 0x29, 0x0E, 0x21, 0x0E, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x88, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x08, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x2F, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x21, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x21, 0x0E, 0x09, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x06, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x11, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x83, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x06, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x05, 0x29, 0x2E, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x09, 0x29, 0x2E, 0x0A, 0x29, 0x0E, 0x06, 0x29, 0x2E, 0x80, 0x29, + 0x2D, 0x05, 0x29, 0x2E, 0x80, 0x31, 0x2E, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x31, 0x0E, 0x08, 0x30, 0xED, 0x1E, 0x30, 0xCD, 0x84, 0x30, 0xED, 0x30, 0xCD, 0x30, 0xED, 0x30, 0xCD, 0x30, 0xED, 0x02, 0x30, 0xCD, 0x07, 0x30, 0xED, 0x24, 0x30, 0xCD, 0x80, 0x30, 0xED, 0x09, 0x30, 0xCD, 0x80, 0x30, 0xED, 0x06, 0x30, 0xCD, 0x03, 0x30, 0xED, 0x09, 0x30, 0xCD, 0x80, 0x30, 0xED, 0x10, 0x30, 0xCD, 0x80, 0x30, 0xED, 0x14, 0x30, 0xCD, 0x80, 0x30, 0xED, 0x11, 0x30, 0xCD, 0x01, 0x30, 0xED, 0x14, 0x30, 0xCD, 0x80, 0x30, 0xED, 0x08, 0x30, 0xCD, 0x80, 0x30, 0xED, 0x03, 0x30, 0xCD, 0x81, 0x30, 0xED, 0x30, 0xCD, 0x06, 0x30, 0xED, 0x0C, 0x38, 0xEE, 0x01, 0x40, 0xEF, 0x81, 0x41, 0x0F, 0x40, 0xEF, 0x01, 0x40, 0xEE, 0x01, 0x48, 0xEF, 0x01, 0x48, 0xCE, 0x8A, 0x50, 0xCE, 0x50, 0xAE, 0x58, 0x8E, 0x60, 0x6D, 0x70, 0xAE, 0x91, 0x92, 0xBA, 0x95, 0xDB, 0x59, 0xD3, 0x38, 0xD3, 0x17, 0xD2, 0xF7, 0x01, 0xD2, 0xD6, 0x03, 0xD2, 0xB6, 0x80, 0xD2, 0x96, 0x01, 0xCA, 0x96, 0x83, 0xD2, 0x96, 0xCA, 0x76, 0xCA, 0x75, 0xD2, 0x75, 0x02, 0xD2, 0x55, 0x80, 0xD2, 0x35, 0x09, 0xCA, 0x14, 0x04, 0xC9, 0xF4, 0x80, 0xC9, 0xF5, 0x05, 0xC9, 0xF4, 0x0B, 0xC1, 0xD4, 0x80, 0xC1, 0xB4, 0x06, 0xC1, 0xD4, 0x81, 0xB9, 0xB3, 0xC1, 0xB4, 0x03, 0xC1, 0xD4, 0x80, 0xC1, 0xD3, 0x07, 0xC1, 0xD4, 0x81, 0xC1, 0xB3, 0xB9, 0xB3, 0x03, 0xB9, 0xD4, 0x81, 0xC1, 0xD4, 0xB9, 0xD4, 0x05, 0xB9, 0xF4, 0x01, 0xBA, 0x14, 0x81, 0xB2, 0x14, 0xBA, 0x14, 0x01, 0xB2, 0x14, 0x01, 0xB9, 0xF4, 0x80, + 0xB1, 0xF4, 0x01, 0xB9, 0xF4, 0x01, 0xB1, 0xF4, 0x8A, 0xAA, 0x15, 0xA2, 0x57, 0x92, 0x79, 0x72, 0x39, 0x4A, 0x1A, 0x3A, 0x7C, 0x2A, 0xBE, 0x1A, 0xBE, 0x12, 0xDF, 0x0A, 0xFF, 0x0B, 0x1F, 0x01, 0x03, 0x1F, 0x03, 0x03, 0x3F, 0x05, 0x03, 0x5F, 0x80, 0x03, 0x7F, 0x01, 0x03, 0x5F, 0x92, 0x03, 0x3E, 0x03, 0x3D, 0x03, 0x3C, 0x03, 0x7B, 0x14, 0xBB, 0x4F, 0x3C, 0x3E, 0xD6, 0x3D, 0xD3, 0x65, 0xB4, 0x7C, 0xB4, 0x6A, 0xAF, 0x82, 0x91, 0x8A, 0x52, 0x92, 0x54, 0x92, 0x55, 0x79, 0xB3, 0x69, 0x93, 0x61, 0x72, 0x59, 0x93, 0x02, 0x59, 0xB3, 0x80, 0x51, 0xB2, 0x01, 0x49, 0x92, 0x80, 0x49, 0x71, 0x01, 0x49, 0x91, 0x01, 0x41, 0x71, 0x01, 0x41, 0x70, 0x84, 0x39, 0x50, 0x39, 0x70, 0x39, 0x50, 0x39, 0x4F, 0x39, 0x2F, 0x05, 0x31, 0x2F, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x90, 0x29, 0x0E, 0x29, 0x2E, 0x21, 0x2E, 0x21, 0x2F, 0x21, 0x30, 0x19, 0x30, 0x19, 0x51, 0x19, 0x52, 0x19, 0x94, 0x19, 0xD5, 0x21, 0xF6, 0x21, 0xD5, 0x19, 0x73, 0x19, 0x11, 0x19, 0x10, 0x18, 0xEF, 0x21, 0x0F, 0x02, 0x29, 0x2F, 0x86, 0x29, 0x0E, 0x21, 0x0E, 0x29, + 0x2E, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x2E, 0x21, 0x0E, 0x03, 0x29, 0x2E, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x87, 0x19, 0x10, 0x19, 0x11, 0x19, 0x31, 0x19, 0x52, 0x19, 0x73, 0x19, 0x93, 0x21, 0x94, 0x21, 0xD4, 0x03, 0x29, 0xD5, 0x01, 0x29, 0xD4, 0x03, 0x29, 0xF4, 0x80, 0x29, 0xD4, 0x02, 0x29, 0xF4, 0x81, 0x29, 0xD4, 0x29, 0xF4, 0x01, 0x29, 0xF5, 0x02, 0x29, 0xF4, 0x80, 0x29, 0xF5, 0x06, 0x29, 0xF4, 0x83, 0x29, 0xF5, 0x29, 0xD5, 0x29, 0xF4, 0x29, 0xD4, 0x02, 0x29, 0xF5, 0x81, 0x29, 0xD4, 0x29, 0xF4, 0x01, 0x29, 0xD4, 0x82, 0x29, 0xF4, 0x29, 0xF5, 0x21, 0xB4, 0x01, 0x29, 0xD4, 0x81, 0x21, 0xB4, 0x29, 0xD4, 0x01, 0x21, 0xD4, 0x80, 0x29, 0xF5, 0x01, 0x29, 0xD4, 0x83, 0x21, 0xB4, 0x29, 0xD4, 0x29, 0xF4, 0x21, 0xF5, 0x01, 0x21, 0xD5, 0x81, 0x11, 0xB5, 0x11, 0xD6, 0x01, 0x11, 0xF6, 0x84, 0x11, 0x95, 0x09, 0x53, 0x09, 0x12, 0x09, 0x32, 0x09, 0x52, 0x01, 0x09, 0x32, 0x8A, 0x11, 0x53, 0x11, 0x94, 0x11, 0xB5, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x52, 0x19, 0x51, 0x21, 0x30, 0x21, 0x2F, 0x29, 0x2E, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x01, 0x21, 0x0E, 0x8A, 0x19, 0x0E, 0x11, 0x2F, 0x09, 0x2E, 0x4B, 0xB8, 0x54, 0x7A, 0x4C, 0x7A, 0x44, 0x7A, 0x44, 0x9B, 0x44, 0xBB, 0x4C, 0xFC, 0x44, 0xDB, 0x02, 0x4D, 0x1C, 0x81, 0x4C, 0xFC, 0x4C, 0xDC, 0x01, 0x44, 0x9B, 0x84, 0x44, 0x7B, 0x4C, 0x7B, 0x43, 0xD8, 0x01, 0x0E, 0x11, 0x0E, 0x01, 0x21, 0x4F, 0x93, 0x21, 0x6F, 0x21, 0x8F, 0x2A, 0x52, 0x54, 0x18, 0x4C, 0x59, 0x44, 0x7A, 0x3C, 0x59, 0x34, 0x59, 0x3C, + 0x9A, 0x34, 0x5A, 0x34, 0x19, 0x2B, 0xB7, 0x22, 0xF5, 0x01, 0x6F, 0x09, 0x4F, 0x09, 0x2F, 0x09, 0x6F, 0x01, 0x4E, 0x22, 0xF5, 0x33, 0xF8, 0x01, 0x3C, 0x39, 0x01, 0x3C, 0x5A, 0x8B, 0x44, 0x7A, 0x44, 0x5A, 0x44, 0x19, 0x64, 0xDC, 0x5C, 0x3A, 0x01, 0x2E, 0x09, 0x2E, 0x01, 0x0D, 0x4C, 0x19, 0x4C, 0x9A, 0x44, 0x7A, 0x3C, 0x7A, 0x02, 0x3C, 0x5A, 0x80, 0x3C, 0x3A, 0x02, 0x44, 0x9B, 0x01, 0x3C, 0x7A, 0x82, 0x34, 0x59, 0x34, 0x39, 0x2C, 0x19, 0x02, 0x29, 0x0E, 0x84, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x12, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x13, 0x29, 0x0E, 0x81, 0x21, 0x0D, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x21, 0x0D, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x83, 0x29, 0x2E, 0x21, 0x0D, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x0E, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x06, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x80, 0x21, 0x0D, 0x08, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, + 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x06, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x07, 0x29, 0x2E, 0x0D, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x2D, 0x04, 0x29, 0x2E, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x03, 0x31, 0x0E, 0x02, 0x31, 0x0D, 0x15, 0x30, 0xED, 0x80, 0x28, 0xED, 0x0A, 0x30, 0xED, 0x80, 0x28, 0xED, 0x67, 0x30, 0xED, 0x02, 0x28, 0xED, 0x49, 0x30, 0xED, 0x80, 0x30, 0xEE, 0x01, 0x30, 0xED, 0x02, 0x30, 0xEE, 0x87, 0x30, 0xED, 0x30, 0xEE, 0x31, 0x0E, 0x30, 0xED, 0x31, 0x0E, 0x30, 0xEE, 0x38, 0xEE, 0x30, 0xEE, 0x02, 0x39, 0x0E, 0x06, 0x39, 0x0F, 0x04, 0x41, 0x0F, 0x01, 0x49, 0x0F, 0x01, 0x48, 0xEF, 0x84, 0x50, 0xEF, 0x58, 0xCF, 0x58, 0xAE, 0x71, 0x0F, 0xB2, 0xB6, 0x01, 0xCB, 0x17, 0x81, 0xD2, 0xF7, + 0xD2, 0xF6, 0x01, 0xD2, 0xD6, 0x03, 0xD2, 0xB5, 0x03, 0xD2, 0x95, 0x03, 0xD2, 0x75, 0x03, 0xD2, 0x55, 0x01, 0xD2, 0x35, 0x80, 0xD2, 0x55, 0x01, 0xD2, 0x35, 0x03, 0xD2, 0x14, 0x01, 0xCA, 0x14, 0x01, 0xC9, 0xF4, 0x80, 0xCA, 0x14, 0x03, 0xC9, 0xF4, 0x80, 0xC9, 0xF5, 0x06, 0xC9, 0xF4, 0x08, 0xC1, 0xD4, 0x80, 0xC1, 0xD5, 0x1B, 0xC1, 0xD4, 0x81, 0xB9, 0xD4, 0xC1, 0xD4, 0x04, 0xB9, 0xD4, 0x03, 0xB9, 0xF4, 0x01, 0xB1, 0xF4, 0x80, 0xB9, 0xF4, 0x01, 0xB1, 0xF4, 0x8E, 0xB9, 0xF4, 0xB1, 0xD4, 0xB9, 0xD4, 0xB9, 0xF4, 0xB1, 0xF4, 0xA9, 0xF4, 0xAA, 0x15, 0xA2, 0x57, 0x92, 0x99, 0x6A, 0x39, 0x4A, 0x1A, 0x3A, 0xBD, 0x2A, 0xFE, 0x1A, 0xFE, 0x13, 0x1F, 0x01, 0x0B, 0x3F, 0x81, 0x03, 0x5F, 0x03, 0x3F, 0x04, 0x03, 0x5F, 0x81, 0x03, 0x7F, 0x03, 0x5F, 0x04, 0x03, 0x7F, 0x92, 0x03, 0x5F, 0x03, 0x5E, 0x03, 0x3D, 0x03, 0x3C, 0x03, 0x5C, 0x0C, 0x3A, 0x4F, 0x1D, 0x46, 0xD7, 0x3D, 0xB3, 0x65, 0x95, 0x74, 0x53, 0x6A, 0x8F, 0x7A, 0x51, 0x8A, 0x53, 0x92, 0x54, 0x92, 0x34, 0x79, 0xB3, 0x71, 0x93, 0x61, 0x93, 0x01, 0x61, 0xB3, 0x82, 0x59, 0xB3, 0x51, 0xB2, 0x51, 0x92, 0x01, 0x49, 0x92, 0x01, 0x49, 0x71, 0x80, 0x41, 0x71, 0x02, 0x41, 0x70, 0x03, 0x39, 0x50, 0x83, 0x39, 0x4F, 0x39, 0x50, 0x31, 0x2F, 0x31, 0x4F, 0x02, 0x31, 0x2F, 0x03, 0x31, 0x2E, 0x85, 0x29, 0x0E, 0x31, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x06, 0x29, 0x0E, 0x05, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, + 0x2E, 0x05, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x06, 0x29, 0x0E, 0x83, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x85, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x2E, 0x21, 0x2E, 0x01, 0x21, 0x2F, 0x84, 0x19, 0x30, 0x19, 0x31, 0x19, 0x52, 0x19, 0x73, 0x19, 0x94, 0x01, 0x21, 0xF6, 0x85, 0x21, 0xB5, 0x19, 0x73, 0x19, 0x11, 0x18, 0xF0, 0x20, 0xEF, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x03, 0x21, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x21, 0x0E, 0x80, 0x21, 0x2E, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x10, 0x02, 0x19, 0x10, 0x01, 0x19, 0x31, 0x80, 0x19, 0x32, 0x02, 0x19, 0x52, 0x82, 0x21, 0x52, 0x21, 0x73, 0x21, 0x72, 0x03, 0x21, 0x73, 0x80, 0x21, 0x93, 0x01, 0x21, 0x73, 0x02, 0x21, 0x93, 0x82, 0x19, 0x72, 0x21, 0x73, 0x21, 0x93, 0x01, 0x19, 0x72, 0x80, 0x21, 0x93, 0x06, 0x21, 0x72, 0x01, 0x21, 0x73, 0x01, 0x21, 0x72, 0x01, 0x21, 0x73, 0x05, 0x21, 0x72, 0x01, 0x21, 0x73, 0x81, 0x19, 0x52, 0x21, 0x73, 0x01, 0x19, 0x73, 0x01, 0x19, 0x72, 0x80, 0x19, 0x73, 0x01, 0x21, 0x93, 0x81, 0x19, 0x72, 0x21, 0x93, 0x01, 0x19, 0x93, 0x84, 0x19, 0x73, 0x19, 0x74, 0x11, 0x74, 0x11, 0xB5, 0x19, 0xF6, 0x01, 0x11, 0xD6, 0x81, 0x11, 0x94, 0x09, 0x53, 0x03, 0x09, 0x32, 0x81, 0x09, 0x53, 0x11, 0xB5, 0x01, 0x19, 0xD5, 0x84, 0x19, 0x94, 0x11, 0x52, 0x19, 0x31, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x21, 0x0E, 0x88, 0x19, + 0x2E, 0x09, 0x2F, 0x01, 0x4F, 0x4C, 0x3A, 0x44, 0x7A, 0x2C, 0x18, 0x24, 0x18, 0x1C, 0x18, 0x13, 0xF8, 0x01, 0x14, 0x18, 0x82, 0x14, 0x38, 0x14, 0x18, 0x1C, 0x19, 0x01, 0x13, 0xF8, 0x85, 0x1C, 0x19, 0x24, 0x39, 0x2C, 0x5A, 0x34, 0x5A, 0x3C, 0x19, 0x01, 0x2E, 0x03, 0x11, 0x0E, 0x8C, 0x11, 0x2E, 0x4B, 0x96, 0x5C, 0x9A, 0x3C, 0x38, 0x2C, 0x18, 0x24, 0x39, 0x1C, 0x39, 0x1C, 0x59, 0x1C, 0x39, 0x24, 0x39, 0x2C, 0x39, 0x33, 0xF9, 0x01, 0xF1, 0x02, 0x01, 0x2E, 0x84, 0x02, 0x11, 0x3C, 0x5A, 0x2C, 0x39, 0x24, 0x19, 0x1B, 0xF8, 0x02, 0x24, 0x19, 0x88, 0x23, 0xF8, 0x34, 0x39, 0x54, 0xBB, 0x33, 0x35, 0x01, 0x0D, 0x00, 0xED, 0x01, 0x4E, 0x54, 0xFC, 0x34, 0x7A, 0x01, 0x24, 0x39, 0x01, 0x1C, 0x19, 0x01, 0x1B, 0xF8, 0x80, 0x1C, 0x19, 0x02, 0x1C, 0x39, 0x81, 0x1C, 0x59, 0x14, 0x18, 0x01, 0x1C, 0x38, 0x84, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x0D, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x21, 0x0D, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x09, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x80, 0x21, 0x0D, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x08, 0x29, 0x0E, 0x03, 0x29, 0x0D, 0x84, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x0D, + 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x85, 0x29, 0x0D, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x0D, 0x1A, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x06, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x0F, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x06, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x0D, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x0A, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x0A, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x0C, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x02, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x06, 0x29, 0x0D, 0x80, 0x31, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x31, 0x2E, 0x02, 0x31, 0x0E, 0x81, 0x31, 0x2E, 0x31, 0x0D, 0x01, 0x31, 0x0E, 0x81, 0x31, 0x0D, 0x31, 0x0E, 0x03, 0x31, 0x0D, 0x80, 0x30, 0xED, 0x08, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x04, 0x30, 0xED, 0x80, 0x31, 0x0D, 0x05, 0x30, 0xED, 0x01, 0x29, 0x0D, 0x01, 0x30, 0xED, 0x15, 0x31, 0x0D, 0x01, 0x30, 0xED, 0x80, 0x31, 0x0D, 0x08, 0x30, + 0xED, 0x07, 0x31, 0x0D, 0x12, 0x30, 0xED, 0x0C, 0x31, 0x0D, 0x01, 0x30, 0xED, 0x0A, 0x31, 0x0D, 0x07, 0x30, 0xED, 0x14, 0x31, 0x0D, 0x80, 0x30, 0xED, 0x05, 0x31, 0x0D, 0x80, 0x31, 0x0E, 0x01, 0x31, 0x0D, 0x81, 0x31, 0x0E, 0x30, 0xED, 0x0B, 0x31, 0x0D, 0x03, 0x30, 0xED, 0x01, 0x31, 0x0D, 0x01, 0x30, 0xED, 0x15, 0x31, 0x0D, 0x82, 0x30, 0xED, 0x31, 0x0D, 0x30, 0xED, 0x02, 0x31, 0x0E, 0x80, 0x30, 0xED, 0x01, 0x31, 0x0E, 0x80, 0x30, 0xEE, 0x05, 0x31, 0x0E, 0x04, 0x39, 0x0E, 0x03, 0x39, 0x0F, 0x03, 0x39, 0x2F, 0x80, 0x41, 0x2F, 0x01, 0x41, 0x0F, 0x01, 0x41, 0x2F, 0x02, 0x49, 0x0F, 0x84, 0x50, 0xEF, 0x58, 0xEE, 0x60, 0xCE, 0x89, 0xB1, 0xC3, 0x37, 0x01, 0xCA, 0xF6, 0x81, 0xD2, 0xF6, 0xCA, 0xB5, 0x01, 0xD2, 0xB5, 0x80, 0xD2, 0x95, 0x03, 0xD2, 0xB5, 0x03, 0xD2, 0x95, 0x01, 0xD2, 0x75, 0x01, 0xD2, 0x55, 0x81, 0xCA, 0x35, 0xD2, 0x55, 0x06, 0xD2, 0x35, 0x80, 0xD2, 0x34, 0x05, 0xD2, 0x14, 0x04, 0xC9, 0xF4, 0x80, 0xC9, 0xF5, 0x01, 0xC9, 0xF4, 0x03, 0xC9, 0xF5, 0x01, 0xC9, 0xD5, 0x01, 0xC9, 0xF5, 0x01, 0xC1, 0xF5, 0x80, 0xC1, 0xD4, 0x02, 0xC1, 0xD5, 0x01, 0xC1, 0xF5, 0x03, 0xC1, 0xD5, 0x05, 0xC1, 0xF5, 0x0E, 0xC1, 0xD4, 0x80, 0xC1, 0xF4, 0x02, 0xC1, 0xD4, 0x02, 0xB9, 0xD4, 0x02, 0xB9, 0xD3, 0x02, 0xB9, 0xD4, 0x01, 0xB9, 0xF4, 0x02, 0xB1, 0xD4, 0x81, 0xB9, 0xD4, 0xB1, 0xD4, 0x02, 0xB9, 0xF4, 0x8B, 0xB1, 0xF4, 0xA9, 0xF4, 0xA2, 0x35, 0x9A, 0x77, 0x8A, 0x99, 0x62, 0x19, 0x4A, 0x5B, 0x3A, 0xFD, 0x23, 0x1E, 0x1B, 0x3F, 0x0B, 0x3F, 0x0B, + 0x5F, 0x05, 0x03, 0x5F, 0x04, 0x03, 0x7F, 0x80, 0x03, 0x9F, 0x03, 0x03, 0x7F, 0x80, 0x03, 0x7E, 0x01, 0x03, 0x5D, 0x8D, 0x03, 0x5C, 0x0C, 0x3B, 0x46, 0xBD, 0x4E, 0xFA, 0x3D, 0xB5, 0x65, 0x75, 0x74, 0x13, 0x6A, 0x6F, 0x82, 0x71, 0x8A, 0x32, 0x9A, 0x54, 0x9A, 0x55, 0x81, 0xD3, 0x71, 0x73, 0x01, 0x61, 0x93, 0x81, 0x61, 0xB3, 0x59, 0xD3, 0x01, 0x51, 0xB2, 0x82, 0x49, 0x92, 0x49, 0x91, 0x49, 0x71, 0x01, 0x49, 0x91, 0x80, 0x41, 0x71, 0x02, 0x41, 0x70, 0x80, 0x39, 0x50, 0x03, 0x39, 0x4F, 0x03, 0x31, 0x2F, 0x81, 0x31, 0x2E, 0x31, 0x2F, 0x02, 0x31, 0x2E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x31, 0x2E, 0x0B, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x06, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x83, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x80, 0x19, 0x30, 0x01, 0x19, 0x51, 0x8B, 0x11, 0x52, 0x19, 0x94, 0x21, 0xF5, 0x22, 0x16, 0x21, 0xD5, 0x19, 0x73, 0x19, 0x11, 0x18, 0xF0, 0x21, 0x10, 0x21, 0x30, 0x29, 0x30, 0x29, 0x0F, 0x02, 0x21, 0x0E, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x21, 0x0E, 0x82, 0x29, 0x2E, 0x21, 0x2E, 0x21, 0x0E, 0x01, 0x21, + 0x2F, 0x80, 0x21, 0x0F, 0x02, 0x19, 0x10, 0x81, 0x18, 0xF0, 0x19, 0x10, 0x01, 0x19, 0x11, 0x80, 0x18, 0xF0, 0x02, 0x19, 0x11, 0x01, 0x19, 0x10, 0x80, 0x19, 0x11, 0x01, 0x19, 0x31, 0x02, 0x19, 0x11, 0x08, 0x19, 0x10, 0x80, 0x19, 0x30, 0x0A, 0x19, 0x10, 0x80, 0x19, 0x11, 0x06, 0x19, 0x10, 0x01, 0x11, 0x10, 0x80, 0x19, 0x11, 0x01, 0x10, 0xF0, 0x81, 0x11, 0x10, 0x11, 0x11, 0x01, 0x11, 0x10, 0x03, 0x11, 0x11, 0x87, 0x10, 0xF1, 0x09, 0x12, 0x11, 0x74, 0x11, 0xB5, 0x19, 0xD6, 0x19, 0xF6, 0x11, 0xD5, 0x11, 0x94, 0x03, 0x09, 0x53, 0x88, 0x11, 0x94, 0x21, 0xF6, 0x19, 0xD5, 0x19, 0xB5, 0x11, 0x73, 0x11, 0x31, 0x19, 0x51, 0x21, 0x50, 0x21, 0x2F, 0x02, 0x21, 0x0E, 0x02, 0x29, 0x2E, 0x8A, 0x21, 0x0E, 0x21, 0x2E, 0x19, 0x2E, 0x09, 0x2E, 0x01, 0x6F, 0x44, 0x5A, 0x34, 0x59, 0x24, 0x39, 0x1C, 0x39, 0x14, 0x19, 0x0C, 0x19, 0x01, 0x0C, 0x39, 0x03, 0x0C, 0x19, 0x02, 0x14, 0x19, 0x8D, 0x1C, 0x19, 0x2C, 0x5A, 0x3C, 0x19, 0x01, 0x6F, 0x09, 0x2E, 0x11, 0x2E, 0x11, 0x0E, 0x11, 0x0D, 0x00, 0xEC, 0x11, 0xAF, 0x4C, 0x38, 0x34, 0x38, 0x24, 0x39, 0x14, 0x18, 0x02, 0x14, 0x19, 0x88, 0x14, 0x39, 0x1C, 0x39, 0x24, 0x39, 0x0A, 0xD4, 0x01, 0xD0, 0x01, 0x6F, 0x01, 0xF1, 0x23, 0xD8, 0x24, 0x18, 0x02, 0x13, 0xF8, 0x8C, 0x1C, 0x19, 0x1B, 0xF9, 0x1B, 0xF8, 0x23, 0xF8, 0x34, 0x19, 0x33, 0xD8, 0x09, 0xD0, 0x01, 0x4E, 0x01, 0x0D, 0x01, 0x8F, 0x3C, 0x59, 0x24, 0x39, 0x24, 0x59, 0x02, 0x14, 0x19, 0x84, 0x1C, 0x39, 0x14, 0x18, 0x14, 0x39, 0x14, 0x59, 0x0C, 0x39, + 0x01, 0x0C, 0x38, 0x80, 0x0C, 0x58, 0x01, 0x0C, 0x38, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2E, 0x29, 0x2D, 0x01, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x29, 0x0D, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x82, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x81, 0x29, 0x0D, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x83, 0x21, 0x0D, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x0E, 0x29, 0x0E, 0x81, 0x29, 0x0D, 0x29, 0x0E, 0x04, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x82, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x8A, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x86, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x03, 0x29, 0x0E, + 0x82, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x0E, 0x06, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x06, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x83, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x0D, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x0D, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x03, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2E, 0x31, 0x2E, 0x29, 0x2E, 0x05, 0x29, 0x0D, 0x01, 0x31, 0x2E, 0x83, 0x29, 0x0D, 0x31, 0x2E, 0x29, 0x0D, 0x31, 0x2E, 0x01, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x05, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x80, 0x28, 0xED, 0x05, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x48, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x17, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x13, 0x31, 0x0D, 0x80, 0x31, 0x0E, 0x07, 0x31, 0x0D, 0x01, 0x31, 0x0E, 0x01, 0x31, 0x0D, 0x01, + 0x31, 0x0E, 0x09, 0x31, 0x0D, 0x80, 0x31, 0x0E, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x0E, 0x16, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x0F, 0x31, 0x0E, 0x01, 0x31, 0x2E, 0x01, 0x39, 0x2F, 0x81, 0x39, 0x0E, 0x39, 0x2E, 0x04, 0x39, 0x2F, 0x80, 0x41, 0x4F, 0x01, 0x41, 0x2F, 0x01, 0x41, 0x0F, 0x86, 0x49, 0x0F, 0x48, 0xEF, 0x50, 0xEE, 0x58, 0xEE, 0x60, 0xCE, 0xA2, 0x95, 0xCB, 0x37, 0x01, 0xCA, 0xF6, 0x02, 0xD2, 0xD5, 0x03, 0xD2, 0xB5, 0x03, 0xD2, 0x95, 0x03, 0xD2, 0x75, 0x04, 0xD2, 0x55, 0x81, 0xD2, 0x35, 0xD2, 0x55, 0x05, 0xD2, 0x35, 0x88, 0xD2, 0x14, 0xD2, 0x15, 0xD2, 0x14, 0xD2, 0x15, 0xD2, 0x14, 0xC9, 0xF4, 0xD2, 0x15, 0xCA, 0x14, 0xC9, 0xF4, 0x09, 0xC9, 0xF5, 0x0E, 0xC1, 0xF5, 0x03, 0xC1, 0xF6, 0x05, 0xC1, 0xF5, 0x0A, 0xC1, 0xD4, 0x04, 0xC1, 0xF4, 0x07, 0xB9, 0xD4, 0x04, 0xB9, 0xF4, 0x82, 0xB9, 0xD4, 0xB9, 0xF4, 0xB1, 0xD4, 0x01, 0xB9, 0xF4, 0x8B, 0xB2, 0x14, 0xA9, 0xF4, 0xA2, 0x35, 0x9A, 0x77, 0x82, 0x99, 0x5A, 0x19, 0x42, 0x7B, 0x3B, 0x1D, 0x23, 0x3E, 0x13, 0x3E, 0x0B, 0x5F, 0x0B, 0x7F, 0x04, 0x03, 0x7F, 0x80, 0x03, 0x9F, 0x04, 0x03, 0x7F, 0x04, 0x03, 0x9F, 0x01, 0x03, 0x7E, 0x94, 0x03, 0x5D, 0x03, 0x7C, 0x04, 0x1B, 0x36, 0x3C, 0x57, 0x3C, 0x3D, 0x95, 0x6D, 0x76, 0x7C, 0x13, 0x6A, 0x4F, 0x82, 0x51, 0x92, 0x32, 0x9A, 0x33, 0x9A, 0x55, 0x81, 0xD4, 0x71, 0x72, 0x69, 0xB3, 0x61, 0x93, 0x61, 0xB3, 0x59, 0xD3, 0x51, 0xB2, 0x51, 0x92, 0x01, 0x49, 0x92, 0x01, 0x49, 0x71, 0x80, 0x49, 0x91, 0x03, 0x41, 0x70, 0x02, 0x39, + 0x50, 0x82, 0x39, 0x4F, 0x39, 0x2F, 0x39, 0x4F, 0x01, 0x31, 0x2F, 0x81, 0x31, 0x4F, 0x31, 0x2F, 0x02, 0x31, 0x2E, 0x83, 0x29, 0x2E, 0x31, 0x2E, 0x29, 0x2E, 0x31, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x81, 0x29, 0x0D, 0x29, 0x2E, 0x0A, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x07, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x81, 0x29, 0x0D, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x04, 0x29, 0x2E, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x03, 0x29, 0x0D, 0x02, 0x29, 0x2E, 0x80, 0x21, 0x2E, 0x01, 0x21, 0x2F, 0x01, 0x19, 0x30, 0x88, 0x11, 0x31, 0x11, 0x32, 0x19, 0xB4, 0x22, 0x15, 0x21, 0xF5, 0x21, 0xB5, 0x21, 0x73, 0x10, 0xF1, 0x19, 0x11, 0x01, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x2E, 0x01, 0x21, 0x0E, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x19, 0x10, 0x02, 0x21, 0x10, 0x01, 0x19, 0x10, 0x81, 0x21, 0x10, 0x19, 0x10, 0x03, 0x21, 0x10, 0x01, 0x19, 0x10, 0x01, 0x21, 0x10, 0x85, 0x19, 0x0F, 0x21, 0x10, 0x19, 0x0F, 0x19, 0x10, 0x21, 0x10, 0x19, 0x0F, 0x07, 0x21, 0x10, 0x82, 0x21, 0x0F, 0x21, 0x10, 0x21, 0x30, 0x04, 0x21, 0x10, 0x01, 0x19, 0x10, 0x80, 0x21, 0x10, 0x0D, 0x19, 0x10, 0x87, 0x19, 0x30, 0x11, 0x10, 0x19, 0x11, 0x10, 0xF1, 0x11, 0x32, 0x11, 0x74, 0x11, 0xB4, 0x19, 0xD6, 0x01, 0x19, 0xD5, 0x81, 0x11, 0x94, 0x11, 0x74, 0x01, 0x11, 0x73, + 0x86, 0x19, 0xD5, 0x21, 0xF6, 0x19, 0xD5, 0x19, 0x94, 0x11, 0x52, 0x19, 0x31, 0x19, 0x10, 0x01, 0x21, 0x2F, 0x8E, 0x21, 0x0E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x21, 0x2E, 0x21, 0x4E, 0x11, 0x2E, 0x09, 0x2E, 0x01, 0x6F, 0x44, 0x5A, 0x2C, 0x39, 0x14, 0x18, 0x14, 0x39, 0x01, 0x0C, 0x39, 0x81, 0x04, 0x38, 0x04, 0x39, 0x03, 0x0C, 0x39, 0x80, 0x0C, 0x19, 0x01, 0x14, 0x39, 0x84, 0x1C, 0x39, 0x24, 0x5A, 0x34, 0x19, 0x01, 0x6F, 0x09, 0x4E, 0x02, 0x11, 0x2E, 0x86, 0x09, 0x2D, 0x00, 0xEC, 0x2B, 0x14, 0x3C, 0x59, 0x24, 0x18, 0x14, 0x19, 0x0C, 0x18, 0x01, 0x0C, 0x19, 0x88, 0x0C, 0x39, 0x14, 0x39, 0x1C, 0x39, 0x1B, 0xD8, 0x02, 0x11, 0x02, 0x31, 0x0B, 0x55, 0x1B, 0xF8, 0x13, 0xF8, 0x01, 0x0B, 0xF8, 0x80, 0x14, 0x19, 0x01, 0x13, 0xF9, 0x90, 0x1C, 0x19, 0x23, 0xF8, 0x34, 0x19, 0x0A, 0x32, 0x01, 0x8F, 0x01, 0x4E, 0x01, 0x2D, 0x01, 0xAF, 0x34, 0x59, 0x1C, 0x18, 0x14, 0x18, 0x14, 0x39, 0x0C, 0x19, 0x0C, 0x18, 0x0C, 0x19, 0x0C, 0x39, 0x0C, 0x18, 0x01, 0x0C, 0x39, 0x02, 0x04, 0x38, 0x81, 0x04, 0x58, 0x04, 0x38, 0x03, 0x29, 0x2D, 0x01, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x04, 0x29, 0x2E, 0x83, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x0D, 0x06, 0x29, 0x0E, 0x04, 0x29, 0x0D, 0x06, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x83, 0x29, 0x0D, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x29, 0x0D, 0x02, 0x29, + 0x0E, 0x81, 0x29, 0x0D, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x03, 0x29, 0x0D, 0x05, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2E, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x0D, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x05, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x84, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x2E, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x84, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x81, 0x29, + 0x2E, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x89, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x2E, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x0D, 0x29, 0x0E, 0x0F, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x04, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x20, 0x29, 0x0D, 0x01, 0x31, 0x0E, 0x01, 0x29, 0x0D, 0x09, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x66, 0x31, 0x0D, 0x0F, 0x29, 0x0D, 0x81, 0x31, 0x0D, 0x31, 0x2E, 0x02, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x13, 0x31, 0x0D, 0x03, 0x31, 0x0E, 0x07, 0x31, 0x0D, 0x01, 0x31, 0x0E, 0x03, 0x29, 0x0D, 0x01, 0x31, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x0A, 0x31, 0x0E, 0x05, 0x31, 0x2E, 0x09, 0x39, 0x2F, 0x80, 0x41, 0x2F, 0x01, 0x41, 0x0F, 0x89, 0x40, 0xEE, 0x48, 0xCE, 0x50, 0xCE, 0x71, 0x2F, 0xC3, 0x37, 0xCB, 0x17, 0xCA, 0xF6, 0xD2, 0xF6, 0xD2, 0xD6, 0xD2, 0xF6, 0x02, 0xD2, 0xD6, 0x01, 0xD2, 0xB5, 0x01, 0xD2, 0x95, 0x01, 0xD2, 0x75, 0x81, 0xD2, 0x55, 0xD2, 0x75, 0x01, 0xD2, 0x55, 0x01, 0xD2, 0x75, 0x04, 0xD2, 0x55, 0x02, 0xD2, 0x35, 0x81, 0xD2, 0x15, 0xD2, 0x35, 0x01, 0xD2, 0x15, 0x80, 0xD2, 0x35, 0x01, 0xD2, 0x15, 0x06, 0xCA, 0x15, 0x01, 0xC9, 0xF5, 0x85, 0xCA, + 0x15, 0xC9, 0xF5, 0xC9, 0xF6, 0xCA, 0x16, 0xC2, 0x16, 0xC1, 0xF6, 0x08, 0xC2, 0x16, 0x80, 0xC2, 0x17, 0x02, 0xC2, 0x16, 0x02, 0xBA, 0x16, 0x80, 0xB9, 0xF6, 0x01, 0xBA, 0x17, 0x01, 0xB9, 0xF6, 0x01, 0xBA, 0x16, 0x81, 0xC1, 0xF6, 0xB9, 0xF6, 0x06, 0xC1, 0xF5, 0x83, 0xC1, 0xD5, 0xC1, 0xF5, 0xB9, 0xD5, 0xC1, 0xF5, 0x02, 0xB9, 0xD5, 0x05, 0xB9, 0xD4, 0x80, 0xB9, 0xF4, 0x01, 0xB9, 0xD4, 0x81, 0xB9, 0xF4, 0xB9, 0xD4, 0x08, 0xB9, 0xF4, 0x8A, 0xBA, 0x14, 0xB2, 0x14, 0xAA, 0x14, 0x9A, 0x35, 0x92, 0x77, 0x7A, 0x98, 0x52, 0x59, 0x42, 0xDC, 0x33, 0x3E, 0x1B, 0x5E, 0x13, 0x7F, 0x01, 0x0B, 0x7F, 0x0A, 0x03, 0x9F, 0x02, 0x03, 0xBF, 0x02, 0x03, 0x9F, 0x80, 0x03, 0x7E, 0x01, 0x03, 0x7D, 0x90, 0x04, 0x1B, 0x25, 0x9B, 0x57, 0x1D, 0x45, 0xB7, 0x6D, 0x77, 0x7C, 0x14, 0x72, 0x6F, 0x8A, 0x51, 0x92, 0x32, 0x9A, 0x13, 0x9A, 0x34, 0x89, 0xF4, 0x79, 0x93, 0x69, 0x93, 0x61, 0xB3, 0x59, 0x92, 0x59, 0xB3, 0x01, 0x51, 0x92, 0x03, 0x49, 0x91, 0x01, 0x41, 0x71, 0x82, 0x41, 0x50, 0x41, 0x70, 0x41, 0x50, 0x02, 0x39, 0x50, 0x01, 0x39, 0x4F, 0x01, 0x31, 0x2F, 0x87, 0x31, 0x4F, 0x31, 0x2E, 0x31, 0x4F, 0x31, 0x2E, 0x31, 0x2F, 0x31, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x83, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x83, 0x29, 0x2E, 0x29, 0x0E, 0x29, + 0x2E, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x81, 0x31, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x87, 0x21, 0x2E, 0x21, 0x2F, 0x21, 0x4F, 0x19, 0x30, 0x10, 0xEF, 0x11, 0x10, 0x11, 0x52, 0x19, 0xD4, 0x01, 0x21, 0xF6, 0x82, 0x21, 0xD5, 0x19, 0x73, 0x11, 0x11, 0x01, 0x18, 0xF0, 0x80, 0x29, 0x30, 0x01, 0x29, 0x2F, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x21, 0x0E, 0x02, 0x29, 0x2F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x09, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x0A, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x30, 0x80, 0x21, 0x10, 0x03, 0x21, 0x30, 0x01, 0x19, 0x10, 0x84, 0x19, 0x31, 0x11, 0x52, 0x11, 0x73, 0x19, 0x94, 0x19, 0xB4, 0x02, 0x19, 0xD5, 0x01, 0x11, 0x94, 0x85, 0x19, 0xB4, 0x19, 0xD5, 0x19, 0xB4, 0x19, 0x72, 0x11, 0x31, 0x19, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0E, 0x29, 0x0E, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x87, 0x21, 0x2E, 0x21, 0x4E, 0x11, 0x4E, 0x01, 0x2E, 0x01, 0x6F, 0x44, 0x9B, 0x24, 0x18, 0x14, 0x18, 0x01, 0x0C, 0x18, 0x80, 0x0C, 0x39, 0x01, 0x04, 0x39, 0x82, + 0x04, 0x19, 0x04, 0x39, 0x0C, 0x5A, 0x01, 0x0C, 0x39, 0x87, 0x0C, 0x3A, 0x0C, 0x39, 0x14, 0x19, 0x1C, 0x39, 0x34, 0x5A, 0x01, 0x6F, 0x09, 0x2E, 0x11, 0x4E, 0x01, 0x19, 0x4E, 0x87, 0x11, 0x4E, 0x09, 0x2D, 0x01, 0x2D, 0x2B, 0x96, 0x34, 0x7A, 0x1C, 0x39, 0x14, 0x39, 0x0B, 0xF8, 0x02, 0x0C, 0x19, 0x84, 0x0C, 0x18, 0x1C, 0x7A, 0x03, 0x76, 0x0B, 0x96, 0x14, 0x18, 0x02, 0x0C, 0x18, 0x01, 0x0C, 0x19, 0x8B, 0x0B, 0xF8, 0x13, 0xF9, 0x1B, 0xF8, 0x2B, 0xF9, 0x2B, 0x77, 0x01, 0x6F, 0x01, 0x6E, 0x01, 0x2E, 0x01, 0x0D, 0x01, 0x8E, 0x34, 0x39, 0x1C, 0x18, 0x01, 0x14, 0x18, 0x81, 0x0C, 0x19, 0x0C, 0x18, 0x01, 0x0C, 0x39, 0x02, 0x04, 0x18, 0x85, 0x04, 0x38, 0x04, 0x59, 0x04, 0x38, 0x04, 0x39, 0x04, 0x38, 0x29, 0x2E, 0x03, 0x29, 0x2D, 0x82, 0x29, 0x0D, 0x29, 0x2E, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x83, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x0E, 0x11, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x0C, 0x29, 0x0D, + 0x03, 0x29, 0x0E, 0x0B, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x0F, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x0D, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0E, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x84, 0x29, 0x2E, 0x29, 0x2D, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x0C, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x0D, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x06, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x86, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x2D, 0x0D, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x04, 0x29, 0x2D, 0x81, 0x29, 0x2E, 0x29, 0x2D, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x2D, 0x1F, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x06, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x07, 0x29, 0x0D, 0x22, 0x31, 0x0D, 0x06, 0x29, 0x0D, 0x25, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x11, 0x31, 0x0D, 0x0D, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x01, 0x31, 0x2D, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x02, 0x31, + 0x0D, 0x01, 0x29, 0x0D, 0x0C, 0x31, 0x0D, 0x02, 0x31, 0x0E, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x05, 0x31, 0x0D, 0x01, 0x31, 0x0E, 0x01, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x31, 0x2E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x31, 0x2D, 0x80, 0x31, 0x2E, 0x01, 0x31, 0x0E, 0x80, 0x31, 0x2E, 0x06, 0x31, 0x0E, 0x07, 0x31, 0x2E, 0x01, 0x31, 0x2F, 0x04, 0x39, 0x2F, 0x80, 0x39, 0x4F, 0x02, 0x39, 0x2F, 0x87, 0x41, 0x2F, 0x41, 0x0E, 0x40, 0xEE, 0x48, 0xCE, 0x48, 0x6C, 0x89, 0xF2, 0xC3, 0x37, 0xCB, 0x17, 0x01, 0xD2, 0xF6, 0x01, 0xD2, 0xD6, 0x80, 0xD2, 0xD5, 0x02, 0xD2, 0xB5, 0x02, 0xD2, 0x95, 0x83, 0xD2, 0x75, 0xD2, 0x95, 0xD2, 0x75, 0xD2, 0x55, 0x01, 0xD2, 0x75, 0x82, 0xD2, 0x55, 0xD2, 0x76, 0xD2, 0x55, 0x03, 0xD2, 0x56, 0x01, 0xCA, 0x56, 0x82, 0xCA, 0x36, 0xCA, 0x35, 0xCA, 0x36, 0x02, 0xCA, 0x15, 0x02, 0xCA, 0x16, 0x03, 0xCA, 0x36, 0x03, 0xC2, 0x16, 0x01, 0xBA, 0x16, 0x02, 0xBA, 0x17, 0x01, 0xB2, 0x17, 0x8B, 0xB1, 0xF7, 0xB2, 0x18, 0xA9, 0xF7, 0xB2, 0x17, 0xAA, 0x17, 0xB2, 0x17, 0xAA, 0x17, 0xB2, 0x17, 0xAA, 0x17, 0xB2, 0x18, 0xAA, 0x17, 0xAA, 0x18, 0x01, 0xAA, 0x17, 0x85, 0xA9, 0xF7, 0xAA, 0x17, 0xA1, 0xF7, 0xA9, 0xF8, 0xA1, 0xD7, 0xA9, 0xF8, 0x02, 0xA9, 0xF7, 0x02, 0xB1, 0xF7, 0x80, 0xB1, 0xF6, 0x06, 0xBA, 0x16, 0x05, 0xB9, 0xF5, 0x80, 0xB9, 0xD4, 0x01, 0xB9, 0xF4, 0x03, 0xB9, 0xF5, 0x0B, 0xB9, 0xF4, 0x8E, 0xBA, 0x14, 0xB2, 0x15, 0xA2, 0x15, 0x9A, 0x35, 0x82, 0x76, 0x72, 0xB8, 0x52, 0xB9, 0x43, 0x3C, + 0x2B, 0x7E, 0x1B, 0x7E, 0x13, 0x9F, 0x0B, 0x9F, 0x03, 0x9F, 0x03, 0xBF, 0x03, 0x9F, 0x01, 0x03, 0xBF, 0x80, 0x03, 0x9F, 0x05, 0x03, 0xBF, 0x80, 0x03, 0xDF, 0x04, 0x03, 0xBF, 0x80, 0x03, 0x9E, 0x01, 0x03, 0x9D, 0x90, 0x04, 0x1C, 0x15, 0x1A, 0x56, 0xDE, 0x55, 0xFA, 0x6D, 0x58, 0x84, 0x35, 0x72, 0x50, 0x8A, 0x52, 0x92, 0x12, 0x9A, 0x13, 0x9A, 0x34, 0x91, 0xF4, 0x79, 0x93, 0x69, 0x92, 0x61, 0x93, 0x61, 0xB3, 0x59, 0xB2, 0x02, 0x51, 0x92, 0x02, 0x49, 0x91, 0x81, 0x49, 0x71, 0x49, 0x91, 0x01, 0x41, 0x70, 0x01, 0x41, 0x50, 0x85, 0x39, 0x4F, 0x39, 0x50, 0x39, 0x4F, 0x39, 0x2F, 0x31, 0x2F, 0x39, 0x4F, 0x01, 0x31, 0x2E, 0x85, 0x31, 0x4E, 0x31, 0x2E, 0x31, 0x0E, 0x31, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x05, 0x29, 0x0E, 0x04, 0x29, 0x0D, 0x83, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x07, 0x29, 0x0D, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x84, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x2E, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0E, 0x01, 0x21, 0x2E, 0x8F, 0x21, 0x2F, 0x19, 0x2F, 0x19, 0x0F, 0x11, 0x10, 0x11, 0x30, 0x11, 0x72, 0x19, 0xB4, 0x21, 0xF6, 0x21, 0xF5, 0x21, 0xD5, 0x19, 0x73, 0x11, 0x11, 0x19, 0x10, 0x21, 0x10, 0x21, + 0x2F, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x82, 0x29, 0x2E, 0x21, 0x0D, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x86, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x21, 0x0E, 0x21, 0x0F, 0x29, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x0E, 0x80, 0x21, 0x2E, 0x02, 0x21, 0x0E, 0x02, 0x21, 0x2E, 0x82, 0x21, 0x0E, 0x21, 0x2E, 0x29, 0x2F, 0x01, 0x21, 0x0E, 0x85, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x2E, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2F, 0x02, 0x21, 0x0E, 0x82, 0x29, 0x0F, 0x21, 0x0F, 0x29, 0x2F, 0x04, 0x21, 0x0E, 0x82, 0x29, 0x2F, 0x29, 0x0E, 0x21, 0x0E, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0E, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x30, 0x01, 0x19, 0x30, 0x82, 0x19, 0x51, 0x11, 0x52, 0x11, 0x73, 0x02, 0x19, 0xB4, 0x85, 0x19, 0x94, 0x19, 0xB4, 0x19, 0x93, 0x19, 0x73, 0x11, 0x52, 0x11, 0x31, 0x01, 0x19, 0x30, 0x82, 0x21, 0x2F, 0x21, 0x2E, 0x21, 0x0E, 0x05, 0x29, 0x0D, 0x89, 0x21, 0x0E, 0x19, 0x2E, 0x11, 0x4E, 0x01, 0x0E, 0x01, 0x6F, 0x4C, 0xBB, 0x1B, 0xF8, 0x14, 0x39, 0x0C, 0x39, 0x04, 0x18, 0x02, 0x04, 0x39, 0x8D, 0x04, 0x19, 0x04, 0x39, 0x0C, 0x39, 0x04, 0x19, 0x14, 0x5A, 0x0C, 0x19, 0x0C, 0x39, 0x14, 0x39, 0x24, 0x59, 0x34, 0x39, 0x01, 0x6E, 0x09, 0x4E, 0x11, 0x2D, 0x19, 0x4E, 0x01, 0x19, 0x4D, 0x86, 0x11, 0x2D, 0x01, 0x0C, 0x01, 0xAF, 0x34, 0x39, 0x24, 0x5A, 0x14, + 0x39, 0x0C, 0x19, 0x01, 0x0C, 0x39, 0x82, 0x0C, 0x19, 0x0C, 0x18, 0x0C, 0x38, 0x01, 0x0C, 0x18, 0x01, 0x04, 0x18, 0x92, 0x0C, 0x18, 0x04, 0x18, 0x0C, 0x18, 0x0C, 0x19, 0x14, 0x19, 0x13, 0xF8, 0x1B, 0xF8, 0x3C, 0x39, 0x01, 0xD0, 0x01, 0x2E, 0x09, 0x4E, 0x09, 0x2E, 0x01, 0x0D, 0x01, 0x6E, 0x34, 0x59, 0x1C, 0x18, 0x1C, 0x38, 0x14, 0x39, 0x0C, 0x18, 0x02, 0x0C, 0x39, 0x01, 0x04, 0x18, 0x01, 0x04, 0x39, 0x01, 0x04, 0x38, 0x82, 0x04, 0x59, 0x04, 0x38, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x83, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x2E, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x81, 0x29, 0x0D, 0x29, 0x0E, 0x0B, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x15, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x0F, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x17, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x0E, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x80, + 0x29, 0x2E, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x0A, 0x29, 0x0E, 0x84, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x06, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x0D, 0x07, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x0D, 0x09, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x01, 0x29, 0x2D, 0x03, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x07, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x03, 0x29, 0x2E, 0x13, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x0E, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x10, 0x29, 0x0D, 0x0B, 0x31, 0x0D, 0x05, 0x29, 0x0D, 0x03, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x05, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x03, 0x31, 0x0D, 0x05, 0x29, 0x0D, 0x0A, 0x31, 0x0D, 0x22, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x1F, 0x29, 0x0D, 0x03, 0x31, 0x0D, 0x08, 0x29, 0x0D, 0x03, 0x31, 0x2D, 0x03, 0x29, 0x0D, 0x06, 0x29, 0x2D, 0x03, 0x31, 0x2D, 0x81, 0x31, 0x2E, 0x31, 0x0E, 0x01, 0x31, 0x2E, 0x01, 0x31, 0x0D, 0x01, 0x31, 0x0E, 0x0A, 0x31, 0x2E, 0x81, 0x39, 0x2F, 0x39, 0x2E, 0x02, 0x39, 0x2F, 0x80, 0x39, 0x4F, 0x02, 0x39, 0x2F, 0x80, 0x39, 0x2E, 0x01, 0x41, 0x0E, 0x84, 0x48, 0xCD, 0x58, 0xCE, 0xAA, 0xB5, 0xCB, 0x58, + 0xCA, 0xF6, 0x02, 0xD2, 0xF6, 0x80, 0xD2, 0xD6, 0x01, 0xD2, 0xB5, 0x03, 0xD2, 0x95, 0x07, 0xD2, 0x75, 0x03, 0xD2, 0x76, 0x01, 0xCA, 0x76, 0x05, 0xCA, 0x56, 0x80, 0xC2, 0x56, 0x03, 0xC2, 0x57, 0x81, 0xC2, 0x37, 0xC2, 0x57, 0x01, 0xBA, 0x57, 0x80, 0xBA, 0x37, 0x01, 0xB2, 0x37, 0x01, 0xAA, 0x17, 0x87, 0xAA, 0x18, 0xA1, 0xF7, 0xA1, 0xF8, 0xA1, 0xD7, 0x99, 0xF8, 0x91, 0xD7, 0x89, 0xB7, 0x89, 0x97, 0x04, 0x81, 0x97, 0x80, 0x81, 0xB8, 0x01, 0x81, 0x98, 0x80, 0x81, 0x97, 0x06, 0x81, 0x98, 0x01, 0x79, 0x98, 0x82, 0x81, 0x98, 0x81, 0x97, 0x81, 0xB8, 0x01, 0x89, 0xB7, 0x80, 0x91, 0xB7, 0x01, 0x99, 0xF7, 0x82, 0xA2, 0x18, 0xAA, 0x17, 0xAA, 0x38, 0x04, 0xB2, 0x37, 0x03, 0xB2, 0x16, 0x80, 0xB2, 0x15, 0x04, 0xB1, 0xF5, 0x80, 0xB1, 0xF4, 0x0C, 0xB9, 0xF4, 0x89, 0xB2, 0x15, 0xAA, 0x15, 0xA2, 0x15, 0x92, 0x56, 0x82, 0x97, 0x62, 0xB8, 0x4B, 0x3A, 0x43, 0x9D, 0x23, 0x9D, 0x13, 0x9E, 0x01, 0x0B, 0xBF, 0x80, 0x03, 0xBF, 0x01, 0x03, 0xDF, 0x01, 0x03, 0xBF, 0x01, 0x03, 0xDF, 0x80, 0x03, 0xBF, 0x04, 0x03, 0xDF, 0x04, 0x03, 0xBF, 0x01, 0x03, 0xBE, 0x92, 0x03, 0xBD, 0x04, 0x1C, 0x0C, 0xBA, 0x3E, 0x3D, 0x5E, 0x7C, 0x75, 0xBA, 0x8C, 0x76, 0x7A, 0x70, 0x92, 0x72, 0x9A, 0x33, 0x9A, 0x13, 0x9A, 0x34, 0x92, 0x14, 0x79, 0x93, 0x69, 0x72, 0x69, 0xB3, 0x61, 0xB3, 0x59, 0xB3, 0x59, 0x92, 0x02, 0x51, 0x92, 0x01, 0x49, 0x91, 0x01, 0x49, 0x71, 0x01, 0x41, 0x70, 0x81, 0x41, 0x50, 0x39, 0x50, 0x02, 0x39, 0x4F, 0x80, 0x39, 0x2F, 0x01, 0x31, 0x2F, 0x01, 0x31, + 0x2E, 0x80, 0x31, 0x4E, 0x03, 0x31, 0x2E, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x88, 0x29, 0x2E, 0x29, 0x0E, 0x31, 0x0E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x2E, 0x29, 0x0D, 0x02, 0x29, 0x2E, 0x82, 0x29, 0x0D, 0x29, 0x2E, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x83, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x82, 0x29, 0x0D, 0x29, 0x2E, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x84, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x86, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x21, 0x0D, 0x21, 0x0E, 0x21, 0x2E, 0x01, 0x21, 0x2F, 0x84, 0x19, 0x2F, 0x11, 0x0F, 0x11, 0x30, 0x19, 0x72, 0x19, 0xB4, 0x01, 0x21, 0xF5, 0x85, 0x21, 0xB4, 0x19, 0x53, 0x19, 0x11, 0x19, 0x10, 0x21, 0x30, 0x21, 0x2F, 0x02, 0x21, 0x0E, 0x85, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x2E, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x04, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x82, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x02, 0x29, 0x2E, 0x82, 0x21, 0x0E, 0x29, 0x2E, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x09, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x21, + 0x2E, 0x29, 0x2F, 0x02, 0x21, 0x2E, 0x86, 0x21, 0x0E, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x19, 0x0F, 0x82, 0x19, 0x10, 0x11, 0x31, 0x19, 0x72, 0x02, 0x19, 0x93, 0x01, 0x19, 0x72, 0x82, 0x19, 0x52, 0x19, 0x31, 0x19, 0x30, 0x01, 0x19, 0x2F, 0x82, 0x21, 0x4F, 0x21, 0x2E, 0x21, 0x0D, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x99, 0x19, 0x2E, 0x11, 0x0E, 0x01, 0x0E, 0x01, 0x6F, 0x44, 0xBB, 0x24, 0x18, 0x14, 0x59, 0x0C, 0x39, 0x04, 0x38, 0x04, 0x39, 0x04, 0x18, 0x04, 0x38, 0x04, 0x19, 0x04, 0x39, 0x04, 0x19, 0x0C, 0x39, 0x0C, 0x19, 0x14, 0x39, 0x14, 0x59, 0x1C, 0x59, 0x24, 0x59, 0x3C, 0x59, 0x01, 0x6E, 0x11, 0x4E, 0x19, 0x4D, 0x19, 0x2D, 0x01, 0x19, 0x4E, 0x85, 0x19, 0x4D, 0x09, 0x0C, 0x01, 0x0D, 0x0A, 0x72, 0x34, 0x9A, 0x1C, 0x59, 0x03, 0x0C, 0x19, 0x01, 0x04, 0x18, 0x82, 0x03, 0xF8, 0x04, 0x18, 0x04, 0x38, 0x02, 0x04, 0x18, 0x01, 0x03, 0xF8, 0x85, 0x14, 0x19, 0x1B, 0xF8, 0x2B, 0xF9, 0x12, 0x72, 0x01, 0x0D, 0x09, 0x2D, 0x01, 0x11, 0x4E, 0x91, 0x09, 0x2D, 0x01, 0xAF, 0x44, 0x7A, 0x34, 0x79, 0x24, 0x59, 0x24, 0x39, 0x1C, 0x59, 0x1C, 0x7A, 0x14, 0x39, 0x0C, 0x18, 0x0C, 0x39, 0x04, 0x39, 0x04, 0x18, 0x04, 0x38, 0x04, 0x18, 0x04, 0x39, 0x04, 0x18, 0x04, 0x38, 0x07, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x0F, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x15, 0x29, + 0x0D, 0x80, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0B, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x24, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0E, 0x07, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x05, 0x29, 0x2D, 0x03, 0x29, 0x2E, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x2E, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x2E, 0x03, 0x29, 0x2D, 0x01, 0x29, 0x2E, 0x13, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x0C, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x0F, 0x29, 0x0D, 0x05, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x07, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x05, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x05, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x07, 0x29, 0x0D, 0x03, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x22, 0x29, + 0x0D, 0x05, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x19, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x0C, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x03, 0x29, 0x0D, 0x04, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x02, 0x31, 0x2D, 0x86, 0x31, 0x2E, 0x29, 0x0D, 0x31, 0x2D, 0x31, 0x0D, 0x31, 0x2E, 0x31, 0x0D, 0x31, 0x0E, 0x04, 0x31, 0x2E, 0x01, 0x39, 0x2E, 0x04, 0x31, 0x2E, 0x01, 0x39, 0x2E, 0x80, 0x39, 0x2F, 0x04, 0x39, 0x2E, 0x89, 0x41, 0x2E, 0x41, 0x0E, 0x40, 0xEE, 0x48, 0xCD, 0x69, 0x2F, 0xB3, 0x16, 0xCB, 0x17, 0xCA, 0xF6, 0xD2, 0xF6, 0xD2, 0xD5, 0x03, 0xD2, 0xB5, 0x01, 0xD2, 0x95, 0x81, 0xCA, 0x95, 0xD2, 0x75, 0x01, 0xD2, 0x95, 0x81, 0xD2, 0x75, 0xCA, 0x75, 0x02, 0xD2, 0x76, 0x82, 0xD2, 0x96, 0xD2, 0x76, 0xCA, 0x76, 0x03, 0xCA, 0x77, 0x02, 0xC2, 0x77, 0x01, 0xC2, 0x78, 0x80, 0xBA, 0x98, 0x01, 0xBA, 0x99, 0x80, 0xBA, 0xB9, 0x01, 0xB2, 0xBA, 0x82, 0xB2, 0x9A, 0xB2, 0xBA, 0xAA, 0x9A, 0x01, 0xA2, 0x7A, 0x01, 0x9A, 0x59, 0x87, 0x92, 0x19, 0x89, 0xF9, 0x81, 0xD8, 0x81, 0xD9, 0x81, 0xD8, 0x81, 0xB8, 0x79, 0x98, 0x71, 0x98, 0x01, 0x69, 0x78, 0x04, 0x61, 0x58, 0x01, 0x61, 0x78, 0x82, 0x61, 0x58, 0x61, 0x59, 0x59, 0x58, 0x04, 0x59, 0x59, 0x04, 0x59, 0x79, 0x01, 0x61, 0x78, 0x80, 0x69, 0x78, 0x01, 0x69, 0x98, 0x81, 0x71, 0xB8, 0x79, 0xB8, 0x01, 0x81, 0xF8, 0x82, 0x8A, 0x19, 0x92, 0x39, 0x9A, 0x7A, 0x01, 0x9A, 0x79, 0x01, 0x9A, 0x38, 0x81, 0x9A, 0x17, 0xA2, 0x37, 0x01, 0xAA, 0x37, 0x83, 0xAA, 0x36, 0xB2, 0x36, 0xB2, 0x16, 0xB2, 0x15, 0x06, 0xB1, 0xF5, + 0x80, 0xB1, 0xF4, 0x03, 0xB9, 0xF4, 0x01, 0xB1, 0xF4, 0x80, 0xB1, 0xF5, 0x01, 0xAA, 0x15, 0x87, 0x9A, 0x35, 0x8A, 0x56, 0x72, 0x97, 0x5A, 0xF9, 0x4B, 0x9B, 0x33, 0xDD, 0x23, 0xBD, 0x13, 0xDE, 0x01, 0x0B, 0xDF, 0x01, 0x03, 0xDF, 0x03, 0x03, 0xFF, 0x81, 0x03, 0xDF, 0x03, 0xFF, 0x06, 0x03, 0xDF, 0x01, 0x03, 0xBF, 0x81, 0x03, 0xDF, 0x03, 0xDE, 0x01, 0x03, 0xBE, 0x8F, 0x04, 0x1D, 0x0C, 0xBB, 0x2D, 0xBC, 0x6E, 0xBE, 0x75, 0xBB, 0x8C, 0x97, 0x7A, 0x71, 0x92, 0x72, 0x9A, 0x12, 0x9A, 0x13, 0x9A, 0x14, 0x9A, 0x35, 0x81, 0xD3, 0x69, 0x72, 0x69, 0xB3, 0x61, 0x92, 0x01, 0x59, 0x92, 0x02, 0x51, 0x92, 0x82, 0x49, 0x91, 0x49, 0x71, 0x49, 0x91, 0x01, 0x41, 0x70, 0x82, 0x41, 0x50, 0x41, 0x70, 0x41, 0x50, 0x03, 0x39, 0x4F, 0x01, 0x39, 0x2F, 0x80, 0x31, 0x2F, 0x04, 0x31, 0x2E, 0x81, 0x31, 0x0E, 0x31, 0x2E, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x81, 0x31, 0x0E, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x1A, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x0D, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x0C, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2E, 0x01, 0x21, 0x2E, 0x85, 0x21, 0x2F, 0x19, 0x2F, 0x11, 0x0F, 0x11, 0x31, 0x19, 0x72, 0x19, 0xB4, 0x01, 0x21, 0xD5, 0x83, 0x21, 0xB4, 0x19, 0x73, 0x19, 0x11, 0x19, 0x10, 0x02, 0x21, 0x0F, 0x88, 0x21, 0x2E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x2E, 0x29, 0x0D, 0x21, 0x0D, 0x29, 0x2D, 0x04, 0x29, + 0x0D, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0D, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x85, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x2E, 0x21, 0x0E, 0x21, 0x2E, 0x01, 0x29, 0x2E, 0x03, 0x21, 0x0E, 0x03, 0x21, 0x2E, 0x01, 0x21, 0x0F, 0x84, 0x19, 0x0F, 0x19, 0x10, 0x19, 0x30, 0x19, 0x31, 0x11, 0x31, 0x01, 0x19, 0x31, 0x02, 0x19, 0x10, 0x84, 0x19, 0x0F, 0x21, 0x0F, 0x21, 0x4F, 0x21, 0x2E, 0x21, 0x0D, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x86, 0x19, 0x2E, 0x11, 0x0E, 0x01, 0x0E, 0x01, 0x6F, 0x44, 0x9B, 0x24, 0x38, 0x14, 0x38, 0x01, 0x0C, 0x38, 0x02, 0x04, 0x38, 0x01, 0x0C, 0x39, 0x96, 0x14, 0x39, 0x1C, 0x39, 0x24, 0x59, 0x24, 0x39, 0x2C, 0x59, 0x2C, 0x38, 0x34, 0x59, 0x3B, 0xF8, 0x01, 0x6E, 0x11, 0x4D, 0x11, 0x0D, 0x19, 0x2D, 0x19, 0x4D, 0x19, 0x2D, 0x19, 0x6E, 0x11, 0x4D, 0x01, 0x0D, 0x01, 0x4D, 0x1B, 0x56, 0x34, 0x9B, 0x14, 0x19, 0x0C, 0x39, 0x0C, 0x19, 0x01, 0x04, 0x19, 0x04, 0x04, 0x18, 0x81, 0x0C, 0x39, 0x04, 0x18, 0x01, 0x0C, 0x18, 0x8C, 0x14, 0x19, 0x24, 0x19, 0x2B, 0x97, 0x01, 0x4E, 0x01, 0x0D, 0x11, 0x2D, 0x11, 0x2E, 0x11, 0x2D, 0x11, 0x4E, 0x09, 0x6F, 0x3B, 0x96, 0x3B, 0xF8, 0x3C, 0x18, 0x01, 0x34, 0x18, 0x01, 0x2C, 0x39, 0x81, 0x1C, 0x39, 0x14, 0x39, 0x03, 0x04, 0x39, 0x02, 0x04, 0x38, 0x02, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x01, + 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x11, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x15, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x21, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x1E, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x83, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x2E, 0x29, 0x2D, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x1B, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x05, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x15, 0x29, 0x2D, 0x01, 0x29, 0x2E, 0x1A, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x1A, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x07, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x09, 0x29, 0x2D, 0x03, 0x31, 0x2D, 0x34, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x0D, 0x29, 0x0D, 0x03, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x08, 0x29, 0x0D, 0x10, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x06, 0x29, + 0x0D, 0x01, 0x31, 0x0D, 0x05, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x06, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x81, 0x29, 0x2E, 0x29, 0x2D, 0x01, 0x31, 0x2D, 0x82, 0x31, 0x0D, 0x31, 0x0E, 0x31, 0x0D, 0x0A, 0x31, 0x2E, 0x01, 0x39, 0x2E, 0x80, 0x39, 0x4F, 0x02, 0x39, 0x2E, 0x02, 0x39, 0x0E, 0x86, 0x41, 0x0E, 0x40, 0xCD, 0x48, 0xAD, 0x79, 0x90, 0xC3, 0x37, 0xC2, 0xF6, 0xCA, 0xF6, 0x01, 0xD2, 0xD6, 0x03, 0xD2, 0xB5, 0x83, 0xCA, 0x95, 0xD2, 0xB5, 0xCA, 0x95, 0xD2, 0x95, 0x05, 0xD2, 0x96, 0x04, 0xCA, 0x97, 0x80, 0xC2, 0x97, 0x01, 0xC2, 0x98, 0x8C, 0xBA, 0x98, 0xBA, 0x78, 0xB2, 0x99, 0xB2, 0x79, 0xAA, 0x79, 0xA2, 0x59, 0x92, 0x39, 0x81, 0xF8, 0x79, 0xD8, 0x69, 0x97, 0x61, 0x57, 0x51, 0x16, 0x48, 0xF6, 0x02, 0x40, 0xD6, 0x01, 0x38, 0xD6, 0x02, 0x40, 0xF7, 0x80, 0x41, 0x17, 0x04, 0x41, 0x18, 0x03, 0x41, 0x39, 0x08, 0x39, 0x39, 0x82, 0x39, 0x19, 0x39, 0x3A, 0x39, 0x39, 0x03, 0x39, 0x3A, 0x04, 0x39, 0x39, 0x84, 0x41, 0x39, 0x41, 0x38, 0x41, 0x58, 0x41, 0x38, 0x49, 0x38, 0x02, 0x49, 0x58, 0x01, 0x41, 0x17, 0x85, 0x51, 0x57, 0x59, 0x77, 0x61, 0x97, 0x69, 0xB7, 0x82, 0x18, 0x8A, 0x18, 0x01, 0x9A, 0x58, 0x82, 0xA2, 0x77, 0xA2, 0x57, 0xAA, 0x56, 0x02, 0xAA, 0x36, 0x80, 0xAA, 0x15, 0x02, 0xA9, 0xF5, 0x06, 0xB1, 0xF5, 0x8C, 0xA9, 0xF5, 0xA1, 0xF5, 0x9A, 0x15, 0x92, 0x36, 0x82, 0x77, 0x6A, 0xB8, 0x53, 0x39, 0x43, 0xFC, 0x34, 0x1D, 0x1B, 0xDE, 0x13, 0xFF, 0x0B, 0xFF, 0x0C, 0x1F, + 0x0D, 0x03, 0xFF, 0x03, 0x03, 0xDF, 0x02, 0x03, 0xDE, 0x8F, 0x04, 0x3D, 0x0C, 0xBC, 0x25, 0x7C, 0x66, 0x7F, 0x7D, 0xFC, 0x94, 0xB8, 0x7A, 0x91, 0x92, 0x73, 0x9A, 0x33, 0xA2, 0x13, 0xA2, 0x34, 0x9A, 0x35, 0x89, 0xD4, 0x71, 0x72, 0x69, 0x92, 0x61, 0xB3, 0x01, 0x59, 0x92, 0x02, 0x51, 0x92, 0x81, 0x49, 0x91, 0x49, 0x71, 0x01, 0x49, 0x91, 0x01, 0x41, 0x70, 0x01, 0x41, 0x50, 0x80, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x82, 0x39, 0x2F, 0x39, 0x4F, 0x39, 0x2F, 0x03, 0x31, 0x2E, 0x03, 0x31, 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x29, 0x0E, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0A, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x09, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x87, 0x29, 0x2E, 0x29, 0x4F, 0x21, 0x4F, 0x19, 0x0F, 0x11, 0x0F, 0x11, 0x30, 0x11, 0x52, 0x19, 0xB4, 0x01, 0x21, 0xD5, 0x84, 0x21, 0xD4, 0x19, 0x72, 0x19, 0x31, 0x19, 0x10, 0x21, 0x30, 0x01, 0x21, 0x2F, 0x86, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, + 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x81, 0x21, 0x0D, 0x21, 0x0E, 0x02, 0x29, 0x2E, 0x82, 0x29, 0x0D, 0x29, 0x2E, 0x21, 0x0D, 0x01, 0x21, 0x2E, 0x01, 0x29, 0x2E, 0x01, 0x21, 0x2E, 0x82, 0x21, 0x0E, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x19, 0x0F, 0x01, 0x21, 0x0F, 0x83, 0x18, 0xEF, 0x21, 0x0F, 0x21, 0x2F, 0x21, 0x0E, 0x01, 0x21, 0x2E, 0x07, 0x29, 0x0D, 0x94, 0x29, 0x2D, 0x29, 0x2E, 0x19, 0x2E, 0x11, 0x2E, 0x00, 0xED, 0x01, 0x90, 0x44, 0xBB, 0x1B, 0xF8, 0x14, 0x38, 0x0C, 0x38, 0x0C, 0x18, 0x04, 0x18, 0x04, 0x38, 0x0C, 0x38, 0x0C, 0x18, 0x03, 0x76, 0x02, 0x51, 0x01, 0xF0, 0x02, 0x10, 0x01, 0xEF, 0x01, 0xCF, 0x01, 0x01, 0xAE, 0x82, 0x01, 0x8E, 0x11, 0x6E, 0x11, 0x2D, 0x02, 0x19, 0x2D, 0x88, 0x19, 0x4D, 0x21, 0x4E, 0x19, 0x6E, 0x09, 0x0D, 0x01, 0x0D, 0x01, 0x8F, 0x34, 0x39, 0x24, 0x59, 0x14, 0x19, 0x01, 0x0C, 0x39, 0x01, 0x04, 0x19, 0x83, 0x04, 0x39, 0x04, 0x18, 0x03, 0xF8, 0x04, 0x38, 0x01, 0x04, 0x18, 0x88, 0x0C, 0x18, 0x14, 0x39, 0x13, 0xF8, 0x34, 0x3A, 0x01, 0xD0, 0x01, 0x2D, 0x11, 0x2D, 0x19, 0x2E, 0x19, 0x4E, 0x01, 0x19, 0x2D, 0x84, 0x10, 0xED, 0x00, 0x8B, 0x00, 0xAB, 0x00, 0xCB, 0x00, 0xCC, 0x01, 0x00, 0xEC, 0x86, 0x01, 0x2D, 0x01, 0xF0, 0x1C, 0x18, 0x0C, 0x39, 0x0C, 0x59, 0x04, 0x18, 0x04, 0x39, 0x02, 0x04, 0x38, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, + 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x2D, 0x1B, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0B, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0D, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x0A, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0F, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x65, 0x29, 0x2D, 0x48, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x07, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x0D, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x13, 0x29, 0x0D, 0x80, 0x29, 0x2D, + 0x01, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x08, 0x29, 0x2D, 0x83, 0x29, 0x0D, 0x31, 0x2D, 0x29, 0x0D, 0x31, 0x2D, 0x02, 0x31, 0x0E, 0x09, 0x31, 0x2E, 0x04, 0x39, 0x2E, 0x02, 0x39, 0x0E, 0x86, 0x40, 0xEE, 0x40, 0xCD, 0x48, 0x8C, 0x92, 0x33, 0xC3, 0x37, 0xCB, 0x16, 0xCA, 0xF6, 0x02, 0xD2, 0xD6, 0x02, 0xD2, 0xB5, 0x01, 0xCA, 0xB5, 0x02, 0xD2, 0xB6, 0x01, 0xCA, 0x96, 0x02, 0xCA, 0x97, 0x80, 0xCA, 0xB8, 0x02, 0xC2, 0xB8, 0x81, 0xBA, 0xB9, 0xBA, 0xD9, 0x01, 0xB2, 0xDA, 0x8B, 0xAA, 0x9A, 0xA2, 0x7A, 0x92, 0x39, 0x8A, 0x39, 0x81, 0xF8, 0x71, 0xB7, 0x61, 0x77, 0x59, 0x56, 0x51, 0x36, 0x41, 0x17, 0x39, 0x17, 0x39, 0x18, 0x01, 0x31, 0x18, 0x80, 0x29, 0x18, 0x04, 0x29, 0x39, 0x04, 0x29, 0x19, 0x07, 0x29, 0x3A, 0x02, 0x21, 0x3A, 0x0E, 0x21, 0x3B, 0x01, 0x29, 0x5B, 0x06, 0x29, 0x5A, 0x8D, 0x29, 0x7A, 0x29, 0x5A, 0x29, 0x59, 0x31, 0x79, 0x39, 0x79, 0x41, 0x78, 0x49, 0x78, 0x51, 0xB8, 0x59, 0xB7, 0x69, 0xF7, 0x71, 0xF7, 0x82, 0x58, 0x8A, 0x78, 0x92, 0x98, 0x01, 0x9A, 0x98, 0x83, 0x9A, 0x77, 0x9A, 0x36, 0x91, 0xF6, 0x9A, 0x16, 0x01, 0xA2, 0x16, 0x81, 0xA1, 0xF5, 0xAA, 0x15, 0x03, 0xA9, 0xF5, 0x8B, 0xA1, 0xF5, 0x9A, 0x15, 0x92, 0x36, 0x82, 0x56, 0x72, 0x97, 0x5A, 0xD8, 0x4B, 0x5A, 0x44, 0x1D, 0x2C, 0x1D, 0x1C, 0x1E, 0x14, 0x1E, 0x0C, 0x1F, 0x02, 0x04, 0x1F, 0x80, 0x04, 0x3F, 0x02, 0x04, 0x1F, 0x80, 0x03, 0xFF, 0x03, 0x04, 0x1F, 0x08, 0x03, 0xFF, 0x92, 0x03, 0xFE, 0x04, 0x3E, 0x14, 0xFD, 0x1D, 0x1B, 0x56, 0x1E, 0x7D, 0xFD, + 0x94, 0xD9, 0x7A, 0x92, 0x8A, 0x52, 0x9A, 0x33, 0xA2, 0x13, 0xA2, 0x14, 0x9A, 0x14, 0x92, 0x14, 0x71, 0x92, 0x69, 0x92, 0x69, 0xB3, 0x59, 0x92, 0x59, 0xB2, 0x01, 0x51, 0x92, 0x80, 0x51, 0x91, 0x01, 0x49, 0x91, 0x81, 0x49, 0x71, 0x49, 0x91, 0x01, 0x41, 0x70, 0x01, 0x41, 0x50, 0x03, 0x39, 0x4F, 0x01, 0x39, 0x2F, 0x80, 0x39, 0x2E, 0x02, 0x31, 0x2E, 0x81, 0x31, 0x0E, 0x31, 0x2E, 0x01, 0x31, 0x0E, 0x86, 0x31, 0x2E, 0x29, 0x0D, 0x31, 0x2E, 0x29, 0x0D, 0x31, 0x2E, 0x29, 0x0D, 0x31, 0x0E, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x1C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x10, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x87, 0x29, 0x2E, 0x29, 0x4E, 0x21, 0x2F, 0x19, 0x0F, 0x11, 0x0F, 0x11, 0x30, 0x19, 0x52, 0x19, 0x94, 0x01, 0x21, 0xD5, 0x84, 0x21, 0xB4, 0x21, 0x72, 0x11, 0x10, 0x19, 0x10, 0x21, 0x2F, 0x01, 0x21, 0x0E, 0x83, 0x29, 0x0E, 0x21, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x80, 0x20, 0xED, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x81, 0x21, 0x0D, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x81, 0x21, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x2E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x2E, 0x82, 0x21, 0x0E, 0x20, + 0xEE, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x0E, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x01, 0x21, 0x0D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x91, 0x29, 0x4E, 0x19, 0x2E, 0x11, 0x2E, 0x01, 0x0E, 0x01, 0x8F, 0x44, 0x9B, 0x1B, 0xF8, 0x14, 0x18, 0x14, 0x59, 0x0C, 0x38, 0x04, 0x18, 0x0C, 0x38, 0x0C, 0x18, 0x14, 0x39, 0x03, 0x35, 0x01, 0xCF, 0x01, 0x6E, 0x01, 0x4D, 0x01, 0x01, 0x2D, 0x83, 0x01, 0x0C, 0x00, 0xEB, 0x01, 0x0C, 0x09, 0x2D, 0x01, 0x19, 0x2D, 0x93, 0x19, 0x0D, 0x21, 0x4D, 0x21, 0x2D, 0x21, 0x4D, 0x21, 0x4E, 0x11, 0x2D, 0x09, 0x0D, 0x01, 0x2D, 0x12, 0xB3, 0x34, 0x7A, 0x14, 0x19, 0x0C, 0x19, 0x0C, 0x39, 0x04, 0x39, 0x04, 0x18, 0x04, 0x39, 0x04, 0x38, 0x03, 0xF8, 0x04, 0x39, 0x04, 0x18, 0x01, 0x0C, 0x39, 0x84, 0x13, 0xF8, 0x23, 0xF8, 0x1A, 0xF5, 0x01, 0x0D, 0x09, 0x2D, 0x01, 0x19, 0x2D, 0x03, 0x21, 0x2D, 0x80, 0x19, 0x0D, 0x01, 0x10, 0xEC, 0x88, 0x08, 0xCC, 0x00, 0xCC, 0x00, 0xAB, 0x00, 0xCC, 0x01, 0x6E, 0x2C, 0x19, 0x14, 0x39, 0x0C, 0x39, 0x0C, 0x59, 0x01, 0x04, 0x18, 0x01, 0x04, 0x38, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x14, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, + 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x11, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0F, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x86, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2E, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0C, 0x29, 0x0D, 0x6D, 0x29, 0x2D, 0x11, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x05, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x12, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x06, 0x29, 0x2D, + 0x01, 0x29, 0x0D, 0x05, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x05, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x0B, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x05, 0x31, 0x2D, 0x80, 0x31, 0x0E, 0x08, 0x31, 0x2E, 0x06, 0x39, 0x2E, 0x87, 0x39, 0x0E, 0x38, 0xED, 0x40, 0xED, 0x40, 0xCD, 0x58, 0xCD, 0xAA, 0xF6, 0xCB, 0x37, 0xCB, 0x16, 0x01, 0xD2, 0xF6, 0x01, 0xD2, 0xD6, 0x02, 0xD2, 0xB5, 0x03, 0xD2, 0xB6, 0x81, 0xCA, 0xB6, 0xD2, 0xD7, 0x01, 0xCA, 0xB7, 0x90, 0xCA, 0xB8, 0xC2, 0xB8, 0xBA, 0xB8, 0xBA, 0xB9, 0xB2, 0xB9, 0xAA, 0xBA, 0xA2, 0x99, 0x8A, 0x38, 0x79, 0xF8, 0x61, 0x56, 0x50, 0xF5, 0x48, 0xD4, 0x40, 0xD4, 0x40, 0xD5, 0x40, 0xF5, 0x38, 0xF6, 0x39, 0x16, 0x01, 0x39, 0x17, 0x82, 0x31, 0x18, 0x31, 0x38, 0x29, 0x38, 0x01, 0x29, 0x39, 0x01, 0x21, 0x39, 0x03, 0x21, 0x3A, 0x85, 0x21, 0x5A, 0x21, 0x3A, 0x19, 0x3A, 0x21, 0x3B, 0x21, 0x5B, 0x19, 0x3B, 0x01, 0x21, 0x5B, 0x03, 0x19, 0x5B, 0x02, 0x19, 0x3B, 0x0B, 0x19, 0x5C, 0x80, 0x11, 0x3C, 0x02, 0x19, 0x5C, 0x06, 0x19, 0x7C, 0x83, 0x19, 0x9C, 0x19, 0x7C, 0x19, 0x9C, 0x19, 0xBC, 0x01, 0x19, 0xBB, 0x01, 0x21, 0xBB, 0x82, 0x29, 0xDB, 0x31, 0xFA, 0x39, 0xFA, 0x01, 0x39, 0xF9, 0x80, 0x41, 0xF8, 0x01, 0x41, 0xD7, 0x80, 0x51, 0xF7, 0x01, 0x59, 0xF7, 0x84, 0x61, 0xF7, 0x72, 0x37, 0x7A, 0x17, 0x82, 0x37, 0x8A, 0x37, 0x01, 0x92, 0x37, 0x81, 0x9A, 0x37, 0x9A, 0x16, 0x01, 0xA2, 0x16, 0x8A, 0x9A, 0x16, 0x92, 0x16, + 0x8A, 0x16, 0x82, 0x36, 0x72, 0x77, 0x62, 0xD8, 0x4B, 0x39, 0x43, 0xDB, 0x34, 0x3D, 0x24, 0x3E, 0x14, 0x3E, 0x01, 0x0C, 0x3F, 0x81, 0x04, 0x5F, 0x04, 0x3F, 0x01, 0x04, 0x5F, 0x03, 0x04, 0x3F, 0x80, 0x04, 0x1F, 0x02, 0x04, 0x3F, 0x02, 0x04, 0x1F, 0x01, 0x03, 0xFF, 0x04, 0x04, 0x1F, 0x94, 0x04, 0x5E, 0x0C, 0xBD, 0x25, 0x3D, 0x45, 0x9D, 0x75, 0xBD, 0x94, 0xDA, 0x72, 0x72, 0x82, 0x12, 0x9A, 0x13, 0xA2, 0x14, 0xA2, 0x34, 0xA2, 0x14, 0x9A, 0x14, 0x71, 0x72, 0x69, 0x51, 0x69, 0xB2, 0x61, 0x92, 0x59, 0xB2, 0x59, 0x92, 0x51, 0x92, 0x51, 0x91, 0x01, 0x49, 0x71, 0x82, 0x49, 0x91, 0x41, 0x70, 0x49, 0x90, 0x02, 0x41, 0x70, 0x80, 0x41, 0x6F, 0x03, 0x39, 0x4F, 0x80, 0x39, 0x2E, 0x03, 0x31, 0x2E, 0x81, 0x31, 0x0E, 0x31, 0x2E, 0x01, 0x29, 0x0D, 0x01, 0x31, 0x2E, 0x01, 0x31, 0x2D, 0x80, 0x31, 0x2E, 0x14, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0A, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2E, 0x80, 0x21, 0x2F, 0x01, 0x19, 0x0F, 0x88, 0x11, 0x10, 0x11, 0x52, 0x19, 0x94, 0x21, 0xD4, 0x21, 0xD5, 0x21, 0xD4, 0x19, 0x72, 0x10, 0xF0, 0x19, 0x10, 0x01, 0x21, 0x2F, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x2D, 0x21, 0x0D, 0x13, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x82, 0x29, + 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x83, 0x21, 0x0D, 0x20, 0xED, 0x21, 0x0D, 0x20, 0xED, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x21, 0x0D, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x83, 0x28, 0xEE, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x81, 0x21, 0x0D, 0x21, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x8C, 0x29, 0x2D, 0x21, 0x2D, 0x19, 0x2E, 0x09, 0x0D, 0x00, 0xED, 0x01, 0x8F, 0x44, 0x9B, 0x1C, 0x18, 0x14, 0x18, 0x0C, 0x38, 0x0C, 0x18, 0x0C, 0x38, 0x04, 0x18, 0x01, 0x0C, 0x18, 0x8B, 0x24, 0x5A, 0x34, 0x7A, 0x3C, 0x7A, 0x44, 0xBB, 0x4C, 0x9B, 0x4C, 0x9A, 0x54, 0x9A, 0x4C, 0x59, 0x43, 0x96, 0x09, 0x4D, 0x19, 0x2D, 0x19, 0x0D, 0x01, 0x21, 0x2D, 0x01, 0x21, 0x4D, 0x89, 0x21, 0x2D, 0x19, 0x4D, 0x11, 0x4E, 0x01, 0x2D, 0x01, 0x6E, 0x2B, 0xD8, 0x24, 0x5A, 0x14, 0x39, 0x0C, 0x18, 0x03, 0xF8, 0x05, 0x04, 0x18, 0x87, 0x0C, 0x18, 0x14, 0x18, 0x24, 0x19, 0x2B, 0xB7, 0x01, 0x8F, 0x01, 0x0D, 0x11, 0x2E, 0x19, 0x2E, 0x04, 0x21, 0x2D, 0x89, 0x21, 0x0D, 0x19, 0x0D, 0x21, 0x4E, 0x19, 0x4E, 0x11, 0x2D, 0x08, 0xEC, 0x00, 0xEC, 0x01, 0x4E, 0x34, 0x5A, 0x1C, 0x19, 0x01, 0x0C, 0x19, 0x80, 0x03, 0xF8, 0x02, 0x04, 0x18, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x82, + 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x15, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x41, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x3F, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x03, 0x29, 0x0D, 0x6D, 0x29, 0x2D, 0x11, 0x29, 0x0D, 0x05, 0x29, 0x2D, 0x0D, 0x29, 0x0D, 0x07, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x11, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x0B, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x0A, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x0F, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x07, 0x31, 0x2D, 0x08, 0x31, 0x2E, 0x04, 0x39, 0x2E, 0x01, 0x39, 0x0E, 0x88, 0x38, 0xED, 0x40, 0xED, 0x40, 0xAD, 0x59, 0x0E, 0xB3, 0x17, 0xCB, 0x57, 0xCA, 0xF6, 0xD3, 0x16, 0xD2, 0xF6, 0x04, 0xD2, 0xD6, 0x02, 0xD2, 0xB6, 0x80, 0xCA, 0xB6, 0x01, 0xCA, 0xD7, 0x93, 0xCA, 0xD8, 0xC2, 0xD8, 0xC2, 0xD9, 0xBA, 0xFA, 0xB2, 0xFA, 0xAA, 0xDA, 0x8A, 0x17, 0x71, 0xB6, 0x61, 0x55, 0x59, + 0x35, 0x49, 0x15, 0x40, 0xD5, 0x38, 0xF6, 0x39, 0x16, 0x31, 0x16, 0x31, 0x17, 0x31, 0x37, 0x31, 0x17, 0x31, 0x37, 0x29, 0x37, 0x02, 0x29, 0x38, 0x02, 0x21, 0x39, 0x82, 0x21, 0x59, 0x21, 0x3A, 0x19, 0x3A, 0x04, 0x19, 0x5A, 0x04, 0x19, 0x5B, 0x80, 0x11, 0x5B, 0x09, 0x11, 0x5C, 0x80, 0x11, 0x5D, 0x01, 0x09, 0x5D, 0x01, 0x11, 0x5D, 0x80, 0x09, 0x5D, 0x03, 0x09, 0x7D, 0x80, 0x09, 0x5D, 0x02, 0x09, 0x7D, 0x82, 0x09, 0x9D, 0x11, 0x9D, 0x09, 0x9D, 0x02, 0x11, 0x9D, 0x01, 0x11, 0xBD, 0x02, 0x11, 0xDD, 0x01, 0x11, 0xFD, 0x84, 0x11, 0xFC, 0x1A, 0x1D, 0x1A, 0x1C, 0x22, 0x3C, 0x2A, 0x5C, 0x01, 0x2A, 0x5B, 0x8C, 0x2A, 0x5A, 0x2A, 0x3A, 0x32, 0x5A, 0x3A, 0x5A, 0x3A, 0x59, 0x42, 0x59, 0x4A, 0x59, 0x5A, 0x79, 0x62, 0x78, 0x72, 0x79, 0x72, 0x78, 0x7A, 0x78, 0x82, 0x58, 0x01, 0x8A, 0x58, 0x8E, 0x92, 0x57, 0x92, 0x37, 0x8A, 0x37, 0x82, 0x36, 0x7A, 0x37, 0x72, 0x57, 0x62, 0x98, 0x5A, 0xF9, 0x4B, 0xBA, 0x3C, 0x3C, 0x2C, 0x5D, 0x1C, 0x5E, 0x14, 0x5F, 0x0C, 0x5F, 0x0C, 0x7F, 0x07, 0x04, 0x5F, 0x05, 0x04, 0x3F, 0x81, 0x04, 0x1F, 0x04, 0x3F, 0x04, 0x04, 0x1F, 0x8A, 0x04, 0x3F, 0x04, 0x7E, 0x0C, 0xDE, 0x1D, 0x1D, 0x3D, 0x5D, 0x75, 0xBE, 0x94, 0xFC, 0x6A, 0x93, 0x82, 0x32, 0x9A, 0x33, 0xA2, 0x13, 0x01, 0xA2, 0x14, 0x84, 0x9A, 0x14, 0x81, 0xD3, 0x69, 0x51, 0x69, 0xB3, 0x61, 0xB2, 0x02, 0x59, 0x92, 0x82, 0x51, 0x91, 0x49, 0x71, 0x49, 0x91, 0x01, 0x49, 0x71, 0x02, 0x41, 0x70, 0x01, 0x41, 0x4F, 0x04, 0x39, 0x4F, 0x82, 0x39, 0x2F, 0x31, 0x2E, 0x31, + 0x0E, 0x03, 0x31, 0x2E, 0x01, 0x31, 0x0E, 0x02, 0x31, 0x2D, 0x10, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x01, 0x21, 0x2E, 0x8B, 0x19, 0x0F, 0x10, 0xEF, 0x11, 0x10, 0x19, 0x52, 0x19, 0x93, 0x21, 0xB4, 0x21, 0xD4, 0x21, 0xB4, 0x19, 0x72, 0x11, 0x10, 0x19, 0x30, 0x21, 0x2F, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x0D, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x21, 0x0D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x01, 0x28, 0xED, 0x81, 0x29, 0x0D, 0x21, 0x0D, 0x05, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x02, 0x29, 0x0D, 0x88, 0x29, 0x2D, 0x21, 0x0D, 0x21, 0x2E, 0x11, 0x2E, 0x00, 0xED, 0x01, 0x8F, 0x44, 0x9B, 0x24, 0x18, 0x1C, 0x18, 0x02, 0x0C, 0x18, 0x80, 0x0C, 0x38, 0x01, 0x0B, 0xF8, 0x89, 0x0B, 0xD7, 0x13, 0xD8, 0x1B, 0xD7, 0x1B, 0xD8, 0x23, 0xF8, 0x34, 0x39, 0x34, 0x19, 0x44, 0x59, 0x54, 0x39, 0x09, 0x2D, 0x01, 0x19, 0x0D, 0x80, 0x21, 0x0D, 0x01, 0x21, 0x2D, 0x80, 0x21, 0x4D, 0x01, 0x21, 0x2D, 0x86, 0x19, 0x2D, + 0x11, 0x2E, 0x01, 0x4E, 0x02, 0x11, 0x34, 0x7A, 0x1C, 0x19, 0x14, 0x18, 0x02, 0x04, 0x18, 0x80, 0x0C, 0x39, 0x01, 0x04, 0x39, 0x89, 0x0C, 0x39, 0x0C, 0x18, 0x14, 0x18, 0x3C, 0x9B, 0x12, 0xB3, 0x01, 0x0D, 0x09, 0x0D, 0x19, 0x2E, 0x19, 0x0D, 0x21, 0x0D, 0x01, 0x21, 0x2D, 0x03, 0x21, 0x0D, 0x01, 0x21, 0x4D, 0x86, 0x19, 0x4D, 0x11, 0x2D, 0x00, 0xEC, 0x01, 0x4D, 0x3C, 0x7A, 0x13, 0xF8, 0x14, 0x19, 0x01, 0x03, 0xF8, 0x02, 0x04, 0x18, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x69, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x12, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x11, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x46, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0D, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x21, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x4A, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x04, 0x29, 0x2D, 0x0F, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x1E, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x20, 0x29, 0x2D, 0x26, 0x29, 0x0D, 0x06, 0x31, 0x2D, 0x80, 0x31, 0x0D, 0x07, 0x31, 0x2E, 0x04, 0x39, 0x2E, 0x01, 0x39, 0x0E, 0x88, 0x38, 0xED, 0x40, 0xED, 0x40, 0xAC, 0x69, 0x4F, 0xC3, 0x98, 0xC3, 0x37, 0xCB, 0x17, 0xCA, 0xF6, 0xD2, 0xF6, 0x06, 0xD2, 0xD6, 0x80, 0xCA, 0xB6, 0x01, 0xCA, 0xD7, 0x88, 0xCA, 0xD8, 0xC2, 0xD8, 0xBA, 0xF9, 0xB2, 0xFA, 0xA2, 0xBA, 0x82, 0x18, 0x59, 0x35, 0x40, 0xD3, 0x40, 0xF4, 0x01, 0x41, + 0x15, 0x80, 0x41, 0x16, 0x01, 0x39, 0x36, 0x03, 0x31, 0x37, 0x80, 0x29, 0x37, 0x04, 0x29, 0x38, 0x02, 0x21, 0x39, 0x80, 0x21, 0x59, 0x05, 0x19, 0x5A, 0x80, 0x19, 0x5B, 0x02, 0x11, 0x5B, 0x09, 0x11, 0x5C, 0x02, 0x11, 0x7D, 0x04, 0x09, 0x7D, 0x81, 0x09, 0x7E, 0x09, 0x9E, 0x03, 0x09, 0x7E, 0x04, 0x09, 0x9E, 0x03, 0x09, 0xBE, 0x01, 0x09, 0xDE, 0x01, 0x09, 0xFE, 0x03, 0x0A, 0x1E, 0x83, 0x0A, 0x3E, 0x12, 0x3E, 0x12, 0x5D, 0x12, 0x7D, 0x01, 0x1A, 0x9D, 0x8D, 0x1A, 0x9C, 0x22, 0x9C, 0x22, 0xBC, 0x2A, 0xBB, 0x2A, 0xDB, 0x32, 0xDB, 0x3A, 0xDB, 0x3A, 0xDA, 0x42, 0xDA, 0x4A, 0xDA, 0x52, 0xFA, 0x5A, 0xDA, 0x62, 0xBA, 0x6A, 0xBA, 0x01, 0x72, 0x99, 0x8C, 0x7A, 0x99, 0x7A, 0x98, 0x7A, 0x78, 0x72, 0x57, 0x6A, 0x57, 0x5A, 0x77, 0x52, 0xB8, 0x4B, 0x5A, 0x44, 0x3C, 0x34, 0x7D, 0x24, 0x7D, 0x14, 0x7E, 0x14, 0x7F, 0x01, 0x0C, 0x7F, 0x07, 0x04, 0x7F, 0x04, 0x04, 0x5F, 0x07, 0x04, 0x3F, 0x8A, 0x04, 0x5F, 0x04, 0x9F, 0x0C, 0xFE, 0x1D, 0x3E, 0x35, 0x3D, 0x65, 0x9E, 0x8D, 0x1D, 0x72, 0xF5, 0x82, 0x53, 0x9A, 0x54, 0x9A, 0x13, 0x01, 0xA2, 0x14, 0x87, 0x9A, 0x15, 0x92, 0x14, 0x71, 0x71, 0x71, 0xD3, 0x61, 0x92, 0x59, 0x92, 0x59, 0x91, 0x51, 0x92, 0x01, 0x51, 0x91, 0x82, 0x49, 0x71, 0x49, 0x70, 0x49, 0x71, 0x03, 0x41, 0x70, 0x80, 0x41, 0x4F, 0x02, 0x39, 0x4F, 0x80, 0x39, 0x2F, 0x02, 0x31, 0x2E, 0x01, 0x31, 0x4E, 0x02, 0x31, 0x2E, 0x80, 0x31, 0x0E, 0x01, 0x31, 0x2E, 0x07, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x80, + 0x29, 0x2D, 0x1A, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x09, 0x29, 0x0D, 0x02, 0x29, 0x2E, 0x84, 0x21, 0x0E, 0x19, 0x0F, 0x19, 0x10, 0x19, 0x31, 0x19, 0x72, 0x01, 0x19, 0x93, 0x84, 0x21, 0xD4, 0x21, 0xB4, 0x19, 0x52, 0x10, 0xEF, 0x19, 0x0F, 0x01, 0x21, 0x2F, 0x85, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x0D, 0x21, 0x0D, 0x29, 0x0D, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x82, 0x28, 0xEC, 0x29, 0x0D, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x20, 0xEC, 0x03, 0x29, 0x0D, 0x80, 0x21, 0x0D, 0x05, 0x29, 0x0D, 0x8C, 0x29, 0x2D, 0x29, 0x2E, 0x21, 0x4E, 0x11, 0x2E, 0x00, 0xED, 0x01, 0x8F, 0x4C, 0x9B, 0x23, 0xD8, 0x1C, 0x18, 0x14, 0x39, 0x14, 0x18, 0x14, 0x39, 0x03, 0xD8, 0x01, 0x0B, 0xF8, 0x80, 0x13, 0xF8, 0x01, 0x13, 0xD8, 0x01, 0x1B, 0xD8, 0x88, 0x23, 0xF8, 0x2B, 0xF8, 0x3C, 0x19, 0x54, 0x5A, 0x00, 0xEC, 0x19, 0x2D, 0x21, 0x2D, 0x29, 0x2D, 0x21, 0x0D, 0x01, 0x21, 0x2D, 0x88, 0x29, 0x2D, 0x21, 0x0D, 0x19, 0x0D, 0x11, 0x2D, 0x09, 0x4E, 0x01, 0x6F, 0x34, 0x19, 0x24, 0x39, 0x13, 0xF8, 0x01, 0x0C, 0x18, 0x80, 0x04, 0x18, 0x01, 0x04, 0x19, 0x01, 0x0C, 0x19, 0x8B, 0x14, + 0x19, 0x24, 0x19, 0x2B, 0xD8, 0x01, 0x4E, 0x00, 0xED, 0x11, 0x2E, 0x21, 0x4E, 0x21, 0x2E, 0x21, 0x2D, 0x20, 0xED, 0x21, 0x0D, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x03, 0x21, 0x2D, 0x84, 0x11, 0x2D, 0x09, 0x0D, 0x01, 0x6E, 0x44, 0x7A, 0x1B, 0xF8, 0x01, 0x14, 0x19, 0x83, 0x0C, 0x18, 0x0B, 0xF8, 0x0C, 0x19, 0x03, 0xF8, 0x01, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x08, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x3F, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x16, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0D, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x7F, 0x29, 0x0D, 0x11, 0x29, 0x0D, 0x6D, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x05, 0x29, 0x2D, 0x10, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x1D, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x0B, 0x29, 0x2D, 0x0D, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x25, 0x29, 0x0D, 0x07, 0x31, 0x2D, 0x81, 0x31, 0x0D, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x04, 0x31, 0x2E, 0x03, 0x39, 0x2E, 0x88, 0x39, 0x0E, 0x39, 0x0D, 0x38, 0xED, 0x40, 0xCD, 0x40, 0x8C, 0x71, 0xB0, 0xBB, 0x57, 0xC3, 0x37, 0xCB, 0x17, 0x02, 0xD2, 0xF6, 0x01, 0xD2, 0xD6, 0x04, 0xCA, 0xD6, 0x8A, 0xCA, 0xD7, 0xC2, 0xD8, 0xC2, 0xF9, 0xBB, 0x19, 0xB3, 0x1A, 0x8A, 0x17, 0x61, 0x34, 0x51, 0x14, 0x40, 0xF4, 0x39, 0x15, 0x39, 0x35, 0x04, 0x31, 0x36, 0x01, 0x31, 0x37, 0x03, 0x29, 0x37, 0x03, 0x29, 0x38, 0x82, 0x21, 0x38, 0x21, 0x59, + 0x21, 0x39, 0x02, 0x21, 0x59, 0x80, 0x21, 0x5A, 0x03, 0x19, 0x5A, 0x01, 0x19, 0x5B, 0x02, 0x11, 0x5B, 0x07, 0x11, 0x7C, 0x03, 0x11, 0x7D, 0x03, 0x09, 0x7D, 0x81, 0x09, 0x7E, 0x09, 0x9E, 0x07, 0x01, 0x9E, 0x84, 0x01, 0xBE, 0x01, 0xBF, 0x01, 0xBE, 0x01, 0xBF, 0x01, 0xBE, 0x01, 0x01, 0xDF, 0x81, 0x01, 0xFF, 0x02, 0x1F, 0x02, 0x02, 0x3F, 0x01, 0x02, 0x5F, 0x81, 0x02, 0x7E, 0x0A, 0x7E, 0x01, 0x0A, 0x9E, 0x80, 0x12, 0xBE, 0x01, 0x12, 0xDD, 0x80, 0x12, 0xFD, 0x01, 0x1A, 0xFD, 0x81, 0x23, 0x1D, 0x23, 0x1C, 0x01, 0x2B, 0x3C, 0x80, 0x33, 0x5C, 0x01, 0x3B, 0x5B, 0x86, 0x43, 0x3B, 0x4B, 0x3B, 0x52, 0xFA, 0x5B, 0x1A, 0x5A, 0xFA, 0x6B, 0x1A, 0x6A, 0xFA, 0x01, 0x62, 0xD9, 0x87, 0x5A, 0xD9, 0x4A, 0xD8, 0x43, 0x19, 0x3B, 0x9B, 0x34, 0x7D, 0x24, 0x9D, 0x1C, 0x9E, 0x14, 0x9F, 0x01, 0x0C, 0x9F, 0x03, 0x04, 0x9F, 0x01, 0x04, 0x7F, 0x02, 0x04, 0x9F, 0x80, 0x04, 0x7F, 0x06, 0x04, 0x5F, 0x02, 0x04, 0x3F, 0x94, 0x04, 0x5F, 0x04, 0x7F, 0x04, 0x9F, 0x04, 0xBF, 0x0C, 0xFE, 0x1D, 0x3E, 0x35, 0x5D, 0x5D, 0x7E, 0x85, 0x1D, 0x73, 0x15, 0x82, 0x53, 0x9A, 0x53, 0xA2, 0x34, 0xA2, 0x14, 0xA1, 0xF4, 0xA2, 0x35, 0x92, 0x35, 0x71, 0x72, 0x69, 0x92, 0x61, 0x92, 0x59, 0x71, 0x01, 0x59, 0x92, 0x81, 0x51, 0x92, 0x51, 0x91, 0x01, 0x49, 0x91, 0x80, 0x49, 0x70, 0x03, 0x41, 0x70, 0x80, 0x41, 0x4F, 0x02, 0x39, 0x4F, 0x81, 0x31, 0x2E, 0x39, 0x4F, 0x01, 0x31, 0x2E, 0x01, 0x31, 0x4E, 0x01, 0x31, 0x2E, 0x80, 0x31, 0x0E, 0x01, 0x31, 0x2E, 0x80, 0x31, 0x2D, 0x0A, 0x29, + 0x0D, 0x80, 0x29, 0x2D, 0x17, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x85, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x21, 0x0E, 0x8C, 0x21, 0x2F, 0x19, 0x0F, 0x19, 0x10, 0x19, 0x31, 0x19, 0x52, 0x19, 0x93, 0x19, 0xB4, 0x21, 0xD4, 0x21, 0xB4, 0x19, 0x52, 0x11, 0x10, 0x19, 0x0F, 0x21, 0x2F, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x10, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x08, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x0E, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x21, 0x0D, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x8B, 0x29, 0x0D, 0x21, 0x2D, 0x19, 0x0E, 0x11, 0x0E, 0x00, 0xED, 0x01, 0x90, 0x4C, 0x5A, 0x2B, 0xF8, 0x24, 0x19, 0x1C, 0x19, 0x13, 0xF8, 0x13, 0xD8, 0x01, 0x13, 0xF8, 0x83, 0x13, 0xD8, 0x13, 0xF9, 0x13, 0xF8, 0x13, 0xD8, 0x01, 0x1B, 0xD8, 0x85, 0x23, 0xD8, 0x2B, 0xF9, 0x33, 0xF9, 0x54, 0x5A, 0x00, 0xED, 0x19, 0x0D, 0x02, 0x21, 0x0D, 0x80, 0x21, 0x2D, 0x01, 0x29, 0x2D, 0x01, 0x21, 0x0D, 0x88, 0x19, 0x2D, 0x11, 0x2E, 0x01, 0x4E, 0x2B, 0x77, 0x34, 0x39, 0x1B, 0xF9, 0x13, 0xF8, 0x14, 0x39, 0x0B, 0xF8, 0x01, 0x0B, 0xF9, 0x89, 0x0C, 0x19, 0x14, 0x19, 0x1B, 0xD8, 0x2B, 0xF9, 0x0A, 0x52, 0x00, 0xED, + 0x09, 0x0D, 0x11, 0x0D, 0x19, 0x0D, 0x21, 0x0E, 0x01, 0x21, 0x0D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x21, 0x0D, 0x8A, 0x19, 0x2D, 0x09, 0x0C, 0x01, 0x6E, 0x44, 0x39, 0x23, 0xF8, 0x1B, 0xF9, 0x13, 0xF9, 0x13, 0xF8, 0x0B, 0xF8, 0x0B, 0xF9, 0x0B, 0xD8, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x40, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x28, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0C, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x3E, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x12, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x82, 0x28, 0xED, 0x29, 0x0D, 0x29, 0x2D, 0x12, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x14, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x39, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x1A, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x11, 0x29, 0x2D, 0x4B, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x18, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x2D, 0x1C, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x05, 0x29, 0x0D, 0x01, 0x31, 0x2D, 0x80, 0x29, 0x0D, 0x04, 0x31, 0x2D, 0x80, 0x31, 0x0D, 0x02, 0x31, 0x2D, 0x82, 0x31, 0x2E, 0x31, 0x0D, 0x31, 0x0E, 0x01, 0x31, 0x2E, 0x02, 0x39, 0x2E, 0x01, 0x39, 0x0D, 0x87, 0x38, 0xED, 0x40, 0xCD, 0x48, 0xAC, 0x81, 0xF2, 0xC3, 0x99, 0xC3, 0x37, 0xCB, 0x17, 0xCB, 0x16, 0x03, 0xD2, 0xF6, 0x03, 0xCA, 0xD6, 0x89, 0xCA, 0xD7, 0xC2, 0xD7, 0xC3, 0x19, 0xB2, 0xF9, 0x9A, 0x98, 0x69, 0x74, 0x48, 0xD2, + 0x40, 0xF3, 0x41, 0x14, 0x41, 0x35, 0x01, 0x39, 0x35, 0x80, 0x31, 0x35, 0x01, 0x31, 0x36, 0x03, 0x29, 0x36, 0x08, 0x29, 0x37, 0x82, 0x29, 0x38, 0x29, 0x58, 0x21, 0x38, 0x01, 0x21, 0x58, 0x03, 0x21, 0x59, 0x80, 0x21, 0x5A, 0x03, 0x19, 0x5A, 0x01, 0x19, 0x5B, 0x81, 0x11, 0x5B, 0x19, 0x5B, 0x01, 0x19, 0x5C, 0x80, 0x11, 0x5C, 0x04, 0x11, 0x7C, 0x01, 0x11, 0x7D, 0x80, 0x11, 0x9D, 0x01, 0x09, 0x9D, 0x81, 0x09, 0x9E, 0x09, 0x7E, 0x01, 0x09, 0x9E, 0x03, 0x01, 0x9E, 0x80, 0x01, 0x9F, 0x03, 0x01, 0xBF, 0x83, 0x01, 0xDF, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xFF, 0x01, 0x02, 0x1F, 0x80, 0x02, 0x3F, 0x01, 0x02, 0x5F, 0x80, 0x02, 0x7F, 0x01, 0x02, 0x9F, 0x01, 0x02, 0xBF, 0x01, 0x02, 0xDE, 0x82, 0x0A, 0xFE, 0x0B, 0x1E, 0x0B, 0x3E, 0x01, 0x13, 0x3E, 0x80, 0x13, 0x3D, 0x01, 0x1B, 0x5D, 0x01, 0x1B, 0x9D, 0x01, 0x23, 0xBD, 0x85, 0x2B, 0xBC, 0x33, 0x9C, 0x3B, 0xBC, 0x3B, 0x9C, 0x4B, 0xBC, 0x53, 0xDC, 0x02, 0x5B, 0xDB, 0x87, 0x53, 0xBB, 0x4B, 0xDB, 0x43, 0xFB, 0x3B, 0xDB, 0x2C, 0x1C, 0x24, 0x9D, 0x1C, 0xBE, 0x14, 0xBE, 0x01, 0x0C, 0xBF, 0x80, 0x0C, 0x9F, 0x09, 0x04, 0x9F, 0x03, 0x04, 0x7F, 0x80, 0x04, 0x5F, 0x01, 0x04, 0x7F, 0x02, 0x04, 0x5F, 0x81, 0x04, 0x7F, 0x04, 0x9F, 0x01, 0x04, 0xBF, 0x91, 0x04, 0xDE, 0x1D, 0x1E, 0x35, 0x3E, 0x5D, 0x9F, 0x85, 0x5E, 0x62, 0xF5, 0x82, 0x74, 0x9A, 0x74, 0xA2, 0x54, 0xA2, 0x14, 0xA1, 0xF4, 0xA2, 0x15, 0x9A, 0x34, 0x79, 0x92, 0x69, 0x72, 0x69, 0xB2, 0x61, 0x92, 0x59, 0xB2, 0x02, 0x51, 0x91, 0x01, 0x49, 0x91, + 0x82, 0x49, 0x70, 0x41, 0x70, 0x41, 0x50, 0x01, 0x41, 0x70, 0x81, 0x41, 0x6F, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x01, 0x39, 0x2F, 0x80, 0x39, 0x4E, 0x02, 0x31, 0x2E, 0x80, 0x31, 0x0E, 0x01, 0x31, 0x2E, 0x82, 0x31, 0x2D, 0x31, 0x0D, 0x31, 0x2D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x1E, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x2C, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x83, 0x28, 0xEC, 0x28, 0xED, 0x29, 0x0D, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x86, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x30, 0x19, 0x30, 0x19, 0x72, 0x19, 0x93, 0x21, 0xB4, 0x01, 0x21, 0xD4, 0x82, 0x19, 0x72, 0x11, 0x10, 0x19, 0x10, 0x01, 0x21, 0x2F, 0x01, 0x29, 0x2E, 0x0A, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x0F, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x28, 0xEC, 0x06, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x8A, 0x29, 0x2D, 0x29, 0x2E, 0x21, 0x2E, 0x10, 0xED, 0x00, 0xED, 0x09, 0x90, 0x4C, 0x1A, 0x33, 0xD9, 0x2B, 0xD9, 0x23, 0xD8, 0x1B, 0xB8, 0x01, 0x1B, 0xD9, 0x80, 0x1B, 0xB8, 0x03, 0x1B, 0xD9, 0x01, 0x23, 0xD9, 0x85, 0x23, 0xD8, 0x2B, 0xB8, 0x33, 0xB8, 0x54, 0x5A, 0x01, 0x0D, + 0x19, 0x0D, 0x01, 0x21, 0x0D, 0x02, 0x29, 0x2D, 0x8D, 0x21, 0x0D, 0x21, 0x2D, 0x21, 0x0D, 0x19, 0x0D, 0x11, 0x2E, 0x01, 0x0E, 0x43, 0xF9, 0x3C, 0x3A, 0x23, 0xD9, 0x1B, 0xB8, 0x1B, 0xD9, 0x1B, 0xF9, 0x13, 0xD9, 0x13, 0xF9, 0x01, 0x1B, 0xD9, 0x86, 0x2C, 0x1A, 0x3C, 0x1A, 0x22, 0xD5, 0x00, 0x8C, 0x10, 0xEE, 0x19, 0x0E, 0x19, 0x0D, 0x02, 0x21, 0x0D, 0x83, 0x29, 0x2D, 0x29, 0x0D, 0x21, 0x0D, 0x29, 0x0D, 0x02, 0x21, 0x0D, 0x86, 0x21, 0x0C, 0x19, 0x0C, 0x08, 0xEC, 0x09, 0x4E, 0x44, 0x19, 0x2B, 0xD8, 0x23, 0xB8, 0x01, 0x1B, 0xB9, 0x80, 0x1B, 0xD9, 0x01, 0x13, 0xB9, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x35, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x7F, 0x29, 0x0D, 0x1A, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x56, 0x29, 0x0D, 0x17, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x2C, 0x29, 0x2D, 0x55, 0x29, 0x0D, 0x25, 0x29, 0x2D, 0x1C, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x06, 0x29, 0x0D, 0x81, 0x31, 0x2D, 0x29, 0x0D, 0x04, 0x31, 0x2D, 0x81, 0x31, 0x0D, 0x31, 0x2E, 0x02, 0x31, 0x2D, 0x80, 0x31, 0x0D, 0x02, 0x31, 0x2E, 0x01, 0x39, 0x2E, 0x88, 0x39, 0x0E, 0x39, 0x0D, 0x38, 0xED, 0x40, 0xCD, 0x40, 0x6B, 0x82, 0x12, 0xBB, 0x78, 0xC3, 0x37, 0xCB, 0x37, 0x02, 0xD3, 0x17, 0x80, 0xD2, 0xF6, 0x02, 0xCA, 0xF6, 0x80, 0xCA, 0xF7, 0x01, 0xC2, 0xF7, 0x8A, 0xC3, 0x38, 0xC3, 0x59, 0x79, 0x93, 0x58, 0xD1, 0x48, 0xD2, 0x40, 0xD2, 0x39, 0x13, 0x39, 0x14, 0x39, 0x34, 0x39, 0x35, 0x39, 0x55, 0x01, 0x31, 0x35, 0x05, 0x29, 0x35, 0x05, 0x29, 0x36, 0x02, 0x29, 0x56, 0x02, 0x31, 0x57, 0x82, + 0x29, 0x57, 0x31, 0x57, 0x29, 0x57, 0x01, 0x29, 0x58, 0x80, 0x29, 0x78, 0x01, 0x29, 0x58, 0x02, 0x21, 0x38, 0x85, 0x19, 0x38, 0x19, 0x18, 0x19, 0x38, 0x19, 0x39, 0x19, 0x19, 0x19, 0x39, 0x01, 0x19, 0x5A, 0x02, 0x19, 0x5B, 0x81, 0x11, 0x5B, 0x11, 0x5C, 0x01, 0x11, 0x7C, 0x80, 0x11, 0x9D, 0x01, 0x09, 0x7D, 0x80, 0x09, 0x9D, 0x02, 0x09, 0x9E, 0x80, 0x01, 0x9E, 0x01, 0x01, 0xBE, 0x81, 0x01, 0xBF, 0x01, 0xBE, 0x01, 0x01, 0xBF, 0x80, 0x01, 0xDF, 0x01, 0x01, 0xFF, 0x01, 0x02, 0x1F, 0x01, 0x02, 0x3F, 0x81, 0x02, 0x5F, 0x02, 0x7F, 0x01, 0x02, 0x9F, 0x80, 0x02, 0xBF, 0x01, 0x02, 0xDF, 0x80, 0x02, 0xFF, 0x01, 0x03, 0x1F, 0x87, 0x03, 0x3F, 0x03, 0x5F, 0x0B, 0x5F, 0x0B, 0x7F, 0x0B, 0x7E, 0x13, 0x9F, 0x13, 0x9E, 0x13, 0xBE, 0x01, 0x13, 0xDE, 0x01, 0x13, 0xFE, 0x81, 0x1C, 0x1E, 0x1B, 0xFD, 0x01, 0x2C, 0x1D, 0x82, 0x3C, 0x3D, 0x3C, 0x3C, 0x44, 0x5D, 0x01, 0x44, 0x5C, 0x86, 0x44, 0x7C, 0x3C, 0x7D, 0x34, 0x7D, 0x2C, 0x7D, 0x24, 0x9D, 0x1C, 0xBE, 0x14, 0xDE, 0x02, 0x0C, 0xDF, 0x0A, 0x04, 0xBF, 0x02, 0x04, 0x9F, 0x04, 0x04, 0x7F, 0x82, 0x04, 0x5F, 0x04, 0x7F, 0x04, 0x9F, 0x01, 0x04, 0xBF, 0x97, 0x04, 0xDF, 0x0D, 0x1E, 0x1D, 0x5F, 0x2D, 0x5E, 0x55, 0x7F, 0x85, 0x7F, 0x63, 0x36, 0x7A, 0x74, 0x9A, 0x74, 0xA2, 0x54, 0xA2, 0x14, 0x99, 0xD3, 0x99, 0xF4, 0xA2, 0x55, 0x89, 0xD3, 0x71, 0x72, 0x69, 0xB2, 0x61, 0x92, 0x59, 0x92, 0x59, 0x91, 0x51, 0x91, 0x51, 0xB1, 0x49, 0x91, 0x49, 0x90, 0x01, 0x49, 0x70, 0x02, 0x41, 0x70, 0x81, 0x41, 0x6F, 0x41, + 0x4F, 0x02, 0x39, 0x4F, 0x81, 0x39, 0x2E, 0x39, 0x4E, 0x04, 0x31, 0x2E, 0x80, 0x31, 0x0D, 0x01, 0x31, 0x2E, 0x80, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x13, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x17, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x21, 0x0D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x89, 0x21, 0x0E, 0x29, 0x2E, 0x21, 0x0E, 0x21, 0x2F, 0x21, 0x0F, 0x21, 0x2F, 0x19, 0x30, 0x19, 0x72, 0x19, 0x93, 0x21, 0xB4, 0x01, 0x21, 0xD4, 0x82, 0x19, 0x51, 0x11, 0x10, 0x19, 0x0F, 0x01, 0x21, 0x0F, 0x01, 0x29, 0x0E, 0x07, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x03, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x11, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x83, 0x21, 0x0D, 0x29, 0x2D, 0x21, 0x0D, 0x21, 0x0C, 0x01, 0x29, 0x2D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x21, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x89, 0x29, 0x2D, 0x21, 0x2D, 0x21, 0x2E, 0x19, 0x0E, 0x00, 0xCD, 0x11, 0x70, 0x53, 0xFA, 0x3B, 0xB9, 0x3B, 0xD9, 0x33, 0xD9, 0x01, 0x2B, 0xB9, 0x83, 0x23, 0xB9, 0x2B, 0xD9, 0x2B, 0xDA, 0x23, 0xDA, 0x02, 0x23, 0xB9, 0x87, 0x2B, 0xD9, 0x2B, 0xB8, 0x33, 0xD9, 0x3B, 0xD9, 0x5C, 0x3A, 0x09, + 0x2E, 0x18, 0xED, 0x20, 0xED, 0x01, 0x21, 0x0D, 0x8C, 0x29, 0x2D, 0x21, 0x0D, 0x29, 0x0D, 0x29, 0x2D, 0x21, 0x0D, 0x21, 0x0E, 0x11, 0x0E, 0x09, 0x4F, 0x5C, 0x3B, 0x3B, 0xD9, 0x2B, 0x99, 0x23, 0x78, 0x23, 0x99, 0x02, 0x23, 0xB9, 0x87, 0x23, 0x99, 0x2B, 0x99, 0x33, 0xBA, 0x4B, 0xFB, 0x64, 0x3B, 0x00, 0xAD, 0x10, 0xAD, 0x18, 0xEE, 0x01, 0x21, 0x0E, 0x81, 0x29, 0x0D, 0x20, 0xED, 0x01, 0x29, 0x0D, 0x80, 0x21, 0x0D, 0x01, 0x29, 0x0D, 0x87, 0x29, 0x2D, 0x20, 0xEC, 0x29, 0x0D, 0x18, 0xEC, 0x10, 0xCC, 0x09, 0x0D, 0x54, 0x1A, 0x33, 0x98, 0x01, 0x2B, 0xB9, 0x01, 0x23, 0xB9, 0x01, 0x23, 0x99, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x10, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x4C, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, + 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x1F, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x36, 0x29, 0x0D, 0x3F, 0x29, 0x2D, 0x55, 0x29, 0x0D, 0x25, 0x29, 0x2D, 0x25, 0x29, 0x0D, 0x05, 0x31, 0x2D, 0x02, 0x31, 0x2E, 0x01, 0x31, 0x2D, 0x80, 0x31, 0x2E, 0x01, 0x31, 0x2D, 0x01, 0x39, 0x0D, 0x88, 0x39, 0x0E, 0x39, 0x0D, 0x38, 0xED, 0x38, 0xCC, 0x48, 0x8C, 0x8A, 0x53, 0xC3, 0x98, 0xC3, 0x37, 0xCB, 0x37, 0x01, 0xD3, 0x17, 0x80, 0xCB, 0x17, 0x02, 0xCA, 0xF6, 0x8A, 0xCA, 0xF7, 0xC3, 0x17, 0xC3, 0x38, 0xBB, 0x38, 0xA2, 0xB7, 0x79, 0xD3, 0x40, 0x6F, 0x40, 0xB1, 0x40, 0xD1, 0x38, 0xF2, 0x39, 0x13, 0x01, 0x31, 0x13, 0x02, 0x31, 0x34, 0x82, 0x31, 0x35, 0x31, 0x75, 0x39, 0x75, 0x01, 0x39, 0x96, 0x02, 0x39, 0xB6, 0x81, 0x41, 0xB6, 0x39, 0xB6, 0x02, 0x41, 0xB6, 0x01, 0x41, 0xD7, 0x83, 0x41, 0xD6, 0x41, 0xD7, 0x41, 0xD6, 0x49, 0xD7, 0x02, 0x49, 0xF7, 0x81, 0x49, 0xD7, 0x49, 0xF7, 0x01, 0x49, 0xD7, 0x01, 0x49, 0xF7, 0x01, 0x49, 0xF8, 0x01, 0x4A, 0x18, 0x87, 0x4A, 0x19, 0x4A, 0x39, 0x4A, 0x19, 0x4A, 0x1A, 0x49, 0xFA, 0x41, 0xDA, 0x31, 0x79, 0x29, 0x38, 0x01, 0x21, 0x39, 0x88, 0x21, 0x3A, 0x19, 0x3A, 0x19, 0x3B, 0x11, 0x5B, 0x11, 0x5C, 0x11, 0x7C, 0x11, 0x7D, 0x09, 0x7D, 0x09, 0x9D, 0x01, 0x09, 0x9E, 0x80, 0x01, 0x9E, 0x01, 0x09, 0xBE, 0x01, 0x01, 0xBE, 0x02, 0x01, 0xDF, 0x80, 0x01, 0xFF, 0x01, 0x02, 0x1F, 0x81, 0x02, 0x3F, 0x02, 0x5F, 0x01, 0x02, 0x7F, 0x81, 0x02, 0x9F, 0x02, 0xBF, + 0x01, 0x02, 0xDF, 0x80, 0x02, 0xFF, 0x01, 0x03, 0x1F, 0x81, 0x03, 0x3F, 0x03, 0x5F, 0x01, 0x03, 0x7F, 0x80, 0x03, 0x9F, 0x01, 0x0B, 0xBF, 0x01, 0x0B, 0xDF, 0x87, 0x0B, 0xFF, 0x0C, 0x1F, 0x14, 0x3F, 0x0C, 0x3F, 0x0C, 0x3E, 0x14, 0x5E, 0x14, 0x7E, 0x1C, 0x7E, 0x01, 0x24, 0x9D, 0x80, 0x24, 0x7D, 0x01, 0x34, 0x9D, 0x87, 0x34, 0xBD, 0x34, 0xDD, 0x2C, 0xDD, 0x2C, 0xFE, 0x24, 0xDE, 0x1C, 0xDE, 0x14, 0xDE, 0x14, 0xFE, 0x01, 0x0C, 0xDF, 0x06, 0x04, 0xDF, 0x05, 0x04, 0xBF, 0x04, 0x04, 0x9F, 0x03, 0x04, 0x7F, 0x80, 0x04, 0xBF, 0x01, 0x04, 0xDF, 0x98, 0x04, 0xFF, 0x0D, 0x1E, 0x15, 0x3E, 0x2D, 0x5E, 0x4D, 0x7F, 0x7D, 0x7F, 0x63, 0x36, 0x7A, 0x94, 0x92, 0x74, 0x9A, 0x54, 0xA2, 0x14, 0x99, 0xD3, 0xA1, 0xF4, 0xA2, 0x14, 0x92, 0x34, 0x71, 0x51, 0x69, 0x92, 0x61, 0x92, 0x59, 0x91, 0x51, 0x71, 0x51, 0x92, 0x51, 0xB1, 0x51, 0x91, 0x49, 0x91, 0x49, 0x90, 0x01, 0x49, 0x70, 0x01, 0x41, 0x70, 0x80, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x01, 0x39, 0x2F, 0x82, 0x39, 0x2E, 0x39, 0x4E, 0x39, 0x2E, 0x01, 0x31, 0x2E, 0x80, 0x31, 0x0E, 0x01, 0x31, 0x0D, 0x01, 0x31, 0x2E, 0x80, 0x31, 0x0D, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x19, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x82, 0x28, 0xEC, 0x29, 0x0D, 0x31, 0x0D, 0x01, 0x28, 0xEC, 0x84, 0x28, 0xED, 0x29, 0x0D, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x02, + 0x21, 0x0E, 0x8D, 0x19, 0x0F, 0x19, 0x30, 0x19, 0x52, 0x19, 0x93, 0x21, 0xD4, 0x21, 0xF4, 0x21, 0xB3, 0x19, 0x51, 0x19, 0x10, 0x19, 0x0F, 0x21, 0x2F, 0x21, 0x0E, 0x29, 0x2E, 0x29, 0x0E, 0x04, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x21, 0x0D, 0x01, 0x29, 0x0D, 0x01, 0x21, 0x2D, 0x03, 0x29, 0x2D, 0x82, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x88, 0x21, 0x0D, 0x21, 0x0E, 0x18, 0xEE, 0x08, 0xCE, 0x19, 0x71, 0x63, 0xFB, 0x4B, 0x9A, 0x4B, 0xBA, 0x43, 0xBA, 0x03, 0x3B, 0x9A, 0x82, 0x33, 0x9A, 0x3B, 0xBA, 0x3C, 0x1B, 0x01, 0x3B, 0xFA, 0x8C, 0x3C, 0x1A, 0x3B, 0xD9, 0x43, 0xD9, 0x4C, 0x1A, 0x74, 0x9C, 0x19, 0x4F, 0x18, 0xED, 0x21, 0x0D, 0x29, 0x0D, 0x20, 0xEC, 0x21, 0x0D, 0x29, 0x0D, 0x20, 0xEC, 0x01, 0x21, 0x0D, 0x85, 0x20, 0xEE, 0x10, 0xCD, 0x5B, 0x78, 0x53, 0xBA, 0x43, 0x79, 0x3B, 0x79, 0x02, 0x3B, 0x9A, 0x01, 0x3B, 0xBA, 0x88, 0x43, 0xBB, 0x3B, 0x5A, 0x43, 0x39, 0x4B, 0x59, 0x5B, 0x9A, 0x63, 0x59, 0x10, 0xAE, 0x18, 0xCE, 0x20, 0xEE, 0x01, 0x29, 0x0E, 0x81, + 0x29, 0x0D, 0x29, 0x2E, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x8A, 0x20, 0xED, 0x10, 0xCD, 0x19, 0x2E, 0x64, 0x1A, 0x4B, 0xB9, 0x43, 0xBA, 0x3B, 0x99, 0x3B, 0x79, 0x3B, 0x9A, 0x3B, 0xBB, 0x3B, 0x9A, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x16, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x1D, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x24, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x89, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x16, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x14, 0x29, 0x0D, 0x80, + 0x29, 0x2D, 0x1D, 0x29, 0x0D, 0x09, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x27, 0x29, 0x2D, 0x5C, 0x29, 0x0D, 0x1D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x2D, 0x25, 0x29, 0x0D, 0x05, 0x31, 0x2D, 0x81, 0x31, 0x0D, 0x31, 0x2E, 0x01, 0x31, 0x2D, 0x80, 0x31, 0x2E, 0x02, 0x31, 0x2D, 0x02, 0x39, 0x0D, 0x86, 0x38, 0xED, 0x38, 0xCC, 0x38, 0x6B, 0x81, 0xF2, 0xBB, 0x57, 0xC3, 0x37, 0xCB, 0x37, 0x01, 0xD3, 0x37, 0x03, 0xCB, 0x17, 0x88, 0xC3, 0x17, 0xC3, 0x37, 0xC3, 0x58, 0x92, 0x55, 0x61, 0x10, 0x48, 0xAF, 0x40, 0xD0, 0x40, 0xF1, 0x38, 0xF1, 0x01, 0x39, 0x12, 0x80, 0x39, 0x33, 0x01, 0x31, 0x33, 0x02, 0x31, 0x54, 0x81, 0x39, 0x54, 0x39, 0x74, 0x01, 0x39, 0x95, 0x85, 0x39, 0x94, 0x41, 0x95, 0x39, 0x94, 0x41, 0x94, 0x41, 0x95, 0x41, 0xB5, 0x07, 0x41, 0xB4, 0x04, 0x49, 0xB4, 0x80, 0x49, 0xB5, 0x01, 0x49, 0xB4, 0x06, 0x51, 0xD5, 0x83, 0x51, 0xF6, 0x51, 0xD6, 0x49, 0xD6, 0x51, 0xD7, 0x01, 0x51, 0xF8, 0x89, 0x41, 0xD9, 0x39, 0x78, 0x31, 0x58, 0x29, 0x58, 0x29, 0x38, 0x21, 0x39, 0x21, 0x59, 0x19, 0x39, 0x19, 0x5A, 0x11, 0x5B, 0x01, 0x11, 0x7C, 0x80, 0x11, 0x9D, 0x01, 0x09, 0x9D, 0x02, 0x09, 0xBE, 0x01, 0x09, 0xDE, 0x80, 0x01, 0xDE, 0x01, 0x01, 0xFF, 0x83, 0x02, 0x1F, 0x02, 0x3F, 0x02, 0x5F, 0x02, 0x7F, 0x01, 0x02, 0x9F, 0x01, 0x02, 0xDF, 0x01, 0x02, 0xFF, 0x84, 0x03, 0x1F, 0x03, 0x3F, 0x03, 0x5F, 0x03, 0x7F, 0x03, 0x9F, 0x01, 0x03, 0xBF, 0x01, 0x03, 0xDF, 0x80, 0x0B, 0xFF, 0x01, 0x0C, 0x1F, 0x80, 0x0C, 0x3F, 0x01, 0x0C, 0x5F, 0x01, 0x0C, + 0x7F, 0x85, 0x0C, 0xBF, 0x0C, 0xBE, 0x14, 0xDF, 0x14, 0xDE, 0x1C, 0xFE, 0x1C, 0xDE, 0x01, 0x24, 0xFE, 0x01, 0x25, 0x1E, 0x80, 0x1D, 0x1E, 0x01, 0x1D, 0x3E, 0x83, 0x15, 0x1E, 0x0D, 0x1E, 0x0C, 0xFF, 0x0D, 0x1F, 0x04, 0x04, 0xFF, 0x06, 0x04, 0xDF, 0x03, 0x04, 0xBF, 0x06, 0x04, 0x9F, 0x80, 0x04, 0xBF, 0x01, 0x04, 0xFF, 0x91, 0x05, 0x1F, 0x0D, 0x5F, 0x15, 0x3E, 0x2D, 0x7F, 0x4D, 0x9F, 0x75, 0xBF, 0x63, 0x97, 0x6A, 0x74, 0x92, 0x74, 0x9A, 0x54, 0xA2, 0x34, 0x99, 0xD3, 0xA1, 0xF4, 0xA2, 0x34, 0xA2, 0x55, 0x79, 0x92, 0x69, 0x72, 0x61, 0x92, 0x01, 0x59, 0x92, 0x02, 0x51, 0x91, 0x82, 0x49, 0x91, 0x49, 0x90, 0x49, 0x70, 0x02, 0x41, 0x70, 0x02, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x82, 0x39, 0x2E, 0x31, 0x2E, 0x39, 0x2E, 0x06, 0x31, 0x2E, 0x83, 0x31, 0x0D, 0x31, 0x2D, 0x29, 0x0D, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x81, 0x31, 0x0D, 0x28, 0xED, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0D, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x82, 0x31, 0x2D, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x81, 0x21, 0x0D, 0x20, 0xED, 0x01, 0x21, 0x0E, 0x8B, 0x19, 0x0F, 0x19, 0x30, 0x19, 0x72, 0x19, 0x93, 0x21, 0xB4, 0x21, 0xF4, 0x21, 0x93, 0x19, 0x51, 0x19, 0x10, 0x19, 0x0F, 0x21, 0x0F, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x03, 0x29, 0x0D, 0x83, + 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x21, 0x2D, 0x80, 0x21, 0x0D, 0x03, 0x21, 0x2D, 0x01, 0x21, 0x2E, 0x02, 0x21, 0x2D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x87, 0x20, 0xED, 0x20, 0xEE, 0x10, 0x8D, 0x21, 0x30, 0x73, 0xFC, 0x5B, 0x9A, 0x5B, 0x7B, 0x53, 0x5A, 0x01, 0x4B, 0x3A, 0x84, 0x4B, 0x5A, 0x4B, 0x7A, 0x4B, 0x5A, 0x4B, 0x7A, 0x5C, 0x1C, 0x01, 0x4B, 0xDA, 0x01, 0x4B, 0xBA, 0x86, 0x53, 0xB9, 0x5B, 0xDA, 0x74, 0x3B, 0x31, 0xB1, 0x20, 0xEE, 0x20, 0xED, 0x28, 0xED, 0x03, 0x29, 0x0D, 0x8A, 0x28, 0xED, 0x28, 0xEE, 0x18, 0x8D, 0x4A, 0x34, 0x6B, 0x9A, 0x5B, 0x39, 0x53, 0x39, 0x53, 0x7B, 0x53, 0x7A, 0x53, 0x7B, 0x4B, 0x7A, 0x01, 0x4B, 0x5A, 0x88, 0x53, 0x5B, 0x5B, 0x7B, 0x5B, 0x3A, 0x5B, 0x19, 0x63, 0x19, 0x6B, 0x39, 0x41, 0xF3, 0x10, 0x4C, 0x28, 0xEE, 0x02, 0x28, 0xED, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x20, 0xED, 0x82, 0x18, 0xAC, 0x10, 0xCD, 0x6B, 0xDA, 0x01, 0x5B, 0x9A, 0x84, 0x53, 0x7A, 0x53, 0x5A, 0x4B, 0x5A, 0x4B, 0x7B, 0x4B, 0x5A, 0x02, 0x28, 0xEC, 0x03, 0x29, + 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x05, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x37, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x11, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x6A, 0x29, 0x0D, 0x1E, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x63, 0x29, 0x0D, 0x15, 0x29, 0x2D, 0x2D, 0x29, 0x0D, 0x05, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x02, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x01, 0x39, 0x0D, 0x86, 0x38, 0xED, 0x38, 0xCC, 0x40, 0x8C, 0x79, 0xF2, 0xC3, 0x98, 0xC3, 0x37, 0xCB, 0x37, 0x04, 0xCB, 0x17, 0x8A, 0xC3, 0x17, 0xC3, 0x37, 0xB2, 0xF7, 0x92, 0x75, 0x50, 0xCE, 0x40, 0x8E, 0x40, 0xCF, 0x40, 0xF0, 0x39, 0x10, 0x39, 0x11, 0x39, 0x32, + 0x01, 0x39, 0x52, 0x80, 0x41, 0x73, 0x03, 0x41, 0x94, 0x84, 0x41, 0x73, 0x39, 0x73, 0x41, 0x73, 0x41, 0x93, 0x41, 0x94, 0x09, 0x41, 0x93, 0x80, 0x49, 0xB3, 0x01, 0x49, 0x92, 0x80, 0x49, 0xB3, 0x02, 0x49, 0xB2, 0x81, 0x49, 0x92, 0x49, 0x93, 0x02, 0x49, 0xB3, 0x04, 0x51, 0xB3, 0x83, 0x51, 0xD4, 0x51, 0xB4, 0x51, 0xD4, 0x51, 0xB4, 0x02, 0x51, 0xD5, 0x80, 0x51, 0xD6, 0x01, 0x51, 0xF7, 0x01, 0x52, 0x18, 0x85, 0x51, 0xF8, 0x49, 0xD8, 0x41, 0xB8, 0x31, 0x98, 0x29, 0x78, 0x21, 0x79, 0x01, 0x19, 0x5A, 0x01, 0x11, 0x7B, 0x81, 0x11, 0x9C, 0x09, 0x9D, 0x01, 0x09, 0xBD, 0x81, 0x09, 0xDD, 0x09, 0xDE, 0x01, 0x09, 0xFE, 0x82, 0x02, 0x1E, 0x02, 0x3E, 0x02, 0x5F, 0x01, 0x02, 0x7F, 0x80, 0x02, 0x9F, 0x01, 0x02, 0xDF, 0x01, 0x03, 0x1F, 0x84, 0x03, 0x3F, 0x03, 0x5F, 0x03, 0x7F, 0x03, 0x9F, 0x03, 0xBF, 0x02, 0x03, 0xDF, 0x01, 0x03, 0xFF, 0x81, 0x04, 0x1F, 0x04, 0x3F, 0x01, 0x04, 0x5F, 0x87, 0x0C, 0x7F, 0x04, 0x9F, 0x04, 0xBF, 0x04, 0xDF, 0x0C, 0xFF, 0x0D, 0x1F, 0x0D, 0x3F, 0x0D, 0x1E, 0x04, 0x15, 0x3E, 0x80, 0x15, 0x5E, 0x02, 0x15, 0x5F, 0x01, 0x0D, 0x3F, 0x81, 0x05, 0x1F, 0x05, 0x3F, 0x02, 0x05, 0x1F, 0x01, 0x04, 0xFF, 0x80, 0x05, 0x1F, 0x03, 0x04, 0xFF, 0x04, 0x04, 0xDF, 0x01, 0x04, 0xBF, 0x01, 0x04, 0x9F, 0x01, 0x04, 0xBF, 0x82, 0x04, 0x9F, 0x04, 0xBF, 0x04, 0xDF, 0x01, 0x05, 0x1F, 0x91, 0x05, 0x3F, 0x0D, 0x7F, 0x15, 0x7F, 0x2D, 0x9F, 0x4D, 0xDF, 0x75, 0xFF, 0x5B, 0xD8, 0x62, 0x74, 0x8A, 0x74, 0x9A, 0x95, 0xA2, 0x34, 0xA1, 0xF3, 0xA1, + 0xF4, 0xA2, 0x14, 0xA2, 0x55, 0x89, 0xD3, 0x71, 0x71, 0x69, 0xB2, 0x01, 0x59, 0x91, 0x02, 0x51, 0x91, 0x01, 0x49, 0x91, 0x81, 0x49, 0x70, 0x41, 0x70, 0x01, 0x41, 0x50, 0x80, 0x41, 0x6F, 0x01, 0x41, 0x4F, 0x80, 0x39, 0x4F, 0x03, 0x39, 0x2E, 0x06, 0x31, 0x2E, 0x82, 0x31, 0x2D, 0x29, 0x0D, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x04, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x12, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0E, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x01, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x01, 0x21, 0x0E, 0x89, 0x19, 0x0F, 0x19, 0x30, 0x19, 0x51, 0x19, 0x93, 0x21, 0xB4, 0x21, 0xD4, 0x21, 0xB3, 0x19, 0x52, 0x19, 0x10, 0x19, 0x0F, 0x01, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x84, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x21, 0x2D, 0x21, 0x0D, 0x01, 0x21, 0x2E, 0x01, 0x21, 0x0E, 0x80, 0x19, 0x0E, 0x03, 0x21, 0x2E, 0x03, 0x21, 0x0D, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x84, 0x29, + 0x0E, 0x20, 0xCD, 0x18, 0x8D, 0x29, 0x31, 0x84, 0x1D, 0x01, 0x73, 0x7B, 0x87, 0x6B, 0x5B, 0x6B, 0x3B, 0x63, 0x3B, 0x6B, 0x7C, 0x6B, 0x5B, 0x6B, 0x9C, 0x29, 0xB4, 0x00, 0x2E, 0x02, 0x00, 0x0D, 0x84, 0x00, 0x2D, 0x00, 0x2C, 0x00, 0x0C, 0x00, 0x0B, 0x20, 0xAE, 0x01, 0x28, 0xAD, 0x80, 0x28, 0xCD, 0x01, 0x29, 0x0D, 0x01, 0x28, 0xED, 0x85, 0x28, 0xCD, 0x20, 0xAD, 0x39, 0x30, 0x7B, 0x5A, 0x73, 0x39, 0x73, 0x3A, 0x01, 0x6B, 0x3B, 0x01, 0x63, 0x3B, 0x80, 0x63, 0x5B, 0x01, 0x63, 0x3B, 0x81, 0x63, 0x1B, 0x6B, 0x3B, 0x01, 0x73, 0x3B, 0x86, 0x7B, 0x1B, 0x7B, 0x1A, 0x83, 0x3A, 0x28, 0xCF, 0x20, 0x8D, 0x28, 0xCE, 0x28, 0xCD, 0x01, 0x28, 0xED, 0x05, 0x29, 0x0D, 0x87, 0x28, 0xED, 0x20, 0xCD, 0x20, 0xAD, 0x20, 0xEE, 0x7B, 0xDB, 0x6B, 0x7A, 0x6B, 0x7B, 0x63, 0x3A, 0x01, 0x6B, 0x5B, 0x81, 0x63, 0x3B, 0x5B, 0x3B, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x0C, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0B, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x12, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x10, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x26, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x0C, + 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x8D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x4F, 0x29, 0x0D, 0x17, 0x29, 0x2D, 0x62, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x13, 0x29, 0x2D, 0x2D, 0x29, 0x0D, 0x04, 0x31, 0x2D, 0x80, 0x31, 0x0D, 0x02, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x86, 0x39, 0x0D, 0x38, 0xED, 0x38, 0xCC, 0x38, 0x6B, 0x71, 0xB0, 0xBB, 0x77, 0xC3, 0x57, 0x04, 0xCB, 0x37, 0x8D, 0xC3, 0x37, 0xC3, 0x57, 0xBB, 0x78, 0x79, 0x91, 0x58, 0xCE, 0x40, 0x8D, 0x40, 0xCE, 0x38, 0xEF, 0x41, 0x10, 0x41, 0x30, 0x39, 0x31, 0x39, 0x51, 0x41, 0x52, 0x39, 0x52, 0x01, 0x41, 0x72, 0x01, 0x41, 0x73, 0x04, 0x41, 0x72, 0x04, 0x41, 0x92, 0x09, 0x49, 0x92, 0x04, 0x49, 0x91, 0x80, 0x49, 0xB2, 0x01, 0x49, 0x92, 0x01, 0x51, 0xB2, 0x02, 0x51, 0x92, 0x02, 0x51, 0xB2, 0x04, 0x51, 0xB3, 0x81, 0x51, 0xB4, 0x51, 0xD5, 0x01, 0x59, 0xF5, 0x81, 0x59, 0xF6, 0x51, 0xF6, 0x01, 0x51, 0xF7, 0x8D, 0x49, 0xF8, 0x41, 0xD8, 0x39, + 0xB8, 0x31, 0xB9, 0x29, 0x79, 0x21, 0x59, 0x19, 0x79, 0x19, 0x7A, 0x11, 0x7B, 0x11, 0x9C, 0x11, 0xBC, 0x11, 0xDC, 0x11, 0xDD, 0x11, 0xFD, 0x01, 0x0A, 0x1E, 0x8B, 0x0A, 0x3E, 0x0A, 0x7E, 0x02, 0x7E, 0x02, 0x9F, 0x02, 0xBF, 0x02, 0xDF, 0x02, 0xFF, 0x03, 0x1F, 0x03, 0x5F, 0x03, 0x7F, 0x03, 0x9F, 0x03, 0xBF, 0x02, 0x03, 0xDF, 0x01, 0x03, 0xFF, 0x01, 0x04, 0x1F, 0x01, 0x04, 0x5F, 0x86, 0x04, 0x7F, 0x04, 0x9F, 0x04, 0xBF, 0x04, 0xDF, 0x04, 0xFF, 0x05, 0x1F, 0x0D, 0x3F, 0x01, 0x0D, 0x5F, 0x06, 0x0D, 0x7F, 0x01, 0x0D, 0x9F, 0x01, 0x0D, 0x7F, 0x02, 0x05, 0x5F, 0x03, 0x05, 0x3F, 0x03, 0x05, 0x1F, 0x04, 0x04, 0xFF, 0x02, 0x04, 0xDF, 0x05, 0x04, 0xBF, 0x82, 0x04, 0xDF, 0x04, 0xFF, 0x05, 0x3F, 0x01, 0x05, 0x5F, 0x92, 0x0D, 0x7F, 0x15, 0x9F, 0x25, 0x9E, 0x45, 0xDF, 0x6E, 0x1F, 0x5C, 0x39, 0x5A, 0x74, 0x82, 0x74, 0x92, 0x54, 0xA2, 0x34, 0xA1, 0xF3, 0xA1, 0xD3, 0xA1, 0xF4, 0xAA, 0x35, 0x92, 0x14, 0x71, 0x51, 0x71, 0xB2, 0x61, 0x92, 0x59, 0x71, 0x02, 0x51, 0x91, 0x86, 0x49, 0x91, 0x49, 0x90, 0x49, 0x70, 0x41, 0x70, 0x41, 0x50, 0x41, 0x70, 0x41, 0x6F, 0x02, 0x39, 0x4F, 0x03, 0x39, 0x2E, 0x02, 0x31, 0x2E, 0x84, 0x31, 0x0D, 0x31, 0x2E, 0x31, 0x2D, 0x31, 0x2E, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x02, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x0F, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0C, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x80, 0x28, 0xED, + 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x21, 0x0E, 0x8B, 0x19, 0x0F, 0x19, 0x30, 0x19, 0x51, 0x19, 0x73, 0x21, 0xD4, 0x21, 0xF4, 0x21, 0xB3, 0x19, 0x51, 0x19, 0x10, 0x19, 0x0F, 0x21, 0x0F, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x12, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x07, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x2C, 0x04, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x21, 0x0D, 0x21, 0x2D, 0x01, 0x21, 0x2E, 0x01, 0x19, 0x0E, 0x03, 0x19, 0x2F, 0x81, 0x19, 0x2E, 0x21, 0x2F, 0x03, 0x21, 0x0E, 0x80, 0x21, 0x0D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x87, 0x28, 0xED, 0x20, 0xCD, 0x18, 0x8D, 0x31, 0x11, 0x93, 0xDD, 0x83, 0x5B, 0x83, 0x3B, 0x7B, 0x1B, 0x02, 0x7A, 0xFB, 0x84, 0x7B, 0x1B, 0x8B, 0x9D, 0x5A, 0x17, 0x20, 0x70, 0x20, 0x2F, 0x03, 0x18, 0x0E, 0x01, 0x18, 0x0D, 0x80, 0x18, 0x0C, 0x01, 0x28, 0x8D, 0x89, 0x30, 0xCD, 0x28, 0xCD, 0x30, 0xED, 0x28, 0xED, 0x28, 0xAD, 0x28, 0xAE, 0x20, 0x2D, 0x7A, 0xB8, 0x82, 0xFA, 0x7A, 0xFA, 0x01, 0x83, 0x1B, 0x01, 0x7B, 0x1B, 0x02, 0x73, 0x1B, 0x82, 0x72, 0xFB, 0x7A, 0xFB, 0x7A, 0xFC, 0x01, 0x82, 0xFB, 0x89, 0x82, 0xDB, 0x82, 0xDA, 0x82, 0xFA, 0x72, 0x77, 0x20, 0x2D, 0x28, 0xAE, 0x28, + 0xCD, 0x28, 0xED, 0x29, 0x0D, 0x28, 0xED, 0x04, 0x29, 0x0D, 0x84, 0x28, 0xED, 0x20, 0xCD, 0x20, 0xAD, 0x20, 0xAE, 0x83, 0x9B, 0x01, 0x83, 0x5B, 0x80, 0x7B, 0x1B, 0x01, 0x7A, 0xFB, 0x01, 0x72, 0xFB, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x0F, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x86, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x0D, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, + 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x85, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x87, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x84, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x57, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x73, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x0B, 0x29, 0x2D, 0x2D, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x05, 0x31, 0x2D, 0x80, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x03, 0x31, 0x0D, 0x87, 0x39, 0x0D, 0x38, 0xED, 0x38, 0xCC, 0x40, 0xAC, 0x71, 0xD1, 0xC3, 0xD9, 0xC3, 0x78, 0xCB, 0x57, 0x02, 0xCB, 0x37, 0x8B, 0xC3, 0x37, 0xC3, 0x58, 0xB3, 0x37, 0x92, 0x74, 0x48, 0x6C, 0x40, 0xAD, 0x40, 0xCE, 0x40, 0xEE, 0x39, 0x0F, 0x39, 0x2F, 0x39, 0x0F, 0x39, 0x30, 0x03, 0x39, 0x51, 0x02, 0x39, 0x71, 0x01, 0x39, 0x51, 0x03, 0x41, 0x71, 0x10, 0x49, 0x91, 0x82, 0x51, 0x91, 0x51, 0xB1, 0x49, 0xB1, 0x01, 0x51, 0xB1, 0x80, 0x51, 0x91, 0x02, 0x51, 0xB1, 0x03, 0x51, 0x91, 0x81, 0x51, 0xB2, 0x51, 0x92, 0x03, 0x51, 0xB2, 0x01, 0x51, 0xB3, + 0x80, 0x51, 0xD3, 0x01, 0x51, 0xD4, 0x81, 0x51, 0xD5, 0x51, 0xF5, 0x02, 0x51, 0xF6, 0x92, 0x52, 0x17, 0x52, 0x18, 0x4A, 0x18, 0x42, 0x19, 0x39, 0xF9, 0x31, 0xD9, 0x29, 0xBA, 0x21, 0x9A, 0x19, 0xBB, 0x19, 0xDC, 0x19, 0xFC, 0x1A, 0x1D, 0x1A, 0x3D, 0x12, 0x3D, 0x12, 0x5E, 0x12, 0x7E, 0x0A, 0x9E, 0x0A, 0xBE, 0x0A, 0xDE, 0x01, 0x02, 0xFF, 0x83, 0x03, 0x3F, 0x03, 0x5F, 0x03, 0x7F, 0x03, 0x9F, 0x01, 0x03, 0xBF, 0x01, 0x03, 0xDF, 0x85, 0x03, 0xFF, 0x04, 0x1F, 0x04, 0x3F, 0x04, 0x5F, 0x04, 0x7F, 0x04, 0x9F, 0x01, 0x04, 0xBF, 0x01, 0x04, 0xFF, 0x82, 0x05, 0x1F, 0x05, 0x3F, 0x05, 0x5F, 0x02, 0x0D, 0x9F, 0x02, 0x0D, 0xBF, 0x01, 0x0D, 0x9F, 0x83, 0x05, 0x9F, 0x0D, 0xBF, 0x0D, 0x9F, 0x05, 0x9F, 0x03, 0x05, 0x7F, 0x01, 0x05, 0x5F, 0x81, 0x05, 0x3F, 0x05, 0x5F, 0x01, 0x05, 0x3F, 0x04, 0x05, 0x1F, 0x81, 0x04, 0xFF, 0x05, 0x1F, 0x02, 0x04, 0xFF, 0x05, 0x04, 0xDF, 0x82, 0x04, 0xFF, 0x05, 0x3F, 0x05, 0x5F, 0x01, 0x05, 0x7F, 0x98, 0x0D, 0x9F, 0x15, 0xBF, 0x25, 0xBF, 0x3D, 0xFF, 0x66, 0x3F, 0x6C, 0xFC, 0x52, 0x73, 0x72, 0x53, 0x92, 0x54, 0x9A, 0x33, 0xA1, 0xF3, 0xA9, 0xF4, 0xA9, 0xF3, 0xAA, 0x14, 0x9A, 0x14, 0x79, 0x92, 0x71, 0x92, 0x61, 0x92, 0x59, 0x71, 0x51, 0x91, 0x51, 0x71, 0x51, 0xB1, 0x51, 0x91, 0x49, 0x91, 0x49, 0x70, 0x02, 0x41, 0x70, 0x80, 0x41, 0x6F, 0x01, 0x41, 0x4F, 0x81, 0x39, 0x4F, 0x39, 0x4E, 0x02, 0x39, 0x2E, 0x85, 0x39, 0x4E, 0x39, 0x2E, 0x31, 0x2E, 0x31, 0x0D, 0x31, 0x2D, 0x31, 0x2E, 0x01, 0x31, 0x2D, 0x03, 0x31, 0x0D, + 0x24, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x83, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x82, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x2E, 0x01, 0x21, 0x0E, 0x83, 0x19, 0x0F, 0x19, 0x10, 0x19, 0x52, 0x19, 0x93, 0x01, 0x21, 0xD4, 0x88, 0x21, 0xB3, 0x19, 0x51, 0x19, 0x10, 0x18, 0xEF, 0x21, 0x0F, 0x21, 0x2E, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x07, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x01, 0x21, 0x0D, 0x01, 0x21, 0x2E, 0x01, 0x19, 0x2F, 0x81, 0x19, 0x4F, 0x11, 0x30, 0x03, 0x19, 0x50, 0x01, 0x19, 0x30, 0x01, 0x21, 0x2F, 0x82, 0x21, 0x0E, 0x29, 0x0E, 0x21, 0x0D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x89, 0x28, 0xCD, 0x20, 0xAD, 0x20, 0x6D, 0x38, 0xF0, 0x9B, 0xBD, 0x93, 0x3C, 0x8A, 0xDB, 0x92, 0xDB, 0x8A, 0xBB, 0x92, 0xDC, + 0x01, 0x8A, 0x9B, 0x97, 0x82, 0x7A, 0x9A, 0xFD, 0xAB, 0xBF, 0xB3, 0xDF, 0xAB, 0xBF, 0xB3, 0xFF, 0xA3, 0xBE, 0xA3, 0x9D, 0x9B, 0x7C, 0xAB, 0xFD, 0xB4, 0x3D, 0x72, 0x35, 0x28, 0x0C, 0x30, 0xAE, 0x30, 0xAD, 0x30, 0xCD, 0x28, 0xAD, 0x28, 0x8D, 0x28, 0x4D, 0x69, 0xF5, 0x92, 0xFA, 0x92, 0xBA, 0x92, 0xDB, 0x8A, 0xBB, 0x01, 0x92, 0xDC, 0x81, 0x8A, 0xFC, 0x8B, 0x1C, 0x01, 0x8A, 0xFC, 0x02, 0x8A, 0xDC, 0x8B, 0x92, 0xFC, 0x8A, 0x9B, 0x92, 0x9B, 0x92, 0x9A, 0x92, 0xBA, 0x8A, 0xB9, 0x49, 0x11, 0x20, 0x0C, 0x28, 0x8D, 0x30, 0xCD, 0x28, 0xED, 0x31, 0x0D, 0x04, 0x29, 0x0D, 0x88, 0x20, 0xCC, 0x20, 0xCD, 0x20, 0x8D, 0x28, 0x8E, 0x93, 0x7B, 0x93, 0x3B, 0x92, 0xDB, 0x92, 0xDC, 0x8A, 0x9B, 0x02, 0x8A, 0xBB, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x84, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0F, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, + 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x88, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x89, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x58, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x75, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x09, 0x29, 0x2D, 0x2E, 0x29, 0x0D, 0x01, + 0x31, 0x0D, 0x03, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x04, 0x31, 0x0D, 0x80, 0x30, 0xED, 0x01, 0x38, 0xEC, 0x86, 0x38, 0xAB, 0x69, 0xB0, 0xBB, 0x98, 0xC3, 0x78, 0xCB, 0x78, 0xCB, 0x58, 0xCB, 0x57, 0x01, 0xC3, 0x57, 0x85, 0xC3, 0x98, 0x81, 0xF2, 0x58, 0xEE, 0x48, 0x8C, 0x40, 0xCD, 0x40, 0xEE, 0x01, 0x39, 0x0E, 0x02, 0x39, 0x2F, 0x80, 0x41, 0x50, 0x01, 0x39, 0x50, 0x01, 0x41, 0x70, 0x81, 0x39, 0x70, 0x41, 0x71, 0x06, 0x41, 0x70, 0x04, 0x49, 0x70, 0x03, 0x49, 0x90, 0x01, 0x49, 0x91, 0x85, 0x49, 0x90, 0x51, 0xB1, 0x49, 0x90, 0x51, 0x91, 0x49, 0x90, 0x49, 0x91, 0x01, 0x51, 0xB1, 0x01, 0x49, 0x90, 0x01, 0x51, 0x91, 0x80, 0x49, 0x90, 0x07, 0x51, 0x91, 0x02, 0x51, 0xB1, 0x03, 0x51, 0xB2, 0x02, 0x51, 0xB3, 0x02, 0x51, 0xD4, 0x81, 0x51, 0xD5, 0x51, 0xF5, 0x01, 0x51, 0xF6, 0x80, 0x52, 0x17, 0x01, 0x4A, 0x18, 0x8B, 0x42, 0x19, 0x39, 0xF9, 0x29, 0xD9, 0x29, 0xDA, 0x29, 0xFB, 0x22, 0x1B, 0x22, 0x3C, 0x22, 0x5C, 0x1A, 0x7D, 0x1A, 0x9D, 0x1A, 0xBE, 0x12, 0xDE, 0x01, 0x0A, 0xFE, 0x84, 0x0B, 0x1E, 0x03, 0x5E, 0x03, 0x7F, 0x03, 0x9F, 0x03, 0xBF, 0x01, 0x03, 0xDF, 0x87, 0x03, 0xFF, 0x04, 0x1F, 0x04, 0x3F, 0x04, 0x5F, 0x04, 0x7F, 0x04, 0x9F, 0x04, 0xBF, 0x04, 0xDF, 0x01, 0x04, 0xFF, 0x87, 0x05, 0x1F, 0x05, 0x3F, 0x05, 0x5F, 0x05, 0x7F, 0x05, 0x9F, 0x05, 0xBF, 0x0D, 0xBF, 0x0D, 0xDF, 0x02, 0x05, 0xDF, 0x80, 0x05, 0xBF, 0x02, 0x05, 0xDF, 0x01, 0x05, 0xBF, 0x02, 0x05, 0x9F, 0x81, 0x05, 0x7F, 0x05, 0x9F, 0x01, 0x05, 0x7F, 0x02, + 0x05, 0x5F, 0x03, 0x05, 0x3F, 0x03, 0x05, 0x1F, 0x07, 0x04, 0xFF, 0x82, 0x05, 0x1F, 0x05, 0x5F, 0x05, 0x7F, 0x02, 0x05, 0x9F, 0x90, 0x15, 0xDF, 0x25, 0xFF, 0x35, 0xFF, 0x5E, 0x5F, 0x6D, 0x5D, 0x4A, 0xB4, 0x72, 0x74, 0x92, 0x74, 0x9A, 0x33, 0xAA, 0x14, 0xA9, 0xF3, 0xA9, 0xF4, 0xA1, 0xF4, 0xA2, 0x35, 0x89, 0xB2, 0x71, 0x92, 0x69, 0x92, 0x01, 0x59, 0x92, 0x02, 0x51, 0x91, 0x80, 0x49, 0x70, 0x01, 0x49, 0x90, 0x01, 0x41, 0x70, 0x01, 0x41, 0x4F, 0x03, 0x39, 0x4F, 0x01, 0x39, 0x2E, 0x02, 0x31, 0x2E, 0x80, 0x31, 0x0D, 0x03, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x81, 0x29, 0x0D, 0x31, 0x0D, 0x1E, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x83, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x4D, 0x02, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x83, 0x21, 0x2F, 0x19, 0x30, 0x19, 0x51, 0x19, 0x93, 0x01, 0x21, 0xD4, 0x87, 0x21, 0xB3, 0x19, 0x51, 0x11, 0x0F, 0x19, 0x0F, 0x19, 0x0E, 0x21, 0x2E, 0x21, 0x0E, 0x29, 0x0E, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x04, 0x29, + 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x86, 0x21, 0x0D, 0x21, 0x2D, 0x21, 0x2E, 0x19, 0x2E, 0x19, 0x4F, 0x19, 0x50, 0x19, 0x51, 0x01, 0x11, 0x71, 0x83, 0x19, 0x92, 0x19, 0x72, 0x19, 0x92, 0x19, 0x72, 0x01, 0x19, 0x51, 0x01, 0x19, 0x30, 0x82, 0x21, 0x0F, 0x21, 0x0E, 0x21, 0x0D, 0x03, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x8D, 0x31, 0x0D, 0x28, 0xED, 0x28, 0xAD, 0x28, 0x4D, 0x38, 0xB0, 0xAB, 0x9D, 0xA3, 0x1C, 0x9A, 0xDC, 0xA2, 0xBC, 0xA2, 0x9C, 0xA2, 0x7C, 0x9A, 0x7C, 0x9A, 0x7B, 0x9A, 0x7C, 0x01, 0x9A, 0x5B, 0x93, 0xA2, 0x9C, 0x9A, 0x9C, 0x92, 0x7B, 0x9A, 0x9B, 0x9A, 0xBB, 0xA3, 0x1C, 0xAB, 0x3C, 0xAB, 0x5B, 0x8A, 0x98, 0x30, 0x0D, 0x38, 0x8E, 0x30, 0x8D, 0x30, 0xAE, 0x30, 0x8E, 0x30, 0x4E, 0x40, 0x90, 0x9A, 0xFA, 0x9A, 0xBA, 0xA2, 0x9B, 0x9A, 0x7B, 0x01, 0xA2, 0xBC, 0x92, 0x9A, 0xBC, 0x9A, 0xDC, 0x9B, 0x1D, 0x9A, 0xFC, 0x9B, 0x1D, 0x92, 0xDC, 0x9A, 0xBC, 0x9A, 0xDC, 0x9A, 0xBC, 0xA2, 0xBC, 0xA2, 0x9C, 0xA2, 0x9B, 0x9A, 0x9B, 0x9A, 0xBA, 0x92, 0x99, 0x38, 0x2E, 0x28, 0x2D, 0x28, 0x8D, 0x30, 0xEE, 0x01, 0x28, 0xED, 0x03, 0x29, 0x0D, 0x87, 0x28, 0xED, 0x20, 0xAC, 0x20, 0x6C, 0x28, 0x4E, 0x9B, 0x3B, 0xA3, 0x1C, 0xA2, 0xBC, 0xA2, 0x9C, 0x02, 0x9A, 0x7C, 0x84, 0x9A, 0x9C, 0x29, 0x0D, 0x28, 0xEC, 0x29, 0x0D, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x81, 0x31, 0x0D, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, + 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x16, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x7F, 0x29, 0x0D, 0x56, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x34, 0x29, 0x0D, 0x03, 0x31, 0x0D, 0x02, 0x31, 0x2D, 0x06, 0x31, 0x0D, 0x85, 0x30, 0xEC, 0x38, + 0xEC, 0x40, 0xCC, 0x69, 0x90, 0xC3, 0xD9, 0xBB, 0x78, 0x02, 0xC3, 0x57, 0x88, 0xC3, 0x58, 0xB3, 0x37, 0x92, 0x74, 0x48, 0x8C, 0x40, 0x8C, 0x40, 0xCD, 0x40, 0xED, 0x38, 0xED, 0x39, 0x0E, 0x01, 0x39, 0x2E, 0x80, 0x39, 0x2F, 0x01, 0x39, 0x4F, 0x80, 0x41, 0x4F, 0x01, 0x41, 0x50, 0x0A, 0x41, 0x70, 0x03, 0x49, 0x70, 0x0F, 0x49, 0x90, 0x02, 0x51, 0x90, 0x01, 0x49, 0x90, 0x04, 0x51, 0x90, 0x80, 0x51, 0x91, 0x05, 0x51, 0xB1, 0x05, 0x51, 0xB2, 0x01, 0x51, 0xB3, 0x80, 0x51, 0xD3, 0x01, 0x59, 0xD4, 0x85, 0x59, 0xF5, 0x51, 0xF5, 0x51, 0xF6, 0x49, 0xF6, 0x49, 0xF7, 0x4A, 0x18, 0x01, 0x42, 0x19, 0x95, 0x3A, 0x1A, 0x32, 0x1A, 0x32, 0x3B, 0x2A, 0x5B, 0x2A, 0x7C, 0x22, 0x9D, 0x22, 0xDD, 0x1A, 0xFE, 0x1B, 0x1E, 0x13, 0x3E, 0x13, 0x5E, 0x0B, 0x7F, 0x0B, 0x9F, 0x0B, 0xBF, 0x03, 0xDF, 0x03, 0xFF, 0x04, 0x1F, 0x04, 0x3F, 0x04, 0x5F, 0x0C, 0x7F, 0x0C, 0x9F, 0x0C, 0xBF, 0x01, 0x04, 0xDF, 0x82, 0x04, 0xFF, 0x0D, 0x1F, 0x05, 0x1F, 0x01, 0x0D, 0x5F, 0x83, 0x0D, 0x7F, 0x05, 0x9F, 0x05, 0xBF, 0x0D, 0xDF, 0x02, 0x0D, 0xFF, 0x83, 0x05, 0xFF, 0x0D, 0xFF, 0x05, 0xDF, 0x05, 0xFF, 0x02, 0x05, 0xDF, 0x01, 0x05, 0xBF, 0x04, 0x05, 0x9F, 0x01, 0x05, 0x7F, 0x02, 0x05, 0x5F, 0x05, 0x05, 0x3F, 0x01, 0x05, 0x1F, 0x04, 0x04, 0xFF, 0x80, 0x05, 0x1F, 0x01, 0x05, 0x3F, 0x81, 0x05, 0x7F, 0x05, 0x9F, 0x01, 0x05, 0xBF, 0x8A, 0x05, 0xDF, 0x0D, 0xDF, 0x1E, 0x1F, 0x36, 0x1F, 0x56, 0x5F, 0x75, 0xFF, 0x42, 0xD4, 0x6A, 0x73, 0x8A, 0x73, 0x9A, 0x33, 0xAA, 0x34, 0x02, 0xA9, + 0xF4, 0x85, 0xA1, 0xF4, 0x91, 0xD3, 0x71, 0x72, 0x69, 0x92, 0x59, 0x71, 0x59, 0x91, 0x02, 0x51, 0x91, 0x82, 0x49, 0x91, 0x49, 0x70, 0x49, 0x90, 0x01, 0x41, 0x70, 0x81, 0x41, 0x4F, 0x41, 0x6F, 0x01, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x02, 0x39, 0x2E, 0x05, 0x31, 0x2E, 0x80, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x82, 0x29, 0x0D, 0x31, 0x0D, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x11, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x2E, 0x89, 0x29, 0x0E, 0x21, 0x0E, 0x19, 0x0F, 0x19, 0x30, 0x19, 0x51, 0x21, 0x93, 0x21, 0xD4, 0x21, 0xF4, 0x21, 0xB3, 0x19, 0x51, 0x01, 0x19, 0x0F, 0x84, 0x19, 0x0E, 0x21, 0x2E, 0x21, 0x0E, 0x29, 0x2E, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x0E, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, + 0x29, 0x2D, 0x88, 0x21, 0x2D, 0x21, 0x0E, 0x21, 0x2E, 0x19, 0x4F, 0x19, 0x50, 0x11, 0x51, 0x11, 0x72, 0x19, 0xB3, 0x11, 0xB3, 0x01, 0x11, 0xB4, 0x81, 0x19, 0xB4, 0x19, 0xB3, 0x01, 0x19, 0x93, 0x85, 0x19, 0x72, 0x19, 0x51, 0x21, 0x30, 0x21, 0x2F, 0x21, 0x0E, 0x21, 0x0D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x8B, 0x28, 0xEC, 0x29, 0x0C, 0x31, 0x2C, 0x31, 0x0C, 0x28, 0xCC, 0x28, 0x8C, 0x28, 0x4D, 0x40, 0x8F, 0xBB, 0xBE, 0xAB, 0x1C, 0xAA, 0xDC, 0xAA, 0x9C, 0x01, 0xAA, 0x7C, 0x81, 0xB2, 0xBD, 0xB2, 0x9D, 0x01, 0xAA, 0x5C, 0x82, 0xB2, 0x5C, 0xB2, 0x7C, 0xAA, 0x7C, 0x01, 0xAA, 0x9C, 0x01, 0xAA, 0x9B, 0x01, 0xAA, 0xDB, 0x81, 0x92, 0x98, 0x38, 0x0E, 0x01, 0x38, 0x6E, 0x85, 0x38, 0x8E, 0x38, 0x4E, 0x40, 0x4F, 0x92, 0x99, 0xAA, 0xDB, 0xB2, 0xDC, 0x01, 0xB2, 0x9C, 0x88, 0xAA, 0x9C, 0xA2, 0x5B, 0xA2, 0x7B, 0xA2, 0x9B, 0xAB, 0x3E, 0x69, 0x35, 0x71, 0x97, 0xA2, 0xFC, 0xA2, 0xBB, 0x01, 0xA2, 0x9C, 0x8B, 0xA2, 0x7C, 0xAA, 0x7C, 0xB2, 0x9C, 0xB2, 0xBC, 0xAA, 0xBC, 0xAA, 0xFB, 0x82, 0x17, 0x30, 0x0D, 0x30, 0x6D, 0x30, 0xCD, 0x28, 0xCD, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x88, 0x31, 0x2D, 0x29, 0x0D, 0x28, 0xED, 0x28, 0xAD, 0x28, 0x6D, 0x38, 0x6E, 0xB3, 0x7D, 0xAA, 0xFC, 0xB2, 0xBD, 0x01, 0xAA, 0x7C, 0x01, 0xAA, 0x5C, 0x81, 0xB2, 0x7C, 0x29, 0x0D, 0x01, 0x28, 0xEC, 0x82, 0x29, 0x0D, 0x28, 0xEC, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x0D, + 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x85, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x28, 0xEC, 0x05, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x0D, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x0D, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x19, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x14, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x85, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x7F, 0x29, 0x0D, 0x50, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x33, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x04, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x06, 0x31, 0x0D, 0x85, 0x30, 0xEC, + 0x38, 0xEC, 0x38, 0xAC, 0x59, 0x6F, 0xB3, 0x98, 0xBB, 0x78, 0x02, 0xBB, 0x57, 0x84, 0xBB, 0x98, 0x92, 0x73, 0x61, 0x0E, 0x48, 0x8C, 0x40, 0xCC, 0x02, 0x38, 0xED, 0x80, 0x39, 0x0D, 0x01, 0x39, 0x2E, 0x01, 0x39, 0x2F, 0x01, 0x39, 0x4F, 0x01, 0x41, 0x4F, 0x04, 0x41, 0x6F, 0x80, 0x41, 0x70, 0x03, 0x41, 0x6F, 0x80, 0x41, 0x90, 0x01, 0x41, 0x6F, 0x02, 0x49, 0x6F, 0x02, 0x49, 0x70, 0x15, 0x49, 0x90, 0x02, 0x51, 0x90, 0x81, 0x51, 0xB1, 0x51, 0x91, 0x04, 0x51, 0xB1, 0x07, 0x51, 0xB2, 0x80, 0x59, 0xD3, 0x01, 0x59, 0xD4, 0x81, 0x59, 0xF4, 0x51, 0xF5, 0x01, 0x51, 0xF6, 0x01, 0x4A, 0x17, 0x8E, 0x4A, 0x18, 0x42, 0x19, 0x3A, 0x39, 0x3A, 0x5A, 0x32, 0x7B, 0x32, 0x9B, 0x2A, 0xDC, 0x22, 0xFD, 0x23, 0x1D, 0x1B, 0x3E, 0x1B, 0x5E, 0x13, 0x9E, 0x13, 0xBE, 0x13, 0xFF, 0x0B, 0xFF, 0x01, 0x0C, 0x3F, 0x83, 0x0C, 0x5F, 0x0C, 0x7F, 0x0C, 0x9F, 0x0C, 0xBF, 0x01, 0x0C, 0xDF, 0x87, 0x0C, 0xFF, 0x0D, 0x1F, 0x0D, 0x3F, 0x15, 0x5F, 0x0D, 0x7F, 0x15, 0x9F, 0x0D, 0xBF, 0x0D, 0xDF, 0x02, 0x0D, 0xFF, 0x05, 0x0E, 0x1F, 0x01, 0x05, 0xFF, 0x02, 0x05, 0xDF, 0x01, 0x05, 0xBF, 0x04, 0x05, 0x9F, 0x01, 0x05, 0x7F, 0x04, 0x05, 0x5F, 0x01, 0x05, 0x3F, 0x01, 0x05, 0x1F, 0x80, 0x04, 0xFF, 0x02, 0x05, 0x1F, 0x01, 0x05, 0x3F, 0x01, 0x05, 0x5F, 0x81, 0x05, 0x9F, 0x05, 0xBF, 0x02, 0x05, 0xDF, 0x92, 0x0D, 0xFF, 0x1E, 0x1F, 0x2E, 0x1E, 0x4E, 0x5F, 0x76, 0x7F, 0x4B, 0x55, 0x5A, 0x52, 0x8A, 0x94, 0x92, 0x13, 0xAA, 0x14, 0xA9, 0xF4, 0xA9, 0xD3, 0xA9, 0xD4, 0xA9, 0xF4, 0x9A, + 0x14, 0x81, 0xB3, 0x69, 0x92, 0x61, 0x92, 0x59, 0x91, 0x02, 0x51, 0x91, 0x82, 0x49, 0x91, 0x49, 0x90, 0x49, 0x70, 0x01, 0x41, 0x70, 0x85, 0x41, 0x4F, 0x41, 0x6F, 0x41, 0x4F, 0x39, 0x2F, 0x41, 0x4F, 0x39, 0x4E, 0x02, 0x39, 0x2E, 0x80, 0x39, 0x4E, 0x03, 0x31, 0x2E, 0x81, 0x31, 0x2D, 0x31, 0x2E, 0x01, 0x31, 0x2D, 0x82, 0x31, 0x0D, 0x31, 0x2D, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x13, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x0B, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x85, 0x29, 0x0C, 0x31, 0x2D, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2E, 0x21, 0x0D, 0x01, 0x21, 0x0E, 0x8B, 0x19, 0x0F, 0x19, 0x30, 0x19, 0x51, 0x19, 0x92, 0x21, 0xD3, 0x21, 0xF4, 0x19, 0x92, 0x19, 0x51, 0x11, 0x0F, 0x19, 0x0F, 0x19, 0x0E, 0x21, 0x4F, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0B, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x21, 0x2E, 0x84, 0x19, 0x2F, 0x19, 0x30, + 0x11, 0x50, 0x11, 0x71, 0x11, 0x93, 0x01, 0x11, 0xD4, 0x80, 0x11, 0xD5, 0x01, 0x11, 0xB4, 0x88, 0x11, 0x94, 0x11, 0xB4, 0x11, 0x93, 0x19, 0x73, 0x19, 0x52, 0x19, 0x31, 0x21, 0x30, 0x21, 0x0F, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x89, 0x31, 0x0C, 0x28, 0xCC, 0x28, 0x8C, 0x28, 0x2D, 0x40, 0x4F, 0xC3, 0xBE, 0xB2, 0xFC, 0xB2, 0x9C, 0xB2, 0x7C, 0xB2, 0x5C, 0x01, 0xBA, 0x7D, 0x81, 0xBA, 0x5D, 0xBA, 0x3D, 0x02, 0xBA, 0x5D, 0x81, 0xBA, 0x5C, 0xB2, 0x5C, 0x01, 0xBA, 0x9C, 0x85, 0xB2, 0x9C, 0xB2, 0xBC, 0xAA, 0xDB, 0xAB, 0x1B, 0x40, 0x0E, 0x40, 0x6F, 0x01, 0x38, 0x4E, 0x84, 0x38, 0x0E, 0x79, 0xB5, 0xB2, 0xFC, 0xB2, 0xDC, 0xBA, 0xBC, 0x01, 0xBA, 0x9D, 0x01, 0xB2, 0x7C, 0x82, 0xAA, 0x7C, 0xAA, 0xBC, 0xA2, 0xBB, 0x01, 0x40, 0x10, 0x85, 0x9A, 0x7A, 0xA2, 0xBB, 0xAA, 0x9C, 0xB2, 0x9C, 0xB2, 0x9D, 0xBA, 0xDD, 0x01, 0xBA, 0xBD, 0x94, 0xBA, 0xBC, 0xB2, 0xBC, 0xA2, 0xBA, 0x50, 0x90, 0x30, 0x0C, 0x30, 0x8D, 0x30, 0xCD, 0x30, 0xED, 0x28, 0xED, 0x31, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x28, 0xEC, 0x28, 0xAC, 0x28, 0x4C, 0x38, 0x4E, 0xBB, 0x7D, 0xBA, 0xFD, 0xB2, 0x9D, 0xB2, 0x5D, 0xB2, 0x3C, 0x02, 0xBA, 0x5D, 0x01, 0x28, 0xEC, 0x80, 0x31, 0x0D, 0x04, 0x28, 0xEC, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x31, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, + 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x0A, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x09, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x86, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x8A, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, + 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x3F, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x7F, 0x29, 0x0D, 0x4A, 0x29, 0x0D, 0x82, 0x31, 0x2D, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x05, 0x31, 0x0D, 0x85, 0x30, 0xEC, 0x38, 0xED, 0x38, 0xCC, 0x51, 0x0D, 0xBB, 0xF9, 0xBB, 0x98, 0x01, 0xBB, 0x77, 0x86, 0xBB, 0x78, 0xA3, 0x36, 0x69, 0x6F, 0x40, 0x8C, 0x40, 0xCC, 0x40, 0xCD, 0x38, 0xED, 0x01, 0x39, 0x0D, 0x80, 0x39, 0x0E, 0x02, 0x39, 0x2E, 0x01, 0x39, 0x4E, 0x80, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x01, 0x41, 0x4F, 0x80, 0x39, 0x4F, 0x09, 0x41, 0x6F, 0x82, 0x41, 0x4F, 0x41, 0x6F, 0x49, 0x6F, 0x03, 0x41, 0x6F, 0x01, 0x49, 0x70, 0x81, 0x49, 0x90, 0x49, 0x6F, 0x13, 0x49, 0x90, 0x82, 0x51, 0xB0, 0x51, 0x90, 0x49, 0x90, 0x02, 0x51, 0xB1, 0x01, 0x51, 0x91, 0x80, 0x51, 0xB1, 0x02, 0x51, 0xB2, 0x80, 0x51, 0xB1, 0x02, 0x51, 0x91, 0x81, 0x51, 0xB2, 0x59, 0xB2, 0x01, 0x59, 0xD3, 0x81, 0x59, 0xD4, 0x51, 0xF4, 0x01, 0x51, 0xF5, 0x9D, 0x51, 0xF6, 0x52, 0x17, 0x4A, 0x17, 0x42, 0x18, 0x42, 0x38, 0x3A, 0x59, 0x3A, 0x7A, 0x32, 0x9A, 0x2A, 0xDB, 0x2B, 0x1C, 0x2B, 0x3D, 0x23, 0x7D, 0x23, 0x9D, 0x1B, 0xDE, 0x13, 0xFE, 0x14, 0x1E, 0x14, 0x3E, 0x0C, 0x3E, 0x0C, 0x5E, 0x0C, 0x7E, 0x14, 0x9F, 0x14, 0xBF, 0x14, 0xDF, 0x14, 0xFF, + 0x15, 0x1F, 0x15, 0x3F, 0x15, 0x5F, 0x1D, 0x7F, 0x1D, 0xBF, 0x1D, 0xDF, 0x01, 0x1D, 0xFF, 0x01, 0x16, 0x1F, 0x02, 0x16, 0x3F, 0x80, 0x0E, 0x3F, 0x02, 0x0E, 0x1F, 0x80, 0x06, 0x1F, 0x03, 0x05, 0xFF, 0x01, 0x05, 0xDF, 0x02, 0x05, 0xBF, 0x02, 0x05, 0x9F, 0x02, 0x05, 0x7F, 0x81, 0x05, 0x5F, 0x05, 0x7F, 0x02, 0x05, 0x5F, 0x80, 0x05, 0x3F, 0x03, 0x05, 0x1F, 0x01, 0x05, 0x3F, 0x01, 0x05, 0x5F, 0x82, 0x05, 0x7F, 0x05, 0xBF, 0x05, 0xDF, 0x01, 0x05, 0xFF, 0x8A, 0x06, 0x1F, 0x0E, 0x1F, 0x16, 0x3F, 0x2E, 0x5F, 0x46, 0x7F, 0x76, 0xBF, 0x5C, 0x38, 0x52, 0x73, 0x8A, 0xB4, 0x9A, 0x33, 0xA1, 0xF3, 0x01, 0xA9, 0xD3, 0x85, 0xA9, 0xF4, 0xA1, 0xD4, 0x99, 0xF4, 0x89, 0xD3, 0x71, 0x72, 0x69, 0x92, 0x01, 0x59, 0x91, 0x02, 0x51, 0x91, 0x83, 0x49, 0x91, 0x49, 0x90, 0x49, 0x70, 0x41, 0x70, 0x01, 0x41, 0x6F, 0x02, 0x41, 0x4F, 0x03, 0x39, 0x2E, 0x80, 0x39, 0x4E, 0x05, 0x31, 0x2E, 0x80, 0x31, 0x2D, 0x04, 0x31, 0x0D, 0x83, 0x29, 0x0D, 0x31, 0x0D, 0x29, 0x0D, 0x31, 0x2D, 0x1C, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x31, 0x0D, 0x29, 0x0C, 0x31, 0x0D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x83, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x02, 0x20, 0xEC, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x8D, 0x19, 0x2F, 0x19, 0x30, 0x19, 0x51, + 0x19, 0x92, 0x19, 0xB3, 0x21, 0xD3, 0x19, 0x92, 0x11, 0x50, 0x11, 0x0F, 0x19, 0x0F, 0x21, 0x4F, 0x21, 0x2F, 0x29, 0x2E, 0x21, 0x0E, 0x02, 0x29, 0x2E, 0x82, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x0B, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x11, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x21, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x21, 0x0D, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x2E, 0x29, 0x2D, 0x01, 0x29, 0x2E, 0x01, 0x21, 0x2E, 0x85, 0x21, 0x2F, 0x19, 0x50, 0x19, 0x71, 0x11, 0x72, 0x11, 0x93, 0x11, 0xB4, 0x01, 0x09, 0xD5, 0x02, 0x09, 0xB5, 0x80, 0x11, 0xB5, 0x02, 0x11, 0x94, 0x84, 0x19, 0x73, 0x19, 0x31, 0x19, 0x30, 0x21, 0x0F, 0x21, 0x0E, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x89, 0x31, 0x0D, 0x28, 0xCC, 0x28, 0x6C, 0x30, 0x2C, 0x48, 0x90, 0xCB, 0xFF, 0xBA, 0xFC, 0xBA, 0xBC, 0xBA, 0x7C, 0xBA, 0x7D, 0x01, 0xC2, 0x7D, 0x9C, 0xC2, 0x9E, 0xC2, 0x7D, 0xC2, 0x5D, 0xC2, 0x3D, 0xCA, 0x7D, 0xC2, 0x5D, 0xC2, 0x7C, 0xC2, 0x9C, 0xC2, 0xBD, 0xBA, 0x9C, 0xB2, 0x9B, 0xB2, 0xDB, 0xC3, 0xBE, 0x40, 0x0E, 0x38, 0x0E, 0x38, 0x2E, 0x40, 0x4E, 0x48, 0x4F, 0xBB, 0x5D, 0xBA, 0xFC, 0xBA, 0xDC, 0xBA, 0x9C, 0xC2, 0x9D, 0xBA, 0x7C, 0xC2, 0x9D, 0xBA, 0x9C, 0xB2, 0x9C, 0xB2, 0xFC, 0x81, 0xB6, 0x01, 0x40, 0x0F, 0x83, 0x60, 0xD3, 0xAA, 0xFC, 0xAA, 0xBC, 0xBA, 0xBD, 0x01, 0xBA, 0x9D, 0x01, 0xC2, 0x9D, 0x89, 0xC2, 0xBD, 0xC2, 0xDD, 0xBA, 0xFC, 0xA2, 0xBA, 0x38, 0x0E, 0x38, 0x6E, 0x30, 0xAD, 0x30, 0xED, 0x28, 0xED, + 0x31, 0x0D, 0x01, 0x28, 0xEC, 0x87, 0x28, 0xCC, 0x28, 0xAC, 0x28, 0x4C, 0x40, 0x6F, 0xC3, 0x7E, 0xBA, 0xDD, 0xC2, 0xBD, 0xBA, 0x7D, 0x01, 0xBA, 0x5D, 0x84, 0xC2, 0x5D, 0xCA, 0x7D, 0x30, 0xEC, 0x30, 0xCC, 0x30, 0xED, 0x01, 0x30, 0xEC, 0x80, 0x28, 0xEC, 0x05, 0x30, 0xEC, 0x80, 0x31, 0x0C, 0x02, 0x31, 0x0D, 0x01, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x84, 0x28, 0xEC, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x83, 0x28, 0xEC, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x84, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x2C, 0x08, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, + 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x11, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x52, 0x29, 0x0D, 0x01, 0x29, 0x2C, 0x7F, 0x29, 0x0D, 0x4D, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x06, 0x31, 0x0D, 0x01, 0x30, 0xED, 0x83, 0x38, 0xCC, 0x48, 0xCD, 0xAB, 0x97, 0xBB, 0xB8, 0x01, 0xBB, 0x98, 0x84, 0xBB, 0xB8, 0x8A, 0x73, 0x50, 0xCD, 0x40, 0xAC, 0x38, 0xCC, 0x01, 0x38, 0xED, 0x01, 0x39, 0x0D, 0x03, 0x39, 0x2E, 0x03, 0x39, 0x4E, 0x82, 0x39, 0x4F, 0x39, 0x4E, 0x39, 0x4F, 0x09, 0x41, 0x4F, 0x09, 0x41, 0x6F, 0x02, 0x49, 0x6F, 0x03, 0x49, 0x70, 0x13, 0x49, 0x90, 0x02, 0x49, 0x91, 0x02, 0x51, 0x91, 0x02, 0x51, 0xB1, 0x84, 0x51, 0x91, 0x51, 0xB1, 0x51, 0x91, 0x51, 0xB1, 0x51, 0xB2, 0x01, 0x59, 0xB2, 0x80, 0x51, 0xD2, 0x01, 0x51, 0xD3, 0x01, 0x51, 0xD4, 0x01, 0x51, 0xF5, 0x01, 0x4A, 0x16, 0x8E, 0x42, 0x37, 0x42, 0x58, 0x3A, 0x78, 0x32, 0xB9, 0x32, 0xFA, 0x33, 0x3B, 0x33, 0x5C, 0x2B, 0xBD, 0x2B, 0xFE, 0x23, 0xFE, 0x1C, 0x3E, 0x1C, 0x5E, 0x1C, 0x7E, 0x1C, 0x9E, 0x14, 0x9E, 0x01, 0x14, 0xBE, 0x8A, 0x1C, 0xFF, 0x1D, 0x1F, 0x1D, 0x3F, 0x1D, 0x5F, 0x25, 0x7F, 0x25, 0x9F, 0x25, 0xBF, 0x25, 0xDF, + 0x25, 0xFF, 0x26, 0x1F, 0x26, 0x3F, 0x01, 0x1E, 0x3F, 0x02, 0x16, 0x3F, 0x02, 0x0E, 0x3F, 0x03, 0x0E, 0x1F, 0x01, 0x05, 0xFF, 0x81, 0x05, 0xDF, 0x05, 0xBF, 0x01, 0x05, 0xDF, 0x01, 0x05, 0xBF, 0x02, 0x05, 0x9F, 0x03, 0x05, 0x7F, 0x01, 0x05, 0x5F, 0x05, 0x05, 0x3F, 0x01, 0x05, 0x5F, 0x82, 0x05, 0x7F, 0x05, 0x9F, 0x05, 0xBF, 0x01, 0x05, 0xFF, 0x01, 0x06, 0x1F, 0x8B, 0x0E, 0x5F, 0x16, 0x7F, 0x26, 0x7F, 0x36, 0x7E, 0x6E, 0xFF, 0x64, 0xFB, 0x4A, 0x92, 0x8A, 0xD5, 0x92, 0x12, 0xA1, 0xF3, 0xA9, 0xF3, 0xB1, 0xF4, 0x01, 0xA9, 0xF4, 0x85, 0xA2, 0x14, 0x92, 0x14, 0x71, 0x72, 0x69, 0x92, 0x59, 0x71, 0x59, 0x91, 0x02, 0x51, 0x91, 0x02, 0x49, 0x70, 0x81, 0x41, 0x70, 0x41, 0x6F, 0x02, 0x41, 0x4F, 0x82, 0x39, 0x4F, 0x39, 0x2E, 0x39, 0x4E, 0x02, 0x39, 0x2E, 0x01, 0x31, 0x2E, 0x80, 0x31, 0x2D, 0x01, 0x31, 0x2E, 0x80, 0x31, 0x2D, 0x07, 0x31, 0x0D, 0x21, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x84, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x83, 0x31, 0x0D, 0x29, 0x0D, 0x29, 0x0C, 0x31, 0x0C, 0x03, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x0A, 0x29, 0x0D, 0x8D, 0x21, 0x0E, 0x21, 0x2E, 0x19, 0x2F, 0x19, 0x30, 0x19, 0x51, 0x19, 0x92, 0x19, 0xB3, 0x21, 0xD3, 0x19, 0xB2, 0x11, 0x50, 0x11, 0x2F, 0x19, 0x2F, 0x21, 0x2F, 0x21, 0x2E, 0x02, 0x21, 0x0E, 0x01, 0x21, 0x2E, 0x01, 0x21, 0x0E, 0x01, + 0x21, 0x2E, 0x01, 0x21, 0x0E, 0x01, 0x21, 0x2E, 0x09, 0x21, 0x0E, 0x01, 0x29, 0x2E, 0x04, 0x29, 0x0E, 0x02, 0x21, 0x0E, 0x80, 0x21, 0x2E, 0x03, 0x21, 0x0E, 0x81, 0x29, 0x2E, 0x21, 0x0D, 0x02, 0x21, 0x0E, 0x02, 0x21, 0x2E, 0x04, 0x21, 0x0E, 0x04, 0x21, 0x2E, 0x87, 0x21, 0x2F, 0x19, 0x30, 0x19, 0x50, 0x11, 0x71, 0x11, 0x93, 0x09, 0x94, 0x09, 0xB4, 0x09, 0xB5, 0x01, 0x01, 0xB5, 0x81, 0x01, 0xB6, 0x01, 0xB5, 0x01, 0x09, 0xB5, 0x86, 0x11, 0xB5, 0x11, 0x94, 0x11, 0x73, 0x19, 0x52, 0x19, 0x51, 0x21, 0x2F, 0x21, 0x0E, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x31, 0x2D, 0x29, 0x0C, 0x02, 0x31, 0x0C, 0x8C, 0x30, 0xCC, 0x28, 0x6C, 0x30, 0x2C, 0x48, 0x8F, 0xD4, 0x1F, 0xBB, 0x1C, 0xBA, 0xDC, 0xC2, 0xDD, 0xC2, 0x9D, 0xC2, 0x7D, 0xC2, 0x9D, 0xC2, 0x7D, 0xCA, 0x9D, 0x01, 0xCA, 0x7D, 0x80, 0xC2, 0x5C, 0x01, 0xC2, 0x7C, 0x85, 0xC2, 0x9C, 0xBA, 0x9C, 0xBA, 0x9B, 0xB2, 0xBB, 0xB2, 0xFB, 0xCB, 0xFE, 0x01, 0x40, 0x0E, 0x01, 0x38, 0x0D, 0x86, 0x81, 0xD6, 0xC3, 0x7D, 0xBA, 0xFC, 0xC2, 0xFD, 0xC2, 0xBC, 0xC2, 0xBD, 0xCA, 0xBD, 0x01, 0xC2, 0xDD, 0x88, 0xBA, 0xBC, 0xC3, 0x7E, 0x58, 0xB2, 0x40, 0x0E, 0x38, 0x0E, 0x40, 0x0E, 0x92, 0x59, 0xC3, 0x5E, 0xBA, 0xDD, 0x01, 0xC2, 0xDD, 0x02, 0xC2, 0xBD, 0x88, 0xC2, 0xDD, 0xCB, 0x1D, 0xCB, 0x9E, 0x71, 0xB5, 0x30, 0x0D, 0x30, 0xAD, 0x30, 0xED, 0x30, 0xEC, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x87, 0x28, 0xCC, 0x28, 0xAC, 0x28, 0x4C, 0x40, 0x4E, 0xC3, 0x9E, 0xC2, 0xFD, 0xC2, 0xBD, 0xC2, 0x9D, 0x01, 0xC2, 0x7D, 0x81, + 0xCA, 0x9D, 0xD2, 0xDE, 0x01, 0x30, 0x8C, 0x80, 0x30, 0xAC, 0x03, 0x30, 0xCC, 0x02, 0x30, 0xEC, 0x80, 0x30, 0xED, 0x03, 0x30, 0xEC, 0x83, 0x31, 0x0D, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x03, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x8A, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x03, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x07, 0x29, 0x0C, 0x81, 0x29, 0x2C, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x12, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, + 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x48, 0x29, 0x0D, 0x01, 0x29, 0x2C, 0x03, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x7F, 0x29, 0x0D, 0x42, 0x29, 0x0D, 0x01, 0x31, 0x2D, 0x80, 0x29, 0x2D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x07, 0x31, 0x0D, 0x8C, 0x30, 0xEC, 0x38, 0xCC, 0x40, 0xCC, 0xAB, 0x98, 0xBB, 0xB8, 0xBB, 0x98, 0xBB, 0xB8, 0xA3, 0x36, 0x59, 0x4F, 0x38, 0x8B, 0x40, 0xCC, 0x38, 0xCC, 0x38, 0xED, 0x03, 0x39, 0x0D, 0x02, 0x39, 0x2E, 0x08, 0x39, 0x4E, 0x81, 0x41, 0x4F, 0x41, 0x6F, 0x05, 0x41, 0x4F, 0x0F, 0x41, 0x6F, 0x80, 0x41, 0x70, 0x0E, 0x49, 0x70, 0x02, 0x49, 0x90, 0x80, 0x49, 0x70, 0x03, 0x49, 0x90, 0x81, 0x49, 0x91, 0x51, 0x91, 0x03, 0x49, 0x91, 0x80, 0x51, 0x91, 0x01, 0x51, 0xB1, 0x81, 0x51, 0xD1, 0x59, 0xD2, 0x06, 0x51, 0xB2, 0x80, 0x59, 0xD3, 0x01, 0x51, 0xD4, 0x82, 0x51, 0xF4, 0x52, 0x15, 0x4A, 0x15, 0x01, 0x42, 0x36, 0x88, 0x3A, 0x77, 0x3A, 0x98, 0x3A, 0xD9, 0x3B, 0x19, 0x33, 0x5A, 0x3B, 0xFD, 0x3C, 0x7F, 0x2C, 0x7E, 0x24, 0x9E, 0x01, 0x24, 0xBE, 0x01, 0x24, 0xFF, 0x85, 0x25, 0x1F, 0x25, 0x3F, 0x2D, 0x5F, 0x2D, 0x7F, 0x2D, 0x9F, 0x2D, 0x9E, 0x01, 0x2D, 0xBE, 0x81, 0x2D, 0xDE, + 0x2D, 0xFE, 0x01, 0x2E, 0x1E, 0x01, 0x26, 0x3F, 0x01, 0x1E, 0x3F, 0x80, 0x16, 0x5F, 0x01, 0x16, 0x3F, 0x02, 0x0E, 0x3F, 0x02, 0x0E, 0x1F, 0x83, 0x0D, 0xFF, 0x05, 0xFF, 0x0D, 0xFF, 0x05, 0xFF, 0x01, 0x05, 0xDF, 0x02, 0x05, 0xBF, 0x02, 0x05, 0x9F, 0x03, 0x05, 0x7F, 0x02, 0x05, 0x5F, 0x80, 0x05, 0x3F, 0x01, 0x05, 0x5F, 0x01, 0x05, 0x7F, 0x81, 0x05, 0x9F, 0x05, 0xBF, 0x01, 0x05, 0xFF, 0x80, 0x06, 0x1F, 0x01, 0x06, 0x3F, 0x8A, 0x0E, 0x5F, 0x16, 0x9F, 0x26, 0x9F, 0x36, 0x9E, 0x5E, 0xBF, 0x65, 0x9D, 0x3A, 0x92, 0x82, 0xF4, 0x9A, 0x53, 0x99, 0xD2, 0xA9, 0xD3, 0x01, 0xB1, 0xF4, 0x85, 0xA9, 0xD3, 0xA1, 0xF4, 0x91, 0xF3, 0x79, 0x71, 0x69, 0x71, 0x61, 0x71, 0x01, 0x51, 0x71, 0x01, 0x51, 0x91, 0x83, 0x49, 0x91, 0x49, 0x90, 0x49, 0x70, 0x41, 0x70, 0x01, 0x41, 0x4F, 0x80, 0x41, 0x6F, 0x01, 0x41, 0x4F, 0x01, 0x39, 0x4E, 0x02, 0x39, 0x2E, 0x80, 0x31, 0x2E, 0x02, 0x31, 0x2D, 0x81, 0x31, 0x2E, 0x31, 0x2D, 0x06, 0x31, 0x0D, 0x81, 0x29, 0x0D, 0x31, 0x2D, 0x02, 0x29, 0x0D, 0x82, 0x28, 0xED, 0x29, 0x0D, 0x28, 0xED, 0x17, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0A, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x8B, 0x29, 0x2E, 0x21, 0x2E, 0x21, 0x2F, 0x19, 0x2F, 0x19, 0x30, 0x19, 0x51, 0x19, 0x92, 0x21, 0xD3, 0x21, 0xF4, 0x19, 0xB3, 0x11, 0x51, + 0x10, 0xEF, 0x02, 0x10, 0xEE, 0x81, 0x19, 0x0E, 0x18, 0xEE, 0x0F, 0x19, 0x0E, 0x07, 0x21, 0x0E, 0x80, 0x19, 0x0E, 0x01, 0x21, 0x0E, 0x81, 0x19, 0x0E, 0x21, 0x0E, 0x02, 0x19, 0x0E, 0x80, 0x21, 0x0E, 0x02, 0x19, 0x0E, 0x03, 0x21, 0x0E, 0x03, 0x19, 0x0E, 0x01, 0x18, 0xEE, 0x06, 0x19, 0x0E, 0x85, 0x11, 0x0F, 0x11, 0x10, 0x11, 0x31, 0x11, 0x72, 0x09, 0x73, 0x09, 0xB4, 0x01, 0x01, 0xB5, 0x80, 0x01, 0xB6, 0x01, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x89, 0x09, 0xB6, 0x09, 0xB5, 0x11, 0xB5, 0x11, 0xB4, 0x11, 0x73, 0x19, 0x51, 0x21, 0x30, 0x21, 0x2E, 0x29, 0x0E, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x89, 0x31, 0x2D, 0x31, 0x0D, 0x28, 0xCC, 0x28, 0x8C, 0x30, 0x4D, 0x48, 0x8F, 0xF5, 0x3F, 0xDC, 0x3F, 0xD3, 0x9E, 0xCB, 0x3E, 0x02, 0xD3, 0x1E, 0x8D, 0xDB, 0x3F, 0xDB, 0x1E, 0xDB, 0x1F, 0xE3, 0x5F, 0xDB, 0x3F, 0xD3, 0x1E, 0xDB, 0x5F, 0xD3, 0x5E, 0xD3, 0x7F, 0xCB, 0x7E, 0xCB, 0xBE, 0xD4, 0x1F, 0xDC, 0xBF, 0x40, 0x0D, 0x01, 0x38, 0x0D, 0x92, 0x61, 0x12, 0xD4, 0x7F, 0xCB, 0xBE, 0xCB, 0x5D, 0xCB, 0x3D, 0xCB, 0x1D, 0xD3, 0x1E, 0xD3, 0x3E, 0xD3, 0x5E, 0xCB, 0x5E, 0xD3, 0xBF, 0xC3, 0x9D, 0x40, 0x0E, 0x38, 0x0E, 0x38, 0x0D, 0x38, 0x0E, 0x69, 0x33, 0xD4, 0x1F, 0xCB, 0x7E, 0x01, 0xCB, 0x3E, 0x81, 0xCB, 0x1E, 0xD3, 0x1E, 0x01, 0xD3, 0x3E, 0x95, 0xD3, 0x7E, 0xD3, 0xFF, 0xCC, 0x3E, 0x51, 0x31, 0x30, 0x8D, 0x30, 0xED, 0x31, 0x0D, 0x29, 0x0C, 0x31, 0x0C, 0x28, 0xEC, 0x30, 0xCC, 0x30, 0xAC, 0x30, 0x6C, 0x40, 0x8E, 0xDC, 0x7F, 0xDB, 0xDF, 0xD3, 0x5F, 0xCA, 0xFE, + 0xCA, 0xDE, 0xD2, 0xFE, 0xDB, 0x3E, 0xE3, 0x9F, 0x01, 0x40, 0x8C, 0x80, 0x38, 0x6B, 0x01, 0x30, 0x6B, 0x81, 0x30, 0x8B, 0x38, 0x8B, 0x01, 0x38, 0xAC, 0x84, 0x30, 0xAC, 0x38, 0xCC, 0x30, 0xCC, 0x30, 0xEC, 0x30, 0xCC, 0x04, 0x30, 0xEC, 0x80, 0x30, 0xED, 0x01, 0x30, 0xEC, 0x85, 0x28, 0xEC, 0x31, 0x0C, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x82, 0x28, 0xEC, 0x31, 0x0D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x09, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, + 0x29, 0x0D, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x66, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x7F, 0x29, 0x0D, 0x43, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x04, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x8C, 0x30, 0xEC, 0x38, 0xEC, 0x40, 0xEC, 0x93, 0x36, 0xB3, 0xD8, 0xB3, 0xB8, 0xBB, 0xD8, 0x92, 0xB4, 0x48, 0xCD, 0x38, 0xAC, 0x38, 0xCC, 0x38, 0xEC, 0x38, 0xED, 0x01, 0x39, 0x0D, 0x02, 0x39, 0x2D, 0x02, 0x39, 0x2E, 0x09, 0x39, 0x4E, 0x82, 0x41, 0x4E, 0x39, 0x4E, 0x41, 0x4E, 0x04, 0x41, 0x4F, 0x0F, 0x41, 0x6F, 0x81, 0x41, 0x70, 0x41, 0x6F, 0x01, 0x41, 0x70, 0x80, 0x49, 0x70, 0x03, 0x41, 0x70, 0x05, 0x49, 0x70, 0x01, 0x49, 0x90, 0x01, 0x49, 0x70, 0x04, 0x49, 0x90, 0x80, 0x49, 0x70, 0x01, 0x49, 0x90, 0x82, 0x49, 0x91, 0x49, 0x90, 0x49, 0x91, 0x01, 0x51, 0x91, 0x05, 0x51, 0xB1, 0x81, 0x51, 0x91, 0x51, 0xB1, 0x02, 0x51, 0xB2, 0x02, 0x51, 0xD3, 0x8D, 0x51, 0xF4, 0x4A, 0x14, 0x4A, 0x15, 0x42, 0x35, 0x42, 0x56, 0x42, 0x76, 0x3A, 0x97, 0x32, 0xB7, 0x2A, 0xF8, 0x44, 0x3D, 0x4C, 0xDF, 0x3C, 0xBE, 0x34, 0xDF, 0x34, 0xFE, 0x01, 0x35, 0x1E, 0x82, 0x35, 0x3F, 0x35, 0x5F, 0x3D, 0x7F, 0x01, 0x3D, 0x9F, 0x01, 0x3D, 0x9E, 0x82, 0x35, 0x9D, 0x35, 0xBD, 0x35, 0xDD, 0x02, 0x36, 0x1E, 0x01, 0x2E, 0x3E, 0x80, 0x26, 0x3F, 0x01, 0x1E, 0x3F, 0x04, 0x16, 0x3F, 0x02, 0x0E, 0x1F, 0x01, 0x0D, 0xFF, 0x02, 0x05, 0xFF, 0x02, 0x05, 0xDF, 0x02, 0x05, 0xBF, 0x80, 0x05, 0x9F, 0x03, 0x05, 0x7F, 0x03, 0x05, 0x5F, 0x01, + 0x05, 0x7F, 0x01, 0x05, 0x9F, 0x82, 0x05, 0xDF, 0x05, 0xFF, 0x06, 0x1F, 0x01, 0x06, 0x3F, 0x80, 0x06, 0x5F, 0x01, 0x0E, 0x9F, 0x88, 0x1E, 0xBF, 0x2E, 0xBF, 0x4E, 0xBF, 0x76, 0x5F, 0x3A, 0xF3, 0x7A, 0xD4, 0x92, 0x53, 0x99, 0xF2, 0xA9, 0xD3, 0x01, 0xB1, 0xF4, 0x86, 0xA9, 0xF4, 0xA1, 0xF4, 0xA2, 0x34, 0x81, 0xB2, 0x69, 0x71, 0x61, 0x92, 0x59, 0x91, 0x02, 0x51, 0x91, 0x02, 0x49, 0x90, 0x86, 0x49, 0x70, 0x41, 0x50, 0x41, 0x70, 0x41, 0x4F, 0x41, 0x6F, 0x41, 0x4F, 0x39, 0x4F, 0x04, 0x39, 0x2E, 0x81, 0x31, 0x2E, 0x39, 0x2D, 0x04, 0x31, 0x2D, 0x05, 0x31, 0x0D, 0x08, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x15, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x28, 0xEC, 0x81, 0x29, 0x0D, 0x28, 0xEC, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x01, 0x21, 0x2E, 0x01, 0x19, 0x2F, 0x8A, 0x19, 0x30, 0x11, 0x51, 0x19, 0x92, 0x21, 0xD4, 0x21, 0xF4, 0x21, 0xF3, 0x11, 0x51, 0x09, 0x0F, 0x08, 0xEF, 0x09, 0x0F, 0x10, 0xEF, 0x02, 0x11, 0x0F, 0x80, 0x11, 0x10, 0x06, 0x11, 0x0F, 0x82, 0x11, 0x10, 0x11, 0x0F, 0x11, 0x2F, 0x15, 0x11, 0x0F, 0x80, 0x11, 0x2F, 0x06, 0x11, 0x0F, 0x80, 0x10, 0xEF, 0x01, 0x11, 0x0F, 0x80, 0x19, 0x10, 0x01, 0x19, 0x0F, 0x82, 0x11, 0x0F, 0x11, 0x30, 0x11, 0x0F, 0x01, 0x11, 0x30, 0x85, 0x09, 0x31, 0x09, 0x52, 0x09, 0x73, 0x09, 0xB4, 0x09, 0xB5, 0x01, 0xB5, 0x04, 0x01, 0xB6, 0x80, 0x01, 0x96, 0x01, 0x09, + 0xB6, 0x87, 0x09, 0xB5, 0x11, 0xB4, 0x11, 0x73, 0x19, 0x92, 0x19, 0x30, 0x21, 0x2F, 0x29, 0x2E, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x01, 0x31, 0x0D, 0x89, 0x30, 0xED, 0x28, 0xAD, 0x30, 0x6D, 0x48, 0xCF, 0xCC, 0x7E, 0xCC, 0x1D, 0xBB, 0x3B, 0xBB, 0x3C, 0xC3, 0x3C, 0xC3, 0x3D, 0x01, 0xCB, 0x5D, 0x94, 0xC3, 0x1C, 0xCB, 0x3D, 0xD3, 0x9E, 0xD3, 0x7E, 0xCB, 0x7D, 0xC3, 0x5C, 0xC3, 0x3C, 0xBB, 0x3C, 0xB3, 0x3B, 0xB3, 0x5B, 0xB3, 0x7B, 0x9A, 0xD8, 0x38, 0x0D, 0x38, 0x2D, 0x40, 0x6E, 0x8A, 0xB7, 0xCC, 0x5E, 0xB3, 0x7B, 0xB3, 0x3B, 0xBB, 0x3B, 0xBB, 0x1B, 0x01, 0xBB, 0x1C, 0x84, 0xBA, 0xFB, 0xAA, 0xDA, 0xA2, 0xB9, 0x69, 0x73, 0x40, 0x6E, 0x01, 0x38, 0x6E, 0x92, 0x38, 0x4E, 0x40, 0x4F, 0xAB, 0x3B, 0xB3, 0x5C, 0xB3, 0x3C, 0xBB, 0x3C, 0xBB, 0x1C, 0xC3, 0x3D, 0xC3, 0x3C, 0xBB, 0x3C, 0xB3, 0x1B, 0xAB, 0x3A, 0x9B, 0x18, 0x69, 0xF3, 0x28, 0x8C, 0x28, 0xCD, 0x31, 0x0D, 0x31, 0x2D, 0x31, 0x0C, 0x01, 0x30, 0xEC, 0x97, 0x30, 0xAC, 0x30, 0x8C, 0x40, 0xCE, 0xCC, 0x5E, 0xD4, 0x3F, 0xC3, 0x7D, 0xBB, 0x3D, 0xBB, 0x1C, 0xC3, 0x3C, 0xCB, 0x5D, 0xC3, 0x3C, 0x92, 0x94, 0x8A, 0x73, 0x8A, 0x53, 0x79, 0xD1, 0x69, 0x90, 0x59, 0x0E, 0x48, 0xCD, 0x40, 0x8B, 0x38, 0x6B, 0x30, 0x6B, 0x38, 0x6B, 0x30, 0x8B, 0x30, 0xAC, 0x01, 0x38, 0xAC, 0x82, 0x30, 0xAC, 0x30, 0xCC, 0x30, 0xEC, 0x02, 0x30, 0xCC, 0x84, 0x30, 0xEC, 0x31, 0x0C, 0x28, 0xEC, 0x31, 0x0C, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x82, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x03, 0x29, 0x0D, 0x80, + 0x31, 0x0D, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x0A, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x0F, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x02, 0x29, 0x0D, 0x89, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x87, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x1A, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x42, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x7F, 0x29, 0x0D, 0x4B, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x04, 0x31, 0x0D, 0x84, 0x30, 0xED, 0x30, 0xEC, 0x38, 0xCC, 0x7A, 0x52, 0xAB, + 0xD8, 0x01, 0xB3, 0xB8, 0x84, 0x72, 0x11, 0x40, 0xAB, 0x38, 0xCC, 0x38, 0xEC, 0x38, 0xED, 0x02, 0x39, 0x0D, 0x03, 0x39, 0x2D, 0x02, 0x39, 0x2E, 0x0E, 0x39, 0x4E, 0x80, 0x41, 0x4E, 0x05, 0x41, 0x4F, 0x13, 0x41, 0x6F, 0x82, 0x41, 0x70, 0x41, 0x6F, 0x49, 0x70, 0x01, 0x41, 0x70, 0x04, 0x49, 0x70, 0x81, 0x49, 0x90, 0x49, 0x70, 0x05, 0x49, 0x90, 0x81, 0x51, 0x91, 0x49, 0x90, 0x01, 0x49, 0x91, 0x83, 0x51, 0x91, 0x49, 0x91, 0x49, 0x90, 0x51, 0x91, 0x05, 0x51, 0xB1, 0x01, 0x59, 0xB2, 0x80, 0x59, 0xD2, 0x01, 0x51, 0xD2, 0x80, 0x51, 0xD3, 0x01, 0x51, 0xF3, 0x8A, 0x49, 0xF4, 0x4A, 0x14, 0x4A, 0x34, 0x42, 0x35, 0x42, 0x55, 0x3A, 0x55, 0x3A, 0x76, 0x2A, 0x56, 0x33, 0x19, 0x4C, 0x7E, 0x4C, 0xFF, 0x01, 0x45, 0x3F, 0x01, 0x45, 0x5F, 0x01, 0x4D, 0x5F, 0x86, 0x55, 0x7F, 0x55, 0x9F, 0x5D, 0xFF, 0x5E, 0x3F, 0x5E, 0x5F, 0x5E, 0x7F, 0x56, 0x5E, 0x01, 0x4E, 0x5E, 0x84, 0x46, 0x5E, 0x3E, 0x3E, 0x3E, 0x5E, 0x2E, 0x1E, 0x2E, 0x3E, 0x01, 0x26, 0x3E, 0x80, 0x26, 0x3F, 0x02, 0x1E, 0x3F, 0x01, 0x16, 0x1F, 0x80, 0x0E, 0x1F, 0x02, 0x0D, 0xFF, 0x01, 0x05, 0xFF, 0x04, 0x05, 0xDF, 0x80, 0x05, 0xBF, 0x03, 0x05, 0x9F, 0x05, 0x05, 0x7F, 0x01, 0x05, 0x9F, 0x81, 0x05, 0xBF, 0x05, 0xFF, 0x01, 0x06, 0x1F, 0x8F, 0x06, 0x3F, 0x06, 0x5F, 0x06, 0x7F, 0x06, 0x9F, 0x0E, 0xDF, 0x1E, 0xDF, 0x26, 0xDF, 0x3E, 0xBF, 0x6E, 0xBF, 0x3B, 0x74, 0x72, 0xD4, 0x8A, 0x33, 0xA2, 0x13, 0xA9, 0xF3, 0xA9, 0xF4, 0xA9, 0xD4, 0x01, 0xA9, 0xF4, 0x85, 0xA2, 0x14, 0x91, 0xF3, 0x71, 0x51, + 0x61, 0x71, 0x61, 0x91, 0x59, 0x91, 0x01, 0x51, 0x91, 0x04, 0x49, 0x70, 0x84, 0x41, 0x70, 0x41, 0x4F, 0x41, 0x2F, 0x41, 0x4F, 0x39, 0x4F, 0x02, 0x39, 0x4E, 0x01, 0x39, 0x2E, 0x06, 0x31, 0x2D, 0x04, 0x31, 0x0D, 0x81, 0x29, 0x0D, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0B, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2E, 0x21, 0x2E, 0x21, 0x2F, 0x01, 0x19, 0x2F, 0x86, 0x19, 0x30, 0x19, 0x51, 0x19, 0x72, 0x19, 0xB2, 0x21, 0xD3, 0x2A, 0x14, 0x19, 0xD3, 0x01, 0x11, 0x92, 0x80, 0x19, 0xB3, 0x01, 0x19, 0x93, 0x81, 0x11, 0x92, 0x19, 0x93, 0x01, 0x11, 0x93, 0x81, 0x11, 0x72, 0x19, 0x92, 0x02, 0x11, 0x72, 0x80, 0x11, 0x92, 0x06, 0x11, 0x72, 0x80, 0x19, 0x72, 0x08, 0x11, 0x72, 0x80, 0x11, 0x92, 0x02, 0x11, 0x72, 0x01, 0x11, 0x92, 0x01, 0x11, 0x72, 0x83, 0x19, 0x92, 0x11, 0x72, 0x11, 0x92, 0x11, 0x72, 0x01, 0x19, 0x92, 0x01, 0x19, 0x93, 0x01, 0x19, 0xB3, 0x01, 0x19, 0x93, 0x01, 0x19, 0x92, 0x81, 0x19, 0xB3, 0x11, 0x92, 0x02, 0x11, 0xB3, 0x01, 0x09, 0x94, 0x81, 0x01, 0xB4, 0x01, 0xB5, 0x01, 0x01, 0xD6, 0x02, 0x01, + 0xB6, 0x01, 0x01, 0x96, 0x89, 0x09, 0xB6, 0x09, 0x95, 0x09, 0xB5, 0x11, 0xB5, 0x11, 0x93, 0x19, 0x72, 0x19, 0x50, 0x21, 0x2F, 0x29, 0x0E, 0x29, 0x2D, 0x01, 0x28, 0xEC, 0x8A, 0x29, 0x0C, 0x31, 0x0D, 0x28, 0xEC, 0x31, 0x0D, 0x30, 0xED, 0x28, 0xCD, 0x30, 0xCD, 0x28, 0x8D, 0x20, 0x0B, 0x28, 0x0B, 0x30, 0x0B, 0x02, 0x30, 0x0C, 0x80, 0x38, 0x0C, 0x06, 0x30, 0x0C, 0x01, 0x30, 0x0B, 0x84, 0x30, 0x0C, 0x30, 0x0B, 0x28, 0x0B, 0x28, 0x0C, 0x38, 0x8E, 0x01, 0x38, 0xAE, 0x80, 0x28, 0x2C, 0x01, 0x28, 0x0B, 0x80, 0x28, 0x0C, 0x06, 0x30, 0x0C, 0x85, 0x30, 0x6D, 0x38, 0x8D, 0x30, 0x8D, 0x38, 0xAE, 0x30, 0x8D, 0x30, 0x6D, 0x01, 0x28, 0x0C, 0x04, 0x30, 0x0C, 0x80, 0x30, 0x0B, 0x01, 0x28, 0x0B, 0x83, 0x20, 0x0B, 0x28, 0x6B, 0x30, 0xED, 0x28, 0xCC, 0x01, 0x28, 0xEC, 0x80, 0x31, 0x0C, 0x02, 0x28, 0xEC, 0x83, 0x30, 0xCC, 0x30, 0x8C, 0x20, 0x0A, 0x28, 0x0B, 0x05, 0x30, 0x0C, 0x01, 0x92, 0x33, 0x80, 0x9A, 0x53, 0x02, 0x92, 0x53, 0x8F, 0x92, 0x73, 0x82, 0x33, 0x79, 0xF1, 0x61, 0x4F, 0x51, 0x0E, 0x48, 0xAC, 0x38, 0x6B, 0x30, 0x4A, 0x30, 0x2A, 0x30, 0x6B, 0x30, 0x8B, 0x30, 0x8C, 0x30, 0x8B, 0x30, 0xAC, 0x30, 0xAB, 0x30, 0xCC, 0x04, 0x30, 0xEC, 0x03, 0x28, 0xEC, 0x81, 0x31, 0x0C, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x81, 0x31, 0x0D, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, + 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x83, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0D, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x2C, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x19, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x1A, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x41, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x7F, 0x29, 0x0D, 0x4B, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x04, 0x31, 0x0D, 0x8A, 0x30, 0xED, 0x30, 0xCC, 0x6A, 0x31, 0xAB, 0xD8, 0xAB, 0xB8, 0xA3, 0x97, 0x59, 0x6F, 0x38, 0xAC, 0x38, 0xCC, 0x38, 0xED, 0x30, 0xEC, 0x02, 0x39, 0x0D, 0x03, 0x39, 0x2D, 0x01, 0x39, 0x2E, 0x11, 0x39, 0x4E, 0x83, 0x41, 0x4E, 0x39, 0x4E, 0x41, 0x4E, + 0x39, 0x4E, 0x06, 0x41, 0x4F, 0x18, 0x41, 0x6F, 0x80, 0x41, 0x70, 0x02, 0x49, 0x70, 0x83, 0x49, 0x90, 0x49, 0x70, 0x49, 0x90, 0x49, 0x70, 0x08, 0x49, 0x90, 0x01, 0x51, 0x91, 0x05, 0x51, 0xB1, 0x80, 0x51, 0xB2, 0x02, 0x51, 0xD2, 0x02, 0x51, 0xF3, 0x80, 0x4A, 0x13, 0x01, 0x4A, 0x14, 0x01, 0x42, 0x14, 0x90, 0x3A, 0x35, 0x32, 0x35, 0x2A, 0x96, 0x3B, 0xBA, 0x5D, 0x1F, 0x5D, 0x5F, 0x55, 0x1E, 0x54, 0xFE, 0x4C, 0x7C, 0x4C, 0x3B, 0x4C, 0x3A, 0x4C, 0x5A, 0x64, 0xFC, 0x75, 0xBF, 0x86, 0x5F, 0x7E, 0x5F, 0x7E, 0x7F, 0x01, 0x76, 0x5F, 0x85, 0x6E, 0x5F, 0x66, 0x5F, 0x5E, 0x5F, 0x4E, 0x3E, 0x3E, 0x1E, 0x36, 0x1E, 0x01, 0x2E, 0x1E, 0x84, 0x26, 0x1E, 0x26, 0x3F, 0x1E, 0x1F, 0x1E, 0x3F, 0x1E, 0x1F, 0x01, 0x16, 0x1F, 0x82, 0x15, 0xFF, 0x0D, 0xFF, 0x0E, 0x1F, 0x01, 0x0D, 0xFF, 0x01, 0x05, 0xFF, 0x01, 0x05, 0xDF, 0x01, 0x05, 0xBF, 0x03, 0x05, 0x9F, 0x80, 0x05, 0x7F, 0x03, 0x05, 0x9F, 0x01, 0x05, 0xBF, 0x91, 0x05, 0xDF, 0x05, 0xFF, 0x06, 0x1F, 0x06, 0x3F, 0x06, 0x5F, 0x06, 0x7F, 0x06, 0x9F, 0x06, 0xBF, 0x0E, 0xDF, 0x16, 0xFF, 0x27, 0x1F, 0x3E, 0xDF, 0x66, 0xFF, 0x4C, 0x57, 0x5A, 0x93, 0x8A, 0x73, 0x9A, 0x13, 0xAA, 0x13, 0x01, 0xA9, 0xF3, 0x87, 0xA9, 0xF4, 0xAA, 0x14, 0xA1, 0xF3, 0x9A, 0x34, 0x79, 0x92, 0x69, 0x71, 0x61, 0x91, 0x59, 0x91, 0x01, 0x51, 0x91, 0x81, 0x49, 0x70, 0x51, 0x91, 0x01, 0x49, 0x70, 0x81, 0x49, 0x50, 0x41, 0x50, 0x01, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x82, 0x39, 0x4E, 0x39, 0x2E, 0x39, 0x4E, 0x02, 0x39, 0x2E, 0x01, 0x31, + 0x2D, 0x80, 0x31, 0x2E, 0x02, 0x31, 0x2D, 0x80, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x0B, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x21, 0x2E, 0x8A, 0x21, 0x2F, 0x19, 0x0F, 0x19, 0x2F, 0x19, 0x50, 0x19, 0x51, 0x19, 0x71, 0x19, 0x92, 0x19, 0xD4, 0x2A, 0x35, 0x22, 0x35, 0x22, 0x36, 0x01, 0x22, 0x15, 0x84, 0x22, 0x36, 0x22, 0x15, 0x22, 0x16, 0x22, 0x15, 0x22, 0x36, 0x01, 0x22, 0x15, 0x82, 0x21, 0xF5, 0x22, 0x15, 0x19, 0xF4, 0x05, 0x21, 0xF5, 0x80, 0x22, 0x15, 0x02, 0x21, 0xF5, 0x85, 0x22, 0x15, 0x21, 0xF5, 0x22, 0x15, 0x21, 0xF5, 0x22, 0x15, 0x21, 0xF4, 0x04, 0x22, 0x15, 0x83, 0x21, 0xF5, 0x1A, 0x15, 0x1A, 0x14, 0x22, 0x15, 0x01, 0x21, 0xF4, 0x87, 0x21, 0xF5, 0x22, 0x15, 0x21, 0xF5, 0x22, 0x15, 0x21, 0xF4, 0x21, 0xF5, 0x21, 0xF4, 0x22, 0x15, 0x01, 0x21, 0xF5, 0x87, 0x19, 0xB4, 0x21, 0xD4, 0x19, 0xD3, 0x19, 0xD4, 0x19, 0xD3, 0x19, 0xD4, 0x11, 0xD4, 0x11, 0xB4, 0x01, 0x09, 0xB4, 0x83, 0x09, 0xB5, 0x01, 0xB5, 0x01, 0xB6, + 0x01, 0xD6, 0x04, 0x01, 0xB6, 0x88, 0x01, 0x96, 0x01, 0x95, 0x09, 0xB5, 0x11, 0xB4, 0x11, 0x93, 0x19, 0x72, 0x19, 0x30, 0x21, 0x2F, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x88, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0D, 0x31, 0x0D, 0x29, 0x0D, 0x28, 0xED, 0x28, 0xCD, 0x30, 0xED, 0x28, 0xAC, 0x02, 0x28, 0x4B, 0x02, 0x28, 0x2B, 0x80, 0x20, 0x2A, 0x01, 0x28, 0x2B, 0x82, 0x20, 0x0A, 0x20, 0x2B, 0x28, 0x2B, 0x02, 0x28, 0x4B, 0x02, 0x28, 0x6C, 0x81, 0x30, 0x8C, 0x30, 0x8D, 0x01, 0x30, 0xAD, 0x03, 0x28, 0x8C, 0x03, 0x28, 0x6C, 0x80, 0x28, 0x6B, 0x01, 0x28, 0x6C, 0x86, 0x28, 0x8C, 0x30, 0xAD, 0x28, 0xAD, 0x30, 0xCD, 0x30, 0xAD, 0x30, 0xCD, 0x30, 0xAD, 0x02, 0x28, 0x6C, 0x81, 0x28, 0x4C, 0x28, 0x4B, 0x01, 0x28, 0x6B, 0x01, 0x28, 0x8C, 0x81, 0x28, 0xAC, 0x28, 0xCC, 0x04, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x01, 0x28, 0xCC, 0x81, 0x28, 0xAC, 0x28, 0x8C, 0x01, 0x28, 0x6C, 0x84, 0x28, 0x4B, 0x28, 0x2B, 0x20, 0x2B, 0x20, 0x0A, 0x9A, 0x12, 0x01, 0x91, 0xF2, 0x80, 0x9A, 0x12, 0x01, 0x91, 0xF2, 0x81, 0x89, 0xF2, 0x92, 0x32, 0x02, 0x92, 0x53, 0x88, 0x8A, 0x53, 0x82, 0x12, 0x71, 0xD1, 0x71, 0xB1, 0x59, 0x4F, 0x48, 0xAC, 0x38, 0x8C, 0x38, 0x6B, 0x30, 0x6B, 0x01, 0x30, 0x4B, 0x82, 0x30, 0x6B, 0x30, 0x8C, 0x30, 0xAC, 0x01, 0x30, 0xCC, 0x02, 0x30, 0xEC, 0x04, 0x31, 0x0C, 0x80, 0x31, 0x0D, 0x02, 0x28, 0xEC, 0x81, 0x31, 0x0C, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, + 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x02, 0x29, 0x2C, 0x82, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x81, 0x29, 0x2C, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x19, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x18, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x7F, 0x29, 0x0D, 0x7F, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x08, 0x31, 0x0D, 0x87, 0x30, 0xEC, 0x41, 0x4E, 0x93, 0x97, 0xA3, 0xB8, 0x93, 0x36, 0x40, 0xEC, 0x38, 0xCC, 0x38, 0xEC, 0x01, 0x38, 0xED, 0x80, 0x31, 0x0D, 0x02, 0x39, 0x0D, 0x02, 0x39, 0x2D, 0x02, + 0x39, 0x2E, 0x0E, 0x39, 0x4E, 0x80, 0x39, 0x2E, 0x05, 0x39, 0x4E, 0x81, 0x41, 0x4F, 0x39, 0x4F, 0x0C, 0x41, 0x4F, 0x80, 0x41, 0x6F, 0x03, 0x41, 0x4F, 0x0D, 0x41, 0x6F, 0x06, 0x49, 0x70, 0x06, 0x49, 0x90, 0x02, 0x51, 0x91, 0x06, 0x51, 0xB1, 0x04, 0x51, 0xD2, 0x82, 0x51, 0xF2, 0x51, 0xF3, 0x49, 0xF3, 0x01, 0x4A, 0x13, 0x01, 0x4A, 0x14, 0x9B, 0x42, 0x14, 0x3A, 0x35, 0x32, 0x14, 0x32, 0x75, 0x5C, 0x1C, 0x6C, 0xBE, 0x43, 0x9A, 0x42, 0xF7, 0x4A, 0xF7, 0x52, 0xD6, 0x52, 0xB5, 0x4A, 0x74, 0x4A, 0x54, 0x4A, 0x53, 0x5A, 0xD5, 0x63, 0x77, 0x6B, 0xF9, 0x7C, 0xBB, 0x7D, 0x1C, 0x7D, 0x7E, 0x7D, 0xDF, 0x6E, 0x3F, 0x5E, 0x5F, 0x56, 0x7F, 0x4E, 0x5E, 0x46, 0x5E, 0x3E, 0x3E, 0x2D, 0xFD, 0x01, 0x25, 0xFE, 0x80, 0x26, 0x1F, 0x01, 0x1E, 0x1F, 0x01, 0x16, 0x1F, 0x80, 0x0E, 0x1F, 0x02, 0x0D, 0xFF, 0x81, 0x05, 0xDF, 0x05, 0xFF, 0x01, 0x05, 0xDF, 0x04, 0x05, 0xBF, 0x02, 0x05, 0x9F, 0x02, 0x05, 0xBF, 0x01, 0x05, 0xDF, 0x80, 0x05, 0xFF, 0x01, 0x06, 0x3F, 0x98, 0x06, 0x7F, 0x06, 0x9F, 0x06, 0xBF, 0x06, 0xDF, 0x06, 0xFF, 0x0E, 0xFF, 0x1F, 0x1F, 0x36, 0xFF, 0x5E, 0xFF, 0x65, 0x9C, 0x42, 0x11, 0x82, 0x53, 0x92, 0x13, 0xA1, 0xF3, 0xA9, 0xF3, 0xB2, 0x14, 0xA9, 0xD3, 0xA9, 0xF3, 0xAA, 0x14, 0x9A, 0x14, 0x89, 0xD3, 0x69, 0x71, 0x61, 0x91, 0x59, 0x91, 0x51, 0x91, 0x01, 0x51, 0x71, 0x03, 0x49, 0x70, 0x81, 0x41, 0x4F, 0x41, 0x50, 0x01, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x01, 0x39, 0x4E, 0x01, 0x39, 0x2E, 0x80, 0x31, 0x0D, 0x05, 0x31, 0x2D, 0x01, 0x29, 0x0D, + 0x03, 0x31, 0x0D, 0x0E, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x81, 0x29, 0x2C, 0x29, 0x0C, 0x02, 0x29, 0x2D, 0x80, 0x21, 0x0D, 0x01, 0x21, 0x2E, 0x8A, 0x19, 0x0E, 0x19, 0x2F, 0x19, 0x30, 0x19, 0x50, 0x19, 0x51, 0x19, 0x72, 0x11, 0x72, 0x11, 0x92, 0x19, 0xB3, 0x19, 0xD4, 0x19, 0xB4, 0x03, 0x19, 0xD4, 0x80, 0x19, 0xD5, 0x07, 0x19, 0xD4, 0x83, 0x19, 0xF4, 0x21, 0xF4, 0x19, 0xD4, 0x19, 0xD5, 0x02, 0x21, 0xD4, 0x81, 0x21, 0xF4, 0x21, 0xD4, 0x01, 0x19, 0xD4, 0x01, 0x21, 0xF4, 0x01, 0x21, 0xD4, 0x80, 0x21, 0xF4, 0x08, 0x19, 0xD4, 0x85, 0x19, 0xF4, 0x19, 0xD4, 0x19, 0xB4, 0x19, 0xD4, 0x21, 0xD4, 0x19, 0xD4, 0x03, 0x19, 0xB4, 0x81, 0x19, 0xB3, 0x19, 0xD3, 0x01, 0x19, 0xB3, 0x88, 0x11, 0xB3, 0x11, 0x93, 0x09, 0x93, 0x09, 0x73, 0x09, 0x94, 0x09, 0xB4, 0x01, 0x95, 0x01, 0xB5, 0x01, 0xD6, 0x05, 0x01, 0xB6, 0x01, 0x09, 0xB6, 0x86, 0x09, 0xB5, 0x11, 0xB4, 0x11, 0x93, 0x19, 0x51, 0x19, 0x30, 0x21, 0x2E, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x82, 0x31, 0x0D, 0x29, 0x0D, 0x31, 0x0D, 0x02, 0x29, 0x0D, 0x01, 0x28, 0xED, 0x8C, 0x30, 0xCD, 0x30, 0xCC, 0x30, 0xAC, 0x30, 0xCC, 0x30, 0xAC, 0x30, 0xCC, 0x30, 0xAC, 0x30, 0xCC, 0x28, + 0xAC, 0x30, 0xAC, 0x28, 0xAC, 0x30, 0xCC, 0x28, 0xAC, 0x01, 0x30, 0xCC, 0x83, 0x30, 0xCD, 0x28, 0xCC, 0x30, 0xCC, 0x28, 0xCC, 0x01, 0x30, 0xCD, 0x01, 0x30, 0xED, 0x85, 0x30, 0xCD, 0x28, 0xCC, 0x30, 0xCC, 0x28, 0xCC, 0x28, 0xAC, 0x30, 0xCC, 0x02, 0x28, 0xAC, 0x81, 0x30, 0xCC, 0x30, 0xCD, 0x05, 0x30, 0xED, 0x82, 0x30, 0xCD, 0x30, 0xED, 0x28, 0xCC, 0x02, 0x28, 0xAC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xEC, 0x82, 0x31, 0x0C, 0x29, 0x0C, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x80, 0x31, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x31, 0x0D, 0x01, 0x28, 0xEC, 0x02, 0x28, 0xCC, 0x01, 0x28, 0xAC, 0x86, 0x28, 0x8C, 0x99, 0xD2, 0x91, 0xD1, 0x99, 0xF2, 0x91, 0xD1, 0x91, 0xF2, 0x91, 0xD1, 0x01, 0x91, 0xF2, 0x80, 0x91, 0xF1, 0x01, 0x92, 0x12, 0x01, 0x8A, 0x12, 0x8A, 0x8A, 0x33, 0x92, 0x53, 0x8A, 0x53, 0x82, 0x32, 0x7A, 0x12, 0x79, 0xF2, 0x69, 0xB1, 0x61, 0x6F, 0x50, 0xED, 0x40, 0x8C, 0x30, 0x4B, 0x01, 0x30, 0x4A, 0x84, 0x30, 0x6B, 0x38, 0xAC, 0x30, 0xAC, 0x30, 0xCC, 0x38, 0xEC, 0x01, 0x30, 0xEC, 0x80, 0x31, 0x0C, 0x05, 0x30, 0xEC, 0x82, 0x28, 0xEC, 0x31, 0x0C, 0x30, 0xEC, 0x01, 0x31, 0x0C, 0x80, 0x31, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, + 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x85, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x84, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x7F, 0x29, 0x0D, 0x7F, 0x29, 0x0D, 0x21, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x04, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x85, 0x30, 0xEC, 0x49, 0x8F, 0x59, 0xD0, 0x51, 0x6F, 0x38, 0xCC, 0x38, 0xEC, 0x01, 0x30, 0xEC, 0x81, 0x30, 0xED, 0x31, 0x0D, 0x03, 0x39, 0x0D, 0x02, 0x39, 0x2D, 0x80, 0x39, 0x2E, 0x01, 0x39, 0x2D, 0x02, 0x39, 0x2E, 0x04, 0x39, 0x4E, 0x80, 0x39, 0x2E, 0x04, 0x39, 0x4E, 0x80, 0x39, + 0x2E, 0x05, 0x39, 0x4E, 0x01, 0x41, 0x4F, 0x82, 0x39, 0x4E, 0x41, 0x4F, 0x39, 0x4E, 0x03, 0x39, 0x4F, 0x03, 0x41, 0x4E, 0x81, 0x41, 0x4F, 0x39, 0x4F, 0x0B, 0x41, 0x4F, 0x80, 0x41, 0x6F, 0x01, 0x41, 0x4F, 0x81, 0x41, 0x6F, 0x41, 0x4F, 0x03, 0x41, 0x6F, 0x80, 0x41, 0x70, 0x01, 0x41, 0x6F, 0x80, 0x49, 0x6F, 0x05, 0x49, 0x70, 0x03, 0x49, 0x90, 0x06, 0x51, 0x91, 0x04, 0x51, 0xB1, 0x80, 0x51, 0xB2, 0x03, 0x51, 0xD2, 0x02, 0x51, 0xF3, 0x02, 0x49, 0xF3, 0xA0, 0x41, 0xF4, 0x39, 0xF4, 0x3A, 0x15, 0x4A, 0xD7, 0x6B, 0xBA, 0x5A, 0xD7, 0x62, 0xB7, 0x62, 0x96, 0x6A, 0x95, 0x6A, 0x55, 0x72, 0x54, 0x72, 0x55, 0x72, 0x34, 0x6A, 0x54, 0x62, 0x54, 0x5A, 0x54, 0x52, 0x73, 0x52, 0xB4, 0x4A, 0xD4, 0x5B, 0xF8, 0x85, 0xDF, 0x86, 0x3F, 0x76, 0x3F, 0x66, 0x3F, 0x5E, 0x3F, 0x4E, 0x3F, 0x46, 0x1E, 0x36, 0x1E, 0x2D, 0xFE, 0x25, 0xFE, 0x26, 0x1F, 0x1E, 0x1F, 0x1D, 0xFF, 0x01, 0x15, 0xFF, 0x04, 0x0D, 0xFF, 0x02, 0x05, 0xDF, 0x06, 0x05, 0xBF, 0x01, 0x05, 0xDF, 0x01, 0x05, 0xFF, 0x85, 0x06, 0x1F, 0x06, 0x3F, 0x06, 0x7F, 0x06, 0x9F, 0x06, 0xBF, 0x06, 0xDF, 0x01, 0x06, 0xFF, 0x91, 0x0F, 0x1F, 0x1F, 0x3F, 0x2E, 0xFF, 0x4E, 0xFF, 0x76, 0x9F, 0x3A, 0x51, 0x72, 0x53, 0x8A, 0x33, 0xA2, 0x13, 0xAA, 0x13, 0xA9, 0xF3, 0xA1, 0xD3, 0xA9, 0xD3, 0xAA, 0x14, 0xA2, 0x14, 0x92, 0x14, 0x71, 0x71, 0x61, 0x91, 0x01, 0x59, 0x91, 0x01, 0x51, 0x91, 0x80, 0x51, 0x71, 0x02, 0x49, 0x70, 0x81, 0x41, 0x4F, 0x41, 0x50, 0x01, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x85, 0x39, 0x4E, 0x31, + 0x2E, 0x39, 0x4E, 0x39, 0x2E, 0x31, 0x2D, 0x31, 0x2E, 0x03, 0x31, 0x2D, 0x01, 0x29, 0x0D, 0x03, 0x31, 0x0D, 0x81, 0x29, 0x0D, 0x31, 0x0D, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x21, 0x0D, 0x01, 0x21, 0x2E, 0x01, 0x19, 0x2F, 0x82, 0x19, 0x30, 0x19, 0x50, 0x19, 0x51, 0x03, 0x11, 0x51, 0x82, 0x11, 0x52, 0x11, 0x51, 0x11, 0x52, 0x02, 0x19, 0x72, 0x80, 0x19, 0x92, 0x01, 0x19, 0x72, 0x02, 0x19, 0x92, 0x82, 0x19, 0x93, 0x19, 0x72, 0x19, 0x92, 0x01, 0x19, 0x93, 0x01, 0x19, 0x92, 0x80, 0x19, 0x93, 0x06, 0x19, 0x92, 0x04, 0x19, 0x72, 0x05, 0x19, 0x92, 0x82, 0x11, 0x72, 0x19, 0x72, 0x19, 0x92, 0x01, 0x19, 0x72, 0x80, 0x19, 0x93, 0x07, 0x19, 0x72, 0x01, 0x11, 0x72, 0x89, 0x11, 0x93, 0x11, 0x73, 0x11, 0x93, 0x09, 0x94, 0x09, 0xB4, 0x09, 0xB5, 0x01, 0x95, 0x09, 0xB6, 0x01, 0xB6, 0x09, 0xD6, 0x02, 0x01, 0xB6, 0x80, 0x09, 0xD6, 0x01, 0x09, 0xB5, 0x84, 0x11, 0xB4, 0x11, + 0x72, 0x19, 0x51, 0x19, 0x2F, 0x21, 0x0E, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x31, 0x2D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x85, 0x28, 0xED, 0x29, 0x0D, 0x30, 0xEC, 0x28, 0xEC, 0x30, 0xEC, 0x30, 0xCC, 0x02, 0x30, 0xEC, 0x82, 0x28, 0xCC, 0x28, 0xEC, 0x28, 0xCC, 0x01, 0x28, 0xEC, 0x89, 0x28, 0xED, 0x28, 0xCC, 0x30, 0xED, 0x28, 0xEC, 0x28, 0xED, 0x28, 0xEC, 0x28, 0xED, 0x28, 0xCC, 0x31, 0x0D, 0x28, 0xED, 0x01, 0x31, 0x0D, 0x07, 0x28, 0xEC, 0x84, 0x31, 0x0D, 0x28, 0xEC, 0x31, 0x0D, 0x28, 0xED, 0x31, 0x0D, 0x02, 0x30, 0xED, 0x07, 0x28, 0xEC, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x04, 0x29, 0x0C, 0x07, 0x28, 0xEC, 0x82, 0x28, 0xCC, 0x28, 0xEC, 0x28, 0xCB, 0x01, 0x28, 0xEC, 0x81, 0x99, 0xD2, 0x99, 0xF2, 0x02, 0x91, 0xD1, 0x8A, 0x91, 0xB1, 0x91, 0xD1, 0x91, 0xD2, 0x91, 0xF2, 0x92, 0x12, 0x9A, 0x12, 0x9A, 0x33, 0x91, 0xF2, 0x92, 0x12, 0x91, 0xF2, 0x89, 0xF2, 0x01, 0x92, 0x33, 0x8A, 0x92, 0x53, 0x8A, 0x33, 0x92, 0x53, 0x8A, 0x53, 0x82, 0x33, 0x7A, 0x12, 0x71, 0xB0, 0x59, 0x2E, 0x48, 0xAC, 0x38, 0x4B, 0x30, 0x4B, 0x01, 0x30, 0x4A, 0x81, 0x30, 0x8B, 0x30, 0xAB, 0x01, 0x30, 0xCC, 0x04, 0x30, 0xEC, 0x82, 0x31, 0x0C, 0x30, 0xEC, 0x31, 0x0C, 0x04, 0x30, 0xEC, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x03, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x02, 0x29, 0x0C, + 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x84, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x09, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x9C, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x28, 0xEC, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x7F, 0x29, 0x0D, 0x74, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x09, 0x31, 0x0D, 0x01, 0x30, 0xEC, 0x01, 0x38, 0xED, 0x01, 0x30, 0xED, 0x02, 0x31, 0x0D, 0x02, 0x39, 0x0D, 0x04, 0x39, 0x2D, 0x81, 0x39, 0x2E, + 0x39, 0x4E, 0x02, 0x39, 0x2E, 0x0A, 0x39, 0x4E, 0x80, 0x39, 0x2E, 0x0A, 0x39, 0x4E, 0x02, 0x39, 0x4F, 0x05, 0x39, 0x4E, 0x80, 0x39, 0x4F, 0x01, 0x39, 0x4E, 0x81, 0x41, 0x4E, 0x39, 0x4E, 0x0C, 0x41, 0x4F, 0x03, 0x41, 0x6F, 0x80, 0x41, 0x4F, 0x04, 0x41, 0x6F, 0x80, 0x49, 0x6F, 0x03, 0x49, 0x70, 0x80, 0x49, 0x90, 0x01, 0x49, 0x70, 0x81, 0x51, 0x90, 0x49, 0x90, 0x03, 0x49, 0x91, 0x01, 0x51, 0x91, 0x03, 0x51, 0xB1, 0x81, 0x51, 0xD1, 0x51, 0xB1, 0x03, 0x51, 0xD2, 0x80, 0x51, 0xF2, 0x01, 0x51, 0xF3, 0x82, 0x51, 0xD3, 0x51, 0xF3, 0x49, 0xF3, 0x02, 0x49, 0xD3, 0x80, 0x52, 0x34, 0x01, 0x6A, 0xD7, 0x83, 0x72, 0xD7, 0x72, 0xB6, 0x7A, 0x95, 0x82, 0x75, 0x03, 0x82, 0x55, 0x91, 0x82, 0x75, 0x7A, 0x55, 0x72, 0x34, 0x6A, 0x13, 0x59, 0xF3, 0x49, 0xD2, 0x49, 0xF2, 0x74, 0x1A, 0x85, 0x5E, 0x85, 0xFF, 0x6E, 0x3F, 0x66, 0x5F, 0x56, 0x5F, 0x4E, 0x7F, 0x3E, 0x3F, 0x36, 0x1E, 0x25, 0xDE, 0x25, 0xFF, 0x01, 0x1D, 0xFF, 0x01, 0x15, 0xFF, 0x02, 0x0D, 0xFF, 0x80, 0x0D, 0xDF, 0x07, 0x05, 0xDF, 0x03, 0x05, 0xFF, 0x01, 0x06, 0x1F, 0x83, 0x06, 0x5F, 0x06, 0x7F, 0x06, 0x9F, 0x06, 0xBF, 0x01, 0x06, 0xFF, 0x01, 0x0F, 0x1F, 0x91, 0x17, 0x1F, 0x2F, 0x1F, 0x47, 0x1F, 0x87, 0x3F, 0x4B, 0x54, 0x5A, 0x12, 0x8A, 0x74, 0x9A, 0x33, 0xAA, 0x34, 0xAA, 0x14, 0xA1, 0xD3, 0xAA, 0x14, 0xA1, 0xF3, 0xA2, 0x34, 0x92, 0x14, 0x79, 0x71, 0x61, 0x51, 0x59, 0x71, 0x02, 0x51, 0x71, 0x80, 0x51, 0x91, 0x03, 0x49, 0x70, 0x02, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x81, 0x39, 0x2E, 0x39, + 0x4E, 0x03, 0x39, 0x2E, 0x81, 0x31, 0x2E, 0x31, 0x0D, 0x04, 0x31, 0x2D, 0x03, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x0A, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2C, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x2C, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x08, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0D, 0x80, 0x21, 0x0D, 0x01, 0x21, 0x0E, 0x80, 0x21, 0x2F, 0x02, 0x19, 0x2F, 0x80, 0x19, 0x30, 0x05, 0x19, 0x0F, 0x80, 0x19, 0x2F, 0x01, 0x19, 0x0F, 0x80, 0x19, 0x2F, 0x01, 0x19, 0x0F, 0x83, 0x19, 0x2F, 0x19, 0x0F, 0x19, 0x30, 0x19, 0x2F, 0x0F, 0x19, 0x0F, 0x82, 0x19, 0x30, 0x19, 0x2F, 0x19, 0x30, 0x02, 0x19, 0x2F, 0x84, 0x11, 0x0F, 0x19, 0x2F, 0x19, 0x30, 0x11, 0x0F, 0x19, 0x2F, 0x01, 0x19, 0x30, 0x06, 0x19, 0x10, 0x01, 0x19, 0x30, 0x02, 0x19, 0x51, 0x81, 0x11, 0x51, 0x11, 0x31, 0x01, 0x11, 0x52, 0x81, 0x11, 0x73, 0x11, 0x94, 0x01, 0x09, 0x95, 0x02, 0x09, 0xB6, 0x82, 0x09, 0xD6, 0x09, 0xB6, 0x09, 0xD6, 0x01, 0x11, 0xD5, 0x84, 0x11, 0xB4, 0x11, 0x72, 0x19, 0x30, 0x19, 0x2F, 0x21, 0x0E, 0x02, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x84, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x30, 0xEC, 0x31, 0x0D, 0x02, 0x28, 0xEC, 0x81, 0x31, 0x0D, 0x29, + 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x28, 0xED, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x83, 0x28, 0xEC, 0x29, 0x0D, 0x28, 0xEC, 0x31, 0x0D, 0x05, 0x29, 0x0D, 0x81, 0x31, 0x0D, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x04, 0x28, 0xEC, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x82, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x85, 0x99, 0xD1, 0x91, 0xB1, 0x99, 0xF2, 0x91, 0xD1, 0x99, 0xD1, 0x99, 0xD2, 0x01, 0x91, 0xD1, 0x85, 0x91, 0xF2, 0x91, 0xD2, 0x99, 0xF2, 0x91, 0xD2, 0x99, 0xF2, 0x91, 0xF2, 0x01, 0x91, 0xD2, 0x03, 0x91, 0xF2, 0x81, 0x92, 0x33, 0x92, 0x13, 0x01, 0x92, 0x33, 0x8A, 0x8A, 0x33, 0x8A, 0x53, 0x8A, 0x73, 0x82, 0x33, 0x71, 0xF1, 0x59, 0x2E, 0x48, 0xAC, 0x38, 0x4B, 0x30, 0x2A, 0x28, 0x4A, 0x30, 0x4A, 0x01, 0x30, 0x8B, 0x82, 0x30, 0xAC, 0x30, 0xAB, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x80, 0x38, 0xEC, 0x06, 0x30, 0xEC, 0x80, 0x28, 0xEC, 0x02, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x0D, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x28, 0xEC, 0x29, 0x0C, + 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x85, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x7F, 0x29, 0x0D, 0x7F, 0x29, 0x0D, 0x33, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x09, 0x31, 0x0D, 0x01, 0x30, 0xED, 0x03, 0x31, 0x0D, 0x82, 0x39, 0x0D, 0x31, 0x0D, 0x39, 0x0D, 0x06, 0x39, 0x2D, 0x05, 0x39, 0x2E, 0x01, 0x39, 0x4E, 0x01, 0x39, 0x2E, 0x18, 0x39, 0x4E, 0x01, 0x39, 0x2E, 0x82, 0x39, 0x4E, 0x39, 0x2E, 0x39, 0x4E, 0x01, 0x39, 0x4F, 0x0E, 0x41, 0x4F, 0x81, 0x41, 0x6F, 0x41, 0x4F, 0x02, 0x41, 0x6F, 0x81, 0x41, 0x4F, 0x41, 0x6F, 0x01, 0x49, 0x6F, 0x05, 0x49, 0x70, 0x05, 0x49, 0x90, 0x02, 0x51, 0x91, 0x04, 0x51, 0xB1, 0x80, 0x51, + 0xB2, 0x06, 0x51, 0xD2, 0x80, 0x51, 0xD3, 0x03, 0x51, 0xD2, 0x86, 0x5A, 0x13, 0x6A, 0x95, 0x7A, 0xD6, 0x82, 0xD6, 0x82, 0x95, 0x8A, 0x75, 0x8A, 0x55, 0x04, 0x92, 0x55, 0x93, 0x8A, 0x34, 0x92, 0x35, 0x8A, 0x14, 0x79, 0xD3, 0x71, 0xF3, 0x61, 0xF3, 0x5A, 0x74, 0x53, 0x16, 0x5B, 0xF8, 0x85, 0xDF, 0x86, 0x5F, 0x6E, 0x3F, 0x66, 0x3F, 0x56, 0x5F, 0x46, 0x1F, 0x2D, 0xBD, 0x25, 0x9D, 0x25, 0xDF, 0x25, 0xFF, 0x1D, 0xDF, 0x01, 0x15, 0xFF, 0x80, 0x0D, 0xDF, 0x01, 0x0D, 0xFF, 0x04, 0x05, 0xDF, 0x02, 0x05, 0xFF, 0x02, 0x06, 0x1F, 0x01, 0x06, 0x3F, 0x9D, 0x06, 0x5F, 0x06, 0x9F, 0x06, 0xBF, 0x06, 0xDF, 0x06, 0xFF, 0x07, 0x1F, 0x0F, 0x3F, 0x0F, 0x5F, 0x17, 0x5F, 0x27, 0x3F, 0x3E, 0xDE, 0x6F, 0x1F, 0x75, 0x1B, 0x41, 0xF0, 0x8A, 0xB4, 0x92, 0x13, 0xA2, 0x33, 0xAA, 0x13, 0xA9, 0xF3, 0xA1, 0xF3, 0xAA, 0x34, 0xA2, 0x34, 0x9A, 0x14, 0x81, 0xD3, 0x61, 0x51, 0x61, 0x91, 0x59, 0x71, 0x51, 0x91, 0x51, 0x70, 0x51, 0x71, 0x02, 0x49, 0x70, 0x80, 0x41, 0x70, 0x02, 0x41, 0x4F, 0x84, 0x39, 0x4F, 0x39, 0x2F, 0x39, 0x4F, 0x39, 0x2E, 0x39, 0x4E, 0x03, 0x39, 0x2E, 0x83, 0x31, 0x2D, 0x31, 0x2E, 0x31, 0x2D, 0x31, 0x2E, 0x01, 0x31, 0x2D, 0x81, 0x31, 0x0D, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x0E, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, + 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x07, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x0C, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x83, 0x21, 0x2D, 0x21, 0x2E, 0x21, 0x0E, 0x21, 0x2E, 0x01, 0x21, 0x0E, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0E, 0x80, 0x20, 0xEE, 0x03, 0x21, 0x0E, 0x82, 0x20, 0xEE, 0x21, 0x0E, 0x21, 0x0D, 0x01, 0x21, 0x0E, 0x82, 0x20, 0xEE, 0x21, 0x0E, 0x20, 0xEE, 0x05, 0x21, 0x0E, 0x81, 0x20, 0xEE, 0x21, 0x0E, 0x04, 0x20, 0xEE, 0x03, 0x21, 0x0E, 0x01, 0x19, 0x0E, 0x80, 0x21, 0x0E, 0x02, 0x19, 0x0E, 0x80, 0x21, 0x2E, 0x02, 0x19, 0x0E, 0x01, 0x21, 0x0F, 0x81, 0x18, 0xEE, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x81, 0x19, 0x0F, 0x21, 0x0F, 0x01, 0x19, 0x0F, 0x81, 0x19, 0x2F, 0x19, 0x0F, 0x01, 0x19, 0x30, 0x84, 0x11, 0x31, 0x11, 0x51, 0x19, 0x73, 0x11, 0x93, 0x11, 0x94, 0x01, 0x11, 0xB5, 0x80, 0x09, 0xB5, 0x01, 0x09, 0xB6, 0x8A, 0x09, 0xB5, 0x11, 0xD5, 0x11, 0xB5, 0x11, 0xB4, 0x11, 0x93, 0x19, 0x71, 0x19, 0x50, 0x19, 0x2F, 0x21, 0x2E, 0x29, 0x2D, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x31, 0x0D, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x01, 0x31, 0x0D, 0x81, 0x29, 0x0D, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x83, 0x28, 0xEC, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x05, 0x29, 0x0D, + 0x01, 0x29, 0x0C, 0x83, 0x29, 0x2D, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0D, 0x01, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x05, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x80, 0x91, 0xB1, 0x04, 0x99, 0xD1, 0x8A, 0x91, 0xB1, 0x99, 0xD1, 0x91, 0xB1, 0x91, 0xD1, 0x91, 0xB1, 0x99, 0xD2, 0x99, 0xF2, 0x91, 0xD2, 0x99, 0xF2, 0x99, 0xD2, 0x91, 0xB2, 0x01, 0x91, 0xD2, 0x84, 0x99, 0xF2, 0x91, 0xF2, 0x91, 0xD2, 0x91, 0xF2, 0x9A, 0x13, 0x02, 0x92, 0x12, 0x8F, 0x92, 0x32, 0x8A, 0x33, 0x92, 0x73, 0x92, 0x94, 0x8A, 0x93, 0x82, 0x32, 0x69, 0xB0, 0x59, 0x4E, 0x48, 0xCC, 0x38, 0x6B, 0x30, 0x4A, 0x30, 0x6B, 0x30, 0x6A, 0x30, 0x8B, 0x30, 0xAB, 0x38, 0xAC, 0x02, 0x38, 0xCC, 0x02, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x02, 0x28, 0xEC, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x11, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x2C, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, + 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x84, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x85, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x7F, 0x29, 0x0D, 0x7F, 0x29, 0x0D, 0x42, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x14, 0x31, 0x0D, 0x02, 0x39, 0x2D, 0x80, 0x31, 0x2D, 0x01, 0x39, 0x2D, 0x80, 0x31, 0x2D, 0x01, 0x31, 0x2E, 0x80, 0x31, 0x2D, 0x06, 0x39, 0x2E, 0x01, 0x39, 0x4E, 0x02, 0x39, 0x2E, 0x80, 0x39, 0x4E, 0x01, 0x39, 0x2E, 0x09, 0x39, 0x4E, 0x04, 0x39, 0x2E, 0x80, 0x39, 0x4E, 0x07, 0x39, 0x2E, 0x80, 0x39, 0x4F, 0x02, 0x39, 0x4E, 0x04, 0x41, 0x4F, 0x02, 0x39, 0x4F, 0x0A, 0x41, 0x4F, 0x02, 0x41, 0x6F, 0x83, 0x41, 0x4F, 0x41, 0x6F, 0x49, 0x6F, 0x41, 0x4F, 0x03, 0x49, 0x70, 0x04, 0x49, 0x90, 0x01, 0x51, 0x91, 0x04, 0x51, 0xB1, 0x80, 0x51, 0xD1, 0x01, 0x51, 0xD2, 0x02, 0x51, 0xF2, 0x03, 0x51, 0xD2, 0x03, 0x59, 0xD2, 0x85, 0x6A, 0x13, 0x7A, 0x75, 0x8A, 0x95, 0x92, 0x75, 0x92, 0x55, 0x92, 0x34, 0x02, 0x9A, 0x14, 0x02, 0x9A, 0x34, 0x91, 0x9A, 0x54, 0x9A, 0x75, 0x8A, 0x14, 0x81, 0xF4, 0x7A, 0x14, 0x72, 0x14, 0x62, 0x34, 0x52, 0x13, 0x42, 0x33, 0x6C, 0x3A, 0x7D, 0x7E, 0x7E, 0x3F, 0x66, 0x5F, 0x5E, 0x7F, 0x4E, 0x3F, 0x2D, 0x9D, 0x25, 0x7D, 0x25, 0xBF, 0x01, 0x1D, 0xDF, + 0x81, 0x15, 0xDF, 0x15, 0xFF, 0x01, 0x0D, 0xDF, 0x80, 0x0D, 0xFF, 0x04, 0x05, 0xFF, 0x01, 0x06, 0x1F, 0x02, 0x06, 0x3F, 0x80, 0x06, 0x5F, 0x01, 0x06, 0x9F, 0x8F, 0x06, 0xDF, 0x06, 0xFF, 0x07, 0x1F, 0x07, 0x3F, 0x07, 0x1F, 0x0F, 0x3F, 0x17, 0x3F, 0x1F, 0x1F, 0x36, 0xFE, 0x5E, 0xDF, 0x8E, 0x7F, 0x3A, 0x30, 0x82, 0xF5, 0x92, 0x73, 0x9A, 0x33, 0xA2, 0x13, 0x02, 0xA9, 0xF3, 0x88, 0xAA, 0x14, 0xA2, 0x14, 0x92, 0x14, 0x69, 0x51, 0x61, 0x71, 0x59, 0x91, 0x51, 0x71, 0x51, 0x70, 0x51, 0x71, 0x02, 0x49, 0x70, 0x82, 0x41, 0x70, 0x41, 0x4F, 0x41, 0x70, 0x01, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x80, 0x39, 0x2E, 0x01, 0x39, 0x4E, 0x01, 0x39, 0x2E, 0x83, 0x31, 0x2D, 0x39, 0x2E, 0x31, 0x2E, 0x31, 0x4E, 0x02, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x84, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x84, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x04, 0x29, 0x0C, 0x86, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x09, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x02, 0x21, + 0x0E, 0x01, 0x29, 0x2E, 0x81, 0x21, 0x0D, 0x29, 0x0E, 0x01, 0x21, 0x0D, 0x80, 0x20, 0xED, 0x01, 0x29, 0x0D, 0x82, 0x20, 0xED, 0x21, 0x0D, 0x29, 0x0D, 0x02, 0x21, 0x0D, 0x80, 0x29, 0x0D, 0x01, 0x21, 0x0D, 0x85, 0x20, 0xED, 0x29, 0x0D, 0x20, 0xED, 0x29, 0x0D, 0x21, 0x0D, 0x29, 0x0D, 0x01, 0x20, 0xED, 0x86, 0x21, 0x0D, 0x29, 0x0D, 0x20, 0xED, 0x21, 0x0D, 0x20, 0xED, 0x21, 0x0D, 0x20, 0xED, 0x01, 0x29, 0x0E, 0x04, 0x21, 0x0D, 0x80, 0x20, 0xED, 0x01, 0x21, 0x0D, 0x06, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x03, 0x21, 0x0E, 0x81, 0x21, 0x0F, 0x19, 0x0E, 0x02, 0x19, 0x0F, 0x85, 0x19, 0x30, 0x19, 0x51, 0x19, 0x52, 0x11, 0x52, 0x11, 0x73, 0x11, 0x94, 0x02, 0x11, 0xB4, 0x01, 0x11, 0x94, 0x01, 0x11, 0x93, 0x86, 0x11, 0x71, 0x19, 0x51, 0x19, 0x50, 0x21, 0x2E, 0x21, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x28, 0xEC, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x28, 0xEC, 0x07, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x09, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x05, 0x28, 0xEC, 0x01, 0x20, 0xEC, 0x01, 0x29, 0x0C, 0x02, 0x99, 0xD1, 0x01, 0x99, 0xF2, 0x02, 0x99, 0xD1, 0x02, 0x91, 0xB1, 0x81, 0x99, 0xB1, 0x91, 0xB1, 0x01, 0x99, 0xD2, 0x01, 0x99, 0xB2, 0x03, 0x99, 0xD2, 0x86, 0x91, 0xB1, + 0x99, 0xF2, 0x91, 0xD2, 0x91, 0xF2, 0x91, 0xD1, 0x92, 0x12, 0x91, 0xF2, 0x02, 0x92, 0x12, 0x82, 0x92, 0x32, 0x8A, 0x32, 0x92, 0x73, 0x01, 0x92, 0x94, 0x88, 0x8A, 0x53, 0x79, 0xF1, 0x69, 0x90, 0x51, 0x0D, 0x48, 0xAC, 0x38, 0x6B, 0x38, 0x4B, 0x30, 0x4B, 0x30, 0x6B, 0x01, 0x38, 0x8B, 0x81, 0x38, 0xAC, 0x30, 0xAC, 0x02, 0x30, 0xCC, 0x80, 0x30, 0xEC, 0x03, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x05, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x31, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x08, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, + 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x89, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x8A, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x7F, 0x29, 0x0D, 0x7F, 0x29, 0x0D, 0x10, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x13, 0x31, 0x0D, 0x02, 0x39, 0x2D, 0x83, 0x31, 0x2D, 0x39, 0x2D, 0x31, 0x2D, 0x39, 0x2D, 0x01, 0x31, 0x2D, 0x81, 0x31, 0x2E, 0x39, 0x4E, 0x02, 0x39, 0x2E, 0x80, 0x31, 0x2D, 0x01, 0x39, 0x2E, 0x02, 0x31, 0x2E, 0x01, 0x39, 0x2E, 0x80, 0x39, 0x4E, 0x01, 0x39, 0x2E, 0x82, 0x39, 0x4E, 0x39, 0x2E, 0x39, 0x4E, 0x02, 0x39, 0x2E, 0x80, 0x39, 0x4E, 0x01, 0x39, 0x2E, 0x80, 0x39, 0x4E, 0x10, 0x39, 0x2E, 0x02, 0x39, 0x4E, 0x06, 0x39, 0x4F, 0x02, 0x41, 0x4F, 0x01, 0x41, 0x4E, 0x07, 0x41, 0x4F, 0x03, 0x41, 0x6F, 0x84, 0x49, 0x6F, 0x41, 0x6F, 0x49, 0x6F, 0x49, 0x70, 0x49, 0x90, 0x01, 0x49, 0x70, 0x03, 0x49, 0x90, 0x02, 0x51, 0x91, 0x81, 0x51, 0xB1, 0x51, 0x91, 0x01, 0x51, 0xB1, 0x80, 0x51, 0xD1, 0x04, 0x51, 0xD2, 0x06, 0x59, 0xD2, 0x85, 0x61, 0xB2, 0x69, 0xB2, 0x82, 0x34, 0x92, 0x75, 0x9A, 0x55, 0x9A, 0x34, 0x04, 0xA2, 0x14, 0x01, 0xA2, 0x34, 0x82, 0x9A, 0x34, + 0x9A, 0x14, 0x9A, 0x35, 0x01, 0x92, 0x15, 0x91, 0x8A, 0x15, 0x7A, 0x14, 0x72, 0x14, 0x62, 0x54, 0x5A, 0xD5, 0x4B, 0x56, 0x7D, 0x9E, 0x86, 0x7F, 0x6E, 0x5F, 0x66, 0x5F, 0x4E, 0x1F, 0x25, 0x3C, 0x25, 0x7D, 0x25, 0xBE, 0x25, 0xDF, 0x1D, 0xDF, 0x15, 0xDF, 0x15, 0xFF, 0x01, 0x0D, 0xFF, 0x80, 0x05, 0xFF, 0x02, 0x06, 0x1F, 0x02, 0x06, 0x3F, 0x02, 0x06, 0x5F, 0x80, 0x06, 0x9F, 0x01, 0x06, 0xDF, 0x80, 0x07, 0x1F, 0x02, 0x07, 0x3F, 0x93, 0x0F, 0x3F, 0x0F, 0x5F, 0x1F, 0x5F, 0x37, 0x1F, 0x4E, 0xDF, 0x8E, 0xFF, 0x43, 0x33, 0x72, 0xF4, 0x82, 0x53, 0x92, 0x33, 0xA2, 0x13, 0xAA, 0x13, 0xA9, 0xF3, 0xA9, 0xF4, 0xAA, 0x14, 0xA1, 0xF4, 0x92, 0x14, 0x79, 0xB2, 0x61, 0x71, 0x59, 0x91, 0x02, 0x51, 0x71, 0x02, 0x49, 0x70, 0x01, 0x41, 0x70, 0x03, 0x41, 0x4F, 0x81, 0x39, 0x4F, 0x39, 0x4E, 0x02, 0x39, 0x2E, 0x07, 0x31, 0x2D, 0x04, 0x31, 0x0D, 0x82, 0x29, 0x0D, 0x31, 0x2D, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x2C, 0x84, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x02, 0x29, 0x2C, 0x81, 0x29, 0x0C, 0x29, 0x2C, 0x0A, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, + 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x85, 0x31, 0x0C, 0x29, 0x0C, 0x31, 0x0C, 0x29, 0x0C, 0x28, 0xEC, 0x31, 0x0C, 0x02, 0x29, 0x0C, 0x0C, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x1C, 0x29, 0x0D, 0x80, 0x21, 0x0D, 0x01, 0x29, 0x0D, 0x81, 0x21, 0x0D, 0x29, 0x2D, 0x01, 0x21, 0x0D, 0x01, 0x29, 0x0D, 0x01, 0x28, 0xED, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x21, 0x0E, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x01, 0x19, 0x30, 0x82, 0x19, 0x31, 0x19, 0x51, 0x19, 0x72, 0x01, 0x19, 0x93, 0x02, 0x11, 0x93, 0x01, 0x11, 0x72, 0x85, 0x11, 0x51, 0x19, 0x50, 0x19, 0x2F, 0x21, 0x4F, 0x21, 0x2E, 0x21, 0x2D, 0x01, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x83, 0x21, 0x0D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x82, 0x28, 0xEC, 0x29, 0x0C, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2D, 0x06, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x06, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x04, 0x28, 0xEC, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x80, 0x91, 0xB1, 0x01, 0x99, 0xB1, 0x07, 0x99, 0xD1, 0x80, 0x99, 0xB1, 0x01, 0x99, 0xD2, 0x01, 0x99, 0xB2, 0x01, 0x99, 0xB1, 0x81, 0x99, 0xD2, 0x99, 0xB2, 0x01, 0x99, 0xD2, 0x83, 0x99, 0xB1, 0x91, 0xB1, 0x91, 0xD1, 0x91, 0xB1, 0x01, 0x91, 0xD1, 0x80, 0x91, 0xF2, 0x01, 0x9A, 0x12, 0x01, 0x91, 0xF2, 0x95, 0x89, + 0xD1, 0x89, 0xF2, 0x8A, 0x12, 0x92, 0x32, 0x92, 0x53, 0x92, 0x73, 0x92, 0x53, 0x92, 0x73, 0x82, 0x32, 0x71, 0xB1, 0x61, 0x4F, 0x50, 0xED, 0x48, 0x8C, 0x40, 0x8B, 0x38, 0x8B, 0x38, 0x6B, 0x30, 0x8B, 0x38, 0xAC, 0x30, 0xAC, 0x30, 0xCC, 0x30, 0xEC, 0x30, 0xCC, 0x02, 0x30, 0xEC, 0x02, 0x31, 0x0C, 0x06, 0x29, 0x0C, 0x82, 0x28, 0xEC, 0x29, 0x0C, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x82, 0x28, 0xED, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x83, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x83, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x13, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x19, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, + 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x89, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x14, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x1C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0D, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x1B, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x15, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0D, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x6B, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x81, 0x31, 0x2D, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x0E, 0x31, 0x0D, 0x01, 0x39, 0x2D, 0x03, 0x31, 0x2D, 0x80, 0x39, 0x2D, 0x01, 0x31, 0x2D, 0x0F, 0x39, 0x2E, 0x80, 0x31, 0x2E, 0x01, 0x39, 0x4E, 0x1E, 0x39, 0x2E, 0x80, 0x39, 0x4E, 0x02, 0x39, 0x4F, 0x01, 0x39, 0x4E, 0x01, 0x41, 0x4E, 0x0B, 0x41, 0x4F, 0x82, 0x41, 0x6F, 0x41, 0x4F, 0x49, 0x6F, 0x06, 0x49, 0x70, 0x01, 0x49, 0x90, 0x81, 0x51, 0x91, 0x49, 0x91, 0x01, 0x51, 0x91, 0x03, 0x51, 0xB1, 0x81, 0x51, 0xD2, 0x59, 0xD2, 0x01, 0x51, 0xD2, 0x03, 0x59, 0xD2, 0x80, 0x61, 0xF2, 0x01, 0x61, 0xD2, 0x01, 0x69, 0xB2, 0x83, 0x79, 0xD3, 0x9A, 0x34, 0x9A, 0x14, 0xA2, 0x14, 0x05, 0xAA, 0x14, 0x03, 0xA2, 0x14, 0x01, 0x9A, 0x35, 0x95, 0x92, 0x55, 0x8A, 0x55, 0x82, 0x55, 0x72, 0x75, 0x6A, 0xB6, 0x52, 0x94, 0x5B, 0x77, 0x85, 0x9F, 0x86, 0x3F, 0x76, 0x7F, 0x6E, 0xBF, 0x4E, 0x3F, 0x35, 0xBD, 0x2D, 0x9D, 0x25, + 0xBE, 0x1D, 0xBE, 0x1D, 0xDE, 0x15, 0xFE, 0x0D, 0xFF, 0x0E, 0x1F, 0x06, 0x1F, 0x0E, 0x3F, 0x02, 0x06, 0x3F, 0x01, 0x06, 0x5F, 0x85, 0x06, 0x7F, 0x06, 0x9F, 0x06, 0xBF, 0x06, 0xDF, 0x06, 0xFF, 0x07, 0x1F, 0x02, 0x07, 0x5F, 0x94, 0x0F, 0x5F, 0x0F, 0x7F, 0x1F, 0x5F, 0x27, 0x1F, 0x46, 0xDE, 0x7F, 0x3F, 0x5C, 0xB8, 0x4A, 0x51, 0x7A, 0x73, 0x8A, 0x33, 0xA2, 0x34, 0xAA, 0x14, 0xA9, 0xF4, 0xA9, 0xD3, 0xAA, 0x14, 0xA1, 0xF4, 0x99, 0xF3, 0x89, 0xF3, 0x69, 0x71, 0x61, 0x91, 0x59, 0x71, 0x01, 0x51, 0x71, 0x80, 0x49, 0x70, 0x02, 0x49, 0x90, 0x81, 0x41, 0x70, 0x41, 0x6F, 0x02, 0x41, 0x4F, 0x80, 0x39, 0x4F, 0x01, 0x39, 0x4E, 0x02, 0x39, 0x2E, 0x05, 0x31, 0x2D, 0x01, 0x29, 0x0D, 0x03, 0x31, 0x0D, 0x02, 0x29, 0x0D, 0x0C, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x83, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x01, 0x31, 0x0C, 0x02, 0x29, 0x0C, 0x80, 0x31, 0x0C, 0x01, 0x29, 0x0C, 0x12, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x25, 0x29, 0x0D, 0x03, 0x29, 0x2E, 0x02, 0x21, + 0x0E, 0x01, 0x21, 0x2F, 0x84, 0x21, 0x50, 0x19, 0x50, 0x19, 0x51, 0x19, 0x71, 0x19, 0x72, 0x02, 0x19, 0x71, 0x80, 0x11, 0x30, 0x01, 0x19, 0x50, 0x85, 0x19, 0x4F, 0x19, 0x2E, 0x21, 0x2E, 0x21, 0x0D, 0x21, 0x0C, 0x29, 0x2D, 0x05, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x08, 0x29, 0x0C, 0x82, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x2D, 0x07, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x05, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x80, 0x20, 0xEC, 0x04, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x01, 0x91, 0xB1, 0x01, 0x99, 0xB1, 0x81, 0x99, 0xD1, 0x91, 0xB1, 0x03, 0x99, 0xD1, 0x80, 0x99, 0xD2, 0x01, 0x99, 0xD1, 0x80, 0x99, 0xD2, 0x01, 0x99, 0xB1, 0x81, 0x99, 0xB2, 0x99, 0xD2, 0x01, 0x99, 0xB2, 0x80, 0x99, 0xD2, 0x03, 0x99, 0xB1, 0x82, 0x99, 0xD1, 0x91, 0xB1, 0x99, 0xD1, 0x01, 0x99, 0xD2, 0x87, 0x99, 0xF2, 0x91, 0xD2, 0x99, 0xF2, 0x91, 0xD2, 0x91, 0xF2, 0x91, 0xD2, 0x91, 0xF2, 0x89, 0xD1, 0x01, 0x91, 0xF2, 0x81, 0x92, 0x33, 0x92, 0x12, 0x01, 0x92, 0x53, 0x01, 0x8A, 0x53, 0x86, 0x82, 0x53, 0x71, 0xF1, 0x61, 0x4F, 0x50, 0xED, 0x48, 0xCD, 0x38, 0x8C, 0x30, 0x6B, 0x01, 0x30, 0x8B, 0x80, 0x30, 0xAC, 0x02, 0x30, 0xCC, 0x07, 0x30, 0xEC, + 0x04, 0x28, 0xEC, 0x06, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x85, 0x29, 0x2D, 0x29, 0x0D, 0x28, 0xEC, 0x29, 0x0C, 0x29, 0x0D, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x2C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x2C, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0D, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x12, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x47, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x4F, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x77, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x31, 0x2D, 0x12, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x80, 0x31, 0x0D, 0x04, 0x31, 0x2D, 0x01, 0x39, 0x2E, 0x80, 0x31, 0x2D, 0x0B, 0x39, 0x2E, 0x01, + 0x31, 0x2E, 0x21, 0x39, 0x2E, 0x80, 0x39, 0x4E, 0x05, 0x39, 0x2E, 0x04, 0x39, 0x4F, 0x06, 0x41, 0x4F, 0x80, 0x41, 0x6F, 0x01, 0x41, 0x4F, 0x08, 0x49, 0x70, 0x03, 0x49, 0x90, 0x06, 0x51, 0xB1, 0x80, 0x51, 0xD2, 0x03, 0x59, 0xD2, 0x02, 0x61, 0xD2, 0x85, 0x61, 0xB1, 0x69, 0x91, 0x71, 0x91, 0x81, 0xB2, 0x9A, 0x14, 0xA2, 0x14, 0x01, 0xAA, 0x14, 0x82, 0xB2, 0x14, 0xAA, 0x14, 0xA9, 0xF4, 0x04, 0xAA, 0x14, 0x96, 0xA2, 0x14, 0xA2, 0x34, 0x9A, 0x34, 0x9A, 0x35, 0x92, 0x55, 0x8A, 0x35, 0x82, 0x55, 0x7A, 0x75, 0x6A, 0x95, 0x52, 0xD5, 0x53, 0x97, 0x5C, 0x79, 0x7E, 0x5F, 0x76, 0x7F, 0x5E, 0x5F, 0x4D, 0xFF, 0x46, 0x3F, 0x3E, 0x5F, 0x2E, 0x3F, 0x15, 0xDD, 0x15, 0xFE, 0x16, 0x1E, 0x0E, 0x1F, 0x01, 0x0E, 0x3F, 0x02, 0x06, 0x5F, 0x80, 0x06, 0x7F, 0x01, 0x06, 0x9F, 0x01, 0x06, 0xDF, 0x80, 0x07, 0x1F, 0x01, 0x07, 0x3F, 0x8D, 0x07, 0x5F, 0x07, 0x7F, 0x0F, 0x7F, 0x0F, 0x5F, 0x17, 0x5F, 0x2F, 0x5F, 0x36, 0xDE, 0x66, 0xFF, 0x7E, 0x3D, 0x31, 0xEF, 0x7A, 0xD4, 0x8A, 0x53, 0x9A, 0x33, 0xA1, 0xF3, 0x02, 0xA9, 0xF4, 0x85, 0xA1, 0xF4, 0xA2, 0x14, 0x92, 0x14, 0x69, 0x51, 0x61, 0x71, 0x59, 0x71, 0x01, 0x51, 0x71, 0x82, 0x49, 0x70, 0x49, 0x90, 0x49, 0x70, 0x01, 0x41, 0x70, 0x84, 0x41, 0x90, 0x39, 0x4F, 0x41, 0x4F, 0x39, 0x4F, 0x41, 0x4F, 0x04, 0x39, 0x2E, 0x80, 0x31, 0x0D, 0x01, 0x39, 0x2E, 0x03, 0x31, 0x2D, 0x04, 0x31, 0x0D, 0x02, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, + 0x04, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x83, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x82, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x03, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x82, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x87, 0x29, 0x2D, 0x29, 0x0C, 0x31, 0x0D, 0x29, 0x0C, 0x28, 0xEC, 0x31, 0x0D, 0x31, 0x0C, 0x28, 0xEC, 0x04, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x02, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0B, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x0B, 0x29, 0x0D, 0x86, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x21, 0x0E, 0x03, 0x21, 0x2F, 0x80, 0x19, 0x2F, 0x01, 0x19, 0x30, 0x01, 0x19, 0x50, 0x01, 0x19, 0x2F, 0x01, 0x19, 0x2E, 0x82, 0x21, 0x2E, 0x21, 0x0D, 0x21, 0x2D, 0x06, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x0A, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x02, 0x29, + 0x0C, 0x82, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x0D, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x05, 0x99, 0xD1, 0x81, 0x91, 0xB1, 0x99, 0xB1, 0x01, 0x99, 0xD1, 0x80, 0x91, 0xD1, 0x02, 0x99, 0xD2, 0x80, 0x99, 0xB2, 0x01, 0x99, 0xD2, 0x80, 0x99, 0xB1, 0x02, 0x99, 0xB2, 0x80, 0x99, 0xD2, 0x01, 0x99, 0xB1, 0x80, 0x91, 0x91, 0x01, 0x99, 0xB1, 0x81, 0x99, 0xD2, 0x99, 0xD1, 0x01, 0x99, 0xD2, 0x82, 0x99, 0xB1, 0x99, 0xF2, 0x99, 0xD2, 0x01, 0x91, 0xD2, 0x80, 0x91, 0xD1, 0x02, 0x91, 0xD2, 0x03, 0x91, 0xF2, 0x83, 0x89, 0xF2, 0x8A, 0x12, 0x8A, 0x32, 0x8A, 0x33, 0x01, 0x8A, 0x53, 0x8A, 0x8A, 0x73, 0x82, 0x53, 0x79, 0xF1, 0x61, 0x8F, 0x51, 0x2E, 0x40, 0xCC, 0x38, 0x8B, 0x30, 0x6A, 0x30, 0x6B, 0x30, 0x8B, 0x30, 0xAB, 0x02, 0x30, 0xAC, 0x82, 0x30, 0xCC, 0x30, 0xEC, 0x30, 0xCC, 0x04, 0x30, 0xEC, 0x84, 0x31, 0x0C, 0x28, 0xEC, 0x31, 0x0D, 0x31, 0x0C, 0x28, 0xEC, 0x05, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x85, 0x28, 0xEC, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, + 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x11, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x10, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x14, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x13, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x3E, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x5F, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x10, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x12, 0x29, 0x0D, 0x12, 0x31, 0x0D, 0x81, 0x39, 0x2D, 0x31, 0x0D, 0x0A, 0x31, 0x2D, 0x81, 0x31, 0x2E, 0x31, 0x2D, 0x02, 0x31, 0x2E, 0x01, 0x39, 0x2E, 0x80, 0x31, 0x2E, 0x02, 0x39, 0x2E, 0x01, 0x31, 0x2E, 0x2C, 0x39, 0x2E, 0x80, 0x39, 0x4F, 0x01, 0x41, 0x4F, 0x80, 0x39, 0x4F, 0x08, 0x41, 0x4F, 0x01, 0x41, 0x70, 0x02, 0x49, 0x70, 0x80, 0x49, 0x50, 0x05, 0x49, 0x70, 0x01, 0x49, 0x90, 0x01, 0x51, 0x91, 0x02, 0x51, 0xB1, 0x81, 0x51, 0xD2, 0x51, 0xD1, 0x02, 0x59, 0xD2, 0x8A, 0x59, 0xB2, 0x61, 0xD2, 0x61, 0xB2, 0x61, 0xD2, 0x69, 0xB2, 0x69, 0x91, 0x79, 0x92, 0x81, 0x72, 0x99, 0xF4, 0xAA, + 0x34, 0xAA, 0x14, 0x03, 0xB2, 0x14, 0x04, 0xAA, 0x14, 0x01, 0xA2, 0x14, 0x93, 0x9A, 0x34, 0x9A, 0x35, 0x92, 0x35, 0x92, 0x55, 0x82, 0x55, 0x7A, 0x55, 0x6A, 0x95, 0x5A, 0xB5, 0x4A, 0xD5, 0x32, 0x93, 0x33, 0x15, 0x54, 0xBB, 0x5D, 0x9E, 0x55, 0xFF, 0x56, 0x7F, 0x4E, 0xBF, 0x46, 0xBF, 0x26, 0x5E, 0x16, 0x1E, 0x0E, 0x3E, 0x01, 0x0E, 0x5F, 0x81, 0x06, 0x5F, 0x06, 0x7F, 0x02, 0x06, 0x9F, 0x84, 0x06, 0xBF, 0x06, 0xDF, 0x06, 0xFF, 0x07, 0x1F, 0x07, 0x3F, 0x01, 0x07, 0x5F, 0x01, 0x07, 0x7F, 0x8B, 0x0F, 0x7F, 0x17, 0x5F, 0x1F, 0x3F, 0x37, 0x1F, 0x4E, 0xDE, 0x87, 0x1F, 0x2A, 0x50, 0x62, 0x93, 0x82, 0x73, 0x9A, 0x53, 0xA2, 0x13, 0xA9, 0xF4, 0x01, 0xA9, 0xD3, 0x89, 0xA1, 0xF4, 0xA2, 0x14, 0x9A, 0x35, 0x71, 0x71, 0x61, 0x51, 0x61, 0x91, 0x51, 0x50, 0x51, 0x70, 0x49, 0x70, 0x49, 0x90, 0x01, 0x49, 0x70, 0x80, 0x41, 0x70, 0x03, 0x41, 0x4F, 0x80, 0x39, 0x4F, 0x05, 0x39, 0x2E, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2E, 0x02, 0x31, 0x2D, 0x06, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x11, 0x29, 0x0C, 0x81, 0x29, 0x2C, 0x29, 0x2D, 0x0A, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x0A, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x28, 0xEC, 0x01, 0x31, 0x0C, 0x84, 0x29, 0x0C, 0x31, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x28, 0xEC, 0x04, + 0x29, 0x0C, 0x19, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2E, 0x29, 0x0D, 0x29, 0x2E, 0x02, 0x21, 0x2E, 0x81, 0x21, 0x0E, 0x21, 0x2E, 0x01, 0x21, 0x2F, 0x01, 0x19, 0x2E, 0x85, 0x19, 0x0E, 0x21, 0x0E, 0x21, 0x2E, 0x21, 0x0D, 0x21, 0x2D, 0x21, 0x0D, 0x03, 0x29, 0x0C, 0x82, 0x31, 0x2C, 0x29, 0x0C, 0x31, 0x0C, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x09, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x82, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x82, 0x29, 0x0D, 0x28, 0xEC, 0x29, 0x0C, 0x04, 0x28, 0xEC, 0x80, 0x99, 0xD2, 0x04, 0x99, 0xD1, 0x85, 0x91, 0xB1, 0x99, 0xF2, 0x91, 0xB1, 0x91, 0xD1, 0x99, 0xD1, 0x91, 0xD1, 0x01, 0x91, 0xB1, 0x82, 0x99, 0xD2, 0x91, 0xB1, 0x99, 0xD2, 0x02, 0x99, 0xB2, 0x82, 0x99, 0xD2, 0x99, 0xB2, 0x99, 0xD2, 0x01, 0x99, 0xB1, 0x80, 0x99, 0xB2, 0x04, 0x99, 0xB1, 0x07, 0x99, 0xD2, 0x02, 0x91, 0xD2, 0x81, 0x91, 0xF2, 0x91, 0xD2, 0x03, 0x91, + 0xF2, 0x80, 0x92, 0x12, 0x02, 0x8A, 0x12, 0x80, 0x8A, 0x53, 0x02, 0x8A, 0x73, 0x84, 0x82, 0x52, 0x71, 0xF1, 0x69, 0xB0, 0x59, 0x0E, 0x40, 0x8C, 0x01, 0x30, 0x2A, 0x81, 0x30, 0x4A, 0x38, 0x6B, 0x01, 0x30, 0x8B, 0x01, 0x30, 0xAC, 0x02, 0x30, 0xCC, 0x04, 0x30, 0xEC, 0x01, 0x28, 0xEC, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x83, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x83, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x15, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x27, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x1F, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x15, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x23, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x23, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x37, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, + 0x80, 0x29, 0x2D, 0x2A, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x83, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x10, 0x29, 0x0D, 0x12, 0x31, 0x0D, 0x81, 0x31, 0x2D, 0x31, 0x0D, 0x0A, 0x31, 0x2D, 0x06, 0x31, 0x2E, 0x84, 0x31, 0x4E, 0x39, 0x4E, 0x39, 0x2E, 0x39, 0x2D, 0x31, 0x2D, 0x03, 0x31, 0x2E, 0x20, 0x39, 0x2E, 0x80, 0x39, 0x4E, 0x06, 0x39, 0x2E, 0x04, 0x39, 0x4F, 0x0A, 0x41, 0x4F, 0x80, 0x41, 0x6F, 0x01, 0x41, 0x70, 0x06, 0x49, 0x70, 0x01, 0x49, 0x90, 0x01, 0x51, 0x91, 0x04, 0x51, 0xB1, 0x01, 0x59, 0xB1, 0x02, 0x59, 0xB2, 0x01, 0x61, 0xD2, 0x01, 0x69, 0xB2, 0x84, 0x71, 0xB2, 0x71, 0x71, 0x79, 0x51, 0x91, 0xB3, 0xAA, 0x34, 0x01, 0xAA, 0x14, 0x01, 0xB2, 0x14, 0x03, 0xB1, 0xF4, 0x01, 0xA9, 0xF4, 0x80, 0xAA, 0x14, 0x01, 0xA2, 0x14, 0x97, 0x9A, 0x14, 0x9A, 0x35, 0x92, 0x34, 0x8A, 0x55, 0x82, 0x55, 0x72, 0x75, 0x6A, 0x74, 0x5A, 0x94, 0x52, 0x94, 0x3A, 0x93, 0x2A, 0xD4, 0x23, 0x34, 0x2B, 0xB6, 0x34, 0x99, 0x66, 0x5F, 0x56, 0x9F, 0x46, 0x9F, 0x36, 0x7F, 0x26, 0x5F, 0x1E, 0x5F, 0x16, 0x5F, 0x0E, 0x7F, 0x0E, 0x9F, 0x0E, 0xBF, 0x01, 0x06, 0xBF, 0x82, 0x06, 0xDF, 0x07, 0x1F, 0x07, 0x3F, 0x02, 0x07, 0x5F, 0x01, 0x07, 0x7F, 0x8B, 0x0F, 0x9F, 0x17, 0x7F, 0x1F, 0x5F, 0x2F, 0x1F, 0x3E, 0x9D, 0x87, 0x7F, 0x43, 0x95, 0x52, 0x52, 0x82, 0xB4, 0x8A, 0x13, 0x9A, 0x13, 0xA9, 0xF3, 0x02, 0xA9, 0xF4, 0x87, 0xA1, 0xF4, 0x9A, 0x34, 0x89, 0xD3, 0x69, 0x51, 0x61, 0x71, 0x51, 0x71, 0x51, 0x70, 0x51, 0x91, 0x02, + 0x49, 0x70, 0x80, 0x41, 0x70, 0x04, 0x41, 0x4F, 0x04, 0x39, 0x2E, 0x83, 0x39, 0x0D, 0x39, 0x2E, 0x31, 0x0D, 0x31, 0x2E, 0x02, 0x31, 0x2D, 0x04, 0x31, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x0B, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x2C, 0x29, 0x0C, 0x03, 0x29, 0x2C, 0x07, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x84, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x0C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x0E, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x21, 0x0D, 0x01, 0x21, 0x0E, 0x83, 0x21, 0x2E, 0x21, 0x0D, 0x21, 0x2E, 0x21, 0x0E, 0x01, 0x21, 0x0D, 0x01, 0x29, 0x2D, 0x07, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x07, 0x29, 0x0C, + 0x01, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0D, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x05, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x05, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x04, 0x28, 0xEC, 0x84, 0x99, 0x91, 0x99, 0xB1, 0x99, 0xD1, 0x99, 0xD2, 0x99, 0xD1, 0x01, 0x99, 0xD2, 0x8C, 0x91, 0xB1, 0x91, 0xD1, 0x91, 0xB1, 0x99, 0xD2, 0x91, 0xD1, 0x91, 0xB1, 0x99, 0xD2, 0x91, 0xB1, 0x99, 0xD2, 0x91, 0xB1, 0x99, 0xB2, 0x99, 0xB1, 0x99, 0xD2, 0x01, 0x99, 0xB2, 0x02, 0x99, 0xB1, 0x02, 0x99, 0xB2, 0x83, 0x99, 0xD2, 0x99, 0xB2, 0x99, 0xD2, 0x99, 0xB1, 0x03, 0x99, 0xD2, 0x01, 0x99, 0xB2, 0x01, 0x99, 0xD2, 0x82, 0x99, 0xF2, 0x91, 0xD2, 0x99, 0xD2, 0x01, 0x91, 0xD2, 0x84, 0x91, 0xF2, 0x91, 0xD1, 0x91, 0xD2, 0x92, 0x12, 0x9A, 0x33, 0x01, 0x92, 0x12, 0x80, 0x89, 0xF2, 0x02, 0x8A, 0x12, 0x01, 0x8A, 0x32, 0x02, 0x8A, 0x33, 0x88, 0x81, 0xF2, 0x79, 0xD1, 0x71, 0x90, 0x50, 0xAD, 0x40, 0x6B, 0x40, 0x8C, 0x38, 0x6B, 0x30, 0x4B, 0x30, 0x4A, 0x01, 0x30, 0x6B, 0x82, 0x30, 0x8B, 0x30, 0xAC, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x03, 0x31, 0x0C, 0x82, 0x29, 0x0C, 0x31, 0x0D, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x01, 0x31, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, + 0x0C, 0x02, 0x29, 0x0D, 0x08, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x31, 0x0D, 0x06, 0x29, 0x0D, 0x82, 0x31, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x15, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x0E, 0x29, 0x0D, 0x80, 0x29, + 0x0C, 0x04, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0D, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x04, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x31, 0x0D, 0x31, 0x2D, 0x01, 0x29, 0x0C, 0x81, 0x31, 0x0D, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x82, 0x31, 0x2D, 0x31, 0x0C, 0x31, 0x2D, 0x04, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x08, 0x31, 0x2D, 0x80, 0x31, 0x0D, 0x02, 0x31, 0x2D, 0x81, 0x31, 0x2E, + 0x31, 0x2D, 0x04, 0x31, 0x2E, 0x81, 0x31, 0x2D, 0x31, 0x0D, 0x02, 0x31, 0x2E, 0x81, 0x31, 0x2D, 0x31, 0x0D, 0x08, 0x31, 0x2E, 0x80, 0x31, 0x0D, 0x01, 0x31, 0x2E, 0x01, 0x39, 0x2E, 0x01, 0x31, 0x2E, 0x01, 0x39, 0x2E, 0x80, 0x31, 0x2E, 0x10, 0x39, 0x2E, 0x01, 0x39, 0x4E, 0x02, 0x39, 0x4F, 0x81, 0x41, 0x4F, 0x39, 0x2F, 0x04, 0x41, 0x4F, 0x84, 0x41, 0x70, 0x41, 0x4F, 0x41, 0x70, 0x41, 0x6F, 0x49, 0x90, 0x02, 0x41, 0x6F, 0x80, 0x41, 0x70, 0x02, 0x49, 0x70, 0x01, 0x49, 0x91, 0x80, 0x51, 0x91, 0x01, 0x51, 0x71, 0x80, 0x51, 0x91, 0x01, 0x51, 0xB2, 0x01, 0x51, 0x91, 0x01, 0x59, 0xB1, 0x01, 0x61, 0xB2, 0x8A, 0x69, 0xB2, 0x61, 0x51, 0x69, 0x51, 0x79, 0x92, 0x81, 0x72, 0x99, 0xF4, 0xA2, 0x14, 0xA9, 0xD3, 0xA9, 0xF4, 0xB1, 0xF4, 0xA9, 0xB3, 0x01, 0xA9, 0xD3, 0x83, 0xB1, 0xF4, 0xA9, 0xB3, 0xA9, 0xD3, 0xA1, 0xB3, 0x01, 0xA1, 0xD3, 0x95, 0xAA, 0x14, 0xAA, 0x34, 0x9A, 0x14, 0x9A, 0x34, 0x92, 0x34, 0x82, 0x13, 0x82, 0x54, 0x82, 0x95, 0x82, 0xF6, 0x72, 0xF6, 0x62, 0xD5, 0x42, 0x32, 0x31, 0xF1, 0x42, 0xD4, 0x64, 0x9A, 0x7E, 0x3F, 0x6E, 0x9F, 0x56, 0xBF, 0x3E, 0x9F, 0x26, 0x5E, 0x16, 0x5E, 0x16, 0x7E, 0x01, 0x0E, 0x9F, 0x84, 0x06, 0xDF, 0x0E, 0xFF, 0x07, 0x1F, 0x07, 0x3F, 0x07, 0x5F, 0x01, 0x07, 0x7F, 0x01, 0x07, 0x9F, 0x8C, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x7F, 0x2F, 0x3F, 0x3E, 0xDE, 0x6E, 0xFF, 0x6D, 0x1B, 0x42, 0x31, 0x82, 0xD4, 0x92, 0x74, 0x9A, 0x13, 0xAA, 0x14, 0xA1, 0xD3, 0x01, 0xA9, 0xF4, 0x01, 0xA2, 0x14, 0x83, 0x92, 0x13, 0x69, + 0x51, 0x61, 0x71, 0x59, 0x71, 0x01, 0x51, 0x70, 0x02, 0x49, 0x70, 0x01, 0x41, 0x70, 0x02, 0x41, 0x4F, 0x02, 0x39, 0x4F, 0x02, 0x39, 0x2E, 0x81, 0x39, 0x0D, 0x39, 0x0E, 0x01, 0x31, 0x2E, 0x01, 0x31, 0x2D, 0x04, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x02, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x31, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x21, 0x0C, 0x01, 0x29, 0x0D, 0x03, 0x21, 0x0C, 0x0D, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0D, 0x80, 0x20, 0xED, 0x04, 0x29, 0x0D, 0x01, 0x21, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x05, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x04, 0x29, 0x0D, 0x80, + 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x28, 0xEC, 0x83, 0x29, 0x0D, 0x28, 0xEC, 0x29, 0x0D, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x82, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x04, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x08, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x80, 0x20, 0xEC, 0x01, 0x28, 0xEC, 0x01, 0x99, 0x71, 0x83, 0x99, 0x91, 0x99, 0xD1, 0x99, 0xB1, 0x99, 0xD1, 0x04, 0x99, 0xD2, 0x81, 0x99, 0xF2, 0x91, 0xD1, 0x01, 0x99, 0xD2, 0x82, 0x91, 0xB1, 0x91, 0xD2, 0x91, 0xB1, 0x01, 0x99, 0xB2, 0x01, 0x99, 0xB1, 0x01, 0x99, 0xB2, 0x83, 0x99, 0xB1, 0x99, 0xB2, 0x99, 0xB1, 0x99, 0xD2, 0x01, 0x99, 0xB2, 0x01, 0x99, 0xD2, 0x83, 0x99, 0xB2, 0x91, 0x91, 0x99, 0xD2, 0x99, 0xB2, 0x08, 0x99, 0xD2, 0x01, 0x91, 0xD2, 0x80, 0x91, 0xF2, 0x03, 0x91, 0xD2, 0x03, 0x91, 0xF2, 0x82, 0x92, 0x12, 0x91, 0xF2, 0x92, 0x12, 0x01, 0x91, 0xF2, 0x01, 0x92, 0x13, 0x8D, 0x92, 0x12, 0x8A, 0x12, 0x82, 0x12, 0x81, 0xF2, 0x71, 0xD1, 0x61, 0x6F, 0x50, 0xED, 0x48, 0xAC, 0x38, 0x4B, 0x30, 0x2A, 0x30, 0x4A, 0x30, 0x6A, 0x30, 0x8B, 0x30, 0xAB, 0x01, 0x30, 0xCC, 0x04, 0x30, 0xEC, 0x02, 0x31, 0x0C, 0x88, 0x30, 0xEC, 0x28, 0xEC, 0x31, 0x0C, 0x28, 0xEC, 0x31, 0x0D, 0x31, 0x0C, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x28, 0xEC, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, + 0x29, 0x0C, 0x85, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x28, 0xEC, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0D, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x86, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x0F, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x0F, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, + 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x86, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x80, + 0x31, 0x0D, 0x08, 0x29, 0x0D, 0x81, 0x31, 0x2D, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x01, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x07, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x09, 0x31, 0x2D, 0x81, 0x31, 0x0D, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x81, 0x31, 0x0D, 0x31, 0x2D, 0x01, 0x31, 0x2E, 0x80, 0x31, 0x0D, 0x01, 0x31, 0x2E, 0x83, 0x31, 0x2D, 0x31, 0x0D, 0x31, 0x2D, 0x31, 0x2E, 0x02, 0x31, 0x0D, 0x05, 0x31, 0x2E, 0x80, 0x31, 0x2D, 0x05, 0x31, 0x2E, 0x80, 0x31, 0x2D, 0x05, 0x31, 0x2E, 0x80, 0x39, 0x4E, 0x0C, 0x39, 0x2E, 0x01, 0x39, 0x4E, 0x81, 0x39, 0x2F, 0x39, 0x4F, 0x01, 0x39, 0x2F, 0x05, 0x41, 0x4F, 0x05, 0x41, 0x6F, 0x80, 0x41, 0x70, 0x05, 0x49, 0x70, 0x81, 0x49, 0x71, 0x51, 0x71, 0x01, 0x51, 0x91, 0x80, 0x59, 0xB2, 0x02, 0x51, 0x91, 0x01, 0x59, 0x91, 0x8C, 0x61, 0xB2, 0x61, 0x92, 0x61, 0x71, 0x69, 0x72, 0x69, 0x51, 0x79, 0x72, 0x89, 0xD3, 0x99, 0xF4, 0xAA, 0x14, 0xA9, 0xF4, 0xA9, 0xD4, 0xA9, 0xD3, 0xB1, 0xF4, 0x01, 0xA9, 0xD3, 0x81, 0xB1, 0xF4, 0xA9, 0xB3, 0x02, 0xA9, 0xD3, 0x02, 0xA9, 0xF3, 0x97, 0xAA, 0x13, 0x99, 0xD3, 0x99, 0xF3, 0x9A, 0x13, 0x92, 0x14, 0x9A, 0x75, 0x92, 0x54, 0x8A, 0x54, 0x8A, 0xB5, 0x7A, 0x74, 0x62, 0x13, 0x39, 0xB0, 0x3A, 0x52, 0x5C, 0x79, 0x7E, 0x7F, 0x6E, 0xDF, 0x4E, 0xBF, 0x36, 0x7F, 0x1E, 0x5E, 0x16, 0x7E, 0x0E, 0x9E, 0x0E, 0xDF, 0x0E, 0xFF, 0x0F, 0x1F, 0x01, 0x07, 0x3F, 0x04, 0x07, 0x7F, 0x8A, 0x0F, 0x9F, 0x17, 0x5F, 0x27, 0x5F, 0x3E, 0xFF, 0x56, 0xBE, 0x86, + 0x5F, 0x32, 0x50, 0x7A, 0xF4, 0x8A, 0x33, 0x9A, 0x13, 0xA1, 0xD3, 0x01, 0xA9, 0xF4, 0x88, 0xAA, 0x14, 0xA1, 0xF4, 0xA2, 0x14, 0x9A, 0x34, 0x79, 0x91, 0x61, 0x71, 0x61, 0x91, 0x51, 0x70, 0x51, 0x91, 0x04, 0x49, 0x70, 0x02, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x81, 0x39, 0x2E, 0x39, 0x4E, 0x03, 0x39, 0x2E, 0x83, 0x31, 0x0D, 0x31, 0x2E, 0x31, 0x0D, 0x31, 0x2D, 0x04, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0E, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x02, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x21, 0x0D, 0x03, 0x29, 0x0D, 0x80, 0x21, 0x0C, 0x01, 0x29, 0x0C, 0x80, 0x21, 0x0C, 0x01, + 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x82, 0x31, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x08, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x21, 0x0D, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x07, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x81, 0x31, 0x2D, 0x28, 0xEC, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x05, 0x28, 0xEC, 0x80, 0x29, 0x0D, 0x01, 0x28, 0xEC, 0x82, 0x29, 0x0D, 0x28, 0xEC, 0x29, 0x0D, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0D, 0x01, 0x28, 0xEC, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x18, 0x28, 0xEC, 0x80, 0x20, 0xEC, 0x01, 0x28, 0xEC, 0x81, 0x20, 0xEC, 0x28, 0xCC, 0x02, 0x28, 0xEC, 0x81, 0x99, 0xB1, 0x99, 0x91, 0x06, 0x99, 0xB1, 0x01, 0x99, 0xD2, 0x01, 0x91, 0xB1, 0x81, 0x99, 0xD2, 0x91, 0xB2, 0x01, 0x99, 0xD2, 0x85, 0x91, 0xD1, 0x91, 0xB1, 0x99, 0xD2, 0x99, 0xB2, 0x99, 0xD2, 0x99, 0xB1, 0x01, 0x99, 0xD2, 0x01, 0x99, 0xB1, 0x82, 0x99, 0xD2, 0x99, 0xB1, 0x91, 0x91, 0x01, 0x99, 0xB1, 0x81, 0x99, 0xB2, 0x99, 0xD2, 0x01, 0x99, 0xB2, 0x82, 0x99, 0xB1, 0x99, 0xD2, 0x91, 0xB1, 0x02, 0x99, 0xD2, 0x80, 0x91, 0xB2, 0x04, 0x99, 0xD2, 0x01, 0x91, 0xD2, 0x86, 0x99, 0xD2, 0x91, 0xD2, 0x99, 0xD2, 0x91, 0xD2, 0x99, 0xD2, 0x91, 0xD2, 0x91, 0xF2, 0x03, 0x99, 0xF2, 0x83, 0x99, 0xF3, 0x99, 0xF2, 0x91, 0xF2, 0x92, 0x12, 0x01, 0x8A, 0x12, 0x81, 0x8A, 0x33, 0x8A, 0x32, 0x01, 0x8A, 0x53, 0x89, 0x82, 0x32, 0x79, 0xF1, 0x69, 0x8F, 0x50, 0xED, 0x40, 0x8B, 0x38, + 0x6B, 0x30, 0x4A, 0x30, 0x6A, 0x30, 0x6B, 0x30, 0x8B, 0x03, 0x30, 0xCC, 0x81, 0x30, 0xEC, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x84, 0x28, 0xEC, 0x31, 0x0D, 0x30, 0xEC, 0x31, 0x0C, 0x30, 0xEC, 0x01, 0x31, 0x0D, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x31, 0x2D, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x01, 0x29, 0x0D, 0x09, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x0C, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, + 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x85, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x87, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, + 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x13, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x08, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x01, 0x31, 0x0D, 0x80, 0x29, 0x0C, 0x0F, 0x31, 0x0D, 0x81, 0x31, 0x2D, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x01, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x82, 0x31, 0x2E, 0x31, 0x2D, 0x31, 0x2E, 0x03, 0x31, 0x0D, 0x81, 0x31, 0x2E, 0x31, 0x2D, 0x02, 0x31, 0x2E, 0x80, 0x31, 0x0D, 0x03, 0x31, 0x2E, 0x80, 0x31, 0x0E, 0x02, 0x31, 0x2E, 0x01, 0x31, 0x2D, 0x85, 0x31, 0x2E, 0x31, 0x2D, 0x31, 0x2E, 0x31, 0x2D, 0x31, 0x2E, 0x31, 0x2D, 0x04, 0x31, 0x2E, 0x80, 0x39, 0x4E, 0x01, 0x31, 0x2E, 0x01, 0x31, 0x2D, 0x85, 0x31, 0x2E, 0x39, 0x2E, 0x31, 0x2E, 0x39, 0x2E, 0x31, 0x0E, 0x39, 0x2E, 0x01, 0x31, 0x0E, 0x80, 0x31, 0x2E, 0x02, 0x39, 0x2E, 0x01, 0x39, 0x4E, 0x80, 0x39, 0x2F, 0x01, 0x39, 0x2E, 0x02, 0x39, 0x4F, 0x01, 0x39, 0x4E, 0x80, 0x39, 0x4F, 0x01, 0x41, 0x4F, 0x80, 0x41, 0x6F, 0x01, 0x41, 0x4F, 0x03, 0x41, + 0x6F, 0x80, 0x49, 0x90, 0x03, 0x49, 0x70, 0x80, 0x49, 0x71, 0x01, 0x51, 0x91, 0x02, 0x51, 0x71, 0x01, 0x51, 0x91, 0x03, 0x59, 0x91, 0x89, 0x61, 0x92, 0x69, 0x92, 0x69, 0x72, 0x69, 0x71, 0x71, 0x51, 0x89, 0xF3, 0x9A, 0x14, 0xB2, 0x76, 0xA1, 0xF4, 0xA9, 0xF4, 0x01, 0xA9, 0xD3, 0x84, 0xB1, 0xF4, 0xA9, 0xD3, 0xB1, 0xF4, 0xB1, 0xD3, 0xA9, 0xD3, 0x01, 0xB1, 0xD3, 0x82, 0xA9, 0xB2, 0xA9, 0xD3, 0xB1, 0xF4, 0x01, 0xA9, 0xF3, 0x96, 0xA1, 0xF3, 0x99, 0xD3, 0x99, 0xF3, 0xA2, 0x54, 0x9A, 0x34, 0x9A, 0x54, 0x92, 0x54, 0x82, 0x54, 0x7A, 0x94, 0x6A, 0x74, 0x39, 0xB0, 0x3A, 0xF4, 0x75, 0x7D, 0x6E, 0x5F, 0x5E, 0xBF, 0x3E, 0x9F, 0x2E, 0x9E, 0x1E, 0x9E, 0x16, 0xBE, 0x0E, 0xFF, 0x0F, 0x1F, 0x0F, 0x5F, 0x07, 0x5F, 0x01, 0x07, 0x7F, 0x02, 0x07, 0x9F, 0x89, 0x0F, 0x9F, 0x17, 0x7F, 0x1F, 0x5F, 0x37, 0x3F, 0x4E, 0xBE, 0x86, 0xDF, 0x3A, 0xB2, 0x72, 0xB3, 0x8A, 0x53, 0xA2, 0x54, 0x01, 0xAA, 0x14, 0x01, 0xA9, 0xF3, 0x88, 0xAA, 0x14, 0xA2, 0x34, 0x9A, 0x34, 0x81, 0xB2, 0x61, 0x30, 0x61, 0x91, 0x59, 0x70, 0x59, 0x91, 0x51, 0x70, 0x02, 0x49, 0x70, 0x01, 0x41, 0x6F, 0x01, 0x41, 0x4F, 0x80, 0x39, 0x4F, 0x02, 0x39, 0x4E, 0x04, 0x39, 0x2E, 0x01, 0x31, 0x2E, 0x02, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x14, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x81, + 0x29, 0x0C, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x2D, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x82, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x81, 0x21, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x0C, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x86, 0x29, 0x0D, 0x29, 0x2D, 0x28, 0xED, 0x28, 0xEC, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x02, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x04, 0x28, 0xEC, 0x81, 0x29, 0x0D, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x02, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x06, 0x28, 0xEC, 0x80, 0x29, 0x0D, 0x0C, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x08, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x28, 0xCC, 0x01, 0x28, 0xEC, 0x03, 0xA1, 0xB1, 0x86, 0x99, 0xB1, 0x99, 0x91, 0x99, 0xB1, 0x99, 0x91, 0x91, 0x91, 0x99, 0xB1, 0x91, 0xB1, 0x03, 0x99, 0xD2, 0x80, 0x99, 0xB2, 0x01, 0x99, 0xD2, 0x80, 0x99, 0xB1, 0x01, 0x99, 0xD2, 0x82, 0x99, 0xB2, 0x99, 0xB1, 0x99, 0xB2, 0x01, 0x99, 0xB1, 0x81, 0x99, 0xD2, 0x99, + 0xB2, 0x01, 0x99, 0xB1, 0x82, 0x91, 0x91, 0x99, 0xB2, 0x91, 0xB1, 0x02, 0x99, 0xB2, 0x01, 0x99, 0xD2, 0x82, 0x91, 0xB2, 0x91, 0xB1, 0x99, 0xB2, 0x01, 0x91, 0xB1, 0x01, 0x99, 0xD2, 0x80, 0x91, 0xB1, 0x01, 0x99, 0xD2, 0x82, 0x91, 0xB2, 0x99, 0xD2, 0x99, 0xB2, 0x01, 0x99, 0xD2, 0x80, 0x91, 0xB2, 0x03, 0x99, 0xD2, 0x82, 0x99, 0xF2, 0x99, 0xD2, 0x99, 0xF2, 0x01, 0x99, 0xD2, 0x81, 0x99, 0xF2, 0x9A, 0x12, 0x01, 0x92, 0x12, 0x8D, 0x91, 0xF2, 0x92, 0x12, 0x89, 0xF2, 0x92, 0x12, 0x8A, 0x12, 0x92, 0x53, 0x8A, 0x32, 0x92, 0x73, 0x8A, 0x53, 0x7A, 0x12, 0x69, 0xB0, 0x59, 0x4E, 0x48, 0xCC, 0x38, 0x6B, 0x01, 0x30, 0x4A, 0x02, 0x30, 0x8B, 0x02, 0x30, 0xAB, 0x02, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x80, 0x31, 0x0D, 0x01, 0x30, 0xEC, 0x83, 0x31, 0x0D, 0x28, 0xEC, 0x31, 0x0D, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x83, 0x31, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x02, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x09, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x10, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x0C, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x0E, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x04, 0x29, + 0x0C, 0x80, 0x29, 0x0D, 0x09, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x08, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x0C, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x11, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x10, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x0E, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x0B, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x0E, 0x29, 0x0C, 0x82, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x12, 0x29, 0x0D, 0x82, 0x31, 0x0D, 0x28, 0xEC, 0x31, 0x0C, 0x01, 0x31, 0x0D, 0x81, 0x28, 0xEC, 0x31, 0x0C, 0x05, + 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x05, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x04, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x02, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x02, 0x31, 0x2E, 0x80, 0x31, 0x0E, 0x01, 0x31, 0x2E, 0x01, 0x31, 0x0E, 0x81, 0x31, 0x2E, 0x31, 0x0D, 0x03, 0x31, 0x2E, 0x01, 0x31, 0x2D, 0x80, 0x31, 0x2E, 0x01, 0x31, 0x2D, 0x07, 0x31, 0x2E, 0x02, 0x31, 0x2D, 0x05, 0x31, 0x2E, 0x80, 0x31, 0x0E, 0x05, 0x39, 0x2E, 0x80, 0x39, 0x2F, 0x03, 0x39, 0x2E, 0x03, 0x39, 0x4E, 0x01, 0x41, 0x4E, 0x04, 0x41, 0x4F, 0x01, 0x41, 0x6F, 0x01, 0x49, 0x6F, 0x06, 0x49, 0x70, 0x01, 0x51, 0x71, 0x03, 0x51, 0x91, 0x82, 0x51, 0x71, 0x59, 0x91, 0x61, 0xB2, 0x01, 0x61, 0x92, 0x8B, 0x69, 0x92, 0x69, 0x71, 0x71, 0x71, 0x81, 0x92, 0x99, 0xF4, 0xA2, 0x14, 0xAA, 0x35, 0xAA, 0x14, 0xA1, 0xB3, 0xA9, 0xF4, 0xA9, 0xD3, 0xA9, 0xD4, 0x01, 0xB1, 0xF4, 0x80, 0xB1, 0xF3, 0x01, 0xB1, 0xD3, 0x83, 0xA9, 0xD3, 0xB1, 0xD3, 0xB1, 0xF4, 0xB1, 0xF3, 0x02, 0xA9, 0xD3, 0x01, 0xA1, 0xF3, 0xAD, 0xA2, 0x14, 0xA2, 0x34, 0x9A, 0x34, 0x8A, 0x33, 0x8A, 0x74, 0x7A, 0xB5, 0x52, 0x32, 0x29, 0xD0, 0x54, 0x79, 0x76, 0x5F, 0x5E, 0x7F, 0x4E, 0xFF, 0x36, 0xDF, 0x26, 0xDE, 0x16, 0xFE, 0x17, 0x1F, 0x0F, 0x3F, 0x0F, 0x5F, 0x0F, 0x7F, 0x07, 0x9F, 0x07, 0x7F, 0x07, 0x9F, 0x0F, 0xBF, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x7F, 0x2F, 0x5F, 0x46, 0xFF, 0x76, 0xFF, 0x43, + 0x94, 0x6A, 0x93, 0x8A, 0x53, 0x9A, 0x13, 0xAA, 0x14, 0xA1, 0xD3, 0xA9, 0xF3, 0xA9, 0xF4, 0xAA, 0x14, 0xA2, 0x14, 0xA2, 0x34, 0x92, 0x14, 0x69, 0x30, 0x69, 0x91, 0x59, 0x70, 0x51, 0x70, 0x51, 0x90, 0x02, 0x49, 0x70, 0x81, 0x41, 0x70, 0x41, 0x6F, 0x02, 0x41, 0x4F, 0x80, 0x39, 0x4F, 0x01, 0x39, 0x4E, 0x04, 0x39, 0x2E, 0x82, 0x31, 0x2E, 0x31, 0x2D, 0x31, 0x0D, 0x02, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x08, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x10, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0D, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x81, 0x29, 0x2C, 0x29, 0x0C, 0x02, 0x29, 0x2C, 0x81, 0x29, 0x0C, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x83, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x83, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x0D, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x2D, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x82, 0x28, 0xEC, 0x29, 0x0D, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, + 0x03, 0x29, 0x0D, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x84, 0x28, 0xEC, 0x29, 0x0D, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0D, 0x01, 0x28, 0xEC, 0x88, 0x29, 0x0D, 0x28, 0xEC, 0x29, 0x0D, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x80, 0x29, 0x0D, 0x0D, 0x28, 0xEC, 0x80, 0x28, 0xED, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x04, 0x28, 0xEC, 0x85, 0x99, 0x71, 0x99, 0x91, 0xA1, 0xB1, 0xA1, 0xB2, 0x99, 0x91, 0x99, 0xB2, 0x01, 0x99, 0xB1, 0x80, 0x99, 0xB2, 0x01, 0x99, 0xB1, 0x81, 0x91, 0x91, 0x99, 0xB1, 0x01, 0x91, 0x91, 0x01, 0x99, 0xB2, 0x82, 0x99, 0xD2, 0x99, 0xB2, 0x91, 0xB1, 0x04, 0x99, 0xB1, 0x81, 0x99, 0xD2, 0x99, 0xB1, 0x01, 0x91, 0xB1, 0x80, 0x91, 0x91, 0x02, 0x91, 0xB1, 0x81, 0x99, 0xD2, 0x99, 0xB1, 0x01, 0x99, 0xB2, 0x03, 0x99, 0xD2, 0x80, 0x99, 0xB2, 0x03, 0x99, 0xD2, 0x82, 0x99, 0xD1, 0x99, 0xD2, 0x99, 0xB1, 0x04, 0x99, 0xD2, 0x82, 0x91, 0xB2, 0x99, 0xD2, 0x91, 0xB2, 0x05, 0x99, 0xD2, 0x80, 0x91, 0xD2, 0x01, 0x99, 0xF2, 0x04, 0x91, 0xF2, 0x81, 0x92, 0x13, 0x92, 0x32, 0x01, 0x92, 0x12, 0x8C, 0x92, 0x33, 0x92, 0x32, 0x8A, 0x32, 0x92, 0x74, 0x92, 0x73, 0x82, 0x32, 0x79, 0xF1, 0x71, 0xD1, 0x61, 0x6F, 0x51, 0x0D, 0x40, 0xAC, 0x38, 0x6B, 0x30, 0x6B, 0x01, 0x30, 0x6A, 0x01, 0x30, 0x8B, 0x81, 0x30, 0xCC, 0x30, 0xEC, 0x01, 0x30, 0xCC, + 0x03, 0x30, 0xEC, 0x81, 0x31, 0x0C, 0x28, 0xEC, 0x02, 0x31, 0x0C, 0x82, 0x28, 0xEC, 0x31, 0x0C, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x2D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x82, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x01, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x0A, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x0A, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x13, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x0D, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x0C, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x09, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x1C, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0C, 0x81, 0x29, 0x2C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x80, 0x29, + 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x0E, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x81, 0x29, 0x2C, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x07, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x15, 0x29, 0x0D, 0x82, 0x31, 0x0D, 0x31, 0x2D, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x80, 0x31, 0x0C, 0x05, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x06, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x08, 0x31, 0x0D, 0x89, 0x31, 0x2D, 0x29, 0x0D, 0x31, 0x2D, 0x31, 0x0D, 0x29, 0x0D, 0x31, 0x0D, 0x31, 0x2D, 0x31, 0x0D, 0x31, 0x2D, 0x31, 0x0D, 0x02, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x01, + 0x31, 0x2D, 0x80, 0x31, 0x0D, 0x01, 0x31, 0x2E, 0x01, 0x31, 0x0E, 0x01, 0x31, 0x0D, 0x81, 0x31, 0x2E, 0x31, 0x2D, 0x01, 0x31, 0x2E, 0x02, 0x31, 0x0D, 0x06, 0x31, 0x2D, 0x81, 0x31, 0x0D, 0x31, 0x2E, 0x03, 0x31, 0x0D, 0x0C, 0x31, 0x2E, 0x08, 0x39, 0x2E, 0x01, 0x39, 0x4E, 0x01, 0x39, 0x2E, 0x03, 0x41, 0x4E, 0x01, 0x41, 0x4F, 0x81, 0x41, 0x6F, 0x41, 0x4F, 0x01, 0x49, 0x6F, 0x80, 0x41, 0x4F, 0x03, 0x49, 0x70, 0x80, 0x49, 0x90, 0x01, 0x49, 0x70, 0x80, 0x49, 0x71, 0x05, 0x51, 0x91, 0x80, 0x51, 0x71, 0x01, 0x59, 0x91, 0x81, 0x61, 0xB2, 0x69, 0xB2, 0x01, 0x69, 0x72, 0x8B, 0x71, 0x51, 0x89, 0xD3, 0x99, 0xF4, 0xA2, 0x14, 0xAA, 0x35, 0xA9, 0xD3, 0xA9, 0xF4, 0xA9, 0xB3, 0xA9, 0xD3, 0xB1, 0xD4, 0xB1, 0xB3, 0xB1, 0xD3, 0x01, 0xB1, 0xB3, 0x83, 0xB1, 0xD3, 0xB1, 0xF4, 0xA9, 0xD3, 0xB1, 0xD3, 0x01, 0xA9, 0xD3, 0x80, 0xA9, 0xF4, 0x01, 0xA9, 0xF3, 0x92, 0xAA, 0x14, 0xAA, 0x34, 0x9A, 0x34, 0x92, 0x33, 0x8A, 0x33, 0x7A, 0x74, 0x62, 0x73, 0x31, 0x8F, 0x53, 0xD7, 0x8E, 0x9F, 0x66, 0x9F, 0x4E, 0x9E, 0x36, 0xDF, 0x26, 0xFE, 0x17, 0x1F, 0x17, 0x3F, 0x0F, 0x5F, 0x0F, 0x7F, 0x07, 0x7F, 0x02, 0x07, 0x9F, 0x94, 0x0F, 0x9F, 0x17, 0x9F, 0x1F, 0x7F, 0x27, 0x3F, 0x3F, 0x1F, 0x6E, 0xFF, 0x54, 0x57, 0x5A, 0x52, 0x8A, 0x53, 0x9A, 0x34, 0xA2, 0x13, 0xA1, 0xD3, 0xA9, 0xD3, 0xA1, 0xD3, 0xAA, 0x14, 0xA1, 0xF4, 0xA2, 0x14, 0xA2, 0x55, 0x79, 0x71, 0x61, 0x50, 0x59, 0x50, 0x01, 0x51, 0x70, 0x01, 0x49, 0x70, 0x80, 0x49, 0x6F, 0x02, 0x41, 0x6F, 0x80, 0x41, 0x4F, + 0x02, 0x39, 0x4F, 0x01, 0x39, 0x4E, 0x02, 0x39, 0x2E, 0x81, 0x31, 0x0D, 0x31, 0x2E, 0x02, 0x31, 0x2D, 0x86, 0x31, 0x0D, 0x29, 0x0D, 0x31, 0x0D, 0x31, 0x2D, 0x31, 0x0D, 0x29, 0x0D, 0x31, 0x2D, 0x08, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x1C, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x05, 0x29, 0x2C, 0x82, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x82, 0x28, 0xEC, 0x29, 0x0D, 0x31, 0x0D, 0x07, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x17, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x86, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0D, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x82, 0x29, 0x0C, 0x28, 0xEC, + 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x82, 0x29, 0x0C, 0x28, 0xEC, 0x20, 0xEC, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x04, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x01, 0x99, 0x71, 0x02, 0x99, 0x91, 0x81, 0x99, 0x71, 0x99, 0x91, 0x01, 0x99, 0xB1, 0x83, 0x99, 0x91, 0x99, 0xB1, 0x99, 0x91, 0x99, 0xB1, 0x03, 0x99, 0x91, 0x08, 0x99, 0xB1, 0x80, 0x99, 0xD2, 0x01, 0x91, 0xB1, 0x80, 0x99, 0xD2, 0x01, 0x91, 0xB1, 0x01, 0x99, 0xB1, 0x02, 0x99, 0xD2, 0x84, 0x91, 0xB1, 0x99, 0xD2, 0x99, 0xB2, 0x99, 0xD2, 0x99, 0xB2, 0x01, 0x99, 0xB1, 0x81, 0x99, 0xD1, 0x99, 0xB1, 0x03, 0x99, 0xD2, 0x01, 0x99, 0xB2, 0x06, 0x99, 0xD2, 0x02, 0x99, 0xB2, 0x84, 0x99, 0xD2, 0x99, 0xF2, 0x99, 0xD2, 0x91, 0xD2, 0x99, 0xF2, 0x01, 0x91, 0xD2, 0x01, 0x91, 0xF2, 0x80, 0x91, 0xD2, 0x01, 0x91, 0xF2, 0x81, 0x9A, 0x12, 0x99, 0xF2, 0x01, 0x91, 0xF2, 0x01, 0x92, 0x12, 0x01, 0x92, 0x33, 0x01, 0x8A, 0x33, 0x8D, 0x8A, 0x53, 0x82, 0x32, 0x71, 0xF1, 0x69, 0x90, 0x59, 0x4E, 0x40, 0xCC, 0x40, 0x8C, 0x38, 0x6B, 0x30, 0x6B, 0x30, 0x8B, 0x28, 0x6A, 0x30, 0x8B, 0x30, 0xAB, 0x30, 0xAC, 0x01, 0x30, 0xCC, 0x04, 0x30, 0xEC, 0x82, 0x31, 0x0D, 0x31, 0x0C, 0x30, 0xEC, 0x01, 0x31, 0x0C, 0x82, 0x28, 0xEC, 0x30, 0xEC, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x82, 0x31, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x02, + 0x29, 0x2D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x0D, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x0E, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x0E, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x84, 0x29, 0x2C, 0x29, 0x0C, + 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x85, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x0B, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x84, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x0D, 0x29, 0x2D, 0x02, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x07, 0x29, 0x0C, 0x84, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x2C, 0x04, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x84, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, + 0x2C, 0x06, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2C, 0x04, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0D, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x08, 0x29, 0x0D, 0x07, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x08, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x06, 0x31, 0x0D, 0x81, 0x31, 0x2D, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x03, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x84, 0x31, 0x0D, 0x31, 0x2D, 0x29, 0x0D, 0x31, 0x0D, 0x31, 0x2D, 0x04, 0x31, 0x0D, 0x81, 0x31, 0x2E, 0x31, 0x0E, 0x05, 0x31, 0x0D, 0x82, 0x31, 0x2D, 0x31, 0x0D, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x02, 0x31, 0x2D, 0x03, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x81, 0x31, 0x2D, 0x31, 0x2E, 0x01, 0x31, 0x2D, 0x08, 0x31, 0x2E, 0x82, 0x31, 0x0E, 0x31, 0x2E, 0x39, 0x2E, 0x01, 0x31, 0x2E, 0x05, 0x39, 0x2E, 0x80, 0x39, 0x4E, 0x03, 0x39, 0x2E, 0x82, 0x39, 0x4E, 0x41, 0x4F, 0x41, 0x2E, 0x01, 0x41, 0x4F, 0x80, 0x41, 0x6F, 0x02, 0x41, 0x4F, 0x80, 0x41, 0x6F, 0x03, 0x49, 0x70, 0x80, 0x49, 0x50, 0x02, 0x49, 0x70, 0x81, 0x51, 0x91, 0x49, 0x70, 0x04, 0x51, 0x91, 0x02, 0x59, 0x91, 0x87, 0x61, 0xB2, 0x61, 0x92, 0x69, 0x92, 0x71, 0x92, 0x71, 0x51, 0x81, 0x92, 0x91, 0xD3, 0xA2, 0x34, 0x01, 0xAA, 0x14, 0x83, 0xA9, 0xF4, 0xA9, 0xB3, 0xA9, 0xD3, 0xB1, 0xD4, 0x08, 0xB1, 0xD3, 0x93, 0xA9, 0xD3, 0xA9, 0xB3, 0xB1, 0xF4, 0xA9, 0xD3, 0xAA, 0x13, 0xA1, 0xF3, 0xA2, 0x14, 0x9A, 0x13, 0x8A, 0x33, 0x82, 0x53, 0x6A, 0x53, 0x39, 0xB0, 0x43, 0x13, 0x8E, 0x7F, 0x6E, + 0x9F, 0x4E, 0x9F, 0x36, 0xFE, 0x27, 0x3F, 0x1F, 0x3F, 0x17, 0x5F, 0x01, 0x0F, 0x7F, 0x01, 0x07, 0x9F, 0x80, 0x07, 0xBF, 0x01, 0x0F, 0x9F, 0x98, 0x17, 0x9F, 0x27, 0x7F, 0x36, 0xFF, 0x5E, 0xDF, 0x6D, 0x7B, 0x52, 0x72, 0x82, 0x53, 0x92, 0x33, 0xA2, 0x14, 0xA1, 0xF4, 0xA1, 0xD3, 0xAA, 0x14, 0xA9, 0xF3, 0xAA, 0x14, 0xA2, 0x14, 0x9A, 0x34, 0x89, 0xD2, 0x61, 0x50, 0x61, 0x70, 0x59, 0x70, 0x51, 0x70, 0x51, 0x90, 0x49, 0x70, 0x49, 0x6F, 0x41, 0x4F, 0x01, 0x41, 0x6F, 0x01, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x80, 0x39, 0x4E, 0x04, 0x39, 0x2E, 0x02, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x81, 0x29, 0x0D, 0x31, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x08, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x10, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x0A, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, + 0x82, 0x29, 0x0D, 0x31, 0x0D, 0x31, 0x0C, 0x05, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x07, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x09, 0x29, 0x0C, 0x83, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x01, 0x20, 0xEC, 0x86, 0x28, 0xEC, 0x29, 0x0C, 0x20, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0C, 0x20, 0xEC, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x04, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x0B, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0xA1, 0xB2, 0x03, 0xA1, 0xB1, 0x04, 0x99, 0x91, 0x82, 0x99, 0x71, 0x99, 0x91, 0x99, 0xB1, 0x01, 0x99, 0x91, 0x02, 0x99, 0xB1, 0x81, 0x99, 0x91, 0x91, 0x91, 0x01, 0x99, 0xB1, 0x95, 0x91, 0x91, 0x99, 0xB1, 0x99, 0xD2, 0x99, 0xB1, 0x91, 0xB1, 0x91, 0xD1, 0x91, 0xB1, 0x99, 0xD2, 0x99, 0xD1, 0x91, 0xB1, 0x99, 0xD1, 0x91, 0xD1, 0x99, 0xD1, 0x91, 0xB1, 0x99, 0xD1, 0x99, 0xD2, 0x99, 0xB1, 0x99, 0xB2, 0x99, 0xD2, 0x99, 0xB1, 0x99, 0xD1, 0x99, 0xD2, 0x01, 0x99, 0xB1, 0x80, 0x99, 0xD2, 0x01, 0x99, 0xB2, 0x83, 0x99, 0xB1, 0x99, 0xD2, 0x99, 0xB2, 0x99, 0xD2, 0x05, 0x99, 0xB2, 0x80, 0x99, 0xD2, 0x02, 0x99, + 0xB2, 0x02, 0x99, 0xD2, 0x02, 0x91, 0xD2, 0x01, 0x99, 0xD2, 0x81, 0x99, 0xF2, 0x91, 0xD2, 0x02, 0x99, 0xD2, 0x80, 0x91, 0xD2, 0x01, 0x91, 0xF2, 0x83, 0x92, 0x12, 0x9A, 0x33, 0x92, 0x33, 0x92, 0x12, 0x01, 0x8A, 0x12, 0x80, 0x82, 0x12, 0x02, 0x8A, 0x53, 0x87, 0x82, 0x53, 0x7A, 0x12, 0x61, 0x90, 0x51, 0x2E, 0x48, 0xED, 0x40, 0xAC, 0x38, 0x6B, 0x30, 0x4A, 0x01, 0x30, 0x6B, 0x84, 0x30, 0x8B, 0x30, 0xAC, 0x38, 0xCC, 0x30, 0xCC, 0x30, 0xEC, 0x01, 0x30, 0xCC, 0x02, 0x30, 0xEC, 0x80, 0x31, 0x0D, 0x01, 0x31, 0x0C, 0x80, 0x30, 0xEC, 0x01, 0x31, 0x0C, 0x80, 0x28, 0xEC, 0x05, 0x29, 0x0C, 0x82, 0x28, 0xEC, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x86, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x31, 0x0D, 0x30, 0xEC, 0x28, 0xEC, 0x31, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x84, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x04, 0x29, 0x0C, 0x83, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x0A, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x86, 0x29, 0x2C, + 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2D, 0x08, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x08, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x0A, 0x29, 0x0C, 0x83, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x11, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x04, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x0A, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x07, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x0C, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, + 0x2C, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x2C, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x0C, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x04, 0x31, 0x0D, 0x82, 0x29, 0x0D, 0x31, 0x0D, 0x29, 0x0D, 0x04, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x0A, 0x31, 0x0D, 0x82, 0x29, 0x0D, 0x31, 0x0D, 0x29, 0x0D, 0x07, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x81, 0x31, 0x0D, 0x29, 0x0D, 0x0E, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x08, 0x31, 0x0D, 0x81, 0x31, 0x2D, 0x31, 0x0D, 0x05, 0x31, 0x2D, 0x01, 0x31, 0x2E, 0x81, 0x31, 0x2D, 0x39, 0x2E, 0x08, 0x31, 0x2E, 0x08, 0x39, 0x2E, 0x81, 0x39, 0x2F, 0x41, 0x2F, 0x03, 0x41, 0x4F, 0x01, 0x41, 0x6F, 0x03, 0x41, 0x4F, 0x06, 0x49, 0x70, 0x80, 0x51, 0x91, 0x02, 0x51, 0x70, 0x01, 0x51, 0x91, 0x03, 0x59, 0x91, 0x80, 0x61, 0x71, 0x01, 0x69, 0x92, 0x8C, 0x71, 0x72, 0x79, 0x71, 0x89, 0xD3, 0xA2, 0x14, 0xA1, 0xF3, 0xAA, 0x14, 0xB2, 0x14, 0xA9, 0xD3, 0xB1, 0xD4, 0xB1, 0xD3, 0xA9, 0xB3, 0xB1, 0xD3, 0xA9, 0xB3, 0x01, 0xB1, 0xB3, 0x84, 0xB1, 0xD3, 0xB1, 0xB3, 0xB1, 0xD3, 0xA9, 0xD3, 0xB1, 0xD3, 0x01, 0xA9, 0xB3, 0x80, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x91, 0xA2, 0x13, 0x9A, 0x33, 0x92, 0x53, 0x8A, 0x53, 0x7A, 0x74, 0x49, 0xF1, 0x2A, 0x10, 0x85, 0xFF, 0x7E, 0xDF, 0x56, 0xDF, 0x36, 0xFE, 0x27, 0x1F, 0x1F, 0x5F, 0x17, 0x7F, 0x0F, 0x7F, 0x0F, 0x9F, + 0x07, 0x9F, 0x07, 0xBF, 0x01, 0x0F, 0xBF, 0x89, 0x17, 0x9F, 0x27, 0x9F, 0x37, 0x5F, 0x56, 0xFF, 0x7E, 0x7F, 0x42, 0x31, 0x72, 0x32, 0x92, 0x33, 0xA2, 0x34, 0xA1, 0xF4, 0x02, 0xA9, 0xF4, 0x87, 0xA1, 0xD3, 0xA2, 0x14, 0x9A, 0x14, 0x92, 0x13, 0x69, 0x30, 0x61, 0x50, 0x59, 0x70, 0x51, 0x70, 0x01, 0x51, 0x90, 0x01, 0x49, 0x6F, 0x83, 0x41, 0x70, 0x41, 0x6F, 0x39, 0x4F, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x80, 0x39, 0x4E, 0x03, 0x39, 0x2E, 0x80, 0x39, 0x0D, 0x04, 0x31, 0x2D, 0x84, 0x31, 0x0D, 0x31, 0x2D, 0x31, 0x0D, 0x29, 0x0D, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x83, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x02, 0x29, 0x2C, 0x81, 0x29, 0x0C, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x83, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x03, + 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x0B, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x0C, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x82, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x0A, 0x28, 0xEC, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x80, 0x20, 0xEC, 0x01, 0x28, 0xEC, 0x04, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x80, 0x20, 0xEC, 0x01, 0x28, 0xEC, 0x85, 0xA9, 0xD2, 0xA1, 0xB2, 0xA1, 0xB1, 0xA1, 0xD2, 0xA1, 0xB1, 0xA1, 0xD2, 0x01, 0xA1, 0xB1, 0x82, 0xA1, 0xB2, 0x99, 0x91, 0x99, 0xB1, 0x02, 0x99, 0x91, 0x80, 0x99, 0x71, 0x03, 0x99, 0x91, 0x01, 0x99, 0xB1, 0x80, 0x99, 0x91, 0x01, 0x99, 0xB1, 0x80, 0x99, 0xD1, 0x01, 0x99, 0xB1, 0x81, 0x99, 0xD2, 0x99, 0xD1, 0x01, 0x91, 0xD1, 0x82, 0x99, 0xD2, 0x99, 0xD1, 0x91, 0xB1, 0x01, 0x99, 0xD1, 0x01, 0x99, 0xB1, 0x82, 0x99, 0xD1, 0x99, 0xB1, 0x91, 0xB1, 0x02, 0x99, 0xB1, 0x0B, 0x99, 0xB2, 0x83, 0x99, 0xB1, 0x99, 0xD2, 0x99, 0xB2, 0x99, 0xD2, 0x01, 0x99, 0xB2, 0x85, 0x99, 0xD2, 0x99, 0xB2, 0x99, 0xD2, 0x91, 0xB2, 0x99, 0xD2, 0x91, 0xD2, + 0x0A, 0x99, 0xD2, 0x80, 0x91, 0xD2, 0x03, 0x91, 0xF2, 0x03, 0x92, 0x12, 0x83, 0x92, 0x32, 0x8A, 0x12, 0x8A, 0x32, 0x8A, 0x12, 0x02, 0x8A, 0x53, 0x85, 0x82, 0x32, 0x71, 0xD1, 0x61, 0x6F, 0x59, 0x2E, 0x40, 0xAC, 0x38, 0x8B, 0x01, 0x38, 0x6B, 0x01, 0x38, 0x8C, 0x01, 0x30, 0xAC, 0x82, 0x30, 0xAB, 0x30, 0xAC, 0x30, 0xCC, 0x01, 0x38, 0xEC, 0x81, 0x30, 0xEC, 0x31, 0x0C, 0x01, 0x30, 0xEC, 0x81, 0x28, 0xEC, 0x30, 0xEC, 0x04, 0x28, 0xEC, 0x80, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x82, 0x29, 0x0C, 0x31, 0x0D, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x82, 0x28, 0xEC, 0x29, 0x0D, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x07, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x2C, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2D, 0x0B, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2C, + 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x2C, 0x08, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x0B, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x0A, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x0E, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x83, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x2D, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x81, 0x29, 0x0C, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x07, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x83, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, + 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x0A, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x31, 0x0D, 0x04, 0x29, 0x0D, 0x04, 0x31, 0x0D, 0x81, 0x29, 0x0D, 0x28, 0xED, 0x04, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x07, 0x31, 0x0D, 0x02, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x05, 0x29, 0x0D, 0x05, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x06, 0x31, 0x0D, 0x82, 0x31, 0x2D, 0x31, 0x0D, 0x29, 0x0D, 0x06, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x03, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x80, 0x31, 0x0D, 0x03, 0x31, 0x2D, 0x80, 0x31, 0x2E, 0x01, 0x31, 0x2D, 0x83, 0x31, 0x0D, 0x31, 0x2E, 0x31, 0x0D, 0x31, 0x2D, 0x03, 0x31, 0x2E, 0x0D, 0x39, 0x2E, 0x08, 0x41, 0x4F, 0x01, 0x41, 0x50, 0x81, 0x49, 0x70, 0x49, 0x50, 0x02, 0x49, 0x70, 0x85, 0x51, 0x91, 0x49, 0x70, 0x49, 0x91, 0x51, 0xB1, 0x51, 0x91, 0x51, 0x70, 0x01, 0x51, 0x91, 0x80, 0x59, 0x91, 0x02, 0x61, 0x91, 0x87, 0x69, 0x92, 0x71, 0x92, 0x79, 0x92, 0x81, 0x92, 0x99, 0xF3, 0xA2, 0x14, 0xB2, 0x35, 0xAA, 0x14, 0x01, 0xA9, 0xB3, 0x81, 0xB1, 0xD4, 0xB1, 0xF4, 0x01, 0xB1, 0xD3, 0x80, 0xB1, 0xB3, 0x02, 0xB1, 0xD3, 0x82, 0xB1, 0xF4, 0xB1, 0xD3, 0xB1, 0xB3, 0x01, 0xB1, 0xD3, 0xA0, 0xA9, 0xB2, 0xB1, 0xF3, 0xAA, 0x13, 0xA1, 0xF3, 0xA2, 0x13, 0x9A, 0x33, 0x8A, 0x33, 0x82, 0x94, 0x5A, 0x12, 0x29, 0xAF, + 0x7D, 0x9D, 0x7E, 0xFF, 0x56, 0xDF, 0x36, 0xDE, 0x2F, 0x3F, 0x1F, 0x7F, 0x17, 0x7F, 0x0F, 0x9F, 0x07, 0x9F, 0x07, 0xBF, 0x0F, 0xBF, 0x0F, 0x9F, 0x17, 0xBF, 0x1F, 0x9F, 0x2F, 0x5F, 0x47, 0x1F, 0x7E, 0xDF, 0x4A, 0xD3, 0x6A, 0x32, 0x92, 0x53, 0x9A, 0x13, 0xA1, 0xF3, 0xAA, 0x14, 0x01, 0xA9, 0xD3, 0x89, 0xA9, 0xF4, 0xA1, 0xF3, 0xA2, 0x14, 0x9A, 0x34, 0x81, 0xD2, 0x61, 0x50, 0x61, 0x70, 0x51, 0x50, 0x51, 0x70, 0x51, 0x90, 0x01, 0x49, 0x90, 0x80, 0x41, 0x6F, 0x01, 0x41, 0x4F, 0x82, 0x41, 0x70, 0x39, 0x4F, 0x39, 0x4E, 0x03, 0x39, 0x2E, 0x81, 0x39, 0x0E, 0x39, 0x2E, 0x05, 0x31, 0x2D, 0x85, 0x31, 0x0D, 0x29, 0x0D, 0x31, 0x2D, 0x31, 0x0D, 0x29, 0x0D, 0x31, 0x0D, 0x07, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x86, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x09, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x12, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x84, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0D, 0x28, 0xEC, 0x10, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, + 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x21, 0x0C, 0x29, 0x2D, 0x0A, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x05, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x07, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x04, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x06, 0x28, 0xEC, 0x83, 0xA9, 0xD2, 0xA1, 0xB2, 0xA9, 0xF2, 0xA1, 0xB1, 0x02, 0xA1, 0xD2, 0x81, 0xA1, 0xD1, 0xA1, 0xD2, 0x03, 0xA1, 0xB1, 0x82, 0x99, 0x91, 0xA1, 0xB1, 0xA1, 0x91, 0x05, 0x99, 0x91, 0x02, 0x99, 0xB1, 0x81, 0x91, 0xB1, 0x99, 0xB1, 0x02, 0x91, 0xB1, 0x87, 0x99, 0xD1, 0x99, 0xD2, 0x91, 0xB1, 0x99, 0xB1, 0x91, 0xB1, 0x99, 0xB1, 0x99, 0xD2, 0x91, 0xB1, 0x01, 0x99, 0xB1, 0x02, 0x91, 0xB1, 0x81, 0x99, 0xB1, 0x91, 0xB1, 0x03, 0x99, 0xB2, 0x01, 0x99, 0xB1, 0x02, 0x99, 0xB2, 0x80, 0x99, 0xD2, 0x02, 0x99, 0xB2, 0x8D, 0x99, 0xB1, 0x99, 0xD2, 0x99, 0xB2, 0x99, 0xD2, 0x99, 0xB2, 0x99, 0xD2, 0x91, 0xB1, 0x99, 0xD2, 0x91, 0xD2, 0x91, 0xD1, 0x99, 0xD2, 0x91, 0xB1, 0x99, 0xB1, 0x99, 0xD2, 0x01, 0x91, 0xB1, 0x80, 0x99, 0xB1, 0x02, 0x99, 0xB2, 0x01, 0x99, 0xD2, 0x01, 0x91, 0xD2, 0x83, 0x99, 0xD2, 0x91, 0xD2, 0x9A, 0x12, 0x91, + 0xF2, 0x02, 0x92, 0x12, 0x83, 0x9A, 0x33, 0x9A, 0x53, 0x9A, 0x33, 0x92, 0x12, 0x02, 0x8A, 0x12, 0x01, 0x92, 0x53, 0x87, 0x8A, 0x32, 0x82, 0x12, 0x71, 0xD1, 0x69, 0x90, 0x61, 0x2F, 0x50, 0xEE, 0x48, 0xAD, 0x40, 0x8C, 0x01, 0x38, 0x6B, 0x02, 0x30, 0x6B, 0x80, 0x30, 0x8B, 0x01, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x80, 0x31, 0x0C, 0x02, 0x30, 0xEC, 0x84, 0x31, 0x0C, 0x28, 0xEC, 0x31, 0x0D, 0x29, 0x0C, 0x28, 0xEC, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x07, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x83, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x0D, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x0E, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x80, + 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x84, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x0A, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x08, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x17, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x0F, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x28, 0xEC, 0x19, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x0A, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x0B, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x06, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x31, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x02, 0x31, 0x0D, 0x81, 0x29, 0x0D, 0x31, 0x0D, 0x04, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x04, 0x29, 0x0D, 0x81, 0x31, 0x0D, 0x29, 0x0D, 0x0A, 0x31, 0x0D, 0x81, 0x31, 0x2D, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x80, + 0x31, 0x2D, 0x03, 0x29, 0x0D, 0x83, 0x31, 0x0D, 0x31, 0x2D, 0x31, 0x0D, 0x31, 0x2D, 0x06, 0x31, 0x0D, 0x02, 0x31, 0x2D, 0x81, 0x31, 0x0D, 0x31, 0x2D, 0x03, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x03, 0x31, 0x0D, 0x02, 0x31, 0x2D, 0x81, 0x31, 0x0D, 0x31, 0x2D, 0x06, 0x31, 0x0D, 0x03, 0x31, 0x2D, 0x80, 0x31, 0x0D, 0x01, 0x31, 0x2E, 0x07, 0x39, 0x2E, 0x80, 0x39, 0x2F, 0x01, 0x39, 0x2E, 0x84, 0x39, 0x4F, 0x41, 0x4F, 0x39, 0x4F, 0x41, 0x4F, 0x41, 0x2F, 0x01, 0x39, 0x2F, 0x01, 0x41, 0x4F, 0x02, 0x41, 0x50, 0x81, 0x49, 0x70, 0x41, 0x50, 0x01, 0x49, 0x70, 0x01, 0x49, 0x90, 0x81, 0x49, 0x70, 0x49, 0x90, 0x01, 0x51, 0x91, 0x81, 0x51, 0xB1, 0x51, 0x91, 0x03, 0x59, 0x91, 0x88, 0x61, 0x71, 0x61, 0x91, 0x71, 0x92, 0x79, 0xB2, 0x92, 0x14, 0x91, 0xF3, 0xA2, 0x34, 0xAA, 0x34, 0xA9, 0xF4, 0x01, 0xA9, 0xD3, 0x88, 0xB1, 0xD4, 0xB1, 0xB3, 0xB1, 0xF4, 0xB1, 0xD3, 0xA9, 0xB3, 0xB1, 0xB3, 0xB1, 0xD3, 0xA9, 0xB3, 0xB1, 0xF4, 0x03, 0xB1, 0xD3, 0x92, 0xA9, 0xB2, 0xA9, 0xD2, 0xA9, 0xF3, 0xA1, 0xF3, 0xA2, 0x13, 0x9A, 0x33, 0x92, 0x54, 0x82, 0x94, 0x5A, 0x32, 0x21, 0x6E, 0x7D, 0x5C, 0x86, 0xFF, 0x56, 0xFF, 0x36, 0xFE, 0x27, 0x1E, 0x1F, 0x7F, 0x17, 0x9F, 0x0F, 0x9F, 0x0F, 0xBF, 0x01, 0x0F, 0x9F, 0x94, 0x0F, 0x7F, 0x17, 0x7F, 0x27, 0x5F, 0x47, 0x1E, 0x7F, 0x3F, 0x5B, 0xD6, 0x5A, 0x10, 0x92, 0xB4, 0x9A, 0x54, 0xA2, 0x13, 0xA1, 0xF3, 0xA1, 0xD3, 0xA9, 0xD3, 0xA9, 0xF3, 0xAA, 0x14, 0xA2, 0x14, 0x9A, 0x34, 0x92, 0x34, 0x61, + 0x0F, 0x61, 0x50, 0x51, 0x50, 0x01, 0x51, 0x70, 0x01, 0x49, 0x70, 0x80, 0x41, 0x6F, 0x02, 0x41, 0x4F, 0x01, 0x39, 0x2F, 0x04, 0x39, 0x2E, 0x01, 0x31, 0x2D, 0x80, 0x31, 0x2E, 0x02, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x81, 0x29, 0x0D, 0x31, 0x2D, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x09, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0C, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x08, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x0C, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x08, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x83, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x21, 0x0C, 0x09, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x08, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x07, 0x28, 0xEC, 0x82, 0x20, 0xEC, 0x28, + 0xEC, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x20, 0xEC, 0x02, 0x29, 0x0C, 0x84, 0x20, 0xEC, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0C, 0x09, 0x28, 0xEC, 0x80, 0x28, 0xEB, 0x06, 0x28, 0xEC, 0x84, 0x29, 0x0C, 0x28, 0xEC, 0xA1, 0xD2, 0xA1, 0xB1, 0xA1, 0xD2, 0x02, 0xA1, 0xD1, 0x02, 0xA1, 0xD2, 0x02, 0xA1, 0xB2, 0x81, 0xA1, 0xB1, 0xA1, 0xD1, 0x02, 0xA1, 0xB1, 0x04, 0x99, 0x91, 0x81, 0x99, 0xB1, 0x99, 0x90, 0x01, 0x99, 0xB1, 0x07, 0x91, 0xB1, 0x05, 0x99, 0xB1, 0x87, 0x91, 0xB1, 0x99, 0xB1, 0x91, 0xB1, 0x99, 0xB1, 0x91, 0xB1, 0x99, 0xB1, 0x99, 0xB2, 0x91, 0xB1, 0x01, 0x99, 0xB2, 0x80, 0x99, 0xB1, 0x01, 0x99, 0xB2, 0x80, 0x99, 0xD2, 0x03, 0x99, 0xB2, 0x80, 0x99, 0xB1, 0x03, 0x99, 0xB2, 0x80, 0x99, 0xD2, 0x01, 0x91, 0xB2, 0x80, 0x91, 0xD1, 0x01, 0x99, 0xD2, 0x81, 0x91, 0xB1, 0x99, 0xD2, 0x03, 0x99, 0xB1, 0x84, 0x91, 0xB1, 0x99, 0xB1, 0x99, 0xB2, 0x99, 0xD2, 0x99, 0xB2, 0x02, 0x99, 0xD2, 0x80, 0x99, 0xF2, 0x01, 0x91, 0xD2, 0x82, 0x99, 0xF2, 0x91, 0xF2, 0x99, 0xF2, 0x02, 0x91, 0xF2, 0x80, 0x9A, 0x33, 0x02, 0x91, 0xF2, 0x90, 0x92, 0x13, 0x92, 0x12, 0x92, 0x13, 0x92, 0x33, 0x8A, 0x13, 0x8A, 0x12, 0x8A, 0x13, 0x81, 0xF2, 0x82, 0x12, 0x79, 0xD1, 0x69, 0xB0, 0x59, 0x4F, 0x51, 0x0E, 0x40, 0x8B, 0x30, 0x4B, 0x30, 0x4A, 0x30, 0x6B, 0x01, 0x30, 0x8B, 0x82, 0x30, 0xAB, 0x30, 0xCB, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x80, 0x30, 0xED, 0x01, 0x30, 0xEC, 0x03, 0x28, 0xEC, 0x82, 0x30, 0xEC, 0x28, 0xEC, 0x29, + 0x0C, 0x01, 0x28, 0xEC, 0x87, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x2D, 0x80, 0x31, 0x2D, 0x01, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x82, 0x28, 0xEC, 0x29, 0x0C, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, + 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x08, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x83, + 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x01, 0x28, 0xEC, 0x05, 0x29, 0x0D, 0x83, 0x31, 0x2D, 0x31, 0x0D, 0x31, 0x2D, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x0A, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x82, 0x31, 0x0D, 0x29, 0x0D, 0x31, 0x2D, 0x02, 0x29, 0x0D, 0x85, 0x31, 0x0D, 0x29, 0x0D, 0x31, 0x0D, 0x31, 0x2D, 0x31, 0x0D, 0x29, 0x0D, 0x04, 0x31, 0x0D, 0x81, 0x29, 0x0D, 0x31, 0x2D, 0x01, 0x29, 0x0D, 0x09, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x04, 0x31, 0x0D, 0x82, 0x31, 0x2D, 0x31, 0x0D, 0x31, 0x2D, 0x06, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x81, 0x31, 0x0D, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x80, 0x31, 0x0D, 0x03, 0x31, 0x2E, 0x01, 0x39, 0x2E, 0x82, 0x39, 0x2F, 0x39, 0x2E, 0x39, 0x4F, 0x02, 0x39, 0x2E, 0x01, 0x39, 0x4F, 0x01, 0x41, 0x4F, 0x02, 0x41, 0x2F, 0x81, 0x41, 0x4F, 0x41, 0x70, 0x01, 0x41, 0x4F, 0x02, 0x41, 0x70, 0x02, 0x49, 0x70, 0x82, 0x49, 0x90, 0x49, 0x91, 0x49, 0x70, 0x03, 0x51, 0x91, 0x02, 0x59, 0x91, 0x8D, 0x61, 0x91, 0x61, 0x71, 0x69, 0x91, 0x71, 0x91, 0x81, 0xB2, 0x91, 0xF3, 0x99, 0xF3, 0xB2, 0x55, 0xB2, 0x34, 0xA1, 0xB3, 0xA9, 0xB3, 0xA9, 0xD3, 0xB1, 0xF4, 0xB1, 0xD4, 0x02, 0xB1, 0xD3, 0x80, 0xB1, 0xB3, 0x01, 0xB1, 0xD3, 0x85, 0xB1, 0xF3, + 0xB1, 0xD3, 0xB1, 0xF3, 0xB1, 0xD3, 0xA9, 0xD2, 0xB1, 0xF3, 0x01, 0xA9, 0xF3, 0x98, 0xA1, 0xF3, 0x9A, 0x13, 0x92, 0x33, 0x82, 0x74, 0x59, 0xF1, 0x21, 0x6E, 0x6C, 0xFA, 0x87, 0x1F, 0x56, 0xDF, 0x36, 0xFE, 0x27, 0x5F, 0x1F, 0x7F, 0x17, 0x9F, 0x0F, 0xBF, 0x0F, 0x9F, 0x0F, 0xBF, 0x0F, 0x9F, 0x1F, 0x9F, 0x2F, 0x7F, 0x3F, 0x1E, 0x6F, 0x1F, 0x74, 0xFA, 0x49, 0xEF, 0x8A, 0xB4, 0x92, 0x33, 0x01, 0xA2, 0x13, 0x89, 0xAA, 0x14, 0xA9, 0xD3, 0xAA, 0x14, 0xA9, 0xF3, 0xA2, 0x13, 0xA2, 0x14, 0x9A, 0x34, 0x69, 0x30, 0x61, 0x50, 0x59, 0x70, 0x01, 0x51, 0x70, 0x01, 0x49, 0x70, 0x01, 0x41, 0x6F, 0x80, 0x41, 0x4F, 0x03, 0x39, 0x4F, 0x03, 0x39, 0x2E, 0x80, 0x31, 0x0D, 0x01, 0x31, 0x2E, 0x81, 0x31, 0x0D, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x09, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x10, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x2D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2C, 0x0A, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x0B, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x08, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2C, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x01, 0x29, + 0x2D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x83, 0x21, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x21, 0x0C, 0x04, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x84, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x0A, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x06, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x82, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0C, 0x07, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x01, 0xA1, 0xB1, 0x81, 0xA1, 0x91, 0xA1, 0xB1, 0x04, 0xA1, 0xD1, 0x80, 0xA1, 0xD2, 0x01, 0xA1, 0xD1, 0x82, 0xA1, 0xD2, 0xA1, 0xD1, 0xA1, 0xD2, 0x03, 0xA1, 0xB1, 0x02, 0x99, 0xB1, 0x81, 0x99, 0x91, 0x99, 0xB1, 0x01, 0x99, 0x91, 0x80, 0x99, 0xB1, 0x01, 0x91, 0xB1, 0x81, 0x91, 0x90, 0x91, 0xB1, 0x02, 0x99, 0xB1, 0x01, 0x91, 0x91, 0x01, 0x99, 0xB1, 0x82, 0x91, 0x91, 0x99, 0xB1, 0x91, 0x91, 0x02, 0x99, 0xB1, 0x03, 0x99, 0xB2, 0x01, 0x99, 0xB1, 0x81, 0x99, 0xD2, 0x99, 0xB1, 0x05, 0x99, 0xB2, 0x82, 0x99, 0xD2, 0x99, 0xB2, 0x99, 0xB1, 0x03, 0x99, 0xB2, 0x82, 0x91, 0xB1, 0x99, 0xD2, 0x99, 0xD1, 0x01, 0x99, 0xD2, 0x85, 0x99, 0xB1, 0x99, 0xD1, 0x91, 0xB1, 0x99, 0xD2, 0x91, 0xB1, 0x99, 0xB1, 0x02, 0x99, 0xB2, 0x05, 0x99, 0xD2, 0x82, 0x91, 0xB1, 0x91, 0xB2, 0x91, 0xD2, 0x01, 0x91, 0xB1, 0x83, 0x99, + 0xF2, 0x91, 0xD2, 0x99, 0xF2, 0x91, 0xF2, 0x01, 0x99, 0xF2, 0x80, 0x91, 0xD2, 0x01, 0x91, 0xF2, 0x82, 0x91, 0xF3, 0x9A, 0x33, 0x9A, 0x54, 0x02, 0x92, 0x33, 0x01, 0x92, 0x53, 0x02, 0x8A, 0x53, 0x87, 0x7A, 0x12, 0x71, 0xD1, 0x51, 0x0E, 0x48, 0xCC, 0x40, 0xAC, 0x38, 0x6B, 0x30, 0x6B, 0x28, 0x6B, 0x01, 0x30, 0x8B, 0x80, 0x30, 0xAB, 0x01, 0x30, 0xCC, 0x02, 0x30, 0xEC, 0x80, 0x31, 0x0D, 0x01, 0x30, 0xEC, 0x80, 0x28, 0xEC, 0x01, 0x30, 0xEC, 0x84, 0x28, 0xEC, 0x31, 0x0C, 0x31, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x01, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x82, + 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0E, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0F, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x12, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x84, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x09, 0x29, 0x0C, 0x82, 0x29, 0x2C, 0x29, 0x2D, 0x29, 0x2C, 0x05, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x01, + 0x29, 0x0C, 0x14, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x31, 0x2D, 0x06, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x80, 0x30, 0xED, 0x03, 0x31, 0x0D, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x31, 0x2D, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x02, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x09, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x05, 0x31, 0x0D, 0x82, 0x31, 0x2D, 0x31, 0x0D, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x03, 0x31, 0x2D, 0x06, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x03, 0x31, 0x2D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x03, 0x31, 0x2E, 0x80, 0x39, 0x2E, 0x01, 0x31, 0x2E, 0x03, 0x39, 0x2E, 0x02, 0x39, 0x4F, 0x01, 0x39, 0x2F, 0x81, 0x39, 0x4F, 0x41, 0x2F, 0x04, 0x41, 0x4F, 0x85, 0x41, 0x70, 0x41, 0x6F, 0x41, 0x70, 0x49, 0x70, 0x41, 0x70, 0x49, 0x90, 0x02, 0x49, 0x70, 0x82, 0x51, 0xB1, 0x49, 0x70, 0x49, 0x71, 0x01, 0x51, 0x71, 0x01, 0x51, 0x91, 0x81, 0x59, 0xB1, 0x59, 0x91, 0x01, 0x61, 0x91, 0x84, 0x69, 0x71, 0x71, 0x71, 0x79, 0xB2, 0x89, 0xD3, 0x99, 0xF4, 0x01, 0xAA, 0x35, 0x80, 0xA9, 0xF4, 0x02, 0xA9, 0xB3, 0x84, 0xB1, 0xF4, 0xB1, 0xD4, 0xB1, 0xD3, 0xB1, 0xF4, 0xA9, 0xB3, 0x01, 0xB1, 0xB3, 0x80, 0xA9, 0xB3, 0x01, 0xB1, 0xF3, 0x80, 0xB1, 0xD3, 0x01, 0xA9, 0xD3, 0x8E, 0xB1, 0xF3, 0xA9, 0xF3, 0xA2, 0x13, 0x9A, 0x33, 0x92, 0x54, 0x82, 0x74, 0x5A, 0x11, 0x21, 0x4D, 0x75, 0x1B, 0x86, 0xFF, 0x56, 0xDF, 0x37, 0x1E, 0x27, 0x3F, 0x17, 0x7F, 0x0F, 0x7F, 0x01, 0x0F, 0x9F, 0x01, 0x17, 0x9F, 0x98, 0x27, 0x7F, + 0x37, 0x1E, 0x5E, 0xDE, 0x7D, 0xDC, 0x3A, 0x2F, 0x7A, 0xB3, 0x92, 0x73, 0x9A, 0x33, 0xA2, 0x13, 0xA1, 0xF3, 0xA9, 0xF3, 0xAA, 0x14, 0xA9, 0xF3, 0xA1, 0xF3, 0xA2, 0x14, 0x9A, 0x34, 0x89, 0xF3, 0x59, 0x0F, 0x59, 0x50, 0x59, 0x70, 0x51, 0x70, 0x49, 0x50, 0x41, 0x50, 0x41, 0x4F, 0x41, 0x6F, 0x01, 0x41, 0x4F, 0x82, 0x39, 0x4F, 0x39, 0x2F, 0x39, 0x4F, 0x01, 0x39, 0x2E, 0x01, 0x31, 0x2E, 0x82, 0x39, 0x2E, 0x31, 0x2E, 0x31, 0x0D, 0x01, 0x31, 0x0E, 0x02, 0x31, 0x0D, 0x08, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x83, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x0A, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x21, 0x0D, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x0E, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x04, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x2C, 0x01, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x2C, 0x07, 0x29, 0x0C, 0x84, 0x21, 0x0C, 0x20, + 0xEC, 0x21, 0x0C, 0x29, 0x0C, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x80, 0x20, 0xEC, 0x03, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x04, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x04, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x05, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x05, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x07, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x04, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x81, 0x29, 0x0C, 0x28, 0xEB, 0x01, 0x28, 0xEC, 0x05, 0xA1, 0xB1, 0x82, 0xA1, 0xD1, 0xA1, 0xD2, 0xA1, 0xB1, 0x01, 0xA1, 0xD1, 0x80, 0xA1, 0xB1, 0x01, 0xA1, 0xD1, 0x81, 0xA1, 0xD2, 0xA1, 0xB1, 0x01, 0xA1, 0xD2, 0x81, 0x99, 0xB1, 0xA1, 0xD1, 0x03, 0x99, 0xB1, 0x81, 0x99, 0x91, 0x99, 0xB1, 0x01, 0x99, 0x91, 0x80, 0x99, 0xB1, 0x02, 0x91, 0xB1, 0x80, 0x91, 0x91, 0x02, 0x99, 0xB1, 0x81, 0x99, 0x91, 0x99, 0xB1, 0x02, 0x99, 0x91, 0x04, 0x99, 0xB1, 0x02, 0x99, 0xB2, 0x01, 0x99, 0xB1, 0x09, 0x99, 0xB2, 0x80, 0x99, 0xD2, 0x01, 0x99, 0xB1, 0x03, 0x99, 0xD2, 0x03, 0x99, 0xD1, 0x86, 0x99, 0xB1, 0x99, 0xD2, 0x91, 0x91, 0x99, 0xD2, 0x99, 0xB1, 0x99, 0xD2, 0x99, 0xB2, 0x04, 0x99, 0xD2, 0x01, 0x99, 0xB2, 0x91, 0x99, 0xD2, 0x91, 0xB2, 0x91, 0xB1, 0x91, 0xB2, 0x91, 0x91, 0x91, 0xB2, 0x91, 0xD2, 0x91, 0xB2, 0x99, 0xD2, 0x99, 0xF3, 0x91, 0xD2, 0x91, 0xB2, 0x91, 0xD2, 0x99, 0xF3, 0x91, 0xF2, 0x91, 0xD2, 0x92, 0x13, 0x91, 0xF2, 0x02, 0x92, 0x12, 0x80, 0x89, 0xF2, 0x01, 0x92, + 0x33, 0x82, 0x8A, 0x53, 0x8A, 0x33, 0x82, 0x33, 0x01, 0x82, 0x53, 0x85, 0x72, 0x12, 0x69, 0xD0, 0x51, 0x2E, 0x40, 0xCC, 0x30, 0x6B, 0x30, 0x4A, 0x01, 0x30, 0x6B, 0x81, 0x30, 0x8B, 0x30, 0xAC, 0x01, 0x38, 0xCC, 0x80, 0x30, 0xCC, 0x05, 0x30, 0xEC, 0x01, 0x31, 0x0D, 0x81, 0x30, 0xEC, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x07, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x2D, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x11, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0E, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x12, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, + 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0E, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x85, 0x29, 0x0D, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x28, 0xEC, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x28, 0xEC, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x06, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x07, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x1E, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x31, 0x0D, 0x02, 0x30, 0xED, 0x81, 0x28, 0xED, 0x31, 0x0D, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x0B, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x0B, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x81, 0x29, 0x0D, 0x31, 0x0D, 0x01, 0x31, + 0x2D, 0x80, 0x29, 0x0D, 0x02, 0x31, 0x0D, 0x80, 0x29, 0x0D, 0x01, 0x31, 0x0D, 0x80, 0x31, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x06, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x81, 0x31, 0x2E, 0x31, 0x2D, 0x01, 0x31, 0x2E, 0x80, 0x31, 0x0D, 0x05, 0x31, 0x2E, 0x81, 0x39, 0x2E, 0x31, 0x2E, 0x03, 0x39, 0x2E, 0x84, 0x31, 0x0E, 0x39, 0x2E, 0x39, 0x4F, 0x39, 0x2F, 0x39, 0x4F, 0x01, 0x39, 0x2F, 0x03, 0x41, 0x4F, 0x81, 0x41, 0x6F, 0x41, 0x4F, 0x04, 0x41, 0x6F, 0x04, 0x49, 0x70, 0x82, 0x49, 0x71, 0x51, 0x91, 0x49, 0x70, 0x01, 0x51, 0x91, 0x89, 0x59, 0x91, 0x59, 0x71, 0x59, 0x91, 0x61, 0x91, 0x69, 0x92, 0x69, 0x91, 0x79, 0x92, 0x81, 0xB2, 0x91, 0xF3, 0xA2, 0x34, 0x01, 0xAA, 0x35, 0x86, 0xA1, 0xD4, 0xA1, 0xB3, 0xA9, 0xD3, 0xA9, 0xF4, 0xA9, 0xD4, 0xB1, 0xF4, 0xA9, 0xD3, 0x01, 0xB1, 0xD3, 0x01, 0xA9, 0xB3, 0x9F, 0xB1, 0xD3, 0xB1, 0xF3, 0xA9, 0xB3, 0xB1, 0xD3, 0xA9, 0xD3, 0xB2, 0x14, 0xA9, 0xF3, 0xA2, 0x13, 0x9A, 0x13, 0x92, 0x33, 0x8A, 0x74, 0x5A, 0x11, 0x29, 0x8E, 0x7D, 0x7C, 0x7E, 0xFF, 0x4E, 0xDE, 0x2F, 0x1E, 0x27, 0x5F, 0x17, 0x9F, 0x0F, 0x9F, 0x17, 0xBF, 0x17, 0x9F, 0x17, 0x7E, 0x27, 0x7E, 0x3F, 0x3E, 0x56, 0xDE, 0x86, 0xBF, 0x42, 0xB1, 0x72, 0x92, 0x92, 0x73, 0x9A, 0x33, 0xA2, 0x13, 0x03, 0xA9, 0xF3, 0x8B, 0xAA, 0x13, 0xAA, 0x14, 0xA2, 0x13, 0x9A, 0x34, 0x69, 0x30, 0x61, 0x50, 0x59, 0x50, 0x51, 0x70, 0x49, 0x50, 0x49, 0x70, 0x49, 0x90, 0x41, 0x70, 0x01, 0x41, 0x4F, 0x03, 0x39, 0x4F, 0x81, 0x39, 0x4E, 0x31, 0x4E, 0x02, 0x31, 0x2E, + 0x02, 0x31, 0x0E, 0x01, 0x31, 0x0D, 0x0A, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0F, 0x29, 0x0D, 0x84, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x82, 0x29, 0x0D, 0x31, 0x0D, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x83, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x2C, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x0C, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x0A, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x11, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, + 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0x28, 0xEB, 0x01, 0x28, 0xEC, 0x05, 0xA1, 0xB1, 0x81, 0xA1, 0xD1, 0xA1, 0xB1, 0x01, 0xA1, 0xF2, 0x81, 0xA1, 0xB1, 0xA1, 0xD1, 0x01, 0x99, 0xB1, 0x83, 0xA1, 0xB1, 0xA1, 0xD1, 0xA1, 0xD2, 0xA1, 0xD1, 0x02, 0xA1, 0xD2, 0x02, 0x99, 0xB1, 0x82, 0xA1, 0xD2, 0x99, 0xB1, 0x99, 0xB2, 0x07, 0x99, 0xB1, 0x80, 0x99, 0x91, 0x01, 0x99, 0xB1, 0x82, 0x99, 0xB2, 0x99, 0x91, 0x99, 0xB1, 0x01, 0x99, 0x91, 0x06, 0x99, 0xB2, 0x80, 0x99, 0x91, 0x0E, 0x99, 0xB2, 0x80, 0x91, 0xB1, 0x01, 0x99, 0xD2, 0x89, 0x99, 0xB1, 0x99, 0xD2, 0x99, 0xB1, 0x99, 0xD2, 0x99, 0xB1, 0x99, 0xD2, 0x91, 0xB1, 0x99, 0xB1, 0x99, 0xD2, 0x99, 0xB1, 0x02, 0x99, 0xB2, 0x02, 0x91, 0xB1, 0x81, 0x99, 0xD2, 0x91, 0x91, 0x01, 0x99, 0xD2, 0x80, 0x91, 0xB1, 0x01, 0x99, 0xD2, 0x02, 0x91, 0xB2, 0x82, 0x91, 0x91, 0x91, 0xD2, 0x99, 0xD2, 0x01, 0x91, 0xB2, 0x8B, 0x91, 0xD2, 0x91, 0xB2, 0x91, 0xD2, 0x91, 0xF2, 0x91, 0xD2, 0x91, 0xF2, 0x91, 0xD2, 0x92, 0x13, 0x91, 0xF2, 0x92, 0x12, 0x92, 0x13, 0x92, 0x33, 0x01, 0x8A, 0x12, 0x8E, 0x8A, 0x33, 0x8A, 0x53, 0x8A, 0x74, 0x8A, 0x94, 0x8A, 0x53, 0x82, 0x53, 0x79, 0xF2, 0x61, 0x90, 0x50, 0xED, 0x40, 0x8C, 0x38, 0x6B, 0x30, 0x4B, 0x30, 0x6B, 0x38, 0x8B, 0x30, 0x8B, 0x01, 0x30, 0xAC, 0x04, 0x30, 0xCC, 0x03, 0x30, 0xEC, 0x81, 0x31, 0x0C, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0D, 0x01, 0x28, 0xEC, 0x02, 0x29, 0x0C, + 0x05, 0x29, 0x0D, 0x82, 0x28, 0xEC, 0x29, 0x0D, 0x28, 0xEC, 0x08, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x26, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x15, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x13, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x16, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x22, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x12, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x0D, 0x28, 0xEC, 0x29, 0x0D, 0x29, 0x0C, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x07, 0x29, 0x0D, 0x81, 0x28, 0xED, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x0F, 0x29, 0x0D, 0x04, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0E, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0D, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0C, 0x83, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x01, + 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0E, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x07, 0x31, 0x0D, 0x0A, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x04, 0x29, 0x0D, 0x81, 0x28, 0xED, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x04, 0x29, 0x0D, 0x80, 0x31, 0x2D, 0x09, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x05, 0x29, 0x0D, 0x03, 0x31, 0x0D, 0x01, 0x31, 0x2D, 0x82, 0x31, 0x2E, 0x31, 0x0D, 0x31, 0x2D, 0x06, 0x31, 0x2E, 0x80, 0x31, 0x4E, 0x03, 0x31, 0x2E, 0x80, 0x31, 0x0E, 0x02, 0x31, 0x2E, 0x01, 0x39, 0x2E, 0x81, 0x39, 0x4E, 0x31, 0x2E, 0x02, 0x39, 0x2E, 0x01, 0x39, 0x2F, 0x01, 0x41, 0x4F, 0x81, 0x39, 0x4F, 0x41, 0x4F, 0x01, 0x39, 0x4F, 0x03, 0x41, 0x6F, 0x81, 0x41, 0x70, 0x41, 0x6F, 0x03, 0x49, 0x70, 0x81, 0x49, 0x91, 0x49, 0x71, 0x04, 0x51, 0x91, 0x02, 0x59, 0x71, 0x8A, 0x61, 0x92, 0x69, 0x91, 0x79, 0xD2, 0x79, 0xB2, 0x89, 0xF3, 0x91, 0xF3, 0x9A, 0x14, 0xA2, 0x35, 0xA2, 0x14, 0xA1, 0xD3, 0xA9, 0xD4, 0x01, 0xA9, 0xF4, 0x80, 0xB1, 0xF4, 0x01, 0xA9, 0xD3, 0x03, 0xB1, 0xD3, 0x80, 0xA9, 0xB3, 0x02, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x8B, 0xA2, 0x13, 0x9A, 0x33, 0x92, 0x33, 0x82, 0x74, 0x59, 0xF1, 0x29, 0x8E, 0x86, 0x1E, 0x77, 0x1F, 0x46, 0xBE, 0x2F, 0x3F, 0x1F, 0x5F, 0x17, 0x7F, 0x01, 0x17, 0x9F, 0x8B, 0x1F, 0x9F, 0x27, 0x7F, 0x2F, 0x1D, 0x4E, 0xBD, 0x7E, 0xDF, 0x43, 0x32, 0x5A, 0x51, 0x8A, 0x73, 0x9A, 0x74, + 0xA2, 0x13, 0xAA, 0x14, 0xA9, 0xF4, 0x01, 0xA9, 0xD3, 0x89, 0xA1, 0xD3, 0xAA, 0x14, 0xA2, 0x34, 0xA2, 0x54, 0x79, 0x91, 0x59, 0x0F, 0x59, 0x50, 0x49, 0x2F, 0x49, 0x50, 0x49, 0x70, 0x02, 0x41, 0x70, 0x80, 0x41, 0x4F, 0x04, 0x39, 0x4F, 0x01, 0x31, 0x4E, 0x02, 0x31, 0x2E, 0x01, 0x31, 0x0E, 0x81, 0x31, 0x0D, 0x31, 0x0E, 0x01, 0x29, 0x2D, 0x80, 0x31, 0x2D, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x22, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x12, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x04, 0x29, 0x0C, 0x81, 0x29, 0x0D, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x81, 0x29, 0x0C, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x2D, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x01, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x07, 0x29, 0x0C, 0x80, 0x21, 0x0C, 0x04, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x29, 0x0C, 0x04, 0x28, 0xEC, 0x04, 0x29, 0x0C, 0x09, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x81, 0x28, 0xEC, 0x20, 0xEC, 0x03, 0x28, + 0xEC, 0x03, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x84, 0x29, 0x0C, 0x28, 0xEC, 0x20, 0xEC, 0x28, 0xEC, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x20, 0xEC, 0x06, 0x28, 0xEC, 0x83, 0x29, 0x0C, 0x28, 0xEC, 0x29, 0x0C, 0x28, 0xEC, 0x03, 0xA1, 0xB1, 0x80, 0xA1, 0xD1, 0x02, 0xA1, 0xB1, 0x02, 0xA1, 0xD1, 0x81, 0x99, 0xB1, 0x99, 0xD1, 0x01, 0x99, 0xB1, 0x81, 0xA1, 0xD2, 0x99, 0xB1, 0x04, 0xA1, 0xD2, 0x81, 0x99, 0xB2, 0xA1, 0xB2, 0x01, 0x99, 0xB1, 0x81, 0xA1, 0xD2, 0x99, 0xB2, 0x03, 0x99, 0xB1, 0x03, 0x99, 0x91, 0x01, 0x99, 0xB1, 0x02, 0x99, 0x91, 0x81, 0x99, 0xB1, 0x99, 0xB2, 0x01, 0x99, 0x91, 0x80, 0x91, 0x91, 0x01, 0x99, 0xB2, 0x80, 0x99, 0x92, 0x02, 0x99, 0xB2, 0x80, 0x91, 0x91, 0x0B, 0x99, 0xB2, 0x80, 0x91, 0xB2, 0x01, 0x99, 0xD2, 0x02, 0x99, 0xB2, 0x86, 0x99, 0xD2, 0x91, 0xB1, 0x99, 0xD2, 0x99, 0xB2, 0x99, 0xD2, 0x91, 0xB1, 0x99, 0xB1, 0x03, 0x99, 0xB2, 0x84, 0x91, 0xB2, 0x99, 0xB2, 0x91, 0xB2, 0x99, 0xD2, 0x91, 0xB1, 0x02, 0x99, 0xD2, 0x80, 0x91, 0xB2, 0x01, 0x99, 0xD2, 0x82, 0x91, 0xB2, 0x91, 0x91, 0x91, 0xB2, 0x01, 0x99, 0xD2, 0x02, 0x91, 0xB2, 0x81, 0x91, 0xD2, 0x91, 0xB2, 0x05, 0x91, 0xD2, 0x93, 0x91, 0xF2, 0x91, 0xD2, 0x91, 0xF2, 0x92, 0x13, 0x89, 0xF2, 0x92, 0x12, 0x89, 0xF2, 0x8A, 0x12, 0x89, 0xF2, 0x8A, 0x33, 0x8A, 0x13, 0x8A, 0x53, 0x92, 0x74, 0x92, 0x94, 0x8A, 0x94, 0x82, 0x53, 0x71, 0xD1, 0x61, 0x6F, 0x48, 0xCD, 0x38, 0x8B, 0x01, 0x30, 0x4A, 0x83, 0x30, 0x6B, 0x38, 0x8B, 0x30, 0x8B, 0x30, 0xAB, 0x02, 0x30, 0xAC, 0x01, + 0x30, 0xCC, 0x80, 0x30, 0xEC, 0x02, 0x28, 0xEC, 0x83, 0x31, 0x0D, 0x28, 0xED, 0x30, 0xEC, 0x31, 0x0C, 0x02, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x51, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x67, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x46, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x17, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x10, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x2B, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x19, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0A, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x01, 0x29, 0x0D, 0x05, 0x31, 0x0D, 0x81, 0x29, 0x0D, 0x31, 0x0D, 0x05, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x0C, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x19, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x03, 0x29, 0x0D, 0x04, 0x31, 0x0D, 0x07, 0x31, 0x2E, 0x80, 0x31, 0x4E, 0x08, 0x31, 0x2E, 0x04, 0x39, 0x2E, 0x02, 0x39, 0x2F, 0x04, 0x39, 0x4F, 0x85, 0x41, 0x6F, 0x41, 0x4F, 0x41, 0x6F, 0x41, 0x70, 0x49, 0x70, 0x41, 0x70, 0x02, 0x49, 0x70, 0x01, 0x49, 0x71, 0x83, 0x49, 0x91, 0x51, 0x91, 0x51, 0x71, 0x51, 0x91, 0x01, 0x51, 0x71, 0xB6, 0x59, 0x92, 0x59, 0x71, 0x61, 0x71, 0x61, 0x92, 0x69, 0xB2, 0x71, 0xB2, 0x71, 0x71, 0x81, 0xB3, 0x91, 0xD3, 0xA2, 0x35, 0xA2, 0x15, 0xAA, 0x15, 0xA1, 0xD4, 0xA1, 0xB3, 0xA9, 0xD4, 0xB1, 0xF4, 0xA9, 0xD4, 0xB1, 0xF4, 0xA9, 0xD3, 0xB1, 0xF4, 0xA9, 0xD3, 0xB1, 0xD3, 0xA9, 0xD3, 0xB1, 0xD3, 0xA9, 0xD3, 0xB1, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0xA1, + 0xF3, 0x9A, 0x13, 0x8A, 0x13, 0x82, 0x33, 0x51, 0xD0, 0x32, 0x30, 0x96, 0xDF, 0x66, 0xDF, 0x46, 0xFE, 0x2F, 0x3F, 0x1F, 0x7F, 0x17, 0x7E, 0x17, 0x9E, 0x1F, 0x9E, 0x27, 0x7E, 0x37, 0x5E, 0x46, 0xDD, 0x6E, 0xDE, 0x5C, 0x76, 0x4A, 0x30, 0x82, 0x93, 0x92, 0x53, 0x9A, 0x13, 0xA1, 0xF3, 0xA9, 0xF4, 0xB1, 0xF4, 0xA9, 0xD3, 0x01, 0xA9, 0xF4, 0x89, 0xA2, 0x14, 0xA2, 0x34, 0x92, 0x13, 0x61, 0x10, 0x59, 0x50, 0x51, 0x30, 0x49, 0x50, 0x49, 0x70, 0x41, 0x50, 0x41, 0x70, 0x01, 0x41, 0x4F, 0x03, 0x39, 0x4F, 0x01, 0x31, 0x4F, 0x03, 0x31, 0x2E, 0x02, 0x31, 0x0E, 0x80, 0x31, 0x2E, 0x3E, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x13, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x17, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0B, 0x29, 0x0D, 0x84, 0x29, 0x0C, 0x29, 0x2D, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x08, 0x29, 0x0D, 0x02, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x87, 0x21, 0x0C, 0x29, 0x2D, 0x21, 0x0C, 0x29, 0x0C, 0x29, 0x0D, 0x29, 0x0C, 0x29, 0x0D, 0x28, 0xEC, 0x01, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x82, 0x29, 0x0C, 0x29, 0x0D, 0x28, 0xEC, 0x03, 0x29, 0x0C, 0x80, 0x28, 0xEC, 0x02, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x86, 0x29, 0x0C, 0x28, 0xEC, 0x20, 0xEC, 0x29, 0x0C, 0x20, 0xEC, 0x28, 0xEC, 0x20, 0xEC, 0x0F, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x05, 0x28, 0xEC, 0x82, 0x20, 0xEC, 0x28, 0xEC, 0x29, 0x0C, 0x04, 0x28, 0xEC, 0x82, 0x20, 0xEC, 0x29, 0x0C, 0x28, 0xEC, + 0x02, 0x29, 0x0C, 0x02, 0x28, 0xEC, 0x80, 0x20, 0xEC, 0x02, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x81, 0x20, 0xEC, 0x29, 0x0C, 0x05, 0x28, 0xEC, 0x01, 0x20, 0xEC, 0x81, 0x29, 0x0C, 0x28, 0xEC, 0x02, 0xA1, 0xB1, 0x81, 0x99, 0x91, 0x99, 0xB1, 0x01, 0x99, 0x91, 0x80, 0xA1, 0xD2, 0x03, 0x99, 0xB1, 0x80, 0x99, 0xD1, 0x03, 0x99, 0xB1, 0x80, 0x99, 0xD2, 0x01, 0x99, 0x91, 0x01, 0x99, 0xB1, 0x01, 0x99, 0xB2, 0x82, 0x99, 0x91, 0x99, 0xB1, 0x99, 0x91, 0x02, 0x99, 0xB1, 0x01, 0x99, 0xB2, 0x02, 0x91, 0x91, 0x80, 0x99, 0x91, 0x02, 0x91, 0x91, 0x88, 0x99, 0x91, 0x91, 0x91, 0x99, 0xB1, 0x91, 0x71, 0x99, 0x91, 0x91, 0x91, 0x99, 0xB2, 0x99, 0xB1, 0x99, 0xB2, 0x03, 0x91, 0x91, 0x01, 0x99, 0xB2, 0x01, 0x91, 0x92, 0x82, 0x91, 0x91, 0x99, 0xB2, 0x99, 0x92, 0x02, 0x99, 0xB2, 0x85, 0x91, 0xB2, 0x99, 0xB2, 0x91, 0x91, 0x99, 0xD2, 0x91, 0xB2, 0x99, 0xB2, 0x01, 0x91, 0xB1, 0x01, 0x99, 0xB2, 0x8A, 0x91, 0xB1, 0x99, 0xD2, 0x91, 0xB2, 0x99, 0xD2, 0x91, 0xB2, 0x99, 0xD2, 0x91, 0xB2, 0x99, 0xD2, 0x91, 0x91, 0x91, 0xB2, 0x99, 0xB2, 0x01, 0x91, 0xB2, 0x80, 0x91, 0xB1, 0x01, 0x91, 0xB2, 0x80, 0x91, 0xB1, 0x01, 0x91, 0xB2, 0x01, 0x99, 0xD2, 0x80, 0x91, 0xD2, 0x04, 0x99, 0xD2, 0x01, 0x91, 0xB2, 0x82, 0x99, 0xF2, 0x91, 0xB2, 0x99, 0xD2, 0x01, 0x91, 0xB1, 0x80, 0x91, 0xB2, 0x02, 0x91, 0xD2, 0x87, 0x99, 0xF3, 0x91, 0xD2, 0x9A, 0x13, 0x91, 0xD2, 0x89, 0xD2, 0x91, 0xF2, 0x89, 0xF2, 0x92, 0x13, 0x02, 0x89, 0xF2, 0x80, 0x8A, 0x12, 0x01, 0x8A, 0x13, + 0x81, 0x8A, 0x33, 0x92, 0x53, 0x02, 0x92, 0x94, 0x84, 0x82, 0x53, 0x71, 0xD1, 0x59, 0x4F, 0x48, 0xCC, 0x40, 0x8B, 0x01, 0x38, 0x6B, 0x82, 0x30, 0x6B, 0x30, 0x8B, 0x38, 0xAC, 0x01, 0x30, 0xAC, 0x02, 0x30, 0xCC, 0x03, 0x30, 0xEC, 0x82, 0x28, 0xEC, 0x31, 0x0C, 0x31, 0x0D, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x1D, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x22, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x1C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x7F, 0x29, 0x0D, 0x15, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0D, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0F, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x21, 0x29, 0x0D, 0x02, 0x29, 0x2D, 0x10, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x0F, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x03, 0x29, 0x0D, 0x03, 0x28, 0xED, 0x05, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x08, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x07, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x0B, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x16, 0x29, 0x0D, 0x83, 0x31, 0x0E, 0x29, 0x0D, 0x31, 0x0E, 0x29, 0x0D, 0x02, 0x31, 0x0E, 0x84, 0x31, 0x2E, 0x29, 0x0E, 0x31, 0x2E, 0x29, 0x2E, 0x31, 0x2E, 0x03, 0x31, 0x0E, 0x06, 0x31, 0x2E, 0x03, 0x39, 0x2E, 0x01, 0x39, 0x2F, 0x01, 0x39, 0x2E, 0x80, 0x39, 0x2F, 0x05, 0x39, 0x4F, 0x01, 0x41, 0x4F, 0x01, 0x41, 0x50, 0x80, 0x41, 0x70, 0x02, 0x49, 0x71, 0x81, 0x49, 0x91, 0x49, 0x71, 0x02, 0x51, + 0x91, 0x81, 0x51, 0x92, 0x51, 0x72, 0x01, 0x59, 0x92, 0x87, 0x59, 0x72, 0x59, 0x71, 0x61, 0x92, 0x69, 0x92, 0x69, 0x72, 0x71, 0x72, 0x81, 0x92, 0x91, 0xD4, 0x01, 0xA2, 0x35, 0x81, 0xA2, 0x14, 0xA1, 0xD4, 0x01, 0xA9, 0xD4, 0x83, 0xA9, 0xF4, 0xB1, 0xF4, 0xA9, 0xB3, 0xB1, 0xD3, 0x01, 0xB1, 0xF4, 0x81, 0xA9, 0xD3, 0xA9, 0xB3, 0x02, 0xA9, 0xD3, 0x8A, 0xA9, 0xF3, 0xA2, 0x13, 0xA2, 0x34, 0x92, 0x33, 0x7A, 0x53, 0x41, 0x8F, 0x3A, 0xB2, 0x97, 0x3F, 0x66, 0xFF, 0x3F, 0x1E, 0x2F, 0x5E, 0x02, 0x1F, 0x7E, 0x96, 0x1F, 0x5D, 0x37, 0x5E, 0x47, 0x3E, 0x66, 0xFE, 0x75, 0xDB, 0x42, 0x50, 0x72, 0x72, 0x92, 0x73, 0x9A, 0x33, 0xA1, 0xF3, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF4, 0xA9, 0xD3, 0xA9, 0xF4, 0xA1, 0xF3, 0xA2, 0x14, 0x9A, 0x34, 0x71, 0x50, 0x51, 0x0F, 0x51, 0x30, 0x49, 0x50, 0x49, 0x70, 0x02, 0x41, 0x70, 0x80, 0x41, 0x50, 0x01, 0x39, 0x4F, 0x80, 0x39, 0x2F, 0x01, 0x39, 0x4F, 0x83, 0x31, 0x4F, 0x31, 0x2E, 0x31, 0x4F, 0x31, 0x2E, 0x04, 0x31, 0x0E, 0x01, 0x29, 0x0E, 0x80, 0x31, 0x2E, 0x03, 0x29, 0x0D, 0x80, 0x31, 0x0D, 0x0C, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x44, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x05, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x11, 0x29, 0x0D, 0x82, 0x29, 0x2D, 0x29, 0x0D, 0x21, 0x0D, 0x10, 0x29, 0x0D, 0x80, 0x29, 0x0C, 0x0A, 0x29, 0x0D, 0x05, 0x29, 0x0C, 0x01, 0x29, 0x0D, 0x01, 0x21, 0x0C, 0x83, 0x20, 0xEC, 0x29, 0x0D, 0x21, 0x0C, 0x28, 0xEC, 0x01, 0x29, 0x0D, 0x81, + 0x29, 0x0C, 0x29, 0x0D, 0x05, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x02, 0x29, 0x0D, 0x83, 0x21, 0x0C, 0x20, 0xEC, 0x28, 0xEC, 0x29, 0x0C, 0x03, 0x28, 0xEC, 0x81, 0x20, 0xEC, 0x29, 0x0C, 0x04, 0x20, 0xEC, 0x04, 0x28, 0xEC, 0x80, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x80, 0x28, 0xED, 0x01, 0x20, 0xEC, 0x01, 0x28, 0xEC, 0x07, 0x20, 0xEC, 0x01, 0x29, 0x0C, 0x01, 0x28, 0xEC, 0x02, 0x20, 0xEC, 0x03, 0x28, 0xEC, 0x81, 0x20, 0xEC, 0x29, 0x0C, 0x0A, 0x28, 0xEC, 0x80, 0x20, 0xEC, 0x06, 0x28, 0xEC, 0x02, 0x20, 0xEC, 0x80, 0x28, 0xEC, 0x04, 0x99, 0x91, 0x80, 0x99, 0xB1, 0x01, 0x99, 0x91, 0x8F, 0x99, 0xB1, 0x99, 0x91, 0x99, 0xB1, 0x99, 0xD2, 0x99, 0xB1, 0x91, 0x91, 0x99, 0xB1, 0x91, 0x91, 0x99, 0xB1, 0x91, 0x91, 0x91, 0xB1, 0x99, 0xB2, 0x91, 0x91, 0x99, 0xB1, 0x99, 0x92, 0x91, 0x91, 0x01, 0x99, 0xB2, 0x01, 0x99, 0xB1, 0x85, 0x91, 0x91, 0x91, 0xB1, 0x99, 0xB2, 0x91, 0xB2, 0x91, 0x91, 0x91, 0xB1, 0x01, 0x91, 0x92, 0x01, 0x91, 0x91, 0x83, 0x91, 0xB1, 0x91, 0x91, 0x91, 0xB1, 0x91, 0x91, 0x01, 0x91, 0xB2, 0x83, 0x91, 0x91, 0x91, 0xB1, 0x91, 0xB2, 0x91, 0x91, 0x01, 0x99, 0xB2, 0x01, 0x91, 0x91, 0x82, 0x99, 0xB2, 0x91, 0xB2, 0x99, 0xB2, 0x02, 0x91, 0xB2, 0x02, 0x99, 0xB2, 0x82, 0x91, 0xB2, 0x99, 0xB2, 0x99, 0xD2, 0x04, 0x91, 0xB2, 0x80, 0x99, 0xD2, 0x01, 0x91, 0xB2, 0x80, 0x91, 0xD2, 0x01, 0x91, 0xB2, 0x80, 0x99, 0xD2, 0x01, 0x91, 0xD2, 0x80, 0x99, 0xD2, 0x05, 0x91, 0xB2, 0x82, 0x91, 0x91, 0x99, 0xD2, 0x91, 0xB2, 0x04, 0x99, 0xD2, 0x81, 0x91, 0xD2, + 0x99, 0xF2, 0x01, 0x99, 0xD2, 0x82, 0x91, 0xD2, 0x99, 0xD2, 0x99, 0xF3, 0x02, 0x91, 0xD2, 0x87, 0x91, 0xB2, 0x91, 0xD2, 0x99, 0xD2, 0x91, 0xB2, 0x91, 0xD2, 0x99, 0xD2, 0x91, 0xD2, 0x99, 0xD2, 0x01, 0x99, 0xF2, 0x03, 0x91, 0xF2, 0x80, 0x91, 0xD2, 0x02, 0x91, 0xF2, 0x81, 0x89, 0xF2, 0x92, 0x13, 0x01, 0x89, 0xF2, 0x80, 0x89, 0xD2, 0x01, 0x8A, 0x12, 0x01, 0x8A, 0x53, 0x8A, 0x92, 0x94, 0x92, 0xB4, 0x8A, 0x94, 0x82, 0x73, 0x71, 0xF1, 0x61, 0x90, 0x59, 0x2E, 0x40, 0xAC, 0x40, 0x8C, 0x38, 0x6B, 0x38, 0x8B, 0x01, 0x30, 0x8B, 0x81, 0x30, 0x8C, 0x30, 0xAC, 0x02, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x01, 0x30, 0xED, 0x83, 0x31, 0x0D, 0x28, 0xEC, 0x28, 0xED, 0x31, 0x0D, 0x49, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0A, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x10, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x0D, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x60, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x06, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x1B, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x6B, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x0C, 0x29, 0x0D, 0x01, 0x28, 0xED, 0x80, 0x29, 0x0D, 0x01, 0x28, 0xED, 0x02, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x10, 0x29, 0x0D, 0x01, 0x28, 0xED, 0x03, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x80, 0x28, 0xED, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x01, + 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x04, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x0D, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x31, 0x0E, 0x01, 0x29, 0x0E, 0x01, 0x31, 0x0E, 0x01, 0x29, 0x0E, 0x01, 0x31, 0x0E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x31, 0x2E, 0x03, 0x31, 0x0E, 0x80, 0x31, 0x2E, 0x01, 0x31, 0x0E, 0x02, 0x31, 0x2E, 0x85, 0x31, 0x0E, 0x31, 0x2E, 0x39, 0x2F, 0x31, 0x2E, 0x31, 0x2F, 0x39, 0x2F, 0x01, 0x31, 0x2F, 0x02, 0x39, 0x2F, 0x81, 0x39, 0x4F, 0x39, 0x2F, 0x01, 0x39, 0x4F, 0x81, 0x39, 0x2F, 0x41, 0x4F, 0x02, 0x41, 0x50, 0x01, 0x41, 0x70, 0x01, 0x49, 0x71, 0x83, 0x49, 0x91, 0x49, 0x71, 0x49, 0x91, 0x51, 0x91, 0x04, 0x51, 0x92, 0x01, 0x59, 0x72, 0x81, 0x59, 0x92, 0x61, 0x72, 0x01, 0x69, 0x92, 0x8A, 0x71, 0x72, 0x71, 0x52, 0x89, 0xB3, 0x91, 0xD3, 0xA2, 0x55, 0x9A, 0x14, 0xA2, 0x15, 0xA9, 0xF5, 0xA1, 0xB3, 0xA9, 0xD4, 0xB1, 0xD4, 0x02, 0xB1, 0xF4, 0x81, 0xA9, 0xD3, 0xB1, 0xF3, 0x02, 0xA9, 0xD3, 0x8B, 0xAA, 0x13, 0xA9, 0xF3, 0xA2, 0x13, 0x9A, 0x13, 0x8A, 0x33, 0x72, 0x33, 0x31, 0x4E, 0x5C, 0x16, 0x97, 0x7F, 0x4E, 0xBE, 0x37, 0x1E, 0x2F, 0x5E, 0x02, 0x27, 0x7E, 0x89, 0x37, 0x5E, 0x47, 0x3D, 0x4E, 0xBC, 0x76, 0x5C, 0x42, 0xD1, 0x62, 0x72, 0x8A, 0x94, 0x9A, 0x33, 0xA1, 0xF3, 0xA9, 0xD3, 0x03, 0xA9, 0xF4, 0x85, 0xAA, 0x14, 0xA2, 0x14, 0x9A, 0x14, 0x81, 0xD2, 0x59, 0x0F, 0x51, 0x50, 0x01, 0x49, 0x50, 0x01, 0x41, 0x50, 0x80, 0x41, 0x70, 0x02, 0x39, 0x4F, 0x80, 0x39, 0x2F, 0x01, 0x39, 0x4F, 0x81, 0x31, 0x2F, + 0x31, 0x4F, 0x01, 0x31, 0x2E, 0x80, 0x31, 0x0E, 0x03, 0x31, 0x2E, 0x05, 0x29, 0x0E, 0x81, 0x28, 0xED, 0x29, 0x0E, 0x43, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x28, 0xED, 0x38, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x29, 0x2E, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x06, 0x29, 0x0D, 0x01, 0x29, 0x0C, 0x82, 0x21, 0x0C, 0x20, 0xEC, 0x29, 0x0D, 0x01, 0x21, 0x0D, 0x80, 0x29, 0x0D, 0x01, 0x21, 0x0D, 0x81, 0x29, 0x0D, 0x21, 0x0D, 0x02, 0x29, 0x0D, 0x01, 0x20, 0xED, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xEC, 0x02, 0x28, 0xED, 0x02, 0x29, 0x0D, 0x80, 0x20, 0xED, 0x01, 0x21, 0x0D, 0x83, 0x20, 0xED, 0x28, 0xED, 0x28, 0xEC, 0x29, 0x0D, 0x01, 0x20, 0xEC, 0x80, 0x29, 0x0D, 0x01, 0x20, 0xEC, 0x82, 0x21, 0x0C, 0x20, 0xEC, 0x20, 0xED, 0x03, 0x20, 0xEC, 0x05, 0x20, 0xED, 0x80, 0x20, 0xEC, 0x02, 0x20, 0xED, 0x01, 0x20, 0xEC, 0x01, 0x20, 0xED, 0x05, 0x20, 0xEC, 0x81, 0x28, 0xEC, 0x20, 0xEC, 0x01, 0x21, 0x0C, 0x80, 0x20, 0xEC, 0x01, 0x28, 0xEC, 0x81, 0x20, 0xEC, 0x28, 0xEC, 0x02, 0x20, 0xEC, 0x02, 0x28, 0xEC, 0x80, 0x20, 0xEC, 0x01, 0x28, 0xED, 0x85, 0x20, 0xEC, 0x28, 0xEC, 0x20, 0xCC, 0x20, 0xEC, 0x28, 0xEC, 0x20, 0xEC, 0x01, 0x28, 0xEC, 0x83, 0x20, 0xEC, 0x28, 0xEC, 0x20, 0xEC, 0x29, 0x0C, 0x03, 0x20, 0xEC, 0x02, 0x91, 0x70, 0x01, 0x91, 0x50, 0x82, 0x91, 0x70, 0x91, 0x91, 0x91, 0x71, 0x01, 0x91, 0x91, 0x81, 0x91, 0x70, 0x91, 0x71, 0x03, 0x91, 0x91, 0x01, 0x89, 0x70, 0x01, 0x89, 0x71, 0x01, + 0x91, 0x91, 0x80, 0x91, 0x92, 0x06, 0x91, 0x91, 0x01, 0x91, 0x92, 0x01, 0x91, 0x91, 0x83, 0x91, 0xB2, 0x91, 0x91, 0x91, 0xB2, 0x91, 0xB1, 0x03, 0x91, 0x91, 0x81, 0x91, 0x92, 0x91, 0x91, 0x04, 0x91, 0xB2, 0x80, 0x91, 0x91, 0x04, 0x91, 0xB2, 0x81, 0x91, 0x92, 0x99, 0xD2, 0x01, 0x91, 0xB2, 0x01, 0x99, 0xB2, 0x06, 0x91, 0xB2, 0x80, 0x91, 0xD2, 0x01, 0x91, 0xB2, 0x80, 0x99, 0xD2, 0x01, 0x91, 0xB2, 0x80, 0x91, 0xD2, 0x06, 0x91, 0xB2, 0x89, 0x99, 0xD2, 0x91, 0xB2, 0x99, 0xF3, 0x99, 0xD2, 0x91, 0xD2, 0x99, 0xD3, 0x91, 0x91, 0x91, 0xB2, 0x89, 0x91, 0x91, 0x91, 0x01, 0x91, 0xB2, 0x89, 0x91, 0xD2, 0x91, 0xB2, 0x89, 0x71, 0x89, 0x91, 0x91, 0xD2, 0x91, 0xB2, 0x91, 0xD2, 0x99, 0xF3, 0x91, 0xB2, 0x99, 0xD2, 0x01, 0x91, 0xB2, 0x87, 0x99, 0xF3, 0x91, 0xD2, 0x99, 0xF2, 0x99, 0xF3, 0x91, 0x91, 0x91, 0xB2, 0x91, 0xD2, 0x91, 0xF2, 0x01, 0x91, 0xD2, 0x91, 0x91, 0xF3, 0x91, 0xD2, 0x9A, 0x13, 0x91, 0xF2, 0x91, 0xF3, 0x92, 0x13, 0x89, 0xF2, 0x89, 0xD2, 0x91, 0xF2, 0x92, 0x12, 0x89, 0xF2, 0x89, 0xD2, 0x89, 0xF2, 0x8A, 0x12, 0x8A, 0x13, 0x89, 0xF2, 0x8A, 0x13, 0x8A, 0x33, 0x01, 0x92, 0x74, 0x87, 0x92, 0x94, 0x8A, 0x74, 0x82, 0x13, 0x71, 0xF2, 0x61, 0x4F, 0x51, 0x0E, 0x48, 0xCD, 0x40, 0xAD, 0x01, 0x30, 0x6B, 0x01, 0x30, 0x8C, 0x02, 0x30, 0xAC, 0x01, 0x30, 0xCC, 0x80, 0x30, 0xEC, 0x01, 0x30, 0xED, 0x01, 0x31, 0x0D, 0x82, 0x28, 0xEC, 0x28, 0xED, 0x29, 0x2D, 0x30, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x29, 0x0D, 0x01, 0x29, 0x2D, 0x13, 0x29, 0x0D, 0x80, + 0x29, 0x0E, 0x0D, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x35, 0x29, 0x0D, 0x01, 0x28, 0xED, 0x09, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x02, 0x29, 0x0D, 0x82, 0x29, 0x0E, 0x29, 0x0D, 0x28, 0xED, 0x11, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x0F, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x06, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x01, 0x28, 0xED, 0x81, 0x29, 0x0D, 0x28, 0xED, 0x03, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x03, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x12, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x12, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x03, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x04, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x03, 0x29, 0x0D, 0x82, 0x29, 0x0E, 0x29, 0x0D, 0x28, 0xED, 0x0D, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x09, 0x29, 0x0D, 0x80, 0x29, 0x2E, 0x07, 0x29, 0x0D, 0x80, 0x29, 0x2D, 0x02, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x0F, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x05, 0x29, 0x0D, 0x81, 0x28, 0xED, 0x29, 0x0D, 0x05, 0x29, 0x0E, 0x03, 0x29, 0x0D, 0x83, 0x29, 0x0E, 0x29, 0x0D, 0x28, 0xED, 0x29, 0x0D, 0x01, 0x28, 0xED, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x01, 0x28, 0xED, 0x80, 0x29, 0x0D, 0x02, 0x28, 0xED, 0x01, 0x28, 0xEE, 0x80, 0x29, 0x0E, 0x02, 0x28, 0xED, 0x80, 0x28, 0xEE, 0x02, 0x29, 0x0E, 0x01, 0x28, 0xED, 0x01, 0x28, 0xEE, 0x09, 0x29, + 0x0E, 0x03, 0x28, 0xEE, 0x01, 0x29, 0x0E, 0x81, 0x28, 0xED, 0x29, 0x0E, 0x01, 0x28, 0xEE, 0x80, 0x28, 0xED, 0x04, 0x29, 0x0E, 0x01, 0x28, 0xEE, 0x80, 0x28, 0xED, 0x02, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x82, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x81, 0x31, 0x2E, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x81, 0x31, 0x0E, 0x28, 0xEE, 0x01, 0x29, 0x0E, 0x82, 0x31, 0x0E, 0x29, 0x0E, 0x28, 0xEE, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x31, 0x2E, 0x04, 0x31, 0x0E, 0x80, 0x31, 0x0F, 0x02, 0x31, 0x2F, 0x01, 0x31, 0x0F, 0x01, 0x31, 0x2F, 0x80, 0x31, 0x4F, 0x03, 0x31, 0x2F, 0x01, 0x39, 0x2F, 0x80, 0x39, 0x50, 0x01, 0x39, 0x30, 0x81, 0x41, 0x50, 0x39, 0x30, 0x03, 0x41, 0x50, 0x81, 0x39, 0x30, 0x41, 0x50, 0x01, 0x41, 0x71, 0x85, 0x49, 0x91, 0x49, 0x92, 0x49, 0x72, 0x49, 0x71, 0x49, 0x72, 0x49, 0x71, 0x02, 0x51, 0x72, 0x80, 0x51, 0x92, 0x01, 0x59, 0x92, 0x01, 0x61, 0x92, 0x01, 0x69, 0x92, 0x87, 0x69, 0x52, 0x71, 0x72, 0x81, 0xB3, 0x92, 0x15, 0x9A, 0x15, 0xA1, 0xF4, 0xAA, 0x15, 0xA1, 0xD4, 0x03, 0xA9, 0xD4, 0x80, 0xA9, 0xD3, 0x01, 0xB1, 0xF4, 0x8E, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xD2, 0xA9, 0xF3, 0xAA, 0x13, 0xA2, 0x13, 0x9A, 0x34, 0x8A, 0x54, 0x62, 0x12, 0x29, 0x6E, 0x6D, 0x1B, 0x7F, 0x5F, 0x4F, 0x1F, 0x3F, 0x3E, 0x2F, 0x5E, 0x01, 0x27, 0x3D, 0x8B, 0x37, 0x5D, 0x3F, 0x3D, 0x4E, 0xDC, 0x6E, 0x9D, 0x4B, 0xB4, 0x52, 0x71, 0x7A, 0x73, 0x92, 0x53, 0xA2, 0x34, 0xA9, + 0xD3, 0xA9, 0xF4, 0xA9, 0xD3, 0x01, 0xA9, 0xD4, 0x87, 0xA1, 0xD3, 0xAA, 0x14, 0x9A, 0x14, 0x92, 0x14, 0x59, 0x0F, 0x51, 0x30, 0x51, 0x50, 0x49, 0x50, 0x02, 0x41, 0x50, 0x02, 0x39, 0x50, 0x81, 0x39, 0x4F, 0x39, 0x50, 0x06, 0x31, 0x2F, 0x80, 0x31, 0x0E, 0x01, 0x31, 0x2E, 0x82, 0x29, 0x2E, 0x29, 0x0E, 0x29, 0x2E, 0x0A, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x81, 0x29, 0x2E, 0x29, 0x0E, 0x03, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x83, 0x28, 0xED, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x07, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x28, 0xED, 0x01, 0x29, 0x0E, 0x0D, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x04, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x80, 0x28, 0xED, 0x04, 0x29, 0x0E, 0x81, 0x21, 0x0D, 0x29, 0x0E, 0x08, 0x21, 0x0D, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x81, 0x20, 0xED, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x21, 0x0D, 0x82, 0x29, 0x0E, 0x21, 0x0D, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x02, 0x21, 0x0D, 0x83, 0x29, 0x0E, 0x29, 0x0D, 0x21, 0x0D, 0x28, 0xED, 0x01, 0x29, 0x0E, 0x80, 0x21, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x05, 0x29, 0x0E, 0x01, 0x21, 0x0D, 0x01, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x06, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0D, 0x02, 0x21, 0x0D, 0x80, 0x20, 0xED, 0x01, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x80, 0x20, 0xED, 0x02, 0x21, 0x0D, 0x80, 0x20, 0xED, 0x01, 0x21, 0x0D, 0x80, 0x20, 0xED, 0x08, 0x21, 0x0D, + 0x01, 0x20, 0xED, 0x81, 0x29, 0x0D, 0x20, 0xED, 0x01, 0x29, 0x0D, 0x04, 0x28, 0xED, 0x01, 0x20, 0xED, 0x80, 0x29, 0x0D, 0x02, 0x21, 0x0D, 0x01, 0x20, 0xED, 0x81, 0x21, 0x0D, 0x20, 0xED, 0x01, 0x21, 0x0D, 0x81, 0x20, 0xED, 0x21, 0x0D, 0x01, 0x20, 0xED, 0x01, 0x21, 0x0D, 0x80, 0x29, 0x0D, 0x01, 0x21, 0x0D, 0x80, 0x29, 0x0D, 0x05, 0x20, 0xED, 0x80, 0x21, 0x0D, 0x01, 0x20, 0xED, 0x01, 0x21, 0x0D, 0x05, 0x20, 0xED, 0x80, 0x21, 0x0D, 0x02, 0x20, 0xEC, 0x80, 0x20, 0xED, 0x05, 0x20, 0xEC, 0x01, 0x21, 0x0D, 0x01, 0x20, 0xED, 0x81, 0x20, 0xEC, 0x20, 0xED, 0x02, 0x28, 0xED, 0x80, 0x29, 0x0D, 0x01, 0x20, 0xED, 0x81, 0x20, 0xCC, 0x28, 0xED, 0x03, 0x29, 0x0D, 0x81, 0x20, 0xEC, 0x28, 0xEC, 0x02, 0x20, 0xEC, 0x8C, 0x21, 0x0C, 0x20, 0xEC, 0x21, 0x0C, 0x89, 0x71, 0x89, 0x70, 0x89, 0x71, 0x89, 0x51, 0x89, 0x50, 0x89, 0x71, 0x89, 0x50, 0x89, 0x71, 0x89, 0x91, 0x89, 0x71, 0x01, 0x89, 0x91, 0x04, 0x89, 0x71, 0x88, 0x89, 0x91, 0x89, 0x71, 0x89, 0x92, 0x89, 0x71, 0x89, 0x91, 0x89, 0x92, 0x91, 0x92, 0x89, 0x92, 0x89, 0xB2, 0x02, 0x89, 0x92, 0x80, 0x91, 0xB2, 0x02, 0x89, 0x92, 0x81, 0x91, 0xB2, 0x89, 0x92, 0x01, 0x91, 0xB2, 0x88, 0x89, 0x91, 0x89, 0xB2, 0x91, 0xB2, 0x89, 0x92, 0x91, 0xB2, 0x91, 0x92, 0x91, 0xB2, 0x89, 0x92, 0x89, 0xB2, 0x01, 0x91, 0xB2, 0x80, 0x89, 0xB2, 0x05, 0x91, 0xB2, 0x80, 0x91, 0xD3, 0x04, 0x91, 0xB2, 0x82, 0x91, 0xD2, 0x91, 0xB2, 0x91, 0xD2, 0x01, 0x91, 0xB2, 0x01, 0x91, 0xD2, 0x80, 0x91, 0xB2, 0x01, 0x91, 0xD2, 0x84, + 0x91, 0xB2, 0x91, 0xD2, 0x91, 0xD3, 0x91, 0xB2, 0x91, 0xD3, 0x01, 0x91, 0xD2, 0x84, 0x91, 0xB2, 0x91, 0xD3, 0x91, 0xB2, 0x91, 0xD3, 0x91, 0xB2, 0x04, 0x91, 0xD3, 0x01, 0x91, 0xD2, 0x84, 0x89, 0xB2, 0x91, 0xB2, 0x89, 0x92, 0x91, 0xD2, 0x91, 0xB2, 0x01, 0x89, 0xB2, 0x85, 0x91, 0xD2, 0x89, 0xB2, 0x91, 0xF3, 0x89, 0xB2, 0x91, 0xD2, 0x91, 0xF3, 0x01, 0x91, 0xD2, 0x80, 0x99, 0xF3, 0x01, 0x91, 0xD3, 0x85, 0x91, 0xF3, 0x91, 0xD2, 0x91, 0xB2, 0x91, 0xD3, 0x91, 0xD2, 0x91, 0xF3, 0x01, 0x91, 0xD2, 0x80, 0x91, 0xD3, 0x03, 0x91, 0xF3, 0x80, 0x89, 0xF3, 0x01, 0x92, 0x13, 0x08, 0x89, 0xF3, 0x01, 0x8A, 0x13, 0x80, 0x81, 0xF3, 0x01, 0x8A, 0x33, 0x02, 0x8A, 0x54, 0x01, 0x8A, 0x95, 0x86, 0x82, 0x74, 0x69, 0xD1, 0x59, 0x90, 0x51, 0x4F, 0x49, 0x0E, 0x40, 0xED, 0x30, 0x8C, 0x02, 0x30, 0xAC, 0x82, 0x30, 0xCC, 0x28, 0xCC, 0x28, 0xCD, 0x02, 0x28, 0xED, 0x81, 0x29, 0x0D, 0x28, 0xED, 0x06, 0x29, 0x0D, 0x80, 0x21, 0x0D, 0x03, 0x29, 0x0D, 0x09, 0x29, 0x0E, 0x80, 0x28, 0xED, 0x0A, 0x29, 0x0E, 0x80, 0x21, 0x0D, 0x07, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x21, 0x0D, 0x04, 0x29, 0x0E, 0x80, 0x21, 0x0D, 0x01, 0x29, 0x0E, 0x80, 0x21, 0x0D, 0x0A, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x0E, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x15, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x16, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x0A, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x02, 0x29, + 0x0E, 0x81, 0x29, 0x0D, 0x28, 0xED, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x06, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x09, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x11, 0x29, 0x0E, 0x83, 0x29, 0x0D, 0x29, 0x0E, 0x29, 0x0D, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x04, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x82, 0x28, 0xED, 0x29, 0x0E, 0x28, 0xED, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x05, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x06, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x82, 0x29, 0x0D, 0x29, 0x0E, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x80, 0x29, 0x0E, 0x02, 0x29, 0x0D, 0x80, 0x28, 0xED, 0x02, 0x29, 0x0D, 0x02, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x28, 0xED, 0x06, 0x29, 0x0E, 0x81, 0x29, 0x0D, 0x28, 0xED, 0x01, 0x29, 0x0D, 0x03, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x81, 0x29, 0x0E, 0x29, 0x0D, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x82, 0x28, 0xED, 0x29, 0x0D, 0x28, 0xED, 0x03, 0x29, 0x0D, 0x80, 0x28, 0xEE, 0x06, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x0E, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x0D, 0x01, 0x29, 0x0E, 0x01, 0x29, 0x0D, 0x1C, 0x29, 0x0E, 0x02, 0x28, 0xEE, 0x01, 0x29, 0x0E, 0x80, 0x28, 0xEE, 0x02, 0x29, 0x0E, 0x03, 0x28, 0xEE, 0x01, 0x29, 0x0E, 0x01, 0x28, 0xEE, 0x82, 0x29, 0x0E, 0x28, 0xEE, 0x29, 0x0E, 0x01, 0x28, 0xEE, 0x0E, + 0x29, 0x0E, 0x82, 0x28, 0xEE, 0x29, 0x0E, 0x28, 0xEE, 0x01, 0x29, 0x0E, 0x81, 0x28, 0xEE, 0x29, 0x0E, 0x02, 0x28, 0xEE, 0x80, 0x29, 0x0E, 0x01, 0x28, 0xEE, 0x01, 0x29, 0x0E, 0x82, 0x28, 0xEE, 0x29, 0x0E, 0x28, 0xEE, 0x0E, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x01, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x02, 0x29, 0x0E, 0x80, 0x28, 0xEE, 0x06, 0x29, 0x0E, 0x84, 0x31, 0x2F, 0x29, 0x0E, 0x29, 0x2E, 0x31, 0x2E, 0x29, 0x0E, 0x01, 0x31, 0x2E, 0x80, 0x31, 0x0E, 0x03, 0x31, 0x0F, 0x01, 0x31, 0x2F, 0x80, 0x31, 0x0F, 0x02, 0x31, 0x2F, 0x86, 0x31, 0x30, 0x31, 0x2F, 0x31, 0x50, 0x31, 0x2F, 0x31, 0x30, 0x39, 0x30, 0x39, 0x50, 0x01, 0x39, 0x30, 0x81, 0x39, 0x50, 0x39, 0x30, 0x02, 0x39, 0x50, 0x81, 0x41, 0x51, 0x39, 0x51, 0x02, 0x41, 0x51, 0x80, 0x41, 0x50, 0x01, 0x41, 0x71, 0x02, 0x49, 0x72, 0x80, 0x49, 0x92, 0x01, 0x49, 0x72, 0x01, 0x51, 0x92, 0x86, 0x51, 0xB3, 0x51, 0x92, 0x51, 0x72, 0x59, 0x92, 0x59, 0x93, 0x59, 0x92, 0x61, 0x72, 0x01, 0x69, 0x93, 0x89, 0x71, 0x72, 0x79, 0x72, 0x89, 0xD4, 0x99, 0xF4, 0xA2, 0x35, 0xA1, 0xF4, 0xA9, 0xF5, 0xA9, 0xF4, 0xA1, 0xB4, 0xA9, 0xD4, 0x01, 0xB1, 0xF4, 0x81, 0xA9, 0xD3, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x89, 0xAA, 0x14, 0x9A, 0x13, 0x92, 0x33, 0x82, 0x33, 0x51, 0xD1, 0x21, 0xAF, 0x86, 0x5F, 0x77, 0x1F, 0x4F, 0x1E, 0x37, 0x3E, 0x01, 0x2F, 0x3D, 0x8B, 0x2F, 0x1D, 0x3F, 0x3D, 0x4F, 0x1D, 0x6E, 0xDD, 0x64, 0xD8, 0x42, 0x70, 0x7A, 0xB3, 0x8A, 0x33, 0x9A, 0x13, + 0xAA, 0x14, 0xA1, 0xB3, 0xA9, 0xD3, 0x01, 0xB1, 0xF4, 0x87, 0xA9, 0xF4, 0xA1, 0xF4, 0x99, 0xF4, 0x92, 0x34, 0x71, 0xB2, 0x59, 0x51, 0x51, 0x71, 0x49, 0x71, 0x03, 0x41, 0x70, 0x01, 0x39, 0x70, 0x01, 0x39, 0x50, 0x81, 0x31, 0x50, 0x39, 0x50, 0x01, 0x31, 0x2F, 0x80, 0x31, 0x4F, 0x01, 0x31, 0x2F, 0x80, 0x31, 0x0F, 0x01, 0x31, 0x2F, 0x02, 0x29, 0x2E, 0x01, 0x29, 0x2F, 0x80, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x0A, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x12, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x05, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x04, 0x29, 0x0E, 0x82, 0x21, 0x0E, 0x29, 0x0E, 0x21, 0x0E, 0x04, 0x29, 0x0E, 0x80, 0x29, 0x2E, 0x05, 0x29, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x11, 0x21, 0x0E, 0x81, 0x29, 0x0E, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x81, 0x21, 0x0E, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x80, 0x29, 0x0E, 0x09, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x03, 0x21, 0x0E, 0x80, 0x29, 0x0E, 0x06, 0x21, 0x0E, 0x80, 0x21, 0x2E, 0x04, 0x21, 0x0E, 0x83, 0x29, 0x0E, 0x21, 0x0E, 0x29, 0x0E, 0x21, 0x0E, 0x02, 0x29, 0x0E, 0x02, 0x21, 0x0E, 0x82, 0x21, 0x0D, 0x21, 0x0E, 0x20, 0xEE, 0x09, 0x21, 0x0E, 0x04, 0x21, 0x0D, 0x0A, 0x21, 0x0E, 0x86, 0x20, 0xED, 0x21, 0x0E, 0x28, 0xEE, 0x21, 0x0E, 0x20, 0xEE, 0x28, 0xEE, 0x20, 0xEE, 0x01, 0x21, 0x0E, 0x80, 0x20, 0xEE, 0x08, 0x21, 0x0E, 0x02, 0x21, 0x0D, 0x03, 0x21, 0x0E, 0x80, 0x21, 0x0D, 0x01, 0x21, 0x0E, 0x80, 0x21, 0x0D, 0x01, 0x20, 0xED, 0x01, 0x21, + 0x0D, 0x81, 0x20, 0xED, 0x21, 0x0D, 0x01, 0x20, 0xED, 0x80, 0x21, 0x0D, 0x01, 0x20, 0xED, 0x80, 0x21, 0x0D, 0x04, 0x20, 0xED, 0x80, 0x21, 0x0D, 0x03, 0x20, 0xED, 0x01, 0x21, 0x0D, 0x81, 0x20, 0xED, 0x21, 0x0D, 0x02, 0x20, 0xED, 0x80, 0x21, 0x0D, 0x09, 0x20, 0xED, 0x80, 0x21, 0x0D, 0x01, 0x20, 0xED, 0x81, 0x21, 0x0D, 0x20, 0xED, 0x01, 0x21, 0x0D, 0x81, 0x20, 0xED, 0x21, 0x0D, 0x01, 0x20, 0xED, 0x81, 0x21, 0x0D, 0x20, 0xED, 0x05, 0x81, 0x71, 0x81, 0x81, 0x51, 0x89, 0x72, 0x01, 0x89, 0x92, 0x80, 0x81, 0x91, 0x01, 0x81, 0x71, 0x81, 0x81, 0x91, 0x89, 0x92, 0x03, 0x81, 0x92, 0x80, 0x89, 0x92, 0x01, 0x81, 0x92, 0x0B, 0x89, 0xB2, 0x80, 0x89, 0x92, 0x04, 0x89, 0xB2, 0x82, 0x89, 0xD3, 0x89, 0xB2, 0x89, 0xB3, 0x01, 0x89, 0xB2, 0x01, 0x89, 0xD3, 0x04, 0x89, 0xB3, 0x80, 0x89, 0xD3, 0x02, 0x89, 0xB3, 0x81, 0x89, 0xD3, 0x91, 0xD3, 0x01, 0x89, 0xB3, 0x01, 0x91, 0xD3, 0x02, 0x89, 0xD3, 0x01, 0x91, 0xD3, 0x01, 0x89, 0xD3, 0x83, 0x91, 0xF3, 0x91, 0xD3, 0x89, 0xD3, 0x89, 0xD2, 0x04, 0x89, 0xD3, 0x80, 0x89, 0xF3, 0x03, 0x89, 0xD3, 0x80, 0x91, 0xF3, 0x01, 0x89, 0xD3, 0x80, 0x91, 0xF3, 0x01, 0x91, 0xD3, 0x84, 0x89, 0xD3, 0x91, 0xD3, 0x89, 0xD3, 0x89, 0xB2, 0x89, 0xD3, 0x01, 0x91, 0xF3, 0x83, 0x89, 0xF3, 0x89, 0xD2, 0x89, 0xB2, 0x89, 0xD3, 0x02, 0x89, 0xF3, 0x04, 0x89, 0xD3, 0x82, 0x91, 0xF3, 0x89, 0xD3, 0x91, 0xF3, 0x01, 0x89, 0xD3, 0x80, 0x92, 0x13, 0x03, 0x91, 0xF3, 0x81, 0x89, 0xD3, 0x92, 0x13, 0x02, 0x89, 0xF3, 0x81, 0x92, 0x14, 0x89, + 0xF3, 0x02, 0x8A, 0x14, 0x81, 0x8A, 0x13, 0x89, 0xF3, 0x01, 0x8A, 0x14, 0x02, 0x81, 0xF3, 0x02, 0x82, 0x13, 0x02, 0x82, 0x14, 0x8B, 0x82, 0x34, 0x7A, 0x13, 0x7A, 0x34, 0x82, 0x75, 0x7A, 0x54, 0x72, 0x34, 0x72, 0x13, 0x69, 0xF2, 0x59, 0xB1, 0x49, 0x4F, 0x41, 0x0E, 0x30, 0xCD, 0x03, 0x28, 0xAC, 0x82, 0x28, 0xAD, 0x28, 0xCD, 0x20, 0xCD, 0x01, 0x28, 0xED, 0x81, 0x20, 0xED, 0x21, 0x0E, 0x01, 0x20, 0xED, 0x81, 0x21, 0x0E, 0x20, 0xED, 0x0D, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x18, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x10, 0x21, 0x0E, 0x80, 0x20, 0xEE, 0x01, 0x21, 0x0E, 0x81, 0x20, 0xEE, 0x21, 0x0E, 0x02, 0x20, 0xEE, 0x80, 0x29, 0x0E, 0x02, 0x20, 0xEE, 0x81, 0x21, 0x0E, 0x20, 0xEE, 0x04, 0x21, 0x0E, 0x80, 0x20, 0xEE, 0x04, 0x21, 0x0E, 0x80, 0x20, 0xEE, 0x03, 0x21, 0x0E, 0x80, 0x20, 0xEE, 0x08, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x07, 0x21, 0x0E, 0x80, 0x29, 0x0E, 0x07, 0x21, 0x0E, 0x80, 0x20, 0xEE, 0x0A, 0x21, 0x0E, 0x81, 0x20, 0xEE, 0x29, 0x0E, 0x02, 0x20, 0xEE, 0x80, 0x21, 0x0E, 0x03, 0x20, 0xEE, 0x01, 0x29, 0x0E, 0x02, 0x20, 0xEE, 0x82, 0x21, 0x0E, 0x20, 0xEE, 0x21, 0x0E, 0x02, 0x20, 0xEE, 0x80, 0x21, 0x0E, 0x02, 0x20, 0xEE, 0x81, 0x21, 0x0E, 0x29, 0x0E, 0x03, 0x21, 0x0E, 0x80, 0x29, 0x0E, 0x05, 0x21, 0x0E, 0x02, 0x20, 0xEE, 0x80, 0x21, 0x0E, 0x02, 0x20, 0xEE, 0x83, 0x21, 0x0E, 0x20, 0xEE, 0x21, 0x0E, 0x20, 0xEE, 0x02, 0x21, 0x0E, 0x80, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x80, 0x20, 0xEE, 0x03, 0x29, 0x0E, 0x01, 0x21, 0x0E, 0x81, 0x20, 0xEE, + 0x21, 0x0E, 0x02, 0x20, 0xEE, 0x02, 0x29, 0x0E, 0x05, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x80, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x80, 0x29, 0x0E, 0x04, 0x21, 0x0E, 0x05, 0x20, 0xEE, 0x01, 0x21, 0x0E, 0x03, 0x29, 0x0E, 0x02, 0x21, 0x0E, 0x80, 0x29, 0x0E, 0x05, 0x20, 0xEE, 0x02, 0x29, 0x0E, 0x80, 0x20, 0xEE, 0x01, 0x29, 0x0E, 0x01, 0x20, 0xEE, 0x01, 0x29, 0x0E, 0x04, 0x21, 0x0E, 0x80, 0x20, 0xEE, 0x01, 0x21, 0x0E, 0x05, 0x20, 0xEE, 0x80, 0x29, 0x0E, 0x02, 0x20, 0xEE, 0x80, 0x29, 0x0E, 0x02, 0x20, 0xEE, 0x80, 0x29, 0x0E, 0x02, 0x20, 0xEE, 0x80, 0x29, 0x0E, 0x02, 0x20, 0xEE, 0x82, 0x29, 0x0E, 0x20, 0xEE, 0x29, 0x0E, 0x03, 0x20, 0xEE, 0x01, 0x29, 0x0E, 0x86, 0x20, 0xEE, 0x29, 0x0E, 0x28, 0xEE, 0x29, 0x0E, 0x20, 0xEE, 0x29, 0x0E, 0x21, 0x0E, 0x01, 0x29, 0x0E, 0x01, 0x20, 0xEE, 0x02, 0x29, 0x0E, 0x80, 0x20, 0xEE, 0x02, 0x29, 0x0E, 0x01, 0x20, 0xEE, 0x80, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x80, 0x29, 0x0E, 0x04, 0x20, 0xEE, 0x01, 0x28, 0xEE, 0x05, 0x20, 0xEE, 0x80, 0x29, 0x0E, 0x02, 0x20, 0xEE, 0x80, 0x21, 0x0E, 0x04, 0x20, 0xEE, 0x01, 0x29, 0x0E, 0x01, 0x20, 0xEE, 0x01, 0x29, 0x0E, 0x01, 0x28, 0xEE, 0x81, 0x21, 0x0E, 0x20, 0xEE, 0x02, 0x28, 0xEE, 0x82, 0x20, 0xEE, 0x29, 0x0E, 0x20, 0xEE, 0x03, 0x29, 0x0E, 0x82, 0x20, 0xEE, 0x29, 0x0E, 0x29, 0x0F, 0x02, 0x29, 0x0E, 0x01, 0x29, 0x0F, 0x80, 0x28, 0xEE, 0x0A, 0x29, 0x0F, 0x80, 0x29, 0x0E, 0x01, 0x28, 0xEE, 0x81, 0x29, 0x0F, 0x29, 0x0E, 0x02, 0x29, 0x0F, 0x80, 0x28, 0xEF, 0x01, 0x29, 0x0F, + 0x01, 0x29, 0x0E, 0x81, 0x29, 0x0F, 0x28, 0xEF, 0x02, 0x29, 0x0F, 0x02, 0x28, 0xEF, 0x14, 0x29, 0x0F, 0x80, 0x28, 0xEF, 0x04, 0x29, 0x0F, 0x80, 0x20, 0xEE, 0x0D, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x02, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x29, 0x0F, 0x01, 0x29, 0x2F, 0x81, 0x29, 0x0F, 0x29, 0x2F, 0x07, 0x29, 0x0F, 0x81, 0x29, 0x2F, 0x29, 0x0F, 0x04, 0x29, 0x2F, 0x82, 0x31, 0x2F, 0x29, 0x0F, 0x29, 0x2F, 0x03, 0x31, 0x2F, 0x06, 0x31, 0x30, 0x80, 0x31, 0x50, 0x04, 0x31, 0x30, 0x82, 0x31, 0x31, 0x31, 0x30, 0x39, 0x31, 0x08, 0x39, 0x51, 0x80, 0x39, 0x71, 0x01, 0x39, 0x51, 0x80, 0x41, 0x71, 0x01, 0x41, 0x72, 0x80, 0x41, 0x92, 0x03, 0x49, 0x92, 0x82, 0x51, 0xB3, 0x49, 0x93, 0x51, 0x93, 0x02, 0x51, 0xB3, 0x01, 0x59, 0xB3, 0x80, 0x59, 0x93, 0x01, 0x61, 0x93, 0x81, 0x69, 0xB3, 0x79, 0xD4, 0x01, 0x81, 0xD4, 0x89, 0x91, 0xF5, 0x9A, 0x15, 0x99, 0xD4, 0xA1, 0xF5, 0xA9, 0xF4, 0xA9, 0xD4, 0xA1, 0x93, 0xA9, 0xF4, 0xA9, 0xD3, 0xA9, 0xF4, 0x01, 0xA9, 0xD3, 0xA5, 0xA9, 0xB2, 0xA9, 0xD3, 0xA9, 0xF3, 0xA2, 0x14, 0xA2, 0x54, 0x92, 0x74, 0x82, 0x54, 0x49, 0xD1, 0x2A, 0x71, 0x86, 0xBF, 0x5E, 0xFE, 0x46, 0xFD, 0x37, 0x1D, 0x2F, 0x1D, 0x2E, 0xFC, 0x36, 0xFC, 0x3E, 0xBC, 0x5E, 0x9C, 0x6D, 0x9A, 0x42, 0xB1, 0x7A, 0xF4, 0x92, 0x94, 0x99, 0xF3, 0xA1, 0xD3, 0xA9, 0xD3, 0xA9, 0xF4, 0xA1, 0x93, 0xA9, 0xD4, 0xA9, 0xF4, 0xAA, 0x35, 0x99, 0xD4, 0x91, 0xF4, 0x82, 0x14, 0x59, 0x30, 0x51, + 0x50, 0x49, 0x51, 0x41, 0x51, 0x41, 0x71, 0x01, 0x41, 0x91, 0x81, 0x39, 0x91, 0x39, 0x71, 0x06, 0x31, 0x50, 0x01, 0x31, 0x30, 0x80, 0x31, 0x50, 0x07, 0x29, 0x2F, 0x04, 0x29, 0x0F, 0x80, 0x29, 0x2F, 0x03, 0x29, 0x0F, 0x03, 0x21, 0x0F, 0x80, 0x29, 0x0F, 0x09, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x0E, 0x0C, 0x21, 0x0F, 0x80, 0x29, 0x2F, 0x10, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x02, 0x21, 0x0F, 0x01, 0x29, 0x2F, 0x09, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x06, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x05, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x81, 0x21, 0x0F, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x02, 0x21, 0x2F, 0x02, 0x21, 0x0F, 0x80, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x01, 0x21, 0x0F, 0x01, 0x21, 0x2F, 0x0C, 0x21, 0x0F, 0x03, 0x21, 0x0E, 0x07, 0x21, 0x0F, 0x81, 0x21, 0x0E, 0x21, 0x2F, 0x01, 0x21, 0x0E, 0x80, 0x21, 0x2F, 0x04, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x80, 0x21, 0x0E, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x0E, 0x20, 0xEE, 0x03, 0x21, 0x0E, 0x01, 0x20, 0xEE, 0x81, 0x21, 0x0F, 0x20, 0xEF, 0x05, 0x21, 0x0F, 0x80, 0x19, 0x0F, 0x05, 0x21, 0x0F, 0x80, 0x19, 0x0E, 0x01, 0x21, 0x0E, 0x01, 0x19, 0x0E, 0x05, 0x21, 0x0E, 0x01, 0x19, 0x0E, 0x80, 0x21, 0x0E, 0x01, 0x19, 0x0E, 0x80, 0x21, 0x0E, 0x07, 0x19, 0x0E, 0x84, 0x21, 0x0E, 0x19, 0x0E, 0x21, 0x0E, 0x19, 0x0E, 0x21, 0x0E, 0x01, 0x19, 0x0E, 0x01, 0x21, 0x0E, 0x80, 0x18, 0xED, 0x01, + 0x19, 0x0D, 0x01, 0x18, 0xED, 0x01, 0x18, 0xEE, 0x81, 0x21, 0x0E, 0x20, 0xEE, 0x01, 0x21, 0x0E, 0x06, 0x20, 0xEE, 0x01, 0x21, 0x0E, 0x80, 0x20, 0xED, 0x04, 0x21, 0x0D, 0x01, 0x19, 0x0D, 0x84, 0x21, 0x0D, 0x81, 0xB2, 0x81, 0xB3, 0x81, 0xB2, 0x81, 0xB3, 0x02, 0x79, 0x92, 0x81, 0x81, 0x93, 0x81, 0xB2, 0x03, 0x79, 0x92, 0x82, 0x81, 0xB3, 0x79, 0xB2, 0x79, 0xB3, 0x01, 0x79, 0xB2, 0x80, 0x79, 0x92, 0x06, 0x79, 0xB3, 0x01, 0x81, 0xB3, 0x84, 0x79, 0xB3, 0x81, 0xD3, 0x79, 0xD3, 0x79, 0xB3, 0x81, 0xD3, 0x01, 0x79, 0xB3, 0x82, 0x81, 0xD3, 0x79, 0xB3, 0x81, 0xF3, 0x08, 0x81, 0xD3, 0x81, 0x81, 0xD4, 0x81, 0xB3, 0x01, 0x81, 0xD3, 0x81, 0x81, 0xD4, 0x81, 0xD3, 0x02, 0x81, 0xD4, 0x82, 0x81, 0xD3, 0x81, 0xD4, 0x89, 0xD4, 0x04, 0x81, 0xD4, 0x83, 0x81, 0xD3, 0x89, 0xF4, 0x81, 0xD3, 0x89, 0xF4, 0x03, 0x81, 0xF3, 0x81, 0x81, 0xD3, 0x81, 0xF4, 0x01, 0x81, 0xD3, 0x04, 0x81, 0xF4, 0x81, 0x81, 0xD3, 0x81, 0xF4, 0x01, 0x81, 0xD3, 0x81, 0x81, 0xD4, 0x81, 0xD3, 0x01, 0x81, 0xD4, 0x8A, 0x89, 0xF4, 0x81, 0xD4, 0x81, 0xF4, 0x81, 0xD3, 0x8A, 0x14, 0x89, 0xF4, 0x81, 0xF3, 0x8A, 0x14, 0x81, 0xF4, 0x81, 0xD3, 0x8A, 0x14, 0x03, 0x81, 0xF3, 0x82, 0x81, 0xD3, 0x81, 0xF4, 0x81, 0xD3, 0x02, 0x81, 0xF4, 0x82, 0x89, 0xF4, 0x8A, 0x14, 0x81, 0xF3, 0x03, 0x89, 0xF4, 0x80, 0x8A, 0x14, 0x04, 0x81, 0xF4, 0x80, 0x8A, 0x14, 0x01, 0x82, 0x14, 0x83, 0x8A, 0x35, 0x82, 0x14, 0x82, 0x34, 0x8A, 0x35, 0x04, 0x82, 0x14, 0x80, 0x82, 0x35, 0x01, 0x82, 0x34, 0x01, 0x82, 0x35, + 0x80, 0x82, 0x55, 0x01, 0x7A, 0x14, 0x01, 0x72, 0x14, 0x01, 0x7A, 0x55, 0x8F, 0x72, 0x34, 0x7A, 0x75, 0x72, 0x55, 0x7A, 0x96, 0x72, 0x95, 0x72, 0xB5, 0x62, 0x54, 0x5A, 0x13, 0x49, 0x91, 0x39, 0x4F, 0x28, 0xEE, 0x28, 0xAD, 0x20, 0xCE, 0x20, 0xAD, 0x20, 0xCD, 0x20, 0xCE, 0x02, 0x20, 0xEE, 0x02, 0x21, 0x0E, 0x04, 0x21, 0x0F, 0x81, 0x20, 0xEF, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x04, 0x18, 0xEF, 0x80, 0x21, 0x0F, 0x01, 0x18, 0xEF, 0x80, 0x19, 0x0F, 0x01, 0x18, 0xEF, 0x03, 0x19, 0x0F, 0x02, 0x21, 0x0F, 0x01, 0x18, 0xEF, 0x80, 0x19, 0x0F, 0x04, 0x18, 0xEF, 0x80, 0x21, 0x0F, 0x02, 0x18, 0xEF, 0x01, 0x19, 0x0F, 0x80, 0x18, 0xEF, 0x02, 0x21, 0x0F, 0x02, 0x19, 0x0F, 0x04, 0x18, 0xEF, 0x81, 0x19, 0x0F, 0x21, 0x0F, 0x07, 0x18, 0xEF, 0x82, 0x20, 0xEF, 0x18, 0xEF, 0x20, 0xEF, 0x07, 0x18, 0xEF, 0x80, 0x19, 0x0F, 0x05, 0x18, 0xEF, 0x81, 0x20, 0xEF, 0x18, 0xEF, 0x04, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x19, 0x0F, 0x03, 0x18, 0xEF, 0x01, 0x20, 0xEF, 0x06, 0x21, 0x0F, 0x80, 0x18, 0xEE, 0x01, 0x19, 0x0F, 0x01, 0x21, 0x0F, 0x81, 0x18, 0xEF, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x81, 0x18, 0xEF, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x80, 0x18, 0xEF, 0x01, 0x21, 0x0F, 0x01, 0x18, 0xEF, 0x80, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x02, 0x18, 0xEF, 0x18, 0x20, 0xEF, 0x82, 0x18, 0xEE, 0x20, 0xEE, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x81, 0x21, 0x0F, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x80, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x03, 0x20, 0xEF, 0x81, 0x18, 0xEF, 0x21, + 0x0F, 0x05, 0x20, 0xEF, 0x01, 0x20, 0xEE, 0x0B, 0x20, 0xEF, 0x80, 0x20, 0xEE, 0x01, 0x20, 0xEF, 0x83, 0x20, 0xEE, 0x20, 0xEF, 0x21, 0x0F, 0x20, 0xEE, 0x03, 0x20, 0xEF, 0x81, 0x21, 0x0F, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x81, 0x20, 0xEE, 0x21, 0x0F, 0x01, 0x20, 0xEE, 0x02, 0x20, 0xEF, 0x84, 0x20, 0xEE, 0x20, 0xEF, 0x21, 0x0F, 0x20, 0xEF, 0x18, 0xEE, 0x01, 0x20, 0xEE, 0x81, 0x20, 0xEF, 0x20, 0xEE, 0x01, 0x20, 0xEF, 0x81, 0x20, 0xEE, 0x21, 0x0F, 0x02, 0x20, 0xEF, 0x01, 0x20, 0xEE, 0x01, 0x20, 0xEF, 0x82, 0x18, 0xEF, 0x18, 0xCF, 0x20, 0xEF, 0x08, 0x20, 0xEE, 0x80, 0x18, 0xEE, 0x03, 0x20, 0xEE, 0x80, 0x18, 0xEE, 0x01, 0x20, 0xEE, 0x81, 0x18, 0xEE, 0x18, 0xCE, 0x01, 0x18, 0xEE, 0x0B, 0x20, 0xEE, 0x06, 0x20, 0xEF, 0x83, 0x20, 0xCE, 0x20, 0xEF, 0x20, 0xEE, 0x20, 0xCE, 0x0C, 0x20, 0xEE, 0x85, 0x18, 0xEE, 0x20, 0xEE, 0x21, 0x0E, 0x20, 0xEE, 0x18, 0xEE, 0x20, 0xEE, 0x02, 0x20, 0xEF, 0x06, 0x20, 0xEE, 0x81, 0x18, 0xEE, 0x20, 0xEE, 0x07, 0x20, 0xEF, 0x87, 0x20, 0xEE, 0x20, 0xEF, 0x20, 0xEE, 0x21, 0x0F, 0x18, 0xCE, 0x18, 0xEE, 0x20, 0xEE, 0x18, 0xEE, 0x05, 0x20, 0xEE, 0x80, 0x20, 0xEF, 0x01, 0x20, 0xEE, 0x81, 0x20, 0xEF, 0x20, 0xEE, 0x07, 0x20, 0xEF, 0x80, 0x20, 0xEE, 0x03, 0x20, 0xEF, 0x01, 0x21, 0x0F, 0x01, 0x20, 0xEF, 0x82, 0x21, 0x0F, 0x29, 0x30, 0x29, 0x0F, 0x01, 0x29, 0x30, 0x01, 0x29, 0x10, 0x1F, 0x29, 0x30, 0x80, 0x29, 0x51, 0x04, 0x29, 0x30, 0x02, 0x29, 0x51, 0x01, 0x29, 0x50, 0x06, 0x29, 0x30, 0x82, 0x29, 0x10, 0x29, 0x30, + 0x29, 0x50, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x01, 0x29, 0x30, 0x80, 0x29, 0x51, 0x01, 0x29, 0x30, 0x81, 0x29, 0x50, 0x29, 0x30, 0x01, 0x29, 0x51, 0x02, 0x29, 0x30, 0x80, 0x29, 0x51, 0x01, 0x29, 0x30, 0x81, 0x29, 0x50, 0x21, 0x30, 0x18, 0x29, 0x30, 0x01, 0x29, 0x31, 0x81, 0x29, 0x30, 0x29, 0x31, 0x01, 0x29, 0x30, 0x80, 0x29, 0x50, 0x02, 0x29, 0x30, 0x80, 0x29, 0x50, 0x02, 0x29, 0x30, 0x81, 0x31, 0x30, 0x29, 0x30, 0x01, 0x31, 0x31, 0x01, 0x31, 0x51, 0x80, 0x29, 0x31, 0x01, 0x29, 0x51, 0x01, 0x29, 0x31, 0x82, 0x31, 0x51, 0x31, 0x31, 0x31, 0x51, 0x02, 0x31, 0x52, 0x82, 0x39, 0x52, 0x31, 0x52, 0x39, 0x52, 0x02, 0x39, 0x72, 0x02, 0x39, 0x92, 0x02, 0x41, 0x92, 0x82, 0x41, 0x93, 0x41, 0x92, 0x41, 0x93, 0x01, 0x49, 0xB3, 0x81, 0x49, 0x93, 0x49, 0xB4, 0x01, 0x49, 0xB3, 0x85, 0x49, 0xB4, 0x49, 0xB3, 0x51, 0xF4, 0x51, 0xD4, 0x51, 0xB3, 0x59, 0xD4, 0x01, 0x59, 0xB4, 0x86, 0x61, 0xD4, 0x61, 0xB3, 0x69, 0x93, 0x71, 0xD4, 0x79, 0xD5, 0x81, 0xF5, 0x89, 0xD4, 0x01, 0x99, 0xF5, 0x01, 0xAA, 0x15, 0x83, 0xA1, 0xD4, 0xA9, 0xD4, 0xA9, 0xD3, 0xB1, 0xF4, 0x03, 0xA9, 0xD3, 0x8A, 0xA9, 0xF3, 0xAA, 0x14, 0xA1, 0xF3, 0x9A, 0x34, 0x92, 0x54, 0x72, 0x53, 0x31, 0xAF, 0x53, 0xF6, 0x87, 0x1F, 0x56, 0xDD, 0x46, 0xFD, 0x01, 0x3F, 0x3D, 0x8A, 0x3F, 0x1D, 0x3E, 0xDC, 0x56, 0x9C, 0x76, 0x3C, 0x3B, 0x11, 0x72, 0xF3, 0x8A, 0x73, 0x91, 0xF3, 0xA1, 0xD3, 0xA9, 0xF3, 0xA9, 0xF4, 0x01, 0xA9, 0xD4, 0x8A, 0xA9, 0xF4, 0xA1, + 0xF4, 0xA2, 0x15, 0x91, 0xF4, 0x8A, 0x35, 0x61, 0x51, 0x51, 0x51, 0x49, 0x71, 0x41, 0x71, 0x41, 0xB2, 0x41, 0x92, 0x01, 0x39, 0xB2, 0x81, 0x31, 0x71, 0x31, 0x91, 0x03, 0x31, 0x71, 0x02, 0x29, 0x51, 0x82, 0x31, 0x51, 0x29, 0x30, 0x29, 0x50, 0x01, 0x29, 0x30, 0x03, 0x29, 0x50, 0x06, 0x29, 0x30, 0x81, 0x21, 0x30, 0x21, 0x10, 0x01, 0x21, 0x30, 0x03, 0x21, 0x10, 0x0B, 0x21, 0x30, 0x81, 0x21, 0x2F, 0x21, 0x0F, 0x01, 0x21, 0x30, 0x80, 0x21, 0x10, 0x0B, 0x21, 0x30, 0x80, 0x21, 0x10, 0x19, 0x21, 0x30, 0x80, 0x21, 0x10, 0x01, 0x21, 0x30, 0x80, 0x19, 0x30, 0x19, 0x21, 0x30, 0x80, 0x19, 0x30, 0x0F, 0x21, 0x30, 0x80, 0x19, 0x30, 0x02, 0x21, 0x30, 0x83, 0x19, 0x30, 0x19, 0x10, 0x21, 0x30, 0x19, 0x30, 0x04, 0x21, 0x30, 0x83, 0x21, 0x10, 0x21, 0x30, 0x21, 0x10, 0x21, 0x30, 0x01, 0x21, 0x10, 0x80, 0x21, 0x30, 0x03, 0x19, 0x0F, 0x80, 0x19, 0x30, 0x01, 0x19, 0x0F, 0x01, 0x19, 0x10, 0x80, 0x19, 0x30, 0x03, 0x19, 0x10, 0x80, 0x19, 0x0F, 0x01, 0x19, 0x2F, 0x04, 0x19, 0x0F, 0x86, 0x19, 0x30, 0x19, 0x10, 0x19, 0x0F, 0x19, 0x30, 0x19, 0x2F, 0x19, 0x0F, 0x19, 0x30, 0x04, 0x19, 0x0F, 0x82, 0x21, 0x0F, 0x19, 0x0F, 0x21, 0x10, 0x01, 0x21, 0x0F, 0x81, 0x21, 0x10, 0x19, 0x0F, 0x01, 0x19, 0x10, 0x82, 0x19, 0x0F, 0x18, 0xEF, 0x19, 0x10, 0x04, 0x19, 0x0F, 0x80, 0x19, 0x2F, 0x05, 0x19, 0x0F, 0x80, 0x19, 0x2F, 0x01, 0x19, 0x0F, 0x80, 0x19, 0x2F, 0x10, 0x19, 0x0F, 0x80, 0x19, 0x2F, 0x03, 0x19, 0x0F, 0x04, 0x19, 0x0E, 0x03, 0x18, 0xEE, 0x81, 0x18, 0xEF, + 0x18, 0xEE, 0x01, 0x19, 0x0F, 0x01, 0x18, 0xEF, 0x01, 0x18, 0xEE, 0x81, 0x18, 0xCE, 0x18, 0xEF, 0x01, 0x18, 0xEE, 0x80, 0x19, 0x0E, 0x01, 0x18, 0xEE, 0x01, 0x19, 0x0E, 0x01, 0x18, 0xEE, 0x02, 0x19, 0x0E, 0x80, 0x8A, 0x97, 0x02, 0x8A, 0x76, 0x81, 0x82, 0x56, 0x8A, 0x76, 0x01, 0x8A, 0x77, 0x82, 0x8A, 0x76, 0x8A, 0x97, 0x8A, 0x76, 0x01, 0x8A, 0x97, 0x81, 0x8A, 0x96, 0x8A, 0x97, 0x07, 0x8A, 0xB7, 0x80, 0x8A, 0x97, 0x01, 0x82, 0x96, 0x81, 0x82, 0x76, 0x82, 0x56, 0x02, 0x82, 0x76, 0x82, 0x82, 0x96, 0x82, 0x56, 0x82, 0x76, 0x01, 0x82, 0x77, 0x05, 0x82, 0x76, 0x01, 0x82, 0x77, 0x01, 0x8A, 0x77, 0x01, 0x82, 0x57, 0x03, 0x82, 0x77, 0x87, 0x82, 0x56, 0x82, 0x77, 0x82, 0x57, 0x8A, 0x77, 0x82, 0x77, 0x8A, 0x77, 0x82, 0x57, 0x8A, 0x57, 0x01, 0x8A, 0x77, 0x80, 0x8A, 0x56, 0x01, 0x8A, 0x77, 0x02, 0x8A, 0x76, 0x01, 0x82, 0x76, 0x80, 0x8A, 0x76, 0x02, 0x8A, 0x97, 0x82, 0x82, 0x77, 0x8A, 0x97, 0x82, 0x77, 0x05, 0x8A, 0x97, 0x02, 0x8A, 0xB7, 0x02, 0x92, 0xB8, 0x84, 0x8A, 0x97, 0x92, 0xB7, 0x92, 0xB8, 0x92, 0xD8, 0x92, 0xB7, 0x02, 0x8A, 0x97, 0x82, 0x92, 0xB7, 0x92, 0xD8, 0x92, 0xD7, 0x02, 0x8A, 0xB7, 0x01, 0x8A, 0x97, 0x84, 0x8A, 0xB7, 0x8A, 0x97, 0x8A, 0x77, 0x8A, 0x97, 0x8A, 0x96, 0x02, 0x8A, 0x97, 0x80, 0x92, 0x97, 0x01, 0x8A, 0x97, 0x80, 0x92, 0x97, 0x01, 0x92, 0xB7, 0x80, 0x8A, 0xB7, 0x02, 0x8A, 0x97, 0x02, 0x8A, 0xB7, 0x88, 0x8A, 0xB8, 0x8A, 0xB7, 0x92, 0xD8, 0x8A, 0xB7, 0x8A, 0x97, 0x8A, 0xB7, 0x8A, 0x97, 0x8A, 0xB7, 0x92, 0xB7, + 0x04, 0x8A, 0xB7, 0x01, 0x8A, 0xD8, 0x83, 0x92, 0xF8, 0x8A, 0xD8, 0x8A, 0xF8, 0x8B, 0x18, 0x01, 0x93, 0x39, 0x01, 0x93, 0x59, 0x81, 0x93, 0x79, 0x8B, 0x7A, 0x01, 0x93, 0xBA, 0x8E, 0x9B, 0xFB, 0x93, 0xFB, 0x8B, 0xDA, 0x83, 0x9A, 0x73, 0x38, 0x6A, 0xF7, 0x62, 0xD6, 0x52, 0x75, 0x4A, 0x55, 0x42, 0x13, 0x39, 0xF3, 0x31, 0xB2, 0x29, 0x91, 0x29, 0x71, 0x21, 0x71, 0x05, 0x21, 0x51, 0x82, 0x21, 0x31, 0x21, 0x51, 0x21, 0x71, 0x01, 0x21, 0x51, 0x82, 0x21, 0x31, 0x21, 0x51, 0x21, 0x31, 0x02, 0x21, 0x51, 0x04, 0x19, 0x51, 0x86, 0x19, 0x31, 0x21, 0x51, 0x19, 0x51, 0x19, 0x30, 0x19, 0x10, 0x19, 0x31, 0x19, 0x30, 0x03, 0x19, 0x31, 0x01, 0x19, 0x51, 0x05, 0x21, 0x51, 0x01, 0x19, 0x31, 0x81, 0x21, 0x51, 0x19, 0x31, 0x01, 0x21, 0x51, 0x04, 0x19, 0x51, 0x86, 0x19, 0x31, 0x19, 0x51, 0x21, 0x51, 0x19, 0x31, 0x21, 0x51, 0x19, 0x31, 0x21, 0x51, 0x02, 0x19, 0x31, 0x84, 0x21, 0x51, 0x21, 0x31, 0x19, 0x31, 0x21, 0x51, 0x19, 0x31, 0x06, 0x21, 0x51, 0x84, 0x19, 0x51, 0x19, 0x31, 0x19, 0x51, 0x19, 0x31, 0x21, 0x31, 0x01, 0x21, 0x51, 0x01, 0x21, 0x31, 0x03, 0x21, 0x51, 0x82, 0x21, 0x72, 0x21, 0x71, 0x21, 0x31, 0x10, 0x21, 0x51, 0x01, 0x21, 0x71, 0x02, 0x21, 0x51, 0x80, 0x19, 0x31, 0x02, 0x21, 0x31, 0x81, 0x19, 0x31, 0x21, 0x51, 0x03, 0x19, 0x31, 0x06, 0x21, 0x51, 0x80, 0x21, 0x31, 0x02, 0x21, 0x51, 0x01, 0x21, 0x52, 0x81, 0x21, 0x51, 0x21, 0x52, 0x02, 0x21, 0x51, 0x82, 0x21, 0x52, 0x21, 0x51, 0x21, 0x52, 0x07, 0x21, 0x51, 0x81, 0x29, 0x71, 0x21, + 0x51, 0x01, 0x21, 0x31, 0x01, 0x21, 0x51, 0x01, 0x21, 0x71, 0x80, 0x21, 0x51, 0x01, 0x21, 0x71, 0x08, 0x21, 0x51, 0x01, 0x21, 0x71, 0x01, 0x29, 0x72, 0x0E, 0x21, 0x51, 0x01, 0x29, 0x71, 0x82, 0x29, 0x72, 0x29, 0x51, 0x29, 0x72, 0x01, 0x29, 0x71, 0x81, 0x29, 0x72, 0x29, 0x71, 0x05, 0x29, 0x72, 0x81, 0x29, 0x71, 0x29, 0x72, 0x03, 0x29, 0x71, 0x81, 0x21, 0x51, 0x29, 0x71, 0x01, 0x21, 0x51, 0x83, 0x29, 0x71, 0x21, 0x71, 0x29, 0x71, 0x21, 0x71, 0x01, 0x21, 0x51, 0x01, 0x29, 0x71, 0x01, 0x21, 0x51, 0x01, 0x29, 0x92, 0x81, 0x21, 0x71, 0x21, 0x51, 0x04, 0x29, 0x71, 0x01, 0x29, 0x72, 0x80, 0x29, 0x92, 0x01, 0x29, 0x72, 0x08, 0x29, 0x71, 0x81, 0x29, 0x51, 0x29, 0x72, 0x01, 0x29, 0x71, 0x80, 0x29, 0x72, 0x01, 0x29, 0x71, 0x81, 0x21, 0x51, 0x29, 0x72, 0x02, 0x29, 0x71, 0x01, 0x29, 0x72, 0x03, 0x29, 0x71, 0x80, 0x29, 0x72, 0x01, 0x29, 0x71, 0x81, 0x29, 0x72, 0x29, 0x71, 0x0B, 0x29, 0x72, 0x01, 0x31, 0x92, 0x04, 0x29, 0x71, 0x02, 0x29, 0x51, 0x01, 0x29, 0x92, 0x02, 0x29, 0x91, 0x82, 0x29, 0x92, 0x29, 0x72, 0x29, 0x92, 0x01, 0x29, 0x72, 0x01, 0x29, 0x51, 0x81, 0x31, 0x72, 0x29, 0x72, 0x03, 0x29, 0x92, 0x01, 0x29, 0x71, 0x08, 0x29, 0x72, 0x02, 0x29, 0x71, 0x85, 0x29, 0x72, 0x29, 0x71, 0x29, 0x92, 0x29, 0x72, 0x29, 0x71, 0x29, 0x72, 0x04, 0x29, 0x71, 0x81, 0x29, 0x72, 0x29, 0x71, 0x04, 0x29, 0x72, 0x02, 0x29, 0x92, 0x80, 0x31, 0x92, 0x01, 0x29, 0x72, 0x01, 0x31, 0x92, 0x01, 0x31, 0xB2, 0x80, 0x31, 0x92, 0x01, 0x31, 0xB2, 0x02, 0x31, + 0xB3, 0x80, 0x31, 0x92, 0x0A, 0x31, 0xB3, 0x01, 0x31, 0xD3, 0x0D, 0x31, 0xB3, 0x80, 0x31, 0x93, 0x02, 0x31, 0xB3, 0x01, 0x31, 0x93, 0x0D, 0x31, 0xB3, 0x81, 0x31, 0x93, 0x31, 0x92, 0x09, 0x31, 0xB3, 0x80, 0x31, 0xD3, 0x06, 0x31, 0xB3, 0x81, 0x29, 0x92, 0x31, 0x93, 0x02, 0x31, 0xB3, 0x01, 0x31, 0x93, 0x83, 0x29, 0x92, 0x31, 0xB3, 0x31, 0x93, 0x29, 0x93, 0x01, 0x31, 0x93, 0x01, 0x29, 0x92, 0x80, 0x31, 0x93, 0x01, 0x29, 0x92, 0x01, 0x29, 0x93, 0x02, 0x29, 0x92, 0x82, 0x29, 0x93, 0x29, 0x92, 0x29, 0x93, 0x01, 0x29, 0x73, 0x80, 0x29, 0x72, 0x05, 0x31, 0x93, 0x85, 0x31, 0xB3, 0x31, 0x93, 0x29, 0x93, 0x29, 0x72, 0x29, 0x73, 0x29, 0x93, 0x03, 0x31, 0x93, 0x81, 0x31, 0xB3, 0x31, 0x93, 0x01, 0x31, 0x92, 0x80, 0x29, 0x92, 0x01, 0x31, 0xB3, 0x83, 0x31, 0x92, 0x29, 0x72, 0x31, 0x93, 0x31, 0x72, 0x01, 0x31, 0xB3, 0x81, 0x31, 0x93, 0x29, 0x73, 0x01, 0x31, 0x93, 0x03, 0x31, 0x73, 0x82, 0x31, 0x93, 0x39, 0x93, 0x39, 0xB4, 0x02, 0x39, 0x94, 0x80, 0x39, 0xB3, 0x01, 0x39, 0xB4, 0x87, 0x39, 0xB3, 0x41, 0xD4, 0x39, 0xD4, 0x39, 0xB4, 0x41, 0xD4, 0x41, 0xB3, 0x39, 0xB3, 0x41, 0xD4, 0x03, 0x41, 0xB4, 0x80, 0x49, 0xB4, 0x02, 0x49, 0xF5, 0x02, 0x49, 0xD4, 0x02, 0x51, 0xF5, 0x93, 0x51, 0xD4, 0x59, 0xF5, 0x59, 0xD4, 0x61, 0xF5, 0x61, 0xD4, 0x61, 0xB4, 0x69, 0xB4, 0x71, 0xD5, 0x79, 0xD5, 0x92, 0x57, 0x91, 0xF5, 0x99, 0xF4, 0xA1, 0xF4, 0xAA, 0x15, 0xA1, 0xD3, 0xA9, 0xD3, 0xA1, 0xB3, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0x02, 0xA9, 0xD3, 0x98, 0xAA, + 0x14, 0xA2, 0x13, 0x9A, 0x54, 0x8A, 0x74, 0x6A, 0x73, 0x21, 0x6D, 0x7D, 0x9B, 0x87, 0x1F, 0x4E, 0x9C, 0x46, 0xFC, 0x3F, 0x1C, 0x3E, 0xFC, 0x3E, 0xBB, 0x56, 0x9B, 0x76, 0x5C, 0x3B, 0x52, 0x6A, 0xD2, 0x82, 0x32, 0x9A, 0x33, 0xA1, 0xF3, 0xA1, 0xD3, 0xA9, 0xD3, 0xA1, 0xB3, 0xA9, 0xF4, 0xA9, 0xD4, 0x01, 0xA1, 0xF4, 0x86, 0x9A, 0x14, 0x92, 0x55, 0x69, 0xB3, 0x59, 0x92, 0x49, 0x92, 0x41, 0x92, 0x41, 0xB2, 0x01, 0x41, 0xD3, 0x84, 0x39, 0xD3, 0x31, 0xB3, 0x39, 0xD3, 0x31, 0xB3, 0x31, 0xB2, 0x04, 0x29, 0x93, 0x80, 0x31, 0x72, 0x03, 0x29, 0x72, 0x80, 0x29, 0x71, 0x02, 0x29, 0x72, 0x03, 0x29, 0x52, 0x81, 0x21, 0x52, 0x29, 0x52, 0x01, 0x29, 0x72, 0x05, 0x21, 0x72, 0x80, 0x21, 0x51, 0x09, 0x21, 0x72, 0x80, 0x21, 0x71, 0x02, 0x21, 0x51, 0x81, 0x21, 0x72, 0x21, 0x51, 0x02, 0x21, 0x72, 0x82, 0x21, 0x51, 0x21, 0x52, 0x21, 0x72, 0x01, 0x21, 0x51, 0x80, 0x21, 0x52, 0x02, 0x21, 0x51, 0x03, 0x21, 0x72, 0x01, 0x21, 0x52, 0x01, 0x19, 0x51, 0x81, 0x21, 0x72, 0x21, 0x52, 0x01, 0x21, 0x72, 0x03, 0x21, 0x52, 0x81, 0x21, 0x72, 0x21, 0x51, 0x01, 0x21, 0x72, 0x04, 0x21, 0x52, 0x01, 0x21, 0x51, 0x82, 0x19, 0x31, 0x21, 0x72, 0x21, 0x52, 0x01, 0x21, 0x72, 0x01, 0x21, 0x52, 0x81, 0x21, 0x72, 0x21, 0x51, 0x04, 0x21, 0x72, 0x80, 0x21, 0x52, 0x05, 0x21, 0x72, 0x84, 0x21, 0x52, 0x19, 0x52, 0x21, 0x72, 0x19, 0x51, 0x21, 0x52, 0x02, 0x19, 0x51, 0x85, 0x21, 0x52, 0x19, 0x51, 0x21, 0x72, 0x19, 0x72, 0x21, 0x72, 0x19, 0x51, 0x01, 0x19, 0x52, 0x01, 0x19, 0x31, + 0x81, 0x19, 0x52, 0x19, 0x51, 0x01, 0x19, 0x31, 0x02, 0x19, 0x51, 0x80, 0x19, 0x31, 0x02, 0x19, 0x51, 0x80, 0x19, 0x31, 0x05, 0x19, 0x51, 0x03, 0x19, 0x31, 0x01, 0x19, 0x51, 0x06, 0x19, 0x31, 0x01, 0x19, 0x51, 0x87, 0x19, 0x30, 0x19, 0x51, 0x19, 0x31, 0x19, 0x51, 0x19, 0x31, 0x19, 0x51, 0x19, 0x31, 0x19, 0x51, 0x02, 0x19, 0x31, 0x80, 0x19, 0x30, 0x01, 0x19, 0x31, 0x81, 0x19, 0x30, 0x19, 0x31, 0x03, 0x19, 0x30, 0x82, 0x19, 0x10, 0x19, 0x30, 0x19, 0x10, 0x01, 0x19, 0x30, 0x82, 0x19, 0x31, 0x11, 0x10, 0x19, 0x30, 0x04, 0x19, 0x10, 0x03, 0x19, 0x11, 0x01, 0x19, 0x10, 0x83, 0x19, 0x11, 0x10, 0xF0, 0x19, 0x31, 0x19, 0x10, 0x03, 0x11, 0x10, 0x80, 0x19, 0x30, 0x04, 0x11, 0x10, 0x01, 0x11, 0x30, 0x02, 0x11, 0x10, 0x80, 0x10, 0xEF, 0x01, 0x11, 0x0F, 0x80, 0x11, 0x30, 0x03, 0x11, 0x10, 0x01, 0x10, 0xF0, 0x05, 0x11, 0x10, 0x02, 0x11, 0x0F, 0x01, 0x11, 0x10, 0x01, 0x11, 0x0F, 0x02, 0x10, 0xEF, 0x01, 0x11, 0x0F, 0x08, 0x10, 0xEF, 0x80, 0x11, 0x0F, 0x08, 0x10, 0xEF, 0x01, 0x10, 0xEE, 0x81, 0x11, 0x0E, 0x10, 0xEE, 0x01, 0x11, 0x0E, 0x81, 0x59, 0xB3, 0x51, 0x93, 0x02, 0x51, 0x72, 0x80, 0x51, 0x92, 0x05, 0x59, 0x93, 0x80, 0x51, 0x92, 0x02, 0x51, 0x72, 0x01, 0x49, 0x72, 0x03, 0x51, 0x72, 0x82, 0x51, 0x92, 0x51, 0x72, 0x51, 0x92, 0x01, 0x51, 0x72, 0x82, 0x51, 0x93, 0x59, 0x93, 0x51, 0xB3, 0x02, 0x59, 0xD3, 0x80, 0x59, 0xD4, 0x03, 0x59, 0xF4, 0x01, 0x59, 0xD4, 0x81, 0x59, 0xF4, 0x59, 0xD4, 0x02, 0x61, 0xF4, 0x02, 0x59, 0xD4, 0x81, 0x61, + 0xF4, 0x59, 0xF4, 0x01, 0x61, 0xF4, 0x80, 0x62, 0x15, 0x02, 0x61, 0xF5, 0x86, 0x61, 0xF4, 0x59, 0xD4, 0x61, 0xF5, 0x61, 0xD5, 0x61, 0xF5, 0x61, 0xF4, 0x61, 0xF5, 0x06, 0x61, 0xF4, 0x03, 0x62, 0x14, 0x82, 0x62, 0x15, 0x59, 0xF4, 0x62, 0x14, 0x01, 0x59, 0xF4, 0x07, 0x59, 0xD4, 0x81, 0x59, 0xB3, 0x59, 0xD4, 0x05, 0x59, 0xB3, 0x02, 0x59, 0xD4, 0x85, 0x61, 0xF4, 0x59, 0xF4, 0x62, 0x14, 0x59, 0xF4, 0x62, 0x35, 0x62, 0x14, 0x01, 0x62, 0x15, 0x8C, 0x6A, 0x35, 0x61, 0xF4, 0x6A, 0x35, 0x62, 0x14, 0x6A, 0x15, 0x62, 0x14, 0x6A, 0x15, 0x6A, 0x14, 0x6A, 0x15, 0x61, 0xF4, 0x6A, 0x14, 0x62, 0x14, 0x6A, 0x35, 0x01, 0x62, 0x14, 0x81, 0x62, 0x15, 0x62, 0x35, 0x03, 0x62, 0x15, 0x84, 0x59, 0xF4, 0x62, 0x15, 0x62, 0x14, 0x62, 0x15, 0x61, 0xF4, 0x03, 0x62, 0x15, 0x82, 0x62, 0x35, 0x62, 0x15, 0x62, 0x35, 0x05, 0x62, 0x15, 0x81, 0x5A, 0x14, 0x62, 0x15, 0x01, 0x59, 0xF4, 0x80, 0x51, 0xD4, 0x01, 0x51, 0xF4, 0x81, 0x49, 0xD3, 0x49, 0xF4, 0x01, 0x52, 0x14, 0x80, 0x52, 0x35, 0x02, 0x52, 0x55, 0x85, 0x52, 0x95, 0x42, 0x54, 0x42, 0x35, 0x39, 0xF4, 0x31, 0xF3, 0x29, 0xB2, 0x01, 0x21, 0x92, 0x03, 0x19, 0x72, 0x81, 0x19, 0x52, 0x19, 0x72, 0x01, 0x19, 0x73, 0x01, 0x21, 0x93, 0x80, 0x19, 0x93, 0x01, 0x19, 0x73, 0x80, 0x19, 0x93, 0x01, 0x19, 0x73, 0x80, 0x19, 0x72, 0x03, 0x19, 0x92, 0x07, 0x19, 0x72, 0x81, 0x19, 0x92, 0x19, 0x93, 0x03, 0x19, 0xB3, 0x04, 0x19, 0x93, 0x80, 0x19, 0x92, 0x03, 0x19, 0x72, 0x01, 0x19, 0x93, 0x81, 0x19, 0xB3, 0x19, 0x93, 0x01, + 0x19, 0x72, 0x81, 0x19, 0x93, 0x19, 0x92, 0x02, 0x19, 0x93, 0x81, 0x21, 0x93, 0x21, 0xB3, 0x01, 0x19, 0x93, 0x81, 0x21, 0xB3, 0x19, 0x93, 0x0F, 0x21, 0xB3, 0x85, 0x19, 0x93, 0x21, 0xB3, 0x19, 0x93, 0x21, 0x93, 0x21, 0xB3, 0x21, 0x93, 0x04, 0x21, 0xB3, 0x80, 0x21, 0x93, 0x01, 0x21, 0xB3, 0x84, 0x21, 0x93, 0x21, 0xB3, 0x21, 0x93, 0x21, 0xB3, 0x21, 0xD3, 0x03, 0x21, 0xB3, 0x84, 0x19, 0xB2, 0x19, 0xB3, 0x21, 0xB3, 0x19, 0x92, 0x19, 0xB3, 0x01, 0x21, 0xB3, 0x02, 0x21, 0xD3, 0x81, 0x19, 0xB3, 0x21, 0xB3, 0x02, 0x21, 0xD4, 0x01, 0x21, 0xB3, 0x02, 0x21, 0xD4, 0x80, 0x21, 0xB3, 0x01, 0x21, 0xD4, 0x01, 0x21, 0xD3, 0x03, 0x21, 0xD4, 0x81, 0x29, 0xD4, 0x21, 0xD4, 0x0F, 0x29, 0xD4, 0x06, 0x21, 0xB3, 0x80, 0x29, 0xD3, 0x01, 0x29, 0xD4, 0x82, 0x29, 0xF4, 0x29, 0xD3, 0x29, 0xF4, 0x03, 0x29, 0xD4, 0x82, 0x21, 0xB3, 0x29, 0xD3, 0x29, 0xF4, 0x01, 0x21, 0xB3, 0x05, 0x21, 0xD3, 0x81, 0x29, 0xD4, 0x29, 0xF4, 0x02, 0x29, 0xD4, 0x80, 0x29, 0xD3, 0x0A, 0x29, 0xF4, 0x01, 0x29, 0xD4, 0x01, 0x29, 0xF4, 0x80, 0x29, 0xD4, 0x0B, 0x29, 0xF4, 0x80, 0x32, 0x14, 0x04, 0x29, 0xF4, 0x82, 0x2A, 0x14, 0x29, 0xF4, 0x2A, 0x14, 0x05, 0x29, 0xF4, 0x84, 0x29, 0xD4, 0x32, 0x14, 0x29, 0xF4, 0x2A, 0x14, 0x29, 0xD4, 0x08, 0x29, 0xF4, 0x82, 0x2A, 0x14, 0x29, 0xF4, 0x2A, 0x14, 0x01, 0x29, 0xF4, 0x81, 0x2A, 0x14, 0x29, 0xF4, 0x02, 0x32, 0x14, 0x80, 0x31, 0xF4, 0x05, 0x32, 0x14, 0x80, 0x31, 0xF4, 0x04, 0x32, 0x14, 0x80, 0x32, 0x35, 0x06, 0x32, 0x14, 0x80, 0x32, 0x35, + 0x02, 0x32, 0x14, 0x80, 0x32, 0x15, 0x02, 0x32, 0x14, 0x01, 0x31, 0xF4, 0x84, 0x32, 0x14, 0x31, 0xF4, 0x32, 0x14, 0x31, 0xF4, 0x32, 0x14, 0x04, 0x31, 0xF4, 0x80, 0x32, 0x14, 0x01, 0x31, 0xF4, 0x80, 0x29, 0xF3, 0x02, 0x32, 0x14, 0x82, 0x29, 0xF4, 0x32, 0x14, 0x32, 0x34, 0x01, 0x32, 0x35, 0x80, 0x3A, 0x35, 0x01, 0x3A, 0x15, 0x83, 0x31, 0xF4, 0x3A, 0x15, 0x32, 0x14, 0x32, 0x34, 0x04, 0x32, 0x35, 0x02, 0x3A, 0x35, 0x81, 0x32, 0x15, 0x3A, 0x55, 0x02, 0x3A, 0x35, 0x82, 0x3A, 0x55, 0x3A, 0x35, 0x3A, 0x55, 0x01, 0x3A, 0x35, 0x80, 0x32, 0x35, 0x02, 0x3A, 0x55, 0x80, 0x32, 0x35, 0x02, 0x3A, 0x35, 0x82, 0x32, 0x34, 0x3A, 0x35, 0x32, 0x35, 0x01, 0x3A, 0x35, 0x01, 0x32, 0x14, 0x01, 0x32, 0x15, 0x01, 0x32, 0x35, 0x87, 0x32, 0x15, 0x31, 0xF4, 0x32, 0x14, 0x32, 0x15, 0x31, 0xF4, 0x31, 0xD4, 0x31, 0xF4, 0x31, 0xD3, 0x01, 0x31, 0xF4, 0x81, 0x29, 0xD3, 0x29, 0xF4, 0x01, 0x32, 0x14, 0x07, 0x31, 0xF4, 0x81, 0x31, 0xD4, 0x31, 0xF4, 0x04, 0x29, 0xF4, 0x04, 0x31, 0xF4, 0x81, 0x31, 0xD4, 0x31, 0xF4, 0x01, 0x29, 0xD4, 0x01, 0x31, 0xD4, 0x01, 0x31, 0xF4, 0x01, 0x31, 0xD4, 0x01, 0x31, 0xF4, 0x02, 0x29, 0xD4, 0x80, 0x31, 0xD4, 0x04, 0x31, 0xF4, 0x81, 0x29, 0xD4, 0x31, 0xF4, 0x03, 0x29, 0xF4, 0x82, 0x29, 0xD3, 0x29, 0xD4, 0x31, 0xF4, 0x01, 0x31, 0xD4, 0x83, 0x31, 0xF4, 0x29, 0xD3, 0x29, 0xF4, 0x31, 0xF4, 0x01, 0x29, 0xF4, 0x01, 0x29, 0xD3, 0x01, 0x29, 0xF4, 0x81, 0x31, 0xF4, 0x29, 0xB3, 0x01, 0x29, 0xD4, 0x83, 0x31, 0xF4, 0x29, 0xD4, 0x29, 0xD3, + 0x29, 0xB3, 0x01, 0x29, 0xD4, 0x82, 0x29, 0xF4, 0x29, 0xD4, 0x29, 0xD3, 0x01, 0x29, 0xD4, 0x80, 0x29, 0xF4, 0x01, 0x29, 0xD4, 0x01, 0x29, 0xF4, 0x01, 0x29, 0xD4, 0x80, 0x29, 0xF4, 0x0D, 0x29, 0xD4, 0x80, 0x29, 0xB4, 0x03, 0x29, 0xD4, 0x80, 0x29, 0xF4, 0x09, 0x29, 0xD4, 0x82, 0x29, 0xB4, 0x21, 0xB3, 0x29, 0xD4, 0x01, 0x29, 0xF4, 0x80, 0x29, 0xD4, 0x01, 0x29, 0xB3, 0x81, 0x29, 0xD4, 0x31, 0xF4, 0x04, 0x29, 0xD4, 0x80, 0x31, 0xD4, 0x01, 0x29, 0xB4, 0x01, 0x31, 0xD4, 0x80, 0x31, 0xB4, 0x01, 0x31, 0xD5, 0x03, 0x31, 0xD4, 0x81, 0x31, 0xB4, 0x31, 0xD4, 0x01, 0x31, 0xF4, 0x81, 0x39, 0xF4, 0x31, 0xD4, 0x02, 0x39, 0xD4, 0x80, 0x39, 0xF4, 0x01, 0x39, 0xD4, 0x03, 0x41, 0xF5, 0x80, 0x4A, 0x16, 0x02, 0x42, 0x15, 0x82, 0x4A, 0x36, 0x4A, 0x15, 0x52, 0x35, 0x02, 0x52, 0x15, 0x01, 0x5A, 0x15, 0x87, 0x62, 0x36, 0x62, 0x16, 0x61, 0xF5, 0x71, 0xF6, 0x79, 0xF5, 0x81, 0xF5, 0x92, 0x35, 0x99, 0xF4, 0x01, 0xA2, 0x14, 0x81, 0xA9, 0xF4, 0xA1, 0xD3, 0x01, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0xA9, 0xA9, 0xD3, 0xA9, 0xB3, 0xA9, 0xF3, 0xA1, 0xF3, 0x9A, 0x13, 0x92, 0x33, 0x82, 0x73, 0x5A, 0x52, 0x32, 0x2F, 0x9E, 0xDF, 0x66, 0xBD, 0x4E, 0xBC, 0x46, 0xDC, 0x47, 0x1C, 0x46, 0xBB, 0x4E, 0x7B, 0x76, 0x9D, 0x43, 0xD3, 0x62, 0xD2, 0x82, 0x73, 0x92, 0x13, 0xA1, 0xF3, 0xA1, 0xD3, 0xA1, 0xB3, 0xA9, 0xF4, 0xA9, 0xD4, 0xA9, 0xF4, 0xAA, 0x15, 0xA2, 0x15, 0x9A, 0x14, 0x89, 0xF4, 0x7A, 0x14, 0x51, 0x72, 0x49, 0x92, 0x41, 0xB3, 0x39, 0xD3, 0x39, 0xD4, 0x31, 0xD4, 0x31, + 0xF4, 0x29, 0xD3, 0x31, 0xF4, 0x29, 0xF4, 0x01, 0x29, 0xD3, 0x03, 0x21, 0xB4, 0x01, 0x21, 0x93, 0x02, 0x21, 0xB3, 0x04, 0x21, 0x93, 0x80, 0x21, 0x72, 0x01, 0x21, 0x73, 0x83, 0x21, 0x93, 0x21, 0x73, 0x21, 0x93, 0x21, 0xB3, 0x01, 0x21, 0x93, 0x82, 0x19, 0x93, 0x21, 0x93, 0x19, 0x73, 0x07, 0x19, 0x93, 0x01, 0x19, 0x92, 0x80, 0x19, 0x93, 0x01, 0x19, 0x92, 0x01, 0x19, 0x72, 0x87, 0x19, 0x92, 0x19, 0x72, 0x19, 0x92, 0x19, 0x93, 0x19, 0x72, 0x19, 0x93, 0x19, 0x72, 0x19, 0x92, 0x08, 0x19, 0x72, 0x80, 0x19, 0x93, 0x01, 0x19, 0x73, 0x01, 0x19, 0x72, 0x80, 0x19, 0x92, 0x01, 0x19, 0x72, 0x81, 0x19, 0x93, 0x19, 0x72, 0x01, 0x19, 0x93, 0x05, 0x19, 0x72, 0x81, 0x19, 0x52, 0x19, 0x73, 0x01, 0x19, 0x52, 0x80, 0x19, 0x73, 0x04, 0x19, 0x72, 0x01, 0x19, 0x92, 0x04, 0x19, 0x72, 0x02, 0x11, 0x72, 0x80, 0x19, 0x72, 0x02, 0x11, 0x52, 0x03, 0x11, 0x72, 0x0A, 0x11, 0x52, 0x02, 0x11, 0x72, 0x04, 0x11, 0x52, 0x84, 0x11, 0x32, 0x11, 0x52, 0x11, 0x32, 0x11, 0x52, 0x11, 0x51, 0x01, 0x11, 0x52, 0x80, 0x11, 0x51, 0x04, 0x11, 0x31, 0x02, 0x11, 0x52, 0x81, 0x11, 0x31, 0x11, 0x32, 0x03, 0x11, 0x31, 0x01, 0x11, 0x52, 0x80, 0x11, 0x31, 0x01, 0x11, 0x32, 0x01, 0x11, 0x31, 0x82, 0x11, 0x52, 0x11, 0x51, 0x11, 0x52, 0x03, 0x11, 0x51, 0x81, 0x11, 0x31, 0x11, 0x32, 0x10, 0x11, 0x31, 0x82, 0x09, 0x31, 0x09, 0x11, 0x11, 0x31, 0x02, 0x09, 0x11, 0x83, 0x11, 0x31, 0x11, 0x11, 0x09, 0x11, 0x11, 0x31, 0x07, 0x11, 0x11, 0x01, 0x09, 0x11, 0x81, 0x11, 0x11, 0x09, 0x11, + 0x04, 0x09, 0x10, 0x80, 0x08, 0xF0, 0x06, 0x09, 0x10, 0x80, 0x08, 0xF0, 0x07, 0x09, 0x10, 0x82, 0x08, 0xF0, 0x09, 0x10, 0x08, 0xF0, 0x03, 0x09, 0x10, 0x03, 0x08, 0xF0, 0x02, 0x09, 0x10, 0x81, 0x08, 0xEF, 0x09, 0x10, 0x07, 0x08, 0xEF, 0x80, 0x08, 0xF0, 0x01, 0x08, 0xEF, 0x03, 0x08, 0xF0, 0x02, 0x08, 0xEF, 0x80, 0x08, 0xCF, 0x04, 0x08, 0xEF, 0x80, 0x08, 0xEE, 0x01, 0x08, 0xEF, 0x80, 0x09, 0x0F, 0x02, 0x00, 0x0C, 0x80, 0x08, 0x0C, 0x0D, 0x08, 0x0B, 0x80, 0x00, 0x0B, 0x05, 0x08, 0x0B, 0x80, 0x00, 0x0B, 0x04, 0x08, 0x0B, 0x80, 0x08, 0x0C, 0x01, 0x00, 0x0B, 0x80, 0x08, 0x0B, 0x06, 0x00, 0x0B, 0x80, 0x08, 0x0C, 0x02, 0x00, 0x0B, 0x81, 0x08, 0x0C, 0x00, 0x0B, 0x02, 0x08, 0x0B, 0x06, 0x00, 0x0B, 0x01, 0x00, 0x0C, 0x80, 0x08, 0x0C, 0x10, 0x00, 0x0B, 0x03, 0x00, 0x0C, 0x02, 0x08, 0x0C, 0x80, 0x00, 0x0B, 0x09, 0x08, 0x0C, 0x03, 0x00, 0x0C, 0x81, 0x00, 0x0B, 0x00, 0x0C, 0x09, 0x00, 0x0B, 0x82, 0x08, 0x0B, 0x00, 0x0B, 0x08, 0x0B, 0x08, 0x00, 0x0B, 0x03, 0x00, 0x0C, 0x01, 0x00, 0x0B, 0x02, 0x00, 0x0C, 0x03, 0x08, 0x0C, 0x04, 0x00, 0x0C, 0x83, 0x08, 0x0C, 0x08, 0x0D, 0x08, 0x2D, 0x10, 0x4D, 0x03, 0x08, 0x2D, 0x01, 0x10, 0x6E, 0x87, 0x08, 0x6D, 0x08, 0x8D, 0x08, 0x6D, 0x00, 0x4D, 0x08, 0x6D, 0x00, 0x6D, 0x08, 0xAE, 0x08, 0xCE, 0x05, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x02, 0x00, 0xCF, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x08, 0x01, + 0x10, 0x01, 0x01, 0x11, 0x81, 0x01, 0x31, 0x01, 0x11, 0x01, 0x01, 0x31, 0x01, 0x01, 0x10, 0x01, 0x01, 0x11, 0x01, 0x01, 0x31, 0x03, 0x01, 0x11, 0x01, 0x01, 0x31, 0x80, 0x01, 0x51, 0x01, 0x01, 0x31, 0x02, 0x01, 0x10, 0x80, 0x01, 0x31, 0x02, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x85, 0x01, 0x11, 0x01, 0x10, 0x01, 0x11, 0x01, 0x10, 0x01, 0x31, 0x01, 0x11, 0x01, 0x01, 0x10, 0x03, 0x00, 0xF0, 0x82, 0x01, 0x11, 0x01, 0x10, 0x00, 0xF0, 0x08, 0x01, 0x10, 0x83, 0x01, 0x31, 0x01, 0x10, 0x01, 0x31, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x81, 0x01, 0x31, 0x01, 0x11, 0x01, 0x01, 0x31, 0x01, 0x01, 0x10, 0x80, 0x01, 0x31, 0x01, 0x01, 0x10, 0x01, 0x01, 0x30, 0x02, 0x01, 0x31, 0x01, 0x01, 0x30, 0x81, 0x01, 0x31, 0x01, 0x30, 0x03, 0x01, 0x10, 0x03, 0x01, 0x31, 0x82, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x31, 0x02, 0x01, 0x10, 0x80, 0x01, 0x30, 0x04, 0x01, 0x10, 0x0C, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x06, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x01, 0x01, 0x31, 0x81, 0x01, 0x10, 0x01, 0x31, 0x01, 0x01, 0x10, 0x80, 0x01, 0x30, 0x02, 0x01, 0x10, 0x83, 0x01, 0x30, 0x01, 0x10, 0x01, 0x31, 0x01, 0x30, 0x01, 0x01, 0x10, 0x81, 0x01, 0x31, 0x01, 0x30, 0x01, 0x01, 0x10, 0x82, 0x00, 0xEF, 0x00, 0xF0, 0x01, 0x30, 0x02, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x31, 0x0A, 0x01, 0x10, 0x03, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x03, 0x00, 0xF0, 0x0A, 0x01, 0x10, 0x81, 0x00, 0xF0, 0x01, 0x10, 0x01, + 0x00, 0xF0, 0x01, 0x01, 0x10, 0x87, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x30, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x01, 0x30, 0x81, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x00, 0xEF, 0x03, 0x01, 0x10, 0x81, 0x01, 0x0F, 0x01, 0x10, 0x01, 0x00, 0xEF, 0x01, 0x01, 0x10, 0x80, 0x00, 0xF0, 0x07, 0x00, 0xEF, 0x80, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x01, 0x00, 0xEF, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xF0, 0x03, 0x01, 0x10, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x03, 0x01, 0x10, 0x01, 0x00, 0xEF, 0x02, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x01, 0x09, 0x30, 0x01, 0x01, 0x10, 0x01, 0x00, 0xEF, 0x01, 0x01, 0x10, 0x03, 0x00, 0xEF, 0x81, 0x01, 0x10, 0x00, 0xF0, 0x05, 0x00, 0xEF, 0x82, 0x00, 0xCF, 0x00, 0xEF, 0x01, 0x10, 0x04, 0x00, 0xEF, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xEF, 0x01, 0x01, 0x10, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xEF, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xEF, 0x82, 0x01, 0x30, 0x01, 0x0F, 0x01, 0x10, 0x03, 0x01, 0x30, 0x8A, 0x01, 0x31, 0x01, 0x10, 0x01, 0x31, 0x09, 0x71, 0x09, 0x31, 0x09, 0x10, 0x09, 0x31, 0x09, 0x10, 0x01, 0x10, 0x09, 0x30, 0x09, 0x51, 0x01, 0x01, 0x10, 0x84, 0x01, 0x31, 0x09, 0x31, 0x01, 0x31, 0x09, 0x31, 0x09, 0x51, 0x08, 0x09, 0x31, 0x06, 0x01, 0x31, 0x01, 0x09, 0x31, 0x80, 0x01, 0x31, 0x03, 0x09, 0x31, 0x82, 0x09, 0x51, 0x09, 0x31, 0x09, 0x51, 0x02, 0x09, 0x31, 0x80, 0x09, 0x51, 0x03, 0x09, 0x31, 0x06, 0x09, 0x51, 0x80, + 0x01, 0x31, 0x09, 0x09, 0x51, 0x86, 0x09, 0x31, 0x09, 0x51, 0x01, 0x51, 0x01, 0x30, 0x01, 0x31, 0x01, 0x10, 0x01, 0x31, 0x01, 0x09, 0x51, 0x81, 0x01, 0x30, 0x09, 0x31, 0x01, 0x09, 0x51, 0x80, 0x01, 0x10, 0x02, 0x09, 0x31, 0x81, 0x09, 0x51, 0x01, 0x51, 0x01, 0x01, 0x31, 0x03, 0x09, 0x51, 0x81, 0x09, 0x52, 0x01, 0x31, 0x02, 0x09, 0x51, 0x80, 0x01, 0x31, 0x01, 0x09, 0x31, 0x01, 0x09, 0x51, 0x80, 0x01, 0x31, 0x04, 0x09, 0x31, 0x01, 0x09, 0x51, 0x01, 0x09, 0x31, 0x03, 0x01, 0x31, 0x01, 0x09, 0x51, 0x01, 0x09, 0x31, 0x01, 0x09, 0x52, 0x80, 0x09, 0x32, 0x02, 0x09, 0x31, 0x01, 0x09, 0x52, 0x01, 0x09, 0x72, 0x83, 0x01, 0x31, 0x01, 0x51, 0x09, 0x51, 0x01, 0x31, 0x01, 0x09, 0x51, 0x82, 0x01, 0x10, 0x01, 0x11, 0x11, 0x72, 0x02, 0x09, 0x52, 0x05, 0x11, 0x72, 0x03, 0x11, 0x52, 0x81, 0x11, 0x72, 0x11, 0x52, 0x01, 0x11, 0x72, 0x80, 0x11, 0x52, 0x02, 0x11, 0x72, 0x01, 0x19, 0x92, 0x81, 0x19, 0xB3, 0x19, 0x93, 0x01, 0x21, 0x93, 0x01, 0x21, 0xB3, 0x80, 0x21, 0x93, 0x01, 0x21, 0xB3, 0x80, 0x29, 0xB4, 0x02, 0x29, 0xD4, 0x82, 0x31, 0xD4, 0x31, 0xF4, 0x31, 0xD4, 0x01, 0x39, 0xF4, 0x81, 0x42, 0x15, 0x41, 0xF5, 0x01, 0x49, 0xF5, 0x8F, 0x51, 0xF5, 0x59, 0xF5, 0x62, 0x15, 0x71, 0xF5, 0x79, 0xF4, 0x89, 0xF4, 0x92, 0x14, 0x99, 0xF4, 0xA1, 0xD3, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0xA9, 0xB3, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x91, 0xAA, 0x34, 0x9A, 0x34, 0x8A, 0x33, 0x7A, 0x73, 0x49, 0xF0, 0x53, 0x94, 0x9F, 0x7F, 0x66, 0xDD, + 0x4E, 0xDC, 0x46, 0xDB, 0x46, 0xBB, 0x56, 0x9B, 0x6E, 0x9C, 0x5C, 0xB7, 0x5A, 0xB2, 0x82, 0x93, 0x8A, 0x12, 0x99, 0xF3, 0x01, 0xAA, 0x14, 0x80, 0xA1, 0xB3, 0x01, 0xA9, 0xD4, 0x88, 0xAA, 0x14, 0xA2, 0x15, 0x9A, 0x35, 0x8A, 0x14, 0x82, 0x34, 0x51, 0x72, 0x41, 0x72, 0x39, 0x93, 0x31, 0x93, 0x01, 0x21, 0xB3, 0x02, 0x19, 0xB3, 0x02, 0x11, 0xB3, 0x80, 0x11, 0x93, 0x03, 0x11, 0x73, 0x01, 0x09, 0x72, 0x80, 0x09, 0x52, 0x02, 0x09, 0x51, 0x04, 0x09, 0x52, 0x81, 0x09, 0x32, 0x09, 0x31, 0x07, 0x01, 0x31, 0x80, 0x01, 0x51, 0x03, 0x01, 0x31, 0x02, 0x01, 0x11, 0x82, 0x01, 0x31, 0x01, 0x30, 0x01, 0x10, 0x02, 0x01, 0x30, 0x02, 0x01, 0x31, 0x80, 0x01, 0x11, 0x0E, 0x01, 0x31, 0x80, 0x01, 0x11, 0x0B, 0x01, 0x31, 0x82, 0x01, 0x51, 0x01, 0x31, 0x01, 0x11, 0x0B, 0x01, 0x31, 0x83, 0x01, 0x11, 0x01, 0x31, 0x01, 0x11, 0x01, 0x31, 0x02, 0x01, 0x11, 0x80, 0x01, 0x31, 0x09, 0x01, 0x11, 0x81, 0x01, 0x31, 0x01, 0x11, 0x01, 0x01, 0x31, 0x80, 0x01, 0x11, 0x08, 0x01, 0x31, 0x02, 0x01, 0x11, 0x02, 0x01, 0x31, 0x81, 0x01, 0x11, 0x01, 0x31, 0x01, 0x01, 0x11, 0x04, 0x01, 0x31, 0x0D, 0x01, 0x11, 0x80, 0x01, 0x31, 0x07, 0x01, 0x11, 0x81, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x04, 0x01, 0x11, 0x80, 0x01, 0x10, 0x01, 0x01, 0x11, 0x01, 0x01, 0x10, 0x82, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x05, 0x01, 0x10, 0x80, 0x01, 0x11, 0x02, 0x01, 0x10, 0x83, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x11, 0x00, 0xF0, 0x03, 0x01, 0x11, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x11, + 0x02, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x01, 0x01, 0x10, 0x04, 0x00, 0xF0, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x03, 0x01, 0x10, 0x01, 0x01, 0x11, 0x81, 0x01, 0x10, 0x00, 0xF0, 0x02, 0x01, 0x10, 0x0F, 0x00, 0xF0, 0x04, 0x00, 0xEF, 0x8B, 0x00, 0xF0, 0x00, 0xEF, 0x00, 0xF0, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xEF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x03, 0x00, 0xEF, 0x01, 0x01, 0x0F, 0x03, 0x00, 0xEF, 0x02, 0x00, 0xCE, 0x81, 0x00, 0xAE, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x06, 0x00, 0x8D, 0x03, 0x00, 0x8C, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x82, 0x00, 0x6D, 0x00, 0x8C, 0x00, 0x8D, 0x08, 0x00, 0xAD, 0x80, 0x00, 0xCD, 0x04, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x06, 0x00, 0xAD, 0x01, 0x00, 0xCE, 0x80, 0x00, 0xCD, 0x02, 0x00, 0xCE, 0x02, 0x00, 0xCD, 0x03, 0x00, 0xEE, 0x81, 0x00, 0xCE, 0x00, 0xEE, 0x07, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x0A, 0x00, 0xAD, 0x05, 0x00, 0xCE, 0x06, 0x00, 0xEE, 0x81, 0x00, 0xCD, 0x00, 0xED, 0x05, 0x00, 0xCD, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xCD, 0x80, 0x00, 0xEE, 0x02, 0x00, 0xCD, 0x81, 0x00, 0xEE, 0x00, 0xCE, 0x03, 0x00, 0xEE, 0x02, 0x00, 0xCE, 0x80, 0x00, 0xEE, 0x02, 0x00, 0xCE, 0x82, 0x00, 0xCD, 0x00, 0xAD, 0x00, 0xCD, 0x04, 0x00, 0xCE, 0x05, 0x00, 0xAE, 0x03, 0x00, 0xCE, 0x80, 0x00, 0xCD, 0x01, 0x00, 0xCE, 0x82, 0x00, 0xEE, 0x01, 0x0E, 0x01, 0x0F, 0x01, 0x01, 0x2F, 0x80, 0x01, 0x4F, 0x03, 0x01, 0x70, 0x81, 0x01, + 0x71, 0x01, 0x91, 0x01, 0x01, 0xB1, 0x81, 0x01, 0xB2, 0x01, 0xD2, 0x02, 0x01, 0xB2, 0x02, 0x01, 0xD2, 0x80, 0x01, 0xB3, 0x01, 0x01, 0xB2, 0x80, 0x01, 0xB3, 0x01, 0x01, 0xB2, 0x03, 0x01, 0xD2, 0x01, 0x01, 0xF2, 0x03, 0x01, 0xD2, 0x04, 0x01, 0xD3, 0x03, 0x01, 0xD2, 0x80, 0x01, 0xD3, 0x01, 0x01, 0xD2, 0x01, 0x01, 0xD3, 0x82, 0x01, 0xD2, 0x01, 0xF3, 0x01, 0xD3, 0x01, 0x01, 0xF3, 0x01, 0x01, 0xF2, 0x02, 0x01, 0xD2, 0x80, 0x01, 0xF2, 0x01, 0x01, 0xF3, 0x80, 0x01, 0xF2, 0x09, 0x01, 0xD2, 0x82, 0x01, 0xF2, 0x01, 0xD2, 0x01, 0xF2, 0x04, 0x01, 0xD2, 0x80, 0x01, 0xF2, 0x01, 0x01, 0xF3, 0x85, 0x01, 0xF2, 0x01, 0xD2, 0x01, 0xF3, 0x01, 0xF2, 0x01, 0xF3, 0x01, 0xF2, 0x01, 0x01, 0xF3, 0x01, 0x01, 0xF2, 0x01, 0x02, 0x13, 0x01, 0x01, 0xF2, 0x83, 0x01, 0xD2, 0x01, 0xF3, 0x02, 0x33, 0x02, 0x13, 0x01, 0x01, 0xF3, 0x02, 0x01, 0xF2, 0x81, 0x01, 0xF3, 0x01, 0xD2, 0x02, 0x01, 0xF2, 0x01, 0x02, 0x13, 0x80, 0x01, 0xF2, 0x03, 0x01, 0xD2, 0x81, 0x01, 0xF2, 0x02, 0x12, 0x02, 0x02, 0x13, 0x01, 0x01, 0xF3, 0x01, 0x01, 0xD2, 0x80, 0x01, 0xF3, 0x04, 0x01, 0xF2, 0x80, 0x01, 0xD2, 0x04, 0x01, 0xF2, 0x01, 0x01, 0xF3, 0x02, 0x01, 0xF2, 0x80, 0x01, 0xF3, 0x04, 0x01, 0xF2, 0x87, 0x02, 0x13, 0x01, 0xF2, 0x01, 0xF3, 0x02, 0x13, 0x01, 0xF3, 0x01, 0xF2, 0x02, 0x12, 0x01, 0xF2, 0x01, 0x02, 0x12, 0x87, 0x02, 0x13, 0x01, 0xF2, 0x02, 0x33, 0x0A, 0x54, 0x02, 0x33, 0x01, 0xD2, 0x01, 0xF3, 0x01, 0xF2, 0x01, 0x02, 0x12, 0x80, 0x02, 0x13, 0x01, 0x01, 0xF2, 0x84, 0x02, + 0x13, 0x0A, 0x33, 0x02, 0x13, 0x0A, 0x33, 0x01, 0xF2, 0x02, 0x02, 0x12, 0x80, 0x01, 0xF2, 0x01, 0x02, 0x12, 0x80, 0x02, 0x13, 0x01, 0x0A, 0x33, 0x83, 0x01, 0xF2, 0x02, 0x12, 0x01, 0xF2, 0x0A, 0x12, 0x01, 0x0A, 0x13, 0x80, 0x01, 0xF2, 0x02, 0x02, 0x12, 0x82, 0x01, 0xF2, 0x02, 0x12, 0x01, 0xF2, 0x01, 0x02, 0x12, 0x81, 0x0A, 0x13, 0x01, 0xF2, 0x01, 0x02, 0x12, 0x82, 0x0A, 0x13, 0x01, 0xF2, 0x0A, 0x13, 0x03, 0x02, 0x12, 0x80, 0x01, 0xF2, 0x02, 0x0A, 0x12, 0x80, 0x02, 0x12, 0x01, 0x0A, 0x12, 0x81, 0x0A, 0x32, 0x0A, 0x12, 0x02, 0x0A, 0x13, 0x80, 0x0A, 0x12, 0x03, 0x0A, 0x13, 0x80, 0x0A, 0x33, 0x01, 0x0A, 0x13, 0x80, 0x01, 0xF2, 0x01, 0x0A, 0x13, 0x02, 0x0A, 0x33, 0x01, 0x0A, 0x12, 0x01, 0x0A, 0x33, 0x82, 0x02, 0x12, 0x0A, 0x53, 0x0A, 0x33, 0x01, 0x0A, 0x53, 0x07, 0x0A, 0x33, 0x82, 0x0A, 0x53, 0x0A, 0x32, 0x0A, 0x33, 0x02, 0x0A, 0x32, 0x83, 0x0A, 0x33, 0x0A, 0x12, 0x0A, 0x33, 0x0A, 0x32, 0x03, 0x0A, 0x33, 0x85, 0x12, 0x33, 0x0A, 0x33, 0x12, 0x53, 0x0A, 0x32, 0x0A, 0x33, 0x0A, 0x12, 0x03, 0x12, 0x33, 0x89, 0x12, 0x53, 0x12, 0x33, 0x12, 0x53, 0x12, 0x33, 0x12, 0x53, 0x12, 0x33, 0x12, 0x53, 0x12, 0x33, 0x12, 0x53, 0x0A, 0x33, 0x01, 0x12, 0x33, 0x01, 0x0A, 0x12, 0x80, 0x12, 0x32, 0x02, 0x12, 0x33, 0x02, 0x12, 0x53, 0x02, 0x0A, 0x33, 0x89, 0x12, 0x53, 0x0A, 0x53, 0x12, 0x53, 0x0A, 0x33, 0x12, 0x53, 0x12, 0x33, 0x12, 0x53, 0x12, 0x33, 0x12, 0x53, 0x12, 0x12, 0x01, 0x12, 0x33, 0x83, 0x12, 0x53, 0x0A, 0x12, 0x12, 0x53, 0x12, 0x33, + 0x02, 0x12, 0x53, 0x82, 0x0A, 0x33, 0x12, 0x53, 0x12, 0x33, 0x03, 0x12, 0x53, 0x80, 0x12, 0x73, 0x06, 0x12, 0x53, 0x80, 0x12, 0x73, 0x02, 0x12, 0x53, 0x88, 0x12, 0x73, 0x12, 0x53, 0x12, 0x73, 0x12, 0x53, 0x12, 0x73, 0x12, 0x53, 0x12, 0x73, 0x0A, 0x53, 0x12, 0x73, 0x01, 0x0A, 0x53, 0x01, 0x0A, 0x33, 0x8E, 0x0A, 0x12, 0x0A, 0x33, 0x12, 0x53, 0x12, 0x33, 0x01, 0xB1, 0x0A, 0x12, 0x12, 0x33, 0x12, 0x53, 0x12, 0x74, 0x0A, 0x33, 0x02, 0x12, 0x12, 0x53, 0x12, 0x74, 0x0A, 0x33, 0x01, 0xD1, 0x01, 0x0A, 0x12, 0x85, 0x12, 0x13, 0x0A, 0x12, 0x0A, 0x13, 0x0A, 0x12, 0x0A, 0x33, 0x0A, 0x12, 0x02, 0x0A, 0x33, 0x85, 0x0A, 0x32, 0x0A, 0x53, 0x0A, 0x33, 0x0A, 0x53, 0x0A, 0x33, 0x12, 0x53, 0x05, 0x0A, 0x33, 0x01, 0x0A, 0x13, 0x80, 0x0A, 0x12, 0x02, 0x0A, 0x33, 0x80, 0x0A, 0x12, 0x02, 0x0A, 0x33, 0x80, 0x0A, 0x13, 0x02, 0x0A, 0x33, 0x80, 0x0A, 0x12, 0x05, 0x0A, 0x33, 0x81, 0x12, 0x33, 0x0A, 0x12, 0x01, 0x0A, 0x33, 0x81, 0x12, 0x33, 0x09, 0xF2, 0x02, 0x0A, 0x12, 0x83, 0x0A, 0x32, 0x0A, 0x33, 0x0A, 0x12, 0x0A, 0x33, 0x01, 0x0A, 0x12, 0x80, 0x0A, 0x13, 0x01, 0x12, 0x54, 0x88, 0x0A, 0x33, 0x0A, 0x12, 0x12, 0x53, 0x12, 0x33, 0x0A, 0x33, 0x09, 0xF2, 0x0A, 0x13, 0x0A, 0x33, 0x0A, 0x53, 0x01, 0x0A, 0x33, 0x81, 0x0A, 0x12, 0x0A, 0x13, 0x01, 0x0A, 0x33, 0x02, 0x0A, 0x13, 0x82, 0x0A, 0x33, 0x02, 0x12, 0x0A, 0x13, 0x02, 0x0A, 0x12, 0x82, 0x0A, 0x13, 0x01, 0xF2, 0x02, 0x12, 0x04, 0x01, 0xF2, 0x02, 0x0A, 0x13, 0x82, 0x01, 0xF2, 0x0A, 0x12, 0x02, 0x12, + 0x01, 0x0A, 0x13, 0x86, 0x0A, 0x33, 0x0A, 0x13, 0x0A, 0x33, 0x0A, 0x13, 0x0A, 0x33, 0x0A, 0x13, 0x0A, 0x33, 0x01, 0x0A, 0x13, 0x81, 0x09, 0xF3, 0x0A, 0x13, 0x01, 0x0A, 0x54, 0x01, 0x0A, 0x33, 0x80, 0x02, 0x12, 0x02, 0x0A, 0x33, 0x01, 0x01, 0xF2, 0x88, 0x01, 0xD2, 0x0A, 0x13, 0x12, 0x54, 0x0A, 0x33, 0x01, 0xD2, 0x0A, 0x13, 0x12, 0x34, 0x0A, 0x34, 0x09, 0xF3, 0x02, 0x0A, 0x13, 0x80, 0x09, 0xF2, 0x01, 0x09, 0xF3, 0x82, 0x0A, 0x13, 0x12, 0x13, 0x12, 0x33, 0x01, 0x12, 0x13, 0x80, 0x0A, 0x12, 0x01, 0x12, 0x13, 0x85, 0x12, 0x33, 0x12, 0x13, 0x12, 0x33, 0x12, 0x13, 0x1A, 0x33, 0x11, 0xF2, 0x02, 0x1A, 0x13, 0x80, 0x19, 0xF3, 0x01, 0x1A, 0x13, 0x02, 0x22, 0x34, 0x81, 0x1A, 0x13, 0x22, 0x33, 0x01, 0x22, 0x13, 0x81, 0x21, 0xF2, 0x2A, 0x13, 0x01, 0x29, 0xF3, 0x01, 0x29, 0xB2, 0x8B, 0x29, 0x71, 0x39, 0x92, 0x41, 0x71, 0x51, 0x91, 0x61, 0x71, 0x82, 0x34, 0x92, 0x14, 0x9A, 0x14, 0xA1, 0xF4, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0x02, 0xA9, 0xD3, 0xA6, 0xA9, 0xF3, 0xB2, 0x14, 0xA9, 0xF3, 0xA2, 0x13, 0x92, 0x13, 0x82, 0x32, 0x6A, 0x53, 0x29, 0x8E, 0x7D, 0x9B, 0x87, 0x1F, 0x56, 0x7B, 0x4E, 0xBB, 0x4E, 0xDC, 0x4E, 0x9B, 0x66, 0x7C, 0x65, 0x39, 0x52, 0xF2, 0x72, 0x72, 0x8A, 0x12, 0x9A, 0x13, 0xA1, 0xF3, 0xA9, 0xF4, 0xA1, 0xB3, 0xA9, 0xB3, 0xA9, 0xF4, 0xAA, 0x14, 0xA1, 0xF4, 0xA2, 0x35, 0x8A, 0x14, 0x79, 0xF3, 0x41, 0x30, 0x20, 0xCE, 0x10, 0xEF, 0x11, 0x50, 0x09, 0x71, 0x09, 0xB1, 0x01, 0x91, 0x01, 0xB1, 0x01, 0x91, 0x01, 0x01, 0xB1, 0x80, + 0x01, 0xD2, 0x06, 0x01, 0xB2, 0x01, 0x01, 0xB1, 0x01, 0x01, 0xB2, 0x03, 0x01, 0xD2, 0x03, 0x01, 0xB2, 0x84, 0x01, 0x92, 0x01, 0xB2, 0x01, 0xD2, 0x01, 0xF2, 0x01, 0xF3, 0x02, 0x01, 0xD2, 0x81, 0x01, 0xF3, 0x01, 0xD3, 0x02, 0x01, 0xD2, 0x80, 0x01, 0xB2, 0x01, 0x01, 0xD2, 0x01, 0x01, 0xF2, 0x10, 0x01, 0xD2, 0x01, 0x01, 0xF3, 0x03, 0x01, 0xF2, 0x02, 0x01, 0xD2, 0x83, 0x01, 0xF2, 0x01, 0xD2, 0x01, 0xD3, 0x01, 0xD2, 0x02, 0x01, 0xD3, 0x04, 0x01, 0xD2, 0x01, 0x01, 0xB2, 0x83, 0x01, 0xD2, 0x01, 0xD3, 0x01, 0xF3, 0x01, 0xD3, 0x03, 0x01, 0xB2, 0x80, 0x01, 0xD3, 0x06, 0x01, 0xD2, 0x80, 0x01, 0xD3, 0x04, 0x01, 0xD2, 0x01, 0x01, 0xD3, 0x82, 0x01, 0xB3, 0x01, 0xB2, 0x01, 0xB3, 0x01, 0x01, 0xD3, 0x01, 0x01, 0xD2, 0x01, 0x01, 0xD3, 0x02, 0x01, 0xB2, 0x80, 0x01, 0xD2, 0x01, 0x01, 0xB2, 0x01, 0x01, 0xD2, 0x04, 0x01, 0xB2, 0x02, 0x01, 0xD3, 0x83, 0x01, 0xB2, 0x01, 0xD3, 0x01, 0xB2, 0x01, 0xD2, 0x03, 0x01, 0xB2, 0x04, 0x01, 0x92, 0x02, 0x01, 0xB2, 0x02, 0x01, 0x92, 0x01, 0x01, 0x91, 0x81, 0x01, 0x92, 0x01, 0x72, 0x01, 0x01, 0x92, 0x04, 0x01, 0xB2, 0x80, 0x01, 0x92, 0x01, 0x01, 0x91, 0x01, 0x01, 0x92, 0x05, 0x01, 0xB2, 0x80, 0x01, 0x92, 0x01, 0x01, 0xB2, 0x80, 0x01, 0x92, 0x01, 0x01, 0x71, 0x81, 0x01, 0x91, 0x01, 0x71, 0x01, 0x01, 0x91, 0x03, 0x01, 0x92, 0x02, 0x01, 0x91, 0x02, 0x01, 0x71, 0x82, 0x01, 0x92, 0x01, 0x71, 0x01, 0x72, 0x0C, 0x01, 0x71, 0x80, 0x01, 0x51, 0x01, 0x01, 0x71, 0x81, 0x01, 0x51, 0x01, 0x71, 0x02, 0x01, 0x51, 0x02, + 0x01, 0x71, 0x01, 0x01, 0x91, 0x02, 0x01, 0x71, 0x80, 0x01, 0x91, 0x02, 0x01, 0x71, 0x80, 0x01, 0x91, 0x03, 0x01, 0x71, 0x80, 0x01, 0x51, 0x02, 0x01, 0x71, 0x85, 0x01, 0x51, 0x01, 0x91, 0x01, 0x71, 0x01, 0x91, 0x01, 0x71, 0x01, 0x91, 0x04, 0x01, 0x71, 0x80, 0x01, 0x51, 0x01, 0x01, 0x50, 0x02, 0x01, 0x51, 0x82, 0x01, 0x71, 0x01, 0x51, 0x01, 0x71, 0x01, 0x01, 0x51, 0x02, 0x01, 0x70, 0x01, 0x01, 0x71, 0x82, 0x01, 0x91, 0x01, 0x70, 0x01, 0x90, 0x01, 0x01, 0x70, 0x88, 0x01, 0x50, 0x01, 0x70, 0x4C, 0xDD, 0x55, 0x1E, 0x4C, 0xDD, 0x4C, 0xDE, 0x54, 0xFE, 0x55, 0x1E, 0x54, 0xFE, 0x01, 0x55, 0x1E, 0x81, 0x54, 0xFE, 0x55, 0x1E, 0x01, 0x5D, 0x1E, 0x83, 0x5D, 0x3E, 0x5D, 0x1E, 0x55, 0x1E, 0x54, 0xFD, 0x01, 0x54, 0xDD, 0x80, 0x4C, 0xDC, 0x01, 0x4C, 0xBC, 0x84, 0x4C, 0xDC, 0x4C, 0xBC, 0x4C, 0xDC, 0x4C, 0xBC, 0x54, 0xFD, 0x01, 0x54, 0xDD, 0x80, 0x54, 0xFD, 0x01, 0x54, 0xDD, 0x82, 0x54, 0xDC, 0x4C, 0xBC, 0x4C, 0x9C, 0x01, 0x4C, 0xBC, 0x85, 0x4C, 0xDD, 0x54, 0xFD, 0x54, 0xDD, 0x4C, 0xFD, 0x54, 0xFD, 0x54, 0xDD, 0x01, 0x4C, 0xDD, 0x01, 0x54, 0xFD, 0x82, 0x54, 0xDD, 0x54, 0xFD, 0x5C, 0xFD, 0x01, 0x54, 0xFD, 0x81, 0x54, 0xDD, 0x54, 0xFD, 0x01, 0x54, 0xDD, 0x03, 0x54, 0xFD, 0x01, 0x55, 0x1D, 0x84, 0x54, 0xFD, 0x5D, 0x3E, 0x55, 0x1E, 0x5D, 0x1E, 0x55, 0x1D, 0x01, 0x54, 0xFD, 0x82, 0x5D, 0x1E, 0x55, 0x1E, 0x5D, 0x1E, 0x02, 0x55, 0x1E, 0x80, 0x5D, 0x3E, 0x02, 0x55, 0x1E, 0x80, 0x54, 0xFD, 0x01, 0x55, 0x1E, 0x02, 0x54, 0xFD, 0x80, 0x54, 0xDD, + 0x01, 0x54, 0xFD, 0x01, 0x5D, 0x1D, 0x02, 0x5D, 0x3E, 0x80, 0x55, 0x1E, 0x01, 0x5D, 0x3E, 0x03, 0x55, 0x1D, 0x83, 0x55, 0x3E, 0x5D, 0x3E, 0x5D, 0x5F, 0x5D, 0x3E, 0x02, 0x5D, 0x5E, 0x80, 0x65, 0x7E, 0x06, 0x5D, 0x5E, 0x81, 0x65, 0x5E, 0x5D, 0x5E, 0x01, 0x65, 0x5E, 0x80, 0x65, 0x7E, 0x06, 0x65, 0x5E, 0x01, 0x5D, 0x5E, 0x8C, 0x65, 0x5E, 0x5D, 0x5E, 0x5D, 0x3E, 0x5D, 0x1E, 0x5D, 0x3E, 0x5D, 0x1E, 0x65, 0x5E, 0x5D, 0x3E, 0x65, 0x5E, 0x65, 0x7E, 0x65, 0x7F, 0x65, 0x7E, 0x65, 0x7F, 0x01, 0x5D, 0x5E, 0x01, 0x5D, 0x3E, 0x86, 0x65, 0x5E, 0x5D, 0x5E, 0x65, 0x7E, 0x5D, 0x7E, 0x5D, 0x3D, 0x55, 0x1D, 0x55, 0x3D, 0x02, 0x5D, 0x5E, 0x86, 0x5D, 0x3D, 0x55, 0x1D, 0x54, 0xFD, 0x4C, 0xFD, 0x55, 0x3D, 0x55, 0x5E, 0x55, 0x7E, 0x01, 0x55, 0x9F, 0x01, 0x5D, 0xBF, 0x02, 0x55, 0xBF, 0x83, 0x55, 0x9F, 0x55, 0xBF, 0x55, 0x9F, 0x55, 0xBF, 0x02, 0x55, 0x9F, 0x80, 0x55, 0xBF, 0x02, 0x55, 0x9F, 0x81, 0x55, 0xBF, 0x55, 0x9F, 0x05, 0x55, 0xBF, 0x02, 0x55, 0xDF, 0x01, 0x55, 0xBF, 0x81, 0x55, 0x9F, 0x55, 0xBF, 0x02, 0x55, 0x9F, 0x0A, 0x55, 0xBF, 0x80, 0x4D, 0x9F, 0x01, 0x55, 0xBF, 0x07, 0x55, 0xDF, 0x01, 0x55, 0xBF, 0x80, 0x55, 0xDF, 0x01, 0x5D, 0xFF, 0x82, 0x55, 0xBF, 0x5D, 0xDF, 0x55, 0xDF, 0x03, 0x5D, 0xDF, 0x82, 0x5D, 0xFF, 0x5D, 0xDF, 0x5D, 0xFF, 0x0C, 0x5D, 0xDF, 0x81, 0x5D, 0xFF, 0x5D, 0xDF, 0x08, 0x5D, 0xFF, 0x83, 0x55, 0xDF, 0x5D, 0xFF, 0x55, 0xDF, 0x5D, 0xDF, 0x01, 0x5D, 0xFF, 0x81, 0x5D, 0xDF, 0x65, 0xFF, 0x03, 0x5D, 0xDF, 0x85, 0x5D, 0xFF, + 0x66, 0x1F, 0x5D, 0xBF, 0x55, 0xBF, 0x5D, 0xFF, 0x66, 0x1F, 0x01, 0x66, 0x3F, 0x01, 0x5D, 0xFF, 0x01, 0x5D, 0xDF, 0x04, 0x5D, 0xFF, 0x02, 0x66, 0x1F, 0x80, 0x65, 0xFF, 0x01, 0x66, 0x1F, 0x80, 0x66, 0x3F, 0x02, 0x66, 0x1F, 0x80, 0x66, 0x3F, 0x04, 0x66, 0x1F, 0x80, 0x66, 0x3F, 0x04, 0x66, 0x1F, 0x87, 0x66, 0x3F, 0x66, 0x1F, 0x66, 0x3F, 0x66, 0x1F, 0x66, 0x3F, 0x66, 0x1F, 0x66, 0x3F, 0x66, 0x1F, 0x01, 0x66, 0x3F, 0x80, 0x6E, 0x3F, 0x01, 0x66, 0x3F, 0x80, 0x5D, 0xFF, 0x01, 0x65, 0xFF, 0x80, 0x66, 0x1F, 0x01, 0x66, 0x3F, 0x02, 0x66, 0x1F, 0x80, 0x65, 0xFF, 0x01, 0x66, 0x1F, 0x01, 0x66, 0x3F, 0x80, 0x6E, 0x3F, 0x02, 0x6E, 0x5F, 0x80, 0x66, 0x5F, 0x02, 0x66, 0x1F, 0x81, 0x6E, 0x3F, 0x6E, 0x5F, 0x01, 0x6E, 0x3F, 0x02, 0x6E, 0x1F, 0x03, 0x6E, 0x3F, 0x80, 0x6E, 0x5F, 0x02, 0x6E, 0x3F, 0x80, 0x6E, 0x5F, 0x01, 0x6E, 0x3F, 0x01, 0x6E, 0x5F, 0x80, 0x6E, 0x3F, 0x02, 0x6E, 0x5F, 0x80, 0x6E, 0x3F, 0x01, 0x6E, 0x5F, 0x06, 0x76, 0x5F, 0x80, 0x6E, 0x5F, 0x02, 0x76, 0x5F, 0x81, 0x6E, 0x3F, 0x76, 0x5F, 0x01, 0x76, 0x3F, 0x02, 0x6E, 0x3F, 0x80, 0x6E, 0x5F, 0x03, 0x6E, 0x3F, 0x01, 0x76, 0x5F, 0x03, 0x6E, 0x3F, 0x80, 0x6E, 0x5F, 0x06, 0x76, 0x5F, 0x01, 0x76, 0x3F, 0x06, 0x76, 0x5F, 0x0D, 0x76, 0x7F, 0x80, 0x7E, 0x9F, 0x05, 0x76, 0x7F, 0x80, 0x76, 0x5F, 0x02, 0x76, 0x7F, 0x83, 0x76, 0x5F, 0x76, 0x7F, 0x76, 0x5F, 0x76, 0x7F, 0x02, 0x76, 0x5F, 0x82, 0x7E, 0x7F, 0x76, 0x5F, 0x76, 0x7F, 0x01, 0x76, 0x5F, 0x01, 0x6E, 0x3F, 0x89, 0x76, 0x3F, 0x76, + 0x5F, 0x6E, 0x3F, 0x76, 0x5F, 0x6E, 0x5F, 0x76, 0x5F, 0x76, 0x7F, 0x6E, 0x7F, 0x76, 0x7F, 0x76, 0x5F, 0x01, 0x76, 0x7F, 0x80, 0x7E, 0x9F, 0x02, 0x7E, 0x7F, 0x05, 0x7E, 0x9F, 0x01, 0x76, 0x7F, 0x1B, 0x7E, 0x9F, 0x80, 0x76, 0x7F, 0x01, 0x7E, 0x9F, 0x80, 0x7E, 0xBF, 0x01, 0x76, 0x7F, 0x01, 0x7E, 0x7F, 0x81, 0x76, 0x5F, 0x7E, 0x5F, 0x01, 0x7E, 0x7F, 0x01, 0x76, 0x5F, 0x81, 0x66, 0x1F, 0x6E, 0x3F, 0x01, 0x76, 0x7F, 0x02, 0x76, 0x5F, 0x81, 0x7E, 0x5F, 0x76, 0x5F, 0x01, 0x7E, 0x7F, 0x01, 0x76, 0x7F, 0x02, 0x7E, 0x9F, 0x80, 0x76, 0x7F, 0x03, 0x7E, 0x9F, 0x80, 0x76, 0x9F, 0x02, 0x7E, 0x9F, 0x84, 0x76, 0x9F, 0x76, 0x7F, 0x7E, 0x9F, 0x76, 0x7F, 0x76, 0x9F, 0x02, 0x76, 0x7F, 0x88, 0x76, 0x9F, 0x76, 0x7F, 0x76, 0x9F, 0x76, 0x7F, 0x76, 0x9F, 0x76, 0x7F, 0x7E, 0x9F, 0x76, 0x7F, 0x7E, 0x9F, 0x01, 0x7E, 0x7F, 0x83, 0x76, 0x7F, 0x76, 0x9F, 0x76, 0x7F, 0x76, 0x9F, 0x05, 0x76, 0x7F, 0x02, 0x76, 0x5F, 0x81, 0x76, 0x7F, 0x76, 0x5F, 0x03, 0x76, 0x7F, 0x80, 0x6E, 0x7F, 0x01, 0x66, 0x3F, 0x01, 0x6E, 0x5F, 0x83, 0x6E, 0x3F, 0x6E, 0x5F, 0x6E, 0x3F, 0x76, 0x5F, 0x03, 0x6E, 0x3F, 0x80, 0x6E, 0x5F, 0x02, 0x76, 0x5F, 0x80, 0x6E, 0x5F, 0x02, 0x76, 0x5F, 0x80, 0x6E, 0x5F, 0x01, 0x76, 0x5F, 0x80, 0x76, 0x7F, 0x01, 0x76, 0x5F, 0x82, 0x6E, 0x5F, 0x76, 0x5F, 0x6E, 0x5F, 0x02, 0x76, 0x5F, 0x02, 0x6E, 0x5F, 0x04, 0x76, 0x5F, 0x80, 0x6E, 0x3F, 0x01, 0x76, 0x5F, 0x80, 0x76, 0x7F, 0x02, 0x76, 0x5F, 0x80, 0x76, 0x7F, 0x03, 0x76, 0x5F, 0x02, 0x6E, 0x3F, 0x81, + 0x6E, 0x5F, 0x6E, 0x3F, 0x04, 0x6E, 0x5F, 0x04, 0x6E, 0x3F, 0x8B, 0x76, 0x3F, 0x6E, 0x1F, 0x6D, 0xFF, 0x6E, 0x1F, 0x6E, 0x3F, 0x6E, 0x1F, 0x76, 0x3F, 0x6E, 0x1F, 0x76, 0x3F, 0x6E, 0x3F, 0x76, 0x3F, 0x6E, 0x3F, 0x05, 0x76, 0x3F, 0x88, 0x7E, 0x5F, 0x76, 0x3F, 0x7E, 0x5F, 0x7E, 0x3F, 0x7E, 0x5F, 0x7E, 0x3F, 0x7E, 0x5F, 0x7E, 0x3F, 0x7E, 0x5F, 0x01, 0x86, 0x5F, 0x80, 0x86, 0x3F, 0x05, 0x86, 0x5F, 0x81, 0x8E, 0x7F, 0x8E, 0x5F, 0x01, 0x8E, 0x7F, 0x82, 0x96, 0x7F, 0x96, 0x5F, 0x96, 0x7F, 0x01, 0x9E, 0x5F, 0x8B, 0x9E, 0x3F, 0xA6, 0x3F, 0xAE, 0x3F, 0xB6, 0x3F, 0xB5, 0xFF, 0xA4, 0xBC, 0x59, 0xB1, 0x71, 0xF3, 0x92, 0x34, 0x9A, 0x14, 0xA2, 0x14, 0xA1, 0xF3, 0x01, 0xA9, 0xF3, 0x97, 0xB1, 0xF4, 0xA9, 0xD3, 0xA9, 0xB3, 0xA9, 0xD3, 0xA9, 0xF3, 0xA1, 0xF3, 0xA2, 0x33, 0x92, 0x53, 0x82, 0x53, 0x5A, 0x31, 0x21, 0xEE, 0x96, 0x9F, 0x6E, 0x9D, 0x56, 0x9C, 0x4E, 0x9B, 0x56, 0xBB, 0x66, 0x7B, 0x7E, 0x1C, 0x52, 0xF2, 0x6A, 0x72, 0x82, 0x12, 0x9A, 0x13, 0xA1, 0xF3, 0xA1, 0xD3, 0x01, 0xA9, 0xF4, 0x8B, 0xA9, 0xB3, 0xA9, 0xF4, 0xA1, 0xF4, 0x99, 0xF4, 0x92, 0x34, 0x69, 0xB1, 0xBD, 0x3E, 0xBE, 0x1F, 0x95, 0xDF, 0x85, 0xDF, 0x7D, 0xFF, 0x6D, 0xDF, 0x01, 0x6D, 0xFF, 0x01, 0x6E, 0x1F, 0x80, 0x66, 0x1F, 0x01, 0x6E, 0x1F, 0x80, 0x6D, 0xFF, 0x01, 0x65, 0xFF, 0x80, 0x65, 0xDF, 0x01, 0x65, 0xFF, 0x02, 0x66, 0x1F, 0x81, 0x5D, 0xDF, 0x55, 0xDF, 0x02, 0x55, 0xBF, 0x02, 0x5D, 0xDF, 0x80, 0x5D, 0xBF, 0x02, 0x5D, 0xDF, 0x01, 0x5D, 0xFF, 0x01, 0x55, 0xBF, 0x85, + 0x5D, 0xDF, 0x5D, 0xFF, 0x5D, 0xDF, 0x5D, 0xFF, 0x5D, 0xDF, 0x5D, 0xFF, 0x02, 0x5D, 0xDF, 0x80, 0x5D, 0xFF, 0x01, 0x55, 0xDF, 0x81, 0x55, 0xBF, 0x55, 0xDF, 0x01, 0x5D, 0xDF, 0x87, 0x55, 0xDF, 0x5D, 0xDF, 0x55, 0xBF, 0x5D, 0xDF, 0x55, 0xDF, 0x5D, 0xDF, 0x55, 0xBF, 0x5D, 0xDF, 0x02, 0x55, 0xDF, 0x84, 0x5D, 0xDF, 0x55, 0xDF, 0x5D, 0xDF, 0x55, 0xBF, 0x55, 0xDF, 0x01, 0x5D, 0xFF, 0x01, 0x55, 0xDF, 0x81, 0x55, 0xBF, 0x55, 0xDF, 0x01, 0x55, 0xBF, 0x80, 0x4D, 0xBF, 0x02, 0x55, 0xBF, 0x01, 0x4D, 0xBF, 0x02, 0x4D, 0x9F, 0x80, 0x4D, 0xBF, 0x0A, 0x4D, 0x9F, 0x80, 0x55, 0xBF, 0x01, 0x4D, 0xBF, 0x02, 0x4D, 0x9F, 0x81, 0x55, 0xBF, 0x4D, 0xBF, 0x04, 0x55, 0xBF, 0x02, 0x4D, 0x9F, 0x82, 0x55, 0x9F, 0x4D, 0x9F, 0x55, 0x9F, 0x03, 0x4D, 0x9F, 0x02, 0x4D, 0x7F, 0x80, 0x55, 0x7F, 0x05, 0x4D, 0x7F, 0x81, 0x4D, 0x5F, 0x4D, 0x7F, 0x01, 0x45, 0x5E, 0x01, 0x45, 0x7F, 0x01, 0x4D, 0x9F, 0x82, 0x45, 0x7F, 0x4D, 0x9F, 0x45, 0x7F, 0x01, 0x4D, 0x7F, 0x80, 0x4D, 0x9F, 0x01, 0x4D, 0x7F, 0x01, 0x4D, 0x5F, 0x82, 0x4D, 0x5E, 0x45, 0x3E, 0x45, 0x5E, 0x08, 0x45, 0x3E, 0x80, 0x45, 0x5E, 0x03, 0x45, 0x5F, 0x83, 0x4D, 0x7F, 0x45, 0x3E, 0x4D, 0x5F, 0x45, 0x5E, 0x03, 0x4D, 0x7F, 0x83, 0x45, 0x7F, 0x45, 0x5F, 0x45, 0x7F, 0x45, 0x5F, 0x03, 0x45, 0x5E, 0x80, 0x4D, 0x7F, 0x01, 0x4D, 0x5E, 0x81, 0x45, 0x5E, 0x45, 0x3E, 0x01, 0x45, 0x5E, 0x81, 0x45, 0x3E, 0x45, 0x5E, 0x07, 0x45, 0x3E, 0x01, 0x3D, 0x1D, 0x01, 0x3C, 0xFD, 0x02, 0x3D, 0x1D, 0x80, 0x3D, 0x3E, 0x01, 0x45, + 0x3E, 0x01, 0x3D, 0x3E, 0x81, 0x45, 0x3E, 0x45, 0x1E, 0x01, 0x45, 0x1D, 0x81, 0x45, 0x1E, 0x45, 0x1D, 0x01, 0x3C, 0xFD, 0x01, 0x3C, 0xDD, 0x01, 0x3C, 0xFD, 0x01, 0x3D, 0x1E, 0x01, 0x3D, 0x3E, 0x8A, 0x3D, 0x1D, 0x3D, 0x3E, 0x45, 0x3E, 0x45, 0x5E, 0x45, 0x3E, 0x45, 0x5E, 0x45, 0x3E, 0x45, 0x5E, 0x45, 0x3F, 0x45, 0x3E, 0x45, 0x1E, 0x01, 0x45, 0x3E, 0x03, 0x45, 0x1E, 0x04, 0x45, 0x3E, 0x84, 0x45, 0x1E, 0x45, 0x3E, 0x45, 0x1E, 0x45, 0x3E, 0x45, 0x1E, 0x04, 0x45, 0x3E, 0x85, 0x3D, 0x1E, 0x45, 0x3E, 0x3C, 0xFD, 0x3D, 0x1E, 0x3C, 0xFD, 0x3D, 0x1E, 0x02, 0x45, 0x3E, 0x01, 0x45, 0x5E, 0x80, 0x45, 0x7F, 0x02, 0x45, 0x5E, 0x80, 0x45, 0x3E, 0x01, 0x3D, 0x1D, 0x80, 0x3D, 0x5F, 0x05, 0x3D, 0x3F, 0x85, 0x3D, 0x5F, 0x45, 0x7F, 0x45, 0x5F, 0x45, 0x7F, 0x45, 0x5F, 0x4D, 0x9F, 0x01, 0x45, 0x7F, 0x03, 0x4D, 0x9F, 0x80, 0x4D, 0xBF, 0x01, 0x4D, 0xDF, 0x80, 0x55, 0xDF, 0x01, 0x55, 0xFF, 0x81, 0x4D, 0xBF, 0x4D, 0x9F, 0x02, 0x45, 0x7F, 0x01, 0x4D, 0xBF, 0x81, 0x55, 0xDF, 0x4D, 0xBF, 0x02, 0x4D, 0x9F, 0x01, 0x45, 0x7F, 0x02, 0x3D, 0x5E, 0x83, 0x3D, 0x5F, 0x45, 0x7F, 0x45, 0x9F, 0x4D, 0x9F, 0x01, 0x4D, 0xBF, 0x08, 0x55, 0xBF, 0x04, 0x4D, 0xBF, 0x01, 0x4D, 0x9F, 0x01, 0x4D, 0xBF, 0x80, 0x4D, 0x9F, 0x01, 0x45, 0x9F, 0x01, 0x45, 0x7F, 0x84, 0x4D, 0x9F, 0x4D, 0xBF, 0x4D, 0x9F, 0x4D, 0xBF, 0x45, 0x9F, 0x07, 0x4D, 0x9F, 0x01, 0x4D, 0xBF, 0x83, 0x55, 0xDF, 0x55, 0xFF, 0x56, 0x1F, 0x55, 0xFF, 0x02, 0x4D, 0xDF, 0x81, 0x4D, 0xBF, 0x4D, 0xDF, 0x01, 0x55, + 0xFF, 0x81, 0x4D, 0xDF, 0x4D, 0xBF, 0x01, 0x45, 0x9F, 0x01, 0x45, 0x7F, 0x01, 0x45, 0x9F, 0x80, 0x4D, 0xBF, 0x01, 0x4D, 0xDF, 0x81, 0x55, 0xDF, 0x55, 0xFF, 0x02, 0x55, 0xDF, 0x02, 0x55, 0xFF, 0x80, 0x55, 0xDF, 0x01, 0x55, 0xFF, 0x01, 0x55, 0xDF, 0x01, 0x55, 0xFF, 0x04, 0x55, 0xDF, 0x02, 0x55, 0xFF, 0x03, 0x55, 0xDF, 0x80, 0x5D, 0xFF, 0x02, 0x5E, 0x1F, 0x01, 0x55, 0xFF, 0x01, 0x56, 0x1F, 0x81, 0x55, 0xFF, 0x56, 0x1F, 0x06, 0x5E, 0x3F, 0x02, 0x56, 0x1F, 0x80, 0x55, 0xFF, 0x01, 0x56, 0x1F, 0x01, 0x55, 0xFF, 0x02, 0x4D, 0xFF, 0x81, 0x4E, 0x1F, 0x4D, 0xFF, 0x02, 0x4E, 0x1F, 0x01, 0x46, 0x1F, 0x04, 0x45, 0xFF, 0x0B, 0x4E, 0x1F, 0x01, 0x4E, 0x3F, 0x01, 0x4E, 0x1F, 0x80, 0x4E, 0x3F, 0x01, 0x46, 0x1F, 0x80, 0x45, 0xFF, 0x02, 0x45, 0xDF, 0x01, 0x45, 0xFF, 0x82, 0x46, 0x1F, 0x4E, 0x1F, 0x46, 0x1F, 0x03, 0x45, 0xFF, 0x80, 0x46, 0x1F, 0x04, 0x45, 0xFF, 0x02, 0x46, 0x1F, 0x81, 0x4E, 0x3F, 0x46, 0x3F, 0x06, 0x46, 0x1F, 0x01, 0x4E, 0x3F, 0x81, 0x4E, 0x1F, 0x46, 0x1F, 0x04, 0x4E, 0x1F, 0x80, 0x56, 0x1F, 0x04, 0x56, 0x3F, 0x80, 0x4E, 0x1F, 0x05, 0x56, 0x3F, 0x03, 0x4E, 0x3F, 0x03, 0x4E, 0x1F, 0x02, 0x4E, 0x3F, 0x80, 0x46, 0x1F, 0x01, 0x45, 0xFF, 0x04, 0x4E, 0x1F, 0x89, 0x56, 0x1F, 0x4E, 0x1F, 0x56, 0x3F, 0x4E, 0x1F, 0x4D, 0xFF, 0x4E, 0x1F, 0x4E, 0x3F, 0x56, 0x3F, 0x4E, 0x3F, 0x56, 0x3F, 0x02, 0x56, 0x5F, 0x80, 0x4E, 0x3F, 0x01, 0x46, 0x1F, 0x81, 0x45, 0xFF, 0x4E, 0x1F, 0x01, 0x4E, 0x3F, 0x80, 0x4D, 0xFF, 0x01, 0x4E, 0x1F, 0x03, 0x56, + 0x3F, 0x02, 0x56, 0x5F, 0x80, 0x56, 0x3F, 0x01, 0x56, 0x5F, 0x80, 0x56, 0x3F, 0x0F, 0x56, 0x5F, 0x82, 0x56, 0x7F, 0x56, 0x5F, 0x56, 0x3F, 0x02, 0x56, 0x5F, 0x82, 0x56, 0x3F, 0x4E, 0x1F, 0x4D, 0xFF, 0x01, 0x56, 0x1F, 0x02, 0x56, 0x3F, 0x02, 0x56, 0x5F, 0x02, 0x56, 0x3F, 0x01, 0x56, 0x5F, 0x80, 0x56, 0x3F, 0x01, 0x56, 0x5F, 0x80, 0x56, 0x7F, 0x01, 0x56, 0x5F, 0x80, 0x4E, 0x3F, 0x01, 0x56, 0x3F, 0x81, 0x5E, 0x5F, 0x5E, 0x7F, 0x06, 0x5E, 0x5F, 0x03, 0x5E, 0x7F, 0x03, 0x5E, 0x5F, 0x01, 0x5E, 0x7F, 0x01, 0x5E, 0x5F, 0x01, 0x5E, 0x7F, 0x80, 0x5E, 0x5F, 0x0B, 0x5E, 0x7F, 0x03, 0x5E, 0x5F, 0x80, 0x66, 0x7F, 0x02, 0x5E, 0x5F, 0x04, 0x5E, 0x7F, 0x06, 0x5E, 0x5F, 0x04, 0x5E, 0x7F, 0x80, 0x5E, 0x5F, 0x02, 0x66, 0x5F, 0x81, 0x5E, 0x5F, 0x66, 0x5F, 0x01, 0x5E, 0x5F, 0x07, 0x5E, 0x7F, 0x85, 0x5E, 0x5F, 0x5E, 0x7F, 0x66, 0x7F, 0x5E, 0x5F, 0x5E, 0x7F, 0x66, 0x7F, 0x01, 0x5E, 0x5F, 0x81, 0x5E, 0x7F, 0x66, 0x7F, 0x02, 0x5E, 0x5F, 0x81, 0x66, 0x7F, 0x5E, 0x5F, 0x03, 0x66, 0x5F, 0x80, 0x66, 0x7F, 0x01, 0x66, 0x5F, 0x01, 0x5E, 0x5F, 0x02, 0x66, 0x7F, 0x81, 0x66, 0x9F, 0x66, 0x7F, 0x03, 0x66, 0x9F, 0x80, 0x5E, 0x7F, 0x01, 0x5E, 0x5F, 0x82, 0x5E, 0x7F, 0x66, 0x7F, 0x66, 0x9F, 0x02, 0x5E, 0x9F, 0x03, 0x66, 0x9F, 0x01, 0x6E, 0x9F, 0x07, 0x66, 0x9F, 0x04, 0x66, 0x7F, 0x80, 0x66, 0x9F, 0x02, 0x66, 0x7F, 0x80, 0x66, 0x9F, 0x04, 0x66, 0x7F, 0x81, 0x66, 0x9F, 0x66, 0x7F, 0x02, 0x66, 0x9F, 0x81, 0x66, 0x7F, 0x66, 0x9F, 0x02, 0x66, 0x7F, 0x81, 0x66, + 0x9F, 0x66, 0x7F, 0x06, 0x66, 0x9F, 0x84, 0x66, 0xBF, 0x6E, 0xBF, 0x66, 0x9F, 0x6E, 0x9F, 0x6E, 0xBF, 0x02, 0x6E, 0x9F, 0x07, 0x66, 0x9F, 0x80, 0x6E, 0x9F, 0x02, 0x6E, 0xBF, 0x01, 0x6E, 0x9F, 0x0B, 0x66, 0x9F, 0x0A, 0x66, 0x7F, 0x85, 0x66, 0x9F, 0x66, 0x7F, 0x66, 0x9F, 0x66, 0x7F, 0x66, 0x9F, 0x66, 0x7F, 0x08, 0x66, 0x9F, 0x81, 0x66, 0x7F, 0x66, 0x9F, 0x02, 0x66, 0x7F, 0x81, 0x66, 0x9F, 0x66, 0x7F, 0x01, 0x66, 0x9F, 0x01, 0x66, 0x7F, 0x80, 0x66, 0x9F, 0x01, 0x66, 0xBF, 0x01, 0x5E, 0x9F, 0x02, 0x5E, 0x7F, 0x01, 0x66, 0x9F, 0x86, 0x66, 0x7F, 0x66, 0x9F, 0x66, 0x7F, 0x5E, 0x5F, 0x66, 0x7F, 0x5E, 0x7F, 0x66, 0x9F, 0x02, 0x5E, 0x7F, 0x03, 0x66, 0x7F, 0x81, 0x66, 0x9F, 0x66, 0x7F, 0x03, 0x66, 0x9F, 0x82, 0x66, 0x7F, 0x5E, 0x7F, 0x66, 0x7F, 0x0E, 0x5E, 0x7F, 0x02, 0x66, 0x7F, 0x01, 0x5E, 0x7F, 0x80, 0x66, 0x7F, 0x04, 0x5E, 0x5F, 0x82, 0x56, 0x3F, 0x5E, 0x5F, 0x5E, 0x7F, 0x01, 0x5E, 0x9F, 0x01, 0x56, 0x7F, 0x01, 0x5E, 0x7F, 0x80, 0x66, 0x9F, 0x03, 0x66, 0x7F, 0x02, 0x66, 0x5F, 0x01, 0x66, 0x7F, 0x80, 0x66, 0x5F, 0x04, 0x66, 0x7F, 0x0B, 0x6E, 0x7F, 0x09, 0x76, 0x7F, 0x81, 0x76, 0x9F, 0x76, 0x7F, 0x01, 0x7E, 0x9F, 0x01, 0x86, 0x9F, 0x01, 0x86, 0x7F, 0x01, 0x8E, 0x7F, 0x8D, 0x96, 0x5F, 0x9E, 0x7F, 0xA6, 0x7F, 0xAE, 0x7F, 0xBE, 0x7F, 0xBD, 0xBF, 0x62, 0x13, 0x7A, 0x13, 0x9A, 0x35, 0x99, 0xF3, 0xA2, 0x14, 0xA1, 0xF3, 0xA9, 0xD3, 0xB1, 0xF4, 0x01, 0xA9, 0xD3, 0x96, 0xA9, 0xB3, 0xA9, 0xD3, 0xA9, 0xF3, 0xA2, 0x13, 0x9A, 0x33, 0x92, + 0x74, 0x7A, 0x93, 0x39, 0xCF, 0x53, 0xB5, 0x96, 0xFF, 0x66, 0x7C, 0x56, 0x7B, 0x5E, 0x9B, 0x5E, 0x5B, 0x7E, 0x3C, 0x5B, 0x74, 0x6A, 0x92, 0x82, 0x52, 0x92, 0x12, 0x99, 0xD2, 0xA9, 0xF3, 0xA9, 0xF4, 0xA9, 0xD4, 0x01, 0xA9, 0xD3, 0x8A, 0xAA, 0x14, 0x99, 0xF3, 0x9A, 0x55, 0x71, 0xF2, 0xB5, 0x1D, 0xC6, 0xDF, 0xA6, 0x9F, 0x8E, 0x9F, 0x7E, 0x7F, 0x6E, 0x7F, 0x66, 0x5F, 0x02, 0x66, 0x7F, 0x02, 0x66, 0x9F, 0x02, 0x66, 0x7F, 0x81, 0x66, 0x5F, 0x66, 0x7F, 0x02, 0x5E, 0x7F, 0x02, 0x56, 0x7F, 0x02, 0x4E, 0x5F, 0x80, 0x4E, 0x3F, 0x01, 0x56, 0x3F, 0x80, 0x4E, 0x3F, 0x03, 0x56, 0x5F, 0x01, 0x56, 0x3F, 0x02, 0x4E, 0x3F, 0x02, 0x56, 0x3F, 0x80, 0x4E, 0x3F, 0x01, 0x56, 0x3F, 0x02, 0x4E, 0x3F, 0x02, 0x4E, 0x1F, 0x11, 0x4E, 0x3F, 0x01, 0x4E, 0x5F, 0x02, 0x4E, 0x3F, 0x80, 0x4E, 0x5F, 0x04, 0x4E, 0x3F, 0x01, 0x46, 0x3F, 0x02, 0x46, 0x1F, 0x02, 0x46, 0x3F, 0x08, 0x46, 0x1F, 0x80, 0x3D, 0xFF, 0x01, 0x46, 0x1F, 0x04, 0x45, 0xFF, 0x02, 0x46, 0x1F, 0x80, 0x4E, 0x3F, 0x01, 0x46, 0x1F, 0x05, 0x4E, 0x1F, 0x01, 0x46, 0x1F, 0x81, 0x4E, 0x1F, 0x46, 0x1F, 0x01, 0x4E, 0x1F, 0x01, 0x4D, 0xFF, 0x05, 0x4E, 0x1F, 0x80, 0x46, 0x1F, 0x02, 0x45, 0xFF, 0x04, 0x3D, 0xFF, 0x81, 0x3D, 0xDF, 0x3D, 0xFF, 0x02, 0x3D, 0xDF, 0x80, 0x45, 0xDF, 0x05, 0x45, 0xFF, 0x82, 0x3D, 0xFF, 0x45, 0xFF, 0x46, 0x1F, 0x03, 0x45, 0xFF, 0x04, 0x3D, 0xFF, 0x81, 0x45, 0xFF, 0x3D, 0xFF, 0x01, 0x3D, 0xDF, 0x04, 0x45, 0xFF, 0x01, 0x3D, 0xFF, 0x01, 0x3D, 0xDF, 0x03, 0x3D, 0xFF, 0x05, 0x45, + 0xFF, 0x03, 0x3D, 0xFF, 0x01, 0x45, 0xFF, 0x01, 0x46, 0x1F, 0x81, 0x45, 0xFF, 0x46, 0x1F, 0x03, 0x45, 0xFF, 0x02, 0x3D, 0xFF, 0x01, 0x3D, 0xDF, 0x80, 0x35, 0xDF, 0x01, 0x3D, 0xFF, 0x81, 0x3E, 0x1F, 0x3D, 0xFF, 0x01, 0x45, 0xFF, 0x01, 0x46, 0x1F, 0x80, 0x4E, 0x1F, 0x04, 0x45, 0xFF, 0x80, 0x3D, 0xFF, 0x02, 0x3D, 0xDF, 0x88, 0x3D, 0xFF, 0x3D, 0xDF, 0x3D, 0xFF, 0x3D, 0xDF, 0x3D, 0xFF, 0x3D, 0xDF, 0x3D, 0xFF, 0x3D, 0xDF, 0x3D, 0xFF, 0x05, 0x3D, 0xDF, 0x82, 0x3D, 0xBF, 0x3D, 0xDF, 0x3D, 0xBF, 0x01, 0x3D, 0xDF, 0x07, 0x45, 0xDF, 0x81, 0x45, 0xFF, 0x45, 0xDF, 0x02, 0x45, 0xFF, 0x01, 0x3D, 0xFF, 0x05, 0x3D, 0xDF, 0x04, 0x35, 0xBF, 0x80, 0x3D, 0xBF, 0x01, 0x35, 0xBF, 0x01, 0x35, 0x9F, 0x83, 0x35, 0xBF, 0x24, 0xFD, 0x1C, 0xDD, 0x1C, 0xBD, 0x01, 0x24, 0xDD, 0x84, 0x1C, 0xBD, 0x24, 0xBD, 0x24, 0xDD, 0x24, 0xFD, 0x24, 0xFE, 0x01, 0x2C, 0xFE, 0x82, 0x2C, 0xFD, 0x2D, 0x1D, 0x2D, 0x1E, 0x02, 0x24, 0xFD, 0x80, 0x2D, 0x1E, 0x01, 0x2D, 0x1D, 0x80, 0x25, 0x1D, 0x01, 0x24, 0xFD, 0x80, 0x24, 0xDD, 0x01, 0x1C, 0xDC, 0x80, 0x1C, 0xBC, 0x01, 0x1C, 0xDC, 0x8D, 0x1C, 0xBC, 0x14, 0x7B, 0x1C, 0x9C, 0x14, 0x9B, 0x14, 0x9C, 0x1C, 0xBC, 0x25, 0x1D, 0x25, 0x3E, 0x2D, 0x5E, 0x35, 0x7F, 0x2D, 0x7F, 0x35, 0x7F, 0x2D, 0x3E, 0x25, 0x1E, 0x02, 0x25, 0x1D, 0x80, 0x24, 0xFD, 0x01, 0x2D, 0x1E, 0x01, 0x2C, 0xFD, 0x01, 0x2D, 0x1D, 0x01, 0x2C, 0xFD, 0x02, 0x2D, 0x1D, 0x03, 0x25, 0x1D, 0x80, 0x24, 0xFD, 0x02, 0x2D, 0x1D, 0x86, 0x25, 0x1D, 0x2D, 0x1D, 0x24, 0xFD, + 0x2D, 0x1E, 0x2D, 0x1D, 0x24, 0xFD, 0x25, 0x1D, 0x01, 0x24, 0xFD, 0x85, 0x2D, 0x1D, 0x24, 0xFD, 0x2D, 0x1E, 0x2D, 0x3E, 0x24, 0xFD, 0x2D, 0x1D, 0x03, 0x2D, 0x3E, 0x01, 0x25, 0x1D, 0x01, 0x24, 0xFC, 0x81, 0x25, 0x1D, 0x1C, 0xFC, 0x01, 0x25, 0x1D, 0x80, 0x1D, 0x1D, 0x02, 0x1C, 0xDC, 0x82, 0x25, 0x1D, 0x2D, 0x3E, 0x35, 0x7E, 0x01, 0x35, 0x7F, 0x84, 0x35, 0x9F, 0x2D, 0x5E, 0x25, 0x3E, 0x25, 0x1D, 0x24, 0xFD, 0x01, 0x2D, 0x3D, 0x05, 0x2D, 0x5E, 0x01, 0x35, 0x7E, 0x01, 0x35, 0x5E, 0x80, 0x35, 0x7E, 0x07, 0x35, 0x5E, 0x01, 0x35, 0x7E, 0x81, 0x2D, 0x5E, 0x35, 0x7E, 0x02, 0x35, 0x5E, 0x81, 0x2D, 0x3D, 0x35, 0x5D, 0x02, 0x35, 0x5E, 0x81, 0x2D, 0x5E, 0x35, 0x5E, 0x01, 0x35, 0x7E, 0x80, 0x35, 0x9E, 0x01, 0x35, 0x7E, 0x89, 0x2D, 0x7E, 0x2D, 0x7D, 0x35, 0x7E, 0x2D, 0x7E, 0x35, 0x9E, 0x35, 0x9F, 0x2D, 0x7E, 0x2D, 0x5E, 0x35, 0x7E, 0x2D, 0x5D, 0x01, 0x35, 0x9E, 0x05, 0x35, 0xBF, 0x03, 0x2D, 0x9E, 0x80, 0x2D, 0x9F, 0x01, 0x35, 0xBF, 0x80, 0x35, 0x9F, 0x01, 0x35, 0xBF, 0x80, 0x35, 0x9F, 0x0D, 0x35, 0xBF, 0x81, 0x2D, 0x9E, 0x35, 0xBF, 0x01, 0x35, 0xDF, 0x07, 0x35, 0xBF, 0x80, 0x35, 0x9F, 0x01, 0x35, 0xBF, 0x81, 0x35, 0xDF, 0x35, 0xFF, 0x03, 0x35, 0xBF, 0x01, 0x2D, 0xBE, 0x01, 0x2D, 0x9E, 0x80, 0x25, 0x7E, 0x01, 0x25, 0x7D, 0x86, 0x25, 0x7E, 0x2D, 0xBF, 0x35, 0xDF, 0x3E, 0x1F, 0x3D, 0xFF, 0x35, 0xDF, 0x35, 0xBF, 0x03, 0x35, 0xDF, 0x80, 0x35, 0xBF, 0x06, 0x3D, 0xDF, 0x80, 0x45, 0xDF, 0x02, 0x3D, 0xDF, 0x80, 0x45, 0xDF, 0x07, 0x3D, 0xDF, + 0x80, 0x3D, 0xFF, 0x02, 0x3D, 0xDF, 0x80, 0x35, 0xDF, 0x01, 0x3D, 0xFF, 0x82, 0x3D, 0xDF, 0x35, 0xBF, 0x3D, 0xFF, 0x01, 0x3D, 0xDF, 0x81, 0x45, 0xFF, 0x3D, 0xDF, 0x02, 0x3D, 0xBF, 0x8E, 0x3D, 0xDF, 0x3D, 0xFF, 0x45, 0xFF, 0x3D, 0xFF, 0x3D, 0xDF, 0x35, 0xBE, 0x3D, 0xDF, 0x35, 0xBE, 0x35, 0xDE, 0x35, 0xDF, 0x35, 0xBE, 0x2D, 0x7D, 0x25, 0x5D, 0x2D, 0x9E, 0x3D, 0xFF, 0x01, 0x46, 0x1F, 0x80, 0x3E, 0x1F, 0x01, 0x3D, 0xFF, 0x80, 0x3D, 0xDF, 0x01, 0x3D, 0xFF, 0x04, 0x45, 0xFF, 0x01, 0x46, 0x1F, 0x01, 0x45, 0xFF, 0x01, 0x46, 0x1F, 0x0A, 0x45, 0xFF, 0x05, 0x46, 0x1F, 0x80, 0x45, 0xFF, 0x01, 0x46, 0x1F, 0x04, 0x45, 0xFF, 0x80, 0x46, 0x1F, 0x03, 0x45, 0xFF, 0x02, 0x46, 0x1F, 0x80, 0x45, 0xFF, 0x02, 0x3D, 0xFF, 0x84, 0x35, 0xDE, 0x35, 0xDF, 0x35, 0xBE, 0x3D, 0xFF, 0x46, 0x1F, 0x01, 0x46, 0x3F, 0x05, 0x45, 0xFF, 0x80, 0x4E, 0x1F, 0x04, 0x46, 0x1F, 0x81, 0x4E, 0x1F, 0x4E, 0x3F, 0x01, 0x46, 0x1F, 0x02, 0x4E, 0x1F, 0x85, 0x46, 0x1F, 0x4E, 0x1F, 0x46, 0x1F, 0x4E, 0x3F, 0x46, 0x1F, 0x4E, 0x3F, 0x04, 0x4E, 0x1F, 0x04, 0x4E, 0x3F, 0x02, 0x4E, 0x1F, 0x82, 0x4E, 0x3F, 0x4E, 0x1F, 0x4E, 0x3F, 0x04, 0x4E, 0x1F, 0x01, 0x46, 0x1F, 0x01, 0x4E, 0x1F, 0x81, 0x4D, 0xFF, 0x45, 0xFF, 0x01, 0x4D, 0xFF, 0x02, 0x45, 0xFF, 0x80, 0x3D, 0xDF, 0x01, 0x45, 0xFF, 0x81, 0x4E, 0x1F, 0x45, 0xFF, 0x01, 0x4E, 0x1F, 0x03, 0x56, 0x1F, 0x01, 0x4E, 0x1F, 0x0A, 0x4E, 0x3F, 0x80, 0x4E, 0x1F, 0x01, 0x4E, 0x3F, 0x01, 0x4E, 0x1F, 0x01, 0x4E, 0x3F, 0x01, 0x56, 0x3F, 0x83, + 0x4E, 0x3F, 0x4E, 0x1F, 0x56, 0x3F, 0x4E, 0x1F, 0x01, 0x4E, 0x3F, 0x80, 0x56, 0x3F, 0x01, 0x4E, 0x3F, 0x04, 0x56, 0x3F, 0x84, 0x4E, 0x3F, 0x4E, 0x1F, 0x4D, 0xFF, 0x45, 0xDF, 0x4E, 0x1F, 0x03, 0x4E, 0x3F, 0x03, 0x4E, 0x1F, 0x81, 0x4E, 0x3F, 0x4E, 0x5F, 0x01, 0x4E, 0x3F, 0x81, 0x4E, 0x1F, 0x4D, 0xFF, 0x07, 0x4E, 0x1F, 0x82, 0x4E, 0x3F, 0x56, 0x3F, 0x4E, 0x1F, 0x04, 0x56, 0x3F, 0x82, 0x4E, 0x3F, 0x56, 0x5F, 0x56, 0x3F, 0x04, 0x56, 0x5F, 0x80, 0x4E, 0x3F, 0x03, 0x56, 0x3F, 0x02, 0x56, 0x5F, 0x80, 0x4E, 0x3F, 0x02, 0x56, 0x5F, 0x80, 0x56, 0x3F, 0x05, 0x56, 0x5F, 0x81, 0x56, 0x3F, 0x4E, 0x3F, 0x01, 0x56, 0x5F, 0x05, 0x56, 0x3F, 0x81, 0x4E, 0x3F, 0x4E, 0x1F, 0x02, 0x4E, 0x5F, 0x80, 0x4E, 0x3F, 0x01, 0x4E, 0x1F, 0x80, 0x4E, 0x3F, 0x01, 0x56, 0x3F, 0x81, 0x4E, 0x1F, 0x56, 0x3F, 0x08, 0x4E, 0x3F, 0x06, 0x56, 0x5F, 0x80, 0x56, 0x3F, 0x01, 0x4E, 0x3F, 0x01, 0x56, 0x3F, 0x81, 0x56, 0x5F, 0x4E, 0x3F, 0x02, 0x56, 0x5F, 0x80, 0x4E, 0x3F, 0x09, 0x56, 0x3F, 0x82, 0x56, 0x5F, 0x56, 0x3F, 0x56, 0x5F, 0x02, 0x56, 0x3F, 0x01, 0x56, 0x5F, 0x04, 0x56, 0x3F, 0x83, 0x4E, 0x1F, 0x4E, 0x3F, 0x56, 0x5F, 0x4E, 0x5F, 0x01, 0x4E, 0x3F, 0x02, 0x46, 0x1F, 0x07, 0x4E, 0x1F, 0x81, 0x4E, 0x3F, 0x4E, 0x1F, 0x06, 0x4E, 0x3F, 0x80, 0x4E, 0x1F, 0x02, 0x4E, 0x3F, 0x80, 0x4E, 0x1F, 0x08, 0x4E, 0x3F, 0x86, 0x4E, 0x5F, 0x4E, 0x3F, 0x4E, 0x1F, 0x4E, 0x3F, 0x4E, 0x1F, 0x4E, 0x3F, 0x4E, 0x1F, 0x02, 0x4E, 0x3F, 0x83, 0x4E, 0x1F, 0x4E, 0x3F, 0x4E, 0x1F, 0x4E, 0x3F, + 0x01, 0x4E, 0x1F, 0x80, 0x4D, 0xFF, 0x01, 0x4E, 0x1F, 0x80, 0x4E, 0x3F, 0x01, 0x46, 0x1F, 0x86, 0x46, 0x3F, 0x3E, 0x1F, 0x3D, 0xFE, 0x35, 0xDE, 0x3D, 0xDE, 0x3D, 0xFF, 0x3D, 0xDE, 0x01, 0x3D, 0xBE, 0x01, 0x45, 0xDF, 0x80, 0x45, 0xFF, 0x01, 0x4E, 0x1F, 0x02, 0x4D, 0xFF, 0x03, 0x4E, 0x1F, 0x09, 0x56, 0x1F, 0x09, 0x5E, 0x1F, 0x05, 0x66, 0x3F, 0x03, 0x6E, 0x3F, 0x02, 0x76, 0x1F, 0x01, 0x7E, 0x1F, 0x8A, 0x85, 0xFF, 0x8D, 0xDF, 0x9D, 0xDF, 0xB6, 0x1F, 0xCD, 0xFF, 0x61, 0xB2, 0x82, 0x14, 0x9A, 0x34, 0xA1, 0xF4, 0x99, 0xD3, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x81, 0xA9, 0xB3, 0xB1, 0xF3, 0x01, 0xA9, 0xD3, 0x92, 0xA1, 0xD3, 0xA2, 0x33, 0x9A, 0x54, 0x8A, 0x94, 0x72, 0x93, 0x21, 0x6D, 0x7D, 0x9B, 0x7E, 0x9D, 0x5E, 0x3B, 0x5E, 0x7B, 0x66, 0x3B, 0x7E, 0x3C, 0x6B, 0xF6, 0x62, 0x71, 0x82, 0x73, 0x92, 0x32, 0xA2, 0x13, 0xA9, 0xF3, 0xA9, 0xF4, 0x01, 0xA9, 0xD4, 0x01, 0xA9, 0xF4, 0x8A, 0xA2, 0x14, 0x92, 0x13, 0x82, 0x33, 0x72, 0xF5, 0xA5, 0x7F, 0x85, 0x7F, 0x6D, 0xBF, 0x65, 0xDF, 0x5D, 0xDF, 0x55, 0xDF, 0x4D, 0xDF, 0x06, 0x4D, 0xFF, 0x80, 0x45, 0xDF, 0x02, 0x4D, 0xFF, 0x01, 0x45, 0xFF, 0x80, 0x46, 0x1F, 0x01, 0x46, 0x3F, 0x83, 0x35, 0xBE, 0x25, 0x5D, 0x2D, 0x9E, 0x2D, 0xBE, 0x01, 0x35, 0xDF, 0x01, 0x35, 0xBF, 0x81, 0x35, 0x9F, 0x35, 0x9E, 0x01, 0x35, 0xDF, 0x01, 0x3D, 0xDF, 0x06, 0x35, 0xBF, 0x80, 0x3D, 0xBF, 0x01, 0x35, 0xBF, 0x01, 0x3D, 0xBF, 0x81, 0x3D, 0xDF, 0x3D, 0xBF, 0x02, 0x3D, 0xDF, 0x84, 0x3D, 0xBF, 0x3D, 0xDF, 0x3D, 0xBF, 0x3D, + 0xDF, 0x3D, 0xBF, 0x04, 0x3D, 0xDF, 0x84, 0x35, 0xBF, 0x3D, 0xDF, 0x35, 0xDF, 0x3D, 0xDF, 0x35, 0xDF, 0x01, 0x35, 0xBF, 0x01, 0x35, 0xDF, 0x80, 0x3D, 0xDF, 0x02, 0x35, 0xDF, 0x81, 0x35, 0xFF, 0x3E, 0x1F, 0x01, 0x3D, 0xFF, 0x80, 0x3E, 0x1F, 0x01, 0x35, 0xFF, 0x82, 0x35, 0xDF, 0x25, 0x7D, 0x1D, 0x5D, 0x01, 0x1D, 0x7D, 0x01, 0x25, 0x9E, 0x81, 0x2D, 0x9E, 0x25, 0x9E, 0x03, 0x2D, 0xBF, 0x81, 0x2D, 0xBE, 0x2D, 0x9E, 0x01, 0x2D, 0xBF, 0x05, 0x2D, 0x9F, 0x01, 0x2D, 0x9E, 0x81, 0x35, 0xBF, 0x2D, 0x9F, 0x01, 0x35, 0xBF, 0x85, 0x2D, 0x9E, 0x2D, 0x7E, 0x35, 0x9F, 0x2D, 0x9F, 0x35, 0xBF, 0x2D, 0x9F, 0x06, 0x35, 0x9F, 0x83, 0x2D, 0x9F, 0x35, 0x9F, 0x35, 0xBF, 0x35, 0x9F, 0x02, 0x2D, 0x9F, 0x01, 0x35, 0xBF, 0x01, 0x2D, 0x9F, 0x81, 0x2D, 0xBF, 0x2D, 0x9F, 0x01, 0x2D, 0xBF, 0x81, 0x2D, 0xDF, 0x2D, 0xBF, 0x01, 0x2D, 0x9F, 0x81, 0x25, 0x3E, 0x1C, 0xFD, 0x01, 0x1D, 0x1D, 0x80, 0x25, 0x5D, 0x03, 0x25, 0x5E, 0x02, 0x25, 0x7E, 0x82, 0x25, 0x9E, 0x25, 0x7E, 0x2D, 0x9F, 0x03, 0x25, 0x7E, 0x80, 0x2D, 0x7F, 0x03, 0x25, 0x5E, 0x84, 0x25, 0x7E, 0x25, 0x5E, 0x25, 0x7E, 0x25, 0x5E, 0x25, 0x7E, 0x06, 0x25, 0x5E, 0x03, 0x2D, 0x7E, 0x81, 0x2D, 0x9F, 0x2D, 0x7F, 0x01, 0x2D, 0x9F, 0x02, 0x25, 0x7E, 0x80, 0x2D, 0x9F, 0x01, 0x2D, 0x7E, 0x80, 0x2D, 0x7F, 0x01, 0x2D, 0x7E, 0x80, 0x2D, 0x9E, 0x01, 0x2D, 0x9F, 0x03, 0x2D, 0xBF, 0x82, 0x25, 0x9E, 0x1D, 0x5E, 0x15, 0x1D, 0x02, 0x0C, 0xDC, 0x89, 0x14, 0xFC, 0x1C, 0xFC, 0x1D, 0x1D, 0x1C, 0xFD, 0x1D, 0x1D, 0x1C, + 0xFD, 0x1D, 0x1D, 0x25, 0x3D, 0x25, 0x7E, 0x25, 0x5E, 0x01, 0x25, 0x7E, 0x80, 0x25, 0x5E, 0x01, 0x1D, 0x3E, 0x80, 0x1D, 0x3D, 0x01, 0x25, 0x5E, 0x02, 0x1D, 0x3D, 0x04, 0x1D, 0x1D, 0x80, 0x25, 0x1E, 0x04, 0x25, 0x3E, 0x04, 0x25, 0x1E, 0x80, 0x1C, 0xFE, 0x01, 0x25, 0x1E, 0x07, 0x25, 0x3E, 0x01, 0x1D, 0x1E, 0x81, 0x25, 0x3E, 0x25, 0x5F, 0x02, 0x2D, 0x9F, 0x86, 0x2D, 0x7F, 0x25, 0x7E, 0x25, 0x5E, 0x1D, 0x1D, 0x14, 0xFD, 0x14, 0xDD, 0x0C, 0x9C, 0x03, 0x04, 0x7B, 0x01, 0x14, 0x5C, 0x01, 0x0C, 0x3B, 0x06, 0x14, 0x5C, 0x02, 0x14, 0x5B, 0x03, 0x0C, 0x3B, 0x01, 0x0C, 0x1A, 0x85, 0x04, 0x1A, 0x0C, 0x3A, 0x04, 0x1A, 0x0C, 0x3B, 0x04, 0x3A, 0x04, 0x3B, 0x03, 0x04, 0x3A, 0x86, 0x04, 0x5B, 0x04, 0x3B, 0x0C, 0x7B, 0x14, 0x9C, 0x14, 0xBD, 0x1C, 0xDD, 0x1C, 0xDE, 0x01, 0x25, 0x1E, 0x84, 0x1C, 0xFE, 0x1C, 0xFD, 0x1C, 0xBD, 0x14, 0x9D, 0x14, 0x9C, 0x03, 0x14, 0x7C, 0x80, 0x14, 0x5C, 0x01, 0x14, 0x5B, 0x82, 0x14, 0x3B, 0x0C, 0x3B, 0x14, 0x3B, 0x01, 0x0C, 0x3B, 0x01, 0x0C, 0x3A, 0x01, 0x0C, 0x5B, 0x80, 0x0C, 0x5A, 0x07, 0x0C, 0x5B, 0x80, 0x14, 0x5B, 0x05, 0x0C, 0x5B, 0x80, 0x0C, 0x3B, 0x03, 0x0C, 0x5B, 0x83, 0x14, 0x5B, 0x0C, 0x5B, 0x14, 0x5B, 0x0C, 0x5B, 0x01, 0x0C, 0x5A, 0x80, 0x04, 0x5A, 0x02, 0x04, 0x3A, 0x88, 0x04, 0x5A, 0x04, 0x7A, 0x04, 0x7B, 0x04, 0x9B, 0x04, 0x7B, 0x0C, 0x7B, 0x14, 0xBC, 0x14, 0xDD, 0x1C, 0xFD, 0x02, 0x25, 0x1E, 0x80, 0x1C, 0xFD, 0x01, 0x1C, 0xDD, 0x83, 0x14, 0xBD, 0x14, 0x9C, 0x14, 0x7C, 0x14, 0x9C, 0x01, 0x14, + 0x7B, 0x01, 0x14, 0x9B, 0x01, 0x14, 0x7B, 0x81, 0x14, 0x9B, 0x0C, 0x7B, 0x04, 0x14, 0x7B, 0x80, 0x14, 0x5B, 0x04, 0x14, 0x7B, 0x80, 0x14, 0x9B, 0x03, 0x14, 0x7B, 0x02, 0x14, 0x5B, 0x80, 0x14, 0x7B, 0x01, 0x0C, 0x5B, 0x83, 0x14, 0x7B, 0x0C, 0x7B, 0x14, 0x7B, 0x14, 0x9B, 0x01, 0x14, 0x7B, 0x01, 0x0C, 0x7B, 0x01, 0x0C, 0x7A, 0x83, 0x0C, 0x7B, 0x0C, 0x9B, 0x0C, 0x7A, 0x04, 0x7A, 0x01, 0x04, 0x3A, 0x82, 0x04, 0x5A, 0x14, 0xBB, 0x1C, 0xFD, 0x01, 0x25, 0x3E, 0x84, 0x1D, 0x1E, 0x1C, 0xFD, 0x1D, 0x1D, 0x14, 0xDD, 0x14, 0xDC, 0x01, 0x14, 0xBC, 0x03, 0x14, 0x9C, 0x82, 0x14, 0x9B, 0x14, 0xBC, 0x14, 0x9B, 0x01, 0x14, 0xBC, 0x81, 0x14, 0x9B, 0x0C, 0x9B, 0x0D, 0x14, 0x9B, 0x02, 0x14, 0xBC, 0x80, 0x1C, 0xBC, 0x04, 0x14, 0xBC, 0x80, 0x14, 0xDC, 0x01, 0x14, 0xBC, 0x81, 0x14, 0xDC, 0x1C, 0xDC, 0x04, 0x14, 0xDC, 0x83, 0x14, 0xFC, 0x1D, 0x1C, 0x14, 0xFC, 0x0C, 0xDC, 0x01, 0x0C, 0xBB, 0x81, 0x1D, 0x1D, 0x25, 0x9F, 0x01, 0x2D, 0x9F, 0x80, 0x2D, 0x7E, 0x01, 0x25, 0x5E, 0x80, 0x25, 0x3E, 0x01, 0x1C, 0xFD, 0x01, 0x14, 0xDC, 0x80, 0x14, 0xBC, 0x05, 0x1C, 0xBC, 0x81, 0x1C, 0xDC, 0x1C, 0x9C, 0x04, 0x1C, 0xBC, 0x80, 0x1C, 0x9C, 0x01, 0x1C, 0xBC, 0x02, 0x1C, 0xDC, 0x80, 0x14, 0xBC, 0x0E, 0x1C, 0xDC, 0x80, 0x1C, 0x9B, 0x04, 0x1C, 0xDC, 0x8F, 0x1C, 0xBB, 0x1C, 0xDB, 0x14, 0xDB, 0x1C, 0xFC, 0x1D, 0x1C, 0x14, 0xFC, 0x0C, 0xBB, 0x14, 0xBB, 0x25, 0x5E, 0x35, 0xDF, 0x3D, 0xFF, 0x3D, 0xDF, 0x35, 0x9F, 0x35, 0x7E, 0x2D, 0x5E, 0x2D, 0x3E, 0x03, 0x24, 0xFD, + 0x83, 0x1C, 0xDC, 0x24, 0xFC, 0x24, 0xDC, 0x24, 0xFD, 0x02, 0x24, 0xFC, 0x81, 0x24, 0xFD, 0x24, 0xFC, 0x04, 0x24, 0xFD, 0x01, 0x24, 0xDD, 0x01, 0x24, 0xFC, 0x81, 0x24, 0xDC, 0x24, 0xFD, 0x01, 0x24, 0xFC, 0x81, 0x24, 0xFD, 0x24, 0xFC, 0x02, 0x24, 0xFD, 0x80, 0x25, 0x1D, 0x04, 0x24, 0xFD, 0x82, 0x2D, 0x1D, 0x24, 0xFD, 0x25, 0x1D, 0x01, 0x24, 0xFC, 0x80, 0x24, 0xDC, 0x02, 0x24, 0xFC, 0x03, 0x25, 0x1C, 0x80, 0x1D, 0x1C, 0x01, 0x1C, 0xFC, 0x86, 0x2D, 0x7E, 0x35, 0xDF, 0x3D, 0xFF, 0x3D, 0xDF, 0x35, 0xBF, 0x35, 0x7E, 0x2D, 0x5E, 0x01, 0x2D, 0x3D, 0x01, 0x2D, 0x1D, 0x81, 0x24, 0xFC, 0x25, 0x1D, 0x01, 0x2D, 0x1D, 0x01, 0x25, 0x1D, 0x80, 0x24, 0xFC, 0x03, 0x2D, 0x1D, 0x80, 0x2D, 0x3D, 0x02, 0x2D, 0x1D, 0x80, 0x2D, 0x3D, 0x04, 0x2D, 0x1D, 0x80, 0x2D, 0x1C, 0x03, 0x2D, 0x1D, 0x81, 0x2D, 0x1C, 0x2D, 0x1D, 0x01, 0x2D, 0x1C, 0x02, 0x2D, 0x1D, 0x82, 0x2D, 0x3D, 0x2D, 0x1D, 0x2D, 0x3D, 0x03, 0x2D, 0x1D, 0x83, 0x25, 0x1C, 0x2D, 0x3D, 0x2D, 0x1D, 0x2D, 0x3D, 0x02, 0x2D, 0x1C, 0x01, 0x2D, 0x3D, 0x82, 0x2D, 0x7D, 0x35, 0x9E, 0x3D, 0xBF, 0x01, 0x35, 0xBF, 0x81, 0x35, 0x9E, 0x3D, 0x9F, 0x02, 0x3D, 0x7E, 0x01, 0x3D, 0x5E, 0x80, 0x35, 0x5E, 0x02, 0x35, 0x3D, 0x84, 0x35, 0x5D, 0x35, 0x3D, 0x35, 0x5D, 0x35, 0x3D, 0x35, 0x5D, 0x01, 0x2D, 0x3D, 0x80, 0x35, 0x5D, 0x02, 0x35, 0x3D, 0x80, 0x2D, 0x3D, 0x03, 0x35, 0x3D, 0x80, 0x35, 0x5D, 0x03, 0x35, 0x3D, 0x02, 0x2D, 0x1D, 0x84, 0x35, 0x3D, 0x2D, 0x1D, 0x2D, 0x3D, 0x35, 0x3D, 0x2D, 0x1D, 0x01, 0x35, + 0x3D, 0x81, 0x2D, 0x1C, 0x35, 0x3D, 0x01, 0x2D, 0x1D, 0x80, 0x2C, 0xFD, 0x01, 0x2D, 0x3D, 0x80, 0x35, 0x5D, 0x02, 0x2D, 0x3D, 0x86, 0x35, 0x5D, 0x2D, 0x1C, 0x24, 0xFB, 0x35, 0x9E, 0x3D, 0xFF, 0x3D, 0xDF, 0x3D, 0xBF, 0x01, 0x35, 0x7E, 0x01, 0x35, 0x3E, 0x80, 0x3D, 0x5E, 0x02, 0x35, 0x5E, 0x05, 0x35, 0x5D, 0x81, 0x35, 0x3D, 0x35, 0x5D, 0x02, 0x35, 0x3D, 0x02, 0x35, 0x5D, 0x01, 0x35, 0x3D, 0x01, 0x35, 0x5D, 0x09, 0x35, 0x3D, 0x01, 0x35, 0x5D, 0x80, 0x35, 0x3D, 0x01, 0x35, 0x3C, 0x81, 0x35, 0x3D, 0x2D, 0x3C, 0x01, 0x35, 0x3D, 0x02, 0x2D, 0x3D, 0x01, 0x2D, 0x1C, 0x8E, 0x2D, 0x1D, 0x2D, 0x1C, 0x35, 0x3C, 0x35, 0x3D, 0x2D, 0x1C, 0x35, 0x3C, 0x2D, 0x1C, 0x24, 0xFB, 0x46, 0x3F, 0x3D, 0xDE, 0x2D, 0x5D, 0x35, 0x5D, 0x2D, 0x3D, 0x35, 0x3D, 0x2D, 0x3D, 0x01, 0x35, 0x3D, 0x80, 0x35, 0x5D, 0x02, 0x35, 0x3D, 0x80, 0x35, 0x5D, 0x02, 0x35, 0x3D, 0x80, 0x35, 0x5D, 0x01, 0x35, 0x3D, 0x83, 0x2D, 0x3D, 0x35, 0x3D, 0x35, 0x5D, 0x35, 0x3D, 0x03, 0x35, 0x5D, 0x83, 0x35, 0x3D, 0x35, 0x5D, 0x35, 0x3D, 0x35, 0x5D, 0x02, 0x35, 0x3D, 0x80, 0x35, 0x5D, 0x05, 0x35, 0x3D, 0x82, 0x35, 0x3C, 0x35, 0x3D, 0x35, 0x3C, 0x02, 0x35, 0x3D, 0x81, 0x35, 0x3C, 0x35, 0x3D, 0x06, 0x35, 0x5D, 0x01, 0x35, 0x3D, 0x80, 0x3D, 0x5D, 0x01, 0x35, 0x3D, 0x83, 0x35, 0x5D, 0x35, 0x9E, 0x46, 0x1F, 0x35, 0xBE, 0x01, 0x2D, 0x5D, 0x82, 0x2D, 0x3D, 0x2D, 0x5D, 0x35, 0x5D, 0x02, 0x35, 0x7E, 0x80, 0x35, 0x5E, 0x01, 0x35, 0x7E, 0x02, 0x35, 0x5E, 0x81, 0x35, 0x3D, 0x35, 0x5D, 0x01, + 0x35, 0x3D, 0x07, 0x2D, 0x3D, 0x80, 0x2D, 0x1C, 0x02, 0x2D, 0x3D, 0x80, 0x2D, 0x3C, 0x06, 0x2D, 0x3D, 0x01, 0x2D, 0x1C, 0x80, 0x2D, 0x1D, 0x01, 0x2D, 0x1C, 0x80, 0x2D, 0x3D, 0x02, 0x2D, 0x1C, 0x80, 0x2D, 0x3C, 0x02, 0x35, 0x3D, 0x03, 0x35, 0x5E, 0x82, 0x35, 0x7E, 0x35, 0x9E, 0x3D, 0xDF, 0x01, 0x35, 0xBE, 0x84, 0x25, 0x7D, 0x25, 0x3C, 0x25, 0x5D, 0x25, 0x3D, 0x25, 0x1C, 0x01, 0x2D, 0x3D, 0x82, 0x35, 0x5E, 0x35, 0x3D, 0x2D, 0x3D, 0x02, 0x35, 0x3D, 0x82, 0x35, 0x5E, 0x35, 0x3D, 0x35, 0x5D, 0x02, 0x35, 0x3D, 0x06, 0x35, 0x1D, 0x02, 0x34, 0xFC, 0x02, 0x3C, 0xFC, 0x80, 0x3C, 0xFD, 0x02, 0x3D, 0x1D, 0x82, 0x3C, 0xFC, 0x3D, 0x1D, 0x3C, 0xFC, 0x01, 0x3D, 0x1C, 0x82, 0x3D, 0x1D, 0x45, 0x1C, 0x45, 0x1D, 0x01, 0x45, 0x1C, 0x01, 0x44, 0xFC, 0x02, 0x4C, 0xFC, 0x80, 0x4C, 0xDC, 0x01, 0x54, 0xBC, 0x8A, 0x5C, 0xBC, 0x6C, 0xDC, 0x8D, 0x5E, 0xB5, 0xDF, 0x93, 0xBA, 0x71, 0xD3, 0x89, 0xF4, 0x9A, 0x34, 0xA2, 0x14, 0xA1, 0xF3, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x94, 0xA9, 0xD3, 0xB2, 0x14, 0xA9, 0xD3, 0xA9, 0xF3, 0xAA, 0x34, 0x9A, 0x13, 0x92, 0x53, 0x82, 0x93, 0x5A, 0x51, 0x32, 0x4F, 0x9E, 0xBF, 0x66, 0x1B, 0x66, 0x5B, 0x6E, 0x5B, 0x86, 0x3C, 0x7C, 0x98, 0x62, 0x92, 0x82, 0x93, 0x92, 0x53, 0x99, 0xF2, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x8C, 0xB1, 0xF4, 0xA9, 0xD3, 0xA9, 0xF4, 0xA1, 0xF3, 0x91, 0xF3, 0x8A, 0x34, 0x62, 0x13, 0x6B, 0x58, 0x53, 0xD9, 0x4C, 0x7C, 0x44, 0xBC, 0x3C, 0xDD, 0x34, 0xDD, 0x02, 0x34, 0xFD, 0x01, 0x2C, 0xDD, 0x81, 0x2C, 0xDC, + 0x2C, 0xDD, 0x02, 0x24, 0xBC, 0x89, 0x24, 0xDC, 0x2C, 0xFD, 0x2D, 0x1D, 0x25, 0x1D, 0x2D, 0x3D, 0x35, 0xBF, 0x46, 0x1F, 0x2D, 0x9F, 0x25, 0x5E, 0x14, 0xDC, 0x01, 0x14, 0xFC, 0x80, 0x0C, 0xDB, 0x01, 0x14, 0xDC, 0x83, 0x14, 0xBC, 0x14, 0xDC, 0x1C, 0xDC, 0x1C, 0xFC, 0x01, 0x1C, 0xDC, 0x80, 0x14, 0xDC, 0x02, 0x1C, 0xDC, 0x01, 0x1C, 0xFD, 0x02, 0x1C, 0xDD, 0x80, 0x1C, 0xDC, 0x01, 0x1C, 0xDD, 0x81, 0x1C, 0xBC, 0x1C, 0xDD, 0x06, 0x1C, 0xBC, 0x02, 0x14, 0xBC, 0x01, 0x14, 0x9C, 0x81, 0x14, 0xBC, 0x14, 0x9C, 0x05, 0x14, 0x9B, 0x80, 0x0C, 0x9B, 0x01, 0x14, 0x9B, 0x81, 0x14, 0xBC, 0x14, 0x9B, 0x01, 0x14, 0xBC, 0x88, 0x14, 0xDC, 0x1D, 0x1D, 0x25, 0x3D, 0x25, 0x5E, 0x25, 0x7E, 0x2D, 0x9F, 0x2D, 0xBF, 0x1D, 0x7E, 0x1D, 0x5D, 0x01, 0x0D, 0x1C, 0x82, 0x0C, 0xDB, 0x04, 0xBB, 0x0C, 0xBB, 0x01, 0x0C, 0xDC, 0x01, 0x14, 0xFC, 0x03, 0x14, 0xDC, 0x01, 0x14, 0xDD, 0x03, 0x14, 0xBC, 0x81, 0x0C, 0xBC, 0x14, 0x9C, 0x03, 0x14, 0xBC, 0x02, 0x14, 0x9B, 0x01, 0x0C, 0x9B, 0x05, 0x0C, 0x7B, 0x80, 0x14, 0x7B, 0x04, 0x0C, 0x7B, 0x84, 0x14, 0x7B, 0x14, 0x9B, 0x0C, 0x7B, 0x0C, 0x9C, 0x0C, 0x7B, 0x03, 0x0C, 0x9B, 0x83, 0x14, 0xBC, 0x14, 0xDC, 0x1C, 0xFD, 0x1D, 0x3E, 0x02, 0x25, 0x3E, 0x83, 0x1D, 0x3E, 0x1C, 0xFD, 0x14, 0xDD, 0x0C, 0xDC, 0x02, 0x04, 0x9B, 0x83, 0x04, 0x7A, 0x04, 0x5A, 0x04, 0x7A, 0x04, 0x7B, 0x03, 0x0C, 0x9B, 0x80, 0x0C, 0x9C, 0x03, 0x0C, 0x9B, 0x01, 0x0C, 0x9C, 0x80, 0x0C, 0x7B, 0x01, 0x0C, 0x9C, 0x80, 0x14, 0x9C, 0x01, 0x0C, 0x9C, 0x87, + 0x0C, 0x7B, 0x0C, 0x7C, 0x0C, 0x9C, 0x0C, 0x7C, 0x0C, 0x7B, 0x0C, 0x7C, 0x0C, 0x5B, 0x0C, 0x7C, 0x0A, 0x0C, 0x7B, 0x05, 0x0C, 0x5B, 0x01, 0x0C, 0x7B, 0x83, 0x0C, 0x9C, 0x14, 0xBC, 0x14, 0xFD, 0x1C, 0xFD, 0x01, 0x1D, 0x1D, 0x87, 0x15, 0x1D, 0x14, 0xFD, 0x0C, 0xDC, 0x04, 0x9B, 0x04, 0xBB, 0x04, 0x7B, 0x04, 0x7A, 0x04, 0x5A, 0x03, 0x04, 0x3A, 0x04, 0x04, 0x5A, 0x02, 0x04, 0x3A, 0x81, 0x04, 0x5B, 0x04, 0x3B, 0x02, 0x04, 0x5B, 0x01, 0x04, 0x3B, 0x80, 0x04, 0x3A, 0x01, 0x04, 0x3B, 0x01, 0x0C, 0x3B, 0x02, 0x0C, 0x5B, 0x85, 0x0C, 0x3B, 0x04, 0x3B, 0x0C, 0x3B, 0x04, 0x3B, 0x04, 0x1B, 0x04, 0x3B, 0x06, 0x04, 0x1B, 0x80, 0x04, 0x3B, 0x02, 0x04, 0x1B, 0x88, 0x04, 0x1A, 0x04, 0x1B, 0x04, 0x3B, 0x0C, 0x3B, 0x0C, 0x5B, 0x0C, 0x7C, 0x14, 0x9C, 0x14, 0xBD, 0x1C, 0xDD, 0x01, 0x14, 0xDD, 0x81, 0x14, 0xBD, 0x14, 0xBC, 0x01, 0x0C, 0x9C, 0x81, 0x04, 0x7C, 0x0C, 0xBC, 0x01, 0x04, 0x7B, 0x81, 0x03, 0x38, 0x03, 0x39, 0x06, 0x03, 0x38, 0x84, 0x03, 0x18, 0x03, 0x17, 0x02, 0xF7, 0x03, 0x17, 0x03, 0x18, 0x02, 0x03, 0x38, 0x80, 0x03, 0x58, 0x03, 0x03, 0x79, 0x01, 0x03, 0x99, 0x85, 0x03, 0xD9, 0x03, 0xFA, 0x04, 0x1A, 0x04, 0x5B, 0x0C, 0x9C, 0x14, 0xFD, 0x01, 0x1D, 0x1E, 0x86, 0x0C, 0x5C, 0x0C, 0x1B, 0x0C, 0x1C, 0x03, 0xDB, 0x03, 0xBA, 0x03, 0x7A, 0x03, 0x9A, 0x02, 0x03, 0x79, 0x04, 0x03, 0x59, 0x80, 0x03, 0x39, 0x07, 0x03, 0x59, 0x80, 0x03, 0x58, 0x06, 0x03, 0x79, 0x01, 0x03, 0x58, 0x80, 0x03, 0x79, 0x06, 0x03, 0x59, 0x02, 0x03, 0x79, 0x03, 0x03, + 0x59, 0x80, 0x03, 0x78, 0x01, 0x03, 0x79, 0x86, 0x03, 0x78, 0x03, 0x99, 0x03, 0xB9, 0x03, 0xD9, 0x04, 0x1A, 0x04, 0x3B, 0x0C, 0x7C, 0x01, 0x0C, 0xBC, 0x83, 0x14, 0xDD, 0x0C, 0xDD, 0x14, 0xDD, 0x0C, 0x7C, 0x01, 0x0C, 0x3B, 0x81, 0x03, 0xDA, 0x03, 0x99, 0x04, 0x03, 0x79, 0x82, 0x03, 0x99, 0x03, 0x79, 0x03, 0x59, 0x04, 0x03, 0x58, 0x04, 0x03, 0x79, 0x09, 0x03, 0x78, 0x84, 0x03, 0x58, 0x03, 0x99, 0x03, 0x79, 0x03, 0x78, 0x03, 0x79, 0x01, 0x03, 0x78, 0x01, 0x03, 0x79, 0x03, 0x03, 0x99, 0x81, 0x03, 0x78, 0x03, 0x58, 0x01, 0x03, 0x78, 0x80, 0x03, 0x98, 0x01, 0x03, 0xB8, 0x85, 0x03, 0xD9, 0x03, 0xF9, 0x04, 0x1A, 0x04, 0x5B, 0x0C, 0x7B, 0x14, 0xBC, 0x01, 0x25, 0x1E, 0x83, 0x14, 0x7C, 0x04, 0x1A, 0x03, 0xFA, 0x03, 0xDA, 0x05, 0x03, 0x99, 0x84, 0x03, 0x79, 0x03, 0x99, 0x03, 0x79, 0x03, 0x99, 0x03, 0x79, 0x03, 0x03, 0x99, 0x05, 0x03, 0x98, 0x01, 0x03, 0x78, 0x01, 0x03, 0x99, 0x80, 0x03, 0x78, 0x01, 0x03, 0x99, 0x80, 0x03, 0x98, 0x01, 0x03, 0x99, 0x01, 0x03, 0x98, 0x03, 0x03, 0x99, 0x01, 0x03, 0x78, 0x80, 0x03, 0x99, 0x02, 0x03, 0xB9, 0x03, 0x03, 0x98, 0x01, 0x03, 0xD9, 0x01, 0x03, 0xB8, 0x87, 0x03, 0xF9, 0x04, 0x19, 0x0C, 0x5B, 0x0C, 0x9B, 0x1D, 0x1D, 0x25, 0x5E, 0x1C, 0xFD, 0x0C, 0x3B, 0x02, 0x03, 0xFA, 0x01, 0x03, 0xDA, 0x80, 0x03, 0xD9, 0x02, 0x03, 0xB9, 0x08, 0x03, 0x99, 0x02, 0x03, 0x79, 0x80, 0x03, 0x78, 0x01, 0x03, 0x79, 0x03, 0x03, 0x99, 0x01, 0x03, 0xB9, 0x80, 0x03, 0x99, 0x07, 0x03, 0xB9, 0x80, 0x03, 0x99, 0x03, 0x03, + 0xB9, 0x81, 0x03, 0xD9, 0x03, 0xB9, 0x01, 0x0B, 0xFA, 0x81, 0x0B, 0xF9, 0x0C, 0x19, 0x02, 0x03, 0xD9, 0x88, 0x03, 0xF9, 0x0C, 0x3A, 0x0C, 0x5A, 0x0C, 0x7A, 0x14, 0xDC, 0x25, 0x1D, 0x2D, 0x7F, 0x24, 0xFD, 0x14, 0x3A, 0x01, 0x03, 0xD9, 0x01, 0x03, 0xB9, 0x84, 0x0B, 0xB9, 0x0B, 0xD9, 0x03, 0x99, 0x03, 0xB9, 0x03, 0x99, 0x02, 0x03, 0xB9, 0x80, 0x03, 0x99, 0x01, 0x03, 0x98, 0x80, 0x03, 0xB9, 0x03, 0x03, 0x99, 0x80, 0x03, 0xB9, 0x03, 0x03, 0x99, 0x82, 0x03, 0xB9, 0x03, 0x99, 0x03, 0x98, 0x04, 0x03, 0xB9, 0x80, 0x03, 0xD9, 0x04, 0x03, 0xB9, 0x80, 0x03, 0xBA, 0x01, 0x03, 0xB9, 0x87, 0x0B, 0xBA, 0x0B, 0xDA, 0x03, 0xB9, 0x0B, 0xBA, 0x0B, 0xD9, 0x0B, 0xDA, 0x14, 0x1B, 0x14, 0x3B, 0x01, 0x0C, 0x3A, 0x01, 0x0B, 0xF9, 0x87, 0x0C, 0x19, 0x04, 0x19, 0x14, 0x9B, 0x24, 0xFC, 0x2D, 0x3E, 0x2D, 0x1E, 0x1C, 0x9C, 0x0C, 0x1B, 0x02, 0x0B, 0xD9, 0x02, 0x03, 0xB9, 0x81, 0x0B, 0xB9, 0x0B, 0xD9, 0x02, 0x03, 0xB9, 0x80, 0x03, 0x99, 0x01, 0x03, 0xB9, 0x01, 0x03, 0x99, 0x01, 0x0B, 0xB9, 0x01, 0x03, 0x99, 0x01, 0x0B, 0xB9, 0x80, 0x03, 0xB9, 0x02, 0x0B, 0xB9, 0x01, 0x03, 0xB9, 0x81, 0x0B, 0xB9, 0x03, 0xB9, 0x03, 0x0B, 0xB9, 0x80, 0x0B, 0xB8, 0x02, 0x0B, 0xB9, 0x80, 0x0B, 0xB8, 0x02, 0x0B, 0xB9, 0x01, 0x0B, 0xD9, 0x80, 0x0B, 0xB9, 0x01, 0x0B, 0xD9, 0x02, 0x0B, 0xF9, 0x8C, 0x14, 0x1A, 0x14, 0x3A, 0x13, 0xF9, 0x0B, 0xD9, 0x0B, 0xF9, 0x0C, 0x19, 0x35, 0x5E, 0x35, 0x7E, 0x2D, 0x3E, 0x24, 0xBC, 0x14, 0x7B, 0x14, 0x5B, 0x0B, 0xF9, 0x01, 0x0B, 0xD9, 0x80, + 0x0B, 0xB9, 0x02, 0x13, 0xD9, 0x80, 0x13, 0xB9, 0x01, 0x0B, 0xB9, 0x01, 0x03, 0x98, 0x80, 0x0B, 0xD9, 0x03, 0x0B, 0xB9, 0x82, 0x0B, 0xD9, 0x0B, 0xB8, 0x0B, 0x98, 0x01, 0x0B, 0xB9, 0x01, 0x0B, 0xB8, 0x83, 0x0B, 0x99, 0x03, 0x99, 0x0B, 0x98, 0x0B, 0xB9, 0x01, 0x0B, 0x98, 0x83, 0x0B, 0xB9, 0x0B, 0x98, 0x0B, 0xB9, 0x13, 0xB9, 0x02, 0x0B, 0xB9, 0x01, 0x0B, 0xD9, 0x84, 0x13, 0xD9, 0x13, 0xB9, 0x13, 0xD9, 0x0B, 0x98, 0x0B, 0xB9, 0x01, 0x13, 0xD9, 0x83, 0x13, 0xFA, 0x13, 0xF9, 0x13, 0xFA, 0x14, 0x1A, 0x01, 0x13, 0xF9, 0x87, 0x14, 0x19, 0x14, 0x1A, 0x14, 0x3A, 0x14, 0x39, 0x3D, 0x7F, 0x35, 0x5E, 0x1C, 0x9C, 0x14, 0x3A, 0x01, 0x14, 0x1A, 0x81, 0x13, 0xFA, 0x13, 0xDA, 0x01, 0x13, 0xFA, 0x01, 0x13, 0xF9, 0x01, 0x13, 0xD9, 0x83, 0x0B, 0xD9, 0x13, 0xD9, 0x0B, 0xD9, 0x0B, 0xB9, 0x01, 0x0B, 0x98, 0x80, 0x0B, 0xD9, 0x01, 0x0B, 0xB9, 0x02, 0x0B, 0xB8, 0x0A, 0x0B, 0x98, 0x09, 0x0B, 0xB8, 0x83, 0x0B, 0xD9, 0x0B, 0xB8, 0x0B, 0xD9, 0x0B, 0xB8, 0x01, 0x0B, 0xD9, 0x90, 0x13, 0xF9, 0x0B, 0xD9, 0x13, 0xD9, 0x14, 0x19, 0x1C, 0x1A, 0x13, 0xD8, 0x0B, 0xB8, 0x14, 0x19, 0x14, 0x39, 0x45, 0xFF, 0x2D, 0x3D, 0x14, 0x5A, 0x0B, 0xF9, 0x0B, 0xD9, 0x13, 0xFA, 0x13, 0xD9, 0x0B, 0xD9, 0x01, 0x13, 0xF9, 0x02, 0x13, 0xD9, 0x86, 0x0B, 0xD8, 0x0B, 0xB8, 0x0B, 0xD9, 0x0B, 0xD8, 0x0B, 0xB8, 0x0B, 0xD8, 0x0B, 0xB8, 0x01, 0x03, 0x98, 0x80, 0x0B, 0xB9, 0x02, 0x0B, 0xB8, 0x80, 0x0B, 0x98, 0x02, 0x0B, 0xB8, 0x01, 0x0B, 0x98, 0x09, 0x0B, 0xB8, 0x80, 0x0B, 0x98, 0x05, + 0x0B, 0xB8, 0x80, 0x0B, 0xD9, 0x01, 0x0B, 0xB8, 0x81, 0x0B, 0xD9, 0x13, 0xF9, 0x02, 0x0B, 0xD9, 0x01, 0x13, 0xD9, 0x80, 0x1B, 0xF9, 0x01, 0x13, 0xF9, 0x86, 0x14, 0x19, 0x14, 0x5A, 0x35, 0x7E, 0x1C, 0xDB, 0x0C, 0x3A, 0x03, 0xD9, 0x03, 0xD8, 0x01, 0x0B, 0xD9, 0x80, 0x0B, 0xF9, 0x03, 0x13, 0xF9, 0x80, 0x0B, 0xF9, 0x01, 0x0B, 0xD9, 0x80, 0x0B, 0xB9, 0x01, 0x0B, 0xB8, 0x80, 0x0B, 0xB9, 0x06, 0x0B, 0xB8, 0x80, 0x0B, 0xB9, 0x01, 0x0B, 0xB8, 0x80, 0x0B, 0xD8, 0x03, 0x0B, 0xB8, 0x01, 0x0B, 0xB9, 0x01, 0x0B, 0xB8, 0x82, 0x0B, 0xD9, 0x0B, 0xB9, 0x0B, 0xB8, 0x02, 0x0B, 0xB9, 0x02, 0x0B, 0xB8, 0x82, 0x0B, 0xD9, 0x03, 0x98, 0x0B, 0xB8, 0x01, 0x0B, 0xD9, 0x81, 0x13, 0xF9, 0x13, 0xFA, 0x01, 0x0B, 0xD9, 0x02, 0x13, 0xF9, 0x86, 0x14, 0x1A, 0x24, 0xFC, 0x35, 0x9F, 0x35, 0xBF, 0x25, 0x1D, 0x14, 0x7A, 0x14, 0x5A, 0x01, 0x14, 0x3A, 0x02, 0x14, 0x1A, 0x82, 0x13, 0xFA, 0x0B, 0xD9, 0x13, 0xF9, 0x01, 0x0B, 0xD9, 0x06, 0x13, 0xD9, 0x01, 0x13, 0xB9, 0x80, 0x13, 0xD9, 0x01, 0x13, 0xB9, 0x80, 0x13, 0xD9, 0x02, 0x13, 0xB9, 0x01, 0x1B, 0xB9, 0x80, 0x1B, 0x99, 0x05, 0x1B, 0xB9, 0x80, 0x1B, 0xD9, 0x02, 0x1B, 0xB9, 0x01, 0x23, 0xB9, 0x01, 0x23, 0xD9, 0x02, 0x2B, 0xD9, 0x8F, 0x33, 0xF9, 0x33, 0xDA, 0x3B, 0xFA, 0x43, 0xFA, 0x4B, 0xFB, 0x4B, 0xDA, 0x5B, 0xDA, 0x6B, 0xDA, 0x8C, 0x1C, 0x82, 0xF8, 0x71, 0xB3, 0x92, 0x14, 0x9A, 0x14, 0xA1, 0xF3, 0xAA, 0x14, 0xA9, 0xF3, 0x03, 0xA9, 0xD3, 0x95, 0xA9, 0xF4, 0xA9, 0xF3, 0xA2, 0x13, 0x9A, 0x33, 0x92, 0x53, 0x7A, + 0x93, 0x41, 0xEF, 0x64, 0x36, 0x86, 0x5D, 0x6E, 0x3B, 0x6E, 0x1B, 0x85, 0xFC, 0x8D, 0x3A, 0x5A, 0x91, 0x7A, 0x73, 0x8A, 0x32, 0x9A, 0x13, 0xA1, 0xD2, 0xA9, 0xF3, 0xA9, 0xD3, 0xB1, 0xF4, 0xA9, 0xD3, 0x01, 0xAA, 0x14, 0x89, 0x99, 0xF3, 0x8A, 0x34, 0x72, 0x34, 0x73, 0x38, 0x53, 0x99, 0x2B, 0x17, 0x1B, 0x17, 0x1B, 0x78, 0x13, 0x99, 0x13, 0x79, 0x03, 0x0B, 0x79, 0x80, 0x0B, 0x59, 0x03, 0x0B, 0x79, 0x82, 0x0B, 0x78, 0x0B, 0x99, 0x0B, 0xB9, 0x01, 0x03, 0xB9, 0x88, 0x03, 0x78, 0x03, 0x98, 0x14, 0x3B, 0x25, 0x1E, 0x2D, 0x5E, 0x1D, 0x1D, 0x14, 0xDC, 0x04, 0x5A, 0x03, 0xF9, 0x01, 0x03, 0xD9, 0x80, 0x03, 0xB9, 0x01, 0x03, 0xD9, 0x83, 0x03, 0xB9, 0x03, 0xD9, 0x03, 0xFA, 0x03, 0xD9, 0x02, 0x03, 0xB9, 0x82, 0x03, 0x99, 0x03, 0x98, 0x03, 0x78, 0x05, 0x03, 0x99, 0x81, 0x03, 0x78, 0x03, 0x79, 0x17, 0x03, 0x99, 0x01, 0x03, 0x98, 0x80, 0x03, 0x99, 0x03, 0x03, 0xB9, 0x86, 0x03, 0xD9, 0x0C, 0x5A, 0x14, 0xDC, 0x1D, 0x3D, 0x15, 0x1D, 0x0C, 0xFC, 0x04, 0x9B, 0x01, 0x03, 0xF9, 0x82, 0x03, 0xD9, 0x03, 0xB9, 0x03, 0xD9, 0x01, 0x03, 0xB9, 0x01, 0x03, 0x99, 0x80, 0x03, 0xB9, 0x01, 0x03, 0xDA, 0x80, 0x03, 0xBA, 0x02, 0x03, 0xB9, 0x04, 0x03, 0x99, 0x80, 0x03, 0xB9, 0x09, 0x03, 0x99, 0x80, 0x03, 0x79, 0x02, 0x03, 0x99, 0x80, 0x03, 0x79, 0x04, 0x03, 0x99, 0x01, 0x03, 0x79, 0x05, 0x03, 0x99, 0x80, 0x03, 0x79, 0x01, 0x03, 0x99, 0x8D, 0x03, 0xDA, 0x0C, 0x3B, 0x0C, 0x5C, 0x14, 0xBD, 0x14, 0xDD, 0x14, 0xFD, 0x04, 0x9B, 0x04, 0x3A, 0x04, 0x1A, 0x03, 0xF9, + 0x03, 0xD9, 0x03, 0xB9, 0x03, 0xB8, 0x03, 0x98, 0x02, 0x03, 0x78, 0x01, 0x03, 0x98, 0x05, 0x03, 0x99, 0x05, 0x03, 0x79, 0x01, 0x03, 0x99, 0x02, 0x03, 0x79, 0x80, 0x03, 0x59, 0x07, 0x03, 0x79, 0x05, 0x03, 0x78, 0x01, 0x03, 0x79, 0x03, 0x03, 0x78, 0x01, 0x03, 0x79, 0x80, 0x03, 0x99, 0x01, 0x03, 0xB9, 0x8B, 0x03, 0xD9, 0x03, 0xFA, 0x04, 0x1B, 0x0C, 0x7C, 0x0C, 0xBC, 0x15, 0x1D, 0x0C, 0xBC, 0x04, 0x3A, 0x04, 0x1A, 0x03, 0xFA, 0x03, 0xD9, 0x03, 0xB9, 0x01, 0x03, 0x98, 0x81, 0x03, 0x99, 0x03, 0x98, 0x04, 0x03, 0x78, 0x01, 0x03, 0x79, 0x03, 0x03, 0x99, 0x02, 0x03, 0x79, 0x80, 0x03, 0x59, 0x06, 0x03, 0x79, 0x01, 0x03, 0x59, 0x01, 0x03, 0x79, 0x0C, 0x03, 0x59, 0x83, 0x03, 0x38, 0x03, 0x39, 0x03, 0x59, 0x03, 0x38, 0x01, 0x03, 0x59, 0x8B, 0x03, 0x58, 0x03, 0x59, 0x03, 0x79, 0x03, 0x9A, 0x0C, 0x1B, 0x0C, 0x3C, 0x14, 0xBD, 0x14, 0xFE, 0x1D, 0x3E, 0x1D, 0x3F, 0x02, 0xF8, 0x03, 0x19, 0x05, 0x02, 0xF8, 0x85, 0x02, 0xF7, 0x02, 0xD7, 0x02, 0xF8, 0x02, 0xD7, 0x02, 0xF7, 0x02, 0xF8, 0x01, 0x03, 0x18, 0x80, 0x03, 0x39, 0x01, 0x03, 0x59, 0x80, 0x03, 0x58, 0x03, 0x03, 0x38, 0x88, 0x03, 0x78, 0x03, 0xBA, 0x04, 0x3B, 0x0C, 0x9D, 0x1C, 0xFE, 0x1D, 0x1E, 0x14, 0xBE, 0x0C, 0x3C, 0x03, 0x79, 0x01, 0x03, 0x59, 0x01, 0x03, 0x39, 0x05, 0x03, 0x19, 0x80, 0x02, 0xF8, 0x01, 0x03, 0x18, 0x03, 0x03, 0x19, 0x04, 0x03, 0x39, 0x80, 0x03, 0x19, 0x06, 0x03, 0x39, 0x01, 0x03, 0x18, 0x03, 0x03, 0x39, 0x82, 0x03, 0x19, 0x03, 0x39, 0x03, 0x19, 0x04, 0x03, 0x59, + 0x04, 0x03, 0x39, 0x02, 0x03, 0x59, 0x01, 0x03, 0x79, 0x85, 0x03, 0x99, 0x03, 0xB9, 0x03, 0xFA, 0x04, 0x3B, 0x0C, 0x7C, 0x14, 0xDD, 0x01, 0x14, 0xDE, 0x82, 0x0C, 0x5C, 0x03, 0xBA, 0x03, 0x99, 0x01, 0x03, 0x59, 0x84, 0x03, 0x39, 0x03, 0x18, 0x03, 0x19, 0x03, 0x18, 0x03, 0x19, 0x02, 0x03, 0x39, 0x80, 0x03, 0x59, 0x05, 0x03, 0x39, 0x80, 0x03, 0x19, 0x04, 0x03, 0x39, 0x81, 0x03, 0x38, 0x03, 0x59, 0x03, 0x03, 0x39, 0x80, 0x03, 0x38, 0x04, 0x03, 0x59, 0x80, 0x03, 0x38, 0x05, 0x03, 0x59, 0x80, 0x03, 0x79, 0x03, 0x03, 0x38, 0x80, 0x03, 0x58, 0x01, 0x03, 0x79, 0x80, 0x03, 0x78, 0x01, 0x03, 0x98, 0x87, 0x03, 0xD9, 0x0C, 0x5B, 0x25, 0x1E, 0x25, 0x3F, 0x1C, 0xDE, 0x0C, 0x3B, 0x03, 0xB9, 0x03, 0x78, 0x01, 0x03, 0x79, 0x01, 0x03, 0x59, 0x04, 0x03, 0x39, 0x02, 0x03, 0x59, 0x81, 0x03, 0x39, 0x03, 0x79, 0x01, 0x03, 0x59, 0x80, 0x03, 0x58, 0x01, 0x03, 0x79, 0x04, 0x03, 0x58, 0x02, 0x03, 0x59, 0x82, 0x03, 0x79, 0x03, 0x59, 0x03, 0x79, 0x01, 0x03, 0x59, 0x82, 0x03, 0x38, 0x03, 0x59, 0x03, 0x79, 0x01, 0x03, 0x59, 0x81, 0x03, 0x79, 0x03, 0x58, 0x06, 0x03, 0x79, 0x02, 0x03, 0x58, 0x8C, 0x03, 0x79, 0x03, 0x99, 0x03, 0x78, 0x03, 0x58, 0x03, 0x78, 0x03, 0xFA, 0x24, 0xFD, 0x35, 0x7F, 0x25, 0x3E, 0x0C, 0x5B, 0x03, 0x98, 0x03, 0x78, 0x03, 0x58, 0x07, 0x03, 0x79, 0x82, 0x03, 0x59, 0x03, 0x79, 0x03, 0x59, 0x04, 0x03, 0x79, 0x82, 0x03, 0x7A, 0x03, 0x79, 0x03, 0x59, 0x01, 0x0B, 0x7A, 0x89, 0x03, 0x79, 0x03, 0x59, 0x0B, 0x9A, 0x03, 0x79, 0x0B, 0x7A, + 0x03, 0x7A, 0x03, 0x79, 0x03, 0x59, 0x0B, 0x9A, 0x03, 0x9A, 0x02, 0x03, 0x99, 0x80, 0x03, 0x79, 0x01, 0x03, 0x99, 0x85, 0x03, 0x9A, 0x0B, 0x9A, 0x0B, 0xBA, 0x03, 0x99, 0x0B, 0xBA, 0x0B, 0x99, 0x01, 0x0B, 0xBA, 0x86, 0x0B, 0x99, 0x03, 0x79, 0x03, 0x99, 0x03, 0x78, 0x03, 0x98, 0x03, 0x78, 0x03, 0x57, 0x01, 0x03, 0x78, 0x8C, 0x03, 0xF9, 0x2D, 0x3E, 0x3D, 0xDF, 0x3D, 0x9F, 0x14, 0x5B, 0x03, 0x58, 0x03, 0x37, 0x03, 0x38, 0x03, 0x58, 0x0B, 0x99, 0x0B, 0x79, 0x0B, 0x99, 0x0B, 0x79, 0x01, 0x0B, 0xBA, 0x85, 0x0B, 0x79, 0x03, 0x79, 0x0B, 0x9A, 0x03, 0x79, 0x0B, 0x99, 0x0B, 0x79, 0x01, 0x0B, 0x9A, 0x86, 0x0B, 0xBA, 0x0B, 0x9A, 0x0B, 0xBA, 0x0B, 0x99, 0x0B, 0xBA, 0x0B, 0x9A, 0x0B, 0xBA, 0x02, 0x0B, 0x9A, 0x01, 0x0B, 0xBA, 0x85, 0x0B, 0x9A, 0x03, 0x99, 0x0B, 0xBA, 0x0B, 0xDA, 0x0B, 0xBA, 0x0B, 0x9A, 0x02, 0x0B, 0xBA, 0x80, 0x0B, 0x9A, 0x01, 0x0B, 0xBA, 0x01, 0x0B, 0xBB, 0x82, 0x13, 0xBB, 0x0B, 0x9A, 0x13, 0xDB, 0x01, 0x0B, 0x9A, 0x01, 0x0B, 0xBA, 0x81, 0x03, 0x99, 0x03, 0xB9, 0x02, 0x03, 0x99, 0x86, 0x03, 0x98, 0x03, 0xD9, 0x35, 0x5E, 0x45, 0xDF, 0x35, 0x3F, 0x0B, 0xFA, 0x03, 0x58, 0x02, 0x03, 0x79, 0x80, 0x0B, 0x9A, 0x01, 0x0B, 0x99, 0x81, 0x03, 0x79, 0x0B, 0x99, 0x01, 0x0B, 0xBA, 0x80, 0x0B, 0x99, 0x01, 0x13, 0xDA, 0x81, 0x0B, 0x9A, 0x0B, 0x79, 0x02, 0x13, 0xBA, 0x84, 0x0B, 0x9A, 0x13, 0xBA, 0x0B, 0x9A, 0x0B, 0xBA, 0x0B, 0x9A, 0x02, 0x0B, 0xBA, 0x81, 0x0B, 0x99, 0x13, 0xBA, 0x01, 0x0B, 0xBA, 0x01, 0x13, 0xBA, 0x82, 0x13, 0x9A, + 0x13, 0xBA, 0x0B, 0xB9, 0x05, 0x13, 0xBA, 0x80, 0x13, 0xDA, 0x02, 0x13, 0xBA, 0x8F, 0x13, 0xDA, 0x13, 0xBA, 0x13, 0xDA, 0x0B, 0xBA, 0x13, 0xDA, 0x0B, 0xB9, 0x13, 0xDA, 0x0B, 0x99, 0x03, 0x98, 0x03, 0x78, 0x03, 0x37, 0x1C, 0x3B, 0x45, 0xBF, 0x2D, 0x1E, 0x1C, 0x7C, 0x0B, 0xDA, 0x01, 0x03, 0x99, 0x80, 0x0B, 0xB9, 0x01, 0x0B, 0x99, 0x01, 0x13, 0xBA, 0x80, 0x13, 0x9A, 0x01, 0x13, 0xBA, 0x80, 0x1B, 0xDA, 0x05, 0x13, 0xBA, 0x80, 0x13, 0x9A, 0x01, 0x13, 0xBA, 0x01, 0x13, 0xDA, 0x01, 0x13, 0xBA, 0x80, 0x13, 0xDA, 0x01, 0x13, 0xBA, 0x80, 0x13, 0xDA, 0x01, 0x13, 0xBA, 0x83, 0x1B, 0xDB, 0x13, 0xBA, 0x13, 0xDA, 0x1B, 0xDA, 0x01, 0x13, 0xBA, 0x01, 0x1B, 0xDA, 0x81, 0x13, 0xDA, 0x13, 0xBA, 0x02, 0x1B, 0xDA, 0x80, 0x13, 0xBA, 0x01, 0x13, 0xDA, 0x80, 0x1B, 0xDA, 0x03, 0x1B, 0xFB, 0x81, 0x0B, 0x99, 0x1B, 0xFB, 0x01, 0x13, 0xDA, 0x80, 0x0B, 0xB9, 0x01, 0x0B, 0xB8, 0x83, 0x3D, 0x9F, 0x24, 0xBC, 0x13, 0xFA, 0x13, 0xFB, 0x01, 0x13, 0xDA, 0x82, 0x1B, 0xDB, 0x13, 0xBA, 0x1B, 0xDA, 0x01, 0x13, 0xBA, 0x80, 0x13, 0x99, 0x02, 0x13, 0xBA, 0x80, 0x13, 0xB9, 0x01, 0x13, 0xBA, 0x80, 0x1B, 0xDA, 0x0E, 0x13, 0xBA, 0x01, 0x13, 0xDA, 0x8D, 0x13, 0xBA, 0x13, 0xB9, 0x13, 0xDA, 0x13, 0xBA, 0x13, 0xDA, 0x13, 0xBA, 0x13, 0xDA, 0x13, 0xB9, 0x13, 0xBA, 0x13, 0xDA, 0x13, 0xBA, 0x13, 0xB9, 0x13, 0xDA, 0x13, 0xBA, 0x01, 0x13, 0xDA, 0x01, 0x13, 0xBA, 0x80, 0x13, 0xDA, 0x01, 0x1B, 0xFA, 0x88, 0x13, 0xB9, 0x1B, 0xFA, 0x13, 0xD9, 0x13, 0xB9, 0x0B, 0xB8, 0x3D, 0x9F, + 0x24, 0xDC, 0x1C, 0x5B, 0x13, 0xFA, 0x01, 0x13, 0xDA, 0x80, 0x1B, 0xFB, 0x01, 0x1B, 0xDA, 0x90, 0x13, 0xBA, 0x1B, 0xDA, 0x13, 0xBA, 0x13, 0xDA, 0x13, 0xBA, 0x13, 0xDA, 0x13, 0xBA, 0x1B, 0xDA, 0x13, 0xDA, 0x13, 0xBA, 0x13, 0x99, 0x13, 0xDA, 0x13, 0xBA, 0x13, 0xB9, 0x13, 0xBA, 0x13, 0xB9, 0x13, 0x99, 0x01, 0x13, 0xBA, 0x86, 0x13, 0xB9, 0x13, 0x99, 0x13, 0xBA, 0x13, 0xDA, 0x13, 0xB9, 0x13, 0xBA, 0x13, 0xDA, 0x02, 0x13, 0xBA, 0x80, 0x1B, 0xDA, 0x0A, 0x13, 0xBA, 0x81, 0x1B, 0xDA, 0x13, 0xBA, 0x01, 0x13, 0xB9, 0x82, 0x13, 0xBA, 0x13, 0xB9, 0x13, 0xDA, 0x01, 0x13, 0xBA, 0x80, 0x1B, 0xBA, 0x01, 0x13, 0xB9, 0x87, 0x0B, 0xB9, 0x0B, 0xB8, 0x2D, 0x1E, 0x24, 0xDC, 0x14, 0x5B, 0x0B, 0xFA, 0x0B, 0xD9, 0x0B, 0xDA, 0x01, 0x13, 0xDA, 0x80, 0x1C, 0x1B, 0x01, 0x13, 0xDA, 0x82, 0x0B, 0x99, 0x13, 0xBA, 0x0B, 0xB9, 0x07, 0x13, 0xBA, 0x82, 0x13, 0xB9, 0x13, 0x99, 0x13, 0xDA, 0x01, 0x13, 0xBA, 0x01, 0x13, 0xB9, 0x01, 0x13, 0xBA, 0x01, 0x13, 0xDA, 0x80, 0x13, 0xB9, 0x09, 0x13, 0xBA, 0x80, 0x13, 0xDA, 0x04, 0x13, 0xBA, 0x82, 0x13, 0xB9, 0x13, 0xBA, 0x13, 0xB9, 0x02, 0x0B, 0x79, 0x88, 0x0B, 0x99, 0x0B, 0x79, 0x03, 0x58, 0x03, 0x37, 0x03, 0x78, 0x2D, 0x1E, 0x3D, 0xDF, 0x35, 0x7F, 0x03, 0xF9, 0x01, 0x03, 0x98, 0x02, 0x0B, 0xB9, 0x87, 0x13, 0xDA, 0x13, 0xB9, 0x13, 0xDA, 0x0B, 0x99, 0x13, 0xBA, 0x0B, 0x99, 0x13, 0xBA, 0x13, 0x99, 0x01, 0x13, 0xBA, 0x81, 0x1B, 0xDA, 0x13, 0xDA, 0x01, 0x1B, 0xDB, 0x01, 0x1B, 0xBA, 0x80, 0x1B, 0xDA, 0x02, 0x1B, 0xBA, + 0x82, 0x23, 0xDA, 0x23, 0xDB, 0x23, 0xDA, 0x01, 0x23, 0xDB, 0x81, 0x23, 0xBB, 0x2B, 0xDB, 0x05, 0x2B, 0xFB, 0x01, 0x2C, 0x1B, 0x01, 0x34, 0x1B, 0x82, 0x33, 0xFB, 0x34, 0x1B, 0x33, 0xFB, 0x01, 0x3C, 0x1B, 0x80, 0x3B, 0xFB, 0x01, 0x33, 0xDA, 0x8E, 0x3B, 0xDA, 0x43, 0xFB, 0x4B, 0xDB, 0x53, 0x9A, 0x53, 0x59, 0x63, 0x19, 0x7B, 0x59, 0x82, 0xB7, 0x79, 0xD4, 0x92, 0x35, 0xA2, 0x34, 0xA1, 0xF3, 0xA1, 0xD3, 0xA9, 0xF3, 0xB1, 0xF3, 0x01, 0xA9, 0xD3, 0x91, 0xB2, 0x14, 0xA9, 0xF3, 0xA1, 0xF3, 0x9A, 0x13, 0x92, 0x33, 0x82, 0x32, 0x6A, 0x52, 0x39, 0xEE, 0x8D, 0xFC, 0x7D, 0xFB, 0x7E, 0x1C, 0x85, 0xDB, 0x95, 0x7C, 0x5A, 0x91, 0x7A, 0x93, 0x8A, 0x33, 0x9A, 0x13, 0xA1, 0xF3, 0x01, 0xA9, 0xD3, 0x94, 0xA9, 0xD4, 0xB1, 0xF4, 0xA9, 0xF4, 0xAA, 0x14, 0xA1, 0xF4, 0x92, 0x14, 0x7A, 0x14, 0x72, 0xB7, 0x6C, 0x1C, 0x3B, 0x59, 0x2B, 0x7A, 0x2B, 0xBB, 0x23, 0xBA, 0x23, 0xBB, 0x1B, 0xBA, 0x1B, 0x7A, 0x1B, 0xBB, 0x1B, 0x9A, 0x1B, 0xBB, 0x1B, 0x9A, 0x13, 0x9A, 0x02, 0x13, 0x7A, 0x80, 0x0B, 0x59, 0x01, 0x0B, 0x79, 0x8E, 0x03, 0x59, 0x03, 0x58, 0x03, 0x38, 0x03, 0x58, 0x03, 0xDA, 0x2D, 0x1E, 0x35, 0xBF, 0x35, 0x9F, 0x25, 0x3F, 0x14, 0x7C, 0x03, 0xDA, 0x03, 0x99, 0x03, 0x79, 0x03, 0x78, 0x03, 0x58, 0x01, 0x03, 0x99, 0x84, 0x03, 0xBA, 0x0B, 0xBA, 0x03, 0x99, 0x03, 0x59, 0x03, 0x79, 0x02, 0x03, 0x58, 0x01, 0x03, 0x59, 0x80, 0x03, 0x79, 0x01, 0x03, 0x7A, 0x81, 0x03, 0x59, 0x03, 0x7A, 0x03, 0x03, 0x79, 0x82, 0x03, 0x59, 0x03, 0x79, 0x03, 0x59, 0x02, 0x03, + 0x79, 0x02, 0x03, 0x59, 0x81, 0x03, 0x79, 0x03, 0x59, 0x03, 0x03, 0x79, 0x80, 0x03, 0x9A, 0x01, 0x03, 0x79, 0x02, 0x03, 0x59, 0x01, 0x03, 0x58, 0x02, 0x03, 0x59, 0x02, 0x03, 0x58, 0x88, 0x03, 0x99, 0x04, 0x1A, 0x04, 0x5B, 0x14, 0xDD, 0x25, 0x5F, 0x2D, 0x7F, 0x1C, 0xDD, 0x0C, 0x1A, 0x03, 0xB9, 0x01, 0x03, 0x99, 0x01, 0x03, 0x79, 0x80, 0x03, 0x58, 0x01, 0x03, 0x59, 0x80, 0x03, 0x99, 0x01, 0x03, 0x9A, 0x01, 0x03, 0x79, 0x0A, 0x03, 0x59, 0x84, 0x03, 0x79, 0x03, 0x59, 0x03, 0x79, 0x03, 0x59, 0x03, 0x79, 0x0B, 0x03, 0x59, 0x80, 0x03, 0x39, 0x04, 0x03, 0x59, 0x03, 0x03, 0x38, 0x85, 0x03, 0x59, 0x03, 0x79, 0x03, 0x9A, 0x03, 0xBA, 0x04, 0x1B, 0x14, 0xDE, 0x01, 0x25, 0x3F, 0x84, 0x24, 0xFE, 0x14, 0x7C, 0x04, 0x1A, 0x03, 0xDA, 0x03, 0xB9, 0x01, 0x03, 0x99, 0x81, 0x03, 0x79, 0x03, 0x59, 0x01, 0x03, 0x58, 0x01, 0x03, 0x79, 0x02, 0x03, 0x59, 0x04, 0x03, 0x39, 0x80, 0x03, 0x19, 0x15, 0x03, 0x39, 0x80, 0x03, 0x38, 0x04, 0x03, 0x39, 0x80, 0x03, 0x38, 0x02, 0x03, 0x59, 0x01, 0x03, 0x79, 0x89, 0x03, 0x99, 0x03, 0xB9, 0x04, 0x1B, 0x14, 0xFE, 0x1D, 0x3F, 0x1C, 0xFE, 0x14, 0x9D, 0x0C, 0x3B, 0x03, 0xFA, 0x03, 0xB9, 0x02, 0x03, 0x99, 0x02, 0x03, 0x79, 0x07, 0x03, 0x59, 0x05, 0x03, 0x39, 0x01, 0x03, 0x19, 0x07, 0x03, 0x39, 0x80, 0x03, 0x19, 0x01, 0x03, 0x39, 0x05, 0x03, 0x19, 0x01, 0x03, 0x39, 0x04, 0x03, 0x19, 0x82, 0x02, 0xF8, 0x03, 0x18, 0x02, 0xF8, 0x01, 0x03, 0x18, 0x01, 0x03, 0x19, 0x83, 0x03, 0x39, 0x03, 0x9A, 0x03, 0xDB, 0x0C, 0x5C, + 0x01, 0x0C, 0x9D, 0x02, 0x03, 0x39, 0x81, 0x0B, 0x5A, 0x03, 0x5A, 0x01, 0x0B, 0x7A, 0x01, 0x0B, 0x9A, 0x04, 0x0B, 0xBB, 0x81, 0x0B, 0x9B, 0x03, 0x5A, 0x01, 0x03, 0x39, 0x02, 0x03, 0x38, 0x89, 0x03, 0x59, 0x03, 0x99, 0x0B, 0xFB, 0x1C, 0x7D, 0x24, 0xDF, 0x25, 0x1F, 0x2D, 0x3F, 0x0C, 0x5C, 0x03, 0xBA, 0x03, 0x59, 0x02, 0x03, 0x39, 0x80, 0x03, 0x19, 0x02, 0x03, 0x3A, 0x82, 0x03, 0x5A, 0x03, 0x5B, 0x03, 0x7B, 0x03, 0x0B, 0x7B, 0x82, 0x0B, 0x7A, 0x0B, 0x7B, 0x0B, 0x9B, 0x02, 0x03, 0x5A, 0x85, 0x0B, 0x7B, 0x03, 0x3A, 0x03, 0x7B, 0x03, 0x5A, 0x0B, 0x7B, 0x03, 0x7A, 0x04, 0x0B, 0x7B, 0x02, 0x0B, 0x9B, 0x81, 0x0B, 0xBB, 0x0B, 0x7A, 0x02, 0x0B, 0x9B, 0x01, 0x0B, 0xBB, 0x82, 0x03, 0x9B, 0x0B, 0xBB, 0x03, 0x9A, 0x01, 0x03, 0x9B, 0x01, 0x03, 0x9A, 0x80, 0x0B, 0xBB, 0x03, 0x03, 0x7A, 0x8C, 0x03, 0x79, 0x03, 0x9A, 0x03, 0xBA, 0x03, 0xFB, 0x14, 0x5C, 0x1C, 0xBD, 0x24, 0xFF, 0x2D, 0x5F, 0x14, 0xBD, 0x04, 0x1B, 0x03, 0x79, 0x03, 0x59, 0x03, 0x79, 0x01, 0x03, 0x7A, 0x81, 0x03, 0x9B, 0x0B, 0x9B, 0x01, 0x0B, 0xBB, 0x81, 0x13, 0xDC, 0x0B, 0x9B, 0x01, 0x13, 0xBC, 0x84, 0x13, 0xDC, 0x13, 0xBC, 0x0B, 0xBC, 0x13, 0xBC, 0x13, 0xDC, 0x02, 0x13, 0xBC, 0x02, 0x13, 0xDC, 0x80, 0x0B, 0xBB, 0x04, 0x13, 0xDC, 0x80, 0x0B, 0xBC, 0x01, 0x13, 0xDC, 0x82, 0x13, 0xBB, 0x0B, 0xBB, 0x13, 0xBB, 0x02, 0x0B, 0xBB, 0x02, 0x13, 0xDB, 0x01, 0x0B, 0xDB, 0x87, 0x0B, 0xBB, 0x0B, 0xFB, 0x0B, 0xDB, 0x0B, 0xFB, 0x0B, 0xDB, 0x0B, 0xFB, 0x0B, 0xDA, 0x03, 0xBA, 0x01, 0x03, + 0x99, 0x83, 0x03, 0xBA, 0x03, 0xFA, 0x14, 0x7C, 0x1C, 0xDE, 0x01, 0x1C, 0xBE, 0x80, 0x0C, 0x3C, 0x01, 0x03, 0xDA, 0x02, 0x03, 0xBA, 0x81, 0x03, 0x9A, 0x0B, 0xBB, 0x02, 0x13, 0xDC, 0x80, 0x13, 0xFC, 0x04, 0x1B, 0xFC, 0x88, 0x13, 0xFC, 0x13, 0xDC, 0x1B, 0xFC, 0x13, 0xFC, 0x13, 0xDB, 0x13, 0xFC, 0x14, 0x1C, 0x13, 0xFC, 0x1C, 0x1C, 0x02, 0x13, 0xFC, 0x80, 0x1C, 0x1C, 0x03, 0x13, 0xFC, 0x80, 0x13, 0xDC, 0x02, 0x1B, 0xFC, 0x83, 0x13, 0xFB, 0x14, 0x1C, 0x13, 0xFB, 0x13, 0xFC, 0x01, 0x13, 0xFB, 0x83, 0x13, 0xFC, 0x1C, 0x1C, 0x14, 0x1C, 0x1C, 0x3C, 0x02, 0x1C, 0x1C, 0x02, 0x1C, 0x3C, 0x84, 0x14, 0x1C, 0x0B, 0xDA, 0x03, 0xBA, 0x0C, 0x1B, 0x24, 0xBE, 0x01, 0x2D, 0x1F, 0x83, 0x24, 0xDE, 0x14, 0x5C, 0x0C, 0x1B, 0x0B, 0xFB, 0x01, 0x0B, 0xDA, 0x01, 0x0B, 0xDB, 0x83, 0x13, 0xFB, 0x13, 0xDB, 0x13, 0xFC, 0x1B, 0xFC, 0x01, 0x1C, 0x1C, 0x01, 0x1C, 0x1D, 0x82, 0x1C, 0x1C, 0x1C, 0x1D, 0x1C, 0x3D, 0x03, 0x1C, 0x1D, 0x81, 0x1B, 0xFC, 0x1C, 0x1D, 0x01, 0x1C, 0x1C, 0x82, 0x1B, 0xFC, 0x24, 0x1D, 0x1C, 0x1C, 0x01, 0x1B, 0xFC, 0x80, 0x24, 0x1D, 0x01, 0x1C, 0x1C, 0x01, 0x1B, 0xFC, 0x87, 0x13, 0xFC, 0x1C, 0x3C, 0x14, 0x1C, 0x13, 0xFC, 0x1C, 0x3C, 0x1C, 0x1C, 0x1C, 0x3C, 0x24, 0x3D, 0x01, 0x1B, 0xFC, 0x01, 0x1C, 0x1C, 0x81, 0x1C, 0x3C, 0x24, 0x5D, 0x01, 0x1C, 0x3C, 0x02, 0x14, 0x1B, 0x8C, 0x1C, 0x3C, 0x14, 0x1B, 0x03, 0xD9, 0x14, 0x5C, 0x35, 0x3F, 0x3D, 0x9F, 0x2D, 0x3F, 0x1C, 0x7C, 0x14, 0x1B, 0x13, 0xFB, 0x1C, 0x1B, 0x1C, 0x3C, 0x24, 0x3C, 0x01, + 0x1B, 0xFB, 0x82, 0x1B, 0xFC, 0x23, 0xFC, 0x24, 0x1C, 0x01, 0x24, 0x3D, 0x82, 0x2C, 0x5D, 0x24, 0x5D, 0x2C, 0x5D, 0x02, 0x24, 0x3D, 0x01, 0x24, 0x5D, 0x82, 0x24, 0x3D, 0x24, 0x5D, 0x2C, 0x7D, 0x01, 0x24, 0x3D, 0x81, 0x24, 0x5D, 0x2C, 0x5D, 0x02, 0x24, 0x3D, 0x85, 0x24, 0x5D, 0x24, 0x3D, 0x24, 0x5D, 0x24, 0x3D, 0x24, 0x5D, 0x24, 0x3D, 0x05, 0x24, 0x5D, 0x01, 0x24, 0x3D, 0x84, 0x2C, 0x5D, 0x24, 0x3D, 0x24, 0x5D, 0x1C, 0x1D, 0x24, 0x1D, 0x01, 0x24, 0x5D, 0x8E, 0x24, 0x3C, 0x24, 0x5D, 0x14, 0x1B, 0x14, 0x3B, 0x14, 0x3C, 0x1C, 0x5C, 0x24, 0xBE, 0x35, 0x5F, 0x3D, 0x7F, 0x2C, 0xFE, 0x2C, 0xBE, 0x1C, 0x3C, 0x13, 0xFB, 0x1B, 0xFC, 0x1C, 0x1C, 0x01, 0x24, 0x3C, 0x80, 0x24, 0x3D, 0x01, 0x24, 0x5D, 0x84, 0x2C, 0x7E, 0x34, 0xBE, 0x2C, 0x5D, 0x24, 0x5D, 0x24, 0x3D, 0x01, 0x2C, 0x5D, 0x80, 0x2C, 0x7D, 0x02, 0x2C, 0x5D, 0x80, 0x2C, 0x7E, 0x01, 0x2C, 0x5D, 0x01, 0x2C, 0x7D, 0x02, 0x2C, 0x5D, 0x80, 0x2C, 0x7D, 0x02, 0x2C, 0x5D, 0x84, 0x2C, 0x7E, 0x2C, 0x5D, 0x2C, 0x3D, 0x2C, 0x5D, 0x2C, 0x7D, 0x01, 0x2C, 0x5D, 0x02, 0x2C, 0x7D, 0x80, 0x34, 0x7E, 0x02, 0x2C, 0x5D, 0x88, 0x2C, 0x7D, 0x24, 0x5D, 0x24, 0x3C, 0x24, 0x5C, 0x2C, 0x7D, 0x24, 0x3C, 0x24, 0x5C, 0x1C, 0x3B, 0x24, 0x3C, 0x01, 0x1C, 0x3B, 0x86, 0x1C, 0x5C, 0x3D, 0x7F, 0x3D, 0x5F, 0x2C, 0xDD, 0x24, 0xBD, 0x24, 0x7D, 0x1C, 0x5C, 0x01, 0x24, 0x5D, 0x01, 0x2C, 0x7D, 0x82, 0x2C, 0x9E, 0x2C, 0x7D, 0x2C, 0x7E, 0x03, 0x2C, 0x5D, 0x86, 0x2C, 0x7D, 0x2C, 0x5D, 0x2C, 0x7D, 0x34, 0x7E, 0x2C, + 0x7D, 0x34, 0x7E, 0x34, 0x9E, 0x01, 0x2C, 0x7D, 0x03, 0x34, 0x9E, 0x87, 0x2C, 0x7D, 0x2C, 0x7E, 0x34, 0x9E, 0x34, 0x7E, 0x34, 0x9E, 0x2C, 0x7D, 0x2C, 0x5D, 0x2C, 0x7D, 0x02, 0x34, 0x7E, 0x80, 0x34, 0x7D, 0x01, 0x2C, 0x7D, 0x80, 0x34, 0x9E, 0x01, 0x2C, 0x5D, 0x80, 0x2C, 0x7D, 0x01, 0x2C, 0x5D, 0x86, 0x34, 0x7D, 0x2C, 0x3C, 0x2C, 0x5D, 0x24, 0x3C, 0x2C, 0x5D, 0x24, 0x3C, 0x2C, 0x5C, 0x01, 0x24, 0x1C, 0x86, 0x24, 0x1B, 0x24, 0x3C, 0x1C, 0x1B, 0x24, 0x7C, 0x4D, 0xBF, 0x24, 0xBC, 0x24, 0x7C, 0x02, 0x24, 0x3C, 0x01, 0x24, 0x1C, 0x81, 0x2C, 0x3D, 0x2C, 0x5D, 0x04, 0x2C, 0x7D, 0x81, 0x34, 0x7D, 0x2C, 0x7D, 0x01, 0x2C, 0x5D, 0x80, 0x34, 0x5D, 0x02, 0x34, 0x7E, 0x01, 0x34, 0x9E, 0x01, 0x34, 0x7E, 0x80, 0x34, 0x7D, 0x01, 0x34, 0x7E, 0x81, 0x2C, 0x7D, 0x34, 0x9E, 0x03, 0x34, 0x7E, 0x01, 0x34, 0x9E, 0x81, 0x34, 0x7D, 0x34, 0x9E, 0x01, 0x34, 0x7D, 0x80, 0x2C, 0x7D, 0x02, 0x34, 0x7D, 0x81, 0x2C, 0x7D, 0x34, 0x9D, 0x01, 0x34, 0x7D, 0x87, 0x2C, 0x7D, 0x34, 0x9D, 0x34, 0x7D, 0x2C, 0x7D, 0x2C, 0x3C, 0x2C, 0x5C, 0x24, 0x1C, 0x2C, 0x3C, 0x02, 0x24, 0x1B, 0x83, 0x1C, 0x3B, 0x3D, 0x7F, 0x2C, 0xFE, 0x1C, 0x5C, 0x01, 0x1C, 0x1B, 0x83, 0x24, 0x3C, 0x24, 0x1C, 0x24, 0x3C, 0x2C, 0x3C, 0x01, 0x2C, 0x5D, 0x81, 0x2C, 0x7D, 0x34, 0x7D, 0x02, 0x2C, 0x5D, 0x80, 0x2C, 0x3C, 0x02, 0x2C, 0x5D, 0x80, 0x2C, 0x3D, 0x02, 0x2C, 0x5D, 0x83, 0x34, 0x7E, 0x34, 0x7D, 0x2C, 0x7D, 0x34, 0x7D, 0x01, 0x2C, 0x7D, 0x01, 0x2C, 0x5D, 0x80, 0x2C, 0x7D, 0x02, 0x34, 0x7E, + 0x82, 0x34, 0x7D, 0x34, 0x7E, 0x2C, 0x5D, 0x01, 0x2C, 0x7D, 0x80, 0x34, 0x7E, 0x02, 0x2C, 0x5D, 0x01, 0x34, 0x7D, 0x85, 0x2C, 0x5D, 0x34, 0x7D, 0x2C, 0x7D, 0x2C, 0x5D, 0x2C, 0x7D, 0x24, 0x5D, 0x02, 0x2C, 0x5D, 0x82, 0x24, 0x1C, 0x2C, 0x3C, 0x2C, 0x1C, 0x01, 0x2C, 0x3C, 0x85, 0x24, 0x3C, 0x2C, 0x7D, 0x24, 0x5C, 0x35, 0x3F, 0x3D, 0x7F, 0x1C, 0x7C, 0x01, 0x1C, 0x3B, 0x80, 0x1C, 0x3C, 0x01, 0x24, 0x3C, 0x83, 0x2C, 0x5D, 0x2C, 0x7D, 0x2C, 0x5D, 0x34, 0x7D, 0x01, 0x2C, 0x7D, 0x83, 0x34, 0x7D, 0x34, 0x7E, 0x2C, 0x5D, 0x34, 0x7D, 0x01, 0x2C, 0x5D, 0x80, 0x2C, 0x7D, 0x01, 0x34, 0x7E, 0x81, 0x2C, 0x7D, 0x2C, 0x5D, 0x01, 0x2C, 0x7D, 0x80, 0x34, 0x9E, 0x0C, 0x2C, 0x5D, 0x8D, 0x2C, 0x7E, 0x2C, 0x5D, 0x2C, 0x7E, 0x2C, 0x5D, 0x2C, 0x7D, 0x2C, 0x5D, 0x2C, 0x7E, 0x34, 0x9E, 0x2C, 0x7D, 0x34, 0x9E, 0x34, 0xBE, 0x2C, 0x7D, 0x34, 0x9E, 0x2C, 0x7E, 0x01, 0x2C, 0x7D, 0x88, 0x2C, 0x9D, 0x24, 0x3C, 0x13, 0xFB, 0x1C, 0x3B, 0x2C, 0xDE, 0x3D, 0x7F, 0x35, 0x3F, 0x24, 0x9C, 0x14, 0x3B, 0x01, 0x14, 0x1B, 0x81, 0x13, 0xFB, 0x1C, 0x1B, 0x01, 0x24, 0x1C, 0x86, 0x24, 0x3C, 0x2C, 0x3C, 0x2C, 0x3D, 0x2C, 0x5D, 0x2C, 0x1C, 0x2C, 0x3D, 0x2C, 0x1C, 0x01, 0x2C, 0x3D, 0x84, 0x2C, 0x3C, 0x2C, 0x3D, 0x34, 0x5D, 0x2C, 0x3D, 0x34, 0x5D, 0x01, 0x34, 0x3D, 0x03, 0x34, 0x5D, 0x80, 0x3C, 0x5D, 0x02, 0x3C, 0x5E, 0x03, 0x3C, 0x5D, 0x81, 0x3C, 0x7D, 0x3C, 0x7E, 0x01, 0x3C, 0x5D, 0x80, 0x3C, 0x7D, 0x03, 0x44, 0x7E, 0x02, 0x4C, 0x9E, 0x80, 0x54, 0x9E, 0x01, 0x54, 0xBE, + 0x8E, 0x5C, 0xBE, 0x54, 0x7D, 0x5C, 0x7D, 0x64, 0x5D, 0x6C, 0x5D, 0x7C, 0x5D, 0x9C, 0xDF, 0xAC, 0xDF, 0x7A, 0x76, 0x81, 0xD3, 0x9A, 0x14, 0xA2, 0x14, 0xAA, 0x14, 0xA1, 0xB2, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x93, 0xA9, 0xD3, 0xA1, 0xD3, 0xA9, 0xD3, 0xAA, 0x14, 0xA2, 0x33, 0x92, 0x53, 0x82, 0x93, 0x5A, 0x30, 0x4B, 0x12, 0x9E, 0x5E, 0x85, 0xDB, 0x8D, 0xBC, 0x9D, 0x9C, 0x62, 0xD3, 0x72, 0x52, 0x8A, 0x53, 0xA2, 0x74, 0xA2, 0x13, 0xA9, 0xF3, 0xA9, 0xD3, 0x01, 0xA9, 0xB3, 0x01, 0xA9, 0xF4, 0x88, 0xA1, 0xF4, 0x92, 0x14, 0x82, 0x14, 0x72, 0x76, 0x74, 0x1C, 0x64, 0x5D, 0x54, 0x7D, 0x44, 0x5D, 0x3C, 0x5D, 0x01, 0x3C, 0x7E, 0x84, 0x3C, 0x9E, 0x3C, 0x7E, 0x34, 0x7E, 0x34, 0x5E, 0x3C, 0x7E, 0x01, 0x34, 0x7E, 0x8F, 0x34, 0x5E, 0x34, 0x7E, 0x2C, 0x7E, 0x2C, 0x9E, 0x2C, 0x5D, 0x24, 0x5D, 0x24, 0x5C, 0x24, 0x5D, 0x1C, 0x3C, 0x0B, 0xFB, 0x0C, 0x1B, 0x24, 0xFE, 0x35, 0x5F, 0x2D, 0x5F, 0x24, 0xFE, 0x14, 0x9D, 0x01, 0x0C, 0x1B, 0x01, 0x0B, 0xFB, 0x88, 0x0B, 0xDA, 0x0B, 0x9A, 0x0B, 0xBA, 0x13, 0xFB, 0x13, 0xDB, 0x13, 0xFB, 0x1B, 0xFC, 0x1C, 0x1C, 0x13, 0xDB, 0x02, 0x1B, 0xFC, 0x83, 0x1B, 0xFD, 0x1C, 0x1D, 0x1C, 0x1C, 0x1C, 0x1D, 0x02, 0x1B, 0xFC, 0x82, 0x1C, 0x1D, 0x1B, 0xFC, 0x1C, 0x1D, 0x01, 0x1C, 0x1C, 0x84, 0x1C, 0x1D, 0x24, 0x1D, 0x1B, 0xFC, 0x1C, 0x1D, 0x1C, 0x1C, 0x01, 0x1C, 0x1D, 0x82, 0x1C, 0x1C, 0x1B, 0xFC, 0x1C, 0x1D, 0x01, 0x1C, 0x1C, 0x84, 0x1C, 0x1D, 0x1C, 0x1C, 0x1C, 0x3D, 0x24, 0x5D, 0x1C, 0x1D, 0x01, 0x1C, 0x1C, 0x01, 0x1C, + 0x3D, 0x80, 0x1C, 0x5D, 0x01, 0x1C, 0x3D, 0x84, 0x1C, 0x5D, 0x14, 0x3C, 0x14, 0x5D, 0x14, 0x9D, 0x14, 0xDD, 0x03, 0x1C, 0xFE, 0x83, 0x1C, 0xBD, 0x14, 0x5C, 0x0C, 0x3C, 0x0B, 0xDB, 0x01, 0x14, 0x1C, 0x01, 0x13, 0xFC, 0x80, 0x0B, 0xDB, 0x01, 0x03, 0x9A, 0x02, 0x0B, 0xDB, 0x85, 0x13, 0xFC, 0x13, 0xDB, 0x13, 0xDC, 0x13, 0xBB, 0x13, 0xDB, 0x13, 0xDC, 0x05, 0x13, 0xFC, 0x85, 0x13, 0xDB, 0x13, 0xDC, 0x13, 0xFC, 0x13, 0xDB, 0x13, 0xFC, 0x13, 0xDB, 0x02, 0x13, 0xFC, 0x82, 0x13, 0xDC, 0x13, 0xFC, 0x13, 0xDB, 0x02, 0x13, 0xDC, 0x81, 0x13, 0xBC, 0x13, 0xDC, 0x01, 0x13, 0xBB, 0x02, 0x13, 0xDC, 0x86, 0x13, 0xFC, 0x13, 0xDB, 0x13, 0xFC, 0x0B, 0xDB, 0x0B, 0xDC, 0x0B, 0xDB, 0x0C, 0x1C, 0x01, 0x0C, 0x3C, 0x89, 0x04, 0x1C, 0x0C, 0x7D, 0x24, 0xFF, 0x2D, 0x1F, 0x25, 0x1F, 0x24, 0xDE, 0x0C, 0x3C, 0x0C, 0x1C, 0x0B, 0xDB, 0x0B, 0xFB, 0x02, 0x0B, 0xDB, 0x81, 0x03, 0xBB, 0x03, 0x9A, 0x02, 0x03, 0x7A, 0x01, 0x03, 0x9A, 0x81, 0x0B, 0x9B, 0x0B, 0xBB, 0x04, 0x0B, 0x9B, 0x02, 0x13, 0xBC, 0x8E, 0x13, 0xBB, 0x13, 0xBC, 0x0B, 0xBB, 0x13, 0xDC, 0x0B, 0xBB, 0x13, 0xDC, 0x13, 0xBC, 0x13, 0xDC, 0x13, 0xBC, 0x13, 0xDC, 0x13, 0xBB, 0x13, 0xBC, 0x13, 0xBB, 0x13, 0xBC, 0x0B, 0xBB, 0x01, 0x13, 0xDC, 0x89, 0x0B, 0xBC, 0x0B, 0xBB, 0x0B, 0xDB, 0x0B, 0xBB, 0x0B, 0xDB, 0x0B, 0xBB, 0x0B, 0xDB, 0x0B, 0xBB, 0x0B, 0xDB, 0x03, 0xBA, 0x01, 0x03, 0xBB, 0x8A, 0x03, 0xDB, 0x04, 0x1B, 0x0C, 0x3C, 0x04, 0x3C, 0x0C, 0x7D, 0x1C, 0xDE, 0x1C, 0xFF, 0x14, 0xBD, 0x14, 0x7D, 0x04, + 0x1B, 0x03, 0xFB, 0x03, 0x03, 0xBA, 0x80, 0x0B, 0xBB, 0x01, 0x03, 0xBB, 0x82, 0x03, 0x9A, 0x03, 0x7A, 0x03, 0x5A, 0x01, 0x03, 0x59, 0x02, 0x03, 0x5A, 0x87, 0x03, 0x7A, 0x03, 0x5A, 0x03, 0x7A, 0x03, 0x5A, 0x0B, 0x7B, 0x03, 0x5A, 0x0B, 0x7B, 0x0B, 0x9B, 0x01, 0x0B, 0x7B, 0x85, 0x0B, 0x9B, 0x03, 0x7B, 0x0B, 0x9B, 0x03, 0x7B, 0x0B, 0x9B, 0x03, 0x7B, 0x09, 0x0B, 0x7B, 0x80, 0x0B, 0x9B, 0x01, 0x0B, 0x7A, 0x83, 0x0B, 0x5A, 0x0B, 0x9B, 0x0B, 0x7A, 0x0B, 0x9B, 0x02, 0x0B, 0x7A, 0x80, 0x0B, 0x9B, 0x01, 0x0B, 0xBB, 0x81, 0x03, 0xDB, 0x03, 0xBB, 0x01, 0x03, 0xDB, 0x85, 0x13, 0xBB, 0x13, 0x9B, 0x0B, 0x5A, 0x0B, 0x7A, 0x0B, 0x7B, 0x0B, 0x9B, 0x03, 0x0B, 0xBB, 0x80, 0x03, 0x9B, 0x01, 0x03, 0x9A, 0x02, 0x03, 0x59, 0x8D, 0x03, 0x9A, 0x13, 0xFC, 0x24, 0x5D, 0x2C, 0x9E, 0x34, 0xFF, 0x3D, 0x1F, 0x35, 0x1F, 0x34, 0xFF, 0x2C, 0xDF, 0x1C, 0x9E, 0x14, 0x3D, 0x0C, 0x1C, 0x0B, 0xFC, 0x0B, 0xDC, 0x03, 0x13, 0xDC, 0x81, 0x1B, 0xFD, 0x13, 0xBC, 0x01, 0x13, 0xDC, 0x04, 0x13, 0xBC, 0x80, 0x13, 0x9C, 0x01, 0x13, 0xBC, 0x81, 0x13, 0x9C, 0x0B, 0x9C, 0x05, 0x13, 0xBC, 0x87, 0x13, 0xDD, 0x13, 0xDC, 0x13, 0xDD, 0x1B, 0xDD, 0x13, 0xBC, 0x13, 0x9C, 0x1B, 0xDD, 0x13, 0xBC, 0x04, 0x13, 0xDC, 0x82, 0x13, 0xBC, 0x13, 0xBB, 0x13, 0xDC, 0x01, 0x0B, 0xBB, 0x80, 0x0B, 0xDC, 0x01, 0x0B, 0xBB, 0x02, 0x03, 0x9B, 0x01, 0x03, 0xBB, 0x80, 0x0B, 0xDB, 0x01, 0x0B, 0xFC, 0x8B, 0x14, 0x1D, 0x1C, 0x5D, 0x24, 0x9E, 0x2C, 0xDF, 0x2C, 0xFF, 0x2D, 0x1F, 0x24, 0xDF, 0x1C, 0x9E, + 0x14, 0x5D, 0x14, 0x3C, 0x14, 0x1C, 0x1C, 0x3D, 0x01, 0x1C, 0x1D, 0x83, 0x14, 0x1D, 0x1C, 0x1D, 0x14, 0x1D, 0x1C, 0x1D, 0x01, 0x13, 0xFD, 0x02, 0x13, 0xDC, 0x80, 0x13, 0xBC, 0x02, 0x13, 0xDC, 0x82, 0x13, 0xBC, 0x13, 0xDD, 0x1B, 0xDD, 0x02, 0x13, 0xDD, 0x85, 0x1B, 0xFD, 0x13, 0xFD, 0x13, 0xDD, 0x13, 0xDC, 0x1B, 0xFD, 0x13, 0xFD, 0x01, 0x1B, 0xFD, 0x80, 0x13, 0xDD, 0x01, 0x13, 0xDC, 0x81, 0x1B, 0xFD, 0x13, 0xDC, 0x01, 0x1B, 0xFC, 0x80, 0x13, 0xDC, 0x02, 0x1B, 0xFC, 0x81, 0x13, 0xFC, 0x14, 0x1C, 0x01, 0x13, 0xFC, 0x80, 0x0B, 0xFC, 0x01, 0x0B, 0xDB, 0x86, 0x0B, 0xFB, 0x0C, 0x1C, 0x0B, 0xFB, 0x14, 0x5C, 0x14, 0x5D, 0x24, 0xBE, 0x2D, 0x1F, 0x01, 0x35, 0x3F, 0x86, 0x2C, 0xFF, 0x24, 0xBF, 0x1C, 0x9E, 0x24, 0x9E, 0x24, 0xBF, 0x24, 0x9E, 0x24, 0x7E, 0x02, 0x24, 0x5E, 0x02, 0x1C, 0x1D, 0x82, 0x1B, 0xFD, 0x1C, 0x1D, 0x24, 0x1D, 0x02, 0x1C, 0x1D, 0x01, 0x1B, 0xFD, 0x80, 0x1C, 0x1D, 0x01, 0x1B, 0xFC, 0x04, 0x1C, 0x1D, 0x01, 0x1C, 0x3D, 0x02, 0x1C, 0x1D, 0x01, 0x24, 0x3D, 0x01, 0x24, 0x3E, 0x80, 0x1C, 0x1D, 0x04, 0x24, 0x3D, 0x80, 0x1C, 0x1C, 0x02, 0x24, 0x3D, 0x03, 0x1C, 0x3D, 0x80, 0x14, 0x1C, 0x01, 0x13, 0xFB, 0x87, 0x14, 0x1C, 0x14, 0x3C, 0x0C, 0x1C, 0x1C, 0x7D, 0x24, 0xBE, 0x2C, 0xFF, 0x2D, 0x1F, 0x2C, 0xFF, 0x01, 0x24, 0x9E, 0x87, 0x24, 0xBE, 0x2C, 0xBE, 0x2C, 0x9E, 0x24, 0x7D, 0x24, 0x5D, 0x24, 0x7D, 0x24, 0x5D, 0x24, 0x5E, 0x02, 0x24, 0x3D, 0x83, 0x24, 0x3E, 0x24, 0x3D, 0x24, 0x1D, 0x24, 0x3E, 0x02, 0x24, 0x3D, 0x01, 0x24, + 0x3E, 0x04, 0x24, 0x3D, 0x01, 0x24, 0x3E, 0x80, 0x24, 0x1D, 0x01, 0x2C, 0x3E, 0x81, 0x24, 0x3D, 0x24, 0x1D, 0x01, 0x24, 0x3D, 0x82, 0x2C, 0x3E, 0x24, 0x3E, 0x24, 0x5D, 0x02, 0x24, 0x5E, 0x02, 0x24, 0x5D, 0x01, 0x24, 0x3D, 0x89, 0x1C, 0x1C, 0x24, 0x3D, 0x24, 0x5D, 0x24, 0x3C, 0x1C, 0x3C, 0x24, 0x3D, 0x1C, 0x1C, 0x14, 0x1C, 0x14, 0x3C, 0x1C, 0x3C, 0x01, 0x1C, 0x7D, 0x82, 0x35, 0x1F, 0x35, 0x5F, 0x35, 0x1F, 0x01, 0x24, 0xBE, 0x01, 0x24, 0x9E, 0x84, 0x24, 0x7D, 0x2C, 0x7D, 0x24, 0x5D, 0x2C, 0x5D, 0x2C, 0x3D, 0x01, 0x24, 0x1D, 0x81, 0x2C, 0x3D, 0x24, 0x1D, 0x01, 0x2C, 0x3D, 0x81, 0x24, 0x3D, 0x2C, 0x3D, 0x01, 0x24, 0x3D, 0x80, 0x24, 0x1D, 0x05, 0x24, 0x3D, 0x82, 0x2C, 0x5D, 0x24, 0x3D, 0x2C, 0x5E, 0x05, 0x24, 0x3D, 0x80, 0x2C, 0x5E, 0x05, 0x24, 0x5D, 0x89, 0x24, 0x3D, 0x2C, 0x5E, 0x2C, 0x3D, 0x24, 0x3D, 0x2C, 0x3E, 0x2C, 0x5E, 0x24, 0x3D, 0x24, 0x1D, 0x24, 0x3D, 0x24, 0x5D, 0x02, 0x24, 0x3D, 0x80, 0x1C, 0x3C, 0x01, 0x14, 0x3C, 0x83, 0x1C, 0x7D, 0x2C, 0xFF, 0x35, 0x1F, 0x2C, 0xDE, 0x02, 0x2C, 0xBE, 0x01, 0x2C, 0x7E, 0x83, 0x2C, 0x5E, 0x24, 0x3D, 0x2C, 0x5E, 0x2C, 0x7E, 0x01, 0x2C, 0x5D, 0x80, 0x2C, 0x7E, 0x01, 0x2C, 0x5D, 0x01, 0x2C, 0x7E, 0x80, 0x24, 0x1D, 0x06, 0x2C, 0x3D, 0x80, 0x2C, 0x5D, 0x01, 0x2C, 0x3D, 0x84, 0x2C, 0x5D, 0x2C, 0x3D, 0x2C, 0x5D, 0x2C, 0x5E, 0x2C, 0x5D, 0x01, 0x2C, 0x5E, 0x83, 0x2C, 0x5D, 0x2C, 0x3D, 0x2C, 0x5D, 0x2C, 0x5E, 0x01, 0x2C, 0x5D, 0x87, 0x2C, 0x7D, 0x2C, 0x7E, 0x2C, 0x5D, 0x2C, 0x7E, 0x2C, + 0x5D, 0x2C, 0x3D, 0x2C, 0x5D, 0x2C, 0x7D, 0x02, 0x2C, 0x5D, 0x80, 0x2C, 0x7E, 0x02, 0x2C, 0x5D, 0x01, 0x2C, 0x7D, 0x82, 0x24, 0x5D, 0x24, 0x7D, 0x24, 0x9D, 0x01, 0x34, 0xFF, 0x01, 0x2C, 0xDE, 0x83, 0x2C, 0xBE, 0x2C, 0x9E, 0x2C, 0x7D, 0x2C, 0x9E, 0x01, 0x2C, 0x7E, 0x81, 0x2C, 0x7D, 0x2C, 0x9E, 0x04, 0x2C, 0x5D, 0x80, 0x34, 0x5E, 0x01, 0x2C, 0x5D, 0x01, 0x34, 0x5E, 0x02, 0x2C, 0x5D, 0x80, 0x34, 0x7E, 0x01, 0x2C, 0x5D, 0x81, 0x2C, 0x5E, 0x2C, 0x5D, 0x01, 0x2C, 0x7E, 0x01, 0x2C, 0x5E, 0x80, 0x2C, 0x7E, 0x01, 0x2C, 0x5D, 0x81, 0x34, 0x7E, 0x2C, 0x5E, 0x01, 0x2C, 0x5D, 0x88, 0x34, 0x7E, 0x2C, 0x5D, 0x34, 0x7E, 0x2C, 0x5E, 0x2C, 0x5D, 0x34, 0x5E, 0x34, 0x7E, 0x2C, 0x5D, 0x34, 0x7E, 0x01, 0x2C, 0x5D, 0x85, 0x34, 0x5D, 0x34, 0x7E, 0x2C, 0x5D, 0x2C, 0x7D, 0x34, 0x7E, 0x34, 0x7D, 0x01, 0x2C, 0x7D, 0x87, 0x2C, 0x5D, 0x24, 0x3C, 0x24, 0x5C, 0x3D, 0x3F, 0x45, 0x7F, 0x2C, 0xDE, 0x34, 0xDE, 0x3C, 0xDF, 0x04, 0x34, 0x7E, 0x01, 0x34, 0x9E, 0x04, 0x34, 0x7E, 0x80, 0x34, 0x5D, 0x01, 0x34, 0x7E, 0x02, 0x34, 0x5E, 0x81, 0x34, 0x7E, 0x2C, 0x5E, 0x01, 0x34, 0x5E, 0x01, 0x34, 0x7E, 0x01, 0x2C, 0x5D, 0x83, 0x34, 0x7E, 0x2C, 0x5E, 0x2C, 0x5D, 0x34, 0x5E, 0x01, 0x2C, 0x5E, 0x80, 0x34, 0x7E, 0x02, 0x2C, 0x5D, 0x80, 0x34, 0x5E, 0x01, 0x2C, 0x5D, 0x80, 0x34, 0x7D, 0x05, 0x2C, 0x5D, 0x83, 0x34, 0x7D, 0x2C, 0x5D, 0x34, 0x7D, 0x34, 0x9E, 0x01, 0x34, 0x7D, 0x01, 0x34, 0x9E, 0x89, 0x2C, 0x7D, 0x34, 0x7D, 0x34, 0x9E, 0x2C, 0x9D, 0x3D, 0x5F, 0x35, 0x3F, + 0x34, 0xDE, 0x34, 0xDF, 0x34, 0xBE, 0x34, 0x9E, 0x02, 0x34, 0x7E, 0x80, 0x34, 0x9E, 0x03, 0x34, 0x7E, 0x81, 0x34, 0x5D, 0x34, 0x7E, 0x01, 0x34, 0x7D, 0x08, 0x34, 0x7E, 0x84, 0x34, 0x5E, 0x34, 0x7E, 0x2C, 0x5E, 0x34, 0x5E, 0x34, 0x7E, 0x01, 0x2C, 0x5E, 0x80, 0x34, 0x7E, 0x01, 0x34, 0x5E, 0x80, 0x2C, 0x5E, 0x01, 0x34, 0x5E, 0x81, 0x2C, 0x5D, 0x2C, 0x5E, 0x01, 0x34, 0x5E, 0x01, 0x2C, 0x5D, 0x81, 0x34, 0x7E, 0x34, 0x5E, 0x02, 0x34, 0x7E, 0x80, 0x2C, 0x5E, 0x02, 0x2C, 0x7E, 0x85, 0x34, 0x7E, 0x34, 0x9E, 0x34, 0x7E, 0x3C, 0x9E, 0x34, 0x7E, 0x34, 0x7D, 0x01, 0x2C, 0x7D, 0x86, 0x2C, 0x9D, 0x34, 0xFE, 0x45, 0x9F, 0x3D, 0x3F, 0x2C, 0xDE, 0x2C, 0xBE, 0x2C, 0x9E, 0x02, 0x2C, 0x7D, 0x01, 0x34, 0x7E, 0x82, 0x2C, 0x5D, 0x34, 0x7D, 0x2C, 0x7D, 0x01, 0x34, 0x7E, 0x01, 0x2C, 0x5D, 0x81, 0x2C, 0x5E, 0x34, 0x7E, 0x01, 0x2C, 0x5E, 0x80, 0x34, 0x7E, 0x01, 0x2C, 0x5E, 0x86, 0x34, 0x7E, 0x2C, 0x5E, 0x2C, 0x5D, 0x2C, 0x5E, 0x34, 0x7E, 0x2C, 0x5E, 0x2C, 0x5D, 0x01, 0x2C, 0x5E, 0x81, 0x2C, 0x3D, 0x2C, 0x5E, 0x01, 0x34, 0x7E, 0x01, 0x2C, 0x5E, 0x01, 0x34, 0x7E, 0x01, 0x2C, 0x5E, 0x80, 0x2C, 0x7E, 0x02, 0x2C, 0x5E, 0x80, 0x2C, 0x5D, 0x01, 0x34, 0x7E, 0x80, 0x2C, 0x5E, 0x02, 0x2C, 0x5D, 0x8D, 0x34, 0x9E, 0x2C, 0x7D, 0x2C, 0x5D, 0x2C, 0x7D, 0x2C, 0x5D, 0x24, 0x5C, 0x2C, 0xBE, 0x34, 0xFE, 0x3D, 0x3F, 0x35, 0x3F, 0x35, 0x1F, 0x2C, 0xDE, 0x2C, 0xBE, 0x2C, 0x9D, 0x01, 0x2C, 0x7D, 0x82, 0x34, 0x7E, 0x34, 0x7D, 0x34, 0x7E, 0x01, 0x34, 0x5D, 0x80, 0x34, + 0x5E, 0x02, 0x34, 0x3D, 0x82, 0x34, 0x5D, 0x34, 0x5E, 0x34, 0x5D, 0x06, 0x34, 0x5E, 0x80, 0x3C, 0x5E, 0x01, 0x3C, 0x7E, 0x82, 0x3C, 0x5E, 0x3C, 0x7E, 0x44, 0x5E, 0x04, 0x3C, 0x5E, 0x80, 0x44, 0x7E, 0x02, 0x3C, 0x5E, 0x80, 0x44, 0x7E, 0x01, 0x44, 0x5E, 0x01, 0x44, 0x5D, 0x81, 0x4C, 0x5E, 0x4C, 0x7E, 0x01, 0x4C, 0x7D, 0x01, 0x4C, 0x5D, 0x8B, 0x54, 0x5D, 0x54, 0x3D, 0x5C, 0x3D, 0x64, 0x3D, 0x6C, 0x5D, 0x7C, 0x5D, 0x8C, 0x5D, 0x9C, 0x1C, 0x71, 0xD3, 0x8A, 0x14, 0x9A, 0x14, 0xA2, 0x14, 0x02, 0xA9, 0xF3, 0x80, 0xA9, 0xF4, 0x01, 0xA9, 0xD3, 0x8F, 0xA9, 0xF4, 0xAA, 0x14, 0xA2, 0x13, 0x9A, 0x33, 0x8A, 0x53, 0x7A, 0xB3, 0x39, 0xAE, 0x9D, 0x7B, 0x9D, 0xFD, 0x95, 0x7B, 0xA5, 0x7C, 0x73, 0x14, 0x72, 0x32, 0x8A, 0x53, 0x9A, 0x33, 0xA2, 0x13, 0x03, 0xA9, 0xD3, 0x01, 0xA9, 0xF4, 0x89, 0xA2, 0x14, 0x9A, 0x14, 0x8A, 0x35, 0x6A, 0x35, 0x6B, 0x9A, 0x5C, 0x1C, 0x4C, 0x1C, 0x44, 0x3D, 0x3C, 0x1C, 0x34, 0x3D, 0x01, 0x34, 0x1C, 0x01, 0x2C, 0x1D, 0x81, 0x34, 0x3D, 0x2C, 0x1D, 0x03, 0x2C, 0x3D, 0x02, 0x24, 0x3D, 0x02, 0x24, 0x5D, 0x80, 0x24, 0x3D, 0x01, 0x1C, 0x3C, 0x82, 0x1C, 0x5D, 0x1C, 0x9D, 0x24, 0xDE, 0x01, 0x2D, 0x3F, 0x81, 0x24, 0xFF, 0x24, 0xBE, 0x01, 0x1C, 0x5D, 0x82, 0x1C, 0x3C, 0x1C, 0x3D, 0x1C, 0x3C, 0x03, 0x24, 0x5D, 0x80, 0x24, 0x3D, 0x06, 0x24, 0x1D, 0x80, 0x1B, 0xFD, 0x01, 0x24, 0x3D, 0x80, 0x1C, 0x1D, 0x02, 0x24, 0x1D, 0x80, 0x24, 0x3D, 0x01, 0x24, 0x1D, 0x80, 0x23, 0xFD, 0x01, 0x24, 0x3E, 0x03, 0x24, 0x1D, 0x02, 0x1C, 0x1D, + 0x02, 0x24, 0x3D, 0x01, 0x1C, 0x1D, 0x03, 0x1C, 0x3D, 0x01, 0x1C, 0x1D, 0x80, 0x1C, 0x1C, 0x02, 0x14, 0x1C, 0x82, 0x0B, 0xFC, 0x0C, 0x1C, 0x0C, 0x3C, 0x01, 0x14, 0x5C, 0x81, 0x14, 0x7D, 0x1C, 0xBE, 0x01, 0x24, 0xDE, 0x82, 0x24, 0xBE, 0x1C, 0x7D, 0x14, 0x3C, 0x01, 0x0B, 0xFC, 0x01, 0x14, 0x1C, 0x80, 0x13, 0xFC, 0x01, 0x14, 0x1C, 0x03, 0x1C, 0x3D, 0x01, 0x1C, 0x1D, 0x82, 0x1B, 0xFC, 0x1C, 0x1D, 0x1B, 0xFD, 0x02, 0x1C, 0x1D, 0x80, 0x1B, 0xFD, 0x07, 0x1C, 0x1D, 0x84, 0x14, 0x1D, 0x1C, 0x1D, 0x1B, 0xFD, 0x13, 0xFC, 0x1C, 0x1D, 0x01, 0x1B, 0xFD, 0x89, 0x1C, 0x1D, 0x1B, 0xFD, 0x1B, 0xDC, 0x1B, 0xFD, 0x1B, 0xDD, 0x1B, 0xDC, 0x1B, 0xFD, 0x1B, 0xFC, 0x1B, 0xFD, 0x1C, 0x1D, 0x02, 0x13, 0xFC, 0x81, 0x0B, 0xDB, 0x0B, 0xFC, 0x01, 0x0B, 0xDC, 0x80, 0x0B, 0xFC, 0x01, 0x03, 0xDB, 0x89, 0x0C, 0x1C, 0x1C, 0x9D, 0x24, 0xBE, 0x24, 0xDF, 0x24, 0xBE, 0x1C, 0x5D, 0x0B, 0xFC, 0x03, 0xDB, 0x0B, 0xFB, 0x0B, 0xFC, 0x01, 0x0B, 0xDB, 0x01, 0x0B, 0xDC, 0x01, 0x13, 0xDC, 0x01, 0x1C, 0x1D, 0x01, 0x1B, 0xFD, 0x88, 0x13, 0xDC, 0x1B, 0xFD, 0x13, 0xDC, 0x13, 0xBC, 0x1B, 0xDD, 0x13, 0xBC, 0x13, 0x9C, 0x13, 0xBC, 0x13, 0xDC, 0x01, 0x13, 0xBC, 0x04, 0x13, 0xDC, 0x80, 0x13, 0x9C, 0x04, 0x13, 0xBC, 0x80, 0x0B, 0x9B, 0x02, 0x13, 0xBC, 0x82, 0x13, 0xDC, 0x0B, 0xBB, 0x0B, 0x9B, 0x05, 0x0B, 0xBB, 0x87, 0x03, 0xBB, 0x0B, 0xDB, 0x03, 0xBB, 0x03, 0xDB, 0x03, 0xBB, 0x03, 0xDB, 0x0C, 0x3C, 0x14, 0x7D, 0x01, 0x1C, 0x9E, 0x01, 0x24, 0xDF, 0x84, 0x1C, 0x7E, 0x14, 0x1C, + 0x0B, 0xDB, 0x03, 0xBA, 0x03, 0xBB, 0x01, 0x0B, 0xDB, 0x83, 0x03, 0xBB, 0x03, 0x9B, 0x0B, 0x9B, 0x0B, 0xBB, 0x01, 0x0B, 0x9B, 0x01, 0x13, 0xDC, 0x81, 0x13, 0xFD, 0x13, 0xDC, 0x01, 0x13, 0xBC, 0x80, 0x0B, 0x9C, 0x01, 0x13, 0x9C, 0x02, 0x0B, 0x9B, 0x01, 0x0B, 0x9C, 0x81, 0x0B, 0x9B, 0x0B, 0xBC, 0x02, 0x0B, 0x9C, 0x83, 0x13, 0x9C, 0x0B, 0x7B, 0x13, 0x9C, 0x13, 0x7B, 0x01, 0x13, 0x9C, 0x81, 0x0B, 0x9C, 0x13, 0xBC, 0x01, 0x0B, 0x7B, 0x82, 0x0B, 0x9B, 0x13, 0x9C, 0x0B, 0x7B, 0x01, 0x0B, 0x9B, 0x04, 0x0B, 0x7A, 0x85, 0x03, 0x7A, 0x03, 0x9A, 0x03, 0x9B, 0x03, 0xBB, 0x0B, 0xDC, 0x0B, 0xFC, 0x01, 0x1B, 0xDC, 0x81, 0x24, 0x1D, 0x23, 0xFD, 0x01, 0x1C, 0x1D, 0x80, 0x13, 0xDC, 0x01, 0x0B, 0xBB, 0x80, 0x03, 0x9A, 0x01, 0x03, 0x7A, 0x8E, 0x03, 0x9A, 0x0B, 0xFB, 0x1C, 0x9E, 0x2C, 0xFF, 0x35, 0x5F, 0x3D, 0x7F, 0x35, 0x1F, 0x34, 0xFF, 0x2C, 0x9F, 0x24, 0x5E, 0x24, 0x3D, 0x1B, 0xFD, 0x1B, 0xFC, 0x13, 0xDD, 0x1B, 0xFD, 0x02, 0x1C, 0x1D, 0x02, 0x1B, 0xFD, 0x80, 0x1C, 0x1D, 0x01, 0x1B, 0xFD, 0x81, 0x24, 0x1D, 0x1C, 0x1D, 0x02, 0x1B, 0xFD, 0x81, 0x23, 0xFD, 0x1B, 0xFD, 0x02, 0x1B, 0xDD, 0x85, 0x1B, 0xFD, 0x24, 0x1E, 0x1B, 0xFE, 0x1B, 0xFD, 0x1B, 0xDD, 0x1B, 0xFE, 0x04, 0x1B, 0xFD, 0x01, 0x23, 0xFE, 0x01, 0x24, 0x1E, 0x87, 0x23, 0xFD, 0x23, 0xFE, 0x24, 0x1E, 0x23, 0xFD, 0x24, 0x1E, 0x24, 0x1D, 0x1B, 0xFD, 0x24, 0x3E, 0x01, 0x1C, 0x3D, 0x85, 0x24, 0x5E, 0x1C, 0x1D, 0x14, 0x1D, 0x13, 0xFD, 0x0B, 0xBC, 0x0B, 0xFC, 0x02, 0x14, 0x3D, 0x81, 0x1C, + 0xBE, 0x24, 0xDF, 0x03, 0x2C, 0xFF, 0x86, 0x2C, 0xDF, 0x24, 0x9E, 0x1C, 0x3D, 0x13, 0xFC, 0x13, 0xDC, 0x1C, 0x1D, 0x14, 0x1C, 0x01, 0x1C, 0x1D, 0x01, 0x1B, 0xFC, 0x04, 0x1C, 0x1D, 0x80, 0x24, 0x1E, 0x02, 0x24, 0x3E, 0x01, 0x24, 0x1E, 0x80, 0x1C, 0x1E, 0x03, 0x24, 0x1E, 0x80, 0x24, 0x3E, 0x01, 0x24, 0x1E, 0x80, 0x1B, 0xFE, 0x01, 0x24, 0x1E, 0x01, 0x1C, 0x1E, 0x81, 0x24, 0x1E, 0x1B, 0xFE, 0x03, 0x24, 0x1E, 0x84, 0x24, 0x1D, 0x24, 0x3E, 0x2C, 0x5F, 0x2C, 0x5E, 0x2C, 0x3E, 0x01, 0x2C, 0x5E, 0x8A, 0x2C, 0x7E, 0x2C, 0x9E, 0x24, 0x5E, 0x1C, 0x5D, 0x14, 0x1C, 0x0B, 0xFC, 0x14, 0x3D, 0x14, 0x7D, 0x14, 0x5D, 0x14, 0x7D, 0x24, 0xDF, 0x01, 0x2D, 0x1F, 0x85, 0x35, 0x1F, 0x2C, 0xFF, 0x2C, 0xDF, 0x24, 0x9E, 0x1C, 0x5E, 0x1C, 0x3D, 0x01, 0x1C, 0x1D, 0x81, 0x1C, 0x3D, 0x1C, 0x1D, 0x01, 0x24, 0x5E, 0x02, 0x2C, 0x5E, 0x80, 0x2C, 0x5F, 0x03, 0x2C, 0x7F, 0x81, 0x2C, 0x5F, 0x2C, 0x5E, 0x01, 0x2C, 0x7F, 0x01, 0x2C, 0x5E, 0x01, 0x2C, 0x7F, 0x01, 0x24, 0x5E, 0x81, 0x2C, 0x7E, 0x24, 0x5E, 0x02, 0x24, 0x3E, 0x81, 0x24, 0x5E, 0x2C, 0x5F, 0x01, 0x24, 0x5E, 0x01, 0x2C, 0x5E, 0x01, 0x2C, 0x5F, 0x01, 0x2C, 0x5E, 0x80, 0x2C, 0x7E, 0x02, 0x34, 0x9F, 0x01, 0x34, 0x9E, 0x8D, 0x34, 0x9F, 0x2C, 0xBF, 0x24, 0x7E, 0x24, 0x5E, 0x1C, 0x5D, 0x1C, 0x3D, 0x1C, 0x5D, 0x24, 0x9E, 0x1C, 0x5D, 0x1C, 0x7D, 0x2C, 0xFF, 0x35, 0x3F, 0x2C, 0xFF, 0x24, 0xBF, 0x03, 0x24, 0x9E, 0x80, 0x24, 0x7E, 0x01, 0x24, 0x5E, 0x80, 0x2C, 0x9F, 0x01, 0x2C, 0x9E, 0x80, 0x2C, 0x7E, 0x04, + 0x34, 0x7F, 0x80, 0x34, 0x9F, 0x02, 0x2C, 0x7F, 0x81, 0x34, 0x9F, 0x2C, 0x9F, 0x04, 0x2C, 0x7F, 0x01, 0x2C, 0x5E, 0x02, 0x34, 0x7F, 0x81, 0x2C, 0x5E, 0x34, 0x5F, 0x05, 0x34, 0x7F, 0x02, 0x2C, 0x7E, 0x80, 0x2C, 0x7F, 0x01, 0x2C, 0x5E, 0x90, 0x34, 0x7E, 0x34, 0xBF, 0x3C, 0xDF, 0x34, 0xBF, 0x34, 0x9F, 0x34, 0xBF, 0x2C, 0x9E, 0x2C, 0xBF, 0x2C, 0x9E, 0x24, 0x9E, 0x24, 0xBE, 0x2C, 0xFF, 0x24, 0xDE, 0x2C, 0xFF, 0x35, 0x3F, 0x3D, 0x5F, 0x2C, 0xDF, 0x01, 0x24, 0x7D, 0x80, 0x24, 0x7E, 0x01, 0x2C, 0x9E, 0x03, 0x2C, 0x7E, 0x03, 0x34, 0x9F, 0x80, 0x34, 0x7E, 0x04, 0x34, 0x9F, 0x85, 0x34, 0x7F, 0x34, 0x9F, 0x2C, 0x7E, 0x34, 0x7F, 0x2C, 0x7E, 0x34, 0x7F, 0x01, 0x2C, 0x7F, 0x82, 0x2C, 0x5E, 0x2C, 0x7E, 0x34, 0x7F, 0x01, 0x34, 0x9F, 0x02, 0x2C, 0x7E, 0x80, 0x34, 0x9F, 0x01, 0x2C, 0x7E, 0x80, 0x2C, 0x9E, 0x01, 0x2C, 0x7E, 0x80, 0x2C, 0x9E, 0x01, 0x2C, 0x7E, 0x80, 0x34, 0x7F, 0x01, 0x2C, 0x5E, 0x82, 0x34, 0x7E, 0x34, 0x7F, 0x34, 0x9F, 0x01, 0x3C, 0xBF, 0x02, 0x34, 0xBF, 0x89, 0x2C, 0xBF, 0x2C, 0x9E, 0x24, 0xBE, 0x2C, 0xFF, 0x35, 0x1F, 0x35, 0x3F, 0x2C, 0xDE, 0x2C, 0xFF, 0x2C, 0xDF, 0x2C, 0xBE, 0x01, 0x2C, 0x9E, 0x80, 0x2C, 0x5E, 0x01, 0x34, 0x7E, 0x81, 0x34, 0x9F, 0x3C, 0xBF, 0x02, 0x3C, 0xDF, 0x81, 0x2C, 0x7E, 0x34, 0x9F, 0x01, 0x34, 0xBF, 0x81, 0x34, 0x9F, 0x3C, 0xBF, 0x0D, 0x34, 0x9F, 0x82, 0x34, 0x7E, 0x34, 0x9F, 0x34, 0xBF, 0x01, 0x34, 0x9F, 0x80, 0x34, 0x7E, 0x04, 0x34, 0x9E, 0x80, 0x34, 0x9F, 0x02, 0x34, 0xBF, 0x80, 0x34, 0xBE, + 0x01, 0x34, 0xBF, 0x80, 0x34, 0xDF, 0x01, 0x34, 0xBF, 0x80, 0x34, 0xDF, 0x03, 0x34, 0xBE, 0x82, 0x34, 0xDE, 0x3D, 0x5F, 0x35, 0x1F, 0x02, 0x2C, 0xDE, 0x80, 0x2C, 0xBE, 0x01, 0x2C, 0x9E, 0x80, 0x34, 0x9E, 0x01, 0x34, 0xBF, 0x82, 0x34, 0xDF, 0x3C, 0xDF, 0x34, 0xBF, 0x02, 0x34, 0x9F, 0x82, 0x3C, 0xBF, 0x3C, 0xDF, 0x3C, 0xBF, 0x01, 0x34, 0x9E, 0x02, 0x3C, 0xBF, 0x83, 0x34, 0x9E, 0x3C, 0x9F, 0x34, 0x9F, 0x3C, 0xDF, 0x01, 0x3C, 0xBF, 0x81, 0x34, 0x9F, 0x34, 0xBF, 0x03, 0x3C, 0xBF, 0x01, 0x3C, 0x9F, 0x80, 0x34, 0x9F, 0x01, 0x3C, 0xBF, 0x82, 0x34, 0x9F, 0x34, 0x9E, 0x34, 0x9F, 0x02, 0x3C, 0x9F, 0x03, 0x3C, 0xBF, 0x82, 0x44, 0xDF, 0x44, 0xFF, 0x3C, 0xDF, 0x01, 0x44, 0xFF, 0x81, 0x3C, 0xFF, 0x3C, 0xDF, 0x01, 0x34, 0xBE, 0x01, 0x34, 0xDF, 0x82, 0x2C, 0xBD, 0x4D, 0x9F, 0x34, 0xDE, 0x02, 0x34, 0xDF, 0x01, 0x3C, 0xDF, 0x85, 0x3C, 0xBF, 0x3C, 0xDF, 0x3C, 0xBF, 0x3C, 0xDF, 0x3C, 0xBF, 0x3C, 0xDF, 0x02, 0x3C, 0xBF, 0x01, 0x3C, 0x9F, 0x80, 0x34, 0x9E, 0x02, 0x3C, 0xBF, 0x81, 0x3C, 0x9F, 0x34, 0x9F, 0x01, 0x3C, 0xBF, 0x80, 0x3C, 0x9F, 0x01, 0x34, 0x9F, 0x01, 0x3C, 0xBF, 0x81, 0x3C, 0x9F, 0x34, 0x9F, 0x05, 0x3C, 0xBF, 0x80, 0x3C, 0xDF, 0x01, 0x3C, 0xBF, 0x80, 0x34, 0x9F, 0x04, 0x3C, 0xBF, 0x01, 0x3C, 0xDF, 0x80, 0x3C, 0xBF, 0x03, 0x44, 0xFF, 0x05, 0x3C, 0xDF, 0x88, 0x3C, 0xFF, 0x2C, 0x9E, 0x3D, 0x3F, 0x35, 0x1F, 0x34, 0xDF, 0x3C, 0xFF, 0x3C, 0xDF, 0x3C, 0xBF, 0x34, 0xBF, 0x05, 0x3C, 0xDF, 0x02, 0x3C, 0xBF, 0x03, 0x3C, 0xDF, 0x06, 0x3C, + 0xBF, 0x80, 0x3C, 0xDF, 0x08, 0x3C, 0xBF, 0x01, 0x34, 0x9F, 0x02, 0x3C, 0xBF, 0x80, 0x3C, 0x9F, 0x01, 0x3C, 0xBF, 0x81, 0x3C, 0x9F, 0x34, 0x9F, 0x02, 0x3C, 0xBF, 0x03, 0x3C, 0xDF, 0x02, 0x44, 0xFF, 0x01, 0x44, 0xDF, 0x02, 0x44, 0xFF, 0x82, 0x3C, 0xFF, 0x3C, 0xDF, 0x34, 0xDE, 0x01, 0x35, 0x3F, 0x01, 0x35, 0x1F, 0x83, 0x34, 0xDF, 0x2C, 0xBE, 0x2C, 0x9E, 0x2C, 0x7E, 0x05, 0x3C, 0xBF, 0x01, 0x3C, 0x9F, 0x80, 0x34, 0x9F, 0x01, 0x3C, 0xBF, 0x88, 0x3C, 0x9F, 0x3C, 0xBF, 0x34, 0x9F, 0x3C, 0x9F, 0x34, 0x9F, 0x34, 0xBF, 0x3C, 0xBF, 0x3C, 0x9F, 0x34, 0x9F, 0x02, 0x3C, 0x9F, 0x03, 0x34, 0x9F, 0x02, 0x3C, 0x9F, 0x01, 0x34, 0x9F, 0x80, 0x34, 0xBF, 0x01, 0x3C, 0xBF, 0x01, 0x34, 0x9F, 0x80, 0x34, 0xBF, 0x02, 0x3C, 0xBF, 0x02, 0x3C, 0xDF, 0x02, 0x3C, 0xBF, 0x01, 0x34, 0xBF, 0x81, 0x3C, 0xBF, 0x34, 0xBF, 0x01, 0x34, 0xBE, 0x81, 0x34, 0xDF, 0x34, 0xFF, 0x01, 0x35, 0x3F, 0x83, 0x2C, 0xDE, 0x2C, 0xDF, 0x34, 0xDF, 0x2C, 0x9E, 0x01, 0x2C, 0x7E, 0x81, 0x2C, 0x5D, 0x34, 0x7E, 0x03, 0x3C, 0x9F, 0x01, 0x3C, 0x7F, 0x81, 0x34, 0x7E, 0x3C, 0x7F, 0x01, 0x3C, 0x9F, 0x81, 0x3C, 0x7F, 0x34, 0x7E, 0x01, 0x3C, 0x7F, 0x80, 0x3C, 0x9F, 0x02, 0x3C, 0x7F, 0x02, 0x44, 0x9F, 0x02, 0x44, 0x7F, 0x01, 0x44, 0x9F, 0x83, 0x4C, 0xBF, 0x4C, 0x9F, 0x4C, 0xBF, 0x4C, 0x9F, 0x02, 0x4C, 0xBF, 0x80, 0x54, 0xBF, 0x01, 0x4C, 0x9F, 0x01, 0x54, 0x9F, 0x02, 0x54, 0x9E, 0x8E, 0x5C, 0x9E, 0x5C, 0xBF, 0x64, 0x9E, 0x64, 0x7E, 0x64, 0x5D, 0x6C, 0x5D, 0x74, 0x3D, 0x84, 0x5D, 0x94, + 0x3D, 0x8B, 0x38, 0x79, 0xF4, 0x92, 0x14, 0xA2, 0x14, 0xAA, 0x14, 0xA1, 0xF3, 0x01, 0xA9, 0xD3, 0x01, 0xA9, 0xF4, 0xA4, 0xA1, 0xB2, 0xA1, 0xD3, 0xA1, 0xF3, 0xA2, 0x13, 0x92, 0x33, 0x8A, 0x53, 0x62, 0x51, 0x5A, 0xB2, 0xBE, 0x3F, 0xA5, 0x7C, 0xAD, 0x7C, 0x83, 0x96, 0x69, 0xF1, 0x8A, 0x53, 0x92, 0x13, 0x99, 0xF3, 0xA9, 0xF3, 0xA9, 0xD3, 0xB1, 0xF4, 0xA9, 0xF4, 0xA9, 0xD3, 0xA9, 0xF4, 0xAA, 0x14, 0x9A, 0x14, 0x8A, 0x14, 0x72, 0x14, 0x7B, 0xBA, 0x74, 0x5D, 0x5C, 0x3D, 0x44, 0x1D, 0x44, 0x3D, 0x3C, 0x5D, 0x3C, 0x5E, 0x44, 0x9F, 0x3C, 0x5E, 0x3C, 0x9F, 0x34, 0x7E, 0x04, 0x3C, 0x9F, 0x01, 0x34, 0x9E, 0x01, 0x2C, 0x7E, 0x80, 0x34, 0x9E, 0x01, 0x34, 0xBF, 0x01, 0x2C, 0x9E, 0x87, 0x24, 0x7E, 0x24, 0x7D, 0x1C, 0x7D, 0x24, 0xBE, 0x2C, 0xFF, 0x2D, 0x1F, 0x2C, 0xFF, 0x24, 0xDF, 0x02, 0x24, 0x9E, 0x01, 0x24, 0x7E, 0x80, 0x24, 0x5D, 0x01, 0x24, 0x3D, 0x81, 0x2C, 0x7E, 0x34, 0x7E, 0x04, 0x34, 0x7F, 0x03, 0x34, 0x9F, 0x80, 0x2C, 0x5E, 0x01, 0x2C, 0x5F, 0x84, 0x2C, 0x5E, 0x2C, 0x5F, 0x2C, 0x7F, 0x2C, 0x5F, 0x2C, 0x7F, 0x03, 0x2C, 0x5F, 0x84, 0x2C, 0x5E, 0x24, 0x5E, 0x2C, 0x5E, 0x2C, 0x7E, 0x2C, 0x5E, 0x01, 0x24, 0x3E, 0x82, 0x24, 0x5E, 0x2C, 0x7E, 0x2C, 0x7F, 0x01, 0x2C, 0x7E, 0x82, 0x24, 0x7E, 0x2C, 0x7E, 0x2C, 0x9E, 0x02, 0x2C, 0x7E, 0x01, 0x2C, 0x9E, 0x91, 0x24, 0x7E, 0x24, 0x5D, 0x24, 0x9E, 0x2C, 0xBF, 0x24, 0x9E, 0x24, 0x7D, 0x1C, 0x3D, 0x24, 0x9E, 0x24, 0xBE, 0x2C, 0xFF, 0x2D, 0x1F, 0x2C, 0xDF, 0x24, 0x9E, 0x1C, 0x5D, 0x1C, 0x7E, + 0x24, 0x9E, 0x24, 0x7E, 0x24, 0x5E, 0x02, 0x24, 0x3E, 0x01, 0x24, 0x5E, 0x81, 0x2C, 0x5E, 0x24, 0x5E, 0x01, 0x24, 0x3E, 0x81, 0x24, 0x5E, 0x24, 0x3E, 0x01, 0x24, 0x5E, 0x02, 0x24, 0x3E, 0x80, 0x2C, 0x3E, 0x04, 0x24, 0x3E, 0x80, 0x1C, 0x3D, 0x01, 0x24, 0x3E, 0x80, 0x24, 0x5E, 0x02, 0x24, 0x1E, 0x02, 0x2C, 0x3E, 0x81, 0x2C, 0x1E, 0x23, 0xFE, 0x02, 0x2C, 0x3E, 0x87, 0x2C, 0x5E, 0x24, 0x3E, 0x24, 0x5E, 0x1C, 0x3D, 0x1C, 0x3E, 0x1C, 0x3D, 0x1C, 0x5E, 0x24, 0x7E, 0x01, 0x1C, 0x5E, 0x02, 0x1C, 0x3D, 0x01, 0x14, 0x1C, 0x85, 0x1C, 0x3D, 0x24, 0x9F, 0x2C, 0xDF, 0x2C, 0xFF, 0x24, 0xDF, 0x1C, 0x7E, 0x01, 0x14, 0x3D, 0x02, 0x14, 0x1D, 0x03, 0x13, 0xFD, 0x01, 0x1C, 0x1D, 0x81, 0x24, 0x3E, 0x1C, 0x1E, 0x01, 0x1B, 0xFD, 0x02, 0x23, 0xFD, 0x01, 0x24, 0x1E, 0x81, 0x1B, 0xFD, 0x1C, 0x1D, 0x04, 0x1B, 0xFD, 0x80, 0x1C, 0x1D, 0x02, 0x1B, 0xFD, 0x80, 0x23, 0xFD, 0x01, 0x24, 0x1E, 0x80, 0x24, 0x3E, 0x01, 0x24, 0x1D, 0x01, 0x23, 0xFD, 0x02, 0x24, 0x1D, 0x01, 0x24, 0x3E, 0x02, 0x24, 0x5E, 0x02, 0x1C, 0x3D, 0x83, 0x14, 0x1D, 0x0B, 0xBB, 0x13, 0xFC, 0x14, 0x1C, 0x01, 0x13, 0xFC, 0x88, 0x14, 0x1C, 0x24, 0x7E, 0x2C, 0xBF, 0x34, 0xFF, 0x2D, 0x1F, 0x2C, 0xDF, 0x24, 0x9E, 0x14, 0x3D, 0x0B, 0xFC, 0x01, 0x0B, 0xDB, 0x83, 0x13, 0xDC, 0x0B, 0xDC, 0x13, 0xDC, 0x0B, 0xBC, 0x01, 0x13, 0xBC, 0x81, 0x13, 0xDC, 0x1B, 0xDD, 0x01, 0x1B, 0xFD, 0x82, 0x24, 0x1D, 0x1B, 0xFD, 0x23, 0xFE, 0x01, 0x23, 0xFD, 0x81, 0x23, 0xFE, 0x24, 0x1E, 0x01, 0x1B, 0xDD, 0x80, 0x13, + 0xDD, 0x05, 0x1B, 0xDD, 0x01, 0x1B, 0xBD, 0x81, 0x1B, 0xDD, 0x1B, 0xBD, 0x01, 0x1B, 0xDD, 0x01, 0x1B, 0xFD, 0x81, 0x1B, 0xDC, 0x1B, 0xDD, 0x01, 0x1B, 0xFD, 0x80, 0x1B, 0xFC, 0x01, 0x1B, 0xDC, 0x02, 0x13, 0xDC, 0x80, 0x13, 0xFD, 0x01, 0x13, 0xFC, 0x01, 0x0B, 0xDC, 0x03, 0x0B, 0x3A, 0x82, 0x0B, 0x5A, 0x03, 0x39, 0x03, 0x19, 0x01, 0x03, 0x39, 0x83, 0x03, 0x7A, 0x03, 0x9A, 0x14, 0x3D, 0x24, 0xDF, 0x01, 0x2D, 0x1F, 0x86, 0x2C, 0xFF, 0x2C, 0xBE, 0x1C, 0x5D, 0x0B, 0xBB, 0x03, 0x59, 0x02, 0xF9, 0x02, 0xD9, 0x01, 0x02, 0xD8, 0x02, 0x02, 0xD9, 0x02, 0x02, 0xF9, 0x83, 0x03, 0x1A, 0x03, 0x19, 0x03, 0x3A, 0x03, 0x1A, 0x01, 0x0B, 0x3A, 0x80, 0x0B, 0x5A, 0x01, 0x0B, 0x3A, 0x80, 0x0B, 0x1A, 0x01, 0x0B, 0x3A, 0x82, 0x0B, 0x1A, 0x0B, 0x3B, 0x0B, 0x3A, 0x01, 0x13, 0x5B, 0x80, 0x0B, 0x3B, 0x01, 0x13, 0x5B, 0x80, 0x0B, 0x5B, 0x01, 0x13, 0x5B, 0x80, 0x0B, 0x5B, 0x01, 0x13, 0x5B, 0x81, 0x13, 0x7B, 0x0B, 0x5B, 0x04, 0x13, 0x5B, 0x80, 0x13, 0x3B, 0x01, 0x13, 0x5B, 0x80, 0x0B, 0x3A, 0x01, 0x0B, 0x5A, 0x01, 0x03, 0x3A, 0x02, 0x03, 0x39, 0x85, 0x03, 0x5A, 0x03, 0x7A, 0x03, 0x9B, 0x03, 0xBB, 0x0B, 0xFC, 0x1C, 0xBF, 0x01, 0x2C, 0xFF, 0x84, 0x24, 0x9E, 0x14, 0x3D, 0x0B, 0xDB, 0x0B, 0x9A, 0x03, 0x5A, 0x02, 0x03, 0x19, 0x01, 0x03, 0x1A, 0x80, 0x03, 0x39, 0x01, 0x0B, 0x3A, 0x80, 0x03, 0x39, 0x01, 0x03, 0x3A, 0x80, 0x0B, 0x3A, 0x02, 0x0B, 0x5A, 0x01, 0x0B, 0x5B, 0x82, 0x13, 0x7B, 0x0B, 0x5B, 0x13, 0x7B, 0x01, 0x13, 0x7C, 0x80, 0x13, 0x7B, 0x01, 0x13, + 0x9C, 0x01, 0x13, 0x7C, 0x80, 0x13, 0x9C, 0x01, 0x13, 0x7C, 0x05, 0x13, 0x9C, 0x82, 0x13, 0x7B, 0x1B, 0x9C, 0x13, 0x9B, 0x05, 0x13, 0x7B, 0x81, 0x13, 0x5A, 0x13, 0x7A, 0x01, 0x0B, 0x5A, 0x8D, 0x03, 0x5A, 0x03, 0x59, 0x03, 0x7A, 0x03, 0xBA, 0x03, 0xDB, 0x04, 0x1C, 0x14, 0x7D, 0x25, 0x1F, 0x2D, 0x3F, 0x2C, 0xFF, 0x1C, 0x7D, 0x13, 0xFC, 0x03, 0x9A, 0x03, 0x7A, 0x02, 0x03, 0x3A, 0x80, 0x03, 0x39, 0x02, 0x03, 0x3A, 0x81, 0x0B, 0x3A, 0x0B, 0x5A, 0x01, 0x13, 0x5B, 0x81, 0x13, 0x7B, 0x13, 0x5B, 0x02, 0x13, 0x7B, 0x05, 0x13, 0x9C, 0x03, 0x1B, 0xBC, 0x01, 0x13, 0x9C, 0x80, 0x1B, 0xBC, 0x02, 0x13, 0xBC, 0x01, 0x1B, 0xBC, 0x80, 0x13, 0xBC, 0x01, 0x1B, 0xBC, 0x01, 0x13, 0x9C, 0x80, 0x13, 0x9B, 0x03, 0x13, 0x7B, 0x83, 0x13, 0x7A, 0x13, 0x7B, 0x13, 0x7A, 0x13, 0x9A, 0x01, 0x0B, 0x7A, 0x01, 0x03, 0x5A, 0x89, 0x03, 0x7A, 0x03, 0xBB, 0x0B, 0xFC, 0x14, 0x5D, 0x1C, 0x9E, 0x2D, 0x1F, 0x35, 0x1F, 0x24, 0x9E, 0x14, 0x1C, 0x0B, 0xDB, 0x01, 0x0B, 0xBB, 0x01, 0x0B, 0x9B, 0x82, 0x0B, 0x9A, 0x0B, 0x9B, 0x0B, 0x7B, 0x04, 0x13, 0x9B, 0x83, 0x1B, 0xBC, 0x13, 0x9B, 0x1B, 0x9B, 0x1B, 0x9C, 0x03, 0x1B, 0xBC, 0x81, 0x1B, 0xDC, 0x1B, 0xBC, 0x05, 0x1B, 0xDC, 0x01, 0x1B, 0xBC, 0x80, 0x1B, 0xDC, 0x02, 0x1B, 0xBC, 0x80, 0x23, 0xDC, 0x01, 0x1B, 0xBC, 0x01, 0x1B, 0xDC, 0x01, 0x1B, 0xBC, 0x82, 0x1B, 0xDC, 0x1B, 0xBC, 0x13, 0x9B, 0x01, 0x1B, 0xBC, 0x02, 0x1B, 0xBB, 0x02, 0x13, 0x9B, 0x8C, 0x0B, 0x7A, 0x0B, 0x9A, 0x0B, 0x9B, 0x0B, 0xDB, 0x14, 0x1C, 0x14, 0x5D, + 0x24, 0xDF, 0x35, 0x1F, 0x2C, 0xFF, 0x1C, 0x5C, 0x0B, 0xDB, 0x13, 0xDB, 0x0B, 0xBB, 0x03, 0x13, 0xBB, 0x80, 0x1B, 0xDC, 0x01, 0x1B, 0xBC, 0x02, 0x1B, 0xDC, 0x80, 0x1B, 0xBC, 0x04, 0x1B, 0xDC, 0x81, 0x1B, 0xBC, 0x23, 0xFD, 0x02, 0x1B, 0xDC, 0x83, 0x23, 0xFD, 0x1B, 0xDC, 0x23, 0xFD, 0x1B, 0xDC, 0x01, 0x23, 0xDC, 0x84, 0x23, 0xFC, 0x23, 0xDC, 0x23, 0xFD, 0x23, 0xFC, 0x23, 0xFD, 0x01, 0x1B, 0xFC, 0x82, 0x23, 0xFC, 0x1B, 0xFC, 0x1B, 0xDC, 0x02, 0x1B, 0xFC, 0x84, 0x1B, 0xDC, 0x1B, 0xFC, 0x1B, 0xDC, 0x23, 0xDC, 0x1B, 0xDC, 0x01, 0x23, 0xDC, 0x82, 0x23, 0xFC, 0x1B, 0xBB, 0x1B, 0xDC, 0x01, 0x1B, 0xDB, 0x8A, 0x13, 0xDB, 0x0B, 0x9A, 0x0B, 0xBB, 0x14, 0x1C, 0x2D, 0x1F, 0x35, 0x3F, 0x2C, 0xFF, 0x24, 0x9E, 0x24, 0x7D, 0x1C, 0x3C, 0x1C, 0x1C, 0x01, 0x1B, 0xFC, 0x03, 0x1B, 0xDC, 0x01, 0x23, 0xFD, 0x82, 0x24, 0x1D, 0x1B, 0xFC, 0x1B, 0xBC, 0x01, 0x1B, 0xDC, 0x82, 0x23, 0xFC, 0x23, 0xFD, 0x23, 0xDC, 0x02, 0x23, 0xFC, 0x81, 0x23, 0xDC, 0x23, 0xFD, 0x02, 0x23, 0xFC, 0x86, 0x23, 0xFD, 0x23, 0xFC, 0x23, 0xFD, 0x23, 0xFC, 0x23, 0xFD, 0x23, 0xFC, 0x23, 0xFD, 0x03, 0x23, 0xFC, 0x80, 0x23, 0xFD, 0x03, 0x23, 0xFC, 0x04, 0x24, 0x1D, 0x81, 0x24, 0x1C, 0x24, 0x1D, 0x03, 0x24, 0x1C, 0x02, 0x23, 0xFC, 0x84, 0x1B, 0xFC, 0x1B, 0xFB, 0x24, 0x7C, 0x3D, 0x5F, 0x2C, 0xDE, 0x01, 0x24, 0x9D, 0x82, 0x24, 0x7D, 0x1C, 0x3C, 0x1C, 0x1C, 0x01, 0x24, 0x1C, 0x02, 0x24, 0x1D, 0x82, 0x24, 0x1C, 0x24, 0x1D, 0x23, 0xFD, 0x01, 0x23, 0xFC, 0x01, 0x2C, 0x1D, 0x87, 0x24, + 0x1D, 0x24, 0x1C, 0x23, 0xFC, 0x2C, 0x1D, 0x2C, 0x1C, 0x23, 0xFC, 0x2C, 0x1D, 0x23, 0xFD, 0x02, 0x2C, 0x1D, 0x80, 0x23, 0xFC, 0x01, 0x24, 0x1D, 0x81, 0x2C, 0x1D, 0x24, 0x1D, 0x02, 0x2C, 0x1D, 0x02, 0x24, 0x1D, 0x01, 0x23, 0xFD, 0x82, 0x24, 0x1D, 0x23, 0xFC, 0x2C, 0x1D, 0x05, 0x23, 0xFC, 0x01, 0x2C, 0x1C, 0x80, 0x23, 0xFC, 0x02, 0x24, 0x1C, 0x01, 0x23, 0xFC, 0x87, 0x1B, 0xFC, 0x1B, 0xFB, 0x13, 0xDB, 0x24, 0x5C, 0x45, 0x9F, 0x1C, 0x3C, 0x24, 0x5D, 0x24, 0x3D, 0x03, 0x24, 0x1C, 0x04, 0x24, 0x1D, 0x83, 0x2C, 0x1D, 0x2B, 0xFD, 0x23, 0xFC, 0x2C, 0x1D, 0x02, 0x23, 0xFD, 0x01, 0x2C, 0x1D, 0x80, 0x23, 0xFD, 0x02, 0x2C, 0x1D, 0x80, 0x23, 0xFD, 0x07, 0x2C, 0x1D, 0x81, 0x2C, 0x3D, 0x24, 0x1D, 0x08, 0x2C, 0x1D, 0x84, 0x24, 0x1C, 0x23, 0xFC, 0x24, 0x1D, 0x2C, 0x1D, 0x23, 0xFC, 0x01, 0x2C, 0x1D, 0x84, 0x2C, 0x1C, 0x24, 0x1C, 0x2C, 0x3D, 0x24, 0x1C, 0x23, 0xFC, 0x01, 0x24, 0x1C, 0x88, 0x2C, 0x3D, 0x24, 0x1D, 0x1B, 0xFB, 0x35, 0x1F, 0x2C, 0xDE, 0x13, 0xDB, 0x24, 0x1D, 0x1B, 0xDC, 0x24, 0x1C, 0x03, 0x24, 0x1D, 0x01, 0x2C, 0x1D, 0x80, 0x2C, 0x3D, 0x01, 0x2C, 0x1D, 0x01, 0x2C, 0x3D, 0x06, 0x2C, 0x1D, 0x81, 0x24, 0x1D, 0x23, 0xFD, 0x02, 0x2C, 0x1D, 0x80, 0x23, 0xFD, 0x01, 0x2C, 0x1D, 0x81, 0x2C, 0x1E, 0x23, 0xFD, 0x02, 0x2C, 0x1D, 0x83, 0x24, 0x1D, 0x23, 0xFD, 0x2C, 0x1D, 0x24, 0x1D, 0x07, 0x23, 0xFD, 0x80, 0x23, 0xFC, 0x02, 0x23, 0xFD, 0x01, 0x24, 0x1D, 0x01, 0x23, 0xFC, 0x01, 0x23, 0xDC, 0x01, 0x1B, 0xBB, 0x88, 0x1B, 0xDB, 0x1B, 0xBB, + 0x1B, 0xDB, 0x13, 0xDB, 0x1C, 0x5D, 0x35, 0x1F, 0x24, 0xBE, 0x1C, 0x5D, 0x24, 0x5D, 0x01, 0x1C, 0x1C, 0x81, 0x24, 0x1C, 0x24, 0x3D, 0x01, 0x24, 0x1D, 0x81, 0x2C, 0x1D, 0x24, 0x1D, 0x02, 0x2C, 0x1D, 0x02, 0x23, 0xFD, 0x80, 0x24, 0x1D, 0x09, 0x23, 0xFD, 0x01, 0x23, 0xDC, 0x01, 0x23, 0xFD, 0x80, 0x23, 0xDD, 0x02, 0x23, 0xFD, 0x80, 0x23, 0xDD, 0x02, 0x23, 0xFD, 0x80, 0x23, 0xDD, 0x02, 0x23, 0xFD, 0x85, 0x23, 0xDD, 0x23, 0xFD, 0x23, 0xDC, 0x23, 0xFD, 0x23, 0xDC, 0x24, 0x1D, 0x02, 0x23, 0xFD, 0x01, 0x1B, 0xDC, 0x80, 0x1B, 0xBB, 0x01, 0x13, 0xBB, 0x88, 0x0B, 0x7A, 0x13, 0x9A, 0x13, 0xFB, 0x24, 0x9D, 0x35, 0x1F, 0x2D, 0x1F, 0x1C, 0x5D, 0x14, 0x1C, 0x1C, 0x1C, 0x01, 0x1B, 0xFC, 0x81, 0x23, 0xFC, 0x23, 0xFD, 0x04, 0x2B, 0xFD, 0x80, 0x23, 0xDD, 0x02, 0x23, 0xFD, 0x89, 0x23, 0xDC, 0x2B, 0xFD, 0x23, 0xDD, 0x23, 0xDC, 0x2B, 0xDD, 0x2B, 0xFD, 0x2B, 0xDD, 0x2B, 0xFD, 0x2B, 0xDC, 0x33, 0xFD, 0x01, 0x2B, 0xFD, 0x80, 0x2B, 0xDD, 0x02, 0x33, 0xFD, 0x80, 0x34, 0x1D, 0x01, 0x3C, 0x1D, 0x81, 0x3C, 0x3E, 0x3C, 0x3D, 0x02, 0x3C, 0x1D, 0x89, 0x44, 0x1D, 0x44, 0x3E, 0x44, 0x5E, 0x44, 0x3D, 0x44, 0x3E, 0x4C, 0x5E, 0x4C, 0x3D, 0x54, 0x5E, 0x4C, 0x3D, 0x54, 0x5E, 0x01, 0x5C, 0x5E, 0x01, 0x5C, 0x1D, 0x8B, 0x63, 0xFD, 0x6B, 0xFC, 0x83, 0xFC, 0x9B, 0xFC, 0x82, 0x96, 0x81, 0xD3, 0x9A, 0x35, 0xA2, 0x14, 0xAA, 0x14, 0xA1, 0xD3, 0xA9, 0xD3, 0xA9, 0xF4, 0x02, 0xA9, 0xD3, 0x9C, 0xA9, 0xF3, 0xA1, 0xF3, 0x9A, 0x13, 0x8A, 0x12, 0x82, 0x72, 0x59, 0xCF, 0x9C, + 0x99, 0xBD, 0xBE, 0xAC, 0xFB, 0x9B, 0xF8, 0x72, 0x11, 0x92, 0x74, 0x9A, 0x33, 0xA1, 0xF3, 0xA1, 0xD2, 0xA9, 0xF3, 0xA9, 0xD3, 0xB1, 0xF4, 0xA9, 0xB3, 0xA9, 0xF3, 0xA1, 0xF3, 0x9A, 0x14, 0x92, 0x34, 0x72, 0x14, 0x7B, 0x7A, 0x84, 0x9F, 0x64, 0x3D, 0x54, 0x3D, 0x44, 0x1D, 0x01, 0x3C, 0x3D, 0x83, 0x34, 0x1D, 0x34, 0x3D, 0x2B, 0xFD, 0x2C, 0x1D, 0x03, 0x23, 0xFC, 0x82, 0x23, 0xDC, 0x23, 0xFC, 0x23, 0xDC, 0x03, 0x1B, 0xDC, 0x02, 0x13, 0xBB, 0x90, 0x0B, 0x9A, 0x0B, 0x9B, 0x0B, 0x9A, 0x0B, 0x9B, 0x13, 0xFC, 0x1C, 0x5D, 0x24, 0xBF, 0x2C, 0xDF, 0x24, 0xBE, 0x1C, 0x5D, 0x0B, 0xDB, 0x0B, 0xBA, 0x0B, 0x9A, 0x0B, 0x7A, 0x0B, 0x9B, 0x13, 0x9B, 0x1B, 0xBB, 0x02, 0x1B, 0xBC, 0x82, 0x1B, 0x9C, 0x1B, 0xBC, 0x1B, 0x9C, 0x04, 0x1B, 0xDC, 0x80, 0x1B, 0xDD, 0x03, 0x1B, 0xBC, 0x81, 0x1B, 0xDD, 0x1B, 0xDC, 0x01, 0x1B, 0xBC, 0x81, 0x1B, 0xDD, 0x1B, 0xBC, 0x02, 0x1B, 0xDC, 0x84, 0x1B, 0xBC, 0x1B, 0xDC, 0x1B, 0xBC, 0x13, 0xBC, 0x1B, 0xBC, 0x04, 0x13, 0xBC, 0x81, 0x13, 0xBB, 0x13, 0xBC, 0x02, 0x13, 0xBB, 0x81, 0x0B, 0x7A, 0x13, 0x9B, 0x01, 0x0B, 0x5A, 0x8D, 0x03, 0x3A, 0x0B, 0x5A, 0x0B, 0x7A, 0x03, 0x39, 0x0B, 0x7A, 0x03, 0x5A, 0x03, 0x7A, 0x0B, 0xBB, 0x1C, 0x3D, 0x2C, 0xBF, 0x2C, 0xFF, 0x24, 0x9E, 0x03, 0xBB, 0x03, 0x9A, 0x01, 0x0B, 0x9B, 0x01, 0x0B, 0x7A, 0x80, 0x0B, 0x7B, 0x02, 0x13, 0x9B, 0x81, 0x13, 0xBC, 0x13, 0x9B, 0x01, 0x13, 0x9C, 0x82, 0x13, 0x9B, 0x13, 0x7B, 0x13, 0x9C, 0x01, 0x13, 0x7C, 0x02, 0x1B, 0x9C, 0x06, 0x13, 0x9C, 0x84, 0x13, + 0x9B, 0x13, 0x9C, 0x1B, 0x9C, 0x13, 0x7B, 0x13, 0x5B, 0x01, 0x13, 0x7B, 0x82, 0x13, 0x7C, 0x1B, 0x7C, 0x1B, 0x9C, 0x02, 0x13, 0x7B, 0x83, 0x13, 0x9B, 0x13, 0x9C, 0x13, 0x7B, 0x13, 0x9B, 0x04, 0x0B, 0x7B, 0x89, 0x0B, 0x7A, 0x0B, 0x7B, 0x03, 0x5A, 0x0B, 0x7A, 0x03, 0x3A, 0x03, 0x5A, 0x03, 0x3A, 0x0B, 0x9B, 0x14, 0x1D, 0x24, 0xBF, 0x01, 0x2C, 0xFF, 0x84, 0x1C, 0x7E, 0x03, 0xBB, 0x03, 0x7A, 0x03, 0x7B, 0x03, 0x7A, 0x02, 0x03, 0x5A, 0x81, 0x0B, 0x7B, 0x0B, 0x5B, 0x01, 0x0B, 0x7B, 0x83, 0x0B, 0x5B, 0x13, 0x7B, 0x13, 0x5B, 0x0B, 0x5B, 0x04, 0x13, 0x7B, 0x85, 0x0B, 0x7B, 0x13, 0x7C, 0x13, 0x7B, 0x0B, 0x7B, 0x13, 0x9C, 0x13, 0x7C, 0x02, 0x13, 0x7B, 0x81, 0x13, 0x5B, 0x13, 0x7C, 0x06, 0x13, 0x5B, 0x84, 0x0B, 0x5B, 0x0B, 0x5A, 0x13, 0x5B, 0x0B, 0x5A, 0x13, 0x7B, 0x01, 0x0B, 0x5B, 0x82, 0x0B, 0x3A, 0x03, 0x3A, 0x03, 0x39, 0x04, 0x03, 0x19, 0x80, 0x02, 0xF9, 0x01, 0x03, 0x19, 0x87, 0x03, 0x39, 0x03, 0x7A, 0x13, 0xFC, 0x1C, 0x7D, 0x2C, 0xFF, 0x35, 0x1F, 0x2C, 0xFF, 0x14, 0x3D, 0x02, 0x03, 0x7A, 0x85, 0x03, 0x5A, 0x03, 0x3A, 0x03, 0x19, 0x03, 0x39, 0x03, 0x19, 0x03, 0x1A, 0x05, 0x0B, 0x3A, 0x8C, 0x13, 0x5A, 0x13, 0x3B, 0x0B, 0x3A, 0x0B, 0x3B, 0x0B, 0x5B, 0x0B, 0x3A, 0x0B, 0x3B, 0x0B, 0x5B, 0x0B, 0x3B, 0x13, 0x5B, 0x13, 0x3B, 0x13, 0x5C, 0x13, 0x3B, 0x01, 0x13, 0x5B, 0x81, 0x0B, 0x3B, 0x13, 0x3B, 0x01, 0x13, 0x5B, 0x05, 0x13, 0x7B, 0x80, 0x13, 0x7A, 0x01, 0x13, 0x7B, 0x81, 0x13, 0x7A, 0x13, 0x7B, 0x01, 0x0B, 0x5A, 0x83, 0x0B, 0x7A, + 0x0B, 0x5A, 0x0B, 0x7B, 0x02, 0x77, 0x01, 0x02, 0x97, 0x01, 0x02, 0x77, 0x8E, 0x02, 0x76, 0x02, 0x97, 0x02, 0xD7, 0x03, 0x39, 0x03, 0xDB, 0x14, 0x7E, 0x24, 0xDF, 0x1C, 0xBF, 0x1C, 0x7E, 0x0B, 0xDB, 0x03, 0x5A, 0x02, 0xF8, 0x02, 0xD8, 0x02, 0xB7, 0x02, 0x97, 0x05, 0x02, 0x77, 0x83, 0x02, 0x57, 0x02, 0x37, 0x02, 0x57, 0x02, 0x56, 0x02, 0x02, 0x57, 0x08, 0x02, 0x77, 0x01, 0x02, 0x78, 0x03, 0x02, 0x57, 0x09, 0x02, 0x78, 0x02, 0x02, 0x58, 0x04, 0x02, 0x57, 0x83, 0x02, 0x78, 0x02, 0x97, 0x02, 0x98, 0x02, 0xB8, 0x01, 0x02, 0x97, 0x8C, 0x02, 0xB7, 0x02, 0xF8, 0x03, 0x39, 0x03, 0x7A, 0x03, 0xBB, 0x14, 0x5D, 0x24, 0xFF, 0x2C, 0xDF, 0x0B, 0xDB, 0x03, 0x5A, 0x03, 0x39, 0x03, 0x18, 0x02, 0xD7, 0x02, 0x02, 0xB7, 0x02, 0x02, 0x97, 0x03, 0x02, 0x77, 0x06, 0x02, 0x97, 0x83, 0x02, 0x98, 0x02, 0x78, 0x02, 0x98, 0x02, 0x78, 0x03, 0x02, 0x98, 0x02, 0x02, 0x78, 0x80, 0x02, 0x98, 0x02, 0x02, 0x78, 0x80, 0x02, 0x98, 0x02, 0x02, 0x78, 0x03, 0x02, 0x98, 0x80, 0x02, 0x78, 0x01, 0x02, 0x98, 0x01, 0x02, 0x77, 0x04, 0x02, 0x97, 0x86, 0x02, 0xB7, 0x02, 0xD8, 0x03, 0x18, 0x03, 0x39, 0x03, 0x7A, 0x03, 0xDB, 0x14, 0x7D, 0x01, 0x24, 0xDF, 0x83, 0x0B, 0xDB, 0x03, 0x59, 0x03, 0x19, 0x02, 0xF8, 0x01, 0x02, 0xB7, 0x01, 0x02, 0xB8, 0x01, 0x02, 0xD8, 0x05, 0x02, 0x98, 0x03, 0x02, 0x78, 0x07, 0x02, 0x98, 0x01, 0x02, 0x78, 0x10, 0x02, 0x98, 0x81, 0x02, 0x97, 0x02, 0x77, 0x03, 0x02, 0x97, 0x81, 0x02, 0xB7, 0x02, 0xB8, 0x01, 0x02, 0xD8, 0x8A, 0x02, 0xF8, 0x03, + 0x39, 0x03, 0x9A, 0x03, 0xDB, 0x0C, 0x3C, 0x1C, 0xBE, 0x1C, 0x7E, 0x03, 0x7A, 0x03, 0x19, 0x03, 0x18, 0x02, 0xD8, 0x01, 0x02, 0xB7, 0x81, 0x02, 0xD8, 0x02, 0xB8, 0x01, 0x02, 0xB7, 0x01, 0x02, 0x97, 0x80, 0x02, 0x98, 0x01, 0x02, 0xB8, 0x02, 0x02, 0x98, 0x82, 0x02, 0x97, 0x02, 0x98, 0x02, 0xB8, 0x02, 0x02, 0x98, 0x82, 0x02, 0x77, 0x02, 0x98, 0x02, 0x77, 0x05, 0x02, 0x98, 0x80, 0x02, 0xB8, 0x03, 0x02, 0x98, 0x80, 0x02, 0xB8, 0x04, 0x02, 0x98, 0x01, 0x02, 0x97, 0x01, 0x02, 0x98, 0x01, 0x02, 0xB8, 0x01, 0x02, 0x97, 0x01, 0x02, 0xB8, 0x81, 0x02, 0xB7, 0x02, 0xD8, 0x01, 0x02, 0xD7, 0x86, 0x03, 0x18, 0x03, 0x59, 0x0B, 0xDB, 0x24, 0xDF, 0x24, 0xBF, 0x13, 0xFC, 0x03, 0x39, 0x01, 0x03, 0x18, 0x82, 0x02, 0xD8, 0x02, 0xD7, 0x02, 0xB7, 0x02, 0x02, 0x97, 0x02, 0x02, 0xB8, 0x01, 0x02, 0x97, 0x11, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x0A, 0x02, 0xB8, 0x01, 0x02, 0xD8, 0x03, 0x02, 0xB8, 0x01, 0x02, 0xB7, 0x01, 0x02, 0x97, 0x8D, 0x02, 0xD7, 0x02, 0xD8, 0x02, 0xB7, 0x02, 0xD7, 0x02, 0xF7, 0x03, 0x38, 0x1C, 0x7D, 0x2D, 0x1F, 0x1C, 0x9D, 0x03, 0x9A, 0x03, 0x38, 0x03, 0x18, 0x02, 0xF7, 0x02, 0xD7, 0x01, 0x02, 0xB7, 0x01, 0x02, 0xD8, 0x0A, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x04, 0x02, 0xB8, 0x82, 0x02, 0xB7, 0x02, 0x97, 0x02, 0xB8, 0x01, 0x02, 0xB7, 0x02, 0x02, 0xB8, 0x80, 0x02, 0x97, 0x0A, 0x02, 0xB8, 0x80, 0x02, 0xB7, 0x01, 0x02, 0x97, 0x81, 0x02, 0xB7, 0x02, 0x97, 0x04, 0x02, 0xB7, 0x04, 0x02, 0xD7, 0x83, 0x2C, 0xDE, 0x2C, 0xFF, 0x14, 0x1C, 0x03, + 0x38, 0x01, 0x02, 0xF7, 0x01, 0x02, 0xF8, 0x81, 0x02, 0xD8, 0x02, 0xD7, 0x03, 0x02, 0xB7, 0x09, 0x02, 0xB8, 0x82, 0x02, 0xB7, 0x02, 0xB8, 0x02, 0xB7, 0x02, 0x02, 0x97, 0x02, 0x02, 0xB7, 0x01, 0x02, 0xB8, 0x04, 0x02, 0x97, 0x81, 0x02, 0xB7, 0x02, 0x97, 0x05, 0x02, 0xB8, 0x02, 0x02, 0xB7, 0x81, 0x02, 0x97, 0x02, 0xB7, 0x03, 0x02, 0x97, 0x82, 0x02, 0xB7, 0x02, 0xD7, 0x02, 0xD8, 0x02, 0x02, 0xD7, 0x86, 0x02, 0xF8, 0x24, 0x9D, 0x34, 0xFF, 0x03, 0x59, 0x02, 0xD8, 0x02, 0x97, 0x02, 0xB8, 0x05, 0x02, 0xD8, 0x07, 0x02, 0xB8, 0x09, 0x02, 0x97, 0x81, 0x02, 0x98, 0x02, 0x97, 0x01, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x01, 0x02, 0xB8, 0x04, 0x02, 0x97, 0x81, 0x02, 0xB7, 0x02, 0x97, 0x05, 0x02, 0xB7, 0x04, 0x02, 0x97, 0x80, 0x02, 0xB8, 0x01, 0x02, 0x97, 0x80, 0x02, 0xB8, 0x01, 0x02, 0xB7, 0x85, 0x02, 0x97, 0x02, 0xB7, 0x02, 0xF8, 0x35, 0x1F, 0x24, 0xBE, 0x02, 0xF8, 0x09, 0x02, 0xD8, 0x81, 0x02, 0xB8, 0x02, 0x98, 0x01, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x01, 0x02, 0xB8, 0x01, 0x02, 0x98, 0x80, 0x02, 0xB8, 0x01, 0x02, 0x98, 0x80, 0x02, 0xB8, 0x03, 0x02, 0x98, 0x03, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x09, 0x02, 0xB8, 0x06, 0x02, 0x98, 0x05, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x01, 0x02, 0xB8, 0x02, 0x02, 0xD8, 0x84, 0x02, 0xF7, 0x03, 0x38, 0x2C, 0xFF, 0x1C, 0x5D, 0x03, 0x18, 0x02, 0x02, 0xF8, 0x81, 0x02, 0xD8, 0x02, 0xF8, 0x02, 0x02, 0xB8, 0x80, 0x02, 0xD8, 0x01, 0x02, 0xB8, 0x01, 0x02, 0x98, 0x01, 0x02, 0xB8, 0x05, 0x02, 0x98, 0x80, 0x02, 0xB8, 0x02, + 0x02, 0x98, 0x80, 0x02, 0xB8, 0x01, 0x02, 0x98, 0x80, 0x02, 0xB8, 0x01, 0x02, 0x98, 0x01, 0x02, 0xB8, 0x05, 0x02, 0x98, 0x80, 0x02, 0xB8, 0x06, 0x02, 0x98, 0x01, 0x02, 0x77, 0x03, 0x02, 0x98, 0x81, 0x02, 0xB8, 0x02, 0xD8, 0x01, 0x02, 0xB8, 0x87, 0x02, 0xB7, 0x02, 0xD7, 0x03, 0x39, 0x14, 0x3C, 0x2D, 0x1F, 0x1C, 0x7D, 0x03, 0x38, 0x03, 0x18, 0x01, 0x02, 0xF8, 0x0D, 0x02, 0xB8, 0x01, 0x02, 0x98, 0x01, 0x02, 0xB8, 0x81, 0x02, 0x98, 0x02, 0xB8, 0x02, 0x02, 0x98, 0x81, 0x02, 0xB8, 0x0A, 0xB8, 0x01, 0x0A, 0x98, 0x02, 0x0A, 0xB8, 0x82, 0x0A, 0x97, 0x0A, 0x98, 0x0A, 0xB8, 0x01, 0x12, 0xB8, 0x80, 0x12, 0xD8, 0x01, 0x12, 0xB8, 0x84, 0x12, 0xD8, 0x1A, 0xD8, 0x1A, 0xF9, 0x1A, 0xD8, 0x12, 0x98, 0x02, 0x1A, 0x98, 0x02, 0x2A, 0xB9, 0x8A, 0x32, 0xB9, 0x42, 0xD9, 0x4A, 0xB8, 0x62, 0xD8, 0x7A, 0xD8, 0x7A, 0x15, 0x8A, 0x15, 0xA2, 0x55, 0x99, 0xF3, 0xA1, 0xD3, 0xAA, 0x14, 0x01, 0xA9, 0xD3, 0x81, 0xA9, 0xB3, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x8C, 0xAA, 0x33, 0x9A, 0x33, 0x8A, 0x32, 0x7A, 0x31, 0x72, 0x52, 0xC5, 0x1D, 0xC5, 0x3D, 0x93, 0x76, 0x7A, 0x12, 0x92, 0x13, 0x9A, 0x33, 0xA2, 0x13, 0xAA, 0x13, 0x01, 0xA9, 0xF3, 0x80, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x8B, 0xA1, 0xF3, 0xA2, 0x14, 0x92, 0x14, 0x82, 0x55, 0x62, 0x56, 0x42, 0x15, 0x32, 0x57, 0x1A, 0x57, 0x12, 0x97, 0x12, 0xB8, 0x0A, 0xB8, 0x0A, 0xD9, 0x01, 0x02, 0xD8, 0x84, 0x02, 0xB8, 0x02, 0x98, 0x02, 0x77, 0x02, 0x97, 0x02, 0x98, 0x01, 0x02, 0x97, 0x80, 0x02, 0xB8, 0x05, 0x02, 0x98, 0x82, + 0x02, 0xB8, 0x02, 0xD8, 0x02, 0xB8, 0x01, 0x02, 0xD8, 0x8C, 0x02, 0xF8, 0x03, 0x19, 0x03, 0x39, 0x0B, 0xBB, 0x1C, 0x5D, 0x2D, 0x1F, 0x14, 0x5D, 0x03, 0x59, 0x03, 0x39, 0x03, 0x19, 0x02, 0xF8, 0x02, 0x97, 0x02, 0x77, 0x01, 0x02, 0x97, 0x01, 0x02, 0xB8, 0x84, 0x02, 0x98, 0x02, 0xB8, 0x02, 0x77, 0x02, 0x98, 0x02, 0x97, 0x01, 0x02, 0x98, 0x06, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x01, 0x02, 0xB8, 0x81, 0x02, 0x98, 0x02, 0x97, 0x02, 0x02, 0x98, 0x01, 0x02, 0xB8, 0x01, 0x02, 0x98, 0x82, 0x02, 0x97, 0x02, 0x98, 0x02, 0x97, 0x03, 0x02, 0x98, 0x82, 0x02, 0x97, 0x02, 0xB8, 0x02, 0x97, 0x02, 0x02, 0x98, 0x01, 0x02, 0x77, 0x83, 0x02, 0x98, 0x02, 0xB8, 0x02, 0xD8, 0x02, 0xB8, 0x02, 0x02, 0xD8, 0x8A, 0x03, 0x19, 0x03, 0x39, 0x13, 0xFC, 0x24, 0x7E, 0x2C, 0xDF, 0x03, 0x9A, 0x03, 0x39, 0x02, 0xF8, 0x02, 0xF9, 0x02, 0xD8, 0x02, 0x97, 0x01, 0x02, 0x77, 0x03, 0x02, 0x98, 0x80, 0x02, 0xB8, 0x02, 0x02, 0x98, 0x80, 0x02, 0xB8, 0x0D, 0x02, 0x98, 0x80, 0x02, 0x78, 0x01, 0x02, 0x98, 0x81, 0x02, 0x78, 0x02, 0x98, 0x02, 0x02, 0x78, 0x81, 0x02, 0x57, 0x02, 0x77, 0x02, 0x02, 0x78, 0x02, 0x02, 0x98, 0x80, 0x02, 0x78, 0x03, 0x02, 0x77, 0x01, 0x02, 0x97, 0x8B, 0x02, 0xB8, 0x02, 0xD8, 0x02, 0xD9, 0x03, 0x19, 0x03, 0x39, 0x03, 0x3A, 0x03, 0x9B, 0x13, 0xFC, 0x1C, 0x5E, 0x24, 0xBF, 0x0B, 0xBB, 0x03, 0x39, 0x01, 0x03, 0x19, 0x81, 0x02, 0xD9, 0x02, 0xB8, 0x04, 0x02, 0x98, 0x01, 0x02, 0x78, 0x03, 0x02, 0x98, 0x80, 0x02, 0x78, 0x01, 0x02, 0x77, 0x01, 0x02, 0x78, + 0x01, 0x02, 0x98, 0x02, 0x02, 0x78, 0x80, 0x02, 0x77, 0x04, 0x02, 0x57, 0x81, 0x02, 0x78, 0x02, 0x77, 0x02, 0x02, 0x57, 0x82, 0x02, 0x77, 0x02, 0x78, 0x02, 0x57, 0x01, 0x02, 0x77, 0x80, 0x02, 0x57, 0x01, 0x02, 0x77, 0x02, 0x02, 0x97, 0x01, 0x02, 0x77, 0x02, 0x02, 0x97, 0x82, 0x02, 0xB7, 0x02, 0xB8, 0x02, 0xD8, 0x01, 0x02, 0xF8, 0x8A, 0x03, 0x39, 0x0B, 0x9B, 0x14, 0x1D, 0x24, 0x7E, 0x1C, 0x7E, 0x03, 0xBB, 0x03, 0x39, 0x03, 0x19, 0x02, 0xF9, 0x02, 0xD8, 0x02, 0xB8, 0x02, 0x02, 0x97, 0x80, 0x02, 0x77, 0x02, 0x02, 0x57, 0x81, 0x02, 0x56, 0x02, 0x57, 0x03, 0x02, 0x77, 0x01, 0x02, 0x78, 0x01, 0x02, 0x58, 0x81, 0x02, 0x78, 0x02, 0x58, 0x01, 0x02, 0x57, 0x01, 0x02, 0x37, 0x01, 0x02, 0x57, 0x80, 0x02, 0x37, 0x02, 0x02, 0x57, 0x01, 0x02, 0x37, 0x01, 0x02, 0x36, 0x81, 0x02, 0x56, 0x02, 0x36, 0x04, 0x02, 0x56, 0x02, 0x02, 0x77, 0x82, 0x02, 0x36, 0x02, 0x57, 0x02, 0x36, 0x01, 0x02, 0x56, 0x8C, 0x02, 0x97, 0x0B, 0x59, 0x13, 0xFC, 0x24, 0x9E, 0x24, 0xBF, 0x14, 0x5D, 0x03, 0xFC, 0x03, 0x9A, 0x03, 0x5A, 0x03, 0x39, 0x03, 0x19, 0x02, 0xF8, 0x02, 0xD8, 0x01, 0x02, 0xB8, 0x81, 0x02, 0x98, 0x02, 0x97, 0x03, 0x02, 0x98, 0x01, 0x02, 0x77, 0x02, 0x02, 0x97, 0x02, 0x02, 0x77, 0x08, 0x02, 0x98, 0x01, 0x02, 0x78, 0x80, 0x02, 0x57, 0x01, 0x02, 0x78, 0x04, 0x02, 0x98, 0x80, 0x02, 0x78, 0x02, 0x02, 0x98, 0x07, 0x02, 0x78, 0x01, 0x02, 0x98, 0x81, 0x02, 0xB8, 0x02, 0xD8, 0x02, 0x02, 0xB7, 0x88, 0x02, 0xF8, 0x03, 0x7A, 0x14, 0x1C, 0x1C, 0x7E, 0x1C, + 0x9E, 0x1C, 0xBE, 0x0B, 0xFC, 0x03, 0x7A, 0x03, 0x39, 0x01, 0x03, 0x19, 0x80, 0x02, 0xF8, 0x02, 0x02, 0xD8, 0x82, 0x02, 0xB8, 0x02, 0xD8, 0x02, 0xB7, 0x02, 0x02, 0xB8, 0x80, 0x02, 0xB7, 0x03, 0x02, 0xB8, 0x80, 0x02, 0xD8, 0x03, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x01, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x01, 0x02, 0x99, 0x01, 0x02, 0x98, 0x80, 0x02, 0x78, 0x01, 0x02, 0x98, 0x80, 0x02, 0x99, 0x0D, 0x02, 0x98, 0x80, 0x02, 0xB8, 0x01, 0x02, 0xB7, 0x90, 0x02, 0xB8, 0x02, 0xB7, 0x02, 0xB8, 0x02, 0xD8, 0x02, 0xF8, 0x03, 0x79, 0x14, 0x1C, 0x1C, 0x7D, 0x1C, 0xBE, 0x24, 0xDF, 0x14, 0x3C, 0x03, 0x9A, 0x03, 0x39, 0x03, 0x19, 0x02, 0xF8, 0x02, 0xD8, 0x02, 0xF8, 0x01, 0x02, 0xD8, 0x01, 0x02, 0xF9, 0x81, 0x02, 0xD8, 0x02, 0xD9, 0x05, 0x02, 0xB8, 0x02, 0x02, 0x98, 0x80, 0x02, 0xB9, 0x01, 0x02, 0xB8, 0x82, 0x02, 0x98, 0x02, 0xB9, 0x02, 0xB8, 0x01, 0x02, 0x98, 0x80, 0x02, 0xB8, 0x03, 0x02, 0x98, 0x80, 0x02, 0xB8, 0x05, 0x02, 0x98, 0x83, 0x02, 0xB8, 0x02, 0x98, 0x02, 0xB8, 0x02, 0x98, 0x02, 0x02, 0xB8, 0x82, 0x02, 0x98, 0x02, 0xB8, 0x02, 0xB7, 0x01, 0x02, 0xB8, 0x01, 0x02, 0xD8, 0x02, 0x02, 0xF8, 0x86, 0x03, 0x59, 0x0B, 0xFC, 0x14, 0x7D, 0x1C, 0x9E, 0x24, 0xBF, 0x0C, 0x1C, 0x03, 0x7A, 0x01, 0x03, 0x39, 0x80, 0x03, 0x19, 0x03, 0x02, 0xF8, 0x82, 0x02, 0xF9, 0x02, 0xF8, 0x02, 0xD8, 0x02, 0x02, 0xD9, 0x02, 0x02, 0xB8, 0x80, 0x02, 0xD8, 0x04, 0x02, 0xB8, 0x01, 0x02, 0x98, 0x80, 0x02, 0xB8, 0x02, 0x02, 0x98, 0x0B, 0x02, 0xB8, 0x81, 0x02, 0xD8, 0x02, + 0xB8, 0x01, 0x02, 0xD8, 0x01, 0x02, 0xB8, 0x04, 0x02, 0xD8, 0x80, 0x02, 0xB8, 0x01, 0x02, 0xD8, 0x02, 0x02, 0xF8, 0x86, 0x03, 0x18, 0x03, 0x9A, 0x1C, 0x7E, 0x24, 0xDF, 0x24, 0xBF, 0x03, 0xBB, 0x03, 0x59, 0x01, 0x03, 0x19, 0x82, 0x02, 0xF8, 0x03, 0x18, 0x02, 0xF8, 0x03, 0x02, 0xD8, 0x01, 0x02, 0xF9, 0x03, 0x02, 0xD8, 0x80, 0x02, 0xB8, 0x03, 0x02, 0xD8, 0x80, 0x02, 0xD9, 0x12, 0x02, 0xB8, 0x06, 0x02, 0xD8, 0x80, 0x02, 0xB8, 0x02, 0x02, 0xD8, 0x85, 0x02, 0xB7, 0x02, 0xD8, 0x02, 0xD7, 0x02, 0xD8, 0x02, 0xF8, 0x03, 0x18, 0x01, 0x03, 0x38, 0x84, 0x14, 0x1C, 0x2C, 0xFF, 0x14, 0x5D, 0x03, 0x99, 0x03, 0x18, 0x02, 0x02, 0xF8, 0x80, 0x02, 0xD8, 0x04, 0x02, 0xF8, 0x03, 0x02, 0xD8, 0x03, 0x02, 0xD9, 0x80, 0x02, 0xB8, 0x02, 0x02, 0xD8, 0x81, 0x02, 0xB8, 0x02, 0xD8, 0x02, 0x02, 0xB8, 0x80, 0x02, 0xD8, 0x0A, 0x02, 0xB8, 0x82, 0x02, 0xD8, 0x02, 0xB8, 0x02, 0xD8, 0x02, 0x02, 0xB8, 0x80, 0x02, 0xD8, 0x02, 0x02, 0xB8, 0x81, 0x02, 0xD8, 0x02, 0xB7, 0x02, 0x02, 0xD8, 0x8B, 0x02, 0xD7, 0x02, 0xD8, 0x02, 0xB7, 0x02, 0xD7, 0x03, 0x18, 0x02, 0xF8, 0x0B, 0x9A, 0x35, 0x1F, 0x14, 0x3C, 0x0B, 0xBB, 0x03, 0x39, 0x03, 0x38, 0x01, 0x03, 0x18, 0x01, 0x02, 0xF8, 0x07, 0x02, 0xD8, 0x0B, 0x02, 0xB8, 0x01, 0x02, 0x97, 0x05, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x05, 0x02, 0xB8, 0x80, 0x02, 0xD8, 0x04, 0x02, 0xB8, 0x04, 0x02, 0xD8, 0x80, 0x02, 0xB7, 0x01, 0x02, 0xD8, 0x03, 0x02, 0xF8, 0x01, 0x03, 0x18, 0x83, 0x2C, 0xFF, 0x1C, 0x5D, 0x03, 0x39, 0x03, 0x19, 0x01, + 0x02, 0xF8, 0x80, 0x02, 0xF9, 0x03, 0x02, 0xF8, 0x81, 0x02, 0xD8, 0x02, 0xF8, 0x03, 0x02, 0xD8, 0x81, 0x02, 0xB8, 0x02, 0xD8, 0x09, 0x02, 0xB8, 0x80, 0x02, 0x97, 0x01, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x01, 0x02, 0xB8, 0x80, 0x02, 0x97, 0x02, 0x02, 0xB8, 0x80, 0x02, 0x97, 0x03, 0x02, 0xB7, 0x03, 0x02, 0xB8, 0x82, 0x02, 0xD8, 0x02, 0xB8, 0x02, 0xD8, 0x03, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x03, 0x02, 0xB8, 0x80, 0x02, 0xD8, 0x01, 0x02, 0xB7, 0x83, 0x02, 0xF8, 0x35, 0x1F, 0x24, 0xBE, 0x03, 0x39, 0x02, 0x03, 0x19, 0x02, 0x02, 0xF9, 0x80, 0x02, 0xD8, 0x01, 0x02, 0xD9, 0x02, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x23, 0x02, 0xB8, 0x81, 0x02, 0xD9, 0x02, 0xB9, 0x02, 0x02, 0xD9, 0x81, 0x02, 0xB8, 0x02, 0xD9, 0x01, 0x02, 0xD8, 0x02, 0x02, 0xF8, 0x01, 0x03, 0x18, 0x81, 0x1C, 0x7D, 0x2D, 0x1F, 0x01, 0x03, 0x59, 0x82, 0x03, 0x39, 0x03, 0x18, 0x02, 0xF8, 0x03, 0x02, 0xD8, 0x01, 0x02, 0xD9, 0x81, 0x02, 0x98, 0x02, 0xB9, 0x08, 0x02, 0xB8, 0x01, 0x02, 0x98, 0x0A, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x04, 0x02, 0xB8, 0x85, 0x02, 0x98, 0x02, 0xB8, 0x02, 0x98, 0x02, 0xB8, 0x02, 0x98, 0x02, 0xB8, 0x02, 0x02, 0x98, 0x81, 0x02, 0xB9, 0x02, 0xB8, 0x03, 0x02, 0xD8, 0x80, 0x02, 0xF8, 0x02, 0x02, 0xD8, 0x86, 0x03, 0x19, 0x03, 0x9A, 0x14, 0x7D, 0x2C, 0xFF, 0x13, 0xFC, 0x03, 0x59, 0x03, 0x39, 0x01, 0x03, 0x19, 0x80, 0x02, 0xF9, 0x02, 0x02, 0xD9, 0x80, 0x02, 0xB8, 0x02, 0x02, 0xD9, 0x81, 0x02, 0xB8, 0x02, 0xD9, 0x01, 0x02, 0xB8, 0x80, 0x02, 0xD8, 0x03, 0x02, 0xB8, + 0x09, 0x02, 0x98, 0x82, 0x02, 0x97, 0x02, 0x77, 0x0A, 0x98, 0x01, 0x02, 0x97, 0x82, 0x0A, 0x97, 0x0A, 0x98, 0x02, 0x77, 0x01, 0x0A, 0xB8, 0x80, 0x0A, 0x97, 0x01, 0x12, 0xB8, 0x82, 0x0A, 0x97, 0x1A, 0xB8, 0x12, 0x98, 0x01, 0x1A, 0x98, 0x8F, 0x22, 0xB8, 0x22, 0x98, 0x2A, 0xD9, 0x2A, 0xB8, 0x32, 0x98, 0x3A, 0x77, 0x4A, 0x56, 0x5A, 0x35, 0x7A, 0x76, 0x82, 0x15, 0x9A, 0x55, 0x9A, 0x14, 0xA2, 0x14, 0xA9, 0xF4, 0xA9, 0xF3, 0xA9, 0xD3, 0x01, 0xB1, 0xF3, 0x8D, 0xA9, 0xD3, 0xA9, 0xF3, 0xA1, 0xF3, 0xA2, 0x13, 0x9A, 0x12, 0x8A, 0x12, 0x82, 0x12, 0x8A, 0xB4, 0xCC, 0xDC, 0xAB, 0x98, 0x81, 0xF2, 0x9A, 0x33, 0x9A, 0x13, 0xA2, 0x13, 0x01, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x8C, 0xB2, 0x14, 0xA9, 0xF3, 0xAA, 0x14, 0xA2, 0x34, 0x92, 0x35, 0x8A, 0x96, 0x6A, 0x56, 0x41, 0xF5, 0x21, 0xD5, 0x22, 0x57, 0x12, 0x56, 0x0A, 0x97, 0x0A, 0xB8, 0x03, 0x02, 0x98, 0x80, 0x02, 0x77, 0x01, 0x02, 0x97, 0x01, 0x02, 0x98, 0x03, 0x02, 0xB8, 0x02, 0x02, 0xB9, 0x80, 0x02, 0xB8, 0x04, 0x02, 0xD8, 0x8B, 0x02, 0xF8, 0x02, 0xF9, 0x03, 0x19, 0x03, 0x39, 0x03, 0x9A, 0x14, 0x5C, 0x24, 0xFF, 0x14, 0x5D, 0x03, 0xBA, 0x03, 0x59, 0x03, 0x39, 0x02, 0xF8, 0x01, 0x02, 0xD8, 0x81, 0x02, 0xF9, 0x02, 0xD8, 0x01, 0x02, 0xF9, 0x01, 0x02, 0xD8, 0x05, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x04, 0x02, 0xB8, 0x85, 0x02, 0x98, 0x02, 0xB8, 0x02, 0x98, 0x02, 0xB8, 0x02, 0x97, 0x02, 0x98, 0x03, 0x02, 0xB8, 0x81, 0x02, 0x98, 0x02, 0xB8, 0x02, 0x02, 0x98, 0x04, 0x02, 0xB8, 0x80, 0x02, 0xD8, 0x03, + 0x02, 0xB8, 0x80, 0x02, 0xB9, 0x05, 0x02, 0xB8, 0x8B, 0x02, 0xD8, 0x02, 0xF9, 0x03, 0x19, 0x03, 0x39, 0x03, 0x9A, 0x1C, 0x5D, 0x35, 0x1F, 0x1C, 0x5D, 0x0B, 0xBB, 0x03, 0x59, 0x03, 0x19, 0x02, 0xF8, 0x03, 0x02, 0xD8, 0x82, 0x02, 0xB8, 0x02, 0xD9, 0x02, 0xB9, 0x01, 0x02, 0xB8, 0x09, 0x02, 0x98, 0x04, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x03, 0x02, 0xB8, 0x80, 0x02, 0xB9, 0x01, 0x02, 0x98, 0x80, 0x02, 0x78, 0x0B, 0x02, 0x98, 0x05, 0x02, 0xB8, 0x81, 0x02, 0xD9, 0x03, 0x19, 0x02, 0x03, 0x3A, 0x88, 0x03, 0x7B, 0x14, 0x3D, 0x24, 0xBF, 0x1C, 0x3D, 0x0B, 0xBB, 0x03, 0x5A, 0x03, 0x1A, 0x02, 0xF9, 0x02, 0xD8, 0x01, 0x02, 0xB8, 0x01, 0x02, 0xD8, 0x80, 0x02, 0xB9, 0x03, 0x02, 0xB8, 0x05, 0x02, 0x98, 0x80, 0x02, 0x78, 0x02, 0x02, 0x98, 0x83, 0x02, 0x78, 0x02, 0x98, 0x02, 0x78, 0x02, 0x98, 0x02, 0x02, 0x78, 0x02, 0x02, 0x98, 0x01, 0x02, 0x78, 0x07, 0x02, 0x98, 0x02, 0x02, 0xB8, 0x80, 0x02, 0x98, 0x01, 0x02, 0x97, 0x03, 0x02, 0xB7, 0x82, 0x02, 0xB8, 0x02, 0xD8, 0x02, 0xF8, 0x01, 0x03, 0x19, 0x88, 0x03, 0x39, 0x03, 0x7A, 0x14, 0x3D, 0x2C, 0xDF, 0x1C, 0x7E, 0x13, 0xDB, 0x03, 0x5A, 0x03, 0x19, 0x02, 0xF8, 0x05, 0x02, 0xB8, 0x03, 0x02, 0x97, 0x03, 0x02, 0x98, 0x01, 0x02, 0x78, 0x83, 0x02, 0x57, 0x02, 0x78, 0x02, 0x77, 0x02, 0x78, 0x0B, 0x02, 0x57, 0x89, 0x02, 0x56, 0x02, 0x77, 0x02, 0x57, 0x02, 0x77, 0x02, 0x57, 0x02, 0x56, 0x02, 0x77, 0x02, 0x76, 0x02, 0x77, 0x02, 0x97, 0x01, 0x02, 0x98, 0x8C, 0x02, 0xD9, 0x02, 0xF9, 0x03, 0x5A, 0x1B, 0xFC, + 0x24, 0x7E, 0x2C, 0xBF, 0x24, 0xBE, 0x1C, 0x7D, 0x0C, 0x1C, 0x03, 0x9B, 0x03, 0x7A, 0x03, 0x3A, 0x03, 0x39, 0x01, 0x03, 0x19, 0x81, 0x02, 0xF8, 0x03, 0x19, 0x01, 0x02, 0xF9, 0x01, 0x03, 0x19, 0x09, 0x03, 0x3A, 0x81, 0x0B, 0x3A, 0x0B, 0x5A, 0x01, 0x0B, 0x3A, 0x01, 0x03, 0x1A, 0x02, 0x03, 0x3A, 0x81, 0x0B, 0x5A, 0x03, 0x1A, 0x01, 0x03, 0x3A, 0x01, 0x03, 0x1A, 0x06, 0x03, 0x3A, 0x02, 0x0B, 0x5B, 0x80, 0x0B, 0x7B, 0x03, 0x03, 0x3A, 0x8B, 0x0B, 0x5B, 0x0B, 0x7B, 0x03, 0x5A, 0x0B, 0x7A, 0x03, 0x3A, 0x03, 0x19, 0x03, 0x39, 0x03, 0x59, 0x03, 0x7A, 0x0B, 0xDB, 0x1C, 0x5D, 0x24, 0xBE, 0x01, 0x1C, 0x7E, 0x81, 0x0C, 0x1C, 0x03, 0x7A, 0x02, 0x03, 0x39, 0x80, 0x03, 0x19, 0x05, 0x03, 0x39, 0x01, 0x03, 0x5A, 0x80, 0x03, 0x3A, 0x02, 0x03, 0x39, 0x01, 0x03, 0x3A, 0x81, 0x03, 0x5A, 0x03, 0x7B, 0x02, 0x03, 0x3A, 0x80, 0x03, 0x5A, 0x01, 0x0B, 0x5B, 0x81, 0x03, 0x5B, 0x0B, 0x9C, 0x01, 0x03, 0x5B, 0x02, 0x03, 0x3B, 0x01, 0x0B, 0x5B, 0x83, 0x03, 0x3A, 0x03, 0x3B, 0x0B, 0x5B, 0x0B, 0x3B, 0x02, 0x03, 0x3A, 0x81, 0x0B, 0x5A, 0x03, 0x5A, 0x03, 0x0B, 0x7B, 0x85, 0x0B, 0x5A, 0x03, 0x5A, 0x0B, 0x9A, 0x0B, 0x9B, 0x0B, 0x9A, 0x0B, 0x9B, 0x02, 0x03, 0x39, 0x81, 0x03, 0x7A, 0x14, 0x3C, 0x01, 0x1C, 0xBE, 0x84, 0x24, 0xDF, 0x14, 0x5D, 0x03, 0x9A, 0x03, 0x59, 0x03, 0x39, 0x02, 0x03, 0x19, 0x03, 0x03, 0x39, 0x80, 0x03, 0x5A, 0x02, 0x03, 0x7A, 0x02, 0x03, 0x5A, 0x04, 0x03, 0x3A, 0x02, 0x0B, 0x5B, 0x01, 0x0B, 0x7B, 0x03, 0x03, 0x5B, 0x81, 0x0B, 0x5B, 0x03, + 0x5B, 0x02, 0x0B, 0x7B, 0x80, 0x0B, 0x9C, 0x01, 0x0B, 0x5B, 0x82, 0x03, 0x5B, 0x0B, 0x5B, 0x03, 0x3A, 0x02, 0x0B, 0x5B, 0x83, 0x0B, 0x7B, 0x0B, 0x9B, 0x0B, 0x7B, 0x0B, 0x9B, 0x01, 0x0B, 0x7B, 0x90, 0x0B, 0x9B, 0x0B, 0x9A, 0x0B, 0xBB, 0x13, 0xBB, 0x0B, 0x9B, 0x03, 0x7A, 0x03, 0x39, 0x03, 0x59, 0x0B, 0xFC, 0x1C, 0x7D, 0x1C, 0xBE, 0x24, 0xDF, 0x14, 0x5D, 0x03, 0xBB, 0x03, 0x7A, 0x03, 0x5A, 0x03, 0x59, 0x01, 0x03, 0x5A, 0x80, 0x03, 0x7B, 0x02, 0x03, 0x5A, 0x80, 0x03, 0x7B, 0x01, 0x03, 0x7A, 0x01, 0x03, 0x5B, 0x81, 0x03, 0x7B, 0x0B, 0x7B, 0x04, 0x0B, 0x9B, 0x01, 0x0B, 0x7B, 0x80, 0x0B, 0x9B, 0x04, 0x0B, 0x7B, 0x80, 0x0B, 0x9B, 0x03, 0x0B, 0x7B, 0x01, 0x0B, 0x9B, 0x80, 0x03, 0x7B, 0x01, 0x0B, 0x9B, 0x86, 0x03, 0x7B, 0x0B, 0x9B, 0x0B, 0xBC, 0x03, 0x7B, 0x0B, 0x9B, 0x03, 0x7A, 0x0B, 0x7B, 0x03, 0x0B, 0x9B, 0x89, 0x0B, 0x7A, 0x0B, 0x9A, 0x0B, 0x9B, 0x0B, 0xBB, 0x0B, 0xDB, 0x0B, 0xFC, 0x0B, 0xDB, 0x03, 0x7A, 0x03, 0xBA, 0x14, 0x3C, 0x01, 0x24, 0xDF, 0x81, 0x14, 0x7D, 0x03, 0xBA, 0x01, 0x03, 0x7A, 0x01, 0x03, 0x59, 0x81, 0x03, 0x5A, 0x03, 0x7A, 0x01, 0x03, 0x9B, 0x80, 0x03, 0x7B, 0x01, 0x0B, 0x7B, 0x80, 0x0B, 0xBB, 0x07, 0x0B, 0x9B, 0x80, 0x0B, 0x9C, 0x01, 0x0B, 0xBC, 0x8B, 0x0B, 0x9B, 0x0B, 0x9C, 0x0B, 0xBC, 0x0B, 0x9B, 0x13, 0xBC, 0x0B, 0x9C, 0x0B, 0x9B, 0x0B, 0x9C, 0x13, 0xBC, 0x0B, 0x9C, 0x13, 0xBC, 0x13, 0x9C, 0x01, 0x0B, 0x9C, 0x80, 0x13, 0xBC, 0x01, 0x0B, 0x9B, 0x83, 0x0B, 0xBB, 0x0B, 0x9B, 0x13, 0xBC, 0x1B, 0xFD, 0x01, + 0x0B, 0x7A, 0x01, 0x0B, 0x7B, 0x83, 0x0B, 0x9B, 0x13, 0xBB, 0x0B, 0x9B, 0x0B, 0xBB, 0x01, 0x13, 0xDB, 0x80, 0x0B, 0xBB, 0x02, 0x0B, 0xDB, 0x86, 0x03, 0xBA, 0x03, 0xDA, 0x1C, 0x9E, 0x24, 0xFF, 0x1C, 0xBE, 0x0C, 0x3C, 0x03, 0x99, 0x01, 0x03, 0x79, 0x80, 0x03, 0x9A, 0x02, 0x0B, 0x9A, 0x80, 0x0B, 0xBB, 0x01, 0x0B, 0x9B, 0x84, 0x0B, 0xBC, 0x0B, 0xBB, 0x13, 0xDC, 0x0B, 0xBC, 0x13, 0xDC, 0x02, 0x13, 0xBC, 0x83, 0x13, 0xDC, 0x0B, 0xBC, 0x13, 0xBC, 0x13, 0xDC, 0x01, 0x13, 0xBC, 0x89, 0x13, 0xDC, 0x13, 0xBC, 0x13, 0xDC, 0x13, 0xFC, 0x13, 0xDC, 0x13, 0xBC, 0x13, 0xDC, 0x13, 0xFC, 0x13, 0xDC, 0x13, 0xBC, 0x01, 0x13, 0xDC, 0x02, 0x13, 0xBC, 0x83, 0x13, 0xDC, 0x13, 0xBC, 0x0B, 0x9B, 0x0B, 0xBC, 0x01, 0x13, 0xDC, 0x82, 0x13, 0xBC, 0x0B, 0xBB, 0x13, 0xDC, 0x01, 0x13, 0xBC, 0x80, 0x13, 0xBB, 0x01, 0x0B, 0x9B, 0x02, 0x13, 0xBB, 0x01, 0x0B, 0x9B, 0x80, 0x0B, 0xBB, 0x01, 0x0B, 0xFB, 0x8A, 0x35, 0x3F, 0x14, 0x5D, 0x03, 0xFB, 0x03, 0xDB, 0x03, 0x9A, 0x03, 0x59, 0x03, 0x79, 0x03, 0x9A, 0x0B, 0x9A, 0x0B, 0xBB, 0x13, 0xDB, 0x01, 0x13, 0xBB, 0x03, 0x13, 0xDC, 0x02, 0x13, 0xBC, 0x84, 0x13, 0x9C, 0x13, 0xBC, 0x13, 0xDC, 0x13, 0xBC, 0x13, 0xDC, 0x05, 0x13, 0xBC, 0x02, 0x13, 0xDC, 0x01, 0x13, 0xBC, 0x80, 0x13, 0xDC, 0x03, 0x13, 0xBC, 0x84, 0x13, 0xBB, 0x13, 0xDC, 0x13, 0xBC, 0x13, 0xDC, 0x13, 0xBC, 0x02, 0x13, 0xDC, 0x80, 0x13, 0xFC, 0x01, 0x13, 0xDC, 0x80, 0x1B, 0xFC, 0x04, 0x13, 0xBB, 0x88, 0x13, 0xDB, 0x0B, 0x9A, 0x0B, 0xBA, 0x0B, 0xBB, 0x0B, + 0xDB, 0x0B, 0xBB, 0x14, 0x1C, 0x2D, 0x1F, 0x0C, 0x3C, 0x01, 0x03, 0xBB, 0x80, 0x03, 0x9B, 0x01, 0x0B, 0x9B, 0x82, 0x0B, 0xBC, 0x0B, 0xBB, 0x13, 0xDC, 0x02, 0x13, 0xFC, 0x01, 0x13, 0xDC, 0x80, 0x1B, 0xFD, 0x01, 0x1B, 0xFC, 0x81, 0x13, 0xFC, 0x1B, 0xFD, 0x03, 0x13, 0xDC, 0x81, 0x13, 0xFC, 0x1B, 0xFD, 0x05, 0x1B, 0xFC, 0x81, 0x13, 0xDC, 0x1B, 0xFC, 0x02, 0x13, 0xDC, 0x02, 0x1B, 0xFC, 0x82, 0x13, 0xDC, 0x1C, 0x1C, 0x13, 0xDC, 0x01, 0x13, 0xFC, 0x01, 0x13, 0xDC, 0x80, 0x1B, 0xFC, 0x01, 0x13, 0xFC, 0x02, 0x13, 0xDC, 0x81, 0x13, 0xFC, 0x0B, 0xBB, 0x02, 0x13, 0xBC, 0x82, 0x0B, 0xBB, 0x13, 0xDC, 0x0B, 0x9A, 0x01, 0x03, 0x7A, 0x83, 0x0B, 0xBB, 0x1C, 0x9E, 0x14, 0x7D, 0x03, 0x9A, 0x02, 0x0B, 0xBB, 0x82, 0x0B, 0x9B, 0x0B, 0xDC, 0x0B, 0xBC, 0x03, 0x13, 0xDC, 0x80, 0x1B, 0xDD, 0x02, 0x13, 0xBC, 0x82, 0x1B, 0xDC, 0x13, 0xDC, 0x1B, 0xFD, 0x02, 0x13, 0xDC, 0x80, 0x1B, 0xFD, 0x08, 0x13, 0xDC, 0x01, 0x13, 0xFD, 0x04, 0x13, 0xDC, 0x81, 0x13, 0xBC, 0x13, 0xDC, 0x01, 0x13, 0xBC, 0x03, 0x13, 0xDC, 0x85, 0x13, 0xBC, 0x0B, 0xBC, 0x13, 0xBC, 0x13, 0xDC, 0x0B, 0x9C, 0x13, 0xBC, 0x01, 0x0B, 0x9C, 0x01, 0x13, 0xBC, 0x81, 0x0B, 0x7B, 0x0B, 0x9C, 0x02, 0x0B, 0x9B, 0x88, 0x0B, 0xBB, 0x03, 0xBB, 0x03, 0xBA, 0x0C, 0x1C, 0x2D, 0x1F, 0x03, 0xBA, 0x03, 0xDB, 0x03, 0xBB, 0x0B, 0xBB, 0x01, 0x03, 0x7A, 0x01, 0x0B, 0xBC, 0x80, 0x0B, 0x9B, 0x01, 0x0B, 0x9C, 0x81, 0x13, 0xBC, 0x0B, 0x7B, 0x01, 0x0B, 0x9C, 0x86, 0x13, 0xBC, 0x0B, 0x9C, 0x13, 0xBC, 0x0B, 0x9B, + 0x13, 0xDC, 0x0B, 0xBC, 0x13, 0xDC, 0x01, 0x13, 0xBC, 0x04, 0x13, 0xDC, 0x81, 0x13, 0xBC, 0x13, 0x9C, 0x01, 0x13, 0xBC, 0x85, 0x13, 0xDC, 0x13, 0xBC, 0x13, 0xDC, 0x13, 0xBC, 0x0B, 0xBC, 0x13, 0x9C, 0x07, 0x13, 0xBC, 0x84, 0x13, 0x9C, 0x0B, 0x9C, 0x13, 0xDC, 0x0B, 0x9C, 0x0B, 0x7B, 0x02, 0x0B, 0x9B, 0x80, 0x13, 0xDC, 0x02, 0x0B, 0x9B, 0x83, 0x03, 0x9B, 0x03, 0xBB, 0x0B, 0xFB, 0x0C, 0x1C, 0x01, 0x1C, 0x9E, 0x8C, 0x0C, 0x3C, 0x0C, 0x1C, 0x0B, 0xFC, 0x03, 0x9B, 0x03, 0x7B, 0x0B, 0x7B, 0x0B, 0x9B, 0x0B, 0x7B, 0x0B, 0x9B, 0x13, 0x9C, 0x13, 0xBC, 0x0B, 0x7B, 0x13, 0xBC, 0x01, 0x0B, 0x7B, 0x02, 0x13, 0x9B, 0x80, 0x13, 0xBC, 0x03, 0x13, 0x9B, 0x80, 0x1B, 0x9B, 0x01, 0x1B, 0xBC, 0x83, 0x1B, 0x9B, 0x1B, 0xBC, 0x23, 0xBC, 0x1B, 0x9C, 0x02, 0x23, 0xBC, 0x02, 0x23, 0x9B, 0x81, 0x2B, 0xDC, 0x2B, 0xBC, 0x01, 0x2B, 0xDC, 0x8B, 0x2B, 0xBC, 0x2B, 0xDC, 0x33, 0xFC, 0x33, 0xDC, 0x33, 0xFD, 0x33, 0xDC, 0x3B, 0xFD, 0x3B, 0xDD, 0x3B, 0xFD, 0x3B, 0xBC, 0x43, 0xDD, 0x43, 0xBC, 0x01, 0x4B, 0xBC, 0x90, 0x5B, 0xBC, 0x5B, 0x7B, 0x6B, 0x5A, 0x7B, 0x19, 0x7A, 0x76, 0x8A, 0x35, 0x9A, 0x14, 0xA2, 0x14, 0xA1, 0xD3, 0xA9, 0xF4, 0xA9, 0xF3, 0xA9, 0xB3, 0xA9, 0xD3, 0xA9, 0xB3, 0xA9, 0xD3, 0xA9, 0xF3, 0xAA, 0x13, 0x01, 0x99, 0xF2, 0x8B, 0x91, 0xF2, 0x92, 0x33, 0x9A, 0x95, 0xAB, 0x16, 0x9A, 0x33, 0x99, 0xF2, 0xA2, 0x13, 0xA1, 0xF3, 0xA9, 0xF3, 0xA9, 0xD3, 0xB2, 0x14, 0xA9, 0xF4, 0x01, 0xA9, 0xF3, 0x8E, 0xAA, 0x14, 0xA2, 0x14, 0x9A, 0x35, 0x8A, 0x76, 0x6A, + 0x56, 0x41, 0xD5, 0x53, 0x3A, 0x2A, 0xD8, 0x22, 0xF9, 0x1B, 0x3A, 0x13, 0x5A, 0x13, 0x5B, 0x0B, 0x7A, 0x13, 0x9B, 0x13, 0x7B, 0x01, 0x13, 0x9B, 0x01, 0x0B, 0x7B, 0x85, 0x13, 0x9B, 0x0B, 0x7B, 0x0B, 0x5B, 0x0B, 0x7B, 0x13, 0x9C, 0x0B, 0x7B, 0x01, 0x03, 0x5B, 0x03, 0x0B, 0x7B, 0x80, 0x0B, 0x9B, 0x01, 0x03, 0x7A, 0x01, 0x03, 0x5A, 0x8B, 0x03, 0x9A, 0x03, 0xDB, 0x04, 0x1C, 0x0C, 0x5C, 0x14, 0x9E, 0x1C, 0x9E, 0x0C, 0x3C, 0x0B, 0xFB, 0x03, 0xBA, 0x0B, 0xBB, 0x0B, 0x9B, 0x03, 0x7A, 0x02, 0x03, 0x5A, 0x82, 0x03, 0x7A, 0x0B, 0x7B, 0x0B, 0x9B, 0x01, 0x0B, 0x7B, 0x87, 0x03, 0x5A, 0x03, 0x3A, 0x03, 0x5A, 0x0B, 0x7B, 0x03, 0x3A, 0x0B, 0x5B, 0x03, 0x5B, 0x0B, 0x5B, 0x01, 0x0B, 0x7B, 0x87, 0x0B, 0x5B, 0x0B, 0x7B, 0x0B, 0x5B, 0x03, 0x5A, 0x0B, 0x5A, 0x0B, 0x5B, 0x0B, 0x5A, 0x0B, 0x7B, 0x01, 0x0B, 0x5B, 0x84, 0x03, 0x5A, 0x03, 0x3A, 0x03, 0x5A, 0x0B, 0x7B, 0x0B, 0x5B, 0x01, 0x03, 0x5A, 0x82, 0x0B, 0x7B, 0x03, 0x3A, 0x0B, 0x7A, 0x02, 0x03, 0x5A, 0x81, 0x0B, 0x7B, 0x03, 0x5B, 0x01, 0x03, 0x5A, 0x80, 0x03, 0x7B, 0x01, 0x03, 0x5A, 0x01, 0x03, 0x3A, 0x01, 0x03, 0x39, 0x87, 0x03, 0x9A, 0x0B, 0xFC, 0x0B, 0xDB, 0x14, 0x3D, 0x24, 0xDF, 0x24, 0xFF, 0x1C, 0x7E, 0x14, 0x3D, 0x02, 0x0B, 0xBB, 0x01, 0x0B, 0x9B, 0x88, 0x0B, 0x7B, 0x03, 0x5A, 0x03, 0x3A, 0x0B, 0x5A, 0x03, 0x3A, 0x0B, 0x5A, 0x0B, 0x7B, 0x03, 0x3A, 0x0B, 0x3A, 0x01, 0x0B, 0x5B, 0x80, 0x0B, 0x7B, 0x01, 0x03, 0x5B, 0x85, 0x0B, 0x7B, 0x03, 0x5B, 0x03, 0x3A, 0x03, 0x5A, 0x03, 0x7B, 0x03, + 0x5A, 0x02, 0x03, 0x5B, 0x83, 0x03, 0x7B, 0x0B, 0x7B, 0x03, 0x5B, 0x03, 0x7B, 0x01, 0x03, 0x5B, 0x01, 0x03, 0x3B, 0x82, 0x03, 0x3A, 0x03, 0x3B, 0x03, 0x1A, 0x01, 0x03, 0x3A, 0x80, 0x03, 0x3B, 0x01, 0x0B, 0x5B, 0x82, 0x03, 0x3A, 0x0B, 0x5A, 0x03, 0x3A, 0x01, 0x03, 0x5A, 0x83, 0x03, 0x3A, 0x03, 0x5A, 0x03, 0x7A, 0x03, 0x5A, 0x02, 0x03, 0x3A, 0x87, 0x03, 0x5A, 0x03, 0x7A, 0x03, 0x9B, 0x0B, 0xFC, 0x24, 0xBF, 0x24, 0xDF, 0x1C, 0x5E, 0x13, 0xFD, 0x01, 0x03, 0x9B, 0x81, 0x03, 0x7B, 0x0B, 0x7B, 0x02, 0x0B, 0x9B, 0x03, 0x03, 0x5A, 0x02, 0x03, 0x3A, 0x82, 0x03, 0x1A, 0x0B, 0x5A, 0x03, 0x3A, 0x01, 0x03, 0x1A, 0x80, 0x03, 0x5A, 0x02, 0x03, 0x3A, 0x01, 0x03, 0x5A, 0x82, 0x03, 0x3A, 0x03, 0x3B, 0x0B, 0x5B, 0x01, 0x03, 0x1A, 0x01, 0x03, 0x3A, 0x01, 0x03, 0x3B, 0x81, 0x03, 0x1A, 0x03, 0x3A, 0x06, 0x03, 0x1A, 0x80, 0x03, 0x3A, 0x05, 0x03, 0x19, 0x05, 0x03, 0x39, 0x80, 0x03, 0x5A, 0x01, 0x03, 0x7A, 0x8A, 0x03, 0xBB, 0x1C, 0x7E, 0x2C, 0xDF, 0x24, 0xBE, 0x1C, 0x7D, 0x0B, 0xDB, 0x03, 0x9A, 0x03, 0x59, 0x03, 0x5A, 0x03, 0x59, 0x03, 0x5A, 0x02, 0x0B, 0x7A, 0x82, 0x03, 0x5A, 0x03, 0x3A, 0x03, 0x19, 0x04, 0x03, 0x3A, 0x82, 0x0B, 0x3B, 0x02, 0xFA, 0x03, 0x1A, 0x01, 0x02, 0xFA, 0x80, 0x02, 0xF9, 0x03, 0x03, 0x1A, 0x80, 0x0B, 0x3A, 0x03, 0x03, 0x1A, 0x84, 0x0B, 0x3A, 0x0B, 0x5A, 0x0B, 0x3A, 0x0B, 0x5B, 0x03, 0x19, 0x01, 0x03, 0x3A, 0x80, 0x0B, 0x3A, 0x01, 0x0B, 0x5A, 0x8E, 0x03, 0x3A, 0x03, 0x1A, 0x24, 0x1E, 0x24, 0x3E, 0x2C, 0x7E, 0x2C, 0x9F, + 0x2C, 0xDF, 0x24, 0x9E, 0x1C, 0x5D, 0x14, 0x1C, 0x0B, 0xFC, 0x0B, 0xDB, 0x0B, 0xDC, 0x13, 0xFC, 0x13, 0xDC, 0x01, 0x0B, 0x9B, 0x82, 0x0B, 0x7B, 0x13, 0xBB, 0x0B, 0x9B, 0x01, 0x13, 0x9B, 0x81, 0x13, 0xBC, 0x0B, 0x9B, 0x02, 0x13, 0xBC, 0x85, 0x0B, 0x9B, 0x0B, 0xBB, 0x0B, 0x9B, 0x0B, 0xBB, 0x0B, 0x9B, 0x0B, 0xBB, 0x03, 0x13, 0xBC, 0x80, 0x13, 0x9C, 0x04, 0x13, 0xBC, 0x82, 0x0B, 0x7B, 0x13, 0xBC, 0x0B, 0x9C, 0x01, 0x13, 0xBC, 0x85, 0x13, 0xDD, 0x0B, 0xBC, 0x13, 0xDC, 0x0B, 0x9C, 0x13, 0xBC, 0x0B, 0x9B, 0x01, 0x0B, 0xBC, 0x82, 0x13, 0xBC, 0x0B, 0xBC, 0x13, 0xBC, 0x02, 0x0B, 0x9B, 0x01, 0x03, 0x7B, 0x82, 0x03, 0x9B, 0x03, 0x7B, 0x03, 0x9B, 0x01, 0x03, 0x9A, 0x83, 0x0B, 0xBB, 0x14, 0x1C, 0x1C, 0x5D, 0x24, 0xBE, 0x01, 0x24, 0xDF, 0x83, 0x24, 0x9E, 0x14, 0x3D, 0x0B, 0xFC, 0x0B, 0xDC, 0x02, 0x0B, 0xBB, 0x01, 0x0B, 0x9B, 0x84, 0x13, 0xBB, 0x0B, 0xBB, 0x13, 0xDB, 0x13, 0xDC, 0x13, 0xDB, 0x01, 0x13, 0xDC, 0x89, 0x0B, 0xBB, 0x13, 0xBC, 0x0B, 0x9B, 0x13, 0xBC, 0x13, 0xDC, 0x0B, 0xBC, 0x13, 0xDC, 0x0B, 0xDC, 0x0B, 0xBC, 0x13, 0xDC, 0x02, 0x0B, 0xBC, 0x83, 0x13, 0xBC, 0x13, 0xDC, 0x13, 0xDD, 0x0B, 0xBC, 0x01, 0x13, 0xDD, 0x03, 0x13, 0xBD, 0x02, 0x13, 0xDD, 0x89, 0x13, 0x9C, 0x13, 0xDD, 0x13, 0xBC, 0x13, 0xDD, 0x13, 0xBC, 0x13, 0xDC, 0x13, 0xFD, 0x13, 0xFC, 0x13, 0xDC, 0x0B, 0xBC, 0x02, 0x0B, 0xBB, 0x03, 0x03, 0x9A, 0x86, 0x0B, 0xBB, 0x14, 0x3D, 0x24, 0x9E, 0x2C, 0xDF, 0x2D, 0x1F, 0x24, 0xFF, 0x1C, 0x7E, 0x01, 0x14, 0x3D, 0x80, 0x13, + 0xFC, 0x01, 0x13, 0xDC, 0x01, 0x13, 0xBC, 0x82, 0x13, 0xDC, 0x13, 0xBC, 0x13, 0xFC, 0x01, 0x13, 0xDC, 0x04, 0x0B, 0xDC, 0x01, 0x13, 0xDC, 0x82, 0x0B, 0xBC, 0x13, 0xBC, 0x13, 0xDC, 0x02, 0x13, 0xBC, 0x87, 0x13, 0xFD, 0x0B, 0xDC, 0x13, 0xDC, 0x0B, 0xBC, 0x13, 0xDD, 0x0B, 0xDC, 0x0B, 0xBC, 0x13, 0xBC, 0x02, 0x13, 0xDD, 0x01, 0x13, 0xFD, 0x80, 0x13, 0xDD, 0x01, 0x1B, 0xFD, 0x8C, 0x13, 0xFD, 0x13, 0xDD, 0x1B, 0xDD, 0x13, 0xBC, 0x13, 0xDD, 0x13, 0xBC, 0x13, 0xDC, 0x0B, 0xDC, 0x13, 0xDC, 0x0B, 0xBC, 0x13, 0xDC, 0x13, 0xFC, 0x0B, 0xBB, 0x01, 0x0B, 0xDB, 0x01, 0x03, 0x9A, 0x8F, 0x03, 0xDB, 0x1C, 0x5D, 0x24, 0xDF, 0x2D, 0x1F, 0x24, 0xFF, 0x1C, 0x9E, 0x14, 0x5D, 0x14, 0x3D, 0x14, 0x1D, 0x13, 0xFC, 0x13, 0xFD, 0x13, 0xFC, 0x0B, 0xDC, 0x13, 0xFD, 0x0B, 0xFC, 0x13, 0xFD, 0x04, 0x0B, 0xDC, 0x01, 0x0B, 0xDD, 0x01, 0x0B, 0xDC, 0x08, 0x13, 0xFD, 0x80, 0x13, 0xDD, 0x01, 0x13, 0xFD, 0x01, 0x13, 0xDD, 0x82, 0x13, 0xFD, 0x0B, 0xDC, 0x13, 0xDD, 0x03, 0x13, 0xFD, 0x85, 0x0B, 0xDC, 0x13, 0xFD, 0x14, 0x1D, 0x0B, 0xFC, 0x0B, 0xDC, 0x13, 0xFD, 0x02, 0x0B, 0xDC, 0x01, 0x13, 0xDC, 0x80, 0x13, 0xFC, 0x03, 0x0B, 0xDC, 0x84, 0x0B, 0xFC, 0x03, 0xDB, 0x03, 0xBA, 0x03, 0xDB, 0x14, 0x5D, 0x01, 0x24, 0xDF, 0x80, 0x1C, 0x9E, 0x01, 0x14, 0x3D, 0x84, 0x14, 0x5D, 0x14, 0x3D, 0x14, 0x1C, 0x13, 0xFC, 0x0B, 0xDC, 0x01, 0x13, 0xFC, 0x88, 0x14, 0x1D, 0x0B, 0xFC, 0x13, 0xFD, 0x14, 0x1D, 0x13, 0xFD, 0x0B, 0xDC, 0x13, 0xDC, 0x0B, 0xDC, 0x13, 0xFC, 0x01, 0x13, 0xFD, + 0x80, 0x13, 0xDD, 0x04, 0x13, 0xFD, 0x80, 0x14, 0x1D, 0x01, 0x13, 0xFD, 0x88, 0x14, 0x1D, 0x13, 0xFD, 0x14, 0x1D, 0x1C, 0x1E, 0x1C, 0x1D, 0x13, 0xFD, 0x1C, 0x1D, 0x13, 0xFD, 0x1C, 0x1E, 0x02, 0x13, 0xFD, 0x02, 0x1C, 0x1D, 0x82, 0x14, 0x1D, 0x1C, 0x1D, 0x14, 0x1D, 0x01, 0x1C, 0x1D, 0x80, 0x13, 0xDC, 0x01, 0x13, 0xFC, 0x82, 0x0B, 0x9B, 0x13, 0xFC, 0x0B, 0xDB, 0x02, 0x0B, 0xFC, 0x8A, 0x0C, 0x1C, 0x03, 0xFB, 0x03, 0xDB, 0x0C, 0x3C, 0x1C, 0xFF, 0x1C, 0xDF, 0x14, 0x7D, 0x14, 0x9D, 0x1C, 0x9E, 0x1C, 0x5D, 0x14, 0x3D, 0x02, 0x14, 0x1C, 0x80, 0x14, 0x1D, 0x03, 0x13, 0xFD, 0x84, 0x14, 0x1D, 0x13, 0xFD, 0x14, 0x1D, 0x13, 0xFD, 0x14, 0x1D, 0x01, 0x13, 0xFD, 0x82, 0x13, 0xDD, 0x13, 0xFD, 0x14, 0x1D, 0x01, 0x13, 0xFD, 0x81, 0x14, 0x1D, 0x13, 0xFD, 0x02, 0x14, 0x1D, 0x80, 0x13, 0xFD, 0x01, 0x1C, 0x1E, 0x02, 0x14, 0x1D, 0x81, 0x1C, 0x1D, 0x1C, 0x3E, 0x01, 0x1C, 0x1D, 0x84, 0x1C, 0x1E, 0x1C, 0x1D, 0x14, 0x1D, 0x1C, 0x1D, 0x1C, 0x3E, 0x01, 0x14, 0x1D, 0x80, 0x1C, 0x3E, 0x01, 0x1C, 0x3D, 0x85, 0x14, 0x1D, 0x1C, 0x3D, 0x1C, 0x1D, 0x1C, 0x3D, 0x13, 0xFC, 0x1C, 0x1D, 0x03, 0x13, 0xFC, 0x89, 0x0B, 0xDC, 0x0B, 0xFC, 0x03, 0xDB, 0x1C, 0xBE, 0x24, 0xDF, 0x14, 0x5D, 0x1C, 0x9E, 0x1C, 0x7E, 0x1C, 0x5D, 0x1C, 0x3D, 0x02, 0x14, 0x1C, 0x81, 0x1C, 0x1C, 0x14, 0x1C, 0x03, 0x1C, 0x1D, 0x81, 0x1C, 0x1E, 0x1B, 0xFD, 0x02, 0x1C, 0x1D, 0x82, 0x1C, 0x3E, 0x1C, 0x1D, 0x14, 0x1D, 0x01, 0x1C, 0x1E, 0x02, 0x1C, 0x3E, 0x01, 0x1C, 0x1D, 0x01, 0x1C, 0x3E, 0x80, + 0x1C, 0x1D, 0x01, 0x1C, 0x3E, 0x82, 0x1C, 0x1E, 0x1C, 0x1D, 0x1C, 0x3D, 0x03, 0x1C, 0x3E, 0x80, 0x1C, 0x3D, 0x02, 0x1C, 0x3E, 0x84, 0x1C, 0x3D, 0x1C, 0x5E, 0x1C, 0x3E, 0x1C, 0x5E, 0x1C, 0x3D, 0x01, 0x1C, 0x1D, 0x81, 0x1C, 0x3D, 0x1C, 0x5D, 0x01, 0x1C, 0x3D, 0x8B, 0x1C, 0x1D, 0x13, 0xFC, 0x1C, 0x3D, 0x1C, 0x5D, 0x14, 0x1C, 0x0B, 0xFC, 0x0C, 0x1C, 0x24, 0xBF, 0x24, 0xDF, 0x14, 0x5D, 0x14, 0x5E, 0x14, 0x3D, 0x03, 0x14, 0x1D, 0x80, 0x1C, 0x1D, 0x01, 0x14, 0x1D, 0x81, 0x13, 0xFC, 0x1C, 0x3D, 0x01, 0x1C, 0x1D, 0x81, 0x13, 0xFD, 0x1C, 0x3D, 0x02, 0x1C, 0x1D, 0x80, 0x1C, 0x3E, 0x02, 0x1C, 0x1D, 0x83, 0x1C, 0x3E, 0x14, 0x1D, 0x1C, 0x3D, 0x1C, 0x1D, 0x02, 0x1C, 0x3D, 0x02, 0x1C, 0x1D, 0x02, 0x1C, 0x3D, 0x80, 0x1C, 0x1D, 0x02, 0x1C, 0x3D, 0x80, 0x1C, 0x1D, 0x01, 0x1C, 0x3D, 0x80, 0x1C, 0x5D, 0x01, 0x1C, 0x3D, 0x86, 0x14, 0x1D, 0x1C, 0x5E, 0x1C, 0x3D, 0x1C, 0x3E, 0x1C, 0x5E, 0x1C, 0x3E, 0x1C, 0x3D, 0x01, 0x24, 0x7F, 0x83, 0x1C, 0x5E, 0x24, 0x7E, 0x24, 0x5E, 0x1C, 0x1D, 0x02, 0x1C, 0x3D, 0x88, 0x14, 0x1D, 0x1C, 0xBE, 0x14, 0x7E, 0x0C, 0x1D, 0x1C, 0x3E, 0x14, 0x3D, 0x14, 0x1D, 0x14, 0x3D, 0x14, 0x1D, 0x02, 0x1C, 0x3E, 0x84, 0x1C, 0x1E, 0x1C, 0x3E, 0x1C, 0x1D, 0x1C, 0x3E, 0x24, 0x3E, 0x03, 0x1C, 0x3E, 0x01, 0x1C, 0x5E, 0x81, 0x1C, 0x3D, 0x1C, 0x1D, 0x01, 0x1C, 0x3E, 0x83, 0x1C, 0x3D, 0x1C, 0x1D, 0x1C, 0x3E, 0x1C, 0x1D, 0x02, 0x1C, 0x3E, 0x88, 0x1C, 0x1D, 0x1C, 0x3E, 0x1C, 0x1D, 0x1C, 0x3D, 0x1C, 0x1D, 0x1C, 0x3D, 0x1C, 0x1D, 0x1C, + 0x3D, 0x1C, 0x1D, 0x02, 0x1C, 0x3E, 0x89, 0x1C, 0x3D, 0x1C, 0x3E, 0x1C, 0x1D, 0x1C, 0x3E, 0x1C, 0x5E, 0x1C, 0x3E, 0x14, 0x1D, 0x1C, 0x3E, 0x1C, 0x1E, 0x1C, 0x1D, 0x01, 0x1C, 0x3E, 0x80, 0x1C, 0x1D, 0x02, 0x1C, 0x3E, 0x88, 0x1C, 0x1D, 0x1C, 0x3D, 0x14, 0x1D, 0x14, 0x3D, 0x14, 0x5D, 0x0C, 0x1C, 0x24, 0xDF, 0x1C, 0xDE, 0x14, 0x7D, 0x01, 0x14, 0x3D, 0x80, 0x14, 0x1D, 0x01, 0x14, 0x3D, 0x01, 0x1C, 0x3E, 0x80, 0x1B, 0xFD, 0x02, 0x1C, 0x1E, 0x80, 0x1C, 0x3E, 0x01, 0x1C, 0x1E, 0x81, 0x1C, 0x3E, 0x1C, 0x1E, 0x02, 0x1C, 0x3E, 0x80, 0x1C, 0x1D, 0x04, 0x1C, 0x3E, 0x80, 0x14, 0x1D, 0x01, 0x1C, 0x3E, 0x81, 0x1C, 0x1E, 0x14, 0x1D, 0x02, 0x1C, 0x3E, 0x80, 0x1C, 0x1E, 0x01, 0x1C, 0x3E, 0x8D, 0x1C, 0x1E, 0x14, 0x1D, 0x1C, 0x1E, 0x1C, 0x1D, 0x1C, 0x1E, 0x1C, 0x1D, 0x1C, 0x3E, 0x1C, 0x1D, 0x1C, 0x1E, 0x1C, 0x3E, 0x14, 0x1D, 0x13, 0xFD, 0x1C, 0x1E, 0x1C, 0x3E, 0x01, 0x13, 0xFD, 0x82, 0x1C, 0x1D, 0x13, 0xFD, 0x1C, 0x3E, 0x02, 0x14, 0x1D, 0x81, 0x14, 0x3D, 0x0C, 0x3C, 0x01, 0x14, 0x5D, 0x84, 0x1C, 0xBE, 0x14, 0x9E, 0x0C, 0x3C, 0x0C, 0x1C, 0x0B, 0xDC, 0x03, 0x13, 0xFD, 0x02, 0x1B, 0xFD, 0x82, 0x1C, 0x1E, 0x1B, 0xFD, 0x1C, 0x1E, 0x01, 0x1C, 0x1D, 0x01, 0x24, 0x3E, 0x83, 0x1B, 0xFD, 0x24, 0x3E, 0x24, 0x3D, 0x24, 0x1D, 0x01, 0x2C, 0x3E, 0x80, 0x23, 0xFD, 0x04, 0x2C, 0x3E, 0x80, 0x2C, 0x1D, 0x02, 0x34, 0x3E, 0x01, 0x34, 0x5E, 0x82, 0x34, 0x3E, 0x3C, 0x5E, 0x34, 0x5E, 0x02, 0x3C, 0x5E, 0x80, 0x34, 0x3D, 0x01, 0x3C, 0x5E, 0x92, 0x44, 0x5E, 0x4C, + 0x7F, 0x44, 0x5F, 0x44, 0x5E, 0x4C, 0x7F, 0x4C, 0x3E, 0x4C, 0x1D, 0x4C, 0x1E, 0x54, 0x1D, 0x53, 0xFD, 0x63, 0xFD, 0x73, 0xDC, 0x73, 0x7A, 0x7A, 0xB8, 0x82, 0x35, 0x92, 0x35, 0x99, 0xF4, 0xA2, 0x14, 0xA1, 0xD3, 0x01, 0xA9, 0xD3, 0x82, 0xA9, 0xB3, 0xB1, 0xF4, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x02, 0xA1, 0xF3, 0x85, 0x99, 0xF3, 0x9A, 0x13, 0xA2, 0x74, 0xA2, 0x34, 0x99, 0xD2, 0xA1, 0xF3, 0x03, 0xA9, 0xF3, 0x80, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x8B, 0xA2, 0x14, 0xA2, 0x34, 0x9A, 0x35, 0x8A, 0x55, 0x82, 0xD8, 0x5A, 0x97, 0x74, 0x3D, 0x5C, 0x1D, 0x44, 0x1D, 0x33, 0xFD, 0x23, 0xFD, 0x24, 0x1D, 0x01, 0x1B, 0xFD, 0x85, 0x24, 0x1D, 0x1B, 0xFD, 0x1C, 0x1D, 0x24, 0x3E, 0x1C, 0x1D, 0x1B, 0xFD, 0x01, 0x1C, 0x1D, 0x01, 0x13, 0xDD, 0x01, 0x13, 0xFD, 0x81, 0x14, 0x1D, 0x13, 0xFD, 0x01, 0x14, 0x1D, 0x81, 0x13, 0xFD, 0x13, 0xDC, 0x01, 0x13, 0xFD, 0x01, 0x13, 0xFC, 0x89, 0x0B, 0xFC, 0x0C, 0x1C, 0x14, 0x3D, 0x0C, 0x5D, 0x14, 0x7D, 0x1C, 0x9E, 0x1C, 0xDF, 0x1C, 0x9E, 0x0C, 0x3C, 0x0C, 0x1C, 0x01, 0x03, 0xDB, 0x80, 0x03, 0xBB, 0x01, 0x0B, 0xBB, 0x86, 0x0B, 0xBC, 0x0B, 0xDC, 0x13, 0xDC, 0x13, 0xFC, 0x13, 0xDC, 0x13, 0xFD, 0x1C, 0x1D, 0x01, 0x13, 0xFD, 0x81, 0x1B, 0xFD, 0x13, 0xDD, 0x01, 0x1B, 0xFD, 0x01, 0x13, 0xFD, 0x81, 0x1B, 0xFD, 0x13, 0xDD, 0x01, 0x1B, 0xFD, 0x01, 0x13, 0xFD, 0x82, 0x13, 0xDD, 0x13, 0xDC, 0x13, 0xFD, 0x01, 0x13, 0xDD, 0x82, 0x13, 0xFD, 0x13, 0xDC, 0x13, 0xBC, 0x01, 0x13, 0xFD, 0x82, 0x13, 0xDD, 0x13, 0xDC, 0x13, 0xFD, 0x01, + 0x13, 0xDC, 0x82, 0x13, 0xFD, 0x13, 0xDC, 0x0B, 0xBC, 0x02, 0x13, 0xFD, 0x02, 0x0B, 0xDC, 0x80, 0x13, 0xDC, 0x02, 0x0B, 0xDC, 0x81, 0x0B, 0xBB, 0x0B, 0xDC, 0x01, 0x0B, 0xFC, 0x88, 0x0C, 0x1C, 0x14, 0x7D, 0x1C, 0xBE, 0x24, 0xBF, 0x1C, 0x9E, 0x14, 0x3D, 0x0B, 0xDB, 0x03, 0xBB, 0x03, 0x9B, 0x01, 0x03, 0x7B, 0x81, 0x0B, 0x7B, 0x0B, 0x9B, 0x02, 0x13, 0xBC, 0x01, 0x13, 0xDC, 0x81, 0x13, 0xDD, 0x13, 0xBC, 0x01, 0x13, 0xDD, 0x81, 0x13, 0xFD, 0x13, 0xDC, 0x01, 0x13, 0xFD, 0x81, 0x0B, 0xDC, 0x0B, 0xBC, 0x01, 0x0B, 0xDC, 0x01, 0x13, 0xFD, 0x83, 0x0B, 0xDD, 0x0B, 0xDC, 0x13, 0xFD, 0x0B, 0xDD, 0x02, 0x13, 0xFD, 0x01, 0x13, 0xDD, 0x82, 0x0B, 0xBC, 0x13, 0xBC, 0x13, 0xDD, 0x01, 0x13, 0xBC, 0x82, 0x13, 0xDD, 0x13, 0xBD, 0x13, 0xFD, 0x01, 0x13, 0xDC, 0x81, 0x0B, 0xDC, 0x13, 0xDC, 0x01, 0x0B, 0xDC, 0x82, 0x0B, 0xBC, 0x13, 0xDC, 0x0B, 0xDC, 0x01, 0x0B, 0xBC, 0x8D, 0x0B, 0x9B, 0x03, 0x9B, 0x0B, 0xBC, 0x03, 0xBB, 0x0B, 0xDC, 0x14, 0x3D, 0x1C, 0x7E, 0x24, 0x9F, 0x1C, 0x7E, 0x14, 0x3D, 0x0B, 0xFC, 0x03, 0xBB, 0x03, 0x9A, 0x03, 0x7A, 0x03, 0x03, 0x9B, 0x81, 0x0B, 0x9B, 0x13, 0xBC, 0x03, 0x13, 0xDC, 0x83, 0x13, 0xFD, 0x13, 0xDC, 0x13, 0xBC, 0x0B, 0x9C, 0x01, 0x13, 0xDC, 0x81, 0x13, 0xBC, 0x0B, 0xBC, 0x01, 0x13, 0xBC, 0x80, 0x13, 0xDD, 0x03, 0x13, 0xBC, 0x80, 0x0B, 0xBC, 0x02, 0x13, 0xBD, 0x81, 0x0B, 0x9C, 0x13, 0xBC, 0x03, 0x13, 0xDD, 0x01, 0x13, 0xBC, 0x01, 0x13, 0xDD, 0x01, 0x13, 0xDC, 0x02, 0x13, 0xBC, 0x81, 0x0B, 0xBC, 0x0B, 0x9B, 0x03, + 0x0B, 0xBB, 0x01, 0x0B, 0x9B, 0x01, 0x0B, 0xBB, 0x83, 0x03, 0xBB, 0x0B, 0xFB, 0x14, 0x3D, 0x1C, 0x7D, 0x01, 0x24, 0xBF, 0x82, 0x1C, 0x7E, 0x14, 0x1C, 0x0B, 0xBB, 0x01, 0x03, 0x7A, 0x80, 0x03, 0x9A, 0x04, 0x0B, 0x9B, 0x80, 0x0B, 0x7B, 0x01, 0x0B, 0x9B, 0x01, 0x0B, 0x9C, 0x03, 0x13, 0x9C, 0x81, 0x13, 0xBC, 0x13, 0x9C, 0x01, 0x13, 0xBC, 0x81, 0x13, 0x9C, 0x0B, 0x7C, 0x03, 0x13, 0xBC, 0x80, 0x13, 0xDD, 0x01, 0x13, 0xBC, 0x82, 0x0B, 0x7B, 0x0B, 0x9C, 0x13, 0xBC, 0x03, 0x0B, 0x9B, 0x83, 0x0B, 0x7B, 0x0B, 0x7C, 0x2C, 0x7F, 0x24, 0x3E, 0x01, 0x1B, 0xFD, 0x83, 0x13, 0xBC, 0x0B, 0x7B, 0x13, 0x9B, 0x13, 0xBC, 0x01, 0x13, 0xDC, 0x80, 0x13, 0xBC, 0x01, 0x13, 0x9B, 0x81, 0x13, 0xDC, 0x13, 0xBC, 0x02, 0x13, 0xDC, 0x01, 0x1B, 0xDC, 0x82, 0x13, 0xBC, 0x1B, 0xDC, 0x1B, 0xBC, 0x01, 0x13, 0xBC, 0x80, 0x1B, 0xDC, 0x03, 0x13, 0xBC, 0x01, 0x13, 0x9C, 0x80, 0x13, 0x7C, 0x02, 0x13, 0x9C, 0x01, 0x13, 0xBC, 0x81, 0x13, 0x9C, 0x13, 0xBC, 0x01, 0x1B, 0xDD, 0x82, 0x13, 0xBD, 0x13, 0xBC, 0x13, 0x9C, 0x01, 0x13, 0xBC, 0x81, 0x1B, 0xFD, 0x1B, 0xDD, 0x01, 0x1B, 0xFD, 0x02, 0x13, 0xFD, 0x01, 0x13, 0xBC, 0x8B, 0x0B, 0x9C, 0x0B, 0x9B, 0x0B, 0x9C, 0x0B, 0x9B, 0x0B, 0xBC, 0x13, 0xFD, 0x14, 0x1D, 0x13, 0xDC, 0x14, 0x3D, 0x1C, 0x7E, 0x24, 0x7E, 0x2C, 0xBF, 0x01, 0x24, 0x9E, 0x82, 0x24, 0x5E, 0x1B, 0xFC, 0x13, 0xDC, 0x03, 0x0B, 0x9B, 0x80, 0x13, 0xBC, 0x02, 0x13, 0xDC, 0x84, 0x1B, 0xFD, 0x13, 0xFC, 0x1B, 0xFD, 0x13, 0xDC, 0x1B, 0xFD, 0x01, 0x13, 0xDC, 0x8B, + 0x1B, 0xFD, 0x1C, 0x1D, 0x1B, 0xFD, 0x1C, 0x1D, 0x1B, 0xFD, 0x13, 0xDC, 0x13, 0xDD, 0x1B, 0xFD, 0x13, 0xDC, 0x1B, 0xFD, 0x13, 0xDD, 0x13, 0xBC, 0x01, 0x13, 0xDD, 0x82, 0x13, 0xBD, 0x13, 0xDD, 0x13, 0xBC, 0x01, 0x13, 0xDD, 0x85, 0x13, 0xBC, 0x13, 0xDD, 0x1B, 0xDD, 0x13, 0xBD, 0x1B, 0xBD, 0x13, 0xBD, 0x01, 0x1B, 0xDD, 0x86, 0x24, 0x1E, 0x1B, 0xFE, 0x1C, 0x1D, 0x24, 0x3E, 0x1C, 0x1E, 0x1C, 0x1D, 0x1B, 0xFD, 0x01, 0x13, 0xBC, 0x82, 0x13, 0xDC, 0x0B, 0xBB, 0x0B, 0xDB, 0x01, 0x0B, 0xBB, 0x81, 0x14, 0x3C, 0x1C, 0x5D, 0x01, 0x24, 0xDF, 0x84, 0x2C, 0xDF, 0x24, 0x9F, 0x24, 0x7E, 0x1C, 0x1D, 0x13, 0xDC, 0x02, 0x13, 0xFC, 0x80, 0x13, 0xDC, 0x01, 0x13, 0xBC, 0x81, 0x1B, 0xFD, 0x24, 0x3E, 0x02, 0x1B, 0xFD, 0x80, 0x1C, 0x1D, 0x01, 0x1B, 0xFD, 0x80, 0x1C, 0x1D, 0x01, 0x14, 0x1D, 0x01, 0x13, 0xFD, 0x82, 0x1C, 0x1D, 0x13, 0xFD, 0x13, 0xDD, 0x01, 0x13, 0xFD, 0x81, 0x1B, 0xFD, 0x1C, 0x1D, 0x02, 0x13, 0xFD, 0x81, 0x1C, 0x1D, 0x13, 0xDD, 0x01, 0x13, 0xFD, 0x81, 0x13, 0xDD, 0x13, 0xFD, 0x01, 0x13, 0xDD, 0x81, 0x1B, 0xFD, 0x13, 0xDD, 0x01, 0x1B, 0xDD, 0x80, 0x13, 0xDD, 0x02, 0x1B, 0xFD, 0x01, 0x24, 0x3E, 0x85, 0x1C, 0x1E, 0x1C, 0x3E, 0x1C, 0x3D, 0x13, 0xFD, 0x14, 0x1D, 0x13, 0xDC, 0x01, 0x0B, 0x9B, 0x88, 0x03, 0x9A, 0x03, 0x7A, 0x0B, 0xFC, 0x24, 0xBE, 0x2D, 0x3F, 0x2C, 0xFF, 0x2C, 0xDF, 0x24, 0x7E, 0x14, 0x1D, 0x02, 0x13, 0xFC, 0x80, 0x13, 0xDC, 0x02, 0x13, 0xFD, 0x80, 0x1C, 0x1D, 0x01, 0x14, 0x1D, 0x81, 0x1C, 0x1E, 0x1C, 0x3E, 0x01, 0x1C, + 0x1E, 0x81, 0x14, 0x1D, 0x14, 0x1E, 0x01, 0x13, 0xFD, 0x80, 0x14, 0x1E, 0x03, 0x13, 0xFD, 0x83, 0x14, 0x1D, 0x13, 0xFD, 0x13, 0xDD, 0x13, 0xFD, 0x01, 0x1C, 0x1D, 0x81, 0x13, 0xFD, 0x1B, 0xFD, 0x01, 0x1C, 0x1D, 0x01, 0x1C, 0x1E, 0x81, 0x1B, 0xFD, 0x1C, 0x1D, 0x01, 0x13, 0xFD, 0x01, 0x14, 0x1D, 0x80, 0x13, 0xFD, 0x01, 0x14, 0x1D, 0x80, 0x13, 0xFC, 0x01, 0x1C, 0x3D, 0x81, 0x14, 0x1D, 0x1C, 0x3E, 0x04, 0x1C, 0x1D, 0x8E, 0x13, 0xFD, 0x13, 0xFC, 0x14, 0x1C, 0x0C, 0x1C, 0x03, 0xDB, 0x14, 0x5D, 0x1C, 0xBE, 0x24, 0xFF, 0x24, 0xBE, 0x1C, 0x7E, 0x14, 0x3D, 0x14, 0x1D, 0x13, 0xFC, 0x0B, 0xDC, 0x13, 0xFC, 0x01, 0x13, 0xFD, 0x80, 0x1C, 0x3E, 0x01, 0x1C, 0x1D, 0x84, 0x1C, 0x1E, 0x1C, 0x3E, 0x1C, 0x1E, 0x1C, 0x3E, 0x1C, 0x1D, 0x02, 0x1C, 0x1E, 0x01, 0x1C, 0x1D, 0x85, 0x14, 0x1D, 0x1C, 0x1E, 0x13, 0xFD, 0x14, 0x1D, 0x13, 0xFD, 0x1C, 0x1E, 0x02, 0x13, 0xFD, 0x81, 0x1B, 0xFE, 0x1B, 0xFD, 0x03, 0x13, 0xFD, 0x01, 0x1C, 0x1E, 0x84, 0x13, 0xFD, 0x1B, 0xFD, 0x1C, 0x1E, 0x1B, 0xFD, 0x13, 0xDD, 0x01, 0x1B, 0xFD, 0x80, 0x13, 0xDC, 0x01, 0x13, 0xDD, 0x01, 0x1B, 0xFD, 0x81, 0x13, 0xDD, 0x1C, 0x1E, 0x01, 0x1C, 0x3E, 0x80, 0x24, 0x5E, 0x01, 0x1C, 0x3D, 0x85, 0x14, 0x1C, 0x14, 0x1D, 0x14, 0x1C, 0x14, 0x3D, 0x03, 0xFB, 0x1C, 0x9E, 0x01, 0x24, 0xFF, 0x86, 0x14, 0x7E, 0x14, 0x3D, 0x1C, 0x5D, 0x14, 0x3D, 0x1C, 0x3D, 0x14, 0x1D, 0x13, 0xFC, 0x01, 0x1C, 0x3D, 0x01, 0x1C, 0x3E, 0x80, 0x1C, 0x5E, 0x03, 0x1C, 0x3E, 0x80, 0x1C, 0x1E, 0x01, 0x14, 0x1E, 0x81, + 0x13, 0xFE, 0x1B, 0xFE, 0x01, 0x1C, 0x1E, 0x81, 0x13, 0xFD, 0x1B, 0xFE, 0x01, 0x1C, 0x1E, 0x01, 0x13, 0xFD, 0x80, 0x1C, 0x1E, 0x01, 0x1C, 0x1D, 0x83, 0x1C, 0x1E, 0x13, 0xFD, 0x14, 0x1D, 0x1C, 0x1E, 0x02, 0x13, 0xFD, 0x82, 0x1C, 0x1D, 0x1B, 0xFD, 0x1C, 0x1E, 0x01, 0x14, 0x1D, 0x84, 0x1C, 0x1D, 0x13, 0xFD, 0x14, 0x1D, 0x1C, 0x1E, 0x14, 0x1D, 0x01, 0x1C, 0x1D, 0x95, 0x1C, 0x1E, 0x1C, 0x1D, 0x1B, 0xFD, 0x1C, 0x1E, 0x24, 0x5E, 0x24, 0x3E, 0x24, 0x1E, 0x1B, 0xFD, 0x1C, 0x1D, 0x1C, 0x3E, 0x1C, 0x5E, 0x0B, 0xFC, 0x1C, 0x9E, 0x2D, 0x1F, 0x1C, 0x9E, 0x24, 0x9E, 0x14, 0x3D, 0x13, 0xFC, 0x14, 0x1D, 0x1C, 0x1D, 0x1C, 0x3E, 0x1C, 0x3D, 0x03, 0x24, 0x5E, 0x81, 0x24, 0x3E, 0x1C, 0x1E, 0x01, 0x24, 0x3E, 0x02, 0x1C, 0x1E, 0x86, 0x1B, 0xFD, 0x1C, 0x1D, 0x13, 0xFD, 0x1C, 0x3E, 0x1C, 0x1E, 0x1B, 0xFD, 0x1C, 0x1D, 0x01, 0x1C, 0x1E, 0x02, 0x1C, 0x1D, 0x80, 0x1C, 0x1E, 0x03, 0x1C, 0x1D, 0x85, 0x1C, 0x1E, 0x1C, 0x3E, 0x1C, 0x1D, 0x1C, 0x1E, 0x1C, 0x3E, 0x1C, 0x1D, 0x02, 0x1C, 0x1E, 0x03, 0x1C, 0x1D, 0x80, 0x13, 0xFD, 0x01, 0x1C, 0x3E, 0x81, 0x24, 0x3E, 0x1C, 0x3E, 0x01, 0x1C, 0x1D, 0x84, 0x1C, 0x3E, 0x1C, 0x3D, 0x1C, 0x5E, 0x1C, 0x1D, 0x1C, 0x3D, 0x01, 0x14, 0x3D, 0x81, 0x14, 0x3C, 0x2D, 0x1F, 0x03, 0x14, 0x3D, 0x07, 0x1C, 0x3E, 0x81, 0x1C, 0x1E, 0x1C, 0x3E, 0x02, 0x1C, 0x1E, 0x83, 0x1C, 0x3E, 0x1B, 0xFD, 0x1C, 0x1E, 0x1C, 0x1D, 0x01, 0x1B, 0xFD, 0x80, 0x1C, 0x1E, 0x02, 0x1C, 0x1D, 0x01, 0x13, 0xFD, 0x06, 0x1C, 0x1D, 0x81, 0x14, 0x1D, 0x1C, + 0x3D, 0x01, 0x1C, 0x1D, 0x82, 0x14, 0x1D, 0x1C, 0x3D, 0x1C, 0x1D, 0x01, 0x13, 0xFD, 0x83, 0x1C, 0x1D, 0x14, 0x1D, 0x1C, 0x3D, 0x1C, 0x1D, 0x01, 0x14, 0x1D, 0x81, 0x1C, 0x1D, 0x13, 0xFD, 0x01, 0x1C, 0x3E, 0x01, 0x13, 0xFD, 0x81, 0x1C, 0x3E, 0x1C, 0x1D, 0x01, 0x1C, 0x3E, 0x88, 0x1C, 0x1D, 0x13, 0xFD, 0x13, 0xFC, 0x2D, 0x1F, 0x24, 0xBF, 0x0B, 0xFC, 0x1C, 0x3E, 0x14, 0x1E, 0x14, 0x3E, 0x01, 0x14, 0x1E, 0x01, 0x1C, 0x1E, 0x02, 0x1C, 0x3E, 0x01, 0x1C, 0x1E, 0x01, 0x1B, 0xFD, 0x01, 0x1C, 0x3E, 0x02, 0x1C, 0x1D, 0x80, 0x1C, 0x1E, 0x03, 0x1C, 0x1D, 0x80, 0x1C, 0x1E, 0x01, 0x1C, 0x1D, 0x01, 0x1C, 0x1E, 0x85, 0x1C, 0x1D, 0x1C, 0x1E, 0x1C, 0x1D, 0x1B, 0xFD, 0x1C, 0x1D, 0x1C, 0x3E, 0x01, 0x1C, 0x1D, 0x81, 0x13, 0xFD, 0x1C, 0x1D, 0x02, 0x1B, 0xFD, 0x82, 0x1C, 0x1D, 0x1C, 0x3E, 0x1C, 0x1E, 0x02, 0x1C, 0x1D, 0x02, 0x1C, 0x3E, 0x01, 0x1C, 0x1D, 0x81, 0x1C, 0x3E, 0x24, 0x3E, 0x01, 0x1C, 0x1E, 0x88, 0x1C, 0x1D, 0x1C, 0x3E, 0x13, 0xFD, 0x14, 0x1D, 0x1C, 0x3D, 0x14, 0x3D, 0x1C, 0x5D, 0x1C, 0xBE, 0x2D, 0x3F, 0x01, 0x14, 0x5D, 0x01, 0x14, 0x5E, 0x82, 0x14, 0x3D, 0x13, 0xFD, 0x1C, 0x3E, 0x01, 0x1C, 0x1E, 0x01, 0x24, 0x3F, 0x83, 0x24, 0x5F, 0x1C, 0x3E, 0x1C, 0x1E, 0x1C, 0x3E, 0x02, 0x1C, 0x1D, 0x81, 0x1C, 0x1E, 0x13, 0xFD, 0x02, 0x1B, 0xFD, 0x80, 0x13, 0xFD, 0x03, 0x1C, 0x1D, 0x01, 0x1B, 0xFD, 0x86, 0x1C, 0x1D, 0x1C, 0x1E, 0x1C, 0x1D, 0x1C, 0x1E, 0x1C, 0x3E, 0x1C, 0x1D, 0x1B, 0xFD, 0x02, 0x1C, 0x1D, 0x8D, 0x1C, 0x1E, 0x1B, 0xFD, 0x1C, 0x1E, + 0x1C, 0x3E, 0x13, 0xFD, 0x1B, 0xFD, 0x1C, 0x1E, 0x1C, 0x1D, 0x24, 0x3E, 0x1C, 0x3E, 0x13, 0xFD, 0x1C, 0x1D, 0x24, 0x5E, 0x1C, 0x3E, 0x01, 0x1C, 0x1E, 0x81, 0x1C, 0x3E, 0x14, 0x1D, 0x01, 0x1C, 0x3E, 0x81, 0x1C, 0x5E, 0x1C, 0x7E, 0x01, 0x14, 0x7E, 0x85, 0x1C, 0xBE, 0x1C, 0x9E, 0x0B, 0xFC, 0x13, 0xFC, 0x13, 0xFD, 0x13, 0xDD, 0x01, 0x1B, 0xFD, 0x87, 0x1C, 0x1D, 0x1B, 0xFD, 0x1C, 0x1E, 0x1B, 0xFD, 0x1B, 0xFE, 0x24, 0x1E, 0x24, 0x3E, 0x1B, 0xDD, 0x01, 0x1B, 0xFD, 0x84, 0x24, 0x1D, 0x1B, 0xFD, 0x1B, 0xDD, 0x1B, 0xFD, 0x24, 0x1D, 0x04, 0x23, 0xFD, 0x80, 0x2C, 0x1E, 0x01, 0x23, 0xFD, 0x84, 0x2C, 0x1E, 0x2C, 0x1D, 0x2C, 0x1E, 0x34, 0x3E, 0x2C, 0x1E, 0x01, 0x34, 0x3E, 0x85, 0x34, 0x1D, 0x34, 0x1E, 0x3C, 0x3E, 0x34, 0x3E, 0x3C, 0x3E, 0x3C, 0x5E, 0x01, 0x3C, 0x1E, 0x85, 0x44, 0x3E, 0x3B, 0xFE, 0x44, 0x3F, 0x4C, 0x5F, 0x4C, 0x3F, 0x4C, 0x5F, 0x01, 0x54, 0x5F, 0x8A, 0x64, 0x7F, 0x64, 0x3E, 0x74, 0x3E, 0x7B, 0xDD, 0x72, 0xF9, 0x82, 0x97, 0x92, 0x56, 0x9A, 0x14, 0xA1, 0xF4, 0xA1, 0xD3, 0xB2, 0x14, 0x01, 0xA9, 0xD3, 0x01, 0xA9, 0xB3, 0x80, 0xB2, 0x14, 0x01, 0xA9, 0xF3, 0x84, 0xA1, 0xF3, 0xA1, 0xD3, 0xA1, 0xF3, 0xA2, 0x14, 0xAA, 0x34, 0x01, 0xA1, 0xF3, 0x82, 0xAA, 0x13, 0xA9, 0xF3, 0xA9, 0xD3, 0x03, 0xA9, 0xF3, 0x8B, 0xA1, 0xF3, 0xA1, 0xD3, 0xA2, 0x14, 0x9A, 0x35, 0x8A, 0x35, 0x8A, 0xD8, 0x7B, 0x19, 0x8C, 0x7F, 0x74, 0xBF, 0x54, 0x7F, 0x3C, 0x3E, 0x2C, 0x1E, 0x01, 0x2C, 0x3E, 0x80, 0x2C, 0x5E, 0x01, 0x24, 0x3E, 0x01, 0x1C, 0x1E, 0x82, + 0x1B, 0xFE, 0x24, 0x1E, 0x1B, 0xFD, 0x01, 0x1C, 0x1E, 0x85, 0x24, 0x3E, 0x1C, 0x3E, 0x1C, 0x1E, 0x1C, 0x1D, 0x1C, 0x1E, 0x1B, 0xFD, 0x01, 0x1C, 0x1D, 0x81, 0x1C, 0x3E, 0x1C, 0x1E, 0x01, 0x13, 0xFD, 0x01, 0x14, 0x1D, 0x01, 0x1C, 0x3D, 0x81, 0x14, 0x3D, 0x14, 0x1C, 0x01, 0x14, 0x5D, 0x83, 0x24, 0xBF, 0x24, 0xFF, 0x14, 0x7E, 0x0C, 0x3C, 0x01, 0x0B, 0xFC, 0x82, 0x13, 0xFC, 0x13, 0xDC, 0x0B, 0xBC, 0x02, 0x13, 0xDC, 0x01, 0x1B, 0xFD, 0x82, 0x13, 0xFD, 0x1B, 0xFD, 0x1C, 0x1D, 0x02, 0x1B, 0xFD, 0x80, 0x13, 0xDD, 0x01, 0x1B, 0xFD, 0x80, 0x1C, 0x1E, 0x02, 0x1B, 0xFD, 0x80, 0x1B, 0xDD, 0x04, 0x1B, 0xFD, 0x80, 0x1B, 0xDD, 0x03, 0x1B, 0xFD, 0x83, 0x13, 0xFD, 0x1B, 0xFD, 0x1C, 0x1E, 0x1C, 0x1D, 0x01, 0x1B, 0xFD, 0x82, 0x1C, 0x1D, 0x1B, 0xFD, 0x1C, 0x1E, 0x02, 0x13, 0xFD, 0x81, 0x1C, 0x3E, 0x1C, 0x1E, 0x02, 0x13, 0xFD, 0x81, 0x13, 0xDD, 0x13, 0xFD, 0x01, 0x13, 0xFC, 0x81, 0x14, 0x1D, 0x13, 0xFC, 0x01, 0x0B, 0xDC, 0x82, 0x03, 0xBB, 0x14, 0x3D, 0x1C, 0x7E, 0x01, 0x1C, 0x9E, 0x88, 0x14, 0x5D, 0x0B, 0xFC, 0x0B, 0xBB, 0x0B, 0xBC, 0x0B, 0x9B, 0x0B, 0x9C, 0x0B, 0x9B, 0x13, 0xBC, 0x13, 0xDC, 0x01, 0x13, 0xBC, 0x82, 0x13, 0xDC, 0x13, 0xDD, 0x13, 0xFD, 0x02, 0x13, 0xDD, 0x81, 0x13, 0xDC, 0x13, 0xDD, 0x01, 0x13, 0xFD, 0x86, 0x14, 0x1D, 0x1C, 0x1E, 0x13, 0xDD, 0x13, 0xDC, 0x13, 0xFD, 0x14, 0x1D, 0x13, 0xFD, 0x01, 0x13, 0xDD, 0x87, 0x13, 0xFD, 0x13, 0xDD, 0x1B, 0xFE, 0x13, 0xFD, 0x1B, 0xFD, 0x1B, 0xDD, 0x13, 0xBD, 0x13, 0xDD, 0x01, 0x1B, 0xDD, + 0x01, 0x1B, 0xFD, 0x80, 0x1C, 0x1D, 0x01, 0x1B, 0xFD, 0x83, 0x13, 0xDC, 0x13, 0xFD, 0x13, 0xDD, 0x1B, 0xFD, 0x01, 0x13, 0xDC, 0x01, 0x13, 0xFD, 0x02, 0x1C, 0x1D, 0x85, 0x13, 0xFD, 0x13, 0xDC, 0x0B, 0xDC, 0x0B, 0xBC, 0x14, 0x1D, 0x1C, 0x5E, 0x01, 0x24, 0x9F, 0x88, 0x1C, 0x7E, 0x14, 0x5D, 0x0C, 0x1C, 0x0B, 0xDB, 0x03, 0xBB, 0x0B, 0xBB, 0x0B, 0x9B, 0x0B, 0x7B, 0x0B, 0x5B, 0x01, 0x13, 0x9B, 0x80, 0x13, 0x9C, 0x01, 0x13, 0xBC, 0x01, 0x13, 0xDC, 0x80, 0x13, 0xDD, 0x02, 0x13, 0xDC, 0x80, 0x1B, 0xFD, 0x01, 0x13, 0xBC, 0x01, 0x13, 0xDC, 0x81, 0x1B, 0xFD, 0x1B, 0xDD, 0x01, 0x13, 0xDD, 0x80, 0x13, 0xBC, 0x03, 0x13, 0xDD, 0x81, 0x1B, 0xDD, 0x13, 0xBD, 0x01, 0x1B, 0xDD, 0x80, 0x13, 0xBC, 0x04, 0x1B, 0xDD, 0x81, 0x1B, 0xFD, 0x13, 0xDC, 0x01, 0x1B, 0xFD, 0x82, 0x1C, 0x1D, 0x13, 0xFC, 0x1B, 0xFD, 0x01, 0x13, 0xBC, 0x02, 0x13, 0xDC, 0x80, 0x13, 0xFC, 0x04, 0x0B, 0xBB, 0x81, 0x14, 0x1D, 0x24, 0x5E, 0x01, 0x2C, 0xBF, 0x84, 0x24, 0x9E, 0x1C, 0x5D, 0x0B, 0xFB, 0x03, 0x9A, 0x03, 0x7A, 0x01, 0x03, 0x5A, 0x01, 0x0B, 0x7A, 0x80, 0x03, 0x5B, 0x01, 0x0B, 0x7B, 0x02, 0x13, 0x9C, 0x81, 0x13, 0xBC, 0x1B, 0xBC, 0x04, 0x13, 0x9C, 0x02, 0x13, 0xBC, 0x80, 0x13, 0x7C, 0x01, 0x13, 0x9C, 0x01, 0x13, 0xBC, 0x81, 0x1B, 0xDD, 0x13, 0xBC, 0x01, 0x0B, 0x9C, 0x02, 0x13, 0xBC, 0x87, 0x0B, 0x9C, 0x0B, 0x7C, 0x0B, 0x3A, 0x02, 0xF9, 0x02, 0xB8, 0x02, 0x98, 0x02, 0x78, 0x02, 0x98, 0x06, 0x02, 0xB8, 0x03, 0x02, 0xD9, 0x82, 0x02, 0xF9, 0x02, 0xD9, 0x02, 0xB9, 0x02, + 0x02, 0xD9, 0x82, 0x0A, 0xFA, 0x02, 0xD9, 0x02, 0xF9, 0x01, 0x02, 0xFA, 0x82, 0x02, 0xF9, 0x0B, 0x1A, 0x02, 0xFA, 0x01, 0x02, 0xD9, 0x01, 0x0A, 0xDA, 0x01, 0x0A, 0xFB, 0x81, 0x0A, 0xFA, 0x0B, 0x1B, 0x01, 0x0B, 0x3B, 0x82, 0x0B, 0x1A, 0x0B, 0x3B, 0x0B, 0x1B, 0x04, 0x0B, 0x1A, 0x81, 0x0B, 0x3A, 0x0B, 0x1A, 0x01, 0x0B, 0x3A, 0x82, 0x03, 0x1A, 0x02, 0xF9, 0x02, 0xD9, 0x01, 0x02, 0xF9, 0x80, 0x03, 0x19, 0x02, 0x03, 0x3A, 0x88, 0x03, 0x1A, 0x13, 0xDC, 0x34, 0xBF, 0x34, 0xDF, 0x24, 0x3E, 0x1B, 0xDC, 0x0B, 0x3A, 0x02, 0xF9, 0x02, 0xB8, 0x01, 0x02, 0x98, 0x02, 0x02, 0xB9, 0x01, 0x02, 0xD9, 0x80, 0x02, 0xB9, 0x02, 0x02, 0xD9, 0x80, 0x02, 0xF9, 0x01, 0x02, 0xFA, 0x82, 0x02, 0xD9, 0x0A, 0xFA, 0x0B, 0x1A, 0x01, 0x02, 0xFA, 0x02, 0x0B, 0x1A, 0x83, 0x0B, 0x3B, 0x0B, 0x1A, 0x0B, 0x1B, 0x0B, 0x1A, 0x01, 0x0B, 0x1B, 0x01, 0x0B, 0x3B, 0x80, 0x0B, 0x1B, 0x02, 0x0B, 0x3B, 0x80, 0x0B, 0x1B, 0x02, 0x0B, 0x3B, 0x80, 0x0B, 0x1B, 0x01, 0x0B, 0x3B, 0x01, 0x0B, 0x1B, 0x80, 0x13, 0x3B, 0x03, 0x0B, 0x3B, 0x81, 0x0B, 0x1A, 0x0B, 0x3A, 0x01, 0x02, 0xF9, 0x81, 0x03, 0x19, 0x02, 0xF9, 0x01, 0x03, 0x39, 0x88, 0x03, 0x9B, 0x1C, 0x3D, 0x24, 0x9E, 0x34, 0xDF, 0x2C, 0xDF, 0x24, 0x7E, 0x13, 0xDC, 0x03, 0x19, 0x02, 0xD9, 0x01, 0x02, 0xB8, 0x02, 0x02, 0xD8, 0x84, 0x02, 0xD9, 0x02, 0xB9, 0x02, 0xD9, 0x02, 0xB9, 0x02, 0xD9, 0x01, 0x02, 0xFA, 0x83, 0x02, 0xF9, 0x02, 0xFA, 0x03, 0x1A, 0x0B, 0x3B, 0x01, 0x03, 0x3A, 0x01, 0x03, 0x3B, 0x80, 0x0B, 0x5B, 0x01, 0x0B, + 0x3B, 0x86, 0x13, 0x5B, 0x0B, 0x5B, 0x0B, 0x7B, 0x13, 0x5B, 0x0B, 0x3B, 0x0B, 0x5B, 0x0B, 0x7B, 0x03, 0x0B, 0x5B, 0x80, 0x0B, 0x3B, 0x01, 0x0B, 0x5B, 0x81, 0x0B, 0x3B, 0x0B, 0x5B, 0x03, 0x0B, 0x3B, 0x01, 0x13, 0x5B, 0x82, 0x0B, 0x3B, 0x13, 0x5B, 0x0B, 0x3B, 0x01, 0x0B, 0x5B, 0x80, 0x13, 0x7B, 0x01, 0x0B, 0x5A, 0x81, 0x03, 0x5A, 0x03, 0x19, 0x01, 0x03, 0x39, 0x8A, 0x03, 0x7A, 0x24, 0x9F, 0x35, 0x1F, 0x35, 0x3F, 0x24, 0x9E, 0x13, 0xDC, 0x03, 0x5A, 0x03, 0x19, 0x02, 0xD9, 0x02, 0xF9, 0x02, 0xD9, 0x02, 0x02, 0xF9, 0x85, 0x03, 0x1A, 0x02, 0xFA, 0x03, 0x1A, 0x03, 0x3A, 0x03, 0x3B, 0x03, 0x1A, 0x03, 0x03, 0x3B, 0x81, 0x0B, 0x3B, 0x03, 0x3B, 0x0A, 0x0B, 0x5B, 0x01, 0x13, 0x5B, 0x01, 0x0B, 0x5B, 0x84, 0x13, 0x7C, 0x0B, 0x5B, 0x13, 0x7C, 0x0B, 0x5C, 0x13, 0x7C, 0x01, 0x0B, 0x7C, 0x01, 0x0B, 0x5B, 0x80, 0x0B, 0x7C, 0x01, 0x13, 0x9C, 0x85, 0x0B, 0x7C, 0x13, 0x9C, 0x0B, 0x7B, 0x0B, 0x9C, 0x13, 0x9C, 0x0B, 0x7B, 0x01, 0x0B, 0x5B, 0x80, 0x0B, 0x3A, 0x01, 0x03, 0x3A, 0x01, 0x03, 0x5A, 0x81, 0x03, 0x7A, 0x1C, 0x7E, 0x01, 0x2C, 0xFF, 0x82, 0x1C, 0x3D, 0x03, 0x7A, 0x03, 0x19, 0x04, 0x02, 0xF9, 0x03, 0x03, 0x1A, 0x86, 0x0B, 0x3B, 0x03, 0x3B, 0x0B, 0x3B, 0x0B, 0x5B, 0x0B, 0x3B, 0x0B, 0x5B, 0x0B, 0x7C, 0x03, 0x0B, 0x5B, 0x80, 0x0B, 0x5C, 0x01, 0x0B, 0x7C, 0x85, 0x0B, 0x5B, 0x0B, 0x7C, 0x13, 0x7C, 0x0B, 0x7C, 0x0B, 0x5B, 0x0B, 0x5C, 0x02, 0x0B, 0x5B, 0x81, 0x0B, 0x5C, 0x0B, 0x3B, 0x01, 0x0B, 0x5B, 0x80, 0x0B, 0x3B, 0x01, 0x0B, 0x5B, 0x01, + 0x0B, 0x3B, 0x82, 0x0B, 0x5B, 0x0B, 0x3B, 0x0B, 0x5B, 0x01, 0x0B, 0x3B, 0x81, 0x02, 0xFA, 0x0B, 0x3B, 0x01, 0x0B, 0x5B, 0x81, 0x0B, 0x7B, 0x0B, 0x3B, 0x01, 0x0B, 0x5B, 0x01, 0x0B, 0x5A, 0x87, 0x03, 0x5A, 0x03, 0x39, 0x03, 0x5A, 0x03, 0x7A, 0x1C, 0x7E, 0x2C, 0xFF, 0x24, 0xBF, 0x0B, 0xBB, 0x01, 0x03, 0x39, 0x82, 0x03, 0x19, 0x03, 0x3A, 0x03, 0x19, 0x01, 0x03, 0x1A, 0x81, 0x03, 0x3A, 0x03, 0x1A, 0x01, 0x0B, 0x5B, 0x80, 0x03, 0x3B, 0x01, 0x0B, 0x5B, 0x83, 0x03, 0x5B, 0x0B, 0x5B, 0x0B, 0x5C, 0x0B, 0x5B, 0x03, 0x0B, 0x5C, 0x80, 0x0B, 0x7C, 0x02, 0x0B, 0x5C, 0x80, 0x0B, 0x7C, 0x02, 0x0B, 0x5C, 0x84, 0x0B, 0x7C, 0x0B, 0x5C, 0x0B, 0x7C, 0x0B, 0x5B, 0x0B, 0x5C, 0x04, 0x0B, 0x5B, 0x81, 0x0B, 0x7C, 0x0B, 0x5B, 0x03, 0x0B, 0x5C, 0x81, 0x0B, 0x7C, 0x0B, 0x5B, 0x01, 0x0B, 0x7C, 0x81, 0x0B, 0x7B, 0x13, 0x7C, 0x02, 0x0B, 0x5B, 0x01, 0x0B, 0x3B, 0x80, 0x0B, 0x1A, 0x01, 0x03, 0x1A, 0x87, 0x03, 0x3A, 0x03, 0x5A, 0x0B, 0xFC, 0x34, 0xFF, 0x1C, 0x3D, 0x03, 0x7B, 0x03, 0x3A, 0x03, 0x1A, 0x01, 0x02, 0xF9, 0x80, 0x02, 0xFA, 0x02, 0x03, 0x1A, 0x81, 0x03, 0x3A, 0x0B, 0x5B, 0x01, 0x0B, 0x3B, 0x02, 0x0B, 0x5B, 0x80, 0x0B, 0x5C, 0x02, 0x0B, 0x5B, 0x84, 0x0B, 0x7B, 0x0B, 0x5B, 0x0B, 0x7B, 0x13, 0x7C, 0x0B, 0x5B, 0x01, 0x0B, 0x7C, 0x87, 0x13, 0x7C, 0x0B, 0x5B, 0x0B, 0x7C, 0x0B, 0x7B, 0x0B, 0x7C, 0x0B, 0x5B, 0x0B, 0x7B, 0x0B, 0x5B, 0x02, 0x0B, 0x7C, 0x80, 0x0B, 0x7B, 0x05, 0x0B, 0x7C, 0x82, 0x0B, 0x7B, 0x0B, 0x5B, 0x0B, 0x7C, 0x02, 0x0B, 0x7B, 0x82, + 0x13, 0x7C, 0x0B, 0x5B, 0x13, 0x7C, 0x01, 0x13, 0x9C, 0x04, 0x0B, 0x7B, 0x83, 0x03, 0x7B, 0x03, 0x5A, 0x14, 0x1C, 0x2C, 0xFF, 0x01, 0x03, 0x5A, 0x02, 0x03, 0x3B, 0x01, 0x03, 0x5B, 0x02, 0x0B, 0x5B, 0x82, 0x0B, 0x7C, 0x0B, 0x5C, 0x0B, 0x5B, 0x01, 0x0B, 0x7C, 0x01, 0x0B, 0x5C, 0x81, 0x0B, 0x5B, 0x0B, 0x5C, 0x04, 0x0B, 0x5B, 0x81, 0x0B, 0x7B, 0x0B, 0x5B, 0x04, 0x0B, 0x7C, 0x84, 0x0B, 0x5B, 0x13, 0x7C, 0x0B, 0x7B, 0x13, 0x7C, 0x0B, 0x5B, 0x01, 0x0B, 0x7B, 0x80, 0x13, 0x7B, 0x01, 0x0B, 0x7B, 0x81, 0x0B, 0x5B, 0x0B, 0x7B, 0x02, 0x0B, 0x5B, 0x80, 0x0B, 0x7B, 0x06, 0x0B, 0x5B, 0x8F, 0x0B, 0x3B, 0x03, 0x3B, 0x0B, 0x3B, 0x03, 0x3B, 0x0B, 0x3B, 0x0B, 0x5B, 0x03, 0x3A, 0x0B, 0x5B, 0x03, 0x1A, 0x02, 0xF9, 0x2C, 0xBF, 0x24, 0xBF, 0x03, 0x19, 0x03, 0x5B, 0x03, 0x3B, 0x03, 0x5B, 0x04, 0x0B, 0x5B, 0x80, 0x0B, 0x3B, 0x01, 0x0B, 0x5B, 0x80, 0x0B, 0x3B, 0x04, 0x0B, 0x5B, 0x82, 0x0B, 0x7B, 0x0B, 0x5B, 0x13, 0x7C, 0x02, 0x0B, 0x5B, 0x01, 0x0B, 0x7B, 0x01, 0x0B, 0x5B, 0x01, 0x0B, 0x5C, 0x81, 0x0B, 0x7B, 0x0B, 0x5B, 0x01, 0x0B, 0x7B, 0x82, 0x0B, 0x7C, 0x0B, 0x5B, 0x0B, 0x7C, 0x05, 0x0B, 0x5B, 0x81, 0x0B, 0x7B, 0x0B, 0x7C, 0x08, 0x0B, 0x5B, 0x83, 0x03, 0x3B, 0x0B, 0x3B, 0x0B, 0x5B, 0x0B, 0x3B, 0x03, 0x03, 0x3A, 0x8A, 0x03, 0x1A, 0x03, 0x3A, 0x03, 0x7A, 0x0B, 0xDB, 0x2C, 0xFF, 0x0C, 0x1C, 0x03, 0x7A, 0x03, 0x7B, 0x03, 0x5A, 0x0B, 0x9B, 0x0B, 0x5B, 0x04, 0x0B, 0x3B, 0x02, 0x0B, 0x5B, 0x80, 0x0B, 0x5C, 0x05, 0x0B, 0x5B, 0x80, 0x0B, 0x3B, 0x01, + 0x0B, 0x5B, 0x80, 0x0B, 0x3B, 0x02, 0x0B, 0x5B, 0x80, 0x0B, 0x3B, 0x05, 0x0B, 0x5B, 0x81, 0x0B, 0x7B, 0x13, 0x7B, 0x01, 0x0B, 0x7B, 0x08, 0x0B, 0x5B, 0x84, 0x0B, 0x7C, 0x0B, 0x5B, 0x0B, 0x3B, 0x0B, 0x5B, 0x0B, 0x3B, 0x01, 0x0B, 0x5B, 0x82, 0x03, 0x3B, 0x03, 0x1A, 0x0B, 0x3B, 0x02, 0x03, 0x3A, 0x8C, 0x03, 0x5B, 0x0B, 0x9B, 0x0B, 0xBC, 0x1C, 0x5E, 0x2C, 0xDF, 0x14, 0x1D, 0x03, 0x5A, 0x03, 0x3A, 0x03, 0x1A, 0x03, 0x3A, 0x0B, 0x5B, 0x0B, 0x3B, 0x0B, 0x5B, 0x01, 0x0B, 0x3B, 0x80, 0x13, 0x5B, 0x02, 0x0B, 0x5B, 0x83, 0x13, 0x5B, 0x0B, 0x3B, 0x13, 0x7B, 0x0B, 0x5B, 0x02, 0x0B, 0x3B, 0x03, 0x13, 0x3B, 0x80, 0x13, 0x5B, 0x01, 0x13, 0x3B, 0x01, 0x13, 0x5B, 0x02, 0x1B, 0x5B, 0x82, 0x1B, 0x7B, 0x1B, 0x5B, 0x1B, 0x7B, 0x02, 0x23, 0x7C, 0x80, 0x2B, 0x9C, 0x01, 0x23, 0x7C, 0x81, 0x2B, 0x9C, 0x2B, 0x7C, 0x01, 0x2B, 0x5C, 0x81, 0x2B, 0x7C, 0x2B, 0x5B, 0x01, 0x33, 0x7C, 0x8E, 0x33, 0x7B, 0x3B, 0x9C, 0x3B, 0x7C, 0x4B, 0x9C, 0x53, 0x7C, 0x63, 0x5B, 0x6B, 0x1A, 0x7A, 0x97, 0x92, 0x97, 0x92, 0x35, 0x99, 0xF4, 0xAA, 0x14, 0xA9, 0xF3, 0xB1, 0xF4, 0xA9, 0xB3, 0x01, 0xB1, 0xF3, 0x83, 0xA9, 0xF3, 0xB1, 0xF3, 0xA9, 0xF3, 0xA1, 0xD3, 0x02, 0xA9, 0xF3, 0x01, 0xA1, 0xF3, 0x82, 0xA9, 0xF3, 0xA1, 0xD3, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x83, 0xA9, 0xF3, 0xA9, 0xD3, 0xAA, 0x14, 0xA1, 0xD3, 0x01, 0xA2, 0x14, 0x88, 0x9A, 0x35, 0x92, 0x35, 0x8A, 0x97, 0x7A, 0xD8, 0x39, 0x73, 0x42, 0xB8, 0x2A, 0xB8, 0x1A, 0xFA, 0x13, 0x1A, 0x03, 0x13, 0x5B, 0x80, 0x0B, 0x5B, + 0x07, 0x0B, 0x3B, 0x83, 0x0B, 0x5B, 0x0B, 0x3B, 0x0B, 0x5B, 0x03, 0x1B, 0x04, 0x0B, 0x3B, 0x81, 0x03, 0x3A, 0x0B, 0x5B, 0x01, 0x03, 0x1A, 0x80, 0x03, 0x19, 0x01, 0x02, 0xF9, 0x80, 0x03, 0x1A, 0x01, 0x03, 0x3A, 0x88, 0x0B, 0x9B, 0x1C, 0x5E, 0x2C, 0xFF, 0x2C, 0xDF, 0x14, 0x1C, 0x03, 0x7A, 0x03, 0x5A, 0x03, 0x3A, 0x03, 0x1A, 0x01, 0x03, 0x19, 0x01, 0x03, 0x1A, 0x80, 0x0B, 0x3A, 0x01, 0x0B, 0x3B, 0x83, 0x0B, 0x3A, 0x0B, 0x5B, 0x0B, 0x3B, 0x0B, 0x1A, 0x02, 0x0B, 0x3B, 0x81, 0x13, 0x5C, 0x0B, 0x3B, 0x01, 0x13, 0x5B, 0x80, 0x0B, 0x3B, 0x01, 0x0B, 0x5B, 0x03, 0x0B, 0x3B, 0x80, 0x13, 0x5B, 0x01, 0x0B, 0x3B, 0x02, 0x0B, 0x5B, 0x82, 0x0B, 0x3B, 0x13, 0x7B, 0x0B, 0x5B, 0x01, 0x0B, 0x3A, 0x04, 0x0B, 0x3B, 0x80, 0x0B, 0x3A, 0x02, 0x0B, 0x3B, 0x01, 0x03, 0x3A, 0x80, 0x02, 0xFA, 0x02, 0x02, 0xF9, 0x01, 0x03, 0x1A, 0x02, 0x03, 0x3A, 0x82, 0x03, 0x5A, 0x0B, 0xBB, 0x1C, 0x3D, 0x01, 0x2C, 0xBF, 0x83, 0x1C, 0x1D, 0x0B, 0x9B, 0x03, 0x3A, 0x03, 0x19, 0x02, 0x02, 0xF9, 0x02, 0x03, 0x1A, 0x82, 0x0B, 0x3A, 0x0B, 0x3B, 0x0B, 0x3A, 0x01, 0x0B, 0x3B, 0x81, 0x03, 0x1A, 0x0B, 0x3B, 0x02, 0x0B, 0x5B, 0x01, 0x0B, 0x3B, 0x80, 0x0B, 0x5B, 0x08, 0x0B, 0x3B, 0x80, 0x0B, 0x1A, 0x01, 0x0B, 0x1B, 0x03, 0x0A, 0xFA, 0x01, 0x0B, 0x1A, 0x81, 0x03, 0x1A, 0x02, 0xFA, 0x01, 0x03, 0x1A, 0x01, 0x02, 0xFA, 0x81, 0x03, 0x1A, 0x02, 0xFA, 0x02, 0x02, 0xF9, 0x01, 0x02, 0xD9, 0x82, 0x02, 0xF9, 0x02, 0xD9, 0x02, 0xF9, 0x01, 0x02, 0xFA, 0x83, 0x03, 0x1A, 0x03, 0x3A, 0x13, + 0xBC, 0x24, 0x3E, 0x01, 0x2C, 0xDF, 0x85, 0x24, 0x9E, 0x13, 0xFC, 0x0B, 0x9B, 0x03, 0x19, 0x02, 0xF9, 0x02, 0xD9, 0x01, 0x02, 0xD8, 0x80, 0x02, 0xD9, 0x01, 0x02, 0xF9, 0x80, 0x03, 0x19, 0x01, 0x0B, 0x1A, 0x02, 0x0B, 0x3A, 0x81, 0x0B, 0x3B, 0x0B, 0x3A, 0x02, 0x0B, 0x1A, 0x81, 0x13, 0x5B, 0x13, 0x3B, 0x01, 0x0B, 0x1A, 0x84, 0x02, 0xFA, 0x0B, 0x3B, 0x0B, 0x1A, 0x0B, 0x1B, 0x0B, 0x1A, 0x01, 0x02, 0xFA, 0x83, 0x0B, 0x1A, 0x02, 0xDA, 0x02, 0xFA, 0x0A, 0xFA, 0x01, 0x02, 0xD9, 0x81, 0x0A, 0xFA, 0x02, 0xD9, 0x01, 0x02, 0xFA, 0x84, 0x03, 0x1A, 0x02, 0xFA, 0x0B, 0x1A, 0x03, 0x1A, 0x02, 0xF9, 0x01, 0x02, 0xD9, 0x01, 0x02, 0xD8, 0x05, 0x02, 0xD9, 0x80, 0x02, 0xF9, 0x01, 0x02, 0xD9, 0x88, 0x02, 0xF9, 0x0B, 0x9B, 0x1C, 0x1D, 0x34, 0xBF, 0x3D, 0x1F, 0x34, 0xDF, 0x13, 0xFC, 0x03, 0x39, 0x03, 0x19, 0x02, 0x02, 0xF9, 0x01, 0x02, 0xD9, 0x85, 0x02, 0xF9, 0x02, 0xFA, 0x02, 0xF9, 0x0B, 0x1A, 0x0A, 0xFA, 0x0B, 0x1A, 0x01, 0x0A, 0xFA, 0x80, 0x0B, 0x1A, 0x01, 0x0A, 0xFA, 0x84, 0x0B, 0x1A, 0x0A, 0xFA, 0x02, 0xDA, 0x0A, 0xFA, 0x02, 0xD9, 0x01, 0x0B, 0x1A, 0x80, 0x02, 0xDA, 0x01, 0x0B, 0x1A, 0x81, 0x02, 0xFA, 0x0A, 0xFA, 0x02, 0x02, 0xFA, 0x80, 0x02, 0xDA, 0x01, 0x02, 0x17, 0x03, 0x01, 0xF6, 0x80, 0x01, 0xD6, 0x03, 0x01, 0xF6, 0x03, 0x02, 0x17, 0x09, 0x01, 0xF7, 0x04, 0x02, 0x17, 0x82, 0x01, 0xF7, 0x02, 0x17, 0x02, 0x38, 0x02, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x81, 0x02, 0x17, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x05, 0x01, 0xF7, 0x03, 0x02, 0x17, 0x80, + 0x02, 0x16, 0x02, 0x02, 0x37, 0x8B, 0x02, 0x57, 0x02, 0x77, 0x02, 0x98, 0x02, 0xB8, 0x03, 0x19, 0x1B, 0xDC, 0x2C, 0x5E, 0x3C, 0xBF, 0x13, 0x5B, 0x02, 0x98, 0x02, 0x58, 0x02, 0x37, 0x03, 0x01, 0xF7, 0x81, 0x02, 0x17, 0x02, 0x37, 0x01, 0x02, 0x38, 0x01, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x01, 0x02, 0x18, 0x01, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x01, 0x02, 0x18, 0x03, 0x02, 0x17, 0x80, 0x02, 0x18, 0x01, 0x02, 0x38, 0x81, 0x02, 0x18, 0x01, 0xF7, 0x02, 0x02, 0x18, 0x02, 0x02, 0x38, 0x81, 0x02, 0x18, 0x01, 0xF8, 0x02, 0x01, 0xF7, 0x01, 0x02, 0x18, 0x01, 0x02, 0x38, 0x01, 0x01, 0xF7, 0x01, 0x01, 0xF6, 0x01, 0x02, 0x16, 0x80, 0x02, 0x37, 0x01, 0x02, 0x57, 0x8E, 0x02, 0x77, 0x02, 0x97, 0x02, 0xD8, 0x03, 0x3A, 0x1B, 0xFC, 0x2C, 0x7E, 0x34, 0x9F, 0x1B, 0xBC, 0x02, 0xB9, 0x02, 0x57, 0x02, 0x16, 0x02, 0x17, 0x02, 0x16, 0x02, 0x37, 0x02, 0x36, 0x01, 0x02, 0x17, 0x03, 0x02, 0x37, 0x01, 0x02, 0x17, 0x81, 0x02, 0x18, 0x02, 0x17, 0x03, 0x02, 0x18, 0x03, 0x02, 0x38, 0x02, 0x02, 0x18, 0x80, 0x02, 0x17, 0x02, 0x02, 0x38, 0x80, 0x02, 0x37, 0x02, 0x02, 0x17, 0x01, 0x02, 0x38, 0x80, 0x02, 0x18, 0x06, 0x02, 0x38, 0x01, 0x02, 0x18, 0x80, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x01, 0x02, 0x37, 0x8F, 0x02, 0x36, 0x02, 0x57, 0x02, 0x77, 0x02, 0x97, 0x02, 0xB8, 0x02, 0xD8, 0x03, 0x7B, 0x24, 0x5E, 0x24, 0x7F, 0x1B, 0xFD, 0x03, 0x3A, 0x02, 0xD9, 0x02, 0x77, 0x02, 0x57, 0x02, 0x37, 0x02, 0x17, 0x01, 0x02, 0x37, 0x80, 0x02, 0x57, + 0x02, 0x02, 0x37, 0x01, 0x02, 0x58, 0x02, 0x02, 0x38, 0x81, 0x02, 0x58, 0x02, 0x38, 0x01, 0x02, 0x58, 0x05, 0x02, 0x38, 0x80, 0x02, 0x58, 0x04, 0x02, 0x38, 0x02, 0x02, 0x18, 0x01, 0x02, 0x38, 0x04, 0x02, 0x18, 0x01, 0x02, 0x38, 0x80, 0x02, 0x18, 0x01, 0x02, 0x58, 0x02, 0x02, 0x38, 0x80, 0x02, 0x18, 0x01, 0x02, 0x58, 0x8F, 0x02, 0x38, 0x02, 0x58, 0x02, 0x38, 0x02, 0x37, 0x02, 0x57, 0x02, 0x78, 0x02, 0x98, 0x02, 0xB8, 0x03, 0x19, 0x1C, 0x1D, 0x2C, 0xBF, 0x2C, 0x7F, 0x03, 0x3A, 0x02, 0x98, 0x02, 0x57, 0x02, 0x37, 0x02, 0x02, 0x57, 0x80, 0x02, 0x58, 0x01, 0x02, 0x78, 0x01, 0x02, 0x58, 0x80, 0x02, 0x78, 0x01, 0x02, 0x58, 0x80, 0x02, 0x79, 0x02, 0x02, 0x58, 0x01, 0x02, 0x38, 0x80, 0x02, 0x58, 0x03, 0x02, 0x38, 0x01, 0x02, 0x58, 0x12, 0x02, 0x38, 0x84, 0x02, 0x58, 0x02, 0x59, 0x02, 0x58, 0x02, 0x79, 0x02, 0x59, 0x01, 0x02, 0x38, 0x80, 0x02, 0x58, 0x04, 0x02, 0x78, 0x89, 0x02, 0x98, 0x02, 0xB8, 0x02, 0xF9, 0x13, 0xFD, 0x2C, 0xBF, 0x24, 0x7F, 0x03, 0x19, 0x02, 0x77, 0x02, 0x57, 0x02, 0x37, 0x01, 0x02, 0x57, 0x06, 0x02, 0x58, 0x80, 0x02, 0x78, 0x02, 0x02, 0x58, 0x80, 0x02, 0x59, 0x04, 0x02, 0x38, 0x80, 0x02, 0x39, 0x01, 0x02, 0x59, 0x05, 0x02, 0x38, 0x03, 0x02, 0x58, 0x03, 0x02, 0x38, 0x82, 0x02, 0x59, 0x02, 0x79, 0x02, 0x38, 0x02, 0x02, 0x58, 0x01, 0x02, 0x59, 0x02, 0x02, 0x58, 0x02, 0x02, 0x38, 0x05, 0x02, 0x58, 0x88, 0x02, 0x78, 0x02, 0x98, 0x02, 0xB9, 0x02, 0xF9, 0x3C, 0xFF, 0x1B, 0xFD, 0x02, 0xD9, 0x02, 0x78, 0x02, 0x98, + 0x02, 0x02, 0x78, 0x03, 0x02, 0x58, 0x01, 0x02, 0x78, 0x82, 0x02, 0x58, 0x02, 0x59, 0x02, 0x38, 0x04, 0x02, 0x58, 0x01, 0x02, 0x38, 0x19, 0x02, 0x58, 0x80, 0x02, 0x38, 0x01, 0x02, 0x58, 0x02, 0x02, 0x38, 0x81, 0x02, 0x18, 0x02, 0x17, 0x05, 0x02, 0x58, 0x85, 0x02, 0x98, 0x02, 0xB8, 0x2C, 0x9F, 0x13, 0xFD, 0x02, 0xD9, 0x02, 0x99, 0x01, 0x02, 0x79, 0x01, 0x02, 0x78, 0x01, 0x02, 0x79, 0x81, 0x02, 0x58, 0x02, 0x59, 0x01, 0x02, 0x58, 0x01, 0x02, 0x59, 0x03, 0x02, 0x58, 0x01, 0x02, 0x38, 0x01, 0x02, 0x58, 0x01, 0x02, 0x38, 0x01, 0x02, 0x58, 0x01, 0x02, 0x38, 0x12, 0x02, 0x58, 0x80, 0x02, 0x38, 0x06, 0x02, 0x58, 0x81, 0x02, 0x79, 0x02, 0x38, 0x02, 0x02, 0x58, 0x01, 0x02, 0x78, 0x85, 0x02, 0x58, 0x02, 0x57, 0x1B, 0xFD, 0x1C, 0x1D, 0x02, 0x98, 0x02, 0x99, 0x01, 0x02, 0x58, 0x80, 0x02, 0x78, 0x0A, 0x02, 0x58, 0x80, 0x02, 0x38, 0x0B, 0x02, 0x58, 0x80, 0x02, 0x38, 0x01, 0x02, 0x58, 0x80, 0x02, 0x38, 0x11, 0x02, 0x58, 0x80, 0x02, 0x79, 0x05, 0x02, 0x58, 0x01, 0x02, 0x78, 0x02, 0x02, 0x58, 0x84, 0x02, 0x57, 0x02, 0x78, 0x02, 0xB8, 0x13, 0xFC, 0x24, 0x9F, 0x01, 0x02, 0x98, 0x01, 0x02, 0x78, 0x03, 0x02, 0x58, 0x80, 0x02, 0x18, 0x04, 0x02, 0x38, 0x81, 0x02, 0x58, 0x02, 0x79, 0x07, 0x02, 0x58, 0x02, 0x02, 0x38, 0x80, 0x02, 0x58, 0x01, 0x02, 0x38, 0x01, 0x02, 0x58, 0x01, 0x02, 0x38, 0x01, 0x02, 0x58, 0x01, 0x02, 0x38, 0x01, 0x02, 0x58, 0x01, 0x02, 0x38, 0x01, 0x02, 0x58, 0x03, 0x02, 0x38, 0x82, 0x02, 0x58, 0x02, 0x79, 0x02, 0x38, 0x03, + 0x02, 0x58, 0x80, 0x02, 0x78, 0x03, 0x02, 0x58, 0x8A, 0x02, 0x38, 0x02, 0x58, 0x02, 0x78, 0x02, 0x98, 0x13, 0x9C, 0x34, 0x9F, 0x03, 0x1A, 0x02, 0xD9, 0x02, 0xB9, 0x02, 0x58, 0x02, 0x37, 0x06, 0x02, 0x58, 0x80, 0x02, 0x79, 0x03, 0x02, 0x58, 0x82, 0x02, 0x79, 0x02, 0x58, 0x02, 0x59, 0x01, 0x02, 0x58, 0x80, 0x02, 0x38, 0x03, 0x02, 0x58, 0x82, 0x02, 0x79, 0x02, 0x38, 0x02, 0x58, 0x01, 0x02, 0x38, 0x01, 0x02, 0x58, 0x82, 0x02, 0x38, 0x02, 0x58, 0x02, 0x38, 0x01, 0x0A, 0x58, 0x81, 0x0A, 0x38, 0x02, 0x38, 0x01, 0x0A, 0x58, 0x82, 0x12, 0x59, 0x12, 0x78, 0x0A, 0x38, 0x01, 0x12, 0x58, 0x82, 0x0A, 0x38, 0x12, 0x58, 0x12, 0x38, 0x01, 0x1A, 0x38, 0x8E, 0x22, 0x37, 0x32, 0x37, 0x4A, 0x57, 0x62, 0x36, 0x82, 0x77, 0x9A, 0x76, 0x9A, 0x14, 0xA2, 0x14, 0xA1, 0xF3, 0xA9, 0xF4, 0xA9, 0xD3, 0xA9, 0xF4, 0xA9, 0xD3, 0xA9, 0xB3, 0xB1, 0xF4, 0x01, 0xA9, 0xF3, 0x80, 0xA1, 0xB2, 0x02, 0xA9, 0xF3, 0x80, 0xA1, 0xD3, 0x01, 0xA9, 0xD3, 0x80, 0xB1, 0xF4, 0x02, 0xA9, 0xD3, 0x8D, 0xA9, 0xF4, 0xA9, 0xF3, 0xA1, 0xD3, 0xAA, 0x34, 0xA2, 0x14, 0x99, 0xF4, 0x92, 0x35, 0x8A, 0x36, 0x72, 0x36, 0x20, 0x50, 0x31, 0xB5, 0x22, 0x38, 0x01, 0xB6, 0x01, 0xF7, 0x04, 0x02, 0x38, 0x81, 0x02, 0x18, 0x02, 0x38, 0x03, 0x02, 0x18, 0x01, 0x02, 0x38, 0x80, 0x02, 0x18, 0x01, 0x02, 0x38, 0x01, 0x02, 0x18, 0x02, 0x02, 0x17, 0x81, 0x02, 0x58, 0x02, 0x38, 0x01, 0x02, 0x58, 0x01, 0x02, 0x37, 0x01, 0x02, 0x58, 0x80, 0x02, 0x37, 0x01, 0x02, 0x58, 0x88, 0x02, 0x57, 0x02, 0x98, 0x03, + 0x19, 0x24, 0x3E, 0x24, 0x7F, 0x0B, 0x9C, 0x02, 0xF9, 0x02, 0xB8, 0x02, 0x98, 0x02, 0x02, 0x78, 0x03, 0x02, 0x37, 0x80, 0x02, 0x57, 0x04, 0x02, 0x37, 0x81, 0x02, 0x17, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x01, 0x02, 0x58, 0x80, 0x02, 0x38, 0x01, 0x02, 0x17, 0x80, 0x02, 0x18, 0x01, 0x02, 0x17, 0x80, 0x02, 0x18, 0x02, 0x02, 0x17, 0x01, 0x02, 0x18, 0x01, 0x02, 0x17, 0x82, 0x02, 0x18, 0x02, 0x37, 0x02, 0x38, 0x01, 0x02, 0x37, 0x80, 0x02, 0x38, 0x03, 0x02, 0x17, 0x07, 0x02, 0x38, 0x01, 0x02, 0x37, 0x80, 0x02, 0x58, 0x02, 0x02, 0x78, 0x8A, 0x02, 0x98, 0x02, 0xF9, 0x1B, 0xFD, 0x24, 0x5E, 0x1B, 0xFD, 0x03, 0x3A, 0x02, 0xB8, 0x02, 0x98, 0x02, 0x77, 0x02, 0x78, 0x02, 0x77, 0x01, 0x02, 0x57, 0x80, 0x02, 0x58, 0x01, 0x02, 0x37, 0x01, 0x02, 0x17, 0x81, 0x02, 0x37, 0x02, 0x38, 0x03, 0x02, 0x17, 0x01, 0x02, 0x38, 0x09, 0x02, 0x17, 0x06, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x80, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x80, 0x01, 0xF7, 0x03, 0x02, 0x17, 0x01, 0x02, 0x37, 0x02, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x04, 0x02, 0x37, 0x88, 0x02, 0x57, 0x02, 0xD9, 0x13, 0x9B, 0x2C, 0x3E, 0x2C, 0x5E, 0x13, 0xDC, 0x0B, 0x5A, 0x02, 0xB8, 0x02, 0x98, 0x01, 0x02, 0x77, 0x81, 0x02, 0x57, 0x02, 0x37, 0x05, 0x02, 0x16, 0x80, 0x01, 0xF6, 0x03, 0x02, 0x17, 0x80, 0x01, 0xF7, 0x01, 0x01, 0xD6, 0x01, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x82, 0x01, 0xF7, 0x02, 0x17, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x81, 0x02, 0x18, 0x02, 0x17, 0x04, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x01, + 0x02, 0x17, 0x82, 0x01, 0xF7, 0x02, 0x17, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x80, 0x02, 0x37, 0x02, 0x02, 0x17, 0x04, 0x02, 0x37, 0x02, 0x02, 0x57, 0x85, 0x02, 0x98, 0x02, 0xF9, 0x1B, 0xDD, 0x2C, 0x5E, 0x24, 0x5E, 0x0B, 0x9B, 0x01, 0x02, 0xB8, 0x82, 0x02, 0x98, 0x02, 0x78, 0x02, 0x57, 0x02, 0x02, 0x37, 0x01, 0x02, 0x17, 0x81, 0x02, 0x16, 0x02, 0x17, 0x01, 0x02, 0x16, 0x82, 0x01, 0xF6, 0x01, 0xF7, 0x01, 0xF6, 0x02, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x01, 0x01, 0xD6, 0x01, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x81, 0x02, 0x17, 0x01, 0xF6, 0x03, 0x01, 0xD6, 0x85, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0xD7, 0x01, 0x01, 0xD6, 0x01, 0x01, 0xD7, 0x84, 0x01, 0xB7, 0x01, 0xD7, 0x01, 0xB7, 0x01, 0xD7, 0x01, 0xB7, 0x0B, 0x01, 0xD7, 0x83, 0x01, 0xF7, 0x01, 0xF8, 0x01, 0xD7, 0x01, 0xB7, 0x06, 0x01, 0xD7, 0x02, 0x01, 0xB7, 0x05, 0x01, 0xD6, 0x02, 0x01, 0xF6, 0x8B, 0x02, 0x16, 0x02, 0x57, 0x0A, 0xF9, 0x23, 0xBC, 0x34, 0x5F, 0x2C, 0x3E, 0x23, 0xDC, 0x13, 0x3A, 0x02, 0x98, 0x02, 0x37, 0x02, 0x17, 0x01, 0xF7, 0x04, 0x01, 0xD7, 0x04, 0x01, 0xF7, 0x03, 0x01, 0xD7, 0x80, 0x01, 0xF8, 0x04, 0x01, 0xD7, 0x88, 0x01, 0xD8, 0x01, 0xF8, 0x01, 0xD7, 0x01, 0xD8, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xD7, 0x02, 0x01, 0xF8, 0x02, 0x01, 0xD7, 0x02, 0x01, 0xF8, 0x81, 0x01, 0xD7, 0x01, 0xD8, 0x03, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x02, 0x01, 0xD6, 0x01, 0x01, 0xF6, 0x8A, + 0x02, 0x16, 0x02, 0x36, 0x02, 0x57, 0x02, 0x98, 0x13, 0x7B, 0x2C, 0x1D, 0x2C, 0x3E, 0x1B, 0xFD, 0x03, 0x19, 0x02, 0xB8, 0x02, 0x57, 0x01, 0x02, 0x17, 0x09, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x05, 0x01, 0xF7, 0x02, 0x01, 0xF8, 0x80, 0x01, 0xF7, 0x04, 0x01, 0xF8, 0x80, 0x01, 0xD7, 0x08, 0x01, 0xF7, 0x84, 0x01, 0xF8, 0x02, 0x18, 0x01, 0xF7, 0x01, 0xF8, 0x01, 0xF7, 0x02, 0x01, 0xF8, 0x82, 0x01, 0xF7, 0x01, 0xF8, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x01, 0x01, 0xF6, 0x03, 0x02, 0x16, 0x8A, 0x02, 0x36, 0x02, 0x77, 0x02, 0xF9, 0x24, 0x1D, 0x2C, 0x7F, 0x13, 0xBC, 0x02, 0xF9, 0x02, 0xD9, 0x02, 0x98, 0x02, 0x57, 0x02, 0x37, 0x0A, 0x02, 0x17, 0x0C, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x01, 0x02, 0x18, 0x05, 0x01, 0xF8, 0x80, 0x02, 0x18, 0x05, 0x01, 0xF8, 0x80, 0x01, 0xF7, 0x07, 0x01, 0xF8, 0x01, 0x02, 0x18, 0x03, 0x02, 0x17, 0x83, 0x02, 0x38, 0x02, 0x57, 0x02, 0x78, 0x13, 0x5B, 0x01, 0x24, 0x3E, 0x82, 0x0B, 0x5A, 0x02, 0xD9, 0x02, 0x78, 0x01, 0x02, 0x37, 0x80, 0x02, 0x17, 0x02, 0x02, 0x37, 0x01, 0x02, 0x38, 0x80, 0x02, 0x17, 0x04, 0x02, 0x38, 0x80, 0x02, 0x18, 0x01, 0x02, 0x38, 0x04, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x04, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x06, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x07, 0x02, 0x18, 0x81, 0x01, 0xF8, 0x02, 0x18, 0x02, 0x02, 0x38, 0x82, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x02, 0x38, 0x80, 0x02, 0x58, 0x01, 0x02, 0x37, 0x86, 0x02, 0x78, 0x02, 0x98, 0x13, 0x9B, 0x34, 0xBF, 0x1B, 0xDD, 0x02, 0xD9, 0x02, 0x78, 0x01, 0x02, + 0x37, 0x80, 0x02, 0x17, 0x01, 0x02, 0x37, 0x80, 0x02, 0x38, 0x01, 0x02, 0x18, 0x03, 0x02, 0x38, 0x01, 0x02, 0x18, 0x80, 0x02, 0x38, 0x01, 0x02, 0x18, 0x82, 0x02, 0x19, 0x02, 0x18, 0x02, 0x19, 0x01, 0x02, 0x18, 0x80, 0x02, 0x19, 0x0F, 0x02, 0x18, 0x80, 0x02, 0x38, 0x02, 0x02, 0x18, 0x02, 0x02, 0x39, 0x8A, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x39, 0x02, 0x18, 0x02, 0x38, 0x02, 0x39, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x01, 0x02, 0x38, 0x87, 0x02, 0x37, 0x02, 0x78, 0x02, 0x99, 0x2C, 0x3F, 0x23, 0xFD, 0x02, 0xD9, 0x02, 0x98, 0x02, 0x78, 0x02, 0x02, 0x58, 0x07, 0x02, 0x38, 0x81, 0x02, 0x18, 0x02, 0x38, 0x04, 0x02, 0x18, 0x81, 0x02, 0x38, 0x02, 0x18, 0x01, 0x02, 0x38, 0x01, 0x02, 0x18, 0x01, 0x02, 0x38, 0x01, 0x02, 0x18, 0x89, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x02, 0x38, 0x02, 0x02, 0x18, 0x01, 0x02, 0x38, 0x04, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x01, 0x02, 0x18, 0x01, 0x02, 0x38, 0x01, 0x02, 0x18, 0x01, 0x02, 0x38, 0x85, 0x02, 0x78, 0x02, 0xFA, 0x34, 0xBF, 0x03, 0x3A, 0x02, 0x99, 0x02, 0x79, 0x01, 0x02, 0x38, 0x01, 0x02, 0x58, 0x81, 0x02, 0x38, 0x02, 0x39, 0x01, 0x02, 0x38, 0x02, 0x02, 0x39, 0x83, 0x02, 0x18, 0x02, 0x39, 0x02, 0x18, 0x02, 0x39, 0x0F, 0x02, 0x18, 0x80, 0x02, 0x38, 0x01, 0x02, 0x18, 0x04, 0x02, 0x38, 0x80, 0x02, 0x18, 0x03, 0x02, 0x38, 0x01, 0x02, 0x18, 0x02, 0x02, 0x38, 0x82, 0x02, 0x18, 0x02, 0x38, + 0x02, 0x59, 0x02, 0x02, 0x38, 0x80, 0x02, 0x18, 0x02, 0x02, 0x38, 0x82, 0x02, 0x37, 0x02, 0x38, 0x02, 0x37, 0x01, 0x1B, 0xFD, 0x01, 0x02, 0x58, 0x0E, 0x02, 0x38, 0x80, 0x02, 0x18, 0x06, 0x02, 0x38, 0x83, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x04, 0x02, 0x18, 0x81, 0x02, 0x38, 0x02, 0x18, 0x04, 0x02, 0x38, 0x80, 0x02, 0x18, 0x02, 0x02, 0x38, 0x80, 0x02, 0x18, 0x04, 0x02, 0x38, 0x80, 0x02, 0x18, 0x02, 0x02, 0x38, 0x80, 0x02, 0x18, 0x04, 0x02, 0x38, 0x02, 0x02, 0x37, 0x86, 0x02, 0x58, 0x02, 0x98, 0x03, 0x39, 0x3C, 0xFF, 0x0B, 0x3A, 0x02, 0x78, 0x02, 0x58, 0x03, 0x02, 0x38, 0x81, 0x02, 0x18, 0x02, 0x38, 0x04, 0x02, 0x18, 0x02, 0x02, 0x38, 0x80, 0x02, 0x18, 0x01, 0x02, 0x38, 0x01, 0x02, 0x18, 0x80, 0x02, 0x38, 0x0A, 0x02, 0x18, 0x80, 0x02, 0x38, 0x06, 0x02, 0x18, 0x80, 0x02, 0x38, 0x03, 0x02, 0x18, 0x0B, 0x02, 0x38, 0x82, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x01, 0x02, 0x58, 0x82, 0x02, 0x98, 0x1B, 0xDD, 0x34, 0x9F, 0x01, 0x02, 0xB9, 0x82, 0x02, 0x58, 0x02, 0x37, 0x02, 0x17, 0x01, 0x02, 0x18, 0x80, 0x02, 0x38, 0x03, 0x02, 0x18, 0x08, 0x02, 0x38, 0x01, 0x02, 0x18, 0x02, 0x02, 0x38, 0x81, 0x02, 0x18, 0x02, 0x38, 0x01, 0x02, 0x18, 0x01, 0x02, 0x38, 0x80, 0x02, 0x18, 0x01, 0x02, 0x38, 0x82, 0x02, 0x18, 0x02, 0x38, 0x0A, 0x38, 0x01, 0x0A, 0x18, 0x80, 0x0A, 0x38, 0x01, 0x0A, 0x18, 0x91, 0x0A, 0x38, 0x12, 0x58, 0x12, 0x38, 0x0A, 0x38, 0x12, 0x58, 0x0A, 0x38, 0x12, 0x59, 0x12, 0x38, 0x1A, 0x38, 0x22, 0x38, 0x2A, 0x37, + 0x3A, 0x17, 0x5A, 0x37, 0x7A, 0x77, 0x92, 0x77, 0x9A, 0x35, 0x99, 0xF4, 0xAA, 0x14, 0x01, 0xA9, 0xF4, 0x01, 0xA9, 0xD3, 0x80, 0xB1, 0xF4, 0x01, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x86, 0xA9, 0xD3, 0xA9, 0xF4, 0xA1, 0xD3, 0xA9, 0xF4, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0x02, 0xA9, 0xD3, 0x83, 0xA9, 0xF3, 0xA9, 0xF4, 0xA9, 0xF3, 0xA1, 0xF3, 0x01, 0xA2, 0x14, 0x87, 0x92, 0x15, 0x8A, 0x36, 0x82, 0x98, 0x49, 0x74, 0x52, 0x59, 0x32, 0x79, 0x09, 0xD6, 0x0A, 0x18, 0x03, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x01, 0x02, 0x18, 0x02, 0x01, 0xF8, 0x01, 0x02, 0x18, 0x05, 0x01, 0xF8, 0x8A, 0x01, 0xF7, 0x01, 0xF8, 0x02, 0x18, 0x01, 0xF7, 0x02, 0x17, 0x02, 0x18, 0x02, 0x17, 0x02, 0x38, 0x02, 0x17, 0x02, 0x38, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x8A, 0x02, 0x37, 0x02, 0x58, 0x02, 0x78, 0x02, 0xB8, 0x1B, 0xBC, 0x34, 0x9F, 0x2C, 0x3E, 0x0B, 0x1A, 0x02, 0x77, 0x02, 0x57, 0x02, 0x37, 0x02, 0x02, 0x17, 0x80, 0x01, 0xF7, 0x04, 0x02, 0x17, 0x81, 0x01, 0xF7, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x80, 0x01, 0xF8, 0x02, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x0B, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x80, 0x01, 0xD7, 0x03, 0x01, 0xF7, 0x81, 0x02, 0x17, 0x01, 0xF7, 0x02, 0x02, 0x18, 0x82, 0x02, 0x17, 0x02, 0x18, 0x01, 0xF7, 0x04, 0x02, 0x17, 0x89, 0x02, 0x37, 0x02, 0x58, 0x02, 0x78, 0x02, 0xB9, 0x0B, 0x3A, 0x24, 0x1E, 0x2C, 0x7F, 0x23, 0xFD, 0x0A, 0xF9, 0x02, 0x77, 0x01, 0x02, 0x57, 0x83, 0x02, 0x37, 0x02, 0x17, 0x02, 0x16, 0x02, 0x17, 0x05, 0x01, + 0xF7, 0x03, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x81, 0x01, 0xF7, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x81, 0x01, 0xD7, 0x01, 0xF7, 0x03, 0x01, 0xD7, 0x80, 0x01, 0xB7, 0x07, 0x01, 0xD7, 0x06, 0x01, 0xF7, 0x84, 0x01, 0xD7, 0x01, 0xD6, 0x01, 0xD7, 0x01, 0xF7, 0x02, 0x17, 0x02, 0x01, 0xF7, 0x8A, 0x02, 0x17, 0x02, 0x37, 0x02, 0x57, 0x02, 0x98, 0x0B, 0x1A, 0x1B, 0xDD, 0x2C, 0x3E, 0x2C, 0x1E, 0x1B, 0x5B, 0x02, 0x77, 0x02, 0x57, 0x01, 0x02, 0x37, 0x80, 0x02, 0x16, 0x01, 0x01, 0xF6, 0x07, 0x01, 0xD6, 0x03, 0x01, 0xB6, 0x84, 0x01, 0xD7, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0xD7, 0x01, 0xB7, 0x02, 0x01, 0xD7, 0x81, 0x01, 0xF8, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x80, 0x01, 0xB7, 0x03, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x06, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x07, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x01, 0x02, 0x37, 0x8A, 0x02, 0x78, 0x02, 0xB8, 0x0B, 0x3A, 0x23, 0xFD, 0x2C, 0x1E, 0x2B, 0xDD, 0x13, 0x1A, 0x02, 0x98, 0x02, 0x57, 0x02, 0x37, 0x02, 0x17, 0x01, 0x01, 0xF6, 0x81, 0x01, 0xD6, 0x01, 0xF6, 0x05, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x04, 0x01, 0xD6, 0x02, 0x01, 0xB6, 0x80, 0x01, 0xD6, 0x01, 0x01, 0xD7, 0x83, 0x01, 0xD6, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xD6, 0x04, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x03, 0x01, 0xB6, 0x02, 0x01, 0xD7, 0x80, 0x01, 0xB7, 0x04, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x04, 0x01, 0xD7, 0x80, 0x01, 0xB7, 0x0B, 0x01, 0xD7, 0x02, 0x01, 0xB7, 0x80, 0x01, 0xB6, 0x01, 0x01, 0xD7, 0x02, 0x01, 0xD6, 0x01, + 0x01, 0xF6, 0x87, 0x02, 0x37, 0x02, 0xB8, 0x1B, 0x7C, 0x34, 0x3E, 0x3C, 0x7F, 0x34, 0x3E, 0x23, 0x9C, 0x02, 0xB8, 0x01, 0x02, 0x57, 0x82, 0x02, 0x17, 0x01, 0xF6, 0x01, 0xD6, 0x02, 0x01, 0xD7, 0x81, 0x01, 0xD6, 0x01, 0xF7, 0x06, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x81, 0x01, 0xD7, 0x01, 0xB7, 0x01, 0x01, 0xD7, 0x80, 0x01, 0xD8, 0x02, 0x01, 0xD7, 0x02, 0x01, 0xF8, 0x82, 0x01, 0xD7, 0x01, 0xF8, 0x01, 0xD7, 0x01, 0x01, 0xF8, 0x03, 0x01, 0xD7, 0x01, 0x01, 0xF8, 0x80, 0x01, 0xB7, 0x02, 0x01, 0xD7, 0x81, 0x01, 0xF8, 0x01, 0xF7, 0x01, 0x01, 0xF8, 0x83, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xD6, 0x01, 0x01, 0xF7, 0x01, 0x01, 0xF6, 0x01, 0x02, 0x16, 0x88, 0x02, 0x77, 0x02, 0xD9, 0x1B, 0x9C, 0x34, 0x5E, 0x34, 0x7F, 0x2C, 0x1D, 0x0B, 0x19, 0x02, 0x77, 0x02, 0x57, 0x01, 0x02, 0x37, 0x01, 0x02, 0x17, 0x81, 0x01, 0xF6, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x83, 0x01, 0xF6, 0x01, 0xF7, 0x01, 0xD6, 0x02, 0x17, 0x03, 0x01, 0xF7, 0x81, 0x01, 0xD7, 0x01, 0xF8, 0x06, 0x01, 0xF7, 0x80, 0x02, 0x18, 0x01, 0x01, 0xF8, 0x80, 0x01, 0xD8, 0x01, 0x01, 0xF8, 0x01, 0x01, 0xF7, 0x03, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xF8, 0x01, 0x01, 0xD7, 0x81, 0x01, 0xF8, 0x01, 0xF7, 0x03, 0x01, 0xF8, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x82, 0x02, 0x17, 0x02, 0x38, 0x02, 0x17, 0x01, 0x02, 0x16, 0x01, 0x02, 0x36, 0x89, 0x02, 0xB8, 0x1B, 0x9B, 0x34, 0x7F, 0x2C, 0x5E, 0x0B, 0x1A, 0x02, 0x98, 0x02, 0xD9, 0x02, 0x78, 0x02, 0x37, 0x02, 0x16, 0x01, + 0x02, 0x17, 0x81, 0x02, 0x37, 0x02, 0x17, 0x01, 0x02, 0x38, 0x80, 0x02, 0x17, 0x02, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x81, 0x02, 0x18, 0x01, 0xF7, 0x02, 0x02, 0x18, 0x83, 0x01, 0xF8, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x04, 0x02, 0x18, 0x89, 0x01, 0xF8, 0x01, 0xF7, 0x02, 0x18, 0x01, 0xF8, 0x02, 0x18, 0x01, 0xF8, 0x02, 0x18, 0x01, 0xF8, 0x02, 0x18, 0x01, 0xF7, 0x02, 0x01, 0xF8, 0x88, 0x01, 0xF7, 0x01, 0xF8, 0x01, 0xF7, 0x01, 0xF8, 0x02, 0x18, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xF8, 0x01, 0xF7, 0x02, 0x02, 0x18, 0x02, 0x02, 0x17, 0x80, 0x02, 0x37, 0x01, 0x02, 0x58, 0x88, 0x02, 0xD9, 0x1B, 0xBD, 0x34, 0x7F, 0x1B, 0xDD, 0x02, 0xF9, 0x02, 0xB8, 0x02, 0x78, 0x02, 0x58, 0x02, 0x37, 0x05, 0x02, 0x17, 0x80, 0x02, 0x37, 0x02, 0x02, 0x17, 0x02, 0x02, 0x38, 0x03, 0x02, 0x18, 0x80, 0x02, 0x38, 0x04, 0x02, 0x18, 0x83, 0x01, 0xF8, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x01, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x04, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x02, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x0B, 0x02, 0x18, 0x01, 0x02, 0x38, 0x01, 0x02, 0x17, 0x86, 0x02, 0x37, 0x02, 0x58, 0x02, 0x98, 0x13, 0x9C, 0x3C, 0xBF, 0x23, 0xFD, 0x02, 0x98, 0x01, 0x02, 0x57, 0x80, 0x02, 0x37, 0x01, 0x02, 0x58, 0x88, 0x02, 0x38, 0x02, 0x17, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x04, 0x02, 0x18, 0x88, 0x02, 0x39, 0x02, 0x18, 0x02, 0x19, 0x02, 0x18, 0x02, 0x19, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x19, 0x04, 0x02, 0x18, 0x80, 0x02, + 0x38, 0x01, 0x02, 0x18, 0x81, 0x02, 0x39, 0x02, 0x38, 0x01, 0x02, 0x18, 0x81, 0x02, 0x38, 0x02, 0x39, 0x04, 0x02, 0x18, 0x80, 0x02, 0x38, 0x02, 0x02, 0x18, 0x80, 0x02, 0x38, 0x02, 0x02, 0x18, 0x81, 0x02, 0x38, 0x02, 0x18, 0x02, 0x02, 0x17, 0x85, 0x02, 0x38, 0x02, 0x58, 0x02, 0x99, 0x1B, 0x9C, 0x2C, 0x1E, 0x02, 0xB9, 0x01, 0x02, 0x78, 0x80, 0x02, 0x58, 0x04, 0x02, 0x38, 0x80, 0x02, 0x18, 0x02, 0x02, 0x38, 0x83, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x01, 0x02, 0x18, 0x80, 0x02, 0x38, 0x03, 0x02, 0x18, 0x83, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x01, 0x02, 0x38, 0x01, 0x02, 0x18, 0x80, 0x02, 0x38, 0x02, 0x02, 0x18, 0x81, 0x02, 0x38, 0x02, 0x18, 0x02, 0x02, 0x38, 0x80, 0x02, 0x18, 0x02, 0x02, 0x38, 0x82, 0x02, 0x39, 0x02, 0x19, 0x02, 0x18, 0x01, 0x02, 0x38, 0x80, 0x02, 0x39, 0x01, 0x02, 0x18, 0x83, 0x02, 0x38, 0x02, 0x39, 0x02, 0x18, 0x02, 0x39, 0x01, 0x02, 0x38, 0x02, 0x02, 0x18, 0x86, 0x02, 0x38, 0x02, 0x58, 0x02, 0x98, 0x2C, 0x3E, 0x2C, 0x3F, 0x02, 0xB9, 0x02, 0x78, 0x03, 0x02, 0x38, 0x01, 0x02, 0x18, 0x01, 0x02, 0x38, 0x81, 0x02, 0x18, 0x02, 0x39, 0x02, 0x02, 0x18, 0x84, 0x02, 0x39, 0x02, 0x18, 0x02, 0x39, 0x02, 0x18, 0x02, 0x39, 0x02, 0x02, 0x18, 0x80, 0x02, 0x39, 0x02, 0x02, 0x18, 0x80, 0x02, 0x38, 0x03, 0x02, 0x18, 0x01, 0x02, 0x38, 0x80, 0x02, 0x18, 0x01, 0x02, 0x38, 0x80, 0x02, 0x39, 0x01, 0x02, 0x18, 0x01, 0x02, 0x38, 0x80, 0x02, 0x18, 0x01, 0x02, 0x38, 0x01, 0x02, 0x18, 0x02, 0x02, 0x38, + 0x81, 0x02, 0x18, 0x02, 0x39, 0x02, 0x02, 0x18, 0x01, 0x02, 0x38, 0x80, 0x02, 0x58, 0x03, 0x02, 0x38, 0x84, 0x02, 0x37, 0x02, 0x17, 0x02, 0x37, 0x2C, 0x3E, 0x1B, 0xFD, 0x01, 0x02, 0x58, 0x08, 0x02, 0x38, 0x82, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x02, 0x38, 0x8C, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x01, 0x02, 0x38, 0x81, 0x02, 0x18, 0x01, 0xF8, 0x03, 0x02, 0x38, 0x01, 0x02, 0x18, 0x02, 0x02, 0x38, 0x84, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x02, 0x38, 0x02, 0x02, 0x18, 0x80, 0x02, 0x38, 0x02, 0x02, 0x18, 0x82, 0x02, 0x38, 0x02, 0x37, 0x02, 0x58, 0x02, 0x02, 0x37, 0x87, 0x02, 0x57, 0x02, 0x98, 0x02, 0xB8, 0x2C, 0x5F, 0x2C, 0x1E, 0x02, 0x98, 0x02, 0x58, 0x02, 0x38, 0x01, 0x02, 0x17, 0x80, 0x01, 0xF7, 0x02, 0x02, 0x18, 0x01, 0x02, 0x38, 0x01, 0x02, 0x59, 0x04, 0x02, 0x38, 0x80, 0x02, 0x18, 0x02, 0x02, 0x38, 0x02, 0x02, 0x18, 0x80, 0x02, 0x38, 0x02, 0x02, 0x18, 0x80, 0x02, 0x38, 0x02, 0x02, 0x18, 0x82, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x04, 0x02, 0x18, 0x02, 0x02, 0x38, 0x02, 0x02, 0x18, 0x02, 0x02, 0x38, 0x02, 0x02, 0x18, 0x85, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x02, 0x38, 0x02, 0x17, 0x01, 0x02, 0x18, 0x81, 0x02, 0x38, 0x02, 0x58, 0x01, 0x02, 0x98, 0x83, 0x2C, 0x5F, 0x24, 0x1E, 0x02, 0x78, 0x02, 0x58, 0x01, 0x02, 0x38, 0x85, 0x02, 0x17, 0x02, 0x38, + 0x02, 0x18, 0x01, 0xF8, 0x02, 0x18, 0x02, 0x38, 0x02, 0x02, 0x18, 0x80, 0x02, 0x38, 0x04, 0x02, 0x18, 0x01, 0x02, 0x38, 0x80, 0x01, 0xF7, 0x03, 0x02, 0x18, 0x80, 0x02, 0x38, 0x02, 0x02, 0x18, 0x81, 0x0A, 0x59, 0x0A, 0x39, 0x01, 0x0A, 0x59, 0x01, 0x0A, 0x38, 0x81, 0x0A, 0x39, 0x02, 0x18, 0x02, 0x0A, 0x59, 0x81, 0x0A, 0x38, 0x12, 0x59, 0x02, 0x12, 0x79, 0x92, 0x1A, 0x99, 0x12, 0x79, 0x1A, 0x9A, 0x22, 0xBA, 0x22, 0x79, 0x2A, 0x79, 0x32, 0x58, 0x3A, 0x38, 0x52, 0x17, 0x6A, 0x16, 0x92, 0x97, 0x9A, 0x36, 0x91, 0xD4, 0xA1, 0xF4, 0xA1, 0xD4, 0xA9, 0xD3, 0xA9, 0xD4, 0xB1, 0xF4, 0xA9, 0xB3, 0x02, 0xA9, 0xD3, 0x80, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x80, 0xA9, 0xF4, 0x01, 0xA9, 0xD3, 0x84, 0xA9, 0xB3, 0xA9, 0xD3, 0xB1, 0xF4, 0xA9, 0xD3, 0xB1, 0xF4, 0x02, 0xA9, 0xF3, 0x8A, 0xA9, 0xF4, 0xA1, 0xF3, 0x99, 0xF4, 0x9A, 0x35, 0x92, 0x56, 0x92, 0xD9, 0x59, 0xB5, 0x41, 0xD6, 0x3A, 0x99, 0x12, 0x18, 0x0A, 0x38, 0x03, 0x02, 0x38, 0x80, 0x02, 0x39, 0x01, 0x01, 0xF8, 0x01, 0x02, 0x19, 0x81, 0x02, 0x18, 0x01, 0xF8, 0x02, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x01, 0x02, 0x18, 0x83, 0x02, 0x38, 0x02, 0x18, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x81, 0x02, 0x17, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x82, 0x02, 0x38, 0x02, 0x17, 0x02, 0x38, 0x01, 0x02, 0x17, 0x82, 0x01, 0xF7, 0x02, 0x17, 0x02, 0x37, 0x01, 0x02, 0x58, 0x85, 0x0B, 0x1A, 0x2C, 0x3F, 0x34, 0x7F, 0x1B, 0x9C, 0x02, 0x98, 0x02, 0x57, 0x06, 0x02, 0x17, 0x80, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x81, 0x02, + 0x17, 0x01, 0xF7, 0x01, 0x02, 0x18, 0x81, 0x01, 0xF7, 0x02, 0x17, 0x01, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x80, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xF8, 0x80, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x01, 0x02, 0x18, 0x84, 0x01, 0xF7, 0x02, 0x18, 0x01, 0xF7, 0x02, 0x18, 0x02, 0x17, 0x02, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x84, 0x01, 0xF8, 0x02, 0x18, 0x01, 0xF7, 0x02, 0x38, 0x02, 0x17, 0x02, 0x02, 0x18, 0x83, 0x01, 0xF7, 0x02, 0x18, 0x02, 0x17, 0x01, 0xF6, 0x02, 0x01, 0xF7, 0x01, 0x02, 0x37, 0x89, 0x02, 0x78, 0x02, 0x98, 0x02, 0xB8, 0x13, 0x5B, 0x23, 0xFD, 0x34, 0x7F, 0x23, 0xFD, 0x02, 0xF9, 0x02, 0x77, 0x02, 0x37, 0x02, 0x02, 0x17, 0x80, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x02, 0x01, 0xF7, 0x80, 0x01, 0xD6, 0x01, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x81, 0x01, 0xF7, 0x01, 0xD7, 0x09, 0x01, 0xF7, 0x81, 0x02, 0x18, 0x01, 0xF7, 0x01, 0x01, 0xF8, 0x01, 0x01, 0xD7, 0x03, 0x01, 0xF7, 0x03, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x81, 0x01, 0xF7, 0x01, 0xD7, 0x04, 0x01, 0xF7, 0x80, 0x01, 0xF6, 0x01, 0x01, 0xF7, 0x8D, 0x02, 0x17, 0x02, 0x37, 0x02, 0x17, 0x02, 0x37, 0x02, 0x57, 0x0A, 0xD9, 0x23, 0x9C, 0x3C, 0x5F, 0x34, 0x5E, 0x1B, 0x7B, 0x02, 0xB8, 0x02, 0x57, 0x02, 0x36, 0x02, 0x16, 0x03, 0x01, 0xF6, 0x03, 0x01, 0xF7, 0x82, 0x02, 0x17, 0x01, 0xF7, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x81, 0x01, 0xD7, 0x01, 0xD6, 0x02, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x03, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x81, + 0x01, 0xF8, 0x01, 0xF7, 0x05, 0x01, 0xD7, 0x84, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xD7, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x81, 0x01, 0xF7, 0x01, 0xF6, 0x02, 0x01, 0xD6, 0x01, 0x01, 0xF6, 0x81, 0x02, 0x17, 0x02, 0x37, 0x03, 0x02, 0x57, 0x87, 0x12, 0xFA, 0x2B, 0xDD, 0x3C, 0x7F, 0x34, 0x5F, 0x23, 0xBD, 0x0A, 0xF9, 0x02, 0x57, 0x02, 0x17, 0x04, 0x01, 0xF6, 0x80, 0x01, 0xF7, 0x01, 0x01, 0xD6, 0x81, 0x01, 0xF6, 0x01, 0xF7, 0x03, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x04, 0x01, 0xD7, 0x81, 0x01, 0xB6, 0x01, 0xD7, 0x01, 0x01, 0xD6, 0x81, 0x01, 0xD7, 0x01, 0xD6, 0x01, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x80, 0x01, 0xB6, 0x01, 0x01, 0xB7, 0x80, 0x01, 0xB6, 0x01, 0x01, 0xB7, 0x81, 0x01, 0xB6, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x08, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x04, 0x01, 0xD7, 0x80, 0x01, 0xB7, 0x04, 0x01, 0xD7, 0x80, 0x01, 0xB6, 0x01, 0x01, 0xD7, 0x80, 0x01, 0xB6, 0x01, 0x01, 0xD7, 0x8C, 0x01, 0xF7, 0x01, 0xF6, 0x02, 0x16, 0x02, 0x17, 0x02, 0x57, 0x12, 0xFA, 0x2B, 0xDD, 0x34, 0x3E, 0x2B, 0xFD, 0x1B, 0x5B, 0x02, 0xB8, 0x02, 0x56, 0x02, 0x15, 0x01, 0x02, 0x16, 0x80, 0x01, 0xF6, 0x02, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x0A, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x0D, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x81, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x82, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x81, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x81, 0x01, + 0xD6, 0x01, 0xF6, 0x01, 0x02, 0x17, 0x01, 0x02, 0x37, 0x87, 0x02, 0x78, 0x0A, 0xD9, 0x23, 0xDD, 0x34, 0x3E, 0x2C, 0x3E, 0x1B, 0x7B, 0x02, 0xB8, 0x02, 0x77, 0x01, 0x02, 0x36, 0x82, 0x02, 0x16, 0x02, 0x37, 0x02, 0x17, 0x01, 0x01, 0xF6, 0x80, 0x01, 0xF7, 0x01, 0x01, 0xF6, 0x02, 0x01, 0xD6, 0x06, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x06, 0x01, 0xF7, 0x03, 0x01, 0xD7, 0x80, 0x01, 0xD8, 0x06, 0x01, 0xF7, 0x82, 0x01, 0xF8, 0x01, 0xF7, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x8C, 0x02, 0x16, 0x02, 0x36, 0x02, 0x98, 0x1B, 0x5B, 0x2C, 0x1E, 0x2C, 0x3E, 0x1B, 0x9B, 0x02, 0xB8, 0x02, 0x57, 0x02, 0x78, 0x02, 0x37, 0x02, 0x17, 0x02, 0x16, 0x01, 0x01, 0xF6, 0x03, 0x02, 0x17, 0x02, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x06, 0x01, 0xF7, 0x82, 0x01, 0xF8, 0x02, 0x18, 0x01, 0xF8, 0x01, 0x02, 0x18, 0x81, 0x01, 0xF7, 0x02, 0x18, 0x01, 0x01, 0xF8, 0x01, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x01, 0x01, 0xF7, 0x01, 0x02, 0x18, 0x04, 0x01, 0xF7, 0x82, 0x01, 0xF8, 0x01, 0xF7, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x82, 0x02, 0x18, 0x02, 0x17, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x80, 0x01, 0xF7, 0x01, 0x02, 0x37, 0x85, 0x02, 0x78, 0x13, 0x3B, 0x23, 0xFE, 0x2C, 0x1E, 0x0B, 0x1A, 0x02, 0x98, 0x01, 0x02, 0x78, 0x81, 0x02, 0x57, 0x02, 0x37, 0x03, 0x02, 0x17, 0x03, 0x01, 0xF7, 0x84, 0x02, 0x17, 0x01, 0xF7, 0x02, 0x17, 0x02, 0x18, 0x01, 0xF7, 0x03, 0x02, 0x18, 0x80, + 0x01, 0xF8, 0x05, 0x02, 0x18, 0x01, 0x01, 0xF8, 0x80, 0x02, 0x18, 0x02, 0x01, 0xF8, 0x80, 0x02, 0x18, 0x01, 0x01, 0xF8, 0x80, 0x02, 0x18, 0x01, 0x01, 0xF8, 0x84, 0x02, 0x18, 0x01, 0xF8, 0x01, 0xF7, 0x01, 0xF8, 0x02, 0x18, 0x03, 0x01, 0xF8, 0x01, 0x02, 0x18, 0x81, 0x01, 0xF8, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x8B, 0x02, 0x18, 0x02, 0x17, 0x02, 0x37, 0x02, 0x17, 0x02, 0x37, 0x02, 0x58, 0x02, 0x98, 0x23, 0xFD, 0x2C, 0x3E, 0x1B, 0xBC, 0x02, 0x98, 0x02, 0x57, 0x03, 0x02, 0x37, 0x02, 0x02, 0x17, 0x80, 0x01, 0xF7, 0x01, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x0F, 0x02, 0x18, 0x82, 0x01, 0xF8, 0x02, 0x18, 0x01, 0xF8, 0x15, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x02, 0x02, 0x18, 0x80, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x85, 0x02, 0x58, 0x02, 0x78, 0x0A, 0xFA, 0x34, 0x7F, 0x02, 0xB9, 0x02, 0x78, 0x01, 0x02, 0x58, 0x02, 0x02, 0x38, 0x16, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x04, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x0D, 0x02, 0x18, 0x80, 0x02, 0x38, 0x03, 0x02, 0x18, 0x02, 0x02, 0x38, 0x02, 0x02, 0x18, 0x01, 0x02, 0x38, 0x85, 0x02, 0x58, 0x02, 0xB9, 0x34, 0x7F, 0x1B, 0x9C, 0x02, 0x78, 0x02, 0x38, 0x03, 0x02, 0x18, 0x80, 0x02, 0x17, 0x10, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x1E, 0x02, 0x18, 0x80, 0x02, 0x38, 0x01, 0x02, 0x37, 0x05, 0x02, 0x17, 0x81, 0x2C, 0x5E, 0x1B, 0xDD, 0x01, 0x02, 0x37, 0x84, 0x02, 0x38, 0x02, 0x37, 0x02, 0x17, 0x02, 0x38, 0x02, 0x18, 0x01, 0x02, 0x38, 0x12, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x07, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x11, 0x02, 0x18, 0x81, + 0x02, 0x17, 0x02, 0x18, 0x01, 0x02, 0x17, 0x80, 0x02, 0x37, 0x02, 0x02, 0x17, 0x01, 0x02, 0x37, 0x83, 0x02, 0x78, 0x0B, 0x3A, 0x34, 0x7F, 0x02, 0xB9, 0x01, 0x02, 0x37, 0x01, 0x02, 0x17, 0x80, 0x01, 0xF7, 0x03, 0x02, 0x18, 0x01, 0x02, 0x38, 0x80, 0x02, 0x18, 0x01, 0x02, 0x38, 0x0A, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x15, 0x02, 0x18, 0x80, 0x02, 0x38, 0x01, 0x02, 0x18, 0x80, 0x01, 0xF7, 0x03, 0x02, 0x18, 0x04, 0x02, 0x17, 0x8B, 0x02, 0x37, 0x02, 0x58, 0x02, 0x78, 0x02, 0xD9, 0x3C, 0xDF, 0x1B, 0x9C, 0x02, 0x78, 0x02, 0x37, 0x02, 0x38, 0x02, 0x17, 0x01, 0xF7, 0x02, 0x17, 0x04, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x08, 0x02, 0x18, 0x80, 0x02, 0x17, 0x03, 0x02, 0x18, 0x81, 0x02, 0x38, 0x01, 0xF8, 0x02, 0x02, 0x18, 0x81, 0x0A, 0x39, 0x02, 0x18, 0x02, 0x02, 0x38, 0x80, 0x0A, 0x39, 0x01, 0x0A, 0x38, 0x80, 0x0A, 0x59, 0x04, 0x0A, 0x58, 0x82, 0x12, 0x59, 0x12, 0x79, 0x1A, 0x99, 0x01, 0x1A, 0x79, 0x88, 0x22, 0x58, 0x22, 0x38, 0x32, 0x17, 0x41, 0xF7, 0x5A, 0x17, 0x7A, 0x57, 0x92, 0x57, 0x9A, 0x15, 0xA1, 0xF4, 0x01, 0xA9, 0xF4, 0x82, 0xA9, 0xD4, 0xA9, 0xD3, 0xB1, 0xF4, 0x01, 0xA9, 0xD3, 0x80, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x82, 0xA9, 0xD3, 0xA9, 0xF3, 0xA9, 0xB3, 0x01, 0xA9, 0xD3, 0x80, 0xB1, 0xF4, 0x01, 0xA9, 0xD3, 0x8C, 0xA9, 0xF3, 0xA9, 0xD3, 0xA1, 0xD3, 0xA1, 0xF4, 0xA2, 0x35, 0x9A, 0x15, 0x92, 0x15, 0x92, 0x98, 0x61, 0xD6, 0x31, 0x34, 0x21, 0xF6, 0x11, 0xF7, 0x0A, 0x17, 0x03, 0x02, 0x18, 0x01, 0x01, 0xF8, 0x81, 0x02, + 0x18, 0x01, 0xF8, 0x02, 0x02, 0x18, 0x02, 0x01, 0xF8, 0x03, 0x02, 0x18, 0x80, 0x01, 0xF7, 0x01, 0x01, 0xF8, 0x04, 0x01, 0xF7, 0x05, 0x02, 0x17, 0x80, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x86, 0x02, 0x37, 0x02, 0x58, 0x02, 0xB9, 0x13, 0x7B, 0x34, 0x5F, 0x2C, 0x1E, 0x0A, 0xD9, 0x01, 0x02, 0x37, 0x84, 0x02, 0x17, 0x02, 0x37, 0x02, 0x17, 0x01, 0xF7, 0x02, 0x17, 0x03, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x03, 0x01, 0xF7, 0x84, 0x02, 0x18, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xF8, 0x0D, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x04, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x03, 0x01, 0xF7, 0x81, 0x02, 0x18, 0x02, 0x17, 0x06, 0x01, 0xF7, 0x81, 0x02, 0x17, 0x02, 0x37, 0x01, 0x02, 0x57, 0x86, 0x02, 0x98, 0x0B, 0x19, 0x23, 0xFD, 0x34, 0x3E, 0x13, 0x5B, 0x02, 0x98, 0x02, 0x37, 0x02, 0x02, 0x17, 0x81, 0x01, 0xF7, 0x01, 0xF6, 0x02, 0x01, 0xD6, 0x80, 0x01, 0xF7, 0x04, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x03, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x81, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x03, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x82, 0x01, 0xF7, 0x01, 0xD6, 0x01, 0xD7, 0x03, 0x01, 0xF7, 0x82, 0x01, 0xD6, 0x01, 0xF6, 0x02, 0x17, 0x05, 0x01, 0xF6, 0x01, 0x02, 0x16, 0x87, 0x02, 0x36, 0x02, 0x77, 0x13, 0x1A, 0x2B, 0xDD, 0x2B, 0xFD, 0x1B, 0x7B, 0x02, 0x98, 0x02, 0x57, 0x02, 0x02, 0x16, 0x01, 0x01, 0xF6, 0x81, 0x01, 0xD6, 0x01, 0xF6, 0x01, 0x01, 0xB6, 0x80, 0x01, 0xD6, + 0x02, 0x01, 0xF7, 0x01, 0x01, 0xD6, 0x82, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xF7, 0x0F, 0x01, 0xD7, 0x80, 0x01, 0xD6, 0x06, 0x01, 0xD7, 0x08, 0x01, 0xD6, 0x01, 0x01, 0xF6, 0x01, 0x01, 0xF7, 0x81, 0x01, 0xF6, 0x02, 0x17, 0x01, 0x02, 0x16, 0x8A, 0x02, 0x36, 0x02, 0x77, 0x0A, 0xD9, 0x23, 0xBC, 0x34, 0x3E, 0x23, 0xBD, 0x12, 0xFA, 0x02, 0x37, 0x02, 0x36, 0x02, 0x16, 0x02, 0x37, 0x01, 0x02, 0x17, 0x01, 0x01, 0xF6, 0x02, 0x01, 0xD6, 0x07, 0x01, 0xB6, 0x03, 0x01, 0xD6, 0x05, 0x01, 0xB6, 0x02, 0x01, 0x96, 0x02, 0x01, 0xB6, 0x03, 0x01, 0x96, 0x10, 0x01, 0xB6, 0x81, 0x01, 0x96, 0x01, 0xB6, 0x02, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x01, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x8A, 0x02, 0x17, 0x02, 0x57, 0x02, 0xB8, 0x13, 0x5B, 0x34, 0x1E, 0x2B, 0xFD, 0x23, 0x9C, 0x0A, 0xB8, 0x02, 0x16, 0x01, 0xD4, 0x01, 0xB4, 0x02, 0x01, 0xD5, 0x80, 0x01, 0xB5, 0x01, 0x01, 0xD5, 0x10, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x02, 0x01, 0xD7, 0x02, 0x01, 0xB7, 0x02, 0x01, 0xD7, 0x82, 0x01, 0xB7, 0x01, 0xD7, 0x01, 0xB7, 0x02, 0x01, 0xD7, 0x80, 0x01, 0xD6, 0x01, 0x01, 0xB6, 0x02, 0x01, 0xD6, 0x01, 0x01, 0xB6, 0x82, 0x01, 0x96, 0x01, 0xD6, 0x01, 0xB6, 0x03, 0x01, 0xD6, 0x01, 0x01, 0xF6, 0x8A, 0x02, 0x16, 0x02, 0x57, 0x02, 0x98, 0x0B, 0x1A, 0x1B, 0xBC, 0x2C, 0x3E, 0x23, 0xBC, 0x0A, 0xF9, 0x02, 0x57, 0x02, 0x16, 0x02, 0x15, 0x02, 0x01, 0xF5, 0x81, 0x01, 0xF6, 0x02, 0x16, 0x02, 0x01, 0xF6, 0x06, 0x01, 0xD6, 0x82, 0x01, 0xF6, + 0x01, 0xF7, 0x01, 0xF6, 0x02, 0x01, 0xD6, 0x01, 0x01, 0xD7, 0x81, 0x01, 0xF7, 0x01, 0xD6, 0x06, 0x01, 0xD7, 0x02, 0x01, 0xB7, 0x03, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x83, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x80, 0x01, 0xB6, 0x01, 0x01, 0xD7, 0x02, 0x01, 0xD6, 0x88, 0x01, 0xF6, 0x02, 0x17, 0x02, 0x37, 0x02, 0x98, 0x13, 0x5A, 0x2C, 0x3E, 0x34, 0x5F, 0x1B, 0x9C, 0x02, 0x78, 0x02, 0x02, 0x16, 0x01, 0x01, 0xF6, 0x01, 0x02, 0x16, 0x81, 0x01, 0xF6, 0x01, 0xF7, 0x01, 0x01, 0xF6, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x81, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x82, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x04, 0x01, 0xF7, 0x81, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x81, 0x01, 0xF7, 0x01, 0xD7, 0x08, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xD6, 0x03, 0x01, 0xF7, 0x89, 0x02, 0x17, 0x02, 0x37, 0x02, 0x98, 0x23, 0xBC, 0x2C, 0x1E, 0x23, 0xDD, 0x02, 0xDA, 0x02, 0x78, 0x02, 0x58, 0x02, 0x37, 0x04, 0x02, 0x17, 0x80, 0x01, 0xF6, 0x02, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x03, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x14, 0x01, 0xF7, 0x81, 0x01, 0xD7, 0x01, 0xF8, 0x03, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x03, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x02, 0x01, 0xF7, 0x03, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x86, 0x02, 0x17, 0x02, 0x37, 0x02, 0x98, 0x2C, 0x1E, 0x34, 0x3F, 0x13, + 0x3B, 0x02, 0x57, 0x01, 0x02, 0x37, 0x02, 0x02, 0x17, 0x0F, 0x01, 0xF7, 0x02, 0x02, 0x18, 0x81, 0x01, 0xF7, 0x01, 0xF8, 0x02, 0x01, 0xF7, 0x80, 0x01, 0xF8, 0x08, 0x01, 0xF7, 0x80, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x01, 0x01, 0xF8, 0x83, 0x01, 0xF7, 0x01, 0xF8, 0x01, 0xF7, 0x02, 0x18, 0x02, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x01, 0x02, 0x18, 0x80, 0x02, 0x17, 0x02, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x87, 0x02, 0x37, 0x02, 0xB9, 0x34, 0x9F, 0x0B, 0x3B, 0x02, 0x99, 0x02, 0x78, 0x02, 0x58, 0x02, 0x37, 0x01, 0x02, 0x17, 0x04, 0x01, 0xF7, 0x81, 0x02, 0x17, 0x02, 0x18, 0x01, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x03, 0x01, 0xF7, 0x80, 0x01, 0xF8, 0x15, 0x01, 0xF7, 0x01, 0x01, 0xF8, 0x82, 0x01, 0xF7, 0x02, 0x17, 0x02, 0x18, 0x02, 0x01, 0xF7, 0x81, 0x02, 0x18, 0x01, 0xF7, 0x03, 0x02, 0x18, 0x01, 0x02, 0x17, 0x86, 0x02, 0x58, 0x02, 0x37, 0x0B, 0x1A, 0x2C, 0x1E, 0x02, 0xB9, 0x02, 0x38, 0x02, 0x17, 0x02, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x81, 0x01, 0xF7, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x02, 0x01, 0xF8, 0x80, 0x01, 0xF7, 0x01, 0x02, 0x18, 0x0C, 0x01, 0xF8, 0x80, 0x01, 0xF7, 0x01, 0x01, 0xF8, 0x80, 0x01, 0xF7, 0x05, 0x01, 0xF8, 0x81, 0x01, 0xF7, 0x02, 0x18, 0x01, 0x01, 0xF8, 0x80, 0x01, 0xF7, 0x02, 0x01, 0xF8, 0x02, 0x01, 0xF7, 0x02, 0x02, 0x18, 0x81, 0x01, 0xF7, 0x02, 0x18, 0x03, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x85, 0x01, 0xF6, 0x02, 0x17, 0x01, 0xF6, 0x23, 0xDD, 0x1B, 0x9C, 0x02, 0x57, 0x09, 0x02, 0x17, 0x03, 0x01, 0xF7, 0x80, 0x02, + 0x17, 0x03, 0x01, 0xF7, 0x80, 0x02, 0x18, 0x02, 0x01, 0xF7, 0x80, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x80, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x80, 0x02, 0x18, 0x02, 0x01, 0xF7, 0x01, 0x01, 0xF8, 0x08, 0x01, 0xF7, 0x80, 0x02, 0x18, 0x03, 0x01, 0xF7, 0x81, 0x02, 0x17, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x03, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x80, 0x01, 0xF6, 0x01, 0x02, 0x17, 0x84, 0x02, 0x57, 0x02, 0x78, 0x34, 0x5F, 0x0B, 0x1A, 0x02, 0x16, 0x04, 0x01, 0xF7, 0x81, 0x02, 0x17, 0x01, 0xF7, 0x03, 0x02, 0x17, 0x05, 0x01, 0xF7, 0x80, 0x02, 0x18, 0x09, 0x01, 0xF7, 0x01, 0x01, 0xF8, 0x04, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x08, 0x01, 0xF7, 0x82, 0x02, 0x17, 0x01, 0xF7, 0x02, 0x17, 0x06, 0x01, 0xF7, 0x81, 0x02, 0x17, 0x01, 0xF7, 0x03, 0x02, 0x17, 0x88, 0x02, 0x37, 0x02, 0x57, 0x02, 0x77, 0x1B, 0x7B, 0x3C, 0x9F, 0x02, 0xD9, 0x02, 0x37, 0x02, 0x17, 0x01, 0xF6, 0x01, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x81, 0x02, 0x18, 0x01, 0xF7, 0x01, 0x01, 0xF8, 0x02, 0x01, 0xF7, 0x83, 0x02, 0x18, 0x02, 0x17, 0x01, 0xF7, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x01, 0x02, 0x18, 0x80, 0x02, 0x17, 0x09, 0x02, 0x18, 0x80, 0x01, 0xF8, 0x01, 0x02, 0x18, 0x87, 0x02, 0x17, 0x02, 0x38, 0x0A, 0x38, 0x02, 0x17, 0x01, 0xF7, 0x0A, 0x18, 0x09, 0xF7, 0x0A, 0x18, 0x01, 0x12, 0x38, 0x01, 0x1A, 0x18, 0x87, 0x21, 0xF7, 0x3A, 0x17, 0x52, 0x37, 0x6A, 0x37, 0x8A, 0x57, 0x9A, 0x36, 0x99, 0xF5, 0xA1, 0xD4, 0x01, 0xA9, 0xD4, 0x02, 0xA9, 0xD3, 0x82, 0xA9, 0xB3, 0xA9, + 0xF3, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x01, 0xB1, 0xF3, 0x80, 0xA9, 0xD3, 0x02, 0xA9, 0xF3, 0x02, 0xA9, 0xD3, 0x8A, 0xA1, 0xD3, 0xA1, 0xF4, 0xAA, 0x35, 0x9A, 0x35, 0x92, 0x15, 0x8A, 0x57, 0x72, 0x37, 0x31, 0x12, 0x32, 0x38, 0x09, 0xB6, 0x01, 0xD6, 0x03, 0x01, 0xF7, 0x01, 0x01, 0xF8, 0x81, 0x01, 0xF7, 0x01, 0xF8, 0x06, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x81, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0x01, 0xD6, 0x02, 0x01, 0xF7, 0x80, 0x01, 0xF6, 0x02, 0x02, 0x17, 0x87, 0x02, 0x37, 0x02, 0x78, 0x02, 0x98, 0x23, 0xBD, 0x2B, 0xFD, 0x13, 0x3B, 0x02, 0x78, 0x02, 0x37, 0x01, 0x02, 0x17, 0x80, 0x01, 0xF7, 0x01, 0x01, 0xF6, 0x81, 0x01, 0xF7, 0x01, 0xF6, 0x05, 0x01, 0xF7, 0x03, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x03, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x01, 0x01, 0xD6, 0x09, 0x01, 0xF7, 0x03, 0x01, 0xD7, 0x03, 0x01, 0xF7, 0x81, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0x01, 0xF6, 0x01, 0x02, 0x16, 0x01, 0x01, 0xF6, 0x89, 0x02, 0x16, 0x02, 0x36, 0x02, 0x77, 0x13, 0x1A, 0x2C, 0x1E, 0x23, 0xDD, 0x13, 0x1A, 0x02, 0x78, 0x02, 0x37, 0x01, 0xF6, 0x05, 0x01, 0xD6, 0x01, 0x01, 0xB6, 0x81, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x05, 0x01, 0xD7, 0x81, 0x01, 0xD6, 0x01, 0xB6, 0x02, 0x01, 0xD7, 0x82, 0x01, 0xD6, 0x01, 0xD7, 0x01, 0xD6, 0x02, 0x01, 0xD7, 0x82, + 0x01, 0xB6, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0x01, 0xD7, 0x02, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x05, 0x01, 0xD6, 0x82, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0xF6, 0x03, 0x01, 0xD6, 0x80, 0x01, 0xD5, 0x02, 0x01, 0xF6, 0x88, 0x02, 0x16, 0x0A, 0xB9, 0x23, 0x7B, 0x2B, 0xFD, 0x1B, 0x7B, 0x0A, 0xD9, 0x02, 0x57, 0x02, 0x16, 0x01, 0xF6, 0x01, 0x01, 0xD6, 0x81, 0x01, 0xB5, 0x01, 0xD6, 0x01, 0x01, 0xB6, 0x01, 0x01, 0x95, 0x01, 0x01, 0xB6, 0x82, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0xD6, 0x07, 0x01, 0xB6, 0x80, 0x01, 0xD6, 0x01, 0x01, 0xB6, 0x01, 0x01, 0xD7, 0x81, 0x01, 0xB6, 0x01, 0xD6, 0x03, 0x01, 0xB6, 0x80, 0x01, 0xD6, 0x07, 0x01, 0xB6, 0x02, 0x01, 0xD6, 0x80, 0x01, 0xF6, 0x07, 0x01, 0xD6, 0x01, 0x01, 0xD5, 0x01, 0x01, 0xF5, 0x8C, 0x01, 0xF6, 0x02, 0x16, 0x02, 0x57, 0x1B, 0x5B, 0x23, 0xBC, 0x23, 0xDC, 0x13, 0x7B, 0x02, 0xD8, 0x02, 0x77, 0x02, 0x37, 0x02, 0x16, 0x01, 0xF6, 0x01, 0xD5, 0x04, 0x01, 0xB5, 0x08, 0x01, 0xB6, 0x80, 0x01, 0xD6, 0x01, 0x01, 0xB6, 0x81, 0x01, 0xD6, 0x01, 0xB6, 0x04, 0x01, 0x96, 0x01, 0x01, 0x95, 0x03, 0x01, 0x96, 0x07, 0x01, 0xB6, 0x02, 0x01, 0x96, 0x80, 0x01, 0xB6, 0x01, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x01, 0x01, 0x95, 0x80, 0x01, 0xB5, 0x03, 0x01, 0xD6, 0x03, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x02, 0x02, 0x17, 0x8A, 0x02, 0x37, 0x02, 0x78, 0x2B, 0xDD, 0x3C, 0x9F, 0x23, 0xBC, 0x0B, 0x3A, 0x02, 0xB8, 0x02, 0x57, 0x02, 0x16, 0x01, 0xF5, 0x01, 0xD5, 0x01, 0x01, 0xD4, 0x02, 0x01, 0xD5, 0x81, 0x01, 0xB5, 0x01, 0xD5, 0x0E, 0x01, + 0xD6, 0x80, 0x01, 0xB6, 0x03, 0x01, 0xD6, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xB6, 0x80, 0x01, 0xD6, 0x05, 0x01, 0xB6, 0x04, 0x01, 0xD6, 0x81, 0x01, 0xB6, 0x01, 0xD6, 0x05, 0x01, 0xB6, 0x80, 0x01, 0x95, 0x02, 0x01, 0xD6, 0x8A, 0x01, 0xF6, 0x02, 0x16, 0x02, 0x37, 0x02, 0x77, 0x13, 0x5A, 0x2C, 0x1D, 0x23, 0xFC, 0x13, 0x9B, 0x02, 0xF9, 0x02, 0x98, 0x02, 0x36, 0x01, 0x02, 0x16, 0x80, 0x01, 0xF5, 0x01, 0x01, 0xD5, 0x01, 0x01, 0xF5, 0x81, 0x01, 0xF6, 0x02, 0x16, 0x01, 0x01, 0xF6, 0x04, 0x01, 0xD6, 0x80, 0x01, 0xD5, 0x04, 0x01, 0xF6, 0x0B, 0x01, 0xD6, 0x05, 0x01, 0xB6, 0x81, 0x01, 0xD6, 0x01, 0xB6, 0x02, 0x01, 0xD6, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x84, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0xD7, 0x02, 0x01, 0xD6, 0x03, 0x01, 0xF6, 0x88, 0x02, 0x16, 0x13, 0x1A, 0x3C, 0x7F, 0x34, 0x7F, 0x1B, 0x9C, 0x02, 0xD9, 0x02, 0x57, 0x02, 0x37, 0x02, 0x16, 0x01, 0x01, 0xF6, 0x02, 0x01, 0xD6, 0x82, 0x02, 0x16, 0x01, 0xF6, 0x01, 0xF7, 0x01, 0x01, 0xF6, 0x05, 0x01, 0xD6, 0x02, 0x01, 0xF6, 0x04, 0x01, 0xD6, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xF7, 0x03, 0x01, 0xD7, 0x80, 0x01, 0xB6, 0x04, 0x01, 0xD6, 0x84, 0x01, 0xF6, 0x01, 0xF7, 0x01, 0xF6, 0x01, 0xF7, 0x01, 0xF6, 0x04, 0x01, 0xF7, 0x81, 0x01, 0xD6, 0x01, 0xF6, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xF6, 0x03, 0x01, 0xD6, 0x87, 0x01, 0xF6, 0x02, 0x17, 0x02, 0x37, 0x0A, 0x99, 0x23, 0xBC, 0x2B, 0xFE, 0x13, 0x5B, 0x02, 0x99, 0x01, 0x02, 0x58, 0x81, 0x02, 0x37, 0x02, 0x17, + 0x01, 0x02, 0x16, 0x03, 0x01, 0xF6, 0x03, 0x01, 0xF7, 0x84, 0x01, 0xD6, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xD6, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xF6, 0x06, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x81, 0x01, 0xF6, 0x01, 0xD6, 0x05, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x05, 0x01, 0xF7, 0x81, 0x01, 0xF6, 0x01, 0xF7, 0x03, 0x02, 0x17, 0x02, 0x01, 0xF6, 0x81, 0x02, 0x37, 0x02, 0x78, 0x01, 0x1B, 0x9C, 0x81, 0x02, 0xD9, 0x02, 0x57, 0x01, 0x02, 0x37, 0x01, 0x02, 0x17, 0x01, 0x01, 0xF6, 0x01, 0x01, 0xF7, 0x81, 0x01, 0xD6, 0x01, 0xF6, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x80, 0x01, 0xD6, 0x01, 0x01, 0xD7, 0x81, 0x01, 0xD6, 0x01, 0xD7, 0x14, 0x01, 0xF7, 0x80, 0x01, 0xD6, 0x01, 0x01, 0xD7, 0x08, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x04, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x88, 0x02, 0x37, 0x02, 0x57, 0x1B, 0xBC, 0x13, 0x7B, 0x02, 0xD9, 0x02, 0xB9, 0x02, 0x78, 0x02, 0x58, 0x02, 0x17, 0x02, 0x01, 0xF7, 0x81, 0x01, 0xD6, 0x01, 0xD7, 0x0E, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x04, 0x01, 0xF7, 0x80, 0x01, 0xD6, 0x09, 0x01, 0xF7, 0x80, 0x01, 0xD6, 0x10, 0x01, 0xF7, 0x03, 0x02, 0x17, 0x81, 0x02, 0x37, 0x02, 0x57, 0x01, 0x13, 0x5B, 0x82, 0x02, 0x58, 0x02, 0x37, 0x01, 0xF6, 0x01, 0x02, 0x17, 0x85, 0x01, 0xF7, 0x01, 0xF6, 0x02, 0x17, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x03, 0x01, 0xF7, 0x14, 0x01, 0xD7, 0x05, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xD7, + 0x08, 0x01, 0xF7, 0x06, 0x01, 0xF6, 0x83, 0x13, 0x3A, 0x13, 0x5B, 0x02, 0x57, 0x02, 0x37, 0x01, 0x02, 0x17, 0x02, 0x01, 0xF7, 0x01, 0x01, 0xF6, 0x81, 0x01, 0xD6, 0x01, 0xF6, 0x01, 0x01, 0xD6, 0x01, 0x01, 0xF6, 0x05, 0x01, 0xF7, 0x82, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xD7, 0x0C, 0x01, 0xF7, 0x83, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x82, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xD7, 0x04, 0x01, 0xF7, 0x01, 0x01, 0xF6, 0x80, 0x01, 0xD6, 0x06, 0x01, 0xF6, 0x87, 0x02, 0x16, 0x02, 0x37, 0x02, 0x36, 0x0B, 0x3A, 0x1B, 0xBC, 0x01, 0xD5, 0x01, 0xF6, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x81, 0x01, 0xF7, 0x01, 0xF6, 0x01, 0x01, 0xF7, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x04, 0x01, 0xD7, 0x80, 0x01, 0xD6, 0x02, 0x01, 0xD7, 0x81, 0x01, 0xF7, 0x01, 0xD7, 0x16, 0x01, 0xF7, 0x80, 0x01, 0xD6, 0x02, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x88, 0x02, 0x37, 0x02, 0x17, 0x02, 0x37, 0x02, 0x77, 0x1B, 0xBC, 0x2B, 0xFD, 0x02, 0x57, 0x02, 0x16, 0x01, 0xF6, 0x02, 0x02, 0x17, 0x03, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x09, 0x01, 0xF7, 0x07, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x03, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x81, 0x01, 0xF7, 0x02, 0x17, 0x03, 0x01, 0xF7, 0x95, 0x01, 0xD7, 0x0A, 0x17, 0x09, 0xF7, 0x11, 0xF7, 0x19, 0xD6, 0x29, 0xB6, 0x31, 0x95, 0x51, 0x95, 0x7A, 0x36, 0x92, 0x56, 0x99, 0xF5, 0xA1, 0xD4, 0xA9, 0xD4, 0xA9, 0xF4, 0xA9, 0xD4, 0xA9, + 0xF4, 0xA9, 0xD3, 0xB1, 0xF4, 0xA9, 0xD3, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0x02, 0xA9, 0xD3, 0x88, 0xB1, 0xF3, 0xA9, 0xD3, 0xB1, 0xF4, 0xA9, 0xD3, 0xA9, 0xB3, 0xA9, 0xD3, 0xA9, 0xF3, 0xA9, 0xD3, 0xA1, 0xF3, 0x01, 0xA1, 0xF4, 0x86, 0xA2, 0x35, 0x92, 0x15, 0x8A, 0x36, 0x7A, 0x57, 0x31, 0x12, 0x29, 0xD6, 0x01, 0x74, 0x02, 0x01, 0xD6, 0x80, 0x01, 0xF7, 0x07, 0x01, 0xD7, 0x01, 0x01, 0xD6, 0x02, 0x01, 0xD7, 0x80, 0x01, 0xD6, 0x03, 0x01, 0xD7, 0x82, 0x01, 0xD6, 0x01, 0xD7, 0x01, 0xF7, 0x08, 0x01, 0xD6, 0x81, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0x01, 0xF6, 0x81, 0x02, 0x16, 0x02, 0x17, 0x01, 0x02, 0x37, 0x87, 0x02, 0x57, 0x0B, 0x1A, 0x23, 0xDD, 0x1B, 0x7B, 0x0A, 0xD9, 0x02, 0x78, 0x02, 0x37, 0x02, 0x16, 0x05, 0x01, 0xF6, 0x04, 0x01, 0xD6, 0x80, 0x01, 0xF6, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xF7, 0x08, 0x01, 0xD6, 0x80, 0x01, 0xF6, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x03, 0x01, 0xD6, 0x80, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x82, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0xD7, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x82, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0xF7, 0x07, 0x01, 0xF6, 0x8B, 0x01, 0xD5, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0xF6, 0x02, 0x36, 0x02, 0xB8, 0x13, 0x9B, 0x1B, 0xBC, 0x1B, 0x7C, 0x12, 0xFA, 0x02, 0x57, 0x02, 0x16, 0x02, 0x01, 0xF6, 0x81, 0x01, 0xD6, 0x01, 0xB5, 0x02, 0x01, 0xB6, 0x03, 0x01, 0xD6, 0x01, 0x01, 0xF6, 0x05, 0x01, 0xD6, 0x81, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0x01, 0xB6, 0x03, 0x01, 0xD6, 0x06, 0x01, 0xB6, 0x02, 0x01, + 0xD6, 0x02, 0x01, 0xB6, 0x01, 0x01, 0xB5, 0x01, 0x01, 0xD6, 0x01, 0x01, 0xD5, 0x81, 0x01, 0xD6, 0x01, 0xB5, 0x01, 0x01, 0xD5, 0x01, 0x01, 0xD6, 0x81, 0x01, 0xD5, 0x01, 0xB5, 0x01, 0x01, 0xD5, 0x01, 0x01, 0xF5, 0x89, 0x02, 0x36, 0x02, 0x77, 0x0B, 0x19, 0x1B, 0x9B, 0x23, 0xFD, 0x23, 0x9C, 0x13, 0x3A, 0x02, 0x77, 0x02, 0x16, 0x01, 0xF6, 0x02, 0x01, 0xD6, 0x01, 0x01, 0xB5, 0x81, 0x01, 0x95, 0x01, 0xB5, 0x03, 0x01, 0xD6, 0x01, 0x01, 0xB6, 0x80, 0x01, 0xB5, 0x01, 0x01, 0x95, 0x82, 0x01, 0x96, 0x01, 0xB6, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x80, 0x01, 0xD6, 0x08, 0x01, 0xB6, 0x80, 0x01, 0x96, 0x05, 0x01, 0x95, 0x01, 0x01, 0xB5, 0x80, 0x01, 0xB6, 0x06, 0x01, 0xD6, 0x81, 0x01, 0xD5, 0x01, 0xB5, 0x02, 0x01, 0xD5, 0x01, 0x01, 0xB5, 0x8D, 0x01, 0xD5, 0x01, 0xF5, 0x02, 0x15, 0x02, 0x36, 0x02, 0x97, 0x13, 0x7A, 0x1B, 0xDC, 0x2C, 0x1D, 0x23, 0xFC, 0x13, 0x3A, 0x02, 0x78, 0x02, 0x36, 0x02, 0x16, 0x01, 0xF5, 0x02, 0x01, 0xD5, 0x03, 0x01, 0xB5, 0x80, 0x01, 0xD5, 0x04, 0x01, 0xB5, 0x83, 0x01, 0xB6, 0x01, 0xD6, 0x23, 0x1B, 0x1A, 0xFB, 0x01, 0x1A, 0xFA, 0x82, 0x1A, 0xBA, 0x1A, 0xDA, 0x12, 0xBA, 0x04, 0x1A, 0xDA, 0x80, 0x1A, 0xB9, 0x02, 0x1A, 0xDA, 0x8C, 0x12, 0xDA, 0x1A, 0xFA, 0x12, 0xB9, 0x1A, 0xDA, 0x12, 0xB9, 0x1A, 0xFA, 0x1A, 0xDA, 0x12, 0xBA, 0x1A, 0xDA, 0x1A, 0xFA, 0x1A, 0xDA, 0x1A, 0xFA, 0x1A, 0xDA, 0x01, 0x1A, 0xFA, 0x84, 0x23, 0x1B, 0x1B, 0x1A, 0x1A, 0xFA, 0x1A, 0xF9, 0x1A, 0xFA, 0x01, 0x12, 0xD9, 0x8F, 0x12, 0xB9, 0x12, 0xD9, 0x12, + 0xB9, 0x1A, 0xFA, 0x12, 0xDA, 0x12, 0xD9, 0x12, 0xFA, 0x23, 0x5B, 0x33, 0xDD, 0x34, 0x1E, 0x2B, 0xFD, 0x23, 0x9C, 0x1B, 0x7B, 0x13, 0x5B, 0x13, 0x3A, 0x13, 0x5A, 0x01, 0x1B, 0x3A, 0x81, 0x1B, 0x5A, 0x1B, 0x3A, 0x02, 0x23, 0x5B, 0x80, 0x23, 0x3B, 0x01, 0x2B, 0x5B, 0x01, 0x23, 0x1A, 0x82, 0x1B, 0x1A, 0x23, 0x1B, 0x1B, 0x1A, 0x01, 0x23, 0x3B, 0x85, 0x23, 0x5C, 0x23, 0x3B, 0x23, 0x5B, 0x1B, 0x1A, 0x1B, 0x1B, 0x1B, 0x1A, 0x01, 0x1B, 0x1B, 0x80, 0x23, 0x3B, 0x03, 0x1A, 0xFA, 0x81, 0x1A, 0xDA, 0x22, 0xFB, 0x02, 0x1A, 0xFA, 0x81, 0x22, 0xFB, 0x1A, 0xDA, 0x02, 0x1A, 0xFA, 0x80, 0x1A, 0xDA, 0x01, 0x1A, 0xFA, 0x80, 0x1B, 0x1A, 0x02, 0x1A, 0xFA, 0x88, 0x1B, 0x1A, 0x1A, 0xFA, 0x23, 0x1B, 0x1A, 0xFA, 0x1A, 0xDA, 0x1A, 0xFA, 0x23, 0x3B, 0x1B, 0x1A, 0x1B, 0x3A, 0x01, 0x12, 0xD9, 0x83, 0x13, 0x3A, 0x1B, 0x7B, 0x2B, 0xFD, 0x23, 0xFD, 0x02, 0x23, 0xDC, 0x81, 0x1B, 0xBC, 0x13, 0x5B, 0x01, 0x13, 0x3A, 0x84, 0x13, 0x1A, 0x1B, 0x1A, 0x1B, 0x3A, 0x1B, 0x5B, 0x23, 0x5B, 0x01, 0x2B, 0x9C, 0x83, 0x1B, 0x1A, 0x1A, 0xFA, 0x12, 0xFA, 0x1B, 0x1A, 0x01, 0x23, 0x3B, 0x01, 0x1B, 0x1A, 0x80, 0x1A, 0xFA, 0x01, 0x1B, 0x1A, 0x80, 0x1B, 0x3B, 0x02, 0x1B, 0x1A, 0x81, 0x23, 0x1B, 0x1A, 0xFA, 0x04, 0x1B, 0x1A, 0x81, 0x1A, 0xFA, 0x1B, 0x1B, 0x02, 0x1A, 0xFA, 0x87, 0x22, 0xFB, 0x22, 0xFA, 0x1A, 0xDA, 0x22, 0xFB, 0x23, 0x1B, 0x22, 0xFB, 0x1A, 0xFB, 0x1B, 0x1B, 0x02, 0x23, 0x3B, 0x81, 0x23, 0x5C, 0x23, 0x7C, 0x01, 0x23, 0x5B, 0x01, 0x1B, 0x3B, 0x81, 0x1A, 0xFA, + 0x1B, 0x1B, 0x01, 0x1B, 0x1A, 0x86, 0x12, 0xFA, 0x13, 0x1A, 0x12, 0xFA, 0x1B, 0x7B, 0x34, 0x1E, 0x2B, 0xFD, 0x23, 0xBC, 0x01, 0x1B, 0xBC, 0x82, 0x1B, 0x9C, 0x13, 0x5B, 0x13, 0x1A, 0x01, 0x12, 0xFA, 0x01, 0x1B, 0x3B, 0x84, 0x1B, 0x1B, 0x23, 0x3B, 0x1B, 0x1B, 0x1B, 0x3B, 0x1B, 0x1B, 0x01, 0x1B, 0x3B, 0x84, 0x23, 0x5C, 0x23, 0x5B, 0x23, 0x5C, 0x23, 0x3B, 0x1B, 0x3B, 0x04, 0x23, 0x3B, 0x83, 0x23, 0x5C, 0x23, 0x3B, 0x23, 0x5C, 0x23, 0x3B, 0x02, 0x23, 0x5C, 0x81, 0x23, 0x3B, 0x23, 0x3C, 0x02, 0x23, 0x1B, 0x80, 0x23, 0x3B, 0x01, 0x1A, 0xFB, 0x82, 0x1B, 0x1B, 0x23, 0x3B, 0x1B, 0x1B, 0x01, 0x23, 0x3B, 0x85, 0x23, 0x5B, 0x1B, 0x5B, 0x23, 0x7C, 0x1B, 0x3B, 0x23, 0x5C, 0x1B, 0x3B, 0x01, 0x23, 0x5B, 0x92, 0x23, 0x7C, 0x23, 0x5C, 0x23, 0x5B, 0x1B, 0x3B, 0x23, 0x5B, 0x1B, 0x3B, 0x1B, 0x1B, 0x1B, 0x3B, 0x23, 0x7C, 0x12, 0xF9, 0x0A, 0xD9, 0x1B, 0x5B, 0x23, 0xBD, 0x2C, 0x1E, 0x23, 0xDD, 0x23, 0xBD, 0x0B, 0x1A, 0x02, 0x99, 0x0A, 0xD9, 0x01, 0x1B, 0x3B, 0x01, 0x12, 0xFA, 0x01, 0x12, 0xDA, 0x01, 0x1B, 0x3B, 0x8C, 0x12, 0xFA, 0x1B, 0x1B, 0x12, 0xBA, 0x12, 0xDA, 0x1B, 0x1B, 0x23, 0x3B, 0x1A, 0xFA, 0x1A, 0xFB, 0x1B, 0x1B, 0x23, 0x1B, 0x1B, 0x1B, 0x23, 0x3C, 0x1B, 0x1B, 0x01, 0x1B, 0x3B, 0x84, 0x23, 0x3B, 0x1B, 0x3B, 0x23, 0x3B, 0x1B, 0x1B, 0x23, 0x5C, 0x01, 0x23, 0x3B, 0x88, 0x1B, 0x1B, 0x1B, 0x3B, 0x1B, 0x1B, 0x23, 0x3B, 0x23, 0x1B, 0x23, 0x5C, 0x23, 0x3B, 0x23, 0x5C, 0x1B, 0x3B, 0x01, 0x23, 0x3B, 0x82, 0x23, 0x5C, 0x1B, 0x1B, 0x23, 0x3B, + 0x01, 0x1B, 0x1B, 0x82, 0x1B, 0x3B, 0x23, 0x7C, 0x23, 0x5B, 0x01, 0x1B, 0x3B, 0x87, 0x23, 0x5B, 0x1B, 0x3B, 0x1B, 0x3A, 0x1B, 0x5B, 0x23, 0x9C, 0x1B, 0x3B, 0x1B, 0x5B, 0x12, 0xFA, 0x01, 0x1B, 0x5B, 0x88, 0x23, 0xBC, 0x2C, 0x3E, 0x23, 0xFD, 0x2B, 0xFD, 0x1B, 0x7B, 0x13, 0x1A, 0x0A, 0xF9, 0x0A, 0xD9, 0x12, 0xFA, 0x01, 0x23, 0x5C, 0x81, 0x12, 0xBA, 0x1A, 0xFB, 0x01, 0x23, 0x5C, 0x02, 0x1B, 0x1B, 0x81, 0x23, 0x3B, 0x1B, 0x3B, 0x03, 0x23, 0x3B, 0x85, 0x23, 0x5C, 0x23, 0x3B, 0x23, 0x5B, 0x23, 0x5C, 0x23, 0x7C, 0x23, 0x3B, 0x02, 0x23, 0x5C, 0x01, 0x23, 0x3B, 0x81, 0x23, 0x5B, 0x23, 0x5C, 0x02, 0x23, 0x3B, 0x02, 0x23, 0x5B, 0x01, 0x23, 0x5C, 0x83, 0x1B, 0x3B, 0x23, 0x5B, 0x23, 0x3B, 0x23, 0x5C, 0x02, 0x23, 0x3B, 0x83, 0x23, 0x5C, 0x1B, 0x3B, 0x23, 0x5C, 0x1B, 0x1B, 0x03, 0x1B, 0x3B, 0x90, 0x23, 0x5C, 0x23, 0x5B, 0x23, 0x5C, 0x1B, 0x3B, 0x1B, 0x5B, 0x13, 0x5B, 0x1B, 0x7B, 0x0A, 0xF9, 0x23, 0xBC, 0x3C, 0xDF, 0x1B, 0xBC, 0x13, 0x7B, 0x1B, 0x7B, 0x13, 0x3B, 0x1B, 0x3B, 0x12, 0xFA, 0x12, 0xDA, 0x01, 0x1B, 0x3B, 0x01, 0x23, 0x5C, 0x01, 0x1B, 0x1B, 0x82, 0x1B, 0x3B, 0x23, 0x5C, 0x1B, 0x3B, 0x01, 0x23, 0x5C, 0x81, 0x23, 0x7C, 0x23, 0x5C, 0x02, 0x23, 0x7C, 0x81, 0x23, 0x5C, 0x23, 0x7C, 0x01, 0x23, 0x5C, 0x81, 0x23, 0x7C, 0x23, 0x5C, 0x02, 0x23, 0x7C, 0x01, 0x2B, 0x7C, 0x07, 0x23, 0x7C, 0x82, 0x2B, 0x7C, 0x23, 0x5B, 0x23, 0x5C, 0x01, 0x23, 0x7C, 0x02, 0x23, 0x5C, 0x80, 0x2B, 0x7C, 0x01, 0x23, 0x7C, 0x85, 0x23, 0x5C, 0x23, 0x7C, 0x1B, + 0x3B, 0x23, 0x5C, 0x1B, 0x3B, 0x23, 0x5C, 0x01, 0x23, 0x7C, 0x81, 0x23, 0x9D, 0x1B, 0x7C, 0x01, 0x13, 0x3B, 0x8E, 0x02, 0xD9, 0x13, 0x5B, 0x3C, 0xBF, 0x13, 0x7B, 0x13, 0x3B, 0x23, 0xBD, 0x2B, 0xDD, 0x23, 0x9C, 0x1B, 0x5C, 0x23, 0x5C, 0x23, 0x7C, 0x2B, 0x9C, 0x23, 0x7C, 0x2B, 0x7C, 0x23, 0x3C, 0x02, 0x23, 0x5C, 0x80, 0x23, 0x3C, 0x01, 0x23, 0x5C, 0x82, 0x23, 0x7D, 0x23, 0x5C, 0x23, 0x7C, 0x06, 0x23, 0x5C, 0x82, 0x23, 0x7C, 0x23, 0x5C, 0x23, 0x7D, 0x02, 0x23, 0x5C, 0x80, 0x23, 0x7C, 0x02, 0x23, 0x5C, 0x81, 0x23, 0x7C, 0x23, 0x5C, 0x07, 0x23, 0x7C, 0x80, 0x23, 0x9D, 0x02, 0x23, 0x7C, 0x80, 0x2B, 0x9C, 0x03, 0x23, 0x7C, 0x89, 0x23, 0x5C, 0x23, 0x7C, 0x1B, 0x5B, 0x23, 0x7C, 0x23, 0x5B, 0x1B, 0x1A, 0x12, 0xF9, 0x12, 0xFA, 0x12, 0xD9, 0x0A, 0xD9, 0x01, 0x2C, 0x1D, 0x84, 0x0A, 0xD9, 0x13, 0x1B, 0x1B, 0x5C, 0x23, 0x5C, 0x1B, 0x3B, 0x01, 0x23, 0x5C, 0x01, 0x23, 0x7C, 0x80, 0x2B, 0x7C, 0x01, 0x23, 0x5C, 0x01, 0x23, 0x7C, 0x80, 0x23, 0x5C, 0x01, 0x23, 0x7C, 0x80, 0x2B, 0x7C, 0x01, 0x23, 0x7C, 0x81, 0x23, 0x7D, 0x2B, 0x7D, 0x02, 0x23, 0x7C, 0x80, 0x23, 0x7D, 0x01, 0x23, 0x7C, 0x01, 0x2B, 0x7C, 0x02, 0x23, 0x7C, 0x80, 0x2B, 0x7D, 0x06, 0x23, 0x7C, 0x85, 0x2B, 0x7C, 0x23, 0x5C, 0x23, 0x7C, 0x23, 0x5C, 0x23, 0x7C, 0x2B, 0x7C, 0x02, 0x23, 0x7C, 0x01, 0x2B, 0x7C, 0x8C, 0x2B, 0x9D, 0x2B, 0x7C, 0x23, 0x7C, 0x2B, 0x9C, 0x23, 0x5B, 0x23, 0x7C, 0x2B, 0x7C, 0x23, 0x7C, 0x23, 0x5B, 0x23, 0x7C, 0x1B, 0x5B, 0x23, 0x5B, 0x23, 0x5C, 0x01, 0x23, + 0x9C, 0x8E, 0x1B, 0x9C, 0x13, 0x7B, 0x34, 0x9F, 0x13, 0x3A, 0x13, 0x1A, 0x1B, 0x5B, 0x13, 0x3B, 0x1B, 0x5B, 0x23, 0x7C, 0x1B, 0x3B, 0x23, 0x7C, 0x1B, 0x3B, 0x23, 0x5C, 0x1B, 0x3C, 0x23, 0x3C, 0x02, 0x23, 0x5C, 0x81, 0x23, 0x7C, 0x23, 0x5C, 0x02, 0x23, 0x7C, 0x02, 0x23, 0x5C, 0x80, 0x23, 0x7C, 0x02, 0x23, 0x5C, 0x80, 0x23, 0x7C, 0x05, 0x23, 0x5C, 0x82, 0x23, 0x3B, 0x23, 0x5C, 0x23, 0x3B, 0x05, 0x23, 0x5C, 0x02, 0x23, 0x7C, 0x82, 0x23, 0x5C, 0x23, 0x7C, 0x23, 0x5C, 0x01, 0x23, 0x7C, 0x01, 0x23, 0x5C, 0x84, 0x2B, 0x9D, 0x1B, 0x3B, 0x23, 0x5C, 0x23, 0x7C, 0x23, 0x5B, 0x01, 0x23, 0x5C, 0x80, 0x1B, 0x1B, 0x01, 0x12, 0xFA, 0x86, 0x1B, 0x5B, 0x23, 0x9B, 0x2B, 0xFD, 0x13, 0x7B, 0x34, 0x3E, 0x1B, 0x9B, 0x13, 0x3A, 0x01, 0x1B, 0x7C, 0x85, 0x1B, 0x5B, 0x1B, 0x7C, 0x1B, 0x5C, 0x23, 0x7C, 0x23, 0x5C, 0x23, 0x7C, 0x01, 0x23, 0x5C, 0x02, 0x23, 0x3C, 0x80, 0x23, 0x5C, 0x03, 0x1B, 0x3B, 0x84, 0x1B, 0x5C, 0x23, 0x7C, 0x1B, 0x5B, 0x23, 0x5C, 0x1B, 0x1B, 0x01, 0x1B, 0x3B, 0x80, 0x1B, 0x3C, 0x02, 0x1B, 0x3B, 0x81, 0x23, 0x5C, 0x1B, 0x1B, 0x01, 0x1B, 0x3B, 0x04, 0x23, 0x5C, 0x83, 0x23, 0x5B, 0x23, 0x5C, 0x23, 0x3B, 0x23, 0x5C, 0x01, 0x2B, 0x5C, 0x8B, 0x33, 0x5C, 0x33, 0x7C, 0x33, 0x5B, 0x3B, 0x5C, 0x3B, 0x3B, 0x43, 0x1B, 0x4A, 0xFA, 0x5A, 0xFA, 0x6A, 0xFA, 0x7A, 0x98, 0x92, 0x97, 0x92, 0x15, 0x01, 0xA1, 0xF4, 0x82, 0xA9, 0xD4, 0xA9, 0xD3, 0xB1, 0xF4, 0x01, 0xA9, 0xD3, 0x82, 0xB1, 0xF4, 0xA9, 0xD3, 0xB1, 0xF4, 0x06, 0xA9, 0xD3, 0x91, 0xB1, + 0xD3, 0xA9, 0xD3, 0xA9, 0xB3, 0xB2, 0x14, 0xA9, 0xF3, 0xA1, 0xD3, 0xA1, 0xD4, 0xA2, 0x14, 0xA2, 0x35, 0x92, 0x15, 0x8A, 0x15, 0x82, 0x97, 0x5A, 0x36, 0x84, 0x7F, 0x3B, 0x1A, 0x22, 0xB9, 0x22, 0xFA, 0x23, 0x1B, 0x01, 0x23, 0x3B, 0x82, 0x23, 0x3C, 0x1B, 0x1B, 0x23, 0x3C, 0x01, 0x23, 0x5C, 0x88, 0x23, 0x3B, 0x23, 0x5B, 0x23, 0x5C, 0x23, 0x3B, 0x23, 0x1B, 0x23, 0x5C, 0x23, 0x1B, 0x23, 0x3C, 0x1B, 0x1B, 0x03, 0x23, 0x3B, 0x82, 0x23, 0x5B, 0x1B, 0x1B, 0x23, 0x3C, 0x01, 0x1B, 0x1B, 0x81, 0x1A, 0xFA, 0x1A, 0xFB, 0x01, 0x23, 0x3B, 0x82, 0x12, 0xBA, 0x12, 0xB9, 0x1B, 0x1B, 0x01, 0x23, 0x3B, 0x83, 0x1B, 0x3B, 0x12, 0xD9, 0x0A, 0xD9, 0x12, 0xFA, 0x01, 0x13, 0x3A, 0x89, 0x1B, 0x7B, 0x2C, 0x3E, 0x34, 0x5E, 0x23, 0xBC, 0x1B, 0x7B, 0x13, 0x1A, 0x1B, 0x3B, 0x1B, 0x5B, 0x1B, 0x3B, 0x1B, 0x5B, 0x01, 0x1B, 0x3B, 0x80, 0x23, 0x5B, 0x01, 0x23, 0x7C, 0x02, 0x23, 0x5B, 0x80, 0x23, 0x3B, 0x01, 0x1B, 0x1A, 0x8A, 0x1A, 0xFA, 0x23, 0x1B, 0x1A, 0xFA, 0x23, 0x1B, 0x1A, 0xFA, 0x23, 0x3B, 0x1B, 0x1B, 0x23, 0x3B, 0x1B, 0x1B, 0x23, 0x3B, 0x1B, 0x1A, 0x01, 0x1B, 0x1B, 0x80, 0x23, 0x1B, 0x01, 0x1B, 0x1B, 0x83, 0x23, 0x1B, 0x23, 0x3B, 0x1A, 0xFA, 0x1B, 0x1B, 0x04, 0x1A, 0xFA, 0x03, 0x23, 0x1B, 0x80, 0x2B, 0x3C, 0x03, 0x1A, 0xFA, 0x80, 0x1B, 0x1A, 0x01, 0x1B, 0x1B, 0x82, 0x23, 0x3B, 0x1A, 0xFA, 0x12, 0xDA, 0x01, 0x1A, 0xFA, 0x01, 0x1B, 0x3B, 0x92, 0x13, 0x1A, 0x0A, 0xF9, 0x1B, 0x7B, 0x23, 0xDC, 0x2C, 0x1D, 0x2C, 0x3E, 0x2C, 0x1D, 0x2B, 0xFD, 0x13, 0x3A, + 0x13, 0x1A, 0x12, 0xF9, 0x13, 0x1A, 0x1A, 0xFA, 0x1A, 0xDA, 0x12, 0xDA, 0x1A, 0xDA, 0x23, 0x1B, 0x23, 0x3B, 0x1B, 0x1B, 0x03, 0x23, 0x3B, 0x88, 0x23, 0x5B, 0x1B, 0x1B, 0x1B, 0x3B, 0x1A, 0xFA, 0x1B, 0x1B, 0x1A, 0xFA, 0x1B, 0x1B, 0x1A, 0xFA, 0x1B, 0x1B, 0x01, 0x1A, 0xFA, 0x84, 0x1B, 0x1B, 0x23, 0x5B, 0x1A, 0xFA, 0x1B, 0x1B, 0x1A, 0xFA, 0x01, 0x1B, 0x1B, 0x81, 0x23, 0x1B, 0x1A, 0xFA, 0x01, 0x23, 0x1B, 0x84, 0x23, 0x3B, 0x1B, 0x1B, 0x23, 0x1B, 0x1B, 0x1A, 0x23, 0x1B, 0x01, 0x23, 0x3B, 0x81, 0x1B, 0x1B, 0x23, 0x1B, 0x01, 0x1A, 0xFA, 0x82, 0x1A, 0xDA, 0x1A, 0xFA, 0x1A, 0xDA, 0x01, 0x1A, 0xFA, 0x88, 0x1B, 0x1A, 0x23, 0x3B, 0x23, 0x5B, 0x23, 0x3B, 0x23, 0x5B, 0x1B, 0x5A, 0x1B, 0x7B, 0x23, 0x9C, 0x23, 0xBC, 0x01, 0x23, 0xDC, 0x81, 0x23, 0xFD, 0x2C, 0x1D, 0x01, 0x34, 0x1D, 0x82, 0x23, 0x7B, 0x1B, 0x3A, 0x0A, 0x98, 0x01, 0x12, 0xD9, 0x80, 0x12, 0xDA, 0x01, 0x1A, 0xDA, 0x01, 0x1B, 0x1B, 0x01, 0x23, 0x3B, 0x83, 0x1B, 0x1B, 0x23, 0x1B, 0x1A, 0xFA, 0x1B, 0x1B, 0x03, 0x23, 0x1B, 0x86, 0x1A, 0xDA, 0x1A, 0xFA, 0x1A, 0xDA, 0x1A, 0xFA, 0x1B, 0x1B, 0x1B, 0x3B, 0x1A, 0xFA, 0x02, 0x1B, 0x1B, 0x01, 0x23, 0x1B, 0x87, 0x1A, 0xDA, 0x23, 0x1B, 0x1A, 0xB9, 0x1A, 0xDA, 0x1A, 0xB9, 0x1A, 0xDA, 0x1A, 0xFA, 0x23, 0x1A, 0x01, 0x1A, 0xB9, 0x82, 0x12, 0x99, 0x12, 0xB9, 0x12, 0x99, 0x01, 0x12, 0xB9, 0x80, 0x12, 0xD9, 0x01, 0x1A, 0xDA, 0x80, 0x1A, 0xD9, 0x01, 0x12, 0xB9, 0x83, 0x12, 0xD9, 0x12, 0xB9, 0x12, 0xD9, 0x1A, 0xF9, 0x01, 0x1B, 0x1A, 0x8A, 0x13, + 0x3A, 0x1B, 0x7B, 0x1B, 0x9B, 0x13, 0x9B, 0x13, 0x9A, 0x1B, 0xBB, 0x23, 0xDC, 0x23, 0xBC, 0x2B, 0xBC, 0x1B, 0x5A, 0x1B, 0x19, 0x05, 0x0A, 0x77, 0x81, 0x0A, 0x78, 0x0A, 0x77, 0x01, 0x0A, 0x98, 0x02, 0x12, 0xB8, 0x80, 0x12, 0x98, 0x01, 0x12, 0xB9, 0x85, 0x23, 0x1B, 0x1A, 0xDA, 0x1A, 0xFB, 0x23, 0x1B, 0x2B, 0x5C, 0x23, 0x3B, 0x01, 0x2B, 0x7C, 0x83, 0x33, 0x9D, 0x2B, 0x7C, 0x33, 0x9D, 0x33, 0x7C, 0x03, 0x33, 0x9D, 0x01, 0x2B, 0x7C, 0x80, 0x2B, 0x7D, 0x01, 0x2B, 0x7C, 0x82, 0x2B, 0x9C, 0x33, 0xBD, 0x33, 0x9D, 0x02, 0x33, 0xBD, 0x94, 0x33, 0x7C, 0x2B, 0x7C, 0x2B, 0x5C, 0x2B, 0x5B, 0x2B, 0x7C, 0x23, 0x7B, 0x23, 0x5B, 0x1B, 0x5A, 0x23, 0x5B, 0x23, 0x7B, 0x2B, 0x9C, 0x23, 0x9C, 0x2B, 0x9C, 0x23, 0x7B, 0x23, 0x5B, 0x2B, 0x7C, 0x33, 0xBD, 0x33, 0xFD, 0x33, 0xBD, 0x2B, 0x9C, 0x1B, 0x3B, 0x01, 0x12, 0xF9, 0x81, 0x13, 0x1A, 0x12, 0xFA, 0x01, 0x1B, 0x3A, 0x80, 0x13, 0x1A, 0x01, 0x1B, 0x3A, 0x02, 0x1B, 0x1A, 0x02, 0x23, 0x3B, 0x81, 0x23, 0x1A, 0x23, 0x1B, 0x03, 0x23, 0x3B, 0x85, 0x1B, 0x1A, 0x23, 0x5B, 0x23, 0x3B, 0x23, 0x5B, 0x23, 0x3B, 0x23, 0x5C, 0x02, 0x23, 0x5B, 0x84, 0x2B, 0x9C, 0x2B, 0x7C, 0x2B, 0x9D, 0x2B, 0x7C, 0x33, 0x7C, 0x01, 0x2B, 0x7C, 0x85, 0x2B, 0x5C, 0x2B, 0x7C, 0x2B, 0x5C, 0x33, 0x7C, 0x2B, 0x5C, 0x33, 0x7D, 0x01, 0x2B, 0x7C, 0x81, 0x2B, 0x9C, 0x33, 0xBD, 0x01, 0x2B, 0x7C, 0x80, 0x23, 0x5B, 0x01, 0x2B, 0x7C, 0x84, 0x23, 0x7C, 0x2B, 0x7C, 0x23, 0x5C, 0x2B, 0x7C, 0x23, 0x5B, 0x01, 0x2B, 0x7C, 0x88, 0x2B, 0x9C, 0x23, + 0x7C, 0x1B, 0x3A, 0x13, 0x1A, 0x2B, 0xBC, 0x34, 0x1D, 0x2B, 0xFD, 0x23, 0xBC, 0x1B, 0x9B, 0x01, 0x13, 0x3A, 0x81, 0x1B, 0x5B, 0x13, 0x3A, 0x01, 0x1B, 0x5B, 0x03, 0x1B, 0x3B, 0x83, 0x23, 0x5C, 0x23, 0x7C, 0x23, 0x5C, 0x1B, 0x1B, 0x01, 0x23, 0x7C, 0x80, 0x23, 0x5B, 0x01, 0x2B, 0x9C, 0x82, 0x2B, 0x7C, 0x2B, 0x9C, 0x23, 0x5C, 0x02, 0x2B, 0x7C, 0x87, 0x23, 0x5B, 0x2B, 0x7C, 0x2B, 0x5C, 0x2B, 0x7C, 0x2B, 0x5C, 0x2B, 0x7C, 0x2B, 0x5C, 0x2B, 0x9D, 0x01, 0x2B, 0x9C, 0x84, 0x2B, 0x9D, 0x33, 0x9D, 0x2B, 0x7C, 0x33, 0xBD, 0x2B, 0x7D, 0x02, 0x33, 0x9D, 0x88, 0x33, 0x7D, 0x33, 0x9D, 0x33, 0x7D, 0x33, 0x9D, 0x33, 0x7D, 0x2B, 0x7D, 0x2B, 0x7C, 0x33, 0x9D, 0x2B, 0x7C, 0x03, 0x23, 0x7C, 0x80, 0x23, 0x7B, 0x02, 0x23, 0x7C, 0x86, 0x1B, 0x5B, 0x1B, 0x3B, 0x23, 0x9C, 0x2B, 0xFE, 0x3C, 0x5F, 0x34, 0x1E, 0x1B, 0x7C, 0x01, 0x13, 0x1A, 0x04, 0x1B, 0x5B, 0x01, 0x23, 0x7C, 0x01, 0x23, 0x5C, 0x80, 0x33, 0xBD, 0x01, 0x2B, 0x7D, 0x80, 0x2B, 0x7C, 0x01, 0x2B, 0x7D, 0x82, 0x2B, 0x9D, 0x2B, 0x9C, 0x33, 0xBE, 0x01, 0x2B, 0x9D, 0x01, 0x2B, 0x7C, 0x91, 0x2B, 0x7D, 0x2B, 0x9D, 0x2B, 0x7C, 0x2B, 0x9D, 0x2B, 0x7D, 0x2B, 0x9D, 0x2B, 0x7C, 0x2B, 0x9D, 0x2B, 0x7C, 0x2B, 0x9D, 0x2B, 0x7C, 0x33, 0x9D, 0x2B, 0x7D, 0x33, 0x9D, 0x2B, 0x7D, 0x33, 0x9D, 0x2B, 0x7D, 0x33, 0x9D, 0x02, 0x2B, 0x9D, 0x81, 0x33, 0xDD, 0x2B, 0x9C, 0x02, 0x2B, 0xBD, 0x81, 0x23, 0x9C, 0x2B, 0x9D, 0x01, 0x2B, 0x9C, 0x01, 0x23, 0x7C, 0x01, 0x1B, 0x3B, 0x80, 0x1B, 0x5B, 0x01, 0x1B, 0x1B, 0x84, + 0x1B, 0x3B, 0x23, 0x9C, 0x23, 0xBC, 0x23, 0x7C, 0x1B, 0x5B, 0x01, 0x34, 0x1E, 0x80, 0x2B, 0xDD, 0x01, 0x23, 0x9C, 0x83, 0x1B, 0x5B, 0x1B, 0x3B, 0x23, 0x7C, 0x2B, 0xBD, 0x01, 0x23, 0x7C, 0x81, 0x2B, 0xBD, 0x23, 0x7C, 0x01, 0x2B, 0x9D, 0x82, 0x33, 0xDE, 0x2B, 0xBD, 0x33, 0xDE, 0x02, 0x33, 0xBE, 0x01, 0x33, 0x9D, 0x9D, 0x3B, 0xDE, 0x33, 0x9D, 0x33, 0xBE, 0x33, 0xBD, 0x33, 0xBE, 0x2B, 0x9D, 0x33, 0xBE, 0x2B, 0x9D, 0x2B, 0xBD, 0x2B, 0x9D, 0x33, 0xBD, 0x2B, 0x9D, 0x33, 0xBD, 0x2B, 0x9D, 0x33, 0xBD, 0x2B, 0x9D, 0x33, 0xBD, 0x2B, 0x9D, 0x33, 0xBD, 0x2B, 0x9D, 0x33, 0xBD, 0x2B, 0x9D, 0x33, 0xBE, 0x2B, 0xBD, 0x33, 0xBD, 0x2B, 0x9D, 0x33, 0xBD, 0x2B, 0x9D, 0x33, 0xDD, 0x2B, 0x9D, 0x01, 0x33, 0xBD, 0x8C, 0x2B, 0xBD, 0x2B, 0x9D, 0x2B, 0xBD, 0x2B, 0x9C, 0x23, 0x9C, 0x23, 0x7C, 0x23, 0x9C, 0x2B, 0xBC, 0x23, 0x9C, 0x23, 0x7C, 0x1B, 0x5B, 0x1B, 0x7B, 0x23, 0x9C, 0x01, 0x2C, 0x1E, 0x85, 0x2B, 0xFD, 0x1B, 0x9C, 0x1B, 0x7B, 0x23, 0x9C, 0x1B, 0x5B, 0x1B, 0x7B, 0x01, 0x1B, 0x3B, 0x81, 0x2B, 0x9D, 0x2B, 0xBD, 0x01, 0x2B, 0x7D, 0x01, 0x2B, 0x9D, 0x87, 0x2B, 0x7D, 0x33, 0xBD, 0x2B, 0x9D, 0x2B, 0xBD, 0x2B, 0x9D, 0x33, 0xBD, 0x2B, 0xBD, 0x33, 0xDE, 0x01, 0x33, 0xBD, 0x82, 0x2B, 0x9D, 0x33, 0xBD, 0x2B, 0x9D, 0x01, 0x33, 0xBD, 0x80, 0x33, 0xDE, 0x02, 0x33, 0xBD, 0x01, 0x33, 0xDE, 0x01, 0x33, 0xBD, 0x80, 0x33, 0xDE, 0x02, 0x33, 0xBD, 0x81, 0x33, 0xDE, 0x2B, 0xBD, 0x02, 0x33, 0xBD, 0x83, 0x2B, 0xBD, 0x33, 0xDE, 0x2B, 0xBD, 0x33, 0xDE, 0x02, 0x33, + 0xBD, 0x81, 0x33, 0xDE, 0x33, 0xBE, 0x02, 0x33, 0xDE, 0x01, 0x2B, 0xBD, 0x89, 0x23, 0x7C, 0x2B, 0x9C, 0x23, 0x7C, 0x23, 0x9C, 0x23, 0xBD, 0x23, 0xBC, 0x1B, 0x9C, 0x1B, 0x9B, 0x3C, 0x7F, 0x23, 0xDC, 0x01, 0x1B, 0x7B, 0x84, 0x13, 0x3B, 0x13, 0x1A, 0x13, 0x1B, 0x1B, 0x3B, 0x23, 0x7C, 0x01, 0x33, 0xDE, 0x82, 0x2B, 0x9D, 0x23, 0x7C, 0x2B, 0xBD, 0x02, 0x2B, 0x9D, 0x81, 0x2B, 0xBD, 0x2B, 0x9D, 0x02, 0x2B, 0xBD, 0x86, 0x2B, 0x9D, 0x2B, 0xBD, 0x2B, 0x9D, 0x2B, 0xBD, 0x2B, 0x9D, 0x33, 0xBD, 0x33, 0x9D, 0x01, 0x33, 0xBD, 0x80, 0x33, 0xDE, 0x04, 0x33, 0xBD, 0x82, 0x33, 0xDE, 0x33, 0xBD, 0x33, 0xBE, 0x01, 0x33, 0xDE, 0x87, 0x2B, 0xBD, 0x33, 0xDE, 0x33, 0xBD, 0x33, 0xDE, 0x33, 0xDD, 0x33, 0xDE, 0x33, 0xDD, 0x33, 0xDE, 0x01, 0x2B, 0xBD, 0x82, 0x33, 0xBD, 0x33, 0xDD, 0x2B, 0xBD, 0x01, 0x33, 0xBD, 0x83, 0x33, 0xDE, 0x2B, 0xBD, 0x33, 0xBD, 0x2B, 0x9D, 0x01, 0x2B, 0xBD, 0x01, 0x2B, 0xDD, 0x01, 0x23, 0xBD, 0x83, 0x1B, 0x9C, 0x44, 0xDF, 0x3C, 0xBF, 0x13, 0x5B, 0x02, 0x1B, 0x7C, 0x80, 0x1B, 0x5B, 0x01, 0x23, 0x7C, 0x80, 0x2B, 0x9C, 0x01, 0x2B, 0x9D, 0x84, 0x2B, 0x7C, 0x33, 0xBE, 0x33, 0x9E, 0x33, 0xBE, 0x33, 0x9D, 0x01, 0x33, 0xBE, 0x87, 0x33, 0xDE, 0x33, 0xBE, 0x33, 0xDE, 0x33, 0xBE, 0x33, 0xDE, 0x33, 0xBE, 0x33, 0xDE, 0x33, 0xBE, 0x02, 0x33, 0xDE, 0x01, 0x33, 0xBE, 0x01, 0x33, 0xDE, 0x81, 0x2B, 0xBD, 0x33, 0xDE, 0x01, 0x33, 0xBE, 0x84, 0x2B, 0xBD, 0x33, 0xDE, 0x33, 0xBE, 0x2B, 0xBD, 0x2B, 0x9D, 0x01, 0x2B, 0xBD, 0x82, 0x33, 0xDE, 0x2B, + 0xBD, 0x33, 0xDE, 0x01, 0x2B, 0xBD, 0x86, 0x2B, 0x9D, 0x2B, 0xBD, 0x2B, 0x9D, 0x2B, 0xBD, 0x2B, 0x9D, 0x2B, 0xBD, 0x23, 0x7C, 0x01, 0x2B, 0x9D, 0x01, 0x33, 0xDE, 0x01, 0x2B, 0xBD, 0x01, 0x33, 0xFE, 0x91, 0x33, 0xFD, 0x33, 0xDD, 0x2B, 0xBD, 0x1B, 0x3B, 0x34, 0x1E, 0x34, 0x5E, 0x1B, 0x3B, 0x23, 0x9D, 0x2B, 0x9D, 0x23, 0x9D, 0x2B, 0x9D, 0x2B, 0x7D, 0x2B, 0xBD, 0x2B, 0x9D, 0x2B, 0xBD, 0x2B, 0x9D, 0x33, 0xBD, 0x2B, 0x9D, 0x02, 0x2B, 0xBD, 0x80, 0x2B, 0x9D, 0x01, 0x2B, 0xBD, 0x81, 0x33, 0xDE, 0x33, 0xBE, 0x01, 0x2B, 0xBE, 0x85, 0x33, 0xBE, 0x2B, 0xBD, 0x2B, 0xBE, 0x2B, 0xBD, 0x33, 0xBE, 0x2B, 0x9D, 0x01, 0x33, 0xBD, 0x85, 0x33, 0xBE, 0x2B, 0x9D, 0x33, 0xDE, 0x33, 0xBE, 0x33, 0xDE, 0x2B, 0x9D, 0x02, 0x2B, 0xBD, 0x81, 0x2B, 0x9D, 0x2B, 0xBD, 0x01, 0x33, 0xBD, 0x80, 0x2B, 0xBD, 0x01, 0x33, 0xBD, 0x82, 0x33, 0xDE, 0x2B, 0x9D, 0x33, 0xBE, 0x01, 0x2B, 0xBD, 0x85, 0x2B, 0x9D, 0x33, 0xBD, 0x2B, 0x9D, 0x2B, 0xBD, 0x2B, 0x9C, 0x33, 0xBD, 0x02, 0x2B, 0x9D, 0x83, 0x2B, 0xBD, 0x2B, 0x9D, 0x2B, 0xBD, 0x23, 0x9D, 0x02, 0x23, 0x7C, 0x86, 0x1B, 0x7B, 0x13, 0x5B, 0x23, 0xFD, 0x34, 0x5F, 0x23, 0xDD, 0x1B, 0x9C, 0x23, 0x9C, 0x01, 0x23, 0x7C, 0x01, 0x2B, 0x9D, 0x80, 0x2B, 0xBD, 0x02, 0x2B, 0x9D, 0x81, 0x2B, 0xBE, 0x2B, 0x7D, 0x01, 0x2B, 0xBD, 0x80, 0x33, 0xBD, 0x01, 0x2B, 0xBD, 0x85, 0x2B, 0x9D, 0x33, 0xBE, 0x2B, 0x9D, 0x33, 0xBE, 0x33, 0xBD, 0x33, 0xDE, 0x02, 0x2B, 0xBD, 0x80, 0x33, 0xDE, 0x01, 0x33, 0xBE, 0x82, 0x33, 0xDE, 0x33, 0xBD, 0x2B, + 0xBD, 0x02, 0x33, 0xBD, 0x80, 0x2B, 0xBD, 0x02, 0x33, 0xBD, 0x80, 0x2B, 0xBD, 0x01, 0x33, 0xBD, 0x86, 0x2B, 0xBD, 0x2B, 0x9D, 0x33, 0xBD, 0x2B, 0x9D, 0x33, 0xBD, 0x2B, 0xBD, 0x33, 0xDE, 0x01, 0x2B, 0xBD, 0x81, 0x2B, 0x7D, 0x2B, 0x9D, 0x01, 0x23, 0x5C, 0x83, 0x23, 0x3C, 0x23, 0x7D, 0x23, 0x5C, 0x23, 0x7C, 0x01, 0x23, 0x5C, 0x80, 0x23, 0x9C, 0x01, 0x1B, 0x5B, 0x01, 0x13, 0x3A, 0x80, 0x2B, 0xDD, 0x01, 0x23, 0xBC, 0x84, 0x13, 0x3A, 0x0B, 0x1A, 0x13, 0x1A, 0x1B, 0x3B, 0x1B, 0x5B, 0x01, 0x23, 0x5C, 0x86, 0x2B, 0x7C, 0x2B, 0x7D, 0x2B, 0x9D, 0x2B, 0x7D, 0x2B, 0x9D, 0x2B, 0x7D, 0x2B, 0xBD, 0x02, 0x2B, 0x9D, 0x01, 0x2B, 0xBD, 0x89, 0x2B, 0x9D, 0x23, 0x7C, 0x2B, 0x9D, 0x2B, 0x7D, 0x2B, 0xBD, 0x2B, 0x9D, 0x2B, 0xBD, 0x2B, 0x9D, 0x2B, 0xBD, 0x2B, 0x9D, 0x02, 0x2B, 0xBD, 0x81, 0x2B, 0x9D, 0x2B, 0xBD, 0x02, 0x2B, 0x9D, 0x01, 0x33, 0xBD, 0x01, 0x3B, 0xDE, 0x81, 0x33, 0xBD, 0x33, 0x9D, 0x01, 0x3B, 0x9D, 0x8C, 0x3B, 0xBD, 0x43, 0xBD, 0x43, 0x9C, 0x4B, 0x7C, 0x53, 0x7C, 0x5B, 0x5C, 0x6B, 0x3B, 0x72, 0xB8, 0x8A, 0x98, 0x92, 0x56, 0x9A, 0x15, 0xA2, 0x15, 0xA9, 0xF4, 0x03, 0xA9, 0xD3, 0x01, 0xB1, 0xF3, 0x8D, 0xA9, 0xD3, 0xB1, 0xF3, 0xA9, 0xD3, 0xB1, 0xF3, 0xA9, 0xD3, 0xB1, 0xF3, 0xA9, 0xD3, 0xB1, 0xF4, 0xB1, 0xF3, 0xA9, 0xD3, 0xB1, 0xF4, 0xA9, 0xF4, 0xA9, 0xF3, 0xA1, 0xD3, 0x01, 0xA1, 0xF4, 0x8C, 0xA2, 0x35, 0x9A, 0x35, 0x8A, 0x35, 0x8A, 0xD8, 0x62, 0x56, 0x52, 0xD9, 0x3A, 0xD9, 0x2A, 0xFA, 0x2B, 0x1B, 0x23, 0x1B, 0x1B, 0x1B, 0x23, 0x3C, + 0x1B, 0x1B, 0x01, 0x23, 0x3C, 0x8A, 0x2B, 0x7C, 0x23, 0x5C, 0x2B, 0x7C, 0x23, 0x5C, 0x2B, 0x7D, 0x2B, 0x9D, 0x33, 0x9D, 0x2B, 0x7C, 0x33, 0xBD, 0x2B, 0x7D, 0x33, 0xBD, 0x02, 0x2B, 0x9D, 0x86, 0x33, 0xDD, 0x2B, 0x9D, 0x33, 0xBD, 0x2B, 0x9D, 0x33, 0x9D, 0x33, 0xBD, 0x33, 0xDE, 0x01, 0x33, 0xBD, 0x80, 0x2B, 0x7D, 0x02, 0x33, 0xBD, 0x84, 0x2B, 0x9D, 0x2B, 0x7D, 0x23, 0x3B, 0x23, 0x7C, 0x23, 0x5C, 0x01, 0x1B, 0x3B, 0x01, 0x1B, 0x5B, 0x01, 0x1B, 0x7B, 0x80, 0x23, 0xBC, 0x01, 0x34, 0x1E, 0x8A, 0x2B, 0xDD, 0x1B, 0x5B, 0x1B, 0x3B, 0x13, 0x1A, 0x12, 0xDA, 0x13, 0x1A, 0x1B, 0x3B, 0x23, 0x7B, 0x23, 0x5B, 0x2B, 0xBD, 0x23, 0x7C, 0x01, 0x23, 0x5B, 0x8A, 0x2B, 0x9C, 0x2B, 0x7C, 0x2B, 0x9D, 0x2B, 0x5C, 0x33, 0x9D, 0x2B, 0x7C, 0x2B, 0x9D, 0x2B, 0x7C, 0x2B, 0x9D, 0x2B, 0x7C, 0x2B, 0x9D, 0x01, 0x2B, 0x7C, 0x82, 0x23, 0x5C, 0x2B, 0x9D, 0x2B, 0x7C, 0x02, 0x2B, 0x9D, 0x8D, 0x2B, 0x7C, 0x2B, 0x9D, 0x2B, 0x7C, 0x2B, 0x7D, 0x33, 0x9D, 0x33, 0xBD, 0x33, 0x9D, 0x33, 0xBD, 0x33, 0x7D, 0x33, 0xBD, 0x33, 0x7C, 0x33, 0xBD, 0x2B, 0x5C, 0x33, 0x9D, 0x01, 0x2B, 0x5C, 0x01, 0x2B, 0x7C, 0x94, 0x23, 0x5B, 0x2B, 0x7C, 0x23, 0x5B, 0x2B, 0x9D, 0x2B, 0x9C, 0x2B, 0x9D, 0x2B, 0x7C, 0x23, 0x3B, 0x1B, 0x3B, 0x23, 0x5B, 0x1B, 0x3B, 0x1B, 0x3A, 0x1B, 0x5A, 0x1B, 0x7B, 0x13, 0x5A, 0x23, 0x9B, 0x2B, 0xDC, 0x34, 0x5E, 0x44, 0x9F, 0x2B, 0xDD, 0x23, 0x7C, 0x03, 0x1B, 0x3B, 0x02, 0x23, 0x3B, 0x8D, 0x1A, 0xFA, 0x1B, 0x1B, 0x23, 0x3B, 0x23, 0x5C, 0x23, 0x3B, 0x2B, 0x9C, + 0x23, 0x5C, 0x2B, 0x9C, 0x2B, 0x7C, 0x2B, 0x7D, 0x2B, 0x5C, 0x2B, 0x7C, 0x23, 0x5C, 0x2B, 0x7C, 0x02, 0x23, 0x3B, 0x81, 0x2B, 0x7C, 0x23, 0x5C, 0x02, 0x2B, 0x9D, 0x81, 0x2B, 0x7C, 0x2B, 0x9C, 0x01, 0x2B, 0x5C, 0x83, 0x23, 0x3B, 0x2B, 0x5C, 0x2B, 0x7C, 0x33, 0x9D, 0x01, 0x2B, 0x7C, 0x80, 0x23, 0x3B, 0x01, 0x2B, 0x5C, 0x03, 0x2B, 0x7C, 0x84, 0x33, 0x9D, 0x2B, 0x7C, 0x2B, 0x9C, 0x2B, 0x5C, 0x23, 0x5C, 0x01, 0x23, 0x3B, 0x83, 0x1B, 0x3B, 0x1B, 0x5A, 0x1B, 0x3A, 0x13, 0x1A, 0x01, 0x0A, 0xF9, 0x89, 0x13, 0x19, 0x13, 0x3A, 0x13, 0x1A, 0x23, 0x7B, 0x23, 0x9B, 0x2B, 0xBC, 0x3C, 0x1E, 0x44, 0x5F, 0x33, 0xFE, 0x23, 0x7B, 0x01, 0x23, 0x7C, 0x01, 0x1B, 0x3B, 0x02, 0x1A, 0xFA, 0x01, 0x1B, 0x1A, 0x96, 0x1B, 0x1B, 0x23, 0x5B, 0x2B, 0x7C, 0x23, 0x3B, 0x2B, 0x5C, 0x23, 0x3B, 0x2B, 0x7C, 0x2B, 0x5C, 0x2B, 0x7C, 0x23, 0x5C, 0x2B, 0x7C, 0x23, 0x5B, 0x2B, 0x7C, 0x23, 0x5B, 0x23, 0x5C, 0x23, 0x5B, 0x2B, 0x7C, 0x2B, 0x5C, 0x33, 0x9C, 0x2B, 0x7C, 0x33, 0x9C, 0x33, 0x7C, 0x33, 0x9D, 0x01, 0x33, 0x9C, 0x82, 0x2B, 0x7C, 0x33, 0xBD, 0x33, 0x7C, 0x01, 0x33, 0x9C, 0x8B, 0x33, 0x7C, 0x2B, 0x7C, 0x33, 0x9C, 0x2B, 0x7C, 0x33, 0x9C, 0x2B, 0x7C, 0x33, 0x9C, 0x2B, 0x7C, 0x33, 0x9C, 0x2B, 0x7C, 0x2B, 0x5B, 0x23, 0x3B, 0x02, 0x1B, 0x1A, 0x91, 0x13, 0x1A, 0x13, 0x19, 0x13, 0x3A, 0x13, 0x19, 0x13, 0x39, 0x13, 0x3A, 0x13, 0x19, 0x1B, 0x5A, 0x2B, 0xBC, 0x2B, 0xDC, 0x33, 0xFD, 0x3C, 0x1D, 0x4C, 0x9F, 0x54, 0xDF, 0x4C, 0x9F, 0x44, 0x5E, 0x33, 0xDC, 0x33, 0xBC, + 0x01, 0x23, 0x7B, 0x87, 0x2B, 0x9B, 0x33, 0xBC, 0x2B, 0x7B, 0x2B, 0x9C, 0x2B, 0x7B, 0x2B, 0x5B, 0x2B, 0x3B, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x03, 0x01, 0xD6, 0x82, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0xF6, 0x02, 0x01, 0xD6, 0x80, 0x01, 0xF7, 0x02, 0x01, 0xB6, 0x03, 0x01, 0xD6, 0x82, 0x01, 0xF6, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0x01, 0xB5, 0x01, 0x01, 0xD5, 0x02, 0x02, 0x16, 0x02, 0x02, 0x36, 0x87, 0x0A, 0xB8, 0x12, 0xF9, 0x23, 0x5B, 0x33, 0xDD, 0x33, 0x9C, 0x1A, 0xDA, 0x0A, 0x37, 0x01, 0xF6, 0x01, 0x01, 0xD6, 0x03, 0x01, 0xF6, 0x81, 0x01, 0xD6, 0x01, 0xF6, 0x01, 0x01, 0xD6, 0x01, 0x01, 0xF6, 0x01, 0x01, 0xF7, 0x8D, 0x01, 0xD6, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0xF7, 0x02, 0x17, 0x01, 0xF7, 0x01, 0xD6, 0x01, 0xD7, 0x01, 0xD6, 0x01, 0xF7, 0x01, 0xF6, 0x01, 0xF7, 0x01, 0xF6, 0x01, 0xF7, 0x04, 0x01, 0xD6, 0x80, 0x01, 0xF7, 0x01, 0x01, 0xD6, 0x85, 0x01, 0xF6, 0x01, 0xF7, 0x01, 0xD6, 0x01, 0xF7, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0x01, 0xF6, 0x80, 0x01, 0xB6, 0x02, 0x01, 0xD6, 0x81, 0x01, 0xF6, 0x02, 0x17, 0x01, 0x01, 0xF6, 0x81, 0x02, 0x17, 0x02, 0x16, 0x01, 0x01, 0xF6, 0x80, 0x01, 0xD6, 0x01, 0x01, 0xF6, 0x8A, 0x02, 0x16, 0x02, 0x17, 0x02, 0x57, 0x0A, 0xB8, 0x1B, 0x5B, 0x2B, 0xBD, 0x2B, 0x9C, 0x0A, 0x98, 0x02, 0x16, 0x02, 0x37, 0x02, 0x17, 0x02, 0x01, 0xF6, 0x80, 0x02, 0x17, 0x04, 0x01, 0xD6, 0x86, 0x01, 0xD7, 0x02, 0x17, 0x01, 0xF7, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0xF7, 0x01, 0xD6, 0x01, + 0x01, 0xF7, 0x03, 0x01, 0xD6, 0x03, 0x02, 0x17, 0x82, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xD6, 0x03, 0x01, 0xF7, 0x01, 0x01, 0xF6, 0x04, 0x01, 0xF7, 0x81, 0x01, 0xD6, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x02, 0x01, 0xF7, 0x81, 0x01, 0xF6, 0x01, 0xF7, 0x01, 0x01, 0xF6, 0x03, 0x02, 0x37, 0x89, 0x02, 0x57, 0x12, 0xFA, 0x1B, 0x5B, 0x1B, 0x1A, 0x12, 0xFA, 0x0A, 0x98, 0x02, 0x37, 0x01, 0xF7, 0x02, 0x37, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x01, 0x01, 0xD6, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xD6, 0x01, 0x01, 0xF7, 0x84, 0x0A, 0x18, 0x02, 0x17, 0x02, 0x18, 0x01, 0xD6, 0x01, 0xD7, 0x01, 0x01, 0xD6, 0x83, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x85, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xD6, 0x01, 0xF7, 0x01, 0xD7, 0x03, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x03, 0x01, 0xF7, 0x82, 0x01, 0xD7, 0x01, 0xF7, 0x02, 0x17, 0x02, 0x01, 0xF7, 0x82, 0x02, 0x17, 0x01, 0xF7, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x04, 0x02, 0x17, 0x80, 0x01, 0xF6, 0x01, 0x02, 0x17, 0x80, 0x02, 0x37, 0x01, 0x02, 0x78, 0x86, 0x12, 0xDA, 0x23, 0x7C, 0x13, 0x1A, 0x0A, 0xB9, 0x0A, 0x98, 0x02, 0x78, 0x02, 0x17, 0x01, 0x01, 0xD6, 0x01, 0x02, 0x17, 0x81, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0x01, 0xF7, 0x83, 0x02, 0x18, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xD6, 0x03, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x04, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x04, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x04, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x02, + 0x01, 0xF7, 0x80, 0x02, 0x17, 0x02, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x01, 0x02, 0x37, 0x8A, 0x02, 0x16, 0x02, 0x17, 0x02, 0x57, 0x02, 0x98, 0x23, 0x7C, 0x23, 0x9C, 0x1B, 0x3B, 0x0A, 0xB9, 0x02, 0x37, 0x02, 0x17, 0x01, 0xF7, 0x04, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x80, 0x02, 0x18, 0x02, 0x01, 0xD7, 0x80, 0x01, 0xF8, 0x02, 0x01, 0xF7, 0x81, 0x02, 0x18, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x02, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x03, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x0A, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x0E, 0x01, 0xF7, 0x8A, 0x02, 0x17, 0x01, 0xF7, 0x02, 0x17, 0x02, 0x57, 0x02, 0x98, 0x34, 0x3E, 0x02, 0xB8, 0x02, 0x78, 0x02, 0x37, 0x02, 0x17, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x80, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x83, 0x02, 0x17, 0x01, 0xD7, 0x01, 0xF7, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x82, 0x02, 0x18, 0x01, 0xF7, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x16, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x02, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x06, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x03, 0x01, 0xF7, 0x89, 0x02, 0x37, 0x02, 0x98, 0x2B, 0xFE, 0x13, 0x3B, 0x02, 0x37, 0x02, 0x38, 0x02, 0x17, 0x02, 0x37, 0x02, 0x38, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x81, 0x02, 0x18, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x02, 0x01, 0xF8, 0x80, 0x01, 0xF7, 0x02, 0x01, 0xF8, 0x06, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x0D, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x81, + 0x01, 0xF7, 0x02, 0x17, 0x07, 0x01, 0xF7, 0x01, 0x02, 0x18, 0x02, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x84, 0x01, 0xF7, 0x01, 0xD6, 0x12, 0xFA, 0x1B, 0x3B, 0x02, 0x78, 0x02, 0x02, 0x17, 0x80, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x03, 0x02, 0x18, 0x05, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x04, 0x01, 0xF7, 0x80, 0x01, 0xF8, 0x19, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x07, 0x01, 0xF7, 0x08, 0x02, 0x17, 0x85, 0x02, 0x57, 0x02, 0x98, 0x2B, 0xFE, 0x02, 0xB9, 0x02, 0x99, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x85, 0x02, 0x17, 0x02, 0x18, 0x02, 0x38, 0x02, 0x18, 0x01, 0xF7, 0x02, 0x18, 0x0E, 0x01, 0xF7, 0x80, 0x01, 0xD7, 0x07, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x0D, 0x01, 0xF7, 0x82, 0x01, 0xF8, 0x01, 0xF7, 0x02, 0x18, 0x01, 0x01, 0xF8, 0x02, 0x01, 0xF7, 0x80, 0x02, 0x18, 0x01, 0x01, 0xF7, 0x81, 0x02, 0x37, 0x02, 0x17, 0x01, 0x01, 0xF6, 0x84, 0x02, 0x37, 0x02, 0x57, 0x02, 0x98, 0x3C, 0x5F, 0x1B, 0x7C, 0x01, 0x02, 0x78, 0x80, 0x02, 0x58, 0x02, 0x02, 0x17, 0x80, 0x02, 0x18, 0x01, 0x02, 0x17, 0x81, 0x01, 0xF7, 0x02, 0x18, 0x0A, 0x01, 0xF7, 0x81, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0x02, 0x17, 0x03, 0x01, 0xF7, 0x02, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x01, 0x02, 0x18, 0x82, 0x0A, 0x18, 0x02, 0x18, 0x0A, 0x38, 0x01, 0x0A, 0x18, 0x91, 0x0A, 0x17, 0x09, 0xF7, 0x0A, 0x18, 0x12, 0x38, 0x12, 0x37, 0x1A, 0x58, 0x22, 0x58, 0x22, 0x38, 0x2A, 0x17, 0x31, 0xB6, 0x41, 0x94, 0x72, 0x57, 0x92, 0x97, 0x9A, 0x35, 0x99, 0xF4, 0xA1, 0xD4, 0xA9, 0xF4, 0xA1, 0xB3, 0x01, 0xB1, + 0xF4, 0x81, 0xA9, 0xD3, 0xA9, 0xB3, 0x01, 0xA9, 0xD3, 0x02, 0xB1, 0xD3, 0x80, 0xB1, 0xF3, 0x01, 0xB1, 0xD3, 0x82, 0xA9, 0xB2, 0xB1, 0xF3, 0xA9, 0xB3, 0x03, 0xA9, 0xF3, 0x91, 0xAA, 0x14, 0xA2, 0x35, 0x9A, 0x14, 0x8A, 0x15, 0x92, 0xB8, 0x51, 0x94, 0x31, 0x95, 0x19, 0x95, 0x11, 0xD6, 0x09, 0xF7, 0x0A, 0x17, 0x02, 0x38, 0x0A, 0x38, 0x02, 0x38, 0x01, 0xF7, 0x02, 0x18, 0x01, 0xF7, 0x02, 0x18, 0x02, 0x01, 0xF7, 0x82, 0x01, 0xD7, 0x01, 0xF7, 0x02, 0x17, 0x03, 0x01, 0xF7, 0x80, 0x01, 0xD6, 0x01, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x02, 0x01, 0xD6, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x01, 0x01, 0xD6, 0x81, 0x01, 0xF7, 0x01, 0xD7, 0x02, 0x01, 0xD6, 0x01, 0x01, 0xF7, 0x80, 0x02, 0x17, 0x01, 0x01, 0xF6, 0x01, 0x02, 0x16, 0x02, 0x01, 0xF6, 0x86, 0x02, 0x37, 0x1B, 0x3A, 0x2B, 0xBC, 0x23, 0x7B, 0x12, 0xD9, 0x0A, 0xB9, 0x02, 0x37, 0x03, 0x01, 0xF6, 0x01, 0x02, 0x37, 0x01, 0x01, 0xD6, 0x01, 0x02, 0x17, 0x03, 0x01, 0xF7, 0x83, 0x01, 0xD6, 0x01, 0xF7, 0x01, 0xD6, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x81, 0x01, 0xD6, 0x01, 0xF7, 0x02, 0x01, 0xD6, 0x02, 0x01, 0xD7, 0x85, 0x01, 0xD6, 0x01, 0xD7, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0xF7, 0x01, 0xF6, 0x01, 0x01, 0xD6, 0x81, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x01, 0x01, 0xF7, 0x80, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x83, 0x01, 0xF7, 0x02, 0x17, 0x01, 0xF7, 0x01, 0xF6, 0x02, 0x01, 0xD6, 0x02, 0x01, 0xF6, 0x02, 0x02, 0x16, 0x01, 0x01, 0xF5, 0x8A, 0x02, 0x36, 0x12, 0xF9, 0x34, 0x1E, 0x23, + 0x9C, 0x12, 0xFA, 0x02, 0x78, 0x02, 0x57, 0x02, 0x17, 0x01, 0xF6, 0x02, 0x17, 0x01, 0xF7, 0x02, 0x01, 0xF6, 0x85, 0x01, 0xF7, 0x02, 0x17, 0x01, 0xF6, 0x01, 0xF7, 0x01, 0xF6, 0x01, 0xF7, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x02, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x03, 0x01, 0xD6, 0x80, 0x01, 0xF6, 0x03, 0x01, 0xD6, 0x80, 0x01, 0x95, 0x02, 0x01, 0xB6, 0x84, 0x01, 0xD6, 0x01, 0xF7, 0x01, 0xB5, 0x01, 0x95, 0x01, 0x96, 0x02, 0x01, 0xB6, 0x86, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0xF6, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x02, 0x01, 0xF6, 0x01, 0x01, 0xF5, 0x01, 0x01, 0xD5, 0x82, 0x01, 0xF6, 0x02, 0x17, 0x01, 0xF6, 0x01, 0x01, 0xD6, 0x85, 0x01, 0xF6, 0x0A, 0x98, 0x23, 0x3B, 0x33, 0xFD, 0x23, 0x5B, 0x02, 0x57, 0x01, 0x02, 0x17, 0x85, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0xF6, 0x01, 0xF7, 0x01, 0xD6, 0x02, 0x17, 0x01, 0x01, 0xF7, 0x81, 0x01, 0xF6, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xF6, 0x02, 0x01, 0xD6, 0x83, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0xB5, 0x01, 0x01, 0xB6, 0x01, 0x01, 0xB5, 0x80, 0x01, 0xB6, 0x01, 0x01, 0xB5, 0x01, 0x01, 0xB6, 0x83, 0x01, 0xB5, 0x01, 0xD5, 0x01, 0xD6, 0x01, 0xB5, 0x03, 0x01, 0xD6, 0x82, 0x01, 0xB5, 0x01, 0xD6, 0x01, 0xB5, 0x01, 0x01, 0xD5, 0x80, 0x01, 0xB5, 0x02, 0x01, 0xD6, 0x01, 0x01, 0xD5, 0x03, 0x01, 0xF5, 0x80, 0x02, 0x16, 0x03, 0x01, 0xF5, 0x01, 0x01, 0xD5, 0x80, 0x01, 0xF6, 0x01, 0x0A, 0x57, 0x80, 0x12, 0x98, 0x01, 0x2B, 0x7B, 0x82, 0x23, 0x5A, 0x12, 0xD8, 0x02, + 0x36, 0x01, 0x02, 0x16, 0x01, 0x01, 0xF5, 0x02, 0x01, 0xD5, 0x01, 0x01, 0xB5, 0x80, 0x01, 0xB6, 0x01, 0x01, 0x95, 0x80, 0x01, 0xB6, 0x06, 0x01, 0x95, 0x82, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x0A, 0x01, 0x95, 0x01, 0x01, 0xB5, 0x8B, 0x01, 0xD5, 0x01, 0xF5, 0x02, 0x16, 0x02, 0x36, 0x02, 0x57, 0x12, 0xD9, 0x23, 0x7B, 0x3B, 0xFD, 0x2B, 0x9C, 0x1A, 0xD9, 0x0A, 0x57, 0x01, 0xD5, 0x01, 0x01, 0xB5, 0x04, 0x01, 0x95, 0x80, 0x01, 0xB6, 0x02, 0x01, 0xB5, 0x83, 0x01, 0xB6, 0x01, 0x96, 0x01, 0x95, 0x01, 0x96, 0x01, 0x01, 0x95, 0x01, 0x01, 0xB6, 0x80, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x03, 0x01, 0x96, 0x08, 0x01, 0xB6, 0x81, 0x01, 0x96, 0x01, 0x95, 0x01, 0x01, 0xB6, 0x01, 0x01, 0x95, 0x01, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x01, 0x01, 0x95, 0x82, 0x01, 0xB6, 0x01, 0x95, 0x01, 0xB5, 0x01, 0x01, 0xB6, 0x80, 0x01, 0xB5, 0x01, 0x01, 0xD5, 0x80, 0x01, 0xB5, 0x03, 0x01, 0xD5, 0x01, 0x01, 0xF6, 0x86, 0x0A, 0x78, 0x23, 0x5B, 0x33, 0xDD, 0x33, 0xBD, 0x23, 0x3A, 0x0A, 0x78, 0x01, 0xF6, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xD5, 0x01, 0x01, 0xB5, 0x81, 0x01, 0x95, 0x01, 0xB6, 0x01, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x02, 0x01, 0x96, 0x80, 0x01, 0xB6, 0x02, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x04, 0x01, 0x96, 0x81, 0x01, 0xB6, 0x01, 0xD6, 0x02, 0x01, 0xB6, 0x80, 0x01, 0xD6, 0x03, 0x01, 0xB6, 0x80, 0x01, 0xD6, 0x05, 0x01, 0xB6, 0x80, 0x01, 0xD6, 0x07, 0x01, 0xB6, 0x80, 0x01, 0x96, 0x04, 0x01, 0xB6, 0x81, 0x01, 0xB5, 0x01, 0xD6, + 0x01, 0x01, 0xF6, 0x01, 0x02, 0x16, 0x86, 0x0A, 0x98, 0x3C, 0x1E, 0x33, 0xDD, 0x1B, 0x1A, 0x0A, 0x98, 0x02, 0x16, 0x01, 0xF6, 0x03, 0x01, 0xD6, 0x01, 0x01, 0xB6, 0x80, 0x01, 0x96, 0x03, 0x01, 0xB6, 0x80, 0x01, 0x96, 0x02, 0x01, 0xB6, 0x80, 0x01, 0x96, 0x06, 0x01, 0xB6, 0x01, 0x01, 0x96, 0x0B, 0x01, 0xB6, 0x80, 0x01, 0xD6, 0x03, 0x01, 0xB6, 0x01, 0x01, 0xD7, 0x05, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x82, 0x01, 0xD7, 0x01, 0xB6, 0x01, 0xD7, 0x03, 0x01, 0xD6, 0x8F, 0x01, 0xF6, 0x01, 0xF7, 0x02, 0x17, 0x02, 0x37, 0x12, 0xDA, 0x33, 0xDE, 0x2B, 0xBD, 0x0A, 0x99, 0x02, 0x37, 0x02, 0x16, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0xB5, 0x01, 0xB6, 0x01, 0xD6, 0x05, 0x01, 0xB6, 0x80, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x80, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x80, 0x01, 0x96, 0x06, 0x01, 0xB6, 0x80, 0x01, 0xD6, 0x07, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x04, 0x01, 0xB6, 0x03, 0x01, 0xB7, 0x01, 0x01, 0xB6, 0x86, 0x01, 0xD7, 0x01, 0xB6, 0x01, 0xD7, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0xF7, 0x01, 0x01, 0xD6, 0x81, 0x01, 0xF6, 0x01, 0xD6, 0x03, 0x01, 0xF6, 0x86, 0x02, 0x57, 0x3C, 0x1E, 0x2B, 0xBD, 0x0A, 0x98, 0x02, 0x37, 0x02, 0x17, 0x01, 0xF6, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x02, 0x01, 0xD6, 0x01, 0x01, 0xB6, 0x01, 0x01, 0xD7, 0x03, 0x01, 0xB7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x02, 0x01, 0xD7, 0x80, 0x01, 0xB6, 0x01, 0x01, 0xD7, 0x84, 0x01, 0xB7, 0x01, 0xD7, 0x01, 0xB7, 0x01, 0xD7, 0x01, 0xB7, 0x02, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x81, + 0x01, 0xB6, 0x01, 0xD7, 0x03, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x81, 0x01, 0xB6, 0x01, 0xD7, 0x01, 0x01, 0xD6, 0x80, 0x01, 0xB6, 0x04, 0x01, 0xD7, 0x80, 0x01, 0xB6, 0x05, 0x01, 0xD7, 0x81, 0x01, 0xD6, 0x01, 0xD7, 0x01, 0x01, 0xF7, 0x85, 0x02, 0x17, 0x02, 0x57, 0x3C, 0x3E, 0x1B, 0x3B, 0x02, 0x37, 0x02, 0x17, 0x01, 0x01, 0xD6, 0x02, 0x01, 0xB6, 0x82, 0x01, 0xB7, 0x01, 0xB6, 0x01, 0xD7, 0x02, 0x01, 0xB7, 0x81, 0x01, 0xD7, 0x01, 0xB6, 0x0E, 0x01, 0xB7, 0x80, 0x01, 0xB6, 0x08, 0x01, 0xB7, 0x80, 0x01, 0xB6, 0x01, 0x01, 0xB7, 0x01, 0x01, 0xB6, 0x80, 0x01, 0xD7, 0x02, 0x01, 0xB7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x85, 0x01, 0xB6, 0x01, 0xB7, 0x01, 0xB6, 0x01, 0xB7, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0x01, 0xD7, 0x80, 0x01, 0xB6, 0x02, 0x01, 0xD7, 0x86, 0x01, 0xD6, 0x01, 0xF7, 0x02, 0x17, 0x12, 0xFA, 0x2B, 0xBD, 0x02, 0x38, 0x01, 0xF7, 0x01, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x03, 0x01, 0xD7, 0x81, 0x01, 0xB7, 0x01, 0xD7, 0x03, 0x01, 0xB7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x80, 0x01, 0xD7, 0x04, 0x01, 0xB7, 0x80, 0x01, 0xD7, 0x0A, 0x01, 0xB7, 0x80, 0x01, 0xD7, 0x06, 0x01, 0xB7, 0x82, 0x01, 0xB6, 0x01, 0xB7, 0x01, 0xB6, 0x01, 0x01, 0xB7, 0x02, 0x01, 0xD7, 0x82, 0x01, 0xB6, 0x01, 0xB7, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x01, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x83, 0x01, 0xD7, 0x01, 0xB7, 0x01, 0xD7, 0x01, 0xB6, 0x02, 0x01, 0xD6, 0x83, 0x1B, 0x1A, 0x1B, 0x3B, 0x01, 0xF6, 0x01, 0xF7, 0x04, 0x01, 0xD7, 0x80, 0x01, 0xB7, 0x06, 0x01, 0xD7, 0x80, + 0x01, 0xB7, 0x01, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x81, 0x01, 0xD7, 0x01, 0xB7, 0x01, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x01, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x01, 0x01, 0xD7, 0x02, 0x01, 0xB7, 0x81, 0x01, 0xD7, 0x01, 0xB7, 0x01, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x01, 0x01, 0xD7, 0x06, 0x01, 0xB7, 0x01, 0x01, 0xD7, 0x02, 0x01, 0xB7, 0x06, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x01, 0x01, 0xF6, 0x85, 0x02, 0x17, 0x02, 0x57, 0x23, 0x9D, 0x13, 0x1B, 0x02, 0x58, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x82, 0x01, 0xF7, 0x01, 0xB6, 0x01, 0xB7, 0x02, 0x01, 0xD7, 0x80, 0x01, 0xB7, 0x01, 0x01, 0xD7, 0x02, 0x01, 0xB7, 0x01, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x80, 0x01, 0xD7, 0x03, 0x01, 0xB7, 0x01, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x01, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x80, 0x01, 0xD7, 0x03, 0x01, 0xB7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xB6, 0x01, 0x01, 0xB7, 0x80, 0x01, 0xD7, 0x01, 0x01, 0xB7, 0x04, 0x01, 0xD7, 0x80, 0x01, 0xB7, 0x06, 0x01, 0xD7, 0x80, 0x01, 0xF7, 0x02, 0x01, 0xD6, 0x88, 0x01, 0xF6, 0x02, 0x16, 0x02, 0x37, 0x12, 0xD9, 0x4C, 0xDF, 0x02, 0x78, 0x02, 0x58, 0x02, 0x17, 0x01, 0xF7, 0x02, 0x01, 0xD7, 0x01, 0x01, 0xD6, 0x81, 0x01, 0xD7, 0x01, 0xB7, 0x01, 0x01, 0xD7, 0x81, 0x01, 0xB6, 0x01, 0xD6, 0x02, 0x01, 0xD7, 0x80, 0x01, 0xD6, 0x03, 0x01, 0xD7, 0x01, 0x01, 0xB6, 0x01, 0x01, 0xD7, 0x80, 0x01, 0xB7, 0x04, 0x01, 0xD7, 0x84, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xF7, 0x01, 0xD7, 0x01, 0xF7, 0x04, 0x01, 0xD7, 0x03, 0x09, 0xF7, 0x8C, 0x12, 0x17, + 0x11, 0xF7, 0x19, 0xF7, 0x21, 0xD6, 0x31, 0xF7, 0x39, 0x95, 0x49, 0x94, 0x8A, 0xD8, 0x92, 0x56, 0x9A, 0x15, 0xA2, 0x14, 0xA1, 0xF3, 0xA9, 0xF4, 0x03, 0xA9, 0xD3, 0x81, 0xB1, 0xD3, 0xA9, 0xD3, 0x02, 0xB1, 0xD3, 0x01, 0xB1, 0xF3, 0x80, 0xA9, 0xB3, 0x03, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x88, 0xA9, 0xF4, 0xAA, 0x14, 0xA2, 0x14, 0x9A, 0x15, 0x92, 0x35, 0x8A, 0x77, 0x59, 0xB4, 0x31, 0x74, 0x21, 0xB6, 0x01, 0x09, 0xB6, 0x80, 0x01, 0xD6, 0x01, 0x01, 0xF7, 0x04, 0x01, 0xD7, 0x80, 0x01, 0xB7, 0x05, 0x01, 0xB6, 0x80, 0x01, 0xD6, 0x0A, 0x01, 0xB6, 0x80, 0x01, 0x96, 0x05, 0x01, 0xB6, 0x05, 0x01, 0xD6, 0x80, 0x01, 0xF6, 0x01, 0x01, 0xD6, 0x01, 0x01, 0xF6, 0x87, 0x01, 0xD6, 0x01, 0xF6, 0x0A, 0x98, 0x23, 0x7B, 0x33, 0xDD, 0x23, 0x7C, 0x02, 0x37, 0x01, 0xF6, 0x07, 0x01, 0xD6, 0x80, 0x01, 0xF7, 0x0E, 0x01, 0xB6, 0x81, 0x01, 0x96, 0x01, 0xB6, 0x05, 0x01, 0x96, 0x07, 0x01, 0x95, 0x01, 0x01, 0xB6, 0x80, 0x01, 0x95, 0x03, 0x01, 0xB6, 0x86, 0x01, 0x95, 0x01, 0xB5, 0x01, 0xD6, 0x01, 0x95, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0xB6, 0x02, 0x01, 0xB5, 0x03, 0x01, 0xD5, 0x01, 0x01, 0xF5, 0x8A, 0x02, 0x36, 0x1B, 0x1A, 0x33, 0xFE, 0x33, 0xDD, 0x12, 0xFA, 0x02, 0x37, 0x02, 0x16, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0xD6, 0x05, 0x01, 0xB6, 0x83, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0x96, 0x01, 0xB5, 0x01, 0x01, 0xB6, 0x8A, 0x01, 0x95, 0x01, 0x96, 0x01, 0xB6, 0x01, 0x96, 0x01, 0xB6, 0x01, 0x96, 0x01, 0xB6, 0x01, 0x96, 0x01, 0x95, 0x01, 0xB6, 0x01, 0x95, 0x01, + 0x01, 0x96, 0x82, 0x01, 0x95, 0x01, 0xB6, 0x01, 0x96, 0x02, 0x01, 0x95, 0x81, 0x01, 0x75, 0x01, 0x96, 0x01, 0x01, 0x95, 0x01, 0x01, 0x96, 0x04, 0x01, 0x95, 0x05, 0x01, 0xB5, 0x80, 0x01, 0x95, 0x05, 0x01, 0xB5, 0x89, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0xD5, 0x01, 0xF6, 0x12, 0x98, 0x23, 0x5B, 0x3B, 0xDD, 0x2B, 0x7C, 0x12, 0xB9, 0x01, 0xF6, 0x02, 0x01, 0xD6, 0x86, 0x01, 0xB6, 0x01, 0xB5, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0xB5, 0x01, 0xB6, 0x04, 0x01, 0xB5, 0x03, 0x01, 0x95, 0x80, 0x01, 0xB5, 0x11, 0x01, 0x95, 0x80, 0x01, 0x94, 0x07, 0x01, 0x95, 0x80, 0x01, 0x94, 0x01, 0x01, 0xB4, 0x02, 0x01, 0xB5, 0x04, 0x01, 0x94, 0x81, 0x01, 0x74, 0x01, 0x94, 0x01, 0x01, 0xB4, 0x82, 0x01, 0xF5, 0x0A, 0x57, 0x1A, 0xF9, 0x01, 0x2B, 0x7B, 0x81, 0x1A, 0xF9, 0x0A, 0x77, 0x01, 0x02, 0x16, 0x84, 0x01, 0xF5, 0x01, 0xD5, 0x01, 0xB5, 0x01, 0x94, 0x01, 0xB5, 0x03, 0x01, 0x54, 0x82, 0x01, 0x74, 0x01, 0x95, 0x01, 0x74, 0x0A, 0x01, 0x54, 0x80, 0x01, 0x74, 0x01, 0x01, 0x54, 0x81, 0x01, 0x74, 0x01, 0x54, 0x03, 0x01, 0x74, 0x01, 0x01, 0x94, 0x86, 0x01, 0xB4, 0x01, 0xB5, 0x01, 0xD5, 0x02, 0x15, 0x0A, 0x77, 0x1A, 0xF9, 0x23, 0x5A, 0x01, 0x2B, 0x7B, 0x81, 0x0A, 0x57, 0x01, 0xB5, 0x03, 0x01, 0x74, 0x80, 0x01, 0x94, 0x06, 0x01, 0x74, 0x01, 0x01, 0x75, 0x01, 0x01, 0x55, 0x80, 0x01, 0x54, 0x02, 0x01, 0x55, 0x01, 0x01, 0x75, 0x80, 0x01, 0x96, 0x03, 0x01, 0x75, 0x80, 0x01, 0x74, 0x0A, 0x01, 0x75, 0x80, 0x01, 0x54, 0x01, 0x01, 0x74, 0x80, 0x01, 0x75, 0x01, + 0x01, 0x74, 0x83, 0x01, 0x75, 0x01, 0x74, 0x01, 0x75, 0x01, 0x95, 0x01, 0x01, 0x75, 0x02, 0x01, 0x74, 0x80, 0x01, 0x95, 0x01, 0x01, 0x94, 0x80, 0x01, 0xB4, 0x01, 0x01, 0x94, 0x01, 0x01, 0xB5, 0x82, 0x01, 0xF5, 0x0A, 0x77, 0x23, 0x3A, 0x01, 0x2B, 0x9C, 0x82, 0x23, 0x1A, 0x02, 0x16, 0x01, 0xB5, 0x01, 0x01, 0x95, 0x80, 0x01, 0xB5, 0x02, 0x01, 0x95, 0x04, 0x01, 0x75, 0x80, 0x01, 0x95, 0x01, 0x01, 0x75, 0x81, 0x01, 0x55, 0x01, 0x75, 0x01, 0x01, 0x95, 0x81, 0x01, 0x96, 0x01, 0x75, 0x01, 0x01, 0x96, 0x01, 0x01, 0x55, 0x83, 0x01, 0x75, 0x01, 0x55, 0x01, 0x76, 0x01, 0x95, 0x03, 0x01, 0x75, 0x81, 0x01, 0xB6, 0x01, 0x96, 0x03, 0x01, 0x75, 0x82, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x01, 0x75, 0x03, 0x01, 0x95, 0x02, 0x01, 0x75, 0x07, 0x01, 0x95, 0x8A, 0x01, 0xB5, 0x01, 0x95, 0x01, 0xB5, 0x01, 0xD5, 0x01, 0xF5, 0x02, 0x36, 0x23, 0x3A, 0x3C, 0x1E, 0x2B, 0x9C, 0x12, 0xB9, 0x01, 0xF6, 0x03, 0x01, 0xB5, 0x04, 0x01, 0x95, 0x01, 0x01, 0x96, 0x01, 0x01, 0x95, 0x05, 0x01, 0x75, 0x81, 0x01, 0x95, 0x01, 0x75, 0x01, 0x01, 0x95, 0x02, 0x01, 0x96, 0x82, 0x01, 0x75, 0x01, 0x96, 0x01, 0x95, 0x01, 0x01, 0x75, 0x05, 0x01, 0x95, 0x80, 0x01, 0xB6, 0x06, 0x01, 0x95, 0x80, 0x01, 0x96, 0x01, 0x01, 0x95, 0x01, 0x01, 0x96, 0x80, 0x01, 0x95, 0x01, 0x01, 0x75, 0x01, 0x01, 0x95, 0x81, 0x01, 0x96, 0x01, 0x95, 0x03, 0x01, 0xB5, 0x01, 0x01, 0xD6, 0x85, 0x01, 0xF6, 0x02, 0x17, 0x1B, 0x3A, 0x33, 0xDD, 0x23, 0x3B, 0x0A, 0x37, 0x02, 0x01, 0xB5, 0x04, 0x01, + 0x95, 0x82, 0x01, 0xB6, 0x01, 0x96, 0x01, 0x95, 0x05, 0x01, 0x96, 0x80, 0x01, 0x75, 0x01, 0x01, 0x96, 0x05, 0x01, 0x95, 0x81, 0x01, 0x96, 0x01, 0x75, 0x02, 0x01, 0x96, 0x02, 0x01, 0x75, 0x81, 0x01, 0x95, 0x01, 0x75, 0x06, 0x01, 0x95, 0x01, 0x01, 0x96, 0x80, 0x01, 0x75, 0x04, 0x01, 0x96, 0x02, 0x01, 0x95, 0x81, 0x01, 0xB6, 0x01, 0x95, 0x02, 0x01, 0xB6, 0x04, 0x01, 0xB5, 0x84, 0x01, 0xD6, 0x01, 0xF6, 0x3C, 0x1F, 0x3B, 0xFE, 0x02, 0x57, 0x01, 0x01, 0xF6, 0x82, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0xB6, 0x07, 0x01, 0x96, 0x02, 0x01, 0xB6, 0x12, 0x01, 0x96, 0x81, 0x01, 0xB6, 0x01, 0x95, 0x01, 0x01, 0x96, 0x03, 0x01, 0x95, 0x81, 0x01, 0x96, 0x01, 0x95, 0x01, 0x01, 0x96, 0x01, 0x01, 0x95, 0x81, 0x01, 0x96, 0x01, 0x95, 0x01, 0x01, 0xB6, 0x80, 0x01, 0x95, 0x02, 0x01, 0x96, 0x03, 0x01, 0xB6, 0x81, 0x01, 0xB5, 0x01, 0xB6, 0x03, 0x01, 0xD6, 0x84, 0x2B, 0x9C, 0x2B, 0xBD, 0x02, 0x37, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0x01, 0xB6, 0x01, 0x01, 0x96, 0x80, 0x01, 0x95, 0x04, 0x01, 0x96, 0x80, 0x01, 0x76, 0x06, 0x01, 0x96, 0x80, 0x01, 0x76, 0x08, 0x01, 0x96, 0x80, 0x01, 0xB6, 0x0D, 0x01, 0x96, 0x80, 0x01, 0xB6, 0x04, 0x01, 0x96, 0x02, 0x01, 0x95, 0x02, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x82, 0x01, 0xD6, 0x01, 0xB6, 0x01, 0xD6, 0x01, 0x01, 0xB6, 0x01, 0x01, 0xD6, 0x83, 0x01, 0xF6, 0x2B, 0x9C, 0x12, 0xFA, 0x02, 0x17, 0x01, 0x01, 0xD6, 0x05, 0x01, 0xB6, 0x22, 0x01, 0x96, 0x82, 0x01, 0xB6, 0x01, 0x96, 0x01, 0xB6, 0x02, 0x01, 0x96, 0x80, 0x01, 0xB6, 0x02, + 0x01, 0x96, 0x80, 0x01, 0xB6, 0x03, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x01, 0x01, 0x96, 0x80, 0x01, 0xB6, 0x01, 0x01, 0x95, 0x01, 0x01, 0xB6, 0x81, 0x23, 0x5B, 0x1B, 0x3B, 0x02, 0x01, 0xB6, 0x01, 0x01, 0x96, 0x80, 0x01, 0xB6, 0x07, 0x01, 0x96, 0x82, 0x01, 0xB6, 0x01, 0x96, 0x01, 0xB6, 0x01, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x02, 0x01, 0x96, 0x80, 0x01, 0xB6, 0x0C, 0x01, 0x96, 0x82, 0x01, 0xB6, 0x01, 0x96, 0x01, 0xB6, 0x0C, 0x01, 0x96, 0x81, 0x01, 0xB6, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x01, 0x01, 0x96, 0x03, 0x01, 0xB6, 0x81, 0x01, 0x96, 0x01, 0x95, 0x01, 0x01, 0xB5, 0x84, 0x01, 0xF6, 0x02, 0x37, 0x12, 0xFA, 0x2B, 0xBD, 0x01, 0xF6, 0x01, 0x01, 0xD7, 0x06, 0x01, 0x96, 0x82, 0x01, 0xB6, 0x01, 0x96, 0x01, 0xB6, 0x01, 0x01, 0x96, 0x80, 0x01, 0x76, 0x03, 0x01, 0x96, 0x80, 0x01, 0xB6, 0x16, 0x01, 0x96, 0x01, 0x01, 0xB6, 0x03, 0x01, 0x96, 0x80, 0x01, 0xB6, 0x04, 0x01, 0x96, 0x80, 0x01, 0xD7, 0x05, 0x01, 0xB6, 0x01, 0x01, 0xB5, 0x87, 0x01, 0xD6, 0x01, 0xF6, 0x02, 0x37, 0x23, 0x9C, 0x2B, 0xBD, 0x01, 0xF6, 0x02, 0x17, 0x01, 0xF6, 0x01, 0x01, 0xB6, 0x03, 0x01, 0x96, 0x80, 0x01, 0x95, 0x01, 0x01, 0x96, 0x01, 0x01, 0x95, 0x82, 0x01, 0xB6, 0x01, 0x95, 0x01, 0xB6, 0x03, 0x01, 0x96, 0x80, 0x01, 0xB6, 0x08, 0x01, 0x96, 0x08, 0x01, 0xB6, 0x80, 0x01, 0xD7, 0x02, 0x01, 0xB6, 0x81, 0x01, 0xD6, 0x09, 0xF6, 0x01, 0x09, 0xD6, 0x8A, 0x11, 0xD6, 0x11, 0xB5, 0x29, 0xD6, 0x31, 0xB5, 0x39, 0x74, 0x6A, 0x36, 0x8A, 0x76, 0x9A, 0x35, 0xA2, 0x35, 0xA1, 0xF4, + 0xA1, 0xB3, 0x02, 0xA9, 0xD3, 0x89, 0xA9, 0xB3, 0xA9, 0xD3, 0xA9, 0xB3, 0xB1, 0xF3, 0xA9, 0xB3, 0xA9, 0xB2, 0xB1, 0xF3, 0xA9, 0xB2, 0xA9, 0xD3, 0xA9, 0xB3, 0x03, 0xB1, 0xF3, 0x01, 0xA9, 0xD3, 0x88, 0xA9, 0xF4, 0xA2, 0x14, 0xA2, 0x35, 0x9A, 0x56, 0x8A, 0x77, 0x51, 0x73, 0x31, 0x74, 0x19, 0x74, 0x11, 0xB5, 0x01, 0x01, 0x95, 0x80, 0x01, 0xB5, 0x02, 0x01, 0xB6, 0x81, 0x01, 0x96, 0x01, 0xB6, 0x01, 0x01, 0x96, 0x80, 0x01, 0x75, 0x01, 0x01, 0x96, 0x05, 0x01, 0x95, 0x01, 0x01, 0x75, 0x80, 0x01, 0x95, 0x04, 0x01, 0x75, 0x80, 0x01, 0xB5, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x02, 0x01, 0x95, 0x01, 0x01, 0xB5, 0x01, 0x01, 0x95, 0x82, 0x01, 0xB5, 0x01, 0x95, 0x01, 0xD6, 0x01, 0x01, 0xD5, 0x80, 0x01, 0xB5, 0x03, 0x01, 0xD5, 0x8C, 0x02, 0x16, 0x1B, 0x1A, 0x33, 0xBC, 0x23, 0x5B, 0x0A, 0x57, 0x01, 0xF6, 0x01, 0xB6, 0x01, 0xB5, 0x01, 0x95, 0x01, 0xB5, 0x01, 0xB6, 0x01, 0xB5, 0x01, 0xB6, 0x01, 0x01, 0xB5, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x01, 0x01, 0x95, 0x02, 0x01, 0x75, 0x85, 0x01, 0x96, 0x01, 0x95, 0x01, 0xB6, 0x01, 0x95, 0x01, 0x96, 0x01, 0x75, 0x01, 0x01, 0x96, 0x06, 0x01, 0x75, 0x82, 0x01, 0x54, 0x01, 0x74, 0x01, 0x54, 0x01, 0x01, 0x75, 0x01, 0x01, 0x74, 0x82, 0x01, 0x95, 0x01, 0x74, 0x01, 0x95, 0x04, 0x01, 0x75, 0x81, 0x01, 0x95, 0x01, 0x75, 0x03, 0x01, 0x95, 0x03, 0x01, 0x94, 0x01, 0x01, 0xB5, 0x01, 0x01, 0xD5, 0x87, 0x01, 0xB5, 0x01, 0xD5, 0x02, 0x16, 0x23, 0x5B, 0x33, 0xBC, 0x1B, 0x1A, 0x02, 0x37, 0x01, 0xF6, 0x01, 0x01, + 0xB5, 0x02, 0x01, 0x95, 0x82, 0x01, 0x74, 0x01, 0x75, 0x01, 0x74, 0x01, 0x01, 0x95, 0x83, 0x01, 0x74, 0x01, 0x75, 0x01, 0x95, 0x01, 0x74, 0x02, 0x01, 0x95, 0x05, 0x01, 0x75, 0x82, 0x01, 0x74, 0x01, 0x75, 0x01, 0x74, 0x03, 0x01, 0x75, 0x82, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x02, 0x01, 0x75, 0x01, 0x01, 0x54, 0x81, 0x01, 0x55, 0x01, 0x75, 0x01, 0x01, 0x74, 0x82, 0x01, 0x75, 0x01, 0x74, 0x01, 0x75, 0x01, 0x01, 0x74, 0x84, 0x01, 0x94, 0x01, 0x74, 0x01, 0x94, 0x01, 0xB5, 0x01, 0x74, 0x01, 0x01, 0x94, 0x80, 0x01, 0x95, 0x02, 0x01, 0x74, 0x81, 0x01, 0x94, 0x01, 0x74, 0x03, 0x01, 0xB5, 0x87, 0x12, 0x98, 0x2B, 0x7B, 0x2B, 0x5B, 0x23, 0x1A, 0x0A, 0x57, 0x01, 0xF6, 0x01, 0xB5, 0x01, 0x95, 0x01, 0x01, 0x94, 0x01, 0x01, 0x75, 0x80, 0x01, 0x95, 0x01, 0x01, 0x94, 0x08, 0x01, 0x74, 0x01, 0x01, 0x95, 0x01, 0x01, 0x74, 0x80, 0x01, 0x54, 0x02, 0x01, 0x74, 0x80, 0x01, 0x95, 0x04, 0x01, 0x74, 0x01, 0x01, 0x54, 0x01, 0x01, 0x74, 0x01, 0x01, 0x54, 0x01, 0x01, 0x74, 0x01, 0x01, 0x54, 0x01, 0x01, 0x74, 0x81, 0x01, 0x94, 0x01, 0x74, 0x01, 0x01, 0x94, 0x04, 0x01, 0x74, 0x01, 0x01, 0x54, 0x82, 0x01, 0x74, 0x01, 0x53, 0x01, 0x54, 0x01, 0x01, 0x74, 0x02, 0x01, 0x94, 0x88, 0x01, 0xF5, 0x1A, 0xD8, 0x33, 0x9B, 0x2B, 0xBB, 0x1B, 0x19, 0x02, 0x77, 0x02, 0x36, 0x01, 0xD4, 0x01, 0xB4, 0x01, 0x01, 0x94, 0x0A, 0x01, 0x54, 0x80, 0x01, 0x33, 0x01, 0x01, 0x54, 0x03, 0x01, 0x53, 0x80, 0x01, 0x33, 0x05, 0x01, 0x53, 0x82, 0x01, 0x73, 0x01, 0x74, 0x01, 0x73, + 0x01, 0x01, 0xB4, 0x89, 0x01, 0xD5, 0x0A, 0x56, 0x2B, 0x5A, 0x2B, 0x7A, 0x1A, 0xF9, 0x0A, 0x77, 0x01, 0xF5, 0x01, 0xB4, 0x01, 0x94, 0x01, 0x74, 0x01, 0x01, 0x53, 0x01, 0x01, 0x54, 0x82, 0x01, 0x74, 0x01, 0x53, 0x01, 0x74, 0x03, 0x01, 0x54, 0x80, 0x01, 0x74, 0x08, 0x01, 0x54, 0x80, 0x01, 0x75, 0x01, 0x01, 0x54, 0x80, 0x01, 0x74, 0x01, 0x01, 0x54, 0x06, 0x01, 0x74, 0x81, 0x01, 0x54, 0x01, 0x74, 0x01, 0x01, 0x54, 0x80, 0x01, 0x74, 0x04, 0x01, 0x54, 0x80, 0x01, 0x74, 0x01, 0x01, 0x54, 0x01, 0x01, 0x74, 0x81, 0x01, 0x54, 0x01, 0x74, 0x01, 0x01, 0x54, 0x01, 0x01, 0x74, 0x03, 0x01, 0x94, 0x88, 0x01, 0xB4, 0x01, 0xD4, 0x0A, 0x57, 0x33, 0x9B, 0x3B, 0xDD, 0x23, 0x5A, 0x12, 0x77, 0x01, 0xF5, 0x01, 0xB5, 0x01, 0x01, 0x94, 0x04, 0x01, 0x74, 0x03, 0x01, 0x54, 0x01, 0x01, 0x75, 0x05, 0x01, 0x55, 0x03, 0x01, 0x75, 0x81, 0x01, 0x55, 0x01, 0x54, 0x01, 0x01, 0x55, 0x01, 0x01, 0x75, 0x81, 0x01, 0x55, 0x01, 0x75, 0x01, 0x01, 0x54, 0x03, 0x01, 0x75, 0x80, 0x01, 0x54, 0x02, 0x01, 0x75, 0x80, 0x01, 0x54, 0x06, 0x01, 0x75, 0x04, 0x01, 0x74, 0x80, 0x01, 0x94, 0x01, 0x01, 0x74, 0x81, 0x01, 0x94, 0x01, 0x74, 0x02, 0x01, 0x94, 0x86, 0x01, 0xB5, 0x01, 0xD5, 0x1A, 0xD9, 0x3B, 0xFD, 0x33, 0xBC, 0x12, 0x98, 0x01, 0xD5, 0x01, 0x01, 0xB5, 0x02, 0x01, 0x94, 0x80, 0x01, 0x95, 0x02, 0x01, 0x74, 0x01, 0x01, 0x75, 0x82, 0x01, 0x96, 0x01, 0x75, 0x01, 0x55, 0x03, 0x01, 0x75, 0x80, 0x01, 0x54, 0x13, 0x01, 0x75, 0x85, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, + 0x75, 0x01, 0x95, 0x01, 0x75, 0x02, 0x01, 0x95, 0x01, 0x01, 0x75, 0x80, 0x01, 0x95, 0x01, 0x01, 0x75, 0x80, 0x01, 0x95, 0x01, 0x01, 0x75, 0x81, 0x01, 0x95, 0x01, 0x75, 0x02, 0x01, 0x95, 0x02, 0x01, 0xB5, 0x85, 0x01, 0xD5, 0x12, 0x78, 0x33, 0x9C, 0x2B, 0x5B, 0x0A, 0x57, 0x01, 0xF6, 0x01, 0x01, 0xB5, 0x01, 0x01, 0x95, 0x01, 0x01, 0x74, 0x80, 0x01, 0x75, 0x01, 0x01, 0x95, 0x01, 0x01, 0x75, 0x01, 0x01, 0x95, 0x04, 0x01, 0x75, 0x80, 0x01, 0x95, 0x02, 0x01, 0x75, 0x80, 0x01, 0x95, 0x04, 0x01, 0x75, 0x80, 0x01, 0x95, 0x02, 0x01, 0x75, 0x80, 0x01, 0x55, 0x05, 0x01, 0x75, 0x80, 0x01, 0x95, 0x01, 0x01, 0x75, 0x80, 0x01, 0x95, 0x0A, 0x01, 0x75, 0x07, 0x01, 0x95, 0x80, 0x01, 0x94, 0x01, 0x01, 0xB5, 0x85, 0x01, 0xF6, 0x3B, 0xDD, 0x33, 0xDD, 0x02, 0x37, 0x01, 0xD6, 0x01, 0xB5, 0x03, 0x01, 0x95, 0x80, 0x01, 0x75, 0x03, 0x01, 0x95, 0x80, 0x01, 0x75, 0x01, 0x01, 0x96, 0x80, 0x01, 0x95, 0x05, 0x01, 0x96, 0x82, 0x01, 0x95, 0x01, 0x75, 0x01, 0x96, 0x01, 0x01, 0x95, 0x80, 0x01, 0x96, 0x01, 0x01, 0x75, 0x82, 0x01, 0x95, 0x01, 0x96, 0x01, 0x75, 0x08, 0x01, 0x95, 0x01, 0x01, 0x75, 0x03, 0x01, 0x95, 0x80, 0x01, 0x75, 0x04, 0x01, 0x95, 0x01, 0x01, 0x75, 0x81, 0x01, 0x95, 0x01, 0x75, 0x07, 0x01, 0x95, 0x86, 0x01, 0xB5, 0x01, 0xD5, 0x0A, 0x57, 0x4C, 0x7F, 0x02, 0x57, 0x01, 0xF6, 0x01, 0xB6, 0x02, 0x01, 0x95, 0x81, 0x01, 0x75, 0x01, 0x95, 0x01, 0x01, 0x75, 0x02, 0x01, 0x96, 0x82, 0x01, 0x76, 0x01, 0x96, 0x01, 0x75, 0x02, 0x01, 0x96, 0x04, 0x01, + 0x95, 0x82, 0x01, 0x75, 0x01, 0x95, 0x01, 0x76, 0x01, 0x01, 0x75, 0x81, 0x01, 0x95, 0x01, 0x75, 0x09, 0x01, 0x95, 0x02, 0x01, 0x75, 0x81, 0x01, 0x95, 0x01, 0x75, 0x01, 0x01, 0x95, 0x85, 0x01, 0x75, 0x01, 0x95, 0x01, 0x96, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x01, 0x75, 0x08, 0x01, 0x95, 0x01, 0x01, 0xB5, 0x86, 0x01, 0xD5, 0x02, 0x16, 0x3B, 0xFE, 0x02, 0x57, 0x01, 0xF6, 0x01, 0xB6, 0x01, 0xB5, 0x01, 0x01, 0x95, 0x80, 0x01, 0xB5, 0x02, 0x01, 0x95, 0x80, 0x01, 0x96, 0x01, 0x01, 0x95, 0x80, 0x01, 0x75, 0x01, 0x01, 0x96, 0x80, 0x01, 0x75, 0x04, 0x01, 0x96, 0x01, 0x01, 0x95, 0x81, 0x01, 0x96, 0x01, 0x95, 0x02, 0x01, 0x96, 0x80, 0x01, 0x95, 0x01, 0x01, 0x96, 0x01, 0x01, 0x75, 0x82, 0x01, 0x96, 0x01, 0x95, 0x01, 0x75, 0x02, 0x01, 0x96, 0x80, 0x01, 0x95, 0x02, 0x01, 0x96, 0x01, 0x01, 0x95, 0x80, 0x01, 0x96, 0x01, 0x01, 0x95, 0x01, 0x01, 0x96, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x01, 0x01, 0x95, 0x81, 0x01, 0x96, 0x01, 0x95, 0x02, 0x01, 0x96, 0x81, 0x01, 0x75, 0x01, 0x95, 0x01, 0x01, 0x75, 0x02, 0x01, 0x95, 0x81, 0x23, 0x5B, 0x1A, 0xD9, 0x02, 0x01, 0xB6, 0x81, 0x01, 0x96, 0x01, 0x95, 0x10, 0x01, 0x96, 0x01, 0x01, 0x95, 0x01, 0x01, 0x96, 0x82, 0x01, 0x95, 0x01, 0x75, 0x01, 0x96, 0x03, 0x01, 0x95, 0x81, 0x01, 0x96, 0x01, 0x95, 0x06, 0x01, 0x96, 0x80, 0x01, 0x95, 0x06, 0x01, 0x96, 0x80, 0x01, 0x95, 0x01, 0x01, 0x96, 0x07, 0x01, 0x95, 0x80, 0x01, 0xB6, 0x04, 0x01, 0x95, 0x01, 0x01, 0xB5, 0x83, 0x01, 0xF6, 0x02, 0x57, 0x3B, + 0xFE, 0x0A, 0x37, 0x01, 0x01, 0xB6, 0x01, 0x01, 0x96, 0x06, 0x01, 0x95, 0x81, 0x01, 0x96, 0x01, 0x75, 0x01, 0x01, 0x95, 0x02, 0x01, 0x75, 0x80, 0x01, 0x95, 0x01, 0x01, 0x96, 0x06, 0x01, 0x75, 0x86, 0x01, 0x96, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x01, 0x01, 0x95, 0x01, 0x01, 0x75, 0x80, 0x01, 0x95, 0x01, 0x01, 0x75, 0x01, 0x01, 0x95, 0x84, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x01, 0x76, 0x01, 0x75, 0x03, 0x01, 0x96, 0x80, 0x01, 0x95, 0x01, 0x01, 0x96, 0x81, 0x01, 0x95, 0x01, 0x96, 0x05, 0x01, 0x95, 0x01, 0x01, 0xB5, 0x89, 0x02, 0x16, 0x02, 0x36, 0x3C, 0x1E, 0x12, 0xB9, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0xB5, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x01, 0x75, 0x01, 0x01, 0x95, 0x03, 0x01, 0x75, 0x04, 0x01, 0x95, 0x80, 0x01, 0x75, 0x01, 0x01, 0x95, 0x81, 0x01, 0x75, 0x01, 0x95, 0x01, 0x01, 0x75, 0x01, 0x01, 0x96, 0x01, 0x01, 0x95, 0x85, 0x01, 0xB6, 0x01, 0x96, 0x01, 0x95, 0x01, 0xB6, 0x01, 0x96, 0x01, 0xB6, 0x01, 0x01, 0x95, 0x01, 0x01, 0xB6, 0x80, 0x01, 0x95, 0x01, 0x01, 0xB6, 0x01, 0x01, 0xB5, 0x80, 0x09, 0xD6, 0x01, 0x09, 0xB5, 0x89, 0x19, 0xD6, 0x19, 0x75, 0x29, 0x95, 0x31, 0x54, 0x41, 0x33, 0x92, 0xD8, 0x92, 0x55, 0x9A, 0x35, 0xAA, 0x34, 0xA1, 0xD3, 0x02, 0xA9, 0xD3, 0x02, 0xB1, 0xD3, 0x82, 0xA9, 0xB3, 0xB1, 0xD3, 0xA9, 0xD3, 0x01, 0xB1, 0xD3, 0x01, 0xA9, 0xD3, 0x82, 0xB1, 0xF3, 0xA9, 0xD3, 0xB1, 0xF3, 0x02, 0xA9, 0xD3, 0x88, 0xA9, 0xF4, 0xAA, 0x14, 0xA2, 0x14, 0x9A, 0x55, 0x92, + 0xB7, 0x51, 0x52, 0x29, 0x12, 0x11, 0x54, 0x09, 0x74, 0x01, 0x01, 0x95, 0x80, 0x01, 0xB5, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x01, 0x01, 0x95, 0x01, 0x01, 0x75, 0x84, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x01, 0x74, 0x01, 0x01, 0x75, 0x82, 0x01, 0x74, 0x01, 0x95, 0x01, 0x75, 0x01, 0x01, 0x74, 0x80, 0x01, 0x75, 0x01, 0x01, 0x74, 0x80, 0x01, 0x75, 0x01, 0x01, 0x74, 0x01, 0x01, 0x75, 0x01, 0x01, 0x74, 0x81, 0x01, 0x75, 0x01, 0x95, 0x02, 0x01, 0x75, 0x84, 0x01, 0x74, 0x01, 0x94, 0x01, 0x95, 0x01, 0x94, 0x01, 0x95, 0x01, 0x01, 0xB5, 0x82, 0x01, 0x94, 0x01, 0xB5, 0x01, 0x95, 0x01, 0x01, 0xB5, 0x86, 0x01, 0xF5, 0x0A, 0x36, 0x23, 0x3A, 0x2B, 0x7B, 0x12, 0x98, 0x01, 0xD5, 0x01, 0xB5, 0x07, 0x01, 0x95, 0x01, 0x01, 0x75, 0x02, 0x01, 0x74, 0x09, 0x01, 0x75, 0x81, 0x01, 0x55, 0x01, 0x75, 0x01, 0x01, 0x54, 0x80, 0x01, 0x74, 0x01, 0x01, 0x54, 0x80, 0x01, 0x74, 0x02, 0x01, 0x54, 0x82, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x01, 0x01, 0x54, 0x80, 0x01, 0x74, 0x07, 0x01, 0x54, 0x07, 0x01, 0x74, 0x81, 0x01, 0x94, 0x01, 0xB5, 0x01, 0x01, 0x94, 0x80, 0x01, 0xB4, 0x01, 0x01, 0x94, 0x8A, 0x01, 0xB5, 0x02, 0x16, 0x1A, 0xD9, 0x33, 0xBC, 0x1A, 0xD9, 0x01, 0xB5, 0x01, 0xB4, 0x01, 0x95, 0x01, 0x94, 0x01, 0x74, 0x01, 0x54, 0x0C, 0x01, 0x74, 0x03, 0x01, 0x54, 0x81, 0x01, 0x74, 0x01, 0x54, 0x01, 0x01, 0x74, 0x03, 0x01, 0x54, 0x01, 0x01, 0x74, 0x01, 0x01, 0x54, 0x80, 0x01, 0x34, 0x04, 0x01, 0x54, 0x82, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, + 0x01, 0x01, 0x54, 0x80, 0x01, 0x74, 0x01, 0x01, 0x54, 0x03, 0x01, 0x74, 0x81, 0x01, 0x54, 0x01, 0x74, 0x01, 0x01, 0x54, 0x81, 0x01, 0x74, 0x01, 0x54, 0x02, 0x01, 0x74, 0x02, 0x01, 0x94, 0x82, 0x01, 0xB4, 0x01, 0xF5, 0x12, 0xB8, 0x01, 0x2B, 0x7B, 0x81, 0x12, 0x77, 0x01, 0xD5, 0x01, 0x01, 0x94, 0x07, 0x01, 0x74, 0x01, 0x01, 0x54, 0x01, 0x01, 0x74, 0x80, 0x01, 0x53, 0x01, 0x01, 0x54, 0x81, 0x01, 0x53, 0x01, 0x74, 0x01, 0x01, 0x53, 0x81, 0x01, 0x74, 0x01, 0x53, 0x03, 0x01, 0x54, 0x02, 0x01, 0x53, 0x01, 0x01, 0x54, 0x84, 0x01, 0x53, 0x01, 0x74, 0x01, 0x54, 0x01, 0x53, 0x01, 0x54, 0x02, 0x01, 0x53, 0x81, 0x01, 0x33, 0x01, 0x54, 0x0F, 0x01, 0x53, 0x8B, 0x01, 0x73, 0x01, 0x53, 0x01, 0x74, 0x01, 0x73, 0x01, 0x93, 0x01, 0xB4, 0x02, 0x36, 0x12, 0x97, 0x2B, 0x7A, 0x2B, 0x5A, 0x0A, 0x56, 0x01, 0xF5, 0x01, 0x01, 0x73, 0x80, 0x01, 0x54, 0x07, 0x01, 0x33, 0x84, 0x01, 0x54, 0x01, 0x74, 0x01, 0x53, 0x01, 0x74, 0x01, 0x73, 0x01, 0x01, 0x53, 0x01, 0x01, 0x33, 0x01, 0x01, 0x53, 0x84, 0x01, 0x73, 0x01, 0x53, 0x01, 0x73, 0x01, 0x53, 0x01, 0x73, 0x01, 0x01, 0x93, 0x87, 0x01, 0xB4, 0x02, 0x15, 0x1A, 0xB7, 0x2B, 0x5A, 0x33, 0x5A, 0x12, 0x56, 0x01, 0xB4, 0x01, 0x94, 0x02, 0x01, 0x73, 0x02, 0x01, 0x53, 0x02, 0x01, 0x33, 0x01, 0x01, 0x53, 0x85, 0x01, 0x74, 0x01, 0x53, 0x01, 0x74, 0x01, 0x53, 0x01, 0x33, 0x01, 0x54, 0x01, 0x01, 0x33, 0x83, 0x01, 0x34, 0x01, 0x54, 0x01, 0x74, 0x01, 0x33, 0x07, 0x01, 0x54, 0x87, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, + 0x01, 0x54, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x01, 0x54, 0x01, 0x01, 0x34, 0x01, 0x01, 0x54, 0x01, 0x01, 0x74, 0x81, 0x01, 0x54, 0x01, 0x53, 0x01, 0x01, 0x54, 0x82, 0x01, 0x74, 0x01, 0x53, 0x01, 0x54, 0x04, 0x01, 0x53, 0x82, 0x01, 0x74, 0x01, 0x73, 0x01, 0x74, 0x01, 0x01, 0x94, 0x88, 0x01, 0xB4, 0x01, 0xF4, 0x0A, 0x76, 0x23, 0x3A, 0x33, 0xBC, 0x23, 0x19, 0x0A, 0x56, 0x01, 0x94, 0x01, 0x73, 0x02, 0x01, 0x74, 0x01, 0x01, 0x54, 0x80, 0x01, 0x53, 0x01, 0x01, 0x54, 0x82, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x04, 0x01, 0x54, 0x81, 0x01, 0x75, 0x01, 0x34, 0x01, 0x01, 0x54, 0x81, 0x01, 0x55, 0x01, 0x75, 0x02, 0x01, 0x54, 0x80, 0x01, 0x75, 0x03, 0x01, 0x54, 0x82, 0x01, 0x74, 0x01, 0x75, 0x01, 0x95, 0x02, 0x01, 0x54, 0x81, 0x01, 0x74, 0x01, 0x54, 0x01, 0x01, 0x74, 0x03, 0x01, 0x54, 0x84, 0x01, 0x74, 0x01, 0x54, 0x01, 0x95, 0x01, 0x75, 0x01, 0x74, 0x02, 0x01, 0x54, 0x01, 0x01, 0x74, 0x80, 0x01, 0x53, 0x04, 0x01, 0x74, 0x02, 0x01, 0x94, 0x85, 0x01, 0xB4, 0x12, 0x57, 0x33, 0x5B, 0x3B, 0x9C, 0x1A, 0xB8, 0x01, 0xB4, 0x01, 0x01, 0x94, 0x02, 0x01, 0x74, 0x80, 0x01, 0x94, 0x03, 0x01, 0x74, 0x81, 0x01, 0x54, 0x01, 0x74, 0x03, 0x01, 0x75, 0x80, 0x01, 0x54, 0x01, 0x01, 0x74, 0x83, 0x01, 0x95, 0x01, 0x75, 0x01, 0x74, 0x01, 0x54, 0x03, 0x01, 0x75, 0x83, 0x01, 0x54, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x01, 0x01, 0x75, 0x84, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x74, 0x01, 0x95, 0x06, 0x01, 0x74, 0x84, 0x01, 0x95, 0x01, 0x74, 0x01, + 0x95, 0x01, 0x75, 0x01, 0x95, 0x03, 0x01, 0x54, 0x81, 0x01, 0x74, 0x01, 0x95, 0x03, 0x01, 0x74, 0x01, 0x01, 0x94, 0x02, 0x01, 0xB4, 0x87, 0x01, 0xD5, 0x1A, 0xF9, 0x33, 0x7C, 0x12, 0x98, 0x01, 0xF5, 0x01, 0xD5, 0x01, 0xB5, 0x01, 0x95, 0x02, 0x01, 0x74, 0x01, 0x01, 0x95, 0x06, 0x01, 0x75, 0x80, 0x01, 0x95, 0x02, 0x01, 0x75, 0x82, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x02, 0x01, 0x75, 0x83, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x74, 0x05, 0x01, 0x75, 0x83, 0x01, 0x95, 0x01, 0x74, 0x01, 0x75, 0x01, 0x95, 0x01, 0x01, 0x75, 0x82, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x02, 0x01, 0x75, 0x82, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x01, 0x75, 0x80, 0x01, 0x74, 0x01, 0x01, 0x95, 0x01, 0x01, 0x74, 0x83, 0x01, 0x95, 0x01, 0x74, 0x01, 0xB5, 0x01, 0x95, 0x01, 0x01, 0x74, 0x80, 0x01, 0x94, 0x01, 0x01, 0xB5, 0x85, 0x02, 0x16, 0x2B, 0x5B, 0x23, 0x1A, 0x02, 0x16, 0x01, 0xD6, 0x01, 0x95, 0x01, 0x01, 0x74, 0x80, 0x01, 0x75, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x02, 0x01, 0x95, 0x08, 0x01, 0x75, 0x80, 0x01, 0xB6, 0x03, 0x01, 0x95, 0x82, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x01, 0x01, 0x95, 0x01, 0x01, 0x75, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x06, 0x01, 0x95, 0x01, 0x01, 0x75, 0x82, 0x01, 0x95, 0x01, 0x75, 0x01, 0x74, 0x01, 0x01, 0x95, 0x80, 0x01, 0xB5, 0x01, 0x01, 0x95, 0x80, 0x01, 0x94, 0x01, 0x01, 0x74, 0x87, 0x01, 0xB5, 0x01, 0xD5, 0x01, 0xF6, 0x44, 0x1E, + 0x12, 0xB9, 0x01, 0xF6, 0x01, 0xD6, 0x01, 0x95, 0x02, 0x01, 0x75, 0x80, 0x01, 0x95, 0x01, 0x01, 0x75, 0x83, 0x01, 0xB6, 0x01, 0x95, 0x01, 0xB6, 0x01, 0x96, 0x03, 0x01, 0x75, 0x80, 0x01, 0xB6, 0x01, 0x01, 0x95, 0x80, 0x01, 0x75, 0x04, 0x01, 0x95, 0x02, 0x01, 0x75, 0x04, 0x01, 0x95, 0x80, 0x01, 0x75, 0x01, 0x01, 0x95, 0x80, 0x01, 0xB6, 0x03, 0x01, 0x95, 0x80, 0x01, 0x75, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x01, 0x01, 0x95, 0x02, 0x01, 0x75, 0x01, 0x01, 0x95, 0x82, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x01, 0x01, 0x95, 0x80, 0x01, 0xB5, 0x05, 0x01, 0x95, 0x85, 0x01, 0xB5, 0x01, 0xD5, 0x1A, 0xD9, 0x33, 0xBC, 0x02, 0x16, 0x01, 0xD5, 0x02, 0x01, 0xB5, 0x02, 0x01, 0x95, 0x82, 0x01, 0xB5, 0x01, 0x95, 0x01, 0x75, 0x04, 0x01, 0x95, 0x8A, 0x01, 0x75, 0x01, 0x96, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x01, 0x01, 0x95, 0x01, 0x01, 0x75, 0x02, 0x01, 0x95, 0x82, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x03, 0x01, 0x95, 0x80, 0x01, 0xB6, 0x01, 0x01, 0x95, 0x01, 0x01, 0x75, 0x89, 0x01, 0x95, 0x01, 0x75, 0x01, 0x55, 0x01, 0x75, 0x01, 0x74, 0x01, 0x75, 0x01, 0x95, 0x1A, 0xFA, 0x12, 0xB8, 0x01, 0xB5, 0x05, 0x01, 0x95, 0x80, 0x01, 0x75, 0x02, 0x01, 0x96, 0x02, 0x01, 0x95, 0x01, 0x01, 0x75, 0x83, 0x01, 0x96, 0x01, 0xB6, 0x01, 0x96, + 0x01, 0x75, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x04, 0x01, 0x95, 0x80, 0x01, 0x75, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x02, 0x01, 0x95, 0x01, 0x01, 0x75, 0x81, 0x01, 0x95, 0x01, 0x96, 0x02, 0x01, 0x95, 0x01, 0x01, 0x96, 0x81, 0x01, 0x95, 0x01, 0x75, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x02, 0x01, 0x95, 0x80, 0x01, 0x75, 0x08, 0x01, 0x95, 0x81, 0x01, 0x74, 0x01, 0xB5, 0x01, 0x01, 0x95, 0x84, 0x01, 0xB5, 0x01, 0xD6, 0x2B, 0x5B, 0x2B, 0x5C, 0x01, 0xB5, 0x01, 0x01, 0x95, 0x80, 0x01, 0x75, 0x03, 0x01, 0x95, 0x82, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x02, 0x01, 0x95, 0x83, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x0E, 0x01, 0x75, 0x80, 0x01, 0x95, 0x02, 0x01, 0x75, 0x80, 0x01, 0x95, 0x04, 0x01, 0x75, 0x80, 0x01, 0x95, 0x01, 0x01, 0x75, 0x80, 0x01, 0x54, 0x08, 0x01, 0x75, 0x83, 0x01, 0x95, 0x01, 0x75, 0x01, 0x74, 0x01, 0x75, 0x01, 0x01, 0x95, 0x02, 0x01, 0x94, 0x89, 0x01, 0x95, 0x01, 0xB5, 0x01, 0xD5, 0x0A, 0x37, 0x3B, 0xFD, 0x0A, 0x37, 0x01, 0xB5, 0x01, 0x95, 0x01, 0x75, 0x01, 0x74, 0x02, 0x01, 0x54, 0x89, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x01, 0x75, 0x82, 0x01, 0x95, 0x01, 0x75, 0x01, 0x55, 0x03, 0x01, 0x75, 0x05, 0x01, 0x95, 0x83, 0x01, 0x96, 0x01, 0x95, 0x01, 0xB6, 0x01, 0xB5, 0x01, 0x01, 0x95, 0x83, 0x01, 0xB6, 0x01, 0x95, 0x01, 0xB6, 0x01, 0xB5, 0x02, 0x09, 0xD6, 0x01, 0x09, 0xB5, 0x8B, 0x11, 0x95, 0x19, 0x95, 0x21, + 0x75, 0x29, 0x54, 0x31, 0x12, 0x72, 0x56, 0x9A, 0xB7, 0x9A, 0x15, 0xA1, 0xF4, 0xAA, 0x14, 0xA9, 0xF4, 0xA9, 0xD3, 0x03, 0xB1, 0xD3, 0x85, 0xB1, 0xF3, 0xB1, 0xD3, 0xA9, 0xD3, 0xA9, 0xB3, 0xA9, 0xD3, 0xB1, 0xF3, 0x01, 0xA9, 0xD3, 0x01, 0xB1, 0xF4, 0x8B, 0xB1, 0xF3, 0xA9, 0xD3, 0xB1, 0xF4, 0xA9, 0xD3, 0xA9, 0xF4, 0xA2, 0x14, 0x9A, 0x35, 0x92, 0x97, 0x61, 0xD4, 0x18, 0x90, 0x11, 0x33, 0x01, 0x33, 0x02, 0x01, 0x74, 0x83, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x01, 0x01, 0x55, 0x01, 0x01, 0x54, 0x82, 0x01, 0x95, 0x01, 0x74, 0x01, 0x95, 0x01, 0x01, 0x74, 0x80, 0x01, 0x75, 0x05, 0x01, 0x74, 0x80, 0x01, 0x75, 0x01, 0x01, 0x74, 0x80, 0x01, 0x54, 0x01, 0x01, 0x74, 0x82, 0x01, 0x95, 0x01, 0x74, 0x01, 0x95, 0x07, 0x01, 0x74, 0x02, 0x01, 0x94, 0x01, 0x01, 0x74, 0x80, 0x01, 0x94, 0x02, 0x01, 0x74, 0x02, 0x01, 0x94, 0x85, 0x01, 0xB4, 0x12, 0x77, 0x2B, 0x5B, 0x1A, 0xD9, 0x01, 0xF5, 0x01, 0xB4, 0x01, 0x01, 0x94, 0x80, 0x01, 0x95, 0x02, 0x01, 0x74, 0x80, 0x01, 0x54, 0x01, 0x01, 0x74, 0x81, 0x01, 0x95, 0x01, 0x54, 0x01, 0x01, 0x74, 0x80, 0x01, 0x95, 0x01, 0x01, 0x74, 0x80, 0x01, 0x54, 0x01, 0x01, 0x74, 0x01, 0x01, 0x54, 0x02, 0x01, 0x75, 0x02, 0x01, 0x54, 0x84, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x03, 0x01, 0x54, 0x80, 0x01, 0x53, 0x01, 0x01, 0x74, 0x02, 0x01, 0x54, 0x80, 0x01, 0x34, 0x01, 0x01, 0x54, 0x01, 0x01, 0x74, 0x01, 0x01, 0x54, 0x01, 0x01, 0x53, 0x01, 0x01, 0x74, 0x01, 0x01, 0x54, 0x82, 0x01, + 0x74, 0x01, 0x73, 0x01, 0x94, 0x01, 0x01, 0x74, 0x81, 0x01, 0x73, 0x01, 0x74, 0x02, 0x01, 0x94, 0x85, 0x01, 0xD5, 0x22, 0xF9, 0x2B, 0x3A, 0x12, 0x56, 0x01, 0xB4, 0x01, 0x94, 0x04, 0x01, 0x74, 0x02, 0x01, 0x53, 0x01, 0x01, 0x73, 0x02, 0x01, 0x74, 0x81, 0x01, 0x53, 0x01, 0x54, 0x01, 0x01, 0x74, 0x01, 0x01, 0x54, 0x82, 0x01, 0x33, 0x01, 0x54, 0x01, 0x53, 0x01, 0x01, 0x54, 0x81, 0x01, 0x74, 0x01, 0x54, 0x02, 0x01, 0x33, 0x82, 0x01, 0x54, 0x01, 0x33, 0x01, 0x34, 0x01, 0x01, 0x33, 0x83, 0x01, 0x54, 0x01, 0x33, 0x01, 0x54, 0x01, 0x33, 0x03, 0x01, 0x54, 0x80, 0x01, 0x74, 0x01, 0x01, 0x54, 0x01, 0x01, 0x53, 0x01, 0x01, 0x73, 0x0A, 0x01, 0x53, 0x03, 0x01, 0x73, 0x81, 0x01, 0xB4, 0x1A, 0x97, 0x01, 0x23, 0x19, 0x82, 0x0A, 0x56, 0x01, 0xD4, 0x01, 0x94, 0x01, 0x01, 0x73, 0x80, 0x01, 0x74, 0x01, 0x01, 0x53, 0x01, 0x01, 0x33, 0x81, 0x01, 0x53, 0x01, 0x33, 0x03, 0x01, 0x53, 0x80, 0x01, 0x33, 0x01, 0x01, 0x53, 0x80, 0x01, 0x33, 0x01, 0x01, 0x53, 0x01, 0x01, 0x33, 0x03, 0x01, 0x53, 0x09, 0x01, 0x33, 0x82, 0x01, 0x53, 0x01, 0x33, 0x01, 0x53, 0x01, 0x01, 0x33, 0x03, 0x01, 0x53, 0x81, 0x01, 0x33, 0x01, 0x53, 0x06, 0x01, 0x33, 0x02, 0x01, 0x53, 0x80, 0x01, 0x33, 0x01, 0x01, 0x53, 0x03, 0x01, 0x73, 0x85, 0x01, 0x93, 0x01, 0xF5, 0x1A, 0xB7, 0x33, 0x5A, 0x2B, 0x3A, 0x12, 0x56, 0x01, 0x01, 0x33, 0x80, 0x01, 0x53, 0x01, 0x01, 0x33, 0x80, 0x01, 0x13, 0x05, 0x01, 0x33, 0x81, 0x01, 0x53, 0x01, 0x32, 0x01, 0x01, 0x53, 0x82, 0x01, 0x32, 0x01, 0x53, + 0x01, 0x33, 0x02, 0x01, 0x53, 0x02, 0x01, 0x73, 0x94, 0x01, 0xB4, 0x22, 0xB8, 0x33, 0x5A, 0x2B, 0x39, 0x12, 0x97, 0x0A, 0x15, 0x01, 0xB4, 0x01, 0x93, 0x01, 0x73, 0x01, 0x53, 0x01, 0x33, 0x01, 0x53, 0x01, 0x33, 0x01, 0x53, 0x01, 0x32, 0x01, 0x33, 0x01, 0x12, 0x01, 0x33, 0x01, 0x53, 0x01, 0x33, 0x01, 0x53, 0x01, 0x01, 0x33, 0x80, 0x01, 0x53, 0x03, 0x01, 0x33, 0x82, 0x01, 0x53, 0x01, 0x33, 0x01, 0x53, 0x01, 0x01, 0x33, 0x80, 0x01, 0x53, 0x01, 0x01, 0x33, 0x81, 0x01, 0x53, 0x01, 0x33, 0x01, 0x01, 0x53, 0x01, 0x01, 0x54, 0x82, 0x01, 0x33, 0x01, 0x54, 0x01, 0x74, 0x01, 0x01, 0x54, 0x80, 0x01, 0x74, 0x01, 0x01, 0x33, 0x81, 0x01, 0x54, 0x01, 0x33, 0x02, 0x01, 0x54, 0x02, 0x01, 0x33, 0x01, 0x01, 0x53, 0x01, 0x01, 0x33, 0x83, 0x01, 0x53, 0x01, 0x33, 0x01, 0x53, 0x01, 0x33, 0x01, 0x01, 0x53, 0x8A, 0x01, 0x73, 0x01, 0x93, 0x01, 0x94, 0x01, 0xD4, 0x1A, 0x97, 0x33, 0x7A, 0x2B, 0x39, 0x12, 0x97, 0x02, 0x15, 0x01, 0x94, 0x01, 0x73, 0x02, 0x01, 0x53, 0x80, 0x01, 0x33, 0x01, 0x01, 0x53, 0x80, 0x01, 0x33, 0x01, 0x01, 0x53, 0x82, 0x01, 0x54, 0x01, 0x53, 0x01, 0x74, 0x03, 0x01, 0x54, 0x80, 0x01, 0x34, 0x02, 0x01, 0x54, 0x06, 0x01, 0x34, 0x81, 0x01, 0x74, 0x01, 0x54, 0x01, 0x01, 0x34, 0x83, 0x01, 0x54, 0x01, 0x34, 0x01, 0x54, 0x01, 0x74, 0x02, 0x01, 0x54, 0x82, 0x01, 0x34, 0x01, 0x54, 0x01, 0x74, 0x01, 0x01, 0x33, 0x81, 0x01, 0x54, 0x01, 0x33, 0x04, 0x01, 0x54, 0x83, 0x01, 0x74, 0x01, 0x54, 0x01, 0x53, 0x01, 0x54, 0x02, 0x01, 0x53, 0x81, + 0x01, 0x73, 0x01, 0x53, 0x02, 0x01, 0x73, 0x87, 0x01, 0x93, 0x01, 0xB4, 0x12, 0x56, 0x33, 0x3A, 0x3B, 0x7B, 0x1A, 0x98, 0x01, 0xB4, 0x01, 0x73, 0x03, 0x01, 0x53, 0x04, 0x01, 0x54, 0x80, 0x01, 0x53, 0x02, 0x01, 0x54, 0x80, 0x01, 0x74, 0x02, 0x01, 0x54, 0x81, 0x01, 0x74, 0x01, 0x54, 0x01, 0x01, 0x74, 0x01, 0x01, 0x54, 0x02, 0x01, 0x74, 0x07, 0x01, 0x54, 0x03, 0x01, 0x74, 0x82, 0x01, 0x94, 0x01, 0x74, 0x01, 0x54, 0x02, 0x01, 0x74, 0x80, 0x01, 0x54, 0x02, 0x01, 0x74, 0x80, 0x01, 0x94, 0x01, 0x01, 0x74, 0x81, 0x01, 0x54, 0x01, 0x34, 0x01, 0x01, 0x54, 0x82, 0x01, 0x74, 0x01, 0x54, 0x01, 0x53, 0x02, 0x01, 0x74, 0x01, 0x01, 0x94, 0x8A, 0x01, 0xB4, 0x01, 0x94, 0x12, 0x57, 0x33, 0x9B, 0x1A, 0xD8, 0x01, 0xD5, 0x01, 0xB5, 0x01, 0xB4, 0x01, 0x94, 0x01, 0x74, 0x01, 0x54, 0x01, 0x01, 0x74, 0x82, 0x01, 0x54, 0x01, 0x74, 0x01, 0x75, 0x01, 0x01, 0x54, 0x86, 0x01, 0x75, 0x01, 0x54, 0x01, 0x75, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x01, 0x75, 0x06, 0x01, 0x74, 0x87, 0x01, 0x95, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x01, 0x75, 0x01, 0x54, 0x01, 0x74, 0x01, 0x54, 0x01, 0x01, 0x74, 0x8B, 0x01, 0x75, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x01, 0x75, 0x01, 0x54, 0x01, 0x74, 0x01, 0x54, 0x01, 0x75, 0x01, 0x95, 0x01, 0x74, 0x01, 0x54, 0x01, 0x01, 0x74, 0x81, 0x01, 0x75, 0x01, 0x74, 0x01, 0x01, 0x54, 0x01, 0x01, 0x74, 0x01, 0x01, 0x54, 0x81, 0x01, 0x74, 0x01, 0x54, 0x02, 0x01, 0x74, 0x80, 0x01, 0x53, 0x01, 0x01, 0x94, 0x86, 0x01, 0xB4, 0x0A, 0x36, + 0x33, 0x7B, 0x1A, 0xD9, 0x01, 0xD5, 0x01, 0x95, 0x01, 0x74, 0x02, 0x01, 0x54, 0x05, 0x01, 0x74, 0x82, 0x01, 0x54, 0x01, 0x75, 0x01, 0x54, 0x01, 0x01, 0x74, 0x04, 0x01, 0x75, 0x80, 0x01, 0x95, 0x01, 0x01, 0x75, 0x80, 0x01, 0x95, 0x04, 0x01, 0x75, 0x81, 0x01, 0x54, 0x01, 0x74, 0x02, 0x01, 0x75, 0x04, 0x01, 0x74, 0x81, 0x01, 0x95, 0x01, 0x74, 0x02, 0x01, 0x95, 0x01, 0x01, 0x74, 0x81, 0x01, 0x95, 0x01, 0x75, 0x06, 0x01, 0x74, 0x80, 0x01, 0x54, 0x01, 0x01, 0x74, 0x80, 0x01, 0x94, 0x05, 0x01, 0x74, 0x8A, 0x01, 0x94, 0x01, 0xB4, 0x3B, 0xBC, 0x22, 0xF9, 0x01, 0xF6, 0x01, 0xB5, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x04, 0x01, 0x75, 0x80, 0x01, 0x95, 0x01, 0x01, 0x55, 0x88, 0x01, 0x75, 0x01, 0x55, 0x01, 0x95, 0x01, 0x75, 0x01, 0x55, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x05, 0x01, 0x75, 0x80, 0x01, 0x95, 0x04, 0x01, 0x75, 0x80, 0x01, 0x74, 0x01, 0x01, 0x75, 0x82, 0x01, 0x95, 0x01, 0x75, 0x01, 0x74, 0x01, 0x01, 0x95, 0x80, 0x01, 0x74, 0x03, 0x01, 0x75, 0x80, 0x01, 0x95, 0x01, 0x01, 0x75, 0x83, 0x01, 0x74, 0x01, 0x95, 0x01, 0x75, 0x01, 0x74, 0x03, 0x01, 0x95, 0x02, 0x01, 0x75, 0x01, 0x01, 0x74, 0x80, 0x01, 0x94, 0x01, 0x01, 0x74, 0x83, 0x01, 0xD5, 0x33, 0x9B, 0x1A, 0xD9, 0x01, 0xF5, 0x01, 0x01, 0xB5, 0x80, 0x01, 0x94, 0x01, 0x01, 0x74, 0x07, 0x01, 0x75, 0x82, 0x01, 0x74, 0x01, 0x75, 0x01, 0x95, 0x04, 0x01, 0x75, 0x80, 0x01, 0x95, 0x02, 0x01, 0x75, 0x80, 0x01, 0x95, 0x02, 0x01, 0x75, 0x80, 0x01, + 0x95, 0x05, 0x01, 0x75, 0x80, 0x01, 0x95, 0x03, 0x01, 0x75, 0x82, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x02, 0x01, 0x75, 0x80, 0x01, 0x95, 0x02, 0x01, 0x75, 0x83, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x02, 0x01, 0x95, 0x05, 0x01, 0x75, 0x85, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x01, 0x54, 0x1A, 0xD9, 0x12, 0xB8, 0x02, 0x01, 0x95, 0x01, 0x01, 0x74, 0x80, 0x01, 0x95, 0x01, 0x01, 0x75, 0x81, 0x01, 0x95, 0x01, 0x75, 0x01, 0x01, 0x95, 0x02, 0x01, 0x75, 0x80, 0x01, 0x95, 0x01, 0x01, 0x75, 0x01, 0x01, 0x95, 0x81, 0x01, 0x75, 0x01, 0x95, 0x02, 0x01, 0x75, 0x81, 0x01, 0x95, 0x01, 0x75, 0x01, 0x01, 0x95, 0x05, 0x01, 0x75, 0x84, 0x01, 0x95, 0x01, 0x75, 0x01, 0x74, 0x01, 0x75, 0x01, 0x95, 0x01, 0x01, 0x75, 0x01, 0x01, 0x95, 0x01, 0x01, 0x75, 0x01, 0x01, 0x95, 0x06, 0x01, 0x75, 0x81, 0x01, 0x74, 0x01, 0x75, 0x03, 0x01, 0x95, 0x03, 0x01, 0x74, 0x81, 0x01, 0x94, 0x01, 0x95, 0x02, 0x01, 0x94, 0x86, 0x01, 0x95, 0x12, 0x78, 0x33, 0x9C, 0x01, 0xD5, 0x01, 0x94, 0x01, 0x74, 0x01, 0x75, 0x01, 0x01, 0x95, 0x01, 0x01, 0x74, 0x01, 0x01, 0x95, 0x03, 0x01, 0x75, 0x82, 0x01, 0x74, 0x01, 0x75, 0x01, 0x54, 0x01, 0x01, 0x75, 0x80, 0x01, 0x54, 0x02, 0x01, 0x75, 0x82, 0x01, 0x54, 0x01, 0x75, 0x01, 0x55, 0x02, 0x01, 0x75, 0x80, 0x01, 0x74, 0x02, 0x01, 0x75, 0x80, 0x01, 0x74, 0x02, 0x01, 0x75, 0x81, 0x01, 0x74, 0x01, 0x75, 0x02, 0x01, 0x74, 0x82, 0x01, 0x75, 0x01, 0x74, 0x01, 0x75, 0x01, 0x01, 0x74, 0x81, 0x01, 0x75, 0x01, 0x54, 0x01, 0x01, + 0x75, 0x82, 0x01, 0x54, 0x01, 0x75, 0x01, 0x54, 0x01, 0x01, 0x75, 0x02, 0x01, 0x54, 0x07, 0x01, 0x74, 0x01, 0x01, 0x94, 0x83, 0x12, 0x98, 0x33, 0x7B, 0x01, 0xB5, 0x01, 0x94, 0x02, 0x01, 0x74, 0x03, 0x01, 0x54, 0x02, 0x01, 0x74, 0x82, 0x01, 0x54, 0x01, 0x74, 0x01, 0x54, 0x01, 0x01, 0x75, 0x01, 0x01, 0x54, 0x82, 0x01, 0x74, 0x01, 0x54, 0x01, 0x75, 0x01, 0x01, 0x54, 0x81, 0x01, 0x55, 0x01, 0x75, 0x01, 0x01, 0x74, 0x01, 0x01, 0x75, 0x8A, 0x01, 0x74, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0xB5, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x01, 0x75, 0x01, 0x95, 0x09, 0x95, 0x01, 0x01, 0x95, 0x80, 0x01, 0xB5, 0x01, 0x09, 0xB5, 0x8B, 0x09, 0x95, 0x09, 0x75, 0x11, 0x54, 0x19, 0x54, 0x29, 0x54, 0x31, 0x13, 0x49, 0x53, 0x92, 0xD8, 0x9A, 0x56, 0xA2, 0x15, 0xA1, 0xF4, 0xA9, 0xF4, 0x01, 0xA9, 0xD3, 0x81, 0xB1, 0xD3, 0xB1, 0xF4, 0x01, 0xA9, 0xD3, 0x83, 0xB1, 0xD3, 0xB1, 0xF3, 0xA9, 0xB2, 0xB1, 0xD3, 0x01, 0xA9, 0xD3, 0x84, 0xA9, 0xB3, 0xA9, 0xD3, 0xB1, 0xF3, 0xA9, 0xD3, 0xB1, 0xF3, 0x02, 0xA9, 0xD3, 0x86, 0xAA, 0x14, 0xA2, 0x35, 0x9A, 0xB7, 0x61, 0xB4, 0x20, 0xB1, 0x19, 0x33, 0x09, 0x33, 0x01, 0x01, 0x54, 0x03, 0x01, 0x74, 0x05, 0x01, 0x54, 0x80, 0x01, 0x74, 0x03, 0x01, 0x54, 0x02, 0x01, 0x74, 0x01, 0x01, 0x54, 0x80, 0x01, 0x74, 0x04, 0x01, 0x54, 0x80, 0x01, 0x74, 0x01, 0x01, 0x54, 0x04, 0x01, 0x74, 0x84, 0x01, 0x54, 0x01, 0x74, 0x01, 0x54, 0x01, 0x53, 0x01, 0x74, 0x01, 0x01, 0x53, 0x01, 0x01, 0x74, 0x03, 0x01, 0x54, 0x01, 0x01, 0x53, + 0x01, 0x01, 0x74, 0x84, 0x01, 0x94, 0x01, 0xD5, 0x1A, 0xD9, 0x2B, 0x3A, 0x12, 0x77, 0x01, 0x01, 0x94, 0x80, 0x01, 0x74, 0x02, 0x01, 0x53, 0x01, 0x01, 0x54, 0x80, 0x01, 0x74, 0x02, 0x01, 0x54, 0x80, 0x01, 0x74, 0x07, 0x01, 0x54, 0x80, 0x01, 0x34, 0x01, 0x01, 0x54, 0x01, 0x01, 0x33, 0x81, 0x01, 0x54, 0x01, 0x33, 0x01, 0x01, 0x54, 0x80, 0x01, 0x34, 0x01, 0x01, 0x54, 0x02, 0x01, 0x33, 0x01, 0x01, 0x53, 0x02, 0x01, 0x33, 0x01, 0x01, 0x54, 0x05, 0x01, 0x53, 0x81, 0x01, 0x33, 0x01, 0x74, 0x04, 0x01, 0x53, 0x80, 0x01, 0x73, 0x02, 0x01, 0x53, 0x80, 0x01, 0x73, 0x01, 0x01, 0x53, 0x8C, 0x01, 0x74, 0x01, 0x73, 0x01, 0x74, 0x01, 0x73, 0x09, 0xF5, 0x22, 0xD8, 0x33, 0x3A, 0x12, 0x16, 0x01, 0x94, 0x01, 0x74, 0x01, 0x73, 0x01, 0x53, 0x01, 0x73, 0x03, 0x01, 0x53, 0x80, 0x01, 0x73, 0x03, 0x01, 0x53, 0x81, 0x01, 0x33, 0x01, 0x53, 0x01, 0x01, 0x33, 0x80, 0x01, 0x53, 0x07, 0x01, 0x33, 0x80, 0x01, 0x53, 0x08, 0x01, 0x33, 0x86, 0x01, 0x53, 0x01, 0x33, 0x01, 0x53, 0x01, 0x33, 0x01, 0x54, 0x01, 0x53, 0x01, 0x33, 0x01, 0x01, 0x53, 0x80, 0x01, 0x33, 0x01, 0x01, 0x53, 0x01, 0x01, 0x33, 0x80, 0x01, 0x53, 0x03, 0x01, 0x33, 0x01, 0x01, 0x53, 0x01, 0x01, 0x33, 0x81, 0x01, 0x53, 0x01, 0x52, 0x01, 0x01, 0x53, 0x01, 0x01, 0x73, 0x86, 0x01, 0xB4, 0x0A, 0x15, 0x22, 0xF8, 0x2B, 0x19, 0x1A, 0x97, 0x01, 0xB4, 0x01, 0x93, 0x01, 0x01, 0x73, 0x01, 0x01, 0x52, 0x80, 0x01, 0x32, 0x01, 0x01, 0x33, 0x80, 0x01, 0x32, 0x03, 0x01, 0x33, 0x81, 0x01, 0x53, 0x01, 0x33, + 0x01, 0x01, 0x53, 0x81, 0x01, 0x33, 0x01, 0x53, 0x08, 0x01, 0x33, 0x81, 0x01, 0x32, 0x01, 0x33, 0x01, 0x01, 0x32, 0x82, 0x01, 0x12, 0x01, 0x33, 0x01, 0x53, 0x07, 0x01, 0x33, 0x80, 0x01, 0x53, 0x02, 0x01, 0x33, 0x80, 0x01, 0x32, 0x02, 0x01, 0x33, 0x02, 0x01, 0x32, 0x82, 0x01, 0x33, 0x01, 0x32, 0x01, 0x33, 0x02, 0x01, 0x32, 0x01, 0x01, 0x52, 0x01, 0x01, 0x53, 0x84, 0x01, 0x73, 0x01, 0x93, 0x09, 0xF5, 0x01, 0xF5, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x01, 0x01, 0x33, 0x04, 0x01, 0x12, 0x81, 0x00, 0xF2, 0x01, 0x12, 0x01, 0x01, 0x32, 0x02, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x52, 0x89, 0x01, 0x72, 0x01, 0xB3, 0x12, 0x35, 0x2A, 0xF8, 0x33, 0x5A, 0x2A, 0xF9, 0x12, 0x36, 0x01, 0x72, 0x01, 0x52, 0x01, 0x73, 0x01, 0x01, 0x53, 0x81, 0x01, 0x12, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x01, 0x01, 0x32, 0x02, 0x01, 0x33, 0x80, 0x01, 0x13, 0x01, 0x01, 0x12, 0x80, 0x01, 0x13, 0x02, 0x01, 0x33, 0x01, 0x01, 0x13, 0x05, 0x01, 0x33, 0x82, 0x01, 0x13, 0x01, 0x33, 0x01, 0x12, 0x05, 0x01, 0x33, 0x80, 0x01, 0x53, 0x01, 0x01, 0x33, 0x81, 0x01, 0x12, 0x01, 0x13, 0x01, 0x01, 0x33, 0x80, 0x01, 0x53, 0x02, 0x01, 0x33, 0x80, 0x01, 0x12, 0x01, 0x01, 0x13, 0x81, 0x01, 0x33, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x33, 0x03, 0x01, 0x32, 0x84, 0x01, 0x33, 0x01, 0x53, 0x01, 0x73, 0x01, 0xD4, 0x12, 0x77, 0x01, 0x2B, 0x19, 0x82, 0x1A, 0x77, 0x01, 0xB4, 0x01, 0x73, 0x01, 0x01, 0x53, 0x01, 0x01, 0x32, 0x01, 0x01, 0x12, 0x82, 0x01, 0x33, 0x01, + 0x13, 0x01, 0x33, 0x01, 0x01, 0x13, 0x05, 0x01, 0x33, 0x81, 0x01, 0x13, 0x01, 0x34, 0x05, 0x01, 0x33, 0x81, 0x01, 0x13, 0x01, 0x34, 0x01, 0x01, 0x33, 0x01, 0x01, 0x34, 0x80, 0x01, 0x33, 0x02, 0x01, 0x13, 0x02, 0x01, 0x33, 0x02, 0x01, 0x13, 0x02, 0x01, 0x54, 0x03, 0x01, 0x33, 0x81, 0x01, 0x53, 0x01, 0x13, 0x01, 0x01, 0x33, 0x80, 0x01, 0x53, 0x02, 0x01, 0x33, 0x81, 0x01, 0x53, 0x01, 0x33, 0x03, 0x01, 0x53, 0x01, 0x01, 0x73, 0x86, 0x01, 0xB4, 0x0A, 0x15, 0x22, 0xB8, 0x33, 0x3A, 0x22, 0xB8, 0x09, 0xD5, 0x01, 0x33, 0x01, 0x01, 0x32, 0x07, 0x01, 0x33, 0x81, 0x01, 0x53, 0x01, 0x54, 0x02, 0x01, 0x33, 0x80, 0x01, 0x54, 0x03, 0x01, 0x33, 0x01, 0x01, 0x53, 0x01, 0x01, 0x33, 0x01, 0x01, 0x53, 0x81, 0x01, 0x33, 0x01, 0x54, 0x0B, 0x01, 0x33, 0x01, 0x01, 0x53, 0x81, 0x01, 0x54, 0x01, 0x53, 0x01, 0x01, 0x74, 0x80, 0x01, 0x54, 0x01, 0x01, 0x33, 0x01, 0x01, 0x53, 0x82, 0x01, 0x54, 0x01, 0x53, 0x01, 0x33, 0x01, 0x01, 0x54, 0x02, 0x01, 0x33, 0x80, 0x01, 0x53, 0x01, 0x01, 0x73, 0x89, 0x01, 0x53, 0x01, 0x73, 0x01, 0x93, 0x01, 0xD4, 0x2B, 0x19, 0x33, 0x7B, 0x0A, 0x15, 0x01, 0xB4, 0x01, 0xD5, 0x01, 0x73, 0x05, 0x01, 0x53, 0x03, 0x01, 0x54, 0x87, 0x01, 0x34, 0x01, 0x54, 0x01, 0x34, 0x01, 0x54, 0x01, 0x34, 0x01, 0x54, 0x01, 0x33, 0x01, 0x54, 0x02, 0x01, 0x34, 0x01, 0x01, 0x54, 0x80, 0x01, 0x34, 0x01, 0x01, 0x54, 0x81, 0x01, 0x33, 0x01, 0x34, 0x03, 0x01, 0x54, 0x80, 0x01, 0x33, 0x01, 0x01, 0x34, 0x84, 0x01, 0x54, 0x01, 0x34, 0x01, 0x54, 0x01, + 0x34, 0x01, 0x54, 0x01, 0x01, 0x34, 0x01, 0x01, 0x54, 0x81, 0x01, 0x74, 0x01, 0x54, 0x02, 0x01, 0x34, 0x81, 0x01, 0x54, 0x01, 0x34, 0x02, 0x01, 0x54, 0x02, 0x01, 0x33, 0x01, 0x01, 0x53, 0x80, 0x01, 0x74, 0x01, 0x01, 0x33, 0x89, 0x01, 0x53, 0x01, 0x74, 0x01, 0xB4, 0x0A, 0x16, 0x33, 0x5B, 0x22, 0xD9, 0x01, 0x94, 0x01, 0x73, 0x01, 0x74, 0x01, 0x54, 0x01, 0x01, 0x53, 0x02, 0x01, 0x54, 0x80, 0x01, 0x53, 0x08, 0x01, 0x54, 0x80, 0x01, 0x74, 0x01, 0x01, 0x54, 0x80, 0x01, 0x34, 0x01, 0x01, 0x54, 0x80, 0x01, 0x74, 0x02, 0x01, 0x54, 0x80, 0x01, 0x34, 0x01, 0x01, 0x54, 0x80, 0x01, 0x34, 0x01, 0x01, 0x54, 0x80, 0x01, 0x74, 0x04, 0x01, 0x54, 0x01, 0x01, 0x74, 0x80, 0x01, 0x54, 0x01, 0x01, 0x74, 0x07, 0x01, 0x54, 0x01, 0x01, 0x34, 0x01, 0x01, 0x54, 0x83, 0x01, 0x75, 0x01, 0x74, 0x01, 0x53, 0x01, 0x54, 0x05, 0x01, 0x53, 0x85, 0x01, 0x94, 0x2B, 0x19, 0x2B, 0x3A, 0x01, 0xD5, 0x01, 0xB5, 0x01, 0x54, 0x01, 0x01, 0x33, 0x02, 0x01, 0x54, 0x80, 0x01, 0x75, 0x02, 0x01, 0x34, 0x03, 0x01, 0x54, 0x01, 0x01, 0x34, 0x05, 0x01, 0x54, 0x80, 0x01, 0x75, 0x06, 0x01, 0x54, 0x80, 0x01, 0x74, 0x02, 0x01, 0x54, 0x80, 0x01, 0x74, 0x02, 0x01, 0x54, 0x80, 0x01, 0x74, 0x04, 0x01, 0x54, 0x04, 0x01, 0x74, 0x02, 0x01, 0x54, 0x80, 0x01, 0x74, 0x02, 0x01, 0x54, 0x02, 0x01, 0x74, 0x02, 0x01, 0x54, 0x87, 0x01, 0x74, 0x01, 0x54, 0x01, 0x53, 0x01, 0x74, 0x01, 0x94, 0x01, 0xF5, 0x3B, 0xFD, 0x0A, 0x16, 0x01, 0x01, 0x94, 0x86, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x01, + 0x53, 0x01, 0x33, 0x01, 0x34, 0x01, 0x75, 0x02, 0x01, 0x54, 0x84, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x04, 0x01, 0x54, 0x01, 0x01, 0x74, 0x01, 0x01, 0x54, 0x80, 0x01, 0x74, 0x02, 0x01, 0x54, 0x84, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x01, 0x54, 0x01, 0x74, 0x08, 0x01, 0x54, 0x80, 0x01, 0x74, 0x02, 0x01, 0x54, 0x82, 0x01, 0x75, 0x01, 0x54, 0x01, 0x74, 0x02, 0x01, 0x54, 0x80, 0x01, 0x74, 0x02, 0x01, 0x54, 0x80, 0x01, 0x95, 0x03, 0x01, 0x54, 0x80, 0x01, 0x74, 0x01, 0x01, 0x54, 0x84, 0x01, 0x33, 0x01, 0x54, 0x01, 0x53, 0x22, 0xD9, 0x12, 0x77, 0x03, 0x01, 0x74, 0x02, 0x01, 0x54, 0x80, 0x01, 0x74, 0x05, 0x01, 0x54, 0x80, 0x01, 0x74, 0x02, 0x01, 0x75, 0x02, 0x01, 0x54, 0x80, 0x01, 0x74, 0x02, 0x01, 0x54, 0x80, 0x01, 0x55, 0x02, 0x01, 0x54, 0x80, 0x01, 0x74, 0x01, 0x01, 0x54, 0x01, 0x01, 0x74, 0x01, 0x01, 0x54, 0x81, 0x01, 0x74, 0x01, 0x54, 0x01, 0x01, 0x74, 0x01, 0x01, 0x54, 0x01, 0x01, 0x74, 0x01, 0x01, 0x54, 0x01, 0x01, 0x74, 0x06, 0x01, 0x54, 0x81, 0x01, 0x74, 0x01, 0x54, 0x02, 0x01, 0x74, 0x01, 0x01, 0x54, 0x02, 0x01, 0x74, 0x02, 0x01, 0x54, 0x02, 0x01, 0x74, 0x83, 0x01, 0x94, 0x2B, 0x1A, 0x0A, 0x36, 0x01, 0x53, 0x02, 0x01, 0x54, 0x01, 0x01, 0x74, 0x80, 0x01, 0x53, 0x05, 0x01, 0x54, 0x80, 0x01, 0x74, 0x03, 0x01, 0x54, 0x02, 0x01, 0x34, 0x81, 0x01, 0x54, 0x01, 0x34, 0x01, 0x01, 0x54, 0x80, 0x01, 0x34, 0x19, 0x01, 0x54, 0x02, 0x01, 0x34, 0x01, 0x01, 0x54, 0x81, 0x01, 0x74, 0x01, 0x54, 0x02, 0x01, + 0x53, 0x03, 0x01, 0x74, 0x80, 0x01, 0x73, 0x01, 0x01, 0x94, 0x84, 0x2A, 0xF9, 0x22, 0xD9, 0x01, 0x94, 0x01, 0x74, 0x01, 0x53, 0x01, 0x01, 0x74, 0x01, 0x01, 0x54, 0x80, 0x01, 0x33, 0x01, 0x01, 0x34, 0x01, 0x01, 0x54, 0x82, 0x01, 0x34, 0x01, 0x33, 0x01, 0x34, 0x01, 0x01, 0x54, 0x03, 0x01, 0x34, 0x04, 0x01, 0x54, 0x80, 0x01, 0x74, 0x03, 0x01, 0x54, 0x81, 0x01, 0x34, 0x01, 0x54, 0x01, 0x01, 0x74, 0x03, 0x01, 0x54, 0x01, 0x01, 0x75, 0x02, 0x01, 0x74, 0x82, 0x09, 0x95, 0x09, 0x75, 0x09, 0x74, 0x01, 0x11, 0x54, 0x8B, 0x21, 0x74, 0x31, 0x54, 0x38, 0xF1, 0x7A, 0x56, 0xA2, 0xD8, 0x9A, 0x15, 0xA1, 0xD4, 0xA9, 0xF4, 0xA9, 0xD3, 0xB1, 0xD3, 0xA9, 0xB3, 0xB1, 0xF3, 0x01, 0xA9, 0xD3, 0x80, 0xA9, 0xB3, 0x03, 0xA9, 0xD3, 0x81, 0xA9, 0xF3, 0xA9, 0xD3, 0x01, 0xB1, 0xD3, 0x80, 0xB1, 0xF4, 0x03, 0xA9, 0xD3, 0x89, 0xAA, 0x14, 0xA2, 0x56, 0x9A, 0xB7, 0x72, 0x15, 0x20, 0xB0, 0x19, 0x33, 0x11, 0x54, 0x09, 0x54, 0x01, 0x33, 0x01, 0x54, 0x01, 0x01, 0x34, 0x80, 0x01, 0x33, 0x02, 0x01, 0x54, 0x81, 0x01, 0x74, 0x01, 0x54, 0x01, 0x01, 0x33, 0x80, 0x01, 0x53, 0x02, 0x01, 0x54, 0x01, 0x01, 0x53, 0x81, 0x01, 0x54, 0x01, 0x74, 0x01, 0x01, 0x53, 0x04, 0x01, 0x33, 0x80, 0x01, 0x54, 0x01, 0x01, 0x53, 0x02, 0x01, 0x33, 0x80, 0x01, 0x53, 0x01, 0x01, 0x33, 0x01, 0x01, 0x53, 0x85, 0x01, 0x33, 0x01, 0x53, 0x01, 0x33, 0x01, 0x53, 0x01, 0x33, 0x01, 0x53, 0x05, 0x01, 0x33, 0x01, 0x01, 0x53, 0x02, 0x01, 0x73, 0x85, 0x12, 0x37, 0x33, 0x3A, 0x22, 0xD9, 0x01, 0xD5, + 0x01, 0x74, 0x01, 0x73, 0x02, 0x01, 0x53, 0x02, 0x01, 0x33, 0x80, 0x01, 0x53, 0x03, 0x01, 0x33, 0x81, 0x01, 0x53, 0x01, 0x54, 0x06, 0x01, 0x33, 0x02, 0x01, 0x13, 0x01, 0x01, 0x33, 0x01, 0x01, 0x13, 0x08, 0x01, 0x33, 0x80, 0x01, 0x53, 0x02, 0x01, 0x33, 0x80, 0x01, 0x53, 0x09, 0x01, 0x33, 0x82, 0x01, 0x32, 0x01, 0x53, 0x01, 0x32, 0x01, 0x01, 0x33, 0x80, 0x01, 0x32, 0x01, 0x01, 0x33, 0x82, 0x01, 0x53, 0x01, 0x33, 0x01, 0x73, 0x02, 0x01, 0x53, 0x84, 0x12, 0x15, 0x33, 0x3A, 0x33, 0x19, 0x12, 0x16, 0x01, 0x94, 0x03, 0x01, 0x53, 0x80, 0x01, 0x33, 0x01, 0x01, 0x53, 0x80, 0x01, 0x32, 0x01, 0x01, 0x33, 0x80, 0x01, 0x53, 0x03, 0x01, 0x12, 0x87, 0x01, 0x13, 0x01, 0x33, 0x01, 0x13, 0x01, 0x33, 0x01, 0x12, 0x01, 0x13, 0x01, 0x33, 0x01, 0x32, 0x01, 0x01, 0x12, 0x01, 0x01, 0x33, 0x04, 0x01, 0x13, 0x02, 0x01, 0x33, 0x80, 0x01, 0x13, 0x03, 0x01, 0x33, 0x80, 0x01, 0x53, 0x01, 0x01, 0x33, 0x01, 0x01, 0x32, 0x03, 0x01, 0x33, 0x01, 0x01, 0x32, 0x82, 0x01, 0x12, 0x01, 0x33, 0x01, 0x12, 0x01, 0x01, 0x32, 0x80, 0x01, 0x12, 0x03, 0x01, 0x32, 0x80, 0x01, 0x53, 0x02, 0x01, 0x52, 0x86, 0x01, 0x73, 0x12, 0x15, 0x22, 0xD8, 0x2B, 0x19, 0x1A, 0x77, 0x01, 0xD4, 0x01, 0x93, 0x01, 0x01, 0x52, 0x02, 0x01, 0x32, 0x01, 0x01, 0x12, 0x0A, 0x01, 0x32, 0x82, 0x01, 0x33, 0x01, 0x32, 0x01, 0x12, 0x02, 0x01, 0x32, 0x02, 0x01, 0x33, 0x06, 0x01, 0x12, 0x02, 0x01, 0x13, 0x81, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x33, 0x81, 0x01, 0x12, 0x01, 0x33, 0x01, 0x01, 0x12, + 0x01, 0x01, 0x32, 0x81, 0x01, 0x33, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x52, 0x82, 0x01, 0x73, 0x01, 0x52, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x01, 0x01, 0x33, 0x03, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x03, 0x01, 0x12, 0x04, 0x01, 0x32, 0x86, 0x01, 0x93, 0x1A, 0x76, 0x33, 0x39, 0x2B, 0x19, 0x1A, 0x56, 0x01, 0xB3, 0x01, 0x52, 0x01, 0x01, 0x32, 0x80, 0x01, 0x52, 0x03, 0x01, 0x12, 0x81, 0x00, 0xF2, 0x00, 0xF1, 0x02, 0x01, 0x12, 0x02, 0x01, 0x32, 0x80, 0x01, 0x33, 0x01, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x12, 0x01, 0x01, 0x33, 0x03, 0x01, 0x12, 0x80, 0x01, 0x33, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, 0x01, 0x32, 0x82, 0x01, 0x33, 0x01, 0x12, 0x01, 0x32, 0x03, 0x01, 0x12, 0x01, 0x01, 0x33, 0x83, 0x01, 0x32, 0x01, 0x33, 0x01, 0x12, 0x00, 0xF2, 0x05, 0x01, 0x12, 0x05, 0x01, 0x32, 0x87, 0x01, 0x52, 0x09, 0xD4, 0x2A, 0xD8, 0x33, 0x3A, 0x22, 0xB7, 0x0A, 0x15, 0x01, 0x93, 0x01, 0x52, 0x02, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x04, 0x01, 0x12, 0x81, 0x01, 0x33, 0x01, 0x13, 0x01, 0x01, 0x33, 0x80, 0x01, 0x12, 0x02, 0x01, 0x33, 0x80, 0x01, 0x13, 0x05, 0x01, 0x33, 0x01, 0x01, 0x13, 0x80, 0x01, 0x33, 0x01, 0x01, 0x13, 0x80, 0x01, 0x33, 0x08, 0x01, 0x13, 0x03, 0x01, 0x33, 0x80, 0x01, 0x13, 0x02, 0x01, 0x33, 0x01, 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, 0x01, 0x32, + 0x01, 0x01, 0x33, 0x80, 0x01, 0x32, 0x01, 0x01, 0x33, 0x80, 0x01, 0x53, 0x01, 0x01, 0x52, 0x88, 0x01, 0x53, 0x01, 0x73, 0x0A, 0x15, 0x22, 0xD8, 0x33, 0x3A, 0x22, 0x97, 0x09, 0xB4, 0x01, 0x53, 0x01, 0x32, 0x04, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x12, 0x81, 0x01, 0x13, 0x01, 0x53, 0x04, 0x01, 0x33, 0x82, 0x01, 0x13, 0x01, 0x33, 0x01, 0x13, 0x10, 0x01, 0x33, 0x01, 0x01, 0x13, 0x81, 0x01, 0x33, 0x01, 0x13, 0x08, 0x01, 0x33, 0x80, 0x01, 0x13, 0x08, 0x01, 0x33, 0x80, 0x01, 0x32, 0x02, 0x01, 0x53, 0x85, 0x01, 0x73, 0x01, 0x53, 0x12, 0x36, 0x43, 0xBC, 0x22, 0xB8, 0x01, 0xB4, 0x01, 0x01, 0x93, 0x01, 0x01, 0x53, 0x80, 0x01, 0x33, 0x01, 0x01, 0x32, 0x03, 0x01, 0x33, 0x81, 0x01, 0x54, 0x01, 0x33, 0x02, 0x01, 0x34, 0x05, 0x01, 0x33, 0x83, 0x01, 0x13, 0x01, 0x54, 0x01, 0x33, 0x01, 0x34, 0x06, 0x01, 0x33, 0x80, 0x01, 0x53, 0x07, 0x01, 0x33, 0x02, 0x01, 0x34, 0x06, 0x01, 0x33, 0x80, 0x01, 0x13, 0x04, 0x01, 0x33, 0x01, 0x01, 0x13, 0x81, 0x01, 0x33, 0x01, 0x53, 0x03, 0x01, 0x33, 0x85, 0x01, 0x73, 0x01, 0x94, 0x0A, 0x15, 0x33, 0x7B, 0x1A, 0x77, 0x01, 0x94, 0x01, 0x01, 0x53, 0x03, 0x01, 0x33, 0x81, 0x01, 0x53, 0x01, 0x54, 0x01, 0x01, 0x33, 0x80, 0x01, 0x54, 0x01, 0x01, 0x33, 0x82, 0x01, 0x53, 0x01, 0x33, 0x01, 0x54, 0x02, 0x01, 0x33, 0x80, 0x01, 0x54, 0x02, 0x01, 0x33, 0x81, 0x01, 0x34, 0x01, 0x33, 0x01, 0x01, 0x34, 0x84, 0x01, 0x13, 0x01, 0x33, 0x01, 0x34, 0x01, 0x33, 0x01, 0x34, 0x01, 0x01, 0x33, 0x01, 0x01, 0x34, 0x02, 0x01, + 0x33, 0x81, 0x01, 0x54, 0x01, 0x33, 0x03, 0x01, 0x53, 0x80, 0x01, 0x54, 0x0A, 0x01, 0x33, 0x81, 0x01, 0x53, 0x01, 0x54, 0x03, 0x01, 0x33, 0x01, 0x01, 0x53, 0x87, 0x01, 0x33, 0x01, 0x73, 0x01, 0x53, 0x0A, 0x16, 0x3B, 0x7B, 0x01, 0xB4, 0x01, 0x74, 0x01, 0x53, 0x03, 0x01, 0x33, 0x01, 0x01, 0x54, 0x02, 0x01, 0x33, 0x80, 0x01, 0x13, 0x02, 0x01, 0x33, 0x80, 0x01, 0x54, 0x01, 0x01, 0x34, 0x01, 0x01, 0x54, 0x03, 0x01, 0x34, 0x81, 0x01, 0x54, 0x01, 0x33, 0x04, 0x01, 0x34, 0x81, 0x01, 0x33, 0x01, 0x54, 0x01, 0x01, 0x53, 0x81, 0x01, 0x33, 0x01, 0x54, 0x01, 0x01, 0x53, 0x81, 0x01, 0x33, 0x01, 0x54, 0x01, 0x01, 0x53, 0x01, 0x01, 0x33, 0x80, 0x01, 0x54, 0x01, 0x01, 0x53, 0x80, 0x01, 0x54, 0x01, 0x01, 0x53, 0x80, 0x01, 0x33, 0x01, 0x01, 0x54, 0x80, 0x01, 0x33, 0x04, 0x01, 0x54, 0x81, 0x01, 0x53, 0x01, 0x33, 0x01, 0x01, 0x53, 0x80, 0x01, 0x54, 0x01, 0x01, 0x53, 0x01, 0x01, 0x73, 0x83, 0x12, 0x77, 0x33, 0x9B, 0x01, 0x73, 0x01, 0x74, 0x01, 0x01, 0x53, 0x03, 0x01, 0x33, 0x04, 0x01, 0x34, 0x04, 0x01, 0x54, 0x02, 0x01, 0x34, 0x01, 0x01, 0x54, 0x02, 0x01, 0x34, 0x02, 0x01, 0x54, 0x80, 0x01, 0x34, 0x02, 0x01, 0x54, 0x01, 0x01, 0x34, 0x01, 0x01, 0x54, 0x80, 0x01, 0x34, 0x01, 0x01, 0x54, 0x01, 0x01, 0x34, 0x80, 0x01, 0x54, 0x02, 0x01, 0x34, 0x09, 0x01, 0x54, 0x80, 0x01, 0x34, 0x03, 0x01, 0x54, 0x01, 0x01, 0x33, 0x80, 0x01, 0x54, 0x05, 0x01, 0x33, 0x81, 0x22, 0xD8, 0x12, 0x56, 0x03, 0x01, 0x53, 0x80, 0x01, 0x33, 0x02, 0x01, 0x53, 0x86, 0x01, + 0x54, 0x01, 0x34, 0x01, 0x33, 0x01, 0x54, 0x01, 0x34, 0x01, 0x54, 0x01, 0x34, 0x01, 0x01, 0x54, 0x80, 0x01, 0x34, 0x01, 0x01, 0x54, 0x81, 0x01, 0x33, 0x01, 0x54, 0x03, 0x01, 0x34, 0x80, 0x01, 0x53, 0x01, 0x01, 0x54, 0x01, 0x01, 0x33, 0x80, 0x01, 0x54, 0x01, 0x01, 0x33, 0x01, 0x01, 0x34, 0x81, 0x01, 0x33, 0x01, 0x54, 0x01, 0x01, 0x53, 0x81, 0x01, 0x34, 0x01, 0x54, 0x02, 0x01, 0x34, 0x01, 0x01, 0x54, 0x01, 0x01, 0x33, 0x85, 0x01, 0x54, 0x01, 0x53, 0x01, 0x54, 0x01, 0x33, 0x01, 0x54, 0x01, 0x53, 0x01, 0x01, 0x54, 0x81, 0x01, 0x33, 0x01, 0x53, 0x02, 0x01, 0x54, 0x01, 0x01, 0x53, 0x80, 0x01, 0x54, 0x02, 0x01, 0x33, 0x85, 0x01, 0x53, 0x01, 0x74, 0x01, 0x53, 0x01, 0x73, 0x0A, 0x16, 0x22, 0xD9, 0x01, 0x01, 0x53, 0x87, 0x01, 0x33, 0x01, 0x54, 0x01, 0x53, 0x01, 0x54, 0x01, 0x33, 0x01, 0x53, 0x01, 0x33, 0x01, 0x54, 0x0A, 0x01, 0x33, 0x01, 0x01, 0x34, 0x82, 0x01, 0x33, 0x01, 0x34, 0x01, 0x54, 0x02, 0x01, 0x34, 0x80, 0x01, 0x54, 0x02, 0x01, 0x34, 0x80, 0x01, 0x33, 0x01, 0x01, 0x34, 0x81, 0x01, 0x33, 0x01, 0x34, 0x04, 0x01, 0x33, 0x80, 0x01, 0x54, 0x04, 0x01, 0x33, 0x01, 0x01, 0x54, 0x01, 0x01, 0x33, 0x81, 0x01, 0x34, 0x01, 0x33, 0x01, 0x01, 0x54, 0x80, 0x01, 0x33, 0x02, 0x01, 0x53, 0x80, 0x01, 0x74, 0x05, 0x01, 0x53, 0x85, 0x01, 0x73, 0x01, 0x94, 0x2A, 0xF9, 0x12, 0x36, 0x01, 0x73, 0x01, 0x74, 0x02, 0x01, 0x53, 0x03, 0x01, 0x33, 0x81, 0x01, 0x54, 0x01, 0x34, 0x01, 0x01, 0x13, 0x01, 0x01, 0x33, 0x80, 0x01, 0x34, 0x02, 0x01, 0x33, + 0x80, 0x01, 0x34, 0x01, 0x01, 0x33, 0x83, 0x01, 0x54, 0x01, 0x34, 0x01, 0x33, 0x01, 0x34, 0x01, 0x01, 0x33, 0x80, 0x01, 0x53, 0x01, 0x01, 0x33, 0x81, 0x01, 0x54, 0x01, 0x53, 0x04, 0x01, 0x54, 0x01, 0x01, 0x34, 0x01, 0x01, 0x74, 0x93, 0x01, 0x54, 0x01, 0x74, 0x01, 0x54, 0x09, 0x54, 0x11, 0x74, 0x11, 0x54, 0x19, 0x33, 0x29, 0x53, 0x28, 0xD1, 0x59, 0x73, 0xA2, 0xF8, 0x9A, 0x15, 0xA1, 0xF4, 0xA9, 0xF4, 0xA9, 0xF3, 0xB1, 0xF3, 0xA9, 0xD3, 0xA9, 0xB2, 0xB1, 0xD3, 0xB1, 0xF3, 0x01, 0xA9, 0xD3, 0x82, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0x03, 0xA9, 0xD3, 0x01, 0xB1, 0xD3, 0x8A, 0xA9, 0xD3, 0xB1, 0xF4, 0xA9, 0xF4, 0xAA, 0x14, 0xA2, 0x55, 0x9A, 0x76, 0x72, 0x15, 0x18, 0x4F, 0x19, 0x12, 0x09, 0x12, 0x01, 0x13, 0x03, 0x01, 0x33, 0x81, 0x01, 0x13, 0x01, 0x54, 0x03, 0x01, 0x33, 0x83, 0x01, 0x13, 0x01, 0x54, 0x01, 0x33, 0x01, 0x53, 0x02, 0x01, 0x33, 0x80, 0x01, 0x53, 0x1D, 0x01, 0x33, 0x01, 0x01, 0x12, 0x03, 0x01, 0x33, 0x01, 0x01, 0x53, 0x83, 0x01, 0x94, 0x1A, 0x77, 0x33, 0x5B, 0x12, 0x16, 0x01, 0x01, 0x73, 0x01, 0x01, 0x53, 0x84, 0x01, 0x33, 0x01, 0x32, 0x01, 0x33, 0x01, 0x53, 0x01, 0x33, 0x02, 0x01, 0x13, 0x01, 0x01, 0x33, 0x02, 0x01, 0x13, 0x82, 0x01, 0x33, 0x01, 0x13, 0x01, 0x33, 0x01, 0x01, 0x13, 0x82, 0x01, 0x33, 0x01, 0x13, 0x01, 0x33, 0x02, 0x01, 0x13, 0x04, 0x01, 0x33, 0x81, 0x01, 0x32, 0x01, 0x12, 0x02, 0x01, 0x33, 0x01, 0x01, 0x13, 0x02, 0x01, 0x32, 0x03, 0x01, 0x33, 0x03, 0x01, 0x32, 0x80, 0x01, 0x12, 0x04, 0x01, 0x32, + 0x01, 0x01, 0x12, 0x01, 0x01, 0x32, 0x8F, 0x01, 0x33, 0x01, 0x32, 0x01, 0x33, 0x01, 0x53, 0x01, 0x33, 0x01, 0x52, 0x01, 0x53, 0x09, 0xD4, 0x2A, 0xD9, 0x33, 0x3A, 0x09, 0xB4, 0x01, 0x73, 0x01, 0x52, 0x01, 0x32, 0x01, 0x53, 0x01, 0x52, 0x02, 0x01, 0x32, 0x01, 0x01, 0x33, 0x81, 0x01, 0x12, 0x01, 0x13, 0x03, 0x01, 0x12, 0x80, 0x01, 0x33, 0x05, 0x01, 0x12, 0x80, 0x01, 0x33, 0x07, 0x01, 0x12, 0x82, 0x01, 0x33, 0x01, 0x12, 0x01, 0x13, 0x01, 0x01, 0x12, 0x84, 0x01, 0x13, 0x01, 0x12, 0x01, 0x13, 0x01, 0x33, 0x01, 0x12, 0x01, 0x01, 0x32, 0x0D, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x12, 0x03, 0x01, 0x32, 0x86, 0x01, 0x52, 0x01, 0xB3, 0x12, 0x56, 0x2A, 0xF8, 0x2B, 0x19, 0x09, 0xF4, 0x01, 0x72, 0x01, 0x01, 0x52, 0x02, 0x01, 0x32, 0x01, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x12, 0x06, 0x01, 0x32, 0x82, 0x01, 0x12, 0x01, 0x32, 0x01, 0x12, 0x01, 0x01, 0x32, 0x07, 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, 0x01, 0x12, 0x80, 0x01, 0x33, 0x05, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x12, 0x83, 0x00, 0xF2, 0x01, 0x12, 0x00, 0xF2, 0x01, 0x12, 0x02, 0x00, 0xF2, 0x04, 0x01, 0x12, 0x02, 0x01, 0x32, 0x82, 0x01, 0x52, 0x01, 0x32, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x80, 0x00, 0xF1, 0x04, 0x01, 0x12, 0x02, 0x01, 0x32, 0x02, 0x01, 0x52, 0x87, 0x01, 0x72, 0x01, 0x93, 0x11, 0xF4, 0x22, 0x97, 0x33, 0x19, 0x32, 0xF8, 0x09, 0xB4, 0x01, 0x32, 0x01, 0x01, 0x11, 0x01, 0x01, 0x12, 0x01, 0x01, 0x11, 0x01, + 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x02, 0x01, 0x32, 0x0D, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x12, 0x01, 0x01, 0x32, 0x81, 0x01, 0x33, 0x01, 0x32, 0x03, 0x01, 0x12, 0x82, 0x01, 0x33, 0x01, 0x12, 0x01, 0x32, 0x06, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x06, 0x01, 0x32, 0x89, 0x01, 0x52, 0x01, 0x93, 0x12, 0x15, 0x2A, 0xD8, 0x33, 0x39, 0x2A, 0xB8, 0x09, 0xB4, 0x01, 0x52, 0x01, 0x32, 0x01, 0x12, 0x01, 0x01, 0x11, 0x0A, 0x01, 0x12, 0x80, 0x01, 0x33, 0x02, 0x01, 0x12, 0x86, 0x01, 0x13, 0x01, 0x32, 0x01, 0x12, 0x01, 0x13, 0x01, 0x12, 0x01, 0x13, 0x01, 0x33, 0x09, 0x01, 0x13, 0x03, 0x00, 0xF2, 0x82, 0x01, 0x13, 0x01, 0x12, 0x01, 0x33, 0x03, 0x01, 0x13, 0x80, 0x01, 0x33, 0x04, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x33, 0x01, 0x01, 0x12, 0x03, 0x01, 0x32, 0x87, 0x01, 0x52, 0x01, 0x93, 0x09, 0xF4, 0x22, 0x97, 0x33, 0x39, 0x22, 0xD8, 0x11, 0xF5, 0x01, 0x32, 0x03, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x33, 0x02, 0x01, 0x12, 0x01, 0x01, 0x33, 0x88, 0x01, 0x13, 0x01, 0x33, 0x01, 0x13, 0x01, 0x33, 0x01, 0x13, 0x01, 0x33, 0x01, 0x53, 0x01, 0x33, 0x01, 0x13, 0x02, 0x01, 0x12, 0x81, 0x01, 0x33, 0x01, 0x13, 0x02, 0x01, 0x12, 0x01, 0x01, 0x13, 0x80, 0x01, 0x12, 0x01, 0x01, 0x33, 0x02, 0x01, 0x13, 0x01, 0x01, 0x33, 0x80, 0x01, 0x13, 0x02, 0x00, 0xF2, 0x80, 0x01, 0x12, 0x01, 0x01, 0x33, + 0x07, 0x01, 0x12, 0x82, 0x01, 0x33, 0x01, 0x32, 0x01, 0x33, 0x02, 0x01, 0x32, 0x8A, 0x01, 0x53, 0x01, 0x94, 0x2A, 0xD8, 0x3B, 0x5A, 0x09, 0xF5, 0x01, 0x72, 0x01, 0x52, 0x01, 0x73, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x33, 0x81, 0x01, 0x12, 0x00, 0xF2, 0x01, 0x01, 0x13, 0x01, 0x01, 0x33, 0x03, 0x01, 0x13, 0x81, 0x01, 0x33, 0x01, 0x13, 0x01, 0x01, 0x33, 0x83, 0x01, 0x13, 0x01, 0x33, 0x01, 0x13, 0x01, 0x33, 0x01, 0x01, 0x13, 0x80, 0x01, 0x33, 0x01, 0x01, 0x13, 0x0A, 0x01, 0x33, 0x07, 0x01, 0x13, 0x01, 0x01, 0x33, 0x80, 0x01, 0x54, 0x04, 0x01, 0x33, 0x81, 0x01, 0x53, 0x01, 0x33, 0x01, 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, 0x01, 0x73, 0x83, 0x09, 0xF5, 0x3B, 0x7B, 0x1A, 0x77, 0x01, 0x53, 0x01, 0x01, 0x33, 0x01, 0x01, 0x12, 0x83, 0x01, 0x13, 0x01, 0x12, 0x01, 0x33, 0x01, 0x13, 0x02, 0x01, 0x33, 0x80, 0x01, 0x13, 0x01, 0x01, 0x33, 0x01, 0x01, 0x13, 0x80, 0x01, 0x33, 0x02, 0x01, 0x13, 0x80, 0x01, 0x33, 0x02, 0x01, 0x13, 0x81, 0x01, 0x33, 0x01, 0x13, 0x03, 0x01, 0x33, 0x06, 0x01, 0x13, 0x07, 0x01, 0x33, 0x80, 0x01, 0x13, 0x06, 0x01, 0x33, 0x03, 0x01, 0x13, 0x04, 0x01, 0x33, 0x83, 0x01, 0x53, 0x01, 0x32, 0x01, 0x12, 0x01, 0x33, 0x01, 0x01, 0x53, 0x84, 0x01, 0xB4, 0x43, 0x7B, 0x09, 0xD5, 0x01, 0x74, 0x01, 0x53, 0x01, 0x01, 0x33, 0x84, 0x01, 0x13, 0x01, 0x12, 0x01, 0x33, 0x01, 0x53, 0x01, 0x54, 0x01, 0x01, 0x33, 0x80, 0x01, 0x13, 0x03, 0x01, 0x33, 0x81, 0x01, 0x34, 0x01, 0x33, 0x02, + 0x01, 0x13, 0x80, 0x01, 0x33, 0x01, 0x01, 0x13, 0x04, 0x01, 0x33, 0x80, 0x01, 0x34, 0x02, 0x01, 0x13, 0x0B, 0x01, 0x33, 0x80, 0x01, 0x53, 0x06, 0x01, 0x33, 0x80, 0x01, 0x13, 0x0D, 0x01, 0x33, 0x01, 0x01, 0x53, 0x83, 0x33, 0x7B, 0x12, 0x77, 0x01, 0x74, 0x01, 0x53, 0x05, 0x01, 0x33, 0x80, 0x01, 0x13, 0x03, 0x01, 0x33, 0x80, 0x01, 0x54, 0x01, 0x01, 0x33, 0x83, 0x01, 0x13, 0x01, 0x33, 0x01, 0x13, 0x01, 0x33, 0x01, 0x01, 0x34, 0x01, 0x01, 0x13, 0x12, 0x01, 0x33, 0x80, 0x01, 0x34, 0x12, 0x01, 0x33, 0x80, 0x01, 0x53, 0x01, 0x01, 0x33, 0x80, 0x00, 0xF2, 0x02, 0x01, 0x12, 0x82, 0x22, 0xD8, 0x12, 0x36, 0x01, 0x32, 0x02, 0x01, 0x33, 0x01, 0x01, 0x12, 0x05, 0x01, 0x33, 0x82, 0x01, 0x13, 0x01, 0x33, 0x01, 0x13, 0x05, 0x01, 0x33, 0x80, 0x01, 0x13, 0x0B, 0x01, 0x33, 0x80, 0x01, 0x13, 0x0C, 0x01, 0x33, 0x01, 0x01, 0x13, 0x06, 0x01, 0x33, 0x80, 0x01, 0x53, 0x02, 0x01, 0x33, 0x80, 0x01, 0x53, 0x01, 0x01, 0x33, 0x81, 0x01, 0x13, 0x01, 0x33, 0x01, 0x01, 0x13, 0x02, 0x01, 0x33, 0x83, 0x01, 0x53, 0x01, 0xB4, 0x3B, 0x7B, 0x01, 0x73, 0x06, 0x01, 0x33, 0x80, 0x01, 0x13, 0x08, 0x01, 0x33, 0x02, 0x01, 0x13, 0x80, 0x01, 0x33, 0x01, 0x01, 0x13, 0x04, 0x01, 0x33, 0x80, 0x01, 0x13, 0x03, 0x01, 0x33, 0x81, 0x01, 0x13, 0x01, 0x33, 0x03, 0x01, 0x13, 0x13, 0x01, 0x33, 0x81, 0x01, 0x32, 0x01, 0x33, 0x01, 0x01, 0x53, 0x81, 0x01, 0x33, 0x01, 0x53, 0x01, 0x01, 0x32, 0x85, 0x01, 0x52, 0x01, 0x73, 0x09, 0xD4, 0x43, 0x9C, 0x09, 0xD5, 0x01, 0x73, 0x01, 0x01, + 0x53, 0x81, 0x01, 0x33, 0x01, 0x13, 0x04, 0x01, 0x33, 0x80, 0x01, 0x13, 0x04, 0x01, 0x33, 0x01, 0x01, 0x13, 0x80, 0x01, 0x34, 0x01, 0x01, 0x33, 0x80, 0x01, 0x13, 0x02, 0x01, 0x33, 0x82, 0x01, 0x13, 0x01, 0x33, 0x01, 0x13, 0x07, 0x01, 0x33, 0x80, 0x01, 0x53, 0x01, 0x01, 0x54, 0x01, 0x01, 0x53, 0x80, 0x01, 0x33, 0x01, 0x01, 0x54, 0x81, 0x01, 0x33, 0x09, 0x33, 0x01, 0x11, 0x33, 0x86, 0x21, 0x13, 0x28, 0xF2, 0x38, 0xB0, 0x8A, 0x76, 0xA2, 0x76, 0xA1, 0xF4, 0xA9, 0xF4, 0x06, 0xA9, 0xD3, 0x84, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0x01, 0xA9, 0xB3, 0x81, 0xB1, 0xF4, 0xB1, 0xF3, 0x01, 0xB1, 0xD3, 0x8B, 0xB1, 0xD4, 0xA9, 0xF4, 0xAA, 0x14, 0xA2, 0x55, 0xA2, 0xB7, 0x82, 0x56, 0x10, 0x0E, 0x10, 0xB1, 0x08, 0xD2, 0x00, 0xF2, 0x01, 0x12, 0x01, 0x13, 0x01, 0x01, 0x33, 0x03, 0x01, 0x13, 0x0D, 0x01, 0x33, 0x02, 0x01, 0x13, 0x84, 0x01, 0x33, 0x01, 0x13, 0x01, 0x33, 0x01, 0x12, 0x01, 0x32, 0x03, 0x01, 0x33, 0x83, 0x01, 0x12, 0x01, 0x33, 0x01, 0x32, 0x01, 0x33, 0x01, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x12, 0x81, 0x01, 0x33, 0x01, 0x32, 0x01, 0x01, 0x33, 0x03, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x33, 0x85, 0x01, 0x32, 0x01, 0x52, 0x09, 0xD5, 0x3B, 0x7B, 0x22, 0xB8, 0x01, 0x94, 0x01, 0x01, 0x53, 0x02, 0x01, 0x32, 0x02, 0x01, 0x33, 0x81, 0x01, 0x53, 0x01, 0x33, 0x03, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x03, 0x01, 0x13, 0x83, 0x01, 0x12, 0x01, 0x33, 0x01, 0x12, 0x01, 0x33, 0x01, 0x01, 0x13, 0x80, 0x01, 0x12, + 0x01, 0x01, 0x32, 0x01, 0x01, 0x33, 0x02, 0x01, 0x12, 0x80, 0x01, 0x33, 0x02, 0x01, 0x12, 0x80, 0x01, 0x33, 0x03, 0x01, 0x12, 0x01, 0x01, 0x13, 0x01, 0x01, 0x32, 0x01, 0x01, 0x12, 0x03, 0x01, 0x32, 0x01, 0x01, 0x12, 0x01, 0x01, 0x32, 0x03, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x12, 0x05, 0x01, 0x32, 0x83, 0x11, 0xF5, 0x33, 0x19, 0x1A, 0x76, 0x09, 0xB4, 0x02, 0x01, 0x52, 0x02, 0x01, 0x32, 0x03, 0x01, 0x12, 0x82, 0x01, 0x33, 0x01, 0x32, 0x01, 0x33, 0x02, 0x01, 0x12, 0x82, 0x01, 0x33, 0x01, 0x32, 0x01, 0x33, 0x01, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x04, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x33, 0x03, 0x00, 0xF2, 0x85, 0x01, 0x12, 0x01, 0x13, 0x01, 0x33, 0x01, 0x12, 0x01, 0x33, 0x01, 0x32, 0x0B, 0x01, 0x12, 0x80, 0x01, 0x32, 0x06, 0x01, 0x12, 0x01, 0x01, 0x32, 0x88, 0x01, 0x11, 0x01, 0x32, 0x01, 0x52, 0x01, 0x93, 0x1A, 0x76, 0x3B, 0x7A, 0x33, 0x59, 0x12, 0x76, 0x01, 0x92, 0x03, 0x01, 0x52, 0x02, 0x01, 0x32, 0x01, 0x01, 0x12, 0x02, 0x00, 0xF2, 0x81, 0x01, 0x12, 0x00, 0xF2, 0x02, 0x01, 0x12, 0x01, 0x01, 0x32, 0x06, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x33, 0x01, 0x32, 0x10, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x12, 0x81, 0x01, 0x11, 0x01, 0x12, 0x01, 0x01, 0x11, 0x02, 0x01, 0x31, 0x80, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x81, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x04, 0x01, 0x32, 0x02, 0x01, 0x52, 0x85, 0x09, 0xB3, 0x22, 0xB7, 0x33, 0x19, 0x2A, 0xF8, 0x1A, 0x36, + 0x01, 0x93, 0x01, 0x01, 0x32, 0x80, 0x01, 0x12, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x04, 0x01, 0x12, 0x02, 0x01, 0x32, 0x03, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x04, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x05, 0x01, 0x12, 0x80, 0x01, 0x32, 0x08, 0x01, 0x12, 0x80, 0x01, 0x32, 0x09, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x03, 0x01, 0x32, 0x85, 0x01, 0x93, 0x22, 0x97, 0x3B, 0x5A, 0x33, 0x19, 0x1A, 0x36, 0x01, 0x93, 0x01, 0x01, 0x32, 0x81, 0x01, 0x12, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xF2, 0x05, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x33, 0x04, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x33, 0x06, 0x01, 0x12, 0x84, 0x00, 0xF2, 0x01, 0x13, 0x00, 0xF2, 0x01, 0x13, 0x01, 0x12, 0x02, 0x00, 0xF2, 0x81, 0x01, 0x12, 0x01, 0x13, 0x14, 0x01, 0x12, 0x8A, 0x01, 0x32, 0x01, 0x53, 0x11, 0xF5, 0x22, 0xB7, 0x2B, 0x19, 0x22, 0x97, 0x09, 0xD4, 0x01, 0x72, 0x01, 0x32, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x82, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x06, 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, 0x01, 0x12, 0x83, 0x01, 0x33, 0x01, 0x12, 0x01, 0x13, 0x01, 0x33, 0x03, 0x01, 0x13, 0x08, 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, 0x01, 0x12, 0x03, 0x01, 0x13, 0x82, 0x01, 0x33, 0x01, 0x13, 0x01, 0x33, 0x01, 0x01, 0x13, 0x03, 0x00, 0xF2, 0x05, 0x01, 0x12, 0x82, 0x00, 0xF2, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x12, 0x04, 0x01, 0x32, 0x83, 0x22, 0x56, 0x3B, 0x5A, 0x22, 0x77, 0x01, 0x93, 0x01, 0x01, + 0x52, 0x01, 0x01, 0x32, 0x80, 0x01, 0x11, 0x02, 0x01, 0x12, 0x01, 0x01, 0x32, 0x81, 0x01, 0x33, 0x01, 0x32, 0x01, 0x01, 0x12, 0x83, 0x01, 0x13, 0x00, 0xF2, 0x01, 0x13, 0x01, 0x33, 0x0C, 0x01, 0x13, 0x84, 0x01, 0x12, 0x01, 0x13, 0x01, 0x33, 0x01, 0x13, 0x01, 0x12, 0x01, 0x01, 0x13, 0x02, 0x01, 0x33, 0x01, 0x01, 0x13, 0x01, 0x01, 0x33, 0x05, 0x01, 0x13, 0x80, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x02, 0x01, 0x33, 0x01, 0x01, 0x13, 0x83, 0x01, 0x12, 0x01, 0x33, 0x01, 0x12, 0x01, 0x33, 0x01, 0x01, 0x32, 0x86, 0x01, 0x12, 0x01, 0x32, 0x01, 0x52, 0x01, 0x73, 0x12, 0x15, 0x43, 0x9B, 0x12, 0x36, 0x01, 0x01, 0x32, 0x05, 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, 0x01, 0x12, 0x01, 0x01, 0x33, 0x01, 0x01, 0x12, 0x80, 0x01, 0x33, 0x05, 0x01, 0x12, 0x81, 0x01, 0x33, 0x01, 0x12, 0x06, 0x01, 0x13, 0x80, 0x01, 0x33, 0x06, 0x01, 0x13, 0x83, 0x01, 0x33, 0x01, 0x13, 0x01, 0x12, 0x01, 0x33, 0x02, 0x01, 0x12, 0x03, 0x01, 0x13, 0x01, 0x01, 0x33, 0x81, 0x01, 0x12, 0x01, 0x33, 0x03, 0x01, 0x13, 0x02, 0x01, 0x33, 0x01, 0x01, 0x13, 0x81, 0x01, 0x32, 0x01, 0x33, 0x02, 0x01, 0x32, 0x87, 0x01, 0x53, 0x01, 0x93, 0x3B, 0x7B, 0x22, 0x77, 0x01, 0x53, 0x01, 0x33, 0x01, 0x13, 0x01, 0x32, 0x03, 0x01, 0x12, 0x80, 0x01, 0x33, 0x03, 0x01, 0x12, 0x02, 0x01, 0x13, 0x80, 0x01, 0x33, 0x01, 0x01, 0x13, 0x81, 0x01, 0x12, 0x01, 0x33, 0x05, 0x01, 0x13, 0x81, 0x01, 0x12, 0x01, 0x33, 0x01, 0x01, 0x13, 0x80, 0x01, 0x12, 0x01, 0x01, 0x13, 0x01, 0x01, 0x33, 0x83, 0x01, 0x12, 0x01, + 0x13, 0x01, 0x33, 0x01, 0x32, 0x01, 0x01, 0x33, 0x01, 0x01, 0x32, 0x80, 0x01, 0x33, 0x02, 0x01, 0x32, 0x03, 0x01, 0x33, 0x01, 0x01, 0x13, 0x80, 0x01, 0x33, 0x01, 0x01, 0x12, 0x80, 0x01, 0x33, 0x03, 0x01, 0x12, 0x06, 0x01, 0x32, 0x85, 0x01, 0x53, 0x01, 0xB4, 0x43, 0xDC, 0x01, 0xB4, 0x01, 0x53, 0x01, 0x32, 0x01, 0x01, 0x12, 0x81, 0x01, 0x33, 0x01, 0x12, 0x01, 0x01, 0x33, 0x02, 0x01, 0x13, 0x80, 0x01, 0x33, 0x01, 0x01, 0x13, 0x01, 0x01, 0x33, 0x81, 0x01, 0x13, 0x01, 0x33, 0x01, 0x01, 0x13, 0x80, 0x01, 0x33, 0x01, 0x01, 0x13, 0x01, 0x01, 0x33, 0x02, 0x01, 0x13, 0x14, 0x01, 0x33, 0x01, 0x01, 0x13, 0x07, 0x01, 0x33, 0x01, 0x01, 0x13, 0x02, 0x01, 0x33, 0x04, 0x01, 0x12, 0x84, 0x00, 0xF1, 0x1A, 0x97, 0x0A, 0x15, 0x01, 0x32, 0x01, 0x33, 0x01, 0x01, 0x32, 0x02, 0x01, 0x12, 0x83, 0x01, 0x32, 0x01, 0x33, 0x01, 0x13, 0x01, 0x33, 0x01, 0x01, 0x13, 0x80, 0x01, 0x33, 0x01, 0x01, 0x13, 0x02, 0x01, 0x33, 0x01, 0x01, 0x13, 0x82, 0x01, 0x33, 0x01, 0x12, 0x01, 0x33, 0x01, 0x01, 0x12, 0x01, 0x01, 0x32, 0x81, 0x01, 0x12, 0x01, 0x13, 0x01, 0x01, 0x32, 0x03, 0x01, 0x13, 0x04, 0x01, 0x33, 0x81, 0x01, 0x53, 0x01, 0x13, 0x05, 0x01, 0x33, 0x01, 0x01, 0x13, 0x80, 0x01, 0x33, 0x02, 0x01, 0x13, 0x03, 0x01, 0x33, 0x01, 0x01, 0x13, 0x81, 0x01, 0x33, 0x01, 0x32, 0x01, 0x01, 0x33, 0x02, 0x01, 0x13, 0x01, 0x01, 0x12, 0x01, 0x01, 0x32, 0x85, 0x01, 0x53, 0x2A, 0xD9, 0x22, 0x98, 0x01, 0x53, 0x01, 0x32, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x33, 0x80, + 0x01, 0x12, 0x01, 0x01, 0x13, 0x80, 0x01, 0x33, 0x03, 0x01, 0x13, 0x81, 0x01, 0x33, 0x01, 0x12, 0x01, 0x01, 0x33, 0x08, 0x01, 0x13, 0x80, 0x01, 0x33, 0x02, 0x01, 0x13, 0x80, 0x01, 0x33, 0x04, 0x01, 0x13, 0x80, 0x01, 0x33, 0x01, 0x01, 0x32, 0x01, 0x01, 0x13, 0x80, 0x01, 0x12, 0x02, 0x01, 0x32, 0x01, 0x01, 0x33, 0x82, 0x01, 0x13, 0x01, 0x33, 0x01, 0x13, 0x03, 0x01, 0x33, 0x80, 0x01, 0x32, 0x01, 0x01, 0x33, 0x81, 0x01, 0x32, 0x01, 0x33, 0x07, 0x01, 0x32, 0x86, 0x01, 0x52, 0x1A, 0x36, 0x3B, 0x5A, 0x01, 0x94, 0x01, 0x73, 0x01, 0x33, 0x01, 0x32, 0x02, 0x01, 0x33, 0x01, 0x01, 0x12, 0x01, 0x01, 0x13, 0x01, 0x01, 0x33, 0x03, 0x01, 0x13, 0x81, 0x01, 0x33, 0x01, 0x13, 0x01, 0x01, 0x33, 0x06, 0x01, 0x13, 0x80, 0x01, 0x12, 0x09, 0x01, 0x33, 0x01, 0x01, 0x53, 0x03, 0x01, 0x33, 0x01, 0x09, 0x33, 0x88, 0x11, 0x13, 0x19, 0x13, 0x29, 0x12, 0x30, 0xB0, 0x61, 0x73, 0xA2, 0xD8, 0xA2, 0x35, 0xA1, 0xD4, 0xA9, 0xF4, 0x01, 0xA9, 0xF3, 0x03, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x81, 0xA9, 0xD3, 0xB1, 0xF3, 0x02, 0xA9, 0xD3, 0x81, 0xB1, 0xF3, 0xA9, 0xB3, 0x01, 0xA9, 0xD3, 0x8A, 0xB1, 0xD3, 0xB1, 0xF4, 0xA9, 0xF4, 0xA2, 0x55, 0xA2, 0x97, 0x82, 0x56, 0x18, 0x2E, 0x10, 0xB1, 0x08, 0xB1, 0x08, 0xF2, 0x00, 0xF2, 0x02, 0x01, 0x33, 0x02, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x01, 0x01, 0x33, 0x80, 0x01, 0x13, 0x02, 0x01, 0x33, 0x01, 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, 0x01, 0x13, 0x82, 0x01, 0x33, 0x01, 0x12, 0x01, 0x33, 0x05, 0x01, 0x12, 0x81, 0x01, 0x33, 0x01, + 0x12, 0x03, 0x01, 0x32, 0x81, 0x01, 0x12, 0x01, 0x32, 0x05, 0x01, 0x12, 0x82, 0x01, 0x33, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x12, 0x81, 0x01, 0x33, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x81, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x12, 0x02, 0x01, 0x32, 0x86, 0x01, 0x73, 0x22, 0x77, 0x3B, 0x5A, 0x12, 0x15, 0x01, 0x52, 0x01, 0x53, 0x01, 0x52, 0x03, 0x01, 0x32, 0x80, 0x01, 0x33, 0x02, 0x01, 0x12, 0x01, 0x01, 0x33, 0x02, 0x00, 0xF2, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x33, 0x81, 0x01, 0x12, 0x01, 0x33, 0x13, 0x01, 0x12, 0x83, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x12, 0x02, 0x01, 0x32, 0x81, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x04, 0x01, 0x12, 0x01, 0x01, 0x32, 0x81, 0x01, 0x11, 0x01, 0x12, 0x02, 0x01, 0x32, 0x84, 0x01, 0x52, 0x12, 0x15, 0x33, 0x19, 0x2A, 0xD8, 0x01, 0x93, 0x01, 0x01, 0x52, 0x01, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x04, 0x01, 0x12, 0x81, 0x01, 0x33, 0x01, 0x12, 0x02, 0x01, 0x32, 0x80, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x08, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x81, 0x01, 0x12, 0x00, 0xF2, 0x10, 0x01, 0x12, 0x80, 0x01, 0x32, 0x06, 0x01, 0x12, 0x03, 0x01, 0x11, 0x01, 0x01, 0x31, 0x87, 0x01, 0x52, 0x01, 0x72, 0x0A, 0x14, 0x22, 0xD7, 0x33, 0x39, 0x22, 0xB7, 0x09, 0xD4, 0x01, 0x72, 0x01, 0x01, 0x52, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x02, 0x00, 0xF2, 0x83, 0x01, 0x12, 0x00, 0xF2, 0x01, 0x12, 0x01, 0x32, 0x08, 0x01, 0x12, 0x82, 0x01, 0x32, 0x09, 0x73, + 0x01, 0x32, 0x0D, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x83, 0x00, 0xF2, 0x01, 0x12, 0x00, 0xF2, 0x00, 0xF1, 0x04, 0x01, 0x12, 0x05, 0x01, 0x11, 0x02, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x01, 0x32, 0x87, 0x01, 0x52, 0x09, 0xB3, 0x1A, 0x56, 0x33, 0x39, 0x3B, 0x5A, 0x1A, 0x76, 0x09, 0x93, 0x01, 0x72, 0x01, 0x01, 0x32, 0x03, 0x01, 0x12, 0x84, 0x00, 0xF1, 0x01, 0x32, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x06, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x06, 0x01, 0x12, 0x82, 0x00, 0xF2, 0x01, 0x12, 0x00, 0xF2, 0x0B, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x01, 0x00, 0xF1, 0x02, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x03, 0x01, 0x12, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x87, 0x01, 0x32, 0x01, 0x72, 0x09, 0xD4, 0x22, 0x97, 0x2A, 0xF8, 0x22, 0xB7, 0x11, 0xF4, 0x01, 0x52, 0x01, 0x01, 0x32, 0x84, 0x01, 0x12, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x81, 0x00, 0xF1, 0x00, 0xF2, 0x02, 0x00, 0xF1, 0x0A, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x33, 0x02, 0x01, 0x12, 0x80, 0x01, 0x13, 0x04, 0x01, 0x12, 0x81, 0x01, 0x33, 0x01, 0x12, 0x03, 0x00, 0xF2, 0x80, 0x01, 0x13, 0x04, 0x01, 0x12, 0x81, 0x00, 0xF2, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x83, 0x01, 0x12, 0x01, 0x32, 0x01, 0x12, 0x00, 0xF2, 0x04, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x12, 0x87, 0x01, 0x32, 0x09, 0xB4, 0x22, 0x97, 0x32, 0xF9, 0x22, + 0x97, 0x12, 0x15, 0x01, 0x52, 0x01, 0x32, 0x01, 0x01, 0x11, 0x82, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x11, 0x01, 0x01, 0x12, 0x80, 0x01, 0x11, 0x11, 0x01, 0x12, 0x81, 0x01, 0x13, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x02, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x08, 0x01, 0x12, 0x03, 0x00, 0xF2, 0x81, 0x01, 0x12, 0x01, 0x33, 0x02, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x06, 0x01, 0x12, 0x86, 0x01, 0x32, 0x01, 0x73, 0x2A, 0xB7, 0x33, 0x19, 0x11, 0xF5, 0x01, 0x53, 0x01, 0x52, 0x01, 0x01, 0x32, 0x01, 0x01, 0x11, 0x84, 0x01, 0x12, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x12, 0x02, 0x01, 0x32, 0x80, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x81, 0x01, 0x12, 0x00, 0xF2, 0x07, 0x01, 0x12, 0x80, 0x01, 0x33, 0x02, 0x01, 0x12, 0x81, 0x01, 0x13, 0x01, 0x12, 0x01, 0x01, 0x32, 0x02, 0x01, 0x33, 0x01, 0x01, 0x12, 0x83, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x13, 0x08, 0x01, 0x12, 0x80, 0x01, 0x33, 0x03, 0x01, 0x12, 0x80, 0x01, 0x33, 0x08, 0x01, 0x12, 0x85, 0x01, 0x32, 0x01, 0x52, 0x1A, 0x36, 0x3B, 0x3A, 0x11, 0xF5, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x02, 0x01, 0x12, 0x80, 0x01, 0x53, 0x04, 0x01, 0x12, 0x80, 0x01, 0x32, 0x06, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x33, 0x04, 0x01, 0x12, 0x82, 0x01, 0x33, 0x01, 0x12, 0x01, 0x33, 0x02, 0x01, 0x13, 0x09, 0x01, 0x12, 0x81, 0x01, 0x33, 0x01, 0x12, 0x01, 0x01, 0x33, 0x01, 0x01, 0x12, 0x83, 0x01, 0x33, 0x01, 0x12, 0x01, 0x33, 0x01, 0x12, 0x01, 0x01, + 0x33, 0x01, 0x01, 0x12, 0x01, 0x01, 0x13, 0x81, 0x01, 0x32, 0x01, 0x12, 0x01, 0x01, 0x32, 0x85, 0x01, 0x52, 0x01, 0x32, 0x2A, 0xD8, 0x2A, 0xF8, 0x01, 0x52, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x08, 0x01, 0x12, 0x01, 0x01, 0x33, 0x05, 0x01, 0x12, 0x03, 0x01, 0x13, 0x05, 0x01, 0x12, 0x87, 0x01, 0x33, 0x01, 0x12, 0x01, 0x33, 0x01, 0x13, 0x01, 0x33, 0x01, 0x12, 0x01, 0x33, 0x01, 0x12, 0x04, 0x01, 0x32, 0x01, 0x01, 0x12, 0x02, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x33, 0x05, 0x01, 0x12, 0x83, 0x01, 0x32, 0x01, 0x33, 0x01, 0x12, 0x01, 0x33, 0x03, 0x01, 0x32, 0x81, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x52, 0x81, 0x22, 0xB7, 0x2A, 0xF9, 0x01, 0x01, 0x53, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x82, 0x01, 0x33, 0x01, 0x12, 0x01, 0x13, 0x01, 0x01, 0x12, 0x80, 0x01, 0x33, 0x03, 0x01, 0x12, 0x82, 0x01, 0x33, 0x01, 0x13, 0x01, 0x33, 0x06, 0x01, 0x13, 0x02, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x33, 0x80, 0x01, 0x13, 0x01, 0x01, 0x33, 0x82, 0x01, 0x13, 0x01, 0x33, 0x01, 0x32, 0x01, 0x01, 0x33, 0x82, 0x01, 0x12, 0x01, 0x13, 0x01, 0x33, 0x01, 0x01, 0x12, 0x01, 0x01, 0x33, 0x80, 0x01, 0x13, 0x01, 0x01, 0x12, 0x01, 0x01, 0x33, 0x84, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x33, 0x01, 0x32, 0x02, 0x01, 0x12, 0x82, 0x01, 0x33, 0x01, 0x32, 0x01, 0x33, 0x01, 0x01, 0x12, 0x84, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x11, 0x22, 0xB7, 0x0A, 0x14, 0x01, 0x01, 0x32, 0x11, 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, + 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x12, 0x81, 0x01, 0x33, 0x01, 0x32, 0x02, 0x01, 0x33, 0x02, 0x01, 0x32, 0x80, 0x01, 0x33, 0x02, 0x01, 0x32, 0x03, 0x01, 0x33, 0x04, 0x01, 0x12, 0x80, 0x01, 0x33, 0x09, 0x01, 0x12, 0x80, 0x01, 0x33, 0x02, 0x01, 0x12, 0x01, 0x01, 0x32, 0x83, 0x01, 0x53, 0x09, 0xD4, 0x3B, 0x3A, 0x01, 0x52, 0x03, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x33, 0x04, 0x01, 0x12, 0x01, 0x01, 0x13, 0x84, 0x01, 0x33, 0x01, 0x32, 0x01, 0x33, 0x01, 0x12, 0x01, 0x33, 0x03, 0x01, 0x12, 0x02, 0x01, 0x13, 0x80, 0x01, 0x12, 0x02, 0x01, 0x13, 0x01, 0x01, 0x12, 0x02, 0x01, 0x13, 0x82, 0x01, 0x12, 0x01, 0x33, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x12, 0x01, 0x01, 0x32, 0x81, 0x01, 0x33, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x33, 0x05, 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, 0x01, 0x32, 0x80, 0x01, 0x12, 0x02, 0x01, 0x32, 0x80, 0x01, 0x12, 0x03, 0x01, 0x32, 0x85, 0x01, 0x11, 0x01, 0x32, 0x22, 0x97, 0x2A, 0xF9, 0x01, 0x73, 0x01, 0x53, 0x01, 0x01, 0x32, 0x81, 0x01, 0x12, 0x01, 0x33, 0x04, 0x01, 0x12, 0x01, 0x01, 0x13, 0x01, 0x01, 0x33, 0x80, 0x01, 0x12, 0x01, 0x01, 0x13, 0x81, 0x01, 0x12, 0x01, 0x33, 0x02, 0x01, 0x12, 0x02, 0x01, 0x13, 0x01, 0x01, 0x33, 0x82, 0x01, 0x32, 0x01, 0x33, 0x01, 0x32, 0x0C, 0x01, 0x33, 0x8B, 0x09, 0x53, 0x09, 0x33, 0x11, 0x33, 0x19, 0x33, 0x20, 0xF2, 0x28, 0xD1, 0x40, 0x90, 0x92, 0x97, 0xA2, 0x56, 0xA1, + 0xF4, 0xAA, 0x14, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x85, 0xB1, 0xF4, 0xA9, 0xD3, 0xA9, 0xF3, 0xB1, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x86, 0xA9, 0xF3, 0xA9, 0xD3, 0xB1, 0xF4, 0xA9, 0xD3, 0xB1, 0xF3, 0xB1, 0xF4, 0xA9, 0xB3, 0x01, 0xA9, 0xF4, 0x87, 0xA2, 0x35, 0x9A, 0x76, 0x8A, 0x77, 0x20, 0x4F, 0x18, 0xD1, 0x08, 0xD1, 0x08, 0xF2, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x83, 0x01, 0x33, 0x01, 0x12, 0x01, 0x33, 0x01, 0x32, 0x01, 0x01, 0x33, 0x05, 0x01, 0x12, 0x82, 0x01, 0x13, 0x01, 0x33, 0x01, 0x12, 0x01, 0x01, 0x32, 0x06, 0x01, 0x12, 0x02, 0x01, 0x32, 0x83, 0x01, 0x12, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x04, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x05, 0x01, 0x12, 0x88, 0x01, 0x11, 0x01, 0x12, 0x01, 0x32, 0x01, 0x52, 0x09, 0xD4, 0x2A, 0xD8, 0x2A, 0xB8, 0x01, 0x93, 0x01, 0x52, 0x01, 0x01, 0x32, 0x05, 0x01, 0x12, 0x82, 0x01, 0x33, 0x01, 0x12, 0x01, 0x13, 0x04, 0x00, 0xF2, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x1A, 0x01, 0x12, 0x02, 0x01, 0x32, 0x81, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x82, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x03, 0x01, 0x12, 0x85, 0x01, 0x32, 0x01, 0x73, 0x22, 0x97, 0x3B, 0x3A, 0x1A, 0x36, 0x01, 0x93, 0x01, 0x01, 0x52, 0x02, 0x01, 0x32, 0x04, 0x01, 0x12, 0x01, 0x01, 0x32, 0x0E, 0x01, 0x12, 0x84, 0x01, 0x32, 0x01, 0x12, 0x00, 0xF2, 0x01, 0x12, 0x00, + 0xF2, 0x11, 0x01, 0x12, 0x83, 0x01, 0x32, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x01, 0x31, 0x86, 0x01, 0x51, 0x09, 0xB3, 0x2A, 0xD8, 0x3B, 0x5A, 0x22, 0xB7, 0x09, 0xF4, 0x01, 0x72, 0x01, 0x01, 0x32, 0x81, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x09, 0x53, 0x02, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x81, 0x00, 0xF2, 0x00, 0xF1, 0x04, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x08, 0x01, 0x12, 0x03, 0x00, 0xF1, 0x83, 0x01, 0x12, 0x00, 0xF2, 0x00, 0xF1, 0x00, 0xF2, 0x07, 0x00, 0xF1, 0x0B, 0x01, 0x11, 0x87, 0x01, 0x31, 0x01, 0x92, 0x1A, 0x55, 0x2A, 0xD8, 0x32, 0xF8, 0x22, 0x97, 0x11, 0xF4, 0x01, 0x72, 0x01, 0x01, 0x31, 0x88, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x00, 0xF2, 0x81, 0x00, 0xF1, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x83, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x10, 0x01, 0x12, 0x82, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF2, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xF2, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x06, 0x01, 0x11, 0x87, 0x01, 0x32, 0x01, 0x72, 0x1A, 0x35, 0x2A, 0xF8, 0x2A, 0xD8, 0x1A, 0x56, 0x09, 0xD4, 0x01, 0x72, 0x01, 0x01, 0x32, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x09, 0x00, 0xF1, 0x04, 0x01, + 0x12, 0x80, 0x00, 0xF1, 0x0B, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x04, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x03, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x87, 0x00, 0xF1, 0x00, 0xF2, 0x01, 0x11, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x01, 0x00, 0xF1, 0x88, 0x01, 0x11, 0x01, 0x12, 0x09, 0x93, 0x2A, 0x97, 0x33, 0x19, 0x22, 0x77, 0x09, 0xB3, 0x01, 0x52, 0x01, 0x31, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x80, 0x01, 0x11, 0x0C, 0x01, 0x12, 0x02, 0x00, 0xF2, 0x03, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x05, 0x01, 0x12, 0x81, 0x00, 0xF2, 0x01, 0x12, 0x03, 0x00, 0xF2, 0x81, 0x01, 0x12, 0x01, 0x33, 0x0B, 0x01, 0x12, 0x01, 0x01, 0x11, 0x86, 0x01, 0x32, 0x1A, 0x36, 0x3B, 0x19, 0x1A, 0x56, 0x09, 0xB3, 0x01, 0x52, 0x01, 0x32, 0x01, 0x01, 0x12, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x01, 0x32, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x0F, 0x01, 0x12, 0x01, 0x01, 0x32, 0x16, 0x01, 0x12, 0x02, 0x00, 0xF2, 0x03, 0x01, 0x12, 0x88, 0x01, 0x32, 0x01, 0x11, 0x01, 0x32, 0x01, 0x52, 0x1A, 0x56, 0x3B, 0x7A, 0x09, 0xB4, 0x01, 0x32, 0x01, 0x11, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x0C, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x0A, 0x01, 0x12, 0x80, 0x01, 0x32, 0x0D, 0x01, 0x12, 0x01, 0x01, + 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x08, 0x01, 0x12, 0x02, 0x01, 0x32, 0x85, 0x09, 0xD4, 0x43, 0x9B, 0x01, 0x73, 0x01, 0x52, 0x01, 0x12, 0x00, 0xF2, 0x0A, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x80, 0x01, 0x32, 0x0A, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x01, 0x01, 0x32, 0x12, 0x01, 0x12, 0x80, 0x01, 0x32, 0x04, 0x01, 0x12, 0x01, 0x01, 0x32, 0x82, 0x01, 0x72, 0x3B, 0x5A, 0x09, 0xB4, 0x01, 0x01, 0x32, 0x0E, 0x01, 0x12, 0x80, 0x01, 0x13, 0x06, 0x01, 0x12, 0x01, 0x01, 0x33, 0x01, 0x01, 0x12, 0x01, 0x01, 0x32, 0x80, 0x01, 0x12, 0x02, 0x01, 0x32, 0x04, 0x01, 0x12, 0x01, 0x01, 0x32, 0x0D, 0x01, 0x12, 0x01, 0x01, 0x32, 0x03, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x12, 0x01, 0x01, 0x32, 0x81, 0x01, 0x12, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x22, 0x76, 0x09, 0xF4, 0x02, 0x01, 0x32, 0x1A, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x02, 0x01, 0x32, 0x80, 0x01, 0x12, 0x01, 0x01, 0x32, 0x80, 0x01, 0x12, 0x06, 0x01, 0x32, 0x80, 0x01, 0x13, 0x04, 0x01, 0x12, 0x02, 0x01, 0x32, 0x05, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x01, 0x01, 0x32, 0x83, 0x01, 0x52, 0x2A, 0xF9, 0x01, 0xB3, 0x01, 0x32, 0x03, 0x01, 0x12, 0x80, 0x01, 0x32, 0x09, 0x01, 0x12, 0x01, 0x01, 0x32, 0x05, 0x01, 0x12, 0x80, 0x01, 0x32, 0x07, 0x01, 0x12, 0x80, 0x01, 0x13, 0x04, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, + 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x08, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x02, 0x01, 0x12, 0x03, 0x01, 0x32, 0x80, 0x01, 0x11, 0x01, 0x01, 0x32, 0x84, 0x01, 0x52, 0x33, 0x19, 0x22, 0x97, 0x01, 0x52, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x84, 0x01, 0x32, 0x01, 0x33, 0x01, 0x12, 0x01, 0x32, 0x00, 0xF2, 0x0C, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x82, 0x01, 0x33, 0x01, 0x12, 0x01, 0x32, 0x07, 0x01, 0x33, 0x8F, 0x01, 0x12, 0x09, 0x33, 0x09, 0x32, 0x11, 0x12, 0x19, 0x12, 0x28, 0xF1, 0x30, 0x6F, 0x79, 0xF5, 0xA2, 0xB7, 0x9A, 0x14, 0xA2, 0x14, 0xA9, 0xF4, 0xA9, 0xD3, 0xA9, 0xF4, 0xA9, 0xF3, 0xB2, 0x14, 0x02, 0xA9, 0xD3, 0x87, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0xB1, 0xF3, 0xA9, 0xF3, 0xB1, 0xF4, 0xA9, 0xD3, 0xB1, 0xF3, 0x02, 0xA9, 0xD3, 0x87, 0xAA, 0x14, 0xA2, 0x35, 0x9A, 0x76, 0x92, 0xB8, 0x20, 0x4F, 0x18, 0xD1, 0x08, 0xD1, 0x08, 0xF1, 0x02, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x07, 0x01, 0x12, 0x01, 0x01, 0x32, 0x0A, 0x01, 0x12, 0x80, 0x01, 0x32, 0x05, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x12, 0x01, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x0E, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x01, 0x12, 0x01, 0x01, 0x32, 0x86, 0x01, 0x73, 0x12, 0x36, 0x3B, 0x7A, 0x12, 0x35, 0x01, 0x73, 0x01, 0x52, 0x01, 0x32, 0x07, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x80, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x02, 0x01, 0x12, 0x82, 0x00, 0xF2, 0x01, 0x12, 0x00, + 0xF2, 0x02, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x05, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x07, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x07, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x03, 0x01, 0x12, 0x83, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x01, 0x12, 0x88, 0x01, 0x32, 0x01, 0x73, 0x22, 0x76, 0x32, 0xF9, 0x1A, 0x36, 0x01, 0x73, 0x01, 0x52, 0x01, 0x73, 0x01, 0x32, 0x07, 0x01, 0x12, 0x81, 0x00, 0xF2, 0x00, 0xF1, 0x04, 0x01, 0x12, 0x80, 0x01, 0x11, 0x03, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x03, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x09, 0x01, 0x12, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x01, 0x11, 0x01, 0x01, 0x12, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x84, 0x01, 0x12, 0x01, 0x31, 0x01, 0x11, 0x01, 0x32, 0x01, 0x11, 0x02, 0x01, 0x31, 0x86, 0x01, 0x52, 0x01, 0x93, 0x12, 0x35, 0x33, 0x39, 0x33, 0x19, 0x1A, 0x56, 0x01, 0x52, 0x01, 0x01, 0x32, 0x87, 0x01, 0x11, 0x01, 0x12, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x11, 0x01, 0x32, 0x01, 0x12, 0x01, 0x01, 0x11, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x04, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x02, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x02, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x83, 0x01, 0x12, 0x00, 0xF1, 0x00, 0xF2, 0x01, 0x12, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, + 0xF1, 0x04, 0x01, 0x11, 0x89, 0x01, 0x31, 0x01, 0x11, 0x01, 0x51, 0x01, 0x92, 0x12, 0x35, 0x2A, 0xB7, 0x33, 0x19, 0x2A, 0xD7, 0x22, 0x56, 0x01, 0x72, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x80, 0x01, 0x12, 0x01, 0x00, 0xD1, 0x80, 0x00, 0xF2, 0x06, 0x00, 0xF1, 0x05, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x03, 0x01, 0x12, 0x89, 0x01, 0x11, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x85, 0x01, 0x12, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x01, 0x31, 0x88, 0x01, 0x52, 0x01, 0xB3, 0x12, 0x35, 0x22, 0x96, 0x22, 0xB7, 0x12, 0x15, 0x09, 0xB3, 0x01, 0x52, 0x01, 0x31, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x03, 0x00, 0xF1, 0x81, 0x01, 0x12, 0x01, 0x11, 0x03, 0x01, 0x12, 0x80, 0x01, 0x11, 0x02, 0x01, 0x12, 0x80, 0x01, 0x11, 0x08, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x08, 0x01, 0x12, 0x81, 0x01, 0x11, 0x01, 0x32, 0x01, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x83, 0x01, 0x12, 0x01, 0x32, 0x01, 0x11, 0x01, 0x32, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x85, 0x01, 0x31, 0x01, 0x93, 0x22, 0x97, 0x33, 0x19, 0x2A, 0xB7, 0x09, 0xB3, 0x03, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x80, 0x01, 0x12, 0x03, 0x00, + 0xF1, 0x01, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x07, 0x01, 0x12, 0x81, 0x00, 0xF2, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x81, 0x01, 0x12, 0x00, 0xF2, 0x0C, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x06, 0x01, 0x12, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x81, 0x01, 0x31, 0x01, 0x93, 0x01, 0x2A, 0xD8, 0x81, 0x11, 0xF5, 0x09, 0x93, 0x01, 0x01, 0x32, 0x04, 0x01, 0x11, 0x80, 0x01, 0x31, 0x01, 0x01, 0x11, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x84, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x32, 0x01, 0x12, 0x01, 0x53, 0x10, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x08, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x08, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x02, 0x01, 0x12, 0x80, 0x01, 0x11, 0x02, 0x01, 0x32, 0x86, 0x01, 0x52, 0x01, 0x72, 0x2A, 0xB7, 0x43, 0x7A, 0x09, 0x93, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x01, 0x12, 0x01, 0x11, 0x25, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x04, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x07, 0x01, 0x12, 0x01, 0x01, 0x32, 0x85, 0x01, 0x73, 0x3B, 0x5A, 0x11, 0xF5, 0x01, 0x32, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x82, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x05, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x00, 0xF2, 0x09, 0x01, 0x12, 0x02, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, + 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x06, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x84, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x12, 0x01, 0x11, 0x01, 0x01, 0x32, 0x87, 0x09, 0xF4, 0x2A, 0xF8, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x12, 0x01, 0x52, 0x01, 0x12, 0x01, 0x01, 0x32, 0x05, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x0E, 0x01, 0x12, 0x02, 0x01, 0x32, 0x01, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x12, 0x01, 0x01, 0x32, 0x80, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x12, 0x81, 0x00, 0xF2, 0x01, 0x32, 0x03, 0x01, 0x12, 0x86, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x02, 0x01, 0x12, 0x81, 0x01, 0x11, 0x01, 0x32, 0x03, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x2A, 0xD7, 0x12, 0x35, 0x01, 0x01, 0x32, 0x81, 0x01, 0x12, 0x01, 0x11, 0x03, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x12, 0x02, 0x01, 0x32, 0x03, 0x01, 0x12, 0x01, 0x01, 0x32, 0x80, 0x01, 0x12, 0x01, 0x01, 0x32, 0x04, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x03, 0x01, 0x32, 0x03, 0x01, 0x12, 0x03, 0x01, 0x32, 0x03, 0x01, 0x12, 0x80, 0x01, 0x32, 0x08, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x84, 0x01, 0x52, 0x1A, 0x76, 0x22, 0x97, 0x01, 0x11, 0x01, 0x12, 0x07, 0x01, 0x32, 0x02, 0x01, 0x12, 0x01, 0x01, 0x32, 0x03, + 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x12, 0x05, 0x01, 0x32, 0x82, 0x01, 0x12, 0x01, 0x32, 0x01, 0x12, 0x01, 0x01, 0x32, 0x09, 0x01, 0x12, 0x01, 0x01, 0x32, 0x81, 0x01, 0x12, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x05, 0x01, 0x12, 0x80, 0x01, 0x32, 0x04, 0x01, 0x12, 0x02, 0x01, 0x11, 0x02, 0x01, 0x32, 0x02, 0x01, 0x11, 0x82, 0x01, 0x93, 0x43, 0x7B, 0x12, 0x15, 0x01, 0x01, 0x32, 0x05, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x04, 0x01, 0x12, 0x81, 0x00, 0xF2, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x02, 0x01, 0x32, 0x80, 0x01, 0x33, 0x01, 0x01, 0x32, 0x80, 0x01, 0x33, 0x02, 0x01, 0x12, 0x82, 0x01, 0x33, 0x01, 0x32, 0x01, 0x12, 0x01, 0x09, 0x12, 0x88, 0x19, 0x12, 0x20, 0xF1, 0x28, 0x90, 0x40, 0xB0, 0x9A, 0xB7, 0xA2, 0x55, 0xA2, 0x14, 0xAA, 0x14, 0xA1, 0xD3, 0x01, 0xA9, 0xD3, 0x81, 0xA9, 0xF4, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x80, 0xA9, 0xF3, 0x03, 0xA9, 0xD3, 0x84, 0xA9, 0xF3, 0xB2, 0x14, 0xA9, 0xD3, 0xB1, 0xF4, 0xA9, 0xD3, 0x01, 0xA9, 0xF4, 0x86, 0xA2, 0x14, 0xA2, 0x96, 0x8A, 0x97, 0x18, 0x0D, 0x10, 0x90, 0x10, 0xD1, 0x08, 0xF1, 0x01, 0x01, 0x12, 0x80, 0x01, 0x33, 0x01, 0x01, 0x12, 0x81, 0x00, 0xF2, 0x01, 0x12, 0x02, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x10, 0x01, 0x12, 0x80, 0x01, 0x32, 0x0B, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x85, 0x01, 0x11, 0x01, 0x12, + 0x01, 0x11, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x01, 0x12, 0x02, 0x01, 0x11, 0x80, 0x01, 0x31, 0x01, 0x01, 0x32, 0x85, 0x01, 0x93, 0x3B, 0x5A, 0x2A, 0xF8, 0x01, 0xB4, 0x01, 0x52, 0x01, 0x32, 0x01, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x32, 0x01, 0x12, 0x00, 0xF2, 0x03, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x04, 0x01, 0x12, 0x83, 0x00, 0xF1, 0x01, 0x32, 0x01, 0x11, 0x01, 0x32, 0x02, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x04, 0x01, 0x12, 0x04, 0x00, 0xF2, 0x81, 0x01, 0x11, 0x01, 0x32, 0x03, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x86, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x11, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x82, 0x01, 0x12, 0x01, 0x11, 0x01, 0x12, 0x03, 0x01, 0x11, 0x85, 0x09, 0xB3, 0x2A, 0xD8, 0x33, 0x19, 0x12, 0x35, 0x01, 0x93, 0x01, 0x52, 0x01, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF2, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x01, 0x12, 0x03, 0x00, 0xF1, 0x02, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x04, 0x01, 0x12, 0x83, 0x00, 0xF2, 0x01, 0x12, 0x00, 0xF2, 0x00, 0xF1, 0x02, 0x01, 0x12, 0x80, 0x01, 0x11, 0x08, 0x00, 0xF1, 0x81, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x80, 0x01, 0x31, 0x01, 0x01, 0x11, 0x02, 0x01, 0x31, 0x86, 0x01, 0x52, 0x1A, 0x15, 0x32, 0xF8, 0x33, 0x39, 0x1A, 0x96, 0x01, 0xB3, 0x01, 0x52, 0x03, + 0x01, 0x11, 0x80, 0x01, 0x32, 0x01, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x02, 0x01, 0x12, 0x04, 0x00, 0xF1, 0x0A, 0x01, 0x12, 0x82, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x05, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x02, 0x01, 0x31, 0x87, 0x01, 0x51, 0x09, 0xD3, 0x2A, 0x96, 0x3B, 0x59, 0x32, 0xF8, 0x1A, 0x55, 0x09, 0xB3, 0x01, 0x31, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x81, 0x00, 0xD1, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x02, 0x00, 0xD1, 0x06, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x84, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x89, 0x01, 0x31, 0x01, 0x72, 0x09, 0xF4, 0x1A, 0x76, 0x2A, 0xF8, 0x1A, 0x76, 0x09, 0xF4, 0x01, 0x92, 0x01, 0x72, 0x01, 0x31, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x07, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x81, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x03, 0x00, 0xF2, 0x80, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, + 0xF1, 0x03, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x84, 0x09, 0xB3, 0x2A, 0xD8, 0x3B, 0x5A, 0x22, 0xB7, 0x09, 0xD4, 0x01, 0x01, 0x32, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x06, 0x01, 0x11, 0x80, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x00, 0xF2, 0x80, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x80, 0x01, 0x12, 0x02, 0x00, 0xF2, 0x80, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x06, 0x01, 0x12, 0x83, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x32, 0x09, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x85, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x11, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x87, 0x01, 0x31, 0x01, 0x52, 0x1A, 0x55, 0x33, 0x18, 0x22, 0x96, 0x09, 0xB3, 0x01, 0x52, 0x01, 0x32, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x01, 0x31, 0x03, 0x01, 0x11, 0x83, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x11, 0x01, 0x12, 0x02, 0x01, 0x32, 0x83, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x05, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x0D, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x01, 0x31, 0x01, 0x32, 0x01, 0x01, 0x52, 0x83, 0x01, 0x93, 0x33, 0x19, 0x3B, 0x59, 0x01, 0x52, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x02, + 0x01, 0x12, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x12, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x0B, 0x01, 0x12, 0x01, 0x01, 0x11, 0x08, 0x01, 0x12, 0x80, 0x01, 0x11, 0x02, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x12, 0x01, 0x01, 0x32, 0x83, 0x01, 0x31, 0x2A, 0xF8, 0x1A, 0x76, 0x01, 0x52, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x12, 0x03, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x0C, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x03, 0x01, 0x12, 0x80, 0x01, 0x32, 0x07, 0x01, 0x12, 0x80, 0x01, 0x32, 0x10, 0x01, 0x12, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x03, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x12, 0x04, 0x01, 0x11, 0x85, 0x01, 0x32, 0x01, 0x31, 0x2A, 0xD8, 0x12, 0x35, 0x01, 0x11, 0x01, 0x32, 0x02, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x11, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x0F, 0x01, 0x12, 0x80, 0x01, 0x32, 0x10, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x01, 0x01, 0x32, 0x02, 0x01, 0x12, 0x01, 0x01, 0x32, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x06, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x83, 0x00, 0xF0, 0x22, 0x96, 0x12, 0x14, 0x01, 0x31, 0x01, 0x01, 0x32, 0x03, 0x01, 0x11, 0x80, 0x01, 0x32, 0x06, 0x01, 0x12, 0x80, 0x01, 0x32, 0x04, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x0A, 0x01, 0x12, 0x80, 0x01, 0x32, 0x04, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x01, 0x01, 0x32, 0x81, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x12, + 0x80, 0x01, 0x32, 0x09, 0x01, 0x12, 0x01, 0x01, 0x32, 0x87, 0x01, 0x12, 0x01, 0x11, 0x01, 0x12, 0x01, 0x31, 0x01, 0x93, 0x33, 0x39, 0x01, 0x31, 0x01, 0x32, 0x01, 0x01, 0x12, 0x86, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x31, 0x01, 0x32, 0x01, 0x11, 0x01, 0x32, 0x01, 0x01, 0x12, 0x82, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x03, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x01, 0x01, 0x32, 0x80, 0x01, 0x12, 0x03, 0x01, 0x32, 0x09, 0x01, 0x12, 0x80, 0x01, 0x11, 0x12, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x11, 0x80, 0x01, 0x31, 0x03, 0x01, 0x11, 0x83, 0x01, 0x31, 0x09, 0xD4, 0x3B, 0x7A, 0x09, 0x93, 0x02, 0x01, 0x32, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x05, 0x01, 0x12, 0x82, 0x01, 0x11, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x11, 0x81, 0x01, 0x32, 0x00, 0xF1, 0x06, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x05, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x05, 0x01, 0x12, 0x94, 0x01, 0x32, 0x01, 0x12, 0x09, 0x32, 0x09, 0x12, 0x10, 0xF1, 0x18, 0xF1, 0x28, 0xB0, 0x30, 0x4E, 0x79, 0xF5, 0x9A, 0x76, 0xA2, 0x35, 0xA1, 0xF4, 0xA9, 0xF4, 0xA9, 0xD4, 0xA9, 0xF4, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0xB1, 0xF3, 0xA9, 0xF3, 0xB1, 0xF3, 0x01, 0xA9, 0xD3, 0x03, 0xA9, 0xF3, 0x8B, 0xA9, 0xD3, 0xA9, 0xF3, 0xB2, 0x14, 0xA9, 0xF4, 0xA2, 0x14, 0x9A, 0x76, 0x8A, 0x97, 0x18, 0x0D, 0x10, 0x6F, 0x08, 0xB0, 0x00, 0xD1, 0x00, 0xF1, 0x1B, 0x01, 0x12, 0x80, 0x01, 0x11, 0x05, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x12, 0x01, 0x32, 0x01, 0x00, + 0xF1, 0x81, 0x01, 0x12, 0x00, 0xF1, 0x02, 0x00, 0xF2, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x01, 0x12, 0x04, 0x01, 0x11, 0x01, 0x01, 0x32, 0x01, 0x01, 0x52, 0x83, 0x12, 0x15, 0x33, 0x19, 0x1A, 0x76, 0x01, 0x52, 0x02, 0x01, 0x32, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x02, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x12, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x12, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x80, 0x01, 0x32, 0x01, 0x01, 0x11, 0x01, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x81, 0x00, 0xF2, 0x01, 0x12, 0x01, 0x00, 0xF2, 0x82, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x04, 0x00, 0xF1, 0x82, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x03, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x01, 0x12, 0x05, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x85, 0x01, 0x32, 0x09, 0xD4, 0x2A, 0xD8, 0x2B, 0x18, 0x1A, 0x56, 0x01, 0x93, 0x01, 0x01, 0x52, 0x80, 0x01, 0x32, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x83, 0x01, 0x12, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x83, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x81, 0x01, 0x31, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x85, 0x01, 0x52, 0x01, 0xB3, 0x1A, 0x76, 0x3B, 0x5A, + 0x3B, 0x39, 0x09, 0xB3, 0x01, 0x01, 0x31, 0x81, 0x01, 0x11, 0x01, 0x31, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x00, 0xD1, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x06, 0x00, 0xF1, 0x88, 0x01, 0x51, 0x11, 0xF3, 0x22, 0x76, 0x2A, 0xD7, 0x3B, 0x18, 0x2A, 0xB7, 0x11, 0xB3, 0x01, 0x31, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x81, 0x00, 0xF1, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x0D, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x09, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x89, 0x01, 0x72, 0x09, 0xF3, 0x22, 0xB6, 0x2A, 0xF8, 0x1A, 0x76, 0x01, 0xB3, 0x01, 0x92, 0x09, 0x92, 0x01, 0x51, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x05, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x82, 0x01, 0x12, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, + 0x01, 0x12, 0x05, 0x01, 0x11, 0x80, 0x01, 0x31, 0x01, 0x01, 0x11, 0x80, 0x01, 0x31, 0x05, 0x00, 0xF1, 0x88, 0x01, 0x11, 0x01, 0x31, 0x01, 0x72, 0x22, 0x76, 0x33, 0x19, 0x2A, 0xD7, 0x11, 0xF4, 0x01, 0x32, 0x01, 0x31, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x82, 0x00, 0xF2, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x84, 0x01, 0x12, 0x00, 0xF2, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x82, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF2, 0x01, 0x00, 0xF1, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x11, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x04, 0x00, 0xF1, 0x01, 0x01, 0x32, 0x80, 0x01, 0x12, 0x01, 0x01, 0x11, 0x01, 0x01, 0x32, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x00, 0xD1, 0x01, 0x01, 0x11, 0x87, 0x01, 0x31, 0x09, 0xB3, 0x2A, 0xB7, 0x22, 0x97, 0x1A, 0x35, 0x09, 0x93, 0x01, 0x32, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x32, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x12, 0x01, 0x11, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x83, 0x01, 0x11, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x08, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x84, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x02, 0x01, 0x11, + 0x02, 0x01, 0x31, 0x82, 0x01, 0xB3, 0x33, 0x39, 0x2A, 0xB7, 0x01, 0x01, 0x31, 0x85, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x01, 0x12, 0x84, 0x01, 0x11, 0x01, 0x32, 0x01, 0x11, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x11, 0x84, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x11, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x12, 0x01, 0x01, 0x11, 0x01, 0x01, 0x32, 0x88, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x01, 0x12, 0x01, 0x32, 0x01, 0x11, 0x01, 0x32, 0x02, 0x01, 0x11, 0x80, 0x01, 0x32, 0x01, 0x01, 0x52, 0x83, 0x2A, 0xB7, 0x22, 0x97, 0x01, 0x72, 0x01, 0x32, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x12, 0x02, 0x01, 0x11, 0x83, 0x01, 0x12, 0x01, 0x11, 0x01, 0x32, 0x01, 0x11, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x04, 0x01, 0x12, 0x80, 0x01, 0x53, 0x07, 0x01, 0x12, 0x80, 0x01, 0x32, 0x10, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x11, 0x02, 0x01, 0x12, 0x81, 0x01, 0x32, 0x01, 0x12, 0x01, 0x01, 0x32, 0x80, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x82, 0x01, 0x12, 0x01, 0x11, 0x01, 0x12, 0x01, 0x01, 0x11, 0x80, 0x01, 0x32, 0x04, 0x01, 0x11, 0x86, 0x01, 0x31, 0x01, 0x72, 0x33, 0x39, 0x01, 0x92, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x81, 0x01, 0x52, 0x01, 0x32, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x07, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, + 0x12, 0x80, 0x01, 0x32, 0x07, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x07, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x04, 0x01, 0x11, 0x87, 0x01, 0x32, 0x01, 0x11, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x22, 0x96, 0x11, 0xF4, 0x01, 0x01, 0x31, 0x02, 0x01, 0x11, 0x80, 0x01, 0x32, 0x02, 0x01, 0x11, 0x80, 0x01, 0x32, 0x04, 0x01, 0x11, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x82, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x32, 0x0B, 0x01, 0x12, 0x80, 0x01, 0x32, 0x02, 0x01, 0x12, 0x80, 0x01, 0x32, 0x04, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x81, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x01, 0x11, 0x83, 0x01, 0x32, 0x01, 0x12, 0x01, 0x11, 0x01, 0x32, 0x02, 0x01, 0x11, 0x02, 0x01, 0x12, 0x01, 0x01, 0x11, 0x85, 0x01, 0x12, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x09, 0x52, 0x01, 0x32, 0x02, 0x01, 0x11, 0x87, 0x01, 0x32, 0x01, 0x72, 0x33, 0x19, 0x22, 0x76, 0x01, 0x52, 0x01, 0x31, 0x01, 0x32, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x01, 0x31, 0x01, 0x01, 0x11, 0x83, 0x01, 0x32, 0x01, 0x12, 0x01, 0x11, 0x01, 0x12, 0x01, 0x01, 0x11, 0x83, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x32, 0x01, 0x12, 0x02, 0x01, 0x32, 0x82, 0x01, 0x12, 0x01, 0x11, 0x01, 0x32, 0x02, 0x01, 0x12, 0x01, 0x01, 0x11, 0x83, 0x01, 0x32, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x05, 0x01, 0x12, 0x82, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x32, 0x0F, 0x01, 0x12, 0x84, 0x01, 0x11, + 0x01, 0x12, 0x01, 0x32, 0x01, 0x11, 0x01, 0x32, 0x01, 0x01, 0x11, 0x80, 0x01, 0x31, 0x03, 0x01, 0x11, 0x8C, 0x01, 0x31, 0x22, 0x76, 0x43, 0x9A, 0x01, 0x72, 0x01, 0x31, 0x01, 0x11, 0x01, 0x32, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x12, 0x01, 0x01, 0x11, 0x80, 0x01, 0x12, 0x02, 0x01, 0x11, 0x84, 0x01, 0x12, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x32, 0x05, 0x01, 0x12, 0x86, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x00, 0xF2, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x32, 0x07, 0x01, 0x12, 0x80, 0x01, 0x11, 0x01, 0x09, 0x11, 0x89, 0x08, 0xF1, 0x10, 0xF1, 0x20, 0xD0, 0x28, 0x8F, 0x48, 0xD0, 0x9A, 0x97, 0xA2, 0x56, 0xA1, 0xF4, 0xAA, 0x14, 0xA9, 0xF4, 0x01, 0xA9, 0xD3, 0x83, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xB3, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x90, 0xA9, 0xD3, 0xAA, 0x14, 0xA9, 0xD3, 0xA9, 0xF3, 0xB2, 0x13, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0xA1, 0xF3, 0xA2, 0x35, 0xA2, 0x76, 0x9A, 0xD8, 0x18, 0x0D, 0x18, 0xB0, 0x11, 0x11, 0x00, 0xF1, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x02, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x03, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x0B, 0x01, 0x12, 0x81, 0x01, 0x11, 0x01, 0x32, 0x02, 0x01, 0x11, 0x82, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x12, 0x03, 0x01, 0x11, 0x03, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x01, 0x12, 0x03, 0x01, 0x11, 0x80, 0x01, 0x31, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x80, 0x01, 0x31, 0x01, 0x01, 0x32, 0x86, 0x01, 0x31, 0x01, 0x72, + 0x2A, 0xB7, 0x33, 0x39, 0x09, 0xF4, 0x01, 0x52, 0x01, 0x31, 0x01, 0x01, 0x32, 0x80, 0x01, 0x12, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x01, 0x32, 0x80, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x83, 0x01, 0x12, 0x01, 0x11, 0x09, 0x52, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x12, 0x03, 0x01, 0x11, 0x81, 0x01, 0x12, 0x01, 0x11, 0x01, 0x01, 0x12, 0x07, 0x00, 0xF1, 0x81, 0x01, 0x12, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x82, 0x00, 0xD1, 0x01, 0x12, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x87, 0x01, 0x31, 0x12, 0x15, 0x2A, 0xD8, 0x2A, 0xF8, 0x1A, 0x76, 0x01, 0x93, 0x01, 0x52, 0x01, 0x31, 0x03, 0x01, 0x11, 0x81, 0x01, 0x12, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x06, 0x00, 0xF1, 0x80, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xF2, 0x06, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x0A, 0x00, 0xF1, 0x84, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD1, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x01, 0x31, 0x86, 0x01, 0x52, 0x01, 0x72, 0x1A, 0x55, 0x3B, 0x39, 0x33, 0x18, 0x12, 0x35, 0x01, 0x72, 0x02, 0x01, 0x31, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x32, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x83, 0x01, 0x11, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x12, 0x02, 0x01, 0x11, 0x82, 0x01, 0x12, 0x01, 0x11, 0x00, 0xF1, 0x04, + 0x01, 0x11, 0x07, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x86, 0x2A, 0xD7, 0x2A, 0xB7, 0x1A, 0x34, 0x11, 0xD3, 0x01, 0x51, 0x01, 0x30, 0x01, 0x10, 0x08, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x07, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x84, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x82, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD1, 0x03, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x87, 0x09, 0xB3, 0x22, 0x76, 0x22, 0x96, 0x22, 0xB6, 0x1A, 0x55, 0x09, 0xD3, 0x01, 0x72, 0x01, 0x51, 0x01, 0x01, 0x31, 0x01, 0x01, 0x10, 0x05, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x83, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x80, 0x01, 0x31, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x86, 0x01, 0x72, 0x22, 0x76, 0x3B, 0x39, 0x2A, 0xB7, 0x11, 0xF4, 0x01, 0x72, 0x01, 0x31, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, + 0x06, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xF2, 0x03, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x80, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x83, 0x01, 0x11, 0x01, 0x32, 0x01, 0x11, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x81, 0x01, 0x31, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x88, 0x01, 0x11, 0x01, 0x72, 0x1A, 0x55, 0x2A, 0xD7, 0x1A, 0x76, 0x09, 0xD3, 0x01, 0x51, 0x01, 0x31, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x83, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x12, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x01, 0x31, 0x83, 0x09, 0xF4, 0x33, 0x59, 0x12, 0x35, 0x01, 0x31, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x01, 0x12, 0x03, 0x01, 0x11, 0x01, 0x01, 0x12, 0x03, 0x01, 0x11, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x12, + 0x82, 0x01, 0x11, 0x01, 0x12, 0x01, 0x32, 0x05, 0x01, 0x12, 0x80, 0x00, 0xF2, 0x05, 0x01, 0x12, 0x05, 0x01, 0x11, 0x80, 0x01, 0x32, 0x0C, 0x01, 0x11, 0x85, 0x01, 0x32, 0x01, 0x31, 0x12, 0x15, 0x33, 0x19, 0x09, 0xB3, 0x01, 0x32, 0x0B, 0x01, 0x11, 0x19, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x06, 0x01, 0x12, 0x01, 0x01, 0x11, 0x06, 0x01, 0x12, 0x80, 0x01, 0x11, 0x01, 0x01, 0x12, 0x0B, 0x01, 0x11, 0x8A, 0x01, 0x31, 0x22, 0xB7, 0x2A, 0xD8, 0x01, 0x52, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x32, 0x01, 0x11, 0x01, 0x31, 0x03, 0x01, 0x11, 0x84, 0x01, 0x32, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x12, 0x06, 0x01, 0x11, 0x81, 0x01, 0x12, 0x01, 0x11, 0x04, 0x01, 0x12, 0x80, 0x01, 0x11, 0x0B, 0x01, 0x12, 0x81, 0x01, 0x11, 0x01, 0x32, 0x03, 0x01, 0x12, 0x80, 0x01, 0x11, 0x04, 0x01, 0x12, 0x81, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x01, 0x11, 0x01, 0x01, 0x12, 0x80, 0x01, 0x32, 0x03, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x85, 0x00, 0xF1, 0x00, 0xD0, 0x22, 0x96, 0x09, 0xF3, 0x01, 0x11, 0x01, 0x31, 0x0A, 0x01, 0x11, 0x80, 0x01, 0x32, 0x03, 0x01, 0x11, 0x01, 0x01, 0x12, 0x81, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x01, 0x11, 0x81, 0x01, 0x12, 0x01, 0x11, 0x02, 0x01, 0x12, 0x80, 0x01, 0x11, 0x07, 0x01, 0x12, 0x01, 0x01, 0x11, 0x05, 0x01, 0x12, 0x83, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x07, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x0B, 0x01, 0x11, 0x01, 0x01, 0x31, 0x83, 0x12, 0x15, 0x43, 0x9B, 0x01, 0x52, 0x01, + 0x31, 0x01, 0x01, 0x11, 0x82, 0x01, 0x12, 0x01, 0x11, 0x01, 0x31, 0x0C, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x09, 0x01, 0x11, 0x80, 0x01, 0x32, 0x05, 0x01, 0x11, 0x82, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x01, 0x11, 0x0D, 0x01, 0x12, 0x82, 0x01, 0x32, 0x01, 0x11, 0x00, 0xF1, 0x06, 0x01, 0x11, 0x80, 0x01, 0x31, 0x01, 0x01, 0x11, 0x84, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x31, 0x32, 0xF8, 0x3B, 0x59, 0x01, 0x01, 0x31, 0x01, 0x01, 0x11, 0x80, 0x01, 0x12, 0x03, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x04, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x01, 0x01, 0x11, 0x03, 0x01, 0x12, 0x04, 0x01, 0x11, 0x90, 0x09, 0x11, 0x08, 0xF1, 0x10, 0xF1, 0x18, 0xF1, 0x20, 0xB0, 0x30, 0x4E, 0x8A, 0x97, 0x9A, 0x35, 0xA2, 0x15, 0xA1, 0xF4, 0xA9, 0xF4, 0xA9, 0xD3, 0xA9, 0xB3, 0xA9, 0xF4, 0xB1, 0xF4, 0xA9, 0xD3, 0xB1, 0xF4, 0x01, 0xA9, 0xD3, 0x07, 0xA9, 0xF3, 0x86, 0xA9, 0xF4, 0xA2, 0x34, 0x9A, 0x55, 0x9A, 0xF8, 0x38, 0xF0, 0x29, 0x31, 0x11, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x89, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x11, 0x02, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x12, 0x01, 0x00, + 0xF1, 0x81, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x01, 0x31, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x01, 0x31, 0x02, 0x01, 0x11, 0x80, 0x01, 0x31, 0x01, 0x01, 0x11, 0x01, 0x01, 0x31, 0x88, 0x01, 0x51, 0x12, 0x14, 0x3B, 0x7A, 0x1A, 0x76, 0x01, 0x52, 0x01, 0x31, 0x01, 0x32, 0x01, 0x31, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x82, 0x01, 0x32, 0x01, 0x11, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x06, 0x00, 0xF1, 0x80, 0x01, 0x12, 0x05, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x08, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x85, 0x01, 0x52, 0x09, 0xD4, 0x22, 0xB7, 0x2B, 0x18, 0x22, 0x96, 0x01, 0x72, 0x01, 0x01, 0x31, 0x80, 0x01, 0x11, 0x01, 0x01, 0x31, 0x01, 0x01, 0x11, 0x82, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x31, 0x0A, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x0B, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x85, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xD0, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xD0, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x88, 0x01, 0x31, 0x01, 0x11, 0x01, 0x31, 0x01, 0x72, 0x12, 0x14, 0x22, 0xB7, 0x33, + 0x38, 0x22, 0x96, 0x09, 0x93, 0x02, 0x01, 0x31, 0x02, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x08, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x0F, 0x00, 0xF1, 0x83, 0x01, 0x11, 0x11, 0xB3, 0x01, 0x51, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x83, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xF1, 0x81, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x03, 0x00, 0xD1, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x01, 0x01, 0x11, 0x88, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x51, 0x09, 0xD3, 0x22, 0x96, 0x2A, 0xB7, 0x22, 0x96, 0x1A, 0x55, 0x09, 0xB3, 0x02, 0x01, 0x11, 0x05, 0x00, 0xF0, 0x82, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x80, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x06, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x80, 0x01, 0x31, 0x03, 0x01, 0x11, 0x80, 0x01, 0x31, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF0, 0x89, 0x01, 0x11, 0x01, 0x31, 0x01, + 0x11, 0x01, 0x31, 0x01, 0x72, 0x12, 0x14, 0x2A, 0xF7, 0x2A, 0xD7, 0x1A, 0x35, 0x01, 0x72, 0x02, 0x01, 0x11, 0x84, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x06, 0x01, 0x11, 0x84, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x11, 0x08, 0x00, 0xF1, 0x82, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD1, 0x06, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x83, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x86, 0x01, 0x31, 0x09, 0xF4, 0x22, 0x96, 0x2A, 0xD7, 0x1A, 0x35, 0x01, 0x72, 0x01, 0x31, 0x09, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x01, 0x32, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x10, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x08, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x87, 0x01, 0x11, 0x01, 0x31, 0x01, 0x51, 0x1A, 0x55, 0x3B, 0x7A, 0x09, 0xD3, 0x01, 0x51, 0x01, 0x52, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x12, 0x01, 0x11, 0x01, 0x12, 0x05, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x83, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x06, 0x01, 0x12, 0x82, 0x00, 0xF1, + 0x01, 0x12, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x0F, 0x01, 0x11, 0x01, 0x01, 0x31, 0x83, 0x09, 0xB3, 0x3B, 0x7A, 0x11, 0xF4, 0x01, 0x31, 0x05, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x82, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xD1, 0x04, 0x00, 0xF1, 0x81, 0x01, 0x12, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x02, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x06, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x03, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x03, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x85, 0x01, 0x11, 0x01, 0x32, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x01, 0x32, 0x01, 0x01, 0x11, 0x80, 0x01, 0x32, 0x05, 0x01, 0x11, 0x82, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x83, 0x01, 0x31, 0x01, 0x51, 0x43, 0x9A, 0x09, 0xD3, 0x01, 0x01, 0x31, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x0E, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x80, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x87, 0x01, 0x32, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x11, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x12, 0x03, 0x01, 0x11, 0x80, 0x01, 0x12, 0x01, 0x01, 0x11, 0x02, 0x01, 0x12, 0x80, 0x01, 0x11, 0x06, 0x01, 0x12, 0x80, 0x01, 0x32, 0x01, 0x01, 0x12, 0x01, 0x01, 0x11, 0x83, 0x01, 0x31, 0x01, 0x32, 0x01, 0x11, 0x01, 0x12, 0x03, 0x00, 0xF1, 0x84, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xF0, 0x2A, 0xD7, 0x09, 0xF4, 0x07, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x82, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x83, + 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x12, 0x04, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x01, 0x11, 0x80, 0x01, 0x31, 0x13, 0x01, 0x11, 0x81, 0x01, 0x31, 0x01, 0x11, 0x01, 0x01, 0x31, 0x81, 0x43, 0x9A, 0x01, 0x92, 0x0A, 0x01, 0x11, 0x83, 0x00, 0xF1, 0x01, 0x32, 0x01, 0x11, 0x01, 0x32, 0x01, 0x01, 0x11, 0x80, 0x01, 0x31, 0x03, 0x01, 0x11, 0x01, 0x01, 0x31, 0x02, 0x01, 0x11, 0x80, 0x01, 0x32, 0x07, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x86, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x0B, 0x01, 0x12, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x02, 0x01, 0x11, 0x8D, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x11, 0x01, 0x92, 0x43, 0x9A, 0x22, 0x96, 0x01, 0x51, 0x01, 0x31, 0x01, 0x11, 0x01, 0x32, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x82, 0x01, 0x32, 0x01, 0x12, 0x01, 0x32, 0x01, 0x01, 0x12, 0x02, 0x01, 0x11, 0x8C, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF1, 0x08, 0xF1, 0x10, 0xF1, 0x20, 0xD0, 0x28, 0x6F, 0x69, 0xD4, 0x92, 0x56, 0x99, 0xF4, 0xA2, 0x14, 0xA9, 0xF4, 0xA1, 0xD3, 0x01, 0xA9, 0xD3, 0x80, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x83, 0xB1, 0xF3, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x8C, 0xB1, 0xF3, 0xA9, 0xD3, + 0xB1, 0xF3, 0xA9, 0xF3, 0xAA, 0x14, 0xA2, 0x14, 0x9A, 0x55, 0x92, 0xD7, 0x41, 0x31, 0x42, 0x15, 0x19, 0x52, 0x09, 0x11, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x83, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x32, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x07, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x01, 0x12, 0x01, 0x01, 0x11, 0x82, 0x00, 0xF1, 0x00, 0xD1, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x01, 0x01, 0x31, 0x83, 0x01, 0x72, 0x32, 0xF8, 0x2A, 0xD7, 0x09, 0xD3, 0x02, 0x01, 0x51, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x01, 0x32, 0x01, 0x11, 0x07, 0x00, 0xF1, 0x08, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x05, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x84, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x03, 0x00, 0xF1, 0x83, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x87, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x31, 0x11, 0xF4, 0x2A, 0xB7, 0x2A, 0xF8, 0x12, 0x14, 0x01, 0x92, 0x01, 0x01, 0x51, 0x01, 0x01, 0x31, 0x04, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x01, + 0x00, 0xF1, 0x01, 0x01, 0x11, 0x09, 0x00, 0xF1, 0x08, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x06, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x01, 0x31, 0x89, 0x09, 0xB3, 0x2A, 0xB7, 0x33, 0x39, 0x22, 0x96, 0x09, 0xD3, 0x01, 0x51, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x08, 0x00, 0xF1, 0x86, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x03, 0x00, 0xD1, 0x03, 0x00, 0xF1, 0x06, 0x00, 0xD1, 0x80, 0x00, 0xD0, 0x04, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x06, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x89, 0x01, 0x31, 0x01, 0x51, 0x11, 0xF4, 0x32, 0xF7, 0x32, 0xF8, 0x22, 0xB6, 0x12, 0x14, 0x01, 0x72, 0x01, 0x31, 0x01, 0x11, 0x07, 0x00, 0xF0, 0x83, 0x01, 0x10, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x83, 0x01, 0x11, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xD1, 0x82, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, + 0x04, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x08, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x07, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x83, 0x01, 0x10, 0x01, 0x31, 0x01, 0x71, 0x11, 0xF4, 0x01, 0x2A, 0xD7, 0x82, 0x11, 0xF4, 0x01, 0x92, 0x01, 0x31, 0x02, 0x01, 0x11, 0x04, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x0E, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x82, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x8B, 0x00, 0xD1, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x72, 0x1A, 0x55, 0x2A, 0xF7, 0x22, 0x96, 0x01, 0x92, 0x01, 0x31, 0x01, 0x11, 0x01, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x80, 0x01, 0x31, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x06, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x80, 0x01, 0x31, 0x05, 0x01, 0x11, 0x80, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x83, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x06, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x85, 0x01, 0x51, 0x2A, 0xD7, 0x3B, 0x59, 0x01, 0xB2, 0x01, + 0x51, 0x01, 0x31, 0x01, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x83, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x01, 0x12, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x83, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x0B, 0x01, 0x11, 0x88, 0x01, 0x31, 0x01, 0x72, 0x3B, 0x59, 0x1A, 0x55, 0x01, 0x52, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x07, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x12, 0x04, 0x00, 0xF1, 0x81, 0x01, 0x12, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x12, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x12, 0x00, 0xF1, 0x07, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x08, 0x01, 0x11, 0x88, 0x01, 0x31, 0x01, 0x92, 0x43, 0x9A, 0x01, 0x11, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x12, + 0x10, 0x01, 0x11, 0x01, 0x01, 0x12, 0x01, 0x01, 0x11, 0x80, 0x01, 0x32, 0x01, 0x01, 0x11, 0x03, 0x01, 0x12, 0x04, 0x01, 0x11, 0x81, 0x01, 0x32, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x12, 0x04, 0x00, 0xF1, 0x82, 0x00, 0xD0, 0x2A, 0xB7, 0x09, 0xF4, 0x07, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x83, 0x00, 0xF1, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x01, 0x01, 0x31, 0x81, 0x1A, 0x75, 0x22, 0x96, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x06, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x80, 0x01, 0x31, 0x10, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x01, 0x12, 0x01, 0x00, 0xF1, 0x82, 0x01, 0x12, 0x00, 0xF2, 0x01, 0x12, 0x07, 0x00, 0xF1, 0x01, 0x01, 0x12, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x85, 0x01, 0x11, 0x01, 0x31, 0x09, 0xF3, 0x3B, 0x79, 0x12, 0x35, 0x01, 0x31, 0x03, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x07, 0x01, 0x11, 0x80, 0x01, 0x12, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x01, 0x12, 0x01, 0x00, + 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x03, 0x01, 0x12, 0x03, 0x01, 0x11, 0x8C, 0x09, 0x11, 0x08, 0xF1, 0x10, 0xF0, 0x18, 0xD0, 0x20, 0x8F, 0x38, 0x90, 0x9A, 0xB7, 0x9A, 0x15, 0xA2, 0x15, 0xAA, 0x35, 0xA1, 0xD3, 0xA9, 0xF4, 0xA9, 0xF3, 0x02, 0xA9, 0xD3, 0x92, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0xB1, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0xA9, 0xD3, 0xAA, 0x14, 0xA9, 0xF4, 0xA2, 0x14, 0x9A, 0x76, 0x92, 0xF8, 0x41, 0x52, 0x5A, 0xF8, 0x42, 0x97, 0x11, 0x92, 0x09, 0x52, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x83, 0x00, 0xF1, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x12, 0x04, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x0B, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x06, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x83, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x80, 0x01, 0x10, 0x01, 0x01, 0x31, 0x86, 0x11, 0xF4, 0x33, 0x39, 0x22, 0x76, 0x01, 0x92, 0x01, 0x72, 0x01, 0x52, 0x01, 0x31, 0x05, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x05, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x08, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x83, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD1, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x08, 0x00, 0xF1, 0x83, 0x00, 0xD1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x84, 0x00, + 0xD1, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x86, 0x01, 0x52, 0x09, 0xD3, 0x22, 0xD7, 0x2A, 0xD7, 0x12, 0x34, 0x01, 0x72, 0x01, 0x51, 0x01, 0x01, 0x31, 0x06, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x85, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x01, 0x31, 0x04, 0x01, 0x11, 0x0B, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x02, 0x01, 0x31, 0x81, 0x01, 0x71, 0x11, 0xF4, 0x01, 0x33, 0x18, 0x86, 0x1A, 0x14, 0x01, 0x31, 0x01, 0x11, 0x01, 0x31, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD1, 0x04, 0x00, 0xF1, 0x82, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x83, 0x01, 0x11, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x82, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x11, 0x03, 0x00, 0xF1, + 0x02, 0x00, 0xD1, 0x06, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x08, 0x00, 0xF0, 0x88, 0x01, 0x10, 0x01, 0x31, 0x01, 0x72, 0x12, 0x34, 0x2A, 0xF7, 0x33, 0x18, 0x22, 0x75, 0x11, 0xD3, 0x01, 0x31, 0x02, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x03, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x08, 0x00, 0xF1, 0x82, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD1, 0x09, 0x00, 0xF1, 0x02, 0x00, 0xD1, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x84, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF0, 0x88, 0x01, 0x10, 0x01, 0x51, 0x11, 0xF3, 0x2A, 0xB6, 0x2A, 0xD7, 0x1A, 0x34, 0x01, 0x72, 0x01, 0x31, 0x01, 0x10, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x83, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x81, 0x00, 0xD1, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x80, 0x11, 0xF4, 0x01, 0x2A, 0xF7, 0x82, 0x11, 0xF4, 0x01, 0x51, 0x01, 0x31, 0x01, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x01, + 0x11, 0x05, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x86, 0x01, 0x11, 0x01, 0x52, 0x33, 0x18, 0x2A, 0xD7, 0x01, 0x71, 0x01, 0x51, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x07, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x84, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x07, 0x00, 0xF1, 0x83, 0x00, 0xD1, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x85, 0x01, 0x51, 0x33, 0x18, 0x2A, 0xD7, 0x01, 0x52, 0x01, 0x31, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x12, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x06, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD1, 0x0D, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, + 0x01, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x80, 0x00, 0xF0, 0x01, 0x22, 0x96, 0x86, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD0, 0x01, 0x11, 0x01, 0x31, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x01, 0x31, 0x01, 0x01, 0x11, 0x83, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x06, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x87, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x83, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x12, 0x03, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x01, 0x32, 0x05, 0x00, 0xF1, 0x89, 0x00, 0xD0, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD0, 0x2A, 0xB7, 0x09, 0xB3, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x0E, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x84, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x06, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x31, 0x03, 0x01, 0x11, 0x83, 0x01, 0x51, 0x09, 0xD3, 0x53, 0xFC, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, + 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x09, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x01, 0x12, 0x01, 0x00, 0xD1, 0x07, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x83, 0x01, 0x30, 0x12, 0x34, 0x3B, 0x59, 0x09, 0xD4, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x06, 0x01, 0x11, 0x80, 0x01, 0x12, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x80, 0x01, 0x12, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x08, 0xF1, 0x85, 0x10, 0xF1, 0x18, 0x90, 0x20, 0x0E, 0x82, 0x35, 0xA2, 0x76, 0x99, 0xF4, 0x01, 0xA1, 0xF4, 0x01, 0xA9, 0xF3, 0x82, 0xB1, 0xF3, 0xA9, 0xB3, 0xA9, 0xD3, 0x04, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x8F, 0xB1, 0xF3, 0xA9, 0xF4, 0xA9, 0xF3, 0xA1, 0xF3, 0x99, 0xF4, 0x9A, 0x55, 0x92, 0xF8, 0x38, 0xF0, 0x29, 0x52, 0x42, 0x96, 0x32, 0x96, 0x11, 0xB3, 0x01, 0x51, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x13, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x80, 0x01, 0x31, 0x04, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x82, + 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x83, 0x00, 0xF0, 0x01, 0x11, 0x01, 0x31, 0x09, 0x92, 0x01, 0x33, 0x38, 0x83, 0x09, 0xF4, 0x01, 0x71, 0x01, 0x31, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x83, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x08, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x0B, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x10, 0x89, 0x01, 0x51, 0x1A, 0x34, 0x33, 0x18, 0x2A, 0xD7, 0x09, 0xF3, 0x01, 0x72, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x10, 0x03, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x0B, 0x00, 0xF1, 0x84, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF1, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x83, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x81, 0x01, 0x11, 0x01, 0x31, 0x01, 0x01, 0x10, 0x87, 0x01, 0x31, 0x1A, 0x14, 0x3B, 0x39, + 0x33, 0x18, 0x1A, 0x35, 0x01, 0x72, 0x01, 0x31, 0x01, 0x10, 0x05, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x83, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x81, 0x00, 0xF1, 0x00, 0xD1, 0x04, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD1, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x08, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x84, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x10, 0x06, 0x00, 0xF0, 0x87, 0x01, 0x10, 0x01, 0x72, 0x1A, 0x55, 0x2A, 0xF7, 0x2A, 0xD7, 0x12, 0x34, 0x01, 0x92, 0x01, 0x31, 0x02, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x02, 0x00, 0xD1, 0x81, 0x00, 0xF1, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x88, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD1, 0x02, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xF1, + 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x88, 0x01, 0x10, 0x01, 0x31, 0x11, 0xF3, 0x2A, 0xD7, 0x32, 0xF7, 0x1A, 0x55, 0x09, 0x92, 0x01, 0x31, 0x01, 0x11, 0x04, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF0, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x07, 0x00, 0xF1, 0x04, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x87, 0x01, 0x11, 0x01, 0x52, 0x22, 0x76, 0x3B, 0x39, 0x22, 0x96, 0x01, 0x92, 0x01, 0x31, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x0D, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x00, 0xF0, 0x0F, 0x00, 0xF1, 0x05, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x86, 0x01, 0x10, 0x01, 0x52, 0x3B, 0x39, 0x1A, 0x75, 0x01, 0x72, 0x01, 0x31, 0x01, 0x10, 0x03, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x81, 0x00, 0xD0, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, + 0x00, 0xF1, 0x01, 0x01, 0x11, 0x0B, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x08, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x85, 0x01, 0x31, 0x22, 0x96, 0x3B, 0x39, 0x01, 0x92, 0x01, 0x31, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x83, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x1C, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x03, 0x01, 0x11, 0x84, 0x00, 0xF0, 0x43, 0x9A, 0x09, 0xB3, 0x01, 0x31, 0x01, 0x11, 0x01, 0x00, 0xD0, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x0C, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x08, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x86, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x86, 0x00, 0xF1, 0x00, 0xD0, 0x2A, 0x97, 0x09, 0x93, 0x01, 0x11, 0x01, 0x12, 0x01, 0x11, 0x0F, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, + 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x83, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xF1, 0x00, 0xD1, 0x03, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x06, 0x01, 0x11, 0x83, 0x01, 0x51, 0x43, 0x7A, 0x11, 0xD4, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x07, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x09, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xD1, 0x09, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x02, 0x01, 0x10, 0x83, 0x01, 0x51, 0x1A, 0x76, 0x3B, 0x59, 0x01, 0x72, 0x04, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x08, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x89, 0x00, 0xF0, 0x08, 0xF0, 0x18, 0xD0, 0x18, 0x2E, 0x59, 0x32, 0x9A, 0xB7, 0x9A, 0x15, 0xA2, 0x15, 0xA1, 0xD4, 0xA9, 0xF4, 0x03, 0xA9, 0xD3, 0x80, 0xB1, 0xF3, 0x04, + 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x90, 0xA9, 0xF3, 0xA1, 0xD3, 0xAA, 0x14, 0xA2, 0x14, 0x9A, 0x55, 0x92, 0xF8, 0x18, 0x0D, 0x10, 0x8F, 0x11, 0x11, 0x22, 0x14, 0x32, 0xB7, 0x11, 0xF4, 0x01, 0x51, 0x01, 0x31, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x0B, 0x00, 0xF1, 0x82, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x04, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x83, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x88, 0x01, 0x11, 0x01, 0x31, 0x01, 0x51, 0x12, 0x14, 0x3B, 0x38, 0x22, 0x96, 0x09, 0xB3, 0x01, 0x51, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x06, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x82, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x82, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD1, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x8C, 0x01, 0x72, 0x12, 0x14, 0x33, 0x18, 0x2A, 0xD7, 0x11, 0xF4, 0x01, 0x51, 0x01, 0x30, 0x01, 0x31, 0x01, 0x10, 0x00, 0xF0, + 0x01, 0x10, 0x00, 0xF0, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x82, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x84, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x03, 0x01, 0x10, 0x85, 0x01, 0x51, 0x09, 0xB2, 0x22, 0x96, 0x33, 0x18, 0x2A, 0xB7, 0x09, 0x92, 0x03, 0x01, 0x10, 0x07, 0x00, 0xF0, 0x82, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x0A, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xF1, 0x81, 0x00, 0xD1, 0x00, 0xF1, 0x02, 0x00, 0xD1, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x81, 0x00, 0xF1, 0x00, 0xF0, 0x03, 0x00, 0xF1, 0x83, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x03, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x8B, 0x01, 0x30, 0x09, 0xB3, 0x22, 0x75, 0x33, 0x18, 0x2A, 0xD7, 0x09, 0xD3, 0x01, 0x51, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, + 0x01, 0x10, 0x02, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xD1, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x03, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x01, 0x11, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x83, 0x01, 0x10, 0x01, 0x51, 0x11, 0xF4, 0x22, 0x76, 0x01, 0x22, 0x96, 0x80, 0x09, 0xB2, 0x01, 0x01, 0x10, 0x80, 0x01, 0x11, 0x06, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x0A, 0x00, 0xF1, 0x82, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x82, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x06, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x05, 0x00, 0xF0, 0x87, 0x00, 0xF1, 0x01, 0x11, 0x09, 0xB3, 0x2A, 0xB7, 0x32, 0xF7, 0x12, 0x14, 0x01, 0x51, 0x01, 0x10, 0x08, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x83, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xD1, 0x0D, 0x00, 0xF1, 0x89, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x00, 0xF1, 0x00, + 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x0A, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x09, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x84, 0x09, 0xB3, 0x3B, 0x39, 0x12, 0x14, 0x01, 0x72, 0x01, 0x31, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x06, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x02, 0x01, 0x11, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x87, 0x11, 0xF4, 0x3B, 0x19, 0x09, 0x93, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x0A, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x83, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x06, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x32, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF0, 0x86, 0x01, 0x11, 0x01, 0x10, 0x11, 0xD3, 0x3B, 0x18, 0x01, 0x51, 0x01, 0x31, 0x01, 0x11, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, + 0xF1, 0x02, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x05, 0x00, 0xF1, 0x86, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x84, 0x2A, 0xD7, 0x11, 0xF4, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x10, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x0A, 0x00, 0xF1, 0x86, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x82, 0x11, 0xD3, 0x3B, 0x19, 0x01, 0x31, 0x03, 0x01, 0x11, 0x01, 0x00, 0xD0, 0x06, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x02, + 0x00, 0xF1, 0x80, 0x01, 0x11, 0x06, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x0B, 0x00, 0xF1, 0x83, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x86, 0x01, 0x31, 0x01, 0x51, 0x1A, 0x76, 0x2A, 0xF7, 0x01, 0x51, 0x01, 0x11, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x01, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x02, 0x01, 0x11, 0x88, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x82, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x31, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x8B, 0x08, 0xD0, 0x19, 0x11, 0x28, 0xD0, 0x38, 0x6E, 0x9A, 0xB7, 0x9A, 0x55, 0xA2, 0x35, 0x99, 0xD3, 0xA1, 0xD3, 0xB2, 0x14, 0xA9, 0xD3, 0xB2, 0x14, 0x01, 0xA9, 0xD3, 0x80, 0xB1, 0xF3, 0x01, 0xA9, 0xD3, 0x81, 0xA9, 0xF3, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x8D, 0xB1, 0xF4, 0xA9, 0xF4, 0xAA, 0x14, 0xAA, 0x55, 0x9A, 0x55, 0x92, 0xF7, 0x18, 0x0C, 0x08, 0x6E, 0x08, 0xF0, 0x01, 0x10, 0x11, 0xB2, 0x32, 0xF7, 0x1A, 0x14, 0x01, 0x31, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x31, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xD1, 0x00, 0xF1, 0x02, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x84, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x01, 0x00, + 0xF1, 0x80, 0x00, 0xD1, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x05, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x82, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x87, 0x01, 0x11, 0x01, 0x10, 0x01, 0x51, 0x32, 0xF7, 0x33, 0x18, 0x1A, 0x55, 0x01, 0x92, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x0D, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x03, 0x00, 0xF0, 0x82, 0x01, 0x11, 0x00, 0xF0, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x8D, 0x01, 0x51, 0x22, 0x55, 0x33, 0x18, 0x2A, 0xF7, 0x12, 0x14, 0x01, 0x71, 0x01, 0x31, 0x01, 0x11, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xD1, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x04, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x09, 0x00, 0xF0, + 0x80, 0x01, 0x10, 0x04, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x88, 0x01, 0x10, 0x01, 0x31, 0x09, 0xB2, 0x22, 0xB6, 0x33, 0x38, 0x22, 0x96, 0x09, 0xF3, 0x01, 0x71, 0x01, 0x30, 0x03, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x83, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x0B, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x81, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xD1, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x84, 0x01, 0x11, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x07, 0x00, 0xF0, 0x88, 0x01, 0x31, 0x11, 0xF4, 0x32, 0xF7, 0x33, 0x18, 0x1A, 0x55, 0x09, 0xB2, 0x01, 0x51, 0x01, 0x31, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x86, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x01, 0x00, + 0xF1, 0x85, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x82, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x88, 0x00, 0xF0, 0x01, 0x10, 0x1A, 0x14, 0x2A, 0xD7, 0x2A, 0xB7, 0x1A, 0x55, 0x09, 0xD3, 0x01, 0x31, 0x01, 0x10, 0x03, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x82, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x05, 0x00, 0xF1, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x03, 0x00, 0xF0, 0x03, 0x00, 0xF1, 0x85, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x87, 0x01, 0x10, 0x01, 0x51, 0x22, 0x55, 0x32, 0xF8, 0x22, 0x76, 0x01, 0x51, 0x01, 0x30, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x82, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD1, 0x05, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x06, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x07, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x06, 0x00, 0xF0, 0x85, 0x01, 0x10, 0x1A, 0x35, + 0x3B, 0x18, 0x11, 0xF4, 0x01, 0x72, 0x01, 0x31, 0x02, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x82, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x07, 0x00, 0xF1, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x02, 0x01, 0x11, 0x88, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x82, 0x00, 0xD0, 0x01, 0x11, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x87, 0x01, 0x11, 0x01, 0x52, 0x3B, 0x19, 0x11, 0xF4, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x06, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x89, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x04, 0x00, 0xF0, 0x02, 0x01, 0x10, 0x86, 0x43, 0x59, 0x1A, 0x14, 0x01, 0x51, 0x01, 0x11, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x01, 0x00, + 0xF0, 0x82, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF0, 0x08, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x84, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x84, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x84, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xB0, 0x2A, 0x96, 0x11, 0xD3, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x07, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x86, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x09, 0x00, 0xF1, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x85, 0x01, 0x10, 0x01, 0x31, 0x33, 0x18, 0x01, 0x92, 0x01, 0x31, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xF1, 0x82, 0x00, 0xD1, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x82, 0x00, 0xF1, 0x01, 0x11, + 0x00, 0xF0, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x87, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x03, 0x00, 0xF0, 0x8A, 0x01, 0x10, 0x01, 0x11, 0x01, 0x31, 0x01, 0x92, 0x22, 0xD7, 0x2A, 0xD7, 0x01, 0x31, 0x01, 0x11, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xD1, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x06, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x84, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x84, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x8A, 0x08, 0xD0, 0x10, 0xD0, 0x20, 0xD0, 0x28, 0x2E, 0x7A, 0x35, 0xA2, 0xB7, 0x99, 0xF4, 0xA1, 0xF4, 0xA1, 0xD4, 0xA9, 0xF4, 0xB1, 0xF4, 0x01, 0xA9, 0xD3, 0x82, 0xB1, 0xF3, 0xA9, 0xD3, 0xA9, 0xB2, 0x02, 0xA9, 0xD3, 0x80, 0xA9, 0xF3, 0x01, 0xB1, 0xF3, 0x8D, 0xB1, 0xF4, 0xAA, 0x14, 0xAA, 0x35, 0x9A, 0x55, 0x92, 0xB7, 0x18, 0x0C, 0x08, 0x6E, 0x08, 0xAF, 0x00, 0xF0, 0x01, 0x31, 0x09, 0x92, 0x3B, 0x18, 0x22, 0x55, 0x01, 0x31, 0x01, 0x01, 0x11, 0x87, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x06, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x80, 0x00, 0xF0, + 0x01, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x06, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x04, 0x00, 0xF1, 0x82, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x05, 0x00, 0xF0, 0x88, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x31, 0x09, 0xD3, 0x2A, 0xB7, 0x33, 0x18, 0x11, 0xD3, 0x01, 0x31, 0x02, 0x00, 0xF0, 0x84, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x85, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x05, 0x00, 0xF1, 0x83, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x07, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x86, 0x01, 0x72, 0x12, 0x14, 0x33, 0x17, 0x32, 0xF7, 0x11, 0xF3, 0x01, 0x51, 0x01, 0x31, 0x01, 0x01, 0x10, 0x83, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x06, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x04, 0x00, 0xF0, + 0x80, 0x00, 0xF1, 0x13, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x89, 0x01, 0x51, 0x01, 0x92, 0x12, 0x14, 0x22, 0xB6, 0x3B, 0x58, 0x1A, 0x54, 0x01, 0x51, 0x01, 0x30, 0x01, 0x31, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x85, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x09, 0x00, 0xD0, 0x0B, 0x00, 0xF0, 0x84, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x06, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x83, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x8B, 0x01, 0x10, 0x01, 0x51, 0x1A, 0x34, 0x33, 0x18, 0x2A, 0xD7, 0x1A, 0x14, 0x01, 0x31, 0x01, 0x30, 0x01, 0x51, 0x01, 0x31, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x08, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF1, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x80, 0x01, 0x11, 0x04, 0x00, 0xD0, 0x87, 0x00, 0xF0, 0x01, 0x10, 0x11, 0xB3, 0x2A, 0x96, + 0x22, 0x76, 0x1A, 0x55, 0x11, 0xD3, 0x01, 0x51, 0x04, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x87, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x31, 0x11, 0xF3, 0x2A, 0xD7, 0x22, 0xB6, 0x12, 0x14, 0x01, 0x31, 0x06, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x03, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x04, 0x00, 0xF1, 0x84, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD1, 0x04, 0x00, 0xF1, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x86, 0x01, 0x10, 0x01, 0x31, 0x22, 0x75, 0x32, 0xF8, 0x11, 0xD3, 0x01, 0x72, 0x01, 0x10, 0x03, 0x00, + 0xF0, 0x01, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x05, 0x00, 0xF1, 0x03, 0x00, 0xF0, 0x88, 0x01, 0x11, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x01, 0x01, 0x11, 0x82, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x07, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x88, 0x01, 0x11, 0x01, 0x31, 0x33, 0x18, 0x22, 0x35, 0x01, 0x32, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x83, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF0, 0x03, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xF1, 0x81, 0x00, 0xF0, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x0B, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x85, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x8E, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x11, 0x01, 0x10, 0x01, 0x72, 0x43, 0x79, 0x01, 0x72, 0x01, 0x31, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x88, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xF1, + 0x80, 0x00, 0xF0, 0x05, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x07, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x84, 0x01, 0x11, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x03, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x03, 0x00, 0xF0, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x07, 0x00, 0xF1, 0x84, 0x00, 0xD0, 0x01, 0x32, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD1, 0x03, 0x00, 0xD0, 0x81, 0x2A, 0xB7, 0x09, 0xD3, 0x02, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xD1, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x85, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x82, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x06, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x31, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x84, 0x01, 0x10, 0x22, 0x75, 0x22, 0x76, 0x00, 0xF0, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x07, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x0B, 0x00, 0xF1, + 0x02, 0x00, 0xF0, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x0A, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x01, 0x11, 0x03, 0x00, 0xF0, 0x85, 0x01, 0x10, 0x01, 0x51, 0x09, 0xD3, 0x33, 0x39, 0x1A, 0x35, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD0, 0x03, 0x00, 0xF1, 0x82, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD1, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x03, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x8A, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x08, 0xD0, 0x10, 0x8F, 0x20, 0x4E, 0x51, 0x11, 0xA2, 0xD8, 0x9A, 0x35, 0xA2, 0x35, 0x01, 0xA9, 0xF4, 0x84, 0xA9, 0xD3, 0xB1, 0xF3, 0xB1, 0xD3, 0xA9, 0xD3, 0xB1, 0xD3, 0x01, 0xA9, 0xD3, 0x81, 0xB1, 0xF4, 0xA9, 0xD3, 0x01, 0xA9, 0xF3, 0x01, 0xB1, 0xF4, 0x8F, 0xA9, 0xF4, 0xA2, 0x14, 0x9A, 0x55, 0x92, 0xB7, 0x18, 0x0C, 0x10, 0x6E, 0x08, 0xAF, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x11, 0x01, 0x51, 0x3B, 0x18, 0x2A, 0xB7, 0x01, 0x31, 0x01, 0x10, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x05, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x81, 0x00, 0xD1, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x02, + 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x89, 0x01, 0x10, 0x01, 0x31, 0x01, 0x51, 0x1A, 0x55, 0x33, 0x18, 0x22, 0x96, 0x09, 0x92, 0x01, 0x10, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x83, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x03, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x03, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x04, 0x00, 0xF1, 0x81, 0x00, 0xF0, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xF0, 0x01, 0x11, 0x03, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x85, 0x01, 0x51, 0x1A, 0x14, 0x32, 0xF8, 0x2A, 0xB7, 0x09, 0xD3, 0x01, 0x51, 0x02, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xB0, 0x04, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x82, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x05, 0x00, 0xF0, 0x85, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x06, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x8A, 0x01, 0x10, 0x01, 0x30, 0x01, + 0x51, 0x01, 0x71, 0x09, 0xB2, 0x22, 0x96, 0x3B, 0x38, 0x22, 0x96, 0x01, 0x92, 0x01, 0x30, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x09, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xD1, 0x07, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x07, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x85, 0x09, 0x71, 0x2A, 0xB6, 0x3B, 0x38, 0x2A, 0xD7, 0x11, 0xF3, 0x01, 0x51, 0x02, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xB0, 0x03, 0x00, 0xD0, 0x81, 0x00, 0xB0, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x0A, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x86, 0x00, 0xF0, 0x09, 0x92, 0x2A, 0xB7, 0x2A, 0x97, 0x1A, 0x35, 0x09, 0xB3, 0x01, 0x31, 0x01, 0x01, 0x10, 0x03, 0x00, 0xF0, 0x0B, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x8A, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x00, + 0xD1, 0x00, 0xD0, 0x00, 0xD1, 0x00, 0xD0, 0x00, 0xD1, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x04, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x86, 0x01, 0x10, 0x01, 0x71, 0x22, 0x96, 0x33, 0x18, 0x1A, 0x55, 0x01, 0x92, 0x01, 0x30, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xD1, 0x02, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xD0, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x83, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD1, 0x00, 0xF1, 0x02, 0x00, 0xD1, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x80, 0x00, 0xD0, 0x04, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x08, 0x00, 0xF0, 0x85, 0x01, 0x31, 0x2A, 0x96, 0x32, 0xF8, 0x09, 0xB3, 0x01, 0x72, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x06, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x0F, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x14, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x83, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x10, + 0x83, 0x2A, 0xB7, 0x32, 0xF8, 0x01, 0x52, 0x01, 0x11, 0x08, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x0C, 0x00, 0xF0, 0x82, 0x01, 0x10, 0x00, 0xF0, 0x00, 0xF1, 0x03, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x85, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x0F, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x03, 0x01, 0x10, 0x87, 0x00, 0xF0, 0x22, 0x75, 0x2A, 0xB6, 0x01, 0x10, 0x01, 0x31, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x05, 0x00, 0xF0, 0x85, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x03, 0x00, 0xF1, 0x03, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x0C, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x07, 0x00, 0xF1, 0x81, 0x01, 0x31, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x22, 0x76, 0x11, 0xD3, 0x01, 0x01, 0x11, 0x06, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x07, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x11, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x82, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x84, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x05, 0x00, + 0xF0, 0x86, 0x01, 0x72, 0x32, 0xF8, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x03, 0x00, 0xF1, 0x81, 0x00, 0xF0, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x81, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x03, 0x00, 0xF0, 0x03, 0x00, 0xF1, 0x0A, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x80, 0x01, 0x11, 0x03, 0x00, 0xD0, 0x8C, 0x00, 0xF0, 0x01, 0x11, 0x01, 0x51, 0x09, 0xF4, 0x3B, 0x39, 0x09, 0x93, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD1, 0x00, 0xD0, 0x00, 0xD1, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x02, 0x00, 0xD1, 0x84, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x04, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x81, 0x00, 0xF1, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x05, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x8B, 0x00, 0xD0, 0x08, 0xB0, 0x10, 0x8F, 0x20, 0x6F, 0x30, 0x4E, 0x92, 0x96, 0x9A, 0x55, 0xA2, 0x35, 0xA1, 0xF4, 0xA9, 0xD4, 0xA9, 0xD3, 0xB1, 0xF3, 0x02, 0xB1, 0xD3, 0x84, 0xA9, 0xD3, 0xB1, 0xD3, 0xB1, 0xF4, 0xA9, 0xD3, 0xA9, 0xF3, 0x02, 0xA9, 0xD3, 0x87, 0xA9, 0xF4, 0xA2, 0x34, 0x9A, 0x75, 0x8A, 0x96, 0x18, 0x0D, 0x10, 0x6E, 0x08, 0xAF, 0x00, 0xAF, 0x01, 0x00, 0xF0, 0x84, 0x01, 0x10, 0x01, 0x51, 0x22, 0x76, + 0x2A, 0xB7, 0x01, 0x31, 0x01, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x83, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x03, 0x00, 0xF1, 0x83, 0x00, 0xD1, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x83, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xD1, 0x03, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x06, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x88, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x31, 0x09, 0x92, 0x22, 0x95, 0x32, 0xF7, 0x1A, 0x34, 0x01, 0x10, 0x05, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x84, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x81, 0x00, 0xF1, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x09, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x84, 0x01, 0x51, 0x11, 0xF3, 0x33, 0x18, 0x2A, 0xD7, 0x11, 0xB3, 0x02, 0x01, 0x10, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x81, 0x00, 0xF0, + 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x08, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x03, 0x01, 0x10, 0x81, 0x01, 0x91, 0x1A, 0x34, 0x01, 0x32, 0xF7, 0x81, 0x11, 0xF3, 0x01, 0x31, 0x02, 0x00, 0xF0, 0x08, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x04, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xB0, 0x00, 0xD0, 0x00, 0xAF, 0x06, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x04, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xB0, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xF0, 0x86, 0x01, 0x30, 0x11, 0xD3, 0x2A, 0x96, 0x3B, 0x18, 0x2A, 0x96, 0x09, 0xB2, 0x01, 0x30, 0x01, 0x01, 0x10, 0x80, 0x00, 0xF0, 0x07, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x07, 0x00, 0xD0, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xB0, 0x81, 0x00, 0xD0, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xD0, + 0x80, 0x00, 0xB0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x85, 0x09, 0x92, 0x2A, 0xB6, 0x32, 0xF8, 0x2A, 0x96, 0x11, 0xD3, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x81, 0x01, 0x10, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x83, 0x00, 0xB0, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x81, 0x00, 0xF1, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x86, 0x01, 0x10, 0x01, 0x51, 0x09, 0xF3, 0x2A, 0xD6, 0x22, 0x96, 0x11, 0xF3, 0x01, 0x30, 0x03, 0x01, 0x10, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x02, 0x00, 0xD1, 0x82, 0x00, 0xD0, 0x00, 0xD1, 0x00, 0xD0, 0x01, 0x00, 0xD1, 0x02, 0x00, 0xD0, + 0x02, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x80, 0x01, 0x10, 0x03, 0x00, 0xD0, 0x86, 0x00, 0xF0, 0x01, 0x31, 0x2A, 0xB7, 0x22, 0x96, 0x09, 0x92, 0x09, 0x72, 0x01, 0x10, 0x03, 0x00, 0xF0, 0x81, 0x01, 0x10, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF1, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xF1, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x0A, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xB0, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x85, 0x22, 0x55, 0x3B, 0x59, 0x01, 0x92, 0x01, 0x31, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x84, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x86, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x83, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x11, 0x01, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x01, 0x10, 0x09, 0x51, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, + 0x01, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x83, 0x01, 0x10, 0x3B, 0x39, 0x09, 0x92, 0x01, 0x31, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x81, 0x01, 0x11, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x0A, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x82, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xAF, 0x22, 0x55, 0x09, 0xB2, 0x01, 0x01, 0x11, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x03, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x05, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x0A, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x0C, 0x00, 0xF0, 0x82, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x01, 0x30, 0x43, 0x59, 0x11, 0xD3, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xF1, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xB0, 0x00, 0xD0, 0x01, + 0x01, 0x11, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF1, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x05, 0x00, 0xF0, 0x8D, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x83, 0x01, 0x51, 0x1A, 0x55, 0x3B, 0x18, 0x01, 0x31, 0x06, 0x00, 0xD0, 0x04, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x84, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xD0, 0x03, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF1, 0x93, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x11, 0x09, 0x11, 0x08, 0xF0, 0x10, 0xF0, 0x10, 0xB0, 0x18, 0x8F, 0x20, 0x2D, 0x71, 0xB3, 0xA2, 0xB7, 0x9A, 0x35, 0xA2, 0x14, 0xA1, 0xD3, 0xA9, 0xD4, 0xA9, 0xB3, 0xB1, 0xD3, 0xA9, 0xB3, 0xB1, 0xD3, 0x02, 0xA9, 0xD3, 0x8A, 0xB1, 0xF4, 0xA9, 0xB3, 0xB1, 0xF3, 0xB1, 0xF4, 0xA9, 0xF3, 0xA9, 0xF4, 0xAA, 0x55, 0x9A, 0x55, 0x92, 0xB7, 0x18, 0x0C, 0x10, 0x6E, 0x01, 0x08, 0xD0, 0x88, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x10, 0x01, 0x30, 0x2A, 0x76, 0x3B, 0x39, 0x09, 0x92, 0x01, 0x10, 0x03, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x03, 0x00, 0xD0, + 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x03, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x00, 0xD1, 0x82, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x08, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x83, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x82, 0x01, 0x10, 0x01, 0x71, 0x1A, 0x14, 0x01, 0x2A, 0xB6, 0x81, 0x01, 0x72, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x81, 0x00, 0xD1, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x84, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF1, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x04, 0x00, 0xCF, 0x02, 0x00, 0xF0, 0x87, 0x01, 0x10, 0x01, 0x30, 0x22, 0x55, 0x3B, 0x38, 0x2A, 0xB6, 0x09, 0xB2, 0x01, 0x31, 0x01, 0x10, 0x03, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x0E, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, + 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x08, 0x00, 0xD0, 0x86, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x01, 0x00, 0xEF, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xEF, 0x86, 0x01, 0x51, 0x22, 0x34, 0x3B, 0x18, 0x32, 0xF7, 0x1A, 0x34, 0x01, 0x71, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x0A, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xB0, 0x08, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x08, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xB0, 0x82, 0x00, 0xD0, 0x00, 0xB0, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x88, 0x00, 0xEF, 0x00, 0xF0, 0x09, 0x51, 0x1A, 0x14, 0x3A, 0xF7, 0x3B, 0x18, 0x2A, 0x75, 0x09, 0xB2, 0x01, 0x31, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x0B, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x05, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x82, 0x00, 0xB0, 0x00, 0xD0, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x80, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x86, 0x00, 0xF0, 0x09, + 0x71, 0x2A, 0x96, 0x3B, 0x38, 0x2A, 0xB6, 0x11, 0xF3, 0x01, 0x51, 0x02, 0x00, 0xF0, 0x82, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x1C, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x08, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x84, 0x01, 0x71, 0x22, 0x96, 0x2A, 0xD7, 0x1A, 0x75, 0x01, 0x71, 0x02, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x07, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF1, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x05, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x0C, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xD1, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x88, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x31, 0x32, 0xD7, 0x22, 0x96, 0x09, 0x92, 0x01, 0x51, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x03, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x08, 0x00, 0xF0, 0x82, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x08, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x0E, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, + 0x01, 0x00, 0xD0, 0x01, 0x01, 0x10, 0x85, 0x09, 0x92, 0x43, 0x79, 0x11, 0xF3, 0x01, 0x51, 0x01, 0x11, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x0D, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x11, 0x03, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x84, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x09, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x80, 0x00, 0xD0, 0x06, 0x00, 0xF0, 0x85, 0x00, 0xD0, 0x00, 0xF0, 0x19, 0xF4, 0x3B, 0x39, 0x01, 0x31, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x11, 0x05, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x0A, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x84, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xAF, 0x1A, 0x34, 0x09, 0xB2, 0x01, 0x10, 0x01, 0x01, 0x11, 0x80, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, + 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x09, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x0E, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x83, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x82, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x82, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x11, 0x03, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x84, 0x00, 0xF0, 0x01, 0x10, 0x22, 0x55, 0x3B, 0x39, 0x01, 0x10, 0x04, 0x00, 0xF0, 0x85, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x01, 0x11, 0x07, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x0E, 0x00, 0xF0, 0x86, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x86, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x84, 0x01, 0x11, 0x01, 0x51, 0x2A, 0x96, 0x2A, 0xB7, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x82, 0x00, 0xD1, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x83, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x84, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x00, + 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x8B, 0x08, 0xF1, 0x08, 0xD0, 0x10, 0xD0, 0x18, 0x8F, 0x20, 0x4E, 0x40, 0xAF, 0x9A, 0xD7, 0x9A, 0x55, 0xA2, 0x15, 0xA9, 0xF4, 0xA9, 0xD3, 0xB1, 0xF4, 0x02, 0xB1, 0xD3, 0x81, 0xA9, 0xD3, 0xB1, 0xD3, 0x04, 0xA9, 0xD3, 0x93, 0xB2, 0x14, 0xAA, 0x14, 0xA2, 0x34, 0x9A, 0x55, 0x8A, 0x96, 0x18, 0x0C, 0x10, 0x6E, 0x08, 0xAF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x10, 0x01, 0x30, 0x1A, 0x14, 0x43, 0x59, 0x11, 0xD3, 0x01, 0x10, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x08, 0x00, 0xD0, 0x81, 0x00, 0xB0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x07, 0x00, 0xD0, 0x84, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x0A, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x86, 0x01, 0x10, 0x01, 0x30, 0x01, 0x92, 0x1A, 0x55, 0x32, 0xF8, 0x1A, 0x14, 0x01, 0x31, 0x01, 0x00, 0xF0, 0x08, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x07, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x82, 0x01, 0x10, 0x00, 0xF0, + 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x87, 0x01, 0x10, 0x01, 0x71, 0x1A, 0x14, 0x43, 0x79, 0x32, 0xD7, 0x09, 0x72, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x0D, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x85, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xEF, 0x01, 0x10, 0x07, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x87, 0x01, 0x10, 0x01, 0x50, 0x09, 0xB2, 0x2A, 0xB6, 0x3B, 0x38, 0x32, 0xD7, 0x09, 0x92, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xD1, 0x06, 0x00, 0xD0, 0x01, 0x00, 0xB0, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xB0, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x07, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x83, 0x00, 0xEF, 0x01, 0x30, 0x09, 0x71, 0x1A, 0x14, 0x01, 0x2A, 0x75, 0x82, 0x22, 0x34, 0x09, 0x92, 0x01, 0x10, 0x01, 0x00, 0xEF, 0x06, 0x00, 0xCF, 0x85, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xB0, 0x00, 0xD0, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xF0, 0x05, 0x00, 0xD0, + 0x80, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x83, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xB0, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x85, 0x01, 0x51, 0x22, 0x55, 0x3B, 0x18, 0x2A, 0x96, 0x11, 0xB2, 0x01, 0x51, 0x01, 0x01, 0x10, 0x81, 0x00, 0xF0, 0x00, 0xCF, 0x03, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x80, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x8C, 0x00, 0xCF, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x30, 0x09, 0xB2, 0x2A, 0xD7, 0x22, 0x75, 0x12, 0x34, 0x01, 0x51, 0x01, 0x10, 0x00, 0xF0, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x85, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xF1, 0x03, 0x00, 0xF0, 0x86, 0x00, 0xD0, 0x00, 0xF0, 0x00, + 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x11, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xD1, 0x01, 0x00, 0xF1, 0x84, 0x00, 0xD1, 0x00, 0xD0, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x04, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x09, 0x52, 0x01, 0x2A, 0xB7, 0x82, 0x09, 0x92, 0x09, 0x52, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x13, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x07, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x08, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF1, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x89, 0x01, 0x10, 0x01, 0x31, 0x3B, 0x39, 0x1A, 0x34, 0x01, 0x31, 0x01, 0x10, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x07, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, + 0xF0, 0x02, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x85, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x10, 0x3B, 0x18, 0x19, 0xF4, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x01, 0x31, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x81, 0x01, 0x11, 0x01, 0x10, 0x0B, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x05, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x11, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x84, 0x00, 0xCF, 0x1A, 0x34, 0x11, 0xF3, 0x01, 0x10, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF1, 0x18, 0x00, 0xF0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xF1, 0x04, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x03, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x85, 0x01, 0x10, 0x01, 0x31, 0x43, 0x7A, 0x01, 0x72, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x09, 0x11, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xF1, + 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF1, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x80, 0x01, 0x11, 0x05, 0x00, 0xF0, 0x85, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x82, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x89, 0x01, 0x10, 0x09, 0x92, 0x32, 0xF8, 0x22, 0x55, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xB0, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF1, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x82, 0x00, 0xD1, 0x00, 0xF1, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x8A, 0x08, 0xD0, 0x08, 0xB0, 0x10, 0x8F, 0x20, 0x6F, 0x28, 0x0D, 0x82, 0x35, 0x9A, 0x55, 0x9A, 0x14, 0xAA, 0x15, 0xA9, 0xF4, 0xB1, 0xF4, 0x01, 0xB1, 0xD3, 0x80, 0xB1, 0xD4, 0x01, 0xA9, 0xB3, 0x81, 0xA9, 0xD3, 0xB1, 0xF4, 0x02, 0xA9, 0xD3, 0x88, 0xA9, 0xF3, 0xAA, 0x14, 0xAA, 0x55, 0xA2, 0x75, 0x92, 0xB6, 0x18, 0x0C, 0x10, 0x6E, 0x08, 0x8F, 0x00, 0xAF, 0x01, 0x00, 0xD0, 0x87, 0x00, 0xAF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x01, 0x10, 0x11, 0xD3, 0x3B, 0x18, 0x1A, 0x14, 0x01, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x07, + 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF1, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x08, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x8A, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x51, 0x11, 0xF3, 0x32, 0xF7, 0x22, 0x96, 0x01, 0x72, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x83, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x01, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x83, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x85, 0x01, 0x51, 0x22, 0x96, 0x43, 0x9A, 0x2A, 0xB6, 0x09, 0xB2, 0x01, 0x30, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x09, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, + 0xD0, 0x01, 0x00, 0xF0, 0x85, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xD0, 0x82, 0x01, 0x10, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x02, 0x00, 0xF0, 0x82, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x01, 0x01, 0x30, 0x87, 0x09, 0x92, 0x2A, 0x96, 0x3B, 0x58, 0x33, 0x18, 0x11, 0xF3, 0x01, 0x51, 0x01, 0x10, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x01, 0x00, 0xAF, 0x0D, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xAF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x08, 0x00, 0xD0, 0x82, 0x00, 0xAF, 0x00, 0xD0, 0x00, 0xAF, 0x01, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x8A, 0x00, 0xCF, 0x00, 0xEF, 0x09, 0x71, 0x11, 0xD3, 0x1A, 0x14, 0x2A, 0x96, 0x22, 0x75, 0x1A, 0x14, 0x09, 0x71, 0x00, 0xF0, 0x00, 0xEF, 0x07, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xCF, 0x83, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x82, 0x00, 0xAF, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x07, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xAF, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x81, + 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x86, 0x00, 0xEF, 0x01, 0x51, 0x1A, 0x14, 0x3B, 0x18, 0x32, 0xD7, 0x11, 0xD3, 0x01, 0x10, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x03, 0x00, 0xAF, 0x01, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x09, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x87, 0x00, 0xF0, 0x09, 0x92, 0x1A, 0x55, 0x32, 0xF7, 0x1A, 0x34, 0x01, 0x91, 0x01, 0x10, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xCF, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x84, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x10, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x85, 0x09, 0x92, 0x32, 0xF7, 0x22, 0x55, 0x01, 0x51, 0x01, 0x31, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x01, 0x00, + 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x01, 0x10, 0x09, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x09, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x85, 0x01, 0x30, 0x2A, 0xB7, 0x2A, 0x96, 0x01, 0x51, 0x01, 0x10, 0x01, 0x11, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x06, 0x00, 0xF0, 0x82, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x07, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x01, 0x11, 0x02, 0x00, 0xF0, 0x81, 0x00, 0xF1, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x08, 0x00, 0xD0, 0x87, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x51, 0x3B, 0x18, 0x01, 0x31, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xCF, 0x03, 0x00, 0xF0, 0x07, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x84, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, + 0xD0, 0x04, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x81, 0x00, 0xF1, 0x00, 0xD0, 0x03, 0x00, 0xF1, 0x02, 0x00, 0xF0, 0x83, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x11, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF1, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x84, 0x00, 0xD0, 0x00, 0xCF, 0x22, 0x54, 0x11, 0xF3, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x06, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xF1, 0x00, 0xF0, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x0B, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xF1, 0x00, 0xD0, 0x00, 0xF1, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x84, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x84, 0x01, 0x10, 0x00, 0xF0, 0x22, 0x96, 0x1A, 0x34, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x82, 0x01, 0x11, 0x00, 0xF1, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x84, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, + 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x07, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x83, 0x01, 0x10, 0x11, 0xB3, 0x32, 0xF8, 0x11, 0xD3, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x04, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x8A, 0x08, 0xD0, 0x08, 0xB0, 0x18, 0xD0, 0x18, 0x6E, 0x20, 0x0D, 0x61, 0x93, 0x9A, 0x96, 0xA2, 0x55, 0xA1, 0xF4, 0xAA, 0x14, 0xA9, 0xD3, 0x01, 0xB1, 0xD3, 0x01, 0xA9, 0xB3, 0x92, 0xB1, 0xF4, 0xA9, 0xD3, 0xA9, 0xD4, 0xA9, 0xD3, 0xB1, 0xF3, 0xA9, 0xD3, 0xA9, 0xF4, 0xAA, 0x14, 0xA2, 0x35, 0x9A, 0x55, 0x82, 0x76, 0x18, 0x0C, 0x10, 0x6E, 0x08, 0x8F, 0x00, 0xAF, 0x08, 0xF0, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x01, 0x01, 0x10, 0x84, 0x01, 0x92, 0x2A, 0xD7, 0x22, 0x55, 0x01, 0x31, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x84, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x10, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x07, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x03, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, + 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xCF, 0x01, 0x10, 0x01, 0x01, 0x30, 0x84, 0x01, 0x71, 0x12, 0x34, 0x2A, 0xB6, 0x1A, 0x34, 0x01, 0x30, 0x01, 0x00, 0xF0, 0x19, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x0B, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x04, 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xD0, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x84, 0x01, 0x71, 0x1A, 0x14, 0x3B, 0x59, 0x2A, 0xD7, 0x01, 0x51, 0x03, 0x00, 0xF0, 0x82, 0x00, 0xAF, 0x00, 0xD0, 0x00, 0xCF, 0x06, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x81, 0x00, 0xD0, 0x00, 0xCF, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xCF, 0x82, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x82, 0x00, 0xAF, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x00, 0xCF, 0x86, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x02, 0x01, 0x10, 0x85, 0x01, 0x50, 0x11, 0xF3, 0x2A, 0xD6, 0x43, 0x79, 0x1A, 0x34, 0x01, 0x30, 0x01, 0x01, 0x10, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x82, 0x00, 0xD0, 0x00, + 0xCF, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xAF, 0x03, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xAF, 0x00, 0xB0, 0x02, 0x00, 0xAF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xAF, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x83, 0x00, 0xAF, 0x00, 0xD0, 0x00, 0xAF, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x03, 0x00, 0xAF, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xAF, 0x02, 0x00, 0xCF, 0x83, 0x00, 0xF0, 0x01, 0x51, 0x11, 0xD3, 0x1A, 0x14, 0x01, 0x22, 0x75, 0x82, 0x22, 0x54, 0x09, 0x91, 0x01, 0x10, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x15, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x06, 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x83, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xAF, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x83, 0x00, 0xB0, 0x00, 0xD0, 0x00, 0xAF, 0x00, 0xB0, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x8A, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x30, 0x09, 0xB2, 0x22, 0x55, 0x32, 0xF7, 0x1A, 0x14, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, + 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x82, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x89, 0x01, 0x10, 0x00, 0xEF, 0x01, 0x30, 0x09, 0xD3, 0x22, 0x75, 0x2A, 0xB6, 0x11, 0xD3, 0x01, 0x30, 0x00, 0xEF, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x05, 0x00, 0xCF, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x0D, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x07, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x87, 0x00, 0xD0, 0x00, 0xF0, 0x11, 0xB3, 0x32, 0xD7, 0x11, 0xF3, 0x01, 0x30, 0x00, 0xF0, 0x00, 0xEF, 0x03, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xAF, 0x00, 0xB0, 0x05, 0x00, 0xF0, 0x07, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x03, 0x00, 0xF0, + 0x09, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x88, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x10, 0x11, 0xF3, 0x2A, 0xB6, 0x01, 0x71, 0x01, 0x10, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x01, 0x11, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x01, 0x11, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x85, 0x1A, 0x35, 0x22, 0x55, 0x01, 0x11, 0x01, 0x10, 0x00, 0xF0, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xAF, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x0D, 0x00, 0xD0, 0x01, 0x00, 0xF1, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x03, 0x00, 0xCF, 0x01, 0x1A, 0x34, 0x02, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x05, 0x00, 0xF0, 0x83, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, + 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xAF, 0x01, 0x00, 0xF0, 0x08, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xAF, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x84, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x10, 0x09, 0xB2, 0x33, 0x18, 0x07, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xF1, 0x04, 0x00, 0xD0, 0x82, 0x00, 0xD1, 0x00, 0xD0, 0x00, 0xB0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x03, 0x00, 0xF0, 0x84, 0x01, 0x10, 0x11, 0xF4, 0x32, 0xF8, 0x01, 0x72, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xB0, 0x00, 0xD0, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x8B, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xB0, 0x08, 0xD0, 0x10, 0xD0, 0x10, 0x8F, 0x18, 0x2D, 0x40, 0xB0, + 0x92, 0x97, 0x9A, 0x55, 0x99, 0xF4, 0xA1, 0xD3, 0x01, 0xA9, 0xF3, 0x01, 0xA9, 0xB3, 0x83, 0xB1, 0xD3, 0xA9, 0xD3, 0xA9, 0xD4, 0xB1, 0xF4, 0x01, 0xA9, 0xD3, 0x01, 0xB1, 0xF4, 0x86, 0xAA, 0x14, 0xA2, 0x35, 0x9A, 0x76, 0x82, 0x35, 0x18, 0x0C, 0x10, 0x6E, 0x08, 0xAF, 0x01, 0x00, 0xCF, 0x03, 0x00, 0xF0, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xF0, 0x85, 0x01, 0x10, 0x01, 0x51, 0x2A, 0xD7, 0x22, 0x96, 0x01, 0x72, 0x01, 0x31, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x82, 0x01, 0x10, 0x00, 0xF0, 0x00, 0xAF, 0x0E, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x84, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x01, 0x01, 0x30, 0x85, 0x09, 0xB2, 0x2A, 0xD6, 0x22, 0xB6, 0x01, 0x71, 0x01, 0x10, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x8A, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xF0, 0x07, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x06, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, + 0xF0, 0x06, 0x00, 0xCF, 0x81, 0x00, 0xF0, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x82, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xF0, 0x02, 0x01, 0x10, 0x85, 0x01, 0x30, 0x1A, 0x34, 0x3B, 0x38, 0x1A, 0x55, 0x01, 0x51, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x04, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x84, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x89, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x10, 0x09, 0x92, 0x32, 0xD7, 0x33, 0x18, 0x1A, 0x34, 0x01, 0x71, 0x01, 0x30, 0x03, 0x00, 0xF0, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x83, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x04, 0x00, 0xD0, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x05, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x0B, 0x00, 0xAF, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x89, 0x01, 0x10, 0x11, 0xB2, 0x2A, 0x75, 0x2A, 0x96, 0x22, 0x75, 0x1A, 0x34, 0x09, 0xB2, 0x01, 0x71, 0x01, 0x0F, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x06, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xCF, + 0x80, 0x00, 0xEF, 0x08, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xD0, 0x06, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xAF, 0x06, 0x00, 0xCF, 0x81, 0x00, 0xAF, 0x00, 0xD0, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xF0, 0x86, 0x01, 0x10, 0x19, 0xF3, 0x22, 0x75, 0x2A, 0xB6, 0x1A, 0x34, 0x01, 0x71, 0x01, 0x10, 0x01, 0x00, 0xEF, 0x03, 0x00, 0xCF, 0x81, 0x00, 0xEF, 0x01, 0x10, 0x04, 0x00, 0xF0, 0x06, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xAF, 0x01, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x83, 0x00, 0xEF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xEF, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x04, 0x00, 0xCF, 0x06, 0x00, 0xD0, 0x83, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x89, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x30, 0x01, 0x71, 0x22, 0x55, 0x2A, 0xD6, 0x1A, 0x34, 0x01, 0x71, 0x01, 0x10, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x05, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x06, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xAF, 0x0D, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x04, + 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x84, 0x19, 0xF4, 0x2A, 0xB6, 0x09, 0xB2, 0x01, 0x50, 0x01, 0x10, 0x01, 0x00, 0xEF, 0x81, 0x00, 0xCF, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x85, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xAF, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x84, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x10, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x0A, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x89, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x10, 0x09, 0x92, 0x32, 0xD7, 0x09, 0xB2, 0x01, 0x30, 0x01, 0x10, 0x00, 0xD0, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x25, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xF0, 0x0C, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x81, 0x32, 0xD7, 0x11, 0xF3, 0x01, 0x01, 0x10, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x04, 0x00, 0xCF, 0x84, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xAF, 0x00, 0xD0, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x83, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x08, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x0B, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xCF, 0x01, + 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x04, 0x00, 0xCF, 0x01, 0x1A, 0x34, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xF0, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x09, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x26, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x84, 0x01, 0x10, 0x01, 0x31, 0x3B, 0x18, 0x09, 0x72, 0x01, 0x10, 0x04, 0x00, 0xF0, 0x0D, 0x00, 0xD0, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x12, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x11, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x01, 0x10, 0x84, 0x01, 0x31, 0x2A, 0x96, 0x2A, 0xD7, 0x01, 0x31, 0x00, 0xF0, 0x0C, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x08, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x89, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xB0, 0x08, 0xD0, 0x18, 0xF0, 0x10, 0x2D, 0x28, 0x2D, 0x82, 0x55, 0x92, 0x35, 0x01, 0xA2, 0x14, 0x85, 0xA9, 0xF4, 0xB1, 0xF4, 0xA9, 0xD3, 0xB1, 0xD3, 0xB1, 0xF3, 0xA9, 0xD3, 0x01, 0xB1, 0xF4, 0x02, 0xA9, 0xD3, 0x87, 0xA9, 0xF4, 0xAA, 0x14, 0xA2, 0x35, 0x9A, 0x76, 0x7A, 0x14, 0x10, 0x0C, 0x10, 0x6E, 0x08, 0x8E, 0x01, 0x00, 0xAF, 0x90, 0x00, 0xCF, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x10, 0x01, 0x30, 0x01, 0x71, + 0x2A, 0xD7, 0x2A, 0xF7, 0x01, 0x72, 0x01, 0x31, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x83, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xCF, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x09, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x07, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x04, 0x00, 0xF0, 0x01, 0x01, 0x30, 0x83, 0x01, 0x91, 0x12, 0x34, 0x3B, 0x38, 0x1A, 0x14, 0x01, 0x01, 0x10, 0x80, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x08, 0x00, 0xCF, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x04, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x80, 0x01, 0x10, 0x01, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x01, 0x10, 0x84, 0x01, 0x71, 0x22, 0x55, 0x3B, 0x38, 0x1A, 0x34, 0x01, 0x30, 0x02, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x81, + 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x0D, 0x00, 0xCF, 0x81, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x06, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x08, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x07, 0x00, 0xEF, 0x04, 0x00, 0xCF, 0x89, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x30, 0x01, 0x91, 0x1A, 0x55, 0x3B, 0x59, 0x2A, 0xB6, 0x09, 0x92, 0x01, 0x30, 0x00, 0xEF, 0x01, 0x01, 0x10, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x04, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x05, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xCF, 0x8A, 0x00, 0xEF, 0x01, 0x30, 0x11, 0xD3, 0x32, 0xD6, 0x3B, 0x18, 0x2A, 0x95, 0x1A, 0x34, 0x01, 0x50, 0x01, 0x0F, 0x01, 0x30, 0x00, 0xEF, 0x01, 0x00, 0xCE, 0x80, 0x00, 0xEF, 0x04, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x05, 0x00, 0xCF, 0x89, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x01, 0x10, 0x00, 0xF0, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xCF, 0x86, 0x00, 0xD0, 0x00, 0xAF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x05, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x03, 0x00, 0xCF, 0x82, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x01, 0x00, + 0xEF, 0x86, 0x01, 0x10, 0x01, 0x30, 0x09, 0xB2, 0x2A, 0x96, 0x32, 0xD7, 0x2A, 0x95, 0x09, 0xB2, 0x01, 0x01, 0x0F, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xF0, 0x82, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x83, 0x00, 0xEF, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x85, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x81, 0x00, 0xF0, 0x00, 0xAF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x82, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x83, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x87, 0x00, 0xF0, 0x01, 0x10, 0x11, 0xD2, 0x33, 0x17, 0x2A, 0xB6, 0x09, 0x92, 0x01, 0x10, 0x01, 0x0F, 0x08, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xF0, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x84, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xAF, 0x00, 0xD0, 0x00, 0xAF, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x83, 0x00, 0xAF, 0x00, 0xD0, 0x00, 0xB0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xAF, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x0C, 0x00, 0xD0, 0x83, + 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x86, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x10, 0x01, 0x30, 0x22, 0x55, 0x32, 0xD7, 0x01, 0x71, 0x01, 0x01, 0x30, 0x81, 0x00, 0xF0, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x85, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xAF, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x86, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x71, 0x32, 0xF7, 0x09, 0xB2, 0x01, 0x51, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x82, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x85, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x02, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x83, 0x00, 0xB0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x84, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, + 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x03, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x84, 0x19, 0xF4, 0x2A, 0x96, 0x01, 0x51, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xCF, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x85, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xD0, 0x00, 0xCF, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x82, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x84, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x84, 0x00, 0xCF, 0x00, 0xEF, 0x1A, 0x54, 0x22, 0x55, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x03, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xD0, 0x80, 0x00, 0xF1, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x83, 0x00, 0xF0, + 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x84, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xAF, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x81, 0x1A, 0x34, 0x2A, 0xD7, 0x01, 0x01, 0x31, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x83, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xAF, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x03, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xB0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x85, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x84, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x83, 0x01, 0x31, 0x2A, 0xD7, 0x1A, 0x55, 0x01, 0x31, 0x01, 0x00, 0xF0, 0x85, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x02, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xAF, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xCF, 0x05, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x8E, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xD0, 0x00, 0xB0, 0x08, 0xB0, 0x10, 0xD0, 0x10, 0x4E, 0x18, 0x0C, 0x69, 0xB3, 0x92, + 0x55, 0x9A, 0x35, 0xA2, 0x14, 0xA1, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0x02, 0xA9, 0xD3, 0x81, 0xB1, 0xF4, 0xB2, 0x14, 0x02, 0xA9, 0xD3, 0x87, 0xAA, 0x14, 0xA1, 0xF3, 0xA2, 0x34, 0x9A, 0x55, 0x71, 0xD3, 0x18, 0x0C, 0x10, 0x8E, 0x08, 0xAE, 0x01, 0x00, 0xAF, 0x05, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x01, 0x01, 0x10, 0x01, 0x01, 0x30, 0x84, 0x22, 0x96, 0x2A, 0xD7, 0x01, 0x71, 0x01, 0x30, 0x01, 0x10, 0x05, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xAF, 0x02, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x83, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x03, 0x00, 0xCF, 0x8B, 0x00, 0xD0, 0x00, 0xAF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x8B, 0x00, 0xF0, 0x00, 0xEF, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x30, 0x01, 0x51, 0x11, 0xF3, 0x3B, 0x38, 0x2A, 0xD6, 0x01, 0x51, 0x01, 0x10, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xF0, 0x83, 0x00, 0xCF, 0x01, 0x10, 0x00, 0xCF, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x86, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x81, + 0x00, 0xF0, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x85, 0x00, 0xEF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x04, 0x00, 0xCF, 0x82, 0x01, 0x10, 0x00, 0xCF, 0x00, 0xEF, 0x04, 0x00, 0xCF, 0x81, 0x00, 0xF0, 0x01, 0x10, 0x01, 0x01, 0x30, 0x80, 0x09, 0xB2, 0x01, 0x32, 0xF7, 0x86, 0x12, 0x13, 0x01, 0x51, 0x01, 0x10, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x05, 0x00, 0xCF, 0x82, 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x10, 0x01, 0x00, 0xEF, 0x81, 0x00, 0xF0, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x82, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x83, 0x00, 0xEF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xAF, 0x03, 0x00, 0xCF, 0x82, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x07, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x03, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x89, 0x01, 0x10, 0x01, 0x30, 0x01, 0x10, 0x01, 0x0F, 0x01, 0x50, 0x22, 0x75, 0x3B, 0x38, 0x33, 0x38, 0x1A, 0x54, 0x01, 0x91, 0x01, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x05, 0x00, 0xCF, + 0x82, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xAF, 0x04, 0x00, 0xCF, 0x03, 0x00, 0xAF, 0x07, 0x00, 0xCF, 0x87, 0x01, 0x10, 0x01, 0x30, 0x11, 0xD3, 0x22, 0x75, 0x22, 0x55, 0x11, 0xF3, 0x09, 0x91, 0x01, 0x30, 0x02, 0x01, 0x0F, 0x80, 0x00, 0xEF, 0x02, 0x00, 0xCE, 0x04, 0x00, 0xCF, 0x82, 0x00, 0xEF, 0x00, 0xF0, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x81, 0x00, 0xF0, 0x00, 0xCF, 0x06, 0x00, 0xF0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x07, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x0A, 0x00, 0xCF, 0x84, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xAF, 0x04, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x81, 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x01, 0x0F, 0x87, 0x01, 0x30, 0x09, 0x92, 0x22, 0x75, 0x2A, 0xB6, 0x12, 0x13, 0x01, 0x51, 0x01, 0x30, 0x01, 0x0F, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x08, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x10, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x85, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xD0, 0x0C, 0x00, 0xCF, 0x82, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x01, 0x00, 0xF0, 0x86, 0x01, 0x10, 0x22, 0x55, 0x32, 0xD7, 0x09, 0x91, 0x01, 0x30, 0x01, 0x0F, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xCF, 0x81, 0x00, 0xF0, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, + 0xCF, 0x80, 0x00, 0xF0, 0x0F, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x04, 0x00, 0xCF, 0x03, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x86, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x09, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x81, 0x01, 0x10, 0x01, 0x30, 0x01, 0x2A, 0xB6, 0x02, 0x01, 0x30, 0x81, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x03, 0x00, 0xCF, 0x82, 0x00, 0xEF, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x83, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x84, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x85, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x09, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x03, 0x00, 0xD0, 0x84, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x00, 0xF0, 0x84, 0x01, 0x10, 0x22, 0x95, 0x1A, 0x34, 0x01, 0x30, 0x01, 0x10, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x1A, + 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x83, 0x2A, 0x96, 0x19, 0xF4, 0x01, 0x10, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x03, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xCF, 0x02, 0x00, 0xF0, 0x8C, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x0C, 0x00, 0xF0, 0x82, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x08, 0x00, 0xD0, 0x89, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xF0, 0x1A, 0x34, 0x22, 0x96, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xF0, 0x09, 0x00, 0xD0, 0x06, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, + 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x8D, 0x01, 0x30, 0x32, 0xF7, 0x09, 0xD3, 0x01, 0x30, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xCF, 0x07, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x85, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x02, 0x00, 0xF0, 0x02, 0x00, 0xD0, 0x84, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xF0, 0x05, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x04, 0x00, 0xF0, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xF0, 0x85, 0x01, 0x10, 0x00, 0xEF, 0x01, 0x92, 0x32, 0xF7, 0x11, 0xD3, 0x01, 0x10, 0x06, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x83, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x8A, 0x00, 0xAF, 0x08, 0xD0, 0x00, 0xB0, 0x08, 0xAF, 0x10, 0x8F, 0x10, 0x0C, 0x48, 0xF0, 0x92, 0x76, 0x9A, 0x35, 0xA2, 0x14, 0xA1, 0xF3, 0x02, 0xA9, 0xF3, 0x01, 0xA9, 0xD3, 0x01, 0xB1, 0xF4, 0x01, 0xA9, 0xD3, 0x01, 0xA9, 0xF4, 0x85, 0xAA, 0x34, 0xA2, 0x14, 0x9A, 0x96, 0x61, 0x92, 0x10, 0x0C, 0x10, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x04, + 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x87, 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x30, 0x1A, 0x34, 0x2A, 0xB6, 0x01, 0x92, 0x01, 0x30, 0x01, 0x10, 0x02, 0x00, 0xF0, 0x83, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xD0, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xD0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x06, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x05, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xF0, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x83, 0x00, 0xF0, 0x00, 0xEF, 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x01, 0x10, 0x87, 0x01, 0x30, 0x01, 0x71, 0x11, 0xF3, 0x32, 0xD7, 0x11, 0xD3, 0x01, 0x10, 0x00, 0xCF, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x81, 0x00, 0xAF, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xF0, 0x00, 0xCF, 0x02, 0x00, 0xEF, 0x03, 0x00, 0xCF, 0x02, 0x00, 0xF0, 0x82, 0x00, 0xEF, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x82, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xEF, 0x03, 0x00, 0xCF, + 0x84, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xEF, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xF0, 0x87, 0x01, 0x0F, 0x01, 0x30, 0x01, 0x91, 0x22, 0x75, 0x3B, 0x38, 0x11, 0xF3, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x82, 0x00, 0xF0, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x04, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x06, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x81, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xEF, 0x00, 0xF0, 0x01, 0x00, 0xEF, 0x02, 0x01, 0x0F, 0x88, 0x01, 0x50, 0x01, 0xB2, 0x1A, 0x74, 0x33, 0x17, 0x22, 0x54, 0x01, 0x51, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x81, 0x00, 0xAF, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x09, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x05, 0x00, 0xCF, 0x02, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x86, 0x01, 0x51, 0x09, 0xD3, 0x1A, 0x34, 0x1A, 0x14, 0x01, 0x71, 0x01, 0x10, 0x01, 0x0F, 0x03, 0x00, 0xEF, 0x02, 0x00, 0xCE, 0x81, 0x00, 0xCF, 0x00, 0xCE, 0x05, 0x00, 0xCF, 0x82, 0x00, + 0xAF, 0x00, 0xCF, 0x00, 0xEF, 0x04, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x06, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x06, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x09, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x05, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x01, 0x01, 0x10, 0x86, 0x01, 0x0F, 0x01, 0x30, 0x01, 0x91, 0x12, 0x34, 0x22, 0x75, 0x12, 0x13, 0x01, 0x30, 0x01, 0x01, 0x0F, 0x01, 0x00, 0xEF, 0x05, 0x00, 0xCF, 0x80, 0x00, 0xAE, 0x05, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x05, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x07, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x81, 0x00, 0xCF, 0x00, 0xAF, 0x16, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xF0, 0x88, 0x01, 0x10, 0x01, 0x30, 0x09, 0xB2, 0x2A, 0xB6, 0x1A, 0x34, 0x01, 0x30, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xEF, 0x07, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x03, 0x00, 0xCF, 0x03, 0x00, 0xAF, 0x06, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x84, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x05, 0x00, 0xAF, 0x0A, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x88, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x10, 0x00, 0xF0, 0x01, 0x31, 0x22, 0x75, 0x22, 0x55, 0x01, 0x10, 0x01, 0x01, 0x0F, 0x03, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x03, + 0x00, 0xEF, 0x01, 0x00, 0xAF, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x07, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x03, 0x00, 0xCF, 0x82, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xAF, 0x08, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x04, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x06, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x08, 0x00, 0xCF, 0x01, 0x01, 0x10, 0x80, 0x00, 0xF0, 0x01, 0x01, 0x10, 0x85, 0x11, 0xD2, 0x2A, 0xF7, 0x01, 0x71, 0x01, 0x10, 0x00, 0xEF, 0x00, 0xCF, 0x02, 0x00, 0xEF, 0x05, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x10, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x06, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xCF, 0x81, 0x00, 0xAF, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xAF, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x03, 0x00, 0xCF, 0x81, 0x00, 0xAF, 0x00, 0xCF, 0x02, 0x00, 0xD0, 0x82, 0x00, 0xF0, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x82, 0x01, 0x72, 0x2A, 0x96, 0x09, 0x72, 0x01, 0x00, 0xF0, 0x05, 0x00, 0xCF, 0x03, 0x00, 0xEF, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x0D, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x0A, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x83, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x02, 0x00, 0xD0, 0x81, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x00, 0xAF, 0x02, 0x00, 0xCF, 0x81, 0x09, 0x92, + 0x1A, 0x14, 0x04, 0x00, 0xCF, 0x81, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xD0, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x04, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x0E, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xF0, 0x01, 0x00, 0xEF, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xAF, 0x82, 0x00, 0xD0, 0x00, 0xAF, 0x00, 0xD0, 0x01, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x85, 0x01, 0x10, 0x00, 0xEF, 0x1A, 0x34, 0x1A, 0x55, 0x00, 0xF0, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x02, 0x00, 0xCF, 0x82, 0x00, 0xD0, 0x00, 0xCF, 0x00, 0xAF, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x13, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xF0, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xD0, 0x00, 0xCF, 0x01, 0x00, 0xF0, 0x81, 0x00, 0xCF, 0x00, 0xD0, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xD0, 0x88, 0x00, 0xCF, 0x00, 0xEF, 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x30, 0x1A, 0x34, 0x1A, 0x55, 0x01, 0x51, 0x01, 0x10, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xF0, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x81, 0x00, + 0xCF, 0x00, 0xAF, 0x04, 0x00, 0xCF, 0x94, 0x00, 0xAF, 0x00, 0xD0, 0x08, 0xD0, 0x00, 0xD0, 0x08, 0xAF, 0x08, 0x8F, 0x10, 0x4D, 0x30, 0x4E, 0x8A, 0x76, 0x92, 0x55, 0x9A, 0x14, 0xA2, 0x14, 0xAA, 0x13, 0xA1, 0xB2, 0xA9, 0xD3, 0xA9, 0xF3, 0xB1, 0xF4, 0xA9, 0xF4, 0xB1, 0xF4, 0xA9, 0xD3, 0xA9, 0xB3, 0x01, 0xA9, 0xF4, 0x86, 0xA1, 0xF4, 0x9A, 0x14, 0x9A, 0x96, 0x59, 0x51, 0x10, 0x0C, 0x08, 0x6D, 0x08, 0xAE, 0x02, 0x00, 0xCF, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x03, 0x00, 0xEF, 0x84, 0x01, 0x0F, 0x1A, 0x34, 0x2A, 0xD7, 0x09, 0xB2, 0x01, 0x30, 0x02, 0x00, 0xEF, 0x80, 0x00, 0xF0, 0x01, 0x00, 0xEF, 0x05, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x0F, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x0C, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x05, 0x00, 0xCF, 0x82, 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x0F, 0x01, 0x01, 0x10, 0x84, 0x01, 0x51, 0x2A, 0xD6, 0x22, 0x75, 0x01, 0x71, 0x01, 0x10, 0x01, 0x00, 0xEF, 0x81, 0x00, 0xCF, 0x00, 0xF0, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x0B, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x09, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xCF, 0x03, 0x00, 0xAF, 0x81, 0x00, 0xCF, 0x00, 0xAF, 0x06, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x81, 0x00, 0xEF, 0x00, 0xCF, 0x01, + 0x00, 0xF0, 0x81, 0x00, 0xCF, 0x00, 0xAF, 0x02, 0x00, 0xEF, 0x81, 0x01, 0x0F, 0x09, 0x91, 0x01, 0x2A, 0xB6, 0x85, 0x01, 0x92, 0x01, 0x30, 0x01, 0x10, 0x00, 0xF0, 0x00, 0xEF, 0x00, 0xF0, 0x0A, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x08, 0x00, 0xCF, 0x80, 0x00, 0xAE, 0x04, 0x00, 0xCF, 0x81, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x05, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x06, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x04, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x8A, 0x00, 0xEF, 0x01, 0x0F, 0x01, 0x10, 0x01, 0x0F, 0x01, 0x30, 0x11, 0xD3, 0x1A, 0x34, 0x12, 0x13, 0x09, 0xB2, 0x01, 0x50, 0x01, 0x10, 0x02, 0x00, 0xEF, 0x82, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x02, 0x00, 0xCE, 0x04, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x88, 0x01, 0x30, 0x09, 0xB2, 0x1A, 0x54, 0x22, 0x95, 0x12, 0x13, 0x01, 0xD2, 0x01, 0x71, 0x01, 0x30, 0x01, 0x0F, 0x01, 0x00, 0xEF, 0x01, 0x00, 0xCE, 0x82, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xAE, 0x05, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x06, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xCE, 0x80, 0x00, 0xCF, 0x0A, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xCE, 0x09, 0x00, 0xCF, 0x04, 0x00, 0xEF, 0x88, + 0x01, 0x30, 0x01, 0x91, 0x1A, 0x54, 0x1A, 0x74, 0x09, 0xF2, 0x01, 0x91, 0x01, 0x50, 0x01, 0x30, 0x00, 0xEF, 0x01, 0x00, 0xCE, 0x80, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x02, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0xCF, 0x01, 0x00, 0xCE, 0x80, 0x00, 0xAE, 0x03, 0x00, 0xCF, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x0A, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x09, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x82, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x03, 0x00, 0xCF, 0x81, 0x00, 0xEF, 0x00, 0xCF, 0x02, 0x00, 0xEF, 0x86, 0x01, 0x10, 0x01, 0x71, 0x22, 0x96, 0x1A, 0x75, 0x09, 0xB2, 0x01, 0x30, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x03, 0x00, 0xCE, 0x81, 0x00, 0xCF, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x84, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x1B, 0x00, 0xAE, 0x82, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x05, 0x00, 0xCF, 0x87, 0x00, 0xEF, 0x01, 0x10, 0x01, 0x30, 0x22, 0x96, 0x09, 0xB2, 0x01, 0x50, 0x01, 0x0F, 0x00, 0xEF, 0x01, 0x00, 0xCE, 0x03, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x83, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xCF, 0x01, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0F, 0x00, 0xAE, + 0x80, 0x00, 0xAF, 0x0B, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x83, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x86, 0x01, 0x0F, 0x01, 0x10, 0x01, 0x30, 0x1A, 0x75, 0x09, 0xD2, 0x01, 0x30, 0x00, 0xEF, 0x03, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x03, 0x00, 0xAF, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x83, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xAF, 0x1B, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x03, 0x00, 0xCF, 0x85, 0x00, 0xF0, 0x00, 0xEF, 0x01, 0x91, 0x09, 0xD2, 0x01, 0x30, 0x00, 0xEF, 0x03, 0x00, 0xCF, 0x82, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xCF, 0x01, 0x00, 0xCE, 0x81, 0x00, 0xCF, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x06, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x0B, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x07, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAF, 0x82, 0x01, 0x10, 0x09, 0xD3, 0x00, 0xF0, 0x02, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x81, 0x00, 0x8E, 0x00, 0x8F, 0x05, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x0F, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x80, + 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x09, 0x00, 0xAF, 0x81, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0x8F, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x03, 0x00, 0xCF, 0x81, 0x01, 0x50, 0x22, 0x75, 0x01, 0x00, 0xEF, 0x81, 0x00, 0xCF, 0x00, 0xEF, 0x03, 0x00, 0xCF, 0x81, 0x00, 0xAF, 0x00, 0xCF, 0x06, 0x00, 0xAF, 0x82, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x12, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xCE, 0x00, 0xAE, 0x05, 0x00, 0xAF, 0x81, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xCF, 0x86, 0x00, 0xEF, 0x01, 0x10, 0x01, 0x50, 0x09, 0xD2, 0x01, 0x71, 0x01, 0x51, 0x01, 0x0F, 0x05, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x07, 0x00, 0xAE, 0x84, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x87, 0x00, 0x6E, 0x08, 0x2D, 0x20, 0x0D, 0x69, 0xB3, 0x92, 0x96, 0x9A, 0x34, 0xA2, 0x14, 0xA1, 0xF3, 0x01, 0xA9, 0xF3, 0x81, 0xA9, 0xD3, 0xA9, 0xF3, 0x01, 0xB1, 0xF4, 0x8A, 0xA9, 0xD3, 0xB1, 0xF4, 0xA9, 0xF4, 0xAA, 0x14, 0xA1, 0xF4, 0x9A, 0x14, 0x9A, 0x96, 0x48, 0xCF, 0x08, 0x0B, 0x00, 0x6D, 0x00, 0x8E, 0x01, 0x00, + 0xAE, 0x03, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x84, 0x00, 0xCF, 0x01, 0x0F, 0x09, 0xF3, 0x12, 0x34, 0x01, 0x91, 0x01, 0x01, 0x30, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xCF, 0x03, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x81, 0x00, 0x8E, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x10, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x08, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x05, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x02, 0x00, 0xCF, 0x82, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x03, 0x00, 0xCF, 0x02, 0x00, 0xEF, 0x84, 0x01, 0x10, 0x01, 0x30, 0x1A, 0x75, 0x22, 0xD6, 0x09, 0xD2, 0x01, 0x01, 0x30, 0x82, 0x01, 0x10, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x0A, 0x00, 0xAE, 0x82, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x03, 0x00, 0xCF, 0x03, 0x00, 0xAF, 0x05, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xEF, 0x87, 0x01, 0x0F, 0x01, 0x30, 0x09, 0xD2, 0x1A, 0x75, 0x1A, 0x54, 0x09, 0xB2, 0x01, 0x51, 0x01, 0x30, 0x01, 0x01, 0x10, 0x81, 0x00, 0xEF, 0x00, 0xCF, 0x04, 0x00, 0xAF, 0x12, 0x00, 0xAE, 0x02, 0x00, 0xCE, 0x01, 0x00, 0xCF, 0x03, 0x00, 0xCE, 0x02, 0x00, 0xEF, + 0x01, 0x00, 0xCF, 0x81, 0x00, 0xCE, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x81, 0x00, 0xCF, 0x00, 0xAE, 0x04, 0x00, 0xCF, 0x80, 0x00, 0xAE, 0x02, 0x00, 0xCE, 0x03, 0x00, 0xCF, 0x82, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xEF, 0x02, 0x01, 0x0F, 0x8B, 0x01, 0x30, 0x01, 0x50, 0x12, 0x34, 0x1A, 0x95, 0x22, 0xB5, 0x12, 0x13, 0x01, 0x71, 0x01, 0x30, 0x01, 0x10, 0x01, 0x30, 0x2A, 0x96, 0x32, 0xD7, 0x01, 0x3A, 0xD6, 0x04, 0x3B, 0x17, 0x80, 0x3B, 0x37, 0x02, 0x43, 0x37, 0x03, 0x3B, 0x17, 0x89, 0x32, 0xD6, 0x3B, 0x17, 0x32, 0xF6, 0x2A, 0xD6, 0x2A, 0xB6, 0x22, 0x75, 0x22, 0x54, 0x12, 0x13, 0x1A, 0x33, 0x11, 0xF3, 0x02, 0x12, 0x13, 0x82, 0x22, 0x95, 0x2A, 0xD6, 0x33, 0x17, 0x01, 0x33, 0x37, 0x81, 0x33, 0x78, 0x3B, 0x78, 0x03, 0x43, 0x99, 0x80, 0x43, 0x79, 0x01, 0x4B, 0x99, 0x81, 0x4B, 0x78, 0x43, 0x38, 0x01, 0x43, 0x58, 0x01, 0x43, 0x37, 0x80, 0x43, 0x17, 0x01, 0x43, 0x37, 0x80, 0x43, 0x38, 0x02, 0x43, 0x37, 0x81, 0x43, 0x17, 0x43, 0x38, 0x02, 0x43, 0x17, 0x83, 0x3A, 0xF7, 0x3A, 0xD6, 0x3A, 0xF7, 0x43, 0x17, 0x02, 0x3A, 0xF6, 0x86, 0x32, 0xB6, 0x3A, 0xF7, 0x43, 0x17, 0x3B, 0x17, 0x3A, 0xF7, 0x3B, 0x17, 0x43, 0x17, 0x01, 0x3B, 0x17, 0x87, 0x43, 0x37, 0x43, 0x58, 0x43, 0x38, 0x3B, 0x17, 0x43, 0x38, 0x43, 0x17, 0x3B, 0x17, 0x43, 0x37, 0x01, 0x43, 0x17, 0x80, 0x3B, 0x17, 0x01, 0x3A, 0xF7, 0x80, 0x42, 0xF7, 0x02, 0x43, 0x17, 0x01, 0x3B, 0x17, 0x81, 0x3A, 0xF7, 0x3B, 0x17, 0x01, + 0x3A, 0xF7, 0x82, 0x32, 0xD6, 0x3A, 0xD7, 0x32, 0xB6, 0x01, 0x2A, 0x95, 0x87, 0x1A, 0x34, 0x1A, 0x13, 0x11, 0xF2, 0x1A, 0x33, 0x12, 0x13, 0x1A, 0x54, 0x1A, 0x74, 0x22, 0xB5, 0x01, 0x2B, 0x17, 0x80, 0x2B, 0x37, 0x02, 0x3B, 0x78, 0x82, 0x43, 0x78, 0x3B, 0x38, 0x43, 0x79, 0x01, 0x43, 0x58, 0x86, 0x43, 0x38, 0x3A, 0xF7, 0x3A, 0xD7, 0x43, 0x17, 0x43, 0x38, 0x3A, 0xF7, 0x3B, 0x17, 0x01, 0x43, 0x37, 0x80, 0x43, 0x58, 0x01, 0x4B, 0x78, 0x80, 0x4B, 0x58, 0x02, 0x4B, 0x79, 0x01, 0x43, 0x58, 0x01, 0x4B, 0x58, 0x80, 0x43, 0x58, 0x01, 0x4B, 0x79, 0x83, 0x4B, 0x99, 0x53, 0x99, 0x4B, 0x79, 0x43, 0x58, 0x02, 0x4B, 0x79, 0x82, 0x43, 0x58, 0x43, 0x78, 0x4B, 0x79, 0x01, 0x43, 0x58, 0x83, 0x43, 0x78, 0x43, 0x58, 0x4B, 0x59, 0x43, 0x58, 0x01, 0x43, 0x38, 0x83, 0x43, 0x37, 0x3B, 0x17, 0x43, 0x38, 0x43, 0x17, 0x02, 0x43, 0x38, 0x84, 0x43, 0x18, 0x43, 0x38, 0x3A, 0xF7, 0x43, 0x17, 0x3B, 0x17, 0x01, 0x3A, 0xF7, 0x8A, 0x3A, 0xD7, 0x32, 0xD6, 0x3A, 0xF7, 0x3A, 0xD6, 0x3A, 0xF7, 0x32, 0xF6, 0x3A, 0xF7, 0x32, 0xD7, 0x2A, 0x96, 0x22, 0x75, 0x1A, 0x34, 0x01, 0x1A, 0x54, 0x91, 0x22, 0x95, 0x1A, 0x54, 0x22, 0x95, 0x33, 0x38, 0x33, 0x17, 0x32, 0xF7, 0x3B, 0x58, 0x4B, 0xB9, 0x43, 0x99, 0x43, 0x79, 0x43, 0x58, 0x43, 0x38, 0x3B, 0x17, 0x4B, 0x59, 0x4B, 0x58, 0x43, 0x17, 0x43, 0x38, 0x43, 0x17, 0x02, 0x43, 0x38, 0x84, 0x3A, 0xF7, 0x43, 0x18, 0x3A, 0xF7, 0x42, 0xF7, 0x4B, 0x58, 0x01, 0x43, 0x18, 0x84, 0x43, 0x58, 0x3A, 0xD7, 0x3A, 0xF7, 0x4B, 0x79, 0x4B, + 0x99, 0x02, 0x43, 0x58, 0x01, 0x4B, 0x99, 0x84, 0x53, 0x99, 0x4B, 0x99, 0x53, 0xBA, 0x4B, 0x99, 0x53, 0xB9, 0x02, 0x53, 0x99, 0x81, 0x53, 0xBA, 0x53, 0xB9, 0x06, 0x53, 0xBA, 0x83, 0x53, 0x99, 0x53, 0xBA, 0x53, 0xDA, 0x53, 0xBA, 0x02, 0x53, 0x99, 0x80, 0x4B, 0x79, 0x01, 0x53, 0xBA, 0x80, 0x4B, 0x79, 0x01, 0x4B, 0x59, 0x82, 0x43, 0x58, 0x43, 0x38, 0x3A, 0xF7, 0x01, 0x3B, 0x17, 0x80, 0x3A, 0xF7, 0x01, 0x32, 0xD7, 0x84, 0x32, 0xB6, 0x2A, 0x96, 0x2A, 0x95, 0x22, 0x34, 0x1A, 0x54, 0x01, 0x1A, 0x34, 0x82, 0x11, 0xF3, 0x1A, 0x34, 0x43, 0x59, 0x01, 0x3B, 0x38, 0x01, 0x43, 0x58, 0x01, 0x3B, 0x58, 0x84, 0x33, 0x17, 0x32, 0xF7, 0x32, 0xB6, 0x3A, 0xF7, 0x43, 0x58, 0x01, 0x3A, 0xD7, 0x01, 0x3B, 0x18, 0x81, 0x43, 0x38, 0x4B, 0x58, 0x01, 0x3B, 0x17, 0x81, 0x43, 0x58, 0x43, 0x38, 0x01, 0x4B, 0x79, 0x84, 0x43, 0x38, 0x4B, 0x59, 0x4B, 0x79, 0x43, 0x58, 0x4B, 0x79, 0x02, 0x4B, 0x99, 0x86, 0x4B, 0x79, 0x4B, 0x99, 0x53, 0xB9, 0x53, 0x99, 0x4B, 0x79, 0x4B, 0x99, 0x4B, 0x79, 0x01, 0x53, 0x99, 0x80, 0x4B, 0x79, 0x03, 0x53, 0x99, 0x02, 0x4B, 0x99, 0x81, 0x4B, 0xB9, 0x4B, 0x99, 0x01, 0x53, 0x99, 0x80, 0x4B, 0x99, 0x01, 0x53, 0x99, 0x83, 0x53, 0xBA, 0x53, 0xB9, 0x4B, 0x99, 0x4B, 0x79, 0x02, 0x4B, 0x99, 0x82, 0x4B, 0x79, 0x4B, 0x78, 0x4B, 0x58, 0x01, 0x43, 0x58, 0x81, 0x4B, 0x58, 0x43, 0x58, 0x01, 0x3B, 0x17, 0x8B, 0x43, 0x38, 0x43, 0x17, 0x43, 0x38, 0x3B, 0x17, 0x32, 0xB6, 0x2A, 0x96, 0x2A, 0xB5, 0x2A, 0xB6, 0x22, 0x75, 0x1A, 0x75, 0x33, 0x17, + 0x33, 0x38, 0x01, 0x3B, 0x79, 0x89, 0x33, 0x17, 0x32, 0xD6, 0x32, 0xD7, 0x32, 0xF7, 0x32, 0xB6, 0x32, 0xD7, 0x3A, 0xF7, 0x3B, 0x17, 0x3A, 0xF7, 0x3B, 0x17, 0x01, 0x3A, 0xF7, 0x87, 0x43, 0x38, 0x3B, 0x17, 0x43, 0x18, 0x4B, 0x58, 0x32, 0xD6, 0x3A, 0xD7, 0x4B, 0x58, 0x4B, 0x79, 0x01, 0x43, 0x38, 0x85, 0x43, 0x58, 0x4B, 0x99, 0x4B, 0x79, 0x4B, 0x58, 0x4B, 0x78, 0x4B, 0x99, 0x01, 0x4B, 0x78, 0x01, 0x4B, 0x79, 0x81, 0x4B, 0x78, 0x4B, 0x99, 0x01, 0x4B, 0x79, 0x02, 0x4B, 0x78, 0x81, 0x53, 0x99, 0x4B, 0x99, 0x02, 0x53, 0x99, 0x83, 0x4B, 0x99, 0x53, 0x99, 0x4B, 0x99, 0x53, 0xB9, 0x01, 0x4B, 0x99, 0x83, 0x4B, 0x79, 0x53, 0x99, 0x4B, 0x99, 0x4B, 0x79, 0x01, 0x4B, 0x99, 0x85, 0x4B, 0x58, 0x4B, 0x99, 0x4B, 0x78, 0x4B, 0x79, 0x4B, 0x99, 0x4B, 0x78, 0x01, 0x4B, 0x79, 0x80, 0x4B, 0x78, 0x01, 0x4B, 0x79, 0x01, 0x43, 0x38, 0x84, 0x43, 0x58, 0x3B, 0x18, 0x3A, 0xF7, 0x3B, 0x38, 0x32, 0xF7, 0x01, 0x32, 0xD6, 0x83, 0x2A, 0x95, 0x22, 0x75, 0x3B, 0x38, 0x33, 0x37, 0x01, 0x3B, 0x38, 0x01, 0x33, 0x17, 0x87, 0x3B, 0x17, 0x3B, 0x38, 0x32, 0xF7, 0x3B, 0x17, 0x32, 0xF7, 0x32, 0xF6, 0x3B, 0x17, 0x43, 0x37, 0x01, 0x3A, 0xF7, 0x83, 0x43, 0x38, 0x3B, 0x17, 0x43, 0x38, 0x4B, 0x59, 0x01, 0x43, 0x17, 0x01, 0x43, 0x58, 0x81, 0x43, 0x38, 0x4B, 0x58, 0x03, 0x4B, 0x79, 0x04, 0x4B, 0x99, 0x84, 0x4B, 0xB9, 0x4B, 0x99, 0x53, 0x99, 0x4B, 0x99, 0x4B, 0xB9, 0x02, 0x4B, 0x99, 0x82, 0x53, 0xB9, 0x4B, 0x99, 0x4B, 0x79, 0x01, 0x4B, 0x99, 0x86, 0x4B, 0x78, 0x4B, 0x79, + 0x4B, 0xB9, 0x4B, 0x99, 0x4B, 0x79, 0x4B, 0x99, 0x43, 0x79, 0x03, 0x4B, 0x79, 0x81, 0x4B, 0x99, 0x4B, 0x79, 0x01, 0x4B, 0x99, 0x81, 0x4B, 0xB9, 0x4B, 0x99, 0x02, 0x53, 0xBA, 0x80, 0x53, 0x9A, 0x04, 0x53, 0xBA, 0x01, 0x4B, 0x59, 0x81, 0x53, 0x9A, 0x4B, 0x59, 0x01, 0x43, 0x38, 0x88, 0x3A, 0xF7, 0x32, 0xD7, 0x1A, 0x55, 0x33, 0x38, 0x3B, 0x38, 0x43, 0x59, 0x33, 0x18, 0x32, 0xF7, 0x3A, 0xF7, 0x01, 0x43, 0x38, 0x01, 0x43, 0x59, 0x84, 0x4B, 0x79, 0x43, 0x58, 0x4B, 0x79, 0x43, 0x59, 0x4B, 0x59, 0x01, 0x43, 0x59, 0x04, 0x43, 0x58, 0x80, 0x4B, 0x79, 0x01, 0x43, 0x58, 0x81, 0x43, 0x38, 0x4B, 0x58, 0x01, 0x43, 0x58, 0x01, 0x4B, 0x58, 0x01, 0x43, 0x58, 0x83, 0x4B, 0x58, 0x4B, 0x79, 0x43, 0x58, 0x4B, 0x78, 0x02, 0x4B, 0x79, 0x01, 0x4B, 0x99, 0x82, 0x4B, 0x79, 0x4B, 0x58, 0x4B, 0x78, 0x01, 0x4B, 0x79, 0x80, 0x4B, 0x78, 0x02, 0x4B, 0x79, 0x01, 0x4B, 0x59, 0x80, 0x43, 0x38, 0x01, 0x4B, 0x59, 0x80, 0x43, 0x58, 0x01, 0x4B, 0x79, 0x83, 0x4B, 0x59, 0x4B, 0x79, 0x43, 0x59, 0x43, 0x58, 0x01, 0x4B, 0x99, 0x8E, 0x4B, 0x79, 0x43, 0x59, 0x43, 0x38, 0x4B, 0x79, 0x43, 0x38, 0x3A, 0xF7, 0x4B, 0x79, 0x53, 0x9A, 0x42, 0xF7, 0x3A, 0xF7, 0x4B, 0x79, 0x4B, 0x99, 0x4B, 0x79, 0x43, 0x38, 0x32, 0xD6, 0x01, 0x32, 0xF7, 0x84, 0x33, 0x17, 0x22, 0x95, 0x33, 0x58, 0x1A, 0x75, 0x22, 0x95, 0x01, 0x32, 0xF7, 0x82, 0x3B, 0x18, 0x3B, 0x38, 0x3B, 0x18, 0x01, 0x43, 0x59, 0x82, 0x4B, 0x79, 0x43, 0x79, 0x43, 0x59, 0x01, 0x4B, 0x79, 0x82, 0x43, 0x38, 0x4B, 0x59, 0x4B, + 0x79, 0x02, 0x43, 0x58, 0x83, 0x43, 0x38, 0x43, 0x58, 0x4B, 0x59, 0x43, 0x58, 0x01, 0x4B, 0x79, 0x85, 0x43, 0x78, 0x4B, 0x79, 0x43, 0x79, 0x4B, 0x79, 0x43, 0x59, 0x4B, 0x79, 0x02, 0x4B, 0x99, 0x82, 0x4B, 0xB9, 0x53, 0x99, 0x53, 0xB9, 0x03, 0x4B, 0x99, 0x80, 0x4B, 0x78, 0x01, 0x4B, 0x99, 0x80, 0x4B, 0x79, 0x05, 0x4B, 0x78, 0x01, 0x4B, 0x79, 0x89, 0x4B, 0x78, 0x4B, 0x79, 0x4B, 0x99, 0x4B, 0x79, 0x43, 0x58, 0x4B, 0x58, 0x4B, 0x79, 0x43, 0x38, 0x43, 0x58, 0x4B, 0x79, 0x01, 0x43, 0x18, 0x84, 0x4B, 0x79, 0x53, 0x9A, 0x4B, 0x79, 0x4B, 0x59, 0x53, 0x79, 0x02, 0x4B, 0x59, 0x01, 0x3B, 0x17, 0x88, 0x43, 0x38, 0x43, 0x58, 0x3B, 0x58, 0x2A, 0xD6, 0x1A, 0x95, 0x2A, 0xF7, 0x1A, 0x75, 0x12, 0x54, 0x22, 0x95, 0x02, 0x22, 0x75, 0x83, 0x32, 0xD7, 0x3B, 0x17, 0x32, 0xD7, 0x32, 0xD6, 0x01, 0x3A, 0xF7, 0x95, 0x43, 0x17, 0x43, 0x37, 0x43, 0x38, 0x43, 0x58, 0x4B, 0x79, 0x4B, 0x99, 0x4B, 0x59, 0x4B, 0x58, 0x43, 0x58, 0x4B, 0x79, 0x4B, 0x99, 0x53, 0x99, 0x4B, 0x58, 0x4B, 0x59, 0x53, 0x9A, 0x4B, 0x79, 0x53, 0xDA, 0x5B, 0xFB, 0x4B, 0x58, 0x43, 0x38, 0x53, 0xDA, 0x5B, 0xDA, 0x01, 0x43, 0x17, 0x9D, 0x3A, 0xD6, 0x3A, 0xB6, 0x4A, 0xD7, 0x63, 0x18, 0x7A, 0xF8, 0x61, 0xD3, 0x92, 0xB6, 0x92, 0x34, 0x9A, 0x34, 0xA2, 0x14, 0xA1, 0xF3, 0xA9, 0xF3, 0xA9, 0xD3, 0xA9, 0xF3, 0xA9, 0xF4, 0xA9, 0xD3, 0xA9, 0x93, 0xA9, 0xB3, 0xB2, 0x15, 0xAA, 0x14, 0xA2, 0x14, 0x9A, 0x14, 0x9A, 0xB6, 0x51, 0x71, 0x62, 0xD6, 0x52, 0xD6, 0x4B, 0x17, 0x53, 0x99, 0x5B, 0xBA, 0x63, + 0xFB, 0x02, 0x53, 0xBA, 0x01, 0x53, 0x99, 0x92, 0x4B, 0x79, 0x43, 0x18, 0x3B, 0x18, 0x43, 0x58, 0x43, 0x59, 0x43, 0x58, 0x33, 0x17, 0x33, 0x38, 0x2B, 0x17, 0x22, 0xD6, 0x2B, 0x17, 0x22, 0x95, 0x12, 0x13, 0x1A, 0x75, 0x22, 0xB6, 0x2A, 0xB6, 0x32, 0xB6, 0x32, 0xD7, 0x32, 0xF7, 0x01, 0x32, 0xD7, 0x80, 0x3B, 0x18, 0x04, 0x3A, 0xF7, 0x01, 0x43, 0x18, 0x85, 0x43, 0x58, 0x4B, 0x58, 0x43, 0x58, 0x43, 0x17, 0x43, 0x58, 0x4B, 0x78, 0x01, 0x43, 0x38, 0x81, 0x43, 0x58, 0x4B, 0x79, 0x01, 0x4B, 0x58, 0x81, 0x4B, 0x79, 0x53, 0xBA, 0x01, 0x53, 0x99, 0x01, 0x53, 0xB9, 0x83, 0x53, 0x99, 0x53, 0xBA, 0x53, 0x99, 0x4B, 0x79, 0x01, 0x53, 0x99, 0x01, 0x4B, 0x79, 0x81, 0x43, 0x58, 0x4B, 0x78, 0x01, 0x4B, 0x99, 0x80, 0x4B, 0x78, 0x01, 0x4B, 0x79, 0x01, 0x4B, 0x99, 0x80, 0x53, 0x99, 0x02, 0x4B, 0x79, 0x86, 0x53, 0x79, 0x4B, 0x58, 0x4B, 0x59, 0x4B, 0x38, 0x43, 0x38, 0x4B, 0x58, 0x43, 0x38, 0x01, 0x43, 0x58, 0x80, 0x43, 0x18, 0x01, 0x43, 0x38, 0x83, 0x4B, 0x59, 0x43, 0x58, 0x3B, 0x38, 0x3B, 0x17, 0x03, 0x3B, 0x38, 0x88, 0x33, 0x17, 0x22, 0xD6, 0x1A, 0x95, 0x2A, 0xF7, 0x33, 0x78, 0x22, 0xD6, 0x12, 0x54, 0x12, 0x34, 0x22, 0xB6, 0x05, 0x32, 0xD7, 0x83, 0x3A, 0xF7, 0x32, 0xD7, 0x3A, 0xF7, 0x3B, 0x17, 0x01, 0x3A, 0xF7, 0x80, 0x3B, 0x17, 0x01, 0x43, 0x58, 0x80, 0x43, 0x17, 0x04, 0x43, 0x38, 0x80, 0x43, 0x17, 0x02, 0x43, 0x38, 0x81, 0x3B, 0x17, 0x43, 0x17, 0x02, 0x43, 0x38, 0x80, 0x4B, 0x58, 0x01, 0x4B, 0x79, 0x80, 0x4B, 0x99, 0x01, 0x53, 0x99, 0x01, + 0x4B, 0x99, 0x81, 0x53, 0x9A, 0x4B, 0x99, 0x01, 0x4B, 0x79, 0x80, 0x4B, 0x58, 0x01, 0x4B, 0x79, 0x81, 0x43, 0x38, 0x43, 0x58, 0x01, 0x43, 0x38, 0x87, 0x43, 0x58, 0x43, 0x37, 0x43, 0x17, 0x43, 0x37, 0x43, 0x17, 0x43, 0x38, 0x3B, 0x17, 0x3A, 0xF7, 0x02, 0x3B, 0x17, 0x80, 0x43, 0x17, 0x01, 0x3B, 0x17, 0x80, 0x43, 0x18, 0x01, 0x43, 0x38, 0x01, 0x43, 0x58, 0x81, 0x3B, 0x38, 0x43, 0x78, 0x01, 0x43, 0x99, 0x8D, 0x43, 0xB9, 0x3B, 0x78, 0x3B, 0x58, 0x33, 0x58, 0x3B, 0x79, 0x3B, 0x58, 0x22, 0xB6, 0x1A, 0x54, 0x11, 0xF3, 0x12, 0x14, 0x1A, 0x34, 0x22, 0x55, 0x22, 0x75, 0x22, 0x55, 0x01, 0x2A, 0x76, 0x80, 0x2A, 0x96, 0x02, 0x32, 0xB6, 0x01, 0x32, 0xD6, 0x01, 0x3A, 0xF7, 0x02, 0x3B, 0x17, 0x80, 0x3A, 0xF7, 0x01, 0x43, 0x38, 0x83, 0x43, 0x37, 0x3B, 0x17, 0x43, 0x17, 0x43, 0x37, 0x01, 0x43, 0x17, 0x82, 0x3B, 0x17, 0x3A, 0xF6, 0x43, 0x17, 0x04, 0x3B, 0x17, 0x82, 0x3B, 0x37, 0x33, 0x17, 0x3A, 0xF7, 0x02, 0x3B, 0x17, 0x80, 0x43, 0x37, 0x02, 0x43, 0x38, 0x82, 0x43, 0x58, 0x43, 0x38, 0x4B, 0x79, 0x02, 0x4B, 0x58, 0x84, 0x43, 0x38, 0x43, 0x58, 0x4B, 0x58, 0x43, 0x38, 0x43, 0x58, 0x01, 0x43, 0x38, 0x84, 0x43, 0x17, 0x43, 0x37, 0x43, 0x38, 0x43, 0x58, 0x3B, 0x37, 0x01, 0x43, 0x38, 0x87, 0x3B, 0x38, 0x43, 0x58, 0x4B, 0x79, 0x43, 0x79, 0x3B, 0x38, 0x43, 0x78, 0x4B, 0x99, 0x43, 0x78, 0x01, 0x4B, 0xBA, 0x80, 0x3B, 0x78, 0x01, 0x33, 0x37, 0x84, 0x3B, 0x78, 0x33, 0x17, 0x2A, 0xD6, 0x1A, 0x74, 0x09, 0xF3, 0x01, 0x11, 0xB2, 0x01, 0x09, 0x71, 0x81, + 0x11, 0xB2, 0x11, 0xB1, 0x02, 0x19, 0xF2, 0x84, 0x11, 0xD2, 0x19, 0xF2, 0x11, 0xD2, 0x19, 0xF3, 0x19, 0xD2, 0x01, 0x19, 0xF2, 0x01, 0x1A, 0x13, 0x01, 0x1A, 0x33, 0x90, 0x1A, 0x54, 0x22, 0x54, 0x22, 0x74, 0x2A, 0x95, 0x2A, 0xD6, 0x33, 0x17, 0x2A, 0xD6, 0x22, 0xB6, 0x22, 0xB5, 0x2A, 0xF6, 0x33, 0x17, 0x22, 0xB5, 0x1A, 0x33, 0x11, 0xF2, 0x09, 0xB2, 0x09, 0xB1, 0x09, 0xD2, 0x01, 0x09, 0x91, 0x84, 0x09, 0x90, 0x09, 0x71, 0x09, 0x70, 0x09, 0x91, 0x09, 0x71, 0x01, 0x11, 0x91, 0x87, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x19, 0xD2, 0x11, 0xB2, 0x11, 0xB1, 0x11, 0x91, 0x01, 0x11, 0xB1, 0x83, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x09, 0x71, 0x01, 0x11, 0x91, 0x96, 0x19, 0xB2, 0x11, 0x92, 0x19, 0xD2, 0x11, 0xB1, 0x19, 0xD2, 0x11, 0xB1, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x09, 0x91, 0x11, 0x91, 0x09, 0x91, 0x11, 0xB2, 0x11, 0xB1, 0x11, 0xD2, 0x11, 0x91, 0x11, 0xB1, 0x02, 0x11, 0x91, 0x87, 0x19, 0xB2, 0x11, 0xB1, 0x19, 0xB2, 0x11, 0x91, 0x19, 0xD2, 0x19, 0xB2, 0x19, 0xD2, 0x19, 0xB2, 0x01, 0x19, 0xD2, 0x81, 0x19, 0xF3, 0x19, 0xD2, 0x01, 0x19, 0xF3, 0x01, 0x22, 0x13, 0x88, 0x1A, 0x34, 0x22, 0x54, 0x22, 0x75, 0x2A, 0x95, 0x2A, 0xB5, 0x33, 0x37, 0x2A, 0xD5, 0x22, 0xB5, 0x22, 0xD6, 0x01, 0x22, 0x95, 0x84, 0x12, 0x33, 0x11, 0xF2, 0x09, 0xD2, 0x09, 0xB1, 0x09, 0x91, 0x01, 0x09, 0x71, 0x83, 0x09, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x01, 0x11, 0xB2, + 0x02, 0x19, 0xD2, 0x8C, 0x11, 0x91, 0x11, 0xD2, 0x11, 0x91, 0x11, 0xB1, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0xB2, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x03, 0x11, 0x91, 0x91, 0x11, 0xB1, 0x09, 0x71, 0x11, 0xB2, 0x11, 0x91, 0x11, 0x92, 0x09, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x09, 0xB1, 0x11, 0xB2, 0x09, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x01, 0x11, 0xB2, 0x87, 0x19, 0xD2, 0x11, 0xB2, 0x19, 0xB2, 0x11, 0xB2, 0x19, 0xB2, 0x11, 0x91, 0x19, 0xB2, 0x11, 0x92, 0x01, 0x19, 0xD2, 0x82, 0x22, 0x13, 0x19, 0xF3, 0x22, 0x13, 0x03, 0x19, 0xF3, 0x8B, 0x19, 0xF2, 0x19, 0xF3, 0x1A, 0x13, 0x1A, 0x34, 0x22, 0x55, 0x22, 0x75, 0x2A, 0xB6, 0x1A, 0x54, 0x12, 0x13, 0x33, 0x17, 0x32, 0xF7, 0x12, 0x13, 0x01, 0x09, 0xB2, 0x81, 0x09, 0x92, 0x09, 0x91, 0x02, 0x09, 0x71, 0x85, 0x09, 0x51, 0x09, 0x71, 0x19, 0xD2, 0x11, 0xB2, 0x11, 0xD2, 0x11, 0x92, 0x01, 0x11, 0xB2, 0x85, 0x19, 0xD2, 0x11, 0x92, 0x19, 0xB2, 0x11, 0x92, 0x11, 0xB2, 0x11, 0x92, 0x01, 0x19, 0xB2, 0x81, 0x19, 0xF3, 0x19, 0xD3, 0x01, 0x11, 0xB2, 0x88, 0x11, 0xD2, 0x19, 0xF3, 0x19, 0xD2, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x92, 0x11, 0xB2, 0x09, 0x91, 0x11, 0xB1, 0x02, 0x11, 0x91, 0x83, 0x11, 0xB1, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x71, 0x02, 0x11, 0x91, 0x80, 0x11, 0x71, 0x02, 0x11, 0x91, 0x84, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x02, 0x11, 0x91, 0x88, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, + 0x11, 0x92, 0x09, 0x71, 0x11, 0x91, 0x11, 0xB2, 0x19, 0xD3, 0x19, 0xB2, 0x01, 0x19, 0xD3, 0x81, 0x19, 0xF3, 0x19, 0xD3, 0x01, 0x19, 0xF3, 0x88, 0x1A, 0x13, 0x22, 0x34, 0x22, 0x54, 0x2A, 0x95, 0x22, 0x74, 0x22, 0x95, 0x2A, 0xB6, 0x3B, 0x58, 0x22, 0x75, 0x01, 0x09, 0x91, 0x80, 0x09, 0x71, 0x01, 0x09, 0x91, 0x82, 0x09, 0xB1, 0x09, 0xB2, 0x11, 0xD2, 0x01, 0x11, 0xB2, 0x98, 0x11, 0x92, 0x11, 0xB2, 0x11, 0x91, 0x11, 0x92, 0x09, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0x92, 0x11, 0x91, 0x11, 0xB2, 0x09, 0x71, 0x11, 0x91, 0x09, 0x91, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x02, 0x11, 0x91, 0x90, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x11, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0xB1, 0x09, 0x91, 0x11, 0xB1, 0x09, 0x91, 0x11, 0x91, 0x09, 0x70, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x70, 0x01, 0x09, 0x71, 0x88, 0x11, 0x91, 0x09, 0x91, 0x11, 0xB1, 0x11, 0x91, 0x11, 0xB1, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB1, 0x01, 0x11, 0x91, 0x80, 0x09, 0x71, 0x01, 0x11, 0xB1, 0x01, 0x11, 0xB2, 0x84, 0x11, 0xD2, 0x11, 0xB2, 0x19, 0xD3, 0x19, 0xF3, 0x11, 0xD2, 0x01, 0x11, 0xF3, 0x83, 0x2A, 0xD6, 0x1A, 0x34, 0x09, 0xF3, 0x09, 0xB2, 0x02, 0x09, 0x91, 0x8B, 0x11, 0xB2, 0x09, 0x92, 0x11, 0xB2, 0x09, 0x91, 0x11, 0xB2, 0x11, 0x92, 0x11, 0xB2, 0x11, 0x91, 0x11, 0x92, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x92, 0x01, 0x11, 0xB2, 0x01, 0x11, + 0x91, 0x02, 0x11, 0xB2, 0x9E, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x70, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x70, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x11, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x01, 0x11, 0x91, 0x8E, 0x11, 0xB2, 0x09, 0x91, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x91, 0x11, 0xB1, 0x09, 0x91, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x91, 0x11, 0xB1, 0x09, 0x71, 0x11, 0x91, 0x01, 0x11, 0x92, 0x80, 0x11, 0xB2, 0x01, 0x19, 0xF3, 0x01, 0x11, 0xD3, 0x82, 0x11, 0xD2, 0x2A, 0xB6, 0x2A, 0xD6, 0x01, 0x09, 0xD2, 0x82, 0x09, 0xB2, 0x01, 0x91, 0x09, 0x92, 0x01, 0x09, 0xB2, 0x01, 0x11, 0xB2, 0x81, 0x11, 0xD2, 0x11, 0xB1, 0x01, 0x11, 0xB2, 0x87, 0x11, 0xD2, 0x11, 0xB2, 0x19, 0xD2, 0x11, 0xB2, 0x19, 0xB2, 0x11, 0xB2, 0x19, 0xB2, 0x11, 0x91, 0x02, 0x11, 0xB2, 0x8F, 0x11, 0x91, 0x11, 0xB1, 0x09, 0x91, 0x11, 0xB2, 0x09, 0x91, 0x11, 0x91, 0x09, 0x91, 0x11, 0x91, 0x09, 0x91, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x09, 0x91, 0x09, 0x71, 0x11, 0x91, 0x02, 0x09, 0x91, 0x81, 0x11, 0x91, 0x09, 0x71, 0x01, 0x09, 0x91, 0x83, 0x11, 0x91, 0x09, 0x71, 0x11, 0xB2, 0x09, 0x91, 0x02, 0x11, 0xB2, 0x80, 0x09, 0x91, 0x02, 0x11, 0xB2, 0x85, 0x09, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x09, 0x91, 0x11, 0x91, 0x01, + 0x09, 0x91, 0x85, 0x09, 0x71, 0x09, 0x91, 0x09, 0x71, 0x09, 0x91, 0x09, 0x71, 0x09, 0x91, 0x01, 0x09, 0x71, 0x84, 0x11, 0x92, 0x19, 0xB2, 0x19, 0xD3, 0x11, 0xB2, 0x11, 0x92, 0x01, 0x09, 0x71, 0x83, 0x1A, 0x54, 0x2A, 0xF7, 0x11, 0xD3, 0x19, 0xF3, 0x03, 0x11, 0xD3, 0x82, 0x11, 0xD2, 0x11, 0xB2, 0x11, 0xD2, 0x06, 0x11, 0xB2, 0x8F, 0x11, 0xD2, 0x11, 0xB2, 0x11, 0xD2, 0x11, 0xB1, 0x11, 0xB2, 0x11, 0xB1, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x09, 0x91, 0x11, 0x91, 0x09, 0x91, 0x11, 0x91, 0x09, 0x91, 0x11, 0xB1, 0x09, 0x91, 0x02, 0x11, 0x91, 0x8E, 0x09, 0x91, 0x11, 0x91, 0x09, 0x91, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x91, 0x11, 0xB1, 0x09, 0x91, 0x11, 0x91, 0x09, 0x91, 0x11, 0x91, 0x09, 0x91, 0x01, 0x11, 0x91, 0x01, 0x11, 0x92, 0x8F, 0x11, 0xB2, 0x09, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x09, 0x91, 0x11, 0xB2, 0x09, 0x91, 0x11, 0xB2, 0x09, 0x91, 0x11, 0xB2, 0x09, 0x91, 0x09, 0x92, 0x09, 0x91, 0x11, 0x92, 0x09, 0x71, 0x02, 0x11, 0x71, 0x01, 0x09, 0x71, 0x81, 0x11, 0xB2, 0x19, 0xD2, 0x01, 0x11, 0xB2, 0x86, 0x09, 0x92, 0x09, 0xB2, 0x11, 0xF3, 0x11, 0xD3, 0x12, 0x13, 0x2A, 0xD6, 0x12, 0x34, 0x01, 0x11, 0xF3, 0x82, 0x11, 0xD3, 0x09, 0xB2, 0x11, 0xB2, 0x01, 0x09, 0x92, 0x01, 0x09, 0x91, 0x80, 0x09, 0x71, 0x01, 0x11, 0xB2, 0x93, 0x11, 0x92, 0x09, 0x71, 0x11, 0xB2, 0x11, 0x92, 0x11, 0xB2, 0x11, 0x92, 0x11, 0xB2, 0x11, 0x92, 0x11, 0xB2, 0x11, 0x92, 0x11, 0xB2, 0x11, 0x92, 0x11, 0xB2, 0x09, 0x91, + 0x11, 0xB2, 0x09, 0x91, 0x11, 0xB2, 0x09, 0x91, 0x11, 0x92, 0x09, 0x71, 0x02, 0x09, 0x91, 0x88, 0x09, 0x71, 0x11, 0x91, 0x09, 0x91, 0x11, 0x91, 0x09, 0x91, 0x11, 0x91, 0x09, 0x91, 0x11, 0xB1, 0x09, 0x91, 0x01, 0x11, 0x91, 0x84, 0x11, 0xB1, 0x09, 0x91, 0x11, 0xB1, 0x09, 0x91, 0x11, 0xB1, 0x01, 0x11, 0x91, 0x87, 0x09, 0x91, 0x11, 0x91, 0x09, 0x71, 0x09, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0xB2, 0x01, 0x11, 0x91, 0x80, 0x09, 0x71, 0x02, 0x11, 0x71, 0x89, 0x09, 0x51, 0x11, 0x92, 0x11, 0x71, 0x09, 0x51, 0x09, 0x50, 0x11, 0x71, 0x11, 0x91, 0x11, 0xB2, 0x09, 0xB1, 0x11, 0xD2, 0x01, 0x11, 0xF2, 0x8A, 0x1A, 0x74, 0x2A, 0xF6, 0x22, 0xB6, 0x1A, 0x54, 0x12, 0x13, 0x11, 0xF3, 0x11, 0xD3, 0x19, 0xF3, 0x11, 0xD3, 0x11, 0xB2, 0x11, 0x91, 0x01, 0x11, 0xB2, 0x82, 0x11, 0xD2, 0x09, 0x91, 0x11, 0xB1, 0x01, 0x11, 0x91, 0x84, 0x09, 0x71, 0x11, 0x92, 0x09, 0x71, 0x09, 0x91, 0x09, 0x71, 0x02, 0x11, 0x91, 0x81, 0x09, 0x71, 0x11, 0x91, 0x02, 0x09, 0x71, 0x94, 0x09, 0x50, 0x09, 0x71, 0x11, 0x91, 0x11, 0xB2, 0x11, 0xB1, 0x11, 0x91, 0x11, 0x71, 0x19, 0x71, 0x19, 0x51, 0x31, 0x72, 0x41, 0x72, 0x38, 0xAF, 0x92, 0xD7, 0x92, 0x34, 0x9A, 0x34, 0xA2, 0x14, 0xA1, 0xF3, 0xA1, 0xD3, 0xA9, 0xF4, 0xA9, 0xD3, 0xB1, 0xF4, 0x02, 0xA9, 0xD3, 0x88, 0xA9, 0xF4, 0xAA, 0x14, 0xA2, 0x35, 0x92, 0x34, 0x92, 0x96, 0x40, 0xCF, 0x39, 0x92, 0x21, 0x71, 0x11, 0x10, 0x01, 0x01, 0x0F, 0x01, 0x09, 0x30, 0x82, 0x09, 0x50, 0x09, 0x71, 0x09, 0x50, 0x01, 0x09, 0x71, + 0x82, 0x09, 0x91, 0x09, 0x71, 0x11, 0x92, 0x01, 0x11, 0xB2, 0x80, 0x11, 0xD2, 0x02, 0x1A, 0x33, 0x85, 0x1A, 0x54, 0x2A, 0xD6, 0x33, 0x38, 0x12, 0x54, 0x12, 0x13, 0x09, 0xB2, 0x03, 0x11, 0xD3, 0x03, 0x11, 0xB2, 0x83, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x02, 0x11, 0x91, 0x8A, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB1, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB1, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x02, 0x09, 0x71, 0x01, 0x09, 0x91, 0x88, 0x11, 0x91, 0x09, 0x71, 0x11, 0x92, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xD2, 0x09, 0x91, 0x11, 0xD2, 0x02, 0x11, 0xB1, 0x85, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x09, 0x91, 0x11, 0x92, 0x09, 0x71, 0x01, 0x11, 0x91, 0x80, 0x11, 0xB2, 0x01, 0x11, 0x92, 0x87, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x02, 0x11, 0x92, 0x85, 0x11, 0xD2, 0x11, 0x92, 0x11, 0xB2, 0x09, 0x92, 0x11, 0xB2, 0x11, 0xD2, 0x01, 0x1A, 0x13, 0x87, 0x12, 0x13, 0x09, 0xB2, 0x09, 0xD2, 0x12, 0x33, 0x2A, 0xF6, 0x3B, 0x78, 0x12, 0x54, 0x12, 0x14, 0x01, 0x09, 0xD3, 0x84, 0x09, 0xD2, 0x09, 0xB2, 0x11, 0xD3, 0x11, 0xB2, 0x11, 0xD2, 0x01, 0x11, 0xB2, 0x86, 0x09, 0x91, 0x11, 0xB2, 0x09, 0x91, 0x11, 0xB1, 0x09, 0x91, 0x11, 0xB2, 0x09, 0x91, 0x02, 0x11, 0xB2, 0x81, 0x11, 0x92, 0x19, 0xD2, 0x02, 0x11, 0xB2, 0x80, 0x19, 0xD2, 0x03, 0x11, 0xB2, 0x81, 0x11, 0x91, 0x11, 0xB2, 0x01, 0x11, 0x91, 0x87, 0x09, 0x71, 0x11, 0x71, 0x09, 0x51, 0x11, 0x91, 0x09, + 0x71, 0x11, 0x91, 0x09, 0x71, 0x09, 0x91, 0x02, 0x09, 0x71, 0x01, 0x09, 0x91, 0x82, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x01, 0x11, 0x91, 0x80, 0x09, 0x71, 0x01, 0x11, 0x91, 0x83, 0x19, 0xD2, 0x11, 0xB2, 0x11, 0xD2, 0x11, 0xB1, 0x01, 0x11, 0xB2, 0x80, 0x19, 0xD2, 0x01, 0x11, 0xB2, 0x80, 0x11, 0x91, 0x01, 0x11, 0xB2, 0x80, 0x11, 0xF2, 0x01, 0x11, 0xB2, 0x80, 0x09, 0x91, 0x01, 0x09, 0xB1, 0x8C, 0x09, 0xB2, 0x09, 0x91, 0x09, 0xD2, 0x09, 0xB1, 0x09, 0xD2, 0x12, 0x13, 0x1A, 0x54, 0x32, 0xF7, 0x33, 0x17, 0x2A, 0xD6, 0x22, 0x75, 0x1A, 0x55, 0x1A, 0x14, 0x02, 0x11, 0xD3, 0x8A, 0x19, 0xD3, 0x11, 0xD2, 0x19, 0xF3, 0x11, 0xB2, 0x19, 0xD2, 0x11, 0xB2, 0x19, 0xD2, 0x11, 0x91, 0x11, 0xB2, 0x11, 0x91, 0x11, 0xB2, 0x02, 0x11, 0x91, 0x83, 0x11, 0xB1, 0x11, 0x91, 0x11, 0xB1, 0x11, 0x71, 0x01, 0x11, 0x91, 0x83, 0x11, 0xD2, 0x11, 0x91, 0x11, 0xD2, 0x11, 0x91, 0x01, 0x11, 0xB2, 0x82, 0x11, 0xD2, 0x11, 0xB2, 0x11, 0xD2, 0x01, 0x11, 0xB2, 0x01, 0x09, 0x91, 0x8A, 0x11, 0x91, 0x11, 0xB2, 0x09, 0x91, 0x11, 0xB1, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x09, 0x71, 0x11, 0x91, 0x11, 0x71, 0x01, 0x11, 0x91, 0x01, 0x11, 0xB2, 0x83, 0x19, 0xF2, 0x11, 0x91, 0x11, 0xB2, 0x11, 0xB1, 0x01, 0x11, 0xB2, 0x85, 0x19, 0xD2, 0x11, 0xB2, 0x19, 0xD2, 0x11, 0x92, 0x11, 0xB2, 0x11, 0x91, 0x01, 0x11, 0xD2, 0x84, 0x09, 0xB2, 0x01, 0x71, 0x11, 0xB2, 0x09, 0xB1, 0x11, 0xD2, 0x02, 0x09, 0x91, 0x8B, 0x09, 0xB1, 0x11, 0xF2, 0x12, 0x13, 0x1A, 0x74, 0x22, 0xB6, + 0x2B, 0x17, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x05, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x03, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x86, 0x00, 0xEF, 0x01, 0x71, 0x1A, 0x34, 0x22, 0x75, 0x1A, 0x13, 0x01, 0x0F, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x07, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x04, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x82, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x02, 0x00, 0x6D, 0x85, 0x00, 0x6E, 0x00, 0x6D, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x8D, 0x0A, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x03, 0x00, 0x8E, 0x03, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x03, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x83, 0x01, 0x2F, 0x12, 0x13, 0x22, 0x95, 0x01, 0x2F, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x80, 0x00, 0x6E, 0x01, 0x00, 0x4D, 0x02, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x01, 0x00, 0x6E, 0x81, 0x00, 0x8E, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x08, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x82, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x06, 0x00, 0x6D, 0x05, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x01, 0x00, + 0xAE, 0x02, 0x00, 0xCF, 0x84, 0x01, 0x70, 0x2A, 0xD6, 0x11, 0xF3, 0x00, 0xEF, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x01, 0x00, 0x6E, 0x01, 0x00, 0x8E, 0x05, 0x00, 0x6E, 0x80, 0x00, 0x8E, 0x03, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x03, 0x00, 0x6E, 0x80, 0x00, 0x8E, 0x02, 0x00, 0x6D, 0x01, 0x00, 0x6E, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x6E, 0x0A, 0x00, 0x8E, 0x01, 0x00, 0x6E, 0x83, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x84, 0x01, 0x0F, 0x11, 0xF3, 0x32, 0xF6, 0x11, 0xD2, 0x00, 0xEF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x10, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x83, 0x00, 0x6D, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x03, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x01, 0x00, 0x6E, 0x03, 0x00, 0x8E, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x84, 0x22, 0x34, 0x11, 0xF3, 0x01, 0x10, 0x00, 0xCF, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x6E, 0x12, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x15, 0x00, 0x8E, + 0x01, 0x00, 0x6E, 0x81, 0x00, 0x8E, 0x00, 0x6E, 0x03, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x0E, 0x00, 0x8E, 0x84, 0x00, 0xCF, 0x11, 0xD3, 0x19, 0xF3, 0x01, 0x0F, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x1C, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x09, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x06, 0x00, 0x8E, 0x83, 0x1A, 0x34, 0x22, 0x55, 0x00, 0xAE, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x11, 0x00, 0x8E, 0x86, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x0B, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x85, 0x00, 0xCF, 0x00, 0xEF, 0x2A, 0x96, 0x01, 0x51, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x08, 0x00, 0x8E, 0x01, 0x00, 0x6E, 0x81, 0x00, 0x8E, 0x00, 0x6E, 0x1E, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0x6E, 0x07, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x88, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x09, 0xB2, 0x2A, + 0xB6, 0x01, 0x30, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x0C, 0x00, 0x8E, 0x82, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x89, 0x00, 0x4D, 0x00, 0x6E, 0x08, 0x4D, 0x10, 0x2D, 0x20, 0x0C, 0x82, 0x96, 0x92, 0x75, 0x9A, 0x34, 0x9A, 0x13, 0xB2, 0x55, 0x01, 0xA9, 0xF3, 0x82, 0xA9, 0xD3, 0xB1, 0xD4, 0xB1, 0xF4, 0x01, 0xA9, 0xB3, 0x87, 0xA9, 0xD4, 0xA9, 0xF4, 0xA2, 0x35, 0x9A, 0x75, 0x82, 0x55, 0x28, 0x0C, 0x10, 0x4D, 0x08, 0x6E, 0x0F, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x8E, 0x00, 0xCF, 0x01, 0x1A, 0x14, 0x85, 0x01, 0x51, 0x01, 0x10, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x16, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x0B, 0x00, 0x8E, 0x82, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x81, 0x00, 0x6E, 0x00, 0x6D, 0x01, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x88, 0x00, 0xEF, 0x09, 0xD2, 0x22, 0x96, 0x1A, 0x34, 0x01, 0x71, 0x01, 0x10, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x08, 0x00, 0x8E, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x6D, 0x06, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x08, 0x00, 0x8E, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x6D, 0x01, 0x00, + 0x8E, 0x81, 0x00, 0x6D, 0x00, 0x8E, 0x03, 0x00, 0x8D, 0x03, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x03, 0x00, 0x6D, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x89, 0x00, 0xCF, 0x01, 0x30, 0x22, 0x54, 0x2A, 0xD6, 0x09, 0xB2, 0x01, 0x10, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xAE, 0x06, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0x8D, 0x04, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x15, 0x00, 0x8E, 0x04, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x03, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x86, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x0F, 0x01, 0x30, 0x01, 0x50, 0x00, 0x8D, 0x00, 0x6D, 0x04, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x03, 0x00, 0x8E, 0x80, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x88, 0x00, 0xCE, 0x09, 0x30, 0x21, 0xF3, 0x3A, 0xD7, 0x2A, 0xB6, 0x11, 0xD2, 0x01, 0x2F, 0x00, 0xEF, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x04, 0x00, 0x8E, 0x8B, 0x00, 0x6D, 0x00, 0x8E, 0x00, 0x6D, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x01, 0x00, 0x6E, 0x01, 0x00, 0x8E, 0x84, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x04, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x05, 0x00, 0x8E, 0x03, 0x00, 0x6E, 0x81, 0x00, 0x8E, 0x00, 0x6D, 0x02, + 0x00, 0x8E, 0x82, 0x00, 0x6D, 0x00, 0x8E, 0x00, 0x6D, 0x02, 0x00, 0x8E, 0x82, 0x00, 0x6D, 0x00, 0x6E, 0x00, 0x6D, 0x03, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x8B, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xEF, 0x19, 0xD2, 0x3A, 0xD6, 0x3A, 0xF7, 0x11, 0xD2, 0x01, 0x30, 0x00, 0xEE, 0x00, 0xCF, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x6E, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x8E, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x6E, 0x01, 0x00, 0x8E, 0x81, 0x00, 0x6D, 0x00, 0x8E, 0x04, 0x00, 0x6E, 0x81, 0x00, 0x8E, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x04, 0x00, 0x8E, 0x84, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x02, 0x00, 0x6E, 0x82, 0x00, 0x8E, 0x00, 0x6D, 0x00, 0x8E, 0x02, 0x00, 0x6E, 0x06, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x86, 0x00, 0xCF, 0x00, 0xEF, 0x09, 0x30, 0x32, 0x96, 0x3B, 0x38, 0x09, 0xB2, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x83, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x02, 0x00, 0x6E, 0x80, 0x00, 0x8E, 0x02, 0x00, 0x6E, 0x82, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x04, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x04, 0x00, 0x8E, 0x84, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x81, 0x00, 0x6E, 0x00, 0x8E, 0x02, 0x00, 0x6E, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x6E, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x04, 0x00, 0x8E, 0x80, 0x00, + 0x6E, 0x02, 0x00, 0x8E, 0x82, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x01, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x89, 0x00, 0xAE, 0x00, 0xEF, 0x32, 0x96, 0x32, 0xB6, 0x09, 0x71, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x84, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x04, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x03, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x07, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x86, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x0C, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x82, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x03, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x86, 0x00, 0xAF, 0x00, 0xCF, 0x11, 0x92, 0x3A, 0xF7, 0x01, 0x30, 0x01, 0x10, 0x00, 0xEF, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x07, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x18, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x03, 0x00, 0x8E, 0x03, 0x00, 0x6E, 0x03, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x84, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x08, 0x00, 0x8E, 0x83, 0x01, 0x31, 0x2A, 0x76, 0x09, 0x71, 0x00, 0xEF, 0x01, 0x00, 0xAF, 0x02, 0x00, 0x8F, 0x0D, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x07, 0x00, 0x8E, 0x80, 0x00, 0x8F, 0x02, 0x00, 0x8E, 0x82, + 0x00, 0x8F, 0x00, 0x8E, 0x00, 0x8F, 0x04, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAF, 0x00, 0x8F, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8F, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x84, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x83, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0x8F, 0x00, 0x6E, 0x03, 0x00, 0x8E, 0x83, 0x11, 0xF3, 0x1A, 0x14, 0x00, 0x8E, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8F, 0x03, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x11, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, 0x8F, 0x00, 0x8E, 0x00, 0x8F, 0x0A, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x06, 0x00, 0x8E, 0x82, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x10, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xCF, 0x83, 0x11, 0xF3, 0x19, 0xF4, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0x6E, 0x06, 0x00, 0x8E, 0x83, 0x00, 0x6E, 0x00, 0x8F, 0x00, 0x8E, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x02, 0x00, 0x6E, 0x17, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x15, 0x00, 0x8E, 0x82, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6D, 0x03, 0x00, 0x8E, 0x84, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xEF, 0x2A, 0x95, 0x32, 0xB6, 0x01, 0x00, 0xEF, 0x85, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0x8F, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x03, 0x00, 0x8E, 0x02, 0x00, 0x6E, 0x81, 0x00, 0x8E, 0x00, 0x6E, 0x08, 0x00, 0x8E, 0x80, + 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x81, 0x00, 0x8F, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x87, 0x08, 0x8E, 0x08, 0x6E, 0x18, 0x6E, 0x18, 0x0C, 0x69, 0xF4, 0x92, 0x96, 0x9A, 0x55, 0xA2, 0x34, 0x01, 0xAA, 0x14, 0x83, 0xA9, 0xD3, 0xA9, 0xF4, 0xB1, 0xF4, 0xB1, 0xD4, 0x01, 0xA9, 0xB3, 0x88, 0xA9, 0xD4, 0xA9, 0xF4, 0xA2, 0x35, 0xA2, 0xB7, 0x69, 0xB3, 0x28, 0x2D, 0x18, 0x4D, 0x08, 0x6E, 0x00, 0x6E, 0x0B, 0x00, 0x8E, 0x82, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x8B, 0x00, 0xCF, 0x22, 0x34, 0x32, 0xD7, 0x09, 0x71, 0x01, 0x10, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8F, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x1C, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x0F, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x81, 0x00, 0x6E, 0x00, 0x8E, 0x02, 0x00, 0x6E, 0x86, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x86, 0x00, 0xEF, 0x01, 0x30, 0x1A, 0x34, 0x3B, 0x18, 0x19, 0xF3, 0x01, 0x10, 0x00, 0xEF, 0x02, 0x00, 0xAE, 0x85, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x07, 0x00, 0x8E, 0x84, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x07, 0x00, 0x8E, 0x01, 0x00, 0x6E, 0x81, 0x00, 0x8E, 0x00, 0x6E, 0x08, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x0A, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x88, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6D, 0x00, 0x8E, 0x00, + 0x6D, 0x00, 0x8E, 0x00, 0x6D, 0x03, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x86, 0x00, 0xCF, 0x01, 0x30, 0x1A, 0x13, 0x3B, 0x17, 0x1A, 0x34, 0x01, 0x30, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x83, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x07, 0x00, 0x8E, 0x82, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x16, 0x00, 0x8E, 0x82, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0x6E, 0x0A, 0x00, 0x8E, 0x81, 0x00, 0x6E, 0x00, 0x6D, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x6D, 0x04, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x03, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x81, 0x00, 0xCF, 0x00, 0xEF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0x6E, 0x83, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x03, 0x00, 0x8E, 0x8C, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x0F, 0x11, 0x91, 0x22, 0x13, 0x2A, 0x95, 0x2A, 0x55, 0x11, 0x92, 0x00, 0xEF, 0x00, 0xCE, 0x00, 0xEF, 0x00, 0xCE, 0x00, 0xEF, 0x07, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x84, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x14, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x07, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x07, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x86, 0x00, 0xCE, 0x01, 0x10, 0x11, 0xB2, 0x2A, 0x75, 0x32, 0xB6, 0x19, 0xF3, 0x01, 0x0F, 0x02, 0x00, 0xEF, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, + 0xAE, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x85, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x11, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x07, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x07, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x89, 0x00, 0xCE, 0x00, 0xEF, 0x01, 0x0F, 0x19, 0xD3, 0x32, 0xD7, 0x2A, 0x55, 0x01, 0x10, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x80, 0x00, 0x8F, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x8F, 0x0B, 0x00, 0x8E, 0x81, 0x00, 0x8F, 0x00, 0x8E, 0x04, 0x00, 0x8F, 0x04, 0x00, 0x8E, 0x01, 0x00, 0x8F, 0x04, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x8F, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x06, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x85, 0x00, 0xAE, 0x00, 0xCF, 0x01, 0x10, 0x2A, 0x55, 0x22, 0x55, 0x01, 0x30, 0x01, 0x00, 0xEF, 0x82, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x06, 0x00, 0x8E, 0x80, 0x00, 0x8F, 0x04, 0x00, 0x8E, 0x82, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0x8F, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x8F, 0x02, 0x00, 0x8E, 0x84, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0x8F, 0x00, 0x8E, 0x00, 0x8F, 0x08, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x05, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x04, 0x00, 0x8E, 0x80, 0x00, + 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x82, 0x01, 0x30, 0x3A, 0xF7, 0x19, 0xF3, 0x01, 0x00, 0xEF, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8F, 0x80, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x04, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x82, 0x00, 0x8F, 0x00, 0x8E, 0x00, 0xAF, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x04, 0x00, 0x8F, 0x02, 0x00, 0x8E, 0x01, 0x00, 0x8F, 0x80, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x04, 0x00, 0x8E, 0x84, 0x00, 0xAF, 0x19, 0xD3, 0x22, 0x55, 0x01, 0x31, 0x00, 0xEF, 0x01, 0x00, 0xAF, 0x82, 0x00, 0x8E, 0x00, 0x8F, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x83, 0x00, 0xAF, 0x00, 0x8F, 0x00, 0x8E, 0x00, 0x8F, 0x02, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAF, 0x00, 0x8F, 0x00, 0x8E, 0x07, 0x00, 0x8F, 0x80, 0x00, 0xAF, 0x05, 0x00, 0x8F, 0x84, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x01, 0x00, 0x8F, 0x81, 0x00, 0xAF, 0x00, 0x8F, 0x02, 0x00, 0xAF, 0x81, 0x00, 0x8F, 0x00, 0xAF, 0x04, 0x00, 0x8F, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x80, 0x00, 0x8F, 0x03, 0x00, 0x8E, 0x84, 0x19, + 0xF3, 0x1A, 0x14, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x06, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0x8F, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x82, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x87, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8F, 0x01, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x81, 0x00, 0x8F, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAF, 0x81, 0x00, 0x8E, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x09, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x86, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xEF, 0x09, 0x72, 0x32, 0xB7, 0x00, 0xF0, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x03, 0x00, 0x8F, 0x81, 0x00, 0x6F, 0x00, 0x8F, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAF, 0x00, 0x8F, 0x0B, 0x00, 0x8E, 0x82, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x0A, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x03, 0x00, 0x8E, 0x82, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x04, 0x00, 0x8E, 0x87, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0x8F, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x83, 0x00, 0xCE, 0x00, 0xEF, 0x32, 0xB6, 0x11, 0xD3, 0x02, 0x00, 0xEF, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8F, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x03, + 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x06, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x83, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0x8F, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x98, 0x00, 0x8E, 0x08, 0x8E, 0x10, 0x8E, 0x10, 0x6E, 0x20, 0x4D, 0x51, 0x51, 0x92, 0x96, 0x92, 0x34, 0xA2, 0x14, 0xA1, 0xF3, 0xA1, 0xD3, 0xB2, 0x14, 0xA9, 0xD4, 0xB1, 0xD4, 0xB1, 0xF4, 0xA9, 0xD4, 0xA9, 0xB3, 0xB2, 0x14, 0xAA, 0x35, 0x9A, 0x14, 0x9A, 0xB6, 0x48, 0xCF, 0x20, 0x0C, 0x18, 0x6E, 0x08, 0x6E, 0x0F, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x87, 0x00, 0xAE, 0x00, 0xCF, 0x01, 0x0F, 0x22, 0x54, 0x3B, 0x17, 0x09, 0x91, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x0E, 0x00, 0x8E, 0x80, 0x00, 0x8F, 0x06, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x80, 0x00, 0x8F, 0x0A, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xEF, 0x85, 0x01, 0x51, 0x32, 0xB6, 0x22, 0x55, 0x01, 0x51, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x0B, 0x00, 0x8E, 0x02, 0x00, 0x6E, 0x09, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, + 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xEF, 0x87, 0x01, 0x30, 0x2A, 0x75, 0x32, 0xD6, 0x11, 0xB2, 0x01, 0x30, 0x01, 0x10, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x84, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x06, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x07, 0x00, 0x8E, 0x80, 0x00, 0x6E, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8F, 0x0B, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x08, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x82, 0x00, 0xCF, 0x00, 0xEF, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x83, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x88, 0x00, 0xCE, 0x09, 0x30, 0x22, 0x13, 0x3A, 0xD6, 0x32, 0xD6, 0x22, 0x34, 0x09, 0x71, 0x00, 0xEF, 0x00, 0xCF, 0x03, 0x00, 0xCE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x83, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, + 0x8E, 0x00, 0x6E, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xEF, 0x19, 0xB2, 0x01, 0x32, 0xB6, 0x81, 0x19, 0xD2, 0x01, 0x0F, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x83, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x06, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x03, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x84, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x8A, 0x00, 0xCE, 0x01, 0x0F, 0x09, 0x71, 0x32, 0x96, 0x32, 0xD6, 0x11, 0xB2, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x07, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x02, 0x00, 0x8F, 0x86, 0x00, 0x8E, 0x00, 0x8F, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8F, 0x80, 0x00, 0xAF, 0x01, 0x00, 0x8F, 0x84, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x02, 0x00, 0x8F, 0x83, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8F, + 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x84, 0x00, 0xEF, 0x09, 0x50, 0x2A, 0x75, 0x22, 0x14, 0x01, 0x10, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x87, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0x8F, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x86, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xAF, 0x00, 0x8F, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x81, 0x00, 0x8E, 0x00, 0xAF, 0x03, 0x00, 0x8E, 0x83, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x84, 0x00, 0xCF, 0x00, 0xEF, 0x22, 0x34, 0x2A, 0x75, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x84, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x03, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x81, + 0x00, 0xAE, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x86, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x03, 0x00, 0x8E, 0x03, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x87, 0x00, 0xAE, 0x00, 0xF0, 0x22, 0x34, 0x19, 0xF3, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAF, 0x82, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x82, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8F, 0x81, 0x00, 0xAF, 0x00, 0x8F, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8F, 0x81, 0x00, 0xAF, 0x00, 0x8F, 0x04, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x84, 0x00, 0x8F, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8F, 0x0A, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x05, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x83, 0x00, 0xAE, 0x00, 0x8E, 0x19, 0xD3, 0x1A, 0x13, 0x01, 0x00, 0xAF, 0x04, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8F, 0x01, 0x00, 0xAF, 0x85, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x04, 0x00, 0xAF, 0x85, 0x00, 0xAE, + 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x03, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x04, 0x00, 0xAF, 0x84, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x82, 0x00, 0x8F, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x87, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xEF, 0x01, 0x10, 0x32, 0x96, 0x22, 0x14, 0x00, 0xCF, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x04, 0x00, 0x8F, 0x80, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0xAF, 0x04, 0x00, 0x8E, 0x83, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x81, 0x00, 0x8E, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x85, 0x01, 0x50, 0x43, 0x38, 0x09, 0x91, 0x00, 0xF0, 0x00, 0xEF, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x83, 0x00, 0x8F, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, + 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x83, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xCE, 0x01, 0x00, 0x8E, 0x87, 0x08, 0x6E, 0x10, 0x6E, 0x18, 0x4D, 0x30, 0x6E, 0x8A, 0x96, 0x9A, 0x55, 0xA2, 0x14, 0xA1, 0xF3, 0x02, 0xA9, 0xF4, 0x80, 0xA9, 0xB3, 0x01, 0xB1, 0xD4, 0x88, 0xB1, 0xF4, 0xA9, 0xF4, 0xA2, 0x14, 0x9A, 0x34, 0x92, 0x75, 0x28, 0x0C, 0x18, 0x2C, 0x10, 0x4D, 0x00, 0x6D, 0x09, 0x00, 0x8E, 0x85, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x8A, 0x00, 0xCF, 0x00, 0xEF, 0x11, 0xB2, 0x3B, 0x17, 0x19, 0xF3, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0xCF, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x83, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8F, 0x85, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x8F, 0x02, 0x00, 0x8E, 0x82, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x85, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x04, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x86, 0x00, 0xEF, 0x01, 0x30, 0x19, 0xF3, 0x32, 0xD6, 0x1A, 0x13, 0x00, 0xEF, 0x00, 0xCE, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAE, + 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x85, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x08, 0x00, 0x8E, 0x83, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x83, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x07, 0x00, 0xAE, 0x8C, 0x00, 0xCE, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0xEF, 0x11, 0x91, 0x2A, 0x75, 0x3A, 0xD7, 0x1A, 0x13, 0x09, 0x51, 0x01, 0x10, 0x00, 0xF0, 0x00, 0xCF, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xCF, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x09, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x04, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0xCE, 0x87, 0x00, 0xEF, 0x09, 0x91, 0x1A, + 0x13, 0x2A, 0x95, 0x32, 0xB6, 0x22, 0x13, 0x09, 0x71, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xCF, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x01, 0x00, 0xCF, 0x85, 0x00, 0xEF, 0x11, 0xB1, 0x2A, 0x54, 0x32, 0xB6, 0x22, 0x13, 0x01, 0x30, 0x01, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0xCF, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0xCF, 0x88, 0x01, 0x10, 0x19, 0xD2, 0x32, 0xB6, 0x32, 0x95, 0x09, 0x51, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xCF, + 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x04, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x84, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x83, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xCF, 0x80, 0x08, 0xEF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x88, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xEF, 0x09, 0x71, 0x2A, 0x75, 0x2A, 0x54, 0x09, 0x51, 0x01, 0x10, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x07, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x82, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x87, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x83, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x8C, 0x00, 0x8E, 0x00, 0xAE, 0x00, + 0xAF, 0x00, 0xCF, 0x00, 0xEF, 0x19, 0xF3, 0x32, 0xB6, 0x09, 0x50, 0x00, 0xEF, 0x00, 0xAF, 0x00, 0xCE, 0x00, 0xCF, 0x00, 0xAE, 0x03, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x83, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x83, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x84, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x03, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x82, 0x00, 0x8F, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x07, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x03, 0x00, 0x8E, 0x87, 0x00, 0xAF, 0x19, 0xB2, 0x2A, 0x75, 0x09, 0x92, 0x00, 0xEF, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x81, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x83, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x84, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xCF, 0x03, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x81, 0x00, 0xCF, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x83, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x82, 0x00, 0xAE, 0x00, 0xCF, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x05, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xAE, + 0x01, 0x00, 0xCF, 0x83, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x02, 0x00, 0xCF, 0x82, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x19, 0xF3, 0x1A, 0x13, 0x03, 0x00, 0xAF, 0x89, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xAE, 0x03, 0x00, 0xAF, 0x82, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x05, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x82, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xCF, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x85, 0x00, 0xF0, 0x1A, 0x14, 0x3A, 0xD7, 0x00, 0xEF, 0x00, 0xAE, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x06, 0x00, 0xAF, 0x81, 0x00, 0x8F, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x81, 0x00, 0xAE, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, + 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCF, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x82, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x82, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x84, 0x00, 0xCE, 0x00, 0xCF, 0x22, 0x13, 0x43, 0x38, 0x01, 0x30, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0C, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x05, 0x00, 0xAE, 0x88, 0x08, 0xAE, 0x08, 0x8E, 0x08, 0x6D, 0x18, 0x4D, 0x28, 0x2C, 0x7A, 0x34, 0x9A, 0x75, 0xA2, 0x34, 0xAA, 0x14, 0x02, 0xA9, 0xF4, 0x8D, 0xA9, 0xD4, 0xB1, 0xF4, 0xA9, 0xB3, 0xA9, 0xD3, 0xAA, 0x14, 0xA2, 0x35, 0x92, 0x34, 0x82, 0x55, 0x20, 0x0B, 0x18, 0x2D, 0x10, 0x6D, 0x08, 0x8E, 0x08, 0xAE, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x88, 0x00, 0xCE, 0x00, 0xCF, 0x01, 0x30, 0x3B, 0x17, 0x22, 0x75, 0x01, 0x10, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xEF, 0x02, 0x00, 0xAE, 0x82, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0xCF, 0x06, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x02, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x81, 0x00, 0xAE, + 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xCE, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x82, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xEF, 0x84, 0x01, 0x30, 0x2A, 0x75, 0x32, 0xB6, 0x09, 0x71, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCF, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x83, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x88, 0x00, 0xCE, 0x11, 0x91, 0x32, 0xD6, 0x32, 0xB5, 0x19, 0xF3, 0x01, 0x30, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xCF, 0x0A, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, + 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x07, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x8A, 0x00, 0xCE, 0x00, 0xEF, 0x09, 0x30, 0x11, 0xB1, 0x2A, 0x74, 0x3B, 0x17, 0x2A, 0x95, 0x11, 0xB1, 0x01, 0x30, 0x00, 0xEF, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x06, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x86, 0x00, 0xEF, 0x11, 0x91, 0x32, 0xB6, 0x3B, 0x17, 0x22, 0x34, 0x09, 0x50, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, + 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xCF, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x00, 0xCF, 0x86, 0x09, 0x71, 0x32, 0x96, 0x32, 0xB6, 0x11, 0xD2, 0x00, 0xEF, 0x00, 0xCE, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x85, 0x00, 0xCF, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xCF, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x85, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCF, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x86, 0x00, 0xCE, 0x00, 0xEF, 0x11, 0xB2, 0x2A, 0x95, 0x2A, 0x75, 0x01, 0x30, 0x00, 0xEF, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x03, 0x00, + 0xAF, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xCF, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x88, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x83, 0x11, 0x91, 0x2A, 0x55, 0x19, 0xF3, 0x00, 0xEF, 0x03, 0x00, 0xAE, 0x84, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x84, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x05, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x0C, 0x00, 0xAE, 0x84, 0x00, 0x8E, 0x00, 0xCF, 0x22, 0x13, 0x2A, 0x75, 0x01, 0x10, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x81, 0x00, 0xCF, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x0B, 0x00, 0xAF, 0x80, 0x00, 0xCF, 0x03, 0x00, 0xAF, 0x81, 0x00, 0xAE, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x81, 0x00, + 0xAF, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x81, 0x00, 0xCF, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xAF, 0x82, 0x00, 0xCF, 0x00, 0xCE, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x03, 0x00, 0xAF, 0x88, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x19, 0xF3, 0x22, 0x34, 0x00, 0xAE, 0x00, 0xCF, 0x00, 0xAF, 0x08, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0xCF, 0x03, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x86, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x82, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x07, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x04, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x81, 0x00, 0xCF, 0x00, 0xAF, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x84, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCF, 0x00, 0xCE, 0x07, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x83, 0x09, 0x71, 0x3A, 0xF7, 0x09, 0x51, 0x00, 0xCF, 0x03, 0x00, 0xAF, 0x81, 0x00, 0xAE, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x06, 0x00, 0xAF, 0x83, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x04, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAF, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAF, + 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x05, 0x00, 0xAE, 0x83, 0x00, 0xCE, 0x00, 0xCF, 0x2A, 0x75, 0x32, 0x96, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x88, 0x00, 0x8E, 0x08, 0x8E, 0x08, 0x6D, 0x18, 0x4D, 0x20, 0x0C, 0x69, 0xB2, 0x9A, 0x95, 0xA2, 0x34, 0xAA, 0x14, 0x01, 0xA9, 0xF4, 0x81, 0xA9, 0xD4, 0xB1, 0xD4, 0x01, 0xA9, 0xD4, 0x88, 0xA9, 0xF4, 0xAA, 0x15, 0xA2, 0x55, 0x9A, 0x75, 0x61, 0x91, 0x20, 0x0C, 0x18, 0x4D, 0x08, 0x6E, 0x08, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x86, 0x00, 0xCF, 0x01, 0x30, 0x32, 0xB6, 0x3A, 0xF7, 0x01, 0x10, 0x00, 0xEF, 0x00, 0xCF, 0x04, 0x00, 0xAE, 0x85, 0x00, 0xAF, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x83, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8E, 0x0F, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x85, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x8B, + 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xCF, 0x00, 0xCE, 0x01, 0x0F, 0x11, 0xD2, 0x43, 0x38, 0x22, 0x54, 0x01, 0x0F, 0x00, 0xCF, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x03, 0x00, 0x8E, 0x85, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x86, 0x00, 0xCE, 0x01, 0x0F, 0x09, 0x91, 0x2A, 0x75, 0x32, 0xB6, 0x22, 0x14, 0x09, 0x30, 0x01, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0A, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0E, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x87, 0x00, 0xCE, 0x00, 0xEF, 0x09, 0x50, 0x19, 0xD2, 0x32, 0x95, 0x3A, 0xF6, 0x2A, 0x54, 0x01, 0x2F, 0x01, 0x00, 0xCE, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x02, + 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x0A, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x86, 0x01, 0x0F, 0x11, 0xB1, 0x22, 0x34, 0x2A, 0x75, 0x2A, 0x54, 0x11, 0x91, 0x00, 0xEF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCF, 0x04, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x86, 0x00, 0xCE, 0x00, 0xEF, 0x01, 0x30, 0x2A, 0x54, 0x3A, 0xD7, 0x2A, 0x75, 0x01, 0x10, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, + 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xCF, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x87, 0x00, 0xCF, 0x01, 0x30, 0x11, 0xD2, 0x2A, 0x95, 0x1A, 0x13, 0x01, 0x10, 0x00, 0xCE, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x82, 0x00, 0xCF, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x82, 0x11, 0x71, 0x2A, 0x54, 0x22, 0x34, 0x01, 0x00, 0xCE, 0x07, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x08, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x0B, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x83, 0x01, 0x0F, 0x32, 0x75, + 0x19, 0xD2, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x02, 0x00, 0xCF, 0x05, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x03, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x07, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x82, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x03, 0x00, 0xCF, 0x83, 0x00, 0xAE, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xCF, 0x05, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x19, 0xF3, 0x22, 0x14, 0x01, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x07, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x0B, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0xAE, 0x03, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x07, 0x00, 0xAE, 0x83, 0x00, 0xCF, 0x00, 0xEF, 0x2A, 0x75, 0x22, 0x54, 0x01, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x03, 0x00, 0x8E, 0x01, 0x00, + 0xAE, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x84, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x83, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x84, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xAF, 0x06, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x83, 0x00, 0xEF, 0x4B, 0x58, 0x2A, 0x75, 0x01, 0x10, 0x02, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAF, 0x0A, 0x00, 0xAE, 0x89, 0x00, 0x8E, 0x08, 0x8E, 0x08, 0x6D, 0x10, 0x4D, 0x18, 0x0C, 0x48, 0xCF, 0x9A, 0x96, 0x9A, 0x14, 0xAA, 0x34, 0xAA, 0x14, 0x01, 0xA9, 0xD4, 0x01, 0xB1, 0xF4, 0x8B, 0xA9, 0xF4, 0xA9, 0xD4, 0xA1, 0xF4, 0x9A, 0x14, 0x9A, 0xB7, 0x51, 0x10, 0x20, 0x4D, 0x18, 0x6E, 0x08, 0x8E, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x85, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8F, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x87, 0x00, 0xCF, 0x00, 0xEF, 0x2A, 0x75, 0x3B, 0x17, 0x01, 0x30, 0x00, 0xCF, 0x00, 0xAF, 0x00, 0xCF, 0x01, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, + 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x85, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x84, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x0A, 0x00, 0xAE, 0x89, 0x00, 0xCE, 0x09, 0x50, 0x3A, 0xF7, 0x43, 0x17, 0x11, 0x92, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0xAF, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x87, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x84, 0x11, 0x91, 0x32, 0xB5, 0x32, 0xB6, 0x1A, 0x13, 0x01, 0x30, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, + 0xCE, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x11, 0x71, 0x01, 0x32, 0x95, 0x85, 0x2A, 0x74, 0x1A, 0x13, 0x09, 0x50, 0x00, 0xEF, 0x00, 0xCE, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x6D, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xCF, 0x00, 0xAF, 0x03, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x84, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x85, 0x09, 0x71, 0x2A, 0x95, 0x32, 0xD6, 0x22, 0x54, 0x11, 0x71, 0x01, 0x0F, 0x01, 0x00, 0xCE, 0x08, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, + 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x86, 0x00, 0xEE, 0x11, 0xB1, 0x3A, 0xF7, 0x43, 0x38, 0x11, 0xB2, 0x00, 0xCF, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x84, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x86, 0x00, 0xEF, 0x01, 0x0F, 0x22, 0x34, 0x32, 0xB6, 0x19, 0xD2, 0x00, 0xEF, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x89, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xEF, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x0A, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xCF, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x83, 0x00, 0xCF, 0x00, 0x8E, 0x00, 0xCE, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, + 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x8A, 0x00, 0xAE, 0x00, 0xCF, 0x01, 0x30, 0x32, 0x75, 0x2A, 0x75, 0x01, 0x0F, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xCF, 0x00, 0xAF, 0x0B, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0xCF, 0x06, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x82, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x09, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x11, 0x91, 0x32, 0x95, 0x09, 0x50, 0x02, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0xCF, 0x07, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x80, 0x00, 0xAE, 0x04, 0x00, 0xAF, 0x0F, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x82, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x01, 0x19, 0xF3, 0x81, 0x00, 0xAE, 0x00, 0xAF, 0x18, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x0A, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x06, 0x00, 0xAE, 0x80, 0x00, 0xCF, + 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x09, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x06, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x84, 0x09, 0xB1, 0x43, 0x38, 0x00, 0xEF, 0x00, 0xAF, 0x00, 0xAE, 0x02, 0x00, 0xAF, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x83, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x0B, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x0E, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAF, 0x81, 0x00, 0x8E, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xAF, 0x00, 0xAE, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x82, 0x09, 0x50, 0x4B, 0x79, 0x19, 0xF3, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x08, 0x8E, 0x86, 0x10, 0x6D, 0x18, 0x2C, 0x30, 0x4D, 0x9A, 0x96, 0xA2, 0x34, 0xAA, 0x14, 0xB2, 0x14, 0x01, 0xA9, 0xD4, 0x01, 0xB1, 0xF4, 0x88, 0xA9, 0xD3, 0xA9, 0xF4, 0xAA, 0x35, 0x9A, 0x35, 0xA2, 0xD7, 0x38, 0x4D, 0x20, 0x4D, 0x10, 0x6D, 0x08, 0x6E, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x84, 0x00, 0xAF, 0x00, 0x8F, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, + 0x00, 0xAE, 0x84, 0x00, 0xCE, 0x00, 0xEF, 0x19, 0xF3, 0x4B, 0x58, 0x09, 0x71, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x15, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x85, 0x00, 0xCE, 0x00, 0xEF, 0x19, 0xD2, 0x43, 0x38, 0x32, 0x96, 0x01, 0x0F, 0x01, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x85, 0x00, 0xEF, 0x11, 0x91, 0x2A, 0x95, 0x3A, 0xF7, 0x22, 0x13, 0x01, 0x0F, 0x01, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, + 0x00, 0x8E, 0x0B, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x0A, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x06, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x86, 0x00, 0xEE, 0x11, 0x91, 0x2A, 0x75, 0x3A, 0xD6, 0x2A, 0x54, 0x19, 0xD2, 0x01, 0x0F, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0x6E, 0x01, 0x00, 0x8E, 0x0B, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xCE, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0A, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0C, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x85, 0x09, 0x70, 0x22, 0x33, 0x2A, 0x75, 0x22, 0x54, 0x11, 0xB1, 0x01, 0x0F, 0x02, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCE, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x11, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0D, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x84, 0x09, 0x50, 0x22, 0x33, 0x32, 0xB5, 0x22, 0x34, 0x01, 0x0F, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xCE, 0x02, 0x00, 0x8E, 0x0A, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, + 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x86, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x85, 0x00, 0xCF, 0x01, 0x0F, 0x22, 0x54, 0x32, 0xB6, 0x19, 0xD2, 0x00, 0xEF, 0x07, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x29, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x87, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x0F, 0x19, 0xF2, 0x32, 0x95, 0x11, 0x91, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x86, 0x00, 0xCE, + 0x1A, 0x13, 0x22, 0x13, 0x00, 0xEF, 0x00, 0xAE, 0x00, 0xCF, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x09, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x85, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0F, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x06, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x03, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x01, 0x1A, 0x13, 0x81, 0x00, 0xCE, 0x00, 0xCF, 0x0C, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0D, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x85, 0x00, 0xCE, 0x00, 0xEF, 0x01, 0x0F, 0x43, 0x38, 0x19, 0xF3, 0x00, 0xCE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAF, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x11, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x0C, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xAE, + 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x82, 0x11, 0xB2, 0x53, 0xBA, 0x09, 0x92, 0x01, 0x00, 0xCF, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x96, 0x00, 0x8E, 0x00, 0x8D, 0x08, 0x8D, 0x10, 0x6D, 0x18, 0x2D, 0x20, 0x0C, 0x79, 0xF3, 0xA2, 0x55, 0xA2, 0x14, 0xA9, 0xF4, 0xA1, 0xB3, 0xA9, 0xD4, 0xA9, 0xF4, 0xB1, 0xF4, 0xA9, 0xF4, 0xA1, 0xF4, 0xA2, 0x14, 0xA2, 0x76, 0x8A, 0x76, 0x28, 0x0C, 0x18, 0x6D, 0x08, 0x6D, 0x00, 0x6D, 0x03, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x82, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x87, 0x00, 0xCE, 0x00, 0xEF, 0x19, 0xD2, 0x4B, 0x78, 0x11, 0x91, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0E, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0A, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x87, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x10, 0x2A, 0x75, 0x3A, 0xF7, 0x09, 0x91, 0x01, 0x0F, 0x01, 0x00, + 0xCF, 0x81, 0x00, 0xCE, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x07, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x0A, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x86, 0x00, 0xCE, 0x00, 0xEF, 0x11, 0xB2, 0x2A, 0x95, 0x32, 0x95, 0x11, 0xD2, 0x01, 0x0F, 0x01, 0x00, 0xCE, 0x80, 0x00, 0xAF, 0x03, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x84, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x0A, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xCE, 0x00, 0xAE, 0x02, 0x00, 0xCE, 0x88, 0x11, 0x91, 0x3A, 0xF7, 0x3A, 0xF6, 0x22, 0x34, 0x09, 0x71, 0x01, 0x0F, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, + 0xAE, 0x01, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x86, 0x00, 0xEF, 0x09, 0x50, 0x22, 0x34, 0x2A, 0x95, 0x2A, 0x54, 0x11, 0xB1, 0x01, 0x0F, 0x01, 0x00, 0xCE, 0x07, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x10, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x86, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x0F, 0x19, 0xD2, 0x01, 0x32, 0xB5, 0x82, 0x19, 0xB2, 0x00, 0xCE, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x13, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x86, 0x00, 0xCE, 0x00, 0xCF, 0x01, 0x0F, 0x2A, 0x95, 0x2A, 0xB5, 0x09, 0x71, 0x00, 0xEF, 0x01, + 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x15, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0B, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0C, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x83, 0x09, 0x30, 0x09, 0x71, 0x32, 0xB5, 0x19, 0xD2, 0x01, 0x00, 0xCE, 0x07, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0C, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0C, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x83, 0x00, 0xCE, 0x01, 0x0F, 0x2A, 0x75, 0x11, 0xB2, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x0D, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x09, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, 0x8D, 0x19, 0xF3, 0x1A, 0x13, 0x02, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, + 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0E, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x20, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x85, 0x00, 0xCE, 0x00, 0xEF, 0x2A, 0x54, 0x3A, 0xF7, 0x00, 0xEF, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x11, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0B, 0x00, 0xAE, 0x84, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAF, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x02, 0x00, 0xAE, 0x84, 0x00, 0xEF, 0x22, 0x14, 0x32, 0xD7, 0x01, 0x30, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x0B, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x89, 0x08, 0x8D, 0x10, 0x6D, 0x18, 0x4D, 0x18, 0x0B, 0x61, 0x30, 0x9A, 0x55, 0xA2, 0x34, 0xA1, 0xF4, 0xA1, 0xD4, 0xA9, 0xD4, 0x01, 0xB2, 0x15, 0x8B, 0xA9, 0xF4, 0xA2, 0x14, 0xA2, 0x35, 0xA2, 0xD7, 0x59, 0x31, 0x20, 0x0C, 0x10, 0x4D, 0x08, 0x6D, 0x00, 0x6E, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x03, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x8B, 0x00, 0xCE, 0x01, 0x0F, + 0x09, 0x91, 0x43, 0x58, 0x19, 0xF2, 0x00, 0xEE, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x12, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0F, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x81, 0x00, 0xCF, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x86, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xEF, 0x09, 0x91, 0x32, 0xD6, 0x22, 0x54, 0x01, 0x2F, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xCE, 0x0A, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x08, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x19, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x8A, 0x01, 0x0F, 0x11, 0xB2, 0x32, 0xB5, 0x32, 0xB6, 0x11, 0xB1, 0x01, 0x0F, 0x00, 0xCF, 0x00, 0xEF, 0x00, 0xAF, 0x00, 0x8E, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x84, 0x00, 0x8E, 0x00, 0xAD, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8D, 0x0F, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, + 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x89, 0x00, 0xEE, 0x01, 0x2F, 0x11, 0xD2, 0x3A, 0xF6, 0x3B, 0x17, 0x19, 0xF2, 0x01, 0x2F, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0x6D, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x07, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x82, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x88, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x11, 0x91, 0x22, 0x13, 0x2A, 0x95, 0x2A, 0x54, 0x11, 0x91, 0x01, 0x0F, 0x08, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0B, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0D, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x85, 0x01, 0x0F, 0x09, 0x70, 0x22, 0x33, 0x2A, 0x74, 0x22, 0x13, 0x09, 0x30, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0D, 0x00, + 0xAE, 0x02, 0x00, 0x8E, 0x0A, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0C, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x83, 0x01, 0x30, 0x3A, 0xD6, 0x2A, 0x75, 0x01, 0x0F, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xCF, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0xCF, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x0C, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x15, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x0A, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x86, 0x00, 0xCE, 0x11, 0x70, 0x09, 0x50, 0x2A, 0x75, 0x22, 0x13, 0x00, 0xEF, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0D, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x06, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x84, 0x00, 0xAE, 0x00, 0xEF, 0x22, 0x13, 0x2A, 0x74, 0x01, 0x30, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, + 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x07, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0B, 0x00, 0xAE, 0x01, 0x00, 0xAF, 0x15, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0E, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCF, 0x03, 0x00, 0x8E, 0x82, 0x00, 0x8D, 0x22, 0x13, 0x1A, 0x33, 0x02, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x19, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x0D, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0C, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x02, 0x00, 0xCE, 0x82, 0x01, 0x0F, 0x3B, 0x17, 0x09, 0x50, 0x03, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x08, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x83, 0x19, 0xF3, 0x32, 0xB6, 0x01, 0x0F, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x01, 0x08, + 0x8D, 0x92, 0x10, 0x4D, 0x18, 0x0C, 0x48, 0xAE, 0x9A, 0x75, 0x9A, 0x14, 0xA2, 0x14, 0xAA, 0x14, 0xA9, 0xF4, 0xAA, 0x14, 0xA9, 0xF4, 0xAA, 0x14, 0xAA, 0x35, 0xA2, 0x55, 0xA2, 0xF7, 0x38, 0x2D, 0x20, 0x2D, 0x10, 0x2D, 0x08, 0x4D, 0x00, 0x6E, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x86, 0x00, 0xCE, 0x00, 0xEF, 0x09, 0x71, 0x43, 0x38, 0x22, 0x13, 0x00, 0xEF, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0F, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x03, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x83, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x83, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x86, 0x00, 0xCE, 0x00, 0xEF, 0x32, 0x95, 0x43, 0x38, 0x19, 0xF3, 0x01, 0x0F, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x84, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x11, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x07, + 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x88, 0x00, 0xCE, 0x00, 0xEE, 0x19, 0xF2, 0x3A, 0xF6, 0x32, 0xD6, 0x1A, 0x13, 0x01, 0x0F, 0x00, 0xEF, 0x00, 0xAF, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x82, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0xAD, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x14, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x81, 0x01, 0x2F, 0x19, 0xD2, 0x01, 0x32, 0xD6, 0x82, 0x11, 0xD2, 0x01, 0x30, 0x00, 0xCE, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x05, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x0A, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x08, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x85, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x88, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x11, 0x71, 0x2A, 0x75, 0x32, 0xB5, 0x2A, 0x75, 0x19, 0xD2, 0x00, 0xEF, 0x01, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x82, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, + 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8D, 0x09, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x09, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0D, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x88, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x0F, 0x01, 0x30, 0x11, 0xB1, 0x22, 0x74, 0x2A, 0x94, 0x11, 0x91, 0x00, 0xEF, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x0D, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x0C, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x83, 0x09, 0x71, 0x43, 0x17, 0x22, 0x34, 0x01, 0x0F, 0x01, 0x00, 0xCF, 0x05, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x1A, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x05, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x87, 0x01, 0x0F, 0x09, 0x70, 0x19, 0xF3, 0x32, 0x95, 0x01, 0x0F, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, + 0x05, 0x00, 0xAE, 0x07, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x08, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x11, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x86, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xEF, 0x32, 0xB5, 0x22, 0x13, 0x00, 0xEF, 0x00, 0xCE, 0x03, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0E, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x0B, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x13, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x84, 0x00, 0x8D, 0x19, 0xF2, 0x1A, 0x13, 0x00, 0xCE, 0x00, 0xCF, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x83, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x1F, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x01, 0x22, 0x34, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0C, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, + 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x06, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x84, 0x00, 0xCE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCF, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xEF, 0x01, 0x2A, 0x95, 0x86, 0x00, 0xEF, 0x00, 0xCF, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAD, 0x06, 0x00, 0xAE, 0x89, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x6D, 0x08, 0x6D, 0x10, 0x6D, 0x18, 0x0C, 0x38, 0x4D, 0x92, 0x55, 0x9A, 0x35, 0x01, 0xA2, 0x14, 0x01, 0xA9, 0xF4, 0x89, 0xA1, 0xF4, 0xAA, 0x35, 0xA2, 0x55, 0xA2, 0x96, 0x8A, 0x55, 0x28, 0x0C, 0x18, 0x2D, 0x08, 0x2D, 0x08, 0x4D, 0x00, 0x6E, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x84, 0x00, 0xCE, 0x00, 0xEE, 0x01, 0x50, 0x3A, 0xF7, 0x32, 0xB6, 0x01, 0x00, 0xEF, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x09, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x08, 0x00, + 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x85, 0x00, 0xCE, 0x00, 0xEF, 0x09, 0x70, 0x32, 0xD6, 0x3A, 0xF7, 0x01, 0x30, 0x01, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0C, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0xCE, 0x81, 0x01, 0x2F, 0x11, 0xD2, 0x01, 0x3A, 0xF6, 0x86, 0x19, 0xD3, 0x00, 0xEF, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x03, 0x00, 0xAD, 0x13, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x86, 0x00, 0x8E, 0x2A, 0x95, 0x32, 0x95, 0x11, 0x91, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0xAD, 0x07, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x05, 0x00, 0x8E, 0x85, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8E, + 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x8F, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xEE, 0x09, 0x70, 0x22, 0x33, 0x2A, 0x74, 0x22, 0x54, 0x19, 0xF2, 0x00, 0xEF, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x83, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x8A, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xEF, 0x01, 0x50, 0x22, 0x33, 0x2A, 0x74, 0x22, 0x53, 0x09, 0x50, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, + 0x8D, 0x08, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0x8E, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x84, 0x00, 0xCE, 0x11, 0xD2, 0x43, 0x38, 0x1A, 0x13, 0x00, 0xEF, 0x01, 0x00, 0xCF, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0D, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x82, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x85, 0x00, 0xAE, 0x00, 0xCF, 0x09, 0x30, 0x11, 0xB2, 0x3A, 0xF7, 0x09, 0x50, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x1B, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0A, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x11, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0F, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x86, 0x00, 0xAE, 0x00, 0xCF, 0x01, 0x50, 0x32, 0xF6, 0x11, 0x91, 0x00, 0xCF, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, + 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x85, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0xAF, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x82, 0x22, 0x13, 0x1A, 0x13, 0x00, 0xCE, 0x06, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x10, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x11, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x83, 0x00, 0xCE, 0x09, 0x70, 0x32, 0xD6, 0x01, 0x0F, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x0B, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0E, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0B, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x04, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x84, 0x00, 0xCE, 0x01, 0x0F, 0x3B, 0x17, 0x1A, 0x13, 0x00, 0xEF, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x83, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x92, 0x08, 0x8D, 0x10, 0x6D, 0x18, 0x4C, 0x28, 0x0C, 0x7A, 0x14, 0x9A, + 0x55, 0x9A, 0x14, 0xAA, 0x55, 0xAA, 0x35, 0xA1, 0xF3, 0xA2, 0x14, 0xA2, 0x34, 0x9A, 0x34, 0x9A, 0x96, 0x50, 0xF0, 0x20, 0x0C, 0x18, 0x2D, 0x08, 0x4D, 0x08, 0x8E, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x06, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x04, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x01, 0x2F, 0x01, 0x3B, 0x17, 0x80, 0x01, 0x0F, 0x01, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x08, 0x00, 0xAE, 0x80, 0x00, 0xAD, 0x08, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x04, 0x00, 0xAE, 0x85, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x84, 0x00, 0xCE, 0x19, 0xF2, 0x43, 0x58, 0x19, 0xF2, 0x01, 0x0F, 0x02, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x0E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x03, 0x00, 0xAE, + 0x80, 0x00, 0xAD, 0x03, 0x00, 0xAE, 0x81, 0x00, 0xAD, 0x00, 0xAE, 0x02, 0x00, 0xCE, 0x86, 0x01, 0x0F, 0x1A, 0x13, 0x32, 0xD6, 0x2A, 0x75, 0x11, 0xB2, 0x00, 0xEF, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x83, 0x00, 0xAE, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x89, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x88, 0x00, 0xAE, 0x00, 0x8E, 0x11, 0xB2, 0x01, 0x0F, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x03, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x84, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x84, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0xAD, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0x8D, 0x84, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x88, + 0x00, 0xCE, 0x11, 0x71, 0x22, 0x33, 0x2A, 0x74, 0x22, 0x74, 0x19, 0xF2, 0x01, 0x30, 0x00, 0xCE, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x8C, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x0F, 0x11, 0xB1, 0x2A, 0x74, 0x32, 0x95, 0x11, 0xB1, 0x00, 0xEE, 0x00, 0xCE, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x86, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x0E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0A, 0x00, 0xAE, 0x85, 0x22, 0x13, 0x43, 0x58, 0x11, 0xB2, + 0x00, 0xEF, 0x00, 0xCE, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x13, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x80, 0x00, 0xAE, 0x02, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x86, 0x00, 0x8E, 0x00, 0xCF, 0x01, 0x0F, 0x11, 0x91, 0x32, 0xB6, 0x19, 0xD2, 0x00, 0xEE, 0x0B, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x16, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x0C, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0B, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xCF, 0x86, 0x1A, 0x13, 0x32, 0xD6, 0x00, 0xEF, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x6D, 0x02, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x08, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x83, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x08, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x8E, 0x00, 0x6D, 0x01, 0x1A, 0x12, 0x80, 0x00, 0xCE, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x20, 0x00, + 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x85, 0x01, 0x0F, 0x2A, 0x95, 0x21, 0xF3, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x0C, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x81, 0x00, 0xAE, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x83, 0x00, 0xEE, 0x09, 0x91, 0x43, 0x58, 0x09, 0x91, 0x01, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x84, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0xAD, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x83, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x88, 0x00, 0x6D, 0x10, 0x8D, 0x18, 0x4D, 0x20, 0x0B, 0x69, 0xB2, 0x9A, 0x95, 0x9A, 0x34, 0xA2, 0x14, 0xAA, 0x34, 0x01, 0xA1, 0xF4, 0x88, 0xA2, 0x55, 0x9A, 0x55, 0x9A, 0xD7, 0x38, 0x4D, 0x18, 0x0C, 0x10, 0x4D, 0x08, 0x4D, 0x00, 0x6D, 0x00, 0x6E, 0x03, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x06, 0x00, 0x8E, 0x83, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0xAD, + 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xAD, 0x02, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x85, 0x00, 0xCE, 0x01, 0x0F, 0x2A, 0x74, 0x43, 0x37, 0x09, 0x50, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x83, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8D, 0x03, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xAD, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x04, 0x00, 0xAE, 0x82, 0x00, 0x6D, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x84, 0x00, 0xEE, 0x09, 0x70, 0x32, 0xD6, 0x3B, 0x17, 0x01, 0x2F, 0x01, 0x00, 0xEF, 0x81, 0x00, 0xCE, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x85, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0xAD, 0x08, 0x00, 0xAE, 0x82, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x05, 0x00, + 0x8D, 0x80, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x03, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x81, 0x01, 0x2F, 0x11, 0xD2, 0x01, 0x32, 0xB5, 0x80, 0x11, 0x91, 0x02, 0x00, 0xCE, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x83, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x83, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x0A, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x83, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x05, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x83, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x04, 0x00, 0x8D, 0x82, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x04, 0x00, 0x8D, 0x85, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xCE, 0x00, 0xAE, 0x00, + 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x86, 0x00, 0xEE, 0x09, 0x50, 0x19, 0xF2, 0x1A, 0x13, 0x22, 0x34, 0x19, 0xF2, 0x09, 0x70, 0x01, 0x00, 0xCE, 0x80, 0x00, 0xAE, 0x0B, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x89, 0x00, 0xAE, 0x00, 0xEF, 0x09, 0x50, 0x22, 0x33, 0x2A, 0x74, 0x22, 0x13, 0x01, 0x0F, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x82, 0x00, 0x8D, 0x00, 0xCE, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x06, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x03, 0x00, 0x8D, 0x0C, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x87, 0x00, 0xCE, 0x32, 0x75, 0x43, 0x17, 0x11, 0x91, 0x00, 0xEF, 0x00, + 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x1A, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xAD, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0xCE, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x03, 0x00, 0xAE, 0x84, 0x00, 0xEF, 0x09, 0x50, 0x32, 0x95, 0x22, 0x13, 0x00, 0xCE, 0x06, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x03, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x84, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x0E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x07, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x84, 0x00, 0xEF, 0x32, 0xD5, 0x1A, 0x13, 0x00, 0xEF, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, + 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x10, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x81, 0x22, 0x13, 0x19, 0xF2, 0x01, 0x00, 0xCE, 0x83, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAD, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x83, 0x00, 0xEF, 0x22, 0x33, 0x32, 0xB5, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x16, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0D, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x05, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0xCE, 0x84, 0x22, 0x13, 0x43, 0x78, 0x01, 0x30, 0x00, 0xCE, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x02, + 0x00, 0x8D, 0x83, 0x00, 0xAD, 0x00, 0xCE, 0x00, 0xAD, 0x00, 0xAE, 0x02, 0x00, 0xAD, 0x87, 0x00, 0x8D, 0x08, 0x8D, 0x10, 0x8E, 0x10, 0x2C, 0x18, 0x0C, 0x40, 0xAE, 0x9A, 0x95, 0x9A, 0x34, 0x01, 0xA2, 0x14, 0x89, 0xAA, 0x34, 0xA2, 0x34, 0xA2, 0x55, 0xA2, 0x96, 0x79, 0xF3, 0x28, 0x0C, 0x18, 0x0C, 0x10, 0x4D, 0x10, 0x8E, 0x08, 0x8E, 0x03, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x07, 0x00, 0x8E, 0x0C, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x86, 0x00, 0xCE, 0x00, 0xEE, 0x22, 0x54, 0x3B, 0x17, 0x11, 0xB1, 0x00, 0xEF, 0x00, 0xCE, 0x08, 0x00, 0xAE, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0xAD, 0x00, 0xAE, 0x02, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x83, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x04, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0xAD, 0x03, 0x00, 0xAE, 0x86, 0x00, 0xEE, 0x00, 0xEF, 0x22, 0x54, 0x43, 0x58, 0x1A, 0x13, 0x00, 0xEF, 0x00, 0xEE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, + 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x04, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x0E, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x04, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xCE, 0x00, 0xAE, 0x02, 0x00, 0xAD, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xAD, 0x02, 0x00, 0xAE, 0x87, 0x00, 0xCE, 0x01, 0x2F, 0x22, 0x33, 0x32, 0xD6, 0x2A, 0x74, 0x09, 0x70, 0x00, 0xEE, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x05, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x0D, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x83, 0x00, 0x6D, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0x8E, 0x09, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x83, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAD, 0x09, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x06, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x0F, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x04, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x82, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x84, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x2F, 0x19, 0xF2, 0x01, 0x22, 0x33, 0x84, 0x19, 0xF2, 0x09, 0x50, 0x00, 0xEF, 0x00, 0xAE, 0x00, 0xAD, 0x0D, + 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x04, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x84, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x88, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xEF, 0x19, 0xF2, 0x2A, 0x94, 0x2A, 0x74, 0x09, 0x70, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x05, 0x00, 0x8E, 0x84, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x83, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0xAD, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x85, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x05, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, + 0x00, 0xAE, 0x87, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0xCE, 0x3A, 0xB6, 0x42, 0xF7, 0x09, 0x50, 0x00, 0xEF, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0B, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0E, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x03, 0x00, 0x8E, 0x83, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x80, 0x01, 0x0F, 0x01, 0x2A, 0x54, 0x82, 0x01, 0x0F, 0x00, 0xCE, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x06, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x0E, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x83, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x85, 0x00, 0xCE, 0x09, 0x30, 0x3B, 0x17, 0x09, 0x70, 0x00, 0xCE, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, + 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x10, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x83, 0x00, 0x6D, 0x1A, 0x12, 0x19, 0xF2, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x82, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x06, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x84, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x86, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x83, 0x09, 0x50, 0x3A, 0xF6, 0x01, 0x2F, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x80, 0x00, 0xAD, 0x13, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, + 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x06, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x85, 0x00, 0xCE, 0x00, 0xEE, 0x2A, 0x95, 0x3A, 0xF7, 0x00, 0xEF, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x05, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x91, 0x00, 0x6D, 0x08, 0x6D, 0x10, 0x4D, 0x18, 0x0C, 0x30, 0x2C, 0x9A, 0xD6, 0x92, 0x13, 0x9A, 0x14, 0xA2, 0x34, 0xA2, 0x14, 0xA2, 0x55, 0x9A, 0x34, 0xA3, 0x17, 0x48, 0xAE, 0x20, 0x0C, 0x10, 0x0C, 0x08, 0x4D, 0x08, 0x8E, 0x04, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x05, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x83, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x8D, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xEE, 0x09, 0x91, 0x43, 0x37, 0x22, 0x33, 0x00, 0xEE, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x06, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x81, 0x00, 0xAE, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0E, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x81, 0x00, 0x8E, 0x00, 0x6D, 0x07, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, + 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0xAD, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x83, 0x01, 0x50, 0x2A, 0x95, 0x3B, 0x17, 0x01, 0x2F, 0x01, 0x00, 0xEE, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x0D, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x16, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x05, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x80, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAD, 0x02, 0x00, 0xAE, 0x85, 0x00, 0xCE, 0x01, 0x2F, 0x1A, 0x13, 0x32, 0xD6, 0x2A, 0x74, 0x09, 0x50, 0x02, 0x00, 0xCE, 0x81, 0x00, 0xAE, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x06, 0x00, 0x8D, 0x88, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x11, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x06, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x07, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x09, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x06, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x13, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x88, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x0F, 0x19, 0xD2, 0x22, 0x54, 0x2A, 0x74, 0x22, 0x33, 0x11, 0x91, + 0x00, 0xEE, 0x16, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x09, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x03, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x82, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x09, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x85, 0x09, 0x50, 0x22, 0x54, 0x2A, 0x74, 0x19, 0xF2, 0x00, 0xEE, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x85, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x08, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x04, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x03, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x85, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAD, 0x04, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0x8D, 0x05, 0x00, 0xAE, 0x84, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0xEF, 0x3A, 0xD6, 0x32, 0x75, 0x01, 0x01, 0x0F, 0x80, 0x00, 0xCE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x81, 0x00, 0x8E, 0x00, 0x8D, + 0x02, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x82, 0x00, 0x6D, 0x00, 0x8E, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x83, 0x00, 0xEE, 0x22, 0x33, 0x3A, 0xD6, 0x01, 0x0F, 0x04, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x05, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x07, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x84, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0xAD, 0x00, 0xCE, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x04, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x8A, 0x22, 0x13, 0x2A, 0x95, 0x01, 0x0F, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x6D, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, + 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x0D, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x09, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0x6D, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x82, 0x22, 0x33, 0x1A, 0x12, 0x00, 0xCE, 0x04, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x05, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x03, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x81, 0x00, 0xAD, 0x00, 0x8D, 0x03, 0x00, 0xAE, 0x84, 0x00, 0xCE, 0x2A, 0x74, 0x22, 0x33, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x02, 0x00, + 0x8E, 0x06, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x06, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x84, 0x00, 0xCE, 0x01, 0x2F, 0x3B, 0x17, 0x1A, 0x13, 0x00, 0xCE, 0x03, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0xAD, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x92, 0x08, 0x8D, 0x08, 0x6D, 0x10, 0x4D, 0x10, 0x0C, 0x28, 0x2C, 0x92, 0x95, 0x92, 0x34, 0xA2, 0x55, 0xA2, 0x34, 0x99, 0xF4, 0xA2, 0x55, 0x92, 0x54, 0x8A, 0x75, 0x28, 0x0B, 0x18, 0x0C, 0x10, 0x2C, 0x08, 0x4D, 0x08, 0x8E, 0x00, 0x6D, 0x03, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x05, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x05, 0x00, 0xAE, 0x89, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0xCE, 0x09, 0x50, 0x43, 0x58, 0x2A, 0x74, 0x00, 0xEF, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x02, 0x00, + 0xAD, 0x09, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x0A, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x08, 0x00, 0x8D, 0x03, 0x00, 0xAD, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x02, 0x00, 0xAD, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x83, 0x11, 0xD2, 0x4B, 0x99, 0x22, 0x74, 0x01, 0x2F, 0x01, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0xAE, 0x1B, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x15, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x06, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x02, 0x00, 0xAD, 0x86, 0x00, 0xCE, 0x09, 0x50, 0x2A, 0x54, 0x2A, 0xB5, 0x22, 0x33, 0x01, 0x50, 0x00, 0xEF, 0x02, 0x00, 0xCE, 0x82, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x8E, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x03, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x11, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x13, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x12, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x89, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xEE, 0x11, 0x91, 0x2A, + 0x74, 0x3A, 0xF6, 0x22, 0x33, 0x09, 0x50, 0x00, 0xEE, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x0F, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x0E, 0x00, 0x8D, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x0D, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x85, 0x00, 0xEF, 0x22, 0x13, 0x32, 0xB5, 0x2A, 0x54, 0x09, 0x50, 0x00, 0xCE, 0x01, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x1E, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x80, 0x00, 0xAE, 0x06, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x04, 0x00, 0xAE, 0x89, 0x00, 0xAD, 0x09, 0x2F, 0x43, 0x17, 0x22, 0x33, 0x01, 0x0F, 0x00, 0xEF, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x07, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, + 0x8E, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x86, 0x00, 0x8E, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x85, 0x00, 0xCE, 0x00, 0xEE, 0x11, 0x91, 0x43, 0x17, 0x11, 0x91, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x06, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x85, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0xAD, 0x82, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x06, 0x00, 0xAE, 0x88, 0x00, 0x6D, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xEF, 0x3A, 0xF6, 0x11, 0xB1, 0x00, 0xCE, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x83, 0x00, 0xCF, 0x00, 0x8E, 0x00, 0x6D, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8D, 0x04, 0x00, 0xAE, 0x84, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x04, 0x00, + 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x12, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x0D, 0x00, 0xAE, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x81, 0x22, 0x13, 0x19, 0xF2, 0x03, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x0A, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x84, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x07, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xCE, 0x09, 0x91, 0x3A, 0xF6, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x07, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x85, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0xAE, 0x02, + 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x03, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x8A, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0xCE, 0x09, 0x70, 0x3A, 0xF7, 0x09, 0x71, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x8A, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x8D, 0x08, 0x8D, 0x08, 0x6D, 0x10, 0x4D, 0x18, 0x4C, 0x20, 0x0B, 0x7A, 0x14, 0x9A, 0x75, 0x9A, 0x34, 0x01, 0x9A, 0x14, 0x8C, 0x9A, 0x34, 0x9A, 0x96, 0x59, 0x30, 0x20, 0x0B, 0x18, 0x2C, 0x10, 0x2C, 0x08, 0x4D, 0x08, 0x6D, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x03, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x85, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x04, 0x00, 0x8D, 0x83, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x02, 0x00, 0xAD, 0x88, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x2F, 0x32, 0xB5, 0x3A, 0xD6, 0x01, 0x0F, 0x00, 0xCE, 0x00, + 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x10, 0x00, 0x8D, 0x82, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0xAE, 0x12, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x11, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x06, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x85, 0x00, 0xEE, 0x01, 0x50, 0x2A, 0x94, 0x3B, 0x17, 0x11, 0xB2, 0x00, 0xCE, 0x02, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0xAD, 0x05, 0x00, 0x8D, 0x82, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x29, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x8A, 0x00, 0xCE, 0x00, 0xEE, 0x09, 0x70, 0x1A, 0x13, 0x3B, 0x17, 0x22, 0x54, 0x01, 0x2F, 0x00, 0xEE, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x03, 0x00, 0x6D, 0x83, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x6D, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x83, 0x00, 0x8D, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6D, 0x0B, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x06, 0x00, 0x8D, 0x86, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6D, 0x06, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x21, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x01, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x84, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x02, 0x00, 0x6D, 0x8B, 0x00, 0x8E, + 0x00, 0xAE, 0x00, 0xEE, 0x11, 0x91, 0x2A, 0x94, 0x3A, 0xD5, 0x2A, 0x53, 0x09, 0x2F, 0x00, 0xCE, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x0D, 0x00, 0x8D, 0x02, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x05, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x09, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x07, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x04, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x86, 0x00, 0xAE, 0x09, 0x70, 0x3A, 0xD6, 0x43, 0x17, 0x19, 0xF2, 0x00, 0xCE, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x11, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x0B, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x05, 0x00, 0x8D, 0x85, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0xAE, 0x05, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x06, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x89, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x6D, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x6D, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x85, 0x09, 0x70, 0x43, 0x17, 0x19, 0xF2, 0x01, 0x0F, 0x09, 0x30, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x03, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x03, 0x00, 0xAD, 0x08, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x84, 0x00, 0xAE, + 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x05, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x03, 0x00, 0x8E, 0x88, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x82, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x83, 0x09, 0x4F, 0x3A, 0xF6, 0x19, 0xB2, 0x00, 0xCE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x06, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x05, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x84, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0xCE, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x84, 0x00, 0xAE, 0x00, 0xCE, 0x09, 0x71, 0x32, 0x95, 0x00, 0xEF, 0x01, 0x00, 0xAE, 0x82, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, + 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x80, 0x00, 0x8D, 0x04, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x05, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x04, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x82, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x81, 0x22, 0x33, 0x19, 0xF2, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x83, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x08, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x83, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x08, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x81, 0x00, 0x8E, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x03, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0xAE, 0x05, 0x00, 0x8D, 0x85, 0x00, 0xAE, 0x00, 0xCE, 0x01, 0x2F, 0x32, 0xB6, 0x11, 0x91, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x02, 0x00, 0xAE, 0x81, 0x00, 0xAD, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x01, 0x00, + 0x8D, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x03, 0x00, 0xAD, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x06, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x85, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x09, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x88, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0xCE, 0x11, 0xD2, 0x43, 0x58, 0x09, 0x50, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x83, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x04, 0x00, 0xAD, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x90, 0x00, 0x6D, 0x08, 0x6D, 0x10, 0x4D, 0x18, 0x4D, 0x20, 0x0B, 0x69, 0x92, 0x9A, 0x95, 0x92, 0x14, 0x9A, 0x14, 0x9A, 0x34, 0x9A, 0x35, 0x92, 0x96, 0x38, 0x4D, 0x20, 0x2C, 0x18, 0x4D, 0x08, 0x2C, 0x08, 0x4D, 0x02, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8E, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x03, 0x00, 0x8D, 0x81, 0x00, 0x8E, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x82, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0xAD, 0x03, 0x00, 0xAE, 0x86, 0x00, 0xCE, 0x32, 0xB5, 0x3B, 0x17, 0x00, 0xEE, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x84, 0x00, 0xAE, 0x00, 0x8D, 0x00, + 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x08, 0x00, 0x8D, 0x02, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAE, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x16, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x12, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x85, 0x19, 0xD2, 0x4B, 0x78, 0x32, 0x95, 0x01, 0x30, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x82, 0x00, 0x8D, 0x00, 0x6D, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x05, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x06, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x84, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6D, 0x08, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x17, 0x00, 0x8D, 0x03, 0x00, 0xAD, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x8D, 0x00, 0xCE, 0x00, 0xEE, 0x01, 0x4F, 0x22, 0x53, 0x3A, 0xF6, 0x22, 0x33, 0x01, 0x2F, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x6D, 0x00, 0x8E, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x03, 0x00, 0x6D, 0x08, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x0F, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x0E, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x0A, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, + 0x01, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x8E, 0x05, 0x00, 0x8D, 0x88, 0x00, 0x8E, 0x00, 0xAE, 0x09, 0x50, 0x2A, 0x54, 0x3A, 0xD6, 0x2A, 0x54, 0x09, 0x70, 0x00, 0xEE, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x81, 0x00, 0x6C, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x09, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x0A, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x10, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x09, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x86, 0x00, 0xCE, 0x21, 0xF2, 0x4B, 0x37, 0x32, 0x95, 0x00, 0xEE, 0x00, 0xAE, 0x00, 0xAD, 0x0B, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x09, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x0B, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x82, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x06, 0x00, 0x8D, 0x03, 0x00, 0xAD, 0x06, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x84, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x04, 0x00, 0x8D, 0x85, 0x19, 0xB1, 0x43, 0x17, 0x11, 0xB1, 0x01, 0x0F, 0x00, 0xEE, 0x00, 0xAE, 0x04, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAD, 0x09, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0xAD, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x06, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x03, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x03, 0x00, + 0x8D, 0x81, 0x00, 0x8E, 0x00, 0xAE, 0x06, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x85, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x03, 0x00, 0xAE, 0x85, 0x00, 0xCE, 0x32, 0xB5, 0x2A, 0x54, 0x00, 0xCE, 0x00, 0x8E, 0x00, 0x6D, 0x01, 0x00, 0x8E, 0x06, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x0C, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAD, 0x01, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x81, 0x00, 0x8E, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x83, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x85, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x82, 0x00, 0x8E, 0x00, 0x6D, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x83, 0x00, 0xAE, 0x00, 0xCE, 0x22, 0x34, 0x22, 0x13, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x8E, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x82, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0xAE, 0x11, 0x00, 0x8D, 0x87, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x03, 0x00, 0x8E, 0x05, 0x00, 0x8D, 0x04, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8E, 0x80, 0x00, 0xAE, + 0x06, 0x00, 0x8E, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x83, 0x00, 0x8D, 0x00, 0x4C, 0x22, 0x13, 0x19, 0xD2, 0x02, 0x00, 0xAE, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x15, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x06, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x0C, 0x00, 0x8D, 0x03, 0x00, 0x8E, 0x86, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x07, 0x00, 0x8D, 0x88, 0x00, 0xAE, 0x00, 0xEF, 0x22, 0x13, 0x3A, 0xD6, 0x00, 0xCE, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0xAE, 0x08, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x04, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x8E, 0x01, 0x00, 0xAE, 0x83, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x11, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x87, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0xEE, 0x2A, 0x74, 0x3B, 0x17, 0x01, 0x0F, 0x00, 0xCE, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x02, 0x00, 0xAE, + 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x8E, 0x03, 0x00, 0x8D, 0x03, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x80, 0x08, 0x6D, 0x01, 0x10, 0x4D, 0x83, 0x20, 0x0C, 0x59, 0x30, 0x92, 0x96, 0x9A, 0x55, 0x01, 0x9A, 0x14, 0x86, 0x92, 0x55, 0x7A, 0x14, 0x28, 0x0B, 0x18, 0x0C, 0x10, 0x4C, 0x08, 0x4C, 0x08, 0x6D, 0x01, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x05, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x09, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x01, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x89, 0x00, 0xAE, 0x00, 0xCE, 0x00, 0xEF, 0x22, 0x13, 0x43, 0x37, 0x01, 0x2F, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x0A, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x15, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x0C, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x11, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x83, 0x01, 0x0F, 0x2A, 0x75, 0x4B, 0x99, 0x11, 0xB2, 0x02, 0x00, 0xAE, 0x83, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x0D, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x0F, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x82, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x02, 0x00, 0xAD, + 0x86, 0x00, 0xCE, 0x00, 0xEE, 0x09, 0x50, 0x22, 0x53, 0x3A, 0xF6, 0x22, 0x13, 0x00, 0xEE, 0x01, 0x00, 0xAE, 0x84, 0x00, 0x8D, 0x00, 0x8E, 0x00, 0x6D, 0x00, 0x8E, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x05, 0x00, 0x6D, 0x81, 0x00, 0x8D, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x6C, 0x08, 0x00, 0x8D, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x04, 0x00, 0x6D, 0x08, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x6C, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x81, 0x00, 0x6C, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x81, 0x00, 0x8C, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x03, 0x00, 0x8D, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x0C, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x88, 0x00, 0xCE, 0x09, 0x30, 0x22, 0x33, 0x32, 0x95, 0x2A, 0x33, 0x11, 0x91, 0x00, 0xCE, 0x00, 0x8D, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x82, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x83, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x26, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x83, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x87, 0x00, 0xAD, + 0x11, 0x70, 0x32, 0x95, 0x3A, 0xB5, 0x11, 0x91, 0x00, 0xAD, 0x00, 0xAE, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x82, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x10, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x0F, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x06, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x02, 0x00, 0x8E, 0x81, 0x00, 0x8D, 0x00, 0x8E, 0x07, 0x00, 0x8D, 0x87, 0x00, 0xAD, 0x21, 0xF2, 0x3A, 0xF6, 0x11, 0xB1, 0x01, 0x0F, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x82, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0xAD, 0x0A, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x16, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x83, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x84, 0x00, 0xCE, 0x32, 0x74, 0x32, 0xB5, 0x00, 0xEF, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x84, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x39, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x86, 0x00, 0x8E, + 0x00, 0xAE, 0x09, 0x2F, 0x32, 0xD6, 0x09, 0x30, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0xAE, 0x80, 0x00, 0x6D, 0x0B, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x12, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x06, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x06, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x0F, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0xCE, 0x00, 0x8D, 0x04, 0x00, 0x6D, 0x81, 0x22, 0x33, 0x19, 0xF2, 0x01, 0x00, 0xAE, 0x2B, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x13, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x04, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x04, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x07, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x84, 0x00, 0xCE, 0x09, 0x70, 0x43, 0x57, 0x01, 0x2F, 0x00, 0x8D, 0x03, 0x00, 0x8E, 0x0C, 0x00, 0x8D, 0x01, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x0A, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x8D, 0x00, 0x6D, 0x10, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x83, 0x00, 0xAE, 0x00, 0xCE, 0x3A, 0xF6, 0x2A, 0xB5, 0x01, 0x00, 0xCE, 0x82, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x83, 0x00, 0x6D, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, + 0x02, 0x00, 0x8D, 0x8F, 0x00, 0x6D, 0x08, 0x6D, 0x08, 0x4D, 0x10, 0x2C, 0x18, 0x0C, 0x48, 0xCF, 0x92, 0xB6, 0x9A, 0x75, 0x9A, 0x54, 0x92, 0x34, 0x9A, 0x96, 0x48, 0xCE, 0x20, 0x0B, 0x18, 0x2C, 0x08, 0x2C, 0x08, 0x4D, 0x03, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x82, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x09, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x85, 0x00, 0xCE, 0x00, 0xEE, 0x19, 0xD1, 0x53, 0xB9, 0x11, 0xB1, 0x00, 0xCE, 0x01, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x82, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x6D, 0x0B, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x8D, 0x00, 0x6D, 0x09, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x0F, 0x00, 0x8D, 0x04, 0x00, 0x8C, 0x0A, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x84, 0x11, 0xB1, 0x4B, 0x78, 0x32, 0x95, 0x01, 0x0F, 0x00, 0xAE, 0x01, 0x00, 0xCE, 0x01, 0x00, 0xAE, 0x08, 0x00, 0x8D, 0x03, 0x00, 0x6D, 0x12, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x16, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x03, 0x00, 0x8D, 0x81, 0x00, 0x8C, 0x00, 0x8D, 0x02, 0x00, 0xAD, 0x86, 0x00, 0xCE, 0x01, 0x2F, 0x32, 0xB5, 0x3A, 0xF6, 0x19, 0xF2, 0x00, 0xEE, 0x00, 0xAD, 0x01, 0x00, + 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x02, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x8D, 0x03, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x8D, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x86, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x03, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x6D, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x06, 0x00, 0x8D, 0x88, 0x00, 0xAD, 0x00, 0xCE, 0x09, 0x4F, 0x22, 0x33, 0x3A, 0xD5, 0x2A, 0x74, 0x11, 0xB1, 0x00, 0xEE, 0x00, 0x8D, 0x05, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x8D, 0x04, 0x00, 0x8C, 0x83, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x15, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x06, 0x00, 0x8D, 0x06, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x06, 0x00, 0x8D, 0x85, 0x08, 0xEE, 0x2A, 0x33, 0x4B, + 0x37, 0x32, 0x74, 0x01, 0x0E, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x09, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x09, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x08, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x0A, 0x00, 0x8D, 0x85, 0x00, 0xAD, 0x32, 0x94, 0x42, 0xF6, 0x09, 0x70, 0x00, 0xCD, 0x00, 0xAD, 0x06, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x15, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x0A, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x06, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x85, 0x00, 0xAE, 0x00, 0xAD, 0x19, 0xD2, 0x42, 0xF6, 0x09, 0x2F, 0x00, 0xAE, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x41, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x85, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0xAE, 0x2A, 0x33, 0x3A, 0xB5, 0x00, 0xEE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x6D, 0x3D, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x06, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x84, 0x00, 0x6C, 0x22, 0x13, 0x19, 0xD2, 0x00, 0xAD, + 0x00, 0xAE, 0x51, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x85, 0x00, 0x8D, 0x00, 0xAE, 0x01, 0x0F, 0x32, 0xB5, 0x22, 0x13, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x83, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0xAD, 0x0A, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x05, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x08, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x0B, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x10, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x84, 0x00, 0xAD, 0x00, 0xAE, 0x01, 0x50, 0x43, 0x58, 0x19, 0xF2, 0x01, 0x00, 0xCE, 0x87, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6D, 0x00, 0x8E, 0x00, 0xAE, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x06, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x90, 0x08, 0x6D, 0x08, 0x4D, 0x10, 0x4D, 0x18, 0x0C, 0x38, 0x6E, 0x92, 0xD7, 0x92, 0x96, 0x9A, 0x75, 0x92, 0x34, 0x8A, 0x75, 0x28, 0x0B, 0x18, 0x2C, 0x10, 0x2C, 0x08, 0x4C, 0x00, 0x4D, 0x00, 0x6D, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x12, 0x00, 0x8D, 0x02, 0x00, 0xAD, 0x81, 0x00, 0x8D, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x84, 0x00, 0xEE, 0x11, 0x90, 0x4B, 0x78, 0x22, 0x13, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x16, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x01, + 0x00, 0x6D, 0x09, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x04, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x8D, 0x02, 0x00, 0x8C, 0x80, 0x00, 0xAD, 0x0A, 0x00, 0x8D, 0x03, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x89, 0x00, 0xAD, 0x00, 0xCE, 0x01, 0x2F, 0x2A, 0x54, 0x43, 0x37, 0x19, 0xB1, 0x00, 0xCE, 0x00, 0xEE, 0x00, 0xCE, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x81, 0x00, 0x6C, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x8D, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x8C, 0x09, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x0B, 0x00, 0x8D, 0x81, 0x00, 0x8C, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0xAD, 0x03, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x85, 0x00, 0xCE, 0x09, 0x4F, 0x2A, 0x54, 0x4B, 0x57, 0x22, 0x13, 0x00, 0xCE, 0x03, 0x00, 0x8D, 0x03, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x85, 0x00, 0x4C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x83, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x13, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, + 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x84, 0x00, 0x8C, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x89, 0x00, 0xAD, 0x01, 0x2F, 0x22, 0x12, 0x3A, 0xF6, 0x32, 0xB5, 0x19, 0xD2, 0x09, 0x0E, 0x00, 0x8D, 0x00, 0x6C, 0x00, 0x6D, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x03, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0xAD, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x8C, 0x04, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x82, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x82, 0x00, 0x6C, 0x00, 0x6D, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x83, 0x00, 0x6D, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x19, 0x91, 0x01, 0x3A, 0xB5, 0x81, 0x19, 0x90, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x06, 0x00, 0x8D, 0x03, 0x00, 0x6D, 0x06, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x03, 0x00, 0x6D, 0x81, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x08, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x07, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x81, 0x00, 0x8D, + 0x00, 0xAE, 0x09, 0x00, 0x8D, 0x84, 0x00, 0xAD, 0x42, 0xD6, 0x3A, 0xD5, 0x09, 0x0F, 0x00, 0xAD, 0x0A, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x09, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x09, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x09, 0x00, 0x8D, 0x86, 0x00, 0xAE, 0x00, 0xAD, 0x11, 0x91, 0x43, 0x16, 0x11, 0x70, 0x00, 0xAD, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x0E, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x08, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x08, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x06, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x05, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x81, 0x00, 0xAE, 0x00, 0x8E, 0x01, 0x00, 0x8D, 0x85, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0xEE, 0x43, 0x17, 0x19, 0xB1, 0x00, 0xAE, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x6D, 0x07, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x06, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x0E, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAE, 0x06, + 0x00, 0x8D, 0x02, 0x00, 0xAD, 0x83, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x83, 0x00, 0x6C, 0x22, 0x13, 0x19, 0xF2, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x11, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x0B, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x08, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x0A, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x08, 0x00, 0x8D, 0x81, 0x00, 0xCE, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x89, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0xEF, 0x19, 0xF2, 0x43, 0x37, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x6D, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0x6D, 0x26, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x10, 0x00, 0x8D, 0x84, 0x00, 0xCE, 0x11, 0xB1, 0x3B, 0x17, 0x09, 0x50, 0x00, 0xAE, 0x01, 0x00, 0x8E, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x8C, 0x08, 0x4D, 0x10, 0x4D, 0x20, 0x4D, 0x28, 0x2C, 0x82, 0x96, 0x8A, 0x55, 0x92, 0x55, 0x92, 0x96, 0x61, 0x50, 0x20, 0x0B, 0x18, 0x4C, 0x08, 0x2C, 0x08, 0x4C, 0x01, 0x00, 0x4C, 0x0B, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x13, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x01, 0x00, 0x8D, + 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x84, 0x00, 0xCE, 0x01, 0x2F, 0x4B, 0x57, 0x32, 0x74, 0x00, 0xCE, 0x01, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x0A, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x05, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x10, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x02, 0x00, 0xAD, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x6D, 0x81, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xCE, 0x86, 0x11, 0x91, 0x32, 0x95, 0x32, 0xB5, 0x01, 0x4F, 0x00, 0xEE, 0x00, 0xAE, 0x00, 0xAD, 0x03, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x82, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x82, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x6C, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x09, 0x00, 0x8D, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x8D, 0x86, 0x00, 0xAD, 0x11, 0x90, 0x42, + 0xF6, 0x4B, 0x57, 0x21, 0xF2, 0x00, 0xEE, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x05, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x0C, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x4C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x87, 0x00, 0x8C, 0x00, 0xCD, 0x22, 0x12, 0x3A, 0xD5, 0x32, 0xB4, 0x11, 0xB1, 0x01, 0x0E, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x06, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x84, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x07, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x8D, 0x04, 0x00, 0x6D, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x8D, 0x00, 0x6C, 0x00, 0x6D, 0x01, 0x00, 0x8C, 0x08, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x85, 0x08, 0xEE, 0x32, 0x53, 0x42, 0xF6, 0x2A, 0x33, 0x00, 0xEE, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8D, + 0x01, 0x00, 0x6D, 0x07, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x0B, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x05, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x07, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x0E, 0x00, 0x8D, 0x85, 0x00, 0xAD, 0x00, 0xCE, 0x53, 0x58, 0x3A, 0x95, 0x00, 0xEE, 0x00, 0xAD, 0x09, 0x00, 0x8D, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x0B, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x08, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x08, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x83, 0x00, 0x6C, 0x00, 0x6D, 0x00, 0xAD, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x85, 0x09, 0x2F, 0x4B, 0x37, 0x22, 0x12, 0x00, 0xCE, 0x00, 0xAD, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x11, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x0A, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x0D, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x02, 0x00, 0x8D, 0x88, 0x00, 0x8E, + 0x00, 0x8D, 0x09, 0x70, 0x4B, 0x58, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8E, 0x00, 0x8D, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x0A, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x22, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x0A, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x04, 0x00, 0x6D, 0x82, 0x00, 0x4C, 0x22, 0x12, 0x19, 0xD2, 0x35, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x0B, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x10, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x85, 0x00, 0xCE, 0x01, 0x50, 0x3A, 0xF6, 0x19, 0xD2, 0x00, 0x8D, 0x00, 0x6D, 0x16, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x0A, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x13, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x6D, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x0D, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x05, 0x00, 0x8D, 0x86, 0x00, 0xAE, 0x00, 0xEE, 0x19, 0xF2, 0x32, 0xB5, 0x00, 0xEE, 0x00, 0xAE, 0x00, 0x8E, 0x02, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x09, 0x00, 0x8D, 0x8F, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6D, 0x00, 0x4C, 0x08, 0x4D, 0x10, 0x4D, 0x18, 0x4D, 0x20, 0x0C, 0x7A, 0x75, 0x92, 0xB6, 0x8A, 0x54, 0x92, 0xD6, 0x38, 0x6D, 0x18, 0x0B, 0x10, 0x4C, 0x08, 0x2C, 0x01, 0x00, 0x4C, 0x81, 0x00, 0x6C, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x06, 0x00, 0x8D, 0x84, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x0E, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x82, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x6D, + 0x04, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x8B, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0xCD, 0x01, 0x0E, 0x42, 0xF6, 0x3A, 0xD5, 0x00, 0xCE, 0x00, 0xAE, 0x00, 0x8D, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x06, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x8D, 0x03, 0x00, 0x8C, 0x07, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x0A, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x82, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x6C, 0x05, 0x00, 0x8C, 0x82, 0x00, 0x8D, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x6D, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x85, 0x01, 0x0E, 0x19, 0xF2, 0x4B, 0x78, 0x19, 0xF2, 0x00, 0xEE, 0x00, 0xCE, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x84, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, + 0xAD, 0x06, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x8A, 0x00, 0xCD, 0x11, 0x70, 0x32, 0xB5, 0x4B, 0x78, 0x2A, 0x13, 0x00, 0xAD, 0x00, 0x8C, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6D, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x84, 0x00, 0x8D, 0x00, 0x6C, 0x00, 0x6D, 0x00, 0x6C, 0x00, 0x8D, 0x06, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x0D, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x85, 0x00, 0xAD, 0x21, 0xB1, 0x3A, 0xB5, 0x32, 0x94, 0x19, 0xB1, 0x00, 0xCD, 0x01, 0x00, 0x8C, 0x0D, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x02, 0x00, 0x8D, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x0C, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x84, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x87, 0x00, 0x6C, 0x00, 0x8C, 0x00, + 0xAD, 0x19, 0x91, 0x3A, 0x94, 0x32, 0x74, 0x11, 0x4F, 0x00, 0xAD, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x4D, 0x02, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x82, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x05, 0x00, 0x8D, 0x82, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x82, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8C, 0x83, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x0E, 0x00, 0x8D, 0x82, 0x09, 0x0F, 0x53, 0x78, 0x2A, 0x33, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x04, 0x00, 0x8D, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x83, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x07, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x83, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x6C, 0x0D, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x0B, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x02, 0x00, 0x6C, 0x83, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6D, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x86, 0x00, 0xEE, 0x3A, 0xD5, 0x32, 0x94, 0x00, 0xCE, 0x00, 0xAD, 0x00, + 0x8D, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x41, 0x00, 0x8D, 0x82, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x82, 0x00, 0x6D, 0x00, 0x6C, 0x00, 0xAD, 0x06, 0x00, 0x8D, 0x01, 0x2A, 0x54, 0x83, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAE, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x0B, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x26, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x83, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0x8D, 0x03, 0x00, 0x6C, 0x82, 0x22, 0x33, 0x19, 0xD2, 0x00, 0xAD, 0x14, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x17, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x17, 0x00, 0x8D, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x83, 0x00, 0xCE, 0x22, 0x33, 0x32, 0xB5, 0x00, 0xAE, 0x0C, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x0A, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x1E, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x6D, 0x10, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x06, 0x00, 0x8D, 0x01, 0x00, 0xAD, 0x86, 0x00, 0xEE, 0x32, 0x94, 0x32, 0xB5, 0x00, 0xCE, 0x00, 0x8D, 0x00, 0x6D, 0x00, 0x8D, 0x05, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x84, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x6C, 0x01, 0x08, 0x6D, 0x8C, + 0x10, 0x6D, 0x18, 0x4D, 0x20, 0x0C, 0x6A, 0x14, 0x9B, 0x37, 0x8A, 0xB6, 0x7A, 0x75, 0x20, 0x0B, 0x18, 0x2B, 0x08, 0x4C, 0x08, 0x6C, 0x00, 0x6C, 0x00, 0x6D, 0x02, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x81, 0x00, 0x8D, 0x00, 0x8C, 0x0A, 0x00, 0x8D, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x8D, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x04, 0x00, 0x6C, 0x82, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x81, 0x00, 0xAD, 0x00, 0xEE, 0x01, 0x42, 0xF6, 0x81, 0x01, 0x0E, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x04, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x84, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x05, 0x00, 0x8C, 0x81, 0x00, 0x8D, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x0B, 0x00, 0x8C, 0x07, 0x00, 0x6C, 0x84, 0x00, 0x6D, 0x00, 0x6C, 0x00, 0x6D, 0x00, 0x6C, 0x00, 0x8D, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x82, 0x00, 0xAD, 0x00, 0xCD, 0x09, 0x4F, 0x01, 0x43, 0x16, 0x81, 0x11, 0x70, 0x00, 0xAD, 0x07, 0x00, 0x8D, 0x81, 0x00, 0x8C, 0x00, 0x8D, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x03, 0x00, 0x6C, + 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x18, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x07, 0x00, 0x6C, 0x80, 0x00, 0x4C, 0x04, 0x00, 0x6C, 0x88, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0xAD, 0x11, 0x70, 0x42, 0xF5, 0x3A, 0xF5, 0x19, 0xD1, 0x00, 0xEE, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x82, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x86, 0x00, 0x8C, 0x21, 0xD1, 0x42, 0xF6, 0x3A, 0x95, 0x19, 0xB1, 0x00, 0xEE, 0x00, 0x8D, 0x08, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, + 0x00, 0x8D, 0x0C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x81, 0x00, 0x8D, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x85, 0x00, 0x8C, 0x11, 0x4F, 0x32, 0x53, 0x42, 0xD5, 0x21, 0xF2, 0x00, 0xEE, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x6C, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x87, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x05, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x81, 0x00, 0x8D, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6D, 0x06, 0x00, 0x8D, 0x83, 0x11, 0x4F, 0x53, 0x78, 0x21, 0xD2, 0x00, 0xAD, 0x03, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x04, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x04, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x0E, 0x00, 0x8D, 0x83, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x8C, 0x07, 0x00, 0x8D, 0x83, 0x00, + 0x6C, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x6D, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x87, 0x00, 0xCE, 0x2A, 0x33, 0x3A, 0xD5, 0x09, 0x2F, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x6D, 0x00, 0x6C, 0x02, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x07, 0x00, 0x8D, 0x81, 0x00, 0x8C, 0x00, 0xAD, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x0C, 0x00, 0x8D, 0x02, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x81, 0x00, 0x8C, 0x00, 0x8D, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x8D, 0x08, 0x00, 0x8C, 0x81, 0x00, 0x8D, 0x00, 0x8C, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x01, 0x00, 0xAE, 0x81, 0x4B, 0x38, 0x09, 0x50, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x07, 0x00, 0x8C, 0x1B, 0x00, 0x8D, 0x82, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x15, 0x00, 0x8D, 0x03, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8C, 0x83, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x6D, 0x02, 0x00, 0x6C, 0x82, 0x00, 0x4C, 0x22, 0x12, 0x19, 0xD1, 0x01, 0x00, 0xAD, 0x0B, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x0D, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x07, 0x00, 0x8D, 0x01, + 0x00, 0x8C, 0x81, 0x00, 0x8D, 0x00, 0x8C, 0x09, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x09, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x8D, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x84, 0x00, 0xAE, 0x09, 0x50, 0x3A, 0xD6, 0x01, 0x2F, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x04, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x07, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x19, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x8D, 0x00, 0x6C, 0x02, 0x00, 0x8D, 0x81, 0x00, 0x6C, 0x00, 0x8D, 0x06, 0x00, 0x8C, 0x81, 0x00, 0x8D, 0x00, 0x8C, 0x05, 0x00, 0x8D, 0x84, 0x00, 0xAD, 0x00, 0xCE, 0x01, 0x2F, 0x32, 0xB5, 0x22, 0x12, 0x07, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x83, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x8D, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0x4C, 0x08, 0x6C, 0x08, 0x4C, 0x10, 0x4C, 0x18, 0x0C, 0x51, 0x91, 0xA3, 0xDA, 0x93, 0x17, 0x51, 0x70, 0x18, 0x0B, 0x10, 0x2B, 0x08, 0x4C, 0x01, 0x00, 0x4C, 0x03, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x06, 0x00, 0x8D, 0x03, 0x00, 0x8C, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x84, 0x00, + 0xAD, 0x00, 0xEE, 0x2A, 0x53, 0x43, 0x16, 0x11, 0x50, 0x01, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x09, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x86, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x6C, 0x84, 0x00, 0x8D, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x84, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x0B, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0xAD, 0x84, 0x00, 0xEE, 0x19, 0xD1, 0x43, 0x16, 0x22, 0x12, 0x00, 0xCE, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x16, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x80, 0x00, 0x4C, 0x0C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x87, 0x00, 0xAC, 0x00, 0xCD, 0x11, 0x8F, 0x32, 0x94, 0x43, 0x16, 0x21, 0xF2, 0x00, 0xAD, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x05, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x0D, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x8C, 0x86, 0x00, 0x6B, 0x00, 0x6C, + 0x00, 0x8B, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x83, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x4B, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x4C, 0x09, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x07, 0x00, 0x6C, 0x86, 0x00, 0x8D, 0x11, 0x70, 0x3A, 0xB5, 0x3A, 0xD5, 0x19, 0xB1, 0x00, 0xCD, 0x00, 0x8C, 0x0D, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x84, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x06, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x83, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x83, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x88, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0xEE, 0x21, 0xD1, 0x32, 0x53, 0x32, 0x73, 0x11, 0x90, 0x00, 0xCD, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x0D, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x12, 0x00, 0x6C, 0x81, + 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x8D, 0x00, 0xAD, 0x01, 0x00, 0x6D, 0x04, 0x00, 0x6C, 0x03, 0x00, 0x8D, 0x82, 0x19, 0xD1, 0x4B, 0x57, 0x11, 0x90, 0x03, 0x00, 0x8D, 0x82, 0x00, 0x6D, 0x00, 0x6C, 0x00, 0x6D, 0x05, 0x00, 0x6C, 0x07, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8D, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x82, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x05, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x87, 0x00, 0x4C, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0xCE, 0x11, 0x90, 0x3A, 0xB5, 0x09, 0x2F, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x82, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x02, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x83, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x81, 0x00, 0x6C, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x02, 0x00, 0x8C, 0x05, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x03, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x12, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, + 0x81, 0x00, 0xAD, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x85, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0xAE, 0x19, 0xD2, 0x3A, 0xD6, 0x00, 0xCE, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x86, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x03, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8D, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x05, 0x00, 0x8D, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0xAD, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x8D, 0x06, 0x00, 0x8C, 0x80, 0x00, 0xAD, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x8D, 0x86, 0x00, 0x6C, 0x00, 0x4C, 0x00, 0x6C, 0x00, 0x4C, 0x2A, 0x13, 0x19, 0xB1, 0x00, 0xAD, 0x02, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x8D, 0x83, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x05, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x81, 0x00, 0x8C, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x84, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x05, 0x00, 0x8C, 0x80, 0x00, 0x8D, 0x05, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x02, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x04, 0x00, 0x8C, + 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x03, 0x00, 0x8C, 0x85, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x86, 0x00, 0x6C, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0xAD, 0x22, 0x33, 0x22, 0x13, 0x00, 0x6D, 0x02, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x83, 0x00, 0x6D, 0x00, 0x8D, 0x00, 0x6C, 0x00, 0x8D, 0x04, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x10, 0x00, 0x8D, 0x03, 0x00, 0x6D, 0x05, 0x00, 0x8D, 0x83, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x04, 0x00, 0x6D, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x8D, 0x04, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x87, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0xCE, 0x11, 0x70, 0x43, 0x16, 0x19, 0x91, 0x00, 0x8D, 0x04, 0x00, 0x6D, 0x81, 0x00, 0x8D, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x03, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x89, 0x00, 0x4C, 0x08, 0x4C, 0x08, 0x2C, 0x10, 0x2C, 0x39, 0x0F, 0xA3, 0xFA, 0x83, 0x16, 0x18, 0x0A, 0x10, 0x0A, 0x08, 0x4B, 0x01, 0x08, 0x6C, 0x80, 0x00, 0x4C, 0x07, 0x00, 0x6C, 0x06, 0x00, 0x8D, 0x03, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x06, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x87, 0x00, 0x8D, 0x00, 0xAD, + 0x00, 0xCD, 0x2A, 0x13, 0x42, 0xF6, 0x11, 0x91, 0x00, 0xCE, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x02, 0x00, 0x6C, 0x05, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x0E, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x06, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0xAD, 0x84, 0x01, 0x0E, 0x32, 0x94, 0x42, 0xF6, 0x11, 0x70, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x05, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x4C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x4C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x89, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x4B, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0xAC, 0x86, 0x00, 0xCD, 0x09, 0x4F, 0x32, 0x94, 0x32, 0xB4, 0x11, 0x90, 0x00, 0xAD, 0x00, 0x8C, 0x0C, 0x00, 0x6C, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x0A, 0x00, 0x6B, 0x01, 0x00, + 0x6C, 0x09, 0x00, 0x6B, 0x81, 0x00, 0x6C, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x4B, 0x08, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x06, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x85, 0x11, 0x6F, 0x4A, 0xF6, 0x42, 0xF6, 0x2A, 0x12, 0x08, 0xEE, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x88, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x0F, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x0D, 0x00, 0x6C, 0x87, 0x00, 0x8C, 0x11, 0x2F, 0x2A, 0x33, 0x32, 0x94, 0x2A, 0x32, 0x00, 0xED, 0x00, 0xAC, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x0E, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x13, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x17, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x8D, 0x83, 0x2A, 0x33, 0x5B, 0xD9, 0x11, 0x6F, 0x00, 0xAD, + 0x02, 0x00, 0x8D, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x05, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x13, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x04, 0x00, 0x6C, 0x85, 0x00, 0x6D, 0x00, 0xAD, 0x09, 0x2F, 0x3A, 0xD5, 0x11, 0x90, 0x00, 0xAD, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x6C, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x03, 0x00, 0x6D, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x82, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x83, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x86, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0xCE, 0x42, 0xF6, 0x21, 0xF2, 0x00, 0xAD, 0x01, 0x00, + 0x8D, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x82, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x8D, 0x03, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x05, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x4C, 0x81, 0x22, 0x12, 0x19, 0xB1, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x03, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x05, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x83, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x8D, 0x09, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x0B, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x6D, 0x83, 0x00, 0x8D, 0x11, + 0x90, 0x32, 0x95, 0x00, 0xCE, 0x03, 0x00, 0x8D, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x04, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x09, 0x00, 0x8C, 0x80, 0x00, 0x6D, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x8D, 0x04, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x6D, 0x04, 0x00, 0x6C, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x03, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x86, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0xCE, 0x19, 0xB1, 0x42, 0xF6, 0x09, 0x30, 0x06, 0x00, 0x6D, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x01, 0x08, 0x4C, 0x87, 0x08, 0x2B, 0x20, 0x8D, 0x9C, 0x1B, 0x62, 0x53, 0x08, 0x0A, 0x08, 0x2A, 0x08, 0x4B, 0x00, 0x6C, 0x01, 0x00, 0x4C, 0x06, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x8D, 0x00, 0x8C, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x06, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0xAC, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x86, 0x00, 0xAD, 0x11, 0x91, 0x42, 0xD6, 0x21, 0xF2, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x6D, + 0x03, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x0C, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x07, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x07, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x86, 0x00, 0xAD, 0x00, 0xCD, 0x19, 0xD1, 0x42, 0xF6, 0x2A, 0x12, 0x00, 0xCE, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x0C, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x8C, 0x00, 0x8B, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x82, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x4B, 0x04, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x86, 0x00, 0xAC, 0x00, 0xED, 0x11, 0x90, 0x32, 0x94, 0x3A, 0xB5, 0x11, 0x4F, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x06, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x06, 0x00, 0x4B, 0x18, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x6C, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x0D, 0x00, + 0x6B, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x6B, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x86, 0x09, 0x0E, 0x32, 0x74, 0x42, 0xF6, 0x32, 0x33, 0x09, 0x0E, 0x00, 0x6C, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x82, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x83, 0x00, 0x6C, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x0A, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x83, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6C, 0x86, 0x00, 0x8C, 0x00, 0xCD, 0x19, 0xB1, 0x32, 0x53, 0x2A, 0x32, 0x19, 0x90, 0x00, 0xAC, 0x05, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x10, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x4C, 0x0A, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x4C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x83, 0x00, 0xAD, + 0x32, 0x53, 0x53, 0x77, 0x09, 0x2E, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x8D, 0x07, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x05, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6B, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x84, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0xAD, 0x00, 0x8D, 0x04, 0x00, 0x6C, 0x87, 0x00, 0xAD, 0x09, 0x0E, 0x32, 0x94, 0x2A, 0x33, 0x00, 0xCE, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x81, 0x00, 0x8D, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x0B, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x0E, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x84, 0x00, 0xAD, 0x00, 0xCE, 0x01, 0x2F, 0x43, 0x16, 0x00, 0xEE, 0x02, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x81, 0x00, 0x8D, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x01, 0x00, 0x8C, + 0x18, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x0A, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8D, 0x81, 0x00, 0x6C, 0x00, 0x4C, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x4C, 0x2A, 0x12, 0x19, 0xD1, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x83, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x0C, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x85, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x85, 0x00, 0x8D, 0x00, 0xCE, 0x32, 0x94, 0x11, 0x91, 0x00, 0xAD, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x0A, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x07, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x05, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x81, 0x00, 0xAD, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, + 0x85, 0x00, 0xAD, 0x21, 0xF2, 0x42, 0xF6, 0x00, 0xEE, 0x00, 0xAD, 0x00, 0x8D, 0x02, 0x00, 0x6D, 0x80, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x89, 0x00, 0x4C, 0x00, 0x6C, 0x00, 0x4B, 0x08, 0x2B, 0x08, 0x0A, 0x73, 0x16, 0x28, 0xEE, 0x08, 0x0A, 0x08, 0x2B, 0x08, 0x6C, 0x01, 0x00, 0x6C, 0x83, 0x00, 0x4C, 0x00, 0x6C, 0x00, 0x4C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x07, 0x00, 0x6C, 0x80, 0x00, 0x8D, 0x03, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x05, 0x00, 0x8C, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x6B, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x07, 0x00, 0x8C, 0x85, 0x00, 0xAD, 0x11, 0x70, 0x3A, 0xD5, 0x22, 0x13, 0x00, 0xCD, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x4C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x08, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x14, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6B, 0x03, 0x00, 0x6C, 0x81, 0x00, 0x4B, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x8B, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x85, 0x00, 0xAD, 0x09, 0x2F, 0x3A, 0xB5, + 0x3A, 0xD5, 0x11, 0x70, 0x00, 0xAD, 0x0D, 0x00, 0x6C, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x03, 0x00, 0x6B, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x05, 0x00, 0x6B, 0x84, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x8B, 0x06, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x81, 0x00, 0x6B, 0x00, 0x8C, 0x02, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x82, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x84, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x8C, 0x01, 0x00, 0xAC, 0x85, 0x00, 0xED, 0x21, 0xF1, 0x43, 0x36, 0x32, 0x94, 0x09, 0x2E, 0x00, 0xAD, 0x05, 0x00, 0x6C, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x10, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6C, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x0F, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x84, 0x08, 0xED, 0x32, 0x53, 0x4A, 0xF6, 0x32, 0x53, 0x11, 0x4F, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x84, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x15, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x6B, 0x84, 0x00, 0x8C, 0x00, + 0x6C, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x07, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x89, 0x00, 0x6C, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x8C, 0x11, 0x4F, 0x2A, 0x32, 0x3A, 0x94, 0x21, 0xF2, 0x09, 0x0E, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x6C, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x0A, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x18, 0x00, 0x6C, 0x83, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x82, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x4B, 0x00, 0x6C, 0x00, 0x4B, 0x03, 0x00, 0x6C, 0x81, 0x00, 0x4C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x85, 0x00, 0xAC, 0x32, 0x94, 0x43, 0x16, 0x01, 0x0E, 0x00, 0xAC, 0x00, 0x8C, 0x0C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x09, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x83, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x07, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x8B, 0x00, 0x6B, 0x0A, 0x00, 0x6C, 0x88, 0x00, 0xAD, 0x00, 0xCD, 0x22, 0x12, 0x3A, 0xD5, 0x00, + 0xEE, 0x00, 0xAD, 0x00, 0x8D, 0x00, 0x6C, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x0C, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x12, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x0C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x86, 0x00, 0xAD, 0x00, 0xCD, 0x19, 0xF2, 0x32, 0x74, 0x00, 0x8D, 0x00, 0xAD, 0x00, 0x6D, 0x09, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x16, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x10, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x01, 0x00, 0x4C, 0x81, 0x22, 0x12, 0x19, 0xB1, 0x01, 0x00, 0x8D, 0x80, 0x00, 0x8C, 0x09, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x0C, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x10, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x0A, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x84, 0x00, 0xAD, 0x21, 0xF2, 0x3A, 0xD5, 0x00, 0xCD, 0x00, 0x8D, 0x10, 0x00, 0x6C, 0x84, + 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x10, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x8D, 0x83, 0x00, 0xEE, 0x32, 0x54, 0x32, 0x95, 0x00, 0xCE, 0x02, 0x00, 0x8D, 0x01, 0x00, 0x6D, 0x07, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x03, 0x00, 0x4B, 0x86, 0x00, 0x0A, 0x10, 0x8C, 0x08, 0x2B, 0x00, 0x0A, 0x08, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x4C, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x0A, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x06, 0x00, 0x6B, 0x86, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x4C, 0x00, 0x4B, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x89, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x8D, 0x00, 0xAD, 0x09, 0x4F, 0x32, 0x95, 0x32, 0x74, 0x00, 0xEE, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x4C, 0x03, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x07, 0x00, 0x6C, 0x81, 0x00, 0x6B, 0x00, 0x6C, 0x07, 0x00, 0x6B, 0x03, + 0x00, 0x6C, 0x0B, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x83, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x06, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x86, 0x00, 0xAC, 0x00, 0xCD, 0x19, 0xB1, 0x3A, 0xB5, 0x32, 0x53, 0x08, 0xEE, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x09, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x0A, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x0E, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x88, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0xAC, 0x00, 0xCC, 0x01, 0x0D, 0x22, 0x12, 0x43, 0x36, 0x32, 0x73, 0x09, 0x0E, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x08, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x0E, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x8A, 0x08, 0xED, 0x2A, 0x12, 0x42, 0xF5, 0x32, 0x73, 0x11, 0x2E, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x07, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x04, + 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x12, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x85, 0x00, 0xCD, 0x21, 0xD1, 0x32, 0x53, 0x32, 0x73, 0x19, 0xB0, 0x00, 0xAC, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x8C, 0x10, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x04, 0x00, 0x6B, 0x08, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x07, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x05, 0x00, 0x6B, 0x09, 0x00, 0x6C, 0x83, 0x00, 0x8C, 0x00, 0xCD, 0x3A, 0xD5, 0x32, 0x94, 0x01, 0x00, 0xCD, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x6C, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x6B, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x81, + 0x00, 0x6B, 0x00, 0x8C, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x87, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x8B, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0x8C, 0x00, 0x6B, 0x04, 0x00, 0x6C, 0x01, 0x00, 0x4C, 0x87, 0x00, 0x6C, 0x00, 0xAD, 0x00, 0xCD, 0x19, 0xB0, 0x4B, 0x36, 0x09, 0x4F, 0x00, 0xAD, 0x00, 0x8D, 0x01, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x09, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x06, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x0A, 0x00, 0x6C, 0x83, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x01, 0x00, 0xAD, 0x82, 0x43, 0x16, 0x11, 0x90, 0x00, 0x8D, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x06, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x85, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x03, + 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x08, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x4C, 0x82, 0x00, 0x2B, 0x2A, 0x32, 0x19, 0xD1, 0x01, 0x00, 0x8D, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x4C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x83, 0x00, 0xAD, 0x09, 0x2F, 0x43, 0x16, 0x00, 0xEE, 0x06, 0x00, 0x6C, 0x82, 0x00, 0x4B, 0x00, 0x6C, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x07, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x03, 0x00, 0x6C, + 0x80, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x85, 0x00, 0xAD, 0x01, 0x0E, 0x2A, 0x54, 0x19, 0xD2, 0x00, 0x6D, 0x00, 0x8D, 0x07, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x6B, 0x06, 0x00, 0x4B, 0x04, 0x00, 0x6C, 0x03, 0x00, 0x6B, 0x08, 0x00, 0x6C, 0x86, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x4B, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x81, 0x00, 0x6B, 0x00, 0x6C, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x0A, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x86, 0x00, 0x8C, 0x00, 0xAD, 0x09, 0x4F, 0x3A, 0xB5, 0x3A, 0xD5, 0x09, 0x2F, 0x00, 0xAD, 0x04, 0x00, 0x6C, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x11, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x6C, 0x03, 0x00, 0x4B, 0x11, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x8B, 0x00, 0x6B, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x6C, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x85, 0x09, 0x0E, 0x32, 0x94, 0x3A, 0xD5, 0x19, 0x90, 0x00, 0xCD, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, + 0x01, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x0F, 0x00, 0x6B, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x09, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x0B, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x8C, 0x01, 0x00, 0xAC, 0x87, 0x09, 0x0E, 0x32, 0x73, 0x4B, 0x36, 0x32, 0x53, 0x09, 0x0E, 0x00, 0xAC, 0x00, 0x6C, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x0C, 0x00, 0x4B, 0x0E, 0x00, 0x6B, 0x88, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0xAD, 0x32, 0x53, 0x53, 0x36, 0x32, 0x53, 0x11, 0x4F, 0x00, 0xAC, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6B, 0x03, 0x00, 0x8B, 0x13, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x09, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x6C, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x87, 0x00, 0x6C, 0x00, 0x8C, 0x09, 0x2E, 0x2A, 0x32, 0x32, 0x93, 0x21, 0xF1, + 0x00, 0xCD, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x07, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x84, 0x00, 0xAD, 0x42, 0xF5, 0x2A, 0x53, 0x00, 0xED, 0x00, 0xAC, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x83, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8C, 0x05, 0x00, 0x6B, 0x01, 0x00, 0x8C, 0x83, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0x6B, 0x0D, 0x00, 0x6C, 0x84, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6B, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x04, 0x00, 0x6C, 0x87, 0x00, 0x4C, 0x00, 0x8C, 0x00, 0xEE, 0x09, 0x2E, 0x42, 0xF6, 0x19, + 0xD1, 0x00, 0xCD, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x04, 0x00, 0x6B, 0x05, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x06, 0x00, 0x6C, 0x05, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x07, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x08, 0x00, 0x6C, 0x83, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x05, 0x00, 0x6B, 0x05, 0x00, 0x6C, 0x86, 0x00, 0x8D, 0x00, 0xAD, 0x09, 0x2F, 0x43, 0x16, 0x00, 0xEE, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x4C, 0x07, 0x00, 0x6C, 0x81, 0x00, 0xAC, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6B, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x05, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x04, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x03, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x81, 0x00, 0x6B, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x8B, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x85, 0x00, 0x4C, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x2B, 0x22, 0x12, 0x19, 0xB1, 0x01, 0x00, 0x8D, 0x01, 0x00, 0x8C, 0x86, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x06, 0x00, + 0x8C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x0E, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x81, 0x00, 0x6B, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x82, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x86, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x86, 0x00, 0x8C, 0x00, 0xCD, 0x2A, 0x94, 0x11, 0xB0, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x4C, 0x04, 0x00, 0x6C, 0x81, 0x00, 0x6B, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x07, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x6C, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x87, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0xAD, 0x09, 0x50, 0x2A, 0x74, 0x11, 0x70, 0x00, 0xAD, 0x00, 0x8D, 0x06, 0x00, 0x6C, 0x08, 0x00, + 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x8C, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x08, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x84, 0x00, 0xAD, 0x09, 0x0F, 0x2A, 0x53, 0x42, 0xF6, 0x09, 0x2F, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x1C, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x13, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x16, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x85, 0x00, 0x8C, 0x00, 0xCD, 0x19, 0xB0, 0x3A, 0xB4, 0x32, 0x53, 0x09, 0x2F, 0x05, 0x00, 0x6C, 0x86, 0x00, 0x4B, 0x00, 0x6C, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x13, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x14, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x83, 0x00, 0x8B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x85, 0x00, 0xCC, 0x09, 0x2E, 0x2A, 0x32, 0x42, 0xD5, 0x2A, 0x32, 0x00, 0xED, 0x01, 0x00, 0x8C, 0x81, 0x00, 0x6C, 0x00, 0x6B, + 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x0B, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x8C, 0x85, 0x00, 0xED, 0x22, 0x12, 0x42, 0xF6, 0x32, 0x53, 0x09, 0x0E, 0x00, 0x8C, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x07, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x13, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x85, 0x00, 0x8C, 0x00, 0xCD, 0x19, 0xB0, 0x3A, 0xD4, 0x32, 0x53, 0x11, 0x4E, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x24, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x0C, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x86, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x6C, 0x00, 0x8C, 0x09, 0x2E, 0x42, 0xF5, 0x22, + 0x12, 0x01, 0x00, 0xCD, 0x80, 0x00, 0x6C, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x12, 0x00, 0x6B, 0x82, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x6C, 0x05, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x84, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6C, 0x0D, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x8B, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6C, 0x00, 0x4C, 0x01, 0x00, 0x6C, 0x86, 0x00, 0xAD, 0x00, 0xCD, 0x3A, 0xB4, 0x2A, 0x32, 0x00, 0xAC, 0x00, 0x6C, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x6B, 0x00, 0x8B, 0x05, 0x00, 0x6B, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x09, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x82, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x6B, 0x04, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x6C, 0x04, 0x00, 0x6B, 0x82, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x6C, 0x01, 0x00, 0x4C, 0x86, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0xCD, 0x32, 0x94, 0x19, 0xD1, 0x00, 0xAD, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x6C, + 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x0D, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x8C, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x85, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x83, 0x2A, 0x12, 0x19, 0xB1, 0x00, 0x8D, 0x00, 0x8C, 0x09, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x81, 0x00, 0x6B, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x0A, 0x00, 0x6C, 0x81, 0x00, 0x6B, 0x00, 0x6C, 0x07, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x83, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x82, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x08, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x6C, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x85, 0x00, 0x4B, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0xCD, 0x19, 0xF2, 0x32, 0xD5, 0x05, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6B, 0x02, 0x00, 0x6C, + 0x80, 0x00, 0x4B, 0x05, 0x00, 0x6C, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x8C, 0x04, 0x00, 0x6C, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x6B, 0x83, 0x00, 0x4B, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x02, 0x00, 0x8C, 0x81, 0x00, 0x6B, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x86, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0xCD, 0x11, 0x90, 0x3A, 0xF6, 0x01, 0x0E, 0x00, 0x8D, 0x03, 0x00, 0x6C, 0x81, 0x00, 0x4B, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x04, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x23, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x6C, 0x87, 0x00, 0x4C, 0x00, 0x6C, 0x00, 0x8D, 0x00, 0xCD, 0x21, 0xF2, 0x3A, 0xF5, 0x11, 0x6F, 0x00, 0xAD, 0x01, 0x00, 0x6C, 0x05, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x0B, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x03, 0x00, + 0x6B, 0x80, 0x00, 0x8B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x0B, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x87, 0x00, 0x6B, 0x00, 0x8C, 0x09, 0x0E, 0x2A, 0x33, 0x3A, 0xB5, 0x21, 0xD1, 0x00, 0xCD, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x4B, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x04, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x06, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x8B, 0x12, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x88, 0x00, 0x8C, 0x00, 0xAC, 0x11, 0x4E, 0x32, 0x73, 0x3A, 0xB4, 0x21, 0xF1, 0x01, 0x0D, 0x00, 0xAC, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x06, 0x00, 0x4B, 0x84, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x06, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x88, 0x00, 0x6C, 0x00, 0x8C, 0x08, 0xEE, 0x2A, 0x12, 0x42, 0xF6, 0x32, 0x94, 0x11, 0x4F, 0x00, 0xAD, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x8B, + 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x07, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x8C, 0x84, 0x11, 0x6F, 0x32, 0x53, 0x3A, 0xB4, 0x19, 0xB0, 0x00, 0xCC, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x86, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x24, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x06, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x6C, 0x00, 0x4B, 0x02, 0x00, 0x6C, 0x86, 0x00, 0x8C, 0x11, 0x4F, 0x43, 0x16, 0x19, 0xB0, 0x00, 0xAD, 0x00, 0xAC, 0x00, 0x8C, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x15, 0x00, 0x6B, 0x06, 0x00, 0x4B, 0x83, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x11, 0x00, 0x6B, 0x80, + 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x03, 0x00, 0x8B, 0x06, 0x00, 0x6B, 0x81, 0x00, 0x8B, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x84, 0x00, 0xAD, 0x2A, 0x32, 0x3A, 0x94, 0x00, 0xED, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x0E, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x04, 0x00, 0x6B, 0x09, 0x00, 0x6C, 0x0B, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x0E, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4C, 0x89, 0x00, 0x6D, 0x00, 0x6C, 0x00, 0xEE, 0x3A, 0xF5, 0x09, 0x2F, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x1F, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x1D, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x8B, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x81, 0x2A, 0x12, 0x19, 0xB0, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x04, 0x00, 0x6B, 0x81, 0x00, 0x6C, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x03, 0x00, 0x6B, 0x03, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x07, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x04, + 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x04, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x84, 0x00, 0xAD, 0x01, 0x2F, 0x43, 0x16, 0x00, 0xEE, 0x00, 0x8C, 0x05, 0x00, 0x6C, 0x81, 0x00, 0x6B, 0x00, 0x8C, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x6C, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x04, 0x00, 0x6B, 0x03, 0x00, 0x6C, 0x81, 0x00, 0x4B, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x84, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x22, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x03, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x86, 0x00, 0x6B, 0x00, 0xAD, 0x01, 0x0E, 0x22, 0x12, 0x32, 0xB5, 0x00, 0x8D, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x4B, 0x0E, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x13, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x0F, 0x00, 0x6B, 0x81, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x85, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0xCD, 0x19, 0xB1, 0x3A, 0xD5, 0x19, 0xB1, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x07, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x8B, 0x0E, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x0D, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4B, + 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x85, 0x00, 0x8C, 0x00, 0xAD, 0x11, 0x6F, 0x2A, 0x53, 0x32, 0x53, 0x09, 0x2F, 0x03, 0x00, 0x6C, 0x02, 0x00, 0x4B, 0x0C, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x08, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x12, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x86, 0x00, 0x8B, 0x00, 0xCC, 0x09, 0x4E, 0x2A, 0x32, 0x32, 0x93, 0x21, 0xD1, 0x00, 0xED, 0x01, 0x00, 0x8C, 0x80, 0x00, 0x6C, 0x09, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x81, 0x00, 0x8B, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x2A, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x85, 0x00, 0x6B, 0x08, 0xED, 0x21, 0xF1, 0x42, 0xD5, 0x3A, 0x94, 0x11, 0x2F, 0x02, 0x00, 0x8C, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x14, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, + 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x05, 0x00, 0x4B, 0x87, 0x00, 0x6B, 0x00, 0x6C, 0x09, 0x0E, 0x21, 0xF1, 0x32, 0x94, 0x2A, 0x12, 0x09, 0x0E, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x0B, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x14, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x85, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0xAC, 0x19, 0xB0, 0x3A, 0xD5, 0x11, 0x90, 0x01, 0x00, 0xAC, 0x81, 0x00, 0x6B, 0x00, 0x6C, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x13, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x83, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x03, 0x00, 0x8B, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x4B, 0x84, 0x00, 0x6C, 0x00, 0x8C, + 0x19, 0xB1, 0x3A, 0xB5, 0x08, 0xEE, 0x01, 0x00, 0x8C, 0x82, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x81, 0x00, 0x6C, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x2C, 0x00, 0x6B, 0x03, 0x00, 0x4C, 0x87, 0x11, 0x90, 0x22, 0x12, 0x00, 0xCD, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x23, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x20, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x8C, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x82, 0x2A, 0x12, 0x19, 0xD1, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x19, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x31, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x84, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0xCD, 0x2A, 0x33, 0x2A, 0x53, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x82, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x8C, 0x16, 0x00, 0x6B, 0x03, 0x00, 0x4B, + 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x87, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0xCD, 0x09, 0x2F, 0x2A, 0x53, 0x22, 0x12, 0x00, 0xCD, 0x00, 0x8D, 0x03, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x09, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x0B, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x14, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x08, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x86, 0x00, 0x8C, 0x00, 0xAD, 0x19, 0x90, 0x3A, 0xD5, 0x22, 0x12, 0x00, 0xAD, 0x00, 0x6C, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x81, 0x00, 0x8B, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x09, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x15, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x88, 0x00, 0x6C, 0x00, 0x8C, 0x09, 0x0E, 0x19, 0xB1, 0x32, 0x74, 0x2A, 0x12, 0x00, 0xCD, 0x00, 0x6C, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x09, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, + 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x88, 0x00, 0x8C, 0x00, 0xCC, 0x11, 0x6F, 0x2A, 0x52, 0x32, 0x94, 0x2A, 0x32, 0x09, 0x0E, 0x00, 0x8C, 0x00, 0x6C, 0x03, 0x00, 0x4B, 0x82, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x08, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x84, 0x00, 0x4A, 0x00, 0x2A, 0x00, 0x4A, 0x00, 0x2A, 0x00, 0x4A, 0x08, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x86, 0x00, 0x8C, 0x32, 0x32, 0x42, 0xF5, 0x32, 0x73, 0x11, 0x6F, 0x00, 0xAD, 0x00, 0x8C, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x06, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x06, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x86, 0x00, 0x8C, 0x11, 0x6F, 0x3A, 0x94, 0x3A, 0xB4, 0x19, 0xB0, 0x00, 0xAC, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x81, 0x00, 0x4A, + 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x0A, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x87, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x8C, 0x2A, 0x32, 0x3A, 0xD5, 0x11, 0x6F, 0x00, 0xAC, 0x00, 0x8C, 0x0C, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x09, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x0B, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x87, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6C, 0x08, 0xEE, 0x42, 0xD5, 0x11, 0x70, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x81, + 0x00, 0x6B, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x14, 0x00, 0x6B, 0x80, 0x00, 0x6C, 0x09, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4C, 0x01, 0x00, 0x6C, 0x84, 0x32, 0x94, 0x11, 0x90, 0x00, 0x8C, 0x00, 0x6C, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x14, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x34, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x84, 0x00, 0x4B, 0x00, 0x2A, 0x22, 0x12, 0x19, 0xB0, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x1B, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x0C, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x1F, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x85, 0x00, 0x6C, 0x00, 0x8C, 0x11, 0x2F, 0x43, 0x16, 0x00, 0xEE, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x4B, 0x07, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x14, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x14, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x0D, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8C, 0x01, 0x00, 0xAD, 0x83, 0x09, 0x2F, 0x3A, 0xD5, 0x11, 0x90, 0x00, 0x8C, 0x02, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, + 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x1E, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x86, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x85, 0x00, 0x6C, 0x00, 0xAD, 0x11, 0x70, 0x3A, 0xD5, 0x2A, 0x12, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x84, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x0A, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x84, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x07, 0x00, 0x4B, 0x87, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0xAC, 0x11, 0x4F, 0x32, 0x73, 0x3A, 0x94, 0x11, 0x4F, 0x00, 0x8C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, + 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x87, 0x00, 0x8C, 0x00, 0xCD, 0x11, 0x6F, 0x2A, 0x32, 0x32, 0x94, 0x2A, 0x12, 0x09, 0x0E, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x2A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x85, 0x00, 0xAC, 0x21, 0xB0, 0x3A, 0xB4, 0x3A, 0x94, 0x19, 0x8F, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x09, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, + 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x04, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x85, 0x00, 0x8B, 0x00, 0xCD, 0x21, 0xF1, 0x3A, 0xB4, 0x32, 0x52, 0x09, 0x0E, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x0C, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x09, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x07, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x85, 0x00, 0xAC, 0x2A, 0x32, 0x32, 0x94, 0x11, 0x2E, 0x00, 0x8C, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x8B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x07, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x07, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x03, 0x00, 0x6B, + 0x02, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x84, 0x00, 0x6C, 0x00, 0xCD, 0x42, 0xF5, 0x21, 0xD1, 0x00, 0x8C, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x82, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x08, 0x00, 0x6B, 0x83, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x07, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x83, 0x09, 0x0F, 0x3A, 0xD5, 0x00, 0xED, 0x00, 0xAC, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x0A, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x11, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x1F, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x84, 0x00, 0x4B, 0x22, 0x12, 0x11, 0x90, 0x00, 0x8C, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x0C, 0x00, 0x6B, 0x80, 0x00, 0x8C, 0x02, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x17, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x02, 0x00, + 0x4B, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x8B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x85, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6C, 0x00, 0x8C, 0x32, 0x94, 0x19, 0xB0, 0x01, 0x00, 0x6C, 0x03, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x07, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x8B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x84, 0x00, 0x8C, 0x00, 0xCD, 0x11, 0xB1, 0x3A, 0xF6, 0x01, 0x0E, 0x02, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x0D, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x06, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x84, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x84, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0x8C, 0x02, 0x00, 0x4B, 0x89, 0x00, + 0x6B, 0x00, 0x8C, 0x09, 0x2F, 0x3A, 0x94, 0x21, 0xF2, 0x00, 0xAD, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x84, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x07, 0x00, 0x6B, 0x83, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x83, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x82, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x87, 0x00, 0x8C, 0x00, 0xED, 0x21, 0xD1, 0x3A, 0x73, 0x21, 0xF1, 0x00, 0xCD, 0x00, 0x6B, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x08, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, + 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x04, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x8A, 0x00, 0xAC, 0x00, 0xCC, 0x11, 0x8F, 0x2A, 0x12, 0x32, 0x94, 0x22, 0x11, 0x09, 0x2E, 0x00, 0xAC, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x85, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x05, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x8B, 0x00, 0xAC, 0x21, 0xB0, 0x01, 0x3A, 0xB4, 0x82, 0x19, 0xB0, 0x00, 0xAC, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x85, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x83, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x86, 0x00, 0x8C, 0x11, 0x4E, 0x32, + 0x73, 0x3A, 0xD4, 0x11, 0x4E, 0x00, 0xAC, 0x00, 0x6B, 0x07, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x84, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x05, 0x00, 0x6B, 0x07, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x84, 0x00, 0x8C, 0x00, 0xCD, 0x3A, 0xD4, 0x3A, 0x94, 0x09, 0x0E, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x8B, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x0D, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x89, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x01, 0x32, 0x73, 0x81, 0x00, 0xAC, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x80, 0x00, + 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x07, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x18, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x84, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x02, 0x00, 0x6C, 0x82, 0x32, 0x54, 0x2A, 0x33, 0x00, 0xAD, 0x09, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x11, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x15, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x86, 0x00, 0x2A, 0x22, 0x12, 0x11, 0x90, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x06, 0x00, 0x4B, 0x11, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x18, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6C, 0x81, 0x11, 0x90, 0x32, 0x94, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x0B, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x80, + 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x11, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x87, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0xED, 0x22, 0x12, 0x32, 0x74, 0x00, 0xCD, 0x00, 0x6C, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x8B, 0x00, 0x8C, 0x00, 0x4B, 0x00, 0x2A, 0x01, 0x00, 0x4B, 0x85, 0x00, 0x6B, 0x00, 0x8C, 0x09, 0x0E, 0x32, 0x74, 0x32, 0x54, 0x00, 0xAC, 0x01, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, + 0x05, 0x00, 0x4A, 0x83, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x8B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x05, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x82, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x87, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0xAC, 0x11, 0x4F, 0x32, 0x53, 0x32, 0x73, 0x11, 0x4E, 0x00, 0x8C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x0A, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x88, 0x00, 0x8B, 0x00, 0xAC, 0x00, 0xED, 0x11, 0x6F, 0x22, 0x32, 0x32, 0x93, 0x22, 0x11, 0x08, 0xED, 0x00, 0x8B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x80, 0x00, + 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x85, 0x00, 0xCD, 0x19, 0x90, 0x32, 0x73, 0x3A, 0x93, 0x21, 0xB0, 0x00, 0xAC, 0x03, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x87, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x07, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x07, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x8B, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x87, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0xED, 0x21, 0xF1, 0x32, 0x93, 0x2A, 0x11, 0x00, 0xED, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x2A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x14, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x07, 0x00, 0x6B, 0x80, 0x00, + 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x84, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x86, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0xED, 0x42, 0xF5, 0x32, 0x53, 0x00, 0xCD, 0x00, 0x8B, 0x05, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x1E, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x88, 0x00, 0x6C, 0x00, 0x8C, 0x2A, 0x12, 0x3A, 0x94, 0x00, 0xED, 0x00, 0x8C, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x0D, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x14, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x83, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x84, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x00, + 0x4B, 0x01, 0x00, 0x6C, 0x83, 0x00, 0xCE, 0x42, 0xF6, 0x11, 0x4F, 0x00, 0x8C, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x1F, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x84, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x81, 0x2A, 0x32, 0x19, 0xB0, 0x01, 0x00, 0x6C, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x07, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x09, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x17, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x84, 0x00, 0x8C, 0x00, 0xED, 0x42, 0xF5, 0x08, 0xED, 0x00, 0x8C, 0x01, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x07, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x17, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x8B, 0x02, 0x00, 0x6B, + 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x85, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0xCD, 0x2A, 0x53, 0x21, 0xF2, 0x00, 0x8C, 0x01, 0x00, 0x6C, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x0B, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x0A, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x82, 0x00, 0x6B, 0x00, 0x8C, 0x08, 0xEE, 0x01, 0x32, 0x74, 0x80, 0x00, 0xED, 0x01, 0x00, 0x8C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x07, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x07, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x02, 0x00, 0x4B, + 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x87, 0x00, 0x8C, 0x08, 0xED, 0x21, 0xF1, 0x3A, 0xB4, 0x2A, 0x11, 0x08, 0xED, 0x00, 0x8B, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x84, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x89, 0x00, 0x8B, 0x00, 0x8C, 0x00, 0xAC, 0x01, 0x0D, 0x19, 0x8F, 0x22, 0x11, 0x32, 0x53, 0x19, 0xB0, 0x00, 0xED, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x09, 0x00, 0x4B, 0x85, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x2A, 0x01, 0x00, 0x4B, 0x87, 0x00, 0x8C, 0x00, 0xAC, 0x19, 0x70, 0x32, 0x53, 0x3A, 0x94, 0x29, 0xF1, 0x08, 0xED, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, + 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x07, 0x00, 0x6B, 0x84, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x8B, 0x03, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x84, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x82, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x86, 0x00, 0x8C, 0x11, 0x6F, 0x32, 0x93, 0x3A, 0x94, 0x19, 0xB0, 0x00, 0xAC, 0x00, 0x8B, 0x01, 0x00, 0x4B, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x06, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x08, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x85, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x84, 0x09, 0x0D, 0x42, 0xF5, 0x2A, 0x32, 0x00, 0xCC, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, + 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x84, 0x11, 0x4F, 0x4B, 0x15, 0x11, 0x2E, 0x00, 0x8C, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x0B, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x0B, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x89, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x6C, 0x19, 0xD1, 0x3A, 0xD5, 0x00, 0x8C, + 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x83, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x08, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x29, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x82, 0x00, 0x2A, 0x21, 0xF1, 0x19, 0xB0, 0x01, 0x00, 0x6C, 0x03, 0x00, 0x6B, 0x84, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x09, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x89, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8C, 0x2A, 0x32, 0x32, 0x53, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4B, + 0x07, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x10, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x86, 0x00, 0x6B, 0x00, 0x8C, 0x09, 0x4F, 0x32, 0x94, 0x19, 0xB0, 0x00, 0xAC, 0x00, 0x6C, 0x02, 0x00, 0x4B, 0x83, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x83, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x07, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x0C, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x2A, 0x01, 0x00, 0x4B, 0x85, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0xCD, 0x2A, 0x32, 0x3A, 0xB4, 0x09, 0x2F, 0x01, 0x00, 0x8C, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x8B, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, + 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x83, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x05, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x86, 0x00, 0x6C, 0x00, 0xAC, 0x11, 0x4E, 0x32, 0x53, 0x32, 0x73, 0x19, 0xB0, 0x00, 0xAC, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x86, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x0C, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x86, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x84, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x8A, 0x00, 0x8B, 0x00, 0xAC, 0x00, 0xED, 0x11, 0x8F, 0x22, 0x11, 0x2A, 0x52, 0x21, 0xD0, 0x00, 0xCC, 0x00, 0x8B, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x87, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x82, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, + 0x00, 0x2A, 0x03, 0x00, 0x4B, 0x82, 0x00, 0x2A, 0x00, 0x4A, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x86, 0x00, 0xAC, 0x11, 0x70, 0x32, 0x73, 0x32, 0x53, 0x21, 0xD1, 0x09, 0x0E, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x08, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x09, 0x00, 0x4B, 0x85, 0x00, 0x8C, 0x00, 0xCD, 0x21, 0xD1, 0x32, 0x73, 0x29, 0xF1, 0x08, 0xED, 0x03, 0x00, 0x6B, 0x05, 0x00, 0x4A, 0x03, 0x00, 0x2A, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x8B, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x82, 0x00, + 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x83, 0x11, 0x6E, 0x42, 0xD4, 0x21, 0xD0, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x07, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x87, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x84, 0x08, 0xED, 0x42, 0xD4, 0x19, 0x6F, 0x00, 0xAC, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x83, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x06, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x06, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6A, + 0x05, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x83, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x8B, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x84, 0x00, 0x6B, 0x00, 0x8C, 0x3A, 0xD5, 0x19, 0xD1, 0x00, 0x8C, 0x02, 0x00, 0x6B, 0x84, 0x00, 0x8B, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x06, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x0C, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x0C, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x81, 0x2A, 0x11, 0x11, 0x8F, 0x01, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x0B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x07, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x83, 0x00, + 0x4B, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x84, 0x00, 0x4B, 0x00, 0x8C, 0x09, 0x0E, 0x42, 0xB4, 0x00, 0xAC, 0x03, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x08, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x09, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x06, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x84, 0x00, 0x8C, 0x19, 0xB0, 0x3A, 0xF5, 0x09, 0x2F, 0x00, 0x6C, 0x05, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x84, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x08, 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x84, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x84, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x81, 0x00, + 0x6B, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x05, 0x00, 0x4B, 0x87, 0x00, 0x6C, 0x00, 0xAC, 0x2A, 0x12, 0x3A, 0xD5, 0x11, 0x90, 0x00, 0xAC, 0x00, 0x8C, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x07, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x87, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0xAC, 0x21, 0xD1, 0x3A, 0x94, 0x2A, 0x32, 0x09, 0x2E, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x83, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0B, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, + 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x84, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x2A, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x8C, 0x00, 0x8C, 0x08, 0xED, 0x19, 0xD0, 0x32, 0x73, 0x2A, 0x73, 0x11, 0x6F, 0x00, 0xCC, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x07, 0x00, 0x4B, 0x8F, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0xCD, 0x11, 0x6F, 0x2A, 0x53, 0x3A, 0xD5, 0x22, 0x12, 0x09, 0x0E, 0x00, 0xAC, 0x00, 0x8C, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x0C, 0x00, 0x4A, 0x81, 0x00, 0x2A, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x07, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x85, 0x00, 0xCD, 0x19, 0x6F, 0x2A, 0x12, 0x32, 0x73, 0x11, 0x6F, 0x00, 0xAC, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x83, + 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x08, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x85, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x85, 0x00, 0x6B, 0x00, 0x8C, 0x21, 0xB0, 0x4B, 0x35, 0x21, 0xD0, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x07, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x84, 0x00, 0xAC, 0x42, 0xD4, 0x29, 0xF1, 0x00, 0xAC, 0x00, 0x6B, 0x06, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x4A, 0x00, + 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x85, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x86, 0x00, 0x6A, 0x00, 0x8B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x85, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x85, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x6B, 0x11, 0x2E, 0x4B, 0x36, 0x00, 0xED, 0x03, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x0A, 0x00, 0x6B, 0x85, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x03, 0x00, + 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x81, 0x22, 0x11, 0x11, 0x8F, 0x03, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x83, 0x00, 0x6B, 0x00, 0x8C, 0x32, 0x53, 0x11, 0x4E, 0x04, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x07, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, + 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x84, 0x00, 0xAC, 0x22, 0x12, 0x3A, 0xB4, 0x00, 0xCD, 0x00, 0x8C, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x09, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x89, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0xCC, 0x19, 0x90, 0x3A, 0xB4, 0x22, 0x11, 0x00, 0xCC, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0E, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x82, + 0x00, 0x2A, 0x00, 0x4A, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x87, 0x00, 0x6B, 0x00, 0x8C, 0x09, 0x0E, 0x29, 0xF1, 0x3A, 0x93, 0x21, 0xB0, 0x00, 0xAC, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0E, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0C, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x2A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x05, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x86, 0x00, 0xAC, 0x09, 0x2E, 0x19, 0xD0, 0x32, 0xB4, 0x2A, 0x32, 0x09, 0x4E, 0x00, 0xCC, 0x02, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x07, 0x00, 0x4B, 0x82, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x89, 0x00, 0x4B, 0x00, 0x8C, 0x11, 0x4F, 0x2A, 0x32, 0x32, 0x74, 0x21, 0xF2, 0x09, 0x2E, 0x00, 0xAC, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, + 0x01, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x84, 0x09, 0x2E, 0x21, 0xD1, 0x2A, 0x12, 0x29, 0xF1, 0x08, 0xED, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x83, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x16, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x85, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x8B, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x86, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x8C, 0x21, 0xD1, 0x4B, 0x15, 0x11, 0x6F, 0x01, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x2A, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x0D, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x0A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x81, 0x00, + 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x85, 0x00, 0x8B, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x85, 0x00, 0x6B, 0x00, 0x8B, 0x2A, 0x32, 0x32, 0x52, 0x00, 0xCD, 0x00, 0x6C, 0x01, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x03, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x86, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x07, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x0A, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x07, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x09, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x88, 0x00, 0x4B, 0x00, 0x8C, 0x32, 0x73, 0x2A, 0x32, 0x00, 0xAC, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x0F, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x86, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x07, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x88, 0x00, 0x4A, 0x00, 0x6A, 0x00, + 0x4A, 0x00, 0x29, 0x00, 0x4A, 0x00, 0x2A, 0x00, 0x4A, 0x2A, 0x11, 0x19, 0x90, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x07, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x88, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x8A, 0x00, 0x8C, 0x19, 0x6F, 0x3A, 0x73, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x2A, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, + 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x83, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x86, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0xED, 0x32, 0x73, 0x2A, 0x32, 0x00, 0xAC, 0x00, 0x6C, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x84, 0x00, 0x6A, 0x00, 0x8B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x05, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x87, 0x00, 0x8C, 0x11, 0x6F, 0x32, 0xB4, 0x32, 0x73, 0x00, 0xED, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x4B, 0x03, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x0B, + 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0C, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x05, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x85, 0x00, 0x8C, 0x11, 0x4E, 0x32, 0x52, 0x2A, 0x52, 0x09, 0x2E, 0x00, 0xAC, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x82, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x0B, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x0E, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0B, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x05, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x8B, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x86, 0x00, 0x8C, 0x00, 0xCC, 0x09, 0x2E, 0x22, 0x32, 0x32, 0x94, 0x22, 0x11, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x2A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x89, 0x00, 0x4A, 0x00, 0x2A, 0x00, 0x6B, 0x11, 0x2E, 0x2A, 0x12, 0x32, 0x73, 0x2A, 0x32, 0x11, 0x4F, 0x00, 0xCD, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x84, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x03, + 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x0C, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x86, 0x00, 0x6B, 0x00, 0xAC, 0x19, 0x90, 0x2A, 0x32, 0x2A, 0x52, 0x11, 0x6F, 0x00, 0x8C, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x18, 0x00, 0x6A, 0x84, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x88, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x8C, 0x2A, 0x11, 0x42, 0xF5, 0x09, 0x0D, 0x00, 0x8B, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x0B, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x84, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x0E, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x0B, 0x00, + 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x86, 0x00, 0x6B, 0x00, 0x8B, 0x11, 0x6F, 0x3A, 0xD4, 0x09, 0x0E, 0x00, 0x8C, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x14, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x09, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x01, 0x00, 0x4B, 0x84, 0x00, 0xAC, 0x42, 0xF5, 0x11, 0x4F, 0x00, 0x8C, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x84, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, + 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x81, 0x21, 0xF1, 0x11, 0x8F, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x8C, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x07, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x0A, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x82, 0x00, 0xCD, 0x42, 0xB4, 0x11, 0x0E, 0x01, 0x00, 0x4B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x0A, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x06, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, + 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x86, 0x00, 0x6B, 0x00, 0x8B, 0x09, 0x0D, 0x32, 0x93, 0x21, 0xF1, 0x00, 0x8C, 0x00, 0x6C, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x85, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x18, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x85, 0x00, 0x6B, 0x00, 0x8C, 0x01, 0x0E, 0x32, 0x73, 0x42, 0xF5, 0x09, 0x0E, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x81, 0x00, + 0x6A, 0x00, 0x6B, 0x09, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x0B, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x89, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0xAC, 0x09, 0x0D, 0x19, 0xD0, 0x32, 0x73, 0x21, 0xD0, 0x00, 0xCC, 0x00, 0x8B, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x0C, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x84, 0x00, 0x8C, 0x00, 0xCC, 0x09, 0x6F, 0x2A, 0x32, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x2A, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x87, 0x00, 0x8B, 0x09, 0x2E, 0x2A, 0x32, 0x32, 0x52, 0x2A, 0x12, 0x19, 0x90, 0x00, 0xCC, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x06, 0x00, 0x4B, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x83, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x8B, 0x00, 0x6B, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, + 0x4A, 0x80, 0x00, 0x2A, 0x05, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x06, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x8B, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x85, 0x00, 0x8C, 0x09, 0x0E, 0x21, 0xD0, 0x2A, 0x12, 0x21, 0xD1, 0x00, 0xCD, 0x03, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x07, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x2A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x83, 0x00, 0xCC, 0x32, 0x52, 0x32, 0x53, 0x00, 0xED, 0x01, 0x00, 0x8B, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x03, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x8B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x02, 0x00, 0x6A, + 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x0B, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x8A, 0x00, 0x4B, 0x00, 0x2A, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8C, 0x09, 0x0D, 0x42, 0xF5, 0x19, 0x8F, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x14, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x83, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x82, 0x11, 0x4F, 0x32, 0x73, 0x00, 0xAC, 0x01, 0x00, 0x6B, 0x84, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x82, + 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x8B, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x0A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x8A, 0x04, 0x00, 0x4A, 0x82, 0x22, 0x11, 0x19, 0xB0, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x07, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x06, 0x00, 0x6B, 0x82, 0x32, 0x32, 0x32, 0x52, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x05, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x05, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x88, 0x00, + 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x2A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x86, 0x00, 0x4B, 0x00, 0x6B, 0x11, 0x4F, 0x3A, 0xB5, 0x19, 0x90, 0x00, 0xAC, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x85, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x08, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x2A, 0x0D, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x09, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x89, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0xAC, 0x2A, 0x32, 0x42, 0xD5, 0x11, 0x4F, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0E, 0x00, 0x4A, + 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x01, 0x00, 0xAC, 0x84, 0x09, 0x4E, 0x2A, 0x12, 0x32, 0x73, 0x09, 0x2E, 0x00, 0xAC, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x0D, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0E, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x8B, 0x00, 0x8C, 0x00, 0xAC, 0x01, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x87, 0x11, 0x2E, 0x2A, 0x11, 0x3A, 0xB3, 0x32, 0x52, 0x19, 0x8F, 0x00, 0xCD, 0x00, 0x8B, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x03, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x07, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x85, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x6A, + 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x85, 0x08, 0xCD, 0x19, 0x90, 0x2A, 0x11, 0x2A, 0x32, 0x11, 0x4F, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x0C, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x2A, 0x02, 0x00, 0x4A, 0x85, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x83, 0x00, 0xCC, 0x3A, 0x93, 0x32, 0x72, 0x00, 0xED, 0x01, 0x00, 0x8B, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x85, 0x00, 0x8B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x0C, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x01, + 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x84, 0x00, 0x6B, 0x00, 0xAC, 0x3A, 0xB4, 0x2A, 0x52, 0x00, 0xAC, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x0F, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x8B, 0x00, 0x4B, 0x00, 0x6B, 0x32, 0x52, 0x19, 0xD0, 0x00, 0x8B, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x0A, + 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x81, 0x21, 0xF1, 0x19, 0x8F, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x0B, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x05, 0x00, 0x6B, 0x83, 0x11, 0x4E, 0x53, 0x36, 0x00, 0xAC, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x05, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x84, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x08, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, + 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x2A, 0x08, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x85, 0x00, 0xAC, 0x19, 0xB0, 0x32, 0x53, 0x09, 0x2F, 0x00, 0x8C, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0C, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x84, 0x00, 0x6B, 0x00, 0xCC, 0x19, 0xB0, 0x42, 0xD5, 0x19, 0x90, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x11, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x8C, 0x87, 0x00, 0xED, 0x19, 0xB0, 0x32, 0x93, 0x21, 0xF1, 0x08, 0xED, 0x00, 0x8B, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x84, 0x00, 0x4A, 0x00, 0x4B, + 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x0D, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x2A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x84, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x2A, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x82, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x2A, 0x02, 0x00, 0x4A, 0x88, 0x00, 0x6B, 0x00, 0x8B, 0x09, 0x0D, 0x2A, 0x31, 0x32, 0x93, 0x32, 0x52, 0x19, 0x8F, 0x08, 0xED, 0x00, 0x8B, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x2A, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x2A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, + 0x84, 0x11, 0x0E, 0x21, 0xD1, 0x29, 0xF1, 0x2A, 0x11, 0x08, 0xED, 0x02, 0x00, 0x6B, 0x83, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x0A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x0A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x82, 0x11, 0x2E, 0x42, 0xF5, 0x2A, 0x32, 0x01, 0x00, 0xCC, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x84, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x8B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x08, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x84, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x8C, 0x01, 0x32, 0x73, 0x81, 0x00, 0xED, 0x00, 0x8B, 0x01, 0x00, 0x4B, 0x83, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, + 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x85, 0x00, 0x4B, 0x08, 0xCD, 0x3A, 0xB4, 0x09, 0x0D, 0x00, 0x8B, 0x00, 0x4B, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x0E, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x8A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x49, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x81, 0x21, 0xF1, 0x19, 0xB0, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x81, 0x00, 0x8B, 0x00, 0x6B, 0x02, 0x00, 0x4A, + 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x0C, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x8B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x85, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8B, 0x4B, 0x35, 0x19, 0x8F, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x86, 0x00, 0x6B, 0x00, 0x8C, 0x19, 0xD1, 0x2A, 0x53, 0x09, 0x0E, 0x00, 0x8C, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x09, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x07, 0x00, 0x4A, 0x80, 0x00, + 0x6A, 0x04, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0C, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x85, 0x00, 0x6B, 0x00, 0x8C, 0x11, 0x4F, 0x42, 0xD5, 0x21, 0xF1, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x87, 0x00, 0xAC, 0x09, 0x4E, 0x32, 0x72, 0x3A, 0x93, 0x19, 0x8F, 0x00, 0xAC, 0x00, 0x6B, 0x00, 0x2A, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x06, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, + 0x6A, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x8B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x08, 0x00, 0x4B, 0x89, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0xCC, 0x21, 0xF0, 0x3A, 0xB3, 0x32, 0x93, 0x19, 0xD0, 0x09, 0x0D, 0x00, 0x8B, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x2A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x04, 0x00, 0x4B, 0x81, 0x00, 0xAC, 0x21, 0xB0, 0x01, 0x32, 0x32, 0x81, 0x19, 0x6F, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x12, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, + 0x80, 0x00, 0x4B, 0x09, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x82, 0x19, 0x90, 0x42, 0xF5, 0x21, 0xF1, 0x01, 0x00, 0xAC, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x4A, 0x83, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x09, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x84, 0x19, 0x90, 0x3A, 0xB4, 0x11, 0x6F, 0x00, 0x8B, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x16, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x0D, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x87, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x4B, 0x29, 0xF1, 0x32, 0x53, 0x00, 0xAC, 0x00, 0x6B, 0x00, + 0x4B, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0C, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x07, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x49, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x81, 0x21, 0xD0, 0x19, 0xB0, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x85, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x81, 0x00, 0x2A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0C, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x83, 0x19, 0xD0, 0x42, 0xF4, 0x00, 0x4B, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x1C, 0x00, 0x4A, + 0x01, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0E, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x06, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x2A, 0x01, 0x00, 0x4B, 0x85, 0x00, 0x6C, 0x00, 0xCD, 0x22, 0x12, 0x32, 0x74, 0x00, 0xCD, 0x00, 0x6C, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0B, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x22, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x8C, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x2A, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0xAC, 0x11, 0x2E, 0x42, 0xD5, 0x2A, 0x12, 0x00, 0x8B, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x86, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x24, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x86, 0x00, + 0x8B, 0x00, 0xAB, 0x00, 0xEC, 0x11, 0x8F, 0x32, 0x72, 0x32, 0x32, 0x08, 0xED, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x0A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x15, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x04, 0x00, 0x4B, 0x89, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0xCC, 0x11, 0x8F, 0x32, 0x72, 0x2A, 0x52, 0x19, 0xAF, 0x09, 0x0D, 0x00, 0x8B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x05, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x0C, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x85, 0x00, 0x6B, 0x09, 0x0E, 0x29, 0xF1, 0x32, 0x52, 0x21, 0xD0, 0x09, 0x0D, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x2A, 0x02, 0x00, + 0x4A, 0x01, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x81, 0x00, 0x8A, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x86, 0x00, 0x8B, 0x19, 0x8F, 0x3A, 0x93, 0x19, 0x90, 0x00, 0x8B, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x05, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x84, 0x00, 0x6B, 0x11, 0x4F, 0x3A, 0x94, 0x19, 0x8F, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, + 0x04, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x07, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x89, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0xAC, 0x42, 0xD5, 0x19, 0x90, 0x00, 0x6C, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x05, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x0D, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x01, 0x19, 0xB0, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x0E, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x0F, + 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x83, 0x00, 0x8B, 0x08, 0xED, 0x5B, 0xB8, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x10, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0E, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0E, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x88, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6C, 0x09, 0x0E, 0x3A, 0xD5, 0x22, 0x32, 0x00, 0x8C, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x84, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x11, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0D, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x08, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x87, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8C, 0x09, 0x0E, 0x42, 0xD5, 0x2A, 0x32, + 0x00, 0xAC, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x16, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x85, 0x09, 0x2E, 0x2A, 0x11, 0x3A, 0x73, 0x21, 0xB0, 0x00, 0xAC, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x1F, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x0A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x06, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x2B, 0x04, 0x00, 0x4B, 0x8A, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0x8C, 0x19, 0xB0, 0x3A, 0xB4, 0x32, 0x72, 0x11, 0xAF, 0x09, 0x4E, 0x00, 0xCC, 0x00, 0x8B, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0F, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x05, + 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x87, 0x00, 0x8B, 0x21, 0xB0, 0x32, 0x73, 0x32, 0x32, 0x11, 0x4E, 0x00, 0xAC, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x07, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x81, 0x00, 0x8A, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x83, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x83, 0x00, 0x8C, 0x29, 0xF1, 0x42, 0xD5, 0x11, 0x4E, 0x01, 0x00, 0x6B, 0x86, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0F, 0x00, 0x4A, 0x05, 0x00, 0x6B, + 0x05, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x88, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x08, 0xED, 0x42, 0xB4, 0x21, 0xD0, 0x00, 0xAC, 0x00, 0x8B, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x85, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4B, 0x87, 0x09, 0x2E, 0x42, 0xF5, 0x00, 0xAD, 0x00, 0x6C, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x83, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x05, 0x00, + 0x6A, 0x02, 0x00, 0x4A, 0x12, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x84, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x2A, 0x01, 0x00, 0x4A, 0x81, 0x19, 0x8F, 0x19, 0x90, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x05, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x10, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0B, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x84, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x83, 0x00, 0x6B, 0x00, 0xAC, 0x42, 0xD4, 0x2A, 0x11, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x82, 0x00, 0x2A, 0x00, 0x4A, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x18, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x14, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x2A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x86, 0x00, 0x6C, 0x00, 0x8C, + 0x11, 0xB0, 0x43, 0x16, 0x11, 0x6F, 0x00, 0x8B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x1B, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x6A, 0x1C, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x84, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x8B, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x2A, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0xAC, 0x09, 0x0E, 0x3A, 0x94, 0x42, 0xD5, 0x00, 0xCD, 0x00, 0x8C, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x84, 0x00, 0xCC, 0x19, 0x8F, 0x32, 0x53, 0x32, 0x52, 0x11, 0x4E, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x81, + 0x00, 0x6B, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x10, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x09, 0x00, 0x4B, 0x8C, 0x00, 0x6B, 0x00, 0x8C, 0x09, 0x4E, 0x3A, 0xB4, 0x32, 0x93, 0x19, 0xD0, 0x09, 0x0D, 0x08, 0xED, 0x00, 0x8B, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x2A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x2A, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x84, 0x09, 0x0D, 0x32, 0x73, 0x32, 0x52, 0x21, 0xF1, 0x08, 0xCC, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x4B, 0x00, + 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x06, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x83, 0x00, 0xAC, 0x3A, 0xB4, 0x42, 0xF5, 0x00, 0xED, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x82, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x89, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x87, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x07, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x8B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x8B, 0x00, 0x6B, 0x01, 0x00, 0x4B, + 0x83, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8C, 0x01, 0x2A, 0x32, 0x81, 0x08, 0xED, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x0C, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x0B, 0x00, 0x6A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x87, 0x2A, 0x32, 0x19, 0xD1, 0x00, 0xAC, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x84, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, + 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x09, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x29, 0x00, 0x2A, 0x01, 0x00, 0x4A, 0x81, 0x19, 0xB0, 0x21, 0xF1, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x84, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x83, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x14, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x8C, 0x11, 0x2E, 0x4B, 0x36, 0x00, 0x8B, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x8B, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x84, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x0B, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x4A, + 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x2A, 0x01, 0x00, 0x4B, 0x84, 0x00, 0x6C, 0x00, 0xAD, 0x22, 0x12, 0x32, 0xB4, 0x01, 0x0E, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x84, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x0E, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x09, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x85, 0x00, 0x6B, 0x00, 0x8C, 0x08, 0xED, 0x32, 0x53, 0x42, 0xD5, 0x00, 0xED, 0x02, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x80, 0x00, + 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x8B, 0x87, 0x11, 0x0E, 0x29, 0xF1, 0x3A, 0x73, 0x19, 0xB0, 0x00, 0xAC, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x84, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x4A, 0x05, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x84, 0x00, 0xED, 0x32, 0x73, 0x3A, 0xB4, 0x19, 0xD0, 0x01, 0x0D, 0x01, 0x00, 0xAB, 0x81, 0x00, 0x8B, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x0F, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x84, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, + 0x01, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x85, 0x00, 0x8B, 0x21, 0xD0, 0x4B, 0x15, 0x22, 0x11, 0x09, 0x2D, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x0B, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x04, 0x00, 0x6B, 0x05, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x86, 0x00, 0x8C, 0x00, 0xAC, 0x4B, 0x36, 0x3A, 0x73, 0x00, 0xCC, 0x00, 0x8B, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x0C, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, + 0x03, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x0A, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x85, 0x00, 0x6B, 0x00, 0x8C, 0x19, 0xB0, 0x3A, 0x94, 0x11, 0x4E, 0x00, 0x8C, 0x04, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x84, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x0C, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x0F, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x85, 0x00, 0x6B, 0x00, 0x8C, 0x42, 0xF5, 0x09, 0x2E, 0x00, 0x8C, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x4B, 0x09, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, + 0x6A, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x81, 0x19, 0x8F, 0x21, 0xD0, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0C, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x83, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x81, 0x42, 0xB4, 0x09, 0x0E, 0x08, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x05, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x6A, + 0x00, 0x4A, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x16, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0x4A, 0x02, 0x00, 0x2A, 0x86, 0x00, 0x4B, 0x00, 0x6C, 0x00, 0xCD, 0x2A, 0x53, 0x2A, 0x32, 0x00, 0xAC, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x86, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x2A, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x6A, 0x00, 0x8B, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x0A, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x87, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x85, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0xAC, 0x21, 0xF1, 0x42, 0xD5, 0x09, 0x0D, 0x01, 0x00, 0xAC, 0x81, 0x00, 0x8B, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0E, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x0A, 0x00, 0x4A, + 0x08, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x05, 0x00, 0x6B, 0x82, 0x00, 0x8C, 0x00, 0xCD, 0x11, 0x6F, 0x01, 0x2A, 0x12, 0x80, 0x09, 0x2E, 0x02, 0x00, 0x8B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x04, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x86, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x88, 0x00, 0x4B, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0xED, 0x2A, 0x53, 0x43, 0x16, 0x22, 0x11, 0x08, 0xED, 0x00, 0x6B, 0x01, 0x00, 0x8B, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x0C, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x09, 0x00, 0x6A, + 0x03, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x84, 0x09, 0x0E, 0x32, 0x52, 0x32, 0x73, 0x11, 0x4E, 0x00, 0x8B, 0x03, 0x00, 0x6B, 0x82, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x0E, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x0A, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x84, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x8A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x82, 0x08, 0xED, 0x42, 0xD4, 0x21, 0xF1, 0x03, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x09, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x11, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x83, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x86, 0x00, 0x8B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, + 0x4A, 0x00, 0x6A, 0x00, 0x2A, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x84, 0x00, 0x6C, 0x11, 0x2E, 0x32, 0x73, 0x09, 0x2E, 0x00, 0x8C, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x03, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x07, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x88, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x17, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x82, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x84, 0x2A, 0x11, 0x32, 0x73, 0x00, 0xCD, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x0B, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x0D, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x07, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x83, 0x00, 0x2A, 0x00, 0x4A, 0x19, 0x8F, 0x21, 0xD1, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, + 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x0A, 0x00, 0x4A, 0x82, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x05, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x0C, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x82, 0x00, 0x6B, 0x21, 0xD1, 0x32, 0x53, 0x03, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x23, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x82, 0x00, 0x8B, 0x00, 0x6A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x04, 0x00, 0x4B, 0x85, 0x00, 0x8C, 0x09, 0x2E, 0x2A, 0x53, 0x19, 0xB0, 0x00, 0xAC, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, + 0x4B, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x8B, 0x03, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x86, 0x00, 0x6B, 0x00, 0x8C, 0x21, 0xD1, 0x4B, 0x36, 0x11, 0x8F, 0x00, 0xAC, 0x00, 0x8B, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x84, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x88, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x0B, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x03, 0x00, 0x4A, 0x07, 0x00, 0x6B, 0x01, 0x00, 0x6C, 0x85, 0x09, 0x0E, 0x19, 0xD1, 0x32, 0x93, 0x21, 0xF1, 0x00, 0xEC, 0x00, 0xAC, 0x01, 0x00, 0x8B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x05, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, + 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x83, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x2A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x8A, 0x00, 0x8C, 0x00, 0x4C, 0x08, 0xEE, 0x3A, 0x94, 0x42, 0xD5, 0x21, 0xF2, 0x09, 0x0E, 0x00, 0xCC, 0x00, 0x8B, 0x00, 0x6B, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x0E, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x07, 0x00, 0x4A, 0x83, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x83, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x88, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0x8C, 0x00, 0x6B, 0x19, 0x90, 0x53, 0x57, 0x21, 0xF1, 0x00, 0xCC, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, + 0x01, 0x00, 0x6A, 0x0E, 0x00, 0x4A, 0x83, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4B, 0x00, 0x6B, 0x0A, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x07, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x8B, 0x05, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x83, 0x19, 0x90, 0x4B, 0x15, 0x19, 0x8F, 0x00, 0x8B, 0x02, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x84, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x84, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x0E, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x84, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x85, 0x00, 0x6B, 0x08, 0xEE, 0x32, 0x73, 0x21, 0xF1, 0x00, 0xAC, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x81, 0x00, + 0x6B, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x13, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x85, 0x00, 0x6B, 0x00, 0x8C, 0x4B, 0x15, 0x11, 0x70, 0x00, 0xAC, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x07, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x0B, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x81, 0x11, 0x6F, 0x21, 0xF1, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, + 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x0D, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x0C, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x84, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x82, 0x08, 0xED, 0x42, 0xF5, 0x00, 0x8C, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x89, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x07, 0x00, 0x4A, 0x86, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x85, 0x00, 0xAC, 0x11, 0x6F, + 0x2A, 0x53, 0x11, 0x6F, 0x00, 0x8C, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x0F, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x0C, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x8B, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x01, 0x00, 0x4A, 0x87, 0x00, 0x6B, 0x00, 0x8C, 0x11, 0x8F, 0x4B, 0x36, 0x19, 0xB0, 0x00, 0xAC, 0x00, 0x8B, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0F, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x0B, 0x00, 0x4A, 0x07, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x83, 0x00, 0x6B, 0x00, 0x8C, 0x00, 0xED, 0x11, 0x6F, 0x01, 0x2A, 0x52, 0x84, 0x01, 0x2E, 0x00, 0xCC, 0x00, 0xAC, 0x00, 0x8B, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x03, 0x00, + 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x4A, 0x03, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0B, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x8D, 0x00, 0x2A, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x6C, 0x08, 0xCE, 0x3A, 0x95, 0x4A, 0xF6, 0x19, 0x91, 0x00, 0xCE, 0x00, 0x8C, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0x6B, 0x05, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x10, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x07, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x84, 0x00, 0x8B, 0x09, 0x0E, 0x42, 0xD5, 0x3A, 0x94, 0x00, 0xAD, 0x01, 0x00, 0x8C, 0x82, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x2A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x0C, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x6B, 0x07, 0x00, 0x6A, 0x80, 0x00, 0x8A, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6A, + 0x01, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x85, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x8A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x89, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8C, 0x21, 0xD1, 0x4A, 0xF6, 0x11, 0x2F, 0x00, 0x8C, 0x00, 0x8B, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x82, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x0C, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x89, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x05, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x07, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x84, 0x00, 0x8C, 0x32, 0x33, 0x2A, 0x32, 0x09, 0x0D, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x01, 0x00, 0x2A, 0x04, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x80, 0x00, + 0x6B, 0x01, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x84, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x14, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x83, 0x11, 0x4F, 0x42, 0xD5, 0x00, 0xCD, 0x00, 0x8C, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x2A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x0F, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x05, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x1B, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x82, 0x11, 0x6F, 0x21, 0xF1, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x05, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x0D, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x82, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x82, 0x00, 0x8C, 0x42, 0xB5, 0x19, 0x4F, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x02, 0x00, + 0x4B, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x05, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x12, 0x00, 0x4A, 0x82, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x84, 0x00, 0x8C, 0x00, 0xCD, 0x19, 0xD1, 0x32, 0x73, 0x09, 0x0E, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x0C, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x07, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x86, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0x8C, 0x09, 0x4E, 0x3A, 0xB4, 0x19, 0xD0, 0x00, 0xAC, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6B, 0x01, + 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x06, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x08, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x2A, 0x02, 0x00, 0x4B, 0x88, 0x00, 0x6C, 0x00, 0xAC, 0x01, 0x0D, 0x19, 0xD0, 0x32, 0xB4, 0x19, 0xD0, 0x00, 0xED, 0x00, 0x8B, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x03, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x04, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x4B, 0x83, 0x00, 0x6C, 0x42, 0xB4, 0x42, 0xD5, 0x11, 0x70, 0x01, 0x00, 0xAE, 0x83, 0x00, 0x8D, 0x00, 0x6C, 0x00, 0x8C, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x82, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6A, 0x0D, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x13, + 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x8B, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x8B, 0x00, 0xAC, 0x21, 0xD0, 0x3A, 0x94, 0x2A, 0x32, 0x00, 0x8C, 0x00, 0xAD, 0x00, 0x8C, 0x01, 0x00, 0x4B, 0x02, 0x00, 0x2A, 0x01, 0x00, 0x4A, 0x05, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x84, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6B, 0x0F, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x16, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x05, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x84, 0x29, 0xF1, 0x3A, 0x94, 0x00, 0xED, 0x00, 0xAC, 0x00, 0x8C, 0x01, 0x00, 0x6B, 0x05, 0x00, 0x4B, 0x81, 0x00, 0x4A, 0x00, 0x4B, 0x08, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x08, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x6A, 0x05, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x08, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x83, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6A, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x84, + 0x11, 0x2F, 0x2A, 0x33, 0x11, 0x4F, 0x00, 0xAC, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x04, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x86, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x08, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x0A, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x83, 0x3A, 0xD5, 0x21, 0xF1, 0x00, 0xAC, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x82, 0x00, 0x2A, 0x00, 0x4A, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x05, 0x00, 0x4A, 0x80, 0x00, 0x2A, 0x13, 0x00, 0x4A, 0x85, 0x00, 0x6B, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x05, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x07, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x04, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x03, 0x00, 0x6A, 0x80, 0x00, 0x6B, 0x02, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x82, 0x00, 0x2A, 0x11, 0x6F, 0x21, 0xB1, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x05, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x80, + 0x00, 0x6B, 0x0E, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x83, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x6A, 0x1B, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x04, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x6B, 0x83, 0x00, 0x8C, 0x00, 0x6B, 0x21, 0x90, 0x3A, 0x33, 0x01, 0x00, 0x6C, 0x80, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x6B, 0x0A, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x06, 0x00, 0x4A, 0x81, 0x00, 0x6B, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x07, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x17, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x89, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x00, 0xAC, 0x01, 0x0E, 0x22, 0x32, 0x21, 0xF1, 0x08, 0xCD, 0x00, 0x6C, 0x03, 0x00, 0x4B, 0x02, 0x00, 0x6B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x01, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x4A, 0x02, 0x00, 0x6B, 0x03, 0x00, 0x4A, 0x81, 0x00, 0x4B, 0x00, 0x6A, 0x04, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x16, 0x00, 0x4A, 0x82, 0x00, 0x6B, 0x00, 0x4A, 0x00, 0x6B, 0x03, 0x00, 0x4B, 0x06, 0x00, 0x4A, 0x02, 0x00, 0x6A, + 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x0B, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x01, 0x00, 0x4B, 0x85, 0x00, 0x6B, 0x00, 0xAC, 0x00, 0xED, 0x22, 0x11, 0x2A, 0x32, 0x00, 0xCC, 0x01, 0x00, 0x6B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x4A, 0x80, 0x00, 0x6B, 0x04, 0x00, 0x6A, 0x82, 0x00, 0x4A, 0x00, 0x6B, 0x00, 0x6A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x8B, 0x07, 0x00, 0x6A, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x0F, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x82, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x6B, 0x08, 0x00, 0x4A, 0x07, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6B, 0x82, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x2A, 0x01, 0x00, 0x4B, 0x8A, 0x00, 0x6B, 0x00, 0x4B, 0x00, 0x8C, 0x00, 0xAC, 0x00, 0xED, 0x01, 0x6E, 0x2A, 0x73, 0x32, 0x93, 0x09, 0x0D, 0x00, 0x8C, 0x00, 0x6B, 0x04, 0x00, 0x4B, 0x06, 0x00, 0x4A, 0x81, 0x00, 0x6A, 0x00, 0x4A, 0x02, 0x00, 0x6A, 0x81, 0x00, 0x4A, 0x00, 0x6B, 0x02, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x08, 0x00, 0x4A, 0x80, 0x00, 0x6A, 0x09, 0x00, 0x4A, 0x04, 0x00, 0x4B, 0x04, 0x00, 0x4A, 0x06, 0x00, 0x6A, 0x02, 0x00, 0x4A, 0x01, 0x00, 0x6A, 0x06, 0x00, 0x4A, 0x03, 0x00, 0x6A +}; + +const tImage MarlinLogo1024x600x16 = MARLIN_LOGO_CHOSEN(1024, 600); + +#endif // HAS_GRAPHICAL_TFT && SHOW_BOOTSCREEN diff --git a/Marlin/src/lcd/tft/images/bootscreen_112x38x1.cpp b/Marlin/src/lcd/tft/images/bootscreen_112x38x1.cpp index bac075e78bd1..8407899d27c5 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_112x38x1.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_112x38x1.cpp @@ -21,14 +21,11 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" - -#if HAS_GRAPHICAL_TFT -#include "../../../inc/MarlinConfig.h" +#if ALL(HAS_GRAPHICAL_TFT, SHOW_BOOTSCREEN) -extern const uint8_t marlin_logo_112x38x1[]; -const tImage MarlinLogo112x38x1 = { (void *)marlin_logo_112x38x1, 112, 38, GREYSCALE1 }; +#include "../tft_image.h" +#include "../../../inc/MarlinConfig.h" // for binary defines const uint8_t marlin_logo_112x38x1[532] = { B00000001,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111, @@ -71,4 +68,6 @@ const uint8_t marlin_logo_112x38x1[532] = { B00000001,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B10000000 }; -#endif // HAS_GRAPHICAL_TFT +const tImage MarlinLogo112x38x1 = { (void *)marlin_logo_112x38x1, 112, 38, GREYSCALE1 }; + +#endif // HAS_GRAPHICAL_TFT && SHOW_BOOTSCREEN diff --git a/Marlin/src/lcd/tft/images/bootscreen_195x59x16.cpp b/Marlin/src/lcd/tft/images/bootscreen_195x59x16.cpp index db49bba73367..e9290c5a661d 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_195x59x16.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_195x59x16.cpp @@ -21,22 +21,20 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" -#if HAS_GRAPHICAL_TFT +#if ALL(HAS_GRAPHICAL_TFT, SHOW_BOOTSCREEN) -extern const uint16_t marlin_logo_195x59x16[]; -const tImage MarlinLogo195x59x16 = { (void *)marlin_logo_195x59x16, 195, 59, HIGHCOLOR }; +#include "../tft_image.h" const uint16_t marlin_logo_195x59x16[11505] = { - 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x18AD, 0x310E, 0x7A32, 0xAAD3, 0xD395, 0xD395, 0xD395, 0xD375, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD375, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, - 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x18AE, 0x20AD, 0x18AD, 0x496F, 0xAAD3, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD375, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD375, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, - 0x18AD, 0x20AB, 0x18AD, 0x18AD, 0x18AD, 0x20EE, 0x8252, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD3B5, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xDB95, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, - 0x18AD, 0x20AD, 0x18AD, 0x18AD, 0x28EE, 0xB314, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD4F8, 0xD65C, 0xD6DD, 0xD6FD, 0xD7FF, 0xD7FF, 0xDFFF, 0xD7FF, 0xD7FF, 0xDFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xDFFF, 0xDFFF, 0xDFFF, 0xDFFF, 0xDFFF, 0xDFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xD539, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xDB95, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, - 0x18AD, 0x20AD, 0x18AE, 0x28EE, 0xCB55, 0xD375, 0xD395, 0xD395, 0xD3D6, 0xD5DB, 0xD7BF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xDFFF, 0xDFFF, 0xD7FF, 0xDFFF, 0xDFFF, 0xDFFF, 0xDFFF, 0xDFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xD539, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, - 0x18AD, 0x18AD, 0x28EE, 0xB314, 0xD395, 0xD395, 0xD395, 0xD477, 0xD77E, 0xD7FF, 0xD7FF, 0xDFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xDFFF, 0xDFFF, 0xDFFF, 0xD7FF, 0xDFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD539, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, - 0x18AD, 0x18CD, 0x8252, 0xD395, 0xD395, 0xD396, 0xD4B8, 0xD7BF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xDFFF, 0xD7FF, 0xD7FF, 0xDFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xD7FF, 0xDFFF, 0xD539, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, - 0x18AD, 0x496F, 0xD395, 0xD395, 0xD395, 0xD457, 0xD7BF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7DF, 0xD7FF, 0xCF3E, 0xC67C, 0xC53A, 0xACB8, 0xACB8, 0xACB8, 0xACB8, 0xACB8, 0xACB8, 0xC53A, 0xC67C, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD65B, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD396, 0xD395, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x310E, 0x7A32, 0xAAD3, 0xD395, 0xD395, 0xD395, 0xD375, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD375, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x496F, 0xAAD3, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD375, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD375, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x20EE, 0x8252, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD3B5, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xDB95, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, + 0x0001, 0x0001, 0x0001, 0x0001, 0x28EE, 0xB314, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD4F8, 0xD65C, 0xD6DD, 0xD6FD, 0xD7FF, 0xD7FF, 0xDFFF, 0xD7FF, 0xD7FF, 0xDFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xDFFF, 0xDFFF, 0xDFFF, 0xDFFF, 0xDFFF, 0xDFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xD539, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xDB95, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, + 0x0001, 0x0001, 0x0001, 0x28EE, 0xCB55, 0xD375, 0xD395, 0xD395, 0xD3D6, 0xD5DB, 0xD7BF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xDFFF, 0xDFFF, 0xD7FF, 0xDFFF, 0xDFFF, 0xDFFF, 0xDFFF, 0xDFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xD539, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, + 0x0001, 0x0001, 0x28EE, 0xB314, 0xD395, 0xD395, 0xD395, 0xD477, 0xD77E, 0xD7FF, 0xD7FF, 0xDFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xDFFF, 0xDFFF, 0xDFFF, 0xD7FF, 0xDFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD539, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, + 0x0001, 0x18CD, 0x8252, 0xD395, 0xD395, 0xD396, 0xD4B8, 0xD7BF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xDFFF, 0xD7FF, 0xD7FF, 0xDFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xDFFF, 0xD7FF, 0xDFFF, 0xD539, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, + 0x0001, 0x496F, 0xD395, 0xD395, 0xD395, 0xD457, 0xD7BF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7DF, 0xD7FF, 0xCF3E, 0xC67C, 0xC53A, 0xACB8, 0xACB8, 0xACB8, 0xACB8, 0xACB8, 0xACB8, 0xC53A, 0xC67C, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD65B, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD396, 0xD395, 0x20AE, 0xA2D3, 0xD395, 0xD395, 0xD3D6, 0xD75E, 0xCFFF, 0xCFFF, 0xD7FF, 0xD7FF, 0xCFFF, 0xCFFF, 0xD7FF, 0xD7FF, 0xD7DF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7DF, 0xD7FF, 0xD7FF, 0xCFDF, 0xCFFF, 0xD7FF, 0xD7DF, 0xD7FF, 0xCFFF, 0xD7FF, 0xD7DF, 0xD7FF, 0xCFFF, 0xD7DF, 0xCFFF, 0xCFFF, 0xD7FF, 0xD7FF, 0xCFFF, 0xD7FF, 0xCFFF, 0xD7FF, 0xD7DF, 0xD7DF, 0xCFFF, 0xD7DF, 0xCFFF, 0xD7FF, 0xD7FF, 0xCFFF, 0xD7FF, 0xCFFF, 0xD7FF, 0xD7DF, 0xD7FF, 0xD7FF, 0xCFFF, 0xCFFF, 0xD7FF, 0xCFFF, 0xD7DF, 0xCFFF, 0xD7FF, 0xD7DF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xCFFF, 0xD7FF, 0xCFDF, 0xD7DF, 0xCFDF, 0xCFFF, 0xD7DF, 0xACD8, 0x8191, 0x9151, 0x9931, 0x9931, 0x9931, 0x9911, 0x9931, 0x9931, 0x9931, 0xBE3B, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7DF, 0xD7DF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7DF, 0xCFFF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7DF, 0xD7DF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7FF, 0xD7DF, 0xD7FF, 0xD7DF, 0xD7FF, 0xD7DF, 0xD65C, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0x310E, 0xD395, 0xD375, 0xD375, 0xD5BA, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xC77E, 0xBE5B, 0xBE3C, 0xB57A, 0xACB8, 0xBDBB, 0xC63C, 0xBE3B, 0xC71E, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xC77E, 0xBE5C, 0xB5DB, 0xACB8, 0xAC98, 0xBD5A, 0xBE3C, 0xC61C, 0xC69D, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xACB9, 0x8191, 0x9151, 0x9911, 0x9931, 0x9931, 0x9931, 0x9931, 0x9911, 0xA111, 0xBE3B, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xD7DF, 0xCFDF, 0xCF5E, 0xBE5C, 0xBE5C, 0xC63C, 0xC61C, 0xCEFD, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFFF, 0xCFDF, 0xD63B, 0xD375, 0xD395, 0xD375, 0xD395, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD375, 0xD395, 0xD375, 0xD375, 0xD375, 0xD395, 0x79F1, 0xD355, 0xD355, 0xD355, 0xCF7E, 0xC7DF, 0xCFBF, 0xCFDF, 0xC7DF, 0xC7DF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFBF, 0xCFDF, 0xCFDF, 0xCFBF, 0xBEFD, 0xACB8, 0x8A52, 0x9151, 0x9131, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9911, 0xA192, 0xAB96, 0xBE7D, 0xCFDF, 0xC7DF, 0xCFBF, 0xC7DF, 0xCFDF, 0xCFBF, 0xC75E, 0xAD19, 0x92B4, 0x8971, 0x9151, 0x9931, 0x9931, 0x9911, 0x9911, 0xA111, 0x9931, 0xA111, 0x9911, 0xAB36, 0xBD5A, 0xC75E, 0xCFDF, 0xC7BF, 0xC7BF, 0xCFDF, 0xC7DF, 0xC7BF, 0xC7DF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCFDF, 0xC7DF, 0xCFBF, 0xC7DF, 0xC7BF, 0xCFBF, 0xC7DF, 0xA4B8, 0x8191, 0x9151, 0x9931, 0x9911, 0x9931, 0x9931, 0x9911, 0x9931, 0x9912, 0xBE3B, 0xCFBF, 0xCFDF, 0xCFBF, 0xCFDF, 0xCFDF, 0xB5DA, 0x8A12, 0x8971, 0x9931, 0x9931, 0xA111, 0x9931, 0xAB35, 0xC75E, 0xCFBF, 0xCFDF, 0xC7DF, 0xC7DF, 0xCFDF, 0xCFDF, 0xCFBF, 0xC7DF, 0xC7DF, 0xCFDF, 0xCFDF, 0xCFDF, 0xC7DF, 0xCFDF, 0xCFDF, 0xCFDF, 0xCE1B, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, 0xD355, @@ -79,15 +77,70 @@ const uint16_t marlin_logo_195x59x16[11505] = { 0x80F0, 0xA111, 0xA111, 0xC2B0, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xE50E, 0x8191, 0x9A12, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xECF1, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xC3EF, 0x8991, 0xAA93, 0xD395, 0xD395, 0xD395, 0xD375, 0xD395, 0xD395, 0xD395, 0xF58F, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xC3EF, 0x8191, 0xAA93, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xF58F, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xE50E, 0x89D1, 0xA253, 0xCB75, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD376, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xECF1, 0x8191, 0x8191, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xECF1, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xF60E, 0x9A70, 0x91F2, 0xCB75, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xC314, 0x8191, 0xAA93, 0xD395, 0xD396, 0xD395, 0xD395, 0xD375, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xECF2, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4E, 0xFE4D, 0xFE4E, 0xFE4D, 0xFE4E, 0xA2D0, 0x8191, 0xC314, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xFE4E, 0xFE4F, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xC2B0, 0xA111, 0xA111, 0x80F0, 0x60EF, 0xA111, 0xA111, 0xA112, 0xFE2D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xE54E, 0x8191, 0x9A12, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD375, 0xD395, 0xED11, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE8D, 0xC40F, 0x8191, 0xAA93, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xD375, 0xF5CF, 0xFE6D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE6D, 0xC40F, 0x8191, 0xAA93, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xF5CE, 0xFE6D, 0xFE6D, 0xFE8D, 0xFE6C, 0xFE8D, 0xF62D, 0xC40F, 0x9A12, 0xB2D4, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xECF1, 0x8191, 0x8191, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xED11, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE8D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6C, 0xFE8D, 0xFE6D, 0xFE2D, 0xBBCF, 0x89B1, 0xBAF4, 0xD395, 0xD395, 0xD395, 0xD375, 0xD395, 0xD395, 0xD396, 0xC314, 0x8191, 0xAA93, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xED12, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xA2D0, 0x8191, 0xC314, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xFE8F, 0xFE8F, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE2D, 0xA112, 0xA111, 0xA111, 0x60EF, 0x28CD, 0xA111, 0xA111, 0xA111, 0xCBCF, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xF5ED, 0x89D1, 0x91D2, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD396, 0xD395, 0xED11, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xC42F, 0x81B1, 0xAA93, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xF5EF, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFECC, 0xFEAD, 0xC42F, 0x8191, 0xAA93, 0xD395, 0xD395, 0xD396, 0xD395, 0xD395, 0xD395, 0xD395, 0xF5EF, 0xFEAD, 0xFEAC, 0xFEAD, 0xFEAD, 0xFEAC, 0xFEAD, 0xFEAD, 0xF64D, 0xD4CE, 0xBBD0, 0xC3B2, 0xC314, 0xD395, 0xD375, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xED12, 0x8191, 0x8191, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD375, 0xD395, 0xD395, 0xD395, 0xED31, 0xFEAC, 0xFEAC, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xEE0D, 0xCC6F, 0xBB51, 0xBAD4, 0xCB55, 0xD395, 0xD395, 0xD395, 0xD395, 0xC334, 0x8191, 0xB294, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD375, 0xD395, 0xED11, 0xFEAE, 0xFECE, 0xFEAD, 0xFEAE, 0xFEAD, 0xFECE, 0xFEAE, 0xFEAE, 0xA2F0, 0x8191, 0xC314, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xD395, 0xDC34, 0xFEAF, 0xFED0, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xCBCF, 0xA111, 0xA111, 0xA111, 0x28CD, - 0x18AD, 0x8110, 0x9911, 0xA111, 0xA171, 0xF5ED, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAC, 0xFE6D, 0xF5CF, 0xF5EF, 0xF5CF, 0xF5CF, 0xF5EF, 0xF5CF, 0xFE4D, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFE4E, 0xF5EF, 0xF5EF, 0xF5CF, 0xF5EE, 0xF5EF, 0xF5EF, 0xF5EF, 0xFE8D, 0xFEAC, 0xFEAC, 0xFEAC, 0xFEAC, 0xFEAD, 0xFE8D, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAC, 0xFEAC, 0xFEAD, 0xF64D, 0xF5EF, 0xF5CF, 0xF5EF, 0xF5CF, 0xF5EF, 0xF5EF, 0xF5EF, 0xFE6E, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAC, 0xFEAC, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAC, 0xFEAD, 0xFEAD, 0xF60E, 0xF5EF, 0xF5CF, 0xF5EF, 0xF5EF, 0xF5CF, 0xF64E, 0xFEAC, 0xFEAD, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5CF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5CF, 0xFE4D, 0xFEAC, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAC, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAC, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFE6D, 0xF5EF, 0xF5EF, 0xF5CF, 0xF5CF, 0xFEAD, 0xF62E, 0xF5EF, 0xF5D0, 0xF5EF, 0xF5CF, 0xF5F0, 0xF5F0, 0xF5EF, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5EF, 0xF5F0, 0xFE4F, 0xFECE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAF, 0xF610, 0xF5D0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF610, 0xFEAF, 0xFEAF, 0xFEAF, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xF5ED, 0xA171, 0xA111, 0x9911, 0x8110, 0x18AD, - 0x20AC, 0x38CE, 0x9931, 0x9931, 0x9931, 0xAA31, 0xFE2D, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFEAD, 0xFE8C, 0xFEAC, 0xFEAC, 0xFE8C, 0xFE8C, 0xFEAC, 0xFEAD, 0xFE8D, 0xFE8C, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFE8C, 0xFE8C, 0xFEAC, 0xFEAC, 0xFEAD, 0xFE8C, 0xFEAD, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8C, 0xFEAD, 0xFE8C, 0xFE8C, 0xFEAD, 0xFEAD, 0xFEAC, 0xFEAC, 0xFE8C, 0xFE8C, 0xFEAC, 0xFE8C, 0xFEAC, 0xFEAD, 0xFEAD, 0xFE8D, 0xFE8C, 0xFEAD, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8D, 0xFEAC, 0xFE8C, 0xFEAC, 0xFE8D, 0xFEAD, 0xFEAD, 0xFE8C, 0xFEAC, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8C, 0xFEAC, 0xFE8D, 0xFE8C, 0xFEAD, 0xFEAD, 0xFE8C, 0xFE8C, 0xFE8C, 0xFEAD, 0xFE8C, 0xFEAC, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFE8C, 0xFEAC, 0xFE8D, 0xFEAC, 0xFEAD, 0xFEAD, 0xFE8C, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAC, 0xFE8C, 0xFEAD, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFEAD, 0xFEAD, 0xFEAD, 0xFE8D, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFE8D, 0xFE8E, 0xFEAD, 0xFEAE, 0xFEAE, 0xFEAD, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFE8E, 0xFE8E, 0xFEAE, 0xFEAE, 0xFEAE, 0xFE8E, 0xFEAE, 0xFEAE, 0xFEAE, 0xFE8E, 0xFE8E, 0xFEAE, 0xFEAF, 0xFEAE, 0xFEAE, 0xFEAF, 0xFE8E, 0xFEAF, 0xFEAF, 0xFEAF, 0xFEAF, 0xFEAF, 0xFE8F, 0xFEB0, 0xFEAF, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE2D, 0xAA31, 0x9931, 0x9931, 0x9931, 0x38CE, 0x20AC, - 0x20AD, 0x20AC, 0x60EF, 0x9912, 0x9931, 0x9931, 0xB270, 0xF62D, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE6D, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8E, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8F, 0xFE8E, 0xFE8E, 0xFE8F, 0xFE8F, 0xFE8E, 0xFE8F, 0xFE8F, 0xFE8E, 0xFE8F, 0xFE8E, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE90, 0xFE90, 0xFEB0, 0xFE8C, 0xFE8C, 0xF62D, 0xB270, 0x9931, 0x9931, 0x9912, 0x60EF, 0x20AC, 0x20AD, - 0x18AC, 0x20AC, 0x28AD, 0x8110, 0x9931, 0x9931, 0x9911, 0xAA31, 0xF5CD, 0xFE8C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE8C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE8C, 0xFE6D, 0xFE6D, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6C, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE8E, 0xFE8D, 0xFE8D, 0xFE6E, 0xFE8D, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE8F, 0xFE8F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE8F, 0xFE6F, 0xFE6F, 0xFE8F, 0xFE8F, 0xFE6F, 0xFE6F, 0xFE8F, 0xFE6F, 0xFE6F, 0xFE8F, 0xFE8F, 0xFE6F, 0xFE8F, 0xFE8F, 0xFE6F, 0xFE90, 0xFE8F, 0xFE8F, 0xFE90, 0xFE90, 0xFE8C, 0xF5CD, 0xAA31, 0x9911, 0x9931, 0x9931, 0x8110, 0x28AD, 0x20AC, 0x18AC, - 0x20AC, 0x20AC, 0x18AC, 0x28AD, 0x9111, 0x9931, 0x9931, 0x9931, 0xA171, 0xCBCF, 0xF60D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6C, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6C, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6C, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6E, 0xFE6E, 0xFE4E, 0xFE6D, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6F, 0xFE6E, 0xFE6E, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE70, 0xFE70, 0xFE6F, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE90, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE71, 0xFE71, 0xFE71, 0xE471, 0xCBCF, 0xA171, 0x9931, 0x9931, 0x9931, 0x9111, 0x28AD, 0x18AC, 0x20AC, 0x20AC, - 0x18AC, 0x18AC, 0x18AC, 0x20AC, 0x28CD, 0x8111, 0x9931, 0x9912, 0x9931, 0x9931, 0x9911, 0xBAB0, 0xDC6F, 0xE50F, 0xE50E, 0xFE4E, 0xFE6E, 0xFE4E, 0xFE6D, 0xFE4E, 0xFE4E, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4E, 0xFE4E, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4E, 0xFE4E, 0xFE4E, 0xFE4E, 0xFE6E, 0xFE6E, 0xFE4E, 0xFE4E, 0xFE4E, 0xFE6E, 0xFE6E, 0xFE4E, 0xFE6F, 0xFE6E, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE4F, 0xFE6F, 0xFE70, 0xFE50, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xF612, 0xE531, 0xE512, 0xD472, 0xB271, 0x9931, 0x9931, 0x9931, 0x9912, 0x9931, 0x8111, 0x28CD, 0x20AC, 0x18AC, 0x18AC, 0x18AC, - 0x20AC, 0x20AC, 0x18AC, 0x20AC, 0x20AC, 0x28CC, 0x610F, 0x9911, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9932, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9912, 0x9931, 0x9931, 0x9931, 0x9931, 0x9911, 0x9931, 0x9911, 0x9931, 0x9931, 0x9911, 0x9911, 0x9931, 0x9931, 0x9911, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9911, 0x9911, 0x9931, 0x9932, 0x9931, 0x9931, 0x9911, 0x9931, 0x9931, 0x9912, 0x9931, 0x9931, 0x9931, 0x9911, 0x610F, 0x28CC, 0x20AC, 0x20AC, 0x18AC, 0x20AC, 0x20AC, - 0x18AC, 0x18AC, 0x20AC, 0x20AC, 0x20AC, 0x20AC, 0x18AC, 0x40CE, 0x7910, 0x9931, 0x9931, 0x9932, 0x9931, 0x9931, 0x9931, 0x9911, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x7910, 0x40CE, 0x18AC, 0x20AC, 0x20AC, 0x20AC, 0x20AC, 0x18AC, 0x18AC, - 0x20AC, 0x20AC, 0x20AC, 0x20AC, 0x20AC, 0x20AC, 0x20AC, 0x20AC, 0x18AB, 0x30CC, 0x58CF, 0x7910, 0x9931, 0x9931, 0x9912, 0x9931, 0x9931, 0x9911, 0x9931, 0x9911, 0x9932, 0x9931, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9931, 0x9932, 0x9911, 0x9931, 0x9911, 0x9931, 0x9931, 0x9912, 0x9931, 0x9931, 0x7910, 0x58CF, 0x30CC, 0x18AB, 0x20AC, 0x20AC, 0x20AC, 0x20AC, 0x20AC, 0x20AC, 0x20AC, 0x20AC + 0x0001, 0x8110, 0x9911, 0xA111, 0xA171, 0xF5ED, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAC, 0xFE6D, 0xF5CF, 0xF5EF, 0xF5CF, 0xF5CF, 0xF5EF, 0xF5CF, 0xFE4D, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFE4E, 0xF5EF, 0xF5EF, 0xF5CF, 0xF5EE, 0xF5EF, 0xF5EF, 0xF5EF, 0xFE8D, 0xFEAC, 0xFEAC, 0xFEAC, 0xFEAC, 0xFEAD, 0xFE8D, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAC, 0xFEAC, 0xFEAD, 0xF64D, 0xF5EF, 0xF5CF, 0xF5EF, 0xF5CF, 0xF5EF, 0xF5EF, 0xF5EF, 0xFE6E, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAC, 0xFEAC, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAC, 0xFEAD, 0xFEAD, 0xF60E, 0xF5EF, 0xF5CF, 0xF5EF, 0xF5EF, 0xF5CF, 0xF64E, 0xFEAC, 0xFEAD, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5CF, 0xF5EF, 0xF5EF, 0xF5EF, 0xF5CF, 0xFE4D, 0xFEAC, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAC, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAC, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFE6D, 0xF5EF, 0xF5EF, 0xF5CF, 0xF5CF, 0xFEAD, 0xF62E, 0xF5EF, 0xF5D0, 0xF5EF, 0xF5CF, 0xF5F0, 0xF5F0, 0xF5EF, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5EF, 0xF5F0, 0xFE4F, 0xFECE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAF, 0xF610, 0xF5D0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF5F0, 0xF610, 0xFEAF, 0xFEAF, 0xFEAF, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xF5ED, 0xA171, 0xA111, 0x9911, 0x8110, 0x0001, + 0x0001, 0x38CE, 0x9931, 0x9931, 0x9931, 0xAA31, 0xFE2D, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFEAD, 0xFE8C, 0xFEAC, 0xFEAC, 0xFE8C, 0xFE8C, 0xFEAC, 0xFEAD, 0xFE8D, 0xFE8C, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFE8C, 0xFE8C, 0xFEAC, 0xFEAC, 0xFEAD, 0xFE8C, 0xFEAD, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8C, 0xFEAD, 0xFE8C, 0xFE8C, 0xFEAD, 0xFEAD, 0xFEAC, 0xFEAC, 0xFE8C, 0xFE8C, 0xFEAC, 0xFE8C, 0xFEAC, 0xFEAD, 0xFEAD, 0xFE8D, 0xFE8C, 0xFEAD, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8D, 0xFEAC, 0xFE8C, 0xFEAC, 0xFE8D, 0xFEAD, 0xFEAD, 0xFE8C, 0xFEAC, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8C, 0xFEAC, 0xFE8D, 0xFE8C, 0xFEAD, 0xFEAD, 0xFE8C, 0xFE8C, 0xFE8C, 0xFEAD, 0xFE8C, 0xFEAC, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFE8C, 0xFEAC, 0xFE8D, 0xFEAC, 0xFEAD, 0xFEAD, 0xFE8C, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAC, 0xFE8C, 0xFEAD, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFEAD, 0xFEAD, 0xFEAD, 0xFE8D, 0xFEAD, 0xFEAD, 0xFEAD, 0xFEAD, 0xFE8D, 0xFE8E, 0xFEAD, 0xFEAE, 0xFEAE, 0xFEAD, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFEAE, 0xFE8E, 0xFE8E, 0xFEAE, 0xFEAE, 0xFEAE, 0xFE8E, 0xFEAE, 0xFEAE, 0xFEAE, 0xFE8E, 0xFE8E, 0xFEAE, 0xFEAF, 0xFEAE, 0xFEAE, 0xFEAF, 0xFE8E, 0xFEAF, 0xFEAF, 0xFEAF, 0xFEAF, 0xFEAF, 0xFE8F, 0xFEB0, 0xFEAF, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE2D, 0xAA31, 0x9931, 0x9931, 0x9931, 0x38CE, 0x0001, + 0x0001, 0x0001, 0x60EF, 0x9912, 0x9931, 0x9931, 0xB270, 0xF62D, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE6D, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8C, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8E, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8D, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8E, 0xFE8F, 0xFE8E, 0xFE8E, 0xFE8F, 0xFE8F, 0xFE8E, 0xFE8F, 0xFE8F, 0xFE8E, 0xFE8F, 0xFE8E, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE8F, 0xFE90, 0xFE90, 0xFEB0, 0xFE8C, 0xFE8C, 0xF62D, 0xB270, 0x9931, 0x9931, 0x9912, 0x60EF, 0x0001, 0x0001, + 0x0001, 0x0001, 0x28AD, 0x8110, 0x9931, 0x9931, 0x9911, 0xAA31, 0xF5CD, 0xFE8C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE8C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE8C, 0xFE6D, 0xFE6D, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6D, 0xFE6C, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6C, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE8E, 0xFE8D, 0xFE8D, 0xFE6E, 0xFE8D, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE8F, 0xFE8F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE8F, 0xFE6F, 0xFE6F, 0xFE8F, 0xFE8F, 0xFE6F, 0xFE6F, 0xFE8F, 0xFE6F, 0xFE6F, 0xFE8F, 0xFE8F, 0xFE6F, 0xFE8F, 0xFE8F, 0xFE6F, 0xFE90, 0xFE8F, 0xFE8F, 0xFE90, 0xFE90, 0xFE8C, 0xF5CD, 0xAA31, 0x9911, 0x9931, 0x9931, 0x8110, 0x28AD, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x28AD, 0x9111, 0x9931, 0x9931, 0x9931, 0xA171, 0xCBCF, 0xF60D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6C, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6C, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6C, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6D, 0xFE6D, 0xFE6D, 0xFE4D, 0xFE6E, 0xFE6E, 0xFE4E, 0xFE6D, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6E, 0xFE6F, 0xFE6E, 0xFE6E, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE70, 0xFE70, 0xFE6F, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE90, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE71, 0xFE71, 0xFE71, 0xE471, 0xCBCF, 0xA171, 0x9931, 0x9931, 0x9931, 0x9111, 0x28AD, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x28CD, 0x8111, 0x9931, 0x9912, 0x9931, 0x9931, 0x9911, 0xBAB0, 0xDC6F, 0xE50F, 0xE50E, 0xFE4E, 0xFE6E, 0xFE4E, 0xFE6D, 0xFE4E, 0xFE4E, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4E, 0xFE4E, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4D, 0xFE4E, 0xFE4E, 0xFE4E, 0xFE4E, 0xFE6E, 0xFE6E, 0xFE4E, 0xFE4E, 0xFE4E, 0xFE6E, 0xFE6E, 0xFE4E, 0xFE6F, 0xFE6E, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE6F, 0xFE4F, 0xFE6F, 0xFE70, 0xFE50, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE70, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xFE71, 0xF612, 0xE531, 0xE512, 0xD472, 0xB271, 0x9931, 0x9931, 0x9931, 0x9912, 0x9931, 0x8111, 0x28CD, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x28CC, 0x610F, 0x9911, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9932, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9912, 0x9931, 0x9931, 0x9931, 0x9931, 0x9911, 0x9931, 0x9911, 0x9931, 0x9931, 0x9911, 0x9911, 0x9931, 0x9931, 0x9911, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9911, 0x9911, 0x9931, 0x9932, 0x9931, 0x9931, 0x9911, 0x9931, 0x9931, 0x9912, 0x9931, 0x9931, 0x9931, 0x9911, 0x610F, 0x28CC, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x40CE, 0x7910, 0x9931, 0x9931, 0x9932, 0x9931, 0x9931, 0x9931, 0x9911, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x7910, 0x40CE, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x18AB, 0x30CC, 0x58CF, 0x7910, 0x9931, 0x9931, 0x9912, 0x9931, 0x9931, 0x9911, 0x9931, 0x9911, 0x9932, 0x9931, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9911, 0x9931, 0x9932, 0x9911, 0x9931, 0x9911, 0x9931, 0x9931, 0x9912, 0x9931, 0x9931, 0x7910, 0x58CF, 0x30CC, 0x18AB, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001 }; -#endif // HAS_GRAPHICAL_TFT +// Saves 11340 bytes +const uint8_t marlin_logo_195x59x16_rle16[11670] = { + 0x08, 0x00, 0x01, 0x82, 0x31, 0x0E, 0x7A, 0x32, 0xAA, 0xD3, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x7F, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x0B, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xD3, 0x96, 0x12, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x0A, 0xD3, 0x95, 0x06, 0x00, 0x01, 0x81, 0x49, 0x6F, 0xAA, 0xD3, 0x06, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x7F, 0xD3, 0x95, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x08, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x1E, 0xD3, 0x95, 0x04, 0x00, 0x01, 0x82, 0x20, 0xEE, 0x82, 0x52, 0xD3, 0x96, 0x0A, 0xD3, 0x95, 0x80, 0xD3, 0xB5, 0x7F, 0xD3, 0x95, 0x0D, 0xD3, 0x95, 0x80, 0xDB, 0x95, 0x15, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x08, 0xD3, 0x95, 0x03, 0x00, 0x01, 0x81, 0x28, 0xEE, 0xB3, 0x14, 0x04, 0xD3, 0x95, 0x83, 0xD4, 0xF8, 0xD6, 0x5C, 0xD6, 0xDD, 0xD6, 0xFD, 0x01, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x01, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x7A, 0xD7, 0xFF, 0x06, 0xDF, 0xFF, 0x06, 0xD7, 0xFF, 0x81, 0xDF, 0xFF, 0xD5, 0x39, 0x19, 0xD3, 0x95, 0x80, 0xDB, 0x95, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x02, 0x00, 0x01, 0x82, 0x28, 0xEE, 0xCB, 0x55, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0xD6, 0xD5, 0xDB, 0xD7, 0xBF, 0x7F, 0xD7, 0xFF, 0x04, 0xD7, 0xFF, 0x02, 0xDF, 0xFF, 0x80, 0xD7, 0xFF, 0x04, 0xDF, 0xFF, 0x05, 0xD7, 0xFF, 0x81, 0xDF, 0xFF, 0xD5, 0x39, 0x21, 0xD3, 0x95, 0x01, 0x00, 0x01, 0x81, 0x28, 0xEE, 0xB3, 0x14, 0x02, 0xD3, 0x95, 0x81, 0xD4, 0x77, 0xD7, 0x7E, + 0x01, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x03, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x7E, 0xD7, 0xFF, 0x03, 0xDF, 0xFF, 0x81, 0xD7, 0xFF, 0xDF, 0xFF, 0x0A, 0xD7, 0xFF, 0x80, 0xD5, 0x39, 0x20, 0xD3, 0x95, 0x82, 0x00, 0x01, 0x18, 0xCD, 0x82, 0x52, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xD4, 0xB8, 0xD7, 0xBF, 0x7F, 0xD7, 0xFF, 0x08, 0xD7, 0xFF, 0x01, 0xDF, 0xFF, 0x01, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x08, 0xD7, 0xFF, 0x83, 0xDF, 0xFF, 0xD7, 0xFF, 0xDF, 0xFF, 0xD5, 0x39, 0x14, 0xD3, 0x95, 0x01, 0xD3, 0x96, 0x08, 0xD3, 0x95, 0x81, 0x00, 0x01, 0x49, 0x6F, 0x02, 0xD3, 0x95, 0x81, 0xD4, 0x57, 0xD7, 0xBF, 0x73, 0xD7, 0xFF, 0x84, 0xD7, 0xDF, 0xD7, 0xFF, 0xCF, 0x3E, 0xC6, 0x7C, 0xC5, 0x3A, 0x05, 0xAC, 0xB8, 0x81, 0xC5, 0x3A, 0xC6, 0x7C, 0x1A, 0xD7, 0xFF, 0x82, 0xD6, 0x5B, 0xD3, 0x95, 0xD3, 0x96, 0x17, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x83, 0xD3, 0x96, 0xD3, 0x95, 0x20, 0xAE, 0xA2, 0xD3, 0x01, 0xD3, 0x95, 0x81, 0xD3, 0xD6, 0xD7, 0x5E, 0x01, 0xCF, 0xFF, 0x01, 0xD7, 0xFF, 0x01, 0xCF, 0xFF, 0x01, 0xD7, 0xFF, 0x80, 0xD7, 0xDF, 0x02, 0xD7, 0xFF, 0x80, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x8A, 0xCF, 0xDF, 0xCF, 0xFF, 0xD7, 0xFF, 0xD7, 0xDF, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xFF, 0xD7, 0xDF, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xDF, 0x01, 0xCF, 0xFF, 0x01, 0xD7, 0xFF, 0x83, 0xCF, 0xFF, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xFF, 0x01, 0xD7, 0xDF, 0x82, 0xCF, 0xFF, 0xD7, 0xDF, 0xCF, 0xFF, 0x01, 0xD7, 0xFF, 0x84, 0xCF, 0xFF, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xFF, + 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x01, 0xCF, 0xFF, 0x85, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xDF, 0xCF, 0xFF, 0xD7, 0xFF, 0xD7, 0xDF, 0x37, 0xD7, 0xFF, 0x89, 0xCF, 0xFF, 0xD7, 0xFF, 0xCF, 0xDF, 0xD7, 0xDF, 0xCF, 0xDF, 0xCF, 0xFF, 0xD7, 0xDF, 0xAC, 0xD8, 0x81, 0x91, 0x91, 0x51, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0xBE, 0x3B, 0x03, 0xD7, 0xFF, 0x01, 0xD7, 0xDF, 0x02, 0xD7, 0xFF, 0x81, 0xD7, 0xDF, 0xCF, 0xFF, 0x05, 0xD7, 0xFF, 0x01, 0xD7, 0xDF, 0x03, 0xD7, 0xFF, 0x85, 0xD7, 0xDF, 0xD7, 0xFF, 0xD7, 0xDF, 0xD7, 0xFF, 0xD7, 0xDF, 0xD6, 0x5C, 0x1D, 0xD3, 0x95, 0x81, 0x31, 0x0E, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x80, 0xD5, 0xBA, 0x0F, 0xCF, 0xDF, 0x88, 0xC7, 0x7E, 0xBE, 0x5B, 0xBE, 0x3C, 0xB5, 0x7A, 0xAC, 0xB8, 0xBD, 0xBB, 0xC6, 0x3C, 0xBE, 0x3B, 0xC7, 0x1E, 0x0B, 0xCF, 0xDF, 0x88, 0xC7, 0x7E, 0xBE, 0x5C, 0xB5, 0xDB, 0xAC, 0xB8, 0xAC, 0x98, 0xBD, 0x5A, 0xBE, 0x3C, 0xC6, 0x1C, 0xC6, 0x9D, 0x49, 0xCF, 0xDF, 0x83, 0xAC, 0xB9, 0x81, 0x91, 0x91, 0x51, 0x99, 0x11, 0x03, 0x99, 0x31, 0x82, 0x99, 0x11, 0xA1, 0x11, 0xBE, 0x3B, 0x03, 0xCF, 0xDF, 0x82, 0xD7, 0xDF, 0xCF, 0xDF, 0xCF, 0x5E, 0x01, 0xBE, 0x5C, 0x82, 0xC6, 0x3C, 0xC6, 0x1C, 0xCE, 0xFD, 0x0E, 0xCF, 0xDF, 0x86, 0xCF, 0xFF, 0xCF, 0xDF, 0xD6, 0x3B, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x75, 0xD3, 0x95, 0x13, 0xD3, 0x75, 0x80, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x81, 0xD3, 0x95, 0x79, 0xF1, 0x02, 0xD3, 0x55, 0x83, 0xCF, 0x7E, 0xC7, 0xDF, 0xCF, 0xBF, 0xCF, 0xDF, 0x01, 0xC7, 0xDF, + 0x03, 0xCF, 0xDF, 0x80, 0xCF, 0xBF, 0x01, 0xCF, 0xDF, 0x85, 0xCF, 0xBF, 0xBE, 0xFD, 0xAC, 0xB8, 0x8A, 0x52, 0x91, 0x51, 0x91, 0x31, 0x05, 0x99, 0x31, 0x8E, 0x99, 0x11, 0xA1, 0x92, 0xAB, 0x96, 0xBE, 0x7D, 0xCF, 0xDF, 0xC7, 0xDF, 0xCF, 0xBF, 0xC7, 0xDF, 0xCF, 0xDF, 0xCF, 0xBF, 0xC7, 0x5E, 0xAD, 0x19, 0x92, 0xB4, 0x89, 0x71, 0x91, 0x51, 0x01, 0x99, 0x31, 0x01, 0x99, 0x11, 0x87, 0xA1, 0x11, 0x99, 0x31, 0xA1, 0x11, 0x99, 0x11, 0xAB, 0x36, 0xBD, 0x5A, 0xC7, 0x5E, 0xCF, 0xDF, 0x01, 0xC7, 0xBF, 0x83, 0xCF, 0xDF, 0xC7, 0xDF, 0xC7, 0xBF, 0xC7, 0xDF, 0x38, 0xCF, 0xDF, 0x8A, 0xC7, 0xDF, 0xCF, 0xBF, 0xC7, 0xDF, 0xC7, 0xBF, 0xCF, 0xBF, 0xC7, 0xDF, 0xA4, 0xB8, 0x81, 0x91, 0x91, 0x51, 0x99, 0x31, 0x99, 0x11, 0x01, 0x99, 0x31, 0x86, 0x99, 0x11, 0x99, 0x31, 0x99, 0x12, 0xBE, 0x3B, 0xCF, 0xBF, 0xCF, 0xDF, 0xCF, 0xBF, 0x01, 0xCF, 0xDF, 0x82, 0xB5, 0xDA, 0x8A, 0x12, 0x89, 0x71, 0x01, 0x99, 0x31, 0x85, 0xA1, 0x11, 0x99, 0x31, 0xAB, 0x35, 0xC7, 0x5E, 0xCF, 0xBF, 0xCF, 0xDF, 0x01, 0xC7, 0xDF, 0x01, 0xCF, 0xDF, 0x80, 0xCF, 0xBF, 0x01, 0xC7, 0xDF, 0x02, 0xCF, 0xDF, 0x80, 0xC7, 0xDF, 0x02, 0xCF, 0xDF, 0x80, 0xCE, 0x1B, 0x1B, 0xD3, 0x55, 0x80, 0xA2, 0x93, 0x01, 0xD3, 0x35, 0x82, 0xCC, 0x98, 0xC7, 0xBF, 0xC7, 0xBE, 0x09, 0xC7, 0xBF, 0x85, 0xC7, 0x5E, 0xA4, 0xB8, 0x81, 0x91, 0x91, 0x51, 0x99, 0x11, 0xA1, 0x31, 0x01, 0xA1, 0x11, 0x82, 0x99, 0x31, 0xA1, 0x11, 0xA1, 0x12, 0x05, 0xA1, 0x11, 0x89, 0xAB, 0x35, 0xBE, 0xFE, 0xC7, 0xBF, 0xC7, 0xBE, 0xC7, + 0xBF, 0xB5, 0xDB, 0x89, 0xF1, 0x89, 0x71, 0x99, 0x31, 0x99, 0x11, 0x04, 0xA1, 0x11, 0x81, 0xA1, 0x32, 0x99, 0x11, 0x03, 0xA1, 0x11, 0x82, 0xA1, 0x72, 0xBD, 0x3A, 0xC7, 0xBE, 0x02, 0xC7, 0xBF, 0x81, 0xC7, 0xBE, 0xC7, 0x9F, 0x37, 0xC7, 0xBF, 0x80, 0xC7, 0x9F, 0x05, 0xC7, 0xBF, 0x8B, 0xAC, 0x98, 0x81, 0x91, 0x91, 0x51, 0x99, 0x31, 0xA1, 0x11, 0xA1, 0x31, 0xA1, 0x11, 0xA1, 0x31, 0xA1, 0x11, 0x99, 0x31, 0xBE, 0x1B, 0xC7, 0x9F, 0x02, 0xC7, 0xBF, 0x85, 0xBE, 0xFD, 0x89, 0xF2, 0x89, 0x91, 0x99, 0x31, 0xA1, 0x12, 0xA1, 0x31, 0x02, 0xA1, 0x11, 0x80, 0xAB, 0x97, 0x01, 0xC7, 0xBF, 0x80, 0xC7, 0xBE, 0x0D, 0xC7, 0xBF, 0x81, 0xC6, 0xDD, 0xD3, 0x75, 0x16, 0xD3, 0x35, 0x80, 0xD3, 0x34, 0x01, 0xD3, 0x35, 0x01, 0xD3, 0x15, 0x83, 0xD3, 0x14, 0xC5, 0xFB, 0xC7, 0x9F, 0xC7, 0x9E, 0x01, 0xC7, 0xBF, 0x01, 0xC7, 0x9E, 0x89, 0xC7, 0xBF, 0xC7, 0x9F, 0xBF, 0x9E, 0xBF, 0xBF, 0xBF, 0xBE, 0xB6, 0x7C, 0x8A, 0x53, 0x89, 0x71, 0xA1, 0x31, 0xA1, 0x12, 0x0A, 0xA1, 0x11, 0x80, 0xA1, 0x12, 0x01, 0xA1, 0x11, 0x85, 0xA1, 0x72, 0xB5, 0x39, 0xBF, 0x9F, 0x9B, 0xF6, 0x81, 0x91, 0x91, 0x51, 0x0C, 0xA1, 0x11, 0x80, 0xA1, 0x12, 0x01, 0xA1, 0x11, 0x83, 0xAB, 0x15, 0xBF, 0x3D, 0xC7, 0x9F, 0xC7, 0xBE, 0x01, 0xC7, 0x9F, 0x37, 0xC7, 0x9E, 0x82, 0xC7, 0x9F, 0xC7, 0x9E, 0xC7, 0x9F, 0x01, 0xC7, 0x9E, 0x84, 0xC7, 0xBF, 0xC7, 0x9F, 0xA4, 0xB8, 0x81, 0x91, 0x91, 0x51, 0x04, 0xA1, 0x11, 0x89, 0xA1, 0x12, 0xA1, 0x11, 0xBD, 0xFB, 0xC7, 0x9F, 0xC7, 0x9E, 0xC7, 0xBE, 0xC7, 0x9F, + 0xAC, 0xF9, 0x81, 0x91, 0x91, 0x71, 0x02, 0xA1, 0x11, 0x85, 0xA1, 0x12, 0xA1, 0x11, 0xA1, 0x31, 0xA1, 0x11, 0xBF, 0x3E, 0xBF, 0xBF, 0x02, 0xC7, 0x9E, 0x80, 0xC7, 0xBF, 0x02, 0xC7, 0x9E, 0x80, 0xBF, 0xBF, 0x02, 0xC7, 0x9E, 0x89, 0xBF, 0x9E, 0xC7, 0x9F, 0xC7, 0x9E, 0xBF, 0xBE, 0xC7, 0x9E, 0xC6, 0xBD, 0xD3, 0x55, 0xD2, 0xF5, 0xD3, 0x15, 0xCB, 0x14, 0x11, 0xD3, 0x14, 0x02, 0xD3, 0x15, 0x84, 0xD3, 0x14, 0xD2, 0xF4, 0xCA, 0xF4, 0xD2, 0xF4, 0xC6, 0x5C, 0x08, 0xBF, 0x9E, 0x83, 0xBF, 0x7F, 0xB6, 0x7C, 0x8A, 0x12, 0x89, 0x71, 0x01, 0xA1, 0x11, 0x82, 0xA9, 0x11, 0xA1, 0x11, 0xA9, 0x11, 0x02, 0xA1, 0x11, 0x01, 0xA9, 0x11, 0x02, 0xA1, 0x11, 0x80, 0xA9, 0x11, 0x02, 0xA1, 0x11, 0x84, 0xA9, 0x12, 0xA9, 0x11, 0xA1, 0xF3, 0x81, 0x91, 0x99, 0x31, 0x01, 0xA1, 0x11, 0x80, 0xA9, 0x12, 0x04, 0xA1, 0x11, 0x04, 0xA9, 0x11, 0x02, 0xA1, 0x11, 0x83, 0xA1, 0x12, 0xA9, 0x11, 0xAA, 0x54, 0xBF, 0x1D, 0x3F, 0xBF, 0x9E, 0x85, 0xB7, 0x9E, 0xBF, 0x9F, 0xA4, 0x98, 0x81, 0x91, 0x99, 0x51, 0xA9, 0x11, 0x04, 0xA1, 0x11, 0x88, 0xA9, 0x11, 0xB5, 0xFB, 0xBF, 0x9E, 0xBF, 0x9F, 0xBF, 0x9E, 0xBF, 0x9F, 0xA4, 0x98, 0x81, 0x91, 0x99, 0x51, 0x03, 0xA1, 0x11, 0x84, 0xA1, 0x12, 0xA1, 0x11, 0xA9, 0x11, 0xB5, 0xFB, 0xBF, 0x7E, 0x01, 0xBF, 0x9E, 0x80, 0xBF, 0x9F, 0x0D, 0xBF, 0x9E, 0x82, 0xBE, 0xBD, 0xD3, 0x35, 0xCA, 0xF4, 0x12, 0xD2, 0xF4, 0x83, 0xCA, 0xF4, 0xD2, 0xF4, 0xD2, 0xF5, 0xCA, 0xF4, 0x02, 0xD2, 0xD4, 0x84, 0xBE, 0x5C, 0xB7, 0x7E, 0xB7, 0x9E, 0xB7, 0x7E, 0xBF, + 0x7E, 0x02, 0xB7, 0x7E, 0x88, 0xB7, 0x9E, 0xBF, 0x7E, 0xAE, 0x7B, 0x89, 0xF2, 0x89, 0x71, 0xA1, 0x11, 0xA8, 0xF1, 0xA9, 0x11, 0xA8, 0xF1, 0x04, 0xA9, 0x11, 0x80, 0xA8, 0xF1, 0x02, 0xA9, 0x11, 0x82, 0xA8, 0xF1, 0xA9, 0x11, 0xA8, 0xF1, 0x01, 0xA9, 0x11, 0x80, 0xA9, 0x12, 0x01, 0xA9, 0x11, 0x86, 0xA1, 0x11, 0xA9, 0x11, 0xA8, 0xF1, 0xA9, 0x11, 0xA8, 0xF1, 0xA1, 0x11, 0xA9, 0x11, 0x01, 0xA8, 0xF1, 0x01, 0xA9, 0x11, 0x81, 0xA8, 0xF1, 0xA9, 0x11, 0x01, 0xA8, 0xF1, 0x80, 0xA9, 0x12, 0x02, 0xA9, 0x11, 0x83, 0xA8, 0xF1, 0xA1, 0x11, 0xAA, 0x34, 0xB7, 0x1E, 0x39, 0xBF, 0x7E, 0x01, 0xB7, 0x7E, 0x80, 0xBF, 0x7E, 0x01, 0xB7, 0x7E, 0x84, 0xBF, 0x7F, 0xB7, 0x7E, 0x9C, 0x97, 0x81, 0x91, 0x99, 0x51, 0x04, 0xA8, 0xF1, 0x84, 0xA9, 0x11, 0xA8, 0xF1, 0xB5, 0xDB, 0xBF, 0x7E, 0xB7, 0x7E, 0x01, 0xBF, 0x7E, 0x83, 0xA4, 0x78, 0x81, 0x91, 0x99, 0x51, 0xA9, 0x11, 0x01, 0xA8, 0xF1, 0x01, 0xA9, 0x11, 0x84, 0xA8, 0xF1, 0xA9, 0x11, 0xB5, 0xDB, 0xB7, 0x7F, 0xB7, 0x7E, 0x01, 0xBF, 0x7E, 0x80, 0xB7, 0x7E, 0x02, 0xBF, 0x7E, 0x01, 0xB7, 0x7E, 0x83, 0xBF, 0x7E, 0xB7, 0x7E, 0xBF, 0x7E, 0xB7, 0x7E, 0x01, 0xBF, 0x7E, 0x01, 0xB7, 0x7E, 0x82, 0xBF, 0x7E, 0xBE, 0x9D, 0xCB, 0x75, 0x15, 0xD2, 0xD4, 0x80, 0xD2, 0xD5, 0x02, 0xD2, 0xB4, 0x08, 0xB7, 0x7E, 0x86, 0xB7, 0x1D, 0x8A, 0x53, 0x81, 0x91, 0xA1, 0x11, 0xA8, 0xF1, 0xB0, 0xF1, 0xA9, 0x11, 0x16, 0xA8, 0xF1, 0x82, 0xA8, 0xF2, 0xA8, 0xF1, 0xB0, 0xF1, 0x0D, 0xA8, 0xF1, 0x80, 0xB2, 0xF5, 0x04, 0xB7, 0x7E, 0x80, 0xB7, + 0x5E, 0x02, 0xB7, 0x7E, 0x01, 0xB7, 0x5E, 0x81, 0xB7, 0x7E, 0xB7, 0x5E, 0x01, 0xB7, 0x7E, 0x80, 0xB7, 0x5E, 0x0C, 0xB7, 0x7E, 0x01, 0xB7, 0x5E, 0x14, 0xB7, 0x7E, 0x80, 0xB7, 0x5E, 0x01, 0xB7, 0x7E, 0x82, 0xB7, 0x5E, 0xB7, 0x7E, 0xB7, 0x5E, 0x06, 0xB7, 0x7E, 0x82, 0x9C, 0x78, 0x81, 0x91, 0x99, 0x51, 0x06, 0xA8, 0xF1, 0x80, 0xB5, 0xDB, 0x03, 0xB7, 0x7E, 0x82, 0x9C, 0x77, 0x81, 0x91, 0x91, 0x51, 0x06, 0xA8, 0xF1, 0x80, 0xB5, 0xDB, 0x02, 0xB7, 0x7E, 0x82, 0xB7, 0x5E, 0xB7, 0x7E, 0xB7, 0x5E, 0x06, 0xB7, 0x7E, 0x80, 0xB7, 0x5E, 0x04, 0xB7, 0x7E, 0x82, 0xB7, 0x5E, 0xB7, 0x1D, 0xCB, 0x96, 0x01, 0xD2, 0xB4, 0x86, 0xCA, 0xB4, 0xD2, 0xB4, 0xCA, 0xB4, 0xD2, 0xB4, 0xCA, 0xB4, 0xD2, 0xB4, 0xCA, 0xB4, 0x07, 0xD2, 0xB4, 0x80, 0xCA, 0x94, 0x02, 0xD2, 0xB4, 0x80, 0xCA, 0xB4, 0x01, 0xD2, 0x94, 0x80, 0xCA, 0x94, 0x04, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x89, 0xB7, 0x5E, 0x94, 0x16, 0x89, 0x91, 0x99, 0x51, 0xB0, 0xF1, 0xA8, 0xF1, 0xB0, 0xF1, 0xA8, 0xF1, 0xB0, 0xF1, 0xA8, 0xF1, 0x02, 0xB0, 0xF1, 0x80, 0xA8, 0xF1, 0x09, 0xB0, 0xF1, 0x01, 0xA8, 0xF1, 0x81, 0xB0, 0xF1, 0xA8, 0xF1, 0x02, 0xB0, 0xF1, 0x80, 0xB0, 0xD1, 0x01, 0xB0, 0xF1, 0x81, 0xB0, 0xF2, 0xA8, 0xF1, 0x01, 0xB0, 0xF1, 0x84, 0xB0, 0xD1, 0xB0, 0xF1, 0xB0, 0xF2, 0xA8, 0xF1, 0xB0, 0xF2, 0x02, 0xB0, 0xF1, 0x80, 0xA8, 0xF1, 0x01, 0xB0, 0xF1, 0x80, 0xAC, 0xF9, 0x01, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x05, 0xAF, 0x5E, 0x80, 0xAF, 0x7E, 0x02, 0xAF, 0x5E, 0x02, 0xB7, 0x5E, 0x83, + 0xAF, 0x5E, 0xB7, 0x5E, 0xAF, 0x5E, 0xB7, 0x5E, 0x03, 0xAF, 0x5E, 0x02, 0xB7, 0x5E, 0x02, 0xAF, 0x5E, 0x01, 0xB7, 0x5E, 0x0A, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x02, 0xAF, 0x5E, 0x01, 0xB7, 0x5E, 0x02, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x03, 0xAF, 0x5E, 0x81, 0xAF, 0x5D, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x82, 0x9C, 0x77, 0x81, 0x91, 0x99, 0x51, 0x06, 0xB0, 0xF1, 0x80, 0xAD, 0xBB, 0x03, 0xB7, 0x5E, 0x82, 0x9C, 0x78, 0x89, 0x91, 0x99, 0x51, 0x06, 0xB0, 0xF1, 0x80, 0xB5, 0xBB, 0x01, 0xB7, 0x5E, 0x04, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x02, 0xB7, 0x5E, 0x80, 0xAF, 0x5E, 0x02, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x8B, 0xB7, 0x5E, 0xAF, 0x5E, 0xAF, 0x1D, 0xCB, 0x75, 0xCA, 0x93, 0xD2, 0x94, 0xCA, 0x74, 0xCA, 0x94, 0xCA, 0x74, 0xD2, 0x74, 0xCA, 0x74, 0xD2, 0x94, 0x07, 0xCA, 0x94, 0x84, 0xD2, 0x94, 0xCA, 0x93, 0xCA, 0x94, 0xD2, 0x93, 0xCA, 0x74, 0x01, 0xD2, 0x74, 0x89, 0xCA, 0x53, 0xAF, 0x5E, 0xAF, 0x3E, 0xAF, 0x5E, 0xAF, 0x3E, 0xAF, 0x3D, 0xAF, 0x5D, 0xAF, 0x3D, 0xAF, 0x3E, 0xA6, 0x9C, 0x01, 0x81, 0x91, 0x02, 0xB0, 0xF1, 0x81, 0xB0, 0xD1, 0xB0, 0xF2, 0x01, 0xB0, 0xD1, 0x80, 0xB0, 0xF2, 0x01, 0xB0, 0xF1, 0x8C, 0xAA, 0x13, 0xB4, 0x18, 0xA4, 0x38, 0x9A, 0xB4, 0x99, 0x31, 0xA8, 0xF1, 0xB0, 0xF1, 0xB0, 0xF2, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x81, 0xB0, 0xF1, 0xB0, 0xD1, 0x03, 0xB0, 0xF1, 0x88, 0xAA, 0x74, 0xAC, 0x78, 0xAC, 0xF9, 0x9B, 0x35, 0x99, 0x31, + 0xA8, 0xF1, 0xB0, 0xF1, 0xB0, 0xF2, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x84, 0xB0, 0xF1, 0xB0, 0xF2, 0xB0, 0xD1, 0xB0, 0xF1, 0xA9, 0xB3, 0x03, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x01, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x02, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x01, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x01, 0xAF, 0x3E, 0x01, 0xAF, 0x3D, 0x01, 0xAF, 0x3E, 0x81, 0xAF, 0x5E, 0xAF, 0x3E, 0x01, 0xAF, 0x3D, 0x03, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x01, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x07, 0xAF, 0x3E, 0x81, 0xAF, 0x3D, 0xAF, 0x5E, 0x03, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x02, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x04, 0xAF, 0x3E, 0x82, 0xAF, 0x5E, 0xAF, 0x3E, 0xAF, 0x5E, 0x03, 0xAF, 0x3E, 0x84, 0x9C, 0x77, 0x81, 0x91, 0x99, 0x31, 0xB0, 0xF1, 0xB0, 0xD1, 0x04, 0xB0, 0xF1, 0x80, 0xAD, 0xBB, 0x01, 0xAF, 0x3E, 0x84, 0xAF, 0x5D, 0xAF, 0x3E, 0x94, 0x77, 0x81, 0x91, 0x99, 0x51, 0x01, 0xB0, 0xD1, 0x80, 0xB0, 0xF1, 0x03, 0xB0, 0xD1, 0x84, 0xAD, 0xBA, 0xAF, 0x3E, 0xAF, 0x5E, 0xAF, 0x3E, 0xAF, 0x5E, 0x02, 0xAF, 0x3E, 0x80, 0xAF, 0x3D, 0x02, 0xAF, 0x5E, 0x01, 0xAF, 0x3D, 0x03, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x03, 0xAF, 0x3E, 0x84, 0xAE, 0xFD, 0xCB, 0x56, 0xCA, 0x53, 0xCA, 0x74, 0xD2, 0x53, 0x01, 0xD2, 0x74, 0x81, 0xD2, 0x73, 0xCA, 0x73, 0x07, 0xD2, 0x74, 0x81, 0xD2, 0x54, 0xCA, 0x74, 0x01, 0xCA, 0x54, 0x80, 0xCA, 0x74, 0x02, 0xCA, 0x53, 0x03, 0xA7, 0x3E, 0x03, 0xA7, 0x3D, 0x85, 0x94, 0x57, 0x81, 0x91, 0x99, 0x31, 0xB8, 0xD1, 0xB0, 0xD1, 0xB8, 0xD1, 0x02, 0xB0, 0xD1, 0x83, 0xB0, + 0xF1, 0xB0, 0xD1, 0xB1, 0xB3, 0xAD, 0x9A, 0x01, 0xAF, 0x3D, 0x01, 0xA7, 0x3D, 0x85, 0x9D, 0xDA, 0x89, 0xD1, 0x99, 0x51, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF1, 0x02, 0xB0, 0xD1, 0x01, 0xB8, 0xD1, 0x02, 0xB0, 0xD1, 0x84, 0xB0, 0xF1, 0xB2, 0x13, 0xAD, 0x9B, 0xA7, 0x3E, 0xA7, 0x3D, 0x01, 0xAF, 0x3E, 0x82, 0x9D, 0xDA, 0x81, 0xF2, 0x91, 0x71, 0x01, 0xB0, 0xF1, 0x81, 0xB0, 0xD1, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x85, 0xB8, 0xD1, 0xB8, 0xD2, 0xB0, 0xF1, 0xAD, 0x39, 0xA7, 0x3D, 0xA7, 0x3E, 0x04, 0xA7, 0x3D, 0x80, 0xA7, 0x3E, 0x02, 0xA7, 0x3D, 0x80, 0xAF, 0x3D, 0x02, 0xA7, 0x3D, 0x01, 0xA7, 0x3E, 0x81, 0xA7, 0x3D, 0xAF, 0x3D, 0x01, 0xA7, 0x3D, 0x81, 0xA7, 0x3E, 0xAF, 0x3D, 0x01, 0xA7, 0x3E, 0x81, 0xA7, 0x3D, 0xAF, 0x3D, 0x01, 0xA7, 0x3D, 0x82, 0xA7, 0x3E, 0xAF, 0x3E, 0xAF, 0x1E, 0x07, 0xA7, 0x3E, 0x84, 0xAF, 0x3E, 0xA7, 0x3E, 0xA7, 0x3D, 0xAF, 0x3E, 0xA7, 0x3E, 0x02, 0xA7, 0x3D, 0x80, 0xAF, 0x3D, 0x02, 0xA7, 0x3E, 0x83, 0xA7, 0x3D, 0xAF, 0x3D, 0xA7, 0x3D, 0xAF, 0x3D, 0x01, 0xA7, 0x3E, 0x81, 0xAF, 0x3D, 0xA7, 0x3E, 0x01, 0xA7, 0x3D, 0x83, 0xA7, 0x3E, 0x94, 0x78, 0x81, 0x91, 0x99, 0x31, 0x05, 0xB0, 0xD1, 0x84, 0xB8, 0xD1, 0xAD, 0x9A, 0xA7, 0x3E, 0xA7, 0x3D, 0xA7, 0x3E, 0x02, 0xA7, 0x3D, 0x80, 0xAF, 0x3D, 0x04, 0xA7, 0x3D, 0x80, 0xAF, 0x3D, 0x02, 0xA7, 0x3D, 0x81, 0xAF, 0x3E, 0xA7, 0x3E, 0x02, 0xA7, 0x3D, 0x84, 0xAF, 0x3D, 0xAF, 0x3E, 0xA7, 0x3D, 0xAF, 0x3D, 0xAF, 0x3E, 0x01, 0xA7, 0x3D, 0x81, 0xAF, 0x3D, 0xA7, 0x3E, 0x02, 0xAF, 0x3D, + 0x80, 0xA7, 0x3E, 0x01, 0xA7, 0x3D, 0x83, 0xAF, 0x3D, 0xA7, 0x3D, 0xAE, 0xDD, 0xC3, 0x76, 0x03, 0xCA, 0x53, 0x80, 0xCA, 0x33, 0x08, 0xCA, 0x53, 0x82, 0xD2, 0x33, 0xCA, 0x53, 0xD2, 0x53, 0x01, 0xCA, 0x53, 0x82, 0xCA, 0x13, 0xCA, 0x33, 0xCA, 0x13, 0x04, 0xA7, 0x1D, 0x02, 0xA7, 0x3D, 0x82, 0x8A, 0x53, 0x81, 0x91, 0xA8, 0xF1, 0x02, 0xB8, 0xD1, 0x80, 0xB0, 0xD1, 0x02, 0xB8, 0xD1, 0x83, 0xB2, 0x13, 0xA6, 0xBD, 0xA7, 0x1D, 0xA7, 0x3E, 0x03, 0xA7, 0x1D, 0x83, 0x9E, 0x1B, 0x81, 0xF1, 0x91, 0x71, 0xB0, 0xF1, 0x08, 0xB8, 0xD1, 0x81, 0xB1, 0xF3, 0xA6, 0xBD, 0x03, 0xA7, 0x1D, 0x84, 0xA7, 0x3D, 0xA7, 0x1D, 0x9E, 0x1B, 0x89, 0xF2, 0x89, 0x91, 0x05, 0xB8, 0xD1, 0x82, 0xB0, 0xD1, 0xB8, 0xD1, 0xB3, 0x36, 0x09, 0xA7, 0x1D, 0x02, 0xA7, 0x3D, 0x01, 0xA7, 0x1D, 0x82, 0xA7, 0x3D, 0xA7, 0x1D, 0xA7, 0x1E, 0x01, 0xA7, 0x1D, 0x81, 0xA7, 0x3D, 0xA7, 0x3E, 0x02, 0xA7, 0x1D, 0x83, 0xA7, 0x3E, 0xA7, 0x1D, 0xA7, 0x3E, 0xA7, 0x3D, 0x01, 0xA7, 0x1D, 0x80, 0xA7, 0x3D, 0x09, 0xA7, 0x1D, 0x02, 0xA7, 0x3D, 0x81, 0xA7, 0x3E, 0xA7, 0x1D, 0x01, 0xA7, 0x3D, 0x05, 0xA7, 0x1D, 0x80, 0xA7, 0x3D, 0x01, 0xA7, 0x1D, 0x80, 0xA7, 0x3E, 0x01, 0xA7, 0x3D, 0x01, 0xA7, 0x1D, 0x82, 0x94, 0x77, 0x81, 0x91, 0x99, 0x31, 0x06, 0xB8, 0xD1, 0x83, 0xA5, 0x9A, 0xA7, 0x1D, 0xA7, 0x3D, 0xA7, 0x3E, 0x01, 0xA7, 0x1D, 0x81, 0xA7, 0x1E, 0xA7, 0x3D, 0x07, 0xA7, 0x1D, 0x01, 0xA7, 0x3D, 0x84, 0xA7, 0x1E, 0xA7, 0x1D, 0xA7, 0x3D, 0xA7, 0x1D, 0xA7, 0x3D, 0x05, 0xA7, 0x1D, 0x01, 0xA7, 0x3D, + 0x80, 0xA7, 0x1D, 0x01, 0xA7, 0x3D, 0x81, 0xA7, 0x1D, 0xA7, 0x3E, 0x04, 0xA7, 0x1D, 0x83, 0xBB, 0xF7, 0xCA, 0x13, 0xCA, 0x33, 0xCA, 0x13, 0x09, 0xCA, 0x33, 0x01, 0xCA, 0x13, 0x82, 0xCA, 0x14, 0xD2, 0x33, 0xCA, 0x33, 0x02, 0xCA, 0x13, 0x01, 0x9F, 0x1D, 0x80, 0xA7, 0x1D, 0x01, 0x9F, 0x1D, 0x80, 0xA7, 0x1D, 0x01, 0x9F, 0x1D, 0x01, 0x81, 0x91, 0x07, 0xB8, 0xD1, 0x80, 0xA5, 0xDB, 0x01, 0x9F, 0x1D, 0x80, 0x9E, 0xFD, 0x02, 0x9F, 0x1D, 0x84, 0xA6, 0xFD, 0x9F, 0x1D, 0x94, 0xF9, 0x81, 0x91, 0x99, 0x31, 0x01, 0xB8, 0xD1, 0x80, 0xB8, 0xB1, 0x04, 0xB8, 0xD1, 0x81, 0xB8, 0xB1, 0xA5, 0xDB, 0x03, 0x9F, 0x1D, 0x80, 0xA6, 0xFD, 0x02, 0x9F, 0x1D, 0x82, 0x94, 0xF9, 0x81, 0x91, 0x99, 0x31, 0x06, 0xB8, 0xD1, 0x80, 0xB9, 0x32, 0x02, 0x9F, 0x1D, 0x80, 0x9F, 0x1E, 0x04, 0x9F, 0x1D, 0x84, 0x9E, 0x1B, 0x94, 0x57, 0x92, 0xD4, 0xA1, 0xF3, 0xA9, 0x11, 0x01, 0xB0, 0xF1, 0x81, 0xA9, 0x11, 0xB2, 0x74, 0x01, 0xB2, 0x54, 0x81, 0xAB, 0xF7, 0xA5, 0xDB, 0x01, 0xA6, 0xFD, 0x01, 0xA7, 0x1D, 0x01, 0x9F, 0x1D, 0x80, 0xA6, 0xFD, 0x01, 0x9F, 0x1D, 0x80, 0xA7, 0x1D, 0x0A, 0x9F, 0x1D, 0x8C, 0x9E, 0x7C, 0x94, 0x98, 0x8B, 0x14, 0x9A, 0x13, 0xA1, 0x31, 0xA9, 0x12, 0xB0, 0xF1, 0xA8, 0xF1, 0xB2, 0x55, 0xB2, 0x74, 0xB2, 0x54, 0xAB, 0x97, 0xAD, 0x1A, 0x03, 0x9F, 0x1D, 0x85, 0xA7, 0x1D, 0x9F, 0x1D, 0xA7, 0x1D, 0x94, 0x57, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xB8, 0xD1, 0x87, 0xA5, 0x7A, 0x9F, 0x1D, 0xA7, 0x1D, 0x9F, 0x1D, 0xA7, 0x1D, 0x9E, 0x7C, 0x9D, 0xBA, 0xA5, 0x9A, 0x06, + 0xA5, 0x7A, 0x80, 0xA6, 0x9C, 0x02, 0x9F, 0x1D, 0x80, 0xA7, 0x1D, 0x06, 0x9F, 0x1D, 0x85, 0x9E, 0x5C, 0x94, 0xB8, 0x8A, 0xF4, 0x9A, 0x13, 0xA1, 0x31, 0xA8, 0xF1, 0x01, 0xB0, 0xF1, 0x88, 0xB9, 0x32, 0xB2, 0x74, 0xB2, 0x54, 0xB3, 0x36, 0xAC, 0xB9, 0xA6, 0x3C, 0x9F, 0x1D, 0xBB, 0xF7, 0xC9, 0xF3, 0x02, 0xCA, 0x13, 0x07, 0xC9, 0xF3, 0x04, 0xCA, 0x13, 0x02, 0xC9, 0xD3, 0x06, 0x9E, 0xFD, 0x87, 0x95, 0x9A, 0x81, 0x91, 0x91, 0x51, 0xC0, 0xB1, 0xB8, 0xD1, 0xC0, 0xB1, 0xB8, 0xD1, 0xC0, 0xD1, 0x01, 0xB8, 0xD1, 0x80, 0xB2, 0xB5, 0x09, 0x9E, 0xFD, 0x81, 0x82, 0x52, 0x81, 0x91, 0x03, 0xB8, 0xD1, 0x84, 0xC0, 0xB1, 0xC0, 0xD1, 0xB8, 0xD1, 0xC0, 0xD1, 0xB1, 0xF3, 0x04, 0x9E, 0xFD, 0x80, 0x9F, 0x1D, 0x03, 0x9E, 0xFD, 0x81, 0x8A, 0x93, 0x81, 0x91, 0x01, 0xB8, 0xD1, 0x80, 0xC0, 0xD1, 0x03, 0xB8, 0xD1, 0x81, 0xC0, 0xB1, 0xA6, 0x3C, 0x05, 0x9E, 0xFD, 0x83, 0x94, 0xF8, 0x8A, 0x53, 0x91, 0x71, 0xB0, 0xF1, 0x02, 0xB8, 0xD1, 0x01, 0xB8, 0xB1, 0x80, 0xC0, 0xB1, 0x01, 0xC0, 0xD1, 0x84, 0xB8, 0xD1, 0xC0, 0xD1, 0xB8, 0xB1, 0xB9, 0x92, 0xAC, 0xB9, 0x10, 0x9E, 0xFD, 0x83, 0x9E, 0x5C, 0x8B, 0x96, 0x89, 0x91, 0xA1, 0x31, 0x01, 0xB8, 0xD1, 0x80, 0xC0, 0xB1, 0x05, 0xB8, 0xD1, 0x84, 0xC0, 0xB1, 0xB8, 0xD1, 0xB9, 0x32, 0xAB, 0xF7, 0x9E, 0x9C, 0x03, 0x9E, 0xFD, 0x85, 0x94, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xB8, 0xD1, 0xC0, 0xB1, 0xB8, 0xD1, 0x01, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x80, 0xA5, 0x7A, 0x03, 0x9E, 0xFD, 0x84, 0x94, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xB8, + 0xD1, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x80, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x80, 0xA5, 0x7A, 0x08, 0x9E, 0xFD, 0x83, 0x9E, 0x9C, 0x8B, 0x96, 0x89, 0x71, 0xA1, 0x31, 0x01, 0xB8, 0xD1, 0x83, 0xC0, 0xB1, 0xB8, 0xD1, 0xC0, 0xB1, 0xC0, 0xD1, 0x01, 0xB8, 0xD1, 0x80, 0xC0, 0xD1, 0x01, 0xB8, 0xD1, 0x85, 0xC0, 0xD1, 0xB3, 0x35, 0xA6, 0x3C, 0xBB, 0xD7, 0xC9, 0xD3, 0xC9, 0xF3, 0x08, 0xC9, 0xD3, 0x80, 0xC9, 0xF3, 0x01, 0xC9, 0xD3, 0x81, 0xC9, 0xF3, 0xC9, 0xD3, 0x02, 0xC9, 0xB3, 0x84, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xFC, 0x01, 0x96, 0xFD, 0x84, 0x95, 0x99, 0x89, 0x91, 0x91, 0x71, 0xC0, 0xB1, 0xC0, 0xD1, 0x03, 0xC0, 0xB1, 0x82, 0xC0, 0xD1, 0xAB, 0xD7, 0x9E, 0xFC, 0x01, 0x96, 0xFD, 0x89, 0x96, 0xDD, 0x96, 0xFD, 0x9E, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xDD, 0x9E, 0xFD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x11, 0x01, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x83, 0xC0, 0xD1, 0xC0, 0xB1, 0xAB, 0x76, 0x9E, 0xDD, 0x01, 0x9E, 0xFD, 0x01, 0x9E, 0xDD, 0x88, 0x96, 0xDD, 0x9E, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xDD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x89, 0xC0, 0xD1, 0xA5, 0x5A, 0x96, 0xFD, 0x9E, 0xDD, 0x9E, 0xFD, 0x96, 0xFD, 0x96, 0x3B, 0x8A, 0xF4, 0x89, 0x91, 0xA9, 0x11, 0x01, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x03, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x03, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x87, 0xB9, 0x92, 0xA5, 0x5A, 0x9E, 0xDD, 0x9E, 0xFC, + 0x96, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xFD, 0x07, 0x96, 0xFD, 0x84, 0x94, 0xF9, 0x81, 0xF1, 0x91, 0x71, 0xB8, 0xD2, 0xC0, 0xB1, 0x01, 0xC0, 0xD1, 0x83, 0xC0, 0xB1, 0xC0, 0xD1, 0xC0, 0xB1, 0xC0, 0xD1, 0x06, 0xC0, 0xB1, 0x87, 0xB9, 0x92, 0x9D, 0xBB, 0x96, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x81, 0xA5, 0x5A, 0x9E, 0xDD, 0x01, 0x96, 0xFD, 0x83, 0x9E, 0xFD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x83, 0xA5, 0x5A, 0x96, 0xFD, 0x9E, 0xFD, 0x96, 0xFD, 0x01, 0x9E, 0xFD, 0x86, 0x96, 0xFD, 0x9E, 0xFD, 0x96, 0xFD, 0x95, 0x39, 0x81, 0xF1, 0x91, 0x71, 0xB0, 0xD1, 0x02, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x05, 0xC0, 0xB1, 0x83, 0xB8, 0xD1, 0xB9, 0x11, 0xAC, 0xFA, 0xB4, 0x58, 0x0A, 0xC9, 0xB3, 0x80, 0xC9, 0xD2, 0x01, 0xC9, 0xD3, 0x80, 0xC9, 0xB3, 0x01, 0xC9, 0x93, 0x81, 0xC9, 0x92, 0x96, 0xDC, 0x05, 0x96, 0xDD, 0x82, 0x8D, 0x79, 0x81, 0x91, 0x91, 0x51, 0x06, 0xC0, 0xB1, 0x80, 0xAB, 0xD7, 0x09, 0x96, 0xDD, 0x82, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x80, 0xAB, 0xD7, 0x09, 0x96, 0xDD, 0x82, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x80, 0x9D, 0x5A, 0x02, 0x96, 0xDD, 0x83, 0x95, 0xDA, 0x89, 0xF2, 0x89, 0x71, 0xB8, 0xD1, 0x01, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x0E, 0xC0, 0xB1, 0x80, 0xA4, 0x99, 0x04, 0x96, 0xDD, 0x80, 0x96, 0xDC, 0x05, 0x96, 0xDD, 0x82, 0x8C, 0x37, 0x81, 0x91, 0x99, 0x31, 0x0B, 0xC0, 0xB1, 0x80, + 0xC8, 0xB1, 0x04, 0xC0, 0xB1, 0x85, 0xA4, 0x99, 0x96, 0xDC, 0x96, 0xDD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x11, 0x06, 0xC0, 0xB1, 0x80, 0x9D, 0x5A, 0x03, 0x96, 0xDD, 0x82, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x80, 0x9D, 0x5A, 0x06, 0x96, 0xDD, 0x82, 0x8C, 0xD8, 0x81, 0x91, 0x99, 0x51, 0x05, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x06, 0xC0, 0xB1, 0x84, 0xAC, 0x79, 0xAC, 0xF9, 0xC9, 0x92, 0xC9, 0x93, 0xC9, 0xB2, 0x01, 0xC9, 0x92, 0x02, 0xC9, 0x93, 0x02, 0xC9, 0x92, 0x02, 0xC9, 0x93, 0x02, 0xC9, 0x72, 0x80, 0x8E, 0xBC, 0x01, 0x8E, 0xBD, 0x02, 0x8E, 0xBC, 0x83, 0x8E, 0xBD, 0x8D, 0x7A, 0x81, 0x91, 0x91, 0x51, 0x04, 0xC0, 0xB1, 0x83, 0xC8, 0xB1, 0xC0, 0xB1, 0xAB, 0xB7, 0x8E, 0xBD, 0x07, 0x8E, 0xBC, 0x85, 0x8E, 0xBD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xC0, 0xB1, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x82, 0xC8, 0xB1, 0xC0, 0xB1, 0xAB, 0xB7, 0x02, 0x8E, 0xBC, 0x82, 0x8E, 0xDC, 0x8E, 0xBC, 0x8E, 0xDD, 0x01, 0x8E, 0xBC, 0x84, 0x8E, 0xBD, 0x8E, 0xBC, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x85, 0x9D, 0x39, 0x8E, 0xBD, 0x8E, 0xDD, 0x8D, 0xBA, 0x81, 0xF2, 0x91, 0x71, 0x01, 0xC0, 0xB1, 0x87, 0xC8, 0xB1, 0xC0, 0xB1, 0xC0, 0xD1, 0xC0, 0xB1, 0xC8, 0xB1, 0xC8, 0xB2, 0xC0, 0xB1, 0xC8, 0xB2, 0x01, 0xC8, 0xB1, 0x81, 0xC0, 0xD1, 0xC0, 0xB1, 0x01, 0xC0, 0xD1, 0x80, 0xC8, 0xB1, 0x01, 0xC0, 0xB1, 0x86, 0xC8, 0xB1, 0xC0, 0xB1, 0xA4, 0x37, 0x8E, 0xBC, 0x8E, 0xDD, 0x8E, 0xBC, 0x8E, 0xBD, 0x01, + 0x8E, 0xBC, 0x81, 0x8E, 0xBD, 0x8E, 0xBC, 0x01, 0x8E, 0xBD, 0x82, 0x8C, 0xD8, 0x81, 0x91, 0xA1, 0x31, 0x01, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x01, 0xC0, 0xB1, 0x83, 0xC8, 0xB2, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x01, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x8A, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0xA4, 0xD9, 0x8E, 0xBC, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xC0, 0xB1, 0xC8, 0xB1, 0xC0, 0xD1, 0x02, 0xC0, 0xB1, 0x81, 0xC8, 0xB1, 0x9D, 0x3A, 0x03, 0x8E, 0xBC, 0x82, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x80, 0x9D, 0x5A, 0x01, 0x8E, 0xBC, 0x80, 0x8E, 0xDC, 0x02, 0x8E, 0xBC, 0x89, 0x8C, 0xD8, 0x81, 0x91, 0x99, 0x51, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0xC8, 0xB2, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x04, 0xC0, 0xB1, 0x02, 0xC8, 0xB1, 0x82, 0xC8, 0xD1, 0xA4, 0x78, 0xA4, 0xD9, 0x0C, 0xC9, 0x72, 0x02, 0xC9, 0x52, 0x06, 0x8E, 0xBC, 0x84, 0x8D, 0x59, 0x81, 0x91, 0x91, 0x71, 0xC8, 0xF2, 0xC8, 0xF1, 0x02, 0xC8, 0xF2, 0x82, 0xC8, 0xF1, 0xC8, 0xF2, 0xAB, 0xD7, 0x09, 0x8E, 0xBC, 0x84, 0x8C, 0x36, 0x81, 0x91, 0xA9, 0x31, 0xC8, 0xF2, 0xC8, 0xF1, 0x03, 0xC8, 0xF2, 0x81, 0xC0, 0xF2, 0xAB, 0xB7, 0x09, 0x8E, 0xBC, 0x82, 0x84, 0x37, 0x81, 0x91, 0xA9, 0x51, 0x01, 0xC8, 0xF1, 0x80, 0xC8, 0xF2, 0x01, 0xC8, 0xF1, 0x87, 0xC8, 0xF2, 0xC8, 0xF1, 0x9D, 0x3A, 0x8E, 0xBC, 0x8E, 0x1B, 0x81, 0xF2, 0x89, 0x71, 0xB9, 0x12, 0x01, 0xC8, 0xF1, 0x80, 0xC8, 0xF2, 0x02, 0xC8, 0xF1, 0x82, 0xC8, 0xF2, + 0xC8, 0xD1, 0xC1, 0x12, 0x02, 0xC8, 0xF2, 0x8A, 0xC8, 0xD1, 0xC8, 0xF2, 0xC8, 0xD1, 0xC8, 0xF2, 0xC0, 0xF1, 0xC8, 0xF1, 0xC8, 0xF2, 0xC8, 0xF1, 0xC8, 0xF2, 0xC0, 0xF1, 0xA4, 0x98, 0x07, 0x8E, 0xBC, 0x80, 0x8D, 0xBA, 0x01, 0x89, 0x91, 0x8E, 0xC0, 0xF1, 0xC8, 0xF2, 0xC0, 0xF2, 0xC8, 0xF1, 0xC8, 0xF2, 0xC8, 0xF1, 0xC0, 0xF1, 0xC8, 0xF2, 0xC8, 0xF1, 0xC8, 0xF2, 0xC0, 0xF2, 0xC8, 0xF1, 0xC0, 0xF1, 0xC8, 0xF2, 0xC8, 0xF1, 0x02, 0xC8, 0xF2, 0x01, 0xC8, 0xF1, 0x85, 0xC0, 0xF2, 0xC1, 0x32, 0x8E, 0x5C, 0x8C, 0x17, 0x81, 0x91, 0xA9, 0x31, 0x03, 0xC8, 0xF2, 0x80, 0xC8, 0xF1, 0x01, 0xC8, 0xF2, 0x80, 0x9D, 0x59, 0x03, 0x8E, 0xBC, 0x82, 0x8C, 0x17, 0x81, 0x91, 0xA9, 0x51, 0x01, 0xC8, 0xF1, 0x80, 0xC8, 0xF2, 0x01, 0xC8, 0xF1, 0x82, 0xC8, 0xF2, 0xC8, 0xF1, 0x9D, 0x5A, 0x03, 0x8E, 0xBC, 0x84, 0x8E, 0xBD, 0x8D, 0xBA, 0x81, 0xF2, 0x89, 0x91, 0xC1, 0x11, 0x02, 0xC8, 0xF1, 0x80, 0xC0, 0xF2, 0x01, 0xC8, 0xF1, 0x83, 0xC0, 0xF2, 0xC8, 0xD2, 0xC8, 0xF1, 0xC8, 0xF2, 0x01, 0xC0, 0xF1, 0x82, 0xC8, 0xF2, 0xC0, 0xF1, 0xC8, 0xF1, 0x01, 0xC8, 0xF2, 0x01, 0xC8, 0xF1, 0x84, 0xC8, 0xF2, 0xC1, 0x52, 0x95, 0xFB, 0xA4, 0xB8, 0xC1, 0x52, 0x02, 0xC9, 0x52, 0x80, 0xC9, 0x72, 0x06, 0xC9, 0x52, 0x02, 0xC9, 0x32, 0x06, 0x8E, 0xBC, 0x84, 0x8D, 0x79, 0x81, 0x91, 0x91, 0x71, 0xC1, 0x32, 0xC1, 0x31, 0x01, 0xC9, 0x12, 0x83, 0xC1, 0x32, 0xC9, 0x11, 0xC9, 0x12, 0xAB, 0xF7, 0x08, 0x8E, 0xBC, 0x85, 0x96, 0xBC, 0x8C, 0x36, 0x81, 0x91, 0xA9, 0x51, 0xC9, 0x12, 0xC9, 0x11, + 0x01, 0xC9, 0x12, 0x80, 0xC1, 0x12, 0x01, 0xC9, 0x12, 0x80, 0xAB, 0xF7, 0x09, 0x8E, 0xBC, 0x82, 0x8C, 0x36, 0x81, 0x91, 0xA9, 0x51, 0x02, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x01, 0xC9, 0x12, 0x86, 0x9D, 0x59, 0x8E, 0xBC, 0x8A, 0xD4, 0x81, 0x91, 0xB1, 0x52, 0xC9, 0x12, 0xC1, 0x31, 0x05, 0xC9, 0x12, 0x80, 0xC9, 0x32, 0x03, 0xC9, 0x12, 0x82, 0xC9, 0x11, 0xC1, 0x12, 0xC9, 0x32, 0x01, 0xC9, 0x12, 0x81, 0xC9, 0x32, 0xC9, 0x11, 0x01, 0xC9, 0x12, 0x93, 0xC9, 0x32, 0xC1, 0x31, 0x9D, 0xBA, 0x8E, 0xBC, 0x96, 0xBC, 0x8E, 0xBC, 0x8E, 0xDC, 0x96, 0xBB, 0x8E, 0xBC, 0x8E, 0xDC, 0x82, 0xD4, 0x81, 0x91, 0xB9, 0x32, 0xC9, 0x12, 0xC1, 0x12, 0xC9, 0x12, 0xC1, 0x12, 0xC9, 0x12, 0xC1, 0x12, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x85, 0xC9, 0x32, 0xC9, 0x11, 0xC1, 0x31, 0xC9, 0x12, 0xC1, 0x32, 0xC1, 0x31, 0x01, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x80, 0xC1, 0x31, 0x01, 0xC9, 0x12, 0x83, 0xB3, 0x56, 0x8C, 0x36, 0x81, 0x91, 0xA1, 0x51, 0x05, 0xC9, 0x12, 0x83, 0xC1, 0x12, 0x9D, 0x59, 0x8E, 0xBC, 0x96, 0xBC, 0x01, 0x8E, 0xBC, 0x82, 0x8C, 0x37, 0x81, 0x91, 0xA9, 0x51, 0x02, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x01, 0xC9, 0x12, 0x80, 0x9D, 0x59, 0x02, 0x8E, 0xBC, 0x84, 0x96, 0xBC, 0x8E, 0xBC, 0x82, 0xF4, 0x89, 0x91, 0xB1, 0x51, 0x01, 0xC9, 0x12, 0x80, 0xC9, 0x32, 0x01, 0xC9, 0x12, 0x82, 0xC1, 0x31, 0xC9, 0x32, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x83, 0xC9, 0x32, 0xC9, 0x11, 0xC9, 0x12, 0xC9, 0x11, 0x01, 0xC9, 0x32, 0x82, 0xC1, 0x12, 0xC9, 0x11, 0xC1, 0x32, 0x01, 0xC9, 0x12, + 0x84, 0xC9, 0x32, 0xB3, 0x36, 0x96, 0xBC, 0xA4, 0xF9, 0xC1, 0x92, 0x09, 0xC9, 0x32, 0x02, 0xC9, 0x12, 0x02, 0x9E, 0xDB, 0x80, 0x9E, 0xDC, 0x02, 0x9E, 0xDB, 0x82, 0x95, 0x78, 0x81, 0x91, 0x99, 0x91, 0x06, 0xC9, 0x52, 0x80, 0xB4, 0x17, 0x09, 0x9E, 0xDB, 0x82, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x72, 0x06, 0xC9, 0x52, 0x82, 0xA5, 0x18, 0x9E, 0xDB, 0x96, 0xDB, 0x07, 0x9E, 0xDB, 0x82, 0x94, 0x36, 0x81, 0x91, 0xA1, 0x71, 0x06, 0xC9, 0x52, 0x83, 0xA5, 0x79, 0x94, 0xD8, 0x81, 0x91, 0x99, 0x91, 0x04, 0xC9, 0x52, 0x80, 0xC1, 0x52, 0x04, 0xC9, 0x52, 0x85, 0xC2, 0x53, 0xC2, 0xB4, 0xB9, 0x52, 0xC1, 0x52, 0xC9, 0x52, 0xC1, 0x52, 0x07, 0xC9, 0x52, 0x80, 0xBA, 0xB5, 0x05, 0x9E, 0xDB, 0x82, 0x95, 0x99, 0x81, 0x91, 0x91, 0xB1, 0x09, 0xC9, 0x52, 0x83, 0xC1, 0xF3, 0xC2, 0xB5, 0xB9, 0x52, 0xC1, 0x52, 0x04, 0xC9, 0x52, 0x80, 0xC9, 0x72, 0x01, 0xC9, 0x52, 0x84, 0xC9, 0x72, 0xC1, 0xB2, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x72, 0x06, 0xC9, 0x52, 0x80, 0xA5, 0x79, 0x03, 0x9E, 0xDB, 0x82, 0x8C, 0x36, 0x89, 0x91, 0xA1, 0x71, 0x06, 0xC9, 0x52, 0x82, 0xA5, 0x79, 0x9E, 0xDB, 0x9E, 0xDC, 0x01, 0x9E, 0xDB, 0x82, 0x95, 0x98, 0x81, 0x91, 0x91, 0x91, 0x03, 0xC9, 0x52, 0x82, 0xC1, 0x52, 0xC9, 0x52, 0xC1, 0x72, 0x02, 0xC9, 0x52, 0x83, 0xC1, 0xF3, 0xC2, 0xB4, 0xB9, 0x52, 0xC1, 0x52, 0x09, 0xC9, 0x52, 0x84, 0xA6, 0x1A, 0x9E, 0xDC, 0xA5, 0xDA, 0xC1, 0x72, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x01, 0xC9, 0x12, 0x80, 0xC1, 0x11, 0x02, 0xC9, 0x12, 0x01, 0xC8, 0xF1, 0x81, 0xC8, + 0xF2, 0xA6, 0xFB, 0x01, 0xA6, 0xFA, 0x87, 0xA6, 0xFB, 0xA6, 0xFA, 0xA6, 0xDA, 0xA6, 0xFA, 0x9D, 0x98, 0x81, 0x91, 0x91, 0x91, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x80, 0xC9, 0x72, 0x02, 0xC9, 0x92, 0x81, 0xB4, 0x36, 0xA6, 0xFB, 0x08, 0xA6, 0xFA, 0x82, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x92, 0x01, 0xC9, 0x92, 0x02, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x80, 0xAD, 0x98, 0x01, 0xA6, 0xDA, 0x07, 0xA6, 0xFA, 0x83, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x92, 0xC9, 0x93, 0x05, 0xC9, 0x92, 0x83, 0xAD, 0x99, 0x8A, 0x32, 0x89, 0x91, 0xC1, 0x92, 0x01, 0xC9, 0x92, 0x80, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x80, 0xC9, 0x73, 0x02, 0xC9, 0x92, 0x81, 0xBC, 0x36, 0xA6, 0x9A, 0x01, 0xA6, 0xFA, 0x84, 0xA6, 0x9A, 0x93, 0x95, 0x89, 0x91, 0xB9, 0x92, 0xC9, 0x93, 0x01, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x81, 0xC9, 0x72, 0xC9, 0x92, 0x01, 0xC9, 0x72, 0x88, 0xAD, 0x98, 0xA6, 0xDB, 0xA6, 0xDA, 0xA6, 0xFA, 0xA6, 0xFB, 0xA6, 0xFA, 0x93, 0x95, 0x81, 0x91, 0xB1, 0x92, 0x02, 0xC9, 0x92, 0x80, 0xC9, 0x93, 0x01, 0xC9, 0x72, 0x8A, 0xC9, 0x92, 0xC9, 0x72, 0xC2, 0x33, 0xAD, 0x98, 0xA6, 0xFA, 0xA6, 0xFB, 0xA6, 0x39, 0x8A, 0x93, 0x99, 0x92, 0xC1, 0x92, 0xC9, 0x72, 0x02, 0xC9, 0x92, 0x81, 0xC9, 0x72, 0xC9, 0x92, 0x01, 0xC9, 0x72, 0x82, 0x9A, 0x93, 0x81, 0x91, 0xA9, 0x92, 0x06, 0xC9, 0x92, 0x82, 0xAD, 0x98, 0xA6, 0xFA, 0xA6, 0xFB, 0x01, 0xA6, 0xFA, 0x83, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x92, 0xC9, 0x93, 0x05, 0xC9, 0x92, 0x80, 0xAD, 0x98, 0x01, 0xA6, 0xDA, 0x87, 0xA6, 0xFA, 0xA6, 0xDA, 0x8B, + 0x95, 0x81, 0x91, 0xB1, 0x92, 0xC9, 0x72, 0xC9, 0x92, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x8C, 0xC9, 0x72, 0xC9, 0x92, 0xC9, 0x72, 0xC2, 0x94, 0xAD, 0xF9, 0xA6, 0xFA, 0xA6, 0xDA, 0xA6, 0x9A, 0x93, 0x34, 0x91, 0x91, 0xB9, 0x92, 0xC9, 0x92, 0xC9, 0x93, 0x05, 0xC9, 0x92, 0x80, 0xB4, 0x97, 0x01, 0xAE, 0xFB, 0x84, 0xB5, 0xD9, 0xC9, 0x52, 0xC8, 0xF1, 0xC8, 0xF2, 0xC0, 0xF1, 0x04, 0xC8, 0xF1, 0x01, 0xC0, 0xD1, 0x80, 0xC8, 0xD2, 0x02, 0xB7, 0x1A, 0x86, 0xAE, 0xFA, 0xB7, 0x1A, 0xAF, 0x1A, 0xAE, 0xFA, 0xA5, 0x98, 0x81, 0x91, 0x91, 0x91, 0x01, 0xC9, 0xB3, 0x01, 0xC9, 0xD3, 0x83, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0xD3, 0xBC, 0x76, 0x09, 0xB7, 0x1A, 0x82, 0x9C, 0x55, 0x81, 0x91, 0xA9, 0xB2, 0x01, 0xC9, 0xD3, 0x82, 0xC9, 0xB3, 0xC9, 0xB2, 0xC9, 0xB3, 0x01, 0xC9, 0xD3, 0x84, 0xB5, 0xB8, 0xB7, 0x1A, 0xAF, 0x1A, 0xB7, 0x1A, 0xB6, 0xFA, 0x03, 0xB7, 0x1A, 0x84, 0xB6, 0xFA, 0xAF, 0x1A, 0x9C, 0x56, 0x81, 0x91, 0xA9, 0x92, 0x06, 0xC9, 0xB3, 0x95, 0xA3, 0xB5, 0x81, 0x91, 0x99, 0x92, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0xD2, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0xD3, 0xCA, 0x13, 0xBD, 0xB8, 0xAE, 0xFA, 0xAF, 0x1A, 0xB7, 0x1A, 0xB6, 0xFA, 0xAE, 0xFA, 0xAF, 0x19, 0xA4, 0xF7, 0x89, 0x91, 0xB1, 0xB2, 0x04, 0xC9, 0xB3, 0x80, 0xC9, 0xD2, 0x01, 0xC9, 0xB3, 0x80, 0xC3, 0x14, 0x01, 0xAF, 0x1A, 0x80, 0xAE, 0xF9, 0x01, 0xAF, 0x1A, 0x82, 0x89, 0xF1, 0x81, 0x91, 0xC1, 0xB2, 0x02, 0xC9, 0xB3, 0x01, 0xC9, 0xB2, 0x8B, 0xC9, 0xD3, 0xC9, 0xB3, 0xCA, 0xB4, + 0xB6, 0xB9, 0xAF, 0x1A, 0xB7, 0x1A, 0xAE, 0xFA, 0xB7, 0x1A, 0xB6, 0xB9, 0x8A, 0x93, 0x89, 0x91, 0xC1, 0xD2, 0x03, 0xC9, 0xB3, 0x88, 0xC9, 0xB2, 0xC9, 0xD3, 0xC9, 0xB2, 0xA9, 0x92, 0x81, 0x91, 0xA9, 0xB2, 0xC9, 0xD3, 0xC9, 0xB3, 0xC9, 0xD3, 0x02, 0xC9, 0xB2, 0x88, 0xC9, 0xB3, 0xB5, 0xB8, 0xAF, 0x1A, 0xAE, 0xFA, 0xAF, 0x1A, 0xB7, 0x1A, 0x9C, 0x56, 0x81, 0x91, 0xA9, 0x92, 0x06, 0xC9, 0xB3, 0x81, 0xB5, 0xB8, 0xB6, 0xFA, 0x01, 0xAF, 0x1A, 0x86, 0xB6, 0xFA, 0x89, 0xF2, 0x81, 0x91, 0xC1, 0xB2, 0xC9, 0xB3, 0xC9, 0xB2, 0xC9, 0xD3, 0x01, 0xC9, 0xB3, 0x84, 0xC9, 0xB2, 0xC9, 0xD3, 0xCA, 0xB4, 0xB6, 0xB9, 0xAF, 0x1A, 0x01, 0xB7, 0x1A, 0x85, 0xB6, 0xFA, 0xB7, 0x1A, 0x92, 0xF3, 0x89, 0xB1, 0xC1, 0xB2, 0xC9, 0xD3, 0x01, 0xC9, 0xB3, 0x01, 0xC9, 0xD3, 0x82, 0xC9, 0xB3, 0xC9, 0xD3, 0xC3, 0x15, 0x02, 0xB7, 0x1A, 0x82, 0xBD, 0xD9, 0xC1, 0x32, 0xC0, 0xD1, 0x03, 0xC8, 0xD1, 0x01, 0xC0, 0xD1, 0x82, 0xC0, 0xB1, 0xC8, 0xB1, 0xC0, 0xB1, 0x06, 0xBF, 0x19, 0x82, 0xA4, 0xB5, 0x81, 0x91, 0xA1, 0xB2, 0x05, 0xC9, 0xF3, 0x81, 0xD1, 0xF3, 0xC4, 0x96, 0x09, 0xBF, 0x19, 0x82, 0xA4, 0x55, 0x81, 0x91, 0xA9, 0xD2, 0x06, 0xC9, 0xF3, 0x80, 0xBD, 0xD8, 0x02, 0xBF, 0x19, 0x80, 0xBF, 0x39, 0x01, 0xBF, 0x19, 0x81, 0xBF, 0x39, 0xBF, 0x19, 0x01, 0xBF, 0x39, 0x82, 0xA4, 0x55, 0x81, 0x91, 0xA9, 0xD2, 0x06, 0xC9, 0xF3, 0x82, 0x99, 0xF2, 0x89, 0x91, 0xB1, 0xD2, 0x06, 0xC9, 0xF3, 0x82, 0xC9, 0xF2, 0xC5, 0x77, 0xBF, 0x19, 0x01, 0xBF, 0x39, 0x04, 0xBF, 0x19, 0x82, 0x9B, + 0xF5, 0x81, 0x91, 0xB1, 0xD2, 0x01, 0xC9, 0xF3, 0x80, 0xD1, 0xF3, 0x04, 0xC9, 0xF3, 0x80, 0xBE, 0x78, 0x02, 0xBF, 0x19, 0x82, 0xB6, 0xB9, 0x81, 0x91, 0x89, 0x91, 0x01, 0xC9, 0xF3, 0x80, 0xC9, 0xF2, 0x01, 0xC9, 0xF3, 0x80, 0xC9, 0xD3, 0x01, 0xC9, 0xF3, 0x80, 0xBE, 0xD8, 0x04, 0xBF, 0x19, 0x85, 0xBF, 0x39, 0xAD, 0x57, 0x81, 0x91, 0x99, 0xB2, 0xC9, 0xF3, 0xC9, 0xF2, 0x04, 0xC9, 0xF3, 0x82, 0xB9, 0xD3, 0x81, 0x91, 0xA9, 0xB2, 0x06, 0xC9, 0xF3, 0x80, 0xBD, 0xD8, 0x03, 0xBF, 0x19, 0x82, 0x9C, 0x75, 0x81, 0x91, 0xA9, 0xD2, 0x06, 0xC9, 0xF3, 0x80, 0xBD, 0xD8, 0x02, 0xBF, 0x19, 0x80, 0xB6, 0xB8, 0x01, 0x81, 0x91, 0x07, 0xC9, 0xF3, 0x84, 0xBE, 0x78, 0xBF, 0x19, 0xBF, 0x39, 0xBF, 0x19, 0xBF, 0x39, 0x01, 0xBF, 0x19, 0x82, 0xAD, 0xB7, 0x81, 0x91, 0x91, 0xB1, 0x02, 0xC9, 0xF3, 0x80, 0xC9, 0xF2, 0x03, 0xC9, 0xF3, 0x87, 0xC7, 0x1A, 0xBF, 0x1A, 0xC7, 0x3A, 0xBF, 0x3A, 0xC6, 0x59, 0xC9, 0xD3, 0xC0, 0xB1, 0xC8, 0xB1, 0x01, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x03, 0xC0, 0xB1, 0x06, 0xC7, 0x38, 0x83, 0xA4, 0x75, 0x89, 0x91, 0xA9, 0xD2, 0xCA, 0x13, 0x01, 0xCA, 0x33, 0x81, 0xCA, 0x34, 0xCA, 0x13, 0x01, 0xCA, 0x33, 0x80, 0xCC, 0xB6, 0x09, 0xC7, 0x38, 0x82, 0xA4, 0x55, 0x81, 0x91, 0xA9, 0xD2, 0x01, 0xCA, 0x33, 0x80, 0xCA, 0x13, 0x02, 0xCA, 0x33, 0x81, 0xD2, 0x13, 0xC5, 0xF7, 0x03, 0xC7, 0x38, 0x80, 0xC7, 0x39, 0x04, 0xC7, 0x38, 0x83, 0xA4, 0x75, 0x81, 0x91, 0xA9, 0xD2, 0xCA, 0x13, 0x03, 0xCA, 0x33, 0x84, 0xCA, 0x13, 0xCA, 0x33, 0x91, 0xB1, 0x81, + 0x91, 0xCA, 0x13, 0x03, 0xCA, 0x33, 0x85, 0xCA, 0x13, 0xCA, 0x33, 0xCA, 0x13, 0xC4, 0x55, 0xC7, 0x38, 0xC7, 0x39, 0x03, 0xC7, 0x38, 0x80, 0xC7, 0x39, 0x02, 0xC7, 0x38, 0x82, 0x8A, 0x52, 0x89, 0x91, 0xC2, 0x13, 0x03, 0xCA, 0x13, 0x83, 0xCA, 0x33, 0xCA, 0x13, 0xCA, 0x33, 0xCD, 0x56, 0x01, 0xC7, 0x38, 0x83, 0xC7, 0x39, 0xB5, 0xD7, 0x81, 0x91, 0x91, 0xB1, 0x02, 0xCA, 0x13, 0x80, 0xD2, 0x33, 0x02, 0xCA, 0x33, 0x81, 0xCB, 0x55, 0xCF, 0x38, 0x04, 0xC7, 0x38, 0x81, 0xC7, 0x39, 0xC7, 0x38, 0x01, 0x81, 0x91, 0x02, 0xCA, 0x13, 0x86, 0xCA, 0x33, 0xCA, 0x13, 0xCA, 0x33, 0xD2, 0x33, 0xCA, 0x13, 0x81, 0x91, 0xA9, 0xD2, 0x01, 0xCA, 0x33, 0x01, 0xCA, 0x13, 0x83, 0xCA, 0x33, 0xCA, 0x13, 0xCA, 0x33, 0xCD, 0xF7, 0x02, 0xC7, 0x38, 0x84, 0xC7, 0x39, 0xA4, 0x75, 0x81, 0x91, 0xA9, 0xD2, 0xCA, 0x13, 0x03, 0xCA, 0x33, 0x82, 0xCA, 0x13, 0xCA, 0x33, 0xC5, 0xF7, 0x02, 0xC7, 0x38, 0x82, 0xB5, 0xD6, 0x81, 0x91, 0x99, 0xB2, 0x01, 0xCA, 0x33, 0x80, 0xD2, 0x13, 0x03, 0xCA, 0x33, 0x81, 0xCB, 0x74, 0xC7, 0x39, 0x03, 0xC7, 0x38, 0x80, 0xC7, 0x39, 0x01, 0xC7, 0x38, 0x82, 0x8A, 0xB2, 0x81, 0x91, 0xBA, 0x13, 0x01, 0xCA, 0x13, 0x81, 0xCA, 0x33, 0xCA, 0x13, 0x01, 0xCA, 0x33, 0x87, 0xCA, 0x13, 0xCF, 0x39, 0xC7, 0x39, 0xC7, 0x59, 0xCF, 0x3A, 0xCF, 0x39, 0xCE, 0xD9, 0xC9, 0xF3, 0x07, 0xC0, 0xB1, 0x80, 0xCF, 0x57, 0x01, 0xD7, 0x58, 0x89, 0xCF, 0x58, 0xD7, 0x58, 0xCF, 0x58, 0xD7, 0x58, 0xAC, 0x74, 0x81, 0x91, 0xA9, 0xF2, 0xCA, 0x53, 0xD2, 0x53, 0xCA, 0x54, 0x02, + 0xCA, 0x53, 0x82, 0xCA, 0x54, 0xCC, 0xD6, 0xCF, 0x58, 0x07, 0xD7, 0x58, 0x83, 0xCF, 0x58, 0xAC, 0x75, 0x81, 0x91, 0xA9, 0xF2, 0x01, 0xCA, 0x53, 0x80, 0xD2, 0x53, 0x02, 0xCA, 0x53, 0x86, 0xD2, 0x54, 0xCE, 0x17, 0xCF, 0x57, 0xD7, 0x58, 0xCF, 0x58, 0xD7, 0x58, 0xCF, 0x58, 0x01, 0xD7, 0x58, 0x88, 0xCF, 0x58, 0xD7, 0x58, 0xCF, 0x58, 0xAC, 0x74, 0x81, 0x91, 0xA9, 0xF2, 0xCA, 0x53, 0xCA, 0x54, 0xD2, 0x53, 0x01, 0xCA, 0x53, 0x83, 0xCA, 0x54, 0xCA, 0x53, 0x99, 0xD2, 0x89, 0xB1, 0x03, 0xCA, 0x53, 0x80, 0xD2, 0x53, 0x01, 0xCA, 0x53, 0x8E, 0xCA, 0x54, 0xD6, 0xB7, 0xD7, 0x58, 0xCF, 0x58, 0xCF, 0x57, 0xCF, 0x58, 0xD7, 0x58, 0xD7, 0x57, 0xD7, 0x58, 0xD7, 0x57, 0xD7, 0x58, 0xCF, 0x58, 0xB5, 0x35, 0x81, 0x91, 0xA1, 0xD2, 0x02, 0xCA, 0x53, 0x81, 0xD2, 0x54, 0xCA, 0x73, 0x01, 0xCA, 0x53, 0x80, 0xCC, 0x95, 0x01, 0xD7, 0x58, 0x83, 0xCF, 0x58, 0xBD, 0xD6, 0x81, 0x91, 0x99, 0xD2, 0x01, 0xCA, 0x53, 0x80, 0xCA, 0x54, 0x01, 0xCA, 0x53, 0x82, 0xD2, 0x54, 0xCA, 0x54, 0xD4, 0x35, 0x01, 0xD7, 0x58, 0x80, 0xCF, 0x58, 0x01, 0xD7, 0x58, 0x86, 0xCF, 0x57, 0xD7, 0x38, 0xCF, 0x58, 0x9A, 0xF3, 0x89, 0x91, 0xC2, 0x13, 0xCA, 0x54, 0x01, 0xCA, 0x53, 0x86, 0xD2, 0x53, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x73, 0x81, 0x91, 0xA9, 0xF2, 0xCA, 0x53, 0x01, 0xD2, 0x53, 0x85, 0xCA, 0x54, 0xD2, 0x53, 0xCA, 0x53, 0xCA, 0x54, 0xCE, 0x17, 0xCF, 0x58, 0x01, 0xD7, 0x58, 0x86, 0xCF, 0x58, 0xAC, 0x74, 0x81, 0x91, 0xA9, 0xF2, 0xCA, 0x53, 0xCA, 0x54, 0xD2, 0x53, 0x01, 0xCA, 0x53, + 0x83, 0xCA, 0x54, 0xCA, 0x53, 0xD6, 0x17, 0xD7, 0x58, 0x01, 0xCF, 0x58, 0x84, 0xBD, 0xD6, 0x81, 0x91, 0x91, 0xB2, 0xCA, 0x53, 0xD2, 0x54, 0x01, 0xCA, 0x53, 0x80, 0xCA, 0x54, 0x01, 0xD2, 0x53, 0x80, 0xCC, 0xD6, 0x03, 0xD7, 0x58, 0x8D, 0xCF, 0x57, 0xD7, 0x57, 0xCF, 0x58, 0xD7, 0x58, 0x9A, 0xF3, 0x81, 0x91, 0xBA, 0x33, 0xCA, 0x54, 0xCA, 0x53, 0xD2, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0xD2, 0x53, 0xCA, 0x53, 0x01, 0xD7, 0x58, 0x81, 0xDF, 0x59, 0xD7, 0x79, 0x01, 0xD7, 0x59, 0x81, 0xD6, 0xF9, 0xC1, 0xF2, 0x06, 0xC0, 0xB1, 0x06, 0xDF, 0x77, 0x84, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x12, 0xCA, 0x94, 0xCA, 0x74, 0x03, 0xCA, 0x94, 0x81, 0xD2, 0x94, 0xD4, 0xF5, 0x09, 0xDF, 0x77, 0x82, 0xB4, 0x74, 0x81, 0x91, 0xAA, 0x12, 0x01, 0xCA, 0x94, 0x85, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xDE, 0x36, 0x01, 0xDF, 0x77, 0x80, 0xDF, 0x57, 0x06, 0xDF, 0x77, 0x83, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x12, 0xCA, 0x94, 0x05, 0xD2, 0x94, 0x86, 0x99, 0xD2, 0x91, 0xD2, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x80, 0xD3, 0xD4, 0x02, 0xDF, 0x77, 0x80, 0xDF, 0x76, 0x04, 0xDF, 0x77, 0x80, 0xDF, 0x57, 0x01, 0xDF, 0x77, 0x81, 0x81, 0x91, 0x89, 0x92, 0x02, 0xCA, 0x94, 0x84, 0xD2, 0x94, 0xCA, 0x94, 0xCA, 0x93, 0xCA, 0x94, 0xD3, 0xD5, 0x02, 0xDF, 0x77, 0x82, 0xC5, 0xF5, 0x81, 0x91, 0x99, 0xD2, 0x01, 0xCA, 0x94, 0x85, 0xD2, 0x73, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xD5, 0x15, 0x07, 0xDF, 0x77, 0x82, + 0x9B, 0x12, 0x81, 0x91, 0xBA, 0x53, 0x01, 0xCA, 0x94, 0x86, 0xD2, 0x94, 0xCA, 0x94, 0xCA, 0x93, 0xD2, 0x94, 0xCA, 0x94, 0x81, 0x91, 0xAA, 0x12, 0x02, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x01, 0xD2, 0x94, 0x80, 0xDE, 0x36, 0x01, 0xDF, 0x77, 0x85, 0xDF, 0x57, 0xDF, 0x77, 0xB4, 0x74, 0x81, 0x91, 0xAA, 0x12, 0xCA, 0x94, 0x05, 0xD2, 0x94, 0x80, 0xDE, 0x36, 0x02, 0xDF, 0x77, 0x83, 0xC5, 0xF5, 0x81, 0x91, 0x99, 0xD2, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x80, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x81, 0xCA, 0x93, 0xD4, 0xF5, 0x07, 0xDF, 0x77, 0x83, 0x9B, 0x12, 0x81, 0x91, 0xBA, 0x53, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x83, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0x05, 0xDF, 0x78, 0x81, 0xE7, 0x79, 0xDF, 0x19, 0x03, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x82, 0xC0, 0xD1, 0xE7, 0x76, 0xE7, 0x96, 0x01, 0xE7, 0x97, 0x02, 0xE7, 0x96, 0x82, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x33, 0x02, 0xD2, 0xB4, 0x81, 0xCA, 0xB4, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x81, 0xDD, 0x35, 0xE7, 0x76, 0x08, 0xE7, 0x96, 0x82, 0xB4, 0x74, 0x81, 0x91, 0xAA, 0x33, 0x02, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x85, 0xCA, 0xD4, 0xD2, 0xD4, 0xE6, 0x56, 0xEF, 0x96, 0xE7, 0x76, 0xE7, 0x97, 0x01, 0xE7, 0x96, 0x81, 0xE7, 0x76, 0xE7, 0x77, 0x02, 0xE7, 0x96, 0x82, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x33, 0x06, 0xD2, 0xB4, 0x84, 0x99, 0xD2, 0x99, 0xF2, 0xCA, 0xB4, 0xD2, 0xB4, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x85, 0xCA, 0xD4, 0xD2, 0xB4, 0xD3, 0xF5, 0xE7, 0x77, 0xE7, 0x97, 0xEF, 0x97, 0x01, 0xE7, 0x96, 0x81, 0xE7, + 0x76, 0xE7, 0x77, 0x02, 0xE7, 0x96, 0x81, 0xE7, 0x77, 0xEF, 0x97, 0x01, 0x81, 0x91, 0x01, 0xD2, 0xB4, 0x01, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x81, 0xCA, 0xD4, 0xD3, 0xD5, 0x02, 0xE7, 0x96, 0x85, 0xCE, 0x15, 0x81, 0x91, 0x99, 0xF2, 0xCA, 0xD4, 0xD2, 0xB4, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x85, 0xCA, 0xB4, 0xD2, 0xB4, 0xDD, 0x35, 0xE7, 0x77, 0xEF, 0x76, 0xE7, 0x96, 0x01, 0xE7, 0x97, 0x86, 0xE7, 0x76, 0xE7, 0x96, 0xE7, 0x76, 0xC5, 0x34, 0xB4, 0x94, 0xCC, 0x15, 0xD3, 0xF5, 0x01, 0xDB, 0xF4, 0x85, 0xDB, 0xF5, 0xD3, 0xF5, 0xD3, 0xF4, 0xCB, 0x34, 0x81, 0x91, 0xAA, 0x32, 0x03, 0xD2, 0xB4, 0x84, 0xD2, 0xD4, 0xD2, 0xB4, 0xCA, 0xB4, 0xE6, 0x56, 0xE7, 0x76, 0x01, 0xE7, 0x96, 0x83, 0xE7, 0x76, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x33, 0x06, 0xD2, 0xB4, 0x80, 0xDE, 0x56, 0x02, 0xE7, 0x96, 0x82, 0xCE, 0x15, 0x81, 0x91, 0x99, 0xF2, 0x01, 0xD2, 0xB4, 0x82, 0xD2, 0xD4, 0xD2, 0xB4, 0xD2, 0xD4, 0x01, 0xCA, 0xD4, 0x80, 0xDD, 0x15, 0x01, 0xE7, 0x96, 0x82, 0xE7, 0x76, 0xE7, 0x96, 0xEF, 0x96, 0x02, 0xE7, 0x96, 0x82, 0x9B, 0x13, 0x81, 0x91, 0xBA, 0x73, 0x06, 0xD2, 0xB4, 0x84, 0xE7, 0x97, 0xEF, 0x97, 0xEF, 0x77, 0xEF, 0x97, 0xEF, 0x78, 0x02, 0xEF, 0x98, 0x83, 0xC9, 0x92, 0xB8, 0xD1, 0xC0, 0xD1, 0xC0, 0xB1, 0x02, 0xB8, 0xD1, 0x82, 0xF7, 0x96, 0xF7, 0xB6, 0xF7, 0x96, 0x01, 0xF7, 0x95, 0x84, 0xF7, 0x96, 0xEF, 0xB6, 0xBC, 0x93, 0x81, 0x91, 0xAA, 0x52, 0x02, 0xD2, 0xF4, 0x02, 0xD2, 0xF5, 0x81, 0xD2, 0xF4, 0xDD, 0x55, 0x08, 0xF7, 0xB6, 0x84, 0xEF, 0xB6, 0xBC, + 0x93, 0x81, 0x91, 0xAA, 0x53, 0xD2, 0xF5, 0x05, 0xD2, 0xF4, 0x82, 0xE6, 0x75, 0xF7, 0x96, 0xF7, 0x95, 0x02, 0xF7, 0x96, 0x80, 0xF7, 0xB6, 0x01, 0xF7, 0xB5, 0x84, 0xEF, 0x96, 0xF7, 0x96, 0xBC, 0x93, 0x81, 0x91, 0xAA, 0x33, 0x06, 0xD2, 0xF4, 0x01, 0x99, 0xF2, 0x80, 0xD2, 0xF5, 0x01, 0xD2, 0xF4, 0x81, 0xD2, 0xF5, 0xD2, 0xD4, 0x01, 0xD2, 0xF4, 0x80, 0xDC, 0x75, 0x02, 0xF7, 0x95, 0x81, 0xF7, 0x96, 0xF7, 0xB5, 0x03, 0xF7, 0x96, 0x84, 0xEF, 0xB6, 0xF7, 0xB5, 0xF7, 0x96, 0x81, 0x91, 0x89, 0x91, 0x06, 0xD2, 0xF4, 0x80, 0xDC, 0x15, 0x02, 0xF7, 0x96, 0x82, 0xD6, 0x15, 0x81, 0x91, 0x99, 0xF2, 0x03, 0xD2, 0xF4, 0x8D, 0xD2, 0xF5, 0xD2, 0xF4, 0xD2, 0xF5, 0xE5, 0x35, 0xF7, 0xB6, 0xF7, 0xB5, 0xF7, 0x96, 0xEF, 0xB6, 0xF7, 0x96, 0xF7, 0x95, 0xF7, 0xB6, 0xF7, 0x96, 0xF7, 0xB6, 0xF7, 0x95, 0x01, 0xF7, 0x96, 0x87, 0xF7, 0x95, 0xF7, 0xB6, 0xF7, 0x95, 0xF7, 0xB6, 0xF7, 0x96, 0xBC, 0x93, 0x81, 0x91, 0xAA, 0x53, 0x06, 0xD2, 0xF4, 0x80, 0xEE, 0x75, 0x01, 0xF7, 0x96, 0x84, 0xF7, 0xB5, 0xF7, 0x96, 0xBC, 0x93, 0x81, 0x91, 0xAA, 0x33, 0x06, 0xD2, 0xF4, 0x89, 0xEE, 0x75, 0xF7, 0x96, 0xF7, 0xB5, 0xF7, 0x95, 0xD6, 0x34, 0x81, 0x91, 0x99, 0xF2, 0xD2, 0xF4, 0xD2, 0xF5, 0xD2, 0xF4, 0x02, 0xD2, 0xF5, 0x83, 0xD2, 0xD4, 0xE5, 0x55, 0xF7, 0x96, 0xF7, 0xB5, 0x01, 0xF7, 0xB6, 0x86, 0xF7, 0x95, 0xF7, 0xB6, 0xF7, 0x96, 0xF7, 0xB6, 0xA3, 0x11, 0x81, 0x91, 0xBA, 0x94, 0x06, 0xD2, 0xF4, 0x01, 0xF7, 0x96, 0x02, 0xF7, 0x97, 0x80, 0xF7, 0xB7, 0x01, 0xF7, 0x98, 0x80, + 0xD2, 0x73, 0x05, 0xB8, 0xD1, 0x80, 0xFF, 0x94, 0x03, 0xFF, 0xB5, 0x85, 0xFF, 0xB4, 0xFF, 0xB5, 0xC4, 0x93, 0x81, 0x91, 0xAA, 0x53, 0xD3, 0x15, 0x02, 0xD3, 0x35, 0x83, 0xD3, 0x34, 0xD3, 0x15, 0xD3, 0x35, 0xE5, 0x75, 0x09, 0xFF, 0xB5, 0x82, 0xC4, 0x93, 0x81, 0x91, 0xAA, 0x53, 0x01, 0xD3, 0x35, 0x81, 0xD3, 0x14, 0xD3, 0x15, 0x02, 0xD3, 0x35, 0x82, 0xF6, 0x75, 0xFF, 0xB5, 0xFF, 0xB4, 0x01, 0xFF, 0xB5, 0x02, 0xFF, 0xB4, 0x01, 0xFF, 0xB5, 0x83, 0xFF, 0x95, 0xC4, 0x93, 0x81, 0x91, 0xAA, 0x53, 0x03, 0xD3, 0x35, 0x01, 0xD3, 0x15, 0x80, 0xD3, 0x35, 0x01, 0x99, 0xF2, 0x82, 0xD3, 0x35, 0xD3, 0x14, 0xD3, 0x15, 0x01, 0xD3, 0x35, 0x82, 0xD3, 0x15, 0xD3, 0x35, 0xDC, 0x54, 0x03, 0xFF, 0xB5, 0x80, 0xFF, 0xB4, 0x04, 0xFF, 0xB5, 0x81, 0xFF, 0xB4, 0xFF, 0xB5, 0x01, 0x81, 0x91, 0x81, 0xD3, 0x34, 0xD3, 0x15, 0x03, 0xD3, 0x35, 0x82, 0xD3, 0x15, 0xDC, 0x34, 0xFF, 0xB4, 0x01, 0xFF, 0xB5, 0x85, 0xDE, 0x34, 0x81, 0x91, 0x99, 0xF2, 0xD3, 0x14, 0xD3, 0x35, 0xD3, 0x15, 0x01, 0xD3, 0x34, 0x01, 0xD3, 0x35, 0x80, 0xE5, 0x74, 0x06, 0xFF, 0xB5, 0x01, 0xFF, 0xB4, 0x81, 0xFF, 0xB5, 0xFF, 0xB4, 0x02, 0xFF, 0xB5, 0x80, 0xFF, 0xB4, 0x01, 0xFF, 0xB5, 0x82, 0xC4, 0xB3, 0x81, 0x91, 0xAA, 0x53, 0x01, 0xD3, 0x35, 0x81, 0xD3, 0x14, 0xD3, 0x15, 0x02, 0xD3, 0x35, 0x80, 0xED, 0xF5, 0x03, 0xFF, 0xB5, 0x82, 0xC4, 0x93, 0x81, 0x91, 0xAA, 0x53, 0x03, 0xD3, 0x35, 0x01, 0xD3, 0x15, 0x81, 0xD3, 0x35, 0xF6, 0x94, 0x02, 0xFF, 0xB5, 0x82, 0xDE, 0x14, 0x81, 0x91, 0x99, 0xF2, + 0x01, 0xD3, 0x35, 0x85, 0xD3, 0x14, 0xD3, 0x34, 0xD3, 0x14, 0xD3, 0x34, 0xD3, 0x15, 0xE5, 0x55, 0x02, 0xFF, 0xB5, 0x80, 0xFF, 0xB4, 0x03, 0xFF, 0xB5, 0x82, 0xA3, 0x32, 0x81, 0x91, 0xBA, 0xB4, 0x02, 0xD3, 0x35, 0x81, 0xD3, 0x15, 0xD3, 0x34, 0x01, 0xD3, 0x35, 0x80, 0xFF, 0xB5, 0x04, 0xFF, 0xB6, 0x83, 0xFF, 0xB7, 0xFF, 0xB8, 0xDB, 0xD4, 0xB8, 0xD2, 0x04, 0xB8, 0xD1, 0x04, 0xFE, 0x2E, 0x01, 0xFE, 0x4E, 0x82, 0xC3, 0xF0, 0x81, 0x91, 0xAA, 0x73, 0x06, 0xD3, 0x55, 0x80, 0xEC, 0xD1, 0x09, 0xFE, 0x2E, 0x82, 0xC3, 0xEF, 0x81, 0x91, 0xAA, 0x73, 0x05, 0xD3, 0x55, 0x81, 0xD3, 0x54, 0xF5, 0x90, 0x01, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x80, 0xFE, 0x4E, 0x04, 0xFE, 0x2E, 0x82, 0xC3, 0xEF, 0x81, 0x91, 0xAA, 0x73, 0x06, 0xD3, 0x55, 0x83, 0x9A, 0x12, 0x91, 0xF2, 0xD3, 0x55, 0xD3, 0x54, 0x04, 0xD3, 0x55, 0x81, 0xDB, 0xD4, 0xFE, 0x4E, 0x03, 0xFE, 0x2E, 0x82, 0xFE, 0x4E, 0xFE, 0x2E, 0xFE, 0x4E, 0x02, 0xFE, 0x2E, 0x80, 0xFE, 0x4E, 0x01, 0x81, 0x91, 0x06, 0xD3, 0x55, 0x81, 0xDC, 0x13, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x82, 0xE5, 0x0F, 0x81, 0x91, 0x99, 0xF2, 0x05, 0xD3, 0x55, 0x81, 0xD3, 0x54, 0xEC, 0xD1, 0x07, 0xFE, 0x2E, 0x80, 0xFE, 0x4E, 0x03, 0xFE, 0x2E, 0x01, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x82, 0xC3, 0xCF, 0x81, 0x91, 0xAA, 0x73, 0x06, 0xD3, 0x55, 0x81, 0xE4, 0xD1, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x83, 0xFE, 0x4E, 0xC3, 0xD0, 0x81, 0x91, 0xAA, 0x73, 0x06, 0xD3, 0x55, 0x81, 0xF5, 0x90, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x82, 0xE5, 0x0F, 0x81, 0x91, + 0x9A, 0x12, 0x06, 0xD3, 0x55, 0x83, 0xEC, 0xD2, 0xFE, 0x2E, 0xFE, 0x4E, 0xFE, 0x2E, 0x02, 0xFE, 0x4E, 0x84, 0xFE, 0x4D, 0xFE, 0x2F, 0xA2, 0xB0, 0x81, 0x91, 0xC2, 0xF4, 0x06, 0xD3, 0x55, 0x80, 0xFE, 0x2F, 0x02, 0xFE, 0x50, 0x01, 0xFE, 0x51, 0x01, 0xFE, 0x52, 0x81, 0xE3, 0xD2, 0xB8, 0xD2, 0x02, 0xB8, 0xD1, 0x82, 0xB0, 0xD1, 0xB0, 0xD2, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x80, 0xFC, 0x8D, 0x02, 0xFC, 0x6D, 0x82, 0xC3, 0x0F, 0x81, 0xB1, 0xAA, 0x73, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xEC, 0x11, 0x08, 0xFC, 0x6D, 0x83, 0xFC, 0x8D, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x01, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x83, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x96, 0xF4, 0x2F, 0x01, 0xFC, 0x6D, 0x80, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x01, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x83, 0xFC, 0x8D, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x03, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x82, 0xD3, 0x95, 0x9A, 0x12, 0x81, 0x91, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x81, 0xF4, 0x4F, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x80, 0xFC, 0x8D, 0x03, 0xFC, 0x6D, 0x01, 0xFC, 0x8D, 0x80, 0xFC, 0x6D, 0x01, 0x81, 0x91, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xDB, 0xD3, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x82, 0xE3, 0xCE, 0x81, 0x91, 0x9A, 0x12, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x02, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x03, 0xFC, 0x6D, 0x01, 0xFC, 0x8D, 0x07, 0xFC, 0x6D, 0x86, 0xFC, 0x8D, + 0xFC, 0x6D, 0xFC, 0x8D, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x75, 0x05, 0xD3, 0x95, 0x87, 0xEB, 0xF1, 0xFC, 0x8D, 0xFC, 0x6D, 0xFC, 0x8D, 0xFC, 0x6D, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x03, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x81, 0xD3, 0x95, 0xF4, 0x2F, 0x01, 0xFC, 0x6D, 0x83, 0xFC, 0x8D, 0xE3, 0xCE, 0x81, 0x91, 0x9A, 0x12, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x76, 0x01, 0xD3, 0x95, 0x81, 0xEB, 0xF1, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x80, 0xFC, 0x8D, 0x02, 0xFC, 0x6D, 0x84, 0xFC, 0x8D, 0xA2, 0x50, 0x81, 0x91, 0xC3, 0x14, 0xD3, 0x75, 0x04, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xFC, 0x8E, 0x02, 0xFC, 0x8F, 0x01, 0xFC, 0xB0, 0x01, 0xFC, 0xB1, 0x83, 0xF3, 0xB2, 0xB8, 0xD1, 0xB0, 0xF1, 0xB8, 0xD1, 0x01, 0xB0, 0xF1, 0x80, 0xB0, 0xD1, 0x06, 0xFC, 0x8D, 0x82, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x09, 0xFC, 0x8D, 0x82, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x4F, 0x09, 0xFC, 0x8D, 0x82, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x82, 0x9A, 0x12, 0x81, 0x91, 0xC3, 0x34, 0x06, 0xD3, 0x95, 0x81, 0xDB, 0xB4, 0xFC, 0x8E, 0x09, 0xFC, 0x8D, 0x01, 0x81, 0x91, 0x05, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xDB, 0xD3, 0x02, 0xFC, 0x8D, 0x82, 0xE3, 0xCE, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x10, 0xFC, 0x8D, 0x82, 0xCB, 0x2F, 0x81, 0x91, 0xAA, 0x93, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x03, 0xFC, 0x8D, + 0x82, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x4F, 0x02, 0xFC, 0x8D, 0x82, 0xCB, 0x6F, 0x81, 0x91, 0x9A, 0x32, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x07, 0xFC, 0x8D, 0x82, 0xA2, 0x50, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x81, 0xFC, 0x8E, 0xFC, 0x8F, 0x01, 0xFC, 0xAF, 0x02, 0xFC, 0xB0, 0x81, 0xFC, 0xB2, 0xF4, 0x51, 0x02, 0xB0, 0xD1, 0x01, 0xB0, 0xF1, 0x82, 0xB0, 0xD1, 0xFC, 0xAD, 0xFC, 0xCD, 0x01, 0xFC, 0xAD, 0x02, 0xFC, 0xCD, 0x82, 0xCB, 0x4E, 0x81, 0x91, 0xAA, 0x73, 0x06, 0xD3, 0x95, 0x81, 0xEC, 0x31, 0xFC, 0xAD, 0x08, 0xFC, 0xCD, 0x82, 0xC3, 0x2F, 0x89, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x6F, 0x02, 0xFC, 0xCD, 0x80, 0xFC, 0xAD, 0x02, 0xFC, 0xCD, 0x02, 0xFC, 0xAD, 0x82, 0xC3, 0x2F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x83, 0xBB, 0x11, 0x81, 0x91, 0xAA, 0x73, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x86, 0xDB, 0xB4, 0xFC, 0xAE, 0xFC, 0xAD, 0xFC, 0xCD, 0xFC, 0xAD, 0xFC, 0xCD, 0xFC, 0xAD, 0x01, 0xFC, 0xCD, 0x01, 0xFC, 0xAD, 0x01, 0x81, 0x91, 0x05, 0xD3, 0x95, 0x82, 0xD3, 0x75, 0xDB, 0xD3, 0xFC, 0xAD, 0x01, 0xFC, 0xCD, 0x82, 0xDB, 0xEE, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x82, 0xEC, 0x31, 0xFC, 0xCD, 0xFC, 0xAD, 0x0A, 0xFC, 0xCD, 0x86, 0xFC, 0xAD, 0xFC, 0xCD, 0xFC, 0xAD, 0xFC, 0xCD, 0xDB, 0xEE, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xDB, 0xD3, 0x03, 0xFC, 0xCD, 0x82, 0xC3, 0x2F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x81, + 0xF4, 0x6F, 0xFC, 0xAD, 0x01, 0xFC, 0xCD, 0x82, 0xC3, 0x2F, 0x89, 0x91, 0xAA, 0x94, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x31, 0x01, 0xFC, 0xCD, 0x81, 0xFC, 0xAD, 0xFC, 0xCD, 0x03, 0xFC, 0xAD, 0x82, 0xA2, 0x70, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x80, 0xFC, 0xCE, 0x01, 0xFC, 0xCF, 0x82, 0xFC, 0xEF, 0xFC, 0xD0, 0xFC, 0xF0, 0x01, 0xFC, 0xF1, 0x80, 0xFC, 0xF2, 0x01, 0xB0, 0xF1, 0x84, 0xB0, 0xF2, 0xB0, 0xF1, 0xA8, 0xF1, 0xB0, 0xF1, 0xFD, 0x0D, 0x02, 0xFC, 0xED, 0x85, 0xFD, 0x0D, 0xFC, 0xED, 0xFD, 0x0D, 0xE4, 0x2E, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x51, 0x09, 0xFC, 0xED, 0x82, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x8F, 0x09, 0xFC, 0xED, 0x82, 0xC3, 0x2F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x82, 0xEC, 0x6F, 0x91, 0xD1, 0x89, 0xD1, 0x05, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x81, 0xDB, 0xB4, 0xEC, 0x70, 0x04, 0xFC, 0xED, 0x80, 0xFD, 0x0D, 0x01, 0xFC, 0xED, 0x01, 0x81, 0x91, 0x06, 0xD3, 0x95, 0x80, 0xDB, 0xF3, 0x02, 0xFC, 0xED, 0x82, 0xE4, 0x2E, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x51, 0x0E, 0xFC, 0xED, 0x84, 0xFD, 0x0D, 0xFC, 0xED, 0xEC, 0x6E, 0x81, 0x91, 0x91, 0xF2, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x01, 0xD3, 0x95, 0x86, 0xF4, 0xAF, 0xFD, 0x0D, 0xFC, 0xED, 0xFD, 0x0D, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x8F, 0x02, 0xFC, 0xED, 0x83, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x75, 0x05, 0xD3, 0x95, 0x80, + 0xEC, 0x51, 0x07, 0xFC, 0xED, 0x82, 0xA2, 0x70, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x80, 0xFD, 0x0E, 0x02, 0xFD, 0x0F, 0x01, 0xFD, 0x10, 0x01, 0xFD, 0x31, 0x80, 0xFD, 0x32, 0x03, 0xB0, 0xF1, 0x81, 0xA8, 0xF1, 0xB0, 0xF1, 0x06, 0xFD, 0x2D, 0x82, 0xE4, 0x4E, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x09, 0xFD, 0x2D, 0x82, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0xCF, 0x09, 0xFD, 0x2D, 0x82, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x83, 0xF4, 0xCF, 0xC3, 0x4F, 0x81, 0x91, 0xB2, 0xD4, 0x09, 0xD3, 0x95, 0x81, 0xDB, 0xD4, 0xE4, 0x31, 0x01, 0xEC, 0x71, 0x83, 0xDB, 0xF0, 0xE4, 0x50, 0xF4, 0xCF, 0xFD, 0x0E, 0x01, 0x81, 0x91, 0x06, 0xD3, 0x95, 0x88, 0xDB, 0xD4, 0xF4, 0xAF, 0xF4, 0xCF, 0xF4, 0xAF, 0xDC, 0x10, 0x9A, 0x12, 0xAA, 0x73, 0xD3, 0x95, 0xD3, 0x96, 0x04, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x0F, 0xFD, 0x2D, 0x01, 0xFD, 0x2C, 0x84, 0x92, 0x11, 0x81, 0x91, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x96, 0x05, 0xD3, 0x95, 0x85, 0xEC, 0x71, 0xFC, 0xEE, 0xFD, 0x2D, 0xC3, 0x6F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x86, 0xDC, 0x10, 0xE4, 0x4E, 0xDC, 0x2E, 0xE4, 0x4E, 0xB2, 0xF0, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x07, 0xFD, 0x2D, 0x82, 0xA2, 0x70, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x80, 0xFD, 0x2E, 0x01, 0xFD, 0x2F, 0x80, 0xFD, 0x4F, 0x01, 0xFD, 0x50, 0x01, 0xFD, 0x51, 0x83, 0xFD, 0x71, 0xA8, 0xF1, 0xB0, 0xF1, 0xB0, 0xF2, 0x01, 0xA8, 0xF1, + 0x80, 0xA8, 0xF2, 0x03, 0xFD, 0x6D, 0x80, 0xFD, 0x4D, 0x01, 0xFD, 0x6D, 0x82, 0xE4, 0x6E, 0x81, 0x91, 0x92, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x09, 0xFD, 0x6D, 0x82, 0xC3, 0x6F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0xEF, 0x09, 0xFD, 0x6D, 0x82, 0xC3, 0x6F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x88, 0xF4, 0xEF, 0xFD, 0x2D, 0x92, 0x11, 0x89, 0xB2, 0xCB, 0x75, 0xD3, 0x96, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x96, 0x0B, 0xD3, 0x95, 0x80, 0xEC, 0x91, 0x01, 0x81, 0x91, 0x0B, 0xD3, 0x95, 0x80, 0xCB, 0x95, 0x07, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x0C, 0xFD, 0x6D, 0x80, 0xFD, 0x4D, 0x03, 0xFD, 0x6D, 0x82, 0xBB, 0x2F, 0x81, 0x91, 0xB2, 0xD4, 0x0A, 0xD3, 0x95, 0x82, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x09, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x09, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x07, 0xFD, 0x6D, 0x82, 0xA2, 0x90, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x80, 0xFD, 0x6E, 0x01, 0xFD, 0x6F, 0x80, 0xFD, 0x8F, 0x01, 0xFD, 0x90, 0x01, 0xFD, 0x91, 0x80, 0xFD, 0x92, 0x05, 0xA8, 0xF1, 0x83, 0xEC, 0x6F, 0xFD, 0x8D, 0xFD, 0xAD, 0xFD, 0x8D, 0x02, 0xFD, 0xAD, 0x82, 0xE4, 0x8E, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x81, 0xEC, 0x91, 0xFD, 0xAD, 0x08, 0xFD, 0x8D, 0x82, 0xC3, 0x8F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x83, 0xF5, 0x2F, 0xFD, 0xAD, 0xFD, 0x8D, 0xFD, 0xAD, 0x01, 0xFD, 0x8D, 0x80, 0xFD, 0xAD, 0x01, 0xFD, 0x8D, 0x01, 0xFD, 0xAD, 0x82, 0xC3, 0x8F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x84, 0xF5, 0x2F, + 0xFD, 0x8D, 0xE4, 0xAE, 0x89, 0x91, 0x9A, 0x32, 0x0F, 0xD3, 0x95, 0x80, 0xE4, 0x91, 0x01, 0x81, 0x91, 0x06, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x0C, 0xD3, 0x95, 0x80, 0xEC, 0x91, 0x01, 0xFD, 0xAD, 0x07, 0xFD, 0x8D, 0x01, 0xFD, 0xAD, 0x01, 0xFD, 0x8D, 0x01, 0xFD, 0xAD, 0x84, 0xFD, 0x8D, 0xFD, 0xAD, 0xF5, 0x2D, 0x81, 0x91, 0x91, 0xF2, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x82, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x14, 0xD3, 0x95, 0x80, 0xEC, 0x91, 0x01, 0xFD, 0x8D, 0x04, 0xFD, 0xAD, 0x83, 0xFD, 0x8D, 0xA2, 0x90, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x01, 0xFD, 0xAF, 0x02, 0xFD, 0xAD, 0x83, 0xFD, 0x8D, 0xFD, 0xAD, 0xFD, 0x8D, 0xEC, 0x6F, 0x02, 0xA8, 0xF1, 0x02, 0xA9, 0x11, 0x80, 0xEC, 0x8E, 0x01, 0xFD, 0xED, 0x02, 0xFD, 0xCD, 0x83, 0xFD, 0xED, 0xE4, 0xCE, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0xB1, 0x09, 0xFD, 0xCD, 0x82, 0xC3, 0xAF, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF5, 0x4F, 0x01, 0xFD, 0xCD, 0x80, 0xFD, 0xED, 0x04, 0xFD, 0xCD, 0x84, 0xFD, 0xED, 0xFD, 0xCD, 0xC3, 0xAF, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x85, 0xF5, 0x4F, 0xFD, 0xED, 0xFD, 0xCD, 0xD4, 0x4F, 0x81, 0x91, 0xB2, 0xB3, 0x09, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x03, 0xD3, 0x95, 0x82, 0xEC, 0xB1, 0x89, 0x91, 0x81, 0x91, 0x0B, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x07, 0xD3, 0x95, 0x80, 0xEC, 0xB1, 0x12, 0xFD, 0xCD, 0x82, 0xBB, 0x6F, 0x81, 0x91, 0xBA, 0xF4, 0x04, 0xD3, 0x95, 0x80, + 0xD3, 0x75, 0x03, 0xD3, 0x95, 0x82, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x14, 0xD3, 0x95, 0x80, 0xEC, 0xB1, 0x01, 0xFD, 0xED, 0x01, 0xFD, 0xCD, 0x03, 0xFD, 0xED, 0x82, 0xA2, 0xB0, 0x81, 0x91, 0xC3, 0x14, 0x05, 0xD3, 0x95, 0x83, 0xD3, 0x75, 0xFD, 0xEE, 0xFD, 0xEF, 0xFD, 0xED, 0x02, 0xFD, 0xCD, 0x01, 0xFD, 0xED, 0x80, 0xEC, 0x8E, 0x04, 0xA9, 0x11, 0x81, 0xA1, 0x11, 0xE4, 0x2E, 0x05, 0xFE, 0x0D, 0x82, 0xE4, 0xEE, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0xD1, 0x09, 0xFE, 0x0D, 0x82, 0xC3, 0xCF, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF5, 0x6F, 0x09, 0xFE, 0x0D, 0x82, 0xC3, 0xCF, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF5, 0x6F, 0x02, 0xFE, 0x0D, 0x82, 0xD4, 0x4F, 0x81, 0x91, 0xBA, 0xD3, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xEC, 0xD1, 0x01, 0x81, 0x91, 0x0E, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x04, 0xD3, 0x95, 0x80, 0xEC, 0xD1, 0x12, 0xFE, 0x0D, 0x83, 0xF5, 0xAD, 0x9A, 0x70, 0x89, 0xB1, 0xD3, 0x75, 0x08, 0xD3, 0x95, 0x82, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x0C, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0xD1, 0x02, 0xFE, 0x0D, 0x81, 0xFE, 0x0E, 0xFE, 0x0D, 0x02, 0xFE, 0x0E, 0x82, 0xA2, 0xB0, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x01, 0xFE, 0x0F, 0x05, 0xFE, 0x0D, 0x81, 0xE4, 0x2E, 0xA1, 0x11, 0x01, 0xA9, 0x11, 0x80, 0x80, 0xF0, 0x01, 0xA1, 0x11, 0x80, 0xC2, 0xB0, 0x05, 0xFE, 0x4D, 0x82, 0xE5, 0x0E, 0x81, 0x91, + 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0xF1, 0x09, 0xFE, 0x4D, 0x82, 0xC3, 0xEF, 0x89, 0x91, 0xAA, 0x93, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x02, 0xD3, 0x95, 0x80, 0xF5, 0x8F, 0x09, 0xFE, 0x4D, 0x84, 0xC3, 0xEF, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x95, 0xD3, 0x96, 0x04, 0xD3, 0x95, 0x80, 0xF5, 0x8F, 0x03, 0xFE, 0x4D, 0x83, 0xE5, 0x0E, 0x89, 0xD1, 0xA2, 0x53, 0xCB, 0x75, 0x05, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x04, 0xD3, 0x95, 0x80, 0xEC, 0xF1, 0x01, 0x81, 0x91, 0x14, 0xD3, 0x95, 0x80, 0xEC, 0xF1, 0x13, 0xFE, 0x4D, 0x83, 0xF6, 0x0E, 0x9A, 0x70, 0x91, 0xF2, 0xCB, 0x75, 0x05, 0xD3, 0x95, 0x86, 0xD3, 0x96, 0xD3, 0x95, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x95, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x0F, 0xD3, 0x95, 0x80, 0xEC, 0xF2, 0x02, 0xFE, 0x4D, 0x89, 0xFE, 0x4E, 0xFE, 0x4D, 0xFE, 0x4E, 0xFE, 0x4D, 0xFE, 0x4E, 0xA2, 0xD0, 0x81, 0x91, 0xC3, 0x14, 0xD3, 0x95, 0xD3, 0x96, 0x04, 0xD3, 0x95, 0x81, 0xFE, 0x4E, 0xFE, 0x4F, 0x05, 0xFE, 0x4D, 0x80, 0xC2, 0xB0, 0x01, 0xA1, 0x11, 0x81, 0x80, 0xF0, 0x60, 0xEF, 0x01, 0xA1, 0x11, 0x81, 0xA1, 0x12, 0xFE, 0x2D, 0x04, 0xFE, 0x8D, 0x82, 0xE5, 0x4E, 0x81, 0x91, 0x9A, 0x12, 0x04, 0xD3, 0x95, 0x82, 0xD3, 0x75, 0xD3, 0x95, 0xED, 0x11, 0x08, 0xFE, 0x6D, 0x85, 0xFE, 0x8D, 0xC4, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x95, 0xD3, 0x96, 0x03, 0xD3, 0x95, 0x82, 0xD3, 0x75, 0xF5, 0xCF, 0xFE, 0x6D, 0x07, 0xFE, 0x8D, 0x83, 0xFE, 0x6D, 0xC4, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, + 0x80, 0xF5, 0xCE, 0x01, 0xFE, 0x6D, 0x86, 0xFE, 0x8D, 0xFE, 0x6C, 0xFE, 0x8D, 0xF6, 0x2D, 0xC4, 0x0F, 0x9A, 0x12, 0xB2, 0xD4, 0x0A, 0xD3, 0x95, 0x80, 0xEC, 0xF1, 0x01, 0x81, 0x91, 0x14, 0xD3, 0x95, 0x80, 0xED, 0x11, 0x09, 0xFE, 0x6D, 0x80, 0xFE, 0x8D, 0x06, 0xFE, 0x6D, 0x86, 0xFE, 0x6C, 0xFE, 0x8D, 0xFE, 0x6D, 0xFE, 0x2D, 0xBB, 0xCF, 0x89, 0xB1, 0xBA, 0xF4, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x83, 0xD3, 0x96, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x14, 0xD3, 0x95, 0x80, 0xED, 0x12, 0x07, 0xFE, 0x8E, 0x82, 0xA2, 0xD0, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x01, 0xFE, 0x8F, 0x04, 0xFE, 0x8D, 0x81, 0xFE, 0x2D, 0xA1, 0x12, 0x01, 0xA1, 0x11, 0x81, 0x60, 0xEF, 0x28, 0xCD, 0x02, 0xA1, 0x11, 0x80, 0xCB, 0xCF, 0x04, 0xFE, 0xAD, 0x82, 0xF5, 0xED, 0x89, 0xD1, 0x91, 0xD2, 0x04, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xD3, 0x95, 0xED, 0x11, 0x09, 0xFE, 0xAD, 0x82, 0xC4, 0x2F, 0x81, 0xB1, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF5, 0xEF, 0x07, 0xFE, 0xAD, 0x84, 0xFE, 0xCC, 0xFE, 0xAD, 0xC4, 0x2F, 0x81, 0x91, 0xAA, 0x93, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x03, 0xD3, 0x95, 0x82, 0xF5, 0xEF, 0xFE, 0xAD, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x80, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x86, 0xF6, 0x4D, 0xD4, 0xCE, 0xBB, 0xD0, 0xC3, 0xB2, 0xC3, 0x14, 0xD3, 0x95, 0xD3, 0x75, 0x05, 0xD3, 0x95, 0x80, 0xED, 0x12, 0x01, 0x81, 0x91, 0x10, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x02, 0xD3, 0x95, 0x80, 0xED, 0x31, 0x01, 0xFE, 0xAC, 0x14, 0xFE, 0xAD, 0x84, + 0xEE, 0x0D, 0xCC, 0x6F, 0xBB, 0x51, 0xBA, 0xD4, 0xCB, 0x55, 0x03, 0xD3, 0x95, 0x82, 0xC3, 0x34, 0x81, 0x91, 0xB2, 0x94, 0x12, 0xD3, 0x95, 0x88, 0xD3, 0x75, 0xD3, 0x95, 0xED, 0x11, 0xFE, 0xAE, 0xFE, 0xCE, 0xFE, 0xAD, 0xFE, 0xAE, 0xFE, 0xAD, 0xFE, 0xCE, 0x01, 0xFE, 0xAE, 0x82, 0xA2, 0xF0, 0x81, 0x91, 0xC3, 0x14, 0x05, 0xD3, 0x95, 0x82, 0xDC, 0x34, 0xFE, 0xAF, 0xFE, 0xD0, 0x04, 0xFE, 0xAD, 0x80, 0xCB, 0xCF, 0x02, 0xA1, 0x11, 0x86, 0x28, 0xCD, 0x00, 0x01, 0x81, 0x10, 0x99, 0x11, 0xA1, 0x11, 0xA1, 0x71, 0xF5, 0xED, 0x05, 0xFE, 0xAD, 0x83, 0xFE, 0xAC, 0xFE, 0x6D, 0xF5, 0xCF, 0xF5, 0xEF, 0x01, 0xF5, 0xCF, 0x82, 0xF5, 0xEF, 0xF5, 0xCF, 0xFE, 0x4D, 0x0B, 0xFE, 0xAD, 0x80, 0xFE, 0x4E, 0x01, 0xF5, 0xEF, 0x81, 0xF5, 0xCF, 0xF5, 0xEE, 0x02, 0xF5, 0xEF, 0x80, 0xFE, 0x8D, 0x03, 0xFE, 0xAC, 0x81, 0xFE, 0xAD, 0xFE, 0x8D, 0x02, 0xFE, 0xAD, 0x01, 0xFE, 0xAC, 0x85, 0xFE, 0xAD, 0xF6, 0x4D, 0xF5, 0xEF, 0xF5, 0xCF, 0xF5, 0xEF, 0xF5, 0xCF, 0x02, 0xF5, 0xEF, 0x80, 0xFE, 0x6E, 0x04, 0xFE, 0xAD, 0x01, 0xFE, 0xAC, 0x03, 0xFE, 0xAD, 0x80, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x82, 0xF6, 0x0E, 0xF5, 0xEF, 0xF5, 0xCF, 0x01, 0xF5, 0xEF, 0x83, 0xF5, 0xCF, 0xF6, 0x4E, 0xFE, 0xAC, 0xFE, 0xAD, 0x0F, 0xF5, 0xEF, 0x80, 0xF5, 0xCF, 0x02, 0xF5, 0xEF, 0x82, 0xF5, 0xCF, 0xFE, 0x4D, 0xFE, 0xAC, 0x08, 0xFE, 0xAD, 0x80, 0xFE, 0xAC, 0x08, 0xFE, 0xAD, 0x80, 0xFE, 0xAC, 0x06, 0xFE, 0xAD, 0x80, 0xFE, 0x6D, 0x01, 0xF5, 0xEF, 0x01, 0xF5, 0xCF, 0x85, 0xFE, 0xAD, 0xF6, 0x2E, + 0xF5, 0xEF, 0xF5, 0xD0, 0xF5, 0xEF, 0xF5, 0xCF, 0x01, 0xF5, 0xF0, 0x80, 0xF5, 0xEF, 0x0B, 0xF5, 0xF0, 0x83, 0xF5, 0xEF, 0xF5, 0xF0, 0xFE, 0x4F, 0xFE, 0xCE, 0x07, 0xFE, 0xAE, 0x82, 0xFE, 0xAF, 0xF6, 0x10, 0xF5, 0xD0, 0x03, 0xF5, 0xF0, 0x80, 0xF6, 0x10, 0x02, 0xFE, 0xAF, 0x03, 0xFE, 0xAD, 0x84, 0xF5, 0xED, 0xA1, 0x71, 0xA1, 0x11, 0x99, 0x11, 0x81, 0x10, 0x01, 0x00, 0x01, 0x80, 0x38, 0xCE, 0x02, 0x99, 0x31, 0x83, 0xAA, 0x31, 0xFE, 0x2D, 0xFE, 0x8C, 0xFE, 0x8D, 0x02, 0xFE, 0x8C, 0x81, 0xFE, 0xAD, 0xFE, 0x8C, 0x01, 0xFE, 0xAC, 0x01, 0xFE, 0x8C, 0x83, 0xFE, 0xAC, 0xFE, 0xAD, 0xFE, 0x8D, 0xFE, 0x8C, 0x07, 0xFE, 0xAD, 0x01, 0xFE, 0x8C, 0x01, 0xFE, 0xAC, 0x83, 0xFE, 0xAD, 0xFE, 0x8C, 0xFE, 0xAD, 0xFE, 0x8C, 0x01, 0xFE, 0x8D, 0x81, 0xFE, 0x8C, 0xFE, 0xAD, 0x01, 0xFE, 0x8C, 0x01, 0xFE, 0xAD, 0x01, 0xFE, 0xAC, 0x01, 0xFE, 0x8C, 0x82, 0xFE, 0xAC, 0xFE, 0x8C, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x8B, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0xAD, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0x8D, 0xFE, 0xAC, 0xFE, 0x8C, 0xFE, 0xAC, 0xFE, 0x8D, 0x01, 0xFE, 0xAD, 0x81, 0xFE, 0x8C, 0xFE, 0xAC, 0x01, 0xFE, 0x8C, 0x84, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0xAC, 0xFE, 0x8D, 0xFE, 0x8C, 0x01, 0xFE, 0xAD, 0x02, 0xFE, 0x8C, 0x82, 0xFE, 0xAD, 0xFE, 0x8C, 0xFE, 0xAC, 0x0F, 0xFE, 0xAD, 0x83, 0xFE, 0x8C, 0xFE, 0xAC, 0xFE, 0x8D, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x80, 0xFE, 0x8C, 0x10, 0xFE, 0xAD, 0x83, 0xFE, 0xAC, 0xFE, 0x8C, 0xFE, 0xAD, 0xFE, 0x8C, 0x03, 0xFE, + 0x8D, 0x02, 0xFE, 0xAD, 0x80, 0xFE, 0x8D, 0x03, 0xFE, 0xAD, 0x82, 0xFE, 0x8D, 0xFE, 0x8E, 0xFE, 0xAD, 0x01, 0xFE, 0xAE, 0x80, 0xFE, 0xAD, 0x0B, 0xFE, 0xAE, 0x01, 0xFE, 0x8E, 0x02, 0xFE, 0xAE, 0x80, 0xFE, 0x8E, 0x02, 0xFE, 0xAE, 0x01, 0xFE, 0x8E, 0x81, 0xFE, 0xAE, 0xFE, 0xAF, 0x01, 0xFE, 0xAE, 0x81, 0xFE, 0xAF, 0xFE, 0x8E, 0x04, 0xFE, 0xAF, 0x87, 0xFE, 0x8F, 0xFE, 0xB0, 0xFE, 0xAF, 0xFE, 0x8C, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0x2D, 0xAA, 0x31, 0x02, 0x99, 0x31, 0x80, 0x38, 0xCE, 0x02, 0x00, 0x01, 0x81, 0x60, 0xEF, 0x99, 0x12, 0x01, 0x99, 0x31, 0x81, 0xB2, 0x70, 0xF6, 0x2D, 0x01, 0xFE, 0x8C, 0x02, 0xFE, 0x8D, 0x81, 0xFE, 0x8C, 0xFE, 0x8D, 0x03, 0xFE, 0x8C, 0x02, 0xFE, 0x8D, 0x08, 0xFE, 0x8C, 0x80, 0xFE, 0x8D, 0x01, 0xFE, 0x8C, 0x02, 0xFE, 0x8D, 0x82, 0xFE, 0x8C, 0xFE, 0x8D, 0xFE, 0x8C, 0x03, 0xFE, 0x8D, 0x80, 0xFE, 0x8C, 0x08, 0xFE, 0x8D, 0x81, 0xFE, 0x8C, 0xFE, 0x8D, 0x03, 0xFE, 0x8C, 0x80, 0xFE, 0x8D, 0x02, 0xFE, 0x8C, 0x01, 0xFE, 0x8D, 0x02, 0xFE, 0x8C, 0x01, 0xFE, 0x8D, 0x01, 0xFE, 0x8C, 0x80, 0xFE, 0x8D, 0x03, 0xFE, 0x8C, 0x01, 0xFE, 0x8D, 0x81, 0xFE, 0x8C, 0xFE, 0x8D, 0x02, 0xFE, 0x8C, 0x12, 0xFE, 0x8D, 0x01, 0xFE, 0x8C, 0x83, 0xFE, 0x6D, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0x8D, 0x0A, 0xFE, 0x8C, 0x04, 0xFE, 0x8D, 0x80, 0xFE, 0x8C, 0x09, 0xFE, 0x8D, 0x80, 0xFE, 0x8E, 0x04, 0xFE, 0x8D, 0x10, 0xFE, 0x8E, 0x80, 0xFE, 0x8F, 0x01, 0xFE, 0x8E, 0x01, 0xFE, 0x8F, 0x80, 0xFE, 0x8E, 0x01, 0xFE, 0x8F, 0x82, 0xFE, 0x8E, 0xFE, 0x8F, + 0xFE, 0x8E, 0x0A, 0xFE, 0x8F, 0x01, 0xFE, 0x90, 0x80, 0xFE, 0xB0, 0x01, 0xFE, 0x8C, 0x81, 0xF6, 0x2D, 0xB2, 0x70, 0x01, 0x99, 0x31, 0x81, 0x99, 0x12, 0x60, 0xEF, 0x03, 0x00, 0x01, 0x81, 0x28, 0xAD, 0x81, 0x10, 0x01, 0x99, 0x31, 0x83, 0x99, 0x11, 0xAA, 0x31, 0xF5, 0xCD, 0xFE, 0x8C, 0x15, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x01, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x0E, 0xFE, 0x6C, 0x80, 0xFE, 0x8C, 0x04, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x01, 0xFE, 0x6C, 0x82, 0xFE, 0x6D, 0xFE, 0x6C, 0xFE, 0x6D, 0x03, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x0A, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x19, 0xFE, 0x6C, 0x80, 0xFE, 0x8C, 0x01, 0xFE, 0x6D, 0x11, 0xFE, 0x6C, 0x83, 0xFE, 0x6D, 0xFE, 0x6C, 0xFE, 0x6D, 0xFE, 0x6C, 0x03, 0xFE, 0x6D, 0x80, 0xFE, 0x6C, 0x02, 0xFE, 0x6D, 0x80, 0xFE, 0x8E, 0x01, 0xFE, 0x8D, 0x81, 0xFE, 0x6E, 0xFE, 0x8D, 0x0A, 0xFE, 0x6E, 0x03, 0xFE, 0x6F, 0x01, 0xFE, 0x8F, 0x02, 0xFE, 0x6F, 0x80, 0xFE, 0x8F, 0x01, 0xFE, 0x6F, 0x01, 0xFE, 0x8F, 0x01, 0xFE, 0x6F, 0x80, 0xFE, 0x8F, 0x01, 0xFE, 0x6F, 0x01, 0xFE, 0x8F, 0x80, 0xFE, 0x6F, 0x01, 0xFE, 0x8F, 0x81, 0xFE, 0x6F, 0xFE, 0x90, 0x01, 0xFE, 0x8F, 0x01, 0xFE, 0x90, 0x83, 0xFE, 0x8C, 0xF5, 0xCD, 0xAA, 0x31, 0x99, 0x11, 0x01, 0x99, 0x31, 0x81, 0x81, 0x10, 0x28, 0xAD, 0x04, 0x00, 0x01, 0x81, 0x28, 0xAD, 0x91, 0x11, 0x02, 0x99, 0x31, 0x83, 0xA1, 0x71, 0xCB, 0xCF, 0xF6, 0x0D, 0xFE, 0x4D, 0x08, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x0C, 0xFE, 0x6D, 0x82, 0xFE, 0x6C, 0xFE, 0x6D, 0xFE, 0x4D, 0x04, 0xFE, 0x6D, + 0x80, 0xFE, 0x4D, 0x04, 0xFE, 0x6D, 0x82, 0xFE, 0x4D, 0xFE, 0x6D, 0xFE, 0x6C, 0x07, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x02, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x05, 0xFE, 0x6D, 0x82, 0xFE, 0x6C, 0xFE, 0x6D, 0xFE, 0x4D, 0x08, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x2C, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x02, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x01, 0xFE, 0x6E, 0x81, 0xFE, 0x4E, 0xFE, 0x6D, 0x04, 0xFE, 0x6E, 0x80, 0xFE, 0x6F, 0x01, 0xFE, 0x6E, 0x11, 0xFE, 0x6F, 0x01, 0xFE, 0x70, 0x80, 0xFE, 0x6F, 0x08, 0xFE, 0x70, 0x80, 0xFE, 0x90, 0x03, 0xFE, 0x70, 0x02, 0xFE, 0x71, 0x82, 0xE4, 0x71, 0xCB, 0xCF, 0xA1, 0x71, 0x02, 0x99, 0x31, 0x81, 0x91, 0x11, 0x28, 0xAD, 0x06, 0x00, 0x01, 0x83, 0x28, 0xCD, 0x81, 0x11, 0x99, 0x31, 0x99, 0x12, 0x01, 0x99, 0x31, 0x88, 0x99, 0x11, 0xBA, 0xB0, 0xDC, 0x6F, 0xE5, 0x0F, 0xE5, 0x0E, 0xFE, 0x4E, 0xFE, 0x6E, 0xFE, 0x4E, 0xFE, 0x6D, 0x01, 0xFE, 0x4E, 0x60, 0xFE, 0x4D, 0x01, 0xFE, 0x4E, 0x05, 0xFE, 0x4D, 0x03, 0xFE, 0x4E, 0x01, 0xFE, 0x6E, 0x02, 0xFE, 0x4E, 0x01, 0xFE, 0x6E, 0x82, 0xFE, 0x4E, 0xFE, 0x6F, 0xFE, 0x6E, 0x05, 0xFE, 0x6F, 0x83, 0xFE, 0x4F, 0xFE, 0x6F, 0xFE, 0x70, 0xFE, 0x50, 0x0F, 0xFE, 0x70, 0x0C, 0xFE, 0x71, 0x84, 0xF6, 0x12, 0xE5, 0x31, 0xE5, 0x12, 0xD4, 0x72, 0xB2, 0x71, 0x02, 0x99, 0x31, 0x83, 0x99, 0x12, 0x99, 0x31, 0x81, 0x11, 0x28, 0xCD, 0x08, 0x00, 0x01, 0x82, 0x28, 0xCC, 0x61, 0x0F, 0x99, 0x11, 0x07, 0x99, 0x31, 0x80, 0x99, 0x32, 0x75, 0x99, 0x31, 0x80, 0x99, 0x12, 0x03, 0x99, 0x31, 0x82, 0x99, 0x11, + 0x99, 0x31, 0x99, 0x11, 0x01, 0x99, 0x31, 0x01, 0x99, 0x11, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x17, 0x99, 0x31, 0x01, 0x99, 0x11, 0x81, 0x99, 0x31, 0x99, 0x32, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x80, 0x99, 0x12, 0x02, 0x99, 0x31, 0x82, 0x99, 0x11, 0x61, 0x0F, 0x28, 0xCC, 0x0B, 0x00, 0x01, 0x81, 0x40, 0xCE, 0x79, 0x10, 0x01, 0x99, 0x31, 0x80, 0x99, 0x32, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x7F, 0x99, 0x31, 0x29, 0x99, 0x31, 0x81, 0x79, 0x10, 0x40, 0xCE, 0x0E, 0x00, 0x01, 0x83, 0x18, 0xAB, 0x30, 0xCC, 0x58, 0xCF, 0x79, 0x10, 0x01, 0x99, 0x31, 0x80, 0x99, 0x12, 0x01, 0x99, 0x31, 0x84, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x99, 0x32, 0x99, 0x31, 0x7F, 0x99, 0x11, 0x16, 0x99, 0x11, 0x84, 0x99, 0x31, 0x99, 0x32, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x01, 0x99, 0x31, 0x80, 0x99, 0x12, 0x01, 0x99, 0x31, 0x83, 0x79, 0x10, 0x58, 0xCF, 0x30, 0xCC, 0x18, 0xAB, 0x07, 0x00, 0x01 +}; + +const tImage MarlinLogo195x59x16 = MARLIN_LOGO_CHOSEN(195, 59); + +#endif // HAS_GRAPHICAL_TFT && SHOW_BOOTSCREEN diff --git a/Marlin/src/lcd/tft/images/bootscreen_228x255x2.cpp b/Marlin/src/lcd/tft/images/bootscreen_228x255x2.cpp index 35dc5b5f9c9c..e6ee7535bf29 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_228x255x2.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_228x255x2.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" -#if HAS_GRAPHICAL_TFT +#if ALL(HAS_GRAPHICAL_TFT, SHOW_BOOTSCREEN) -extern const uint8_t marlin_logo_228x255x2[]; -const tImage MarlinLogo228x255x2 = { (void *)marlin_logo_228x255x2, 228, 255, GREYSCALE2 }; +#include "../tft_image.h" const uint8_t marlin_logo_228x255x2[14535] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -286,4 +284,6 @@ const uint8_t marlin_logo_228x255x2[14535] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00 }; -#endif // HAS_GRAPHICAL_TFT +const tImage MarlinLogo228x255x2 = { (void *)marlin_logo_228x255x2, 228, 255, GREYSCALE2 }; + +#endif // HAS_GRAPHICAL_TFT && SHOW_BOOTSCREEN diff --git a/Marlin/src/lcd/tft/images/bootscreen_228x255x4.cpp b/Marlin/src/lcd/tft/images/bootscreen_228x255x4.cpp index fe60e173e6b2..3400271ca036 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_228x255x4.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_228x255x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" -#if HAS_GRAPHICAL_TFT +#if ALL(HAS_GRAPHICAL_TFT, SHOW_BOOTSCREEN) -extern const uint8_t marlin_logo_228x255x4[]; -const tImage MarlinLogo228x255x4 = { (void *)marlin_logo_228x255x4, 228, 255, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t marlin_logo_228x255x4[29070] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x9E, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -286,4 +284,6 @@ const uint8_t marlin_logo_228x255x4[29070] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00 }; -#endif // HAS_GRAPHICAL_TFT +const tImage MarlinLogo228x255x4 = { (void *)marlin_logo_228x255x4, 228, 255, GREYSCALE4 }; + +#endif // HAS_GRAPHICAL_TFT && SHOW_BOOTSCREEN diff --git a/Marlin/src/lcd/tft/images/bootscreen_240x250x16.cpp b/Marlin/src/lcd/tft/images/bootscreen_240x250x16.cpp new file mode 100644 index 000000000000..3e31d9cd1156 --- /dev/null +++ b/Marlin/src/lcd/tft/images/bootscreen_240x250x16.cpp @@ -0,0 +1,376 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include "../../../inc/MarlinConfigPre.h" + +#if ALL(HAS_GRAPHICAL_TFT, SHOW_BOOTSCREEN) + +#include "../tft_image.h" + +const uint16_t marlin_logo_240x250x16[60000] = { + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x21CF, 0x2395, 0x2250, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x2271, 0x2CFA, 0x2C57, 0x214D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x2313, 0x2D5B, 0x2D1A, 0x2271, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216E, 0x2B74, 0x2D9C, 0x2D9C, 0x2C78, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216D, 0x2B54, 0x2D9C, 0x2DBC, 0x2D5B, 0x2B54, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x2B13, 0x2D7C, 0x35BC, 0x35BC, 0x2D5B, 0x2B34, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x2292, 0x355B, 0x35BD, 0x35BD, 0x35BD, 0x359C, 0x2C99, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x2210, 0x2D1A, 0x35BC, 0x35BD, 0x35BD, 0x35BD, 0x357C, 0x2BF6, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x21AE, 0x2C58, 0x359C, 0x35BD, 0x35BD, 0x35BD, 0x35BD, 0x355B, 0x2B75, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x2B34, 0x359C, 0x35BD, 0x35BD, 0x35BD, 0x35BD, 0x35BD, 0x357C, 0x2BF6, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x2230, 0x353B, 0x35BD, 0x35BD, 0x35BD, 0x35BD, 0x35BD, 0x35BD, 0x359C, 0x34FA, 0x21EF, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x218E, 0x2C37, 0x359C, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x351A, 0x2230, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x2AB2, 0x359C, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x34FA, 0x2230, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x21AF, 0x3499, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x34FA, 0x2210, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x2B14, 0x359C, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x359D, 0x34FA, 0x2230, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x21EF, 0x34FA, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x357C, 0x3458, 0x218E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216E, 0x2B75, 0x3D9C, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x34FA, 0x2210, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x21EF, 0x351B, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x34DA, 0x218E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216D, 0x2B34, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x34DA, 0x21CF, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x21CF, 0x34DA, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D3C, 0x2B75, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x2AF3, 0x3D7C, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D7C, 0x3418, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x21AE, 0x3458, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D9D, 0x3D7C, 0x3479, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x2A10, 0x3D5C, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3CFB, 0x2A51, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x2B34, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7C, 0x3C99, 0x21CF, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x21AE, 0x3458, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D3B, 0x3355, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29F0, 0x3D5C, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D7D, 0x3D5C, 0x33F7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x2A92, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x3CBA, 0x21AF, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216E, 0x3375, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x455C, 0x3C59, 0x2A30, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x218E, 0x3C18, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x3D1C, 0x3355, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x21CF, 0x3CDA, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x453C, 0x33B6, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29EF, 0x455C, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x455C, 0x3C38, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x2A31, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x44FB, 0x2AB2, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x2AB2, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x455D, 0x44FB, 0x3375, 0x216E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x32F3, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x457D, 0x455D, 0x451B, 0x3355, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216D, 0x3334, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x453C, 0x3C18, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216E, 0x3375, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x455D, 0x44DB, 0x2AB2, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216E, 0x3B96, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x44FB, 0x3355, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x218E, 0x3BB6, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x449A, 0x21AF, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x2A10, 0x32D3, 0x3B96, 0x3BF7, 0x3BF7, 0x3B76, 0x32D3, 0x2A10, 0x214D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x218E, 0x3BB7, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x44DB, 0x2A92, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x218E, 0x3292, 0x3B96, 0x4479, 0x44FB, 0x451C, 0x453C, 0x4D3C, 0x4D3C, 0x4D3C, 0x4D3C, 0x453C, 0x451C, 0x44DB, 0x3BD7, 0x2A72, 0x214D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x218E, 0x3BB7, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D3D, 0x3C38, 0x216E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x29CF, 0x3355, 0x447A, 0x451C, 0x4D3C, 0x4D3C, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D3D, 0x4D1C, 0x44BB, 0x3335, 0x218E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x218E, 0x3BB7, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D3C, 0x4438, 0x216E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3292, 0x3C18, 0x4CFC, 0x4D3C, 0x4D3D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D3D, 0x44DB, 0x4439, 0x3BB7, 0x3B96, 0x3B76, 0x3B96, 0x3BF7, 0x4459, 0x449A, 0x3314, 0x214D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216E, 0x3B96, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4CFB, 0x32D3, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x32B3, 0x4479, 0x4D1C, 0x4D3D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D3C, 0x4459, 0x3B35, 0x2A51, 0x218E, 0x214D, 0x214D, 0x214D, 0x212D, 0x212D, 0x214D, 0x214D, 0x214D, 0x29AF, 0x2A72, 0x2A51, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216E, 0x3B55, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D3D, 0x4459, 0x218E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3292, 0x4459, 0x4D1C, 0x4D3D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D1C, 0x4418, 0x32B3, 0x29AF, 0x214D, 0x212D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3314, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D1C, 0x3BF8, 0x218E, 0x0001, 0x0001, 0x0001, 0x212D, 0x29F0, 0x43F8, 0x4D1C, 0x4D3D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D3D, 0x44BB, 0x3335, 0x29CF, 0x214D, 0x212D, 0x0001, 0x214D, 0x29CF, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3271, 0x4D3D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D3D, 0x4459, 0x29CF, 0x0001, 0x216E, 0x3B35, 0x4CDB, 0x4D3D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D3D, 0x447A, 0x32D3, 0x216E, 0x212D, 0x0001, 0x0001, 0x218E, 0x32F4, 0x3BB7, 0x29F0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x2A31, 0x32F4, 0x3B55, 0x3B76, 0x3B76, 0x3B76, 0x3B76, 0x3BB7, 0x3BB7, 0x3BB7, 0x3BD7, 0x43F8, 0x4439, 0x447A, 0x4CBB, 0x4D1C, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4CFC, 0x3B35, 0x298E, 0x43F8, 0x4D1C, 0x4D3D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D5D, 0x4D3D, 0x449A, 0x32B3, 0x216E, 0x212D, 0x0001, 0x212D, 0x29F0, 0x3B76, 0x4CBB, 0x4418, 0x29CF, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x29F0, 0x32D3, 0x3B55, 0x3B96, 0x3B96, 0x3B96, 0x3B96, 0x3B76, 0x3B35, 0x32F4, 0x32B3, 0x3272, 0x2A10, 0x298E, 0x214D, 0x214D, 0x216E, 0x29F0, 0x32B3, 0x3B96, 0x4C9A, 0x4D3D, 0x4D3D, 0x4D3D, 0x4D3D, 0x4D3D, 0x4D3D, 0x4D3D, 0x4D3D, 0x4D3D, 0x4D3D, 0x4D3D, 0x4D3D, 0x4D3D, 0x4CFC, 0x4439, 0x4D3D, 0x4D3D, 0x4D3D, 0x4D3D, 0x4D3D, 0x4D3D, 0x4D3D, 0x4CBB, 0x3314, 0x216E, 0x212D, 0x0001, 0x214D, 0x3272, 0x43F8, 0x4CFC, 0x4CFC, 0x3BD7, 0x218E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216E, 0x3B55, 0x4CFC, 0x4D1C, 0x4D1C, 0x4D1C, 0x4D1C, 0x4D1C, 0x4D1C, 0x4D1C, 0x4D1C, 0x4D1C, 0x4D1C, 0x4D1C, 0x4CFC, 0x4CFC, 0x4CBB, 0x4439, 0x43D7, 0x3B35, 0x3292, 0x29F0, 0x218E, 0x29F0, 0x3B14, 0x4459, 0x4D3D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x4CFC, 0x43D7, 0x43F8, 0x4D1C, 0x553D, 0x553D, 0x4CFC, 0x3B55, 0x29AF, 0x212D, 0x0001, 0x216E, 0x32B3, 0x4459, 0x4D1C, 0x4D3D, 0x4CFC, 0x3B76, 0x214D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x218E, 0x3B96, 0x551C, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x4D1C, 0x4D1C, 0x4CFC, 0x4CBB, 0x43F8, 0x3B14, 0x2A51, 0x2A10, 0x3B35, 0x4C7A, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x4D1C, 0x4439, 0x3251, 0x32F4, 0x3B55, 0x29F0, 0x212D, 0x212D, 0x298E, 0x3B35, 0x4CBB, 0x4D1C, 0x553D, 0x553D, 0x4CDB, 0x32D3, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x43D7, 0x551C, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x551D, 0x551C, 0x4CFC, 0x4C9A, 0x3B96, 0x3292, 0x2A31, 0x3B76, 0x4CBB, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x551D, 0x4C7A, 0x3272, 0x212D, 0x212D, 0x214D, 0x3AF4, 0x4CBB, 0x551C, 0x553D, 0x553D, 0x553D, 0x4C9B, 0x3272, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29AF, 0x43F8, 0x551D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x551D, 0x4CFC, 0x4C9B, 0x3B76, 0x3251, 0x3292, 0x4419, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x4CBB, 0x3AF4, 0x0001, 0x214D, 0x3272, 0x4439, 0x551D, 0x553D, 0x551D, 0x4459, 0x2A10, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x29CF, 0x4439, 0x551D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x551D, 0x4CDC, 0x43F8, 0x3292, 0x3231, 0x43F8, 0x551D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x4C9B, 0x3251, 0x2A10, 0x2A10, 0x216E, 0x29CF, 0x32B3, 0x32B3, 0x218E, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x2A10, 0x4C5A, 0x551D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x551D, 0x54DC, 0x4419, 0x3293, 0x3231, 0x43F8, 0x553D, 0x553D, 0x553D, 0x553D, 0x551D, 0x4C39, 0x3251, 0x4396, 0x4C7A, 0x4397, 0x3272, 0x214D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216E, 0x3B14, 0x54DC, 0x551D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x551D, 0x54FC, 0x4C39, 0x32B3, 0x3272, 0x4C7A, 0x553D, 0x553D, 0x553D, 0x551D, 0x4418, 0x29CF, 0x3231, 0x43F8, 0x54FC, 0x4C9A, 0x3B35, 0x29D0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3231, 0x4C39, 0x551C, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x551D, 0x54DC, 0x43B7, 0x3251, 0x3B55, 0x54FC, 0x553D, 0x553D, 0x551C, 0x43F8, 0x298E, 0x216E, 0x32B3, 0x4CBB, 0x551D, 0x54DB, 0x43B7, 0x2A11, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x29AF, 0x4396, 0x54FC, 0x551D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x551D, 0x551D, 0x4C9B, 0x3B35, 0x3272, 0x4C7A, 0x553D, 0x553D, 0x54FC, 0x43F8, 0x29AF, 0x212D, 0x29CF, 0x43B7, 0x551D, 0x551D, 0x54DC, 0x43D8, 0x29D0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3292, 0x549B, 0x551D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x551D, 0x549B, 0x4C39, 0x43D7, 0x4376, 0x4376, 0x4376, 0x4376, 0x4376, 0x4376, 0x4376, 0x4396, 0x43B7, 0x43B7, 0x43F8, 0x4C19, 0x4C7A, 0x54BB, 0x551D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x553D, 0x551D, 0x54FC, 0x4C19, 0x3293, 0x43D8, 0x553D, 0x553D, 0x551D, 0x4C5A, 0x3211, 0x0001, 0x216E, 0x3AF4, 0x54FC, 0x551D, 0x551D, 0x54BB, 0x3B56, 0x216E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x4376, 0x54FC, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x54FC, 0x4397, 0x29F0, 0x214D, 0x214D, 0x214D, 0x214D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x214D, 0x214D, 0x214D, 0x214D, 0x214D, 0x214D, 0x214D, 0x216E, 0x298E, 0x3211, 0x3AB3, 0x3B35, 0x43D8, 0x4C7A, 0x551D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x551D, 0x549B, 0x3B35, 0x4356, 0x551D, 0x5D1D, 0x551D, 0x4C19, 0x214D, 0x0001, 0x214D, 0x3272, 0x549B, 0x5D1D, 0x5D1D, 0x54FC, 0x4C7A, 0x3293, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x29CF, 0x4C19, 0x54FD, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x54BB, 0x3AB3, 0x214D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x212D, 0x214D, 0x214D, 0x29AF, 0x3272, 0x4356, 0x4C39, 0x54FD, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x54DC, 0x4BF8, 0x3B15, 0x54FC, 0x5D1D, 0x54DC, 0x3B15, 0x0001, 0x0001, 0x212D, 0x29F0, 0x4C19, 0x5D1D, 0x5D1D, 0x5D1D, 0x54DC, 0x4397, 0x298E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x2A10, 0x4C7A, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x547A, 0x3231, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x214D, 0x29AF, 0x3AD4, 0x4BF8, 0x54FC, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x54FD, 0x4C5A, 0x3B35, 0x54BB, 0x5D1D, 0x54BB, 0x3AD3, 0x0001, 0x0001, 0x212D, 0x29AF, 0x43D8, 0x5D1D, 0x5D1D, 0x5D1D, 0x54FD, 0x4C5A, 0x3272, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x29F0, 0x545A, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5CFD, 0x4BF9, 0x29CF, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x214D, 0x29AF, 0x3AF4, 0x4C5A, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x547B, 0x4356, 0x547A, 0x5D1D, 0x549B, 0x3293, 0x0001, 0x0001, 0x0001, 0x29AF, 0x43B7, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x54BB, 0x4356, 0x214D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29AF, 0x4C39, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5CFD, 0x545A, 0x3AB3, 0x214D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x216E, 0x3231, 0x43B7, 0x5CFC, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x549B, 0x4335, 0x547A, 0x5D1D, 0x545A, 0x29AF, 0x0001, 0x0001, 0x0001, 0x298E, 0x4356, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5CDC, 0x4BF8, 0x29AF, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x4BD8, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x549B, 0x4377, 0x3231, 0x214E, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x214D, 0x29F0, 0x4397, 0x5CDC, 0x5D1D, 0x5D1D, 0x5D1D, 0x547B, 0x3B15, 0x547B, 0x5CFC, 0x4397, 0x212D, 0x0001, 0x0001, 0x0001, 0x298E, 0x4356, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5CFD, 0x4C39, 0x2A10, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216E, 0x4376, 0x5CFD, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5CFD, 0x543A, 0x4335, 0x3211, 0x216E, 0x212D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x214D, 0x29D0, 0x4377, 0x5CDC, 0x5D1D, 0x5D1D, 0x547A, 0x3B15, 0x54BC, 0x549B, 0x3A93, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x4356, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x547B, 0x3272, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216E, 0x4315, 0x5CFD, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5CDC, 0x4BF8, 0x3AD4, 0x29CF, 0x214D, 0x212D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x214D, 0x31F0, 0x4BD8, 0x5D1D, 0x5CFD, 0x545A, 0x4315, 0x5CDC, 0x545A, 0x29AF, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x4397, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x549B, 0x3AB3, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3AF4, 0x5CFD, 0x5D1D, 0x5D1D, 0x5D1D, 0x5CFD, 0x5439, 0x3AD4, 0x298F, 0x214D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x216E, 0x3252, 0x543A, 0x5CFD, 0x545A, 0x4356, 0x5CFC, 0x4BB7, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x29AF, 0x4BB7, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x549B, 0x3AD4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3AD4, 0x5CDC, 0x5D1D, 0x5D1D, 0x5CDC, 0x4397, 0x31F0, 0x214D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x298E, 0x3AF4, 0x547B, 0x4C19, 0x4BB7, 0x549B, 0x3272, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29AF, 0x4BD8, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5C9B, 0x3AF4, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3AB3, 0x5CDC, 0x5D1D, 0x5CDC, 0x4377, 0x29D0, 0x212D, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x29CF, 0x4335, 0x4BB7, 0x543A, 0x5419, 0x214D, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x29CF, 0x5419, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5D1D, 0x5C9B, 0x3AD4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3AD4, 0x5CDC, 0x5CFD, 0x5419, 0x3231, 0x212D, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x298E, 0x3251, 0x547B, 0x3AD4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3210, 0x5C7B, 0x651D, 0x651D, 0x651D, 0x651D, 0x651D, 0x5C9B, 0x3A72, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x29CF, 0x3252, 0x3AD4, 0x4356, 0x4BB7, 0x4336, 0x298E, 0x3AF4, 0x5CDC, 0x5C9B, 0x3AD4, 0x214E, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216E, 0x42F4, 0x543A, 0x298E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3252, 0x5CDC, 0x651D, 0x651D, 0x651D, 0x651D, 0x64FD, 0x547B, 0x3231, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3A72, 0x4BD8, 0x5C9B, 0x5CDC, 0x5CDC, 0x5C9B, 0x4BB7, 0x3A72, 0x29AF, 0x4336, 0x5C9B, 0x4356, 0x29AF, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29AF, 0x4BD8, 0x4336, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214E, 0x3AD4, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x543A, 0x29F0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x29AF, 0x4315, 0x5C5A, 0x5CDC, 0x64FD, 0x5C9C, 0x4B76, 0x3231, 0x296E, 0x214D, 0x29D0, 0x4B77, 0x4335, 0x29CF, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3231, 0x5439, 0x29F0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x4B97, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x5419, 0x298E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x31F0, 0x4B77, 0x5C9C, 0x64DD, 0x64FD, 0x5C9C, 0x4315, 0x29AF, 0x212D, 0x212D, 0x0001, 0x212D, 0x29D0, 0x298E, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216E, 0x42F5, 0x4B97, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x29D0, 0x5C5B, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64DD, 0x4B97, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3252, 0x53D8, 0x64BC, 0x64DD, 0x64FD, 0x64BC, 0x4B77, 0x29AF, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29AF, 0x4BB8, 0x3231, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A72, 0x64DD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x5C9C, 0x42D4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x31F0, 0x4336, 0x5C5B, 0x64DD, 0x64FD, 0x64FD, 0x64FD, 0x5C7B, 0x3A72, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3210, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A72, 0x4BB8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x4B56, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x5C7B, 0x3231, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x29CF, 0x3AB3, 0x4B97, 0x5C5B, 0x64BC, 0x64DD, 0x64FD, 0x64FD, 0x64FD, 0x64DD, 0x53D8, 0x29AF, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x4B97, 0x3AB3, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x4B56, 0x3210, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29D0, 0x5C7B, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x5419, 0x296E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x296E, 0x31F0, 0x3A93, 0x4B56, 0x53F9, 0x5C7B, 0x64BC, 0x64DD, 0x64DD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x649C, 0x42F5, 0x214D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x4B56, 0x5C5A, 0x31F0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3211, 0x4335, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3A93, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64BC, 0x4B56, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x29AF, 0x3231, 0x42D4, 0x4B56, 0x53D9, 0x5C5B, 0x64BC, 0x64BC, 0x64DD, 0x64DD, 0x64DD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64DD, 0x53D8, 0x31F0, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x42B4, 0x64DD, 0x53D8, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3211, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x53D8, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x5C7B, 0x3252, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x216E, 0x3AB4, 0x42D4, 0x3A72, 0x3211, 0x31D0, 0x298E, 0x214D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x298E, 0x31D0, 0x3231, 0x3A72, 0x3AB4, 0x4336, 0x4B97, 0x53F9, 0x5C7B, 0x64BC, 0x64BC, 0x64BC, 0x64DD, 0x64DD, 0x64DD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64DD, 0x53F9, 0x3A52, 0x214D, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3211, 0x64FD, 0x649C, 0x3A93, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3211, 0x64BC, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64FD, 0x64DD, 0x5419, 0x296E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x31F0, 0x53D8, 0x64BC, 0x64BC, 0x64BC, 0x64BC, 0x649C, 0x649C, 0x649C, 0x5C5B, 0x5C3A, 0x5C1A, 0x53F9, 0x53D9, 0x53B8, 0x53B8, 0x5397, 0x4B77, 0x4B77, 0x4B36, 0x4B36, 0x4B36, 0x4B36, 0x4B36, 0x4B36, 0x4B36, 0x4B36, 0x4B36, 0x4B77, 0x5397, 0x53B8, 0x53F9, 0x5C1A, 0x5C3A, 0x647C, 0x649C, 0x64BC, 0x64BC, 0x64BC, 0x64BD, 0x64BD, 0x64DD, 0x64DD, 0x64DD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x649C, 0x4B77, 0x3231, 0x214D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29CF, 0x649C, 0x64DD, 0x5C1A, 0x296E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x4B56, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x64BC, 0x4B36, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x296E, 0x3231, 0x5397, 0x649C, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x64DD, 0x64DD, 0x64DD, 0x64DD, 0x64DD, 0x64DD, 0x64DD, 0x64DD, 0x64DD, 0x64DD, 0x64DD, 0x64DD, 0x64DD, 0x64DD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x64BD, 0x53B8, 0x3A73, 0x298E, 0x212D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x298E, 0x31D0, 0x214D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x5C1A, 0x6CFD, 0x649C, 0x42B4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x31F0, 0x649C, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x5C5B, 0x31F0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x214D, 0x296E, 0x3211, 0x42F5, 0x5397, 0x5C3A, 0x649C, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x64DD, 0x5C1A, 0x42D4, 0x31D0, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x4B36, 0x649C, 0x64BC, 0x5C3A, 0x3A72, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5398, 0x6CFD, 0x6CDD, 0x5BF9, 0x214D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x4315, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x6CFD, 0x64DD, 0x53B8, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x214D, 0x214D, 0x214E, 0x296E, 0x31F0, 0x3A52, 0x42B4, 0x4B16, 0x5377, 0x53D9, 0x5C1A, 0x647B, 0x64BD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x64BD, 0x649C, 0x5C5B, 0x4B56, 0x3A52, 0x296E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x4B36, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x647B, 0x42B4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x4B56, 0x6CDD, 0x6CDD, 0x647B, 0x3A32, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31D0, 0x645B, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x647B, 0x3A72, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x212D, 0x212D, 0x212D, 0x212D, 0x214D, 0x214D, 0x214D, 0x294E, 0x298E, 0x31D0, 0x3231, 0x3A73, 0x42D4, 0x4B16, 0x5377, 0x53D8, 0x5C1A, 0x647C, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CBD, 0x649C, 0x5BD9, 0x42D4, 0x31F0, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x31F0, 0x64BC, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x5C3A, 0x31D0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x4B15, 0x6CDD, 0x6CDD, 0x64BC, 0x4B36, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214E, 0x4315, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x5BF9, 0x214E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x214D, 0x214D, 0x214D, 0x296E, 0x29AF, 0x31F0, 0x3A52, 0x3A93, 0x42D4, 0x4B15, 0x4B36, 0x5377, 0x53B8, 0x5BF9, 0x5C1A, 0x645B, 0x649C, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CBD, 0x649C, 0x5C3A, 0x42F5, 0x31D0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x42B3, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x649C, 0x42F5, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x4B15, 0x6CDD, 0x6CDD, 0x6CDD, 0x5C1A, 0x214D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x42F5, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31D0, 0x647C, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x649C, 0x42D4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x214D, 0x214D, 0x214D, 0x214D, 0x214E, 0x296E, 0x29AF, 0x3211, 0x3A52, 0x42B4, 0x4AF5, 0x4B57, 0x53D9, 0x5C1A, 0x649C, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CBD, 0x649C, 0x5BF9, 0x42B4, 0x298E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x42B4, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6C9C, 0x4B36, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x4B16, 0x6CDD, 0x6CDD, 0x6CDD, 0x645B, 0x3211, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29AF, 0x53B8, 0x3211, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x4B36, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x5C1A, 0x296E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x214D, 0x214D, 0x214E, 0x296E, 0x31F0, 0x3A72, 0x42F5, 0x5397, 0x643B, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CBD, 0x645B, 0x4B36, 0x31CF, 0x0001, 0x0001, 0x0001, 0x212D, 0x3211, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x649C, 0x42D4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x4B36, 0x6CDD, 0x6CDD, 0x6CDD, 0x647C, 0x4293, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29AF, 0x5BFA, 0x5357, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x31F0, 0x6C9C, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x649C, 0x42D4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x212D, 0x212D, 0x214D, 0x214D, 0x298F, 0x3A52, 0x4B36, 0x5BFA, 0x6CBD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CBD, 0x647C, 0x5397, 0x3211, 0x0001, 0x0001, 0x298F, 0x5BB8, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x643A, 0x29AF, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5357, 0x6CDD, 0x6CDD, 0x6CDD, 0x6C9C, 0x4B36, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x42D4, 0x42D4, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29AF, 0x645B, 0x643A, 0x298F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5377, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x5C1A, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x214D, 0x296E, 0x3A31, 0x4B16, 0x641A, 0x6CBD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CBD, 0x6C7C, 0x5377, 0x29AF, 0x212D, 0x3211, 0x6C7C, 0x6CDD, 0x6CDD, 0x6CDD, 0x645B, 0x3A72, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5377, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CBD, 0x53B8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29AF, 0x5BB9, 0x5BB8, 0x29AF, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29AF, 0x6C9C, 0x6C7C, 0x42B4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A32, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x647C, 0x4293, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x214D, 0x29AF, 0x4293, 0x5BB8, 0x6CBD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CBD, 0x645B, 0x4AF5, 0x298E, 0x31D0, 0x4B36, 0x5398, 0x4B16, 0x31D0, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x5BB9, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CBD, 0x5BD9, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x31F0, 0x643B, 0x641A, 0x3A31, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31CF, 0x6CBD, 0x6CBD, 0x5BD9, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x5BF9, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CDD, 0x6CBD, 0x5BD9, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x3A31, 0x298F, 0x29AF, 0x4AF5, 0x641A, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x6CBD, 0x641A, 0x3A52, 0x212D, 0x214D, 0x212D, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29AF, 0x643B, 0x74DD, 0x74DD, 0x74DD, 0x6CDD, 0x5BFA, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A31, 0x6C7C, 0x643B, 0x3A52, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x29AF, 0x643A, 0x74DD, 0x643B, 0x31D0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x42B4, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x645B, 0x3211, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x42B4, 0x5BFA, 0x4B16, 0x212D, 0x0001, 0x212D, 0x296E, 0x3A32, 0x5BD9, 0x74BD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74BD, 0x6C5B, 0x4AD5, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31D0, 0x6C9D, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x63FA, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3A72, 0x6C9C, 0x643B, 0x3A52, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5336, 0x74DD, 0x6C7C, 0x42B4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31D0, 0x6C7C, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x6C9C, 0x4B36, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x4293, 0x643B, 0x6C5B, 0x4AF5, 0x214D, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x294E, 0x3211, 0x5B98, 0x74BD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x6C7C, 0x4B36, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A73, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74BD, 0x5BD9, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x4AD4, 0x74BD, 0x643B, 0x3A52, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x4293, 0x74DD, 0x74BD, 0x5BB9, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x5B98, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x641A, 0x296E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A32, 0x5BF9, 0x6C9D, 0x6C7C, 0x42B4, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x214D, 0x3211, 0x5BB8, 0x74BD, 0x74DD, 0x74DD, 0x74DD, 0x6C7C, 0x4B36, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5357, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x6CBD, 0x5378, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x5377, 0x74BD, 0x643B, 0x3211, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A31, 0x74DD, 0x74DD, 0x643B, 0x29AF, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x4293, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x74DD, 0x6C5B, 0x3A52, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x5336, 0x6C9C, 0x74BD, 0x6C5B, 0x3A72, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x294E, 0x3A52, 0x63FA, 0x74BD, 0x74BD, 0x74BD, 0x6C7C, 0x42D4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x6C5B, 0x74BD, 0x74BD, 0x74BD, 0x74BD, 0x6C9C, 0x4B16, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31CF, 0x641A, 0x74BD, 0x63FA, 0x29AF, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31D0, 0x749D, 0x74BD, 0x6C5C, 0x4273, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31D0, 0x6C7C, 0x74BD, 0x74BD, 0x74BD, 0x74BD, 0x74BD, 0x74BD, 0x6C9C, 0x5336, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x3A52, 0x643B, 0x74BD, 0x74BD, 0x643B, 0x3A11, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x296E, 0x4294, 0x6C5C, 0x74BE, 0x74BD, 0x643B, 0x31F0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x4293, 0x74BD, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x6C5C, 0x3A52, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A52, 0x749D, 0x749D, 0x5BB9, 0x296E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x5BD9, 0x74BE, 0x749D, 0x5357, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x5B98, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BD, 0x63FA, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x5357, 0x749D, 0x74BD, 0x74BD, 0x6C3B, 0x3A11, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x31D0, 0x3A32, 0x4293, 0x4AF5, 0x5336, 0x5357, 0x5B98, 0x5BB9, 0x5BD9, 0x5BB9, 0x5357, 0x3A11, 0x31AF, 0x5357, 0x74BD, 0x749D, 0x5378, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x5BD9, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x643B, 0x298F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5336, 0x74BE, 0x6C9D, 0x5336, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x4AD4, 0x74BE, 0x74BD, 0x63FA, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x4AD5, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x6C3B, 0x31D0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x31D0, 0x63DA, 0x749D, 0x74BE, 0x74BE, 0x6C7C, 0x4AD4, 0x29AF, 0x3A11, 0x4294, 0x5336, 0x5BB9, 0x6C3B, 0x6C7C, 0x747D, 0x749D, 0x749D, 0x749D, 0x749D, 0x6C7C, 0x63DA, 0x5336, 0x4273, 0x31AF, 0x214D, 0x212D, 0x0001, 0x294D, 0x3A32, 0x63FA, 0x641A, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x4273, 0x74BD, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x749D, 0x5B98, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31D0, 0x6C3B, 0x74BD, 0x6C5C, 0x4273, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x31F1, 0x74BD, 0x74BE, 0x6C3B, 0x31D0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A11, 0x74BD, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x6C5C, 0x4293, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x4273, 0x6C5C, 0x74BD, 0x74BE, 0x74BE, 0x74BE, 0x74BD, 0x749D, 0x747C, 0x749D, 0x749D, 0x749D, 0x74BD, 0x74BD, 0x74BE, 0x74BD, 0x747C, 0x5B98, 0x4AD4, 0x3211, 0x296E, 0x214D, 0x212D, 0x212D, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x296E, 0x31D0, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x31D0, 0x6C3B, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x6C5C, 0x3A52, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x4AF5, 0x74BE, 0x74BD, 0x641A, 0x31AF, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x6C5C, 0x74BE, 0x6C5C, 0x3A52, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x6C3B, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x749D, 0x5337, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x4AD5, 0x749D, 0x74BD, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x749D, 0x641A, 0x4AF5, 0x3A11, 0x296E, 0x214D, 0x212D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x63DA, 0x74BD, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BD, 0x63D9, 0x214D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31D0, 0x747C, 0x74BE, 0x749D, 0x5B98, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x63D9, 0x74BE, 0x747C, 0x4AF5, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5B78, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BD, 0x63D9, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5316, 0x749D, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x749D, 0x6C1B, 0x5316, 0x31F1, 0x214D, 0x212D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x31F1, 0x63FA, 0x749D, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x6C5C, 0x3A52, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5357, 0x74BE, 0x74BE, 0x6C5C, 0x4293, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5316, 0x74BE, 0x749D, 0x5B77, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x4AD5, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x74BE, 0x6C1B, 0x296E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x5B78, 0x749D, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBD, 0x747C, 0x5337, 0x39F1, 0x214D, 0x212D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x4AD5, 0x745C, 0x74BD, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x749D, 0x5357, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A32, 0x7CBD, 0x7CBE, 0x74BD, 0x63FA, 0x298E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A32, 0x7CBE, 0x74BD, 0x63FA, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A52, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x6C3B, 0x31F1, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x5B98, 0x749D, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x749D, 0x6C1B, 0x4AB4, 0x298F, 0x212D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x298E, 0x4AD5, 0x6C1B, 0x749D, 0x7CBD, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7C9D, 0x63DA, 0x298F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x6C1B, 0x7CBE, 0x7CBE, 0x747C, 0x52F6, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31D0, 0x749D, 0x7CBE, 0x6C1B, 0x298F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31D0, 0x749D, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x745C, 0x4273, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x5B78, 0x749D, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x749D, 0x63D9, 0x4273, 0x294E, 0x212D, 0x0001, 0x0001, 0x212D, 0x31D0, 0x4AF5, 0x5B78, 0x63D9, 0x6BFA, 0x6BFA, 0x6BFA, 0x6BFA, 0x63FA, 0x63B9, 0x5B78, 0x5357, 0x5316, 0x4AD5, 0x4AB4, 0x4273, 0x3A32, 0x3A11, 0x31D0, 0x31AF, 0x298E, 0x296E, 0x294E, 0x214D, 0x294E, 0x296E, 0x298F, 0x31D0, 0x3A52, 0x4AD5, 0x6399, 0x745C, 0x749D, 0x7C9D, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7C9D, 0x6BFA, 0x31D0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5316, 0x7CBE, 0x7CBE, 0x7CBD, 0x6C1B, 0x298F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x6C3B, 0x7CBE, 0x6C3B, 0x3A11, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x6BFA, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x745C, 0x4AD4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x5B98, 0x7C9D, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7C9D, 0x63D9, 0x3A31, 0x214D, 0x212D, 0x0001, 0x0001, 0x0001, 0x214D, 0x4252, 0x63B9, 0x6C3B, 0x7C9D, 0x7C9D, 0x7C9D, 0x7C9D, 0x7C9D, 0x7C9D, 0x7C9D, 0x7C9D, 0x7C9D, 0x7C9D, 0x749D, 0x749D, 0x749D, 0x747D, 0x747D, 0x747D, 0x747D, 0x747D, 0x747C, 0x747C, 0x747C, 0x747C, 0x747C, 0x747C, 0x747C, 0x747D, 0x747D, 0x749D, 0x7C9D, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7C9D, 0x6C1B, 0x3A11, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A32, 0x7CBD, 0x7CBE, 0x7CBE, 0x747C, 0x52F5, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x6BFA, 0x7CBE, 0x745C, 0x4273, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5B57, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x747D, 0x5316, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5B57, 0x7C9D, 0x7CBE, 0x7CBE, 0x7CBE, 0x7C9D, 0x6C1B, 0x4273, 0x294D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x214D, 0x294E, 0x298F, 0x3A11, 0x4AB4, 0x5B57, 0x6C1B, 0x7C9D, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7C9D, 0x63DA, 0x39F1, 0x3A31, 0x4AD5, 0x5316, 0x52F6, 0x4AB4, 0x31F0, 0x212D, 0x31AF, 0x4AB4, 0x5316, 0x5316, 0x4AF5, 0x3A32, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x6C3B, 0x7CBE, 0x7CBE, 0x7C9D, 0x6BFA, 0x296E, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5337, 0x7CBE, 0x745C, 0x4AD4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294D, 0x4AB4, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7CBE, 0x7C9D, 0x5B78, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294D, 0x4AD4, 0x7C9D, 0x7C9E, 0x7C9E, 0x7C9E, 0x747D, 0x5B57, 0x298F, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x212D, 0x294D, 0x298F, 0x4273, 0x5B57, 0x6C1B, 0x7C9D, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C7D, 0x6398, 0x31AF, 0x3A32, 0x745C, 0x7C7D, 0x7C7D, 0x7C7D, 0x745C, 0x5B37, 0x212D, 0x4252, 0x745C, 0x7C9D, 0x7C9D, 0x7C7D, 0x745C, 0x5B78, 0x296E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x296E, 0x31F0, 0x3A32, 0x4273, 0x4AB4, 0x4AD5, 0x4AD5, 0x4AD5, 0x4AB4, 0x4293, 0x4253, 0x3A32, 0x3A11, 0x31D0, 0x296E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5B78, 0x7C9E, 0x7C9E, 0x7C9E, 0x745C, 0x4293, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A32, 0x7C9D, 0x747D, 0x5316, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A32, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9D, 0x63D9, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x4273, 0x747D, 0x7C9E, 0x7C9E, 0x7C9D, 0x6C1B, 0x4252, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x294E, 0x31D0, 0x4AB4, 0x63B9, 0x7C7D, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x745C, 0x4AD5, 0x294D, 0x298F, 0x6399, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x745C, 0x4AD5, 0x0001, 0x214D, 0x4253, 0x7C9D, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C7D, 0x5B78, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x39F1, 0x4273, 0x52F5, 0x5B58, 0x6BDA, 0x743C, 0x745D, 0x747D, 0x7C7D, 0x7C7D, 0x7C7D, 0x7C7D, 0x7C7D, 0x7C7D, 0x7C7D, 0x7C7D, 0x7C7D, 0x7C7D, 0x747D, 0x747D, 0x745C, 0x743C, 0x6BDA, 0x5B78, 0x52F6, 0x4273, 0x31D0, 0x212D, 0x0001, 0x294D, 0x4AD5, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9D, 0x6399, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x745C, 0x7C7D, 0x5B78, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31D0, 0x7C7D, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x6BFA, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x31D0, 0x743B, 0x7C9E, 0x7C9E, 0x7C7D, 0x6378, 0x31AF, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x214D, 0x31AF, 0x4A94, 0x5B78, 0x745C, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C7D, 0x5B57, 0x31B0, 0x212D, 0x212D, 0x3A32, 0x7C9D, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x743C, 0x3A32, 0x0001, 0x0001, 0x31AF, 0x745C, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x741B, 0x39F0, 0x0001, 0x0001, 0x0001, 0x294E, 0x3A32, 0x5316, 0x6BDA, 0x745C, 0x7C7D, 0x7C7D, 0x7C7D, 0x7C9D, 0x7C9D, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9D, 0x7C9D, 0x7C7D, 0x7C7D, 0x747D, 0x743C, 0x5B58, 0x4A94, 0x52F5, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x741B, 0x31F0, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x6BDA, 0x7C9E, 0x6BDA, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x318F, 0x6BFB, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x6C1B, 0x298F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x6378, 0x7C9E, 0x7C9E, 0x745C, 0x52D5, 0x294D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x296E, 0x39F1, 0x52D5, 0x63B9, 0x745C, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9D, 0x6C1B, 0x52F5, 0x31AF, 0x212D, 0x0001, 0x0001, 0x296E, 0x5B57, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x6C1B, 0x296E, 0x0001, 0x0001, 0x31D0, 0x7C7D, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x743C, 0x4253, 0x0001, 0x296E, 0x5B37, 0x743C, 0x7C7D, 0x7C9D, 0x7C9D, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9D, 0x7C7D, 0x7C7D, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x745C, 0x4AD5, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5B57, 0x7C9E, 0x6BFB, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x6378, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x741B, 0x31F0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x4A93, 0x7C9D, 0x7C9D, 0x6BFB, 0x3A11, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x214D, 0x294E, 0x298F, 0x3A11, 0x4AB4, 0x5316, 0x5B57, 0x5B78, 0x5B57, 0x52D5, 0x4252, 0x318F, 0x294D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x31D0, 0x7C5C, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C7D, 0x6378, 0x0001, 0x0001, 0x212D, 0x3A32, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x743C, 0x3A32, 0x0001, 0x296E, 0x4273, 0x4AB4, 0x52F6, 0x5B16, 0x5B57, 0x6398, 0x63B9, 0x6BDA, 0x6BFB, 0x741B, 0x743C, 0x7C7D, 0x7C7D, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9D, 0x63B9, 0x212D, 0x0001, 0x0001, 0x0001, 0x294D, 0x4AB4, 0x7C9E, 0x741B, 0x31AF, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x52F6, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x743B, 0x3A11, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x6BFA, 0x7C7D, 0x6BB9, 0x31B0, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x4A94, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x745C, 0x4AB4, 0x0001, 0x0001, 0x294E, 0x52D5, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x6BFB, 0x296E, 0x0001, 0x0001, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x214D, 0x214D, 0x214D, 0x214D, 0x294D, 0x294D, 0x294E, 0x294E, 0x296E, 0x318F, 0x39F1, 0x4252, 0x52D5, 0x6378, 0x741B, 0x7C9D, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x741B, 0x31D0, 0x0001, 0x0001, 0x0001, 0x210D, 0x31D0, 0x7C7D, 0x741B, 0x39F0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x4273, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x7C9E, 0x743C, 0x3A11, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x4A93, 0x7C7D, 0x6378, 0x296E, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x6378, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x741B, 0x39F1, 0x0001, 0x0001, 0x298E, 0x6399, 0x849E, 0x849E, 0x849E, 0x849E, 0x7C5D, 0x52F6, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x212D, 0x212D, 0x214D, 0x294E, 0x298F, 0x3A11, 0x4AD5, 0x6378, 0x741B, 0x7C9E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x743C, 0x4A93, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x6399, 0x743C, 0x3A32, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A11, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x743C, 0x4232, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298F, 0x7C3C, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x6BDA, 0x212D, 0x0001, 0x0001, 0x31B0, 0x7C5C, 0x849E, 0x849E, 0x849E, 0x847D, 0x6BBA, 0x296E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x212D, 0x294E, 0x31AF, 0x4273, 0x5B37, 0x741B, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x7C7D, 0x5B37, 0x0001, 0x0001, 0x0001, 0x0001, 0x294D, 0x4AB4, 0x743C, 0x4253, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31B0, 0x7C7D, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x743C, 0x4253, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x3A11, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x7C7D, 0x5B37, 0x0001, 0x0001, 0x212D, 0x4273, 0x849E, 0x849E, 0x849E, 0x849E, 0x743C, 0x39F1, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x296E, 0x39F1, 0x5B57, 0x7C5D, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x6BDA, 0x212D, 0x0001, 0x0001, 0x0001, 0x210D, 0x39F0, 0x743C, 0x4A94, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x743C, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x743C, 0x4273, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x6BBA, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x7C3C, 0x4253, 0x0001, 0x0001, 0x296E, 0x6358, 0x849E, 0x849E, 0x849E, 0x7C5D, 0x4A94, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x214D, 0x31AF, 0x52F5, 0x743C, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x741B, 0x318F, 0x0001, 0x0001, 0x0001, 0x0001, 0x318F, 0x6B99, 0x52D5, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x318F, 0x6BDA, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x7C3C, 0x4A73, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212D, 0x212E, 0x212E, 0x212E, 0x212E, 0x212E, 0x212E, 0x212E, 0x212E, 0x212E, 0x212E, 0x212E, 0x212E, 0x212E, 0x212D, 0x212E, 0x212D, 0x212D, 0x212D, 0x212D, 0x210D, 0x212D, 0x212D, 0x210D, 0x210D, 0x210D, 0x210D, 0x0001, 0x210D, 0x210D, 0x210D, 0x210D, 0x212D, 0x298F, 0x847D, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x741C, 0x296F, 0x210D, 0x210D, 0x4273, 0x7C5D, 0x849E, 0x849E, 0x847E, 0x6357, 0x39EF, 0x296D, 0x294D, 0x296D, 0x296C, 0x294C, 0x294C, 0x296C, 0x294C, 0x294C, 0x296C, 0x296D, 0x296D, 0x296D, 0x296D, 0x296D, 0x296D, 0x296D, 0x294D, 0x212D, 0x212D, 0x210D, 0x210D, 0x210D, 0x210D, 0x212D, 0x210D, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x212D, 0x210D, 0x210D, 0x294E, 0x4232, 0x6B99, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x7C1C, 0x4232, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x52F5, 0x52F6, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x6378, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x7C3C, 0x4A94, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x18EB, 0x190D, 0x2171, 0x21B4, 0x21D6, 0x21D6, 0x21D6, 0x21D6, 0x21D7, 0x21D7, 0x21D7, 0x21D7, 0x21D7, 0x21F8, 0x21F8, 0x21F8, 0x21F8, 0x21F8, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x2219, 0x2219, 0x2219, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x63DD, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x63BC, 0x2239, 0x2A59, 0x4B1B, 0x7C7E, 0x849E, 0x849E, 0x849E, 0x5B9C, 0x2A7B, 0x2A5A, 0x2A59, 0x2A79, 0x2A79, 0x2A79, 0x2A79, 0x2A79, 0x2A79, 0x3279, 0x3279, 0x3279, 0x3279, 0x3279, 0x3279, 0x3279, 0x3279, 0x3279, 0x3279, 0x3279, 0x3279, 0x3279, 0x2A79, 0x2A59, 0x2A39, 0x2219, 0x2219, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x221A, 0x223A, 0x223A, 0x223A, 0x223A, 0x223A, 0x223A, 0x2A5A, 0x2218, 0x6BBA, 0x4A94, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A12, 0x5B16, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x5B37, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x7C3C, 0x4A73, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x18EB, 0x192D, 0x2193, 0x21F8, 0x2219, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x223A, 0x2A3A, 0x2A5A, 0x847E, 0x849E, 0x849E, 0x849E, 0x63DD, 0x3ADB, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A5A, 0x21F7, 0x7C3C, 0x52D5, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x298E, 0x4AB4, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x52F6, 0x849E, 0x849E, 0x849E, 0x849E, 0x849E, 0x7C3C, 0x4A73, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x190C, 0x2192, 0x21F9, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5B7C, 0x847E, 0x847E, 0x847E, 0x847E, 0x847E, 0x847E, 0x42FB, 0x223A, 0x2A5B, 0x7C3D, 0x847E, 0x847E, 0x847E, 0x741D, 0x2A3A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x223A, 0x223A, 0x221A, 0x221A, 0x223A, 0x21D7, 0x845D, 0x5B37, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294D, 0x52B5, 0x847E, 0x847E, 0x847E, 0x847E, 0x847E, 0x7C1C, 0x4253, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x190B, 0x212E, 0x21D6, 0x221A, 0x221A, 0x221A, 0x223A, 0x3AD7, 0x746F, 0x9D8A, 0xAE08, 0xAE47, 0xB666, 0xB686, 0xBEA5, 0xBEC5, 0xBEC5, 0xC6C5, 0xC6C6, 0xCEE5, 0xCEE5, 0xCEE6, 0xCF06, 0xD745, 0xD765, 0xDF64, 0xDF64, 0xD765, 0xD764, 0xDF67, 0xDF68, 0xDF48, 0xDF48, 0xDF48, 0xDF48, 0xDF49, 0xDF4B, 0xDF4C, 0xE74E, 0xE76E, 0xE76E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xE76E, 0xE74F, 0xDF2F, 0xDF2F, 0xDF2F, 0xDF2F, 0xDF2F, 0xDF2F, 0xDF2F, 0xDF2F, 0xDF2F, 0xD70F, 0xCED0, 0xCED0, 0xCED0, 0xCED0, 0xCED0, 0xC670, 0xC671, 0xC671, 0xC671, 0xBE71, 0xA5B5, 0x8C9D, 0x847E, 0x847E, 0x847E, 0x847E, 0x847E, 0x6BDD, 0x2A3A, 0x42FB, 0x7C5E, 0x847E, 0x847E, 0x8CBB, 0xB613, 0xD710, 0xDF2F, 0xDF2F, 0xDF2F, 0xE78E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xEF8E, 0xE76E, 0xDF2F, 0xD70F, 0xCEAE, 0xB62C, 0x84D0, 0x32B8, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x845D, 0x6358, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214D, 0x4A73, 0x847E, 0x847E, 0x847E, 0x847E, 0x847E, 0x7C1C, 0x4232, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x190C, 0x192E, 0x21D7, 0x221A, 0x221A, 0x221A, 0x3AD7, 0x8D2C, 0xCEE4, 0xDF82, 0xE7A2, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE4, 0xF7E5, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E9, 0xF7EA, 0xF7EC, 0xF7EC, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7CE, 0x847E, 0x847E, 0x847E, 0x847E, 0x847E, 0x4B1C, 0x327B, 0x533C, 0x741D, 0x847E, 0x847E, 0x8CBC, 0xD6F1, 0xF7CD, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xF7EB, 0xF7E7, 0xEFC6, 0xE7A6, 0xC68A, 0x4B55, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x7C3D, 0x6358, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x4252, 0x847E, 0x847E, 0x847E, 0x847E, 0x847E, 0x7C1C, 0x4212, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x21D7, 0x221A, 0x221A, 0x2A59, 0x6C31, 0xC6A5, 0xDF82, 0xE7E2, 0xEFE2, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E8, 0xF7EB, 0xF7EC, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xEF8F, 0x847E, 0x847E, 0x847E, 0x7C5E, 0x6BBD, 0x7C3D, 0x847E, 0x845E, 0x847E, 0x845D, 0x7459, 0xF7CD, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7EA, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE6, 0xCEE9, 0x5BB4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x221A, 0x221A, 0x21D8, 0x7C3C, 0x6358, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x3A11, 0x847E, 0x847E, 0x847E, 0x847E, 0x847E, 0x7C1C, 0x3A11, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x21B4, 0x221A, 0x221A, 0x2A79, 0x7C8F, 0xCF03, 0xE7A2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E8, 0xF7E9, 0xF7EB, 0xF7ED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7EC, 0xF7EB, 0xF7E8, 0xF7E8, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E6, 0xE789, 0x9D1A, 0x8CBD, 0x8C9D, 0x8C7D, 0x847E, 0x847E, 0x8C7E, 0x847E, 0x7C3D, 0x4B1C, 0x3298, 0x954F, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E7, 0xF7E6, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xCF06, 0x6412, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21F8, 0x7C1C, 0x5B17, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x39D0, 0x8C7E, 0x8C7E, 0x8C7E, 0x8C7E, 0x8C7E, 0x7C1B, 0x39F1, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x2171, 0x2219, 0x221A, 0x2A59, 0x63F3, 0xCF03, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E8, 0xF7E9, 0xF7EB, 0xF7EC, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7EB, 0xF7EA, 0xF7E9, 0xF7E8, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xA577, 0x94FB, 0x8C7E, 0x8C7E, 0x8C7D, 0x73FD, 0x533C, 0x327B, 0x221A, 0x221A, 0x221A, 0x3298, 0x9D8E, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE4, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xD725, 0x7470, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21F8, 0x73BA, 0x52B5, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x39D0, 0x8C7E, 0x8C7E, 0x8C7E, 0x8C7E, 0x8C7E, 0x7BFB, 0x39D0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x21B5, 0x221A, 0x221A, 0x4317, 0xC687, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xD782, 0xC6E5, 0xBEA7, 0xB687, 0xBEC6, 0xCF24, 0xE7E1, 0xE7E1, 0xE7E1, 0xEFE3, 0xEFE3, 0xEFE2, 0xEFE3, 0xEFE3, 0xEFE2, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFC4, 0xD746, 0xC6C8, 0xBE69, 0xBE89, 0xCF07, 0xDF65, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE4, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7E6, 0xF7E5, 0xEFE5, 0xEFE4, 0xEFE3, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xBE30, 0xB5D3, 0x9D38, 0xC6AC, 0xA5CC, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x32B8, 0xA5CB, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7C3, 0xCF06, 0xCF06, 0xE7C3, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE3, 0xEFE2, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xCF43, 0x7CCE, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x294D, 0x294D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31B0, 0x8C7E, 0x8C7E, 0x8C7E, 0x8C7E, 0x8C7E, 0x7BFB, 0x318F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x2150, 0x21F9, 0x221A, 0x2A79, 0x8D10, 0xDF25, 0xEFE3, 0xEFE2, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xDFC1, 0xBEA6, 0x74AF, 0x4335, 0x2A78, 0x2A79, 0x2A59, 0x2A59, 0x2A79, 0x3278, 0x4316, 0x7CAF, 0xBEA6, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7A3, 0xB649, 0x6C51, 0x42F6, 0x2A79, 0x2A79, 0x2A59, 0x2A59, 0x2A79, 0x3298, 0x4B55, 0x84EE, 0xBEA7, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7E2, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7C3, 0xAE0A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x32B7, 0xA5EA, 0xEFE2, 0xEFE3, 0xEFE4, 0xEFE4, 0xF7E5, 0xF7E5, 0xEFC6, 0xB64B, 0x4B36, 0x2A79, 0x2A79, 0x4B36, 0xADED, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE4, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7E1, 0xD763, 0x852D, 0x2239, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31B0, 0x8C5D, 0x8C7E, 0x8C7E, 0x8C7E, 0x8C7E, 0x7BDB, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x2194, 0x221A, 0x221A, 0x4318, 0xDF48, 0xF7E5, 0xEFE4, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xC6E5, 0x6411, 0x2A79, 0x2239, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2239, 0x3298, 0x6C51, 0xCF06, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7C3, 0xBE88, 0x5BB3, 0x2A59, 0x2239, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2239, 0x32B8, 0x6C51, 0xCEE6, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE4, 0xEFE4, 0xEFE4, 0xEFE4, 0xEFE4, 0xEFC5, 0xAE2B, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AB8, 0xAE0C, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE6, 0xC6AA, 0x3AB8, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xBE8A, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE4, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xDF84, 0x956C, 0x2A59, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31B0, 0x845D, 0x8C7E, 0x8C7E, 0x8C7E, 0x8C7E, 0x73DA, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x21B5, 0x221A, 0x221A, 0x5377, 0xEFE6, 0xF7E5, 0xEFE3, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E2, 0xEFE2, 0xEFE2, 0xDFA4, 0x9D8C, 0x3AD7, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2239, 0x42F6, 0x9DAC, 0xEFE3, 0xEFE3, 0xE7A4, 0x9DAC, 0x32B8, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2239, 0x4316, 0xAE0C, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE5, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE4, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xB62C, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AB8, 0xAE0C, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE7A7, 0x9D6E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A79, 0x7CB1, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE4, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xDFA3, 0xA5CB, 0x3278, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x843D, 0x8C7E, 0x8C7E, 0x8C7E, 0x8C5E, 0x7399, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x21D6, 0x221A, 0x221A, 0x5B97, 0xF7E5, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7E1, 0xE7E1, 0xEFE2, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x8D0F, 0x2A59, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AB9, 0x8D13, 0xE76C, 0x8CF2, 0x2A59, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0x956E, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE4, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE4, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xB62C, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xC6AA, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x8D0F, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x5BD4, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE4, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7A3, 0xAE0A, 0x32B8, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x4A53, 0x6B58, 0x7BFC, 0x7BDB, 0x39D0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x843D, 0x8C7E, 0x8C7E, 0x8C7E, 0x8C5D, 0x6B58, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x21D7, 0x221A, 0x221A, 0x63D6, 0xEFE4, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xF7E5, 0xF7E5, 0xE787, 0x8D0F, 0x2A59, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3279, 0x5377, 0x2A5A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AB8, 0x9D8E, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xB62C, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x42F7, 0xCEE9, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x84F0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x5395, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE3, 0xEFE2, 0xEFE2, 0xE7C3, 0xB649, 0x3AF7, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D8, 0x210D, 0x0001, 0x212D, 0x318F, 0x5AF6, 0x7BFC, 0x843D, 0x8C5D, 0x8C7E, 0x841C, 0x4A73, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x843D, 0x8C7E, 0x8C7E, 0x8C7E, 0x843D, 0x6B79, 0x5AD6, 0x39D0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x21D8, 0x221A, 0x223A, 0x63F5, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xF7E5, 0xEFC6, 0xADEC, 0x2A59, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x42F7, 0xBE6B, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xB62C, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x42F7, 0xCEE9, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE767, 0x84D0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5375, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE4, 0xEFE2, 0xEFE2, 0xE7C3, 0xBE88, 0x4316, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D8, 0x210D, 0x294E, 0x52B5, 0x841C, 0x8C5D, 0x8C7E, 0x8C7E, 0x8C7E, 0x8C7E, 0x841C, 0x5294, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x843D, 0x8C7E, 0x8C7E, 0x8C7E, 0x843D, 0x6B58, 0x7BFB, 0x6B79, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x21F8, 0x221A, 0x223A, 0x6C33, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xF7E5, 0xD709, 0x4B36, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A5A, 0x2A59, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x2A79, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x5BB6, 0xEFA9, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7E7, 0xF7E8, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xEFCA, 0xB62E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x42F8, 0xCEEC, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E8, 0xE769, 0x84D1, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5376, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E7, 0xF7E7, 0xF7E6, 0xF7E5, 0xEFE4, 0xEFE2, 0xEFE2, 0xE7C3, 0xBEA7, 0x4B55, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D8, 0x5AD6, 0x6B58, 0x8C3D, 0x8C5E, 0x8C5E, 0x8C5E, 0x8C5E, 0x8C5E, 0x8C5E, 0x841D, 0x52B5, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x8C3D, 0x8C5E, 0x8C5E, 0x8C5E, 0x841C, 0x6B38, 0x8C5E, 0x83FC, 0x4A33, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212F, 0x21F8, 0x221A, 0x2A39, 0x7452, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xE7A6, 0x9D8E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AB8, 0x8CF1, 0xC6AF, 0xE78E, 0xEF8E, 0xDF2F, 0xA5B2, 0x5377, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C16, 0xBE31, 0xE76F, 0xEF8E, 0xE76E, 0xC690, 0x7C95, 0x3279, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AB9, 0xA5B2, 0xFFED, 0xFFED, 0xFFED, 0xF7EC, 0xF7EB, 0xF7E8, 0xEFE3, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xEFE4, 0xF7EA, 0xF7EB, 0xF7EC, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7CE, 0xB631, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x42F8, 0xD6F0, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xEFAE, 0xB611, 0x7435, 0x7435, 0x7435, 0x7435, 0x7435, 0x7455, 0x9513, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7EB, 0xF7E5, 0xF7E5, 0xEFE4, 0xEFE2, 0xEFE2, 0xE7E2, 0xC6E6, 0x5BB3, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21F8, 0x318F, 0x841C, 0x8C5E, 0x8C5E, 0x8C5E, 0x8C5E, 0x8C5E, 0x8C5E, 0x8C5E, 0x843D, 0x5AD5, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x8C3D, 0x8C5E, 0x8C5E, 0x8C5E, 0x841C, 0x6317, 0x8C5E, 0x8C5D, 0x6B79, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212F, 0x21F9, 0x221A, 0x2A59, 0x7471, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xD728, 0x5375, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A39, 0x5BB4, 0xD709, 0xEFC6, 0xEFE6, 0xF7E9, 0xF7ED, 0xF7ED, 0xF7CE, 0xDF4F, 0x8CF4, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AB9, 0xADD2, 0xEFAE, 0xF7CD, 0xF7ED, 0xFFED, 0xFFED, 0xF7ED, 0xEFAE, 0xC671, 0x4B38, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x5BB6, 0xF7ED, 0xFFED, 0xFFED, 0xFFED, 0xF7EC, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE5, 0xEFE4, 0xEFE3, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xEFE4, 0xEFE4, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E7, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7CE, 0xB631, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x42F8, 0xD6F0, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xF7CD, 0xEFAE, 0xEFAE, 0xEFAE, 0xEFAE, 0xEFAE, 0xEFAE, 0xF7CE, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7EC, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE4, 0xEFE2, 0xEFE2, 0xEFE2, 0xCF06, 0x6412, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21F8, 0x0001, 0x0001, 0x39F1, 0x7379, 0x8C5E, 0x8C5E, 0x8C5E, 0x8C5E, 0x8C5E, 0x8C3D, 0x5AF6, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x8C3D, 0x8C5E, 0x8C5E, 0x8C5E, 0x841C, 0x6317, 0x8C5E, 0x8C5E, 0x83FC, 0x4211, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212F, 0x21F9, 0x221A, 0x2A59, 0x7491, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xBE8A, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x5B95, 0xDF4A, 0xEFE6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7E9, 0xFFED, 0xF7ED, 0xE74F, 0x84B4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3299, 0x9D53, 0xF7CD, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7CD, 0xC670, 0x3AB9, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x42F8, 0xD6F0, 0xFFED, 0xFFED, 0xFFED, 0xF7EC, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xEFC6, 0xE787, 0xE786, 0xE7A5, 0xF7E7, 0xF7E8, 0xF7E6, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7EB, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xF7CD, 0xEF8E, 0xEFAE, 0xF7CE, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7CE, 0xB631, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x42F8, 0xCECE, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EC, 0xF7EC, 0xF7ED, 0xFFED, 0xFFED, 0xF7ED, 0xF7CD, 0xE787, 0xDF67, 0xEFC6, 0xF7E5, 0xEFE4, 0xEFE2, 0xEFE2, 0xEFE2, 0xCF25, 0x7471, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21F8, 0x0001, 0x0001, 0x0001, 0x39D0, 0x8C3D, 0x945E, 0x945E, 0x945E, 0x945E, 0x8C3D, 0x6317, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x8C3D, 0x945E, 0x945E, 0x945E, 0x841C, 0x6B38, 0x945E, 0x945E, 0x8C3D, 0x6317, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212F, 0x21F9, 0x221A, 0x2A59, 0x7491, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7E1, 0xE7E1, 0xE7A3, 0xA5AD, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xB62C, 0xF7E6, 0xF7E5, 0xF7E5, 0xEFE4, 0xEFE3, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE3, 0xEFE5, 0xCEE9, 0x42F7, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x5395, 0xE7A8, 0xF7EA, 0xF7EC, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xEFAE, 0xA592, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x32B9, 0xA5B2, 0xFFED, 0xFFED, 0xFFED, 0xF7EC, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xC6CA, 0x8D10, 0x5BB4, 0x3AD7, 0x3279, 0x2A79, 0x3279, 0x3298, 0x4318, 0x6C16, 0xA5B2, 0xE76E, 0xF7E9, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E7, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xEFAE, 0xB611, 0x7455, 0x4B18, 0x3299, 0x3279, 0x3279, 0x3279, 0x3AB9, 0x5377, 0x84D4, 0xCEB0, 0xF7ED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7EC, 0xF7EB, 0xEFC9, 0xB62D, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x42F7, 0xCEC9, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xCEC9, 0xA5CD, 0xA5CD, 0xA5CD, 0xA5CD, 0xA5CD, 0xA5CD, 0xB64B, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE767, 0xA5AD, 0x6413, 0x4317, 0x3279, 0x3279, 0x2A79, 0x3279, 0x32B8, 0x5375, 0x84D0, 0xB649, 0xE7E2, 0xEFE2, 0xD745, 0x7CB1, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x316F, 0x7379, 0x945E, 0x945E, 0x945E, 0x945E, 0x8C3D, 0x6B38, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x8C3D, 0x945E, 0x945E, 0x945E, 0x83FC, 0x6B58, 0x945E, 0x945E, 0x945E, 0x7BDB, 0x296E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x2219, 0x221A, 0x2A59, 0x7C91, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xDF83, 0x8D0E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4316, 0xE7A5, 0xEFE3, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xDF84, 0x8D0F, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A79, 0x84D0, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7E7, 0xF7EA, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xD70F, 0x4B57, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3279, 0x8CF4, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7EB, 0xF7E5, 0xF7E5, 0xEFC6, 0xBE6B, 0x5BD4, 0x2A79, 0x2A59, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x2A59, 0x3AD8, 0x84D4, 0xDF4D, 0xF7E9, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7EB, 0xF7EB, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7CE, 0xB611, 0x4B57, 0x2A59, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A3A, 0x3279, 0x5BB5, 0xC68C, 0xF7E7, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xB62C, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AF7, 0xCEC9, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x8CF0, 0x2A59, 0x2A59, 0x2A59, 0x2A59, 0x2A59, 0x2A59, 0x5BB5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x954F, 0x3AF7, 0x2A59, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A39, 0x3278, 0x5BB3, 0xB649, 0xEFE2, 0xDF67, 0x8D11, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x212D, 0x39F1, 0x841C, 0x945E, 0x945E, 0x945E, 0x8C3D, 0x6B59, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31B0, 0x8C3D, 0x945E, 0x945E, 0x8C3D, 0x7379, 0x739A, 0x945E, 0x841C, 0x5AD6, 0x62F6, 0x4212, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A59, 0x7C91, 0xEFE2, 0xEFE2, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xD783, 0x84CF, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4B55, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7C3, 0xA5EA, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3298, 0x9D8D, 0xEFE4, 0xEFE4, 0xEFE4, 0xEFE3, 0xEFE3, 0xEFE3, 0xEFE3, 0xF7E5, 0xF7E6, 0xF7E6, 0xF7E6, 0xDF48, 0x5BD4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7C92, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E5, 0xEFE2, 0xDF64, 0x7CAF, 0x2A79, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x4316, 0xA5CD, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xDF48, 0x7472, 0x2A59, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x3AB8, 0x84D0, 0xEFC6, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xB62C, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AF7, 0xCEC9, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE767, 0x84D0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5375, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE6, 0xCEE9, 0x5BB4, 0x2A59, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x3AD7, 0x8D4D, 0xEFC7, 0xE78E, 0x9D73, 0x2A5A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x6B38, 0x945E, 0x945E, 0x945E, 0x943E, 0x7379, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31B0, 0x943E, 0x945E, 0x945E, 0x8C1C, 0x6B17, 0x83DB, 0x945E, 0x83DB, 0x318F, 0x212D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A79, 0x7CB1, 0xEFE4, 0xEFE2, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xDF64, 0x7CB0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5374, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7C3, 0xAE0A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x32B8, 0xA5CB, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xEFE4, 0xF7E5, 0xDF48, 0x63D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C52, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xD748, 0x6C32, 0x2239, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x32B8, 0x84F0, 0xEFC6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xD728, 0x63F4, 0x2239, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3279, 0x7472, 0xE7A7, 0xF7E5, 0xF7E5, 0xEFC6, 0xB62C, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AF7, 0xC6CA, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE767, 0x84D0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5375, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE6, 0xC6CA, 0x4336, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3298, 0x7CB1, 0xF7CD, 0xEF8E, 0xA5B2, 0x2A79, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x5AB5, 0x945E, 0x945E, 0x945E, 0x945E, 0x7B9A, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x39B0, 0x945E, 0x945E, 0x945E, 0x83FC, 0x5A95, 0x8C1D, 0x945E, 0x7B9A, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A79, 0x7CB1, 0xF7E5, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xD764, 0x7491, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x53B4, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7C3, 0xAE0A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x32B7, 0xA5EA, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xD747, 0x63D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C33, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF48, 0x63F3, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3298, 0x84D1, 0xEFE6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF48, 0x63F4, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3279, 0x7CB1, 0xF7E6, 0xF7E5, 0xEFC6, 0xB62C, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AF7, 0xC6CA, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE767, 0x84D0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5375, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xD709, 0x4B56, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3298, 0x9532, 0xF7ED, 0xEFAE, 0xADF2, 0x3299, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x4A53, 0x945E, 0x945E, 0x945E, 0x945E, 0x7BBB, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x39B0, 0x945E, 0x945E, 0x945E, 0x83DB, 0x4A32, 0x8C3D, 0x8C3D, 0x6B38, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A79, 0x7CB1, 0xF7E6, 0xEFE2, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E1, 0xE7E2, 0xDF66, 0x7472, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2239, 0x5BD3, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7C3, 0xAE0A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AB7, 0xAE0A, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xD745, 0x63F3, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C33, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF67, 0x7C91, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x32B8, 0x956E, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x8D2F, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xAE0C, 0xF7E5, 0xEFC6, 0xB62C, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AF7, 0xC6AA, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE767, 0x84D0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5375, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF67, 0x7472, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x42F7, 0xC690, 0xF7ED, 0xEFAE, 0xB631, 0x3AB9, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x318F, 0x7B9A, 0x945E, 0x945E, 0x945E, 0x83DB, 0x318F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x39D0, 0x945E, 0x945E, 0x945E, 0x7B9A, 0x39D0, 0x945E, 0x8C1D, 0x5AD6, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A79, 0x84B4, 0xF7E9, 0xEFE3, 0xEFE2, 0xEFE3, 0xEFE4, 0xEFE4, 0xEFE3, 0xDF68, 0x6C52, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2239, 0x63F4, 0xF7E5, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7C3, 0xAE0A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xB649, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xD745, 0x63F3, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C33, 0xF7E5, 0xF7E5, 0xEFC6, 0xADED, 0x2A59, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xC6CA, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xCEC9, 0x32B8, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x5BB4, 0xEFE6, 0xEFC6, 0xB62C, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AF7, 0xC6AA, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE767, 0x84D0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5375, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xBE4B, 0x2A59, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C16, 0xF7EC, 0xF7EB, 0xEFCB, 0xBE70, 0x42F8, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x41F1, 0x943D, 0x945E, 0x945E, 0x83FC, 0x4212, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x39D0, 0x945E, 0x945E, 0x943D, 0x6B38, 0x39D0, 0x945E, 0x8BFC, 0x5274, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A79, 0x84D4, 0xFFED, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE74E, 0x6C34, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2239, 0x63F4, 0xF7E5, 0xF7E5, 0xEFE4, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7C3, 0xAE0A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xB669, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xD745, 0x63F2, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C13, 0xF7E5, 0xF7E5, 0xD709, 0x4316, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AB8, 0x84D0, 0xB64B, 0xCEC9, 0xCEE9, 0xB64B, 0x84B1, 0x3AD8, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6413, 0xEFE6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x8D2F, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x4336, 0x9D6E, 0xCEC9, 0xD728, 0xC6AA, 0x8D0F, 0x3AD7, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AF7, 0xBE8A, 0xEFC6, 0xB62C, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AF7, 0xC6AA, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE767, 0x84D0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5375, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF48, 0x6C33, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x63F4, 0xA5EC, 0xBE88, 0xBEA8, 0xAE0A, 0x7CCF, 0x3AD7, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x42F8, 0xCECC, 0xF7E5, 0xF7E5, 0xEFC8, 0xC6AE, 0x4B57, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x8C1D, 0x945E, 0x945E, 0x8C1D, 0x5A95, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x41F1, 0x945E, 0x945E, 0x8C1D, 0x5AB5, 0x39D0, 0x945E, 0x83FC, 0x4212, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A79, 0x84D4, 0xFFED, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE74F, 0x6C35, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A39, 0x63F3, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE5, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7C3, 0xAE29, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xB668, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xD745, 0x63F2, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C13, 0xF7E5, 0xE7A7, 0x9D8E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x63F4, 0xD709, 0xEFC6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFA6, 0xCEC9, 0x5BD4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xBE6B, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xD728, 0x5375, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7452, 0xDF68, 0xEFC6, 0xEFE6, 0xF7E6, 0xEFE6, 0xEFC6, 0xCEC9, 0x5BB5, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3298, 0x8D2F, 0xEFC6, 0xB64B, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xC6AA, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xE767, 0x84D0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5375, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xCEC9, 0x3279, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3298, 0x954F, 0xE7A6, 0xEFC4, 0xEFE2, 0xEFE2, 0xE7C3, 0xE7A3, 0xBEA7, 0x4B35, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3298, 0x954E, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xCECC, 0x5377, 0x221A, 0x221A, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x8C1D, 0x945E, 0x945E, 0x943E, 0x7338, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x4212, 0x945E, 0x945E, 0x8BFC, 0x4A32, 0x39D0, 0x945E, 0x83DC, 0x39D0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A79, 0x84D4, 0xFFED, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE74F, 0x6C35, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A39, 0x63F3, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7E7, 0xF7E7, 0xEFE5, 0xF7E5, 0xF7E5, 0xEFC6, 0xB62C, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xB669, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xD745, 0x63F2, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6412, 0xF7E5, 0xD728, 0x5395, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x63F3, 0xE767, 0xEFE6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE6, 0xD709, 0x5BD4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7472, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xCEC9, 0x2A59, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x63F3, 0xE787, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE6, 0xC6AA, 0x32B8, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A39, 0x63F4, 0xEFC7, 0xB64D, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC690, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE76E, 0x84D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5377, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7CE, 0xB631, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7474, 0xEFC9, 0xEFE4, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xE7C3, 0xAE29, 0x2A59, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6413, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE7, 0xCECF, 0x4B57, 0x221A, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x318F, 0x7B9A, 0x943E, 0x943E, 0x943E, 0x83BB, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x4A32, 0x943E, 0x943E, 0x83DB, 0x318F, 0x31AF, 0x8C1D, 0x8BDC, 0x41F1, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A79, 0x84D4, 0xFFED, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE74F, 0x6C35, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A39, 0x6413, 0xF7E5, 0xF7E5, 0xF7E7, 0xF7EA, 0xF7EC, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7EB, 0xF7E7, 0xEFC6, 0xB62C, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xBE6B, 0xF7E5, 0xEFE4, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xD745, 0x63F2, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6412, 0xEFE2, 0xC6A8, 0x2A59, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4336, 0xD708, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE6, 0xC6AA, 0x3AD7, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4B36, 0xE787, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xB64B, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AB8, 0xADED, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF68, 0x7452, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4B38, 0xEF8E, 0xBE51, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC690, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE76E, 0x84D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5377, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xEFAE, 0x9D73, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AF8, 0xCEAF, 0xF7E8, 0xF7E5, 0xF7E5, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xD745, 0x6C31, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5374, 0xEFE4, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7C9, 0xC690, 0x3299, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x39B0, 0x7B9A, 0x943E, 0x943E, 0x8BDC, 0x4212, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x4A53, 0x943E, 0x943E, 0x7B9A, 0x212D, 0x296E, 0x7338, 0x941D, 0x62D6, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A79, 0x84D4, 0xF7EC, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE74F, 0x6C35, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6413, 0xF7E6, 0xF7EC, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7CE, 0xB62F, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xBE6B, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xEFE4, 0xEFE4, 0xEFE5, 0xEFE5, 0xEFE5, 0xEFE5, 0xDF47, 0x6413, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2239, 0x6413, 0xE7A6, 0x9DAD, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3299, 0x9532, 0xF7EC, 0xF7EC, 0xF7EC, 0xF7EC, 0xF7EC, 0xF7EC, 0xF7EC, 0xF7EC, 0xF7EC, 0xF7EC, 0xF7EC, 0xEF8C, 0x9552, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC68F, 0xF7EC, 0xF7EC, 0xF7EC, 0xF7EC, 0xEFCC, 0xADD1, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC6AF, 0xF7EC, 0xF7EC, 0xF7EC, 0xF7EC, 0xF7EC, 0xF7EC, 0xF7EC, 0xFFED, 0xEFAE, 0x9D53, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xD70F, 0xBE51, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC690, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE76E, 0x84D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5376, 0xF7EA, 0xF7E8, 0xF7E7, 0xF7E7, 0xF7E6, 0xE788, 0x8CF0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4B36, 0xEFC6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xDF84, 0x850E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4336, 0xEFC5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E7, 0xE78E, 0x8CF4, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x41F1, 0x8BFD, 0x9C3E, 0x941D, 0x62F7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294D, 0x5A94, 0x9C3E, 0x941D, 0x6B18, 0x0001, 0x212D, 0x41F1, 0x941D, 0x83BB, 0x316F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A79, 0x84B4, 0xF7EA, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE74F, 0x6C36, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C13, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xEFC9, 0xB62E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xBE6D, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E8, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF48, 0x6413, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A39, 0x63F3, 0xE787, 0x84F0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x42F7, 0xD709, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xCEEA, 0x3AD8, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x32B8, 0xA5AE, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xE7A7, 0x9D8E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x42F7, 0xCEE9, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xEFC7, 0xADED, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x42F7, 0xC6CA, 0xBE4B, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xBE8B, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xE767, 0x84D0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5375, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE767, 0x84D1, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5395, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE2, 0xEFE2, 0xEFE2, 0xDF84, 0x850E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4336, 0xEFC5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E8, 0xF7ED, 0xC670, 0x221A, 0x221A, 0x21F8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294D, 0x5274, 0x9C3E, 0x9C3E, 0x839B, 0x296E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x62D6, 0x9C3E, 0x93FD, 0x5A95, 0x0001, 0x0001, 0x294E, 0x5A95, 0x93FD, 0x62B6, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A79, 0x84B4, 0xF7E8, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE74F, 0x6C36, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C13, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xB64B, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xBE6B, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF48, 0x6413, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A39, 0x63F4, 0xDF67, 0x7472, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4B36, 0xEFC6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xD708, 0x4B56, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3298, 0x8D0F, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE7A7, 0x9D6E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xDF48, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xBE6B, 0x2A79, 0x2A79, 0x2A79, 0x2A79, 0x2A79, 0x2A79, 0x4B36, 0xC6CA, 0xBE6B, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xBE6B, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE767, 0x84D0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5375, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF67, 0x7CB1, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x5BD4, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE2, 0xEFE2, 0xEFE2, 0xDF84, 0x850E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xE7A7, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E9, 0xFFED, 0xD6F0, 0x2A79, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x316E, 0x6B17, 0x9C3E, 0x8BFC, 0x5274, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x6B18, 0x9C3E, 0x8BDC, 0x4A12, 0x0001, 0x0001, 0x0001, 0x316F, 0x7338, 0x83BB, 0x39B0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A79, 0x84B4, 0xF7E8, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE74F, 0x6C36, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C13, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xB64B, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xBE6B, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF48, 0x6C13, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2239, 0x63F4, 0xDF68, 0x7452, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4B56, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xD728, 0x4B56, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3279, 0x8CF0, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE7A7, 0x956E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xDF67, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xE787, 0xE787, 0xE787, 0xE787, 0xE787, 0xE787, 0xE7A7, 0xEFC6, 0xBE6B, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xB64B, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE767, 0x84D0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5375, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF67, 0x7472, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A39, 0x6413, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE5, 0xEFE2, 0xEFE2, 0xEFE2, 0xDF84, 0x850E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xE7A8, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7EB, 0xFFED, 0xD70F, 0x3AB9, 0x221A, 0x21D8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x39B0, 0x839A, 0x9C3E, 0x7B9A, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x316F, 0x7B59, 0x9C3E, 0x8BBB, 0x318F, 0x0001, 0x0001, 0x0001, 0x0001, 0x31AF, 0x7B59, 0x7338, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A79, 0x7CB4, 0xF7E7, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE74F, 0x6C36, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C33, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xB64B, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xBE6B, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF48, 0x6C13, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2239, 0x63F4, 0xDF67, 0x7472, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4B36, 0xEFE6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xD728, 0x4B55, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A79, 0x84F0, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x954F, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xE787, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE6, 0xBE6B, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AB8, 0xB62C, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE767, 0x84D0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5375, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF67, 0x7452, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C13, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xDF84, 0x850E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xE789, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7EC, 0xFFED, 0xD70F, 0x3AB9, 0x221A, 0x21F8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x39D0, 0x83BB, 0x93FD, 0x62B6, 0x0001, 0x0001, 0x0001, 0x0001, 0x318F, 0x839B, 0x9C3E, 0x839A, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x39D0, 0x7B59, 0x5254, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A79, 0x7C95, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE74F, 0x6C36, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C33, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFC6, 0xB64B, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xBE6B, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF48, 0x6C13, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2239, 0x63F4, 0xE767, 0x84D0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xDF67, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xD728, 0x5375, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A79, 0x84D1, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x954F, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4316, 0xE787, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE6, 0xBE6B, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AB8, 0xAE0C, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE767, 0x84D0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5375, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF48, 0x6C32, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C13, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E5, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xDF84, 0x850E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xE789, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xFFED, 0xFFED, 0xD6EF, 0x32B9, 0x221A, 0x21D8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x39B0, 0x7B7A, 0x8BBB, 0x41F1, 0x0001, 0x0001, 0x0001, 0x318F, 0x93DC, 0x941D, 0x7318, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x39B0, 0x6AF7, 0x318F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x221A, 0x221A, 0x2A59, 0x7C95, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE74F, 0x6C35, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C33, 0xF7E6, 0xF7E7, 0xF7E7, 0xF7EA, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7CB, 0xBE4F, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC66F, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xDF4D, 0x6C35, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x63F5, 0xEFAC, 0x9D72, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AB8, 0xADD0, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xDF2D, 0x5377, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A79, 0x84B3, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xEF8C, 0x9552, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xE78C, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xC6AF, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AB8, 0xADF0, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xE76C, 0x84D3, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5377, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xF7EB, 0xDF4D, 0x6C35, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A5A, 0x6C35, 0xFFED, 0xFFED, 0xF7EA, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x8D10, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xE789, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7EB, 0xFFED, 0xFFED, 0xD6EF, 0x3299, 0x221A, 0x21F8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x318F, 0x62D6, 0x7B59, 0x294E, 0x0001, 0x0001, 0x39B0, 0x9C1E, 0x93FD, 0x5A95, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x292D, 0x292D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x2219, 0x221A, 0x2A59, 0x7C95, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE74F, 0x6C35, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A5A, 0x6C35, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7CD, 0xBE51, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC670, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE74F, 0x6C35, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x63F6, 0xF7ED, 0xC671, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x5BB6, 0xEFAE, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xDF2F, 0x5377, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A79, 0x84B4, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xEF8E, 0x9553, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xEF8E, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xCED0, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x32B9, 0xA592, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE76E, 0x84D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5377, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE74F, 0x6C16, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A5A, 0x6C35, 0xFFED, 0xF7E8, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x8D10, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xE769, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7ED, 0xFFED, 0xFFED, 0xD6EF, 0x3299, 0x221A, 0x21F8, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x41D1, 0x39D0, 0x0001, 0x212D, 0x41F1, 0x9C3E, 0x8BDC, 0x4A12, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212F, 0x21F9, 0x221A, 0x2A59, 0x7C95, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE74F, 0x7435, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A5A, 0x6C36, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7CD, 0xBE71, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC670, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE74F, 0x6C35, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x63F6, 0xFFED, 0xD70F, 0x4318, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A79, 0x84B4, 0xF7CD, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xDF2F, 0x5397, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A79, 0x84B4, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xEF8E, 0x9553, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xEF8E, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xD6F0, 0x2A79, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3279, 0x8CF4, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE76E, 0x84D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5377, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE74F, 0x6C16, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7454, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x8D10, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xDF69, 0xF7E5, 0xF7E5, 0xF7EA, 0xFFED, 0xFFED, 0xFFED, 0xD6EF, 0x3299, 0x221A, 0x21F8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x0001, 0x212D, 0x4A33, 0x9C3E, 0x8BBB, 0x316E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212F, 0x21F9, 0x221A, 0x2A59, 0x7C95, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE76E, 0x7455, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A5A, 0x6C36, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7CD, 0xBE71, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC670, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE74F, 0x6C35, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x63F6, 0xFFED, 0xEF8E, 0x8D14, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A79, 0x7455, 0xDF2F, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xDF2F, 0x5397, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A79, 0x84B4, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xEF8E, 0x9553, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xEFAE, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xD70F, 0x4318, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x5397, 0xEF8E, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE76E, 0x84D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5377, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xDF4F, 0x63F6, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7452, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x8D10, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xDF69, 0xF7E5, 0xF7E8, 0xF7ED, 0xFFED, 0xFFED, 0xFFED, 0xD6F0, 0x2A59, 0x221A, 0x21F8, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294D, 0x5A74, 0x9C1E, 0x7B59, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212F, 0x21F8, 0x221A, 0x2A59, 0x7C75, 0xF7E7, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE76D, 0x7455, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A5A, 0x6C36, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xC671, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC670, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE74F, 0x7435, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x63F6, 0xFFED, 0xF7ED, 0xCED0, 0x3AB9, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x3AD8, 0x7C95, 0xB631, 0xD6F0, 0xDF4F, 0xEF8E, 0xF7CE, 0xFFED, 0xFFED, 0xFFED, 0xDF2F, 0x5B97, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A79, 0x84B4, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xEF8E, 0x9553, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xEFAE, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE74F, 0x6C35, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C16, 0xDF0F, 0xFFED, 0xFFED, 0xFFED, 0xE76E, 0x84D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x5377, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xDF4F, 0x63F6, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7452, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x8D10, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xDF68, 0xF7E8, 0xF7EC, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xD6F0, 0x2A5A, 0x221A, 0x21F8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x62B6, 0x93FD, 0x62B6, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212F, 0x21F8, 0x221A, 0x2A5A, 0x7455, 0xF7E9, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF6B, 0x7455, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A5A, 0x6C36, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xC671, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC670, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE74F, 0x7435, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x63F6, 0xFFED, 0xFFED, 0xEF8E, 0x9533, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x2A59, 0x2A79, 0x2A79, 0x3279, 0x3279, 0x42F8, 0x9D73, 0xFFED, 0xDF2F, 0x5BB7, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A79, 0x3AD8, 0x3AD8, 0x3AD8, 0x3AD8, 0x3AD8, 0x3279, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xEFAE, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xEFAE, 0xA5B2, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x3299, 0x4B57, 0x7C75, 0xB631, 0xE76E, 0x84D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3279, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x5BB6, 0x32B8, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7452, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x8D10, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xDF48, 0xF7E9, 0xF7ED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xD6D0, 0x221A, 0x221A, 0x21D8, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x296E, 0x72F7, 0x93BC, 0x4A12, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x21F8, 0x221A, 0x2A3A, 0x6C16, 0xF7EC, 0xF7E7, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF6B, 0x7455, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A5A, 0x6C36, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xC670, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC670, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE76F, 0x7455, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x63F6, 0xFFED, 0xFFED, 0xF7ED, 0xDF2F, 0x63D6, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3299, 0x9533, 0xFFED, 0xDF2F, 0x5BB7, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xEFAE, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xD6EF, 0x4318, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3299, 0x8CF4, 0xE76E, 0x84D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x223A, 0x223A, 0x223A, 0x223A, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7452, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE788, 0x8D12, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xDF68, 0xF7E5, 0xF7EC, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xCED0, 0x221A, 0x221A, 0x21F8, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x316F, 0x7B39, 0x8B9B, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x21D7, 0x221A, 0x223A, 0x63F6, 0xFFED, 0xF7E9, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF69, 0x7455, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A5A, 0x6C36, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xC670, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC670, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE76F, 0x7455, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x63F6, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xCEB0, 0x4318, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3299, 0x9533, 0xFFED, 0xDF2F, 0x5BB6, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xEFAE, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xEFAE, 0x9D53, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A79, 0x84B4, 0xE76E, 0x84D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7452, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE787, 0x8D10, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xDF68, 0xF7E5, 0xF7E8, 0xF7ED, 0xFFED, 0xFFED, 0xF7ED, 0xCEB0, 0x221A, 0x221A, 0x21D8, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x318F, 0x835A, 0x6AF7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x21D6, 0x221A, 0x221A, 0x5BB6, 0xFFED, 0xF7EC, 0xF7EB, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF68, 0x7474, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A5A, 0x6C36, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xC670, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC670, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE76F, 0x7455, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x63F6, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7CD, 0xCEB0, 0x4B57, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3299, 0x9533, 0xFFED, 0xDF2F, 0x5BB6, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xEFAE, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xDF2F, 0x63F6, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A79, 0x84B4, 0xE76E, 0x84D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7452, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x8D10, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xDF67, 0xF7E5, 0xF7E5, 0xF7EC, 0xFFED, 0xFFED, 0xF7ED, 0xC690, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x318F, 0x837A, 0x41F1, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x21B6, 0x221A, 0x221A, 0x5397, 0xFFED, 0xFFED, 0xFFED, 0xF7EA, 0xF7E5, 0xF7E5, 0xF7E5, 0xDF67, 0x7472, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A5A, 0x6C36, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xC690, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD8, 0xC670, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE76F, 0x7455, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x63F6, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7CD, 0xD6F0, 0x6C16, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3299, 0x9533, 0xFFED, 0xDF4F, 0x5BD6, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4318, 0xEFAE, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xD6EF, 0x5BB6, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7C95, 0xE76E, 0x84D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7452, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xE787, 0x8D10, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xDF67, 0xF7E5, 0xF7E5, 0xF7EC, 0xFFED, 0xFFED, 0xF7CD, 0xBE71, 0x221A, 0x221A, 0x21D7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x318F, 0x7B39, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x21B5, 0x221A, 0x221A, 0x4B57, 0xF7CD, 0xFFED, 0xFFED, 0xFFED, 0xF7E7, 0xF7E5, 0xF7E5, 0xE767, 0x84B1, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C33, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xEFE6, 0xBE8B, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xBE6B, 0xF7E6, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E7, 0xDF68, 0x7452, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x63F4, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E7, 0xE768, 0xA5CE, 0x4317, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3298, 0x9530, 0xF7E6, 0xDF49, 0x5BD4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xE7A8, 0xF7E7, 0xF7E6, 0xF7E7, 0xF7E7, 0xF7E6, 0xF7E7, 0xF7E7, 0xF7E6, 0xF7E7, 0xF7E7, 0xF7E6, 0xF7E7, 0xF7E7, 0xF7E6, 0xF7E7, 0xF7E7, 0xF7E6, 0xF7E7, 0xF7E7, 0xF7E6, 0xF7E7, 0xF7E7, 0xDF29, 0x84D1, 0x2A59, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7C95, 0xE76E, 0x84D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7452, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE4, 0xDF85, 0x8D0E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4317, 0xDF67, 0xF7E5, 0xF7E8, 0xFFED, 0xFFED, 0xFFED, 0xEFAE, 0xA5B2, 0x221A, 0x221A, 0x21D7, 0x210D, 0x0001, 0x0001, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x41F1, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x2172, 0x221A, 0x221A, 0x3AB8, 0xC690, 0xFFED, 0xFFED, 0xFFED, 0xF7EA, 0xF7E5, 0xF7E5, 0xE7A6, 0xA5AD, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x6C33, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xEFE6, 0xBE8B, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3AD7, 0xBE6B, 0xF7E6, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E7, 0xDF68, 0x7472, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x63F4, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E6, 0xF7E6, 0xEFC7, 0xDF68, 0xB62C, 0x7C92, 0x4B56, 0x3298, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3298, 0x9530, 0xF7E6, 0xDF48, 0x63D4, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x4316, 0xE7A7, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xE7A6, 0xCEE9, 0x8CF0, 0x4B55, 0x2A59, 0x221A, 0x221A, 0x2A59, 0x7472, 0xE769, 0x84D2, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7452, 0xF7E5, 0xF7E5, 0xEFE4, 0xEFE3, 0xEFE3, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xDF84, 0x850E, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2A59, 0x7472, 0xEFC6, 0xF7E5, 0xF7EA, 0xFFED, 0xFFED, 0xFFED, 0xE74F, 0x6C35, 0x221A, 0x221A, 0x21B6, 0x292D, 0x4A12, 0x7B39, 0x7B39, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212F, 0x21F8, 0x221A, 0x2239, 0x7455, 0xF7ED, 0xFFED, 0xFFED, 0xFFED, 0xF7E8, 0xF7E5, 0xF7E6, 0xEFC6, 0xDF68, 0xD709, 0xCEC9, 0xCEC9, 0xCEC9, 0xCEC9, 0xD728, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E8, 0xF7E9, 0xF7EA, 0xF7EC, 0xF7ED, 0xF7ED, 0xEFAE, 0xCED0, 0xCED0, 0xCED0, 0xCED0, 0xCED0, 0xCED0, 0xD6EF, 0xEFAE, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xE76E, 0xDF2F, 0xDF2F, 0xDF2F, 0xDF2F, 0xDF2F, 0xDF2F, 0xE76E, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xF7CD, 0xF7CE, 0xEFAE, 0xEF8E, 0xE76E, 0xDF2F, 0xD70F, 0xCED0, 0xCED0, 0xD6F0, 0xE76E, 0xFFED, 0xF7CD, 0xDF2F, 0xCED0, 0xCED0, 0xCECE, 0xCECD, 0xCECB, 0xCECA, 0xCECA, 0xCEC9, 0xCEC9, 0xCEC9, 0xCEC9, 0xCEC9, 0xCEC9, 0xCEC9, 0xCEC9, 0xCEC9, 0xCEC9, 0xCEC9, 0xCEC9, 0xCF09, 0xEFE6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xEFE6, 0xEFC6, 0xE7A7, 0xE787, 0xD728, 0xCEC9, 0xCEC9, 0xDF48, 0xEFE6, 0xDF48, 0xCEC9, 0xCEC9, 0xCECA, 0xCECA, 0xCECA, 0xC6C7, 0xC6C7, 0xC6C8, 0xC6C9, 0xCECB, 0xCECB, 0xCECB, 0xCECB, 0xCECA, 0xCECA, 0xC6C8, 0xC6C8, 0xC6C8, 0xC6C7, 0xC6C7, 0xD745, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE2, 0xEFE3, 0xEFE3, 0xEFE5, 0xDF67, 0xCEC9, 0xCEC9, 0xCEC9, 0xCEC9, 0xD709, 0xDF48, 0xEFA6, 0xF7E6, 0xF7E8, 0xFFED, 0xFFED, 0xFFED, 0xF7CD, 0xBE51, 0x2A59, 0x221A, 0x21F9, 0x29B4, 0x4A12, 0x9BFD, 0x9BFD, 0x7B18, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x21B4, 0x221A, 0x221A, 0x3279, 0xADD2, 0xFFED, 0xFFED, 0xFFED, 0xF7EC, 0xF7EB, 0xF7E7, 0xF7E5, 0xF7E6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xF7E8, 0xF7EA, 0xF7EB, 0xF7EC, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xFFED, 0xFFED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7ED, 0xF7EC, 0xF7E9, 0xF7E8, 0xF7E7, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xEFE6, 0xEFE6, 0xEFE6, 0xF7E5, 0xF7E6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE4, 0xEFE4, 0xEFE5, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xEFE6, 0xF7E6, 0xF7E5, 0xF7E8, 0xF7EB, 0xFFED, 0xFFED, 0xFFED, 0xDF2F, 0x5BB7, 0x221A, 0x221A, 0x21D8, 0x3191, 0x6295, 0xA41E, 0x9BDD, 0x6295, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x214F, 0x21F8, 0x221A, 0x221A, 0x3AB8, 0xCEB0, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7EC, 0xF7EB, 0xF7E9, 0xF7E9, 0xF7EA, 0xF7EC, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7EC, 0xF7EB, 0xF7E9, 0xF7E8, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E9, 0xF7EB, 0xF7EC, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7E9, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xE76E, 0x7C95, 0x221A, 0x221A, 0x21F9, 0x2193, 0x296F, 0x6AD6, 0xA41E, 0x93BC, 0x4A12, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x2171, 0x221A, 0x221A, 0x221A, 0x3AB8, 0xC670, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7EC, 0xF7EB, 0xF7EB, 0xF7EA, 0xF7E9, 0xF7E9, 0xF7E9, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E8, 0xF7E9, 0xF7E9, 0xF7EB, 0xF7EC, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7E9, 0xF7E7, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E5, 0xF7E6, 0xF7E8, 0xF7EB, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xE74F, 0x7C75, 0x223A, 0x221A, 0x221A, 0x21B6, 0x212D, 0x294E, 0x6AD7, 0xA41E, 0x939C, 0x3990, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x294E, 0x294D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x2193, 0x221A, 0x221A, 0x221A, 0x2A58, 0x9553, 0xEFAE, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7E9, 0xF7E7, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E6, 0xF7E7, 0xF7E8, 0xF7E9, 0xF7EB, 0xF7EC, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7CE, 0xC690, 0x5357, 0x221A, 0x221A, 0x221A, 0x21D7, 0x212E, 0x0001, 0x294E, 0x72D7, 0xA41E, 0x8B7B, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x5233, 0x41D1, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212E, 0x2193, 0x221A, 0x221A, 0x221A, 0x2219, 0x4B37, 0xA592, 0xCEB0, 0xE74F, 0xEF8E, 0xEFAE, 0xF7ED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xFFED, 0xF7ED, 0xEFAE, 0xEF8E, 0xE74F, 0xD6EF, 0xADD2, 0x63B5, 0x2219, 0x221A, 0x221A, 0x221A, 0x21D7, 0x212F, 0x210D, 0x0001, 0x294E, 0x72D7, 0xA3FE, 0x7B19, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x316F, 0x72D7, 0x4A12, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x2171, 0x21F9, 0x221A, 0x221A, 0x221A, 0x2219, 0x2A59, 0x2A79, 0x3279, 0x3279, 0x3279, 0x3299, 0x3AB9, 0x3AD8, 0x42F8, 0x4B38, 0x4B57, 0x5B97, 0x5B97, 0x5B97, 0x5B97, 0x5B97, 0x5B97, 0x5B97, 0x5B97, 0x5B97, 0x5B97, 0x5B97, 0x5B97, 0x5B97, 0x5B97, 0x5B97, 0x5BD6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63F6, 0x63D6, 0x63D6, 0x63B6, 0x63B6, 0x63B6, 0x5BB6, 0x5BB6, 0x63B6, 0x63B6, 0x63B6, 0x63B6, 0x63B6, 0x63B6, 0x63B6, 0x63B6, 0x63B7, 0x5B77, 0x5B77, 0x5B77, 0x5B77, 0x5B77, 0x5B77, 0x5B77, 0x5B77, 0x5B78, 0x5B78, 0x5B78, 0x5B78, 0x5B78, 0x5B78, 0x5B78, 0x5338, 0x5338, 0x4B19, 0x3AD9, 0x3AB9, 0x3299, 0x3299, 0x3279, 0x3A9A, 0x52DB, 0x3A7A, 0x427B, 0x221A, 0x221A, 0x221A, 0x21F9, 0x21B5, 0x212E, 0x0001, 0x0001, 0x0001, 0x316E, 0x72F8, 0x9BDD, 0x6A96, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x398F, 0x8B7B, 0x5A54, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x214F, 0x21B5, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x223A, 0x223A, 0x223A, 0x223A, 0x223A, 0x223A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x3A5B, 0x837D, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xA3FE, 0xABFE, 0xABFE, 0xABFE, 0xA3FE, 0xA3FE, 0xA3FE, 0x8B9D, 0x5ADC, 0x325B, 0x325B, 0x325B, 0x2A3A, 0x221A, 0x21D7, 0x2171, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x316E, 0x7B19, 0x9BBC, 0x5233, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x41D1, 0x9BDD, 0x6A96, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x2150, 0x21B5, 0x21F9, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x221A, 0x2219, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x21F9, 0x2A3A, 0x8B9D, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0x93BD, 0x731C, 0x3A37, 0x2970, 0x292E, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x41D1, 0x9BBD, 0x939C, 0x39B0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x5233, 0xA3DE, 0x72F8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x210D, 0x212D, 0x212E, 0x212E, 0x214F, 0x214F, 0x214F, 0x2150, 0x2150, 0x2171, 0x2171, 0x2171, 0x2171, 0x2171, 0x2171, 0x2171, 0x2171, 0x2171, 0x2171, 0x2171, 0x2171, 0x2171, 0x2171, 0x2171, 0x2171, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2172, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2192, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2193, 0x2172, 0x2171, 0x2171, 0x2171, 0x2150, 0x2151, 0x2151, 0x2151, 0x2150, 0x2150, 0x2150, 0x2151, 0x2171, 0x2171, 0x2171, 0x2171, 0x2150, 0x2150, 0x2150, 0x2150, 0x2150, 0x2150, 0x2150, 0x2150, 0x2171, 0x7319, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xA3DE, 0x833A, 0x72D8, 0x72D7, 0x6AB6, 0x6295, 0x6295, 0x6A96, 0x6AB6, 0x72B7, 0x8319, 0x9BBD, 0xABFE, 0x937B, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294D, 0x5A74, 0xA3FE, 0x8339, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x294D, 0x4A12, 0x9B9C, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xA3DE, 0xA3DE, 0xA3DE, 0xA3DE, 0xA3DE, 0xA3DE, 0xA3DE, 0xA3DE, 0xABFE, 0xABFE, 0xABFE, 0x8319, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x6275, 0xABFE, 0x937B, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x6275, 0x9BBD, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xA3DD, 0x6A96, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x6A96, 0xABFE, 0x937B, 0x316F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x41B0, 0x8B3A, 0xA3DE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0x9BBC, 0x5213, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x6A96, 0xABFE, 0x9BBC, 0x4A12, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x5233, 0x9BBC, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xA3DD, 0x9BBC, 0x937B, 0x8B5A, 0x8319, 0x7AF8, 0x7AF8, 0x7AF8, 0x7AD7, 0x72B7, 0x72B7, 0x72B7, 0x72B7, 0x72D7, 0x7AF8, 0x8319, 0x8B5A, 0x937B, 0xA3BD, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0x9B9C, 0x398F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x6A95, 0xABFE, 0xA3DD, 0x6A96, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x6A96, 0xA3DD, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xA3BD, 0x935B, 0x8319, 0x72B7, 0x6275, 0x5213, 0x41D1, 0x318F, 0x294E, 0x294E, 0x294E, 0x292D, 0x292D, 0x292D, 0x292D, 0x292D, 0x292D, 0x292D, 0x212D, 0x212D, 0x212D, 0x212D, 0x292D, 0x292D, 0x292D, 0x292D, 0x292D, 0x294E, 0x316F, 0x41D1, 0x5213, 0x6A95, 0x8319, 0x9B9C, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0x8B5A, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294D, 0x6275, 0xABFE, 0xABFE, 0x8B3A, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x316F, 0x8319, 0xABDE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0x9B9C, 0x7AF8, 0x6275, 0x49F2, 0x316F, 0x294E, 0x292D, 0x292D, 0x212D, 0x212D, 0x212D, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x212D, 0x212D, 0x292D, 0x294E, 0x398F, 0x5213, 0x72B7, 0x937B, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xA3DD, 0x72B7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x5A54, 0xABFE, 0xABFE, 0x9B7B, 0x398F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x39B0, 0x8B5A, 0xABDE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABFE, 0xABDE, 0x937B, 0x6A96, 0x41D1, 0x294E, 0x292D, 0x212D, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x212D, 0x294E, 0x398F, 0x5A34, 0x7AF8, 0x9B9C, 0xABFE, 0x9B9C, 0x41D1, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x5212, 0xABFE, 0xABFE, 0xA3BD, 0x5A34, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x41D1, 0x9B7B, 0xABDE, 0xABFE, 0xABFE, 0xABFE, 0xABDE, 0x9B9C, 0x6A96, 0x41D1, 0x294D, 0x212D, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x292D, 0x294E, 0x3990, 0x41B0, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x41B1, 0xABFE, 0xABFE, 0xABDE, 0x7AF8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x49D1, 0x9B9C, 0xABDE, 0xB3FE, 0xB3FE, 0xABDE, 0x8B3A, 0x5233, 0x294E, 0x212D, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x3990, 0xA3BD, 0xB3FE, 0xABFE, 0x937B, 0x316E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x49D1, 0x9B9C, 0xABFE, 0xB3FE, 0xABBD, 0x7AF8, 0x41D1, 0x292D, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x398F, 0x9B7B, 0xB3FE, 0xB3FE, 0xA39C, 0x5213, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x49D1, 0x9B9C, 0xB3FE, 0xABDE, 0x8319, 0x41D1, 0x292D, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x316F, 0x8319, 0xB3FE, 0xB3FE, 0xABBE, 0x7AD7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x41D1, 0x9B7C, 0xABDE, 0x8B1A, 0x49D2, 0x292D, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x72B6, 0xB3DE, 0xB3DE, 0xB3DE, 0x935B, 0x294D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x3990, 0x935B, 0xA39D, 0x6275, 0x294E, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x5A34, 0xB3DE, 0xB3DE, 0xB3DE, 0xA39C, 0x49F2, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x316F, 0x82F9, 0x8B19, 0x41B0, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x49D1, 0xB3DE, 0xB3DE, 0xB3DE, 0xABBD, 0x72B7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x314E, 0x6A96, 0x6A96, 0x294E, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x5212, 0x316F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x398F, 0xA37C, 0xB3DE, 0xB3DE, 0xB3DE, 0x935B, 0x294D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x316F, 0x49F2, 0x292D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x316F, 0x933B, 0xABBD, 0xA37C, 0x8B3A, 0x7AD7, 0x6255, 0x49F2, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x316E, 0x82F9, 0xB3DE, 0xB3DE, 0xB3DE, 0xA37C, 0x49F2, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x51F2, 0xAB9D, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3BE, 0xABBE, 0xA37C, 0x72B7, 0x41B1, 0x292D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x6A75, 0xB3DE, 0xB3DE, 0xB3DE, 0xABBD, 0x72B7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x49D1, 0x9B5B, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3DE, 0xABBD, 0xA37C, 0x7296, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x49D1, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3DE, 0x935B, 0x294D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x398F, 0x7AD8, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3BE, 0x9B5B, 0x5A33, 0x314E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x398F, 0xA37C, 0xB3DE, 0xB3DE, 0xB3DE, 0xA37C, 0x49F2, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x6254, 0xABBD, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3DE, 0xB3BE, 0xAB9D, 0x9B5B, 0x82D8, 0x5213, 0x292D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x316E, 0x82D8, 0xB3DE, 0xB3DE, 0xB3DE, 0xABBD, 0x7AB7, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x5A34, 0xB3DE, 0xB3DF, 0xB3DF, 0xB3DF, 0xB3DF, 0xB3DF, 0xB3DF, 0xB3DF, 0xB3DF, 0xB3DE, 0xB3BE, 0xABBE, 0x9B5B, 0x6234, 0x292D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x6254, 0xB3DF, 0xB3DF, 0xB3DF, 0xB3DE, 0x9B5B, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x314E, 0x6A76, 0xAB9D, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xB3DE, 0xB3BE, 0x931A, 0x41B1, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x49D1, 0xB3DE, 0xBBDF, 0xBBDF, 0xBBDF, 0xAB7D, 0x5213, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x3990, 0x82D8, 0xB3DE, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xB3BE, 0xA37C, 0x5A34, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x398F, 0xA35C, 0xBBDF, 0xBBDF, 0xBBDF, 0xB3BE, 0x82D8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x316E, 0x7276, 0xB3BE, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBBE, 0xAB9D, 0x7AB7, 0x292D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x314E, 0x82D8, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDE, 0x9B5B, 0x316F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x6234, 0xB3BE, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDE, 0xB39E, 0x82D8, 0x294E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x6A55, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xAB9D, 0x6234, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x51F3, 0xA35C, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDF, 0xBBDE, 0xB39E, 0x82D8, 0x292D, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x49D1, 0xBBDE, 0xBBDF, 0xBBDF, 0xBBDF, 0xB3BE, 0x8AF9, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x294E, 0x49D1, 0x7AB7, 0xB39D, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBE, 0xB39D, 0x82B8, 0x292D, 0x0001, 0x0001, 0x0001, 0x0001, 0x398F, 0xAB7C, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xA35C, 0x3990, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x292D, 0x3990, 0x7AB7, 0xB3BE, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBE, 0xAB9D, 0x7276, 0x0001, 0x0001, 0x0001, 0x0001, 0x316F, 0x92F9, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xAB9D, 0x6A55, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x294E, 0x51F2, 0xAB7C, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBE, 0xA37C, 0x51F2, 0x0001, 0x0001, 0x0001, 0x294E, 0x7A96, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBE, 0x931A, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x41B0, 0x9B3B, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBE, 0x9B3B, 0x396F, 0x0001, 0x0001, 0x292D, 0x5A14, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xA35C, 0x41B0, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x4190, 0x9B1A, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xB39E, 0x82D8, 0x212D, 0x0001, 0x210D, 0x41B1, 0xBBBE, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xB37D, 0x6A55, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x4190, 0x9B1A, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBE, 0xAB7D, 0x6234, 0x0001, 0x0001, 0x398F, 0xAB5C, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBE, 0x8AF9, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x41B1, 0xA35C, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBE, 0x9B3B, 0x396F, 0x0001, 0x316F, 0x92F9, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xA35C, 0x396F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x49D1, 0xB37D, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xB39E, 0x82B7, 0x0001, 0x314E, 0x82B7, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xBBBF, 0xAB7D, 0x59F3, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x6214, 0xBBBE, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xBBBF, 0xAB5C, 0x51D2, 0x294E, 0x6A55, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xB39E, 0x7A97, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x314E, 0x82B7, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xBB9E, 0x92F9, 0x294E, 0x5A13, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xBBBE, 0x9B1A, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x4190, 0xB37D, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xB37D, 0x6234, 0x51F2, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xAB5C, 0x396F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x6A55, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xBB9E, 0x9B1B, 0x59F3, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xAB5D, 0x51F2, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x3990, 0xA33C, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xBB7E, 0x9B1B, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xB37D, 0x7255, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x6A35, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC39E, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xBB9E, 0x8AD8, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x398F, 0xA33C, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC3BF, 0xC39F, 0xA31B, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x6A35, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xAB3C, 0x314E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x3990, 0xAB5C, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xAB5C, 0x41B1, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x294E, 0x7A76, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xB35D, 0x59F3, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x41B0, 0xBB7D, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xB37D, 0x6A34, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x314E, 0x8AB8, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xBB7D, 0x7A76, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x51D2, 0xC39E, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xBB7E, 0x8297, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x316F, 0x9AD9, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC37E, 0x92B9, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x59F3, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39F, 0xC39E, 0x92D9, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x396F, 0xAB1B, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xC39F, 0x9AFA, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x6A35, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xC39F, 0xA31B, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x4190, 0xBB5D, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xA31B, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x314E, 0x8AB8, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xA31B, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x59F2, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB7F, 0xA2FB, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x396F, 0xAB1C, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB7F, 0xA2FB, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x314E, 0x7A76, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB7E, 0x9ADA, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x51B1, 0xCB7F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xC37E, 0x92B9, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x396F, 0xAB1B, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xCB9F, 0xC37E, 0x8A98, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x314E, 0x8277, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xC35E, 0x8277, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x212D, 0x59D2, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xBB5D, 0x7235, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x4170, 0xBB3D, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xBB3D, 0x59D2, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x314E, 0x92B8, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xB33C, 0x4190, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x6A14, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xAAFB, 0x292D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x49B1, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB7F, 0xCB5E, 0x8A98, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x396F, 0xB31C, 0xD37F, 0xD37F, 0xD37F, 0xD37F, 0xBB3D, 0x6214, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x314E, 0x9298, 0xD37F, 0xD37F, 0xD37F, 0xD37F, 0xB31C, 0x396F, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x6A14, 0xD37F, 0xD37F, 0xD37F, 0xCB7E, 0x9AB9, 0x210D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x210D, 0x49B1, 0xD37F, 0xD37F, 0xD37F, 0xC33D, 0x6A14, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x4170, 0xC33D, 0xD37F, 0xD37F, 0xB2FC, 0x314E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x396F, 0xAADA, 0xD37F, 0xCB5E, 0x8A77, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x314E, 0x8A98, 0xD37F, 0xBB3D, 0x51B1, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292E, 0x7235, 0xD37F, 0xA2DA, 0x292D, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x292D, 0x59D2, 0xC33D, 0x6A14, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x4190, 0xAAFB, 0x314E, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, + 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x314E, 0x61F3, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001 +}; + +// Saves 98999 bytes +const uint8_t marlin_logo_240x250x16_rle16[21001] = { + 0x7F, 0x00, 0x01, 0x1A, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x21, 0xCF, 0x23, 0x95, 0x22, 0x50, 0x7F, 0x00, 0x01, 0x6A, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x22, 0x71, 0x2C, 0xFA, 0x2C, 0x57, 0x21, 0x4D, 0x7F, 0x00, 0x01, 0x69, 0x00, 0x01, 0x84, 0x21, 0x4D, 0x23, 0x13, 0x2D, 0x5B, 0x2D, 0x1A, 0x22, 0x71, 0x7F, 0x00, 0x01, 0x69, 0x00, 0x01, 0x81, 0x21, 0x6E, 0x2B, 0x74, 0x01, 0x2D, 0x9C, 0x81, 0x2C, 0x78, 0x21, 0x2D, 0x7F, 0x00, 0x01, 0x68, 0x00, 0x01, 0x85, 0x21, 0x6D, 0x2B, 0x54, 0x2D, 0x9C, 0x2D, 0xBC, 0x2D, 0x5B, 0x2B, 0x54, 0x7F, 0x00, 0x01, 0x68, 0x00, 0x01, 0x82, 0x21, 0x4D, 0x2B, 0x13, 0x2D, 0x7C, 0x01, 0x35, 0xBC, 0x81, 0x2D, 0x5B, 0x2B, 0x34, 0x7F, 0x00, 0x01, 0x67, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x22, 0x92, 0x35, 0x5B, 0x02, 0x35, 0xBD, 0x82, 0x35, 0x9C, 0x2C, 0x99, 0x21, 0x2D, 0x7F, 0x00, 0x01, 0x65, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x22, 0x10, 0x2D, 0x1A, 0x35, 0xBC, 0x02, 0x35, 0xBD, 0x81, 0x35, 0x7C, 0x2B, 0xF6, 0x7F, 0x00, 0x01, 0x66, 0x00, 0x01, 0x82, 0x21, 0xAE, 0x2C, 0x58, 0x35, 0x9C, 0x03, 0x35, 0xBD, 0x81, 0x35, 0x5B, 0x2B, 0x75, 0x7F, 0x00, 0x01, 0x65, 0x00, 0x01, 0x82, 0x21, 0x4D, 0x2B, 0x34, 0x35, 0x9C, 0x04, 0x35, 0xBD, 0x81, 0x35, 0x7C, 0x2B, 0xF6, 0x7F, 0x00, 0x01, 0x64, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x22, 0x30, 0x35, 0x3B, 0x05, 0x35, 0xBD, 0x82, 0x35, 0x9C, 0x34, 0xFA, 0x21, 0xEF, 0x7F, 0x00, 0x01, 0x63, 0x00, 0x01, 0x82, 0x21, 0x8E, 0x2C, 0x37, 0x35, 0x9C, 0x06, 0x35, 0x9D, 0x81, 0x35, 0x1A, 0x22, 0x30, + 0x7F, 0x00, 0x01, 0x62, 0x00, 0x01, 0x82, 0x21, 0x4D, 0x2A, 0xB2, 0x35, 0x9C, 0x07, 0x35, 0x9D, 0x81, 0x34, 0xFA, 0x22, 0x30, 0x7F, 0x00, 0x01, 0x62, 0x00, 0x01, 0x81, 0x21, 0xAF, 0x34, 0x99, 0x08, 0x35, 0x9D, 0x81, 0x34, 0xFA, 0x22, 0x10, 0x7F, 0x00, 0x01, 0x61, 0x00, 0x01, 0x82, 0x21, 0x4D, 0x2B, 0x14, 0x35, 0x9C, 0x08, 0x35, 0x9D, 0x81, 0x34, 0xFA, 0x22, 0x30, 0x7F, 0x00, 0x01, 0x61, 0x00, 0x01, 0x81, 0x21, 0xEF, 0x34, 0xFA, 0x09, 0x3D, 0x9D, 0x82, 0x35, 0x7C, 0x34, 0x58, 0x21, 0x8E, 0x7F, 0x00, 0x01, 0x5F, 0x00, 0x01, 0x82, 0x21, 0x6E, 0x2B, 0x75, 0x3D, 0x9C, 0x0A, 0x3D, 0x9D, 0x81, 0x34, 0xFA, 0x22, 0x10, 0x7F, 0x00, 0x01, 0x5F, 0x00, 0x01, 0x81, 0x21, 0xEF, 0x35, 0x1B, 0x0B, 0x3D, 0x9D, 0x81, 0x34, 0xDA, 0x21, 0x8E, 0x7F, 0x00, 0x01, 0x5E, 0x00, 0x01, 0x81, 0x21, 0x6D, 0x2B, 0x34, 0x0C, 0x3D, 0x9D, 0x81, 0x34, 0xDA, 0x21, 0xCF, 0x7F, 0x00, 0x01, 0x5E, 0x00, 0x01, 0x81, 0x21, 0xCF, 0x34, 0xDA, 0x0C, 0x3D, 0x9D, 0x81, 0x3D, 0x3C, 0x2B, 0x75, 0x7F, 0x00, 0x01, 0x5D, 0x00, 0x01, 0x82, 0x21, 0x4D, 0x2A, 0xF3, 0x3D, 0x7C, 0x0C, 0x3D, 0x9D, 0x81, 0x3D, 0x7C, 0x34, 0x18, 0x7F, 0x00, 0x01, 0x5D, 0x00, 0x01, 0x81, 0x21, 0xAE, 0x34, 0x58, 0x0D, 0x3D, 0x9D, 0x82, 0x3D, 0x7C, 0x34, 0x79, 0x21, 0x2D, 0x7F, 0x00, 0x01, 0x5C, 0x00, 0x01, 0x81, 0x2A, 0x10, 0x3D, 0x5C, 0x0E, 0x3D, 0x7D, 0x81, 0x3C, 0xFB, 0x2A, 0x51, 0x7F, 0x00, 0x01, 0x5B, 0x00, 0x01, 0x81, 0x21, 0x4D, 0x2B, 0x34, 0x0F, 0x3D, 0x7D, 0x82, 0x3D, 0x7C, 0x3C, 0x99, + 0x21, 0xCF, 0x7F, 0x00, 0x01, 0x5A, 0x00, 0x01, 0x81, 0x21, 0xAE, 0x34, 0x58, 0x10, 0x3D, 0x7D, 0x81, 0x3D, 0x3B, 0x33, 0x55, 0x7F, 0x00, 0x01, 0x5A, 0x00, 0x01, 0x81, 0x29, 0xF0, 0x3D, 0x5C, 0x10, 0x3D, 0x7D, 0x81, 0x3D, 0x5C, 0x33, 0xF7, 0x7F, 0x00, 0x01, 0x59, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x2A, 0x92, 0x12, 0x45, 0x7D, 0x81, 0x3C, 0xBA, 0x21, 0xAF, 0x7F, 0x00, 0x01, 0x58, 0x00, 0x01, 0x81, 0x21, 0x6E, 0x33, 0x75, 0x12, 0x45, 0x7D, 0x82, 0x45, 0x5C, 0x3C, 0x59, 0x2A, 0x30, 0x7F, 0x00, 0x01, 0x57, 0x00, 0x01, 0x81, 0x21, 0x8E, 0x3C, 0x18, 0x13, 0x45, 0x7D, 0x81, 0x3D, 0x1C, 0x33, 0x55, 0x7F, 0x00, 0x01, 0x57, 0x00, 0x01, 0x81, 0x21, 0xCF, 0x3C, 0xDA, 0x13, 0x45, 0x7D, 0x81, 0x45, 0x3C, 0x33, 0xB6, 0x7F, 0x00, 0x01, 0x57, 0x00, 0x01, 0x81, 0x29, 0xEF, 0x45, 0x5C, 0x13, 0x45, 0x7D, 0x81, 0x45, 0x5C, 0x3C, 0x38, 0x7F, 0x00, 0x01, 0x56, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x2A, 0x31, 0x15, 0x45, 0x7D, 0x81, 0x44, 0xFB, 0x2A, 0xB2, 0x7F, 0x00, 0x01, 0x55, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x2A, 0xB2, 0x15, 0x45, 0x7D, 0x83, 0x45, 0x5D, 0x44, 0xFB, 0x33, 0x75, 0x21, 0x6E, 0x7F, 0x00, 0x01, 0x53, 0x00, 0x01, 0x81, 0x21, 0x4D, 0x32, 0xF3, 0x16, 0x45, 0x7D, 0x82, 0x45, 0x5D, 0x45, 0x1B, 0x33, 0x55, 0x7F, 0x00, 0x01, 0x53, 0x00, 0x01, 0x81, 0x21, 0x6D, 0x33, 0x34, 0x17, 0x45, 0x5D, 0x81, 0x45, 0x3C, 0x3C, 0x18, 0x7F, 0x00, 0x01, 0x53, 0x00, 0x01, 0x81, 0x21, 0x6E, 0x33, 0x75, 0x18, 0x45, 0x5D, 0x81, 0x44, 0xDB, 0x2A, 0xB2, 0x7F, 0x00, + 0x01, 0x52, 0x00, 0x01, 0x81, 0x21, 0x6E, 0x3B, 0x96, 0x19, 0x4D, 0x5D, 0x81, 0x44, 0xFB, 0x33, 0x55, 0x7F, 0x00, 0x01, 0x51, 0x00, 0x01, 0x81, 0x21, 0x8E, 0x3B, 0xB6, 0x1A, 0x4D, 0x5D, 0x81, 0x44, 0x9A, 0x21, 0xAF, 0x16, 0x00, 0x01, 0x83, 0x21, 0x4D, 0x2A, 0x10, 0x32, 0xD3, 0x3B, 0x96, 0x01, 0x3B, 0xF7, 0x83, 0x3B, 0x76, 0x32, 0xD3, 0x2A, 0x10, 0x21, 0x4D, 0x7F, 0x00, 0x01, 0x2F, 0x00, 0x01, 0x81, 0x21, 0x8E, 0x3B, 0xB7, 0x1A, 0x4D, 0x5D, 0x81, 0x44, 0xDB, 0x2A, 0x92, 0x11, 0x00, 0x01, 0x87, 0x21, 0x2D, 0x21, 0x8E, 0x32, 0x92, 0x3B, 0x96, 0x44, 0x79, 0x44, 0xFB, 0x45, 0x1C, 0x45, 0x3C, 0x03, 0x4D, 0x3C, 0x85, 0x45, 0x3C, 0x45, 0x1C, 0x44, 0xDB, 0x3B, 0xD7, 0x2A, 0x72, 0x21, 0x4D, 0x7F, 0x00, 0x01, 0x2C, 0x00, 0x01, 0x81, 0x21, 0x8E, 0x3B, 0xB7, 0x1A, 0x4D, 0x5D, 0x82, 0x4D, 0x3D, 0x3C, 0x38, 0x21, 0x6E, 0x0D, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x29, 0xCF, 0x33, 0x55, 0x44, 0x7A, 0x45, 0x1C, 0x01, 0x4D, 0x3C, 0x0A, 0x4D, 0x5D, 0x84, 0x4D, 0x3D, 0x4D, 0x1C, 0x44, 0xBB, 0x33, 0x35, 0x21, 0x8E, 0x7F, 0x00, 0x01, 0x2A, 0x00, 0x01, 0x81, 0x21, 0x8E, 0x3B, 0xB7, 0x1B, 0x4D, 0x5D, 0x82, 0x4D, 0x3C, 0x44, 0x38, 0x21, 0x6E, 0x0A, 0x00, 0x01, 0x85, 0x21, 0x4D, 0x32, 0x92, 0x3C, 0x18, 0x4C, 0xFC, 0x4D, 0x3C, 0x4D, 0x3D, 0x08, 0x4D, 0x5D, 0x8B, 0x4D, 0x3D, 0x44, 0xDB, 0x44, 0x39, 0x3B, 0xB7, 0x3B, 0x96, 0x3B, 0x76, 0x3B, 0x96, 0x3B, 0xF7, 0x44, 0x59, 0x44, 0x9A, 0x33, 0x14, 0x21, 0x4D, 0x7F, 0x00, 0x01, 0x28, 0x00, 0x01, 0x81, 0x21, + 0x6E, 0x3B, 0x96, 0x1C, 0x4D, 0x5D, 0x81, 0x4C, 0xFB, 0x32, 0xD3, 0x08, 0x00, 0x01, 0x84, 0x21, 0x4D, 0x32, 0xB3, 0x44, 0x79, 0x4D, 0x1C, 0x4D, 0x3D, 0x07, 0x4D, 0x5D, 0x84, 0x4D, 0x3C, 0x44, 0x59, 0x3B, 0x35, 0x2A, 0x51, 0x21, 0x8E, 0x02, 0x21, 0x4D, 0x01, 0x21, 0x2D, 0x02, 0x21, 0x4D, 0x82, 0x29, 0xAF, 0x2A, 0x72, 0x2A, 0x51, 0x7F, 0x00, 0x01, 0x28, 0x00, 0x01, 0x81, 0x21, 0x6E, 0x3B, 0x55, 0x1C, 0x4D, 0x5D, 0x82, 0x4D, 0x3D, 0x44, 0x59, 0x21, 0x8E, 0x05, 0x00, 0x01, 0x84, 0x21, 0x4D, 0x32, 0x92, 0x44, 0x59, 0x4D, 0x1C, 0x4D, 0x3D, 0x06, 0x4D, 0x5D, 0x84, 0x4D, 0x1C, 0x44, 0x18, 0x32, 0xB3, 0x29, 0xAF, 0x21, 0x4D, 0x01, 0x21, 0x2D, 0x09, 0x00, 0x01, 0x01, 0x21, 0x2D, 0x7F, 0x00, 0x01, 0x28, 0x00, 0x01, 0x81, 0x21, 0x4D, 0x33, 0x14, 0x1D, 0x4D, 0x5D, 0x82, 0x4D, 0x1C, 0x3B, 0xF8, 0x21, 0x8E, 0x02, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x29, 0xF0, 0x43, 0xF8, 0x4D, 0x1C, 0x4D, 0x3D, 0x05, 0x4D, 0x5D, 0x89, 0x4D, 0x3D, 0x44, 0xBB, 0x33, 0x35, 0x29, 0xCF, 0x21, 0x4D, 0x21, 0x2D, 0x00, 0x01, 0x21, 0x4D, 0x29, 0xCF, 0x21, 0x2D, 0x7F, 0x00, 0x01, 0x34, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x32, 0x71, 0x4D, 0x3D, 0x1D, 0x4D, 0x5D, 0x87, 0x4D, 0x3D, 0x44, 0x59, 0x29, 0xCF, 0x00, 0x01, 0x21, 0x6E, 0x3B, 0x35, 0x4C, 0xDB, 0x4D, 0x3D, 0x05, 0x4D, 0x5D, 0x84, 0x4D, 0x3D, 0x44, 0x7A, 0x32, 0xD3, 0x21, 0x6E, 0x21, 0x2D, 0x01, 0x00, 0x01, 0x83, 0x21, 0x8E, 0x32, 0xF4, 0x3B, 0xB7, 0x29, 0xF0, 0x7F, 0x00, 0x01, 0x36, 0x00, 0x01, 0x83, 0x21, 0x4D, + 0x2A, 0x31, 0x32, 0xF4, 0x3B, 0x55, 0x03, 0x3B, 0x76, 0x02, 0x3B, 0xB7, 0x85, 0x3B, 0xD7, 0x43, 0xF8, 0x44, 0x39, 0x44, 0x7A, 0x4C, 0xBB, 0x4D, 0x1C, 0x0F, 0x4D, 0x5D, 0x85, 0x4C, 0xFC, 0x3B, 0x35, 0x29, 0x8E, 0x43, 0xF8, 0x4D, 0x1C, 0x4D, 0x3D, 0x04, 0x4D, 0x5D, 0x8C, 0x4D, 0x3D, 0x44, 0x9A, 0x32, 0xB3, 0x21, 0x6E, 0x21, 0x2D, 0x00, 0x01, 0x21, 0x2D, 0x29, 0xF0, 0x3B, 0x76, 0x4C, 0xBB, 0x44, 0x18, 0x29, 0xCF, 0x21, 0x2D, 0x7F, 0x00, 0x01, 0x35, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x29, 0xF0, 0x32, 0xD3, 0x3B, 0x55, 0x03, 0x3B, 0x96, 0x86, 0x3B, 0x76, 0x3B, 0x35, 0x32, 0xF4, 0x32, 0xB3, 0x32, 0x72, 0x2A, 0x10, 0x29, 0x8E, 0x01, 0x21, 0x4D, 0x84, 0x21, 0x6E, 0x29, 0xF0, 0x32, 0xB3, 0x3B, 0x96, 0x4C, 0x9A, 0x0C, 0x4D, 0x3D, 0x81, 0x4C, 0xFC, 0x44, 0x39, 0x06, 0x4D, 0x3D, 0x87, 0x4C, 0xBB, 0x33, 0x14, 0x21, 0x6E, 0x21, 0x2D, 0x00, 0x01, 0x21, 0x4D, 0x32, 0x72, 0x43, 0xF8, 0x01, 0x4C, 0xFC, 0x81, 0x3B, 0xD7, 0x21, 0x8E, 0x7F, 0x00, 0x01, 0x36, 0x00, 0x01, 0x82, 0x21, 0x6E, 0x3B, 0x55, 0x4C, 0xFC, 0x0A, 0x4D, 0x1C, 0x01, 0x4C, 0xFC, 0x8A, 0x4C, 0xBB, 0x44, 0x39, 0x43, 0xD7, 0x3B, 0x35, 0x32, 0x92, 0x29, 0xF0, 0x21, 0x8E, 0x29, 0xF0, 0x3B, 0x14, 0x44, 0x59, 0x4D, 0x3D, 0x09, 0x55, 0x3D, 0x83, 0x4C, 0xFC, 0x43, 0xD7, 0x43, 0xF8, 0x4D, 0x1C, 0x01, 0x55, 0x3D, 0x8C, 0x4C, 0xFC, 0x3B, 0x55, 0x29, 0xAF, 0x21, 0x2D, 0x00, 0x01, 0x21, 0x6E, 0x32, 0xB3, 0x44, 0x59, 0x4D, 0x1C, 0x4D, 0x3D, 0x4C, 0xFC, 0x3B, 0x76, 0x21, 0x4D, 0x7F, 0x00, + 0x01, 0x36, 0x00, 0x01, 0x82, 0x21, 0x8E, 0x3B, 0x96, 0x55, 0x1C, 0x10, 0x55, 0x3D, 0x01, 0x4D, 0x1C, 0x87, 0x4C, 0xFC, 0x4C, 0xBB, 0x43, 0xF8, 0x3B, 0x14, 0x2A, 0x51, 0x2A, 0x10, 0x3B, 0x35, 0x4C, 0x7A, 0x08, 0x55, 0x3D, 0x85, 0x4D, 0x1C, 0x44, 0x39, 0x32, 0x51, 0x32, 0xF4, 0x3B, 0x55, 0x29, 0xF0, 0x01, 0x21, 0x2D, 0x83, 0x29, 0x8E, 0x3B, 0x35, 0x4C, 0xBB, 0x4D, 0x1C, 0x01, 0x55, 0x3D, 0x82, 0x4C, 0xDB, 0x32, 0xD3, 0x21, 0x2D, 0x7F, 0x00, 0x01, 0x36, 0x00, 0x01, 0x82, 0x29, 0x8E, 0x43, 0xD7, 0x55, 0x1C, 0x15, 0x55, 0x3D, 0x88, 0x55, 0x1D, 0x55, 0x1C, 0x4C, 0xFC, 0x4C, 0x9A, 0x3B, 0x96, 0x32, 0x92, 0x2A, 0x31, 0x3B, 0x76, 0x4C, 0xBB, 0x06, 0x55, 0x3D, 0x82, 0x55, 0x1D, 0x4C, 0x7A, 0x32, 0x72, 0x01, 0x21, 0x2D, 0x83, 0x21, 0x4D, 0x3A, 0xF4, 0x4C, 0xBB, 0x55, 0x1C, 0x02, 0x55, 0x3D, 0x82, 0x4C, 0x9B, 0x32, 0x72, 0x21, 0x2D, 0x7F, 0x00, 0x01, 0x36, 0x00, 0x01, 0x82, 0x29, 0xAF, 0x43, 0xF8, 0x55, 0x1D, 0x1A, 0x55, 0x3D, 0x86, 0x55, 0x1D, 0x4C, 0xFC, 0x4C, 0x9B, 0x3B, 0x76, 0x32, 0x51, 0x32, 0x92, 0x44, 0x19, 0x06, 0x55, 0x3D, 0x8B, 0x4C, 0xBB, 0x3A, 0xF4, 0x00, 0x01, 0x21, 0x4D, 0x32, 0x72, 0x44, 0x39, 0x55, 0x1D, 0x55, 0x3D, 0x55, 0x1D, 0x44, 0x59, 0x2A, 0x10, 0x21, 0x2D, 0x7F, 0x00, 0x01, 0x35, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x29, 0xCF, 0x44, 0x39, 0x55, 0x1D, 0x1E, 0x55, 0x3D, 0x86, 0x55, 0x1D, 0x4C, 0xDC, 0x43, 0xF8, 0x32, 0x92, 0x32, 0x31, 0x43, 0xF8, 0x55, 0x1D, 0x04, 0x55, 0x3D, 0x81, 0x4C, 0x9B, 0x32, 0x51, 0x01, + 0x2A, 0x10, 0x81, 0x21, 0x6E, 0x29, 0xCF, 0x01, 0x32, 0xB3, 0x81, 0x21, 0x8E, 0x21, 0x2D, 0x7F, 0x00, 0x01, 0x35, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x2A, 0x10, 0x4C, 0x5A, 0x55, 0x1D, 0x21, 0x55, 0x3D, 0x85, 0x55, 0x1D, 0x54, 0xDC, 0x44, 0x19, 0x32, 0x93, 0x32, 0x31, 0x43, 0xF8, 0x03, 0x55, 0x3D, 0x87, 0x55, 0x1D, 0x4C, 0x39, 0x32, 0x51, 0x43, 0x96, 0x4C, 0x7A, 0x43, 0x97, 0x32, 0x72, 0x21, 0x4D, 0x7F, 0x00, 0x01, 0x36, 0x00, 0x01, 0x83, 0x21, 0x6E, 0x3B, 0x14, 0x54, 0xDC, 0x55, 0x1D, 0x24, 0x55, 0x3D, 0x85, 0x55, 0x1D, 0x54, 0xFC, 0x4C, 0x39, 0x32, 0xB3, 0x32, 0x72, 0x4C, 0x7A, 0x02, 0x55, 0x3D, 0x88, 0x55, 0x1D, 0x44, 0x18, 0x29, 0xCF, 0x32, 0x31, 0x43, 0xF8, 0x54, 0xFC, 0x4C, 0x9A, 0x3B, 0x35, 0x29, 0xD0, 0x7F, 0x00, 0x01, 0x32, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x32, 0x31, 0x4C, 0x39, 0x55, 0x1C, 0x28, 0x55, 0x3D, 0x85, 0x55, 0x1D, 0x54, 0xDC, 0x43, 0xB7, 0x32, 0x51, 0x3B, 0x55, 0x54, 0xFC, 0x01, 0x55, 0x3D, 0x89, 0x55, 0x1C, 0x43, 0xF8, 0x29, 0x8E, 0x21, 0x6E, 0x32, 0xB3, 0x4C, 0xBB, 0x55, 0x1D, 0x54, 0xDB, 0x43, 0xB7, 0x2A, 0x11, 0x7F, 0x00, 0x01, 0x2E, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x29, 0xAF, 0x43, 0x96, 0x54, 0xFC, 0x55, 0x1D, 0x2A, 0x55, 0x3D, 0x01, 0x55, 0x1D, 0x83, 0x4C, 0x9B, 0x3B, 0x35, 0x32, 0x72, 0x4C, 0x7A, 0x01, 0x55, 0x3D, 0x85, 0x54, 0xFC, 0x43, 0xF8, 0x29, 0xAF, 0x21, 0x2D, 0x29, 0xCF, 0x43, 0xB7, 0x01, 0x55, 0x1D, 0x82, 0x54, 0xDC, 0x43, 0xD8, 0x29, 0xD0, 0x7F, 0x00, 0x01, 0x2B, 0x00, 0x01, 0x83, 0x21, + 0x4D, 0x32, 0x92, 0x54, 0x9B, 0x55, 0x1D, 0x0C, 0x55, 0x3D, 0x83, 0x55, 0x1D, 0x54, 0x9B, 0x4C, 0x39, 0x43, 0xD7, 0x06, 0x43, 0x76, 0x80, 0x43, 0x96, 0x01, 0x43, 0xB7, 0x84, 0x43, 0xF8, 0x4C, 0x19, 0x4C, 0x7A, 0x54, 0xBB, 0x55, 0x1D, 0x0E, 0x55, 0x3D, 0x84, 0x55, 0x1D, 0x54, 0xFC, 0x4C, 0x19, 0x32, 0x93, 0x43, 0xD8, 0x01, 0x55, 0x3D, 0x86, 0x55, 0x1D, 0x4C, 0x5A, 0x32, 0x11, 0x00, 0x01, 0x21, 0x6E, 0x3A, 0xF4, 0x54, 0xFC, 0x01, 0x55, 0x1D, 0x82, 0x54, 0xBB, 0x3B, 0x56, 0x21, 0x6E, 0x7F, 0x00, 0x01, 0x28, 0x00, 0x01, 0x82, 0x29, 0x8E, 0x43, 0x76, 0x54, 0xFC, 0x0C, 0x5D, 0x1D, 0x82, 0x54, 0xFC, 0x43, 0x97, 0x29, 0xF0, 0x03, 0x21, 0x4D, 0x05, 0x21, 0x2D, 0x06, 0x21, 0x4D, 0x87, 0x21, 0x6E, 0x29, 0x8E, 0x32, 0x11, 0x3A, 0xB3, 0x3B, 0x35, 0x43, 0xD8, 0x4C, 0x7A, 0x55, 0x1D, 0x09, 0x5D, 0x1D, 0x8C, 0x55, 0x1D, 0x54, 0x9B, 0x3B, 0x35, 0x43, 0x56, 0x55, 0x1D, 0x5D, 0x1D, 0x55, 0x1D, 0x4C, 0x19, 0x21, 0x4D, 0x00, 0x01, 0x21, 0x4D, 0x32, 0x72, 0x54, 0x9B, 0x01, 0x5D, 0x1D, 0x83, 0x54, 0xFC, 0x4C, 0x7A, 0x32, 0x93, 0x21, 0x2D, 0x7F, 0x00, 0x01, 0x24, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x29, 0xCF, 0x4C, 0x19, 0x54, 0xFD, 0x0C, 0x5D, 0x1D, 0x83, 0x54, 0xBB, 0x3A, 0xB3, 0x21, 0x4D, 0x21, 0x2D, 0x12, 0x00, 0x01, 0x02, 0x21, 0x2D, 0x01, 0x21, 0x4D, 0x84, 0x29, 0xAF, 0x32, 0x72, 0x43, 0x56, 0x4C, 0x39, 0x54, 0xFD, 0x07, 0x5D, 0x1D, 0x86, 0x54, 0xDC, 0x4B, 0xF8, 0x3B, 0x15, 0x54, 0xFC, 0x5D, 0x1D, 0x54, 0xDC, 0x3B, 0x15, 0x01, 0x00, 0x01, + 0x82, 0x21, 0x2D, 0x29, 0xF0, 0x4C, 0x19, 0x02, 0x5D, 0x1D, 0x82, 0x54, 0xDC, 0x43, 0x97, 0x29, 0x8E, 0x7F, 0x00, 0x01, 0x22, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x2A, 0x10, 0x4C, 0x7A, 0x0D, 0x5D, 0x1D, 0x82, 0x54, 0x7A, 0x32, 0x31, 0x21, 0x2D, 0x1A, 0x00, 0x01, 0x01, 0x21, 0x2D, 0x84, 0x21, 0x4D, 0x29, 0xAF, 0x3A, 0xD4, 0x4B, 0xF8, 0x54, 0xFC, 0x05, 0x5D, 0x1D, 0x86, 0x54, 0xFD, 0x4C, 0x5A, 0x3B, 0x35, 0x54, 0xBB, 0x5D, 0x1D, 0x54, 0xBB, 0x3A, 0xD3, 0x01, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x29, 0xAF, 0x43, 0xD8, 0x02, 0x5D, 0x1D, 0x82, 0x54, 0xFD, 0x4C, 0x5A, 0x32, 0x72, 0x7F, 0x00, 0x01, 0x20, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x29, 0xF0, 0x54, 0x5A, 0x0C, 0x5D, 0x1D, 0x83, 0x5C, 0xFD, 0x4B, 0xF9, 0x29, 0xCF, 0x21, 0x2D, 0x1F, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x21, 0x4D, 0x29, 0xAF, 0x3A, 0xF4, 0x4C, 0x5A, 0x05, 0x5D, 0x1D, 0x85, 0x54, 0x7B, 0x43, 0x56, 0x54, 0x7A, 0x5D, 0x1D, 0x54, 0x9B, 0x32, 0x93, 0x02, 0x00, 0x01, 0x81, 0x29, 0xAF, 0x43, 0xB7, 0x03, 0x5D, 0x1D, 0x82, 0x54, 0xBB, 0x43, 0x56, 0x21, 0x4D, 0x7F, 0x00, 0x01, 0x1E, 0x00, 0x01, 0x81, 0x29, 0xAF, 0x4C, 0x39, 0x0B, 0x5D, 0x1D, 0x84, 0x5C, 0xFD, 0x54, 0x5A, 0x3A, 0xB3, 0x21, 0x4D, 0x21, 0x2D, 0x23, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x21, 0x6E, 0x32, 0x31, 0x43, 0xB7, 0x5C, 0xFC, 0x03, 0x5D, 0x1D, 0x85, 0x54, 0x9B, 0x43, 0x35, 0x54, 0x7A, 0x5D, 0x1D, 0x54, 0x5A, 0x29, 0xAF, 0x02, 0x00, 0x01, 0x81, 0x29, 0x8E, 0x43, 0x56, 0x03, 0x5D, 0x1D, 0x82, 0x5C, 0xDC, 0x4B, 0xF8, 0x29, + 0xAF, 0x7F, 0x00, 0x01, 0x1C, 0x00, 0x01, 0x81, 0x29, 0x8E, 0x4B, 0xD8, 0x0A, 0x5D, 0x1D, 0x84, 0x54, 0x9B, 0x43, 0x77, 0x32, 0x31, 0x21, 0x4E, 0x21, 0x2D, 0x27, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x21, 0x4D, 0x29, 0xF0, 0x43, 0x97, 0x5C, 0xDC, 0x02, 0x5D, 0x1D, 0x85, 0x54, 0x7B, 0x3B, 0x15, 0x54, 0x7B, 0x5C, 0xFC, 0x43, 0x97, 0x21, 0x2D, 0x02, 0x00, 0x01, 0x81, 0x29, 0x8E, 0x43, 0x56, 0x03, 0x5D, 0x1D, 0x82, 0x5C, 0xFD, 0x4C, 0x39, 0x2A, 0x10, 0x7F, 0x00, 0x01, 0x1A, 0x00, 0x01, 0x82, 0x21, 0x6E, 0x43, 0x76, 0x5C, 0xFD, 0x06, 0x5D, 0x1D, 0x84, 0x5C, 0xFD, 0x54, 0x3A, 0x43, 0x35, 0x32, 0x11, 0x21, 0x6E, 0x01, 0x21, 0x2D, 0x2B, 0x00, 0x01, 0x84, 0x21, 0x0D, 0x21, 0x4D, 0x29, 0xD0, 0x43, 0x77, 0x5C, 0xDC, 0x01, 0x5D, 0x1D, 0x84, 0x54, 0x7A, 0x3B, 0x15, 0x54, 0xBC, 0x54, 0x9B, 0x3A, 0x93, 0x03, 0x00, 0x01, 0x81, 0x29, 0x8E, 0x43, 0x56, 0x04, 0x5D, 0x1D, 0x81, 0x54, 0x7B, 0x32, 0x72, 0x7F, 0x00, 0x01, 0x18, 0x00, 0x01, 0x82, 0x21, 0x6E, 0x43, 0x15, 0x5C, 0xFD, 0x04, 0x5D, 0x1D, 0x84, 0x5C, 0xDC, 0x4B, 0xF8, 0x3A, 0xD4, 0x29, 0xCF, 0x21, 0x4D, 0x01, 0x21, 0x2D, 0x30, 0x00, 0x01, 0x8A, 0x21, 0x0D, 0x21, 0x4D, 0x31, 0xF0, 0x4B, 0xD8, 0x5D, 0x1D, 0x5C, 0xFD, 0x54, 0x5A, 0x43, 0x15, 0x5C, 0xDC, 0x54, 0x5A, 0x29, 0xAF, 0x03, 0x00, 0x01, 0x81, 0x29, 0x8E, 0x43, 0x97, 0x04, 0x5D, 0x1D, 0x81, 0x54, 0x9B, 0x3A, 0xB3, 0x7F, 0x00, 0x01, 0x16, 0x00, 0x01, 0x82, 0x21, 0x4D, 0x3A, 0xF4, 0x5C, 0xFD, 0x02, 0x5D, 0x1D, 0x85, 0x5C, 0xFD, 0x54, + 0x39, 0x3A, 0xD4, 0x29, 0x8F, 0x21, 0x4D, 0x21, 0x2D, 0x36, 0x00, 0x01, 0x89, 0x21, 0x0D, 0x21, 0x6E, 0x32, 0x52, 0x54, 0x3A, 0x5C, 0xFD, 0x54, 0x5A, 0x43, 0x56, 0x5C, 0xFC, 0x4B, 0xB7, 0x21, 0x2D, 0x03, 0x00, 0x01, 0x81, 0x29, 0xAF, 0x4B, 0xB7, 0x04, 0x5D, 0x1D, 0x81, 0x54, 0x9B, 0x3A, 0xD4, 0x7F, 0x00, 0x01, 0x14, 0x00, 0x01, 0x82, 0x21, 0x4D, 0x3A, 0xD4, 0x5C, 0xDC, 0x01, 0x5D, 0x1D, 0x84, 0x5C, 0xDC, 0x43, 0x97, 0x31, 0xF0, 0x21, 0x4D, 0x21, 0x2D, 0x3B, 0x00, 0x01, 0x87, 0x21, 0x2D, 0x29, 0x8E, 0x3A, 0xF4, 0x54, 0x7B, 0x4C, 0x19, 0x4B, 0xB7, 0x54, 0x9B, 0x32, 0x72, 0x04, 0x00, 0x01, 0x81, 0x29, 0xAF, 0x4B, 0xD8, 0x04, 0x5D, 0x1D, 0x82, 0x5C, 0x9B, 0x3A, 0xF4, 0x21, 0x0D, 0x7F, 0x00, 0x01, 0x11, 0x00, 0x01, 0x88, 0x21, 0x4D, 0x3A, 0xB3, 0x5C, 0xDC, 0x5D, 0x1D, 0x5C, 0xDC, 0x43, 0x77, 0x29, 0xD0, 0x21, 0x2D, 0x21, 0x0D, 0x3F, 0x00, 0x01, 0x86, 0x21, 0x2D, 0x29, 0xCF, 0x43, 0x35, 0x4B, 0xB7, 0x54, 0x3A, 0x54, 0x19, 0x21, 0x4D, 0x03, 0x00, 0x01, 0x82, 0x21, 0x0D, 0x29, 0xCF, 0x54, 0x19, 0x04, 0x5D, 0x1D, 0x81, 0x5C, 0x9B, 0x3A, 0xD4, 0x7F, 0x00, 0x01, 0x10, 0x00, 0x01, 0x87, 0x21, 0x4D, 0x3A, 0xD4, 0x5C, 0xDC, 0x5C, 0xFD, 0x54, 0x19, 0x32, 0x31, 0x21, 0x2D, 0x21, 0x0D, 0x43, 0x00, 0x01, 0x84, 0x21, 0x4D, 0x29, 0x8E, 0x32, 0x51, 0x54, 0x7B, 0x3A, 0xD4, 0x04, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x32, 0x10, 0x5C, 0x7B, 0x04, 0x65, 0x1D, 0x81, 0x5C, 0x9B, 0x3A, 0x72, 0x7F, 0x00, 0x01, 0x07, 0x00, 0x01, 0x8D, 0x21, 0x2D, 0x29, + 0xCF, 0x32, 0x52, 0x3A, 0xD4, 0x43, 0x56, 0x4B, 0xB7, 0x43, 0x36, 0x29, 0x8E, 0x3A, 0xF4, 0x5C, 0xDC, 0x5C, 0x9B, 0x3A, 0xD4, 0x21, 0x4E, 0x21, 0x2D, 0x47, 0x00, 0x01, 0x83, 0x21, 0x6E, 0x42, 0xF4, 0x54, 0x3A, 0x29, 0x8E, 0x04, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x32, 0x52, 0x5C, 0xDC, 0x03, 0x65, 0x1D, 0x82, 0x64, 0xFD, 0x54, 0x7B, 0x32, 0x31, 0x7F, 0x00, 0x01, 0x03, 0x00, 0x01, 0x83, 0x21, 0x4D, 0x3A, 0x72, 0x4B, 0xD8, 0x5C, 0x9B, 0x01, 0x5C, 0xDC, 0x88, 0x5C, 0x9B, 0x4B, 0xB7, 0x3A, 0x72, 0x29, 0xAF, 0x43, 0x36, 0x5C, 0x9B, 0x43, 0x56, 0x29, 0xAF, 0x21, 0x2D, 0x4A, 0x00, 0x01, 0x82, 0x29, 0xAF, 0x4B, 0xD8, 0x43, 0x36, 0x05, 0x00, 0x01, 0x81, 0x21, 0x4E, 0x3A, 0xD4, 0x05, 0x64, 0xFD, 0x81, 0x54, 0x3A, 0x29, 0xF0, 0x7F, 0x00, 0x01, 0x8F, 0x21, 0x0D, 0x29, 0xAF, 0x43, 0x15, 0x5C, 0x5A, 0x5C, 0xDC, 0x64, 0xFD, 0x5C, 0x9C, 0x4B, 0x76, 0x32, 0x31, 0x29, 0x6E, 0x21, 0x4D, 0x29, 0xD0, 0x4B, 0x77, 0x43, 0x35, 0x29, 0xCF, 0x21, 0x2D, 0x4C, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x32, 0x31, 0x54, 0x39, 0x29, 0xF0, 0x05, 0x00, 0x01, 0x81, 0x29, 0x8E, 0x4B, 0x97, 0x05, 0x64, 0xFD, 0x81, 0x54, 0x19, 0x29, 0x8E, 0x7C, 0x00, 0x01, 0x88, 0x21, 0x2D, 0x31, 0xF0, 0x4B, 0x77, 0x5C, 0x9C, 0x64, 0xDD, 0x64, 0xFD, 0x5C, 0x9C, 0x43, 0x15, 0x29, 0xAF, 0x01, 0x21, 0x2D, 0x84, 0x00, 0x01, 0x21, 0x2D, 0x29, 0xD0, 0x29, 0x8E, 0x21, 0x2D, 0x4F, 0x00, 0x01, 0x83, 0x21, 0x6E, 0x42, 0xF5, 0x4B, 0x97, 0x21, 0x0D, 0x04, 0x00, 0x01, 0x82, 0x21, 0x0D, 0x29, 0xD0, + 0x5C, 0x5B, 0x04, 0x64, 0xFD, 0x82, 0x64, 0xDD, 0x4B, 0x97, 0x21, 0x2D, 0x79, 0x00, 0x01, 0x89, 0x21, 0x4D, 0x32, 0x52, 0x53, 0xD8, 0x64, 0xBC, 0x64, 0xDD, 0x64, 0xFD, 0x64, 0xBC, 0x4B, 0x77, 0x29, 0xAF, 0x21, 0x2D, 0x04, 0x00, 0x01, 0x80, 0x21, 0x2D, 0x52, 0x00, 0x01, 0x82, 0x29, 0xAF, 0x4B, 0xB8, 0x32, 0x31, 0x05, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x3A, 0x72, 0x64, 0xDD, 0x04, 0x64, 0xFD, 0x81, 0x5C, 0x9C, 0x42, 0xD4, 0x76, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x31, 0xF0, 0x43, 0x36, 0x5C, 0x5B, 0x64, 0xDD, 0x02, 0x64, 0xFD, 0x82, 0x5C, 0x7B, 0x3A, 0x72, 0x21, 0x2D, 0x20, 0x00, 0x01, 0x81, 0x21, 0x4D, 0x32, 0x10, 0x37, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x3A, 0x72, 0x4B, 0xB8, 0x06, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x4B, 0x56, 0x05, 0x64, 0xFD, 0x81, 0x5C, 0x7B, 0x32, 0x31, 0x71, 0x00, 0x01, 0x86, 0x21, 0x2D, 0x29, 0xCF, 0x3A, 0xB3, 0x4B, 0x97, 0x5C, 0x5B, 0x64, 0xBC, 0x64, 0xDD, 0x02, 0x64, 0xFD, 0x83, 0x64, 0xDD, 0x53, 0xD8, 0x29, 0xAF, 0x21, 0x2D, 0x21, 0x00, 0x01, 0x82, 0x29, 0x8F, 0x4B, 0x97, 0x3A, 0xB3, 0x37, 0x00, 0x01, 0x82, 0x29, 0x8F, 0x4B, 0x56, 0x32, 0x10, 0x06, 0x00, 0x01, 0x81, 0x29, 0xD0, 0x5C, 0x7B, 0x05, 0x64, 0xFD, 0x81, 0x54, 0x19, 0x29, 0x6E, 0x6A, 0x00, 0x01, 0x87, 0x21, 0x0D, 0x29, 0x6E, 0x31, 0xF0, 0x3A, 0x93, 0x4B, 0x56, 0x53, 0xF9, 0x5C, 0x7B, 0x64, 0xBC, 0x01, 0x64, 0xDD, 0x04, 0x64, 0xFD, 0x82, 0x64, 0x9C, 0x42, 0xF5, 0x21, 0x4D, 0x23, 0x00, 0x01, 0x83, 0x29, 0x6E, 0x4B, 0x56, 0x5C, 0x5A, 0x31, 0xF0, 0x36, + 0x00, 0x01, 0x82, 0x21, 0x2D, 0x32, 0x11, 0x43, 0x35, 0x06, 0x00, 0x01, 0x81, 0x21, 0x4D, 0x3A, 0x93, 0x05, 0x64, 0xFD, 0x81, 0x64, 0xBC, 0x4B, 0x56, 0x64, 0x00, 0x01, 0x86, 0x21, 0x4D, 0x29, 0xAF, 0x32, 0x31, 0x42, 0xD4, 0x4B, 0x56, 0x53, 0xD9, 0x5C, 0x5B, 0x01, 0x64, 0xBC, 0x02, 0x64, 0xDD, 0x06, 0x64, 0xFD, 0x83, 0x64, 0xDD, 0x53, 0xD8, 0x31, 0xF0, 0x21, 0x2D, 0x24, 0x00, 0x01, 0x84, 0x21, 0x4D, 0x42, 0xB4, 0x64, 0xDD, 0x53, 0xD8, 0x21, 0x2D, 0x36, 0x00, 0x01, 0x81, 0x21, 0x4D, 0x32, 0x11, 0x07, 0x00, 0x01, 0x81, 0x29, 0x8F, 0x53, 0xD8, 0x05, 0x64, 0xFD, 0x81, 0x5C, 0x7B, 0x32, 0x52, 0x35, 0x00, 0x01, 0x88, 0x21, 0x6E, 0x3A, 0xB4, 0x42, 0xD4, 0x3A, 0x72, 0x32, 0x11, 0x31, 0xD0, 0x29, 0x8E, 0x21, 0x4D, 0x21, 0x2D, 0x1A, 0x00, 0x01, 0x89, 0x21, 0x4D, 0x29, 0x8E, 0x31, 0xD0, 0x32, 0x31, 0x3A, 0x72, 0x3A, 0xB4, 0x43, 0x36, 0x4B, 0x97, 0x53, 0xF9, 0x5C, 0x7B, 0x02, 0x64, 0xBC, 0x02, 0x64, 0xDD, 0x0A, 0x64, 0xFD, 0x84, 0x64, 0xDD, 0x53, 0xF9, 0x3A, 0x52, 0x21, 0x4D, 0x21, 0x0D, 0x25, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x32, 0x11, 0x64, 0xFD, 0x64, 0x9C, 0x3A, 0x93, 0x37, 0x00, 0x01, 0x80, 0x21, 0x2D, 0x07, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x32, 0x11, 0x64, 0xBC, 0x04, 0x64, 0xFD, 0x82, 0x64, 0xDD, 0x54, 0x19, 0x29, 0x6E, 0x34, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x31, 0xF0, 0x53, 0xD8, 0x03, 0x64, 0xBC, 0x02, 0x64, 0x9C, 0x84, 0x5C, 0x5B, 0x5C, 0x3A, 0x5C, 0x1A, 0x53, 0xF9, 0x53, 0xD9, 0x01, 0x53, 0xB8, 0x80, 0x53, 0x97, 0x01, 0x4B, + 0x77, 0x08, 0x4B, 0x36, 0x87, 0x4B, 0x77, 0x53, 0x97, 0x53, 0xB8, 0x53, 0xF9, 0x5C, 0x1A, 0x5C, 0x3A, 0x64, 0x7C, 0x64, 0x9C, 0x02, 0x64, 0xBC, 0x01, 0x64, 0xBD, 0x02, 0x64, 0xDD, 0x0F, 0x6C, 0xFD, 0x84, 0x64, 0x9C, 0x4B, 0x77, 0x32, 0x31, 0x21, 0x4D, 0x21, 0x2D, 0x28, 0x00, 0x01, 0x84, 0x29, 0xCF, 0x64, 0x9C, 0x64, 0xDD, 0x5C, 0x1A, 0x29, 0x6E, 0x40, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x4B, 0x56, 0x05, 0x6C, 0xFD, 0x81, 0x64, 0xBC, 0x4B, 0x36, 0x35, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x29, 0x6E, 0x32, 0x31, 0x53, 0x97, 0x64, 0x9C, 0x04, 0x6C, 0xFD, 0x05, 0x6C, 0xDD, 0x0D, 0x64, 0xDD, 0x03, 0x6C, 0xDD, 0x16, 0x6C, 0xFD, 0x83, 0x64, 0xBD, 0x53, 0xB8, 0x3A, 0x73, 0x29, 0x8E, 0x01, 0x21, 0x2D, 0x12, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x29, 0x8E, 0x31, 0xD0, 0x21, 0x4D, 0x13, 0x00, 0x01, 0x84, 0x29, 0x8F, 0x5C, 0x1A, 0x6C, 0xFD, 0x64, 0x9C, 0x42, 0xB4, 0x40, 0x00, 0x01, 0x82, 0x21, 0x0D, 0x31, 0xF0, 0x64, 0x9C, 0x05, 0x6C, 0xFD, 0x81, 0x5C, 0x5B, 0x31, 0xF0, 0x36, 0x00, 0x01, 0x87, 0x21, 0x2D, 0x21, 0x4D, 0x29, 0x6E, 0x32, 0x11, 0x42, 0xF5, 0x53, 0x97, 0x5C, 0x3A, 0x64, 0x9C, 0x2E, 0x6C, 0xFD, 0x84, 0x64, 0xDD, 0x5C, 0x1A, 0x42, 0xD4, 0x31, 0xD0, 0x21, 0x2D, 0x12, 0x00, 0x01, 0x85, 0x29, 0x6E, 0x4B, 0x36, 0x64, 0x9C, 0x64, 0xBC, 0x5C, 0x3A, 0x3A, 0x72, 0x12, 0x00, 0x01, 0x85, 0x29, 0x6E, 0x53, 0x98, 0x6C, 0xFD, 0x6C, 0xDD, 0x5B, 0xF9, 0x21, 0x4D, 0x40, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x43, 0x15, 0x05, 0x6C, 0xFD, 0x82, 0x64, 0xDD, 0x53, + 0xB8, 0x21, 0x2D, 0x38, 0x00, 0x01, 0x01, 0x21, 0x2D, 0x01, 0x21, 0x4D, 0x8A, 0x21, 0x4E, 0x29, 0x6E, 0x31, 0xF0, 0x3A, 0x52, 0x42, 0xB4, 0x4B, 0x16, 0x53, 0x77, 0x53, 0xD9, 0x5C, 0x1A, 0x64, 0x7B, 0x64, 0xBD, 0x26, 0x6C, 0xDD, 0x85, 0x64, 0xBD, 0x64, 0x9C, 0x5C, 0x5B, 0x4B, 0x56, 0x3A, 0x52, 0x29, 0x6E, 0x0E, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x4B, 0x36, 0x03, 0x6C, 0xDD, 0x81, 0x64, 0x7B, 0x42, 0xB4, 0x11, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x4B, 0x56, 0x01, 0x6C, 0xDD, 0x81, 0x64, 0x7B, 0x3A, 0x32, 0x41, 0x00, 0x01, 0x81, 0x31, 0xD0, 0x64, 0x5B, 0x05, 0x6C, 0xDD, 0x81, 0x64, 0x7B, 0x3A, 0x72, 0x3E, 0x00, 0x01, 0x80, 0x21, 0x0D, 0x03, 0x21, 0x2D, 0x02, 0x21, 0x4D, 0x8A, 0x29, 0x4E, 0x29, 0x8E, 0x31, 0xD0, 0x32, 0x31, 0x3A, 0x73, 0x42, 0xD4, 0x4B, 0x16, 0x53, 0x77, 0x53, 0xD8, 0x5C, 0x1A, 0x64, 0x7C, 0x20, 0x6C, 0xDD, 0x85, 0x6C, 0xBD, 0x64, 0x9C, 0x5B, 0xD9, 0x42, 0xD4, 0x31, 0xF0, 0x21, 0x2D, 0x09, 0x00, 0x01, 0x82, 0x21, 0x0D, 0x31, 0xF0, 0x64, 0xBC, 0x04, 0x6C, 0xDD, 0x81, 0x5C, 0x3A, 0x31, 0xD0, 0x10, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x4B, 0x15, 0x01, 0x6C, 0xDD, 0x81, 0x64, 0xBC, 0x4B, 0x36, 0x37, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x29, 0x4E, 0x07, 0x00, 0x01, 0x81, 0x21, 0x4E, 0x43, 0x15, 0x06, 0x6C, 0xDD, 0x81, 0x5B, 0xF9, 0x21, 0x4E, 0x47, 0x00, 0x01, 0x80, 0x21, 0x0D, 0x04, 0x21, 0x2D, 0x02, 0x21, 0x4D, 0x8D, 0x29, 0x6E, 0x29, 0xAF, 0x31, 0xF0, 0x3A, 0x52, 0x3A, 0x93, 0x42, 0xD4, 0x4B, 0x15, 0x4B, 0x36, 0x53, 0x77, 0x53, + 0xB8, 0x5B, 0xF9, 0x5C, 0x1A, 0x64, 0x5B, 0x64, 0x9C, 0x15, 0x6C, 0xDD, 0x84, 0x6C, 0xBD, 0x64, 0x9C, 0x5C, 0x3A, 0x42, 0xF5, 0x31, 0xD0, 0x07, 0x00, 0x01, 0x81, 0x21, 0x4D, 0x42, 0xB3, 0x05, 0x6C, 0xDD, 0x81, 0x64, 0x9C, 0x42, 0xF5, 0x10, 0x00, 0x01, 0x81, 0x29, 0x4E, 0x4B, 0x15, 0x02, 0x6C, 0xDD, 0x81, 0x5C, 0x1A, 0x21, 0x4D, 0x36, 0x00, 0x01, 0x81, 0x29, 0x8E, 0x42, 0xF5, 0x08, 0x00, 0x01, 0x81, 0x31, 0xD0, 0x64, 0x7C, 0x05, 0x6C, 0xDD, 0x81, 0x64, 0x9C, 0x42, 0xD4, 0x52, 0x00, 0x01, 0x80, 0x21, 0x0D, 0x05, 0x21, 0x2D, 0x03, 0x21, 0x4D, 0x8A, 0x21, 0x4E, 0x29, 0x6E, 0x29, 0xAF, 0x32, 0x11, 0x3A, 0x52, 0x42, 0xB4, 0x4A, 0xF5, 0x4B, 0x57, 0x53, 0xD9, 0x5C, 0x1A, 0x64, 0x9C, 0x0E, 0x6C, 0xDD, 0x84, 0x6C, 0xBD, 0x64, 0x9C, 0x5B, 0xF9, 0x42, 0xB4, 0x29, 0x8E, 0x04, 0x00, 0x01, 0x81, 0x21, 0x4D, 0x42, 0xB4, 0x05, 0x6C, 0xDD, 0x81, 0x6C, 0x9C, 0x4B, 0x36, 0x10, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x4B, 0x16, 0x02, 0x6C, 0xDD, 0x81, 0x64, 0x5B, 0x32, 0x11, 0x36, 0x00, 0x01, 0x82, 0x29, 0xAF, 0x53, 0xB8, 0x32, 0x11, 0x07, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x4B, 0x36, 0x06, 0x6C, 0xDD, 0x81, 0x5C, 0x1A, 0x29, 0x6E, 0x5F, 0x00, 0x01, 0x04, 0x21, 0x2D, 0x01, 0x21, 0x4D, 0x86, 0x21, 0x4E, 0x29, 0x6E, 0x31, 0xF0, 0x3A, 0x72, 0x42, 0xF5, 0x53, 0x97, 0x64, 0x3B, 0x0B, 0x6C, 0xDD, 0x83, 0x6C, 0xBD, 0x64, 0x5B, 0x4B, 0x36, 0x31, 0xCF, 0x02, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x32, 0x11, 0x05, 0x6C, 0xDD, 0x81, 0x64, 0x9C, 0x42, 0xD4, 0x10, 0x00, + 0x01, 0x81, 0x29, 0x6E, 0x4B, 0x36, 0x02, 0x6C, 0xDD, 0x81, 0x64, 0x7C, 0x42, 0x93, 0x24, 0x00, 0x01, 0x80, 0x21, 0x2D, 0x10, 0x00, 0x01, 0x82, 0x29, 0xAF, 0x5B, 0xFA, 0x53, 0x57, 0x07, 0x00, 0x01, 0x82, 0x21, 0x0D, 0x31, 0xF0, 0x6C, 0x9C, 0x05, 0x6C, 0xDD, 0x81, 0x64, 0x9C, 0x42, 0xD4, 0x68, 0x00, 0x01, 0x80, 0x21, 0x0D, 0x01, 0x21, 0x2D, 0x01, 0x21, 0x4D, 0x84, 0x29, 0x8F, 0x3A, 0x52, 0x4B, 0x36, 0x5B, 0xFA, 0x6C, 0xBD, 0x08, 0x6C, 0xDD, 0x83, 0x6C, 0xBD, 0x64, 0x7C, 0x53, 0x97, 0x32, 0x11, 0x01, 0x00, 0x01, 0x81, 0x29, 0x8F, 0x5B, 0xB8, 0x04, 0x6C, 0xDD, 0x81, 0x64, 0x3A, 0x29, 0xAF, 0x10, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x53, 0x57, 0x02, 0x6C, 0xDD, 0x81, 0x6C, 0x9C, 0x4B, 0x36, 0x23, 0x00, 0x01, 0x80, 0x29, 0x6E, 0x01, 0x42, 0xD4, 0x80, 0x21, 0x2D, 0x0E, 0x00, 0x01, 0x83, 0x29, 0xAF, 0x64, 0x5B, 0x64, 0x3A, 0x29, 0x8F, 0x07, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x53, 0x77, 0x06, 0x6C, 0xDD, 0x81, 0x5C, 0x1A, 0x29, 0x4E, 0x6D, 0x00, 0x01, 0x01, 0x21, 0x2D, 0x85, 0x21, 0x4D, 0x29, 0x6E, 0x3A, 0x31, 0x4B, 0x16, 0x64, 0x1A, 0x6C, 0xBD, 0x06, 0x6C, 0xDD, 0x86, 0x6C, 0xBD, 0x6C, 0x7C, 0x53, 0x77, 0x29, 0xAF, 0x21, 0x2D, 0x32, 0x11, 0x6C, 0x7C, 0x02, 0x6C, 0xDD, 0x81, 0x64, 0x5B, 0x3A, 0x72, 0x11, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x53, 0x77, 0x02, 0x6C, 0xDD, 0x81, 0x6C, 0xBD, 0x53, 0xB8, 0x24, 0x00, 0x01, 0x83, 0x29, 0xAF, 0x5B, 0xB9, 0x5B, 0xB8, 0x29, 0xAF, 0x0D, 0x00, 0x01, 0x83, 0x29, 0xAF, 0x6C, 0x9C, 0x6C, 0x7C, 0x42, 0xB4, + 0x07, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x3A, 0x32, 0x06, 0x6C, 0xDD, 0x81, 0x64, 0x7C, 0x42, 0x93, 0x71, 0x00, 0x01, 0x01, 0x21, 0x2D, 0x84, 0x21, 0x4D, 0x29, 0xAF, 0x42, 0x93, 0x5B, 0xB8, 0x6C, 0xBD, 0x05, 0x6C, 0xDD, 0x89, 0x6C, 0xBD, 0x64, 0x5B, 0x4A, 0xF5, 0x29, 0x8E, 0x31, 0xD0, 0x4B, 0x36, 0x53, 0x98, 0x4B, 0x16, 0x31, 0xD0, 0x21, 0x2D, 0x11, 0x00, 0x01, 0x81, 0x29, 0x8E, 0x5B, 0xB9, 0x02, 0x6C, 0xDD, 0x81, 0x6C, 0xBD, 0x5B, 0xD9, 0x24, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x31, 0xF0, 0x64, 0x3B, 0x64, 0x1A, 0x3A, 0x31, 0x0C, 0x00, 0x01, 0x80, 0x31, 0xCF, 0x01, 0x6C, 0xBD, 0x80, 0x5B, 0xD9, 0x08, 0x00, 0x01, 0x81, 0x29, 0x8F, 0x5B, 0xF9, 0x05, 0x6C, 0xDD, 0x82, 0x6C, 0xBD, 0x5B, 0xD9, 0x21, 0x2D, 0x73, 0x00, 0x01, 0x85, 0x29, 0x4E, 0x3A, 0x31, 0x29, 0x8F, 0x29, 0xAF, 0x4A, 0xF5, 0x64, 0x1A, 0x05, 0x74, 0xDD, 0x86, 0x6C, 0xBD, 0x64, 0x1A, 0x3A, 0x52, 0x21, 0x2D, 0x21, 0x4D, 0x21, 0x2D, 0x21, 0x0D, 0x12, 0x00, 0x01, 0x81, 0x29, 0xAF, 0x64, 0x3B, 0x02, 0x74, 0xDD, 0x81, 0x6C, 0xDD, 0x5B, 0xFA, 0x25, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x3A, 0x31, 0x6C, 0x7C, 0x64, 0x3B, 0x3A, 0x52, 0x0B, 0x00, 0x01, 0x84, 0x29, 0xAF, 0x64, 0x3A, 0x74, 0xDD, 0x64, 0x3B, 0x31, 0xD0, 0x07, 0x00, 0x01, 0x81, 0x21, 0x4D, 0x42, 0xB4, 0x06, 0x74, 0xDD, 0x81, 0x64, 0x5B, 0x32, 0x11, 0x71, 0x00, 0x01, 0x8A, 0x29, 0x6E, 0x42, 0xB4, 0x5B, 0xFA, 0x4B, 0x16, 0x21, 0x2D, 0x00, 0x01, 0x21, 0x2D, 0x29, 0x6E, 0x3A, 0x32, 0x5B, 0xD9, 0x74, 0xBD, 0x03, 0x74, 0xDD, + 0x83, 0x74, 0xBD, 0x6C, 0x5B, 0x4A, 0xD5, 0x21, 0x2D, 0x14, 0x00, 0x01, 0x81, 0x31, 0xD0, 0x6C, 0x9D, 0x03, 0x74, 0xDD, 0x80, 0x63, 0xFA, 0x26, 0x00, 0x01, 0x84, 0x21, 0x4D, 0x3A, 0x72, 0x6C, 0x9C, 0x64, 0x3B, 0x3A, 0x52, 0x0A, 0x00, 0x01, 0x84, 0x29, 0x6E, 0x53, 0x36, 0x74, 0xDD, 0x6C, 0x7C, 0x42, 0xB4, 0x08, 0x00, 0x01, 0x81, 0x31, 0xD0, 0x6C, 0x7C, 0x05, 0x74, 0xDD, 0x81, 0x6C, 0x9C, 0x4B, 0x36, 0x6F, 0x00, 0x01, 0x85, 0x21, 0x4D, 0x42, 0x93, 0x64, 0x3B, 0x6C, 0x5B, 0x4A, 0xF5, 0x21, 0x4D, 0x03, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x29, 0x4E, 0x32, 0x11, 0x5B, 0x98, 0x74, 0xBD, 0x03, 0x74, 0xDD, 0x82, 0x6C, 0x7C, 0x4B, 0x36, 0x21, 0x2D, 0x12, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x3A, 0x73, 0x03, 0x74, 0xDD, 0x81, 0x74, 0xBD, 0x5B, 0xD9, 0x27, 0x00, 0x01, 0x84, 0x29, 0x4E, 0x4A, 0xD4, 0x74, 0xBD, 0x64, 0x3B, 0x3A, 0x52, 0x09, 0x00, 0x01, 0x84, 0x21, 0x4D, 0x42, 0x93, 0x74, 0xDD, 0x74, 0xBD, 0x5B, 0xB9, 0x08, 0x00, 0x01, 0x81, 0x29, 0x8E, 0x5B, 0x98, 0x06, 0x74, 0xDD, 0x81, 0x64, 0x1A, 0x29, 0x6E, 0x6C, 0x00, 0x01, 0x86, 0x21, 0x2D, 0x3A, 0x32, 0x5B, 0xF9, 0x6C, 0x9D, 0x6C, 0x7C, 0x42, 0xB4, 0x21, 0x2D, 0x06, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x21, 0x4D, 0x32, 0x11, 0x5B, 0xB8, 0x74, 0xBD, 0x02, 0x74, 0xDD, 0x82, 0x6C, 0x7C, 0x4B, 0x36, 0x21, 0x2D, 0x11, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x53, 0x57, 0x03, 0x74, 0xDD, 0x81, 0x6C, 0xBD, 0x53, 0x78, 0x28, 0x00, 0x01, 0x84, 0x29, 0x8E, 0x53, 0x77, 0x74, 0xBD, 0x64, 0x3B, 0x32, 0x11, 0x08, + 0x00, 0x01, 0x81, 0x21, 0x2D, 0x3A, 0x31, 0x01, 0x74, 0xDD, 0x81, 0x64, 0x3B, 0x29, 0xAF, 0x07, 0x00, 0x01, 0x81, 0x21, 0x4D, 0x42, 0x93, 0x06, 0x74, 0xDD, 0x81, 0x6C, 0x5B, 0x3A, 0x52, 0x6B, 0x00, 0x01, 0x86, 0x29, 0x8E, 0x53, 0x36, 0x6C, 0x9C, 0x74, 0xBD, 0x6C, 0x5B, 0x3A, 0x72, 0x21, 0x2D, 0x09, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x29, 0x4E, 0x3A, 0x52, 0x63, 0xFA, 0x02, 0x74, 0xBD, 0x81, 0x6C, 0x7C, 0x42, 0xD4, 0x11, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x6C, 0x5B, 0x03, 0x74, 0xBD, 0x81, 0x6C, 0x9C, 0x4B, 0x16, 0x29, 0x00, 0x01, 0x84, 0x31, 0xCF, 0x64, 0x1A, 0x74, 0xBD, 0x63, 0xFA, 0x29, 0xAF, 0x08, 0x00, 0x01, 0x84, 0x31, 0xD0, 0x74, 0x9D, 0x74, 0xBD, 0x6C, 0x5C, 0x42, 0x73, 0x08, 0x00, 0x01, 0x81, 0x31, 0xD0, 0x6C, 0x7C, 0x05, 0x74, 0xBD, 0x81, 0x6C, 0x9C, 0x53, 0x36, 0x69, 0x00, 0x01, 0x82, 0x21, 0x4D, 0x3A, 0x52, 0x64, 0x3B, 0x01, 0x74, 0xBD, 0x82, 0x64, 0x3B, 0x3A, 0x11, 0x21, 0x2D, 0x0C, 0x00, 0x01, 0x87, 0x21, 0x2D, 0x29, 0x6E, 0x42, 0x94, 0x6C, 0x5C, 0x74, 0xBE, 0x74, 0xBD, 0x64, 0x3B, 0x31, 0xF0, 0x0F, 0x00, 0x01, 0x82, 0x21, 0x4D, 0x42, 0x93, 0x74, 0xBD, 0x03, 0x74, 0xBE, 0x81, 0x6C, 0x5C, 0x3A, 0x52, 0x29, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x3A, 0x52, 0x01, 0x74, 0x9D, 0x81, 0x5B, 0xB9, 0x29, 0x6E, 0x07, 0x00, 0x01, 0x84, 0x29, 0x8F, 0x5B, 0xD9, 0x74, 0xBE, 0x74, 0x9D, 0x53, 0x57, 0x08, 0x00, 0x01, 0x81, 0x29, 0x8E, 0x5B, 0x98, 0x05, 0x74, 0xBE, 0x82, 0x74, 0xBD, 0x63, 0xFA, 0x21, 0x2D, 0x67, 0x00, 0x01, 0x82, 0x29, + 0x8E, 0x53, 0x57, 0x74, 0x9D, 0x01, 0x74, 0xBD, 0x82, 0x6C, 0x3B, 0x3A, 0x11, 0x21, 0x2D, 0x03, 0x00, 0x01, 0x91, 0x29, 0x4E, 0x31, 0xD0, 0x3A, 0x32, 0x42, 0x93, 0x4A, 0xF5, 0x53, 0x36, 0x53, 0x57, 0x5B, 0x98, 0x5B, 0xB9, 0x5B, 0xD9, 0x5B, 0xB9, 0x53, 0x57, 0x3A, 0x11, 0x31, 0xAF, 0x53, 0x57, 0x74, 0xBD, 0x74, 0x9D, 0x53, 0x78, 0x0F, 0x00, 0x01, 0x81, 0x29, 0x8F, 0x5B, 0xD9, 0x04, 0x74, 0xBE, 0x81, 0x64, 0x3B, 0x29, 0x8F, 0x2A, 0x00, 0x01, 0x85, 0x29, 0x6E, 0x53, 0x36, 0x74, 0xBE, 0x6C, 0x9D, 0x53, 0x36, 0x21, 0x0D, 0x06, 0x00, 0x01, 0x85, 0x21, 0x4D, 0x4A, 0xD4, 0x74, 0xBE, 0x74, 0xBD, 0x63, 0xFA, 0x21, 0x2D, 0x07, 0x00, 0x01, 0x81, 0x21, 0x4D, 0x4A, 0xD5, 0x06, 0x74, 0xBE, 0x81, 0x6C, 0x3B, 0x31, 0xD0, 0x65, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x31, 0xD0, 0x63, 0xDA, 0x74, 0x9D, 0x01, 0x74, 0xBE, 0x89, 0x6C, 0x7C, 0x4A, 0xD4, 0x29, 0xAF, 0x3A, 0x11, 0x42, 0x94, 0x53, 0x36, 0x5B, 0xB9, 0x6C, 0x3B, 0x6C, 0x7C, 0x74, 0x7D, 0x03, 0x74, 0x9D, 0x8C, 0x6C, 0x7C, 0x63, 0xDA, 0x53, 0x36, 0x42, 0x73, 0x31, 0xAF, 0x21, 0x4D, 0x21, 0x2D, 0x00, 0x01, 0x29, 0x4D, 0x3A, 0x32, 0x63, 0xFA, 0x64, 0x1A, 0x29, 0x4E, 0x0D, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x42, 0x73, 0x74, 0xBD, 0x03, 0x74, 0xBE, 0x81, 0x74, 0x9D, 0x5B, 0x98, 0x2C, 0x00, 0x01, 0x84, 0x31, 0xD0, 0x6C, 0x3B, 0x74, 0xBD, 0x6C, 0x5C, 0x42, 0x73, 0x06, 0x00, 0x01, 0x85, 0x21, 0x0D, 0x31, 0xF1, 0x74, 0xBD, 0x74, 0xBE, 0x6C, 0x3B, 0x31, 0xD0, 0x07, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x3A, + 0x11, 0x74, 0xBD, 0x05, 0x74, 0xBE, 0x81, 0x6C, 0x5C, 0x42, 0x93, 0x64, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x42, 0x73, 0x6C, 0x5C, 0x74, 0xBD, 0x02, 0x74, 0xBE, 0x82, 0x74, 0xBD, 0x74, 0x9D, 0x74, 0x7C, 0x02, 0x74, 0x9D, 0x01, 0x74, 0xBD, 0x87, 0x74, 0xBE, 0x74, 0xBD, 0x74, 0x7C, 0x5B, 0x98, 0x4A, 0xD4, 0x32, 0x11, 0x29, 0x6E, 0x21, 0x4D, 0x01, 0x21, 0x2D, 0x80, 0x21, 0x0D, 0x03, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x29, 0x6E, 0x31, 0xD0, 0x21, 0x2D, 0x0C, 0x00, 0x01, 0x82, 0x21, 0x0D, 0x31, 0xD0, 0x6C, 0x3B, 0x04, 0x74, 0xBE, 0x81, 0x6C, 0x5C, 0x3A, 0x52, 0x2C, 0x00, 0x01, 0x85, 0x29, 0x4E, 0x4A, 0xF5, 0x74, 0xBE, 0x74, 0xBD, 0x64, 0x1A, 0x31, 0xAF, 0x06, 0x00, 0x01, 0x84, 0x31, 0xAF, 0x6C, 0x5C, 0x74, 0xBE, 0x6C, 0x5C, 0x3A, 0x52, 0x08, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x6C, 0x3B, 0x05, 0x74, 0xBE, 0x81, 0x74, 0x9D, 0x53, 0x37, 0x63, 0x00, 0x01, 0x83, 0x29, 0x4E, 0x4A, 0xD5, 0x74, 0x9D, 0x74, 0xBD, 0x09, 0x74, 0xBE, 0x85, 0x74, 0x9D, 0x64, 0x1A, 0x4A, 0xF5, 0x3A, 0x11, 0x29, 0x6E, 0x21, 0x4D, 0x01, 0x21, 0x2D, 0x0A, 0x00, 0x01, 0x80, 0x21, 0x0D, 0x0D, 0x00, 0x01, 0x82, 0x31, 0xAF, 0x63, 0xDA, 0x74, 0xBD, 0x03, 0x74, 0xBE, 0x82, 0x74, 0xBD, 0x63, 0xD9, 0x21, 0x4D, 0x2D, 0x00, 0x01, 0x85, 0x31, 0xD0, 0x74, 0x7C, 0x74, 0xBE, 0x74, 0x9D, 0x5B, 0x98, 0x21, 0x2D, 0x05, 0x00, 0x01, 0x84, 0x29, 0x8F, 0x63, 0xD9, 0x74, 0xBE, 0x74, 0x7C, 0x4A, 0xF5, 0x08, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x5B, 0x78, 0x05, 0x74, 0xBE, 0x81, 0x74, 0xBD, 0x63, + 0xD9, 0x62, 0x00, 0x01, 0x82, 0x29, 0x6E, 0x53, 0x16, 0x74, 0x9D, 0x08, 0x74, 0xBE, 0x84, 0x74, 0x9D, 0x6C, 0x1B, 0x53, 0x16, 0x31, 0xF1, 0x21, 0x4D, 0x01, 0x21, 0x2D, 0x1B, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x31, 0xF1, 0x63, 0xFA, 0x74, 0x9D, 0x04, 0x74, 0xBE, 0x81, 0x6C, 0x5C, 0x3A, 0x52, 0x2E, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x53, 0x57, 0x01, 0x74, 0xBE, 0x81, 0x6C, 0x5C, 0x42, 0x93, 0x05, 0x00, 0x01, 0x84, 0x29, 0x6E, 0x53, 0x16, 0x74, 0xBE, 0x74, 0x9D, 0x5B, 0x77, 0x08, 0x00, 0x01, 0x81, 0x29, 0x4E, 0x4A, 0xD5, 0x06, 0x74, 0xBE, 0x81, 0x6C, 0x1B, 0x29, 0x6E, 0x60, 0x00, 0x01, 0x82, 0x29, 0x8F, 0x5B, 0x78, 0x74, 0x9D, 0x06, 0x7C, 0xBE, 0x84, 0x7C, 0xBD, 0x74, 0x7C, 0x53, 0x37, 0x39, 0xF1, 0x21, 0x4D, 0x01, 0x21, 0x2D, 0x1D, 0x00, 0x01, 0x83, 0x29, 0x6E, 0x4A, 0xD5, 0x74, 0x5C, 0x74, 0xBD, 0x04, 0x7C, 0xBE, 0x82, 0x74, 0x9D, 0x53, 0x57, 0x21, 0x2D, 0x2E, 0x00, 0x01, 0x86, 0x21, 0x2D, 0x3A, 0x32, 0x7C, 0xBD, 0x7C, 0xBE, 0x74, 0xBD, 0x63, 0xFA, 0x29, 0x8E, 0x04, 0x00, 0x01, 0x85, 0x21, 0x2D, 0x3A, 0x32, 0x7C, 0xBE, 0x74, 0xBD, 0x63, 0xFA, 0x21, 0x2D, 0x07, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x3A, 0x52, 0x06, 0x7C, 0xBE, 0x81, 0x6C, 0x3B, 0x31, 0xF1, 0x5F, 0x00, 0x01, 0x82, 0x29, 0x8F, 0x5B, 0x98, 0x74, 0x9D, 0x05, 0x7C, 0xBE, 0x83, 0x74, 0x9D, 0x6C, 0x1B, 0x4A, 0xB4, 0x29, 0x8F, 0x01, 0x21, 0x2D, 0x1D, 0x00, 0x01, 0x85, 0x21, 0x0D, 0x29, 0x8E, 0x4A, 0xD5, 0x6C, 0x1B, 0x74, 0x9D, 0x7C, 0xBD, 0x04, 0x7C, 0xBE, 0x82, 0x7C, 0x9D, + 0x63, 0xDA, 0x29, 0x8F, 0x30, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x6C, 0x1B, 0x01, 0x7C, 0xBE, 0x81, 0x74, 0x7C, 0x52, 0xF6, 0x05, 0x00, 0x01, 0x84, 0x31, 0xD0, 0x74, 0x9D, 0x7C, 0xBE, 0x6C, 0x1B, 0x29, 0x8F, 0x08, 0x00, 0x01, 0x81, 0x31, 0xD0, 0x74, 0x9D, 0x05, 0x7C, 0xBE, 0x81, 0x74, 0x5C, 0x42, 0x73, 0x5E, 0x00, 0x01, 0x82, 0x29, 0x8E, 0x5B, 0x78, 0x74, 0x9D, 0x04, 0x7C, 0xBE, 0x84, 0x74, 0x9D, 0x63, 0xD9, 0x42, 0x73, 0x29, 0x4E, 0x21, 0x2D, 0x01, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x31, 0xD0, 0x4A, 0xF5, 0x5B, 0x78, 0x63, 0xD9, 0x03, 0x6B, 0xFA, 0x99, 0x63, 0xFA, 0x63, 0xB9, 0x5B, 0x78, 0x53, 0x57, 0x53, 0x16, 0x4A, 0xD5, 0x4A, 0xB4, 0x42, 0x73, 0x3A, 0x32, 0x3A, 0x11, 0x31, 0xD0, 0x31, 0xAF, 0x29, 0x8E, 0x29, 0x6E, 0x29, 0x4E, 0x21, 0x4D, 0x29, 0x4E, 0x29, 0x6E, 0x29, 0x8F, 0x31, 0xD0, 0x3A, 0x52, 0x4A, 0xD5, 0x63, 0x99, 0x74, 0x5C, 0x74, 0x9D, 0x7C, 0x9D, 0x05, 0x7C, 0xBE, 0x82, 0x7C, 0x9D, 0x6B, 0xFA, 0x31, 0xD0, 0x31, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x53, 0x16, 0x01, 0x7C, 0xBE, 0x82, 0x7C, 0xBD, 0x6C, 0x1B, 0x29, 0x8F, 0x04, 0x00, 0x01, 0x84, 0x31, 0xAF, 0x6C, 0x3B, 0x7C, 0xBE, 0x6C, 0x3B, 0x3A, 0x11, 0x08, 0x00, 0x01, 0x81, 0x29, 0x8F, 0x6B, 0xFA, 0x05, 0x7C, 0xBE, 0x81, 0x74, 0x5C, 0x4A, 0xD4, 0x5D, 0x00, 0x01, 0x82, 0x29, 0x8F, 0x5B, 0x98, 0x7C, 0x9D, 0x03, 0x7C, 0xBE, 0x84, 0x7C, 0x9D, 0x63, 0xD9, 0x3A, 0x31, 0x21, 0x4D, 0x21, 0x2D, 0x02, 0x00, 0x01, 0x83, 0x21, 0x4D, 0x42, 0x52, 0x63, 0xB9, 0x6C, 0x3B, 0x09, 0x7C, + 0x9D, 0x02, 0x74, 0x9D, 0x04, 0x74, 0x7D, 0x06, 0x74, 0x7C, 0x01, 0x74, 0x7D, 0x81, 0x74, 0x9D, 0x7C, 0x9D, 0x07, 0x7C, 0xBE, 0x83, 0x7C, 0x9D, 0x6C, 0x1B, 0x3A, 0x11, 0x21, 0x0D, 0x31, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x3A, 0x32, 0x7C, 0xBD, 0x01, 0x7C, 0xBE, 0x81, 0x74, 0x7C, 0x52, 0xF5, 0x04, 0x00, 0x01, 0x84, 0x29, 0x8F, 0x6B, 0xFA, 0x7C, 0xBE, 0x74, 0x5C, 0x42, 0x73, 0x08, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x5B, 0x57, 0x05, 0x7C, 0xBE, 0x81, 0x74, 0x7D, 0x53, 0x16, 0x5C, 0x00, 0x01, 0x82, 0x29, 0x6E, 0x5B, 0x57, 0x7C, 0x9D, 0x02, 0x7C, 0xBE, 0x84, 0x7C, 0x9D, 0x6C, 0x1B, 0x42, 0x73, 0x29, 0x4D, 0x21, 0x2D, 0x05, 0x00, 0x01, 0x88, 0x21, 0x2D, 0x21, 0x4D, 0x29, 0x4E, 0x29, 0x8F, 0x3A, 0x11, 0x4A, 0xB4, 0x5B, 0x57, 0x6C, 0x1B, 0x7C, 0x9D, 0x1D, 0x7C, 0xBE, 0x8B, 0x7C, 0x9D, 0x63, 0xDA, 0x39, 0xF1, 0x3A, 0x31, 0x4A, 0xD5, 0x53, 0x16, 0x52, 0xF6, 0x4A, 0xB4, 0x31, 0xF0, 0x21, 0x2D, 0x31, 0xAF, 0x4A, 0xB4, 0x01, 0x53, 0x16, 0x82, 0x4A, 0xF5, 0x3A, 0x32, 0x21, 0x2D, 0x26, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x6C, 0x3B, 0x01, 0x7C, 0xBE, 0x82, 0x7C, 0x9D, 0x6B, 0xFA, 0x29, 0x6E, 0x03, 0x00, 0x01, 0x84, 0x29, 0x6E, 0x53, 0x37, 0x7C, 0xBE, 0x74, 0x5C, 0x4A, 0xD4, 0x08, 0x00, 0x01, 0x81, 0x29, 0x4D, 0x4A, 0xB4, 0x05, 0x7C, 0xBE, 0x81, 0x7C, 0x9D, 0x5B, 0x78, 0x5B, 0x00, 0x01, 0x82, 0x29, 0x4D, 0x4A, 0xD4, 0x7C, 0x9D, 0x02, 0x7C, 0x9E, 0x83, 0x74, 0x7D, 0x5B, 0x57, 0x29, 0x8F, 0x21, 0x2D, 0x0B, 0x00, 0x01, 0x02, 0x21, 0x2D, 0x85, 0x29, + 0x4D, 0x29, 0x8F, 0x42, 0x73, 0x5B, 0x57, 0x6C, 0x1B, 0x7C, 0x9D, 0x18, 0x7C, 0x9E, 0x84, 0x7C, 0x7D, 0x63, 0x98, 0x31, 0xAF, 0x3A, 0x32, 0x74, 0x5C, 0x02, 0x7C, 0x7D, 0x84, 0x74, 0x5C, 0x5B, 0x37, 0x21, 0x2D, 0x42, 0x52, 0x74, 0x5C, 0x01, 0x7C, 0x9D, 0x83, 0x7C, 0x7D, 0x74, 0x5C, 0x5B, 0x78, 0x29, 0x6E, 0x0D, 0x00, 0x01, 0x85, 0x21, 0x2D, 0x29, 0x6E, 0x31, 0xF0, 0x3A, 0x32, 0x42, 0x73, 0x4A, 0xB4, 0x02, 0x4A, 0xD5, 0x86, 0x4A, 0xB4, 0x42, 0x93, 0x42, 0x53, 0x3A, 0x32, 0x3A, 0x11, 0x31, 0xD0, 0x29, 0x6E, 0x07, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x5B, 0x78, 0x02, 0x7C, 0x9E, 0x81, 0x74, 0x5C, 0x42, 0x93, 0x03, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x3A, 0x32, 0x7C, 0x9D, 0x74, 0x7D, 0x53, 0x16, 0x08, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x3A, 0x32, 0x05, 0x7C, 0x9E, 0x81, 0x7C, 0x9D, 0x63, 0xD9, 0x5A, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x42, 0x73, 0x74, 0x7D, 0x01, 0x7C, 0x9E, 0x83, 0x7C, 0x9D, 0x6C, 0x1B, 0x42, 0x52, 0x21, 0x2D, 0x12, 0x00, 0x01, 0x01, 0x21, 0x2D, 0x84, 0x29, 0x4E, 0x31, 0xD0, 0x4A, 0xB4, 0x63, 0xB9, 0x7C, 0x7D, 0x14, 0x7C, 0x9E, 0x84, 0x74, 0x5C, 0x4A, 0xD5, 0x29, 0x4D, 0x29, 0x8F, 0x63, 0x99, 0x03, 0x7C, 0x9E, 0x85, 0x74, 0x5C, 0x4A, 0xD5, 0x00, 0x01, 0x21, 0x4D, 0x42, 0x53, 0x7C, 0x9D, 0x02, 0x7C, 0x9E, 0x82, 0x7C, 0x7D, 0x5B, 0x78, 0x21, 0x2D, 0x06, 0x00, 0x01, 0x88, 0x29, 0x4E, 0x39, 0xF1, 0x42, 0x73, 0x52, 0xF5, 0x5B, 0x58, 0x6B, 0xDA, 0x74, 0x3C, 0x74, 0x5D, 0x74, 0x7D, 0x09, 0x7C, 0x7D, 0x01, 0x74, 0x7D, 0x8A, 0x74, + 0x5C, 0x74, 0x3C, 0x6B, 0xDA, 0x5B, 0x78, 0x52, 0xF6, 0x42, 0x73, 0x31, 0xD0, 0x21, 0x2D, 0x00, 0x01, 0x29, 0x4D, 0x4A, 0xD5, 0x02, 0x7C, 0x9E, 0x82, 0x7C, 0x9D, 0x63, 0x99, 0x21, 0x2D, 0x03, 0x00, 0x01, 0x83, 0x31, 0xAF, 0x74, 0x5C, 0x7C, 0x7D, 0x5B, 0x78, 0x09, 0x00, 0x01, 0x81, 0x31, 0xD0, 0x7C, 0x7D, 0x05, 0x7C, 0x9E, 0x81, 0x6B, 0xFA, 0x21, 0x2D, 0x58, 0x00, 0x01, 0x82, 0x21, 0x0D, 0x31, 0xD0, 0x74, 0x3B, 0x01, 0x7C, 0x9E, 0x83, 0x7C, 0x7D, 0x63, 0x78, 0x31, 0xAF, 0x21, 0x2D, 0x17, 0x00, 0x01, 0x85, 0x21, 0x2D, 0x21, 0x4D, 0x31, 0xAF, 0x4A, 0x94, 0x5B, 0x78, 0x74, 0x5C, 0x0F, 0x7C, 0x9E, 0x82, 0x7C, 0x7D, 0x5B, 0x57, 0x31, 0xB0, 0x01, 0x21, 0x2D, 0x81, 0x3A, 0x32, 0x7C, 0x9D, 0x03, 0x7C, 0x9E, 0x81, 0x74, 0x3C, 0x3A, 0x32, 0x01, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x74, 0x5C, 0x03, 0x7C, 0x9E, 0x81, 0x74, 0x1B, 0x39, 0xF0, 0x02, 0x00, 0x01, 0x84, 0x29, 0x4E, 0x3A, 0x32, 0x53, 0x16, 0x6B, 0xDA, 0x74, 0x5C, 0x02, 0x7C, 0x7D, 0x01, 0x7C, 0x9D, 0x10, 0x7C, 0x9E, 0x01, 0x7C, 0x9D, 0x01, 0x7C, 0x7D, 0x84, 0x74, 0x7D, 0x74, 0x3C, 0x5B, 0x58, 0x4A, 0x94, 0x52, 0xF5, 0x03, 0x7C, 0x9E, 0x81, 0x74, 0x1B, 0x31, 0xF0, 0x03, 0x00, 0x01, 0x83, 0x29, 0x8F, 0x6B, 0xDA, 0x7C, 0x9E, 0x6B, 0xDA, 0x09, 0x00, 0x01, 0x81, 0x31, 0x8F, 0x6B, 0xFB, 0x05, 0x7C, 0x9E, 0x81, 0x6C, 0x1B, 0x29, 0x8F, 0x58, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x63, 0x78, 0x01, 0x7C, 0x9E, 0x82, 0x74, 0x5C, 0x52, 0xD5, 0x29, 0x4D, 0x1C, 0x00, 0x01, 0x01, 0x21, 0x2D, 0x84, + 0x29, 0x6E, 0x39, 0xF1, 0x52, 0xD5, 0x63, 0xB9, 0x74, 0x5C, 0x08, 0x7C, 0x9E, 0x84, 0x7C, 0x9D, 0x6C, 0x1B, 0x52, 0xF5, 0x31, 0xAF, 0x21, 0x2D, 0x01, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x5B, 0x57, 0x04, 0x7C, 0x9E, 0x81, 0x6C, 0x1B, 0x29, 0x6E, 0x01, 0x00, 0x01, 0x81, 0x31, 0xD0, 0x7C, 0x7D, 0x03, 0x7C, 0x9E, 0x86, 0x74, 0x3C, 0x42, 0x53, 0x00, 0x01, 0x29, 0x6E, 0x5B, 0x37, 0x74, 0x3C, 0x7C, 0x7D, 0x01, 0x7C, 0x9D, 0x1C, 0x7C, 0x9E, 0x80, 0x7C, 0x9D, 0x01, 0x7C, 0x7D, 0x03, 0x7C, 0x9E, 0x81, 0x74, 0x5C, 0x4A, 0xD5, 0x03, 0x00, 0x01, 0x84, 0x29, 0x6E, 0x5B, 0x57, 0x7C, 0x9E, 0x6B, 0xFB, 0x29, 0x4E, 0x08, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x63, 0x78, 0x05, 0x7C, 0x9E, 0x81, 0x74, 0x1B, 0x31, 0xF0, 0x57, 0x00, 0x01, 0x81, 0x21, 0x4D, 0x4A, 0x93, 0x01, 0x7C, 0x9D, 0x82, 0x6B, 0xFB, 0x3A, 0x11, 0x21, 0x2D, 0x20, 0x00, 0x01, 0x01, 0x21, 0x2D, 0x8D, 0x21, 0x4D, 0x29, 0x4E, 0x29, 0x8F, 0x3A, 0x11, 0x4A, 0xB4, 0x53, 0x16, 0x5B, 0x57, 0x5B, 0x78, 0x5B, 0x57, 0x52, 0xD5, 0x42, 0x52, 0x31, 0x8F, 0x29, 0x4D, 0x21, 0x2D, 0x03, 0x00, 0x01, 0x81, 0x31, 0xD0, 0x7C, 0x5C, 0x03, 0x7C, 0x9E, 0x81, 0x7C, 0x7D, 0x63, 0x78, 0x01, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x3A, 0x32, 0x04, 0x7C, 0x9E, 0x8E, 0x74, 0x3C, 0x3A, 0x32, 0x00, 0x01, 0x29, 0x6E, 0x42, 0x73, 0x4A, 0xB4, 0x52, 0xF6, 0x5B, 0x16, 0x5B, 0x57, 0x63, 0x98, 0x63, 0xB9, 0x6B, 0xDA, 0x6B, 0xFB, 0x74, 0x1B, 0x74, 0x3C, 0x01, 0x7C, 0x7D, 0x1B, 0x7C, 0x9E, 0x82, 0x7C, 0x9D, 0x63, 0xB9, 0x21, 0x2D, + 0x02, 0x00, 0x01, 0x84, 0x29, 0x4D, 0x4A, 0xB4, 0x7C, 0x9E, 0x74, 0x1B, 0x31, 0xAF, 0x08, 0x00, 0x01, 0x81, 0x29, 0x4E, 0x52, 0xF6, 0x05, 0x7C, 0x9E, 0x81, 0x74, 0x3B, 0x3A, 0x11, 0x57, 0x00, 0x01, 0x85, 0x29, 0x8F, 0x6B, 0xFA, 0x7C, 0x7D, 0x6B, 0xB9, 0x31, 0xB0, 0x21, 0x2D, 0x26, 0x00, 0x01, 0x07, 0x21, 0x2D, 0x05, 0x00, 0x01, 0x81, 0x21, 0x4D, 0x4A, 0x94, 0x04, 0x7C, 0x9E, 0x81, 0x74, 0x5C, 0x4A, 0xB4, 0x01, 0x00, 0x01, 0x81, 0x29, 0x4E, 0x52, 0xD5, 0x04, 0x7C, 0x9E, 0x81, 0x6B, 0xFB, 0x29, 0x6E, 0x01, 0x00, 0x01, 0x04, 0x21, 0x2D, 0x03, 0x21, 0x4D, 0x01, 0x29, 0x4D, 0x01, 0x29, 0x4E, 0x87, 0x29, 0x6E, 0x31, 0x8F, 0x39, 0xF1, 0x42, 0x52, 0x52, 0xD5, 0x63, 0x78, 0x74, 0x1B, 0x7C, 0x9D, 0x14, 0x7C, 0x9E, 0x81, 0x74, 0x1B, 0x31, 0xD0, 0x02, 0x00, 0x01, 0x84, 0x21, 0x0D, 0x31, 0xD0, 0x7C, 0x7D, 0x74, 0x1B, 0x39, 0xF0, 0x08, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x42, 0x73, 0x05, 0x7C, 0x9E, 0x81, 0x74, 0x3C, 0x3A, 0x11, 0x56, 0x00, 0x01, 0x85, 0x21, 0x2D, 0x4A, 0x93, 0x7C, 0x7D, 0x63, 0x78, 0x29, 0x6E, 0x21, 0x0D, 0x35, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x63, 0x78, 0x04, 0x84, 0x9E, 0x81, 0x74, 0x1B, 0x39, 0xF1, 0x01, 0x00, 0x01, 0x81, 0x29, 0x8E, 0x63, 0x99, 0x03, 0x84, 0x9E, 0x81, 0x7C, 0x5D, 0x52, 0xF6, 0x11, 0x00, 0x01, 0x80, 0x21, 0x0D, 0x01, 0x21, 0x2D, 0x87, 0x21, 0x4D, 0x29, 0x4E, 0x29, 0x8F, 0x3A, 0x11, 0x4A, 0xD5, 0x63, 0x78, 0x74, 0x1B, 0x7C, 0x9E, 0x0F, 0x84, 0x9E, 0x81, 0x74, 0x3C, 0x4A, 0x93, 0x03, 0x00, 0x01, 0x83, + 0x29, 0x8F, 0x63, 0x99, 0x74, 0x3C, 0x3A, 0x32, 0x08, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x3A, 0x11, 0x05, 0x84, 0x9E, 0x81, 0x74, 0x3C, 0x42, 0x32, 0x57, 0x00, 0x01, 0x02, 0x21, 0x2D, 0x37, 0x00, 0x01, 0x81, 0x29, 0x8F, 0x7C, 0x3C, 0x04, 0x84, 0x9E, 0x81, 0x6B, 0xDA, 0x21, 0x2D, 0x01, 0x00, 0x01, 0x81, 0x31, 0xB0, 0x7C, 0x5C, 0x02, 0x84, 0x9E, 0x82, 0x84, 0x7D, 0x6B, 0xBA, 0x29, 0x6E, 0x17, 0x00, 0x01, 0x02, 0x21, 0x2D, 0x84, 0x29, 0x4E, 0x31, 0xAF, 0x42, 0x73, 0x5B, 0x37, 0x74, 0x1B, 0x0C, 0x84, 0x9E, 0x81, 0x7C, 0x7D, 0x5B, 0x37, 0x03, 0x00, 0x01, 0x83, 0x29, 0x4D, 0x4A, 0xB4, 0x74, 0x3C, 0x42, 0x53, 0x09, 0x00, 0x01, 0x81, 0x31, 0xB0, 0x7C, 0x7D, 0x04, 0x84, 0x9E, 0x81, 0x74, 0x3C, 0x42, 0x53, 0x7F, 0x00, 0x01, 0x12, 0x00, 0x01, 0x80, 0x3A, 0x11, 0x04, 0x84, 0x9E, 0x81, 0x7C, 0x7D, 0x5B, 0x37, 0x01, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x42, 0x73, 0x03, 0x84, 0x9E, 0x81, 0x74, 0x3C, 0x39, 0xF1, 0x1D, 0x00, 0x01, 0x01, 0x21, 0x2D, 0x83, 0x29, 0x6E, 0x39, 0xF1, 0x5B, 0x57, 0x7C, 0x5D, 0x0A, 0x84, 0x9E, 0x81, 0x6B, 0xDA, 0x21, 0x2D, 0x02, 0x00, 0x01, 0x83, 0x21, 0x0D, 0x39, 0xF0, 0x74, 0x3C, 0x4A, 0x94, 0x09, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x74, 0x3C, 0x04, 0x84, 0x9E, 0x81, 0x74, 0x3C, 0x42, 0x73, 0x57, 0x00, 0x01, 0x80, 0x21, 0x0D, 0x39, 0x00, 0x01, 0x80, 0x6B, 0xBA, 0x04, 0x84, 0x9E, 0x81, 0x7C, 0x3C, 0x42, 0x53, 0x01, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x63, 0x58, 0x02, 0x84, 0x9E, 0x81, 0x7C, 0x5D, 0x4A, 0x94, 0x21, 0x00, 0x01, + 0x84, 0x21, 0x2D, 0x21, 0x4D, 0x31, 0xAF, 0x52, 0xF5, 0x74, 0x3C, 0x08, 0x84, 0x9E, 0x81, 0x74, 0x1B, 0x31, 0x8F, 0x03, 0x00, 0x01, 0x82, 0x31, 0x8F, 0x6B, 0x99, 0x52, 0xD5, 0x09, 0x00, 0x01, 0x81, 0x31, 0x8F, 0x6B, 0xDA, 0x04, 0x84, 0x9E, 0x81, 0x7C, 0x3C, 0x4A, 0x73, 0x48, 0x00, 0x01, 0x28, 0x21, 0x2D, 0x0C, 0x21, 0x2E, 0x81, 0x21, 0x2D, 0x21, 0x2E, 0x03, 0x21, 0x2D, 0x80, 0x21, 0x0D, 0x01, 0x21, 0x2D, 0x03, 0x21, 0x0D, 0x80, 0x00, 0x01, 0x03, 0x21, 0x0D, 0x82, 0x21, 0x2D, 0x29, 0x8F, 0x84, 0x7D, 0x04, 0x84, 0x9E, 0x81, 0x74, 0x1C, 0x29, 0x6F, 0x01, 0x21, 0x0D, 0x81, 0x42, 0x73, 0x7C, 0x5D, 0x01, 0x84, 0x9E, 0x86, 0x84, 0x7E, 0x63, 0x57, 0x39, 0xEF, 0x29, 0x6D, 0x29, 0x4D, 0x29, 0x6D, 0x29, 0x6C, 0x01, 0x29, 0x4C, 0x80, 0x29, 0x6C, 0x01, 0x29, 0x4C, 0x80, 0x29, 0x6C, 0x06, 0x29, 0x6D, 0x80, 0x29, 0x4D, 0x01, 0x21, 0x2D, 0x03, 0x21, 0x0D, 0x80, 0x21, 0x2D, 0x01, 0x21, 0x0D, 0x05, 0x00, 0x01, 0x81, 0x21, 0x0D, 0x21, 0x2D, 0x01, 0x21, 0x0D, 0x82, 0x29, 0x4E, 0x42, 0x32, 0x6B, 0x99, 0x07, 0x84, 0x9E, 0x81, 0x7C, 0x1C, 0x42, 0x32, 0x03, 0x00, 0x01, 0x82, 0x29, 0x6E, 0x52, 0xF5, 0x52, 0xF6, 0x09, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x63, 0x78, 0x04, 0x84, 0x9E, 0x81, 0x7C, 0x3C, 0x4A, 0x94, 0x1D, 0x00, 0x01, 0x83, 0x18, 0xEB, 0x19, 0x0D, 0x21, 0x71, 0x21, 0xB4, 0x03, 0x21, 0xD6, 0x04, 0x21, 0xD7, 0x04, 0x21, 0xF8, 0x58, 0x21, 0xF9, 0x02, 0x22, 0x19, 0x05, 0x22, 0x1A, 0x80, 0x63, 0xDD, 0x05, 0x84, 0x9E, 0x84, 0x63, 0xBC, 0x22, + 0x39, 0x2A, 0x59, 0x4B, 0x1B, 0x7C, 0x7E, 0x02, 0x84, 0x9E, 0x83, 0x5B, 0x9C, 0x2A, 0x7B, 0x2A, 0x5A, 0x2A, 0x59, 0x05, 0x2A, 0x79, 0x0C, 0x32, 0x79, 0x82, 0x2A, 0x79, 0x2A, 0x59, 0x2A, 0x39, 0x01, 0x22, 0x19, 0x0D, 0x21, 0xF9, 0x80, 0x22, 0x1A, 0x05, 0x22, 0x3A, 0x83, 0x2A, 0x5A, 0x22, 0x18, 0x6B, 0xBA, 0x4A, 0x94, 0x03, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x3A, 0x12, 0x5B, 0x16, 0x09, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x5B, 0x37, 0x04, 0x84, 0x9E, 0x81, 0x7C, 0x3C, 0x4A, 0x73, 0x1B, 0x00, 0x01, 0x84, 0x18, 0xEB, 0x19, 0x2D, 0x21, 0x93, 0x21, 0xF8, 0x22, 0x19, 0x6F, 0x22, 0x1A, 0x80, 0x22, 0x3A, 0x06, 0x84, 0x9E, 0x83, 0x22, 0x3A, 0x2A, 0x3A, 0x2A, 0x5A, 0x84, 0x7E, 0x02, 0x84, 0x9E, 0x81, 0x63, 0xDD, 0x3A, 0xDB, 0x2F, 0x22, 0x1A, 0x83, 0x2A, 0x5A, 0x21, 0xF7, 0x7C, 0x3C, 0x52, 0xD5, 0x04, 0x00, 0x01, 0x81, 0x29, 0x8E, 0x4A, 0xB4, 0x09, 0x00, 0x01, 0x81, 0x29, 0x4E, 0x52, 0xF6, 0x04, 0x84, 0x9E, 0x81, 0x7C, 0x3C, 0x4A, 0x73, 0x1A, 0x00, 0x01, 0x82, 0x19, 0x0C, 0x21, 0x92, 0x21, 0xF9, 0x72, 0x22, 0x1A, 0x80, 0x5B, 0x7C, 0x05, 0x84, 0x7E, 0x83, 0x42, 0xFB, 0x22, 0x3A, 0x2A, 0x5B, 0x7C, 0x3D, 0x02, 0x84, 0x7E, 0x81, 0x74, 0x1D, 0x2A, 0x3A, 0x2B, 0x22, 0x1A, 0x02, 0x22, 0x3A, 0x01, 0x22, 0x1A, 0x83, 0x22, 0x3A, 0x21, 0xD7, 0x84, 0x5D, 0x5B, 0x37, 0x04, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x29, 0x4E, 0x09, 0x00, 0x01, 0x81, 0x29, 0x4D, 0x52, 0xB5, 0x04, 0x84, 0x7E, 0x81, 0x7C, 0x1C, 0x42, 0x53, 0x18, 0x00, 0x01, 0x82, 0x19, 0x0B, 0x21, + 0x2E, 0x21, 0xD6, 0x02, 0x22, 0x1A, 0x88, 0x22, 0x3A, 0x3A, 0xD7, 0x74, 0x6F, 0x9D, 0x8A, 0xAE, 0x08, 0xAE, 0x47, 0xB6, 0x66, 0xB6, 0x86, 0xBE, 0xA5, 0x01, 0xBE, 0xC5, 0x81, 0xC6, 0xC5, 0xC6, 0xC6, 0x01, 0xCE, 0xE5, 0x83, 0xCE, 0xE6, 0xCF, 0x06, 0xD7, 0x45, 0xD7, 0x65, 0x01, 0xDF, 0x64, 0x83, 0xD7, 0x65, 0xD7, 0x64, 0xDF, 0x67, 0xDF, 0x68, 0x03, 0xDF, 0x48, 0x83, 0xDF, 0x49, 0xDF, 0x4B, 0xDF, 0x4C, 0xE7, 0x4E, 0x01, 0xE7, 0x6E, 0x37, 0xEF, 0x8E, 0x81, 0xE7, 0x6E, 0xE7, 0x4F, 0x08, 0xDF, 0x2F, 0x80, 0xD7, 0x0F, 0x04, 0xCE, 0xD0, 0x80, 0xC6, 0x70, 0x02, 0xC6, 0x71, 0x82, 0xBE, 0x71, 0xA5, 0xB5, 0x8C, 0x9D, 0x04, 0x84, 0x7E, 0x83, 0x6B, 0xDD, 0x2A, 0x3A, 0x42, 0xFB, 0x7C, 0x5E, 0x01, 0x84, 0x7E, 0x82, 0x8C, 0xBB, 0xB6, 0x13, 0xD7, 0x10, 0x02, 0xDF, 0x2F, 0x80, 0xE7, 0x8E, 0x09, 0xEF, 0x8E, 0x86, 0xE7, 0x6E, 0xDF, 0x2F, 0xD7, 0x0F, 0xCE, 0xAE, 0xB6, 0x2C, 0x84, 0xD0, 0x32, 0xB8, 0x19, 0x22, 0x1A, 0x80, 0x22, 0x3A, 0x02, 0x22, 0x1A, 0x82, 0x21, 0xD7, 0x84, 0x5D, 0x63, 0x58, 0x10, 0x00, 0x01, 0x81, 0x21, 0x4D, 0x4A, 0x73, 0x04, 0x84, 0x7E, 0x81, 0x7C, 0x1C, 0x42, 0x32, 0x17, 0x00, 0x01, 0x82, 0x19, 0x0C, 0x19, 0x2E, 0x21, 0xD7, 0x02, 0x22, 0x1A, 0x84, 0x3A, 0xD7, 0x8D, 0x2C, 0xCE, 0xE4, 0xDF, 0x82, 0xE7, 0xA2, 0x07, 0xE7, 0xE1, 0x0A, 0xEF, 0xE2, 0x81, 0xEF, 0xE4, 0xF7, 0xE5, 0x0A, 0xF7, 0xE6, 0x82, 0xF7, 0xE7, 0xF7, 0xE9, 0xF7, 0xEA, 0x01, 0xF7, 0xEC, 0x32, 0xFF, 0xED, 0x13, 0xF7, 0xED, 0x80, 0xF7, 0xCE, 0x04, 0x84, 0x7E, + 0x83, 0x4B, 0x1C, 0x32, 0x7B, 0x53, 0x3C, 0x74, 0x1D, 0x01, 0x84, 0x7E, 0x82, 0x8C, 0xBC, 0xD6, 0xF1, 0xF7, 0xCD, 0x04, 0xF7, 0xED, 0x0B, 0xFF, 0xED, 0x86, 0xF7, 0xED, 0xF7, 0xEB, 0xF7, 0xE7, 0xEF, 0xC6, 0xE7, 0xA6, 0xC6, 0x8A, 0x4B, 0x55, 0x1C, 0x22, 0x1A, 0x82, 0x21, 0xD7, 0x7C, 0x3D, 0x63, 0x58, 0x10, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x42, 0x52, 0x04, 0x84, 0x7E, 0x81, 0x7C, 0x1C, 0x42, 0x12, 0x17, 0x00, 0x01, 0x81, 0x21, 0x2E, 0x21, 0xD7, 0x01, 0x22, 0x1A, 0x85, 0x2A, 0x59, 0x6C, 0x31, 0xC6, 0xA5, 0xDF, 0x82, 0xE7, 0xE2, 0xEF, 0xE2, 0x09, 0xE7, 0xE1, 0x0A, 0xEF, 0xE2, 0x0F, 0xF7, 0xE5, 0x02, 0xF7, 0xE6, 0x83, 0xF7, 0xE7, 0xF7, 0xE8, 0xF7, 0xEB, 0xF7, 0xEC, 0x40, 0xFF, 0xED, 0x80, 0xEF, 0x8F, 0x02, 0x84, 0x7E, 0x88, 0x7C, 0x5E, 0x6B, 0xBD, 0x7C, 0x3D, 0x84, 0x7E, 0x84, 0x5E, 0x84, 0x7E, 0x84, 0x5D, 0x74, 0x59, 0xF7, 0xCD, 0x13, 0xFF, 0xED, 0x80, 0xF7, 0xEA, 0x02, 0xF7, 0xE5, 0x82, 0xEF, 0xE6, 0xCE, 0xE9, 0x5B, 0xB4, 0x18, 0x22, 0x1A, 0x80, 0x22, 0x3A, 0x01, 0x22, 0x1A, 0x82, 0x21, 0xD8, 0x7C, 0x3C, 0x63, 0x58, 0x10, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x3A, 0x11, 0x04, 0x84, 0x7E, 0x81, 0x7C, 0x1C, 0x3A, 0x11, 0x16, 0x00, 0x01, 0x81, 0x21, 0x2E, 0x21, 0xB4, 0x01, 0x22, 0x1A, 0x83, 0x2A, 0x79, 0x7C, 0x8F, 0xCF, 0x03, 0xE7, 0xA2, 0x02, 0xEF, 0xE2, 0x09, 0xE7, 0xE1, 0x0A, 0xEF, 0xE2, 0x17, 0xF7, 0xE5, 0x02, 0xF7, 0xE6, 0x83, 0xF7, 0xE8, 0xF7, 0xE9, 0xF7, 0xEB, 0xF7, 0xED, 0x1D, 0xFF, 0xED, 0x81, 0xF7, 0xEC, 0xF7, 0xEB, 0x01, + 0xF7, 0xE8, 0x02, 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x80, 0xF7, 0xE7, 0x0A, 0xF7, 0xE6, 0x80, 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x86, 0xF7, 0xE7, 0xF7, 0xE6, 0xE7, 0x89, 0x9D, 0x1A, 0x8C, 0xBD, 0x8C, 0x9D, 0x8C, 0x7D, 0x01, 0x84, 0x7E, 0x86, 0x8C, 0x7E, 0x84, 0x7E, 0x7C, 0x3D, 0x4B, 0x1C, 0x32, 0x98, 0x95, 0x4F, 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x11, 0xF7, 0xE7, 0x80, 0xF7, 0xE6, 0x04, 0xEF, 0xE3, 0x81, 0xCF, 0x06, 0x64, 0x12, 0x1A, 0x22, 0x1A, 0x82, 0x21, 0xF8, 0x7C, 0x1C, 0x5B, 0x17, 0x10, 0x00, 0x01, 0x81, 0x21, 0x0D, 0x39, 0xD0, 0x04, 0x8C, 0x7E, 0x81, 0x7C, 0x1B, 0x39, 0xF1, 0x15, 0x00, 0x01, 0x86, 0x21, 0x0D, 0x21, 0x71, 0x22, 0x19, 0x22, 0x1A, 0x2A, 0x59, 0x63, 0xF3, 0xCF, 0x03, 0x03, 0xEF, 0xE2, 0x0C, 0xE7, 0xE1, 0x07, 0xEF, 0xE2, 0x80, 0xEF, 0xE3, 0x1E, 0xF7, 0xE5, 0x01, 0xF7, 0xE6, 0x84, 0xF7, 0xE7, 0xF7, 0xE8, 0xF7, 0xE9, 0xF7, 0xEB, 0xF7, 0xEC, 0x0F, 0xFF, 0xED, 0x84, 0xF7, 0xEB, 0xF7, 0xEA, 0xF7, 0xE9, 0xF7, 0xE8, 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x19, 0xF7, 0xE5, 0x81, 0xA5, 0x77, 0x94, 0xFB, 0x01, 0x8C, 0x7E, 0x83, 0x8C, 0x7D, 0x73, 0xFD, 0x53, 0x3C, 0x32, 0x7B, 0x02, 0x22, 0x1A, 0x81, 0x32, 0x98, 0x9D, 0x8E, 0x15, 0xF7, 0xE5, 0x80, 0xEF, 0xE4, 0x04, 0xEF, 0xE2, 0x81, 0xD7, 0x25, 0x74, 0x70, 0x19, 0x22, 0x1A, 0x82, 0x21, 0xF8, 0x73, 0xBA, 0x52, 0xB5, 0x11, 0x00, 0x01, 0x80, 0x39, 0xD0, 0x04, 0x8C, 0x7E, 0x81, 0x7B, 0xFB, 0x39, 0xD0, 0x15, 0x00, 0x01, 0x81, 0x21, 0x2E, 0x21, 0xB5, 0x01, 0x22, 0x1A, 0x81, 0x43, 0x17, + 0xC6, 0x87, 0x03, 0xEF, 0xE2, 0x0C, 0xE7, 0xE1, 0x85, 0xD7, 0x82, 0xC6, 0xE5, 0xBE, 0xA7, 0xB6, 0x87, 0xBE, 0xC6, 0xCF, 0x24, 0x02, 0xE7, 0xE1, 0x01, 0xEF, 0xE3, 0x80, 0xEF, 0xE2, 0x01, 0xEF, 0xE3, 0x80, 0xEF, 0xE2, 0x04, 0xEF, 0xE3, 0x86, 0xEF, 0xC4, 0xD7, 0x46, 0xC6, 0xC8, 0xBE, 0x69, 0xBE, 0x89, 0xCF, 0x07, 0xDF, 0x65, 0x18, 0xEF, 0xE3, 0x80, 0xEF, 0xE4, 0x01, 0xF7, 0xE5, 0x01, 0xF7, 0xE6, 0x82, 0xF7, 0xE5, 0xEF, 0xE5, 0xEF, 0xE4, 0x01, 0xEF, 0xE3, 0x22, 0xEF, 0xE2, 0x84, 0xBE, 0x30, 0xB5, 0xD3, 0x9D, 0x38, 0xC6, 0xAC, 0xA5, 0xCC, 0x05, 0x22, 0x1A, 0x81, 0x32, 0xB8, 0xA5, 0xCB, 0x07, 0xEF, 0xE2, 0x80, 0xE7, 0xC3, 0x01, 0xCF, 0x06, 0x81, 0xE7, 0xC3, 0xEF, 0xE3, 0x04, 0xEF, 0xE2, 0x80, 0xEF, 0xE3, 0x01, 0xEF, 0xE2, 0x81, 0xEF, 0xE3, 0xEF, 0xE2, 0x05, 0xE7, 0xE1, 0x81, 0xCF, 0x43, 0x7C, 0xCE, 0x18, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x01, 0x29, 0x4D, 0x11, 0x00, 0x01, 0x80, 0x31, 0xB0, 0x04, 0x8C, 0x7E, 0x81, 0x7B, 0xFB, 0x31, 0x8F, 0x14, 0x00, 0x01, 0x88, 0x21, 0x0D, 0x21, 0x50, 0x21, 0xF9, 0x22, 0x1A, 0x2A, 0x79, 0x8D, 0x10, 0xDF, 0x25, 0xEF, 0xE3, 0xEF, 0xE2, 0x0A, 0xE7, 0xE1, 0x85, 0xDF, 0xC1, 0xBE, 0xA6, 0x74, 0xAF, 0x43, 0x35, 0x2A, 0x78, 0x2A, 0x79, 0x01, 0x2A, 0x59, 0x84, 0x2A, 0x79, 0x32, 0x78, 0x43, 0x16, 0x7C, 0xAF, 0xBE, 0xA6, 0x07, 0xEF, 0xE2, 0x83, 0xE7, 0xA3, 0xB6, 0x49, 0x6C, 0x51, 0x42, 0xF6, 0x01, 0x2A, 0x79, 0x01, 0x2A, 0x59, 0x84, 0x2A, 0x79, 0x32, 0x98, 0x4B, 0x55, 0x84, 0xEE, 0xBE, 0xA7, 0x16, 0xEF, + 0xE2, 0x80, 0xE7, 0xE2, 0x04, 0xE7, 0xE1, 0x28, 0xEF, 0xE2, 0x81, 0xE7, 0xC3, 0xAE, 0x0A, 0x05, 0x22, 0x1A, 0x83, 0x32, 0xB7, 0xA5, 0xEA, 0xEF, 0xE2, 0xEF, 0xE3, 0x01, 0xEF, 0xE4, 0x01, 0xF7, 0xE5, 0x82, 0xEF, 0xC6, 0xB6, 0x4B, 0x4B, 0x36, 0x01, 0x2A, 0x79, 0x81, 0x4B, 0x36, 0xAD, 0xED, 0x09, 0xF7, 0xE5, 0x80, 0xEF, 0xE4, 0x04, 0xEF, 0xE2, 0x83, 0xE7, 0xE1, 0xD7, 0x63, 0x85, 0x2D, 0x22, 0x39, 0x16, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x13, 0x00, 0x01, 0x81, 0x31, 0xB0, 0x8C, 0x5D, 0x03, 0x8C, 0x7E, 0x81, 0x7B, 0xDB, 0x29, 0x4E, 0x14, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x21, 0x94, 0x01, 0x22, 0x1A, 0x83, 0x43, 0x18, 0xDF, 0x48, 0xF7, 0xE5, 0xEF, 0xE4, 0x0A, 0xE7, 0xE1, 0x83, 0xC6, 0xE5, 0x64, 0x11, 0x2A, 0x79, 0x22, 0x39, 0x07, 0x22, 0x1A, 0x83, 0x22, 0x39, 0x32, 0x98, 0x6C, 0x51, 0xCF, 0x06, 0x03, 0xEF, 0xE2, 0x84, 0xE7, 0xC3, 0xBE, 0x88, 0x5B, 0xB3, 0x2A, 0x59, 0x22, 0x39, 0x07, 0x22, 0x1A, 0x83, 0x22, 0x39, 0x32, 0xB8, 0x6C, 0x51, 0xCE, 0xE6, 0x11, 0xEF, 0xE2, 0x0C, 0xE7, 0xE1, 0x11, 0xEF, 0xE2, 0x0D, 0xEF, 0xE3, 0x04, 0xEF, 0xE4, 0x81, 0xEF, 0xC5, 0xAE, 0x2B, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xB8, 0xAE, 0x0C, 0x04, 0xF7, 0xE5, 0x82, 0xEF, 0xE6, 0xC6, 0xAA, 0x3A, 0xB8, 0x03, 0x22, 0x1A, 0x81, 0x43, 0x17, 0xBE, 0x8A, 0x0A, 0xF7, 0xE5, 0x80, 0xEF, 0xE4, 0x04, 0xEF, 0xE2, 0x82, 0xDF, 0x84, 0x95, 0x6C, 0x2A, 0x59, 0x15, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x13, 0x00, 0x01, 0x81, 0x31, 0xB0, 0x84, 0x5D, 0x03, 0x8C, 0x7E, 0x81, 0x73, 0xDA, + 0x21, 0x2D, 0x14, 0x00, 0x01, 0x81, 0x21, 0x2E, 0x21, 0xB5, 0x01, 0x22, 0x1A, 0x83, 0x53, 0x77, 0xEF, 0xE6, 0xF7, 0xE5, 0xEF, 0xE3, 0x05, 0xE7, 0xE1, 0x80, 0xE7, 0xE2, 0x01, 0xEF, 0xE2, 0x83, 0xDF, 0xA4, 0x9D, 0x8C, 0x3A, 0xD7, 0x22, 0x3A, 0x0B, 0x22, 0x1A, 0x82, 0x22, 0x39, 0x42, 0xF6, 0x9D, 0xAC, 0x01, 0xEF, 0xE3, 0x83, 0xE7, 0xA4, 0x9D, 0xAC, 0x32, 0xB8, 0x22, 0x3A, 0x0B, 0x22, 0x1A, 0x82, 0x22, 0x39, 0x43, 0x16, 0xAE, 0x0C, 0x0D, 0xF7, 0xE5, 0x81, 0xEF, 0xE5, 0xEF, 0xE3, 0x0F, 0xEF, 0xE2, 0x80, 0xEF, 0xE4, 0x21, 0xF7, 0xE5, 0x81, 0xEF, 0xC6, 0xB6, 0x2C, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xB8, 0xAE, 0x0C, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0xA7, 0x9D, 0x6E, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x79, 0x7C, 0xB1, 0x0C, 0xF7, 0xE5, 0x80, 0xEF, 0xE4, 0x03, 0xEF, 0xE2, 0x82, 0xDF, 0xA3, 0xA5, 0xCB, 0x32, 0x78, 0x14, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x07, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x29, 0x4E, 0x09, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x84, 0x3D, 0x02, 0x8C, 0x7E, 0x81, 0x8C, 0x5E, 0x73, 0x99, 0x15, 0x00, 0x01, 0x81, 0x21, 0x2E, 0x21, 0xD6, 0x01, 0x22, 0x1A, 0x82, 0x5B, 0x97, 0xF7, 0xE5, 0xEF, 0xE3, 0x02, 0xEF, 0xE2, 0x01, 0xE7, 0xE1, 0x80, 0xEF, 0xE2, 0x02, 0xF7, 0xE5, 0x82, 0xE7, 0x87, 0x8D, 0x0F, 0x2A, 0x59, 0x0F, 0x22, 0x1A, 0x84, 0x3A, 0xB9, 0x8D, 0x13, 0xE7, 0x6C, 0x8C, 0xF2, 0x2A, 0x59, 0x0F, 0x22, 0x1A, 0x82, 0x3A, 0xD8, 0x95, 0x6E, 0xF7, 0xE6, 0x0A, 0xF7, 0xE5, 0x80, 0xEF, 0xE4, 0x12, 0xEF, 0xE2, 0x80, 0xEF, 0xE4, 0x20, 0xF7, 0xE5, + 0x81, 0xEF, 0xC6, 0xB6, 0x2C, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD7, 0xC6, 0xAA, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x87, 0x8D, 0x0F, 0x04, 0x22, 0x1A, 0x81, 0x22, 0x3A, 0x5B, 0xD4, 0x0E, 0xF7, 0xE5, 0x80, 0xEF, 0xE4, 0x02, 0xEF, 0xE2, 0x82, 0xE7, 0xA3, 0xAE, 0x0A, 0x32, 0xB8, 0x13, 0x22, 0x1A, 0x81, 0x21, 0xD7, 0x21, 0x0D, 0x03, 0x00, 0x01, 0x85, 0x29, 0x6E, 0x4A, 0x53, 0x6B, 0x58, 0x7B, 0xFC, 0x7B, 0xDB, 0x39, 0xD0, 0x08, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x84, 0x3D, 0x02, 0x8C, 0x7E, 0x82, 0x8C, 0x5D, 0x6B, 0x58, 0x21, 0x2D, 0x14, 0x00, 0x01, 0x81, 0x21, 0x2E, 0x21, 0xD7, 0x01, 0x22, 0x1A, 0x81, 0x63, 0xD6, 0xEF, 0xE4, 0x06, 0xEF, 0xE2, 0x01, 0xF7, 0xE5, 0x82, 0xE7, 0x87, 0x8D, 0x0F, 0x2A, 0x59, 0x11, 0x22, 0x1A, 0x82, 0x32, 0x79, 0x53, 0x77, 0x2A, 0x5A, 0x11, 0x22, 0x1A, 0x81, 0x3A, 0xB8, 0x9D, 0x8E, 0x09, 0xF7, 0xE5, 0x80, 0xEF, 0xE3, 0x14, 0xEF, 0xE2, 0x80, 0xEF, 0xE3, 0x1F, 0xF7, 0xE5, 0x81, 0xEF, 0xC6, 0xB6, 0x2C, 0x05, 0x22, 0x1A, 0x81, 0x42, 0xF7, 0xCE, 0xE9, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x87, 0x84, 0xF0, 0x04, 0x22, 0x1A, 0x81, 0x22, 0x3A, 0x53, 0x95, 0x10, 0xF7, 0xE5, 0x80, 0xEF, 0xE3, 0x01, 0xEF, 0xE2, 0x82, 0xE7, 0xC3, 0xB6, 0x49, 0x3A, 0xF7, 0x12, 0x22, 0x1A, 0x8B, 0x21, 0xD8, 0x21, 0x0D, 0x00, 0x01, 0x21, 0x2D, 0x31, 0x8F, 0x5A, 0xF6, 0x7B, 0xFC, 0x84, 0x3D, 0x8C, 0x5D, 0x8C, 0x7E, 0x84, 0x1C, 0x4A, 0x73, 0x08, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x84, 0x3D, 0x02, 0x8C, 0x7E, 0x83, 0x84, 0x3D, 0x6B, 0x79, 0x5A, 0xD6, + 0x39, 0xD0, 0x13, 0x00, 0x01, 0x84, 0x21, 0x2E, 0x21, 0xD8, 0x22, 0x1A, 0x22, 0x3A, 0x63, 0xF5, 0x06, 0xEF, 0xE2, 0x84, 0xEF, 0xE3, 0xF7, 0xE5, 0xEF, 0xC6, 0xAD, 0xEC, 0x2A, 0x59, 0x28, 0x22, 0x1A, 0x81, 0x42, 0xF7, 0xBE, 0x6B, 0x07, 0xF7, 0xE5, 0x17, 0xEF, 0xE2, 0x1F, 0xF7, 0xE5, 0x81, 0xEF, 0xC6, 0xB6, 0x2C, 0x05, 0x22, 0x1A, 0x81, 0x42, 0xF7, 0xCE, 0xE9, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x67, 0x84, 0xD0, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x75, 0x11, 0xF7, 0xE5, 0x80, 0xEF, 0xE4, 0x01, 0xEF, 0xE2, 0x82, 0xE7, 0xC3, 0xBE, 0x88, 0x43, 0x16, 0x11, 0x22, 0x1A, 0x85, 0x21, 0xD8, 0x21, 0x0D, 0x29, 0x4E, 0x52, 0xB5, 0x84, 0x1C, 0x8C, 0x5D, 0x03, 0x8C, 0x7E, 0x81, 0x84, 0x1C, 0x52, 0x94, 0x08, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x84, 0x3D, 0x02, 0x8C, 0x7E, 0x84, 0x84, 0x3D, 0x6B, 0x58, 0x7B, 0xFB, 0x6B, 0x79, 0x21, 0x2D, 0x12, 0x00, 0x01, 0x84, 0x21, 0x2E, 0x21, 0xF8, 0x22, 0x1A, 0x22, 0x3A, 0x6C, 0x33, 0x06, 0xEF, 0xE2, 0x83, 0xEF, 0xE3, 0xF7, 0xE5, 0xD7, 0x09, 0x4B, 0x36, 0x09, 0x22, 0x1A, 0x81, 0x2A, 0x5A, 0x2A, 0x59, 0x11, 0x22, 0x1A, 0x82, 0x22, 0x3A, 0x2A, 0x79, 0x22, 0x3A, 0x08, 0x22, 0x1A, 0x83, 0x22, 0x3A, 0x5B, 0xB6, 0xEF, 0xA9, 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x02, 0xF7, 0xE5, 0x18, 0xEF, 0xE2, 0x80, 0xEF, 0xE3, 0x03, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xF7, 0xE7, 0xF7, 0xE8, 0x17, 0xF7, 0xE9, 0x81, 0xEF, 0xCA, 0xB6, 0x2E, 0x05, 0x22, 0x1A, 0x81, 0x42, 0xF8, 0xCE, 0xEC, 0x03, 0xF7, 0xE9, 0x82, 0xF7, 0xE8, 0xE7, 0x69, 0x84, 0xD1, + 0x05, 0x22, 0x1A, 0x80, 0x53, 0x76, 0x0E, 0xF7, 0xE8, 0x01, 0xF7, 0xE7, 0x82, 0xF7, 0xE6, 0xF7, 0xE5, 0xEF, 0xE4, 0x01, 0xEF, 0xE2, 0x82, 0xE7, 0xC3, 0xBE, 0xA7, 0x4B, 0x55, 0x10, 0x22, 0x1A, 0x83, 0x21, 0xD8, 0x5A, 0xD6, 0x6B, 0x58, 0x8C, 0x3D, 0x05, 0x8C, 0x5E, 0x81, 0x84, 0x1D, 0x52, 0xB5, 0x08, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x8C, 0x3D, 0x02, 0x8C, 0x5E, 0x84, 0x84, 0x1C, 0x6B, 0x38, 0x8C, 0x5E, 0x83, 0xFC, 0x4A, 0x33, 0x12, 0x00, 0x01, 0x84, 0x21, 0x2F, 0x21, 0xF8, 0x22, 0x1A, 0x2A, 0x39, 0x74, 0x52, 0x06, 0xEF, 0xE2, 0x82, 0xEF, 0xE3, 0xE7, 0xA6, 0x9D, 0x8E, 0x07, 0x22, 0x1A, 0x87, 0x3A, 0xB8, 0x8C, 0xF1, 0xC6, 0xAF, 0xE7, 0x8E, 0xEF, 0x8E, 0xDF, 0x2F, 0xA5, 0xB2, 0x53, 0x77, 0x0B, 0x22, 0x1A, 0x88, 0x2A, 0x59, 0x6C, 0x16, 0xBE, 0x31, 0xE7, 0x6F, 0xEF, 0x8E, 0xE7, 0x6E, 0xC6, 0x90, 0x7C, 0x95, 0x32, 0x79, 0x06, 0x22, 0x1A, 0x81, 0x3A, 0xB9, 0xA5, 0xB2, 0x02, 0xFF, 0xED, 0x82, 0xF7, 0xEC, 0xF7, 0xEB, 0xF7, 0xE8, 0x01, 0xEF, 0xE3, 0x15, 0xEF, 0xE2, 0x84, 0xEF, 0xE3, 0xEF, 0xE4, 0xF7, 0xEA, 0xF7, 0xEB, 0xF7, 0xEC, 0x1B, 0xFF, 0xED, 0x81, 0xF7, 0xCE, 0xB6, 0x31, 0x05, 0x22, 0x1A, 0x81, 0x42, 0xF8, 0xD6, 0xF0, 0x04, 0xFF, 0xED, 0x81, 0xEF, 0xAE, 0xB6, 0x11, 0x04, 0x74, 0x35, 0x81, 0x74, 0x55, 0x95, 0x13, 0x10, 0xFF, 0xED, 0x80, 0xF7, 0xEB, 0x01, 0xF7, 0xE5, 0x80, 0xEF, 0xE4, 0x01, 0xEF, 0xE2, 0x82, 0xE7, 0xE2, 0xC6, 0xE6, 0x5B, 0xB3, 0x0F, 0x22, 0x1A, 0x82, 0x21, 0xF8, 0x31, 0x8F, 0x84, 0x1C, 0x06, 0x8C, 0x5E, 0x81, + 0x84, 0x3D, 0x5A, 0xD5, 0x08, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x8C, 0x3D, 0x02, 0x8C, 0x5E, 0x85, 0x84, 0x1C, 0x63, 0x17, 0x8C, 0x5E, 0x8C, 0x5D, 0x6B, 0x79, 0x21, 0x2D, 0x11, 0x00, 0x01, 0x84, 0x21, 0x2F, 0x21, 0xF9, 0x22, 0x1A, 0x2A, 0x59, 0x74, 0x71, 0x06, 0xEF, 0xE2, 0x82, 0xEF, 0xE3, 0xD7, 0x28, 0x53, 0x75, 0x05, 0x22, 0x1A, 0x85, 0x2A, 0x39, 0x5B, 0xB4, 0xD7, 0x09, 0xEF, 0xC6, 0xEF, 0xE6, 0xF7, 0xE9, 0x01, 0xF7, 0xED, 0x83, 0xF7, 0xCE, 0xDF, 0x4F, 0x8C, 0xF4, 0x22, 0x3A, 0x08, 0x22, 0x1A, 0x84, 0x3A, 0xB9, 0xAD, 0xD2, 0xEF, 0xAE, 0xF7, 0xCD, 0xF7, 0xED, 0x01, 0xFF, 0xED, 0x83, 0xF7, 0xED, 0xEF, 0xAE, 0xC6, 0x71, 0x4B, 0x38, 0x05, 0x22, 0x1A, 0x82, 0x22, 0x3A, 0x5B, 0xB6, 0xF7, 0xED, 0x02, 0xFF, 0xED, 0x80, 0xF7, 0xEC, 0x05, 0xF7, 0xE5, 0x81, 0xEF, 0xE5, 0xEF, 0xE4, 0x01, 0xEF, 0xE3, 0x07, 0xEF, 0xE2, 0x80, 0xEF, 0xE3, 0x01, 0xEF, 0xE4, 0x04, 0xF7, 0xE5, 0x80, 0xF7, 0xE7, 0x1E, 0xFF, 0xED, 0x81, 0xF7, 0xCE, 0xB6, 0x31, 0x05, 0x22, 0x1A, 0x81, 0x42, 0xF8, 0xD6, 0xF0, 0x04, 0xFF, 0xED, 0x81, 0xF7, 0xED, 0xF7, 0xCD, 0x05, 0xEF, 0xAE, 0x80, 0xF7, 0xCE, 0x10, 0xFF, 0xED, 0x80, 0xF7, 0xEC, 0x02, 0xF7, 0xE5, 0x80, 0xEF, 0xE4, 0x02, 0xEF, 0xE2, 0x81, 0xCF, 0x06, 0x64, 0x12, 0x0E, 0x22, 0x1A, 0x80, 0x21, 0xF8, 0x01, 0x00, 0x01, 0x81, 0x39, 0xF1, 0x73, 0x79, 0x04, 0x8C, 0x5E, 0x81, 0x8C, 0x3D, 0x5A, 0xF6, 0x08, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x8C, 0x3D, 0x02, 0x8C, 0x5E, 0x81, 0x84, 0x1C, 0x63, 0x17, 0x01, 0x8C, 0x5E, 0x81, + 0x83, 0xFC, 0x42, 0x11, 0x11, 0x00, 0x01, 0x84, 0x21, 0x2F, 0x21, 0xF9, 0x22, 0x1A, 0x2A, 0x59, 0x74, 0x91, 0x06, 0xEF, 0xE2, 0x82, 0xEF, 0xE3, 0xBE, 0x8A, 0x22, 0x3A, 0x04, 0x22, 0x1A, 0x83, 0x22, 0x3A, 0x5B, 0x95, 0xDF, 0x4A, 0xEF, 0xE6, 0x02, 0xF7, 0xE5, 0x85, 0xF7, 0xE6, 0xF7, 0xE9, 0xFF, 0xED, 0xF7, 0xED, 0xE7, 0x4F, 0x84, 0xB4, 0x07, 0x22, 0x1A, 0x82, 0x32, 0x99, 0x9D, 0x53, 0xF7, 0xCD, 0x06, 0xFF, 0xED, 0x82, 0xF7, 0xCD, 0xC6, 0x70, 0x3A, 0xB9, 0x05, 0x22, 0x1A, 0x81, 0x42, 0xF8, 0xD6, 0xF0, 0x02, 0xFF, 0xED, 0x80, 0xF7, 0xEC, 0x08, 0xF7, 0xE5, 0x86, 0xF7, 0xE6, 0xEF, 0xC6, 0xE7, 0x87, 0xE7, 0x86, 0xE7, 0xA5, 0xF7, 0xE7, 0xF7, 0xE8, 0x01, 0xF7, 0xE6, 0x06, 0xF7, 0xE5, 0x81, 0xF7, 0xE6, 0xF7, 0xEB, 0x0E, 0xFF, 0xED, 0x84, 0xF7, 0xED, 0xF7, 0xCD, 0xEF, 0x8E, 0xEF, 0xAE, 0xF7, 0xCE, 0x0A, 0xFF, 0xED, 0x81, 0xF7, 0xCE, 0xB6, 0x31, 0x05, 0x22, 0x1A, 0x81, 0x42, 0xF8, 0xCE, 0xCE, 0x18, 0xF7, 0xEB, 0x01, 0xF7, 0xEC, 0x80, 0xF7, 0xED, 0x01, 0xFF, 0xED, 0x86, 0xF7, 0xED, 0xF7, 0xCD, 0xE7, 0x87, 0xDF, 0x67, 0xEF, 0xC6, 0xF7, 0xE5, 0xEF, 0xE4, 0x02, 0xEF, 0xE2, 0x81, 0xCF, 0x25, 0x74, 0x71, 0x0D, 0x22, 0x1A, 0x80, 0x21, 0xF8, 0x02, 0x00, 0x01, 0x81, 0x39, 0xD0, 0x8C, 0x3D, 0x03, 0x94, 0x5E, 0x81, 0x8C, 0x3D, 0x63, 0x17, 0x08, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x8C, 0x3D, 0x02, 0x94, 0x5E, 0x81, 0x84, 0x1C, 0x6B, 0x38, 0x01, 0x94, 0x5E, 0x81, 0x8C, 0x3D, 0x63, 0x17, 0x11, 0x00, 0x01, 0x84, 0x21, 0x2F, 0x21, 0xF9, 0x22, 0x1A, + 0x2A, 0x59, 0x74, 0x91, 0x04, 0xEF, 0xE2, 0x01, 0xE7, 0xE1, 0x81, 0xE7, 0xA3, 0xA5, 0xAD, 0x05, 0x22, 0x1A, 0x82, 0x3A, 0xD8, 0xB6, 0x2C, 0xF7, 0xE6, 0x01, 0xF7, 0xE5, 0x80, 0xEF, 0xE4, 0x01, 0xEF, 0xE3, 0x01, 0xEF, 0xE2, 0x83, 0xEF, 0xE3, 0xEF, 0xE5, 0xCE, 0xE9, 0x42, 0xF7, 0x05, 0x22, 0x1A, 0x84, 0x22, 0x3A, 0x53, 0x95, 0xE7, 0xA8, 0xF7, 0xEA, 0xF7, 0xEC, 0x06, 0xFF, 0xED, 0x81, 0xEF, 0xAE, 0xA5, 0x92, 0x05, 0x22, 0x1A, 0x81, 0x32, 0xB9, 0xA5, 0xB2, 0x02, 0xFF, 0xED, 0x81, 0xF7, 0xEC, 0xF7, 0xE6, 0x03, 0xF7, 0xE5, 0x8D, 0xEF, 0xC6, 0xC6, 0xCA, 0x8D, 0x10, 0x5B, 0xB4, 0x3A, 0xD7, 0x32, 0x79, 0x2A, 0x79, 0x32, 0x79, 0x32, 0x98, 0x43, 0x18, 0x6C, 0x16, 0xA5, 0xB2, 0xE7, 0x6E, 0xF7, 0xE9, 0x05, 0xF7, 0xE5, 0x80, 0xF7, 0xE7, 0x0C, 0xFF, 0xED, 0x84, 0xEF, 0xAE, 0xB6, 0x11, 0x74, 0x55, 0x4B, 0x18, 0x32, 0x99, 0x02, 0x32, 0x79, 0x84, 0x3A, 0xB9, 0x53, 0x77, 0x84, 0xD4, 0xCE, 0xB0, 0xF7, 0xED, 0x03, 0xFF, 0xED, 0x83, 0xF7, 0xEC, 0xF7, 0xEB, 0xEF, 0xC9, 0xB6, 0x2D, 0x05, 0x22, 0x1A, 0x81, 0x42, 0xF7, 0xCE, 0xC9, 0x04, 0xF7, 0xE5, 0x81, 0xEF, 0xC6, 0xCE, 0xC9, 0x05, 0xA5, 0xCD, 0x80, 0xB6, 0x4B, 0x0B, 0xF7, 0xE5, 0x84, 0xF7, 0xE6, 0xE7, 0x67, 0xA5, 0xAD, 0x64, 0x13, 0x43, 0x17, 0x01, 0x32, 0x79, 0x89, 0x2A, 0x79, 0x32, 0x79, 0x32, 0xB8, 0x53, 0x75, 0x84, 0xD0, 0xB6, 0x49, 0xE7, 0xE2, 0xEF, 0xE2, 0xD7, 0x45, 0x7C, 0xB1, 0x0C, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x02, 0x00, 0x01, 0x81, 0x31, 0x6F, 0x73, 0x79, 0x03, 0x94, 0x5E, 0x81, + 0x8C, 0x3D, 0x6B, 0x38, 0x08, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x8C, 0x3D, 0x02, 0x94, 0x5E, 0x81, 0x83, 0xFC, 0x6B, 0x58, 0x02, 0x94, 0x5E, 0x81, 0x7B, 0xDB, 0x29, 0x6E, 0x10, 0x00, 0x01, 0x84, 0x21, 0x4F, 0x22, 0x19, 0x22, 0x1A, 0x2A, 0x59, 0x7C, 0x91, 0x02, 0xEF, 0xE2, 0x03, 0xE7, 0xE1, 0x81, 0xDF, 0x83, 0x8D, 0x0E, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x16, 0xE7, 0xA5, 0x01, 0xEF, 0xE3, 0x07, 0xEF, 0xE2, 0x81, 0xDF, 0x84, 0x8D, 0x0F, 0x05, 0x22, 0x1A, 0x81, 0x2A, 0x79, 0x84, 0xD0, 0x01, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xF7, 0xE7, 0xF7, 0xEA, 0x04, 0xFF, 0xED, 0x82, 0xF7, 0xED, 0xD7, 0x0F, 0x4B, 0x57, 0x04, 0x22, 0x1A, 0x81, 0x32, 0x79, 0x8C, 0xF4, 0x03, 0xFF, 0xED, 0x80, 0xF7, 0xEB, 0x01, 0xF7, 0xE5, 0x85, 0xEF, 0xC6, 0xBE, 0x6B, 0x5B, 0xD4, 0x2A, 0x79, 0x2A, 0x59, 0x22, 0x3A, 0x05, 0x22, 0x1A, 0x85, 0x22, 0x3A, 0x2A, 0x59, 0x3A, 0xD8, 0x84, 0xD4, 0xDF, 0x4D, 0xF7, 0xE9, 0x01, 0xF7, 0xE5, 0x80, 0xF7, 0xE6, 0x01, 0xF7, 0xEB, 0x0A, 0xFF, 0xED, 0x84, 0xF7, 0xCE, 0xB6, 0x11, 0x4B, 0x57, 0x2A, 0x59, 0x22, 0x3A, 0x06, 0x22, 0x1A, 0x85, 0x2A, 0x3A, 0x32, 0x79, 0x5B, 0xB5, 0xC6, 0x8C, 0xF7, 0xE7, 0xF7, 0xE6, 0x02, 0xF7, 0xE5, 0x81, 0xEF, 0xC6, 0xB6, 0x2C, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xF7, 0xCE, 0xC9, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x87, 0x8C, 0xF0, 0x05, 0x2A, 0x59, 0x80, 0x5B, 0xB5, 0x0A, 0xF7, 0xE5, 0x84, 0xE7, 0x87, 0x95, 0x4F, 0x3A, 0xF7, 0x2A, 0x59, 0x22, 0x3A, 0x06, 0x22, 0x1A, 0x87, 0x2A, 0x39, 0x32, 0x78, 0x5B, 0xB3, 0xB6, + 0x49, 0xEF, 0xE2, 0xDF, 0x67, 0x8D, 0x11, 0x22, 0x3A, 0x0A, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x02, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x39, 0xF1, 0x84, 0x1C, 0x02, 0x94, 0x5E, 0x81, 0x8C, 0x3D, 0x6B, 0x59, 0x08, 0x00, 0x01, 0x81, 0x31, 0xB0, 0x8C, 0x3D, 0x01, 0x94, 0x5E, 0x87, 0x8C, 0x3D, 0x73, 0x79, 0x73, 0x9A, 0x94, 0x5E, 0x84, 0x1C, 0x5A, 0xD6, 0x62, 0xF6, 0x42, 0x12, 0x10, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x7C, 0x91, 0x01, 0xEF, 0xE2, 0x04, 0xE7, 0xE1, 0x81, 0xD7, 0x83, 0x84, 0xCF, 0x05, 0x22, 0x1A, 0x80, 0x4B, 0x55, 0x0A, 0xEF, 0xE2, 0x81, 0xE7, 0xC3, 0xA5, 0xEA, 0x05, 0x22, 0x1A, 0x81, 0x32, 0x98, 0x9D, 0x8D, 0x02, 0xEF, 0xE4, 0x03, 0xEF, 0xE3, 0x80, 0xF7, 0xE5, 0x02, 0xF7, 0xE6, 0x81, 0xDF, 0x48, 0x5B, 0xD4, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x7C, 0x92, 0x03, 0xF7, 0xE6, 0x85, 0xF7, 0xE5, 0xEF, 0xE2, 0xDF, 0x64, 0x7C, 0xAF, 0x2A, 0x79, 0x22, 0x3A, 0x0B, 0x22, 0x1A, 0x82, 0x2A, 0x59, 0x43, 0x16, 0xA5, 0xCD, 0x0E, 0xF7, 0xE6, 0x82, 0xDF, 0x48, 0x74, 0x72, 0x2A, 0x59, 0x0B, 0x22, 0x1A, 0x83, 0x22, 0x3A, 0x3A, 0xB8, 0x84, 0xD0, 0xEF, 0xC6, 0x02, 0xF7, 0xE5, 0x81, 0xEF, 0xC6, 0xB6, 0x2C, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xF7, 0xCE, 0xC9, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x67, 0x84, 0xD0, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x75, 0x08, 0xF7, 0xE5, 0x83, 0xEF, 0xE6, 0xCE, 0xE9, 0x5B, 0xB4, 0x2A, 0x59, 0x0B, 0x22, 0x1A, 0x86, 0x22, 0x3A, 0x3A, 0xD7, 0x8D, 0x4D, 0xEF, 0xC7, 0xE7, 0x8E, 0x9D, 0x73, 0x2A, + 0x5A, 0x09, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x03, 0x00, 0x01, 0x81, 0x29, 0x6E, 0x6B, 0x38, 0x02, 0x94, 0x5E, 0x81, 0x94, 0x3E, 0x73, 0x79, 0x08, 0x00, 0x01, 0x81, 0x31, 0xB0, 0x94, 0x3E, 0x01, 0x94, 0x5E, 0x85, 0x8C, 0x1C, 0x6B, 0x17, 0x83, 0xDB, 0x94, 0x5E, 0x83, 0xDB, 0x31, 0x8F, 0x01, 0x21, 0x2D, 0x10, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x83, 0x2A, 0x79, 0x7C, 0xB1, 0xEF, 0xE4, 0xEF, 0xE2, 0x04, 0xE7, 0xE1, 0x81, 0xDF, 0x64, 0x7C, 0xB0, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x74, 0x0A, 0xEF, 0xE2, 0x81, 0xE7, 0xC3, 0xAE, 0x0A, 0x05, 0x22, 0x1A, 0x81, 0x32, 0xB8, 0xA5, 0xCB, 0x07, 0xEF, 0xE2, 0x84, 0xEF, 0xE3, 0xEF, 0xE4, 0xF7, 0xE5, 0xDF, 0x48, 0x63, 0xD4, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x6C, 0x52, 0x03, 0xF7, 0xE5, 0x83, 0xF7, 0xE6, 0xD7, 0x48, 0x6C, 0x32, 0x22, 0x39, 0x0F, 0x22, 0x1A, 0x82, 0x32, 0xB8, 0x84, 0xF0, 0xEF, 0xC6, 0x0A, 0xF7, 0xE5, 0x83, 0xF7, 0xE6, 0xD7, 0x28, 0x63, 0xF4, 0x22, 0x39, 0x0E, 0x22, 0x1A, 0x82, 0x32, 0x79, 0x74, 0x72, 0xE7, 0xA7, 0x01, 0xF7, 0xE5, 0x81, 0xEF, 0xC6, 0xB6, 0x2C, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xF7, 0xC6, 0xCA, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x67, 0x84, 0xD0, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x75, 0x07, 0xF7, 0xE5, 0x83, 0xEF, 0xE6, 0xC6, 0xCA, 0x43, 0x36, 0x22, 0x3A, 0x0E, 0x22, 0x1A, 0x85, 0x32, 0x98, 0x7C, 0xB1, 0xF7, 0xCD, 0xEF, 0x8E, 0xA5, 0xB2, 0x2A, 0x79, 0x08, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x03, 0x00, 0x01, 0x81, 0x29, 0x4E, 0x5A, 0xB5, 0x03, 0x94, 0x5E, 0x80, + 0x7B, 0x9A, 0x08, 0x00, 0x01, 0x80, 0x39, 0xB0, 0x02, 0x94, 0x5E, 0x85, 0x83, 0xFC, 0x5A, 0x95, 0x8C, 0x1D, 0x94, 0x5E, 0x7B, 0x9A, 0x21, 0x0D, 0x12, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x82, 0x2A, 0x79, 0x7C, 0xB1, 0xF7, 0xE5, 0x05, 0xE7, 0xE1, 0x81, 0xD7, 0x64, 0x74, 0x91, 0x04, 0x22, 0x1A, 0x81, 0x22, 0x3A, 0x53, 0xB4, 0x0A, 0xEF, 0xE2, 0x81, 0xE7, 0xC3, 0xAE, 0x0A, 0x05, 0x22, 0x1A, 0x81, 0x32, 0xB7, 0xA5, 0xEA, 0x09, 0xEF, 0xE2, 0x82, 0xEF, 0xE3, 0xD7, 0x47, 0x63, 0xD4, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x6C, 0x33, 0x03, 0xF7, 0xE5, 0x82, 0xDF, 0x48, 0x63, 0xF3, 0x22, 0x3A, 0x11, 0x22, 0x1A, 0x82, 0x32, 0x98, 0x84, 0xD1, 0xEF, 0xE6, 0x09, 0xF7, 0xE5, 0x82, 0xDF, 0x48, 0x63, 0xF4, 0x22, 0x3A, 0x10, 0x22, 0x1A, 0x85, 0x32, 0x79, 0x7C, 0xB1, 0xF7, 0xE6, 0xF7, 0xE5, 0xEF, 0xC6, 0xB6, 0x2C, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xF7, 0xC6, 0xCA, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x67, 0x84, 0xD0, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x75, 0x06, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xD7, 0x09, 0x4B, 0x56, 0x11, 0x22, 0x1A, 0x85, 0x32, 0x98, 0x95, 0x32, 0xF7, 0xED, 0xEF, 0xAE, 0xAD, 0xF2, 0x32, 0x99, 0x07, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x03, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x4A, 0x53, 0x03, 0x94, 0x5E, 0x81, 0x7B, 0xBB, 0x21, 0x2D, 0x07, 0x00, 0x01, 0x80, 0x39, 0xB0, 0x02, 0x94, 0x5E, 0x81, 0x83, 0xDB, 0x4A, 0x32, 0x01, 0x8C, 0x3D, 0x80, 0x6B, 0x38, 0x13, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x83, 0x2A, 0x79, 0x7C, 0xB1, + 0xF7, 0xE6, 0xEF, 0xE2, 0x03, 0xE7, 0xE1, 0x82, 0xE7, 0xE2, 0xDF, 0x66, 0x74, 0x72, 0x04, 0x22, 0x1A, 0x81, 0x22, 0x39, 0x5B, 0xD3, 0x0A, 0xEF, 0xE2, 0x81, 0xE7, 0xC3, 0xAE, 0x0A, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xB7, 0xAE, 0x0A, 0x0A, 0xEF, 0xE2, 0x81, 0xD7, 0x45, 0x63, 0xF3, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x6C, 0x33, 0x02, 0xF7, 0xE5, 0x82, 0xDF, 0x67, 0x7C, 0x91, 0x22, 0x3A, 0x13, 0x22, 0x1A, 0x81, 0x32, 0xB8, 0x95, 0x6E, 0x08, 0xF7, 0xE5, 0x82, 0xE7, 0x87, 0x8D, 0x2F, 0x22, 0x3A, 0x12, 0x22, 0x1A, 0x84, 0x3A, 0xD7, 0xAE, 0x0C, 0xF7, 0xE5, 0xEF, 0xC6, 0xB6, 0x2C, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xF7, 0xC6, 0xAA, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x67, 0x84, 0xD0, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x75, 0x06, 0xF7, 0xE5, 0x81, 0xDF, 0x67, 0x74, 0x72, 0x13, 0x22, 0x1A, 0x85, 0x42, 0xF7, 0xC6, 0x90, 0xF7, 0xED, 0xEF, 0xAE, 0xB6, 0x31, 0x3A, 0xB9, 0x06, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x04, 0x00, 0x01, 0x81, 0x31, 0x8F, 0x7B, 0x9A, 0x02, 0x94, 0x5E, 0x81, 0x83, 0xDB, 0x31, 0x8F, 0x07, 0x00, 0x01, 0x80, 0x39, 0xD0, 0x02, 0x94, 0x5E, 0x84, 0x7B, 0x9A, 0x39, 0xD0, 0x94, 0x5E, 0x8C, 0x1D, 0x5A, 0xD6, 0x13, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x85, 0x2A, 0x79, 0x84, 0xB4, 0xF7, 0xE9, 0xEF, 0xE3, 0xEF, 0xE2, 0xEF, 0xE3, 0x01, 0xEF, 0xE4, 0x82, 0xEF, 0xE3, 0xDF, 0x68, 0x6C, 0x52, 0x04, 0x22, 0x1A, 0x83, 0x22, 0x39, 0x63, 0xF4, 0xF7, 0xE5, 0xEF, 0xE3, 0x08, 0xEF, 0xE2, 0x81, 0xE7, 0xC3, 0xAE, 0x0A, 0x05, 0x22, 0x1A, 0x81, + 0x3A, 0xD7, 0xB6, 0x49, 0x0A, 0xEF, 0xE2, 0x81, 0xD7, 0x45, 0x63, 0xF3, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x6C, 0x33, 0x01, 0xF7, 0xE5, 0x82, 0xEF, 0xC6, 0xAD, 0xED, 0x2A, 0x59, 0x15, 0x22, 0x1A, 0x81, 0x43, 0x17, 0xC6, 0xCA, 0x06, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xCE, 0xC9, 0x32, 0xB8, 0x13, 0x22, 0x1A, 0x84, 0x22, 0x3A, 0x5B, 0xB4, 0xEF, 0xE6, 0xEF, 0xC6, 0xB6, 0x2C, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xF7, 0xC6, 0xAA, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x67, 0x84, 0xD0, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x75, 0x05, 0xF7, 0xE5, 0x82, 0xEF, 0xC6, 0xBE, 0x4B, 0x2A, 0x59, 0x13, 0x22, 0x1A, 0x86, 0x2A, 0x59, 0x6C, 0x16, 0xF7, 0xEC, 0xF7, 0xEB, 0xEF, 0xCB, 0xBE, 0x70, 0x42, 0xF8, 0x05, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x04, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x41, 0xF1, 0x94, 0x3D, 0x01, 0x94, 0x5E, 0x81, 0x83, 0xFC, 0x42, 0x12, 0x07, 0x00, 0x01, 0x80, 0x39, 0xD0, 0x01, 0x94, 0x5E, 0x85, 0x94, 0x3D, 0x6B, 0x38, 0x39, 0xD0, 0x94, 0x5E, 0x8B, 0xFC, 0x52, 0x74, 0x13, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x83, 0x2A, 0x79, 0x84, 0xD4, 0xFF, 0xED, 0xF7, 0xE6, 0x03, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x4E, 0x6C, 0x34, 0x04, 0x22, 0x1A, 0x81, 0x22, 0x39, 0x63, 0xF4, 0x01, 0xF7, 0xE5, 0x81, 0xEF, 0xE4, 0xEF, 0xE3, 0x06, 0xEF, 0xE2, 0x81, 0xE7, 0xC3, 0xAE, 0x0A, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD7, 0xB6, 0x69, 0x0A, 0xEF, 0xE2, 0x81, 0xD7, 0x45, 0x63, 0xF2, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x6C, 0x13, 0x01, 0xF7, 0xE5, 0x81, 0xD7, 0x09, + 0x43, 0x16, 0x07, 0x22, 0x1A, 0x87, 0x3A, 0xB8, 0x84, 0xD0, 0xB6, 0x4B, 0xCE, 0xC9, 0xCE, 0xE9, 0xB6, 0x4B, 0x84, 0xB1, 0x3A, 0xD8, 0x06, 0x22, 0x1A, 0x82, 0x2A, 0x59, 0x64, 0x13, 0xEF, 0xE6, 0x05, 0xF7, 0xE5, 0x81, 0xE7, 0x87, 0x8D, 0x2F, 0x06, 0x22, 0x1A, 0x87, 0x22, 0x3A, 0x43, 0x36, 0x9D, 0x6E, 0xCE, 0xC9, 0xD7, 0x28, 0xC6, 0xAA, 0x8D, 0x0F, 0x3A, 0xD7, 0x06, 0x22, 0x1A, 0x83, 0x3A, 0xF7, 0xBE, 0x8A, 0xEF, 0xC6, 0xB6, 0x2C, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xF7, 0xC6, 0xAA, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x67, 0x84, 0xD0, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x75, 0x05, 0xF7, 0xE5, 0x81, 0xDF, 0x48, 0x6C, 0x33, 0x06, 0x22, 0x1A, 0x87, 0x2A, 0x59, 0x63, 0xF4, 0xA5, 0xEC, 0xBE, 0x88, 0xBE, 0xA8, 0xAE, 0x0A, 0x7C, 0xCF, 0x3A, 0xD7, 0x06, 0x22, 0x1A, 0x81, 0x42, 0xF8, 0xCE, 0xCC, 0x01, 0xF7, 0xE5, 0x82, 0xEF, 0xC8, 0xC6, 0xAE, 0x4B, 0x57, 0x04, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x05, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x8C, 0x1D, 0x01, 0x94, 0x5E, 0x81, 0x8C, 0x1D, 0x5A, 0x95, 0x06, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x41, 0xF1, 0x01, 0x94, 0x5E, 0x85, 0x8C, 0x1D, 0x5A, 0xB5, 0x39, 0xD0, 0x94, 0x5E, 0x83, 0xFC, 0x42, 0x12, 0x13, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x83, 0x2A, 0x79, 0x84, 0xD4, 0xFF, 0xED, 0xF7, 0xE6, 0x03, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x4F, 0x6C, 0x35, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x39, 0x63, 0xF3, 0x03, 0xF7, 0xE5, 0x81, 0xEF, 0xE5, 0xEF, 0xE3, 0x04, 0xEF, 0xE2, 0x81, 0xE7, 0xC3, 0xAE, 0x29, 0x05, 0x22, + 0x1A, 0x81, 0x3A, 0xD7, 0xB6, 0x68, 0x0A, 0xEF, 0xE2, 0x81, 0xD7, 0x45, 0x63, 0xF2, 0x04, 0x22, 0x1A, 0x84, 0x2A, 0x59, 0x6C, 0x13, 0xF7, 0xE5, 0xE7, 0xA7, 0x9D, 0x8E, 0x06, 0x22, 0x1A, 0x83, 0x2A, 0x59, 0x63, 0xF4, 0xD7, 0x09, 0xEF, 0xC6, 0x03, 0xEF, 0xE6, 0x82, 0xEF, 0xA6, 0xCE, 0xC9, 0x5B, 0xD4, 0x06, 0x22, 0x1A, 0x81, 0x3A, 0xD7, 0xBE, 0x6B, 0x05, 0xF7, 0xE5, 0x81, 0xD7, 0x28, 0x53, 0x75, 0x05, 0x22, 0x1A, 0x89, 0x2A, 0x59, 0x74, 0x52, 0xDF, 0x68, 0xEF, 0xC6, 0xEF, 0xE6, 0xF7, 0xE6, 0xEF, 0xE6, 0xEF, 0xC6, 0xCE, 0xC9, 0x5B, 0xB5, 0x05, 0x22, 0x1A, 0x83, 0x32, 0x98, 0x8D, 0x2F, 0xEF, 0xC6, 0xB6, 0x4B, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD7, 0xC6, 0xAA, 0x04, 0xF7, 0xE6, 0x81, 0xE7, 0x67, 0x84, 0xD0, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x75, 0x05, 0xF7, 0xE6, 0x81, 0xCE, 0xC9, 0x32, 0x79, 0x05, 0x22, 0x1A, 0x83, 0x32, 0x98, 0x95, 0x4F, 0xE7, 0xA6, 0xEF, 0xC4, 0x01, 0xEF, 0xE2, 0x83, 0xE7, 0xC3, 0xE7, 0xA3, 0xBE, 0xA7, 0x4B, 0x35, 0x05, 0x22, 0x1A, 0x81, 0x32, 0x98, 0x95, 0x4E, 0x02, 0xF7, 0xE5, 0x82, 0xEF, 0xC6, 0xCE, 0xCC, 0x53, 0x77, 0x03, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x05, 0x00, 0x01, 0x81, 0x31, 0xAF, 0x8C, 0x1D, 0x01, 0x94, 0x5E, 0x81, 0x94, 0x3E, 0x73, 0x38, 0x06, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x42, 0x12, 0x01, 0x94, 0x5E, 0x85, 0x8B, 0xFC, 0x4A, 0x32, 0x39, 0xD0, 0x94, 0x5E, 0x83, 0xDC, 0x39, 0xD0, 0x13, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x83, 0x2A, 0x79, 0x84, 0xD4, 0xFF, 0xED, 0xF7, 0xE6, 0x03, 0xF7, + 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x4F, 0x6C, 0x35, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x39, 0x63, 0xF3, 0x04, 0xF7, 0xE5, 0x80, 0xF7, 0xE6, 0x01, 0xF7, 0xE7, 0x80, 0xEF, 0xE5, 0x01, 0xF7, 0xE5, 0x81, 0xEF, 0xC6, 0xB6, 0x2C, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD7, 0xB6, 0x69, 0x0A, 0xEF, 0xE2, 0x81, 0xD7, 0x45, 0x63, 0xF2, 0x04, 0x22, 0x1A, 0x84, 0x2A, 0x59, 0x64, 0x12, 0xF7, 0xE5, 0xD7, 0x28, 0x53, 0x95, 0x05, 0x22, 0x1A, 0x83, 0x2A, 0x59, 0x63, 0xF3, 0xE7, 0x67, 0xEF, 0xE6, 0x05, 0xF7, 0xE5, 0x82, 0xEF, 0xE6, 0xD7, 0x09, 0x5B, 0xD4, 0x05, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x74, 0x72, 0x04, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xCE, 0xC9, 0x2A, 0x59, 0x04, 0x22, 0x1A, 0x83, 0x2A, 0x59, 0x63, 0xF3, 0xE7, 0x87, 0xF7, 0xE6, 0x04, 0xF7, 0xE5, 0x82, 0xEF, 0xE6, 0xC6, 0xAA, 0x32, 0xB8, 0x04, 0x22, 0x1A, 0x83, 0x2A, 0x39, 0x63, 0xF4, 0xEF, 0xC7, 0xB6, 0x4D, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0x90, 0x04, 0xFF, 0xED, 0x81, 0xE7, 0x6E, 0x84, 0xD4, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x77, 0x04, 0xFF, 0xED, 0x81, 0xF7, 0xCE, 0xB6, 0x31, 0x05, 0x22, 0x1A, 0x83, 0x2A, 0x59, 0x74, 0x74, 0xEF, 0xC9, 0xEF, 0xE4, 0x04, 0xEF, 0xE2, 0x82, 0xE7, 0xC3, 0xAE, 0x29, 0x2A, 0x59, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x64, 0x13, 0x03, 0xF7, 0xE5, 0x82, 0xEF, 0xE7, 0xCE, 0xCF, 0x4B, 0x57, 0x02, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x05, 0x00, 0x01, 0x81, 0x31, 0x8F, 0x7B, 0x9A, 0x02, 0x94, 0x3E, 0x81, 0x83, 0xBB, 0x29, 0x4E, 0x05, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x4A, 0x32, + 0x01, 0x94, 0x3E, 0x85, 0x83, 0xDB, 0x31, 0x8F, 0x31, 0xAF, 0x8C, 0x1D, 0x8B, 0xDC, 0x41, 0xF1, 0x13, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x82, 0x2A, 0x79, 0x84, 0xD4, 0xFF, 0xED, 0x04, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x4F, 0x6C, 0x35, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x39, 0x64, 0x13, 0x01, 0xF7, 0xE5, 0x82, 0xF7, 0xE7, 0xF7, 0xEA, 0xF7, 0xEC, 0x03, 0xFF, 0xED, 0x83, 0xF7, 0xEB, 0xF7, 0xE7, 0xEF, 0xC6, 0xB6, 0x2C, 0x05, 0x22, 0x1A, 0x84, 0x3A, 0xD7, 0xBE, 0x6B, 0xF7, 0xE5, 0xEF, 0xE4, 0xEF, 0xE3, 0x07, 0xEF, 0xE2, 0x81, 0xD7, 0x45, 0x63, 0xF2, 0x04, 0x22, 0x1A, 0x84, 0x2A, 0x59, 0x64, 0x12, 0xEF, 0xE2, 0xC6, 0xA8, 0x2A, 0x59, 0x05, 0x22, 0x1A, 0x82, 0x43, 0x36, 0xD7, 0x08, 0xF7, 0xE6, 0x07, 0xF7, 0xE5, 0x82, 0xEF, 0xE6, 0xC6, 0xAA, 0x3A, 0xD7, 0x05, 0x22, 0x1A, 0x81, 0x4B, 0x36, 0xE7, 0x87, 0x03, 0xF7, 0xE5, 0x81, 0xEF, 0xC6, 0xB6, 0x4B, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xB8, 0xAD, 0xED, 0x07, 0xF7, 0xE5, 0x81, 0xDF, 0x68, 0x74, 0x52, 0x05, 0x22, 0x1A, 0x82, 0x4B, 0x38, 0xEF, 0x8E, 0xBE, 0x51, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0x90, 0x04, 0xFF, 0xED, 0x81, 0xE7, 0x6E, 0x84, 0xD4, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x77, 0x04, 0xFF, 0xED, 0x81, 0xEF, 0xAE, 0x9D, 0x73, 0x05, 0x22, 0x1A, 0x82, 0x3A, 0xF8, 0xCE, 0xAF, 0xF7, 0xE8, 0x01, 0xF7, 0xE5, 0x04, 0xEF, 0xE2, 0x81, 0xD7, 0x45, 0x6C, 0x31, 0x05, 0x22, 0x1A, 0x81, 0x53, 0x74, 0xEF, 0xE4, 0x03, 0xF7, 0xE5, 0x82, 0xF7, 0xC9, 0xC6, 0x90, 0x32, 0x99, 0x01, + 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x05, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x39, 0xB0, 0x7B, 0x9A, 0x01, 0x94, 0x3E, 0x81, 0x8B, 0xDC, 0x42, 0x12, 0x05, 0x00, 0x01, 0x81, 0x29, 0x2D, 0x4A, 0x53, 0x01, 0x94, 0x3E, 0x85, 0x7B, 0x9A, 0x21, 0x2D, 0x29, 0x6E, 0x73, 0x38, 0x94, 0x1D, 0x62, 0xD6, 0x13, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x82, 0x2A, 0x79, 0x84, 0xD4, 0xF7, 0xEC, 0x04, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x4F, 0x6C, 0x35, 0x04, 0x22, 0x1A, 0x83, 0x2A, 0x59, 0x64, 0x13, 0xF7, 0xE6, 0xF7, 0xEC, 0x08, 0xFF, 0xED, 0x81, 0xF7, 0xCE, 0xB6, 0x2F, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD7, 0xBE, 0x6B, 0x04, 0xF7, 0xE6, 0x01, 0xEF, 0xE4, 0x03, 0xEF, 0xE5, 0x81, 0xDF, 0x47, 0x64, 0x13, 0x04, 0x22, 0x1A, 0x83, 0x22, 0x39, 0x64, 0x13, 0xE7, 0xA6, 0x9D, 0xAD, 0x05, 0x22, 0x1A, 0x81, 0x32, 0x99, 0x95, 0x32, 0x0A, 0xF7, 0xEC, 0x81, 0xEF, 0x8C, 0x95, 0x52, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0x8F, 0x03, 0xF7, 0xEC, 0x81, 0xEF, 0xCC, 0xAD, 0xD1, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0xAF, 0x06, 0xF7, 0xEC, 0x82, 0xFF, 0xED, 0xEF, 0xAE, 0x9D, 0x53, 0x05, 0x22, 0x1A, 0x82, 0x43, 0x18, 0xD7, 0x0F, 0xBE, 0x51, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0x90, 0x04, 0xFF, 0xED, 0x81, 0xE7, 0x6E, 0x84, 0xD4, 0x05, 0x22, 0x1A, 0x82, 0x53, 0x76, 0xF7, 0xEA, 0xF7, 0xE8, 0x01, 0xF7, 0xE7, 0x82, 0xF7, 0xE6, 0xE7, 0x88, 0x8C, 0xF0, 0x05, 0x22, 0x1A, 0x81, 0x4B, 0x36, 0xEF, 0xC6, 0x03, 0xF7, 0xE5, 0x80, 0xEF, 0xE3, 0x02, 0xEF, 0xE2, + 0x81, 0xDF, 0x84, 0x85, 0x0E, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x36, 0xEF, 0xC5, 0x03, 0xF7, 0xE5, 0x82, 0xF7, 0xE7, 0xE7, 0x8E, 0x8C, 0xF4, 0x01, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x06, 0x00, 0x01, 0x85, 0x21, 0x2D, 0x41, 0xF1, 0x8B, 0xFD, 0x9C, 0x3E, 0x94, 0x1D, 0x62, 0xF7, 0x05, 0x00, 0x01, 0x8A, 0x29, 0x4D, 0x5A, 0x94, 0x9C, 0x3E, 0x94, 0x1D, 0x6B, 0x18, 0x00, 0x01, 0x21, 0x2D, 0x41, 0xF1, 0x94, 0x1D, 0x83, 0xBB, 0x31, 0x6F, 0x12, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x82, 0x2A, 0x79, 0x84, 0xB4, 0xF7, 0xEA, 0x04, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x4F, 0x6C, 0x36, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x6C, 0x13, 0x0A, 0xF7, 0xE9, 0x81, 0xEF, 0xC9, 0xB6, 0x2E, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xBE, 0x6D, 0x05, 0xF7, 0xE9, 0x80, 0xF7, 0xE8, 0x03, 0xF7, 0xE5, 0x81, 0xDF, 0x48, 0x64, 0x13, 0x04, 0x22, 0x1A, 0x83, 0x2A, 0x39, 0x63, 0xF3, 0xE7, 0x87, 0x84, 0xF0, 0x05, 0x22, 0x1A, 0x81, 0x42, 0xF7, 0xD7, 0x09, 0x0B, 0xF7, 0xE6, 0x81, 0xCE, 0xEA, 0x3A, 0xD8, 0x04, 0x22, 0x1A, 0x81, 0x32, 0xB8, 0xA5, 0xAE, 0x03, 0xF7, 0xE6, 0x81, 0xE7, 0xA7, 0x9D, 0x8E, 0x05, 0x22, 0x1A, 0x81, 0x42, 0xF7, 0xCE, 0xE9, 0x07, 0xF7, 0xE6, 0x81, 0xEF, 0xC7, 0xAD, 0xED, 0x05, 0x22, 0x1A, 0x82, 0x42, 0xF7, 0xC6, 0xCA, 0xBE, 0x4B, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD7, 0xBE, 0x8B, 0x04, 0xF7, 0xE6, 0x81, 0xE7, 0x67, 0x84, 0xD0, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x75, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x67, 0x84, 0xD1, 0x05, 0x22, 0x1A, 0x80, 0x53, + 0x95, 0x05, 0xF7, 0xE5, 0x02, 0xEF, 0xE2, 0x81, 0xDF, 0x84, 0x85, 0x0E, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x36, 0xEF, 0xC5, 0x03, 0xF7, 0xE5, 0x82, 0xF7, 0xE8, 0xF7, 0xED, 0xC6, 0x70, 0x01, 0x22, 0x1A, 0x80, 0x21, 0xF8, 0x07, 0x00, 0x01, 0x81, 0x29, 0x4D, 0x52, 0x74, 0x01, 0x9C, 0x3E, 0x81, 0x83, 0x9B, 0x29, 0x6E, 0x04, 0x00, 0x01, 0x84, 0x29, 0x4E, 0x62, 0xD6, 0x9C, 0x3E, 0x93, 0xFD, 0x5A, 0x95, 0x01, 0x00, 0x01, 0x83, 0x29, 0x4E, 0x5A, 0x95, 0x93, 0xFD, 0x62, 0xB6, 0x12, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x82, 0x2A, 0x79, 0x84, 0xB4, 0xF7, 0xE8, 0x04, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x4F, 0x6C, 0x36, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x6C, 0x13, 0x0A, 0xF7, 0xE5, 0x81, 0xEF, 0xC6, 0xB6, 0x4B, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD7, 0xBE, 0x6B, 0x0A, 0xF7, 0xE5, 0x81, 0xDF, 0x48, 0x64, 0x13, 0x04, 0x22, 0x1A, 0x83, 0x2A, 0x39, 0x63, 0xF4, 0xDF, 0x67, 0x74, 0x72, 0x05, 0x22, 0x1A, 0x81, 0x4B, 0x36, 0xEF, 0xC6, 0x0B, 0xF7, 0xE5, 0x81, 0xD7, 0x08, 0x4B, 0x56, 0x04, 0x22, 0x1A, 0x81, 0x32, 0x98, 0x8D, 0x0F, 0x03, 0xF7, 0xE5, 0x81, 0xE7, 0xA7, 0x9D, 0x6E, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x17, 0xDF, 0x48, 0x07, 0xF7, 0xE5, 0x81, 0xEF, 0xC6, 0xBE, 0x6B, 0x05, 0x2A, 0x79, 0x82, 0x4B, 0x36, 0xC6, 0xCA, 0xBE, 0x6B, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD7, 0xBE, 0x6B, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x67, 0x84, 0xD0, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x75, 0x04, 0xF7, 0xE5, 0x81, 0xDF, 0x67, 0x7C, 0xB1, 0x04, 0x22, 0x1A, 0x81, + 0x22, 0x3A, 0x5B, 0xD4, 0x05, 0xF7, 0xE5, 0x02, 0xEF, 0xE2, 0x81, 0xDF, 0x84, 0x85, 0x0E, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x17, 0xE7, 0xA7, 0x03, 0xF7, 0xE5, 0x85, 0xF7, 0xE9, 0xFF, 0xED, 0xD6, 0xF0, 0x2A, 0x79, 0x22, 0x1A, 0x21, 0xD7, 0x08, 0x00, 0x01, 0x84, 0x31, 0x6E, 0x6B, 0x17, 0x9C, 0x3E, 0x8B, 0xFC, 0x52, 0x74, 0x04, 0x00, 0x01, 0x84, 0x29, 0x6E, 0x6B, 0x18, 0x9C, 0x3E, 0x8B, 0xDC, 0x4A, 0x12, 0x02, 0x00, 0x01, 0x83, 0x31, 0x6F, 0x73, 0x38, 0x83, 0xBB, 0x39, 0xB0, 0x11, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x82, 0x2A, 0x79, 0x84, 0xB4, 0xF7, 0xE8, 0x04, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x4F, 0x6C, 0x36, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x6C, 0x13, 0x0A, 0xF7, 0xE5, 0x81, 0xEF, 0xC6, 0xB6, 0x4B, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD7, 0xBE, 0x6B, 0x0A, 0xF7, 0xE5, 0x81, 0xDF, 0x48, 0x6C, 0x13, 0x04, 0x22, 0x1A, 0x83, 0x22, 0x39, 0x63, 0xF4, 0xDF, 0x68, 0x74, 0x52, 0x05, 0x22, 0x1A, 0x80, 0x4B, 0x56, 0x0C, 0xF7, 0xE5, 0x81, 0xD7, 0x28, 0x4B, 0x56, 0x04, 0x22, 0x1A, 0x81, 0x32, 0x79, 0x8C, 0xF0, 0x03, 0xF7, 0xE5, 0x81, 0xE7, 0xA7, 0x95, 0x6E, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x17, 0xDF, 0x67, 0x08, 0xF7, 0xE5, 0x80, 0xEF, 0xC6, 0x05, 0xE7, 0x87, 0x82, 0xE7, 0xA7, 0xEF, 0xC6, 0xBE, 0x6B, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD7, 0xB6, 0x4B, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x67, 0x84, 0xD0, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x75, 0x04, 0xF7, 0xE5, 0x81, 0xDF, 0x67, 0x74, 0x72, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x39, 0x64, + 0x13, 0x04, 0xF7, 0xE5, 0x80, 0xEF, 0xE5, 0x02, 0xEF, 0xE2, 0x81, 0xDF, 0x84, 0x85, 0x0E, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x17, 0xE7, 0xA8, 0x03, 0xF7, 0xE5, 0x85, 0xF7, 0xEB, 0xFF, 0xED, 0xD7, 0x0F, 0x3A, 0xB9, 0x22, 0x1A, 0x21, 0xD8, 0x09, 0x00, 0x01, 0x84, 0x39, 0xB0, 0x83, 0x9A, 0x9C, 0x3E, 0x7B, 0x9A, 0x29, 0x4E, 0x03, 0x00, 0x01, 0x84, 0x31, 0x6F, 0x7B, 0x59, 0x9C, 0x3E, 0x8B, 0xBB, 0x31, 0x8F, 0x03, 0x00, 0x01, 0x83, 0x31, 0xAF, 0x7B, 0x59, 0x73, 0x38, 0x21, 0x2D, 0x10, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x82, 0x2A, 0x79, 0x7C, 0xB4, 0xF7, 0xE7, 0x04, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x4F, 0x6C, 0x36, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x6C, 0x33, 0x0A, 0xF7, 0xE5, 0x81, 0xEF, 0xC6, 0xB6, 0x4B, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD7, 0xBE, 0x6B, 0x0A, 0xF7, 0xE5, 0x81, 0xDF, 0x48, 0x6C, 0x13, 0x04, 0x22, 0x1A, 0x83, 0x22, 0x39, 0x63, 0xF4, 0xDF, 0x67, 0x74, 0x72, 0x05, 0x22, 0x1A, 0x81, 0x4B, 0x36, 0xEF, 0xE6, 0x0B, 0xF7, 0xE5, 0x81, 0xD7, 0x28, 0x4B, 0x55, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x79, 0x84, 0xF0, 0x03, 0xF7, 0xE5, 0x81, 0xE7, 0x87, 0x95, 0x4F, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x17, 0xE7, 0x87, 0x10, 0xF7, 0xE5, 0x81, 0xEF, 0xE6, 0xBE, 0x6B, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xB8, 0xB6, 0x2C, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x67, 0x84, 0xD0, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x75, 0x04, 0xF7, 0xE5, 0x81, 0xDF, 0x67, 0x74, 0x52, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x6C, 0x13, 0x04, 0xF7, 0xE5, 0x80, 0xEF, + 0xE3, 0x02, 0xEF, 0xE2, 0x81, 0xDF, 0x84, 0x85, 0x0E, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x18, 0xE7, 0x89, 0x02, 0xF7, 0xE5, 0x86, 0xF7, 0xE6, 0xF7, 0xEC, 0xFF, 0xED, 0xD7, 0x0F, 0x3A, 0xB9, 0x22, 0x1A, 0x21, 0xF8, 0x09, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x39, 0xD0, 0x83, 0xBB, 0x93, 0xFD, 0x62, 0xB6, 0x03, 0x00, 0x01, 0x84, 0x31, 0x8F, 0x83, 0x9B, 0x9C, 0x3E, 0x83, 0x9A, 0x21, 0x2D, 0x03, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x39, 0xD0, 0x7B, 0x59, 0x52, 0x54, 0x10, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x82, 0x2A, 0x79, 0x7C, 0x95, 0xF7, 0xE6, 0x04, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x4F, 0x6C, 0x36, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x6C, 0x33, 0x0A, 0xF7, 0xE5, 0x81, 0xEF, 0xC6, 0xB6, 0x4B, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD7, 0xBE, 0x6B, 0x0A, 0xF7, 0xE5, 0x81, 0xDF, 0x48, 0x6C, 0x13, 0x04, 0x22, 0x1A, 0x83, 0x22, 0x39, 0x63, 0xF4, 0xE7, 0x67, 0x84, 0xD0, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x17, 0xDF, 0x67, 0x0B, 0xF7, 0xE5, 0x81, 0xD7, 0x28, 0x53, 0x75, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x79, 0x84, 0xD1, 0x03, 0xF7, 0xE5, 0x81, 0xE7, 0x87, 0x95, 0x4F, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x16, 0xE7, 0x87, 0x10, 0xF7, 0xE5, 0x81, 0xEF, 0xE6, 0xBE, 0x6B, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xB8, 0xAE, 0x0C, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x67, 0x84, 0xD0, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x75, 0x04, 0xF7, 0xE5, 0x81, 0xDF, 0x48, 0x6C, 0x32, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x6C, 0x13, 0x02, 0xF7, 0xE6, 0x81, 0xF7, 0xE5, 0xEF, 0xE3, 0x03, + 0xEF, 0xE2, 0x81, 0xDF, 0x84, 0x85, 0x0E, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x18, 0xE7, 0x89, 0x02, 0xF7, 0xE5, 0x80, 0xF7, 0xE6, 0x01, 0xFF, 0xED, 0x83, 0xD6, 0xEF, 0x32, 0xB9, 0x22, 0x1A, 0x21, 0xD8, 0x0A, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x39, 0xB0, 0x7B, 0x7A, 0x8B, 0xBB, 0x41, 0xF1, 0x02, 0x00, 0x01, 0x83, 0x31, 0x8F, 0x93, 0xDC, 0x94, 0x1D, 0x73, 0x18, 0x05, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x39, 0xB0, 0x6A, 0xF7, 0x31, 0x8F, 0x0F, 0x00, 0x01, 0x80, 0x21, 0x4F, 0x01, 0x22, 0x1A, 0x82, 0x2A, 0x59, 0x7C, 0x95, 0xF7, 0xE6, 0x04, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x4F, 0x6C, 0x35, 0x04, 0x22, 0x1A, 0x82, 0x2A, 0x59, 0x6C, 0x33, 0xF7, 0xE6, 0x01, 0xF7, 0xE7, 0x80, 0xF7, 0xEA, 0x06, 0xF7, 0xEB, 0x81, 0xF7, 0xCB, 0xBE, 0x4F, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0x6F, 0x0A, 0xF7, 0xEB, 0x81, 0xDF, 0x4D, 0x6C, 0x35, 0x04, 0x22, 0x1A, 0x83, 0x22, 0x3A, 0x63, 0xF5, 0xEF, 0xAC, 0x9D, 0x72, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xB8, 0xAD, 0xD0, 0x0B, 0xF7, 0xEB, 0x81, 0xDF, 0x2D, 0x53, 0x77, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x79, 0x84, 0xB3, 0x03, 0xF7, 0xEB, 0x81, 0xEF, 0x8C, 0x95, 0x52, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x17, 0xE7, 0x8C, 0x11, 0xF7, 0xEB, 0x80, 0xC6, 0xAF, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xB8, 0xAD, 0xF0, 0x04, 0xF7, 0xEB, 0x81, 0xE7, 0x6C, 0x84, 0xD3, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x77, 0x04, 0xF7, 0xEB, 0x81, 0xDF, 0x4D, 0x6C, 0x35, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x5A, 0x6C, 0x35, 0x01, 0xFF, 0xED, 0x81, 0xF7, 0xEA, 0xF7, + 0xE6, 0x04, 0xF7, 0xE5, 0x81, 0xE7, 0x87, 0x8D, 0x10, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x18, 0xE7, 0x89, 0x02, 0xF7, 0xE5, 0x80, 0xF7, 0xEB, 0x01, 0xFF, 0xED, 0x83, 0xD6, 0xEF, 0x32, 0x99, 0x22, 0x1A, 0x21, 0xF8, 0x0B, 0x00, 0x01, 0x84, 0x21, 0x0D, 0x31, 0x8F, 0x62, 0xD6, 0x7B, 0x59, 0x29, 0x4E, 0x01, 0x00, 0x01, 0x83, 0x39, 0xB0, 0x9C, 0x1E, 0x93, 0xFD, 0x5A, 0x95, 0x06, 0x00, 0x01, 0x80, 0x21, 0x0D, 0x01, 0x29, 0x2D, 0x0F, 0x00, 0x01, 0x85, 0x21, 0x4F, 0x22, 0x19, 0x22, 0x1A, 0x2A, 0x59, 0x7C, 0x95, 0xF7, 0xE6, 0x04, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x4F, 0x6C, 0x35, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x5A, 0x6C, 0x35, 0x0A, 0xFF, 0xED, 0x81, 0xF7, 0xCD, 0xBE, 0x51, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0x70, 0x0A, 0xFF, 0xED, 0x81, 0xE7, 0x4F, 0x6C, 0x35, 0x04, 0x22, 0x1A, 0x83, 0x22, 0x3A, 0x63, 0xF6, 0xF7, 0xED, 0xC6, 0x71, 0x05, 0x22, 0x1A, 0x82, 0x22, 0x3A, 0x5B, 0xB6, 0xEF, 0xAE, 0x0A, 0xFF, 0xED, 0x81, 0xDF, 0x2F, 0x53, 0x77, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x79, 0x84, 0xB4, 0x03, 0xFF, 0xED, 0x81, 0xEF, 0x8E, 0x95, 0x53, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x18, 0xEF, 0x8E, 0x11, 0xFF, 0xED, 0x80, 0xCE, 0xD0, 0x05, 0x22, 0x1A, 0x81, 0x32, 0xB9, 0xA5, 0x92, 0x04, 0xFF, 0xED, 0x81, 0xE7, 0x6E, 0x84, 0xD4, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x77, 0x04, 0xFF, 0xED, 0x81, 0xE7, 0x4F, 0x6C, 0x16, 0x04, 0x22, 0x1A, 0x83, 0x2A, 0x5A, 0x6C, 0x35, 0xFF, 0xED, 0xF7, 0xE8, 0x06, 0xF7, 0xE5, 0x81, 0xE7, 0x87, 0x8D, 0x10, 0x05, 0x22, + 0x1A, 0x81, 0x43, 0x18, 0xE7, 0x69, 0x01, 0xF7, 0xE5, 0x81, 0xF7, 0xE6, 0xF7, 0xED, 0x01, 0xFF, 0xED, 0x84, 0xD6, 0xEF, 0x32, 0x99, 0x22, 0x1A, 0x21, 0xF8, 0x21, 0x0D, 0x0C, 0x00, 0x01, 0x88, 0x29, 0x4E, 0x41, 0xD1, 0x39, 0xD0, 0x00, 0x01, 0x21, 0x2D, 0x41, 0xF1, 0x9C, 0x3E, 0x8B, 0xDC, 0x4A, 0x12, 0x19, 0x00, 0x01, 0x85, 0x21, 0x2F, 0x21, 0xF9, 0x22, 0x1A, 0x2A, 0x59, 0x7C, 0x95, 0xF7, 0xE6, 0x04, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x4F, 0x74, 0x35, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x5A, 0x6C, 0x36, 0x0A, 0xFF, 0xED, 0x81, 0xF7, 0xCD, 0xBE, 0x71, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0x70, 0x0A, 0xFF, 0xED, 0x81, 0xE7, 0x4F, 0x6C, 0x35, 0x04, 0x22, 0x1A, 0x84, 0x22, 0x3A, 0x63, 0xF6, 0xFF, 0xED, 0xD7, 0x0F, 0x43, 0x18, 0x05, 0x22, 0x1A, 0x82, 0x2A, 0x79, 0x84, 0xB4, 0xF7, 0xCD, 0x09, 0xFF, 0xED, 0x81, 0xDF, 0x2F, 0x53, 0x97, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x79, 0x84, 0xB4, 0x03, 0xFF, 0xED, 0x81, 0xEF, 0x8E, 0x95, 0x53, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x18, 0xEF, 0x8E, 0x11, 0xFF, 0xED, 0x81, 0xD6, 0xF0, 0x2A, 0x79, 0x04, 0x22, 0x1A, 0x81, 0x32, 0x79, 0x8C, 0xF4, 0x04, 0xFF, 0xED, 0x81, 0xE7, 0x6E, 0x84, 0xD4, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x77, 0x04, 0xFF, 0xED, 0x81, 0xE7, 0x4F, 0x6C, 0x16, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x74, 0x54, 0x08, 0xF7, 0xE5, 0x81, 0xE7, 0x87, 0x8D, 0x10, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x18, 0xDF, 0x69, 0x01, 0xF7, 0xE5, 0x80, 0xF7, 0xEA, 0x02, 0xFF, 0xED, 0x83, 0xD6, 0xEF, 0x32, 0x99, + 0x22, 0x1A, 0x21, 0xF8, 0x0E, 0x00, 0x01, 0x01, 0x21, 0x2D, 0x85, 0x00, 0x01, 0x21, 0x2D, 0x4A, 0x33, 0x9C, 0x3E, 0x8B, 0xBB, 0x31, 0x6E, 0x19, 0x00, 0x01, 0x85, 0x21, 0x2F, 0x21, 0xF9, 0x22, 0x1A, 0x2A, 0x59, 0x7C, 0x95, 0xF7, 0xE6, 0x04, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x6E, 0x74, 0x55, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x5A, 0x6C, 0x36, 0x0A, 0xFF, 0xED, 0x81, 0xF7, 0xCD, 0xBE, 0x71, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0x70, 0x0A, 0xFF, 0xED, 0x81, 0xE7, 0x4F, 0x6C, 0x35, 0x04, 0x22, 0x1A, 0x84, 0x22, 0x3A, 0x63, 0xF6, 0xFF, 0xED, 0xEF, 0x8E, 0x8D, 0x14, 0x06, 0x22, 0x1A, 0x82, 0x2A, 0x79, 0x74, 0x55, 0xDF, 0x2F, 0x08, 0xFF, 0xED, 0x81, 0xDF, 0x2F, 0x53, 0x97, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x79, 0x84, 0xB4, 0x03, 0xFF, 0xED, 0x81, 0xEF, 0x8E, 0x95, 0x53, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x18, 0xEF, 0xAE, 0x11, 0xFF, 0xED, 0x81, 0xD7, 0x0F, 0x43, 0x18, 0x04, 0x22, 0x1A, 0x82, 0x22, 0x3A, 0x53, 0x97, 0xEF, 0x8E, 0x03, 0xFF, 0xED, 0x81, 0xE7, 0x6E, 0x84, 0xD4, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x77, 0x04, 0xFF, 0xED, 0x81, 0xDF, 0x4F, 0x63, 0xF6, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x74, 0x52, 0x08, 0xF7, 0xE5, 0x81, 0xE7, 0x87, 0x8D, 0x10, 0x05, 0x22, 0x1A, 0x84, 0x43, 0x18, 0xDF, 0x69, 0xF7, 0xE5, 0xF7, 0xE8, 0xF7, 0xED, 0x02, 0xFF, 0xED, 0x84, 0xD6, 0xF0, 0x2A, 0x59, 0x22, 0x1A, 0x21, 0xF8, 0x21, 0x0D, 0x10, 0x00, 0x01, 0x83, 0x29, 0x4D, 0x5A, 0x74, 0x9C, 0x1E, 0x7B, 0x59, 0x1A, 0x00, 0x01, 0x85, 0x21, 0x2F, 0x21, + 0xF8, 0x22, 0x1A, 0x2A, 0x59, 0x7C, 0x75, 0xF7, 0xE7, 0x05, 0xF7, 0xE5, 0x81, 0xE7, 0x6D, 0x74, 0x55, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x5A, 0x6C, 0x36, 0x0A, 0xFF, 0xED, 0x81, 0xF7, 0xED, 0xC6, 0x71, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0x70, 0x0A, 0xFF, 0xED, 0x81, 0xE7, 0x4F, 0x74, 0x35, 0x04, 0x22, 0x1A, 0x85, 0x22, 0x3A, 0x63, 0xF6, 0xFF, 0xED, 0xF7, 0xED, 0xCE, 0xD0, 0x3A, 0xB9, 0x06, 0x22, 0x1A, 0x87, 0x22, 0x3A, 0x3A, 0xD8, 0x7C, 0x95, 0xB6, 0x31, 0xD6, 0xF0, 0xDF, 0x4F, 0xEF, 0x8E, 0xF7, 0xCE, 0x02, 0xFF, 0xED, 0x81, 0xDF, 0x2F, 0x5B, 0x97, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x79, 0x84, 0xB4, 0x03, 0xFF, 0xED, 0x81, 0xEF, 0x8E, 0x95, 0x53, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x18, 0xEF, 0xAE, 0x11, 0xFF, 0xED, 0x81, 0xE7, 0x4F, 0x6C, 0x35, 0x05, 0x22, 0x1A, 0x82, 0x2A, 0x59, 0x6C, 0x16, 0xDF, 0x0F, 0x02, 0xFF, 0xED, 0x81, 0xE7, 0x6E, 0x84, 0xD4, 0x05, 0x22, 0x1A, 0x80, 0x53, 0x77, 0x04, 0xFF, 0xED, 0x81, 0xDF, 0x4F, 0x63, 0xF6, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x74, 0x52, 0x08, 0xF7, 0xE5, 0x81, 0xE7, 0x87, 0x8D, 0x10, 0x05, 0x22, 0x1A, 0x83, 0x43, 0x17, 0xDF, 0x68, 0xF7, 0xE8, 0xF7, 0xEC, 0x03, 0xFF, 0xED, 0x83, 0xD6, 0xF0, 0x2A, 0x5A, 0x22, 0x1A, 0x21, 0xF8, 0x11, 0x00, 0x01, 0x83, 0x29, 0x4E, 0x62, 0xB6, 0x93, 0xFD, 0x62, 0xB6, 0x1A, 0x00, 0x01, 0x85, 0x21, 0x2F, 0x21, 0xF8, 0x22, 0x1A, 0x2A, 0x5A, 0x74, 0x55, 0xF7, 0xE9, 0x05, 0xF7, 0xE5, 0x81, 0xDF, 0x6B, 0x74, 0x55, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x5A, 0x6C, + 0x36, 0x0A, 0xFF, 0xED, 0x81, 0xF7, 0xED, 0xC6, 0x71, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0x70, 0x0A, 0xFF, 0xED, 0x81, 0xE7, 0x4F, 0x74, 0x35, 0x04, 0x22, 0x1A, 0x81, 0x22, 0x3A, 0x63, 0xF6, 0x01, 0xFF, 0xED, 0x81, 0xEF, 0x8E, 0x95, 0x33, 0x08, 0x22, 0x1A, 0x81, 0x22, 0x3A, 0x2A, 0x59, 0x01, 0x2A, 0x79, 0x01, 0x32, 0x79, 0x84, 0x42, 0xF8, 0x9D, 0x73, 0xFF, 0xED, 0xDF, 0x2F, 0x5B, 0xB7, 0x05, 0x22, 0x1A, 0x80, 0x2A, 0x79, 0x04, 0x3A, 0xD8, 0x80, 0x32, 0x79, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x18, 0xEF, 0xAE, 0x11, 0xFF, 0xED, 0x81, 0xEF, 0xAE, 0xA5, 0xB2, 0x06, 0x22, 0x1A, 0x86, 0x22, 0x3A, 0x32, 0x99, 0x4B, 0x57, 0x7C, 0x75, 0xB6, 0x31, 0xE7, 0x6E, 0x84, 0xD4, 0x05, 0x22, 0x1A, 0x80, 0x32, 0x79, 0x04, 0x63, 0xF6, 0x81, 0x5B, 0xB6, 0x32, 0xB8, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x74, 0x52, 0x08, 0xF7, 0xE5, 0x81, 0xE7, 0x87, 0x8D, 0x10, 0x05, 0x22, 0x1A, 0x83, 0x43, 0x17, 0xDF, 0x48, 0xF7, 0xE9, 0xF7, 0xED, 0x03, 0xFF, 0xED, 0x80, 0xD6, 0xD0, 0x01, 0x22, 0x1A, 0x81, 0x21, 0xD8, 0x21, 0x0D, 0x10, 0x00, 0x01, 0x83, 0x29, 0x6E, 0x72, 0xF7, 0x93, 0xBC, 0x4A, 0x12, 0x1A, 0x00, 0x01, 0x86, 0x21, 0x2E, 0x21, 0xF8, 0x22, 0x1A, 0x2A, 0x3A, 0x6C, 0x16, 0xF7, 0xEC, 0xF7, 0xE7, 0x04, 0xF7, 0xE5, 0x81, 0xDF, 0x6B, 0x74, 0x55, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x5A, 0x6C, 0x36, 0x0A, 0xFF, 0xED, 0x81, 0xF7, 0xED, 0xC6, 0x70, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0x70, 0x0A, 0xFF, 0xED, 0x81, 0xE7, 0x6F, 0x74, 0x55, 0x04, 0x22, + 0x1A, 0x81, 0x22, 0x3A, 0x63, 0xF6, 0x01, 0xFF, 0xED, 0x82, 0xF7, 0xED, 0xDF, 0x2F, 0x63, 0xD6, 0x0D, 0x22, 0x1A, 0x84, 0x32, 0x99, 0x95, 0x33, 0xFF, 0xED, 0xDF, 0x2F, 0x5B, 0xB7, 0x12, 0x22, 0x1A, 0x81, 0x43, 0x18, 0xEF, 0xAE, 0x11, 0xFF, 0xED, 0x82, 0xF7, 0xED, 0xD6, 0xEF, 0x43, 0x18, 0x08, 0x22, 0x1A, 0x83, 0x32, 0x99, 0x8C, 0xF4, 0xE7, 0x6E, 0x84, 0xD4, 0x06, 0x22, 0x1A, 0x05, 0x22, 0x3A, 0x05, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x74, 0x52, 0x08, 0xF7, 0xE5, 0x81, 0xE7, 0x88, 0x8D, 0x12, 0x05, 0x22, 0x1A, 0x83, 0x43, 0x17, 0xDF, 0x68, 0xF7, 0xE5, 0xF7, 0xEC, 0x02, 0xFF, 0xED, 0x81, 0xF7, 0xED, 0xCE, 0xD0, 0x01, 0x22, 0x1A, 0x81, 0x21, 0xF8, 0x21, 0x0D, 0x10, 0x00, 0x01, 0x83, 0x31, 0x6F, 0x7B, 0x39, 0x8B, 0x9B, 0x29, 0x4E, 0x1A, 0x00, 0x01, 0x86, 0x21, 0x2E, 0x21, 0xD7, 0x22, 0x1A, 0x22, 0x3A, 0x63, 0xF6, 0xFF, 0xED, 0xF7, 0xE9, 0x04, 0xF7, 0xE5, 0x81, 0xDF, 0x69, 0x74, 0x55, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x5A, 0x6C, 0x36, 0x0A, 0xFF, 0xED, 0x81, 0xF7, 0xED, 0xC6, 0x70, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0x70, 0x0A, 0xFF, 0xED, 0x81, 0xE7, 0x6F, 0x74, 0x55, 0x04, 0x22, 0x1A, 0x81, 0x22, 0x3A, 0x63, 0xF6, 0x02, 0xFF, 0xED, 0x82, 0xF7, 0xED, 0xCE, 0xB0, 0x43, 0x18, 0x0C, 0x22, 0x1A, 0x84, 0x32, 0x99, 0x95, 0x33, 0xFF, 0xED, 0xDF, 0x2F, 0x5B, 0xB6, 0x12, 0x22, 0x1A, 0x81, 0x43, 0x18, 0xEF, 0xAE, 0x12, 0xFF, 0xED, 0x81, 0xEF, 0xAE, 0x9D, 0x53, 0x08, 0x22, 0x1A, 0x83, 0x2A, 0x79, 0x84, 0xB4, 0xE7, 0x6E, 0x84, 0xD4, + 0x12, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x74, 0x52, 0x07, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xE7, 0x87, 0x8D, 0x10, 0x05, 0x22, 0x1A, 0x84, 0x43, 0x18, 0xDF, 0x68, 0xF7, 0xE5, 0xF7, 0xE8, 0xF7, 0xED, 0x01, 0xFF, 0xED, 0x81, 0xF7, 0xED, 0xCE, 0xB0, 0x01, 0x22, 0x1A, 0x81, 0x21, 0xD8, 0x21, 0x0D, 0x10, 0x00, 0x01, 0x82, 0x31, 0x8F, 0x83, 0x5A, 0x6A, 0xF7, 0x1B, 0x00, 0x01, 0x81, 0x21, 0x2E, 0x21, 0xD6, 0x01, 0x22, 0x1A, 0x84, 0x5B, 0xB6, 0xFF, 0xED, 0xF7, 0xEC, 0xF7, 0xEB, 0xF7, 0xE6, 0x02, 0xF7, 0xE5, 0x81, 0xDF, 0x68, 0x74, 0x74, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x5A, 0x6C, 0x36, 0x0A, 0xFF, 0xED, 0x81, 0xF7, 0xED, 0xC6, 0x70, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0x70, 0x0A, 0xFF, 0xED, 0x81, 0xE7, 0x6F, 0x74, 0x55, 0x04, 0x22, 0x1A, 0x81, 0x22, 0x3A, 0x63, 0xF6, 0x03, 0xFF, 0xED, 0x82, 0xF7, 0xCD, 0xCE, 0xB0, 0x4B, 0x57, 0x0B, 0x22, 0x1A, 0x84, 0x32, 0x99, 0x95, 0x33, 0xFF, 0xED, 0xDF, 0x2F, 0x5B, 0xB6, 0x12, 0x22, 0x1A, 0x81, 0x43, 0x18, 0xEF, 0xAE, 0x12, 0xFF, 0xED, 0x82, 0xF7, 0xED, 0xDF, 0x2F, 0x63, 0xF6, 0x07, 0x22, 0x1A, 0x83, 0x2A, 0x79, 0x84, 0xB4, 0xE7, 0x6E, 0x84, 0xD4, 0x12, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x74, 0x52, 0x08, 0xF7, 0xE5, 0x81, 0xE7, 0x87, 0x8D, 0x10, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x17, 0xDF, 0x67, 0x01, 0xF7, 0xE5, 0x80, 0xF7, 0xEC, 0x01, 0xFF, 0xED, 0x81, 0xF7, 0xED, 0xC6, 0x90, 0x01, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x11, 0x00, 0x01, 0x82, 0x31, 0x8F, 0x83, 0x7A, 0x41, 0xF1, 0x1B, 0x00, 0x01, 0x81, + 0x21, 0x2E, 0x21, 0xB6, 0x01, 0x22, 0x1A, 0x80, 0x53, 0x97, 0x02, 0xFF, 0xED, 0x80, 0xF7, 0xEA, 0x02, 0xF7, 0xE5, 0x81, 0xDF, 0x67, 0x74, 0x72, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x5A, 0x6C, 0x36, 0x0A, 0xFF, 0xED, 0x81, 0xF7, 0xED, 0xC6, 0x90, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0xD8, 0xC6, 0x70, 0x0A, 0xFF, 0xED, 0x81, 0xE7, 0x6F, 0x74, 0x55, 0x04, 0x22, 0x1A, 0x81, 0x22, 0x3A, 0x63, 0xF6, 0x04, 0xFF, 0xED, 0x82, 0xF7, 0xCD, 0xD6, 0xF0, 0x6C, 0x16, 0x0A, 0x22, 0x1A, 0x84, 0x32, 0x99, 0x95, 0x33, 0xFF, 0xED, 0xDF, 0x4F, 0x5B, 0xD6, 0x12, 0x22, 0x1A, 0x81, 0x43, 0x18, 0xEF, 0xAE, 0x13, 0xFF, 0xED, 0x82, 0xF7, 0xED, 0xD6, 0xEF, 0x5B, 0xB6, 0x06, 0x22, 0x1A, 0x83, 0x2A, 0x59, 0x7C, 0x95, 0xE7, 0x6E, 0x84, 0xD4, 0x12, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x74, 0x52, 0x08, 0xF7, 0xE5, 0x81, 0xE7, 0x87, 0x8D, 0x10, 0x05, 0x22, 0x1A, 0x81, 0x43, 0x17, 0xDF, 0x67, 0x01, 0xF7, 0xE5, 0x80, 0xF7, 0xEC, 0x01, 0xFF, 0xED, 0x81, 0xF7, 0xCD, 0xBE, 0x71, 0x01, 0x22, 0x1A, 0x80, 0x21, 0xD7, 0x11, 0x00, 0x01, 0x82, 0x31, 0x8F, 0x7B, 0x39, 0x21, 0x2D, 0x1B, 0x00, 0x01, 0x81, 0x21, 0x2E, 0x21, 0xB5, 0x01, 0x22, 0x1A, 0x81, 0x4B, 0x57, 0xF7, 0xCD, 0x02, 0xFF, 0xED, 0x80, 0xF7, 0xE7, 0x01, 0xF7, 0xE5, 0x81, 0xE7, 0x67, 0x84, 0xB1, 0x04, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x6C, 0x33, 0x0A, 0xF7, 0xE6, 0x81, 0xEF, 0xE6, 0xBE, 0x8B, 0x05, 0x22, 0x1A, 0x83, 0x3A, 0xD7, 0xBE, 0x6B, 0xF7, 0xE6, 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x80, 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x80, + 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x82, 0xF7, 0xE7, 0xDF, 0x68, 0x74, 0x52, 0x04, 0x22, 0x1A, 0x81, 0x22, 0x3A, 0x63, 0xF4, 0x01, 0xF7, 0xE6, 0x80, 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x01, 0xF7, 0xE7, 0x82, 0xE7, 0x68, 0xA5, 0xCE, 0x43, 0x17, 0x08, 0x22, 0x1A, 0x84, 0x32, 0x98, 0x95, 0x30, 0xF7, 0xE6, 0xDF, 0x49, 0x5B, 0xD4, 0x12, 0x22, 0x1A, 0x83, 0x43, 0x17, 0xE7, 0xA8, 0xF7, 0xE7, 0xF7, 0xE6, 0x01, 0xF7, 0xE7, 0x80, 0xF7, 0xE6, 0x01, 0xF7, 0xE7, 0x80, 0xF7, 0xE6, 0x01, 0xF7, 0xE7, 0x80, 0xF7, 0xE6, 0x01, 0xF7, 0xE7, 0x80, 0xF7, 0xE6, 0x01, 0xF7, 0xE7, 0x80, 0xF7, 0xE6, 0x01, 0xF7, 0xE7, 0x80, 0xF7, 0xE6, 0x01, 0xF7, 0xE7, 0x82, 0xDF, 0x29, 0x84, 0xD1, 0x2A, 0x59, 0x04, 0x22, 0x1A, 0x83, 0x2A, 0x59, 0x7C, 0x95, 0xE7, 0x6E, 0x84, 0xD4, 0x12, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x74, 0x52, 0x07, 0xF7, 0xE5, 0x82, 0xEF, 0xE4, 0xDF, 0x85, 0x8D, 0x0E, 0x05, 0x22, 0x1A, 0x83, 0x43, 0x17, 0xDF, 0x67, 0xF7, 0xE5, 0xF7, 0xE8, 0x02, 0xFF, 0xED, 0x81, 0xEF, 0xAE, 0xA5, 0xB2, 0x01, 0x22, 0x1A, 0x81, 0x21, 0xD7, 0x21, 0x0D, 0x01, 0x00, 0x01, 0x80, 0x21, 0x2D, 0x0D, 0x00, 0x01, 0x81, 0x29, 0x4E, 0x41, 0xF1, 0x1C, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x21, 0x72, 0x01, 0x22, 0x1A, 0x81, 0x3A, 0xB8, 0xC6, 0x90, 0x02, 0xFF, 0xED, 0x80, 0xF7, 0xEA, 0x01, 0xF7, 0xE5, 0x82, 0xE7, 0xA6, 0xA5, 0xAD, 0x22, 0x3A, 0x03, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x6C, 0x33, 0x09, 0xF7, 0xE5, 0x82, 0xF7, 0xE6, 0xEF, 0xE6, 0xBE, 0x8B, 0x05, 0x22, 0x1A, 0x83, 0x3A, 0xD7, 0xBE, + 0x6B, 0xF7, 0xE6, 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x80, 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x80, 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x82, 0xF7, 0xE7, 0xDF, 0x68, 0x74, 0x72, 0x04, 0x22, 0x1A, 0x81, 0x22, 0x3A, 0x63, 0xF4, 0x01, 0xF7, 0xE6, 0x80, 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x80, 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x85, 0xEF, 0xC7, 0xDF, 0x68, 0xB6, 0x2C, 0x7C, 0x92, 0x4B, 0x56, 0x32, 0x98, 0x04, 0x22, 0x1A, 0x84, 0x32, 0x98, 0x95, 0x30, 0xF7, 0xE6, 0xDF, 0x48, 0x63, 0xD4, 0x12, 0x22, 0x1A, 0x81, 0x43, 0x16, 0xE7, 0xA7, 0x15, 0xF7, 0xE5, 0x85, 0xF7, 0xE6, 0xE7, 0xA6, 0xCE, 0xE9, 0x8C, 0xF0, 0x4B, 0x55, 0x2A, 0x59, 0x01, 0x22, 0x1A, 0x83, 0x2A, 0x59, 0x74, 0x72, 0xE7, 0x69, 0x84, 0xD2, 0x12, 0x22, 0x1A, 0x81, 0x2A, 0x59, 0x74, 0x52, 0x01, 0xF7, 0xE5, 0x80, 0xEF, 0xE4, 0x01, 0xEF, 0xE3, 0x03, 0xEF, 0xE2, 0x81, 0xDF, 0x84, 0x85, 0x0E, 0x04, 0x22, 0x1A, 0x84, 0x2A, 0x59, 0x74, 0x72, 0xEF, 0xC6, 0xF7, 0xE5, 0xF7, 0xEA, 0x02, 0xFF, 0xED, 0x81, 0xE7, 0x4F, 0x6C, 0x35, 0x01, 0x22, 0x1A, 0x82, 0x21, 0xB6, 0x29, 0x2D, 0x4A, 0x12, 0x01, 0x7B, 0x39, 0x80, 0x21, 0x2D, 0x0D, 0x00, 0x01, 0x80, 0x21, 0x2D, 0x1D, 0x00, 0x01, 0x85, 0x21, 0x2F, 0x21, 0xF8, 0x22, 0x1A, 0x22, 0x39, 0x74, 0x55, 0xF7, 0xED, 0x02, 0xFF, 0xED, 0x85, 0xF7, 0xE8, 0xF7, 0xE5, 0xF7, 0xE6, 0xEF, 0xC6, 0xDF, 0x68, 0xD7, 0x09, 0x03, 0xCE, 0xC9, 0x80, 0xD7, 0x28, 0x02, 0xF7, 0xE5, 0x01, 0xF7, 0xE6, 0x84, 0xF7, 0xE7, 0xF7, 0xE8, 0xF7, 0xE9, 0xF7, 0xEA, 0xF7, 0xEC, 0x01, 0xF7, 0xED, + 0x80, 0xEF, 0xAE, 0x05, 0xCE, 0xD0, 0x81, 0xD6, 0xEF, 0xEF, 0xAE, 0x0A, 0xFF, 0xED, 0x81, 0xF7, 0xED, 0xE7, 0x6E, 0x05, 0xDF, 0x2F, 0x80, 0xE7, 0x6E, 0x08, 0xFF, 0xED, 0x87, 0xF7, 0xED, 0xF7, 0xCD, 0xF7, 0xCE, 0xEF, 0xAE, 0xEF, 0x8E, 0xE7, 0x6E, 0xDF, 0x2F, 0xD7, 0x0F, 0x01, 0xCE, 0xD0, 0x84, 0xD6, 0xF0, 0xE7, 0x6E, 0xFF, 0xED, 0xF7, 0xCD, 0xDF, 0x2F, 0x01, 0xCE, 0xD0, 0x82, 0xCE, 0xCE, 0xCE, 0xCD, 0xCE, 0xCB, 0x01, 0xCE, 0xCA, 0x0B, 0xCE, 0xC9, 0x81, 0xCF, 0x09, 0xEF, 0xE6, 0x17, 0xF7, 0xE5, 0x84, 0xEF, 0xE6, 0xEF, 0xC6, 0xE7, 0xA7, 0xE7, 0x87, 0xD7, 0x28, 0x01, 0xCE, 0xC9, 0x82, 0xDF, 0x48, 0xEF, 0xE6, 0xDF, 0x48, 0x01, 0xCE, 0xC9, 0x02, 0xCE, 0xCA, 0x01, 0xC6, 0xC7, 0x81, 0xC6, 0xC8, 0xC6, 0xC9, 0x03, 0xCE, 0xCB, 0x01, 0xCE, 0xCA, 0x02, 0xC6, 0xC8, 0x01, 0xC6, 0xC7, 0x80, 0xD7, 0x45, 0x06, 0xEF, 0xE2, 0x01, 0xEF, 0xE3, 0x81, 0xEF, 0xE5, 0xDF, 0x67, 0x03, 0xCE, 0xC9, 0x84, 0xD7, 0x09, 0xDF, 0x48, 0xEF, 0xA6, 0xF7, 0xE6, 0xF7, 0xE8, 0x02, 0xFF, 0xED, 0x86, 0xF7, 0xCD, 0xBE, 0x51, 0x2A, 0x59, 0x22, 0x1A, 0x21, 0xF9, 0x29, 0xB4, 0x4A, 0x12, 0x01, 0x9B, 0xFD, 0x80, 0x7B, 0x18, 0x2D, 0x00, 0x01, 0x81, 0x21, 0x2E, 0x21, 0xB4, 0x01, 0x22, 0x1A, 0x81, 0x32, 0x79, 0xAD, 0xD2, 0x02, 0xFF, 0xED, 0x84, 0xF7, 0xEC, 0xF7, 0xEB, 0xF7, 0xE7, 0xF7, 0xE5, 0xF7, 0xE6, 0x04, 0xEF, 0xE6, 0x83, 0xF7, 0xE8, 0xF7, 0xEA, 0xF7, 0xEB, 0xF7, 0xEC, 0x08, 0xFF, 0xED, 0x08, 0xF7, 0xED, 0x0B, 0xFF, 0xED, 0x07, 0xF7, 0xED, 0x0E, 0xFF, 0xED, 0x05, + 0xF7, 0xED, 0x01, 0xFF, 0xED, 0x07, 0xF7, 0xED, 0x83, 0xF7, 0xEC, 0xF7, 0xE9, 0xF7, 0xE8, 0xF7, 0xE7, 0x08, 0xEF, 0xE6, 0x1C, 0xF7, 0xE5, 0x80, 0xF7, 0xE6, 0x02, 0xEF, 0xE6, 0x81, 0xF7, 0xE5, 0xF7, 0xE6, 0x04, 0xEF, 0xE6, 0x01, 0xEF, 0xE4, 0x80, 0xEF, 0xE5, 0x0C, 0xEF, 0xE6, 0x09, 0xF7, 0xE5, 0x80, 0xF7, 0xE6, 0x04, 0xEF, 0xE6, 0x83, 0xF7, 0xE6, 0xF7, 0xE5, 0xF7, 0xE8, 0xF7, 0xEB, 0x02, 0xFF, 0xED, 0x81, 0xDF, 0x2F, 0x5B, 0xB7, 0x01, 0x22, 0x1A, 0x85, 0x21, 0xD8, 0x31, 0x91, 0x62, 0x95, 0xA4, 0x1E, 0x9B, 0xDD, 0x62, 0x95, 0x2E, 0x00, 0x01, 0x81, 0x21, 0x4F, 0x21, 0xF8, 0x01, 0x22, 0x1A, 0x81, 0x3A, 0xB8, 0xCE, 0xB0, 0x03, 0xFF, 0xED, 0x81, 0xF7, 0xEC, 0xF7, 0xEB, 0x01, 0xF7, 0xE9, 0x81, 0xF7, 0xEA, 0xF7, 0xEC, 0x4F, 0xFF, 0xED, 0x84, 0xF7, 0xEC, 0xF7, 0xEB, 0xF7, 0xE9, 0xF7, 0xE8, 0xF7, 0xE7, 0x01, 0xF7, 0xE6, 0x23, 0xF7, 0xE5, 0x01, 0xF7, 0xE6, 0x83, 0xF7, 0xE7, 0xF7, 0xE9, 0xF7, 0xEB, 0xF7, 0xEC, 0x1E, 0xF7, 0xE5, 0x81, 0xF7, 0xE6, 0xF7, 0xE9, 0x03, 0xFF, 0xED, 0x81, 0xE7, 0x6E, 0x7C, 0x95, 0x01, 0x22, 0x1A, 0x86, 0x21, 0xF9, 0x21, 0x93, 0x29, 0x6F, 0x6A, 0xD6, 0xA4, 0x1E, 0x93, 0xBC, 0x4A, 0x12, 0x2E, 0x00, 0x01, 0x81, 0x21, 0x0D, 0x21, 0x71, 0x02, 0x22, 0x1A, 0x81, 0x3A, 0xB8, 0xC6, 0x70, 0x60, 0xFF, 0xED, 0x80, 0xF7, 0xEC, 0x01, 0xF7, 0xEB, 0x80, 0xF7, 0xEA, 0x02, 0xF7, 0xE9, 0x18, 0xF7, 0xE8, 0x01, 0xF7, 0xE9, 0x81, 0xF7, 0xEB, 0xF7, 0xEC, 0x04, 0xFF, 0xED, 0x81, 0xF7, 0xE9, 0xF7, 0xE7, 0x19, 0xF7, 0xE5, 0x82, + 0xF7, 0xE6, 0xF7, 0xE8, 0xF7, 0xEB, 0x03, 0xFF, 0xED, 0x83, 0xF7, 0xED, 0xE7, 0x4F, 0x7C, 0x75, 0x22, 0x3A, 0x01, 0x22, 0x1A, 0x86, 0x21, 0xB6, 0x21, 0x2D, 0x29, 0x4E, 0x6A, 0xD7, 0xA4, 0x1E, 0x93, 0x9C, 0x39, 0x90, 0x0C, 0x00, 0x01, 0x82, 0x21, 0x0D, 0x29, 0x4E, 0x29, 0x4D, 0x1F, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x21, 0x93, 0x02, 0x22, 0x1A, 0x82, 0x2A, 0x58, 0x95, 0x53, 0xEF, 0xAE, 0x7F, 0xFF, 0xED, 0x09, 0xFF, 0xED, 0x81, 0xF7, 0xE9, 0xF7, 0xE7, 0x11, 0xF7, 0xE6, 0x84, 0xF7, 0xE7, 0xF7, 0xE8, 0xF7, 0xE9, 0xF7, 0xEB, 0xF7, 0xEC, 0x06, 0xFF, 0xED, 0x82, 0xF7, 0xCE, 0xC6, 0x90, 0x53, 0x57, 0x02, 0x22, 0x1A, 0x87, 0x21, 0xD7, 0x21, 0x2E, 0x00, 0x01, 0x29, 0x4E, 0x72, 0xD7, 0xA4, 0x1E, 0x8B, 0x7B, 0x21, 0x2D, 0x0C, 0x00, 0x01, 0x82, 0x29, 0x4E, 0x52, 0x33, 0x41, 0xD1, 0x20, 0x00, 0x01, 0x81, 0x21, 0x2E, 0x21, 0x93, 0x02, 0x22, 0x1A, 0x87, 0x22, 0x19, 0x4B, 0x37, 0xA5, 0x92, 0xCE, 0xB0, 0xE7, 0x4F, 0xEF, 0x8E, 0xEF, 0xAE, 0xF7, 0xED, 0x7F, 0xFF, 0xED, 0x1D, 0xFF, 0xED, 0x87, 0xF7, 0xED, 0xEF, 0xAE, 0xEF, 0x8E, 0xE7, 0x4F, 0xD6, 0xEF, 0xAD, 0xD2, 0x63, 0xB5, 0x22, 0x19, 0x02, 0x22, 0x1A, 0x87, 0x21, 0xD7, 0x21, 0x2F, 0x21, 0x0D, 0x00, 0x01, 0x29, 0x4E, 0x72, 0xD7, 0xA3, 0xFE, 0x7B, 0x19, 0x0D, 0x00, 0x01, 0x82, 0x31, 0x6F, 0x72, 0xD7, 0x4A, 0x12, 0x21, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x21, 0x71, 0x21, 0xF9, 0x02, 0x22, 0x1A, 0x82, 0x22, 0x19, 0x2A, 0x59, 0x2A, 0x79, 0x02, 0x32, 0x79, 0x85, 0x32, 0x99, 0x3A, 0xB9, 0x3A, 0xD8, + 0x42, 0xF8, 0x4B, 0x38, 0x4B, 0x57, 0x0E, 0x5B, 0x97, 0x80, 0x5B, 0xD6, 0x62, 0x63, 0xF6, 0x01, 0x63, 0xD6, 0x02, 0x63, 0xB6, 0x01, 0x5B, 0xB6, 0x07, 0x63, 0xB6, 0x80, 0x63, 0xB7, 0x07, 0x5B, 0x77, 0x06, 0x5B, 0x78, 0x01, 0x53, 0x38, 0x82, 0x4B, 0x19, 0x3A, 0xD9, 0x3A, 0xB9, 0x01, 0x32, 0x99, 0x84, 0x32, 0x79, 0x3A, 0x9A, 0x52, 0xDB, 0x3A, 0x7A, 0x42, 0x7B, 0x02, 0x22, 0x1A, 0x82, 0x21, 0xF9, 0x21, 0xB5, 0x21, 0x2E, 0x02, 0x00, 0x01, 0x83, 0x31, 0x6E, 0x72, 0xF8, 0x9B, 0xDD, 0x6A, 0x96, 0x0D, 0x00, 0x01, 0x82, 0x39, 0x8F, 0x8B, 0x7B, 0x5A, 0x54, 0x22, 0x00, 0x01, 0x82, 0x21, 0x0D, 0x21, 0x4F, 0x21, 0xB5, 0x78, 0x22, 0x1A, 0x05, 0x22, 0x3A, 0x05, 0x22, 0x1A, 0x81, 0x3A, 0x5B, 0x83, 0x7D, 0x19, 0xA3, 0xFE, 0x02, 0xAB, 0xFE, 0x02, 0xA3, 0xFE, 0x81, 0x8B, 0x9D, 0x5A, 0xDC, 0x02, 0x32, 0x5B, 0x84, 0x2A, 0x3A, 0x22, 0x1A, 0x21, 0xD7, 0x21, 0x71, 0x21, 0x0D, 0x03, 0x00, 0x01, 0x83, 0x31, 0x6E, 0x7B, 0x19, 0x9B, 0xBC, 0x52, 0x33, 0x0C, 0x00, 0x01, 0x83, 0x21, 0x0D, 0x41, 0xD1, 0x9B, 0xDD, 0x6A, 0x96, 0x24, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x21, 0x50, 0x21, 0xB5, 0x21, 0xF9, 0x67, 0x22, 0x1A, 0x80, 0x22, 0x19, 0x16, 0x21, 0xF9, 0x81, 0x2A, 0x3A, 0x8B, 0x9D, 0x24, 0xAB, 0xFE, 0x85, 0x93, 0xBD, 0x73, 0x1C, 0x3A, 0x37, 0x29, 0x70, 0x29, 0x2E, 0x21, 0x2D, 0x03, 0x00, 0x01, 0x84, 0x21, 0x0D, 0x41, 0xD1, 0x9B, 0xBD, 0x93, 0x9C, 0x39, 0xB0, 0x0C, 0x00, 0x01, 0x83, 0x29, 0x2D, 0x52, 0x33, 0xA3, 0xDE, 0x72, 0xF8, 0x25, 0x00, 0x01, 0x01, + 0x21, 0x0D, 0x80, 0x21, 0x2D, 0x01, 0x21, 0x2E, 0x02, 0x21, 0x4F, 0x01, 0x21, 0x50, 0x0F, 0x21, 0x71, 0x17, 0x21, 0x72, 0x1C, 0x21, 0x92, 0x19, 0x21, 0x93, 0x80, 0x21, 0x72, 0x02, 0x21, 0x71, 0x80, 0x21, 0x50, 0x02, 0x21, 0x51, 0x02, 0x21, 0x50, 0x80, 0x21, 0x51, 0x03, 0x21, 0x71, 0x07, 0x21, 0x50, 0x81, 0x21, 0x71, 0x73, 0x19, 0x26, 0xAB, 0xFE, 0x84, 0xA3, 0xDE, 0x83, 0x3A, 0x72, 0xD8, 0x72, 0xD7, 0x6A, 0xB6, 0x01, 0x62, 0x95, 0x87, 0x6A, 0x96, 0x6A, 0xB6, 0x72, 0xB7, 0x83, 0x19, 0x9B, 0xBD, 0xAB, 0xFE, 0x93, 0x7B, 0x29, 0x4E, 0x0C, 0x00, 0x01, 0x83, 0x29, 0x4D, 0x5A, 0x74, 0xA3, 0xFE, 0x83, 0x39, 0x2D, 0x00, 0x01, 0x61, 0x21, 0x0D, 0x14, 0x00, 0x01, 0x83, 0x21, 0x0D, 0x29, 0x4D, 0x4A, 0x12, 0x9B, 0x9C, 0x28, 0xAB, 0xFE, 0x07, 0xA3, 0xDE, 0x02, 0xAB, 0xFE, 0x80, 0x83, 0x19, 0x0D, 0x00, 0x01, 0x84, 0x29, 0x4E, 0x62, 0x75, 0xAB, 0xFE, 0x93, 0x7B, 0x21, 0x2D, 0x7F, 0x00, 0x01, 0x23, 0x00, 0x01, 0x82, 0x29, 0x4E, 0x62, 0x75, 0x9B, 0xBD, 0x33, 0xAB, 0xFE, 0x81, 0xA3, 0xDD, 0x6A, 0x96, 0x0D, 0x00, 0x01, 0x84, 0x29, 0x4E, 0x6A, 0x96, 0xAB, 0xFE, 0x93, 0x7B, 0x31, 0x6F, 0x7F, 0x00, 0x01, 0x21, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x41, 0xB0, 0x8B, 0x3A, 0xA3, 0xDE, 0x34, 0xAB, 0xFE, 0x81, 0x9B, 0xBC, 0x52, 0x13, 0x0D, 0x00, 0x01, 0x84, 0x29, 0x4E, 0x6A, 0x96, 0xAB, 0xFE, 0x9B, 0xBC, 0x4A, 0x12, 0x7F, 0x00, 0x01, 0x20, 0x00, 0x01, 0x82, 0x29, 0x2D, 0x52, 0x33, 0x9B, 0xBC, 0x13, 0xAB, 0xFE, 0x84, 0xA3, 0xDD, 0x9B, 0xBC, 0x93, 0x7B, + 0x8B, 0x5A, 0x83, 0x19, 0x02, 0x7A, 0xF8, 0x80, 0x7A, 0xD7, 0x03, 0x72, 0xB7, 0x85, 0x72, 0xD7, 0x7A, 0xF8, 0x83, 0x19, 0x8B, 0x5A, 0x93, 0x7B, 0xA3, 0xBD, 0x0F, 0xAB, 0xFE, 0x81, 0x9B, 0x9C, 0x39, 0x8F, 0x0D, 0x00, 0x01, 0x84, 0x29, 0x4E, 0x6A, 0x95, 0xAB, 0xFE, 0xA3, 0xDD, 0x6A, 0x96, 0x7F, 0x00, 0x01, 0x1F, 0x00, 0x01, 0x82, 0x29, 0x4E, 0x6A, 0x96, 0xA3, 0xDD, 0x0B, 0xAB, 0xFE, 0x87, 0xA3, 0xBD, 0x93, 0x5B, 0x83, 0x19, 0x72, 0xB7, 0x62, 0x75, 0x52, 0x13, 0x41, 0xD1, 0x31, 0x8F, 0x02, 0x29, 0x4E, 0x06, 0x29, 0x2D, 0x03, 0x21, 0x2D, 0x04, 0x29, 0x2D, 0x86, 0x29, 0x4E, 0x31, 0x6F, 0x41, 0xD1, 0x52, 0x13, 0x6A, 0x95, 0x83, 0x19, 0x9B, 0x9C, 0x09, 0xAB, 0xFE, 0x81, 0x8B, 0x5A, 0x21, 0x2D, 0x0D, 0x00, 0x01, 0x81, 0x29, 0x4D, 0x62, 0x75, 0x01, 0xAB, 0xFE, 0x80, 0x8B, 0x3A, 0x7F, 0x00, 0x01, 0x1E, 0x00, 0x01, 0x82, 0x31, 0x6F, 0x83, 0x19, 0xAB, 0xDE, 0x07, 0xAB, 0xFE, 0x85, 0x9B, 0x9C, 0x7A, 0xF8, 0x62, 0x75, 0x49, 0xF2, 0x31, 0x6F, 0x29, 0x4E, 0x01, 0x29, 0x2D, 0x02, 0x21, 0x2D, 0x80, 0x21, 0x0D, 0x15, 0x00, 0x01, 0x80, 0x21, 0x0D, 0x01, 0x21, 0x2D, 0x85, 0x29, 0x2D, 0x29, 0x4E, 0x39, 0x8F, 0x52, 0x13, 0x72, 0xB7, 0x93, 0x7B, 0x04, 0xAB, 0xFE, 0x81, 0xA3, 0xDD, 0x72, 0xB7, 0x0E, 0x00, 0x01, 0x81, 0x29, 0x2D, 0x5A, 0x54, 0x01, 0xAB, 0xFE, 0x81, 0x9B, 0x7B, 0x39, 0x8F, 0x7F, 0x00, 0x01, 0x1B, 0x00, 0x01, 0x83, 0x21, 0x0D, 0x39, 0xB0, 0x8B, 0x5A, 0xAB, 0xDE, 0x04, 0xAB, 0xFE, 0x87, 0xAB, 0xDE, 0x93, 0x7B, 0x6A, 0x96, 0x41, + 0xD1, 0x29, 0x4E, 0x29, 0x2D, 0x21, 0x2D, 0x21, 0x0D, 0x23, 0x00, 0x01, 0x01, 0x21, 0x2D, 0x87, 0x29, 0x4E, 0x39, 0x8F, 0x5A, 0x34, 0x7A, 0xF8, 0x9B, 0x9C, 0xAB, 0xFE, 0x9B, 0x9C, 0x41, 0xD1, 0x0E, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x52, 0x12, 0x01, 0xAB, 0xFE, 0x81, 0xA3, 0xBD, 0x5A, 0x34, 0x7F, 0x00, 0x01, 0x1A, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x41, 0xD1, 0x9B, 0x7B, 0xAB, 0xDE, 0x02, 0xAB, 0xFE, 0x86, 0xAB, 0xDE, 0x9B, 0x9C, 0x6A, 0x96, 0x41, 0xD1, 0x29, 0x4D, 0x21, 0x2D, 0x21, 0x0D, 0x2B, 0x00, 0x01, 0x85, 0x21, 0x2D, 0x29, 0x2D, 0x29, 0x4E, 0x39, 0x90, 0x41, 0xB0, 0x21, 0x2D, 0x0F, 0x00, 0x01, 0x80, 0x41, 0xB1, 0x01, 0xAB, 0xFE, 0x81, 0xAB, 0xDE, 0x7A, 0xF8, 0x7F, 0x00, 0x01, 0x19, 0x00, 0x01, 0x83, 0x21, 0x2D, 0x49, 0xD1, 0x9B, 0x9C, 0xAB, 0xDE, 0x01, 0xB3, 0xFE, 0x85, 0xAB, 0xDE, 0x8B, 0x3A, 0x52, 0x33, 0x29, 0x4E, 0x21, 0x2D, 0x21, 0x0D, 0x32, 0x00, 0x01, 0x80, 0x21, 0x0D, 0x10, 0x00, 0x01, 0x85, 0x39, 0x90, 0xA3, 0xBD, 0xB3, 0xFE, 0xAB, 0xFE, 0x93, 0x7B, 0x31, 0x6E, 0x7F, 0x00, 0x01, 0x17, 0x00, 0x01, 0x89, 0x21, 0x2D, 0x49, 0xD1, 0x9B, 0x9C, 0xAB, 0xFE, 0xB3, 0xFE, 0xAB, 0xBD, 0x7A, 0xF8, 0x41, 0xD1, 0x29, 0x2D, 0x21, 0x2D, 0x47, 0x00, 0x01, 0x81, 0x39, 0x8F, 0x9B, 0x7B, 0x01, 0xB3, 0xFE, 0x81, 0xA3, 0x9C, 0x52, 0x13, 0x7F, 0x00, 0x01, 0x16, 0x00, 0x01, 0x88, 0x21, 0x2D, 0x49, 0xD1, 0x9B, 0x9C, 0xB3, 0xFE, 0xAB, 0xDE, 0x83, 0x19, 0x41, 0xD1, 0x29, 0x2D, 0x21, 0x0D, 0x49, 0x00, 0x01, 0x81, 0x31, 0x6F, 0x83, 0x19, + 0x01, 0xB3, 0xFE, 0x81, 0xAB, 0xBE, 0x7A, 0xD7, 0x7F, 0x00, 0x01, 0x15, 0x00, 0x01, 0x87, 0x21, 0x2D, 0x41, 0xD1, 0x9B, 0x7C, 0xAB, 0xDE, 0x8B, 0x1A, 0x49, 0xD2, 0x29, 0x2D, 0x21, 0x0D, 0x4B, 0x00, 0x01, 0x81, 0x29, 0x4E, 0x72, 0xB6, 0x02, 0xB3, 0xDE, 0x81, 0x93, 0x5B, 0x29, 0x4D, 0x7F, 0x00, 0x01, 0x14, 0x00, 0x01, 0x85, 0x39, 0x90, 0x93, 0x5B, 0xA3, 0x9D, 0x62, 0x75, 0x29, 0x4E, 0x21, 0x0D, 0x4D, 0x00, 0x01, 0x81, 0x29, 0x2D, 0x5A, 0x34, 0x02, 0xB3, 0xDE, 0x81, 0xA3, 0x9C, 0x49, 0xF2, 0x7F, 0x00, 0x01, 0x13, 0x00, 0x01, 0x84, 0x31, 0x6F, 0x82, 0xF9, 0x8B, 0x19, 0x41, 0xB0, 0x21, 0x2D, 0x4F, 0x00, 0x01, 0x81, 0x21, 0x0D, 0x49, 0xD1, 0x02, 0xB3, 0xDE, 0x81, 0xAB, 0xBD, 0x72, 0xB7, 0x7F, 0x00, 0x01, 0x12, 0x00, 0x01, 0x80, 0x31, 0x4E, 0x01, 0x6A, 0x96, 0x81, 0x29, 0x4E, 0x21, 0x0D, 0x33, 0x00, 0x01, 0x82, 0x29, 0x4E, 0x52, 0x12, 0x31, 0x6F, 0x1A, 0x00, 0x01, 0x81, 0x39, 0x8F, 0xA3, 0x7C, 0x02, 0xB3, 0xDE, 0x81, 0x93, 0x5B, 0x29, 0x4D, 0x7F, 0x00, 0x01, 0x10, 0x00, 0x01, 0x83, 0x21, 0x0D, 0x31, 0x6F, 0x49, 0xF2, 0x29, 0x2D, 0x35, 0x00, 0x01, 0x88, 0x31, 0x6F, 0x93, 0x3B, 0xAB, 0xBD, 0xA3, 0x7C, 0x8B, 0x3A, 0x7A, 0xD7, 0x62, 0x55, 0x49, 0xF2, 0x29, 0x4E, 0x14, 0x00, 0x01, 0x81, 0x31, 0x6E, 0x82, 0xF9, 0x02, 0xB3, 0xDE, 0x81, 0xA3, 0x7C, 0x49, 0xF2, 0x7F, 0x00, 0x01, 0x12, 0x00, 0x01, 0x80, 0x21, 0x2D, 0x36, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x51, 0xF2, 0xAB, 0x9D, 0x02, 0xB3, 0xDE, 0x85, 0xB3, 0xBE, 0xAB, 0xBE, 0xA3, 0x7C, + 0x72, 0xB7, 0x41, 0xB1, 0x29, 0x2D, 0x11, 0x00, 0x01, 0x81, 0x29, 0x4E, 0x6A, 0x75, 0x02, 0xB3, 0xDE, 0x81, 0xAB, 0xBD, 0x72, 0xB7, 0x7F, 0x00, 0x01, 0x4B, 0x00, 0x01, 0x82, 0x29, 0x2D, 0x49, 0xD1, 0x9B, 0x5B, 0x05, 0xB3, 0xDE, 0x83, 0xAB, 0xBD, 0xA3, 0x7C, 0x72, 0x96, 0x29, 0x4E, 0x0F, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x49, 0xD1, 0x03, 0xB3, 0xDE, 0x81, 0x93, 0x5B, 0x29, 0x4D, 0x7F, 0x00, 0x01, 0x4B, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x39, 0x8F, 0x7A, 0xD8, 0x06, 0xB3, 0xDE, 0x83, 0xB3, 0xBE, 0x9B, 0x5B, 0x5A, 0x33, 0x31, 0x4E, 0x0E, 0x00, 0x01, 0x81, 0x39, 0x8F, 0xA3, 0x7C, 0x02, 0xB3, 0xDE, 0x81, 0xA3, 0x7C, 0x49, 0xF2, 0x7F, 0x00, 0x01, 0x4D, 0x00, 0x01, 0x82, 0x29, 0x4E, 0x62, 0x54, 0xAB, 0xBD, 0x06, 0xB3, 0xDE, 0x85, 0xB3, 0xBE, 0xAB, 0x9D, 0x9B, 0x5B, 0x82, 0xD8, 0x52, 0x13, 0x29, 0x2D, 0x0A, 0x00, 0x01, 0x81, 0x31, 0x6E, 0x82, 0xD8, 0x02, 0xB3, 0xDE, 0x81, 0xAB, 0xBD, 0x7A, 0xB7, 0x7F, 0x00, 0x01, 0x4E, 0x00, 0x01, 0x82, 0x29, 0x4E, 0x5A, 0x34, 0xB3, 0xDE, 0x07, 0xB3, 0xDF, 0x85, 0xB3, 0xDE, 0xB3, 0xBE, 0xAB, 0xBE, 0x9B, 0x5B, 0x62, 0x34, 0x29, 0x2D, 0x08, 0x00, 0x01, 0x81, 0x29, 0x2D, 0x62, 0x54, 0x02, 0xB3, 0xDF, 0x82, 0xB3, 0xDE, 0x9B, 0x5B, 0x29, 0x4E, 0x7F, 0x00, 0x01, 0x4E, 0x00, 0x01, 0x82, 0x31, 0x4E, 0x6A, 0x76, 0xAB, 0x9D, 0x09, 0xBB, 0xDF, 0x83, 0xB3, 0xDE, 0xB3, 0xBE, 0x93, 0x1A, 0x41, 0xB1, 0x07, 0x00, 0x01, 0x82, 0x21, 0x0D, 0x49, 0xD1, 0xB3, 0xDE, 0x02, 0xBB, 0xDF, 0x81, 0xAB, 0x7D, 0x52, 0x13, 0x7F, + 0x00, 0x01, 0x4F, 0x00, 0x01, 0x83, 0x29, 0x2D, 0x39, 0x90, 0x82, 0xD8, 0xB3, 0xDE, 0x09, 0xBB, 0xDF, 0x83, 0xB3, 0xBE, 0xA3, 0x7C, 0x5A, 0x34, 0x21, 0x0D, 0x06, 0x00, 0x01, 0x81, 0x39, 0x8F, 0xA3, 0x5C, 0x02, 0xBB, 0xDF, 0x81, 0xB3, 0xBE, 0x82, 0xD8, 0x7F, 0x00, 0x01, 0x50, 0x00, 0x01, 0x83, 0x21, 0x0D, 0x31, 0x6E, 0x72, 0x76, 0xB3, 0xBE, 0x09, 0xBB, 0xDF, 0x83, 0xBB, 0xBE, 0xAB, 0x9D, 0x7A, 0xB7, 0x29, 0x2D, 0x05, 0x00, 0x01, 0x81, 0x31, 0x4E, 0x82, 0xD8, 0x02, 0xBB, 0xDF, 0x82, 0xBB, 0xDE, 0x9B, 0x5B, 0x31, 0x6F, 0x7F, 0x00, 0x01, 0x51, 0x00, 0x01, 0x82, 0x29, 0x4E, 0x62, 0x34, 0xB3, 0xBE, 0x09, 0xBB, 0xDF, 0x83, 0xBB, 0xDE, 0xB3, 0x9E, 0x82, 0xD8, 0x29, 0x4E, 0x04, 0x00, 0x01, 0x81, 0x29, 0x2D, 0x6A, 0x55, 0x03, 0xBB, 0xDF, 0x81, 0xAB, 0x9D, 0x62, 0x34, 0x7F, 0x00, 0x01, 0x52, 0x00, 0x01, 0x82, 0x29, 0x2D, 0x51, 0xF3, 0xA3, 0x5C, 0x09, 0xBB, 0xDF, 0x83, 0xBB, 0xDE, 0xB3, 0x9E, 0x82, 0xD8, 0x29, 0x2D, 0x03, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x49, 0xD1, 0xBB, 0xDE, 0x02, 0xBB, 0xDF, 0x81, 0xB3, 0xBE, 0x8A, 0xF9, 0x7F, 0x00, 0x01, 0x53, 0x00, 0x01, 0x84, 0x21, 0x2D, 0x29, 0x4E, 0x49, 0xD1, 0x7A, 0xB7, 0xB3, 0x9D, 0x07, 0xBB, 0xBF, 0x83, 0xBB, 0xBE, 0xB3, 0x9D, 0x82, 0xB8, 0x29, 0x2D, 0x03, 0x00, 0x01, 0x81, 0x39, 0x8F, 0xAB, 0x7C, 0x03, 0xBB, 0xBF, 0x81, 0xA3, 0x5C, 0x39, 0x90, 0x7F, 0x00, 0x01, 0x54, 0x00, 0x01, 0x84, 0x21, 0x0D, 0x29, 0x2D, 0x39, 0x90, 0x7A, 0xB7, 0xB3, 0xBE, 0x06, 0xBB, 0xBF, 0x82, 0xBB, 0xBE, 0xAB, + 0x9D, 0x72, 0x76, 0x03, 0x00, 0x01, 0x81, 0x31, 0x6F, 0x92, 0xF9, 0x03, 0xBB, 0xBF, 0x81, 0xAB, 0x9D, 0x6A, 0x55, 0x7F, 0x00, 0x01, 0x56, 0x00, 0x01, 0x83, 0x21, 0x0D, 0x29, 0x4E, 0x51, 0xF2, 0xAB, 0x7C, 0x06, 0xBB, 0xBF, 0x82, 0xBB, 0xBE, 0xA3, 0x7C, 0x51, 0xF2, 0x02, 0x00, 0x01, 0x81, 0x29, 0x4E, 0x7A, 0x96, 0x03, 0xBB, 0xBF, 0x82, 0xBB, 0xBE, 0x93, 0x1A, 0x21, 0x0D, 0x7F, 0x00, 0x01, 0x57, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x41, 0xB0, 0x9B, 0x3B, 0x06, 0xBB, 0xBF, 0x82, 0xBB, 0xBE, 0x9B, 0x3B, 0x39, 0x6F, 0x01, 0x00, 0x01, 0x81, 0x29, 0x2D, 0x5A, 0x14, 0x04, 0xBB, 0xBF, 0x81, 0xA3, 0x5C, 0x41, 0xB0, 0x7F, 0x00, 0x01, 0x58, 0x00, 0x01, 0x82, 0x21, 0x0D, 0x41, 0x90, 0x9B, 0x1A, 0x06, 0xBB, 0xBF, 0x86, 0xB3, 0x9E, 0x82, 0xD8, 0x21, 0x2D, 0x00, 0x01, 0x21, 0x0D, 0x41, 0xB1, 0xBB, 0xBE, 0x03, 0xBB, 0xBF, 0x81, 0xB3, 0x7D, 0x6A, 0x55, 0x7F, 0x00, 0x01, 0x59, 0x00, 0x01, 0x82, 0x21, 0x0D, 0x41, 0x90, 0x9B, 0x1A, 0x05, 0xBB, 0xBF, 0x82, 0xBB, 0xBE, 0xAB, 0x7D, 0x62, 0x34, 0x01, 0x00, 0x01, 0x81, 0x39, 0x8F, 0xAB, 0x5C, 0x03, 0xBB, 0xBF, 0x81, 0xBB, 0xBE, 0x8A, 0xF9, 0x7F, 0x00, 0x01, 0x5A, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x41, 0xB1, 0xA3, 0x5C, 0x05, 0xBB, 0xBF, 0x85, 0xBB, 0xBE, 0x9B, 0x3B, 0x39, 0x6F, 0x00, 0x01, 0x31, 0x6F, 0x92, 0xF9, 0x04, 0xBB, 0xBF, 0x81, 0xA3, 0x5C, 0x39, 0x6F, 0x7F, 0x00, 0x01, 0x5A, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x49, 0xD1, 0xB3, 0x7D, 0x05, 0xBB, 0xBF, 0x84, 0xB3, 0x9E, 0x82, 0xB7, 0x00, 0x01, 0x31, + 0x4E, 0x82, 0xB7, 0x04, 0xBB, 0xBF, 0x81, 0xAB, 0x7D, 0x59, 0xF3, 0x7F, 0x00, 0x01, 0x5B, 0x00, 0x01, 0x82, 0x29, 0x2D, 0x62, 0x14, 0xBB, 0xBE, 0x04, 0xC3, 0xBF, 0x84, 0xBB, 0xBF, 0xAB, 0x5C, 0x51, 0xD2, 0x29, 0x4E, 0x6A, 0x55, 0x04, 0xC3, 0xBF, 0x81, 0xB3, 0x9E, 0x7A, 0x97, 0x7F, 0x00, 0x01, 0x5C, 0x00, 0x01, 0x81, 0x31, 0x4E, 0x82, 0xB7, 0x05, 0xC3, 0xBF, 0x83, 0xBB, 0x9E, 0x92, 0xF9, 0x29, 0x4E, 0x5A, 0x13, 0x04, 0xC3, 0xBF, 0x82, 0xBB, 0xBE, 0x9B, 0x1A, 0x21, 0x0D, 0x7F, 0x00, 0x01, 0x5B, 0x00, 0x01, 0x82, 0x21, 0x0D, 0x41, 0x90, 0xB3, 0x7D, 0x05, 0xC3, 0xBF, 0x82, 0xB3, 0x7D, 0x62, 0x34, 0x51, 0xF2, 0x05, 0xC3, 0xBF, 0x81, 0xAB, 0x5C, 0x39, 0x6F, 0x7F, 0x00, 0x01, 0x5C, 0x00, 0x01, 0x81, 0x29, 0x4E, 0x6A, 0x55, 0x05, 0xC3, 0xBF, 0x82, 0xBB, 0x9E, 0x9B, 0x1B, 0x59, 0xF3, 0x05, 0xC3, 0xBF, 0x81, 0xAB, 0x5D, 0x51, 0xF2, 0x7F, 0x00, 0x01, 0x5D, 0x00, 0x01, 0x81, 0x39, 0x90, 0xA3, 0x3C, 0x05, 0xC3, 0xBF, 0x81, 0xBB, 0x7E, 0x9B, 0x1B, 0x05, 0xC3, 0xBF, 0x81, 0xB3, 0x7D, 0x72, 0x55, 0x7F, 0x00, 0x01, 0x5D, 0x00, 0x01, 0x81, 0x29, 0x2D, 0x6A, 0x35, 0x06, 0xC3, 0xBF, 0x80, 0xC3, 0x9E, 0x05, 0xC3, 0xBF, 0x81, 0xBB, 0x9E, 0x8A, 0xD8, 0x7F, 0x00, 0x01, 0x5E, 0x00, 0x01, 0x81, 0x39, 0x8F, 0xA3, 0x3C, 0x0C, 0xC3, 0xBF, 0x82, 0xC3, 0x9F, 0xA3, 0x1B, 0x21, 0x0D, 0x7F, 0x00, 0x01, 0x5D, 0x00, 0x01, 0x81, 0x29, 0x2D, 0x6A, 0x35, 0x0D, 0xC3, 0x9F, 0x81, 0xAB, 0x3C, 0x31, 0x4E, 0x7F, 0x00, 0x01, 0x5E, 0x00, 0x01, 0x81, 0x39, 0x90, + 0xAB, 0x5C, 0x0C, 0xC3, 0x9F, 0x81, 0xAB, 0x5C, 0x41, 0xB1, 0x7F, 0x00, 0x01, 0x5E, 0x00, 0x01, 0x81, 0x29, 0x4E, 0x7A, 0x76, 0x0C, 0xC3, 0x9F, 0x81, 0xB3, 0x5D, 0x59, 0xF3, 0x7F, 0x00, 0x01, 0x5E, 0x00, 0x01, 0x82, 0x21, 0x0D, 0x41, 0xB0, 0xBB, 0x7D, 0x0B, 0xC3, 0x9F, 0x81, 0xB3, 0x7D, 0x6A, 0x34, 0x7F, 0x00, 0x01, 0x5F, 0x00, 0x01, 0x81, 0x31, 0x4E, 0x8A, 0xB8, 0x0B, 0xC3, 0x9F, 0x81, 0xBB, 0x7D, 0x7A, 0x76, 0x7F, 0x00, 0x01, 0x5F, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x51, 0xD2, 0xC3, 0x9E, 0x0A, 0xC3, 0x9F, 0x81, 0xBB, 0x7E, 0x82, 0x97, 0x7F, 0x00, 0x01, 0x60, 0x00, 0x01, 0x81, 0x31, 0x6F, 0x9A, 0xD9, 0x0A, 0xC3, 0x9F, 0x81, 0xC3, 0x7E, 0x92, 0xB9, 0x7F, 0x00, 0x01, 0x60, 0x00, 0x01, 0x81, 0x29, 0x2D, 0x59, 0xF3, 0x0A, 0xC3, 0x9F, 0x81, 0xC3, 0x9E, 0x92, 0xD9, 0x7F, 0x00, 0x01, 0x61, 0x00, 0x01, 0x81, 0x39, 0x6F, 0xAB, 0x1B, 0x09, 0xCB, 0x9F, 0x81, 0xC3, 0x9F, 0x9A, 0xFA, 0x7F, 0x00, 0x01, 0x61, 0x00, 0x01, 0x81, 0x29, 0x2D, 0x6A, 0x35, 0x09, 0xCB, 0x9F, 0x81, 0xC3, 0x9F, 0xA3, 0x1B, 0x7F, 0x00, 0x01, 0x62, 0x00, 0x01, 0x81, 0x41, 0x90, 0xBB, 0x5D, 0x09, 0xCB, 0x9F, 0x80, 0xA3, 0x1B, 0x7F, 0x00, 0x01, 0x62, 0x00, 0x01, 0x81, 0x31, 0x4E, 0x8A, 0xB8, 0x09, 0xCB, 0x9F, 0x80, 0xA3, 0x1B, 0x7F, 0x00, 0x01, 0x62, 0x00, 0x01, 0x81, 0x29, 0x2D, 0x59, 0xF2, 0x08, 0xCB, 0x9F, 0x81, 0xCB, 0x7F, 0xA2, 0xFB, 0x7F, 0x00, 0x01, 0x63, 0x00, 0x01, 0x81, 0x39, 0x6F, 0xAB, 0x1C, 0x07, 0xCB, 0x9F, 0x81, 0xCB, 0x7F, 0xA2, 0xFB, 0x7F, 0x00, + 0x01, 0x63, 0x00, 0x01, 0x81, 0x31, 0x4E, 0x7A, 0x76, 0x07, 0xCB, 0x9F, 0x81, 0xCB, 0x7E, 0x9A, 0xDA, 0x7F, 0x00, 0x01, 0x63, 0x00, 0x01, 0x82, 0x21, 0x2D, 0x51, 0xB1, 0xCB, 0x7F, 0x06, 0xCB, 0x9F, 0x81, 0xC3, 0x7E, 0x92, 0xB9, 0x7F, 0x00, 0x01, 0x64, 0x00, 0x01, 0x81, 0x39, 0x6F, 0xAB, 0x1B, 0x06, 0xCB, 0x9F, 0x81, 0xC3, 0x7E, 0x8A, 0x98, 0x7F, 0x00, 0x01, 0x64, 0x00, 0x01, 0x81, 0x31, 0x4E, 0x82, 0x77, 0x06, 0xCB, 0x7F, 0x81, 0xC3, 0x5E, 0x82, 0x77, 0x7F, 0x00, 0x01, 0x64, 0x00, 0x01, 0x81, 0x21, 0x2D, 0x59, 0xD2, 0x06, 0xCB, 0x7F, 0x81, 0xBB, 0x5D, 0x72, 0x35, 0x7F, 0x00, 0x01, 0x65, 0x00, 0x01, 0x81, 0x41, 0x70, 0xBB, 0x3D, 0x05, 0xCB, 0x7F, 0x81, 0xBB, 0x3D, 0x59, 0xD2, 0x7F, 0x00, 0x01, 0x65, 0x00, 0x01, 0x81, 0x31, 0x4E, 0x92, 0xB8, 0x05, 0xCB, 0x7F, 0x81, 0xB3, 0x3C, 0x41, 0x90, 0x7F, 0x00, 0x01, 0x65, 0x00, 0x01, 0x81, 0x29, 0x2D, 0x6A, 0x14, 0x05, 0xCB, 0x7F, 0x81, 0xAA, 0xFB, 0x29, 0x2D, 0x7F, 0x00, 0x01, 0x65, 0x00, 0x01, 0x81, 0x21, 0x0D, 0x49, 0xB1, 0x04, 0xCB, 0x7F, 0x81, 0xCB, 0x5E, 0x8A, 0x98, 0x7F, 0x00, 0x01, 0x67, 0x00, 0x01, 0x81, 0x39, 0x6F, 0xB3, 0x1C, 0x03, 0xD3, 0x7F, 0x81, 0xBB, 0x3D, 0x62, 0x14, 0x7F, 0x00, 0x01, 0x67, 0x00, 0x01, 0x81, 0x31, 0x4E, 0x92, 0x98, 0x03, 0xD3, 0x7F, 0x81, 0xB3, 0x1C, 0x39, 0x6F, 0x7F, 0x00, 0x01, 0x67, 0x00, 0x01, 0x81, 0x29, 0x2D, 0x6A, 0x14, 0x02, 0xD3, 0x7F, 0x82, 0xCB, 0x7E, 0x9A, 0xB9, 0x21, 0x0D, 0x7F, 0x00, 0x01, 0x67, 0x00, 0x01, 0x81, 0x21, 0x0D, 0x49, + 0xB1, 0x02, 0xD3, 0x7F, 0x81, 0xC3, 0x3D, 0x6A, 0x14, 0x7F, 0x00, 0x01, 0x69, 0x00, 0x01, 0x81, 0x41, 0x70, 0xC3, 0x3D, 0x01, 0xD3, 0x7F, 0x81, 0xB2, 0xFC, 0x31, 0x4E, 0x7F, 0x00, 0x01, 0x69, 0x00, 0x01, 0x84, 0x39, 0x6F, 0xAA, 0xDA, 0xD3, 0x7F, 0xCB, 0x5E, 0x8A, 0x77, 0x7F, 0x00, 0x01, 0x6A, 0x00, 0x01, 0x84, 0x31, 0x4E, 0x8A, 0x98, 0xD3, 0x7F, 0xBB, 0x3D, 0x51, 0xB1, 0x7F, 0x00, 0x01, 0x6A, 0x00, 0x01, 0x84, 0x29, 0x2E, 0x72, 0x35, 0xD3, 0x7F, 0xA2, 0xDA, 0x29, 0x2D, 0x7F, 0x00, 0x01, 0x6A, 0x00, 0x01, 0x83, 0x29, 0x2D, 0x59, 0xD2, 0xC3, 0x3D, 0x6A, 0x14, 0x7F, 0x00, 0x01, 0x6C, 0x00, 0x01, 0x82, 0x41, 0x90, 0xAA, 0xFB, 0x31, 0x4E, 0x7F, 0x00, 0x01, 0x6C, 0x00, 0x01, 0x81, 0x31, 0x4E, 0x61, 0xF3, 0x0C, 0x00, 0x01 +}; + +const tImage MarlinLogo240x250x16 = MARLIN_LOGO_CHOSEN(240, 250); + +#endif // HAS_GRAPHICAL_TFT && SHOW_BOOTSCREEN diff --git a/Marlin/src/lcd/tft/images/bootscreen_320x240x16.cpp b/Marlin/src/lcd/tft/images/bootscreen_320x240x16.cpp index 5c2f68beedf6..7254426fd1c3 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_320x240x16.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_320x240x16.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" -#if HAS_GRAPHICAL_TFT +#if ALL(HAS_GRAPHICAL_TFT, SHOW_BOOTSCREEN) -extern const uint16_t marlin_logo_320x240x16[]; -const tImage MarlinLogo320x240x16 = { (void *)marlin_logo_320x240x16, 320, 240, HIGHCOLOR }; +#include "../tft_image.h" const uint16_t marlin_logo_320x240x16[76800] = { 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x18AE, 0x20AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AE, 0x18AD, 0x18AD, 0x0119, 0x011A, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x011A, 0x0119, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x20AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x20AD, 0x18AD, 0x18CE, 0x00F8, 0x0119, 0x0119, 0x0119, 0x0119, 0x08F7, 0x18CE, 0x18AD, 0x20AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x08D5, 0x011A, 0x0119, 0x10D2, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x28EE, 0x8252, 0xCB54, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18CD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x011A, 0x10D2, 0x18AD, 0x18AD, 0x18AE, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AE, 0x18AE, @@ -271,4 +269,270 @@ const uint16_t marlin_logo_320x240x16[76800] = { 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x006D, 0x004D, 0x004D, 0x004D, 0x0150, 0x01F1, 0x0150, 0x006D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x006D, 0x004D, 0x004E, 0x004D, 0x004D, 0x004D, 0x0150, 0x01F1, 0x00AE, 0x006D, 0x004D, 0x004D, 0x004D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x004D, 0x006D, 0x006D, 0x004D, 0x006D, 0x004D, 0x006D, 0x006D, 0x006D, 0x0170, 0x01B1, 0x006D, 0x006D, 0x004D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006D, 0x004E, 0x006E, 0x01D1, 0x010F, 0x006D, 0x006D, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x004D, 0x006D, 0x006E, 0x004E, 0x0212, 0x004D, 0x004D, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x004D, 0x006D, 0x006D, 0x006D, 0x006E, 0x01F1, 0x008E, 0x006D, 0x006E, 0x004D, 0x004D, 0x006D, 0x006D, 0x004E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006E, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x004D, 0x006D, 0x004D, 0x010F, 0x01F1, 0x006D, 0x006D, 0x004D, 0x006E, 0x006D, 0x006D, 0x006D, 0x004D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x006D, 0x004E, 0x006D, 0x006D, 0x004D, 0x40CF, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x9931, 0x70F0, 0x004D, 0x006D, 0x004D, 0x004D, 0x006D, 0x006D, 0x004D, 0x004D, 0x006D, 0x0191, 0x01B1, 0x006D, 0x004D, 0x006D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D, 0x004D }; -#endif // HAS_GRAPHICAL_TFT +// Saves 91313 bytes +const uint8_t marlin_logo_320x240x16_rle16[62287] = { + 0x35, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF8, 0x03, 0x01, 0x19, 0x84, 0x08, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x83, 0x08, 0xD5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x28, 0xEE, 0x82, 0x52, 0xCB, 0x54, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x07, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x2A, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x15, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xCD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x01, 0x01, + 0x19, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x39, 0x4F, 0xB3, 0x13, 0xD3, 0x95, 0x72, 0x11, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x41, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x2F, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x84, 0x18, 0xAD, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAD, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xCD, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF4, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x08, + 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x49, 0x6F, 0xCB, 0x55, 0xD3, 0x95, 0xBB, 0x54, 0x28, 0xCE, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x1A, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x07, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x4F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0x8D, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x84, 0x00, 0xFA, 0x01, 0x19, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x80, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x61, 0xD0, 0x02, 0xD3, 0x95, 0x82, 0x69, 0xF1, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, + 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x72, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x1A, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD3, 0x01, 0x01, 0x1A, 0x80, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x86, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x61, 0xD0, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xD3, 0x75, 0x31, 0x0E, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xCD, 0x01, 0x1A, 0x00, 0xF9, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xCE, 0x37, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, + 0x11, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x05, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0A, 0x18, 0xAD, 0x80, 0x08, 0xD4, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x80, 0x08, 0xD5, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x01, 0x17, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x08, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x82, 0x39, 0x2F, 0xD3, 0x95, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x80, 0x28, 0xCE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x47, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x08, 0x18, 0xAD, 0x05, 0x01, 0x19, 0x84, 0x00, 0xF9, 0x01, 0x19, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x84, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x83, 0x10, + 0xD2, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x0E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xF2, 0x18, 0xAE, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x31, 0x0E, 0xCB, 0x55, 0x04, 0xD3, 0x95, 0x82, 0x82, 0x52, 0x20, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x87, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x13, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x46, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x80, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x07, + 0x01, 0x19, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x80, 0x10, 0xF2, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x85, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x85, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x10, 0xD3, 0x08, 0xF3, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x86, 0x08, 0xF5, 0x01, 0x1A, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0xB3, 0x14, 0x05, 0xD3, 0x95, 0x80, 0x51, 0x90, 0x06, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x17, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x00, 0xF9, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAF, 0x01, 0x19, 0x51, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, + 0xAE, 0x06, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xEE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x86, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF9, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x10, 0xF2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x0D, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xD5, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xCD, 0x0B, 0x18, 0xAD, 0x80, 0x82, 0x52, 0x06, 0xD3, 0x95, 0x81, 0x41, 0x2F, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x03, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xD5, 0x1B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x81, 0x08, 0xF5, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x08, 0xF4, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x81, + 0x18, 0xCD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x01, 0x1A, 0x4C, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xCD, 0x80, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x83, 0x03, 0x55, 0x19, 0x0F, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x08, 0xF4, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x86, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x0D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0x8E, 0x03, 0x18, 0xAD, 0x89, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xCD, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x49, 0x6F, 0x05, 0xD3, 0x95, 0x83, 0xD3, 0x96, 0xD3, 0x95, 0x49, 0x6F, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x01, 0x19, 0x1B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x81, 0x00, 0xF9, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, + 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x4D, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x11, 0xD1, 0x03, 0xB7, 0x0A, 0x93, 0x04, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF9, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xCD, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x28, 0xEE, 0xBB, 0x34, 0x07, 0xD3, 0x95, 0x80, + 0x9A, 0xB3, 0x06, 0x18, 0xAD, 0x02, 0x01, 0x19, 0x01, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x82, 0x10, 0xAF, 0x01, 0x19, 0x01, 0x1A, 0x05, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCE, 0x4B, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x20, 0x8D, 0x18, 0xAD, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xD3, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x03, 0x56, 0x01, 0x03, 0xB7, 0x80, 0x19, 0x0F, 0x07, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x08, 0xF3, 0x08, 0xD4, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x84, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xCD, 0x0A, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x00, 0xFA, 0x04, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x06, 0x18, + 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x7A, 0x31, 0x01, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xDB, 0x95, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x85, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x13, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0F, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x41, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x82, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x86, 0x18, 0xCE, 0x11, 0xD1, 0x03, 0xB8, 0x03, 0xB7, 0x03, 0xB8, 0x0A, 0x94, 0x20, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x86, 0x08, + 0xF5, 0x01, 0x1A, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x8F, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x08, 0xF5, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x08, 0xD5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x88, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x31, 0x0E, 0x04, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xD3, 0x95, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xB3, 0x13, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x04, 0x01, 0x19, 0x84, 0x00, 0xF9, 0x08, 0xF5, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x06, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x51, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, + 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x03, 0x56, 0x01, 0x03, 0xB7, 0x83, 0x03, 0xB8, 0x03, 0xB7, 0x19, 0x0E, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x09, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x20, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x1A, 0x80, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x08, 0x18, 0xAD, 0x83, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0xA2, 0xD3, 0x08, 0xD3, 0x95, 0x81, 0xD3, 0x96, 0xA2, 0xD3, 0x06, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x03, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xCE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x01, 0x17, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x13, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF7, + 0x01, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x4D, 0x18, 0xAD, 0x07, 0x01, 0x19, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x11, 0xD1, 0x03, 0xB8, 0x03, 0x03, 0xB7, 0x80, 0x0A, 0x94, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x0D, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x0F, 0x18, 0xAD, 0x84, 0x10, 0xD2, 0x08, 0xD4, 0x08, 0xF3, 0x10, 0xD2, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xB0, 0x0E, 0x18, 0xAD, 0x80, 0x49, 0x6F, 0x0A, 0xD3, 0x95, 0x80, 0xAA, 0xD3, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x10, 0xD1, 0x01, 0x08, 0xF3, 0x81, 0x10, 0xD2, 0x18, 0xCD, 0x1C, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x10, 0xD2, 0x08, 0xF3, 0x08, 0xD4, 0x10, 0xD2, 0x10, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x08, 0xF4, 0x01, 0x01, 0x19, 0x84, 0x10, 0xD1, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x08, 0xF5, 0x00, 0xF9, 0x04, 0x01, 0x19, 0x83, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x0D, 0x18, + 0xAD, 0x43, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x09, 0x18, 0xAD, 0x81, 0x03, 0x56, 0x03, 0xB8, 0x04, 0x03, 0xB7, 0x80, 0x19, 0x0F, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0F, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x12, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0xB3, 0x14, 0x0B, 0xD3, 0x95, 0x82, 0x61, 0xD0, 0x18, 0xAD, 0x18, 0xCD, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x18, 0xCD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x86, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x43, 0x01, 0x19, 0x82, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x03, 0x97, 0x03, 0xB8, + 0x03, 0xB7, 0x02, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xCD, 0x0F, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0A, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x0C, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x59, 0xD0, 0xD3, 0x95, 0xD3, 0x75, 0x08, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xD3, 0x95, 0xD3, 0x96, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x84, 0x08, 0xF4, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x03, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x53, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x02, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x02, 0x03, 0xB7, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x03, 0xB7, 0x82, 0x03, + 0x97, 0x03, 0xB7, 0x03, 0xB8, 0x01, 0x03, 0xB7, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD1, 0x20, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0xBB, 0x34, 0x0C, 0xD3, 0x95, 0x83, 0xAA, 0xD3, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x86, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x01, 0x1A, 0x05, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x18, 0xAD, 0x18, 0xAE, 0x51, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x85, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x03, 0xB7, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x04, 0x03, 0xB7, 0x81, 0x03, 0x97, 0x03, 0xB7, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x02, 0x18, + 0xAD, 0x83, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x61, 0xB1, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x0A, 0xD3, 0x95, 0x80, 0x8A, 0x92, 0x29, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x08, 0xF4, 0x52, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0x8D, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x02, 0x03, 0xB7, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x20, 0xAD, 0x03, 0xB8, 0x03, 0xB7, 0x03, 0xB8, 0x03, 0x03, 0xB7, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xCD, 0x20, 0xAD, 0x1B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, + 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x18, 0xAD, 0xAA, 0xD3, 0xD3, 0x95, 0xD3, 0x75, 0x09, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x80, 0x31, 0x0E, 0x28, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1C, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD1, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x51, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x82, 0x03, 0xD7, 0x03, 0x97, 0x03, 0xB7, 0x03, 0x18, 0xAD, 0x84, 0x03, 0xB7, 0x03, 0xB8, 0x03, 0x97, 0x03, 0xB7, 0x03, 0xB8, 0x01, 0x03, 0xB7, 0x83, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x0A, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x18, 0xCD, 0x20, 0xAD, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x01, 0x19, 0x01, 0x1A, 0x0B, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x49, 0x6F, 0x0D, 0xD3, 0x95, 0x84, 0xD3, 0x75, 0xD3, 0x95, 0x72, 0x31, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, + 0xAD, 0x18, 0xAE, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x86, 0x10, 0xD1, 0x10, 0xD3, 0x08, 0xD3, 0x10, 0xD2, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x57, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x0D, 0x18, 0xAD, 0x01, 0x03, 0xB7, 0x80, 0x03, 0xB8, 0x03, 0x18, 0xAD, 0x06, 0x03, 0xB7, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x0F, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x20, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x1A, 0x80, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x82, 0x20, 0xCD, 0x20, 0xAE, 0x8A, 0x92, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x0B, 0xD3, 0x95, 0x83, 0x7A, 0x31, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, + 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x57, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0x03, 0xB7, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x03, 0xB7, 0x80, 0x03, 0xB8, 0x03, 0x03, 0xB7, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x11, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x82, 0x20, 0xAD, 0x28, 0xEE, 0xC3, 0x74, 0x0F, 0xD3, 0x95, 0x83, 0xA2, 0xD3, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x22, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x72, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCE, 0x19, 0x4F, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x86, 0x03, 0xB7, 0x03, 0x97, 0x03, 0xB8, 0x18, 0xAD, 0x20, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x03, 0x03, 0xB7, 0x80, 0x03, 0xB8, 0x01, 0x03, 0xB7, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x16, 0x18, 0xAD, 0x85, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x01, + 0x20, 0xAE, 0x80, 0x61, 0xD1, 0x0F, 0xD3, 0x95, 0x84, 0xD3, 0x96, 0xD3, 0x95, 0x69, 0xF1, 0x20, 0xAD, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x19, 0x18, 0xAD, 0x80, 0x18, 0xCE, 0x58, 0x18, 0xAD, 0x85, 0x19, 0x30, 0x02, 0xF5, 0x03, 0xB7, 0x03, 0xB8, 0x03, 0x56, 0x11, 0x4F, 0x02, 0x18, 0xAD, 0x80, 0x03, 0xB8, 0x01, 0x03, 0xB7, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x03, 0xB7, 0x03, 0xB8, 0x03, 0xB7, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x88, 0x18, 0xAE, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF4, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x81, 0x9A, 0xB3, 0xD3, 0x75, 0x0D, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x02, 0xD3, 0x95, 0x80, 0x41, 0x2F, 0x21, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF8, 0x03, 0x01, 0x19, 0x84, 0x08, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x03, 0xB7, 0x81, 0x03, 0x97, 0x03, 0xB7, 0x53, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x87, 0x19, 0x0F, 0x03, 0x77, 0x03, 0x97, 0x03, 0xB8, 0x03, 0x98, 0x03, 0x97, 0x0B, 0x77, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x82, 0x03, 0xB7, 0x03, 0x97, 0x03, + 0xB8, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x03, 0xB7, 0x0B, 0xB7, 0x03, 0x98, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x14, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x05, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0xC3, 0x55, 0x12, 0xD3, 0x95, 0x80, 0x49, 0x70, 0x23, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x03, 0x03, 0xB7, 0x81, 0x03, 0xB8, 0x03, 0xB7, 0x55, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x12, 0x53, 0x0B, 0x78, 0x0B, 0x98, 0x0B, 0x78, 0x01, 0x0B, 0x98, 0x81, 0x13, 0x78, 0x11, 0xF2, 0x01, 0x18, 0xAD, 0x80, 0x0B, 0x98, 0x01, 0x0B, 0x78, 0x05, 0x18, 0xAD, 0x84, 0x0B, 0x98, 0x13, 0x78, 0x0B, 0x78, 0x18, 0xAD, 0x20, 0xAE, 0x15, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x87, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x05, 0x20, 0xAE, 0x83, 0x20, 0xCE, 0x49, 0x70, 0xD3, 0x95, 0xD3, 0x75, 0x10, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0x82, 0x52, 0x02, 0x20, + 0xAE, 0x1E, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF4, 0x01, 0x01, 0x19, 0x1B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x12, 0x18, 0xAD, 0x80, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x80, 0x03, 0xB8, 0x04, 0x03, 0xB7, 0x54, 0x18, 0xAD, 0x89, 0x18, 0xAE, 0x18, 0xAD, 0x1A, 0xB5, 0x1B, 0x78, 0x1B, 0x58, 0x13, 0x58, 0x1B, 0x78, 0x13, 0x78, 0x13, 0x58, 0x1A, 0x13, 0x01, 0x18, 0xAE, 0x01, 0x13, 0x58, 0x82, 0x13, 0x78, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x02, 0x13, 0x58, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x10, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x20, 0xAE, 0x80, 0x18, 0xAD, 0x04, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x80, 0x7A, 0x32, 0x0F, 0xD3, 0x95, 0x86, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x75, 0xD3, 0x95, 0xC3, 0x54, 0x59, 0x90, 0x20, 0xAD, 0x03, 0x20, 0xAE, 0x1C, 0x18, 0xAD, 0x80, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x80, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x05, 0x03, 0xB7, 0x56, 0x18, 0xAD, 0x80, 0x1A, 0x54, 0x01, 0x1B, 0x38, 0x84, 0x23, 0x38, 0x1B, 0x38, 0x1B, 0x58, 0x23, 0x38, 0x21, 0xD2, 0x01, 0x18, 0xAD, 0x01, 0x23, 0x38, 0x81, 0x23, 0x58, + 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x85, 0x19, 0x30, 0x23, 0x39, 0x23, 0x58, 0x23, 0x38, 0x18, 0xAD, 0x20, 0xAD, 0x16, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x82, 0x08, 0xF5, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x80, 0xA2, 0xB3, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x0B, 0xD3, 0x95, 0x03, 0xD3, 0x75, 0x80, 0x49, 0x70, 0x05, 0x20, 0xAE, 0x1B, 0x18, 0xAD, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD3, 0x01, 0x01, 0x1A, 0x80, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x03, 0x03, 0xB7, 0x80, 0x18, 0xAE, 0x55, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x21, 0x50, 0x2B, 0x18, 0x2B, 0x39, 0x2B, 0x18, 0x01, 0x2B, 0x19, 0x81, 0x2A, 0xF8, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x87, 0x2B, 0x19, 0x2B, 0x18, 0x2B, 0x19, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xAD, 0x21, 0x92, 0x01, 0x2B, 0x19, 0x83, 0x2B, 0x18, 0x23, 0x38, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x82, 0x10, 0xCF, 0x01, 0x19, 0x01, 0x1A, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x80, 0xBB, 0x34, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x0B, 0xD3, 0x95, 0x06, 0xD3, 0x75, 0x81, + 0x49, 0x70, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x19, 0x18, 0xAD, 0x80, 0x08, 0xD5, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x01, 0x17, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x1B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x04, 0x03, 0xB7, 0x80, 0x03, 0xB8, 0x03, 0x18, 0xAD, 0x85, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xD3, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x2D, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x21, 0x92, 0x2B, 0x19, 0x33, 0x19, 0x32, 0xF9, 0x2A, 0x15, 0x18, 0xEF, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x32, 0xF9, 0x33, 0x19, 0x32, 0xF9, 0x02, 0x18, 0xAD, 0x85, 0x21, 0x91, 0x33, 0x19, 0x2A, 0xF9, 0x33, 0x19, 0x2A, 0xF9, 0x2A, 0x97, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x1C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1B, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x03, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x02, 0x20, 0xCF, 0x80, 0x28, 0xCF, 0x10, 0xD3, 0x95, 0x05, 0xD3, 0x75, 0x80, 0x71, 0xD1, 0x05, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xCD, 0x01, 0x20, 0xAE, 0x17, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x85, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x04, 0x03, + 0xB7, 0x84, 0x03, 0xB8, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x1E, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x2B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x3A, 0xD9, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x3A, 0xF9, 0x01, 0x3A, 0xD9, 0x89, 0x18, 0xAD, 0x20, 0xAD, 0x32, 0x15, 0x3A, 0xD9, 0x3A, 0xF9, 0x3A, 0xDA, 0x3A, 0xD9, 0x32, 0x77, 0x18, 0xCE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x1E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x80, 0x20, 0xCD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x80, 0x20, 0xCF, 0x01, 0x28, 0xCF, 0x80, 0x49, 0x50, 0x0F, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x81, 0xD3, 0x74, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x85, 0xAA, 0xB3, 0x20, 0xCE, 0x18, 0xCE, 0x20, 0xCE, 0x20, 0xAE, 0x20, 0xCE, 0x06, 0x20, 0xAE, 0x14, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x10, 0xD3, 0x08, 0xF3, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x03, 0x03, 0x98, 0x81, 0x03, 0xB7, 0x03, 0x97, 0x01, 0x18, 0xAD, 0x84, 0x08, 0xF5, 0x01, 0x39, 0x01, 0x1A, 0x01, 0x17, 0x00, 0xF7, 0x01, 0x01, 0x1A, 0x80, 0x08, 0xF5, 0x1F, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xAE, 0x2B, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x42, 0xD9, 0x01, 0x42, 0xB9, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x42, 0xB9, + 0x88, 0x42, 0xBA, 0x18, 0xAE, 0x31, 0xF5, 0x42, 0xDA, 0x42, 0xD9, 0x42, 0xB9, 0x42, 0xD9, 0x3A, 0x77, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x1B, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x19, 0x01, 0x1A, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1C, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x80, 0x59, 0x91, 0x0D, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x81, 0xD3, 0x74, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x81, 0x92, 0x52, 0x30, 0xEF, 0x03, 0x20, 0xCE, 0x06, 0x20, 0xAE, 0x12, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x23, 0x38, 0x81, 0x23, 0x18, 0x23, 0x19, 0x01, 0x23, 0x38, 0x01, 0x18, 0xAD, 0x82, 0x00, 0xF9, 0x01, 0x19, 0x10, 0xD3, 0x01, 0x18, 0xAD, 0x83, 0x10, 0xF3, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x19, 0x01, 0x19, 0x82, 0x18, 0xB0, 0x18, 0xAD, 0x18, 0xAE, 0x30, 0x18, 0xAD, 0x82, 0x4A, 0x99, 0x4A, 0xB9, 0x4A, 0x9A, 0x04, 0x18, 0xAD, 0x01, 0x4A, 0xBA, 0x82, 0x4A, 0x9A, 0x42, 0x57, 0x4A, 0x99, 0x01, 0x4A, 0x9A, 0x87, 0x4A, 0xBA, 0x42, 0x37, 0x20, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xCD, 0x1B, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x1A, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x80, 0x20, + 0xAD, 0x01, 0x20, 0xAE, 0x01, 0x01, 0x19, 0x80, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x80, 0x28, 0xCE, 0x02, 0x28, 0xCF, 0x81, 0x28, 0xEF, 0x69, 0xF1, 0x0D, 0xD3, 0x95, 0x03, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x84, 0xD3, 0x35, 0xD3, 0x55, 0xCB, 0x14, 0x41, 0x30, 0x20, 0xAF, 0x01, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x12, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0x8E, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x12, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x42, 0xB9, 0x4A, 0x99, 0x42, 0xB9, 0x42, 0xBA, 0x02, 0x18, 0xAD, 0x86, 0x18, 0xAF, 0x01, 0x1A, 0x00, 0xF9, 0x10, 0xD0, 0x18, 0xAD, 0x20, 0xAD, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x19, 0x01, 0x19, 0x81, 0x01, 0x18, 0x10, 0xD0, 0x31, 0x18, 0xAD, 0x02, 0x52, 0x7A, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x52, 0x7A, 0x80, 0x52, 0x9A, 0x03, 0x52, 0x7A, 0x81, 0x4A, 0x18, 0x20, 0xCE, 0x01, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x1F, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x00, 0xF9, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x10, 0xD1, 0x01, 0x17, 0x01, 0x01, 0x19, 0x84, 0x09, 0x17, 0x18, 0xD2, 0x20, 0xCE, 0x20, 0xCF, 0x28, 0xCE, 0x02, 0x28, 0xCF, 0x82, 0x28, 0xEF, 0x30, 0xF0, 0x82, 0x53, 0x0C, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x05, 0xD3, 0x55, 0x83, 0xD3, + 0x54, 0xD3, 0x55, 0x7A, 0x11, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xCE, 0x07, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x0F, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x02, 0x6A, 0x3B, 0x80, 0x62, 0x1A, 0x01, 0x6A, 0x3B, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD3, 0x18, 0xAD, 0x20, 0xAE, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x85, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x2A, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x86, 0x20, 0xAD, 0x5A, 0x5B, 0x5A, 0x5A, 0x5A, 0x7A, 0x29, 0x10, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x5A, 0x5A, 0x5A, 0x7B, 0x03, 0x5A, 0x5A, 0x81, 0x4A, 0x18, 0x20, 0xCE, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x1B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x80, 0x10, 0xD1, 0x03, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x09, 0x1A, 0x18, 0xF2, 0x28, 0xCF, 0x28, 0xCE, 0x01, 0x28, 0xCF, 0x83, 0x28, 0xEF, 0x28, 0xF0, 0x30, 0xF0, 0x82, 0x32, 0x0B, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x81, 0xA2, 0x93, 0x28, 0xCF, 0x07, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x80, 0x20, 0xAE, 0x12, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAE, + 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x02, 0x89, 0xBC, 0x82, 0x91, 0xBC, 0x89, 0xBC, 0x89, 0x9C, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x01, 0x17, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x19, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xD0, 0x18, 0xAE, 0x2E, 0x18, 0xAD, 0x85, 0x62, 0x3A, 0x62, 0x3B, 0x62, 0x5A, 0x62, 0x1A, 0x29, 0x10, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x82, 0x62, 0x3B, 0x62, 0x3A, 0x62, 0x5A, 0x01, 0x62, 0x3B, 0x81, 0x51, 0xF8, 0x20, 0xCE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x21, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x82, 0x01, 0x18, 0x01, 0x19, 0x09, 0x17, 0x01, 0x18, 0xD2, 0x82, 0x09, 0x18, 0x09, 0x1A, 0x09, 0x18, 0x01, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x80, 0x30, 0xD0, 0x01, 0x30, 0xF0, 0x80, 0x82, 0x52, 0x09, 0xD3, 0x95, 0x06, 0xD3, 0x75, 0x03, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x85, 0xD3, 0x15, 0xD3, 0x35, 0x92, 0x53, 0x30, 0xEF, 0x28, 0xCF, 0x28, 0xCE, 0x05, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x09, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x02, 0xA9, + 0x3D, 0x80, 0xB1, 0x3D, 0x01, 0xA9, 0x3D, 0x83, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x84, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xD0, 0x18, 0xAE, 0x2B, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xCD, 0x59, 0xD8, 0x03, 0x6A, 0x1B, 0x80, 0x41, 0x33, 0x01, 0x18, 0xAD, 0x80, 0x6A, 0x3B, 0x02, 0x6A, 0x1B, 0x81, 0x51, 0xB6, 0x20, 0xCF, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x84, 0x10, 0xD2, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD3, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xD1, 0x01, 0x20, 0xCE, 0x80, 0x18, 0xD1, 0x01, 0x09, 0x3A, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x30, 0xF0, 0x81, 0x38, 0xF0, 0x92, 0x73, 0x09, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x81, 0xD3, 0x34, 0xD3, 0x35, 0x01, 0xD3, 0x34, 0x82, 0xD3, 0x14, 0xD3, 0x15, 0xAA, 0x93, 0x02, 0x28, 0xCF, 0x07, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x80, 0x20, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x09, 0x18, 0xAD, 0x02, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x12, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x05, 0xD0, 0xBE, 0x03, 0x18, 0xAD, 0x84, 0x10, 0xD2, 0x08, 0xD4, 0x08, 0xF3, 0x10, 0xD2, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0D, 0x18, 0xAD, + 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x81, 0x18, 0xD0, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x22, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xCE, 0x61, 0xB8, 0x72, 0x1B, 0x71, 0xFB, 0x01, 0x72, 0x1B, 0x88, 0x41, 0x33, 0x20, 0xAD, 0x71, 0xFB, 0x72, 0x1B, 0x71, 0xFB, 0x41, 0x74, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x19, 0x18, 0xAD, 0x86, 0x20, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xD1, 0x20, 0xAE, 0x20, 0xCE, 0x20, 0xF1, 0x01, 0x09, 0x3A, 0x01, 0x28, 0xCF, 0x80, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x82, 0x38, 0xF0, 0x39, 0x11, 0xAA, 0xF4, 0x08, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x05, 0xD3, 0x55, 0x05, 0xD3, 0x35, 0x01, 0xD3, 0x14, 0x80, 0xD3, 0x15, 0x01, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x01, 0x28, 0xCE, 0x05, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x80, 0x18, 0xAE, 0x01, 0x20, 0xAD, 0x8C, 0x20, 0xAE, 0x30, 0xEE, 0x61, 0x50, 0x81, 0xB1, 0xA1, 0xF2, 0xC2, 0x33, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0xC2, 0x33, 0xA1, 0xF2, 0x81, 0x91, 0x51, 0x2F, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x10, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x05, 0xF0, 0x3F, + 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x01, 0x19, 0x80, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x21, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x8A, 0x20, 0xCE, 0x69, 0xB9, 0x81, 0xFB, 0x79, 0xDB, 0x79, 0xDC, 0x81, 0xFC, 0x59, 0x76, 0x79, 0xDB, 0x79, 0xDC, 0x81, 0xDC, 0x20, 0xAD, 0x1E, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x19, 0x18, 0xAD, 0x8B, 0x20, 0xAE, 0x09, 0x18, 0x01, 0x19, 0x09, 0x17, 0x18, 0xD0, 0x20, 0xD0, 0x09, 0x17, 0x09, 0x3A, 0x11, 0x38, 0x28, 0xCF, 0x30, 0xCF, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x01, 0x39, 0x11, 0x80, 0xAA, 0xD4, 0x07, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x06, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x81, 0xD3, 0x15, 0xD3, 0x14, 0x01, 0xD3, 0x15, 0x82, 0xD3, 0x14, 0x69, 0xB2, 0x28, 0xEF, 0x04, 0x28, 0xCF, 0x01, 0x28, 0xCE, 0x07, 0x20, 0xCE, 0x89, 0x20, 0xAE, 0x20, 0xCE, 0x41, 0x0F, 0x69, 0x90, 0x99, 0xF2, 0xC2, 0x53, 0xCA, 0x74, 0xD2, 0x74, 0xCA, 0x74, 0xD2, 0x53, 0x02, 0xCA, 0x53, 0x87, 0xD2, 0x33, 0xD2, 0x53, 0xCA, 0x53, 0xD2, 0x33, 0xCA, 0x33, 0xC2, 0x13, 0x89, 0x91, 0x41, 0x0F, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, + 0xCD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x17, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x09, 0x17, 0x01, 0x01, 0x19, 0x81, 0x10, 0xCF, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x28, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x84, 0x20, 0xAE, 0x71, 0x99, 0x89, 0xDB, 0x89, 0xBC, 0x81, 0xBC, 0x03, 0x89, 0xBC, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1E, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x06, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xD2, 0x01, 0x01, 0x19, 0x03, 0x09, 0x3A, 0x82, 0x20, 0xF2, 0x28, 0xCF, 0x28, 0xF0, 0x01, 0x30, 0xF0, 0x80, 0x31, 0x11, 0x01, 0x39, 0x11, 0x80, 0xB2, 0xF5, 0x05, 0xD3, 0x95, 0x05, 0xD3, 0x75, 0x06, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x01, 0xD3, 0x15, 0x01, 0xD3, 0x14, 0x86, 0xD2, 0xF4, 0xD2, 0xF5, 0xCA, 0xD4, 0x59, 0x71, 0x30, 0xF0, 0x30, 0xD0, 0x28, 0xEF, 0x05, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x83, 0x28, 0xCE, 0x38, 0xEF, 0x79, 0xB1, 0xBA, 0x53, 0x01, 0xCA, 0x94, 0x80, 0xCA, 0x74, 0x01, 0xD2, 0x73, 0x85, 0xCA, 0x73, 0xCA, 0x54, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0xCA, 0x33, 0x01, 0xCA, 0x53, 0x02, 0xCA, 0x33, 0x80, 0xD2, 0x13, 0x01, 0xCA, 0x13, 0x83, 0xA1, 0xB2, 0x49, 0x0F, 0x18, 0xAD, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x80, 0x18, 0xAE, + 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xCD, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xB0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x27, 0x18, 0xAD, 0x81, 0x20, 0xCE, 0x79, 0x79, 0x01, 0x91, 0x9C, 0x84, 0x91, 0xBC, 0x91, 0x9C, 0x89, 0x9C, 0x89, 0xBC, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x1C, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xF2, 0x17, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x82, 0x20, 0xCE, 0x18, 0xF2, 0x09, 0x19, 0x01, 0x09, 0x1A, 0x82, 0x09, 0x19, 0x20, 0xF3, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x80, 0x31, 0x10, 0x01, 0x39, 0x11, 0x81, 0x41, 0x12, 0xB2, 0xF5, 0x05, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x06, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x80, 0xD3, 0x15, 0x02, 0xD3, 0x14, 0x82, 0xD2, 0xF4, 0xD3, 0x14, 0xD2, 0xF5, 0x01, 0xD2, 0xF4, 0x83, 0x49, 0x30, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xF0, 0x02, 0x28, 0xCF, 0x81, 0x28, 0xEF, 0x28, 0xCE, 0x02, 0x28, 0xCF, 0x81, 0x41, 0x30, 0x89, 0xF1, 0x01, 0xD2, 0x94, 0x82, 0xCA, 0x93, 0xCA, 0x74, 0xD2, 0x74, 0x01, 0xCA, 0x74, 0x83, 0xCA, 0x53, 0xCA, 0x73, 0xD2, 0x53, 0xD2, 0x54, 0x01, 0xCA, 0x53, 0x8C, 0xCA, 0x54, 0xC2, 0x74, 0x9B, + 0x36, 0x83, 0xB8, 0x64, 0x19, 0x6C, 0x39, 0x64, 0x39, 0x6C, 0x1A, 0x8B, 0x57, 0xB2, 0x95, 0xCA, 0x13, 0x91, 0x91, 0x28, 0xCE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x11, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAF, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x25, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x28, 0xAE, 0x81, 0x59, 0x91, 0x7C, 0x01, 0x99, 0x7C, 0x01, 0x99, 0x9C, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xD5, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x85, 0x08, 0xF4, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x81, 0x20, 0xD0, 0x20, 0xD1, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x01, 0x30, 0xF0, 0x82, 0x31, 0x10, 0x39, 0x10, 0x41, 0x11, 0x01, 0x41, 0x12, 0x80, 0x92, 0x94, 0x04, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x05, 0xD3, 0x55, 0x04, 0xD3, 0x35, 0x01, 0xD3, 0x15, 0x80, 0xD3, 0x14, 0x01, 0xD2, 0xF4, 0x86, 0xD3, 0x15, 0xD2, 0xF4, 0xD2, 0xF5, 0xD2, 0xF4, 0xD2, 0xD5, 0x79, 0xD2, 0x31, 0x10, 0x02, 0x30, 0xF0, 0x87, 0x28, 0xF0, 0x30, 0xD0, 0x28, 0xEF, + 0x28, 0xF0, 0x28, 0xCF, 0x51, 0x50, 0xAA, 0x32, 0xD2, 0x93, 0x01, 0xD2, 0x94, 0x80, 0xCA, 0x93, 0x03, 0xCA, 0x74, 0x8A, 0xD2, 0x74, 0xD2, 0x54, 0xCA, 0x53, 0xCA, 0x54, 0xB2, 0xD5, 0x83, 0xB8, 0x44, 0xFC, 0x1D, 0xBE, 0x06, 0x3F, 0x0C, 0xDB, 0x0B, 0x76, 0x01, 0x13, 0x77, 0x86, 0x0B, 0x76, 0x13, 0x56, 0x0B, 0x76, 0x0B, 0x77, 0x23, 0xF8, 0x69, 0x91, 0x51, 0x0F, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x06, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x13, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xAF, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x20, 0xAE, 0x89, 0x39, 0x01, 0xA1, 0x7C, 0x01, 0xA1, 0x5D, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x16, 0x18, 0xAD, 0x04, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x80, 0x28, 0xCE, 0x01, 0x28, 0xCF, 0x83, 0x28, 0xEF, 0x28, 0xF0, 0x30, 0xF0, 0x31, 0x10, 0x02, 0x39, 0x11, 0x82, 0x41, 0x12, 0x41, 0x32, 0x8A, 0x54, 0x03, 0xD3, 0x95, 0x04, + 0xD3, 0x75, 0x06, 0xD3, 0x55, 0x02, 0xD3, 0x35, 0x02, 0xD3, 0x15, 0x02, 0xD3, 0x14, 0x01, 0xD2, 0xF4, 0x80, 0xD2, 0xF5, 0x01, 0xD2, 0xF4, 0x83, 0xD2, 0xD4, 0xCA, 0xD4, 0x59, 0x51, 0x38, 0xF0, 0x04, 0x30, 0xF0, 0x81, 0x41, 0x30, 0x91, 0xF2, 0x01, 0xD2, 0x94, 0x81, 0xCA, 0x94, 0xCA, 0x74, 0x01, 0xCA, 0x94, 0x80, 0xCA, 0x74, 0x02, 0xD2, 0x74, 0x8A, 0xD2, 0x53, 0xB2, 0xD5, 0x74, 0x19, 0x25, 0x7D, 0x06, 0x3F, 0x06, 0x1F, 0x05, 0x7D, 0x12, 0xB5, 0x19, 0x0F, 0x18, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x09, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x01, 0x17, 0x01, 0x01, 0x19, 0x80, 0x18, 0xB0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x2A, 0x18, 0xAD, 0x84, 0x20, 0xCE, 0x91, 0x3A, 0xA9, 0x3D, 0xA9, 0x5D, 0xA9, 0x5C, 0x21, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAE, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x84, 0x20, 0xCF, 0x28, 0xCE, 0x28, 0xCF, 0x28, 0xEF, 0x28, 0xF0, 0x01, 0x30, 0xF0, 0x02, 0x39, 0x11, 0x01, 0x41, 0x32, 0x81, 0x49, 0x32, 0x92, 0x55, 0x01, + 0xD3, 0x95, 0x05, 0xD3, 0x75, 0x05, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x02, 0xD3, 0x15, 0x02, 0xD3, 0x14, 0x81, 0xD2, 0xF4, 0xD2, 0xF5, 0x03, 0xD2, 0xF4, 0x01, 0xD2, 0xD4, 0x89, 0xCA, 0xB4, 0x51, 0x72, 0x39, 0x11, 0x38, 0xF1, 0x38, 0xF0, 0x30, 0xF0, 0x81, 0xD2, 0xC2, 0x94, 0xD2, 0x94, 0xD2, 0x93, 0x01, 0xD2, 0x94, 0x01, 0xCA, 0x93, 0x01, 0xD2, 0x74, 0x84, 0xCA, 0x73, 0xD2, 0x74, 0x83, 0xD8, 0x35, 0x3D, 0x06, 0x1F, 0x02, 0x06, 0x3F, 0x81, 0x4C, 0x5A, 0x49, 0x70, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x01, 0x20, 0xAD, 0x82, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x10, 0xD2, 0x08, 0xF3, 0x08, 0xD4, 0x10, 0xD2, 0x07, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x2D, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0xB1, 0x1D, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x1A, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x81, 0x08, 0xD5, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x12, 0x18, 0xAD, 0x02, + 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x81, 0x28, 0xCF, 0x20, 0xCF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x01, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x84, 0x41, 0x12, 0x41, 0x32, 0x49, 0x32, 0x49, 0x53, 0x6B, 0x36, 0x01, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x06, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x80, 0xD3, 0x15, 0x04, 0xD3, 0x14, 0x02, 0xD2, 0xF4, 0x80, 0xD2, 0xF5, 0x01, 0xD2, 0xD4, 0x93, 0xD2, 0xD5, 0xD2, 0xD4, 0xCA, 0xD4, 0xCA, 0xB4, 0x59, 0x72, 0x39, 0x11, 0x51, 0x51, 0xB2, 0x53, 0xCA, 0xB4, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xCA, 0x74, 0xD2, 0x74, 0xC2, 0x94, 0x64, 0x5A, 0x1D, 0xBE, 0x02, 0x06, 0x3F, 0x84, 0x1D, 0xBE, 0x64, 0x59, 0xC2, 0x74, 0x99, 0xD2, 0x28, 0xCE, 0x03, 0x20, 0xAE, 0x80, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x19, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x81, 0x18, 0xAF, 0x01, 0x17, 0x03, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x0A, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x81, 0x18, 0xD0, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x82, 0xB8, 0xFE, + 0xB8, 0xFD, 0xB8, 0xFE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x83, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x17, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x03, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x81, 0x28, 0xEF, 0x28, 0xF0, 0x01, 0x30, 0xF0, 0x01, 0x39, 0x11, 0x80, 0x41, 0x11, 0x01, 0x41, 0x32, 0x84, 0x49, 0x33, 0x49, 0x53, 0x25, 0x3B, 0x46, 0x5C, 0x6D, 0x7B, 0x01, 0x6D, 0x9A, 0x83, 0x6D, 0x7A, 0x84, 0xF9, 0x9C, 0x78, 0x9C, 0x77, 0x01, 0x9C, 0x78, 0x81, 0x9C, 0x57, 0x9C, 0x78, 0x01, 0x9C, 0x58, 0x88, 0xBB, 0xB6, 0xD3, 0x34, 0xD3, 0x15, 0xD3, 0x34, 0xD3, 0x15, 0xD3, 0x14, 0xD3, 0x15, 0xD2, 0xF4, 0xCA, 0xF4, 0x02, 0xD2, 0xF4, 0x82, 0xD2, 0xF5, 0xD2, 0xD4, 0xCA, 0xD4, 0x01, 0xD2, 0xD4, 0x85, 0xCA, 0xD4, 0xCA, 0xB4, 0xD2, 0xD4, 0x91, 0xF3, 0x59, 0x72, 0xCA, 0x74, 0x01, 0xD2, 0xB4, 0x81, 0xD2, 0x94, 0xCA, 0x94, 0x01, 0xD2, 0x94, 0x84, 0xCA, 0x94, 0xCA, 0x74, 0xC2, 0xB4, 0x6C, 0x5A, 0x0D, 0xFF, 0x02, 0x06, 0x3F, 0x84, 0x35, 0x3D, 0x83, 0xB8, 0xCA, 0x53, 0xCA, 0x33, 0x89, 0xB1, 0x01, 0x20, 0xCE, 0x06, 0x20, 0xAE, 0x19, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xCD, 0x30, 0x18, 0xAD, 0x81, 0x08, 0xF5, 0x00, 0xF9, 0x03, 0x01, 0x19, 0x84, 0x00, 0xF9, 0x08, 0xF5, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, + 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x01, 0x19, 0x81, 0x18, 0xD0, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x16, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x89, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0xC0, 0xDE, 0xC0, 0xFE, 0xC0, 0xDD, 0x18, 0xAE, 0x18, 0xCD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x19, 0x18, 0xAD, 0x86, 0x00, 0xF9, 0x00, 0xFA, 0x08, 0xF4, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x16, 0x18, 0xAD, 0x04, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x80, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x8C, 0x39, 0x11, 0x38, 0xF1, 0x39, 0x11, 0x41, 0x12, 0x41, 0x32, 0x49, 0x32, 0x49, 0x53, 0x51, 0x53, 0x4D, 0x1A, 0x6D, 0x9A, 0x94, 0xB9, 0x9C, 0x98, 0x9C, 0x77, 0x02, 0x9C, 0x78, 0x80, 0x94, 0xB8, 0x01, 0x6D, 0x7A, 0x89, 0x6D, 0x7B, 0x36, 0x7C, 0x36, 0x7D, 0x1E, 0xFE, 0x07, 0x7F, 0x07, 0x5F, 0x1E, 0xDE, 0x36, 0x3D, 0x6D, 0x3A, 0x9C, 0x17, 0x04, 0xD2, 0xF4, 0x80, 0xD2, 0xF5, 0x03, 0xD2, 0xD4, 0x86, 0xCA, 0xD4, 0xD2, 0xB4, 0xCA, 0xD4, 0xD2, 0xB3, 0xCA, 0xB4, 0xC2, 0x94, 0xCA, 0xB4, 0x01, 0xCA, 0x94, 0x81, 0xD2, 0x94, 0xCA, 0x94, 0x02, 0xCA, 0x74, 0x8B, 0x7B, 0xD8, 0x0D, 0xFF, 0x06, 0x3F, 0x06, 0x1F, 0x06, 0x3F, 0x4C, 0xBB, 0x9B, 0x57, 0xD2, 0x33, 0xCA, 0x33, 0xCA, 0x53, 0x61, 0x50, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x05, + 0x20, 0xAE, 0x16, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x27, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x85, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x09, 0x17, 0x01, 0x01, 0x19, 0x80, 0x18, 0xCF, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xCD, 0x16, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x82, 0xC8, 0xBE, 0xC8, 0xDE, 0xC8, 0xBE, 0x01, 0x18, 0xAD, 0x02, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x05, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x16, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x02, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x80, 0x39, 0x12, 0x01, 0x41, 0x32, 0x82, 0x49, 0x33, 0x51, 0x53, 0xA2, 0xB5, 0x04, 0xD3, 0x75, 0x03, 0xD3, 0x55, 0x82, 0xD3, 0x35, 0xD3, 0x55, 0xD3, 0x34, 0x03, 0xD3, 0x35, 0x8B, 0xBB, 0x96, 0xA4, 0x37, 0x74, 0xF9, 0x4D, 0xBC, 0x2E, 0x7E, 0x0E, 0xDF, 0x55, 0x9B, 0x84, 0x98, 0xC3, 0x35, 0xD2, 0xF4, 0xD2, 0xD4, 0xD2, 0xF5, 0x01, 0xD2, 0xD4, 0x81, 0xD2, 0xB5, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x80, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x94, 0xBA, 0xB4, 0xBA, 0xF6, 0xCA, 0x94, + 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x73, 0x9B, 0x76, 0x1D, 0xBE, 0x06, 0x1F, 0x06, 0x3F, 0x0D, 0xDF, 0x64, 0x3A, 0xB2, 0xD5, 0xCA, 0x54, 0xD2, 0x53, 0xCA, 0x53, 0xC2, 0x94, 0x59, 0xB1, 0x28, 0xCE, 0x28, 0xCF, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x06, 0x20, 0xAE, 0x15, 0x18, 0xAD, 0x85, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x2E, 0x18, 0xAD, 0x80, 0x01, 0x1A, 0x06, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xAF, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xCD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x8B, 0x20, 0xAD, 0x40, 0xB0, 0xA0, 0x9A, 0xD0, 0xBE, 0xD0, 0x9E, 0xD0, 0xBE, 0xB8, 0x9C, 0x78, 0xB5, 0x28, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x20, 0xAD, 0x14, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x03, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x80, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x01, 0x41, 0x12, 0x84, 0x49, 0x32, 0x49, 0x33, 0x51, 0x73, 0xBB, 0x15, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x05, 0xD3, 0x55, 0x81, 0xD3, 0x35, 0xD3, + 0x55, 0x01, 0xD3, 0x35, 0x01, 0xD3, 0x14, 0x83, 0xD3, 0x35, 0xD3, 0x15, 0xD3, 0x14, 0xD3, 0x15, 0x01, 0xD2, 0xF5, 0x88, 0xD2, 0xF4, 0x9B, 0xF7, 0x6D, 0x1A, 0x2E, 0x3D, 0x45, 0xBC, 0x94, 0x18, 0xD2, 0xD4, 0xCA, 0xD4, 0xD2, 0xD4, 0x02, 0xD2, 0xB4, 0x81, 0xCA, 0xB4, 0xD2, 0xB4, 0x02, 0xD2, 0x94, 0x84, 0xC2, 0xD4, 0x4C, 0xDB, 0x7B, 0xD8, 0x9B, 0x57, 0x44, 0xFC, 0x01, 0x06, 0x3F, 0x89, 0x1D, 0xBE, 0x83, 0xD8, 0xC2, 0x94, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x33, 0xCA, 0x53, 0xB2, 0xB5, 0x33, 0xB8, 0x28, 0xF0, 0x02, 0x28, 0xCF, 0x01, 0x20, 0xCF, 0x04, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x16, 0x18, 0xAD, 0x88, 0x18, 0x8E, 0x20, 0xCD, 0x10, 0xD1, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD1, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x27, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x86, 0x20, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x10, 0xD0, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x83, 0x20, 0xAE, 0x40, 0xB0, 0xD0, 0x7D, 0xD8, 0x7E, 0x01, 0xD8, 0x9F, 0x85, 0xE0, 0x7F, 0xD8, 0x9E, 0xD8, 0x9F, 0xB8, 0x7B, 0x28, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x20, 0xAD, + 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x20, 0xAD, 0x12, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x80, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x01, 0x28, 0xCF, 0x02, 0x28, 0xEF, 0x01, 0x30, 0xF0, 0x80, 0x31, 0x10, 0x02, 0x39, 0x11, 0x01, 0x41, 0x32, 0x82, 0x49, 0x33, 0x51, 0x74, 0xBB, 0x14, 0x04, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x81, 0xD3, 0x35, 0xD3, 0x34, 0x02, 0xD3, 0x35, 0x82, 0xD3, 0x14, 0xD3, 0x35, 0xD3, 0x15, 0x01, 0xD3, 0x14, 0x80, 0xD3, 0x15, 0x03, 0xD2, 0xF4, 0x88, 0xD2, 0xF5, 0xD2, 0xD4, 0xC3, 0x35, 0x84, 0x78, 0x4D, 0x7B, 0x4D, 0x5B, 0xAB, 0x96, 0xD2, 0xB4, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x81, 0xCA, 0x94, 0xCA, 0xB4, 0x01, 0xD2, 0x94, 0x82, 0xD2, 0x73, 0xC2, 0xB4, 0x5C, 0x9A, 0x01, 0x06, 0x1F, 0x81, 0x06, 0x3F, 0x74, 0x19, 0x01, 0xD2, 0x73, 0x01, 0xCA, 0x53, 0x84, 0xD2, 0x33, 0xCA, 0x53, 0xAA, 0xF6, 0x15, 0x3C, 0x29, 0x51, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x04, 0x20, 0xAE, 0x15, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x03, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x18, 0xCD, 0x29, 0x18, 0xAD, 0x80, 0x08, 0xF6, 0x04, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x83, + 0x10, 0xB0, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x20, 0x8D, 0x18, 0xAD, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xD3, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0xB0, 0x7A, 0x01, 0xE8, 0x5F, 0x8A, 0xE0, 0x7F, 0xE8, 0x5F, 0xE8, 0x7F, 0xE0, 0x7F, 0xE8, 0x5F, 0xE0, 0x7F, 0x98, 0x98, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x20, 0xAD, 0x17, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xAD, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x07, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x80, 0x20, 0xCF, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x01, 0x30, 0xF0, 0x81, 0x31, 0x10, 0x39, 0x10, 0x01, 0x39, 0x11, 0x85, 0x41, 0x12, 0x41, 0x32, 0x49, 0x32, 0x51, 0x53, 0xBB, 0x15, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x83, 0xD3, 0x54, 0xD3, 0x55, 0xD3, 0x35, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x82, 0xD3, 0x15, 0xCB, 0x34, 0xD3, 0x15, 0x01, 0xD3, 0x14, 0x86, 0xD3, 0x15, 0xD3, 0x14, 0xD2, 0xF4, 0xD2, 0xF5, 0xD2, 0xF4, 0xCA, 0xF4, 0xD2, 0xF4, 0x01, 0xD2, 0xD4, 0x80, 0xD2, 0xD5, 0x01, 0xD2, 0xD4, 0x85, 0xBB, 0x55, 0x74, 0x99, 0x35, 0xDC, 0x84, 0x39, 0xC2, 0xF4, 0xD2, 0xB4, 0x02, 0xD2, 0x94, 0x84, 0xCA, 0x93, 0xD2, 0x94, 0xD2, 0x74, 0xCA, 0x74, 0x9B, 0x76, 0x01, 0x06, 0x1F, 0x81, 0x83, 0xD8, 0xC2, 0x95, 0x03, 0xCA, 0x53, 0x82, 0x7B, 0xB8, 0x06, 0x3F, 0x2A, + 0x34, 0x01, 0x30, 0xF0, 0x81, 0x30, 0xEF, 0x30, 0xF0, 0x04, 0x28, 0xCF, 0x04, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x10, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF9, 0x08, 0xD5, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x28, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x04, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x82, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x83, 0x38, 0xB0, 0xF0, 0x5F, 0xE8, 0x3F, 0xF0, 0x3F, 0x01, 0xF0, 0x5F, 0x02, 0xF0, 0x3F, 0x81, 0xF0, 0x5F, 0xE8, 0x3F, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x11, 0x18, 0xAD, 0x04, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x04, 0x28, 0xCF, 0x80, 0x30, 0xEF, 0x02, 0x30, 0xF0, 0x02, 0x39, 0x11, 0x85, 0x41, 0x12, 0x41, 0x32, 0x49, 0x33, 0x51, 0x73, 0xBB, 0x35, 0xD3, 0x95, 0x03, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x04, 0xD3, 0x35, 0x81, 0xCB, 0x35, 0xD3, 0x15, 0x03, 0xD3, 0x14, 0x02, 0xD2, 0xF4, 0x01, 0xD2, 0xF5, 0x82, 0xCA, 0xD4, 0xD2, 0xF4, + 0xCA, 0xD4, 0x01, 0xD2, 0xD4, 0x81, 0xCA, 0xB4, 0xD2, 0xB4, 0x01, 0xCA, 0xB4, 0x83, 0x8B, 0xF8, 0x3D, 0x5C, 0x64, 0x99, 0xC2, 0xD4, 0x01, 0xD2, 0x94, 0x01, 0xCA, 0x74, 0x80, 0xD2, 0x74, 0x01, 0xCA, 0x74, 0x8B, 0x54, 0xBB, 0x5C, 0x9A, 0x35, 0x3D, 0x1D, 0xBE, 0x4C, 0xBB, 0x93, 0x77, 0x9B, 0x36, 0x44, 0xFC, 0x06, 0x1F, 0x1B, 0xF9, 0x39, 0x11, 0x39, 0x10, 0x03, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x03, 0x28, 0xCF, 0x04, 0x20, 0xCE, 0x04, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x27, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x03, 0x01, 0x19, 0x84, 0x08, 0xF4, 0x10, 0xF3, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x83, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x18, 0xCE, 0x12, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x50, 0x92, 0x01, 0xF8, 0x3F, 0x80, 0xF0, 0x3F, 0x03, 0xF8, 0x3F, 0x83, 0xF8, 0x1F, 0xF0, 0x3F, 0xF8, 0x3F, 0x50, 0x92, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x10, 0x18, + 0xAD, 0x05, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x03, 0x30, 0xF0, 0x02, 0x39, 0x11, 0x84, 0x41, 0x12, 0x41, 0x32, 0x49, 0x32, 0x69, 0xB3, 0xC3, 0x55, 0x06, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x80, 0xD3, 0x15, 0x01, 0xD3, 0x35, 0x02, 0xD3, 0x14, 0x01, 0xD2, 0xF5, 0x03, 0xD2, 0xF4, 0x05, 0xD2, 0xD4, 0x81, 0xCA, 0xD4, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x94, 0xCA, 0xB4, 0xD2, 0x94, 0x9B, 0x97, 0x45, 0x3C, 0x6C, 0x59, 0xC2, 0xB4, 0xCA, 0x74, 0xD2, 0x74, 0xD2, 0x73, 0xCA, 0x73, 0xD2, 0x73, 0xC2, 0x94, 0x6C, 0x39, 0xC2, 0x94, 0xCA, 0x53, 0x8B, 0x98, 0x4C, 0xBB, 0x0D, 0xFF, 0x06, 0x3F, 0x0D, 0x7E, 0x39, 0x72, 0x02, 0x39, 0x11, 0x80, 0x38, 0xF0, 0x02, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x03, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x0E, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x03, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x20, 0xAD, 0x25, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xCD, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x10, 0xCF, 0x1C, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x13, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x50, 0x92, 0x09, 0xF8, 0x1F, 0x80, 0x50, 0x92, 0x1A, 0x18, 0xAD, 0x01, 0x01, + 0x19, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x04, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x81, 0x28, 0xCF, 0x28, 0xCE, 0x03, 0x28, 0xCF, 0x02, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x85, 0x41, 0x11, 0x41, 0x12, 0x41, 0x32, 0x49, 0x33, 0x92, 0x54, 0xD3, 0x95, 0x03, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x80, 0xD3, 0x55, 0x04, 0xD3, 0x35, 0x03, 0xD3, 0x14, 0x02, 0xD2, 0xF4, 0x81, 0xD2, 0xF5, 0xD2, 0xF4, 0x01, 0xD2, 0xD4, 0x85, 0xCA, 0xD4, 0xD2, 0xD4, 0xCA, 0xD4, 0xD2, 0xD4, 0xD2, 0xB4, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x80, 0xCA, 0xB4, 0x02, 0xD2, 0x94, 0x90, 0xCA, 0x94, 0x9B, 0x77, 0x44, 0xDC, 0x73, 0xF9, 0xCA, 0x73, 0xCA, 0x74, 0xD2, 0x54, 0xCA, 0x73, 0xCA, 0x53, 0xC2, 0x94, 0x35, 0x1C, 0x6C, 0x3A, 0xC2, 0x94, 0xD2, 0x53, 0xCA, 0x34, 0x83, 0xB8, 0x5A, 0x55, 0x01, 0x41, 0x32, 0x80, 0x39, 0x12, 0x01, 0x39, 0x11, 0x80, 0x39, 0x10, 0x02, 0x30, 0xF0, 0x81, 0x28, 0xF0, 0x28, 0xEF, 0x03, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x04, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x0F, 0x18, 0xAD, 0x05, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x23, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xB0, 0x01, 0x19, 0x01, 0x1A, 0x01, + 0x19, 0x00, 0xF8, 0x18, 0xD0, 0x1B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x01, 0x17, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x11, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x07, 0x18, 0xAD, 0x80, 0x40, 0x90, 0x09, 0xF8, 0x1F, 0x80, 0x28, 0xAF, 0x17, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x20, 0xAD, 0x01, 0x01, 0x19, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x80, 0x28, 0xF0, 0x02, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x80, 0x41, 0x12, 0x01, 0x41, 0x32, 0x81, 0x69, 0xD3, 0xC3, 0x55, 0x01, 0xD3, 0x95, 0x03, 0xD3, 0x75, 0x05, 0xD3, 0x55, 0x81, 0xD3, 0x35, 0xCB, 0x55, 0x02, 0xD3, 0x35, 0x80, 0xD3, 0x15, 0x03, 0xD3, 0x14, 0x04, 0xD2, 0xF4, 0x81, 0xCA, 0xD4, 0xD2, 0xF4, 0x01, 0xD2, 0xD4, 0x02, 0xD2, 0xB4, 0x02, 0xCA, 0xB4, 0x81, 0xD2, 0xB4, 0xCA, 0xB4, 0x02, 0xD2, 0x94, 0x85, 0xCA, 0x94, 0xD2, 0x74, 0xCA, 0x74, 0x8B, 0x78, 0x44, 0x7C, 0xA3, 0x16, 0x01, 0xD2, 0x53, 0x86, 0xCA, 0x54, 0xCA, 0x53, 0xC2, 0x94, 0x25, 0x7D, 0x0D, 0xDF, 0x83, 0xB8, 0xD2, 0x33, 0x01, 0xCA, 0x33, 0x81, 0xBA, 0x13, 0x79, 0x93, 0x01, 0x41, 0x12, 0x80, 0x41, 0x11, 0x01, 0x39, 0x11, 0x82, 0x38, 0xF0, 0x30, 0xF0, 0x28, 0xF0, 0x01, 0x30, 0xD0, 0x80, 0x28, + 0xEF, 0x02, 0x28, 0xCF, 0x05, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAE, 0x0B, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF9, 0x08, 0xF5, 0x24, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x89, 0x10, 0xCF, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xCF, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAE, 0x31, 0x18, 0xAD, 0x84, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x04, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0xD0, 0x3C, 0x07, 0xF8, 0x1F, 0x83, 0xD0, 0x3C, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x83, 0x00, 0xF9, 0x01, 0x19, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x04, 0x28, 0xCF, 0x03, 0x30, 0xF0, 0x02, 0x39, 0x11, 0x85, 0x41, 0x11, 0x41, 0x12, 0x51, 0x93, 0xAA, 0xD4, 0xD3, 0x75, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x05, 0xD3, 0x55, 0x02, 0xD3, 0x35, 0x01, 0xD3, 0x14, 0x80, 0xD3, 0x15, 0x03, 0xD3, 0x14, 0x80, 0xD3, 0x15, 0x03, 0xD2, 0xF4, 0x02, 0xD2, 0xD4, 0x80, 0xCA, 0xD4, 0x01, 0xD2, 0xB4, 0x82, 0xD2, 0xD4, 0xD2, 0xB4, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x81, 0xD2, 0x94, 0xD2, 0xB4, + 0x01, 0xCA, 0x94, 0x90, 0xD2, 0x94, 0xCA, 0x74, 0xCA, 0x73, 0xCA, 0x74, 0xD2, 0x74, 0xC2, 0x95, 0x6B, 0xB9, 0x6B, 0x99, 0xCA, 0x54, 0xCA, 0x53, 0xD2, 0x54, 0xCA, 0x33, 0xC2, 0x94, 0x24, 0xFD, 0x06, 0x3F, 0x35, 0x1D, 0xB2, 0x95, 0x02, 0xCA, 0x13, 0x84, 0xB9, 0xF3, 0x79, 0x92, 0x41, 0x11, 0x41, 0x12, 0x38, 0xF1, 0x01, 0x39, 0x11, 0x80, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x02, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x05, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x0B, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCF, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x25, 0x18, 0xAD, 0x87, 0x18, 0xCF, 0x01, 0x18, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x19, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x81, 0x00, 0xFA, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x02, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x40, 0x90, 0xF0, 0x3F, 0x06, 0xF8, 0x1F, 0x82, 0x60, 0x73, 0x20, 0xAD, 0x20, 0xAE, 0x13, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x82, 0x20, 0xCD, 0x20, 0xAE, 0x20, 0xAD, + 0x03, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x80, 0x28, 0xCE, 0x03, 0x28, 0xCF, 0x81, 0x30, 0xEF, 0x28, 0xF0, 0x02, 0x30, 0xF0, 0x82, 0x39, 0x10, 0x39, 0x11, 0x39, 0x12, 0x01, 0x41, 0x12, 0x83, 0x82, 0x33, 0xCB, 0x55, 0xD3, 0x75, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x03, 0xD3, 0x55, 0x04, 0xD3, 0x35, 0x82, 0xD3, 0x34, 0xD3, 0x14, 0xD3, 0x35, 0x01, 0xD3, 0x14, 0x05, 0xD2, 0xF4, 0x02, 0xD2, 0xD4, 0x81, 0xCA, 0xD4, 0xD2, 0xD4, 0x03, 0xD2, 0xB4, 0x80, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x80, 0xCA, 0xB4, 0x02, 0xD2, 0x94, 0x02, 0xCA, 0x74, 0x01, 0xCA, 0x73, 0x01, 0xCA, 0x53, 0x84, 0xCA, 0x74, 0xAA, 0xB6, 0x5B, 0x7A, 0xBA, 0x74, 0xCA, 0x53, 0x01, 0xCA, 0x33, 0x86, 0xC2, 0x54, 0x4B, 0xFB, 0x05, 0x9F, 0x0D, 0x7F, 0x8B, 0x57, 0xC9, 0xF3, 0xCA, 0x13, 0x01, 0xC9, 0xF3, 0x86, 0xA9, 0xB3, 0x59, 0x52, 0x41, 0x12, 0x39, 0x31, 0x39, 0x11, 0x31, 0x11, 0x31, 0x10, 0x01, 0x30, 0xF0, 0x81, 0x28, 0xF0, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x05, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x0D, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xD3, 0x10, 0xD2, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x23, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x85, 0x01, 0x18, 0x10, 0xCF, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x1E, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x13, 0x18, 0xAD, 0x89, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x81, 0x40, + 0x91, 0xE0, 0x1D, 0x04, 0xF8, 0x1F, 0x80, 0x70, 0x74, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x84, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x10, 0xD2, 0x20, 0xCD, 0x02, 0x18, 0xAD, 0x83, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x10, 0xD1, 0x01, 0x01, 0x19, 0x86, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xCD, 0x20, 0xAE, 0x20, 0xCD, 0x05, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x82, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xEF, 0x03, 0x30, 0xF0, 0x80, 0x39, 0x10, 0x01, 0x39, 0x11, 0x85, 0x39, 0x12, 0x41, 0x32, 0x49, 0x53, 0xB2, 0xF4, 0xD3, 0x95, 0xDB, 0x95, 0x05, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x83, 0xD3, 0x34, 0x84, 0xF9, 0x46, 0x7D, 0x1F, 0x5E, 0x02, 0x07, 0xDF, 0x08, 0x07, 0xBF, 0x88, 0x07, 0x9F, 0x1F, 0x1E, 0x36, 0x7D, 0x36, 0x7C, 0x4D, 0xDB, 0x65, 0x3A, 0x84, 0x98, 0x9B, 0xF7, 0xC2, 0xF5, 0x03, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x84, 0xCA, 0x74, 0xCA, 0x73, 0xD2, 0x53, 0xD2, 0x54, 0xCA, 0x74, 0x02, 0xCA, 0x53, 0x8B, 0xD2, 0x53, 0x72, 0xD9, 0xAA, 0x76, 0xCA, 0x33, 0xD2, 0x33, 0xCA, 0x13, 0xCA, 0x33, 0x1C, 0x7E, 0x05, 0x9F, 0x05, 0xFF, 0x5C, 0x7A, 0xCA, 0x13, 0x02, 0xC9, 0xF3, 0x82, 0xD1, 0xF3, 0x91, 0x93, 0x49, 0x11, 0x02, 0x39, 0x11, 0x80, 0x31, 0x10, 0x02, 0x30, 0xF0, 0x01, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x04, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x0A, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x20, 0xAD, + 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x13, 0x18, 0xAD, 0x11, 0x01, 0x19, 0x81, 0x01, 0x18, 0x10, 0xB0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x1E, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD1, 0x01, 0x08, 0xF3, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x84, 0x70, 0x74, 0x90, 0x77, 0x88, 0x56, 0x88, 0x76, 0x38, 0x8F, 0x03, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x11, 0x18, 0xAD, 0x87, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xCE, 0x08, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x08, 0xF7, 0x18, 0xCE, 0x20, 0xAD, 0x03, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x06, 0x28, 0xCF, 0x80, 0x30, 0xEF, 0x02, 0x30, 0xF0, 0x01, 0x31, 0x11, 0x86, 0x38, 0xF1, 0x39, 0x11, 0x41, 0x11, 0x41, 0x32, 0x61, 0x93, 0xC3, 0x55, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x81, 0xB3, 0xD6, 0x27, 0x1D, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x81, 0x07, 0x7F, 0x07, 0x9F, 0x06, 0x07, 0x7F, 0x80, 0x07, 0x5F, 0x06, 0x07, 0x7F, 0x01, 0x07, 0x9F, 0x83, 0x1E, 0xFE, 0x46, 0x1C, 0x6D, 0x1A, 0x9B, 0xD6, 0x02, 0xCA, 0x74, + 0x95, 0xCA, 0x73, 0xD2, 0x74, 0xCA, 0x74, 0xCA, 0x53, 0xD2, 0x54, 0xCA, 0x54, 0xD2, 0x53, 0xCA, 0x53, 0xCA, 0x33, 0xA2, 0x75, 0x9A, 0x76, 0xCA, 0x33, 0xCA, 0x13, 0xCA, 0x33, 0x9A, 0xD6, 0x04, 0xFF, 0x05, 0xBF, 0x06, 0x3F, 0x35, 0x7C, 0xC2, 0x54, 0xC9, 0xF3, 0xD1, 0xF3, 0x01, 0xC9, 0xF3, 0x82, 0xB9, 0xD3, 0x61, 0x52, 0x41, 0x11, 0x01, 0x39, 0x11, 0x80, 0x38, 0xF0, 0x02, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x07, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x13, 0x18, 0xAD, 0x0C, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x00, 0xF8, 0x10, 0xD0, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x1B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x80, 0x20, 0x8E, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x20, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x17, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x03, 0x01, 0x19, 0x8D, 0x01, 0x1A, 0x00, 0xF9, 0x08, 0xF5, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF4, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x01, 0x17, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x02, 0x20, 0xCE, 0x80, 0x20, 0xCD, 0x03, 0x20, 0xCE, 0x06, 0x28, 0xCF, 0x80, 0x30, 0xEF, 0x02, 0x30, 0xF0, 0x81, 0x38, 0xF0, 0x39, + 0x10, 0x02, 0x39, 0x11, 0x83, 0x41, 0x12, 0x41, 0x32, 0x61, 0x93, 0xCB, 0x55, 0x01, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x84, 0xCB, 0x55, 0xD3, 0x34, 0xCB, 0x55, 0xAC, 0x17, 0x0F, 0xBF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xBF, 0x80, 0x07, 0x7F, 0x01, 0x07, 0x5F, 0x10, 0x07, 0x3F, 0x01, 0x07, 0x5F, 0x01, 0x07, 0x7F, 0x85, 0x07, 0x9F, 0x07, 0xBF, 0x36, 0x5C, 0x74, 0xB9, 0xB3, 0x15, 0xCA, 0x73, 0x01, 0xCA, 0x54, 0x02, 0xCA, 0x53, 0x85, 0xCA, 0x33, 0xD2, 0x33, 0xCA, 0x33, 0xB2, 0x35, 0xAA, 0x16, 0xCA, 0x33, 0x01, 0xCA, 0x13, 0x8F, 0x7B, 0x37, 0x05, 0x5F, 0x05, 0xFF, 0x06, 0x7F, 0x25, 0xDD, 0xA2, 0xF5, 0xD1, 0xD3, 0xC9, 0xF3, 0xC9, 0xD3, 0xC9, 0xD2, 0xC9, 0xD3, 0x91, 0x93, 0x49, 0x32, 0x41, 0x11, 0x39, 0x11, 0x38, 0xF0, 0x02, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x04, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x14, 0x18, 0xAD, 0x10, 0x01, 0x19, 0x80, 0x18, 0xB0, 0x25, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x13, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, + 0x02, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x85, 0x10, 0xD3, 0x18, 0xCE, 0x20, 0xAD, 0x10, 0xF4, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x20, 0xAE, 0x07, 0x20, 0xCE, 0x05, 0x28, 0xCF, 0x80, 0x30, 0xEF, 0x03, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x02, 0x39, 0x11, 0x80, 0x41, 0x11, 0x01, 0x41, 0x32, 0x81, 0x61, 0xB3, 0xCB, 0x75, 0x02, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x89, 0x8C, 0xB8, 0x0F, 0xBF, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0x9F, 0x07, 0x7F, 0x07, 0x5F, 0x07, 0x3F, 0x07, 0x1F, 0x06, 0x06, 0xFF, 0x81, 0x06, 0xDF, 0x06, 0xFF, 0x02, 0x06, 0xDF, 0x03, 0x06, 0xFF, 0x02, 0x07, 0x1F, 0x03, 0x07, 0x3F, 0x01, 0x07, 0x5F, 0x83, 0x07, 0x1F, 0x2D, 0xFD, 0x74, 0x19, 0xB2, 0xB5, 0x01, 0xCA, 0x53, 0x03, 0xCA, 0x33, 0x82, 0xD2, 0x33, 0xCA, 0x14, 0xA2, 0x15, 0x01, 0xCA, 0x13, 0x88, 0xC9, 0xF3, 0x83, 0x38, 0x05, 0xBF, 0x06, 0x3F, 0x06, 0xBF, 0x0E, 0x9F, 0xAA, 0xD5, 0xC9, 0xD3, 0xC9, 0xD2, 0x01, 0xC9, 0xD3, 0x82, 0xC9, 0xB2, 0xB1, 0xB2, 0x59, 0x31, 0x02, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xF0, 0x01, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x04, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x7F, 0x18, 0xAD, 0x10, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x03, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, + 0x19, 0x01, 0x18, 0xAD, 0x86, 0x18, 0xCF, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD0, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x06, 0x20, 0xCE, 0x80, 0x20, 0xCF, 0x04, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x03, 0x30, 0xF0, 0x82, 0x38, 0xF0, 0x31, 0x11, 0x38, 0xF1, 0x01, 0x39, 0x11, 0x01, 0x41, 0x12, 0x82, 0x41, 0x32, 0x61, 0x93, 0xCB, 0x75, 0x02, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x80, 0xD3, 0x54, 0x01, 0xD3, 0x55, 0x8B, 0xC3, 0x95, 0x5D, 0xFA, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0x9F, 0x07, 0x7F, 0x07, 0x5F, 0x07, 0x3F, 0x07, 0x1F, 0x06, 0xFF, 0x06, 0xDF, 0x01, 0x06, 0xBF, 0x03, 0x06, 0x9F, 0x01, 0x06, 0xBF, 0x06, 0x06, 0x9F, 0x02, 0x06, 0xBF, 0x01, 0x06, 0xDF, 0x02, 0x06, 0xFF, 0x01, 0x07, 0x1F, 0x85, 0x06, 0xFF, 0x06, 0xBF, 0x06, 0x5F, 0x05, 0xBF, 0x44, 0x3C, 0x8A, 0xF7, 0x03, 0xCA, 0x33, 0x02, 0xCA, 0x13, 0x90, 0x99, 0xB6, 0xC9, 0xF3, 0xCA, 0x13, 0xC9, 0xF3, 0x4C, 0x3B, 0x06, 0x1F, 0x06, 0x9F, 0x06, 0xFF, 0x0E, 0xBE, 0xA2, 0xD5, 0xC9, 0xB3, 0xC9, 0xD3, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0xB2, 0xC1, 0xB3, 0x71, 0x52, 0x01, 0x39, 0x11, 0x80, 0x31, 0x10, 0x01, 0x30, 0xF0, 0x81, 0x28, 0xF0, 0x30, 0xD0, 0x02, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x07, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCE, 0x08, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x13, 0x01, 0x19, 0x7F, + 0x18, 0xAD, 0x01, 0x18, 0xAD, 0x03, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x20, 0xAE, 0x20, 0xAD, 0x18, 0xCE, 0x01, 0x01, 0x19, 0x87, 0x10, 0xD3, 0x20, 0xCE, 0x20, 0xAE, 0x10, 0xF4, 0x01, 0x19, 0x01, 0x1A, 0x20, 0xCE, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x83, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xEF, 0x30, 0xEF, 0x04, 0x30, 0xF0, 0x02, 0x39, 0x11, 0x89, 0x41, 0x12, 0x39, 0x12, 0x41, 0x12, 0x41, 0x32, 0x41, 0x33, 0x51, 0x53, 0xBB, 0x35, 0xD3, 0x95, 0xD3, 0x96, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x8C, 0xBB, 0xD6, 0x5D, 0xFB, 0x0F, 0xBF, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0x7F, 0x07, 0x5F, 0x07, 0x3F, 0x07, 0x1F, 0x06, 0xFF, 0x06, 0xDF, 0x06, 0xBF, 0x01, 0x06, 0x9F, 0x02, 0x06, 0x7F, 0x09, 0x06, 0x5F, 0x80, 0x06, 0x7F, 0x01, 0x06, 0x5F, 0x01, 0x06, 0x7F, 0x02, 0x06, 0x9F, 0x01, 0x06, 0xBF, 0x88, 0x06, 0xDF, 0x06, 0xBF, 0x06, 0x9F, 0x06, 0x5F, 0x05, 0xFF, 0x05, 0x3F, 0x04, 0x9F, 0x1B, 0xBE, 0x82, 0x98, 0x04, 0xCA, 0x13, 0x81, 0xD1, 0xF3, 0x99, 0xB6, 0x01, 0xC9, 0xF3, 0x87, 0xB2, 0x54, 0x0D, 0x9F, 0x06, 0x7F, 0x06, 0xDF, 0x06, 0xFF, 0x0E, 0xBF, 0xA2, 0xD5, 0xC9, 0xD2, 0x02, 0xC9, 0xB3, 0x82, 0xC9, 0xB2, 0xC9, 0xB3, 0x81, 0x52, 0x02, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x82, 0x28, 0xF0, 0x30, 0xF0, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x04, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x05, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x02, 0x01, 0x19, + 0x80, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x13, 0x01, 0x19, 0x7C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x85, 0x01, 0x1A, 0x08, 0xF5, 0x18, 0xAE, 0x20, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x88, 0x09, 0x18, 0x09, 0x17, 0x01, 0x39, 0x01, 0x1A, 0x10, 0xF5, 0x20, 0xCE, 0x20, 0xCF, 0x28, 0xCF, 0x28, 0xCE, 0x04, 0x28, 0xCF, 0x81, 0x28, 0xEF, 0x30, 0xEF, 0x02, 0x30, 0xF0, 0x82, 0x31, 0x10, 0x30, 0xF0, 0x38, 0xF0, 0x02, 0x39, 0x11, 0x01, 0x41, 0x12, 0x87, 0x41, 0x32, 0x49, 0x32, 0x41, 0x33, 0x49, 0x33, 0xBB, 0x35, 0xD3, 0x95, 0xD3, 0x96, 0xD3, 0x95, 0x05, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x82, 0xAC, 0x37, 0x6D, 0x9A, 0x2E, 0xFE, 0x01, 0x07, 0xFF, 0x89, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0x9F, 0x07, 0x5F, 0x07, 0x3F, 0x07, 0x1F, 0x06, 0xDF, 0x06, 0xBF, 0x06, 0x9F, 0x06, 0x7F, 0x01, 0x06, 0x5F, 0x01, 0x06, 0x3F, 0x08, 0x06, 0x1F, 0x80, 0x05, 0xFF, 0x05, 0x06, 0x1F, 0x02, 0x06, 0x3F, 0x03, 0x06, 0x5F, 0x01, 0x06, 0x7F, 0x87, 0x06, 0x3F, 0x05, 0xDF, 0x05, 0x5F, 0x04, 0xBF, 0x04, 0x3F, 0x03, 0x7F, 0x1A, 0xBE, 0x7A, 0x18, 0x02, 0xCA, 0x13, 0x8B, 0xC9, 0xF3, 0xC1, 0xF4, 0x71, 0x78, 0xC9, 0xF2, 0xD1, 0xF3, 0x83, 0x38, 0x06, 0x1F, 0x06, 0xBF, 0x06, 0xFF, 0x07, 0x1F, 0x0E, 0xDF, 0xA2, 0xD5, 0x01, 0xC9, 0xB3, 0x80, 0xC9, 0xB2, 0x01, 0xC9, 0x92, 0x84, 0xC9, 0x93, 0x91, 0x72, 0x39, 0x11, 0x39, 0x10, 0x31, 0x10, 0x02, 0x30, 0xF0, + 0x01, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x13, 0x01, 0x1A, 0x7C, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x02, 0x18, 0xAE, 0x81, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x81, 0x18, 0xCE, 0x09, 0x18, 0x01, 0x01, 0x1A, 0x85, 0x09, 0x19, 0x01, 0x1A, 0x09, 0x17, 0x20, 0xCF, 0x28, 0xAE, 0x20, 0xCF, 0x02, 0x28, 0xCF, 0x02, 0x28, 0xEF, 0x80, 0x30, 0xEF, 0x02, 0x30, 0xF0, 0x01, 0x38, 0xF0, 0x03, 0x39, 0x11, 0x83, 0x39, 0x12, 0x41, 0x12, 0x41, 0x32, 0x49, 0x32, 0x01, 0x49, 0x33, 0x81, 0x49, 0x53, 0xA2, 0xB4, 0x01, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x86, 0xD3, 0x55, 0xD3, 0x75, 0xD3, 0x55, 0xC3, 0xB6, 0x85, 0x19, 0x4E, 0x3C, 0x0F, 0x9F, 0x03, 0x07, 0xFF, 0x81, 0x07, 0xDF, 0x07, 0x9F, 0x01, 0x07, 0x7F, 0x87, 0x07, 0x5F, 0x07, 0x3F, 0x06, 0xFF, 0x06, 0xBF, 0x06, 0x9F, 0x06, 0x7F, 0x06, 0x5F, 0x06, 0x3F, 0x01, 0x06, 0x1F, 0x80, 0x05, 0xFF, 0x03, 0x05, 0xDF, 0x01, 0x05, 0xBF, 0x01, 0x05, 0xDF, 0x05, 0x05, 0xBF, 0x03, 0x05, 0xDF, 0x01, 0x05, 0xFF, 0x05, 0x06, 0x1F, 0x92, 0x05, 0xDF, 0x05, 0x7F, 0x04, 0xFF, 0x04, 0x7F, 0x03, 0xDF, 0x03, 0x1F, 0x02, 0x5F, 0x19, 0xDE, 0x79, 0xB8, 0xC9, 0xF3, 0xCA, 0x13, 0xC9, 0xF3, 0xB9, 0xD3, + 0xA1, 0xB5, 0xC9, 0xD3, 0xC9, 0xF3, 0x4C, 0x5B, 0x06, 0x5F, 0x06, 0xDF, 0x01, 0x07, 0x1F, 0x81, 0x0E, 0xDF, 0xA2, 0xB5, 0x01, 0xC9, 0xB3, 0x01, 0xC9, 0x92, 0x85, 0xC9, 0x93, 0xC9, 0x92, 0xB1, 0x72, 0x49, 0x11, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xEF, 0x80, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x09, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x17, 0x01, 0x19, 0x7F, 0x18, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x10, 0xF3, 0x84, 0x10, 0xD2, 0x20, 0xAE, 0x18, 0xAE, 0x20, 0xAE, 0x18, 0xCE, 0x02, 0x20, 0xCE, 0x85, 0x18, 0xF2, 0x10, 0xF4, 0x11, 0x14, 0x18, 0xF3, 0x20, 0xCF, 0x28, 0xCE, 0x03, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x80, 0x30, 0xEF, 0x02, 0x30, 0xF0, 0x81, 0x31, 0x10, 0x38, 0xF0, 0x02, 0x39, 0x11, 0x82, 0x39, 0x12, 0x39, 0x11, 0x41, 0x12, 0x01, 0x41, 0x32, 0x02, 0x49, 0x33, 0x81, 0x49, 0x53, 0xA2, 0xB5, 0x02, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x83, 0xC3, 0xB5, 0x7D, 0x59, 0x36, 0xBD, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x01, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x01, 0x07, 0x7F, 0x84, 0x07, 0x1F, 0x06, 0xDE, 0x06, 0x9E, 0x06, 0x7E, 0x06, 0x5E, 0x01, 0x06, 0x3F, 0x82, 0x06, 0x1E, 0x05, 0xFF, 0x05, 0xDF, 0x01, 0x05, 0xBF, 0x02, 0x05, 0x9F, 0x0B, 0x05, 0x7F, 0x02, 0x05, 0x9F, 0x02, 0x05, 0xBF, 0x02, 0x05, 0xDF, 0x8A, 0x05, 0xBF, 0x05, 0x7F, 0x04, 0xFF, 0x04, 0x9F, 0x03, 0xFF, 0x03, 0x7F, 0x02, + 0xBF, 0x02, 0x1F, 0x01, 0x7F, 0x21, 0x3D, 0x99, 0x96, 0x01, 0xC9, 0xF3, 0x8A, 0xB9, 0xD4, 0x99, 0xB6, 0xC9, 0xD3, 0xC2, 0x13, 0x0D, 0xBF, 0x06, 0x9F, 0x06, 0xFF, 0x07, 0x1F, 0x07, 0x3F, 0x0E, 0xFF, 0xA2, 0xB5, 0x03, 0xC9, 0x92, 0x01, 0xC9, 0x72, 0x83, 0xA9, 0x72, 0x49, 0x11, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x17, 0x01, 0x19, 0x7D, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xAD, 0x04, 0x20, 0xAD, 0x83, 0x20, 0xAE, 0x18, 0xCE, 0x20, 0xAE, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x84, 0x20, 0xAF, 0x20, 0xCE, 0x28, 0xCE, 0x28, 0xCF, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x03, 0x30, 0xF0, 0x81, 0x31, 0x10, 0x39, 0x10, 0x03, 0x39, 0x11, 0x84, 0x41, 0x11, 0x41, 0x31, 0x41, 0x12, 0x41, 0x32, 0x49, 0x13, 0x01, 0x49, 0x33, 0x89, 0x49, 0x53, 0x51, 0x54, 0xAA, 0xB5, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x75, 0x94, 0xD8, 0x46, 0x7C, 0x04, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x01, 0x07, 0x7F, 0x81, 0x06, 0xDE, 0x06, 0xBE, 0x01, 0x06, 0x7E, 0x83, 0x06, 0x5E, 0x06, 0x3E, 0x06, 0x1E, 0x05, 0xFE, 0x01, 0x05, 0xDE, 0x81, 0x05, 0xBE, 0x05, 0x9F, 0x01, 0x05, 0x7F, 0x01, 0x05, 0x5F, 0x0C, 0x05, 0x3F, 0x02, 0x05, 0x5F, 0x04, + 0x05, 0x7F, 0x93, 0x05, 0x5F, 0x04, 0xFF, 0x04, 0xBF, 0x04, 0x1F, 0x03, 0x9F, 0x03, 0x1F, 0x02, 0x5F, 0x01, 0xBF, 0x01, 0x3F, 0x00, 0xBF, 0x40, 0xFB, 0xB1, 0xB5, 0xC9, 0xD2, 0xB1, 0xD5, 0xB1, 0xD4, 0xC9, 0xB3, 0x63, 0x99, 0x06, 0x1F, 0x06, 0xDF, 0x07, 0x1F, 0x01, 0x07, 0x3F, 0x81, 0x0E, 0xFF, 0xA2, 0xB5, 0x01, 0xC9, 0x92, 0x01, 0xC9, 0x72, 0x84, 0xC9, 0x92, 0xC9, 0x72, 0xB1, 0x52, 0x41, 0x11, 0x39, 0x11, 0x02, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x02, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x80, 0x20, 0xAE, 0x03, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x01, 0x1A, 0x05, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x13, 0x01, 0x19, 0x7D, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x80, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x82, 0x20, 0xCE, 0x20, 0xCD, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x82, 0x28, 0xCE, 0x20, 0xCF, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x84, 0x28, 0xEF, 0x30, 0xEF, 0x30, 0xD0, 0x28, 0xF0, 0x31, 0x10, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xF1, 0x04, 0x39, 0x11, 0x80, 0x41, 0x12, 0x02, 0x41, 0x32, 0x81, 0x49, 0x32, 0x49, 0x33, 0x01, 0x49, 0x53, 0x82, 0x51, 0x53, 0x4A, 0x16, 0xA2, 0xB5, 0x02, 0xD3, 0x95, 0x84, 0xD3, 0x75, 0x85, 0x39, 0x1F, 0x5E, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x86, 0x07, 0x9F, 0x07, 0xBF, 0x07, 0x5F, 0x06, 0xBE, 0x06, 0x9D, 0x06, 0x7D, 0x06, 0x5D, 0x01, 0x06, + 0x3D, 0x81, 0x06, 0x1D, 0x05, 0xFE, 0x01, 0x05, 0xDE, 0x83, 0x05, 0xBE, 0x05, 0x9E, 0x05, 0x7E, 0x05, 0x5F, 0x01, 0x05, 0x3F, 0x01, 0x05, 0x1F, 0x0A, 0x04, 0xFF, 0x05, 0x05, 0x1F, 0x01, 0x05, 0x3F, 0x94, 0x05, 0x1F, 0x04, 0xDF, 0x04, 0xBF, 0x04, 0x3F, 0x03, 0xDF, 0x03, 0x5F, 0x02, 0xBF, 0x02, 0x1F, 0x01, 0x7F, 0x00, 0xFF, 0x00, 0x9F, 0x08, 0x7F, 0x71, 0x19, 0xC9, 0xD3, 0xB1, 0xD4, 0xB9, 0xD3, 0xC9, 0xB3, 0x1C, 0xFE, 0x06, 0x5F, 0x06, 0xFF, 0x07, 0x1F, 0x01, 0x07, 0x3F, 0x8B, 0x1E, 0xBE, 0xB9, 0xF3, 0xC9, 0x93, 0xC9, 0x72, 0xC9, 0x92, 0xC9, 0x72, 0xC9, 0x73, 0xC9, 0x52, 0xB1, 0x52, 0x41, 0x11, 0x39, 0x10, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x03, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x39, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x7F, 0x18, 0xAD, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x20, 0xCD, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xCF, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xCF, 0x02, 0x28, 0xCF, 0x81, 0x28, 0xEF, 0x28, 0xCF, 0x04, 0x30, 0xF0, 0x80, 0x39, 0x10, 0x03, 0x39, 0x11, 0x02, 0x41, 0x32, 0x80, 0x49, 0x32, 0x02, 0x49, 0x33, 0x84, 0x49, 0x53, 0x4A, 0x15, 0x34, 0x39, 0x16, 0xBD, 0x85, 0x19, 0x02, 0xD3, 0x95, 0x81, 0x94, 0xD8, 0x1F, 0x5E, 0x01, 0x07, 0xDF, 0x07, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x03, + 0x07, 0xBF, 0x80, 0x07, 0x1E, 0x01, 0x06, 0x9D, 0x81, 0x06, 0x7D, 0x06, 0x5D, 0x01, 0x06, 0x3D, 0x89, 0x06, 0x1D, 0x05, 0xFD, 0x05, 0xDD, 0x05, 0xBD, 0x05, 0x9D, 0x05, 0x9E, 0x05, 0x7E, 0x05, 0x5E, 0x05, 0x3E, 0x05, 0x1E, 0x01, 0x04, 0xFF, 0x80, 0x04, 0xDF, 0x02, 0x04, 0xBF, 0x04, 0x04, 0x9F, 0x05, 0x04, 0xBF, 0x81, 0x04, 0xDF, 0x04, 0xBF, 0x02, 0x04, 0xDF, 0x98, 0x04, 0xBF, 0x04, 0x9F, 0x04, 0x3F, 0x03, 0xDF, 0x03, 0x5F, 0x02, 0xFF, 0x02, 0x5F, 0x01, 0xBF, 0x01, 0x3F, 0x00, 0xDF, 0x00, 0x7F, 0x00, 0x5F, 0x18, 0x5E, 0x89, 0x57, 0x61, 0xB9, 0xC9, 0xD3, 0x9A, 0x96, 0x05, 0x9F, 0x06, 0x7F, 0x06, 0xFF, 0x07, 0x1F, 0x07, 0x3F, 0x07, 0x5F, 0x26, 0x7D, 0xB9, 0xD3, 0x04, 0xC9, 0x72, 0x83, 0xC9, 0x52, 0xB1, 0x52, 0x41, 0x11, 0x38, 0xF1, 0x02, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xCF, 0x00, 0xF7, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x83, 0x00, 0xF6, 0x18, 0xCE, 0x18, 0xAD, 0x20, 0xAE, 0x4A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x41, 0x18, 0xAD, 0x02, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x82, 0x20, 0xCF, 0x28, 0xCF, 0x20, 0xCF, 0x03, 0x28, 0xCF, 0x03, 0x30, 0xF0, 0x80, 0x31, 0x10, 0x01, 0x38, 0xF1, 0x01, 0x39, 0x11, 0x83, 0x41, 0x11, 0x41, 0x12, 0x41, 0x32, 0x41, 0x12, 0x01, 0x49, 0x32, 0x01, 0x49, 0x33, 0x85, 0x69, 0xB4, 0x63, 0x36, + 0x6C, 0xD9, 0x4E, 0x5B, 0x07, 0xDF, 0x85, 0x39, 0x01, 0xD3, 0x95, 0x81, 0xBC, 0x17, 0x3E, 0x9C, 0x02, 0x07, 0xDF, 0x0A, 0x07, 0xFF, 0x81, 0x07, 0xDF, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x82, 0x07, 0xBF, 0x07, 0xDF, 0x06, 0xBD, 0x01, 0x06, 0x9C, 0x80, 0x06, 0x7C, 0x01, 0x06, 0x5C, 0x8F, 0x06, 0x3C, 0x06, 0x1C, 0x05, 0xFC, 0x05, 0xDC, 0x05, 0xBC, 0x05, 0xBD, 0x05, 0x9D, 0x05, 0x7D, 0x05, 0x5D, 0x05, 0x3E, 0x05, 0x1E, 0x04, 0xFE, 0x04, 0xDE, 0x04, 0xBE, 0x04, 0xBF, 0x04, 0x9F, 0x02, 0x04, 0x7F, 0x02, 0x04, 0x5F, 0x09, 0x04, 0x7F, 0x8C, 0x04, 0x9F, 0x04, 0x7F, 0x04, 0x5F, 0x04, 0x1F, 0x03, 0xDF, 0x03, 0x7F, 0x03, 0x1F, 0x02, 0x9F, 0x02, 0x1F, 0x01, 0x7F, 0x01, 0x1F, 0x00, 0xBF, 0x00, 0x5F, 0x01, 0x00, 0x1F, 0x86, 0x00, 0xFF, 0x89, 0xB7, 0xC9, 0xB3, 0x44, 0x7B, 0x06, 0x5F, 0x06, 0xBF, 0x07, 0x1F, 0x01, 0x07, 0x3F, 0x81, 0x07, 0x5F, 0x3D, 0x9B, 0x03, 0xC9, 0x72, 0x02, 0xC9, 0x52, 0x80, 0xA1, 0x32, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x81, 0x20, 0xCE, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x86, 0x20, 0xAE, 0x20, 0xAD, 0x20, 0xAE, 0x20, 0xCD, 0x18, 0xAD, 0x18, 0xD0, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x80, 0x00, 0xFA, 0x01, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xF4, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x4B, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x41, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x80, 0x28, 0xCE, 0x03, 0x28, + 0xCF, 0x80, 0x28, 0xEF, 0x01, 0x30, 0xF0, 0x82, 0x31, 0x10, 0x30, 0xF0, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x82, 0x39, 0x31, 0x40, 0xF1, 0x41, 0x11, 0x02, 0x41, 0x32, 0x83, 0x61, 0xB3, 0x92, 0x74, 0xB2, 0xF5, 0xC3, 0x55, 0x02, 0xD3, 0x95, 0x86, 0xBC, 0x16, 0x46, 0x9D, 0x85, 0x39, 0xD3, 0x76, 0xD3, 0x75, 0x6D, 0xBA, 0x0F, 0x9F, 0x02, 0x07, 0xDF, 0x0D, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x85, 0x07, 0x7F, 0x06, 0xBC, 0x06, 0xBB, 0x06, 0x9B, 0x06, 0x7B, 0x06, 0x5B, 0x01, 0x06, 0x3B, 0x83, 0x06, 0x1B, 0x05, 0xFB, 0x05, 0xDB, 0x05, 0xBB, 0x01, 0x05, 0x9C, 0x87, 0x05, 0x7C, 0x05, 0x5C, 0x05, 0x3D, 0x05, 0x1D, 0x04, 0xFD, 0x04, 0xDD, 0x04, 0xBE, 0x04, 0x9E, 0x01, 0x04, 0x7F, 0x80, 0x04, 0x5F, 0x01, 0x04, 0x3F, 0x04, 0x04, 0x1F, 0x08, 0x04, 0x3F, 0x93, 0x04, 0x1F, 0x03, 0xFF, 0x03, 0xBF, 0x03, 0x7F, 0x03, 0x3F, 0x02, 0xBF, 0x02, 0x3F, 0x01, 0xDF, 0x01, 0x5F, 0x00, 0xDF, 0x00, 0x9F, 0x00, 0x5F, 0x00, 0x1F, 0x00, 0x5F, 0x09, 0x7F, 0xB9, 0xB3, 0xB2, 0x14, 0x0D, 0xBF, 0x06, 0xFF, 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x82, 0x07, 0x5F, 0x07, 0x7F, 0x64, 0x79, 0x01, 0xC9, 0x72, 0x03, 0xC9, 0x52, 0x86, 0xC9, 0x32, 0x91, 0x32, 0x39, 0x11, 0x31, 0x11, 0x30, 0xF0, 0x28, 0xF0, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF4, 0x20, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x17, 0x18, 0xAD, + 0x80, 0x18, 0xAE, 0x31, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x44, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x80, 0x20, 0xCF, 0x03, 0x28, 0xCF, 0x86, 0x30, 0xEF, 0x30, 0xF0, 0x28, 0xF0, 0x30, 0xF0, 0x31, 0x10, 0x38, 0xF0, 0x38, 0xF1, 0x01, 0x39, 0x11, 0x81, 0x39, 0x12, 0x41, 0x11, 0x01, 0x41, 0x32, 0x82, 0x51, 0x52, 0x82, 0x34, 0xC3, 0x35, 0x03, 0xD3, 0x95, 0x87, 0xAC, 0x57, 0x7D, 0x7A, 0x46, 0x9C, 0x0F, 0x9F, 0xA4, 0xB8, 0xD3, 0x95, 0x85, 0x39, 0x1F, 0x5E, 0x02, 0x07, 0xDF, 0x10, 0x07, 0xFF, 0x83, 0x07, 0xDF, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0x5D, 0x01, 0x06, 0xBB, 0x81, 0x06, 0x9A, 0x06, 0x7A, 0x01, 0x06, 0x5A, 0x88, 0x06, 0x3A, 0x06, 0x1A, 0x05, 0xFA, 0x05, 0xDA, 0x05, 0xDB, 0x05, 0xBB, 0x05, 0x9B, 0x05, 0x7B, 0x05, 0x5B, 0x01, 0x05, 0x3C, 0x83, 0x05, 0x1C, 0x04, 0xFC, 0x04, 0xDD, 0x04, 0xBD, 0x01, 0x04, 0x7E, 0x82, 0x04, 0x5E, 0x04, 0x3F, 0x04, 0x1F, 0x01, 0x03, 0xFF, 0x0D, 0x03, 0xDF, 0x97, 0x03, 0xBF, 0x03, 0x5F, 0x03, 0x1F, 0x02, 0xDF, 0x02, 0x7F, 0x01, 0xFF, 0x01, 0x9F, 0x01, 0x1F, 0x00, 0xBF, 0x00, 0x7F, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x9F, 0x39, 0xDB, 0xC9, 0x92, 0x63, 0x99, 0x06, 0x9F, 0x07, 0x9F, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0x7F, 0x07, 0x9F, 0x9A, 0xF6, 0x05, 0xC9, 0x52, 0x88, 0xC9, 0x32, 0x71, 0x12, 0x31, 0x10, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xF0, 0x28, 0xEF, 0x28, 0xCE, 0x28, 0xCF, 0x02, 0x20, 0xCE, + 0x84, 0x20, 0xCD, 0x20, 0xCE, 0x20, 0xAE, 0x18, 0xCF, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x08, 0xF5, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x48, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x87, 0x10, 0xD2, 0x08, 0xF3, 0x08, 0xD3, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x3B, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x80, 0x20, 0xCF, 0x03, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x03, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x02, 0x39, 0x11, 0x80, 0x41, 0x12, 0x01, 0x41, 0x32, 0x82, 0x51, 0x93, 0x92, 0x74, 0xCB, 0x75, 0x02, 0xD3, 0x95, 0x82, 0xC3, 0xD6, 0x6D, 0xBA, 0x1F, 0x7E, 0x01, 0x07, 0xFF, 0x83, 0x36, 0xDD, 0xBC, 0x17, 0x85, 0x39, 0x1F, 0x5E, 0x01, 0x07, 0xDF, 0x14, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x81, 0x07, 0x1B, 0x06, 0xDA, 0x01, 0x06, 0xBA, 0x83, 0x06, 0x99, 0x06, 0x79, 0x06, 0x59, 0x06, 0x39, 0x01, 0x06, 0x19, 0x91, 0x05, 0xF9, 0x05, 0xDA, 0x05, 0xBA, 0x05, 0x9A, 0x05, 0x7A, 0x05, 0x5A, 0x05, 0x5B, 0x05, 0x3B, 0x05, 0x1B, 0x04, 0xFC, 0x04, 0xDC, 0x04, 0xBC, 0x04, 0x9D, 0x04, 0x7D, 0x04, 0x5D, 0x04, 0x3E, 0x04, 0x1E, 0x03, 0xFE, 0x01, 0x03, 0xDF, 0x01, 0x03, 0xBF, 0x0A, 0x03, 0x9F, 0x92, 0x03, 0x7F, 0x03, 0x5F, 0x03, 0x1F, 0x02, 0xDF, 0x02, 0x7F, 0x02, 0x3F, 0x01, 0xBF, 0x01, 0x5F, 0x00, 0xFF, 0x00, 0x9F, 0x00, 0x5F, 0x00, 0x1F, 0x00, 0x3F, 0x01, 0x1F, 0x99, 0xB6, 0xB9, 0xD3, 0x0D, 0x9F, 0x06, 0xDF, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x81, 0x0F, + 0x7E, 0xB9, 0xB3, 0x03, 0xC9, 0x52, 0x87, 0xC9, 0x31, 0xC9, 0x32, 0xC1, 0x32, 0x61, 0x11, 0x38, 0xF0, 0x30, 0xF0, 0x28, 0xF0, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x83, 0x20, 0xAE, 0x18, 0xCE, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x34, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x3D, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x81, 0x31, 0x10, 0x39, 0x10, 0x01, 0x39, 0x11, 0x80, 0x39, 0x12, 0x01, 0x41, 0x32, 0x83, 0x61, 0x73, 0xA2, 0xB4, 0xD3, 0x95, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x88, 0xC3, 0xD6, 0x6D, 0xBA, 0x0F, 0xBF, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xFF, 0x07, 0xDF, 0x1F, 0x7E, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x16, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x01, 0x06, 0xF9, 0x81, 0x06, 0xD9, 0x06, 0xB8, 0x01, 0x06, 0x98, 0x81, 0x06, 0x78, 0x06, 0x58, 0x01, 0x06, 0x38, 0x85, 0x06, 0x18, 0x05, 0xF8, 0x05, 0xD8, 0x05, 0xB8, 0x05, 0x98, 0x05, 0x79, 0x01, 0x05, 0x59, 0x8B, 0x05, 0x1A, 0x04, 0xFA, 0x04, 0xDB, 0x04, 0xBB, 0x04, 0x9C, 0x04, 0x7C, 0x04, 0x5D, 0x04, 0x3D, 0x04, 0x1E, 0x03, 0xFE, 0x03, 0xDE, 0x03, 0xBF, 0x01, 0x03, 0x9F, 0x02, 0x03, 0x7F, 0x06, 0x03, 0x5F, 0x01, 0x03, + 0x3F, 0x92, 0x03, 0x1F, 0x02, 0xFF, 0x02, 0xBF, 0x02, 0x7F, 0x02, 0x3F, 0x01, 0xFF, 0x01, 0x9F, 0x01, 0x3F, 0x00, 0xBF, 0x00, 0x7F, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x5F, 0x19, 0x7E, 0xB9, 0x93, 0x63, 0x79, 0x06, 0x3F, 0x07, 0x3F, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x80, 0x3D, 0xFB, 0x01, 0xC9, 0x52, 0x03, 0xC9, 0x32, 0x82, 0xC9, 0x12, 0xB9, 0x12, 0x41, 0x11, 0x02, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x84, 0x20, 0xAE, 0x20, 0xCE, 0x08, 0xF6, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x14, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x30, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x01, 0x17, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF4, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x3A, 0x18, 0xAD, 0x02, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x01, 0x28, 0xCF, 0x83, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xEF, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x02, 0x39, 0x11, 0x83, 0x41, 0x11, 0x49, 0x52, 0x79, 0xF3, 0xB2, 0xF4, 0x04, 0xD3, 0x95, 0x81, 0x94, 0xF9, 0x0F, 0xBF, 0x08, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x17, 0x07, 0xFF, 0x81, 0x07, 0x9D, 0x07, 0x19, 0x01, 0x06, 0xF8, 0x80, 0x06, 0xD7, 0x01, 0x06, 0xB7, 0x89, 0x06, 0x97, 0x06, 0x76, 0x06, 0x56, 0x06, 0x37, 0x06, 0x36, 0x06, 0x17, 0x05, 0xF7, 0x05, 0xD7, 0x05, 0xB7, + 0x05, 0x97, 0x01, 0x05, 0x78, 0x87, 0x05, 0x38, 0x05, 0x19, 0x04, 0xF9, 0x04, 0xDA, 0x04, 0xBB, 0x04, 0x9B, 0x04, 0x7C, 0x04, 0x3C, 0x01, 0x04, 0x1D, 0x84, 0x03, 0xFE, 0x03, 0xDE, 0x03, 0xBE, 0x03, 0x9E, 0x03, 0x7F, 0x01, 0x03, 0x5F, 0x80, 0x03, 0x3F, 0x03, 0x03, 0x1F, 0x03, 0x02, 0xFF, 0x92, 0x02, 0xDF, 0x02, 0xBF, 0x02, 0x9F, 0x02, 0x7F, 0x02, 0x3F, 0x01, 0xFF, 0x01, 0x9F, 0x01, 0x5F, 0x00, 0xFF, 0x00, 0x9F, 0x00, 0x5F, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0xBF, 0x59, 0xBA, 0xB9, 0xB3, 0x0D, 0x3F, 0x06, 0xBF, 0x07, 0x9F, 0x04, 0x07, 0xFF, 0x82, 0x74, 0x38, 0xC9, 0x52, 0xC1, 0x32, 0x02, 0xC9, 0x32, 0x83, 0xC9, 0x11, 0xC9, 0x12, 0xA1, 0x11, 0x39, 0x11, 0x02, 0x30, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xFA, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x4F, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x82, 0x10, 0xD3, 0x01, 0x1A, 0x00, 0xF9, 0x3C, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x80, 0x20, 0xCF, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x03, 0x30, 0xF0, 0x01, 0x39, 0x11, 0x83, 0x51, 0x51, 0x79, 0xF3, 0xA2, 0xB4, 0xCB, 0x75, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x82, 0xC3, 0xD6, 0x46, 0x9C, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x06, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x17, 0x07, 0xFF, 0x84, 0x07, 0xFE, 0xC3, 0x35, 0x45, 0xD7, 0x07, 0x38, 0x07, 0x17, 0x01, 0x06, + 0xF6, 0x80, 0x06, 0xD6, 0x01, 0x06, 0xB5, 0x84, 0x06, 0x95, 0x06, 0x75, 0x06, 0x55, 0x06, 0x35, 0x06, 0x15, 0x01, 0x05, 0xF5, 0x8C, 0x05, 0xD6, 0x05, 0xB6, 0x05, 0x97, 0x05, 0x57, 0x05, 0x38, 0x05, 0x18, 0x04, 0xF9, 0x04, 0xD9, 0x04, 0x9A, 0x04, 0x7B, 0x04, 0x5B, 0x04, 0x3C, 0x04, 0x1C, 0x01, 0x03, 0xDD, 0x83, 0x03, 0xBE, 0x03, 0x9E, 0x03, 0x7E, 0x03, 0x5F, 0x01, 0x03, 0x3F, 0x81, 0x03, 0x1F, 0x02, 0xFF, 0x01, 0x02, 0xDF, 0x03, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x91, 0x02, 0x7F, 0x02, 0x5F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xBF, 0x01, 0x7F, 0x01, 0x1F, 0x00, 0xDF, 0x00, 0x9F, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x3F, 0x01, 0x3F, 0xB1, 0x74, 0x63, 0x39, 0x05, 0xFF, 0x07, 0x1F, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x81, 0x0F, 0x9F, 0xB9, 0x92, 0x01, 0xC9, 0x32, 0x80, 0xC9, 0x31, 0x02, 0xC9, 0x12, 0x81, 0xC9, 0x11, 0x81, 0x11, 0x01, 0x30, 0xF0, 0x81, 0x28, 0xEF, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xD0, 0x02, 0x01, 0x19, 0x84, 0x01, 0x39, 0x08, 0xF5, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x14, 0x18, 0xAD, 0x80, 0x10, 0xCF, 0x36, 0x18, 0xAD, 0x86, 0x18, 0xAF, 0x00, 0xF9, 0x01, 0x19, 0x18, 0xD0, 0x18, 0xCD, 0x18, 0xAD, 0x10, 0xD1, 0x01, 0x01, 0x19, 0x3C, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x81, 0x20, 0xCF, 0x28, 0xCF, 0x02, 0x28, 0xEF, 0x01, 0x30, 0xF0, 0x83, 0x59, 0xB2, 0x7A, 0x13, 0x9A, 0x94, 0xBB, 0x55, + 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x02, 0xD3, 0x95, 0x81, 0xAC, 0x77, 0x2F, 0x1E, 0x22, 0x07, 0xFF, 0x87, 0x07, 0xBC, 0x07, 0x59, 0xAB, 0xB5, 0xC3, 0x14, 0x1E, 0x97, 0x07, 0x36, 0x07, 0x16, 0x07, 0x15, 0x01, 0x06, 0xF4, 0x9F, 0x06, 0xF3, 0x06, 0xD3, 0x06, 0xB3, 0x06, 0xB2, 0x06, 0x92, 0x06, 0x72, 0x06, 0x53, 0x06, 0x33, 0x06, 0x13, 0x05, 0xF4, 0x05, 0xD4, 0x05, 0x95, 0x05, 0x75, 0x05, 0x56, 0x05, 0x17, 0x04, 0xF8, 0x04, 0xB9, 0x04, 0x99, 0x04, 0x5A, 0x04, 0x3B, 0x04, 0x1B, 0x03, 0xFC, 0x03, 0xDD, 0x03, 0xBD, 0x03, 0x9D, 0x03, 0x7E, 0x03, 0x5E, 0x03, 0x3E, 0x03, 0x3F, 0x03, 0x1F, 0x02, 0xFF, 0x02, 0xDF, 0x01, 0x02, 0xBF, 0x80, 0x02, 0x9F, 0x01, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x80, 0x02, 0x3F, 0x01, 0x02, 0x1F, 0x8E, 0x01, 0xDF, 0x01, 0x9F, 0x01, 0x7F, 0x01, 0x3F, 0x00, 0xFF, 0x00, 0x9F, 0x00, 0x7F, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x7F, 0x39, 0x9B, 0xB9, 0x93, 0x05, 0x5F, 0x06, 0x7F, 0x07, 0x9F, 0x04, 0x07, 0xFF, 0x84, 0x45, 0xDB, 0xC1, 0x32, 0xC9, 0x32, 0xC9, 0x12, 0xC1, 0x32, 0x01, 0xC9, 0x12, 0x85, 0xC9, 0x11, 0xC9, 0x12, 0x51, 0x11, 0x38, 0xF0, 0x30, 0xF0, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x8A, 0x20, 0xAE, 0x18, 0xCE, 0x10, 0xD3, 0x10, 0xF4, 0x18, 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x13, 0x18, 0xAD, 0x82, 0x00, 0xF9, 0x10, 0xD0, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, + 0x30, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x08, 0xD4, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x80, 0x20, 0xAD, 0x15, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x1E, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x86, 0x18, 0xAD, 0x20, 0xCD, 0x20, 0xAE, 0x20, 0xAD, 0x20, 0xAE, 0x18, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x89, 0x28, 0xAE, 0x20, 0xCE, 0x28, 0xEE, 0x51, 0x71, 0x69, 0xD2, 0x82, 0x32, 0xAA, 0xF4, 0xC3, 0x34, 0xD3, 0x75, 0xD3, 0xB5, 0x09, 0xD3, 0x95, 0x81, 0x75, 0x7A, 0x0F, 0xBF, 0x21, 0x07, 0xFF, 0x88, 0x07, 0xBD, 0x07, 0x9B, 0x07, 0x7A, 0x07, 0x79, 0x74, 0xD6, 0xD2, 0xD4, 0x9B, 0xF5, 0x07, 0x56, 0x07, 0x35, 0x01, 0x07, 0x34, 0x81, 0x07, 0x33, 0x07, 0x12, 0x01, 0x07, 0x11, 0x01, 0x06, 0xF0, 0x80, 0x06, 0xD0, 0x01, 0x06, 0xAF, 0x8D, 0x06, 0x6F, 0x06, 0x50, 0x06, 0x31, 0x06, 0x11, 0x05, 0xD2, 0x05, 0x94, 0x05, 0x54, 0x05, 0x15, 0x04, 0xF7, 0x04, 0xB8, 0x04, 0x78, 0x04, 0x59, 0x04, 0x3A, 0x03, 0xFB, 0x01, 0x03, 0xBC, 0x83, 0x03, 0x9D, 0x03, 0x7D, 0x03, 0x5E, 0x03, 0x3E, 0x01, 0x03, 0x1F, 0x81, 0x02, 0xFF, 0x02, 0xDF, 0x01, 0x02, 0xBF, 0x01, 0x02, 0x7F, 0x80, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x8A, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x9F, 0x01, 0x7F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xBF, 0x00, 0x7F, 0x00, 0x5F, 0x01, 0x00, 0x1F, 0x85, 0x00, 0xDF, 0xA1, 0x75, 0x33, 0xBC, 0x05, 0xDF, 0x06, 0xFF, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x82, 0x92, 0xD5, 0xC9, 0x11, 0xC1, 0x32, 0x01, 0xC9, 0x12, 0x89, + 0xC8, 0xF2, 0xC1, 0x12, 0xC9, 0x12, 0xA8, 0xF1, 0x31, 0x10, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x82, 0x20, 0xAE, 0x20, 0xCE, 0x20, 0xAD, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x10, 0xCF, 0x20, 0xAD, 0x32, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x01, 0x01, 0x1A, 0x82, 0x08, 0xF5, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x80, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x87, 0x20, 0xAD, 0x39, 0x0F, 0x49, 0x70, 0x59, 0xB0, 0x7A, 0x32, 0x92, 0x93, 0xAA, 0xD3, 0xCB, 0x55, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x07, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x81, 0x9C, 0xB8, 0x27, 0x1D, 0x20, 0x07, 0xFF, 0x83, 0x07, 0xDE, 0x07, 0xDD, 0x07, 0xBC, 0x07, 0x9B, 0x01, 0x07, 0x9A, 0x81, 0x07, 0x79, 0x55, 0xB7, 0x01, 0xD2, 0xB4, 0x85, 0x4D, 0xB5, 0x07, 0x75, 0x07, 0x74, 0x07, 0x53, 0x07, 0x73, 0x07, 0x52, 0x01, 0x07, 0x50, 0x81, 0x07, 0x4F, 0x07, 0x4E, 0x01, 0x07, 0x4D, 0x80, 0x07, 0x4C, 0x01, 0x07, 0x2B, 0x8F, 0x07, 0x2A, 0x07, 0x0A, 0x06, 0xEA, 0x06, 0xAC, 0x06, 0x4D, 0x05, 0xD0, 0x05, 0x73, 0x04, 0xF5, 0x04, 0xB6, 0x04, 0x78, 0x04, 0x38, 0x04, 0x1A, 0x03, 0xFB, 0x03, 0xBC, 0x03, 0x9C, + 0x03, 0x7C, 0x01, 0x03, 0x3D, 0x84, 0x03, 0x1E, 0x02, 0xFE, 0x02, 0xFF, 0x02, 0xDF, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x96, 0x02, 0x7F, 0x02, 0x5F, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x9F, 0x01, 0x7F, 0x01, 0x5F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xDF, 0x00, 0x9F, 0x00, 0x5F, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x3F, 0x21, 0x3D, 0x1B, 0x1E, 0x05, 0x1F, 0x06, 0x5F, 0x07, 0x7F, 0x04, 0x07, 0xFF, 0x80, 0x1F, 0x3D, 0x01, 0xC9, 0x12, 0x01, 0xC1, 0x12, 0x84, 0xC8, 0xF1, 0xC8, 0xF2, 0xC8, 0xF1, 0xC8, 0xF2, 0x80, 0xF1, 0x01, 0x30, 0xF0, 0x85, 0x30, 0xEF, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xCE, 0x20, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x20, 0x18, 0xAD, 0x83, 0x00, 0xF7, 0x00, 0xF9, 0x01, 0x19, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x2A, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x10, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x84, 0x39, 0x2F, 0xD3, 0x95, 0xC3, 0x74, 0xA2, 0xD3, 0xAA, 0xD3, 0x01, 0x7A, 0x31, 0x82, 0x7A, 0x11, 0x72, 0x31, 0x51, 0x90, 0x01, 0x49, 0x6F, 0x83, 0x49, 0x70, 0x49, 0x6F, 0x49, 0x4F, 0x41, 0x2F, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x81, 0x49, 0x70, 0x49, 0x4F, 0x01, 0x49, 0x6F, 0x80, 0x69, 0xF1, 0x01, 0x7A, 0x31, 0x83, 0x92, 0x72, 0xA2, 0xD3, 0xAA, 0xF3, 0xC3, 0x55, 0x0D, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x03, 0xD3, 0x95, 0x84, 0xD3, 0x96, 0xD3, + 0x75, 0xD3, 0x95, 0xAC, 0x57, 0x56, 0x5C, 0x20, 0x07, 0xFF, 0x82, 0x07, 0xDF, 0x07, 0xDE, 0x07, 0xBD, 0x01, 0x07, 0xBC, 0x80, 0x07, 0xBB, 0x01, 0x07, 0x9A, 0x85, 0x07, 0x99, 0x26, 0xB8, 0xCA, 0xD4, 0xD2, 0xB4, 0xC3, 0x14, 0x0F, 0x35, 0x01, 0x07, 0x94, 0x01, 0x07, 0x92, 0x82, 0x07, 0x91, 0x07, 0x90, 0x07, 0x8F, 0x01, 0x07, 0x8E, 0x82, 0x07, 0x8D, 0x07, 0x8C, 0x07, 0xAA, 0x01, 0x07, 0xA9, 0x8F, 0x07, 0xA8, 0x07, 0xC7, 0x07, 0xC5, 0x07, 0xC4, 0x07, 0xE4, 0x07, 0xA4, 0x07, 0x27, 0x06, 0x8A, 0x05, 0xAF, 0x04, 0x96, 0x04, 0x38, 0x03, 0xF9, 0x03, 0xBA, 0x03, 0x9B, 0x03, 0x5C, 0x03, 0x5D, 0x01, 0x03, 0x1D, 0x81, 0x02, 0xFE, 0x02, 0xDF, 0x01, 0x02, 0xBF, 0x81, 0x02, 0x9F, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x83, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0x01, 0x9F, 0x87, 0x01, 0x7F, 0x01, 0x5F, 0x01, 0x3F, 0x00, 0xFF, 0x00, 0xDF, 0x00, 0xBF, 0x00, 0x7F, 0x00, 0x5F, 0x01, 0x00, 0x1F, 0x85, 0x00, 0x7F, 0x02, 0x3F, 0x04, 0x1F, 0x05, 0xBF, 0x06, 0xFF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x82, 0x64, 0x98, 0xC9, 0x11, 0xC9, 0x12, 0x02, 0xC8, 0xF1, 0x83, 0xC8, 0xF2, 0xC8, 0xF1, 0xC8, 0xD1, 0x50, 0xF1, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x20, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x2C, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x85, 0x01, 0x17, 0x10, 0xD2, 0x08, + 0xF3, 0x10, 0xD3, 0x10, 0xD2, 0x18, 0xCD, 0x01, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x81, 0x49, 0x6F, 0xAA, 0xD3, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x34, 0xD3, 0x95, 0x82, 0xC3, 0xD6, 0x85, 0x39, 0x36, 0xDD, 0x22, 0x07, 0xFF, 0x81, 0x07, 0xDF, 0x07, 0xDE, 0x01, 0x07, 0xBD, 0x01, 0x07, 0xBC, 0x80, 0x07, 0xBB, 0x01, 0x07, 0xBA, 0x80, 0x07, 0xB9, 0x02, 0xD2, 0xB4, 0x80, 0x65, 0x35, 0x01, 0x07, 0xB5, 0x89, 0x07, 0xB4, 0x07, 0xB3, 0x07, 0xB2, 0x07, 0xB1, 0x07, 0xB0, 0x07, 0xAF, 0x07, 0xCE, 0x07, 0xCD, 0x07, 0xCC, 0x07, 0xCB, 0x01, 0x07, 0xCA, 0x83, 0x07, 0xC9, 0x07, 0xE8, 0x07, 0xE7, 0x07, 0xE6, 0x01, 0x07, 0xE5, 0x01, 0x07, 0xE3, 0x8C, 0x07, 0xE2, 0x07, 0xE1, 0x07, 0x26, 0x06, 0x0C, 0x04, 0xB4, 0x03, 0xB9, 0x03, 0x7B, 0x03, 0x5C, 0x03, 0x3D, 0x03, 0x1D, 0x02, 0xDE, 0x02, 0xDF, 0x02, 0xBE, 0x01, 0x02, 0x9F, 0x81, 0x02, 0x7F, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x82, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0x01, 0x9F, 0x01, 0x01, 0x5F, 0x83, 0x01, 0x3F, 0x00, 0xFF, 0x00, 0xDF, 0x00, 0xBF, 0x01, 0x00, 0x7F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x84, 0x01, 0x1F, 0x02, 0xFF, 0x04, 0xDF, 0x06, 0x3F, 0x07, 0x7F, 0x04, 0x07, 0xFF, 0x81, 0x0F, 0x9F, 0xB9, 0x72, 0x01, 0xC8, 0xF2, 0x85, 0xC0, 0xF1, 0xC8, 0xF2, 0xC0, 0xF2, 0xC0, 0xF1, 0xC8, 0xD1, 0xA0, 0xF1, 0x02, 0x30, 0xF0, 0x83, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xCE, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x83, 0x20, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x1F, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x01, + 0x17, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xB0, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x28, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x13, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x41, 0x2F, 0x8A, 0x72, 0xC3, 0x34, 0xD3, 0x96, 0x18, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x08, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x0B, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0x75, 0xAC, 0x57, 0x46, 0x9C, 0x16, 0x07, 0xFF, 0x80, 0x46, 0x7C, 0x01, 0x85, 0x19, 0x80, 0x36, 0xDD, 0x0A, 0x07, 0xFF, 0x02, 0x07, 0xDE, 0x80, 0x07, 0xDD, 0x01, 0x07, 0xDC, 0x01, 0x07, 0xDB, 0x01, 0x07, 0xDA, 0x80, 0x9B, 0xF5, 0x01, 0xD2, 0xB4, 0x83, 0xC2, 0xF4, 0x0F, 0x77, 0x07, 0xD6, 0x07, 0xD5, 0x01, 0x07, 0xD4, 0x86, 0x07, 0xD3, 0x07, 0xD2, 0x07, 0xD1, 0x07, 0xD0, 0x07, 0xEF, 0x07, 0xEE, 0x07, 0xED, 0x01, 0x07, 0xEC, 0x80, 0x07, 0xEA, 0x01, 0x07, 0xE9, 0x80, 0x07, 0xE7, 0x01, 0x07, 0xE6, 0x01, 0x07, 0xE5, 0x01, 0x07, 0xE4, 0x01, 0x07, 0xE3, 0x85, 0x07, 0xE2, 0x07, 0x85, 0x06, 0x0C, 0x04, 0xD3, 0x03, 0x5B, 0x03, 0x1C, 0x01, 0x02, 0xDE, 0x82, 0x02, 0xBE, 0x02, 0x9F, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x84, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x88, 0x01, 0x7F, 0x01, 0x5F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xDF, 0x00, 0xBF, 0x00, 0x9F, 0x00, 0x7F, 0x00, 0x5F, 0x01, 0x00, 0x1F, 0x85, 0x00, 0x3F, 0x01, 0xDF, 0x03, + 0xBF, 0x05, 0x9F, 0x06, 0xDF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x89, 0x4D, 0x7A, 0xC1, 0x11, 0xC0, 0xF1, 0xC8, 0xF1, 0xC8, 0xF2, 0xC8, 0xD1, 0xC8, 0xF2, 0xC0, 0xD1, 0xC8, 0xD1, 0x68, 0xF1, 0x01, 0x30, 0xF0, 0x81, 0x28, 0xF0, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x14, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x80, 0x10, 0xD2, 0x05, 0x18, 0xAD, 0x86, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x28, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x84, 0x41, 0x4F, 0x61, 0xD1, 0x82, 0x51, 0xA2, 0xD3, 0xBB, 0x34, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x03, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x15, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x04, 0xD3, 0x95, 0x84, 0xD3, 0x75, 0xBC, 0x16, 0x85, 0x39, 0x46, 0x9C, 0x17, 0xBF, 0x12, 0x07, 0xFF, 0x80, 0x85, 0x18, 0x01, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x80, 0x84, 0xF8, 0x09, 0x07, 0xFF, 0x82, 0x07, 0xFE, 0x07, 0xDE, 0x07, 0xFE, 0x01, 0x07, 0xDD, 0x81, 0x07, 0xBC, 0x07, 0xDC, 0x01, 0x07, 0xDB, 0x81, 0x07, 0xDA, 0x8C, 0x56, 0x01, 0xCA, 0xB4, 0x81, 0xD2, 0x94, 0x4D, 0xF7, 0x01, 0x07, 0xD7, 0x82, + 0x07, 0xD6, 0x07, 0xF5, 0x07, 0xD5, 0x01, 0x07, 0xF3, 0x86, 0x07, 0xF2, 0x07, 0xF1, 0x07, 0xF0, 0x07, 0xEF, 0x07, 0xEE, 0x07, 0xED, 0x07, 0xEC, 0x01, 0x07, 0xEB, 0x81, 0x07, 0xEA, 0x07, 0xE9, 0x01, 0x07, 0xE8, 0x01, 0x07, 0xE7, 0x01, 0x07, 0xE6, 0x03, 0x07, 0xE5, 0x88, 0x07, 0xE4, 0x07, 0xA6, 0x06, 0x0E, 0x03, 0xF8, 0x02, 0xDE, 0x02, 0xBE, 0x02, 0x9F, 0x02, 0x7F, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x83, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x89, 0x01, 0x7F, 0x01, 0x5F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xDF, 0x00, 0xBF, 0x00, 0x9F, 0x00, 0x7F, 0x00, 0x5F, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x84, 0x00, 0xBF, 0x02, 0x9F, 0x04, 0x9F, 0x06, 0x3F, 0x07, 0x5F, 0x05, 0x07, 0xFF, 0x83, 0xB1, 0xD3, 0xC8, 0xF1, 0xC8, 0xF2, 0xC0, 0xF1, 0x01, 0xC8, 0xD1, 0x86, 0xC0, 0xF1, 0xC8, 0xD1, 0xB8, 0xD1, 0x40, 0xF0, 0x30, 0xF0, 0x28, 0xF0, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x81, 0x20, 0xCE, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x11, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x39, 0x00, 0xF8, 0x18, 0xB0, 0x26, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAF, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x85, 0x31, 0x0E, 0x49, 0x6F, 0x59, 0x90, 0x7A, 0x12, 0x7A, 0x32, 0x92, + 0x72, 0x01, 0xA2, 0xD3, 0x80, 0xC3, 0x75, 0x14, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x0A, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x08, 0xD3, 0x95, 0x82, 0xAC, 0x77, 0x75, 0x7A, 0x36, 0xFD, 0x0E, 0x07, 0xFF, 0x83, 0x4E, 0x3C, 0xD3, 0x55, 0xD3, 0x35, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x81, 0xD3, 0x34, 0x75, 0x39, 0x09, 0x07, 0xFF, 0x01, 0x07, 0xFE, 0x02, 0x07, 0xDD, 0x85, 0x07, 0xDC, 0x07, 0xFC, 0x07, 0xDC, 0x07, 0xDB, 0x6D, 0x38, 0xCA, 0xB4, 0x01, 0xD2, 0x94, 0x80, 0xAB, 0x95, 0x01, 0x07, 0xD8, 0x01, 0x07, 0xF7, 0x80, 0x07, 0xF6, 0x01, 0x07, 0xF5, 0x86, 0x07, 0xF4, 0x07, 0xF3, 0x07, 0xF2, 0x07, 0xF1, 0x07, 0xF0, 0x07, 0xEF, 0x07, 0xEE, 0x01, 0x07, 0xED, 0x01, 0x07, 0xEC, 0x80, 0x07, 0xEB, 0x02, 0x07, 0xEA, 0x01, 0x07, 0xE9, 0x03, 0x07, 0xE8, 0x01, 0x07, 0xE7, 0x8B, 0x07, 0xE8, 0x07, 0xC8, 0x06, 0xEB, 0x05, 0x14, 0x03, 0x3C, 0x02, 0x7F, 0x02, 0x5F, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x86, 0x01, 0x7F, 0x01, 0x5F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xFF, 0x00, 0xDF, 0x00, 0xBF, 0x01, 0x00, 0x9F, 0x01, 0x00, 0x5F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x84, 0x01, 0x5F, 0x03, 0x7F, 0x05, 0x7F, 0x06, 0xDF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x83, 0x4D, 0x5A, 0xC8, 0xF1, 0xC8, 0xD1, 0xC0, 0xF1, 0x01, 0xC8, 0xD1, 0x01, 0xC0, 0xD1, 0x84, 0xC8, 0xB1, 0x78, 0xD1, 0x31, 0x10, 0x30, 0xF0, 0x30, 0xEF, 0x02, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, + 0x19, 0x01, 0x01, 0x17, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x07, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x25, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAF, 0x01, 0x18, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x01, 0x49, 0x6F, 0x86, 0x49, 0x70, 0x7A, 0x12, 0x7A, 0x31, 0x82, 0x52, 0xAA, 0xD3, 0xA2, 0xD3, 0xBB, 0x34, 0x23, 0xD3, 0x95, 0x83, 0xCB, 0xD6, 0x94, 0xF8, 0x56, 0x5B, 0x0F, 0xBF, 0x0A, 0x07, 0xFF, 0x80, 0xB3, 0xF6, 0x01, 0xD3, 0x35, 0x80, 0xD3, 0x34, 0x02, 0xD3, 0x35, 0x81, 0xD3, 0x34, 0x1F, 0x7E, 0x09, 0x07, 0xFF, 0x82, 0x07, 0xFE, 0x07, 0xDE, 0x07, 0xDD, 0x02, 0x07, 0xFD, 0x88, 0x07, 0xDD, 0x07, 0xDC, 0x6D, 0x38, 0xCA, 0xB4, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0x1F, 0x39, 0x07, 0xF9, 0x02, 0x07, 0xF8, 0x01, 0x07, 0xF7, 0x83, 0x07, 0xF6, 0x07, 0xF5, 0x07, 0xF4, 0x07, 0xF3, 0x01, 0x07, 0xF2, 0x81, 0x07, 0xF1, 0x07, 0xF0, 0x01, 0x07, 0xEF, 0x01, 0x07, 0xEE, 0x01, 0x07, 0xED, 0x84, 0x07, 0xEC, 0x07, 0xED, 0x07, 0xEC, 0x07, 0xEB, 0x07, 0xEC, 0x01, 0x07, 0xEB, 0x02, 0x07, 0xEA, 0x8B, 0x07, 0xCA, 0x07, 0xAB, 0x07, 0x6C, 0x07, 0x0D, 0x05, 0xB2, 0x03, 0x9B, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x9F, 0x01, + 0x01, 0x7F, 0x83, 0x01, 0x5F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xFF, 0x01, 0x00, 0xDF, 0x01, 0x00, 0x9F, 0x81, 0x00, 0x7F, 0x00, 0x5F, 0x01, 0x00, 0x3F, 0x85, 0x00, 0x1F, 0x60, 0xD9, 0x0A, 0x3F, 0x04, 0x7F, 0x06, 0x3F, 0x07, 0x5F, 0x05, 0x07, 0xFF, 0x89, 0xA9, 0xD3, 0xC0, 0xD1, 0xC8, 0xD1, 0xC0, 0xF1, 0xC8, 0xB1, 0xC0, 0xD1, 0xC8, 0xB1, 0xC0, 0xB1, 0xB8, 0xB1, 0x48, 0xF1, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x83, 0x20, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x10, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD0, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xCD, 0x05, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x29, 0x18, 0xAD, 0x01, 0x49, 0x70, 0x82, 0x59, 0x90, 0x7A, 0x31, 0x72, 0x31, 0x01, 0x7A, 0x31, 0x83, 0x9A, 0xB3, 0xAA, 0xD4, 0xA2, 0xD4, 0xB3, 0x14, 0x05, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x06, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x08, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x81, 0x94, 0xF8, 0x56, 0x5C, 0x08, 0x07, 0xFF, 0x81, 0xD3, 0x35, + 0xD3, 0x34, 0x03, 0xD3, 0x35, 0x82, 0xD3, 0x14, 0xD3, 0x15, 0x5D, 0xDB, 0x0A, 0x07, 0xFF, 0x04, 0x07, 0xFE, 0x01, 0x07, 0xFD, 0x86, 0x6D, 0x58, 0xD2, 0x94, 0xD2, 0x93, 0xCA, 0x94, 0xD2, 0x74, 0x4D, 0xF8, 0x07, 0xFB, 0x01, 0x07, 0xFA, 0x01, 0x07, 0xF9, 0x81, 0x07, 0xF8, 0x07, 0xF7, 0x01, 0x07, 0xF6, 0x01, 0x07, 0xF5, 0x80, 0x07, 0xF4, 0x01, 0x07, 0xF3, 0x80, 0x07, 0xF2, 0x01, 0x07, 0xF1, 0x02, 0x07, 0xF0, 0x04, 0x07, 0xEF, 0x04, 0x07, 0xEE, 0x8B, 0x07, 0xED, 0x07, 0xCD, 0x07, 0x8E, 0x07, 0x6E, 0x07, 0x10, 0x06, 0xB1, 0x05, 0x74, 0x03, 0x7B, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x9F, 0x01, 0x01, 0x7F, 0x01, 0x01, 0x3F, 0x83, 0x01, 0x1F, 0x00, 0xFF, 0x00, 0xDF, 0x00, 0xBF, 0x01, 0x00, 0x9F, 0x81, 0x00, 0x7F, 0x00, 0x5F, 0x01, 0x00, 0x3F, 0x86, 0x00, 0x1F, 0x88, 0xD6, 0x61, 0x59, 0x03, 0x1F, 0x05, 0x3F, 0x06, 0xDF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x81, 0x4D, 0x5B, 0xC0, 0xD1, 0x01, 0xC8, 0xD1, 0x85, 0xC0, 0xB1, 0xC8, 0xB1, 0xC8, 0xB2, 0xC0, 0xB1, 0xC8, 0xB1, 0x90, 0xD1, 0x01, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x01, 0x20, 0xCF, 0x82, 0x20, 0xCE, 0x20, 0xAE, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x0F, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD1, 0x01, 0x18, 0xAD, 0x81, 0x10, 0xD1, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x81, 0x00, 0xF8, 0x10, 0xD0, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x01, 0x17, 0x01, 0x01, 0x19, 0x81, 0x10, 0xCF, 0x20, 0xAD, 0x1F, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, + 0x18, 0xB0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x80, 0x10, 0xD2, 0x2C, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x84, 0x18, 0xAD, 0x18, 0xCE, 0x18, 0xAD, 0x20, 0xAE, 0x20, 0xAD, 0x01, 0x20, 0xCE, 0x80, 0x29, 0x0F, 0x01, 0x51, 0x70, 0x88, 0x69, 0xF1, 0x7A, 0x32, 0x82, 0x32, 0xAA, 0xF3, 0xAA, 0xF4, 0xCB, 0x75, 0xD3, 0x95, 0xD3, 0x96, 0xD3, 0x75, 0x06, 0xD3, 0x95, 0x01, 0xD3, 0x96, 0x03, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x82, 0xC3, 0xB6, 0x85, 0x39, 0x1F, 0x7F, 0x05, 0x07, 0xFF, 0x02, 0xD3, 0x35, 0x82, 0xD3, 0x15, 0xD3, 0x14, 0xD3, 0x15, 0x01, 0xD3, 0x14, 0x80, 0x65, 0x9A, 0x0D, 0x07, 0xFF, 0x03, 0x07, 0xFE, 0x85, 0x6D, 0x39, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x74, 0xCA, 0x74, 0x7C, 0x96, 0x01, 0x07, 0xFC, 0x01, 0x07, 0xFB, 0x01, 0x07, 0xFA, 0x80, 0x07, 0xF9, 0x01, 0x07, 0xF8, 0x01, 0x07, 0xF7, 0x01, 0x07, 0xF6, 0x80, 0x07, 0xF5, 0x01, 0x07, 0xF4, 0x02, 0x07, 0xF3, 0x06, 0x07, 0xF2, 0x03, 0x07, 0xF1, 0x8C, 0x07, 0xF0, 0x07, 0xF1, 0x07, 0xD0, 0x07, 0x91, 0x07, 0x51, 0x07, 0x12, 0x06, 0x93, 0x06, 0x34, 0x05, 0x17, 0x02, 0xDD, 0x01, 0xBF, 0x01, 0x9F, 0x01, 0x7F, 0x01, 0x01, 0x5F, 0x83, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xFF, 0x00, 0xDF, 0x01, 0x00, 0xBF, 0x80, 0x00, 0x7F, + 0x01, 0x00, 0x5F, 0x01, 0x00, 0x3F, 0x86, 0x00, 0x1F, 0x60, 0xB8, 0xB8, 0xF3, 0x09, 0xBF, 0x04, 0x1F, 0x06, 0x1F, 0x07, 0x3F, 0x05, 0x07, 0xFF, 0x80, 0xB1, 0xB3, 0x01, 0xC0, 0xD1, 0x81, 0xC0, 0xB1, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x82, 0xC8, 0xB1, 0xC0, 0xB1, 0x48, 0xF1, 0x01, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAE, 0x0D, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x05, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x18, 0x10, 0xD0, 0x03, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x00, 0xF9, 0x01, 0x19, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x84, 0x00, 0xF7, 0x18, 0xAE, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x00, 0xF7, 0x02, 0x01, 0x1A, 0x82, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x29, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x20, 0xAE, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x81, 0x28, 0xCE, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x84, 0x51, 0x72, 0x61, 0xB2, 0x8A, 0x54, 0x9A, 0x94, 0xB3, 0x35, 0x07, 0xD3, 0x95, 0x05, 0xD3, 0x75, 0x82, 0xD3, 0x55, 0x9C, 0x97, 0x36, 0xDD, 0x03, 0x07, 0xFF, 0x84, + 0xAC, 0x17, 0xD3, 0x35, 0xD3, 0x14, 0xD3, 0x35, 0xD3, 0x14, 0x01, 0xD3, 0x15, 0x81, 0xD2, 0xF4, 0x46, 0x7C, 0x11, 0x07, 0xFF, 0x86, 0x6D, 0x59, 0xD2, 0x74, 0xCA, 0x94, 0xD2, 0x74, 0xCA, 0x74, 0xB3, 0x34, 0x07, 0xFE, 0x02, 0x07, 0xFD, 0x01, 0x07, 0xFC, 0x80, 0x07, 0xFB, 0x02, 0x07, 0xFA, 0x80, 0x07, 0xF9, 0x02, 0x07, 0xF8, 0x80, 0x07, 0xF7, 0x02, 0x07, 0xF6, 0x0A, 0x07, 0xF5, 0x02, 0x07, 0xF4, 0x8C, 0x07, 0xD3, 0x07, 0xB3, 0x07, 0x93, 0x07, 0x53, 0x07, 0x14, 0x06, 0xB5, 0x55, 0x16, 0x05, 0x38, 0x03, 0x7C, 0x01, 0xFF, 0x01, 0x7F, 0x01, 0x5F, 0x01, 0x3F, 0x01, 0x01, 0x1F, 0x82, 0x00, 0xFF, 0x00, 0xDF, 0x00, 0xBF, 0x01, 0x00, 0x9F, 0x80, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x88, 0x00, 0x3F, 0x00, 0x1F, 0x60, 0x99, 0xC9, 0x11, 0x49, 0x1A, 0x02, 0xDF, 0x05, 0x1F, 0x06, 0xBF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x83, 0x64, 0x59, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0x04, 0xC0, 0xB1, 0x84, 0x90, 0xD1, 0x30, 0xF1, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x0F, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x83, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF8, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x86, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x1C, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x07, 0x18, 0xAD, 0x82, + 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x80, 0x08, 0xF5, 0x2A, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x03, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x80, 0x31, 0x11, 0x01, 0x39, 0x11, 0x01, 0x41, 0x32, 0x83, 0x51, 0x52, 0x69, 0xD3, 0x92, 0x74, 0xB2, 0xF5, 0x01, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xD3, 0x95, 0x05, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x81, 0xA4, 0x78, 0x36, 0xDD, 0x01, 0x07, 0xFF, 0x82, 0x56, 0x3C, 0xD3, 0x35, 0xD3, 0x34, 0x01, 0xD3, 0x15, 0x82, 0xD2, 0xF4, 0xCB, 0x15, 0xBB, 0x96, 0x12, 0x07, 0xFF, 0x80, 0x84, 0x98, 0x01, 0xCA, 0x94, 0x80, 0xD2, 0x74, 0x01, 0xCA, 0x74, 0x03, 0x07, 0xFE, 0x01, 0x07, 0xFD, 0x02, 0x07, 0xFC, 0x01, 0x07, 0xFB, 0x01, 0x07, 0xFA, 0x01, 0x07, 0xF9, 0x03, 0x07, 0xF8, 0x0B, 0x07, 0xF7, 0x01, 0x07, 0xF6, 0x8C, 0x07, 0xD6, 0x07, 0xB6, 0x07, 0x96, 0x07, 0x56, 0x07, 0x16, 0xA4, 0x56, 0xBB, 0xD6, 0x34, 0x79, 0x02, 0xFD, 0x02, 0x3F, 0x01, 0x9F, 0x01, 0x5F, 0x01, 0x1F, 0x01, 0x00, 0xFF, 0x01, 0x00, 0xBF, 0x01, 0x00, 0x9F, 0x81, 0x00, 0x7F, 0x00, 0x5F, 0x02, 0x00, 0x3F, 0x86, 0x78, 0xB7, 0xC1, 0x11, 0xA1, 0x14, 0x01, 0xFF, 0x04, 0x1F, 0x05, 0xFF, 0x07, 0x5F, 0x04, 0x07, 0xFF, 0x85, 0x0F, 0x9F, 0xC0, 0xB1, 0xC0, 0xD2, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0x03, 0xC0, 0xB1, + 0x83, 0x48, 0xF1, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x0F, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x8F, 0x18, 0xCE, 0x08, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xCF, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xB0, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x06, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x20, 0xAD, 0x29, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xCD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x81, 0x20, 0xCF, 0x28, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xF0, 0x01, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x01, 0x41, 0x32, 0x82, 0x49, 0x32, 0x49, 0x33, 0x49, 0x53, 0x01, 0x51, 0x54, 0x82, 0x71, 0xF4, 0x9A, 0x75, 0xB2, 0xF5, 0x02, 0xD3, 0x75, 0x83, 0xD3, 0x55, 0xD3, 0x75, 0xD3, 0x55, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x89, 0x9C, 0x78, 0x36, 0xDD, 0x07, 0xFF, 0x9C, 0x57, 0xD3, 0x35, 0xD3, 0x15, 0xD3, 0x34, 0xD3, 0x14, 0xC3, 0x55, 0x27, 0x1D, 0x12, 0x07, 0xFF, 0x86, 0x9B, 0xF7, 0xCA, 0x94, 0xD2, 0x74, 0xCA, + 0x73, 0xCA, 0x74, 0xD2, 0x53, 0x2E, 0xFD, 0x03, 0x07, 0xFF, 0x01, 0x07, 0xFE, 0x02, 0x07, 0xFD, 0x01, 0x07, 0xFC, 0x02, 0x07, 0xFB, 0x02, 0x07, 0xFA, 0x05, 0x07, 0xF9, 0x05, 0x07, 0xFA, 0x02, 0x07, 0xF9, 0x90, 0x07, 0xF8, 0x07, 0xD8, 0x07, 0xB8, 0x07, 0x97, 0x07, 0x58, 0x0E, 0xF8, 0xBB, 0xF6, 0xD3, 0x95, 0x6B, 0x99, 0x02, 0x5F, 0x02, 0x1F, 0x01, 0xBF, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xFF, 0x00, 0xDF, 0x00, 0xBF, 0x01, 0x00, 0x9F, 0x80, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x89, 0x00, 0x3F, 0x00, 0x1F, 0x98, 0xD5, 0xC8, 0xF2, 0xC9, 0x11, 0x19, 0x5E, 0x03, 0x3F, 0x05, 0x3F, 0x06, 0xBF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x80, 0x7B, 0x76, 0x06, 0xC0, 0xB1, 0x84, 0xC0, 0xD1, 0x88, 0xD1, 0x30, 0xF1, 0x30, 0xF0, 0x28, 0xF0, 0x02, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x80, 0x10, 0xD2, 0x05, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x8C, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF9, 0x18, 0xCF, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x17, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x01, 0x17, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xFA, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, + 0x01, 0x19, 0x2D, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x20, 0xAE, 0x80, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x81, 0x20, 0xCF, 0x28, 0xCE, 0x01, 0x28, 0xCF, 0x81, 0x28, 0xEF, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x87, 0x31, 0x11, 0x39, 0x10, 0x39, 0x11, 0x41, 0x11, 0x49, 0x12, 0x41, 0x33, 0x49, 0x32, 0x49, 0x33, 0x01, 0x51, 0x54, 0x01, 0x59, 0x55, 0x88, 0x59, 0x75, 0x69, 0x96, 0x8A, 0x16, 0xAA, 0xD5, 0xCB, 0x55, 0xD3, 0x75, 0xD3, 0x55, 0xD3, 0x54, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x87, 0xCB, 0x35, 0x84, 0xF9, 0x0F, 0xBF, 0x5D, 0xDB, 0xA4, 0x57, 0x9C, 0x58, 0x84, 0xD8, 0x1F, 0x5E, 0x13, 0x07, 0xFF, 0x80, 0x9B, 0xD6, 0x04, 0xCA, 0x74, 0x80, 0x36, 0x9C, 0x06, 0x07, 0xFF, 0x02, 0x07, 0xFE, 0x02, 0x07, 0xFD, 0x02, 0x07, 0xFC, 0x08, 0x07, 0xFB, 0x03, 0x07, 0xFC, 0x03, 0x07, 0xFB, 0x01, 0x07, 0xDA, 0x8E, 0x07, 0xBA, 0x07, 0x9A, 0x07, 0x79, 0x2E, 0x99, 0xC3, 0xD6, 0xD3, 0x95, 0x83, 0x39, 0x0A, 0x3E, 0x01, 0xDF, 0x01, 0x9F, 0x01, 0x5F, 0x01, 0x1F, 0x00, 0xFF, 0x00, 0xBF, 0x00, 0x9F, 0x02, 0x00, 0x7F, 0x02, 0x00, 0x3F, 0x87, 0x90, 0xD5, 0xC9, 0x12, 0xC0, 0xF1, 0x71, 0x17, 0x02, 0x7F, 0x04, 0x9F, 0x06, 0x5F, 0x07, 0x7F, 0x04, 0x07, 0xFF, 0x81, 0x26, 0x9D, 0xC8, 0x91, 0x06, 0xC0, 0xB1, 0x81, 0xB8, 0xB1, 0x31, 0x10, 0x01, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x0F, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, + 0x87, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x39, 0x00, 0xF8, 0x18, 0xB0, 0x16, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x0D, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF9, 0x20, 0xAE, 0x27, 0x18, 0xAD, 0x83, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x20, 0xCD, 0x18, 0xCE, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x83, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xEF, 0x28, 0xD0, 0x01, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x80, 0x39, 0x31, 0x01, 0x41, 0x32, 0x82, 0x49, 0x33, 0x51, 0x33, 0x51, 0x53, 0x01, 0x51, 0x54, 0x87, 0x59, 0x75, 0x61, 0x75, 0x61, 0x95, 0x92, 0x55, 0x8B, 0x14, 0x4A, 0xD3, 0x7A, 0x94, 0xAB, 0x14, 0x02, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x84, 0xD3, 0x15, 0xD3, 0x14, 0xD3, 0x35, 0xC3, 0x55, 0x46, 0x7C, 0x17, 0x07, 0xFF, 0x80, 0xC2, 0xD4, 0x01, 0xCA, 0x74, 0x83, 0xD2, 0x74, 0xCA, 0x74, 0xD2, 0x53, 0x36, 0x9C, 0x08, 0x07, 0xFF, 0x03, 0x07, 0xFE, 0x04, 0x07, 0xFD, 0x02, 0x07, 0xFC, 0x05, 0x07, 0xFD, 0x02, 0x07, 0xFE, 0x02, 0x07, 0xFD, 0x01, 0x07, 0xFC, 0x80, 0x07, 0xDB, 0x01, 0x07, 0xBB, 0x8A, 0x07, 0x7B, 0x2E, 0xBA, 0xC3, 0xD6, 0xD3, 0x95, 0xB3, 0x37, 0x09, 0xDF, + 0x01, 0xBF, 0x01, 0x7F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xDF, 0x01, 0x00, 0x9F, 0x80, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x01, 0x00, 0x3F, 0x88, 0x78, 0x96, 0xC0, 0xF1, 0xC8, 0xF1, 0xA8, 0xF3, 0x01, 0xDF, 0x03, 0xDF, 0x05, 0xBF, 0x07, 0x1F, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x80, 0xA2, 0x14, 0x04, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x80, 0x68, 0xF1, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x1D, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x03, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x2F, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x80, 0x20, 0xEF, 0x01, 0x28, 0xCF, 0x82, 0x28, 0xEF, 0x30, 0xF0, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x01, 0x39, 0x11, 0x91, 0x41, 0x11, 0x41, 0x32, 0x49, 0x32, 0x49, 0x33, 0x51, 0x33, 0x51, 0x53, 0x51, 0x54, 0x59, 0x54, 0x61, 0x95, 0x9A, 0x75, 0xCB, 0x55, 0xCB, 0x75, 0x5B, 0xB4, 0x3B, 0x34, + 0x42, 0xB3, 0x4A, 0x33, 0x62, 0x53, 0x9A, 0xB4, 0x01, 0xD3, 0x35, 0x83, 0xD3, 0x15, 0xD3, 0x34, 0xD3, 0x14, 0xD3, 0x15, 0x01, 0xD3, 0x14, 0x80, 0x5D, 0xDB, 0x15, 0x07, 0xFF, 0x80, 0x1F, 0x5E, 0x04, 0xD2, 0x74, 0x81, 0xCA, 0x53, 0x36, 0x9D, 0x0C, 0x07, 0xFF, 0x0C, 0x07, 0xFE, 0x05, 0x07, 0xFF, 0x02, 0x07, 0xFE, 0x80, 0x07, 0xFD, 0x01, 0x07, 0xDD, 0x82, 0x07, 0xBD, 0x07, 0x9C, 0x56, 0x1A, 0x01, 0xD3, 0x95, 0x87, 0xAB, 0x37, 0x09, 0x9F, 0x01, 0x5F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xFF, 0x00, 0xBF, 0x00, 0x9F, 0x01, 0x00, 0x7F, 0x80, 0x00, 0x5F, 0x01, 0x00, 0x3F, 0x88, 0x30, 0x5C, 0xC0, 0xF1, 0xC8, 0xF1, 0xC8, 0xD1, 0x21, 0x5D, 0x03, 0x3F, 0x05, 0x1F, 0x06, 0xDF, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x80, 0x5C, 0xD9, 0x02, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x03, 0xC0, 0xB1, 0x81, 0x98, 0xD1, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x82, 0x28, 0xCF, 0x28, 0xEF, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF8, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x86, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xCF, 0x11, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x00, 0xF8, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xCD, 0x18, 0xB0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, + 0x01, 0x17, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x32, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x01, 0x39, 0x11, 0x82, 0x41, 0x11, 0x41, 0x31, 0x41, 0x32, 0x01, 0x49, 0x33, 0x90, 0x51, 0x54, 0x59, 0x74, 0x92, 0x55, 0xCB, 0x55, 0xD3, 0x75, 0xBB, 0x95, 0x54, 0x74, 0x3C, 0x34, 0x3B, 0xB4, 0x43, 0x33, 0x42, 0xB3, 0x4A, 0x13, 0x49, 0xF3, 0x5A, 0x32, 0x9A, 0xB4, 0xD3, 0x34, 0xD3, 0x35, 0x01, 0xD3, 0x14, 0x83, 0xD3, 0x15, 0xD3, 0x14, 0xD2, 0xF4, 0x84, 0xD8, 0x14, 0x07, 0xFF, 0x84, 0x4D, 0xDB, 0xD2, 0x74, 0xCA, 0x74, 0xCA, 0x73, 0xD2, 0x74, 0x01, 0xCA, 0x54, 0x80, 0x36, 0x9C, 0x23, 0x07, 0xFF, 0x01, 0x07, 0xFE, 0x83, 0x07, 0xDD, 0x07, 0xDE, 0x07, 0x9D, 0x6D, 0x99, 0x01, 0xD3, 0x95, 0x81, 0xAB, 0x17, 0x09, 0x7F, 0x01, 0x01, 0x1F, 0x80, 0x00, 0xFF, 0x01, 0x00, 0xBF, 0x80, 0x00, 0x9F, 0x01, 0x00, 0x7F, 0x02, 0x00, 0x3F, 0x01, 0xC8, 0xF1, 0x85, 0xC8, 0xD1, 0x51, 0x19, 0x02, 0xDF, 0x04, 0xFF, 0x06, 0xBF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x80, 0x1F, 0x1E, 0x08, 0xC0, 0xB1, 0x80, 0x49, 0x10, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xEF, 0x81, 0x28, 0xCF, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x0C, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, + 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x20, 0xAD, 0x0F, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x10, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x0B, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x33, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x82, 0x39, 0x10, 0x39, 0x11, 0x41, 0x12, 0x01, 0x41, 0x32, 0x83, 0x49, 0x33, 0x51, 0x33, 0x82, 0x14, 0xCB, 0x55, 0x01, 0xD3, 0x75, 0x88, 0xB3, 0xD5, 0x3D, 0x55, 0x35, 0x15, 0x34, 0x95, 0x3C, 0x14, 0x3B, 0x94, 0x3B, 0x13, 0x42, 0x93, 0x42, 0x12, 0x01, 0x49, 0xF3, 0x88, 0x5A, 0x13, 0x9A, 0xB4, 0xD3, 0x14, 0xD3, 0x15, 0xCB, 0x15, 0xD2, 0xF4, 0xD2, 0xF5, 0xD2, 0xF4, 0x75, 0x39, 0x13, 0x07, 0xFF, 0x87, 0x8C, 0x37, 0xCA, 0x74, 0xD2, 0x73, 0xD2, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0xD2, 0x53, 0x1F, 0x5E, 0x26, 0x07, 0xFF, 0x80, 0x07, 0xFE, 0x01, 0x07, 0xDF, 0x83, 0x94, 0xD8, 0xD3, 0x96, 0xD3, 0x95, 0x82, 0x99, 0x02, 0x00, 0xFF, 0x01, 0x00, 0xBF, 0x81, 0x00, 0x9F, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x89, 0x00, 0x3F, 0x00, 0x1F, 0xC8, 0xD1, 0xC0, 0xF1, 0xC0, 0xD1, 0xA0, 0xD4, 0x02, 0x7F, 0x04, 0xBF, 0x06, 0x9F, 0x07, + 0xBF, 0x05, 0x07, 0xFF, 0x80, 0x83, 0x15, 0x07, 0xC0, 0xB1, 0x80, 0x70, 0xF1, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x0C, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x08, 0xF7, 0x01, 0x1A, 0x01, 0x18, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x02, 0x18, 0xAE, 0x81, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x0F, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x89, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x20, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x42, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x80, 0x28, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xF0, 0x02, 0x30, 0xF0, 0x01, 0x39, 0x11, 0x02, 0x41, 0x32, 0x81, 0x59, 0x73, 0xB2, 0xF4, 0x02, 0xD3, 0x75, 0x90, 0x94, 0x35, 0x3D, 0x55, 0x2D, 0x55, 0x2D, 0x75, 0x35, 0x15, 0x3C, 0x94, 0x34, 0x14, 0x3B, 0x94, 0x43, 0x13, 0x42, 0x93, 0x4A, 0x13, 0x41, 0xF3, 0x49, 0xF2, 0x4A, 0x13, 0x5A, 0x33, 0xA2, 0xB4, 0xD3, 0x14, 0x01, 0xD2, 0xF4, 0x82, 0xD2, 0xD4, 0xD2, 0xF4, 0x4E, 0x1B, 0x11, 0x07, 0xFF, 0x83, 0x17, 0x9F, 0xD2, 0x74, 0xCA, 0x53, 0xCA, 0x73, 0x02, 0xCA, 0x53, 0x80, 0xD2, 0x53, 0x09, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x0C, 0x07, 0xFF, 0x07, 0x07, 0xDF, 0x06, 0x07, 0xFF, + 0x81, 0x0F, 0x9E, 0xBC, 0x16, 0x01, 0xD3, 0x95, 0x80, 0x72, 0x5A, 0x02, 0x00, 0xBF, 0x80, 0x00, 0x9F, 0x01, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x82, 0x00, 0x3F, 0x00, 0x1F, 0x90, 0xB5, 0x01, 0xC8, 0xD1, 0x84, 0xC0, 0xD1, 0x12, 0x3E, 0x04, 0x7F, 0x06, 0x7F, 0x07, 0xBF, 0x05, 0x07, 0xFF, 0x80, 0x54, 0xD9, 0x05, 0xC0, 0xB1, 0x83, 0xC0, 0xD1, 0xC0, 0xB1, 0x90, 0xD1, 0x38, 0xF1, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x0C, 0x18, 0xAD, 0x81, 0x08, 0xF5, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xF5, 0x09, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF8, 0x10, 0xD0, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x11, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x86, 0x00, 0xF7, 0x18, 0xAE, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xD0, 0x01, 0x00, 0xF9, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x34, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x84, 0x28, 0xEF, 0x28, 0xF0, 0x30, 0xF0, 0x38, 0xF0, 0x30, 0xF0, 0x01, 0x39, 0x11, 0x83, 0x41, 0x12, 0x41, 0x32, 0x82, 0x34, 0xCB, 0x55, 0x01, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0x94, 0x35, 0x01, 0x35, 0x75, 0x80, 0x2D, 0x75, + 0x01, 0x35, 0x55, 0x88, 0x35, 0x14, 0x34, 0x74, 0x3B, 0xF4, 0x3B, 0x73, 0x42, 0xF4, 0x42, 0x73, 0x4A, 0x13, 0x42, 0x13, 0x49, 0xF2, 0x01, 0x49, 0xF3, 0x86, 0x6A, 0x33, 0xBA, 0xD4, 0xD2, 0xF5, 0xD2, 0xF4, 0xD2, 0xD4, 0xC3, 0x35, 0x17, 0x7E, 0x10, 0x07, 0xFF, 0x83, 0x5D, 0x9A, 0xCA, 0x54, 0xD2, 0x73, 0xCA, 0x54, 0x02, 0xCA, 0x53, 0x80, 0x9B, 0xB6, 0x05, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x80, 0x07, 0x9F, 0x01, 0x07, 0x7F, 0x82, 0x07, 0x7E, 0x07, 0xBF, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x07, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x04, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x80, 0x36, 0xDD, 0x02, 0xD3, 0x95, 0x80, 0x51, 0xBC, 0x01, 0x00, 0x9F, 0x02, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x89, 0x00, 0x3F, 0x00, 0x1F, 0x70, 0x77, 0xC0, 0xD2, 0xC8, 0xD1, 0xC0, 0xD1, 0x49, 0xFA, 0x04, 0x9F, 0x06, 0x9F, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x80, 0x1F, 0x1E, 0x06, 0xC0, 0xB1, 0x82, 0xC0, 0xD1, 0xC0, 0xB1, 0x39, 0x10, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x04, 0x20, 0xAE, 0x0B, 0x18, 0xAD, 0x80, 0x01, 0x1A, 0x05, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x08, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xCE, 0x08, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xB0, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x13, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, + 0xAE, 0x80, 0x18, 0xCD, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x33, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x81, 0x49, 0x52, 0xAA, 0xB4, 0x02, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0x94, 0x35, 0x01, 0x35, 0x75, 0x02, 0x2D, 0x75, 0x89, 0x35, 0x55, 0x54, 0xD5, 0x64, 0x75, 0x83, 0xB5, 0x8B, 0x74, 0x9B, 0x34, 0xAB, 0x14, 0xAA, 0xD4, 0xB2, 0xD4, 0xAA, 0xD4, 0x01, 0xAA, 0xB4, 0x86, 0xB2, 0xB4, 0x6B, 0x15, 0x8A, 0x94, 0xC2, 0xD4, 0xD2, 0xF4, 0xD2, 0xD4, 0x84, 0xB8, 0x10, 0x07, 0xFF, 0x83, 0xB3, 0x15, 0xD2, 0x74, 0xCA, 0x53, 0xCA, 0x54, 0x01, 0xCA, 0x53, 0x81, 0xD2, 0x53, 0x65, 0x3A, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x80, 0x07, 0x7F, 0x01, 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x80, 0x07, 0x1F, 0x01, 0x07, 0x1E, 0x83, 0x07, 0x3E, 0x07, 0x9F, 0x07, 0xDF, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x08, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x80, 0x7D, 0x7A, 0x01, 0xD3, 0x95, 0x81, 0xC3, 0x75, 0x28, 0xFE, 0x01, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x81, 0x00, 0x3F, 0x00, 0x5F, 0x01, 0x00, 0x3F, 0x80, 0x18, 0x3E, 0x01, 0xC0, 0xD1, 0x84, 0xC0, 0xD2, 0x79, 0x96, 0x04, 0xBF, 0x06, 0x7F, 0x07, 0xBF, 0x06, 0x07, 0xFF, 0x80, 0xA2, 0x14, 0x02, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x02, 0xC0, 0xB1, 0x81, 0xC0, 0xD1, 0x58, 0xF1, + 0x02, 0x30, 0xF0, 0x82, 0x28, 0xCF, 0x28, 0xEF, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x0B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x05, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x83, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF8, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x17, 0x18, 0xCE, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x30, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x83, 0x38, 0xF0, 0x39, 0x11, 0x59, 0x72, 0xCB, 0x55, 0x03, 0xD3, 0x75, 0x86, 0xAB, 0xD5, 0x45, 0x15, 0x54, 0xF5, 0x7C, 0x75, 0x8C, 0x35, 0xAB, 0xD5, 0xCB, 0x55, 0x01, 0xD3, 0x35, 0x80, 0xD3, 0x34, 0x01, 0xD3, 0x35, 0x80, 0xD3, 0x15, 0x01, 0xD3, 0x14, 0x84, 0xC3, 0x55, 0x9C, 0x37, 0x65, 0x9A, 0x46, 0x7C, 0x0F, 0xBF, 0x01, 0x07, 0xFF, 0x83, 0x26, 0x9D, 0x9C, 0x17, 0xD2, 0xD4, 0x9C, 0x17, 0x0F, 0x07, 0xFF, 0x84, 0x5D, 0x9A, 0xD2, 0x74, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0x02, 0xCA, 0x33, 0x81, 0x26, 0xDD, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x01, 0x07, + 0x7F, 0x81, 0x07, 0x5F, 0x07, 0x3F, 0x01, 0x07, 0x1E, 0x01, 0x06, 0xFE, 0x80, 0x06, 0xFF, 0x01, 0x06, 0xDE, 0x01, 0x06, 0xBE, 0x82, 0x06, 0xDE, 0x07, 0x3E, 0x07, 0x9F, 0x01, 0x07, 0xBF, 0x02, 0x07, 0x9F, 0x80, 0x07, 0x7F, 0x01, 0x07, 0x9F, 0x80, 0x07, 0x7F, 0x03, 0x07, 0x9F, 0x01, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x81, 0x0F, 0xBF, 0xC3, 0xF6, 0x01, 0xD3, 0x95, 0x80, 0xAA, 0xF7, 0x06, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x86, 0xA0, 0x94, 0xC0, 0xD1, 0xC8, 0xB1, 0xA8, 0xF3, 0x04, 0xBF, 0x06, 0x9F, 0x07, 0xDF, 0x06, 0x07, 0xFF, 0x81, 0x73, 0xD8, 0xB8, 0xB1, 0x02, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x02, 0xC0, 0xB1, 0x81, 0x78, 0xF1, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x0B, 0x18, 0xAD, 0x02, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x03, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x8A, 0x20, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x18, 0xD0, 0x02, 0x18, 0xAD, 0x80, 0x18, 0x8D, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x86, 0x18, 0xCD, 0x10, 0xCF, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x17, 0x18, 0xCE, 0x18, 0x8D, 0x02, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x42, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, + 0xEF, 0x02, 0x30, 0xF0, 0x81, 0x31, 0x11, 0x71, 0xF2, 0x04, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x80, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x80, 0xCB, 0x14, 0x01, 0xD3, 0x34, 0x83, 0xAC, 0x16, 0x75, 0x3A, 0x46, 0x7D, 0x1F, 0x5E, 0x08, 0x07, 0xFF, 0x81, 0x36, 0x9C, 0x4E, 0x1B, 0x0E, 0x07, 0xFF, 0x81, 0x26, 0xFD, 0xC2, 0xB4, 0x02, 0xCA, 0x53, 0x80, 0xD2, 0x53, 0x01, 0xCA, 0x33, 0x80, 0xA3, 0x56, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x80, 0x07, 0x9F, 0x01, 0x07, 0x7F, 0x81, 0x07, 0x5F, 0x07, 0x3F, 0x01, 0x07, 0x1F, 0x80, 0x06, 0xFF, 0x01, 0x06, 0xFE, 0x80, 0x06, 0xDE, 0x01, 0x06, 0xBE, 0x02, 0x06, 0x9E, 0x01, 0x06, 0x7E, 0x01, 0x06, 0x5E, 0x81, 0x06, 0xBE, 0x07, 0x3E, 0x07, 0x07, 0x5F, 0x03, 0x07, 0x7F, 0x80, 0x07, 0x9F, 0x01, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x86, 0x07, 0xFF, 0x07, 0xDF, 0x6D, 0xDA, 0xD3, 0x95, 0xD3, 0x76, 0xD3, 0x75, 0x79, 0xFA, 0x01, 0x00, 0x3F, 0x81, 0x00, 0x1F, 0x00, 0x3F, 0x03, 0x00, 0x1F, 0x80, 0x88, 0x96, 0x01, 0xC0, 0xB1, 0x83, 0xC8, 0xB1, 0x0C, 0x9F, 0x06, 0x9F, 0x07, 0xBF, 0x06, 0x07, 0xFF, 0x80, 0x3D, 0xBB, 0x02, 0xC0, 0xB1, 0x82, 0xC0, 0xD1, 0xC0, 0xB1, 0xB8, 0xD1, 0x01, 0xC0, 0xB1, 0x81, 0x98, 0xD1, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x82, 0x20, 0xAE, 0x20, 0xCE, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x0A, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x05, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x08, 0x18, 0xAD, 0x80, 0x20, + 0xAE, 0x04, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xB0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x85, 0x18, 0xB0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x30, 0x18, 0xAD, 0x05, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x80, 0x9A, 0x93, 0x03, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x80, 0xD3, 0x35, 0x01, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x83, 0xC3, 0x75, 0x84, 0xF9, 0x4E, 0x3C, 0x0F, 0xBF, 0x1C, 0x07, 0xFF, 0x84, 0x0F, 0x9F, 0xAB, 0x75, 0xCA, 0x54, 0xD2, 0x53, 0xCA, 0x53, 0x01, 0xCA, 0x33, 0x83, 0xD2, 0x33, 0xCA, 0x33, 0x4D, 0xBB, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x81, 0x07, 0x9F, 0x07, 0x7F, 0x01, 0x07, 0x5F, 0x80, 0x07, 0x3F, 0x01, 0x07, 0x1F, 0x80, 0x06, 0xFF, 0x02, 0x06, 0xDE, 0x01, 0x06, 0xBE, 0x80, 0x06, 0x9E, 0x02, 0x06, 0x7E, 0x80, 0x06, 0x5E, 0x01, 0x06, 0x3E, 0x01, 0x06, 0x1E, 0x83, 0x05, 0xFE, 0x05, 0xFD, 0x06, 0x7D, 0x06, 0xDE, 0x03, 0x06, 0xFE, 0x80, 0x07, 0x1E, 0x02, 0x07, 0x3F, 0x82, 0x07, 0x3E, 0x07, 0x5F, 0x07, 0x7F, 0x01, 0x07, 0x9F, 0x80, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x81, 0x0F, 0xBF, 0xC3, 0xD6, 0x01, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0x30, 0xFD, 0x03, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x80, 0x60, 0x58, 0x02, 0xC0, 0xB1, 0x82, 0x33, + 0xFC, 0x06, 0xBF, 0x07, 0xBF, 0x06, 0x07, 0xFF, 0x81, 0x0F, 0x9E, 0xC0, 0xD1, 0x02, 0xC0, 0xB1, 0x82, 0xC0, 0xD1, 0xB8, 0xB1, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x81, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x80, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x0A, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x15, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x4B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x01, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x82, 0x30, 0xF0, 0x39, 0x10, 0xAA, 0xF4, 0x04, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x82, 0xB3, 0xD6, 0x75, 0x39, 0x27, 0x1D, 0x1F, 0x07, 0xFF, 0x85, 0x2E, 0xFD, 0xB3, 0x15, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x33, 0xCA, 0x53, 0x01, 0xCA, 0x34, 0x81, 0xCA, 0x33, 0xA3, 0x35, 0x01, 0x07, 0xBF, 0x82, 0x07, 0x9F, 0x07, 0x7F, 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x80, 0x07, 0x1F, 0x01, 0x06, 0xFF, 0x83, 0x06, 0xDF, 0x06, 0xDE, 0x06, 0xBF, 0x06, 0xBE, 0x02, 0x06, 0x9E, 0x80, 0x06, 0x7E, 0x01, 0x06, 0x5E, 0x80, 0x06, 0x3E, 0x01, 0x06, 0x1E, 0x84, 0x05, 0xFE, 0x05, 0xDE, 0x05, 0xBD, 0x05, 0xBE, 0x05, 0x9D, 0x01, 0x05, 0x5E, 0x84, 0x05, 0xBE, 0x05, 0xFE, 0x06, 0x1D, 0x06, 0x7E, 0x06, 0xBE, 0x01, 0x06, 0xFE, 0x81, 0x07, 0x1F, 0x07, 0x1E, 0x01, + 0x07, 0x3F, 0x82, 0x07, 0x5F, 0x07, 0x7F, 0x07, 0x9F, 0x01, 0x07, 0xBF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x81, 0x85, 0x39, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x80, 0xBA, 0xF6, 0x06, 0x00, 0x1F, 0x81, 0x40, 0x3B, 0xC8, 0xB1, 0x01, 0xC0, 0xB1, 0x82, 0x63, 0x18, 0x06, 0xBF, 0x07, 0xBF, 0x07, 0x07, 0xFF, 0x80, 0xA9, 0xB3, 0x05, 0xC0, 0xB1, 0x83, 0xC0, 0xD1, 0xB8, 0xD1, 0x49, 0x10, 0x39, 0x10, 0x01, 0x30, 0xF0, 0x84, 0x28, 0xCF, 0x28, 0xEF, 0x28, 0xCF, 0x20, 0xCF, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x84, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x20, 0xAE, 0x09, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x10, 0xD3, 0x80, 0x10, 0xD2, 0x11, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x83, 0x01, 0x17, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAF, 0x14, 0x18, 0xAD, 0x89, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCF, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x42, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xCF, 0x01, 0x28, 0xCF, 0x83, 0x28, 0xEF, 0x30, 0xCF, 0x39, 0x10, 0xB3, 0x14, 0x04, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x80, 0xD3, 0x54, 0x01, 0xD3, 0x55, 0x82, 0xCB, 0x96, 0x85, 0x18, 0x36, 0xDD, 0x20, 0x07, 0xFF, 0x84, 0x0F, 0xBE, 0x65, 0x3A, 0xCA, 0x54, 0xCA, 0x53, 0xD2, 0x53, 0x01, 0xCA, 0x53, 0x03, 0xCA, 0x33, 0x80, 0x2E, 0x9D, 0x01, 0x07, 0x7F, 0x80, 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x88, 0x07, 0x1F, 0x06, 0xFF, 0x06, 0xFE, 0x06, 0xDF, 0x06, 0xDE, 0x06, + 0xBF, 0x06, 0xBE, 0x06, 0xBF, 0x06, 0x9E, 0x01, 0x06, 0x7E, 0x01, 0x06, 0x5E, 0x80, 0x06, 0x3E, 0x01, 0x06, 0x1E, 0x81, 0x05, 0xFE, 0x05, 0xDE, 0x01, 0x05, 0xBE, 0x8B, 0x05, 0x9E, 0x05, 0x7E, 0x05, 0x3E, 0x05, 0x1E, 0x04, 0xFE, 0x04, 0xBE, 0x04, 0x9E, 0x04, 0x1E, 0x03, 0xDD, 0x04, 0xDE, 0x06, 0x5E, 0x06, 0xBE, 0x01, 0x06, 0xDE, 0x83, 0x06, 0xFE, 0x07, 0x1F, 0x07, 0x3E, 0x07, 0x7F, 0x01, 0x07, 0x9F, 0x80, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x36, 0xDD, 0x02, 0xD3, 0x55, 0x81, 0xD3, 0x35, 0x69, 0x9A, 0x06, 0x00, 0x1F, 0x85, 0xB8, 0xB2, 0xC0, 0x91, 0xC0, 0xB1, 0x7A, 0x96, 0x06, 0xBF, 0x07, 0x9F, 0x04, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x82, 0x82, 0xF5, 0xC0, 0xB1, 0xC0, 0xD1, 0x02, 0xC0, 0xB1, 0x02, 0xB8, 0xD1, 0x81, 0x60, 0xF1, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xEF, 0x81, 0x28, 0xCF, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x80, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x1A, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x08, 0xF7, 0x01, 0x19, 0x08, 0xF7, 0x18, 0xCE, 0x20, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x43, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x86, 0x28, 0xCE, 0x20, 0xCF, 0x28, 0xCF, 0x28, 0xEF, 0x39, 0x10, 0xB3, 0x14, 0xD3, 0x95, 0x03, 0xD3, 0x75, 0x03, 0xD3, + 0x55, 0x82, 0xBB, 0xD6, 0x5D, 0xFB, 0x0F, 0xBF, 0x20, 0x07, 0xFF, 0x85, 0x0F, 0xBF, 0x5D, 0x9A, 0xB3, 0x15, 0xD2, 0x54, 0xCA, 0x53, 0xD2, 0x54, 0x01, 0xCA, 0x53, 0x81, 0xCA, 0x33, 0xD2, 0x33, 0x01, 0xCA, 0x33, 0x81, 0x64, 0xD9, 0x07, 0x7F, 0x01, 0x07, 0x3F, 0x80, 0x07, 0x1F, 0x01, 0x06, 0xFF, 0x02, 0x06, 0xDF, 0x81, 0x06, 0xBF, 0x06, 0xBE, 0x01, 0x06, 0x9F, 0x80, 0x06, 0x7E, 0x01, 0x06, 0x5E, 0x01, 0x06, 0x3E, 0x80, 0x06, 0x1E, 0x01, 0x05, 0xFE, 0x81, 0x05, 0xDE, 0x05, 0xBE, 0x01, 0x05, 0x9E, 0x01, 0x05, 0x5E, 0x8A, 0x05, 0x1E, 0x04, 0xFE, 0x04, 0xDE, 0x04, 0x9E, 0x04, 0x3D, 0x03, 0xDE, 0x03, 0xBE, 0x03, 0x9E, 0x03, 0x7E, 0x03, 0xFE, 0x05, 0xFE, 0x01, 0x06, 0x9E, 0x84, 0x06, 0xBE, 0x06, 0xFE, 0x07, 0x1E, 0x07, 0x3F, 0x07, 0x5F, 0x01, 0x07, 0x9F, 0x02, 0x07, 0xDF, 0x82, 0x07, 0xFF, 0xBB, 0xF6, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x81, 0xC2, 0xF5, 0x08, 0x3F, 0x04, 0x00, 0x1F, 0x81, 0x00, 0x3F, 0x90, 0x95, 0x01, 0xC8, 0xB1, 0x87, 0x91, 0xF5, 0x06, 0x7F, 0x06, 0xFF, 0x07, 0x3F, 0x07, 0x5F, 0x07, 0x7F, 0x07, 0xBF, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x80, 0x54, 0xD9, 0x03, 0xC0, 0xB1, 0x81, 0xB8, 0xD1, 0xC0, 0xD1, 0x01, 0xB8, 0xD1, 0x81, 0x80, 0xF2, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x01, 0x20, 0xCE, 0x87, 0x20, 0xAE, 0x20, 0xAD, 0x20, 0xCD, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, + 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x11, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xCE, 0x08, 0xF7, 0x01, 0x1A, 0x11, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x05, 0x01, 0x19, 0x81, 0x00, 0xF6, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x43, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x03, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x81, 0x20, 0xCF, 0x28, 0xCE, 0x01, 0x28, 0xCF, 0x82, 0x31, 0x10, 0xB3, 0x14, 0xD3, 0x95, 0x03, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x81, 0x9C, 0x77, 0x56, 0x3B, 0x03, 0x07, 0xFF, 0x82, 0x1F, 0x7E, 0x65, 0xDB, 0x7C, 0xF9, 0x03, 0x9C, 0x57, 0x03, 0x9C, 0x37, 0x83, 0x75, 0x39, 0x6D, 0x7A, 0x65, 0x79, 0x5D, 0xBB, 0x01, 0x36, 0xBD, 0x81, 0x36, 0xBC, 0x2E, 0xFD, 0x08, 0x07, 0xFF, 0x92, 0x0F, 0xBF, 0x36, 0xBD, 0x5D, 0x9A, 0x8C, 0x37, 0xD2, 0x74, 0xD2, 0x73, 0xD2, 0x54, 0xCA, 0x53, 0xD2, 0x54, 0xD2, 0x53, 0xCA, 0x33, 0xD2, 0x33, 0xCA, 0x34, 0xCA, 0x13, 0xCA, 0x33, 0x84, 0x18, 0x07, 0x5F, 0x07, 0x3F, 0x07, 0x1F, 0x01, 0x06, 0xFF, 0x02, 0x06, 0xDF, 0x01, 0x06, 0xBF, 0x81, 0x06, 0x9E, 0x06, 0x9F, 0x01, 0x06, 0x7E, 0x01, 0x06, 0x5E, 0x80, 0x06, 0x3E, 0x01, 0x06, 0x1E, 0x80, 0x05, 0xFE, 0x01, 0x05, 0xDE, 0x01, 0x05, 0xBE, 0x81, 0x05, 0x7E, 0x05, 0x5E, 0x01, 0x05, 0x1E, 0x85, 0x04, 0xFE, 0x04, 0xBE, 0x04, 0x5E, 0x03, 0xFE, 0x03, 0xBE, 0x03, 0x9E, 0x01, 0x03, 0x7E, 0x83, 0x03, 0x5E, 0x03, 0x3E, 0x03, 0x5E, 0x06, 0x1D, 0x01, 0x06, 0x7E, + 0x86, 0x06, 0x9E, 0x06, 0xBE, 0x06, 0xFE, 0x07, 0x3F, 0x07, 0x5F, 0x07, 0x7F, 0x07, 0x9F, 0x01, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x7D, 0x59, 0x02, 0xD3, 0x35, 0x81, 0xD3, 0x14, 0x69, 0x9A, 0x04, 0x00, 0x1F, 0x81, 0x00, 0x7F, 0x60, 0xD8, 0x01, 0xC0, 0xB1, 0x87, 0xB8, 0xF2, 0x05, 0xDF, 0x06, 0x1F, 0x06, 0x5F, 0x06, 0xDF, 0x07, 0x3F, 0x07, 0x7F, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x80, 0x36, 0x3C, 0x03, 0xC0, 0xB1, 0x81, 0xB8, 0xD1, 0xC0, 0xD1, 0x01, 0xB8, 0xD1, 0x81, 0x90, 0xD1, 0x39, 0x11, 0x02, 0x30, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x85, 0x20, 0xAE, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x11, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x11, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xD5, 0x02, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAE, 0x18, 0xCD, 0x45, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x04, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x80, 0x20, 0xCF, 0x01, 0x28, 0xCE, 0x81, 0x30, 0xEF, 0xB3, 0x14, 0x03, 0xD3, 0x75, 0x84, 0xD3, 0x55, 0xD3, 0x75, 0xD3, 0x55, 0x9C, 0x77, 0x3E, 0xDD, 0x04, 0x07, 0xFF, 0x83, 0x65, 0x9A, 0xD3, 0x15, 0xD3, 0x14, 0xD3, 0x15, 0x02, 0xD3, 0x14, 0x03, 0xD2, 0xF4, 0x01, 0xD2, 0xD4, 0x82, 0xD2, + 0xF4, 0xCA, 0xD4, 0xD2, 0xD4, 0x02, 0xD2, 0xB4, 0x80, 0xCA, 0xB4, 0x02, 0xD2, 0xB4, 0x01, 0xD2, 0x94, 0x03, 0xCA, 0x94, 0x01, 0xCA, 0x74, 0x01, 0xCA, 0x73, 0x80, 0xD2, 0x74, 0x05, 0xCA, 0x53, 0x02, 0xCA, 0x33, 0x81, 0xAB, 0x15, 0x0E, 0xDF, 0x01, 0x06, 0xFF, 0x01, 0x06, 0xDF, 0x01, 0x06, 0xBF, 0x81, 0x06, 0xDF, 0x06, 0xBF, 0x01, 0x06, 0x9F, 0x84, 0x06, 0x7E, 0x06, 0x7F, 0x06, 0x7E, 0x06, 0x5E, 0x06, 0x3F, 0x01, 0x06, 0x1E, 0x01, 0x05, 0xFE, 0x81, 0x05, 0xDE, 0x05, 0xBE, 0x01, 0x05, 0x9E, 0x87, 0x05, 0x5E, 0x05, 0x3E, 0x05, 0x1E, 0x04, 0xFE, 0x04, 0xDE, 0x04, 0x9E, 0x04, 0x3E, 0x03, 0xBE, 0x01, 0x03, 0x9E, 0x01, 0x03, 0x5E, 0x01, 0x03, 0x3E, 0x91, 0x03, 0x1E, 0x02, 0xFE, 0x03, 0x7E, 0x05, 0xFE, 0x06, 0x5E, 0x06, 0x7E, 0x06, 0x9E, 0x06, 0xDE, 0x06, 0xFE, 0x07, 0x5F, 0x07, 0x7F, 0x07, 0x9F, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xFF, 0x27, 0x1D, 0xD3, 0x35, 0xD3, 0x14, 0x01, 0xD3, 0x15, 0x81, 0xC2, 0xD5, 0x08, 0x3F, 0x03, 0x00, 0x1F, 0x8B, 0x00, 0x9F, 0x60, 0xD8, 0xC0, 0xB1, 0xC0, 0xB2, 0xC0, 0xB1, 0x04, 0xBF, 0x05, 0x3F, 0x05, 0xBF, 0x06, 0x7F, 0x06, 0xDF, 0x07, 0x5F, 0x07, 0x9F, 0x03, 0x07, 0xFF, 0x01, 0xC0, 0xB1, 0x03, 0xB8, 0xD1, 0x84, 0xC0, 0xB1, 0xB8, 0xD1, 0x98, 0xD1, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x84, 0x18, 0xCE, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x13, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x07, 0x18, + 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x43, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x83, 0x28, 0xCE, 0x20, 0xCE, 0x30, 0xEF, 0xB3, 0x14, 0x03, 0xD3, 0x75, 0x83, 0xD3, 0x55, 0xD3, 0x75, 0xAC, 0x37, 0x36, 0xDD, 0x02, 0x07, 0xFF, 0x8A, 0x0E, 0xBD, 0x1D, 0x7B, 0x1C, 0x99, 0x32, 0xF5, 0x3A, 0x75, 0x61, 0x93, 0x69, 0xB3, 0x79, 0xF4, 0x8A, 0x14, 0xB2, 0x94, 0xCA, 0xF4, 0x03, 0xD2, 0xF4, 0x03, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x82, 0xCA, 0xD4, 0xD2, 0xB4, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x03, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x01, 0xCA, 0x74, 0x01, 0xD2, 0x74, 0x80, 0xCA, 0x53, 0x01, 0xCA, 0x54, 0x82, 0xCA, 0x53, 0xD2, 0x53, 0xCA, 0x53, 0x03, 0xCA, 0x33, 0x82, 0x8B, 0x97, 0x35, 0xFD, 0x5D, 0x7B, 0x01, 0x6D, 0x3A, 0x89, 0x5D, 0x5B, 0x35, 0xFD, 0x06, 0xBF, 0x0E, 0x7E, 0x45, 0x7C, 0x6C, 0x99, 0x64, 0x79, 0x64, 0x59, 0x4C, 0xBA, 0x0E, 0x1E, 0x01, 0x06, 0x3E, 0x80, 0x06, 0x1E, 0x02, 0x05, 0xFE, 0x84, 0x05, 0xDE, 0x05, 0xBE, 0x05, 0x9E, 0x05, 0x7E, 0x05, 0x5E, 0x01, 0x05, 0x1E, 0x87, 0x04, 0xFE, 0x04, 0xDE, 0x04, 0x7E, 0x03, 0xDE, 0x03, 0xBE, 0x03, 0x7E, 0x03, 0x7F, 0x03, 0x5E, 0x01, 0x03, 0x3E, 0x80, 0x03, 0x1E, 0x02, 0x02, 0xFE, 0x90, 0x02, 0xDE, 0x03, 0xFE, 0x05, 0xBE, 0x06, 0x3E, 0x06, 0x5E, 0x06, 0x9E, 0x06, 0xDE, 0x07, 0x1F, 0x07, 0x3E, 0x07, 0x7F, 0x07, 0x9F, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xFF, 0xBB, 0xB6, 0xD3, 0x14, 0xD3, + 0x15, 0x01, 0xD2, 0xF4, 0x80, 0x69, 0x7A, 0x02, 0x00, 0x1F, 0x82, 0x00, 0x3F, 0x00, 0x7F, 0x48, 0xFA, 0x02, 0xC0, 0xB1, 0x86, 0x33, 0x1C, 0x04, 0x7F, 0x05, 0x3F, 0x05, 0xFF, 0x06, 0x9F, 0x07, 0x3F, 0x07, 0x9F, 0x03, 0x07, 0xFF, 0x80, 0x9A, 0x14, 0x01, 0xB8, 0xD1, 0x80, 0xC0, 0xB1, 0x03, 0xB8, 0xD1, 0x82, 0xB0, 0xD1, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x85, 0x20, 0xCE, 0x20, 0xCF, 0x20, 0xAE, 0x18, 0xCF, 0x08, 0xF6, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF4, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x47, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x81, 0x28, 0xCF, 0x92, 0x73, 0x04, 0xD3, 0x75, 0x85, 0xC3, 0xB6, 0x5D, 0xFB, 0x07, 0xFF, 0x0E, 0x3B, 0x1C, 0x98, 0x2A, 0xD5, 0x01, 0x39, 0x11, 0x81, 0x39, 0x12, 0x41, 0x11, 0x02, 0x41, 0x12, 0x03, 0x41, 0x32, 0x8A, 0x49, 0x33, 0x51, 0x73, 0x79, 0xD3, 0x9A, 0x54, 0xC2, 0x94, 0xD2, 0xF4, 0xD2, 0xD5, 0xCA, 0xD4, 0xD2, 0xD4, 0xD2, 0xB4, 0xCA, 0xD4, 0x03, 0xD2, 0xB4, 0x03, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x02, 0xCA, 0x74, 0x81, 0xCA, 0x73, 0xD2, 0x53, 0x04, 0xCA, 0x53, 0x03, 0xCA, 0x33, 0x83, 0x99, 0xD4, 0x63, 0x58, 0xD3, 0x95, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x88, + 0x06, 0xBF, 0x5C, 0xFA, 0xD2, 0xB4, 0xCA, 0x94, 0xCA, 0x33, 0xCA, 0x13, 0xC9, 0xD3, 0xB9, 0xD3, 0x4C, 0x5A, 0x01, 0x06, 0x1E, 0x01, 0x05, 0xDE, 0x80, 0x05, 0xBE, 0x01, 0x05, 0x9E, 0x86, 0x05, 0x7E, 0x05, 0x3E, 0x05, 0x1E, 0x05, 0x1D, 0x04, 0xDE, 0x04, 0xBE, 0x04, 0x3E, 0x01, 0x03, 0xBE, 0x84, 0x03, 0x7F, 0x0B, 0x7E, 0x33, 0x7C, 0x33, 0x3C, 0x33, 0x5C, 0x01, 0x33, 0x3C, 0x01, 0x33, 0x1C, 0x01, 0x32, 0xFC, 0x8A, 0x32, 0xDC, 0x2B, 0x7C, 0x05, 0xDE, 0x06, 0x1E, 0x06, 0x5E, 0x06, 0x9E, 0x06, 0xDE, 0x07, 0x1F, 0x07, 0x3F, 0x07, 0x7F, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x85, 0x84, 0xF9, 0xD3, 0x14, 0xCB, 0x14, 0xCA, 0xF4, 0xD2, 0xD5, 0xB2, 0x75, 0x03, 0x00, 0x1F, 0x82, 0x00, 0x5F, 0x08, 0xDF, 0xB8, 0xD2, 0x01, 0xC0, 0xB1, 0x86, 0x3A, 0x7B, 0x03, 0xFF, 0x04, 0xDF, 0x05, 0xBF, 0x06, 0x7F, 0x07, 0x1F, 0x07, 0x9F, 0x03, 0x07, 0xFF, 0x82, 0x7B, 0x77, 0xB8, 0xD1, 0xB8, 0xB1, 0x05, 0xB8, 0xD1, 0x81, 0x41, 0x11, 0x38, 0xF1, 0x01, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x89, 0x20, 0xCF, 0x20, 0xAE, 0x20, 0xCF, 0x09, 0x18, 0x01, 0x3A, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF6, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0B, 0x18, 0xAD, 0x0C, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x12, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x4C, 0x01, 0x19, 0x88, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x39, 0x00, 0xF9, 0x10, 0xD2, 0x20, 0xAE, 0x18, 0xAD, 0x01, + 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x80, 0x7A, 0x32, 0x04, 0xD3, 0x75, 0x85, 0x9C, 0x78, 0x26, 0x1B, 0x1B, 0x96, 0x31, 0x71, 0x30, 0xF0, 0x38, 0xF1, 0x05, 0x39, 0x11, 0x81, 0x41, 0x11, 0x39, 0x12, 0x02, 0x41, 0x12, 0x81, 0x41, 0x32, 0x41, 0x12, 0x01, 0x41, 0x32, 0x87, 0x49, 0x12, 0x41, 0x32, 0x61, 0x72, 0x81, 0xF3, 0xAA, 0x73, 0xCA, 0xD4, 0xD2, 0xB4, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x01, 0xCA, 0xB4, 0x01, 0xCA, 0x94, 0x80, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x02, 0xCA, 0x74, 0x82, 0xD2, 0x74, 0xCA, 0x54, 0xD2, 0x74, 0x02, 0xCA, 0x53, 0x80, 0xD2, 0x33, 0x01, 0xCA, 0x33, 0x84, 0xD2, 0x33, 0xC2, 0x34, 0x79, 0x94, 0x59, 0x75, 0xB3, 0x15, 0x03, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xC3, 0x75, 0x01, 0x06, 0x7F, 0x8B, 0x6C, 0x79, 0xCA, 0x33, 0xCA, 0x13, 0xC9, 0xD3, 0xC9, 0x92, 0xC9, 0x52, 0xC9, 0x12, 0x34, 0xBB, 0x05, 0xFE, 0x05, 0xDE, 0x05, 0xBE, 0x05, 0x9E, 0x01, 0x05, 0x5E, 0x8A, 0x05, 0x3E, 0x05, 0x1E, 0x04, 0xFE, 0x24, 0x9D, 0x34, 0x7B, 0x6B, 0xFA, 0x7B, 0x99, 0x9B, 0x98, 0xAB, 0x97, 0xDB, 0x95, 0xD3, 0x96, 0x08, 0xD3, 0x95, 0x8F, 0xD3, 0x96, 0xD3, 0x95, 0xD3, 0x96, 0xD3, 0x95, 0xBB, 0xD6, 0x9C, 0x37, 0x84, 0x99, 0x6D, 0x1A, 0x36, 0x3C, 0x1E, 0xDD, 0x07, 0x9F, 0x07, 0xBF, 0x07, 0xDF, 0x4E, 0x1B, 0xD2, 0xF4, 0xD2, 0xF5, 0x02, 0xD2, 0xD4, 0x80, 0x40, 0xFC, 0x02, 0x00, 0x1F, 0x82, 0x00, 0x3F, 0x00, 0x9F, 0x78, 0xD7, 0x01, 0xC0, 0xB1, 0x86, 0x61, 0xD8, 0x03, 0xBF, 0x04, 0x9F, 0x05, 0x7F, 0x06, 0x5F, 0x07, 0x1F, + 0x07, 0xBF, 0x03, 0x07, 0xFF, 0x84, 0x54, 0xD9, 0xB8, 0xD1, 0xB8, 0xB1, 0xB8, 0xD1, 0xC0, 0xB1, 0x03, 0xB8, 0xD1, 0x81, 0x41, 0x11, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x85, 0x20, 0xCF, 0x20, 0xAE, 0x10, 0xF3, 0x01, 0x3A, 0x01, 0x19, 0x01, 0x39, 0x02, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x18, 0xD0, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x0C, 0x18, 0xAD, 0x07, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x67, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x02, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x81, 0x51, 0x70, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x82, 0xD3, 0x55, 0x65, 0x19, 0x22, 0xB3, 0x04, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x0A, 0x39, 0x11, 0x03, 0x41, 0x12, 0x8E, 0x41, 0x32, 0x41, 0x12, 0x41, 0x32, 0x41, 0x12, 0x49, 0x52, 0x79, 0xB3, 0xA2, 0x33, 0xD2, 0xB4, 0xCA, 0xB4, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xCA, 0x74, 0xCA, 0x94, 0x01, 0xCA, 0x74, 0x83, 0xD2, 0x74, 0xCA, 0x54, 0xD2, 0x74, 0xD2, 0x53, 0x01, 0xCA, 0x54, 0x82, 0xCA, 0x33, 0xD2, 0x33, 0xCA, 0x34, 0x01, 0xCA, 0x33, 0x80, 0xA1, 0xD3, 0x01, 0x59, 0x54, 0x80, 0x79, 0xF5, 0x02, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x93, 0xD3, 0x35, 0x8C, 0x18, 0x06, 0x7F, 0x06, 0x5F, 0x06, 0x3F, 0xA2, 0xD5, 0xC9, 0xD3, 0xC9, 0x72, 0xC9, 0x52, 0xC1, 0x11, 0xC8, 0xD1, 0x8A, 0x55, 0x05, 0xDE, 0x05, 0xBE, 0x05, 0x9E, 0x05, 0x7E, 0x05, 0x5E, 0x34, 0xDC, + 0x6C, 0x5A, 0xA3, 0xF7, 0x14, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x02, 0xD3, 0x35, 0x84, 0xBB, 0xB6, 0x84, 0xD9, 0x4E, 0x1B, 0x46, 0x5C, 0xD2, 0xF5, 0x02, 0xD2, 0xD4, 0x81, 0xD2, 0xB4, 0x81, 0xD8, 0x03, 0x00, 0x1F, 0x8A, 0x00, 0x5F, 0x60, 0x98, 0xC0, 0xB1, 0xC0, 0xD1, 0x59, 0xB8, 0x03, 0x5F, 0x04, 0x5F, 0x05, 0x5F, 0x06, 0x3F, 0x06, 0xFF, 0x07, 0x9F, 0x03, 0x07, 0xFF, 0x83, 0x36, 0x3C, 0xC0, 0xD1, 0xB8, 0xD1, 0xB8, 0xB1, 0x04, 0xB8, 0xD1, 0x85, 0x58, 0xF1, 0x39, 0x11, 0x30, 0xF0, 0x31, 0x10, 0x30, 0xCF, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x82, 0x20, 0xCE, 0x08, 0xF6, 0x01, 0x3A, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x12, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x5F, 0x01, 0x19, 0x03, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x00, 0xF8, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x20, 0xCE, 0x20, 0xAE, 0x28, 0xEE, 0xCB, 0x55, 0x02, 0xD3, 0x75, 0x83, 0xBB, 0x14, 0x34, 0xF9, 0x29, 0x30, 0x30, 0xEF, 0x07, 0x30, 0xF0, 0x0F, 0x39, 0x11, 0x88, 0x41, 0x12, 0x41, 0x11, 0x39, 0x31, 0x41, 0x12, 0x41, 0x11, 0x69, 0x93, 0x91, 0xF2, 0xC2, 0x54, 0xCA, 0x93, 0x01, 0xCA, 0x94, 0x01, 0xCA, 0x74, 0x84, 0xD2, 0x74, 0xCA, 0x73, 0xD2, 0x73, 0xCA, 0x73, 0xD2, 0x54, 0x01, 0xCA, 0x53, 0x88, 0xCA, 0x54, 0xCA, 0x33, 0xCA, 0x34, 0xA1, + 0xF3, 0x69, 0x73, 0x49, 0x53, 0x51, 0x34, 0x51, 0x54, 0xAA, 0xF5, 0x02, 0xD3, 0x95, 0x84, 0xD3, 0x75, 0xD3, 0x35, 0xD3, 0x14, 0x5C, 0xDA, 0x06, 0x5F, 0x01, 0x06, 0x3F, 0x84, 0xB2, 0x54, 0xC9, 0x72, 0xC9, 0x52, 0xC1, 0x12, 0xC8, 0xD1, 0x01, 0xC0, 0xB1, 0x85, 0x05, 0xBE, 0x05, 0x9E, 0x2D, 0x1C, 0x94, 0x38, 0xCB, 0xB6, 0xD3, 0x96, 0x15, 0xD3, 0x95, 0x81, 0xD3, 0x96, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x01, 0xD3, 0x14, 0x82, 0xD3, 0x15, 0xD2, 0xF4, 0xD2, 0xF5, 0x02, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x82, 0xCA, 0x94, 0x08, 0x7F, 0x00, 0x3F, 0x02, 0x00, 0x1F, 0x80, 0x38, 0x5B, 0x01, 0xC0, 0xB1, 0x86, 0x91, 0x35, 0x03, 0x1F, 0x04, 0x3F, 0x05, 0x3F, 0x06, 0x3F, 0x07, 0x1F, 0x07, 0x9F, 0x04, 0x07, 0xFF, 0x02, 0xB8, 0xD1, 0x89, 0xB8, 0xB1, 0xB8, 0xD1, 0xC0, 0xD1, 0xB8, 0xB1, 0xB8, 0xD1, 0x59, 0x11, 0x39, 0x11, 0x38, 0xF0, 0x30, 0xF0, 0x30, 0xCF, 0x01, 0x28, 0xCF, 0x85, 0x20, 0xCF, 0x20, 0xCE, 0x09, 0x17, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x10, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x64, 0x01, 0x19, 0x8C, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0x01, 0x1A, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xCD, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x80, 0x82, 0x52, 0x02, 0xD3, 0x75, 0x82, 0x9A, 0x93, 0x30, 0xEF, 0x20, 0xCF, 0x01, + 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x80, 0x28, 0xF0, 0x09, 0x30, 0xF0, 0x01, 0x38, 0xF0, 0x0B, 0x39, 0x11, 0x80, 0x38, 0xF1, 0x03, 0x39, 0x11, 0x88, 0x41, 0x11, 0x69, 0x72, 0x81, 0xD2, 0xAA, 0x13, 0xBA, 0x33, 0xCA, 0x54, 0xCA, 0x74, 0xCA, 0x53, 0xCA, 0x54, 0x01, 0xCA, 0x53, 0x84, 0xB2, 0x13, 0xA1, 0xF3, 0x81, 0x93, 0x51, 0x52, 0x49, 0x32, 0x02, 0x49, 0x33, 0x80, 0x51, 0x74, 0x01, 0xD3, 0x95, 0x85, 0xD3, 0x96, 0xD3, 0x75, 0xD3, 0x34, 0xD2, 0xF5, 0xD2, 0xB4, 0x2D, 0x9D, 0x01, 0x06, 0x3F, 0x84, 0x06, 0x1F, 0xC9, 0x93, 0xC9, 0x52, 0xC9, 0x11, 0xC8, 0xF1, 0x01, 0xC0, 0xB1, 0x83, 0xB8, 0xD1, 0x05, 0x9E, 0x05, 0x7E, 0xAB, 0xF7, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x0A, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x84, 0xD3, 0x15, 0xD3, 0x35, 0xCB, 0x15, 0xD2, 0xF4, 0xD2, 0xF5, 0x02, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x01, 0xD2, 0x94, 0x80, 0x41, 0x1C, 0x01, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x80, 0x20, 0x3C, 0x01, 0xC0, 0xB1, 0x86, 0x91, 0x35, 0x02, 0xFF, 0x04, 0x1F, 0x05, 0x1F, 0x06, 0x1F, 0x06, 0xFF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x81, 0xA1, 0xB3, 0xB8, 0xB1, 0x05, 0xB8, 0xD1, 0x84, 0x68, 0xF1, 0x39, 0x11, 0x38, 0xF0, 0x30, 0xF0, 0x30, 0xEF, 0x02, 0x28, 0xCF, 0x81, 0x20, 0xCE, 0x10, 0xF3, 0x02, 0x01, 0x19, 0x80, 0x00, 0xFA, 0x02, 0x01, 0x19, 0x80, 0x10, 0xD0, 0x03, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x13, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x6F, 0x18, + 0xAD, 0x01, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x85, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x20, 0xCE, 0x41, 0x2F, 0x02, 0xD3, 0x75, 0x84, 0x71, 0xD1, 0x20, 0xCE, 0x28, 0xCF, 0x20, 0xCF, 0x28, 0xCE, 0x01, 0x28, 0xCF, 0x02, 0x28, 0xEF, 0x12, 0x30, 0xF0, 0x01, 0x31, 0x10, 0x81, 0x38, 0xF0, 0x30, 0xF0, 0x01, 0x31, 0x11, 0x01, 0x38, 0xF1, 0x80, 0x38, 0xF0, 0x02, 0x39, 0x10, 0x02, 0x39, 0x11, 0x80, 0x39, 0x10, 0x01, 0x61, 0x52, 0x80, 0x51, 0x31, 0x02, 0x39, 0x11, 0x83, 0x39, 0x12, 0x41, 0x12, 0x41, 0x32, 0x41, 0x12, 0x01, 0x49, 0x32, 0x80, 0x8A, 0x34, 0x01, 0xD3, 0x95, 0x85, 0xD3, 0x75, 0xD3, 0x35, 0xD2, 0xF4, 0xCA, 0xD4, 0xB2, 0xF6, 0x06, 0x5F, 0x01, 0x06, 0x1F, 0x89, 0x34, 0xDC, 0xC9, 0x52, 0xC9, 0x12, 0xC8, 0xD2, 0xC0, 0xB1, 0xC0, 0xD1, 0xB8, 0xD1, 0x89, 0xB4, 0x2B, 0xBA, 0x42, 0x16, 0x01, 0x51, 0x54, 0x8A, 0x49, 0x54, 0x51, 0x54, 0x61, 0x94, 0x71, 0xD4, 0x69, 0xF4, 0x71, 0xD3, 0x69, 0xD4, 0x71, 0xD3, 0x7A, 0x14, 0x8A, 0x75, 0x92, 0x74, 0x01, 0x92, 0x54, 0x83, 0x9A, 0x95, 0xB3, 0x15, 0xBB, 0x14, 0xD3, 0x96, 0x04, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x83, 0xD3, 0x14, 0xD3, 0x15, 0xD2, 0xF4, 0xCB, 0x14, 0x01, 0xD2, 0xF4, 0x84, 0xD2, 0xD4, 0xCA, 0xD4, 0xCA, 0xB4, 0xD2, 0xB4, 0xCA, 0xB4, 0x01, 0xCA, 0x94, 0x80, 0x81, 0xB8, 0x01, 0x00, 0x5F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x88, 0xA8, 0xB3, 0xC0, 0xB1, 0xB0, 0xD2, 0x02, 0xDF, 0x03, 0xFF, 0x05, 0x1F, 0x06, 0x1F, 0x06, 0xFF, 0x07, 0xBF, + 0x04, 0x07, 0xFF, 0x80, 0x8A, 0x95, 0x06, 0xB8, 0xD1, 0x84, 0x78, 0xF2, 0x39, 0x11, 0x38, 0xF0, 0x30, 0xF0, 0x28, 0xF0, 0x01, 0x28, 0xCF, 0x83, 0x28, 0xCE, 0x20, 0xCE, 0x20, 0xCF, 0x09, 0x18, 0x01, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x16, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x65, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x87, 0x20, 0xCD, 0x20, 0xAE, 0x20, 0xCD, 0x92, 0x72, 0xD3, 0x75, 0xC3, 0x34, 0x61, 0xD1, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x07, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x80, 0x30, 0xEF, 0x17, 0x30, 0xF0, 0x81, 0x38, 0xF0, 0x30, 0xF0, 0x01, 0x31, 0x10, 0x88, 0x30, 0xF0, 0x31, 0x10, 0x38, 0xF0, 0x30, 0xF0, 0x38, 0xF0, 0x31, 0x11, 0x38, 0xF0, 0x39, 0x11, 0x38, 0xF1, 0x01, 0x39, 0x11, 0x81, 0x39, 0x12, 0x41, 0x11, 0x01, 0x41, 0x32, 0x8D, 0xB2, 0xF5, 0xD3, 0x95, 0xD3, 0x75, 0xD3, 0x55, 0xD2, 0xF4, 0xD2, 0xB4, 0xD2, 0x74, 0x83, 0xB8, 0x06, 0x3F, 0x06, 0x1F, 0x06, 0x1E, 0x63, 0x98, 0xC9, 0x12, 0xC8, 0xD1, 0x01, 0xC0, 0xB1, 0x87, 0xB8, 0xB1, 0xB8, 0xD1, 0x79, 0x33, 0x51, 0x53, 0x51, 0x34, 0x51, 0x54, 0x51, 0x33, 0x49, 0x53, 0x02, 0x49, 0x33, 0x81, 0x41, 0x33, 0x49, 0x33, 0x02, 0x49, 0x32, 0x02, 0x49, 0x33, 0x01, 0x49, 0x32, 0x02, 0x49, 0x33, 0x83, 0x61, 0xB3, 0x7A, 0x34, 0x9A, 0x95, 0xB2, 0xF5, 0x01, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x01, + 0xD3, 0x35, 0x01, 0xD3, 0x14, 0x80, 0xD3, 0x15, 0x02, 0xD2, 0xF4, 0x01, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x01, 0xD2, 0x94, 0x83, 0xD2, 0x74, 0xCA, 0x74, 0xC2, 0x54, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x8A, 0x00, 0x3F, 0x00, 0x1F, 0x58, 0x78, 0xB8, 0xD1, 0xC0, 0xB1, 0x02, 0xBF, 0x03, 0xBF, 0x04, 0xFF, 0x05, 0xFF, 0x06, 0xFF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x80, 0x64, 0x78, 0x06, 0xB8, 0xD1, 0x82, 0x78, 0xF1, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x81, 0x20, 0xCF, 0x09, 0x17, 0x01, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x08, 0xF4, 0x18, 0xCE, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x67, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x20, 0xCD, 0x18, 0xCE, 0x20, 0xAE, 0x39, 0x0F, 0xD3, 0x75, 0xCB, 0x35, 0x41, 0x4F, 0x04, 0x20, 0xCE, 0x09, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x03, 0x28, 0xCF, 0x02, 0x28, 0xEF, 0x07, 0x30, 0xEF, 0x81, 0x30, 0xF0, 0x28, 0xF0, 0x02, 0x30, 0xF0, 0x85, 0x28, 0xF0, 0x30, 0xF0, 0x30, 0xEF, 0x31, 0x10, 0x30, 0xF0, 0x30, 0xD0, 0x04, 0x30, 0xF0, 0x80, 0x30, 0xF1, 0x01, 0x30, 0xF0, 0x94, 0x38, 0xF0, 0x39, 0x11, 0x39, 0x10, 0x39, 0x11, 0x38, 0xF1, 0x39, 0x11, 0x39, 0x12, 0x49, 0x52, 0xD3, 0x95, 0xD3, 0x75, 0xD3, 0x35, 0xD2, 0xF4, 0xD2, 0xB4, 0xD2, 0x74, 0xCA, 0x33, 0x4C, 0x9A, 0x05, 0xFF, 0x06, 0x1F, 0x05, 0xFF, 0xA1, 0xF4, 0xC0, 0xD1, 0x01, + 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x81, 0xA0, 0xF1, 0x51, 0x34, 0x04, 0x49, 0x33, 0x02, 0x49, 0x32, 0x02, 0x41, 0x32, 0x05, 0x41, 0x12, 0x04, 0x41, 0x32, 0x8A, 0x41, 0x33, 0x49, 0x33, 0x49, 0x32, 0x49, 0x53, 0x61, 0x93, 0x82, 0x14, 0xA2, 0x74, 0xC3, 0x15, 0xD3, 0x35, 0xD3, 0x14, 0xD3, 0x15, 0x01, 0xD2, 0xF4, 0x80, 0xD2, 0xF5, 0x02, 0xD2, 0xD4, 0x80, 0xD2, 0xB4, 0x01, 0xCA, 0xB4, 0x80, 0xCA, 0x94, 0x02, 0xCA, 0x74, 0x8E, 0xCA, 0x54, 0x20, 0xFD, 0x00, 0x9F, 0x00, 0x7F, 0x00, 0x5F, 0x00, 0x3F, 0x10, 0x5D, 0xC0, 0xB1, 0xC0, 0xD1, 0x02, 0x9F, 0x03, 0xBF, 0x04, 0xDF, 0x05, 0xFF, 0x06, 0xFF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x80, 0x54, 0xD9, 0x01, 0xB8, 0xD1, 0x80, 0xB8, 0xB1, 0x03, 0xB8, 0xD1, 0x82, 0x78, 0xF1, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xCF, 0x82, 0x28, 0xCE, 0x20, 0xCF, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x16, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x74, 0x18, 0xAD, 0x86, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x20, 0xAE, 0x61, 0xD0, 0xBB, 0x14, 0x41, 0x2F, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x82, 0x28, 0xCE, 0x20, 0xCE, 0x20, 0xCF, 0x18, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x86, 0x28, 0xCF, 0x28, 0xF0, 0x30, 0xD0, 0x28, 0xEF, 0x28, 0xCF, 0x30, 0xCF, 0x30, 0xF0, 0x01, 0x30, 0xD0, 0x80, 0x28, 0xF0, 0x02, 0x30, 0xF0, 0x80, 0x30, 0xD0, 0x03, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x02, 0x39, 0x11, 0x88, 0x61, 0xB2, 0xD3, 0x75, + 0xD3, 0x35, 0xD2, 0xF4, 0xCA, 0xD4, 0xCA, 0x74, 0xD2, 0x33, 0xCA, 0x13, 0x1D, 0x9D, 0x01, 0x05, 0xFF, 0x81, 0x1D, 0x3D, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x81, 0xB0, 0xD1, 0x61, 0x32, 0x01, 0x49, 0x33, 0x81, 0x49, 0x32, 0x41, 0x32, 0x02, 0x41, 0x12, 0x81, 0x41, 0x32, 0x41, 0x12, 0x01, 0x41, 0x11, 0x01, 0x41, 0x12, 0x80, 0x41, 0x11, 0x01, 0x39, 0x11, 0x80, 0x41, 0x11, 0x01, 0x41, 0x12, 0x81, 0x39, 0x12, 0x41, 0x32, 0x02, 0x41, 0x12, 0x80, 0x49, 0x12, 0x01, 0x41, 0x32, 0x88, 0x49, 0x32, 0x49, 0x33, 0x49, 0x53, 0x49, 0x33, 0x61, 0x73, 0x8A, 0x14, 0xAA, 0x74, 0xCA, 0xF4, 0xD2, 0xF5, 0x02, 0xD2, 0xD4, 0x89, 0xD2, 0xB4, 0xCA, 0xB4, 0xD2, 0xB4, 0xD2, 0x94, 0xCA, 0x94, 0xCA, 0x73, 0xD2, 0x74, 0xD2, 0x53, 0xD2, 0x54, 0x59, 0x7A, 0x01, 0x00, 0xBF, 0x01, 0x00, 0x9F, 0x88, 0x00, 0x5F, 0xA8, 0xB3, 0xC0, 0xB1, 0x31, 0xFC, 0x03, 0x9F, 0x04, 0xDF, 0x05, 0xDF, 0x06, 0xDF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x80, 0x2E, 0x3C, 0x03, 0xB8, 0xD1, 0x80, 0xB8, 0xB1, 0x01, 0xB8, 0xD1, 0x81, 0x78, 0xF1, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x84, 0x20, 0xAD, 0x20, 0xAE, 0x18, 0xCE, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAF, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAF, 0x63, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAD, + 0x20, 0xAE, 0x39, 0x0F, 0x28, 0xCE, 0x20, 0xAE, 0x20, 0xCE, 0x20, 0xAE, 0x0A, 0x20, 0xCE, 0x1C, 0x28, 0xCF, 0x02, 0x28, 0xEF, 0x80, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xEF, 0x05, 0x30, 0xF0, 0x88, 0x39, 0x11, 0x71, 0xF2, 0xD3, 0x35, 0xD2, 0xF4, 0xD2, 0xB4, 0xCA, 0x74, 0xD2, 0x33, 0xCA, 0x13, 0xA2, 0x95, 0x02, 0x05, 0xFF, 0x82, 0x53, 0x99, 0xC0, 0xD1, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x84, 0xB0, 0xD1, 0x79, 0x12, 0x49, 0x52, 0x41, 0x32, 0x41, 0x12, 0x02, 0x41, 0x32, 0x80, 0x41, 0x12, 0x03, 0x39, 0x11, 0x80, 0x38, 0xF1, 0x0B, 0x39, 0x11, 0x80, 0x41, 0x11, 0x03, 0x41, 0x12, 0x80, 0x41, 0x32, 0x01, 0x49, 0x32, 0x01, 0x49, 0x33, 0x86, 0x51, 0x33, 0x61, 0x94, 0x9A, 0x34, 0xC2, 0xB4, 0xD2, 0xB5, 0xD2, 0xB3, 0xCA, 0xB4, 0x01, 0xD2, 0x94, 0x80, 0xCA, 0x93, 0x01, 0xD2, 0x74, 0x83, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0x81, 0xD8, 0x02, 0x00, 0xDF, 0x01, 0x00, 0xBF, 0x87, 0x68, 0xB7, 0xB8, 0xD1, 0x31, 0xDC, 0x03, 0x3F, 0x04, 0x9F, 0x05, 0xDF, 0x06, 0xFF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x80, 0x26, 0xBD, 0x03, 0xB8, 0xD1, 0x80, 0xB8, 0xD2, 0x01, 0xB8, 0xD1, 0x85, 0x78, 0xF1, 0x39, 0x11, 0x38, 0xF1, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x01, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x81, 0x18, 0xB0, 0x01, 0x18, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF6, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x85, 0x10, 0xCF, 0x00, 0xF8, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF6, + 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x38, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x0B, 0x20, 0xCE, 0x07, 0x20, 0xCF, 0x1B, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xF0, 0x01, 0x30, 0xF0, 0x88, 0x38, 0xF0, 0x82, 0x13, 0xD2, 0xF5, 0xCA, 0xD4, 0xD2, 0x74, 0xCA, 0x53, 0xC9, 0xF3, 0xC9, 0xD2, 0x73, 0x98, 0x01, 0x05, 0xFF, 0x81, 0x05, 0xDF, 0xA9, 0x53, 0x03, 0xB8, 0xD1, 0x80, 0x98, 0xF2, 0x01, 0x41, 0x32, 0x80, 0x41, 0x12, 0x01, 0x41, 0x11, 0x07, 0x39, 0x11, 0x03, 0x38, 0xF0, 0x80, 0x39, 0x11, 0x01, 0x38, 0xF0, 0x08, 0x39, 0x11, 0x02, 0x41, 0x12, 0x01, 0x41, 0x32, 0x02, 0x49, 0x33, 0x8D, 0x51, 0x53, 0x59, 0x74, 0x92, 0x14, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x74, 0xCA, 0x74, 0xD2, 0x74, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0xCA, 0x34, 0x99, 0xF6, 0x01, 0x01, 0x1F, 0x02, 0x00, 0xFF, 0x87, 0x38, 0xDB, 0xC0, 0xB1, 0x28, 0xFC, 0x02, 0xDF, 0x04, 0x7F, 0x05, 0x9F, 0x06, 0xDF, 0x07, 0xBF, 0x05, 0x07, 0xFF, 0x06, 0xB8, 0xD1, 0x82, 0x78, 0xF1, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x14, 0x18, 0xAD, 0x89, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xB0, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF6, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, + 0x08, 0xF6, 0x2A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x31, 0x0E, 0x7A, 0x32, 0xAA, 0xD3, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x68, 0xD3, 0x95, 0x91, 0xD3, 0x96, 0xD3, 0x95, 0xD3, 0x35, 0xD2, 0xB4, 0xCA, 0x94, 0xCA, 0x33, 0xD1, 0xF3, 0xC9, 0xD3, 0xC9, 0x93, 0xC9, 0x72, 0xC9, 0x92, 0xC9, 0x72, 0xC9, 0x32, 0xC0, 0xD1, 0xC0, 0xB1, 0xB8, 0xD1, 0xB0, 0xD2, 0xB9, 0xF2, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x0B, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xD3, 0x96, 0x12, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x0A, 0xD3, 0x95, 0x81, 0xCA, 0x13, 0x01, 0x5F, 0x02, 0x01, 0x3F, 0x88, 0x01, 0x1F, 0x09, 0x3F, 0xC0, 0xB1, 0x31, 0x1C, 0x01, 0xBF, 0x03, 0xFF, 0x05, 0x9F, 0x06, 0x9F, 0x07, 0x9F, 0x05, 0x07, 0xFF, 0x80, 0xB8, 0xB1, 0x05, 0xB8, 0xD1, 0x80, 0x78, 0xF1, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x15, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xB0, 0x04, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x10, 0xCF, 0x01, 0x18, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x49, 0x6F, 0xAA, 0xD3, 0x06, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x6E, 0xD3, 0x95, 0x8B, 0xD2, 0xF4, 0xCA, 0x74, 0xCA, 0x33, 0xCA, 0x13, 0xC9, 0xD3, 0xC9, 0x92, 0xC9, + 0x52, 0xC1, 0x11, 0xC0, 0xD1, 0xC0, 0xB1, 0xC0, 0xD1, 0xB8, 0xB1, 0x01, 0xB8, 0xD1, 0x80, 0xCA, 0x53, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x08, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x1E, 0xD3, 0x95, 0x84, 0xCA, 0x13, 0x09, 0x7F, 0x01, 0x7F, 0x01, 0x5F, 0x01, 0x7F, 0x01, 0x01, 0x5F, 0x86, 0x88, 0xF5, 0x29, 0x3C, 0x01, 0x3F, 0x02, 0xDF, 0x05, 0x3E, 0x06, 0x7F, 0x07, 0x7F, 0x05, 0x07, 0xFF, 0x80, 0x92, 0x34, 0x05, 0xB8, 0xD1, 0x80, 0x78, 0xF1, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x14, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xD0, 0x00, 0xF8, 0x03, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x80, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x20, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x82, 0x20, 0xEE, 0x82, 0x52, 0xD3, 0x96, 0x0A, 0xD3, 0x95, 0x80, 0xD3, 0xB5, 0x6B, 0xD3, 0x95, 0x87, 0xD2, 0xB4, 0xD2, 0x33, 0xCA, 0x13, 0xC9, 0xB3, 0xC9, 0x92, 0xC9, 0x52, 0xC9, 0x12, 0xC8, 0xD1, 0x01, 0xC0, 0xB1, 0x80, 0xB8, 0xB1, 0x01, 0xB8, 0xD1, 0x80, 0xC2, 0x53, 0x13, 0xD3, 0x95, 0x80, 0xDB, 0x95, 0x15, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x08, 0xD3, 0x95, 0x82, 0xCA, 0x13, 0x31, 0xBC, 0x01, 0xBF, 0x03, 0x01, 0x9F, 0x87, 0x51, 0x39, 0x31, 0x5C, 0x01, 0x7F, 0x01, 0xBF, 0x04, 0x5E, 0x06, 0x3E, 0x07, 0x7F, 0x07, 0xFE, + 0x04, 0x07, 0xFF, 0x80, 0x8A, 0x95, 0x03, 0xB8, 0xD1, 0x82, 0xB0, 0xD1, 0xB8, 0xD1, 0x78, 0xF1, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x14, 0x18, 0xAD, 0x81, 0x10, 0xD0, 0x01, 0x18, 0x06, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x81, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x00, 0xFA, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x26, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x28, 0xEE, 0xB3, 0x14, 0x04, 0xD3, 0x95, 0x83, 0xD4, 0xF8, 0xD6, 0x5C, 0xD6, 0xDD, 0xD6, 0xFD, 0x01, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x01, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x68, 0xD7, 0xFF, 0x88, 0xDF, 0xFF, 0xD7, 0xFF, 0xCB, 0x15, 0xCA, 0x13, 0xC9, 0xD3, 0xC9, 0x92, 0xC9, 0x32, 0xC9, 0x11, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x02, 0xB8, 0xD1, 0x80, 0xC3, 0x97, 0x09, 0xDF, 0xFF, 0x06, 0xD7, 0xFF, 0x81, 0xDF, 0xFF, 0xD5, 0x39, 0x19, 0xD3, 0x95, 0x80, 0xDB, 0x95, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x81, 0xC9, 0xF3, 0x31, 0xFC, 0x04, 0x01, 0xDF, 0x81, 0x01, 0xBF, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x82, 0x02, 0xDF, 0x05, 0xFD, 0x07, 0x3E, 0x01, 0x07, 0xFE, 0x03, 0x07, 0xFF, 0x80, 0x8A, 0xB5, 0x03, 0xB8, 0xD1, 0x82, 0xB0, 0xF1, 0xB8, 0xD1, 0x78, 0xF1, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x14, 0x18, 0xAD, 0x80, 0x00, 0xF9, 0x05, 0x01, 0x19, + 0x88, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x10, 0xD0, 0x00, 0xF8, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x02, 0x18, 0xAE, 0x25, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAE, 0x28, 0xEE, 0xCB, 0x55, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0xD6, 0xD5, 0xDB, 0xD7, 0xBF, 0x72, 0xD7, 0xFF, 0x01, 0xDF, 0xFF, 0x8D, 0xCA, 0x13, 0xC9, 0xB3, 0xC9, 0x92, 0xC9, 0x52, 0xC9, 0x12, 0xC0, 0xD1, 0xC0, 0xB1, 0xC0, 0xD1, 0xB8, 0xB1, 0xB8, 0xD1, 0xB0, 0xF1, 0xBA, 0x95, 0xDF, 0xFF, 0xD7, 0xFF, 0x04, 0xDF, 0xFF, 0x80, 0xD7, 0xFF, 0x04, 0xDF, 0xFF, 0x05, 0xD7, 0xFF, 0x81, 0xDF, 0xFF, 0xD5, 0x39, 0x21, 0xD3, 0x95, 0x82, 0xC9, 0xF3, 0x31, 0xFD, 0x02, 0x1F, 0x06, 0x01, 0xFF, 0x85, 0x01, 0xDF, 0x01, 0xFF, 0x05, 0x1D, 0x07, 0x1D, 0x07, 0xFD, 0x07, 0xFE, 0x03, 0x07, 0xFF, 0x80, 0x6B, 0xF7, 0x04, 0xB8, 0xD1, 0x81, 0xB0, 0xD1, 0x78, 0xF1, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x14, 0x18, 0xAD, 0x04, 0x01, 0x19, 0x85, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xCF, 0x03, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x2A, 0x18, 0xAD, 0x81, 0x28, 0xEE, 0xB3, 0x14, 0x02, 0xD3, 0x95, 0x81, 0xD4, 0x77, 0xD7, 0x7E, 0x01, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x03, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x6E, 0xD7, 0xFF, 0x84, 0xC9, 0xD3, 0xC9, 0x92, 0xC9, 0x52, + 0xC9, 0x12, 0xC8, 0xD1, 0x01, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x82, 0xB0, 0xD1, 0xB1, 0x52, 0xD7, 0x9E, 0x02, 0xDF, 0xFF, 0x80, 0xD7, 0xFF, 0x03, 0xDF, 0xFF, 0x81, 0xD7, 0xFF, 0xDF, 0xFF, 0x0A, 0xD7, 0xFF, 0x80, 0xD5, 0x39, 0x20, 0xD3, 0x95, 0x81, 0xC9, 0xD3, 0x32, 0x3C, 0x01, 0x02, 0x3F, 0x80, 0x02, 0x1F, 0x01, 0x02, 0x3F, 0x04, 0x02, 0x1F, 0x81, 0x03, 0x7E, 0x06, 0xDC, 0x01, 0x07, 0xFD, 0x80, 0x07, 0xFE, 0x02, 0x07, 0xFF, 0x80, 0x5C, 0x78, 0x02, 0xB8, 0xD1, 0x83, 0xB0, 0xD1, 0xB8, 0xD1, 0xB0, 0xF1, 0x79, 0x11, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x14, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x85, 0x01, 0x1A, 0x01, 0x17, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD0, 0x00, 0xF9, 0x06, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x82, 0x52, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xD4, 0xB8, 0xD7, 0xBF, 0x77, 0xD7, 0xFF, 0x83, 0xC9, 0x72, 0xC9, 0x52, 0xC9, 0x12, 0xC8, 0xD1, 0x01, 0xC0, 0xB1, 0x02, 0xB8, 0xD1, 0x81, 0xB0, 0xF1, 0xD6, 0x3C, 0x01, 0xDF, 0xFF, 0x80, 0xD7, 0xFF, 0x01, 0xDF, 0xFF, 0x80, 0xD7, 0xFF, 0x01, 0xDF, 0xFF, 0x01, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x08, 0xD7, 0xFF, 0x83, 0xDF, 0xFF, 0xD7, 0xFF, 0xDF, 0xFF, 0xD5, 0x39, 0x14, 0xD3, 0x95, 0x01, 0xD3, 0x96, 0x08, 0xD3, + 0x95, 0x82, 0xC9, 0xD3, 0x32, 0x5C, 0x02, 0x7F, 0x02, 0x02, 0x5F, 0x80, 0x02, 0x3F, 0x01, 0x02, 0x5F, 0x02, 0x02, 0x3F, 0x81, 0x02, 0x9F, 0x06, 0x7C, 0x01, 0x07, 0xFC, 0x80, 0x07, 0xFE, 0x02, 0x07, 0xFF, 0x83, 0x5C, 0x78, 0xB8, 0xD1, 0xB0, 0xD1, 0xB8, 0xD1, 0x01, 0xB0, 0xD1, 0x81, 0xB8, 0xD1, 0x70, 0xF1, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x14, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xCF, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x2B, 0x18, 0xAD, 0x80, 0x49, 0x6F, 0x02, 0xD3, 0x95, 0x81, 0xD4, 0x57, 0xD7, 0xBF, 0x73, 0xD7, 0xFF, 0x87, 0xD7, 0xDF, 0xD7, 0xFF, 0xCF, 0x3E, 0xC6, 0x7C, 0xC5, 0x3A, 0xC9, 0x51, 0xC9, 0x12, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x82, 0xB0, 0xD1, 0xB0, 0xF1, 0xBB, 0x97, 0x18, 0xD7, 0xFF, 0x82, 0xD6, 0x5B, 0xD3, 0x95, 0xD3, 0x96, 0x17, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x83, 0xD3, 0x96, 0xD3, 0x95, 0xC9, 0xB3, 0x32, 0x7C, 0x03, 0x02, 0x9F, 0x04, 0x02, 0x7F, 0x85, 0x02, 0x5F, 0x02, 0x7F, 0x05, 0xBC, 0x07, 0xDB, 0x07, 0xFC, 0x07, 0xFD, 0x02, 0x07, 0xFF, 0x82, 0x5C, 0x78, 0xB8, 0xD1, 0xB0, 0xD1, 0x02, 0xB8, 0xD1, 0x84, 0xB0, 0xD1, 0x58, 0xF1, 0x39, 0x11, 0x31, 0x11, 0x30, 0xF0, 0x01, 0x28, 0xF0, 0x81, 0x28, 0xCF, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x14, 0x18, 0xAD, + 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x87, 0x01, 0x1A, 0x01, 0x17, 0x18, 0xCE, 0x18, 0xAE, 0x18, 0xD0, 0x01, 0x18, 0x00, 0xF9, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x2B, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0xA2, 0xD3, 0x01, 0xD3, 0x95, 0x81, 0xD3, 0xD6, 0xD7, 0x5E, 0x01, 0xCF, 0xFF, 0x01, 0xD7, 0xFF, 0x01, 0xCF, 0xFF, 0x01, 0xD7, 0xFF, 0x80, 0xD7, 0xDF, 0x02, 0xD7, 0xFF, 0x80, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x8A, 0xCF, 0xDF, 0xCF, 0xFF, 0xD7, 0xFF, 0xD7, 0xDF, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xFF, 0xD7, 0xDF, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xDF, 0x01, 0xCF, 0xFF, 0x01, 0xD7, 0xFF, 0x83, 0xCF, 0xFF, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xFF, 0x01, 0xD7, 0xDF, 0x82, 0xCF, 0xFF, 0xD7, 0xDF, 0xCF, 0xFF, 0x01, 0xD7, 0xFF, 0x84, 0xCF, 0xFF, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xFF, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x01, 0xCF, 0xFF, 0x85, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xDF, 0xCF, 0xFF, 0xD7, 0xFF, 0xD7, 0xDF, 0x37, 0xD7, 0xFF, 0x89, 0xCF, 0xFF, 0xD7, 0xFF, 0xCF, 0xDF, 0xD7, 0xDF, 0xCF, 0xDF, 0xCF, 0xFF, 0xD7, 0xDF, 0xAC, 0xD8, 0x81, 0x91, 0x91, 0x51, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x82, 0xA8, 0xF1, 0xA9, 0x72, 0xD7, 0x7E, 0x01, 0xD7, 0xFF, 0x01, 0xD7, 0xDF, 0x02, 0xD7, 0xFF, 0x81, 0xD7, 0xDF, 0xCF, 0xFF, 0x05, 0xD7, 0xFF, 0x01, 0xD7, 0xDF, 0x03, 0xD7, 0xFF, 0x85, 0xD7, 0xDF, 0xD7, 0xFF, 0xD7, 0xDF, 0xD7, 0xFF, 0xD7, 0xDF, 0xD6, 0x5C, 0x1D, 0xD3, 0x95, 0x83, 0xC1, 0x93, 0x0A, 0x7F, 0x02, 0xFF, 0x02, 0xDF, + 0x02, 0x02, 0xBF, 0x02, 0x02, 0x9F, 0x86, 0x02, 0x7F, 0x02, 0x9F, 0x02, 0x7F, 0x04, 0xDD, 0x07, 0xBB, 0x07, 0xFB, 0x07, 0xFD, 0x02, 0x07, 0xFF, 0x80, 0x3D, 0xBB, 0x01, 0xB8, 0xD1, 0x80, 0xB0, 0xF1, 0x02, 0xB0, 0xD1, 0x81, 0x59, 0x11, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x03, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x14, 0x18, 0xAD, 0x87, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAF, 0x01, 0x18, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x17, 0x18, 0xAE, 0x2C, 0x18, 0xAD, 0x81, 0x31, 0x0E, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x80, 0xD5, 0xBA, 0x0F, 0xCF, 0xDF, 0x88, 0xC7, 0x7E, 0xBE, 0x5B, 0xBE, 0x3C, 0xB5, 0x7A, 0xAC, 0xB8, 0xBD, 0xBB, 0xC6, 0x3C, 0xBE, 0x3B, 0xC7, 0x1E, 0x0B, 0xCF, 0xDF, 0x88, 0xC7, 0x7E, 0xBE, 0x5C, 0xB5, 0xDB, 0xAC, 0xB8, 0xAC, 0x98, 0xBD, 0x5A, 0xBE, 0x3C, 0xC6, 0x1C, 0xC6, 0x9D, 0x49, 0xCF, 0xDF, 0x83, 0xAC, 0xB9, 0x81, 0x91, 0x91, 0x51, 0x99, 0x11, 0x03, 0x99, 0x31, 0x83, 0x99, 0x11, 0xA1, 0x11, 0xA9, 0x11, 0xBC, 0x78, 0x02, 0xCF, 0xDF, 0x82, 0xD7, 0xDF, 0xCF, 0xDF, 0xCF, 0x5E, 0x01, 0xBE, 0x5C, 0x82, 0xC6, 0x3C, 0xC6, 0x1C, 0xCE, 0xFD, 0x0E, 0xCF, 0xDF, 0x86, 0xCF, 0xFF, 0xCF, 0xDF, 0xD6, 0x3B, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x75, 0xD3, 0x95, 0x13, 0xD3, 0x75, 0x80, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x83, 0xD3, 0x95, 0x08, 0x9F, 0x01, 0x1F, 0x03, 0x1F, 0x01, 0x02, 0xFF, 0x02, 0x02, 0xDF, 0x04, + 0x02, 0xBF, 0x84, 0x03, 0xFD, 0x07, 0x9A, 0x07, 0xFA, 0x07, 0xFC, 0x07, 0xFE, 0x01, 0x07, 0xFF, 0x81, 0x2E, 0x5C, 0xB0, 0xD1, 0x01, 0xB8, 0xD1, 0x88, 0xB0, 0xF1, 0xB0, 0xD1, 0xB8, 0xD1, 0x59, 0x12, 0x39, 0x11, 0x38, 0xF1, 0x30, 0xF0, 0x28, 0xF0, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x18, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xAE, 0x2D, 0x18, 0xAD, 0x80, 0x79, 0xF1, 0x02, 0xD3, 0x55, 0x83, 0xCF, 0x7E, 0xC7, 0xDF, 0xCF, 0xBF, 0xCF, 0xDF, 0x01, 0xC7, 0xDF, 0x03, 0xCF, 0xDF, 0x80, 0xCF, 0xBF, 0x01, 0xCF, 0xDF, 0x85, 0xCF, 0xBF, 0xBE, 0xFD, 0xAC, 0xB8, 0x8A, 0x52, 0x91, 0x51, 0x91, 0x31, 0x05, 0x99, 0x31, 0x8E, 0x99, 0x11, 0xA1, 0x92, 0xAB, 0x96, 0xBE, 0x7D, 0xCF, 0xDF, 0xC7, 0xDF, 0xCF, 0xBF, 0xC7, 0xDF, 0xCF, 0xDF, 0xCF, 0xBF, 0xC7, 0x5E, 0xAD, 0x19, 0x92, 0xB4, 0x89, 0x71, 0x91, 0x51, 0x01, 0x99, 0x31, 0x01, 0x99, 0x11, 0x87, 0xA1, 0x11, 0x99, 0x31, 0xA1, 0x11, 0x99, 0x11, 0xAB, 0x36, 0xBD, 0x5A, 0xC7, 0x5E, 0xCF, 0xDF, 0x01, 0xC7, 0xBF, 0x83, 0xCF, 0xDF, 0xC7, 0xDF, 0xC7, 0xBF, 0xC7, 0xDF, 0x38, 0xCF, 0xDF, 0x8A, 0xC7, 0xDF, 0xCF, 0xBF, 0xC7, 0xDF, 0xC7, 0xBF, 0xCF, 0xBF, 0xC7, 0xDF, 0xA4, 0xB8, 0x81, 0x91, 0x91, 0x51, 0x99, 0x31, 0x99, 0x11, 0x01, 0x99, 0x31, 0x86, 0x99, 0x11, 0x99, 0x31, 0x99, 0x12, 0xBE, 0x3B, 0xCF, 0xBF, 0xCF, 0xDF, 0xCF, + 0xBF, 0x01, 0xCF, 0xDF, 0x82, 0xB5, 0xDA, 0x8A, 0x12, 0x89, 0x71, 0x01, 0x99, 0x31, 0x85, 0xA1, 0x11, 0x99, 0x31, 0xAB, 0x35, 0xC7, 0x5E, 0xCF, 0xBF, 0xCF, 0xDF, 0x01, 0xC7, 0xDF, 0x01, 0xCF, 0xDF, 0x80, 0xCF, 0xBF, 0x01, 0xC7, 0xDF, 0x02, 0xCF, 0xDF, 0x80, 0xC7, 0xDF, 0x02, 0xCF, 0xDF, 0x80, 0xCE, 0x1B, 0x1B, 0xD3, 0x55, 0x83, 0x00, 0x7F, 0x00, 0x9E, 0x02, 0x3F, 0x03, 0x3F, 0x02, 0x03, 0x1F, 0x82, 0x02, 0xFF, 0x03, 0x1F, 0x02, 0xFF, 0x02, 0x02, 0xDF, 0x84, 0x03, 0x9E, 0x07, 0x5A, 0x07, 0xF9, 0x07, 0xFB, 0x07, 0xFD, 0x01, 0x07, 0xFF, 0x84, 0x2E, 0x3C, 0xB8, 0xD2, 0xB8, 0xD1, 0xB0, 0xD1, 0xB8, 0xD1, 0x01, 0xB0, 0xD1, 0x87, 0x49, 0x11, 0x39, 0x11, 0x38, 0xF0, 0x30, 0xF0, 0x28, 0xF0, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x15, 0x18, 0xAD, 0x85, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x2D, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0xA2, 0x93, 0x01, 0xD3, 0x35, 0x82, 0xCC, 0x98, 0xC7, 0xBF, 0xC7, 0xBE, 0x09, 0xC7, 0xBF, 0x85, 0xC7, 0x5E, 0xA4, 0xB8, 0x81, 0x91, 0x91, 0x51, 0x99, 0x11, 0xA1, 0x31, 0x01, 0xA1, 0x11, 0x82, 0x99, 0x31, 0xA1, 0x11, 0xA1, 0x12, 0x05, 0xA1, 0x11, 0x89, 0xAB, 0x35, 0xBE, 0xFE, 0xC7, 0xBF, 0xC7, 0xBE, 0xC7, 0xBF, 0xB5, 0xDB, 0x89, 0xF1, 0x89, 0x71, 0x99, 0x31, 0x99, 0x11, 0x04, 0xA1, 0x11, 0x81, 0xA1, 0x32, 0x99, 0x11, 0x03, 0xA1, 0x11, 0x82, 0xA1, + 0x72, 0xBD, 0x3A, 0xC7, 0xBE, 0x02, 0xC7, 0xBF, 0x81, 0xC7, 0xBE, 0xC7, 0x9F, 0x37, 0xC7, 0xBF, 0x80, 0xC7, 0x9F, 0x05, 0xC7, 0xBF, 0x8B, 0xAC, 0x98, 0x81, 0x91, 0x91, 0x51, 0x99, 0x31, 0xA1, 0x11, 0xA1, 0x31, 0xA1, 0x11, 0xA1, 0x31, 0xA1, 0x11, 0x99, 0x31, 0xBE, 0x1B, 0xC7, 0x9F, 0x02, 0xC7, 0xBF, 0x85, 0xBE, 0xFD, 0x89, 0xF2, 0x89, 0x91, 0x99, 0x31, 0xA1, 0x12, 0xA1, 0x31, 0x02, 0xA1, 0x11, 0x80, 0xAB, 0x97, 0x01, 0xC7, 0xBF, 0x80, 0xC7, 0xBE, 0x0D, 0xC7, 0xBF, 0x81, 0xC6, 0xDD, 0xD3, 0x75, 0x16, 0xD3, 0x35, 0x80, 0xD3, 0x34, 0x01, 0xD3, 0x35, 0x01, 0x00, 0x9F, 0x84, 0x01, 0x3F, 0x03, 0x3F, 0x03, 0x7F, 0x03, 0x5F, 0x03, 0x3F, 0x03, 0x03, 0x1F, 0x01, 0x02, 0xFF, 0x84, 0x03, 0x3F, 0x06, 0xF9, 0x07, 0xF9, 0x07, 0xFB, 0x07, 0xFD, 0x01, 0x07, 0xFF, 0x86, 0x2E, 0x3C, 0xB8, 0xD2, 0xB0, 0xF1, 0xB8, 0xD1, 0xB0, 0xD1, 0xB0, 0xF1, 0xB0, 0xD1, 0x01, 0x39, 0x11, 0x82, 0x38, 0xF0, 0x30, 0xF0, 0x31, 0x10, 0x01, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x82, 0x20, 0xAE, 0x20, 0xAD, 0x20, 0xAE, 0x15, 0x18, 0xAD, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x80, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x84, 0x01, 0x39, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x20, 0xCD, 0x18, 0xAE, 0x28, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0xD3, 0x15, 0x83, 0xD3, 0x14, 0xC5, 0xFB, 0xC7, 0x9F, 0xC7, 0x9E, 0x01, 0xC7, 0xBF, 0x01, 0xC7, 0x9E, 0x89, 0xC7, 0xBF, 0xC7, 0x9F, 0xBF, 0x9E, 0xBF, 0xBF, 0xBF, 0xBE, 0xB6, 0x7C, + 0x8A, 0x53, 0x89, 0x71, 0xA1, 0x31, 0xA1, 0x12, 0x0A, 0xA1, 0x11, 0x80, 0xA1, 0x12, 0x01, 0xA1, 0x11, 0x85, 0xA1, 0x72, 0xB5, 0x39, 0xBF, 0x9F, 0x9B, 0xF6, 0x81, 0x91, 0x91, 0x51, 0x0C, 0xA1, 0x11, 0x80, 0xA1, 0x12, 0x01, 0xA1, 0x11, 0x83, 0xAB, 0x15, 0xBF, 0x3D, 0xC7, 0x9F, 0xC7, 0xBE, 0x01, 0xC7, 0x9F, 0x37, 0xC7, 0x9E, 0x82, 0xC7, 0x9F, 0xC7, 0x9E, 0xC7, 0x9F, 0x01, 0xC7, 0x9E, 0x84, 0xC7, 0xBF, 0xC7, 0x9F, 0xA4, 0xB8, 0x81, 0x91, 0x91, 0x51, 0x04, 0xA1, 0x11, 0x89, 0xA1, 0x12, 0xA1, 0x11, 0xBD, 0xFB, 0xC7, 0x9F, 0xC7, 0x9E, 0xC7, 0xBE, 0xC7, 0x9F, 0xAC, 0xF9, 0x81, 0x91, 0x91, 0x71, 0x02, 0xA1, 0x11, 0x85, 0xA1, 0x12, 0xA1, 0x11, 0xA1, 0x31, 0xA1, 0x11, 0xBF, 0x3E, 0xBF, 0xBF, 0x02, 0xC7, 0x9E, 0x80, 0xC7, 0xBF, 0x02, 0xC7, 0x9E, 0x80, 0xBF, 0xBF, 0x02, 0xC7, 0x9E, 0x89, 0xBF, 0x9E, 0xC7, 0x9F, 0xC7, 0x9E, 0xBF, 0xBE, 0xC7, 0x9E, 0xC6, 0xBD, 0xD3, 0x55, 0xD2, 0xF5, 0xD3, 0x15, 0xCB, 0x14, 0x11, 0xD3, 0x14, 0x02, 0xD3, 0x15, 0x80, 0xD3, 0x14, 0x01, 0x00, 0x7F, 0x81, 0x00, 0xFF, 0x02, 0x7F, 0x01, 0x03, 0x9F, 0x83, 0x03, 0x7F, 0x23, 0x1D, 0x52, 0x59, 0x5A, 0x3A, 0x01, 0x03, 0x3F, 0x01, 0x03, 0x1F, 0x83, 0x06, 0x99, 0x07, 0xF8, 0x07, 0xFA, 0x07, 0xFD, 0x01, 0x07, 0xFF, 0x84, 0x36, 0x3C, 0xB0, 0xD1, 0xB0, 0xF1, 0xB0, 0xD1, 0xB8, 0xD1, 0x01, 0xB0, 0xD1, 0x85, 0x41, 0x12, 0x38, 0xF1, 0x39, 0x11, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x82, 0x20, 0xAE, 0x20, 0xAD, 0x20, 0xAE, 0x15, 0x18, + 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x09, 0x15, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x82, 0x20, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x29, 0x18, 0xAD, 0x83, 0xD2, 0xF4, 0xCA, 0xF4, 0xD2, 0xF4, 0xC6, 0x5C, 0x08, 0xBF, 0x9E, 0x83, 0xBF, 0x7F, 0xB6, 0x7C, 0x8A, 0x12, 0x89, 0x71, 0x01, 0xA1, 0x11, 0x82, 0xA9, 0x11, 0xA1, 0x11, 0xA9, 0x11, 0x02, 0xA1, 0x11, 0x01, 0xA9, 0x11, 0x02, 0xA1, 0x11, 0x80, 0xA9, 0x11, 0x02, 0xA1, 0x11, 0x84, 0xA9, 0x12, 0xA9, 0x11, 0xA1, 0xF3, 0x81, 0x91, 0x99, 0x31, 0x01, 0xA1, 0x11, 0x80, 0xA9, 0x12, 0x04, 0xA1, 0x11, 0x04, 0xA9, 0x11, 0x02, 0xA1, 0x11, 0x83, 0xA1, 0x12, 0xA9, 0x11, 0xAA, 0x54, 0xBF, 0x1D, 0x3F, 0xBF, 0x9E, 0x85, 0xB7, 0x9E, 0xBF, 0x9F, 0xA4, 0x98, 0x81, 0x91, 0x99, 0x51, 0xA9, 0x11, 0x04, 0xA1, 0x11, 0x88, 0xA9, 0x11, 0xB5, 0xFB, 0xBF, 0x9E, 0xBF, 0x9F, 0xBF, 0x9E, 0xBF, 0x9F, 0xA4, 0x98, 0x81, 0x91, 0x99, 0x51, 0x03, 0xA1, 0x11, 0x84, 0xA1, 0x12, 0xA1, 0x11, 0xA9, 0x11, 0xB5, 0xFB, 0xBF, 0x7E, 0x01, 0xBF, 0x9E, 0x80, 0xBF, 0x9F, 0x0D, 0xBF, 0x9E, 0x82, 0xBE, 0xBD, 0xD3, 0x35, 0xCA, 0xF4, 0x12, 0xD2, 0xF4, 0x83, 0xCA, 0xF4, 0xD2, 0xF4, 0xD2, 0xF5, 0xCA, 0xF4, 0x01, 0x00, 0x7F, 0x88, 0x00, 0xBF, 0x02, 0x1F, 0x2A, 0xBD, 0x7A, 0x36, 0xB9, 0x53, 0xC1, 0x12, 0xC9, 0x11, 0xC9, 0x12, 0x0B, 0x3F, 0x01, 0x03, 0x5F, 0x88, 0x03, 0x3F, 0x05, 0xFA, 0x07, 0xF7, 0x07, 0xF9, 0x07, 0xFC, 0x07, 0xFE, 0x07, 0xFF, + 0x2E, 0x3C, 0xB0, 0xD1, 0x01, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x82, 0xA0, 0xF1, 0x68, 0xF1, 0x41, 0x11, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xEF, 0x80, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x19, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x2A, 0x18, 0xAD, 0x02, 0xD2, 0xD4, 0x84, 0xBE, 0x5C, 0xB7, 0x7E, 0xB7, 0x9E, 0xB7, 0x7E, 0xBF, 0x7E, 0x02, 0xB7, 0x7E, 0x88, 0xB7, 0x9E, 0xBF, 0x7E, 0xAE, 0x7B, 0x89, 0xF2, 0x89, 0x71, 0xA1, 0x11, 0xA8, 0xF1, 0xA9, 0x11, 0xA8, 0xF1, 0x04, 0xA9, 0x11, 0x80, 0xA8, 0xF1, 0x02, 0xA9, 0x11, 0x82, 0xA8, 0xF1, 0xA9, 0x11, 0xA8, 0xF1, 0x01, 0xA9, 0x11, 0x80, 0xA9, 0x12, 0x01, 0xA9, 0x11, 0x86, 0xA1, 0x11, 0xA9, 0x11, 0xA8, 0xF1, 0xA9, 0x11, 0xA8, 0xF1, 0xA1, 0x11, 0xA9, 0x11, 0x01, 0xA8, 0xF1, 0x01, 0xA9, 0x11, 0x81, 0xA8, 0xF1, 0xA9, 0x11, 0x01, 0xA8, 0xF1, 0x80, 0xA9, 0x12, 0x02, 0xA9, 0x11, 0x83, 0xA8, 0xF1, 0xA1, 0x11, 0xAA, 0x34, 0xB7, 0x1E, 0x39, 0xBF, 0x7E, 0x01, 0xB7, 0x7E, 0x80, 0xBF, 0x7E, 0x01, 0xB7, 0x7E, 0x84, 0xBF, 0x7F, 0xB7, 0x7E, 0x9C, 0x97, 0x81, 0x91, 0x99, 0x51, 0x04, 0xA8, 0xF1, 0x84, 0xA9, 0x11, 0xA8, 0xF1, 0xB5, 0xDB, 0xBF, 0x7E, 0xB7, 0x7E, 0x01, 0xBF, 0x7E, 0x83, 0xA4, 0x78, 0x81, 0x91, 0x99, 0x51, 0xA9, 0x11, 0x01, 0xA8, 0xF1, 0x01, 0xA9, 0x11, 0x84, 0xA8, 0xF1, 0xA9, 0x11, 0xB5, 0xDB, 0xB7, 0x7F, 0xB7, 0x7E, 0x01, 0xBF, + 0x7E, 0x80, 0xB7, 0x7E, 0x02, 0xBF, 0x7E, 0x01, 0xB7, 0x7E, 0x83, 0xBF, 0x7E, 0xB7, 0x7E, 0xBF, 0x7E, 0xB7, 0x7E, 0x01, 0xBF, 0x7E, 0x01, 0xB7, 0x7E, 0x82, 0xBF, 0x7E, 0xBE, 0x9D, 0xCB, 0x75, 0x15, 0xD2, 0xD4, 0x80, 0xD2, 0xD5, 0x01, 0x00, 0x7F, 0x82, 0x30, 0xBB, 0x99, 0x55, 0xC9, 0x31, 0x01, 0xC9, 0x32, 0x83, 0xC9, 0x12, 0xC0, 0xF2, 0xC8, 0xF2, 0x32, 0xFC, 0x02, 0x03, 0x7F, 0x8F, 0x05, 0x9B, 0x07, 0xF7, 0x07, 0xF9, 0x07, 0xFC, 0x07, 0xFE, 0x07, 0xFF, 0x2E, 0x3C, 0xB8, 0xD1, 0xB0, 0xD1, 0xB0, 0xD2, 0xB0, 0xD1, 0xB0, 0xF1, 0x98, 0xF1, 0xB0, 0xF1, 0x88, 0xF1, 0x31, 0x10, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x53, 0x18, 0xAD, 0x02, 0xD2, 0xB4, 0x08, 0xB7, 0x7E, 0x86, 0xB7, 0x1D, 0x8A, 0x53, 0x81, 0x91, 0xA1, 0x11, 0xA8, 0xF1, 0xB0, 0xF1, 0xA9, 0x11, 0x16, 0xA8, 0xF1, 0x82, 0xA8, 0xF2, 0xA8, 0xF1, 0xB0, 0xF1, 0x0D, 0xA8, 0xF1, 0x80, 0xB2, 0xF5, 0x04, 0xB7, 0x7E, 0x80, 0xB7, 0x5E, 0x02, 0xB7, 0x7E, 0x01, 0xB7, 0x5E, 0x81, 0xB7, 0x7E, 0xB7, 0x5E, 0x01, 0xB7, 0x7E, 0x80, 0xB7, 0x5E, 0x0C, 0xB7, 0x7E, 0x01, 0xB7, 0x5E, 0x14, 0xB7, 0x7E, 0x80, 0xB7, 0x5E, 0x01, 0xB7, 0x7E, 0x82, 0xB7, 0x5E, 0xB7, 0x7E, 0xB7, 0x5E, 0x06, 0xB7, 0x7E, 0x82, 0x9C, 0x78, 0x81, 0x91, 0x99, 0x51, 0x06, 0xA8, 0xF1, 0x80, 0xB5, 0xDB, 0x03, 0xB7, 0x7E, 0x82, 0x9C, 0x77, 0x81, 0x91, 0x91, 0x51, 0x06, 0xA8, 0xF1, 0x80, 0xB5, 0xDB, 0x02, 0xB7, 0x7E, 0x82, 0xB7, 0x5E, 0xB7, 0x7E, + 0xB7, 0x5E, 0x06, 0xB7, 0x7E, 0x80, 0xB7, 0x5E, 0x04, 0xB7, 0x7E, 0x82, 0xB7, 0x5E, 0xB7, 0x1D, 0xCB, 0x96, 0x01, 0xD2, 0xB4, 0x86, 0xCA, 0xB4, 0xD2, 0xB4, 0xCA, 0xB4, 0xD2, 0xB4, 0xCA, 0xB4, 0xD2, 0xB4, 0xCA, 0xB4, 0x07, 0xD2, 0xB4, 0x80, 0xCA, 0x94, 0x02, 0xD2, 0xB4, 0x87, 0xCA, 0xB4, 0x08, 0x7E, 0x70, 0xF8, 0xC9, 0x52, 0xC9, 0x32, 0xC9, 0x12, 0xC9, 0x32, 0xC1, 0x11, 0x01, 0xC8, 0xF1, 0x82, 0xC8, 0xD1, 0x33, 0x1C, 0x03, 0xBF, 0x01, 0x03, 0x9F, 0x87, 0x05, 0x1B, 0x07, 0xD6, 0x07, 0xF7, 0x07, 0xFB, 0x07, 0xFE, 0x07, 0xFF, 0x2E, 0x3C, 0xB8, 0xD1, 0x03, 0xB0, 0xD1, 0x85, 0xA0, 0xF1, 0xB0, 0xF1, 0xB0, 0xD1, 0x50, 0xF0, 0x30, 0xF0, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x55, 0x18, 0xAD, 0x01, 0xD2, 0x94, 0x80, 0xCA, 0x94, 0x04, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x89, 0xB7, 0x5E, 0x94, 0x16, 0x89, 0x91, 0x99, 0x51, 0xB0, 0xF1, 0xA8, 0xF1, 0xB0, 0xF1, 0xA8, 0xF1, 0xB0, 0xF1, 0xA8, 0xF1, 0x02, 0xB0, 0xF1, 0x80, 0xA8, 0xF1, 0x09, 0xB0, 0xF1, 0x01, 0xA8, 0xF1, 0x81, 0xB0, 0xF1, 0xA8, 0xF1, 0x02, 0xB0, 0xF1, 0x80, 0xB0, 0xD1, 0x01, 0xB0, 0xF1, 0x81, 0xB0, 0xF2, 0xA8, 0xF1, 0x01, 0xB0, 0xF1, 0x84, 0xB0, 0xD1, 0xB0, 0xF1, 0xB0, 0xF2, 0xA8, 0xF1, 0xB0, 0xF2, 0x02, 0xB0, 0xF1, 0x80, 0xA8, 0xF1, 0x01, 0xB0, 0xF1, 0x80, 0xAC, 0xF9, 0x01, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x05, 0xAF, 0x5E, 0x80, 0xAF, 0x7E, 0x02, 0xAF, 0x5E, 0x02, 0xB7, 0x5E, 0x83, 0xAF, 0x5E, 0xB7, 0x5E, 0xAF, + 0x5E, 0xB7, 0x5E, 0x03, 0xAF, 0x5E, 0x02, 0xB7, 0x5E, 0x02, 0xAF, 0x5E, 0x01, 0xB7, 0x5E, 0x0A, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x02, 0xAF, 0x5E, 0x01, 0xB7, 0x5E, 0x02, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x03, 0xAF, 0x5E, 0x81, 0xAF, 0x5D, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x82, 0x9C, 0x77, 0x81, 0x91, 0x99, 0x51, 0x06, 0xB0, 0xF1, 0x80, 0xAD, 0xBB, 0x03, 0xB7, 0x5E, 0x82, 0x9C, 0x78, 0x89, 0x91, 0x99, 0x51, 0x06, 0xB0, 0xF1, 0x80, 0xB5, 0xBB, 0x01, 0xB7, 0x5E, 0x04, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x02, 0xB7, 0x5E, 0x80, 0xAF, 0x5E, 0x02, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x8B, 0xB7, 0x5E, 0xAF, 0x5E, 0xAF, 0x1D, 0xCB, 0x75, 0xCA, 0x93, 0xD2, 0x94, 0xCA, 0x74, 0xCA, 0x94, 0xCA, 0x74, 0xD2, 0x74, 0xCA, 0x74, 0xD2, 0x94, 0x07, 0xCA, 0x94, 0x85, 0xD2, 0x94, 0xCA, 0x93, 0xCA, 0x94, 0xD2, 0x93, 0xCA, 0x74, 0x99, 0x15, 0x02, 0xC9, 0x32, 0x83, 0xC9, 0x12, 0xC1, 0x11, 0xC8, 0xF2, 0xC0, 0xF2, 0x01, 0xC8, 0xD1, 0x8A, 0x33, 0x3C, 0x03, 0xFF, 0x03, 0xDF, 0x03, 0xBF, 0x04, 0xDC, 0x07, 0xD6, 0x07, 0xF7, 0x07, 0xFB, 0x07, 0xFE, 0x07, 0xFF, 0x2E, 0x3C, 0x01, 0xB0, 0xD1, 0x02, 0xB0, 0xF1, 0x80, 0xA8, 0xF1, 0x01, 0xB0, 0xF1, 0x82, 0x90, 0xF1, 0x30, 0xF0, 0x28, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x55, 0x18, 0xAD, 0x01, 0xD2, 0x74, 0x89, 0xCA, 0x53, 0xAF, 0x5E, 0xAF, 0x3E, 0xAF, 0x5E, 0xAF, 0x3E, 0xAF, 0x3D, 0xAF, 0x5D, 0xAF, 0x3D, 0xAF, 0x3E, 0xA6, 0x9C, + 0x01, 0x81, 0x91, 0x02, 0xB0, 0xF1, 0x81, 0xB0, 0xD1, 0xB0, 0xF2, 0x01, 0xB0, 0xD1, 0x80, 0xB0, 0xF2, 0x01, 0xB0, 0xF1, 0x8C, 0xAA, 0x13, 0xB4, 0x18, 0xA4, 0x38, 0x9A, 0xB4, 0x99, 0x31, 0xA8, 0xF1, 0xB0, 0xF1, 0xB0, 0xF2, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x81, 0xB0, 0xF1, 0xB0, 0xD1, 0x03, 0xB0, 0xF1, 0x88, 0xAA, 0x74, 0xAC, 0x78, 0xAC, 0xF9, 0x9B, 0x35, 0x99, 0x31, 0xA8, 0xF1, 0xB0, 0xF1, 0xB0, 0xF2, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x84, 0xB0, 0xF1, 0xB0, 0xF2, 0xB0, 0xD1, 0xB0, 0xF1, 0xA9, 0xB3, 0x03, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x01, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x02, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x01, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x01, 0xAF, 0x3E, 0x01, 0xAF, 0x3D, 0x01, 0xAF, 0x3E, 0x81, 0xAF, 0x5E, 0xAF, 0x3E, 0x01, 0xAF, 0x3D, 0x03, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x01, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x07, 0xAF, 0x3E, 0x81, 0xAF, 0x3D, 0xAF, 0x5E, 0x03, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x02, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x04, 0xAF, 0x3E, 0x82, 0xAF, 0x5E, 0xAF, 0x3E, 0xAF, 0x5E, 0x03, 0xAF, 0x3E, 0x84, 0x9C, 0x77, 0x81, 0x91, 0x99, 0x31, 0xB0, 0xF1, 0xB0, 0xD1, 0x04, 0xB0, 0xF1, 0x80, 0xAD, 0xBB, 0x01, 0xAF, 0x3E, 0x84, 0xAF, 0x5D, 0xAF, 0x3E, 0x94, 0x77, 0x81, 0x91, 0x99, 0x51, 0x01, 0xB0, 0xD1, 0x80, 0xB0, 0xF1, 0x03, 0xB0, 0xD1, 0x84, 0xAD, 0xBA, 0xAF, 0x3E, 0xAF, 0x5E, 0xAF, 0x3E, 0xAF, 0x5E, 0x02, 0xAF, 0x3E, 0x80, 0xAF, 0x3D, 0x02, 0xAF, 0x5E, 0x01, 0xAF, 0x3D, + 0x03, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x03, 0xAF, 0x3E, 0x84, 0xAE, 0xFD, 0xCB, 0x56, 0xCA, 0x53, 0xCA, 0x74, 0xD2, 0x53, 0x01, 0xD2, 0x74, 0x81, 0xD2, 0x73, 0xCA, 0x73, 0x07, 0xD2, 0x74, 0x81, 0xD2, 0x54, 0xCA, 0x74, 0x01, 0xCA, 0x54, 0x80, 0xCA, 0x74, 0x02, 0xC9, 0x32, 0x02, 0xC9, 0x12, 0x80, 0xC0, 0xF1, 0x02, 0xC8, 0xD1, 0x81, 0x33, 0x5C, 0x04, 0x1F, 0x01, 0x03, 0xFF, 0x88, 0x04, 0x7D, 0x07, 0x95, 0x07, 0xF6, 0x07, 0xFA, 0x07, 0xFE, 0x07, 0xFF, 0x2E, 0x3C, 0xB0, 0xF1, 0xB0, 0xD1, 0x02, 0xB0, 0xF1, 0x87, 0xA8, 0xF1, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF1, 0x40, 0xF0, 0x28, 0xCF, 0x28, 0xEF, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAE, 0x53, 0x18, 0xAD, 0x02, 0xCA, 0x53, 0x03, 0xA7, 0x3E, 0x03, 0xA7, 0x3D, 0x85, 0x94, 0x57, 0x81, 0x91, 0x99, 0x31, 0xB8, 0xD1, 0xB0, 0xD1, 0xB8, 0xD1, 0x02, 0xB0, 0xD1, 0x83, 0xB0, 0xF1, 0xB0, 0xD1, 0xB1, 0xB3, 0xAD, 0x9A, 0x01, 0xAF, 0x3D, 0x01, 0xA7, 0x3D, 0x85, 0x9D, 0xDA, 0x89, 0xD1, 0x99, 0x51, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF1, 0x02, 0xB0, 0xD1, 0x01, 0xB8, 0xD1, 0x02, 0xB0, 0xD1, 0x84, 0xB0, 0xF1, 0xB2, 0x13, 0xAD, 0x9B, 0xA7, 0x3E, 0xA7, 0x3D, 0x01, 0xAF, 0x3E, 0x82, 0x9D, 0xDA, 0x81, 0xF2, 0x91, 0x71, 0x01, 0xB0, 0xF1, 0x81, 0xB0, 0xD1, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x85, 0xB8, 0xD1, 0xB8, 0xD2, 0xB0, 0xF1, 0xAD, 0x39, 0xA7, 0x3D, 0xA7, 0x3E, 0x04, 0xA7, 0x3D, 0x80, 0xA7, 0x3E, 0x02, 0xA7, 0x3D, 0x80, 0xAF, 0x3D, 0x02, 0xA7, 0x3D, 0x01, 0xA7, 0x3E, + 0x81, 0xA7, 0x3D, 0xAF, 0x3D, 0x01, 0xA7, 0x3D, 0x81, 0xA7, 0x3E, 0xAF, 0x3D, 0x01, 0xA7, 0x3E, 0x81, 0xA7, 0x3D, 0xAF, 0x3D, 0x01, 0xA7, 0x3D, 0x82, 0xA7, 0x3E, 0xAF, 0x3E, 0xAF, 0x1E, 0x07, 0xA7, 0x3E, 0x84, 0xAF, 0x3E, 0xA7, 0x3E, 0xA7, 0x3D, 0xAF, 0x3E, 0xA7, 0x3E, 0x02, 0xA7, 0x3D, 0x80, 0xAF, 0x3D, 0x02, 0xA7, 0x3E, 0x83, 0xA7, 0x3D, 0xAF, 0x3D, 0xA7, 0x3D, 0xAF, 0x3D, 0x01, 0xA7, 0x3E, 0x81, 0xAF, 0x3D, 0xA7, 0x3E, 0x01, 0xA7, 0x3D, 0x83, 0xA7, 0x3E, 0x94, 0x78, 0x81, 0x91, 0x99, 0x31, 0x05, 0xB0, 0xD1, 0x84, 0xB8, 0xD1, 0xAD, 0x9A, 0xA7, 0x3E, 0xA7, 0x3D, 0xA7, 0x3E, 0x02, 0xA7, 0x3D, 0x80, 0xAF, 0x3D, 0x04, 0xA7, 0x3D, 0x80, 0xAF, 0x3D, 0x02, 0xA7, 0x3D, 0x81, 0xAF, 0x3E, 0xA7, 0x3E, 0x02, 0xA7, 0x3D, 0x84, 0xAF, 0x3D, 0xAF, 0x3E, 0xA7, 0x3D, 0xAF, 0x3D, 0xAF, 0x3E, 0x01, 0xA7, 0x3D, 0x81, 0xAF, 0x3D, 0xA7, 0x3E, 0x02, 0xAF, 0x3D, 0x80, 0xA7, 0x3E, 0x01, 0xA7, 0x3D, 0x83, 0xAF, 0x3D, 0xA7, 0x3D, 0xAE, 0xDD, 0xC3, 0x76, 0x03, 0xCA, 0x53, 0x80, 0xCA, 0x33, 0x08, 0xCA, 0x53, 0x82, 0xD2, 0x33, 0xCA, 0x53, 0xD2, 0x53, 0x01, 0xCA, 0x53, 0x85, 0x30, 0x9C, 0x00, 0x5F, 0x58, 0xB9, 0xC9, 0x12, 0xC1, 0x11, 0xC8, 0xF1, 0x01, 0xC8, 0xD1, 0x01, 0xC0, 0xD1, 0x81, 0x33, 0x7C, 0x04, 0x5F, 0x01, 0x04, 0x1F, 0x86, 0x04, 0x5E, 0x07, 0x75, 0x07, 0xF5, 0x07, 0xFA, 0x07, 0xFE, 0x07, 0xFF, 0x2E, 0x3C, 0x02, 0xB0, 0xF1, 0x82, 0xB0, 0xD1, 0xB0, 0xF1, 0xA8, 0xF1, 0x01, 0xB0, 0xF1, 0x82, 0xB0, 0xD1, 0x80, 0xF1, 0x28, 0xEF, 0x01, 0x28, + 0xCF, 0x80, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAE, 0x53, 0x18, 0xAD, 0x82, 0xCA, 0x13, 0xCA, 0x33, 0xCA, 0x13, 0x04, 0xA7, 0x1D, 0x02, 0xA7, 0x3D, 0x82, 0x8A, 0x53, 0x81, 0x91, 0xA8, 0xF1, 0x02, 0xB8, 0xD1, 0x80, 0xB0, 0xD1, 0x02, 0xB8, 0xD1, 0x83, 0xB2, 0x13, 0xA6, 0xBD, 0xA7, 0x1D, 0xA7, 0x3E, 0x03, 0xA7, 0x1D, 0x83, 0x9E, 0x1B, 0x81, 0xF1, 0x91, 0x71, 0xB0, 0xF1, 0x08, 0xB8, 0xD1, 0x81, 0xB1, 0xF3, 0xA6, 0xBD, 0x03, 0xA7, 0x1D, 0x84, 0xA7, 0x3D, 0xA7, 0x1D, 0x9E, 0x1B, 0x89, 0xF2, 0x89, 0x91, 0x05, 0xB8, 0xD1, 0x82, 0xB0, 0xD1, 0xB8, 0xD1, 0xB3, 0x36, 0x09, 0xA7, 0x1D, 0x02, 0xA7, 0x3D, 0x01, 0xA7, 0x1D, 0x82, 0xA7, 0x3D, 0xA7, 0x1D, 0xA7, 0x1E, 0x01, 0xA7, 0x1D, 0x81, 0xA7, 0x3D, 0xA7, 0x3E, 0x02, 0xA7, 0x1D, 0x83, 0xA7, 0x3E, 0xA7, 0x1D, 0xA7, 0x3E, 0xA7, 0x3D, 0x01, 0xA7, 0x1D, 0x80, 0xA7, 0x3D, 0x09, 0xA7, 0x1D, 0x02, 0xA7, 0x3D, 0x81, 0xA7, 0x3E, 0xA7, 0x1D, 0x01, 0xA7, 0x3D, 0x05, 0xA7, 0x1D, 0x80, 0xA7, 0x3D, 0x01, 0xA7, 0x1D, 0x80, 0xA7, 0x3E, 0x01, 0xA7, 0x3D, 0x01, 0xA7, 0x1D, 0x82, 0x94, 0x77, 0x81, 0x91, 0x99, 0x31, 0x06, 0xB8, 0xD1, 0x83, 0xA5, 0x9A, 0xA7, 0x1D, 0xA7, 0x3D, 0xA7, 0x3E, 0x01, 0xA7, 0x1D, 0x81, 0xA7, 0x1E, 0xA7, 0x3D, 0x07, 0xA7, 0x1D, 0x01, 0xA7, 0x3D, 0x84, 0xA7, 0x1E, 0xA7, 0x1D, 0xA7, 0x3D, 0xA7, 0x1D, 0xA7, 0x3D, 0x05, 0xA7, 0x1D, 0x01, 0xA7, 0x3D, 0x80, 0xA7, 0x1D, 0x01, 0xA7, 0x3D, 0x81, 0xA7, 0x1D, 0xA7, 0x3E, 0x04, 0xA7, 0x1D, 0x83, 0xBB, + 0xF7, 0xCA, 0x13, 0xCA, 0x33, 0xCA, 0x13, 0x09, 0xCA, 0x33, 0x01, 0xCA, 0x13, 0x82, 0xCA, 0x14, 0xD2, 0x33, 0xCA, 0x33, 0x01, 0x00, 0x3F, 0x83, 0x00, 0x5F, 0x78, 0xD7, 0xC0, 0xF2, 0xC8, 0xF1, 0x02, 0xC0, 0xD1, 0x8D, 0xC8, 0xB1, 0x4B, 0x1A, 0x04, 0x7F, 0x04, 0x5F, 0x04, 0x3F, 0x04, 0x5F, 0x07, 0x35, 0x07, 0xF4, 0x07, 0xF9, 0x07, 0xFE, 0x07, 0xFF, 0x2E, 0x3C, 0xB0, 0xD1, 0xB0, 0xF1, 0x02, 0xB0, 0xD1, 0x87, 0xA8, 0xF1, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF1, 0xA0, 0xF1, 0x28, 0xCF, 0x28, 0xEF, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAE, 0x53, 0x18, 0xAD, 0x02, 0xCA, 0x13, 0x01, 0x9F, 0x1D, 0x80, 0xA7, 0x1D, 0x01, 0x9F, 0x1D, 0x80, 0xA7, 0x1D, 0x01, 0x9F, 0x1D, 0x01, 0x81, 0x91, 0x07, 0xB8, 0xD1, 0x80, 0xA5, 0xDB, 0x01, 0x9F, 0x1D, 0x80, 0x9E, 0xFD, 0x02, 0x9F, 0x1D, 0x84, 0xA6, 0xFD, 0x9F, 0x1D, 0x94, 0xF9, 0x81, 0x91, 0x99, 0x31, 0x01, 0xB8, 0xD1, 0x80, 0xB8, 0xB1, 0x04, 0xB8, 0xD1, 0x81, 0xB8, 0xB1, 0xA5, 0xDB, 0x03, 0x9F, 0x1D, 0x80, 0xA6, 0xFD, 0x02, 0x9F, 0x1D, 0x82, 0x94, 0xF9, 0x81, 0x91, 0x99, 0x31, 0x06, 0xB8, 0xD1, 0x80, 0xB9, 0x32, 0x02, 0x9F, 0x1D, 0x80, 0x9F, 0x1E, 0x04, 0x9F, 0x1D, 0x84, 0x9E, 0x1B, 0x94, 0x57, 0x92, 0xD4, 0xA1, 0xF3, 0xA9, 0x11, 0x01, 0xB0, 0xF1, 0x81, 0xA9, 0x11, 0xB2, 0x74, 0x01, 0xB2, 0x54, 0x81, 0xAB, 0xF7, 0xA5, 0xDB, 0x01, 0xA6, 0xFD, 0x01, 0xA7, 0x1D, 0x01, 0x9F, 0x1D, 0x80, 0xA6, 0xFD, 0x01, 0x9F, 0x1D, 0x80, 0xA7, 0x1D, 0x0A, 0x9F, 0x1D, 0x8C, 0x9E, + 0x7C, 0x94, 0x98, 0x8B, 0x14, 0x9A, 0x13, 0xA1, 0x31, 0xA9, 0x12, 0xB0, 0xF1, 0xA8, 0xF1, 0xB2, 0x55, 0xB2, 0x74, 0xB2, 0x54, 0xAB, 0x97, 0xAD, 0x1A, 0x03, 0x9F, 0x1D, 0x85, 0xA7, 0x1D, 0x9F, 0x1D, 0xA7, 0x1D, 0x94, 0x57, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xB8, 0xD1, 0x87, 0xA5, 0x7A, 0x9F, 0x1D, 0xA7, 0x1D, 0x9F, 0x1D, 0xA7, 0x1D, 0x9E, 0x7C, 0x9D, 0xBA, 0xA5, 0x9A, 0x06, 0xA5, 0x7A, 0x80, 0xA6, 0x9C, 0x02, 0x9F, 0x1D, 0x80, 0xA7, 0x1D, 0x06, 0x9F, 0x1D, 0x85, 0x9E, 0x5C, 0x94, 0xB8, 0x8A, 0xF4, 0x9A, 0x13, 0xA1, 0x31, 0xA8, 0xF1, 0x01, 0xB0, 0xF1, 0x88, 0xB9, 0x32, 0xB2, 0x74, 0xB2, 0x54, 0xB3, 0x36, 0xAC, 0xB9, 0xA6, 0x3C, 0x9F, 0x1D, 0xBB, 0xF7, 0xC9, 0xF3, 0x02, 0xCA, 0x13, 0x07, 0xC9, 0xF3, 0x04, 0xCA, 0x13, 0x01, 0x00, 0x3F, 0x85, 0x00, 0x5F, 0x58, 0xB9, 0xC0, 0xF1, 0xC0, 0xD1, 0xC8, 0xD1, 0xC8, 0xB2, 0x01, 0xC0, 0xB1, 0x81, 0x62, 0xB8, 0x04, 0xBF, 0x01, 0x04, 0x7F, 0x88, 0x04, 0x5F, 0x07, 0x15, 0x07, 0xF4, 0x07, 0xF9, 0x07, 0xFD, 0x07, 0xFF, 0x2E, 0x3C, 0xB0, 0xD1, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x01, 0xA8, 0xF1, 0x03, 0xB0, 0xF1, 0x82, 0x58, 0xF0, 0x28, 0xCF, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x53, 0x18, 0xAD, 0x02, 0xC9, 0xD3, 0x06, 0x9E, 0xFD, 0x87, 0x95, 0x9A, 0x81, 0x91, 0x91, 0x51, 0xC0, 0xB1, 0xB8, 0xD1, 0xC0, 0xB1, 0xB8, 0xD1, 0xC0, 0xD1, 0x01, 0xB8, 0xD1, 0x80, 0xB2, 0xB5, 0x09, 0x9E, 0xFD, 0x81, 0x82, 0x52, 0x81, 0x91, 0x03, 0xB8, 0xD1, 0x84, 0xC0, 0xB1, 0xC0, 0xD1, 0xB8, 0xD1, 0xC0, 0xD1, + 0xB1, 0xF3, 0x04, 0x9E, 0xFD, 0x80, 0x9F, 0x1D, 0x03, 0x9E, 0xFD, 0x81, 0x8A, 0x93, 0x81, 0x91, 0x01, 0xB8, 0xD1, 0x80, 0xC0, 0xD1, 0x03, 0xB8, 0xD1, 0x81, 0xC0, 0xB1, 0xA6, 0x3C, 0x05, 0x9E, 0xFD, 0x83, 0x94, 0xF8, 0x8A, 0x53, 0x91, 0x71, 0xB0, 0xF1, 0x02, 0xB8, 0xD1, 0x01, 0xB8, 0xB1, 0x80, 0xC0, 0xB1, 0x01, 0xC0, 0xD1, 0x84, 0xB8, 0xD1, 0xC0, 0xD1, 0xB8, 0xB1, 0xB9, 0x92, 0xAC, 0xB9, 0x10, 0x9E, 0xFD, 0x83, 0x9E, 0x5C, 0x8B, 0x96, 0x89, 0x91, 0xA1, 0x31, 0x01, 0xB8, 0xD1, 0x80, 0xC0, 0xB1, 0x05, 0xB8, 0xD1, 0x84, 0xC0, 0xB1, 0xB8, 0xD1, 0xB9, 0x32, 0xAB, 0xF7, 0x9E, 0x9C, 0x03, 0x9E, 0xFD, 0x85, 0x94, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xB8, 0xD1, 0xC0, 0xB1, 0xB8, 0xD1, 0x01, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x80, 0xA5, 0x7A, 0x03, 0x9E, 0xFD, 0x84, 0x94, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xB8, 0xD1, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x80, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x80, 0xA5, 0x7A, 0x08, 0x9E, 0xFD, 0x83, 0x9E, 0x9C, 0x8B, 0x96, 0x89, 0x71, 0xA1, 0x31, 0x01, 0xB8, 0xD1, 0x83, 0xC0, 0xB1, 0xB8, 0xD1, 0xC0, 0xB1, 0xC0, 0xD1, 0x01, 0xB8, 0xD1, 0x80, 0xC0, 0xD1, 0x01, 0xB8, 0xD1, 0x85, 0xC0, 0xD1, 0xB3, 0x35, 0xA6, 0x3C, 0xBB, 0xD7, 0xC9, 0xD3, 0xC9, 0xF3, 0x08, 0xC9, 0xD3, 0x80, 0xC9, 0xF3, 0x01, 0xC9, 0xD3, 0x82, 0xC9, 0xF3, 0xC9, 0xD3, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x91, 0x00, 0xDF, 0x88, 0xF6, 0xC8, 0xD1, 0xC0, 0xB1, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0x62, 0xD9, 0x04, 0xFF, 0x04, 0xBF, 0x04, 0x9F, 0x04, 0x7F, 0x06, 0xB6, + 0x07, 0xF3, 0x07, 0xF8, 0x07, 0xFD, 0x07, 0xFF, 0x2E, 0x3C, 0x02, 0xB0, 0xD1, 0x81, 0xB0, 0xF1, 0x98, 0xF2, 0x02, 0xB0, 0xF1, 0x84, 0x78, 0xF0, 0x90, 0xF1, 0x80, 0xD1, 0x28, 0xCF, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x52, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0xC9, 0xB3, 0x84, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xFC, 0x01, 0x96, 0xFD, 0x84, 0x95, 0x99, 0x89, 0x91, 0x91, 0x71, 0xC0, 0xB1, 0xC0, 0xD1, 0x03, 0xC0, 0xB1, 0x82, 0xC0, 0xD1, 0xAB, 0xD7, 0x9E, 0xFC, 0x01, 0x96, 0xFD, 0x89, 0x96, 0xDD, 0x96, 0xFD, 0x9E, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xDD, 0x9E, 0xFD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x11, 0x01, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x83, 0xC0, 0xD1, 0xC0, 0xB1, 0xAB, 0x76, 0x9E, 0xDD, 0x01, 0x9E, 0xFD, 0x01, 0x9E, 0xDD, 0x88, 0x96, 0xDD, 0x9E, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xDD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x89, 0xC0, 0xD1, 0xA5, 0x5A, 0x96, 0xFD, 0x9E, 0xDD, 0x9E, 0xFD, 0x96, 0xFD, 0x96, 0x3B, 0x8A, 0xF4, 0x89, 0x91, 0xA9, 0x11, 0x01, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x03, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x03, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x87, 0xB9, 0x92, 0xA5, 0x5A, 0x9E, 0xDD, 0x9E, 0xFC, 0x96, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xFD, 0x07, 0x96, 0xFD, 0x84, 0x94, 0xF9, 0x81, 0xF1, 0x91, 0x71, 0xB8, 0xD2, 0xC0, 0xB1, 0x01, 0xC0, 0xD1, 0x83, 0xC0, 0xB1, 0xC0, 0xD1, 0xC0, + 0xB1, 0xC0, 0xD1, 0x06, 0xC0, 0xB1, 0x87, 0xB9, 0x92, 0x9D, 0xBB, 0x96, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x81, 0xA5, 0x5A, 0x9E, 0xDD, 0x01, 0x96, 0xFD, 0x83, 0x9E, 0xFD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x83, 0xA5, 0x5A, 0x96, 0xFD, 0x9E, 0xFD, 0x96, 0xFD, 0x01, 0x9E, 0xFD, 0x86, 0x96, 0xFD, 0x9E, 0xFD, 0x96, 0xFD, 0x95, 0x39, 0x81, 0xF1, 0x91, 0x71, 0xB0, 0xD1, 0x02, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x05, 0xC0, 0xB1, 0x83, 0xB8, 0xD1, 0xB9, 0x11, 0xAC, 0xFA, 0xB4, 0x58, 0x0A, 0xC9, 0xB3, 0x80, 0xC9, 0xD2, 0x01, 0xC9, 0xD3, 0x81, 0xC9, 0xB3, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x83, 0x00, 0xBF, 0x31, 0x1C, 0xC0, 0xD1, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x8C, 0x62, 0x78, 0x05, 0x3F, 0x04, 0xFF, 0x04, 0xBF, 0x04, 0x9F, 0x06, 0x96, 0x07, 0xF2, 0x07, 0xF7, 0x07, 0xFC, 0x07, 0xFF, 0x2E, 0x3C, 0xB0, 0xF1, 0xB0, 0xD1, 0x01, 0xB0, 0xF1, 0x80, 0x89, 0x12, 0x01, 0xB0, 0xF1, 0x83, 0xB0, 0xD1, 0x48, 0xF0, 0x28, 0xF0, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x2C, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x01, 0xC9, 0x93, 0x81, 0xC9, 0x92, 0x96, 0xDC, 0x05, 0x96, 0xDD, 0x82, 0x8D, 0x79, 0x81, 0x91, 0x91, 0x51, 0x06, 0xC0, 0xB1, 0x80, 0xAB, 0xD7, 0x09, 0x96, 0xDD, 0x82, 0x8C, 0x37, 0x81, + 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x80, 0xAB, 0xD7, 0x09, 0x96, 0xDD, 0x82, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x80, 0x9D, 0x5A, 0x02, 0x96, 0xDD, 0x83, 0x95, 0xDA, 0x89, 0xF2, 0x89, 0x71, 0xB8, 0xD1, 0x01, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x0E, 0xC0, 0xB1, 0x80, 0xA4, 0x99, 0x04, 0x96, 0xDD, 0x80, 0x96, 0xDC, 0x05, 0x96, 0xDD, 0x82, 0x8C, 0x37, 0x81, 0x91, 0x99, 0x31, 0x0B, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x04, 0xC0, 0xB1, 0x85, 0xA4, 0x99, 0x96, 0xDC, 0x96, 0xDD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x11, 0x06, 0xC0, 0xB1, 0x80, 0x9D, 0x5A, 0x03, 0x96, 0xDD, 0x82, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x80, 0x9D, 0x5A, 0x06, 0x96, 0xDD, 0x82, 0x8C, 0xD8, 0x81, 0x91, 0x99, 0x51, 0x05, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x06, 0xC0, 0xB1, 0x84, 0xAC, 0x79, 0xAC, 0xF9, 0xC9, 0x92, 0xC9, 0x93, 0xC9, 0xB2, 0x01, 0xC9, 0x92, 0x02, 0xC9, 0x93, 0x02, 0xC9, 0x92, 0x02, 0xC9, 0x93, 0x02, 0x00, 0x3F, 0x83, 0x00, 0xBF, 0x01, 0x1F, 0xC0, 0xB1, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x80, 0x79, 0xD6, 0x01, 0x05, 0x1F, 0x89, 0x04, 0xFF, 0x04, 0xBF, 0x06, 0x38, 0x07, 0xF1, 0x07, 0xF7, 0x07, 0xFC, 0x07, 0xFF, 0x2E, 0x3C, 0xB0, 0xF1, 0xB0, 0xF2, 0x01, 0xB0, 0xF1, 0x80, 0x80, 0xF2, 0x01, 0xB0, 0xF1, 0x86, 0xB0, 0xF2, 0x31, 0x10, 0x30, 0xF0, 0x28, 0xCF, 0x28, 0xEF, 0x20, 0xCE, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x2A, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x02, + 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0B, 0x18, 0xAD, 0x86, 0x20, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xF3, 0x10, 0xD2, 0x18, 0xCD, 0x10, 0x18, 0xAD, 0x02, 0xC9, 0x72, 0x80, 0x8E, 0xBC, 0x01, 0x8E, 0xBD, 0x02, 0x8E, 0xBC, 0x83, 0x8E, 0xBD, 0x8D, 0x7A, 0x81, 0x91, 0x91, 0x51, 0x04, 0xC0, 0xB1, 0x83, 0xC8, 0xB1, 0xC0, 0xB1, 0xAB, 0xB7, 0x8E, 0xBD, 0x07, 0x8E, 0xBC, 0x85, 0x8E, 0xBD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xC0, 0xB1, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x82, 0xC8, 0xB1, 0xC0, 0xB1, 0xAB, 0xB7, 0x02, 0x8E, 0xBC, 0x82, 0x8E, 0xDC, 0x8E, 0xBC, 0x8E, 0xDD, 0x01, 0x8E, 0xBC, 0x84, 0x8E, 0xBD, 0x8E, 0xBC, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x85, 0x9D, 0x39, 0x8E, 0xBD, 0x8E, 0xDD, 0x8D, 0xBA, 0x81, 0xF2, 0x91, 0x71, 0x01, 0xC0, 0xB1, 0x87, 0xC8, 0xB1, 0xC0, 0xB1, 0xC0, 0xD1, 0xC0, 0xB1, 0xC8, 0xB1, 0xC8, 0xB2, 0xC0, 0xB1, 0xC8, 0xB2, 0x01, 0xC8, 0xB1, 0x81, 0xC0, 0xD1, 0xC0, 0xB1, 0x01, 0xC0, 0xD1, 0x80, 0xC8, 0xB1, 0x01, 0xC0, 0xB1, 0x86, 0xC8, 0xB1, 0xC0, 0xB1, 0xA4, 0x37, 0x8E, 0xBC, 0x8E, 0xDD, 0x8E, 0xBC, 0x8E, 0xBD, 0x01, 0x8E, 0xBC, 0x81, 0x8E, 0xBD, 0x8E, 0xBC, 0x01, 0x8E, 0xBD, 0x82, 0x8C, 0xD8, 0x81, 0x91, 0xA1, 0x31, 0x01, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x01, 0xC0, 0xB1, 0x83, 0xC8, 0xB2, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x01, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x8A, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0xA4, 0xD9, 0x8E, 0xBC, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xC0, + 0xB1, 0xC8, 0xB1, 0xC0, 0xD1, 0x02, 0xC0, 0xB1, 0x81, 0xC8, 0xB1, 0x9D, 0x3A, 0x03, 0x8E, 0xBC, 0x82, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x80, 0x9D, 0x5A, 0x01, 0x8E, 0xBC, 0x80, 0x8E, 0xDC, 0x02, 0x8E, 0xBC, 0x89, 0x8C, 0xD8, 0x81, 0x91, 0x99, 0x51, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0xC8, 0xB2, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x04, 0xC0, 0xB1, 0x02, 0xC8, 0xB1, 0x82, 0xC8, 0xD1, 0xA4, 0x78, 0xA4, 0xD9, 0x0C, 0xC9, 0x72, 0x01, 0x00, 0x3F, 0x82, 0x00, 0x1F, 0x00, 0x9F, 0x00, 0xDF, 0x04, 0xC0, 0xB1, 0x8C, 0x91, 0x74, 0x04, 0x9F, 0x05, 0x7F, 0x05, 0x1F, 0x04, 0xFF, 0x06, 0x19, 0x07, 0xF1, 0x07, 0xF6, 0x07, 0xFC, 0x07, 0xFF, 0x35, 0xBB, 0xB0, 0xF1, 0xB0, 0xD1, 0x01, 0xB0, 0xF1, 0x80, 0x69, 0x12, 0x01, 0xB0, 0xF1, 0x80, 0x98, 0xF1, 0x01, 0x30, 0xF0, 0x82, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xEF, 0x03, 0x20, 0xCE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x30, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x89, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xFA, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x02, 0xC9, 0x52, 0x06, 0x8E, 0xBC, 0x84, 0x8D, 0x59, 0x81, 0x91, 0x91, 0x71, 0xC8, 0xF2, 0xC8, 0xF1, 0x02, 0xC8, 0xF2, 0x82, 0xC8, 0xF1, 0xC8, 0xF2, 0xAB, 0xD7, 0x09, 0x8E, 0xBC, 0x84, 0x8C, 0x36, 0x81, 0x91, 0xA9, 0x31, 0xC8, 0xF2, 0xC8, 0xF1, 0x03, 0xC8, + 0xF2, 0x81, 0xC0, 0xF2, 0xAB, 0xB7, 0x09, 0x8E, 0xBC, 0x82, 0x84, 0x37, 0x81, 0x91, 0xA9, 0x51, 0x01, 0xC8, 0xF1, 0x80, 0xC8, 0xF2, 0x01, 0xC8, 0xF1, 0x87, 0xC8, 0xF2, 0xC8, 0xF1, 0x9D, 0x3A, 0x8E, 0xBC, 0x8E, 0x1B, 0x81, 0xF2, 0x89, 0x71, 0xB9, 0x12, 0x01, 0xC8, 0xF1, 0x80, 0xC8, 0xF2, 0x02, 0xC8, 0xF1, 0x82, 0xC8, 0xF2, 0xC8, 0xD1, 0xC1, 0x12, 0x02, 0xC8, 0xF2, 0x8A, 0xC8, 0xD1, 0xC8, 0xF2, 0xC8, 0xD1, 0xC8, 0xF2, 0xC0, 0xF1, 0xC8, 0xF1, 0xC8, 0xF2, 0xC8, 0xF1, 0xC8, 0xF2, 0xC0, 0xF1, 0xA4, 0x98, 0x07, 0x8E, 0xBC, 0x80, 0x8D, 0xBA, 0x01, 0x89, 0x91, 0x8E, 0xC0, 0xF1, 0xC8, 0xF2, 0xC0, 0xF2, 0xC8, 0xF1, 0xC8, 0xF2, 0xC8, 0xF1, 0xC0, 0xF1, 0xC8, 0xF2, 0xC8, 0xF1, 0xC8, 0xF2, 0xC0, 0xF2, 0xC8, 0xF1, 0xC0, 0xF1, 0xC8, 0xF2, 0xC8, 0xF1, 0x02, 0xC8, 0xF2, 0x01, 0xC8, 0xF1, 0x85, 0xC0, 0xF2, 0xC1, 0x32, 0x8E, 0x5C, 0x8C, 0x17, 0x81, 0x91, 0xA9, 0x31, 0x03, 0xC8, 0xF2, 0x80, 0xC8, 0xF1, 0x01, 0xC8, 0xF2, 0x80, 0x9D, 0x59, 0x03, 0x8E, 0xBC, 0x82, 0x8C, 0x17, 0x81, 0x91, 0xA9, 0x51, 0x01, 0xC8, 0xF1, 0x80, 0xC8, 0xF2, 0x01, 0xC8, 0xF1, 0x82, 0xC8, 0xF2, 0xC8, 0xF1, 0x9D, 0x5A, 0x03, 0x8E, 0xBC, 0x84, 0x8E, 0xBD, 0x8D, 0xBA, 0x81, 0xF2, 0x89, 0x91, 0xC1, 0x11, 0x02, 0xC8, 0xF1, 0x80, 0xC0, 0xF2, 0x01, 0xC8, 0xF1, 0x83, 0xC0, 0xF2, 0xC8, 0xD2, 0xC8, 0xF1, 0xC8, 0xF2, 0x01, 0xC0, 0xF1, 0x82, 0xC8, 0xF2, 0xC0, 0xF1, 0xC8, 0xF1, 0x01, 0xC8, 0xF2, 0x01, 0xC8, 0xF1, 0x84, 0xC8, 0xF2, 0xC1, 0x52, 0x95, 0xFB, 0xA4, 0xB8, 0xC1, 0x52, + 0x02, 0xC9, 0x52, 0x80, 0xC9, 0x72, 0x06, 0xC9, 0x52, 0x02, 0x00, 0x1F, 0x82, 0x00, 0x7F, 0x00, 0xDF, 0x68, 0xB7, 0x03, 0xC0, 0xB1, 0x8C, 0xA8, 0xF3, 0x04, 0x1F, 0x05, 0x7F, 0x05, 0x3F, 0x05, 0x1F, 0x05, 0xF9, 0x07, 0xF0, 0x07, 0xF6, 0x07, 0xFC, 0x07, 0xFF, 0x5C, 0x78, 0xB0, 0xF1, 0xB0, 0xD1, 0x01, 0xB0, 0xF1, 0x80, 0x59, 0x12, 0x01, 0xB0, 0xF1, 0x81, 0x90, 0xF1, 0x30, 0xF0, 0x01, 0x30, 0xEF, 0x81, 0x28, 0xCF, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x83, 0x20, 0xAE, 0x20, 0xCE, 0x20, 0xAD, 0x20, 0xAE, 0x2C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x01, 0x17, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x02, 0xC9, 0x32, 0x06, 0x8E, 0xBC, 0x84, 0x8D, 0x79, 0x81, 0x91, 0x91, 0x71, 0xC1, 0x32, 0xC1, 0x31, 0x01, 0xC9, 0x12, 0x83, 0xC1, 0x32, 0xC9, 0x11, 0xC9, 0x12, 0xAB, 0xF7, 0x08, 0x8E, 0xBC, 0x85, 0x96, 0xBC, 0x8C, 0x36, 0x81, 0x91, 0xA9, 0x51, 0xC9, 0x12, 0xC9, 0x11, 0x01, 0xC9, 0x12, 0x80, 0xC1, 0x12, 0x01, 0xC9, 0x12, 0x80, 0xAB, 0xF7, 0x09, 0x8E, 0xBC, 0x82, 0x8C, 0x36, 0x81, 0x91, 0xA9, 0x51, 0x02, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x01, 0xC9, 0x12, 0x86, 0x9D, 0x59, 0x8E, 0xBC, 0x8A, 0xD4, 0x81, 0x91, 0xB1, 0x52, 0xC9, 0x12, 0xC1, 0x31, 0x05, 0xC9, 0x12, 0x80, 0xC9, 0x32, 0x03, 0xC9, 0x12, 0x82, 0xC9, 0x11, 0xC1, 0x12, 0xC9, 0x32, 0x01, 0xC9, 0x12, 0x81, 0xC9, 0x32, 0xC9, 0x11, 0x01, 0xC9, 0x12, 0x93, 0xC9, + 0x32, 0xC1, 0x31, 0x9D, 0xBA, 0x8E, 0xBC, 0x96, 0xBC, 0x8E, 0xBC, 0x8E, 0xDC, 0x96, 0xBB, 0x8E, 0xBC, 0x8E, 0xDC, 0x82, 0xD4, 0x81, 0x91, 0xB9, 0x32, 0xC9, 0x12, 0xC1, 0x12, 0xC9, 0x12, 0xC1, 0x12, 0xC9, 0x12, 0xC1, 0x12, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x85, 0xC9, 0x32, 0xC9, 0x11, 0xC1, 0x31, 0xC9, 0x12, 0xC1, 0x32, 0xC1, 0x31, 0x01, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x80, 0xC1, 0x31, 0x01, 0xC9, 0x12, 0x83, 0xB3, 0x56, 0x8C, 0x36, 0x81, 0x91, 0xA1, 0x51, 0x05, 0xC9, 0x12, 0x83, 0xC1, 0x12, 0x9D, 0x59, 0x8E, 0xBC, 0x96, 0xBC, 0x01, 0x8E, 0xBC, 0x82, 0x8C, 0x37, 0x81, 0x91, 0xA9, 0x51, 0x02, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x01, 0xC9, 0x12, 0x80, 0x9D, 0x59, 0x02, 0x8E, 0xBC, 0x84, 0x96, 0xBC, 0x8E, 0xBC, 0x82, 0xF4, 0x89, 0x91, 0xB1, 0x51, 0x01, 0xC9, 0x12, 0x80, 0xC9, 0x32, 0x01, 0xC9, 0x12, 0x82, 0xC1, 0x31, 0xC9, 0x32, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x83, 0xC9, 0x32, 0xC9, 0x11, 0xC9, 0x12, 0xC9, 0x11, 0x01, 0xC9, 0x32, 0x82, 0xC1, 0x12, 0xC9, 0x11, 0xC1, 0x32, 0x01, 0xC9, 0x12, 0x84, 0xC9, 0x32, 0xB3, 0x36, 0x96, 0xBC, 0xA4, 0xF9, 0xC1, 0x92, 0x09, 0xC9, 0x32, 0x02, 0x00, 0x1F, 0x83, 0x00, 0x7F, 0x00, 0xBF, 0x00, 0x9F, 0x90, 0xB5, 0x03, 0xC0, 0xB1, 0x8A, 0x0B, 0x9E, 0x05, 0x3F, 0x05, 0x7F, 0x05, 0x3F, 0x05, 0xDA, 0x07, 0xEF, 0x07, 0xF5, 0x07, 0xFB, 0x07, 0xFF, 0x54, 0x78, 0xB0, 0xD1, 0x01, 0xB0, 0xF1, 0x88, 0x91, 0x11, 0x59, 0x12, 0xA8, 0xF1, 0xB0, 0xF1, 0x70, 0xF1, 0x30, 0xF0, 0x28, 0xEF, 0x20, 0xEF, 0x28, 0xCF, 0x02, + 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x2B, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x02, 0xC9, 0x12, 0x02, 0x9E, 0xDB, 0x80, 0x9E, 0xDC, 0x02, 0x9E, 0xDB, 0x82, 0x95, 0x78, 0x81, 0x91, 0x99, 0x91, 0x06, 0xC9, 0x52, 0x80, 0xB4, 0x17, 0x09, 0x9E, 0xDB, 0x82, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x72, 0x06, 0xC9, 0x52, 0x82, 0xA5, 0x18, 0x9E, 0xDB, 0x96, 0xDB, 0x07, 0x9E, 0xDB, 0x82, 0x94, 0x36, 0x81, 0x91, 0xA1, 0x71, 0x06, 0xC9, 0x52, 0x83, 0xA5, 0x79, 0x94, 0xD8, 0x81, 0x91, 0x99, 0x91, 0x04, 0xC9, 0x52, 0x80, 0xC1, 0x52, 0x04, 0xC9, 0x52, 0x85, 0xC2, 0x53, 0xC2, 0xB4, 0xB9, 0x52, 0xC1, 0x52, 0xC9, 0x52, 0xC1, 0x52, 0x07, 0xC9, 0x52, 0x80, 0xBA, 0xB5, 0x05, 0x9E, 0xDB, 0x82, 0x95, 0x99, 0x81, 0x91, 0x91, 0xB1, 0x09, 0xC9, 0x52, 0x83, 0xC1, 0xF3, 0xC2, 0xB5, 0xB9, 0x52, 0xC1, 0x52, 0x04, 0xC9, 0x52, 0x80, 0xC9, 0x72, 0x01, 0xC9, 0x52, 0x84, 0xC9, 0x72, 0xC1, 0xB2, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x72, 0x06, 0xC9, 0x52, 0x80, 0xA5, 0x79, 0x03, 0x9E, 0xDB, 0x82, 0x8C, 0x36, 0x89, 0x91, 0xA1, 0x71, 0x06, 0xC9, 0x52, 0x82, 0xA5, 0x79, 0x9E, 0xDB, 0x9E, 0xDC, 0x01, 0x9E, 0xDB, 0x82, 0x95, 0x98, 0x81, 0x91, 0x91, 0x91, 0x03, 0xC9, 0x52, 0x82, 0xC1, 0x52, 0xC9, 0x52, 0xC1, 0x72, 0x02, 0xC9, 0x52, 0x83, 0xC1, 0xF3, 0xC2, 0xB4, 0xB9, 0x52, 0xC1, 0x52, + 0x09, 0xC9, 0x52, 0x84, 0xA6, 0x1A, 0x9E, 0xDC, 0xA5, 0xDA, 0xC1, 0x72, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x01, 0xC9, 0x12, 0x80, 0xC1, 0x11, 0x02, 0xC9, 0x12, 0x02, 0x00, 0x1F, 0x80, 0x00, 0x5F, 0x01, 0x00, 0x7F, 0x82, 0x60, 0x98, 0xC0, 0xB1, 0xB8, 0xB1, 0x01, 0xC0, 0xB1, 0x89, 0x2A, 0xFC, 0x04, 0xFF, 0x05, 0xBF, 0x05, 0x5F, 0x05, 0xFB, 0x07, 0xCF, 0x07, 0xF4, 0x07, 0xFC, 0x07, 0xFF, 0x5C, 0x79, 0x02, 0xB0, 0xF1, 0x81, 0x81, 0x12, 0x59, 0x12, 0x01, 0xB0, 0xF1, 0x85, 0x68, 0xF1, 0x30, 0xF0, 0x30, 0xEF, 0x30, 0xCF, 0x28, 0xCF, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x2B, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x0F, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x01, 0xC8, 0xF1, 0x81, 0xC8, 0xF2, 0xA6, 0xFB, 0x01, 0xA6, 0xFA, 0x87, 0xA6, 0xFB, 0xA6, 0xFA, 0xA6, 0xDA, 0xA6, 0xFA, 0x9D, 0x98, 0x81, 0x91, 0x91, 0x91, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x80, 0xC9, 0x72, 0x02, 0xC9, 0x92, 0x81, 0xB4, 0x36, 0xA6, 0xFB, 0x08, 0xA6, 0xFA, 0x82, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x92, 0x01, 0xC9, 0x92, 0x02, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x80, 0xAD, 0x98, 0x01, 0xA6, 0xDA, 0x07, 0xA6, 0xFA, 0x83, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x92, 0xC9, 0x93, 0x05, 0xC9, 0x92, 0x83, 0xAD, 0x99, 0x8A, 0x32, 0x89, 0x91, 0xC1, 0x92, 0x01, 0xC9, 0x92, 0x80, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x80, 0xC9, 0x73, 0x02, 0xC9, 0x92, 0x81, 0xBC, 0x36, 0xA6, 0x9A, + 0x01, 0xA6, 0xFA, 0x84, 0xA6, 0x9A, 0x93, 0x95, 0x89, 0x91, 0xB9, 0x92, 0xC9, 0x93, 0x01, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x81, 0xC9, 0x72, 0xC9, 0x92, 0x01, 0xC9, 0x72, 0x88, 0xAD, 0x98, 0xA6, 0xDB, 0xA6, 0xDA, 0xA6, 0xFA, 0xA6, 0xFB, 0xA6, 0xFA, 0x93, 0x95, 0x81, 0x91, 0xB1, 0x92, 0x02, 0xC9, 0x92, 0x80, 0xC9, 0x93, 0x01, 0xC9, 0x72, 0x8A, 0xC9, 0x92, 0xC9, 0x72, 0xC2, 0x33, 0xAD, 0x98, 0xA6, 0xFA, 0xA6, 0xFB, 0xA6, 0x39, 0x8A, 0x93, 0x99, 0x92, 0xC1, 0x92, 0xC9, 0x72, 0x02, 0xC9, 0x92, 0x81, 0xC9, 0x72, 0xC9, 0x92, 0x01, 0xC9, 0x72, 0x82, 0x9A, 0x93, 0x81, 0x91, 0xA9, 0x92, 0x06, 0xC9, 0x92, 0x82, 0xAD, 0x98, 0xA6, 0xFA, 0xA6, 0xFB, 0x01, 0xA6, 0xFA, 0x83, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x92, 0xC9, 0x93, 0x05, 0xC9, 0x92, 0x80, 0xAD, 0x98, 0x01, 0xA6, 0xDA, 0x87, 0xA6, 0xFA, 0xA6, 0xDA, 0x8B, 0x95, 0x81, 0x91, 0xB1, 0x92, 0xC9, 0x72, 0xC9, 0x92, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x8C, 0xC9, 0x72, 0xC9, 0x92, 0xC9, 0x72, 0xC2, 0x94, 0xAD, 0xF9, 0xA6, 0xFA, 0xA6, 0xDA, 0xA6, 0x9A, 0x93, 0x34, 0x91, 0x91, 0xB9, 0x92, 0xC9, 0x92, 0xC9, 0x93, 0x05, 0xC9, 0x92, 0x80, 0xB4, 0x97, 0x01, 0xAE, 0xFB, 0x84, 0xB5, 0xD9, 0xC9, 0x52, 0xC8, 0xF1, 0xC8, 0xF2, 0xC0, 0xF1, 0x04, 0xC8, 0xF1, 0x02, 0x00, 0x1F, 0x91, 0x00, 0x3F, 0x00, 0x7F, 0x00, 0x5F, 0x78, 0x97, 0xC0, 0xB1, 0xC0, 0xD1, 0xC0, 0xB1, 0xB8, 0xD1, 0x62, 0x38, 0x04, 0xDF, 0x05, 0xBF, 0x05, 0x9F, 0x05, 0xFA, 0x07, 0xCE, 0x07, 0xF4, 0x07, 0xFC, 0x07, 0xFF, 0x5C, 0x78, 0x02, 0xB0, + 0xF1, 0x86, 0x71, 0x12, 0x59, 0x12, 0xB0, 0xF1, 0xA8, 0xF1, 0x51, 0x10, 0x30, 0xF0, 0x30, 0xCF, 0x02, 0x28, 0xCF, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x2B, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x04, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x0B, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x0D, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0xC0, 0xD1, 0x80, 0xC8, 0xD2, 0x02, 0xB7, 0x1A, 0x86, 0xAE, 0xFA, 0xB7, 0x1A, 0xAF, 0x1A, 0xAE, 0xFA, 0xA5, 0x98, 0x81, 0x91, 0x91, 0x91, 0x01, 0xC9, 0xB3, 0x01, 0xC9, 0xD3, 0x83, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0xD3, 0xBC, 0x76, 0x09, 0xB7, 0x1A, 0x82, 0x9C, 0x55, 0x81, 0x91, 0xA9, 0xB2, 0x01, 0xC9, 0xD3, 0x82, 0xC9, 0xB3, 0xC9, 0xB2, 0xC9, 0xB3, 0x01, 0xC9, 0xD3, 0x84, 0xB5, 0xB8, 0xB7, 0x1A, 0xAF, 0x1A, 0xB7, 0x1A, 0xB6, 0xFA, 0x03, 0xB7, 0x1A, 0x84, 0xB6, 0xFA, 0xAF, 0x1A, 0x9C, 0x56, 0x81, 0x91, 0xA9, 0x92, 0x06, 0xC9, 0xB3, 0x95, 0xA3, 0xB5, 0x81, 0x91, 0x99, 0x92, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0xD2, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0xD3, 0xCA, 0x13, 0xBD, 0xB8, 0xAE, 0xFA, 0xAF, 0x1A, 0xB7, 0x1A, 0xB6, 0xFA, 0xAE, 0xFA, 0xAF, 0x19, 0xA4, 0xF7, 0x89, 0x91, 0xB1, 0xB2, 0x04, 0xC9, 0xB3, 0x80, 0xC9, 0xD2, 0x01, 0xC9, 0xB3, 0x80, 0xC3, 0x14, 0x01, 0xAF, 0x1A, 0x80, 0xAE, 0xF9, 0x01, 0xAF, 0x1A, 0x82, 0x89, 0xF1, 0x81, 0x91, 0xC1, 0xB2, 0x02, 0xC9, 0xB3, 0x01, 0xC9, 0xB2, 0x8B, 0xC9, 0xD3, 0xC9, + 0xB3, 0xCA, 0xB4, 0xB6, 0xB9, 0xAF, 0x1A, 0xB7, 0x1A, 0xAE, 0xFA, 0xB7, 0x1A, 0xB6, 0xB9, 0x8A, 0x93, 0x89, 0x91, 0xC1, 0xD2, 0x03, 0xC9, 0xB3, 0x88, 0xC9, 0xB2, 0xC9, 0xD3, 0xC9, 0xB2, 0xA9, 0x92, 0x81, 0x91, 0xA9, 0xB2, 0xC9, 0xD3, 0xC9, 0xB3, 0xC9, 0xD3, 0x02, 0xC9, 0xB2, 0x88, 0xC9, 0xB3, 0xB5, 0xB8, 0xAF, 0x1A, 0xAE, 0xFA, 0xAF, 0x1A, 0xB7, 0x1A, 0x9C, 0x56, 0x81, 0x91, 0xA9, 0x92, 0x06, 0xC9, 0xB3, 0x81, 0xB5, 0xB8, 0xB6, 0xFA, 0x01, 0xAF, 0x1A, 0x86, 0xB6, 0xFA, 0x89, 0xF2, 0x81, 0x91, 0xC1, 0xB2, 0xC9, 0xB3, 0xC9, 0xB2, 0xC9, 0xD3, 0x01, 0xC9, 0xB3, 0x84, 0xC9, 0xB2, 0xC9, 0xD3, 0xCA, 0xB4, 0xB6, 0xB9, 0xAF, 0x1A, 0x01, 0xB7, 0x1A, 0x85, 0xB6, 0xFA, 0xB7, 0x1A, 0x92, 0xF3, 0x89, 0xB1, 0xC1, 0xB2, 0xC9, 0xD3, 0x01, 0xC9, 0xB3, 0x01, 0xC9, 0xD3, 0x82, 0xC9, 0xB3, 0xC9, 0xD3, 0xC3, 0x15, 0x02, 0xB7, 0x1A, 0x82, 0xBD, 0xD9, 0xC1, 0x32, 0xC0, 0xD1, 0x03, 0xC8, 0xD1, 0x01, 0xC0, 0xD1, 0x02, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x7F, 0x86, 0x68, 0x78, 0xB8, 0xB1, 0xC0, 0xB1, 0xC0, 0xD1, 0xB8, 0xD1, 0x99, 0x54, 0x04, 0x7F, 0x01, 0x05, 0xBF, 0x85, 0x06, 0x1A, 0x07, 0xCE, 0x07, 0xF2, 0x07, 0xFC, 0x07, 0xFF, 0x5C, 0x78, 0x02, 0xB0, 0xF1, 0x81, 0x61, 0x12, 0x59, 0x12, 0x01, 0xA8, 0xF1, 0x82, 0x60, 0xF0, 0x30, 0xF0, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x2B, 0x18, 0xAD, 0x83, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x81, 0x20, 0xAD, + 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF4, 0x0E, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0xC0, 0xB1, 0xC8, 0xB1, 0xC0, 0xB1, 0x06, 0xBF, 0x19, 0x82, 0xA4, 0xB5, 0x81, 0x91, 0xA1, 0xB2, 0x05, 0xC9, 0xF3, 0x81, 0xD1, 0xF3, 0xC4, 0x96, 0x09, 0xBF, 0x19, 0x82, 0xA4, 0x55, 0x81, 0x91, 0xA9, 0xD2, 0x06, 0xC9, 0xF3, 0x80, 0xBD, 0xD8, 0x02, 0xBF, 0x19, 0x80, 0xBF, 0x39, 0x01, 0xBF, 0x19, 0x81, 0xBF, 0x39, 0xBF, 0x19, 0x01, 0xBF, 0x39, 0x82, 0xA4, 0x55, 0x81, 0x91, 0xA9, 0xD2, 0x06, 0xC9, 0xF3, 0x82, 0x99, 0xF2, 0x89, 0x91, 0xB1, 0xD2, 0x06, 0xC9, 0xF3, 0x82, 0xC9, 0xF2, 0xC5, 0x77, 0xBF, 0x19, 0x01, 0xBF, 0x39, 0x04, 0xBF, 0x19, 0x82, 0x9B, 0xF5, 0x81, 0x91, 0xB1, 0xD2, 0x01, 0xC9, 0xF3, 0x80, 0xD1, 0xF3, 0x04, 0xC9, 0xF3, 0x80, 0xBE, 0x78, 0x02, 0xBF, 0x19, 0x82, 0xB6, 0xB9, 0x81, 0x91, 0x89, 0x91, 0x01, 0xC9, 0xF3, 0x80, 0xC9, 0xF2, 0x01, 0xC9, 0xF3, 0x80, 0xC9, 0xD3, 0x01, 0xC9, 0xF3, 0x80, 0xBE, 0xD8, 0x04, 0xBF, 0x19, 0x85, 0xBF, 0x39, 0xAD, 0x57, 0x81, 0x91, 0x99, 0xB2, 0xC9, 0xF3, 0xC9, 0xF2, 0x04, 0xC9, 0xF3, 0x82, 0xB9, 0xD3, 0x81, 0x91, 0xA9, 0xB2, 0x06, 0xC9, 0xF3, 0x80, 0xBD, 0xD8, 0x03, 0xBF, 0x19, 0x82, 0x9C, 0x75, 0x81, 0x91, 0xA9, 0xD2, 0x06, 0xC9, 0xF3, 0x80, 0xBD, 0xD8, 0x02, 0xBF, 0x19, 0x80, 0xB6, 0xB8, 0x01, 0x81, 0x91, 0x07, 0xC9, 0xF3, 0x84, 0xBE, 0x78, 0xBF, 0x19, 0xBF, 0x39, 0xBF, 0x19, 0xBF, 0x39, 0x01, 0xBF, 0x19, 0x82, 0xAD, 0xB7, 0x81, 0x91, 0x91, 0xB1, 0x02, 0xC9, + 0xF3, 0x80, 0xC9, 0xF2, 0x03, 0xC9, 0xF3, 0x87, 0xC7, 0x1A, 0xBF, 0x1A, 0xC7, 0x3A, 0xBF, 0x3A, 0xC6, 0x59, 0xC9, 0xD3, 0xC0, 0xB1, 0xC8, 0xB1, 0x01, 0xC0, 0xB1, 0x81, 0xC8, 0xB1, 0xC0, 0xB1, 0x02, 0x00, 0x1F, 0x85, 0x00, 0x3F, 0x00, 0x5F, 0x00, 0x3F, 0x00, 0x1F, 0x70, 0x76, 0xC0, 0xD1, 0x02, 0xB8, 0xD1, 0x88, 0x0B, 0xFF, 0x05, 0xDF, 0x05, 0xBF, 0x06, 0x39, 0x07, 0xCD, 0x07, 0xF2, 0x07, 0xFC, 0x07, 0xFF, 0x63, 0xF7, 0x02, 0xB0, 0xF1, 0x88, 0x41, 0x32, 0x41, 0x11, 0xA0, 0xF1, 0xB0, 0xF1, 0x90, 0xF1, 0x30, 0xF0, 0x28, 0xEF, 0x28, 0xCE, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x29, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0xC0, 0xB1, 0x06, 0xC7, 0x38, 0x83, 0xA4, 0x75, 0x89, 0x91, 0xA9, 0xD2, 0xCA, 0x13, 0x01, 0xCA, 0x33, 0x81, 0xCA, 0x34, 0xCA, 0x13, 0x01, 0xCA, 0x33, 0x80, 0xCC, 0xB6, 0x09, 0xC7, 0x38, 0x82, 0xA4, 0x55, 0x81, 0x91, 0xA9, 0xD2, 0x01, 0xCA, 0x33, 0x80, 0xCA, 0x13, 0x02, 0xCA, 0x33, 0x81, 0xD2, 0x13, 0xC5, 0xF7, 0x03, 0xC7, 0x38, 0x80, 0xC7, 0x39, 0x04, 0xC7, 0x38, 0x83, 0xA4, 0x75, 0x81, 0x91, 0xA9, 0xD2, 0xCA, 0x13, 0x03, 0xCA, 0x33, 0x84, 0xCA, 0x13, 0xCA, 0x33, 0x91, 0xB1, 0x81, 0x91, 0xCA, 0x13, 0x03, + 0xCA, 0x33, 0x85, 0xCA, 0x13, 0xCA, 0x33, 0xCA, 0x13, 0xC4, 0x55, 0xC7, 0x38, 0xC7, 0x39, 0x03, 0xC7, 0x38, 0x80, 0xC7, 0x39, 0x02, 0xC7, 0x38, 0x82, 0x8A, 0x52, 0x89, 0x91, 0xC2, 0x13, 0x03, 0xCA, 0x13, 0x83, 0xCA, 0x33, 0xCA, 0x13, 0xCA, 0x33, 0xCD, 0x56, 0x01, 0xC7, 0x38, 0x83, 0xC7, 0x39, 0xB5, 0xD7, 0x81, 0x91, 0x91, 0xB1, 0x02, 0xCA, 0x13, 0x80, 0xD2, 0x33, 0x02, 0xCA, 0x33, 0x81, 0xCB, 0x55, 0xCF, 0x38, 0x04, 0xC7, 0x38, 0x81, 0xC7, 0x39, 0xC7, 0x38, 0x01, 0x81, 0x91, 0x02, 0xCA, 0x13, 0x86, 0xCA, 0x33, 0xCA, 0x13, 0xCA, 0x33, 0xD2, 0x33, 0xCA, 0x13, 0x81, 0x91, 0xA9, 0xD2, 0x01, 0xCA, 0x33, 0x01, 0xCA, 0x13, 0x83, 0xCA, 0x33, 0xCA, 0x13, 0xCA, 0x33, 0xCD, 0xF7, 0x02, 0xC7, 0x38, 0x84, 0xC7, 0x39, 0xA4, 0x75, 0x81, 0x91, 0xA9, 0xD2, 0xCA, 0x13, 0x03, 0xCA, 0x33, 0x82, 0xCA, 0x13, 0xCA, 0x33, 0xC5, 0xF7, 0x02, 0xC7, 0x38, 0x82, 0xB5, 0xD6, 0x81, 0x91, 0x99, 0xB2, 0x01, 0xCA, 0x33, 0x80, 0xD2, 0x13, 0x03, 0xCA, 0x33, 0x81, 0xCB, 0x74, 0xC7, 0x39, 0x03, 0xC7, 0x38, 0x80, 0xC7, 0x39, 0x01, 0xC7, 0x38, 0x82, 0x8A, 0xB2, 0x81, 0x91, 0xBA, 0x13, 0x01, 0xCA, 0x13, 0x81, 0xCA, 0x33, 0xCA, 0x13, 0x01, 0xCA, 0x33, 0x87, 0xCA, 0x13, 0xCF, 0x39, 0xC7, 0x39, 0xC7, 0x59, 0xCF, 0x3A, 0xCF, 0x39, 0xCE, 0xD9, 0xC9, 0xF3, 0x04, 0xC0, 0xB1, 0x03, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x80, 0x98, 0x94, 0x02, 0xB8, 0xD1, 0x8E, 0x42, 0xDA, 0x05, 0x9F, 0x05, 0xFF, 0x06, 0x78, 0x07, 0xCC, 0x07, 0xF1, 0x07, 0xFC, 0x07, 0xFF, + 0x82, 0xB5, 0xA8, 0xF1, 0xB0, 0xF1, 0x98, 0xF2, 0x41, 0x32, 0x39, 0x12, 0x70, 0xF1, 0x01, 0xA8, 0xF1, 0x80, 0x50, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x28, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xCF, 0x0E, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x10, 0xD3, 0x08, 0xF3, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0A, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x02, 0xC0, 0xB1, 0x80, 0xCF, 0x57, 0x01, 0xD7, 0x58, 0x89, 0xCF, 0x58, 0xD7, 0x58, 0xCF, 0x58, 0xD7, 0x58, 0xAC, 0x74, 0x81, 0x91, 0xA9, 0xF2, 0xCA, 0x53, 0xD2, 0x53, 0xCA, 0x54, 0x02, 0xCA, 0x53, 0x82, 0xCA, 0x54, 0xCC, 0xD6, 0xCF, 0x58, 0x07, 0xD7, 0x58, 0x83, 0xCF, 0x58, 0xAC, 0x75, 0x81, 0x91, 0xA9, 0xF2, 0x01, 0xCA, 0x53, 0x80, 0xD2, 0x53, 0x02, 0xCA, 0x53, 0x86, 0xD2, 0x54, 0xCE, 0x17, 0xCF, 0x57, 0xD7, 0x58, 0xCF, 0x58, 0xD7, 0x58, 0xCF, 0x58, 0x01, 0xD7, 0x58, 0x88, 0xCF, 0x58, 0xD7, 0x58, 0xCF, 0x58, 0xAC, 0x74, 0x81, 0x91, 0xA9, 0xF2, 0xCA, 0x53, 0xCA, 0x54, 0xD2, 0x53, 0x01, 0xCA, 0x53, 0x83, 0xCA, 0x54, 0xCA, 0x53, 0x99, 0xD2, 0x89, 0xB1, 0x03, 0xCA, 0x53, 0x80, 0xD2, 0x53, 0x01, 0xCA, 0x53, 0x8E, 0xCA, 0x54, 0xD6, 0xB7, 0xD7, 0x58, 0xCF, 0x58, 0xCF, 0x57, 0xCF, 0x58, 0xD7, 0x58, 0xD7, 0x57, 0xD7, 0x58, 0xD7, 0x57, 0xD7, 0x58, 0xCF, 0x58, 0xB5, 0x35, 0x81, 0x91, 0xA1, 0xD2, 0x02, 0xCA, 0x53, 0x81, 0xD2, 0x54, 0xCA, 0x73, 0x01, 0xCA, 0x53, 0x80, + 0xCC, 0x95, 0x01, 0xD7, 0x58, 0x83, 0xCF, 0x58, 0xBD, 0xD6, 0x81, 0x91, 0x99, 0xD2, 0x01, 0xCA, 0x53, 0x80, 0xCA, 0x54, 0x01, 0xCA, 0x53, 0x82, 0xD2, 0x54, 0xCA, 0x54, 0xD4, 0x35, 0x01, 0xD7, 0x58, 0x80, 0xCF, 0x58, 0x01, 0xD7, 0x58, 0x86, 0xCF, 0x57, 0xD7, 0x38, 0xCF, 0x58, 0x9A, 0xF3, 0x89, 0x91, 0xC2, 0x13, 0xCA, 0x54, 0x01, 0xCA, 0x53, 0x86, 0xD2, 0x53, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x73, 0x81, 0x91, 0xA9, 0xF2, 0xCA, 0x53, 0x01, 0xD2, 0x53, 0x85, 0xCA, 0x54, 0xD2, 0x53, 0xCA, 0x53, 0xCA, 0x54, 0xCE, 0x17, 0xCF, 0x58, 0x01, 0xD7, 0x58, 0x86, 0xCF, 0x58, 0xAC, 0x74, 0x81, 0x91, 0xA9, 0xF2, 0xCA, 0x53, 0xCA, 0x54, 0xD2, 0x53, 0x01, 0xCA, 0x53, 0x83, 0xCA, 0x54, 0xCA, 0x53, 0xD6, 0x17, 0xD7, 0x58, 0x01, 0xCF, 0x58, 0x84, 0xBD, 0xD6, 0x81, 0x91, 0x91, 0xB2, 0xCA, 0x53, 0xD2, 0x54, 0x01, 0xCA, 0x53, 0x80, 0xCA, 0x54, 0x01, 0xD2, 0x53, 0x80, 0xCC, 0xD6, 0x03, 0xD7, 0x58, 0x8D, 0xCF, 0x57, 0xD7, 0x57, 0xCF, 0x58, 0xD7, 0x58, 0x9A, 0xF3, 0x81, 0x91, 0xBA, 0x33, 0xCA, 0x54, 0xCA, 0x53, 0xD2, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0xD2, 0x53, 0xCA, 0x53, 0x01, 0xD7, 0x58, 0x81, 0xDF, 0x59, 0xD7, 0x79, 0x01, 0xD7, 0x59, 0x81, 0xD6, 0xF9, 0xC1, 0xF2, 0x03, 0xC0, 0xB1, 0x02, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x03, 0x00, 0x1F, 0x81, 0x18, 0x3E, 0xB0, 0xD2, 0x01, 0xB8, 0xD1, 0x88, 0x99, 0x74, 0x05, 0x9F, 0x06, 0x1F, 0x06, 0x98, 0x07, 0xCC, 0x07, 0xF0, 0x07, 0xFC, 0x07, 0xFF, 0x82, 0xB5, 0x01, 0xB0, 0xF1, 0x89, 0x88, 0xF1, 0x41, 0x32, 0x41, + 0x11, 0x39, 0x10, 0x98, 0xF1, 0xA8, 0xF2, 0x88, 0xF1, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x27, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x01, 0x18, 0x10, 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x02, 0xC0, 0xB1, 0x06, 0xDF, 0x77, 0x84, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x12, 0xCA, 0x94, 0xCA, 0x74, 0x03, 0xCA, 0x94, 0x81, 0xD2, 0x94, 0xD4, 0xF5, 0x09, 0xDF, 0x77, 0x82, 0xB4, 0x74, 0x81, 0x91, 0xAA, 0x12, 0x01, 0xCA, 0x94, 0x85, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xDE, 0x36, 0x01, 0xDF, 0x77, 0x80, 0xDF, 0x57, 0x06, 0xDF, 0x77, 0x83, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x12, 0xCA, 0x94, 0x05, 0xD2, 0x94, 0x86, 0x99, 0xD2, 0x91, 0xD2, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x80, 0xD3, 0xD4, 0x02, 0xDF, 0x77, 0x80, 0xDF, 0x76, 0x04, 0xDF, 0x77, 0x80, 0xDF, 0x57, 0x01, 0xDF, 0x77, 0x81, 0x81, 0x91, 0x89, 0x92, 0x02, 0xCA, 0x94, 0x84, 0xD2, 0x94, 0xCA, 0x94, 0xCA, 0x93, 0xCA, 0x94, 0xD3, 0xD5, 0x02, 0xDF, 0x77, 0x82, 0xC5, 0xF5, 0x81, 0x91, 0x99, 0xD2, 0x01, 0xCA, 0x94, 0x85, 0xD2, 0x73, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xD5, 0x15, 0x07, 0xDF, 0x77, 0x82, 0x9B, 0x12, 0x81, 0x91, 0xBA, 0x53, 0x01, 0xCA, 0x94, 0x86, 0xD2, 0x94, 0xCA, 0x94, 0xCA, 0x93, 0xD2, 0x94, + 0xCA, 0x94, 0x81, 0x91, 0xAA, 0x12, 0x02, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x01, 0xD2, 0x94, 0x80, 0xDE, 0x36, 0x01, 0xDF, 0x77, 0x85, 0xDF, 0x57, 0xDF, 0x77, 0xB4, 0x74, 0x81, 0x91, 0xAA, 0x12, 0xCA, 0x94, 0x05, 0xD2, 0x94, 0x80, 0xDE, 0x36, 0x02, 0xDF, 0x77, 0x83, 0xC5, 0xF5, 0x81, 0x91, 0x99, 0xD2, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x80, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x81, 0xCA, 0x93, 0xD4, 0xF5, 0x07, 0xDF, 0x77, 0x83, 0x9B, 0x12, 0x81, 0x91, 0xBA, 0x53, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x83, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0x05, 0xDF, 0x78, 0x81, 0xE7, 0x79, 0xDF, 0x19, 0x03, 0xC0, 0xB1, 0x08, 0x00, 0x1F, 0x80, 0x38, 0x5B, 0x02, 0xB8, 0xD1, 0x86, 0x2C, 0x3C, 0x06, 0x1F, 0x06, 0xB7, 0x07, 0xCB, 0x07, 0xF0, 0x07, 0xFB, 0x07, 0xFF, 0x01, 0xB0, 0xF1, 0x88, 0xA8, 0xF1, 0x79, 0x12, 0x41, 0x32, 0x41, 0x11, 0x39, 0x11, 0x41, 0x10, 0xA0, 0xF1, 0xA8, 0xF1, 0x48, 0xEF, 0x01, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x26, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x10, 0xCF, 0x12, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0x8E, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0E, 0x18, 0xAD, 0x01, 0xB8, 0xD1, 0x82, 0xC0, 0xD1, 0xE7, 0x76, 0xE7, 0x96, 0x01, 0xE7, 0x97, 0x02, 0xE7, 0x96, 0x82, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x33, 0x02, 0xD2, 0xB4, 0x81, 0xCA, 0xB4, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x81, 0xDD, 0x35, 0xE7, 0x76, 0x08, 0xE7, 0x96, 0x82, 0xB4, 0x74, 0x81, 0x91, + 0xAA, 0x33, 0x02, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x85, 0xCA, 0xD4, 0xD2, 0xD4, 0xE6, 0x56, 0xEF, 0x96, 0xE7, 0x76, 0xE7, 0x97, 0x01, 0xE7, 0x96, 0x81, 0xE7, 0x76, 0xE7, 0x77, 0x02, 0xE7, 0x96, 0x82, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x33, 0x06, 0xD2, 0xB4, 0x84, 0x99, 0xD2, 0x99, 0xF2, 0xCA, 0xB4, 0xD2, 0xB4, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x85, 0xCA, 0xD4, 0xD2, 0xB4, 0xD3, 0xF5, 0xE7, 0x77, 0xE7, 0x97, 0xEF, 0x97, 0x01, 0xE7, 0x96, 0x81, 0xE7, 0x76, 0xE7, 0x77, 0x02, 0xE7, 0x96, 0x81, 0xE7, 0x77, 0xEF, 0x97, 0x01, 0x81, 0x91, 0x01, 0xD2, 0xB4, 0x01, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x81, 0xCA, 0xD4, 0xD3, 0xD5, 0x02, 0xE7, 0x96, 0x85, 0xCE, 0x15, 0x81, 0x91, 0x99, 0xF2, 0xCA, 0xD4, 0xD2, 0xB4, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x85, 0xCA, 0xB4, 0xD2, 0xB4, 0xDD, 0x35, 0xE7, 0x77, 0xEF, 0x76, 0xE7, 0x96, 0x01, 0xE7, 0x97, 0x86, 0xE7, 0x76, 0xE7, 0x96, 0xE7, 0x76, 0xC5, 0x34, 0xB4, 0x94, 0xCC, 0x15, 0xD3, 0xF5, 0x01, 0xDB, 0xF4, 0x85, 0xDB, 0xF5, 0xD3, 0xF5, 0xD3, 0xF4, 0xCB, 0x34, 0x81, 0x91, 0xAA, 0x32, 0x03, 0xD2, 0xB4, 0x84, 0xD2, 0xD4, 0xD2, 0xB4, 0xCA, 0xB4, 0xE6, 0x56, 0xE7, 0x76, 0x01, 0xE7, 0x96, 0x83, 0xE7, 0x76, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x33, 0x06, 0xD2, 0xB4, 0x80, 0xDE, 0x56, 0x02, 0xE7, 0x96, 0x82, 0xCE, 0x15, 0x81, 0x91, 0x99, 0xF2, 0x01, 0xD2, 0xB4, 0x82, 0xD2, 0xD4, 0xD2, 0xB4, 0xD2, 0xD4, 0x01, 0xCA, 0xD4, 0x80, 0xDD, 0x15, 0x01, 0xE7, 0x96, 0x82, 0xE7, 0x76, 0xE7, 0x96, 0xEF, 0x96, 0x02, 0xE7, 0x96, 0x82, + 0x9B, 0x13, 0x81, 0x91, 0xBA, 0x73, 0x06, 0xD2, 0xB4, 0x84, 0xE7, 0x97, 0xEF, 0x97, 0xEF, 0x77, 0xEF, 0x97, 0xEF, 0x78, 0x02, 0xEF, 0x98, 0x83, 0xC9, 0x92, 0xB8, 0xD1, 0xC0, 0xD1, 0xC0, 0xB1, 0x09, 0x00, 0x1F, 0x80, 0x70, 0x96, 0x01, 0xB8, 0xD1, 0x86, 0x8A, 0x35, 0x06, 0x3F, 0x06, 0xD6, 0x07, 0xEA, 0x07, 0xF1, 0x07, 0xFC, 0x07, 0xFF, 0x02, 0xA8, 0xF1, 0x89, 0x61, 0x32, 0x41, 0x32, 0x41, 0x11, 0x38, 0xF1, 0x31, 0x10, 0x48, 0xF0, 0xA8, 0xF1, 0x98, 0xF1, 0x30, 0xCF, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x82, 0x20, 0xAE, 0x20, 0xAD, 0x20, 0xAE, 0x25, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x18, 0xD0, 0x11, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0D, 0x18, 0xAD, 0x02, 0xB8, 0xD1, 0x82, 0xF7, 0x96, 0xF7, 0xB6, 0xF7, 0x96, 0x01, 0xF7, 0x95, 0x84, 0xF7, 0x96, 0xEF, 0xB6, 0xBC, 0x93, 0x81, 0x91, 0xAA, 0x52, 0x02, 0xD2, 0xF4, 0x02, 0xD2, 0xF5, 0x81, 0xD2, 0xF4, 0xDD, 0x55, 0x08, 0xF7, 0xB6, 0x84, 0xEF, 0xB6, 0xBC, 0x93, 0x81, 0x91, 0xAA, 0x53, 0xD2, 0xF5, 0x05, 0xD2, 0xF4, 0x82, 0xE6, 0x75, 0xF7, 0x96, 0xF7, 0x95, 0x02, 0xF7, 0x96, 0x80, 0xF7, 0xB6, 0x01, 0xF7, 0xB5, 0x84, 0xEF, 0x96, 0xF7, 0x96, 0xBC, 0x93, 0x81, 0x91, 0xAA, 0x33, 0x06, 0xD2, 0xF4, 0x01, 0x99, 0xF2, 0x80, 0xD2, 0xF5, 0x01, 0xD2, 0xF4, 0x81, 0xD2, 0xF5, 0xD2, 0xD4, 0x01, 0xD2, 0xF4, 0x80, 0xDC, 0x75, 0x02, 0xF7, 0x95, 0x81, 0xF7, + 0x96, 0xF7, 0xB5, 0x03, 0xF7, 0x96, 0x84, 0xEF, 0xB6, 0xF7, 0xB5, 0xF7, 0x96, 0x81, 0x91, 0x89, 0x91, 0x06, 0xD2, 0xF4, 0x80, 0xDC, 0x15, 0x02, 0xF7, 0x96, 0x82, 0xD6, 0x15, 0x81, 0x91, 0x99, 0xF2, 0x03, 0xD2, 0xF4, 0x8D, 0xD2, 0xF5, 0xD2, 0xF4, 0xD2, 0xF5, 0xE5, 0x35, 0xF7, 0xB6, 0xF7, 0xB5, 0xF7, 0x96, 0xEF, 0xB6, 0xF7, 0x96, 0xF7, 0x95, 0xF7, 0xB6, 0xF7, 0x96, 0xF7, 0xB6, 0xF7, 0x95, 0x01, 0xF7, 0x96, 0x87, 0xF7, 0x95, 0xF7, 0xB6, 0xF7, 0x95, 0xF7, 0xB6, 0xF7, 0x96, 0xBC, 0x93, 0x81, 0x91, 0xAA, 0x53, 0x06, 0xD2, 0xF4, 0x80, 0xEE, 0x75, 0x01, 0xF7, 0x96, 0x84, 0xF7, 0xB5, 0xF7, 0x96, 0xBC, 0x93, 0x81, 0x91, 0xAA, 0x33, 0x06, 0xD2, 0xF4, 0x89, 0xEE, 0x75, 0xF7, 0x96, 0xF7, 0xB5, 0xF7, 0x95, 0xD6, 0x34, 0x81, 0x91, 0x99, 0xF2, 0xD2, 0xF4, 0xD2, 0xF5, 0xD2, 0xF4, 0x02, 0xD2, 0xF5, 0x83, 0xD2, 0xD4, 0xE5, 0x55, 0xF7, 0x96, 0xF7, 0xB5, 0x01, 0xF7, 0xB6, 0x86, 0xF7, 0x95, 0xF7, 0xB6, 0xF7, 0x96, 0xF7, 0xB6, 0xA3, 0x11, 0x81, 0x91, 0xBA, 0x94, 0x06, 0xD2, 0xF4, 0x01, 0xF7, 0x96, 0x02, 0xF7, 0x97, 0x80, 0xF7, 0xB7, 0x01, 0xF7, 0x98, 0x80, 0xD2, 0x73, 0x02, 0xB8, 0xD1, 0x0A, 0x00, 0x1F, 0x80, 0x98, 0xB4, 0x01, 0xB8, 0xD1, 0x96, 0x3C, 0x9B, 0x06, 0xF5, 0x07, 0xE9, 0x07, 0xF1, 0x07, 0xFD, 0x26, 0xBD, 0xB0, 0xF1, 0xB0, 0xF2, 0xB0, 0xF1, 0x49, 0x32, 0x41, 0x32, 0x41, 0x11, 0x39, 0x11, 0x31, 0x10, 0x30, 0xF0, 0x60, 0xF0, 0xA9, 0x11, 0x70, 0xF0, 0x20, 0xCE, 0x20, 0xCF, 0x20, 0xAE, 0x20, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x24, + 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x01, 0x18, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x09, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x12, 0x18, 0xAD, 0x02, 0xB8, 0xD1, 0x80, 0xFF, 0x94, 0x03, 0xFF, 0xB5, 0x85, 0xFF, 0xB4, 0xFF, 0xB5, 0xC4, 0x93, 0x81, 0x91, 0xAA, 0x53, 0xD3, 0x15, 0x02, 0xD3, 0x35, 0x83, 0xD3, 0x34, 0xD3, 0x15, 0xD3, 0x35, 0xE5, 0x75, 0x09, 0xFF, 0xB5, 0x82, 0xC4, 0x93, 0x81, 0x91, 0xAA, 0x53, 0x01, 0xD3, 0x35, 0x81, 0xD3, 0x14, 0xD3, 0x15, 0x02, 0xD3, 0x35, 0x82, 0xF6, 0x75, 0xFF, 0xB5, 0xFF, 0xB4, 0x01, 0xFF, 0xB5, 0x02, 0xFF, 0xB4, 0x01, 0xFF, 0xB5, 0x83, 0xFF, 0x95, 0xC4, 0x93, 0x81, 0x91, 0xAA, 0x53, 0x03, 0xD3, 0x35, 0x01, 0xD3, 0x15, 0x80, 0xD3, 0x35, 0x01, 0x99, 0xF2, 0x82, 0xD3, 0x35, 0xD3, 0x14, 0xD3, 0x15, 0x01, 0xD3, 0x35, 0x82, 0xD3, 0x15, 0xD3, 0x35, 0xDC, 0x54, 0x03, 0xFF, 0xB5, 0x80, 0xFF, 0xB4, 0x04, 0xFF, 0xB5, 0x81, 0xFF, 0xB4, 0xFF, 0xB5, 0x01, 0x81, 0x91, 0x81, 0xD3, 0x34, 0xD3, 0x15, 0x03, 0xD3, 0x35, 0x82, 0xD3, 0x15, 0xDC, 0x34, 0xFF, 0xB4, 0x01, 0xFF, 0xB5, 0x85, 0xDE, 0x34, 0x81, 0x91, 0x99, 0xF2, 0xD3, 0x14, 0xD3, 0x35, 0xD3, 0x15, 0x01, 0xD3, 0x34, 0x01, 0xD3, 0x35, 0x80, 0xE5, 0x74, 0x06, 0xFF, 0xB5, 0x01, 0xFF, 0xB4, 0x81, 0xFF, 0xB5, 0xFF, 0xB4, 0x02, 0xFF, 0xB5, 0x80, 0xFF, 0xB4, 0x01, 0xFF, 0xB5, 0x82, 0xC4, 0xB3, 0x81, 0x91, 0xAA, 0x53, 0x01, 0xD3, 0x35, 0x81, 0xD3, 0x14, 0xD3, + 0x15, 0x02, 0xD3, 0x35, 0x80, 0xED, 0xF5, 0x03, 0xFF, 0xB5, 0x82, 0xC4, 0x93, 0x81, 0x91, 0xAA, 0x53, 0x03, 0xD3, 0x35, 0x01, 0xD3, 0x15, 0x81, 0xD3, 0x35, 0xF6, 0x94, 0x02, 0xFF, 0xB5, 0x82, 0xDE, 0x14, 0x81, 0x91, 0x99, 0xF2, 0x01, 0xD3, 0x35, 0x85, 0xD3, 0x14, 0xD3, 0x34, 0xD3, 0x14, 0xD3, 0x34, 0xD3, 0x15, 0xE5, 0x55, 0x02, 0xFF, 0xB5, 0x80, 0xFF, 0xB4, 0x03, 0xFF, 0xB5, 0x82, 0xA3, 0x32, 0x81, 0x91, 0xBA, 0xB4, 0x02, 0xD3, 0x35, 0x81, 0xD3, 0x15, 0xD3, 0x34, 0x01, 0xD3, 0x35, 0x80, 0xFF, 0xB5, 0x04, 0xFF, 0xB6, 0x83, 0xFF, 0xB7, 0xFF, 0xB8, 0xDB, 0xD4, 0xB8, 0xD2, 0x01, 0xB8, 0xD1, 0x09, 0x00, 0x1F, 0x89, 0x00, 0x3F, 0x08, 0x3F, 0x70, 0xF7, 0xB8, 0xD1, 0xA9, 0x52, 0x0E, 0x94, 0x07, 0xC9, 0x07, 0xF2, 0x07, 0xFD, 0x2E, 0x3C, 0x01, 0xA8, 0xF1, 0x80, 0x99, 0x11, 0x01, 0x41, 0x32, 0x81, 0x39, 0x11, 0x39, 0x10, 0x01, 0x30, 0xF0, 0x84, 0x30, 0xEF, 0x58, 0xF0, 0xA8, 0xF1, 0x40, 0xCF, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x23, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x00, 0xF7, 0x00, 0xF9, 0x01, 0x18, 0x18, 0xCF, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x23, 0x18, 0xAD, 0x02, 0xB8, 0xD1, 0x04, 0xFE, 0x2E, 0x01, 0xFE, 0x4E, 0x82, 0xC3, 0xF0, 0x81, 0x91, 0xAA, 0x73, 0x06, 0xD3, 0x55, 0x80, 0xEC, 0xD1, 0x09, 0xFE, 0x2E, 0x82, 0xC3, 0xEF, 0x81, 0x91, 0xAA, 0x73, 0x05, 0xD3, 0x55, 0x81, 0xD3, 0x54, 0xF5, 0x90, 0x01, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x80, 0xFE, 0x4E, 0x04, 0xFE, 0x2E, 0x82, 0xC3, 0xEF, 0x81, 0x91, + 0xAA, 0x73, 0x06, 0xD3, 0x55, 0x83, 0x9A, 0x12, 0x91, 0xF2, 0xD3, 0x55, 0xD3, 0x54, 0x04, 0xD3, 0x55, 0x81, 0xDB, 0xD4, 0xFE, 0x4E, 0x03, 0xFE, 0x2E, 0x82, 0xFE, 0x4E, 0xFE, 0x2E, 0xFE, 0x4E, 0x02, 0xFE, 0x2E, 0x80, 0xFE, 0x4E, 0x01, 0x81, 0x91, 0x06, 0xD3, 0x55, 0x81, 0xDC, 0x13, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x82, 0xE5, 0x0F, 0x81, 0x91, 0x99, 0xF2, 0x05, 0xD3, 0x55, 0x81, 0xD3, 0x54, 0xEC, 0xD1, 0x07, 0xFE, 0x2E, 0x80, 0xFE, 0x4E, 0x03, 0xFE, 0x2E, 0x01, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x82, 0xC3, 0xCF, 0x81, 0x91, 0xAA, 0x73, 0x06, 0xD3, 0x55, 0x81, 0xE4, 0xD1, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x83, 0xFE, 0x4E, 0xC3, 0xD0, 0x81, 0x91, 0xAA, 0x73, 0x06, 0xD3, 0x55, 0x81, 0xF5, 0x90, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x82, 0xE5, 0x0F, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x55, 0x83, 0xEC, 0xD2, 0xFE, 0x2E, 0xFE, 0x4E, 0xFE, 0x2E, 0x02, 0xFE, 0x4E, 0x84, 0xFE, 0x4D, 0xFE, 0x2F, 0xA2, 0xB0, 0x81, 0x91, 0xC2, 0xF4, 0x06, 0xD3, 0x55, 0x80, 0xFE, 0x2F, 0x02, 0xFE, 0x50, 0x01, 0xFE, 0x51, 0x01, 0xFE, 0x52, 0x81, 0xE3, 0xD2, 0xB8, 0xD2, 0x01, 0xB8, 0xD1, 0x08, 0x00, 0x1F, 0x8D, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x3F, 0x00, 0xDF, 0x59, 0xF8, 0xB8, 0xD1, 0x82, 0x91, 0x07, 0xC9, 0x07, 0xF2, 0x07, 0xFE, 0x45, 0x5A, 0xB0, 0xF1, 0xA8, 0xF1, 0x81, 0x12, 0x01, 0x41, 0x32, 0x87, 0x39, 0x11, 0x38, 0xF0, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xEF, 0x28, 0xCF, 0x50, 0xCF, 0x48, 0xEF, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x23, + 0x18, 0xAD, 0x83, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xCF, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x20, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0xB8, 0xD1, 0xB0, 0xD1, 0xB0, 0xD2, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x80, 0xFC, 0x8D, 0x02, 0xFC, 0x6D, 0x82, 0xC3, 0x0F, 0x81, 0xB1, 0xAA, 0x73, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xEC, 0x11, 0x08, 0xFC, 0x6D, 0x83, 0xFC, 0x8D, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x01, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x83, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x96, 0xF4, 0x2F, 0x01, 0xFC, 0x6D, 0x80, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x01, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x83, 0xFC, 0x8D, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x03, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x82, 0xD3, 0x95, 0x9A, 0x12, 0x81, 0x91, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x81, 0xF4, 0x4F, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x80, 0xFC, 0x8D, 0x03, 0xFC, 0x6D, 0x01, 0xFC, 0x8D, 0x80, 0xFC, 0x6D, 0x01, 0x81, 0x91, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xDB, 0xD3, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x82, 0xE3, 0xCE, 0x81, 0x91, 0x9A, 0x12, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x02, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x03, 0xFC, 0x6D, 0x01, 0xFC, 0x8D, 0x07, 0xFC, 0x6D, 0x86, 0xFC, 0x8D, 0xFC, 0x6D, 0xFC, 0x8D, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x75, 0x05, 0xD3, 0x95, 0x87, 0xEB, 0xF1, 0xFC, 0x8D, 0xFC, 0x6D, 0xFC, 0x8D, 0xFC, 0x6D, 0xC3, + 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x03, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x81, 0xD3, 0x95, 0xF4, 0x2F, 0x01, 0xFC, 0x6D, 0x83, 0xFC, 0x8D, 0xE3, 0xCE, 0x81, 0x91, 0x9A, 0x12, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x76, 0x01, 0xD3, 0x95, 0x81, 0xEB, 0xF1, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x80, 0xFC, 0x8D, 0x02, 0xFC, 0x6D, 0x84, 0xFC, 0x8D, 0xA2, 0x50, 0x81, 0x91, 0xC3, 0x14, 0xD3, 0x75, 0x04, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xFC, 0x8E, 0x02, 0xFC, 0x8F, 0x01, 0xFC, 0xB0, 0x01, 0xFC, 0xB1, 0x83, 0xF3, 0xB2, 0xB8, 0xD1, 0xB0, 0xF1, 0xB8, 0xD1, 0x09, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x92, 0x00, 0x5F, 0x03, 0x1F, 0x2D, 0x3B, 0x99, 0xB2, 0x45, 0x4B, 0x07, 0xF3, 0x07, 0xFE, 0x54, 0x98, 0xB0, 0xF1, 0xA8, 0xF1, 0x69, 0x12, 0x49, 0x12, 0x41, 0x12, 0x39, 0x11, 0x31, 0x10, 0x30, 0xF0, 0x30, 0xEF, 0x30, 0xCF, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x82, 0x20, 0xCD, 0x20, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x21, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x29, 0x18, 0xAD, 0x01, 0xB0, 0xF1, 0x80, 0xB0, 0xD1, 0x06, 0xFC, 0x8D, 0x82, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x09, 0xFC, 0x8D, 0x82, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x4F, 0x09, 0xFC, 0x8D, 0x82, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x82, 0x9A, 0x12, 0x81, 0x91, 0xC3, 0x34, 0x06, 0xD3, 0x95, 0x81, 0xDB, + 0xB4, 0xFC, 0x8E, 0x09, 0xFC, 0x8D, 0x01, 0x81, 0x91, 0x05, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xDB, 0xD3, 0x02, 0xFC, 0x8D, 0x82, 0xE3, 0xCE, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x10, 0xFC, 0x8D, 0x82, 0xCB, 0x2F, 0x81, 0x91, 0xAA, 0x93, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x03, 0xFC, 0x8D, 0x82, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x4F, 0x02, 0xFC, 0x8D, 0x82, 0xCB, 0x6F, 0x81, 0x91, 0x9A, 0x32, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x07, 0xFC, 0x8D, 0x82, 0xA2, 0x50, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x81, 0xFC, 0x8E, 0xFC, 0x8F, 0x01, 0xFC, 0xAF, 0x02, 0xFC, 0xB0, 0x81, 0xFC, 0xB2, 0xF4, 0x51, 0x02, 0xB0, 0xD1, 0x08, 0x00, 0x1F, 0x02, 0x00, 0x3F, 0x87, 0x00, 0x5F, 0x02, 0x5F, 0x06, 0xFD, 0x07, 0x70, 0x0F, 0x88, 0x07, 0xF4, 0x07, 0xFF, 0x54, 0x78, 0x01, 0xA8, 0xF1, 0x82, 0x59, 0x32, 0x41, 0x32, 0x41, 0x11, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x82, 0x30, 0xEF, 0x28, 0xCF, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x03, 0x20, 0xAD, 0x1A, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xCF, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x2C, 0x18, 0xAD, 0x01, 0xB0, 0xF1, 0x82, 0xB0, 0xD1, 0xFC, 0xAD, 0xFC, 0xCD, 0x01, 0xFC, 0xAD, 0x02, 0xFC, 0xCD, 0x82, 0xCB, 0x4E, 0x81, 0x91, 0xAA, 0x73, 0x06, 0xD3, 0x95, 0x81, 0xEC, 0x31, 0xFC, 0xAD, 0x08, 0xFC, 0xCD, 0x82, 0xC3, 0x2F, 0x89, 0x91, + 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x6F, 0x02, 0xFC, 0xCD, 0x80, 0xFC, 0xAD, 0x02, 0xFC, 0xCD, 0x02, 0xFC, 0xAD, 0x82, 0xC3, 0x2F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x83, 0xBB, 0x11, 0x81, 0x91, 0xAA, 0x73, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x86, 0xDB, 0xB4, 0xFC, 0xAE, 0xFC, 0xAD, 0xFC, 0xCD, 0xFC, 0xAD, 0xFC, 0xCD, 0xFC, 0xAD, 0x01, 0xFC, 0xCD, 0x01, 0xFC, 0xAD, 0x01, 0x81, 0x91, 0x05, 0xD3, 0x95, 0x82, 0xD3, 0x75, 0xDB, 0xD3, 0xFC, 0xAD, 0x01, 0xFC, 0xCD, 0x82, 0xDB, 0xEE, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x82, 0xEC, 0x31, 0xFC, 0xCD, 0xFC, 0xAD, 0x0A, 0xFC, 0xCD, 0x86, 0xFC, 0xAD, 0xFC, 0xCD, 0xFC, 0xAD, 0xFC, 0xCD, 0xDB, 0xEE, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xDB, 0xD3, 0x03, 0xFC, 0xCD, 0x82, 0xC3, 0x2F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x81, 0xF4, 0x6F, 0xFC, 0xAD, 0x01, 0xFC, 0xCD, 0x82, 0xC3, 0x2F, 0x89, 0x91, 0xAA, 0x94, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x31, 0x01, 0xFC, 0xCD, 0x81, 0xFC, 0xAD, 0xFC, 0xCD, 0x03, 0xFC, 0xAD, 0x82, 0xA2, 0x70, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x80, 0xFC, 0xCE, 0x01, 0xFC, 0xCF, 0x82, 0xFC, 0xEF, 0xFC, 0xD0, 0xFC, 0xF0, 0x01, 0xFC, 0xF1, 0x80, 0xFC, 0xF2, 0x01, 0xB0, 0xF1, 0x80, 0xB0, 0xF2, 0x08, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x90, 0x00, 0x5F, 0x00, 0x7F, 0x02, 0x1F, 0x06, 0xFC, 0x07, 0x8D, 0x07, 0xE7, 0x07, 0xF6, 0x07, 0xFF, 0x82, 0xB5, 0xA8, 0xF1, 0xA1, 0x11, 0x49, 0x32, 0x41, 0x32, 0x41, + 0x11, 0x38, 0xF1, 0x38, 0xF0, 0x30, 0xF0, 0x01, 0x30, 0xEF, 0x81, 0x28, 0xCF, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x03, 0x20, 0xAD, 0x1A, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF6, 0x01, 0x19, 0x01, 0x18, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x2A, 0x18, 0xAD, 0x83, 0xB0, 0xF1, 0xA8, 0xF1, 0xB0, 0xF1, 0xFD, 0x0D, 0x02, 0xFC, 0xED, 0x85, 0xFD, 0x0D, 0xFC, 0xED, 0xFD, 0x0D, 0xE4, 0x2E, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x51, 0x09, 0xFC, 0xED, 0x82, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x8F, 0x09, 0xFC, 0xED, 0x82, 0xC3, 0x2F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x82, 0xEC, 0x6F, 0x91, 0xD1, 0x89, 0xD1, 0x05, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x81, 0xDB, 0xB4, 0xEC, 0x70, 0x04, 0xFC, 0xED, 0x80, 0xFD, 0x0D, 0x01, 0xFC, 0xED, 0x01, 0x81, 0x91, 0x06, 0xD3, 0x95, 0x80, 0xDB, 0xF3, 0x02, 0xFC, 0xED, 0x82, 0xE4, 0x2E, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x51, 0x0E, 0xFC, 0xED, 0x84, 0xFD, 0x0D, 0xFC, 0xED, 0xEC, 0x6E, 0x81, 0x91, 0x91, 0xF2, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x01, 0xD3, 0x95, 0x86, 0xF4, 0xAF, 0xFD, 0x0D, 0xFC, 0xED, 0xFD, 0x0D, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x8F, 0x02, 0xFC, 0xED, 0x83, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x75, 0x05, 0xD3, 0x95, 0x80, 0xEC, 0x51, 0x07, 0xFC, 0xED, 0x82, 0xA2, 0x70, 0x81, + 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x80, 0xFD, 0x0E, 0x02, 0xFD, 0x0F, 0x01, 0xFD, 0x10, 0x01, 0xFD, 0x31, 0x80, 0xFD, 0x32, 0x02, 0xB0, 0xF1, 0x08, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x02, 0x00, 0x5F, 0x8A, 0x02, 0x1F, 0x07, 0x3B, 0x07, 0xAC, 0x07, 0xE7, 0x07, 0xF7, 0x07, 0xFF, 0x82, 0xB5, 0xA8, 0xF1, 0x89, 0x12, 0x49, 0x32, 0x41, 0x12, 0x01, 0x39, 0x11, 0x82, 0x31, 0x10, 0x30, 0xF0, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x03, 0x20, 0xAD, 0x1D, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF6, 0x01, 0x19, 0x01, 0x18, 0x10, 0xCF, 0x01, 0x20, 0xAD, 0x2F, 0x18, 0xAD, 0x82, 0xB0, 0xF1, 0xA8, 0xF1, 0xB0, 0xF1, 0x06, 0xFD, 0x2D, 0x82, 0xE4, 0x4E, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x09, 0xFD, 0x2D, 0x82, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0xCF, 0x09, 0xFD, 0x2D, 0x82, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x83, 0xF4, 0xCF, 0xC3, 0x4F, 0x81, 0x91, 0xB2, 0xD4, 0x09, 0xD3, 0x95, 0x81, 0xDB, 0xD4, 0xE4, 0x31, 0x01, 0xEC, 0x71, 0x83, 0xDB, 0xF0, 0xE4, 0x50, 0xF4, 0xCF, 0xFD, 0x0E, 0x01, 0x81, 0x91, 0x06, 0xD3, 0x95, 0x88, 0xDB, 0xD4, 0xF4, 0xAF, 0xF4, 0xCF, 0xF4, 0xAF, 0xDC, 0x10, 0x9A, 0x12, 0xAA, 0x73, 0xD3, 0x95, 0xD3, 0x96, 0x04, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x0F, 0xFD, 0x2D, 0x01, 0xFD, 0x2C, 0x84, 0x92, 0x11, 0x81, 0x91, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x96, 0x05, 0xD3, 0x95, 0x85, 0xEC, 0x71, 0xFC, 0xEE, 0xFD, 0x2D, + 0xC3, 0x6F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x86, 0xDC, 0x10, 0xE4, 0x4E, 0xDC, 0x2E, 0xE4, 0x4E, 0xB2, 0xF0, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x07, 0xFD, 0x2D, 0x82, 0xA2, 0x70, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x80, 0xFD, 0x2E, 0x01, 0xFD, 0x2F, 0x80, 0xFD, 0x4F, 0x01, 0xFD, 0x50, 0x01, 0xFD, 0x51, 0x83, 0xFD, 0x71, 0xA8, 0xF1, 0xB0, 0xF1, 0xB0, 0xF2, 0x07, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x5F, 0x01, 0x00, 0x7F, 0x90, 0x02, 0x3F, 0x07, 0x3B, 0x07, 0xAB, 0x07, 0xE8, 0x07, 0xF9, 0x07, 0xFF, 0xA1, 0x52, 0xA8, 0xF1, 0x71, 0x32, 0x41, 0x32, 0x41, 0x31, 0x39, 0x11, 0x39, 0x10, 0x38, 0xF0, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xCF, 0x01, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x05, 0x20, 0xAD, 0x1B, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF6, 0x01, 0x19, 0x01, 0x18, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x29, 0x18, 0xAD, 0x01, 0xA8, 0xF1, 0x80, 0xA8, 0xF2, 0x03, 0xFD, 0x6D, 0x80, 0xFD, 0x4D, 0x01, 0xFD, 0x6D, 0x82, 0xE4, 0x6E, 0x81, 0x91, 0x92, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x09, 0xFD, 0x6D, 0x82, 0xC3, 0x6F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0xEF, 0x09, 0xFD, 0x6D, 0x82, 0xC3, 0x6F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x88, 0xF4, 0xEF, 0xFD, 0x2D, 0x92, 0x11, 0x89, 0xB2, 0xCB, 0x75, 0xD3, 0x96, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x96, 0x0B, 0xD3, 0x95, 0x80, 0xEC, 0x91, + 0x01, 0x81, 0x91, 0x0B, 0xD3, 0x95, 0x80, 0xCB, 0x95, 0x07, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x0C, 0xFD, 0x6D, 0x80, 0xFD, 0x4D, 0x03, 0xFD, 0x6D, 0x82, 0xBB, 0x2F, 0x81, 0x91, 0xB2, 0xD4, 0x0A, 0xD3, 0x95, 0x82, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x09, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x09, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x07, 0xFD, 0x6D, 0x82, 0xA2, 0x90, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x80, 0xFD, 0x6E, 0x01, 0xFD, 0x6F, 0x80, 0xFD, 0x8F, 0x01, 0xFD, 0x90, 0x01, 0xFD, 0x91, 0x80, 0xFD, 0x92, 0x02, 0xA8, 0xF1, 0x06, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x01, 0x00, 0x5F, 0x87, 0x00, 0x7F, 0x00, 0x9F, 0x02, 0x3F, 0x07, 0x79, 0x07, 0xAA, 0x07, 0xE8, 0x07, 0xFB, 0x07, 0xFF, 0x01, 0xA8, 0xF1, 0x85, 0x59, 0x32, 0x49, 0x32, 0x41, 0x31, 0x39, 0x11, 0x39, 0x10, 0x38, 0xF0, 0x01, 0x30, 0xEF, 0x80, 0x28, 0xCF, 0x01, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x06, 0x20, 0xAD, 0x19, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xCD, 0x01, 0x16, 0x01, 0x19, 0x01, 0x18, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x2A, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0xA8, 0xF1, 0x83, 0xEC, 0x6F, 0xFD, 0x8D, 0xFD, 0xAD, 0xFD, 0x8D, 0x02, 0xFD, 0xAD, 0x82, 0xE4, 0x8E, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x81, 0xEC, 0x91, 0xFD, 0xAD, 0x08, 0xFD, 0x8D, 0x82, 0xC3, 0x8F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x83, 0xF5, 0x2F, 0xFD, 0xAD, 0xFD, 0x8D, 0xFD, 0xAD, 0x01, 0xFD, 0x8D, 0x80, 0xFD, 0xAD, 0x01, 0xFD, 0x8D, 0x01, + 0xFD, 0xAD, 0x82, 0xC3, 0x8F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x84, 0xF5, 0x2F, 0xFD, 0x8D, 0xE4, 0xAE, 0x89, 0x91, 0x9A, 0x32, 0x0F, 0xD3, 0x95, 0x80, 0xE4, 0x91, 0x01, 0x81, 0x91, 0x06, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x0C, 0xD3, 0x95, 0x80, 0xEC, 0x91, 0x01, 0xFD, 0xAD, 0x07, 0xFD, 0x8D, 0x01, 0xFD, 0xAD, 0x01, 0xFD, 0x8D, 0x01, 0xFD, 0xAD, 0x84, 0xFD, 0x8D, 0xFD, 0xAD, 0xF5, 0x2D, 0x81, 0x91, 0x91, 0xF2, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x82, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x14, 0xD3, 0x95, 0x80, 0xEC, 0x91, 0x01, 0xFD, 0x8D, 0x04, 0xFD, 0xAD, 0x83, 0xFD, 0x8D, 0xA2, 0x90, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x03, 0xFD, 0xAF, 0x01, 0xFD, 0xB0, 0x83, 0xFD, 0xB1, 0xFD, 0xD1, 0xE4, 0xB2, 0xA9, 0x11, 0x01, 0xA8, 0xF1, 0x06, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x5F, 0x01, 0x00, 0x7F, 0x88, 0x00, 0x9F, 0x02, 0xBF, 0x07, 0x78, 0x07, 0xC8, 0x07, 0xE9, 0x07, 0xFD, 0x17, 0x3E, 0xA8, 0xF1, 0x99, 0x12, 0x01, 0x49, 0x32, 0x83, 0x41, 0x31, 0x41, 0x11, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xEF, 0x80, 0x28, 0xCF, 0x01, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x80, 0x20, 0xCD, 0x04, 0x20, 0xAD, 0x81, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x18, 0xCF, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x2A, 0x18, 0xAD, 0x02, 0xA9, 0x11, 0x80, 0xEC, 0x8E, 0x01, 0xFD, 0xED, 0x02, 0xFD, + 0xCD, 0x83, 0xFD, 0xED, 0xE4, 0xCE, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0xB1, 0x09, 0xFD, 0xCD, 0x82, 0xC3, 0xAF, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF5, 0x4F, 0x01, 0xFD, 0xCD, 0x80, 0xFD, 0xED, 0x04, 0xFD, 0xCD, 0x84, 0xFD, 0xED, 0xFD, 0xCD, 0xC3, 0xAF, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x85, 0xF5, 0x4F, 0xFD, 0xED, 0xFD, 0xCD, 0xD4, 0x4F, 0x81, 0x91, 0xB2, 0xB3, 0x09, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x03, 0xD3, 0x95, 0x82, 0xEC, 0xB1, 0x89, 0x91, 0x81, 0x91, 0x0B, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x07, 0xD3, 0x95, 0x80, 0xEC, 0xB1, 0x12, 0xFD, 0xCD, 0x82, 0xBB, 0x6F, 0x81, 0x91, 0xBA, 0xF4, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x03, 0xD3, 0x95, 0x82, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x14, 0xD3, 0x95, 0x80, 0xEC, 0xB1, 0x01, 0xFD, 0xED, 0x01, 0xFD, 0xCD, 0x03, 0xFD, 0xED, 0x82, 0xA2, 0xB0, 0x81, 0x91, 0xC3, 0x14, 0x05, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xFD, 0xEE, 0x01, 0xFD, 0xEF, 0x02, 0xFD, 0xF0, 0x01, 0xFD, 0xF1, 0x81, 0xEC, 0xB1, 0xA0, 0xF1, 0x01, 0xA9, 0x11, 0x06, 0x00, 0x1F, 0x02, 0x00, 0x5F, 0x80, 0x00, 0x7F, 0x01, 0x00, 0x9F, 0x87, 0x04, 0x1F, 0x07, 0x97, 0x07, 0xC7, 0x07, 0xEB, 0x07, 0xFE, 0x2E, 0x5C, 0xA8, 0xF1, 0x79, 0x32, 0x01, 0x49, 0x32, 0x83, 0x41, 0x11, 0x39, 0x11, 0x39, 0x10, 0x38, 0xF0, 0x01, 0x30, 0xEF, 0x02, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x80, 0x20, 0xCD, 0x04, 0x20, 0xAD, 0x1A, 0x18, 0xAD, 0x83, 0x00, 0xF7, 0x01, 0x18, 0x01, 0x17, 0x18, 0xCF, 0x05, 0x18, 0xAD, + 0x80, 0x18, 0xAC, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAC, 0x29, 0x18, 0xAD, 0x01, 0xA9, 0x11, 0x81, 0xA1, 0x11, 0xE4, 0x2E, 0x05, 0xFE, 0x0D, 0x82, 0xE4, 0xEE, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0xD1, 0x09, 0xFE, 0x0D, 0x82, 0xC3, 0xCF, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF5, 0x6F, 0x09, 0xFE, 0x0D, 0x82, 0xC3, 0xCF, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF5, 0x6F, 0x02, 0xFE, 0x0D, 0x82, 0xD4, 0x4F, 0x81, 0x91, 0xBA, 0xD3, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xEC, 0xD1, 0x01, 0x81, 0x91, 0x0E, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x04, 0xD3, 0x95, 0x80, 0xEC, 0xD1, 0x12, 0xFE, 0x0D, 0x83, 0xF5, 0xAD, 0x9A, 0x70, 0x89, 0xB1, 0xD3, 0x75, 0x08, 0xD3, 0x95, 0x82, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x0C, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0xD1, 0x02, 0xFE, 0x0D, 0x81, 0xFE, 0x0E, 0xFE, 0x0D, 0x02, 0xFE, 0x0E, 0x82, 0xA2, 0xB0, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x02, 0xFE, 0x0F, 0x02, 0xFE, 0x30, 0x01, 0xFE, 0x31, 0x83, 0xDC, 0x32, 0xA1, 0x11, 0xA9, 0x11, 0xA1, 0x11, 0x06, 0x00, 0x1F, 0x01, 0x00, 0x5F, 0x01, 0x00, 0x7F, 0x8B, 0x00, 0x9F, 0x00, 0xBF, 0x04, 0x3F, 0x07, 0x94, 0x07, 0xE6, 0x07, 0xEC, 0x07, 0xFE, 0x35, 0xDB, 0xA9, 0x11, 0x51, 0x33, 0x49, 0x32, 0x41, 0x32, 0x01, 0x41, 0x11, 0x81, 0x39, 0x10, 0x30, 0xF0, 0x01, 0x30, 0xEF, 0x01, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x80, 0x20, 0xCD, 0x04, 0x20, + 0xAD, 0x16, 0x18, 0xAD, 0x8B, 0x18, 0xAC, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF6, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xCF, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAC, 0x20, 0xAD, 0x30, 0x18, 0xAD, 0x81, 0x18, 0xAC, 0x80, 0xF0, 0x01, 0xA1, 0x11, 0x80, 0xC2, 0xB0, 0x05, 0xFE, 0x4D, 0x82, 0xE5, 0x0E, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0xF1, 0x09, 0xFE, 0x4D, 0x82, 0xC3, 0xEF, 0x89, 0x91, 0xAA, 0x93, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x02, 0xD3, 0x95, 0x80, 0xF5, 0x8F, 0x09, 0xFE, 0x4D, 0x84, 0xC3, 0xEF, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x95, 0xD3, 0x96, 0x04, 0xD3, 0x95, 0x80, 0xF5, 0x8F, 0x03, 0xFE, 0x4D, 0x83, 0xE5, 0x0E, 0x89, 0xD1, 0xA2, 0x53, 0xCB, 0x75, 0x05, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x04, 0xD3, 0x95, 0x80, 0xEC, 0xF1, 0x01, 0x81, 0x91, 0x14, 0xD3, 0x95, 0x80, 0xEC, 0xF1, 0x13, 0xFE, 0x4D, 0x83, 0xF6, 0x0E, 0x9A, 0x70, 0x91, 0xF2, 0xCB, 0x75, 0x05, 0xD3, 0x95, 0x86, 0xD3, 0x96, 0xD3, 0x95, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x95, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x0F, 0xD3, 0x95, 0x80, 0xEC, 0xF2, 0x02, 0xFE, 0x4D, 0x89, 0xFE, 0x4E, 0xFE, 0x4D, 0xFE, 0x4E, 0xFE, 0x4D, 0xFE, 0x4E, 0xA2, 0xD0, 0x81, 0x91, 0xC3, 0x14, 0xD3, 0x95, 0xD3, 0x96, 0x04, 0xD3, 0x95, 0x83, 0xFE, 0x4E, 0xFE, 0x4F, 0xFE, 0x6F, 0xFE, 0x70, 0x01, 0xFE, 0x50, 0x82, 0xFE, 0x71, 0xFE, 0x51, 0xBA, 0x52, 0x01, 0xA1, 0x11, 0x80, 0x78, 0xD5, 0x06, 0x00, 0x1F, 0x80, 0x00, 0x5F, 0x01, 0x00, 0x7F, 0x80, 0x00, 0x9F, + 0x01, 0x00, 0xBF, 0x8F, 0x04, 0x3F, 0x07, 0xB3, 0x07, 0xC5, 0x07, 0xEE, 0x07, 0xFF, 0x54, 0x78, 0x6A, 0xD6, 0x49, 0x53, 0x49, 0x32, 0x49, 0x12, 0x41, 0x11, 0x39, 0x11, 0x39, 0x10, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xCF, 0x02, 0x28, 0xCE, 0x80, 0x20, 0xCE, 0x01, 0x20, 0xCD, 0x04, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x84, 0x00, 0xF6, 0x01, 0x18, 0x00, 0xF8, 0x18, 0xCF, 0x18, 0xAC, 0x01, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x2F, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAC, 0x60, 0xEF, 0x01, 0xA1, 0x11, 0x81, 0xA1, 0x12, 0xFE, 0x2D, 0x04, 0xFE, 0x8D, 0x82, 0xE5, 0x4E, 0x81, 0x91, 0x9A, 0x12, 0x04, 0xD3, 0x95, 0x82, 0xD3, 0x75, 0xD3, 0x95, 0xED, 0x11, 0x08, 0xFE, 0x6D, 0x85, 0xFE, 0x8D, 0xC4, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x95, 0xD3, 0x96, 0x03, 0xD3, 0x95, 0x82, 0xD3, 0x75, 0xF5, 0xCF, 0xFE, 0x6D, 0x07, 0xFE, 0x8D, 0x83, 0xFE, 0x6D, 0xC4, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF5, 0xCE, 0x01, 0xFE, 0x6D, 0x86, 0xFE, 0x8D, 0xFE, 0x6C, 0xFE, 0x8D, 0xF6, 0x2D, 0xC4, 0x0F, 0x9A, 0x12, 0xB2, 0xD4, 0x0A, 0xD3, 0x95, 0x80, 0xEC, 0xF1, 0x01, 0x81, 0x91, 0x14, 0xD3, 0x95, 0x80, 0xED, 0x11, 0x09, 0xFE, 0x6D, 0x80, 0xFE, 0x8D, 0x06, 0xFE, 0x6D, 0x86, 0xFE, 0x6C, 0xFE, 0x8D, 0xFE, 0x6D, 0xFE, 0x2D, 0xBB, 0xCF, 0x89, 0xB1, 0xBA, 0xF4, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x83, 0xD3, 0x96, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x14, 0xD3, 0x95, 0x80, 0xED, 0x12, 0x07, 0xFE, 0x8E, 0x82, 0xA2, 0xD0, + 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x02, 0xFE, 0x8F, 0x02, 0xFE, 0x90, 0x89, 0xFE, 0x91, 0xE4, 0x71, 0xA1, 0x11, 0xA1, 0x12, 0xA1, 0x11, 0x60, 0xD5, 0x00, 0x1F, 0x28, 0x3C, 0x70, 0x97, 0x40, 0x5A, 0x02, 0x00, 0x1F, 0x82, 0x00, 0x3F, 0x00, 0x7F, 0x00, 0x9F, 0x01, 0x00, 0xBF, 0x8A, 0x00, 0xDF, 0x04, 0x5F, 0x07, 0xD2, 0x07, 0xE4, 0x07, 0xEF, 0x07, 0xFF, 0x2E, 0x3C, 0x2D, 0x1A, 0x51, 0x33, 0x49, 0x32, 0x41, 0x32, 0x01, 0x39, 0x11, 0x83, 0x38, 0xF0, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xCF, 0x01, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x01, 0x20, 0xCD, 0x04, 0x20, 0xAD, 0x17, 0x18, 0xAD, 0x83, 0x00, 0xF6, 0x01, 0x18, 0x00, 0xF7, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAC, 0x31, 0x18, 0xAD, 0x80, 0x28, 0xCD, 0x02, 0xA1, 0x11, 0x80, 0xCB, 0xCF, 0x04, 0xFE, 0xAD, 0x82, 0xF5, 0xED, 0x89, 0xD1, 0x91, 0xD2, 0x04, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xD3, 0x95, 0xED, 0x11, 0x09, 0xFE, 0xAD, 0x82, 0xC4, 0x2F, 0x81, 0xB1, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF5, 0xEF, 0x07, 0xFE, 0xAD, 0x84, 0xFE, 0xCC, 0xFE, 0xAD, 0xC4, 0x2F, 0x81, 0x91, 0xAA, 0x93, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x03, 0xD3, 0x95, 0x82, 0xF5, 0xEF, 0xFE, 0xAD, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x80, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x86, 0xF6, 0x4D, 0xD4, 0xCE, 0xBB, 0xD0, 0xC3, 0xB2, 0xC3, 0x14, 0xD3, 0x95, 0xD3, 0x75, 0x05, 0xD3, 0x95, 0x80, 0xED, 0x12, 0x01, 0x81, 0x91, 0x10, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x02, 0xD3, 0x95, + 0x80, 0xED, 0x31, 0x01, 0xFE, 0xAC, 0x14, 0xFE, 0xAD, 0x84, 0xEE, 0x0D, 0xCC, 0x6F, 0xBB, 0x51, 0xBA, 0xD4, 0xCB, 0x55, 0x03, 0xD3, 0x95, 0x82, 0xC3, 0x34, 0x81, 0x91, 0xB2, 0x94, 0x12, 0xD3, 0x95, 0x88, 0xD3, 0x75, 0xD3, 0x95, 0xED, 0x11, 0xFE, 0xAE, 0xFE, 0xCE, 0xFE, 0xAD, 0xFE, 0xAE, 0xFE, 0xAD, 0xFE, 0xCE, 0x01, 0xFE, 0xAE, 0x82, 0xA2, 0xF0, 0x81, 0x91, 0xC3, 0x14, 0x05, 0xD3, 0x95, 0x8D, 0xDC, 0x34, 0xFE, 0xAF, 0xFE, 0xD0, 0xFE, 0xAF, 0xFE, 0xD0, 0xFE, 0xB0, 0xFE, 0xD1, 0xE4, 0x91, 0xA9, 0x11, 0xA1, 0x11, 0x99, 0x31, 0xA1, 0x11, 0x58, 0xD6, 0x88, 0xB5, 0x01, 0xB8, 0xD1, 0x80, 0x50, 0x59, 0x03, 0x00, 0x1F, 0x88, 0x00, 0x7F, 0x00, 0x9F, 0x00, 0xBF, 0x00, 0xFF, 0x00, 0xDF, 0x04, 0x7F, 0x07, 0xD2, 0x07, 0xE3, 0x07, 0xF1, 0x01, 0x07, 0xFF, 0x84, 0x2C, 0xBA, 0x49, 0x33, 0x41, 0x32, 0x41, 0x31, 0x41, 0x11, 0x01, 0x38, 0xF0, 0x82, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xEF, 0x01, 0x28, 0xCE, 0x80, 0x20, 0xCE, 0x01, 0x20, 0xCD, 0x05, 0x20, 0xAD, 0x16, 0x18, 0xAD, 0x80, 0x00, 0xF6, 0x01, 0x01, 0x18, 0x81, 0x18, 0xCF, 0x20, 0xAD, 0x01, 0x18, 0xAC, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x31, 0x18, 0xAD, 0x87, 0x20, 0xAC, 0x20, 0xAD, 0x18, 0xAD, 0x81, 0x10, 0x99, 0x11, 0xA1, 0x11, 0xA1, 0x71, 0xF5, 0xED, 0x05, 0xFE, 0xAD, 0x83, 0xFE, 0xAC, 0xFE, 0x6D, 0xF5, 0xCF, 0xF5, 0xEF, 0x01, 0xF5, 0xCF, 0x82, 0xF5, 0xEF, 0xF5, 0xCF, 0xFE, 0x4D, 0x0B, 0xFE, 0xAD, 0x80, 0xFE, 0x4E, 0x01, 0xF5, 0xEF, 0x81, 0xF5, 0xCF, 0xF5, 0xEE, 0x02, 0xF5, 0xEF, + 0x80, 0xFE, 0x8D, 0x03, 0xFE, 0xAC, 0x81, 0xFE, 0xAD, 0xFE, 0x8D, 0x02, 0xFE, 0xAD, 0x01, 0xFE, 0xAC, 0x85, 0xFE, 0xAD, 0xF6, 0x4D, 0xF5, 0xEF, 0xF5, 0xCF, 0xF5, 0xEF, 0xF5, 0xCF, 0x02, 0xF5, 0xEF, 0x80, 0xFE, 0x6E, 0x04, 0xFE, 0xAD, 0x01, 0xFE, 0xAC, 0x03, 0xFE, 0xAD, 0x80, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x82, 0xF6, 0x0E, 0xF5, 0xEF, 0xF5, 0xCF, 0x01, 0xF5, 0xEF, 0x83, 0xF5, 0xCF, 0xF6, 0x4E, 0xFE, 0xAC, 0xFE, 0xAD, 0x0F, 0xF5, 0xEF, 0x80, 0xF5, 0xCF, 0x02, 0xF5, 0xEF, 0x82, 0xF5, 0xCF, 0xFE, 0x4D, 0xFE, 0xAC, 0x08, 0xFE, 0xAD, 0x80, 0xFE, 0xAC, 0x08, 0xFE, 0xAD, 0x80, 0xFE, 0xAC, 0x06, 0xFE, 0xAD, 0x80, 0xFE, 0x6D, 0x01, 0xF5, 0xEF, 0x01, 0xF5, 0xCF, 0x85, 0xFE, 0xAD, 0xF6, 0x2E, 0xF5, 0xEF, 0xF5, 0xD0, 0xF5, 0xEF, 0xF5, 0xCF, 0x01, 0xF5, 0xF0, 0x80, 0xF5, 0xEF, 0x0B, 0xF5, 0xF0, 0x83, 0xF5, 0xEF, 0xF5, 0xF0, 0xFE, 0x4F, 0xFE, 0xCE, 0x07, 0xFE, 0xAE, 0x82, 0xFE, 0xAF, 0xF6, 0x10, 0xF5, 0xD0, 0x03, 0xF5, 0xF0, 0x80, 0xF6, 0x10, 0x02, 0xFE, 0xAF, 0x85, 0xFE, 0xD0, 0xFE, 0xB0, 0xFE, 0xB1, 0xE4, 0x71, 0xB8, 0xD1, 0xA1, 0x11, 0x01, 0x99, 0x31, 0x82, 0x99, 0x12, 0x69, 0x33, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x80, 0x28, 0x3C, 0x02, 0x00, 0x1F, 0x89, 0x00, 0x3F, 0x00, 0x7F, 0x00, 0xBF, 0x00, 0xDF, 0x00, 0xFF, 0x01, 0x1F, 0x04, 0x7F, 0x07, 0xD1, 0x07, 0xE3, 0x07, 0xF3, 0x01, 0x07, 0xFF, 0x80, 0x3B, 0x77, 0x01, 0x49, 0x32, 0x81, 0x41, 0x31, 0x41, 0x11, 0x01, 0x38, 0xF0, 0x01, 0x30, 0xEF, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCE, 0x80, + 0x20, 0xCE, 0x01, 0x20, 0xCD, 0x03, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x13, 0x18, 0xAD, 0x83, 0x01, 0x18, 0x01, 0x17, 0x18, 0xCF, 0x18, 0xAD, 0x01, 0x18, 0xAC, 0x84, 0x18, 0xAD, 0x18, 0xAC, 0x20, 0xAD, 0x18, 0xAC, 0x20, 0xAC, 0x30, 0x18, 0xAC, 0x83, 0x18, 0xCD, 0x18, 0xAC, 0x20, 0xAC, 0x38, 0xCE, 0x02, 0x99, 0x31, 0x83, 0xAA, 0x31, 0xFE, 0x2D, 0xFE, 0x8C, 0xFE, 0x8D, 0x02, 0xFE, 0x8C, 0x81, 0xFE, 0xAD, 0xFE, 0x8C, 0x01, 0xFE, 0xAC, 0x01, 0xFE, 0x8C, 0x83, 0xFE, 0xAC, 0xFE, 0xAD, 0xFE, 0x8D, 0xFE, 0x8C, 0x07, 0xFE, 0xAD, 0x01, 0xFE, 0x8C, 0x01, 0xFE, 0xAC, 0x83, 0xFE, 0xAD, 0xFE, 0x8C, 0xFE, 0xAD, 0xFE, 0x8C, 0x01, 0xFE, 0x8D, 0x81, 0xFE, 0x8C, 0xFE, 0xAD, 0x01, 0xFE, 0x8C, 0x01, 0xFE, 0xAD, 0x01, 0xFE, 0xAC, 0x01, 0xFE, 0x8C, 0x82, 0xFE, 0xAC, 0xFE, 0x8C, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x8B, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0xAD, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0x8D, 0xFE, 0xAC, 0xFE, 0x8C, 0xFE, 0xAC, 0xFE, 0x8D, 0x01, 0xFE, 0xAD, 0x81, 0xFE, 0x8C, 0xFE, 0xAC, 0x01, 0xFE, 0x8C, 0x84, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0xAC, 0xFE, 0x8D, 0xFE, 0x8C, 0x01, 0xFE, 0xAD, 0x02, 0xFE, 0x8C, 0x82, 0xFE, 0xAD, 0xFE, 0x8C, 0xFE, 0xAC, 0x0F, 0xFE, 0xAD, 0x83, 0xFE, 0x8C, 0xFE, 0xAC, 0xFE, 0x8D, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x80, 0xFE, 0x8C, 0x10, 0xFE, 0xAD, 0x83, 0xFE, 0xAC, 0xFE, 0x8C, 0xFE, 0xAD, 0xFE, 0x8C, 0x03, 0xFE, 0x8D, 0x02, 0xFE, 0xAD, 0x80, 0xFE, 0x8D, 0x03, 0xFE, 0xAD, 0x82, 0xFE, 0x8D, + 0xFE, 0x8E, 0xFE, 0xAD, 0x01, 0xFE, 0xAE, 0x80, 0xFE, 0xAD, 0x0B, 0xFE, 0xAE, 0x01, 0xFE, 0x8E, 0x02, 0xFE, 0xAE, 0x80, 0xFE, 0x8E, 0x02, 0xFE, 0xAE, 0x01, 0xFE, 0x8E, 0x81, 0xFE, 0xAE, 0xFE, 0xAF, 0x01, 0xFE, 0xAE, 0x81, 0xFE, 0xAF, 0xFE, 0x8E, 0x04, 0xFE, 0xAF, 0x88, 0xFE, 0x8F, 0xFE, 0xB0, 0xFE, 0xAF, 0xFE, 0xB0, 0xFE, 0x90, 0xE4, 0x71, 0xB8, 0xD2, 0xA1, 0x11, 0x99, 0x11, 0x01, 0x99, 0x31, 0x84, 0x71, 0x32, 0x71, 0x33, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xD2, 0x04, 0x00, 0x1F, 0x80, 0x00, 0x7F, 0x01, 0x00, 0xDF, 0x01, 0x01, 0x1F, 0x83, 0x04, 0x9F, 0x07, 0xF0, 0x07, 0xE2, 0x07, 0xF4, 0x01, 0x07, 0xFF, 0x80, 0x3A, 0xF6, 0x01, 0x49, 0x32, 0x83, 0x41, 0x11, 0x39, 0x11, 0x39, 0x10, 0x38, 0xF0, 0x01, 0x30, 0xEF, 0x80, 0x28, 0xEE, 0x01, 0x28, 0xCE, 0x80, 0x20, 0xCE, 0x01, 0x20, 0xCD, 0x02, 0x20, 0xAD, 0x81, 0x18, 0xAC, 0x20, 0xAC, 0x01, 0x18, 0xAD, 0x15, 0x18, 0xAC, 0x81, 0x01, 0x17, 0x18, 0xCF, 0x01, 0x20, 0xAC, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x81, 0x18, 0xAC, 0x20, 0xAC, 0x32, 0x18, 0xAC, 0x83, 0x20, 0xAD, 0x20, 0xAC, 0x60, 0xEF, 0x99, 0x12, 0x01, 0x99, 0x31, 0x81, 0xB2, 0x70, 0xF6, 0x2D, 0x01, 0xFE, 0x8C, 0x02, 0xFE, 0x8D, 0x81, 0xFE, 0x8C, 0xFE, 0x8D, 0x03, 0xFE, 0x8C, 0x02, 0xFE, 0x8D, 0x08, 0xFE, 0x8C, 0x80, 0xFE, 0x8D, 0x01, 0xFE, 0x8C, 0x02, 0xFE, 0x8D, 0x82, 0xFE, 0x8C, 0xFE, 0x8D, 0xFE, 0x8C, 0x03, 0xFE, 0x8D, 0x80, 0xFE, 0x8C, 0x08, 0xFE, 0x8D, 0x81, 0xFE, 0x8C, 0xFE, 0x8D, 0x03, 0xFE, 0x8C, + 0x80, 0xFE, 0x8D, 0x02, 0xFE, 0x8C, 0x01, 0xFE, 0x8D, 0x02, 0xFE, 0x8C, 0x01, 0xFE, 0x8D, 0x01, 0xFE, 0x8C, 0x80, 0xFE, 0x8D, 0x03, 0xFE, 0x8C, 0x01, 0xFE, 0x8D, 0x81, 0xFE, 0x8C, 0xFE, 0x8D, 0x02, 0xFE, 0x8C, 0x12, 0xFE, 0x8D, 0x01, 0xFE, 0x8C, 0x83, 0xFE, 0x6D, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0x8D, 0x0A, 0xFE, 0x8C, 0x04, 0xFE, 0x8D, 0x80, 0xFE, 0x8C, 0x09, 0xFE, 0x8D, 0x80, 0xFE, 0x8E, 0x04, 0xFE, 0x8D, 0x10, 0xFE, 0x8E, 0x80, 0xFE, 0x8F, 0x01, 0xFE, 0x8E, 0x01, 0xFE, 0x8F, 0x80, 0xFE, 0x8E, 0x01, 0xFE, 0x8F, 0x82, 0xFE, 0x8E, 0xFE, 0x8F, 0xFE, 0x8E, 0x0A, 0xFE, 0x8F, 0x01, 0xFE, 0x90, 0x01, 0xFE, 0xB0, 0x82, 0xE4, 0x71, 0xB8, 0xD1, 0xA1, 0x11, 0x01, 0x99, 0x31, 0x86, 0x99, 0x12, 0x89, 0x11, 0x51, 0x74, 0x69, 0x53, 0xB0, 0xF1, 0xB0, 0xD1, 0x90, 0xB4, 0x03, 0x00, 0x1F, 0x8F, 0x00, 0x3F, 0x00, 0x9F, 0x00, 0xDF, 0x00, 0xFF, 0x01, 0x1F, 0x01, 0x5F, 0x04, 0x9F, 0x07, 0xF1, 0x07, 0xE2, 0x07, 0xF6, 0x07, 0xFF, 0x0F, 0x9F, 0x4A, 0x35, 0x49, 0x33, 0x49, 0x32, 0x41, 0x31, 0x01, 0x39, 0x10, 0x80, 0x38, 0xF0, 0x01, 0x30, 0xEF, 0x02, 0x28, 0xCE, 0x02, 0x20, 0xCD, 0x02, 0x20, 0xAD, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x13, 0x18, 0xAC, 0x83, 0x18, 0xCE, 0x18, 0xAC, 0x20, 0xCC, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x02, 0x20, 0xAC, 0x82, 0x20, 0xAD, 0x18, 0xCC, 0x20, 0xAD, 0x31, 0x20, 0xAC, 0x83, 0x18, 0xAC, 0x20, 0xAC, 0x28, 0xAD, 0x81, 0x10, 0x01, 0x99, 0x31, 0x83, 0x99, 0x11, 0xAA, 0x31, 0xF5, 0xCD, + 0xFE, 0x8C, 0x15, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x01, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x0E, 0xFE, 0x6C, 0x80, 0xFE, 0x8C, 0x04, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x01, 0xFE, 0x6C, 0x82, 0xFE, 0x6D, 0xFE, 0x6C, 0xFE, 0x6D, 0x03, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x0A, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x19, 0xFE, 0x6C, 0x80, 0xFE, 0x8C, 0x01, 0xFE, 0x6D, 0x11, 0xFE, 0x6C, 0x83, 0xFE, 0x6D, 0xFE, 0x6C, 0xFE, 0x6D, 0xFE, 0x6C, 0x03, 0xFE, 0x6D, 0x80, 0xFE, 0x6C, 0x02, 0xFE, 0x6D, 0x80, 0xFE, 0x8E, 0x01, 0xFE, 0x8D, 0x81, 0xFE, 0x6E, 0xFE, 0x8D, 0x0A, 0xFE, 0x6E, 0x03, 0xFE, 0x6F, 0x01, 0xFE, 0x8F, 0x02, 0xFE, 0x6F, 0x80, 0xFE, 0x8F, 0x01, 0xFE, 0x6F, 0x01, 0xFE, 0x8F, 0x01, 0xFE, 0x6F, 0x80, 0xFE, 0x8F, 0x01, 0xFE, 0x6F, 0x01, 0xFE, 0x8F, 0x80, 0xFE, 0x6F, 0x01, 0xFE, 0x8F, 0x81, 0xFE, 0x6F, 0xFE, 0x90, 0x01, 0xFE, 0x8F, 0x01, 0xFE, 0x90, 0x82, 0xE4, 0x71, 0xB0, 0xD1, 0xA1, 0x11, 0x02, 0x99, 0x31, 0x83, 0x99, 0x12, 0x59, 0x53, 0x51, 0x53, 0x71, 0x33, 0x01, 0xB0, 0xD1, 0x80, 0x78, 0x96, 0x02, 0x00, 0x1F, 0x82, 0x00, 0x3F, 0x00, 0x5F, 0x00, 0xBF, 0x01, 0x01, 0x1F, 0x8D, 0x01, 0x3F, 0x01, 0x7F, 0x04, 0xBF, 0x07, 0xF2, 0x07, 0xE2, 0x07, 0xF5, 0x07, 0xFF, 0x73, 0x36, 0x51, 0x53, 0x49, 0x33, 0x49, 0x32, 0x41, 0x31, 0x41, 0x10, 0x39, 0x10, 0x02, 0x30, 0xEF, 0x01, 0x28, 0xCE, 0x80, 0x28, 0xCD, 0x02, 0x20, 0xCD, 0x02, 0x20, 0xAD, 0x01, 0x20, 0xAC, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAC, 0x16, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x05, + 0x18, 0xAC, 0x30, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x82, 0x18, 0xAC, 0x28, 0xAD, 0x91, 0x11, 0x02, 0x99, 0x31, 0x83, 0xA1, 0x71, 0xCB, 0xCF, 0xF6, 0x0D, 0xFE, 0x4D, 0x08, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x0C, 0xFE, 0x6D, 0x82, 0xFE, 0x6C, 0xFE, 0x6D, 0xFE, 0x4D, 0x04, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x04, 0xFE, 0x6D, 0x82, 0xFE, 0x4D, 0xFE, 0x6D, 0xFE, 0x6C, 0x07, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x02, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x05, 0xFE, 0x6D, 0x82, 0xFE, 0x6C, 0xFE, 0x6D, 0xFE, 0x4D, 0x08, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x2C, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x02, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x01, 0xFE, 0x6E, 0x81, 0xFE, 0x4E, 0xFE, 0x6D, 0x04, 0xFE, 0x6E, 0x80, 0xFE, 0x6F, 0x01, 0xFE, 0x6E, 0x11, 0xFE, 0x6F, 0x01, 0xFE, 0x70, 0x80, 0xFE, 0x6F, 0x08, 0xFE, 0x70, 0x80, 0xFE, 0x90, 0x03, 0xFE, 0x70, 0x02, 0xFE, 0x71, 0x84, 0xE4, 0x71, 0xA8, 0xF1, 0xA1, 0x11, 0x99, 0x31, 0x99, 0x32, 0x01, 0x99, 0x31, 0x83, 0x69, 0x33, 0x51, 0x53, 0x59, 0x53, 0x71, 0x53, 0x01, 0xB0, 0xD1, 0x80, 0x58, 0x78, 0x01, 0x00, 0x1F, 0x83, 0x00, 0x3F, 0x00, 0x7F, 0x00, 0x9F, 0x00, 0xFF, 0x01, 0x01, 0x3F, 0x88, 0x01, 0x7F, 0x01, 0x9F, 0x03, 0x3F, 0x07, 0xF3, 0x07, 0xE2, 0x07, 0xF3, 0x07, 0xFF, 0xA8, 0xF1, 0x69, 0x32, 0x01, 0x49, 0x32, 0x83, 0x49, 0x31, 0x41, 0x11, 0x39, 0x10, 0x31, 0x10, 0x01, 0x30, 0xEF, 0x01, 0x28, 0xCE, 0x80, 0x28, 0xCD, 0x02, 0x20, 0xCD, 0x02, 0x20, 0xAD, 0x01, 0x20, 0xAC, 0x80, 0x20, 0xAD, 0x16, 0x20, 0xAC, 0x80, + 0x18, 0xCC, 0x01, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x38, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x02, 0x18, 0xAC, 0x84, 0x20, 0xAC, 0x28, 0xCD, 0x81, 0x11, 0x99, 0x31, 0x99, 0x12, 0x01, 0x99, 0x31, 0x88, 0x99, 0x11, 0xBA, 0xB0, 0xDC, 0x6F, 0xE5, 0x0F, 0xE5, 0x0E, 0xFE, 0x4E, 0xFE, 0x6E, 0xFE, 0x4E, 0xFE, 0x6D, 0x01, 0xFE, 0x4E, 0x60, 0xFE, 0x4D, 0x01, 0xFE, 0x4E, 0x05, 0xFE, 0x4D, 0x03, 0xFE, 0x4E, 0x01, 0xFE, 0x6E, 0x02, 0xFE, 0x4E, 0x01, 0xFE, 0x6E, 0x82, 0xFE, 0x4E, 0xFE, 0x6F, 0xFE, 0x6E, 0x05, 0xFE, 0x6F, 0x83, 0xFE, 0x4F, 0xFE, 0x6F, 0xFE, 0x70, 0xFE, 0x50, 0x0F, 0xFE, 0x70, 0x0C, 0xFE, 0x71, 0x84, 0xF6, 0x12, 0xE5, 0x31, 0xE5, 0x12, 0xD4, 0x72, 0xB2, 0x71, 0x02, 0x99, 0x31, 0x84, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x61, 0x53, 0x51, 0x53, 0x01, 0x59, 0x54, 0x80, 0x71, 0x54, 0x01, 0xB0, 0xF1, 0x95, 0x28, 0x5C, 0x00, 0x3F, 0x00, 0x5F, 0x00, 0x7F, 0x00, 0xBF, 0x00, 0xFF, 0x01, 0x3F, 0x01, 0x5F, 0x01, 0x7F, 0x01, 0x9F, 0x01, 0xBF, 0x02, 0xFF, 0x07, 0xF4, 0x07, 0xE3, 0x07, 0xF1, 0x2E, 0x5C, 0xA9, 0x11, 0x69, 0x32, 0x51, 0x32, 0x49, 0x31, 0x41, 0x32, 0x41, 0x10, 0x01, 0x39, 0x10, 0x81, 0x30, 0xEF, 0x30, 0xEE, 0x01, 0x28, 0xCE, 0x80, 0x28, 0xCD, 0x02, 0x20, 0xCD, 0x80, 0x20, 0xAC, 0x01, 0x20, 0xAD, 0x02, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x13, 0x18, 0xAC, 0x83, 0x20, 0xAC, 0x18, 0xAC, 0x20, 0xAC, 0x18, 0xAC, 0x37, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x02, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x82, 0x28, 0xCC, + 0x61, 0x0F, 0x99, 0x11, 0x07, 0x99, 0x31, 0x80, 0x99, 0x32, 0x75, 0x99, 0x31, 0x80, 0x99, 0x12, 0x03, 0x99, 0x31, 0x82, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x01, 0x99, 0x31, 0x01, 0x99, 0x11, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x17, 0x99, 0x31, 0x01, 0x99, 0x11, 0x81, 0x99, 0x31, 0x99, 0x32, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x80, 0x99, 0x12, 0x03, 0x99, 0x31, 0x83, 0x89, 0x12, 0x51, 0x53, 0x59, 0x53, 0x51, 0x53, 0x01, 0x59, 0x74, 0x88, 0x79, 0x53, 0xB0, 0xF1, 0xB0, 0xD1, 0x08, 0x7F, 0x00, 0x9F, 0x00, 0xBF, 0x00, 0xDF, 0x01, 0x1F, 0x01, 0x5F, 0x02, 0x01, 0x9F, 0x01, 0x01, 0xDF, 0x8B, 0x01, 0xFF, 0x07, 0xF7, 0x07, 0xE3, 0x07, 0xEF, 0x54, 0x98, 0xA8, 0xF1, 0x71, 0x32, 0x49, 0x52, 0x49, 0x31, 0x41, 0x31, 0x41, 0x10, 0x39, 0x10, 0x01, 0x30, 0xEF, 0x80, 0x30, 0xEE, 0x01, 0x28, 0xCE, 0x80, 0x28, 0xCD, 0x02, 0x20, 0xCD, 0x05, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x15, 0x20, 0xAC, 0x82, 0x18, 0xAC, 0x20, 0xAC, 0x18, 0xAC, 0x39, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x03, 0x20, 0xAC, 0x82, 0x18, 0xAC, 0x40, 0xCE, 0x79, 0x10, 0x01, 0x99, 0x31, 0x80, 0x99, 0x32, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x78, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x81, 0xA1, 0x11, 0x99, 0x11, 0x2B, 0x99, 0x31, 0x81, 0x99, 0x12, 0x71, 0x32, 0x02, 0x51, 0x53, 0x01, 0x59, 0x74, 0x88, 0x61, 0x74, 0x91, 0x13, 0xB0, 0xF1, 0x98, 0xF3, 0x00, 0xDF, 0x00, 0xFF, 0x01, 0x1F, 0x01, 0x3F, 0x01, 0x7F, 0x01, 0x01, 0xBF, 0x01, 0x01, 0xDF, 0x01, 0x01, + 0xFF, 0x8E, 0x02, 0x1F, 0x06, 0xD9, 0x07, 0xE5, 0x07, 0xEC, 0x73, 0x55, 0xA8, 0xF1, 0x79, 0x32, 0x49, 0x32, 0x49, 0x31, 0x41, 0x31, 0x41, 0x10, 0x39, 0x10, 0x39, 0x0F, 0x30, 0xEF, 0x30, 0xEE, 0x01, 0x28, 0xCE, 0x01, 0x28, 0xCD, 0x01, 0x20, 0xCD, 0x59, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x07, 0x20, 0xAC, 0x83, 0x18, 0xAB, 0x30, 0xCC, 0x58, 0xCF, 0x79, 0x10, 0x01, 0x99, 0x31, 0x80, 0x99, 0x12, 0x01, 0x99, 0x31, 0x84, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x99, 0x32, 0x99, 0x31, 0x5F, 0x99, 0x11, 0x13, 0x99, 0x31, 0x01, 0x99, 0x11, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x05, 0x99, 0x31, 0x80, 0x99, 0x11, 0x1F, 0x99, 0x31, 0x85, 0xA1, 0x11, 0x99, 0x11, 0x89, 0x32, 0x69, 0x32, 0x51, 0x52, 0x51, 0x53, 0x01, 0x59, 0x53, 0x8F, 0x59, 0x74, 0x61, 0x74, 0x61, 0x75, 0x79, 0x54, 0xA8, 0xF1, 0xB0, 0xF1, 0x80, 0xF5, 0x01, 0x3F, 0x01, 0x7F, 0x01, 0x9F, 0x01, 0xBF, 0x01, 0xDF, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xFF, 0x02, 0x1F, 0x02, 0x02, 0x3F, 0x8E, 0x05, 0x7D, 0x07, 0xE8, 0x07, 0xE9, 0x82, 0xD5, 0xA0, 0xF1, 0x81, 0x32, 0x51, 0x32, 0x49, 0x31, 0x41, 0x31, 0x41, 0x10, 0x38, 0xF0, 0x38, 0xEF, 0x30, 0xEF, 0x30, 0xEE, 0x28, 0xCE, 0x02, 0x28, 0xCD, 0x01, 0x20, 0xCD, 0x1C, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x38, 0x20, 0xAC, 0x80, 0x18, 0xCC, 0x0D, 0x20, 0xAC, 0x80, 0x20, 0xAB, 0x70, 0x20, 0xAC, 0x81, 0x20, 0xCC, 0x20, 0xAD, 0x01, 0x20, 0xCD, 0x04, 0x28, 0xCD, 0x80, 0x28, 0xCE, 0x01, 0x28, 0xEE, 0x80, 0x30, 0xEE, 0x01, + 0x30, 0xEF, 0x8E, 0x30, 0xEE, 0x38, 0xEF, 0x51, 0x10, 0x61, 0x10, 0x59, 0x10, 0x69, 0x30, 0x79, 0x31, 0x81, 0x31, 0x81, 0x30, 0x99, 0x31, 0xA9, 0x32, 0xA1, 0x31, 0xB1, 0x31, 0xC9, 0x12, 0xC9, 0x11, 0x02, 0xC8, 0xF2, 0x81, 0xC8, 0xD1, 0xC0, 0xD1, 0x0A, 0xC0, 0xB1, 0x82, 0xC0, 0xD1, 0xB8, 0xB1, 0xC0, 0xD1, 0x06, 0xB8, 0xD1, 0x80, 0xB0, 0xD1, 0x01, 0xB8, 0xD1, 0x01, 0xB0, 0xD1, 0x80, 0xB0, 0xF1, 0x02, 0xB0, 0xD1, 0x02, 0xB0, 0xF1, 0x84, 0x51, 0x58, 0x01, 0xBF, 0x01, 0xDF, 0x01, 0xFF, 0x02, 0x1F, 0x01, 0x02, 0x3F, 0x81, 0x02, 0x1F, 0x02, 0x3F, 0x03, 0x02, 0x5F, 0x8C, 0x04, 0x1F, 0x07, 0xED, 0x07, 0xE4, 0x7A, 0xB4, 0xA9, 0x11, 0x91, 0x12, 0x51, 0x32, 0x49, 0x31, 0x41, 0x11, 0x41, 0x10, 0x39, 0x10, 0x38, 0xEF, 0x30, 0xEF, 0x01, 0x30, 0xEE, 0x02, 0x28, 0xCD, 0x81, 0x20, 0xCD, 0x20, 0xCC, 0x1C, 0x20, 0xAC, 0x82, 0x20, 0xCC, 0x20, 0xAC, 0x20, 0xAB, 0x3D, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x02, 0x20, 0xAC, 0x83, 0x18, 0xAC, 0x20, 0xAC, 0x20, 0xAB, 0x18, 0xAC, 0x05, 0x20, 0xAC, 0x80, 0x20, 0xAB, 0x6D, 0x20, 0xAC, 0x80, 0x20, 0xCC, 0x01, 0x20, 0xCD, 0x03, 0x28, 0xCD, 0x81, 0x28, 0xAD, 0x28, 0xCE, 0x01, 0x30, 0xCE, 0x84, 0x30, 0xEE, 0x81, 0x51, 0xB1, 0x92, 0xC9, 0xB3, 0xC9, 0xB2, 0x02, 0xC9, 0x92, 0x02, 0xC9, 0x72, 0x01, 0xC9, 0x52, 0x02, 0xC9, 0x32, 0x01, 0xC9, 0x12, 0x80, 0xC1, 0x11, 0x01, 0xC8, 0xF1, 0x82, 0xC8, 0xD1, 0xC0, 0xD1, 0xC8, 0xB1, 0x0A, 0xC0, 0xB1, 0x81, 0xC0, 0xD1, 0xB8, 0xB1, 0x06, 0xB8, 0xD1, 0x80, 0xB0, 0xD2, 0x02, + 0xB8, 0xD1, 0x80, 0xB0, 0xD1, 0x06, 0xB0, 0xF1, 0x84, 0xA8, 0xF1, 0x39, 0xBB, 0x02, 0x1F, 0x02, 0x3F, 0x02, 0x5F, 0x01, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x04, 0x02, 0x7F, 0x8C, 0x02, 0x9F, 0x07, 0xF3, 0x07, 0xE2, 0x99, 0x72, 0xA9, 0x11, 0xA1, 0x12, 0x49, 0x52, 0x49, 0x32, 0x41, 0x31, 0x41, 0x10, 0x39, 0x10, 0x38, 0xEF, 0x30, 0xEF, 0x01, 0x30, 0xEE, 0x02, 0x28, 0xCD, 0x81, 0x20, 0xCD, 0x20, 0xCC, 0x1C, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x3A, 0x20, 0xAC, 0x84, 0x18, 0xAC, 0x20, 0xAC, 0x18, 0xCC, 0x18, 0xAC, 0x20, 0xAB, 0x01, 0x20, 0xAC, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAB, 0x01, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x01, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x81, 0x20, 0xAC, 0x20, 0xAB, 0x69, 0x20, 0xAC, 0x02, 0x20, 0xCC, 0x03, 0x28, 0xCD, 0x84, 0x30, 0xCD, 0x28, 0xEE, 0x30, 0xEE, 0x49, 0x0E, 0xA9, 0xB2, 0x01, 0xC9, 0xD3, 0x01, 0xC9, 0xB3, 0x01, 0xC9, 0x92, 0x02, 0xC9, 0x72, 0x02, 0xC9, 0x52, 0x01, 0xC9, 0x32, 0x02, 0xC9, 0x12, 0x81, 0xC0, 0xF2, 0xC8, 0xD1, 0x01, 0xC0, 0xD1, 0x80, 0xC8, 0xB1, 0x0A, 0xC0, 0xB1, 0x0A, 0xB8, 0xD1, 0x01, 0xB0, 0xD1, 0x84, 0xB8, 0xD2, 0xB8, 0xD1, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF2, 0x02, 0xB0, 0xF1, 0x01, 0xA8, 0xF1, 0x81, 0x12, 0x3E, 0x02, 0x9F, 0x02, 0x02, 0xBF, 0x02, 0x02, 0x9F, 0x02, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x88, 0x02, 0xDF, 0x06, 0xB9, 0x07, 0xE3, 0xA1, 0x11, 0xA9, 0x11, 0xA1, 0x11, 0x59, 0x32, 0x49, 0x31, 0x49, 0x11, 0x01, 0x41, 0x10, 0x81, 0x39, 0x0F, 0x38, 0xEF, + 0x01, 0x30, 0xEE, 0x02, 0x28, 0xCD, 0x81, 0x20, 0xCD, 0x20, 0xCC, 0x06, 0x20, 0xAC, 0x80, 0x20, 0xAB, 0x14, 0x20, 0xAC, 0x82, 0x20, 0xAB, 0x20, 0xAC, 0x20, 0xAB, 0x39, 0x20, 0xAC, 0x82, 0x20, 0xAB, 0x20, 0xAC, 0x20, 0xAB, 0x01, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x82, 0x18, 0xAC, 0x20, 0xAC, 0x20, 0xAB, 0x02, 0x20, 0xAC, 0x80, 0x18, 0xAB, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAC, 0x05, 0x20, 0xAB, 0x69, 0x20, 0xAC, 0x81, 0x20, 0xCC, 0x20, 0xCD, 0x05, 0x28, 0xCD, 0x81, 0x30, 0xED, 0x69, 0x2F, 0x01, 0xC9, 0xD3, 0x02, 0xC9, 0xB3, 0x01, 0xC9, 0x92, 0x02, 0xC9, 0x72, 0x01, 0xC9, 0x52, 0x01, 0xC9, 0x32, 0x80, 0xC1, 0x32, 0x01, 0xC9, 0x12, 0x82, 0xC8, 0xF2, 0xC8, 0xF1, 0xC8, 0xD1, 0x01, 0xC0, 0xD1, 0x0A, 0xC0, 0xB1, 0x09, 0xB8, 0xD1, 0x82, 0xB0, 0xD1, 0xB8, 0xD1, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x81, 0xB0, 0xF1, 0xB0, 0xD1, 0x05, 0xB0, 0xF1, 0x81, 0xA8, 0xF1, 0x99, 0x33, 0x01, 0x02, 0xDF, 0x01, 0x02, 0xFF, 0x81, 0x02, 0xDF, 0x02, 0xBF, 0x04, 0x02, 0xDF, 0x01, 0x02, 0xBF, 0x83, 0x02, 0xFF, 0x05, 0x1E, 0x07, 0xE8, 0xA9, 0x12, 0x01, 0xA1, 0x11, 0x80, 0x69, 0x32, 0x01, 0x49, 0x31, 0x83, 0x41, 0x30, 0x41, 0x0F, 0x39, 0x0F, 0x38, 0xEE, 0x01, 0x30, 0xEE, 0x02, 0x28, 0xCD, 0x81, 0x20, 0xCD, 0x20, 0xCC, 0x06, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x13, 0x20, 0xAC, 0x7F, 0x20, 0xAB, 0x38, 0x20, 0xAB, 0x02, 0x20, 0xAC, 0x81, 0x28, 0xAC, 0x20, 0xCC, 0x02, 0x28, 0xCC, 0x01, 0x28, 0xCD, 0x83, 0x28, 0xED, 0x28, 0xCD, 0x30, 0xCD, 0x91, 0x91, 0x01, 0xC9, 0xD3, + 0x01, 0xC9, 0xB3, 0x81, 0xC9, 0x92, 0xC9, 0xB3, 0x01, 0xC9, 0x92, 0x01, 0xC9, 0x72, 0x01, 0xC9, 0x52, 0x01, 0xC9, 0x32, 0x83, 0xC9, 0x12, 0xC9, 0x32, 0xC9, 0x12, 0xC1, 0x12, 0x01, 0xC8, 0xF2, 0x01, 0xC8, 0xD1, 0x01, 0x90, 0x95, 0x82, 0x90, 0x75, 0x88, 0x75, 0x60, 0x78, 0x01, 0x60, 0x59, 0x01, 0x60, 0x58, 0x01, 0x60, 0x78, 0x80, 0x60, 0x59, 0x01, 0x60, 0x78, 0x82, 0x58, 0x78, 0x60, 0x78, 0x88, 0xB4, 0x01, 0x88, 0xB5, 0x03, 0xB8, 0xD1, 0x01, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x05, 0xB0, 0xF1, 0x02, 0xA8, 0xF1, 0x80, 0x69, 0xD6, 0x02, 0x03, 0x3F, 0x80, 0x03, 0x1F, 0x06, 0x02, 0xFF, 0x85, 0x02, 0xDF, 0x02, 0xFF, 0x03, 0x5F, 0x03, 0xFF, 0x07, 0xF0, 0x8A, 0x4F, 0x01, 0xA1, 0x11, 0x80, 0x81, 0x32, 0x01, 0x49, 0x31, 0x82, 0x41, 0x10, 0x41, 0x0F, 0x39, 0x0F, 0x01, 0x30, 0xEE, 0x01, 0x30, 0xCD, 0x01, 0x28, 0xCD, 0x01, 0x28, 0xCC, 0x80, 0x20, 0xCC, 0x02, 0x20, 0xAC, 0x7F, 0x20, 0xAB, 0x53, 0x20, 0xAB, 0x81, 0x20, 0xCC, 0x20, 0xAC, 0x02, 0x28, 0xCC, 0x80, 0x20, 0xCC, 0x01, 0x28, 0xCC, 0x82, 0x28, 0xCD, 0x40, 0xEE, 0xA9, 0xB2, 0x01, 0xC9, 0xD3, 0x82, 0xC9, 0xB3, 0xC9, 0xB2, 0xC9, 0xB3, 0x01, 0xC9, 0x92, 0x01, 0xC9, 0x72, 0x02, 0xC9, 0x52, 0x01, 0xC9, 0x32, 0x86, 0x90, 0xD5, 0x88, 0xD6, 0x60, 0x98, 0x58, 0x79, 0x30, 0x3C, 0x30, 0x5C, 0x08, 0x1E, 0x10, 0x00, 0x1F, 0x8A, 0x00, 0x3F, 0x00, 0x5F, 0x00, 0x7F, 0x00, 0x9F, 0x00, 0xBF, 0x00, 0xDF, 0x29, 0x1C, 0x41, 0x1A, 0x61, 0x18, 0x89, 0x15, 0xB0, 0xD1, 0x06, 0xB0, 0xF1, 0x83, 0xB0, 0xF2, + 0xA8, 0xF1, 0xB0, 0xF1, 0x42, 0x9A, 0x01, 0x03, 0x9F, 0x01, 0x03, 0x5F, 0x05, 0x03, 0x3F, 0x02, 0x03, 0x1F, 0x83, 0x03, 0x7F, 0x03, 0xFF, 0x06, 0xD7, 0x7A, 0xCF, 0x01, 0xA1, 0x11, 0x89, 0x99, 0x12, 0x51, 0x31, 0x49, 0x31, 0x41, 0x10, 0x41, 0x0F, 0x40, 0xEF, 0x38, 0xEE, 0x30, 0xEE, 0x30, 0xED, 0x30, 0xCD, 0x01, 0x28, 0xCD, 0x01, 0x28, 0xCC, 0x01, 0x20, 0xCC, 0x7F, 0x20, 0xAB, 0x55, 0x20, 0xAB, 0x02, 0x20, 0xCB, 0x02, 0x28, 0xCC, 0x83, 0x28, 0xCD, 0x28, 0xCC, 0x49, 0x0E, 0xC1, 0xD3, 0x01, 0xC9, 0xD3, 0x03, 0xC9, 0xB3, 0x01, 0xC9, 0x92, 0x85, 0xC9, 0x72, 0xC9, 0x52, 0x98, 0xF5, 0x60, 0xB8, 0x40, 0x7B, 0x18, 0x3E, 0x16, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x01, 0x00, 0x7F, 0x8E, 0x00, 0x9F, 0x00, 0xBF, 0x00, 0xFF, 0x01, 0x1F, 0x01, 0x3F, 0x01, 0x7F, 0x01, 0x9F, 0x01, 0xDF, 0x02, 0x1F, 0x21, 0xFD, 0x49, 0xD9, 0x79, 0x96, 0xA1, 0x12, 0xA8, 0xF1, 0xB0, 0xF1, 0x03, 0xA8, 0xF1, 0x82, 0x13, 0x9E, 0x03, 0xDF, 0x03, 0xBF, 0x01, 0x03, 0x9F, 0x03, 0x03, 0x7F, 0x01, 0x03, 0x5F, 0x01, 0x03, 0x3F, 0x84, 0x03, 0x5F, 0x03, 0xBF, 0x04, 0x1F, 0x05, 0xDE, 0x7A, 0xD1, 0x02, 0xA1, 0x11, 0x81, 0x59, 0x31, 0x49, 0x31, 0x01, 0x41, 0x30, 0x82, 0x40, 0xEF, 0x38, 0xEE, 0x30, 0xEE, 0x01, 0x30, 0xED, 0x03, 0x28, 0xCC, 0x80, 0x20, 0xCB, 0x7F, 0x20, 0xAB, 0x57, 0x20, 0xAB, 0x80, 0x20, 0xCB, 0x04, 0x28, 0xCC, 0x81, 0x69, 0x2F, 0xC9, 0xF3, 0x01, 0xC9, 0xD3, 0x87, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0x92, 0xC9, 0xB2, 0xC9, 0x72, 0xB9, 0x73, 0x80, 0xF7, 0x38, 0x7B, + 0x19, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x93, 0x00, 0x5F, 0x00, 0x7F, 0x00, 0x9F, 0x00, 0xBF, 0x00, 0xDF, 0x00, 0xFF, 0x01, 0x3F, 0x01, 0x5F, 0x01, 0x9F, 0x01, 0xBF, 0x01, 0xFF, 0x02, 0x3F, 0x02, 0x5F, 0x02, 0x9F, 0x02, 0xDF, 0x02, 0xFF, 0x03, 0x3F, 0x2A, 0xDC, 0x5A, 0x58, 0x89, 0x94, 0x01, 0xA8, 0xF1, 0x80, 0x81, 0xD4, 0x01, 0x04, 0x1F, 0x81, 0x03, 0xFF, 0x03, 0xDF, 0x04, 0x03, 0xBF, 0x89, 0x03, 0x9F, 0x03, 0x7F, 0x03, 0x5F, 0x03, 0x7F, 0x03, 0x9F, 0x03, 0xFF, 0x04, 0x7F, 0x04, 0xFF, 0x63, 0x75, 0xA1, 0x12, 0x01, 0xA1, 0x11, 0x81, 0x71, 0x11, 0x49, 0x31, 0x01, 0x41, 0x10, 0x82, 0x39, 0x0F, 0x38, 0xEE, 0x30, 0xEE, 0x01, 0x30, 0xED, 0x03, 0x28, 0xCC, 0x7F, 0x20, 0xAB, 0x58, 0x20, 0xAB, 0x81, 0x20, 0xCB, 0x28, 0xAC, 0x02, 0x28, 0xCC, 0x83, 0x69, 0x2E, 0xC9, 0xF3, 0xC9, 0xD2, 0xC9, 0xD3, 0x01, 0xC9, 0xB3, 0x83, 0xC9, 0x92, 0xC9, 0x93, 0x80, 0xF7, 0x38, 0x9B, 0x05, 0x00, 0x1F, 0x84, 0x08, 0x3C, 0x08, 0x5B, 0x10, 0x5B, 0x20, 0x78, 0x20, 0x98, 0x04, 0x20, 0x97, 0x83, 0x20, 0x98, 0x18, 0x7A, 0x10, 0x5B, 0x08, 0x5D, 0x08, 0x00, 0x1F, 0x9A, 0x00, 0x3F, 0x00, 0x5F, 0x00, 0x7F, 0x00, 0x9F, 0x00, 0xDF, 0x00, 0xFF, 0x01, 0x1F, 0x01, 0x5F, 0x01, 0x7F, 0x01, 0xBF, 0x01, 0xFF, 0x02, 0x1F, 0x02, 0x5F, 0x02, 0x9F, 0x02, 0xDF, 0x02, 0xFF, 0x03, 0x3F, 0x03, 0x7F, 0x03, 0xBF, 0x03, 0xDF, 0x04, 0x1F, 0x04, 0x3F, 0x0C, 0x3F, 0x2B, 0xBC, 0x0C, 0x3F, 0x04, 0x5F, 0x04, 0x3F, 0x01, 0x04, 0x1F, 0x02, 0x03, 0xFF, 0x01, 0x03, 0xDF, 0x88, 0x03, 0xBF, + 0x03, 0x9F, 0x03, 0x7F, 0x03, 0x9F, 0x03, 0xDF, 0x04, 0x3F, 0x04, 0xBF, 0x05, 0x3F, 0x53, 0x98, 0x02, 0xA1, 0x11, 0x84, 0x91, 0x11, 0x49, 0x31, 0x49, 0x10, 0x41, 0x10, 0x41, 0x0F, 0x01, 0x38, 0xEE, 0x80, 0x30, 0xED, 0x01, 0x30, 0xCD, 0x02, 0x28, 0xCC, 0x80, 0x28, 0xCB, 0x1B, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x31, 0x20, 0xAA, 0x08, 0x20, 0xAB, 0x80, 0x20, 0xCB, 0x01, 0x28, 0xCB, 0x8E, 0x28, 0xCC, 0x28, 0xCB, 0x61, 0x4E, 0xD1, 0xF3, 0xC9, 0xF3, 0xC9, 0xD3, 0xC9, 0xB2, 0xC9, 0xB3, 0xB1, 0x73, 0x60, 0xD9, 0x08, 0x1E, 0x00, 0x3D, 0x08, 0x3B, 0x18, 0x78, 0x18, 0x77, 0x01, 0x28, 0xD2, 0x81, 0x40, 0xEE, 0x38, 0xEE, 0x02, 0x39, 0x0F, 0x80, 0x41, 0x0E, 0x06, 0x41, 0x0F, 0x87, 0x41, 0x10, 0x41, 0x0F, 0x49, 0x10, 0x41, 0x30, 0x38, 0xF3, 0x28, 0xB6, 0x18, 0x9A, 0x00, 0x3E, 0x01, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x5F, 0x94, 0x00, 0x7F, 0x00, 0xBF, 0x00, 0xDF, 0x00, 0xFF, 0x01, 0x3F, 0x01, 0x5F, 0x01, 0x9F, 0x01, 0xDF, 0x02, 0x1F, 0x02, 0x3F, 0x02, 0x7F, 0x02, 0x9F, 0x02, 0xFF, 0x03, 0x3F, 0x03, 0x5F, 0x03, 0x9F, 0x03, 0xDF, 0x04, 0x1F, 0x04, 0x5F, 0x04, 0x7F, 0x04, 0xBF, 0x01, 0x04, 0xDF, 0x01, 0x04, 0xBF, 0x01, 0x04, 0x7F, 0x02, 0x04, 0x3F, 0x01, 0x04, 0x1F, 0x81, 0x03, 0xFF, 0x03, 0xDF, 0x01, 0x03, 0xBF, 0x85, 0x03, 0xDF, 0x04, 0x3F, 0x04, 0x7F, 0x04, 0xDF, 0x05, 0x7F, 0x3C, 0x1A, 0x03, 0xA1, 0x11, 0x85, 0x59, 0x31, 0x49, 0x10, 0x41, 0x10, 0x41, 0x0F, 0x39, 0x0E, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x01, 0x28, + 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x06, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x49, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x84, 0x20, 0xCB, 0x28, 0xCB, 0x20, 0xCB, 0x28, 0xAB, 0x69, 0x2E, 0x02, 0xC9, 0xD3, 0x87, 0xC9, 0xB3, 0xB1, 0xB2, 0x58, 0xF3, 0x18, 0x95, 0x28, 0xB2, 0x30, 0xED, 0x38, 0xED, 0x30, 0xED, 0x02, 0x38, 0xED, 0x80, 0x38, 0xEE, 0x01, 0x39, 0x0E, 0x01, 0x38, 0xEE, 0x03, 0x39, 0x0E, 0x81, 0x41, 0x0F, 0x39, 0x0E, 0x05, 0x41, 0x0F, 0x9D, 0x41, 0x10, 0x41, 0x0F, 0x49, 0x2F, 0x49, 0x30, 0x49, 0x10, 0x38, 0xF3, 0x20, 0xB8, 0x08, 0x7D, 0x00, 0x7F, 0x00, 0x9F, 0x00, 0xDF, 0x00, 0xFF, 0x01, 0x1F, 0x01, 0x5F, 0x01, 0x7F, 0x01, 0x9F, 0x01, 0xDF, 0x02, 0x1F, 0x02, 0x5F, 0x02, 0xBF, 0x02, 0xDF, 0x03, 0x1F, 0x03, 0x5F, 0x03, 0x9F, 0x03, 0xDF, 0x04, 0x1F, 0x04, 0x5F, 0x04, 0x9F, 0x04, 0xDF, 0x04, 0xFF, 0x01, 0x05, 0x1F, 0x84, 0x05, 0x3F, 0x04, 0xFF, 0x04, 0xDF, 0x04, 0xBF, 0x04, 0x9F, 0x01, 0x04, 0x7F, 0x01, 0x04, 0x5F, 0x8B, 0x04, 0x3F, 0x04, 0x1F, 0x03, 0xFF, 0x03, 0xDF, 0x03, 0xFF, 0x04, 0x3F, 0x04, 0x5F, 0x04, 0xBF, 0x05, 0x3F, 0x05, 0xBF, 0x2C, 0xDC, 0xA1, 0x12, 0x02, 0xA1, 0x11, 0x85, 0x71, 0x31, 0x49, 0x30, 0x41, 0x30, 0x41, 0x0F, 0x39, 0x0E, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x81, 0x28, 0xAB, 0x20, 0xCB, 0x02, 0x20, 0xAB, 0x16, 0x20, 0xAA, 0x7F, 0x20, 0xAB, 0x2B, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x0B, 0x20, 0xAB, 0x80, 0x28, 0xAB, 0x01, 0x28, 0xCB, 0x81, 0x61, 0x2E, 0xC9, + 0xF3, 0x01, 0xC9, 0xD3, 0x84, 0xB9, 0x92, 0x69, 0x2E, 0x28, 0xCC, 0x28, 0xEC, 0x30, 0xCD, 0x04, 0x30, 0xED, 0x81, 0x38, 0xED, 0x30, 0xED, 0x01, 0x38, 0xED, 0x80, 0x39, 0x0E, 0x02, 0x38, 0xEE, 0x81, 0x39, 0x0F, 0x38, 0xEE, 0x01, 0x40, 0xEE, 0x83, 0x39, 0x0F, 0x39, 0x0E, 0x41, 0x0E, 0x40, 0xEF, 0x06, 0x41, 0x0F, 0x80, 0x41, 0x2F, 0x01, 0x49, 0x10, 0x9A, 0x49, 0x30, 0x41, 0x13, 0x28, 0xF8, 0x08, 0xFE, 0x01, 0x3F, 0x01, 0x5F, 0x01, 0x9F, 0x01, 0xDF, 0x02, 0x1F, 0x02, 0x3F, 0x02, 0x9F, 0x02, 0xBF, 0x03, 0x1F, 0x03, 0x5F, 0x03, 0x9F, 0x03, 0xDF, 0x04, 0x1F, 0x04, 0x5F, 0x04, 0x9F, 0x04, 0xDF, 0x05, 0x1F, 0x05, 0x3F, 0x05, 0x7F, 0x05, 0x9F, 0x05, 0x7F, 0x05, 0x5F, 0x05, 0x3F, 0x01, 0x04, 0xFF, 0x81, 0x04, 0xDF, 0x04, 0xBF, 0x01, 0x04, 0x9F, 0x82, 0x04, 0x7F, 0x04, 0x5F, 0x04, 0x3F, 0x01, 0x04, 0x1F, 0x86, 0x04, 0x3F, 0x04, 0x5F, 0x04, 0xBF, 0x04, 0xFF, 0x05, 0x5F, 0x05, 0xDF, 0x0E, 0x1F, 0x02, 0xA1, 0x11, 0x86, 0xA1, 0x12, 0x89, 0x31, 0x49, 0x30, 0x41, 0x30, 0x41, 0x0F, 0x41, 0x0E, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x02, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x19, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x31, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xCB, 0x01, 0x20, 0xAB, 0x87, 0x20, 0xCB, 0x28, 0xAB, 0x20, 0xCB, 0x61, 0x2E, 0xD1, 0xF3, 0xC9, 0xF3, 0xC1, 0xB2, 0x61, 0x2E, 0x03, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x80, 0x30, 0xCD, 0x05, 0x30, 0xED, 0x80, 0x38, 0xED, 0x09, 0x38, + 0xEE, 0x81, 0x39, 0x0E, 0x38, 0xEE, 0x02, 0x39, 0x0E, 0x05, 0x41, 0x0F, 0x80, 0x41, 0x30, 0x01, 0x49, 0x30, 0x92, 0x49, 0x31, 0x49, 0x30, 0x41, 0x33, 0x19, 0x7A, 0x01, 0xDE, 0x02, 0x1F, 0x02, 0x7F, 0x02, 0xBF, 0x02, 0xFF, 0x03, 0x3F, 0x03, 0x7F, 0x03, 0xBF, 0x03, 0xFF, 0x04, 0x5F, 0x04, 0x9F, 0x04, 0xDF, 0x05, 0x1F, 0x05, 0x7F, 0x05, 0x9F, 0x02, 0x05, 0xDF, 0x81, 0x05, 0xBF, 0x05, 0x9F, 0x01, 0x05, 0x5F, 0x82, 0x05, 0x3F, 0x05, 0x1F, 0x04, 0xFF, 0x01, 0x04, 0xDF, 0x82, 0x04, 0xBF, 0x04, 0x7F, 0x04, 0x5F, 0x01, 0x04, 0x3F, 0x87, 0x04, 0x7F, 0x04, 0xBF, 0x04, 0xFF, 0x05, 0x3F, 0x05, 0xBF, 0x06, 0x1F, 0x06, 0x9F, 0x99, 0x72, 0x03, 0xA1, 0x11, 0x87, 0x51, 0x30, 0x49, 0x10, 0x41, 0x0F, 0x39, 0x0F, 0x39, 0x0E, 0x38, 0xED, 0x30, 0xED, 0x30, 0xCD, 0x02, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x03, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x43, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x87, 0x20, 0xCB, 0x28, 0xAB, 0x51, 0x0D, 0xD1, 0xF3, 0xC9, 0xD2, 0x81, 0x6F, 0x30, 0xCC, 0x28, 0xAC, 0x04, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x80, 0x30, 0xCD, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCD, 0x04, 0x30, 0xED, 0x03, 0x38, 0xED, 0x05, 0x38, 0xEE, 0x04, 0x39, 0x0E, 0x03, 0x41, 0x0F, 0x82, 0x41, 0x10, 0x41, 0x0F, 0x49, 0x10, 0x02, 0x49, 0x30, 0x8F, 0x49, 0x31, 0x49, 0x32, 0x31, 0xB6, 0x0A, 0x9D, 0x02, 0xFF, 0x03, 0x5F, 0x03, 0x9F, 0x03, 0xFF, 0x04, 0x3F, + 0x04, 0x7F, 0x04, 0xBF, 0x05, 0x1F, 0x05, 0x5F, 0x05, 0xBF, 0x05, 0xDF, 0x06, 0x1F, 0x01, 0x06, 0x3F, 0x82, 0x05, 0xFF, 0x05, 0xDF, 0x05, 0xBF, 0x01, 0x05, 0x9F, 0x86, 0x05, 0x7F, 0x05, 0x5F, 0x05, 0x3F, 0x05, 0x1F, 0x04, 0xFF, 0x04, 0xDF, 0x04, 0xBF, 0x02, 0x04, 0x7F, 0x87, 0x04, 0x9F, 0x04, 0xDF, 0x05, 0x3F, 0x05, 0x7F, 0x05, 0xFF, 0x06, 0x5F, 0x06, 0xDF, 0x7A, 0x95, 0x03, 0xA1, 0x11, 0x81, 0x69, 0x11, 0x49, 0x30, 0x01, 0x41, 0x0F, 0x83, 0x39, 0x0E, 0x38, 0xEE, 0x30, 0xED, 0x30, 0xCD, 0x02, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x03, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x43, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xCB, 0x01, 0x20, 0xAB, 0x84, 0x40, 0xEC, 0xC1, 0xD2, 0xC1, 0xB3, 0x49, 0x0D, 0x28, 0xCB, 0x07, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x80, 0x30, 0xEC, 0x01, 0x30, 0xCD, 0x0A, 0x30, 0xED, 0x03, 0x38, 0xED, 0x05, 0x38, 0xEE, 0x01, 0x39, 0x0E, 0x80, 0x39, 0x0F, 0x03, 0x41, 0x0F, 0x01, 0x49, 0x10, 0x81, 0x49, 0x30, 0x49, 0x31, 0x01, 0x49, 0x51, 0x8A, 0x39, 0xD5, 0x13, 0x1C, 0x04, 0x1F, 0x04, 0x7F, 0x04, 0xBF, 0x05, 0x1F, 0x05, 0x5F, 0x05, 0x9F, 0x05, 0xDF, 0x06, 0x1F, 0x06, 0x7F, 0x01, 0x06, 0x9F, 0x82, 0x06, 0x7F, 0x06, 0x5F, 0x06, 0x1F, 0x01, 0x05, 0xFF, 0x87, 0x05, 0xBF, 0x05, 0x9F, 0x05, 0x7F, 0x05, 0x5F, 0x05, 0x3F, 0x05, 0x1F, 0x04, 0xFF, 0x04, 0xDF, 0x02, 0x04, 0xBF, 0x87, 0x04, 0xDF, 0x05, 0x1F, 0x05, 0x7F, 0x05, 0xBF, 0x06, 0x3F, 0x06, 0x9F, 0x07, + 0x1F, 0x54, 0x38, 0x03, 0xA1, 0x11, 0x81, 0x81, 0x11, 0x49, 0x30, 0x01, 0x41, 0x0F, 0x81, 0x39, 0x0E, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x03, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x43, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x83, 0x30, 0xCB, 0xA9, 0x92, 0xA9, 0xB1, 0x30, 0xCB, 0x03, 0x28, 0xCB, 0x06, 0x28, 0xCC, 0x03, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x80, 0x30, 0xCD, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCD, 0x08, 0x30, 0xED, 0x03, 0x38, 0xED, 0x02, 0x38, 0xEE, 0x02, 0x39, 0x0E, 0x04, 0x41, 0x0F, 0x80, 0x41, 0x2F, 0x01, 0x49, 0x30, 0x8A, 0x51, 0x30, 0x49, 0x31, 0x51, 0x31, 0x3A, 0x15, 0x23, 0x7B, 0x05, 0x3F, 0x05, 0x9F, 0x53, 0x58, 0x34, 0x9B, 0x0E, 0x1F, 0x06, 0xBF, 0x01, 0x06, 0xFF, 0x8D, 0x06, 0xDF, 0x06, 0xBF, 0x06, 0x9F, 0x06, 0x5F, 0x06, 0x3F, 0x06, 0x1F, 0x05, 0xFF, 0x05, 0xDF, 0x05, 0xBF, 0x05, 0x9F, 0x05, 0x7F, 0x05, 0x5F, 0x05, 0x1F, 0x04, 0xFF, 0x01, 0x04, 0xDF, 0x88, 0x04, 0xFF, 0x05, 0x1F, 0x05, 0x5F, 0x05, 0x9F, 0x05, 0xFF, 0x06, 0x5F, 0x06, 0xDF, 0x07, 0x3F, 0x35, 0x9B, 0x04, 0xA1, 0x11, 0x84, 0x49, 0x30, 0x49, 0x10, 0x41, 0x2F, 0x39, 0x0E, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x04, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x43, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x84, + 0x69, 0x2F, 0x81, 0x6F, 0x20, 0xAB, 0x20, 0xCB, 0x20, 0xAB, 0x02, 0x28, 0xCB, 0x81, 0x28, 0xAB, 0x28, 0xCB, 0x09, 0x28, 0xCC, 0x02, 0x30, 0xCC, 0x07, 0x30, 0xCD, 0x07, 0x30, 0xED, 0x80, 0x38, 0xED, 0x03, 0x38, 0xEE, 0x01, 0x39, 0x0E, 0x03, 0x41, 0x0F, 0x80, 0x41, 0x2F, 0x02, 0x49, 0x30, 0x01, 0x49, 0x31, 0x83, 0x51, 0x31, 0x49, 0xD4, 0x24, 0x3A, 0xA1, 0x32, 0x02, 0xA8, 0xF1, 0x01, 0x82, 0x95, 0x86, 0x54, 0x18, 0x35, 0x1B, 0x06, 0xDF, 0x06, 0x9F, 0x06, 0x7F, 0x06, 0x5F, 0x06, 0x3F, 0x01, 0x05, 0xFF, 0x84, 0x05, 0xBF, 0x05, 0x9F, 0x05, 0x7F, 0x05, 0x5F, 0x05, 0x3F, 0x01, 0x05, 0x1F, 0x88, 0x05, 0x3F, 0x05, 0x7F, 0x05, 0x9F, 0x05, 0xDF, 0x06, 0x3F, 0x06, 0x9F, 0x06, 0xFF, 0x07, 0x7F, 0x0F, 0x5F, 0x03, 0xA1, 0x11, 0x85, 0x99, 0x31, 0x69, 0x11, 0x49, 0x30, 0x41, 0x0F, 0x39, 0x0E, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x82, 0x30, 0xCD, 0x30, 0xCC, 0x28, 0xCC, 0x02, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x03, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x43, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xCB, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x83, 0x20, 0xCB, 0x20, 0xAB, 0x28, 0xCB, 0x28, 0xAB, 0x03, 0x28, 0xCB, 0x0B, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x03, 0x28, 0xCC, 0x03, 0x30, 0xCC, 0x01, 0x30, 0xCD, 0x05, 0x30, 0xED, 0x80, 0x30, 0xEE, 0x01, 0x38, 0xED, 0x02, 0x39, 0x0E, 0x80, 0x41, 0x0E, 0x03, 0x41, 0x0F, 0x80, 0x41, 0x30, 0x02, 0x49, 0x30, 0x01, 0x51, 0x31, 0x84, 0x69, 0x92, 0xA8, + 0xF1, 0xA9, 0x11, 0xA8, 0xF1, 0xA9, 0x11, 0x02, 0xA8, 0xF1, 0x8A, 0xA1, 0x72, 0x4C, 0x39, 0x2D, 0x5C, 0x06, 0x9F, 0x06, 0x5F, 0x06, 0x3F, 0x06, 0x1F, 0x05, 0xFF, 0x05, 0xDF, 0x05, 0x9F, 0x05, 0x7F, 0x02, 0x05, 0x5F, 0x97, 0x05, 0x7F, 0x05, 0x9F, 0x05, 0xDF, 0x06, 0x1F, 0x06, 0x7F, 0x06, 0xDF, 0x07, 0x3F, 0x07, 0x9F, 0x07, 0xDF, 0x82, 0x54, 0xA1, 0x11, 0xA1, 0x31, 0xA1, 0x11, 0x99, 0x11, 0x81, 0x31, 0x49, 0x10, 0x41, 0x0F, 0x41, 0x0E, 0x38, 0xEE, 0x38, 0xED, 0x30, 0xED, 0x30, 0xCD, 0x30, 0xCC, 0x28, 0xCC, 0x02, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x06, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x43, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x82, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xCB, 0x02, 0x20, 0xAB, 0x01, 0x28, 0xAB, 0x01, 0x20, 0xCB, 0x06, 0x28, 0xCB, 0x13, 0x28, 0xCC, 0x80, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x04, 0x30, 0xED, 0x04, 0x38, 0xEE, 0x81, 0x39, 0x0E, 0x39, 0x0F, 0x02, 0x41, 0x0F, 0x83, 0x41, 0x2F, 0x49, 0x30, 0x49, 0x10, 0x49, 0x30, 0x01, 0x51, 0x31, 0x81, 0x69, 0x31, 0xA1, 0x11, 0x03, 0xA8, 0xF1, 0x8B, 0xA9, 0x11, 0xA1, 0x11, 0xA9, 0x11, 0xA0, 0xF1, 0x99, 0x72, 0x44, 0x19, 0x06, 0x7F, 0x06, 0x5F, 0x06, 0x1F, 0x05, 0xFF, 0x05, 0xDF, 0x05, 0xBF, 0x01, 0x05, 0x9F, 0x01, 0x05, 0xBF, 0x89, 0x05, 0xDF, 0x06, 0x1F, 0x06, 0x5F, 0x06, 0xBF, 0x06, 0xFF, 0x07, 0x5F, 0x07, 0xBF, 0x07, 0xFF, 0x54, 0x98, 0xA1, 0x31, 0x02, 0xA1, 0x11, 0x81, 0x99, 0x11, 0x49, 0x30, 0x01, 0x41, 0x0F, 0x01, 0x38, 0xEE, 0x82, 0x30, 0xED, + 0x30, 0xCD, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x06, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x43, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x81, 0x20, 0xCA, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x80, 0x20, 0xCB, 0x01, 0x20, 0xAB, 0x81, 0x28, 0xCB, 0x20, 0xCB, 0x08, 0x28, 0xCB, 0x12, 0x28, 0xCC, 0x02, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x80, 0x30, 0xCD, 0x02, 0x30, 0xED, 0x81, 0x38, 0xED, 0x38, 0xEE, 0x02, 0x39, 0x0E, 0x80, 0x39, 0x0F, 0x01, 0x41, 0x0F, 0x83, 0x49, 0x0F, 0x41, 0x2F, 0x49, 0x10, 0x49, 0x30, 0x01, 0x49, 0x31, 0x81, 0x59, 0x31, 0x91, 0x11, 0x01, 0xA8, 0xF1, 0x80, 0xA9, 0x11, 0x01, 0xA8, 0xF1, 0x02, 0xA9, 0x11, 0x85, 0xA1, 0x11, 0x7A, 0x55, 0x34, 0xBB, 0x06, 0x5F, 0x06, 0x1F, 0x05, 0xFF, 0x03, 0x05, 0xDF, 0x8A, 0x05, 0xFF, 0x06, 0x3F, 0x06, 0x5F, 0x06, 0x9F, 0x06, 0xDF, 0x07, 0x1F, 0x07, 0x7F, 0x07, 0xBF, 0x07, 0xFF, 0x2E, 0x3C, 0x99, 0x11, 0x01, 0xA1, 0x11, 0x01, 0x99, 0x31, 0x80, 0x69, 0x10, 0x01, 0x41, 0x0F, 0x01, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x01, 0x20, 0xCB, 0x05, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x45, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x08, 0x20, 0xAB, 0x03, 0x20, 0xCB, 0x16, 0x28, 0xCB, 0x07, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x81, 0x30, 0xEC, 0x30, 0xCD, 0x03, 0x30, 0xED, 0x03, 0x38, 0xEE, 0x80, 0x39, 0x0E, 0x03, 0x41, 0x0F, 0x86, 0x49, 0x10, 0x49, 0x30, 0x49, 0x31, 0x51, 0x31, 0x79, + 0x31, 0xA9, 0x11, 0xA8, 0xF1, 0x03, 0xA9, 0x11, 0x80, 0xA8, 0xF1, 0x03, 0xA1, 0x11, 0x82, 0x91, 0xB3, 0x62, 0xF6, 0x34, 0x7B, 0x01, 0x06, 0x1F, 0x01, 0x06, 0x3F, 0x86, 0x06, 0x5F, 0x06, 0x7F, 0x06, 0xBF, 0x07, 0x1F, 0x07, 0x3F, 0x07, 0x9F, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x8C, 0xA1, 0x11, 0x99, 0x12, 0x99, 0x11, 0x99, 0x31, 0x99, 0x32, 0x81, 0x31, 0x41, 0x30, 0x41, 0x0F, 0x41, 0x0E, 0x38, 0xEE, 0x30, 0xEE, 0x30, 0xED, 0x30, 0xCD, 0x01, 0x28, 0xCC, 0x02, 0x28, 0xCB, 0x03, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x45, 0x20, 0xAA, 0x07, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x04, 0x20, 0xAB, 0x81, 0x20, 0xCB, 0x20, 0xAB, 0x05, 0x28, 0xAB, 0x14, 0x28, 0xCB, 0x06, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x80, 0x30, 0xCD, 0x03, 0x30, 0xED, 0x03, 0x38, 0xEE, 0x80, 0x39, 0x0F, 0x02, 0x41, 0x0F, 0x80, 0x49, 0x10, 0x02, 0x49, 0x30, 0x80, 0x71, 0x11, 0x03, 0xA9, 0x11, 0x80, 0xA1, 0x11, 0x01, 0xA9, 0x11, 0x05, 0xA1, 0x11, 0x89, 0x91, 0xB3, 0x34, 0x9B, 0x06, 0x5F, 0x06, 0x7F, 0x06, 0x9F, 0x06, 0xBF, 0x06, 0xFF, 0x07, 0x3F, 0x07, 0x7F, 0x07, 0xBF, 0x02, 0x07, 0xFF, 0x83, 0x7A, 0xD4, 0xA1, 0x11, 0x99, 0x11, 0xA1, 0x11, 0x01, 0x99, 0x31, 0x84, 0x49, 0x30, 0x41, 0x0F, 0x39, 0x0E, 0x38, 0xEE, 0x30, 0xEE, 0x01, 0x30, 0xED, 0x01, 0x28, 0xCC, 0x02, 0x28, 0xCB, 0x03, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x47, 0x20, 0xAA, 0x07, 0x20, 0xAB, 0x80, 0x20, 0xCB, 0x08, 0x20, 0xAB, 0x03, 0x28, 0xAB, 0x0B, 0x20, + 0xCB, 0x01, 0x28, 0xCB, 0x01, 0x20, 0xCB, 0x07, 0x28, 0xCB, 0x04, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x81, 0x30, 0xEC, 0x30, 0xCD, 0x02, 0x30, 0xED, 0x80, 0x38, 0xED, 0x01, 0x38, 0xEE, 0x01, 0x39, 0x0E, 0x01, 0x41, 0x0F, 0x80, 0x41, 0x10, 0x01, 0x49, 0x30, 0x83, 0x51, 0x30, 0x81, 0x11, 0xA1, 0x11, 0xA9, 0x11, 0x01, 0xA1, 0x11, 0x86, 0xA9, 0x11, 0xA1, 0x12, 0xA1, 0x11, 0xA9, 0x11, 0xA1, 0x11, 0xA1, 0x12, 0xA0, 0xF1, 0x02, 0xA1, 0x11, 0x87, 0x7A, 0x75, 0x15, 0xFD, 0x06, 0xBF, 0x06, 0xFF, 0x07, 0x1F, 0x07, 0x5F, 0x07, 0x9F, 0x07, 0xBF, 0x02, 0x07, 0xFF, 0x82, 0x54, 0x99, 0x99, 0x31, 0x99, 0x11, 0x02, 0x99, 0x31, 0x81, 0x69, 0x30, 0x41, 0x0F, 0x01, 0x39, 0x0E, 0x83, 0x38, 0xEE, 0x30, 0xED, 0x30, 0xCD, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x05, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x47, 0x20, 0xAA, 0x09, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x11, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x81, 0x28, 0xAB, 0x20, 0xAB, 0x01, 0x28, 0xAB, 0x04, 0x20, 0xCB, 0x06, 0x28, 0xCB, 0x05, 0x28, 0xCC, 0x82, 0x30, 0xCC, 0x30, 0xEC, 0x30, 0xCD, 0x02, 0x30, 0xED, 0x80, 0x38, 0xED, 0x01, 0x38, 0xEE, 0x80, 0x40, 0xEE, 0x02, 0x41, 0x0F, 0x80, 0x41, 0x30, 0x01, 0x49, 0x30, 0x83, 0x59, 0x31, 0x90, 0xF1, 0xA9, 0x11, 0xA9, 0x12, 0x02, 0xA1, 0x11, 0x01, 0xA9, 0x11, 0x81, 0xA1, 0x11, 0xA1, 0x12, 0x03, 0xA1, 0x11, 0x86, 0x99, 0x72, 0x35, 0x3B, 0x07, 0x1F, 0x07, 0x3F, 0x07, 0x7F, 0x07, 0xBF, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x81, 0x2E, 0x3C, 0xA1, 0x11, + 0x03, 0x99, 0x31, 0x80, 0x89, 0x31, 0x01, 0x41, 0x0F, 0x01, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x05, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x48, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x21, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x80, 0x28, 0xAB, 0x02, 0x20, 0xCB, 0x04, 0x28, 0xCB, 0x04, 0x28, 0xCC, 0x80, 0x30, 0xCC, 0x01, 0x30, 0xCD, 0x02, 0x30, 0xED, 0x80, 0x38, 0xEE, 0x02, 0x39, 0x0E, 0x01, 0x41, 0x0F, 0x81, 0x41, 0x2F, 0x41, 0x30, 0x01, 0x49, 0x30, 0x81, 0x81, 0x11, 0xA9, 0x11, 0x08, 0xA1, 0x11, 0x01, 0xA1, 0x12, 0x01, 0xA1, 0x11, 0x84, 0x44, 0x99, 0x07, 0x7F, 0x07, 0x9F, 0x07, 0xBF, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x81, 0x99, 0x31, 0xA1, 0x11, 0x03, 0x99, 0x31, 0x86, 0x49, 0x0F, 0x41, 0x0F, 0x38, 0xEE, 0x30, 0xEE, 0x38, 0xED, 0x30, 0xED, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x05, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x49, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x0D, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x07, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x0B, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x01, 0x28, 0xAB, 0x80, 0x20, 0xCB, 0x03, 0x28, 0xCB, 0x03, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x01, 0x30, 0xCD, 0x01, 0x30, 0xED, 0x82, 0x38, 0xED, 0x31, 0x0E, 0x38, 0xEE, 0x01, 0x39, 0x0E, 0x01, 0x41, 0x0F, 0x80, 0x41, 0x2F, 0x01, 0x49, 0x30, 0x80, 0x71, 0x31, 0x01, 0xA1, 0x11, 0x82, 0xA1, 0x12, 0xA1, 0x11, 0xA0, 0xF1, 0x01, 0xA1, 0x11, 0x80, 0xA1, 0x12, 0x04, 0xA1, + 0x11, 0x83, 0xA1, 0x31, 0x63, 0x97, 0x07, 0xBF, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x80, 0x7A, 0xD4, 0x03, 0x99, 0x31, 0x82, 0x99, 0x12, 0x71, 0x30, 0x39, 0x0F, 0x01, 0x38, 0xEE, 0x82, 0x38, 0xED, 0x30, 0xED, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x28, 0xAB, 0x05, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x4B, 0x20, 0xAA, 0x1F, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x08, 0x20, 0xAB, 0x03, 0x20, 0xCB, 0x03, 0x28, 0xCB, 0x04, 0x28, 0xCC, 0x80, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x86, 0x30, 0xED, 0x38, 0xEE, 0x30, 0xED, 0x38, 0xED, 0x39, 0x0E, 0x38, 0xEE, 0x41, 0x0E, 0x01, 0x41, 0x0F, 0x01, 0x49, 0x30, 0x80, 0x69, 0x31, 0x01, 0xA1, 0x11, 0x80, 0xA1, 0x12, 0x07, 0xA1, 0x11, 0x83, 0xA1, 0x12, 0x99, 0x31, 0x99, 0x11, 0x63, 0x97, 0x04, 0x07, 0xFF, 0x83, 0x07, 0xFE, 0x5C, 0x14, 0x99, 0x31, 0x99, 0x11, 0x02, 0x99, 0x31, 0x81, 0x91, 0x31, 0x41, 0x0F, 0x01, 0x39, 0x0E, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x81, 0x28, 0xAB, 0x20, 0xCB, 0x04, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x4B, 0x20, 0xAA, 0x06, 0x20, 0xAB, 0x05, 0x20, 0xAA, 0x1F, 0x20, 0xAB, 0x02, 0x20, 0xCB, 0x05, 0x28, 0xCB, 0x03, 0x28, 0xCC, 0x81, 0x30, 0xCC, 0x30, 0xCD, 0x01, 0x30, 0xED, 0x82, 0x38, 0xED, 0x30, 0xEE, 0x38, 0xEE, 0x01, 0x39, 0x0E, 0x01, 0x41, 0x0F, 0x84, 0x41, 0x30, 0x49, 0x30, 0x59, 0x31, 0x79, 0x11, 0x91, 0x31, 0x08, 0xA1, 0x11, 0x83, 0x99, 0x31, 0xA1, 0x11, 0x99, 0x31, 0x54, 0x98, 0x03, 0x07, 0xFF, 0x81, 0x07, 0xFE, 0x35, 0xF5, 0x05, + 0x99, 0x31, 0x80, 0x51, 0x0F, 0x01, 0x39, 0x0E, 0x81, 0x38, 0xED, 0x30, 0xED, 0x01, 0x30, 0xCC, 0x80, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x81, 0x28, 0xAB, 0x20, 0xCB, 0x04, 0x20, 0xAB, 0x12, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x10, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x0C, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x07, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x82, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x10, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xAB, 0x0F, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x04, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x09, 0x20, 0xAA, 0x08, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x18, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x81, 0x20, 0xAB, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x03, 0x20, 0xAA, 0x07, 0x20, 0xAB, 0x08, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x08, 0x20, 0xAA, 0x0D, 0x20, 0xAB, 0x85, 0x20, 0xCB, 0x28, 0xAB, 0x28, 0xCB, 0x20, 0xCB, 0x28, 0xAB, 0x28, 0xCB, 0x05, 0x28, 0xCC, 0x81, 0x30, 0xCC, 0x30, 0xCD, 0x01, 0x30, 0xED, 0x80, 0x38, 0xED, 0x01, 0x38, 0xEE, 0x80, 0x39, 0x0E, 0x01, 0x41, 0x0F, 0x81, 0x41, 0x2F, 0x41, 0x30, 0x01, 0x49, 0x30, 0x81, 0x61, 0x31, 0x89, 0x31, 0x02, 0xA1, 0x11, 0x80, 0xA1, 0x31, 0x01, 0xA1, 0x11, 0x80, 0x99, 0x31, + 0x03, 0xA1, 0x11, 0x80, 0x3D, 0x7A, 0x02, 0x07, 0xFF, 0x82, 0x07, 0xFE, 0x07, 0xF6, 0x99, 0x11, 0x04, 0x99, 0x31, 0x86, 0x79, 0x11, 0x39, 0x0E, 0x38, 0xEE, 0x30, 0xEE, 0x30, 0xED, 0x30, 0xCD, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x80, 0x28, 0xCB, 0x01, 0x28, 0xAB, 0x01, 0x20, 0xAB, 0x82, 0x20, 0xCA, 0x20, 0xAB, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xAB, 0x09, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x13, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xCB, 0x01, 0x20, 0xAA, 0x08, 0x20, 0xAB, 0x0E, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x04, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x12, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x05, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x13, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xCA, 0x02, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x0F, 0x20, 0xAA, 0x84, 0x20, 0xAB, 0x20, 0xAA, 0x18, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x0F, 0x20, 0xAA, 0x08, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x11, 0x20, 0xAA, 0x08, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xCA, 0x01, 0x20, 0xAA, 0x81, 0x20, 0xAB, 0x20, 0xAA, 0x08, 0x20, 0xAB, 0x09, 0x20, 0xAA, 0x05, 0x20, 0xAB, 0x81, 0x28, 0xCB, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x01, 0x28, 0xCB, 0x04, 0x28, 0xCC, 0x81, 0x30, 0xCC, 0x30, 0xEC, 0x02, 0x30, 0xED, 0x01, 0x38, 0xEE, 0x01, 0x39, 0x0E, 0x02, 0x41, 0x0F, 0x01, 0x49, 0x30, 0x82, 0x51, 0x31, + 0x61, 0x31, 0x99, 0x11, 0x02, 0xA1, 0x11, 0x80, 0x99, 0x31, 0x01, 0xA1, 0x11, 0x84, 0xA1, 0x12, 0x99, 0x31, 0x99, 0x11, 0x91, 0x92, 0x1E, 0xBD, 0x01, 0x07, 0xFF, 0x82, 0x07, 0xFE, 0x07, 0xF6, 0x7A, 0x71, 0x01, 0x99, 0x31, 0x80, 0x99, 0x32, 0x01, 0x99, 0x31, 0x82, 0x91, 0x11, 0x41, 0x0E, 0x38, 0xEE, 0x02, 0x30, 0xED, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x81, 0x20, 0xAB, 0x28, 0xAB, 0x02, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x0C, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x0B, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xAB, 0x14, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x0F, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x05, 0x20, 0xAA, 0x82, 0x20, 0xCA, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x04, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x05, 0x20, 0xAA, 0x84, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x0B, 0x20, 0xAA, 0x07, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x83, 0x20, 0xAA, 0x20, 0xCA, 0x20, 0xAA, 0x20, 0xAB, 0x18, 0x20, 0xAA, 0x81, 0x20, 0xAB, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAC, 0x1B, 0x20, 0xCD, 0x80, 0x20, 0xCC, 0x1F, 0x20, 0xCD, 0x03, 0x28, 0xCD, 0x80, 0x20, 0xCD, 0x02, 0x28, 0xCE, 0x83, 0x28, 0xEE, 0x28, 0xCE, 0x28, 0xEE, 0x30, 0xEE, + 0x02, 0x30, 0xEF, 0x01, 0x39, 0x0F, 0x01, 0x39, 0x10, 0x81, 0x41, 0x10, 0x41, 0x31, 0x01, 0x49, 0x31, 0x83, 0x49, 0x32, 0x49, 0x52, 0x51, 0x52, 0x91, 0x32, 0x02, 0xA1, 0x11, 0x80, 0x99, 0x12, 0x01, 0x99, 0x31, 0x83, 0x99, 0x11, 0x99, 0x31, 0x99, 0x12, 0x82, 0x74, 0x01, 0x07, 0xFF, 0x85, 0x07, 0xFD, 0x07, 0xF6, 0x5C, 0x32, 0x99, 0x11, 0x99, 0x31, 0x99, 0x32, 0x02, 0x99, 0x31, 0x81, 0x59, 0x10, 0x39, 0x0F, 0x01, 0x30, 0xEF, 0x87, 0x30, 0xEE, 0x30, 0xCE, 0x28, 0xCD, 0x28, 0xEE, 0x28, 0xED, 0x28, 0xCD, 0x20, 0xCD, 0x20, 0xAC, 0x01, 0x20, 0xCD, 0x82, 0x20, 0xAD, 0x20, 0xCD, 0x20, 0xAD, 0x01, 0x20, 0xCC, 0x82, 0x20, 0xAD, 0x20, 0xCC, 0x20, 0xAC, 0x01, 0x20, 0xCC, 0x01, 0x20, 0xAC, 0x07, 0x20, 0xCC, 0x82, 0x18, 0xD2, 0x10, 0xF2, 0x18, 0xD2, 0x08, 0x10, 0xF2, 0x01, 0x18, 0xD2, 0x0B, 0x18, 0xF2, 0x80, 0x18, 0xD2, 0x19, 0x18, 0xF2, 0x01, 0x18, 0xF3, 0x81, 0x18, 0xF2, 0x20, 0xF2, 0x01, 0x18, 0xF2, 0x80, 0x20, 0xF2, 0x01, 0x18, 0xF3, 0x0E, 0x20, 0xF3, 0x81, 0x20, 0xF2, 0x18, 0xF3, 0x05, 0x20, 0xF3, 0x80, 0x21, 0x13, 0x01, 0x20, 0xF3, 0x80, 0x21, 0x13, 0x01, 0x20, 0xF3, 0x80, 0x21, 0x13, 0x05, 0x20, 0xF3, 0x01, 0x21, 0x13, 0x08, 0x20, 0xF3, 0x81, 0x21, 0x13, 0x20, 0xF3, 0x02, 0x21, 0x13, 0x01, 0x28, 0xF3, 0x80, 0x21, 0x13, 0x01, 0x28, 0xF3, 0x80, 0x29, 0x13, 0x06, 0x21, 0x13, 0x0F, 0x29, 0x13, 0x83, 0x21, 0x13, 0x29, 0x13, 0x29, 0x14, 0x21, 0x13, 0x1F, 0x29, 0x13, 0x80, 0x29, 0x14, 0x27, 0x29, 0x13, 0x07, 0x21, 0x13, 0x01, 0x29, + 0x13, 0x01, 0x28, 0xF3, 0x04, 0x29, 0x13, 0x84, 0x28, 0xF3, 0x29, 0x13, 0x21, 0x13, 0x29, 0x13, 0x29, 0x14, 0x01, 0x29, 0x13, 0x04, 0x29, 0x14, 0x04, 0x31, 0x34, 0x01, 0x39, 0x34, 0x81, 0x39, 0x35, 0x39, 0x55, 0x01, 0x41, 0x55, 0x01, 0x41, 0x76, 0x83, 0x49, 0x76, 0x49, 0x77, 0x51, 0x76, 0x91, 0x32, 0x01, 0xA1, 0x11, 0x82, 0x99, 0x31, 0x99, 0x11, 0xA1, 0x11, 0x01, 0x99, 0x31, 0x87, 0x99, 0x12, 0x99, 0x31, 0x5C, 0x38, 0x07, 0xFF, 0x07, 0xFD, 0x07, 0xF6, 0x44, 0xF2, 0x99, 0x11, 0x04, 0x99, 0x31, 0x85, 0x79, 0x33, 0x39, 0x55, 0x31, 0x35, 0x31, 0x34, 0x31, 0x14, 0x21, 0x33, 0x01, 0x21, 0x13, 0x01, 0x20, 0xF3, 0x86, 0x21, 0x13, 0x19, 0x12, 0x18, 0xF2, 0x20, 0xF3, 0x18, 0xF2, 0x18, 0xF3, 0x18, 0xF2, 0x02, 0x18, 0xF3, 0x09, 0x18, 0xF2, 0x03, 0x18, 0xD2, 0x80, 0x10, 0xF2, 0x01, 0x18, 0xD2, 0x80, 0x10, 0xD2, 0x07, 0x18, 0xD2, 0x0B, 0x18, 0xF2, 0x80, 0x18, 0xD2, 0x01, 0x18, 0xF2, 0x01, 0x18, 0xD2, 0x13, 0x18, 0xF2, 0x04, 0x18, 0xF3, 0x80, 0x18, 0xF2, 0x01, 0x18, 0xF3, 0x80, 0x20, 0xF2, 0x05, 0x18, 0xF3, 0x12, 0x20, 0xF3, 0x80, 0x21, 0x12, 0x03, 0x20, 0xF3, 0x83, 0x21, 0x13, 0x20, 0xF2, 0x20, 0xF3, 0x20, 0xF2, 0x0F, 0x20, 0xF3, 0x86, 0x21, 0x13, 0x28, 0xF3, 0x21, 0x13, 0x20, 0xF3, 0x21, 0x13, 0x28, 0xF3, 0x20, 0xF3, 0x06, 0x21, 0x13, 0x01, 0x28, 0xF3, 0x02, 0x21, 0x13, 0x0C, 0x29, 0x13, 0x80, 0x21, 0x13, 0x02, 0x29, 0x13, 0x80, 0x29, 0x14, 0x01, 0x29, 0x13, 0x80, 0x28, 0xF3, 0x1C, 0x29, 0x13, 0x80, 0x28, 0xF3, 0x1C, 0x29, 0x13, + 0x80, 0x21, 0x13, 0x01, 0x29, 0x13, 0x80, 0x29, 0x14, 0x08, 0x29, 0x13, 0x0B, 0x21, 0x13, 0x80, 0x29, 0x13, 0x01, 0x28, 0xF3, 0x81, 0x29, 0x13, 0x21, 0x13, 0x01, 0x29, 0x13, 0x01, 0x21, 0x13, 0x82, 0x28, 0xF3, 0x29, 0x13, 0x21, 0x13, 0x07, 0x29, 0x14, 0x02, 0x31, 0x34, 0x80, 0x31, 0x35, 0x01, 0x39, 0x35, 0x01, 0x39, 0x55, 0x89, 0x41, 0x55, 0x41, 0x56, 0x41, 0x76, 0x49, 0x76, 0x49, 0x56, 0x51, 0x76, 0x91, 0x32, 0xA1, 0x11, 0xA1, 0x12, 0xA1, 0x11, 0x01, 0x99, 0x31, 0x87, 0x99, 0x11, 0x99, 0x32, 0x99, 0x31, 0x99, 0x11, 0x2E, 0x5C, 0x07, 0xFC, 0x07, 0xF6, 0x2E, 0x53, 0x02, 0x99, 0x31, 0x01, 0x99, 0x11, 0x81, 0x99, 0x31, 0x91, 0x32, 0x02, 0x31, 0x34, 0x82, 0x29, 0x34, 0x29, 0x14, 0x29, 0x13, 0x01, 0x21, 0x13, 0x86, 0x20, 0xF3, 0x21, 0x12, 0x20, 0xF3, 0x20, 0xD3, 0x19, 0x12, 0x18, 0xF2, 0x18, 0xF3, 0x02, 0x18, 0xF2, 0x82, 0x18, 0xD2, 0x18, 0xF2, 0x20, 0xF2, 0x07, 0x18, 0xF2, 0x03, 0x18, 0xD2, 0x0B, 0x1D, 0x7C, 0x07, 0x1D, 0x9C, 0x03, 0x1D, 0x9D, 0x84, 0x25, 0x9C, 0x1D, 0xBC, 0x1D, 0x9D, 0x25, 0x9D, 0x1D, 0x9C, 0x04, 0x25, 0x9C, 0x0D, 0x25, 0xBD, 0x01, 0x25, 0xDD, 0x01, 0x25, 0xBD, 0x80, 0x1D, 0xDD, 0x02, 0x25, 0xDD, 0x80, 0x25, 0xBD, 0x08, 0x25, 0xDD, 0x0B, 0x25, 0xFD, 0x80, 0x2D, 0xFD, 0x03, 0x25, 0xFD, 0x04, 0x2D, 0xFD, 0x81, 0x25, 0xFD, 0x2D, 0xFE, 0x01, 0x2D, 0xFD, 0x11, 0x2E, 0x1D, 0x80, 0x2E, 0x3E, 0x03, 0x2E, 0x1D, 0x01, 0x2E, 0x3D, 0x02, 0x2E, 0x3E, 0x13, 0x2E, 0x3D, 0x02, 0x2E, 0x3E, 0x80, 0x2E, 0x3D, 0x0B, 0x2E, + 0x3E, 0x0F, 0x2E, 0x5E, 0x80, 0x36, 0x5E, 0x02, 0x2E, 0x5E, 0x80, 0x2E, 0x3E, 0x01, 0x36, 0x5E, 0x80, 0x2E, 0x5D, 0x09, 0x2E, 0x5E, 0x0D, 0x2E, 0x3E, 0x02, 0x2E, 0x3D, 0x84, 0x2E, 0x3E, 0x2E, 0x3D, 0x2E, 0x3E, 0x2E, 0x3D, 0x36, 0x3D, 0x13, 0x2E, 0x3D, 0x10, 0x2E, 0x1D, 0x04, 0x36, 0x1D, 0x04, 0x3E, 0x1D, 0x88, 0x3E, 0x1E, 0x46, 0x1E, 0x46, 0x1D, 0x4D, 0xFE, 0x4D, 0xFD, 0x4E, 0x3E, 0x4D, 0xFE, 0x55, 0xDD, 0x92, 0x14, 0x02, 0x99, 0x31, 0x81, 0x99, 0x32, 0x99, 0x31, 0x01, 0x99, 0x11, 0x82, 0x99, 0x31, 0x7A, 0x74, 0x07, 0xFB, 0x01, 0x07, 0xF6, 0x01, 0x99, 0x31, 0x81, 0x99, 0x11, 0x99, 0x32, 0x02, 0x99, 0x31, 0x81, 0x4C, 0xFB, 0x3D, 0xFE, 0x01, 0x35, 0xDD, 0x03, 0x2D, 0xDD, 0x01, 0x25, 0xDD, 0x01, 0x25, 0xBD, 0x01, 0x25, 0xDD, 0x81, 0x25, 0xBD, 0x25, 0xDC, 0x02, 0x25, 0xBD, 0x81, 0x1D, 0xBD, 0x25, 0xBC, 0x01, 0x1D, 0xBD, 0x05, 0x1D, 0xBC, 0x03, 0x1D, 0x9D, 0x02, 0x1C, 0x7C, 0x80, 0x1C, 0x7B, 0x05, 0x1C, 0x7C, 0x0B, 0x1C, 0x9C, 0x85, 0x24, 0x9C, 0x1C, 0x9C, 0x1D, 0x9D, 0x1D, 0x7C, 0x1C, 0xFC, 0x1C, 0x9C, 0x0F, 0x1C, 0xBC, 0x80, 0x24, 0xBC, 0x01, 0x1C, 0xBC, 0x02, 0x24, 0xBC, 0x80, 0x1C, 0xBC, 0x02, 0x24, 0xDC, 0x83, 0x25, 0x3D, 0x25, 0xBD, 0x25, 0x3D, 0x24, 0xDD, 0x01, 0x24, 0xBC, 0x0F, 0x24, 0xDD, 0x80, 0x24, 0xFD, 0x01, 0x24, 0xDC, 0x01, 0x24, 0xFD, 0x85, 0x24, 0xFC, 0x24, 0xDD, 0x24, 0xFD, 0x25, 0x1C, 0x25, 0xFD, 0x25, 0x5D, 0x03, 0x24, 0xFD, 0x80, 0x24, 0xFC, 0x07, 0x24, 0xFD, 0x07, 0x2C, 0xFD, 0x80, 0x25, 0x1D, 0x01, + 0x24, 0xFD, 0x83, 0x25, 0x1D, 0x2D, 0x1D, 0x24, 0xFD, 0x2C, 0xFD, 0x01, 0x25, 0xBD, 0x83, 0x25, 0x3C, 0x2C, 0xFC, 0x2D, 0x1D, 0x25, 0x1D, 0x01, 0x2C, 0xFD, 0x14, 0x2D, 0x1D, 0x82, 0x2D, 0x1C, 0x2D, 0x5D, 0x2D, 0xDE, 0x08, 0x2D, 0x1D, 0x0F, 0x2D, 0x3D, 0x81, 0x2D, 0x1D, 0x2D, 0x3D, 0x01, 0x2D, 0x1D, 0x80, 0x2E, 0x1D, 0x02, 0x2D, 0x1D, 0x0F, 0x2D, 0x3D, 0x0A, 0x2D, 0x1D, 0x81, 0x2D, 0xDD, 0x2D, 0x5D, 0x12, 0x2D, 0x1D, 0x03, 0x2C, 0xFD, 0x01, 0x2D, 0x1D, 0x02, 0x2C, 0xFD, 0x01, 0x2D, 0xBD, 0x81, 0x2C, 0xFD, 0x2D, 0x1D, 0x01, 0x25, 0x1C, 0x08, 0x2C, 0xFD, 0x04, 0x34, 0xFD, 0x03, 0x3C, 0xFD, 0x80, 0x3D, 0x1D, 0x02, 0x45, 0x1D, 0x01, 0x4D, 0x1D, 0x83, 0x55, 0x3D, 0x91, 0xB3, 0x99, 0x31, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0xA1, 0x12, 0x01, 0x99, 0x31, 0x80, 0x54, 0x96, 0x01, 0x07, 0xF7, 0x81, 0x8A, 0x13, 0xA1, 0x11, 0x01, 0x99, 0x31, 0x83, 0x99, 0x12, 0x99, 0x32, 0x99, 0x11, 0x63, 0x18, 0x01, 0x34, 0xDD, 0x84, 0x2C, 0xDD, 0x2C, 0xDC, 0x2C, 0xDD, 0x2C, 0xBC, 0x24, 0xDC, 0x01, 0x24, 0xBC, 0x82, 0x25, 0x3C, 0x25, 0xBD, 0x25, 0x3C, 0x02, 0x24, 0xBC, 0x81, 0x1C, 0xBC, 0x24, 0xBC, 0x01, 0x1C, 0xBC, 0x80, 0x24, 0xBC, 0x05, 0x1C, 0xBC, 0x05, 0x1C, 0x9C, 0x0F, 0x1A, 0xBB, 0x03, 0x1A, 0xDB, 0x83, 0x1B, 0x3B, 0x1C, 0xFC, 0x15, 0x7C, 0x1C, 0x1C, 0x11, 0x1A, 0xDB, 0x01, 0x22, 0xDB, 0x03, 0x1A, 0xDB, 0x01, 0x22, 0xDB, 0x89, 0x22, 0xFB, 0x23, 0x1C, 0x1D, 0x1C, 0x1D, 0x5C, 0x23, 0x5B, 0x22, 0xDC, 0x22, 0xDB, 0x22, 0xDC, 0x22, 0xFB, 0x22, + 0xFC, 0x01, 0x22, 0xDC, 0x05, 0x22, 0xFC, 0x03, 0x22, 0xFB, 0x07, 0x22, 0xFC, 0x84, 0x23, 0x1B, 0x22, 0xFC, 0x23, 0x3C, 0x25, 0x3C, 0x1C, 0xFD, 0x01, 0x22, 0xFC, 0x80, 0x22, 0xFB, 0x0F, 0x22, 0xFC, 0x04, 0x23, 0x1C, 0x01, 0x2A, 0xFC, 0x80, 0x23, 0x1C, 0x01, 0x2B, 0x1C, 0x81, 0x25, 0x9C, 0x24, 0x7C, 0x01, 0x23, 0x1C, 0x80, 0x2B, 0x1C, 0x01, 0x23, 0x1C, 0x81, 0x2B, 0x1C, 0x23, 0x1C, 0x15, 0x2B, 0x1C, 0x81, 0x25, 0xBD, 0x2B, 0xBC, 0x19, 0x2B, 0x1C, 0x80, 0x23, 0x1C, 0x01, 0x2B, 0x1C, 0x80, 0x25, 0xDD, 0x1B, 0x2B, 0x1C, 0x83, 0x23, 0x1C, 0x2B, 0x1C, 0x2B, 0x7C, 0x25, 0x9D, 0x01, 0x2B, 0x1C, 0x80, 0x23, 0x1C, 0x07, 0x2B, 0x1C, 0x11, 0x23, 0x1C, 0x86, 0x24, 0x5D, 0x25, 0x9C, 0x22, 0xFC, 0x2A, 0xFC, 0x23, 0x1C, 0x2A, 0xFC, 0x22, 0xFC, 0x01, 0x23, 0x1C, 0x03, 0x2B, 0x1C, 0x80, 0x2A, 0xFC, 0x02, 0x2B, 0x1C, 0x04, 0x33, 0x1C, 0x80, 0x3B, 0x1C, 0x02, 0x3B, 0x3D, 0x87, 0x43, 0x3C, 0x43, 0x3D, 0x4B, 0x3D, 0x43, 0x5D, 0x5A, 0x9A, 0x99, 0x32, 0x99, 0x31, 0x99, 0x11, 0x05, 0x99, 0x31, 0x82, 0x17, 0x37, 0x07, 0xF9, 0x72, 0xD4, 0x05, 0x99, 0x31, 0x86, 0x81, 0x94, 0x33, 0x1C, 0x32, 0xFC, 0x2A, 0xFB, 0x2A, 0xFC, 0x2A, 0xFB, 0x22, 0xFB, 0x01, 0x22, 0xDC, 0x80, 0x22, 0xFB, 0x01, 0x22, 0xDB, 0x83, 0x23, 0x5C, 0x1D, 0x5C, 0x1D, 0x1D, 0x23, 0x1B, 0x02, 0x1A, 0xDB, 0x81, 0x22, 0xDB, 0x1A, 0xBB, 0x05, 0x1A, 0xDB, 0x01, 0x1A, 0xBB, 0x03, 0x1A, 0xDB, 0x0A, 0x13, 0x7B, 0x83, 0x1B, 0x7B, 0x13, 0x7B, 0x1B, 0x5B, 0x1B, 0x7B, 0x02, 0x13, 0x7B, 0x89, + 0x13, 0x9B, 0x1B, 0xBB, 0x14, 0xFB, 0x15, 0x3C, 0x13, 0xFB, 0x1B, 0x7B, 0x13, 0x9B, 0x1B, 0x7B, 0x1B, 0x7C, 0x1B, 0x9B, 0x01, 0x1B, 0x7B, 0x06, 0x1B, 0x9B, 0x80, 0x1B, 0x9C, 0x02, 0x1B, 0x9B, 0x80, 0x13, 0x9C, 0x06, 0x1B, 0x9B, 0x88, 0x1B, 0x9C, 0x1B, 0x9B, 0x1D, 0x3C, 0x1D, 0x5C, 0x1B, 0xFB, 0x1B, 0x9C, 0x1B, 0xBB, 0x1B, 0x9B, 0x1B, 0xBC, 0x01, 0x1B, 0x9B, 0x07, 0x1B, 0xBB, 0x80, 0x1B, 0xBC, 0x01, 0x1B, 0xBB, 0x82, 0x1B, 0xBC, 0x1B, 0xBB, 0x1B, 0xBC, 0x01, 0x1B, 0xBB, 0x89, 0x1B, 0xBC, 0x1B, 0xBB, 0x1B, 0xBC, 0x1B, 0xBB, 0x1B, 0xBC, 0x1B, 0xBB, 0x1C, 0xDC, 0x1D, 0x7D, 0x23, 0xFC, 0x1B, 0xDC, 0x05, 0x1B, 0xBC, 0x07, 0x23, 0xBC, 0x01, 0x1B, 0xBC, 0x05, 0x23, 0xDC, 0x80, 0x23, 0xBC, 0x03, 0x23, 0xDC, 0x81, 0x24, 0x7C, 0x1D, 0x9C, 0x1C, 0x23, 0xDC, 0x81, 0x24, 0x1C, 0x25, 0x9D, 0x1D, 0x23, 0xDC, 0x80, 0x1D, 0xBD, 0x1E, 0x23, 0xDC, 0x81, 0x1D, 0xBD, 0x24, 0x3C, 0x19, 0x23, 0xDC, 0x80, 0x23, 0xBC, 0x01, 0x23, 0xDC, 0x81, 0x25, 0x9C, 0x24, 0x7C, 0x01, 0x23, 0xBC, 0x81, 0x23, 0xDC, 0x23, 0xBC, 0x01, 0x23, 0xDC, 0x02, 0x23, 0xBC, 0x03, 0x23, 0xDC, 0x04, 0x2B, 0xDC, 0x03, 0x33, 0xDC, 0x80, 0x3B, 0xDC, 0x01, 0x3B, 0xFC, 0x83, 0x3B, 0xDC, 0x43, 0xFC, 0x43, 0xFD, 0x6B, 0x18, 0x03, 0x99, 0x31, 0x86, 0x99, 0x11, 0x99, 0x31, 0x99, 0x32, 0x99, 0x31, 0x6B, 0x53, 0x07, 0xFA, 0x54, 0x37, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x81, 0x99, 0x12, 0x99, 0x31, 0x02, 0x2B, 0xBC, 0x80, 0x2B, 0xBB, 0x01, 0x23, 0xBB, 0x80, 0x23, + 0x9B, 0x04, 0x1B, 0x9B, 0x82, 0x1B, 0xDB, 0x1D, 0x5C, 0x1D, 0x1C, 0x01, 0x1B, 0x9B, 0x82, 0x13, 0x9B, 0x13, 0x9C, 0x1B, 0x9B, 0x01, 0x1B, 0x7B, 0x80, 0x13, 0x9B, 0x01, 0x1B, 0x9B, 0x82, 0x1B, 0x7B, 0x1B, 0x9B, 0x13, 0x9B, 0x01, 0x1B, 0x7B, 0x01, 0x1B, 0x9B, 0x09, 0x13, 0x5B, 0x80, 0x13, 0x7B, 0x01, 0x13, 0x5A, 0x86, 0x13, 0x7B, 0x13, 0x5A, 0x13, 0x5B, 0x13, 0x9B, 0x14, 0xBB, 0x14, 0xFB, 0x13, 0xFB, 0x01, 0x13, 0x7B, 0x81, 0x13, 0x5B, 0x13, 0x7B, 0x01, 0x13, 0x7A, 0x0B, 0x13, 0x7B, 0x01, 0x1B, 0x7B, 0x07, 0x13, 0x7B, 0x85, 0x1B, 0xBB, 0x15, 0x3C, 0x15, 0x1C, 0x1B, 0x7B, 0x13, 0x9B, 0x13, 0x7B, 0x01, 0x13, 0x9B, 0x81, 0x1B, 0x9B, 0x13, 0x9B, 0x01, 0x1B, 0x9B, 0x07, 0x13, 0x9B, 0x04, 0x1B, 0x9B, 0x83, 0x13, 0xBB, 0x13, 0x9B, 0x1B, 0x9B, 0x13, 0x9B, 0x01, 0x1B, 0x9B, 0x85, 0x1B, 0x9C, 0x1C, 0x3B, 0x1D, 0x5C, 0x1C, 0x3C, 0x1B, 0x9B, 0x1B, 0xBB, 0x06, 0x1B, 0x9B, 0x07, 0x1B, 0xBB, 0x80, 0x1B, 0x9B, 0x07, 0x1B, 0xBB, 0x80, 0x1B, 0xBC, 0x01, 0x1B, 0xBB, 0x81, 0x1C, 0x9C, 0x1D, 0x1C, 0x19, 0x1B, 0xBB, 0x80, 0x1B, 0xDB, 0x02, 0x1B, 0xBB, 0x83, 0x1C, 0xFC, 0x1C, 0x7C, 0x1B, 0xBB, 0x1B, 0xDB, 0x17, 0x1B, 0xBC, 0x87, 0x1B, 0xBB, 0x1B, 0xDC, 0x23, 0xBC, 0x1B, 0xBB, 0x1D, 0x7C, 0x1B, 0xBB, 0x1B, 0xDC, 0x1B, 0xBB, 0x0F, 0x1B, 0xBC, 0x07, 0x1B, 0xBB, 0x85, 0x1B, 0xBC, 0x1B, 0x9C, 0x1B, 0xDC, 0x1B, 0xBB, 0x1C, 0x5B, 0x1C, 0xFB, 0x11, 0x1B, 0xBB, 0x07, 0x1B, 0xBC, 0x02, 0x1B, 0xBB, 0x82, 0x1B, 0x9B, 0x1D, 0x3C, 0x1C, 0xBC, 0x01, 0x1B, + 0xBB, 0x80, 0x1B, 0x9B, 0x01, 0x1B, 0x9C, 0x01, 0x1B, 0x9B, 0x84, 0x1B, 0xBB, 0x1B, 0x9C, 0x1B, 0x9B, 0x1B, 0xBB, 0x23, 0x9B, 0x04, 0x23, 0xBC, 0x03, 0x2B, 0xBC, 0x01, 0x33, 0xBC, 0x80, 0x33, 0xDC, 0x03, 0x3B, 0xDC, 0x80, 0x81, 0x94, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x83, 0x99, 0x11, 0x99, 0x31, 0x26, 0x59, 0x4C, 0x98, 0x03, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x81, 0x4B, 0x19, 0x23, 0xBC, 0x02, 0x23, 0x9B, 0x02, 0x1B, 0x9B, 0x03, 0x1B, 0x7B, 0x02, 0x13, 0x7B, 0x84, 0x14, 0xBB, 0x15, 0x1B, 0x13, 0xDB, 0x13, 0x7B, 0x13, 0x7A, 0x01, 0x13, 0x7B, 0x80, 0x13, 0x7A, 0x02, 0x13, 0x7B, 0x81, 0x13, 0x5B, 0x13, 0x7B, 0x02, 0x13, 0x5B, 0x80, 0x13, 0x7B, 0x03, 0x09, 0x99, 0x80, 0x11, 0x99, 0x01, 0x11, 0xBA, 0x83, 0x11, 0xB9, 0x09, 0xB9, 0x11, 0xBA, 0x11, 0x99, 0x01, 0x11, 0xBA, 0x87, 0x11, 0x99, 0x11, 0xDA, 0x0B, 0x3A, 0x0C, 0x9B, 0x0B, 0xFB, 0x12, 0x7A, 0x11, 0xBA, 0x11, 0x9A, 0x05, 0x11, 0xBA, 0x80, 0x11, 0x9A, 0x0C, 0x11, 0xBA, 0x80, 0x11, 0x9A, 0x04, 0x11, 0xBA, 0x83, 0x12, 0xBA, 0x14, 0xBB, 0x13, 0xFB, 0x11, 0xDB, 0x06, 0x11, 0xBA, 0x80, 0x11, 0xDA, 0x0A, 0x11, 0xBA, 0x84, 0x11, 0xBB, 0x11, 0xBA, 0x11, 0xDA, 0x11, 0xBA, 0x11, 0xDA, 0x01, 0x11, 0xBA, 0x86, 0x11, 0xDA, 0x11, 0xBA, 0x12, 0x7A, 0x14, 0xDB, 0x13, 0x7B, 0x11, 0xDA, 0x19, 0xBA, 0x0C, 0x11, 0xDA, 0x02, 0x19, 0xDA, 0x80, 0x11, 0xDA, 0x06, 0x11, 0xDB, 0x87, 0x19, 0xDB, 0x11, 0xDA, 0x19, 0xDA, 0x1A, 0x3B, 0x14, 0xFB, 0x1A, 0xFB, 0x19, + 0xDA, 0x11, 0xDB, 0x0F, 0x19, 0xDA, 0x07, 0x19, 0xDB, 0x85, 0x19, 0xDA, 0x19, 0xDB, 0x19, 0xDA, 0x1A, 0x1B, 0x15, 0x3C, 0x1A, 0x3B, 0x01, 0x19, 0xDA, 0x07, 0x19, 0xDB, 0x0F, 0x19, 0xDA, 0x01, 0x19, 0xDB, 0x85, 0x19, 0xDA, 0x19, 0xDB, 0x15, 0x3B, 0x19, 0xDB, 0x19, 0xDA, 0x19, 0xDB, 0x17, 0x19, 0xDA, 0x86, 0x11, 0xDB, 0x19, 0xDB, 0x19, 0xDA, 0x19, 0xDB, 0x19, 0xFB, 0x15, 0x3C, 0x12, 0x3A, 0x01, 0x19, 0xDA, 0x04, 0x11, 0xDA, 0x81, 0x19, 0xDA, 0x11, 0xDB, 0x09, 0x19, 0xDB, 0x05, 0x11, 0xBA, 0x86, 0x19, 0xDB, 0x19, 0xBA, 0x11, 0xDA, 0x11, 0xBA, 0x1A, 0xBB, 0x14, 0xFB, 0x1A, 0x5B, 0x01, 0x19, 0xBA, 0x01, 0x11, 0xDA, 0x01, 0x19, 0xDB, 0x82, 0x19, 0xDA, 0x19, 0xDB, 0x19, 0xBA, 0x01, 0x19, 0xDA, 0x02, 0x19, 0xDB, 0x02, 0x21, 0xDB, 0x01, 0x21, 0xFB, 0x03, 0x29, 0xFB, 0x85, 0x31, 0xFB, 0x32, 0x1B, 0x31, 0xFB, 0x32, 0x1B, 0x41, 0xFA, 0x99, 0x12, 0x05, 0x99, 0x31, 0x84, 0x99, 0x12, 0x72, 0xD4, 0x4C, 0x98, 0x99, 0x31, 0x99, 0x11, 0x02, 0x99, 0x31, 0x84, 0x99, 0x11, 0x99, 0x31, 0x59, 0x96, 0x21, 0xDB, 0x21, 0xDA, 0x02, 0x19, 0xDA, 0x01, 0x11, 0xDA, 0x06, 0x11, 0xBA, 0x86, 0x11, 0xD9, 0x13, 0x7A, 0x14, 0x9B, 0x13, 0x1A, 0x11, 0xBA, 0x11, 0x9A, 0x11, 0xB9, 0x01, 0x11, 0xBA, 0x82, 0x11, 0x9A, 0x11, 0xBA, 0x11, 0x9A, 0x04, 0x11, 0xBA, 0x03, 0x0A, 0xFA, 0x01, 0x0B, 0x1A, 0x01, 0x0A, 0xFA, 0x83, 0x0B, 0x1A, 0x0A, 0xFA, 0x0B, 0x1A, 0x0A, 0xFA, 0x01, 0x0B, 0x1A, 0x83, 0x0C, 0x3A, 0x0C, 0x9A, 0x0B, 0xDA, 0x0B, 0x1A, 0x01, 0x0A, 0xFA, 0x12, + 0x0B, 0x1A, 0x80, 0x0B, 0x3A, 0x01, 0x0B, 0x1A, 0x80, 0x0B, 0x3A, 0x02, 0x0B, 0x1A, 0x82, 0x0B, 0xDB, 0x14, 0xBB, 0x0B, 0xFA, 0x01, 0x0B, 0x1A, 0x01, 0x0B, 0x3A, 0x01, 0x0B, 0x1A, 0x01, 0x0B, 0x3A, 0x82, 0x13, 0x1A, 0x0B, 0x3A, 0x0B, 0x1A, 0x07, 0x0B, 0x3A, 0x01, 0x13, 0x3B, 0x80, 0x13, 0x3A, 0x04, 0x0B, 0x3A, 0x84, 0x13, 0x3A, 0x0B, 0x3A, 0x13, 0x7A, 0x0C, 0xDB, 0x0C, 0x5B, 0x01, 0x13, 0x3B, 0x80, 0x0B, 0x3A, 0x06, 0x13, 0x3A, 0x0A, 0x13, 0x3B, 0x03, 0x13, 0x5B, 0x01, 0x13, 0x3B, 0x87, 0x13, 0x5A, 0x0B, 0x5B, 0x13, 0x3B, 0x14, 0x3A, 0x14, 0x7B, 0x13, 0x5B, 0x13, 0x5A, 0x13, 0x3B, 0x11, 0x13, 0x5A, 0x07, 0x13, 0x5B, 0x82, 0x13, 0x5A, 0x13, 0xBB, 0x14, 0xDB, 0x1B, 0x13, 0x5B, 0x86, 0x13, 0x5A, 0x13, 0x5B, 0x13, 0x3B, 0x14, 0xFB, 0x13, 0x5A, 0x13, 0x5B, 0x13, 0x5A, 0x0F, 0x13, 0x5B, 0x07, 0x13, 0x5A, 0x82, 0x13, 0x3A, 0x13, 0x5B, 0x13, 0x5A, 0x01, 0x13, 0x5B, 0x82, 0x14, 0x9B, 0x13, 0xFB, 0x13, 0x3A, 0x01, 0x13, 0x5B, 0x02, 0x13, 0x5A, 0x02, 0x13, 0x5B, 0x0F, 0x13, 0x3B, 0x86, 0x13, 0x3A, 0x13, 0x3B, 0x13, 0x3A, 0x13, 0x5A, 0x13, 0x3A, 0x14, 0x3B, 0x14, 0x7B, 0x03, 0x13, 0x3A, 0x80, 0x13, 0x3B, 0x01, 0x13, 0x3A, 0x80, 0x13, 0x3B, 0x02, 0x13, 0x3A, 0x80, 0x13, 0x5B, 0x01, 0x13, 0x3B, 0x80, 0x1B, 0x3B, 0x01, 0x1B, 0x5B, 0x81, 0x1B, 0x3B, 0x1B, 0x5B, 0x03, 0x23, 0x5B, 0x01, 0x2B, 0x5B, 0x01, 0x2B, 0x7B, 0x82, 0x33, 0x5B, 0x72, 0x35, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x72, 0xD5, 0x01, + 0x99, 0x32, 0x04, 0x99, 0x31, 0x80, 0x71, 0xB4, 0x01, 0x1B, 0x3B, 0x82, 0x13, 0x3A, 0x13, 0x3B, 0x13, 0x3A, 0x03, 0x13, 0x1A, 0x02, 0x0B, 0x1A, 0x86, 0x0B, 0x3A, 0x0A, 0xFA, 0x0B, 0x1A, 0x0A, 0xFA, 0x0B, 0xDA, 0x0C, 0xBB, 0x0B, 0xDA, 0x0B, 0x0B, 0x1A, 0x05, 0x02, 0xD9, 0x89, 0x02, 0xF9, 0x02, 0xD9, 0x02, 0xDA, 0x0A, 0xDA, 0x0A, 0xFA, 0x0B, 0xFA, 0x0C, 0x5B, 0x0B, 0xFA, 0x0A, 0xD9, 0x02, 0xFA, 0x01, 0x02, 0xF9, 0x85, 0x0A, 0xF9, 0x02, 0xF9, 0x0A, 0xF9, 0x02, 0xD9, 0x02, 0xF9, 0x0A, 0xF9, 0x0F, 0x0A, 0xFA, 0x80, 0x0A, 0xF9, 0x02, 0x0A, 0xFA, 0x85, 0x0C, 0x1A, 0x0C, 0x7B, 0x0B, 0x5A, 0x0A, 0xFA, 0x0A, 0xF9, 0x0B, 0x1A, 0x02, 0x0A, 0xFA, 0x80, 0x0B, 0x1A, 0x01, 0x0A, 0xFA, 0x80, 0x0B, 0x1A, 0x07, 0x0A, 0xFA, 0x02, 0x0B, 0x1A, 0x81, 0x03, 0x1A, 0x0A, 0xFA, 0x01, 0x0B, 0x1A, 0x80, 0x0A, 0xFA, 0x02, 0x0B, 0x1A, 0x84, 0x0A, 0xFA, 0x0C, 0x3A, 0x0C, 0x5A, 0x0B, 0x1A, 0x0A, 0xFA, 0x1C, 0x0B, 0x1A, 0x81, 0x0C, 0x5B, 0x0C, 0x1A, 0x1D, 0x0B, 0x1A, 0x83, 0x0B, 0x3A, 0x0C, 0x7B, 0x0B, 0x7A, 0x0B, 0x3A, 0x1D, 0x0B, 0x1A, 0x82, 0x0C, 0xBB, 0x0B, 0x1A, 0x0B, 0x3A, 0x1D, 0x0B, 0x1A, 0x81, 0x0B, 0x7A, 0x0C, 0xBB, 0x1E, 0x0B, 0x1A, 0x81, 0x0B, 0xDA, 0x0C, 0x7B, 0x0B, 0x0B, 0x1A, 0x04, 0x13, 0x1A, 0x80, 0x1B, 0x1A, 0x03, 0x1B, 0x3A, 0x01, 0x23, 0x3A, 0x83, 0x23, 0x3B, 0x2B, 0x3B, 0x2B, 0x5B, 0x3A, 0xD9, 0x02, 0x99, 0x31, 0x80, 0x99, 0x12, 0x04, 0x99, 0x31, 0x80, 0x99, 0x11, 0x05, 0x99, 0x31, 0x81, 0x89, 0x93, 0x1B, 0x1A, 0x01, 0x13, 0x1A, + 0x80, 0x12, 0xFA, 0x0B, 0x0A, 0xFA, 0x89, 0x02, 0xFA, 0x0A, 0xFA, 0x03, 0x5A, 0x04, 0x5A, 0x0C, 0x3A, 0x0A, 0xFA, 0x02, 0xDA, 0x0A, 0xFA, 0x0A, 0xF9, 0x02, 0xF9, 0x02, 0x0A, 0xFA, 0x01, 0x02, 0xD9, 0x03, 0x01, 0x58, 0x80, 0x01, 0x38, 0x02, 0x01, 0x58, 0x84, 0x01, 0x38, 0x02, 0x38, 0x03, 0xB9, 0x03, 0xDA, 0x02, 0x59, 0x17, 0x01, 0x58, 0x81, 0x01, 0x38, 0x01, 0x78, 0x01, 0x01, 0x58, 0x85, 0x01, 0x59, 0x01, 0xB9, 0x03, 0x7A, 0x0B, 0xDA, 0x02, 0x18, 0x09, 0x58, 0x01, 0x01, 0x59, 0x80, 0x09, 0x58, 0x03, 0x01, 0x58, 0x85, 0x09, 0x58, 0x09, 0x59, 0x01, 0x58, 0x01, 0x59, 0x01, 0x79, 0x01, 0x58, 0x03, 0x01, 0x59, 0x03, 0x01, 0x58, 0x8F, 0x09, 0x79, 0x01, 0x79, 0x09, 0x58, 0x09, 0x79, 0x01, 0x59, 0x01, 0x78, 0x01, 0x59, 0x09, 0x58, 0x03, 0x3A, 0x04, 0x1A, 0x01, 0xF9, 0x09, 0x59, 0x01, 0x79, 0x09, 0x58, 0x09, 0x59, 0x01, 0x58, 0x03, 0x01, 0x59, 0x03, 0x09, 0x79, 0x07, 0x01, 0x79, 0x01, 0x09, 0x79, 0x01, 0x09, 0x59, 0x04, 0x09, 0x79, 0x83, 0x0A, 0x79, 0x04, 0x3A, 0x01, 0x99, 0x09, 0x59, 0x01, 0x01, 0x79, 0x10, 0x09, 0x79, 0x07, 0x01, 0x79, 0x85, 0x09, 0x79, 0x01, 0x79, 0x09, 0xB9, 0x0C, 0x3B, 0x01, 0x79, 0x09, 0x79, 0x01, 0x01, 0x79, 0x18, 0x09, 0x79, 0x84, 0x01, 0x79, 0x09, 0x79, 0x01, 0x79, 0x0C, 0x7A, 0x09, 0x79, 0x01, 0x01, 0x79, 0x0F, 0x09, 0x79, 0x09, 0x01, 0x79, 0x03, 0x09, 0x79, 0x81, 0x0B, 0xFA, 0x02, 0x59, 0x04, 0x09, 0x79, 0x80, 0x09, 0x59, 0x11, 0x09, 0x79, 0x8F, 0x01, 0x79, 0x09, 0x58, 0x09, 0x79, 0x01, 0x78, 0x09, + 0x58, 0x01, 0x59, 0x09, 0x99, 0x0B, 0xDA, 0x02, 0xD9, 0x01, 0x59, 0x09, 0x59, 0x01, 0x59, 0x09, 0x79, 0x09, 0x59, 0x09, 0x79, 0x09, 0x59, 0x07, 0x09, 0x79, 0x04, 0x11, 0x79, 0x01, 0x19, 0x99, 0x87, 0x19, 0x9A, 0x19, 0x99, 0x21, 0x99, 0x21, 0x9A, 0x21, 0xBA, 0x71, 0x54, 0x99, 0x31, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x03, 0x99, 0x31, 0x80, 0x99, 0x11, 0x04, 0x99, 0x31, 0x02, 0x11, 0x79, 0x01, 0x09, 0x79, 0x03, 0x09, 0x58, 0x02, 0x01, 0x58, 0x80, 0x09, 0x58, 0x03, 0x01, 0x58, 0x82, 0x01, 0x59, 0x01, 0x58, 0x01, 0xD8, 0x01, 0x03, 0x99, 0x80, 0x01, 0xD9, 0x01, 0x01, 0x58, 0x01, 0x01, 0x38, 0x03, 0x01, 0x58, 0x04, 0x01, 0x37, 0x85, 0x01, 0x38, 0x01, 0x37, 0x01, 0xD8, 0x03, 0x39, 0x03, 0x99, 0x02, 0x38, 0x01, 0x01, 0x37, 0x01, 0x01, 0x38, 0x01, 0x01, 0x37, 0x04, 0x01, 0x38, 0x01, 0x01, 0x37, 0x01, 0x01, 0x38, 0x80, 0x01, 0x37, 0x0B, 0x01, 0x38, 0x86, 0x01, 0x57, 0x01, 0x38, 0x02, 0x78, 0x03, 0xD9, 0x02, 0xB9, 0x01, 0x78, 0x01, 0x58, 0x01, 0x01, 0x38, 0x81, 0x01, 0x58, 0x01, 0x38, 0x01, 0x01, 0x37, 0x04, 0x01, 0x38, 0x81, 0x01, 0x37, 0x01, 0x58, 0x05, 0x01, 0x38, 0x02, 0x01, 0x58, 0x01, 0x01, 0x38, 0x80, 0x09, 0x38, 0x02, 0x01, 0x58, 0x83, 0x01, 0x78, 0x03, 0x39, 0x03, 0x99, 0x01, 0x78, 0x1D, 0x01, 0x58, 0x82, 0x01, 0xD9, 0x03, 0xF9, 0x01, 0xF9, 0x1E, 0x01, 0x58, 0x81, 0x02, 0xD9, 0x03, 0x19, 0x02, 0x01, 0x58, 0x80, 0x01, 0x59, 0x17, 0x01, 0x58, 0x80, 0x09, 0x59, 0x01, 0x01, 0x58, 0x82, 0x01, 0x59, 0x04, 0x1A, + 0x09, 0x59, 0x1F, 0x01, 0x58, 0x81, 0x02, 0xB9, 0x03, 0x19, 0x01, 0x01, 0x58, 0x01, 0x01, 0x38, 0x18, 0x01, 0x58, 0x84, 0x01, 0x38, 0x01, 0x58, 0x01, 0xD8, 0x03, 0xF9, 0x01, 0xF8, 0x01, 0x01, 0x38, 0x07, 0x01, 0x58, 0x04, 0x09, 0x58, 0x02, 0x11, 0x58, 0x81, 0x11, 0x78, 0x11, 0x79, 0x03, 0x19, 0x79, 0x82, 0x19, 0x99, 0x21, 0x79, 0x31, 0x78, 0x04, 0x99, 0x31, 0x82, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x07, 0x99, 0x31, 0x82, 0x31, 0x57, 0x09, 0x58, 0x11, 0x58, 0x01, 0x09, 0x58, 0x03, 0x09, 0x38, 0x04, 0x01, 0x38, 0x01, 0x01, 0x37, 0x04, 0x01, 0x38, 0x84, 0x02, 0x98, 0x03, 0xF9, 0x02, 0x98, 0x01, 0x37, 0x01, 0x38, 0x04, 0x01, 0x37, 0x04, 0x01, 0x17, 0x83, 0x01, 0xD7, 0x03, 0x18, 0x03, 0x79, 0x02, 0x38, 0x0A, 0x01, 0x17, 0x80, 0x01, 0x37, 0x05, 0x01, 0x17, 0x80, 0x01, 0x37, 0x07, 0x01, 0x17, 0x80, 0x01, 0x37, 0x01, 0x01, 0x17, 0x89, 0x01, 0x77, 0x03, 0x18, 0x03, 0x79, 0x01, 0xD7, 0x01, 0x37, 0x01, 0x17, 0x01, 0x37, 0x01, 0x17, 0x01, 0x37, 0x01, 0x36, 0x01, 0x01, 0x17, 0x01, 0x01, 0x37, 0x01, 0x01, 0x17, 0x02, 0x01, 0x37, 0x80, 0x01, 0x17, 0x02, 0x01, 0x37, 0x02, 0x01, 0x17, 0x04, 0x01, 0x37, 0x8B, 0x01, 0x38, 0x01, 0x37, 0x01, 0x17, 0x01, 0x57, 0x03, 0x59, 0x02, 0xF8, 0x01, 0x57, 0x01, 0x17, 0x01, 0x37, 0x01, 0x17, 0x01, 0x37, 0x01, 0x17, 0x02, 0x01, 0x37, 0x0E, 0x01, 0x38, 0x06, 0x01, 0x37, 0x85, 0x01, 0x58, 0x03, 0x59, 0x02, 0x78, 0x01, 0x37, 0x01, 0x38, 0x01, 0x37, 0x01, 0x01, 0x38, 0x80, 0x01, 0x37, 0x17, 0x01, 0x38, + 0x84, 0x01, 0x37, 0x01, 0x38, 0x03, 0xB9, 0x01, 0xB8, 0x01, 0x37, 0x01, 0x01, 0x38, 0x80, 0x01, 0x37, 0x17, 0x01, 0x38, 0x02, 0x01, 0x37, 0x84, 0x01, 0x38, 0x03, 0xF9, 0x01, 0x37, 0x01, 0x38, 0x01, 0x37, 0x18, 0x01, 0x38, 0x82, 0x01, 0x37, 0x01, 0x38, 0x01, 0x18, 0x01, 0x01, 0x38, 0x82, 0x01, 0x78, 0x03, 0xF9, 0x01, 0x58, 0x01, 0x01, 0x37, 0x14, 0x01, 0x38, 0x02, 0x01, 0x37, 0x01, 0x01, 0x38, 0x01, 0x01, 0x37, 0x89, 0x01, 0x18, 0x02, 0x38, 0x03, 0xB9, 0x01, 0x77, 0x01, 0x37, 0x01, 0x38, 0x01, 0x37, 0x01, 0x17, 0x01, 0x37, 0x01, 0x38, 0x03, 0x01, 0x37, 0x80, 0x09, 0x37, 0x04, 0x09, 0x38, 0x80, 0x09, 0x58, 0x04, 0x11, 0x58, 0x01, 0x19, 0x58, 0x82, 0x19, 0x59, 0x19, 0x78, 0x69, 0x34, 0x01, 0x99, 0x31, 0x80, 0x99, 0x12, 0x04, 0x99, 0x31, 0x82, 0x99, 0x12, 0x99, 0x31, 0x99, 0x11, 0x02, 0x99, 0x31, 0x83, 0x99, 0x32, 0x41, 0x35, 0x09, 0x38, 0x09, 0x57, 0x03, 0x09, 0x37, 0x08, 0x01, 0x17, 0x01, 0x01, 0x37, 0x03, 0x01, 0x17, 0x83, 0x01, 0x97, 0x03, 0x18, 0x03, 0x38, 0x01, 0xB7, 0x04, 0x01, 0x17, 0x01, 0x02, 0xD8, 0x01, 0x02, 0xD7, 0x83, 0x02, 0xF7, 0x03, 0x58, 0x03, 0x78, 0x02, 0xF7, 0x02, 0x02, 0xD8, 0x05, 0x02, 0xD7, 0x0D, 0x02, 0xD8, 0x04, 0x02, 0xF8, 0x80, 0x02, 0xD7, 0x01, 0x02, 0xF8, 0x83, 0x03, 0x98, 0x03, 0x78, 0x02, 0xF8, 0x02, 0xD8, 0x1D, 0x02, 0xF8, 0x81, 0x03, 0x78, 0x03, 0x98, 0x18, 0x02, 0xF8, 0x83, 0x03, 0x18, 0x02, 0xF8, 0x03, 0x18, 0x02, 0xF7, 0x01, 0x02, 0xF8, 0x83, 0x03, 0x18, 0x03, 0x58, 0x03, 0x99, 0x03, + 0x18, 0x01, 0x02, 0xF8, 0x01, 0x03, 0x18, 0x81, 0x02, 0xF8, 0x03, 0x18, 0x07, 0x02, 0xF8, 0x10, 0x03, 0x18, 0x81, 0x03, 0x38, 0x03, 0xB8, 0x01, 0x03, 0x18, 0x80, 0x02, 0xF8, 0x1D, 0x03, 0x18, 0x80, 0x03, 0xB8, 0x1C, 0x03, 0x18, 0x80, 0x02, 0xF8, 0x01, 0x03, 0x18, 0x83, 0x02, 0xF8, 0x03, 0x18, 0x03, 0x78, 0x03, 0x38, 0x01, 0x02, 0xF8, 0x82, 0x03, 0x18, 0x02, 0xF8, 0x03, 0x18, 0x11, 0x02, 0xF8, 0x01, 0x03, 0x18, 0x06, 0x02, 0xF8, 0x81, 0x03, 0x78, 0x03, 0x38, 0x0C, 0x02, 0xF8, 0x03, 0x0A, 0xF8, 0x01, 0x0B, 0x18, 0x80, 0x13, 0x18, 0x04, 0x13, 0x19, 0x81, 0x1B, 0x18, 0x2A, 0xF8, 0x03, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x84, 0x99, 0x32, 0x99, 0x31, 0x99, 0x11, 0x99, 0x31, 0x99, 0x32, 0x02, 0x99, 0x31, 0x80, 0x52, 0x15, 0x01, 0x0A, 0xF8, 0x03, 0x02, 0xF8, 0x0D, 0x02, 0xD8, 0x80, 0x02, 0xD7, 0x01, 0x02, 0xD8, 0x01, 0x03, 0x78, 0x81, 0x02, 0xD7, 0x02, 0xD8, 0x01, 0x02, 0xD7, 0x87, 0x02, 0xD8, 0x01, 0x76, 0x01, 0xB6, 0x02, 0xF8, 0x03, 0x17, 0x02, 0x17, 0x01, 0x96, 0x01, 0x76, 0x03, 0x01, 0x96, 0x80, 0x01, 0x76, 0x10, 0x01, 0x96, 0x80, 0x01, 0x76, 0x05, 0x01, 0x96, 0x84, 0x01, 0xF7, 0x03, 0x37, 0x02, 0xD7, 0x01, 0xB6, 0x01, 0x97, 0x01, 0x01, 0x96, 0x80, 0x01, 0x76, 0x11, 0x01, 0x96, 0x80, 0x01, 0x97, 0x07, 0x01, 0x96, 0x82, 0x02, 0x37, 0x03, 0x58, 0x02, 0x17, 0x09, 0x01, 0x96, 0x0F, 0x01, 0x97, 0x01, 0x01, 0x96, 0x01, 0x01, 0x97, 0x01, 0x01, 0x96, 0x83, 0x02, 0x77, 0x03, 0x18, 0x01, 0xB6, 0x01, 0x96, 0x15, 0x01, + 0x97, 0x80, 0x01, 0xB7, 0x06, 0x01, 0x97, 0x86, 0x01, 0xB6, 0x02, 0xF7, 0x02, 0x57, 0x01, 0x97, 0x01, 0xB6, 0x01, 0xB7, 0x01, 0xB6, 0x19, 0x01, 0x97, 0x84, 0x01, 0xB7, 0x01, 0xB6, 0x01, 0xB7, 0x03, 0x78, 0x01, 0xB7, 0x1F, 0x01, 0x97, 0x82, 0x01, 0xB6, 0x01, 0xF7, 0x03, 0x58, 0x01, 0x01, 0x96, 0x84, 0x01, 0xB6, 0x01, 0x96, 0x01, 0xB6, 0x01, 0x97, 0x01, 0x96, 0x15, 0x01, 0x97, 0x01, 0x01, 0x96, 0x01, 0x01, 0x97, 0x01, 0x02, 0xF7, 0x03, 0x01, 0x96, 0x82, 0x01, 0x97, 0x01, 0x96, 0x01, 0x97, 0x01, 0x01, 0xB6, 0x02, 0x01, 0x96, 0x02, 0x01, 0x97, 0x81, 0x09, 0xB7, 0x09, 0x97, 0x02, 0x09, 0xB7, 0x01, 0x11, 0xB7, 0x80, 0x11, 0xD7, 0x02, 0x11, 0xB7, 0x82, 0x71, 0x53, 0x99, 0x31, 0x99, 0x11, 0x0B, 0x99, 0x31, 0x83, 0x61, 0x74, 0x09, 0xB6, 0x01, 0x96, 0x01, 0x97, 0x0E, 0x01, 0x96, 0x80, 0x01, 0x76, 0x03, 0x01, 0x96, 0x84, 0x01, 0x77, 0x01, 0x96, 0x02, 0xB7, 0x03, 0x37, 0x02, 0x16, 0x01, 0x01, 0x96, 0x83, 0x02, 0x36, 0x03, 0x17, 0x02, 0x56, 0x00, 0xF4, 0x17, 0x00, 0xD5, 0x01, 0x00, 0xF5, 0x81, 0x00, 0xD5, 0x00, 0xF5, 0x01, 0x00, 0xD5, 0x84, 0x00, 0xF5, 0x01, 0xF6, 0x03, 0x17, 0x01, 0xF6, 0x00, 0xF5, 0x03, 0x00, 0xD5, 0x80, 0x00, 0xF5, 0x10, 0x00, 0xD5, 0x01, 0x00, 0xF5, 0x03, 0x00, 0xD5, 0x85, 0x00, 0xF5, 0x00, 0xD5, 0x00, 0xF5, 0x01, 0xB6, 0x03, 0x37, 0x01, 0xB6, 0x1F, 0x00, 0xF5, 0x82, 0x01, 0x55, 0x03, 0x37, 0x01, 0x56, 0x01, 0x00, 0xD5, 0x02, 0x00, 0xF6, 0x80, 0x00, 0xF5, 0x01, 0x00, 0xD6, 0x07, 0x00, 0xF6, 0x07, 0x00, 0xF5, + 0x81, 0x00, 0xF6, 0x00, 0xD5, 0x01, 0x00, 0xF6, 0x02, 0x00, 0xF5, 0x88, 0x00, 0xF6, 0x01, 0x15, 0x03, 0x38, 0x01, 0x15, 0x00, 0xF6, 0x00, 0xF5, 0x00, 0xF6, 0x00, 0xF5, 0x00, 0xD6, 0x17, 0x00, 0xF5, 0x85, 0x00, 0xD5, 0x00, 0xF6, 0x00, 0xD5, 0x00, 0xF5, 0x03, 0x57, 0x00, 0xF5, 0x01, 0x00, 0xF6, 0x17, 0x00, 0xF5, 0x81, 0x00, 0xF6, 0x00, 0xF5, 0x01, 0x00, 0xD5, 0x01, 0x00, 0xD6, 0x86, 0x00, 0xD5, 0x00, 0xF5, 0x02, 0xF7, 0x01, 0x76, 0x00, 0xF5, 0x00, 0xD5, 0x00, 0xF5, 0x01, 0x00, 0xF6, 0x17, 0x00, 0xF5, 0x88, 0x00, 0xD5, 0x00, 0xF5, 0x00, 0xD5, 0x01, 0x16, 0x02, 0xF7, 0x01, 0xD6, 0x00, 0xD6, 0x00, 0xD5, 0x00, 0xF5, 0x04, 0x00, 0xD5, 0x80, 0x00, 0xF5, 0x01, 0x00, 0xD5, 0x04, 0x00, 0xF5, 0x03, 0x08, 0xF6, 0x01, 0x09, 0x16, 0x83, 0x10, 0xF6, 0x11, 0x17, 0x11, 0x16, 0x31, 0x35, 0x03, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x81, 0x99, 0x11, 0x99, 0x12, 0x03, 0x99, 0x31, 0x82, 0x71, 0x13, 0x08, 0xF5, 0x08, 0xF6, 0x03, 0x00, 0xF5, 0x0F, 0x00, 0xD5, 0x80, 0x00, 0xD4, 0x02, 0x00, 0xD5, 0x87, 0x01, 0xD6, 0x02, 0xF7, 0x02, 0x36, 0x01, 0x14, 0x01, 0xF4, 0x01, 0x13, 0x00, 0xB3, 0x00, 0xD3, 0x06, 0x00, 0xB3, 0x80, 0x00, 0xD3, 0x08, 0x00, 0xB3, 0x83, 0x00, 0xD3, 0x00, 0xB3, 0x00, 0xD3, 0x00, 0xD4, 0x01, 0x00, 0xB3, 0x80, 0x00, 0xD4, 0x01, 0x00, 0xB3, 0x88, 0x00, 0xD4, 0x00, 0xB3, 0x00, 0xD3, 0x01, 0x33, 0x02, 0x75, 0x02, 0x55, 0x01, 0x34, 0x00, 0xD3, 0x00, 0xB3, 0x01, 0x00, 0xD3, 0x01, 0x00, 0xD4, 0x80, 0x00, 0xB4, 0x11, 0x00, + 0xD4, 0x82, 0x00, 0xB4, 0x00, 0xD4, 0x00, 0xB4, 0x01, 0x00, 0xD4, 0x01, 0x00, 0xB4, 0x84, 0x01, 0xD4, 0x02, 0xB5, 0x01, 0x34, 0x00, 0xD4, 0x00, 0xB4, 0x1D, 0x00, 0xD4, 0x82, 0x00, 0xF4, 0x02, 0xB5, 0x01, 0xB5, 0x20, 0x00, 0xD4, 0x83, 0x01, 0xB5, 0x02, 0x55, 0x00, 0xD5, 0x00, 0xB4, 0x1F, 0x00, 0xD4, 0x80, 0x02, 0xF6, 0x22, 0x00, 0xD4, 0x81, 0x01, 0xF5, 0x02, 0x35, 0x16, 0x00, 0xD4, 0x06, 0x00, 0xB4, 0x01, 0x00, 0xD4, 0x84, 0x00, 0xB4, 0x01, 0x54, 0x02, 0xB5, 0x01, 0x34, 0x00, 0xD4, 0x01, 0x00, 0xB4, 0x02, 0x00, 0xD4, 0x80, 0x00, 0xB4, 0x08, 0x00, 0xD4, 0x02, 0x08, 0xD4, 0x02, 0x08, 0xF4, 0x83, 0x08, 0xF5, 0x10, 0xF4, 0x10, 0xD5, 0x79, 0x12, 0x08, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x81, 0x32, 0x02, 0x00, 0xD4, 0x04, 0x00, 0xD3, 0x81, 0x00, 0xB3, 0x00, 0xD3, 0x0D, 0x00, 0xB3, 0x81, 0x00, 0xB2, 0x00, 0xB3, 0x01, 0x00, 0xD3, 0x82, 0x02, 0x14, 0x02, 0x95, 0x00, 0xB1, 0x02, 0x00, 0x91, 0x81, 0x00, 0xB1, 0x00, 0x91, 0x01, 0x00, 0xB1, 0x80, 0x00, 0x91, 0x13, 0x00, 0xB1, 0x01, 0x00, 0x91, 0x85, 0x00, 0xD2, 0x01, 0xB2, 0x02, 0x73, 0x01, 0x72, 0x00, 0xB1, 0x00, 0xB2, 0x01, 0x00, 0xB1, 0x80, 0x00, 0xB2, 0x01, 0x00, 0xB1, 0x81, 0x00, 0xB2, 0x00, 0xB1, 0x0F, 0x00, 0xB2, 0x01, 0x00, 0xB1, 0x01, 0x00, 0xB2, 0x80, 0x00, 0xB1, 0x02, 0x00, 0xB2, 0x82, 0x01, 0xD3, 0x02, 0x53, 0x01, 0x12, 0x20, 0x00, 0xB2, 0x82, 0x02, 0x13, 0x01, 0xD3, 0x00, 0x92, 0x20, 0x00, 0xB2, 0x81, 0x02, 0x53, 0x01, 0x53, 0x21, 0x00, 0xB2, 0x80, + 0x02, 0x94, 0x22, 0x00, 0xB2, 0x82, 0x00, 0xF2, 0x02, 0x93, 0x00, 0xD2, 0x1E, 0x00, 0xB2, 0x83, 0x00, 0xB1, 0x00, 0xB2, 0x01, 0x72, 0x02, 0x53, 0x01, 0x00, 0xB1, 0x04, 0x00, 0xB2, 0x02, 0x00, 0xB1, 0x06, 0x00, 0xB2, 0x02, 0x08, 0xB2, 0x86, 0x08, 0xD2, 0x08, 0xB2, 0x08, 0xD2, 0x08, 0xD3, 0x10, 0xD3, 0x40, 0xF2, 0x99, 0x11, 0x06, 0x99, 0x31, 0x80, 0x99, 0x11, 0x03, 0x99, 0x31, 0x82, 0x99, 0x11, 0x00, 0xD2, 0x00, 0xB2, 0x10, 0x00, 0xB1, 0x80, 0x00, 0x91, 0x07, 0x00, 0xB1, 0x83, 0x00, 0x91, 0x01, 0x31, 0x00, 0x90, 0x00, 0x70, 0x1B, 0x00, 0x90, 0x83, 0x01, 0x11, 0x02, 0x12, 0x01, 0xD1, 0x00, 0xD0, 0x1F, 0x00, 0x90, 0x83, 0x00, 0xB0, 0x01, 0xD2, 0x01, 0xF2, 0x00, 0xB0, 0x1E, 0x00, 0x90, 0x01, 0x00, 0xB0, 0x82, 0x01, 0x71, 0x02, 0x12, 0x00, 0xB0, 0x05, 0x00, 0x90, 0x01, 0x00, 0xB0, 0x01, 0x00, 0x90, 0x0F, 0x00, 0xB0, 0x02, 0x00, 0x90, 0x01, 0x00, 0xB0, 0x01, 0x00, 0x90, 0x84, 0x00, 0xF1, 0x02, 0x52, 0x00, 0xB0, 0x00, 0x90, 0x00, 0xB0, 0x01, 0x00, 0x90, 0x01, 0x00, 0xB0, 0x17, 0x00, 0x90, 0x01, 0x00, 0xB0, 0x01, 0x00, 0x90, 0x83, 0x02, 0x72, 0x00, 0xB0, 0x00, 0x90, 0x00, 0xB0, 0x18, 0x00, 0x90, 0x03, 0x00, 0xB0, 0x03, 0x00, 0x90, 0x82, 0x01, 0xD1, 0x01, 0x71, 0x00, 0x91, 0x01, 0x00, 0xB0, 0x1E, 0x00, 0x90, 0x01, 0x01, 0xD1, 0x81, 0x00, 0x90, 0x00, 0xB0, 0x02, 0x00, 0x90, 0x02, 0x00, 0xB0, 0x05, 0x00, 0x90, 0x03, 0x00, 0x91, 0x06, 0x08, 0xB1, 0x80, 0x89, 0x12, 0x04, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x01, 0x99, + 0x11, 0x82, 0x99, 0x12, 0x99, 0x31, 0x00, 0x91, 0x27, 0x00, 0x90, 0x80, 0x00, 0x8F, 0x0F, 0x00, 0x90, 0x83, 0x00, 0xB0, 0x01, 0x91, 0x02, 0x32, 0x01, 0x51, 0x09, 0x00, 0x90, 0x80, 0x00, 0xB0, 0x15, 0x00, 0x90, 0x83, 0x00, 0xB0, 0x01, 0xF2, 0x01, 0xD1, 0x00, 0xB0, 0x20, 0x00, 0x90, 0x82, 0x01, 0x10, 0x02, 0x52, 0x00, 0xD0, 0x21, 0x00, 0x90, 0x81, 0x01, 0xB1, 0x01, 0x91, 0x1F, 0x00, 0x90, 0x80, 0x00, 0xB0, 0x01, 0x00, 0x90, 0x80, 0x02, 0x52, 0x23, 0x00, 0x90, 0x81, 0x01, 0x51, 0x02, 0x32, 0x21, 0x00, 0x90, 0x83, 0x00, 0xB0, 0x01, 0xF1, 0x01, 0x71, 0x00, 0xB0, 0x0E, 0x00, 0x90, 0x80, 0x00, 0x91, 0x01, 0x00, 0xB0, 0x82, 0x00, 0xB1, 0x08, 0xB1, 0x08, 0xB0, 0x01, 0x08, 0xB1, 0x80, 0x50, 0xF1, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x03, 0x99, 0x31, 0x85, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x99, 0x31, 0x1A, 0x00, 0x90, 0x80, 0x00, 0x70, 0x01, 0x00, 0x90, 0x02, 0x00, 0x8F, 0x02, 0x00, 0x90, 0x04, 0x00, 0x8F, 0x08, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x90, 0x03, 0x00, 0x8F, 0x86, 0x00, 0xD0, 0x02, 0x12, 0x01, 0xD2, 0x00, 0xD0, 0x00, 0x90, 0x00, 0x8F, 0x00, 0x90, 0x06, 0x00, 0x8F, 0x80, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x10, 0x00, 0x90, 0x80, 0x00, 0x8F, 0x01, 0x00, 0x90, 0x82, 0x00, 0xF0, 0x02, 0x32, 0x01, 0xB1, 0x03, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x1C, 0x00, 0x90, 0x81, 0x02, 0x32, 0x01, 0x30, 0x21, 0x00, 0x90, 0x82, 0x00, 0xB0, 0x02, 0x32, 0x00, 0xD0, 0x04, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x1B, 0x00, + 0x90, 0x80, 0x02, 0x52, 0x24, 0x00, 0x90, 0x83, 0x02, 0x32, 0x00, 0xF0, 0x00, 0x90, 0x00, 0x70, 0x1F, 0x00, 0x90, 0x83, 0x00, 0xF0, 0x02, 0x32, 0x00, 0xF1, 0x00, 0xB0, 0x01, 0x00, 0x8F, 0x81, 0x00, 0x90, 0x00, 0x8F, 0x0C, 0x00, 0x90, 0x01, 0x00, 0xB0, 0x84, 0x08, 0x90, 0x08, 0xB0, 0x08, 0x91, 0x10, 0xB0, 0x99, 0x31, 0x01, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x05, 0x99, 0x31, 0x11, 0x00, 0x90, 0x80, 0x00, 0x8F, 0x05, 0x00, 0x90, 0x14, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x03, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x03, 0x00, 0x8F, 0x84, 0x01, 0x71, 0x02, 0x32, 0x01, 0x51, 0x00, 0x8F, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x13, 0x00, 0x8F, 0x81, 0x00, 0x70, 0x00, 0x90, 0x03, 0x00, 0x8F, 0x86, 0x00, 0x6F, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0xF0, 0x02, 0x12, 0x01, 0x51, 0x00, 0x6F, 0x10, 0x00, 0x8F, 0x07, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x90, 0x03, 0x00, 0x8F, 0x84, 0x00, 0x70, 0x00, 0x90, 0x01, 0xF1, 0x01, 0xB1, 0x00, 0x70, 0x01, 0x00, 0x8F, 0x19, 0x00, 0x90, 0x02, 0x00, 0x8F, 0x80, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x81, 0x01, 0x30, 0x01, 0xF1, 0x03, 0x00, 0x90, 0x1F, 0x00, 0x8F, 0x80, 0x02, 0x52, 0x1A, 0x00, 0x8F, 0x08, 0x00, 0x90, 0x83, 0x00, 0x8F, 0x01, 0x91, 0x01, 0xB1, 0x00, 0x90, 0x02, 0x00, 0x8F, 0x17, 0x00, 0x90, 0x80, 0x00, 0x8F, 0x01, 0x00, 0x90, 0x87, 0x00, 0x8F, 0x00, 0x90, 0x00, 0x6F, 0x00, 0x8F, 0x01, 0x31, 0x02, 0x32, 0x00, 0xD0, 0x00, 0x90, 0x02, 0x00, 0x8F, 0x01, 0x00, 0x90, 0x01, 0x00, 0x8F, + 0x0E, 0x00, 0x90, 0x80, 0x60, 0xF1, 0x0B, 0x99, 0x31, 0x80, 0x01, 0x50, 0x02, 0x00, 0x90, 0x82, 0x00, 0x6F, 0x00, 0x90, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x70, 0x21, 0x00, 0x8F, 0x05, 0x00, 0x6F, 0x87, 0x00, 0x70, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x8F, 0x01, 0x10, 0x02, 0x32, 0x01, 0xB1, 0x00, 0xAF, 0x04, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x12, 0x00, 0x8F, 0x82, 0x00, 0x6F, 0x00, 0x8F, 0x00, 0x6F, 0x04, 0x00, 0x8F, 0x85, 0x00, 0x6F, 0x01, 0x10, 0x02, 0x52, 0x01, 0x30, 0x00, 0x8F, 0x00, 0x6F, 0x1F, 0x00, 0x8F, 0x82, 0x00, 0x6F, 0x01, 0x70, 0x01, 0xF2, 0x20, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x81, 0x01, 0xD2, 0x01, 0x30, 0x20, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x80, 0x02, 0x52, 0x24, 0x00, 0x8F, 0x82, 0x00, 0xCF, 0x02, 0x32, 0x00, 0xAF, 0x1B, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x02, 0x00, 0x6F, 0x83, 0x00, 0x8F, 0x01, 0x91, 0x02, 0x12, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x08, 0x00, 0x8F, 0x07, 0x00, 0x90, 0x84, 0x00, 0x8F, 0x18, 0xAF, 0x99, 0x11, 0x99, 0x12, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x88, 0xA1, 0x11, 0x99, 0x31, 0xA1, 0x11, 0x29, 0xD2, 0x01, 0xB1, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x8F, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x14, 0x00, 0x8F, 0x0B, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x02, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x03, 0x00, 0x6F, 0x84, 0x00, 0x8F, 0x01, 0xB1, 0x02, 0x32, 0x01, 0x0F, 0x00, 0x8F, 0x03, 0x00, 0x6F, 0x01, + 0x00, 0x8F, 0x13, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x05, 0x00, 0x6F, 0x82, 0x01, 0x50, 0x02, 0x32, 0x00, 0xCF, 0x01, 0x00, 0x6F, 0x80, 0x00, 0x8E, 0x1D, 0x00, 0x6F, 0x86, 0x00, 0x8F, 0x00, 0x6F, 0x01, 0x0F, 0x02, 0x12, 0x00, 0xAF, 0x00, 0x6F, 0x00, 0x8F, 0x1B, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x83, 0x00, 0x8F, 0x00, 0xAF, 0x02, 0x12, 0x00, 0xAF, 0x1F, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x82, 0x02, 0x52, 0x00, 0x6F, 0x00, 0x8F, 0x20, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x81, 0x01, 0xD1, 0x01, 0x30, 0x01, 0x00, 0x8F, 0x1B, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x04, 0x00, 0x6F, 0x82, 0x01, 0xF1, 0x01, 0xB1, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x05, 0x00, 0x6F, 0x0A, 0x00, 0x8F, 0x82, 0x00, 0x6F, 0x00, 0x90, 0x81, 0x11, 0x06, 0x99, 0x31, 0x81, 0x99, 0x12, 0x99, 0x32, 0x01, 0x99, 0x31, 0x83, 0x28, 0xD0, 0x01, 0xF2, 0x01, 0xD1, 0x00, 0x8F, 0x03, 0x00, 0x6F, 0x81, 0x00, 0x6E, 0x00, 0x8F, 0x13, 0x00, 0x6F, 0x13, 0x00, 0x6E, 0x86, 0x00, 0x8E, 0x01, 0x10, 0x02, 0x12, 0x01, 0xB1, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x6E, 0x01, 0x00, 0x6F, 0x81, 0x00, 0x6E, 0x00, 0x8F, 0x02, 0x00, 0x6E, 0x01, 0x00, 0x6F, 0x0F, 0x00, 0x6E, 0x81, 0x00, 0x6F, 0x00, 0x8F, 0x01, 0x00, 0x6E, 0x01, 0x00, 0x6F, 0x84, 0x00, 0x8E, 0x00, 0x6E, 0x01, 0x91, 0x01, 0xF1, 0x00, 0xCF, 0x01, 0x00, 0x6F, 0x82, 0x00, 0x6E, 0x00, 0x8F, 0x00, 0x6E, 0x18, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x01, 0x00, 0x6E, 0x89, 0x00, 0x6F, 0x00, 0xCF, + 0x02, 0x12, 0x01, 0x10, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x6E, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x6E, 0x1D, 0x00, 0x6F, 0x81, 0x01, 0x50, 0x01, 0x91, 0x24, 0x00, 0x6F, 0x80, 0x02, 0x32, 0x25, 0x00, 0x6F, 0x83, 0x01, 0x10, 0x01, 0xF1, 0x00, 0x8F, 0x00, 0x6E, 0x21, 0x00, 0x6F, 0x82, 0x00, 0xAF, 0x02, 0x12, 0x01, 0x10, 0x01, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x08, 0x00, 0x6F, 0x03, 0x00, 0x8F, 0x05, 0x00, 0x6F, 0x80, 0x48, 0xD0, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x07, 0x99, 0x31, 0x89, 0x00, 0x8E, 0x00, 0x8F, 0x01, 0xB1, 0x01, 0xF2, 0x00, 0xAF, 0x00, 0x6F, 0x00, 0x6E, 0x00, 0x8F, 0x00, 0x6E, 0x00, 0x8F, 0x26, 0x00, 0x6E, 0x83, 0x00, 0x8E, 0x01, 0xB1, 0x02, 0x12, 0x00, 0xEF, 0x02, 0x00, 0x6E, 0x80, 0x00, 0x6F, 0x1B, 0x00, 0x6E, 0x80, 0x00, 0x6F, 0x01, 0x00, 0x6E, 0x84, 0x00, 0x8E, 0x01, 0xD1, 0x01, 0xF1, 0x00, 0x8F, 0x00, 0x6F, 0x21, 0x00, 0x6E, 0x83, 0x00, 0xAE, 0x01, 0xF1, 0x01, 0x70, 0x00, 0x6F, 0x02, 0x00, 0x6E, 0x80, 0x00, 0x6F, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x6F, 0x1C, 0x00, 0x6E, 0x82, 0x02, 0x11, 0x00, 0xCF, 0x00, 0x8F, 0x23, 0x00, 0x6E, 0x80, 0x02, 0x32, 0x25, 0x00, 0x6E, 0x82, 0x00, 0x8F, 0x02, 0x12, 0x00, 0xCF, 0x23, 0x00, 0x6E, 0x82, 0x00, 0xEF, 0x02, 0x12, 0x00, 0xCF, 0x0A, 0x00, 0x6E, 0x08, 0x00, 0x6F, 0x82, 0x00, 0x6E, 0x10, 0x8F, 0x99, 0x11, 0x09, 0x99, 0x31, 0x85, 0x00, 0x6E, 0x00, 0x6F, 0x00, 0x6E, 0x01, 0x90, 0x02, 0x12, 0x00, 0xCF, 0x29, 0x00, 0x6E, 0x83, 0x01, 0x30, 0x02, 0x12, 0x01, 0x70, 0x00, 0x8E, 0x04, + 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x1C, 0x00, 0x6E, 0x83, 0x00, 0xAF, 0x01, 0xD1, 0x01, 0x90, 0x00, 0x8E, 0x23, 0x00, 0x6E, 0x81, 0x01, 0x90, 0x01, 0xF1, 0x24, 0x00, 0x6E, 0x81, 0x00, 0xEF, 0x02, 0x11, 0x25, 0x00, 0x6E, 0x80, 0x02, 0x32, 0x26, 0x00, 0x6E, 0x81, 0x01, 0x70, 0x01, 0x90, 0x24, 0x00, 0x6E, 0x82, 0x01, 0x50, 0x01, 0xF1, 0x00, 0x8E, 0x14, 0x00, 0x6E, 0x80, 0x68, 0xF0, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x03, 0x00, 0x6E, 0x82, 0x01, 0x0F, 0x02, 0x12, 0x00, 0xEF, 0x26, 0x00, 0x6E, 0x83, 0x00, 0x8E, 0x01, 0xB1, 0x01, 0xF2, 0x00, 0xCF, 0x23, 0x00, 0x6E, 0x82, 0x00, 0xAF, 0x02, 0x12, 0x01, 0x91, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x02, 0x00, 0x6E, 0x81, 0x00, 0x4E, 0x00, 0x8E, 0x1C, 0x00, 0x6E, 0x82, 0x01, 0x0F, 0x02, 0x12, 0x00, 0x8E, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x21, 0x00, 0x6E, 0x81, 0x01, 0x90, 0x01, 0x50, 0x25, 0x00, 0x6E, 0x80, 0x02, 0x32, 0x26, 0x00, 0x6E, 0x82, 0x00, 0x8E, 0x02, 0x11, 0x00, 0x8E, 0x24, 0x00, 0x6E, 0x81, 0x01, 0x90, 0x01, 0xB1, 0x14, 0x00, 0x6E, 0x80, 0x38, 0xB0, 0x06, 0x99, 0x31, 0x83, 0x99, 0x11, 0x99, 0x31, 0x99, 0x12, 0x00, 0x4E, 0x01, 0x00, 0x6E, 0x84, 0x00, 0x4E, 0x00, 0x6E, 0x01, 0x0F, 0x02, 0x12, 0x01, 0x0F, 0x21, 0x00, 0x6E, 0x01, 0x00, 0x4E, 0x83, 0x00, 0x4D, 0x01, 0x30, 0x01, 0xF2, 0x01, 0x50, 0x01, 0x00, 0x6D, 0x04, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x1B, 0x00, 0x6E, 0x86, 0x00, 0x4E, 0x00, 0xEF, 0x02, 0x12, 0x01, 0x0F, + 0x00, 0x4E, 0x00, 0x6E, 0x00, 0x4E, 0x04, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x19, 0x00, 0x6E, 0x01, 0x00, 0x4E, 0x84, 0x00, 0xAF, 0x02, 0x12, 0x00, 0xCF, 0x00, 0x4E, 0x00, 0x6E, 0x01, 0x00, 0x4E, 0x02, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x1A, 0x00, 0x6E, 0x85, 0x00, 0x4E, 0x00, 0x6E, 0x00, 0x8E, 0x02, 0x32, 0x00, 0x8E, 0x00, 0x4E, 0x24, 0x00, 0x6E, 0x80, 0x02, 0x32, 0x22, 0x00, 0x6E, 0x82, 0x00, 0x4E, 0x00, 0x6E, 0x00, 0x4E, 0x01, 0x00, 0x6E, 0x81, 0x01, 0xD1, 0x01, 0x0F, 0x1D, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x01, 0x00, 0x6E, 0x87, 0x00, 0x4E, 0x00, 0x6E, 0x00, 0x4E, 0x00, 0x6E, 0x00, 0x8E, 0x01, 0xF1, 0x01, 0x2F, 0x00, 0x4E, 0x0F, 0x00, 0x6E, 0x01, 0x00, 0x4E, 0x82, 0x00, 0x6E, 0x08, 0x6E, 0x99, 0x11, 0x03, 0x99, 0x31, 0x80, 0x99, 0x12, 0x01, 0x99, 0x31, 0x83, 0x99, 0x11, 0x99, 0x31, 0x00, 0x4E, 0x00, 0x6D, 0x03, 0x00, 0x6E, 0x83, 0x00, 0xAE, 0x02, 0x11, 0x01, 0x90, 0x00, 0x4E, 0x13, 0x00, 0x6E, 0x03, 0x00, 0x4D, 0x81, 0x00, 0x6E, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x80, 0x00, 0x4E, 0x01, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x84, 0x00, 0x8E, 0x01, 0xB1, 0x01, 0xD1, 0x00, 0xCE, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x1A, 0x00, 0x6D, 0x82, 0x00, 0x4D, 0x00, 0x6E, 0x00, 0x4D, 0x01, 0x00, 0x6E, 0x85, 0x00, 0x4E, 0x00, 0x6D, 0x01, 0x0F, 0x02, 0x12, 0x00, 0xEF, 0x00, 0x6D, 0x01, 0x00, 0x6E, 0x07, 0x00, 0x6D, 0x07, 0x00, 0x4D, 0x09, 0x00, 0x6E, 0x81, 0x00, 0x4D, 0x00, 0x6D, 0x02, 0x00, 0x6E, 0x85, 0x00, 0x4D, 0x00, 0x6E, 0x00, 0x4D, 0x00, 0x6E, 0x01, + 0xD1, 0x01, 0x50, 0x24, 0x00, 0x6E, 0x82, 0x00, 0x4E, 0x01, 0x30, 0x01, 0x91, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x22, 0x00, 0x6E, 0x82, 0x00, 0x4E, 0x02, 0x32, 0x00, 0x4E, 0x21, 0x00, 0x6E, 0x81, 0x00, 0x4E, 0x00, 0x6E, 0x01, 0x00, 0x4D, 0x82, 0x00, 0x4E, 0x01, 0x0F, 0x01, 0xD1, 0x03, 0x00, 0x6E, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x4E, 0x80, 0x00, 0x4D, 0x1B, 0x00, 0x6E, 0x01, 0x00, 0x6D, 0x82, 0x00, 0xCE, 0x02, 0x12, 0x00, 0xCE, 0x03, 0x00, 0x6E, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x0A, 0x00, 0x6E, 0x82, 0x00, 0x4E, 0x70, 0xF0, 0x99, 0x32, 0x01, 0x99, 0x31, 0x82, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x01, 0x99, 0x31, 0x80, 0x81, 0x10, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x4D, 0x03, 0x00, 0x6D, 0x82, 0x00, 0x8E, 0x01, 0xD1, 0x01, 0x90, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x4E, 0x01, 0x00, 0x6E, 0x82, 0x00, 0x4D, 0x00, 0x6D, 0x00, 0x6E, 0x01, 0x00, 0x4D, 0x05, 0x00, 0x6D, 0x0B, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x4D, 0x83, 0x01, 0x50, 0x01, 0xF1, 0x01, 0x50, 0x00, 0x6D, 0x1E, 0x00, 0x4D, 0x82, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x4E, 0x02, 0x00, 0x4D, 0x83, 0x01, 0x50, 0x01, 0xF1, 0x00, 0xAE, 0x00, 0x6D, 0x02, 0x00, 0x4D, 0x18, 0x00, 0x6D, 0x80, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x82, 0x00, 0x4D, 0x00, 0x6D, 0x00, 0x4D, 0x02, 0x00, 0x6D, 0x81, 0x01, 0x70, 0x01, 0xB1, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x4D, 0x08, 0x00, 0x6D, 0x17, 0x00, 0x6E, 0x84, 0x00, 0x6D, 0x00, 0x4E, 0x00, 0x6E, 0x01, 0xD1, 0x01, 0x0F, 0x01, 0x00, + 0x6D, 0x20, 0x00, 0x6E, 0x84, 0x00, 0x4D, 0x00, 0x6D, 0x00, 0x6E, 0x00, 0x4E, 0x02, 0x12, 0x01, 0x00, 0x4D, 0x21, 0x00, 0x6E, 0x80, 0x00, 0x4D, 0x02, 0x00, 0x6D, 0x84, 0x00, 0x6E, 0x01, 0xF1, 0x00, 0x8E, 0x00, 0x6D, 0x00, 0x6E, 0x01, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x4E, 0x08, 0x00, 0x6E, 0x12, 0x00, 0x6D, 0x84, 0x00, 0x4D, 0x00, 0x6D, 0x00, 0x4D, 0x01, 0x0F, 0x01, 0xF1, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x4D, 0x00, 0x6E, 0x02, 0x00, 0x6D, 0x80, 0x00, 0x4D, 0x07, 0x00, 0x6D, 0x80, 0x00, 0x4E, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x4D, 0x40, 0xCF, 0x07, 0x99, 0x31, 0x82, 0x70, 0xF0, 0x00, 0x4D, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x85, 0x00, 0x6D, 0x01, 0x91, 0x01, 0xB1, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x6D, 0x0F, 0x00, 0x4D +}; + +const tImage MarlinLogo320x240x16 = MARLIN_LOGO_CHOSEN(320, 240); + +#endif // HAS_GRAPHICAL_TFT && SHOW_BOOTSCREEN diff --git a/Marlin/src/lcd/tft/images/bootscreen_480x320x16.cpp b/Marlin/src/lcd/tft/images/bootscreen_480x320x16.cpp index ecec2f6e589d..cf150e949f67 100644 --- a/Marlin/src/lcd/tft/images/bootscreen_480x320x16.cpp +++ b/Marlin/src/lcd/tft/images/bootscreen_480x320x16.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" -#if HAS_GRAPHICAL_TFT +#if ALL(HAS_GRAPHICAL_TFT, SHOW_BOOTSCREEN) -extern const uint16_t marlin_logo_480x320x16[]; -const tImage MarlinLogo480x320x16 = { (void *)marlin_logo_480x320x16, 480, 320, HIGHCOLOR }; +#include "../tft_image.h" const uint16_t marlin_logo_480x320x16[153600] = { 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x10AE, 0x00F8, 0x00F9, 0x00D6, 0x18AD, 0x188C, 0x188C, 0x18AC, 0x188C, 0x18AC, 0x18AC, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x188C, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188D, 0x188D, 0x188D, 0x188D, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x011A, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x011A, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x0119, 0x0119, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x18AD, 0x188D, 0x18AD, 0x18AC, 0x18AC, 0x188D, 0x18AD, 0x18AD, 0x18AC, 0x18AD, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x188D, 0x18AC, 0x18AC, 0x00F9, 0x00F9, 0x18AC, 0x18AD, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x18AC, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188C, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188C, 0x188C, 0x18AB, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, 0x188B, @@ -351,4 +349,447 @@ const uint16_t marlin_logo_480x320x16[153600] = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 }; -#endif // HAS_GRAPHICAL_TFT +// Saves 202348 bytes +const uint8_t marlin_logo_480x320x16_rle16[104852] = { + 0x28, 0x18, 0x8B, 0x12, 0x18, 0x8C, 0x0F, 0x18, 0xAC, 0x84, 0x10, 0xAE, 0x00, 0xF8, 0x00, 0xF9, 0x00, 0xD6, 0x18, 0xAD, 0x01, 0x18, 0x8C, 0x81, 0x18, 0xAC, 0x18, 0x8C, 0x01, 0x18, 0xAC, 0x80, 0x18, 0x8C, 0x05, 0x18, 0xAC, 0x05, 0x18, 0x8C, 0x07, 0x18, 0xAC, 0x02, 0x18, 0x8C, 0x08, 0x18, 0xAC, 0x03, 0x18, 0x8D, 0x36, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x4E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x11, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x81, 0x18, 0x8D, 0x18, 0xAD, 0x01, 0x18, 0xAC, 0x80, 0x18, 0x8D, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAC, 0x18, 0xAD, 0x18, 0x8C, 0x02, 0x18, 0xAC, 0x80, 0x18, 0x8D, 0x01, 0x18, 0xAC, 0x01, 0x00, 0xF9, 0x81, 0x18, 0xAC, 0x18, 0xAD, 0x04, 0x18, 0xAC, 0x05, 0x18, 0x8C, 0x27, 0x18, 0xAC, 0x12, 0x18, 0x8C, 0x04, 0x18, 0x8B, 0x01, 0x18, 0x8C, 0x80, 0x18, 0xAB, 0x30, 0x18, 0x8B, 0x13, 0x18, 0x8C, 0x18, 0x18, 0xAC, 0x84, 0x10, 0xAE, 0x00, 0xF7, 0x00, 0xF9, 0x00, 0xF6, 0x18, 0x8D, 0x01, 0x18, 0xAC, 0x80, 0x18, 0x8C, 0x03, 0x18, 0xAC, 0x01, 0x18, 0x8C, 0x80, 0x18, 0xAC, 0x06, 0x18, 0x8C, 0x12, 0x18, 0xAC, 0x3C, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x4E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x11, 0x18, 0xAD, + 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x22, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x01, 0x18, 0xAD, 0x80, 0x18, 0x8D, 0x01, 0x18, 0xAC, 0x01, 0x18, 0x8D, 0x80, 0x18, 0xAC, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAC, 0x18, 0xAD, 0x01, 0x00, 0xF9, 0x81, 0x18, 0xAC, 0x18, 0xAD, 0x06, 0x18, 0xAC, 0x03, 0x18, 0x8C, 0x28, 0x18, 0xAC, 0x16, 0x18, 0x8C, 0x31, 0x18, 0x8B, 0x15, 0x18, 0x8C, 0x18, 0x18, 0xAC, 0x81, 0x18, 0x8C, 0x10, 0xAF, 0x01, 0x00, 0xF8, 0x81, 0x00, 0xF7, 0x18, 0xAD, 0x02, 0x18, 0xAC, 0x01, 0x18, 0x8C, 0x83, 0x18, 0x8D, 0x18, 0xAC, 0x18, 0xAD, 0x18, 0xAC, 0x04, 0x18, 0x8C, 0x0E, 0x18, 0xAC, 0x42, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x4E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x11, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x25, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x07, 0x18, 0xAD, 0x81, 0x18, 0xAC, 0x18, 0xAD, 0x01, 0x00, 0xF9, 0x81, 0x18, 0xAC, 0x18, 0xAD, 0x01, 0x18, 0xAC, 0x80, 0x18, 0xAD, 0x05, 0x18, 0xAC, 0x03, 0x18, 0x8C, 0x2D, 0x18, 0xAC, 0x13, 0x18, 0x8C, 0x28, 0x18, 0x8B, 0x12, 0x18, 0x8C, 0x1F, 0x18, 0xAC, 0x80, 0x18, 0x8C, 0x01, 0x18, 0xAC, 0x84, 0x10, 0xAF, 0x00, 0xF7, 0x00, 0xF8, 0x00, 0xF6, 0x18, 0xAD, 0x02, 0x18, 0x8C, 0x04, 0x18, 0xAC, 0x80, 0x18, 0x8C, 0x07, 0x18, 0xAC, 0x4D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x4E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, + 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x11, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x30, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x00, 0xF9, 0x09, 0x18, 0xAD, 0x07, 0x18, 0xAC, 0x02, 0x18, 0x8C, 0x04, 0x18, 0xAC, 0x05, 0x18, 0x8C, 0x20, 0x18, 0xAC, 0x19, 0x18, 0x8C, 0x19, 0x18, 0x8B, 0x13, 0x18, 0x8C, 0x1E, 0x18, 0xAC, 0x04, 0x18, 0x8C, 0x81, 0x18, 0xAC, 0x18, 0x8C, 0x01, 0x18, 0xAC, 0x83, 0x10, 0xAF, 0x00, 0xF8, 0x00, 0xF9, 0x00, 0xD6, 0x01, 0x18, 0xAD, 0x85, 0x18, 0x8C, 0x18, 0xAC, 0x18, 0xAD, 0x18, 0xAC, 0x18, 0xAD, 0x18, 0x8D, 0x56, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x4E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x11, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x25, 0x18, 0xAD, 0x80, 0x20, 0x8D, 0x01, 0x18, 0xAD, 0x80, 0x20, 0x8D, 0x06, 0x18, 0xAD, 0x01, 0x00, 0xF9, 0x11, 0x18, 0xAD, 0x08, 0x18, 0xAC, 0x0C, 0x18, 0x8C, 0x1C, 0x18, 0xAC, 0x15, 0x18, 0x8C, 0x14, 0x18, 0x8B, 0x13, 0x18, 0x8C, 0x1C, 0x18, 0xAC, 0x03, 0x18, 0x8C, 0x07, 0x18, 0xAC, 0x8F, 0x18, 0x8C, 0x18, 0xAC, 0x18, 0x8D, 0x18, 0xAC, 0x18, 0xAD, 0x18, 0xAF, 0x00, 0xF8, 0x00, 0xF9, 0x00, 0xF6, 0x18, 0xAE, 0x18, 0x8D, 0x18, 0xAC, 0x18, 0x8D, 0x18, 0xAC, 0x18, 0xAD, 0x18, 0xAC, 0x56, 0x18, + 0xAD, 0x01, 0x01, 0x19, 0x4E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x11, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x25, 0x18, 0xAD, 0x80, 0x10, 0xD1, 0x01, 0x10, 0xD3, 0x80, 0x10, 0xD1, 0x06, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x00, 0xF9, 0x19, 0x18, 0xAD, 0x12, 0x18, 0xAC, 0x01, 0x18, 0x8C, 0x1D, 0x18, 0xAC, 0x13, 0x18, 0x8C, 0x03, 0x18, 0x8B, 0x04, 0x18, 0x8C, 0x02, 0x18, 0x8B, 0x12, 0x18, 0x8C, 0x19, 0x18, 0xAC, 0x0A, 0x18, 0x8C, 0x07, 0x18, 0xAC, 0x01, 0x18, 0xAD, 0x88, 0x18, 0xAC, 0x18, 0x8C, 0x18, 0xAC, 0x18, 0x8D, 0x10, 0xAF, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xD7, 0x18, 0xAE, 0x01, 0x18, 0xAC, 0x59, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x4E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x11, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x23, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x00, 0xF9, 0x1E, 0x18, 0xAD, 0x0D, 0x18, 0xAC, 0x05, 0x18, 0x8C, 0x1C, 0x18, 0xAC, 0x10, 0x18, 0x8C, 0x80, 0x18, 0x8B, 0x02, 0x18, 0x8C, 0x01, 0x18, 0x8B, 0x11, 0x18, 0x8C, 0x23, 0x18, 0xAC, 0x07, 0x18, 0x8C, 0x07, 0x18, 0xAC, 0x03, + 0x18, 0xAD, 0x80, 0x18, 0x8D, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xCF, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF6, 0x18, 0xAE, 0x5A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x4E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x11, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x23, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x13, 0x18, 0xAC, 0x80, 0x18, 0x8C, 0x1E, 0x18, 0xAC, 0x1F, 0x18, 0x8C, 0x1B, 0x18, 0xAC, 0x80, 0x18, 0x8C, 0x02, 0x18, 0xAC, 0x03, 0x18, 0x8C, 0x09, 0x18, 0xAC, 0x11, 0x18, 0xAD, 0x86, 0x18, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0x8D, 0x57, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x2A, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x11, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x11, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1F, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, + 0x01, 0x01, 0x19, 0x29, 0x18, 0xAD, 0x07, 0x18, 0xAC, 0x02, 0x18, 0x8C, 0x01, 0x18, 0xAC, 0x02, 0x18, 0x8C, 0x03, 0x18, 0xAC, 0x80, 0x18, 0x8C, 0x1A, 0x18, 0xAC, 0x04, 0x18, 0x8C, 0x80, 0x18, 0xAC, 0x11, 0x18, 0x8C, 0x1C, 0x18, 0xAC, 0x01, 0x18, 0x8C, 0x03, 0x18, 0xAC, 0x02, 0x18, 0x8C, 0x08, 0x18, 0xAC, 0x14, 0x18, 0xAD, 0x84, 0x18, 0xCF, 0x00, 0xF8, 0x00, 0xF9, 0x01, 0x17, 0x18, 0xAE, 0x58, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x29, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x14, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x01, 0x19, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xAF, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD1, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x04, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x29, 0x18, 0xAD, 0x0B, 0x18, 0xAC, 0x03, 0x18, 0x8C, 0x80, 0x18, 0xAC, 0x02, 0x18, 0x8C, 0x1A, 0x18, 0xAC, 0x01, 0x18, 0x8C, 0x82, 0x18, 0xAC, 0x08, 0xB2, 0x08, 0xD2, 0x0B, 0x18, 0x8C, 0x1D, 0x18, 0xAC, 0x01, + 0x18, 0x8C, 0x05, 0x18, 0xAC, 0x01, 0x18, 0x8C, 0x05, 0x18, 0xAC, 0x1B, 0x18, 0xAD, 0x84, 0x18, 0xAF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x4F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x2A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x10, 0xD2, 0x08, 0xF6, 0x03, 0x01, 0x19, 0x82, 0x01, 0x18, 0x08, 0xF6, 0x10, 0xD2, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x07, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x23, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x08, 0xD3, 0x01, 0x18, 0xAD, 0x82, 0x08, 0xF3, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x2B, 0x18, 0xAD, 0x09, 0x18, 0xAC, 0x01, 0x18, 0x8C, 0x02, 0x18, 0xAC, 0x04, 0x18, 0x8C, 0x19, 0x18, 0xAC, 0x01, 0x00, 0xF8, 0x07, 0x18, 0x8C, 0x1E, 0x18, 0xAC, 0x07, 0x18, 0x8C, 0x04, 0x18, 0xAC, 0x1F, 0x18, 0xAD, 0x80, 0x18, 0x8D, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xB0, 0x01, 0x18, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x56, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x2A, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xB0, 0x01, 0x18, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, + 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x01, 0x17, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x10, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x23, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x00, 0xF7, 0x85, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x39, 0x18, 0xAD, 0x07, 0x18, 0xAC, 0x02, 0x18, 0x8C, 0x02, 0x18, 0xAC, 0x01, 0x18, 0x8C, 0x12, 0x18, 0xAC, 0x01, 0x18, 0x8C, 0x01, 0x00, 0xF9, 0x03, 0x18, 0x8C, 0x1A, 0x18, 0xAC, 0x08, 0x18, 0x8C, 0x06, 0x18, 0xAC, 0x24, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x84, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAE, 0x80, 0x20, 0xAD, 0x4E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x29, 0x18, 0xAD, 0x8D, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF6, 0x10, 0xF2, 0x10, 0xD1, 0x10, 0xD0, 0x10, 0xD1, 0x10, 0xD3, 0x08, 0xF6, 0x01, 0x00, 0xF9, 0x82, 0x01, 0x19, 0x10, 0xD2, 0x20, 0xAE, 0x11, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, + 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD2, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x23, 0x18, 0xAD, 0x87, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x3B, 0x18, 0xAD, 0x08, 0x18, 0xAC, 0x06, 0x18, 0x8C, 0x0E, 0x18, 0xAC, 0x01, 0x00, 0xF8, 0x80, 0x18, 0x8C, 0x16, 0x18, 0xAC, 0x03, 0x18, 0x8C, 0x07, 0x18, 0xAC, 0x02, 0x18, 0x8C, 0x02, 0x18, 0xAC, 0x2A, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xD0, 0x01, 0x18, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x4E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x2B, 0x18, 0xAD, 0x84, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF8, 0x18, 0xD0, 0x05, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD0, 0x02, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x16, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, + 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xCD, 0x10, 0xD1, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x18, 0xAE, 0x42, 0x18, 0xAD, 0x05, 0x18, 0xAC, 0x01, 0x18, 0x8C, 0x11, 0x18, 0xAC, 0x01, 0x00, 0xF9, 0x13, 0x18, 0xAC, 0x07, 0x18, 0x8C, 0x09, 0x18, 0xAC, 0x2F, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x53, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x27, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCF, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x18, 0xAF, 0x10, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x86, 0x10, 0xD2, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x23, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x01, 0x1A, 0x01, 0x19, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x18, 0xCD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xCD, 0x47, 0x18, 0xAD, 0x0B, 0x18, 0xAC, 0x03, + 0x18, 0x8C, 0x03, 0x18, 0xAC, 0x83, 0x18, 0x8C, 0x18, 0xAC, 0x00, 0xF9, 0x00, 0xF8, 0x13, 0x18, 0xAC, 0x07, 0x18, 0x8C, 0x07, 0x18, 0xAC, 0x30, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x85, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x4E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x29, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x08, 0xD5, 0x01, 0x1A, 0x00, 0xF8, 0x18, 0xCF, 0x08, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x10, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x1A, 0x83, 0x10, 0xD2, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x86, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x47, 0x18, 0xAD, 0x12, 0x18, 0xAC, 0x82, 0x18, 0x8D, 0x00, 0xF9, 0x00, 0xF8, 0x0B, 0x18, 0xAC, 0x04, 0x18, 0x8C, 0x0A, 0x18, 0xAC, 0x1D, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0x8D, 0x03, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0x18, 0xAD, 0x84, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x1A, 0x00, + 0xF7, 0x18, 0xAE, 0x20, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x2D, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAE, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x82, 0x01, 0x18, 0x10, 0xD1, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x02, 0x01, 0x19, 0x88, 0x08, 0xF5, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF3, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x10, 0xD1, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x1A, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x22, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x49, 0x18, 0xAD, 0x05, 0x18, 0xAC, 0x03, 0x18, 0x8C, 0x81, 0x18, 0xAC, 0x18, 0x8C, 0x01, 0x00, 0xF9, 0x11, 0x18, 0xAC, 0x01, 0x18, 0x8C, 0x05, 0x18, 0xAC, 0x1E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x82, + 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x84, 0x18, 0xB0, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x2E, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x82, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x89, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF4, 0x18, 0xAD, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x80, 0x10, 0xD1, 0x01, 0x01, 0x19, 0x80, 0x18, 0xCE, 0x02, 0x18, 0xAD, 0x80, 0x00, 0xF7, 0x02, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x80, 0x00, 0xF7, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD1, 0x0F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD1, 0x01, 0x01, 0x19, 0x85, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x85, 0x18, 0xAE, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x1F, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x80, 0x10, 0xD1, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x4C, 0x18, 0xAD, 0x05, + 0x18, 0xAC, 0x01, 0x18, 0x8C, 0x81, 0x18, 0xAC, 0x18, 0x8C, 0x01, 0x00, 0xF9, 0x07, 0x18, 0xAC, 0x06, 0x18, 0x8C, 0x06, 0x18, 0xAC, 0x1D, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x10, 0xCF, 0x10, 0xD0, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x1E, 0x18, 0xAD, 0x80, 0x10, 0xCF, 0x01, 0x01, 0x19, 0x80, 0x01, 0x17, 0x01, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x81, 0x10, 0xD2, 0x01, 0x18, 0x01, 0x01, 0x19, 0x81, 0x01, 0x18, 0x10, 0xD1, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x2B, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x8E, 0x18, 0xAE, 0x08, 0xF3, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF3, 0x10, 0xD1, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xAF, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x8B, 0x08, 0xF3, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF3, 0x10, 0xD0, 0x10, 0xF4, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x82, 0x01, 0x17, 0x01, 0x19, 0x08, 0xF3, 0x0F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, + 0x18, 0xAD, 0x81, 0x00, 0xF9, 0x01, 0x19, 0x26, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x18, 0xAE, 0x36, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x21, 0x18, 0xAD, 0x05, 0x18, 0xAC, 0x01, 0x00, 0xF9, 0x03, 0x18, 0xAC, 0x04, 0x18, 0x8C, 0x07, 0x18, 0xAC, 0x22, 0x18, 0xAD, 0x8C, 0x18, 0xAE, 0x18, 0xAF, 0x08, 0xF5, 0x01, 0x39, 0x00, 0xFA, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x18, 0xAF, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x1D, 0x18, 0xAD, 0x84, 0x10, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x17, 0x18, 0xCE, 0x13, 0x18, 0xAD, 0x80, 0x10, 0xD1, 0x01, 0x01, 0x19, 0x80, 0x00, 0xFA, 0x02, 0x01, 0x19, 0x80, 0x10, 0xD1, 0x2E, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x85, 0x20, 0xAE, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x0D, 0x18, 0xAD, 0x83, 0x08, 0xF6, 0x01, 0x19, 0x08, 0xF4, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAE, 0x08, 0xD4, 0x01, 0x19, 0x08, 0xF6, 0x02, 0x18, 0xAD, 0x88, 0x08, 0xD4, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x00, 0xF7, 0x01, 0x1A, 0x10, 0xD3, 0x02, 0x18, 0xAD, 0x82, 0x08, 0xF6, 0x01, 0x1A, 0x08, 0xF3, 0x0F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x1C, 0x18, 0xAD, 0x84, 0x10, 0xD2, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, + 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x83, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1F, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x2E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x21, 0x18, 0xAD, 0x01, 0x18, 0xAC, 0x01, 0x00, 0xF9, 0x80, 0x18, 0x8C, 0x02, 0x18, 0xAC, 0x80, 0x18, 0x8C, 0x06, 0x18, 0xAC, 0x27, 0x18, 0xAD, 0x81, 0x18, 0xCF, 0x00, 0xF9, 0x04, 0x01, 0x19, 0x86, 0x01, 0x1A, 0x01, 0x18, 0x18, 0xCF, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xB0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x18, 0x01, 0x19, 0x08, 0xF7, 0x01, 0x10, 0xD1, 0x85, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x28, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x0A, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xCD, 0x00, 0xF6, 0x01, 0x1A, 0x08, 0xF3, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x00, 0xF9, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xCD, 0x0A, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAE, 0x08, 0xD4, 0x01, 0x19, 0x08, 0xF6, 0x02, 0x18, 0xAD, 0x88, 0x08, 0xD4, + 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x00, 0xF7, 0x01, 0x1A, 0x10, 0xD3, 0x02, 0x18, 0xAD, 0x82, 0x08, 0xF6, 0x01, 0x1A, 0x08, 0xF3, 0x0F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x1C, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x1A, 0x80, 0x10, 0xD2, 0x07, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x00, 0xF9, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x29, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x22, 0x18, 0xAD, 0x01, 0x00, 0xF9, 0x07, 0x18, 0xAC, 0x2B, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x15, 0x01, 0x19, 0x86, 0x00, 0xF9, 0x10, 0xD1, 0x18, 0xCD, 0x18, 0xAD, 0x10, 0xD1, 0x00, 0xF9, 0x01, 0x19, 0x2B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x18, + 0xCD, 0x08, 0xF4, 0x01, 0x01, 0x1A, 0x82, 0x10, 0xF1, 0x18, 0xAE, 0x20, 0xAD, 0x09, 0x18, 0xAD, 0x88, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD0, 0x18, 0xAE, 0x08, 0xD5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD0, 0x0F, 0x18, 0xAD, 0x8B, 0x08, 0xF3, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF3, 0x10, 0xD0, 0x10, 0xF4, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x82, 0x01, 0x17, 0x01, 0x19, 0x08, 0xF3, 0x0F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x18, 0xCD, 0x10, 0xD2, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x85, 0x20, 0xAE, 0x18, 0xAD, 0x10, 0xF2, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x24, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x07, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xF5, 0x29, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x25, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAC, 0x2F, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x00, 0xF9, 0x07, 0x01, 0x19, 0x1F, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x0F, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, + 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xB1, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD1, 0x01, 0x01, 0x19, 0x31, 0x18, 0xAD, 0x88, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x0A, 0x18, 0xAD, 0x83, 0x10, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x80, 0x00, 0xF6, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x80, 0x10, 0xD1, 0x01, 0x01, 0x19, 0x80, 0x18, 0xCE, 0x02, 0x18, 0xAD, 0x80, 0x00, 0xF7, 0x02, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x80, 0x00, 0xF7, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD1, 0x0F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x23, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x04, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x80, 0x01, 0x19, 0x28, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAC, 0x31, 0x18, 0xAD, 0x05, 0x01, 0x19, 0x80, 0x01, + 0x1A, 0x02, 0x01, 0x19, 0x83, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x1B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x16, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x18, 0x01, 0x19, 0x00, 0xF7, 0x01, 0x10, 0xD1, 0x82, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x2D, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xD5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x0A, 0x18, 0xAD, 0x81, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x08, 0xF5, 0x18, 0xCE, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x02, 0x01, 0x19, 0x88, 0x08, 0xF5, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF3, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x2B, + 0x01, 0x19, 0x81, 0x00, 0xF8, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x22, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0x8D, 0x31, 0x18, 0xAD, 0x09, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x10, 0xF1, 0x00, 0xF9, 0x03, 0x01, 0x19, 0x82, 0x00, 0xF9, 0x10, 0xF1, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x08, 0x18, 0xAD, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x08, 0xD5, 0x01, 0x1A, 0x00, 0xF8, 0x18, 0xCF, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x0E, 0x18, 0xAD, 0x87, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xAD, 0x18, 0xCD, 0x06, 0x18, 0xAD, 0x80, 0x08, 0xD5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x83, 0x18, 0xAE, 0x18, + 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x2A, 0x01, 0x19, 0x85, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x83, 0x00, 0xF9, 0x01, 0x19, 0x18, 0xAD, 0x18, 0xAC, 0x31, 0x18, 0xAD, 0x09, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x18, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD1, 0x00, 0xF8, 0x01, 0x01, 0x19, 0x84, 0x00, 0xF8, 0x10, 0xD1, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1F, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCF, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x82, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAF, 0x09, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x01, 0x1A, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x82, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x01, 0x01, + 0x19, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x85, 0x20, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x00, 0xF9, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x28, 0x18, 0xAD, 0x86, 0x18, 0xCE, 0x01, 0x18, 0x01, 0x19, 0x01, 0x17, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x83, 0x08, 0xD3, 0x10, 0xD3, 0x18, 0xAD, 0x18, 0xAC, 0x31, 0x18, 0xAD, 0x07, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x11, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x85, 0x01, 0x1A, 0x08, 0xF5, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAE, 0x20, 0xAD, 0x15, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x33, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, + 0xD2, 0x09, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x84, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF8, 0x18, 0xD0, 0x06, 0x18, 0xAD, 0x81, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD1, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x1F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x01, 0x1A, 0x01, 0x19, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x29, 0x18, 0xAD, 0x84, 0x10, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x51, 0x18, 0xAD, 0x07, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x20, 0xAD, 0x14, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xCD, 0x80, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, + 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x20, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x84, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xD0, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x8E, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF6, 0x10, 0xF2, 0x10, 0xD1, 0x10, 0xD0, 0x10, 0xD1, 0x10, 0xD3, 0x08, 0xF6, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD2, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x0B, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x84, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x80, 0x10, 0xD2, 0x2B, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x10, 0xCF, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, + 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x35, 0x18, 0xAD, 0x09, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF6, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x14, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x20, 0xAE, 0x22, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x3A, 0x00, 0xF8, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x14, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xB0, 0x01, 0x18, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x01, 0x18, 0x10, 0xD0, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xCD, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x85, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xCD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAD, 0x01, + 0x18, 0xAE, 0x82, 0x18, 0xAD, 0x01, 0x19, 0x00, 0xF9, 0x08, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xAE, 0x29, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x50, 0x18, 0xAD, 0x09, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xCF, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x17, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x12, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x10, 0xD2, 0x08, 0xF6, 0x03, 0x01, 0x19, 0x82, 0x01, 0x18, 0x08, 0xF5, 0x10, 0xD1, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0D, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, + 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x84, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x1C, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x85, 0x00, 0xF9, 0x01, 0x1A, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xCD, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x2D, 0x18, 0xAD, 0x83, 0x18, 0xAF, 0x01, 0x18, 0x01, 0x19, 0x01, 0x17, 0x02, 0x18, 0xAE, 0x80, 0x20, 0xAD, 0x53, 0x18, 0xAD, 0x09, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x10, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, + 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x86, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x1A, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x88, 0x08, 0xF5, 0x01, 0x1A, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x86, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x08, 0xD5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x1B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xF3, 0x01, 0x01, 0x19, 0x84, 0x10, 0xD2, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x20, 0xAD, 0x2A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x1A, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x19, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x30, 0x18, 0xAD, 0x07, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x15, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x20, 0xAE, + 0x17, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x10, 0xD0, 0x10, 0xD3, 0x08, 0xF4, 0x01, 0x08, 0xF3, 0x80, 0x10, 0xF3, 0x08, 0x08, 0xF3, 0x01, 0x10, 0xD3, 0x01, 0x08, 0xF3, 0x82, 0x08, 0xD4, 0x10, 0xD3, 0x10, 0xD0, 0x17, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x14, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x82, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x82, 0x08, 0xF5, 0x18, 0xAD, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x2A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x86, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCF, 0x01, 0x18, 0x01, 0x19, + 0x00, 0xF7, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x27, 0x18, 0xAD, 0x07, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x15, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x22, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x10, 0x01, 0x19, 0x80, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0C, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x84, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0B, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x06, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x1A, 0x80, 0x10, 0xD1, 0x14, 0x18, 0xAD, 0x88, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xCD, 0x10, 0xF3, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x06, 0x18, 0xAD, 0x80, + 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x1A, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x80, 0x10, 0xD2, 0x0C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x27, 0x18, 0xAD, 0x09, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x13, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x10, 0xD1, 0x01, 0x01, 0x19, 0x87, 0x08, 0xF5, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAF, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x17, 0x18, 0xAE, 0x21, 0x18, 0xAD, 0x83, 0x08, 0xF3, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x0F, 0x01, 0x19, 0x82, 0x00, 0xF9, 0x18, 0xD0, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x0D, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x20, 0xAD, + 0x05, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0B, 0x18, 0xAD, 0x85, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x89, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x13, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x20, 0xAE, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x19, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x08, 0xF7, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x08, 0xF4, 0x01, 0x19, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x29, 0x18, 0xAD, 0x09, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x86, 0x08, 0xF7, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAF, 0x01, 0x19, 0x01, + 0x1A, 0x00, 0xF9, 0x1F, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x12, 0x01, 0x19, 0x83, 0x00, 0xF9, 0x10, 0xCF, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x84, 0x08, 0xF5, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0C, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xCF, 0x16, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xD5, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xCE, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD1, 0x20, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x0F, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x13, 0x18, 0xAD, 0x80, 0x08, + 0xF5, 0x02, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x2A, 0x18, 0xAD, 0x09, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x87, 0x18, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xB0, 0x01, 0x18, 0x20, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x11, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x83, 0x08, 0xF5, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x83, 0x08, 0xF5, 0x20, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0B, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x18, + 0xCD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD1, 0x19, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x82, 0x08, 0xF3, 0x00, 0xF9, 0x01, 0x1A, 0x10, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x83, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x2F, 0x18, 0xAD, 0x07, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x17, 0x01, 0x18, 0xAE, 0x80, 0x20, 0xAD, 0x21, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x08, 0xF3, 0x01, 0x19, 0x01, 0x1A, 0x13, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x00, 0xF7, 0x18, 0xAF, 0x1C, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x20, 0xAD, 0x1E, 0x18, 0xAD, 0x88, 0x18, 0xAE, 0x18, 0xCD, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xD5, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, + 0x18, 0xAD, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xCD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x0D, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x1A, 0x85, 0x10, 0xD2, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x28, 0x18, 0xAD, 0x07, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x10, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x00, 0xF9, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x86, 0x10, 0xD0, 0x01, 0x19, 0x00, 0xF9, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x21, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x11, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, + 0x08, 0xF6, 0x1C, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x10, 0xD1, 0x01, 0x08, 0xF3, 0x82, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xCD, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x84, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x01, 0x01, 0x19, 0x17, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x80, 0x08, 0xD3, 0x01, 0x18, 0xAD, 0x82, 0x08, 0xD3, 0x01, 0x1A, 0x01, 0x19, 0x11, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF7, 0x02, 0x18, 0xAE, 0x80, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x10, + 0xD3, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x2D, 0x18, 0xAD, 0x09, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x1B, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xB0, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF7, 0x18, 0xAE, 0x22, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x10, 0x01, 0x19, 0x86, 0x01, 0x1A, 0x01, 0x39, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF6, 0x18, 0xAD, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAE, 0x83, 0x18, 0xAD, 0x20, 0xCE, 0x00, 0xF7, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x19, 0x18, 0xAD, 0x86, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x1A, 0x08, 0xF5, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x20, 0xAE, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x88, 0x08, 0xF5, 0x01, 0x1A, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x08, 0xD5, 0x01, 0x01, 0x19, 0x85, 0x10, 0xD2, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, + 0x08, 0xD5, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD2, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x83, 0x01, 0x39, 0x01, 0x19, 0x08, 0xF5, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0E, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x83, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x08, 0xD5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x27, 0x18, 0xAD, 0x09, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x21, 0x18, 0xAD, 0x81, 0x10, 0xD3, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x11, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x16, 0x1C, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x1A, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x82, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, + 0x10, 0xD2, 0x01, 0x01, 0x19, 0x81, 0x08, 0xD5, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1E, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x08, 0xF7, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x85, 0x18, 0xCD, 0x18, 0xAE, 0x10, 0xD1, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x1F, 0x18, 0xAD, 0x05, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF6, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xD0, 0x00, + 0xF9, 0x22, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x16, 0x01, 0x19, 0x80, 0x08, 0xF6, 0x1C, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x80, 0x01, 0x1A, 0x06, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x83, 0x18, 0xCF, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x0A, 0x18, 0xAD, 0x84, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xCF, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x18, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xFA, 0x18, 0xD1, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x1F, 0x18, 0xAD, 0x87, 0x10, 0xD2, 0x10, 0xF3, 0x08, 0xD3, 0x10, 0xD2, 0x01, 0x17, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x0F, 0x18, 0xAD, 0x84, 0x18, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x18, 0xCE, 0x07, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x02, 0x18, + 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x1F, 0x18, 0xAD, 0x84, 0x08, 0xF6, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x01, 0x16, 0x19, 0x18, 0xAD, 0x8B, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAF, 0x00, 0xF8, 0x01, 0x1A, 0x24, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x14, 0x01, 0x19, 0x80, 0x08, 0xF6, 0x1C, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x01, 0x1A, 0x05, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x1A, 0x18, 0xAD, 0x82, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xD4, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x84, 0x10, 0xD1, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x20, 0xAD, 0x0D, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x14, 0x18, 0xAD, 0x82, 0x08, 0xD4, 0x01, 0x19, 0x00, 0xF9, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1E, 0x18, 0xAD, 0x89, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xD5, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0x8D, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x23, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, + 0xCD, 0x0B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x10, 0xD0, 0x00, 0xF8, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x83, 0x18, 0xB0, 0x01, 0x18, 0x01, 0x19, 0x00, 0xF7, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x21, 0x18, 0xAD, 0x81, 0x18, 0xCF, 0x00, 0xF8, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x00, 0xF9, 0x18, 0xAF, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x19, 0x18, 0xAD, 0x84, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x24, 0x18, 0xAD, 0x81, 0x08, 0xF3, 0x01, 0x1A, 0x17, 0x01, 0x19, 0x80, 0x08, 0xF6, 0x1C, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x20, 0xAE, 0x19, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x84, 0x08, 0xF5, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x20, 0xAE, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x18, 0xCD, 0x10, 0xD2, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAE, + 0x10, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x19, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x01, 0x1A, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x20, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x01, 0x17, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x11, 0x18, 0xAD, 0x83, 0x18, 0xB0, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF6, 0x0B, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xCD, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x00, 0xF7, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x23, 0x18, 0xAD, 0x81, 0x18, 0xAF, 0x08, 0xF6, 0x01, 0x01, 0x19, 0x85, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x16, 0x18, 0xCF, 0x18, 0xAD, 0x18, 0xCD, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x84, 0x10, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x83, 0x08, 0xF3, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x15, 0x01, 0x19, 0x80, 0x08, 0xF6, 0x1C, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xD5, 0x02, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x19, 0x18, + 0xAD, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xAD, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x87, 0x20, 0xAE, 0x18, 0xCF, 0x00, 0xF9, 0x01, 0x1A, 0x08, 0xF5, 0x20, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x1C, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x1A, 0x80, 0x10, 0xD2, 0x14, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x1A, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x86, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF8, 0x01, 0x19, 0x01, 0x17, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAD, 0x10, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xD0, 0x01, 0x18, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x0C, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x27, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x08, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x83, 0x18, 0xB0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x21, 0x18, 0xAD, 0x83, 0x08, 0xF3, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, + 0x15, 0x01, 0x19, 0x80, 0x08, 0xF6, 0x1C, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x86, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x19, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x03, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x00, 0xF8, 0x01, 0x19, 0x08, 0xF4, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0C, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x1C, 0x18, 0xAD, 0x84, 0x10, 0xD2, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x20, 0xAD, 0x13, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x18, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1E, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xB0, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x08, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x82, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x83, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF9, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x19, 0x01, + 0x1A, 0x10, 0xD2, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x22, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x84, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x21, 0x18, 0xAD, 0x81, 0x08, 0xF3, 0x01, 0x1A, 0x17, 0x01, 0x19, 0x80, 0x08, 0xF6, 0x1C, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x07, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x1B, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xCD, 0x05, 0x18, 0xAD, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xCD, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x01, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAE, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x12, 0x18, 0xAD, + 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x0C, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xCF, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x34, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x1B, 0x18, 0xAD, 0x81, 0x10, 0xD0, 0x00, 0xF9, 0x26, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x14, 0x01, 0x19, 0x80, 0x08, 0xF6, 0x1C, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x20, 0xAE, 0x18, 0xAE, 0x0D, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD1, 0x01, 0x01, 0x19, 0x85, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x86, 0x20, 0xAD, + 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAE, 0x0D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x84, 0x18, 0xD0, 0x18, 0xAD, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAE, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x23, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xB0, 0x01, 0x19, 0x01, 0x1A, 0x20, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x16, 0x01, 0x19, 0x80, 0x08, 0xF6, 0x1C, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x83, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x10, + 0xD1, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x25, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x13, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAE, 0x02, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x68, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x08, 0xF3, 0x01, 0x19, 0x01, 0x1A, 0x12, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x00, 0xF6, 0x12, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x00, 0xFA, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, + 0x19, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD2, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xD5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x81, 0x08, 0xF7, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x07, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x69, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x01, 0x08, 0xF3, 0x82, 0x10, 0xF3, 0x08, 0xF3, 0x10, 0xD3, 0x13, 0x08, 0xF3, 0x82, 0x10, 0xF2, 0x18, 0xAD, 0x18, 0xCD, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x00, + 0xF9, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x07, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x09, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x80, 0x20, 0xAE, 0x06, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x02, 0x20, 0xAD, 0x8B, 0x18, 0xAD, 0x31, 0x0E, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xF2, 0x01, 0x01, 0x19, 0x86, 0x10, 0xD2, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x10, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x00, 0xF7, 0x02, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x1A, 0x01, 0x19, 0x81, 0x00, 0xFA, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xD0, 0x18, 0xAE, 0x01, 0x17, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x6B, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, + 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF8, 0x03, 0x01, 0x19, 0x84, 0x08, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x83, 0x08, 0xD5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x28, 0xEE, 0x82, 0x52, 0xCB, 0x54, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x07, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x83, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAE, 0x15, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAE, 0x80, 0x00, 0xF7, 0x20, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x88, 0x18, 0xB0, 0x01, 0x19, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, + 0x10, 0xD2, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x6B, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x15, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xCD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x39, 0x4F, 0xB3, 0x13, 0xD3, 0x95, 0x72, 0x11, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0A, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xCD, 0x81, 0x20, 0xAE, 0x18, 0xCD, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x84, + 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x06, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x73, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x2F, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x84, 0x18, 0xAD, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAD, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xCD, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF4, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x49, 0x6F, 0xCB, 0x55, 0xD3, 0x95, 0xBB, 0x54, 0x28, 0xCE, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x1A, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, + 0x18, 0xAD, 0x01, 0x01, 0x19, 0x07, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x1B, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x84, 0x10, 0xCF, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0x8D, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x02, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x7F, 0x18, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0x8D, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x84, 0x00, 0xFA, 0x01, 0x19, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x80, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x61, 0xD0, 0x02, 0xD3, 0x95, 0x82, 0x69, 0xF1, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, + 0xCD, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0A, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x82, 0x10, 0xD2, 0x20, 0xCD, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x14, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x86, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x7F, 0x18, 0xAD, 0x22, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x1A, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD3, 0x01, 0x01, 0x1A, 0x80, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x86, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x19, + 0x00, 0xF9, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x61, 0xD0, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xD3, 0x75, 0x31, 0x0E, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xCD, 0x01, 0x1A, 0x00, 0xF9, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xCE, 0x00, 0xF7, 0x02, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x83, 0x01, 0x17, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x86, 0x20, 0xAE, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAE, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x6B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x05, 0x01, + 0x19, 0x80, 0x08, 0xF5, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0A, 0x18, 0xAD, 0x80, 0x08, 0xD4, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x80, 0x08, 0xD5, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x01, 0x17, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x08, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x82, 0x39, 0x2F, 0xD3, 0x95, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x80, 0x28, 0xCE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x21, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF4, 0x18, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x21, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x85, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x19, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x02, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x87, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x7F, 0x18, 0xAD, + 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x08, 0x18, 0xAD, 0x05, 0x01, 0x19, 0x84, 0x00, 0xF9, 0x01, 0x19, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x84, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x0E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xF2, 0x18, 0xAE, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x31, 0x0E, 0xCB, 0x55, 0x04, 0xD3, 0x95, 0x82, 0x82, 0x52, 0x20, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x87, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x13, 0x18, 0xAD, + 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x3D, 0x18, 0xAD, 0x80, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF7, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x7C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x80, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x07, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x80, 0x10, 0xF2, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x85, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x85, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x10, 0xD3, + 0x08, 0xF3, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x86, 0x08, 0xF5, 0x01, 0x1A, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0xB3, 0x14, 0x05, 0xD3, 0x95, 0x80, 0x51, 0x90, 0x06, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x17, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x00, 0xF9, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x3D, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x02, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x01, 0x17, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x7F, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x18, + 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xEE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x86, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF9, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x10, 0xF2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x0D, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xD5, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xCD, 0x0B, 0x18, 0xAD, 0x80, 0x82, 0x52, 0x06, 0xD3, 0x95, 0x81, 0x41, 0x2F, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x03, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xD5, 0x1B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x81, 0x08, 0xF5, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x08, 0xF4, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x20, 0xAD, 0x18, 0xAE, 0x01, + 0x01, 0x19, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x87, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xF3, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF3, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x39, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x86, 0x01, 0x18, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0x8D, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF7, 0x02, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x7D, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xCD, 0x80, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x83, 0x03, 0x55, 0x19, 0x0F, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x08, 0xF4, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x86, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x0D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x01, + 0x1A, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0x8E, 0x03, 0x18, 0xAD, 0x89, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xCD, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x49, 0x6F, 0x05, 0xD3, 0x95, 0x83, 0xD3, 0x96, 0xD3, 0x95, 0x49, 0x6F, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x01, 0x19, 0x1B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x81, 0x00, 0xF9, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x01, 0x17, 0x01, 0x01, 0x19, 0x80, 0x08, 0xD5, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x39, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x20, 0xAE, 0x06, 0x18, 0xAD, 0x87, 0x18, 0xB0, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD1, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xD4, 0x06, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x80, 0x18, + 0xAE, 0x7C, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x11, 0xD1, 0x03, 0xB7, 0x0A, 0x93, 0x04, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF9, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xCD, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x28, 0xEE, 0xBB, 0x34, 0x07, 0xD3, 0x95, 0x80, 0x9A, 0xB3, 0x06, 0x18, 0xAD, 0x02, 0x01, 0x19, 0x01, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x82, 0x10, 0xAF, 0x01, 0x19, 0x01, 0x1A, 0x05, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x83, 0x20, + 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x3E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0x8D, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x82, 0x00, 0xF9, 0x10, 0xF2, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x78, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x20, 0x8D, 0x18, 0xAD, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xD3, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x03, 0x56, 0x01, 0x03, 0xB7, 0x80, 0x19, 0x0F, 0x07, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x08, 0xF3, 0x08, 0xD4, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x84, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xCD, 0x0A, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x01, + 0x01, 0x19, 0x80, 0x00, 0xFA, 0x04, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x7A, 0x31, 0x01, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xDB, 0x95, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x85, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x13, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x86, 0x10, 0xD2, 0x08, 0xF3, 0x08, 0xF4, 0x10, 0xD2, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x43, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x10, 0xCF, 0x03, 0x01, 0x19, 0x80, 0x10, 0xD1, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x17, 0x00, 0xFA, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, + 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD1, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x78, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x82, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x86, 0x18, 0xCE, 0x11, 0xD1, 0x03, 0xB8, 0x03, 0xB7, 0x03, 0xB8, 0x0A, 0x94, 0x20, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x86, 0x08, 0xF5, 0x01, 0x1A, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x8F, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x08, 0xF5, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x08, 0xD5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x88, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x31, 0x0E, 0x04, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xD3, 0x95, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xB3, 0x13, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, + 0x02, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x04, 0x01, 0x19, 0x84, 0x00, 0xF9, 0x08, 0xF5, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x06, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x3A, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x80, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x02, 0x01, 0x19, 0x83, 0x10, 0xD2, 0x18, 0xCD, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xD0, 0x7D, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x03, 0x56, 0x01, 0x03, 0xB7, 0x83, 0x03, 0xB8, 0x03, 0xB7, 0x19, 0x0E, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x09, 0x18, 0xAD, 0x82, 0x18, 0xCD, + 0x20, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x1A, 0x80, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x08, 0x18, 0xAD, 0x83, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0xA2, 0xD3, 0x08, 0xD3, 0x95, 0x81, 0xD3, 0x96, 0xA2, 0xD3, 0x06, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x03, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xCE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x01, 0x17, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x13, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x3A, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, + 0xAE, 0x08, 0x18, 0xAD, 0x82, 0x18, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x02, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x06, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x70, 0x18, 0xAD, 0x07, 0x01, 0x19, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x11, 0xD1, 0x03, 0xB8, 0x03, 0x03, 0xB7, 0x80, 0x0A, 0x94, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x0D, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x0F, 0x18, 0xAD, 0x84, 0x10, 0xD2, 0x08, 0xD4, 0x08, 0xF3, 0x10, 0xD2, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xB0, 0x0E, 0x18, 0xAD, 0x80, 0x49, 0x6F, 0x0A, 0xD3, 0x95, 0x80, 0xAA, 0xD3, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x10, 0xD1, 0x01, 0x08, 0xF3, 0x81, 0x10, 0xD2, 0x18, 0xCD, 0x1C, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x10, 0xD2, 0x08, 0xF3, 0x08, 0xD4, + 0x10, 0xD2, 0x10, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x08, 0xF4, 0x01, 0x01, 0x19, 0x84, 0x10, 0xD1, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x08, 0xF5, 0x00, 0xF9, 0x04, 0x01, 0x19, 0x83, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x58, 0x18, 0xAD, 0x85, 0x10, 0xCF, 0x01, 0x18, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x8B, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x05, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x73, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x09, 0x18, 0xAD, 0x81, 0x03, 0x56, 0x03, 0xB8, 0x04, 0x03, 0xB7, 0x80, 0x19, 0x0F, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0F, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x12, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0xB3, + 0x14, 0x0B, 0xD3, 0x95, 0x82, 0x61, 0xD0, 0x18, 0xAD, 0x18, 0xCD, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x18, 0xCD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x86, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x52, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x03, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x08, 0xF5, 0x0B, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x71, 0x01, 0x19, 0x82, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x03, 0x97, 0x03, 0xB8, 0x03, 0xB7, 0x02, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xCD, 0x0F, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x02, 0x18, 0xAD, + 0x80, 0x20, 0xAD, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0A, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x0C, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x59, 0xD0, 0xD3, 0x95, 0xD3, 0x75, 0x08, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xD3, 0x95, 0xD3, 0x96, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x84, 0x08, 0xF4, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x03, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x54, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x04, 0x18, 0xAD, 0x88, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xB0, 0x01, 0x18, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x20, 0xAE, 0x18, 0xAE, 0x00, 0xF7, 0x02, 0x01, 0x1A, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x70, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x02, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x02, 0x03, 0xB7, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x03, 0xB7, 0x82, 0x03, 0x97, 0x03, + 0xB7, 0x03, 0xB8, 0x01, 0x03, 0xB7, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD1, 0x20, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0xBB, 0x34, 0x0C, 0xD3, 0x95, 0x83, 0xAA, 0xD3, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x86, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x01, 0x1A, 0x05, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x18, 0xAD, 0x18, 0xAE, 0x53, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x8C, 0x18, 0xAE, 0x18, 0xB0, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x10, 0xD2, 0x10, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x71, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x85, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, + 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x03, 0xB7, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x04, 0x03, 0xB7, 0x81, 0x03, 0x97, 0x03, 0xB7, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x61, 0xB1, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x0A, 0xD3, 0x95, 0x80, 0x8A, 0x92, 0x29, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x08, 0xF4, 0x53, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x82, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x10, 0xD2, 0x05, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, + 0xAD, 0x80, 0x18, 0xCD, 0x72, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0x8D, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x02, 0x03, 0xB7, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x20, 0xAD, 0x03, 0xB8, 0x03, 0xB7, 0x03, 0xB8, 0x03, 0x03, 0xB7, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xCD, 0x20, 0xAD, 0x1B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x18, 0xAD, 0xAA, 0xD3, 0xD3, 0x95, 0xD3, 0x75, 0x09, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x80, 0x31, 0x0E, 0x28, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1C, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD1, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x58, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x10, 0xCF, 0x03, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x01, 0x19, + 0x80, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x73, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x82, 0x03, 0xD7, 0x03, 0x97, 0x03, 0xB7, 0x03, 0x18, 0xAD, 0x84, 0x03, 0xB7, 0x03, 0xB8, 0x03, 0x97, 0x03, 0xB7, 0x03, 0xB8, 0x01, 0x03, 0xB7, 0x83, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x0A, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x18, 0xCD, 0x20, 0xAD, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x01, 0x19, 0x01, 0x1A, 0x0B, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x49, 0x6F, 0x0D, 0xD3, 0x95, 0x84, 0xD3, 0x75, 0xD3, 0x95, 0x72, 0x31, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x86, 0x10, 0xD1, 0x10, 0xD3, 0x08, 0xD3, 0x10, 0xD2, 0x18, + 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x52, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x02, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF9, 0x06, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x86, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD0, 0x75, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x0D, 0x18, 0xAD, 0x01, 0x03, 0xB7, 0x80, 0x03, 0xB8, 0x03, 0x18, 0xAD, 0x06, 0x03, 0xB7, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x0F, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x20, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x1A, 0x80, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x82, 0x20, 0xCD, 0x20, 0xAE, 0x8A, 0x92, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x0B, 0xD3, 0x95, 0x83, 0x7A, 0x31, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, + 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x5F, 0x18, 0xAD, 0x82, 0x18, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x0A, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x81, 0x01, 0x18, 0x10, 0xD0, 0x76, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0x03, 0xB7, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x03, 0xB7, 0x80, 0x03, 0xB8, 0x03, 0x03, 0xB7, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x11, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x82, 0x20, 0xAD, 0x28, 0xEE, 0xC3, 0x74, 0x0F, 0xD3, 0x95, 0x83, 0xA2, 0xD3, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x22, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x22, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, + 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x83, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x85, 0x10, 0xCF, 0x01, 0x18, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xCE, 0x00, 0xF7, 0x0C, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xD0, 0x78, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCE, 0x19, 0x4F, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x86, 0x03, 0xB7, 0x03, 0x97, 0x03, 0xB8, 0x18, 0xAD, 0x20, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x03, 0x03, 0xB7, 0x80, 0x03, 0xB8, 0x01, 0x03, 0xB7, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x16, 0x18, 0xAD, 0x85, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x80, 0x61, 0xD1, 0x0F, 0xD3, 0x95, 0x84, 0xD3, 0x96, 0xD3, 0x95, 0x69, 0xF1, 0x20, 0xAD, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x19, 0x18, 0xAD, 0x80, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xCE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, + 0xAD, 0x0B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x02, 0x01, 0x1A, 0x84, 0x00, 0xF9, 0x08, 0xF7, 0x18, 0xCE, 0x18, 0xCD, 0x18, 0xAE, 0x13, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0D, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x03, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x05, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0xCF, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x75, 0x18, 0xAD, 0x85, 0x19, 0x30, 0x02, 0xF5, 0x03, 0xB7, 0x03, 0xB8, 0x03, 0x56, 0x11, 0x4F, 0x02, 0x18, 0xAD, 0x80, 0x03, 0xB8, 0x01, 0x03, 0xB7, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x03, 0xB7, 0x03, 0xB8, 0x03, 0xB7, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x88, 0x18, 0xAE, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF4, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x81, 0x9A, 0xB3, 0xD3, 0x75, 0x0D, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x02, 0xD3, 0x95, 0x80, 0x41, 0x2F, 0x21, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF8, 0x03, 0x01, 0x19, 0x84, 0x08, 0xF7, 0x18, 0xCE, 0x18, + 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x03, 0xB7, 0x80, 0x03, 0x97, 0x03, 0x03, 0xB7, 0x02, 0x18, 0xAD, 0x80, 0x0A, 0x32, 0x03, 0x03, 0xB7, 0x80, 0x03, 0x56, 0x01, 0x18, 0xAD, 0x81, 0x0A, 0x32, 0x03, 0xB7, 0x02, 0x03, 0xB8, 0x81, 0x03, 0x76, 0x18, 0xEE, 0x05, 0x03, 0xB7, 0x80, 0x03, 0x97, 0x02, 0x03, 0xB7, 0x81, 0x03, 0xB8, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x05, 0x01, 0x19, 0x83, 0x08, 0xF5, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x11, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x0B, 0x18, 0xAD, 0x88, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xB0, 0x01, 0x18, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x0E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x85, 0x18, 0xCF, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x18, 0xB0, 0x73, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x87, 0x19, 0x0F, 0x03, 0x77, 0x03, 0x97, 0x03, 0xB8, 0x03, 0x98, 0x03, 0x97, 0x0B, 0x77, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x82, 0x03, 0xB7, 0x03, 0x97, 0x03, 0xB8, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x03, 0xB7, 0x0B, 0xB7, 0x03, 0x98, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x14, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, + 0x01, 0x19, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x05, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0xC3, 0x55, 0x12, 0xD3, 0x95, 0x80, 0x49, 0x70, 0x23, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x03, 0x03, 0xB7, 0x80, 0x03, 0xB8, 0x01, 0x03, 0xB7, 0x81, 0x03, 0x97, 0x03, 0xB7, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xEE, 0x03, 0x77, 0x03, 0x03, 0xB7, 0x83, 0x0A, 0x33, 0x19, 0x0E, 0x03, 0x97, 0x03, 0xB8, 0x02, 0x03, 0xB7, 0x81, 0x11, 0xD1, 0x18, 0xAD, 0x0A, 0x03, 0xB7, 0x03, 0x18, 0xAD, 0x83, 0x18, 0xCE, 0x11, 0xB0, 0x0A, 0x93, 0x03, 0x56, 0x02, 0x03, 0xB7, 0x05, 0x18, 0xAD, 0x80, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x18, 0xCD, 0x12, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x0E, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xB0, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x10, 0x18, 0xAD, 0x81, 0x10, 0xD0, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x80, 0x18, 0xB0, 0x74, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x12, 0x53, 0x0B, 0x78, 0x0B, 0x98, 0x0B, 0x78, 0x01, 0x0B, 0x98, 0x81, 0x13, 0x78, 0x11, 0xF2, 0x01, 0x18, 0xAD, 0x80, 0x0B, 0x98, 0x01, 0x0B, 0x78, 0x05, 0x18, 0xAD, 0x84, 0x0B, 0x98, 0x13, 0x78, 0x0B, 0x78, 0x18, 0xAD, 0x20, + 0xAE, 0x15, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x87, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x05, 0x20, 0xAE, 0x83, 0x20, 0xCE, 0x49, 0x70, 0xD3, 0x95, 0xD3, 0x75, 0x10, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0x82, 0x52, 0x02, 0x20, 0xAE, 0x1E, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF4, 0x01, 0x01, 0x19, 0x1B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x12, 0x18, 0xAD, 0x80, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x80, 0x03, 0xB8, 0x07, 0x03, 0xB7, 0x03, 0x18, 0xAD, 0x81, 0x11, 0xD1, 0x03, 0xB8, 0x01, 0x03, 0xB7, 0x83, 0x03, 0xB8, 0x03, 0x77, 0x0A, 0xD4, 0x03, 0x97, 0x02, 0x03, 0xB7, 0x86, 0x02, 0xF5, 0x18, 0xAE, 0x18, 0xAD, 0x03, 0xB7, 0x03, 0xB8, 0x03, 0xB7, 0x03, 0xB8, 0x06, 0x03, 0xB7, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x19, 0x2F, 0x01, 0x03, 0xB7, 0x01, 0x03, 0xB8, 0x01, 0x03, 0xB7, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x18, 0xAF, 0x07, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x11, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF7, 0x0B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x82, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x0D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, + 0xAD, 0x82, 0x18, 0xAE, 0x10, 0xD0, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x80, 0x18, 0xD0, 0x72, 0x18, 0xAD, 0x89, 0x18, 0xAE, 0x18, 0xAD, 0x1A, 0xB5, 0x1B, 0x78, 0x1B, 0x58, 0x13, 0x58, 0x1B, 0x78, 0x13, 0x78, 0x13, 0x58, 0x1A, 0x13, 0x01, 0x18, 0xAE, 0x01, 0x13, 0x58, 0x82, 0x13, 0x78, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x02, 0x13, 0x58, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x10, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x20, 0xAE, 0x80, 0x18, 0xAD, 0x04, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x80, 0x7A, 0x32, 0x0F, 0xD3, 0x95, 0x86, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x75, 0xD3, 0x95, 0xC3, 0x54, 0x59, 0x90, 0x20, 0xAD, 0x03, 0x20, 0xAE, 0x1C, 0x18, 0xAD, 0x80, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x80, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x06, 0x03, 0xB7, 0x81, 0x03, 0x97, 0x03, 0xB7, 0x03, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x03, 0x56, 0x05, 0x03, 0xB7, 0x80, 0x03, 0x97, 0x01, 0x03, 0xB7, 0x80, 0x19, 0x4F, 0x01, 0x18, 0xAD, 0x0A, 0x03, 0xB7, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x03, 0xB7, 0x03, 0x97, 0x03, 0x03, 0xB7, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x20, 0xAD, 0x80, 0x18, 0xAD, 0x01, + 0x01, 0x19, 0x80, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x04, 0x01, 0x19, 0x0F, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF8, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x18, 0xAD, 0x10, 0xCF, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xCD, 0x09, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x00, 0xF9, 0x80, 0x18, 0xD0, 0x73, 0x18, 0xAD, 0x80, 0x1A, 0x54, 0x01, 0x1B, 0x38, 0x84, 0x23, 0x38, 0x1B, 0x38, 0x1B, 0x58, 0x23, 0x38, 0x21, 0xD2, 0x01, 0x18, 0xAD, 0x01, 0x23, 0x38, 0x81, 0x23, 0x58, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x85, 0x19, 0x30, 0x23, 0x39, 0x23, 0x58, 0x23, 0x38, 0x18, 0xAD, 0x20, 0xAD, 0x16, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x82, 0x08, 0xF5, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x80, 0xA2, 0xB3, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x0B, 0xD3, 0x95, 0x03, 0xD3, 0x75, 0x80, 0x49, 0x70, 0x05, 0x20, 0xAE, 0x1B, 0x18, 0xAD, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD3, 0x01, 0x01, 0x1A, 0x80, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x03, 0x03, 0xB7, + 0x80, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x11, 0x70, 0x01, 0x03, 0xB8, 0x01, 0x03, 0xB7, 0x80, 0x03, 0xB8, 0x02, 0x03, 0xB7, 0x80, 0x0A, 0x53, 0x05, 0x18, 0xAD, 0x01, 0x03, 0xB7, 0x80, 0x03, 0x97, 0x01, 0x03, 0xB7, 0x81, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x03, 0x96, 0x03, 0xB8, 0x03, 0x03, 0xB7, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xAD, 0x13, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0D, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xD0, 0x01, 0x18, 0x02, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x10, 0xD0, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x80, 0x10, 0xD0, 0x70, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x21, 0x50, 0x2B, 0x18, 0x2B, 0x39, 0x2B, 0x18, 0x01, 0x2B, 0x19, 0x81, 0x2A, 0xF8, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x87, 0x2B, 0x19, 0x2B, 0x18, 0x2B, 0x19, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xAD, 0x21, 0x92, 0x01, 0x2B, 0x19, 0x83, 0x2B, 0x18, 0x23, 0x38, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x82, 0x10, 0xCF, 0x01, 0x19, 0x01, 0x1A, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x05, + 0x20, 0xCE, 0x80, 0xBB, 0x34, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x0B, 0xD3, 0x95, 0x06, 0xD3, 0x75, 0x81, 0x49, 0x70, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x19, 0x18, 0xAD, 0x80, 0x08, 0xD5, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x01, 0x17, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x1B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x04, 0x03, 0xB7, 0x80, 0x03, 0xB8, 0x01, 0x03, 0xB7, 0x05, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x0A, 0xF5, 0x05, 0x03, 0xB7, 0x81, 0x03, 0x77, 0x18, 0xEE, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x03, 0xB7, 0x03, 0xB8, 0x01, 0x03, 0xB7, 0x81, 0x03, 0xB8, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x11, 0xB0, 0x03, 0xB7, 0x03, 0xB8, 0x02, 0x03, 0xB7, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCE, 0x01, 0x17, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x84, 0x01, 0x17, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x27, 0x18, 0xAD, 0x82, 0x18, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0xCF, 0x01, 0x18, 0x02, 0x01, 0x19, 0x82, 0x18, 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x85, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xD3, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x1A, 0x18, + 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x2D, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x21, 0x92, 0x2B, 0x19, 0x33, 0x19, 0x32, 0xF9, 0x2A, 0x15, 0x18, 0xEF, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x32, 0xF9, 0x33, 0x19, 0x32, 0xF9, 0x02, 0x18, 0xAD, 0x85, 0x21, 0x91, 0x33, 0x19, 0x2A, 0xF9, 0x33, 0x19, 0x2A, 0xF9, 0x2A, 0x97, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x1C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1B, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x03, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x02, 0x20, 0xCF, 0x80, 0x28, 0xCF, 0x10, 0xD3, 0x95, 0x05, 0xD3, 0x75, 0x80, 0x71, 0xD1, 0x05, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xCD, 0x01, 0x20, 0xAE, 0x17, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x85, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x04, 0x03, 0xB7, 0x82, 0x03, 0xB8, 0x03, 0x97, 0x03, 0xB7, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x19, 0x0F, 0x01, 0x03, 0xB7, 0x80, 0x03, 0xB8, 0x02, 0x03, 0xB7, 0x82, 0x11, 0xD1, 0x18, 0xAD, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x04, 0x03, 0xB7, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x03, 0xB7, 0x03, 0x97, 0x02, 0x03, 0xB7, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x20, 0xAD, + 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x82, 0x10, 0xD2, 0x18, 0xAE, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x85, 0x10, 0xCF, 0x01, 0x18, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x18, 0xD0, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x80, 0x10, 0xD2, 0x12, 0x18, 0xAD, 0x86, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x1E, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x2B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x3A, 0xD9, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x3A, 0xF9, 0x01, 0x3A, 0xD9, 0x89, 0x18, 0xAD, 0x20, 0xAD, 0x32, 0x15, 0x3A, 0xD9, 0x3A, 0xF9, 0x3A, 0xDA, 0x3A, 0xD9, 0x32, 0x77, 0x18, 0xCE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x1E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x80, 0x20, 0xCD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x80, 0x20, 0xCF, 0x01, 0x28, 0xCF, 0x80, 0x49, 0x50, 0x0F, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x81, 0xD3, 0x74, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x85, 0xAA, 0xB3, 0x20, 0xCE, 0x18, 0xCE, 0x20, 0xCE, 0x20, 0xAE, 0x20, 0xCE, 0x06, 0x20, 0xAE, 0x14, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x10, 0xD3, 0x08, 0xF3, 0x10, 0xD2, + 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x03, 0x03, 0x98, 0x80, 0x03, 0xB7, 0x01, 0x03, 0x97, 0x80, 0x03, 0xB7, 0x02, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x86, 0x0A, 0xD5, 0x03, 0x97, 0x03, 0x98, 0x03, 0xB8, 0x03, 0x98, 0x03, 0xB8, 0x18, 0xEE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x03, 0x98, 0x80, 0x03, 0xB8, 0x01, 0x03, 0x98, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x04, 0x03, 0x98, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0D, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x15, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x03, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xD0, 0x00, 0xF8, 0x01, 0x19, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x81, 0x08, 0xF7, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x84, 0x08, 0xF5, 0x01, 0x39, 0x01, 0x1A, 0x01, 0x17, 0x00, 0xF7, 0x01, 0x01, 0x1A, 0x80, 0x08, 0xF5, 0x1F, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xAE, 0x2B, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x42, 0xD9, 0x01, 0x42, 0xB9, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x42, 0xB9, 0x88, 0x42, 0xBA, 0x18, 0xAE, 0x31, 0xF5, 0x42, 0xDA, 0x42, 0xD9, 0x42, 0xB9, 0x42, 0xD9, 0x3A, 0x77, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x1B, 0x18, 0xAD, + 0x84, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x19, 0x01, 0x1A, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1C, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x80, 0x59, 0x91, 0x0D, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x81, 0xD3, 0x74, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x81, 0x92, 0x52, 0x30, 0xEF, 0x03, 0x20, 0xCE, 0x06, 0x20, 0xAE, 0x12, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x23, 0x38, 0x81, 0x23, 0x18, 0x23, 0x19, 0x03, 0x23, 0x38, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x21, 0x50, 0x23, 0x18, 0x01, 0x23, 0x38, 0x01, 0x23, 0x18, 0x81, 0x23, 0x38, 0x21, 0xF3, 0x05, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x23, 0x39, 0x01, 0x23, 0x18, 0x81, 0x23, 0x39, 0x23, 0x38, 0x06, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x04, 0x23, 0x38, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x20, 0xAE, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xB0, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x88, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xB0, 0x01, 0x18, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x02, 0x18, 0xAD, + 0x80, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x03, 0x01, 0x19, 0x84, 0x01, 0x17, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x00, 0xF9, 0x01, 0x19, 0x10, 0xD3, 0x01, 0x18, 0xAD, 0x83, 0x10, 0xF3, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x19, 0x01, 0x19, 0x82, 0x18, 0xB0, 0x18, 0xAD, 0x18, 0xAE, 0x30, 0x18, 0xAD, 0x82, 0x4A, 0x99, 0x4A, 0xB9, 0x4A, 0x9A, 0x04, 0x18, 0xAD, 0x01, 0x4A, 0xBA, 0x82, 0x4A, 0x9A, 0x42, 0x57, 0x4A, 0x99, 0x01, 0x4A, 0x9A, 0x87, 0x4A, 0xBA, 0x42, 0x37, 0x20, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xCD, 0x1B, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x1A, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x01, 0x01, 0x19, 0x80, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x80, 0x28, 0xCE, 0x02, 0x28, 0xCF, 0x81, 0x28, 0xEF, 0x69, 0xF1, 0x0D, 0xD3, 0x95, 0x03, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x84, 0xD3, 0x35, 0xD3, 0x55, 0xCB, 0x14, 0x41, 0x30, 0x20, 0xAF, 0x01, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x12, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0x8E, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x12, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x42, 0xB9, 0x4A, + 0x99, 0x42, 0xB9, 0x42, 0xBA, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x88, 0x42, 0x57, 0x4A, 0xBA, 0x4A, 0x9A, 0x4A, 0x99, 0x42, 0xB9, 0x4A, 0x9A, 0x42, 0xB9, 0x4A, 0x9A, 0x20, 0xEF, 0x05, 0x18, 0xAD, 0x80, 0x4A, 0x9A, 0x01, 0x42, 0xB9, 0x83, 0x4A, 0xBA, 0x4A, 0xB9, 0x18, 0xAD, 0x18, 0xCD, 0x06, 0x18, 0xAD, 0x82, 0x4A, 0x99, 0x42, 0xB9, 0x4A, 0xBA, 0x01, 0x4A, 0x99, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x16, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xB0, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x83, 0x18, 0xB0, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x82, 0x08, 0xF3, 0x01, 0x1A, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x86, 0x18, 0xAF, 0x01, 0x1A, 0x00, 0xF9, 0x10, 0xD0, 0x18, 0xAD, 0x20, 0xAD, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x19, 0x01, 0x19, 0x81, 0x01, 0x18, 0x10, 0xD0, 0x31, 0x18, 0xAD, 0x02, 0x52, 0x7A, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x52, 0x7A, 0x80, 0x52, 0x9A, 0x03, 0x52, 0x7A, 0x81, 0x4A, 0x18, 0x20, 0xCE, 0x01, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x1F, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x00, 0xF9, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, + 0x1A, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x10, 0xD1, 0x01, 0x17, 0x01, 0x01, 0x19, 0x84, 0x09, 0x17, 0x18, 0xD2, 0x20, 0xCE, 0x20, 0xCF, 0x28, 0xCE, 0x02, 0x28, 0xCF, 0x82, 0x28, 0xEF, 0x30, 0xF0, 0x82, 0x53, 0x0C, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x05, 0xD3, 0x55, 0x83, 0xD3, 0x54, 0xD3, 0x55, 0x7A, 0x11, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xCE, 0x07, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x0F, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x02, 0x6A, 0x3B, 0x80, 0x62, 0x1A, 0x01, 0x6A, 0x3B, 0x80, 0x6A, 0x1B, 0x01, 0x6A, 0x3B, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x20, 0xAD, 0x39, 0x32, 0x01, 0x6A, 0x3B, 0x80, 0x6A, 0x1B, 0x04, 0x6A, 0x3B, 0x80, 0x59, 0xD7, 0x05, 0x18, 0xAD, 0x04, 0x6A, 0x3B, 0x08, 0x18, 0xAD, 0x80, 0x6A, 0x1B, 0x01, 0x6A, 0x3B, 0x85, 0x6A, 0x1B, 0x6A, 0x3B, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x18, 0xCD, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xF3, 0x10, 0xD2, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x0F, 0x18, 0xAD, 0x83, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x1A, 0x00, 0xF7, 0x13, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x82, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x0F, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD1, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0xD0, + 0x01, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x83, 0x10, 0xD3, 0x18, 0xAD, 0x20, 0xAE, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x85, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x2A, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x86, 0x20, 0xAD, 0x5A, 0x5B, 0x5A, 0x5A, 0x5A, 0x7A, 0x29, 0x10, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x5A, 0x5A, 0x5A, 0x7B, 0x03, 0x5A, 0x5A, 0x81, 0x4A, 0x18, 0x20, 0xCE, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x1B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x80, 0x10, 0xD1, 0x03, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x09, 0x1A, 0x18, 0xF2, 0x28, 0xCF, 0x28, 0xCE, 0x01, 0x28, 0xCF, 0x83, 0x28, 0xEF, 0x28, 0xF0, 0x30, 0xF0, 0x82, 0x32, 0x0B, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x81, 0xA2, 0x93, 0x28, 0xCF, 0x07, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x80, 0x20, 0xAE, 0x12, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x02, 0x89, 0xBC, 0x82, 0x91, 0xBC, 0x89, 0xBC, 0x89, 0x9C, 0x01, 0x89, 0xBC, 0x80, 0x89, 0xBB, 0x03, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x89, 0x9B, 0x02, 0x89, 0xBC, 0x83, 0x79, 0x9A, 0x71, + 0x79, 0x89, 0xBB, 0x89, 0x9C, 0x01, 0x89, 0xBC, 0x80, 0x38, 0xF1, 0x04, 0x18, 0xAD, 0x80, 0x89, 0xBC, 0x01, 0x89, 0x9C, 0x01, 0x89, 0xBC, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x86, 0x20, 0xAD, 0x18, 0xAD, 0x89, 0xBC, 0x89, 0x9C, 0x89, 0xBC, 0x89, 0x9C, 0x89, 0xBC, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x0B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x1A, 0x01, 0x17, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x10, 0xCF, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x13, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x82, 0x08, 0xF3, 0x01, 0x19, 0x01, 0x1A, 0x12, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x01, 0x17, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x19, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xD0, 0x18, 0xAE, 0x2E, 0x18, 0xAD, 0x85, 0x62, 0x3A, 0x62, 0x3B, 0x62, 0x5A, 0x62, 0x1A, 0x29, 0x10, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x82, 0x62, 0x3B, 0x62, 0x3A, 0x62, 0x5A, 0x01, 0x62, 0x3B, 0x81, 0x51, 0xF8, 0x20, 0xCE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x21, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x01, 0x01, + 0x19, 0x1A, 0x18, 0xAD, 0x82, 0x01, 0x18, 0x01, 0x19, 0x09, 0x17, 0x01, 0x18, 0xD2, 0x82, 0x09, 0x18, 0x09, 0x1A, 0x09, 0x18, 0x01, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x80, 0x30, 0xD0, 0x01, 0x30, 0xF0, 0x80, 0x82, 0x52, 0x09, 0xD3, 0x95, 0x06, 0xD3, 0x75, 0x03, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x85, 0xD3, 0x15, 0xD3, 0x35, 0x92, 0x53, 0x30, 0xEF, 0x28, 0xCF, 0x28, 0xCE, 0x05, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x09, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x02, 0xA9, 0x3D, 0x80, 0xB1, 0x3D, 0x02, 0xA9, 0x3D, 0x83, 0xB1, 0x3D, 0xB1, 0x1D, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x60, 0xF5, 0x01, 0xA9, 0x3D, 0x85, 0xB1, 0x3D, 0xA9, 0x3D, 0x60, 0xF5, 0x40, 0xD1, 0xB1, 0x1D, 0xB1, 0x3D, 0x01, 0xA9, 0x3D, 0x80, 0x99, 0x1B, 0x04, 0x18, 0xAD, 0x04, 0xA9, 0x3D, 0x08, 0x18, 0xAD, 0x02, 0xA9, 0x3D, 0x81, 0xB1, 0x3D, 0xA9, 0x3D, 0x04, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x00, 0xF7, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x10, 0x18, 0xAD, 0x84, 0x10, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x16, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x03, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, + 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x11, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x84, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xD0, 0x18, 0xAE, 0x2B, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xCD, 0x59, 0xD8, 0x03, 0x6A, 0x1B, 0x80, 0x41, 0x33, 0x01, 0x18, 0xAD, 0x80, 0x6A, 0x3B, 0x02, 0x6A, 0x1B, 0x81, 0x51, 0xB6, 0x20, 0xCF, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x84, 0x10, 0xD2, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD3, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x1A, 0x18, 0xAD, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xD1, 0x01, 0x20, 0xCE, 0x80, 0x18, 0xD1, 0x01, 0x09, 0x3A, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x30, 0xF0, 0x81, 0x38, 0xF0, 0x92, 0x73, 0x09, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x81, 0xD3, 0x34, 0xD3, 0x35, 0x01, 0xD3, 0x34, 0x82, 0xD3, 0x14, 0xD3, 0x15, 0xAA, 0x93, 0x02, 0x28, 0xCF, 0x07, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x80, 0x20, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x09, 0x18, 0xAD, 0x02, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x12, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x05, 0xD0, 0xBE, 0x80, 0xD0, 0x9E, 0x01, 0xD0, 0xBE, 0x02, 0x18, 0xAD, 0x80, + 0x30, 0xB0, 0x04, 0xD0, 0xBE, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0xB8, 0xBC, 0x03, 0xD0, 0xBE, 0x80, 0x68, 0xB5, 0x03, 0x18, 0xAD, 0x04, 0xD0, 0xBE, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x04, 0xD0, 0xBE, 0x03, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x83, 0x08, 0xF3, 0x01, 0x1A, 0x01, 0x19, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x84, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x81, 0x18, 0xD0, 0x01, 0x18, 0x01, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x10, 0xD2, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x84, 0x10, 0xD2, 0x08, 0xD4, 0x08, 0xF3, 0x10, 0xD2, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0D, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x81, 0x18, 0xD0, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x22, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xCE, 0x61, 0xB8, 0x72, 0x1B, 0x71, 0xFB, 0x01, 0x72, 0x1B, 0x88, 0x41, 0x33, 0x20, 0xAD, 0x71, 0xFB, 0x72, 0x1B, 0x71, 0xFB, 0x41, 0x74, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x01, 0x18, + 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x19, 0x18, 0xAD, 0x86, 0x20, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xD1, 0x20, 0xAE, 0x20, 0xCE, 0x20, 0xF1, 0x01, 0x09, 0x3A, 0x01, 0x28, 0xCF, 0x80, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x82, 0x38, 0xF0, 0x39, 0x11, 0xAA, 0xF4, 0x08, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x05, 0xD3, 0x55, 0x05, 0xD3, 0x35, 0x01, 0xD3, 0x14, 0x80, 0xD3, 0x15, 0x01, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x01, 0x28, 0xCE, 0x05, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x80, 0x18, 0xAE, 0x01, 0x20, 0xAD, 0x8C, 0x20, 0xAE, 0x30, 0xEE, 0x61, 0x50, 0x81, 0xB1, 0xA1, 0xF2, 0xC2, 0x33, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0xC2, 0x33, 0xA1, 0xF2, 0x81, 0x91, 0x51, 0x2F, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x10, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x08, 0xF0, 0x3F, 0x83, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0xB0, 0x79, 0x03, 0xF0, 0x3F, 0x80, 0xA0, 0x58, 0x01, 0x18, 0xAD, 0x80, 0x70, 0x95, 0x03, 0xF0, 0x3F, 0x82, 0xE8, 0x3E, 0x28, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0xF0, 0x3F, 0xF0, 0x1F, 0x02, 0xF0, 0x3F, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0xF0, 0x3F, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x86, 0x18, 0xAF, 0x00, 0xF9, 0x01, 0x19, 0x18, 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0xD0, 0x0F, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, + 0x00, 0xF7, 0x18, 0xAE, 0x1F, 0x18, 0xAD, 0x82, 0x10, 0xD0, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD0, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x80, 0x10, 0xD2, 0x1C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x01, 0x19, 0x80, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x21, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x8A, 0x20, 0xCE, 0x69, 0xB9, 0x81, 0xFB, 0x79, 0xDB, 0x79, 0xDC, 0x81, 0xFC, 0x59, 0x76, 0x79, 0xDB, 0x79, 0xDC, 0x81, 0xDC, 0x20, 0xAD, 0x1E, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x19, 0x18, 0xAD, 0x8B, 0x20, 0xAE, 0x09, 0x18, 0x01, 0x19, 0x09, 0x17, 0x18, 0xD0, 0x20, 0xD0, 0x09, 0x17, 0x09, 0x3A, 0x11, 0x38, 0x28, 0xCF, 0x30, 0xCF, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x01, 0x39, 0x11, 0x80, 0xAA, 0xD4, 0x07, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x06, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x81, 0xD3, 0x15, 0xD3, 0x14, 0x01, 0xD3, 0x15, 0x82, 0xD3, 0x14, 0x69, 0xB2, 0x28, 0xEF, 0x04, 0x28, 0xCF, 0x01, 0x28, 0xCE, 0x07, 0x20, 0xCE, 0x89, 0x20, 0xAE, 0x20, 0xCE, 0x41, 0x0F, 0x69, 0x90, 0x99, 0xF2, 0xC2, 0x53, 0xCA, 0x74, 0xD2, 0x74, 0xCA, 0x74, 0xD2, 0x53, + 0x02, 0xCA, 0x53, 0x87, 0xD2, 0x33, 0xD2, 0x53, 0xCA, 0x53, 0xD2, 0x33, 0xCA, 0x33, 0xC2, 0x13, 0x89, 0x91, 0x41, 0x0F, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x13, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x01, 0x01, 0x1A, 0x07, 0x01, 0x19, 0x87, 0x01, 0x1A, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x20, 0x18, 0xAD, 0x87, 0x18, 0xCD, 0x18, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x2A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x17, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x09, 0x17, 0x01, 0x01, 0x19, 0x81, 0x10, 0xCF, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x28, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x84, 0x20, 0xAE, 0x71, 0x99, 0x89, 0xDB, 0x89, 0xBC, 0x81, 0xBC, 0x03, 0x89, 0xBC, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1E, 0x18, 0xAD, 0x80, 0x20, 0xAD, + 0x02, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x06, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xD2, 0x01, 0x01, 0x19, 0x03, 0x09, 0x3A, 0x82, 0x20, 0xF2, 0x28, 0xCF, 0x28, 0xF0, 0x01, 0x30, 0xF0, 0x80, 0x31, 0x11, 0x01, 0x39, 0x11, 0x80, 0xB2, 0xF5, 0x05, 0xD3, 0x95, 0x05, 0xD3, 0x75, 0x06, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x01, 0xD3, 0x15, 0x01, 0xD3, 0x14, 0x86, 0xD2, 0xF4, 0xD2, 0xF5, 0xCA, 0xD4, 0x59, 0x71, 0x30, 0xF0, 0x30, 0xD0, 0x28, 0xEF, 0x05, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x83, 0x28, 0xCE, 0x38, 0xEF, 0x79, 0xB1, 0xBA, 0x53, 0x01, 0xCA, 0x94, 0x80, 0xCA, 0x74, 0x01, 0xD2, 0x73, 0x85, 0xCA, 0x73, 0xCA, 0x54, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0xCA, 0x33, 0x01, 0xCA, 0x53, 0x02, 0xCA, 0x33, 0x80, 0xD2, 0x13, 0x01, 0xCA, 0x13, 0x83, 0xA1, 0xB2, 0x49, 0x0F, 0x18, 0xAD, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x80, 0x08, 0xD5, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x09, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x06, 0x18, + 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAE, 0x1E, 0x18, 0xAD, 0x81, 0x18, 0xAF, 0x01, 0x18, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x10, 0xCF, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x2B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xB0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x27, 0x18, 0xAD, 0x81, 0x20, 0xCE, 0x79, 0x79, 0x01, 0x91, 0x9C, 0x84, 0x91, 0xBC, 0x91, 0x9C, 0x89, 0x9C, 0x89, 0xBC, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x1C, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xF2, 0x17, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x82, 0x20, 0xCE, 0x18, 0xF2, 0x09, 0x19, 0x01, 0x09, 0x1A, 0x82, 0x09, 0x19, 0x20, 0xF3, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x80, 0x31, 0x10, 0x01, 0x39, 0x11, 0x81, 0x41, 0x12, 0xB2, 0xF5, 0x05, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x06, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x80, 0xD3, 0x15, 0x02, 0xD3, 0x14, 0x82, 0xD2, 0xF4, 0xD3, 0x14, 0xD2, 0xF5, 0x01, 0xD2, 0xF4, 0x83, 0x49, 0x30, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xF0, 0x02, 0x28, 0xCF, 0x81, 0x28, 0xEF, 0x28, 0xCE, 0x02, 0x28, 0xCF, 0x81, 0x41, 0x30, 0x89, 0xF1, 0x01, 0xD2, 0x94, 0x82, 0xCA, 0x93, 0xCA, 0x74, 0xD2, 0x74, 0x01, + 0xCA, 0x74, 0x83, 0xCA, 0x53, 0xCA, 0x73, 0xD2, 0x53, 0xD2, 0x54, 0x01, 0xCA, 0x53, 0x8C, 0xCA, 0x54, 0xC2, 0x74, 0x9B, 0x36, 0x83, 0xB8, 0x64, 0x19, 0x6C, 0x39, 0x64, 0x39, 0x6C, 0x1A, 0x8B, 0x57, 0xB2, 0x95, 0xCA, 0x13, 0x91, 0x91, 0x28, 0xCE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x11, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x09, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x0D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xCD, 0x1B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x88, 0x18, 0xAE, 0x18, 0xCF, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xCF, 0x18, 0xAD, 0x18, 0xCD, 0x3E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAF, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x25, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x28, 0xAE, 0x81, 0x59, 0x91, 0x7C, 0x01, 0x99, 0x7C, 0x01, 0x99, 0x9C, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x80, 0x10, 0xD2, + 0x01, 0x01, 0x19, 0x80, 0x08, 0xD5, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x85, 0x08, 0xF4, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x18, 0xAD, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x81, 0x20, 0xD0, 0x20, 0xD1, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x01, 0x30, 0xF0, 0x82, 0x31, 0x10, 0x39, 0x10, 0x41, 0x11, 0x01, 0x41, 0x12, 0x80, 0x92, 0x94, 0x04, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x05, 0xD3, 0x55, 0x04, 0xD3, 0x35, 0x01, 0xD3, 0x15, 0x80, 0xD3, 0x14, 0x01, 0xD2, 0xF4, 0x86, 0xD3, 0x15, 0xD2, 0xF4, 0xD2, 0xF5, 0xD2, 0xF4, 0xD2, 0xD5, 0x79, 0xD2, 0x31, 0x10, 0x02, 0x30, 0xF0, 0x87, 0x28, 0xF0, 0x30, 0xD0, 0x28, 0xEF, 0x28, 0xF0, 0x28, 0xCF, 0x51, 0x50, 0xAA, 0x32, 0xD2, 0x93, 0x01, 0xD2, 0x94, 0x80, 0xCA, 0x93, 0x03, 0xCA, 0x74, 0x8A, 0xD2, 0x74, 0xD2, 0x54, 0xCA, 0x53, 0xCA, 0x54, 0xB2, 0xD5, 0x83, 0xB8, 0x44, 0xFC, 0x1D, 0xBE, 0x06, 0x3F, 0x0C, 0xDB, 0x0B, 0x76, 0x01, 0x13, 0x77, 0x86, 0x0B, 0x76, 0x13, 0x56, 0x0B, 0x76, 0x0B, 0x77, 0x23, 0xF8, 0x69, 0x91, 0x51, 0x0F, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x06, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x08, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, + 0x84, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x1E, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAF, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x18, 0xCF, 0x0C, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x27, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xAF, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x20, 0xAE, 0x89, 0x39, 0x01, 0xA1, 0x7C, 0x01, 0xA1, 0x5D, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x16, 0x18, 0xAD, 0x04, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x80, 0x28, 0xCE, 0x01, 0x28, 0xCF, 0x83, 0x28, 0xEF, 0x28, 0xF0, 0x30, 0xF0, 0x31, 0x10, 0x02, 0x39, 0x11, 0x82, 0x41, 0x12, 0x41, 0x32, 0x8A, + 0x54, 0x03, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x06, 0xD3, 0x55, 0x02, 0xD3, 0x35, 0x02, 0xD3, 0x15, 0x02, 0xD3, 0x14, 0x01, 0xD2, 0xF4, 0x80, 0xD2, 0xF5, 0x01, 0xD2, 0xF4, 0x83, 0xD2, 0xD4, 0xCA, 0xD4, 0x59, 0x51, 0x38, 0xF0, 0x04, 0x30, 0xF0, 0x81, 0x41, 0x30, 0x91, 0xF2, 0x01, 0xD2, 0x94, 0x81, 0xCA, 0x94, 0xCA, 0x74, 0x01, 0xCA, 0x94, 0x80, 0xCA, 0x74, 0x02, 0xD2, 0x74, 0x8A, 0xD2, 0x53, 0xB2, 0xD5, 0x74, 0x19, 0x25, 0x7D, 0x06, 0x3F, 0x06, 0x1F, 0x05, 0x7D, 0x12, 0xB5, 0x19, 0x0F, 0x18, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x1D, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x82, + 0x01, 0x1A, 0x00, 0xF9, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x2C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x01, 0x17, 0x01, 0x01, 0x19, 0x80, 0x18, 0xB0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x2A, 0x18, 0xAD, 0x84, 0x20, 0xCE, 0x91, 0x3A, 0xA9, 0x3D, 0xA9, 0x5D, 0xA9, 0x5C, 0x21, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAE, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x84, 0x20, 0xCF, 0x28, 0xCE, 0x28, 0xCF, 0x28, 0xEF, 0x28, 0xF0, 0x01, 0x30, 0xF0, 0x02, 0x39, 0x11, 0x01, 0x41, 0x32, 0x81, 0x49, 0x32, 0x92, 0x55, 0x01, 0xD3, 0x95, 0x05, 0xD3, 0x75, 0x05, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x02, 0xD3, 0x15, 0x02, 0xD3, 0x14, 0x81, 0xD2, 0xF4, 0xD2, 0xF5, 0x03, 0xD2, 0xF4, 0x01, 0xD2, 0xD4, 0x89, 0xCA, 0xB4, 0x51, 0x72, 0x39, 0x11, 0x38, 0xF1, 0x38, 0xF0, 0x30, 0xF0, 0x81, 0xD2, 0xC2, 0x94, 0xD2, 0x94, 0xD2, 0x93, 0x01, 0xD2, 0x94, 0x01, 0xCA, 0x93, 0x01, 0xD2, 0x74, 0x84, 0xCA, 0x73, 0xD2, 0x74, 0x83, 0xD8, 0x35, 0x3D, 0x06, 0x1F, 0x02, 0x06, 0x3F, 0x81, 0x4C, 0x5A, 0x49, 0x70, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x01, 0x20, 0xAD, 0x82, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x18, + 0xAD, 0x01, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x87, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x29, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x82, 0x00, 0xF9, 0x10, 0xCF, 0x18, 0xAE, 0x2D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x10, 0xD2, 0x08, 0xF3, 0x08, 0xD4, 0x10, 0xD2, 0x07, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x2D, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0xB1, 0x1D, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x1A, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x81, 0x08, 0xD5, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x12, 0x18, + 0xAD, 0x02, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x81, 0x28, 0xCF, 0x20, 0xCF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x01, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x84, 0x41, 0x12, 0x41, 0x32, 0x49, 0x32, 0x49, 0x53, 0x6B, 0x36, 0x01, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x06, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x80, 0xD3, 0x15, 0x04, 0xD3, 0x14, 0x02, 0xD2, 0xF4, 0x80, 0xD2, 0xF5, 0x01, 0xD2, 0xD4, 0x93, 0xD2, 0xD5, 0xD2, 0xD4, 0xCA, 0xD4, 0xCA, 0xB4, 0x59, 0x72, 0x39, 0x11, 0x51, 0x51, 0xB2, 0x53, 0xCA, 0xB4, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xCA, 0x74, 0xD2, 0x74, 0xC2, 0x94, 0x64, 0x5A, 0x1D, 0xBE, 0x02, 0x06, 0x3F, 0x84, 0x1D, 0xBE, 0x64, 0x59, 0xC2, 0x74, 0x99, 0xD2, 0x28, 0xCE, 0x03, 0x20, 0xAE, 0x80, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x19, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x8C, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAE, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x0B, + 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x10, 0xD0, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x34, 0x18, 0xAD, 0x81, 0x18, 0xAF, 0x01, 0x17, 0x03, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x0A, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x81, 0x18, 0xD0, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x82, 0xB8, 0xFE, 0xB8, 0xFD, 0xB8, 0xFE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x83, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x17, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x03, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x81, 0x28, 0xEF, 0x28, 0xF0, 0x01, 0x30, 0xF0, 0x01, 0x39, 0x11, 0x80, 0x41, 0x11, 0x01, 0x41, 0x32, 0x84, 0x49, 0x33, 0x49, 0x53, 0x25, 0x3B, 0x46, 0x5C, 0x6D, 0x7B, 0x01, 0x6D, 0x9A, 0x83, 0x6D, 0x7A, 0x84, 0xF9, 0x9C, 0x78, 0x9C, 0x77, 0x01, 0x9C, 0x78, 0x81, 0x9C, 0x57, 0x9C, 0x78, 0x01, 0x9C, 0x58, 0x88, 0xBB, 0xB6, 0xD3, 0x34, 0xD3, 0x15, 0xD3, 0x34, 0xD3, 0x15, 0xD3, 0x14, + 0xD3, 0x15, 0xD2, 0xF4, 0xCA, 0xF4, 0x02, 0xD2, 0xF4, 0x82, 0xD2, 0xF5, 0xD2, 0xD4, 0xCA, 0xD4, 0x01, 0xD2, 0xD4, 0x85, 0xCA, 0xD4, 0xCA, 0xB4, 0xD2, 0xD4, 0x91, 0xF3, 0x59, 0x72, 0xCA, 0x74, 0x01, 0xD2, 0xB4, 0x81, 0xD2, 0x94, 0xCA, 0x94, 0x01, 0xD2, 0x94, 0x84, 0xCA, 0x94, 0xCA, 0x74, 0xC2, 0xB4, 0x6C, 0x5A, 0x0D, 0xFF, 0x02, 0x06, 0x3F, 0x84, 0x35, 0x3D, 0x83, 0xB8, 0xCA, 0x53, 0xCA, 0x33, 0x89, 0xB1, 0x01, 0x20, 0xCE, 0x06, 0x20, 0xAE, 0x19, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xCD, 0x2B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xCD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xCE, 0x00, 0xF7, 0x24, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x00, 0xF9, 0x82, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x36, 0x18, 0xAD, 0x81, 0x08, 0xF5, 0x00, 0xF9, 0x03, 0x01, 0x19, 0x84, 0x00, 0xF9, 0x08, 0xF5, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x01, 0x19, 0x81, 0x18, 0xD0, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x16, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x89, 0x18, 0xAE, + 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0xC0, 0xDE, 0xC0, 0xFE, 0xC0, 0xDD, 0x18, 0xAE, 0x18, 0xCD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x19, 0x18, 0xAD, 0x86, 0x00, 0xF9, 0x00, 0xFA, 0x08, 0xF4, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x16, 0x18, 0xAD, 0x04, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x80, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x8C, 0x39, 0x11, 0x38, 0xF1, 0x39, 0x11, 0x41, 0x12, 0x41, 0x32, 0x49, 0x32, 0x49, 0x53, 0x51, 0x53, 0x4D, 0x1A, 0x6D, 0x9A, 0x94, 0xB9, 0x9C, 0x98, 0x9C, 0x77, 0x02, 0x9C, 0x78, 0x80, 0x94, 0xB8, 0x01, 0x6D, 0x7A, 0x89, 0x6D, 0x7B, 0x36, 0x7C, 0x36, 0x7D, 0x1E, 0xFE, 0x07, 0x7F, 0x07, 0x5F, 0x1E, 0xDE, 0x36, 0x3D, 0x6D, 0x3A, 0x9C, 0x17, 0x04, 0xD2, 0xF4, 0x80, 0xD2, 0xF5, 0x03, 0xD2, 0xD4, 0x86, 0xCA, 0xD4, 0xD2, 0xB4, 0xCA, 0xD4, 0xD2, 0xB3, 0xCA, 0xB4, 0xC2, 0x94, 0xCA, 0xB4, 0x01, 0xCA, 0x94, 0x81, 0xD2, 0x94, 0xCA, 0x94, 0x02, 0xCA, 0x74, 0x8B, 0x7B, 0xD8, 0x0D, 0xFF, 0x06, 0x3F, 0x06, 0x1F, 0x06, 0x3F, 0x4C, 0xBB, 0x9B, 0x57, 0xD2, 0x33, 0xCA, 0x33, 0xCA, 0x53, 0x61, 0x50, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x05, 0x20, 0xAE, 0x16, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x1A, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x02, 0x08, 0xF3, 0x83, 0x10, 0xD2, 0x20, 0xAE, 0x10, 0xD2, 0x10, 0xD3, 0x01, + 0x08, 0xF3, 0x82, 0x18, 0xD0, 0x18, 0xAD, 0x10, 0xD2, 0x02, 0x08, 0xF3, 0x80, 0x10, 0xD0, 0x07, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x02, 0x08, 0xF3, 0x88, 0x10, 0xD2, 0x18, 0xAD, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xD3, 0x08, 0xF3, 0x18, 0xD0, 0x18, 0xAE, 0x10, 0xD2, 0x02, 0x08, 0xF3, 0x82, 0x10, 0xD1, 0x18, 0xAD, 0x10, 0xD1, 0x02, 0x08, 0xF3, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x10, 0xD2, 0x02, 0x08, 0xF3, 0x87, 0x10, 0xD1, 0x18, 0xAD, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xF3, 0x08, 0xF3, 0x10, 0xD0, 0x20, 0xAD, 0x08, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x25, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x02, 0x01, 0x19, 0x82, 0x00, 0xF9, 0x10, 0xD0, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x32, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x85, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x09, 0x17, 0x01, 0x01, 0x19, 0x80, 0x18, 0xCF, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xCD, 0x16, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x82, 0xC8, 0xBE, 0xC8, 0xDE, 0xC8, 0xBE, 0x01, 0x18, 0xAD, 0x02, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x05, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x16, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, + 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x02, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x80, 0x39, 0x12, 0x01, 0x41, 0x32, 0x82, 0x49, 0x33, 0x51, 0x53, 0xA2, 0xB5, 0x04, 0xD3, 0x75, 0x03, 0xD3, 0x55, 0x82, 0xD3, 0x35, 0xD3, 0x55, 0xD3, 0x34, 0x03, 0xD3, 0x35, 0x8B, 0xBB, 0x96, 0xA4, 0x37, 0x74, 0xF9, 0x4D, 0xBC, 0x2E, 0x7E, 0x0E, 0xDF, 0x55, 0x9B, 0x84, 0x98, 0xC3, 0x35, 0xD2, 0xF4, 0xD2, 0xD4, 0xD2, 0xF5, 0x01, 0xD2, 0xD4, 0x81, 0xD2, 0xB5, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x80, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x94, 0xBA, 0xB4, 0xBA, 0xF6, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x73, 0x9B, 0x76, 0x1D, 0xBE, 0x06, 0x1F, 0x06, 0x3F, 0x0D, 0xDF, 0x64, 0x3A, 0xB2, 0xD5, 0xCA, 0x54, 0xD2, 0x53, 0xCA, 0x53, 0xC2, 0x94, 0x59, 0xB1, 0x28, 0xCE, 0x28, 0xCF, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x06, 0x20, 0xAE, 0x15, 0x18, 0xAD, 0x85, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x86, 0x08, 0xF3, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAD, 0x00, 0xF6, 0x01, 0x01, 0x19, 0x89, 0x01, 0x1A, 0x10, 0xD3, 0x18, 0xAD, 0x01, 0x16, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD3, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x18, 0xAD, 0x10, 0xD3, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF9, 0x00, 0xF6, 0x18, 0xAD, 0x08, 0xF6, 0x01, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x10, 0xD3, 0x18, 0xCD, 0x08, + 0xF6, 0x02, 0x01, 0x19, 0x88, 0x10, 0xD3, 0x18, 0xAD, 0x08, 0xF3, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF7, 0x18, 0xAE, 0x00, 0xF6, 0x02, 0x01, 0x19, 0x82, 0x08, 0xF3, 0x18, 0xCD, 0x00, 0xF7, 0x01, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x82, 0x10, 0xD1, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x26, 0x18, 0xAD, 0x80, 0x18, 0xB0, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x10, 0xCF, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x31, 0x18, 0xAD, 0x80, 0x01, 0x1A, 0x06, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xAF, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xCD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x8B, 0x20, 0xAD, 0x40, 0xB0, 0xA0, 0x9A, 0xD0, 0xBE, 0xD0, 0x9E, 0xD0, 0xBE, 0xB8, 0x9C, 0x78, 0xB5, 0x28, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x20, 0xAD, 0x14, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x03, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x80, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, + 0x39, 0x11, 0x01, 0x41, 0x12, 0x84, 0x49, 0x32, 0x49, 0x33, 0x51, 0x73, 0xBB, 0x15, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x05, 0xD3, 0x55, 0x81, 0xD3, 0x35, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x01, 0xD3, 0x14, 0x83, 0xD3, 0x35, 0xD3, 0x15, 0xD3, 0x14, 0xD3, 0x15, 0x01, 0xD2, 0xF5, 0x88, 0xD2, 0xF4, 0x9B, 0xF7, 0x6D, 0x1A, 0x2E, 0x3D, 0x45, 0xBC, 0x94, 0x18, 0xD2, 0xD4, 0xCA, 0xD4, 0xD2, 0xD4, 0x02, 0xD2, 0xB4, 0x81, 0xCA, 0xB4, 0xD2, 0xB4, 0x02, 0xD2, 0x94, 0x84, 0xC2, 0xD4, 0x4C, 0xDB, 0x7B, 0xD8, 0x9B, 0x57, 0x44, 0xFC, 0x01, 0x06, 0x3F, 0x89, 0x1D, 0xBE, 0x83, 0xD8, 0xC2, 0x94, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x33, 0xCA, 0x53, 0xB2, 0xB5, 0x33, 0xB8, 0x28, 0xF0, 0x02, 0x28, 0xCF, 0x01, 0x20, 0xCF, 0x04, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x16, 0x18, 0xAD, 0x88, 0x18, 0x8E, 0x20, 0xCD, 0x10, 0xD1, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD1, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x17, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x01, 0x01, 0x1A, 0x84, 0x01, 0x19, 0x00, 0xF6, 0x18, 0xAD, 0x08, 0xF6, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x86, 0x10, 0xD3, 0x18, 0xAD, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x39, 0x01, 0x1A, 0x08, 0xF3, 0x07, 0x18, 0xAD, 0x86, 0x08, 0xF3, 0x01, 0x1A, 0x01, 0x39, 0x01, 0x19, 0x08, 0xF7, 0x18, 0xAD, 0x08, 0xF6, 0x02, 0x01, 0x19, 0x88, 0x10, 0xD3, 0x18, 0xAD, 0x08, 0xF7, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD3, 0x20, 0xAD, 0x08, 0xF3, 0x02, 0x01, 0x19, 0x88, + 0x08, 0xF6, 0x18, 0xAD, 0x08, 0xF6, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD3, 0x18, 0xAD, 0x08, 0xF7, 0x02, 0x01, 0x19, 0x81, 0x08, 0xF3, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xCF, 0x00, 0xF8, 0x01, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x10, 0xD0, 0x27, 0x18, 0xAD, 0x87, 0x18, 0xB0, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xCF, 0x18, 0xAD, 0x18, 0xCD, 0x33, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x86, 0x20, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x10, 0xD0, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x83, 0x20, 0xAE, 0x40, 0xB0, 0xD0, 0x7D, 0xD8, 0x7E, 0x01, 0xD8, 0x9F, 0x85, 0xE0, 0x7F, 0xD8, 0x9E, 0xD8, 0x9F, 0xB8, 0x7B, 0x28, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x20, 0xAD, 0x12, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x80, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x01, 0x28, 0xCF, 0x02, 0x28, 0xEF, 0x01, 0x30, 0xF0, 0x80, 0x31, 0x10, 0x02, 0x39, 0x11, 0x01, 0x41, 0x32, 0x82, 0x49, 0x33, + 0x51, 0x74, 0xBB, 0x14, 0x04, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x81, 0xD3, 0x35, 0xD3, 0x34, 0x02, 0xD3, 0x35, 0x82, 0xD3, 0x14, 0xD3, 0x35, 0xD3, 0x15, 0x01, 0xD3, 0x14, 0x80, 0xD3, 0x15, 0x03, 0xD2, 0xF4, 0x88, 0xD2, 0xF5, 0xD2, 0xD4, 0xC3, 0x35, 0x84, 0x78, 0x4D, 0x7B, 0x4D, 0x5B, 0xAB, 0x96, 0xD2, 0xB4, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x81, 0xCA, 0x94, 0xCA, 0xB4, 0x01, 0xD2, 0x94, 0x82, 0xD2, 0x73, 0xC2, 0xB4, 0x5C, 0x9A, 0x01, 0x06, 0x1F, 0x81, 0x06, 0x3F, 0x74, 0x19, 0x01, 0xD2, 0x73, 0x01, 0xCA, 0x53, 0x84, 0xD2, 0x33, 0xCA, 0x53, 0xAA, 0xF6, 0x15, 0x3C, 0x29, 0x51, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x04, 0x20, 0xAE, 0x15, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x03, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x18, 0xCD, 0x1A, 0x18, 0xAD, 0x8C, 0x08, 0xF3, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF6, 0x18, 0xAD, 0x08, 0xF6, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF3, 0x18, 0xAD, 0x00, 0xF6, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x10, 0xD3, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x10, 0xD3, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x08, 0xF6, 0x18, 0xAD, 0x00, 0xF6, 0x02, 0x01, 0x19, 0x82, 0x08, 0xF3, 0x18, 0xAD, 0x08, 0xF6, 0x02, 0x01, 0x19, 0x82, 0x08, 0xF3, 0x18, 0xAE, 0x08, 0xF3, 0x02, 0x01, 0x19, 0x83, 0x00, 0xF6, 0x18, 0xAE, 0x08, 0xF6, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x08, 0xF3, 0x18, 0xAD, 0x00, 0xF6, 0x02, 0x01, + 0x19, 0x81, 0x08, 0xF3, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x82, 0x01, 0x18, 0x10, 0xCF, 0x20, 0xAE, 0x25, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x18, 0xCF, 0x36, 0x18, 0xAD, 0x80, 0x08, 0xF6, 0x04, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x83, 0x10, 0xB0, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x88, 0x20, 0xAD, 0x20, 0x8D, 0x18, 0xAD, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xD3, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0xB0, 0x7A, 0x01, 0xE8, 0x5F, 0x8A, 0xE0, 0x7F, 0xE8, 0x5F, 0xE8, 0x7F, 0xE0, 0x7F, 0xE8, 0x5F, 0xE0, 0x7F, 0x98, 0x98, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x20, 0xAD, 0x17, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x18, 0xAD, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x07, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x80, 0x20, 0xCF, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x01, 0x30, 0xF0, 0x81, 0x31, 0x10, 0x39, 0x10, 0x01, 0x39, 0x11, 0x85, 0x41, 0x12, 0x41, 0x32, 0x49, 0x32, 0x51, 0x53, + 0xBB, 0x15, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x83, 0xD3, 0x54, 0xD3, 0x55, 0xD3, 0x35, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x82, 0xD3, 0x15, 0xCB, 0x34, 0xD3, 0x15, 0x01, 0xD3, 0x14, 0x86, 0xD3, 0x15, 0xD3, 0x14, 0xD2, 0xF4, 0xD2, 0xF5, 0xD2, 0xF4, 0xCA, 0xF4, 0xD2, 0xF4, 0x01, 0xD2, 0xD4, 0x80, 0xD2, 0xD5, 0x01, 0xD2, 0xD4, 0x85, 0xBB, 0x55, 0x74, 0x99, 0x35, 0xDC, 0x84, 0x39, 0xC2, 0xF4, 0xD2, 0xB4, 0x02, 0xD2, 0x94, 0x84, 0xCA, 0x93, 0xD2, 0x94, 0xD2, 0x74, 0xCA, 0x74, 0x9B, 0x76, 0x01, 0x06, 0x1F, 0x81, 0x83, 0xD8, 0xC2, 0x95, 0x03, 0xCA, 0x53, 0x82, 0x7B, 0xB8, 0x06, 0x3F, 0x2A, 0x34, 0x01, 0x30, 0xF0, 0x81, 0x30, 0xEF, 0x30, 0xF0, 0x04, 0x28, 0xCF, 0x04, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x10, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF9, 0x08, 0xD5, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x19, 0x18, 0xAD, 0x91, 0x18, 0xAE, 0x08, 0xF3, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF6, 0x18, 0xAD, 0x08, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF3, 0x18, 0xAD, 0x08, 0xF6, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF3, 0x07, 0x18, 0xAD, 0x87, 0x08, 0xF3, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF6, 0x18, 0xAD, 0x00, 0xF6, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x08, 0xF3, 0x18, 0xAE, 0x00, 0xF6, 0x02, 0x01, 0x19, 0x82, 0x08, 0xF3, 0x18, 0xAD, 0x08, 0xD4, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, + 0x08, 0xF6, 0x18, 0xAD, 0x08, 0xF6, 0x02, 0x01, 0x19, 0x82, 0x08, 0xF3, 0x18, 0xAD, 0x08, 0xF6, 0x01, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x04, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0x2B, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x00, 0xF9, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x31, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x04, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x82, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x83, 0x38, 0xB0, 0xF0, 0x5F, 0xE8, 0x3F, 0xF0, 0x3F, 0x01, 0xF0, 0x5F, 0x02, 0xF0, 0x3F, 0x81, 0xF0, 0x5F, 0xE8, 0x3F, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x11, 0x18, 0xAD, 0x04, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x04, 0x28, 0xCF, 0x80, 0x30, 0xEF, 0x02, 0x30, 0xF0, 0x02, 0x39, 0x11, 0x85, 0x41, 0x12, 0x41, 0x32, 0x49, 0x33, 0x51, 0x73, 0xBB, 0x35, 0xD3, 0x95, 0x03, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x04, 0xD3, 0x35, 0x81, 0xCB, 0x35, 0xD3, 0x15, 0x03, 0xD3, 0x14, 0x02, 0xD2, 0xF4, + 0x01, 0xD2, 0xF5, 0x82, 0xCA, 0xD4, 0xD2, 0xF4, 0xCA, 0xD4, 0x01, 0xD2, 0xD4, 0x81, 0xCA, 0xB4, 0xD2, 0xB4, 0x01, 0xCA, 0xB4, 0x83, 0x8B, 0xF8, 0x3D, 0x5C, 0x64, 0x99, 0xC2, 0xD4, 0x01, 0xD2, 0x94, 0x01, 0xCA, 0x74, 0x80, 0xD2, 0x74, 0x01, 0xCA, 0x74, 0x8B, 0x54, 0xBB, 0x5C, 0x9A, 0x35, 0x3D, 0x1D, 0xBE, 0x4C, 0xBB, 0x93, 0x77, 0x9B, 0x36, 0x44, 0xFC, 0x06, 0x1F, 0x1B, 0xF9, 0x39, 0x11, 0x39, 0x10, 0x03, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x03, 0x28, 0xCF, 0x04, 0x20, 0xCE, 0x04, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x02, 0x01, 0x19, 0x83, 0x00, 0xF6, 0x18, 0xAD, 0x08, 0xF7, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x86, 0x10, 0xD3, 0x18, 0xAD, 0x08, 0xF6, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF3, 0x07, 0x18, 0xAD, 0x86, 0x08, 0xF3, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF6, 0x18, 0xAD, 0x08, 0xF6, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x08, 0xF3, 0x18, 0xAE, 0x00, 0xF6, 0x01, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x10, 0xD3, 0x18, 0xAD, 0x10, 0xD3, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x82, 0x08, 0xF6, 0x18, 0xAD, 0x08, 0xF6, 0x02, 0x01, 0x19, 0x86, 0x08, 0xF3, 0x20, 0xAD, 0x08, 0xF6, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x02, 0x01, 0x1A, 0x80, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, + 0x01, 0x19, 0x00, 0xF9, 0x2C, 0x18, 0xAD, 0x81, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x82, 0x00, 0xF9, 0x10, 0xCF, 0x18, 0xAE, 0x31, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x03, 0x01, 0x19, 0x84, 0x08, 0xF4, 0x10, 0xF3, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x83, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x18, 0xCE, 0x12, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x50, 0x92, 0x01, 0xF8, 0x3F, 0x80, 0xF0, 0x3F, 0x03, 0xF8, 0x3F, 0x83, 0xF8, 0x1F, 0xF0, 0x3F, 0xF8, 0x3F, 0x50, 0x92, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x10, 0x18, 0xAD, 0x05, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x03, 0x30, 0xF0, 0x02, 0x39, 0x11, 0x84, 0x41, 0x12, 0x41, 0x32, 0x49, 0x32, 0x69, 0xB3, 0xC3, 0x55, 0x06, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x80, 0xD3, 0x15, 0x01, 0xD3, 0x35, 0x02, 0xD3, 0x14, 0x01, 0xD2, 0xF5, 0x03, 0xD2, 0xF4, 0x05, 0xD2, 0xD4, 0x81, 0xCA, 0xD4, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x94, 0xCA, 0xB4, 0xD2, 0x94, 0x9B, 0x97, 0x45, 0x3C, 0x6C, 0x59, 0xC2, 0xB4, 0xCA, 0x74, 0xD2, 0x74, 0xD2, 0x73, 0xCA, 0x73, + 0xD2, 0x73, 0xC2, 0x94, 0x6C, 0x39, 0xC2, 0x94, 0xCA, 0x53, 0x8B, 0x98, 0x4C, 0xBB, 0x0D, 0xFF, 0x06, 0x3F, 0x0D, 0x7E, 0x39, 0x72, 0x02, 0x39, 0x11, 0x80, 0x38, 0xF0, 0x02, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x03, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x0E, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x03, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x20, 0xAD, 0x1C, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x00, 0xF6, 0x18, 0xAD, 0x08, 0xF6, 0x02, 0x01, 0x19, 0x83, 0x10, 0xD3, 0x18, 0xAD, 0x00, 0xF6, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD3, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD3, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x08, 0xF6, 0x18, 0xAD, 0x08, 0xF6, 0x02, 0x01, 0x19, 0x88, 0x08, 0xF3, 0x18, 0xAD, 0x00, 0xF6, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x1A, 0x08, 0xF3, 0x18, 0xAD, 0x08, 0xF3, 0x02, 0x01, 0x19, 0x83, 0x00, 0xF6, 0x18, 0xAD, 0x00, 0xF6, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x86, 0x08, 0xF3, 0x18, 0xAD, 0x00, 0xF6, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD3, 0x01, 0x18, 0xAD, 0x81, 0x10, 0xD0, 0x00, 0xF9, 0x04, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x01, 0x17, 0x2D, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x10, 0xD0, 0x2B, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xCD, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x10, + 0xCF, 0x1C, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x13, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x50, 0x92, 0x09, 0xF8, 0x1F, 0x80, 0x50, 0x92, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x04, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x81, 0x28, 0xCF, 0x28, 0xCE, 0x03, 0x28, 0xCF, 0x02, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x85, 0x41, 0x11, 0x41, 0x12, 0x41, 0x32, 0x49, 0x33, 0x92, 0x54, 0xD3, 0x95, 0x03, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x80, 0xD3, 0x55, 0x04, 0xD3, 0x35, 0x03, 0xD3, 0x14, 0x02, 0xD2, 0xF4, 0x81, 0xD2, 0xF5, 0xD2, 0xF4, 0x01, 0xD2, 0xD4, 0x85, 0xCA, 0xD4, 0xD2, 0xD4, 0xCA, 0xD4, 0xD2, 0xD4, 0xD2, 0xB4, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x80, 0xCA, 0xB4, 0x02, 0xD2, 0x94, 0x90, 0xCA, 0x94, 0x9B, 0x77, 0x44, 0xDC, 0x73, 0xF9, 0xCA, 0x73, 0xCA, 0x74, 0xD2, 0x54, 0xCA, 0x73, 0xCA, 0x53, 0xC2, 0x94, 0x35, 0x1C, 0x6C, 0x3A, 0xC2, 0x94, 0xD2, 0x53, 0xCA, 0x34, 0x83, 0xB8, 0x5A, 0x55, 0x01, 0x41, 0x32, 0x80, 0x39, 0x12, 0x01, 0x39, 0x11, 0x80, 0x39, 0x10, 0x02, 0x30, 0xF0, + 0x81, 0x28, 0xF0, 0x28, 0xEF, 0x03, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x04, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x0F, 0x18, 0xAD, 0x05, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x1A, 0x18, 0xAD, 0x81, 0x08, 0xF3, 0x00, 0xFA, 0x01, 0x01, 0x19, 0x82, 0x08, 0xF6, 0x18, 0xAD, 0x00, 0xF6, 0x01, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x08, 0xF3, 0x18, 0xAE, 0x08, 0xF6, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x01, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x8F, 0x01, 0x1A, 0x08, 0xF7, 0x18, 0xAD, 0x01, 0x16, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x18, 0xAD, 0x08, 0xF6, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF3, 0x18, 0xAD, 0x08, 0xF3, 0x02, 0x01, 0x19, 0x82, 0x08, 0xF6, 0x18, 0xAD, 0x00, 0xF6, 0x01, 0x01, 0x19, 0x88, 0x01, 0x1A, 0x08, 0xF3, 0x18, 0xAD, 0x08, 0xF6, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD3, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x00, 0xF7, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x2E, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x00, 0xF9, 0x82, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xCF, 0x05, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAE, 0x24, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xB0, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xD0, 0x1B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x01, 0x17, 0x01, 0x01, 0x19, + 0x80, 0x00, 0xF9, 0x11, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x07, 0x18, 0xAD, 0x80, 0x40, 0x90, 0x09, 0xF8, 0x1F, 0x80, 0x28, 0xAF, 0x17, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x20, 0xAD, 0x01, 0x01, 0x19, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x80, 0x28, 0xF0, 0x02, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x80, 0x41, 0x12, 0x01, 0x41, 0x32, 0x81, 0x69, 0xD3, 0xC3, 0x55, 0x01, 0xD3, 0x95, 0x03, 0xD3, 0x75, 0x05, 0xD3, 0x55, 0x81, 0xD3, 0x35, 0xCB, 0x55, 0x02, 0xD3, 0x35, 0x80, 0xD3, 0x15, 0x03, 0xD3, 0x14, 0x04, 0xD2, 0xF4, 0x81, 0xCA, 0xD4, 0xD2, 0xF4, 0x01, 0xD2, 0xD4, 0x02, 0xD2, 0xB4, 0x02, 0xCA, 0xB4, 0x81, 0xD2, 0xB4, 0xCA, 0xB4, 0x02, 0xD2, 0x94, 0x85, 0xCA, 0x94, 0xD2, 0x74, 0xCA, 0x74, 0x8B, 0x78, 0x44, 0x7C, 0xA3, 0x16, 0x01, 0xD2, 0x53, 0x86, 0xCA, 0x54, 0xCA, 0x53, 0xC2, 0x94, 0x25, 0x7D, 0x0D, 0xDF, 0x83, 0xB8, 0xD2, 0x33, 0x01, 0xCA, 0x33, 0x81, 0xBA, 0x13, 0x79, 0x93, 0x01, 0x41, 0x12, 0x80, 0x41, 0x11, 0x01, 0x39, 0x11, 0x82, 0x38, 0xF0, 0x30, 0xF0, 0x28, 0xF0, 0x01, 0x30, 0xD0, 0x80, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x05, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAE, 0x0B, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, + 0xCD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF9, 0x08, 0xF5, 0x1D, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF3, 0x02, 0x01, 0x19, 0x82, 0x08, 0xF7, 0x18, 0xAD, 0x00, 0xF6, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x08, 0xF3, 0x18, 0xAD, 0x08, 0xF6, 0x02, 0x01, 0x19, 0x82, 0x08, 0xF3, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF3, 0x02, 0x01, 0x19, 0x88, 0x01, 0x16, 0x20, 0xAD, 0x08, 0xF6, 0x01, 0x1A, 0x00, 0xF9, 0x01, 0x19, 0x10, 0xF3, 0x18, 0xAD, 0x01, 0x16, 0x02, 0x01, 0x19, 0x82, 0x08, 0xF3, 0x18, 0xAD, 0x10, 0xD4, 0x01, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x08, 0xF6, 0x20, 0xAD, 0x00, 0xF6, 0x01, 0x01, 0x19, 0x87, 0x01, 0x1A, 0x08, 0xF3, 0x18, 0xAD, 0x08, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF3, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xD0, 0x00, 0xF7, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF4, 0x20, 0xCD, 0x2F, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x10, 0xD0, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x20, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x89, 0x10, 0xCF, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xCF, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAE, 0x31, 0x18, 0xAD, 0x84, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x04, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0xD0, 0x3C, 0x07, 0xF8, + 0x1F, 0x83, 0xD0, 0x3C, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x83, 0x00, 0xF9, 0x01, 0x19, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x04, 0x28, 0xCF, 0x03, 0x30, 0xF0, 0x02, 0x39, 0x11, 0x85, 0x41, 0x11, 0x41, 0x12, 0x51, 0x93, 0xAA, 0xD4, 0xD3, 0x75, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x05, 0xD3, 0x55, 0x02, 0xD3, 0x35, 0x01, 0xD3, 0x14, 0x80, 0xD3, 0x15, 0x03, 0xD3, 0x14, 0x80, 0xD3, 0x15, 0x03, 0xD2, 0xF4, 0x02, 0xD2, 0xD4, 0x80, 0xCA, 0xD4, 0x01, 0xD2, 0xB4, 0x82, 0xD2, 0xD4, 0xD2, 0xB4, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x81, 0xD2, 0x94, 0xD2, 0xB4, 0x01, 0xCA, 0x94, 0x90, 0xD2, 0x94, 0xCA, 0x74, 0xCA, 0x73, 0xCA, 0x74, 0xD2, 0x74, 0xC2, 0x95, 0x6B, 0xB9, 0x6B, 0x99, 0xCA, 0x54, 0xCA, 0x53, 0xD2, 0x54, 0xCA, 0x33, 0xC2, 0x94, 0x24, 0xFD, 0x06, 0x3F, 0x35, 0x1D, 0xB2, 0x95, 0x02, 0xCA, 0x13, 0x84, 0xB9, 0xF3, 0x79, 0x92, 0x41, 0x11, 0x41, 0x12, 0x38, 0xF1, 0x01, 0x39, 0x11, 0x80, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x02, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x05, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x0B, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCF, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x8C, 0x08, + 0xF3, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF6, 0x18, 0xAD, 0x00, 0xF6, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD3, 0x18, 0xAD, 0x00, 0xF6, 0x02, 0x01, 0x19, 0x81, 0x10, 0xD3, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x10, 0xD3, 0x02, 0x01, 0x19, 0x82, 0x08, 0xF7, 0x18, 0xAD, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x08, 0xF3, 0x18, 0xAE, 0x00, 0xF6, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x08, 0xF3, 0x18, 0xAD, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x08, 0xF6, 0x18, 0xAD, 0x08, 0xF6, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x86, 0x10, 0xD3, 0x18, 0xAD, 0x08, 0xF6, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x03, 0x18, 0xAD, 0x86, 0x18, 0xCE, 0x10, 0xD2, 0x10, 0xF3, 0x08, 0xF3, 0x10, 0xD1, 0x18, 0xAD, 0x18, 0xAE, 0x30, 0x18, 0xAD, 0x80, 0x18, 0xB0, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x18, 0xB0, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x25, 0x18, 0xAD, 0x87, 0x18, 0xCF, 0x01, 0x18, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x19, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x81, 0x00, 0xFA, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x02, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x40, 0x90, 0xF0, 0x3F, 0x06, 0xF8, 0x1F, 0x82, 0x60, 0x73, 0x20, 0xAD, 0x20, 0xAE, 0x13, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, + 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x82, 0x20, 0xCD, 0x20, 0xAE, 0x20, 0xAD, 0x03, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x80, 0x28, 0xCE, 0x03, 0x28, 0xCF, 0x81, 0x30, 0xEF, 0x28, 0xF0, 0x02, 0x30, 0xF0, 0x82, 0x39, 0x10, 0x39, 0x11, 0x39, 0x12, 0x01, 0x41, 0x12, 0x83, 0x82, 0x33, 0xCB, 0x55, 0xD3, 0x75, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x03, 0xD3, 0x55, 0x04, 0xD3, 0x35, 0x82, 0xD3, 0x34, 0xD3, 0x14, 0xD3, 0x35, 0x01, 0xD3, 0x14, 0x05, 0xD2, 0xF4, 0x02, 0xD2, 0xD4, 0x81, 0xCA, 0xD4, 0xD2, 0xD4, 0x03, 0xD2, 0xB4, 0x80, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x80, 0xCA, 0xB4, 0x02, 0xD2, 0x94, 0x02, 0xCA, 0x74, 0x01, 0xCA, 0x73, 0x01, 0xCA, 0x53, 0x84, 0xCA, 0x74, 0xAA, 0xB6, 0x5B, 0x7A, 0xBA, 0x74, 0xCA, 0x53, 0x01, 0xCA, 0x33, 0x86, 0xC2, 0x54, 0x4B, 0xFB, 0x05, 0x9F, 0x0D, 0x7F, 0x8B, 0x57, 0xC9, 0xF3, 0xCA, 0x13, 0x01, 0xC9, 0xF3, 0x86, 0xA9, 0xB3, 0x59, 0x52, 0x41, 0x12, 0x39, 0x31, 0x39, 0x11, 0x31, 0x11, 0x31, 0x10, 0x01, 0x30, 0xF0, 0x81, 0x28, 0xF0, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x05, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x0D, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xD3, 0x10, 0xD2, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x1C, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x01, 0x10, 0xD3, 0x83, 0x08, 0xF3, 0x10, 0xD2, 0x18, 0xAD, 0x10, 0xD2, + 0x02, 0x08, 0xF3, 0x82, 0x18, 0xD1, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x82, 0x10, 0xD3, 0x10, 0xB0, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x10, 0xB0, 0x10, 0xD3, 0x01, 0x08, 0xF3, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x89, 0x10, 0xD3, 0x10, 0xD0, 0x18, 0xAD, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xD3, 0x08, 0xF3, 0x10, 0xD0, 0x18, 0xAD, 0x10, 0xD0, 0x01, 0x08, 0xF3, 0x84, 0x10, 0xD3, 0x10, 0xD2, 0x18, 0xAD, 0x10, 0xD2, 0x10, 0xD4, 0x01, 0x08, 0xF3, 0x82, 0x18, 0xD1, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x81, 0x10, 0xD3, 0x18, 0xD1, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x30, 0x18, 0xAD, 0x89, 0x18, 0xB0, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x23, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x85, 0x01, 0x18, 0x10, 0xCF, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x1E, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x13, 0x18, 0xAD, 0x89, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x81, 0x40, 0x91, 0xE0, 0x1D, 0x04, 0xF8, 0x1F, 0x80, 0x70, 0x74, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x84, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x10, 0xD2, 0x20, 0xCD, 0x02, 0x18, + 0xAD, 0x83, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x10, 0xD1, 0x01, 0x01, 0x19, 0x86, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xCD, 0x20, 0xAE, 0x20, 0xCD, 0x05, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x82, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xEF, 0x03, 0x30, 0xF0, 0x80, 0x39, 0x10, 0x01, 0x39, 0x11, 0x85, 0x39, 0x12, 0x41, 0x32, 0x49, 0x53, 0xB2, 0xF4, 0xD3, 0x95, 0xDB, 0x95, 0x05, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x83, 0xD3, 0x34, 0x84, 0xF9, 0x46, 0x7D, 0x1F, 0x5E, 0x02, 0x07, 0xDF, 0x08, 0x07, 0xBF, 0x88, 0x07, 0x9F, 0x1F, 0x1E, 0x36, 0x7D, 0x36, 0x7C, 0x4D, 0xDB, 0x65, 0x3A, 0x84, 0x98, 0x9B, 0xF7, 0xC2, 0xF5, 0x03, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x84, 0xCA, 0x74, 0xCA, 0x73, 0xD2, 0x53, 0xD2, 0x54, 0xCA, 0x74, 0x02, 0xCA, 0x53, 0x8B, 0xD2, 0x53, 0x72, 0xD9, 0xAA, 0x76, 0xCA, 0x33, 0xD2, 0x33, 0xCA, 0x13, 0xCA, 0x33, 0x1C, 0x7E, 0x05, 0x9F, 0x05, 0xFF, 0x5C, 0x7A, 0xCA, 0x13, 0x02, 0xC9, 0xF3, 0x82, 0xD1, 0xF3, 0x91, 0x93, 0x49, 0x11, 0x02, 0x39, 0x11, 0x80, 0x31, 0x10, 0x02, 0x30, 0xF0, 0x01, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x04, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x0A, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x83, 0x20, 0x8D, 0x18, 0xAD, 0x18, + 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x2D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xD0, 0x00, 0xF9, 0x05, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x26, 0x01, 0x19, 0x81, 0x01, 0x18, 0x10, 0xB0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x1E, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD1, 0x01, 0x08, 0xF3, 0x82, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x84, 0x70, 0x74, 0x90, 0x77, 0x88, 0x56, 0x88, 0x76, 0x38, 0x8F, 0x03, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x11, 0x18, 0xAD, 0x87, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xCE, 0x08, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x08, 0xF7, 0x18, 0xCE, 0x20, 0xAD, 0x03, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x06, 0x28, 0xCF, 0x80, 0x30, 0xEF, 0x02, 0x30, 0xF0, 0x01, 0x31, 0x11, 0x86, 0x38, 0xF1, 0x39, 0x11, 0x41, 0x11, 0x41, 0x32, 0x61, 0x93, 0xC3, 0x55, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x02, 0xD3, + 0x75, 0x02, 0xD3, 0x55, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x81, 0xB3, 0xD6, 0x27, 0x1D, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x81, 0x07, 0x7F, 0x07, 0x9F, 0x06, 0x07, 0x7F, 0x80, 0x07, 0x5F, 0x06, 0x07, 0x7F, 0x01, 0x07, 0x9F, 0x83, 0x1E, 0xFE, 0x46, 0x1C, 0x6D, 0x1A, 0x9B, 0xD6, 0x02, 0xCA, 0x74, 0x95, 0xCA, 0x73, 0xD2, 0x74, 0xCA, 0x74, 0xCA, 0x53, 0xD2, 0x54, 0xCA, 0x54, 0xD2, 0x53, 0xCA, 0x53, 0xCA, 0x33, 0xA2, 0x75, 0x9A, 0x76, 0xCA, 0x33, 0xCA, 0x13, 0xCA, 0x33, 0x9A, 0xD6, 0x04, 0xFF, 0x05, 0xBF, 0x06, 0x3F, 0x35, 0x7C, 0xC2, 0x54, 0xC9, 0xF3, 0xD1, 0xF3, 0x01, 0xC9, 0xF3, 0x82, 0xB9, 0xD3, 0x61, 0x52, 0x41, 0x11, 0x01, 0x39, 0x11, 0x80, 0x38, 0xF0, 0x02, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x07, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x1F, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x33, 0x18, 0xAD, 0x82, 0x18, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x01, 0x01, + 0x1A, 0x20, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x00, 0xF8, 0x10, 0xD0, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x1B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x80, 0x20, 0x8E, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x20, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x17, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x03, 0x01, 0x19, 0x8D, 0x01, 0x1A, 0x00, 0xF9, 0x08, 0xF5, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF4, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x01, 0x17, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x02, 0x20, 0xCE, 0x80, 0x20, 0xCD, 0x03, 0x20, 0xCE, 0x06, 0x28, 0xCF, 0x80, 0x30, 0xEF, 0x02, 0x30, 0xF0, 0x81, 0x38, 0xF0, 0x39, 0x10, 0x02, 0x39, 0x11, 0x83, 0x41, 0x12, 0x41, 0x32, 0x61, 0x93, 0xCB, 0x55, 0x01, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x84, 0xCB, 0x55, 0xD3, 0x34, 0xCB, 0x55, 0xAC, 0x17, 0x0F, 0xBF, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xBF, 0x80, 0x07, 0x7F, 0x01, 0x07, 0x5F, 0x10, 0x07, 0x3F, 0x01, 0x07, 0x5F, 0x01, 0x07, 0x7F, 0x85, 0x07, 0x9F, 0x07, 0xBF, 0x36, 0x5C, 0x74, 0xB9, 0xB3, 0x15, 0xCA, 0x73, 0x01, 0xCA, 0x54, 0x02, 0xCA, 0x53, 0x85, 0xCA, 0x33, 0xD2, 0x33, 0xCA, 0x33, 0xB2, 0x35, 0xAA, 0x16, 0xCA, 0x33, 0x01, 0xCA, 0x13, 0x8F, 0x7B, 0x37, 0x05, + 0x5F, 0x05, 0xFF, 0x06, 0x7F, 0x25, 0xDD, 0xA2, 0xF5, 0xD1, 0xD3, 0xC9, 0xF3, 0xC9, 0xD3, 0xC9, 0xD2, 0xC9, 0xD3, 0x91, 0x93, 0x49, 0x32, 0x41, 0x11, 0x39, 0x11, 0x38, 0xF0, 0x02, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x04, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x3C, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0F, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0A, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x33, 0x18, 0xAD, 0x83, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x19, 0x01, 0x1A, 0x29, 0x01, 0x19, 0x80, 0x18, 0xB0, 0x25, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x13, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x85, 0x10, 0xD3, 0x18, 0xCE, 0x20, 0xAD, 0x10, 0xF4, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x20, 0xAE, 0x07, 0x20, 0xCE, 0x05, 0x28, 0xCF, 0x80, 0x30, 0xEF, 0x03, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x02, 0x39, 0x11, 0x80, 0x41, 0x11, 0x01, 0x41, 0x32, 0x81, 0x61, 0xB3, 0xCB, 0x75, 0x02, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x01, 0xD3, 0x35, + 0x89, 0x8C, 0xB8, 0x0F, 0xBF, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0x9F, 0x07, 0x7F, 0x07, 0x5F, 0x07, 0x3F, 0x07, 0x1F, 0x06, 0x06, 0xFF, 0x81, 0x06, 0xDF, 0x06, 0xFF, 0x02, 0x06, 0xDF, 0x03, 0x06, 0xFF, 0x02, 0x07, 0x1F, 0x03, 0x07, 0x3F, 0x01, 0x07, 0x5F, 0x83, 0x07, 0x1F, 0x2D, 0xFD, 0x74, 0x19, 0xB2, 0xB5, 0x01, 0xCA, 0x53, 0x03, 0xCA, 0x33, 0x82, 0xD2, 0x33, 0xCA, 0x14, 0xA2, 0x15, 0x01, 0xCA, 0x13, 0x88, 0xC9, 0xF3, 0x83, 0x38, 0x05, 0xBF, 0x06, 0x3F, 0x06, 0xBF, 0x0E, 0x9F, 0xAA, 0xD5, 0xC9, 0xD3, 0xC9, 0xD2, 0x01, 0xC9, 0xD3, 0x82, 0xC9, 0xB2, 0xB1, 0xB2, 0x59, 0x31, 0x02, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xF0, 0x01, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x04, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x1D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x7F, 0x18, 0xAD, 0x48, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x03, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x86, 0x18, 0xCF, 0x01, + 0x1A, 0x01, 0x19, 0x10, 0xD0, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x06, 0x20, 0xCE, 0x80, 0x20, 0xCF, 0x04, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x03, 0x30, 0xF0, 0x82, 0x38, 0xF0, 0x31, 0x11, 0x38, 0xF1, 0x01, 0x39, 0x11, 0x01, 0x41, 0x12, 0x82, 0x41, 0x32, 0x61, 0x93, 0xCB, 0x75, 0x02, 0xD3, 0x95, 0x04, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x80, 0xD3, 0x54, 0x01, 0xD3, 0x55, 0x8B, 0xC3, 0x95, 0x5D, 0xFA, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0x9F, 0x07, 0x7F, 0x07, 0x5F, 0x07, 0x3F, 0x07, 0x1F, 0x06, 0xFF, 0x06, 0xDF, 0x01, 0x06, 0xBF, 0x03, 0x06, 0x9F, 0x01, 0x06, 0xBF, 0x06, 0x06, 0x9F, 0x02, 0x06, 0xBF, 0x01, 0x06, 0xDF, 0x02, 0x06, 0xFF, 0x01, 0x07, 0x1F, 0x85, 0x06, 0xFF, 0x06, 0xBF, 0x06, 0x5F, 0x05, 0xBF, 0x44, 0x3C, 0x8A, 0xF7, 0x03, 0xCA, 0x33, 0x02, 0xCA, 0x13, 0x90, 0x99, 0xB6, 0xC9, 0xF3, 0xCA, 0x13, 0xC9, 0xF3, 0x4C, 0x3B, 0x06, 0x1F, 0x06, 0x9F, 0x06, 0xFF, 0x0E, 0xBE, 0xA2, 0xD5, 0xC9, 0xB3, 0xC9, 0xD3, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0xB2, 0xC1, 0xB3, 0x71, 0x52, 0x01, 0x39, 0x11, 0x80, 0x31, 0x10, 0x01, 0x30, 0xF0, 0x81, 0x28, 0xF0, 0x30, 0xD0, 0x02, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x07, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCE, 0x08, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x61, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x7F, 0x18, 0xAD, 0x51, + 0x18, 0xAD, 0x03, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x20, 0xAE, 0x20, 0xAD, 0x18, 0xCE, 0x01, 0x01, 0x19, 0x87, 0x10, 0xD3, 0x20, 0xCE, 0x20, 0xAE, 0x10, 0xF4, 0x01, 0x19, 0x01, 0x1A, 0x20, 0xCE, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x83, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xEF, 0x30, 0xEF, 0x04, 0x30, 0xF0, 0x02, 0x39, 0x11, 0x89, 0x41, 0x12, 0x39, 0x12, 0x41, 0x12, 0x41, 0x32, 0x41, 0x33, 0x51, 0x53, 0xBB, 0x35, 0xD3, 0x95, 0xD3, 0x96, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x8C, 0xBB, 0xD6, 0x5D, 0xFB, 0x0F, 0xBF, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0x7F, 0x07, 0x5F, 0x07, 0x3F, 0x07, 0x1F, 0x06, 0xFF, 0x06, 0xDF, 0x06, 0xBF, 0x01, 0x06, 0x9F, 0x02, 0x06, 0x7F, 0x09, 0x06, 0x5F, 0x80, 0x06, 0x7F, 0x01, 0x06, 0x5F, 0x01, 0x06, 0x7F, 0x02, 0x06, 0x9F, 0x01, 0x06, 0xBF, 0x88, 0x06, 0xDF, 0x06, 0xBF, 0x06, 0x9F, 0x06, 0x5F, 0x05, 0xFF, 0x05, 0x3F, 0x04, 0x9F, 0x1B, 0xBE, 0x82, 0x98, 0x04, 0xCA, 0x13, 0x81, 0xD1, 0xF3, 0x99, 0xB6, 0x01, 0xC9, 0xF3, 0x87, 0xB2, 0x54, 0x0D, 0x9F, 0x06, 0x7F, 0x06, 0xDF, 0x06, 0xFF, 0x0E, 0xBF, 0xA2, 0xD5, 0xC9, 0xD2, 0x02, 0xC9, 0xB3, 0x82, 0xC9, 0xB2, 0xC9, 0xB3, 0x81, 0x52, 0x02, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x82, 0x28, 0xF0, 0x30, 0xF0, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x04, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x05, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x02, 0x01, 0x19, 0x80, 0x00, 0xF9, + 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x62, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x7F, 0x18, 0xAD, 0x4C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x85, 0x01, 0x1A, 0x08, 0xF5, 0x18, 0xAE, 0x20, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x88, 0x09, 0x18, 0x09, 0x17, 0x01, 0x39, 0x01, 0x1A, 0x10, 0xF5, 0x20, 0xCE, 0x20, 0xCF, 0x28, 0xCF, 0x28, 0xCE, 0x04, 0x28, 0xCF, 0x81, 0x28, 0xEF, 0x30, 0xEF, 0x02, 0x30, 0xF0, 0x82, 0x31, 0x10, 0x30, 0xF0, 0x38, 0xF0, 0x02, 0x39, 0x11, 0x01, 0x41, 0x12, 0x87, 0x41, 0x32, 0x49, 0x32, 0x41, 0x33, 0x49, 0x33, 0xBB, 0x35, 0xD3, 0x95, 0xD3, 0x96, 0xD3, 0x95, 0x05, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x82, 0xAC, 0x37, 0x6D, 0x9A, 0x2E, 0xFE, 0x01, 0x07, 0xFF, 0x89, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0x9F, 0x07, 0x5F, 0x07, 0x3F, 0x07, 0x1F, 0x06, 0xDF, 0x06, 0xBF, 0x06, 0x9F, 0x06, 0x7F, 0x01, 0x06, 0x5F, 0x01, 0x06, 0x3F, 0x08, 0x06, 0x1F, 0x80, 0x05, 0xFF, 0x05, 0x06, 0x1F, 0x02, 0x06, 0x3F, 0x03, 0x06, 0x5F, 0x01, 0x06, 0x7F, 0x87, 0x06, 0x3F, 0x05, 0xDF, 0x05, 0x5F, 0x04, 0xBF, 0x04, 0x3F, 0x03, 0x7F, 0x1A, 0xBE, 0x7A, 0x18, 0x02, 0xCA, 0x13, 0x8B, 0xC9, 0xF3, 0xC1, 0xF4, 0x71, 0x78, 0xC9, 0xF2, 0xD1, 0xF3, 0x83, 0x38, 0x06, 0x1F, 0x06, 0xBF, 0x06, 0xFF, 0x07, 0x1F, 0x0E, 0xDF, 0xA2, 0xD5, 0x01, 0xC9, 0xB3, 0x80, 0xC9, 0xB2, 0x01, 0xC9, 0x92, 0x84, 0xC9, 0x93, 0x91, 0x72, 0x39, 0x11, 0x39, 0x10, 0x31, 0x10, + 0x02, 0x30, 0xF0, 0x01, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x62, 0x01, 0x1A, 0x80, 0x01, 0x19, 0x7F, 0x18, 0xAD, 0x4C, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x02, 0x18, 0xAE, 0x81, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x81, 0x18, 0xCE, 0x09, 0x18, 0x01, 0x01, 0x1A, 0x85, 0x09, 0x19, 0x01, 0x1A, 0x09, 0x17, 0x20, 0xCF, 0x28, 0xAE, 0x20, 0xCF, 0x02, 0x28, 0xCF, 0x02, 0x28, 0xEF, 0x80, 0x30, 0xEF, 0x02, 0x30, 0xF0, 0x01, 0x38, 0xF0, 0x03, 0x39, 0x11, 0x83, 0x39, 0x12, 0x41, 0x12, 0x41, 0x32, 0x49, 0x32, 0x01, 0x49, 0x33, 0x81, 0x49, 0x53, 0xA2, 0xB4, 0x01, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x86, 0xD3, 0x55, 0xD3, 0x75, 0xD3, 0x55, 0xC3, 0xB6, 0x85, 0x19, 0x4E, 0x3C, 0x0F, 0x9F, 0x03, 0x07, 0xFF, 0x81, 0x07, 0xDF, 0x07, 0x9F, 0x01, 0x07, 0x7F, 0x87, 0x07, 0x5F, 0x07, 0x3F, 0x06, 0xFF, 0x06, 0xBF, 0x06, 0x9F, 0x06, 0x7F, 0x06, 0x5F, 0x06, 0x3F, 0x01, 0x06, 0x1F, 0x80, 0x05, 0xFF, 0x03, 0x05, 0xDF, 0x01, 0x05, 0xBF, 0x01, 0x05, 0xDF, 0x05, 0x05, 0xBF, 0x03, 0x05, 0xDF, 0x01, 0x05, 0xFF, 0x05, 0x06, 0x1F, 0x92, 0x05, 0xDF, 0x05, 0x7F, 0x04, 0xFF, 0x04, 0x7F, 0x03, 0xDF, 0x03, 0x1F, 0x02, 0x5F, 0x19, 0xDE, 0x79, + 0xB8, 0xC9, 0xF3, 0xCA, 0x13, 0xC9, 0xF3, 0xB9, 0xD3, 0xA1, 0xB5, 0xC9, 0xD3, 0xC9, 0xF3, 0x4C, 0x5B, 0x06, 0x5F, 0x06, 0xDF, 0x01, 0x07, 0x1F, 0x81, 0x0E, 0xDF, 0xA2, 0xB5, 0x01, 0xC9, 0xB3, 0x01, 0xC9, 0x92, 0x85, 0xC9, 0x93, 0xC9, 0x92, 0xB1, 0x72, 0x49, 0x11, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xEF, 0x80, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x09, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x67, 0x01, 0x19, 0x7F, 0x18, 0xAD, 0x52, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x10, 0xF3, 0x84, 0x10, 0xD2, 0x20, 0xAE, 0x18, 0xAE, 0x20, 0xAE, 0x18, 0xCE, 0x02, 0x20, 0xCE, 0x85, 0x18, 0xF2, 0x10, 0xF4, 0x11, 0x14, 0x18, 0xF3, 0x20, 0xCF, 0x28, 0xCE, 0x03, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x80, 0x30, 0xEF, 0x02, 0x30, 0xF0, 0x81, 0x31, 0x10, 0x38, 0xF0, 0x02, 0x39, 0x11, 0x82, 0x39, 0x12, 0x39, 0x11, 0x41, 0x12, 0x01, 0x41, 0x32, 0x02, 0x49, 0x33, 0x81, 0x49, 0x53, 0xA2, 0xB5, 0x02, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x83, 0xC3, 0xB5, 0x7D, 0x59, 0x36, 0xBD, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x01, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x01, 0x07, 0x7F, 0x84, 0x07, 0x1F, 0x06, 0xDE, 0x06, 0x9E, 0x06, 0x7E, 0x06, 0x5E, 0x01, 0x06, 0x3F, 0x82, 0x06, 0x1E, 0x05, 0xFF, 0x05, 0xDF, 0x01, 0x05, 0xBF, 0x02, 0x05, 0x9F, 0x0B, 0x05, 0x7F, 0x02, 0x05, 0x9F, 0x02, 0x05, 0xBF, 0x02, 0x05, 0xDF, 0x8A, 0x05, 0xBF, 0x05, 0x7F, + 0x04, 0xFF, 0x04, 0x9F, 0x03, 0xFF, 0x03, 0x7F, 0x02, 0xBF, 0x02, 0x1F, 0x01, 0x7F, 0x21, 0x3D, 0x99, 0x96, 0x01, 0xC9, 0xF3, 0x8A, 0xB9, 0xD4, 0x99, 0xB6, 0xC9, 0xD3, 0xC2, 0x13, 0x0D, 0xBF, 0x06, 0x9F, 0x06, 0xFF, 0x07, 0x1F, 0x07, 0x3F, 0x0E, 0xFF, 0xA2, 0xB5, 0x03, 0xC9, 0x92, 0x01, 0xC9, 0x72, 0x83, 0xA9, 0x72, 0x49, 0x11, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x64, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x7F, 0x18, 0xAD, 0x4D, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xAD, 0x04, 0x20, 0xAD, 0x83, 0x20, 0xAE, 0x18, 0xCE, 0x20, 0xAE, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x84, 0x20, 0xAF, 0x20, 0xCE, 0x28, 0xCE, 0x28, 0xCF, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x03, 0x30, 0xF0, 0x81, 0x31, 0x10, 0x39, 0x10, 0x03, 0x39, 0x11, 0x84, 0x41, 0x11, 0x41, 0x31, 0x41, 0x12, 0x41, 0x32, 0x49, 0x13, 0x01, 0x49, 0x33, 0x89, 0x49, 0x53, 0x51, 0x54, 0xAA, 0xB5, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x75, 0x94, 0xD8, 0x46, 0x7C, 0x04, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x01, 0x07, 0x7F, 0x81, 0x06, 0xDE, 0x06, 0xBE, 0x01, 0x06, 0x7E, 0x83, 0x06, 0x5E, 0x06, 0x3E, 0x06, 0x1E, 0x05, 0xFE, 0x01, 0x05, + 0xDE, 0x81, 0x05, 0xBE, 0x05, 0x9F, 0x01, 0x05, 0x7F, 0x01, 0x05, 0x5F, 0x0C, 0x05, 0x3F, 0x02, 0x05, 0x5F, 0x04, 0x05, 0x7F, 0x93, 0x05, 0x5F, 0x04, 0xFF, 0x04, 0xBF, 0x04, 0x1F, 0x03, 0x9F, 0x03, 0x1F, 0x02, 0x5F, 0x01, 0xBF, 0x01, 0x3F, 0x00, 0xBF, 0x40, 0xFB, 0xB1, 0xB5, 0xC9, 0xD2, 0xB1, 0xD5, 0xB1, 0xD4, 0xC9, 0xB3, 0x63, 0x99, 0x06, 0x1F, 0x06, 0xDF, 0x07, 0x1F, 0x01, 0x07, 0x3F, 0x81, 0x0E, 0xFF, 0xA2, 0xB5, 0x01, 0xC9, 0x92, 0x01, 0xC9, 0x72, 0x84, 0xC9, 0x92, 0xC9, 0x72, 0xB1, 0x52, 0x41, 0x11, 0x39, 0x11, 0x02, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x02, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x80, 0x20, 0xAE, 0x03, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x01, 0x1A, 0x05, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x60, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x7F, 0x18, 0xAD, 0x4D, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x80, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x82, 0x20, 0xCE, 0x20, 0xCD, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x82, 0x28, 0xCE, 0x20, 0xCF, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x84, 0x28, 0xEF, 0x30, 0xEF, 0x30, 0xD0, 0x28, 0xF0, 0x31, 0x10, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xF1, 0x04, 0x39, 0x11, 0x80, 0x41, 0x12, 0x02, 0x41, 0x32, 0x81, 0x49, 0x32, 0x49, 0x33, 0x01, 0x49, 0x53, 0x82, 0x51, 0x53, 0x4A, 0x16, 0xA2, 0xB5, 0x02, 0xD3, 0x95, 0x84, 0xD3, 0x75, 0x85, 0x39, 0x1F, 0x5E, 0x07, 0xFF, + 0x07, 0xDF, 0x07, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x86, 0x07, 0x9F, 0x07, 0xBF, 0x07, 0x5F, 0x06, 0xBE, 0x06, 0x9D, 0x06, 0x7D, 0x06, 0x5D, 0x01, 0x06, 0x3D, 0x81, 0x06, 0x1D, 0x05, 0xFE, 0x01, 0x05, 0xDE, 0x83, 0x05, 0xBE, 0x05, 0x9E, 0x05, 0x7E, 0x05, 0x5F, 0x01, 0x05, 0x3F, 0x01, 0x05, 0x1F, 0x0A, 0x04, 0xFF, 0x05, 0x05, 0x1F, 0x01, 0x05, 0x3F, 0x94, 0x05, 0x1F, 0x04, 0xDF, 0x04, 0xBF, 0x04, 0x3F, 0x03, 0xDF, 0x03, 0x5F, 0x02, 0xBF, 0x02, 0x1F, 0x01, 0x7F, 0x00, 0xFF, 0x00, 0x9F, 0x08, 0x7F, 0x71, 0x19, 0xC9, 0xD3, 0xB1, 0xD4, 0xB9, 0xD3, 0xC9, 0xB3, 0x1C, 0xFE, 0x06, 0x5F, 0x06, 0xFF, 0x07, 0x1F, 0x01, 0x07, 0x3F, 0x8B, 0x1E, 0xBE, 0xB9, 0xF3, 0xC9, 0x93, 0xC9, 0x72, 0xC9, 0x92, 0xC9, 0x72, 0xC9, 0x73, 0xC9, 0x52, 0xB1, 0x52, 0x41, 0x11, 0x39, 0x10, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x03, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x39, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x5F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x7F, 0x18, 0xAD, 0x4C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x20, 0xCD, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xCF, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xCF, 0x02, 0x28, 0xCF, 0x81, 0x28, 0xEF, 0x28, 0xCF, 0x04, 0x30, 0xF0, 0x80, 0x39, 0x10, 0x03, + 0x39, 0x11, 0x02, 0x41, 0x32, 0x80, 0x49, 0x32, 0x02, 0x49, 0x33, 0x84, 0x49, 0x53, 0x4A, 0x15, 0x34, 0x39, 0x16, 0xBD, 0x85, 0x19, 0x02, 0xD3, 0x95, 0x81, 0x94, 0xD8, 0x1F, 0x5E, 0x01, 0x07, 0xDF, 0x07, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x03, 0x07, 0xBF, 0x80, 0x07, 0x1E, 0x01, 0x06, 0x9D, 0x81, 0x06, 0x7D, 0x06, 0x5D, 0x01, 0x06, 0x3D, 0x89, 0x06, 0x1D, 0x05, 0xFD, 0x05, 0xDD, 0x05, 0xBD, 0x05, 0x9D, 0x05, 0x9E, 0x05, 0x7E, 0x05, 0x5E, 0x05, 0x3E, 0x05, 0x1E, 0x01, 0x04, 0xFF, 0x80, 0x04, 0xDF, 0x02, 0x04, 0xBF, 0x04, 0x04, 0x9F, 0x05, 0x04, 0xBF, 0x81, 0x04, 0xDF, 0x04, 0xBF, 0x02, 0x04, 0xDF, 0x98, 0x04, 0xBF, 0x04, 0x9F, 0x04, 0x3F, 0x03, 0xDF, 0x03, 0x5F, 0x02, 0xFF, 0x02, 0x5F, 0x01, 0xBF, 0x01, 0x3F, 0x00, 0xDF, 0x00, 0x7F, 0x00, 0x5F, 0x18, 0x5E, 0x89, 0x57, 0x61, 0xB9, 0xC9, 0xD3, 0x9A, 0x96, 0x05, 0x9F, 0x06, 0x7F, 0x06, 0xFF, 0x07, 0x1F, 0x07, 0x3F, 0x07, 0x5F, 0x26, 0x7D, 0xB9, 0xD3, 0x04, 0xC9, 0x72, 0x83, 0xC9, 0x52, 0xB1, 0x52, 0x41, 0x11, 0x38, 0xF1, 0x02, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xCF, 0x00, 0xF7, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x83, 0x00, 0xF6, 0x18, 0xCE, 0x18, 0xAD, 0x20, 0xAE, 0x65, 0x18, 0xAD, 0x45, 0x01, 0x19, 0x85, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xD0, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x34, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, + 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x41, 0x18, 0xAD, 0x02, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x82, 0x20, 0xCF, 0x28, 0xCF, 0x20, 0xCF, 0x03, 0x28, 0xCF, 0x03, 0x30, 0xF0, 0x80, 0x31, 0x10, 0x01, 0x38, 0xF1, 0x01, 0x39, 0x11, 0x83, 0x41, 0x11, 0x41, 0x12, 0x41, 0x32, 0x41, 0x12, 0x01, 0x49, 0x32, 0x01, 0x49, 0x33, 0x85, 0x69, 0xB4, 0x63, 0x36, 0x6C, 0xD9, 0x4E, 0x5B, 0x07, 0xDF, 0x85, 0x39, 0x01, 0xD3, 0x95, 0x81, 0xBC, 0x17, 0x3E, 0x9C, 0x02, 0x07, 0xDF, 0x0A, 0x07, 0xFF, 0x81, 0x07, 0xDF, 0x07, 0xFF, 0x02, 0x07, 0xDF, 0x82, 0x07, 0xBF, 0x07, 0xDF, 0x06, 0xBD, 0x01, 0x06, 0x9C, 0x80, 0x06, 0x7C, 0x01, 0x06, 0x5C, 0x8F, 0x06, 0x3C, 0x06, 0x1C, 0x05, 0xFC, 0x05, 0xDC, 0x05, 0xBC, 0x05, 0xBD, 0x05, 0x9D, 0x05, 0x7D, 0x05, 0x5D, 0x05, 0x3E, 0x05, 0x1E, 0x04, 0xFE, 0x04, 0xDE, 0x04, 0xBE, 0x04, 0xBF, 0x04, 0x9F, 0x02, 0x04, 0x7F, 0x02, 0x04, 0x5F, 0x09, 0x04, 0x7F, 0x8C, 0x04, 0x9F, 0x04, 0x7F, 0x04, 0x5F, 0x04, 0x1F, 0x03, 0xDF, 0x03, 0x7F, 0x03, 0x1F, 0x02, 0x9F, 0x02, 0x1F, 0x01, 0x7F, 0x01, 0x1F, 0x00, 0xBF, 0x00, 0x5F, 0x01, 0x00, 0x1F, 0x86, 0x00, 0xFF, 0x89, 0xB7, 0xC9, 0xB3, 0x44, 0x7B, 0x06, 0x5F, 0x06, 0xBF, 0x07, 0x1F, 0x01, 0x07, 0x3F, 0x81, 0x07, 0x5F, 0x3D, 0x9B, 0x03, 0xC9, 0x72, 0x02, 0xC9, 0x52, 0x80, 0xA1, 0x32, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x81, 0x20, 0xCE, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x86, 0x20, 0xAE, + 0x20, 0xAD, 0x20, 0xAE, 0x20, 0xCD, 0x18, 0xAD, 0x18, 0xD0, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x80, 0x00, 0xFA, 0x01, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xF4, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x63, 0x18, 0xAD, 0x48, 0x01, 0x19, 0x81, 0x01, 0x18, 0x10, 0xD0, 0x3C, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x41, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x80, 0x28, 0xCE, 0x03, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x01, 0x30, 0xF0, 0x82, 0x31, 0x10, 0x30, 0xF0, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x82, 0x39, 0x31, 0x40, 0xF1, 0x41, 0x11, 0x02, 0x41, 0x32, 0x83, 0x61, 0xB3, 0x92, 0x74, 0xB2, 0xF5, 0xC3, 0x55, 0x02, 0xD3, 0x95, 0x86, 0xBC, 0x16, 0x46, 0x9D, 0x85, 0x39, 0xD3, 0x76, 0xD3, 0x75, 0x6D, 0xBA, 0x0F, 0x9F, 0x02, 0x07, 0xDF, 0x0D, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x85, 0x07, 0x7F, 0x06, 0xBC, 0x06, 0xBB, 0x06, 0x9B, 0x06, 0x7B, 0x06, 0x5B, 0x01, 0x06, 0x3B, 0x83, 0x06, 0x1B, 0x05, 0xFB, 0x05, 0xDB, 0x05, 0xBB, 0x01, 0x05, 0x9C, 0x87, 0x05, 0x7C, 0x05, 0x5C, 0x05, 0x3D, 0x05, 0x1D, 0x04, 0xFD, 0x04, 0xDD, 0x04, 0xBE, 0x04, 0x9E, 0x01, 0x04, 0x7F, 0x80, 0x04, 0x5F, 0x01, 0x04, 0x3F, 0x04, 0x04, 0x1F, 0x08, 0x04, 0x3F, 0x93, 0x04, 0x1F, 0x03, 0xFF, 0x03, 0xBF, 0x03, 0x7F, 0x03, 0x3F, 0x02, 0xBF, 0x02, 0x3F, 0x01, 0xDF, 0x01, 0x5F, 0x00, 0xDF, 0x00, 0x9F, 0x00, 0x5F, 0x00, 0x1F, 0x00, 0x5F, 0x09, 0x7F, 0xB9, 0xB3, 0xB2, 0x14, 0x0D, 0xBF, 0x06, 0xFF, + 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x82, 0x07, 0x5F, 0x07, 0x7F, 0x64, 0x79, 0x01, 0xC9, 0x72, 0x03, 0xC9, 0x52, 0x86, 0xC9, 0x32, 0x91, 0x32, 0x39, 0x11, 0x31, 0x11, 0x30, 0xF0, 0x28, 0xF0, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF4, 0x20, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x63, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x48, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x31, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x44, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x80, 0x20, 0xCF, 0x03, 0x28, 0xCF, 0x86, 0x30, 0xEF, 0x30, 0xF0, 0x28, 0xF0, 0x30, 0xF0, 0x31, 0x10, 0x38, 0xF0, 0x38, 0xF1, 0x01, 0x39, 0x11, 0x81, 0x39, 0x12, 0x41, 0x11, 0x01, 0x41, 0x32, 0x82, 0x51, 0x52, 0x82, 0x34, 0xC3, 0x35, 0x03, 0xD3, 0x95, 0x87, 0xAC, 0x57, 0x7D, 0x7A, 0x46, 0x9C, 0x0F, 0x9F, 0xA4, 0xB8, 0xD3, 0x95, 0x85, 0x39, 0x1F, 0x5E, 0x02, 0x07, 0xDF, 0x10, 0x07, 0xFF, 0x83, 0x07, 0xDF, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0x5D, 0x01, 0x06, 0xBB, 0x81, 0x06, 0x9A, 0x06, 0x7A, 0x01, 0x06, 0x5A, 0x88, 0x06, 0x3A, 0x06, 0x1A, 0x05, 0xFA, 0x05, 0xDA, 0x05, 0xDB, 0x05, 0xBB, 0x05, 0x9B, 0x05, 0x7B, + 0x05, 0x5B, 0x01, 0x05, 0x3C, 0x83, 0x05, 0x1C, 0x04, 0xFC, 0x04, 0xDD, 0x04, 0xBD, 0x01, 0x04, 0x7E, 0x82, 0x04, 0x5E, 0x04, 0x3F, 0x04, 0x1F, 0x01, 0x03, 0xFF, 0x0D, 0x03, 0xDF, 0x97, 0x03, 0xBF, 0x03, 0x5F, 0x03, 0x1F, 0x02, 0xDF, 0x02, 0x7F, 0x01, 0xFF, 0x01, 0x9F, 0x01, 0x1F, 0x00, 0xBF, 0x00, 0x7F, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x9F, 0x39, 0xDB, 0xC9, 0x92, 0x63, 0x99, 0x06, 0x9F, 0x07, 0x9F, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xBF, 0x07, 0x7F, 0x07, 0x9F, 0x9A, 0xF6, 0x05, 0xC9, 0x52, 0x88, 0xC9, 0x32, 0x71, 0x12, 0x31, 0x10, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xF0, 0x28, 0xEF, 0x28, 0xCE, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x84, 0x20, 0xCD, 0x20, 0xCE, 0x20, 0xAE, 0x18, 0xCF, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x08, 0xF5, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x7F, 0x18, 0xAD, 0x2B, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x37, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x87, 0x10, 0xD2, 0x08, 0xF3, 0x08, 0xD3, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x3B, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x80, 0x20, 0xCF, 0x03, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x03, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x02, 0x39, 0x11, 0x80, 0x41, 0x12, 0x01, 0x41, 0x32, 0x82, 0x51, 0x93, 0x92, 0x74, 0xCB, 0x75, 0x02, 0xD3, 0x95, 0x82, 0xC3, 0xD6, 0x6D, 0xBA, 0x1F, 0x7E, 0x01, 0x07, 0xFF, 0x83, 0x36, 0xDD, 0xBC, 0x17, 0x85, 0x39, + 0x1F, 0x5E, 0x01, 0x07, 0xDF, 0x14, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x81, 0x07, 0x1B, 0x06, 0xDA, 0x01, 0x06, 0xBA, 0x83, 0x06, 0x99, 0x06, 0x79, 0x06, 0x59, 0x06, 0x39, 0x01, 0x06, 0x19, 0x91, 0x05, 0xF9, 0x05, 0xDA, 0x05, 0xBA, 0x05, 0x9A, 0x05, 0x7A, 0x05, 0x5A, 0x05, 0x5B, 0x05, 0x3B, 0x05, 0x1B, 0x04, 0xFC, 0x04, 0xDC, 0x04, 0xBC, 0x04, 0x9D, 0x04, 0x7D, 0x04, 0x5D, 0x04, 0x3E, 0x04, 0x1E, 0x03, 0xFE, 0x01, 0x03, 0xDF, 0x01, 0x03, 0xBF, 0x0A, 0x03, 0x9F, 0x92, 0x03, 0x7F, 0x03, 0x5F, 0x03, 0x1F, 0x02, 0xDF, 0x02, 0x7F, 0x02, 0x3F, 0x01, 0xBF, 0x01, 0x5F, 0x00, 0xFF, 0x00, 0x9F, 0x00, 0x5F, 0x00, 0x1F, 0x00, 0x3F, 0x01, 0x1F, 0x99, 0xB6, 0xB9, 0xD3, 0x0D, 0x9F, 0x06, 0xDF, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x81, 0x0F, 0x7E, 0xB9, 0xB3, 0x03, 0xC9, 0x52, 0x87, 0xC9, 0x31, 0xC9, 0x32, 0xC1, 0x32, 0x61, 0x11, 0x38, 0xF0, 0x30, 0xF0, 0x28, 0xF0, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x83, 0x20, 0xAE, 0x18, 0xCE, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x62, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x46, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x85, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xB0, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x34, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, + 0xCE, 0x3D, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x03, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x81, 0x31, 0x10, 0x39, 0x10, 0x01, 0x39, 0x11, 0x80, 0x39, 0x12, 0x01, 0x41, 0x32, 0x83, 0x61, 0x73, 0xA2, 0xB4, 0xD3, 0x95, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x88, 0xC3, 0xD6, 0x6D, 0xBA, 0x0F, 0xBF, 0x07, 0xFF, 0x07, 0xDF, 0x07, 0xFF, 0x07, 0xDF, 0x1F, 0x7E, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x16, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x01, 0x06, 0xF9, 0x81, 0x06, 0xD9, 0x06, 0xB8, 0x01, 0x06, 0x98, 0x81, 0x06, 0x78, 0x06, 0x58, 0x01, 0x06, 0x38, 0x85, 0x06, 0x18, 0x05, 0xF8, 0x05, 0xD8, 0x05, 0xB8, 0x05, 0x98, 0x05, 0x79, 0x01, 0x05, 0x59, 0x8B, 0x05, 0x1A, 0x04, 0xFA, 0x04, 0xDB, 0x04, 0xBB, 0x04, 0x9C, 0x04, 0x7C, 0x04, 0x5D, 0x04, 0x3D, 0x04, 0x1E, 0x03, 0xFE, 0x03, 0xDE, 0x03, 0xBF, 0x01, 0x03, 0x9F, 0x02, 0x03, 0x7F, 0x06, 0x03, 0x5F, 0x01, 0x03, 0x3F, 0x92, 0x03, 0x1F, 0x02, 0xFF, 0x02, 0xBF, 0x02, 0x7F, 0x02, 0x3F, 0x01, 0xFF, 0x01, 0x9F, 0x01, 0x3F, 0x00, 0xBF, 0x00, 0x7F, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x5F, 0x19, 0x7E, 0xB9, 0x93, 0x63, 0x79, 0x06, 0x3F, 0x07, 0x3F, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x80, 0x3D, 0xFB, 0x01, 0xC9, 0x52, 0x03, 0xC9, 0x32, 0x82, 0xC9, 0x12, 0xB9, 0x12, 0x41, 0x11, 0x02, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x84, 0x20, 0xAE, 0x20, 0xCE, 0x08, 0xF6, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x01, 0x19, + 0x81, 0x08, 0xF5, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x62, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x45, 0x18, 0xAD, 0x88, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x30, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x01, 0x17, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF4, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x3A, 0x18, 0xAD, 0x02, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x01, 0x28, 0xCF, 0x83, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xEF, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x02, 0x39, 0x11, 0x83, 0x41, 0x11, 0x49, 0x52, 0x79, 0xF3, 0xB2, 0xF4, 0x04, 0xD3, 0x95, 0x81, 0x94, 0xF9, 0x0F, 0xBF, 0x08, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x17, 0x07, 0xFF, 0x81, 0x07, 0x9D, 0x07, 0x19, 0x01, 0x06, 0xF8, 0x80, 0x06, 0xD7, 0x01, 0x06, 0xB7, 0x89, 0x06, 0x97, 0x06, 0x76, 0x06, 0x56, 0x06, 0x37, 0x06, 0x36, 0x06, 0x17, 0x05, 0xF7, 0x05, 0xD7, 0x05, 0xB7, 0x05, 0x97, 0x01, 0x05, 0x78, 0x87, 0x05, 0x38, 0x05, 0x19, 0x04, 0xF9, 0x04, 0xDA, 0x04, 0xBB, 0x04, 0x9B, 0x04, 0x7C, 0x04, 0x3C, 0x01, 0x04, 0x1D, 0x84, 0x03, 0xFE, 0x03, 0xDE, 0x03, 0xBE, 0x03, 0x9E, 0x03, 0x7F, 0x01, 0x03, 0x5F, 0x80, 0x03, 0x3F, 0x03, 0x03, 0x1F, 0x03, 0x02, 0xFF, 0x92, 0x02, 0xDF, 0x02, 0xBF, 0x02, 0x9F, 0x02, 0x7F, 0x02, 0x3F, 0x01, + 0xFF, 0x01, 0x9F, 0x01, 0x5F, 0x00, 0xFF, 0x00, 0x9F, 0x00, 0x5F, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0xBF, 0x59, 0xBA, 0xB9, 0xB3, 0x0D, 0x3F, 0x06, 0xBF, 0x07, 0x9F, 0x04, 0x07, 0xFF, 0x82, 0x74, 0x38, 0xC9, 0x52, 0xC1, 0x32, 0x02, 0xC9, 0x32, 0x83, 0xC9, 0x11, 0xC9, 0x12, 0xA1, 0x11, 0x39, 0x11, 0x02, 0x30, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x83, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xFA, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x65, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x44, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x05, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x39, 0x00, 0xF8, 0x18, 0xB0, 0x37, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x82, 0x10, 0xD3, 0x01, 0x1A, 0x00, 0xF9, 0x3C, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x80, 0x20, 0xCF, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x03, 0x30, 0xF0, 0x01, 0x39, 0x11, 0x83, 0x51, 0x51, 0x79, 0xF3, 0xA2, 0xB4, 0xCB, 0x75, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x82, 0xC3, 0xD6, 0x46, 0x9C, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x06, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x17, 0x07, 0xFF, 0x84, 0x07, 0xFE, 0xC3, 0x35, 0x45, 0xD7, 0x07, 0x38, 0x07, 0x17, 0x01, 0x06, 0xF6, 0x80, 0x06, 0xD6, 0x01, 0x06, 0xB5, 0x84, 0x06, 0x95, 0x06, 0x75, 0x06, 0x55, 0x06, 0x35, 0x06, 0x15, 0x01, 0x05, 0xF5, 0x8C, 0x05, 0xD6, 0x05, 0xB6, 0x05, 0x97, 0x05, 0x57, 0x05, 0x38, 0x05, 0x18, + 0x04, 0xF9, 0x04, 0xD9, 0x04, 0x9A, 0x04, 0x7B, 0x04, 0x5B, 0x04, 0x3C, 0x04, 0x1C, 0x01, 0x03, 0xDD, 0x83, 0x03, 0xBE, 0x03, 0x9E, 0x03, 0x7E, 0x03, 0x5F, 0x01, 0x03, 0x3F, 0x81, 0x03, 0x1F, 0x02, 0xFF, 0x01, 0x02, 0xDF, 0x03, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x91, 0x02, 0x7F, 0x02, 0x5F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xBF, 0x01, 0x7F, 0x01, 0x1F, 0x00, 0xDF, 0x00, 0x9F, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x3F, 0x01, 0x3F, 0xB1, 0x74, 0x63, 0x39, 0x05, 0xFF, 0x07, 0x1F, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x81, 0x0F, 0x9F, 0xB9, 0x92, 0x01, 0xC9, 0x32, 0x80, 0xC9, 0x31, 0x02, 0xC9, 0x12, 0x81, 0xC9, 0x11, 0x81, 0x11, 0x01, 0x30, 0xF0, 0x81, 0x28, 0xEF, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xD0, 0x02, 0x01, 0x19, 0x84, 0x01, 0x39, 0x08, 0xF5, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x61, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x46, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x36, 0x18, 0xAD, 0x86, 0x18, 0xAF, 0x00, 0xF9, 0x01, 0x19, 0x18, 0xD0, 0x18, 0xCD, 0x18, 0xAD, 0x10, 0xD1, 0x01, 0x01, 0x19, 0x3C, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x81, 0x20, 0xCF, 0x28, 0xCF, 0x02, 0x28, 0xEF, 0x01, 0x30, 0xF0, 0x83, 0x59, 0xB2, 0x7A, 0x13, 0x9A, 0x94, 0xBB, 0x55, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x02, 0xD3, + 0x95, 0x81, 0xAC, 0x77, 0x2F, 0x1E, 0x22, 0x07, 0xFF, 0x87, 0x07, 0xBC, 0x07, 0x59, 0xAB, 0xB5, 0xC3, 0x14, 0x1E, 0x97, 0x07, 0x36, 0x07, 0x16, 0x07, 0x15, 0x01, 0x06, 0xF4, 0x9F, 0x06, 0xF3, 0x06, 0xD3, 0x06, 0xB3, 0x06, 0xB2, 0x06, 0x92, 0x06, 0x72, 0x06, 0x53, 0x06, 0x33, 0x06, 0x13, 0x05, 0xF4, 0x05, 0xD4, 0x05, 0x95, 0x05, 0x75, 0x05, 0x56, 0x05, 0x17, 0x04, 0xF8, 0x04, 0xB9, 0x04, 0x99, 0x04, 0x5A, 0x04, 0x3B, 0x04, 0x1B, 0x03, 0xFC, 0x03, 0xDD, 0x03, 0xBD, 0x03, 0x9D, 0x03, 0x7E, 0x03, 0x5E, 0x03, 0x3E, 0x03, 0x3F, 0x03, 0x1F, 0x02, 0xFF, 0x02, 0xDF, 0x01, 0x02, 0xBF, 0x80, 0x02, 0x9F, 0x01, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x80, 0x02, 0x3F, 0x01, 0x02, 0x1F, 0x8E, 0x01, 0xDF, 0x01, 0x9F, 0x01, 0x7F, 0x01, 0x3F, 0x00, 0xFF, 0x00, 0x9F, 0x00, 0x7F, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x7F, 0x39, 0x9B, 0xB9, 0x93, 0x05, 0x5F, 0x06, 0x7F, 0x07, 0x9F, 0x04, 0x07, 0xFF, 0x84, 0x45, 0xDB, 0xC1, 0x32, 0xC9, 0x32, 0xC9, 0x12, 0xC1, 0x32, 0x01, 0xC9, 0x12, 0x85, 0xC9, 0x11, 0xC9, 0x12, 0x51, 0x11, 0x38, 0xF0, 0x30, 0xF0, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x8A, 0x20, 0xAE, 0x18, 0xCE, 0x10, 0xD3, 0x10, 0xF4, 0x18, 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x7F, 0x18, 0xAD, 0x2D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD0, 0x20, 0xAD, 0x02, + 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x30, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x08, 0xD4, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x80, 0x20, 0xAD, 0x15, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x1E, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x86, 0x18, 0xAD, 0x20, 0xCD, 0x20, 0xAE, 0x20, 0xAD, 0x20, 0xAE, 0x18, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x89, 0x28, 0xAE, 0x20, 0xCE, 0x28, 0xEE, 0x51, 0x71, 0x69, 0xD2, 0x82, 0x32, 0xAA, 0xF4, 0xC3, 0x34, 0xD3, 0x75, 0xD3, 0xB5, 0x09, 0xD3, 0x95, 0x81, 0x75, 0x7A, 0x0F, 0xBF, 0x21, 0x07, 0xFF, 0x88, 0x07, 0xBD, 0x07, 0x9B, 0x07, 0x7A, 0x07, 0x79, 0x74, 0xD6, 0xD2, 0xD4, 0x9B, 0xF5, 0x07, 0x56, 0x07, 0x35, 0x01, 0x07, 0x34, 0x81, 0x07, 0x33, 0x07, 0x12, 0x01, 0x07, 0x11, 0x01, 0x06, 0xF0, 0x80, 0x06, 0xD0, 0x01, 0x06, 0xAF, 0x8D, 0x06, 0x6F, 0x06, 0x50, 0x06, 0x31, 0x06, 0x11, 0x05, 0xD2, 0x05, 0x94, 0x05, 0x54, 0x05, 0x15, 0x04, 0xF7, 0x04, 0xB8, 0x04, 0x78, 0x04, 0x59, 0x04, 0x3A, 0x03, 0xFB, 0x01, 0x03, 0xBC, 0x83, 0x03, 0x9D, 0x03, 0x7D, 0x03, 0x5E, 0x03, 0x3E, 0x01, 0x03, 0x1F, 0x81, 0x02, 0xFF, 0x02, 0xDF, 0x01, 0x02, 0xBF, 0x01, 0x02, 0x7F, 0x80, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x8A, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x9F, 0x01, 0x7F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xBF, 0x00, 0x7F, 0x00, 0x5F, 0x01, 0x00, 0x1F, 0x85, 0x00, 0xDF, 0xA1, 0x75, 0x33, 0xBC, 0x05, 0xDF, 0x06, 0xFF, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x82, 0x92, 0xD5, 0xC9, + 0x11, 0xC1, 0x32, 0x01, 0xC9, 0x12, 0x89, 0xC8, 0xF2, 0xC1, 0x12, 0xC9, 0x12, 0xA8, 0xF1, 0x31, 0x10, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x82, 0x20, 0xAE, 0x20, 0xCE, 0x20, 0xAD, 0x71, 0x18, 0xAD, 0x47, 0x01, 0x19, 0x81, 0x00, 0xF8, 0x18, 0xCF, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x01, 0x17, 0x01, 0x01, 0x19, 0x81, 0x10, 0xCF, 0x20, 0xAD, 0x32, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x01, 0x01, 0x1A, 0x82, 0x08, 0xF5, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x80, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x87, 0x20, 0xAD, 0x39, 0x0F, 0x49, 0x70, 0x59, 0xB0, 0x7A, 0x32, 0x92, 0x93, 0xAA, 0xD3, 0xCB, 0x55, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x07, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x81, 0x9C, 0xB8, 0x27, 0x1D, 0x20, 0x07, 0xFF, 0x83, 0x07, 0xDE, 0x07, 0xDD, 0x07, 0xBC, 0x07, 0x9B, 0x01, 0x07, 0x9A, 0x81, 0x07, 0x79, 0x55, 0xB7, 0x01, 0xD2, 0xB4, 0x85, 0x4D, 0xB5, 0x07, 0x75, 0x07, 0x74, 0x07, 0x53, 0x07, 0x73, 0x07, 0x52, 0x01, 0x07, 0x50, 0x81, 0x07, 0x4F, 0x07, 0x4E, 0x01, 0x07, 0x4D, 0x80, 0x07, 0x4C, 0x01, 0x07, 0x2B, 0x8F, 0x07, 0x2A, 0x07, 0x0A, 0x06, 0xEA, 0x06, + 0xAC, 0x06, 0x4D, 0x05, 0xD0, 0x05, 0x73, 0x04, 0xF5, 0x04, 0xB6, 0x04, 0x78, 0x04, 0x38, 0x04, 0x1A, 0x03, 0xFB, 0x03, 0xBC, 0x03, 0x9C, 0x03, 0x7C, 0x01, 0x03, 0x3D, 0x84, 0x03, 0x1E, 0x02, 0xFE, 0x02, 0xFF, 0x02, 0xDF, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x96, 0x02, 0x7F, 0x02, 0x5F, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x9F, 0x01, 0x7F, 0x01, 0x5F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xDF, 0x00, 0x9F, 0x00, 0x5F, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x3F, 0x21, 0x3D, 0x1B, 0x1E, 0x05, 0x1F, 0x06, 0x5F, 0x07, 0x7F, 0x04, 0x07, 0xFF, 0x80, 0x1F, 0x3D, 0x01, 0xC9, 0x12, 0x01, 0xC1, 0x12, 0x84, 0xC8, 0xF1, 0xC8, 0xF2, 0xC8, 0xF1, 0xC8, 0xF2, 0x80, 0xF1, 0x01, 0x30, 0xF0, 0x85, 0x30, 0xEF, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xCE, 0x20, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x70, 0x18, 0xAD, 0x43, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x80, 0x10, 0xD0, 0x03, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x00, 0xF9, 0x01, 0x19, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x2A, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x10, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x84, 0x39, 0x2F, 0xD3, 0x95, 0xC3, 0x74, 0xA2, 0xD3, 0xAA, 0xD3, 0x01, 0x7A, 0x31, 0x82, 0x7A, 0x11, 0x72, 0x31, 0x51, 0x90, 0x01, 0x49, 0x6F, 0x83, 0x49, 0x70, 0x49, 0x6F, 0x49, 0x4F, 0x41, 0x2F, 0x03, 0x18, 0xAD, 0x80, 0x18, + 0xAE, 0x0A, 0x18, 0xAD, 0x81, 0x49, 0x70, 0x49, 0x4F, 0x01, 0x49, 0x6F, 0x80, 0x69, 0xF1, 0x01, 0x7A, 0x31, 0x83, 0x92, 0x72, 0xA2, 0xD3, 0xAA, 0xF3, 0xC3, 0x55, 0x0D, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x03, 0xD3, 0x95, 0x84, 0xD3, 0x96, 0xD3, 0x75, 0xD3, 0x95, 0xAC, 0x57, 0x56, 0x5C, 0x20, 0x07, 0xFF, 0x82, 0x07, 0xDF, 0x07, 0xDE, 0x07, 0xBD, 0x01, 0x07, 0xBC, 0x80, 0x07, 0xBB, 0x01, 0x07, 0x9A, 0x85, 0x07, 0x99, 0x26, 0xB8, 0xCA, 0xD4, 0xD2, 0xB4, 0xC3, 0x14, 0x0F, 0x35, 0x01, 0x07, 0x94, 0x01, 0x07, 0x92, 0x82, 0x07, 0x91, 0x07, 0x90, 0x07, 0x8F, 0x01, 0x07, 0x8E, 0x82, 0x07, 0x8D, 0x07, 0x8C, 0x07, 0xAA, 0x01, 0x07, 0xA9, 0x8F, 0x07, 0xA8, 0x07, 0xC7, 0x07, 0xC5, 0x07, 0xC4, 0x07, 0xE4, 0x07, 0xA4, 0x07, 0x27, 0x06, 0x8A, 0x05, 0xAF, 0x04, 0x96, 0x04, 0x38, 0x03, 0xF9, 0x03, 0xBA, 0x03, 0x9B, 0x03, 0x5C, 0x03, 0x5D, 0x01, 0x03, 0x1D, 0x81, 0x02, 0xFE, 0x02, 0xDF, 0x01, 0x02, 0xBF, 0x81, 0x02, 0x9F, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x83, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0x01, 0x9F, 0x87, 0x01, 0x7F, 0x01, 0x5F, 0x01, 0x3F, 0x00, 0xFF, 0x00, 0xDF, 0x00, 0xBF, 0x00, 0x7F, 0x00, 0x5F, 0x01, 0x00, 0x1F, 0x85, 0x00, 0x7F, 0x02, 0x3F, 0x04, 0x1F, 0x05, 0xBF, 0x06, 0xFF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x82, 0x64, 0x98, 0xC9, 0x11, 0xC9, 0x12, 0x02, 0xC8, 0xF1, 0x83, 0xC8, 0xF2, 0xC8, 0xF1, 0xC8, 0xD1, 0x50, 0xF1, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x01, + 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x7F, 0x18, 0xAD, 0x38, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x18, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x86, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x2C, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x85, 0x01, 0x17, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xD3, 0x10, 0xD2, 0x18, 0xCD, 0x01, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x81, 0x49, 0x6F, 0xAA, 0xD3, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x34, 0xD3, 0x95, 0x82, 0xC3, 0xD6, 0x85, 0x39, 0x36, 0xDD, 0x22, 0x07, 0xFF, 0x81, 0x07, 0xDF, 0x07, 0xDE, 0x01, 0x07, 0xBD, 0x01, 0x07, 0xBC, 0x80, 0x07, 0xBB, 0x01, 0x07, 0xBA, 0x80, 0x07, 0xB9, 0x02, 0xD2, 0xB4, 0x80, 0x65, 0x35, 0x01, 0x07, 0xB5, 0x89, 0x07, 0xB4, 0x07, 0xB3, 0x07, 0xB2, 0x07, 0xB1, 0x07, 0xB0, 0x07, 0xAF, 0x07, 0xCE, 0x07, 0xCD, 0x07, 0xCC, 0x07, 0xCB, 0x01, 0x07, 0xCA, 0x83, 0x07, 0xC9, 0x07, 0xE8, 0x07, 0xE7, 0x07, 0xE6, 0x01, 0x07, 0xE5, 0x01, 0x07, 0xE3, 0x8C, 0x07, 0xE2, 0x07, 0xE1, 0x07, 0x26, 0x06, 0x0C, 0x04, 0xB4, 0x03, 0xB9, 0x03, 0x7B, 0x03, 0x5C, 0x03, 0x3D, 0x03, 0x1D, 0x02, 0xDE, 0x02, 0xDF, 0x02, 0xBE, 0x01, 0x02, 0x9F, 0x81, 0x02, 0x7F, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x82, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0x01, 0x9F, 0x01, 0x01, 0x5F, 0x83, 0x01, 0x3F, 0x00, 0xFF, 0x00, 0xDF, 0x00, 0xBF, 0x01, 0x00, 0x7F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x84, 0x01, 0x1F, 0x02, 0xFF, 0x04, 0xDF, + 0x06, 0x3F, 0x07, 0x7F, 0x04, 0x07, 0xFF, 0x81, 0x0F, 0x9F, 0xB9, 0x72, 0x01, 0xC8, 0xF2, 0x85, 0xC0, 0xF1, 0xC8, 0xF2, 0xC0, 0xF2, 0xC0, 0xF1, 0xC8, 0xD1, 0xA0, 0xF1, 0x02, 0x30, 0xF0, 0x83, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xCE, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x83, 0x20, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x7F, 0x18, 0xAD, 0x32, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x8F, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xCF, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xB0, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x28, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x13, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x41, 0x2F, 0x8A, 0x72, 0xC3, 0x34, 0xD3, 0x96, 0x18, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x08, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x0B, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0x75, 0xAC, 0x57, 0x46, 0x9C, 0x16, 0x07, 0xFF, 0x80, 0x46, 0x7C, 0x01, 0x85, 0x19, 0x80, 0x36, 0xDD, 0x0A, 0x07, 0xFF, 0x02, 0x07, 0xDE, 0x80, 0x07, 0xDD, 0x01, 0x07, 0xDC, 0x01, 0x07, 0xDB, 0x01, 0x07, 0xDA, 0x80, 0x9B, 0xF5, 0x01, 0xD2, 0xB4, 0x83, 0xC2, 0xF4, 0x0F, 0x77, 0x07, 0xD6, 0x07, 0xD5, 0x01, 0x07, 0xD4, 0x86, 0x07, 0xD3, 0x07, 0xD2, 0x07, 0xD1, 0x07, 0xD0, 0x07, 0xEF, 0x07, 0xEE, 0x07, 0xED, 0x01, 0x07, 0xEC, 0x80, 0x07, 0xEA, + 0x01, 0x07, 0xE9, 0x80, 0x07, 0xE7, 0x01, 0x07, 0xE6, 0x01, 0x07, 0xE5, 0x01, 0x07, 0xE4, 0x01, 0x07, 0xE3, 0x85, 0x07, 0xE2, 0x07, 0x85, 0x06, 0x0C, 0x04, 0xD3, 0x03, 0x5B, 0x03, 0x1C, 0x01, 0x02, 0xDE, 0x82, 0x02, 0xBE, 0x02, 0x9F, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x84, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x88, 0x01, 0x7F, 0x01, 0x5F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xDF, 0x00, 0xBF, 0x00, 0x9F, 0x00, 0x7F, 0x00, 0x5F, 0x01, 0x00, 0x1F, 0x85, 0x00, 0x3F, 0x01, 0xDF, 0x03, 0xBF, 0x05, 0x9F, 0x06, 0xDF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x89, 0x4D, 0x7A, 0xC1, 0x11, 0xC0, 0xF1, 0xC8, 0xF1, 0xC8, 0xF2, 0xC8, 0xD1, 0xC8, 0xF2, 0xC0, 0xD1, 0xC8, 0xD1, 0x68, 0xF1, 0x01, 0x30, 0xF0, 0x81, 0x28, 0xF0, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x14, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x80, 0x10, 0xD2, 0x7F, 0x18, 0xAD, 0x1A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x8E, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xCF, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x28, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, + 0x02, 0x18, 0xAD, 0x84, 0x41, 0x4F, 0x61, 0xD1, 0x82, 0x51, 0xA2, 0xD3, 0xBB, 0x34, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x03, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x15, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x04, 0xD3, 0x95, 0x84, 0xD3, 0x75, 0xBC, 0x16, 0x85, 0x39, 0x46, 0x9C, 0x17, 0xBF, 0x12, 0x07, 0xFF, 0x80, 0x85, 0x18, 0x01, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x80, 0x84, 0xF8, 0x09, 0x07, 0xFF, 0x82, 0x07, 0xFE, 0x07, 0xDE, 0x07, 0xFE, 0x01, 0x07, 0xDD, 0x81, 0x07, 0xBC, 0x07, 0xDC, 0x01, 0x07, 0xDB, 0x81, 0x07, 0xDA, 0x8C, 0x56, 0x01, 0xCA, 0xB4, 0x81, 0xD2, 0x94, 0x4D, 0xF7, 0x01, 0x07, 0xD7, 0x82, 0x07, 0xD6, 0x07, 0xF5, 0x07, 0xD5, 0x01, 0x07, 0xF3, 0x86, 0x07, 0xF2, 0x07, 0xF1, 0x07, 0xF0, 0x07, 0xEF, 0x07, 0xEE, 0x07, 0xED, 0x07, 0xEC, 0x01, 0x07, 0xEB, 0x81, 0x07, 0xEA, 0x07, 0xE9, 0x01, 0x07, 0xE8, 0x01, 0x07, 0xE7, 0x01, 0x07, 0xE6, 0x03, 0x07, 0xE5, 0x88, 0x07, 0xE4, 0x07, 0xA6, 0x06, 0x0E, 0x03, 0xF8, 0x02, 0xDE, 0x02, 0xBE, 0x02, 0x9F, 0x02, 0x7F, 0x02, 0x5F, 0x01, 0x02, 0x3F, 0x83, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x89, 0x01, 0x7F, 0x01, 0x5F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xDF, 0x00, 0xBF, 0x00, 0x9F, 0x00, 0x7F, 0x00, 0x5F, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x84, 0x00, 0xBF, 0x02, 0x9F, 0x04, 0x9F, 0x06, 0x3F, 0x07, 0x5F, 0x05, 0x07, 0xFF, 0x83, 0xB1, 0xD3, 0xC8, 0xF1, 0xC8, 0xF2, 0xC0, 0xF1, 0x01, 0xC8, 0xD1, 0x86, + 0xC0, 0xF1, 0xC8, 0xD1, 0xB8, 0xD1, 0x40, 0xF0, 0x30, 0xF0, 0x28, 0xF0, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x81, 0x20, 0xCE, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x11, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x7F, 0x18, 0xAD, 0x18, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCE, 0x08, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x39, 0x00, 0xF8, 0x18, 0xB0, 0x26, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAF, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x85, 0x31, 0x0E, 0x49, 0x6F, 0x59, 0x90, 0x7A, 0x12, 0x7A, 0x32, 0x92, 0x72, 0x01, 0xA2, 0xD3, 0x80, 0xC3, 0x75, 0x14, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x0A, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x08, 0xD3, 0x95, 0x82, 0xAC, 0x77, 0x75, 0x7A, 0x36, 0xFD, 0x0E, 0x07, 0xFF, 0x83, 0x4E, 0x3C, 0xD3, 0x55, 0xD3, 0x35, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x81, 0xD3, 0x34, 0x75, 0x39, 0x09, 0x07, 0xFF, 0x01, 0x07, 0xFE, 0x02, 0x07, 0xDD, 0x85, 0x07, 0xDC, 0x07, 0xFC, 0x07, 0xDC, 0x07, 0xDB, 0x6D, 0x38, 0xCA, 0xB4, 0x01, 0xD2, 0x94, 0x80, 0xAB, 0x95, 0x01, 0x07, 0xD8, 0x01, 0x07, 0xF7, 0x80, 0x07, 0xF6, 0x01, 0x07, 0xF5, 0x86, 0x07, 0xF4, 0x07, 0xF3, 0x07, 0xF2, 0x07, 0xF1, 0x07, 0xF0, + 0x07, 0xEF, 0x07, 0xEE, 0x01, 0x07, 0xED, 0x01, 0x07, 0xEC, 0x80, 0x07, 0xEB, 0x02, 0x07, 0xEA, 0x01, 0x07, 0xE9, 0x03, 0x07, 0xE8, 0x01, 0x07, 0xE7, 0x8B, 0x07, 0xE8, 0x07, 0xC8, 0x06, 0xEB, 0x05, 0x14, 0x03, 0x3C, 0x02, 0x7F, 0x02, 0x5F, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x01, 0x9F, 0x86, 0x01, 0x7F, 0x01, 0x5F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xFF, 0x00, 0xDF, 0x00, 0xBF, 0x01, 0x00, 0x9F, 0x01, 0x00, 0x5F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x84, 0x01, 0x5F, 0x03, 0x7F, 0x05, 0x7F, 0x06, 0xDF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x83, 0x4D, 0x5A, 0xC8, 0xF1, 0xC8, 0xD1, 0xC0, 0xF1, 0x01, 0xC8, 0xD1, 0x01, 0xC0, 0xD1, 0x84, 0xC8, 0xB1, 0x78, 0xD1, 0x31, 0x10, 0x30, 0xF0, 0x30, 0xEF, 0x02, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x01, 0x17, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x7F, 0x18, 0xAD, 0x1D, 0x18, 0xAD, 0x85, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x03, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x25, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAF, 0x01, 0x18, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x01, + 0x18, 0xAD, 0x01, 0x49, 0x6F, 0x86, 0x49, 0x70, 0x7A, 0x12, 0x7A, 0x31, 0x82, 0x52, 0xAA, 0xD3, 0xA2, 0xD3, 0xBB, 0x34, 0x23, 0xD3, 0x95, 0x83, 0xCB, 0xD6, 0x94, 0xF8, 0x56, 0x5B, 0x0F, 0xBF, 0x0A, 0x07, 0xFF, 0x80, 0xB3, 0xF6, 0x01, 0xD3, 0x35, 0x80, 0xD3, 0x34, 0x02, 0xD3, 0x35, 0x81, 0xD3, 0x34, 0x1F, 0x7E, 0x09, 0x07, 0xFF, 0x82, 0x07, 0xFE, 0x07, 0xDE, 0x07, 0xDD, 0x02, 0x07, 0xFD, 0x88, 0x07, 0xDD, 0x07, 0xDC, 0x6D, 0x38, 0xCA, 0xB4, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0x1F, 0x39, 0x07, 0xF9, 0x02, 0x07, 0xF8, 0x01, 0x07, 0xF7, 0x83, 0x07, 0xF6, 0x07, 0xF5, 0x07, 0xF4, 0x07, 0xF3, 0x01, 0x07, 0xF2, 0x81, 0x07, 0xF1, 0x07, 0xF0, 0x01, 0x07, 0xEF, 0x01, 0x07, 0xEE, 0x01, 0x07, 0xED, 0x84, 0x07, 0xEC, 0x07, 0xED, 0x07, 0xEC, 0x07, 0xEB, 0x07, 0xEC, 0x01, 0x07, 0xEB, 0x02, 0x07, 0xEA, 0x8B, 0x07, 0xCA, 0x07, 0xAB, 0x07, 0x6C, 0x07, 0x0D, 0x05, 0xB2, 0x03, 0x9B, 0x02, 0x3F, 0x02, 0x1F, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x9F, 0x01, 0x01, 0x7F, 0x83, 0x01, 0x5F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xFF, 0x01, 0x00, 0xDF, 0x01, 0x00, 0x9F, 0x81, 0x00, 0x7F, 0x00, 0x5F, 0x01, 0x00, 0x3F, 0x85, 0x00, 0x1F, 0x60, 0xD9, 0x0A, 0x3F, 0x04, 0x7F, 0x06, 0x3F, 0x07, 0x5F, 0x05, 0x07, 0xFF, 0x89, 0xA9, 0xD3, 0xC0, 0xD1, 0xC8, 0xD1, 0xC0, 0xF1, 0xC8, 0xB1, 0xC0, 0xD1, 0xC8, 0xB1, 0xC0, 0xB1, 0xB8, 0xB1, 0x48, 0xF1, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x83, 0x20, 0xAE, 0x20, 0xAD, 0x18, 0xAD, + 0x20, 0xAE, 0x10, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x59, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x23, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF8, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD0, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xCD, 0x05, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x29, 0x18, 0xAD, 0x01, 0x49, 0x70, 0x82, 0x59, 0x90, 0x7A, 0x31, 0x72, 0x31, 0x01, 0x7A, 0x31, 0x83, 0x9A, 0xB3, 0xAA, 0xD4, 0xA2, 0xD4, 0xB3, 0x14, 0x05, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x06, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x08, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x81, 0x94, 0xF8, 0x56, 0x5C, 0x08, 0x07, 0xFF, 0x81, 0xD3, 0x35, 0xD3, 0x34, 0x03, 0xD3, 0x35, 0x82, 0xD3, 0x14, 0xD3, 0x15, 0x5D, 0xDB, + 0x0A, 0x07, 0xFF, 0x04, 0x07, 0xFE, 0x01, 0x07, 0xFD, 0x86, 0x6D, 0x58, 0xD2, 0x94, 0xD2, 0x93, 0xCA, 0x94, 0xD2, 0x74, 0x4D, 0xF8, 0x07, 0xFB, 0x01, 0x07, 0xFA, 0x01, 0x07, 0xF9, 0x81, 0x07, 0xF8, 0x07, 0xF7, 0x01, 0x07, 0xF6, 0x01, 0x07, 0xF5, 0x80, 0x07, 0xF4, 0x01, 0x07, 0xF3, 0x80, 0x07, 0xF2, 0x01, 0x07, 0xF1, 0x02, 0x07, 0xF0, 0x04, 0x07, 0xEF, 0x04, 0x07, 0xEE, 0x8B, 0x07, 0xED, 0x07, 0xCD, 0x07, 0x8E, 0x07, 0x6E, 0x07, 0x10, 0x06, 0xB1, 0x05, 0x74, 0x03, 0x7B, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xBF, 0x01, 0x9F, 0x01, 0x01, 0x7F, 0x01, 0x01, 0x3F, 0x83, 0x01, 0x1F, 0x00, 0xFF, 0x00, 0xDF, 0x00, 0xBF, 0x01, 0x00, 0x9F, 0x81, 0x00, 0x7F, 0x00, 0x5F, 0x01, 0x00, 0x3F, 0x86, 0x00, 0x1F, 0x88, 0xD6, 0x61, 0x59, 0x03, 0x1F, 0x05, 0x3F, 0x06, 0xDF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x81, 0x4D, 0x5B, 0xC0, 0xD1, 0x01, 0xC8, 0xD1, 0x85, 0xC0, 0xB1, 0xC8, 0xB1, 0xC8, 0xB2, 0xC0, 0xB1, 0xC8, 0xB1, 0x90, 0xD1, 0x01, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x01, 0x20, 0xCF, 0x82, 0x20, 0xCE, 0x20, 0xAE, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x0F, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD1, 0x01, 0x18, 0xAD, 0x81, 0x10, 0xD1, 0x01, 0x1A, 0x0B, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x05, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x42, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x04, 0x01, + 0x19, 0x80, 0x00, 0xFA, 0x22, 0x01, 0x19, 0x86, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xD0, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x01, 0x17, 0x01, 0x01, 0x19, 0x81, 0x10, 0xCF, 0x20, 0xAD, 0x1F, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x80, 0x10, 0xD2, 0x2C, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x84, 0x18, 0xAD, 0x18, 0xCE, 0x18, 0xAD, 0x20, 0xAE, 0x20, 0xAD, 0x01, 0x20, 0xCE, 0x80, 0x29, 0x0F, 0x01, 0x51, 0x70, 0x88, 0x69, 0xF1, 0x7A, 0x32, 0x82, 0x32, 0xAA, 0xF3, 0xAA, 0xF4, 0xCB, 0x75, 0xD3, 0x95, 0xD3, 0x96, 0xD3, 0x75, 0x06, 0xD3, 0x95, 0x01, 0xD3, 0x96, 0x03, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x82, 0xC3, 0xB6, 0x85, 0x39, 0x1F, 0x7F, 0x05, 0x07, 0xFF, 0x02, 0xD3, 0x35, 0x82, 0xD3, 0x15, 0xD3, 0x14, 0xD3, 0x15, 0x01, 0xD3, 0x14, 0x80, 0x65, 0x9A, 0x0D, 0x07, 0xFF, 0x03, 0x07, 0xFE, 0x85, 0x6D, 0x39, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x74, 0xCA, 0x74, 0x7C, 0x96, 0x01, 0x07, 0xFC, 0x01, 0x07, 0xFB, 0x01, 0x07, 0xFA, 0x80, 0x07, + 0xF9, 0x01, 0x07, 0xF8, 0x01, 0x07, 0xF7, 0x01, 0x07, 0xF6, 0x80, 0x07, 0xF5, 0x01, 0x07, 0xF4, 0x02, 0x07, 0xF3, 0x06, 0x07, 0xF2, 0x03, 0x07, 0xF1, 0x8C, 0x07, 0xF0, 0x07, 0xF1, 0x07, 0xD0, 0x07, 0x91, 0x07, 0x51, 0x07, 0x12, 0x06, 0x93, 0x06, 0x34, 0x05, 0x17, 0x02, 0xDD, 0x01, 0xBF, 0x01, 0x9F, 0x01, 0x7F, 0x01, 0x01, 0x5F, 0x83, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xFF, 0x00, 0xDF, 0x01, 0x00, 0xBF, 0x80, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x01, 0x00, 0x3F, 0x86, 0x00, 0x1F, 0x60, 0xB8, 0xB8, 0xF3, 0x09, 0xBF, 0x04, 0x1F, 0x06, 0x1F, 0x07, 0x3F, 0x05, 0x07, 0xFF, 0x80, 0xB1, 0xB3, 0x01, 0xC0, 0xD1, 0x81, 0xC0, 0xB1, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x82, 0xC8, 0xB1, 0xC0, 0xB1, 0x48, 0xF1, 0x01, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAE, 0x0D, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x0A, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x48, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x83, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF9, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x21, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x08, 0xF7, 0x01, 0x1A, 0x01, 0x18, 0x10, 0xD0, 0x03, 0x18, 0xAD, 0x84, 0x18, + 0xAE, 0x00, 0xF7, 0x00, 0xF9, 0x01, 0x19, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x84, 0x00, 0xF7, 0x18, 0xAE, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x00, 0xF7, 0x02, 0x01, 0x1A, 0x82, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x29, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x20, 0xAE, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x81, 0x28, 0xCE, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x84, 0x51, 0x72, 0x61, 0xB2, 0x8A, 0x54, 0x9A, 0x94, 0xB3, 0x35, 0x07, 0xD3, 0x95, 0x05, 0xD3, 0x75, 0x82, 0xD3, 0x55, 0x9C, 0x97, 0x36, 0xDD, 0x03, 0x07, 0xFF, 0x84, 0xAC, 0x17, 0xD3, 0x35, 0xD3, 0x14, 0xD3, 0x35, 0xD3, 0x14, 0x01, 0xD3, 0x15, 0x81, 0xD2, 0xF4, 0x46, 0x7C, 0x11, 0x07, 0xFF, 0x86, 0x6D, 0x59, 0xD2, 0x74, 0xCA, 0x94, 0xD2, 0x74, 0xCA, 0x74, 0xB3, 0x34, 0x07, 0xFE, 0x02, 0x07, 0xFD, 0x01, 0x07, 0xFC, 0x80, 0x07, 0xFB, 0x02, 0x07, 0xFA, 0x80, 0x07, 0xF9, 0x02, 0x07, 0xF8, 0x80, 0x07, 0xF7, 0x02, 0x07, 0xF6, 0x0A, 0x07, 0xF5, 0x02, 0x07, 0xF4, 0x8C, 0x07, 0xD3, 0x07, 0xB3, 0x07, 0x93, 0x07, 0x53, 0x07, 0x14, 0x06, 0xB5, 0x55, 0x16, 0x05, 0x38, 0x03, 0x7C, 0x01, 0xFF, 0x01, 0x7F, 0x01, 0x5F, 0x01, 0x3F, 0x01, 0x01, 0x1F, 0x82, 0x00, + 0xFF, 0x00, 0xDF, 0x00, 0xBF, 0x01, 0x00, 0x9F, 0x80, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x88, 0x00, 0x3F, 0x00, 0x1F, 0x60, 0x99, 0xC9, 0x11, 0x49, 0x1A, 0x02, 0xDF, 0x05, 0x1F, 0x06, 0xBF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x83, 0x64, 0x59, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0x04, 0xC0, 0xB1, 0x84, 0x90, 0xD1, 0x30, 0xF1, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x0F, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x82, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x0A, 0x18, 0xAD, 0x83, 0x18, 0xCE, 0x01, 0x18, 0x01, 0x19, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x3F, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x83, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xD0, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x22, 0x18, 0xAD, 0x8A, 0x18, 0xCD, 0x20, 0xAE, 0x10, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x06, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF8, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x86, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x1C, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x07, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, + 0xAD, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x80, 0x08, 0xF5, 0x2A, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x03, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x80, 0x31, 0x11, 0x01, 0x39, 0x11, 0x01, 0x41, 0x32, 0x83, 0x51, 0x52, 0x69, 0xD3, 0x92, 0x74, 0xB2, 0xF5, 0x01, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xD3, 0x95, 0x05, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x81, 0xA4, 0x78, 0x36, 0xDD, 0x01, 0x07, 0xFF, 0x82, 0x56, 0x3C, 0xD3, 0x35, 0xD3, 0x34, 0x01, 0xD3, 0x15, 0x82, 0xD2, 0xF4, 0xCB, 0x15, 0xBB, 0x96, 0x12, 0x07, 0xFF, 0x80, 0x84, 0x98, 0x01, 0xCA, 0x94, 0x80, 0xD2, 0x74, 0x01, 0xCA, 0x74, 0x03, 0x07, 0xFE, 0x01, 0x07, 0xFD, 0x02, 0x07, 0xFC, 0x01, 0x07, 0xFB, 0x01, 0x07, 0xFA, 0x01, 0x07, 0xF9, 0x03, 0x07, 0xF8, 0x0B, 0x07, 0xF7, 0x01, 0x07, 0xF6, 0x8C, 0x07, 0xD6, 0x07, 0xB6, 0x07, 0x96, 0x07, 0x56, 0x07, 0x16, 0xA4, 0x56, 0xBB, 0xD6, 0x34, 0x79, 0x02, 0xFD, 0x02, 0x3F, 0x01, 0x9F, 0x01, 0x5F, 0x01, 0x1F, 0x01, 0x00, 0xFF, 0x01, 0x00, 0xBF, 0x01, 0x00, 0x9F, 0x81, 0x00, 0x7F, 0x00, 0x5F, 0x02, 0x00, 0x3F, 0x86, 0x78, 0xB7, 0xC1, 0x11, 0xA1, 0x14, 0x01, 0xFF, 0x04, 0x1F, 0x05, 0xFF, 0x07, 0x5F, 0x04, 0x07, 0xFF, 0x85, 0x0F, 0x9F, 0xC0, 0xB1, 0xC0, 0xD2, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0x03, 0xC0, 0xB1, 0x83, 0x48, 0xF1, 0x30, 0xF0, + 0x30, 0xEF, 0x28, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x0F, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x20, 0xAE, 0x18, 0xB0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x3F, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x83, 0x10, 0xCF, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x22, 0x18, 0xAD, 0x87, 0x18, 0xCD, 0x18, 0xAD, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x92, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xCE, 0x08, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xCF, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xB0, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x06, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x20, 0xAD, 0x29, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, + 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xCD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x81, 0x20, 0xCF, 0x28, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xF0, 0x01, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x01, 0x41, 0x32, 0x82, 0x49, 0x32, 0x49, 0x33, 0x49, 0x53, 0x01, 0x51, 0x54, 0x82, 0x71, 0xF4, 0x9A, 0x75, 0xB2, 0xF5, 0x02, 0xD3, 0x75, 0x83, 0xD3, 0x55, 0xD3, 0x75, 0xD3, 0x55, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x89, 0x9C, 0x78, 0x36, 0xDD, 0x07, 0xFF, 0x9C, 0x57, 0xD3, 0x35, 0xD3, 0x15, 0xD3, 0x34, 0xD3, 0x14, 0xC3, 0x55, 0x27, 0x1D, 0x12, 0x07, 0xFF, 0x86, 0x9B, 0xF7, 0xCA, 0x94, 0xD2, 0x74, 0xCA, 0x73, 0xCA, 0x74, 0xD2, 0x53, 0x2E, 0xFD, 0x03, 0x07, 0xFF, 0x01, 0x07, 0xFE, 0x02, 0x07, 0xFD, 0x01, 0x07, 0xFC, 0x02, 0x07, 0xFB, 0x02, 0x07, 0xFA, 0x05, 0x07, 0xF9, 0x05, 0x07, 0xFA, 0x02, 0x07, 0xF9, 0x90, 0x07, 0xF8, 0x07, 0xD8, 0x07, 0xB8, 0x07, 0x97, 0x07, 0x58, 0x0E, 0xF8, 0xBB, 0xF6, 0xD3, 0x95, 0x6B, 0x99, 0x02, 0x5F, 0x02, 0x1F, 0x01, 0xBF, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xFF, 0x00, 0xDF, 0x00, 0xBF, 0x01, 0x00, 0x9F, 0x80, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x89, 0x00, 0x3F, 0x00, 0x1F, 0x98, 0xD5, 0xC8, 0xF2, 0xC9, 0x11, 0x19, 0x5E, 0x03, 0x3F, 0x05, 0x3F, 0x06, 0xBF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x80, 0x7B, 0x76, 0x06, 0xC0, 0xB1, 0x84, 0xC0, 0xD1, 0x88, 0xD1, 0x30, 0xF1, 0x30, 0xF0, 0x28, 0xF0, 0x02, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, + 0x08, 0xF3, 0x80, 0x10, 0xD2, 0x0A, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x10, 0xCF, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x44, 0x18, 0xAD, 0x8A, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0xD2, 0x00, 0xF6, 0x03, 0x01, 0x19, 0x85, 0x01, 0x18, 0x08, 0xD5, 0x10, 0xD0, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x25, 0x18, 0xAD, 0x81, 0x18, 0xB0, 0x01, 0x18, 0x04, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x8C, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF9, 0x18, 0xCF, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x17, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x01, 0x17, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xFA, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x2D, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x20, 0xAE, 0x80, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x81, 0x20, 0xCF, 0x28, 0xCE, 0x01, 0x28, 0xCF, 0x81, 0x28, 0xEF, 0x30, 0xEF, 0x01, 0x30, + 0xF0, 0x87, 0x31, 0x11, 0x39, 0x10, 0x39, 0x11, 0x41, 0x11, 0x49, 0x12, 0x41, 0x33, 0x49, 0x32, 0x49, 0x33, 0x01, 0x51, 0x54, 0x01, 0x59, 0x55, 0x88, 0x59, 0x75, 0x69, 0x96, 0x8A, 0x16, 0xAA, 0xD5, 0xCB, 0x55, 0xD3, 0x75, 0xD3, 0x55, 0xD3, 0x54, 0xD3, 0x55, 0x03, 0xD3, 0x35, 0x87, 0xCB, 0x35, 0x84, 0xF9, 0x0F, 0xBF, 0x5D, 0xDB, 0xA4, 0x57, 0x9C, 0x58, 0x84, 0xD8, 0x1F, 0x5E, 0x13, 0x07, 0xFF, 0x80, 0x9B, 0xD6, 0x04, 0xCA, 0x74, 0x80, 0x36, 0x9C, 0x06, 0x07, 0xFF, 0x02, 0x07, 0xFE, 0x02, 0x07, 0xFD, 0x02, 0x07, 0xFC, 0x08, 0x07, 0xFB, 0x03, 0x07, 0xFC, 0x03, 0x07, 0xFB, 0x01, 0x07, 0xDA, 0x8E, 0x07, 0xBA, 0x07, 0x9A, 0x07, 0x79, 0x2E, 0x99, 0xC3, 0xD6, 0xD3, 0x95, 0x83, 0x39, 0x0A, 0x3E, 0x01, 0xDF, 0x01, 0x9F, 0x01, 0x5F, 0x01, 0x1F, 0x00, 0xFF, 0x00, 0xBF, 0x00, 0x9F, 0x02, 0x00, 0x7F, 0x02, 0x00, 0x3F, 0x87, 0x90, 0xD5, 0xC9, 0x12, 0xC0, 0xF1, 0x71, 0x17, 0x02, 0x7F, 0x04, 0x9F, 0x06, 0x5F, 0x07, 0x7F, 0x04, 0x07, 0xFF, 0x81, 0x26, 0x9D, 0xC8, 0x91, 0x06, 0xC0, 0xB1, 0x81, 0xB8, 0xB1, 0x31, 0x10, 0x01, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x0F, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x09, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xB0, 0x01, 0x18, 0x01, 0x19, 0x08, 0xF7, 0x18, 0xCE, 0x43, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x84, 0x01, 0x17, 0x01, 0x1A, 0x00, 0xF9, 0x10, 0xD0, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x82, 0x10, 0xD1, 0x00, 0xF8, + 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x81, 0x00, 0xF6, 0x18, 0xAF, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x20, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x10, 0xD0, 0x01, 0x18, 0x05, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x8B, 0x20, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x39, 0x00, 0xF8, 0x18, 0xB0, 0x16, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x0D, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF9, 0x20, 0xAE, 0x27, 0x18, 0xAD, 0x83, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x81, 0x20, 0xCD, 0x18, 0xCE, 0x01, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x83, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xEF, 0x28, 0xD0, 0x01, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x80, 0x39, 0x31, 0x01, 0x41, 0x32, 0x82, 0x49, 0x33, 0x51, 0x33, 0x51, 0x53, 0x01, 0x51, 0x54, 0x87, 0x59, 0x75, 0x61, 0x75, 0x61, 0x95, 0x92, 0x55, 0x8B, 0x14, 0x4A, 0xD3, 0x7A, 0x94, 0xAB, 0x14, 0x02, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x84, 0xD3, 0x15, 0xD3, 0x14, 0xD3, 0x35, 0xC3, 0x55, 0x46, 0x7C, 0x17, 0x07, 0xFF, 0x80, 0xC2, 0xD4, + 0x01, 0xCA, 0x74, 0x83, 0xD2, 0x74, 0xCA, 0x74, 0xD2, 0x53, 0x36, 0x9C, 0x08, 0x07, 0xFF, 0x03, 0x07, 0xFE, 0x04, 0x07, 0xFD, 0x02, 0x07, 0xFC, 0x05, 0x07, 0xFD, 0x02, 0x07, 0xFE, 0x02, 0x07, 0xFD, 0x01, 0x07, 0xFC, 0x80, 0x07, 0xDB, 0x01, 0x07, 0xBB, 0x8A, 0x07, 0x7B, 0x2E, 0xBA, 0xC3, 0xD6, 0xD3, 0x95, 0xB3, 0x37, 0x09, 0xDF, 0x01, 0xBF, 0x01, 0x7F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xDF, 0x01, 0x00, 0x9F, 0x80, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x01, 0x00, 0x3F, 0x88, 0x78, 0x96, 0xC0, 0xF1, 0xC8, 0xF1, 0xA8, 0xF3, 0x01, 0xDF, 0x03, 0xDF, 0x05, 0xBF, 0x07, 0x1F, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x80, 0xA2, 0x14, 0x04, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x80, 0x68, 0xF1, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x22, 0x18, 0xAD, 0x80, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x84, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x39, 0x08, 0xF7, 0x18, 0xAE, 0x41, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x95, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xD0, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF4, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF6, 0x10, 0xD2, 0x10, 0xD0, 0x18, 0xCF, 0x18, 0xD0, 0x10, 0xD3, 0x01, 0x18, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF9, 0x18, 0xCF, 0x21, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x04, 0x18, 0xAD, 0x84, 0x18, + 0xAE, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x03, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xCF, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x2F, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x80, 0x20, 0xEF, 0x01, 0x28, 0xCF, 0x82, 0x28, 0xEF, 0x30, 0xF0, 0x30, 0xEF, 0x01, 0x30, 0xF0, 0x01, 0x39, 0x11, 0x91, 0x41, 0x11, 0x41, 0x32, 0x49, 0x32, 0x49, 0x33, 0x51, 0x33, 0x51, 0x53, 0x51, 0x54, 0x59, 0x54, 0x61, 0x95, 0x9A, 0x75, 0xCB, 0x55, 0xCB, 0x75, 0x5B, 0xB4, 0x3B, 0x34, 0x42, 0xB3, 0x4A, 0x33, 0x62, 0x53, 0x9A, 0xB4, 0x01, 0xD3, 0x35, 0x83, 0xD3, 0x15, 0xD3, 0x34, 0xD3, 0x14, 0xD3, 0x15, 0x01, 0xD3, 0x14, 0x80, 0x5D, 0xDB, 0x15, 0x07, 0xFF, 0x80, 0x1F, 0x5E, 0x04, 0xD2, 0x74, 0x81, 0xCA, 0x53, 0x36, 0x9D, 0x0C, 0x07, 0xFF, 0x0C, 0x07, 0xFE, 0x05, 0x07, 0xFF, 0x02, 0x07, 0xFE, 0x80, 0x07, 0xFD, 0x01, 0x07, 0xDD, 0x82, 0x07, 0xBD, 0x07, 0x9C, 0x56, 0x1A, 0x01, 0xD3, 0x95, 0x87, 0xAB, 0x37, 0x09, 0x9F, 0x01, 0x5F, 0x01, 0x3F, 0x01, 0x1F, 0x00, 0xFF, 0x00, + 0xBF, 0x00, 0x9F, 0x01, 0x00, 0x7F, 0x80, 0x00, 0x5F, 0x01, 0x00, 0x3F, 0x88, 0x30, 0x5C, 0xC0, 0xF1, 0xC8, 0xF1, 0xC8, 0xD1, 0x21, 0x5D, 0x03, 0x3F, 0x05, 0x1F, 0x06, 0xDF, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x80, 0x5C, 0xD9, 0x02, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x03, 0xC0, 0xB1, 0x81, 0x98, 0xD1, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x82, 0x28, 0xCF, 0x28, 0xEF, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x81, 0x18, 0xAD, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x3F, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x01, 0x17, 0x01, 0x1A, 0x01, 0x18, 0x10, 0xD0, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x81, 0x01, 0x17, 0x10, 0xD0, 0x02, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x08, 0xF3, 0x01, 0x18, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x21, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x03, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF8, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x86, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xCF, 0x11, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x00, 0xF8, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xCD, 0x18, 0xB0, 0x00, 0xF9, 0x01, 0x19, 0x00, + 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x01, 0x17, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x32, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x01, 0x39, 0x11, 0x82, 0x41, 0x11, 0x41, 0x31, 0x41, 0x32, 0x01, 0x49, 0x33, 0x90, 0x51, 0x54, 0x59, 0x74, 0x92, 0x55, 0xCB, 0x55, 0xD3, 0x75, 0xBB, 0x95, 0x54, 0x74, 0x3C, 0x34, 0x3B, 0xB4, 0x43, 0x33, 0x42, 0xB3, 0x4A, 0x13, 0x49, 0xF3, 0x5A, 0x32, 0x9A, 0xB4, 0xD3, 0x34, 0xD3, 0x35, 0x01, 0xD3, 0x14, 0x83, 0xD3, 0x15, 0xD3, 0x14, 0xD2, 0xF4, 0x84, 0xD8, 0x14, 0x07, 0xFF, 0x84, 0x4D, 0xDB, 0xD2, 0x74, 0xCA, 0x74, 0xCA, 0x73, 0xD2, 0x74, 0x01, 0xCA, 0x54, 0x80, 0x36, 0x9C, 0x23, 0x07, 0xFF, 0x01, 0x07, 0xFE, 0x83, 0x07, 0xDD, 0x07, 0xDE, 0x07, 0x9D, 0x6D, 0x99, 0x01, 0xD3, 0x95, 0x81, 0xAB, 0x17, 0x09, 0x7F, 0x01, 0x01, 0x1F, 0x80, 0x00, 0xFF, 0x01, 0x00, 0xBF, 0x80, 0x00, 0x9F, 0x01, 0x00, 0x7F, 0x02, 0x00, 0x3F, 0x01, 0xC8, 0xF1, 0x85, 0xC8, 0xD1, 0x51, 0x19, 0x02, 0xDF, 0x04, 0xFF, 0x06, 0xBF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x80, 0x1F, 0x1E, 0x08, 0xC0, 0xB1, 0x80, 0x49, 0x10, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xEF, 0x81, 0x28, 0xCF, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x0C, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x82, 0x10, 0xD2, + 0x18, 0xAD, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x10, 0xCF, 0x01, 0x01, 0x19, 0x84, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x25, 0x18, 0xAD, 0x8C, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xCF, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x86, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xD0, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xCE, 0x24, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x20, 0xAD, 0x09, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x20, 0xAD, 0x0F, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x10, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x0B, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x20, 0xAE, 0x10, 0xD2, 0x01, 0x08, 0xF3, 0x81, 0x10, 0xD2, 0x20, 0xAD, 0x33, 0x18, 0xAD, 0x81, + 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x82, 0x39, 0x10, 0x39, 0x11, 0x41, 0x12, 0x01, 0x41, 0x32, 0x83, 0x49, 0x33, 0x51, 0x33, 0x82, 0x14, 0xCB, 0x55, 0x01, 0xD3, 0x75, 0x88, 0xB3, 0xD5, 0x3D, 0x55, 0x35, 0x15, 0x34, 0x95, 0x3C, 0x14, 0x3B, 0x94, 0x3B, 0x13, 0x42, 0x93, 0x42, 0x12, 0x01, 0x49, 0xF3, 0x88, 0x5A, 0x13, 0x9A, 0xB4, 0xD3, 0x14, 0xD3, 0x15, 0xCB, 0x15, 0xD2, 0xF4, 0xD2, 0xF5, 0xD2, 0xF4, 0x75, 0x39, 0x13, 0x07, 0xFF, 0x87, 0x8C, 0x37, 0xCA, 0x74, 0xD2, 0x73, 0xD2, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0xD2, 0x53, 0x1F, 0x5E, 0x26, 0x07, 0xFF, 0x80, 0x07, 0xFE, 0x01, 0x07, 0xDF, 0x83, 0x94, 0xD8, 0xD3, 0x96, 0xD3, 0x95, 0x82, 0x99, 0x02, 0x00, 0xFF, 0x01, 0x00, 0xBF, 0x81, 0x00, 0x9F, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x89, 0x00, 0x3F, 0x00, 0x1F, 0xC8, 0xD1, 0xC0, 0xF1, 0xC0, 0xD1, 0xA0, 0xD4, 0x02, 0x7F, 0x04, 0xBF, 0x06, 0x9F, 0x07, 0xBF, 0x05, 0x07, 0xFF, 0x80, 0x83, 0x15, 0x07, 0xC0, 0xB1, 0x80, 0x70, 0xF1, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x02, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x0C, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xCD, 0x01, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, + 0x20, 0xAD, 0x10, 0xD2, 0x10, 0xD3, 0x08, 0xF3, 0x10, 0xD1, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x23, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x01, 0x19, 0x81, 0x10, 0xCF, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x08, 0xF6, 0x01, 0x19, 0x01, 0x18, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1B, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x05, 0x01, 0x19, 0x82, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xAD, 0x09, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x08, 0xF7, 0x01, 0x1A, 0x01, 0x18, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x02, 0x18, 0xAE, 0x81, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x0F, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x89, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x20, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x42, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x80, 0x28, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xF0, 0x02, 0x30, 0xF0, 0x01, 0x39, 0x11, 0x02, 0x41, 0x32, 0x81, 0x59, 0x73, 0xB2, 0xF4, 0x02, 0xD3, 0x75, 0x90, 0x94, 0x35, 0x3D, 0x55, 0x2D, 0x55, 0x2D, 0x75, 0x35, 0x15, 0x3C, 0x94, 0x34, 0x14, 0x3B, 0x94, 0x43, 0x13, 0x42, 0x93, 0x4A, 0x13, 0x41, 0xF3, + 0x49, 0xF2, 0x4A, 0x13, 0x5A, 0x33, 0xA2, 0xB4, 0xD3, 0x14, 0x01, 0xD2, 0xF4, 0x82, 0xD2, 0xD4, 0xD2, 0xF4, 0x4E, 0x1B, 0x11, 0x07, 0xFF, 0x83, 0x17, 0x9F, 0xD2, 0x74, 0xCA, 0x53, 0xCA, 0x73, 0x02, 0xCA, 0x53, 0x80, 0xD2, 0x53, 0x09, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x0C, 0x07, 0xFF, 0x07, 0x07, 0xDF, 0x06, 0x07, 0xFF, 0x81, 0x0F, 0x9E, 0xBC, 0x16, 0x01, 0xD3, 0x95, 0x80, 0x72, 0x5A, 0x02, 0x00, 0xBF, 0x80, 0x00, 0x9F, 0x01, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x82, 0x00, 0x3F, 0x00, 0x1F, 0x90, 0xB5, 0x01, 0xC8, 0xD1, 0x84, 0xC0, 0xD1, 0x12, 0x3E, 0x04, 0x7F, 0x06, 0x7F, 0x07, 0xBF, 0x05, 0x07, 0xFF, 0x80, 0x54, 0xD9, 0x05, 0xC0, 0xB1, 0x83, 0xC0, 0xD1, 0xC0, 0xB1, 0x90, 0xD1, 0x38, 0xF1, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x0C, 0x18, 0xAD, 0x81, 0x08, 0xF5, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xF5, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xCE, 0x0A, 0x18, 0xAD, 0x83, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x24, 0x18, 0xAD, 0x8B, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x18, 0xD0, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x85, 0x18, 0xAF, 0x08, 0xF6, 0x01, + 0x1A, 0x01, 0x19, 0x01, 0x18, 0x08, 0xF4, 0x03, 0x18, 0xAD, 0x83, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x18, 0x18, 0xAE, 0x20, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x0B, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF8, 0x10, 0xD0, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x11, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x86, 0x00, 0xF7, 0x18, 0xAE, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xD0, 0x01, 0x00, 0xF9, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x34, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x84, 0x28, 0xEF, 0x28, 0xF0, 0x30, 0xF0, 0x38, 0xF0, 0x30, 0xF0, 0x01, 0x39, 0x11, 0x83, 0x41, 0x12, 0x41, 0x32, 0x82, 0x34, 0xCB, 0x55, 0x01, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0x94, 0x35, 0x01, 0x35, 0x75, 0x80, 0x2D, 0x75, 0x01, 0x35, 0x55, 0x88, 0x35, 0x14, 0x34, 0x74, 0x3B, 0xF4, 0x3B, 0x73, 0x42, 0xF4, 0x42, 0x73, 0x4A, 0x13, 0x42, 0x13, 0x49, 0xF2, 0x01, 0x49, 0xF3, 0x86, 0x6A, 0x33, 0xBA, 0xD4, 0xD2, 0xF5, 0xD2, 0xF4, 0xD2, 0xD4, 0xC3, 0x35, 0x17, 0x7E, 0x10, 0x07, 0xFF, 0x83, 0x5D, 0x9A, 0xCA, 0x54, 0xD2, 0x73, 0xCA, + 0x54, 0x02, 0xCA, 0x53, 0x80, 0x9B, 0xB6, 0x05, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x02, 0x07, 0xBF, 0x80, 0x07, 0x9F, 0x01, 0x07, 0x7F, 0x82, 0x07, 0x7E, 0x07, 0xBF, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x07, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x04, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x80, 0x36, 0xDD, 0x02, 0xD3, 0x95, 0x80, 0x51, 0xBC, 0x01, 0x00, 0x9F, 0x02, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x89, 0x00, 0x3F, 0x00, 0x1F, 0x70, 0x77, 0xC0, 0xD2, 0xC8, 0xD1, 0xC0, 0xD1, 0x49, 0xFA, 0x04, 0x9F, 0x06, 0x9F, 0x07, 0xDF, 0x05, 0x07, 0xFF, 0x80, 0x1F, 0x1E, 0x06, 0xC0, 0xB1, 0x82, 0xC0, 0xD1, 0xC0, 0xB1, 0x39, 0x10, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x04, 0x20, 0xAE, 0x0B, 0x18, 0xAD, 0x80, 0x01, 0x1A, 0x05, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x09, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x87, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x02, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x20, 0xAD, 0x27, 0x18, 0xAD, 0x82, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xD0, 0x04, 0x18, 0xAD, 0x82, 0x10, 0xD3, 0x01, 0x1A, 0x01, 0x18, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF8, 0x01, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x84, 0x08, 0xF5, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAF, 0x01, + 0x01, 0x19, 0x80, 0x18, 0xD0, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x85, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xF3, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0x8D, 0x0A, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xCE, 0x08, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xB0, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x13, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x18, 0xCD, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x33, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x01, 0x39, 0x11, 0x81, 0x49, 0x52, 0xAA, 0xB4, 0x02, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0x94, 0x35, 0x01, 0x35, 0x75, 0x02, 0x2D, 0x75, 0x89, 0x35, 0x55, 0x54, 0xD5, 0x64, 0x75, 0x83, 0xB5, 0x8B, 0x74, 0x9B, 0x34, 0xAB, 0x14, 0xAA, 0xD4, 0xB2, 0xD4, 0xAA, 0xD4, 0x01, 0xAA, 0xB4, 0x86, 0xB2, 0xB4, 0x6B, 0x15, 0x8A, 0x94, 0xC2, 0xD4, 0xD2, 0xF4, 0xD2, 0xD4, 0x84, 0xB8, 0x10, 0x07, 0xFF, 0x83, 0xB3, 0x15, 0xD2, 0x74, 0xCA, 0x53, 0xCA, 0x54, 0x01, 0xCA, 0x53, 0x81, 0xD2, 0x53, 0x65, 0x3A, 0x01, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x80, 0x07, 0xFF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x80, 0x07, + 0x7F, 0x01, 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x80, 0x07, 0x1F, 0x01, 0x07, 0x1E, 0x83, 0x07, 0x3E, 0x07, 0x9F, 0x07, 0xDF, 0x07, 0xFF, 0x04, 0x07, 0xDF, 0x08, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x80, 0x7D, 0x7A, 0x01, 0xD3, 0x95, 0x81, 0xC3, 0x75, 0x28, 0xFE, 0x01, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x81, 0x00, 0x3F, 0x00, 0x5F, 0x01, 0x00, 0x3F, 0x80, 0x18, 0x3E, 0x01, 0xC0, 0xD1, 0x84, 0xC0, 0xD2, 0x79, 0x96, 0x04, 0xBF, 0x06, 0x7F, 0x07, 0xBF, 0x06, 0x07, 0xFF, 0x80, 0xA2, 0x14, 0x02, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x02, 0xC0, 0xB1, 0x81, 0xC0, 0xD1, 0x58, 0xF1, 0x02, 0x30, 0xF0, 0x82, 0x28, 0xCF, 0x28, 0xEF, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x0B, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x09, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x83, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x02, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF6, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x03, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x19, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x28, 0x18, 0xAD, 0x81, 0x01, 0x18, 0x18, 0xB0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x08, 0xF7, 0x01, 0x19, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x85, 0x08, 0xF4, 0x01, 0x39, 0x01, 0x19, 0x10, 0xF3, 0x18, 0xD0, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x80, 0x18, 0xD0, 0x01, 0x18, 0xAE, 0x84, 0x18, 0xCD, 0x01, + 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x18, 0xAE, 0x22, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0A, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x83, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF8, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x17, 0x18, 0xCE, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x30, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x83, 0x38, 0xF0, 0x39, 0x11, 0x59, 0x72, 0xCB, 0x55, 0x03, 0xD3, 0x75, 0x86, 0xAB, 0xD5, 0x45, 0x15, 0x54, 0xF5, 0x7C, 0x75, 0x8C, 0x35, 0xAB, 0xD5, 0xCB, 0x55, 0x01, 0xD3, 0x35, 0x80, 0xD3, 0x34, 0x01, 0xD3, 0x35, 0x80, 0xD3, 0x15, 0x01, 0xD3, 0x14, 0x84, 0xC3, 0x55, 0x9C, 0x37, 0x65, 0x9A, 0x46, 0x7C, 0x0F, 0xBF, 0x01, 0x07, 0xFF, 0x83, 0x26, 0x9D, 0x9C, 0x17, 0xD2, 0xD4, 0x9C, 0x17, 0x0F, 0x07, 0xFF, 0x84, 0x5D, 0x9A, 0xD2, 0x74, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0x02, 0xCA, 0x33, 0x81, 0x26, 0xDD, 0x07, 0xFF, 0x03, 0x07, 0xDF, 0x80, 0x07, 0xBF, 0x01, 0x07, 0x9F, 0x01, 0x07, 0x7F, 0x81, 0x07, 0x5F, 0x07, 0x3F, 0x01, 0x07, 0x1E, + 0x01, 0x06, 0xFE, 0x80, 0x06, 0xFF, 0x01, 0x06, 0xDE, 0x01, 0x06, 0xBE, 0x82, 0x06, 0xDE, 0x07, 0x3E, 0x07, 0x9F, 0x01, 0x07, 0xBF, 0x02, 0x07, 0x9F, 0x80, 0x07, 0x7F, 0x01, 0x07, 0x9F, 0x80, 0x07, 0x7F, 0x03, 0x07, 0x9F, 0x01, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x81, 0x0F, 0xBF, 0xC3, 0xF6, 0x01, 0xD3, 0x95, 0x80, 0xAA, 0xF7, 0x06, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x86, 0xA0, 0x94, 0xC0, 0xD1, 0xC8, 0xB1, 0xA8, 0xF3, 0x04, 0xBF, 0x06, 0x9F, 0x07, 0xDF, 0x06, 0x07, 0xFF, 0x81, 0x73, 0xD8, 0xB8, 0xB1, 0x02, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x02, 0xC0, 0xB1, 0x81, 0x78, 0xF1, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x0B, 0x18, 0xAD, 0x02, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x07, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x05, 0x01, 0x19, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x25, 0x18, 0xAD, 0x83, 0x18, 0xCF, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x00, 0xF6, 0x01, 0x19, 0x08, 0xF3, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x82, 0x00, 0xF6, 0x00, 0xF9, 0x08, 0xD4, 0x02, 0x18, 0xAD, 0x82, 0x00, 0xF8, 0x01, 0x19, 0x08, 0xF3, 0x02, 0x18, 0xAD, 0x84, 0x00, 0xF6, 0x01, 0x19, 0x10, + 0xD3, 0x18, 0xAD, 0x18, 0xAE, 0x1E, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x09, 0x18, 0xAD, 0x8A, 0x20, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x18, 0xD0, 0x02, 0x18, 0xAD, 0x80, 0x18, 0x8D, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x86, 0x18, 0xCD, 0x10, 0xCF, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x17, 0x18, 0xCE, 0x18, 0x8D, 0x02, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x42, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x80, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x81, 0x31, 0x11, 0x71, 0xF2, 0x04, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x80, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x80, 0xCB, 0x14, 0x01, 0xD3, 0x34, 0x83, 0xAC, 0x16, 0x75, 0x3A, 0x46, 0x7D, 0x1F, 0x5E, 0x08, 0x07, 0xFF, 0x81, 0x36, 0x9C, 0x4E, 0x1B, 0x0E, 0x07, 0xFF, 0x81, 0x26, 0xFD, 0xC2, 0xB4, 0x02, 0xCA, 0x53, 0x80, 0xD2, 0x53, 0x01, 0xCA, 0x33, 0x80, 0xA3, 0x56, 0x01, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x80, 0x07, 0x9F, 0x01, 0x07, 0x7F, 0x81, 0x07, 0x5F, 0x07, 0x3F, 0x01, 0x07, 0x1F, 0x80, 0x06, 0xFF, 0x01, 0x06, 0xFE, 0x80, 0x06, 0xDE, 0x01, 0x06, 0xBE, 0x02, 0x06, 0x9E, 0x01, + 0x06, 0x7E, 0x01, 0x06, 0x5E, 0x81, 0x06, 0xBE, 0x07, 0x3E, 0x07, 0x07, 0x5F, 0x03, 0x07, 0x7F, 0x80, 0x07, 0x9F, 0x01, 0x07, 0xBF, 0x02, 0x07, 0xDF, 0x86, 0x07, 0xFF, 0x07, 0xDF, 0x6D, 0xDA, 0xD3, 0x95, 0xD3, 0x76, 0xD3, 0x75, 0x79, 0xFA, 0x01, 0x00, 0x3F, 0x81, 0x00, 0x1F, 0x00, 0x3F, 0x03, 0x00, 0x1F, 0x80, 0x88, 0x96, 0x01, 0xC0, 0xB1, 0x83, 0xC8, 0xB1, 0x0C, 0x9F, 0x06, 0x9F, 0x07, 0xBF, 0x06, 0x07, 0xFF, 0x80, 0x3D, 0xBB, 0x02, 0xC0, 0xB1, 0x82, 0xC0, 0xD1, 0xC0, 0xB1, 0xB8, 0xD1, 0x01, 0xC0, 0xB1, 0x81, 0x98, 0xD1, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x82, 0x20, 0xAE, 0x20, 0xCE, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x0A, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x05, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x0A, 0x18, 0xAD, 0x86, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xCF, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x29, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x82, 0x08, 0xF6, 0x01, 0x19, 0x08, 0xF3, 0x02, 0x18, 0xAD, 0x82, 0x00, 0xF6, 0x01, 0x1A, 0x08, 0xF4, 0x02, 0x18, 0xAD, 0x83, 0x01, 0x18, 0x01, 0x1A, 0x08, 0xF3, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x08, 0xF7, 0x01, 0x19, 0x08, 0xF3, 0x18, 0xCD, 0x01, 0x18, + 0xAD, 0x80, 0x18, 0xCD, 0x1D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x04, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xB0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x85, 0x18, 0xB0, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x30, 0x18, 0xAD, 0x05, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x02, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x02, 0x30, 0xF0, 0x80, 0x9A, 0x93, 0x03, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x80, 0xD3, 0x35, 0x01, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x83, 0xC3, 0x75, 0x84, 0xF9, 0x4E, 0x3C, 0x0F, 0xBF, 0x1C, 0x07, 0xFF, 0x84, 0x0F, 0x9F, 0xAB, 0x75, 0xCA, 0x54, 0xD2, 0x53, 0xCA, 0x53, 0x01, 0xCA, 0x33, 0x83, 0xD2, 0x33, 0xCA, 0x33, 0x4D, 0xBB, 0x07, 0xDF, 0x01, 0x07, 0xBF, 0x81, 0x07, 0x9F, 0x07, 0x7F, 0x01, 0x07, 0x5F, 0x80, 0x07, 0x3F, 0x01, 0x07, 0x1F, 0x80, 0x06, 0xFF, 0x02, 0x06, 0xDE, 0x01, 0x06, 0xBE, 0x80, 0x06, 0x9E, 0x02, 0x06, 0x7E, 0x80, 0x06, 0x5E, 0x01, 0x06, 0x3E, 0x01, 0x06, 0x1E, 0x83, 0x05, 0xFE, 0x05, 0xFD, 0x06, 0x7D, 0x06, 0xDE, 0x03, 0x06, 0xFE, 0x80, 0x07, 0x1E, 0x02, 0x07, 0x3F, 0x82, 0x07, 0x3E, 0x07, 0x5F, 0x07, 0x7F, 0x01, 0x07, 0x9F, 0x80, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x81, 0x0F, 0xBF, + 0xC3, 0xD6, 0x01, 0xD3, 0x75, 0x81, 0xD3, 0x55, 0x30, 0xFD, 0x03, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x80, 0x60, 0x58, 0x02, 0xC0, 0xB1, 0x82, 0x33, 0xFC, 0x06, 0xBF, 0x07, 0xBF, 0x06, 0x07, 0xFF, 0x81, 0x0F, 0x9E, 0xC0, 0xD1, 0x02, 0xC0, 0xB1, 0x82, 0xC0, 0xD1, 0xB8, 0xB1, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x81, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x80, 0x20, 0xAD, 0x01, 0x20, 0xAE, 0x0A, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x24, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x88, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF6, 0x01, 0x19, 0x08, 0xD5, 0x18, 0xCD, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xD4, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD3, 0x10, 0xD0, 0x08, 0xF4, 0x01, 0x01, 0x19, 0x80, 0x18, 0xB0, 0x02, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x3A, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, + 0x20, 0xAD, 0x15, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xB0, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x4B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x05, 0x20, 0xCE, 0x01, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x82, 0x30, 0xF0, 0x39, 0x10, 0xAA, 0xF4, 0x04, 0xD3, 0x75, 0x04, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x82, 0xB3, 0xD6, 0x75, 0x39, 0x27, 0x1D, 0x1F, 0x07, 0xFF, 0x85, 0x2E, 0xFD, 0xB3, 0x15, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x33, 0xCA, 0x53, 0x01, 0xCA, 0x34, 0x81, 0xCA, 0x33, 0xA3, 0x35, 0x01, 0x07, 0xBF, 0x82, 0x07, 0x9F, 0x07, 0x7F, 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x80, 0x07, 0x1F, 0x01, 0x06, 0xFF, 0x83, 0x06, 0xDF, 0x06, 0xDE, 0x06, 0xBF, 0x06, 0xBE, 0x02, 0x06, 0x9E, 0x80, 0x06, 0x7E, 0x01, 0x06, 0x5E, 0x80, 0x06, 0x3E, 0x01, 0x06, 0x1E, 0x84, 0x05, 0xFE, 0x05, 0xDE, 0x05, 0xBD, 0x05, 0xBE, 0x05, 0x9D, 0x01, 0x05, 0x5E, 0x84, 0x05, 0xBE, 0x05, 0xFE, 0x06, 0x1D, 0x06, 0x7E, 0x06, 0xBE, 0x01, 0x06, 0xFE, 0x81, 0x07, 0x1F, 0x07, 0x1E, 0x01, 0x07, 0x3F, 0x82, 0x07, 0x5F, 0x07, 0x7F, 0x07, 0x9F, 0x01, 0x07, 0xBF, 0x80, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x81, 0x85, 0x39, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x80, 0xBA, 0xF6, 0x06, 0x00, 0x1F, 0x81, 0x40, 0x3B, 0xC8, 0xB1, 0x01, 0xC0, 0xB1, 0x82, 0x63, 0x18, 0x06, 0xBF, 0x07, 0xBF, 0x07, 0x07, 0xFF, 0x80, 0xA9, 0xB3, 0x05, 0xC0, 0xB1, 0x83, 0xC0, 0xD1, 0xB8, 0xD1, 0x49, 0x10, 0x39, 0x10, 0x01, 0x30, 0xF0, 0x84, 0x28, 0xCF, 0x28, 0xEF, 0x28, 0xCF, 0x20, 0xCF, 0x20, 0xCE, 0x02, + 0x20, 0xAE, 0x84, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x20, 0xAE, 0x09, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x10, 0xD3, 0x80, 0x10, 0xD2, 0x0E, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x84, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x2C, 0x18, 0xAD, 0x95, 0x20, 0xAD, 0x08, 0xF3, 0x01, 0x1A, 0x01, 0x18, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF8, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xCD, 0x18, 0xAD, 0x10, 0xD0, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x25, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x0F, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x83, 0x01, 0x17, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAF, 0x14, 0x18, 0xAD, 0x89, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCF, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x42, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xCF, 0x01, 0x28, 0xCF, 0x83, 0x28, 0xEF, 0x30, 0xCF, 0x39, 0x10, 0xB3, 0x14, 0x04, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x80, 0xD3, 0x54, 0x01, 0xD3, 0x55, 0x82, 0xCB, 0x96, 0x85, 0x18, + 0x36, 0xDD, 0x20, 0x07, 0xFF, 0x84, 0x0F, 0xBE, 0x65, 0x3A, 0xCA, 0x54, 0xCA, 0x53, 0xD2, 0x53, 0x01, 0xCA, 0x53, 0x03, 0xCA, 0x33, 0x80, 0x2E, 0x9D, 0x01, 0x07, 0x7F, 0x80, 0x07, 0x5F, 0x01, 0x07, 0x3F, 0x88, 0x07, 0x1F, 0x06, 0xFF, 0x06, 0xFE, 0x06, 0xDF, 0x06, 0xDE, 0x06, 0xBF, 0x06, 0xBE, 0x06, 0xBF, 0x06, 0x9E, 0x01, 0x06, 0x7E, 0x01, 0x06, 0x5E, 0x80, 0x06, 0x3E, 0x01, 0x06, 0x1E, 0x81, 0x05, 0xFE, 0x05, 0xDE, 0x01, 0x05, 0xBE, 0x8B, 0x05, 0x9E, 0x05, 0x7E, 0x05, 0x3E, 0x05, 0x1E, 0x04, 0xFE, 0x04, 0xBE, 0x04, 0x9E, 0x04, 0x1E, 0x03, 0xDD, 0x04, 0xDE, 0x06, 0x5E, 0x06, 0xBE, 0x01, 0x06, 0xDE, 0x83, 0x06, 0xFE, 0x07, 0x1F, 0x07, 0x3E, 0x07, 0x7F, 0x01, 0x07, 0x9F, 0x80, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x36, 0xDD, 0x02, 0xD3, 0x55, 0x81, 0xD3, 0x35, 0x69, 0x9A, 0x06, 0x00, 0x1F, 0x85, 0xB8, 0xB2, 0xC0, 0x91, 0xC0, 0xB1, 0x7A, 0x96, 0x06, 0xBF, 0x07, 0x9F, 0x04, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x82, 0x82, 0xF5, 0xC0, 0xB1, 0xC0, 0xD1, 0x02, 0xC0, 0xB1, 0x02, 0xB8, 0xD1, 0x81, 0x60, 0xF1, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xEF, 0x81, 0x28, 0xCF, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x80, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x11, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x83, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x08, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, + 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x20, 0xCD, 0x10, 0xD2, 0x08, 0xD4, 0x08, 0xF3, 0x10, 0xD2, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x2E, 0x18, 0xAD, 0x88, 0x10, 0xCF, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAF, 0x08, 0xF6, 0x01, 0x01, 0x19, 0x89, 0x00, 0xF9, 0x08, 0xF4, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x1A, 0x00, 0xF8, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x22, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x08, 0xF7, 0x01, 0x19, 0x08, 0xF7, 0x18, 0xCE, 0x20, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x43, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x02, 0x20, 0xAE, 0x04, 0x20, 0xCE, 0x86, 0x28, 0xCE, 0x20, 0xCF, 0x28, 0xCF, 0x28, 0xEF, 0x39, 0x10, 0xB3, 0x14, 0xD3, 0x95, 0x03, 0xD3, 0x75, 0x03, 0xD3, 0x55, 0x82, 0xBB, 0xD6, 0x5D, 0xFB, 0x0F, 0xBF, 0x20, 0x07, 0xFF, 0x85, 0x0F, 0xBF, 0x5D, 0x9A, 0xB3, 0x15, 0xD2, 0x54, 0xCA, 0x53, 0xD2, 0x54, 0x01, 0xCA, 0x53, 0x81, 0xCA, 0x33, 0xD2, 0x33, 0x01, 0xCA, 0x33, 0x81, 0x64, 0xD9, 0x07, 0x7F, 0x01, 0x07, 0x3F, 0x80, 0x07, 0x1F, 0x01, 0x06, 0xFF, 0x02, 0x06, 0xDF, 0x81, 0x06, 0xBF, 0x06, 0xBE, 0x01, 0x06, 0x9F, 0x80, 0x06, 0x7E, 0x01, 0x06, 0x5E, 0x01, 0x06, 0x3E, 0x80, 0x06, 0x1E, 0x01, + 0x05, 0xFE, 0x81, 0x05, 0xDE, 0x05, 0xBE, 0x01, 0x05, 0x9E, 0x01, 0x05, 0x5E, 0x8A, 0x05, 0x1E, 0x04, 0xFE, 0x04, 0xDE, 0x04, 0x9E, 0x04, 0x3D, 0x03, 0xDE, 0x03, 0xBE, 0x03, 0x9E, 0x03, 0x7E, 0x03, 0xFE, 0x05, 0xFE, 0x01, 0x06, 0x9E, 0x84, 0x06, 0xBE, 0x06, 0xFE, 0x07, 0x1E, 0x07, 0x3F, 0x07, 0x5F, 0x01, 0x07, 0x9F, 0x02, 0x07, 0xDF, 0x82, 0x07, 0xFF, 0xBB, 0xF6, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x81, 0xC2, 0xF5, 0x08, 0x3F, 0x04, 0x00, 0x1F, 0x81, 0x00, 0x3F, 0x90, 0x95, 0x01, 0xC8, 0xB1, 0x87, 0x91, 0xF5, 0x06, 0x7F, 0x06, 0xFF, 0x07, 0x3F, 0x07, 0x5F, 0x07, 0x7F, 0x07, 0xBF, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x80, 0x54, 0xD9, 0x03, 0xC0, 0xB1, 0x81, 0xB8, 0xD1, 0xC0, 0xD1, 0x01, 0xB8, 0xD1, 0x81, 0x80, 0xF2, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x01, 0x20, 0xCE, 0x87, 0x20, 0xAE, 0x20, 0xAD, 0x20, 0xCD, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAE, 0x82, 0x01, 0x17, 0x01, 0x19, 0x01, 0x17, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x24, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, + 0xAE, 0x01, 0x18, 0xAD, 0x86, 0x00, 0xF6, 0x01, 0x1A, 0x01, 0x17, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xCD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x29, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xCE, 0x08, 0xF7, 0x01, 0x1A, 0x11, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x05, 0x01, 0x19, 0x81, 0x00, 0xF6, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x43, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x03, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x81, 0x20, 0xCF, 0x28, 0xCE, 0x01, 0x28, 0xCF, 0x82, 0x31, 0x10, 0xB3, 0x14, 0xD3, 0x95, 0x03, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x81, 0x9C, 0x77, 0x56, 0x3B, 0x03, 0x07, 0xFF, 0x82, 0x1F, 0x7E, 0x65, 0xDB, 0x7C, 0xF9, 0x03, 0x9C, 0x57, 0x03, 0x9C, 0x37, 0x83, 0x75, 0x39, 0x6D, 0x7A, 0x65, 0x79, 0x5D, 0xBB, 0x01, 0x36, 0xBD, 0x81, 0x36, 0xBC, 0x2E, 0xFD, 0x08, 0x07, 0xFF, 0x92, 0x0F, 0xBF, 0x36, 0xBD, 0x5D, 0x9A, 0x8C, 0x37, 0xD2, 0x74, 0xD2, 0x73, 0xD2, 0x54, 0xCA, 0x53, 0xD2, 0x54, 0xD2, 0x53, 0xCA, 0x33, 0xD2, 0x33, 0xCA, 0x34, 0xCA, 0x13, 0xCA, 0x33, 0x84, 0x18, 0x07, 0x5F, 0x07, 0x3F, 0x07, 0x1F, 0x01, 0x06, 0xFF, 0x02, 0x06, 0xDF, 0x01, 0x06, 0xBF, 0x81, 0x06, 0x9E, 0x06, 0x9F, 0x01, 0x06, 0x7E, 0x01, 0x06, 0x5E, 0x80, 0x06, 0x3E, 0x01, 0x06, 0x1E, 0x80, 0x05, 0xFE, 0x01, 0x05, 0xDE, + 0x01, 0x05, 0xBE, 0x81, 0x05, 0x7E, 0x05, 0x5E, 0x01, 0x05, 0x1E, 0x85, 0x04, 0xFE, 0x04, 0xBE, 0x04, 0x5E, 0x03, 0xFE, 0x03, 0xBE, 0x03, 0x9E, 0x01, 0x03, 0x7E, 0x83, 0x03, 0x5E, 0x03, 0x3E, 0x03, 0x5E, 0x06, 0x1D, 0x01, 0x06, 0x7E, 0x86, 0x06, 0x9E, 0x06, 0xBE, 0x06, 0xFE, 0x07, 0x3F, 0x07, 0x5F, 0x07, 0x7F, 0x07, 0x9F, 0x01, 0x07, 0xDF, 0x81, 0x07, 0xFF, 0x7D, 0x59, 0x02, 0xD3, 0x35, 0x81, 0xD3, 0x14, 0x69, 0x9A, 0x04, 0x00, 0x1F, 0x81, 0x00, 0x7F, 0x60, 0xD8, 0x01, 0xC0, 0xB1, 0x87, 0xB8, 0xF2, 0x05, 0xDF, 0x06, 0x1F, 0x06, 0x5F, 0x06, 0xDF, 0x07, 0x3F, 0x07, 0x7F, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x80, 0x36, 0x3C, 0x03, 0xC0, 0xB1, 0x81, 0xB8, 0xD1, 0xC0, 0xD1, 0x01, 0xB8, 0xD1, 0x81, 0x90, 0xD1, 0x39, 0x11, 0x02, 0x30, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x85, 0x20, 0xAE, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x00, 0xF8, 0x01, 0x19, 0x01, 0x17, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xAE, 0x25, + 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x8A, 0x10, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xD0, 0x00, 0xF8, 0x01, 0x1A, 0x00, 0xF8, 0x28, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x11, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x08, 0xD5, 0x02, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAE, 0x18, 0xCD, 0x45, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x04, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x80, 0x20, 0xCF, 0x01, 0x28, 0xCE, 0x81, 0x30, 0xEF, 0xB3, 0x14, 0x03, 0xD3, 0x75, 0x84, 0xD3, 0x55, 0xD3, 0x75, 0xD3, 0x55, 0x9C, 0x77, 0x3E, 0xDD, 0x04, 0x07, 0xFF, 0x83, 0x65, 0x9A, 0xD3, 0x15, 0xD3, 0x14, 0xD3, 0x15, 0x02, 0xD3, 0x14, 0x03, 0xD2, 0xF4, 0x01, 0xD2, 0xD4, 0x82, 0xD2, 0xF4, 0xCA, 0xD4, 0xD2, 0xD4, 0x02, 0xD2, 0xB4, 0x80, 0xCA, 0xB4, 0x02, 0xD2, 0xB4, 0x01, 0xD2, 0x94, 0x03, 0xCA, 0x94, 0x01, 0xCA, 0x74, 0x01, 0xCA, 0x73, 0x80, 0xD2, 0x74, 0x05, 0xCA, 0x53, 0x02, 0xCA, 0x33, 0x81, 0xAB, 0x15, 0x0E, 0xDF, 0x01, 0x06, 0xFF, 0x01, 0x06, 0xDF, 0x01, 0x06, 0xBF, 0x81, 0x06, 0xDF, 0x06, 0xBF, 0x01, 0x06, 0x9F, 0x84, 0x06, 0x7E, 0x06, 0x7F, 0x06, + 0x7E, 0x06, 0x5E, 0x06, 0x3F, 0x01, 0x06, 0x1E, 0x01, 0x05, 0xFE, 0x81, 0x05, 0xDE, 0x05, 0xBE, 0x01, 0x05, 0x9E, 0x87, 0x05, 0x5E, 0x05, 0x3E, 0x05, 0x1E, 0x04, 0xFE, 0x04, 0xDE, 0x04, 0x9E, 0x04, 0x3E, 0x03, 0xBE, 0x01, 0x03, 0x9E, 0x01, 0x03, 0x5E, 0x01, 0x03, 0x3E, 0x91, 0x03, 0x1E, 0x02, 0xFE, 0x03, 0x7E, 0x05, 0xFE, 0x06, 0x5E, 0x06, 0x7E, 0x06, 0x9E, 0x06, 0xDE, 0x06, 0xFE, 0x07, 0x5F, 0x07, 0x7F, 0x07, 0x9F, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xFF, 0x27, 0x1D, 0xD3, 0x35, 0xD3, 0x14, 0x01, 0xD3, 0x15, 0x81, 0xC2, 0xD5, 0x08, 0x3F, 0x03, 0x00, 0x1F, 0x8B, 0x00, 0x9F, 0x60, 0xD8, 0xC0, 0xB1, 0xC0, 0xB2, 0xC0, 0xB1, 0x04, 0xBF, 0x05, 0x3F, 0x05, 0xBF, 0x06, 0x7F, 0x06, 0xDF, 0x07, 0x5F, 0x07, 0x9F, 0x03, 0x07, 0xFF, 0x01, 0xC0, 0xB1, 0x03, 0xB8, 0xD1, 0x84, 0xC0, 0xB1, 0xB8, 0xD1, 0x98, 0xD1, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x84, 0x18, 0xCE, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAE, 0x2A, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF3, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF7, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x10, 0xD2, + 0x01, 0x18, 0x01, 0x01, 0x19, 0x82, 0x10, 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x43, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x13, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x07, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x43, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x03, 0x20, 0xCE, 0x83, 0x28, 0xCE, 0x20, 0xCE, 0x30, 0xEF, 0xB3, 0x14, 0x03, 0xD3, 0x75, 0x83, 0xD3, 0x55, 0xD3, 0x75, 0xAC, 0x37, 0x36, 0xDD, 0x02, 0x07, 0xFF, 0x8A, 0x0E, 0xBD, 0x1D, 0x7B, 0x1C, 0x99, 0x32, 0xF5, 0x3A, 0x75, 0x61, 0x93, 0x69, 0xB3, 0x79, 0xF4, 0x8A, 0x14, 0xB2, 0x94, 0xCA, 0xF4, 0x03, 0xD2, 0xF4, 0x03, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x82, 0xCA, 0xD4, 0xD2, 0xB4, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x03, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x01, 0xCA, 0x74, 0x01, 0xD2, 0x74, 0x80, 0xCA, 0x53, 0x01, 0xCA, 0x54, 0x82, 0xCA, 0x53, 0xD2, 0x53, 0xCA, 0x53, 0x03, 0xCA, 0x33, 0x82, 0x8B, 0x97, 0x35, 0xFD, 0x5D, 0x7B, 0x01, 0x6D, 0x3A, 0x89, 0x5D, 0x5B, 0x35, 0xFD, 0x06, 0xBF, 0x0E, 0x7E, 0x45, 0x7C, 0x6C, 0x99, 0x64, 0x79, 0x64, 0x59, 0x4C, 0xBA, 0x0E, 0x1E, 0x01, 0x06, 0x3E, 0x80, 0x06, 0x1E, 0x02, 0x05, 0xFE, 0x84, 0x05, 0xDE, 0x05, 0xBE, 0x05, 0x9E, 0x05, 0x7E, 0x05, 0x5E, 0x01, 0x05, 0x1E, 0x87, 0x04, 0xFE, 0x04, 0xDE, 0x04, 0x7E, 0x03, 0xDE, 0x03, 0xBE, 0x03, 0x7E, 0x03, 0x7F, 0x03, 0x5E, 0x01, 0x03, 0x3E, 0x80, 0x03, 0x1E, 0x02, 0x02, 0xFE, 0x90, 0x02, 0xDE, 0x03, 0xFE, 0x05, + 0xBE, 0x06, 0x3E, 0x06, 0x5E, 0x06, 0x9E, 0x06, 0xDE, 0x07, 0x1F, 0x07, 0x3E, 0x07, 0x7F, 0x07, 0x9F, 0x07, 0xBF, 0x07, 0xDF, 0x07, 0xFF, 0xBB, 0xB6, 0xD3, 0x14, 0xD3, 0x15, 0x01, 0xD2, 0xF4, 0x80, 0x69, 0x7A, 0x02, 0x00, 0x1F, 0x82, 0x00, 0x3F, 0x00, 0x7F, 0x48, 0xFA, 0x02, 0xC0, 0xB1, 0x86, 0x33, 0x1C, 0x04, 0x7F, 0x05, 0x3F, 0x05, 0xFF, 0x06, 0x9F, 0x07, 0x3F, 0x07, 0x9F, 0x03, 0x07, 0xFF, 0x80, 0x9A, 0x14, 0x01, 0xB8, 0xD1, 0x80, 0xC0, 0xB1, 0x03, 0xB8, 0xD1, 0x82, 0xB0, 0xD1, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x85, 0x20, 0xCE, 0x20, 0xCF, 0x20, 0xAE, 0x18, 0xCF, 0x08, 0xF6, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF4, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x04, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x0D, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x2A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x08, 0xD4, 0x02, 0x01, 0x19, 0x8A, 0x08, 0xF6, 0x10, 0xD2, 0x10, 0xD0, 0x18, 0xD0, 0x18, 0xD1, 0x10, 0xD2, 0x00, 0xF8, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD0, 0x42, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x47, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x20, 0xAE, 0x18, 0xAD, + 0x01, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x81, 0x28, 0xCF, 0x92, 0x73, 0x04, 0xD3, 0x75, 0x85, 0xC3, 0xB6, 0x5D, 0xFB, 0x07, 0xFF, 0x0E, 0x3B, 0x1C, 0x98, 0x2A, 0xD5, 0x01, 0x39, 0x11, 0x81, 0x39, 0x12, 0x41, 0x11, 0x02, 0x41, 0x12, 0x03, 0x41, 0x32, 0x8A, 0x49, 0x33, 0x51, 0x73, 0x79, 0xD3, 0x9A, 0x54, 0xC2, 0x94, 0xD2, 0xF4, 0xD2, 0xD5, 0xCA, 0xD4, 0xD2, 0xD4, 0xD2, 0xB4, 0xCA, 0xD4, 0x03, 0xD2, 0xB4, 0x03, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x02, 0xCA, 0x74, 0x81, 0xCA, 0x73, 0xD2, 0x53, 0x04, 0xCA, 0x53, 0x03, 0xCA, 0x33, 0x83, 0x99, 0xD4, 0x63, 0x58, 0xD3, 0x95, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x88, 0x06, 0xBF, 0x5C, 0xFA, 0xD2, 0xB4, 0xCA, 0x94, 0xCA, 0x33, 0xCA, 0x13, 0xC9, 0xD3, 0xB9, 0xD3, 0x4C, 0x5A, 0x01, 0x06, 0x1E, 0x01, 0x05, 0xDE, 0x80, 0x05, 0xBE, 0x01, 0x05, 0x9E, 0x86, 0x05, 0x7E, 0x05, 0x3E, 0x05, 0x1E, 0x05, 0x1D, 0x04, 0xDE, 0x04, 0xBE, 0x04, 0x3E, 0x01, 0x03, 0xBE, 0x84, 0x03, 0x7F, 0x0B, 0x7E, 0x33, 0x7C, 0x33, 0x3C, 0x33, 0x5C, 0x01, 0x33, 0x3C, 0x01, 0x33, 0x1C, 0x01, 0x32, 0xFC, 0x8A, 0x32, 0xDC, 0x2B, 0x7C, 0x05, 0xDE, 0x06, 0x1E, 0x06, 0x5E, 0x06, 0x9E, 0x06, 0xDE, 0x07, 0x1F, 0x07, 0x3F, 0x07, 0x7F, 0x07, 0xBF, 0x01, 0x07, 0xDF, 0x85, 0x84, 0xF9, 0xD3, 0x14, 0xCB, 0x14, 0xCA, 0xF4, 0xD2, 0xD5, 0xB2, 0x75, 0x03, 0x00, 0x1F, 0x82, 0x00, 0x5F, 0x08, 0xDF, 0xB8, 0xD2, 0x01, 0xC0, 0xB1, 0x86, 0x3A, 0x7B, 0x03, 0xFF, 0x04, 0xDF, 0x05, 0xBF, 0x06, 0x7F, 0x07, + 0x1F, 0x07, 0x9F, 0x03, 0x07, 0xFF, 0x82, 0x7B, 0x77, 0xB8, 0xD1, 0xB8, 0xB1, 0x05, 0xB8, 0xD1, 0x81, 0x41, 0x11, 0x38, 0xF1, 0x01, 0x30, 0xF0, 0x02, 0x28, 0xCF, 0x89, 0x20, 0xCF, 0x20, 0xAE, 0x20, 0xCF, 0x09, 0x18, 0x01, 0x3A, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF6, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x8D, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x27, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x81, 0x10, 0xD1, 0x01, 0x18, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF6, 0x18, 0xCF, 0x03, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x24, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x10, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x12, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x4C, 0x01, 0x19, 0x88, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x39, 0x00, 0xF9, 0x10, 0xD2, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x02, 0x20, 0xCE, 0x80, 0x7A, + 0x32, 0x04, 0xD3, 0x75, 0x85, 0x9C, 0x78, 0x26, 0x1B, 0x1B, 0x96, 0x31, 0x71, 0x30, 0xF0, 0x38, 0xF1, 0x05, 0x39, 0x11, 0x81, 0x41, 0x11, 0x39, 0x12, 0x02, 0x41, 0x12, 0x81, 0x41, 0x32, 0x41, 0x12, 0x01, 0x41, 0x32, 0x87, 0x49, 0x12, 0x41, 0x32, 0x61, 0x72, 0x81, 0xF3, 0xAA, 0x73, 0xCA, 0xD4, 0xD2, 0xB4, 0xCA, 0xB4, 0x01, 0xD2, 0xB4, 0x01, 0xCA, 0xB4, 0x01, 0xCA, 0x94, 0x80, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x02, 0xCA, 0x74, 0x82, 0xD2, 0x74, 0xCA, 0x54, 0xD2, 0x74, 0x02, 0xCA, 0x53, 0x80, 0xD2, 0x33, 0x01, 0xCA, 0x33, 0x84, 0xD2, 0x33, 0xC2, 0x34, 0x79, 0x94, 0x59, 0x75, 0xB3, 0x15, 0x03, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xC3, 0x75, 0x01, 0x06, 0x7F, 0x8B, 0x6C, 0x79, 0xCA, 0x33, 0xCA, 0x13, 0xC9, 0xD3, 0xC9, 0x92, 0xC9, 0x52, 0xC9, 0x12, 0x34, 0xBB, 0x05, 0xFE, 0x05, 0xDE, 0x05, 0xBE, 0x05, 0x9E, 0x01, 0x05, 0x5E, 0x8A, 0x05, 0x3E, 0x05, 0x1E, 0x04, 0xFE, 0x24, 0x9D, 0x34, 0x7B, 0x6B, 0xFA, 0x7B, 0x99, 0x9B, 0x98, 0xAB, 0x97, 0xDB, 0x95, 0xD3, 0x96, 0x08, 0xD3, 0x95, 0x8F, 0xD3, 0x96, 0xD3, 0x95, 0xD3, 0x96, 0xD3, 0x95, 0xBB, 0xD6, 0x9C, 0x37, 0x84, 0x99, 0x6D, 0x1A, 0x36, 0x3C, 0x1E, 0xDD, 0x07, 0x9F, 0x07, 0xBF, 0x07, 0xDF, 0x4E, 0x1B, 0xD2, 0xF4, 0xD2, 0xF5, 0x02, 0xD2, 0xD4, 0x80, 0x40, 0xFC, 0x02, 0x00, 0x1F, 0x82, 0x00, 0x3F, 0x00, 0x9F, 0x78, 0xD7, 0x01, 0xC0, 0xB1, 0x86, 0x61, 0xD8, 0x03, 0xBF, 0x04, 0x9F, 0x05, 0x7F, 0x06, 0x5F, 0x07, 0x1F, 0x07, 0xBF, 0x03, 0x07, 0xFF, 0x84, 0x54, 0xD9, 0xB8, 0xD1, 0xB8, 0xB1, + 0xB8, 0xD1, 0xC0, 0xB1, 0x03, 0xB8, 0xD1, 0x81, 0x41, 0x11, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x85, 0x20, 0xCF, 0x20, 0xAE, 0x10, 0xF3, 0x01, 0x3A, 0x01, 0x19, 0x01, 0x39, 0x02, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x18, 0xD0, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x8B, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x10, 0xD2, 0x08, 0xF3, 0x08, 0xF4, 0x10, 0xD1, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x37, 0x18, 0xAD, 0x83, 0x18, 0xCE, 0x10, 0xF2, 0x00, 0xF7, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x85, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x10, 0xD0, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x22, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x0D, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x67, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x02, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x81, 0x51, 0x70, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x82, 0xD3, 0x55, 0x65, 0x19, 0x22, 0xB3, 0x04, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x0A, 0x39, 0x11, 0x03, 0x41, 0x12, 0x8E, 0x41, 0x32, 0x41, 0x12, 0x41, 0x32, 0x41, 0x12, 0x49, 0x52, 0x79, 0xB3, 0xA2, 0x33, 0xD2, 0xB4, 0xCA, 0xB4, + 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xCA, 0x74, 0xCA, 0x94, 0x01, 0xCA, 0x74, 0x83, 0xD2, 0x74, 0xCA, 0x54, 0xD2, 0x74, 0xD2, 0x53, 0x01, 0xCA, 0x54, 0x82, 0xCA, 0x33, 0xD2, 0x33, 0xCA, 0x34, 0x01, 0xCA, 0x33, 0x80, 0xA1, 0xD3, 0x01, 0x59, 0x54, 0x80, 0x79, 0xF5, 0x02, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x93, 0xD3, 0x35, 0x8C, 0x18, 0x06, 0x7F, 0x06, 0x5F, 0x06, 0x3F, 0xA2, 0xD5, 0xC9, 0xD3, 0xC9, 0x72, 0xC9, 0x52, 0xC1, 0x11, 0xC8, 0xD1, 0x8A, 0x55, 0x05, 0xDE, 0x05, 0xBE, 0x05, 0x9E, 0x05, 0x7E, 0x05, 0x5E, 0x34, 0xDC, 0x6C, 0x5A, 0xA3, 0xF7, 0x14, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x01, 0xD3, 0x55, 0x02, 0xD3, 0x35, 0x84, 0xBB, 0xB6, 0x84, 0xD9, 0x4E, 0x1B, 0x46, 0x5C, 0xD2, 0xF5, 0x02, 0xD2, 0xD4, 0x81, 0xD2, 0xB4, 0x81, 0xD8, 0x03, 0x00, 0x1F, 0x8A, 0x00, 0x5F, 0x60, 0x98, 0xC0, 0xB1, 0xC0, 0xD1, 0x59, 0xB8, 0x03, 0x5F, 0x04, 0x5F, 0x05, 0x5F, 0x06, 0x3F, 0x06, 0xFF, 0x07, 0x9F, 0x03, 0x07, 0xFF, 0x83, 0x36, 0x3C, 0xC0, 0xD1, 0xB8, 0xD1, 0xB8, 0xB1, 0x04, 0xB8, 0xD1, 0x85, 0x58, 0xF1, 0x39, 0x11, 0x30, 0xF0, 0x31, 0x10, 0x30, 0xCF, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x82, 0x20, 0xCE, 0x08, 0xF6, 0x01, 0x3A, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x12, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x8A, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, + 0x18, 0xAE, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x83, 0x18, 0xB0, 0x00, 0xF9, 0x08, 0xF8, 0x01, 0x18, 0x02, 0x18, 0xAD, 0x01, 0x00, 0xF8, 0x82, 0x08, 0xF8, 0x01, 0x18, 0x10, 0xD2, 0x05, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x00, 0xFA, 0x00, 0xF8, 0x01, 0x08, 0xF7, 0x84, 0x18, 0xB0, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF4, 0x01, 0x19, 0x01, 0x08, 0xF8, 0x81, 0x00, 0xF8, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x85, 0x10, 0xD4, 0x10, 0xD0, 0x18, 0xAD, 0x20, 0xAD, 0x08, 0xF8, 0x10, 0xD3, 0x01, 0x18, 0xAD, 0x81, 0x10, 0xF4, 0x10, 0xD1, 0x01, 0x18, 0xAD, 0x81, 0x08, 0xF8, 0x00, 0xF7, 0x18, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x23, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x82, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x0A, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x5F, 0x01, 0x19, 0x03, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x00, 0xF8, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAE, 0x20, 0xCE, 0x20, 0xAE, 0x28, 0xEE, 0xCB, 0x55, 0x02, 0xD3, 0x75, 0x83, 0xBB, 0x14, 0x34, 0xF9, 0x29, 0x30, 0x30, 0xEF, 0x07, 0x30, 0xF0, 0x0F, 0x39, 0x11, 0x88, 0x41, 0x12, 0x41, 0x11, 0x39, 0x31, 0x41, 0x12, 0x41, 0x11, 0x69, 0x93, 0x91, 0xF2, 0xC2, 0x54, 0xCA, 0x93, 0x01, 0xCA, 0x94, 0x01, 0xCA, 0x74, 0x84, 0xD2, 0x74, 0xCA, 0x73, 0xD2, 0x73, 0xCA, 0x73, 0xD2, + 0x54, 0x01, 0xCA, 0x53, 0x88, 0xCA, 0x54, 0xCA, 0x33, 0xCA, 0x34, 0xA1, 0xF3, 0x69, 0x73, 0x49, 0x53, 0x51, 0x34, 0x51, 0x54, 0xAA, 0xF5, 0x02, 0xD3, 0x95, 0x84, 0xD3, 0x75, 0xD3, 0x35, 0xD3, 0x14, 0x5C, 0xDA, 0x06, 0x5F, 0x01, 0x06, 0x3F, 0x84, 0xB2, 0x54, 0xC9, 0x72, 0xC9, 0x52, 0xC1, 0x12, 0xC8, 0xD1, 0x01, 0xC0, 0xB1, 0x85, 0x05, 0xBE, 0x05, 0x9E, 0x2D, 0x1C, 0x94, 0x38, 0xCB, 0xB6, 0xD3, 0x96, 0x15, 0xD3, 0x95, 0x81, 0xD3, 0x96, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x01, 0xD3, 0x14, 0x82, 0xD3, 0x15, 0xD2, 0xF4, 0xD2, 0xF5, 0x02, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x82, 0xCA, 0x94, 0x08, 0x7F, 0x00, 0x3F, 0x02, 0x00, 0x1F, 0x80, 0x38, 0x5B, 0x01, 0xC0, 0xB1, 0x86, 0x91, 0x35, 0x03, 0x1F, 0x04, 0x3F, 0x05, 0x3F, 0x06, 0x3F, 0x07, 0x1F, 0x07, 0x9F, 0x04, 0x07, 0xFF, 0x02, 0xB8, 0xD1, 0x89, 0xB8, 0xB1, 0xB8, 0xD1, 0xC0, 0xD1, 0xB8, 0xB1, 0xB8, 0xD1, 0x59, 0x11, 0x39, 0x11, 0x38, 0xF0, 0x30, 0xF0, 0x30, 0xCF, 0x01, 0x28, 0xCF, 0x85, 0x20, 0xCF, 0x20, 0xCE, 0x09, 0x17, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x0F, 0x01, 0x19, 0x85, 0x00, 0xF9, 0x01, 0x1A, 0x08, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x05, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xCE, 0x01, 0x18, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x08, 0xF7, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x8E, 0x18, 0xAD, 0x20, 0xAD, 0x10, 0xD1, 0x10, 0xD0, 0x18, + 0xAD, 0x08, 0xD5, 0x10, 0xD1, 0x18, 0xAD, 0x20, 0xAE, 0x00, 0xF7, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF7, 0x10, 0xD0, 0x05, 0x18, 0xAD, 0x88, 0x00, 0xF8, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF4, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x91, 0x10, 0xD1, 0x10, 0xD5, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF5, 0x10, 0xD1, 0x20, 0xAD, 0x18, 0xAD, 0x00, 0xF8, 0x08, 0xF7, 0x18, 0xAF, 0x18, 0xAD, 0x08, 0xD4, 0x10, 0xD1, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x15, 0x18, 0xAD, 0x01, 0x18, 0xCD, 0x24, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x03, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x0B, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x64, 0x01, 0x19, 0x8C, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0x01, 0x1A, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF9, 0x10, 0xD2, 0x20, 0xAD, 0x18, 0xCD, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x80, 0x82, 0x52, 0x02, 0xD3, 0x75, 0x82, 0x9A, 0x93, 0x30, 0xEF, 0x20, 0xCF, 0x01, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x80, 0x28, 0xF0, 0x09, 0x30, 0xF0, 0x01, 0x38, 0xF0, 0x0B, 0x39, 0x11, 0x80, 0x38, 0xF1, 0x03, 0x39, 0x11, 0x88, 0x41, 0x11, 0x69, 0x72, 0x81, 0xD2, 0xAA, 0x13, 0xBA, 0x33, 0xCA, 0x54, 0xCA, 0x74, 0xCA, 0x53, 0xCA, 0x54, 0x01, 0xCA, 0x53, 0x84, 0xB2, 0x13, 0xA1, 0xF3, 0x81, 0x93, 0x51, 0x52, 0x49, 0x32, 0x02, 0x49, 0x33, 0x80, + 0x51, 0x74, 0x01, 0xD3, 0x95, 0x85, 0xD3, 0x96, 0xD3, 0x75, 0xD3, 0x34, 0xD2, 0xF5, 0xD2, 0xB4, 0x2D, 0x9D, 0x01, 0x06, 0x3F, 0x84, 0x06, 0x1F, 0xC9, 0x93, 0xC9, 0x52, 0xC9, 0x11, 0xC8, 0xF1, 0x01, 0xC0, 0xB1, 0x83, 0xB8, 0xD1, 0x05, 0x9E, 0x05, 0x7E, 0xAB, 0xF7, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x0A, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x84, 0xD3, 0x15, 0xD3, 0x35, 0xCB, 0x15, 0xD2, 0xF4, 0xD2, 0xF5, 0x02, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x01, 0xD2, 0x94, 0x80, 0x41, 0x1C, 0x01, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x80, 0x20, 0x3C, 0x01, 0xC0, 0xB1, 0x86, 0x91, 0x35, 0x02, 0xFF, 0x04, 0x1F, 0x05, 0x1F, 0x06, 0x1F, 0x06, 0xFF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x81, 0xA1, 0xB3, 0xB8, 0xB1, 0x05, 0xB8, 0xD1, 0x84, 0x68, 0xF1, 0x39, 0x11, 0x38, 0xF0, 0x30, 0xF0, 0x30, 0xEF, 0x02, 0x28, 0xCF, 0x81, 0x20, 0xCE, 0x10, 0xF3, 0x02, 0x01, 0x19, 0x80, 0x00, 0xFA, 0x02, 0x01, 0x19, 0x80, 0x10, 0xD0, 0x03, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x0F, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x01, 0x17, 0x00, 0xF9, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x83, 0x08, 0xF3, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x05, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x10, 0xF4, 0x08, 0xF7, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF8, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x10, + 0xD1, 0x10, 0xF4, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x08, 0xF7, 0x01, 0x18, 0xAD, 0x85, 0x10, 0xD1, 0x08, 0xF6, 0x18, 0xAD, 0x20, 0xAD, 0x08, 0xF4, 0x10, 0xD3, 0x01, 0x18, 0xD1, 0x85, 0x08, 0xF5, 0x18, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x08, 0xF4, 0x10, 0xD1, 0x01, 0x18, 0xAD, 0x85, 0x08, 0xF7, 0x18, 0xAF, 0x08, 0xF7, 0x18, 0xAD, 0x08, 0xF4, 0x10, 0xD1, 0x01, 0x18, 0xAD, 0x80, 0x20, 0x8E, 0x3E, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x82, 0x10, 0xD2, 0x18, 0xCD, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x6F, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x85, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x20, 0xCE, 0x41, 0x2F, 0x02, 0xD3, 0x75, 0x84, 0x71, 0xD1, 0x20, 0xCE, 0x28, 0xCF, 0x20, 0xCF, 0x28, 0xCE, 0x01, 0x28, 0xCF, 0x02, 0x28, 0xEF, 0x12, 0x30, 0xF0, 0x01, 0x31, 0x10, 0x81, 0x38, 0xF0, 0x30, 0xF0, 0x01, 0x31, 0x11, 0x01, 0x38, 0xF1, 0x80, 0x38, 0xF0, 0x02, 0x39, 0x10, 0x02, 0x39, 0x11, 0x80, 0x39, 0x10, 0x01, 0x61, 0x52, 0x80, 0x51, 0x31, 0x02, 0x39, 0x11, 0x83, 0x39, 0x12, 0x41, 0x12, 0x41, 0x32, 0x41, 0x12, 0x01, 0x49, 0x32, 0x80, 0x8A, 0x34, 0x01, 0xD3, 0x95, 0x85, 0xD3, 0x75, 0xD3, 0x35, 0xD2, 0xF4, 0xCA, 0xD4, 0xB2, 0xF6, 0x06, 0x5F, 0x01, 0x06, 0x1F, 0x89, 0x34, 0xDC, 0xC9, 0x52, 0xC9, 0x12, 0xC8, 0xD2, 0xC0, 0xB1, 0xC0, 0xD1, 0xB8, 0xD1, 0x89, 0xB4, 0x2B, 0xBA, 0x42, 0x16, 0x01, 0x51, 0x54, 0x8A, 0x49, + 0x54, 0x51, 0x54, 0x61, 0x94, 0x71, 0xD4, 0x69, 0xF4, 0x71, 0xD3, 0x69, 0xD4, 0x71, 0xD3, 0x7A, 0x14, 0x8A, 0x75, 0x92, 0x74, 0x01, 0x92, 0x54, 0x83, 0x9A, 0x95, 0xB3, 0x15, 0xBB, 0x14, 0xD3, 0x96, 0x04, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x83, 0xD3, 0x14, 0xD3, 0x15, 0xD2, 0xF4, 0xCB, 0x14, 0x01, 0xD2, 0xF4, 0x84, 0xD2, 0xD4, 0xCA, 0xD4, 0xCA, 0xB4, 0xD2, 0xB4, 0xCA, 0xB4, 0x01, 0xCA, 0x94, 0x80, 0x81, 0xB8, 0x01, 0x00, 0x5F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x1F, 0x88, 0xA8, 0xB3, 0xC0, 0xB1, 0xB0, 0xD2, 0x02, 0xDF, 0x03, 0xFF, 0x05, 0x1F, 0x06, 0x1F, 0x06, 0xFF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x80, 0x8A, 0x95, 0x06, 0xB8, 0xD1, 0x84, 0x78, 0xF2, 0x39, 0x11, 0x38, 0xF0, 0x30, 0xF0, 0x28, 0xF0, 0x01, 0x28, 0xCF, 0x83, 0x28, 0xCE, 0x20, 0xCE, 0x20, 0xCF, 0x09, 0x18, 0x01, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x10, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAF, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD1, 0x01, 0x18, 0xAD, 0x83, 0x10, 0xD0, 0x00, 0xFA, 0x01, 0x19, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x10, 0xD1, 0x08, 0xF7, 0x18, 0xD1, 0x18, 0xAD, 0x20, 0xAD, 0x08, 0xF8, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xD1, 0x08, 0xD4, 0x01, 0x18, 0xAD, 0x88, + 0x20, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAE, 0x00, 0xFA, 0x08, 0xF8, 0x00, 0xF7, 0x08, 0xF6, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x08, 0xF4, 0x08, 0xF6, 0x08, 0xD4, 0x08, 0xF6, 0x08, 0xF5, 0x02, 0x18, 0xAD, 0x81, 0x08, 0xF4, 0x10, 0xD1, 0x01, 0x18, 0xAE, 0x85, 0x08, 0xF8, 0x18, 0xAD, 0x08, 0xF3, 0x10, 0xD3, 0x10, 0xD5, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x16, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x24, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x12, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x65, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x20, 0xAE, 0x87, 0x20, 0xCD, 0x20, 0xAE, 0x20, 0xCD, 0x92, 0x72, 0xD3, 0x75, 0xC3, 0x34, 0x61, 0xD1, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x07, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x80, 0x30, 0xEF, 0x17, 0x30, 0xF0, 0x81, 0x38, 0xF0, 0x30, 0xF0, 0x01, 0x31, 0x10, 0x88, 0x30, 0xF0, 0x31, 0x10, 0x38, 0xF0, 0x30, 0xF0, 0x38, 0xF0, 0x31, 0x11, 0x38, 0xF0, 0x39, 0x11, 0x38, 0xF1, 0x01, 0x39, 0x11, 0x81, 0x39, 0x12, 0x41, 0x11, 0x01, 0x41, 0x32, 0x8D, 0xB2, 0xF5, 0xD3, 0x95, 0xD3, 0x75, 0xD3, 0x55, 0xD2, 0xF4, 0xD2, 0xB4, 0xD2, 0x74, 0x83, 0xB8, 0x06, 0x3F, 0x06, 0x1F, 0x06, 0x1E, 0x63, 0x98, 0xC9, 0x12, 0xC8, 0xD1, 0x01, 0xC0, 0xB1, 0x87, 0xB8, 0xB1, 0xB8, 0xD1, 0x79, 0x33, 0x51, 0x53, 0x51, 0x34, 0x51, 0x54, 0x51, 0x33, 0x49, 0x53, 0x02, 0x49, 0x33, 0x81, 0x41, + 0x33, 0x49, 0x33, 0x02, 0x49, 0x32, 0x02, 0x49, 0x33, 0x01, 0x49, 0x32, 0x02, 0x49, 0x33, 0x83, 0x61, 0xB3, 0x7A, 0x34, 0x9A, 0x95, 0xB2, 0xF5, 0x01, 0xD3, 0x75, 0x02, 0xD3, 0x55, 0x01, 0xD3, 0x35, 0x01, 0xD3, 0x14, 0x80, 0xD3, 0x15, 0x02, 0xD2, 0xF4, 0x01, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x01, 0xD2, 0x94, 0x83, 0xD2, 0x74, 0xCA, 0x74, 0xC2, 0x54, 0x00, 0x7F, 0x01, 0x00, 0x5F, 0x8A, 0x00, 0x3F, 0x00, 0x1F, 0x58, 0x78, 0xB8, 0xD1, 0xC0, 0xB1, 0x02, 0xBF, 0x03, 0xBF, 0x04, 0xFF, 0x05, 0xFF, 0x06, 0xFF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x80, 0x64, 0x78, 0x06, 0xB8, 0xD1, 0x82, 0x78, 0xF1, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x81, 0x20, 0xCF, 0x09, 0x17, 0x01, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x08, 0xF4, 0x18, 0xCE, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x82, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0x8D, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xF3, 0x01, 0x01, 0x19, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xCE, 0x10, 0xD1, 0x18, 0xCF, 0x18, 0xAD, 0x10, 0xD1, 0x10, 0xF4, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF7, 0x02, 0x18, 0xAD, 0x81, 0x08, 0xF5, 0x10, 0xD1, 0x05, 0x18, 0xAD, 0x82, 0x08, 0xF8, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, + 0x18, 0xD1, 0x01, 0x18, 0xAD, 0x88, 0x08, 0xF6, 0x18, 0xCF, 0x18, 0xAE, 0x20, 0xAE, 0x10, 0xD4, 0x18, 0xD1, 0x18, 0xAD, 0x20, 0xAE, 0x00, 0xF8, 0x01, 0x18, 0xAD, 0x83, 0x08, 0xF7, 0x08, 0xF6, 0x18, 0xB1, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x28, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x03, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x10, 0xD2, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x67, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x20, 0xCD, 0x18, 0xCE, 0x20, 0xAE, 0x39, 0x0F, 0xD3, 0x75, 0xCB, 0x35, 0x41, 0x4F, 0x04, 0x20, 0xCE, 0x09, 0x28, 0xCF, 0x80, 0x28, 0xEF, 0x03, 0x28, 0xCF, 0x02, 0x28, 0xEF, 0x07, 0x30, 0xEF, 0x81, 0x30, 0xF0, 0x28, 0xF0, 0x02, 0x30, 0xF0, 0x85, 0x28, 0xF0, 0x30, 0xF0, 0x30, 0xEF, 0x31, 0x10, 0x30, 0xF0, 0x30, 0xD0, 0x04, 0x30, 0xF0, 0x80, 0x30, 0xF1, 0x01, 0x30, 0xF0, 0x94, 0x38, 0xF0, 0x39, 0x11, 0x39, 0x10, 0x39, 0x11, 0x38, 0xF1, 0x39, 0x11, 0x39, 0x12, 0x49, 0x52, 0xD3, 0x95, 0xD3, 0x75, 0xD3, 0x35, 0xD2, 0xF4, 0xD2, 0xB4, 0xD2, 0x74, 0xCA, 0x33, 0x4C, 0x9A, 0x05, 0xFF, 0x06, 0x1F, 0x05, 0xFF, 0xA1, 0xF4, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x81, 0xA0, 0xF1, 0x51, 0x34, 0x04, 0x49, 0x33, 0x02, 0x49, 0x32, 0x02, 0x41, 0x32, 0x05, 0x41, 0x12, 0x04, 0x41, 0x32, 0x8A, 0x41, 0x33, 0x49, 0x33, 0x49, 0x32, 0x49, 0x53, 0x61, 0x93, 0x82, 0x14, 0xA2, 0x74, 0xC3, 0x15, 0xD3, 0x35, 0xD3, 0x14, + 0xD3, 0x15, 0x01, 0xD2, 0xF4, 0x80, 0xD2, 0xF5, 0x02, 0xD2, 0xD4, 0x80, 0xD2, 0xB4, 0x01, 0xCA, 0xB4, 0x80, 0xCA, 0x94, 0x02, 0xCA, 0x74, 0x8E, 0xCA, 0x54, 0x20, 0xFD, 0x00, 0x9F, 0x00, 0x7F, 0x00, 0x5F, 0x00, 0x3F, 0x10, 0x5D, 0xC0, 0xB1, 0xC0, 0xD1, 0x02, 0x9F, 0x03, 0xBF, 0x04, 0xDF, 0x05, 0xFF, 0x06, 0xFF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x80, 0x54, 0xD9, 0x01, 0xB8, 0xD1, 0x80, 0xB8, 0xB1, 0x03, 0xB8, 0xD1, 0x82, 0x78, 0xF1, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xCF, 0x82, 0x28, 0xCE, 0x20, 0xCF, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x85, 0x00, 0xF7, 0x00, 0xF9, 0x01, 0x17, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x84, 0x01, 0x17, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xD4, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAF, 0x01, 0x17, 0x10, 0xF4, 0x00, 0xF8, 0x18, 0xAF, 0x01, 0x18, 0xAD, 0x84, 0x08, 0xF7, 0x08, 0xF4, 0x10, 0xD5, 0x00, 0xF7, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF8, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x08, 0xF4, 0x10, 0xD1, 0x18, 0xAD, 0x18, 0xCD, 0x10, 0xD1, 0x10, 0xD3, 0x01, 0x18, 0xAD, 0x81, 0x08, 0xF4, 0x10, 0xD1, 0x01, 0x18, 0xAD, 0x85, 0x08, 0xF8, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAF, 0x00, 0xFA, 0x10, 0xD1, 0x40, 0x18, 0xAD, + 0x89, 0x20, 0xAD, 0x18, 0xAE, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xFA, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x18, 0xCD, 0x0C, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x74, 0x18, 0xAD, 0x86, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x20, 0xAE, 0x61, 0xD0, 0xBB, 0x14, 0x41, 0x2F, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x82, 0x28, 0xCE, 0x20, 0xCE, 0x20, 0xCF, 0x18, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x86, 0x28, 0xCF, 0x28, 0xF0, 0x30, 0xD0, 0x28, 0xEF, 0x28, 0xCF, 0x30, 0xCF, 0x30, 0xF0, 0x01, 0x30, 0xD0, 0x80, 0x28, 0xF0, 0x02, 0x30, 0xF0, 0x80, 0x30, 0xD0, 0x03, 0x30, 0xF0, 0x80, 0x38, 0xF0, 0x02, 0x39, 0x11, 0x88, 0x61, 0xB2, 0xD3, 0x75, 0xD3, 0x35, 0xD2, 0xF4, 0xCA, 0xD4, 0xCA, 0x74, 0xD2, 0x33, 0xCA, 0x13, 0x1D, 0x9D, 0x01, 0x05, 0xFF, 0x81, 0x1D, 0x3D, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x81, 0xB0, 0xD1, 0x61, 0x32, 0x01, 0x49, 0x33, 0x81, 0x49, 0x32, 0x41, 0x32, 0x02, 0x41, 0x12, 0x81, 0x41, 0x32, 0x41, 0x12, 0x01, 0x41, 0x11, 0x01, 0x41, 0x12, 0x80, 0x41, 0x11, 0x01, 0x39, 0x11, 0x80, 0x41, 0x11, 0x01, 0x41, 0x12, 0x81, 0x39, 0x12, 0x41, 0x32, 0x02, 0x41, 0x12, 0x80, 0x49, 0x12, 0x01, 0x41, 0x32, 0x88, 0x49, 0x32, 0x49, 0x33, 0x49, 0x53, 0x49, 0x33, 0x61, 0x73, 0x8A, 0x14, 0xAA, 0x74, 0xCA, 0xF4, 0xD2, 0xF5, 0x02, 0xD2, 0xD4, 0x89, 0xD2, 0xB4, 0xCA, 0xB4, 0xD2, 0xB4, 0xD2, 0x94, 0xCA, 0x94, 0xCA, 0x73, 0xD2, 0x74, 0xD2, 0x53, 0xD2, 0x54, 0x59, 0x7A, 0x01, + 0x00, 0xBF, 0x01, 0x00, 0x9F, 0x88, 0x00, 0x5F, 0xA8, 0xB3, 0xC0, 0xB1, 0x31, 0xFC, 0x03, 0x9F, 0x04, 0xDF, 0x05, 0xDF, 0x06, 0xDF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x80, 0x2E, 0x3C, 0x03, 0xB8, 0xD1, 0x80, 0xB8, 0xB1, 0x01, 0xB8, 0xD1, 0x81, 0x78, 0xF1, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x84, 0x20, 0xAD, 0x20, 0xAE, 0x18, 0xCE, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x08, 0xF7, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x01, 0x18, 0xAE, 0x80, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x87, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xB1, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xB0, 0x10, 0xD0, 0x10, 0xD1, 0x18, 0xAF, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x81, 0x10, 0xD0, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xCF, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x10, 0xD0, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAF, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x86, 0x10, 0xD0, 0x18, 0x8D, 0x18, 0xAD, 0x18, 0xAE, 0x10, 0xD0, 0x18, 0xAE, 0x18, 0xCD, 0x15, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x22, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x1A, 0x02, 0x01, 0x19, + 0x80, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAF, 0x10, 0xCF, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAF, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAF, 0x63, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x39, 0x0F, 0x28, 0xCE, 0x20, 0xAE, 0x20, 0xCE, 0x20, 0xAE, 0x0A, 0x20, 0xCE, 0x1C, 0x28, 0xCF, 0x02, 0x28, 0xEF, 0x80, 0x28, 0xCF, 0x01, 0x28, 0xEF, 0x80, 0x30, 0xEF, 0x01, 0x28, 0xEF, 0x05, 0x30, 0xF0, 0x88, 0x39, 0x11, 0x71, 0xF2, 0xD3, 0x35, 0xD2, 0xF4, 0xD2, 0xB4, 0xCA, 0x74, 0xD2, 0x33, 0xCA, 0x13, 0xA2, 0x95, 0x02, 0x05, 0xFF, 0x82, 0x53, 0x99, 0xC0, 0xD1, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x84, 0xB0, 0xD1, 0x79, 0x12, 0x49, 0x52, 0x41, 0x32, 0x41, 0x12, 0x02, 0x41, 0x32, 0x80, 0x41, 0x12, 0x03, 0x39, 0x11, 0x80, 0x38, 0xF1, 0x0B, 0x39, 0x11, 0x80, 0x41, 0x11, 0x03, 0x41, 0x12, 0x80, 0x41, 0x32, 0x01, 0x49, 0x32, 0x01, 0x49, 0x33, 0x86, 0x51, 0x33, 0x61, 0x94, 0x9A, 0x34, 0xC2, 0xB4, 0xD2, 0xB5, 0xD2, 0xB3, 0xCA, 0xB4, 0x01, 0xD2, 0x94, 0x80, 0xCA, 0x93, 0x01, 0xD2, 0x74, 0x83, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0x81, 0xD8, 0x02, 0x00, 0xDF, 0x01, 0x00, 0xBF, 0x87, 0x68, 0xB7, 0xB8, 0xD1, 0x31, 0xDC, 0x03, 0x3F, 0x04, 0x9F, 0x05, 0xDF, 0x06, 0xFF, 0x07, 0xBF, 0x04, 0x07, 0xFF, 0x80, 0x26, 0xBD, 0x03, 0xB8, 0xD1, 0x80, 0xB8, 0xD2, 0x01, 0xB8, 0xD1, 0x85, 0x78, 0xF1, 0x39, 0x11, 0x38, 0xF1, 0x30, 0xF0, + 0x30, 0xEF, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x01, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAE, 0x1A, 0x18, 0xAD, 0x88, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x85, 0x10, 0xD2, 0x08, 0xD3, 0x08, 0xF3, 0x10, 0xD2, 0x18, 0xAD, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x0C, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x23, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x04, 0x01, 0x19, 0x81, 0x10, 0xD2, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x86, 0x10, 0xD0, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x18, 0x18, 0xAF, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xB0, 0x01, 0x18, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF6, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x85, 0x10, 0xCF, 0x00, 0xF8, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF6, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x06, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x38, 0x18, 0xAD, 0x03, 0x20, 0xAE, 0x0B, 0x20, 0xCE, 0x07, 0x20, 0xCF, 0x1B, 0x28, 0xCF, + 0x80, 0x28, 0xEF, 0x01, 0x28, 0xF0, 0x01, 0x30, 0xF0, 0x88, 0x38, 0xF0, 0x82, 0x13, 0xD2, 0xF5, 0xCA, 0xD4, 0xD2, 0x74, 0xCA, 0x53, 0xC9, 0xF3, 0xC9, 0xD2, 0x73, 0x98, 0x01, 0x05, 0xFF, 0x81, 0x05, 0xDF, 0xA9, 0x53, 0x03, 0xB8, 0xD1, 0x80, 0x98, 0xF2, 0x01, 0x41, 0x32, 0x80, 0x41, 0x12, 0x01, 0x41, 0x11, 0x07, 0x39, 0x11, 0x03, 0x38, 0xF0, 0x80, 0x39, 0x11, 0x01, 0x38, 0xF0, 0x08, 0x39, 0x11, 0x02, 0x41, 0x12, 0x01, 0x41, 0x32, 0x02, 0x49, 0x33, 0x8D, 0x51, 0x53, 0x59, 0x74, 0x92, 0x14, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x74, 0xCA, 0x74, 0xD2, 0x74, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0xCA, 0x34, 0x99, 0xF6, 0x01, 0x01, 0x1F, 0x02, 0x00, 0xFF, 0x87, 0x38, 0xDB, 0xC0, 0xB1, 0x28, 0xFC, 0x02, 0xDF, 0x04, 0x7F, 0x05, 0x9F, 0x06, 0xDF, 0x07, 0xBF, 0x05, 0x07, 0xFF, 0x06, 0xB8, 0xD1, 0x82, 0x78, 0xF1, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x1E, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x4A, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x29, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x1A, 0x83, 0x00, 0xF9, 0x01, 0x1A, 0x00, 0xF9, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x8E, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xB0, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x19, 0x00, + 0xF9, 0x01, 0x19, 0x08, 0xF6, 0x02, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xD0, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF6, 0x2A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x31, 0x0E, 0x7A, 0x32, 0xAA, 0xD3, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x68, 0xD3, 0x95, 0x91, 0xD3, 0x96, 0xD3, 0x95, 0xD3, 0x35, 0xD2, 0xB4, 0xCA, 0x94, 0xCA, 0x33, 0xD1, 0xF3, 0xC9, 0xD3, 0xC9, 0x93, 0xC9, 0x72, 0xC9, 0x92, 0xC9, 0x72, 0xC9, 0x32, 0xC0, 0xD1, 0xC0, 0xB1, 0xB8, 0xD1, 0xB0, 0xD2, 0xB9, 0xF2, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x0B, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xD3, 0x96, 0x12, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x0A, 0xD3, 0x95, 0x81, 0xCA, 0x13, 0x01, 0x5F, 0x02, 0x01, 0x3F, 0x88, 0x01, 0x1F, 0x09, 0x3F, 0xC0, 0xB1, 0x31, 0x1C, 0x01, 0xBF, 0x03, 0xFF, 0x05, 0x9F, 0x06, 0x9F, 0x07, 0x9F, 0x05, 0x07, 0xFF, 0x80, 0xB8, 0xB1, 0x05, 0xB8, 0xD1, 0x80, 0x78, 0xF1, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x1F, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x4D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x22, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xD5, 0x02, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xF2, 0x03, 0x18, 0xAD, 0x84, 0x18, 0xD0, 0x00, 0xF8, 0x01, + 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x18, 0xAF, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xB0, 0x04, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x10, 0xCF, 0x01, 0x18, 0x01, 0x19, 0x01, 0x1A, 0x03, 0x01, 0x19, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x49, 0x6F, 0xAA, 0xD3, 0x06, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x6E, 0xD3, 0x95, 0x8B, 0xD2, 0xF4, 0xCA, 0x74, 0xCA, 0x33, 0xCA, 0x13, 0xC9, 0xD3, 0xC9, 0x92, 0xC9, 0x52, 0xC1, 0x11, 0xC0, 0xD1, 0xC0, 0xB1, 0xC0, 0xD1, 0xB8, 0xB1, 0x01, 0xB8, 0xD1, 0x80, 0xCA, 0x53, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x08, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x1E, 0xD3, 0x95, 0x84, 0xCA, 0x13, 0x09, 0x7F, 0x01, 0x7F, 0x01, 0x5F, 0x01, 0x7F, 0x01, 0x01, 0x5F, 0x86, 0x88, 0xF5, 0x29, 0x3C, 0x01, 0x3F, 0x02, 0xDF, 0x05, 0x3E, 0x06, 0x7F, 0x07, 0x7F, 0x05, 0x07, 0xFF, 0x80, 0x92, 0x34, 0x05, 0xB8, 0xD1, 0x80, 0x78, 0xF1, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x19, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xCE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x4F, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, + 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x04, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xD0, 0x00, 0xF9, 0x06, 0x01, 0x19, 0x85, 0x18, 0xAF, 0x18, 0xCD, 0x18, 0xAE, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xD0, 0x00, 0xF8, 0x03, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x80, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x20, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x05, 0x18, 0xAD, 0x82, 0x20, 0xEE, 0x82, 0x52, 0xD3, 0x96, 0x0A, 0xD3, 0x95, 0x80, 0xD3, 0xB5, 0x6B, 0xD3, 0x95, 0x87, 0xD2, 0xB4, 0xD2, 0x33, 0xCA, 0x13, 0xC9, 0xB3, 0xC9, 0x92, 0xC9, 0x52, 0xC9, 0x12, 0xC8, 0xD1, 0x01, 0xC0, 0xB1, 0x80, 0xB8, 0xB1, 0x01, 0xB8, 0xD1, 0x80, 0xC2, 0x53, 0x13, 0xD3, 0x95, 0x80, 0xDB, 0x95, 0x15, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x08, 0xD3, 0x95, 0x82, 0xCA, 0x13, 0x31, 0xBC, 0x01, 0xBF, 0x03, 0x01, 0x9F, 0x87, 0x51, 0x39, 0x31, 0x5C, 0x01, 0x7F, 0x01, 0xBF, 0x04, 0x5E, 0x06, 0x3E, 0x07, 0x7F, 0x07, 0xFE, 0x04, 0x07, 0xFF, 0x80, 0x8A, 0x95, 0x03, 0xB8, 0xD1, 0x82, 0xB0, 0xD1, 0xB8, 0xD1, 0x78, 0xF1, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x1D, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x4A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x27, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xD5, + 0x03, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x84, 0x10, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x86, 0x01, 0x1A, 0x00, 0xF9, 0x08, 0xF7, 0x18, 0xAD, 0x20, 0xAD, 0x10, 0xD0, 0x01, 0x18, 0x06, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAD, 0x81, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x80, 0x00, 0xFA, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF5, 0x26, 0x18, 0xAD, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x28, 0xEE, 0xB3, 0x14, 0x04, 0xD3, 0x95, 0x83, 0xD4, 0xF8, 0xD6, 0x5C, 0xD6, 0xDD, 0xD6, 0xFD, 0x01, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x01, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x68, 0xD7, 0xFF, 0x88, 0xDF, 0xFF, 0xD7, 0xFF, 0xCB, 0x15, 0xCA, 0x13, 0xC9, 0xD3, 0xC9, 0x92, 0xC9, 0x32, 0xC9, 0x11, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x02, 0xB8, 0xD1, 0x80, 0xC3, 0x97, 0x09, 0xDF, 0xFF, 0x06, 0xD7, 0xFF, 0x81, 0xDF, 0xFF, 0xD5, 0x39, 0x19, 0xD3, 0x95, 0x80, 0xDB, 0x95, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x81, 0xC9, 0xF3, 0x31, 0xFC, 0x04, 0x01, 0xDF, 0x81, 0x01, 0xBF, 0x01, 0xDF, 0x01, 0x01, 0xBF, 0x82, 0x02, 0xDF, 0x05, 0xFD, 0x07, 0x3E, 0x01, 0x07, 0xFE, 0x03, 0x07, 0xFF, 0x80, 0x8A, 0xB5, 0x03, 0xB8, 0xD1, 0x82, 0xB0, 0xF1, 0xB8, 0xD1, 0x78, 0xF1, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x19, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x82, 0x18, + 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x4A, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x24, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x08, 0xD5, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF9, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x81, 0x10, 0xD0, 0x00, 0xF8, 0x03, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xB0, 0x00, 0xF9, 0x05, 0x01, 0x19, 0x88, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x10, 0xD0, 0x00, 0xF8, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x02, 0x18, 0xAE, 0x25, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAE, 0x28, 0xEE, 0xCB, 0x55, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0xD6, 0xD5, 0xDB, 0xD7, 0xBF, 0x72, 0xD7, 0xFF, 0x01, 0xDF, 0xFF, 0x8D, 0xCA, 0x13, 0xC9, 0xB3, 0xC9, 0x92, 0xC9, 0x52, 0xC9, 0x12, 0xC0, 0xD1, 0xC0, 0xB1, 0xC0, 0xD1, 0xB8, 0xB1, 0xB8, 0xD1, 0xB0, 0xF1, 0xBA, 0x95, 0xDF, 0xFF, 0xD7, 0xFF, 0x04, 0xDF, 0xFF, 0x80, 0xD7, 0xFF, 0x04, 0xDF, 0xFF, 0x05, 0xD7, 0xFF, 0x81, 0xDF, 0xFF, 0xD5, 0x39, 0x21, 0xD3, 0x95, 0x82, 0xC9, 0xF3, 0x31, 0xFD, 0x02, 0x1F, 0x06, 0x01, 0xFF, 0x85, 0x01, 0xDF, 0x01, 0xFF, 0x05, 0x1D, 0x07, 0x1D, 0x07, 0xFD, 0x07, 0xFE, 0x03, 0x07, 0xFF, 0x80, 0x6B, 0xF7, 0x04, 0xB8, 0xD1, 0x81, 0xB0, 0xD1, 0x78, 0xF1, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, + 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x18, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xF7, 0x20, 0xAD, 0x3B, 0x18, 0xAD, 0x0C, 0x01, 0x19, 0x87, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF8, 0x18, 0xB0, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x82, 0x18, 0xD0, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xCF, 0x05, 0x01, 0x19, 0x85, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xCF, 0x03, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x2A, 0x18, 0xAD, 0x81, 0x28, 0xEE, 0xB3, 0x14, 0x02, 0xD3, 0x95, 0x81, 0xD4, 0x77, 0xD7, 0x7E, 0x01, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x03, 0xD7, 0xFF, 0x80, 0xDF, 0xFF, 0x6E, 0xD7, 0xFF, 0x84, 0xC9, 0xD3, 0xC9, 0x92, 0xC9, 0x52, 0xC9, 0x12, 0xC8, 0xD1, 0x01, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x82, 0xB0, 0xD1, 0xB1, 0x52, 0xD7, 0x9E, 0x02, 0xDF, 0xFF, 0x80, 0xD7, 0xFF, 0x03, 0xDF, 0xFF, 0x81, 0xD7, 0xFF, 0xDF, 0xFF, 0x0A, 0xD7, 0xFF, 0x80, 0xD5, 0x39, 0x20, 0xD3, 0x95, 0x81, 0xC9, 0xD3, 0x32, 0x3C, 0x01, 0x02, 0x3F, 0x80, 0x02, 0x1F, 0x01, 0x02, 0x3F, 0x04, 0x02, 0x1F, 0x81, 0x03, 0x7E, 0x06, 0xDC, 0x01, 0x07, 0xFD, 0x80, 0x07, + 0xFE, 0x02, 0x07, 0xFF, 0x80, 0x5C, 0x78, 0x02, 0xB8, 0xD1, 0x83, 0xB0, 0xD1, 0xB8, 0xD1, 0xB0, 0xF1, 0x79, 0x11, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x1B, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAE, 0x81, 0x01, 0x1A, 0x01, 0x19, 0x3C, 0x18, 0xAD, 0x0D, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xAF, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x80, 0x08, 0xD5, 0x03, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xD0, 0x01, 0x18, 0x02, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x85, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x85, 0x01, 0x1A, 0x01, 0x17, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD0, 0x00, 0xF9, 0x06, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1F, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x82, 0x52, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xD4, 0xB8, 0xD7, 0xBF, 0x77, 0xD7, 0xFF, 0x83, 0xC9, 0x72, 0xC9, 0x52, 0xC9, 0x12, 0xC8, 0xD1, 0x01, 0xC0, 0xB1, 0x02, 0xB8, 0xD1, 0x81, 0xB0, 0xF1, 0xD6, 0x3C, 0x01, 0xDF, 0xFF, 0x80, 0xD7, 0xFF, 0x01, 0xDF, 0xFF, 0x80, 0xD7, 0xFF, 0x01, 0xDF, 0xFF, 0x01, 0xD7, 0xFF, + 0x80, 0xDF, 0xFF, 0x08, 0xD7, 0xFF, 0x83, 0xDF, 0xFF, 0xD7, 0xFF, 0xDF, 0xFF, 0xD5, 0x39, 0x14, 0xD3, 0x95, 0x01, 0xD3, 0x96, 0x08, 0xD3, 0x95, 0x82, 0xC9, 0xD3, 0x32, 0x5C, 0x02, 0x7F, 0x02, 0x02, 0x5F, 0x80, 0x02, 0x3F, 0x01, 0x02, 0x5F, 0x02, 0x02, 0x3F, 0x81, 0x02, 0x9F, 0x06, 0x7C, 0x01, 0x07, 0xFC, 0x80, 0x07, 0xFE, 0x02, 0x07, 0xFF, 0x83, 0x5C, 0x78, 0xB8, 0xD1, 0xB0, 0xD1, 0xB8, 0xD1, 0x01, 0xB0, 0xD1, 0x81, 0xB8, 0xD1, 0x70, 0xF1, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x18, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x81, 0x00, 0xF9, 0x01, 0x19, 0x3C, 0x18, 0xAD, 0x0D, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD0, 0x15, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x01, 0x18, 0x10, 0xD1, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x03, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x87, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xCF, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x2B, 0x18, 0xAD, 0x80, 0x49, 0x6F, 0x02, 0xD3, 0x95, 0x81, 0xD4, 0x57, 0xD7, 0xBF, 0x73, + 0xD7, 0xFF, 0x87, 0xD7, 0xDF, 0xD7, 0xFF, 0xCF, 0x3E, 0xC6, 0x7C, 0xC5, 0x3A, 0xC9, 0x51, 0xC9, 0x12, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x82, 0xB0, 0xD1, 0xB0, 0xF1, 0xBB, 0x97, 0x18, 0xD7, 0xFF, 0x82, 0xD6, 0x5B, 0xD3, 0x95, 0xD3, 0x96, 0x17, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x83, 0xD3, 0x96, 0xD3, 0x95, 0xC9, 0xB3, 0x32, 0x7C, 0x03, 0x02, 0x9F, 0x04, 0x02, 0x7F, 0x85, 0x02, 0x5F, 0x02, 0x7F, 0x05, 0xBC, 0x07, 0xDB, 0x07, 0xFC, 0x07, 0xFD, 0x02, 0x07, 0xFF, 0x82, 0x5C, 0x78, 0xB8, 0xD1, 0xB0, 0xD1, 0x02, 0xB8, 0xD1, 0x84, 0xB0, 0xD1, 0x58, 0xF1, 0x39, 0x11, 0x31, 0x11, 0x30, 0xF0, 0x01, 0x28, 0xF0, 0x81, 0x28, 0xCF, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x25, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x20, 0xAD, 0x24, 0x18, 0xAD, 0x0B, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x08, 0x01, 0x19, 0x85, 0x10, 0xD1, 0x18, 0xAD, 0x18, 0xAE, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x11, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x18, 0xB0, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCF, 0x03, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x87, + 0x01, 0x1A, 0x01, 0x17, 0x18, 0xCE, 0x18, 0xAE, 0x18, 0xD0, 0x01, 0x18, 0x00, 0xF9, 0x01, 0x1A, 0x04, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x2B, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0xA2, 0xD3, 0x01, 0xD3, 0x95, 0x81, 0xD3, 0xD6, 0xD7, 0x5E, 0x01, 0xCF, 0xFF, 0x01, 0xD7, 0xFF, 0x01, 0xCF, 0xFF, 0x01, 0xD7, 0xFF, 0x80, 0xD7, 0xDF, 0x02, 0xD7, 0xFF, 0x80, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x8A, 0xCF, 0xDF, 0xCF, 0xFF, 0xD7, 0xFF, 0xD7, 0xDF, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xFF, 0xD7, 0xDF, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xDF, 0x01, 0xCF, 0xFF, 0x01, 0xD7, 0xFF, 0x83, 0xCF, 0xFF, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xFF, 0x01, 0xD7, 0xDF, 0x82, 0xCF, 0xFF, 0xD7, 0xDF, 0xCF, 0xFF, 0x01, 0xD7, 0xFF, 0x84, 0xCF, 0xFF, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xFF, 0xD7, 0xDF, 0x01, 0xD7, 0xFF, 0x01, 0xCF, 0xFF, 0x85, 0xD7, 0xFF, 0xCF, 0xFF, 0xD7, 0xDF, 0xCF, 0xFF, 0xD7, 0xFF, 0xD7, 0xDF, 0x37, 0xD7, 0xFF, 0x89, 0xCF, 0xFF, 0xD7, 0xFF, 0xCF, 0xDF, 0xD7, 0xDF, 0xCF, 0xDF, 0xCF, 0xFF, 0xD7, 0xDF, 0xAC, 0xD8, 0x81, 0x91, 0x91, 0x51, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x82, 0xA8, 0xF1, 0xA9, 0x72, 0xD7, 0x7E, 0x01, 0xD7, 0xFF, 0x01, 0xD7, 0xDF, 0x02, 0xD7, 0xFF, 0x81, 0xD7, 0xDF, 0xCF, 0xFF, 0x05, 0xD7, 0xFF, 0x01, 0xD7, 0xDF, 0x03, 0xD7, 0xFF, 0x85, 0xD7, 0xDF, 0xD7, 0xFF, 0xD7, 0xDF, 0xD7, 0xFF, 0xD7, 0xDF, 0xD6, 0x5C, 0x1D, 0xD3, 0x95, 0x83, 0xC1, 0x93, 0x0A, 0x7F, 0x02, 0xFF, 0x02, 0xDF, 0x02, 0x02, 0xBF, 0x02, 0x02, 0x9F, 0x86, + 0x02, 0x7F, 0x02, 0x9F, 0x02, 0x7F, 0x04, 0xDD, 0x07, 0xBB, 0x07, 0xFB, 0x07, 0xFD, 0x02, 0x07, 0xFF, 0x80, 0x3D, 0xBB, 0x01, 0xB8, 0xD1, 0x80, 0xB0, 0xF1, 0x02, 0xB0, 0xD1, 0x81, 0x59, 0x11, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x80, 0x28, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x03, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x25, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0E, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x38, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x04, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x17, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x82, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x84, 0x01, 0x1A, 0x01, 0x19, 0x18, 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x82, 0x10, 0xD0, 0x00, 0xF8, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xAE, 0x20, 0xAD, 0x10, 0xD0, 0x04, 0x01, 0x19, 0x87, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAF, 0x01, 0x18, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x01, 0x17, 0x18, 0xAE, 0x2C, 0x18, 0xAD, 0x81, 0x31, 0x0E, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x80, 0xD5, 0xBA, 0x0F, 0xCF, 0xDF, 0x88, 0xC7, 0x7E, 0xBE, 0x5B, 0xBE, 0x3C, 0xB5, 0x7A, 0xAC, 0xB8, 0xBD, 0xBB, 0xC6, 0x3C, 0xBE, 0x3B, 0xC7, 0x1E, 0x0B, 0xCF, 0xDF, 0x88, 0xC7, 0x7E, 0xBE, 0x5C, 0xB5, 0xDB, 0xAC, 0xB8, 0xAC, 0x98, 0xBD, 0x5A, 0xBE, 0x3C, 0xC6, 0x1C, 0xC6, 0x9D, 0x49, 0xCF, 0xDF, 0x83, 0xAC, + 0xB9, 0x81, 0x91, 0x91, 0x51, 0x99, 0x11, 0x03, 0x99, 0x31, 0x83, 0x99, 0x11, 0xA1, 0x11, 0xA9, 0x11, 0xBC, 0x78, 0x02, 0xCF, 0xDF, 0x82, 0xD7, 0xDF, 0xCF, 0xDF, 0xCF, 0x5E, 0x01, 0xBE, 0x5C, 0x82, 0xC6, 0x3C, 0xC6, 0x1C, 0xCE, 0xFD, 0x0E, 0xCF, 0xDF, 0x86, 0xCF, 0xFF, 0xCF, 0xDF, 0xD6, 0x3B, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x75, 0xD3, 0x95, 0x13, 0xD3, 0x75, 0x80, 0xD3, 0x95, 0x02, 0xD3, 0x75, 0x83, 0xD3, 0x95, 0x08, 0x9F, 0x01, 0x1F, 0x03, 0x1F, 0x01, 0x02, 0xFF, 0x02, 0x02, 0xDF, 0x04, 0x02, 0xBF, 0x84, 0x03, 0xFD, 0x07, 0x9A, 0x07, 0xFA, 0x07, 0xFC, 0x07, 0xFE, 0x01, 0x07, 0xFF, 0x81, 0x2E, 0x5C, 0xB0, 0xD1, 0x01, 0xB8, 0xD1, 0x88, 0xB0, 0xF1, 0xB0, 0xD1, 0xB8, 0xD1, 0x59, 0x12, 0x39, 0x11, 0x38, 0xF1, 0x30, 0xF0, 0x28, 0xF0, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x26, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x3A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x13, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x82, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x83, 0x10, 0xD0, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x00, 0xF6, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x03, 0x01, 0x19, 0x86, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x1A, 0x00, 0xF9, 0x04, 0x01, 0x19, 0x81, 0x01, 0x17, + 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x81, 0x01, 0x18, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xAE, 0x2D, 0x18, 0xAD, 0x80, 0x79, 0xF1, 0x02, 0xD3, 0x55, 0x83, 0xCF, 0x7E, 0xC7, 0xDF, 0xCF, 0xBF, 0xCF, 0xDF, 0x01, 0xC7, 0xDF, 0x03, 0xCF, 0xDF, 0x80, 0xCF, 0xBF, 0x01, 0xCF, 0xDF, 0x85, 0xCF, 0xBF, 0xBE, 0xFD, 0xAC, 0xB8, 0x8A, 0x52, 0x91, 0x51, 0x91, 0x31, 0x05, 0x99, 0x31, 0x8E, 0x99, 0x11, 0xA1, 0x92, 0xAB, 0x96, 0xBE, 0x7D, 0xCF, 0xDF, 0xC7, 0xDF, 0xCF, 0xBF, 0xC7, 0xDF, 0xCF, 0xDF, 0xCF, 0xBF, 0xC7, 0x5E, 0xAD, 0x19, 0x92, 0xB4, 0x89, 0x71, 0x91, 0x51, 0x01, 0x99, 0x31, 0x01, 0x99, 0x11, 0x87, 0xA1, 0x11, 0x99, 0x31, 0xA1, 0x11, 0x99, 0x11, 0xAB, 0x36, 0xBD, 0x5A, 0xC7, 0x5E, 0xCF, 0xDF, 0x01, 0xC7, 0xBF, 0x83, 0xCF, 0xDF, 0xC7, 0xDF, 0xC7, 0xBF, 0xC7, 0xDF, 0x38, 0xCF, 0xDF, 0x8A, 0xC7, 0xDF, 0xCF, 0xBF, 0xC7, 0xDF, 0xC7, 0xBF, 0xCF, 0xBF, 0xC7, 0xDF, 0xA4, 0xB8, 0x81, 0x91, 0x91, 0x51, 0x99, 0x31, 0x99, 0x11, 0x01, 0x99, 0x31, 0x86, 0x99, 0x11, 0x99, 0x31, 0x99, 0x12, 0xBE, 0x3B, 0xCF, 0xBF, 0xCF, 0xDF, 0xCF, 0xBF, 0x01, 0xCF, 0xDF, 0x82, 0xB5, 0xDA, 0x8A, 0x12, 0x89, 0x71, 0x01, 0x99, 0x31, 0x85, 0xA1, 0x11, 0x99, 0x31, 0xAB, 0x35, 0xC7, 0x5E, 0xCF, 0xBF, 0xCF, 0xDF, 0x01, 0xC7, 0xDF, 0x01, 0xCF, 0xDF, 0x80, 0xCF, 0xBF, 0x01, 0xC7, 0xDF, 0x02, 0xCF, 0xDF, 0x80, 0xC7, 0xDF, 0x02, 0xCF, 0xDF, 0x80, 0xCE, 0x1B, 0x1B, 0xD3, 0x55, 0x83, 0x00, 0x7F, 0x00, 0x9E, 0x02, 0x3F, + 0x03, 0x3F, 0x02, 0x03, 0x1F, 0x82, 0x02, 0xFF, 0x03, 0x1F, 0x02, 0xFF, 0x02, 0x02, 0xDF, 0x84, 0x03, 0x9E, 0x07, 0x5A, 0x07, 0xF9, 0x07, 0xFB, 0x07, 0xFD, 0x01, 0x07, 0xFF, 0x84, 0x2E, 0x3C, 0xB8, 0xD2, 0xB8, 0xD1, 0xB0, 0xD1, 0xB8, 0xD1, 0x01, 0xB0, 0xD1, 0x87, 0x49, 0x11, 0x39, 0x11, 0x38, 0xF0, 0x30, 0xF0, 0x28, 0xF0, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x02, 0x20, 0xAE, 0x26, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x33, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x20, 0xAD, 0x87, 0x08, 0xF5, 0x00, 0xF9, 0x00, 0xFA, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD2, 0x18, 0xAE, 0x13, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x08, 0xF5, 0x04, 0x01, 0x19, 0x83, 0x10, 0xD0, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x01, 0x1A, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x85, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x02, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x2D, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0xA2, 0x93, 0x01, 0xD3, 0x35, 0x82, 0xCC, 0x98, 0xC7, 0xBF, 0xC7, 0xBE, 0x09, 0xC7, 0xBF, 0x85, 0xC7, 0x5E, 0xA4, 0xB8, 0x81, 0x91, 0x91, 0x51, 0x99, 0x11, 0xA1, 0x31, + 0x01, 0xA1, 0x11, 0x82, 0x99, 0x31, 0xA1, 0x11, 0xA1, 0x12, 0x05, 0xA1, 0x11, 0x89, 0xAB, 0x35, 0xBE, 0xFE, 0xC7, 0xBF, 0xC7, 0xBE, 0xC7, 0xBF, 0xB5, 0xDB, 0x89, 0xF1, 0x89, 0x71, 0x99, 0x31, 0x99, 0x11, 0x04, 0xA1, 0x11, 0x81, 0xA1, 0x32, 0x99, 0x11, 0x03, 0xA1, 0x11, 0x82, 0xA1, 0x72, 0xBD, 0x3A, 0xC7, 0xBE, 0x02, 0xC7, 0xBF, 0x81, 0xC7, 0xBE, 0xC7, 0x9F, 0x37, 0xC7, 0xBF, 0x80, 0xC7, 0x9F, 0x05, 0xC7, 0xBF, 0x8B, 0xAC, 0x98, 0x81, 0x91, 0x91, 0x51, 0x99, 0x31, 0xA1, 0x11, 0xA1, 0x31, 0xA1, 0x11, 0xA1, 0x31, 0xA1, 0x11, 0x99, 0x31, 0xBE, 0x1B, 0xC7, 0x9F, 0x02, 0xC7, 0xBF, 0x85, 0xBE, 0xFD, 0x89, 0xF2, 0x89, 0x91, 0x99, 0x31, 0xA1, 0x12, 0xA1, 0x31, 0x02, 0xA1, 0x11, 0x80, 0xAB, 0x97, 0x01, 0xC7, 0xBF, 0x80, 0xC7, 0xBE, 0x0D, 0xC7, 0xBF, 0x81, 0xC6, 0xDD, 0xD3, 0x75, 0x16, 0xD3, 0x35, 0x80, 0xD3, 0x34, 0x01, 0xD3, 0x35, 0x01, 0x00, 0x9F, 0x84, 0x01, 0x3F, 0x03, 0x3F, 0x03, 0x7F, 0x03, 0x5F, 0x03, 0x3F, 0x03, 0x03, 0x1F, 0x01, 0x02, 0xFF, 0x84, 0x03, 0x3F, 0x06, 0xF9, 0x07, 0xF9, 0x07, 0xFB, 0x07, 0xFD, 0x01, 0x07, 0xFF, 0x86, 0x2E, 0x3C, 0xB8, 0xD2, 0xB0, 0xF1, 0xB8, 0xD1, 0xB0, 0xD1, 0xB0, 0xF1, 0xB0, 0xD1, 0x01, 0x39, 0x11, 0x82, 0x38, 0xF0, 0x30, 0xF0, 0x31, 0x10, 0x01, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x02, 0x20, 0xCE, 0x82, 0x20, 0xAE, 0x20, 0xAD, 0x20, 0xAE, 0x26, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x86, 0x18, 0xB0, 0x10, 0xF2, 0x10, 0xD3, + 0x08, 0xD3, 0x08, 0xF3, 0x10, 0xF3, 0x18, 0xB0, 0x36, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x88, 0x18, 0xAE, 0x18, 0xCD, 0x08, 0xF5, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD2, 0x14, 0x18, 0xAD, 0x80, 0x08, 0xF4, 0x01, 0x01, 0x19, 0x01, 0x01, 0x1A, 0x81, 0x00, 0xF9, 0x10, 0xCF, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x1A, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x80, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x84, 0x01, 0x39, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x20, 0xCD, 0x18, 0xAE, 0x28, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0xD3, 0x15, 0x83, 0xD3, 0x14, 0xC5, 0xFB, 0xC7, 0x9F, 0xC7, 0x9E, 0x01, 0xC7, 0xBF, 0x01, 0xC7, 0x9E, 0x89, 0xC7, 0xBF, 0xC7, 0x9F, 0xBF, 0x9E, 0xBF, 0xBF, 0xBF, 0xBE, 0xB6, 0x7C, 0x8A, 0x53, 0x89, 0x71, 0xA1, 0x31, 0xA1, 0x12, 0x0A, 0xA1, 0x11, 0x80, 0xA1, 0x12, 0x01, 0xA1, 0x11, 0x85, 0xA1, 0x72, 0xB5, 0x39, 0xBF, 0x9F, 0x9B, 0xF6, 0x81, 0x91, 0x91, 0x51, 0x0C, 0xA1, 0x11, 0x80, 0xA1, 0x12, 0x01, 0xA1, 0x11, 0x83, 0xAB, 0x15, 0xBF, 0x3D, 0xC7, 0x9F, 0xC7, 0xBE, 0x01, 0xC7, 0x9F, 0x37, 0xC7, 0x9E, 0x82, 0xC7, 0x9F, 0xC7, 0x9E, 0xC7, 0x9F, 0x01, 0xC7, 0x9E, 0x84, 0xC7, 0xBF, 0xC7, 0x9F, 0xA4, 0xB8, 0x81, 0x91, 0x91, 0x51, 0x04, 0xA1, 0x11, + 0x89, 0xA1, 0x12, 0xA1, 0x11, 0xBD, 0xFB, 0xC7, 0x9F, 0xC7, 0x9E, 0xC7, 0xBE, 0xC7, 0x9F, 0xAC, 0xF9, 0x81, 0x91, 0x91, 0x71, 0x02, 0xA1, 0x11, 0x85, 0xA1, 0x12, 0xA1, 0x11, 0xA1, 0x31, 0xA1, 0x11, 0xBF, 0x3E, 0xBF, 0xBF, 0x02, 0xC7, 0x9E, 0x80, 0xC7, 0xBF, 0x02, 0xC7, 0x9E, 0x80, 0xBF, 0xBF, 0x02, 0xC7, 0x9E, 0x89, 0xBF, 0x9E, 0xC7, 0x9F, 0xC7, 0x9E, 0xBF, 0xBE, 0xC7, 0x9E, 0xC6, 0xBD, 0xD3, 0x55, 0xD2, 0xF5, 0xD3, 0x15, 0xCB, 0x14, 0x11, 0xD3, 0x14, 0x02, 0xD3, 0x15, 0x80, 0xD3, 0x14, 0x01, 0x00, 0x7F, 0x81, 0x00, 0xFF, 0x02, 0x7F, 0x01, 0x03, 0x9F, 0x83, 0x03, 0x7F, 0x23, 0x1D, 0x52, 0x59, 0x5A, 0x3A, 0x01, 0x03, 0x3F, 0x01, 0x03, 0x1F, 0x83, 0x06, 0x99, 0x07, 0xF8, 0x07, 0xFA, 0x07, 0xFD, 0x01, 0x07, 0xFF, 0x84, 0x36, 0x3C, 0xB0, 0xD1, 0xB0, 0xF1, 0xB0, 0xD1, 0xB8, 0xD1, 0x01, 0xB0, 0xD1, 0x85, 0x41, 0x12, 0x38, 0xF1, 0x39, 0x11, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x82, 0x20, 0xAE, 0x20, 0xAD, 0x20, 0xAE, 0x26, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0B, 0x18, 0xAD, 0x81, 0x10, 0xD1, 0x08, 0xF7, 0x01, 0x01, 0x1A, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x10, 0xD1, 0x18, 0xAD, 0x18, 0xAE, 0x38, 0x18, 0xAD, 0x80, 0x10, 0xF2, 0x04, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x15, 0x01, 0x19, 0x83, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x18, 0x18, 0xB0, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF4, 0x02, 0x01, 0x19, 0x82, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xAE, + 0x04, 0x18, 0xAD, 0x80, 0x09, 0x15, 0x03, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x09, 0x15, 0x00, 0xF9, 0x02, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x82, 0x20, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x29, 0x18, 0xAD, 0x83, 0xD2, 0xF4, 0xCA, 0xF4, 0xD2, 0xF4, 0xC6, 0x5C, 0x08, 0xBF, 0x9E, 0x83, 0xBF, 0x7F, 0xB6, 0x7C, 0x8A, 0x12, 0x89, 0x71, 0x01, 0xA1, 0x11, 0x82, 0xA9, 0x11, 0xA1, 0x11, 0xA9, 0x11, 0x02, 0xA1, 0x11, 0x01, 0xA9, 0x11, 0x02, 0xA1, 0x11, 0x80, 0xA9, 0x11, 0x02, 0xA1, 0x11, 0x84, 0xA9, 0x12, 0xA9, 0x11, 0xA1, 0xF3, 0x81, 0x91, 0x99, 0x31, 0x01, 0xA1, 0x11, 0x80, 0xA9, 0x12, 0x04, 0xA1, 0x11, 0x04, 0xA9, 0x11, 0x02, 0xA1, 0x11, 0x83, 0xA1, 0x12, 0xA9, 0x11, 0xAA, 0x54, 0xBF, 0x1D, 0x3F, 0xBF, 0x9E, 0x85, 0xB7, 0x9E, 0xBF, 0x9F, 0xA4, 0x98, 0x81, 0x91, 0x99, 0x51, 0xA9, 0x11, 0x04, 0xA1, 0x11, 0x88, 0xA9, 0x11, 0xB5, 0xFB, 0xBF, 0x9E, 0xBF, 0x9F, 0xBF, 0x9E, 0xBF, 0x9F, 0xA4, 0x98, 0x81, 0x91, 0x99, 0x51, 0x03, 0xA1, 0x11, 0x84, 0xA1, 0x12, 0xA1, 0x11, 0xA9, 0x11, 0xB5, 0xFB, 0xBF, 0x7E, 0x01, 0xBF, 0x9E, 0x80, 0xBF, 0x9F, 0x0D, 0xBF, 0x9E, 0x82, 0xBE, 0xBD, 0xD3, 0x35, 0xCA, 0xF4, 0x12, 0xD2, 0xF4, 0x83, 0xCA, 0xF4, 0xD2, 0xF4, 0xD2, 0xF5, 0xCA, 0xF4, 0x01, 0x00, 0x7F, 0x88, 0x00, 0xBF, 0x02, 0x1F, 0x2A, 0xBD, 0x7A, 0x36, 0xB9, 0x53, 0xC1, 0x12, 0xC9, 0x11, 0xC9, 0x12, 0x0B, 0x3F, 0x01, 0x03, 0x5F, 0x88, 0x03, 0x3F, 0x05, 0xFA, + 0x07, 0xF7, 0x07, 0xF9, 0x07, 0xFC, 0x07, 0xFE, 0x07, 0xFF, 0x2E, 0x3C, 0xB0, 0xD1, 0x01, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x82, 0xA0, 0xF1, 0x68, 0xF1, 0x41, 0x11, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xEF, 0x80, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x26, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x84, 0x01, 0x18, 0x08, 0xF7, 0x08, 0xF6, 0x00, 0xF7, 0x01, 0x18, 0x02, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x01, 0x18, 0xAE, 0x34, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x10, 0xD2, 0x00, 0xF9, 0x01, 0x01, 0x1A, 0x16, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x80, 0x10, 0xCF, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x84, 0x08, 0xD4, 0x01, 0x18, 0x01, 0x19, 0x08, 0xF6, 0x18, 0xCE, 0x03, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF5, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x2A, 0x18, 0xAD, 0x02, 0xD2, 0xD4, 0x84, 0xBE, 0x5C, 0xB7, 0x7E, 0xB7, 0x9E, 0xB7, 0x7E, 0xBF, 0x7E, 0x02, 0xB7, 0x7E, 0x88, 0xB7, 0x9E, 0xBF, 0x7E, 0xAE, 0x7B, 0x89, 0xF2, 0x89, 0x71, 0xA1, 0x11, 0xA8, 0xF1, 0xA9, 0x11, 0xA8, 0xF1, 0x04, 0xA9, 0x11, 0x80, 0xA8, 0xF1, 0x02, 0xA9, 0x11, 0x82, 0xA8, 0xF1, 0xA9, 0x11, 0xA8, 0xF1, 0x01, + 0xA9, 0x11, 0x80, 0xA9, 0x12, 0x01, 0xA9, 0x11, 0x86, 0xA1, 0x11, 0xA9, 0x11, 0xA8, 0xF1, 0xA9, 0x11, 0xA8, 0xF1, 0xA1, 0x11, 0xA9, 0x11, 0x01, 0xA8, 0xF1, 0x01, 0xA9, 0x11, 0x81, 0xA8, 0xF1, 0xA9, 0x11, 0x01, 0xA8, 0xF1, 0x80, 0xA9, 0x12, 0x02, 0xA9, 0x11, 0x83, 0xA8, 0xF1, 0xA1, 0x11, 0xAA, 0x34, 0xB7, 0x1E, 0x39, 0xBF, 0x7E, 0x01, 0xB7, 0x7E, 0x80, 0xBF, 0x7E, 0x01, 0xB7, 0x7E, 0x84, 0xBF, 0x7F, 0xB7, 0x7E, 0x9C, 0x97, 0x81, 0x91, 0x99, 0x51, 0x04, 0xA8, 0xF1, 0x84, 0xA9, 0x11, 0xA8, 0xF1, 0xB5, 0xDB, 0xBF, 0x7E, 0xB7, 0x7E, 0x01, 0xBF, 0x7E, 0x83, 0xA4, 0x78, 0x81, 0x91, 0x99, 0x51, 0xA9, 0x11, 0x01, 0xA8, 0xF1, 0x01, 0xA9, 0x11, 0x84, 0xA8, 0xF1, 0xA9, 0x11, 0xB5, 0xDB, 0xB7, 0x7F, 0xB7, 0x7E, 0x01, 0xBF, 0x7E, 0x80, 0xB7, 0x7E, 0x02, 0xBF, 0x7E, 0x01, 0xB7, 0x7E, 0x83, 0xBF, 0x7E, 0xB7, 0x7E, 0xBF, 0x7E, 0xB7, 0x7E, 0x01, 0xBF, 0x7E, 0x01, 0xB7, 0x7E, 0x82, 0xBF, 0x7E, 0xBE, 0x9D, 0xCB, 0x75, 0x15, 0xD2, 0xD4, 0x80, 0xD2, 0xD5, 0x01, 0x00, 0x7F, 0x82, 0x30, 0xBB, 0x99, 0x55, 0xC9, 0x31, 0x01, 0xC9, 0x32, 0x83, 0xC9, 0x12, 0xC0, 0xF2, 0xC8, 0xF2, 0x32, 0xFC, 0x02, 0x03, 0x7F, 0x8F, 0x05, 0x9B, 0x07, 0xF7, 0x07, 0xF9, 0x07, 0xFC, 0x07, 0xFE, 0x07, 0xFF, 0x2E, 0x3C, 0xB8, 0xD1, 0xB0, 0xD1, 0xB0, 0xD2, 0xB0, 0xD1, 0xB0, 0xF1, 0x98, 0xF1, 0xB0, 0xF1, 0x88, 0xF1, 0x31, 0x10, 0x01, 0x30, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x82, 0x20, 0xAE, 0x18, 0xAD, 0x20, 0xAE, 0x26, 0x18, 0xAD, 0x01, 0x01, + 0x19, 0x08, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF7, 0x10, 0xD1, 0x04, 0x18, 0xAD, 0x84, 0x10, 0xD1, 0x00, 0xF7, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF7, 0x01, 0x18, 0xAE, 0x38, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x12, 0x01, 0x19, 0x02, 0x01, 0x1A, 0x82, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xCF, 0x59, 0x18, 0xAD, 0x02, 0xD2, 0xB4, 0x08, 0xB7, 0x7E, 0x86, 0xB7, 0x1D, 0x8A, 0x53, 0x81, 0x91, 0xA1, 0x11, 0xA8, 0xF1, 0xB0, 0xF1, 0xA9, 0x11, 0x16, 0xA8, 0xF1, 0x82, 0xA8, 0xF2, 0xA8, 0xF1, 0xB0, 0xF1, 0x0D, 0xA8, 0xF1, 0x80, 0xB2, 0xF5, 0x04, 0xB7, 0x7E, 0x80, 0xB7, 0x5E, 0x02, 0xB7, 0x7E, 0x01, 0xB7, 0x5E, 0x81, 0xB7, 0x7E, 0xB7, 0x5E, 0x01, 0xB7, 0x7E, 0x80, 0xB7, 0x5E, 0x0C, 0xB7, 0x7E, 0x01, 0xB7, 0x5E, 0x14, 0xB7, 0x7E, 0x80, 0xB7, 0x5E, 0x01, 0xB7, 0x7E, 0x82, 0xB7, 0x5E, 0xB7, 0x7E, 0xB7, 0x5E, 0x06, 0xB7, 0x7E, 0x82, 0x9C, 0x78, 0x81, 0x91, 0x99, 0x51, 0x06, 0xA8, 0xF1, 0x80, 0xB5, 0xDB, 0x03, 0xB7, 0x7E, 0x82, 0x9C, 0x77, 0x81, 0x91, 0x91, 0x51, 0x06, 0xA8, 0xF1, 0x80, 0xB5, 0xDB, 0x02, 0xB7, 0x7E, 0x82, 0xB7, 0x5E, 0xB7, 0x7E, 0xB7, 0x5E, 0x06, 0xB7, 0x7E, 0x80, 0xB7, 0x5E, 0x04, 0xB7, 0x7E, 0x82, 0xB7, 0x5E, 0xB7, 0x1D, 0xCB, 0x96, 0x01, 0xD2, 0xB4, 0x86, 0xCA, 0xB4, 0xD2, 0xB4, 0xCA, 0xB4, 0xD2, 0xB4, 0xCA, 0xB4, 0xD2, 0xB4, 0xCA, 0xB4, 0x07, 0xD2, 0xB4, 0x80, 0xCA, 0x94, 0x02, 0xD2, 0xB4, 0x87, 0xCA, 0xB4, 0x08, 0x7E, 0x70, 0xF8, 0xC9, 0x52, 0xC9, 0x32, + 0xC9, 0x12, 0xC9, 0x32, 0xC1, 0x11, 0x01, 0xC8, 0xF1, 0x82, 0xC8, 0xD1, 0x33, 0x1C, 0x03, 0xBF, 0x01, 0x03, 0x9F, 0x87, 0x05, 0x1B, 0x07, 0xD6, 0x07, 0xF7, 0x07, 0xFB, 0x07, 0xFE, 0x07, 0xFF, 0x2E, 0x3C, 0xB8, 0xD1, 0x03, 0xB0, 0xD1, 0x85, 0xA0, 0xF1, 0xB0, 0xF1, 0xB0, 0xD1, 0x50, 0xF0, 0x30, 0xF0, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x1C, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x20, 0xAD, 0x06, 0x18, 0xAD, 0x80, 0x01, 0x16, 0x01, 0x01, 0x19, 0x80, 0x08, 0xD5, 0x03, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x85, 0x10, 0xD3, 0x00, 0xFA, 0x01, 0x19, 0x08, 0xF6, 0x18, 0xAD, 0x18, 0xCD, 0x1E, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x13, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x10, 0xD2, 0x12, 0x01, 0x19, 0x82, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x82, 0x00, 0xF9, 0x18, 0xD0, 0x18, 0x8D, 0x59, 0x18, 0xAD, 0x01, 0xD2, 0x94, 0x80, 0xCA, 0x94, 0x04, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x89, 0xB7, 0x5E, 0x94, 0x16, 0x89, 0x91, 0x99, 0x51, 0xB0, 0xF1, 0xA8, 0xF1, 0xB0, 0xF1, 0xA8, 0xF1, 0xB0, 0xF1, 0xA8, 0xF1, 0x02, 0xB0, 0xF1, 0x80, 0xA8, 0xF1, 0x09, 0xB0, 0xF1, 0x01, 0xA8, 0xF1, 0x81, 0xB0, 0xF1, 0xA8, 0xF1, 0x02, 0xB0, 0xF1, 0x80, 0xB0, 0xD1, 0x01, 0xB0, 0xF1, 0x81, 0xB0, 0xF2, 0xA8, 0xF1, 0x01, 0xB0, 0xF1, 0x84, 0xB0, + 0xD1, 0xB0, 0xF1, 0xB0, 0xF2, 0xA8, 0xF1, 0xB0, 0xF2, 0x02, 0xB0, 0xF1, 0x80, 0xA8, 0xF1, 0x01, 0xB0, 0xF1, 0x80, 0xAC, 0xF9, 0x01, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x05, 0xAF, 0x5E, 0x80, 0xAF, 0x7E, 0x02, 0xAF, 0x5E, 0x02, 0xB7, 0x5E, 0x83, 0xAF, 0x5E, 0xB7, 0x5E, 0xAF, 0x5E, 0xB7, 0x5E, 0x03, 0xAF, 0x5E, 0x02, 0xB7, 0x5E, 0x02, 0xAF, 0x5E, 0x01, 0xB7, 0x5E, 0x0A, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x02, 0xAF, 0x5E, 0x01, 0xB7, 0x5E, 0x02, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x03, 0xAF, 0x5E, 0x81, 0xAF, 0x5D, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x82, 0x9C, 0x77, 0x81, 0x91, 0x99, 0x51, 0x06, 0xB0, 0xF1, 0x80, 0xAD, 0xBB, 0x03, 0xB7, 0x5E, 0x82, 0x9C, 0x78, 0x89, 0x91, 0x99, 0x51, 0x06, 0xB0, 0xF1, 0x80, 0xB5, 0xBB, 0x01, 0xB7, 0x5E, 0x04, 0xAF, 0x5E, 0x80, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x02, 0xB7, 0x5E, 0x80, 0xAF, 0x5E, 0x02, 0xB7, 0x5E, 0x01, 0xAF, 0x5E, 0x8B, 0xB7, 0x5E, 0xAF, 0x5E, 0xAF, 0x1D, 0xCB, 0x75, 0xCA, 0x93, 0xD2, 0x94, 0xCA, 0x74, 0xCA, 0x94, 0xCA, 0x74, 0xD2, 0x74, 0xCA, 0x74, 0xD2, 0x94, 0x07, 0xCA, 0x94, 0x85, 0xD2, 0x94, 0xCA, 0x93, 0xCA, 0x94, 0xD2, 0x93, 0xCA, 0x74, 0x99, 0x15, 0x02, 0xC9, 0x32, 0x83, 0xC9, 0x12, 0xC1, 0x11, 0xC8, 0xF2, 0xC0, 0xF2, 0x01, 0xC8, 0xD1, 0x8A, 0x33, 0x3C, 0x03, 0xFF, 0x03, 0xDF, 0x03, 0xBF, 0x04, 0xDC, 0x07, 0xD6, 0x07, 0xF7, 0x07, 0xFB, 0x07, 0xFE, 0x07, 0xFF, 0x2E, 0x3C, 0x01, 0xB0, 0xD1, 0x02, 0xB0, 0xF1, 0x80, 0xA8, 0xF1, 0x01, 0xB0, 0xF1, 0x82, + 0x90, 0xF1, 0x30, 0xF0, 0x28, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x25, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF3, 0x0A, 0x18, 0xAD, 0x80, 0x08, 0xD3, 0x01, 0x01, 0x19, 0x81, 0x10, 0xD1, 0x18, 0xCD, 0x34, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x59, 0x18, 0xAD, 0x01, 0xD2, 0x74, 0x89, 0xCA, 0x53, 0xAF, 0x5E, 0xAF, 0x3E, 0xAF, 0x5E, 0xAF, 0x3E, 0xAF, 0x3D, 0xAF, 0x5D, 0xAF, 0x3D, 0xAF, 0x3E, 0xA6, 0x9C, 0x01, 0x81, 0x91, 0x02, 0xB0, 0xF1, 0x81, 0xB0, 0xD1, 0xB0, 0xF2, 0x01, 0xB0, 0xD1, 0x80, 0xB0, 0xF2, 0x01, 0xB0, 0xF1, 0x8C, 0xAA, 0x13, 0xB4, 0x18, 0xA4, 0x38, 0x9A, 0xB4, 0x99, 0x31, 0xA8, 0xF1, 0xB0, 0xF1, 0xB0, 0xF2, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x81, 0xB0, 0xF1, 0xB0, 0xD1, 0x03, 0xB0, 0xF1, 0x88, 0xAA, 0x74, 0xAC, 0x78, 0xAC, 0xF9, 0x9B, 0x35, 0x99, 0x31, 0xA8, 0xF1, 0xB0, 0xF1, 0xB0, 0xF2, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x84, 0xB0, 0xF1, 0xB0, 0xF2, 0xB0, 0xD1, 0xB0, 0xF1, 0xA9, 0xB3, 0x03, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x01, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x02, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x01, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x01, 0xAF, 0x3E, 0x01, 0xAF, + 0x3D, 0x01, 0xAF, 0x3E, 0x81, 0xAF, 0x5E, 0xAF, 0x3E, 0x01, 0xAF, 0x3D, 0x03, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x01, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x07, 0xAF, 0x3E, 0x81, 0xAF, 0x3D, 0xAF, 0x5E, 0x03, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x02, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x04, 0xAF, 0x3E, 0x82, 0xAF, 0x5E, 0xAF, 0x3E, 0xAF, 0x5E, 0x03, 0xAF, 0x3E, 0x84, 0x9C, 0x77, 0x81, 0x91, 0x99, 0x31, 0xB0, 0xF1, 0xB0, 0xD1, 0x04, 0xB0, 0xF1, 0x80, 0xAD, 0xBB, 0x01, 0xAF, 0x3E, 0x84, 0xAF, 0x5D, 0xAF, 0x3E, 0x94, 0x77, 0x81, 0x91, 0x99, 0x51, 0x01, 0xB0, 0xD1, 0x80, 0xB0, 0xF1, 0x03, 0xB0, 0xD1, 0x84, 0xAD, 0xBA, 0xAF, 0x3E, 0xAF, 0x5E, 0xAF, 0x3E, 0xAF, 0x5E, 0x02, 0xAF, 0x3E, 0x80, 0xAF, 0x3D, 0x02, 0xAF, 0x5E, 0x01, 0xAF, 0x3D, 0x03, 0xAF, 0x3E, 0x80, 0xAF, 0x5E, 0x03, 0xAF, 0x3E, 0x84, 0xAE, 0xFD, 0xCB, 0x56, 0xCA, 0x53, 0xCA, 0x74, 0xD2, 0x53, 0x01, 0xD2, 0x74, 0x81, 0xD2, 0x73, 0xCA, 0x73, 0x07, 0xD2, 0x74, 0x81, 0xD2, 0x54, 0xCA, 0x74, 0x01, 0xCA, 0x54, 0x80, 0xCA, 0x74, 0x02, 0xC9, 0x32, 0x02, 0xC9, 0x12, 0x80, 0xC0, 0xF1, 0x02, 0xC8, 0xD1, 0x81, 0x33, 0x5C, 0x04, 0x1F, 0x01, 0x03, 0xFF, 0x88, 0x04, 0x7D, 0x07, 0x95, 0x07, 0xF6, 0x07, 0xFA, 0x07, 0xFE, 0x07, 0xFF, 0x2E, 0x3C, 0xB0, 0xF1, 0xB0, 0xD1, 0x02, 0xB0, 0xF1, 0x87, 0xA8, 0xF1, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF1, 0x40, 0xF0, 0x28, 0xCF, 0x28, 0xEF, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAE, 0x1B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, + 0xAD, 0x84, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCD, 0x00, 0xF8, 0x01, 0x1A, 0x08, 0xF6, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xCF, 0x08, 0xD3, 0x01, 0x08, 0xF3, 0x82, 0x18, 0xAF, 0x20, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x00, 0xF6, 0x01, 0x19, 0x01, 0x18, 0x18, 0xAD, 0x20, 0xAE, 0x3A, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x5B, 0x18, 0xAD, 0x02, 0xCA, 0x53, 0x03, 0xA7, 0x3E, 0x03, 0xA7, 0x3D, 0x85, 0x94, 0x57, 0x81, 0x91, 0x99, 0x31, 0xB8, 0xD1, 0xB0, 0xD1, 0xB8, 0xD1, 0x02, 0xB0, 0xD1, 0x83, 0xB0, 0xF1, 0xB0, 0xD1, 0xB1, 0xB3, 0xAD, 0x9A, 0x01, 0xAF, 0x3D, 0x01, 0xA7, 0x3D, 0x85, 0x9D, 0xDA, 0x89, 0xD1, 0x99, 0x51, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF1, 0x02, 0xB0, 0xD1, 0x01, 0xB8, 0xD1, 0x02, 0xB0, 0xD1, 0x84, 0xB0, 0xF1, 0xB2, 0x13, 0xAD, 0x9B, 0xA7, 0x3E, 0xA7, 0x3D, 0x01, 0xAF, 0x3E, 0x82, 0x9D, 0xDA, 0x81, 0xF2, 0x91, 0x71, 0x01, 0xB0, 0xF1, 0x81, 0xB0, 0xD1, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x85, 0xB8, 0xD1, 0xB8, 0xD2, 0xB0, 0xF1, 0xAD, 0x39, 0xA7, 0x3D, 0xA7, 0x3E, 0x04, 0xA7, 0x3D, 0x80, 0xA7, 0x3E, 0x02, 0xA7, 0x3D, 0x80, 0xAF, 0x3D, 0x02, 0xA7, 0x3D, 0x01, 0xA7, 0x3E, 0x81, 0xA7, 0x3D, 0xAF, 0x3D, 0x01, 0xA7, 0x3D, 0x81, 0xA7, 0x3E, 0xAF, 0x3D, 0x01, 0xA7, 0x3E, 0x81, 0xA7, 0x3D, 0xAF, 0x3D, 0x01, 0xA7, 0x3D, 0x82, 0xA7, 0x3E, 0xAF, 0x3E, + 0xAF, 0x1E, 0x07, 0xA7, 0x3E, 0x84, 0xAF, 0x3E, 0xA7, 0x3E, 0xA7, 0x3D, 0xAF, 0x3E, 0xA7, 0x3E, 0x02, 0xA7, 0x3D, 0x80, 0xAF, 0x3D, 0x02, 0xA7, 0x3E, 0x83, 0xA7, 0x3D, 0xAF, 0x3D, 0xA7, 0x3D, 0xAF, 0x3D, 0x01, 0xA7, 0x3E, 0x81, 0xAF, 0x3D, 0xA7, 0x3E, 0x01, 0xA7, 0x3D, 0x83, 0xA7, 0x3E, 0x94, 0x78, 0x81, 0x91, 0x99, 0x31, 0x05, 0xB0, 0xD1, 0x84, 0xB8, 0xD1, 0xAD, 0x9A, 0xA7, 0x3E, 0xA7, 0x3D, 0xA7, 0x3E, 0x02, 0xA7, 0x3D, 0x80, 0xAF, 0x3D, 0x04, 0xA7, 0x3D, 0x80, 0xAF, 0x3D, 0x02, 0xA7, 0x3D, 0x81, 0xAF, 0x3E, 0xA7, 0x3E, 0x02, 0xA7, 0x3D, 0x84, 0xAF, 0x3D, 0xAF, 0x3E, 0xA7, 0x3D, 0xAF, 0x3D, 0xAF, 0x3E, 0x01, 0xA7, 0x3D, 0x81, 0xAF, 0x3D, 0xA7, 0x3E, 0x02, 0xAF, 0x3D, 0x80, 0xA7, 0x3E, 0x01, 0xA7, 0x3D, 0x83, 0xAF, 0x3D, 0xA7, 0x3D, 0xAE, 0xDD, 0xC3, 0x76, 0x03, 0xCA, 0x53, 0x80, 0xCA, 0x33, 0x08, 0xCA, 0x53, 0x82, 0xD2, 0x33, 0xCA, 0x53, 0xD2, 0x53, 0x01, 0xCA, 0x53, 0x85, 0x30, 0x9C, 0x00, 0x5F, 0x58, 0xB9, 0xC9, 0x12, 0xC1, 0x11, 0xC8, 0xF1, 0x01, 0xC8, 0xD1, 0x01, 0xC0, 0xD1, 0x81, 0x33, 0x7C, 0x04, 0x5F, 0x01, 0x04, 0x1F, 0x86, 0x04, 0x5E, 0x07, 0x75, 0x07, 0xF5, 0x07, 0xFA, 0x07, 0xFE, 0x07, 0xFF, 0x2E, 0x3C, 0x02, 0xB0, 0xF1, 0x82, 0xB0, 0xD1, 0xB0, 0xF1, 0xA8, 0xF1, 0x01, 0xB0, 0xF1, 0x82, 0xB0, 0xD1, 0x80, 0xF1, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAE, 0x1B, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x06, 0x18, + 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x01, 0x01, 0x1A, 0x80, 0x10, 0xD1, 0x02, 0x18, 0xAD, 0x82, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x80, 0x10, 0xD1, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x32, 0x18, 0xAD, 0x81, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x5A, 0x18, 0xAD, 0x82, 0xCA, 0x13, 0xCA, 0x33, 0xCA, 0x13, 0x04, 0xA7, 0x1D, 0x02, 0xA7, 0x3D, 0x82, 0x8A, 0x53, 0x81, 0x91, 0xA8, 0xF1, 0x02, 0xB8, 0xD1, 0x80, 0xB0, 0xD1, 0x02, 0xB8, 0xD1, 0x83, 0xB2, 0x13, 0xA6, 0xBD, 0xA7, 0x1D, 0xA7, 0x3E, 0x03, 0xA7, 0x1D, 0x83, 0x9E, 0x1B, 0x81, 0xF1, 0x91, 0x71, 0xB0, 0xF1, 0x08, 0xB8, 0xD1, 0x81, 0xB1, 0xF3, 0xA6, 0xBD, 0x03, 0xA7, 0x1D, 0x84, 0xA7, 0x3D, 0xA7, 0x1D, 0x9E, 0x1B, 0x89, 0xF2, 0x89, 0x91, 0x05, 0xB8, 0xD1, 0x82, 0xB0, 0xD1, 0xB8, 0xD1, 0xB3, 0x36, 0x09, 0xA7, 0x1D, 0x02, 0xA7, 0x3D, 0x01, 0xA7, 0x1D, 0x82, 0xA7, 0x3D, 0xA7, 0x1D, 0xA7, 0x1E, 0x01, 0xA7, 0x1D, 0x81, 0xA7, 0x3D, 0xA7, 0x3E, 0x02, 0xA7, 0x1D, 0x83, 0xA7, 0x3E, 0xA7, 0x1D, 0xA7, 0x3E, 0xA7, 0x3D, 0x01, 0xA7, 0x1D, 0x80, 0xA7, 0x3D, 0x09, 0xA7, 0x1D, 0x02, 0xA7, 0x3D, 0x81, 0xA7, 0x3E, 0xA7, 0x1D, 0x01, 0xA7, 0x3D, 0x05, 0xA7, 0x1D, 0x80, 0xA7, 0x3D, 0x01, 0xA7, 0x1D, 0x80, 0xA7, 0x3E, 0x01, 0xA7, 0x3D, 0x01, 0xA7, 0x1D, 0x82, 0x94, 0x77, 0x81, 0x91, 0x99, 0x31, 0x06, 0xB8, 0xD1, 0x83, 0xA5, 0x9A, 0xA7, + 0x1D, 0xA7, 0x3D, 0xA7, 0x3E, 0x01, 0xA7, 0x1D, 0x81, 0xA7, 0x1E, 0xA7, 0x3D, 0x07, 0xA7, 0x1D, 0x01, 0xA7, 0x3D, 0x84, 0xA7, 0x1E, 0xA7, 0x1D, 0xA7, 0x3D, 0xA7, 0x1D, 0xA7, 0x3D, 0x05, 0xA7, 0x1D, 0x01, 0xA7, 0x3D, 0x80, 0xA7, 0x1D, 0x01, 0xA7, 0x3D, 0x81, 0xA7, 0x1D, 0xA7, 0x3E, 0x04, 0xA7, 0x1D, 0x83, 0xBB, 0xF7, 0xCA, 0x13, 0xCA, 0x33, 0xCA, 0x13, 0x09, 0xCA, 0x33, 0x01, 0xCA, 0x13, 0x82, 0xCA, 0x14, 0xD2, 0x33, 0xCA, 0x33, 0x01, 0x00, 0x3F, 0x83, 0x00, 0x5F, 0x78, 0xD7, 0xC0, 0xF2, 0xC8, 0xF1, 0x02, 0xC0, 0xD1, 0x8D, 0xC8, 0xB1, 0x4B, 0x1A, 0x04, 0x7F, 0x04, 0x5F, 0x04, 0x3F, 0x04, 0x5F, 0x07, 0x35, 0x07, 0xF4, 0x07, 0xF9, 0x07, 0xFE, 0x07, 0xFF, 0x2E, 0x3C, 0xB0, 0xD1, 0xB0, 0xF1, 0x02, 0xB0, 0xD1, 0x87, 0xA8, 0xF1, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF1, 0xA0, 0xF1, 0x28, 0xCF, 0x28, 0xEF, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x18, 0xAD, 0x20, 0xAE, 0x1B, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x10, 0xD1, 0x08, 0xF3, 0x10, 0xF3, 0x10, 0xD2, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x04, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x10, 0xD3, 0x01, 0x01, 0x19, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAF, 0x01, 0x1A, 0x01, 0x19, 0x00, 0xF9, 0x08, 0xF6, 0x02, 0x01, 0x19, 0x81, 0x18, 0xAF, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD3, 0x18, 0xAE, 0x1D, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, + 0xAE, 0x13, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAE, 0x20, 0xAE, 0x5B, 0x18, 0xAD, 0x02, 0xCA, 0x13, 0x01, 0x9F, 0x1D, 0x80, 0xA7, 0x1D, 0x01, 0x9F, 0x1D, 0x80, 0xA7, 0x1D, 0x01, 0x9F, 0x1D, 0x01, 0x81, 0x91, 0x07, 0xB8, 0xD1, 0x80, 0xA5, 0xDB, 0x01, 0x9F, 0x1D, 0x80, 0x9E, 0xFD, 0x02, 0x9F, 0x1D, 0x84, 0xA6, 0xFD, 0x9F, 0x1D, 0x94, 0xF9, 0x81, 0x91, 0x99, 0x31, 0x01, 0xB8, 0xD1, 0x80, 0xB8, 0xB1, 0x04, 0xB8, 0xD1, 0x81, 0xB8, 0xB1, 0xA5, 0xDB, 0x03, 0x9F, 0x1D, 0x80, 0xA6, 0xFD, 0x02, 0x9F, 0x1D, 0x82, 0x94, 0xF9, 0x81, 0x91, 0x99, 0x31, 0x06, 0xB8, 0xD1, 0x80, 0xB9, 0x32, 0x02, 0x9F, 0x1D, 0x80, 0x9F, 0x1E, 0x04, 0x9F, 0x1D, 0x84, 0x9E, 0x1B, 0x94, 0x57, 0x92, 0xD4, 0xA1, 0xF3, 0xA9, 0x11, 0x01, 0xB0, 0xF1, 0x81, 0xA9, 0x11, 0xB2, 0x74, 0x01, 0xB2, 0x54, 0x81, 0xAB, 0xF7, 0xA5, 0xDB, 0x01, 0xA6, 0xFD, 0x01, 0xA7, 0x1D, 0x01, 0x9F, 0x1D, 0x80, 0xA6, 0xFD, 0x01, 0x9F, 0x1D, 0x80, 0xA7, 0x1D, 0x0A, 0x9F, 0x1D, 0x8C, 0x9E, 0x7C, 0x94, 0x98, 0x8B, 0x14, 0x9A, 0x13, 0xA1, 0x31, 0xA9, 0x12, 0xB0, 0xF1, 0xA8, 0xF1, 0xB2, 0x55, 0xB2, 0x74, 0xB2, 0x54, 0xAB, 0x97, 0xAD, 0x1A, 0x03, 0x9F, 0x1D, 0x85, 0xA7, 0x1D, 0x9F, 0x1D, 0xA7, 0x1D, 0x94, 0x57, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xB8, 0xD1, 0x87, 0xA5, 0x7A, 0x9F, 0x1D, 0xA7, 0x1D, 0x9F, 0x1D, 0xA7, 0x1D, 0x9E, 0x7C, 0x9D, 0xBA, 0xA5, 0x9A, 0x06, 0xA5, 0x7A, 0x80, 0xA6, 0x9C, 0x02, 0x9F, 0x1D, 0x80, 0xA7, 0x1D, 0x06, 0x9F, 0x1D, 0x85, 0x9E, 0x5C, 0x94, 0xB8, 0x8A, 0xF4, 0x9A, + 0x13, 0xA1, 0x31, 0xA8, 0xF1, 0x01, 0xB0, 0xF1, 0x88, 0xB9, 0x32, 0xB2, 0x74, 0xB2, 0x54, 0xB3, 0x36, 0xAC, 0xB9, 0xA6, 0x3C, 0x9F, 0x1D, 0xBB, 0xF7, 0xC9, 0xF3, 0x02, 0xCA, 0x13, 0x07, 0xC9, 0xF3, 0x04, 0xCA, 0x13, 0x01, 0x00, 0x3F, 0x85, 0x00, 0x5F, 0x58, 0xB9, 0xC0, 0xF1, 0xC0, 0xD1, 0xC8, 0xD1, 0xC8, 0xB2, 0x01, 0xC0, 0xB1, 0x81, 0x62, 0xB8, 0x04, 0xBF, 0x01, 0x04, 0x7F, 0x88, 0x04, 0x5F, 0x07, 0x15, 0x07, 0xF4, 0x07, 0xF9, 0x07, 0xFD, 0x07, 0xFF, 0x2E, 0x3C, 0xB0, 0xD1, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x01, 0xA8, 0xF1, 0x03, 0xB0, 0xF1, 0x82, 0x58, 0xF0, 0x28, 0xCF, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x1A, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x01, 0x17, 0x03, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x8B, 0x08, 0xF3, 0x01, 0x19, 0x00, 0xF6, 0x20, 0xAD, 0x20, 0xCD, 0x18, 0xAE, 0x08, 0xF3, 0x01, 0x19, 0x00, 0xF9, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD4, 0x02, 0x18, 0xAD, 0x82, 0x00, 0xF6, 0x01, 0x19, 0x08, 0xF3, 0x38, 0x18, 0xAD, 0x01, 0x18, 0xCD, 0x13, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xAE, 0x5A, 0x18, 0xAD, 0x02, 0xC9, 0xD3, 0x06, 0x9E, 0xFD, 0x87, 0x95, 0x9A, 0x81, 0x91, 0x91, 0x51, 0xC0, 0xB1, 0xB8, 0xD1, 0xC0, 0xB1, 0xB8, 0xD1, 0xC0, 0xD1, 0x01, 0xB8, 0xD1, 0x80, 0xB2, 0xB5, 0x09, 0x9E, 0xFD, 0x81, 0x82, 0x52, 0x81, 0x91, 0x03, 0xB8, + 0xD1, 0x84, 0xC0, 0xB1, 0xC0, 0xD1, 0xB8, 0xD1, 0xC0, 0xD1, 0xB1, 0xF3, 0x04, 0x9E, 0xFD, 0x80, 0x9F, 0x1D, 0x03, 0x9E, 0xFD, 0x81, 0x8A, 0x93, 0x81, 0x91, 0x01, 0xB8, 0xD1, 0x80, 0xC0, 0xD1, 0x03, 0xB8, 0xD1, 0x81, 0xC0, 0xB1, 0xA6, 0x3C, 0x05, 0x9E, 0xFD, 0x83, 0x94, 0xF8, 0x8A, 0x53, 0x91, 0x71, 0xB0, 0xF1, 0x02, 0xB8, 0xD1, 0x01, 0xB8, 0xB1, 0x80, 0xC0, 0xB1, 0x01, 0xC0, 0xD1, 0x84, 0xB8, 0xD1, 0xC0, 0xD1, 0xB8, 0xB1, 0xB9, 0x92, 0xAC, 0xB9, 0x10, 0x9E, 0xFD, 0x83, 0x9E, 0x5C, 0x8B, 0x96, 0x89, 0x91, 0xA1, 0x31, 0x01, 0xB8, 0xD1, 0x80, 0xC0, 0xB1, 0x05, 0xB8, 0xD1, 0x84, 0xC0, 0xB1, 0xB8, 0xD1, 0xB9, 0x32, 0xAB, 0xF7, 0x9E, 0x9C, 0x03, 0x9E, 0xFD, 0x85, 0x94, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xB8, 0xD1, 0xC0, 0xB1, 0xB8, 0xD1, 0x01, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x80, 0xA5, 0x7A, 0x03, 0x9E, 0xFD, 0x84, 0x94, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xB8, 0xD1, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x80, 0xC0, 0xB1, 0x01, 0xB8, 0xD1, 0x80, 0xA5, 0x7A, 0x08, 0x9E, 0xFD, 0x83, 0x9E, 0x9C, 0x8B, 0x96, 0x89, 0x71, 0xA1, 0x31, 0x01, 0xB8, 0xD1, 0x83, 0xC0, 0xB1, 0xB8, 0xD1, 0xC0, 0xB1, 0xC0, 0xD1, 0x01, 0xB8, 0xD1, 0x80, 0xC0, 0xD1, 0x01, 0xB8, 0xD1, 0x85, 0xC0, 0xD1, 0xB3, 0x35, 0xA6, 0x3C, 0xBB, 0xD7, 0xC9, 0xD3, 0xC9, 0xF3, 0x08, 0xC9, 0xD3, 0x80, 0xC9, 0xF3, 0x01, 0xC9, 0xD3, 0x82, 0xC9, 0xF3, 0xC9, 0xD3, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x91, 0x00, 0xDF, 0x88, 0xF6, 0xC8, 0xD1, 0xC0, 0xB1, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0x62, 0xD9, + 0x04, 0xFF, 0x04, 0xBF, 0x04, 0x9F, 0x04, 0x7F, 0x06, 0xB6, 0x07, 0xF3, 0x07, 0xF8, 0x07, 0xFD, 0x07, 0xFF, 0x2E, 0x3C, 0x02, 0xB0, 0xD1, 0x81, 0xB0, 0xF1, 0x98, 0xF2, 0x02, 0xB0, 0xF1, 0x84, 0x78, 0xF0, 0x90, 0xF1, 0x80, 0xD1, 0x28, 0xCF, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x19, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x85, 0x00, 0xF7, 0x08, 0xF7, 0x01, 0x19, 0x01, 0x1A, 0x08, 0xF4, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x08, 0xF3, 0x01, 0x19, 0x00, 0xF6, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xCD, 0x08, 0xF3, 0x01, 0x19, 0x08, 0xF6, 0x02, 0x18, 0xAD, 0x83, 0x08, 0xF7, 0x01, 0x19, 0x08, 0xF5, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x85, 0x08, 0xF6, 0x01, 0x1A, 0x08, 0xF6, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x12, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x5E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0xC9, 0xB3, 0x84, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xFC, 0x01, 0x96, 0xFD, 0x84, 0x95, 0x99, 0x89, 0x91, 0x91, 0x71, 0xC0, 0xB1, 0xC0, 0xD1, 0x03, 0xC0, 0xB1, 0x82, 0xC0, 0xD1, 0xAB, 0xD7, 0x9E, 0xFC, 0x01, 0x96, 0xFD, 0x89, 0x96, 0xDD, 0x96, 0xFD, 0x9E, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xDD, 0x9E, 0xFD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x11, 0x01, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x83, 0xC0, 0xD1, + 0xC0, 0xB1, 0xAB, 0x76, 0x9E, 0xDD, 0x01, 0x9E, 0xFD, 0x01, 0x9E, 0xDD, 0x88, 0x96, 0xDD, 0x9E, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xDD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x89, 0xC0, 0xD1, 0xA5, 0x5A, 0x96, 0xFD, 0x9E, 0xDD, 0x9E, 0xFD, 0x96, 0xFD, 0x96, 0x3B, 0x8A, 0xF4, 0x89, 0x91, 0xA9, 0x11, 0x01, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x03, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x03, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x87, 0xB9, 0x92, 0xA5, 0x5A, 0x9E, 0xDD, 0x9E, 0xFC, 0x96, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x9E, 0xFD, 0x07, 0x96, 0xFD, 0x84, 0x94, 0xF9, 0x81, 0xF1, 0x91, 0x71, 0xB8, 0xD2, 0xC0, 0xB1, 0x01, 0xC0, 0xD1, 0x83, 0xC0, 0xB1, 0xC0, 0xD1, 0xC0, 0xB1, 0xC0, 0xD1, 0x06, 0xC0, 0xB1, 0x87, 0xB9, 0x92, 0x9D, 0xBB, 0x96, 0xFD, 0x9E, 0xDD, 0x96, 0xFD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x81, 0xA5, 0x5A, 0x9E, 0xDD, 0x01, 0x96, 0xFD, 0x83, 0x9E, 0xFD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x83, 0xA5, 0x5A, 0x96, 0xFD, 0x9E, 0xFD, 0x96, 0xFD, 0x01, 0x9E, 0xFD, 0x86, 0x96, 0xFD, 0x9E, 0xFD, 0x96, 0xFD, 0x95, 0x39, 0x81, 0xF1, 0x91, 0x71, 0xB0, 0xD1, 0x02, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x01, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x05, 0xC0, 0xB1, 0x83, 0xB8, 0xD1, 0xB9, 0x11, 0xAC, 0xFA, 0xB4, 0x58, 0x0A, 0xC9, 0xB3, 0x80, 0xC9, 0xD2, 0x01, 0xC9, 0xD3, 0x81, 0xC9, 0xB3, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x83, 0x00, 0xBF, 0x31, + 0x1C, 0xC0, 0xD1, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x8C, 0x62, 0x78, 0x05, 0x3F, 0x04, 0xFF, 0x04, 0xBF, 0x04, 0x9F, 0x06, 0x96, 0x07, 0xF2, 0x07, 0xF7, 0x07, 0xFC, 0x07, 0xFF, 0x2E, 0x3C, 0xB0, 0xF1, 0xB0, 0xD1, 0x01, 0xB0, 0xF1, 0x80, 0x89, 0x12, 0x01, 0xB0, 0xF1, 0x83, 0xB0, 0xD1, 0x48, 0xF0, 0x28, 0xF0, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x03, 0x20, 0xAE, 0x1A, 0x18, 0xAD, 0x01, 0x01, 0x1A, 0x80, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x82, 0x10, 0xD3, 0x01, 0x19, 0x00, 0xF9, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x06, 0x18, 0xAD, 0x82, 0x08, 0xF3, 0x01, 0x19, 0x00, 0xF6, 0x01, 0x18, 0xAD, 0x83, 0x20, 0x8D, 0x08, 0xF3, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x18, 0xAE, 0x89, 0x18, 0xCE, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF3, 0x18, 0xAD, 0x20, 0xAE, 0x18, 0xAD, 0x08, 0xF6, 0x01, 0x1A, 0x08, 0xF3, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x18, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xCF, 0x34, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x10, 0xD3, 0x08, 0xF3, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x25, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x0B, 0x18, 0xAD, 0x01, 0xC9, 0x93, 0x81, 0xC9, 0x92, 0x96, 0xDC, 0x05, 0x96, 0xDD, 0x82, 0x8D, 0x79, 0x81, 0x91, 0x91, 0x51, 0x06, 0xC0, 0xB1, 0x80, 0xAB, 0xD7, 0x09, 0x96, 0xDD, 0x82, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, + 0x06, 0xC0, 0xB1, 0x80, 0xAB, 0xD7, 0x09, 0x96, 0xDD, 0x82, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x80, 0x9D, 0x5A, 0x02, 0x96, 0xDD, 0x83, 0x95, 0xDA, 0x89, 0xF2, 0x89, 0x71, 0xB8, 0xD1, 0x01, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x0E, 0xC0, 0xB1, 0x80, 0xA4, 0x99, 0x04, 0x96, 0xDD, 0x80, 0x96, 0xDC, 0x05, 0x96, 0xDD, 0x82, 0x8C, 0x37, 0x81, 0x91, 0x99, 0x31, 0x0B, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x04, 0xC0, 0xB1, 0x85, 0xA4, 0x99, 0x96, 0xDC, 0x96, 0xDD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x11, 0x06, 0xC0, 0xB1, 0x80, 0x9D, 0x5A, 0x03, 0x96, 0xDD, 0x82, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x80, 0x9D, 0x5A, 0x06, 0x96, 0xDD, 0x82, 0x8C, 0xD8, 0x81, 0x91, 0x99, 0x51, 0x05, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x06, 0xC0, 0xB1, 0x84, 0xAC, 0x79, 0xAC, 0xF9, 0xC9, 0x92, 0xC9, 0x93, 0xC9, 0xB2, 0x01, 0xC9, 0x92, 0x02, 0xC9, 0x93, 0x02, 0xC9, 0x92, 0x02, 0xC9, 0x93, 0x02, 0x00, 0x3F, 0x83, 0x00, 0xBF, 0x01, 0x1F, 0xC0, 0xB1, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x80, 0x79, 0xD6, 0x01, 0x05, 0x1F, 0x89, 0x04, 0xFF, 0x04, 0xBF, 0x06, 0x38, 0x07, 0xF1, 0x07, 0xF7, 0x07, 0xFC, 0x07, 0xFF, 0x2E, 0x3C, 0xB0, 0xF1, 0xB0, 0xF2, 0x01, 0xB0, 0xF1, 0x80, 0x80, 0xF2, 0x01, 0xB0, 0xF1, 0x86, 0xB0, 0xF2, 0x31, 0x10, 0x30, 0xF0, 0x28, 0xCF, 0x28, 0xEF, 0x20, 0xCE, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x1A, 0x18, 0xAD, 0x83, 0x18, 0xAF, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD0, + 0x01, 0x18, 0xAD, 0x80, 0x18, 0xD1, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x06, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x18, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCE, 0x01, 0x01, 0x19, 0x82, 0x01, 0x18, 0x08, 0xF5, 0x00, 0xF8, 0x01, 0x01, 0x19, 0x80, 0x18, 0xCF, 0x02, 0x18, 0xAD, 0x82, 0x00, 0xF8, 0x01, 0x19, 0x08, 0xF3, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xD0, 0x01, 0x19, 0x16, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x1D, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xCE, 0x01, 0x17, 0x01, 0x1A, 0x01, 0x01, 0x19, 0x83, 0x01, 0x1A, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0B, 0x18, 0xAD, 0x86, 0x20, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x08, 0xF3, 0x10, 0xF3, 0x10, 0xD2, 0x18, 0xCD, 0x10, 0x18, 0xAD, 0x02, 0xC9, 0x72, 0x80, 0x8E, 0xBC, 0x01, 0x8E, 0xBD, 0x02, 0x8E, 0xBC, 0x83, 0x8E, 0xBD, 0x8D, 0x7A, 0x81, 0x91, 0x91, 0x51, 0x04, 0xC0, 0xB1, 0x83, 0xC8, 0xB1, 0xC0, 0xB1, 0xAB, 0xB7, 0x8E, 0xBD, 0x07, 0x8E, 0xBC, 0x85, 0x8E, 0xBD, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xC0, 0xB1, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x82, 0xC8, 0xB1, 0xC0, 0xB1, 0xAB, 0xB7, 0x02, 0x8E, 0xBC, 0x82, 0x8E, 0xDC, 0x8E, 0xBC, 0x8E, 0xDD, 0x01, 0x8E, 0xBC, 0x84, 0x8E, 0xBD, 0x8E, 0xBC, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, + 0xC0, 0xB1, 0x85, 0x9D, 0x39, 0x8E, 0xBD, 0x8E, 0xDD, 0x8D, 0xBA, 0x81, 0xF2, 0x91, 0x71, 0x01, 0xC0, 0xB1, 0x87, 0xC8, 0xB1, 0xC0, 0xB1, 0xC0, 0xD1, 0xC0, 0xB1, 0xC8, 0xB1, 0xC8, 0xB2, 0xC0, 0xB1, 0xC8, 0xB2, 0x01, 0xC8, 0xB1, 0x81, 0xC0, 0xD1, 0xC0, 0xB1, 0x01, 0xC0, 0xD1, 0x80, 0xC8, 0xB1, 0x01, 0xC0, 0xB1, 0x86, 0xC8, 0xB1, 0xC0, 0xB1, 0xA4, 0x37, 0x8E, 0xBC, 0x8E, 0xDD, 0x8E, 0xBC, 0x8E, 0xBD, 0x01, 0x8E, 0xBC, 0x81, 0x8E, 0xBD, 0x8E, 0xBC, 0x01, 0x8E, 0xBD, 0x82, 0x8C, 0xD8, 0x81, 0x91, 0xA1, 0x31, 0x01, 0xC0, 0xB1, 0x80, 0xC8, 0xB1, 0x01, 0xC0, 0xB1, 0x83, 0xC8, 0xB2, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x01, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x8A, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0xA4, 0xD9, 0x8E, 0xBC, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0xC0, 0xB1, 0xC8, 0xB1, 0xC0, 0xD1, 0x02, 0xC0, 0xB1, 0x81, 0xC8, 0xB1, 0x9D, 0x3A, 0x03, 0x8E, 0xBC, 0x82, 0x8C, 0x37, 0x81, 0x91, 0xA1, 0x31, 0x06, 0xC0, 0xB1, 0x80, 0x9D, 0x5A, 0x01, 0x8E, 0xBC, 0x80, 0x8E, 0xDC, 0x02, 0x8E, 0xBC, 0x89, 0x8C, 0xD8, 0x81, 0x91, 0x99, 0x51, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0xC8, 0xB2, 0xC8, 0xB1, 0xC0, 0xB1, 0xC8, 0xB1, 0x02, 0xC0, 0xB1, 0x80, 0xC0, 0xD1, 0x04, 0xC0, 0xB1, 0x02, 0xC8, 0xB1, 0x82, 0xC8, 0xD1, 0xA4, 0x78, 0xA4, 0xD9, 0x0C, 0xC9, 0x72, 0x01, 0x00, 0x3F, 0x82, 0x00, 0x1F, 0x00, 0x9F, 0x00, 0xDF, 0x04, 0xC0, 0xB1, 0x8C, 0x91, 0x74, 0x04, 0x9F, 0x05, 0x7F, 0x05, 0x1F, 0x04, 0xFF, 0x06, 0x19, 0x07, 0xF1, 0x07, + 0xF6, 0x07, 0xFC, 0x07, 0xFF, 0x35, 0xBB, 0xB0, 0xF1, 0xB0, 0xD1, 0x01, 0xB0, 0xF1, 0x80, 0x69, 0x12, 0x01, 0xB0, 0xF1, 0x80, 0x98, 0xF1, 0x01, 0x30, 0xF0, 0x82, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xEF, 0x03, 0x20, 0xCE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x1B, 0x18, 0xAD, 0x87, 0x01, 0x19, 0x01, 0x1A, 0x10, 0xD3, 0x20, 0xAD, 0x18, 0xAD, 0x10, 0xD3, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x01, 0x19, 0x01, 0x1A, 0x05, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xD0, 0x01, 0x01, 0x1A, 0x80, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x10, 0xD2, 0x01, 0x19, 0x01, 0x1A, 0x02, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x01, 0x01, 0x19, 0x81, 0x18, 0xB0, 0x18, 0xAE, 0x13, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xCD, 0x06, 0x18, 0xAD, 0x82, 0x18, 0xAF, 0x01, 0x19, 0x00, 0xF9, 0x13, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x1D, 0x18, 0xAD, 0x88, 0x18, 0xAE, 0x08, 0xF5, 0x01, 0x1A, 0x01, 0x19, 0x01, 0x17, 0x00, 0xF7, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF5, 0x01, 0x20, 0xAD, 0x81, 0x18, 0xAD, 0x20, 0xAE, 0x26, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0A, 0x18, 0xAD, 0x89, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x1A, 0x00, 0xFA, 0x01, 0x1A, 0x01, 0x19, 0x08, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x18, 0xAE, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x07, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x02, 0xC9, 0x52, 0x06, 0x8E, 0xBC, 0x84, 0x8D, 0x59, 0x81, 0x91, 0x91, 0x71, 0xC8, 0xF2, 0xC8, 0xF1, + 0x02, 0xC8, 0xF2, 0x82, 0xC8, 0xF1, 0xC8, 0xF2, 0xAB, 0xD7, 0x09, 0x8E, 0xBC, 0x84, 0x8C, 0x36, 0x81, 0x91, 0xA9, 0x31, 0xC8, 0xF2, 0xC8, 0xF1, 0x03, 0xC8, 0xF2, 0x81, 0xC0, 0xF2, 0xAB, 0xB7, 0x09, 0x8E, 0xBC, 0x82, 0x84, 0x37, 0x81, 0x91, 0xA9, 0x51, 0x01, 0xC8, 0xF1, 0x80, 0xC8, 0xF2, 0x01, 0xC8, 0xF1, 0x87, 0xC8, 0xF2, 0xC8, 0xF1, 0x9D, 0x3A, 0x8E, 0xBC, 0x8E, 0x1B, 0x81, 0xF2, 0x89, 0x71, 0xB9, 0x12, 0x01, 0xC8, 0xF1, 0x80, 0xC8, 0xF2, 0x02, 0xC8, 0xF1, 0x82, 0xC8, 0xF2, 0xC8, 0xD1, 0xC1, 0x12, 0x02, 0xC8, 0xF2, 0x8A, 0xC8, 0xD1, 0xC8, 0xF2, 0xC8, 0xD1, 0xC8, 0xF2, 0xC0, 0xF1, 0xC8, 0xF1, 0xC8, 0xF2, 0xC8, 0xF1, 0xC8, 0xF2, 0xC0, 0xF1, 0xA4, 0x98, 0x07, 0x8E, 0xBC, 0x80, 0x8D, 0xBA, 0x01, 0x89, 0x91, 0x8E, 0xC0, 0xF1, 0xC8, 0xF2, 0xC0, 0xF2, 0xC8, 0xF1, 0xC8, 0xF2, 0xC8, 0xF1, 0xC0, 0xF1, 0xC8, 0xF2, 0xC8, 0xF1, 0xC8, 0xF2, 0xC0, 0xF2, 0xC8, 0xF1, 0xC0, 0xF1, 0xC8, 0xF2, 0xC8, 0xF1, 0x02, 0xC8, 0xF2, 0x01, 0xC8, 0xF1, 0x85, 0xC0, 0xF2, 0xC1, 0x32, 0x8E, 0x5C, 0x8C, 0x17, 0x81, 0x91, 0xA9, 0x31, 0x03, 0xC8, 0xF2, 0x80, 0xC8, 0xF1, 0x01, 0xC8, 0xF2, 0x80, 0x9D, 0x59, 0x03, 0x8E, 0xBC, 0x82, 0x8C, 0x17, 0x81, 0x91, 0xA9, 0x51, 0x01, 0xC8, 0xF1, 0x80, 0xC8, 0xF2, 0x01, 0xC8, 0xF1, 0x82, 0xC8, 0xF2, 0xC8, 0xF1, 0x9D, 0x5A, 0x03, 0x8E, 0xBC, 0x84, 0x8E, 0xBD, 0x8D, 0xBA, 0x81, 0xF2, 0x89, 0x91, 0xC1, 0x11, 0x02, 0xC8, 0xF1, 0x80, 0xC0, 0xF2, 0x01, 0xC8, 0xF1, 0x83, 0xC0, 0xF2, 0xC8, 0xD2, 0xC8, 0xF1, 0xC8, 0xF2, 0x01, + 0xC0, 0xF1, 0x82, 0xC8, 0xF2, 0xC0, 0xF1, 0xC8, 0xF1, 0x01, 0xC8, 0xF2, 0x01, 0xC8, 0xF1, 0x84, 0xC8, 0xF2, 0xC1, 0x52, 0x95, 0xFB, 0xA4, 0xB8, 0xC1, 0x52, 0x02, 0xC9, 0x52, 0x80, 0xC9, 0x72, 0x06, 0xC9, 0x52, 0x02, 0x00, 0x1F, 0x82, 0x00, 0x7F, 0x00, 0xDF, 0x68, 0xB7, 0x03, 0xC0, 0xB1, 0x8C, 0xA8, 0xF3, 0x04, 0x1F, 0x05, 0x7F, 0x05, 0x3F, 0x05, 0x1F, 0x05, 0xF9, 0x07, 0xF0, 0x07, 0xF6, 0x07, 0xFC, 0x07, 0xFF, 0x5C, 0x78, 0xB0, 0xF1, 0xB0, 0xD1, 0x01, 0xB0, 0xF1, 0x80, 0x59, 0x12, 0x01, 0xB0, 0xF1, 0x81, 0x90, 0xF1, 0x30, 0xF0, 0x01, 0x30, 0xEF, 0x81, 0x28, 0xCF, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x83, 0x20, 0xAE, 0x20, 0xCE, 0x20, 0xAD, 0x20, 0xAE, 0x1B, 0x18, 0xAD, 0x84, 0x08, 0xF4, 0x01, 0x19, 0x01, 0x1A, 0x00, 0xF7, 0x00, 0xF8, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x03, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x17, 0x01, 0x19, 0x08, 0xF6, 0x03, 0x18, 0xAD, 0x8B, 0x18, 0xCF, 0x08, 0xF3, 0x00, 0xF6, 0x08, 0xF3, 0x18, 0xAF, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF6, 0x01, 0x19, 0x01, 0x18, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x14, 0x18, 0xAD, 0x87, 0x18, 0xAE, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAD, 0x10, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x01, 0x17, 0x15, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x19, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x01, 0x19, 0x83, 0x08, 0xF3, 0x18, + 0xCD, 0x20, 0xAE, 0x10, 0xD3, 0x01, 0x01, 0x19, 0x26, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x0E, 0x18, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x81, 0x01, 0x17, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF5, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x02, 0xC9, 0x32, 0x06, 0x8E, 0xBC, 0x84, 0x8D, 0x79, 0x81, 0x91, 0x91, 0x71, 0xC1, 0x32, 0xC1, 0x31, 0x01, 0xC9, 0x12, 0x83, 0xC1, 0x32, 0xC9, 0x11, 0xC9, 0x12, 0xAB, 0xF7, 0x08, 0x8E, 0xBC, 0x85, 0x96, 0xBC, 0x8C, 0x36, 0x81, 0x91, 0xA9, 0x51, 0xC9, 0x12, 0xC9, 0x11, 0x01, 0xC9, 0x12, 0x80, 0xC1, 0x12, 0x01, 0xC9, 0x12, 0x80, 0xAB, 0xF7, 0x09, 0x8E, 0xBC, 0x82, 0x8C, 0x36, 0x81, 0x91, 0xA9, 0x51, 0x02, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x01, 0xC9, 0x12, 0x86, 0x9D, 0x59, 0x8E, 0xBC, 0x8A, 0xD4, 0x81, 0x91, 0xB1, 0x52, 0xC9, 0x12, 0xC1, 0x31, 0x05, 0xC9, 0x12, 0x80, 0xC9, 0x32, 0x03, 0xC9, 0x12, 0x82, 0xC9, 0x11, 0xC1, 0x12, 0xC9, 0x32, 0x01, 0xC9, 0x12, 0x81, 0xC9, 0x32, 0xC9, 0x11, 0x01, 0xC9, 0x12, 0x93, 0xC9, 0x32, 0xC1, 0x31, 0x9D, 0xBA, 0x8E, 0xBC, 0x96, 0xBC, 0x8E, 0xBC, 0x8E, 0xDC, 0x96, 0xBB, 0x8E, 0xBC, 0x8E, 0xDC, 0x82, 0xD4, 0x81, 0x91, 0xB9, 0x32, 0xC9, 0x12, 0xC1, 0x12, 0xC9, 0x12, 0xC1, 0x12, 0xC9, 0x12, 0xC1, 0x12, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x85, 0xC9, 0x32, 0xC9, 0x11, 0xC1, 0x31, 0xC9, 0x12, 0xC1, 0x32, 0xC1, 0x31, 0x01, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x80, 0xC1, 0x31, 0x01, 0xC9, 0x12, 0x83, 0xB3, 0x56, 0x8C, 0x36, 0x81, 0x91, 0xA1, + 0x51, 0x05, 0xC9, 0x12, 0x83, 0xC1, 0x12, 0x9D, 0x59, 0x8E, 0xBC, 0x96, 0xBC, 0x01, 0x8E, 0xBC, 0x82, 0x8C, 0x37, 0x81, 0x91, 0xA9, 0x51, 0x02, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x01, 0xC9, 0x12, 0x80, 0x9D, 0x59, 0x02, 0x8E, 0xBC, 0x84, 0x96, 0xBC, 0x8E, 0xBC, 0x82, 0xF4, 0x89, 0x91, 0xB1, 0x51, 0x01, 0xC9, 0x12, 0x80, 0xC9, 0x32, 0x01, 0xC9, 0x12, 0x82, 0xC1, 0x31, 0xC9, 0x32, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x83, 0xC9, 0x32, 0xC9, 0x11, 0xC9, 0x12, 0xC9, 0x11, 0x01, 0xC9, 0x32, 0x82, 0xC1, 0x12, 0xC9, 0x11, 0xC1, 0x32, 0x01, 0xC9, 0x12, 0x84, 0xC9, 0x32, 0xB3, 0x36, 0x96, 0xBC, 0xA4, 0xF9, 0xC1, 0x92, 0x09, 0xC9, 0x32, 0x02, 0x00, 0x1F, 0x83, 0x00, 0x7F, 0x00, 0xBF, 0x00, 0x9F, 0x90, 0xB5, 0x03, 0xC0, 0xB1, 0x8A, 0x0B, 0x9E, 0x05, 0x3F, 0x05, 0x7F, 0x05, 0x3F, 0x05, 0xDA, 0x07, 0xEF, 0x07, 0xF5, 0x07, 0xFB, 0x07, 0xFF, 0x54, 0x78, 0xB0, 0xD1, 0x01, 0xB0, 0xF1, 0x88, 0x91, 0x11, 0x59, 0x12, 0xA8, 0xF1, 0xB0, 0xF1, 0x70, 0xF1, 0x30, 0xF0, 0x28, 0xEF, 0x20, 0xEF, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x1B, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x01, 0x17, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x01, 0x1A, 0x07, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x01, 0x1A, 0x01, 0x19, 0x10, 0xD3, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, + 0x18, 0xAE, 0x16, 0x18, 0xAD, 0x84, 0x10, 0xD0, 0x00, 0xF8, 0x01, 0x19, 0x08, 0xF7, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x81, 0x18, 0xD0, 0x01, 0x18, 0x1C, 0x01, 0x19, 0x83, 0x10, 0xD0, 0x20, 0xAE, 0x18, 0xAD, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x81, 0x18, 0xAD, 0x18, 0xAE, 0x23, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x02, 0xC9, 0x12, 0x02, 0x9E, 0xDB, 0x80, 0x9E, 0xDC, 0x02, 0x9E, 0xDB, 0x82, 0x95, 0x78, 0x81, 0x91, 0x99, 0x91, 0x06, 0xC9, 0x52, 0x80, 0xB4, 0x17, 0x09, 0x9E, 0xDB, 0x82, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x72, 0x06, 0xC9, 0x52, 0x82, 0xA5, 0x18, 0x9E, 0xDB, 0x96, 0xDB, 0x07, 0x9E, 0xDB, 0x82, 0x94, 0x36, 0x81, 0x91, 0xA1, 0x71, 0x06, 0xC9, 0x52, 0x83, 0xA5, 0x79, 0x94, 0xD8, 0x81, 0x91, 0x99, 0x91, 0x04, 0xC9, 0x52, 0x80, 0xC1, 0x52, 0x04, 0xC9, 0x52, 0x85, 0xC2, 0x53, 0xC2, 0xB4, 0xB9, 0x52, 0xC1, 0x52, 0xC9, 0x52, 0xC1, 0x52, 0x07, 0xC9, 0x52, 0x80, 0xBA, 0xB5, 0x05, 0x9E, 0xDB, 0x82, 0x95, 0x99, 0x81, 0x91, 0x91, 0xB1, 0x09, 0xC9, 0x52, 0x83, 0xC1, 0xF3, 0xC2, 0xB5, 0xB9, 0x52, 0xC1, 0x52, 0x04, 0xC9, 0x52, 0x80, 0xC9, 0x72, 0x01, 0xC9, 0x52, 0x84, 0xC9, 0x72, 0xC1, 0xB2, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x72, 0x06, 0xC9, 0x52, 0x80, 0xA5, 0x79, 0x03, 0x9E, 0xDB, 0x82, 0x8C, 0x36, 0x89, 0x91, 0xA1, 0x71, 0x06, 0xC9, 0x52, 0x82, 0xA5, 0x79, 0x9E, 0xDB, + 0x9E, 0xDC, 0x01, 0x9E, 0xDB, 0x82, 0x95, 0x98, 0x81, 0x91, 0x91, 0x91, 0x03, 0xC9, 0x52, 0x82, 0xC1, 0x52, 0xC9, 0x52, 0xC1, 0x72, 0x02, 0xC9, 0x52, 0x83, 0xC1, 0xF3, 0xC2, 0xB4, 0xB9, 0x52, 0xC1, 0x52, 0x09, 0xC9, 0x52, 0x84, 0xA6, 0x1A, 0x9E, 0xDC, 0xA5, 0xDA, 0xC1, 0x72, 0xC9, 0x12, 0x01, 0xC9, 0x11, 0x01, 0xC9, 0x12, 0x80, 0xC1, 0x11, 0x02, 0xC9, 0x12, 0x02, 0x00, 0x1F, 0x80, 0x00, 0x5F, 0x01, 0x00, 0x7F, 0x82, 0x60, 0x98, 0xC0, 0xB1, 0xB8, 0xB1, 0x01, 0xC0, 0xB1, 0x89, 0x2A, 0xFC, 0x04, 0xFF, 0x05, 0xBF, 0x05, 0x5F, 0x05, 0xFB, 0x07, 0xCF, 0x07, 0xF4, 0x07, 0xFC, 0x07, 0xFF, 0x5C, 0x79, 0x02, 0xB0, 0xF1, 0x81, 0x81, 0x12, 0x59, 0x12, 0x01, 0xB0, 0xF1, 0x85, 0x68, 0xF1, 0x30, 0xF0, 0x30, 0xEF, 0x30, 0xCF, 0x28, 0xCF, 0x20, 0xCF, 0x01, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x1A, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xD2, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x20, 0xAE, 0x18, 0xAD, 0x01, 0x19, 0x01, 0x1A, 0x06, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x00, 0xF6, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD2, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x80, 0x10, 0xD3, 0x01, 0x01, 0x19, 0x80, 0x08, 0xD6, 0x18, 0x18, 0xAD, 0x89, 0x20, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xD0, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x20, 0xAD, 0x13, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x10, 0xCF, + 0x00, 0xF8, 0x1D, 0x01, 0x19, 0x83, 0x08, 0xF3, 0x18, 0xAD, 0x18, 0xAE, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x83, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAE, 0x21, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x0F, 0x01, 0x19, 0x81, 0x00, 0xF9, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD0, 0x01, 0x01, 0x19, 0x0F, 0x18, 0xAD, 0x01, 0xC8, 0xF1, 0x81, 0xC8, 0xF2, 0xA6, 0xFB, 0x01, 0xA6, 0xFA, 0x87, 0xA6, 0xFB, 0xA6, 0xFA, 0xA6, 0xDA, 0xA6, 0xFA, 0x9D, 0x98, 0x81, 0x91, 0x91, 0x91, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x80, 0xC9, 0x72, 0x02, 0xC9, 0x92, 0x81, 0xB4, 0x36, 0xA6, 0xFB, 0x08, 0xA6, 0xFA, 0x82, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x92, 0x01, 0xC9, 0x92, 0x02, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x80, 0xAD, 0x98, 0x01, 0xA6, 0xDA, 0x07, 0xA6, 0xFA, 0x83, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x92, 0xC9, 0x93, 0x05, 0xC9, 0x92, 0x83, 0xAD, 0x99, 0x8A, 0x32, 0x89, 0x91, 0xC1, 0x92, 0x01, 0xC9, 0x92, 0x80, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x80, 0xC9, 0x73, 0x02, 0xC9, 0x92, 0x81, 0xBC, 0x36, 0xA6, 0x9A, 0x01, 0xA6, 0xFA, 0x84, 0xA6, 0x9A, 0x93, 0x95, 0x89, 0x91, 0xB9, 0x92, 0xC9, 0x93, 0x01, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x81, 0xC9, 0x72, 0xC9, 0x92, 0x01, 0xC9, 0x72, 0x88, 0xAD, 0x98, 0xA6, 0xDB, 0xA6, 0xDA, 0xA6, 0xFA, 0xA6, 0xFB, 0xA6, 0xFA, 0x93, 0x95, 0x81, 0x91, 0xB1, 0x92, 0x02, 0xC9, 0x92, 0x80, 0xC9, 0x93, 0x01, 0xC9, 0x72, 0x8A, 0xC9, 0x92, 0xC9, 0x72, 0xC2, 0x33, 0xAD, 0x98, 0xA6, 0xFA, 0xA6, 0xFB, 0xA6, 0x39, 0x8A, 0x93, 0x99, 0x92, + 0xC1, 0x92, 0xC9, 0x72, 0x02, 0xC9, 0x92, 0x81, 0xC9, 0x72, 0xC9, 0x92, 0x01, 0xC9, 0x72, 0x82, 0x9A, 0x93, 0x81, 0x91, 0xA9, 0x92, 0x06, 0xC9, 0x92, 0x82, 0xAD, 0x98, 0xA6, 0xFA, 0xA6, 0xFB, 0x01, 0xA6, 0xFA, 0x83, 0x94, 0x36, 0x81, 0x91, 0xA9, 0x92, 0xC9, 0x93, 0x05, 0xC9, 0x92, 0x80, 0xAD, 0x98, 0x01, 0xA6, 0xDA, 0x87, 0xA6, 0xFA, 0xA6, 0xDA, 0x8B, 0x95, 0x81, 0x91, 0xB1, 0x92, 0xC9, 0x72, 0xC9, 0x92, 0xC9, 0x72, 0x01, 0xC9, 0x92, 0x8C, 0xC9, 0x72, 0xC9, 0x92, 0xC9, 0x72, 0xC2, 0x94, 0xAD, 0xF9, 0xA6, 0xFA, 0xA6, 0xDA, 0xA6, 0x9A, 0x93, 0x34, 0x91, 0x91, 0xB9, 0x92, 0xC9, 0x92, 0xC9, 0x93, 0x05, 0xC9, 0x92, 0x80, 0xB4, 0x97, 0x01, 0xAE, 0xFB, 0x84, 0xB5, 0xD9, 0xC9, 0x52, 0xC8, 0xF1, 0xC8, 0xF2, 0xC0, 0xF1, 0x04, 0xC8, 0xF1, 0x02, 0x00, 0x1F, 0x91, 0x00, 0x3F, 0x00, 0x7F, 0x00, 0x5F, 0x78, 0x97, 0xC0, 0xB1, 0xC0, 0xD1, 0xC0, 0xB1, 0xB8, 0xD1, 0x62, 0x38, 0x04, 0xDF, 0x05, 0xBF, 0x05, 0x9F, 0x05, 0xFA, 0x07, 0xCE, 0x07, 0xF4, 0x07, 0xFC, 0x07, 0xFF, 0x5C, 0x78, 0x02, 0xB0, 0xF1, 0x86, 0x71, 0x12, 0x59, 0x12, 0xB0, 0xF1, 0xA8, 0xF1, 0x51, 0x10, 0x30, 0xF0, 0x30, 0xCF, 0x02, 0x28, 0xCF, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x1F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF6, 0x18, 0xD0, 0x01, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x10, 0xD0, 0x08, + 0xF6, 0x01, 0x01, 0x19, 0x84, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xD0, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x83, 0x10, 0xCF, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x19, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF5, 0x24, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x04, 0x01, 0x19, 0x80, 0x01, 0x1A, 0x0B, 0x01, 0x19, 0x80, 0x08, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x08, 0xF3, 0x01, 0x01, 0x19, 0x0D, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0xC0, 0xD1, 0x80, 0xC8, 0xD2, 0x02, 0xB7, 0x1A, 0x86, 0xAE, 0xFA, 0xB7, 0x1A, 0xAF, 0x1A, 0xAE, 0xFA, 0xA5, 0x98, 0x81, 0x91, 0x91, 0x91, 0x01, 0xC9, 0xB3, 0x01, 0xC9, 0xD3, 0x83, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0xD3, 0xBC, 0x76, 0x09, 0xB7, 0x1A, 0x82, 0x9C, 0x55, 0x81, 0x91, 0xA9, 0xB2, 0x01, 0xC9, 0xD3, 0x82, 0xC9, 0xB3, 0xC9, 0xB2, 0xC9, 0xB3, 0x01, 0xC9, 0xD3, 0x84, 0xB5, 0xB8, 0xB7, 0x1A, 0xAF, 0x1A, 0xB7, 0x1A, 0xB6, 0xFA, 0x03, 0xB7, 0x1A, 0x84, 0xB6, 0xFA, 0xAF, 0x1A, 0x9C, 0x56, 0x81, 0x91, 0xA9, 0x92, 0x06, 0xC9, 0xB3, 0x95, 0xA3, 0xB5, 0x81, 0x91, 0x99, 0x92, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0xD2, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0xD3, 0xCA, 0x13, 0xBD, 0xB8, 0xAE, 0xFA, 0xAF, 0x1A, 0xB7, 0x1A, 0xB6, 0xFA, 0xAE, + 0xFA, 0xAF, 0x19, 0xA4, 0xF7, 0x89, 0x91, 0xB1, 0xB2, 0x04, 0xC9, 0xB3, 0x80, 0xC9, 0xD2, 0x01, 0xC9, 0xB3, 0x80, 0xC3, 0x14, 0x01, 0xAF, 0x1A, 0x80, 0xAE, 0xF9, 0x01, 0xAF, 0x1A, 0x82, 0x89, 0xF1, 0x81, 0x91, 0xC1, 0xB2, 0x02, 0xC9, 0xB3, 0x01, 0xC9, 0xB2, 0x8B, 0xC9, 0xD3, 0xC9, 0xB3, 0xCA, 0xB4, 0xB6, 0xB9, 0xAF, 0x1A, 0xB7, 0x1A, 0xAE, 0xFA, 0xB7, 0x1A, 0xB6, 0xB9, 0x8A, 0x93, 0x89, 0x91, 0xC1, 0xD2, 0x03, 0xC9, 0xB3, 0x88, 0xC9, 0xB2, 0xC9, 0xD3, 0xC9, 0xB2, 0xA9, 0x92, 0x81, 0x91, 0xA9, 0xB2, 0xC9, 0xD3, 0xC9, 0xB3, 0xC9, 0xD3, 0x02, 0xC9, 0xB2, 0x88, 0xC9, 0xB3, 0xB5, 0xB8, 0xAF, 0x1A, 0xAE, 0xFA, 0xAF, 0x1A, 0xB7, 0x1A, 0x9C, 0x56, 0x81, 0x91, 0xA9, 0x92, 0x06, 0xC9, 0xB3, 0x81, 0xB5, 0xB8, 0xB6, 0xFA, 0x01, 0xAF, 0x1A, 0x86, 0xB6, 0xFA, 0x89, 0xF2, 0x81, 0x91, 0xC1, 0xB2, 0xC9, 0xB3, 0xC9, 0xB2, 0xC9, 0xD3, 0x01, 0xC9, 0xB3, 0x84, 0xC9, 0xB2, 0xC9, 0xD3, 0xCA, 0xB4, 0xB6, 0xB9, 0xAF, 0x1A, 0x01, 0xB7, 0x1A, 0x85, 0xB6, 0xFA, 0xB7, 0x1A, 0x92, 0xF3, 0x89, 0xB1, 0xC1, 0xB2, 0xC9, 0xD3, 0x01, 0xC9, 0xB3, 0x01, 0xC9, 0xD3, 0x82, 0xC9, 0xB3, 0xC9, 0xD3, 0xC3, 0x15, 0x02, 0xB7, 0x1A, 0x82, 0xBD, 0xD9, 0xC1, 0x32, 0xC0, 0xD1, 0x03, 0xC8, 0xD1, 0x01, 0xC0, 0xD1, 0x02, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x7F, 0x86, 0x68, 0x78, 0xB8, 0xB1, 0xC0, 0xB1, 0xC0, 0xD1, 0xB8, 0xD1, 0x99, 0x54, 0x04, 0x7F, 0x01, 0x05, 0xBF, 0x85, 0x06, 0x1A, 0x07, 0xCE, 0x07, 0xF2, 0x07, 0xFC, 0x07, 0xFF, 0x5C, 0x78, 0x02, 0xB0, 0xF1, + 0x81, 0x61, 0x12, 0x59, 0x12, 0x01, 0xA8, 0xF1, 0x82, 0x60, 0xF0, 0x30, 0xF0, 0x28, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x81, 0x20, 0xAE, 0x20, 0xAD, 0x1C, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x01, 0x19, 0x00, 0xF9, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x08, 0xF6, 0x02, 0x01, 0x19, 0x84, 0x01, 0x18, 0x00, 0xF6, 0x10, 0xD3, 0x08, 0xF6, 0x01, 0x18, 0x02, 0x01, 0x19, 0x81, 0x08, 0xF7, 0x18, 0xCE, 0x1A, 0x18, 0xAD, 0x85, 0x20, 0x8D, 0x18, 0xB0, 0x00, 0xF8, 0x01, 0x39, 0x00, 0xF7, 0x18, 0xCE, 0x19, 0x18, 0xAD, 0x84, 0x18, 0xAF, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x1A, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x24, 0x18, 0xAD, 0x83, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x0C, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x00, 0xF7, 0x01, 0x01, 0x19, 0x80, 0x08, 0xF4, 0x0E, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0xC0, 0xB1, 0xC8, 0xB1, 0xC0, 0xB1, 0x06, 0xBF, 0x19, 0x82, 0xA4, 0xB5, 0x81, 0x91, 0xA1, 0xB2, 0x05, 0xC9, 0xF3, 0x81, 0xD1, 0xF3, 0xC4, 0x96, 0x09, 0xBF, 0x19, 0x82, 0xA4, 0x55, 0x81, 0x91, 0xA9, 0xD2, 0x06, 0xC9, 0xF3, 0x80, 0xBD, 0xD8, 0x02, 0xBF, 0x19, 0x80, 0xBF, 0x39, 0x01, 0xBF, 0x19, 0x81, 0xBF, 0x39, 0xBF, 0x19, 0x01, 0xBF, 0x39, 0x82, 0xA4, 0x55, 0x81, 0x91, 0xA9, 0xD2, 0x06, 0xC9, 0xF3, 0x82, 0x99, 0xF2, 0x89, 0x91, 0xB1, 0xD2, 0x06, 0xC9, 0xF3, + 0x82, 0xC9, 0xF2, 0xC5, 0x77, 0xBF, 0x19, 0x01, 0xBF, 0x39, 0x04, 0xBF, 0x19, 0x82, 0x9B, 0xF5, 0x81, 0x91, 0xB1, 0xD2, 0x01, 0xC9, 0xF3, 0x80, 0xD1, 0xF3, 0x04, 0xC9, 0xF3, 0x80, 0xBE, 0x78, 0x02, 0xBF, 0x19, 0x82, 0xB6, 0xB9, 0x81, 0x91, 0x89, 0x91, 0x01, 0xC9, 0xF3, 0x80, 0xC9, 0xF2, 0x01, 0xC9, 0xF3, 0x80, 0xC9, 0xD3, 0x01, 0xC9, 0xF3, 0x80, 0xBE, 0xD8, 0x04, 0xBF, 0x19, 0x85, 0xBF, 0x39, 0xAD, 0x57, 0x81, 0x91, 0x99, 0xB2, 0xC9, 0xF3, 0xC9, 0xF2, 0x04, 0xC9, 0xF3, 0x82, 0xB9, 0xD3, 0x81, 0x91, 0xA9, 0xB2, 0x06, 0xC9, 0xF3, 0x80, 0xBD, 0xD8, 0x03, 0xBF, 0x19, 0x82, 0x9C, 0x75, 0x81, 0x91, 0xA9, 0xD2, 0x06, 0xC9, 0xF3, 0x80, 0xBD, 0xD8, 0x02, 0xBF, 0x19, 0x80, 0xB6, 0xB8, 0x01, 0x81, 0x91, 0x07, 0xC9, 0xF3, 0x84, 0xBE, 0x78, 0xBF, 0x19, 0xBF, 0x39, 0xBF, 0x19, 0xBF, 0x39, 0x01, 0xBF, 0x19, 0x82, 0xAD, 0xB7, 0x81, 0x91, 0x91, 0xB1, 0x02, 0xC9, 0xF3, 0x80, 0xC9, 0xF2, 0x03, 0xC9, 0xF3, 0x87, 0xC7, 0x1A, 0xBF, 0x1A, 0xC7, 0x3A, 0xBF, 0x3A, 0xC6, 0x59, 0xC9, 0xD3, 0xC0, 0xB1, 0xC8, 0xB1, 0x01, 0xC0, 0xB1, 0x81, 0xC8, 0xB1, 0xC0, 0xB1, 0x02, 0x00, 0x1F, 0x85, 0x00, 0x3F, 0x00, 0x5F, 0x00, 0x3F, 0x00, 0x1F, 0x70, 0x76, 0xC0, 0xD1, 0x02, 0xB8, 0xD1, 0x88, 0x0B, 0xFF, 0x05, 0xDF, 0x05, 0xBF, 0x06, 0x39, 0x07, 0xCD, 0x07, 0xF2, 0x07, 0xFC, 0x07, 0xFF, 0x63, 0xF7, 0x02, 0xB0, 0xF1, 0x88, 0x41, 0x32, 0x41, 0x11, 0xA0, 0xF1, 0xB0, 0xF1, 0x90, 0xF1, 0x30, 0xF0, 0x28, 0xEF, 0x28, 0xCE, 0x28, 0xCF, 0x03, 0x20, 0xCE, 0x81, 0x20, + 0xAE, 0x20, 0xAD, 0x1D, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x81, 0x01, 0x19, 0x00, 0xF9, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x81, 0x10, 0xD1, 0x01, 0x18, 0x06, 0x01, 0x19, 0x81, 0x00, 0xF8, 0x10, 0xD2, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x16, 0x18, 0xAD, 0x84, 0x10, 0xCF, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x01, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x84, 0x10, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x1B, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x10, 0xD1, 0x01, 0x08, 0xF3, 0x83, 0x10, 0xD2, 0x18, 0xCD, 0x20, 0xAD, 0x18, 0xAE, 0x21, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x81, 0x18, 0xCE, 0x00, 0xF7, 0x03, 0x01, 0x19, 0x83, 0x00, 0xF7, 0x18, 0xCE, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x18, 0xAE, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x02, 0xC0, 0xB1, 0x06, 0xC7, 0x38, 0x83, 0xA4, 0x75, 0x89, 0x91, 0xA9, 0xD2, 0xCA, 0x13, 0x01, 0xCA, 0x33, 0x81, 0xCA, 0x34, 0xCA, 0x13, 0x01, 0xCA, 0x33, 0x80, 0xCC, 0xB6, 0x09, 0xC7, 0x38, 0x82, 0xA4, 0x55, 0x81, 0x91, 0xA9, 0xD2, 0x01, 0xCA, 0x33, 0x80, 0xCA, 0x13, 0x02, 0xCA, 0x33, 0x81, 0xD2, 0x13, 0xC5, 0xF7, 0x03, 0xC7, 0x38, 0x80, 0xC7, 0x39, 0x04, + 0xC7, 0x38, 0x83, 0xA4, 0x75, 0x81, 0x91, 0xA9, 0xD2, 0xCA, 0x13, 0x03, 0xCA, 0x33, 0x84, 0xCA, 0x13, 0xCA, 0x33, 0x91, 0xB1, 0x81, 0x91, 0xCA, 0x13, 0x03, 0xCA, 0x33, 0x85, 0xCA, 0x13, 0xCA, 0x33, 0xCA, 0x13, 0xC4, 0x55, 0xC7, 0x38, 0xC7, 0x39, 0x03, 0xC7, 0x38, 0x80, 0xC7, 0x39, 0x02, 0xC7, 0x38, 0x82, 0x8A, 0x52, 0x89, 0x91, 0xC2, 0x13, 0x03, 0xCA, 0x13, 0x83, 0xCA, 0x33, 0xCA, 0x13, 0xCA, 0x33, 0xCD, 0x56, 0x01, 0xC7, 0x38, 0x83, 0xC7, 0x39, 0xB5, 0xD7, 0x81, 0x91, 0x91, 0xB1, 0x02, 0xCA, 0x13, 0x80, 0xD2, 0x33, 0x02, 0xCA, 0x33, 0x81, 0xCB, 0x55, 0xCF, 0x38, 0x04, 0xC7, 0x38, 0x81, 0xC7, 0x39, 0xC7, 0x38, 0x01, 0x81, 0x91, 0x02, 0xCA, 0x13, 0x86, 0xCA, 0x33, 0xCA, 0x13, 0xCA, 0x33, 0xD2, 0x33, 0xCA, 0x13, 0x81, 0x91, 0xA9, 0xD2, 0x01, 0xCA, 0x33, 0x01, 0xCA, 0x13, 0x83, 0xCA, 0x33, 0xCA, 0x13, 0xCA, 0x33, 0xCD, 0xF7, 0x02, 0xC7, 0x38, 0x84, 0xC7, 0x39, 0xA4, 0x75, 0x81, 0x91, 0xA9, 0xD2, 0xCA, 0x13, 0x03, 0xCA, 0x33, 0x82, 0xCA, 0x13, 0xCA, 0x33, 0xC5, 0xF7, 0x02, 0xC7, 0x38, 0x82, 0xB5, 0xD6, 0x81, 0x91, 0x99, 0xB2, 0x01, 0xCA, 0x33, 0x80, 0xD2, 0x13, 0x03, 0xCA, 0x33, 0x81, 0xCB, 0x74, 0xC7, 0x39, 0x03, 0xC7, 0x38, 0x80, 0xC7, 0x39, 0x01, 0xC7, 0x38, 0x82, 0x8A, 0xB2, 0x81, 0x91, 0xBA, 0x13, 0x01, 0xCA, 0x13, 0x81, 0xCA, 0x33, 0xCA, 0x13, 0x01, 0xCA, 0x33, 0x87, 0xCA, 0x13, 0xCF, 0x39, 0xC7, 0x39, 0xC7, 0x59, 0xCF, 0x3A, 0xCF, 0x39, 0xCE, 0xD9, 0xC9, 0xF3, 0x04, 0xC0, 0xB1, 0x03, 0x00, 0x1F, 0x01, 0x00, 0x3F, + 0x01, 0x00, 0x1F, 0x80, 0x98, 0x94, 0x02, 0xB8, 0xD1, 0x8E, 0x42, 0xDA, 0x05, 0x9F, 0x05, 0xFF, 0x06, 0x78, 0x07, 0xCC, 0x07, 0xF1, 0x07, 0xFC, 0x07, 0xFF, 0x82, 0xB5, 0xA8, 0xF1, 0xB0, 0xF1, 0x98, 0xF2, 0x41, 0x32, 0x39, 0x12, 0x70, 0xF1, 0x01, 0xA8, 0xF1, 0x80, 0x50, 0xF0, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x1F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0D, 0x18, 0xAD, 0x86, 0x18, 0xCF, 0x10, 0xD4, 0x08, 0xF5, 0x08, 0xF6, 0x08, 0xF4, 0x08, 0xD3, 0x10, 0xCF, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x14, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x84, 0x10, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAE, 0x0D, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x84, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x1C, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x1F, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xCF, 0x0E, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x83, 0x10, 0xD2, 0x10, 0xD3, 0x08, 0xF3, 0x10, 0xD2, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0A, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x02, 0xC0, 0xB1, 0x80, 0xCF, 0x57, 0x01, 0xD7, 0x58, 0x89, 0xCF, 0x58, 0xD7, 0x58, 0xCF, 0x58, 0xD7, 0x58, 0xAC, 0x74, 0x81, 0x91, 0xA9, 0xF2, 0xCA, 0x53, 0xD2, 0x53, 0xCA, 0x54, + 0x02, 0xCA, 0x53, 0x82, 0xCA, 0x54, 0xCC, 0xD6, 0xCF, 0x58, 0x07, 0xD7, 0x58, 0x83, 0xCF, 0x58, 0xAC, 0x75, 0x81, 0x91, 0xA9, 0xF2, 0x01, 0xCA, 0x53, 0x80, 0xD2, 0x53, 0x02, 0xCA, 0x53, 0x86, 0xD2, 0x54, 0xCE, 0x17, 0xCF, 0x57, 0xD7, 0x58, 0xCF, 0x58, 0xD7, 0x58, 0xCF, 0x58, 0x01, 0xD7, 0x58, 0x88, 0xCF, 0x58, 0xD7, 0x58, 0xCF, 0x58, 0xAC, 0x74, 0x81, 0x91, 0xA9, 0xF2, 0xCA, 0x53, 0xCA, 0x54, 0xD2, 0x53, 0x01, 0xCA, 0x53, 0x83, 0xCA, 0x54, 0xCA, 0x53, 0x99, 0xD2, 0x89, 0xB1, 0x03, 0xCA, 0x53, 0x80, 0xD2, 0x53, 0x01, 0xCA, 0x53, 0x8E, 0xCA, 0x54, 0xD6, 0xB7, 0xD7, 0x58, 0xCF, 0x58, 0xCF, 0x57, 0xCF, 0x58, 0xD7, 0x58, 0xD7, 0x57, 0xD7, 0x58, 0xD7, 0x57, 0xD7, 0x58, 0xCF, 0x58, 0xB5, 0x35, 0x81, 0x91, 0xA1, 0xD2, 0x02, 0xCA, 0x53, 0x81, 0xD2, 0x54, 0xCA, 0x73, 0x01, 0xCA, 0x53, 0x80, 0xCC, 0x95, 0x01, 0xD7, 0x58, 0x83, 0xCF, 0x58, 0xBD, 0xD6, 0x81, 0x91, 0x99, 0xD2, 0x01, 0xCA, 0x53, 0x80, 0xCA, 0x54, 0x01, 0xCA, 0x53, 0x82, 0xD2, 0x54, 0xCA, 0x54, 0xD4, 0x35, 0x01, 0xD7, 0x58, 0x80, 0xCF, 0x58, 0x01, 0xD7, 0x58, 0x86, 0xCF, 0x57, 0xD7, 0x38, 0xCF, 0x58, 0x9A, 0xF3, 0x89, 0x91, 0xC2, 0x13, 0xCA, 0x54, 0x01, 0xCA, 0x53, 0x86, 0xD2, 0x53, 0xCA, 0x53, 0xCA, 0x54, 0xCA, 0x73, 0x81, 0x91, 0xA9, 0xF2, 0xCA, 0x53, 0x01, 0xD2, 0x53, 0x85, 0xCA, 0x54, 0xD2, 0x53, 0xCA, 0x53, 0xCA, 0x54, 0xCE, 0x17, 0xCF, 0x58, 0x01, 0xD7, 0x58, 0x86, 0xCF, 0x58, 0xAC, 0x74, 0x81, 0x91, 0xA9, 0xF2, 0xCA, 0x53, 0xCA, 0x54, 0xD2, 0x53, 0x01, 0xCA, + 0x53, 0x83, 0xCA, 0x54, 0xCA, 0x53, 0xD6, 0x17, 0xD7, 0x58, 0x01, 0xCF, 0x58, 0x84, 0xBD, 0xD6, 0x81, 0x91, 0x91, 0xB2, 0xCA, 0x53, 0xD2, 0x54, 0x01, 0xCA, 0x53, 0x80, 0xCA, 0x54, 0x01, 0xD2, 0x53, 0x80, 0xCC, 0xD6, 0x03, 0xD7, 0x58, 0x8D, 0xCF, 0x57, 0xD7, 0x57, 0xCF, 0x58, 0xD7, 0x58, 0x9A, 0xF3, 0x81, 0x91, 0xBA, 0x33, 0xCA, 0x54, 0xCA, 0x53, 0xD2, 0x53, 0xCA, 0x54, 0xCA, 0x53, 0xD2, 0x53, 0xCA, 0x53, 0x01, 0xD7, 0x58, 0x81, 0xDF, 0x59, 0xD7, 0x79, 0x01, 0xD7, 0x59, 0x81, 0xD6, 0xF9, 0xC1, 0xF2, 0x03, 0xC0, 0xB1, 0x02, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x03, 0x00, 0x1F, 0x81, 0x18, 0x3E, 0xB0, 0xD2, 0x01, 0xB8, 0xD1, 0x88, 0x99, 0x74, 0x05, 0x9F, 0x06, 0x1F, 0x06, 0x98, 0x07, 0xCC, 0x07, 0xF0, 0x07, 0xFC, 0x07, 0xFF, 0x82, 0xB5, 0x01, 0xB0, 0xF1, 0x89, 0x88, 0xF1, 0x41, 0x32, 0x41, 0x11, 0x39, 0x10, 0x98, 0xF1, 0xA8, 0xF2, 0x88, 0xF1, 0x28, 0xEF, 0x28, 0xCF, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x01, 0x20, 0xAE, 0x1F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x16, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x10, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x84, 0x10, 0xD0, 0x01, 0x18, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x17, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x10, 0xCF, 0x01, 0x18, 0x00, 0xF9, 0x08, 0xF7, 0x18, 0xAE, 0x22, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x1F, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x01, 0x18, 0x10, + 0xD0, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x09, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x02, 0xC0, 0xB1, 0x06, 0xDF, 0x77, 0x84, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x12, 0xCA, 0x94, 0xCA, 0x74, 0x03, 0xCA, 0x94, 0x81, 0xD2, 0x94, 0xD4, 0xF5, 0x09, 0xDF, 0x77, 0x82, 0xB4, 0x74, 0x81, 0x91, 0xAA, 0x12, 0x01, 0xCA, 0x94, 0x85, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xDE, 0x36, 0x01, 0xDF, 0x77, 0x80, 0xDF, 0x57, 0x06, 0xDF, 0x77, 0x83, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x12, 0xCA, 0x94, 0x05, 0xD2, 0x94, 0x86, 0x99, 0xD2, 0x91, 0xD2, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x80, 0xD3, 0xD4, 0x02, 0xDF, 0x77, 0x80, 0xDF, 0x76, 0x04, 0xDF, 0x77, 0x80, 0xDF, 0x57, 0x01, 0xDF, 0x77, 0x81, 0x81, 0x91, 0x89, 0x92, 0x02, 0xCA, 0x94, 0x84, 0xD2, 0x94, 0xCA, 0x94, 0xCA, 0x93, 0xCA, 0x94, 0xD3, 0xD5, 0x02, 0xDF, 0x77, 0x82, 0xC5, 0xF5, 0x81, 0x91, 0x99, 0xD2, 0x01, 0xCA, 0x94, 0x85, 0xD2, 0x73, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xD5, 0x15, 0x07, 0xDF, 0x77, 0x82, 0x9B, 0x12, 0x81, 0x91, 0xBA, 0x53, 0x01, 0xCA, 0x94, 0x86, 0xD2, 0x94, 0xCA, 0x94, 0xCA, 0x93, 0xD2, 0x94, 0xCA, 0x94, 0x81, 0x91, 0xAA, 0x12, 0x02, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x01, 0xD2, 0x94, 0x80, 0xDE, 0x36, 0x01, 0xDF, 0x77, 0x85, 0xDF, 0x57, 0xDF, 0x77, 0xB4, 0x74, 0x81, 0x91, 0xAA, 0x12, 0xCA, 0x94, + 0x05, 0xD2, 0x94, 0x80, 0xDE, 0x36, 0x02, 0xDF, 0x77, 0x83, 0xC5, 0xF5, 0x81, 0x91, 0x99, 0xD2, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x80, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x81, 0xCA, 0x93, 0xD4, 0xF5, 0x07, 0xDF, 0x77, 0x83, 0x9B, 0x12, 0x81, 0x91, 0xBA, 0x53, 0xD2, 0x94, 0x01, 0xCA, 0x94, 0x83, 0xD2, 0x94, 0xCA, 0x94, 0xD2, 0x94, 0xCA, 0x94, 0x05, 0xDF, 0x78, 0x81, 0xE7, 0x79, 0xDF, 0x19, 0x03, 0xC0, 0xB1, 0x08, 0x00, 0x1F, 0x80, 0x38, 0x5B, 0x02, 0xB8, 0xD1, 0x86, 0x2C, 0x3C, 0x06, 0x1F, 0x06, 0xB7, 0x07, 0xCB, 0x07, 0xF0, 0x07, 0xFB, 0x07, 0xFF, 0x01, 0xB0, 0xF1, 0x88, 0xA8, 0xF1, 0x79, 0x12, 0x41, 0x32, 0x41, 0x11, 0x39, 0x11, 0x41, 0x10, 0xA0, 0xF1, 0xA8, 0xF1, 0x48, 0xEF, 0x01, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x81, 0x20, 0xAD, 0x20, 0xAE, 0x1F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x10, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x1A, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x84, 0x10, 0xCF, 0x01, 0x18, 0x00, 0xF9, 0x08, 0xF7, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x84, 0x10, 0xCF, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x18, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x08, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x1F, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x10, 0xCF, 0x12, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0x8E, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0E, 0x18, 0xAD, 0x01, 0xB8, 0xD1, 0x82, 0xC0, 0xD1, 0xE7, 0x76, 0xE7, + 0x96, 0x01, 0xE7, 0x97, 0x02, 0xE7, 0x96, 0x82, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x33, 0x02, 0xD2, 0xB4, 0x81, 0xCA, 0xB4, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x81, 0xDD, 0x35, 0xE7, 0x76, 0x08, 0xE7, 0x96, 0x82, 0xB4, 0x74, 0x81, 0x91, 0xAA, 0x33, 0x02, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x85, 0xCA, 0xD4, 0xD2, 0xD4, 0xE6, 0x56, 0xEF, 0x96, 0xE7, 0x76, 0xE7, 0x97, 0x01, 0xE7, 0x96, 0x81, 0xE7, 0x76, 0xE7, 0x77, 0x02, 0xE7, 0x96, 0x82, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x33, 0x06, 0xD2, 0xB4, 0x84, 0x99, 0xD2, 0x99, 0xF2, 0xCA, 0xB4, 0xD2, 0xB4, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x85, 0xCA, 0xD4, 0xD2, 0xB4, 0xD3, 0xF5, 0xE7, 0x77, 0xE7, 0x97, 0xEF, 0x97, 0x01, 0xE7, 0x96, 0x81, 0xE7, 0x76, 0xE7, 0x77, 0x02, 0xE7, 0x96, 0x81, 0xE7, 0x77, 0xEF, 0x97, 0x01, 0x81, 0x91, 0x01, 0xD2, 0xB4, 0x01, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x81, 0xCA, 0xD4, 0xD3, 0xD5, 0x02, 0xE7, 0x96, 0x85, 0xCE, 0x15, 0x81, 0x91, 0x99, 0xF2, 0xCA, 0xD4, 0xD2, 0xB4, 0xD2, 0xD4, 0x01, 0xD2, 0xB4, 0x85, 0xCA, 0xB4, 0xD2, 0xB4, 0xDD, 0x35, 0xE7, 0x77, 0xEF, 0x76, 0xE7, 0x96, 0x01, 0xE7, 0x97, 0x86, 0xE7, 0x76, 0xE7, 0x96, 0xE7, 0x76, 0xC5, 0x34, 0xB4, 0x94, 0xCC, 0x15, 0xD3, 0xF5, 0x01, 0xDB, 0xF4, 0x85, 0xDB, 0xF5, 0xD3, 0xF5, 0xD3, 0xF4, 0xCB, 0x34, 0x81, 0x91, 0xAA, 0x32, 0x03, 0xD2, 0xB4, 0x84, 0xD2, 0xD4, 0xD2, 0xB4, 0xCA, 0xB4, 0xE6, 0x56, 0xE7, 0x76, 0x01, 0xE7, 0x96, 0x83, 0xE7, 0x76, 0xB4, 0x94, 0x81, 0x91, 0xAA, 0x33, 0x06, 0xD2, 0xB4, 0x80, 0xDE, 0x56, 0x02, 0xE7, + 0x96, 0x82, 0xCE, 0x15, 0x81, 0x91, 0x99, 0xF2, 0x01, 0xD2, 0xB4, 0x82, 0xD2, 0xD4, 0xD2, 0xB4, 0xD2, 0xD4, 0x01, 0xCA, 0xD4, 0x80, 0xDD, 0x15, 0x01, 0xE7, 0x96, 0x82, 0xE7, 0x76, 0xE7, 0x96, 0xEF, 0x96, 0x02, 0xE7, 0x96, 0x82, 0x9B, 0x13, 0x81, 0x91, 0xBA, 0x73, 0x06, 0xD2, 0xB4, 0x84, 0xE7, 0x97, 0xEF, 0x97, 0xEF, 0x77, 0xEF, 0x97, 0xEF, 0x78, 0x02, 0xEF, 0x98, 0x83, 0xC9, 0x92, 0xB8, 0xD1, 0xC0, 0xD1, 0xC0, 0xB1, 0x09, 0x00, 0x1F, 0x80, 0x70, 0x96, 0x01, 0xB8, 0xD1, 0x86, 0x8A, 0x35, 0x06, 0x3F, 0x06, 0xD6, 0x07, 0xEA, 0x07, 0xF1, 0x07, 0xFC, 0x07, 0xFF, 0x02, 0xA8, 0xF1, 0x89, 0x61, 0x32, 0x41, 0x32, 0x41, 0x11, 0x38, 0xF1, 0x31, 0x10, 0x48, 0xF0, 0xA8, 0xF1, 0x98, 0xF1, 0x30, 0xCF, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x82, 0x20, 0xAE, 0x20, 0xAD, 0x20, 0xAE, 0x1F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0E, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x1F, 0x18, 0xAD, 0x84, 0x10, 0xD0, 0x00, 0xF9, 0x01, 0x19, 0x08, 0xF7, 0x18, 0xAE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x14, 0x18, 0xAD, 0x86, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xCF, 0x00, 0xF8, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x20, 0x18, 0xAD, 0x80, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x01, 0x18, 0xCD, 0x1F, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x18, 0xD0, 0x11, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x0D, 0x18, 0xAD, 0x02, + 0xB8, 0xD1, 0x82, 0xF7, 0x96, 0xF7, 0xB6, 0xF7, 0x96, 0x01, 0xF7, 0x95, 0x84, 0xF7, 0x96, 0xEF, 0xB6, 0xBC, 0x93, 0x81, 0x91, 0xAA, 0x52, 0x02, 0xD2, 0xF4, 0x02, 0xD2, 0xF5, 0x81, 0xD2, 0xF4, 0xDD, 0x55, 0x08, 0xF7, 0xB6, 0x84, 0xEF, 0xB6, 0xBC, 0x93, 0x81, 0x91, 0xAA, 0x53, 0xD2, 0xF5, 0x05, 0xD2, 0xF4, 0x82, 0xE6, 0x75, 0xF7, 0x96, 0xF7, 0x95, 0x02, 0xF7, 0x96, 0x80, 0xF7, 0xB6, 0x01, 0xF7, 0xB5, 0x84, 0xEF, 0x96, 0xF7, 0x96, 0xBC, 0x93, 0x81, 0x91, 0xAA, 0x33, 0x06, 0xD2, 0xF4, 0x01, 0x99, 0xF2, 0x80, 0xD2, 0xF5, 0x01, 0xD2, 0xF4, 0x81, 0xD2, 0xF5, 0xD2, 0xD4, 0x01, 0xD2, 0xF4, 0x80, 0xDC, 0x75, 0x02, 0xF7, 0x95, 0x81, 0xF7, 0x96, 0xF7, 0xB5, 0x03, 0xF7, 0x96, 0x84, 0xEF, 0xB6, 0xF7, 0xB5, 0xF7, 0x96, 0x81, 0x91, 0x89, 0x91, 0x06, 0xD2, 0xF4, 0x80, 0xDC, 0x15, 0x02, 0xF7, 0x96, 0x82, 0xD6, 0x15, 0x81, 0x91, 0x99, 0xF2, 0x03, 0xD2, 0xF4, 0x8D, 0xD2, 0xF5, 0xD2, 0xF4, 0xD2, 0xF5, 0xE5, 0x35, 0xF7, 0xB6, 0xF7, 0xB5, 0xF7, 0x96, 0xEF, 0xB6, 0xF7, 0x96, 0xF7, 0x95, 0xF7, 0xB6, 0xF7, 0x96, 0xF7, 0xB6, 0xF7, 0x95, 0x01, 0xF7, 0x96, 0x87, 0xF7, 0x95, 0xF7, 0xB6, 0xF7, 0x95, 0xF7, 0xB6, 0xF7, 0x96, 0xBC, 0x93, 0x81, 0x91, 0xAA, 0x53, 0x06, 0xD2, 0xF4, 0x80, 0xEE, 0x75, 0x01, 0xF7, 0x96, 0x84, 0xF7, 0xB5, 0xF7, 0x96, 0xBC, 0x93, 0x81, 0x91, 0xAA, 0x33, 0x06, 0xD2, 0xF4, 0x89, 0xEE, 0x75, 0xF7, 0x96, 0xF7, 0xB5, 0xF7, 0x95, 0xD6, 0x34, 0x81, 0x91, 0x99, 0xF2, 0xD2, 0xF4, 0xD2, 0xF5, 0xD2, 0xF4, 0x02, 0xD2, 0xF5, 0x83, 0xD2, + 0xD4, 0xE5, 0x55, 0xF7, 0x96, 0xF7, 0xB5, 0x01, 0xF7, 0xB6, 0x86, 0xF7, 0x95, 0xF7, 0xB6, 0xF7, 0x96, 0xF7, 0xB6, 0xA3, 0x11, 0x81, 0x91, 0xBA, 0x94, 0x06, 0xD2, 0xF4, 0x01, 0xF7, 0x96, 0x02, 0xF7, 0x97, 0x80, 0xF7, 0xB7, 0x01, 0xF7, 0x98, 0x80, 0xD2, 0x73, 0x02, 0xB8, 0xD1, 0x0A, 0x00, 0x1F, 0x80, 0x98, 0xB4, 0x01, 0xB8, 0xD1, 0x96, 0x3C, 0x9B, 0x06, 0xF5, 0x07, 0xE9, 0x07, 0xF1, 0x07, 0xFD, 0x26, 0xBD, 0xB0, 0xF1, 0xB0, 0xF2, 0xB0, 0xF1, 0x49, 0x32, 0x41, 0x32, 0x41, 0x11, 0x39, 0x11, 0x31, 0x10, 0x30, 0xF0, 0x60, 0xF0, 0xA9, 0x11, 0x70, 0xF0, 0x20, 0xCE, 0x20, 0xCF, 0x20, 0xAE, 0x20, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x1F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x2A, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x84, 0x18, 0xCF, 0x00, 0xF8, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x19, 0x18, 0xAD, 0x85, 0x10, 0xCF, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x1A, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x82, 0x18, 0xAE, 0x18, 0xAD, 0x18, 0xAE, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x1A, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x01, 0x18, 0x18, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x04, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x09, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x12, 0x18, 0xAD, 0x02, 0xB8, 0xD1, 0x80, 0xFF, 0x94, 0x03, 0xFF, 0xB5, 0x85, 0xFF, 0xB4, 0xFF, 0xB5, + 0xC4, 0x93, 0x81, 0x91, 0xAA, 0x53, 0xD3, 0x15, 0x02, 0xD3, 0x35, 0x83, 0xD3, 0x34, 0xD3, 0x15, 0xD3, 0x35, 0xE5, 0x75, 0x09, 0xFF, 0xB5, 0x82, 0xC4, 0x93, 0x81, 0x91, 0xAA, 0x53, 0x01, 0xD3, 0x35, 0x81, 0xD3, 0x14, 0xD3, 0x15, 0x02, 0xD3, 0x35, 0x82, 0xF6, 0x75, 0xFF, 0xB5, 0xFF, 0xB4, 0x01, 0xFF, 0xB5, 0x02, 0xFF, 0xB4, 0x01, 0xFF, 0xB5, 0x83, 0xFF, 0x95, 0xC4, 0x93, 0x81, 0x91, 0xAA, 0x53, 0x03, 0xD3, 0x35, 0x01, 0xD3, 0x15, 0x80, 0xD3, 0x35, 0x01, 0x99, 0xF2, 0x82, 0xD3, 0x35, 0xD3, 0x14, 0xD3, 0x15, 0x01, 0xD3, 0x35, 0x82, 0xD3, 0x15, 0xD3, 0x35, 0xDC, 0x54, 0x03, 0xFF, 0xB5, 0x80, 0xFF, 0xB4, 0x04, 0xFF, 0xB5, 0x81, 0xFF, 0xB4, 0xFF, 0xB5, 0x01, 0x81, 0x91, 0x81, 0xD3, 0x34, 0xD3, 0x15, 0x03, 0xD3, 0x35, 0x82, 0xD3, 0x15, 0xDC, 0x34, 0xFF, 0xB4, 0x01, 0xFF, 0xB5, 0x85, 0xDE, 0x34, 0x81, 0x91, 0x99, 0xF2, 0xD3, 0x14, 0xD3, 0x35, 0xD3, 0x15, 0x01, 0xD3, 0x34, 0x01, 0xD3, 0x35, 0x80, 0xE5, 0x74, 0x06, 0xFF, 0xB5, 0x01, 0xFF, 0xB4, 0x81, 0xFF, 0xB5, 0xFF, 0xB4, 0x02, 0xFF, 0xB5, 0x80, 0xFF, 0xB4, 0x01, 0xFF, 0xB5, 0x82, 0xC4, 0xB3, 0x81, 0x91, 0xAA, 0x53, 0x01, 0xD3, 0x35, 0x81, 0xD3, 0x14, 0xD3, 0x15, 0x02, 0xD3, 0x35, 0x80, 0xED, 0xF5, 0x03, 0xFF, 0xB5, 0x82, 0xC4, 0x93, 0x81, 0x91, 0xAA, 0x53, 0x03, 0xD3, 0x35, 0x01, 0xD3, 0x15, 0x81, 0xD3, 0x35, 0xF6, 0x94, 0x02, 0xFF, 0xB5, 0x82, 0xDE, 0x14, 0x81, 0x91, 0x99, 0xF2, 0x01, 0xD3, 0x35, 0x85, 0xD3, 0x14, 0xD3, 0x34, 0xD3, 0x14, 0xD3, 0x34, 0xD3, 0x15, 0xE5, 0x55, + 0x02, 0xFF, 0xB5, 0x80, 0xFF, 0xB4, 0x03, 0xFF, 0xB5, 0x82, 0xA3, 0x32, 0x81, 0x91, 0xBA, 0xB4, 0x02, 0xD3, 0x35, 0x81, 0xD3, 0x15, 0xD3, 0x34, 0x01, 0xD3, 0x35, 0x80, 0xFF, 0xB5, 0x04, 0xFF, 0xB6, 0x83, 0xFF, 0xB7, 0xFF, 0xB8, 0xDB, 0xD4, 0xB8, 0xD2, 0x01, 0xB8, 0xD1, 0x09, 0x00, 0x1F, 0x89, 0x00, 0x3F, 0x08, 0x3F, 0x70, 0xF7, 0xB8, 0xD1, 0xA9, 0x52, 0x0E, 0x94, 0x07, 0xC9, 0x07, 0xF2, 0x07, 0xFD, 0x2E, 0x3C, 0x01, 0xA8, 0xF1, 0x80, 0x99, 0x11, 0x01, 0x41, 0x32, 0x81, 0x39, 0x11, 0x39, 0x10, 0x01, 0x30, 0xF0, 0x84, 0x30, 0xEF, 0x58, 0xF0, 0xA8, 0xF1, 0x40, 0xCF, 0x20, 0xAE, 0x01, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x1F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x28, 0x18, 0xAD, 0x82, 0x18, 0xCD, 0x18, 0xAD, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xB0, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x11, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x84, 0x18, 0xCF, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x43, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x00, 0xF7, 0x00, 0xF9, 0x01, 0x18, 0x18, 0xCF, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x23, 0x18, 0xAD, 0x02, 0xB8, 0xD1, 0x04, 0xFE, 0x2E, 0x01, 0xFE, 0x4E, 0x82, 0xC3, 0xF0, 0x81, 0x91, 0xAA, 0x73, 0x06, 0xD3, 0x55, 0x80, 0xEC, 0xD1, 0x09, 0xFE, 0x2E, 0x82, 0xC3, 0xEF, 0x81, 0x91, 0xAA, 0x73, 0x05, 0xD3, 0x55, 0x81, 0xD3, 0x54, 0xF5, 0x90, + 0x01, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x80, 0xFE, 0x4E, 0x04, 0xFE, 0x2E, 0x82, 0xC3, 0xEF, 0x81, 0x91, 0xAA, 0x73, 0x06, 0xD3, 0x55, 0x83, 0x9A, 0x12, 0x91, 0xF2, 0xD3, 0x55, 0xD3, 0x54, 0x04, 0xD3, 0x55, 0x81, 0xDB, 0xD4, 0xFE, 0x4E, 0x03, 0xFE, 0x2E, 0x82, 0xFE, 0x4E, 0xFE, 0x2E, 0xFE, 0x4E, 0x02, 0xFE, 0x2E, 0x80, 0xFE, 0x4E, 0x01, 0x81, 0x91, 0x06, 0xD3, 0x55, 0x81, 0xDC, 0x13, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x82, 0xE5, 0x0F, 0x81, 0x91, 0x99, 0xF2, 0x05, 0xD3, 0x55, 0x81, 0xD3, 0x54, 0xEC, 0xD1, 0x07, 0xFE, 0x2E, 0x80, 0xFE, 0x4E, 0x03, 0xFE, 0x2E, 0x01, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x82, 0xC3, 0xCF, 0x81, 0x91, 0xAA, 0x73, 0x06, 0xD3, 0x55, 0x81, 0xE4, 0xD1, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x83, 0xFE, 0x4E, 0xC3, 0xD0, 0x81, 0x91, 0xAA, 0x73, 0x06, 0xD3, 0x55, 0x81, 0xF5, 0x90, 0xFE, 0x4E, 0x01, 0xFE, 0x2E, 0x82, 0xE5, 0x0F, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x55, 0x83, 0xEC, 0xD2, 0xFE, 0x2E, 0xFE, 0x4E, 0xFE, 0x2E, 0x02, 0xFE, 0x4E, 0x84, 0xFE, 0x4D, 0xFE, 0x2F, 0xA2, 0xB0, 0x81, 0x91, 0xC2, 0xF4, 0x06, 0xD3, 0x55, 0x80, 0xFE, 0x2F, 0x02, 0xFE, 0x50, 0x01, 0xFE, 0x51, 0x01, 0xFE, 0x52, 0x81, 0xE3, 0xD2, 0xB8, 0xD2, 0x01, 0xB8, 0xD1, 0x08, 0x00, 0x1F, 0x8D, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x3F, 0x00, 0xDF, 0x59, 0xF8, 0xB8, 0xD1, 0x82, 0x91, 0x07, 0xC9, 0x07, 0xF2, 0x07, 0xFE, 0x45, 0x5A, 0xB0, 0xF1, 0xA8, 0xF1, 0x81, 0x12, 0x01, 0x41, 0x32, 0x87, 0x39, 0x11, 0x38, 0xF0, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xEF, 0x28, + 0xCF, 0x50, 0xCF, 0x48, 0xEF, 0x01, 0x20, 0xAE, 0x81, 0x20, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x1F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x2B, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAF, 0x00, 0xF8, 0x01, 0x39, 0x00, 0xF7, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x16, 0x18, 0xAD, 0x84, 0x18, 0xAF, 0x01, 0x18, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x3F, 0x18, 0xAD, 0x83, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x10, 0xCF, 0x0A, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x20, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0xB8, 0xD1, 0xB0, 0xD1, 0xB0, 0xD2, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x80, 0xFC, 0x8D, 0x02, 0xFC, 0x6D, 0x82, 0xC3, 0x0F, 0x81, 0xB1, 0xAA, 0x73, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xEC, 0x11, 0x08, 0xFC, 0x6D, 0x83, 0xFC, 0x8D, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x01, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x83, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x96, 0xF4, 0x2F, 0x01, 0xFC, 0x6D, 0x80, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x01, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x83, 0xFC, 0x8D, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x03, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x82, 0xD3, 0x95, 0x9A, 0x12, 0x81, 0x91, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x81, 0xF4, 0x4F, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x80, 0xFC, 0x8D, 0x03, 0xFC, 0x6D, 0x01, 0xFC, 0x8D, 0x80, 0xFC, 0x6D, 0x01, 0x81, 0x91, 0x02, 0xD3, + 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xDB, 0xD3, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x82, 0xE3, 0xCE, 0x81, 0x91, 0x9A, 0x12, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x02, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x03, 0xFC, 0x6D, 0x01, 0xFC, 0x8D, 0x07, 0xFC, 0x6D, 0x86, 0xFC, 0x8D, 0xFC, 0x6D, 0xFC, 0x8D, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x75, 0x05, 0xD3, 0x95, 0x87, 0xEB, 0xF1, 0xFC, 0x8D, 0xFC, 0x6D, 0xFC, 0x8D, 0xFC, 0x6D, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x03, 0xD3, 0x95, 0x01, 0xD3, 0x75, 0x81, 0xD3, 0x95, 0xF4, 0x2F, 0x01, 0xFC, 0x6D, 0x83, 0xFC, 0x8D, 0xE3, 0xCE, 0x81, 0x91, 0x9A, 0x12, 0x01, 0xD3, 0x95, 0x82, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x76, 0x01, 0xD3, 0x95, 0x81, 0xEB, 0xF1, 0xFC, 0x8D, 0x01, 0xFC, 0x6D, 0x80, 0xFC, 0x8D, 0x02, 0xFC, 0x6D, 0x84, 0xFC, 0x8D, 0xA2, 0x50, 0x81, 0x91, 0xC3, 0x14, 0xD3, 0x75, 0x04, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xFC, 0x8E, 0x02, 0xFC, 0x8F, 0x01, 0xFC, 0xB0, 0x01, 0xFC, 0xB1, 0x83, 0xF3, 0xB2, 0xB8, 0xD1, 0xB0, 0xF1, 0xB8, 0xD1, 0x09, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x92, 0x00, 0x5F, 0x03, 0x1F, 0x2D, 0x3B, 0x99, 0xB2, 0x45, 0x4B, 0x07, 0xF3, 0x07, 0xFE, 0x54, 0x98, 0xB0, 0xF1, 0xA8, 0xF1, 0x69, 0x12, 0x49, 0x12, 0x41, 0x12, 0x39, 0x11, 0x31, 0x10, 0x30, 0xF0, 0x30, 0xEF, 0x30, 0xCF, 0x28, 0xCF, 0x02, 0x20, 0xCE, 0x82, 0x20, 0xCD, 0x20, 0xCE, 0x20, 0xAE, 0x01, 0x20, 0xAD, 0x1F, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0C, 0x18, 0xAD, + 0x85, 0x18, 0xAC, 0x18, 0xCD, 0x10, 0xD1, 0x08, 0xF3, 0x08, 0xD3, 0x10, 0xD1, 0x03, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x20, 0xAD, 0x12, 0x18, 0xAD, 0x84, 0x10, 0xCF, 0x00, 0xF8, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x04, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x03, 0x18, 0xAD, 0x0B, 0x01, 0x19, 0x80, 0x00, 0xF9, 0x03, 0x01, 0x19, 0x81, 0x00, 0xF6, 0x18, 0xAE, 0x46, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x29, 0x18, 0xAD, 0x01, 0xB0, 0xF1, 0x80, 0xB0, 0xD1, 0x06, 0xFC, 0x8D, 0x82, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x09, 0xFC, 0x8D, 0x82, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x4F, 0x09, 0xFC, 0x8D, 0x82, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x82, 0x9A, 0x12, 0x81, 0x91, 0xC3, 0x34, 0x06, 0xD3, 0x95, 0x81, 0xDB, 0xB4, 0xFC, 0x8E, 0x09, 0xFC, 0x8D, 0x01, 0x81, 0x91, 0x05, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xDB, 0xD3, 0x02, 0xFC, 0x8D, 0x82, 0xE3, 0xCE, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x10, 0xFC, 0x8D, 0x82, 0xCB, 0x2F, 0x81, 0x91, 0xAA, 0x93, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x03, 0xFC, 0x8D, 0x82, 0xC3, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x4F, 0x02, 0xFC, 0x8D, 0x82, 0xCB, 0x6F, 0x81, 0x91, 0x9A, 0x32, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x11, 0x07, + 0xFC, 0x8D, 0x82, 0xA2, 0x50, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x81, 0xFC, 0x8E, 0xFC, 0x8F, 0x01, 0xFC, 0xAF, 0x02, 0xFC, 0xB0, 0x81, 0xFC, 0xB2, 0xF4, 0x51, 0x02, 0xB0, 0xD1, 0x08, 0x00, 0x1F, 0x02, 0x00, 0x3F, 0x87, 0x00, 0x5F, 0x02, 0x5F, 0x06, 0xFD, 0x07, 0x70, 0x0F, 0x88, 0x07, 0xF4, 0x07, 0xFF, 0x54, 0x78, 0x01, 0xA8, 0xF1, 0x82, 0x59, 0x32, 0x41, 0x32, 0x41, 0x11, 0x01, 0x39, 0x11, 0x01, 0x30, 0xF0, 0x82, 0x30, 0xEF, 0x28, 0xCF, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x03, 0x20, 0xAD, 0x1E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0C, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF9, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x18, 0xAE, 0x15, 0x18, 0xAD, 0x84, 0x18, 0xCF, 0x01, 0x18, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xCE, 0x0C, 0x18, 0xAD, 0x80, 0x00, 0xF9, 0x0C, 0x01, 0x19, 0x83, 0x01, 0x18, 0x01, 0x19, 0x00, 0xF6, 0x18, 0xCE, 0x41, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x00, 0xF7, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xCF, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x2C, 0x18, 0xAD, 0x01, 0xB0, 0xF1, 0x82, 0xB0, 0xD1, 0xFC, 0xAD, 0xFC, 0xCD, 0x01, 0xFC, 0xAD, 0x02, 0xFC, 0xCD, 0x82, 0xCB, 0x4E, 0x81, 0x91, 0xAA, 0x73, 0x06, 0xD3, 0x95, 0x81, 0xEC, 0x31, 0xFC, 0xAD, 0x08, 0xFC, 0xCD, 0x82, 0xC3, 0x2F, 0x89, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x6F, 0x02, 0xFC, 0xCD, 0x80, 0xFC, 0xAD, 0x02, 0xFC, 0xCD, 0x02, 0xFC, 0xAD, 0x82, 0xC3, 0x2F, 0x81, + 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x83, 0xBB, 0x11, 0x81, 0x91, 0xAA, 0x73, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x86, 0xDB, 0xB4, 0xFC, 0xAE, 0xFC, 0xAD, 0xFC, 0xCD, 0xFC, 0xAD, 0xFC, 0xCD, 0xFC, 0xAD, 0x01, 0xFC, 0xCD, 0x01, 0xFC, 0xAD, 0x01, 0x81, 0x91, 0x05, 0xD3, 0x95, 0x82, 0xD3, 0x75, 0xDB, 0xD3, 0xFC, 0xAD, 0x01, 0xFC, 0xCD, 0x82, 0xDB, 0xEE, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x82, 0xEC, 0x31, 0xFC, 0xCD, 0xFC, 0xAD, 0x0A, 0xFC, 0xCD, 0x86, 0xFC, 0xAD, 0xFC, 0xCD, 0xFC, 0xAD, 0xFC, 0xCD, 0xDB, 0xEE, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xDB, 0xD3, 0x03, 0xFC, 0xCD, 0x82, 0xC3, 0x2F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x81, 0xF4, 0x6F, 0xFC, 0xAD, 0x01, 0xFC, 0xCD, 0x82, 0xC3, 0x2F, 0x89, 0x91, 0xAA, 0x94, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x31, 0x01, 0xFC, 0xCD, 0x81, 0xFC, 0xAD, 0xFC, 0xCD, 0x03, 0xFC, 0xAD, 0x82, 0xA2, 0x70, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x80, 0xFC, 0xCE, 0x01, 0xFC, 0xCF, 0x82, 0xFC, 0xEF, 0xFC, 0xD0, 0xFC, 0xF0, 0x01, 0xFC, 0xF1, 0x80, 0xFC, 0xF2, 0x01, 0xB0, 0xF1, 0x80, 0xB0, 0xF2, 0x08, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x90, 0x00, 0x5F, 0x00, 0x7F, 0x02, 0x1F, 0x06, 0xFC, 0x07, 0x8D, 0x07, 0xE7, 0x07, 0xF6, 0x07, 0xFF, 0x82, 0xB5, 0xA8, 0xF1, 0xA1, 0x11, 0x49, 0x32, 0x41, 0x32, 0x41, 0x11, 0x38, 0xF1, 0x38, 0xF0, 0x30, 0xF0, 0x01, 0x30, 0xEF, 0x81, 0x28, 0xCF, 0x28, 0xCE, 0x03, 0x20, 0xCE, 0x03, 0x20, 0xAD, 0x1E, 0x18, 0xAD, + 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x02, 0x20, 0xAD, 0x80, 0x08, 0xF5, 0x01, 0x01, 0x19, 0x01, 0x01, 0x17, 0x01, 0x01, 0x19, 0x81, 0x08, 0xF4, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x11, 0x18, 0xAD, 0x86, 0x10, 0xCF, 0x01, 0x18, 0x01, 0x19, 0x01, 0x17, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x3F, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF6, 0x01, 0x19, 0x01, 0x18, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x2A, 0x18, 0xAD, 0x83, 0xB0, 0xF1, 0xA8, 0xF1, 0xB0, 0xF1, 0xFD, 0x0D, 0x02, 0xFC, 0xED, 0x85, 0xFD, 0x0D, 0xFC, 0xED, 0xFD, 0x0D, 0xE4, 0x2E, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x51, 0x09, 0xFC, 0xED, 0x82, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x8F, 0x09, 0xFC, 0xED, 0x82, 0xC3, 0x2F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x82, 0xEC, 0x6F, 0x91, 0xD1, 0x89, 0xD1, 0x05, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x81, 0xDB, 0xB4, 0xEC, 0x70, 0x04, 0xFC, 0xED, 0x80, 0xFD, 0x0D, 0x01, 0xFC, 0xED, 0x01, 0x81, 0x91, 0x06, 0xD3, 0x95, 0x80, 0xDB, 0xF3, 0x02, 0xFC, 0xED, 0x82, 0xE4, 0x2E, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x51, 0x0E, 0xFC, 0xED, 0x84, 0xFD, 0x0D, 0xFC, 0xED, 0xEC, 0x6E, 0x81, 0x91, 0x91, + 0xF2, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x01, 0xD3, 0x95, 0x86, 0xF4, 0xAF, 0xFD, 0x0D, 0xFC, 0xED, 0xFD, 0x0D, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0x8F, 0x02, 0xFC, 0xED, 0x83, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x75, 0x05, 0xD3, 0x95, 0x80, 0xEC, 0x51, 0x07, 0xFC, 0xED, 0x82, 0xA2, 0x70, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x80, 0xFD, 0x0E, 0x02, 0xFD, 0x0F, 0x01, 0xFD, 0x10, 0x01, 0xFD, 0x31, 0x80, 0xFD, 0x32, 0x02, 0xB0, 0xF1, 0x08, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x02, 0x00, 0x5F, 0x8A, 0x02, 0x1F, 0x07, 0x3B, 0x07, 0xAC, 0x07, 0xE7, 0x07, 0xF7, 0x07, 0xFF, 0x82, 0xB5, 0xA8, 0xF1, 0x89, 0x12, 0x49, 0x32, 0x41, 0x12, 0x01, 0x39, 0x11, 0x82, 0x31, 0x10, 0x30, 0xF0, 0x30, 0xEF, 0x01, 0x28, 0xCF, 0x80, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x80, 0x20, 0xAE, 0x03, 0x20, 0xAD, 0x1E, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x80, 0x10, 0xF3, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xF3, 0x01, 0x01, 0x19, 0x02, 0x20, 0xAD, 0x10, 0x18, 0xAD, 0x85, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x19, 0x00, 0xF7, 0x18, 0xAE, 0x20, 0xAD, 0x0D, 0x18, 0xAD, 0x83, 0x20, 0x8D, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xCD, 0x07, 0x18, 0xAD, 0x84, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCD, 0x18, 0xAD, 0x20, 0xAD, 0x45, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF6, 0x01, 0x19, 0x01, 0x18, 0x10, 0xCF, 0x01, 0x20, 0xAD, 0x2F, 0x18, 0xAD, 0x82, 0xB0, + 0xF1, 0xA8, 0xF1, 0xB0, 0xF1, 0x06, 0xFD, 0x2D, 0x82, 0xE4, 0x4E, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x09, 0xFD, 0x2D, 0x82, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0xCF, 0x09, 0xFD, 0x2D, 0x82, 0xC3, 0x4F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x83, 0xF4, 0xCF, 0xC3, 0x4F, 0x81, 0x91, 0xB2, 0xD4, 0x09, 0xD3, 0x95, 0x81, 0xDB, 0xD4, 0xE4, 0x31, 0x01, 0xEC, 0x71, 0x83, 0xDB, 0xF0, 0xE4, 0x50, 0xF4, 0xCF, 0xFD, 0x0E, 0x01, 0x81, 0x91, 0x06, 0xD3, 0x95, 0x88, 0xDB, 0xD4, 0xF4, 0xAF, 0xF4, 0xCF, 0xF4, 0xAF, 0xDC, 0x10, 0x9A, 0x12, 0xAA, 0x73, 0xD3, 0x95, 0xD3, 0x96, 0x04, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x0F, 0xFD, 0x2D, 0x01, 0xFD, 0x2C, 0x84, 0x92, 0x11, 0x81, 0x91, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x96, 0x05, 0xD3, 0x95, 0x85, 0xEC, 0x71, 0xFC, 0xEE, 0xFD, 0x2D, 0xC3, 0x6F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x86, 0xDC, 0x10, 0xE4, 0x4E, 0xDC, 0x2E, 0xE4, 0x4E, 0xB2, 0xF0, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x07, 0xFD, 0x2D, 0x82, 0xA2, 0x70, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x80, 0xFD, 0x2E, 0x01, 0xFD, 0x2F, 0x80, 0xFD, 0x4F, 0x01, 0xFD, 0x50, 0x01, 0xFD, 0x51, 0x83, 0xFD, 0x71, 0xA8, 0xF1, 0xB0, 0xF1, 0xB0, 0xF2, 0x07, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x5F, 0x01, 0x00, 0x7F, 0x90, 0x02, 0x3F, 0x07, 0x3B, 0x07, 0xAB, 0x07, 0xE8, 0x07, 0xF9, 0x07, 0xFF, 0xA1, 0x52, 0xA8, 0xF1, 0x71, 0x32, 0x41, 0x32, 0x41, 0x31, 0x39, + 0x11, 0x39, 0x10, 0x38, 0xF0, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xCF, 0x01, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x05, 0x20, 0xAD, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x09, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xCE, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD0, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xD0, 0x02, 0x01, 0x19, 0x80, 0x01, 0x18, 0x13, 0x01, 0x19, 0x85, 0x08, 0xF7, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xCD, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x82, 0x18, 0xAC, 0x18, 0xAD, 0x20, 0xAD, 0x07, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x41, 0x18, 0xAD, 0x84, 0x18, 0xAE, 0x00, 0xF6, 0x01, 0x19, 0x01, 0x18, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x29, 0x18, 0xAD, 0x01, 0xA8, 0xF1, 0x80, 0xA8, 0xF2, 0x03, 0xFD, 0x6D, 0x80, 0xFD, 0x4D, 0x01, 0xFD, 0x6D, 0x82, 0xE4, 0x6E, 0x81, 0x91, 0x92, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x09, 0xFD, 0x6D, 0x82, 0xC3, 0x6F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF4, 0xEF, 0x09, 0xFD, 0x6D, 0x82, 0xC3, 0x6F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x88, 0xF4, 0xEF, 0xFD, 0x2D, 0x92, 0x11, 0x89, 0xB2, 0xCB, 0x75, 0xD3, 0x96, 0xD3, 0x75, 0xD3, 0x95, 0xD3, 0x96, 0x0B, 0xD3, 0x95, 0x80, 0xEC, 0x91, 0x01, 0x81, 0x91, 0x0B, 0xD3, 0x95, 0x80, 0xCB, 0x95, 0x07, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x0C, 0xFD, 0x6D, 0x80, + 0xFD, 0x4D, 0x03, 0xFD, 0x6D, 0x82, 0xBB, 0x2F, 0x81, 0x91, 0xB2, 0xD4, 0x0A, 0xD3, 0x95, 0x82, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x09, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x09, 0xD3, 0x95, 0x80, 0xEC, 0x71, 0x07, 0xFD, 0x6D, 0x82, 0xA2, 0x90, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x80, 0xFD, 0x6E, 0x01, 0xFD, 0x6F, 0x80, 0xFD, 0x8F, 0x01, 0xFD, 0x90, 0x01, 0xFD, 0x91, 0x80, 0xFD, 0x92, 0x02, 0xA8, 0xF1, 0x06, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x01, 0x00, 0x5F, 0x87, 0x00, 0x7F, 0x00, 0x9F, 0x02, 0x3F, 0x07, 0x79, 0x07, 0xAA, 0x07, 0xE8, 0x07, 0xFB, 0x07, 0xFF, 0x01, 0xA8, 0xF1, 0x85, 0x59, 0x32, 0x49, 0x32, 0x41, 0x31, 0x39, 0x11, 0x39, 0x10, 0x38, 0xF0, 0x01, 0x30, 0xEF, 0x80, 0x28, 0xCF, 0x01, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x06, 0x20, 0xAD, 0x1D, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x83, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAC, 0x01, 0x01, 0x19, 0x80, 0x10, 0xD3, 0x01, 0x18, 0xAD, 0x80, 0x10, 0xD3, 0x16, 0x01, 0x19, 0x82, 0x00, 0xF6, 0x20, 0xAE, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x17, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x01, 0x18, 0xAD, 0x03, 0x20, 0xAD, 0x40, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xCD, 0x01, 0x16, 0x01, 0x19, 0x01, 0x18, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x2A, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0xA8, 0xF1, 0x83, 0xEC, 0x6F, 0xFD, 0x8D, 0xFD, 0xAD, 0xFD, 0x8D, 0x02, 0xFD, 0xAD, 0x82, 0xE4, + 0x8E, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x81, 0xEC, 0x91, 0xFD, 0xAD, 0x08, 0xFD, 0x8D, 0x82, 0xC3, 0x8F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x83, 0xF5, 0x2F, 0xFD, 0xAD, 0xFD, 0x8D, 0xFD, 0xAD, 0x01, 0xFD, 0x8D, 0x80, 0xFD, 0xAD, 0x01, 0xFD, 0x8D, 0x01, 0xFD, 0xAD, 0x82, 0xC3, 0x8F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x84, 0xF5, 0x2F, 0xFD, 0x8D, 0xE4, 0xAE, 0x89, 0x91, 0x9A, 0x32, 0x0F, 0xD3, 0x95, 0x80, 0xE4, 0x91, 0x01, 0x81, 0x91, 0x06, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x0C, 0xD3, 0x95, 0x80, 0xEC, 0x91, 0x01, 0xFD, 0xAD, 0x07, 0xFD, 0x8D, 0x01, 0xFD, 0xAD, 0x01, 0xFD, 0x8D, 0x01, 0xFD, 0xAD, 0x84, 0xFD, 0x8D, 0xFD, 0xAD, 0xF5, 0x2D, 0x81, 0x91, 0x91, 0xF2, 0x03, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x02, 0xD3, 0x95, 0x82, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x14, 0xD3, 0x95, 0x80, 0xEC, 0x91, 0x01, 0xFD, 0x8D, 0x04, 0xFD, 0xAD, 0x83, 0xFD, 0x8D, 0xA2, 0x90, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x03, 0xFD, 0xAF, 0x01, 0xFD, 0xB0, 0x83, 0xFD, 0xB1, 0xFD, 0xD1, 0xE4, 0xB2, 0xA9, 0x11, 0x01, 0xA8, 0xF1, 0x06, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x5F, 0x01, 0x00, 0x7F, 0x88, 0x00, 0x9F, 0x02, 0xBF, 0x07, 0x78, 0x07, 0xC8, 0x07, 0xE9, 0x07, 0xFD, 0x17, 0x3E, 0xA8, 0xF1, 0x99, 0x12, 0x01, 0x49, 0x32, 0x83, 0x41, 0x31, 0x41, 0x11, 0x39, 0x11, 0x38, 0xF0, 0x01, 0x30, 0xEF, 0x80, 0x28, 0xCF, 0x01, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x80, 0x20, 0xCD, 0x04, 0x20, 0xAD, + 0x81, 0x18, 0xAD, 0x20, 0xAD, 0x1A, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0A, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x80, 0x08, 0xF4, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF7, 0x08, 0xF6, 0x01, 0x01, 0x19, 0x83, 0x08, 0xF4, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x11, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xCD, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0B, 0x18, 0xAD, 0x82, 0x18, 0xAC, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x3F, 0x18, 0xAD, 0x84, 0x18, 0xCD, 0x00, 0xF7, 0x01, 0x19, 0x01, 0x18, 0x18, 0xCF, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x04, 0x18, 0xAD, 0x80, 0x18, 0xCD, 0x2A, 0x18, 0xAD, 0x02, 0xA9, 0x11, 0x80, 0xEC, 0x8E, 0x01, 0xFD, 0xED, 0x02, 0xFD, 0xCD, 0x83, 0xFD, 0xED, 0xE4, 0xCE, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0xB1, 0x09, 0xFD, 0xCD, 0x82, 0xC3, 0xAF, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF5, 0x4F, 0x01, 0xFD, 0xCD, 0x80, 0xFD, 0xED, 0x04, 0xFD, 0xCD, 0x84, 0xFD, 0xED, 0xFD, 0xCD, 0xC3, 0xAF, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x85, 0xF5, 0x4F, 0xFD, 0xED, 0xFD, 0xCD, 0xD4, 0x4F, 0x81, 0x91, 0xB2, 0xB3, 0x09, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x03, 0xD3, 0x95, 0x82, 0xEC, 0xB1, 0x89, 0x91, 0x81, 0x91, 0x0B, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x07, 0xD3, 0x95, 0x80, 0xEC, 0xB1, 0x12, 0xFD, 0xCD, 0x82, 0xBB, 0x6F, 0x81, 0x91, 0xBA, 0xF4, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x03, + 0xD3, 0x95, 0x82, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x14, 0xD3, 0x95, 0x80, 0xEC, 0xB1, 0x01, 0xFD, 0xED, 0x01, 0xFD, 0xCD, 0x03, 0xFD, 0xED, 0x82, 0xA2, 0xB0, 0x81, 0x91, 0xC3, 0x14, 0x05, 0xD3, 0x95, 0x81, 0xD3, 0x75, 0xFD, 0xEE, 0x01, 0xFD, 0xEF, 0x02, 0xFD, 0xF0, 0x01, 0xFD, 0xF1, 0x81, 0xEC, 0xB1, 0xA0, 0xF1, 0x01, 0xA9, 0x11, 0x06, 0x00, 0x1F, 0x02, 0x00, 0x5F, 0x80, 0x00, 0x7F, 0x01, 0x00, 0x9F, 0x87, 0x04, 0x1F, 0x07, 0x97, 0x07, 0xC7, 0x07, 0xEB, 0x07, 0xFE, 0x2E, 0x5C, 0xA8, 0xF1, 0x79, 0x32, 0x01, 0x49, 0x32, 0x83, 0x41, 0x11, 0x39, 0x11, 0x39, 0x10, 0x38, 0xF0, 0x01, 0x30, 0xEF, 0x02, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x80, 0x20, 0xCD, 0x04, 0x20, 0xAD, 0x1C, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x08, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x81, 0x18, 0xAE, 0x00, 0xF6, 0x01, 0x01, 0x18, 0x01, 0x01, 0x19, 0x81, 0x00, 0xF6, 0x18, 0xCE, 0x01, 0x18, 0xAD, 0x11, 0x20, 0xAD, 0x84, 0x18, 0xAD, 0x18, 0xAC, 0x18, 0xAD, 0x18, 0xAC, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x0D, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x09, 0x18, 0xAD, 0x82, 0x18, 0xAC, 0x20, 0xAD, 0x18, 0xAD, 0x03, 0x20, 0xAD, 0x3F, 0x18, 0xAD, 0x83, 0x00, 0xF7, 0x01, 0x18, 0x01, 0x17, 0x18, 0xCF, 0x05, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x03, 0x18, 0xAD, 0x80, 0x20, 0xAC, 0x29, 0x18, 0xAD, 0x01, 0xA9, 0x11, 0x81, 0xA1, 0x11, 0xE4, 0x2E, 0x05, 0xFE, 0x0D, 0x82, 0xE4, 0xEE, 0x81, 0x91, 0x9A, 0x12, 0x06, + 0xD3, 0x95, 0x80, 0xEC, 0xD1, 0x09, 0xFE, 0x0D, 0x82, 0xC3, 0xCF, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF5, 0x6F, 0x09, 0xFE, 0x0D, 0x82, 0xC3, 0xCF, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF5, 0x6F, 0x02, 0xFE, 0x0D, 0x82, 0xD4, 0x4F, 0x81, 0x91, 0xBA, 0xD3, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x04, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xEC, 0xD1, 0x01, 0x81, 0x91, 0x0E, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x04, 0xD3, 0x95, 0x80, 0xEC, 0xD1, 0x12, 0xFE, 0x0D, 0x83, 0xF5, 0xAD, 0x9A, 0x70, 0x89, 0xB1, 0xD3, 0x75, 0x08, 0xD3, 0x95, 0x82, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x0C, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0xD1, 0x02, 0xFE, 0x0D, 0x81, 0xFE, 0x0E, 0xFE, 0x0D, 0x02, 0xFE, 0x0E, 0x82, 0xA2, 0xB0, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x02, 0xFE, 0x0F, 0x02, 0xFE, 0x30, 0x01, 0xFE, 0x31, 0x83, 0xDC, 0x32, 0xA1, 0x11, 0xA9, 0x11, 0xA1, 0x11, 0x06, 0x00, 0x1F, 0x01, 0x00, 0x5F, 0x01, 0x00, 0x7F, 0x8B, 0x00, 0x9F, 0x00, 0xBF, 0x04, 0x3F, 0x07, 0x94, 0x07, 0xE6, 0x07, 0xEC, 0x07, 0xFE, 0x35, 0xDB, 0xA9, 0x11, 0x51, 0x33, 0x49, 0x32, 0x41, 0x32, 0x01, 0x41, 0x11, 0x81, 0x39, 0x10, 0x30, 0xF0, 0x01, 0x30, 0xEF, 0x01, 0x28, 0xCE, 0x02, 0x20, 0xCE, 0x80, 0x20, 0xCD, 0x04, 0x20, 0xAD, 0x1C, 0x18, 0xAD, 0x01, 0x20, 0xAD, 0x01, 0x01, 0x19, 0x06, 0x18, 0xAD, 0x01, 0x01, 0x19, 0x0A, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x10, 0xD1, 0x10, + 0xD3, 0x10, 0xF2, 0x10, 0xD1, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x15, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x0C, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x05, 0x18, 0xAD, 0x83, 0x18, 0xAC, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAC, 0x41, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x8B, 0x18, 0xAC, 0x18, 0xAD, 0x18, 0xAE, 0x00, 0xF6, 0x01, 0x19, 0x00, 0xF8, 0x18, 0xCF, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAC, 0x20, 0xAD, 0x30, 0x18, 0xAD, 0x81, 0x18, 0xAC, 0x80, 0xF0, 0x01, 0xA1, 0x11, 0x80, 0xC2, 0xB0, 0x05, 0xFE, 0x4D, 0x82, 0xE5, 0x0E, 0x81, 0x91, 0x9A, 0x12, 0x06, 0xD3, 0x95, 0x80, 0xEC, 0xF1, 0x09, 0xFE, 0x4D, 0x82, 0xC3, 0xEF, 0x89, 0x91, 0xAA, 0x93, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x02, 0xD3, 0x95, 0x80, 0xF5, 0x8F, 0x09, 0xFE, 0x4D, 0x84, 0xC3, 0xEF, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x95, 0xD3, 0x96, 0x04, 0xD3, 0x95, 0x80, 0xF5, 0x8F, 0x03, 0xFE, 0x4D, 0x83, 0xE5, 0x0E, 0x89, 0xD1, 0xA2, 0x53, 0xCB, 0x75, 0x05, 0xD3, 0x95, 0x80, 0xD3, 0x76, 0x04, 0xD3, 0x95, 0x80, 0xEC, 0xF1, 0x01, 0x81, 0x91, 0x14, 0xD3, 0x95, 0x80, 0xEC, 0xF1, 0x13, 0xFE, 0x4D, 0x83, 0xF6, 0x0E, 0x9A, 0x70, 0x91, 0xF2, 0xCB, 0x75, 0x05, 0xD3, 0x95, 0x86, 0xD3, 0x96, 0xD3, 0x95, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x95, 0xD3, 0x96, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x0F, 0xD3, 0x95, 0x80, 0xEC, 0xF2, 0x02, 0xFE, 0x4D, 0x89, 0xFE, 0x4E, 0xFE, 0x4D, 0xFE, 0x4E, 0xFE, 0x4D, 0xFE, 0x4E, 0xA2, 0xD0, 0x81, 0x91, + 0xC3, 0x14, 0xD3, 0x95, 0xD3, 0x96, 0x04, 0xD3, 0x95, 0x83, 0xFE, 0x4E, 0xFE, 0x4F, 0xFE, 0x6F, 0xFE, 0x70, 0x01, 0xFE, 0x50, 0x82, 0xFE, 0x71, 0xFE, 0x51, 0xBA, 0x52, 0x01, 0xA1, 0x11, 0x80, 0x78, 0xD5, 0x06, 0x00, 0x1F, 0x80, 0x00, 0x5F, 0x01, 0x00, 0x7F, 0x80, 0x00, 0x9F, 0x01, 0x00, 0xBF, 0x8F, 0x04, 0x3F, 0x07, 0xB3, 0x07, 0xC5, 0x07, 0xEE, 0x07, 0xFF, 0x54, 0x78, 0x6A, 0xD6, 0x49, 0x53, 0x49, 0x32, 0x49, 0x12, 0x41, 0x11, 0x39, 0x11, 0x39, 0x10, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xCF, 0x02, 0x28, 0xCE, 0x80, 0x20, 0xCE, 0x01, 0x20, 0xCD, 0x04, 0x20, 0xAD, 0x1E, 0x18, 0xAD, 0x01, 0x01, 0x18, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x81, 0x01, 0x18, 0x01, 0x19, 0x02, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x35, 0x18, 0xAD, 0x85, 0x20, 0xAD, 0x18, 0xAD, 0x18, 0xAC, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAD, 0x03, 0x18, 0xAC, 0x3F, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x01, 0x18, 0xAD, 0x84, 0x00, 0xF6, 0x01, 0x18, 0x00, 0xF8, 0x18, 0xCF, 0x18, 0xAC, 0x01, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x2F, 0x18, 0xAD, 0x82, 0x20, 0xAD, 0x18, 0xAC, 0x60, 0xEF, 0x01, 0xA1, 0x11, 0x81, 0xA1, 0x12, 0xFE, 0x2D, 0x04, 0xFE, 0x8D, 0x82, 0xE5, 0x4E, 0x81, 0x91, 0x9A, 0x12, 0x04, 0xD3, 0x95, 0x82, 0xD3, 0x75, 0xD3, 0x95, 0xED, 0x11, 0x08, 0xFE, 0x6D, 0x85, 0xFE, 0x8D, 0xC4, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0xD3, 0x95, 0xD3, 0x96, 0x03, 0xD3, 0x95, 0x82, 0xD3, 0x75, + 0xF5, 0xCF, 0xFE, 0x6D, 0x07, 0xFE, 0x8D, 0x83, 0xFE, 0x6D, 0xC4, 0x0F, 0x81, 0x91, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF5, 0xCE, 0x01, 0xFE, 0x6D, 0x86, 0xFE, 0x8D, 0xFE, 0x6C, 0xFE, 0x8D, 0xF6, 0x2D, 0xC4, 0x0F, 0x9A, 0x12, 0xB2, 0xD4, 0x0A, 0xD3, 0x95, 0x80, 0xEC, 0xF1, 0x01, 0x81, 0x91, 0x14, 0xD3, 0x95, 0x80, 0xED, 0x11, 0x09, 0xFE, 0x6D, 0x80, 0xFE, 0x8D, 0x06, 0xFE, 0x6D, 0x86, 0xFE, 0x6C, 0xFE, 0x8D, 0xFE, 0x6D, 0xFE, 0x2D, 0xBB, 0xCF, 0x89, 0xB1, 0xBA, 0xF4, 0x02, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x01, 0xD3, 0x95, 0x83, 0xD3, 0x96, 0xC3, 0x14, 0x81, 0x91, 0xAA, 0x93, 0x14, 0xD3, 0x95, 0x80, 0xED, 0x12, 0x07, 0xFE, 0x8E, 0x82, 0xA2, 0xD0, 0x81, 0x91, 0xC3, 0x14, 0x06, 0xD3, 0x95, 0x02, 0xFE, 0x8F, 0x02, 0xFE, 0x90, 0x89, 0xFE, 0x91, 0xE4, 0x71, 0xA1, 0x11, 0xA1, 0x12, 0xA1, 0x11, 0x60, 0xD5, 0x00, 0x1F, 0x28, 0x3C, 0x70, 0x97, 0x40, 0x5A, 0x02, 0x00, 0x1F, 0x82, 0x00, 0x3F, 0x00, 0x7F, 0x00, 0x9F, 0x01, 0x00, 0xBF, 0x8A, 0x00, 0xDF, 0x04, 0x5F, 0x07, 0xD2, 0x07, 0xE4, 0x07, 0xEF, 0x07, 0xFF, 0x2E, 0x3C, 0x2D, 0x1A, 0x51, 0x33, 0x49, 0x32, 0x41, 0x32, 0x01, 0x39, 0x11, 0x83, 0x38, 0xF0, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xCF, 0x01, 0x28, 0xCE, 0x01, 0x20, 0xCE, 0x01, 0x20, 0xCD, 0x04, 0x20, 0xAD, 0x1E, 0x18, 0xAD, 0x01, 0x01, 0x18, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x01, 0x18, 0xAD, 0x87, 0x20, 0xAD, 0x18, 0xAC, 0x01, 0x19, 0x01, 0x18, 0x18, 0xAD, 0x18, 0xAC, 0x18, 0xAD, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, + 0xCC, 0x34, 0x18, 0xAD, 0x83, 0x18, 0xAE, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xAC, 0x01, 0x18, 0xAD, 0x85, 0x18, 0xAC, 0x20, 0xAD, 0x18, 0xAD, 0x20, 0xAD, 0x18, 0xCD, 0x20, 0xAD, 0x44, 0x18, 0xAD, 0x83, 0x00, 0xF6, 0x01, 0x18, 0x00, 0xF7, 0x18, 0xCF, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xAC, 0x31, 0x18, 0xAD, 0x80, 0x28, 0xCD, 0x02, 0xA1, 0x11, 0x80, 0xCB, 0xCF, 0x04, 0xFE, 0xAD, 0x82, 0xF5, 0xED, 0x89, 0xD1, 0x91, 0xD2, 0x04, 0xD3, 0x95, 0x82, 0xD3, 0x96, 0xD3, 0x95, 0xED, 0x11, 0x09, 0xFE, 0xAD, 0x82, 0xC4, 0x2F, 0x81, 0xB1, 0xAA, 0x93, 0x06, 0xD3, 0x95, 0x80, 0xF5, 0xEF, 0x07, 0xFE, 0xAD, 0x84, 0xFE, 0xCC, 0xFE, 0xAD, 0xC4, 0x2F, 0x81, 0x91, 0xAA, 0x93, 0x01, 0xD3, 0x95, 0x80, 0xD3, 0x96, 0x03, 0xD3, 0x95, 0x82, 0xF5, 0xEF, 0xFE, 0xAD, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x80, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x86, 0xF6, 0x4D, 0xD4, 0xCE, 0xBB, 0xD0, 0xC3, 0xB2, 0xC3, 0x14, 0xD3, 0x95, 0xD3, 0x75, 0x05, 0xD3, 0x95, 0x80, 0xED, 0x12, 0x01, 0x81, 0x91, 0x10, 0xD3, 0x95, 0x80, 0xD3, 0x75, 0x02, 0xD3, 0x95, 0x80, 0xED, 0x31, 0x01, 0xFE, 0xAC, 0x14, 0xFE, 0xAD, 0x84, 0xEE, 0x0D, 0xCC, 0x6F, 0xBB, 0x51, 0xBA, 0xD4, 0xCB, 0x55, 0x03, 0xD3, 0x95, 0x82, 0xC3, 0x34, 0x81, 0x91, 0xB2, 0x94, 0x12, 0xD3, 0x95, 0x88, 0xD3, 0x75, 0xD3, 0x95, 0xED, 0x11, 0xFE, 0xAE, 0xFE, 0xCE, 0xFE, 0xAD, 0xFE, 0xAE, 0xFE, 0xAD, 0xFE, 0xCE, 0x01, 0xFE, 0xAE, 0x82, 0xA2, 0xF0, 0x81, 0x91, 0xC3, 0x14, 0x05, 0xD3, 0x95, + 0x8D, 0xDC, 0x34, 0xFE, 0xAF, 0xFE, 0xD0, 0xFE, 0xAF, 0xFE, 0xD0, 0xFE, 0xB0, 0xFE, 0xD1, 0xE4, 0x91, 0xA9, 0x11, 0xA1, 0x11, 0x99, 0x31, 0xA1, 0x11, 0x58, 0xD6, 0x88, 0xB5, 0x01, 0xB8, 0xD1, 0x80, 0x50, 0x59, 0x03, 0x00, 0x1F, 0x88, 0x00, 0x7F, 0x00, 0x9F, 0x00, 0xBF, 0x00, 0xFF, 0x00, 0xDF, 0x04, 0x7F, 0x07, 0xD2, 0x07, 0xE3, 0x07, 0xF1, 0x01, 0x07, 0xFF, 0x84, 0x2C, 0xBA, 0x49, 0x33, 0x41, 0x32, 0x41, 0x31, 0x41, 0x11, 0x01, 0x38, 0xF0, 0x82, 0x30, 0xF0, 0x30, 0xEF, 0x28, 0xEF, 0x01, 0x28, 0xCE, 0x80, 0x20, 0xCE, 0x01, 0x20, 0xCD, 0x05, 0x20, 0xAD, 0x1E, 0x18, 0xAD, 0x01, 0x01, 0x18, 0x01, 0x18, 0xAD, 0x80, 0x20, 0xAD, 0x02, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x01, 0x01, 0x18, 0x02, 0x18, 0xAD, 0x81, 0x20, 0xAD, 0x18, 0xCD, 0x01, 0x20, 0xAD, 0x81, 0x18, 0xAC, 0x20, 0xAD, 0x33, 0x18, 0xAD, 0x80, 0x00, 0xF6, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xAC, 0x20, 0xAC, 0x18, 0xAC, 0x18, 0xAD, 0x01, 0x18, 0xAC, 0x82, 0x18, 0xAD, 0x18, 0xAC, 0x20, 0xAC, 0x40, 0x18, 0xAD, 0x83, 0x20, 0xAC, 0x18, 0xAC, 0x18, 0xAD, 0x00, 0xF6, 0x01, 0x01, 0x18, 0x81, 0x18, 0xCF, 0x20, 0xAD, 0x01, 0x18, 0xAC, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x31, 0x18, 0xAD, 0x87, 0x20, 0xAC, 0x20, 0xAD, 0x18, 0xAD, 0x81, 0x10, 0x99, 0x11, 0xA1, 0x11, 0xA1, 0x71, 0xF5, 0xED, 0x05, 0xFE, 0xAD, 0x83, 0xFE, 0xAC, 0xFE, 0x6D, 0xF5, 0xCF, 0xF5, 0xEF, 0x01, 0xF5, 0xCF, 0x82, 0xF5, 0xEF, 0xF5, 0xCF, 0xFE, 0x4D, 0x0B, 0xFE, 0xAD, 0x80, 0xFE, 0x4E, 0x01, 0xF5, 0xEF, 0x81, 0xF5, + 0xCF, 0xF5, 0xEE, 0x02, 0xF5, 0xEF, 0x80, 0xFE, 0x8D, 0x03, 0xFE, 0xAC, 0x81, 0xFE, 0xAD, 0xFE, 0x8D, 0x02, 0xFE, 0xAD, 0x01, 0xFE, 0xAC, 0x85, 0xFE, 0xAD, 0xF6, 0x4D, 0xF5, 0xEF, 0xF5, 0xCF, 0xF5, 0xEF, 0xF5, 0xCF, 0x02, 0xF5, 0xEF, 0x80, 0xFE, 0x6E, 0x04, 0xFE, 0xAD, 0x01, 0xFE, 0xAC, 0x03, 0xFE, 0xAD, 0x80, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x82, 0xF6, 0x0E, 0xF5, 0xEF, 0xF5, 0xCF, 0x01, 0xF5, 0xEF, 0x83, 0xF5, 0xCF, 0xF6, 0x4E, 0xFE, 0xAC, 0xFE, 0xAD, 0x0F, 0xF5, 0xEF, 0x80, 0xF5, 0xCF, 0x02, 0xF5, 0xEF, 0x82, 0xF5, 0xCF, 0xFE, 0x4D, 0xFE, 0xAC, 0x08, 0xFE, 0xAD, 0x80, 0xFE, 0xAC, 0x08, 0xFE, 0xAD, 0x80, 0xFE, 0xAC, 0x06, 0xFE, 0xAD, 0x80, 0xFE, 0x6D, 0x01, 0xF5, 0xEF, 0x01, 0xF5, 0xCF, 0x85, 0xFE, 0xAD, 0xF6, 0x2E, 0xF5, 0xEF, 0xF5, 0xD0, 0xF5, 0xEF, 0xF5, 0xCF, 0x01, 0xF5, 0xF0, 0x80, 0xF5, 0xEF, 0x0B, 0xF5, 0xF0, 0x83, 0xF5, 0xEF, 0xF5, 0xF0, 0xFE, 0x4F, 0xFE, 0xCE, 0x07, 0xFE, 0xAE, 0x82, 0xFE, 0xAF, 0xF6, 0x10, 0xF5, 0xD0, 0x03, 0xF5, 0xF0, 0x80, 0xF6, 0x10, 0x02, 0xFE, 0xAF, 0x85, 0xFE, 0xD0, 0xFE, 0xB0, 0xFE, 0xB1, 0xE4, 0x71, 0xB8, 0xD1, 0xA1, 0x11, 0x01, 0x99, 0x31, 0x82, 0x99, 0x12, 0x69, 0x33, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x80, 0x28, 0x3C, 0x02, 0x00, 0x1F, 0x89, 0x00, 0x3F, 0x00, 0x7F, 0x00, 0xBF, 0x00, 0xDF, 0x00, 0xFF, 0x01, 0x1F, 0x04, 0x7F, 0x07, 0xD1, 0x07, 0xE3, 0x07, 0xF3, 0x01, 0x07, 0xFF, 0x80, 0x3B, 0x77, 0x01, 0x49, 0x32, 0x81, 0x41, 0x31, 0x41, 0x11, 0x01, 0x38, 0xF0, 0x01, 0x30, 0xEF, 0x80, + 0x28, 0xEF, 0x01, 0x28, 0xCE, 0x80, 0x20, 0xCE, 0x01, 0x20, 0xCD, 0x03, 0x20, 0xAD, 0x03, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x17, 0x18, 0xAD, 0x83, 0x18, 0xAC, 0x18, 0xAD, 0x18, 0xAC, 0x18, 0xAD, 0x01, 0x01, 0x18, 0x80, 0x18, 0xAD, 0x03, 0x18, 0xAC, 0x81, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x01, 0x18, 0x80, 0x20, 0xAD, 0x01, 0x20, 0xAC, 0x01, 0x18, 0xAD, 0x83, 0x18, 0xAC, 0x20, 0xAC, 0x18, 0xAD, 0x18, 0xAC, 0x33, 0x18, 0xAD, 0x86, 0x01, 0x18, 0x00, 0xF6, 0x18, 0xCD, 0x18, 0xAC, 0x18, 0xAD, 0x18, 0xAC, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x01, 0x18, 0xAD, 0x40, 0x18, 0xAC, 0x87, 0x18, 0xCC, 0x20, 0xAC, 0x18, 0xAD, 0x00, 0xF6, 0x01, 0x18, 0x01, 0x17, 0x18, 0xCF, 0x18, 0xAD, 0x01, 0x18, 0xAC, 0x84, 0x18, 0xAD, 0x18, 0xAC, 0x20, 0xAD, 0x18, 0xAC, 0x20, 0xAC, 0x30, 0x18, 0xAC, 0x83, 0x18, 0xCD, 0x18, 0xAC, 0x20, 0xAC, 0x38, 0xCE, 0x02, 0x99, 0x31, 0x83, 0xAA, 0x31, 0xFE, 0x2D, 0xFE, 0x8C, 0xFE, 0x8D, 0x02, 0xFE, 0x8C, 0x81, 0xFE, 0xAD, 0xFE, 0x8C, 0x01, 0xFE, 0xAC, 0x01, 0xFE, 0x8C, 0x83, 0xFE, 0xAC, 0xFE, 0xAD, 0xFE, 0x8D, 0xFE, 0x8C, 0x07, 0xFE, 0xAD, 0x01, 0xFE, 0x8C, 0x01, 0xFE, 0xAC, 0x83, 0xFE, 0xAD, 0xFE, 0x8C, 0xFE, 0xAD, 0xFE, 0x8C, 0x01, 0xFE, 0x8D, 0x81, 0xFE, 0x8C, 0xFE, 0xAD, 0x01, 0xFE, 0x8C, 0x01, 0xFE, 0xAD, 0x01, 0xFE, 0xAC, 0x01, 0xFE, 0x8C, 0x82, 0xFE, 0xAC, 0xFE, 0x8C, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x8B, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0xAD, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0x8D, 0xFE, 0xAC, 0xFE, + 0x8C, 0xFE, 0xAC, 0xFE, 0x8D, 0x01, 0xFE, 0xAD, 0x81, 0xFE, 0x8C, 0xFE, 0xAC, 0x01, 0xFE, 0x8C, 0x84, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0xAC, 0xFE, 0x8D, 0xFE, 0x8C, 0x01, 0xFE, 0xAD, 0x02, 0xFE, 0x8C, 0x82, 0xFE, 0xAD, 0xFE, 0x8C, 0xFE, 0xAC, 0x0F, 0xFE, 0xAD, 0x83, 0xFE, 0x8C, 0xFE, 0xAC, 0xFE, 0x8D, 0xFE, 0xAC, 0x01, 0xFE, 0xAD, 0x80, 0xFE, 0x8C, 0x10, 0xFE, 0xAD, 0x83, 0xFE, 0xAC, 0xFE, 0x8C, 0xFE, 0xAD, 0xFE, 0x8C, 0x03, 0xFE, 0x8D, 0x02, 0xFE, 0xAD, 0x80, 0xFE, 0x8D, 0x03, 0xFE, 0xAD, 0x82, 0xFE, 0x8D, 0xFE, 0x8E, 0xFE, 0xAD, 0x01, 0xFE, 0xAE, 0x80, 0xFE, 0xAD, 0x0B, 0xFE, 0xAE, 0x01, 0xFE, 0x8E, 0x02, 0xFE, 0xAE, 0x80, 0xFE, 0x8E, 0x02, 0xFE, 0xAE, 0x01, 0xFE, 0x8E, 0x81, 0xFE, 0xAE, 0xFE, 0xAF, 0x01, 0xFE, 0xAE, 0x81, 0xFE, 0xAF, 0xFE, 0x8E, 0x04, 0xFE, 0xAF, 0x88, 0xFE, 0x8F, 0xFE, 0xB0, 0xFE, 0xAF, 0xFE, 0xB0, 0xFE, 0x90, 0xE4, 0x71, 0xB8, 0xD2, 0xA1, 0x11, 0x99, 0x11, 0x01, 0x99, 0x31, 0x84, 0x71, 0x32, 0x71, 0x33, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xD2, 0x04, 0x00, 0x1F, 0x80, 0x00, 0x7F, 0x01, 0x00, 0xDF, 0x01, 0x01, 0x1F, 0x83, 0x04, 0x9F, 0x07, 0xF0, 0x07, 0xE2, 0x07, 0xF4, 0x01, 0x07, 0xFF, 0x80, 0x3A, 0xF6, 0x01, 0x49, 0x32, 0x83, 0x41, 0x11, 0x39, 0x11, 0x39, 0x10, 0x38, 0xF0, 0x01, 0x30, 0xEF, 0x80, 0x28, 0xEE, 0x01, 0x28, 0xCE, 0x80, 0x20, 0xCE, 0x01, 0x20, 0xCD, 0x02, 0x20, 0xAD, 0x81, 0x18, 0xAC, 0x20, 0xAC, 0x01, 0x18, 0xAD, 0x1D, 0x18, 0xAC, 0x01, 0x01, 0x18, 0x02, 0x18, 0xAC, 0x83, 0x20, 0xAC, 0x18, + 0xAC, 0x20, 0xAD, 0x18, 0xAD, 0x01, 0x01, 0x18, 0x80, 0x18, 0xAC, 0x01, 0x18, 0xAD, 0x80, 0x18, 0xAC, 0x01, 0x18, 0xAD, 0x36, 0x18, 0xAC, 0x86, 0x00, 0xF8, 0x01, 0x18, 0x00, 0xF5, 0x18, 0xAD, 0x20, 0xAC, 0x18, 0xAD, 0x20, 0xAD, 0x04, 0x20, 0xAC, 0x3F, 0x18, 0xAC, 0x85, 0x20, 0xAD, 0x18, 0xCD, 0x01, 0x16, 0x01, 0x18, 0x01, 0x17, 0x18, 0xCF, 0x01, 0x20, 0xAC, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x81, 0x18, 0xAC, 0x20, 0xAC, 0x32, 0x18, 0xAC, 0x83, 0x20, 0xAD, 0x20, 0xAC, 0x60, 0xEF, 0x99, 0x12, 0x01, 0x99, 0x31, 0x81, 0xB2, 0x70, 0xF6, 0x2D, 0x01, 0xFE, 0x8C, 0x02, 0xFE, 0x8D, 0x81, 0xFE, 0x8C, 0xFE, 0x8D, 0x03, 0xFE, 0x8C, 0x02, 0xFE, 0x8D, 0x08, 0xFE, 0x8C, 0x80, 0xFE, 0x8D, 0x01, 0xFE, 0x8C, 0x02, 0xFE, 0x8D, 0x82, 0xFE, 0x8C, 0xFE, 0x8D, 0xFE, 0x8C, 0x03, 0xFE, 0x8D, 0x80, 0xFE, 0x8C, 0x08, 0xFE, 0x8D, 0x81, 0xFE, 0x8C, 0xFE, 0x8D, 0x03, 0xFE, 0x8C, 0x80, 0xFE, 0x8D, 0x02, 0xFE, 0x8C, 0x01, 0xFE, 0x8D, 0x02, 0xFE, 0x8C, 0x01, 0xFE, 0x8D, 0x01, 0xFE, 0x8C, 0x80, 0xFE, 0x8D, 0x03, 0xFE, 0x8C, 0x01, 0xFE, 0x8D, 0x81, 0xFE, 0x8C, 0xFE, 0x8D, 0x02, 0xFE, 0x8C, 0x12, 0xFE, 0x8D, 0x01, 0xFE, 0x8C, 0x83, 0xFE, 0x6D, 0xFE, 0x8D, 0xFE, 0x8C, 0xFE, 0x8D, 0x0A, 0xFE, 0x8C, 0x04, 0xFE, 0x8D, 0x80, 0xFE, 0x8C, 0x09, 0xFE, 0x8D, 0x80, 0xFE, 0x8E, 0x04, 0xFE, 0x8D, 0x10, 0xFE, 0x8E, 0x80, 0xFE, 0x8F, 0x01, 0xFE, 0x8E, 0x01, 0xFE, 0x8F, 0x80, 0xFE, 0x8E, 0x01, 0xFE, 0x8F, 0x82, 0xFE, 0x8E, 0xFE, 0x8F, 0xFE, 0x8E, + 0x0A, 0xFE, 0x8F, 0x01, 0xFE, 0x90, 0x01, 0xFE, 0xB0, 0x82, 0xE4, 0x71, 0xB8, 0xD1, 0xA1, 0x11, 0x01, 0x99, 0x31, 0x86, 0x99, 0x12, 0x89, 0x11, 0x51, 0x74, 0x69, 0x53, 0xB0, 0xF1, 0xB0, 0xD1, 0x90, 0xB4, 0x03, 0x00, 0x1F, 0x8F, 0x00, 0x3F, 0x00, 0x9F, 0x00, 0xDF, 0x00, 0xFF, 0x01, 0x1F, 0x01, 0x5F, 0x04, 0x9F, 0x07, 0xF1, 0x07, 0xE2, 0x07, 0xF6, 0x07, 0xFF, 0x0F, 0x9F, 0x4A, 0x35, 0x49, 0x33, 0x49, 0x32, 0x41, 0x31, 0x01, 0x39, 0x10, 0x80, 0x38, 0xF0, 0x01, 0x30, 0xEF, 0x02, 0x28, 0xCE, 0x02, 0x20, 0xCD, 0x02, 0x20, 0xAD, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x1B, 0x18, 0xAC, 0x01, 0x01, 0x18, 0x02, 0x18, 0xAC, 0x83, 0x20, 0xAC, 0x18, 0xAC, 0x18, 0xAD, 0x20, 0xAD, 0x01, 0x01, 0x18, 0x81, 0x18, 0xCE, 0x20, 0xAC, 0x04, 0x18, 0xAC, 0x81, 0x20, 0xAD, 0x20, 0xAC, 0x33, 0x18, 0xAC, 0x86, 0x18, 0xCE, 0x01, 0x17, 0x01, 0x18, 0x01, 0x15, 0x18, 0xAD, 0x20, 0xAC, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x41, 0x20, 0xAC, 0x87, 0x18, 0xAD, 0x00, 0xF6, 0x01, 0x18, 0x01, 0x17, 0x18, 0xCE, 0x18, 0xAC, 0x20, 0xCC, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x02, 0x20, 0xAC, 0x82, 0x20, 0xAD, 0x18, 0xCC, 0x20, 0xAD, 0x31, 0x20, 0xAC, 0x83, 0x18, 0xAC, 0x20, 0xAC, 0x28, 0xAD, 0x81, 0x10, 0x01, 0x99, 0x31, 0x83, 0x99, 0x11, 0xAA, 0x31, 0xF5, 0xCD, 0xFE, 0x8C, 0x15, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x01, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x0E, 0xFE, 0x6C, 0x80, 0xFE, 0x8C, 0x04, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x01, + 0xFE, 0x6C, 0x82, 0xFE, 0x6D, 0xFE, 0x6C, 0xFE, 0x6D, 0x03, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x0A, 0xFE, 0x6C, 0x80, 0xFE, 0x6D, 0x19, 0xFE, 0x6C, 0x80, 0xFE, 0x8C, 0x01, 0xFE, 0x6D, 0x11, 0xFE, 0x6C, 0x83, 0xFE, 0x6D, 0xFE, 0x6C, 0xFE, 0x6D, 0xFE, 0x6C, 0x03, 0xFE, 0x6D, 0x80, 0xFE, 0x6C, 0x02, 0xFE, 0x6D, 0x80, 0xFE, 0x8E, 0x01, 0xFE, 0x8D, 0x81, 0xFE, 0x6E, 0xFE, 0x8D, 0x0A, 0xFE, 0x6E, 0x03, 0xFE, 0x6F, 0x01, 0xFE, 0x8F, 0x02, 0xFE, 0x6F, 0x80, 0xFE, 0x8F, 0x01, 0xFE, 0x6F, 0x01, 0xFE, 0x8F, 0x01, 0xFE, 0x6F, 0x80, 0xFE, 0x8F, 0x01, 0xFE, 0x6F, 0x01, 0xFE, 0x8F, 0x80, 0xFE, 0x6F, 0x01, 0xFE, 0x8F, 0x81, 0xFE, 0x6F, 0xFE, 0x90, 0x01, 0xFE, 0x8F, 0x01, 0xFE, 0x90, 0x82, 0xE4, 0x71, 0xB0, 0xD1, 0xA1, 0x11, 0x02, 0x99, 0x31, 0x83, 0x99, 0x12, 0x59, 0x53, 0x51, 0x53, 0x71, 0x33, 0x01, 0xB0, 0xD1, 0x80, 0x78, 0x96, 0x02, 0x00, 0x1F, 0x82, 0x00, 0x3F, 0x00, 0x5F, 0x00, 0xBF, 0x01, 0x01, 0x1F, 0x8D, 0x01, 0x3F, 0x01, 0x7F, 0x04, 0xBF, 0x07, 0xF2, 0x07, 0xE2, 0x07, 0xF5, 0x07, 0xFF, 0x73, 0x36, 0x51, 0x53, 0x49, 0x33, 0x49, 0x32, 0x41, 0x31, 0x41, 0x10, 0x39, 0x10, 0x02, 0x30, 0xEF, 0x01, 0x28, 0xCE, 0x80, 0x28, 0xCD, 0x02, 0x20, 0xCD, 0x02, 0x20, 0xAD, 0x01, 0x20, 0xAC, 0x80, 0x20, 0xAD, 0x01, 0x18, 0xAC, 0x18, 0x20, 0xAC, 0x81, 0x18, 0xAC, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x01, 0x01, 0x18, 0x83, 0x18, 0xAC, 0x20, 0xAC, 0x18, 0xAC, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x84, 0x20, 0xAC, 0x00, 0xF5, 0x01, 0x17, 0x00, 0xF7, 0x18, 0xCE, + 0x01, 0x20, 0xAC, 0x81, 0x18, 0xAC, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x80, 0x18, 0xAD, 0x34, 0x20, 0xAC, 0x87, 0x18, 0xAE, 0x01, 0x17, 0x01, 0x18, 0x08, 0xF5, 0x18, 0xAD, 0x18, 0xAC, 0x18, 0xCD, 0x20, 0xAC, 0x02, 0x18, 0xAC, 0x3F, 0x20, 0xAC, 0x83, 0x08, 0xF3, 0x01, 0x18, 0x01, 0x17, 0x18, 0xCE, 0x01, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x05, 0x18, 0xAC, 0x30, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x82, 0x18, 0xAC, 0x28, 0xAD, 0x91, 0x11, 0x02, 0x99, 0x31, 0x83, 0xA1, 0x71, 0xCB, 0xCF, 0xF6, 0x0D, 0xFE, 0x4D, 0x08, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x0C, 0xFE, 0x6D, 0x82, 0xFE, 0x6C, 0xFE, 0x6D, 0xFE, 0x4D, 0x04, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x04, 0xFE, 0x6D, 0x82, 0xFE, 0x4D, 0xFE, 0x6D, 0xFE, 0x6C, 0x07, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x02, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x05, 0xFE, 0x6D, 0x82, 0xFE, 0x6C, 0xFE, 0x6D, 0xFE, 0x4D, 0x08, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x2C, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x02, 0xFE, 0x6D, 0x80, 0xFE, 0x4D, 0x01, 0xFE, 0x6E, 0x81, 0xFE, 0x4E, 0xFE, 0x6D, 0x04, 0xFE, 0x6E, 0x80, 0xFE, 0x6F, 0x01, 0xFE, 0x6E, 0x11, 0xFE, 0x6F, 0x01, 0xFE, 0x70, 0x80, 0xFE, 0x6F, 0x08, 0xFE, 0x70, 0x80, 0xFE, 0x90, 0x03, 0xFE, 0x70, 0x02, 0xFE, 0x71, 0x84, 0xE4, 0x71, 0xA8, 0xF1, 0xA1, 0x11, 0x99, 0x31, 0x99, 0x32, 0x01, 0x99, 0x31, 0x83, 0x69, 0x33, 0x51, 0x53, 0x59, 0x53, 0x71, 0x53, 0x01, 0xB0, 0xD1, 0x80, 0x58, 0x78, 0x01, 0x00, 0x1F, 0x83, 0x00, 0x3F, 0x00, 0x7F, 0x00, 0x9F, 0x00, 0xFF, + 0x01, 0x01, 0x3F, 0x88, 0x01, 0x7F, 0x01, 0x9F, 0x03, 0x3F, 0x07, 0xF3, 0x07, 0xE2, 0x07, 0xF3, 0x07, 0xFF, 0xA8, 0xF1, 0x69, 0x32, 0x01, 0x49, 0x32, 0x83, 0x49, 0x31, 0x41, 0x11, 0x39, 0x10, 0x31, 0x10, 0x01, 0x30, 0xEF, 0x01, 0x28, 0xCE, 0x80, 0x28, 0xCD, 0x02, 0x20, 0xCD, 0x02, 0x20, 0xAD, 0x01, 0x20, 0xAC, 0x80, 0x20, 0xAD, 0x1A, 0x20, 0xAC, 0x81, 0x18, 0xAC, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x01, 0x01, 0x18, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x8B, 0x18, 0xAC, 0x20, 0xAD, 0x20, 0xAC, 0x18, 0xAC, 0x18, 0xAD, 0x00, 0xF5, 0x01, 0x18, 0x01, 0x17, 0x18, 0xCE, 0x20, 0xAC, 0x18, 0xAC, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x34, 0x20, 0xAC, 0x83, 0x18, 0xAC, 0x20, 0xAC, 0x18, 0xCE, 0x08, 0xF5, 0x47, 0x01, 0x18, 0x84, 0x01, 0x17, 0x00, 0xF7, 0x18, 0xCE, 0x20, 0xAC, 0x18, 0xCC, 0x01, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x38, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x02, 0x18, 0xAC, 0x84, 0x20, 0xAC, 0x28, 0xCD, 0x81, 0x11, 0x99, 0x31, 0x99, 0x12, 0x01, 0x99, 0x31, 0x88, 0x99, 0x11, 0xBA, 0xB0, 0xDC, 0x6F, 0xE5, 0x0F, 0xE5, 0x0E, 0xFE, 0x4E, 0xFE, 0x6E, 0xFE, 0x4E, 0xFE, 0x6D, 0x01, 0xFE, 0x4E, 0x60, 0xFE, 0x4D, 0x01, 0xFE, 0x4E, 0x05, 0xFE, 0x4D, 0x03, 0xFE, 0x4E, 0x01, 0xFE, 0x6E, 0x02, 0xFE, 0x4E, 0x01, 0xFE, 0x6E, 0x82, 0xFE, 0x4E, 0xFE, 0x6F, 0xFE, 0x6E, 0x05, 0xFE, 0x6F, 0x83, 0xFE, 0x4F, 0xFE, 0x6F, 0xFE, 0x70, 0xFE, 0x50, 0x0F, 0xFE, 0x70, 0x0C, 0xFE, 0x71, 0x84, 0xF6, 0x12, 0xE5, 0x31, 0xE5, 0x12, 0xD4, 0x72, 0xB2, 0x71, 0x02, 0x99, 0x31, + 0x84, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x61, 0x53, 0x51, 0x53, 0x01, 0x59, 0x54, 0x80, 0x71, 0x54, 0x01, 0xB0, 0xF1, 0x95, 0x28, 0x5C, 0x00, 0x3F, 0x00, 0x5F, 0x00, 0x7F, 0x00, 0xBF, 0x00, 0xFF, 0x01, 0x3F, 0x01, 0x5F, 0x01, 0x7F, 0x01, 0x9F, 0x01, 0xBF, 0x02, 0xFF, 0x07, 0xF4, 0x07, 0xE3, 0x07, 0xF1, 0x2E, 0x5C, 0xA9, 0x11, 0x69, 0x32, 0x51, 0x32, 0x49, 0x31, 0x41, 0x32, 0x41, 0x10, 0x01, 0x39, 0x10, 0x81, 0x30, 0xEF, 0x30, 0xEE, 0x01, 0x28, 0xCE, 0x80, 0x28, 0xCD, 0x02, 0x20, 0xCD, 0x80, 0x20, 0xAC, 0x01, 0x20, 0xAD, 0x02, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x17, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x02, 0x18, 0xAC, 0x01, 0x01, 0x18, 0x82, 0x18, 0xAC, 0x20, 0xAC, 0x18, 0xAC, 0x02, 0x20, 0xAC, 0x87, 0x18, 0xCC, 0x20, 0xAC, 0x18, 0xAD, 0x01, 0x15, 0x01, 0x18, 0x00, 0xF7, 0x18, 0xAE, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x18, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x84, 0x10, 0xD0, 0x10, 0xD2, 0x08, 0xD2, 0x18, 0xAE, 0x20, 0xAC, 0x02, 0x18, 0xAC, 0x02, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x04, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x82, 0x18, 0xCD, 0x01, 0x16, 0x01, 0x17, 0x01, 0x01, 0x18, 0x01, 0x01, 0x17, 0x01, 0x01, 0x18, 0x40, 0x01, 0x17, 0x81, 0x18, 0xCE, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x82, 0x18, 0xAC, 0x20, 0xAC, 0x18, 0xAC, 0x37, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x02, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x01, 0x20, + 0xAC, 0x82, 0x28, 0xCC, 0x61, 0x0F, 0x99, 0x11, 0x07, 0x99, 0x31, 0x80, 0x99, 0x32, 0x75, 0x99, 0x31, 0x80, 0x99, 0x12, 0x03, 0x99, 0x31, 0x82, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x01, 0x99, 0x31, 0x01, 0x99, 0x11, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x17, 0x99, 0x31, 0x01, 0x99, 0x11, 0x81, 0x99, 0x31, 0x99, 0x32, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x80, 0x99, 0x12, 0x03, 0x99, 0x31, 0x83, 0x89, 0x12, 0x51, 0x53, 0x59, 0x53, 0x51, 0x53, 0x01, 0x59, 0x74, 0x88, 0x79, 0x53, 0xB0, 0xF1, 0xB0, 0xD1, 0x08, 0x7F, 0x00, 0x9F, 0x00, 0xBF, 0x00, 0xDF, 0x01, 0x1F, 0x01, 0x5F, 0x02, 0x01, 0x9F, 0x01, 0x01, 0xDF, 0x8B, 0x01, 0xFF, 0x07, 0xF7, 0x07, 0xE3, 0x07, 0xEF, 0x54, 0x98, 0xA8, 0xF1, 0x71, 0x32, 0x49, 0x52, 0x49, 0x31, 0x41, 0x31, 0x41, 0x10, 0x39, 0x10, 0x01, 0x30, 0xEF, 0x80, 0x30, 0xEE, 0x01, 0x28, 0xCE, 0x80, 0x28, 0xCD, 0x02, 0x20, 0xCD, 0x05, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x18, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x01, 0x01, 0x17, 0x80, 0x20, 0xAC, 0x02, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x84, 0x18, 0xAD, 0x01, 0x15, 0x01, 0x17, 0x00, 0xF7, 0x18, 0xAE, 0x02, 0x18, 0xAC, 0x1C, 0x20, 0xAC, 0x83, 0x18, 0xAD, 0x00, 0xF5, 0x01, 0x17, 0x01, 0x18, 0x01, 0x01, 0x17, 0x80, 0x08, 0xF3, 0x01, 0x20, 0xAC, 0x81, 0x18, 0xAC, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x82, 0x20, 0xCC, 0x18, 0xAC, 0x20, 0xAC, 0x02, 0x18, 0xAC, + 0x80, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x03, 0x20, 0xAC, 0x02, 0x18, 0xAC, 0x43, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x82, 0x18, 0xAC, 0x20, 0xAC, 0x18, 0xAC, 0x39, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x03, 0x20, 0xAC, 0x82, 0x18, 0xAC, 0x40, 0xCE, 0x79, 0x10, 0x01, 0x99, 0x31, 0x80, 0x99, 0x32, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x78, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x81, 0xA1, 0x11, 0x99, 0x11, 0x2B, 0x99, 0x31, 0x81, 0x99, 0x12, 0x71, 0x32, 0x02, 0x51, 0x53, 0x01, 0x59, 0x74, 0x88, 0x61, 0x74, 0x91, 0x13, 0xB0, 0xF1, 0x98, 0xF3, 0x00, 0xDF, 0x00, 0xFF, 0x01, 0x1F, 0x01, 0x3F, 0x01, 0x7F, 0x01, 0x01, 0xBF, 0x01, 0x01, 0xDF, 0x01, 0x01, 0xFF, 0x8E, 0x02, 0x1F, 0x06, 0xD9, 0x07, 0xE5, 0x07, 0xEC, 0x73, 0x55, 0xA8, 0xF1, 0x79, 0x32, 0x49, 0x32, 0x49, 0x31, 0x41, 0x31, 0x41, 0x10, 0x39, 0x10, 0x39, 0x0F, 0x30, 0xEF, 0x30, 0xEE, 0x01, 0x28, 0xCE, 0x01, 0x28, 0xCD, 0x01, 0x20, 0xCD, 0x20, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x86, 0x18, 0xAC, 0x01, 0x17, 0x00, 0xF7, 0x20, 0xAC, 0x18, 0xAC, 0x20, 0xAC, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x02, 0x20, 0xAC, 0x84, 0x20, 0xAD, 0x00, 0xF5, 0x01, 0x17, 0x01, 0x16, 0x18, 0xCD, 0x1E, 0x20, 0xAC, 0x84, 0x00, 0xF5, 0x01, 0x17, 0x01, 0x18, 0x08, 0xF5, 0x01, 0x16, 0x01, 0x01, 0x17, 0x80, 0x10, 0xF2, 0x05, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x03, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x80, 0x20, 0xAB, 0x7F, 0x20, 0xAC, 0x0E, 0x20, 0xAC, 0x80, 0x18, 0xAC, + 0x07, 0x20, 0xAC, 0x83, 0x18, 0xAB, 0x30, 0xCC, 0x58, 0xCF, 0x79, 0x10, 0x01, 0x99, 0x31, 0x80, 0x99, 0x12, 0x01, 0x99, 0x31, 0x84, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x99, 0x32, 0x99, 0x31, 0x5F, 0x99, 0x11, 0x13, 0x99, 0x31, 0x01, 0x99, 0x11, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x05, 0x99, 0x31, 0x80, 0x99, 0x11, 0x1F, 0x99, 0x31, 0x85, 0xA1, 0x11, 0x99, 0x11, 0x89, 0x32, 0x69, 0x32, 0x51, 0x52, 0x51, 0x53, 0x01, 0x59, 0x53, 0x8F, 0x59, 0x74, 0x61, 0x74, 0x61, 0x75, 0x79, 0x54, 0xA8, 0xF1, 0xB0, 0xF1, 0x80, 0xF5, 0x01, 0x3F, 0x01, 0x7F, 0x01, 0x9F, 0x01, 0xBF, 0x01, 0xDF, 0x01, 0xFF, 0x01, 0xDF, 0x01, 0xFF, 0x02, 0x1F, 0x02, 0x02, 0x3F, 0x8E, 0x05, 0x7D, 0x07, 0xE8, 0x07, 0xE9, 0x82, 0xD5, 0xA0, 0xF1, 0x81, 0x32, 0x51, 0x32, 0x49, 0x31, 0x41, 0x31, 0x41, 0x10, 0x38, 0xF0, 0x38, 0xEF, 0x30, 0xEF, 0x30, 0xEE, 0x28, 0xCE, 0x02, 0x28, 0xCD, 0x01, 0x20, 0xCD, 0x21, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x82, 0x00, 0xF7, 0x01, 0x17, 0x10, 0xD0, 0x01, 0x18, 0xAC, 0x03, 0x20, 0xAC, 0x81, 0x18, 0xAC, 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x86, 0x18, 0xCD, 0x00, 0xF5, 0x01, 0x17, 0x08, 0xF5, 0x18, 0xAD, 0x20, 0xAC, 0x20, 0xCC, 0x17, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x80, 0x18, 0xAD, 0x01, 0x01, 0x17, 0x80, 0x10, 0xD0, 0x01, 0x20, 0xAC, 0x82, 0x08, 0xF3, 0x01, 0x17, 0x01, 0x15, 0x03, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x05, 0x20, 0xAC, 0x80, 0x20, 0xCC, 0x02, 0x20, 0xAC, 0x80, 0x20, 0xCC, 0x02, 0x20, 0xAC, 0x01, + 0x20, 0xAB, 0x4A, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x38, 0x20, 0xAC, 0x80, 0x18, 0xCC, 0x0D, 0x20, 0xAC, 0x80, 0x20, 0xAB, 0x70, 0x20, 0xAC, 0x81, 0x20, 0xCC, 0x20, 0xAD, 0x01, 0x20, 0xCD, 0x04, 0x28, 0xCD, 0x80, 0x28, 0xCE, 0x01, 0x28, 0xEE, 0x80, 0x30, 0xEE, 0x01, 0x30, 0xEF, 0x8E, 0x30, 0xEE, 0x38, 0xEF, 0x51, 0x10, 0x61, 0x10, 0x59, 0x10, 0x69, 0x30, 0x79, 0x31, 0x81, 0x31, 0x81, 0x30, 0x99, 0x31, 0xA9, 0x32, 0xA1, 0x31, 0xB1, 0x31, 0xC9, 0x12, 0xC9, 0x11, 0x02, 0xC8, 0xF2, 0x81, 0xC8, 0xD1, 0xC0, 0xD1, 0x0A, 0xC0, 0xB1, 0x82, 0xC0, 0xD1, 0xB8, 0xB1, 0xC0, 0xD1, 0x06, 0xB8, 0xD1, 0x80, 0xB0, 0xD1, 0x01, 0xB8, 0xD1, 0x01, 0xB0, 0xD1, 0x80, 0xB0, 0xF1, 0x02, 0xB0, 0xD1, 0x02, 0xB0, 0xF1, 0x84, 0x51, 0x58, 0x01, 0xBF, 0x01, 0xDF, 0x01, 0xFF, 0x02, 0x1F, 0x01, 0x02, 0x3F, 0x81, 0x02, 0x1F, 0x02, 0x3F, 0x03, 0x02, 0x5F, 0x8C, 0x04, 0x1F, 0x07, 0xED, 0x07, 0xE4, 0x7A, 0xB4, 0xA9, 0x11, 0x91, 0x12, 0x51, 0x32, 0x49, 0x31, 0x41, 0x11, 0x41, 0x10, 0x39, 0x10, 0x38, 0xEF, 0x30, 0xEF, 0x01, 0x30, 0xEE, 0x02, 0x28, 0xCD, 0x81, 0x20, 0xCD, 0x20, 0xCC, 0x23, 0x20, 0xAC, 0x86, 0x18, 0xAC, 0x10, 0xD0, 0x01, 0x17, 0x00, 0xF7, 0x10, 0xD0, 0x20, 0xAC, 0x20, 0xCC, 0x01, 0x18, 0xAC, 0x06, 0x20, 0xAC, 0x80, 0x00, 0xF5, 0x21, 0x01, 0x17, 0x02, 0x20, 0xAC, 0x80, 0x10, 0xEF, 0x01, 0x01, 0x17, 0x01, 0x20, 0xAC, 0x80, 0x20, 0xAB, 0x04, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAC, 0x80, 0x20, 0xAB, 0x04, + 0x20, 0xAC, 0x01, 0x18, 0xAC, 0x80, 0x18, 0xCC, 0x47, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x02, 0x20, 0xAC, 0x82, 0x20, 0xCC, 0x20, 0xAC, 0x20, 0xAB, 0x3D, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x02, 0x20, 0xAC, 0x83, 0x18, 0xAC, 0x20, 0xAC, 0x20, 0xAB, 0x18, 0xAC, 0x05, 0x20, 0xAC, 0x80, 0x20, 0xAB, 0x6D, 0x20, 0xAC, 0x80, 0x20, 0xCC, 0x01, 0x20, 0xCD, 0x03, 0x28, 0xCD, 0x81, 0x28, 0xAD, 0x28, 0xCE, 0x01, 0x30, 0xCE, 0x84, 0x30, 0xEE, 0x81, 0x51, 0xB1, 0x92, 0xC9, 0xB3, 0xC9, 0xB2, 0x02, 0xC9, 0x92, 0x02, 0xC9, 0x72, 0x01, 0xC9, 0x52, 0x02, 0xC9, 0x32, 0x01, 0xC9, 0x12, 0x80, 0xC1, 0x11, 0x01, 0xC8, 0xF1, 0x82, 0xC8, 0xD1, 0xC0, 0xD1, 0xC8, 0xB1, 0x0A, 0xC0, 0xB1, 0x81, 0xC0, 0xD1, 0xB8, 0xB1, 0x06, 0xB8, 0xD1, 0x80, 0xB0, 0xD2, 0x02, 0xB8, 0xD1, 0x80, 0xB0, 0xD1, 0x06, 0xB0, 0xF1, 0x84, 0xA8, 0xF1, 0x39, 0xBB, 0x02, 0x1F, 0x02, 0x3F, 0x02, 0x5F, 0x01, 0x02, 0x7F, 0x01, 0x02, 0x5F, 0x04, 0x02, 0x7F, 0x8C, 0x02, 0x9F, 0x07, 0xF3, 0x07, 0xE2, 0x99, 0x72, 0xA9, 0x11, 0xA1, 0x12, 0x49, 0x52, 0x49, 0x32, 0x41, 0x31, 0x41, 0x10, 0x39, 0x10, 0x38, 0xEF, 0x30, 0xEF, 0x01, 0x30, 0xEE, 0x02, 0x28, 0xCD, 0x81, 0x20, 0xCD, 0x20, 0xCC, 0x21, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x02, 0x20, 0xAC, 0x86, 0x08, 0xF2, 0x01, 0x17, 0x01, 0x16, 0x10, 0xD0, 0x20, 0xAC, 0x20, 0xAB, 0x18, 0xAC, 0x04, 0x20, 0xAC, 0x84, 0x18, 0xAC, 0x20, 0xAC, 0x20, 0xAD, 0x00, 0xF4, 0x00, 0xF7, 0x19, 0x01, 0x17, 0x86, 0x01, 0x16, 0x01, 0x17, 0x01, 0x16, 0x01, 0x17, 0x01, 0x16, + 0x01, 0x17, 0x18, 0xCF, 0x01, 0x20, 0xAC, 0x82, 0x10, 0xD1, 0x00, 0xF7, 0x01, 0x15, 0x03, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAC, 0x03, 0x03, 0xB7, 0x80, 0x03, 0xB8, 0x03, 0x03, 0xB7, 0x04, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x45, 0x20, 0xAC, 0x81, 0x20, 0xAB, 0x20, 0xAC, 0x02, 0x20, 0xAB, 0x3A, 0x20, 0xAC, 0x84, 0x18, 0xAC, 0x20, 0xAC, 0x18, 0xCC, 0x18, 0xAC, 0x20, 0xAB, 0x01, 0x20, 0xAC, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x01, 0x20, 0xAB, 0x01, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x01, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x81, 0x20, 0xAC, 0x20, 0xAB, 0x69, 0x20, 0xAC, 0x02, 0x20, 0xCC, 0x03, 0x28, 0xCD, 0x84, 0x30, 0xCD, 0x28, 0xEE, 0x30, 0xEE, 0x49, 0x0E, 0xA9, 0xB2, 0x01, 0xC9, 0xD3, 0x01, 0xC9, 0xB3, 0x01, 0xC9, 0x92, 0x02, 0xC9, 0x72, 0x02, 0xC9, 0x52, 0x01, 0xC9, 0x32, 0x02, 0xC9, 0x12, 0x81, 0xC0, 0xF2, 0xC8, 0xD1, 0x01, 0xC0, 0xD1, 0x80, 0xC8, 0xB1, 0x0A, 0xC0, 0xB1, 0x0A, 0xB8, 0xD1, 0x01, 0xB0, 0xD1, 0x84, 0xB8, 0xD2, 0xB8, 0xD1, 0xB0, 0xF1, 0xB0, 0xD1, 0xB0, 0xF2, 0x02, 0xB0, 0xF1, 0x01, 0xA8, 0xF1, 0x81, 0x12, 0x3E, 0x02, 0x9F, 0x02, 0x02, 0xBF, 0x02, 0x02, 0x9F, 0x02, 0x02, 0xBF, 0x01, 0x02, 0x9F, 0x88, 0x02, 0xDF, 0x06, 0xB9, 0x07, 0xE3, 0xA1, 0x11, 0xA9, 0x11, 0xA1, 0x11, 0x59, 0x32, 0x49, 0x31, 0x49, 0x11, 0x01, 0x41, 0x10, 0x81, 0x39, 0x0F, 0x38, 0xEF, 0x01, 0x30, 0xEE, 0x02, 0x28, 0xCD, 0x81, 0x20, 0xCD, 0x20, 0xCC, 0x06, 0x20, 0xAC, 0x80, 0x20, 0xAB, 0x19, 0x20, 0xAC, 0x81, 0x20, 0xAB, + 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x85, 0x20, 0xAC, 0x08, 0xD3, 0x01, 0x16, 0x01, 0x17, 0x10, 0xCF, 0x20, 0xAC, 0x02, 0x20, 0xAB, 0x01, 0x20, 0xAC, 0x82, 0x20, 0xAB, 0x20, 0xAC, 0x18, 0xAB, 0x03, 0x20, 0xAC, 0x80, 0x20, 0xAB, 0x17, 0x20, 0xAC, 0x86, 0x20, 0xAB, 0x20, 0xAC, 0x20, 0xAB, 0x20, 0xAC, 0x00, 0xF4, 0x01, 0x17, 0x01, 0x16, 0x01, 0x08, 0xF2, 0x84, 0x01, 0x17, 0x01, 0x16, 0x08, 0xF2, 0x20, 0xAC, 0x18, 0xAC, 0x04, 0x20, 0xAC, 0x01, 0x03, 0xB7, 0x80, 0x03, 0xB8, 0x05, 0x03, 0xB7, 0x80, 0x20, 0xAC, 0x02, 0x20, 0xAB, 0x03, 0x20, 0xAC, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAC, 0x41, 0x20, 0xAB, 0x80, 0x20, 0xAC, 0x02, 0x20, 0xAB, 0x81, 0x20, 0xAC, 0x20, 0xAB, 0x39, 0x20, 0xAC, 0x82, 0x20, 0xAB, 0x20, 0xAC, 0x20, 0xAB, 0x01, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x82, 0x18, 0xAC, 0x20, 0xAC, 0x20, 0xAB, 0x02, 0x20, 0xAC, 0x80, 0x18, 0xAB, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAC, 0x05, 0x20, 0xAB, 0x69, 0x20, 0xAC, 0x81, 0x20, 0xCC, 0x20, 0xCD, 0x05, 0x28, 0xCD, 0x81, 0x30, 0xED, 0x69, 0x2F, 0x01, 0xC9, 0xD3, 0x02, 0xC9, 0xB3, 0x01, 0xC9, 0x92, 0x02, 0xC9, 0x72, 0x01, 0xC9, 0x52, 0x01, 0xC9, 0x32, 0x80, 0xC1, 0x32, 0x01, 0xC9, 0x12, 0x82, 0xC8, 0xF2, 0xC8, 0xF1, 0xC8, 0xD1, 0x01, 0xC0, 0xD1, 0x0A, 0xC0, 0xB1, 0x09, 0xB8, 0xD1, 0x82, 0xB0, 0xD1, 0xB8, 0xD1, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x81, 0xB0, 0xF1, 0xB0, 0xD1, 0x05, 0xB0, 0xF1, 0x81, 0xA8, 0xF1, 0x99, 0x33, 0x01, 0x02, 0xDF, 0x01, 0x02, 0xFF, 0x81, 0x02, 0xDF, 0x02, 0xBF, 0x04, 0x02, + 0xDF, 0x01, 0x02, 0xBF, 0x83, 0x02, 0xFF, 0x05, 0x1E, 0x07, 0xE8, 0xA9, 0x12, 0x01, 0xA1, 0x11, 0x80, 0x69, 0x32, 0x01, 0x49, 0x31, 0x83, 0x41, 0x30, 0x41, 0x0F, 0x39, 0x0F, 0x38, 0xEE, 0x01, 0x30, 0xEE, 0x02, 0x28, 0xCD, 0x81, 0x20, 0xCD, 0x20, 0xCC, 0x06, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x17, 0x20, 0xAC, 0x81, 0x20, 0xAB, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x83, 0x08, 0xF2, 0x01, 0x16, 0x01, 0x17, 0x10, 0xD0, 0x01, 0x20, 0xAB, 0x82, 0x20, 0xAC, 0x20, 0xAB, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x01, 0x20, 0xAC, 0x80, 0x18, 0xCB, 0x19, 0x20, 0xAC, 0x84, 0x18, 0xAB, 0x20, 0xAB, 0x18, 0xAE, 0x01, 0x15, 0x01, 0x17, 0x02, 0x01, 0x16, 0x81, 0x00, 0xF4, 0x18, 0xCC, 0x06, 0x20, 0xAB, 0x01, 0x03, 0xB8, 0x02, 0x03, 0xB7, 0x80, 0x03, 0xB8, 0x02, 0x03, 0xB7, 0x7F, 0x20, 0xAB, 0x7F, 0x20, 0xAB, 0x08, 0x20, 0xAB, 0x02, 0x20, 0xAC, 0x81, 0x28, 0xAC, 0x20, 0xCC, 0x02, 0x28, 0xCC, 0x01, 0x28, 0xCD, 0x83, 0x28, 0xED, 0x28, 0xCD, 0x30, 0xCD, 0x91, 0x91, 0x01, 0xC9, 0xD3, 0x01, 0xC9, 0xB3, 0x81, 0xC9, 0x92, 0xC9, 0xB3, 0x01, 0xC9, 0x92, 0x01, 0xC9, 0x72, 0x01, 0xC9, 0x52, 0x01, 0xC9, 0x32, 0x83, 0xC9, 0x12, 0xC9, 0x32, 0xC9, 0x12, 0xC1, 0x12, 0x01, 0xC8, 0xF2, 0x01, 0xC8, 0xD1, 0x01, 0x90, 0x95, 0x82, 0x90, 0x75, 0x88, 0x75, 0x60, 0x78, 0x01, 0x60, 0x59, 0x01, 0x60, 0x58, 0x01, 0x60, 0x78, 0x80, 0x60, 0x59, 0x01, 0x60, 0x78, 0x82, 0x58, 0x78, 0x60, 0x78, 0x88, 0xB4, 0x01, 0x88, + 0xB5, 0x03, 0xB8, 0xD1, 0x01, 0xB0, 0xF1, 0x01, 0xB0, 0xD1, 0x05, 0xB0, 0xF1, 0x02, 0xA8, 0xF1, 0x80, 0x69, 0xD6, 0x02, 0x03, 0x3F, 0x80, 0x03, 0x1F, 0x06, 0x02, 0xFF, 0x85, 0x02, 0xDF, 0x02, 0xFF, 0x03, 0x5F, 0x03, 0xFF, 0x07, 0xF0, 0x8A, 0x4F, 0x01, 0xA1, 0x11, 0x80, 0x81, 0x32, 0x01, 0x49, 0x31, 0x82, 0x41, 0x10, 0x41, 0x0F, 0x39, 0x0F, 0x01, 0x30, 0xEE, 0x01, 0x30, 0xCD, 0x01, 0x28, 0xCD, 0x01, 0x28, 0xCC, 0x80, 0x20, 0xCC, 0x02, 0x20, 0xAC, 0x24, 0x20, 0xAB, 0x80, 0x08, 0xF2, 0x01, 0x01, 0x16, 0x80, 0x10, 0xCF, 0x02, 0x20, 0xAB, 0x80, 0x20, 0xAC, 0x21, 0x20, 0xAB, 0x80, 0x20, 0xAC, 0x01, 0x20, 0xAB, 0x81, 0x20, 0xCC, 0x08, 0xD1, 0x01, 0x08, 0xF3, 0x82, 0x10, 0xD0, 0x20, 0xAB, 0x20, 0xAC, 0x06, 0x20, 0xAB, 0x81, 0x03, 0xB7, 0x03, 0xB8, 0x06, 0x03, 0xB7, 0x7F, 0x20, 0xAB, 0x7F, 0x20, 0xAB, 0x0A, 0x20, 0xAB, 0x81, 0x20, 0xCC, 0x20, 0xAC, 0x02, 0x28, 0xCC, 0x80, 0x20, 0xCC, 0x01, 0x28, 0xCC, 0x82, 0x28, 0xCD, 0x40, 0xEE, 0xA9, 0xB2, 0x01, 0xC9, 0xD3, 0x82, 0xC9, 0xB3, 0xC9, 0xB2, 0xC9, 0xB3, 0x01, 0xC9, 0x92, 0x01, 0xC9, 0x72, 0x02, 0xC9, 0x52, 0x01, 0xC9, 0x32, 0x86, 0x90, 0xD5, 0x88, 0xD6, 0x60, 0x98, 0x58, 0x79, 0x30, 0x3C, 0x30, 0x5C, 0x08, 0x1E, 0x10, 0x00, 0x1F, 0x8A, 0x00, 0x3F, 0x00, 0x5F, 0x00, 0x7F, 0x00, 0x9F, 0x00, 0xBF, 0x00, 0xDF, 0x29, 0x1C, 0x41, 0x1A, 0x61, 0x18, 0x89, 0x15, 0xB0, 0xD1, 0x06, 0xB0, 0xF1, 0x83, 0xB0, 0xF2, 0xA8, 0xF1, 0xB0, 0xF1, 0x42, 0x9A, 0x01, 0x03, 0x9F, 0x01, 0x03, 0x5F, 0x05, + 0x03, 0x3F, 0x02, 0x03, 0x1F, 0x83, 0x03, 0x7F, 0x03, 0xFF, 0x06, 0xD7, 0x7A, 0xCF, 0x01, 0xA1, 0x11, 0x89, 0x99, 0x12, 0x51, 0x31, 0x49, 0x31, 0x41, 0x10, 0x41, 0x0F, 0x40, 0xEF, 0x38, 0xEE, 0x30, 0xEE, 0x30, 0xED, 0x30, 0xCD, 0x01, 0x28, 0xCD, 0x01, 0x28, 0xCC, 0x01, 0x20, 0xCC, 0x27, 0x20, 0xAB, 0x80, 0x08, 0xF2, 0x01, 0x01, 0x16, 0x80, 0x10, 0xCF, 0x06, 0x20, 0xAB, 0x80, 0x20, 0xCB, 0x2D, 0x20, 0xAB, 0x04, 0x03, 0xB7, 0x7F, 0x20, 0xAB, 0x7F, 0x20, 0xAB, 0x0E, 0x20, 0xAB, 0x02, 0x20, 0xCB, 0x02, 0x28, 0xCC, 0x83, 0x28, 0xCD, 0x28, 0xCC, 0x49, 0x0E, 0xC1, 0xD3, 0x01, 0xC9, 0xD3, 0x03, 0xC9, 0xB3, 0x01, 0xC9, 0x92, 0x85, 0xC9, 0x72, 0xC9, 0x52, 0x98, 0xF5, 0x60, 0xB8, 0x40, 0x7B, 0x18, 0x3E, 0x16, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x01, 0x00, 0x7F, 0x8E, 0x00, 0x9F, 0x00, 0xBF, 0x00, 0xFF, 0x01, 0x1F, 0x01, 0x3F, 0x01, 0x7F, 0x01, 0x9F, 0x01, 0xDF, 0x02, 0x1F, 0x21, 0xFD, 0x49, 0xD9, 0x79, 0x96, 0xA1, 0x12, 0xA8, 0xF1, 0xB0, 0xF1, 0x03, 0xA8, 0xF1, 0x82, 0x13, 0x9E, 0x03, 0xDF, 0x03, 0xBF, 0x01, 0x03, 0x9F, 0x03, 0x03, 0x7F, 0x01, 0x03, 0x5F, 0x01, 0x03, 0x3F, 0x84, 0x03, 0x5F, 0x03, 0xBF, 0x04, 0x1F, 0x05, 0xDE, 0x7A, 0xD1, 0x02, 0xA1, 0x11, 0x81, 0x59, 0x31, 0x49, 0x31, 0x01, 0x41, 0x30, 0x82, 0x40, 0xEF, 0x38, 0xEE, 0x30, 0xEE, 0x01, 0x30, 0xED, 0x03, 0x28, 0xCC, 0x80, 0x20, 0xCB, 0x29, 0x20, 0xAB, 0x80, 0x08, 0xF2, 0x01, 0x01, 0x15, 0x80, 0x10, 0xCF, 0x03, 0x20, 0xAB, 0x80, 0x18, 0xAB, 0x2F, 0x20, 0xAB, 0x07, 0x03, + 0xB7, 0x80, 0x03, 0xB8, 0x7F, 0x20, 0xAB, 0x7F, 0x20, 0xAB, 0x0B, 0x20, 0xAB, 0x80, 0x20, 0xCB, 0x04, 0x28, 0xCC, 0x81, 0x69, 0x2F, 0xC9, 0xF3, 0x01, 0xC9, 0xD3, 0x87, 0xC9, 0xB2, 0xC9, 0xB3, 0xC9, 0x92, 0xC9, 0xB2, 0xC9, 0x72, 0xB9, 0x73, 0x80, 0xF7, 0x38, 0x7B, 0x19, 0x00, 0x1F, 0x01, 0x00, 0x3F, 0x93, 0x00, 0x5F, 0x00, 0x7F, 0x00, 0x9F, 0x00, 0xBF, 0x00, 0xDF, 0x00, 0xFF, 0x01, 0x3F, 0x01, 0x5F, 0x01, 0x9F, 0x01, 0xBF, 0x01, 0xFF, 0x02, 0x3F, 0x02, 0x5F, 0x02, 0x9F, 0x02, 0xDF, 0x02, 0xFF, 0x03, 0x3F, 0x2A, 0xDC, 0x5A, 0x58, 0x89, 0x94, 0x01, 0xA8, 0xF1, 0x80, 0x81, 0xD4, 0x01, 0x04, 0x1F, 0x81, 0x03, 0xFF, 0x03, 0xDF, 0x04, 0x03, 0xBF, 0x89, 0x03, 0x9F, 0x03, 0x7F, 0x03, 0x5F, 0x03, 0x7F, 0x03, 0x9F, 0x03, 0xFF, 0x04, 0x7F, 0x04, 0xFF, 0x63, 0x75, 0xA1, 0x12, 0x01, 0xA1, 0x11, 0x81, 0x71, 0x11, 0x49, 0x31, 0x01, 0x41, 0x10, 0x82, 0x39, 0x0F, 0x38, 0xEE, 0x30, 0xEE, 0x01, 0x30, 0xED, 0x03, 0x28, 0xCC, 0x2A, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x08, 0xF1, 0x01, 0x01, 0x15, 0x80, 0x10, 0xCF, 0x02, 0x20, 0xAB, 0x80, 0x20, 0xCA, 0x2F, 0x20, 0xAB, 0x08, 0x03, 0xB7, 0x7F, 0x20, 0xAB, 0x7F, 0x20, 0xAB, 0x0B, 0x20, 0xAB, 0x81, 0x20, 0xCB, 0x28, 0xAC, 0x02, 0x28, 0xCC, 0x83, 0x69, 0x2E, 0xC9, 0xF3, 0xC9, 0xD2, 0xC9, 0xD3, 0x01, 0xC9, 0xB3, 0x83, 0xC9, 0x92, 0xC9, 0x93, 0x80, 0xF7, 0x38, 0x9B, 0x05, 0x00, 0x1F, 0x84, 0x08, 0x3C, 0x08, 0x5B, 0x10, 0x5B, 0x20, 0x78, 0x20, 0x98, 0x04, 0x20, 0x97, 0x83, 0x20, 0x98, 0x18, 0x7A, 0x10, + 0x5B, 0x08, 0x5D, 0x08, 0x00, 0x1F, 0x9A, 0x00, 0x3F, 0x00, 0x5F, 0x00, 0x7F, 0x00, 0x9F, 0x00, 0xDF, 0x00, 0xFF, 0x01, 0x1F, 0x01, 0x5F, 0x01, 0x7F, 0x01, 0xBF, 0x01, 0xFF, 0x02, 0x1F, 0x02, 0x5F, 0x02, 0x9F, 0x02, 0xDF, 0x02, 0xFF, 0x03, 0x3F, 0x03, 0x7F, 0x03, 0xBF, 0x03, 0xDF, 0x04, 0x1F, 0x04, 0x3F, 0x0C, 0x3F, 0x2B, 0xBC, 0x0C, 0x3F, 0x04, 0x5F, 0x04, 0x3F, 0x01, 0x04, 0x1F, 0x02, 0x03, 0xFF, 0x01, 0x03, 0xDF, 0x88, 0x03, 0xBF, 0x03, 0x9F, 0x03, 0x7F, 0x03, 0x9F, 0x03, 0xDF, 0x04, 0x3F, 0x04, 0xBF, 0x05, 0x3F, 0x53, 0x98, 0x02, 0xA1, 0x11, 0x84, 0x91, 0x11, 0x49, 0x31, 0x49, 0x10, 0x41, 0x10, 0x41, 0x0F, 0x01, 0x38, 0xEE, 0x80, 0x30, 0xED, 0x01, 0x30, 0xCD, 0x02, 0x28, 0xCC, 0x80, 0x28, 0xCB, 0x27, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x80, 0x08, 0xF1, 0x01, 0x01, 0x15, 0x80, 0x10, 0xCE, 0x05, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x1D, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x82, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x07, 0x20, 0xAB, 0x01, 0x13, 0x78, 0x01, 0x13, 0x58, 0x01, 0x13, 0x78, 0x82, 0x13, 0x58, 0x13, 0x78, 0x13, 0x58, 0x7F, 0x20, 0xAA, 0x7F, 0x20, 0xAA, 0x01, 0x20, 0xAA, 0x08, 0x20, 0xAB, 0x80, 0x20, 0xCB, 0x01, 0x28, 0xCB, 0x8E, 0x28, 0xCC, 0x28, 0xCB, 0x61, 0x4E, 0xD1, 0xF3, 0xC9, 0xF3, 0xC9, 0xD3, 0xC9, 0xB2, 0xC9, 0xB3, 0xB1, 0x73, 0x60, 0xD9, 0x08, 0x1E, 0x00, 0x3D, 0x08, 0x3B, 0x18, 0x78, 0x18, 0x77, 0x01, 0x28, 0xD2, 0x81, 0x40, 0xEE, 0x38, 0xEE, 0x02, 0x39, 0x0F, 0x80, 0x41, 0x0E, + 0x06, 0x41, 0x0F, 0x87, 0x41, 0x10, 0x41, 0x0F, 0x49, 0x10, 0x41, 0x30, 0x38, 0xF3, 0x28, 0xB6, 0x18, 0x9A, 0x00, 0x3E, 0x01, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0x01, 0x00, 0x5F, 0x94, 0x00, 0x7F, 0x00, 0xBF, 0x00, 0xDF, 0x00, 0xFF, 0x01, 0x3F, 0x01, 0x5F, 0x01, 0x9F, 0x01, 0xDF, 0x02, 0x1F, 0x02, 0x3F, 0x02, 0x7F, 0x02, 0x9F, 0x02, 0xFF, 0x03, 0x3F, 0x03, 0x5F, 0x03, 0x9F, 0x03, 0xDF, 0x04, 0x1F, 0x04, 0x5F, 0x04, 0x7F, 0x04, 0xBF, 0x01, 0x04, 0xDF, 0x01, 0x04, 0xBF, 0x01, 0x04, 0x7F, 0x02, 0x04, 0x3F, 0x01, 0x04, 0x1F, 0x81, 0x03, 0xFF, 0x03, 0xDF, 0x01, 0x03, 0xBF, 0x85, 0x03, 0xDF, 0x04, 0x3F, 0x04, 0x7F, 0x04, 0xDF, 0x05, 0x7F, 0x3C, 0x1A, 0x03, 0xA1, 0x11, 0x85, 0x59, 0x31, 0x49, 0x10, 0x41, 0x10, 0x41, 0x0F, 0x39, 0x0E, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x06, 0x20, 0xAB, 0x1F, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x20, 0xAA, 0x08, 0xF1, 0x01, 0x01, 0x15, 0x84, 0x10, 0xCF, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x1E, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x80, 0x3A, 0xF9, 0x04, 0x3A, 0xD9, 0x02, 0x3A, 0xF9, 0x7F, 0x20, 0xAA, 0x7F, 0x20, 0xAA, 0x05, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x84, 0x20, 0xCB, 0x28, 0xCB, 0x20, 0xCB, 0x28, 0xAB, 0x69, 0x2E, 0x02, 0xC9, 0xD3, 0x87, 0xC9, 0xB3, 0xB1, 0xB2, 0x58, 0xF3, 0x18, 0x95, 0x28, 0xB2, 0x30, + 0xED, 0x38, 0xED, 0x30, 0xED, 0x02, 0x38, 0xED, 0x80, 0x38, 0xEE, 0x01, 0x39, 0x0E, 0x01, 0x38, 0xEE, 0x03, 0x39, 0x0E, 0x81, 0x41, 0x0F, 0x39, 0x0E, 0x05, 0x41, 0x0F, 0x9D, 0x41, 0x10, 0x41, 0x0F, 0x49, 0x2F, 0x49, 0x30, 0x49, 0x10, 0x38, 0xF3, 0x20, 0xB8, 0x08, 0x7D, 0x00, 0x7F, 0x00, 0x9F, 0x00, 0xDF, 0x00, 0xFF, 0x01, 0x1F, 0x01, 0x5F, 0x01, 0x7F, 0x01, 0x9F, 0x01, 0xDF, 0x02, 0x1F, 0x02, 0x5F, 0x02, 0xBF, 0x02, 0xDF, 0x03, 0x1F, 0x03, 0x5F, 0x03, 0x9F, 0x03, 0xDF, 0x04, 0x1F, 0x04, 0x5F, 0x04, 0x9F, 0x04, 0xDF, 0x04, 0xFF, 0x01, 0x05, 0x1F, 0x84, 0x05, 0x3F, 0x04, 0xFF, 0x04, 0xDF, 0x04, 0xBF, 0x04, 0x9F, 0x01, 0x04, 0x7F, 0x01, 0x04, 0x5F, 0x8B, 0x04, 0x3F, 0x04, 0x1F, 0x03, 0xFF, 0x03, 0xDF, 0x03, 0xFF, 0x04, 0x3F, 0x04, 0x5F, 0x04, 0xBF, 0x05, 0x3F, 0x05, 0xBF, 0x2C, 0xDC, 0xA1, 0x12, 0x02, 0xA1, 0x11, 0x85, 0x71, 0x31, 0x49, 0x30, 0x41, 0x30, 0x41, 0x0F, 0x39, 0x0E, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x81, 0x28, 0xAB, 0x20, 0xCB, 0x02, 0x20, 0xAB, 0x25, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x84, 0x20, 0xAA, 0x08, 0xF1, 0x01, 0x15, 0x01, 0x14, 0x10, 0xCE, 0x03, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x17, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x62, 0x5A, 0x62, 0x5B, 0x01, 0x5A, 0x5A, 0x81, 0x62, 0x5B, 0x20, 0xCA, 0x02, + 0x20, 0xAA, 0x7F, 0x20, 0xAB, 0x7B, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x0B, 0x20, 0xAB, 0x80, 0x28, 0xAB, 0x01, 0x28, 0xCB, 0x81, 0x61, 0x2E, 0xC9, 0xF3, 0x01, 0xC9, 0xD3, 0x84, 0xB9, 0x92, 0x69, 0x2E, 0x28, 0xCC, 0x28, 0xEC, 0x30, 0xCD, 0x04, 0x30, 0xED, 0x81, 0x38, 0xED, 0x30, 0xED, 0x01, 0x38, 0xED, 0x80, 0x39, 0x0E, 0x02, 0x38, 0xEE, 0x81, 0x39, 0x0F, 0x38, 0xEE, 0x01, 0x40, 0xEE, 0x83, 0x39, 0x0F, 0x39, 0x0E, 0x41, 0x0E, 0x40, 0xEF, 0x06, 0x41, 0x0F, 0x80, 0x41, 0x2F, 0x01, 0x49, 0x10, 0x9A, 0x49, 0x30, 0x41, 0x13, 0x28, 0xF8, 0x08, 0xFE, 0x01, 0x3F, 0x01, 0x5F, 0x01, 0x9F, 0x01, 0xDF, 0x02, 0x1F, 0x02, 0x3F, 0x02, 0x9F, 0x02, 0xBF, 0x03, 0x1F, 0x03, 0x5F, 0x03, 0x9F, 0x03, 0xDF, 0x04, 0x1F, 0x04, 0x5F, 0x04, 0x9F, 0x04, 0xDF, 0x05, 0x1F, 0x05, 0x3F, 0x05, 0x7F, 0x05, 0x9F, 0x05, 0x7F, 0x05, 0x5F, 0x05, 0x3F, 0x01, 0x04, 0xFF, 0x81, 0x04, 0xDF, 0x04, 0xBF, 0x01, 0x04, 0x9F, 0x82, 0x04, 0x7F, 0x04, 0x5F, 0x04, 0x3F, 0x01, 0x04, 0x1F, 0x86, 0x04, 0x3F, 0x04, 0x5F, 0x04, 0xBF, 0x04, 0xFF, 0x05, 0x5F, 0x05, 0xDF, 0x0E, 0x1F, 0x02, 0xA1, 0x11, 0x86, 0xA1, 0x12, 0x89, 0x31, 0x49, 0x30, 0x41, 0x30, 0x41, 0x0F, 0x41, 0x0E, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x02, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x26, 0x20, 0xAB, 0x83, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x83, 0x08, 0xF1, 0x01, 0x15, 0x01, 0x14, 0x10, 0xCF, 0x01, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x18, 0x20, 0xAB, 0x85, + 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xCB, 0x10, 0xCF, 0x01, 0x10, 0xEF, 0x82, 0x18, 0xCE, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x81, 0xDB, 0x81, 0xDC, 0x01, 0x81, 0xDB, 0x82, 0x81, 0xBC, 0x81, 0xBB, 0x81, 0xBC, 0x01, 0x81, 0xDC, 0x03, 0x20, 0xAA, 0x80, 0x20, 0xCA, 0x7F, 0x20, 0xAA, 0x7C, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xCB, 0x01, 0x20, 0xAB, 0x87, 0x20, 0xCB, 0x28, 0xAB, 0x20, 0xCB, 0x61, 0x2E, 0xD1, 0xF3, 0xC9, 0xF3, 0xC1, 0xB2, 0x61, 0x2E, 0x03, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x80, 0x30, 0xCD, 0x05, 0x30, 0xED, 0x80, 0x38, 0xED, 0x09, 0x38, 0xEE, 0x81, 0x39, 0x0E, 0x38, 0xEE, 0x02, 0x39, 0x0E, 0x05, 0x41, 0x0F, 0x80, 0x41, 0x30, 0x01, 0x49, 0x30, 0x92, 0x49, 0x31, 0x49, 0x30, 0x41, 0x33, 0x19, 0x7A, 0x01, 0xDE, 0x02, 0x1F, 0x02, 0x7F, 0x02, 0xBF, 0x02, 0xFF, 0x03, 0x3F, 0x03, 0x7F, 0x03, 0xBF, 0x03, 0xFF, 0x04, 0x5F, 0x04, 0x9F, 0x04, 0xDF, 0x05, 0x1F, 0x05, 0x7F, 0x05, 0x9F, 0x02, 0x05, 0xDF, 0x81, 0x05, 0xBF, 0x05, 0x9F, 0x01, 0x05, 0x5F, 0x82, 0x05, 0x3F, 0x05, 0x1F, 0x04, 0xFF, 0x01, 0x04, 0xDF, 0x82, 0x04, 0xBF, 0x04, 0x7F, 0x04, 0x5F, 0x01, 0x04, 0x3F, 0x87, 0x04, 0x7F, 0x04, 0xBF, 0x04, 0xFF, 0x05, 0x3F, 0x05, 0xBF, 0x06, 0x1F, 0x06, 0x9F, 0x99, 0x72, 0x03, 0xA1, 0x11, 0x87, 0x51, 0x30, 0x49, 0x10, 0x41, 0x0F, 0x39, 0x0F, 0x39, 0x0E, 0x38, 0xED, 0x30, 0xED, 0x30, 0xCD, 0x02, 0x28, 0xCC, + 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x03, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x25, 0x20, 0xAA, 0x85, 0x08, 0xF1, 0x01, 0x15, 0x00, 0xF4, 0x18, 0xCC, 0x20, 0xAA, 0x20, 0xAB, 0x1B, 0x20, 0xAA, 0x8A, 0x20, 0xAB, 0x20, 0xAA, 0x18, 0xCC, 0x00, 0xF3, 0x01, 0x15, 0x01, 0x14, 0x01, 0x15, 0x00, 0xF4, 0x00, 0xF2, 0x20, 0xCB, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x01, 0xA9, 0x3D, 0x86, 0xA9, 0x5C, 0xA9, 0x3D, 0xA9, 0x5C, 0xA9, 0x5D, 0xA9, 0x3C, 0xA9, 0x5D, 0xA9, 0x3D, 0x7F, 0x20, 0xAA, 0x7F, 0x20, 0xAA, 0x01, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x87, 0x20, 0xCB, 0x28, 0xAB, 0x51, 0x0D, 0xD1, 0xF3, 0xC9, 0xD2, 0x81, 0x6F, 0x30, 0xCC, 0x28, 0xAC, 0x04, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x80, 0x30, 0xCD, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCD, 0x04, 0x30, 0xED, 0x03, 0x38, 0xED, 0x05, 0x38, 0xEE, 0x04, 0x39, 0x0E, 0x03, 0x41, 0x0F, 0x82, 0x41, 0x10, 0x41, 0x0F, 0x49, 0x10, 0x02, 0x49, 0x30, 0x8F, 0x49, 0x31, 0x49, 0x32, 0x31, 0xB6, 0x0A, 0x9D, 0x02, 0xFF, 0x03, 0x5F, 0x03, 0x9F, 0x03, 0xFF, 0x04, 0x3F, 0x04, 0x7F, 0x04, 0xBF, 0x05, 0x1F, 0x05, 0x5F, 0x05, 0xBF, 0x05, 0xDF, 0x06, 0x1F, 0x01, 0x06, 0x3F, 0x82, 0x05, 0xFF, 0x05, 0xDF, 0x05, 0xBF, 0x01, 0x05, 0x9F, 0x86, 0x05, 0x7F, 0x05, 0x5F, 0x05, 0x3F, 0x05, 0x1F, 0x04, 0xFF, 0x04, 0xDF, 0x04, 0xBF, 0x02, 0x04, 0x7F, 0x87, 0x04, 0x9F, 0x04, 0xDF, 0x05, 0x3F, 0x05, 0x7F, 0x05, 0xFF, + 0x06, 0x5F, 0x06, 0xDF, 0x7A, 0x95, 0x03, 0xA1, 0x11, 0x81, 0x69, 0x11, 0x49, 0x30, 0x01, 0x41, 0x0F, 0x83, 0x39, 0x0E, 0x38, 0xEE, 0x30, 0xED, 0x30, 0xCD, 0x02, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x03, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x25, 0x20, 0xAA, 0x81, 0x20, 0xAB, 0x08, 0xF1, 0x01, 0x01, 0x14, 0x80, 0x18, 0xCD, 0x1C, 0x20, 0xAA, 0x89, 0x20, 0xAB, 0x20, 0xAA, 0x08, 0xF2, 0x01, 0x15, 0x01, 0x14, 0x01, 0x15, 0x01, 0x14, 0x01, 0x15, 0x01, 0x14, 0x10, 0xEF, 0x01, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x83, 0x20, 0xCB, 0x20, 0xAB, 0xC8, 0xBE, 0xD0, 0xBE, 0x01, 0xC8, 0xBE, 0x81, 0xD0, 0xBE, 0xC8, 0xBE, 0x01, 0xD0, 0xBE, 0x81, 0xC8, 0xBE, 0x20, 0xCA, 0x7F, 0x20, 0xAA, 0x7F, 0x20, 0xAA, 0x80, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xCB, 0x01, 0x20, 0xAB, 0x84, 0x40, 0xEC, 0xC1, 0xD2, 0xC1, 0xB3, 0x49, 0x0D, 0x28, 0xCB, 0x07, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x80, 0x30, 0xEC, 0x01, 0x30, 0xCD, 0x0A, 0x30, 0xED, 0x03, 0x38, 0xED, 0x05, 0x38, 0xEE, 0x01, 0x39, 0x0E, 0x80, 0x39, 0x0F, 0x03, 0x41, 0x0F, 0x01, 0x49, 0x10, 0x81, 0x49, 0x30, 0x49, 0x31, 0x01, 0x49, 0x51, 0x8A, 0x39, 0xD5, 0x13, 0x1C, 0x04, 0x1F, 0x04, 0x7F, 0x04, 0xBF, 0x05, 0x1F, 0x05, 0x5F, 0x05, 0x9F, 0x05, 0xDF, 0x06, 0x1F, 0x06, 0x7F, 0x01, 0x06, 0x9F, 0x82, 0x06, 0x7F, 0x06, 0x5F, 0x06, 0x1F, 0x01, 0x05, 0xFF, 0x87, 0x05, 0xBF, 0x05, 0x9F, 0x05, 0x7F, 0x05, 0x5F, 0x05, 0x3F, 0x05, 0x1F, 0x04, 0xFF, 0x04, 0xDF, 0x02, + 0x04, 0xBF, 0x87, 0x04, 0xDF, 0x05, 0x1F, 0x05, 0x7F, 0x05, 0xBF, 0x06, 0x3F, 0x06, 0x9F, 0x07, 0x1F, 0x54, 0x38, 0x03, 0xA1, 0x11, 0x81, 0x81, 0x11, 0x49, 0x30, 0x01, 0x41, 0x0F, 0x81, 0x39, 0x0E, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x03, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x27, 0x20, 0xAA, 0x85, 0x08, 0xF1, 0x01, 0x15, 0x00, 0xF4, 0x18, 0xCC, 0x20, 0xAA, 0x20, 0xAB, 0x17, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x84, 0x20, 0xAA, 0x18, 0xCC, 0x00, 0xF5, 0x01, 0x15, 0x00, 0xF4, 0x01, 0x01, 0x15, 0x89, 0x01, 0x14, 0x01, 0x15, 0x00, 0xF4, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x08, 0xF0, 0x3F, 0x7F, 0x20, 0xAA, 0x7F, 0x20, 0xAA, 0x01, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x83, 0x30, 0xCB, 0xA9, 0x92, 0xA9, 0xB1, 0x30, 0xCB, 0x03, 0x28, 0xCB, 0x06, 0x28, 0xCC, 0x03, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x80, 0x30, 0xCD, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCD, 0x08, 0x30, 0xED, 0x03, 0x38, 0xED, 0x02, 0x38, 0xEE, 0x02, 0x39, 0x0E, 0x04, 0x41, 0x0F, 0x80, 0x41, 0x2F, 0x01, 0x49, 0x30, 0x8A, 0x51, 0x30, 0x49, 0x31, 0x51, 0x31, 0x3A, 0x15, 0x23, 0x7B, 0x05, 0x3F, 0x05, 0x9F, 0x53, 0x58, 0x34, 0x9B, 0x0E, 0x1F, 0x06, 0xBF, 0x01, 0x06, 0xFF, 0x8D, 0x06, 0xDF, 0x06, 0xBF, 0x06, 0x9F, 0x06, 0x5F, 0x06, 0x3F, 0x06, 0x1F, 0x05, 0xFF, 0x05, 0xDF, 0x05, 0xBF, 0x05, 0x9F, 0x05, 0x7F, 0x05, 0x5F, 0x05, + 0x1F, 0x04, 0xFF, 0x01, 0x04, 0xDF, 0x88, 0x04, 0xFF, 0x05, 0x1F, 0x05, 0x5F, 0x05, 0x9F, 0x05, 0xFF, 0x06, 0x5F, 0x06, 0xDF, 0x07, 0x3F, 0x35, 0x9B, 0x04, 0xA1, 0x11, 0x84, 0x49, 0x30, 0x49, 0x10, 0x41, 0x2F, 0x39, 0x0E, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x04, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x25, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x82, 0x00, 0xF3, 0x01, 0x15, 0x01, 0x14, 0x1A, 0x01, 0x15, 0x02, 0x01, 0x14, 0x80, 0x01, 0x15, 0x01, 0x01, 0x14, 0x01, 0x01, 0x15, 0x02, 0x01, 0x14, 0x80, 0x20, 0xAB, 0x04, 0x20, 0xAA, 0x84, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x87, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xCA, 0x79, 0x0F, 0x68, 0xEE, 0x50, 0xED, 0x38, 0xCC, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x7C, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x84, 0x69, 0x2F, 0x81, 0x6F, 0x20, 0xAB, 0x20, 0xCB, 0x20, 0xAB, 0x02, 0x28, 0xCB, 0x81, 0x28, 0xAB, 0x28, 0xCB, 0x09, 0x28, 0xCC, 0x02, 0x30, 0xCC, 0x07, 0x30, 0xCD, 0x07, 0x30, 0xED, 0x80, 0x38, 0xED, 0x03, 0x38, 0xEE, 0x01, 0x39, 0x0E, 0x03, 0x41, 0x0F, 0x80, 0x41, 0x2F, 0x02, 0x49, 0x30, 0x01, 0x49, 0x31, 0x83, 0x51, 0x31, 0x49, 0xD4, 0x24, 0x3A, 0xA1, 0x32, 0x02, 0xA8, 0xF1, 0x01, 0x82, 0x95, 0x86, 0x54, 0x18, 0x35, 0x1B, 0x06, 0xDF, 0x06, 0x9F, 0x06, 0x7F, 0x06, 0x5F, 0x06, 0x3F, 0x01, 0x05, 0xFF, 0x84, 0x05, 0xBF, 0x05, 0x9F, 0x05, 0x7F, 0x05, 0x5F, + 0x05, 0x3F, 0x01, 0x05, 0x1F, 0x88, 0x05, 0x3F, 0x05, 0x7F, 0x05, 0x9F, 0x05, 0xDF, 0x06, 0x3F, 0x06, 0x9F, 0x06, 0xFF, 0x07, 0x7F, 0x0F, 0x5F, 0x03, 0xA1, 0x11, 0x85, 0x99, 0x31, 0x69, 0x11, 0x49, 0x30, 0x41, 0x0F, 0x39, 0x0E, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x82, 0x30, 0xCD, 0x30, 0xCC, 0x28, 0xCC, 0x02, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x03, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x27, 0x20, 0xAA, 0x84, 0x20, 0xAB, 0x18, 0xCB, 0x00, 0xF2, 0x01, 0x15, 0x01, 0x14, 0x1A, 0x01, 0x15, 0x84, 0x01, 0x14, 0x00, 0xF5, 0x01, 0x14, 0x01, 0x15, 0x01, 0x14, 0x03, 0x01, 0x15, 0x80, 0x01, 0x14, 0x01, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x82, 0x20, 0xAA, 0x20, 0xAB, 0x81, 0x30, 0x01, 0x89, 0x30, 0x85, 0x89, 0x10, 0x89, 0x30, 0x79, 0x0F, 0x69, 0x0E, 0x48, 0xCD, 0x38, 0xCC, 0x05, 0x20, 0xAA, 0x01, 0x20, 0xCA, 0x7F, 0x20, 0xAA, 0x70, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xCB, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x83, 0x20, 0xCB, 0x20, 0xAB, 0x28, 0xCB, 0x28, 0xAB, 0x03, 0x28, 0xCB, 0x0B, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x03, 0x28, 0xCC, 0x03, 0x30, 0xCC, 0x01, 0x30, 0xCD, 0x05, 0x30, 0xED, 0x80, 0x30, 0xEE, 0x01, 0x38, 0xED, 0x02, 0x39, 0x0E, 0x80, 0x41, 0x0E, 0x03, 0x41, 0x0F, 0x80, 0x41, 0x30, 0x02, 0x49, 0x30, 0x01, 0x51, 0x31, 0x84, 0x69, 0x92, 0xA8, 0xF1, 0xA9, 0x11, 0xA8, 0xF1, 0xA9, 0x11, 0x02, 0xA8, + 0xF1, 0x8A, 0xA1, 0x72, 0x4C, 0x39, 0x2D, 0x5C, 0x06, 0x9F, 0x06, 0x5F, 0x06, 0x3F, 0x06, 0x1F, 0x05, 0xFF, 0x05, 0xDF, 0x05, 0x9F, 0x05, 0x7F, 0x02, 0x05, 0x5F, 0x97, 0x05, 0x7F, 0x05, 0x9F, 0x05, 0xDF, 0x06, 0x1F, 0x06, 0x7F, 0x06, 0xDF, 0x07, 0x3F, 0x07, 0x9F, 0x07, 0xDF, 0x82, 0x54, 0xA1, 0x11, 0xA1, 0x31, 0xA1, 0x11, 0x99, 0x11, 0x81, 0x31, 0x49, 0x10, 0x41, 0x0F, 0x41, 0x0E, 0x38, 0xEE, 0x38, 0xED, 0x30, 0xED, 0x30, 0xCD, 0x30, 0xCC, 0x28, 0xCC, 0x02, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x06, 0x20, 0xAB, 0x25, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x1B, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x81, 0x08, 0xF2, 0x00, 0xF5, 0x01, 0x01, 0x14, 0x01, 0x01, 0x15, 0x81, 0x01, 0x14, 0x10, 0xF0, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x83, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x89, 0x30, 0x01, 0x89, 0x10, 0x02, 0x89, 0x30, 0x87, 0x89, 0x10, 0x89, 0x30, 0x89, 0x10, 0x81, 0x30, 0x71, 0x0F, 0x60, 0xEE, 0x48, 0xED, 0x38, 0xCC, 0x7F, 0x20, 0xAA, 0x73, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x82, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xCB, 0x02, 0x20, 0xAB, 0x01, 0x28, 0xAB, 0x01, 0x20, 0xCB, 0x06, 0x28, 0xCB, 0x13, 0x28, 0xCC, 0x80, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x04, 0x30, 0xED, 0x04, 0x38, 0xEE, 0x81, 0x39, 0x0E, 0x39, 0x0F, 0x02, 0x41, 0x0F, 0x83, 0x41, 0x2F, 0x49, 0x30, 0x49, 0x10, 0x49, 0x30, + 0x01, 0x51, 0x31, 0x81, 0x69, 0x31, 0xA1, 0x11, 0x03, 0xA8, 0xF1, 0x8B, 0xA9, 0x11, 0xA1, 0x11, 0xA9, 0x11, 0xA0, 0xF1, 0x99, 0x72, 0x44, 0x19, 0x06, 0x7F, 0x06, 0x5F, 0x06, 0x1F, 0x05, 0xFF, 0x05, 0xDF, 0x05, 0xBF, 0x01, 0x05, 0x9F, 0x01, 0x05, 0xBF, 0x89, 0x05, 0xDF, 0x06, 0x1F, 0x06, 0x5F, 0x06, 0xBF, 0x06, 0xFF, 0x07, 0x5F, 0x07, 0xBF, 0x07, 0xFF, 0x54, 0x98, 0xA1, 0x31, 0x02, 0xA1, 0x11, 0x81, 0x99, 0x11, 0x49, 0x30, 0x01, 0x41, 0x0F, 0x01, 0x38, 0xEE, 0x82, 0x30, 0xED, 0x30, 0xCD, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x06, 0x20, 0xAB, 0x26, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xAB, 0x17, 0x20, 0xAA, 0x80, 0x20, 0xCA, 0x01, 0x20, 0xAA, 0x83, 0x20, 0xAB, 0x20, 0xCC, 0x00, 0xF3, 0x00, 0xF4, 0x02, 0x01, 0x14, 0x81, 0x08, 0xF2, 0x20, 0xCB, 0x01, 0x20, 0xAA, 0x84, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x82, 0x20, 0xCA, 0x20, 0xAA, 0x20, 0xCA, 0x02, 0x20, 0xAA, 0x81, 0x20, 0xAB, 0x81, 0x10, 0x04, 0x89, 0x10, 0x81, 0x89, 0x30, 0x89, 0x10, 0x05, 0x89, 0x30, 0x84, 0x81, 0x30, 0x71, 0x0F, 0x58, 0xED, 0x48, 0xCC, 0x30, 0xCB, 0x7F, 0x20, 0xAA, 0x6E, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x81, 0x20, 0xCA, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x80, 0x20, 0xCB, 0x01, 0x20, 0xAB, 0x81, 0x28, 0xCB, 0x20, 0xCB, 0x08, 0x28, 0xCB, 0x12, 0x28, 0xCC, 0x02, 0x30, 0xCC, 0x01, + 0x30, 0xEC, 0x80, 0x30, 0xCD, 0x02, 0x30, 0xED, 0x81, 0x38, 0xED, 0x38, 0xEE, 0x02, 0x39, 0x0E, 0x80, 0x39, 0x0F, 0x01, 0x41, 0x0F, 0x83, 0x49, 0x0F, 0x41, 0x2F, 0x49, 0x10, 0x49, 0x30, 0x01, 0x49, 0x31, 0x81, 0x59, 0x31, 0x91, 0x11, 0x01, 0xA8, 0xF1, 0x80, 0xA9, 0x11, 0x01, 0xA8, 0xF1, 0x02, 0xA9, 0x11, 0x85, 0xA1, 0x11, 0x7A, 0x55, 0x34, 0xBB, 0x06, 0x5F, 0x06, 0x1F, 0x05, 0xFF, 0x03, 0x05, 0xDF, 0x8A, 0x05, 0xFF, 0x06, 0x3F, 0x06, 0x5F, 0x06, 0x9F, 0x06, 0xDF, 0x07, 0x1F, 0x07, 0x7F, 0x07, 0xBF, 0x07, 0xFF, 0x2E, 0x3C, 0x99, 0x11, 0x01, 0xA1, 0x11, 0x01, 0x99, 0x31, 0x80, 0x69, 0x10, 0x01, 0x41, 0x0F, 0x01, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x01, 0x20, 0xCB, 0x05, 0x20, 0xAB, 0x25, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xCB, 0x02, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x19, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x8B, 0x20, 0xCB, 0x10, 0xCF, 0x10, 0xD0, 0x10, 0xEF, 0x10, 0xCE, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x82, 0x20, 0xCA, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x02, 0x89, 0x10, 0x80, 0x81, 0x0F, 0x01, 0x89, 0x0F, 0x08, 0x89, 0x10, 0x04, 0x89, 0x30, 0x85, 0x69, 0x0F, 0x58, 0xEE, 0x40, 0xCD, 0x30, 0xCC, 0x20, 0xAB, 0x20, 0xCA, 0x7F, 0x20, 0xAA, 0x69, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x08, 0x20, 0xAB, 0x03, 0x20, + 0xCB, 0x16, 0x28, 0xCB, 0x07, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x81, 0x30, 0xEC, 0x30, 0xCD, 0x03, 0x30, 0xED, 0x03, 0x38, 0xEE, 0x80, 0x39, 0x0E, 0x03, 0x41, 0x0F, 0x86, 0x49, 0x10, 0x49, 0x30, 0x49, 0x31, 0x51, 0x31, 0x79, 0x31, 0xA9, 0x11, 0xA8, 0xF1, 0x03, 0xA9, 0x11, 0x80, 0xA8, 0xF1, 0x03, 0xA1, 0x11, 0x82, 0x91, 0xB3, 0x62, 0xF6, 0x34, 0x7B, 0x01, 0x06, 0x1F, 0x01, 0x06, 0x3F, 0x86, 0x06, 0x5F, 0x06, 0x7F, 0x06, 0xBF, 0x07, 0x1F, 0x07, 0x3F, 0x07, 0x9F, 0x07, 0xDF, 0x01, 0x07, 0xFF, 0x8C, 0xA1, 0x11, 0x99, 0x12, 0x99, 0x11, 0x99, 0x31, 0x99, 0x32, 0x81, 0x31, 0x41, 0x30, 0x41, 0x0F, 0x41, 0x0E, 0x38, 0xEE, 0x30, 0xEE, 0x30, 0xED, 0x30, 0xCD, 0x01, 0x28, 0xCC, 0x02, 0x28, 0xCB, 0x03, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x61, 0x20, 0xAA, 0x02, 0x81, 0x0F, 0x80, 0x89, 0x0F, 0x01, 0x89, 0x10, 0x03, 0x81, 0x10, 0x81, 0x89, 0x10, 0x81, 0x30, 0x07, 0x89, 0x10, 0x81, 0x89, 0x30, 0x89, 0x10, 0x01, 0x89, 0x30, 0x84, 0x81, 0x0F, 0x71, 0x0F, 0x50, 0xED, 0x40, 0xCC, 0x28, 0xAB, 0x05, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x5F, 0x20, 0xAA, 0x07, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x04, 0x20, 0xAB, 0x81, 0x20, 0xCB, 0x20, 0xAB, 0x05, 0x28, 0xAB, 0x14, 0x28, 0xCB, 0x06, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x80, 0x30, 0xCD, 0x03, 0x30, 0xED, 0x03, 0x38, 0xEE, 0x80, 0x39, 0x0F, 0x02, 0x41, 0x0F, 0x80, 0x49, 0x10, 0x02, 0x49, 0x30, 0x80, 0x71, 0x11, 0x03, 0xA9, 0x11, 0x80, 0xA1, 0x11, 0x01, 0xA9, 0x11, 0x05, 0xA1, 0x11, + 0x89, 0x91, 0xB3, 0x34, 0x9B, 0x06, 0x5F, 0x06, 0x7F, 0x06, 0x9F, 0x06, 0xBF, 0x06, 0xFF, 0x07, 0x3F, 0x07, 0x7F, 0x07, 0xBF, 0x02, 0x07, 0xFF, 0x83, 0x7A, 0xD4, 0xA1, 0x11, 0x99, 0x11, 0xA1, 0x11, 0x01, 0x99, 0x31, 0x84, 0x49, 0x30, 0x41, 0x0F, 0x39, 0x0E, 0x38, 0xEE, 0x30, 0xEE, 0x01, 0x30, 0xED, 0x01, 0x28, 0xCC, 0x02, 0x28, 0xCB, 0x03, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x61, 0x20, 0xAA, 0x01, 0x89, 0x0F, 0x05, 0x81, 0x0F, 0x01, 0x89, 0x0F, 0x01, 0x89, 0x10, 0x80, 0x81, 0x10, 0x09, 0x89, 0x10, 0x02, 0x89, 0x30, 0x80, 0x81, 0x30, 0x01, 0x89, 0x30, 0x84, 0x81, 0x0F, 0x71, 0x0F, 0x50, 0xED, 0x38, 0xCC, 0x28, 0xAB, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xCA, 0x03, 0x20, 0xAA, 0x80, 0x20, 0xCA, 0x0A, 0x20, 0xAA, 0x80, 0x20, 0xCA, 0x7F, 0x20, 0xAA, 0x4F, 0x20, 0xAA, 0x07, 0x20, 0xAB, 0x80, 0x20, 0xCB, 0x08, 0x20, 0xAB, 0x03, 0x28, 0xAB, 0x0B, 0x20, 0xCB, 0x01, 0x28, 0xCB, 0x01, 0x20, 0xCB, 0x07, 0x28, 0xCB, 0x04, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x81, 0x30, 0xEC, 0x30, 0xCD, 0x02, 0x30, 0xED, 0x80, 0x38, 0xED, 0x01, 0x38, 0xEE, 0x01, 0x39, 0x0E, 0x01, 0x41, 0x0F, 0x80, 0x41, 0x10, 0x01, 0x49, 0x30, 0x83, 0x51, 0x30, 0x81, 0x11, 0xA1, 0x11, 0xA9, 0x11, 0x01, 0xA1, 0x11, 0x86, 0xA9, 0x11, 0xA1, 0x12, 0xA1, 0x11, 0xA9, 0x11, 0xA1, 0x11, 0xA1, 0x12, 0xA0, 0xF1, 0x02, 0xA1, 0x11, 0x87, 0x7A, 0x75, 0x15, 0xFD, 0x06, 0xBF, 0x06, 0xFF, 0x07, 0x1F, 0x07, 0x5F, 0x07, 0x9F, 0x07, 0xBF, 0x02, 0x07, 0xFF, 0x82, 0x54, 0x99, 0x99, + 0x31, 0x99, 0x11, 0x02, 0x99, 0x31, 0x81, 0x69, 0x30, 0x41, 0x0F, 0x01, 0x39, 0x0E, 0x83, 0x38, 0xEE, 0x30, 0xED, 0x30, 0xCD, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x05, 0x20, 0xAB, 0x61, 0x20, 0xAA, 0x0D, 0x81, 0x0F, 0x01, 0x81, 0x10, 0x03, 0x89, 0x10, 0x01, 0x89, 0x30, 0x04, 0x89, 0x10, 0x81, 0x89, 0x30, 0x81, 0x30, 0x01, 0x89, 0x30, 0x80, 0x81, 0x30, 0x01, 0x89, 0x30, 0x83, 0x79, 0x0F, 0x69, 0x0E, 0x50, 0xED, 0x38, 0xCC, 0x03, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x5B, 0x20, 0xAA, 0x09, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x11, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x81, 0x28, 0xAB, 0x20, 0xAB, 0x01, 0x28, 0xAB, 0x04, 0x20, 0xCB, 0x06, 0x28, 0xCB, 0x05, 0x28, 0xCC, 0x82, 0x30, 0xCC, 0x30, 0xEC, 0x30, 0xCD, 0x02, 0x30, 0xED, 0x80, 0x38, 0xED, 0x01, 0x38, 0xEE, 0x80, 0x40, 0xEE, 0x02, 0x41, 0x0F, 0x80, 0x41, 0x30, 0x01, 0x49, 0x30, 0x83, 0x59, 0x31, 0x90, 0xF1, 0xA9, 0x11, 0xA9, 0x12, 0x02, 0xA1, 0x11, 0x01, 0xA9, 0x11, 0x81, 0xA1, 0x11, 0xA1, 0x12, 0x03, 0xA1, 0x11, 0x86, 0x99, 0x72, 0x35, 0x3B, 0x07, 0x1F, 0x07, 0x3F, 0x07, 0x7F, 0x07, 0xBF, 0x07, 0xDF, 0x02, 0x07, 0xFF, 0x81, 0x2E, 0x3C, 0xA1, 0x11, 0x03, 0x99, 0x31, 0x80, 0x89, 0x31, 0x01, 0x41, 0x0F, 0x01, 0x38, 0xEE, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x05, 0x20, 0xAB, 0x61, 0x20, 0xAA, 0x81, 0x81, 0x0F, 0x80, 0xEF, 0x03, 0x81, 0x0F, 0x02, 0x89, 0x0F, 0x08, 0x81, 0x0F, 0x01, 0x81, 0x10, 0x80, 0x89, + 0x10, 0x01, 0x81, 0x10, 0x80, 0x81, 0x30, 0x09, 0x89, 0x10, 0x80, 0x89, 0x30, 0x01, 0x81, 0x30, 0x01, 0x89, 0x30, 0x83, 0x79, 0x0F, 0x69, 0x0E, 0x50, 0xED, 0x38, 0xCC, 0x7F, 0x20, 0xAA, 0x5B, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x21, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x80, 0x28, 0xAB, 0x02, 0x20, 0xCB, 0x04, 0x28, 0xCB, 0x04, 0x28, 0xCC, 0x80, 0x30, 0xCC, 0x01, 0x30, 0xCD, 0x02, 0x30, 0xED, 0x80, 0x38, 0xEE, 0x02, 0x39, 0x0E, 0x01, 0x41, 0x0F, 0x81, 0x41, 0x2F, 0x41, 0x30, 0x01, 0x49, 0x30, 0x81, 0x81, 0x11, 0xA9, 0x11, 0x08, 0xA1, 0x11, 0x01, 0xA1, 0x12, 0x01, 0xA1, 0x11, 0x84, 0x44, 0x99, 0x07, 0x7F, 0x07, 0x9F, 0x07, 0xBF, 0x07, 0xDF, 0x03, 0x07, 0xFF, 0x81, 0x99, 0x31, 0xA1, 0x11, 0x03, 0x99, 0x31, 0x86, 0x49, 0x0F, 0x41, 0x0F, 0x38, 0xEE, 0x30, 0xEE, 0x38, 0xED, 0x30, 0xED, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x20, 0xCB, 0x05, 0x20, 0xAB, 0x61, 0x20, 0xAA, 0x83, 0x90, 0xEF, 0x88, 0xEF, 0x80, 0xEF, 0x81, 0x0F, 0x02, 0x80, 0xEF, 0x01, 0x81, 0x0F, 0x80, 0x89, 0x0F, 0x0B, 0x81, 0x0F, 0x01, 0x89, 0x0F, 0x81, 0x81, 0x0F, 0x81, 0x10, 0x09, 0x89, 0x10, 0x81, 0x89, 0x30, 0x89, 0x10, 0x04, 0x89, 0x30, 0x84, 0x81, 0x30, 0x71, 0x0F, 0x60, 0xEE, 0x48, 0xED, 0x38, 0xEC, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xCB, 0x7F, 0x20, 0xAA, 0x54, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x0D, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x07, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x0B, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x01, 0x28, 0xAB, + 0x80, 0x20, 0xCB, 0x03, 0x28, 0xCB, 0x03, 0x28, 0xCC, 0x01, 0x30, 0xCC, 0x01, 0x30, 0xCD, 0x01, 0x30, 0xED, 0x82, 0x38, 0xED, 0x31, 0x0E, 0x38, 0xEE, 0x01, 0x39, 0x0E, 0x01, 0x41, 0x0F, 0x80, 0x41, 0x2F, 0x01, 0x49, 0x30, 0x80, 0x71, 0x31, 0x01, 0xA1, 0x11, 0x82, 0xA1, 0x12, 0xA1, 0x11, 0xA0, 0xF1, 0x01, 0xA1, 0x11, 0x80, 0xA1, 0x12, 0x04, 0xA1, 0x11, 0x83, 0xA1, 0x31, 0x63, 0x97, 0x07, 0xBF, 0x07, 0xDF, 0x04, 0x07, 0xFF, 0x80, 0x7A, 0xD4, 0x03, 0x99, 0x31, 0x82, 0x99, 0x12, 0x71, 0x30, 0x39, 0x0F, 0x01, 0x38, 0xEE, 0x82, 0x38, 0xED, 0x30, 0xED, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x80, 0x28, 0xAB, 0x05, 0x20, 0xAB, 0x61, 0x20, 0xAA, 0x01, 0x99, 0x0F, 0x01, 0x91, 0x0F, 0x83, 0x89, 0x0F, 0x88, 0xEF, 0x81, 0x0F, 0x80, 0xEF, 0x08, 0x81, 0x0F, 0x02, 0x89, 0x0F, 0x07, 0x81, 0x0F, 0x80, 0x89, 0x10, 0x01, 0x81, 0x10, 0x07, 0x89, 0x10, 0x80, 0x89, 0x30, 0x02, 0x89, 0x10, 0x01, 0x89, 0x30, 0x80, 0x81, 0x30, 0x02, 0x89, 0x30, 0x85, 0x71, 0x0F, 0x58, 0xEE, 0x48, 0xED, 0x30, 0xCB, 0x20, 0xAB, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x4D, 0x20, 0xAA, 0x1F, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x08, 0x20, 0xAB, 0x03, 0x20, 0xCB, 0x03, 0x28, 0xCB, 0x04, 0x28, 0xCC, 0x80, 0x30, 0xCC, 0x01, 0x30, 0xEC, 0x86, 0x30, 0xED, 0x38, 0xEE, 0x30, 0xED, 0x38, 0xED, 0x39, 0x0E, 0x38, 0xEE, 0x41, 0x0E, 0x01, 0x41, 0x0F, 0x01, 0x49, 0x30, 0x80, 0x69, 0x31, 0x01, 0xA1, 0x11, 0x80, 0xA1, 0x12, 0x07, 0xA1, 0x11, 0x83, 0xA1, 0x12, 0x99, + 0x31, 0x99, 0x11, 0x63, 0x97, 0x04, 0x07, 0xFF, 0x83, 0x07, 0xFE, 0x5C, 0x14, 0x99, 0x31, 0x99, 0x11, 0x02, 0x99, 0x31, 0x81, 0x91, 0x31, 0x41, 0x0F, 0x01, 0x39, 0x0E, 0x01, 0x30, 0xED, 0x80, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x81, 0x28, 0xAB, 0x20, 0xCB, 0x04, 0x20, 0xAB, 0x61, 0x20, 0xAA, 0x81, 0x91, 0x0F, 0x98, 0xEF, 0x01, 0x91, 0x0F, 0x85, 0x98, 0xEF, 0x99, 0x0F, 0x91, 0x0F, 0x89, 0x0F, 0x88, 0xEF, 0x80, 0xEF, 0x0B, 0x81, 0x0F, 0x80, 0x89, 0x0F, 0x02, 0x81, 0x0F, 0x01, 0x89, 0x0F, 0x01, 0x81, 0x0F, 0x80, 0x81, 0x10, 0x01, 0x89, 0x10, 0x01, 0x81, 0x10, 0x80, 0x89, 0x10, 0x01, 0x81, 0x10, 0x02, 0x89, 0x10, 0x01, 0x89, 0x30, 0x80, 0x89, 0x10, 0x08, 0x89, 0x30, 0x84, 0x81, 0x30, 0x71, 0x0F, 0x58, 0xED, 0x40, 0xED, 0x30, 0xCB, 0x01, 0x20, 0xAB, 0x7F, 0x20, 0xAA, 0x4D, 0x20, 0xAA, 0x06, 0x20, 0xAB, 0x05, 0x20, 0xAA, 0x1F, 0x20, 0xAB, 0x02, 0x20, 0xCB, 0x05, 0x28, 0xCB, 0x03, 0x28, 0xCC, 0x81, 0x30, 0xCC, 0x30, 0xCD, 0x01, 0x30, 0xED, 0x82, 0x38, 0xED, 0x30, 0xEE, 0x38, 0xEE, 0x01, 0x39, 0x0E, 0x01, 0x41, 0x0F, 0x84, 0x41, 0x30, 0x49, 0x30, 0x59, 0x31, 0x79, 0x11, 0x91, 0x31, 0x08, 0xA1, 0x11, 0x83, 0x99, 0x31, 0xA1, 0x11, 0x99, 0x31, 0x54, 0x98, 0x03, 0x07, 0xFF, 0x81, 0x07, 0xFE, 0x35, 0xF5, 0x05, 0x99, 0x31, 0x80, 0x51, 0x0F, 0x01, 0x39, 0x0E, 0x81, 0x38, 0xED, 0x30, 0xED, 0x01, 0x30, 0xCC, 0x80, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x81, 0x28, 0xAB, 0x20, 0xCB, 0x04, 0x20, 0xAB, 0x61, 0x20, 0xAA, 0x80, 0x89, + 0x0F, 0x07, 0x88, 0xEF, 0x81, 0x89, 0x0F, 0x81, 0x0F, 0x03, 0x80, 0xEF, 0x02, 0x81, 0x0F, 0x80, 0x80, 0xEF, 0x03, 0x81, 0x0F, 0x04, 0x89, 0x0F, 0x09, 0x81, 0x0F, 0x04, 0x89, 0x10, 0x80, 0x89, 0x0F, 0x01, 0x89, 0x10, 0x07, 0x89, 0x30, 0x80, 0x89, 0x10, 0x02, 0x89, 0x30, 0x85, 0x81, 0x30, 0x68, 0xEF, 0x50, 0xED, 0x40, 0xCC, 0x28, 0xCB, 0x20, 0xAB, 0x03, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x03, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x10, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x0C, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x07, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x82, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x10, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xAB, 0x0F, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x04, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x09, 0x20, 0xAA, 0x08, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x18, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x81, 0x20, 0xAB, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x03, 0x20, 0xAA, 0x07, 0x20, 0xAB, 0x08, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x08, 0x20, 0xAA, 0x0D, 0x20, 0xAB, 0x85, 0x20, 0xCB, 0x28, 0xAB, 0x28, 0xCB, 0x20, 0xCB, 0x28, 0xAB, 0x28, 0xCB, 0x05, 0x28, + 0xCC, 0x81, 0x30, 0xCC, 0x30, 0xCD, 0x01, 0x30, 0xED, 0x80, 0x38, 0xED, 0x01, 0x38, 0xEE, 0x80, 0x39, 0x0E, 0x01, 0x41, 0x0F, 0x81, 0x41, 0x2F, 0x41, 0x30, 0x01, 0x49, 0x30, 0x81, 0x61, 0x31, 0x89, 0x31, 0x02, 0xA1, 0x11, 0x80, 0xA1, 0x31, 0x01, 0xA1, 0x11, 0x80, 0x99, 0x31, 0x03, 0xA1, 0x11, 0x80, 0x3D, 0x7A, 0x02, 0x07, 0xFF, 0x82, 0x07, 0xFE, 0x07, 0xF6, 0x99, 0x11, 0x04, 0x99, 0x31, 0x86, 0x79, 0x11, 0x39, 0x0E, 0x38, 0xEE, 0x30, 0xEE, 0x30, 0xED, 0x30, 0xCD, 0x30, 0xCC, 0x01, 0x28, 0xCC, 0x80, 0x28, 0xCB, 0x01, 0x28, 0xAB, 0x01, 0x20, 0xAB, 0x82, 0x20, 0xCA, 0x20, 0xAB, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xAB, 0x09, 0x20, 0xAA, 0x09, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x81, 0x20, 0xAB, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x05, 0x20, 0xAB, 0x0A, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x1C, 0x20, 0xAA, 0x80, 0x18, 0xAA, 0x05, 0x20, 0xAA, 0x01, 0x78, 0xEE, 0x02, 0x80, 0xEE, 0x80, 0x78, 0xEE, 0x01, 0x80, 0xEE, 0x02, 0x80, 0xEF, 0x82, 0x80, 0xEE, 0x80, 0xEF, 0x81, 0x0F, 0x03, 0x80, 0xEF, 0x81, 0x81, 0x0F, 0x80, 0xEF, 0x05, 0x81, 0x0F, 0x01, 0x89, 0x0F, 0x07, 0x81, 0x0F, 0x01, 0x89, 0x0F, 0x86, 0x89, 0x10, 0x81, 0x10, 0x81, 0x30, 0x89, 0x10, 0x81, 0x0F, 0x81, 0x10, 0x81, 0x0F, 0x02, 0x89, 0x10, 0x01, 0x89, 0x30, 0x80, 0x89, 0x10, 0x03, 0x89, 0x30, 0x84, 0x81, 0x30, + 0x89, 0x30, 0x89, 0x10, 0x89, 0x30, 0x81, 0x30, 0x02, 0x89, 0x30, 0x85, 0x81, 0x10, 0x69, 0x0F, 0x50, 0xED, 0x38, 0xCC, 0x28, 0xAB, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x20, 0xCB, 0x20, 0xAB, 0x15, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xCB, 0x01, 0x20, 0xAA, 0x08, 0x20, 0xAB, 0x0E, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x04, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x12, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x05, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x13, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xCA, 0x02, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x0F, 0x20, 0xAA, 0x84, 0x20, 0xAB, 0x20, 0xAA, 0x18, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x0F, 0x20, 0xAA, 0x08, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x11, 0x20, 0xAA, 0x08, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xCA, 0x01, 0x20, 0xAA, 0x81, 0x20, 0xAB, 0x20, 0xAA, 0x08, 0x20, 0xAB, 0x09, 0x20, 0xAA, 0x05, 0x20, 0xAB, 0x81, 0x28, 0xCB, 0x20, 0xAB, 0x01, 0x20, 0xCB, 0x01, 0x28, 0xCB, 0x04, 0x28, 0xCC, 0x81, 0x30, 0xCC, 0x30, 0xEC, 0x02, 0x30, 0xED, 0x01, 0x38, 0xEE, 0x01, 0x39, 0x0E, 0x02, 0x41, 0x0F, 0x01, 0x49, 0x30, 0x82, 0x51, 0x31, 0x61, 0x31, 0x99, 0x11, 0x02, 0xA1, 0x11, 0x80, 0x99, 0x31, 0x01, 0xA1, 0x11, 0x84, 0xA1, 0x12, 0x99, 0x31, 0x99, 0x11, 0x91, 0x92, 0x1E, 0xBD, 0x01, 0x07, 0xFF, + 0x82, 0x07, 0xFE, 0x07, 0xF6, 0x7A, 0x71, 0x01, 0x99, 0x31, 0x80, 0x99, 0x32, 0x01, 0x99, 0x31, 0x82, 0x91, 0x11, 0x41, 0x0E, 0x38, 0xEE, 0x02, 0x30, 0xED, 0x01, 0x28, 0xCC, 0x01, 0x28, 0xCB, 0x81, 0x20, 0xAB, 0x28, 0xAB, 0x02, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x10, 0x20, 0xAA, 0x81, 0x20, 0xAB, 0x20, 0xCA, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x13, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x03, 0x20, 0xAB, 0x18, 0x20, 0xAA, 0x80, 0x20, 0x8A, 0x06, 0x20, 0xAA, 0x03, 0x78, 0xEE, 0x80, 0x80, 0xEE, 0x01, 0x78, 0xEE, 0x01, 0x80, 0xEE, 0x01, 0x80, 0xEF, 0x80, 0x80, 0xEE, 0x04, 0x80, 0xEF, 0x82, 0x81, 0x0F, 0x81, 0x0E, 0x81, 0x0F, 0x03, 0x80, 0xEF, 0x06, 0x81, 0x0F, 0x07, 0x89, 0x0F, 0x81, 0x81, 0x10, 0x81, 0x0F, 0x01, 0x89, 0x0F, 0x02, 0x81, 0x0F, 0x80, 0x89, 0x0F, 0x04, 0x89, 0x10, 0x83, 0x81, 0x30, 0x89, 0x10, 0x89, 0x30, 0x81, 0x30, 0x01, 0x89, 0x30, 0x01, 0x89, 0x10, 0x80, 0x81, 0x30, 0x03, 0x89, 0x30, 0x01, 0x81, 0x30, 0x85, 0x89, 0x30, 0x71, 0x0F, 0x69, 0x0E, 0x50, 0xED, 0x38, 0xCC, 0x28, 0xAB, 0x01, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x82, 0x20, 0xAB, 0x20, 0xCB, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x0B, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x02, 0x20, 0xAB, 0x81, 0x20, 0xAA, 0x20, 0xAB, 0x14, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x01, + 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x02, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x0F, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x05, 0x20, 0xAA, 0x82, 0x20, 0xCA, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x80, 0x20, 0xAB, 0x04, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x05, 0x20, 0xAA, 0x84, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x20, 0xAA, 0x20, 0xAB, 0x01, 0x20, 0xAA, 0x04, 0x20, 0xAB, 0x0B, 0x20, 0xAA, 0x07, 0x20, 0xAB, 0x80, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x83, 0x20, 0xAA, 0x20, 0xCA, 0x20, 0xAA, 0x20, 0xAB, 0x18, 0x20, 0xAA, 0x81, 0x20, 0xAB, 0x20, 0xAA, 0x01, 0x20, 0xAB, 0x80, 0x20, 0xAC, 0x1B, 0x20, 0xCD, 0x80, 0x20, 0xCC, 0x1F, 0x20, 0xCD, 0x03, 0x28, 0xCD, 0x80, 0x20, 0xCD, 0x02, 0x28, 0xCE, 0x83, 0x28, 0xEE, 0x28, 0xCE, 0x28, 0xEE, 0x30, 0xEE, 0x02, 0x30, 0xEF, 0x01, 0x39, 0x0F, 0x01, 0x39, 0x10, 0x81, 0x41, 0x10, 0x41, 0x31, 0x01, 0x49, 0x31, 0x83, 0x49, 0x32, 0x49, 0x52, 0x51, 0x52, 0x91, 0x32, 0x02, 0xA1, 0x11, 0x80, 0x99, 0x12, 0x01, 0x99, 0x31, 0x83, 0x99, 0x11, 0x99, 0x31, 0x99, 0x12, 0x82, 0x74, 0x01, 0x07, 0xFF, 0x85, 0x07, 0xFD, 0x07, 0xF6, 0x5C, 0x32, 0x99, 0x11, 0x99, 0x31, 0x99, 0x32, 0x02, 0x99, 0x31, 0x81, 0x59, 0x10, 0x39, 0x0F, 0x01, 0x30, 0xEF, 0x87, 0x30, 0xEE, 0x30, 0xCE, 0x28, 0xCD, 0x28, 0xEE, 0x28, 0xED, 0x28, 0xCD, 0x20, 0xCD, 0x20, 0xAC, 0x01, 0x20, 0xCD, 0x82, 0x20, 0xAD, 0x20, 0xCD, 0x20, 0xAD, 0x01, 0x20, 0xCC, 0x82, 0x20, 0xAD, 0x20, 0xCC, 0x20, 0xAC, 0x01, 0x20, 0xCC, 0x01, 0x20, + 0xAC, 0x0C, 0x20, 0xCC, 0x87, 0x20, 0xCD, 0x20, 0xAD, 0x18, 0xCC, 0x20, 0xCC, 0x20, 0xAC, 0x20, 0xCC, 0x20, 0xAD, 0x20, 0xCC, 0x01, 0x20, 0xAC, 0x80, 0x20, 0xCC, 0x01, 0x18, 0xCC, 0x03, 0x20, 0xCC, 0x0D, 0x20, 0xAC, 0x80, 0x18, 0xAC, 0x02, 0x20, 0xAC, 0x80, 0x20, 0xCC, 0x01, 0x18, 0xAC, 0x80, 0x20, 0xAC, 0x1C, 0x18, 0xAC, 0x02, 0x18, 0xAB, 0x02, 0x18, 0xAC, 0x80, 0x18, 0xAB, 0x02, 0x78, 0xD0, 0x01, 0x78, 0xF0, 0x80, 0x78, 0xF1, 0x02, 0x78, 0xF0, 0x01, 0x78, 0xF1, 0x84, 0x80, 0xF0, 0x78, 0xF1, 0x78, 0xF0, 0x80, 0xF1, 0x80, 0xD1, 0x03, 0x80, 0xF1, 0x06, 0x80, 0xF0, 0x80, 0x81, 0x11, 0x02, 0x81, 0x10, 0x04, 0x81, 0x11, 0x02, 0x81, 0x10, 0x81, 0x81, 0x11, 0x89, 0x11, 0x01, 0x81, 0x10, 0x81, 0x81, 0x11, 0x81, 0x10, 0x02, 0x89, 0x11, 0x80, 0x81, 0x11, 0x01, 0x89, 0x11, 0x80, 0x89, 0x10, 0x03, 0x89, 0x11, 0x80, 0x81, 0x11, 0x01, 0x81, 0x31, 0x80, 0x89, 0x31, 0x03, 0x89, 0x11, 0x81, 0x89, 0x31, 0x89, 0x11, 0x01, 0x81, 0x31, 0x8A, 0x89, 0x31, 0x81, 0x30, 0x81, 0x31, 0x89, 0x11, 0x89, 0x31, 0x79, 0x31, 0x61, 0x11, 0x49, 0x11, 0x30, 0xD2, 0x18, 0xF2, 0x10, 0xF2, 0x01, 0x18, 0xD2, 0x81, 0x10, 0xF2, 0x18, 0xD2, 0x08, 0x10, 0xF2, 0x01, 0x18, 0xD2, 0x0B, 0x18, 0xF2, 0x80, 0x18, 0xD2, 0x19, 0x18, 0xF2, 0x01, 0x18, 0xF3, 0x81, 0x18, 0xF2, 0x20, 0xF2, 0x01, 0x18, 0xF2, 0x80, 0x20, 0xF2, 0x01, 0x18, 0xF3, 0x0E, 0x20, 0xF3, 0x81, 0x20, 0xF2, 0x18, 0xF3, 0x05, 0x20, 0xF3, 0x80, 0x21, 0x13, 0x01, 0x20, 0xF3, 0x80, 0x21, 0x13, 0x01, 0x20, + 0xF3, 0x80, 0x21, 0x13, 0x05, 0x20, 0xF3, 0x01, 0x21, 0x13, 0x08, 0x20, 0xF3, 0x81, 0x21, 0x13, 0x20, 0xF3, 0x02, 0x21, 0x13, 0x01, 0x28, 0xF3, 0x80, 0x21, 0x13, 0x01, 0x28, 0xF3, 0x80, 0x29, 0x13, 0x06, 0x21, 0x13, 0x0F, 0x29, 0x13, 0x83, 0x21, 0x13, 0x29, 0x13, 0x29, 0x14, 0x21, 0x13, 0x1F, 0x29, 0x13, 0x80, 0x29, 0x14, 0x27, 0x29, 0x13, 0x07, 0x21, 0x13, 0x01, 0x29, 0x13, 0x01, 0x28, 0xF3, 0x04, 0x29, 0x13, 0x84, 0x28, 0xF3, 0x29, 0x13, 0x21, 0x13, 0x29, 0x13, 0x29, 0x14, 0x01, 0x29, 0x13, 0x04, 0x29, 0x14, 0x04, 0x31, 0x34, 0x01, 0x39, 0x34, 0x81, 0x39, 0x35, 0x39, 0x55, 0x01, 0x41, 0x55, 0x01, 0x41, 0x76, 0x83, 0x49, 0x76, 0x49, 0x77, 0x51, 0x76, 0x91, 0x32, 0x01, 0xA1, 0x11, 0x82, 0x99, 0x31, 0x99, 0x11, 0xA1, 0x11, 0x01, 0x99, 0x31, 0x87, 0x99, 0x12, 0x99, 0x31, 0x5C, 0x38, 0x07, 0xFF, 0x07, 0xFD, 0x07, 0xF6, 0x44, 0xF2, 0x99, 0x11, 0x04, 0x99, 0x31, 0x85, 0x79, 0x33, 0x39, 0x55, 0x31, 0x35, 0x31, 0x34, 0x31, 0x14, 0x21, 0x33, 0x01, 0x21, 0x13, 0x01, 0x20, 0xF3, 0x86, 0x21, 0x13, 0x19, 0x12, 0x18, 0xF2, 0x20, 0xF3, 0x18, 0xF2, 0x18, 0xF3, 0x18, 0xF2, 0x02, 0x18, 0xF3, 0x09, 0x18, 0xF2, 0x03, 0x18, 0xD2, 0x04, 0x18, 0xF2, 0x86, 0x18, 0xD2, 0x18, 0xF2, 0x18, 0xD2, 0x10, 0xF2, 0x18, 0xF2, 0x18, 0xD2, 0x10, 0xF2, 0x05, 0x18, 0xF2, 0x01, 0x10, 0xF2, 0x01, 0x18, 0xF2, 0x02, 0x10, 0xF2, 0x02, 0x10, 0xD2, 0x07, 0x18, 0xD2, 0x02, 0x10, 0xD2, 0x18, 0x10, 0xD1, 0x03, 0x10, 0xB1, 0x82, 0x10, 0xD0, 0x10, 0xB0, 0x10, 0xD0, + 0x01, 0x10, 0xB0, 0x81, 0x10, 0xD0, 0x10, 0xB0, 0x04, 0x08, 0xB0, 0x80, 0x00, 0x51, 0x03, 0x00, 0x71, 0x82, 0x00, 0x51, 0x00, 0x71, 0x00, 0x70, 0x01, 0x08, 0x70, 0x01, 0x00, 0x71, 0x84, 0x00, 0x91, 0x08, 0x70, 0x00, 0x71, 0x00, 0x91, 0x00, 0x71, 0x01, 0x08, 0x71, 0x80, 0x08, 0x91, 0x03, 0x08, 0x71, 0x03, 0x08, 0x91, 0x02, 0x08, 0x71, 0x05, 0x08, 0x92, 0x02, 0x08, 0x91, 0x80, 0x08, 0x92, 0x01, 0x08, 0x91, 0x02, 0x08, 0xB1, 0x84, 0x08, 0xB2, 0x10, 0xB2, 0x08, 0xB1, 0x08, 0xB2, 0x08, 0xB1, 0x02, 0x08, 0xB2, 0x04, 0x10, 0xB2, 0x80, 0x08, 0xB2, 0x01, 0x10, 0xB2, 0x01, 0x08, 0xB2, 0x04, 0x10, 0xB2, 0x02, 0x10, 0xD2, 0x80, 0x10, 0xF2, 0x04, 0x10, 0xD2, 0x01, 0x18, 0xD2, 0x80, 0x10, 0xF2, 0x01, 0x18, 0xD2, 0x80, 0x10, 0xD2, 0x07, 0x18, 0xD2, 0x0B, 0x18, 0xF2, 0x80, 0x18, 0xD2, 0x01, 0x18, 0xF2, 0x01, 0x18, 0xD2, 0x13, 0x18, 0xF2, 0x04, 0x18, 0xF3, 0x80, 0x18, 0xF2, 0x01, 0x18, 0xF3, 0x80, 0x20, 0xF2, 0x05, 0x18, 0xF3, 0x12, 0x20, 0xF3, 0x80, 0x21, 0x12, 0x03, 0x20, 0xF3, 0x83, 0x21, 0x13, 0x20, 0xF2, 0x20, 0xF3, 0x20, 0xF2, 0x0F, 0x20, 0xF3, 0x86, 0x21, 0x13, 0x28, 0xF3, 0x21, 0x13, 0x20, 0xF3, 0x21, 0x13, 0x28, 0xF3, 0x20, 0xF3, 0x06, 0x21, 0x13, 0x01, 0x28, 0xF3, 0x02, 0x21, 0x13, 0x0C, 0x29, 0x13, 0x80, 0x21, 0x13, 0x02, 0x29, 0x13, 0x80, 0x29, 0x14, 0x01, 0x29, 0x13, 0x80, 0x28, 0xF3, 0x1C, 0x29, 0x13, 0x80, 0x28, 0xF3, 0x1C, 0x29, 0x13, 0x80, 0x21, 0x13, 0x01, 0x29, 0x13, 0x80, 0x29, 0x14, 0x08, 0x29, 0x13, 0x0B, 0x21, + 0x13, 0x80, 0x29, 0x13, 0x01, 0x28, 0xF3, 0x81, 0x29, 0x13, 0x21, 0x13, 0x01, 0x29, 0x13, 0x01, 0x21, 0x13, 0x82, 0x28, 0xF3, 0x29, 0x13, 0x21, 0x13, 0x07, 0x29, 0x14, 0x02, 0x31, 0x34, 0x80, 0x31, 0x35, 0x01, 0x39, 0x35, 0x01, 0x39, 0x55, 0x89, 0x41, 0x55, 0x41, 0x56, 0x41, 0x76, 0x49, 0x76, 0x49, 0x56, 0x51, 0x76, 0x91, 0x32, 0xA1, 0x11, 0xA1, 0x12, 0xA1, 0x11, 0x01, 0x99, 0x31, 0x87, 0x99, 0x11, 0x99, 0x32, 0x99, 0x31, 0x99, 0x11, 0x2E, 0x5C, 0x07, 0xFC, 0x07, 0xF6, 0x2E, 0x53, 0x02, 0x99, 0x31, 0x01, 0x99, 0x11, 0x81, 0x99, 0x31, 0x91, 0x32, 0x02, 0x31, 0x34, 0x82, 0x29, 0x34, 0x29, 0x14, 0x29, 0x13, 0x01, 0x21, 0x13, 0x86, 0x20, 0xF3, 0x21, 0x12, 0x20, 0xF3, 0x20, 0xD3, 0x19, 0x12, 0x18, 0xF2, 0x18, 0xF3, 0x02, 0x18, 0xF2, 0x82, 0x18, 0xD2, 0x18, 0xF2, 0x20, 0xF2, 0x07, 0x18, 0xF2, 0x03, 0x18, 0xD2, 0x03, 0x18, 0xF2, 0x80, 0x18, 0xD2, 0x03, 0x18, 0xF2, 0x01, 0x10, 0xF2, 0x01, 0x18, 0xF2, 0x86, 0x18, 0xD2, 0x18, 0xF2, 0x10, 0xF2, 0x18, 0xF2, 0x18, 0xD2, 0x10, 0xF2, 0x18, 0xF2, 0x05, 0x10, 0xF2, 0x01, 0x10, 0xD2, 0x01, 0x10, 0xF2, 0x06, 0x10, 0xD2, 0x01, 0x10, 0xD1, 0x80, 0x10, 0xD2, 0x13, 0x10, 0xD1, 0x07, 0x10, 0xB0, 0x80, 0x08, 0xB0, 0x01, 0x10, 0xB0, 0x01, 0x08, 0xB0, 0x82, 0x10, 0xB0, 0x10, 0xD0, 0x08, 0xD0, 0x03, 0x08, 0xB0, 0x01, 0x0C, 0xDC, 0x88, 0x0C, 0xDB, 0x0C, 0xDC, 0x0C, 0xFB, 0x0C, 0xDC, 0x14, 0xDC, 0x14, 0xFC, 0x0C, 0xDC, 0x14, 0xFC, 0x14, 0xDC, 0x01, 0x0C, 0xFC, 0x81, 0x14, 0xFC, 0x0C, 0xFC, 0x06, + 0x14, 0xFC, 0x0F, 0x15, 0x1C, 0x03, 0x15, 0x3C, 0x80, 0x15, 0x1C, 0x09, 0x15, 0x3C, 0x80, 0x15, 0x5C, 0x01, 0x15, 0x3C, 0x02, 0x1D, 0x5C, 0x02, 0x15, 0x5C, 0x04, 0x1D, 0x5C, 0x80, 0x15, 0x5C, 0x07, 0x1D, 0x5C, 0x80, 0x15, 0x7C, 0x0E, 0x1D, 0x7C, 0x07, 0x1D, 0x9C, 0x03, 0x1D, 0x9D, 0x84, 0x25, 0x9C, 0x1D, 0xBC, 0x1D, 0x9D, 0x25, 0x9D, 0x1D, 0x9C, 0x04, 0x25, 0x9C, 0x0D, 0x25, 0xBD, 0x01, 0x25, 0xDD, 0x01, 0x25, 0xBD, 0x80, 0x1D, 0xDD, 0x02, 0x25, 0xDD, 0x80, 0x25, 0xBD, 0x08, 0x25, 0xDD, 0x0B, 0x25, 0xFD, 0x80, 0x2D, 0xFD, 0x03, 0x25, 0xFD, 0x04, 0x2D, 0xFD, 0x81, 0x25, 0xFD, 0x2D, 0xFE, 0x01, 0x2D, 0xFD, 0x11, 0x2E, 0x1D, 0x80, 0x2E, 0x3E, 0x03, 0x2E, 0x1D, 0x01, 0x2E, 0x3D, 0x02, 0x2E, 0x3E, 0x13, 0x2E, 0x3D, 0x02, 0x2E, 0x3E, 0x80, 0x2E, 0x3D, 0x0B, 0x2E, 0x3E, 0x0F, 0x2E, 0x5E, 0x80, 0x36, 0x5E, 0x02, 0x2E, 0x5E, 0x80, 0x2E, 0x3E, 0x01, 0x36, 0x5E, 0x80, 0x2E, 0x5D, 0x09, 0x2E, 0x5E, 0x0D, 0x2E, 0x3E, 0x02, 0x2E, 0x3D, 0x84, 0x2E, 0x3E, 0x2E, 0x3D, 0x2E, 0x3E, 0x2E, 0x3D, 0x36, 0x3D, 0x13, 0x2E, 0x3D, 0x10, 0x2E, 0x1D, 0x04, 0x36, 0x1D, 0x04, 0x3E, 0x1D, 0x88, 0x3E, 0x1E, 0x46, 0x1E, 0x46, 0x1D, 0x4D, 0xFE, 0x4D, 0xFD, 0x4E, 0x3E, 0x4D, 0xFE, 0x55, 0xDD, 0x92, 0x14, 0x02, 0x99, 0x31, 0x81, 0x99, 0x32, 0x99, 0x31, 0x01, 0x99, 0x11, 0x82, 0x99, 0x31, 0x7A, 0x74, 0x07, 0xFB, 0x01, 0x07, 0xF6, 0x01, 0x99, 0x31, 0x81, 0x99, 0x11, 0x99, 0x32, 0x02, 0x99, 0x31, 0x81, 0x4C, 0xFB, 0x3D, 0xFE, 0x01, 0x35, 0xDD, 0x03, 0x2D, + 0xDD, 0x01, 0x25, 0xDD, 0x01, 0x25, 0xBD, 0x01, 0x25, 0xDD, 0x81, 0x25, 0xBD, 0x25, 0xDC, 0x02, 0x25, 0xBD, 0x81, 0x1D, 0xBD, 0x25, 0xBC, 0x01, 0x1D, 0xBD, 0x05, 0x1D, 0xBC, 0x06, 0x1D, 0x9D, 0x01, 0x1D, 0x9C, 0x80, 0x1D, 0xBC, 0x03, 0x1D, 0x9C, 0x83, 0x1D, 0x9D, 0x1D, 0x9C, 0x1D, 0x9D, 0x1D, 0x9C, 0x01, 0x1D, 0x7C, 0x80, 0x1D, 0x7D, 0x0C, 0x1D, 0x7C, 0x05, 0x1D, 0x5C, 0x80, 0x15, 0x7C, 0x05, 0x1D, 0x5C, 0x02, 0x15, 0x5C, 0x80, 0x1D, 0x5C, 0x10, 0x15, 0x3C, 0x04, 0x15, 0x1C, 0x02, 0x15, 0x1B, 0x07, 0x15, 0x1C, 0x04, 0x0B, 0xFB, 0x03, 0x0C, 0x1B, 0x01, 0x14, 0x1B, 0x85, 0x14, 0x5B, 0x14, 0xDC, 0x0C, 0xDB, 0x14, 0xBC, 0x14, 0x3B, 0x14, 0x1B, 0x01, 0x0C, 0x1B, 0x80, 0x14, 0x1C, 0x05, 0x14, 0x1B, 0x0D, 0x14, 0x3B, 0x8C, 0x14, 0x3C, 0x14, 0x3B, 0x14, 0x5B, 0x15, 0x1C, 0x0D, 0x1B, 0x15, 0x1C, 0x14, 0x5B, 0x14, 0x3B, 0x14, 0x5C, 0x14, 0x3B, 0x14, 0x5C, 0x1C, 0x5B, 0x14, 0x3B, 0x04, 0x14, 0x5C, 0x81, 0x14, 0x5B, 0x14, 0x5C, 0x01, 0x14, 0x5B, 0x81, 0x1C, 0x5C, 0x14, 0x5C, 0x02, 0x14, 0x7C, 0x82, 0x14, 0x5C, 0x1C, 0x7C, 0x1C, 0x5C, 0x01, 0x14, 0x7C, 0x84, 0x1C, 0x7C, 0x1C, 0xDC, 0x1D, 0x5C, 0x15, 0x5C, 0x1C, 0xBC, 0x05, 0x1C, 0x7C, 0x80, 0x1C, 0x7B, 0x05, 0x1C, 0x7C, 0x0B, 0x1C, 0x9C, 0x85, 0x24, 0x9C, 0x1C, 0x9C, 0x1D, 0x9D, 0x1D, 0x7C, 0x1C, 0xFC, 0x1C, 0x9C, 0x0F, 0x1C, 0xBC, 0x80, 0x24, 0xBC, 0x01, 0x1C, 0xBC, 0x02, 0x24, 0xBC, 0x80, 0x1C, 0xBC, 0x02, 0x24, 0xDC, 0x83, 0x25, 0x3D, 0x25, 0xBD, 0x25, 0x3D, 0x24, 0xDD, 0x01, + 0x24, 0xBC, 0x0F, 0x24, 0xDD, 0x80, 0x24, 0xFD, 0x01, 0x24, 0xDC, 0x01, 0x24, 0xFD, 0x85, 0x24, 0xFC, 0x24, 0xDD, 0x24, 0xFD, 0x25, 0x1C, 0x25, 0xFD, 0x25, 0x5D, 0x03, 0x24, 0xFD, 0x80, 0x24, 0xFC, 0x07, 0x24, 0xFD, 0x07, 0x2C, 0xFD, 0x80, 0x25, 0x1D, 0x01, 0x24, 0xFD, 0x83, 0x25, 0x1D, 0x2D, 0x1D, 0x24, 0xFD, 0x2C, 0xFD, 0x01, 0x25, 0xBD, 0x83, 0x25, 0x3C, 0x2C, 0xFC, 0x2D, 0x1D, 0x25, 0x1D, 0x01, 0x2C, 0xFD, 0x14, 0x2D, 0x1D, 0x82, 0x2D, 0x1C, 0x2D, 0x5D, 0x2D, 0xDE, 0x08, 0x2D, 0x1D, 0x0F, 0x2D, 0x3D, 0x81, 0x2D, 0x1D, 0x2D, 0x3D, 0x01, 0x2D, 0x1D, 0x80, 0x2E, 0x1D, 0x02, 0x2D, 0x1D, 0x0F, 0x2D, 0x3D, 0x0A, 0x2D, 0x1D, 0x81, 0x2D, 0xDD, 0x2D, 0x5D, 0x12, 0x2D, 0x1D, 0x03, 0x2C, 0xFD, 0x01, 0x2D, 0x1D, 0x02, 0x2C, 0xFD, 0x01, 0x2D, 0xBD, 0x81, 0x2C, 0xFD, 0x2D, 0x1D, 0x01, 0x25, 0x1C, 0x08, 0x2C, 0xFD, 0x04, 0x34, 0xFD, 0x03, 0x3C, 0xFD, 0x80, 0x3D, 0x1D, 0x02, 0x45, 0x1D, 0x01, 0x4D, 0x1D, 0x83, 0x55, 0x3D, 0x91, 0xB3, 0x99, 0x31, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0xA1, 0x12, 0x01, 0x99, 0x31, 0x80, 0x54, 0x96, 0x01, 0x07, 0xF7, 0x81, 0x8A, 0x13, 0xA1, 0x11, 0x01, 0x99, 0x31, 0x83, 0x99, 0x12, 0x99, 0x32, 0x99, 0x11, 0x63, 0x18, 0x01, 0x34, 0xDD, 0x84, 0x2C, 0xDD, 0x2C, 0xDC, 0x2C, 0xDD, 0x2C, 0xBC, 0x24, 0xDC, 0x01, 0x24, 0xBC, 0x82, 0x25, 0x3C, 0x25, 0xBD, 0x25, 0x3C, 0x02, 0x24, 0xBC, 0x81, 0x1C, 0xBC, 0x24, 0xBC, 0x01, 0x1C, 0xBC, 0x80, 0x24, 0xBC, 0x05, 0x1C, 0xBC, 0x0A, 0x1C, 0x9C, 0x84, 0x1C, 0x7C, 0x1C, + 0x9C, 0x1C, 0xDC, 0x1D, 0x7C, 0x1D, 0x5C, 0x01, 0x1C, 0x9C, 0x83, 0x1C, 0x7B, 0x1C, 0x7C, 0x1C, 0x9C, 0x1C, 0x7B, 0x02, 0x1C, 0x9C, 0x81, 0x1C, 0x7C, 0x1C, 0x9C, 0x03, 0x1C, 0x7C, 0x02, 0x14, 0x7C, 0x07, 0x1C, 0x7C, 0x84, 0x1C, 0x5C, 0x1C, 0x9C, 0x15, 0x3C, 0x15, 0x5C, 0x14, 0xBC, 0x01, 0x14, 0x5B, 0x81, 0x1C, 0x5C, 0x14, 0x7B, 0x06, 0x14, 0x5B, 0x01, 0x14, 0x5C, 0x0D, 0x14, 0x3B, 0x83, 0x15, 0x1C, 0x14, 0xFB, 0x14, 0xFC, 0x14, 0x5B, 0x01, 0x14, 0x3B, 0x05, 0x14, 0x1B, 0x03, 0x0A, 0x5A, 0x88, 0x0A, 0x7A, 0x0A, 0x5A, 0x0A, 0xFA, 0x0C, 0x1B, 0x0C, 0xBB, 0x0C, 0x9B, 0x0B, 0x9B, 0x0A, 0x9A, 0x12, 0x5A, 0x03, 0x0A, 0x7A, 0x01, 0x12, 0x7A, 0x80, 0x0A, 0x7A, 0x0E, 0x12, 0x7A, 0x02, 0x12, 0x9A, 0x84, 0x13, 0x3B, 0x14, 0x5B, 0x0D, 0x1C, 0x14, 0x9C, 0x13, 0x1B, 0x01, 0x12, 0x9B, 0x0B, 0x12, 0x9A, 0x81, 0x12, 0x9B, 0x12, 0x9A, 0x05, 0x12, 0x9B, 0x8A, 0x12, 0x9A, 0x12, 0x9B, 0x1A, 0xBB, 0x12, 0x9B, 0x13, 0x1B, 0x14, 0x7C, 0x15, 0x3B, 0x14, 0x5C, 0x12, 0xFB, 0x1A, 0xBB, 0x12, 0xBA, 0x01, 0x1A, 0xBB, 0x80, 0x12, 0xBB, 0x10, 0x1A, 0xBB, 0x03, 0x1A, 0xDB, 0x83, 0x1B, 0x3B, 0x1C, 0xFC, 0x15, 0x7C, 0x1C, 0x1C, 0x11, 0x1A, 0xDB, 0x01, 0x22, 0xDB, 0x03, 0x1A, 0xDB, 0x01, 0x22, 0xDB, 0x89, 0x22, 0xFB, 0x23, 0x1C, 0x1D, 0x1C, 0x1D, 0x5C, 0x23, 0x5B, 0x22, 0xDC, 0x22, 0xDB, 0x22, 0xDC, 0x22, 0xFB, 0x22, 0xFC, 0x01, 0x22, 0xDC, 0x05, 0x22, 0xFC, 0x03, 0x22, 0xFB, 0x07, 0x22, 0xFC, 0x84, 0x23, 0x1B, 0x22, 0xFC, 0x23, 0x3C, 0x25, 0x3C, 0x1C, + 0xFD, 0x01, 0x22, 0xFC, 0x80, 0x22, 0xFB, 0x0F, 0x22, 0xFC, 0x04, 0x23, 0x1C, 0x01, 0x2A, 0xFC, 0x80, 0x23, 0x1C, 0x01, 0x2B, 0x1C, 0x81, 0x25, 0x9C, 0x24, 0x7C, 0x01, 0x23, 0x1C, 0x80, 0x2B, 0x1C, 0x01, 0x23, 0x1C, 0x81, 0x2B, 0x1C, 0x23, 0x1C, 0x15, 0x2B, 0x1C, 0x81, 0x25, 0xBD, 0x2B, 0xBC, 0x19, 0x2B, 0x1C, 0x80, 0x23, 0x1C, 0x01, 0x2B, 0x1C, 0x80, 0x25, 0xDD, 0x1B, 0x2B, 0x1C, 0x83, 0x23, 0x1C, 0x2B, 0x1C, 0x2B, 0x7C, 0x25, 0x9D, 0x01, 0x2B, 0x1C, 0x80, 0x23, 0x1C, 0x07, 0x2B, 0x1C, 0x11, 0x23, 0x1C, 0x86, 0x24, 0x5D, 0x25, 0x9C, 0x22, 0xFC, 0x2A, 0xFC, 0x23, 0x1C, 0x2A, 0xFC, 0x22, 0xFC, 0x01, 0x23, 0x1C, 0x03, 0x2B, 0x1C, 0x80, 0x2A, 0xFC, 0x02, 0x2B, 0x1C, 0x04, 0x33, 0x1C, 0x80, 0x3B, 0x1C, 0x02, 0x3B, 0x3D, 0x87, 0x43, 0x3C, 0x43, 0x3D, 0x4B, 0x3D, 0x43, 0x5D, 0x5A, 0x9A, 0x99, 0x32, 0x99, 0x31, 0x99, 0x11, 0x05, 0x99, 0x31, 0x82, 0x17, 0x37, 0x07, 0xF9, 0x72, 0xD4, 0x05, 0x99, 0x31, 0x86, 0x81, 0x94, 0x33, 0x1C, 0x32, 0xFC, 0x2A, 0xFB, 0x2A, 0xFC, 0x2A, 0xFB, 0x22, 0xFB, 0x01, 0x22, 0xDC, 0x80, 0x22, 0xFB, 0x01, 0x22, 0xDB, 0x83, 0x23, 0x5C, 0x1D, 0x5C, 0x1D, 0x1D, 0x23, 0x1B, 0x02, 0x1A, 0xDB, 0x81, 0x22, 0xDB, 0x1A, 0xBB, 0x05, 0x1A, 0xDB, 0x01, 0x1A, 0xBB, 0x09, 0x1A, 0xDB, 0x02, 0x1A, 0xBB, 0x86, 0x1A, 0xDB, 0x1B, 0xFC, 0x1D, 0x5C, 0x14, 0xDC, 0x1B, 0x3B, 0x1A, 0xBB, 0x1A, 0xDB, 0x01, 0x1A, 0xBB, 0x80, 0x12, 0xDB, 0x0F, 0x1A, 0xBB, 0x8A, 0x12, 0x9B, 0x12, 0xBB, 0x12, 0x9A, 0x12, 0xBA, 0x12, 0x9A, 0x12, + 0xDB, 0x14, 0x3B, 0x15, 0x1B, 0x14, 0xBB, 0x1A, 0xFB, 0x12, 0xBA, 0x15, 0x12, 0x9A, 0x02, 0x12, 0x7A, 0x84, 0x13, 0x1B, 0x14, 0x7C, 0x14, 0xDB, 0x14, 0x5B, 0x13, 0x1A, 0x03, 0x12, 0x7A, 0x03, 0x0B, 0x1A, 0x81, 0x0B, 0x5A, 0x0C, 0x1B, 0x01, 0x0C, 0x9B, 0x80, 0x0B, 0xBA, 0x09, 0x0B, 0x1A, 0x80, 0x0B, 0x3A, 0x01, 0x0B, 0x1A, 0x80, 0x0B, 0x3A, 0x01, 0x0B, 0x1A, 0x01, 0x0B, 0x3A, 0x80, 0x0B, 0x3B, 0x01, 0x0B, 0x3A, 0x81, 0x0B, 0x3B, 0x13, 0x3B, 0x02, 0x0B, 0x3B, 0x86, 0x13, 0x3A, 0x0B, 0x3A, 0x0C, 0x3B, 0x14, 0xDC, 0x14, 0xBC, 0x13, 0xFB, 0x0B, 0x3A, 0x02, 0x13, 0x3B, 0x81, 0x13, 0x5B, 0x0B, 0x5B, 0x05, 0x13, 0x5B, 0x80, 0x13, 0x5A, 0x01, 0x13, 0x5B, 0x80, 0x0B, 0x5A, 0x03, 0x13, 0x5B, 0x80, 0x0B, 0x5B, 0x05, 0x13, 0x5B, 0x84, 0x13, 0xFB, 0x15, 0x1C, 0x14, 0xFC, 0x13, 0xDB, 0x13, 0x5B, 0x03, 0x13, 0x7B, 0x80, 0x13, 0x5B, 0x0C, 0x13, 0x7B, 0x83, 0x1B, 0x7B, 0x13, 0x7B, 0x1B, 0x5B, 0x1B, 0x7B, 0x02, 0x13, 0x7B, 0x89, 0x13, 0x9B, 0x1B, 0xBB, 0x14, 0xFB, 0x15, 0x3C, 0x13, 0xFB, 0x1B, 0x7B, 0x13, 0x9B, 0x1B, 0x7B, 0x1B, 0x7C, 0x1B, 0x9B, 0x01, 0x1B, 0x7B, 0x06, 0x1B, 0x9B, 0x80, 0x1B, 0x9C, 0x02, 0x1B, 0x9B, 0x80, 0x13, 0x9C, 0x06, 0x1B, 0x9B, 0x88, 0x1B, 0x9C, 0x1B, 0x9B, 0x1D, 0x3C, 0x1D, 0x5C, 0x1B, 0xFB, 0x1B, 0x9C, 0x1B, 0xBB, 0x1B, 0x9B, 0x1B, 0xBC, 0x01, 0x1B, 0x9B, 0x07, 0x1B, 0xBB, 0x80, 0x1B, 0xBC, 0x01, 0x1B, 0xBB, 0x82, 0x1B, 0xBC, 0x1B, 0xBB, 0x1B, 0xBC, 0x01, 0x1B, 0xBB, 0x89, 0x1B, 0xBC, 0x1B, 0xBB, 0x1B, 0xBC, + 0x1B, 0xBB, 0x1B, 0xBC, 0x1B, 0xBB, 0x1C, 0xDC, 0x1D, 0x7D, 0x23, 0xFC, 0x1B, 0xDC, 0x05, 0x1B, 0xBC, 0x07, 0x23, 0xBC, 0x01, 0x1B, 0xBC, 0x05, 0x23, 0xDC, 0x80, 0x23, 0xBC, 0x03, 0x23, 0xDC, 0x81, 0x24, 0x7C, 0x1D, 0x9C, 0x1C, 0x23, 0xDC, 0x81, 0x24, 0x1C, 0x25, 0x9D, 0x1D, 0x23, 0xDC, 0x80, 0x1D, 0xBD, 0x1E, 0x23, 0xDC, 0x81, 0x1D, 0xBD, 0x24, 0x3C, 0x19, 0x23, 0xDC, 0x80, 0x23, 0xBC, 0x01, 0x23, 0xDC, 0x81, 0x25, 0x9C, 0x24, 0x7C, 0x01, 0x23, 0xBC, 0x81, 0x23, 0xDC, 0x23, 0xBC, 0x01, 0x23, 0xDC, 0x02, 0x23, 0xBC, 0x03, 0x23, 0xDC, 0x04, 0x2B, 0xDC, 0x03, 0x33, 0xDC, 0x80, 0x3B, 0xDC, 0x01, 0x3B, 0xFC, 0x83, 0x3B, 0xDC, 0x43, 0xFC, 0x43, 0xFD, 0x6B, 0x18, 0x03, 0x99, 0x31, 0x86, 0x99, 0x11, 0x99, 0x31, 0x99, 0x32, 0x99, 0x31, 0x6B, 0x53, 0x07, 0xFA, 0x54, 0x37, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x81, 0x99, 0x12, 0x99, 0x31, 0x02, 0x2B, 0xBC, 0x80, 0x2B, 0xBB, 0x01, 0x23, 0xBB, 0x80, 0x23, 0x9B, 0x04, 0x1B, 0x9B, 0x82, 0x1B, 0xDB, 0x1D, 0x5C, 0x1D, 0x1C, 0x01, 0x1B, 0x9B, 0x82, 0x13, 0x9B, 0x13, 0x9C, 0x1B, 0x9B, 0x01, 0x1B, 0x7B, 0x80, 0x13, 0x9B, 0x01, 0x1B, 0x9B, 0x82, 0x1B, 0x7B, 0x1B, 0x9B, 0x13, 0x9B, 0x01, 0x1B, 0x7B, 0x01, 0x1B, 0x9B, 0x03, 0x13, 0x7B, 0x80, 0x1B, 0x9B, 0x04, 0x13, 0x7B, 0x81, 0x13, 0x9B, 0x1B, 0xBB, 0x01, 0x15, 0x1C, 0x80, 0x13, 0xDB, 0x01, 0x13, 0x7B, 0x80, 0x13, 0x5B, 0x09, 0x13, 0x7B, 0x02, 0x13, 0x5B, 0x80, 0x13, 0x7B, 0x06, 0x13, 0x5B, 0x89, 0x13, 0x5A, 0x13, 0x5B, + 0x13, 0x3B, 0x13, 0xDA, 0x14, 0xFB, 0x0C, 0xFB, 0x14, 0x1B, 0x13, 0x3A, 0x13, 0x5B, 0x13, 0x3B, 0x01, 0x13, 0x5B, 0x81, 0x13, 0x5A, 0x13, 0x5B, 0x03, 0x13, 0x3B, 0x85, 0x13, 0x3A, 0x13, 0x3B, 0x0B, 0x5B, 0x13, 0x3B, 0x13, 0x3A, 0x0B, 0x3A, 0x01, 0x13, 0x3A, 0x02, 0x0B, 0x3B, 0x8C, 0x0B, 0x3A, 0x13, 0x3A, 0x0B, 0x1A, 0x0B, 0x3B, 0x0B, 0x3A, 0x0B, 0xDA, 0x14, 0xBB, 0x0C, 0xBB, 0x0C, 0x1B, 0x0B, 0x3A, 0x0B, 0x3B, 0x0B, 0x3A, 0x0B, 0xDB, 0x01, 0x0C, 0x7B, 0x82, 0x0C, 0x1A, 0x0B, 0x3A, 0x0B, 0x1A, 0x02, 0x0A, 0xFA, 0x16, 0x0B, 0x1A, 0x85, 0x0B, 0x3A, 0x0C, 0x1B, 0x0C, 0xBB, 0x0C, 0x9B, 0x0B, 0xBB, 0x0B, 0x5A, 0x03, 0x0B, 0x3A, 0x80, 0x0B, 0x1A, 0x05, 0x0B, 0x3A, 0x02, 0x13, 0x3A, 0x90, 0x0B, 0x3A, 0x13, 0x3B, 0x0B, 0x3A, 0x13, 0x3A, 0x0B, 0x3A, 0x13, 0x3A, 0x0B, 0x3A, 0x13, 0x5A, 0x13, 0x3A, 0x13, 0x3B, 0x13, 0x3A, 0x13, 0x3B, 0x0B, 0x3A, 0x0C, 0x7B, 0x0C, 0xFB, 0x14, 0x7B, 0x13, 0x7B, 0x01, 0x0B, 0x5B, 0x01, 0x13, 0x5A, 0x80, 0x13, 0x5B, 0x03, 0x13, 0x5A, 0x0B, 0x13, 0x5B, 0x80, 0x13, 0x7B, 0x01, 0x13, 0x5A, 0x86, 0x13, 0x7B, 0x13, 0x5A, 0x13, 0x5B, 0x13, 0x9B, 0x14, 0xBB, 0x14, 0xFB, 0x13, 0xFB, 0x01, 0x13, 0x7B, 0x81, 0x13, 0x5B, 0x13, 0x7B, 0x01, 0x13, 0x7A, 0x0B, 0x13, 0x7B, 0x01, 0x1B, 0x7B, 0x07, 0x13, 0x7B, 0x85, 0x1B, 0xBB, 0x15, 0x3C, 0x15, 0x1C, 0x1B, 0x7B, 0x13, 0x9B, 0x13, 0x7B, 0x01, 0x13, 0x9B, 0x81, 0x1B, 0x9B, 0x13, 0x9B, 0x01, 0x1B, 0x9B, 0x07, 0x13, 0x9B, 0x04, 0x1B, 0x9B, 0x83, 0x13, 0xBB, 0x13, 0x9B, + 0x1B, 0x9B, 0x13, 0x9B, 0x01, 0x1B, 0x9B, 0x85, 0x1B, 0x9C, 0x1C, 0x3B, 0x1D, 0x5C, 0x1C, 0x3C, 0x1B, 0x9B, 0x1B, 0xBB, 0x06, 0x1B, 0x9B, 0x07, 0x1B, 0xBB, 0x80, 0x1B, 0x9B, 0x07, 0x1B, 0xBB, 0x80, 0x1B, 0xBC, 0x01, 0x1B, 0xBB, 0x81, 0x1C, 0x9C, 0x1D, 0x1C, 0x19, 0x1B, 0xBB, 0x80, 0x1B, 0xDB, 0x02, 0x1B, 0xBB, 0x83, 0x1C, 0xFC, 0x1C, 0x7C, 0x1B, 0xBB, 0x1B, 0xDB, 0x17, 0x1B, 0xBC, 0x87, 0x1B, 0xBB, 0x1B, 0xDC, 0x23, 0xBC, 0x1B, 0xBB, 0x1D, 0x7C, 0x1B, 0xBB, 0x1B, 0xDC, 0x1B, 0xBB, 0x0F, 0x1B, 0xBC, 0x07, 0x1B, 0xBB, 0x85, 0x1B, 0xBC, 0x1B, 0x9C, 0x1B, 0xDC, 0x1B, 0xBB, 0x1C, 0x5B, 0x1C, 0xFB, 0x11, 0x1B, 0xBB, 0x07, 0x1B, 0xBC, 0x02, 0x1B, 0xBB, 0x82, 0x1B, 0x9B, 0x1D, 0x3C, 0x1C, 0xBC, 0x01, 0x1B, 0xBB, 0x80, 0x1B, 0x9B, 0x01, 0x1B, 0x9C, 0x01, 0x1B, 0x9B, 0x84, 0x1B, 0xBB, 0x1B, 0x9C, 0x1B, 0x9B, 0x1B, 0xBB, 0x23, 0x9B, 0x04, 0x23, 0xBC, 0x03, 0x2B, 0xBC, 0x01, 0x33, 0xBC, 0x80, 0x33, 0xDC, 0x03, 0x3B, 0xDC, 0x80, 0x81, 0x94, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x83, 0x99, 0x11, 0x99, 0x31, 0x26, 0x59, 0x4C, 0x98, 0x03, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x81, 0x4B, 0x19, 0x23, 0xBC, 0x02, 0x23, 0x9B, 0x02, 0x1B, 0x9B, 0x03, 0x1B, 0x7B, 0x02, 0x13, 0x7B, 0x84, 0x14, 0xBB, 0x15, 0x1B, 0x13, 0xDB, 0x13, 0x7B, 0x13, 0x7A, 0x01, 0x13, 0x7B, 0x80, 0x13, 0x7A, 0x02, 0x13, 0x7B, 0x81, 0x13, 0x5B, 0x13, 0x7B, 0x02, 0x13, 0x5B, 0x04, 0x13, 0x7B, 0x06, 0x13, 0x5B, 0x89, 0x13, 0x5A, 0x13, 0x5B, + 0x13, 0x5A, 0x13, 0xBB, 0x14, 0xDB, 0x14, 0xBB, 0x13, 0x7B, 0x13, 0x5A, 0x13, 0x5B, 0x0B, 0x5A, 0x01, 0x13, 0x5B, 0x83, 0x13, 0x5A, 0x0B, 0x5A, 0x13, 0x5A, 0x13, 0x5B, 0x03, 0x13, 0x5A, 0x01, 0x0B, 0x5A, 0x87, 0x13, 0x5A, 0x13, 0x3A, 0x13, 0x5A, 0x13, 0x3A, 0x0B, 0x3A, 0x13, 0x3B, 0x13, 0x3A, 0x0B, 0x3A, 0x01, 0x13, 0x3B, 0x80, 0x13, 0x3A, 0x01, 0x0B, 0x3A, 0x89, 0x0C, 0x5B, 0x0C, 0xBB, 0x0C, 0x5B, 0x0B, 0x7A, 0x0B, 0x3A, 0x0B, 0x3B, 0x0B, 0x1A, 0x13, 0x3B, 0x0B, 0x3A, 0x0B, 0x1A, 0x02, 0x0B, 0x3A, 0x81, 0x0B, 0x1A, 0x0B, 0x3A, 0x01, 0x0B, 0x1A, 0x80, 0x0B, 0x3A, 0x02, 0x0B, 0x1A, 0x80, 0x0B, 0x3A, 0x02, 0x0B, 0x1A, 0x80, 0x0B, 0x3A, 0x04, 0x0B, 0x1A, 0x80, 0x0B, 0x9A, 0x01, 0x0C, 0x9B, 0x82, 0x0B, 0xDA, 0x02, 0xF9, 0x01, 0xF9, 0x05, 0x09, 0x78, 0x01, 0x09, 0x79, 0x80, 0x09, 0x78, 0x03, 0x09, 0x79, 0x01, 0x01, 0x78, 0x02, 0x09, 0x79, 0x84, 0x09, 0x78, 0x09, 0x79, 0x01, 0x78, 0x09, 0x79, 0x09, 0x78, 0x03, 0x09, 0x79, 0x85, 0x0A, 0x1A, 0x0B, 0x1A, 0x0C, 0x3A, 0x0C, 0x1B, 0x0A, 0xDA, 0x09, 0xF9, 0x06, 0x09, 0x79, 0x01, 0x09, 0x99, 0x80, 0x09, 0x79, 0x01, 0x09, 0x99, 0x80, 0x09, 0x79, 0x0C, 0x09, 0x99, 0x84, 0x09, 0xF9, 0x0B, 0x1A, 0x0C, 0x7B, 0x0C, 0x1B, 0x0A, 0xBA, 0x0A, 0x09, 0x99, 0x80, 0x11, 0x99, 0x04, 0x09, 0x99, 0x80, 0x11, 0x99, 0x01, 0x11, 0xBA, 0x83, 0x11, 0xB9, 0x09, 0xB9, 0x11, 0xBA, 0x11, 0x99, 0x01, 0x11, 0xBA, 0x87, 0x11, 0x99, 0x11, 0xDA, 0x0B, 0x3A, 0x0C, 0x9B, 0x0B, 0xFB, 0x12, 0x7A, 0x11, 0xBA, 0x11, + 0x9A, 0x05, 0x11, 0xBA, 0x80, 0x11, 0x9A, 0x0C, 0x11, 0xBA, 0x80, 0x11, 0x9A, 0x04, 0x11, 0xBA, 0x83, 0x12, 0xBA, 0x14, 0xBB, 0x13, 0xFB, 0x11, 0xDB, 0x06, 0x11, 0xBA, 0x80, 0x11, 0xDA, 0x0A, 0x11, 0xBA, 0x84, 0x11, 0xBB, 0x11, 0xBA, 0x11, 0xDA, 0x11, 0xBA, 0x11, 0xDA, 0x01, 0x11, 0xBA, 0x86, 0x11, 0xDA, 0x11, 0xBA, 0x12, 0x7A, 0x14, 0xDB, 0x13, 0x7B, 0x11, 0xDA, 0x19, 0xBA, 0x0C, 0x11, 0xDA, 0x02, 0x19, 0xDA, 0x80, 0x11, 0xDA, 0x06, 0x11, 0xDB, 0x87, 0x19, 0xDB, 0x11, 0xDA, 0x19, 0xDA, 0x1A, 0x3B, 0x14, 0xFB, 0x1A, 0xFB, 0x19, 0xDA, 0x11, 0xDB, 0x0F, 0x19, 0xDA, 0x07, 0x19, 0xDB, 0x85, 0x19, 0xDA, 0x19, 0xDB, 0x19, 0xDA, 0x1A, 0x1B, 0x15, 0x3C, 0x1A, 0x3B, 0x01, 0x19, 0xDA, 0x07, 0x19, 0xDB, 0x0F, 0x19, 0xDA, 0x01, 0x19, 0xDB, 0x85, 0x19, 0xDA, 0x19, 0xDB, 0x15, 0x3B, 0x19, 0xDB, 0x19, 0xDA, 0x19, 0xDB, 0x17, 0x19, 0xDA, 0x86, 0x11, 0xDB, 0x19, 0xDB, 0x19, 0xDA, 0x19, 0xDB, 0x19, 0xFB, 0x15, 0x3C, 0x12, 0x3A, 0x01, 0x19, 0xDA, 0x04, 0x11, 0xDA, 0x81, 0x19, 0xDA, 0x11, 0xDB, 0x09, 0x19, 0xDB, 0x05, 0x11, 0xBA, 0x86, 0x19, 0xDB, 0x19, 0xBA, 0x11, 0xDA, 0x11, 0xBA, 0x1A, 0xBB, 0x14, 0xFB, 0x1A, 0x5B, 0x01, 0x19, 0xBA, 0x01, 0x11, 0xDA, 0x01, 0x19, 0xDB, 0x82, 0x19, 0xDA, 0x19, 0xDB, 0x19, 0xBA, 0x01, 0x19, 0xDA, 0x02, 0x19, 0xDB, 0x02, 0x21, 0xDB, 0x01, 0x21, 0xFB, 0x03, 0x29, 0xFB, 0x85, 0x31, 0xFB, 0x32, 0x1B, 0x31, 0xFB, 0x32, 0x1B, 0x41, 0xFA, 0x99, 0x12, 0x05, 0x99, 0x31, 0x84, 0x99, 0x12, 0x72, 0xD4, 0x4C, 0x98, + 0x99, 0x31, 0x99, 0x11, 0x02, 0x99, 0x31, 0x84, 0x99, 0x11, 0x99, 0x31, 0x59, 0x96, 0x21, 0xDB, 0x21, 0xDA, 0x02, 0x19, 0xDA, 0x01, 0x11, 0xDA, 0x06, 0x11, 0xBA, 0x86, 0x11, 0xD9, 0x13, 0x7A, 0x14, 0x9B, 0x13, 0x1A, 0x11, 0xBA, 0x11, 0x9A, 0x11, 0xB9, 0x01, 0x11, 0xBA, 0x82, 0x11, 0x9A, 0x11, 0xBA, 0x11, 0x9A, 0x08, 0x11, 0xBA, 0x80, 0x09, 0x99, 0x03, 0x11, 0x99, 0x01, 0x11, 0xBA, 0x89, 0x11, 0x99, 0x09, 0x99, 0x09, 0xB9, 0x09, 0x99, 0x0A, 0x1A, 0x0B, 0xFB, 0x0C, 0x9B, 0x13, 0x1A, 0x09, 0xDA, 0x11, 0x9A, 0x02, 0x09, 0x99, 0x81, 0x11, 0x99, 0x09, 0x9A, 0x14, 0x09, 0x99, 0x86, 0x0A, 0xBA, 0x0B, 0xDA, 0x0C, 0x5B, 0x0B, 0x3A, 0x09, 0xF9, 0x09, 0x99, 0x09, 0x79, 0x04, 0x09, 0x99, 0x02, 0x09, 0x79, 0x82, 0x09, 0x99, 0x09, 0x79, 0x09, 0x99, 0x05, 0x09, 0x79, 0x80, 0x09, 0x78, 0x01, 0x09, 0x79, 0x84, 0x01, 0x78, 0x01, 0x99, 0x01, 0x79, 0x09, 0x79, 0x09, 0x99, 0x0A, 0x02, 0xB9, 0x80, 0x0A, 0xB9, 0x05, 0x02, 0xB9, 0x80, 0x0A, 0xB9, 0x01, 0x02, 0xB9, 0x01, 0x02, 0xD9, 0x84, 0x02, 0xB9, 0x0A, 0xB9, 0x0A, 0xD9, 0x02, 0xD9, 0x0A, 0xD9, 0x01, 0x0A, 0xB9, 0x80, 0x03, 0xBA, 0x01, 0x04, 0x3A, 0x84, 0x03, 0x59, 0x02, 0xD9, 0x0A, 0xD9, 0x02, 0xD9, 0x0A, 0xD9, 0x01, 0x02, 0xD9, 0x02, 0x0A, 0xD9, 0x81, 0x02, 0xD9, 0x0A, 0xD9, 0x01, 0x02, 0xD9, 0x81, 0x0A, 0xDA, 0x0A, 0xFA, 0x01, 0x02, 0xFA, 0x84, 0x02, 0xD9, 0x02, 0xFA, 0x0A, 0xDA, 0x0A, 0xFA, 0x02, 0xFA, 0x01, 0x0A, 0xFA, 0x88, 0x0A, 0xD9, 0x0A, 0xFA, 0x0A, 0xDA, 0x0A, 0xFA, 0x0B, 0x5A, + 0x0C, 0x5B, 0x04, 0x7A, 0x0B, 0xBA, 0x0A, 0xF9, 0x02, 0x0A, 0xFA, 0x01, 0x0A, 0xF9, 0x0C, 0x0A, 0xFA, 0x01, 0x0B, 0x1A, 0x01, 0x0A, 0xFA, 0x83, 0x0B, 0x1A, 0x0A, 0xFA, 0x0B, 0x1A, 0x0A, 0xFA, 0x01, 0x0B, 0x1A, 0x83, 0x0C, 0x3A, 0x0C, 0x9A, 0x0B, 0xDA, 0x0B, 0x1A, 0x01, 0x0A, 0xFA, 0x12, 0x0B, 0x1A, 0x80, 0x0B, 0x3A, 0x01, 0x0B, 0x1A, 0x80, 0x0B, 0x3A, 0x02, 0x0B, 0x1A, 0x82, 0x0B, 0xDB, 0x14, 0xBB, 0x0B, 0xFA, 0x01, 0x0B, 0x1A, 0x01, 0x0B, 0x3A, 0x01, 0x0B, 0x1A, 0x01, 0x0B, 0x3A, 0x82, 0x13, 0x1A, 0x0B, 0x3A, 0x0B, 0x1A, 0x07, 0x0B, 0x3A, 0x01, 0x13, 0x3B, 0x80, 0x13, 0x3A, 0x04, 0x0B, 0x3A, 0x84, 0x13, 0x3A, 0x0B, 0x3A, 0x13, 0x7A, 0x0C, 0xDB, 0x0C, 0x5B, 0x01, 0x13, 0x3B, 0x80, 0x0B, 0x3A, 0x06, 0x13, 0x3A, 0x0A, 0x13, 0x3B, 0x03, 0x13, 0x5B, 0x01, 0x13, 0x3B, 0x87, 0x13, 0x5A, 0x0B, 0x5B, 0x13, 0x3B, 0x14, 0x3A, 0x14, 0x7B, 0x13, 0x5B, 0x13, 0x5A, 0x13, 0x3B, 0x11, 0x13, 0x5A, 0x07, 0x13, 0x5B, 0x82, 0x13, 0x5A, 0x13, 0xBB, 0x14, 0xDB, 0x1B, 0x13, 0x5B, 0x86, 0x13, 0x5A, 0x13, 0x5B, 0x13, 0x3B, 0x14, 0xFB, 0x13, 0x5A, 0x13, 0x5B, 0x13, 0x5A, 0x0F, 0x13, 0x5B, 0x07, 0x13, 0x5A, 0x82, 0x13, 0x3A, 0x13, 0x5B, 0x13, 0x5A, 0x01, 0x13, 0x5B, 0x82, 0x14, 0x9B, 0x13, 0xFB, 0x13, 0x3A, 0x01, 0x13, 0x5B, 0x02, 0x13, 0x5A, 0x02, 0x13, 0x5B, 0x0F, 0x13, 0x3B, 0x86, 0x13, 0x3A, 0x13, 0x3B, 0x13, 0x3A, 0x13, 0x5A, 0x13, 0x3A, 0x14, 0x3B, 0x14, 0x7B, 0x03, 0x13, 0x3A, 0x80, 0x13, 0x3B, 0x01, 0x13, 0x3A, 0x80, 0x13, 0x3B, 0x02, + 0x13, 0x3A, 0x80, 0x13, 0x5B, 0x01, 0x13, 0x3B, 0x80, 0x1B, 0x3B, 0x01, 0x1B, 0x5B, 0x81, 0x1B, 0x3B, 0x1B, 0x5B, 0x03, 0x23, 0x5B, 0x01, 0x2B, 0x5B, 0x01, 0x2B, 0x7B, 0x82, 0x33, 0x5B, 0x72, 0x35, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x72, 0xD5, 0x01, 0x99, 0x32, 0x04, 0x99, 0x31, 0x80, 0x71, 0xB4, 0x01, 0x1B, 0x3B, 0x82, 0x13, 0x3A, 0x13, 0x3B, 0x13, 0x3A, 0x03, 0x13, 0x1A, 0x02, 0x0B, 0x1A, 0x86, 0x0B, 0x3A, 0x0A, 0xFA, 0x0B, 0x1A, 0x0A, 0xFA, 0x0B, 0xDA, 0x0C, 0xBB, 0x0B, 0xDA, 0x0D, 0x0B, 0x1A, 0x04, 0x0A, 0xFA, 0x80, 0x0B, 0x1A, 0x08, 0x0A, 0xFA, 0x83, 0x0B, 0xBA, 0x04, 0x9B, 0x0C, 0x3A, 0x0B, 0x3A, 0x05, 0x0A, 0xFA, 0x81, 0x02, 0xFA, 0x0A, 0xFA, 0x01, 0x0A, 0xDA, 0x06, 0x0A, 0xFA, 0x80, 0x02, 0xDA, 0x02, 0x0A, 0xDA, 0x01, 0x02, 0xD9, 0x82, 0x02, 0xDA, 0x02, 0xFA, 0x02, 0xD9, 0x01, 0x0A, 0xD9, 0x80, 0x0B, 0x5A, 0x01, 0x04, 0x5A, 0x81, 0x03, 0x3A, 0x0A, 0xD9, 0x01, 0x02, 0xD9, 0x81, 0x02, 0xDA, 0x0A, 0xDA, 0x05, 0x02, 0xD9, 0x01, 0x0A, 0xB9, 0x01, 0x02, 0xD9, 0x80, 0x0A, 0xB9, 0x04, 0x02, 0xD9, 0x85, 0x0A, 0xB9, 0x02, 0xB9, 0x02, 0xD9, 0x02, 0xB9, 0x02, 0xD9, 0x0A, 0xB9, 0x01, 0x02, 0x99, 0x02, 0x02, 0x98, 0x03, 0x02, 0x99, 0x80, 0x02, 0x98, 0x0A, 0x02, 0x99, 0x87, 0x02, 0xB8, 0x02, 0xB9, 0x02, 0x99, 0x02, 0xB8, 0x03, 0x9A, 0x04, 0x1A, 0x03, 0xFA, 0x03, 0x39, 0x16, 0x02, 0xB9, 0x80, 0x02, 0xD9, 0x01, 0x02, 0xB9, 0x86, 0x02, 0xD9, 0x02, 0xB9, 0x02, 0xD9, 0x03, 0xBA, 0x04, 0x3A, + 0x03, 0xFA, 0x02, 0xF9, 0x01, 0x02, 0xD9, 0x01, 0x0A, 0xB9, 0x81, 0x02, 0xD9, 0x02, 0xB9, 0x04, 0x02, 0xD9, 0x01, 0x0A, 0xD9, 0x0A, 0x02, 0xD9, 0x89, 0x02, 0xF9, 0x02, 0xD9, 0x02, 0xDA, 0x0A, 0xDA, 0x0A, 0xFA, 0x0B, 0xFA, 0x0C, 0x5B, 0x0B, 0xFA, 0x0A, 0xD9, 0x02, 0xFA, 0x01, 0x02, 0xF9, 0x85, 0x0A, 0xF9, 0x02, 0xF9, 0x0A, 0xF9, 0x02, 0xD9, 0x02, 0xF9, 0x0A, 0xF9, 0x0F, 0x0A, 0xFA, 0x80, 0x0A, 0xF9, 0x02, 0x0A, 0xFA, 0x85, 0x0C, 0x1A, 0x0C, 0x7B, 0x0B, 0x5A, 0x0A, 0xFA, 0x0A, 0xF9, 0x0B, 0x1A, 0x02, 0x0A, 0xFA, 0x80, 0x0B, 0x1A, 0x01, 0x0A, 0xFA, 0x80, 0x0B, 0x1A, 0x07, 0x0A, 0xFA, 0x02, 0x0B, 0x1A, 0x81, 0x03, 0x1A, 0x0A, 0xFA, 0x01, 0x0B, 0x1A, 0x80, 0x0A, 0xFA, 0x02, 0x0B, 0x1A, 0x84, 0x0A, 0xFA, 0x0C, 0x3A, 0x0C, 0x5A, 0x0B, 0x1A, 0x0A, 0xFA, 0x1C, 0x0B, 0x1A, 0x81, 0x0C, 0x5B, 0x0C, 0x1A, 0x1D, 0x0B, 0x1A, 0x83, 0x0B, 0x3A, 0x0C, 0x7B, 0x0B, 0x7A, 0x0B, 0x3A, 0x1D, 0x0B, 0x1A, 0x82, 0x0C, 0xBB, 0x0B, 0x1A, 0x0B, 0x3A, 0x1D, 0x0B, 0x1A, 0x81, 0x0B, 0x7A, 0x0C, 0xBB, 0x1E, 0x0B, 0x1A, 0x81, 0x0B, 0xDA, 0x0C, 0x7B, 0x0B, 0x0B, 0x1A, 0x04, 0x13, 0x1A, 0x80, 0x1B, 0x1A, 0x03, 0x1B, 0x3A, 0x01, 0x23, 0x3A, 0x83, 0x23, 0x3B, 0x2B, 0x3B, 0x2B, 0x5B, 0x3A, 0xD9, 0x02, 0x99, 0x31, 0x80, 0x99, 0x12, 0x04, 0x99, 0x31, 0x80, 0x99, 0x11, 0x05, 0x99, 0x31, 0x81, 0x89, 0x93, 0x1B, 0x1A, 0x01, 0x13, 0x1A, 0x80, 0x12, 0xFA, 0x0B, 0x0A, 0xFA, 0x89, 0x02, 0xFA, 0x0A, 0xFA, 0x03, 0x5A, 0x04, 0x5A, 0x0C, 0x3A, 0x0A, 0xFA, 0x02, 0xDA, + 0x0A, 0xFA, 0x0A, 0xF9, 0x02, 0xF9, 0x02, 0x0A, 0xFA, 0x0E, 0x02, 0xD9, 0x82, 0x0A, 0xD9, 0x02, 0xD9, 0x02, 0xDA, 0x01, 0x0A, 0xD9, 0x8A, 0x02, 0xBA, 0x02, 0xD9, 0x03, 0x9A, 0x04, 0x3A, 0x03, 0xDA, 0x02, 0xD9, 0x0A, 0xB9, 0x02, 0xD9, 0x0A, 0xB9, 0x02, 0xB9, 0x02, 0xD9, 0x01, 0x02, 0xB9, 0x04, 0x02, 0xD9, 0x81, 0x02, 0xB9, 0x0A, 0xB9, 0x03, 0x02, 0xB9, 0x82, 0x02, 0xD9, 0x02, 0xB9, 0x02, 0xD9, 0x06, 0x02, 0xB9, 0x83, 0x02, 0xD9, 0x03, 0xFA, 0x04, 0x1A, 0x03, 0xB9, 0x01, 0x02, 0xB9, 0x80, 0x02, 0x99, 0x03, 0x02, 0xB9, 0x80, 0x02, 0x99, 0x03, 0x02, 0xB9, 0x80, 0x02, 0x99, 0x01, 0x02, 0xB9, 0x06, 0x02, 0x99, 0x01, 0x02, 0xB8, 0x80, 0x01, 0x17, 0x04, 0x01, 0x37, 0x80, 0x01, 0x17, 0x02, 0x01, 0x37, 0x01, 0x01, 0x17, 0x02, 0x01, 0x37, 0x01, 0x01, 0x17, 0x04, 0x01, 0x37, 0x85, 0x01, 0x98, 0x02, 0xB8, 0x03, 0x99, 0x03, 0x59, 0x02, 0x58, 0x01, 0x98, 0x01, 0x01, 0x37, 0x81, 0x01, 0x17, 0x01, 0x58, 0x01, 0x01, 0x37, 0x81, 0x01, 0x38, 0x01, 0x37, 0x01, 0x01, 0x38, 0x02, 0x01, 0x37, 0x08, 0x01, 0x38, 0x01, 0x01, 0x37, 0x01, 0x01, 0x38, 0x82, 0x01, 0x37, 0x01, 0x58, 0x02, 0x59, 0x01, 0x03, 0x99, 0x80, 0x02, 0x58, 0x01, 0x01, 0x58, 0x01, 0x01, 0x38, 0x85, 0x01, 0x58, 0x01, 0x38, 0x01, 0x58, 0x01, 0x37, 0x01, 0x38, 0x01, 0x58, 0x01, 0x01, 0x38, 0x0B, 0x01, 0x58, 0x80, 0x01, 0x38, 0x02, 0x01, 0x58, 0x84, 0x01, 0x38, 0x02, 0x38, 0x03, 0xB9, 0x03, 0xDA, 0x02, 0x59, 0x17, 0x01, 0x58, 0x81, 0x01, 0x38, 0x01, 0x78, 0x01, 0x01, 0x58, 0x85, + 0x01, 0x59, 0x01, 0xB9, 0x03, 0x7A, 0x0B, 0xDA, 0x02, 0x18, 0x09, 0x58, 0x01, 0x01, 0x59, 0x80, 0x09, 0x58, 0x03, 0x01, 0x58, 0x85, 0x09, 0x58, 0x09, 0x59, 0x01, 0x58, 0x01, 0x59, 0x01, 0x79, 0x01, 0x58, 0x03, 0x01, 0x59, 0x03, 0x01, 0x58, 0x8F, 0x09, 0x79, 0x01, 0x79, 0x09, 0x58, 0x09, 0x79, 0x01, 0x59, 0x01, 0x78, 0x01, 0x59, 0x09, 0x58, 0x03, 0x3A, 0x04, 0x1A, 0x01, 0xF9, 0x09, 0x59, 0x01, 0x79, 0x09, 0x58, 0x09, 0x59, 0x01, 0x58, 0x03, 0x01, 0x59, 0x03, 0x09, 0x79, 0x07, 0x01, 0x79, 0x01, 0x09, 0x79, 0x01, 0x09, 0x59, 0x04, 0x09, 0x79, 0x83, 0x0A, 0x79, 0x04, 0x3A, 0x01, 0x99, 0x09, 0x59, 0x01, 0x01, 0x79, 0x10, 0x09, 0x79, 0x07, 0x01, 0x79, 0x85, 0x09, 0x79, 0x01, 0x79, 0x09, 0xB9, 0x0C, 0x3B, 0x01, 0x79, 0x09, 0x79, 0x01, 0x01, 0x79, 0x18, 0x09, 0x79, 0x84, 0x01, 0x79, 0x09, 0x79, 0x01, 0x79, 0x0C, 0x7A, 0x09, 0x79, 0x01, 0x01, 0x79, 0x0F, 0x09, 0x79, 0x09, 0x01, 0x79, 0x03, 0x09, 0x79, 0x81, 0x0B, 0xFA, 0x02, 0x59, 0x04, 0x09, 0x79, 0x80, 0x09, 0x59, 0x11, 0x09, 0x79, 0x8F, 0x01, 0x79, 0x09, 0x58, 0x09, 0x79, 0x01, 0x78, 0x09, 0x58, 0x01, 0x59, 0x09, 0x99, 0x0B, 0xDA, 0x02, 0xD9, 0x01, 0x59, 0x09, 0x59, 0x01, 0x59, 0x09, 0x79, 0x09, 0x59, 0x09, 0x79, 0x09, 0x59, 0x07, 0x09, 0x79, 0x04, 0x11, 0x79, 0x01, 0x19, 0x99, 0x87, 0x19, 0x9A, 0x19, 0x99, 0x21, 0x99, 0x21, 0x9A, 0x21, 0xBA, 0x71, 0x54, 0x99, 0x31, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x03, 0x99, 0x31, 0x80, 0x99, 0x11, 0x04, 0x99, 0x31, 0x02, + 0x11, 0x79, 0x01, 0x09, 0x79, 0x03, 0x09, 0x58, 0x02, 0x01, 0x58, 0x80, 0x09, 0x58, 0x03, 0x01, 0x58, 0x82, 0x01, 0x59, 0x01, 0x58, 0x01, 0xD8, 0x01, 0x03, 0x99, 0x80, 0x01, 0xD9, 0x01, 0x01, 0x58, 0x01, 0x01, 0x38, 0x0F, 0x01, 0x58, 0x80, 0x01, 0x38, 0x01, 0x01, 0x58, 0x80, 0x01, 0x57, 0x03, 0x01, 0x58, 0x87, 0x01, 0x38, 0x02, 0x18, 0x03, 0x79, 0x03, 0xB9, 0x02, 0x58, 0x01, 0x58, 0x01, 0x38, 0x01, 0x58, 0x01, 0x01, 0x38, 0x80, 0x01, 0x58, 0x09, 0x01, 0x38, 0x01, 0x01, 0x37, 0x01, 0x01, 0x38, 0x84, 0x01, 0x37, 0x01, 0x38, 0x01, 0x37, 0x01, 0x38, 0x01, 0x37, 0x02, 0x01, 0x38, 0x85, 0x01, 0x37, 0x02, 0x38, 0x03, 0x59, 0x03, 0x99, 0x02, 0x98, 0x01, 0x78, 0x07, 0x01, 0x37, 0x01, 0x01, 0x17, 0x07, 0x01, 0x37, 0x80, 0x01, 0x17, 0x01, 0x01, 0x37, 0x02, 0x01, 0x16, 0x83, 0x00, 0xF7, 0x00, 0xF6, 0x01, 0x16, 0x01, 0x17, 0x01, 0x01, 0x16, 0x80, 0x01, 0x17, 0x01, 0x01, 0x16, 0x01, 0x01, 0x17, 0x80, 0x01, 0x16, 0x03, 0x01, 0x17, 0x85, 0x01, 0x37, 0x02, 0x38, 0x03, 0x18, 0x03, 0x79, 0x02, 0x97, 0x01, 0x97, 0x04, 0x01, 0x17, 0x81, 0x01, 0x37, 0x01, 0x16, 0x04, 0x01, 0x17, 0x80, 0x01, 0x37, 0x04, 0x01, 0x17, 0x80, 0x01, 0x37, 0x06, 0x01, 0x17, 0x89, 0x01, 0x37, 0x01, 0x17, 0x01, 0x77, 0x02, 0xD8, 0x03, 0x99, 0x03, 0x18, 0x01, 0xD7, 0x01, 0x17, 0x01, 0x37, 0x01, 0x17, 0x03, 0x01, 0x37, 0x83, 0x01, 0x17, 0x01, 0x37, 0x01, 0x17, 0x01, 0x37, 0x01, 0x01, 0x17, 0x0D, 0x01, 0x37, 0x85, 0x01, 0x38, 0x01, 0x37, 0x01, 0xD8, 0x03, 0x39, 0x03, + 0x99, 0x02, 0x38, 0x01, 0x01, 0x37, 0x01, 0x01, 0x38, 0x01, 0x01, 0x37, 0x04, 0x01, 0x38, 0x01, 0x01, 0x37, 0x01, 0x01, 0x38, 0x80, 0x01, 0x37, 0x0B, 0x01, 0x38, 0x86, 0x01, 0x57, 0x01, 0x38, 0x02, 0x78, 0x03, 0xD9, 0x02, 0xB9, 0x01, 0x78, 0x01, 0x58, 0x01, 0x01, 0x38, 0x81, 0x01, 0x58, 0x01, 0x38, 0x01, 0x01, 0x37, 0x04, 0x01, 0x38, 0x81, 0x01, 0x37, 0x01, 0x58, 0x05, 0x01, 0x38, 0x02, 0x01, 0x58, 0x01, 0x01, 0x38, 0x80, 0x09, 0x38, 0x02, 0x01, 0x58, 0x83, 0x01, 0x78, 0x03, 0x39, 0x03, 0x99, 0x01, 0x78, 0x1D, 0x01, 0x58, 0x82, 0x01, 0xD9, 0x03, 0xF9, 0x01, 0xF9, 0x1E, 0x01, 0x58, 0x81, 0x02, 0xD9, 0x03, 0x19, 0x02, 0x01, 0x58, 0x80, 0x01, 0x59, 0x17, 0x01, 0x58, 0x80, 0x09, 0x59, 0x01, 0x01, 0x58, 0x82, 0x01, 0x59, 0x04, 0x1A, 0x09, 0x59, 0x1F, 0x01, 0x58, 0x81, 0x02, 0xB9, 0x03, 0x19, 0x01, 0x01, 0x58, 0x01, 0x01, 0x38, 0x18, 0x01, 0x58, 0x84, 0x01, 0x38, 0x01, 0x58, 0x01, 0xD8, 0x03, 0xF9, 0x01, 0xF8, 0x01, 0x01, 0x38, 0x07, 0x01, 0x58, 0x04, 0x09, 0x58, 0x02, 0x11, 0x58, 0x81, 0x11, 0x78, 0x11, 0x79, 0x03, 0x19, 0x79, 0x82, 0x19, 0x99, 0x21, 0x79, 0x31, 0x78, 0x04, 0x99, 0x31, 0x82, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x07, 0x99, 0x31, 0x82, 0x31, 0x57, 0x09, 0x58, 0x11, 0x58, 0x01, 0x09, 0x58, 0x03, 0x09, 0x38, 0x04, 0x01, 0x38, 0x01, 0x01, 0x37, 0x04, 0x01, 0x38, 0x84, 0x02, 0x98, 0x03, 0xF9, 0x02, 0x98, 0x01, 0x37, 0x01, 0x38, 0x12, 0x01, 0x37, 0x80, 0x01, 0x17, 0x01, 0x01, 0x37, 0x80, 0x01, 0x17, 0x01, 0x01, + 0x37, 0x83, 0x01, 0x38, 0x01, 0x17, 0x01, 0x37, 0x02, 0x38, 0x01, 0x03, 0x79, 0x80, 0x02, 0x38, 0x01, 0x01, 0x37, 0x03, 0x01, 0x17, 0x80, 0x01, 0x37, 0x01, 0x01, 0x17, 0x06, 0x01, 0x37, 0x03, 0x01, 0x17, 0x80, 0x01, 0x37, 0x01, 0x01, 0x17, 0x80, 0x01, 0x36, 0x02, 0x01, 0x17, 0x89, 0x01, 0x36, 0x01, 0x37, 0x01, 0xB7, 0x02, 0xB8, 0x03, 0x99, 0x02, 0xB8, 0x01, 0x97, 0x01, 0x37, 0x01, 0x17, 0x01, 0x37, 0x04, 0x01, 0x17, 0x80, 0x01, 0x16, 0x03, 0x01, 0x17, 0x80, 0x01, 0x16, 0x04, 0x01, 0x17, 0x0D, 0x00, 0xF6, 0x8C, 0x01, 0x16, 0x00, 0xF6, 0x01, 0x16, 0x01, 0xB7, 0x02, 0xB7, 0x03, 0x78, 0x02, 0xB7, 0x01, 0xD6, 0x01, 0x16, 0x00, 0xF7, 0x00, 0xF6, 0x01, 0x16, 0x00, 0xF6, 0x01, 0x01, 0x16, 0x01, 0x00, 0xF6, 0x0B, 0x01, 0x16, 0x80, 0x01, 0x17, 0x05, 0x01, 0x16, 0x85, 0x01, 0x36, 0x01, 0x97, 0x02, 0xF8, 0x03, 0x78, 0x02, 0x97, 0x01, 0x77, 0x01, 0x01, 0x16, 0x80, 0x01, 0x17, 0x01, 0x01, 0x16, 0x01, 0x01, 0x17, 0x80, 0x01, 0x16, 0x03, 0x01, 0x17, 0x02, 0x01, 0x16, 0x0D, 0x01, 0x17, 0x83, 0x01, 0xD7, 0x03, 0x18, 0x03, 0x79, 0x02, 0x38, 0x0A, 0x01, 0x17, 0x80, 0x01, 0x37, 0x05, 0x01, 0x17, 0x80, 0x01, 0x37, 0x07, 0x01, 0x17, 0x80, 0x01, 0x37, 0x01, 0x01, 0x17, 0x89, 0x01, 0x77, 0x03, 0x18, 0x03, 0x79, 0x01, 0xD7, 0x01, 0x37, 0x01, 0x17, 0x01, 0x37, 0x01, 0x17, 0x01, 0x37, 0x01, 0x36, 0x01, 0x01, 0x17, 0x01, 0x01, 0x37, 0x01, 0x01, 0x17, 0x02, 0x01, 0x37, 0x80, 0x01, 0x17, 0x02, 0x01, 0x37, 0x02, 0x01, 0x17, 0x04, 0x01, 0x37, 0x8B, + 0x01, 0x38, 0x01, 0x37, 0x01, 0x17, 0x01, 0x57, 0x03, 0x59, 0x02, 0xF8, 0x01, 0x57, 0x01, 0x17, 0x01, 0x37, 0x01, 0x17, 0x01, 0x37, 0x01, 0x17, 0x02, 0x01, 0x37, 0x0E, 0x01, 0x38, 0x06, 0x01, 0x37, 0x85, 0x01, 0x58, 0x03, 0x59, 0x02, 0x78, 0x01, 0x37, 0x01, 0x38, 0x01, 0x37, 0x01, 0x01, 0x38, 0x80, 0x01, 0x37, 0x17, 0x01, 0x38, 0x84, 0x01, 0x37, 0x01, 0x38, 0x03, 0xB9, 0x01, 0xB8, 0x01, 0x37, 0x01, 0x01, 0x38, 0x80, 0x01, 0x37, 0x17, 0x01, 0x38, 0x02, 0x01, 0x37, 0x84, 0x01, 0x38, 0x03, 0xF9, 0x01, 0x37, 0x01, 0x38, 0x01, 0x37, 0x18, 0x01, 0x38, 0x82, 0x01, 0x37, 0x01, 0x38, 0x01, 0x18, 0x01, 0x01, 0x38, 0x82, 0x01, 0x78, 0x03, 0xF9, 0x01, 0x58, 0x01, 0x01, 0x37, 0x14, 0x01, 0x38, 0x02, 0x01, 0x37, 0x01, 0x01, 0x38, 0x01, 0x01, 0x37, 0x89, 0x01, 0x18, 0x02, 0x38, 0x03, 0xB9, 0x01, 0x77, 0x01, 0x37, 0x01, 0x38, 0x01, 0x37, 0x01, 0x17, 0x01, 0x37, 0x01, 0x38, 0x03, 0x01, 0x37, 0x80, 0x09, 0x37, 0x04, 0x09, 0x38, 0x80, 0x09, 0x58, 0x04, 0x11, 0x58, 0x01, 0x19, 0x58, 0x82, 0x19, 0x59, 0x19, 0x78, 0x69, 0x34, 0x01, 0x99, 0x31, 0x80, 0x99, 0x12, 0x04, 0x99, 0x31, 0x82, 0x99, 0x12, 0x99, 0x31, 0x99, 0x11, 0x02, 0x99, 0x31, 0x83, 0x99, 0x32, 0x41, 0x35, 0x09, 0x38, 0x09, 0x57, 0x03, 0x09, 0x37, 0x08, 0x01, 0x17, 0x01, 0x01, 0x37, 0x03, 0x01, 0x17, 0x83, 0x01, 0x97, 0x03, 0x18, 0x03, 0x38, 0x01, 0xB7, 0x12, 0x01, 0x17, 0x80, 0x01, 0x16, 0x02, 0x01, 0x17, 0x8D, 0x01, 0x16, 0x01, 0x17, 0x01, 0x16, 0x01, 0x17, 0x01, 0x16, 0x01, + 0x17, 0x00, 0xF7, 0x02, 0x17, 0x03, 0x39, 0x02, 0xF8, 0x01, 0x97, 0x01, 0x36, 0x01, 0x16, 0x01, 0x17, 0x0F, 0x01, 0x16, 0x80, 0x01, 0x17, 0x04, 0x01, 0x16, 0x80, 0x01, 0x17, 0x02, 0x01, 0x16, 0x86, 0x01, 0x56, 0x02, 0x37, 0x03, 0x58, 0x02, 0xD8, 0x01, 0xF7, 0x01, 0x16, 0x00, 0xF6, 0x05, 0x01, 0x16, 0x01, 0x00, 0xF6, 0x80, 0x01, 0x16, 0x04, 0x00, 0xF6, 0x80, 0x01, 0x16, 0x09, 0x02, 0x97, 0x81, 0x02, 0xB7, 0x02, 0x97, 0x03, 0x02, 0xB7, 0x83, 0x03, 0x18, 0x03, 0x57, 0x03, 0x38, 0x02, 0xD7, 0x11, 0x02, 0xB7, 0x80, 0x02, 0xB8, 0x07, 0x02, 0xB7, 0x01, 0x02, 0xB8, 0x85, 0x02, 0xB7, 0x03, 0x17, 0x03, 0x58, 0x03, 0x38, 0x02, 0xF7, 0x02, 0xD7, 0x02, 0x02, 0xB7, 0x0A, 0x02, 0xD7, 0x01, 0x02, 0xD8, 0x02, 0x02, 0xD7, 0x01, 0x02, 0xD8, 0x82, 0x02, 0xD7, 0x02, 0xD8, 0x02, 0xD7, 0x02, 0x02, 0xD8, 0x01, 0x02, 0xD7, 0x83, 0x02, 0xF7, 0x03, 0x58, 0x03, 0x78, 0x02, 0xF7, 0x02, 0x02, 0xD8, 0x05, 0x02, 0xD7, 0x0D, 0x02, 0xD8, 0x04, 0x02, 0xF8, 0x80, 0x02, 0xD7, 0x01, 0x02, 0xF8, 0x83, 0x03, 0x98, 0x03, 0x78, 0x02, 0xF8, 0x02, 0xD8, 0x1D, 0x02, 0xF8, 0x81, 0x03, 0x78, 0x03, 0x98, 0x18, 0x02, 0xF8, 0x83, 0x03, 0x18, 0x02, 0xF8, 0x03, 0x18, 0x02, 0xF7, 0x01, 0x02, 0xF8, 0x83, 0x03, 0x18, 0x03, 0x58, 0x03, 0x99, 0x03, 0x18, 0x01, 0x02, 0xF8, 0x01, 0x03, 0x18, 0x81, 0x02, 0xF8, 0x03, 0x18, 0x07, 0x02, 0xF8, 0x10, 0x03, 0x18, 0x81, 0x03, 0x38, 0x03, 0xB8, 0x01, 0x03, 0x18, 0x80, 0x02, 0xF8, 0x1D, 0x03, 0x18, 0x80, 0x03, 0xB8, 0x1C, 0x03, 0x18, + 0x80, 0x02, 0xF8, 0x01, 0x03, 0x18, 0x83, 0x02, 0xF8, 0x03, 0x18, 0x03, 0x78, 0x03, 0x38, 0x01, 0x02, 0xF8, 0x82, 0x03, 0x18, 0x02, 0xF8, 0x03, 0x18, 0x11, 0x02, 0xF8, 0x01, 0x03, 0x18, 0x06, 0x02, 0xF8, 0x81, 0x03, 0x78, 0x03, 0x38, 0x0C, 0x02, 0xF8, 0x03, 0x0A, 0xF8, 0x01, 0x0B, 0x18, 0x80, 0x13, 0x18, 0x04, 0x13, 0x19, 0x81, 0x1B, 0x18, 0x2A, 0xF8, 0x03, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x84, 0x99, 0x32, 0x99, 0x31, 0x99, 0x11, 0x99, 0x31, 0x99, 0x32, 0x02, 0x99, 0x31, 0x80, 0x52, 0x15, 0x01, 0x0A, 0xF8, 0x03, 0x02, 0xF8, 0x0D, 0x02, 0xD8, 0x80, 0x02, 0xD7, 0x01, 0x02, 0xD8, 0x01, 0x03, 0x78, 0x81, 0x02, 0xD7, 0x02, 0xD8, 0x01, 0x02, 0xD7, 0x01, 0x02, 0xD8, 0x04, 0x02, 0xD7, 0x01, 0x02, 0xD8, 0x03, 0x02, 0xD7, 0x80, 0x02, 0xD8, 0x06, 0x02, 0xD7, 0x80, 0x02, 0xB7, 0x02, 0x02, 0xD7, 0x01, 0x02, 0xB7, 0x80, 0x02, 0xF7, 0x01, 0x03, 0x58, 0x80, 0x02, 0xF7, 0x1D, 0x02, 0xB7, 0x83, 0x02, 0xD7, 0x03, 0x38, 0x03, 0x57, 0x02, 0xF7, 0x01, 0x02, 0x97, 0x05, 0x02, 0xB7, 0x02, 0x02, 0x97, 0x80, 0x02, 0xB7, 0x01, 0x02, 0x97, 0x82, 0x02, 0xB7, 0x02, 0x97, 0x01, 0x75, 0x01, 0x01, 0x55, 0x82, 0x01, 0x56, 0x01, 0x75, 0x01, 0x76, 0x04, 0x01, 0x75, 0x88, 0x01, 0xB6, 0x02, 0x57, 0x02, 0xF7, 0x02, 0xD7, 0x02, 0x16, 0x01, 0x76, 0x01, 0x55, 0x01, 0x75, 0x01, 0x56, 0x0B, 0x01, 0x75, 0x01, 0x01, 0x76, 0x80, 0x01, 0x55, 0x02, 0x01, 0x76, 0x83, 0x01, 0x75, 0x01, 0x76, 0x01, 0x75, 0x01, 0x56, 0x02, 0x01, 0x76, 0x87, 0x01, 0x55, + 0x01, 0xB6, 0x02, 0x96, 0x03, 0x37, 0x02, 0x96, 0x01, 0xD6, 0x01, 0x76, 0x01, 0x96, 0x0F, 0x01, 0x76, 0x80, 0x01, 0x96, 0x02, 0x01, 0x76, 0x01, 0x01, 0x96, 0x01, 0x01, 0x76, 0x89, 0x01, 0x96, 0x01, 0x76, 0x01, 0x96, 0x01, 0x76, 0x01, 0xB6, 0x02, 0xF8, 0x03, 0x17, 0x02, 0x17, 0x01, 0x96, 0x01, 0x76, 0x03, 0x01, 0x96, 0x80, 0x01, 0x76, 0x10, 0x01, 0x96, 0x80, 0x01, 0x76, 0x05, 0x01, 0x96, 0x84, 0x01, 0xF7, 0x03, 0x37, 0x02, 0xD7, 0x01, 0xB6, 0x01, 0x97, 0x01, 0x01, 0x96, 0x80, 0x01, 0x76, 0x11, 0x01, 0x96, 0x80, 0x01, 0x97, 0x07, 0x01, 0x96, 0x82, 0x02, 0x37, 0x03, 0x58, 0x02, 0x17, 0x09, 0x01, 0x96, 0x0F, 0x01, 0x97, 0x01, 0x01, 0x96, 0x01, 0x01, 0x97, 0x01, 0x01, 0x96, 0x83, 0x02, 0x77, 0x03, 0x18, 0x01, 0xB6, 0x01, 0x96, 0x15, 0x01, 0x97, 0x80, 0x01, 0xB7, 0x06, 0x01, 0x97, 0x86, 0x01, 0xB6, 0x02, 0xF7, 0x02, 0x57, 0x01, 0x97, 0x01, 0xB6, 0x01, 0xB7, 0x01, 0xB6, 0x19, 0x01, 0x97, 0x84, 0x01, 0xB7, 0x01, 0xB6, 0x01, 0xB7, 0x03, 0x78, 0x01, 0xB7, 0x1F, 0x01, 0x97, 0x82, 0x01, 0xB6, 0x01, 0xF7, 0x03, 0x58, 0x01, 0x01, 0x96, 0x84, 0x01, 0xB6, 0x01, 0x96, 0x01, 0xB6, 0x01, 0x97, 0x01, 0x96, 0x15, 0x01, 0x97, 0x01, 0x01, 0x96, 0x01, 0x01, 0x97, 0x01, 0x02, 0xF7, 0x03, 0x01, 0x96, 0x82, 0x01, 0x97, 0x01, 0x96, 0x01, 0x97, 0x01, 0x01, 0xB6, 0x02, 0x01, 0x96, 0x02, 0x01, 0x97, 0x81, 0x09, 0xB7, 0x09, 0x97, 0x02, 0x09, 0xB7, 0x01, 0x11, 0xB7, 0x80, 0x11, 0xD7, 0x02, 0x11, 0xB7, 0x82, 0x71, 0x53, 0x99, 0x31, 0x99, 0x11, 0x0B, + 0x99, 0x31, 0x83, 0x61, 0x74, 0x09, 0xB6, 0x01, 0x96, 0x01, 0x97, 0x0E, 0x01, 0x96, 0x80, 0x01, 0x76, 0x03, 0x01, 0x96, 0x84, 0x01, 0x77, 0x01, 0x96, 0x02, 0xB7, 0x03, 0x37, 0x02, 0x16, 0x02, 0x01, 0x96, 0x03, 0x01, 0x76, 0x01, 0x01, 0x96, 0x01, 0x01, 0x76, 0x80, 0x01, 0x96, 0x0F, 0x01, 0x76, 0x86, 0x01, 0x75, 0x01, 0x96, 0x01, 0x95, 0x02, 0x16, 0x02, 0xF7, 0x03, 0x17, 0x02, 0x16, 0x03, 0x01, 0x76, 0x01, 0x01, 0x75, 0x01, 0x01, 0x76, 0x12, 0x01, 0x75, 0x88, 0x01, 0x76, 0x01, 0x75, 0x01, 0x55, 0x01, 0x96, 0x02, 0x56, 0x03, 0x17, 0x02, 0xB7, 0x01, 0xB6, 0x01, 0x76, 0x04, 0x01, 0x75, 0x01, 0x01, 0x55, 0x80, 0x01, 0x75, 0x02, 0x01, 0x55, 0x03, 0x00, 0xB3, 0x80, 0x00, 0xB4, 0x01, 0x00, 0xD3, 0x86, 0x00, 0xB4, 0x00, 0xD4, 0x01, 0x74, 0x02, 0x35, 0x02, 0xD6, 0x02, 0x35, 0x01, 0x74, 0x01, 0x00, 0xD4, 0x83, 0x00, 0xB4, 0x00, 0xD4, 0x00, 0xB4, 0x00, 0xD4, 0x03, 0x00, 0xB4, 0x0A, 0x00, 0xD4, 0x80, 0x00, 0xB4, 0x03, 0x00, 0xD4, 0x80, 0x00, 0xB4, 0x02, 0x00, 0xD4, 0x84, 0x01, 0x35, 0x02, 0x35, 0x02, 0xD6, 0x02, 0x36, 0x01, 0x34, 0x12, 0x00, 0xD4, 0x03, 0x00, 0xD5, 0x02, 0x00, 0xD4, 0x03, 0x00, 0xD5, 0x84, 0x01, 0x15, 0x02, 0x36, 0x03, 0x17, 0x02, 0x56, 0x00, 0xF4, 0x17, 0x00, 0xD5, 0x01, 0x00, 0xF5, 0x81, 0x00, 0xD5, 0x00, 0xF5, 0x01, 0x00, 0xD5, 0x84, 0x00, 0xF5, 0x01, 0xF6, 0x03, 0x17, 0x01, 0xF6, 0x00, 0xF5, 0x03, 0x00, 0xD5, 0x80, 0x00, 0xF5, 0x10, 0x00, 0xD5, 0x01, 0x00, 0xF5, 0x03, 0x00, 0xD5, 0x85, 0x00, 0xF5, 0x00, 0xD5, + 0x00, 0xF5, 0x01, 0xB6, 0x03, 0x37, 0x01, 0xB6, 0x1F, 0x00, 0xF5, 0x82, 0x01, 0x55, 0x03, 0x37, 0x01, 0x56, 0x01, 0x00, 0xD5, 0x02, 0x00, 0xF6, 0x80, 0x00, 0xF5, 0x01, 0x00, 0xD6, 0x07, 0x00, 0xF6, 0x07, 0x00, 0xF5, 0x81, 0x00, 0xF6, 0x00, 0xD5, 0x01, 0x00, 0xF6, 0x02, 0x00, 0xF5, 0x88, 0x00, 0xF6, 0x01, 0x15, 0x03, 0x38, 0x01, 0x15, 0x00, 0xF6, 0x00, 0xF5, 0x00, 0xF6, 0x00, 0xF5, 0x00, 0xD6, 0x17, 0x00, 0xF5, 0x85, 0x00, 0xD5, 0x00, 0xF6, 0x00, 0xD5, 0x00, 0xF5, 0x03, 0x57, 0x00, 0xF5, 0x01, 0x00, 0xF6, 0x17, 0x00, 0xF5, 0x81, 0x00, 0xF6, 0x00, 0xF5, 0x01, 0x00, 0xD5, 0x01, 0x00, 0xD6, 0x86, 0x00, 0xD5, 0x00, 0xF5, 0x02, 0xF7, 0x01, 0x76, 0x00, 0xF5, 0x00, 0xD5, 0x00, 0xF5, 0x01, 0x00, 0xF6, 0x17, 0x00, 0xF5, 0x88, 0x00, 0xD5, 0x00, 0xF5, 0x00, 0xD5, 0x01, 0x16, 0x02, 0xF7, 0x01, 0xD6, 0x00, 0xD6, 0x00, 0xD5, 0x00, 0xF5, 0x04, 0x00, 0xD5, 0x80, 0x00, 0xF5, 0x01, 0x00, 0xD5, 0x04, 0x00, 0xF5, 0x03, 0x08, 0xF6, 0x01, 0x09, 0x16, 0x83, 0x10, 0xF6, 0x11, 0x17, 0x11, 0x16, 0x31, 0x35, 0x03, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x81, 0x99, 0x11, 0x99, 0x12, 0x03, 0x99, 0x31, 0x82, 0x71, 0x13, 0x08, 0xF5, 0x08, 0xF6, 0x03, 0x00, 0xF5, 0x0F, 0x00, 0xD5, 0x80, 0x00, 0xD4, 0x02, 0x00, 0xD5, 0x83, 0x01, 0xD6, 0x02, 0xF7, 0x02, 0x36, 0x01, 0x14, 0x01, 0x00, 0xD5, 0x80, 0x00, 0xD4, 0x02, 0x00, 0xD5, 0x82, 0x00, 0xD4, 0x00, 0xD5, 0x00, 0xD4, 0x01, 0x00, 0xD5, 0x0F, 0x00, 0xD4, 0x80, 0x00, 0xB4, 0x01, 0x00, 0xD4, 0x84, + 0x00, 0xF4, 0x01, 0xD5, 0x02, 0xD6, 0x02, 0x36, 0x01, 0x14, 0x10, 0x00, 0xD4, 0x05, 0x00, 0xB4, 0x05, 0x00, 0xD4, 0x86, 0x00, 0xD3, 0x01, 0x14, 0x01, 0xF5, 0x02, 0xB5, 0x02, 0x35, 0x01, 0x54, 0x00, 0xD3, 0x01, 0x00, 0xB3, 0x80, 0x00, 0xD3, 0x05, 0x00, 0xB3, 0x82, 0x00, 0xB1, 0x00, 0xB2, 0x00, 0xB1, 0x02, 0x00, 0xB2, 0x86, 0x00, 0xF2, 0x01, 0xD3, 0x02, 0x53, 0x02, 0x34, 0x01, 0x73, 0x00, 0xD2, 0x00, 0x92, 0x01, 0x00, 0xB1, 0x12, 0x00, 0xB2, 0x80, 0x00, 0x92, 0x04, 0x00, 0xB2, 0x86, 0x00, 0xB3, 0x00, 0xB2, 0x01, 0x53, 0x02, 0x34, 0x02, 0x74, 0x01, 0xB3, 0x00, 0xF3, 0x01, 0x00, 0xB2, 0x01, 0x00, 0xB3, 0x80, 0x00, 0xB2, 0x01, 0x00, 0xB3, 0x05, 0x00, 0xB2, 0x10, 0x00, 0xB3, 0x86, 0x00, 0xD3, 0x01, 0xB4, 0x02, 0xB5, 0x01, 0xF4, 0x01, 0x13, 0x00, 0xB3, 0x00, 0xD3, 0x06, 0x00, 0xB3, 0x80, 0x00, 0xD3, 0x08, 0x00, 0xB3, 0x83, 0x00, 0xD3, 0x00, 0xB3, 0x00, 0xD3, 0x00, 0xD4, 0x01, 0x00, 0xB3, 0x80, 0x00, 0xD4, 0x01, 0x00, 0xB3, 0x88, 0x00, 0xD4, 0x00, 0xB3, 0x00, 0xD3, 0x01, 0x33, 0x02, 0x75, 0x02, 0x55, 0x01, 0x34, 0x00, 0xD3, 0x00, 0xB3, 0x01, 0x00, 0xD3, 0x01, 0x00, 0xD4, 0x80, 0x00, 0xB4, 0x11, 0x00, 0xD4, 0x82, 0x00, 0xB4, 0x00, 0xD4, 0x00, 0xB4, 0x01, 0x00, 0xD4, 0x01, 0x00, 0xB4, 0x84, 0x01, 0xD4, 0x02, 0xB5, 0x01, 0x34, 0x00, 0xD4, 0x00, 0xB4, 0x1D, 0x00, 0xD4, 0x82, 0x00, 0xF4, 0x02, 0xB5, 0x01, 0xB5, 0x20, 0x00, 0xD4, 0x83, 0x01, 0xB5, 0x02, 0x55, 0x00, 0xD5, 0x00, 0xB4, 0x1F, 0x00, 0xD4, 0x80, 0x02, 0xF6, 0x22, 0x00, + 0xD4, 0x81, 0x01, 0xF5, 0x02, 0x35, 0x16, 0x00, 0xD4, 0x06, 0x00, 0xB4, 0x01, 0x00, 0xD4, 0x84, 0x00, 0xB4, 0x01, 0x54, 0x02, 0xB5, 0x01, 0x34, 0x00, 0xD4, 0x01, 0x00, 0xB4, 0x02, 0x00, 0xD4, 0x80, 0x00, 0xB4, 0x08, 0x00, 0xD4, 0x02, 0x08, 0xD4, 0x02, 0x08, 0xF4, 0x83, 0x08, 0xF5, 0x10, 0xF4, 0x10, 0xD5, 0x79, 0x12, 0x08, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x81, 0x32, 0x02, 0x00, 0xD4, 0x04, 0x00, 0xD3, 0x81, 0x00, 0xB3, 0x00, 0xD3, 0x0D, 0x00, 0xB3, 0x81, 0x00, 0xB2, 0x00, 0xB3, 0x01, 0x00, 0xD3, 0x82, 0x02, 0x14, 0x02, 0x95, 0x01, 0x53, 0x02, 0x00, 0xB3, 0x80, 0x00, 0xB2, 0x02, 0x00, 0xB3, 0x02, 0x00, 0xB2, 0x07, 0x00, 0xB3, 0x0C, 0x00, 0xB2, 0x84, 0x00, 0xD2, 0x01, 0xB3, 0x02, 0x74, 0x01, 0xD3, 0x00, 0xF2, 0x19, 0x00, 0xB2, 0x8C, 0x00, 0xB1, 0x00, 0xB2, 0x00, 0x92, 0x00, 0xB2, 0x00, 0xB1, 0x01, 0x72, 0x02, 0x53, 0x02, 0x33, 0x01, 0x52, 0x00, 0xB1, 0x00, 0x91, 0x00, 0xB1, 0x00, 0x91, 0x01, 0x00, 0xB1, 0x81, 0x00, 0x91, 0x00, 0xB1, 0x02, 0x00, 0x90, 0x85, 0x00, 0xB0, 0x01, 0x51, 0x02, 0x12, 0x02, 0x32, 0x01, 0x91, 0x00, 0xF0, 0x1A, 0x00, 0x90, 0x8E, 0x00, 0x91, 0x00, 0x90, 0x00, 0x91, 0x00, 0xB1, 0x01, 0x71, 0x02, 0x32, 0x02, 0x13, 0x01, 0x51, 0x00, 0x90, 0x00, 0xB0, 0x00, 0x90, 0x00, 0x91, 0x00, 0xB1, 0x00, 0xB0, 0x00, 0x90, 0x01, 0x00, 0xB1, 0x10, 0x00, 0x91, 0x01, 0x00, 0xB1, 0x02, 0x00, 0x91, 0x85, 0x00, 0xD1, 0x01, 0x72, 0x02, 0x53, 0x01, 0xB2, 0x00, 0xD1, 0x00, 0xB1, 0x02, 0x00, 0x91, 0x81, + 0x00, 0xB1, 0x00, 0x91, 0x01, 0x00, 0xB1, 0x80, 0x00, 0x91, 0x13, 0x00, 0xB1, 0x01, 0x00, 0x91, 0x85, 0x00, 0xD2, 0x01, 0xB2, 0x02, 0x73, 0x01, 0x72, 0x00, 0xB1, 0x00, 0xB2, 0x01, 0x00, 0xB1, 0x80, 0x00, 0xB2, 0x01, 0x00, 0xB1, 0x81, 0x00, 0xB2, 0x00, 0xB1, 0x0F, 0x00, 0xB2, 0x01, 0x00, 0xB1, 0x01, 0x00, 0xB2, 0x80, 0x00, 0xB1, 0x02, 0x00, 0xB2, 0x82, 0x01, 0xD3, 0x02, 0x53, 0x01, 0x12, 0x20, 0x00, 0xB2, 0x82, 0x02, 0x13, 0x01, 0xD3, 0x00, 0x92, 0x20, 0x00, 0xB2, 0x81, 0x02, 0x53, 0x01, 0x53, 0x21, 0x00, 0xB2, 0x80, 0x02, 0x94, 0x22, 0x00, 0xB2, 0x82, 0x00, 0xF2, 0x02, 0x93, 0x00, 0xD2, 0x1E, 0x00, 0xB2, 0x83, 0x00, 0xB1, 0x00, 0xB2, 0x01, 0x72, 0x02, 0x53, 0x01, 0x00, 0xB1, 0x04, 0x00, 0xB2, 0x02, 0x00, 0xB1, 0x06, 0x00, 0xB2, 0x02, 0x08, 0xB2, 0x86, 0x08, 0xD2, 0x08, 0xB2, 0x08, 0xD2, 0x08, 0xD3, 0x10, 0xD3, 0x40, 0xF2, 0x99, 0x11, 0x06, 0x99, 0x31, 0x80, 0x99, 0x11, 0x03, 0x99, 0x31, 0x82, 0x99, 0x11, 0x00, 0xD2, 0x00, 0xB2, 0x10, 0x00, 0xB1, 0x80, 0x00, 0x91, 0x07, 0x00, 0xB1, 0x83, 0x00, 0x91, 0x01, 0x31, 0x02, 0x52, 0x01, 0xF2, 0x02, 0x00, 0xB1, 0x01, 0x00, 0x91, 0x80, 0x00, 0xB1, 0x01, 0x00, 0x91, 0x80, 0x00, 0xB0, 0x0D, 0x00, 0x91, 0x01, 0x00, 0x90, 0x02, 0x00, 0x91, 0x88, 0x00, 0xB1, 0x00, 0x90, 0x00, 0xB0, 0x00, 0x91, 0x00, 0xB0, 0x01, 0xB2, 0x02, 0x52, 0x01, 0xB1, 0x00, 0xD0, 0x1E, 0x00, 0x90, 0x84, 0x01, 0x11, 0x01, 0xD1, 0x02, 0x32, 0x01, 0x91, 0x00, 0xB0, 0x04, 0x00, 0x90, 0x85, 0x00, 0x8F, 0x01, 0x30, + 0x01, 0xB1, 0x02, 0x32, 0x01, 0xB1, 0x01, 0x10, 0x0C, 0x00, 0x90, 0x80, 0x00, 0x8F, 0x10, 0x00, 0x90, 0x84, 0x00, 0xD0, 0x01, 0x91, 0x02, 0x32, 0x01, 0xD1, 0x00, 0xF0, 0x1E, 0x00, 0x90, 0x84, 0x00, 0xB0, 0x01, 0x71, 0x02, 0x32, 0x01, 0xD1, 0x00, 0xF1, 0x02, 0x00, 0x90, 0x80, 0x00, 0x70, 0x1B, 0x00, 0x90, 0x83, 0x01, 0x11, 0x02, 0x12, 0x01, 0xD1, 0x00, 0xD0, 0x1F, 0x00, 0x90, 0x83, 0x00, 0xB0, 0x01, 0xD2, 0x01, 0xF2, 0x00, 0xB0, 0x1E, 0x00, 0x90, 0x01, 0x00, 0xB0, 0x82, 0x01, 0x71, 0x02, 0x12, 0x00, 0xB0, 0x05, 0x00, 0x90, 0x01, 0x00, 0xB0, 0x01, 0x00, 0x90, 0x0F, 0x00, 0xB0, 0x02, 0x00, 0x90, 0x01, 0x00, 0xB0, 0x01, 0x00, 0x90, 0x84, 0x00, 0xF1, 0x02, 0x52, 0x00, 0xB0, 0x00, 0x90, 0x00, 0xB0, 0x01, 0x00, 0x90, 0x01, 0x00, 0xB0, 0x17, 0x00, 0x90, 0x01, 0x00, 0xB0, 0x01, 0x00, 0x90, 0x83, 0x02, 0x72, 0x00, 0xB0, 0x00, 0x90, 0x00, 0xB0, 0x18, 0x00, 0x90, 0x03, 0x00, 0xB0, 0x03, 0x00, 0x90, 0x82, 0x01, 0xD1, 0x01, 0x71, 0x00, 0x91, 0x01, 0x00, 0xB0, 0x1E, 0x00, 0x90, 0x01, 0x01, 0xD1, 0x81, 0x00, 0x90, 0x00, 0xB0, 0x02, 0x00, 0x90, 0x02, 0x00, 0xB0, 0x05, 0x00, 0x90, 0x03, 0x00, 0x91, 0x06, 0x08, 0xB1, 0x80, 0x89, 0x12, 0x04, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x01, 0x99, 0x11, 0x82, 0x99, 0x12, 0x99, 0x31, 0x00, 0x91, 0x1C, 0x00, 0x90, 0x83, 0x00, 0xB0, 0x01, 0xB1, 0x02, 0x52, 0x01, 0x31, 0x01, 0x00, 0x90, 0x80, 0x00, 0xB0, 0x1C, 0x00, 0x90, 0x84, 0x00, 0xB0, 0x01, 0xB1, 0x02, 0x32, 0x01, 0x91, 0x00, 0xB0, + 0x16, 0x00, 0x90, 0x80, 0x00, 0x70, 0x06, 0x00, 0x90, 0x84, 0x00, 0xB0, 0x01, 0x91, 0x02, 0x52, 0x01, 0xB1, 0x01, 0x10, 0x02, 0x00, 0x90, 0x83, 0x02, 0x12, 0x01, 0xF1, 0x01, 0x50, 0x00, 0xAF, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x01, 0x00, 0x90, 0x80, 0x00, 0x70, 0x01, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x01, 0x00, 0x70, 0x83, 0x00, 0x6F, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x8F, 0x01, 0x00, 0x90, 0x07, 0x00, 0x8F, 0x81, 0x00, 0x90, 0x00, 0x6F, 0x02, 0x00, 0x8F, 0x84, 0x01, 0x30, 0x01, 0xD1, 0x02, 0x12, 0x01, 0x91, 0x00, 0xB0, 0x05, 0x00, 0x90, 0x80, 0x00, 0x8F, 0x03, 0x00, 0x90, 0x80, 0x00, 0x8F, 0x02, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x01, 0x00, 0x90, 0x08, 0x00, 0x8F, 0x01, 0x00, 0x90, 0x86, 0x00, 0x8F, 0x00, 0x90, 0x01, 0x51, 0x02, 0x11, 0x01, 0xD1, 0x00, 0xF0, 0x00, 0x8F, 0x0D, 0x00, 0x90, 0x80, 0x00, 0x8F, 0x0F, 0x00, 0x90, 0x83, 0x00, 0xB0, 0x01, 0x91, 0x02, 0x32, 0x01, 0x51, 0x09, 0x00, 0x90, 0x80, 0x00, 0xB0, 0x15, 0x00, 0x90, 0x83, 0x00, 0xB0, 0x01, 0xF2, 0x01, 0xD1, 0x00, 0xB0, 0x20, 0x00, 0x90, 0x82, 0x01, 0x10, 0x02, 0x52, 0x00, 0xD0, 0x21, 0x00, 0x90, 0x81, 0x01, 0xB1, 0x01, 0x91, 0x1F, 0x00, 0x90, 0x80, 0x00, 0xB0, 0x01, 0x00, 0x90, 0x80, 0x02, 0x52, 0x23, 0x00, 0x90, 0x81, 0x01, 0x51, 0x02, 0x32, 0x21, 0x00, 0x90, 0x83, 0x00, 0xB0, 0x01, 0xF1, 0x01, 0x71, 0x00, 0xB0, 0x0E, 0x00, 0x90, 0x80, 0x00, 0x91, 0x01, 0x00, 0xB0, 0x82, 0x00, 0xB1, 0x08, 0xB1, 0x08, 0xB0, 0x01, 0x08, 0xB1, 0x80, 0x50, 0xF1, 0x01, 0x99, 0x31, + 0x80, 0x99, 0x11, 0x03, 0x99, 0x31, 0x85, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x99, 0x31, 0x1A, 0x00, 0x90, 0x80, 0x00, 0x70, 0x03, 0x00, 0x90, 0x83, 0x00, 0xF1, 0x02, 0x11, 0x01, 0xD2, 0x00, 0xD0, 0x01, 0x00, 0x90, 0x80, 0x00, 0x8F, 0x0F, 0x00, 0x90, 0x80, 0x00, 0x8F, 0x01, 0x00, 0x90, 0x81, 0x00, 0x8F, 0x00, 0x90, 0x04, 0x00, 0x8F, 0x87, 0x00, 0x90, 0x00, 0x8F, 0x00, 0x90, 0x00, 0xB0, 0x01, 0xB1, 0x02, 0x32, 0x01, 0x51, 0x00, 0xB0, 0x07, 0x00, 0x90, 0x80, 0x00, 0x8F, 0x0A, 0x00, 0x90, 0x02, 0x00, 0x8F, 0x80, 0x00, 0x90, 0x02, 0x00, 0x8F, 0x8A, 0x00, 0x90, 0x00, 0x8F, 0x00, 0x90, 0x00, 0x8F, 0x00, 0xB0, 0x01, 0x51, 0x02, 0x11, 0x02, 0x12, 0x01, 0x30, 0x00, 0xAF, 0x00, 0xCF, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x1B, 0x00, 0x8F, 0x86, 0x00, 0xAF, 0x01, 0x30, 0x01, 0xF2, 0x02, 0x12, 0x01, 0x31, 0x00, 0xAF, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x02, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x82, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x02, 0x00, 0x8F, 0x02, 0x00, 0x6F, 0x0A, 0x00, 0x8F, 0x88, 0x01, 0x30, 0x02, 0x12, 0x01, 0xF2, 0x00, 0xF0, 0x00, 0x70, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x8F, 0x00, 0x90, 0x03, 0x00, 0x8F, 0x02, 0x00, 0x90, 0x04, 0x00, 0x8F, 0x08, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x90, 0x03, 0x00, 0x8F, 0x86, 0x00, 0xD0, 0x02, 0x12, 0x01, 0xD2, 0x00, 0xD0, 0x00, 0x90, 0x00, 0x8F, 0x00, 0x90, 0x06, 0x00, 0x8F, 0x80, 0x00, 0x90, 0x01, 0x00, 0x8F, + 0x10, 0x00, 0x90, 0x80, 0x00, 0x8F, 0x01, 0x00, 0x90, 0x82, 0x00, 0xF0, 0x02, 0x32, 0x01, 0xB1, 0x03, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x1C, 0x00, 0x90, 0x81, 0x02, 0x32, 0x01, 0x30, 0x21, 0x00, 0x90, 0x82, 0x00, 0xB0, 0x02, 0x32, 0x00, 0xD0, 0x04, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x1B, 0x00, 0x90, 0x80, 0x02, 0x52, 0x24, 0x00, 0x90, 0x83, 0x02, 0x32, 0x00, 0xF0, 0x00, 0x90, 0x00, 0x70, 0x1F, 0x00, 0x90, 0x83, 0x00, 0xF0, 0x02, 0x32, 0x00, 0xF1, 0x00, 0xB0, 0x01, 0x00, 0x8F, 0x81, 0x00, 0x90, 0x00, 0x8F, 0x0C, 0x00, 0x90, 0x01, 0x00, 0xB0, 0x84, 0x08, 0x90, 0x08, 0xB0, 0x08, 0x91, 0x10, 0xB0, 0x99, 0x31, 0x01, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x05, 0x99, 0x31, 0x11, 0x00, 0x90, 0x80, 0x00, 0x8F, 0x05, 0x00, 0x90, 0x04, 0x00, 0x8F, 0x80, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x85, 0x00, 0x90, 0x01, 0x91, 0x02, 0x12, 0x01, 0x50, 0x00, 0x8F, 0x00, 0x90, 0x02, 0x00, 0x8F, 0x02, 0x00, 0x90, 0x06, 0x00, 0x8F, 0x80, 0x00, 0x90, 0x05, 0x00, 0x8F, 0x01, 0x00, 0x90, 0x85, 0x00, 0x6F, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x70, 0x00, 0x8F, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x84, 0x00, 0x6F, 0x00, 0xD0, 0x01, 0xD2, 0x02, 0x12, 0x01, 0x50, 0x10, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x90, 0x03, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x02, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x02, 0x00, 0x8F, 0x84, 0x01, 0x10, 0x01, 0xD1, 0x02, 0x12, 0x00, 0x6F, 0x00, 0x8F, 0x09, 0x00, 0x6F, 0x81, 0x00, 0x8F, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x80, 0x00, + 0x6F, 0x03, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x02, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x86, 0x00, 0x6F, 0x00, 0xAF, 0x01, 0x71, 0x02, 0x12, 0x01, 0xD1, 0x01, 0x10, 0x00, 0x6F, 0x10, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x03, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x03, 0x00, 0x8F, 0x8A, 0x00, 0x6F, 0x00, 0x8F, 0x00, 0x6F, 0x01, 0x10, 0x01, 0xF2, 0x02, 0x12, 0x01, 0x30, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x8F, 0x00, 0x6F, 0x13, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x03, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x03, 0x00, 0x8F, 0x84, 0x01, 0x71, 0x02, 0x32, 0x01, 0x51, 0x00, 0x8F, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x13, 0x00, 0x8F, 0x81, 0x00, 0x70, 0x00, 0x90, 0x03, 0x00, 0x8F, 0x86, 0x00, 0x6F, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0xF0, 0x02, 0x12, 0x01, 0x51, 0x00, 0x6F, 0x10, 0x00, 0x8F, 0x07, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x90, 0x03, 0x00, 0x8F, 0x84, 0x00, 0x70, 0x00, 0x90, 0x01, 0xF1, 0x01, 0xB1, 0x00, 0x70, 0x01, 0x00, 0x8F, 0x19, 0x00, 0x90, 0x02, 0x00, 0x8F, 0x80, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x81, 0x01, 0x30, 0x01, 0xF1, 0x03, 0x00, 0x90, 0x1F, 0x00, 0x8F, 0x80, 0x02, 0x52, 0x1A, 0x00, 0x8F, 0x08, 0x00, 0x90, 0x83, 0x00, 0x8F, 0x01, 0x91, 0x01, 0xB1, 0x00, 0x90, 0x02, 0x00, 0x8F, 0x17, 0x00, 0x90, 0x80, 0x00, 0x8F, 0x01, 0x00, 0x90, 0x87, 0x00, 0x8F, 0x00, 0x90, 0x00, 0x6F, 0x00, 0x8F, 0x01, 0x31, 0x02, 0x32, 0x00, 0xD0, 0x00, 0x90, 0x02, 0x00, 0x8F, 0x01, 0x00, 0x90, 0x01, 0x00, 0x8F, 0x0E, 0x00, 0x90, 0x80, 0x60, + 0xF1, 0x0B, 0x99, 0x31, 0x80, 0x01, 0x50, 0x02, 0x00, 0x90, 0x82, 0x00, 0x6F, 0x00, 0x90, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x70, 0x17, 0x00, 0x8F, 0x84, 0x00, 0x6F, 0x01, 0x10, 0x01, 0xF2, 0x01, 0xD1, 0x00, 0xCF, 0x05, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x15, 0x00, 0x8F, 0x81, 0x00, 0x6F, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x85, 0x00, 0xF0, 0x01, 0xB2, 0x02, 0x32, 0x01, 0x50, 0x00, 0x8F, 0x00, 0x6F, 0x04, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x04, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x02, 0x00, 0x8F, 0x0F, 0x00, 0x6F, 0x80, 0x00, 0xF0, 0x15, 0x00, 0x6F, 0x83, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x6E, 0x00, 0x8F, 0x01, 0x00, 0x6E, 0x84, 0x00, 0xEF, 0x01, 0xB1, 0x02, 0x12, 0x01, 0x91, 0x00, 0xD0, 0x01, 0x00, 0x6F, 0x80, 0x00, 0x8E, 0x10, 0x00, 0x6F, 0x81, 0x00, 0x8F, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x02, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x84, 0x00, 0xEF, 0x01, 0xD1, 0x01, 0xF1, 0x01, 0x30, 0x00, 0x8F, 0x03, 0x00, 0x6F, 0x12, 0x00, 0x8F, 0x05, 0x00, 0x6F, 0x87, 0x00, 0x70, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x8F, 0x01, 0x10, 0x02, 0x32, 0x01, 0xB1, 0x00, 0xAF, 0x04, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x12, 0x00, 0x8F, 0x82, 0x00, 0x6F, 0x00, 0x8F, 0x00, 0x6F, 0x04, 0x00, 0x8F, 0x85, 0x00, 0x6F, 0x01, 0x10, 0x02, 0x52, 0x01, 0x30, 0x00, 0x8F, 0x00, 0x6F, 0x1F, 0x00, 0x8F, 0x82, 0x00, 0x6F, 0x01, 0x70, 0x01, 0xF2, 0x20, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x81, 0x01, 0xD2, 0x01, 0x30, 0x20, + 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x80, 0x02, 0x52, 0x24, 0x00, 0x8F, 0x82, 0x00, 0xCF, 0x02, 0x32, 0x00, 0xAF, 0x1B, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x02, 0x00, 0x6F, 0x83, 0x00, 0x8F, 0x01, 0x91, 0x02, 0x12, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x08, 0x00, 0x8F, 0x07, 0x00, 0x90, 0x84, 0x00, 0x8F, 0x18, 0xAF, 0x99, 0x11, 0x99, 0x12, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x01, 0x99, 0x31, 0x88, 0xA1, 0x11, 0x99, 0x31, 0xA1, 0x11, 0x29, 0xD2, 0x01, 0xB1, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x8F, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x80, 0x00, 0x6F, 0x19, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x82, 0x01, 0x50, 0x02, 0x32, 0x01, 0x50, 0x04, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x02, 0x00, 0x6F, 0x08, 0x00, 0x8F, 0x07, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x87, 0x00, 0x8F, 0x00, 0xF0, 0x01, 0xD1, 0x01, 0xF1, 0x01, 0x30, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x03, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x10, 0x00, 0x6F, 0x83, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x6E, 0x00, 0x8F, 0x17, 0x00, 0x6E, 0x86, 0x00, 0x6F, 0x00, 0x6E, 0x01, 0x30, 0x01, 0xD1, 0x02, 0x12, 0x01, 0x50, 0x00, 0xAF, 0x01, 0x00, 0x6E, 0x82, 0x00, 0x8E, 0x00, 0x6E, 0x00, 0x6F, 0x07, 0x00, 0x6E, 0x10, 0x00, 0x6F, 0x80, 0x00, 0x6E, 0x01, 0x00, 0x6F, 0x83, 0x00, 0xCF, 0x01, 0xB1, 0x02, 0x12, 0x01, 0x30, 0x01, 0x00, 0x6E, 0x02, 0x00, 0x6F, 0x82, 0x00, 0x8F, 0x00, 0x6F, + 0x00, 0x8F, 0x0F, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x02, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x03, 0x00, 0x6F, 0x84, 0x00, 0x8F, 0x01, 0xB1, 0x02, 0x32, 0x01, 0x0F, 0x00, 0x8F, 0x03, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x13, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x05, 0x00, 0x6F, 0x82, 0x01, 0x50, 0x02, 0x32, 0x00, 0xCF, 0x01, 0x00, 0x6F, 0x80, 0x00, 0x8E, 0x1D, 0x00, 0x6F, 0x86, 0x00, 0x8F, 0x00, 0x6F, 0x01, 0x0F, 0x02, 0x12, 0x00, 0xAF, 0x00, 0x6F, 0x00, 0x8F, 0x1B, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x83, 0x00, 0x8F, 0x00, 0xAF, 0x02, 0x12, 0x00, 0xAF, 0x1F, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x82, 0x02, 0x52, 0x00, 0x6F, 0x00, 0x8F, 0x20, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x81, 0x01, 0xD1, 0x01, 0x30, 0x01, 0x00, 0x8F, 0x1B, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x04, 0x00, 0x6F, 0x82, 0x01, 0xF1, 0x01, 0xB1, 0x00, 0x8F, 0x01, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x05, 0x00, 0x6F, 0x0A, 0x00, 0x8F, 0x82, 0x00, 0x6F, 0x00, 0x90, 0x81, 0x11, 0x06, 0x99, 0x31, 0x81, 0x99, 0x12, 0x99, 0x32, 0x01, 0x99, 0x31, 0x83, 0x28, 0xD0, 0x01, 0xF2, 0x01, 0xD1, 0x00, 0x8F, 0x03, 0x00, 0x6F, 0x81, 0x00, 0x6E, 0x00, 0x8F, 0x19, 0x00, 0x6F, 0x82, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0xCF, 0x01, 0x01, 0xF1, 0x80, 0x00, 0xCF, 0x02, 0x00, 0x6F, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x8F, 0x11, 0x00, 0x6F, 0x80, 0x00, 0x6E, 0x06, 0x00, 0x6F, 0x85, 0x00, 0x6E, 0x00, 0x6F, 0x00, 0xF0, 0x01, 0xD1, 0x01, 0xF1, 0x01, 0x10, 0x04, 0x00, 0x6F, 0x14, 0x00, + 0x6E, 0x80, 0x00, 0x6F, 0x19, 0x00, 0x6E, 0x85, 0x00, 0x8E, 0x01, 0x50, 0x02, 0x12, 0x01, 0xD1, 0x01, 0x10, 0x00, 0x8E, 0x20, 0x00, 0x6E, 0x86, 0x00, 0xAF, 0x01, 0xD1, 0x02, 0x12, 0x01, 0x50, 0x00, 0x8F, 0x00, 0x6E, 0x00, 0x6F, 0x1E, 0x00, 0x6E, 0x86, 0x00, 0x8E, 0x01, 0x10, 0x02, 0x12, 0x01, 0xB1, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x6E, 0x01, 0x00, 0x6F, 0x81, 0x00, 0x6E, 0x00, 0x8F, 0x02, 0x00, 0x6E, 0x01, 0x00, 0x6F, 0x0F, 0x00, 0x6E, 0x81, 0x00, 0x6F, 0x00, 0x8F, 0x01, 0x00, 0x6E, 0x01, 0x00, 0x6F, 0x84, 0x00, 0x8E, 0x00, 0x6E, 0x01, 0x91, 0x01, 0xF1, 0x00, 0xCF, 0x01, 0x00, 0x6F, 0x82, 0x00, 0x6E, 0x00, 0x8F, 0x00, 0x6E, 0x18, 0x00, 0x6F, 0x01, 0x00, 0x8F, 0x01, 0x00, 0x6E, 0x89, 0x00, 0x6F, 0x00, 0xCF, 0x02, 0x12, 0x01, 0x10, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x6E, 0x00, 0x8F, 0x00, 0x6F, 0x00, 0x6E, 0x1D, 0x00, 0x6F, 0x81, 0x01, 0x50, 0x01, 0x91, 0x24, 0x00, 0x6F, 0x80, 0x02, 0x32, 0x25, 0x00, 0x6F, 0x83, 0x01, 0x10, 0x01, 0xF1, 0x00, 0x8F, 0x00, 0x6E, 0x21, 0x00, 0x6F, 0x82, 0x00, 0xAF, 0x02, 0x12, 0x01, 0x10, 0x01, 0x00, 0x6F, 0x80, 0x00, 0x8F, 0x08, 0x00, 0x6F, 0x03, 0x00, 0x8F, 0x05, 0x00, 0x6F, 0x80, 0x48, 0xD0, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x07, 0x99, 0x31, 0x89, 0x00, 0x8E, 0x00, 0x8F, 0x01, 0xB1, 0x01, 0xF2, 0x00, 0xAF, 0x00, 0x6F, 0x00, 0x6E, 0x00, 0x8F, 0x00, 0x6E, 0x00, 0x8F, 0x1D, 0x00, 0x6E, 0x83, 0x01, 0x50, 0x02, 0x32, 0x01, 0x50, 0x00, 0x8E, 0x03, 0x00, 0x6E, 0x80, 0x00, 0x8E, 0x18, 0x00, 0x6E, + 0x80, 0x00, 0x6F, 0x02, 0x00, 0x6E, 0x80, 0x01, 0x10, 0x01, 0x01, 0xF1, 0x80, 0x01, 0x10, 0x30, 0x00, 0x6E, 0x84, 0x00, 0xAE, 0x01, 0x90, 0x02, 0x12, 0x01, 0x90, 0x00, 0xCF, 0x21, 0x00, 0x6E, 0x84, 0x00, 0xAF, 0x01, 0x70, 0x02, 0x12, 0x01, 0x50, 0x00, 0x8E, 0x21, 0x00, 0x6E, 0x83, 0x00, 0x8E, 0x01, 0xB1, 0x02, 0x12, 0x00, 0xEF, 0x02, 0x00, 0x6E, 0x80, 0x00, 0x6F, 0x1B, 0x00, 0x6E, 0x80, 0x00, 0x6F, 0x01, 0x00, 0x6E, 0x84, 0x00, 0x8E, 0x01, 0xD1, 0x01, 0xF1, 0x00, 0x8F, 0x00, 0x6F, 0x21, 0x00, 0x6E, 0x83, 0x00, 0xAE, 0x01, 0xF1, 0x01, 0x70, 0x00, 0x6F, 0x02, 0x00, 0x6E, 0x80, 0x00, 0x6F, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x6F, 0x1C, 0x00, 0x6E, 0x82, 0x02, 0x11, 0x00, 0xCF, 0x00, 0x8F, 0x23, 0x00, 0x6E, 0x80, 0x02, 0x32, 0x25, 0x00, 0x6E, 0x82, 0x00, 0x8F, 0x02, 0x12, 0x00, 0xCF, 0x23, 0x00, 0x6E, 0x82, 0x00, 0xEF, 0x02, 0x12, 0x00, 0xCF, 0x0A, 0x00, 0x6E, 0x08, 0x00, 0x6F, 0x82, 0x00, 0x6E, 0x10, 0x8F, 0x99, 0x11, 0x09, 0x99, 0x31, 0x85, 0x00, 0x6E, 0x00, 0x6F, 0x00, 0x6E, 0x01, 0x90, 0x02, 0x12, 0x00, 0xCF, 0x22, 0x00, 0x6E, 0x83, 0x00, 0xAF, 0x01, 0xB1, 0x01, 0xF2, 0x00, 0xEF, 0x22, 0x00, 0x6E, 0x83, 0x01, 0x0F, 0x01, 0xF1, 0x01, 0xB1, 0x00, 0xEF, 0x1C, 0x00, 0x6E, 0x80, 0x00, 0x4D, 0x07, 0x00, 0x6E, 0x82, 0x00, 0x4E, 0x00, 0x6E, 0x00, 0x4E, 0x01, 0x00, 0x6E, 0x86, 0x00, 0x4E, 0x00, 0x6E, 0x00, 0xEF, 0x01, 0xB1, 0x01, 0xF1, 0x01, 0x50, 0x00, 0x8F, 0x01, 0x00, 0x6E, 0x03, 0x00, 0x4E, 0x01, 0x00, 0x6E, 0x01, 0x00, 0x4E, + 0x17, 0x00, 0x6E, 0x84, 0x00, 0x8E, 0x01, 0x70, 0x02, 0x12, 0x01, 0x71, 0x00, 0x8E, 0x22, 0x00, 0x6E, 0x83, 0x01, 0x30, 0x02, 0x12, 0x01, 0x70, 0x00, 0x8E, 0x04, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x1C, 0x00, 0x6E, 0x83, 0x00, 0xAF, 0x01, 0xD1, 0x01, 0x90, 0x00, 0x8E, 0x23, 0x00, 0x6E, 0x81, 0x01, 0x90, 0x01, 0xF1, 0x24, 0x00, 0x6E, 0x81, 0x00, 0xEF, 0x02, 0x11, 0x25, 0x00, 0x6E, 0x80, 0x02, 0x32, 0x26, 0x00, 0x6E, 0x81, 0x01, 0x70, 0x01, 0x90, 0x24, 0x00, 0x6E, 0x82, 0x01, 0x50, 0x01, 0xF1, 0x00, 0x8E, 0x14, 0x00, 0x6E, 0x80, 0x68, 0xF0, 0x01, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x99, 0x11, 0x02, 0x99, 0x31, 0x03, 0x00, 0x6E, 0x82, 0x01, 0x0F, 0x02, 0x12, 0x00, 0xEF, 0x21, 0x00, 0x6E, 0x85, 0x00, 0x4E, 0x00, 0x6E, 0x01, 0x30, 0x01, 0xF2, 0x01, 0x70, 0x00, 0x8E, 0x13, 0x00, 0x6E, 0x01, 0x00, 0x4E, 0x0C, 0x00, 0x6E, 0x83, 0x01, 0x0F, 0x01, 0xD1, 0x01, 0xB1, 0x00, 0xCF, 0x15, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x01, 0x00, 0x6E, 0x82, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x6D, 0x0A, 0x00, 0x6E, 0x82, 0x00, 0x4D, 0x00, 0x6E, 0x01, 0x30, 0x01, 0x01, 0xD1, 0x81, 0x01, 0x0F, 0x00, 0x6E, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x6E, 0x00, 0x4E, 0x02, 0x00, 0x6E, 0x80, 0x00, 0x4D, 0x04, 0x00, 0x6E, 0x02, 0x00, 0x4D, 0x0D, 0x00, 0x6E, 0x82, 0x00, 0x4E, 0x00, 0x6E, 0x00, 0x6D, 0x01, 0x00, 0x6E, 0x83, 0x01, 0x70, 0x02, 0x12, 0x01, 0x70, 0x00, 0x8E, 0x22, 0x00, 0x6E, 0x83, 0x00, 0x8E, 0x01, 0xB1, 0x01, 0xF2, 0x00, 0xCF, 0x23, 0x00, 0x6E, + 0x82, 0x00, 0xAF, 0x02, 0x12, 0x01, 0x91, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x02, 0x00, 0x6E, 0x81, 0x00, 0x4E, 0x00, 0x8E, 0x1C, 0x00, 0x6E, 0x82, 0x01, 0x0F, 0x02, 0x12, 0x00, 0x8E, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x21, 0x00, 0x6E, 0x81, 0x01, 0x90, 0x01, 0x50, 0x25, 0x00, 0x6E, 0x80, 0x02, 0x32, 0x26, 0x00, 0x6E, 0x82, 0x00, 0x8E, 0x02, 0x11, 0x00, 0x8E, 0x24, 0x00, 0x6E, 0x81, 0x01, 0x90, 0x01, 0xB1, 0x14, 0x00, 0x6E, 0x80, 0x38, 0xB0, 0x06, 0x99, 0x31, 0x83, 0x99, 0x11, 0x99, 0x31, 0x99, 0x12, 0x00, 0x4E, 0x01, 0x00, 0x6E, 0x84, 0x00, 0x4E, 0x00, 0x6E, 0x01, 0x0F, 0x02, 0x12, 0x01, 0x0F, 0x1D, 0x00, 0x6E, 0x01, 0x00, 0x4E, 0x03, 0x00, 0x6E, 0x83, 0x00, 0x8E, 0x01, 0xB1, 0x01, 0xD1, 0x00, 0xCF, 0x1C, 0x00, 0x6E, 0x01, 0x00, 0x4E, 0x01, 0x00, 0x6E, 0x87, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x8E, 0x01, 0x50, 0x01, 0xF1, 0x01, 0xB1, 0x00, 0xCF, 0x00, 0x4D, 0x10, 0x00, 0x6E, 0x80, 0x00, 0x4D, 0x01, 0x00, 0x6E, 0x82, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x6D, 0x09, 0x00, 0x4D, 0x86, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x8E, 0x01, 0x70, 0x01, 0xF1, 0x01, 0xB1, 0x00, 0xEF, 0x01, 0x00, 0x4D, 0x81, 0x00, 0x6D, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x4D, 0x02, 0x00, 0x6D, 0x81, 0x00, 0x4D, 0x00, 0x6D, 0x13, 0x00, 0x6E, 0x84, 0x00, 0x8E, 0x01, 0x2F, 0x01, 0xF1, 0x01, 0x70, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x6E, 0x00, 0x4D, 0x02, 0x00, 0x6E, 0x01, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x01, 0x00, + 0x6E, 0x81, 0x00, 0x4E, 0x00, 0x4D, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x6D, 0x0F, 0x00, 0x6E, 0x01, 0x00, 0x4E, 0x83, 0x00, 0x4D, 0x01, 0x30, 0x01, 0xF2, 0x01, 0x50, 0x01, 0x00, 0x6D, 0x04, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x1B, 0x00, 0x6E, 0x86, 0x00, 0x4E, 0x00, 0xEF, 0x02, 0x12, 0x01, 0x0F, 0x00, 0x4E, 0x00, 0x6E, 0x00, 0x4E, 0x04, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x19, 0x00, 0x6E, 0x01, 0x00, 0x4E, 0x84, 0x00, 0xAF, 0x02, 0x12, 0x00, 0xCF, 0x00, 0x4E, 0x00, 0x6E, 0x01, 0x00, 0x4E, 0x02, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x1A, 0x00, 0x6E, 0x85, 0x00, 0x4E, 0x00, 0x6E, 0x00, 0x8E, 0x02, 0x32, 0x00, 0x8E, 0x00, 0x4E, 0x24, 0x00, 0x6E, 0x80, 0x02, 0x32, 0x22, 0x00, 0x6E, 0x82, 0x00, 0x4E, 0x00, 0x6E, 0x00, 0x4E, 0x01, 0x00, 0x6E, 0x81, 0x01, 0xD1, 0x01, 0x0F, 0x1D, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x01, 0x00, 0x6E, 0x87, 0x00, 0x4E, 0x00, 0x6E, 0x00, 0x4E, 0x00, 0x6E, 0x00, 0x8E, 0x01, 0xF1, 0x01, 0x2F, 0x00, 0x4E, 0x0F, 0x00, 0x6E, 0x01, 0x00, 0x4E, 0x82, 0x00, 0x6E, 0x08, 0x6E, 0x99, 0x11, 0x03, 0x99, 0x31, 0x80, 0x99, 0x12, 0x01, 0x99, 0x31, 0x83, 0x99, 0x11, 0x99, 0x31, 0x00, 0x4E, 0x00, 0x6D, 0x03, 0x00, 0x6E, 0x83, 0x00, 0xAE, 0x02, 0x11, 0x01, 0x90, 0x00, 0x4E, 0x1D, 0x00, 0x6E, 0x82, 0x00, 0x4E, 0x00, 0x6E, 0x00, 0x4E, 0x01, 0x00, 0x6E, 0x83, 0x00, 0x4D, 0x00, 0xEF, 0x01, 0xF2, 0x01, 0x90, 0x10, 0x00, 0x6E, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x4E, 0x03, 0x00, 0x6E, 0x80, 0x00, 0x4D, 0x02, 0x00, 0x6E, 0x02, 0x00, 0x6D, 0x80, 0x00, + 0x4D, 0x01, 0x00, 0x6E, 0x86, 0x00, 0x6D, 0x00, 0x4E, 0x00, 0x6E, 0x01, 0x2F, 0x01, 0xF1, 0x01, 0x90, 0x00, 0x8E, 0x07, 0x00, 0x6E, 0x07, 0x00, 0x6D, 0x81, 0x00, 0x6E, 0x00, 0x4D, 0x02, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x89, 0x00, 0x4D, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0xCE, 0x01, 0x90, 0x02, 0x11, 0x01, 0x70, 0x00, 0x8E, 0x00, 0x4D, 0x00, 0x6D, 0x1B, 0x00, 0x4D, 0x80, 0x00, 0x4E, 0x01, 0x00, 0x4D, 0x86, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x6D, 0x01, 0x50, 0x01, 0xF1, 0x01, 0xB1, 0x00, 0xCE, 0x14, 0x00, 0x4D, 0x80, 0x00, 0x6E, 0x04, 0x00, 0x4D, 0x81, 0x00, 0x6E, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x80, 0x00, 0x4E, 0x01, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x84, 0x00, 0x8E, 0x01, 0xB1, 0x01, 0xD1, 0x00, 0xCE, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x1A, 0x00, 0x6D, 0x82, 0x00, 0x4D, 0x00, 0x6E, 0x00, 0x4D, 0x01, 0x00, 0x6E, 0x85, 0x00, 0x4E, 0x00, 0x6D, 0x01, 0x0F, 0x02, 0x12, 0x00, 0xEF, 0x00, 0x6D, 0x01, 0x00, 0x6E, 0x07, 0x00, 0x6D, 0x07, 0x00, 0x4D, 0x09, 0x00, 0x6E, 0x81, 0x00, 0x4D, 0x00, 0x6D, 0x02, 0x00, 0x6E, 0x85, 0x00, 0x4D, 0x00, 0x6E, 0x00, 0x4D, 0x00, 0x6E, 0x01, 0xD1, 0x01, 0x50, 0x24, 0x00, 0x6E, 0x82, 0x00, 0x4E, 0x01, 0x30, 0x01, 0x91, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x4E, 0x22, 0x00, 0x6E, 0x82, 0x00, 0x4E, 0x02, 0x32, 0x00, 0x4E, 0x21, 0x00, 0x6E, 0x81, 0x00, 0x4E, 0x00, 0x6E, 0x01, 0x00, 0x4D, 0x82, 0x00, 0x4E, 0x01, 0x0F, 0x01, 0xD1, 0x03, 0x00, 0x6E, 0x80, 0x00, 0x6D, 0x01, + 0x00, 0x4E, 0x80, 0x00, 0x4D, 0x1B, 0x00, 0x6E, 0x01, 0x00, 0x6D, 0x82, 0x00, 0xCE, 0x02, 0x12, 0x00, 0xCE, 0x03, 0x00, 0x6E, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x0A, 0x00, 0x6E, 0x82, 0x00, 0x4E, 0x70, 0xF0, 0x99, 0x32, 0x01, 0x99, 0x31, 0x82, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x01, 0x99, 0x31, 0x80, 0x81, 0x10, 0x01, 0x00, 0x6E, 0x80, 0x00, 0x4D, 0x03, 0x00, 0x6D, 0x82, 0x00, 0x8E, 0x01, 0xD1, 0x01, 0x90, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x4E, 0x01, 0x00, 0x6E, 0x82, 0x00, 0x4D, 0x00, 0x6D, 0x00, 0x6E, 0x01, 0x00, 0x4D, 0x05, 0x00, 0x6D, 0x14, 0x00, 0x4D, 0x83, 0x00, 0x6E, 0x01, 0x71, 0x01, 0xF2, 0x00, 0xEF, 0x05, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x03, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x17, 0x00, 0x4D, 0x86, 0x00, 0x8E, 0x01, 0x2F, 0x01, 0xF1, 0x01, 0x70, 0x00, 0x8E, 0x00, 0x4D, 0x00, 0x6D, 0x03, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x0A, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x81, 0x00, 0x6D, 0x00, 0xEF, 0x01, 0x01, 0xD1, 0x82, 0x01, 0x2F, 0x00, 0x8D, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x13, 0x00, 0x6D, 0x05, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x4D, 0x84, 0x00, 0x6D, 0x00, 0xEF, 0x01, 0xF1, 0x01, 0xB0, 0x00, 0xCE, 0x01, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x0F, 0x00, 0x6D, 0x0B, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x02, 0x00, 0x4D, 0x83, 0x01, 0x50, 0x01, 0xF1, 0x01, 0x50, 0x00, 0x6D, 0x1E, 0x00, 0x4D, + 0x82, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x4E, 0x02, 0x00, 0x4D, 0x83, 0x01, 0x50, 0x01, 0xF1, 0x00, 0xAE, 0x00, 0x6D, 0x02, 0x00, 0x4D, 0x18, 0x00, 0x6D, 0x80, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x82, 0x00, 0x4D, 0x00, 0x6D, 0x00, 0x4D, 0x02, 0x00, 0x6D, 0x81, 0x01, 0x70, 0x01, 0xB1, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x4D, 0x08, 0x00, 0x6D, 0x17, 0x00, 0x6E, 0x84, 0x00, 0x6D, 0x00, 0x4E, 0x00, 0x6E, 0x01, 0xD1, 0x01, 0x0F, 0x01, 0x00, 0x6D, 0x20, 0x00, 0x6E, 0x84, 0x00, 0x4D, 0x00, 0x6D, 0x00, 0x6E, 0x00, 0x4E, 0x02, 0x12, 0x01, 0x00, 0x4D, 0x21, 0x00, 0x6E, 0x80, 0x00, 0x4D, 0x02, 0x00, 0x6D, 0x84, 0x00, 0x6E, 0x01, 0xF1, 0x00, 0x8E, 0x00, 0x6D, 0x00, 0x6E, 0x01, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x80, 0x00, 0x4E, 0x08, 0x00, 0x6E, 0x12, 0x00, 0x6D, 0x84, 0x00, 0x4D, 0x00, 0x6D, 0x00, 0x4D, 0x01, 0x0F, 0x01, 0xF1, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x4D, 0x00, 0x6E, 0x02, 0x00, 0x6D, 0x80, 0x00, 0x4D, 0x07, 0x00, 0x6D, 0x80, 0x00, 0x4E, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x4D, 0x40, 0xCF, 0x07, 0x99, 0x31, 0x82, 0x70, 0xF0, 0x00, 0x4D, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x85, 0x00, 0x6D, 0x01, 0x91, 0x01, 0xB1, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x6D, 0x1B, 0x00, 0x4D, 0x8B, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x6D, 0x00, 0xEE, 0x01, 0xF1, 0x01, 0x90, 0x00, 0x8E, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x81, 0x00, 0x4D, 0x00, 0x6D, 0x05, 0x00, 0x4D, 0x81, 0x00, 0x6D, 0x00, 0x4D, 0x07, + 0x00, 0x6D, 0x07, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x01, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x84, 0x00, 0x6D, 0x01, 0x50, 0x02, 0x12, 0x01, 0x70, 0x00, 0x8E, 0x01, 0x00, 0x6D, 0x02, 0x00, 0x4D, 0x82, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x81, 0x00, 0x6D, 0x00, 0x4D, 0x03, 0x00, 0x6D, 0x01, 0x02, 0x11, 0x84, 0x02, 0x12, 0x01, 0xF2, 0x02, 0x12, 0x01, 0xF2, 0x01, 0xF1, 0x01, 0x02, 0x11, 0x80, 0x01, 0xF1, 0x08, 0x02, 0x12, 0x80, 0x01, 0xF1, 0x11, 0x02, 0x12, 0x80, 0x01, 0xF1, 0x02, 0x02, 0x11, 0x05, 0x02, 0x12, 0x82, 0x02, 0x11, 0x02, 0x12, 0x01, 0xF1, 0x21, 0x02, 0x12, 0x80, 0x02, 0x11, 0x2F, 0x02, 0x12, 0x82, 0x02, 0x32, 0x02, 0x12, 0x02, 0x11, 0x77, 0x02, 0x12, 0x01, 0x02, 0x32, 0x22, 0x02, 0x12, 0x83, 0x02, 0x11, 0x02, 0x32, 0x02, 0x12, 0x02, 0x32, 0x06, 0x02, 0x12, 0x80, 0x02, 0x32, 0x1C, 0x02, 0x12, 0x80, 0x02, 0x32, 0x17, 0x02, 0x12, 0x82, 0x11, 0xF1, 0x99, 0x31, 0x99, 0x11, 0x02, 0x99, 0x31, 0x80, 0x99, 0x32, 0x01, 0x99, 0x31, 0x80, 0x59, 0x91, 0x5C, 0x02, 0x12, 0x82, 0x01, 0xF1, 0x02, 0x12, 0x02, 0x11, 0x01, 0x02, 0x12, 0x83, 0x01, 0xF2, 0x02, 0x12, 0x02, 0x11, 0x01, 0xF1, 0x01, 0x02, 0x11, 0x80, 0x01, 0xF1, 0x04, 0x02, 0x12, 0x01, 0x00, 0x4D, 0x01, 0x00, 0x4C, 0x87, 0x00, 0x4D, 0x00, 0xAE, 0x01, 0x70, 0x01, 0xF1, 0x01, 0x70, 0x00, 0xCE, 0x00, 0x4D, 0x00, 0x4C, 0x0F, 0x00, 0x4D, 0x07, 0x00, 0x4C, 0x01, 0x00, 0x4D, 0x01, 0x00, 0x4C, 0x02, 0x00, 0x4D, 0x80, 0x00, 0x4C, 0x02, 0x00, 0x4D, + 0x80, 0x00, 0xEF, 0x01, 0x01, 0xD1, 0x81, 0x00, 0xEE, 0x00, 0x4C, 0x1E, 0x00, 0x4D, 0x80, 0x00, 0x4C, 0x04, 0x00, 0x4D, 0x82, 0x01, 0x2F, 0x02, 0x12, 0x01, 0x2F, 0x01, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x22, 0x00, 0x4D, 0x83, 0x00, 0x6D, 0x01, 0xB1, 0x01, 0xD1, 0x00, 0x6D, 0x25, 0x00, 0x4D, 0x82, 0x00, 0xAE, 0x02, 0x12, 0x00, 0xAE, 0x1C, 0x00, 0x4D, 0x07, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x83, 0x01, 0x50, 0x01, 0x4F, 0x00, 0x4D, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x1F, 0x00, 0x6D, 0x81, 0x00, 0x4D, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x80, 0x02, 0x12, 0x02, 0x00, 0x4D, 0x1F, 0x00, 0x6D, 0x05, 0x00, 0x4D, 0x81, 0x00, 0xAE, 0x01, 0xF1, 0x27, 0x00, 0x4D, 0x81, 0x01, 0xB1, 0x01, 0x50, 0x0E, 0x00, 0x4D, 0x84, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x6D, 0x00, 0x4D, 0x88, 0xF0, 0x03, 0x99, 0x31, 0x85, 0x99, 0x12, 0x99, 0x11, 0x99, 0x31, 0x40, 0xAF, 0x00, 0x4D, 0x00, 0x6D, 0x01, 0x00, 0x4D, 0x82, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x6D, 0x03, 0x00, 0x4D, 0x82, 0x01, 0x0F, 0x02, 0x12, 0x00, 0xAE, 0x21, 0x00, 0x4D, 0x87, 0x00, 0x6D, 0x00, 0x4D, 0x00, 0x4C, 0x00, 0x6D, 0x00, 0xCE, 0x01, 0xD1, 0x01, 0x90, 0x00, 0x8E, 0x1D, 0x00, 0x4D, 0x06, 0x00, 0x4C, 0x84, 0x00, 0x8D, 0x01, 0x70, 0x01, 0xF1, 0x01, 0x2F, 0x00, 0x6D, 0x01, 0x00, 0x4C, 0x09, 0x00, 0x4D, 0x02, 0x00, 0x4C, 0x84, 0x00, 0xEE, 0x01, 0x90, 0x01, 0xD1, 0x01, 0x2F, 0x00, 0x8D, 0x02, 0x00, 0x4C, 0x80, 0x00, 0x4D, 0x1A, 0x00, 0x4C, 0x02, 0x00, 0x4D, 0x02, 0x00, 0x4C, 0x83, 0x00, 0xAE, 0x01, 0x90, 0x01, + 0xD1, 0x00, 0xEE, 0x1A, 0x00, 0x4C, 0x07, 0x00, 0x4D, 0x80, 0x00, 0x4C, 0x01, 0x00, 0x4D, 0x80, 0x00, 0xAE, 0x01, 0x01, 0xB1, 0x81, 0x00, 0x8D, 0x00, 0x4C, 0x23, 0x00, 0x4D, 0x83, 0x00, 0x6D, 0x00, 0x8D, 0x01, 0xB1, 0x01, 0x70, 0x26, 0x00, 0x4D, 0x82, 0x00, 0x6D, 0x01, 0xD1, 0x01, 0x0F, 0x03, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x22, 0x00, 0x4D, 0x81, 0x01, 0xF1, 0x00, 0x8E, 0x27, 0x00, 0x4D, 0x80, 0x02, 0x12, 0x29, 0x00, 0x4D, 0x81, 0x01, 0xD1, 0x00, 0xEE, 0x20, 0x00, 0x4D, 0x80, 0x00, 0x6D, 0x04, 0x00, 0x4D, 0x82, 0x00, 0x8D, 0x01, 0xF1, 0x00, 0xEF, 0x0C, 0x00, 0x4D, 0x80, 0x00, 0x4C, 0x03, 0x00, 0x4D, 0x83, 0x50, 0xCF, 0x99, 0x11, 0x99, 0x31, 0x99, 0x11, 0x02, 0x99, 0x31, 0x81, 0xA1, 0x11, 0x18, 0x6E, 0x09, 0x00, 0x4D, 0x84, 0x00, 0x4C, 0x00, 0x4D, 0x00, 0xEF, 0x01, 0xF1, 0x00, 0xEF, 0x12, 0x00, 0x4D, 0x07, 0x00, 0x4C, 0x07, 0x00, 0x4D, 0x01, 0x00, 0x4C, 0x85, 0x00, 0x4D, 0x00, 0x6D, 0x01, 0x50, 0x01, 0xF1, 0x01, 0x0F, 0x00, 0x4D, 0x01, 0x00, 0x4C, 0x80, 0x00, 0x6C, 0x14, 0x00, 0x4C, 0x05, 0x00, 0x4D, 0x04, 0x00, 0x4C, 0x01, 0x00, 0x4D, 0x86, 0x00, 0x8E, 0x01, 0x90, 0x01, 0xD1, 0x01, 0x2F, 0x00, 0x6D, 0x00, 0x4C, 0x00, 0x6C, 0x07, 0x00, 0x4C, 0x86, 0x00, 0x6D, 0x01, 0x0F, 0x01, 0xB1, 0x01, 0xD1, 0x00, 0xEE, 0x00, 0x6D, 0x00, 0x2C, 0x1F, 0x00, 0x4C, 0x80, 0x00, 0x2C, 0x02, 0x00, 0x4C, 0x84, 0x00, 0xAE, 0x01, 0x90, 0x01, 0xD1, 0x00, 0xEE, 0x00, 0x4D, 0x08, 0x00, 0x4C, 0x02, 0x00, 0x4D, 0x19, 0x00, 0x4C, 0x82, 0x01, 0x2F, + 0x01, 0xF1, 0x01, 0x2F, 0x22, 0x00, 0x4C, 0x80, 0x00, 0x4D, 0x02, 0x00, 0x4C, 0x82, 0x00, 0x8E, 0x01, 0xF1, 0x01, 0x4F, 0x25, 0x00, 0x4C, 0x84, 0x00, 0x4D, 0x00, 0x6D, 0x01, 0x70, 0x01, 0x90, 0x00, 0x4D, 0x1D, 0x00, 0x4C, 0x08, 0x00, 0x4D, 0x81, 0x01, 0x0F, 0x01, 0xD1, 0x25, 0x00, 0x4D, 0x80, 0x00, 0x4C, 0x01, 0x00, 0x4D, 0x82, 0x02, 0x12, 0x00, 0x4D, 0x00, 0x4C, 0x27, 0x00, 0x4D, 0x81, 0x01, 0x0E, 0x01, 0xB0, 0x27, 0x00, 0x4C, 0x83, 0x00, 0xAE, 0x01, 0xF1, 0x00, 0xAD, 0x00, 0x4D, 0x0F, 0x00, 0x4C, 0x80, 0x30, 0x8E, 0x05, 0x99, 0x31, 0x80, 0x91, 0x11, 0x0D, 0x00, 0x4C, 0x83, 0x00, 0x8D, 0x01, 0xF1, 0x01, 0x2F, 0x00, 0x6D, 0x20, 0x00, 0x4C, 0x04, 0x00, 0x4D, 0x84, 0x00, 0x8D, 0x01, 0xB0, 0x01, 0xB1, 0x00, 0x8D, 0x00, 0x4D, 0x01, 0x00, 0x4C, 0x80, 0x00, 0x2C, 0x01, 0x00, 0x4C, 0x80, 0x00, 0x2C, 0x1E, 0x00, 0x4C, 0x83, 0x00, 0xCD, 0x01, 0x91, 0x01, 0xD1, 0x01, 0x2F, 0x08, 0x00, 0x4C, 0x82, 0x01, 0xD1, 0x01, 0x70, 0x00, 0xAE, 0x25, 0x00, 0x4C, 0x85, 0x00, 0x8D, 0x01, 0x90, 0x01, 0xD1, 0x01, 0x0F, 0x00, 0x6D, 0x00, 0x2C, 0x24, 0x00, 0x4C, 0x83, 0x00, 0xAE, 0x01, 0xD1, 0x01, 0x90, 0x00, 0x8D, 0x26, 0x00, 0x4C, 0x82, 0x00, 0xEE, 0x01, 0xF1, 0x00, 0xEE, 0x27, 0x00, 0x4C, 0x82, 0x01, 0x2F, 0x01, 0xB0, 0x00, 0x6D, 0x27, 0x00, 0x4C, 0x81, 0x01, 0x70, 0x01, 0x0F, 0x24, 0x00, 0x4C, 0x80, 0x00, 0x4D, 0x02, 0x00, 0x4C, 0x80, 0x02, 0x12, 0x29, 0x00, 0x4C, 0x82, 0x00, 0x6D, 0x01, 0xF1, 0x00, 0x8D, 0x25, 0x00, 0x4C, 0x86, 0x00, 0x6C, + 0x00, 0x4C, 0x01, 0x2F, 0x01, 0xB0, 0x00, 0x6D, 0x00, 0x4C, 0x00, 0x6C, 0x0D, 0x00, 0x4C, 0x80, 0x08, 0x4D, 0x03, 0x99, 0x31, 0x82, 0x99, 0x11, 0x99, 0x31, 0x68, 0xF0, 0x0E, 0x00, 0x4C, 0x83, 0x00, 0x8D, 0x01, 0xB0, 0x01, 0x6F, 0x00, 0x4D, 0x26, 0x00, 0x4C, 0x84, 0x01, 0x2F, 0x02, 0x11, 0x01, 0x0F, 0x00, 0x4D, 0x00, 0x2C, 0x20, 0x00, 0x4C, 0x80, 0x00, 0x2C, 0x02, 0x00, 0x4C, 0x83, 0x00, 0xAD, 0x01, 0x90, 0x01, 0xD1, 0x00, 0xEE, 0x06, 0x00, 0x4C, 0x80, 0x00, 0x6C, 0x02, 0x00, 0x4C, 0x81, 0x00, 0x2C, 0x00, 0x4C, 0x01, 0x00, 0x2C, 0x1E, 0x00, 0x4C, 0x84, 0x00, 0x8D, 0x01, 0x50, 0x01, 0xF1, 0x01, 0x2F, 0x00, 0x6C, 0x24, 0x00, 0x4C, 0x84, 0x00, 0x2C, 0x00, 0x6D, 0x01, 0x4F, 0x01, 0xD1, 0x01, 0x0F, 0x26, 0x00, 0x4C, 0x83, 0x00, 0x2C, 0x00, 0xEE, 0x01, 0xD1, 0x00, 0xCE, 0x27, 0x00, 0x4C, 0x82, 0x00, 0xAE, 0x01, 0xF1, 0x00, 0x8E, 0x01, 0x00, 0x4C, 0x80, 0x00, 0x2C, 0x24, 0x00, 0x4C, 0x82, 0x00, 0x8D, 0x02, 0x11, 0x00, 0x4D, 0x28, 0x00, 0x4C, 0x80, 0x02, 0x12, 0x2A, 0x00, 0x4C, 0x81, 0x01, 0x50, 0x01, 0x2F, 0x28, 0x00, 0x4C, 0x01, 0x01, 0x70, 0x10, 0x00, 0x4C, 0x80, 0x80, 0xF0, 0x04, 0x99, 0x31, 0x80, 0x38, 0x8E, 0x0F, 0x00, 0x4C, 0x82, 0x00, 0x6D, 0x01, 0xB0, 0x01, 0xB1, 0x27, 0x00, 0x4C, 0x80, 0x00, 0x8E, 0x01, 0x01, 0xB0, 0x80, 0x00, 0xAD, 0x26, 0x00, 0x4C, 0x83, 0x00, 0xAD, 0x01, 0xB0, 0x01, 0xB1, 0x00, 0xEE, 0x06, 0x00, 0x4C, 0x81, 0x00, 0x2C, 0x00, 0x2B, 0x07, 0x00, 0x4C, 0x03, 0x00, 0x2B, 0x03, 0x00, 0x2C, 0x80, 0x00, + 0x2B, 0x02, 0x00, 0x4C, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x4C, 0x80, 0x00, 0x2C, 0x01, 0x00, 0x4C, 0x86, 0x00, 0x2C, 0x00, 0x4C, 0x00, 0x8D, 0x01, 0x50, 0x01, 0xD1, 0x01, 0x2F, 0x00, 0x6C, 0x26, 0x00, 0x4C, 0x83, 0x00, 0xAD, 0x01, 0xB0, 0x01, 0x90, 0x00, 0x6C, 0x27, 0x00, 0x4C, 0x82, 0x01, 0x50, 0x01, 0xF1, 0x00, 0x8D, 0x25, 0x00, 0x4C, 0x80, 0x00, 0x2C, 0x01, 0x00, 0x4C, 0x81, 0x01, 0xD1, 0x00, 0xEE, 0x28, 0x00, 0x4C, 0x81, 0x01, 0x0F, 0x01, 0x6F, 0x29, 0x00, 0x4C, 0x80, 0x01, 0xF1, 0x2A, 0x00, 0x4C, 0x81, 0x00, 0xAD, 0x01, 0xF1, 0x28, 0x00, 0x4C, 0x82, 0x00, 0x6C, 0x01, 0xD1, 0x01, 0x0E, 0x0F, 0x00, 0x4C, 0x81, 0x50, 0xCF, 0xA1, 0x11, 0x03, 0x99, 0x31, 0x80, 0x08, 0x4C, 0x0F, 0x00, 0x4C, 0x84, 0x00, 0x2C, 0x00, 0x4C, 0x01, 0x4F, 0x01, 0xB1, 0x00, 0x8D, 0x27, 0x00, 0x4C, 0x82, 0x01, 0x0E, 0x01, 0xD1, 0x01, 0x4F, 0x26, 0x00, 0x4C, 0x81, 0x00, 0x2C, 0x00, 0xCE, 0x01, 0x01, 0xB1, 0x87, 0x00, 0xEE, 0x00, 0x4C, 0x00, 0x2C, 0x00, 0x4C, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4C, 0x00, 0x4B, 0x07, 0x00, 0x4C, 0x07, 0x00, 0x2B, 0x82, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x4B, 0x02, 0x00, 0x4C, 0x81, 0x00, 0x2B, 0x00, 0x4C, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x81, 0x00, 0x4C, 0x00, 0x2C, 0x01, 0x00, 0x4C, 0x87, 0x01, 0x2F, 0x01, 0xF1, 0x01, 0x4F, 0x00, 0x6C, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x2C, 0x00, 0x4B, 0x0F, 0x00, 0x4C, 0x07, 0x00, 0x2C, 0x03, 0x00, 0x4C, 0x80, 0x00, 0x2B, 0x04, 0x00, 0x4C, 0x84, 0x00, 0x4B, 0x00, 0x4C, 0x01, 0x4F, 0x01, + 0xD1, 0x00, 0xEE, 0x28, 0x00, 0x4C, 0x82, 0x01, 0x50, 0x01, 0xB0, 0x00, 0x6D, 0x28, 0x00, 0x4C, 0x81, 0x01, 0x90, 0x01, 0x4F, 0x29, 0x00, 0x4C, 0x81, 0x01, 0xB1, 0x00, 0xCE, 0x29, 0x00, 0x4C, 0x80, 0x01, 0xF1, 0x2B, 0x00, 0x4C, 0x81, 0x01, 0xB1, 0x00, 0xEE, 0x28, 0x00, 0x4C, 0x82, 0x00, 0x8D, 0x01, 0xF1, 0x00, 0xAE, 0x0E, 0x00, 0x4C, 0x80, 0x38, 0x8E, 0x03, 0x99, 0x31, 0x80, 0x68, 0xD0, 0x11, 0x00, 0x4C, 0x84, 0x00, 0x2C, 0x00, 0x4C, 0x01, 0x2E, 0x01, 0xD1, 0x00, 0x8D, 0x01, 0x00, 0x4C, 0x82, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x4B, 0x03, 0x00, 0x4C, 0x80, 0x00, 0x2C, 0x19, 0x00, 0x4C, 0x87, 0x00, 0x2C, 0x00, 0x4C, 0x00, 0x2C, 0x00, 0x4C, 0x00, 0x8C, 0x01, 0x70, 0x01, 0xB1, 0x00, 0xAD, 0x01, 0x00, 0x4C, 0x01, 0x00, 0x2B, 0x01, 0x00, 0x4C, 0x81, 0x00, 0x2B, 0x00, 0x4B, 0x18, 0x00, 0x4C, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x88, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x2C, 0x00, 0xEE, 0x01, 0xB1, 0x01, 0x90, 0x00, 0xAD, 0x00, 0x2B, 0x00, 0x4B, 0x0A, 0x00, 0x2B, 0x03, 0x00, 0x4B, 0x03, 0x00, 0x2B, 0x81, 0x00, 0x4B, 0x00, 0x2B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x4C, 0x82, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4C, 0x02, 0x00, 0x4B, 0x84, 0x00, 0x6C, 0x01, 0x0E, 0x01, 0xD1, 0x01, 0x4F, 0x00, 0x6C, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x2B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4C, 0x0F, 0x00, 0x2B, 0x07, 0x00, 0x4C, 0x81, 0x00, 0x2B, 0x00, 0x4B, 0x01, 0x00, 0x4C, 0x80, 0x00, 0x2C, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x87, 0x00, 0x4B, 0x00, 0xCD, 0x01, 0xB1, + 0x01, 0x70, 0x00, 0x8C, 0x00, 0x4B, 0x00, 0x2C, 0x00, 0x4B, 0x0E, 0x00, 0x4C, 0x07, 0x00, 0x2B, 0x08, 0x00, 0x4C, 0x82, 0x00, 0x2C, 0x00, 0x4C, 0x00, 0x2C, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4C, 0x01, 0x01, 0x90, 0x81, 0x00, 0x4C, 0x00, 0x4B, 0x01, 0x00, 0x4C, 0x80, 0x00, 0x2C, 0x1D, 0x00, 0x4C, 0x80, 0x00, 0x2C, 0x02, 0x00, 0x4C, 0x80, 0x00, 0x2C, 0x01, 0x00, 0x4C, 0x81, 0x01, 0x2F, 0x01, 0x90, 0x24, 0x00, 0x4C, 0x80, 0x00, 0x2C, 0x03, 0x00, 0x4C, 0x81, 0x00, 0xAD, 0x01, 0xD1, 0x2A, 0x00, 0x4C, 0x80, 0x01, 0xF2, 0x2B, 0x00, 0x4C, 0x82, 0x01, 0x0E, 0x01, 0x70, 0x00, 0x2B, 0x28, 0x00, 0x4C, 0x81, 0x00, 0xCE, 0x01, 0xD1, 0x02, 0x00, 0x4C, 0x80, 0x00, 0x2B, 0x02, 0x00, 0x4C, 0x01, 0x00, 0x2C, 0x81, 0x00, 0x4C, 0x00, 0x2C, 0x03, 0x00, 0x4C, 0x81, 0x10, 0x4C, 0xA1, 0x11, 0x02, 0x99, 0x31, 0x82, 0x28, 0x8D, 0x00, 0x4B, 0x00, 0x4C, 0x01, 0x00, 0x2B, 0x09, 0x00, 0x4C, 0x8C, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0xEE, 0x01, 0xF2, 0x00, 0xCD, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x2B, 0x01, 0x00, 0x4C, 0x81, 0x00, 0x2B, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x82, 0x00, 0x2C, 0x00, 0x4B, 0x00, 0x4C, 0x0F, 0x00, 0x2B, 0x01, 0x00, 0x4C, 0x06, 0x00, 0x2B, 0x89, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4C, 0x00, 0x2B, 0x00, 0xEE, 0x01, 0xD1, 0x01, 0x2F, 0x00, 0x4C, 0x00, 0x2B, 0x00, 0x4C, 0x01, 0x00, 0x2B, 0x82, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x18, 0x00, 0x2B, 0x04, 0x00, 0x4B, 0x86, 0x00, 0x4C, 0x00, + 0x2B, 0x00, 0x4C, 0x00, 0xEE, 0x01, 0xB1, 0x01, 0x70, 0x00, 0x4B, 0x0A, 0x00, 0x2B, 0x07, 0x00, 0x4B, 0x04, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x01, 0x00, 0x4B, 0x89, 0x00, 0x2B, 0x00, 0x4C, 0x01, 0x0E, 0x01, 0xB1, 0x01, 0x70, 0x00, 0x8C, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x01, 0x00, 0x2C, 0x09, 0x00, 0x2B, 0x10, 0x00, 0x4B, 0x80, 0x00, 0x2B, 0x05, 0x00, 0x4B, 0x83, 0x00, 0x6C, 0x01, 0x70, 0x01, 0xD1, 0x00, 0xCD, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4C, 0x08, 0x00, 0x4B, 0x07, 0x00, 0x2B, 0x07, 0x00, 0x4C, 0x07, 0x00, 0x2B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4C, 0x01, 0x00, 0x4B, 0x85, 0x00, 0x8D, 0x01, 0x90, 0x01, 0x4F, 0x00, 0x4C, 0x00, 0x2B, 0x00, 0x4B, 0x01, 0x00, 0x4C, 0x82, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4C, 0x0F, 0x00, 0x2B, 0x08, 0x00, 0x4C, 0x02, 0x00, 0x2B, 0x02, 0x00, 0x4C, 0x85, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x2B, 0x00, 0xCD, 0x01, 0xD1, 0x00, 0x8C, 0x01, 0x00, 0x4C, 0x80, 0x00, 0x2B, 0x1F, 0x00, 0x4C, 0x82, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x2B, 0x02, 0x00, 0x4B, 0x87, 0x00, 0x2B, 0x01, 0x4F, 0x01, 0x2E, 0x00, 0x2C, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x4B, 0x00, 0x4C, 0x01, 0x00, 0x2B, 0x23, 0x00, 0x4C, 0x80, 0x01, 0xF1, 0x2A, 0x00, 0x4C, 0x85, 0x00, 0x2B, 0x00, 0x4C, 0x01, 0xF1, 0x00, 0x6C, 0x00, 0x2B, 0x00, 0x4B, 0x21, 0x00, 0x4C, 0x81, 0x00, 0x4B, 0x00, 0x2C, 0x01, 0x00, 0x4C, 0x83, 0x00, 0x2B, 0x00, 0x4C, 0x01, 0x4F, 0x01, 0xB0, 0x03, 0x00, 0x4C, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4C, 0x01, + 0x00, 0x4B, 0x83, 0x00, 0x2B, 0x00, 0x4C, 0x00, 0x2B, 0x00, 0x4B, 0x01, 0x00, 0x4C, 0x02, 0x99, 0x31, 0x85, 0x89, 0x10, 0x00, 0x2C, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x2B, 0x00, 0x4B, 0x07, 0x00, 0x4C, 0x84, 0x00, 0x2C, 0x00, 0x2B, 0x00, 0x4C, 0x00, 0x2B, 0x00, 0x4C, 0x01, 0x00, 0x2B, 0x01, 0x00, 0x4C, 0x88, 0x00, 0x4B, 0x00, 0xAC, 0x01, 0xD1, 0x01, 0x0F, 0x00, 0x4B, 0x00, 0x2C, 0x00, 0x4C, 0x00, 0x2C, 0x00, 0x4C, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x80, 0x00, 0x4C, 0x18, 0x00, 0x4B, 0x89, 0x00, 0x4C, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4C, 0x00, 0x2B, 0x00, 0x6C, 0x01, 0x4F, 0x01, 0xD1, 0x00, 0xCD, 0x00, 0x2B, 0x03, 0x00, 0x4B, 0x10, 0x00, 0x2B, 0x07, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x81, 0x00, 0x4B, 0x00, 0x2B, 0x01, 0x00, 0x4B, 0x84, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4C, 0x01, 0x0E, 0x1D, 0x00, 0x2B, 0x83, 0x00, 0xED, 0x01, 0xB1, 0x01, 0x70, 0x00, 0x8D, 0x07, 0x00, 0x2B, 0x81, 0x00, 0x4B, 0x00, 0x2B, 0x0F, 0x00, 0x4B, 0x08, 0x00, 0x2B, 0x82, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x84, 0x00, 0xAD, 0x01, 0xD1, 0x01, 0x6F, 0x00, 0x4C, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x19, 0x00, 0x4B, 0x87, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x8D, 0x01, 0xD1, 0x01, 0x2F, 0x00, 0x2B, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x81, 0x00, 0x4C, 0x00, 0x2B, 0x09, 0x00, 0x4B, 0x07, 0x00, 0x2B, 0x09, 0x00, 0x4B, 0x80, 0x00, 0x2B, 0x04, 0x00, 0x4B, 0x85, 0x00, + 0x2B, 0x00, 0x6C, 0x01, 0xD1, 0x00, 0xCD, 0x00, 0x4B, 0x00, 0x2B, 0x21, 0x00, 0x4B, 0x89, 0x00, 0x4C, 0x00, 0x2B, 0x00, 0x4C, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x4B, 0x00, 0x4C, 0x01, 0xD1, 0x00, 0x6C, 0x00, 0x4C, 0x04, 0x00, 0x4B, 0x80, 0x00, 0x2B, 0x23, 0x00, 0x4B, 0x81, 0x01, 0xF1, 0x00, 0x2B, 0x29, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x81, 0x01, 0x4F, 0x01, 0x0E, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x2C, 0x22, 0x00, 0x4B, 0x82, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x4C, 0x01, 0x00, 0x4B, 0x86, 0x01, 0x90, 0x01, 0x2F, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x2B, 0x03, 0x00, 0x4B, 0x81, 0x00, 0x2B, 0x00, 0x4C, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x2B, 0x70, 0xF0, 0x01, 0x99, 0x31, 0x80, 0x48, 0xAE, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x4C, 0x0C, 0x00, 0x4B, 0x80, 0x00, 0x2B, 0x06, 0x00, 0x4B, 0x83, 0x00, 0x8C, 0x01, 0xB1, 0x01, 0x4F, 0x00, 0x2B, 0x05, 0x00, 0x4B, 0x82, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x2B, 0x07, 0x00, 0x4B, 0x07, 0x00, 0x2B, 0x03, 0x00, 0x4B, 0x06, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x2B, 0x83, 0x00, 0xCD, 0x01, 0xD1, 0x01, 0x50, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x10, 0x00, 0x4B, 0x07, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x01, 0x00, 0x4B, 0x80, 0x00, 0x2B, 0x01, 0x00, 0x2A, 0x01, 0x00, 0x4A, 0x07, 0x00, 0x2A, 0x07, 0x00, 0x2B, 0x81, 0x00, 0x2A, 0x00, 0x4A, 0x05, 0x00, 0x2B, 0x89, 0x00, 0xCD, 0x01, 0xB0, 0x01, 0x70, 0x00, 0xAC, 0x00, 0x2A, 0x00, 0x4B, 0x00, 0x2B, 0x00, + 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x81, 0x00, 0x4A, 0x00, 0x2A, 0x19, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x01, 0x00, 0x4B, 0x84, 0x01, 0x6F, 0x01, 0xD1, 0x00, 0xAD, 0x00, 0x2B, 0x00, 0x2A, 0x01, 0x00, 0x2B, 0x82, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x1F, 0x00, 0x2B, 0x01, 0x00, 0x4B, 0x89, 0x00, 0x2B, 0x00, 0xCE, 0x01, 0xD1, 0x00, 0xCD, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x07, 0x00, 0x2B, 0x07, 0x00, 0x4B, 0x0A, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x03, 0x00, 0x2B, 0x82, 0x00, 0x4B, 0x01, 0x90, 0x01, 0x2F, 0x04, 0x00, 0x2B, 0x1F, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x85, 0x00, 0xEE, 0x01, 0x90, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x24, 0x00, 0x4B, 0x81, 0x01, 0xF2, 0x00, 0x2B, 0x29, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x84, 0x00, 0xAD, 0x01, 0xB1, 0x00, 0x2B, 0x00, 0x2C, 0x00, 0x2B, 0x10, 0x00, 0x4B, 0x12, 0x00, 0x2B, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x82, 0x00, 0x6C, 0x01, 0xD1, 0x00, 0xCE, 0x02, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x04, 0x00, 0x2B, 0x80, 0x60, 0xCF, 0x01, 0x99, 0x31, 0x80, 0x10, 0x4C, 0x10, 0x00, 0x2B, 0x82, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x04, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x01, 0x01, 0x90, 0x80, 0x00, 0x4C, 0x01, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x1D, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x80, 0x00, 0x4B, + 0x02, 0x00, 0x2B, 0x83, 0x00, 0x4B, 0x01, 0x4F, 0x01, 0xB1, 0x00, 0xAD, 0x01, 0x00, 0x2B, 0x80, 0x00, 0x2A, 0x17, 0x00, 0x2B, 0x80, 0x00, 0x2A, 0x03, 0x00, 0x2B, 0x80, 0x00, 0x2A, 0x01, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x80, 0x00, 0x4A, 0x1A, 0x00, 0x2A, 0x83, 0x00, 0xCD, 0x01, 0x90, 0x01, 0xB0, 0x00, 0xCD, 0x04, 0x00, 0x2A, 0x82, 0x00, 0x4A, 0x00, 0x2A, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x80, 0x00, 0x4A, 0x12, 0x00, 0x2A, 0x07, 0x00, 0x2B, 0x86, 0x00, 0x4A, 0x00, 0x2B, 0x00, 0x2A, 0x00, 0x4B, 0x00, 0xCD, 0x01, 0xD1, 0x01, 0x2F, 0x01, 0x00, 0x4B, 0x81, 0x00, 0x2A, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x2B, 0x01, 0x00, 0x4B, 0x15, 0x00, 0x2B, 0x07, 0x00, 0x4B, 0x85, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0xCE, 0x01, 0xD1, 0x00, 0xAD, 0x00, 0x4B, 0x04, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x1B, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x82, 0x00, 0x4B, 0x01, 0x4F, 0x01, 0x90, 0x02, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x21, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x02, 0x00, 0x4B, 0x82, 0x01, 0x90, 0x00, 0xCD, 0x00, 0x4B, 0x05, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x20, 0x00, 0x2B, 0x85, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x01, 0xD1, 0x00, 0x2B, 0x00, 0x4B, 0x28, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x83, 0x01, 0xB0, 0x00, 0xAD, 0x00, 0x2B, 0x00, 0x4B, 0x20, 0x00, 0x2B, 0x02, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x85, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0xAD, 0x01, 0xD1, + 0x00, 0x8C, 0x03, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x06, 0x00, 0x2B, 0x83, 0x48, 0xAE, 0x99, 0x31, 0x68, 0xF0, 0x00, 0x4B, 0x12, 0x00, 0x2B, 0x02, 0x00, 0x4B, 0x03, 0x00, 0x2B, 0x83, 0x00, 0x4B, 0x01, 0x4F, 0x01, 0x90, 0x00, 0x6C, 0x03, 0x00, 0x2B, 0x01, 0x00, 0x4B, 0x18, 0x00, 0x2B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x4B, 0x82, 0x00, 0x2A, 0x00, 0x2B, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x87, 0x00, 0x2A, 0x00, 0x2B, 0x00, 0x4A, 0x00, 0xAC, 0x01, 0x90, 0x01, 0x70, 0x00, 0x6C, 0x00, 0x4A, 0x3A, 0x00, 0x2A, 0x84, 0x00, 0x29, 0x00, 0x8C, 0x01, 0x70, 0x01, 0x90, 0x00, 0xCD, 0x29, 0x00, 0x2A, 0x87, 0x00, 0x6B, 0x01, 0x6F, 0x01, 0x90, 0x00, 0x8C, 0x00, 0x2A, 0x00, 0x4A, 0x00, 0x2A, 0x00, 0x4A, 0x1D, 0x00, 0x2A, 0x08, 0x00, 0x2B, 0x83, 0x01, 0x2F, 0x01, 0xB1, 0x00, 0x6C, 0x00, 0x4B, 0x02, 0x00, 0x2B, 0x80, 0x00, 0x4A, 0x02, 0x00, 0x2B, 0x01, 0x00, 0x2A, 0x1A, 0x00, 0x2B, 0x01, 0x00, 0x4B, 0x86, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0xCD, 0x01, 0xB1, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x24, 0x00, 0x2B, 0x86, 0x00, 0x6C, 0x01, 0xD1, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x00, 0x2B, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x24, 0x00, 0x2B, 0x80, 0x01, 0xD1, 0x2B, 0x00, 0x2B, 0x83, 0x00, 0x4B, 0x00, 0x2B, 0x01, 0x0E, 0x01, 0x4F, 0x01, 0x00, 0x4B, 0x21, 0x00, 0x2B, 0x80, 0x00, 0x4A, 0x06, 0x00, 0x2B, 0x85, 0x01, 0x0E, 0x01, 0x90, 0x00, 0x4B, 0x00, 0x2A, 0x00, 0x2B, 0x00, + 0x2A, 0x01, 0x00, 0x2B, 0x82, 0x00, 0x2A, 0x00, 0x2B, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x84, 0x00, 0x4B, 0x30, 0x8D, 0x99, 0x11, 0x20, 0x6C, 0x00, 0x4B, 0x01, 0x00, 0x2B, 0x80, 0x00, 0x2A, 0x09, 0x00, 0x2B, 0x01, 0x00, 0x4B, 0x85, 0x00, 0x2A, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4A, 0x00, 0x2A, 0x01, 0x00, 0x2B, 0x80, 0x00, 0x4B, 0x02, 0x00, 0x2A, 0x88, 0x00, 0x2B, 0x01, 0x0E, 0x01, 0xB1, 0x00, 0x8C, 0x00, 0x2A, 0x00, 0x4A, 0x00, 0x2B, 0x00, 0x2A, 0x00, 0x4A, 0x24, 0x00, 0x2A, 0x83, 0x00, 0x4B, 0x01, 0x0E, 0x01, 0xB0, 0x00, 0xED, 0x23, 0x00, 0x2A, 0x0D, 0x00, 0x29, 0x80, 0x00, 0x2A, 0x02, 0x00, 0x29, 0x02, 0x00, 0x2A, 0x86, 0x00, 0x29, 0x00, 0x8B, 0x01, 0x6F, 0x01, 0xB0, 0x00, 0xCD, 0x00, 0x2A, 0x00, 0x29, 0x28, 0x00, 0x2A, 0x83, 0x00, 0xED, 0x01, 0xB1, 0x01, 0x0E, 0x00, 0x4A, 0x01, 0x00, 0x2A, 0x80, 0x00, 0x29, 0x26, 0x00, 0x2A, 0x83, 0x00, 0x4B, 0x01, 0x4F, 0x01, 0x6F, 0x00, 0x4B, 0x27, 0x00, 0x2A, 0x80, 0x00, 0x2B, 0x01, 0x00, 0x2A, 0x83, 0x00, 0x8B, 0x01, 0xB1, 0x00, 0x8C, 0x00, 0x2B, 0x04, 0x00, 0x2A, 0x80, 0x00, 0x2B, 0x1F, 0x00, 0x2A, 0x82, 0x00, 0x2B, 0x00, 0x2A, 0x00, 0x2B, 0x01, 0x00, 0x2A, 0x81, 0x01, 0x2E, 0x01, 0x2F, 0x2C, 0x00, 0x2A, 0x80, 0x01, 0xD2, 0x2B, 0x00, 0x2A, 0x86, 0x00, 0x2B, 0x00, 0x2A, 0x00, 0x4B, 0x01, 0xD1, 0x00, 0x6B, 0x00, 0x2A, 0x00, 0x2B, 0x27, 0x00, 0x2A, 0x81, 0x00, 0x2B, 0x00, 0x2A, 0x01, 0x01, 0x4F, 0x0A, 0x00, 0x2A, 0x81, 0x18, 0x6B, 0x88, 0xF1, 0x1E, 0x00, 0x2A, 0x84, 0x00, + 0xCD, 0x01, 0xB1, 0x00, 0xCD, 0x00, 0x2A, 0x00, 0x4A, 0x27, 0x00, 0x2A, 0x84, 0x00, 0x29, 0x00, 0xAC, 0x01, 0x90, 0x01, 0x6F, 0x00, 0x6B, 0x02, 0x00, 0x2A, 0x80, 0x00, 0x29, 0x01, 0x00, 0x2A, 0x03, 0x00, 0x29, 0x80, 0x00, 0x2A, 0x01, 0x00, 0x29, 0x10, 0x00, 0x2A, 0x17, 0x00, 0x29, 0x84, 0x00, 0x8B, 0x01, 0x4F, 0x01, 0x90, 0x00, 0xED, 0x00, 0x4A, 0x23, 0x00, 0x29, 0x80, 0x00, 0x2A, 0x01, 0x00, 0x29, 0x02, 0x00, 0x2A, 0x85, 0x00, 0x6A, 0x01, 0x4F, 0x01, 0x90, 0x00, 0xAB, 0x00, 0x29, 0x00, 0x2A, 0x02, 0x00, 0x29, 0x24, 0x00, 0x2A, 0x84, 0x00, 0x29, 0x00, 0x4A, 0x01, 0x70, 0x01, 0x6F, 0x00, 0x4A, 0x02, 0x00, 0x2A, 0x80, 0x00, 0x29, 0x26, 0x00, 0x2A, 0x83, 0x00, 0x4A, 0x01, 0x70, 0x00, 0xED, 0x00, 0x4A, 0x2B, 0x00, 0x2A, 0x81, 0x01, 0x90, 0x00, 0x8C, 0x2C, 0x00, 0x2A, 0x80, 0x01, 0xD1, 0x2E, 0x00, 0x2A, 0x81, 0x01, 0x2F, 0x01, 0x0E, 0x29, 0x00, 0x2A, 0x84, 0x00, 0x29, 0x00, 0x2A, 0x00, 0x4B, 0x01, 0x90, 0x00, 0xED, 0x03, 0x00, 0x2A, 0x80, 0x00, 0x4A, 0x05, 0x00, 0x2A, 0x81, 0x28, 0x6B, 0x00, 0x29, 0x1E, 0x00, 0x2A, 0x84, 0x00, 0xAC, 0x01, 0xB1, 0x00, 0xED, 0x00, 0x29, 0x00, 0x2A, 0x01, 0x00, 0x29, 0x01, 0x00, 0x2A, 0x82, 0x00, 0x29, 0x00, 0x2A, 0x00, 0x29, 0x01, 0x00, 0x2A, 0x80, 0x00, 0x29, 0x17, 0x00, 0x2A, 0x01, 0x00, 0x29, 0x80, 0x00, 0x2A, 0x03, 0x00, 0x29, 0x83, 0x00, 0x2A, 0x00, 0xEE, 0x01, 0xB1, 0x01, 0x0D, 0x02, 0x00, 0x29, 0x80, 0x00, 0x2A, 0x1C, 0x00, 0x29, 0x03, 0x00, 0x28, 0x01, 0x00, 0x29, 0x02, 0x00, 0x28, + 0x01, 0x00, 0x29, 0x01, 0x00, 0x28, 0x02, 0x00, 0x29, 0x87, 0x00, 0x09, 0x00, 0x29, 0x00, 0x49, 0x01, 0x2E, 0x01, 0x90, 0x00, 0xED, 0x00, 0x4A, 0x00, 0x28, 0x02, 0x00, 0x29, 0x80, 0x00, 0x09, 0x25, 0x00, 0x29, 0x83, 0x00, 0xCC, 0x01, 0xB0, 0x01, 0x0E, 0x00, 0x49, 0x2A, 0x00, 0x29, 0x84, 0x00, 0x6B, 0x01, 0x90, 0x01, 0x2E, 0x00, 0x49, 0x00, 0x2A, 0x1D, 0x00, 0x29, 0x09, 0x00, 0x2A, 0x02, 0x00, 0x29, 0x83, 0x01, 0x2E, 0x01, 0x6F, 0x00, 0x2A, 0x00, 0x29, 0x01, 0x00, 0x2A, 0x80, 0x00, 0x29, 0x27, 0x00, 0x2A, 0x81, 0x00, 0xAC, 0x01, 0x90, 0x2D, 0x00, 0x2A, 0x80, 0x01, 0xD1, 0x2B, 0x00, 0x2A, 0x84, 0x00, 0x29, 0x00, 0x2A, 0x00, 0x29, 0x00, 0xAC, 0x01, 0x90, 0x2A, 0x00, 0x2A, 0x86, 0x00, 0x29, 0x00, 0x2A, 0x00, 0x8B, 0x01, 0xB1, 0x00, 0x8B, 0x00, 0x29, 0x00, 0x2A, 0x02, 0x00, 0x29, 0x80, 0x00, 0x2A, 0x05, 0x00, 0x29, 0x01, 0x00, 0x2A, 0x1D, 0x00, 0x29, 0x82, 0x00, 0x6B, 0x01, 0xB0, 0x01, 0x2E, 0x2B, 0x00, 0x29, 0x83, 0x00, 0x8B, 0x01, 0x70, 0x01, 0x4F, 0x00, 0x6A, 0x07, 0x00, 0x29, 0x80, 0x00, 0x09, 0x15, 0x00, 0x29, 0x05, 0x00, 0x28, 0x80, 0x00, 0x29, 0x08, 0x00, 0x28, 0x84, 0x00, 0x69, 0x01, 0x0D, 0x01, 0xB1, 0x00, 0xED, 0x00, 0x49, 0x03, 0x00, 0x28, 0x80, 0x00, 0x29, 0x1A, 0x00, 0x28, 0x03, 0x00, 0x29, 0x80, 0x00, 0x28, 0x04, 0x00, 0x29, 0x84, 0x00, 0x28, 0x00, 0x6A, 0x01, 0x4F, 0x01, 0x6F, 0x00, 0x8B, 0x05, 0x00, 0x29, 0x80, 0x00, 0x28, 0x24, 0x00, 0x29, 0x82, 0x00, 0x6A, 0x01, 0xB0, 0x00, 0xED, 0x2B, 0x00, 0x29, 0x83, + 0x00, 0x49, 0x00, 0xCD, 0x01, 0xB0, 0x00, 0x4A, 0x2C, 0x00, 0x29, 0x81, 0x01, 0x4F, 0x00, 0xCD, 0x2D, 0x00, 0x29, 0x80, 0x01, 0xD1, 0x2A, 0x00, 0x29, 0x80, 0x00, 0x2A, 0x02, 0x00, 0x29, 0x82, 0x00, 0x2A, 0x01, 0x90, 0x00, 0xAB, 0x29, 0x00, 0x29, 0x80, 0x00, 0x4A, 0x01, 0x00, 0x29, 0x82, 0x00, 0xCC, 0x01, 0xB1, 0x00, 0x49, 0x2B, 0x00, 0x29, 0x83, 0x00, 0x49, 0x01, 0x6F, 0x01, 0x2E, 0x00, 0x4A, 0x21, 0x00, 0x29, 0x80, 0x00, 0x28, 0x05, 0x00, 0x29, 0x01, 0x00, 0x28, 0x86, 0x00, 0x09, 0x00, 0xED, 0x01, 0xB1, 0x00, 0xED, 0x00, 0x08, 0x00, 0x28, 0x00, 0x29, 0x04, 0x00, 0x28, 0x01, 0x00, 0x29, 0x21, 0x00, 0x28, 0x84, 0x00, 0x49, 0x01, 0x0E, 0x01, 0x91, 0x01, 0x0E, 0x00, 0x69, 0x2B, 0x00, 0x28, 0x83, 0x00, 0xED, 0x01, 0xB1, 0x00, 0xEC, 0x00, 0x08, 0x01, 0x00, 0x28, 0x82, 0x00, 0x29, 0x00, 0x08, 0x00, 0x29, 0x1F, 0x00, 0x28, 0x04, 0x00, 0x29, 0x84, 0x00, 0x28, 0x00, 0x29, 0x00, 0xAB, 0x01, 0xB1, 0x00, 0xAC, 0x02, 0x00, 0x29, 0x80, 0x00, 0x28, 0x02, 0x00, 0x29, 0x80, 0x00, 0x28, 0x21, 0x00, 0x29, 0x80, 0x00, 0x28, 0x01, 0x00, 0x29, 0x82, 0x00, 0x6A, 0x01, 0xB1, 0x00, 0x6A, 0x2C, 0x00, 0x29, 0x82, 0x00, 0x4A, 0x01, 0xB1, 0x00, 0x6A, 0x2D, 0x00, 0x29, 0x80, 0x01, 0xB1, 0x2F, 0x00, 0x29, 0x81, 0x00, 0xED, 0x01, 0x2E, 0x28, 0x00, 0x29, 0x80, 0x00, 0x28, 0x03, 0x00, 0x29, 0x81, 0x01, 0x2E, 0x01, 0x6F, 0x03, 0x00, 0x29, 0x80, 0x00, 0x28, 0x02, 0x00, 0x29, 0x80, 0x00, 0x28, 0x0F, 0x00, 0x29, 0x0F, 0x00, 0x28, 0x01, 0x00, 0x29, 0x85, + 0x00, 0x28, 0x00, 0x29, 0x00, 0x49, 0x01, 0x2E, 0x01, 0x6F, 0x00, 0x29, 0x01, 0x00, 0x28, 0x02, 0x00, 0x29, 0x80, 0x00, 0x09, 0x19, 0x00, 0x28, 0x80, 0x00, 0x08, 0x07, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x00, 0x28, 0x83, 0x00, 0x6A, 0x01, 0x4F, 0x01, 0x70, 0x00, 0x8A, 0x27, 0x00, 0x28, 0x84, 0x00, 0x29, 0x00, 0xED, 0x01, 0x90, 0x01, 0x0E, 0x00, 0x4A, 0x26, 0x00, 0x28, 0x80, 0x00, 0x08, 0x02, 0x00, 0x28, 0x86, 0x00, 0x29, 0x00, 0x6A, 0x01, 0x6F, 0x01, 0x4F, 0x00, 0x6A, 0x00, 0x28, 0x00, 0x29, 0x04, 0x00, 0x28, 0x80, 0x00, 0x29, 0x24, 0x00, 0x28, 0x82, 0x00, 0xCC, 0x01, 0x90, 0x00, 0x8A, 0x2C, 0x00, 0x28, 0x82, 0x00, 0x49, 0x01, 0x90, 0x00, 0xCC, 0x02, 0x00, 0x28, 0x02, 0x00, 0x29, 0x02, 0x00, 0x28, 0x80, 0x00, 0x29, 0x21, 0x00, 0x28, 0x83, 0x00, 0x29, 0x00, 0x28, 0x00, 0xCC, 0x01, 0x2E, 0x2E, 0x00, 0x29, 0x80, 0x01, 0xB1, 0x22, 0x00, 0x29, 0x09, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x00, 0x28, 0x82, 0x00, 0x4A, 0x01, 0xB1, 0x00, 0x49, 0x07, 0x00, 0x28, 0x80, 0x00, 0x29, 0x1F, 0x00, 0x28, 0x81, 0x00, 0x29, 0x00, 0x28, 0x01, 0x00, 0x29, 0x82, 0x00, 0x28, 0x01, 0x6F, 0x00, 0xED, 0x04, 0x00, 0x28, 0x85, 0x00, 0x08, 0x00, 0x29, 0x00, 0x28, 0x00, 0x29, 0x00, 0x28, 0x00, 0x08, 0x1E, 0x00, 0x28, 0x80, 0x00, 0x08, 0x02, 0x00, 0x28, 0x84, 0x01, 0x0D, 0x01, 0x90, 0x00, 0x6A, 0x00, 0x28, 0x00, 0x29, 0x01, 0x00, 0x28, 0x82, 0x00, 0x29, 0x00, 0x28, 0x00, 0x29, 0x25, 0x00, 0x28, 0x83, 0x00, 0xCC, 0x01, 0x90, 0x00, 0xED, 0x00, 0x49, + 0x1E, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x00, 0x28, 0x86, 0x00, 0x29, 0x00, 0x28, 0x00, 0x49, 0x00, 0xED, 0x01, 0x90, 0x01, 0x2F, 0x00, 0x69, 0x24, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x00, 0x28, 0x80, 0x00, 0x29, 0x02, 0x00, 0x28, 0x83, 0x00, 0x29, 0x00, 0xEC, 0x01, 0xB0, 0x00, 0xED, 0x04, 0x00, 0x28, 0x80, 0x00, 0x29, 0x05, 0x00, 0x28, 0x80, 0x00, 0x29, 0x20, 0x00, 0x28, 0x82, 0x01, 0x0E, 0x01, 0x90, 0x00, 0x6A, 0x2B, 0x00, 0x28, 0x81, 0x00, 0x29, 0x00, 0x28, 0x01, 0x01, 0x2E, 0x81, 0x00, 0x28, 0x00, 0x29, 0x2B, 0x00, 0x28, 0x82, 0x00, 0x29, 0x01, 0x6F, 0x00, 0xAB, 0x2E, 0x00, 0x28, 0x80, 0x01, 0xB1, 0x30, 0x00, 0x28, 0x81, 0x01, 0x2E, 0x00, 0xEC, 0x27, 0x00, 0x28, 0x80, 0x00, 0x29, 0x04, 0x00, 0x28, 0x85, 0x00, 0x49, 0x01, 0x90, 0x00, 0xAB, 0x00, 0x29, 0x00, 0x28, 0x00, 0x29, 0x05, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x00, 0x28, 0x80, 0x00, 0x29, 0x1D, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x00, 0x28, 0x82, 0x00, 0xCC, 0x01, 0x90, 0x00, 0xAB, 0x03, 0x00, 0x28, 0x80, 0x00, 0x08, 0x1C, 0x00, 0x28, 0x80, 0x00, 0x08, 0x08, 0x00, 0x28, 0x86, 0x00, 0x29, 0x00, 0x49, 0x01, 0x4E, 0x01, 0x70, 0x00, 0x8B, 0x00, 0x28, 0x00, 0x29, 0x1C, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x00, 0x28, 0x83, 0x00, 0xCC, 0x01, 0x90, 0x01, 0x4F, 0x00, 0x8A, 0x03, 0x00, 0x28, 0x80, 0x00, 0x29, 0x27, 0x00, 0x28, 0x83, 0x00, 0x8A, 0x01, 0x4F, 0x01, 0x2F, 0x00, 0x6A, 0x2C, 0x00, 0x28, 0x83, 0x00, 0x29, 0x01, 0x2E, 0x01, 0x4F, 0x00, 0x49, 0x07, 0x00, + 0x28, 0x80, 0x00, 0x29, 0x02, 0x00, 0x28, 0x80, 0x00, 0x08, 0x20, 0x00, 0x28, 0x82, 0x00, 0xCC, 0x01, 0x6F, 0x00, 0x49, 0x2D, 0x00, 0x28, 0x81, 0x00, 0x6A, 0x01, 0x90, 0x2F, 0x00, 0x28, 0x80, 0x01, 0xB1, 0x2F, 0x00, 0x28, 0x82, 0x00, 0x29, 0x00, 0x8B, 0x01, 0x8F, 0x2B, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x00, 0x28, 0x82, 0x00, 0xAB, 0x01, 0x90, 0x00, 0x6A, 0x0A, 0x00, 0x28, 0x80, 0x00, 0x08, 0x1A, 0x00, 0x28, 0x80, 0x00, 0x29, 0x04, 0x00, 0x28, 0x85, 0x00, 0x29, 0x00, 0xAC, 0x01, 0x90, 0x00, 0xAC, 0x00, 0x28, 0x00, 0x29, 0x2B, 0x00, 0x28, 0x83, 0x00, 0xAC, 0x01, 0x90, 0x01, 0x2E, 0x00, 0x49, 0x19, 0x00, 0x28, 0x80, 0x00, 0x29, 0x02, 0x00, 0x28, 0x83, 0x00, 0xCB, 0x01, 0x70, 0x01, 0x4F, 0x00, 0x8A, 0x29, 0x00, 0x28, 0x86, 0x00, 0x29, 0x00, 0x09, 0x00, 0x28, 0x00, 0x49, 0x00, 0xED, 0x01, 0x90, 0x00, 0xCC, 0x2B, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x00, 0x28, 0x01, 0x01, 0x4F, 0x80, 0x00, 0x49, 0x03, 0x00, 0x28, 0x80, 0x00, 0x08, 0x28, 0x00, 0x28, 0x82, 0x00, 0x6A, 0x01, 0x90, 0x00, 0x6A, 0x03, 0x00, 0x28, 0x80, 0x00, 0x08, 0x29, 0x00, 0x28, 0x81, 0x01, 0x0E, 0x00, 0xED, 0x2F, 0x00, 0x28, 0x80, 0x01, 0xB1, 0x2A, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x00, 0x28, 0x80, 0x00, 0x29, 0x02, 0x00, 0x28, 0x82, 0x01, 0x70, 0x00, 0x8A, 0x00, 0x29, 0x2D, 0x00, 0x28, 0x83, 0x00, 0xED, 0x01, 0x4F, 0x00, 0x48, 0x00, 0x29, 0x02, 0x00, 0x28, 0x80, 0x00, 0x29, 0x28, 0x00, 0x28, 0x82, 0x00, 0x6A, 0x01, 0x90, 0x01, 0x0D, 0x03, 0x00, 0x28, + 0x80, 0x00, 0x29, 0x28, 0x00, 0x28, 0x83, 0x00, 0x49, 0x01, 0x2E, 0x01, 0x90, 0x00, 0xAB, 0x01, 0x00, 0x28, 0x80, 0x00, 0x29, 0x05, 0x00, 0x28, 0x80, 0x00, 0x29, 0x0E, 0x00, 0x28, 0x82, 0x00, 0x08, 0x00, 0x28, 0x00, 0xAC, 0x01, 0x01, 0x70, 0x80, 0x00, 0x8B, 0x2A, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x00, 0x28, 0x83, 0x00, 0x8A, 0x01, 0x6F, 0x01, 0x4E, 0x00, 0x69, 0x2A, 0x00, 0x28, 0x85, 0x00, 0x08, 0x00, 0x29, 0x00, 0x28, 0x00, 0x6A, 0x01, 0x70, 0x01, 0x0E, 0x2E, 0x00, 0x28, 0x82, 0x00, 0x48, 0x01, 0x90, 0x00, 0xAB, 0x2D, 0x00, 0x28, 0x83, 0x00, 0x08, 0x00, 0x28, 0x01, 0x90, 0x00, 0x6A, 0x2F, 0x00, 0x28, 0x80, 0x01, 0xB1, 0x30, 0x00, 0x28, 0x83, 0x00, 0x29, 0x00, 0xCD, 0x01, 0x0D, 0x00, 0x08, 0x2E, 0x00, 0x28, 0x82, 0x01, 0x2F, 0x01, 0x2E, 0x00, 0x08, 0x02, 0x00, 0x28, 0x80, 0x00, 0x08, 0x29, 0x00, 0x28, 0x83, 0x00, 0x49, 0x01, 0x4F, 0x01, 0x0E, 0x00, 0x49, 0x2D, 0x00, 0x28, 0x83, 0x00, 0xAB, 0x01, 0x90, 0x01, 0x0E, 0x00, 0x29, 0x03, 0x00, 0x28, 0x80, 0x00, 0x29, 0x11, 0x00, 0x28, 0x80, 0x00, 0x8A, 0x01, 0x01, 0x6F, 0x80, 0x00, 0xAC, 0x27, 0x00, 0x28, 0x81, 0x00, 0x29, 0x00, 0x08, 0x03, 0x00, 0x28, 0x83, 0x00, 0x48, 0x01, 0x0D, 0x01, 0x90, 0x00, 0xCC, 0x2E, 0x00, 0x28, 0x82, 0x00, 0x6A, 0x01, 0x90, 0x00, 0xED, 0x28, 0x00, 0x28, 0x01, 0x00, 0x08, 0x04, 0x00, 0x28, 0x81, 0x01, 0x4F, 0x01, 0x0D, 0x2E, 0x00, 0x28, 0x84, 0x00, 0x29, 0x00, 0xCB, 0x01, 0x6F, 0x00, 0x28, 0x00, 0x29, 0x01, 0x00, 0x28, 0x80, 0x00, 0x29, 0x2B, + 0x00, 0x28, 0x80, 0x01, 0xB1, 0x2C, 0x00, 0x28, 0x80, 0x00, 0x08, 0x03, 0x00, 0x28, 0x82, 0x00, 0x69, 0x01, 0xB1, 0x00, 0x49, 0x2E, 0x00, 0x28, 0x82, 0x00, 0x49, 0x01, 0x70, 0x00, 0xCC, 0x2B, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x01, 0x4F, 0x81, 0x00, 0x49, 0x00, 0x29, 0x04, 0x00, 0x28, 0x80, 0x00, 0x29, 0x21, 0x00, 0x28, 0x80, 0x00, 0x08, 0x03, 0x00, 0x28, 0x83, 0x00, 0x29, 0x01, 0x0D, 0x01, 0xB0, 0x00, 0xCC, 0x13, 0x00, 0x28, 0x83, 0x00, 0x8B, 0x01, 0x4F, 0x01, 0x70, 0x00, 0xAB, 0x01, 0x00, 0x28, 0x80, 0x00, 0x29, 0x29, 0x00, 0x28, 0x85, 0x00, 0x29, 0x00, 0x28, 0x00, 0x8B, 0x01, 0x70, 0x01, 0x4E, 0x00, 0x49, 0x2E, 0x00, 0x28, 0x82, 0x00, 0xAB, 0x01, 0x91, 0x00, 0xAB, 0x02, 0x00, 0x28, 0x80, 0x00, 0x29, 0x2A, 0x00, 0x28, 0x86, 0x00, 0x29, 0x00, 0xEC, 0x01, 0x6F, 0x00, 0x49, 0x00, 0x08, 0x00, 0x28, 0x00, 0x29, 0x02, 0x00, 0x28, 0x80, 0x00, 0x29, 0x27, 0x00, 0x28, 0x82, 0x00, 0x29, 0x01, 0x2E, 0x00, 0xCC, 0x01, 0x00, 0x28, 0x80, 0x00, 0x29, 0x2D, 0x00, 0x28, 0x80, 0x01, 0xB1, 0x2E, 0x00, 0x28, 0x80, 0x00, 0x29, 0x02, 0x00, 0x28, 0x81, 0x01, 0x2E, 0x00, 0xCC, 0x03, 0x00, 0x28, 0x80, 0x00, 0x29, 0x2A, 0x00, 0x28, 0x82, 0x00, 0x6A, 0x01, 0x91, 0x00, 0x8A, 0x2C, 0x00, 0x28, 0x80, 0x00, 0x08, 0x01, 0x00, 0x28, 0x83, 0x01, 0x0E, 0x01, 0x70, 0x00, 0x6A, 0x00, 0x08, 0x04, 0x00, 0x28, 0x80, 0x00, 0x29, 0x27, 0x00, 0x28, 0x83, 0x00, 0x8A, 0x01, 0x70, 0x01, 0x4F, 0x00, 0x4A, 0x02, 0x00, 0x28, + 0x80, 0x00, 0x29, 0x0C, 0x00, 0x28, 0x83, 0x01, 0x2F, 0x01, 0x90, 0x00, 0xEC, 0x00, 0x29, 0x2D, 0x00, 0x28, 0x85, 0x00, 0x49, 0x01, 0x2E, 0x01, 0x90, 0x00, 0xAB, 0x00, 0x28, 0x00, 0x29, 0x2D, 0x00, 0x28, 0x82, 0x00, 0xED, 0x01, 0x90, 0x00, 0x6A, 0x01, 0x00, 0x28, 0x82, 0x00, 0x29, 0x00, 0x28, 0x00, 0x29, 0x26, 0x00, 0x28, 0x80, 0x00, 0x29, 0x02, 0x00, 0x28, 0x84, 0x00, 0xAA, 0x01, 0x90, 0x00, 0x8A, 0x00, 0x28, 0x00, 0x29, 0x2D, 0x00, 0x28, 0x83, 0x00, 0x49, 0x01, 0xB1, 0x00, 0x49, 0x00, 0x08, 0x01, 0x00, 0x28, 0x80, 0x00, 0x29, 0x2C, 0x00, 0x28, 0x80, 0x01, 0xB1, 0x2C, 0x00, 0x28, 0x80, 0x00, 0x29, 0x03, 0x00, 0x28, 0x82, 0x00, 0x29, 0x00, 0xAB, 0x01, 0x70, 0x01, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x00, 0x28, 0x80, 0x00, 0x08, 0x2A, 0x00, 0x28, 0x83, 0x00, 0xAC, 0x01, 0x90, 0x00, 0x48, 0x00, 0x29, 0x2A, 0x00, 0x28, 0x80, 0x00, 0x29, 0x02, 0x00, 0x28, 0x82, 0x00, 0xEC, 0x01, 0x90, 0x00, 0x8B, 0x01, 0x00, 0x28, 0x80, 0x00, 0x29, 0x27, 0x00, 0x28, 0x01, 0x00, 0x29, 0x01, 0x00, 0x28, 0x83, 0x00, 0x48, 0x00, 0xED, 0x01, 0x90, 0x00, 0xCC, 0x0F, 0x00, 0x28, 0x81, 0x00, 0xEC, 0x00, 0x49, 0x2A, 0x00, 0x28, 0x87, 0x00, 0x29, 0x00, 0x28, 0x00, 0x29, 0x00, 0x08, 0x00, 0xAB, 0x01, 0x90, 0x01, 0x2E, 0x00, 0x49, 0x2F, 0x00, 0x28, 0x82, 0x01, 0x0E, 0x01, 0x70, 0x00, 0x6A, 0x2C, 0x00, 0x28, 0x80, 0x00, 0x29, 0x01, 0x00, 0x28, 0x82, 0x00, 0x69, 0x01, 0x90, 0x00, 0x8B, 0x05, 0x00, 0x28, 0x80, 0x00, 0x29, 0x29, 0x00, 0x28, 0x81, 0x00, + 0xED, 0x01, 0x0E, 0x31, 0x00, 0x28, 0x80, 0x01, 0xB1, 0x32, 0x00, 0x28, 0x82, 0x00, 0x29, 0x01, 0x90, 0x00, 0x6A, 0x30, 0x00, 0x28, 0x81, 0x01, 0x0D, 0x01, 0x4F, 0x2D, 0x00, 0x28, 0x01, 0x00, 0x29, 0x83, 0x00, 0x08, 0x00, 0xCB, 0x01, 0x91, 0x00, 0xCC, 0x2B, 0x00, 0x28, 0x80, 0x00, 0x29, 0x02, 0x00, 0x28, 0x83, 0x00, 0x6B, 0x01, 0x4F, 0x01, 0x4E, 0x00, 0x6A, 0x12, 0x00, 0x28, 0x80, 0x00, 0x29, 0x28, 0x00, 0x28, 0x83, 0x00, 0x49, 0x01, 0x2E, 0x01, 0x90, 0x00, 0xAB, 0x02, 0x00, 0x28, 0x80, 0x00, 0x29, 0x2C, 0x00, 0x28, 0x83, 0x01, 0x2F, 0x01, 0x4F, 0x00, 0x29, 0x00, 0x28, 0x01, 0x00, 0x29, 0x2D, 0x00, 0x28, 0x85, 0x01, 0x4F, 0x00, 0xED, 0x00, 0x29, 0x00, 0x28, 0x00, 0x08, 0x00, 0x29, 0x04, 0x00, 0x28, 0x80, 0x00, 0x29, 0x27, 0x00, 0x28, 0x81, 0x01, 0x70, 0x00, 0x8A, 0x31, 0x00, 0x28, 0x80, 0x01, 0xB1, 0x2D, 0x00, 0x28, 0x87, 0x00, 0x29, 0x00, 0x28, 0x00, 0x29, 0x00, 0x28, 0x00, 0x29, 0x00, 0x28, 0x00, 0xED, 0x01, 0x0E, 0x02, 0x00, 0x28, 0x80, 0x00, 0x29, 0x2C, 0x00, 0x28, 0x82, 0x00, 0x49, 0x01, 0x4F, 0x00, 0xED, 0x30, 0x00, 0x28, 0x82, 0x00, 0x6A, 0x01, 0x90, 0x00, 0xED, 0x28, 0x00, 0x28, 0x80, 0x00, 0x08, 0x06, 0x00, 0x28, 0x82, 0x00, 0xED, 0x01, 0x91, 0x00, 0xED, 0x0C, 0x00, 0x28, 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x5F, 0x00, 0x00 +}; + +const tImage MarlinLogo480x320x16 = MARLIN_LOGO_CHOSEN(480, 320); + +#endif // HAS_GRAPHICAL_TFT && SHOW_BOOTSCREEN diff --git a/Marlin/src/lcd/tft/images/btn_rounded_42x39x4.cpp b/Marlin/src/lcd/tft/images/btn_rounded_42x39x4.cpp index 7045558df595..758ba1b0ea55 100644 --- a/Marlin/src/lcd/tft/images/btn_rounded_42x39x4.cpp +++ b/Marlin/src/lcd/tft/images/btn_rounded_42x39x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t btn_rounded_42x39x4[]; -const tImage BtnRounded_42x39x4 = { (void *)btn_rounded_42x39x4, 42, 39, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t btn_rounded_42x39x4[819] = { 0x87, 0x87, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x78, 0x78, @@ -70,4 +68,6 @@ const uint8_t btn_rounded_42x39x4[819] = { 0x87, 0x87, 0x77, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x67, 0x78 }; +const tImage BtnRounded_42x39x4 = { (void *)btn_rounded_42x39x4, 42, 39, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/btn_rounded_64x52x4.cpp b/Marlin/src/lcd/tft/images/btn_rounded_64x52x4.cpp index c0892a6a6d11..20ca0ed16abf 100644 --- a/Marlin/src/lcd/tft/images/btn_rounded_64x52x4.cpp +++ b/Marlin/src/lcd/tft/images/btn_rounded_64x52x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t btn_rounded_64x52x4[]; -const tImage BtnRounded_64x52x4 = { (void *)btn_rounded_64x52x4, 64, 52, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t btn_rounded_64x52x4[1664] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -83,4 +81,6 @@ const uint8_t btn_rounded_64x52x4[1664] = { 0x88, 0x88, 0x77, 0x77, 0x76, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x67, 0x77, 0x78, }; +const tImage BtnRounded_64x52x4 = { (void *)btn_rounded_64x52x4, 64, 52, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/cancel_64x64x4.cpp b/Marlin/src/lcd/tft/images/cancel_64x64x4.cpp index 9198c4b717b8..0188bb416d19 100644 --- a/Marlin/src/lcd/tft/images/cancel_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/cancel_64x64x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t cancel_64x64x4[]; -const tImage Cancel_64x64x4 = { (void *)cancel_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t cancel_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -95,4 +93,6 @@ const uint8_t cancel_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Cancel_64x64x4 = { (void *)cancel_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/chamber_64x64x4.cpp b/Marlin/src/lcd/tft/images/chamber_64x64x4.cpp index 8def3df406d7..33fe14db1ff2 100644 --- a/Marlin/src/lcd/tft/images/chamber_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/chamber_64x64x4.cpp @@ -21,13 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t chamber_64x64x4[], chamber_heated_64x64x4[]; -const tImage Chamber_64x64x4 = { (void *)chamber_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Chamber_Heated_64x64x4 = { (void *)chamber_heated_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t chamber_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -163,4 +160,7 @@ const uint8_t chamber_heated_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Chamber_64x64x4 = { (void *)chamber_64x64x4, 64, 64, GREYSCALE4 }; +const tImage Chamber_Heated_64x64x4 = { (void *)chamber_heated_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/confirm_64x64x4.cpp b/Marlin/src/lcd/tft/images/confirm_64x64x4.cpp index 2c3da6fb79a3..3cfa44d4ebef 100644 --- a/Marlin/src/lcd/tft/images/confirm_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/confirm_64x64x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t confirm_64x64x4[]; -const tImage Confirm_64x64x4 = { (void *)confirm_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t confirm_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -95,4 +93,6 @@ const uint8_t confirm_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Confirm_64x64x4 = { (void *)confirm_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/decrease_64x64x4.cpp b/Marlin/src/lcd/tft/images/decrease_64x64x4.cpp index dd85a1e66c70..d810fd55a8b5 100644 --- a/Marlin/src/lcd/tft/images/decrease_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/decrease_64x64x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t decrease_64x64x4[]; -const tImage Decrease_64x64x4 = { (void *)decrease_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t decrease_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -95,4 +93,6 @@ const uint8_t decrease_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Decrease_64x64x4 = { (void *)decrease_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/directory_32x32x4.cpp b/Marlin/src/lcd/tft/images/directory_32x32x4.cpp index 847eafd6d403..9bf2ca44c4be 100644 --- a/Marlin/src/lcd/tft/images/directory_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/directory_32x32x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t directory_32x32x4[]; -const tImage Directory_32x32x4 = { (void *)directory_32x32x4, 32, 32, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t directory_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -63,4 +61,6 @@ const uint8_t directory_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Directory_32x32x4 = { (void *)directory_32x32x4, 32, 32, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/down_32x32x4.cpp b/Marlin/src/lcd/tft/images/down_32x32x4.cpp index 2ea8cc33c06f..44582e992861 100644 --- a/Marlin/src/lcd/tft/images/down_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/down_32x32x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t down_32x32x4[]; -const tImage Down_32x32x4 = { (void *)down_32x32x4, 32, 32, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t down_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -63,4 +61,6 @@ const uint8_t down_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Down_32x32x4 = { (void *)down_32x32x4, 32, 32, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/fan_64x64x4.cpp b/Marlin/src/lcd/tft/images/fan_64x64x4.cpp index f4a09afe2b96..71384332e5fb 100644 --- a/Marlin/src/lcd/tft/images/fan_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/fan_64x64x4.cpp @@ -21,13 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t fan0_64x64x4[], fan1_64x64x4[]; -const tImage Fan0_64x64x4 = { (void *)fan0_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Fan1_64x64x4 = { (void *)fan1_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t fan0_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -163,4 +160,7 @@ const uint8_t fan1_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Fan0_64x64x4 = { (void *)fan0_64x64x4, 64, 64, GREYSCALE4 }; +const tImage Fan1_64x64x4 = { (void *)fan1_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/fan_fast_64x64x4.cpp b/Marlin/src/lcd/tft/images/fan_fast_64x64x4.cpp index e5b4bf3ae857..7d17f49b5754 100644 --- a/Marlin/src/lcd/tft/images/fan_fast_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/fan_fast_64x64x4.cpp @@ -21,13 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t fan_fast0_64x64x4[], fan_fast1_64x64x4[]; -const tImage Fan_Fast0_64x64x4 = { (void *)fan_fast0_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Fan_Fast1_64x64x4 = { (void *)fan_fast1_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t fan_fast0_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -163,4 +160,7 @@ const uint8_t fan_fast1_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Fan_Fast0_64x64x4 = { (void *)fan_fast0_64x64x4, 64, 64, GREYSCALE4 }; +const tImage Fan_Fast1_64x64x4 = { (void *)fan_fast1_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/fan_slow_64x64x4.cpp b/Marlin/src/lcd/tft/images/fan_slow_64x64x4.cpp index 009a7572a72f..d5c071eb18ee 100644 --- a/Marlin/src/lcd/tft/images/fan_slow_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/fan_slow_64x64x4.cpp @@ -21,13 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t fan_slow0_64x64x4[], fan_slow1_64x64x4[]; -const tImage Fan_Slow0_64x64x4 = { (void *)fan_slow0_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Fan_Slow1_64x64x4 = { (void *)fan_slow1_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t fan_slow0_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -163,4 +160,7 @@ const uint8_t fan_slow1_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Fan_Slow0_64x64x4 = { (void *)fan_slow0_64x64x4, 64, 64, GREYSCALE4 }; +const tImage Fan_Slow1_64x64x4 = { (void *)fan_slow1_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/feedrate_32x32x4.cpp b/Marlin/src/lcd/tft/images/feedrate_32x32x4.cpp index c5a51c49a783..d60667a427ab 100644 --- a/Marlin/src/lcd/tft/images/feedrate_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/feedrate_32x32x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t feedrate_32x32x4[]; -const tImage Feedrate_32x32x4 = { (void *)feedrate_32x32x4, 32, 32, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t feedrate_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x87, 0x77, 0x77, 0x78, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -63,4 +61,6 @@ const uint8_t feedrate_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, 0x77, 0x66, 0x66, 0x66, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Feedrate_32x32x4 = { (void *)feedrate_32x32x4, 32, 32, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/flowrate_32x32x4.cpp b/Marlin/src/lcd/tft/images/flowrate_32x32x4.cpp index ae98ed235b11..21e5a9580502 100644 --- a/Marlin/src/lcd/tft/images/flowrate_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/flowrate_32x32x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t flowrate_32x32x4[]; -const tImage Flowrate_32x32x4 = { (void *)flowrate_32x32x4, 32, 32, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t flowrate_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -63,4 +61,6 @@ const uint8_t flowrate_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x77, 0x78, 0x88, 0x88, 0x88, 0x88 }; +const tImage Flowrate_32x32x4 = { (void *)flowrate_32x32x4, 32, 32, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/heated_bed_64x64x4.cpp b/Marlin/src/lcd/tft/images/heated_bed_64x64x4.cpp index 486c5dfaa14c..aeeb06435083 100644 --- a/Marlin/src/lcd/tft/images/heated_bed_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/heated_bed_64x64x4.cpp @@ -21,13 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t bed_64x64x4[], bed_heated_64x64x4[]; -const tImage Bed_64x64x4 = { (void *)bed_64x64x4, 64, 64, GREYSCALE4 }; -const tImage Bed_Heated_64x64x4 = { (void *)bed_heated_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t bed_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -163,4 +160,7 @@ const uint8_t bed_heated_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Bed_64x64x4 = { (void *)bed_64x64x4, 64, 64, GREYSCALE4 }; +const tImage Bed_Heated_64x64x4 = { (void *)bed_heated_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/home_64x64x4.cpp b/Marlin/src/lcd/tft/images/home_64x64x4.cpp index a98978ff25be..7fe62d4bd945 100644 --- a/Marlin/src/lcd/tft/images/home_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/home_64x64x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t home_64x64x4[]; -const tImage Home_64x64x4 = { (void *)home_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t home_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -95,4 +93,6 @@ const uint8_t home_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Home_64x64x4 = { (void *)home_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/hotend_64x64x4.cpp b/Marlin/src/lcd/tft/images/hotend_64x64x4.cpp index f3829dd89e42..536932eed218 100644 --- a/Marlin/src/lcd/tft/images/hotend_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/hotend_64x64x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t hotend_64x64x4[]; -const tImage HotEnd_64x64x4 = { (void *)hotend_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t hotend_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -95,4 +93,6 @@ const uint8_t hotend_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage HotEnd_64x64x4 = { (void *)hotend_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/increase_64x64x4.cpp b/Marlin/src/lcd/tft/images/increase_64x64x4.cpp index 58b43cf66139..b2b27495f66f 100644 --- a/Marlin/src/lcd/tft/images/increase_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/increase_64x64x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t increase_64x64x4[]; -const tImage Increase_64x64x4 = { (void *)increase_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t increase_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -95,4 +93,6 @@ const uint8_t increase_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Increase_64x64x4 = { (void *)increase_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/left_32x32x4.cpp b/Marlin/src/lcd/tft/images/left_32x32x4.cpp index b1d750a8121f..f8f05a2ed31b 100644 --- a/Marlin/src/lcd/tft/images/left_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/left_32x32x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t left_32x32x4[]; -const tImage Left_32x32x4 = { (void *)left_32x32x4, 32, 32, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t left_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -63,4 +61,6 @@ const uint8_t left_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Left_32x32x4 = { (void *)left_32x32x4, 32, 32, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/leveling_32x32x4.cpp b/Marlin/src/lcd/tft/images/leveling_32x32x4.cpp index 0863feafba10..079f5acbf523 100644 --- a/Marlin/src/lcd/tft/images/leveling_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/leveling_32x32x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t leveling_32x32x4[]; -const tImage Leveling_32x32x4 = { (void *)leveling_32x32x4, 32, 32, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t leveling_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -63,4 +61,6 @@ const uint8_t leveling_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Leveling_32x32x4 = { (void *)leveling_32x32x4, 32, 32, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/menu_64x64x4.cpp b/Marlin/src/lcd/tft/images/menu_64x64x4.cpp index 2c4454148e9b..7e40f8543f18 100644 --- a/Marlin/src/lcd/tft/images/menu_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/menu_64x64x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t menu_64x64x4[]; -const tImage Menu_64x64x4 = { (void *)menu_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t menu_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -95,4 +93,6 @@ const uint8_t menu_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Menu_64x64x4 = { (void *)menu_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/pause_64x64x4.cpp b/Marlin/src/lcd/tft/images/pause_64x64x4.cpp index 430fa8422c91..8ab0e509c15d 100644 --- a/Marlin/src/lcd/tft/images/pause_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/pause_64x64x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t pause_64x64x4[]; -const tImage Pause_64x64x4 = { (void *)pause_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t pause_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -95,4 +93,6 @@ const uint8_t pause_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Pause_64x64x4 = { (void *)pause_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/refresh_32x32x4.cpp b/Marlin/src/lcd/tft/images/refresh_32x32x4.cpp index 223e65923369..df513022e072 100644 --- a/Marlin/src/lcd/tft/images/refresh_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/refresh_32x32x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t refresh_32x32x4[]; -const tImage Refresh_32x32x4 = { (void *)refresh_32x32x4, 32, 32, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t refresh_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -63,4 +61,6 @@ const uint8_t refresh_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Refresh_32x32x4 = { (void *)refresh_32x32x4, 32, 32, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/right_32x32x4.cpp b/Marlin/src/lcd/tft/images/right_32x32x4.cpp index 67d14967871c..e08f02a1e6f4 100644 --- a/Marlin/src/lcd/tft/images/right_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/right_32x32x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t right_32x32x4[]; -const tImage Right_32x32x4 = { (void *)right_32x32x4, 32, 32, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t right_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -63,4 +61,6 @@ const uint8_t right_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Right_32x32x4 = { (void *)right_32x32x4, 32, 32, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/sd_64x64x4.cpp b/Marlin/src/lcd/tft/images/sd_64x64x4.cpp index 805021f21be9..c855019d08f3 100644 --- a/Marlin/src/lcd/tft/images/sd_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/sd_64x64x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t sd_64x64x4[]; -const tImage SD_64x64x4 = { (void *)sd_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" extern const uint8_t sd_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -95,4 +93,6 @@ extern const uint8_t sd_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage SD_64x64x4 = { (void *)sd_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/settings_64x64x4.cpp b/Marlin/src/lcd/tft/images/settings_64x64x4.cpp index 08174051430c..a55b258a5654 100644 --- a/Marlin/src/lcd/tft/images/settings_64x64x4.cpp +++ b/Marlin/src/lcd/tft/images/settings_64x64x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t settings_64x64x4[]; -const tImage Settings_64x64x4 = { (void *)settings_64x64x4, 64, 64, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t settings_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -95,4 +93,6 @@ const uint8_t settings_64x64x4[2048] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Settings_64x64x4 = { (void *)settings_64x64x4, 64, 64, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/slider_8x16x4.cpp b/Marlin/src/lcd/tft/images/slider_8x16x4.cpp index e3d6298aa28d..2a88f931b2db 100644 --- a/Marlin/src/lcd/tft/images/slider_8x16x4.cpp +++ b/Marlin/src/lcd/tft/images/slider_8x16x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t slider_8x16x4[]; -const tImage Slider8x16x4 = { (void *)slider_8x16x4, 8, 16, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t slider_8x16x4[64] = { 0x88, 0xFF, 0xFF, 0x88, @@ -47,4 +45,6 @@ const uint8_t slider_8x16x4[64] = { 0x88, 0xFF, 0xFF, 0x88, }; +const tImage Slider8x16x4 = { (void *)slider_8x16x4, 8, 16, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/time_elapsed_32x32x4.cpp b/Marlin/src/lcd/tft/images/time_elapsed_32x32x4.cpp index 4ba462431f81..b5d35e1dbc6c 100644 --- a/Marlin/src/lcd/tft/images/time_elapsed_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/time_elapsed_32x32x4.cpp @@ -17,12 +17,10 @@ **/ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t time_elapsed_32x32x4[]; -const tImage Time_Elapsed_32x32x4 = { (void *)time_elapsed_32x32x4, 32, 32, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t time_elapsed_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -58,4 +56,7 @@ const uint8_t time_elapsed_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x86, 0x56, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, }; + +const tImage Time_Elapsed_32x32x4 = { (void *)time_elapsed_32x32x4, 32, 32, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/time_remaining_32x32x4.cpp b/Marlin/src/lcd/tft/images/time_remaining_32x32x4.cpp index 7088e9dea302..8b433cfbe8ba 100644 --- a/Marlin/src/lcd/tft/images/time_remaining_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/time_remaining_32x32x4.cpp @@ -17,12 +17,10 @@ **/ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t time_remaining_32x32x4[]; -const tImage Time_Remaining_32x32x4 = { (void *)time_remaining_32x32x4, 32, 32, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t time_remaining_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -58,4 +56,7 @@ const uint8_t time_remaining_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x86, 0x56, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, }; + +const tImage Time_Remaining_32x32x4 = { (void *)time_remaining_32x32x4, 32, 32, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/images/up_32x32x4.cpp b/Marlin/src/lcd/tft/images/up_32x32x4.cpp index 9147ea9b2c32..658730667cde 100644 --- a/Marlin/src/lcd/tft/images/up_32x32x4.cpp +++ b/Marlin/src/lcd/tft/images/up_32x32x4.cpp @@ -21,12 +21,10 @@ */ #include "../../../inc/MarlinConfigPre.h" -#include "../tft_image.h" #if HAS_GRAPHICAL_TFT -extern const uint8_t up_32x32x4[]; -const tImage Up_32x32x4 = { (void *)up_32x32x4, 32, 32, GREYSCALE4 }; +#include "../tft_image.h" const uint8_t up_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, @@ -63,4 +61,6 @@ const uint8_t up_32x32x4[512] = { 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88 }; +const tImage Up_32x32x4 = { (void *)up_32x32x4, 32, 32, GREYSCALE4 }; + #endif // HAS_GRAPHICAL_TFT diff --git a/Marlin/src/lcd/tft/tft.h b/Marlin/src/lcd/tft/tft.h index 87dea453df90..1c81585650ba 100644 --- a/Marlin/src/lcd/tft/tft.h +++ b/Marlin/src/lcd/tft/tft.h @@ -37,21 +37,21 @@ #define ENDIAN_COLOR(C) (C) #endif -#ifndef TFT_BUFFER_SIZE +#ifndef TFT_BUFFER_WORDS #ifdef STM32F103xB - #define TFT_BUFFER_SIZE 1024 + #define TFT_BUFFER_WORDS 1024 #elif defined(STM32F103xE) - #define TFT_BUFFER_SIZE 19200 // 320 * 60 + #define TFT_BUFFER_WORDS 19200 // 320 * 60 #elif defined(STM32F1) - #define TFT_BUFFER_SIZE 8192 + #define TFT_BUFFER_WORDS 8192 #else - #define TFT_BUFFER_SIZE 19200 // 320 * 60 + #define TFT_BUFFER_WORDS 19200 // 320 * 60 #endif #endif -#if TFT_BUFFER_SIZE > DMA_MAX_SIZE +#if TFT_BUFFER_WORDS > DMA_MAX_WORDS // DMA Count parameter is uint16_t - #error "TFT_BUFFER_SIZE can not exceed DMA_MAX_SIZE" + #error "TFT_BUFFER_WORDS can not exceed DMA_MAX_WORDS" #endif class TFT { @@ -62,7 +62,7 @@ class TFT { public: static TFT_Queue queue; - static uint16_t buffer[TFT_BUFFER_SIZE]; + static uint16_t buffer[TFT_BUFFER_WORDS]; static void init(); static void set_font(const uint8_t *Font) { string.set_font(Font); } diff --git a/Marlin/src/lcd/tft/tft_image.h b/Marlin/src/lcd/tft/tft_image.h index 7087ea44ba99..06887ff8a69e 100644 --- a/Marlin/src/lcd/tft/tft_image.h +++ b/Marlin/src/lcd/tft/tft_image.h @@ -23,7 +23,11 @@ #include "../../inc/MarlinConfigPre.h" -#include +#if ENABLED(COMPACT_MARLIN_BOOT_LOGO) + #define MARLIN_LOGO_CHOSEN(W,H) { (void *)marlin_logo_##W##x##H##x16_rle16, W, H, RLE16 } +#else + #define MARLIN_LOGO_CHOSEN(W,H) { (void *)marlin_logo_##W##x##H##x16, W, H, HIGHCOLOR } +#endif enum MarlinImage : uint8_t { imgBootScreen = 0x00, @@ -74,6 +78,9 @@ enum colorMode_t : uint8_t { GREYSCALE2, // 2 bits per pixel GREYSCALE4, // 4 bits per pixel HIGHCOLOR // 16 bits per pixel + #if ENABLED(COMPACT_MARLIN_BOOT_LOGO) + , RLE16 // RLE16 Compressed 16 bits per pixel row + #endif }; typedef colorMode_t ColorMode; @@ -98,8 +105,10 @@ extern const tImage NoLogo; extern const tImage MarlinLogo228x255x2; extern const tImage MarlinLogo228x255x4; extern const tImage MarlinLogo195x59x16; + extern const tImage MarlinLogo240x250x16; extern const tImage MarlinLogo320x240x16; extern const tImage MarlinLogo480x320x16; + extern const tImage MarlinLogo1024x600x16; #endif extern const tImage Background320x30x16; diff --git a/Marlin/src/lcd/tft/tft_queue.cpp b/Marlin/src/lcd/tft/tft_queue.cpp index f66418a25b4c..06de651287af 100644 --- a/Marlin/src/lcd/tft/tft_queue.cpp +++ b/Marlin/src/lcd/tft/tft_queue.cpp @@ -86,9 +86,9 @@ void TFT_Queue::fill(queueTask_t *task) { task->state = TASK_STATE_IN_PROGRESS; } - if (task_parameters->count > DMA_MAX_SIZE) { - count = DMA_MAX_SIZE; - task_parameters->count -= DMA_MAX_SIZE; + if (task_parameters->count > DMA_MAX_WORDS) { + count = DMA_MAX_WORDS; + task_parameters->count -= DMA_MAX_WORDS; } else { count = task_parameters->count; diff --git a/Marlin/src/lcd/tft/ui_1024x600.h b/Marlin/src/lcd/tft/ui_1024x600.h index 669f1258b73a..05f3fed1ec72 100644 --- a/Marlin/src/lcd/tft/ui_1024x600.h +++ b/Marlin/src/lcd/tft/ui_1024x600.h @@ -55,9 +55,15 @@ #define BOOTSCREEN_LOGO_H 59 #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 70) #else - #define BOOTSCREEN_LOGO MarlinLogo480x320x16 - #define BOOTSCREEN_LOGO_W TFT_WIDTH - #define BOOTSCREEN_LOGO_H TFT_HEIGHT + #if ENABLED(BOOT_MARLIN_LOGO_HUGE) + #define BOOTSCREEN_LOGO MarlinLogo1024x600x16 + #define BOOTSCREEN_LOGO_W TFT_WIDTH + #define BOOTSCREEN_LOGO_H TFT_HEIGHT + #else + #define BOOTSCREEN_LOGO MarlinLogo480x320x16 + #define BOOTSCREEN_LOGO_W 480 + #define BOOTSCREEN_LOGO_H 320 + #endif #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 90) #endif #endif diff --git a/Marlin/src/lcd/tft/ui_240x320.h b/Marlin/src/lcd/tft/ui_240x320.h index c542e00e4f8a..7e41c05a968a 100644 --- a/Marlin/src/lcd/tft/ui_240x320.h +++ b/Marlin/src/lcd/tft/ui_240x320.h @@ -55,10 +55,10 @@ #define BOOTSCREEN_LOGO_H 59 #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 48) #else - #define BOOTSCREEN_LOGO MarlinLogo320x240x16 - #define BOOTSCREEN_LOGO_W TFT_WIDTH - #define BOOTSCREEN_LOGO_H TFT_HEIGHT - #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 54) + #define BOOTSCREEN_LOGO MarlinLogo240x250x16 + #define BOOTSCREEN_LOGO_W 240 + #define BOOTSCREEN_LOGO_H 250 + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 40) #endif #endif diff --git a/Marlin/src/lcd/tft/ui_480x320.h b/Marlin/src/lcd/tft/ui_480x320.h index 421fe03a18c6..a16ed8ad2243 100644 --- a/Marlin/src/lcd/tft/ui_480x320.h +++ b/Marlin/src/lcd/tft/ui_480x320.h @@ -58,7 +58,7 @@ #define BOOTSCREEN_LOGO MarlinLogo480x320x16 #define BOOTSCREEN_LOGO_W TFT_WIDTH #define BOOTSCREEN_LOGO_H TFT_HEIGHT - #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 90) + #define BOOTSCREEN_SITE_URL_Y (TFT_HEIGHT - 36) #endif #endif diff --git a/Marlin/src/lcd/tft/ui_color_ui.cpp b/Marlin/src/lcd/tft/ui_color_ui.cpp index d2fc08a09c34..a14f268d86c8 100644 --- a/Marlin/src/lcd/tft/ui_color_ui.cpp +++ b/Marlin/src/lcd/tft/ui_color_ui.cpp @@ -67,7 +67,7 @@ void MarlinUI::tft_idle() { tft.queue.reset(); tft.canvas(0, 0, TFT_WIDTH, TFT_HEIGHT); - TERN_(BOOT_MARLIN_LOGO_SMALL, tft.set_background(COLOR_BACKGROUND)); + tft.set_background(COLOR_BACKGROUND); tft.add_image(BOOTSCREEN_LOGO_X, BOOTSCREEN_LOGO_Y, imgBootScreen); #ifdef WEBSITE_URL tft_string.set(WEBSITE_URL); diff --git a/Marlin/src/lcd/tft_io/tft_io.h b/Marlin/src/lcd/tft_io/tft_io.h index b0d942120239..98ce7407260c 100644 --- a/Marlin/src/lcd/tft_io/tft_io.h +++ b/Marlin/src/lcd/tft_io/tft_io.h @@ -33,8 +33,8 @@ #error "TFT IO only supports SPI, FSMC or LTDC interface." #endif -#ifndef DMA_MAX_SIZE - #error "DMA_MAX_SIZE is not configured for this platform." +#ifndef DMA_MAX_WORDS + #error "DMA_MAX_WORDS is not configured for this platform." #endif #ifndef TFT_DRIVER diff --git a/Marlin/src/lcd/tft_io/tft_orientation.h b/Marlin/src/lcd/tft_io/tft_orientation.h index d85e6b12db2f..5315615799d2 100644 --- a/Marlin/src/lcd/tft_io/tft_orientation.h +++ b/Marlin/src/lcd/tft_io/tft_orientation.h @@ -52,7 +52,7 @@ // Set TFT_COLOR_UI_PORTRAIT flag, if needed #if ((TFT_ORIENTATION) & TFT_EXCHANGE_XY) == 0 - #define TFT_COLOR_UI_PORTRAIT 1 + #define TFT_COLOR_UI_PORTRAIT #endif #define TFT_COLOR_RGB _BV32(3) diff --git a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h index bff1167bf61b..272c7d2ed2e1 100644 --- a/Marlin/src/pins/linux/pins_RAMPS_LINUX.h +++ b/Marlin/src/pins/linux/pins_RAMPS_LINUX.h @@ -404,7 +404,7 @@ #define SPI_FLASH_MOSI_PIN SD_MOSI_PIN #endif - #define TFT_BUFFER_SIZE 0xFFFF + #define TFT_BUFFER_WORDS 0xFFFF #ifndef TFT_DRIVER #define TFT_DRIVER ST7796 #endif diff --git a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h index cc3f91b4eafb..72a65efc52b8 100644 --- a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h +++ b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_3.h @@ -382,7 +382,7 @@ #define LCD_READ_ID 0xD3 #define LCD_USE_DMA_SPI - #define TFT_BUFFER_SIZE 2400 + #define TFT_BUFFER_WORDS 2400 #endif @@ -412,7 +412,7 @@ #ifndef TOUCH_OFFSET_Y #define TOUCH_OFFSET_Y -367 #endif - #define TFT_BUFFER_SIZE 2400 + #define TFT_BUFFER_WORDS 2400 #endif #elif IS_TFTGLCD_PANEL diff --git a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h index 463814a5f055..b3ebec561d9c 100644 --- a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h +++ b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h @@ -414,7 +414,7 @@ #define SD_MISO_PIN EXP2_01_PIN #define SD_MOSI_PIN EXP2_06_PIN - #define TFT_BUFFER_SIZE 2400 + #define TFT_BUFFER_WORDS 2400 #elif IS_TFTGLCD_PANEL diff --git a/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h b/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h index 748e8cc902e3..328213e87330 100644 --- a/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h +++ b/Marlin/src/pins/lpc1768/pins_MKS_SGEN_L.h @@ -312,8 +312,8 @@ #define LCD_PINS_EN -1 #define LCD_PINS_RS -1 - #ifndef TFT_BUFFER_SIZE - #define TFT_BUFFER_SIZE 1200 + #ifndef TFT_BUFFER_WORDS + #define TFT_BUFFER_WORDS 1200 #endif #ifndef TFT_QUEUE_SIZE #define TFT_QUEUE_SIZE 6144 diff --git a/Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h b/Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h index ba781466232e..de100ff42e67 100644 --- a/Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h +++ b/Marlin/src/pins/lpc1769/pins_MKS_SGEN_L_V2.h @@ -361,8 +361,8 @@ #define LCD_PINS_EN -1 #define LCD_PINS_RS -1 - #ifndef TFT_BUFFER_SIZE - #define TFT_BUFFER_SIZE 1200 + #ifndef TFT_BUFFER_WORDS + #define TFT_BUFFER_WORDS 1200 #endif #ifndef TFT_QUEUE_SIZE #define TFT_QUEUE_SIZE 6144 diff --git a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h index 6719b090495b..89ed31cb827d 100644 --- a/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h +++ b/Marlin/src/pins/stm32f1/pins_BTT_SKR_MINI_V1_1.h @@ -171,7 +171,7 @@ #define LCD_READ_ID 0xD3 #define LCD_USE_DMA_SPI - #define TFT_BUFFER_SIZE 9600 + #define TFT_BUFFER_WORDS 9600 #elif HAS_WIRED_LCD #define BEEPER_PIN EXP1_01_PIN diff --git a/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h b/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h index 7452562c83fa..7f117dd659b2 100644 --- a/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h +++ b/Marlin/src/pins/stm32f1/pins_CHITU3D_common.h @@ -155,7 +155,7 @@ #define HAS_LOGO_IN_FLASH 0 #elif ENABLED(TFT_COLOR_UI) // Color UI - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #endif // SPI1(PA7)=LCD & SPI3(PB5)=STUFF, are not available diff --git a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h index d1b64dd805fd..027bfd71b531 100644 --- a/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h +++ b/Marlin/src/pins/stm32f1/pins_FLSUN_HISPEED.h @@ -313,7 +313,7 @@ #define TFT_BTARROWS_COLOR 0xDEE6 // Yellow #define TFT_BTOKMENU_COLOR 0x145F // Cyan #endif - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #elif HAS_GRAPHICAL_TFT diff --git a/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h b/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h index d4f0ea7fd282..2c1fdf1d761a 100644 --- a/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h +++ b/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h @@ -150,7 +150,7 @@ #define DOGLCD_SCK -1 // Buffer for Color UI - #define TFT_BUFFER_SIZE 3200 + #define TFT_BUFFER_WORDS 3200 #endif #if defined(TFT_BACKLIGHT_PWM) && !defined(MAPLE_STM32F1) diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h index d456974e9ea0..a1ca477857da 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN.h @@ -182,7 +182,7 @@ #define TOUCH_BUTTONS_HW_SPI #define TOUCH_BUTTONS_HW_SPI_DEVICE 2 - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #endif #if NEED_TOUCH_PINS diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h index c7a8da2ddcce..668723055927 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3P.h @@ -305,7 +305,7 @@ #define BTN_EN1 EXP2_03_PIN #define BTN_EN2 EXP2_05_PIN #elif ENABLED(TFT_COLOR_UI) - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #endif #if HAS_WIRED_LCD && !HAS_SPI_TFT diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h index 85c8de26ad70..a4c5ca767e3a 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_MINI.h @@ -172,7 +172,7 @@ #if ENABLED(TFT_320x240) // TFT32/28 #define TFT_DRIVER ILI9341 - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #define ILI9341_COLOR_RGB // YV for normal screen mounting #define ILI9341_ORIENTATION ILI9341_MADCTL_MY | ILI9341_MADCTL_MV diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h index 983cb6adedeb..d8c8f7aa83d6 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_V2.h @@ -305,7 +305,7 @@ #define BTN_EN1 PE8 #define BTN_EN2 PE11 #elif ENABLED(TFT_COLOR_UI) - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #endif #if HAS_WIRED_LCD && !HAS_SPI_TFT diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h index 16ee7757b95b..28c96e907018 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO_common.h @@ -203,7 +203,7 @@ #define TOUCH_BUTTONS_HW_SPI #define TOUCH_BUTTONS_HW_SPI_DEVICE 2 - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #endif #define SPI_FLASH diff --git a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h index 114c224b1e33..75a541593caa 100644 --- a/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h +++ b/Marlin/src/pins/stm32f1/pins_MKS_ROBIN_PRO.h @@ -238,7 +238,7 @@ #define LCD_RESET_PIN PC6 #define LCD_BACKLIGHT_PIN PD13 - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #if NEED_TOUCH_PINS #define TOUCH_BUTTONS_HW_SPI diff --git a/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h index f69f717d81a0..246930569656 100644 --- a/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h +++ b/Marlin/src/pins/stm32f4/pins_BTT_SKR_V2_0_common.h @@ -602,7 +602,7 @@ #define LCD_READ_ID 0xD3 #define LCD_USE_DMA_SPI - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #ifndef TOUCH_CALIBRATION_X #define TOUCH_CALIBRATION_X -17253 diff --git a/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h b/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h index 05c938037d51..5b5c4fea8789 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_MONSTER8_common.h @@ -294,7 +294,7 @@ #define LCD_READ_ID 0xD3 #define LCD_USE_DMA_SPI - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #ifndef TOUCH_CALIBRATION_X #define TOUCH_CALIBRATION_X -17253 diff --git a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN2.h b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN2.h index 96f3d958610c..b85b2357d3af 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN2.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN2.h @@ -121,7 +121,7 @@ #define TFT_CS_PIN FSMC_CS_PIN #define TFT_RS_PIN FSMC_RS_PIN - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #define BEEPER_PIN PG2 diff --git a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h index cdb9f5edecc4..6be3520db9e0 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_NANO_V3_common.h @@ -309,7 +309,7 @@ #define LCD_READ_ID 0xD3 #define LCD_USE_DMA_SPI - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #ifndef TOUCH_CALIBRATION_X #define TOUCH_CALIBRATION_X -17253 diff --git a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h index 60fe6fa66d62..14f6c31d7390 100644 --- a/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h +++ b/Marlin/src/pins/stm32f4/pins_MKS_ROBIN_PRO_V2.h @@ -336,7 +336,7 @@ #define LCD_USE_DMA_SPI //#define TFT_DRIVER ST7796 - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #elif HAS_WIRED_LCD diff --git a/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h b/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h index dbf8ddc5d51f..e9e069583afe 100644 --- a/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h +++ b/Marlin/src/pins/stm32f4/pins_TRONXY_V10.h @@ -209,7 +209,7 @@ //#define TFT_PIXEL_OFFSET_X 48 //#define TFT_PIXEL_OFFSET_Y 32 //#define TFT_DRIVER ILI9488 - //#define TFT_BUFFER_SIZE 14400 + //#define TFT_BUFFER_WORDS 14400 #if NEED_TOUCH_PINS #define TOUCH_CS_PIN PD11 // SPI1_NSS diff --git a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h index 81d338746a2c..47bcb732ebf2 100644 --- a/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h +++ b/Marlin/src/pins/stm32h7/pins_BTT_SKR_V3_0_common.h @@ -546,7 +546,7 @@ #define LCD_READ_ID 0xD3 #define LCD_USE_DMA_SPI - #define TFT_BUFFER_SIZE 14400 + #define TFT_BUFFER_WORDS 14400 #ifndef TOUCH_CALIBRATION_X #define TOUCH_CALIBRATION_X -17253 diff --git a/buildroot/share/pixmaps/logo/marlin-240x250.png b/buildroot/share/pixmaps/logo/marlin-240x250.png new file mode 100644 index 0000000000000000000000000000000000000000..2a6b6923068124e7d7fa590f7b377f7c895d5163 GIT binary patch literal 27169 zcmb5VWmsHIw>H>FaCdhL?(XhRa0$>5tZ|2+!97Uu0KqLlXdFWD;K6AmXyfh#n9lRQ z-;p_IX0G|s4SV0KmepOWs`jpq)z(zPL?c53005XO%JRCfzh|(|0}4Fs8>hy+1ORv? z?VxYuWu&1lYUAp{`PSCe8p!GA;s(P30C6clx3@Mz!s28BAZxi5TBVtP@C5a~PCkj*G0`z)IloO7mtXD2p2am7cVadOoGGHALRAcj|1dM|5wGobjSleZ9E*@yc}FXG=Fuz zwRZLPlAxo5;WYnN4)k;QPwgPje}@lC1lM1Li-(h&>%WS-y>s<)^?c{*_8%Vow>JL) z|Br@V4tDT13DYYJGcNrp0K1# z(DCwf|KCvK|B4Fy3;mC@{Y$Tgt1V0|-#-oi6H<|r)An$+b8v=Xp1Ml1G%5;mf;=LE zf*ib@|8n7PCPh_T-r57zfgpRYcQEt+Ht?T_p@Z!|z`ylt(AX5(_7CE!+SzacT8T>F}9fD3)L)Kf*jK%%Aw+gml9BaQK*O&W@-92i_{3#+ImjFw;xVG!(xZb3hm>5}TYKdkT zzCW?)?xz|Zn^ZX>I+bM}W{}KN=L@5*_X5h>aeOn&*XT;yWFV?| zw91dGU4QCt-QyvBjb``qa$}H;jrpbu5WR-Yag5FWd9$pw2 ze(gXG_E>B9gIT-u4oNm;9TPTtp}Hv>djbH6%zr;{OInnn000d@MP5eVFYl#`zPyXhqaA|S-Hv^8{oFCljhQU#U&y)n%mOfHA#g4s-y;pu>)DsJv)vu7;j--X zI~_oGc75S@-aJN>Rc4V+J_2Sv9E~Cza*Wp^8N0#>Hk9Egw0lLu0xTil5h#il;`XRk>1GT!`wTsb& z+Bt{975Q^jj4yQ>ReP>79)Z{60gcgo0D80J;_Ot5gtmK((#=TnN<=XVMW{RXdXaOK z24-*vf`ZQC{E6R@B;5!~OlW^)T%c&!uWKTg;IArs5Yot$2a};kYQ+Jbjzm+U_`zQA zf=-=xf7ysTd4%6;($Hx+oD=}QaLI95Jk>(0VV*EIvfDf?PHwqHZ+RXo#?uESJz(XK zVfMjhX1i5F2Bj8VgsK()wL<6xHm*WZZK`18f@%MCZ&_3~hm1JqPPbTPnRyF;9YQLa zyv|y-;uQ>d3Qc1Hw(pQ#cgWrOz z?XKM66Elt(-z+1q(+Q+=VS(kPg%GE5y?PBMTShE~=He=GZCt$5uL=B*&WU3mNE4V}s;8P-G)V*SwNVubao7@L~I$Eg;$m`yilNF$wK76qmC z_xh846W4Rs*Mi6&$f;ubD}QompaVhdJ{2rzz27xb9JZ|W8$T(}hP#5UwC<*R+hh3fdgq&|EMI zVd?T$8?~W;^&yTQOhrPX+IR!YIpm@d(v`brZ2p46f9+GUpcF4OeVvO3`1kTHYXWF)i^5P4U?0);#DlF z1n)rHfB=p^<6qB*OsaL|t5}l;qvmkQP;tenN}G)xK$+wRj6Ku}a5$+c4z-q5kp55R z>_kX)z>bbf!^dOUw~43La4?4=5O8r9a%RGJFV@^ExVhf}GsXBQUT1{M+;&S$xR@&R zP`_4?O-WH;8qi*%J#p`77p+wn4Bl10*v@_PP_}Tt%5bHK3|~_@0tX0<6g4$Hl)Bhx zIDPM`qKR)jFY4=eb7GK_8_Vz}&9BaR1zhX395Ym_pR+I8;zFQMRkb|ta$?@0SFXwU z-anjlkZfIx6xQJly&^(mxjaE~GH#Jh=H~ga_{_wPauis%6P)YQ^d2mc>6`GQX52IE zNeR2iNNDu*1Lvr3*gYnSuHaafXc?p1DX_%EmiZ*IKtC`wY(7qrljZT4F1Y?0shrtg z>X8cEZ_HLTIHGGjI#}6|@=?cHz>}$PH016Z#>TSa^nxNG)u@-*3V99^d3ZnuinD7v zr*i&kAx~(qb|2SB!o!KxH6(sNiH|Sk|0}Nnl&Y&FY0L zqvIZwCpz~%wd9#Ty0U6Qh`ZJ0@Z-nxkIXZx66y=tK)BF7k2c?9kJ%4fJ>m_xak{QB zPDPl$0oR9|Ra<&TI=<4NPvh@GNL98T!IPG!Q6` zUgEhG?81f{8Fw4aSEi+*U>VG@I@5;{0TIM2o}Kf@KJs;4uTv`7(vonIFLCl+uO5O8 zH-2rLZE0yN#8(<6al9S*5OB6CxAS{FyP(QnoT0u;hRdXx{YSc=lRPK>j-R2S zOM3eI2A((U?O+$r)5W65zBz9}=ot3}J-uFi4<|Bwco`#?*%Uo42vQ6=?%BdxFOUc? z%TSDa!^C(0OYK}}-L|YP$~SoH@4!VU-aem|xTt8Uc6#Mphc+Q%lg9&syb;W$+?&M0 zFuLyyga}S1X^vQycEYtBTibeUejw)U>VnaU9T{sCSKLE>ieJ{@^|gNT(9rwm%d3ph zm1Vd1IK9Ht-vOgvV|i(Qz7Of!(()5kbM9_95|w8_e9ain!cwJ6?&Gpr*4#`!Vtdse ztA0vIC&o}uoN88xDjoBCHgB8*AntoihDRry-zY`nAFRyMV*K9Ad7D{k0_$oWo_d89 zHlGOLq~IvA%-$8;ist4Jqm9xi}++db!qTj5{M@n;XE&aw7bf*`<|Vf7Wir$jMME&8U4eq?A#L!dV{w z)ZJh$Q7c;rQ;YfQY7<0Dg@%?2>Sr?cNJ;S?LE5TMx{(=@%eh6e+dP(jLIo#q+$3S; zgO;Ykac{3-aEK}^_ zNFDHH<2l;4uu%JLS%+mZHXWfnqfv=K3lY;`iEDRJl%v9&3QC4J z6{CJG>E0-Y`KVbJD{IyK;ul1xPKa1OW@3OixaiyU?q|1PX@-%7wx*3|WX6`j>~0Yd zL{Ze`i=G{m&CX?>fiP)G47@HJs_qhOouX|pU8$o$%XabP4kA|s*$Vrd)c8Vt)+fwM z)u7Bwito?$1Kgx%zkOc|zP^=|W{l;t+ig6*gfd%%44B=Rh2_R+$gX?PsDiYfI!@4! zmXs9SMU0iebweFo@|w?$B*_^U2_n)Nsm8A_{dPykY>8!oDmM?5VWCHtV(@TEUk7nf zI6;tfi-NlWPvv*V(_*POAjp1iSoQinv*|)5gTE+PP~zg#(Io;9ChMOC1RWAJ zCfXkk(%e9V@k<*{Z4C`)4ILHiruQq`Blsm;lE{pO>aBI>8%nFS$1{oO_uCn4C0ybq z%nLJL*S;0GQl{wEHdH=6^%Tzu;k086Q9uVOhkt8@n`ctj>hn$#t-m2a+@xGZHEutGkkpK=LP6wi=$xV`ZSw5``l z*|9y{N%I5OL7ABW-{%(10@z|{hN(@DnJn(Hw>77?uG!;^G4dwLqyHRMl#*|J??{Sd zNs~op5@)T}??$%dCZDYTY@c6Q^%NvPqI$Et-tsaEx47_SsbSufKGdPbRUt(bZxZBB z?AQ19869FYo}^pF z{>ft{&BVdh%Hr_exgqlV=ceIoy`^bf`mF4mAr}HF!%$C%AaAz*%iPiM*Uej}qOZT* z`nkLV#lWgLZ13Cb-*~7kT&AiR&*T*?8*8FB_8A){1F};$OleMFMu-rXaF>0*-mgVh zvcQEJuxpwNi=AD4EE%#KNy5mz7jNO15PFBVEAD1zGT_HP9k?_GHBTJZPxHjLIT<9P z&z(?WvWFNCSab4joIMbPxY?1TH6CGnh-I;jie^>gs1<;1Ui4^&lcoxuYHy|Jh8t^% z%O?u=Lmrg$pqhsx3{4<xSSFvxaDN$;sEyiW#*T%=!J8*hGM2c#11&>mA_YF_@@ zx0SD9L};smIt#GRp3bc<7eej2!J$Z64n~Gh`9-4e^YPB!UTHC{i8_3l83TjB@7rJf zPRPCwvh!l#3#!G5pZ7Y3$J$RVx?p-!q#dK-Z@R3Y@OtZ84U(LlWMN0PO}~b0J(;q? zh%vs0P|KYdcY{FplG824yRKW>>J;jL`}0Rk3bir!-})6^JuN}R_G804N7mEp;O2CmSFq5s)j5Vag6-=V{Xz)^Uemd zqwlF>^QB5;3sbW(xKayw6G&7HYvEDTzhbdx7^+2*Y!(edgl=IR*q;D%~g zQ&Zn9-8eIKT)C=jE^1Uyp25H%qNxA-T&_;E$HytP2<={jg(;s?IZABtT_*^gh(NVA ziNyW#oTWJFaoeY41s8KAc^&V;N6w*o3qf8|Fs;4(I)>YXi#ah+$<5UM%ER{q5O}D_ zlW``{qE>Yo;71+%MHDzr*b@L89~#Pyw7>{wM+W=&th^{6u41+2Zla-tT&&{HLkpJL5=F;_UyRo-cOxakKs7T(Y zUHEKvxVf3o?&Fk!G$PFRMX#$94s1z_7U*X_BRK_B9Q4@5Ir|XNpiKe#+)CLMf#!@? zOBw`%v8ALjtWyM8LDO+isiJbC~ zio(fI0?2Z^G-^*Cm{dIRRa1ZIDu~!+H$1O(Lkl?>tXl^2a0r{!A5 zQ6|l{Md|!OKScZbmA<9+`Mttita1tsp6-M0bB&r+CMosNVaWCU*fvQ=^Zo(YVYehT zstXx%(*E)X`*~!|N&pucVf@C&gM#=I9n6!U-;UpIb;su?E{==Y7o3k1ux~WX_bu>w zKy*b4bEGHBYAgaC#`IYN=>8=sEpe~xjK?h0JknX!V&e34^>qvs6bKE<`;NU^R~kn- zI>d|Rva|J-Qhv)`aUeI<%r2gt<<<{9)GtQ)A4bf99c;^)P)kqTN zS9go{owNxf-#F7H8(il(!7hi4wE}h-MVxS%saS5Kr^~QqjnhxBV9--34rdW1phFQp zB!JJ$K1+x(%I`qGaa|dPme<{=-{ff}nKfy6c6Acv@z56vG>I%#3LJ^>dzV6nfeQ+0 z8KIuwvyVU@kfX=uN@ZEZ(9afnJYVh=pKbH3!pHqYH8*_Jac4FG!JzYz)3!d$>ke#0 zNK0&-XosPXsM<=w#+!k$Ad7rYPo{&dtA*@DA$SP4b%Y@^mt}%wha(Z%n8h)H6M#W} z-Yji%jM+M~;b9SuZ`_)dR!pFLf%;^H?`rq3T5=94EOj(7U&^2(IIE`ZXG=Vm(s(9i zDjP9=UxbifZ0-?wYeleDmKFE7M?BzW{M}1Nka!ieX$73BErW+^zdLU;LS=LVeF#${ z!5$@^rmma|-1kA@G=Jbs+)2CA)XF_Or6XQLLc( z$=TAk^E%j8<6|DDiVmXzzCi{Wo6-I5pv>#*DDqVS@8hA91<&mMDQV|3M{8Sc%h#AJH(1a`}Nqp@|yI=S=O_?X&eZ;643@Wg7nucy( z+RSSLWcnD^zMTMsT?CO=KaFywCyXcv{AlsqVv!qqU#<7Z~ z|58e!EIz`qlZ1T{8h8o6ar{U_rwvblsFFrFzOeW+Y0XfXktwi)x!z1&E6I>jUsuQL z!;j+a3gL_+ueon7rmu>^5V+rvv7n?KIlaTRjV>k55(lkrOqnGHVqJGXn9U&r3DHy8 zR>uRA^^JZhR}fXWtOUFL-e#-rzEZrA%bM;Y8*}dmDRQMmvN-7PKCShlK=;D60jsS7PgNG;3AqCi33MY z-EZQ3NjoqbN064zlca@@!zowM}ioOU=4p9Sc^6uIPa|(W=sLBh%WH6CWVegSVU(pj$7=p94isF@J9XFc%(y{Jv<>E1k=QnoaTQs4v2~ zHx!$B*aZQ>3f~mvjlJWpH8d@03^{INJl`lY(|1WEcCh6;rxnk;u1k2FXxJEJUfF>u z)$31(NSa*ijO`jy)YJ!}9tPVdvGOHIyL=2L?J8)7;{*@s^XeX>2i=d4~^R?kDSviC=m2CBr_|z6G@4+PU#+83%%qEkB(ApXb$UWd|P{w%2t&4!` zsqHQuda2VpeCqQnwU0@s8Gm09@aX47_tXkGy~U}FmeJZ8-#u;jb{ zvwE^W>fsG^E|Z`c^av_H4T#Dq7)>w}ZYFAJHG}PVBne$tylFbU?P>FCszA`bqPAtM z6%~b49Ny*NGDq?WQs@dfNPA^1&RiY`QHQL<3q(kY3|q~hF?yH^0*D!g-reqRT)G}C zCDc?TwHb&qM)#3}svK6+k`gS%07Qp9z;DfYamVHAo-FV`q%AkochqGvn@pI94-GQIKM z4kDC77#jy^+L`M3$+o$_bkywGBB~b4R|fqxpkC!ZWDyeFWHAgZR_m8c)h>rXtDWE{ zuAP}A-vpbW!3bfB3GqSa%P9R>PQ^Q#fMI4)`R(tDuDIsgkx1+91~y{u@*rp7sl>VU z>)3QYyIea-(%iknY_cPKd7aBwu(vI81i&S8J?PX*L+Z0ZwLPn9Z&}hHWrw|n`h<}n z6=}C$fQGBPv6Ud3-OL#8LCfh)6j_3-U>8d{?sQSx56XN-h_fwRH39&ov`%`M62$-~ z2Q6J&bS?00sbr>xtRXVtfZI@#1a|Oe{{hAr z?!9*J1~tbPk$5kWb^QK*eW(k6$Y?(DD3 zbf0yGu`PqxD7(CyGogLIuB|!ETY%+#`_n?Pc53r$lZ zsHFu~i#yl`HMY_fp)q|D<%YK4E_`^lQN$|HWReZG;K`zr0xE7}>|z@`@w5 z$BQLyw7R`B4nkj@!@^d)jRTCP8BtE*E0|Q9MVn-$0b>X zY5Xc;`4N-Qhq9ufq3A>KQO#mfOj_SQ>iocvA$KWkO9TK!YP-7h6+EtOp$ld5N?n`X zEVq5U*B77dRJeR)-c44{_1QlnZ8J~fH)mi6v5x|D>5jmbj(2dvN)wyHl`YKSe}$1W4*TvVzjVmgDuL#?Ni!h~OLiG)`J*V5r!@ zE#fA^Bl#sDsH|ayKtz7?BHD){ICRWBae#eWk+ZM^=s7_Q2Nlmsvh29CTgb<*=9~ma z+%hmL>FI4<=J1q!Vzc`dH%gCEJlaB2MA{U;MA%VURC?-*Sk?S)^<-W8`u=W%wK4*kqgPGpeRgyw5jb9&=obp>Yf76XtHO{J0IedQBiyi7Ypq zeiG-Bg77AeICYg6a)Bz)W)yj(*4Aghhcp0I&03d*qVuogYa|^34WA~Lg}9#r z9Yj(pIJMNE&zTcXn#qM|vIE~^_%h=XuJimrE^OH=!p@_rLrgObG0fWW%4Tc7GrN2X z0(a~QT^cJ}UC6>&V$+VU?s#MO;O(0{`8e2obXea}z03}KG<{zWi&QL!bles&|EPtq zF@0LhBrGH$YrWew3P}bYfPn~ZtSD>CW$oZ&P)MSjw>ekZ4-x3fRD78QcVcnnVVMrU zTF8OI3`hc5kRoSygn%5#pid6U!%LyYbS)TAg}1X{Vby-)l; z&y=63#ezHTex%nTxrYeAu%xpNw)y>oJiA}tpWF@-Aj#aysERn(Oj88c3f#-SOXr%^ zZiv7+aBHuk(jz?Omo1suf`ps~9zuN6OGDwCY8UUcCv&+p5-}FRBIJs=3~fbS)y;>W zA(kb=<_7a&JA5zhl6odzu0q~e+b<>LkhaWTC6I>4L{5E}&)mtg$JevB2;jvfg`i9% z-g94B+qSwshIObGNf=yy^QIKOU7j3;z#g~V*X-Wts1lBM4KK0Js4Fo)U7~298qC5T z0|68~kHs&f+blz?oNAau#zOU&)MoqPi-o^BTe;eWw!8QB) zW{!r|Nf*~vlB8+tV~M?Guqr`mz7jP7V>Zv5G5bw?`i67bEH0zvcm2ct zQ-qJ1^#qg7Y`F<`AJ5Z#i@$scoTTDv@zs#il2=67U{ZbMts~22tEi_+=<;!Djz%Q? zrY_=G3@ar&yS%Ij`?jFR@8aH!sX^K;moKm#uTY15n|EY*7(g4T&B|t?VeVPcP*T=C zu!CNw(LfFWeC6=8uDBhm)@tkQElCdYn*Rz`557D2(7z318pQv%dD>BEwm||t{gZ3g z-ByrY8=Mb=ypFkM%jAaF2$n$_p)MJzC&;u6nB8=fW-$ikQ|U^nURL`Qz{A6{d4mW$ zZ)GsIy0|tMcoOhrSz<&&-P-AWi>q33aK%oS2F%&_Lxh?~;#F0|ccBvcmE)M;>?x@|VGw?4&pduS z_20akSuZ$Ml$IYU3P5-}PCm8rzI>>@Ew~E8jG|k4H+v<1Z;bkx|Hb3Razdm@oxV_G zhi}A8G&M3SaSlaB-;h3cP`7xHgd4Zgxqv& z#sticqRGtiK$K@y#ga+q@HDm<^+hbgjUA$14!(M;k_Pv^aqPTz)ZQYHH8+7{TiFCJ z&l3b019Qx9U&*pcE(M;nZhA%Mf@cL?Dl1)e^4O->09FSB8`Z>|`R^I?V*sD)8;a`u zo!XXLFeP{dkiKj5DJu>o%35TTa>N#sRJdTw3n(cfTSfI3J%E?XlB~?*chB)v%jF7Y z<{y6^l#gI3%&l~S8wk*VV}jS4vx`<e;=a4Ye3Hm%LmqovF_m%rW4C=0P%n zrkTLKHvP_?M-G{E@n>xpo4|^qaeNduO&3~tSV2r{*r_@xKrha8Q9GHb7@Jw#{+&K;)++!jY+e(eB5H_7xe=8V zzkR<{H_4m0J&Sk*kVRCOBckPR8dIkew2YuHrqO>WC;kB`oWe4Iv>&2)d?F+F+bX4I zh8?o9yO*B$H2w*b39vUHD@a*La>6lJ$9dgZ+O|_VGP#3{mPXV#j_{N792MGCP-VdZs}0N2|(|1M-9IwSbH(W>!xhyxOv`#)wcR0hj}HzRRm8I8~HYZL75t{(5X_eFHaX>kY{Lq>dH5l8) zyU83*OikeIOxwJyp9gT<@AF3>c~fBEjd#z|`V*6l^W0XCDTWM=)8X>2=+{2vG0fxVDCQkc53rSCp#PMMHN8&N3 z7EsX4K)G07590Nz4$4Xz@YcFw0a~9?ssMY)*p*_FX&_?>-x{<&4KrW*^)f)Mf!FU3 z?a<0*5^Tv*rl`gziKufGP4*KrEr>ICH%p3Zcfqk2P4a0MHg3X;hcW00PQc-YBB15$R@ORIqI`0X*GRws;K;vo zK6V5h|JX0NcYFD8Hyc`vHz9(DIHBr;yje4fD4cTm3^s;yv2uRU^YKMlDL}0m!-Y@P zW;H3xj??lke9s}uv(k23_fW=RaBA@-ZHQPkgON2mfJab-T}AEPI|w*#$!p-49=TC^ za5ShUY6@(QSXI1?l*EMd(}IaE^Jx)<<@b@Ne4`nwvscZYf^5Z`pOkgjO?IoTGi%B8 zN>v1x`RehCdzP=SJDV-UW(o23t~Ly#E}&85tx&_5Ax`WJnu{IupCpTdi-JNLzbS|t z`$WEvQ5doV%=q5keN&!D(qBno$EBwZ+)F8IgVqSYB^wyNYyMyndT98z#;Ez^rIAvP zjsBagvpP zW7$vA@GEHv!0DUlkScsk0zwnpK9@EqCu(TRFuko0Fsj-=*!4Vx2ekzk5wj}%4!Ym} z%|`PLGp4&_Zy9?Q&d8sp@N$yrO@vr`kg(w^H>~=+M0cz-X{sJR`PB3RH+EoW5Nlno z^D4fYLKqFaO(%cHuW!Qk>UflKx~X(SmrGZ3C#;u!P=4#NDRe??I8yFF4S{dtUg@%X zJ=B!fjI4S;4`lI`PW}8LnN-O_Ofl^YhcRXZ-eJ7*(m03&h`sXLd1~P?X|^b{WwW~! zBqac|L2fteCI>?)D56YR1#Jb2WGbHYmq_}H#QJ?wggzV$Cz;%zjmkPb&);04?!$!x zE%P?|`{#?EJJ>v)2dxL3wm!^@UN3SM%FzMLeELOwyJvriUuA2N0;Ew52|eAl8pgS^ zKB~vtqGc=7`QQAQXD)1G#=Bnqeryr#zyrYfurHki^pp+t|JenI#%`FUd75`;cCA!0tU3E?mmZg z@o14IUU>j~eEpsrPHJe>XPQ=&cL2N}9wnb!NaESlur9}D8e3)?`+MH++}gd^CcIo& zdx*brMy)>W=y;>|N>$qD3suNbU}9oKq#Jv#Vn<$U^t#?xTHyI}EqlmN_lYm1*wa1N z`#)y4^E>OSo7@~0OsKqrL?}X>(?xEB7$w?mseNQQ6fwor@YqEJ+o77xcXc*gK}T|y z4i(9jnu@QDKJ!`4u?t5ajJXBuPEU4Gqg(T`TX^>(0gzNe8NT0LiGBTu z`V*w3agJ8=g9{%^>i@L#JT5vh-`1T(UeapY@^KPPEQXhiD)f@f#DDl%^KLM+XLC$y=;C11d(&)Z~-J^ znPm*H-$}{1;cDaRBXYs#pVpb+lM0hi@M3IIU|>BY6hfl*Bl!b&+nw$549-8K3r&1E ze1B8&LZjwCnkKAd{AHZB)b`T>lURrdUna@ZvE>sfz9z|xk`CZgTgR``(Vld1P==-R zu(9?<39a_pFS7fRNyXXv_ZQj3C*~ict(SrxG8AnyD-WxUX+L;^vK0wGM%2beDWZ9h zG;0F9hIdmD%HQuiS%RF~3o;#Lfv4O`XjV)FC@2K|Ro|GtMjCoBT2WvCervPqS))j! z3gZ$0VnfMgWKuGZ@nKO$h)2^!6CmeD^cK0T#&;_EZDfZyk;J{N08mUPl_or&|7jkP zrQ@UA!g$DLAiQ5G@A5!(MjVOC4y6lwhzeVOS>sY7IEzsc1>o<2VLLyiR7`zh*$y)RIv6?r3RLnQZ=f z+{>B^o-PKF0);?^bKe|^3HhU3D#DhP!AF$koi_I+%09`k~4a;dw;79f;Sg>wr4kAt|kj@ zj}!x&9M~eVwVt*|tAn8;Ha-gZVxXp-!^aP(i3AK%EVY2&9z@h#w|?dt3E_@%YvG%+ znTn`oug#Ak4`ZIm`I4U8c$Lkh*;D{p;tEO>%~ki`iP2PkcDFZhc~Y?$pS8X6L|ULr z#MHte?)Ksvxz{)NKVJ3L)aMEZos9=3b#*s2+28!0d;ePD=h#vq1sp00N{lqfnA>B$ zfh)b6q)eDhinj+2k4Y5?K%QcYtgqqskVGccc>c=g>c7JpY{tw6Ec`x-Ry|7EDt<- zC0N|saAPn40==8~$=znAY)e+3QY>vN)gWbZa<%JsyRI)6{rT;*OPSyOb^;4WS``&@ z3WJ}gOMLVG^bd8f&hrX)jB*deOPE_e?$#G}w9fF$L&`3(wMr$rf+?l^56*3(wSxZ8 zuRFL>MiPc2*jw>%L)TEaDnBjxW`s&h(-<7#v!AN}1dkzQvcPYAhr1ig5}{NW`KCa_ z_fjaC7bf4JYW0C8HP$rT?Ot(E*)`-cA(#A0d;m_QOm5dRqReAFkAA5O3>DY1?ThJClf+_fDjxh00i4w(dbr8Fw3&KmTRX^-a2RJT}}qNIn%hYx;!CleQuI4n`Of{)$vTX+2BLFh#^!(z#K_@3AZB~sT|7wv-r zK7t5zY>>2&%VuQ?-5FDMJw}=m5IPK8Vj5OgcK^x}Lt*5Q5-m;ej#EGj`0ey%uc$ug zu$tKb+O1Vh`s<+M|-&nv%s%Z&@|zQazBLV(W1T4_}nNT2Apx$tn_=+&WV{k$9Y<# zES>uOt=vQu290OcJ!~Uwtb-PEp7mnG4>occV4O6o)5g)!`BqkT%)uchTV&VA(tYt0 zdvFMuNUWgm+SwH{AAf&gJ3G)Y{5d842s4~U4Jm>ym-H1Kj;O|-17nt|)B63nT*%A# zE%9{*>04O-%AWdqD1x5Glj04-cN)F{sU&ex|MdA%6Du5+oCf-&W-_Vs7@a8lQ?+7> z063+0@KRflBDoE+i9uEsDF;|r%+gkzK{?Rl)6DT@CzSjq+a4*PO%jg z+2Tn!EZ0aIVu$dL4n*hIx<@zMbX8Gl?}G-R=p34R9&QteGU7pZ)4jbXI~2`l--&Rw z!_%TN)zPbncxVCIv!(duKEcP3Q}frk_6$+_gYLW5$Er)>p2CV{f7TzKOPDnc>KwQc z%K8>DzxqFjI+I%Do1#vnE@enjL*Gq8S{ZOEP}Y7OvW`CVK9x(|mWOngK1F%dP+~!Q z5wN>nf(w_r4mDdwnPYhw;o)hO2ih`(szyA6O9>~0?Q6PR7GP4G{xs}WMYt)j36WFv zb+=p6pKbl$PV4WrID0-@(+o3?l%*4+!B^X9x?$bG+ab|u|0G!Yh3WWduGV7E-L~e& zY5ifZ;Mh_p9~Y1tVSI2Q{0XVX+5GE=?_tI%?1sNkunaUOph#LqK^h+~?cK>q`(4lTh-J`5y<}i_ zAgw?HNfMR+7_`>G;evP?=OxrZQCz)csQ0rYERm-sGp`f%7^4Ays#X|ixJa;auBO? z^^9`(%;V(a;J?wf+E;WAT1lho`}3mEg)zbHs%QJCZq~V+JuB6vyD~%yEtD%PHeaYQ zYX~bzR~|7e zT=&@zH;*8P=)JWN?j;|+{y@-KT`%m=0cS^b`V$> zK=UPTvH~$Tb>#I++sRJ{lwzx6$lOcM)3mRXBa^C(4EdmQjCRe({@wPJr}{OBISZQQ z%UVHIIi??a&w0_MmbjlmUT(Y`>Vp2(?}GD}{oACMj+e)WQ)C&7bK> zDq|nNpn!+@JtOL-<92Pe`!Tj~c|4-S72!e~51b?dhkdQNjg?>BP$ZN@FO%*zDjp<3 z1bhI7IVBnDq^}4v!ieR|nU<_TL<~kKMEkcD@017zLLLK4N5ly;RoC6c$nWpkKrm&g zkLh9at<*UO9im7p4y)S782H0wqNg!t&8MZ1u5wvdpy%d?Q2}6N!Il&}ppT#)i@!VQ z&-eR+q~47O=Qpo`-|&9^p>hgT`co%I@4L>khkdok&3o#u4L|BJW#{qh&{eS8tGMk^ zm7C0vBlr8&;xed4?Gz$%KeZas(W0djkncxH2WeXP-ro=BZw0#ziT0wmi}m95LR|O8$F61OT7K(9|H=Xm39m_Ef*_{=2sQ ztlu?cvl>+Xl)N77J4ZX!sb|?!Zzd^0O6tgID)E6%^-{NVGz`VIi~t38tQ|uoT`fel zm;g(lgWr{@!zzDH;c1GmJii%3RezUT;w#yhx7Y8lf`|H= zEnk*;C9;GG z?h}v)ky7P=Kp_@~bbobL0t&8fpEL4x|KcEeT4zK1^|VOM(q?Ljr@B*#```Mr_9pO6 zBW5E0>>K;tE6;s}5{qq5zlNkP^81k2|MV+`{Pt+%dg|Mn|M8Jzmp)f5U;NscTf3fh zd2D1vcOvdk0iAtRy?m>5$?RTs_g6*>j*5%MOce^I+bVzIeO8!p!9XwRYXY{((BVoW z915G8;^`ojpYuZc#$XeI#O0|)bzKsB90Zch?>G!_D@J%Esl#x|zGB}gWK9LtY_~)^ zMGxgz{6#iVPo?E8LXUI_?i6=z-8+sduto}T({ znpx^NX6~+Pyh%4k5EKqSYg!b4ON6$S_0#iPfT7KYZ|WgsOn19 zS7JC}BcyFy1~`6rGys<|bjK=zAnsQJChW(4tvK;sPdiys7k}7>Fl>x%a3^#YO1r}b zxq|j>o)!*Z@lh)m`#=3(C0%7$98I%bEG%xp-5r8Ma7iFQfZ*-{f-UZ_xCeKKAi$j48H_2oNf^y%s291Pk=Rc%sY!5d5pgVe6 zQ>KtB)Cb?BgQv0-=+-Ytl|onzZl-2a-mW>tW(5{%PRbhCHTo{j47l zV)eg~@8yCowHY9Pdv|sxhU-Snt*!4m@)3(Z@$u3mX$m3%mbnv4OYc%RHda2Mmb&;1 z$=i>3DgptBGYP9AvJRgWev37`&rrmtIN$qlU&2vn*%@O?&?<9J=Qrq>W6s9mu+1B+2e(TkOU+eEx zoClLGH%+BqeTt1!H8CkS^IAQeqAdQ-FwONX$!=NRGI69-q4}>e-*J_c6t-j`)pXsX z&wKM>-??@iYRR)W?MHTYw~$A8>cl?!0xvQ)yaclHcK%&oE8er0CCK{q)-f{SP?GKm z3t1xb{6tR2@v^v&N4!O8^xd@Oxz}x<*odwpJKQ)|wqxhTQ9hxeu=bMb?BReAhYfEN zlPSss#P8y7|Hx_iU++CKGn9!~aP9F-$j1^>5r_Sa+?Sz|&B?mR*z^=33SyF6vMkpR zQR)shXbd>UKj5qZ8!Nn#i?*tTGfkC>7CH(6>|P*2UpQ3P_dSSoaAcSl<&(dqegW;_ z$IJAogXOX56hbJ%nzh;%8V27|*92E@gG$cykS2yF2!48Yy-g#xazZ#~ zjD2VxvMEK|kIEfl64hSM#UK6c)MN}>8uWDPXS2Hyr*XZWGIMvze5MGU(?Qx`l%6`E z=$ixPJW^ITVkfln{%Cee0eGeIm6f~{)(q$W`vN?#Vs-jCOcdpbe_@JJd|Zcdj7p7( zR@M}=8gTSryJ-abZHfDyRil)iTyg8%HVWJ+_Lm)yO4cmveHMRshfv){50{ZkJg}3Zht7;M`Dwmy%MNXwm3O7-wnhusVW)`j@S?d8 zH%2+$r~W?t)>GF`R`1U1e$Fq<%NEdAc}%+v`HtxB311T9ru< z7D=>!5gV-qjQOGp5FA!I_SJXQDYYt}2)jq0uT9jCexG293iaSsgEmY{0 z&Pdy@Pd$~cKS1|id%HM~oRhpd^IVM1(tJx1|Ew)J9)cfF>cMv*vcsnE8h#|OWIR;b zs)7ax4~B~JDfK6_s_y}*3z+1JEG=|C^KwbX9rVM)ZD}_&xh$S?h7jLgzd_uKC7lfB zeZ}|JAUA6~qEGO~?|1+}e>#as0MgWZ`acP!*>ih+^hGSCedCO*N;lM{bod(TuSrf> z>Zw24S+tb^b@cml7ikhrw@9KWik}n>0L3i-GK|aC!Ki)2a1flCQ8%#m(D^8L5 zaw?4#gCz02hz?E}QeUqbe@tDe8fJBg{JX%FUgBxJC<0&JR=wk!$24}DIOsX|ymC^4m|K z{!9Z=c-#A3&rj9&#n!B`V&aOO4OiRqogHy^kreq=Az{b^8CYh2XO39-7Ms#p*)mfc zz0a)Wu+AwC|DNZ)06V)6@N*ucjEv^%lUS$!{v>^t-2?As{hEyK9wYTS`5SzwQ zoi_=}$uiU4;|juC(C+}q;0Yy&XgXDG6+2_)YOUN%uaFIS$pZ`ioIZBX#*ko zDkwuRM+@9&R^rda>8T{@zg7c9$C51wdu?c?8jj!#{0^Co$6!Z6$zV@A%8|OhjK&G` zgX8hDaK{foeSCsC#H_X-ebNy%2%v_S?pYEcl(eDPzyXA#FxJ&92I7Z zph%On0g8L>X6;XB{$!Ir?J zfqG1`B|;M8sX)fs^69)HixmEum(V4IPBH`{-jdjNS#y z6=bxO)5E_v?tFv~32yKosLg+5_sLC75Q?eGx{Y|7=Jj^*pm=Tv&q3IvGUAU|c!5if z$)irDFNbB=o%8kKpNDTF@@=XX5CfeTlSc>5e(DAN3lE^G`SFAY0CwYV6h)WW)J*#b zBuqMzfUU;O=~jL)-9p!bATTaX!miX@L6@dm@LlS9x6z8v{5XAMM%Do z5s5oNw?3AK@=#z5!gV`l@2(Ww7n*2r7>O_ElH{y7dmIfc_V2naEllnJev>$4{#Ku| z=4w1_wyXTaC)}8j`Vmm$$%r1$JNr#oA6ur(J*1qUj`>G?d~VDV~zUEVJFPu&|p zGQo&rkP^F71L~DoTWePbjy7B|F0+_&bLVV}tP9fDe|97fzSY<=OOpbyf{R-#3R7WO zTz-&wRh7CoF(p3yrbNmdx16UA|I03Q#C)ULR|mxg-Ky`u@QIoG^}V1Wsa^4gIl_W& z=045idKs76OlKcwi8rD3J5qb&6BEx4dESD_2R7D?!vhRqTIU0VeJSDqz`Ynt5CvyK z!==743zXyA57ZM4fsD#BY|8}^YBO|PoYQWJSmpjHQ?AF6Y0Ae3kfHTDH{kbVe@zP# zW}Q)p>@ntaOYRf5lw7}b*#veCT$YKmAy2 zBmMNswC{i&#fad76f+A=jDvxCZg*IXuAP&+tGTqol|e<^?cmHG!JDHC^(X2qIJ1R= zQsj-0UjqxDi9Zm1)|sv&2T=X~CfW*KF_**W-IwQpu2PbVKB|8tS?pFdPm@?jH-2As zPJ}SVct!&7cb2oKhOkHjf0*2qRWu>@{QAJ?+`KRCp{$Exttr|gcdy%ZwIWOOg?v33Gs!daf%{EnndCoq%F|3w=9tJ1oWUU|X?K1s_^j>s%HPCPPI380mZf_p{NI6DD-~lBbfV%MZ z^dZi-`T$G>^f_zDm!8%>=4`NEf~r?Kir{vpQbRBTRGYsiq2WVSEI1<;L+;&_V(tVtaB;GTnD=~<$fLvfvp;k zmAvCbu_4z>2oubL4g@pM*kF-yTscZEY zWy0kd`+nWw#d18a#@-2tfYOd)4T-_qmGPSaTbnP3_o711H*vAaU;O7m?k|79(2G`Q zcDG%xvd0aK%Qkj|0NM})Z0oE8Ji#^K*O>^6Rdh>{;z8TxjIZl!QXtVKU@J^@C@Eva z=rnBn8lM(44IWNc<^;$#wz-a5?v235TisDz7di@;=Bsgf(av?6gNGK*a=0lhx}{Da z8;20-akDT&hCB1>bwkKcdBmy_O{aVx$y}r8qJ-kEJd~?`l~viQDmA-5)s)n#pl>sx z)lOA%X~;yCKQe&96`BXjSJ|mN6exojZQLCPW*lyEPhaxU0ICJwS%Do`Pp@XYPIPajtxi1ImtQx?GCRi!zu2>Y~%Pg|H z0SDr`Z8usVsxjK%hmPN#rOb$O5G-`@&fkHIqA}*xKRs?;O)7g z5>S&!pbw*`J6@UB(c|mqSqTg{G`Lm<-XM!ht;FabH)(AdSDsl6bmJ z@Bko5P%yliO&AsR^34Op?e30ub?7jXhH@?U^(fT{T4@P#u|K1=_f9q=rRuqmxKwyM znE{byUW#^)d~nP4ZoE75b7L5S(#KSST|;#`8!zrsl*8QkdB4Ol0I>6auvCq-m&Kw( zaV$hYQv?)xs@(}l)n1hkLe|`f?*W)+$Peb*%YnN+-$|_nDNPUcHPQHn)}Jgl7vE#R$wjVJ3}&e=Mkf3pxx` z5%`zmv#pF$M*lpsczeZ~@HuW{?7GapPiFn8pm^^ToPsD7$lRSQCe~~7L2g!4sNK`; z76}*q8?Gl@VAXNM;zD_V|Mz+i>mv=wc0p}t15QKGUF3XxQM8|Z+1q7Uc|A5JEr&i5 zzyLCMKUx-fO!&0Q(D9Q_0KA=TiW9c91gt4pKjt9S_L?5aQ? zrI41JLvg6m(8*N}p7{@*gVuGEMwdoytGlK$uPKF)4?9Jr#OzQNw2g3Nsnp2R5D?s> zf^Tsb7JtK7)|I~90EMb%qj>+JCku+nyauiN?iPUUS-;!w5ux^%tuHTP|7 zq_M3DO$(6?H~*9=#I(XRnB}wUdlR`!?e88n7ELsP@Oe~y*it}~cPIdSIX=Z(&FP-9 zvcIs%4{e*4GVRP0s1Tx((sn;K4IsI+pQ|#iGM36au7efz4G%jji5h$cm2EZK`Y~&= z*Z`>Ved4zwoYsXt&3=~pqh7I zq8#!M8sgu12D<6r?dkQt9kEifXz<2;o@p1MU>1A35r^-#sZZ^CoHANTKF^n4s*+Yf zh}OdvKSI47CU(&b9(29G=S3s{AR0>LqSdE zgsI5;d1fZ{I|#vYCY!e{G1K|K)2;Eh`1NWApDQbTPAfG&#bDweGaR!>U`b#FU>JXq z!&3*cAhP4iY_6`Pn#i@CSzP?6? zG^lK5+Mr5!?YfWl9W$mh-z8h|ueT>s*|MN0JV?2`7XxfSC)e8yo)}Gh)YfPj61*R#Qp=L|LQn>sL=w zj<3G~EHjUJIBAH*!E6C2#yCWXb-xhD^iEDcqM_948ZJBUo5sn6S1D1SNl|9J7~{BL zO1F>C3{}XyPC#PX{oIHE5=0d~pPG?4rIvBrmL`6j<I7h{x(k_nQWL3{%0G}^i`uZu=vuVd$waS3oO#$%?BG}a$w zV}fJ0i-jrjiRxr)awaX&=05W_1dgR3km-+Sn`48CR?*474X#Me_2xDx; zohv+VJ&J~nyc<6aK;*oc63ph0*3I8CAO#=^48=CVMgVdF1&;gN9$H3Tz|Z^VLhha_ zxX1~{>~$wLs%gLsE%tfG%H4wVxo9kEb{~iN-gGJG-P9ZeCI8oNkcq@04ZP|V5f!KU z*4ym_<=boQpxAwcO&9~ui)gY{pGCA3bt=T=4y$>>qplMc8NDh7f6x;NBcU^mXM}#- z(4%xNEo%U}oIhVIt2hFLq-TtnuxBhqQy((@O~@ zGF&WbsezaGM)_MM<9nKr>I_G@@H`tSwUC0pac54S<7=i5w@3nuQ4N;IO&8mcI2XPQ zH(pquvs%nr|K1>GY;GlHMXYB-!f||Q0N|AIduFr7)7>0>ZRHptmceCBL6wjpG95M+ z6ftVx+kv2IHkw8>1G*&mTv_HTXC~K}8T@U@W7A%VVwv*NMF3njSNhjX=Jz zpwz>|`}=?ZwH1I0&h4F+Vek}EBzfqh{l@Fzz#IYaW9icB6=he79F^`1_`0P3_DS|Q zMv|(`9vle4%9xzxq@Y+$UT~?<+P7+N9TdZzmSu1SXtQJr)b;aBYY|MB@CvgB)6bQ+ zur76!yT_g`9ZHqZE8|xcZ;7I6;ccE0sIS|yaRoGVXGz=O#38Wwqkcg0hjWs^?Dls( zqlxyHFP9O{L=0G^9aQ?9`5nC)&PM0bXGs&urD`SmjJU<3@gd!$L z@Oe|tztrl;_LF0+Wh>zVD&(D6-D&h+U~V(i`GQyaip-5N-|}%${Ij}2WU=*nnXin@ zKw46r%D8JMAk3d+Ua;;rg<5kRxqD2drT6ckxtB}Wk5&;PAQ0H&wezqOVTmb5`p?&N z?;HX6ml)LLYtc4mYTtQHoWDO1?9T$z!;buqpy+73X4XK=W=e+vS=F{2VQ8(WuNkV= z*_7{g&PMaNkG(w}Bdm`)Fs~dcXU&U!Q!U+T#;drf&Btypp)Gy|W`ye>(n!etbGtne z6Yp@OU(rMi^h3r*>tA!fKw!KRtt|KQUT6POXPfN2YulMHq2<&fU!^j%`_tzSQ(6;s zAr+v^qD1=z3oy4Fp>0`>0FW*&&#$u5Vp*ETJ10M*pg5yAjC6w}2;wA{ z@pLpOGBRuHhz;K(0RASVkMi~(oinM;q8*F-q-!_N{)u*Y-`y#ryJ5_(^Rmrn7^FMy zGBCKUvBSd&*2xI|%RMk!Da$mZI><(o=3f!LddACLoUPBScTN02{i!vr(`CPBw?zT1 z#gjRNin-{b!F%3YwSxkP2*d^$6T8u?jp{c$8=A<|kWrpzrV*u)oi8urpH^unN4ay@ zmibbDA7b;2qBr5IgMhhVb|KBWyzGon7QamIlo6NSD^*VzO{wq75cBptoAR+A$FGW$ za#Jz7t&)}r436u8TXu=w-MU)TE77PL=tW5`uV1{2XeYs$VkbeOlIpG@$vMbW?cYM;F=?oVmevc^U39eHy-CS7w5R4$Mpay&&YI) zLt)Z=&+leE+r>S{BE1h+ChXDvChT<((AMbbw4N0s_RV-8PbUPtRX-?}8|fxoDLUA8SCKJ8HOK8j;Uy?Yd?Q6pQe6vk_v%M}ECZ z^&Lxg;n39ekOc0RmrDU?tLJ1-Q-KQm1``fW?ca=ZtcX_a2-q3=HfCW-et8z@;H=MR zpbbw2>S8GSL_y-ignc8N>>>C%)29~o*iTs9ZnZF=M3DxQwcg#Co}8XMHEfWTBcFg& zU!$sf7;y{muR8Gdy0`sv1Vnt)cgk-7JUeLa26(r{%5^r~w&({h_L#;fY}!0p;tQUvJGl`5os3cYgwt50!6Dtf77x0P7M-WD zF_;hIeZlTh>YhNAuBI}~t$W;j*v}Z(?00X5ZycPMh?Tg_vm8U1P1r@2M6VXk26M>7 zbI=+0udbVxwO_1yQ}733e~NCV|I2a=^>Ev({QCHW90=>S94OP2(9!C`UU&dQP%dfq zH@;Nyr`6`_Y8xgNMUo6sy;V!L1p^gLNNLzRtj~?%^La_8`874_C%pVP@RG>37&K)I z$)xF-p0r&Mcg0US!888 zGawJ4DTH;!mVO`Avd~6bPe7^qOD3&a3+}vGqA%VP zl!2#6v1!ZbK{7!-?P{%dJG{KbNzP(;#Q9Na+vqG2yz9E-?w`4oCfIh-Fp3Wf#@G zz&%T2P%9T%I{J6~WsYd6+>zIwMZHEPw=0Zto%Ltu0irquv{Y6lSz$I9=rc@2bD=p~ zKYq~ryW6i!(U2)#8tX{@_mo7@So%7xOEp6i*s$OYdxtqwoCZkZyMokDXS>j1yL7Mi z;fzZ;I(F84nBpU|$rkEUXqv(MQdCgNs-Sf|_yeVo`*vt{)(Wr@P20m+GT}BA@E=lQ z>VDN9hch?nQD~`T^M|o_P-Ox*{DG%}|Bzm7CF=%?&`dQ$4<lE^E*bn)ybw)F0NzNahCp9U6;P4lS72}Qm-7YR>QI_+9}RlX({TY0OQz0`It z@gS5>JmokOfwB|?~` zFJB{aE|*MDx6v=h4yQ@I?2%v-BLq8+b;X6*+3a!7%CuQ{Wwzq52KOlH&hU#7>oPt- zqR*Vk(dA&XwGro?jDV*7ZnV!61PzhgK|GG`+G11F&4P|ADUw$+U8=8!L@5+^e~(i> zL8j1Y_fS;X)S!sxOA?P0sV@0{*1$tlZ;Az-;lPe3#pq%e6M;V z8%7ahy$MC28&c!3Td@rLwVAWKpRfq_0HnpZ z`fX0JLJUD36mV_5tCTBG=+Y@XBx(VNk)0(rT2D6%FoF~S#3Y_;&Q%|F%N-JnFqZAM zgxi|qP&Yj?3&GDEVFL$g=ftmY){6951|_um}>@G)E_Ti))22dQy|DM6fp@GJ8?1<}T zo2yE0KB-pf!u;T3gIPG4=Xzh>ttc@Fe*n*`eYX6+;UWn;PW0|>uRe?x4S^#0{knYk zz>mhVDh*N96FH8;a(ct@gAFO05ZG8Z#H#n#{rw7utfWhmWIBpJ8>|^&KCMIz!Z+%0 zw(k8c8LD_)j%(n1Yk$u|WgI2g(~_Q@K0Zcml8KB^?A)P2`=1b0#H4!E>ea{ZPrXEW z6w#A#=Rowq_OwpbhRD-VE5te7|9uJ@F$og6pHjRuftKHxO%8)(`ORs#gm7F#A@oVi zoK*C`jBO&=lg&Infls&`J!y9&2vgPqEMX0C7z1{y)ov#nISRC=$LLm&wu466GVT=_F+jtMAzv?b9&_A0pDabPGpDni*<$ z?mZ)1g8p{k6rK_6XB|A~niz`c_a`Uxnu z`TD)OTAOr+867tB{BkVh(NaQ?7-H^f@rbedm3HwoRqpT4Zi;4^pO8YgH*y#?0s?vX z{73dDdsfSo>K~Rav9}cVY>Zf}|9`*Dip?@Qd7f~>)yYSNM98>=_6x!3RPxF@jZV>5 aaak37?$z*bl(4HY0AD^S$y7-h2mT*Fdj7Wn literal 0 HcmV?d00001 diff --git a/buildroot/share/scripts/rle16_compress_cpp_image_data.py b/buildroot/share/scripts/rle16_compress_cpp_image_data.py new file mode 100755 index 000000000000..5a6b32d78bf5 --- /dev/null +++ b/buildroot/share/scripts/rle16_compress_cpp_image_data.py @@ -0,0 +1,142 @@ +#!/usr/bin/env python3 +# +# Utility to compress Marlin RGB565 TFT data to RLE16 format. +# Reads the existing Marlin RGB565 cpp file and generates a new file with the additional RLE16 data. +# +# Usage: rle16_compress_cpp_image_data.py INPUT_FILE.cpp OUTPUT_FILE.cpp +# +import sys,struct +import re + +def addCompressedData(input_file, output_file): + ofile = open(output_file, 'wt') + + c_data_section = False + c_skip_data = False + c_footer = False + raw_data = [] + rle_value = [] + rle_count = [] + arrname = '' + + line = input_file.readline() + while line: + if not c_footer: + if not c_skip_data: ofile.write(line) + + if "};" in line: + c_skip_data = False + c_data_section = False + c_footer = True + + if c_data_section: + cleaned = re.sub(r"\s|,|\n", "", line) + as_list = cleaned.split("0x") + as_list.pop(0) + raw_data += [int(x, 16) for x in as_list] + + if "const uint" in line: + # e.g.: const uint16_t marlin_logo_480x320x16[153600] = { + if "_rle16" in line: + c_skip_data = True + else: + c_data_section = True + arrname = line.split('[')[0].split(' ')[-1] + print("Found data array", arrname) + + line = input_file.readline() + + input_file.close() + + # + # RLE16 (run length 16) encoding + # Convert data from from raw RGB565 to a simple run-length-encoded format for each word of data. + # - Each sequence begins with a count byte N. + # - If the high bit is set in N the run contains N & 0x7F + 1 unique words. + # - Otherwise it repeats the following word N + 1 times. + # - Each RGB565 word is stored in MSB / LSB order. + # + def rle_encode(data): + warn = "This may take a while" if len(data) > 300000 else "" + print("Compressing image data...", warn) + rledata = [] + distinct = [] + i = 0 + while i < len(data): + v = data[i] + i += 1 + rsize = 1 + for j in range(i, len(data)): + if v != data[j]: break; + i += 1 + rsize += 1 + if rsize >= 128: break; + + # If the run is one, add to the distinct values + if rsize == 1: distinct.append(v) + + # If distinct length >= 127, or the repeat run is 2 or more, + # store the distinct run. + nr = len(distinct) + if nr and (nr >= 128 or rsize > 1 or i >= len(data)): + rledata += [(nr - 1) | 0x80] + distinct + distinct = [] + + # If the repeat run is 2 or more, store the repeat run. + if rsize > 1: rledata += [rsize - 1, v] + + return rledata + + def append_byte(data, byte, cols=240): + if data == '': data = ' ' + data += ('0x{0:02X}, '.format(byte)) # 6 characters + if len(data) % (cols * 6 + 2) == 0: data = data.rstrip() + "\n " + return data + + def rle_emit(ofile, arrname, rledata, rawsize): + col = 0 + i = 0 + outstr = '' + size = 0 + while i < len(rledata): + rval = rledata[i] + i += 1 + if rval & 0x80: + count = (rval & 0x7F) + 1 + outstr = append_byte(outstr, rval) + size += 1 + for j in range(count): + outstr = append_byte(outstr, rledata[i + j] >> 8) + outstr = append_byte(outstr, rledata[i + j] & 0xFF) + size += 2 + i += count + else: + outstr = append_byte(outstr, rval) + outstr = append_byte(outstr, rledata[i] >> 8) + outstr = append_byte(outstr, rledata[i] & 0xFF) + i += 1 + size += 3 + + outstr = outstr.rstrip()[:-1] + ofile.write("\n// Saves %i bytes\nconst uint8_t %s_rle16[%d] = {\n%s\n};\n" % (rawsize - size, arrname, size, outstr)) + + (w, h, d) = arrname.split("_")[-1].split('x') + ofile.write("\nconst tImage MarlinLogo{0}x{1}x16 = MARLIN_LOGO_CHOSEN({0}, {1});\n".format(w, h)) + ofile.write("\n#endif // HAS_GRAPHICAL_TFT && SHOW_BOOTSCREEN\n".format(w, h)) + + # Encode the data, write it out, close the file + rledata = rle_encode(raw_data) + rle_emit(ofile, arrname, rledata, len(raw_data) * 2) + ofile.close() + +if len(sys.argv) <= 2: + print("Utility to compress Marlin RGB565 TFT data to RLE16 format.") + print("Reads the existing Marlin RGB565 cpp file and generates a new file with the additional RLE16 data.") + print("Usage: rle16_compress_cpp_image_data.py INPUT_FILE.cpp OUTPUT_FILE.cpp") + exit(1) + +output_cpp = sys.argv[2] +inname = sys.argv[1].replace('//', '/') +input_cpp = open(inname) +print("Processing", inname, "...") +addCompressedData(input_cpp, output_cpp) diff --git a/buildroot/tests/LERDGEK b/buildroot/tests/LERDGEK index 1aca42c18aba..b0806e90857c 100755 --- a/buildroot/tests/LERDGEK +++ b/buildroot/tests/LERDGEK @@ -11,7 +11,7 @@ set -e # restore_configs opt_set MOTHERBOARD BOARD_LERDGE_K SERIAL_PORT 1 -opt_enable TFT_GENERIC TFT_INTERFACE_FSMC TFT_COLOR_UI +opt_enable TFT_GENERIC TFT_INTERFACE_FSMC TFT_COLOR_UI COMPACT_MARLIN_BOOT_LOGO exec_test $1 $2 "LERDGE K with Generic FSMC TFT with ColorUI" "$3" # clean up From 79be07f9a4aff5c010a0f454c24fb147725bcf2a Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 24 Jul 2023 06:06:23 +0000 Subject: [PATCH 381/427] [cron] Bump distribution date (2023-07-24) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 293a90aaa1c8..37e76fbecd79 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-22" +//#define STRING_DISTRIBUTION_DATE "2023-07-24" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 205a5d8c4281..f2ea158af930 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-22" + #define STRING_DISTRIBUTION_DATE "2023-07-24" #endif /** From fdad658e5feb93943b1ab0ea9bc2420258e4f2e4 Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Thu, 27 Jul 2023 01:38:59 +0200 Subject: [PATCH 382/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20runout=20extra=20l?= =?UTF-8?q?ength=20(#26082)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine Co-authored-by: justvlade <7622616+justvlade@users.noreply.github.com> --- Marlin/src/feature/runout.cpp | 2 +- Marlin/src/feature/runout.h | 70 +++++++++++++++++++++++++++-------- 2 files changed, 56 insertions(+), 16 deletions(-) diff --git a/Marlin/src/feature/runout.cpp b/Marlin/src/feature/runout.cpp index 7c7d61e7eb6c..90d3d2fd652b 100644 --- a/Marlin/src/feature/runout.cpp +++ b/Marlin/src/feature/runout.cpp @@ -47,7 +47,7 @@ bool FilamentMonitorBase::enabled = true, #if HAS_FILAMENT_RUNOUT_DISTANCE float RunoutResponseDelayed::runout_distance_mm = FILAMENT_RUNOUT_DISTANCE_MM; - volatile countdown_t RunoutResponseDelayed::mm_countdown; + countdown_t RunoutResponseDelayed::mm_countdown; #if ENABLED(FILAMENT_MOTION_SENSOR) uint8_t FilamentSensorEncoder::motion_detected; #endif diff --git a/Marlin/src/feature/runout.h b/Marlin/src/feature/runout.h index a001459e9d99..847413d25ad6 100644 --- a/Marlin/src/feature/runout.h +++ b/Marlin/src/feature/runout.h @@ -30,7 +30,8 @@ #include "../module/planner.h" #include "../module/stepper.h" // for block_t #include "../gcode/queue.h" -#include "../feature/pause.h" +#include "../feature/pause.h" // for did_pause_print +#include "../MarlinCore.h" // for printingIsActive() #include "../inc/MarlinConfig.h" @@ -50,9 +51,16 @@ #define HAS_FILAMENT_SWITCH 1 #endif -typedef Flags<8> runout_flags_t; +typedef Flags< + #if NUM_MOTION_SENSORS > NUM_RUNOUT_SENSORS + NUM_MOTION_SENSORS + #else + NUM_RUNOUT_SENSORS + #endif + > runout_flags_t; void event_filament_runout(const uint8_t extruder); +inline bool should_monitor_runout() { return did_pause_print || printingIsActive(); } template class TFilamentMonitor; @@ -128,7 +136,7 @@ class TFilamentMonitor : public FilamentMonitorBase { // Give the response a chance to update its counter. static void run() { - if (enabled && !filament_ran_out && (printingIsActive() || did_pause_print)) { + if (enabled && !filament_ran_out && should_monitor_runout()) { TERN_(HAS_FILAMENT_RUNOUT_DISTANCE, cli()); // Prevent RunoutResponseDelayed::block_completed from accumulating here response.run(); sensor.run(); @@ -340,8 +348,10 @@ class FilamentSensorBase { typedef struct { float runout[NUM_RUNOUT_SENSORS]; + Flags runout_reset; // Reset runout later #if ENABLED(FILAMENT_SWITCH_AND_MOTION) float motion[NUM_MOTION_SENSORS]; + Flags motion_reset; // Reset motion later #endif } countdown_t; @@ -350,7 +360,7 @@ class FilamentSensorBase { // during a runout condition. class RunoutResponseDelayed { private: - static volatile countdown_t mm_countdown; + static countdown_t mm_countdown; public: static float runout_distance_mm; @@ -389,26 +399,56 @@ class FilamentSensorBase { } static void filament_present(const uint8_t extruder) { - mm_countdown.runout[extruder] = runout_distance_mm; + if (mm_countdown.runout[extruder] < runout_distance_mm || did_pause_print) { + // Reset runout only if it is smaller than runout_distance or printing is paused. + // On Bowden systems retract may be larger than runout_distance_mm, so if retract + // was added leave it in place, or the following unretract will cause runout event. + mm_countdown.runout[extruder] = runout_distance_mm; + mm_countdown.runout_reset.clear(extruder); + } + else { + // If runout is larger than runout distance, we cannot reset right now, as Bowden and retract + // distance larger than runout_distance_mm leads to negative runout right after unretract. + // But we cannot ignore filament_present event. After unretract, runout will become smaller + // than runout_distance_mm and should be reset after that. So activate delayed reset. + mm_countdown.runout_reset.set(extruder); + } } #if ENABLED(FILAMENT_SWITCH_AND_MOTION) static void filament_motion_present(const uint8_t extruder) { - mm_countdown.motion[extruder] = runout_distance_mm; + // Same logic as filament_present + if (mm_countdown.motion[extruder] < runout_distance_mm || did_pause_print) { + mm_countdown.motion[extruder] = runout_distance_mm; + mm_countdown.motion_reset.clear(extruder); + } + else + mm_countdown.motion_reset.set(extruder); } #endif static void block_completed(const block_t * const b) { - if (b->steps.x || b->steps.y || b->steps.z || did_pause_print) { // Allow pause purge move to re-trigger runout state - // Only trigger on extrusion with XYZ movement to allow filament change and retract/recover. - const uint8_t e = b->extruder; - const int32_t steps = b->steps.e; - const float mm = (b->direction_bits.e ? steps : -steps) * planner.mm_per_step[E_AXIS_N(e)]; - if (e < NUM_RUNOUT_SENSORS) mm_countdown.runout[e] -= mm; - #if ENABLED(FILAMENT_SWITCH_AND_MOTION) - if (e < NUM_MOTION_SENSORS) mm_countdown.motion[e] -= mm; - #endif + const int32_t esteps = b->steps.e; + if (!esteps) return; + + // No calculation unless paused or printing + if (!should_monitor_runout()) return; + + // No need to ignore retract/unretract movement since they complement each other + const uint8_t e = b->extruder; + const float mm = (b->direction_bits.e ? esteps : -esteps) * planner.mm_per_step[E_AXIS_N(e)]; + + if (e < NUM_RUNOUT_SENSORS) { + mm_countdown.runout[e] -= mm; + if (mm_countdown.runout_reset[e]) filament_present(e); // Reset pending. Try to reset. } + + #if ENABLED(FILAMENT_SWITCH_AND_MOTION) + if (e < NUM_MOTION_SENSORS) { + mm_countdown.motion[e] -= mm; + if (mm_countdown.motion_reset[e]) filament_motion_present(e); // Reset pending. Try to reset. + } + #endif } }; From 6ba50aa6ea519ab5e80ec0152b100a0425c181a2 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 27 Jul 2023 00:21:22 +0000 Subject: [PATCH 383/427] [cron] Bump distribution date (2023-07-27) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 37e76fbecd79..fe4964512531 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-24" +//#define STRING_DISTRIBUTION_DATE "2023-07-27" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index f2ea158af930..260e1d4e9f25 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-24" + #define STRING_DISTRIBUTION_DATE "2023-07-27" #endif /** From d036097bca52b128b421342afcdb908cb1d8d5ab Mon Sep 17 00:00:00 2001 From: lukasradek Date: Thu, 27 Jul 2023 23:08:21 +0200 Subject: [PATCH 384/427] =?UTF-8?q?=F0=9F=9A=B8=20Fix=20HD44780=20EDIT=5FI?= =?UTF-8?q?TEM=20position=20(#26073)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/HD44780/lcdprint_hd44780.cpp | 2 +- Marlin/src/lcd/HD44780/marlinui_HD44780.cpp | 3 ++- Marlin/src/lcd/TFTGLCD/lcdprint_TFTGLCD.cpp | 2 +- Marlin/src/lcd/dogm/lcdprint_u8g.cpp | 2 +- Marlin/src/lcd/lcdprint.cpp | 2 ++ 5 files changed, 7 insertions(+), 4 deletions(-) diff --git a/Marlin/src/lcd/HD44780/lcdprint_hd44780.cpp b/Marlin/src/lcd/HD44780/lcdprint_hd44780.cpp index 48f5f97133db..b05a8e81d9e9 100644 --- a/Marlin/src/lcd/HD44780/lcdprint_hd44780.cpp +++ b/Marlin/src/lcd/HD44780/lcdprint_hd44780.cpp @@ -1043,7 +1043,7 @@ int lcd_put_lchar_max(const lchar_t &c, const pixel_len_t max_length) { * @param cb_read_byte : the callback function to read one byte from the utf8_str (from RAM or ROM) * @param max_length : the pixel length of the string allowed (or number of slots in HD44780) * - * @return the number of pixels advanced + * @return the number of characters emitted * * Draw a UTF-8 string */ diff --git a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp index b59ec150a1a5..897070c4dd89 100644 --- a/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp +++ b/Marlin/src/lcd/HD44780/marlinui_HD44780.cpp @@ -1212,7 +1212,8 @@ void MarlinUI::draw_status_screen() { void MenuEditItemBase::draw(const bool sel, const uint8_t row, FSTR_P const ftpl, const char * const inStr, const bool pgm) { const uint8_t vlen = inStr ? (pgm ? utf8_strlen_P(inStr) : utf8_strlen(inStr)) : 0; lcd_put_lchar(0, row, sel ? LCD_STR_ARROW_RIGHT[0] : ' '); - uint8_t n = lcd_put_u8str(ftpl, itemIndex, itemStringC, itemStringF, LCD_WIDTH - 2 - vlen); + uint8_t n = LCD_WIDTH - 2 - vlen; + n -= lcd_put_u8str(ftpl, itemIndex, itemStringC, itemStringF, n); if (vlen) { lcd_put_u8str(F(":")); for (; n; --n) lcd_put_u8str(F(" ")); diff --git a/Marlin/src/lcd/TFTGLCD/lcdprint_TFTGLCD.cpp b/Marlin/src/lcd/TFTGLCD/lcdprint_TFTGLCD.cpp index e681ff0a9170..666ad2bbc166 100644 --- a/Marlin/src/lcd/TFTGLCD/lcdprint_TFTGLCD.cpp +++ b/Marlin/src/lcd/TFTGLCD/lcdprint_TFTGLCD.cpp @@ -1041,7 +1041,7 @@ int lcd_put_lchar_max(const lchar_t &c, const pixel_len_t max_length) { * @param cb_read_byte : the callback function to read one byte from the utf8_str (from RAM or ROM) * @param max_length : the pixel length of the string allowed (or number of slots in HD44780) * - * @return the number of pixels advanced + * @return the number of characters emitted * * Draw a UTF-8 string */ diff --git a/Marlin/src/lcd/dogm/lcdprint_u8g.cpp b/Marlin/src/lcd/dogm/lcdprint_u8g.cpp index ea0db357b64a..a615c2176661 100644 --- a/Marlin/src/lcd/dogm/lcdprint_u8g.cpp +++ b/Marlin/src/lcd/dogm/lcdprint_u8g.cpp @@ -26,7 +26,7 @@ void lcd_moveto(const lcd_uint_t col, const lcd_uint_t row) { u8g.setPrintPos(co void lcd_put_int(const int i) { u8g.print(i); } // return < 0 on error -// return the advanced pixels +// return the number of pixels advanced int lcd_put_lchar_max(const lchar_t &c, const pixel_len_t max_length) { if (c < 256) { u8g.print((char)c); diff --git a/Marlin/src/lcd/lcdprint.cpp b/Marlin/src/lcd/lcdprint.cpp index 162f01a12cbd..912344c14fc7 100644 --- a/Marlin/src/lcd/lcdprint.cpp +++ b/Marlin/src/lcd/lcdprint.cpp @@ -41,6 +41,8 @@ * ~ displays '1'....'11' for indexes 0 - 10 * * displays 'E1'...'E11' for indexes 0 - 10 (By default. Uses LCD_FIRST_TOOL) * @ displays an axis name such as XYZUVW, or E for an extruder + * + * Return the given maxlen minus the number of characters emitted, i.e., the number of unused columns */ lcd_uint_t lcd_put_u8str_P(PGM_P const ptpl, const int8_t ind, const char *cstr/*=nullptr*/, FSTR_P const fstr/*=nullptr*/, const lcd_uint_t maxlen/*=LCD_WIDTH*/) { const uint8_t prop = USE_WIDE_GLYPH ? 2 : 1; From 6cc4dd10bc5504c38263b57ecf7e8b1e3d06e44e Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 27 Jul 2023 17:20:03 -0500 Subject: [PATCH 385/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20hotend=20idle=20ti?= =?UTF-8?q?meout=20checks?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/hotend_idle.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Marlin/src/feature/hotend_idle.cpp b/Marlin/src/feature/hotend_idle.cpp index f64fe7e3cf67..050898e3b53b 100644 --- a/Marlin/src/feature/hotend_idle.cpp +++ b/Marlin/src/feature/hotend_idle.cpp @@ -55,15 +55,15 @@ void HotendIdleProtection::check_hotends(const millis_t &ms) { if (!do_prot) next_protect_ms = 0; // No hotends are hot so cancel timeout else if (!next_protect_ms) // Timeout is possible? - next_protect_ms = ms + cfg.timeout * 1000; // Start timeout if not already set + next_protect_ms = ms + 1000UL * cfg.timeout; // Start timeout if not already set } void HotendIdleProtection::check_e_motion(const millis_t &ms) { static float old_e_position = 0; if (old_e_position != current_position.e) { - old_e_position = current_position.e; // Track filament motion - if (next_protect_ms) // If some heater is on then... - next_protect_ms = ms + cfg.timeout * 1000; // ...delay the timeout till later + old_e_position = current_position.e; // Track filament motion + if (next_protect_ms) // If some heater is on then... + next_protect_ms = ms + 1000UL * cfg.timeout; // ...delay the timeout till later } } From 6f8178598f417a7963b26ebe091c0b3ee69f46dd Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 28 Jul 2023 00:21:36 +0000 Subject: [PATCH 386/427] [cron] Bump distribution date (2023-07-28) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index fe4964512531..a6255cc44e13 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-27" +//#define STRING_DISTRIBUTION_DATE "2023-07-28" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 260e1d4e9f25..5e98f16cc29f 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-27" + #define STRING_DISTRIBUTION_DATE "2023-07-28" #endif /** From 2a82ca87b03ab3b819f69b571ca44dd0a0e1afdf Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 27 Jul 2023 23:03:36 -0500 Subject: [PATCH 387/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20ProUI=20compile=20?= =?UTF-8?q?without=20Advanced=20Pause?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/e3v2/proui/dwin.cpp | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index 7aa9b1760d10..2c52b0cabc8c 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -3437,19 +3437,21 @@ void drawMotionMenu() { updateMenu(motionMenu); } -#if HAS_PREHEAT - void drawPreheatHotendMenu() { - checkkey = ID_Menu; - if (SET_MENU(preheatHotendMenu, MSG_PREHEAT_HOTEND, 1 + PREHEAT_COUNT)) { - BACK_ITEM(drawFilamentManMenu); - #define _ITEM_PREHEAT_HE(N) MENU_ITEM(ICON_Preheat##N, MSG_PREHEAT_##N, onDrawMenuItem, DoPreheatHotend##N); - REPEAT_1(PREHEAT_COUNT, _ITEM_PREHEAT_HE) +#if ENABLED(ADVANCED_PAUSE_FEATURE) + + #if HAS_PREHEAT + + void drawPreheatHotendMenu() { + checkkey = ID_Menu; + if (SET_MENU(preheatHotendMenu, MSG_PREHEAT_HOTEND, 1 + PREHEAT_COUNT)) { + BACK_ITEM(drawFilamentManMenu); + #define _ITEM_PREHEAT_HE(N) MENU_ITEM(ICON_Preheat##N, MSG_PREHEAT_##N, onDrawMenuItem, DoPreheatHotend##N); + REPEAT_1(PREHEAT_COUNT, _ITEM_PREHEAT_HE) + } + updateMenu(preheatHotendMenu); } - updateMenu(preheatHotendMenu); - } -#endif -#if ENABLED(ADVANCED_PAUSE_FEATURE) + #endif void drawFilamentManMenu() { checkkey = ID_Menu; From ae9f2710f0a0a1c47bd384a803e3345117b6dd49 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 28 Jul 2023 16:53:01 -0500 Subject: [PATCH 388/427] =?UTF-8?q?=F0=9F=94=A8=20Old=20renamed=20AVRs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ini/renamed.ini | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ini/renamed.ini b/ini/renamed.ini index 9d2706e3b358..91ac55f5b251 100644 --- a/ini/renamed.ini +++ b/ini/renamed.ini @@ -21,6 +21,12 @@ board = genericSTM32F103RE # List of environment names that are no longer used # +[env:megaatmega1280] ;=> mega1280 +extends = renamed + +[env:megaatmega2560] ;=> mega2560 +extends = renamed + [env:STM32F103RET6_creality_maple] ;=> STM32F103RE_creality_maple extends = renamed From 347a7dc71e185f7ad7144d69e66cda10eb4cdc9e Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 29 Jul 2023 00:21:43 +0000 Subject: [PATCH 389/427] [cron] Bump distribution date (2023-07-29) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index a6255cc44e13..59620dff24c0 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-28" +//#define STRING_DISTRIBUTION_DATE "2023-07-29" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 5e98f16cc29f..f9be1afb2cd2 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-28" + #define STRING_DISTRIBUTION_DATE "2023-07-29" #endif /** From abd1896ce2cd37a184fc1a237482b2b0a3c16ae2 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Sun, 30 Jul 2023 11:30:56 +1200 Subject: [PATCH 390/427] =?UTF-8?q?=F0=9F=94=A7=20STM32=20support=209=20UA?= =?UTF-8?q?RTs=20(#26072)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/STM32/HAL.h | 30 +++++++++++++-------------- Marlin/src/HAL/STM32/MarlinSerial.cpp | 9 ++++++++ Marlin/src/HAL/STM32/MinSerial.cpp | 7 +++++-- 3 files changed, 29 insertions(+), 17 deletions(-) diff --git a/Marlin/src/HAL/STM32/HAL.h b/Marlin/src/HAL/STM32/HAL.h index 013390fcaf3d..37a718b08dbe 100644 --- a/Marlin/src/HAL/STM32/HAL.h +++ b/Marlin/src/HAL/STM32/HAL.h @@ -57,61 +57,61 @@ #define _MSERIAL(X) MSerial##X #define MSERIAL(X) _MSERIAL(X) -#if WITHIN(SERIAL_PORT, 1, 6) +#if WITHIN(SERIAL_PORT, 1, 9) #define MYSERIAL1 MSERIAL(SERIAL_PORT) #elif !defined(USBCON) - #error "SERIAL_PORT must be from 1 to 6." + #error "SERIAL_PORT must be from 1 to 9." #elif SERIAL_PORT == -1 #define MYSERIAL1 MSerialUSB #else - #error "SERIAL_PORT must be from 1 to 6, or -1 for Native USB." + #error "SERIAL_PORT must be from 1 to 9, or -1 for Native USB." #endif #ifdef SERIAL_PORT_2 - #if WITHIN(SERIAL_PORT_2, 1, 6) + #if WITHIN(SERIAL_PORT_2, 1, 9) #define MYSERIAL2 MSERIAL(SERIAL_PORT_2) #elif !defined(USBCON) - #error "SERIAL_PORT_2 must be from 1 to 6." + #error "SERIAL_PORT_2 must be from 1 to 9." #elif SERIAL_PORT_2 == -1 #define MYSERIAL2 MSerialUSB #else - #error "SERIAL_PORT_2 must be from 1 to 6, or -1 for Native USB." + #error "SERIAL_PORT_2 must be from 1 to 9, or -1 for Native USB." #endif #endif #ifdef SERIAL_PORT_3 - #if WITHIN(SERIAL_PORT_3, 1, 6) + #if WITHIN(SERIAL_PORT_3, 1, 9) #define MYSERIAL3 MSERIAL(SERIAL_PORT_3) #elif !defined(USBCON) - #error "SERIAL_PORT_3 must be from 1 to 6." + #error "SERIAL_PORT_3 must be from 1 to 9." #elif SERIAL_PORT_3 == -1 #define MYSERIAL3 MSerialUSB #else - #error "SERIAL_PORT_3 must be from 1 to 6, or -1 for Native USB." + #error "SERIAL_PORT_3 must be from 1 to 9, or -1 for Native USB." #endif #endif #ifdef MMU2_SERIAL_PORT - #if WITHIN(MMU2_SERIAL_PORT, 1, 6) + #if WITHIN(MMU2_SERIAL_PORT, 1, 9) #define MMU2_SERIAL MSERIAL(MMU2_SERIAL_PORT) #elif !defined(USBCON) - #error "MMU2_SERIAL_PORT must be from 1 to 6." + #error "MMU2_SERIAL_PORT must be from 1 to 9." #elif MMU2_SERIAL_PORT == -1 #define MMU2_SERIAL MSerialUSB #else - #error "MMU2_SERIAL_PORT must be from 1 to 6, or -1 for Native USB." + #error "MMU2_SERIAL_PORT must be from 1 to 9, or -1 for Native USB." #endif #endif #ifdef LCD_SERIAL_PORT - #if WITHIN(LCD_SERIAL_PORT, 1, 6) + #if WITHIN(LCD_SERIAL_PORT, 1, 9) #define LCD_SERIAL MSERIAL(LCD_SERIAL_PORT) #elif !defined(USBCON) - #error "LCD_SERIAL_PORT must be from 1 to 6." + #error "LCD_SERIAL_PORT must be from 1 to 9." #elif LCD_SERIAL_PORT == -1 #define LCD_SERIAL MSerialUSB #else - #error "LCD_SERIAL_PORT must be from 1 to 6, or -1 for Native USB." + #error "LCD_SERIAL_PORT must be from 1 to 9, or -1 for Native USB." #endif #if HAS_DGUS_LCD #define LCD_SERIAL_TX_BUFFER_FREE() LCD_SERIAL.availableForWrite() diff --git a/Marlin/src/HAL/STM32/MarlinSerial.cpp b/Marlin/src/HAL/STM32/MarlinSerial.cpp index 37a8f40fd0b1..9f0b003a316b 100644 --- a/Marlin/src/HAL/STM32/MarlinSerial.cpp +++ b/Marlin/src/HAL/STM32/MarlinSerial.cpp @@ -37,6 +37,15 @@ #ifndef USART5 #define USART5 UART5 #endif +#ifndef USART7 + #define USART7 UART7 +#endif +#ifndef USART8 + #define USART8 UART8 +#endif +#ifndef USART9 + #define USART9 UART9 +#endif #define DECLARE_SERIAL_PORT(ser_num) \ void _rx_complete_irq_ ## ser_num (serial_t * obj); \ diff --git a/Marlin/src/HAL/STM32/MinSerial.cpp b/Marlin/src/HAL/STM32/MinSerial.cpp index c2260f4f26e0..f1fc806acb2c 100644 --- a/Marlin/src/HAL/STM32/MinSerial.cpp +++ b/Marlin/src/HAL/STM32/MinSerial.cpp @@ -45,7 +45,7 @@ struct USARTMin { volatile uint32_t CR2; }; -#if WITHIN(SERIAL_PORT, 1, 6) +#if WITHIN(SERIAL_PORT, 1, 9) // Depending on the CPU, the serial port is different for USART1 static const uintptr_t regsAddr[] = { TERN(STM32F1xx, 0x40013800, 0x40011000), // USART1 @@ -54,6 +54,9 @@ struct USARTMin { 0x40004C00, // UART4_BASE 0x40005000, // UART5_BASE 0x40011400 // USART6 + 0x40007800 // UART7_BASE + 0x40007C00 // UART8_BASE + 0x40011800 // UART9_BASE }; static USARTMin * regs = (USARTMin*)regsAddr[SERIAL_PORT - 1]; #endif @@ -116,7 +119,7 @@ static void TXBegin() { // A SW memory barrier, to ensure GCC does not overoptimize loops #define sw_barrier() __asm__ volatile("": : :"memory"); static void TX(char c) { - #if WITHIN(SERIAL_PORT, 1, 6) + #if WITHIN(SERIAL_PORT, 1, 9) constexpr uint32_t usart_sr_txe = _BV(7); while (!(regs->SR & usart_sr_txe)) { hal.watchdog_refresh(); From 2c9bc872e788a2281ca9b64a135ca1a53004f9b5 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Sun, 30 Jul 2023 11:34:16 +1200 Subject: [PATCH 391/427] =?UTF-8?q?=F0=9F=94=A7=20Check=20AVR=20Rx/Tx=20co?= =?UTF-8?q?nflict=20w/=20LCD=5FEN=20(#26069)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/HAL/AVR/inc/SanityCheck.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Marlin/src/HAL/AVR/inc/SanityCheck.h b/Marlin/src/HAL/AVR/inc/SanityCheck.h index 6a7e1728891d..85ee683685ec 100644 --- a/Marlin/src/HAL/AVR/inc/SanityCheck.h +++ b/Marlin/src/HAL/AVR/inc/SanityCheck.h @@ -33,13 +33,13 @@ * Check for common serial pin conflicts */ #define CHECK_SERIAL_PIN(N) ( \ - X_STOP_PIN == N || Y_STOP_PIN == N || Z_STOP_PIN == N \ - || X_MIN_PIN == N || Y_MIN_PIN == N || Z_MIN_PIN == N \ - || X_MAX_PIN == N || Y_MAX_PIN == N || Z_MAX_PIN == N \ - || X_STEP_PIN == N || Y_STEP_PIN == N || Z_STEP_PIN == N \ - || X_DIR_PIN == N || Y_DIR_PIN == N || Z_DIR_PIN == N \ - || X_ENA_PIN == N || Y_ENA_PIN == N || Z_ENA_PIN == N \ - || BTN_EN1 == N || BTN_EN2 == N \ + X_STOP_PIN == N || Y_STOP_PIN == N || Z_STOP_PIN == N \ + || X_MIN_PIN == N || Y_MIN_PIN == N || Z_MIN_PIN == N \ + || X_MAX_PIN == N || Y_MAX_PIN == N || Z_MAX_PIN == N \ + || X_STEP_PIN == N || Y_STEP_PIN == N || Z_STEP_PIN == N \ + || X_DIR_PIN == N || Y_DIR_PIN == N || Z_DIR_PIN == N \ + || X_ENA_PIN == N || Y_ENA_PIN == N || Z_ENA_PIN == N \ + || BTN_EN1 == N || BTN_EN2 == N || LCD_PINS_EN == N \ ) #if SERIAL_IN_USE(0) // D0-D1. No known conflicts. From 5da7143fe5a73f7aa636c833e95cf695d070faf1 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sun, 30 Jul 2023 00:24:18 +0000 Subject: [PATCH 392/427] [cron] Bump distribution date (2023-07-30) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 59620dff24c0..c927330c90ac 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-29" +//#define STRING_DISTRIBUTION_DATE "2023-07-30" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index f9be1afb2cd2..5f52cd99ea76 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-29" + #define STRING_DISTRIBUTION_DATE "2023-07-30" #endif /** From bed26734a28175f7ef9669d5190bf7ebc6227223 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 1 Aug 2023 23:03:06 -0500 Subject: [PATCH 393/427] =?UTF-8?q?=F0=9F=94=A7=20More=20endstops=20refact?= =?UTF-8?q?oring=20(#25758)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration.h | 15 + Marlin/src/HAL/AVR/endstop_interrupts.h | 2 +- Marlin/src/HAL/DUE/endstop_interrupts.h | 2 +- Marlin/src/HAL/ESP32/endstop_interrupts.h | 2 +- Marlin/src/HAL/LPC1768/endstop_interrupts.h | 2 +- Marlin/src/HAL/SAMD21/endstop_interrupts.h | 58 +-- Marlin/src/HAL/SAMD51/endstop_interrupts.h | 58 +-- Marlin/src/HAL/STM32/endstop_interrupts.h | 2 +- Marlin/src/HAL/STM32F1/endstop_interrupts.h | 2 +- .../src/HAL/TEENSY31_32/endstop_interrupts.h | 2 +- .../src/HAL/TEENSY35_36/endstop_interrupts.h | 2 +- .../src/HAL/TEENSY40_41/endstop_interrupts.h | 2 +- Marlin/src/gcode/calibrate/G28.cpp | 109 ++-- Marlin/src/gcode/calibrate/G33.cpp | 4 +- Marlin/src/inc/Conditionals_LCD.h | 18 +- Marlin/src/inc/Conditionals_post.h | 263 +++++++--- Marlin/src/inc/SanityCheck.h | 132 ++--- Marlin/src/lcd/e3v2/proui/endstop_diag.cpp | 12 +- .../generic/endstop_state_screen.cpp | 2 +- Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp | 102 +++- Marlin/src/lcd/menu/menu_configuration.cpp | 53 +- Marlin/src/module/endstops.cpp | 480 +++++++++--------- Marlin/src/module/endstops.h | 96 ++-- Marlin/src/module/motion.cpp | 126 +++-- Marlin/src/module/probe.cpp | 32 +- buildroot/tests/BIGTREE_BTT002 | 4 +- buildroot/tests/FYSETC_F6 | 11 +- buildroot/tests/LPC1769 | 7 +- buildroot/tests/SAMD21_minitronics20 | 3 +- buildroot/tests/SAMD51_grandcentral_m4 | 3 +- buildroot/tests/mega1280 | 1 + buildroot/tests/teensy35 | 3 +- 32 files changed, 881 insertions(+), 729 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 3127d59e8b40..dbba2e60edf9 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1751,6 +1751,21 @@ //#define V_HOME_DIR -1 //#define W_HOME_DIR -1 +/** + * Safety Stops + * If an axis has endstops on both ends the one specified above is used for + * homing, while the other can be used for things like SD_ABORT_ON_ENDSTOP_HIT. + */ +//#define X_SAFETY_STOP +//#define Y_SAFETY_STOP +//#define Z_SAFETY_STOP +//#define I_SAFETY_STOP +//#define J_SAFETY_STOP +//#define K_SAFETY_STOP +//#define U_SAFETY_STOP +//#define V_SAFETY_STOP +//#define W_SAFETY_STOP + // @section geometry // The size of the printable area diff --git a/Marlin/src/HAL/AVR/endstop_interrupts.h b/Marlin/src/HAL/AVR/endstop_interrupts.h index ac827f18422a..2532624d39cb 100644 --- a/Marlin/src/HAL/AVR/endstop_interrupts.h +++ b/Marlin/src/HAL/AVR/endstop_interrupts.h @@ -160,7 +160,7 @@ void setup_endstop_interrupts() { pciSetup(Z_MAX_PIN); #endif #endif - #if HAS_Z_MIN_PIN + #if USE_Z_MIN #if (digitalPinToInterrupt(Z_MIN_PIN) != NOT_AN_INTERRUPT) _ATTACH(Z_MIN_PIN); #else diff --git a/Marlin/src/HAL/DUE/endstop_interrupts.h b/Marlin/src/HAL/DUE/endstop_interrupts.h index 28510fb508d6..954eb625a575 100644 --- a/Marlin/src/HAL/DUE/endstop_interrupts.h +++ b/Marlin/src/HAL/DUE/endstop_interrupts.h @@ -52,7 +52,7 @@ void setup_endstop_interrupts() { TERN_(USE_Y_MAX, _ATTACH(Y_MAX_PIN)); TERN_(USE_Y_MIN, _ATTACH(Y_MIN_PIN)); TERN_(USE_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(USE_Z_MIN, _ATTACH(Z_MIN_PIN)); TERN_(USE_X2_MAX, _ATTACH(X2_MAX_PIN)); TERN_(USE_X2_MIN, _ATTACH(X2_MIN_PIN)); TERN_(USE_Y2_MAX, _ATTACH(Y2_MAX_PIN)); diff --git a/Marlin/src/HAL/ESP32/endstop_interrupts.h b/Marlin/src/HAL/ESP32/endstop_interrupts.h index 43f4975d4609..137734599295 100644 --- a/Marlin/src/HAL/ESP32/endstop_interrupts.h +++ b/Marlin/src/HAL/ESP32/endstop_interrupts.h @@ -47,7 +47,7 @@ void setup_endstop_interrupts() { TERN_(USE_Y_MAX, _ATTACH(Y_MAX_PIN)); TERN_(USE_Y_MIN, _ATTACH(Y_MIN_PIN)); TERN_(USE_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(USE_Z_MIN, _ATTACH(Z_MIN_PIN)); TERN_(USE_X2_MAX, _ATTACH(X2_MAX_PIN)); TERN_(USE_X2_MIN, _ATTACH(X2_MIN_PIN)); TERN_(USE_Y2_MAX, _ATTACH(Y2_MAX_PIN)); diff --git a/Marlin/src/HAL/LPC1768/endstop_interrupts.h b/Marlin/src/HAL/LPC1768/endstop_interrupts.h index cd9de254777a..7a67b958b441 100644 --- a/Marlin/src/HAL/LPC1768/endstop_interrupts.h +++ b/Marlin/src/HAL/LPC1768/endstop_interrupts.h @@ -74,7 +74,7 @@ void setup_endstop_interrupts() { #endif _ATTACH(Z_MAX_PIN); #endif - #if HAS_Z_MIN_PIN + #if USE_Z_MIN #if !LPC1768_PIN_INTERRUPT_M(Z_MIN_PIN) #error "Z_MIN_PIN is not INTERRUPT-capable. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif diff --git a/Marlin/src/HAL/SAMD21/endstop_interrupts.h b/Marlin/src/HAL/SAMD21/endstop_interrupts.h index 31414a39e317..37fdb7504b58 100644 --- a/Marlin/src/HAL/SAMD21/endstop_interrupts.h +++ b/Marlin/src/HAL/SAMD21/endstop_interrupts.h @@ -54,34 +54,34 @@ #include "../../module/endstops.h" #define MATCH_EILINE(P1,P2) (P1 != P2 && PIN_TO_EILINE(P1) == PIN_TO_EILINE(P2)) -#define MATCH_X_MAX_EILINE(P) TERN0(USE_X_MAX, DEFER4(MATCH_EILINE)(P, X_MAX_PIN)) -#define MATCH_X_MIN_EILINE(P) TERN0(USE_X_MIN, DEFER4(MATCH_EILINE)(P, X_MIN_PIN)) -#define MATCH_Y_MAX_EILINE(P) TERN0(USE_Y_MAX, DEFER4(MATCH_EILINE)(P, Y_MAX_PIN)) -#define MATCH_Y_MIN_EILINE(P) TERN0(USE_Y_MIN, DEFER4(MATCH_EILINE)(P, Y_MIN_PIN)) -#define MATCH_Z_MAX_EILINE(P) TERN0(USE_Z_MAX, DEFER4(MATCH_EILINE)(P, Z_MAX_PIN)) -#define MATCH_Z_MIN_EILINE(P) TERN0(HAS_Z_MIN_PIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PIN)) -#define MATCH_I_MAX_EILINE(P) TERN0(USE_I_MAX, DEFER4(MATCH_EILINE)(P, I_MAX_PIN)) -#define MATCH_I_MIN_EILINE(P) TERN0(USE_I_MIN, DEFER4(MATCH_EILINE)(P, I_MIN_PIN)) -#define MATCH_J_MAX_EILINE(P) TERN0(USE_J_MAX, DEFER4(MATCH_EILINE)(P, J_MAX_PIN)) -#define MATCH_J_MIN_EILINE(P) TERN0(USE_J_MIN, DEFER4(MATCH_EILINE)(P, J_MIN_PIN)) -#define MATCH_K_MAX_EILINE(P) TERN0(USE_K_MAX, DEFER4(MATCH_EILINE)(P, K_MAX_PIN)) -#define MATCH_K_MIN_EILINE(P) TERN0(USE_K_MIN, DEFER4(MATCH_EILINE)(P, K_MIN_PIN)) -#define MATCH_U_MAX_EILINE(P) TERN0(USE_U_MAX, DEFER4(MATCH_EILINE)(P, U_MAX_PIN)) -#define MATCH_U_MIN_EILINE(P) TERN0(USE_U_MIN, DEFER4(MATCH_EILINE)(P, U_MIN_PIN)) -#define MATCH_V_MAX_EILINE(P) TERN0(USE_V_MAX, DEFER4(MATCH_EILINE)(P, V_MAX_PIN)) -#define MATCH_V_MIN_EILINE(P) TERN0(USE_V_MIN, DEFER4(MATCH_EILINE)(P, V_MIN_PIN)) -#define MATCH_W_MAX_EILINE(P) TERN0(USE_W_MAX, DEFER4(MATCH_EILINE)(P, W_MAX_PIN)) -#define MATCH_W_MIN_EILINE(P) TERN0(USE_W_MIN, DEFER4(MATCH_EILINE)(P, W_MIN_PIN)) -#define MATCH_X2_MAX_EILINE(P) TERN0(USE_X2_MAX, DEFER4(MATCH_EILINE)(P, X2_MAX_PIN)) -#define MATCH_X2_MIN_EILINE(P) TERN0(USE_X2_MIN, DEFER4(MATCH_EILINE)(P, X2_MIN_PIN)) -#define MATCH_Y2_MAX_EILINE(P) TERN0(USE_Y2_MAX, DEFER4(MATCH_EILINE)(P, Y2_MAX_PIN)) -#define MATCH_Y2_MIN_EILINE(P) TERN0(USE_Y2_MIN, DEFER4(MATCH_EILINE)(P, Y2_MIN_PIN)) -#define MATCH_Z2_MAX_EILINE(P) TERN0(USE_Z2_MAX, DEFER4(MATCH_EILINE)(P, Z2_MAX_PIN)) -#define MATCH_Z2_MIN_EILINE(P) TERN0(USE_Z2_MIN, DEFER4(MATCH_EILINE)(P, Z2_MIN_PIN)) -#define MATCH_Z3_MAX_EILINE(P) TERN0(USE_Z3_MAX, DEFER4(MATCH_EILINE)(P, Z3_MAX_PIN)) -#define MATCH_Z3_MIN_EILINE(P) TERN0(USE_Z3_MIN, DEFER4(MATCH_EILINE)(P, Z3_MIN_PIN)) -#define MATCH_Z4_MAX_EILINE(P) TERN0(USE_Z4_MAX, DEFER4(MATCH_EILINE)(P, Z4_MAX_PIN)) -#define MATCH_Z4_MIN_EILINE(P) TERN0(USE_Z4_MIN, DEFER4(MATCH_EILINE)(P, Z4_MIN_PIN)) +#define MATCH_X_MAX_EILINE(P) TERN0(USE_X_MAX, DEFER4(MATCH_EILINE)(P, X_MAX_PIN)) +#define MATCH_X_MIN_EILINE(P) TERN0(USE_X_MIN, DEFER4(MATCH_EILINE)(P, X_MIN_PIN)) +#define MATCH_Y_MAX_EILINE(P) TERN0(USE_Y_MAX, DEFER4(MATCH_EILINE)(P, Y_MAX_PIN)) +#define MATCH_Y_MIN_EILINE(P) TERN0(USE_Y_MIN, DEFER4(MATCH_EILINE)(P, Y_MIN_PIN)) +#define MATCH_Z_MAX_EILINE(P) TERN0(USE_Z_MAX, DEFER4(MATCH_EILINE)(P, Z_MAX_PIN)) +#define MATCH_Z_MIN_EILINE(P) TERN0(USE_Z_MIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PIN)) +#define MATCH_I_MAX_EILINE(P) TERN0(USE_I_MAX, DEFER4(MATCH_EILINE)(P, I_MAX_PIN)) +#define MATCH_I_MIN_EILINE(P) TERN0(USE_I_MIN, DEFER4(MATCH_EILINE)(P, I_MIN_PIN)) +#define MATCH_J_MAX_EILINE(P) TERN0(USE_J_MAX, DEFER4(MATCH_EILINE)(P, J_MAX_PIN)) +#define MATCH_J_MIN_EILINE(P) TERN0(USE_J_MIN, DEFER4(MATCH_EILINE)(P, J_MIN_PIN)) +#define MATCH_K_MAX_EILINE(P) TERN0(USE_K_MAX, DEFER4(MATCH_EILINE)(P, K_MAX_PIN)) +#define MATCH_K_MIN_EILINE(P) TERN0(USE_K_MIN, DEFER4(MATCH_EILINE)(P, K_MIN_PIN)) +#define MATCH_U_MAX_EILINE(P) TERN0(USE_U_MAX, DEFER4(MATCH_EILINE)(P, U_MAX_PIN)) +#define MATCH_U_MIN_EILINE(P) TERN0(USE_U_MIN, DEFER4(MATCH_EILINE)(P, U_MIN_PIN)) +#define MATCH_V_MAX_EILINE(P) TERN0(USE_V_MAX, DEFER4(MATCH_EILINE)(P, V_MAX_PIN)) +#define MATCH_V_MIN_EILINE(P) TERN0(USE_V_MIN, DEFER4(MATCH_EILINE)(P, V_MIN_PIN)) +#define MATCH_W_MAX_EILINE(P) TERN0(USE_W_MAX, DEFER4(MATCH_EILINE)(P, W_MAX_PIN)) +#define MATCH_W_MIN_EILINE(P) TERN0(USE_W_MIN, DEFER4(MATCH_EILINE)(P, W_MIN_PIN)) +#define MATCH_X2_MAX_EILINE(P) TERN0(USE_X2_MAX, DEFER4(MATCH_EILINE)(P, X2_MAX_PIN)) +#define MATCH_X2_MIN_EILINE(P) TERN0(USE_X2_MIN, DEFER4(MATCH_EILINE)(P, X2_MIN_PIN)) +#define MATCH_Y2_MAX_EILINE(P) TERN0(USE_Y2_MAX, DEFER4(MATCH_EILINE)(P, Y2_MAX_PIN)) +#define MATCH_Y2_MIN_EILINE(P) TERN0(USE_Y2_MIN, DEFER4(MATCH_EILINE)(P, Y2_MIN_PIN)) +#define MATCH_Z2_MAX_EILINE(P) TERN0(USE_Z2_MAX, DEFER4(MATCH_EILINE)(P, Z2_MAX_PIN)) +#define MATCH_Z2_MIN_EILINE(P) TERN0(USE_Z2_MIN, DEFER4(MATCH_EILINE)(P, Z2_MIN_PIN)) +#define MATCH_Z3_MAX_EILINE(P) TERN0(USE_Z3_MAX, DEFER4(MATCH_EILINE)(P, Z3_MAX_PIN)) +#define MATCH_Z3_MIN_EILINE(P) TERN0(USE_Z3_MIN, DEFER4(MATCH_EILINE)(P, Z3_MIN_PIN)) +#define MATCH_Z4_MAX_EILINE(P) TERN0(USE_Z4_MAX, DEFER4(MATCH_EILINE)(P, Z4_MAX_PIN)) +#define MATCH_Z4_MIN_EILINE(P) TERN0(USE_Z4_MIN, DEFER4(MATCH_EILINE)(P, Z4_MIN_PIN)) #define MATCH_Z_MIN_PROBE_EILINE(P) TERN0(USE_Z_MIN_PROBE, DEFER4(MATCH_EILINE)(P, Z_MIN_PROBE_PIN)) #define AVAILABLE_EILINE(P) ( PIN_TO_EILINE(P) != -1 \ @@ -136,7 +136,7 @@ void setup_endstop_interrupts() { #endif _ATTACH(Z_MAX_PIN); #endif - #if HAS_Z_MIN_PIN + #if USE_Z_MIN #if !AVAILABLE_EILINE(Z_MIN_PIN) #error "Z_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif diff --git a/Marlin/src/HAL/SAMD51/endstop_interrupts.h b/Marlin/src/HAL/SAMD51/endstop_interrupts.h index 40f78baf878f..84b6c46da985 100644 --- a/Marlin/src/HAL/SAMD51/endstop_interrupts.h +++ b/Marlin/src/HAL/SAMD51/endstop_interrupts.h @@ -53,34 +53,34 @@ #include "../../module/endstops.h" #define MATCH_EILINE(P1,P2) (P1 != P2 && PIN_TO_EILINE(P1) == PIN_TO_EILINE(P2)) -#define MATCH_X_MAX_EILINE(P) TERN0(USE_X_MAX, DEFER4(MATCH_EILINE)(P, X_MAX_PIN)) -#define MATCH_X_MIN_EILINE(P) TERN0(USE_X_MIN, DEFER4(MATCH_EILINE)(P, X_MIN_PIN)) -#define MATCH_Y_MAX_EILINE(P) TERN0(USE_Y_MAX, DEFER4(MATCH_EILINE)(P, Y_MAX_PIN)) -#define MATCH_Y_MIN_EILINE(P) TERN0(USE_Y_MIN, DEFER4(MATCH_EILINE)(P, Y_MIN_PIN)) -#define MATCH_Z_MAX_EILINE(P) TERN0(USE_Z_MAX, DEFER4(MATCH_EILINE)(P, Z_MAX_PIN)) -#define MATCH_Z_MIN_EILINE(P) TERN0(HAS_Z_MIN_PIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PIN)) -#define MATCH_I_MAX_EILINE(P) TERN0(USE_I_MAX, DEFER4(MATCH_EILINE)(P, I_MAX_PIN)) -#define MATCH_I_MIN_EILINE(P) TERN0(USE_I_MIN, DEFER4(MATCH_EILINE)(P, I_MIN_PIN)) -#define MATCH_J_MAX_EILINE(P) TERN0(USE_J_MAX, DEFER4(MATCH_EILINE)(P, J_MAX_PIN)) -#define MATCH_J_MIN_EILINE(P) TERN0(USE_J_MIN, DEFER4(MATCH_EILINE)(P, J_MIN_PIN)) -#define MATCH_K_MAX_EILINE(P) TERN0(USE_K_MAX, DEFER4(MATCH_EILINE)(P, K_MAX_PIN)) -#define MATCH_K_MIN_EILINE(P) TERN0(USE_K_MIN, DEFER4(MATCH_EILINE)(P, K_MIN_PIN)) -#define MATCH_U_MAX_EILINE(P) TERN0(USE_U_MAX, DEFER4(MATCH_EILINE)(P, U_MAX_PIN)) -#define MATCH_U_MIN_EILINE(P) TERN0(USE_U_MIN, DEFER4(MATCH_EILINE)(P, U_MIN_PIN)) -#define MATCH_V_MAX_EILINE(P) TERN0(USE_V_MAX, DEFER4(MATCH_EILINE)(P, V_MAX_PIN)) -#define MATCH_V_MIN_EILINE(P) TERN0(USE_V_MIN, DEFER4(MATCH_EILINE)(P, V_MIN_PIN)) -#define MATCH_W_MAX_EILINE(P) TERN0(USE_W_MAX, DEFER4(MATCH_EILINE)(P, W_MAX_PIN)) -#define MATCH_W_MIN_EILINE(P) TERN0(USE_W_MIN, DEFER4(MATCH_EILINE)(P, W_MIN_PIN)) -#define MATCH_X2_MAX_EILINE(P) TERN0(USE_X2_MAX, DEFER4(MATCH_EILINE)(P, X2_MAX_PIN)) -#define MATCH_X2_MIN_EILINE(P) TERN0(USE_X2_MIN, DEFER4(MATCH_EILINE)(P, X2_MIN_PIN)) -#define MATCH_Y2_MAX_EILINE(P) TERN0(USE_Y2_MAX, DEFER4(MATCH_EILINE)(P, Y2_MAX_PIN)) -#define MATCH_Y2_MIN_EILINE(P) TERN0(USE_Y2_MIN, DEFER4(MATCH_EILINE)(P, Y2_MIN_PIN)) -#define MATCH_Z2_MAX_EILINE(P) TERN0(USE_Z2_MAX, DEFER4(MATCH_EILINE)(P, Z2_MAX_PIN)) -#define MATCH_Z2_MIN_EILINE(P) TERN0(USE_Z2_MIN, DEFER4(MATCH_EILINE)(P, Z2_MIN_PIN)) -#define MATCH_Z3_MAX_EILINE(P) TERN0(USE_Z3_MAX, DEFER4(MATCH_EILINE)(P, Z3_MAX_PIN)) -#define MATCH_Z3_MIN_EILINE(P) TERN0(USE_Z3_MIN, DEFER4(MATCH_EILINE)(P, Z3_MIN_PIN)) -#define MATCH_Z4_MAX_EILINE(P) TERN0(USE_Z4_MAX, DEFER4(MATCH_EILINE)(P, Z4_MAX_PIN)) -#define MATCH_Z4_MIN_EILINE(P) TERN0(USE_Z4_MIN, DEFER4(MATCH_EILINE)(P, Z4_MIN_PIN)) +#define MATCH_X_MAX_EILINE(P) TERN0(USE_X_MAX, DEFER4(MATCH_EILINE)(P, X_MAX_PIN)) +#define MATCH_X_MIN_EILINE(P) TERN0(USE_X_MIN, DEFER4(MATCH_EILINE)(P, X_MIN_PIN)) +#define MATCH_Y_MAX_EILINE(P) TERN0(USE_Y_MAX, DEFER4(MATCH_EILINE)(P, Y_MAX_PIN)) +#define MATCH_Y_MIN_EILINE(P) TERN0(USE_Y_MIN, DEFER4(MATCH_EILINE)(P, Y_MIN_PIN)) +#define MATCH_Z_MAX_EILINE(P) TERN0(USE_Z_MAX, DEFER4(MATCH_EILINE)(P, Z_MAX_PIN)) +#define MATCH_Z_MIN_EILINE(P) TERN0(USE_Z_MIN, DEFER4(MATCH_EILINE)(P, Z_MIN_PIN)) +#define MATCH_I_MAX_EILINE(P) TERN0(USE_I_MAX, DEFER4(MATCH_EILINE)(P, I_MAX_PIN)) +#define MATCH_I_MIN_EILINE(P) TERN0(USE_I_MIN, DEFER4(MATCH_EILINE)(P, I_MIN_PIN)) +#define MATCH_J_MAX_EILINE(P) TERN0(USE_J_MAX, DEFER4(MATCH_EILINE)(P, J_MAX_PIN)) +#define MATCH_J_MIN_EILINE(P) TERN0(USE_J_MIN, DEFER4(MATCH_EILINE)(P, J_MIN_PIN)) +#define MATCH_K_MAX_EILINE(P) TERN0(USE_K_MAX, DEFER4(MATCH_EILINE)(P, K_MAX_PIN)) +#define MATCH_K_MIN_EILINE(P) TERN0(USE_K_MIN, DEFER4(MATCH_EILINE)(P, K_MIN_PIN)) +#define MATCH_U_MAX_EILINE(P) TERN0(USE_U_MAX, DEFER4(MATCH_EILINE)(P, U_MAX_PIN)) +#define MATCH_U_MIN_EILINE(P) TERN0(USE_U_MIN, DEFER4(MATCH_EILINE)(P, U_MIN_PIN)) +#define MATCH_V_MAX_EILINE(P) TERN0(USE_V_MAX, DEFER4(MATCH_EILINE)(P, V_MAX_PIN)) +#define MATCH_V_MIN_EILINE(P) TERN0(USE_V_MIN, DEFER4(MATCH_EILINE)(P, V_MIN_PIN)) +#define MATCH_W_MAX_EILINE(P) TERN0(USE_W_MAX, DEFER4(MATCH_EILINE)(P, W_MAX_PIN)) +#define MATCH_W_MIN_EILINE(P) TERN0(USE_W_MIN, DEFER4(MATCH_EILINE)(P, W_MIN_PIN)) +#define MATCH_X2_MAX_EILINE(P) TERN0(USE_X2_MAX, DEFER4(MATCH_EILINE)(P, X2_MAX_PIN)) +#define MATCH_X2_MIN_EILINE(P) TERN0(USE_X2_MIN, DEFER4(MATCH_EILINE)(P, X2_MIN_PIN)) +#define MATCH_Y2_MAX_EILINE(P) TERN0(USE_Y2_MAX, DEFER4(MATCH_EILINE)(P, Y2_MAX_PIN)) +#define MATCH_Y2_MIN_EILINE(P) TERN0(USE_Y2_MIN, DEFER4(MATCH_EILINE)(P, Y2_MIN_PIN)) +#define MATCH_Z2_MAX_EILINE(P) TERN0(USE_Z2_MAX, DEFER4(MATCH_EILINE)(P, Z2_MAX_PIN)) +#define MATCH_Z2_MIN_EILINE(P) TERN0(USE_Z2_MIN, DEFER4(MATCH_EILINE)(P, Z2_MIN_PIN)) +#define MATCH_Z3_MAX_EILINE(P) TERN0(USE_Z3_MAX, DEFER4(MATCH_EILINE)(P, Z3_MAX_PIN)) +#define MATCH_Z3_MIN_EILINE(P) TERN0(USE_Z3_MIN, DEFER4(MATCH_EILINE)(P, Z3_MIN_PIN)) +#define MATCH_Z4_MAX_EILINE(P) TERN0(USE_Z4_MAX, DEFER4(MATCH_EILINE)(P, Z4_MAX_PIN)) +#define MATCH_Z4_MIN_EILINE(P) TERN0(USE_Z4_MIN, DEFER4(MATCH_EILINE)(P, Z4_MIN_PIN)) #define MATCH_Z_MIN_PROBE_EILINE(P) TERN0(USE_Z_MIN_PROBE, DEFER4(MATCH_EILINE)(P, Z_MIN_PROBE_PIN)) #define AVAILABLE_EILINE(P) ( PIN_TO_EILINE(P) != -1 \ @@ -135,7 +135,7 @@ void setup_endstop_interrupts() { #endif _ATTACH(Z_MAX_PIN); #endif - #if HAS_Z_MIN_PIN + #if USE_Z_MIN #if !AVAILABLE_EILINE(Z_MIN_PIN) #error "Z_MIN_PIN has no EXTINT line available. Disable ENDSTOP_INTERRUPTS_FEATURE to continue." #endif diff --git a/Marlin/src/HAL/STM32/endstop_interrupts.h b/Marlin/src/HAL/STM32/endstop_interrupts.h index 5ae228d3f869..0c92053d4219 100644 --- a/Marlin/src/HAL/STM32/endstop_interrupts.h +++ b/Marlin/src/HAL/STM32/endstop_interrupts.h @@ -34,7 +34,7 @@ void setup_endstop_interrupts() { TERN_(USE_Y_MAX, _ATTACH(Y_MAX_PIN)); TERN_(USE_Y_MIN, _ATTACH(Y_MIN_PIN)); TERN_(USE_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(USE_Z_MIN, _ATTACH(Z_MIN_PIN)); TERN_(USE_X2_MAX, _ATTACH(X2_MAX_PIN)); TERN_(USE_X2_MIN, _ATTACH(X2_MIN_PIN)); TERN_(USE_Y2_MAX, _ATTACH(Y2_MAX_PIN)); diff --git a/Marlin/src/HAL/STM32F1/endstop_interrupts.h b/Marlin/src/HAL/STM32F1/endstop_interrupts.h index 6febcec5d0f2..6ed920183bb8 100644 --- a/Marlin/src/HAL/STM32F1/endstop_interrupts.h +++ b/Marlin/src/HAL/STM32F1/endstop_interrupts.h @@ -59,7 +59,7 @@ void setup_endstop_interrupts() { TERN_(USE_Y_MAX, _ATTACH(Y_MAX_PIN)); TERN_(USE_Y_MIN, _ATTACH(Y_MIN_PIN)); TERN_(USE_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(USE_Z_MIN, _ATTACH(Z_MIN_PIN)); TERN_(USE_X2_MAX, _ATTACH(X2_MAX_PIN)); TERN_(USE_X2_MIN, _ATTACH(X2_MIN_PIN)); TERN_(USE_Y2_MAX, _ATTACH(Y2_MAX_PIN)); diff --git a/Marlin/src/HAL/TEENSY31_32/endstop_interrupts.h b/Marlin/src/HAL/TEENSY31_32/endstop_interrupts.h index 28510fb508d6..954eb625a575 100644 --- a/Marlin/src/HAL/TEENSY31_32/endstop_interrupts.h +++ b/Marlin/src/HAL/TEENSY31_32/endstop_interrupts.h @@ -52,7 +52,7 @@ void setup_endstop_interrupts() { TERN_(USE_Y_MAX, _ATTACH(Y_MAX_PIN)); TERN_(USE_Y_MIN, _ATTACH(Y_MIN_PIN)); TERN_(USE_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(USE_Z_MIN, _ATTACH(Z_MIN_PIN)); TERN_(USE_X2_MAX, _ATTACH(X2_MAX_PIN)); TERN_(USE_X2_MIN, _ATTACH(X2_MIN_PIN)); TERN_(USE_Y2_MAX, _ATTACH(Y2_MAX_PIN)); diff --git a/Marlin/src/HAL/TEENSY35_36/endstop_interrupts.h b/Marlin/src/HAL/TEENSY35_36/endstop_interrupts.h index 505434cd8966..bc8e177fb7dc 100644 --- a/Marlin/src/HAL/TEENSY35_36/endstop_interrupts.h +++ b/Marlin/src/HAL/TEENSY35_36/endstop_interrupts.h @@ -51,7 +51,7 @@ void setup_endstop_interrupts() { TERN_(USE_Y_MAX, _ATTACH(Y_MAX_PIN)); TERN_(USE_Y_MIN, _ATTACH(Y_MIN_PIN)); TERN_(USE_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(USE_Z_MIN, _ATTACH(Z_MIN_PIN)); TERN_(USE_X2_MAX, _ATTACH(X2_MAX_PIN)); TERN_(USE_X2_MIN, _ATTACH(X2_MIN_PIN)); TERN_(USE_Y2_MAX, _ATTACH(Y2_MAX_PIN)); diff --git a/Marlin/src/HAL/TEENSY40_41/endstop_interrupts.h b/Marlin/src/HAL/TEENSY40_41/endstop_interrupts.h index 325d97daeb71..722912c89056 100644 --- a/Marlin/src/HAL/TEENSY40_41/endstop_interrupts.h +++ b/Marlin/src/HAL/TEENSY40_41/endstop_interrupts.h @@ -51,7 +51,7 @@ void setup_endstop_interrupts() { TERN_(USE_Y_MAX, _ATTACH(Y_MAX_PIN)); TERN_(USE_Y_MIN, _ATTACH(Y_MIN_PIN)); TERN_(USE_Z_MAX, _ATTACH(Z_MAX_PIN)); - TERN_(HAS_Z_MIN_PIN, _ATTACH(Z_MIN_PIN)); + TERN_(USE_Z_MIN, _ATTACH(Z_MIN_PIN)); TERN_(USE_X2_MAX, _ATTACH(X2_MAX_PIN)); TERN_(USE_X2_MIN, _ATTACH(X2_MIN_PIN)); TERN_(USE_Y2_MAX, _ATTACH(Y2_MAX_PIN)); diff --git a/Marlin/src/gcode/calibrate/G28.cpp b/Marlin/src/gcode/calibrate/G28.cpp index b364c0382c09..fd034f0ba6a4 100644 --- a/Marlin/src/gcode/calibrate/G28.cpp +++ b/Marlin/src/gcode/calibrate/G28.cpp @@ -254,69 +254,67 @@ void GcodeSuite::G28() { // Reset to the XY plane TERN_(CNC_WORKSPACE_PLANES, workspace_plane = PLANE_XY); - #define HAS_CURRENT_HOME(N) (defined(N##_CURRENT_HOME) && N##_CURRENT_HOME != N##_CURRENT) - #if HAS_CURRENT_HOME(X) || HAS_CURRENT_HOME(X2) || HAS_CURRENT_HOME(Y) || HAS_CURRENT_HOME(Y2) || (ENABLED(DELTA) && HAS_CURRENT_HOME(Z)) || HAS_CURRENT_HOME(I) || HAS_CURRENT_HOME(J) || HAS_CURRENT_HOME(K) || HAS_CURRENT_HOME(U) || HAS_CURRENT_HOME(V) || HAS_CURRENT_HOME(W) + #define _OR_HAS_CURR_HOME(N) HAS_CURRENT_HOME(N) || + #if MAIN_AXIS_MAP(_OR_HAS_CURR_HOME) MAP(_OR_HAS_CURR_HOME, X2, Y2, Z2, Z3, Z4) 0 #define HAS_HOMING_CURRENT 1 #endif #if HAS_HOMING_CURRENT - auto debug_current = [](FSTR_P const s, const int16_t a, const int16_t b) { - DEBUG_ECHOLN(s, F(" current: "), a, F(" -> "), b); - }; + + #if ENABLED(DEBUG_LEVELING_FEATURE) + auto debug_current = [](FSTR_P const s, const int16_t a, const int16_t b) { + if (DEBUGGING(LEVELING)) { DEBUG_ECHOF(s); DEBUG_ECHOLNPGM(" current: ", a, " -> ", b); } + }; + #else + #define debug_current(...) + #endif + + #define _SAVE_SET_CURRENT(A) \ + const int16_t saved_current_##A = stepper##A.getMilliamps(); \ + stepper##A.rms_current(A##_CURRENT_HOME); \ + debug_current(F(STR_##A), saved_current_##A, A##_CURRENT_HOME) + #if HAS_CURRENT_HOME(X) - const int16_t tmc_save_current_X = stepperX.getMilliamps(); - stepperX.rms_current(X_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_X), tmc_save_current_X, X_CURRENT_HOME); + _SAVE_SET_CURRENT(X); #endif #if HAS_CURRENT_HOME(X2) - const int16_t tmc_save_current_X2 = stepperX2.getMilliamps(); - stepperX2.rms_current(X2_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_X2), tmc_save_current_X2, X2_CURRENT_HOME); + _SAVE_SET_CURRENT(X2); #endif #if HAS_CURRENT_HOME(Y) - const int16_t tmc_save_current_Y = stepperY.getMilliamps(); - stepperY.rms_current(Y_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_Y), tmc_save_current_Y, Y_CURRENT_HOME); + _SAVE_SET_CURRENT(Y); #endif #if HAS_CURRENT_HOME(Y2) - const int16_t tmc_save_current_Y2 = stepperY2.getMilliamps(); - stepperY2.rms_current(Y2_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_Y2), tmc_save_current_Y2, Y2_CURRENT_HOME); + _SAVE_SET_CURRENT(Y2); + #endif + #if HAS_CURRENT_HOME(Z) + _SAVE_SET_CURRENT(Z); #endif - #if HAS_CURRENT_HOME(Z) && ENABLED(DELTA) - const int16_t tmc_save_current_Z = stepperZ.getMilliamps(); - stepperZ.rms_current(Z_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_Z), tmc_save_current_Z, Z_CURRENT_HOME); + #if HAS_CURRENT_HOME(Z2) + _SAVE_SET_CURRENT(Z2); + #endif + #if HAS_CURRENT_HOME(Z3) + _SAVE_SET_CURRENT(Z3); + #endif + #if HAS_CURRENT_HOME(Z4) + _SAVE_SET_CURRENT(Z4); #endif #if HAS_CURRENT_HOME(I) - const int16_t tmc_save_current_I = stepperI.getMilliamps(); - stepperI.rms_current(I_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_I), tmc_save_current_I, I_CURRENT_HOME); + _SAVE_SET_CURRENT(I); #endif #if HAS_CURRENT_HOME(J) - const int16_t tmc_save_current_J = stepperJ.getMilliamps(); - stepperJ.rms_current(J_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_J), tmc_save_current_J, J_CURRENT_HOME); + _SAVE_SET_CURRENT(J); #endif #if HAS_CURRENT_HOME(K) - const int16_t tmc_save_current_K = stepperK.getMilliamps(); - stepperK.rms_current(K_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_K), tmc_save_current_K, K_CURRENT_HOME); + _SAVE_SET_CURRENT(K); #endif #if HAS_CURRENT_HOME(U) - const int16_t tmc_save_current_U = stepperU.getMilliamps(); - stepperU.rms_current(U_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_U), tmc_save_current_U, U_CURRENT_HOME); + _SAVE_SET_CURRENT(U); #endif #if HAS_CURRENT_HOME(V) - const int16_t tmc_save_current_V = stepperV.getMilliamps(); - stepperV.rms_current(V_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_V), tmc_save_current_V, V_CURRENT_HOME); + _SAVE_SET_CURRENT(V); #endif #if HAS_CURRENT_HOME(W) - const int16_t tmc_save_current_W = stepperW.getMilliamps(); - stepperW.rms_current(W_CURRENT_HOME); - if (DEBUGGING(LEVELING)) debug_current(F(STR_W), tmc_save_current_W, W_CURRENT_HOME); + _SAVE_SET_CURRENT(W); #endif #if SENSORLESS_STALLGUARD_DELAY safe_delay(SENSORLESS_STALLGUARD_DELAY); // Short delay needed to settle @@ -577,37 +575,46 @@ void GcodeSuite::G28() { #if HAS_HOMING_CURRENT if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Restore driver current..."); #if HAS_CURRENT_HOME(X) - stepperX.rms_current(tmc_save_current_X); + stepperX.rms_current(saved_current_X); #endif #if HAS_CURRENT_HOME(X2) - stepperX2.rms_current(tmc_save_current_X2); + stepperX2.rms_current(saved_current_X2); #endif #if HAS_CURRENT_HOME(Y) - stepperY.rms_current(tmc_save_current_Y); + stepperY.rms_current(saved_current_Y); #endif #if HAS_CURRENT_HOME(Y2) - stepperY2.rms_current(tmc_save_current_Y2); + stepperY2.rms_current(saved_current_Y2); + #endif + #if HAS_CURRENT_HOME(Z) + stepperZ.rms_current(saved_current_Z); + #endif + #if HAS_CURRENT_HOME(Z2) + stepperZ2.rms_current(saved_current_Z2); + #endif + #if HAS_CURRENT_HOME(Z3) + stepperZ3.rms_current(saved_current_Z3); #endif - #if HAS_CURRENT_HOME(Z) && ENABLED(DELTA) - stepperZ.rms_current(tmc_save_current_Z); + #if HAS_CURRENT_HOME(Z4) + stepperZ4.rms_current(saved_current_Z4); #endif #if HAS_CURRENT_HOME(I) - stepperI.rms_current(tmc_save_current_I); + stepperI.rms_current(saved_current_I); #endif #if HAS_CURRENT_HOME(J) - stepperJ.rms_current(tmc_save_current_J); + stepperJ.rms_current(saved_current_J); #endif #if HAS_CURRENT_HOME(K) - stepperK.rms_current(tmc_save_current_K); + stepperK.rms_current(saved_current_K); #endif #if HAS_CURRENT_HOME(U) - stepperU.rms_current(tmc_save_current_U); + stepperU.rms_current(saved_current_U); #endif #if HAS_CURRENT_HOME(V) - stepperV.rms_current(tmc_save_current_V); + stepperV.rms_current(saved_current_V); #endif #if HAS_CURRENT_HOME(W) - stepperW.rms_current(tmc_save_current_W); + stepperW.rms_current(saved_current_W); #endif #if SENSORLESS_STALLGUARD_DELAY safe_delay(SENSORLESS_STALLGUARD_DELAY); // Short delay needed to settle diff --git a/Marlin/src/gcode/calibrate/G33.cpp b/Marlin/src/gcode/calibrate/G33.cpp index 7530737dde75..10f5afca2db4 100644 --- a/Marlin/src/gcode/calibrate/G33.cpp +++ b/Marlin/src/gcode/calibrate/G33.cpp @@ -67,9 +67,9 @@ float lcd_probe_pt(const xy_pos_t &xy); void ac_home() { endstops.enable(true); - TERN_(SENSORLESS_HOMING, endstops.set_homing_current(true)); + TERN_(SENSORLESS_HOMING, endstops.set_z_sensorless_current(true)); home_delta(); - TERN_(SENSORLESS_HOMING, endstops.set_homing_current(false)); + TERN_(SENSORLESS_HOMING, endstops.set_z_sensorless_current(false)); endstops.not_homing(); } diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 084a3d74e91a..b069e2d2b173 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -1422,24 +1422,26 @@ * Conditionals based on the type of Bed Probe */ #if HAS_BED_PROBE - #if DISABLED(NOZZLE_AS_PROBE) - #define HAS_PROBE_XY_OFFSET 1 - #endif #if ALL(DELTA, SENSORLESS_PROBING) #define HAS_DELTA_SENSORLESS_PROBING 1 + #else + #define HAS_REAL_BED_PROBE 1 #endif - #if NONE(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, HAS_DELTA_SENSORLESS_PROBING) - #define USE_Z_MIN_PROBE 1 + #if HAS_REAL_BED_PROBE && NONE(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, Z_SPI_SENSORLESS) + #define NEED_Z_MIN_PROBE_PIN 1 #endif - #if Z_HOME_TO_MIN && (DISABLED(USE_Z_MIN_PROBE) || ENABLED(USE_PROBE_FOR_Z_HOMING)) + #if Z_HOME_TO_MIN && (!NEED_Z_MIN_PROBE_PIN || ENABLED(USE_PROBE_FOR_Z_HOMING)) #define HOMING_Z_WITH_PROBE 1 #endif - #ifndef Z_PROBE_LOW_POINT - #define Z_PROBE_LOW_POINT -5 + #if DISABLED(NOZZLE_AS_PROBE) + #define HAS_PROBE_XY_OFFSET 1 #endif #if ANY(Z_PROBE_ALLEN_KEY, MAG_MOUNTED_PROBE) #define PROBE_TRIGGERED_WHEN_STOWED_TEST 1 // Extra test for Allen Key Probe #endif + #ifndef Z_PROBE_LOW_POINT + #define Z_PROBE_LOW_POINT -5 + #endif #if MULTIPLE_PROBING > 1 #if EXTRA_PROBING > 0 #define TOTAL_PROBING (MULTIPLE_PROBING + EXTRA_PROBING) diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 442fcfbafdb8..13f20114e509 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -1424,13 +1424,13 @@ #if AXIS_IS_TMC(X) #if defined(X_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(X) #define X_SENSORLESS 1 + #if ENABLED(SPI_ENDSTOPS) && AXIS_HAS_SPI(X) + #define X_SPI_SENSORLESS 1 + #endif #endif #if AXIS_HAS_STEALTHCHOP(X) #define X_HAS_STEALTHCHOP 1 #endif - #if ENABLED(SPI_ENDSTOPS) - #define X_SPI_SENSORLESS X_SENSORLESS - #endif #ifndef X_INTERPOLATE #define X_INTERPOLATE INTERPOLATE #endif @@ -1462,13 +1462,13 @@ #if AXIS_IS_TMC(Y) #if defined(Y_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(Y) #define Y_SENSORLESS 1 + #if ENABLED(SPI_ENDSTOPS) && AXIS_HAS_SPI(Y) + #define Y_SPI_SENSORLESS 1 + #endif #endif #if AXIS_HAS_STEALTHCHOP(Y) #define Y_HAS_STEALTHCHOP 1 #endif - #if ENABLED(SPI_ENDSTOPS) - #define Y_SPI_SENSORLESS Y_SENSORLESS - #endif #ifndef Y_INTERPOLATE #define Y_INTERPOLATE INTERPOLATE #endif @@ -1500,13 +1500,13 @@ #if AXIS_IS_TMC(Z) #if defined(Z_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(Z) #define Z_SENSORLESS 1 + #if ENABLED(SPI_ENDSTOPS) && AXIS_HAS_SPI(Z) + #define Z_SPI_SENSORLESS 1 + #endif #endif #if AXIS_HAS_STEALTHCHOP(Z) #define Z_HAS_STEALTHCHOP 1 #endif - #if ENABLED(SPI_ENDSTOPS) - #define Z_SPI_SENSORLESS Z_SENSORLESS - #endif #ifndef Z_INTERPOLATE #define Z_INTERPOLATE INTERPOLATE #endif @@ -1572,13 +1572,13 @@ #if AXIS_IS_TMC(I) #if defined(I_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(I) #define I_SENSORLESS 1 + #if ENABLED(SPI_ENDSTOPS) && AXIS_HAS_SPI(I) + #define I_SPI_SENSORLESS 1 + #endif #endif #if AXIS_HAS_STEALTHCHOP(I) #define I_HAS_STEALTHCHOP 1 #endif - #if ENABLED(SPI_ENDSTOPS) - #define I_SPI_SENSORLESS I_SENSORLESS - #endif #ifndef I_INTERPOLATE #define I_INTERPOLATE INTERPOLATE #endif @@ -1593,13 +1593,13 @@ #if AXIS_IS_TMC(J) #if defined(J_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(J) #define J_SENSORLESS 1 + #if ENABLED(SPI_ENDSTOPS) && AXIS_HAS_SPI(J) + #define J_SPI_SENSORLESS 1 + #endif #endif #if AXIS_HAS_STEALTHCHOP(J) #define J_HAS_STEALTHCHOP 1 #endif - #if ENABLED(SPI_ENDSTOPS) - #define J_SPI_SENSORLESS J_SENSORLESS - #endif #ifndef J_INTERPOLATE #define J_INTERPOLATE INTERPOLATE #endif @@ -1614,13 +1614,13 @@ #if AXIS_IS_TMC(K) #if defined(K_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(K) #define K_SENSORLESS 1 + #if ENABLED(SPI_ENDSTOPS) && AXIS_HAS_SPI(K) + #define K_SPI_SENSORLESS 1 + #endif #endif #if AXIS_HAS_STEALTHCHOP(K) #define K_HAS_STEALTHCHOP 1 #endif - #if ENABLED(SPI_ENDSTOPS) - #define K_SPI_SENSORLESS K_SENSORLESS - #endif #ifndef K_INTERPOLATE #define K_INTERPOLATE INTERPOLATE #endif @@ -1635,13 +1635,13 @@ #if AXIS_IS_TMC(U) #if defined(U_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(U) #define U_SENSORLESS 1 + #if ENABLED(SPI_ENDSTOPS) && AXIS_HAS_SPI(U) + #define U_SPI_SENSORLESS 1 + #endif #endif #if AXIS_HAS_STEALTHCHOP(U) #define U_HAS_STEALTHCHOP 1 #endif - #if ENABLED(SPI_ENDSTOPS) - #define U_SPI_SENSORLESS U_SENSORLESS - #endif #ifndef U_INTERPOLATE #define U_INTERPOLATE INTERPOLATE #endif @@ -1656,13 +1656,13 @@ #if AXIS_IS_TMC(V) #if defined(V_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(V) #define V_SENSORLESS 1 + #if ENABLED(SPI_ENDSTOPS) && AXIS_HAS_SPI(V) + #define V_SPI_SENSORLESS 1 + #endif #endif #if AXIS_HAS_STEALTHCHOP(V) #define V_HAS_STEALTHCHOP 1 #endif - #if ENABLED(SPI_ENDSTOPS) - #define V_SPI_SENSORLESS V_SENSORLESS - #endif #ifndef V_INTERPOLATE #define V_INTERPOLATE INTERPOLATE #endif @@ -1677,13 +1677,13 @@ #if AXIS_IS_TMC(W) #if defined(W_STALL_SENSITIVITY) && AXIS_HAS_STALLGUARD(W) #define W_SENSORLESS 1 + #if ENABLED(SPI_ENDSTOPS) && AXIS_HAS_SPI(W) + #define W_SPI_SENSORLESS 1 + #endif #endif #if AXIS_HAS_STEALTHCHOP(W) #define W_HAS_STEALTHCHOP 1 #endif - #if ENABLED(SPI_ENDSTOPS) - #define W_SPI_SENSORLESS W_SENSORLESS - #endif #ifndef W_INTERPOLATE #define W_INTERPOLATE INTERPOLATE #endif @@ -1948,11 +1948,18 @@ #endif #endif -// -// Endstops and bed probe -// - -#define _USE_STOP(A,N,M,C) ((A##_HOME_TO_##M || (C+0)) && PIN_EXISTS(A##N##_##M)) +/** + * Endstop and probe flags + * - Set USE_(AXIS)_(MIN|MAX) flags for each used endstop that has a pin, including those for DIAG0 state. + * - Note: Dual X Carriage uses "X" and "X2" steppers, but X_MIN and X_MAX endstop states (i.e., not X2_MAX). + * - Set a HAS_(AXIS)_(MIN|MAX)_STATE flag for each endstop that has a state, including SPI Sensorless which don't use a pin. + * - Set a HAS_(AXIS)_STATE flag for each axis that has at least one state. + * - Consider (AXIS)_SAFETY_STOP for the case where the axis has a second endstop. + * Currently this must be distinct, but we can add a mechanism to use the same pin for sensorless + * or switches wired to the same pin, or for the single SPI stall state on the axis. + */ +#define _USE_STOP(A,N,M,C) ((ANY(A##_HOME_TO_##M, A##N##_SAFETY_STOP) || (C+0)) && PIN_EXISTS(A##N##_##M) && !A##_SPI_SENSORLESS) +#define _HAS_STATE(A,N,M) (USE_##A##N##_##M || (ANY(A##_HOME_TO_##M, A##N##_SAFETY_STOP) && A##_SPI_SENSORLESS)) #if _USE_STOP(X,,MIN,) #define USE_X_MIN 1 @@ -1960,139 +1967,239 @@ #if _USE_STOP(X,,MAX,ENABLED(DUAL_X_CARRIAGE)) #define USE_X_MAX 1 #endif -#if USE_X_MIN || USE_X_MAX - #define HAS_X_ENDSTOP 1 +#if _HAS_STATE(X,,MIN) + #define HAS_X_MIN_STATE 1 +#endif +#if _HAS_STATE(X,,MAX) + #define HAS_X_MAX_STATE 1 +#endif +#if HAS_X_MIN_STATE || HAS_X_MAX_STATE + #define HAS_X_STATE 1 #endif #if _USE_STOP(Y,,MIN,) #define USE_Y_MIN 1 -#elif _USE_STOP(Y,,MAX,) +#endif +#if _USE_STOP(Y,,MAX,) #define USE_Y_MAX 1 #endif -#if USE_Y_MIN || USE_Y_MAX - #define HAS_Y_ENDSTOP 1 +#if _HAS_STATE(Y,,MIN) + #define HAS_Y_MIN_STATE 1 +#endif +#if _HAS_STATE(Y,,MAX) + #define HAS_Y_MAX_STATE 1 +#endif +#if HAS_Y_MIN_STATE || HAS_Y_MAX_STATE + #define HAS_Y_STATE 1 #endif -#if _USE_STOP(Z,,MIN,ANY(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, HAS_DELTA_SENSORLESS_PROBING)) +#if _USE_STOP(Z,,MIN,ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN)) #define USE_Z_MIN 1 - #if !HAS_DELTA_SENSORLESS_PROBING - #define HAS_Z_MIN_PIN 1 - #endif #endif #if _USE_STOP(Z,,MAX,) #define USE_Z_MAX 1 #endif -#if USE_Z_MIN || USE_Z_MAX - #define HAS_Z_ENDSTOP 1 +#if _HAS_STATE(Z,,MIN) + #define HAS_Z_MIN_STATE 1 +#endif +#if _HAS_STATE(Z,,MAX) + #define HAS_Z_MAX_STATE 1 +#endif +#if HAS_Z_MIN_STATE || HAS_Z_MAX_STATE + #define HAS_Z_STATE 1 #endif #if _USE_STOP(I,,MIN,) #define USE_I_MIN 1 -#elif _USE_STOP(I,,MAX,) +#endif +#if _USE_STOP(I,,MAX,) #define USE_I_MAX 1 #endif -#if USE_I_MIN || USE_I_MAX - #define HAS_I_ENDSTOP 1 +#if _HAS_STATE(I,,MIN) + #define HAS_I_MIN_STATE 1 +#endif +#if _HAS_STATE(I,,MAX) + #define HAS_I_MAX_STATE 1 +#endif +#if HAS_I_MIN_STATE || HAS_I_MAX_STATE + #define HAS_I_STATE 1 #endif #if _USE_STOP(J,,MIN,) #define USE_J_MIN 1 -#elif _USE_STOP(J,,MAX,) +#endif +#if _USE_STOP(J,,MAX,) #define USE_J_MAX 1 #endif -#if USE_J_MIN || USE_J_MAX - #define HAS_J_ENDSTOP 1 +#if _HAS_STATE(J,,MIN) + #define HAS_J_MIN_STATE 1 +#endif +#if _HAS_STATE(J,,MAX) + #define HAS_J_MAX_STATE 1 +#endif +#if HAS_J_MIN_STATE || HAS_J_MAX_STATE + #define HAS_J_STATE 1 #endif #if _USE_STOP(K,,MIN,) #define USE_K_MIN 1 -#elif _USE_STOP(K,,MAX,) +#endif +#if _USE_STOP(K,,MAX,) #define USE_K_MAX 1 #endif -#if USE_K_MIN || USE_K_MAX - #define HAS_K_ENDSTOP 1 +#if _HAS_STATE(K,,MIN) + #define HAS_K_MIN_STATE 1 +#endif +#if _HAS_STATE(K,,MAX) + #define HAS_K_MAX_STATE 1 +#endif +#if HAS_K_MIN_STATE || HAS_K_MAX_STATE + #define HAS_K_STATE 1 #endif #if _USE_STOP(U,,MIN,) #define USE_U_MIN 1 -#elif _USE_STOP(U,,MAX,) +#endif +#if _USE_STOP(U,,MAX,) #define USE_U_MAX 1 #endif -#if USE_U_MIN || USE_U_MAX - #define HAS_U_ENDSTOP 1 +#if _HAS_STATE(U,,MIN) + #define HAS_U_MIN_STATE 1 +#endif +#if _HAS_STATE(U,,MAX) + #define HAS_U_MAX_STATE 1 +#endif +#if HAS_U_MIN_STATE || HAS_U_MAX_STATE + #define HAS_U_STATE 1 #endif #if _USE_STOP(V,,MIN,) #define USE_V_MIN 1 -#elif _USE_STOP(V,,MAX,) +#endif +#if _USE_STOP(V,,MAX,) #define USE_V_MAX 1 #endif -#if USE_V_MIN || USE_V_MAX - #define HAS_V_ENDSTOP 1 +#if _HAS_STATE(V,,MIN) + #define HAS_V_MIN_STATE 1 +#endif +#if _HAS_STATE(V,,MAX) + #define HAS_V_MAX_STATE 1 +#endif +#if HAS_V_MIN_STATE || HAS_V_MAX_STATE + #define HAS_V_STATE 1 #endif #if _USE_STOP(W,,MIN,) #define USE_W_MIN 1 -#elif _USE_STOP(W,,MAX,) +#endif +#if _USE_STOP(W,,MAX,) #define USE_W_MAX 1 #endif -#if USE_W_MIN || USE_W_MAX - #define HAS_W_ENDSTOP 1 +#if _HAS_STATE(W,,MIN) + #define HAS_W_MIN_STATE 1 +#endif +#if _HAS_STATE(W,,MAX) + #define HAS_W_MAX_STATE 1 +#endif +#if HAS_W_MIN_STATE || HAS_W_MAX_STATE + #define HAS_W_STATE 1 #endif -#if ANY(DUAL_X_CARRIAGE, X_DUAL_ENDSTOPS) +#if ENABLED(X_DUAL_ENDSTOPS) #if _USE_STOP(X,2,MIN,) #define USE_X2_MIN 1 - #elif _USE_STOP(X,2,MAX,) + #endif + #if _USE_STOP(X,2,MAX,) #define USE_X2_MAX 1 #endif - #if USE_X2_MIN || USE_X2_MAX - #define HAS_X2_ENDSTOP 1 + #if _HAS_STATE(X,2,MIN) || HAS_X_MIN_STATE + #define HAS_X2_MIN_STATE 1 + #endif + #if _HAS_STATE(X,2,MAX) || HAS_X_MAX_STATE + #define HAS_X2_MAX_STATE 1 + #endif + #if HAS_X2_MIN_STATE || HAS_X2_MAX_STATE + #define HAS_X2_STATE 1 #endif #endif #if ENABLED(Y_DUAL_ENDSTOPS) #if _USE_STOP(Y,2,MIN,) #define USE_Y2_MIN 1 - #elif _USE_STOP(Y,2,MAX,) + #endif + #if _USE_STOP(Y,2,MAX,) #define USE_Y2_MAX 1 #endif - #if USE_Y2_MIN || USE_Y2_MAX - #define HAS_Y2_ENDSTOP 1 + #if _HAS_STATE(Y,2,MIN) || HAS_Y_MIN_STATE + #define HAS_Y2_MIN_STATE 1 + #endif + #if _HAS_STATE(Y,2,MAX) || HAS_Y_MAX_STATE + #define HAS_Y2_MAX_STATE 1 + #endif + #if HAS_Y2_MIN_STATE || HAS_Y2_MAX_STATE + #define HAS_Y2_STATE 1 #endif #endif #if ENABLED(Z_MULTI_ENDSTOPS) #if _USE_STOP(Z,2,MIN,) #define USE_Z2_MIN 1 - #elif _USE_STOP(Z,2,MAX,) + #endif + #if _USE_STOP(Z,2,MAX,) #define USE_Z2_MAX 1 #endif - #if USE_Z2_MIN || USE_Z2_MAX - #define HAS_Z2_ENDSTOP 1 + #if _HAS_STATE(Z,2,MIN) || HAS_Z_MIN_STATE + #define HAS_Z2_MIN_STATE 1 + #endif + #if _HAS_STATE(Z,2,MAX) || HAS_Z_MAX_STATE + #define HAS_Z2_MAX_STATE 1 + #endif + #if HAS_Z2_MIN_STATE || HAS_Z2_MAX_STATE + #define HAS_Z2_STATE 1 #endif #if NUM_Z_STEPPERS >= 3 #if _USE_STOP(Z,3,MIN,) #define USE_Z3_MIN 1 - #elif _USE_STOP(Z,3,MAX,) + #endif + #if _USE_STOP(Z,3,MAX,) #define USE_Z3_MAX 1 #endif - #if USE_Z3_MIN || USE_Z3_MAX - #define HAS_Z3_ENDSTOP 1 + #if _HAS_STATE(Z,3,MIN) || HAS_Z_MIN_STATE + #define HAS_Z3_MIN_STATE 1 + #endif + #if _HAS_STATE(Z,3,MAX) || HAS_Z_MAX_STATE + #define HAS_Z3_MAX_STATE 1 + #endif + #if HAS_Z3_MIN_STATE || HAS_Z3_MAX_STATE + #define HAS_Z3_STATE 1 #endif #endif #if NUM_Z_STEPPERS >= 4 #if _USE_STOP(Z,4,MIN,) #define USE_Z4_MIN 1 - #elif _USE_STOP(Z,4,MAX,) + #endif + #if _USE_STOP(Z,4,MAX,) #define USE_Z4_MAX 1 #endif - #if USE_Z4_MIN || USE_Z4_MAX - #define HAS_Z4_ENDSTOP 1 + #if _HAS_STATE(Z,4,MIN) || HAS_Z_MIN_STATE + #define HAS_Z4_MIN_STATE 1 + #endif + #if _HAS_STATE(Z,4,MAX) || HAS_Z_MAX_STATE + #define HAS_Z4_MAX_STATE 1 + #endif + #if HAS_Z4_MIN_STATE || HAS_Z4_MAX_STATE + #define HAS_Z4_STATE 1 #endif #endif #endif +#if NEED_Z_MIN_PROBE_PIN && PIN_EXISTS(Z_MIN_PROBE) + #define USE_Z_MIN_PROBE 1 +#endif +#if HAS_REAL_BED_PROBE + #define HAS_Z_PROBE_STATE 1 +#endif + #undef _USE_STOP /** @@ -2111,7 +2218,7 @@ #if USE_Y_MAX #define ENDSTOPPULLUP_YMAX #endif - #if HAS_Z_MIN_PIN + #if USE_Z_MIN #define ENDSTOPPULLUP_ZMIN #endif #if USE_Z_MAX diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 8eb8662c32e3..5933c8c396a7 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -1388,19 +1388,13 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Require pin options and pins to be defined */ - #if ENABLED(SENSORLESS_PROBING) - #if ENABLED(DELTA) && !(X_SENSORLESS && Y_SENSORLESS && Z_SENSORLESS) - #error "SENSORLESS_PROBING requires TMC2130/2160/2209/5130/5160 drivers on X, Y, and Z and {X|Y|Z}_STALL_SENSITIVITY." - #elif !Z_SENSORLESS - #error "SENSORLESS_PROBING requires a TMC2130/2160/2209/5130/5160 driver on Z and Z_STALL_SENSITIVITY." - #endif - #elif ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) - #if !HAS_Z_MIN_PIN + #if ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) + #if !USE_Z_MIN #error "Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN requires the Z_MIN_PIN to be defined." #elif Z_MIN_PROBE_ENDSTOP_HIT_STATE != Z_MIN_ENDSTOP_HIT_STATE #error "Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN requires Z_MIN_ENDSTOP_HIT_STATE to match Z_MIN_PROBE_ENDSTOP_HIT_STATE." #endif - #elif !USE_Z_MIN_PROBE + #elif !PIN_EXISTS(Z_MIN_PROBE) #error "Z_MIN_PROBE_PIN must be defined if Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN is not enabled." #endif @@ -2323,53 +2317,53 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L /** * Endstop Tests */ -#if HAS_ENDSTOPS - // Delta and Cartesian use 3 homing endstops - #if NONE(IS_SCARA, SPI_ENDSTOPS) - #if X_HOME_TO_MIN && !PIN_EXISTS(X_MIN) - #error "X_MIN_PIN (or X_STOP_PIN) is required for X axis homing." - #elif X_HOME_TO_MAX && !PIN_EXISTS(X_MAX) - #error "X_MAX_PIN (or X_STOP_PIN) is required for X axis homing." - #elif Y_HOME_TO_MIN && !PIN_EXISTS(Y_MIN) - #error "Y_MIN_PIN (or Y_STOP_PIN) is required for Y axis homing." - #elif Y_HOME_TO_MAX && !PIN_EXISTS(Y_MAX) - #error "Y_MAX_PIN (or Y_STOP_PIN) is required for Y axis homing." - #elif I_HOME_TO_MIN && !PIN_EXISTS(I_MIN) - #error "I_MIN_PIN (or I_STOP_PIN) is required for I axis homing." - #elif I_HOME_TO_MAX && !PIN_EXISTS(I_MAX) - #error "I_MAX_PIN (or I_STOP_PIN) is required for I axis homing." - #elif J_HOME_TO_MIN && !PIN_EXISTS(J_MIN) - #error "J_MIN_PIN (or J_STOP_PIN) is required for J axis homing." - #elif J_HOME_TO_MAX && !PIN_EXISTS(J_MAX) - #error "J_MAX_PIN (or J_STOP_PIN) is required for J axis homing." - #elif K_HOME_TO_MIN && !PIN_EXISTS(K_MIN) - #error "K_MIN_PIN (or K_STOP_PIN) is required for K axis homing." - #elif K_HOME_TO_MAX && !PIN_EXISTS(K_MAX) - #error "K_MAX_PIN (or K_STOP_PIN) is required for K axis homing." - #elif U_HOME_TO_MIN && !PIN_EXISTS(U_MIN) - #error "U_MIN_PIN (or U_STOP_PIN) is required for U axis homing." - #elif U_HOME_TO_MAX && !PIN_EXISTS(U_MAX) - #error "U_MAX_PIN (or U_STOP_PIN) is required for U axis homing." - #elif V_HOME_TO_MIN && !PIN_EXISTS(V_MIN) - #error "V_MIN_PIN (or V_STOP_PIN) is required for V axis homing." - #elif V_HOME_TO_MAX && !PIN_EXISTS(V_MAX) - #error "V_MAX_PIN (or V_STOP_PIN) is required for V axis homing." - #elif W_HOME_TO_MIN && !PIN_EXISTS(W_MIN) - #error "W_MIN_PIN (or W_STOP_PIN) is required for W axis homing." - #elif W_HOME_TO_MAX && !PIN_EXISTS(W_MAX) - #error "W_MAX_PIN (or W_STOP_PIN) is required for W axis homing." - #endif - #endif - - // Z homing requirements - #if Z_HOME_TO_MAX && ENABLED(USE_PROBE_FOR_Z_HOMING) - #error "Z_HOME_DIR must be -1 when homing Z with the probe." - #elif ALL(HOMING_Z_WITH_PROBE, Z_MULTI_ENDSTOPS) - #error "Z_MULTI_ENDSTOPS is incompatible with USE_PROBE_FOR_Z_HOMING." - #endif -#endif - -#if ALL(HOME_Z_FIRST, USE_PROBE_FOR_Z_HOMING) +#if !IS_SCARA + // Delta and Cartesian require some kind of endstop + #if X_HOME_TO_MIN && !HAS_X_MIN_STATE + #error "X_MIN_PIN, X_STOP_PIN, or X_SPI_SENSORLESS is required for X axis homing." + #elif X_HOME_TO_MAX && !HAS_X_MAX_STATE + #error "X_MAX_PIN, X_STOP_PIN, or X_SPI_SENSORLESS is required for X axis homing." + #elif Y_HOME_TO_MIN && !HAS_Y_MIN_STATE + #error "Y_MIN_PIN, Y_STOP_PIN, or Y_SPI_SENSORLESS is required for Y axis homing." + #elif Y_HOME_TO_MAX && !HAS_Y_MAX_STATE + #error "Y_MAX_PIN, Y_STOP_PIN, or Y_SPI_SENSORLESS is required for Y axis homing." + #elif Z_HOME_TO_MIN && !HAS_Z_MIN_STATE + #error "Z_MIN_PIN, Z_STOP_PIN, or Z_SPI_SENSORLESS is required for Y axis homing." + #elif Z_HOME_TO_MAX && !HAS_Z_MAX_STATE + #error "Z_MAX_PIN, Z_STOP_PIN, or Z_SPI_SENSORLESS is required for Y axis homing." + #elif I_HOME_TO_MIN && !HAS_I_MIN_STATE + #error "I_MIN_PIN, I_STOP_PIN, or I_SPI_SENSORLESS is required for I axis homing." + #elif I_HOME_TO_MAX && !HAS_I_MAX_STATE + #error "I_MAX_PIN, I_STOP_PIN, or I_SPI_SENSORLESS is required for I axis homing." + #elif J_HOME_TO_MIN && !HAS_J_MIN_STATE + #error "J_MIN_PIN, J_STOP_PIN, or J_SPI_SENSORLESS is required for J axis homing." + #elif J_HOME_TO_MAX && !HAS_J_MAX_STATE + #error "J_MAX_PIN, J_STOP_PIN, or J_SPI_SENSORLESS is required for J axis homing." + #elif K_HOME_TO_MIN && !HAS_K_MIN_STATE + #error "K_MIN_PIN, K_STOP_PIN, or K_SPI_SENSORLESS is required for K axis homing." + #elif K_HOME_TO_MAX && !HAS_K_MAX_STATE + #error "K_MAX_PIN, K_STOP_PIN, or K_SPI_SENSORLESS is required for K axis homing." + #elif U_HOME_TO_MIN && !HAS_U_MIN_STATE + #error "U_MIN_PIN, U_STOP_PIN, or U_SPI_SENSORLESS is required for U axis homing." + #elif U_HOME_TO_MAX && !HAS_U_MAX_STATE + #error "U_MAX_PIN, U_STOP_PIN, or U_SPI_SENSORLESS is required for U axis homing." + #elif V_HOME_TO_MIN && !HAS_V_MIN_STATE + #error "V_MIN_PIN, V_STOP_PIN, or V_SPI_SENSORLESS is required for V axis homing." + #elif V_HOME_TO_MAX && !HAS_V_MAX_STATE + #error "V_MAX_PIN, V_STOP_PIN, or V_SPI_SENSORLESS is required for V axis homing." + #elif W_HOME_TO_MIN && !HAS_W_MIN_STATE + #error "W_MIN_PIN, W_STOP_PIN, or W_SPI_SENSORLESS is required for W axis homing." + #elif W_HOME_TO_MAX && !HAS_W_MAX_STATE + #error "W_MAX_PIN, W_STOP_PIN, or W_SPI_SENSORLESS is required for W axis homing." + #endif +#endif + +// Z homing with probe requirements +#if ALL(HOMING_Z_WITH_PROBE, Z_MULTI_ENDSTOPS) + #error "Z_MULTI_ENDSTOPS is incompatible with USE_PROBE_FOR_Z_HOMING (i.e., Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN)." +#elif ALL(USE_PROBE_FOR_Z_HOMING, Z_HOME_TO_MAX) + #error "Z_HOME_DIR must be -1 when homing Z with the probe." +#elif ALL(USE_PROBE_FOR_Z_HOMING, HOME_Z_FIRST) #error "HOME_Z_FIRST can't be used when homing Z with a probe." #endif @@ -2381,26 +2375,32 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #if ENABLED(X_DUAL_ENDSTOPS) #if ENABLED(DELTA) #error "X_DUAL_ENDSTOPS is not compatible with DELTA." - #elif !HAS_X2_ENDSTOP - #error "X2 Endstop Pin must be defined for X_DUAL_ENDSTOPS." + #elif !HAS_X2_STATE + #error "Some kind of X2 Endstop must be defined for X_DUAL_ENDSTOPS." + #elif X_SPI_SENSORLESS && !AXIS_HAS_SPI(X2) + #error "All X Stepper Drivers must be SPI-capable to use SPI Endstops on X." #endif #endif #if ENABLED(Y_DUAL_ENDSTOPS) #if ENABLED(DELTA) #error "Y_DUAL_ENDSTOPS is not compatible with DELTA." - #elif !HAS_Y2_ENDSTOP - #error "Y2 Endstop Pin must be defined for Y_DUAL_ENDSTOPS." + #elif !HAS_Y2_STATE + #error "Some kind of Y2 Endstop must be defined for Y_DUAL_ENDSTOPS." + #elif Y_SPI_SENSORLESS && !AXIS_HAS_SPI(Y2) + #error "All Y Stepper Drivers must be SPI-capable to use SPI Endstops on Y." #endif #endif #if ENABLED(Z_MULTI_ENDSTOPS) #if ENABLED(DELTA) #error "Z_MULTI_ENDSTOPS is not compatible with DELTA." - #elif !HAS_Z2_ENDSTOP - #error "Z2 Endstop Pin must be defined for Z_MULTI_ENDSTOPS." - #elif NUM_Z_STEPPERS >= 3 && !HAS_Z3_ENDSTOP - #error "Z3 Endstop Pin must be defined for Z_MULTI_ENDSTOPS and Z3_DRIVER_TYPE." - #elif NUM_Z_STEPPERS >= 4 && !HAS_Z4_ENDSTOP - #error "Z4 Endstop Pin must be defined for Z_MULTI_ENDSTOPS and Z4_DRIVER_TYPE." + #elif !HAS_Z2_STATE + #error "Some kind of Z2 Endstop must be defined for Z_MULTI_ENDSTOPS." + #elif NUM_Z_STEPPERS >= 3 && !HAS_Z3_STATE + #error "Some kind of Z3 Endstop must be defined for Z_MULTI_ENDSTOPS and Z3_DRIVER_TYPE." + #elif NUM_Z_STEPPERS >= 4 && !HAS_Z4_STATE + #error "Some kind of Z4 Endstop must be defined for Z_MULTI_ENDSTOPS and Z4_DRIVER_TYPE." + #elif Z_SPI_SENSORLESS && !(AXIS_HAS_SPI(Z2) && (NUM_Z_STEPPERS < 3 || AXIS_HAS_SPI(Z3)) && (NUM_Z_STEPPERS < 4 || AXIS_HAS_SPI(Z4))) + #error "All Z Stepper Drivers must be SPI-capable to use SPI Endstops on Z." #endif #endif diff --git a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp index 4dd3d7a369ea..d76c10dfdb2a 100644 --- a/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp +++ b/Marlin/src/lcd/e3v2/proui/endstop_diag.cpp @@ -70,9 +70,9 @@ void ESDiag::draw() { DWINUI::drawButton(BTN_Continue, 86, 250); DWINUI::cursor.y = 80; #define ES_LABEL(S) draw_es_label(F(STR_##S)) - TERN_(USE_X_MIN, ES_LABEL(X_MIN)); TERN_(USE_X_MAX, ES_LABEL(X_MAX)); - TERN_(USE_Y_MIN, ES_LABEL(Y_MIN)); TERN_(USE_Y_MAX, ES_LABEL(Y_MAX)); - TERN_(HAS_Z_MIN_PIN, ES_LABEL(Z_MIN)); TERN_(USE_Z_MAX, ES_LABEL(Z_MAX)); + TERN_(USE_X_MIN, ES_LABEL(X_MIN)); TERN_(USE_X_MAX, ES_LABEL(X_MAX)); + TERN_(USE_Y_MIN, ES_LABEL(Y_MIN)); TERN_(USE_Y_MAX, ES_LABEL(Y_MAX)); + TERN_(USE_Z_MIN, ES_LABEL(Z_MIN)); TERN_(USE_Z_MAX, ES_LABEL(Z_MAX)); TERN_(HAS_FILAMENT_SENSOR, draw_es_label(F(STR_FILAMENT))); update(); } @@ -80,9 +80,9 @@ void ESDiag::draw() { void ESDiag::update() { DWINUI::cursor.y = 80; #define ES_REPORT(S) draw_es_state(READ(S##_PIN) == S##_ENDSTOP_HIT_STATE) - TERN_(USE_X_MIN, ES_REPORT(X_MIN)); TERN_(USE_X_MAX, ES_REPORT(X_MAX)); - TERN_(USE_Y_MIN, ES_REPORT(Y_MIN)); TERN_(USE_Y_MAX, ES_REPORT(Y_MAX)); - TERN_(HAS_Z_MIN_PIN, ES_REPORT(Z_MIN)); TERN_(USE_Z_MAX, ES_REPORT(Z_MAX)); + TERN_(USE_X_MIN, ES_REPORT(X_MIN)); TERN_(USE_X_MAX, ES_REPORT(X_MAX)); + TERN_(USE_Y_MIN, ES_REPORT(Y_MIN)); TERN_(USE_Y_MAX, ES_REPORT(Y_MAX)); + TERN_(USE_Z_MIN, ES_REPORT(Z_MIN)); TERN_(USE_Z_MAX, ES_REPORT(Z_MAX)); TERN_(HAS_FILAMENT_SENSOR, draw_es_state(READ(FIL_RUNOUT1_PIN) != FIL_RUNOUT1_STATE)); dwinUpdateLCD(); } diff --git a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp index 1d81649444e2..6105591d15dd 100644 --- a/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp +++ b/Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/endstop_state_screen.cpp @@ -79,7 +79,7 @@ void EndstopStatesScreen::onRedraw(draw_mode_t) { #else PIN_DISABLED(3, 3, PSTR(STR_Y_MIN), Y_MIN) #endif - #if HAS_Z_MIN_PIN + #if USE_Z_MIN PIN_ENABLED (5, 3, PSTR(STR_Z_MIN), Z_MIN, Z_MIN_ENDSTOP_HIT_STATE) #else PIN_DISABLED(5, 3, PSTR(STR_Z_MIN), Z_MIN) diff --git a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp index c46a532d9a93..a759f8677e6f 100644 --- a/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp +++ b/Marlin/src/lcd/extui/mks_ui/mks_hardware.cpp @@ -45,36 +45,56 @@ #if PIN_EXISTS(MT_DET_2) bool mt_det2_sta; #endif - #if HAS_X_ENDSTOP - bool endstopx1_sta; + #if USE_X_MIN + bool endstopx1_min; #else - constexpr static bool endstopx1_sta = true; + constexpr static bool endstopx1_min = true; #endif - #if HAS_X2_ENDSTOP + #if USE_X_MAX + bool endstopx1_max; + #else + constexpr static bool endstopx1_max = true; + #endif + #if USE_X2_MIN bool endstopx2_sta; #else constexpr static bool endstopx2_sta = true; #endif - #if HAS_Y_ENDSTOP + #if USE_Y_MIN bool endstopy1_sta; #else constexpr static bool endstopy1_sta = true; #endif - #if HAS_Y2_ENDSTOP + #if USE_Y2_MIN bool endstopy2_sta; #else constexpr static bool endstopy2_sta = true; #endif - #if HAS_Z_ENDSTOP - bool endstopz1_sta; + #if USE_Z_MIN + bool endstopz1_min; #else - constexpr static bool endstopz1_sta = true; + constexpr static bool endstopz1_min = true; #endif - #if HAS_Z2_ENDSTOP + #if USE_Z_MAX + bool endstopz1_max; + #else + constexpr static bool endstopz1_max = true; + #endif + #if USE_Z2_MIN || USE_Z2_MAX bool endstopz2_sta; #else constexpr static bool endstopz2_sta = true; #endif + #if USE_Z3_MIN || USE_Z3_MAX + bool endstopz3_sta; + #else + constexpr static bool endstopz3_sta = true; + #endif + #if USE_Z4_MIN || USE_Z4_MAX + bool endstopz4_sta; + #else + constexpr static bool endstopz4_sta = true; + #endif #define ESTATE(S) (READ(S##_PIN) == S##_ENDSTOP_HIT_STATE) @@ -87,12 +107,28 @@ #if PIN_EXISTS(MT_DET_2) mt_det2_sta = (READ(MT_DET_2_PIN) == LOW); #endif - TERN_(HAS_X_ENDSTOP, endstopx1_sta = ESTATE(TERN(USE_X_MIN, X_MIN, X_MAX))); - TERN_(HAS_X2_ENDSTOP, endstopx2_sta = ESTATE(TERN(USE_X2_MIN, X2_MIN, X2_MAX))); - TERN_(HAS_Y_ENDSTOP, endstopy1_sta = ESTATE(TERN(USE_Y_MIN, Y_MIN, Y_MAX))); - TERN_(HAS_Y2_ENDSTOP, endstopy2_sta = ESTATE(TERN(USE_Y2_MIN, Y2_MIN, Y2_MAX))); - TERN_(HAS_Z_ENDSTOP, endstopz1_sta = ESTATE(TERN(HAS_Z_MIN_PIN, Z_MIN, Z_MAX))); - TERN_(HAS_Z2_ENDSTOP, endstopz2_sta = ESTATE(TERN(USE_Z2_MIN, Z2_MIN, Z2_MAX))); + TERN_(USE_X_MIN, endstopx1_min = ESTATE(X_MIN)); + TERN_(USE_X_MAX, endstopx1_max = ESTATE(X_MAX)); + #if USE_X2_MIN || USE_X2_MAX + endstopx2_sta = ESTATE(TERN(USE_X2_MIN, X2_MIN, X2_MAX)); + #endif + #if USE_Y_MIN || USE_Y_MAX + endstopy1_sta = ESTATE(TERN(USE_Y_MIN, Y_MIN, Y_MAX)); + #endif + #if USE_Y2_MIN || USE_Y2_MAX + endstopy2_sta = ESTATE(TERN(USE_Y2_MIN, Y2_MIN, Y2_MAX)); + #endif + TERN_(USE_Z_MIN, endstopz1_min = ESTATE(Z_MIN)); + TERN_(USE_Z_MAX, endstopz1_max = ESTATE(Z_MAX)); + #if USE_Z2_MIN || USE_Z2_MAX + endstopz2_sta = ESTATE(TERN(USE_Z2_MIN, Z2_MIN, Z2_MAX)); + #endif + #if USE_Z3_MIN || USE_Z3_MAX + endstopz3_sta = ESTATE(TERN(USE_Z3_MIN, Z3_MIN, Z3_MAX)); + #endif + #if USE_Z4_MIN || USE_Z4_MAX + endstopz4_sta = ESTATE(TERN(USE_Z4_MIN, Z4_MIN, Z4_MAX)); + #endif } void test_gpio_readlevel_H() { @@ -104,12 +140,28 @@ #if PIN_EXISTS(MT_DET_2) mt_det2_sta = (READ(MT_DET_2_PIN) == HIGH); #endif - TERN_(HAS_X_ENDSTOP, endstopx1_sta = !ESTATE(TERN(USE_X_MIN, X_MIN, X_MAX))); - TERN_(HAS_X2_ENDSTOP, endstopx2_sta = !ESTATE(TERN(USE_X2_MIN, X2_MIN, X2_MAX))); - TERN_(HAS_Y_ENDSTOP, endstopy1_sta = !ESTATE(TERN(USE_Y_MIN, Y_MIN, Y_MAX))); - TERN_(HAS_Y2_ENDSTOP, endstopy2_sta = !ESTATE(TERN(USE_Y2_MIN, Y2_MIN, Y2_MAX))); - TERN_(HAS_Z_ENDSTOP, endstopz1_sta = !ESTATE(TERN(HAS_Z_MIN_PIN, Z_MIN, Z_MAX))); - TERN_(HAS_Z2_ENDSTOP, endstopz2_sta = !ESTATE(TERN(USE_Z2_MIN, Z2_MIN, Z2_MAX))); + TERN_(USE_X_MIN, endstopx1_min = !ESTATE(X_MIN)); + TERN_(USE_X_MAX, endstopx1_max = !ESTATE(X_MAX)); + #if USE_X2_MIN || USE_X2_MAX + endstopx2_sta = !ESTATE(TERN(USE_X2_MIN, X2_MIN, X2_MAX)); + #endif + #if USE_Y_MIN || USE_Y_MAX + endstopy1_sta = !ESTATE(TERN(USE_Y_MIN, Y_MIN, Y_MAX)); + #endif + #if USE_Y2_MIN || USE_Y2_MAX + endstopy2_sta = !ESTATE(TERN(USE_Y2_MIN, Y2_MIN, Y2_MAX)); + #endif + TERN_(USE_Z_MIN, endstopz1_min = !ESTATE(Z_MIN)); + TERN_(USE_Z_MAX, endstopz1_max = !ESTATE(Z_MAX)); + #if USE_Z2_MIN || USE_Z2_MAX + endstopz2_sta = !ESTATE(TERN(USE_Z2_MIN, Z2_MIN, Z2_MAX)); + #endif + #if USE_Z3_MIN || USE_Z3_MAX + endstopz3_sta = !ESTATE(TERN(USE_Z3_MIN, Z3_MIN, Z3_MAX)); + #endif + #if USE_Z4_MIN || USE_Z4_MAX + endstopz4_sta = !ESTATE(TERN(USE_Z4_MIN, Z4_MIN, Z4_MAX)); + #endif } #include "../../../libs/buzzer.h" @@ -185,7 +237,7 @@ else disp_det_error(); - if (endstopx1_sta && endstopy1_sta && endstopz1_sta && endstopz2_sta) + if (endstopx1_min && endstopx1_max && endstopy1_sta && endstopz1_min && endstopz1_max && endstopz2_sta && endstopz3_sta && endstopz4_sta) disp_Limit_ok(); else disp_Limit_error(); @@ -247,7 +299,9 @@ #endif } - if (endstopx1_sta && endstopx2_sta && endstopy1_sta && endstopy2_sta && endstopz1_sta && endstopz2_sta) { + if ( endstopx1_min && endstopx1_max && endstopx2_sta && endstopy1_sta && endstopy2_sta + && endstopz1_min && endstopz1_max && endstopz2_sta && endstopz3_sta && endstopz4_sta + ) { // nothing here } else { diff --git a/Marlin/src/lcd/menu/menu_configuration.cpp b/Marlin/src/lcd/menu/menu_configuration.cpp index 4e9b3022638b..edbf78ed7643 100644 --- a/Marlin/src/lcd/menu/menu_configuration.cpp +++ b/Marlin/src/lcd/menu/menu_configuration.cpp @@ -102,9 +102,10 @@ void menu_advanced_settings(); #if ENABLED(LCD_ENDSTOP_TEST) - #define __STOP_ITEM(F,S) PSTRING_ITEM_F_P(F, TEST(stops, S) ? PSTR(STR_ENDSTOP_HIT) : PSTR(STR_ENDSTOP_OPEN), SS_FULL) + #define __STOP_ITEM(F,S) PSTRING_ITEM_F_P(F, TEST(stops, S) ? PSTR(STR_ENDSTOP_HIT) : PSTR(STR_ENDSTOP_OPEN), SS_FULL); #define _STOP_ITEM(L,S) __STOP_ITEM(F(L), S) - #define STOP_ITEM(A,I) _STOP_ITEM(STRINGIFY(A) STRINGIFY(I) " " TERN(A##_HOME_TO_MAX, "Max", "Min"), A##I##_ENDSTOP) + #define STOP_ITEM(A,I,M,L) TERN(HAS_##A##I##_##M_STATE, _STOP_ITEM, _IF_1_ELSE)(STRINGIFY(A) STRINGIFY(I) " " STRINGIFY(L), A##I##_##M) + #define STOP_MINMAX(A,I) STOP_ITEM(A,,MIN,"Min") STOP_ITEM(A,,MAX,"Max") #define FIL_ITEM(N) PSTRING_ITEM_N_P(N-1, MSG_FILAMENT_EN, (READ(FIL_RUNOUT##N##_PIN) != FIL_RUNOUT##N##_STATE) ? PSTR("PRESENT") : PSTR("out"), SS_FULL); static void endstop_test() { @@ -120,48 +121,12 @@ void menu_advanced_settings(); START_SCREEN(); STATIC_ITEM_F(GET_TEXT_F(MSG_ENDSTOP_TEST), SS_DEFAULT|SS_INVERT); - #if HAS_X_ENDSTOP - STOP_ITEM(X,); - #if ENABLED(X_DUAL_ENDSTOPS) - STOP_ITEM(X,2); - #endif - #endif - #if HAS_Y_ENDSTOP - STOP_ITEM(Y,); - #if ENABLED(Y_DUAL_ENDSTOPS) - STOP_ITEM(Y,2); - #endif - #endif - #if HAS_Z_ENDSTOP - STOP_ITEM(Z,); - #if ENABLED(Z_MULTI_ENDSTOPS) - STOP_ITEM(Z,2); - #if NUM_Z_STEPPERS >= 3 - STOP_ITEM(Z,3); - #if NUM_Z_STEPPERS >= 4 - STOP_ITEM(Z,4); - #endif - #endif - #endif - #endif - #if HAS_I_ENDSTOP - STOP_ITEM(I,); - #endif - #if HAS_J_ENDSTOP - STOP_ITEM(J,); - #endif - #if HAS_K_ENDSTOP - STOP_ITEM(K,); - #endif - #if HAS_U_ENDSTOP - STOP_ITEM(U,); - #endif - #if HAS_V_ENDSTOP - STOP_ITEM(V,); - #endif - #if HAS_W_ENDSTOP - STOP_ITEM(W,); - #endif + STOP_MINMAX(X,) STOP_MINMAX(X,2) + STOP_MINMAX(Y,) STOP_MINMAX(Y,2) + STOP_MINMAX(Z,) STOP_MINMAX(Z,2) STOP_MINMAX(Z,3) STOP_MINMAX(Z,4) + STOP_MINMAX(I,) STOP_MINMAX(J,) STOP_MINMAX(K,) + STOP_MINMAX(U,) STOP_MINMAX(V,) STOP_MINMAX(W,) + #if HAS_BED_PROBE && !HAS_DELTA_SENSORLESS_PROBING __STOP_ITEM(GET_TEXT_F(MSG_Z_PROBE), Z_MIN_PROBE); #endif diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index 3c1fcc72a9a7..0f060f572048 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -138,7 +138,7 @@ void Endstops::init() { #if USE_Y2_MAX _INIT_ENDSTOP(MAX,Y,2); #endif - #if HAS_Z_MIN_PIN + #if USE_Z_MIN _INIT_ENDSTOP(MIN,Z,); #endif #if USE_Z_MAX @@ -315,7 +315,7 @@ void Endstops::event_handler() { SERIAL_ECHOPGM(" " STRINGIFY(A) ":", planner.triggered_position_mm(_AXIS(A))); _SET_STOP_CHAR(A,C); }while(0) #define _ENDSTOP_HIT_TEST(A,C) \ - if (TERN0(USE_##A##_MIN, TEST(hit_state, ES_ENUM(A,MIN))) || TERN0(USE_##A##_MAX, TEST(hit_state, ES_ENUM(A,MAX)))) \ + if (TERN0(HAS_##A##_MIN_STATE, TEST(hit_state, ES_ENUM(A,MIN))) || TERN0(HAS_##A##_MAX_STATE, TEST(hit_state, ES_ENUM(A,MAX)))) \ _ENDSTOP_HIT_ECHO(A,C) #define ENDSTOP_HIT_TEST_X() _ENDSTOP_HIT_TEST(X,'X') @@ -504,11 +504,6 @@ void __O2 Endstops::report_states() { } // Endstops::report_states -#define __ENDSTOP(AXIS, MINMAX) AXIS ##_## MINMAX -#define _ENDSTOP_PIN(AXIS, MINMAX) AXIS ##_## MINMAX ##_PIN -#define _ENDSTOP_HIT_STATE(AXIS, MINMAX) AXIS ##_## MINMAX ##_ENDSTOP_HIT_STATE -#define _ENDSTOP(AXIS, MINMAX) __ENDSTOP(AXIS, MINMAX) - /** * Called from interrupt context by the Endstop ISR or Stepper ISR! * Read endstops to get their current states, register hits for all @@ -521,7 +516,9 @@ void Endstops::update() { #endif // Macros to update / copy the live_state - #define UPDATE_LIVE_STATE(AXIS, MINMAX) SET_BIT_TO(live_state, _ENDSTOP(AXIS, MINMAX), (READ_ENDSTOP(_ENDSTOP_PIN(AXIS, MINMAX)) == _ENDSTOP_HIT_STATE(AXIS, MINMAX))) + #define _ES_PIN(A,M) A##_##M##_PIN + #define _ES_HIT(A,M) A##_##M##_ENDSTOP_HIT_STATE + #define UPDATE_LIVE_STATE(AXIS, MINMAX) SET_BIT_TO(live_state, ES_ENUM(AXIS, MINMAX), (READ_ENDSTOP(_ES_PIN(AXIS, MINMAX)) == _ES_HIT(AXIS, MINMAX))) #define COPY_LIVE_STATE(SRC_BIT, DST_BIT) SET_BIT_TO(live_state, DST_BIT, TEST(live_state, SRC_BIT)) #if ENABLED(G38_PROBE_TARGET) @@ -560,7 +557,7 @@ void Endstops::update() { /** * Check and update endstops */ - #if USE_X_MIN && !X_SPI_SENSORLESS + #if USE_X_MIN UPDATE_LIVE_STATE(X, MIN); #if ENABLED(X_DUAL_ENDSTOPS) #if USE_X2_MIN @@ -571,7 +568,7 @@ void Endstops::update() { #endif #endif - #if USE_X_MAX && !X_SPI_SENSORLESS + #if USE_X_MAX UPDATE_LIVE_STATE(X, MAX); #if ENABLED(X_DUAL_ENDSTOPS) #if USE_X2_MAX @@ -582,7 +579,7 @@ void Endstops::update() { #endif #endif - #if USE_Y_MIN && !Y_SPI_SENSORLESS + #if USE_Y_MIN UPDATE_LIVE_STATE(Y, MIN); #if ENABLED(Y_DUAL_ENDSTOPS) #if USE_Y2_MIN @@ -593,7 +590,7 @@ void Endstops::update() { #endif #endif - #if USE_Y_MAX && !Y_SPI_SENSORLESS + #if USE_Y_MAX UPDATE_LIVE_STATE(Y, MAX); #if ENABLED(Y_DUAL_ENDSTOPS) #if USE_Y2_MAX @@ -605,159 +602,84 @@ void Endstops::update() { #endif #if USE_Z_MIN && NONE(Z_SPI_SENSORLESS, Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN) - #if HAS_Z_MIN_PIN - UPDATE_LIVE_STATE(Z, MIN); - #endif - #if ENABLED(Z_MULTI_ENDSTOPS) - #if USE_Z2_MIN - UPDATE_LIVE_STATE(Z2, MIN); - #else - COPY_LIVE_STATE(Z_MIN, Z2_MIN); - #endif - #if NUM_Z_STEPPERS >= 3 - #if USE_Z3_MIN - UPDATE_LIVE_STATE(Z3, MIN); - #else - COPY_LIVE_STATE(Z_MIN, Z3_MIN); - #endif - #endif - #if NUM_Z_STEPPERS >= 4 - #if USE_Z4_MIN - UPDATE_LIVE_STATE(Z4, MIN); - #else - COPY_LIVE_STATE(Z_MIN, Z4_MIN); - #endif - #endif - #endif + UPDATE_LIVE_STATE(Z, MIN); + #endif + #if USE_Z2_MIN + UPDATE_LIVE_STATE(Z2, MIN); + #elif HAS_Z2_MIN_STATE + COPY_LIVE_STATE(Z_MIN, Z2_MIN); + #endif + #if USE_Z3_MIN + UPDATE_LIVE_STATE(Z3, MIN); + #elif HAS_Z3_MIN_STATE + COPY_LIVE_STATE(Z_MIN, Z3_MIN); + #endif + #if USE_Z4_MIN + UPDATE_LIVE_STATE(Z4, MIN); + #elif HAS_Z4_MIN_STATE + COPY_LIVE_STATE(Z_MIN, Z4_MIN); #endif - #if HAS_BED_PROBE + #if HAS_REAL_BED_PROBE // When closing the gap check the enabled probe if (probe_switch_activated()) UPDATE_LIVE_STATE(Z, TERN(USE_Z_MIN_PROBE, MIN_PROBE, MIN)); #endif - #if USE_Z_MAX && !Z_SPI_SENSORLESS - // Check both Z dual endstops - #if ENABLED(Z_MULTI_ENDSTOPS) - UPDATE_LIVE_STATE(Z, MAX); - #if USE_Z2_MAX - UPDATE_LIVE_STATE(Z2, MAX); - #else - COPY_LIVE_STATE(Z_MAX, Z2_MAX); - #endif - #if NUM_Z_STEPPERS >= 3 - #if USE_Z3_MAX - UPDATE_LIVE_STATE(Z3, MAX); - #else - COPY_LIVE_STATE(Z_MAX, Z3_MAX); - #endif - #endif - #if NUM_Z_STEPPERS >= 4 - #if USE_Z4_MAX - UPDATE_LIVE_STATE(Z4, MAX); - #else - COPY_LIVE_STATE(Z_MAX, Z4_MAX); - #endif - #endif - #elif TERN1(USE_Z_MIN_PROBE, Z_MAX_PIN != Z_MIN_PROBE_PIN) - // If this pin isn't the bed probe it's the Z endstop - UPDATE_LIVE_STATE(Z, MAX); - #endif + #if USE_Z_MAX + UPDATE_LIVE_STATE(Z, MAX); #endif - - #if USE_I_MIN && !I_SPI_SENSORLESS - #if ENABLED(I_DUAL_ENDSTOPS) - UPDATE_LIVE_STATE(I, MIN); - #else - UPDATE_LIVE_STATE(I, MIN); - #endif + #if USE_Z2_MAX + UPDATE_LIVE_STATE(Z2, MAX); + #elif HAS_Z2_MAX_STATE + COPY_LIVE_STATE(Z_MAX, Z2_MAX); #endif - - #if USE_I_MAX && !I_SPI_SENSORLESS - #if ENABLED(I_DUAL_ENDSTOPS) - UPDATE_LIVE_STATE(I, MAX); - #else - UPDATE_LIVE_STATE(I, MAX); - #endif + #if USE_Z3_MAX + UPDATE_LIVE_STATE(Z3, MAX); + #elif HAS_Z3_MAX_STATE + COPY_LIVE_STATE(Z_MAX, Z3_MAX); #endif - - #if USE_J_MIN && !J_SPI_SENSORLESS - #if ENABLED(J_DUAL_ENDSTOPS) - UPDATE_LIVE_STATE(J, MIN); - #else - UPDATE_LIVE_STATE(J, MIN); - #endif + #if USE_Z4_MAX + UPDATE_LIVE_STATE(Z4, MAX); + #elif HAS_Z4_MAX_STATE + COPY_LIVE_STATE(Z_MAX, Z4_MAX); #endif - #if USE_J_MAX && !J_SPI_SENSORLESS - #if ENABLED(J_DUAL_ENDSTOPS) - UPDATE_LIVE_STATE(J, MAX); - #else - UPDATE_LIVE_STATE(J, MAX); - #endif + #if USE_I_MIN + UPDATE_LIVE_STATE(I, MIN); #endif - - #if USE_K_MIN && !K_SPI_SENSORLESS - #if ENABLED(K_DUAL_ENDSTOPS) - UPDATE_LIVE_STATE(K, MIN); - #else - UPDATE_LIVE_STATE(K, MIN); - #endif + #if USE_I_MAX + UPDATE_LIVE_STATE(I, MAX); #endif - - #if USE_K_MAX && !K_SPI_SENSORLESS - #if ENABLED(K_DUAL_ENDSTOPS) - UPDATE_LIVE_STATE(K, MAX); - #else - UPDATE_LIVE_STATE(K, MAX); - #endif + #if USE_J_MIN + UPDATE_LIVE_STATE(J, MIN); #endif - - #if USE_U_MIN && !U_SPI_SENSORLESS - #if ENABLED(U_DUAL_ENDSTOPS) - UPDATE_LIVE_STATE(U, MIN); - #else - UPDATE_LIVE_STATE(U, MIN); - #endif + #if USE_J_MAX + UPDATE_LIVE_STATE(J, MAX); #endif - - #if USE_U_MAX && !U_SPI_SENSORLESS - #if ENABLED(U_DUAL_ENDSTOPS) - UPDATE_LIVE_STATE(U, MAX); - #else - UPDATE_LIVE_STATE(U, MAX); - #endif + #if USE_K_MIN + UPDATE_LIVE_STATE(K, MIN); #endif - - #if USE_V_MIN && !V_SPI_SENSORLESS - #if ENABLED(V_DUAL_ENDSTOPS) - UPDATE_LIVE_STATE(V, MIN); - #else - UPDATE_LIVE_STATE(V, MIN); - #endif + #if USE_K_MAX + UPDATE_LIVE_STATE(K, MAX); #endif - #if USE_V_MAX && !V_SPI_SENSORLESS - #if ENABLED(O_DUAL_ENDSTOPS) - UPDATE_LIVE_STATE(V, MAX); - #else - UPDATE_LIVE_STATE(V, MAX); - #endif + #if USE_U_MIN + UPDATE_LIVE_STATE(U, MIN); #endif - - #if USE_W_MIN && !W_SPI_SENSORLESS - #if ENABLED(W_DUAL_ENDSTOPS) - UPDATE_LIVE_STATE(W, MIN); - #else - UPDATE_LIVE_STATE(W, MIN); - #endif + #if USE_U_MAX + UPDATE_LIVE_STATE(U, MAX); #endif - #if USE_W_MAX && !W_SPI_SENSORLESS - #if ENABLED(W_DUAL_ENDSTOPS) - UPDATE_LIVE_STATE(W, MAX); - #else - UPDATE_LIVE_STATE(W, MAX); - #endif + #if USE_V_MIN + UPDATE_LIVE_STATE(V, MIN); + #endif + #if USE_V_MAX + UPDATE_LIVE_STATE(V, MAX); + #endif + #if USE_W_MIN + UPDATE_LIVE_STATE(W, MIN); + #endif + #if USE_W_MAX + UPDATE_LIVE_STATE(W, MAX); #endif #if ENDSTOP_NOISE_THRESHOLD @@ -788,11 +710,11 @@ void Endstops::update() { #define TEST_ENDSTOP(ENDSTOP) (TEST(state(), ENDSTOP)) // Record endstop was hit - #define _ENDSTOP_HIT(AXIS, MINMAX) SBI(hit_state, _ENDSTOP(AXIS, MINMAX)) + #define _ENDSTOP_HIT(AXIS, MINMAX) SBI(hit_state, ES_ENUM(AXIS, MINMAX)) // Call the endstop triggered routine for single endstops #define PROCESS_ENDSTOP(AXIS, MINMAX) do { \ - if (TEST_ENDSTOP(_ENDSTOP(AXIS, MINMAX))) { \ + if (TEST_ENDSTOP(ES_ENUM(AXIS, MINMAX))) { \ _ENDSTOP_HIT(AXIS, MINMAX); \ planner.endstop_triggered(_AXIS(AXIS)); \ } \ @@ -801,7 +723,7 @@ void Endstops::update() { // Core Sensorless Homing needs to test an Extra Pin #define CORE_DIAG(QQ,A,MM) (CORE_IS_##QQ && A##_SENSORLESS && !A##_SPI_SENSORLESS && USE_##A##_##MM) #define PROCESS_CORE_ENDSTOP(A1,M1,A2,M2) do { \ - if (TEST_ENDSTOP(_ENDSTOP(A1,M1))) { \ + if (TEST_ENDSTOP(ES_ENUM(A1,M1))) { \ _ENDSTOP_HIT(A2,M2); \ planner.endstop_triggered(_AXIS(A2)); \ } \ @@ -809,7 +731,7 @@ void Endstops::update() { // Call the endstop triggered routine for dual endstops #define PROCESS_DUAL_ENDSTOP(A, MINMAX) do { \ - const byte dual_hit = TEST_ENDSTOP(_ENDSTOP(A, MINMAX)) | (TEST_ENDSTOP(_ENDSTOP(A##2, MINMAX)) << 1); \ + const byte dual_hit = TEST_ENDSTOP(ES_ENUM(A, MINMAX)) | (TEST_ENDSTOP(ES_ENUM(A##2, MINMAX)) << 1); \ if (dual_hit) { \ _ENDSTOP_HIT(A, MINMAX); \ /* if not performing home or if both endstops were triggered during homing... */ \ @@ -819,7 +741,7 @@ void Endstops::update() { }while(0) #define PROCESS_TRIPLE_ENDSTOP(A, MINMAX) do { \ - const byte triple_hit = TEST_ENDSTOP(_ENDSTOP(A, MINMAX)) | (TEST_ENDSTOP(_ENDSTOP(A##2, MINMAX)) << 1) | (TEST_ENDSTOP(_ENDSTOP(A##3, MINMAX)) << 2); \ + const byte triple_hit = TEST_ENDSTOP(ES_ENUM(A, MINMAX)) | (TEST_ENDSTOP(ES_ENUM(A##2, MINMAX)) << 1) | (TEST_ENDSTOP(ES_ENUM(A##3, MINMAX)) << 2); \ if (triple_hit) { \ _ENDSTOP_HIT(A, MINMAX); \ /* if not performing home or if both endstops were triggered during homing... */ \ @@ -829,7 +751,7 @@ void Endstops::update() { }while(0) #define PROCESS_QUAD_ENDSTOP(A, MINMAX) do { \ - const byte quad_hit = TEST_ENDSTOP(_ENDSTOP(A, MINMAX)) | (TEST_ENDSTOP(_ENDSTOP(A##2, MINMAX)) << 1) | (TEST_ENDSTOP(_ENDSTOP(A##3, MINMAX)) << 2) | (TEST_ENDSTOP(_ENDSTOP(A##4, MINMAX)) << 3); \ + const byte quad_hit = TEST_ENDSTOP(ES_ENUM(A, MINMAX)) | (TEST_ENDSTOP(ES_ENUM(A##2, MINMAX)) << 1) | (TEST_ENDSTOP(ES_ENUM(A##3, MINMAX)) << 2) | (TEST_ENDSTOP(ES_ENUM(A##4, MINMAX)) << 3); \ if (quad_hit) { \ _ENDSTOP_HIT(A, MINMAX); \ /* if not performing home or if both endstops were triggered during homing... */ \ @@ -876,7 +798,7 @@ void Endstops::update() { #if HAS_X_AXIS if (stepper.axis_is_moving(X_AXIS)) { if (!stepper.motor_direction(X_AXIS_HEAD)) { // -direction - #if USE_X_MIN || (X_SPI_SENSORLESS && X_HOME_TO_MIN) + #if HAS_X_MIN_STATE PROCESS_ENDSTOP_X(MIN); #if CORE_DIAG(XY, Y, MIN) PROCESS_CORE_ENDSTOP(Y,MIN,X,MIN); @@ -890,7 +812,7 @@ void Endstops::update() { #endif } else { // +direction - #if USE_X_MAX || (X_SPI_SENSORLESS && X_HOME_TO_MAX) + #if HAS_X_MAX_STATE PROCESS_ENDSTOP_X(MAX); #if CORE_DIAG(XY, Y, MIN) PROCESS_CORE_ENDSTOP(Y,MIN,X,MAX); @@ -909,7 +831,7 @@ void Endstops::update() { #if HAS_Y_AXIS if (stepper.axis_is_moving(Y_AXIS)) { if (!stepper.motor_direction(Y_AXIS_HEAD)) { // -direction - #if USE_Y_MIN || (Y_SPI_SENSORLESS && Y_HOME_TO_MIN) + #if HAS_Y_MIN_STATE PROCESS_ENDSTOP_Y(MIN); #if CORE_DIAG(XY, X, MIN) PROCESS_CORE_ENDSTOP(X,MIN,Y,MIN); @@ -923,7 +845,7 @@ void Endstops::update() { #endif } else { // +direction - #if USE_Y_MAX || (Y_SPI_SENSORLESS && Y_HOME_TO_MAX) + #if HAS_Y_MAX_STATE PROCESS_ENDSTOP_Y(MAX); #if CORE_DIAG(XY, X, MIN) PROCESS_CORE_ENDSTOP(X,MIN,Y,MAX); @@ -942,34 +864,34 @@ void Endstops::update() { #if HAS_Z_AXIS if (stepper.axis_is_moving(Z_AXIS)) { if (!stepper.motor_direction(Z_AXIS_HEAD)) { // Z -direction. Gantry down, bed up. - - #if USE_Z_MIN || (Z_SPI_SENSORLESS && Z_HOME_TO_MIN) - if ( TERN1(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, z_probe_enabled) - && TERN1(USE_Z_MIN_PROBE, !z_probe_enabled) - ) PROCESS_ENDSTOP_Z(MIN); - #if CORE_DIAG(XZ, X, MIN) - PROCESS_CORE_ENDSTOP(X,MIN,Z,MIN); - #elif CORE_DIAG(XZ, X, MAX) - PROCESS_CORE_ENDSTOP(X,MAX,Z,MIN); - #elif CORE_DIAG(YZ, Y, MIN) - PROCESS_CORE_ENDSTOP(Y,MIN,Z,MIN); - #elif CORE_DIAG(YZ, Y, MAX) - PROCESS_CORE_ENDSTOP(Y,MAX,Z,MIN); - #endif + #if HAS_Z_MIN_STATE + // If the Z_MIN_PIN is being used for the probe there's no + // separate Z_MIN endstop. But a Z endstop could be wired + // in series, so someone might find this useful. + if ( TERN1(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, z_probe_enabled) // When Z_MIN is the probe, the probe must be enabled + && TERN1(USE_Z_MIN_PROBE, !z_probe_enabled) // When Z_MIN isn't the probe, Z MIN is ignored while probing + ) { + PROCESS_ENDSTOP_Z(MIN); + #if CORE_DIAG(XZ, X, MIN) + PROCESS_CORE_ENDSTOP(X,MIN,Z,MIN); + #elif CORE_DIAG(XZ, X, MAX) + PROCESS_CORE_ENDSTOP(X,MAX,Z,MIN); + #elif CORE_DIAG(YZ, Y, MIN) + PROCESS_CORE_ENDSTOP(Y,MIN,Z,MIN); + #elif CORE_DIAG(YZ, Y, MAX) + PROCESS_CORE_ENDSTOP(Y,MAX,Z,MIN); + #endif + } #endif - // When closing the gap check the enabled probe + // When closing the gap use the probe trigger state #if USE_Z_MIN_PROBE if (z_probe_enabled) PROCESS_ENDSTOP(Z, MIN_PROBE); #endif } else { // Z +direction. Gantry up, bed down. - #if USE_Z_MAX || (Z_SPI_SENSORLESS && Z_HOME_TO_MAX) - #if ENABLED(Z_MULTI_ENDSTOPS) - PROCESS_ENDSTOP_Z(MAX); - #elif TERN1(USE_Z_MIN_PROBE, Z_MAX_PIN != Z_MIN_PROBE_PIN) // No probe or probe is Z_MIN || Probe is not Z_MAX - PROCESS_ENDSTOP(Z, MAX); - #endif + #if HAS_Z_MAX_STATE + PROCESS_ENDSTOP_Z(MAX); #if CORE_DIAG(XZ, X, MIN) PROCESS_CORE_ENDSTOP(X,MIN,Z,MAX); #elif CORE_DIAG(XZ, X, MAX) @@ -987,12 +909,12 @@ void Endstops::update() { #if HAS_I_AXIS if (stepper.axis_is_moving(I_AXIS)) { if (!stepper.motor_direction(I_AXIS_HEAD)) { // -direction - #if USE_I_MIN || (I_SPI_SENSORLESS && I_HOME_TO_MIN) + #if HAS_I_MIN_STATE PROCESS_ENDSTOP(I, MIN); #endif } else { // +direction - #if USE_I_MAX || (I_SPI_SENSORLESS && I_HOME_TO_MAX) + #if HAS_I_MAX_STATE PROCESS_ENDSTOP(I, MAX); #endif } @@ -1002,12 +924,12 @@ void Endstops::update() { #if HAS_J_AXIS if (stepper.axis_is_moving(J_AXIS)) { if (!stepper.motor_direction(J_AXIS_HEAD)) { // -direction - #if USE_J_MIN || (J_SPI_SENSORLESS && J_HOME_TO_MIN) + #if HAS_J_MIN_STATE PROCESS_ENDSTOP(J, MIN); #endif } else { // +direction - #if USE_J_MAX || (J_SPI_SENSORLESS && J_HOME_TO_MAX) + #if HAS_J_MAX_STATE PROCESS_ENDSTOP(J, MAX); #endif } @@ -1017,12 +939,12 @@ void Endstops::update() { #if HAS_K_AXIS if (stepper.axis_is_moving(K_AXIS)) { if (!stepper.motor_direction(K_AXIS_HEAD)) { // -direction - #if USE_K_MIN || (K_SPI_SENSORLESS && K_HOME_TO_MIN) + #if HAS_K_MIN_STATE PROCESS_ENDSTOP(K, MIN); #endif } else { // +direction - #if USE_K_MAX || (K_SPI_SENSORLESS && K_HOME_TO_MAX) + #if HAS_K_MAX_STATE PROCESS_ENDSTOP(K, MAX); #endif } @@ -1032,12 +954,12 @@ void Endstops::update() { #if HAS_U_AXIS if (stepper.axis_is_moving(U_AXIS)) { if (!stepper.motor_direction(U_AXIS_HEAD)) { // -direction - #if USE_U_MIN || (U_SPI_SENSORLESS && U_HOME_TO_MIN) + #if HAS_U_MIN_STATE PROCESS_ENDSTOP(U, MIN); #endif } else { // +direction - #if USE_U_MAX || (U_SPI_SENSORLESS && U_HOME_TO_MAX) + #if HAS_U_MAX_STATE PROCESS_ENDSTOP(U, MAX); #endif } @@ -1047,12 +969,12 @@ void Endstops::update() { #if HAS_V_AXIS if (stepper.axis_is_moving(V_AXIS)) { if (!stepper.motor_direction(V_AXIS_HEAD)) { // -direction - #if USE_V_MIN || (V_SPI_SENSORLESS && V_HOME_TO_MIN) + #if HAS_V_MIN_STATE PROCESS_ENDSTOP(V, MIN); #endif } else { // +direction - #if USE_V_MAX || (V_SPI_SENSORLESS && V_HOME_TO_MAX) + #if HAS_V_MAX_STATE PROCESS_ENDSTOP(V, MAX); #endif } @@ -1062,17 +984,18 @@ void Endstops::update() { #if HAS_W_AXIS if (stepper.axis_is_moving(W_AXIS)) { if (!stepper.motor_direction(W_AXIS_HEAD)) { // -direction - #if USE_W_MIN || (W_SPI_SENSORLESS && W_HOME_TO_MIN) + #if HAS_W_MIN_STATE PROCESS_ENDSTOP(W, MIN); #endif } else { // +direction - #if USE_W_MAX || (W_SPI_SENSORLESS && W_HOME_TO_MAX) + #if HAS_W_MAX_STATE PROCESS_ENDSTOP(W, MAX); #endif } } #endif // HAS_W_AXIS + } // Endstops::update() #if ENABLED(SPI_ENDSTOPS) @@ -1080,39 +1003,67 @@ void Endstops::update() { // Called from idle() to read Trinamic stall states bool Endstops::tmc_spi_homing_check() { bool hit = false; + #if X_SPI_SENSORLESS - if (tmc_spi_homing.x && (stepperX.test_stall_status() - #if Y_SPI_SENSORLESS && ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) - || stepperY.test_stall_status() - #elif Z_SPI_SENSORLESS && CORE_IS_XZ - || stepperZ.test_stall_status() + if (tmc_spi_homing.x) { + #if ENABLED(DUAL_X_CARRIAGE) + const bool ismin = X_MIN_TEST(); #endif - )) { SBI(live_state, X_ENDSTOP); hit = true; } - #if ENABLED(X_DUAL_ENDSTOPS) - if (tmc_spi_homing.x && stepperX2.test_stall_status()) { SBI(live_state, X2_ENDSTOP); hit = true; } - #endif + const bool xhit = ( + #if ENABLED(DUAL_X_CARRIAGE) + ismin ? stepperX.test_stall_status() : stepperX2.test_stall_status() + #else + stepperX.test_stall_status() + #if Y_SPI_SENSORLESS && ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) + || stepperY.test_stall_status() + #elif Z_SPI_SENSORLESS && CORE_IS_XZ + || stepperZ.test_stall_status() + #endif + #endif + ); + if (xhit) { SBI(live_state, TERN(DUAL_X_CARRIAGE, ismin ? X_MIN : X_MAX, X_ENDSTOP)); hit = true; } + #if ENABLED(X_DUAL_ENDSTOPS) + if (stepperX2.test_stall_status()) { SBI(live_state, X2_ENDSTOP); hit = true; } + #endif + } #endif + #if Y_SPI_SENSORLESS - if (tmc_spi_homing.y && (stepperY.test_stall_status() - #if X_SPI_SENSORLESS && ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) - || stepperX.test_stall_status() - #elif Z_SPI_SENSORLESS && CORE_IS_YZ - || stepperZ.test_stall_status() + if (tmc_spi_homing.y) { + if (stepperY.test_stall_status() + #if X_SPI_SENSORLESS && ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) + || stepperX.test_stall_status() + #elif Z_SPI_SENSORLESS && CORE_IS_YZ + || stepperZ.test_stall_status() + #endif + ) { SBI(live_state, Y_ENDSTOP); hit = true; } + #if ENABLED(Y_DUAL_ENDSTOPS) + if (stepperY2.test_stall_status()) { SBI(live_state, Y2_ENDSTOP); hit = true; } #endif - )) { SBI(live_state, Y_ENDSTOP); hit = true; } - #if ENABLED(Y_DUAL_ENDSTOPS) - if (tmc_spi_homing.y && stepperY2.test_stall_status()) { SBI(live_state, Y2_ENDSTOP); hit = true; } - #endif + } #endif + #if Z_SPI_SENSORLESS - if (tmc_spi_homing.z && (stepperZ.test_stall_status() - #if X_SPI_SENSORLESS && CORE_IS_XZ - || stepperX.test_stall_status() - #elif Y_SPI_SENSORLESS && CORE_IS_YZ - || stepperY.test_stall_status() + if (tmc_spi_homing.z) { + if (stepperZ.test_stall_status() + #if X_SPI_SENSORLESS && CORE_IS_XZ + || stepperX.test_stall_status() + #elif Y_SPI_SENSORLESS && CORE_IS_YZ + || stepperY.test_stall_status() + #endif + ) { SBI(live_state, Z_ENDSTOP); hit = true; } + #if ENABLED(Z_MULTI_ENDSTOPS) + if (stepperZ2.test_stall_status()) { SBI(live_state, Z2_ENDSTOP); hit = true; } + #if NUM_Z_STEPPERS >= 3 + if (stepperZ3.test_stall_status()) { SBI(live_state, Z3_ENDSTOP); hit = true; } + #if NUM_Z_STEPPERS >= 4 + if (stepperZ4.test_stall_status()) { SBI(live_state, Z4_ENDSTOP); hit = true; } + #endif + #endif #endif - )) { SBI(live_state, Z_ENDSTOP); hit = true; } + } #endif + #if I_SPI_SENSORLESS if (tmc_spi_homing.i && stepperI.test_stall_status()) { SBI(live_state, I_ENDSTOP); hit = true; } #endif @@ -1147,6 +1098,15 @@ void Endstops::update() { CBI(live_state, Y2_ENDSTOP); #endif TERN_(Z_SPI_SENSORLESS, CBI(live_state, Z_ENDSTOP)); + #if ALL(Z_SPI_SENSORLESS, Z_MULTI_ENDSTOPS) + CBI(live_state, Z2_ENDSTOP); + #if NUM_Z_STEPPERS >= 3 + CBI(live_state, Z3_ENDSTOP); + #if NUM_Z_STEPPERS >= 4 + CBI(live_state, Z4_ENDSTOP); + #endif + #endif + #endif TERN_(I_SPI_SENSORLESS, CBI(live_state, I_ENDSTOP)); TERN_(J_SPI_SENSORLESS, CBI(live_state, J_ENDSTOP)); TERN_(K_SPI_SENSORLESS, CBI(live_state, K_ENDSTOP)); @@ -1190,7 +1150,7 @@ void Endstops::update() { #if USE_Y_MAX ES_GET_STATE(Y_MAX); #endif - #if HAS_Z_MIN_PIN + #if USE_Z_MIN ES_GET_STATE(Z_MIN); #endif #if USE_Z_MAX @@ -1266,7 +1226,7 @@ void Endstops::update() { ES_GET_STATE(W_MIN); #endif - uint16_t endstop_change = live_state_local ^ old_live_state_local; + const uint16_t endstop_change = live_state_local ^ old_live_state_local; #define ES_REPORT_CHANGE(S) if (TEST(endstop_change, S)) SERIAL_ECHOPGM(" " STRINGIFY(S) ":", TEST(live_state_local, S)) if (endstop_change) { @@ -1371,52 +1331,80 @@ void Endstops::update() { /** * Change TMC driver currents to N##_CURRENT_HOME, saving the current configuration of each. */ - void Endstops::set_homing_current(const bool onoff) { - #define HAS_CURRENT_HOME(N) (defined(N##_CURRENT_HOME) && N##_CURRENT_HOME != N##_CURRENT) - #define HAS_DELTA_X_CURRENT (ENABLED(DELTA) && HAS_CURRENT_HOME(X)) - #define HAS_DELTA_Y_CURRENT (ENABLED(DELTA) && HAS_CURRENT_HOME(Y)) - #if HAS_DELTA_X_CURRENT || HAS_DELTA_Y_CURRENT || HAS_CURRENT_HOME(Z) + void Endstops::set_z_sensorless_current(const bool onoff) { + #if ENABLED(DELTA) && HAS_CURRENT_HOME(X) + #define HAS_DELTA_X_CURRENT 1 + #endif + #if ENABLED(DELTA) && HAS_CURRENT_HOME(Y) + #define HAS_DELTA_Y_CURRENT 1 + #endif + #if HAS_DELTA_X_CURRENT || HAS_DELTA_Y_CURRENT || HAS_CURRENT_HOME(Z) || HAS_CURRENT_HOME(Z2) || HAS_CURRENT_HOME(Z3) || HAS_CURRENT_HOME(Z4) #if HAS_DELTA_X_CURRENT - static int16_t saved_current_x; + static int16_t saved_current_X; #endif #if HAS_DELTA_Y_CURRENT - static int16_t saved_current_y; + static int16_t saved_current_Y; #endif #if HAS_CURRENT_HOME(Z) - static int16_t saved_current_z; + static int16_t saved_current_Z; #endif - auto debug_current_on = [](PGM_P const s, const int16_t a, const int16_t b) { - if (DEBUGGING(LEVELING)) { DEBUG_ECHOPGM_P(s); DEBUG_ECHOLNPGM(" current: ", a, " -> ", b); } - }; + #if HAS_CURRENT_HOME(Z2) + static int16_t saved_current_Z2; + #endif + #if HAS_CURRENT_HOME(Z3) + static int16_t saved_current_Z3; + #endif + #if HAS_CURRENT_HOME(Z4) + static int16_t saved_current_Z4; + #endif + + #if ENABLED(DEBUG_LEVELING_FEATURE) + auto debug_current = [](FSTR_P const s, const int16_t a, const int16_t b) { + if (DEBUGGING(LEVELING)) { DEBUG_ECHOF(s); DEBUG_ECHOLNPGM(" current: ", a, " -> ", b); } + }; + #else + #define debug_current(...) + #endif + + #define _SAVE_SET_CURRENT(A) \ + saved_current_##A = stepper##A.getMilliamps(); \ + stepper##A.rms_current(A##_CURRENT_HOME); \ + debug_current(F(STR_##A), saved_current_##A, A##_CURRENT_HOME) + + #define _RESTORE_CURRENT(A) \ + stepper##A.rms_current(saved_current_##A); \ + debug_current(F(STR_##A), saved_current_##A, A##_CURRENT_HOME) + if (onoff) { - #if HAS_DELTA_X_CURRENT - saved_current_x = stepperX.getMilliamps(); - stepperX.rms_current(X_CURRENT_HOME); - debug_current_on(PSTR("X"), saved_current_x, X_CURRENT_HOME); + TERN_(HAS_DELTA_X_CURRENT, _SAVE_SET_CURRENT(X)); + TERN_(HAS_DELTA_Y_CURRENT, _SAVE_SET_CURRENT(Y)); + #if HAS_CURRENT_HOME(Z) + _SAVE_SET_CURRENT(Z); #endif - #if HAS_DELTA_Y_CURRENT - saved_current_y = stepperY.getMilliamps(); - stepperY.rms_current(Y_CURRENT_HOME); - debug_current_on(PSTR("Y"), saved_current_y, Y_CURRENT_HOME); + #if HAS_CURRENT_HOME(Z2) + _SAVE_SET_CURRENT(Z2); #endif - #if HAS_CURRENT_HOME(Z) - saved_current_z = stepperZ.getMilliamps(); - stepperZ.rms_current(Z_CURRENT_HOME); - debug_current_on(PSTR("Z"), saved_current_z, Z_CURRENT_HOME); + #if HAS_CURRENT_HOME(Z3) + _SAVE_SET_CURRENT(Z3); + #endif + #if HAS_CURRENT_HOME(Z4) + _SAVE_SET_CURRENT(Z4); #endif } else { - #if HAS_DELTA_X_CURRENT - stepperX.rms_current(saved_current_x); - debug_current_on(PSTR("X"), X_CURRENT_HOME, saved_current_x); + TERN_(HAS_DELTA_X_CURRENT, _RESTORE_CURRENT(X)); + TERN_(HAS_DELTA_Y_CURRENT, _RESTORE_CURRENT(Y)); + #if HAS_CURRENT_HOME(Z) + _RESTORE_CURRENT(Z); #endif - #if HAS_DELTA_Y_CURRENT - stepperY.rms_current(saved_current_y); - debug_current_on(PSTR("Y"), Y_CURRENT_HOME, saved_current_y); + #if HAS_CURRENT_HOME(Z2) + _RESTORE_CURRENT(Z2); #endif - #if HAS_CURRENT_HOME(Z) - stepperZ.rms_current(saved_current_z); - debug_current_on(PSTR("Z"), Z_CURRENT_HOME, saved_current_z); + #if HAS_CURRENT_HOME(Z3) + _RESTORE_CURRENT(Z3); + #endif + #if HAS_CURRENT_HOME(Z4) + _RESTORE_CURRENT(Z4); #endif } diff --git a/Marlin/src/module/endstops.h b/Marlin/src/module/endstops.h index d348e58ab706..bbdb0bc77bf6 100644 --- a/Marlin/src/module/endstops.h +++ b/Marlin/src/module/endstops.h @@ -32,7 +32,12 @@ #define ES_ENUM(A,M) _ES_ENUM(A,M) #define _ES_ITEM(N) N, -#define ES_ITEM(K,N) TERN_(K,DEFER4(_ES_ITEM)(N)) +#define ES_ITEM(K,N) TERN(K,_ES_ITEM,_IF_1_ELSE)(N) + +#define _ESN_ITEM(K,A,M) ES_ITEM(K,ES_ENUM(A,M)) +#define ES_MINMAX(A) ES_ITEM(HAS_##A##_MIN_STATE, ES_ENUM(A,MIN)) ES_ITEM(HAS_##A##_MAX_STATE, ES_ENUM(A,MAX)) + +#define HAS_CURRENT_HOME(N) ((N##_CURRENT_HOME > 0) && (N##_CURRENT_HOME != N##_CURRENT)) /** * Basic Endstop Flag Bits: @@ -54,90 +59,71 @@ */ enum EndstopEnum : char { // Common XYZ (ABC) endstops. - ES_ITEM(USE_X_MIN, X_MIN) ES_ITEM(USE_X_MAX, X_MAX) - ES_ITEM(USE_Y_MIN, Y_MIN) ES_ITEM(USE_Y_MAX, Y_MAX) - ES_ITEM(USE_Z_MIN, Z_MIN) ES_ITEM(USE_Z_MAX, Z_MAX) - ES_ITEM(USE_I_MIN, I_MIN) ES_ITEM(USE_I_MAX, I_MAX) - ES_ITEM(USE_J_MIN, J_MIN) ES_ITEM(USE_J_MAX, J_MAX) - ES_ITEM(USE_K_MIN, K_MIN) ES_ITEM(USE_K_MAX, K_MAX) - ES_ITEM(USE_U_MIN, U_MIN) ES_ITEM(USE_U_MAX, U_MAX) - ES_ITEM(USE_V_MIN, V_MIN) ES_ITEM(USE_V_MAX, V_MAX) - ES_ITEM(USE_W_MIN, W_MIN) ES_ITEM(USE_W_MAX, W_MAX) + ES_MINMAX(X) ES_MINMAX(Y) ES_MINMAX(Z) + ES_MINMAX(I) ES_MINMAX(J) ES_MINMAX(K) + ES_MINMAX(U) ES_MINMAX(V) ES_MINMAX(W) // Extra Endstops for XYZ - #if ENABLED(X_DUAL_ENDSTOPS) - ES_ITEM(USE_X_MIN, X2_MIN) ES_ITEM(USE_X_MAX, X2_MAX) - #endif - #if ENABLED(Y_DUAL_ENDSTOPS) - ES_ITEM(USE_Y_MIN, Y2_MIN) ES_ITEM(USE_Y_MAX, Y2_MAX) - #endif - #if ENABLED(Z_MULTI_ENDSTOPS) - ES_ITEM(USE_Z_MIN, Z2_MIN) ES_ITEM(USE_Z_MAX, Z2_MAX) - #if NUM_Z_STEPPERS >= 3 - ES_ITEM(USE_Z_MIN, Z3_MIN) ES_ITEM(USE_Z_MAX, Z3_MAX) - #if NUM_Z_STEPPERS >= 4 - ES_ITEM(USE_Z_MIN, Z4_MIN) ES_ITEM(USE_Z_MAX, Z4_MAX) - #endif - #endif - #endif + ES_MINMAX(X2) ES_MINMAX(Y2) ES_MINMAX(Z2) ES_MINMAX(Z3) ES_MINMAX(Z4) // Bed Probe state is distinct or shared with Z_MIN (i.e., when the probe is the only Z endstop) - #if !HAS_DELTA_SENSORLESS_PROBING - ES_ITEM(HAS_BED_PROBE, Z_MIN_PROBE IF_DISABLED(USE_Z_MIN_PROBE, = Z_MIN)) - #endif + ES_ITEM(HAS_Z_PROBE_STATE, Z_MIN_PROBE IF_DISABLED(USE_Z_MIN_PROBE, = Z_MIN)) // The total number of states NUM_ENDSTOP_STATES - // Endstop aliased to MIN or MAX - #if HAS_X_ENDSTOP + // Endstop aliases + #if HAS_X_STATE , X_ENDSTOP = TERN(X_HOME_TO_MAX, X_MAX, X_MIN) - #if ENABLED(X_DUAL_ENDSTOPS) - , X2_ENDSTOP = TERN(X_HOME_TO_MAX, X2_MAX, X2_MIN) - #endif #endif - #if HAS_Y_ENDSTOP + #if HAS_X2_STATE + , X2_ENDSTOP = TERN(X_HOME_TO_MAX, X2_MAX, X2_MIN) + #endif + #if HAS_Y_STATE , Y_ENDSTOP = TERN(Y_HOME_TO_MAX, Y_MAX, Y_MIN) - #if ENABLED(Y_DUAL_ENDSTOPS) - , Y2_ENDSTOP = TERN(Y_HOME_TO_MAX, Y2_MAX, Y2_MIN) - #endif #endif + #if HAS_Y2_STATE + , Y2_ENDSTOP = TERN(Y_HOME_TO_MAX, Y2_MAX, Y2_MIN) + #endif + #if HOMING_Z_WITH_PROBE - , Z_ENDSTOP = Z_MIN_PROBE - #elif HAS_Z_ENDSTOP + , Z_ENDSTOP = Z_MIN_PROBE // "Z" endstop alias when homing with the probe + #elif HAS_Z_STATE , Z_ENDSTOP = TERN(Z_HOME_TO_MAX, Z_MAX, Z_MIN) - #if ENABLED(Z_MULTI_ENDSTOPS) - , Z2_ENDSTOP = TERN(Z_HOME_TO_MAX, Z2_MAX, Z2_MIN) - #if NUM_Z_STEPPERS >= 3 - , Z3_ENDSTOP = TERN(Z_HOME_TO_MAX, Z3_MAX, Z3_MIN) - #if NUM_Z_STEPPERS >= 4 - , Z4_ENDSTOP = TERN(Z_HOME_TO_MAX, Z4_MAX, Z4_MIN) - #endif - #endif - #endif #endif - #if HAS_I_ENDSTOP + #if HAS_Z2_STATE + , Z2_ENDSTOP = TERN(Z_HOME_TO_MAX, Z2_MAX, Z2_MIN) + #endif + #if HAS_Z3_STATE + , Z3_ENDSTOP = TERN(Z_HOME_TO_MAX, Z3_MAX, Z3_MIN) + #endif + #if HAS_Z4_STATE + , Z4_ENDSTOP = TERN(Z_HOME_TO_MAX, Z4_MAX, Z4_MIN) + #endif + #if HAS_I_STATE , I_ENDSTOP = TERN(I_HOME_TO_MAX, I_MAX, I_MIN) #endif - #if HAS_J_ENDSTOP + #if HAS_J_STATE , J_ENDSTOP = TERN(J_HOME_TO_MAX, J_MAX, J_MIN) #endif - #if HAS_K_ENDSTOP + #if HAS_K_STATE , K_ENDSTOP = TERN(K_HOME_TO_MAX, K_MAX, K_MIN) #endif - #if HAS_U_ENDSTOP + #if HAS_U_STATE , U_ENDSTOP = TERN(U_HOME_TO_MAX, U_MAX, U_MIN) #endif - #if HAS_V_ENDSTOP + #if HAS_V_STATE , V_ENDSTOP = TERN(V_HOME_TO_MAX, V_MAX, V_MIN) #endif - #if HAS_W_ENDSTOP + #if HAS_W_STATE , W_ENDSTOP = TERN(W_HOME_TO_MAX, W_MAX, W_MIN) #endif }; #undef _ES_ITEM #undef ES_ITEM +#undef _ESN_ITEM +#undef ES_MINMAX class Endstops { public: @@ -288,7 +274,7 @@ class Endstops { public: // Basic functions for Sensorless Homing #if USE_SENSORLESS - static void set_homing_current(const bool onoff); + static void set_z_sensorless_current(const bool onoff); #endif }; diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index cd768d9e40fd..80729df759da 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -1718,38 +1718,36 @@ void prepare_line_to_destination() { #endif } - #if ENABLED(SPI_ENDSTOPS) - switch (axis) { - #if HAS_X_AXIS - case X_AXIS: if (ENABLED(X_SPI_SENSORLESS)) endstops.tmc_spi_homing.x = true; break; - #endif - #if HAS_Y_AXIS - case Y_AXIS: if (ENABLED(Y_SPI_SENSORLESS)) endstops.tmc_spi_homing.y = true; break; - #endif - #if HAS_Z_AXIS - case Z_AXIS: if (ENABLED(Z_SPI_SENSORLESS)) endstops.tmc_spi_homing.z = true; break; - #endif - #if HAS_I_AXIS - case I_AXIS: if (ENABLED(I_SPI_SENSORLESS)) endstops.tmc_spi_homing.i = true; break; - #endif - #if HAS_J_AXIS - case J_AXIS: if (ENABLED(J_SPI_SENSORLESS)) endstops.tmc_spi_homing.j = true; break; - #endif - #if HAS_K_AXIS - case K_AXIS: if (ENABLED(K_SPI_SENSORLESS)) endstops.tmc_spi_homing.k = true; break; - #endif - #if HAS_U_AXIS - case U_AXIS: if (ENABLED(U_SPI_SENSORLESS)) endstops.tmc_spi_homing.u = true; break; - #endif - #if HAS_V_AXIS - case V_AXIS: if (ENABLED(V_SPI_SENSORLESS)) endstops.tmc_spi_homing.v = true; break; - #endif - #if HAS_W_AXIS - case W_AXIS: if (ENABLED(W_SPI_SENSORLESS)) endstops.tmc_spi_homing.w = true; break; - #endif - default: break; - } - #endif + switch (axis) { + #if X_SPI_SENSORLESS + case X_AXIS: endstops.tmc_spi_homing.x = true; break; + #endif + #if Y_SPI_SENSORLESS + case Y_AXIS: endstops.tmc_spi_homing.y = true; break; + #endif + #if Z_SPI_SENSORLESS + case Z_AXIS: endstops.tmc_spi_homing.z = true; break; + #endif + #if I_SPI_SENSORLESS + case I_AXIS: endstops.tmc_spi_homing.i = true; break; + #endif + #if J_SPI_SENSORLESS + case J_AXIS: endstops.tmc_spi_homing.j = true; break; + #endif + #if K_SPI_SENSORLESS + case K_AXIS: endstops.tmc_spi_homing.k = true; break; + #endif + #if U_SPI_SENSORLESS + case U_AXIS: endstops.tmc_spi_homing.u = true; break; + #endif + #if V_SPI_SENSORLESS + case V_AXIS: endstops.tmc_spi_homing.v = true; break; + #endif + #if W_SPI_SENSORLESS + case W_AXIS: endstops.tmc_spi_homing.w = true; break; + #endif + default: break; + } TERN_(IMPROVE_HOMING_RELIABILITY, sg_guard_period = millis() + default_sg_guard_duration); @@ -1814,38 +1812,36 @@ void prepare_line_to_destination() { #endif } - #if ENABLED(SPI_ENDSTOPS) - switch (axis) { - #if HAS_X_AXIS - case X_AXIS: if (ENABLED(X_SPI_SENSORLESS)) endstops.tmc_spi_homing.x = false; break; - #endif - #if HAS_Y_AXIS - case Y_AXIS: if (ENABLED(Y_SPI_SENSORLESS)) endstops.tmc_spi_homing.y = false; break; - #endif - #if HAS_Z_AXIS - case Z_AXIS: if (ENABLED(Z_SPI_SENSORLESS)) endstops.tmc_spi_homing.z = false; break; - #endif - #if HAS_I_AXIS - case I_AXIS: if (ENABLED(I_SPI_SENSORLESS)) endstops.tmc_spi_homing.i = false; break; - #endif - #if HAS_J_AXIS - case J_AXIS: if (ENABLED(J_SPI_SENSORLESS)) endstops.tmc_spi_homing.j = false; break; - #endif - #if HAS_K_AXIS - case K_AXIS: if (ENABLED(K_SPI_SENSORLESS)) endstops.tmc_spi_homing.k = false; break; - #endif - #if HAS_U_AXIS - case U_AXIS: if (ENABLED(U_SPI_SENSORLESS)) endstops.tmc_spi_homing.u = false; break; - #endif - #if HAS_V_AXIS - case V_AXIS: if (ENABLED(V_SPI_SENSORLESS)) endstops.tmc_spi_homing.v = false; break; - #endif - #if HAS_W_AXIS - case W_AXIS: if (ENABLED(W_SPI_SENSORLESS)) endstops.tmc_spi_homing.w = false; break; - #endif - default: break; - } - #endif + switch (axis) { + #if X_SPI_SENSORLESS + case X_AXIS: endstops.tmc_spi_homing.x = false; break; + #endif + #if Y_SPI_SENSORLESS + case Y_AXIS: endstops.tmc_spi_homing.y = false; break; + #endif + #if Z_SPI_SENSORLESS + case Z_AXIS: endstops.tmc_spi_homing.z = false; break; + #endif + #if I_SPI_SENSORLESS + case I_AXIS: endstops.tmc_spi_homing.i = false; break; + #endif + #if J_SPI_SENSORLESS + case J_AXIS: endstops.tmc_spi_homing.j = false; break; + #endif + #if K_SPI_SENSORLESS + case K_AXIS: endstops.tmc_spi_homing.k = false; break; + #endif + #if U_SPI_SENSORLESS + case U_AXIS: endstops.tmc_spi_homing.u = false; break; + #endif + #if V_SPI_SENSORLESS + case V_AXIS: endstops.tmc_spi_homing.v = false; break; + #endif + #if W_SPI_SENSORLESS + case W_AXIS: endstops.tmc_spi_homing.w = false; break; + #endif + default: break; + } } #endif // SENSORLESS_HOMING @@ -2118,7 +2114,7 @@ void prepare_line_to_destination() { // Only Z homing (with probe) is permitted if (axis != Z_AXIS) { BUZZ(100, 880); return; } #else - #define _CAN_HOME(A) (axis == _AXIS(A) && (ANY(A##_SPI_SENSORLESS, HAS_##A##_ENDSTOP) || TERN0(HOMING_Z_WITH_PROBE, _AXIS(A) == Z_AXIS))) + #define _CAN_HOME(A) (axis == _AXIS(A) && (ANY(A##_SPI_SENSORLESS, HAS_##A##_STATE) || TERN0(HOMING_Z_WITH_PROBE, _AXIS(A) == Z_AXIS))) #define _ANDCANT(N) && !_CAN_HOME(N) if (true MAIN_AXIS_MAP(_ANDCANT)) return; #endif diff --git a/Marlin/src/module/probe.cpp b/Marlin/src/module/probe.cpp index 8c13da36f99f..68fcfd00e0a2 100644 --- a/Marlin/src/module/probe.cpp +++ b/Marlin/src/module/probe.cpp @@ -610,8 +610,19 @@ bool Probe::probe_down_to_z(const_float_t z, const_feedRate_t fr_mm_s) { if (test_sensitivity.x) stealth_states.x = tmc_enable_stallguard(stepperX); // Delta watches all DIAG pins for a stall if (test_sensitivity.y) stealth_states.y = tmc_enable_stallguard(stepperY); #endif - if (test_sensitivity.z) stealth_states.z = tmc_enable_stallguard(stepperZ); // All machines will check Z-DIAG for stall - endstops.set_homing_current(true); // The "homing" current also applies to probing + if (test_sensitivity.z) { + stealth_states.z = tmc_enable_stallguard(stepperZ); // All machines will check Z-DIAG for stall + #if ENABLED(Z_MULTI_ENDSTOPS) + stealth_states.z2 = tmc_enable_stallguard(stepperZ2); + #if NUM_Z_STEPPERS >= 3 + stealth_states.z3 = tmc_enable_stallguard(stepperZ3); + #if NUM_Z_STEPPERS >= 4 + stealth_states.z4 = tmc_enable_stallguard(stepperZ4); + #endif + #endif + #endif + } + endstops.set_z_sensorless_current(true); // The "homing" current also applies to probing endstops.enable(true); #endif // SENSORLESS_PROBING @@ -643,9 +654,20 @@ bool Probe::probe_down_to_z(const_float_t z, const_feedRate_t fr_mm_s) { if (test_sensitivity.x) tmc_disable_stallguard(stepperX, stealth_states.x); if (test_sensitivity.y) tmc_disable_stallguard(stepperY, stealth_states.y); #endif - if (test_sensitivity.z) tmc_disable_stallguard(stepperZ, stealth_states.z); - endstops.set_homing_current(false); - #endif + if (test_sensitivity.z) { + tmc_disable_stallguard(stepperZ, stealth_states.z); + #if ENABLED(Z_MULTI_ENDSTOPS) + tmc_disable_stallguard(stepperZ2, stealth_states.z2); + #if NUM_Z_STEPPERS >= 3 + tmc_disable_stallguard(stepperZ3, stealth_states.z3); + #if NUM_Z_STEPPERS >= 4 + tmc_disable_stallguard(stepperZ4, stealth_states.z4); + #endif + #endif + #endif + } + endstops.set_z_sensorless_current(false); + #endif // SENSORLESS_PROBING #if ENABLED(BLTOUCH) if (probe_triggered && !bltouch.high_speed_mode && bltouch.stow()) diff --git a/buildroot/tests/BIGTREE_BTT002 b/buildroot/tests/BIGTREE_BTT002 index 7288c5ef5260..5398d30feae9 100755 --- a/buildroot/tests/BIGTREE_BTT002 +++ b/buildroot/tests/BIGTREE_BTT002 @@ -12,8 +12,8 @@ set -e restore_configs opt_set MOTHERBOARD BOARD_BTT_BTT002_V1_0 \ SERIAL_PORT 1 \ - X_DRIVER_TYPE TMC2209 \ - Y_DRIVER_TYPE TMC2130 + X_DRIVER_TYPE TMC2209 Y_DRIVER_TYPE TMC2130 +opt_enable SENSORLESS_HOMING X_STALL_SENSITIVITY Y_STALL_SENSITIVITY SPI_ENDSTOPS exec_test $1 $2 "BigTreeTech BTT002 Default Configuration plus TMC steppers" "$3" # diff --git a/buildroot/tests/FYSETC_F6 b/buildroot/tests/FYSETC_F6 index 314e207c5806..713408b550e2 100755 --- a/buildroot/tests/FYSETC_F6 +++ b/buildroot/tests/FYSETC_F6 @@ -50,9 +50,16 @@ opt_set MOTHERBOARD BOARD_FYSETC_F6_13 \ opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER \ MARLIN_BRICKOUT MARLIN_INVADERS MARLIN_SNAKE \ MONITOR_DRIVER_STATUS STEALTHCHOP_XY STEALTHCHOP_Z STEALTHCHOP_E HYBRID_THRESHOLD \ - SENSORLESS_HOMING TMC_DEBUG M114_DETAIL + SENSORLESS_HOMING X_STALL_SENSITIVITY Y_STALL_SENSITIVITY TMC_DEBUG M114_DETAIL exec_test $1 $2 "Mixed TMC | Sensorless | RRDFGSC | Games" "$3" +# +# Delta Config (FLSUN AC because it's complex) +# +use_example_configs delta/FLSUN/auto_calibrate +opt_set MOTHERBOARD BOARD_FYSETC_F6_13 +exec_test $1 $2 "RAMPS 1.3 | DELTA | FLSUN AC Config" "$3" + # # SCARA with Mixed TMC # @@ -64,7 +71,7 @@ opt_set MOTHERBOARD BOARD_FYSETC_F6_13 \ X_HARDWARE_SERIAL Serial2 opt_enable FIX_MOUNTED_PROBE AUTO_BED_LEVELING_BILINEAR PAUSE_BEFORE_DEPLOY_STOW \ FYSETC_242_OLED_12864 EEPROM_SETTINGS EEPROM_CHITCHAT M114_DETAIL Z_SAFE_HOMING \ - STEALTHCHOP_XY STEALTHCHOP_Z STEALTHCHOP_E HYBRID_THRESHOLD SENSORLESS_HOMING EDGE_STEPPING + STEALTHCHOP_XY STEALTHCHOP_Z STEALTHCHOP_E HYBRID_THRESHOLD SENSORLESS_HOMING X_STALL_SENSITIVITY Y_STALL_SENSITIVITY EDGE_STEPPING exec_test $1 $2 "SCARA | Mixed TMC | EEPROM" "$3" # clean up diff --git a/buildroot/tests/LPC1769 b/buildroot/tests/LPC1769 index a7348bffe99c..9987d155adeb 100755 --- a/buildroot/tests/LPC1769 +++ b/buildroot/tests/LPC1769 @@ -53,14 +53,15 @@ opt_set MOTHERBOARD BOARD_COHESION3D_REMIX \ HOMING_FEEDRATE_MM_M '{ (50*60), (50*60), (4*60), (50*60) }' \ HOMING_BUMP_MM '{ 0, 0, 0, 0 }' HOMING_BUMP_DIVISOR '{ 1, 1, 1, 1 }' \ NOZZLE_TO_PROBE_OFFSET '{ 0, 0, 0, 0 }' \ - I_MIN_PIN P1_25 + I_MIN_PIN P1_25 \ + X_CURRENT_HOME 750 Y_CURRENT_HOME 750 Z_CURRENT_HOME 750 opt_enable AUTO_BED_LEVELING_BILINEAR EEPROM_SETTINGS EEPROM_CHITCHAT MECHANICAL_GANTRY_CALIBRATION \ TMC_USE_SW_SPI MONITOR_DRIVER_STATUS STEALTHCHOP_XY STEALTHCHOP_Z HYBRID_THRESHOLD \ - SENSORLESS_PROBING Z_SAFE_HOMING X_STALL_SENSITIVITY Y_STALL_SENSITIVITY Z_STALL_SENSITIVITY TMC_DEBUG \ + SENSORLESS_PROBING SENSORLESS_HOMING Z_SAFE_HOMING X_STALL_SENSITIVITY Y_STALL_SENSITIVITY Z_STALL_SENSITIVITY TMC_DEBUG \ AXIS4_ROTATES I_MIN_POS I_MAX_POS I_HOME_DIR I_ENABLE_ON INVERT_I_DIR \ EXPERIMENTAL_I2CBUS opt_disable PSU_CONTROL Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN -exec_test $1 $2 "Cohesion3D Remix DELTA + ABL Bilinear + EEPROM + SENSORLESS_PROBING + I Axis" "$3" +exec_test $1 $2 "Cohesion3D Remix DELTA | ABL Bilinear | EEPROM | Sensorless Homing/Probing | I Axis" "$3" # clean up restore_configs diff --git a/buildroot/tests/SAMD21_minitronics20 b/buildroot/tests/SAMD21_minitronics20 index f4a75afafea7..ae9fa55ea42a 100755 --- a/buildroot/tests/SAMD21_minitronics20 +++ b/buildroot/tests/SAMD21_minitronics20 @@ -25,8 +25,7 @@ opt_enable ENDSTOP_INTERRUPTS_FEATURE BLTOUCH Z_MIN_PROBE_REPEATABILITY_TEST \ LONG_FILENAME_HOST_SUPPORT CUSTOM_FIRMWARE_UPLOAD M20_TIMESTAMP_SUPPORT \ SCROLL_LONG_FILENAMES BABYSTEPPING DOUBLECLICK_FOR_Z_BABYSTEPPING \ MOVE_Z_WHEN_IDLE BABYSTEP_ZPROBE_OFFSET BABYSTEP_GFX_OVERLAY \ - LIN_ADVANCE ADVANCED_PAUSE_FEATURE PARK_HEAD_ON_PAUSE MONITOR_DRIVER_STATUS SENSORLESS_HOMING \ - EDGE_STEPPING + LIN_ADVANCE ADVANCED_PAUSE_FEATURE PARK_HEAD_ON_PAUSE MONITOR_DRIVER_STATUS exec_test $1 $2 "Minitronics 2.0 with assorted features" "$3" # clean up diff --git a/buildroot/tests/SAMD51_grandcentral_m4 b/buildroot/tests/SAMD51_grandcentral_m4 index 72996e7b7f3a..312bd627ba0d 100755 --- a/buildroot/tests/SAMD51_grandcentral_m4 +++ b/buildroot/tests/SAMD51_grandcentral_m4 @@ -25,7 +25,8 @@ opt_enable ENDSTOP_INTERRUPTS_FEATURE S_CURVE_ACCELERATION BLTOUCH Z_MIN_PROBE_R LONG_FILENAME_HOST_SUPPORT CUSTOM_FIRMWARE_UPLOAD M20_TIMESTAMP_SUPPORT \ SCROLL_LONG_FILENAMES BABYSTEPPING DOUBLECLICK_FOR_Z_BABYSTEPPING \ MOVE_Z_WHEN_IDLE BABYSTEP_ZPROBE_OFFSET BABYSTEP_GFX_OVERLAY \ - LIN_ADVANCE ADVANCED_PAUSE_FEATURE PARK_HEAD_ON_PAUSE MONITOR_DRIVER_STATUS SENSORLESS_HOMING \ + LIN_ADVANCE ADVANCED_PAUSE_FEATURE PARK_HEAD_ON_PAUSE MONITOR_DRIVER_STATUS \ + SENSORLESS_HOMING X_STALL_SENSITIVITY Y_STALL_SENSITIVITY Z_STALL_SENSITIVITY Z2_STALL_SENSITIVITY \ EDGE_STEPPING TMC_DEBUG exec_test $1 $2 "Grand Central M4 with assorted features" "$3" diff --git a/buildroot/tests/mega1280 b/buildroot/tests/mega1280 index 53016e840645..7e99ee4a60f6 100755 --- a/buildroot/tests/mega1280 +++ b/buildroot/tests/mega1280 @@ -41,6 +41,7 @@ opt_set MOTHERBOARD BOARD_ZRIB_V52 \ LCD_LANGUAGE pt REPRAPWORLD_KEYPAD_MOVE_STEP 10.0 \ EXTRUDERS 2 TEMP_SENSOR_1 1 X2_DRIVER_TYPE A4988 opt_enable DUAL_X_CARRIAGE REPRAPWORLD_KEYPAD +opt_add DEBUG_DXC_MODE exec_test $1 $2 "ZRIB_V52 | DUAL_X_CARRIAGE" "$3" # diff --git a/buildroot/tests/teensy35 b/buildroot/tests/teensy35 index 959a207aeeae..4a752c7f5a20 100755 --- a/buildroot/tests/teensy35 +++ b/buildroot/tests/teensy35 @@ -85,9 +85,10 @@ exec_test $1 $2 "Mixing Extruder" "$3" restore_configs opt_set MOTHERBOARD BOARD_TEENSY35_36 \ X_DRIVER_TYPE TMC5160 Y_DRIVER_TYPE TMC5160 \ + X_CURRENT_HOME 750 Y_CURRENT_HOME 750 \ X_MIN_ENDSTOP_HIT_STATE LOW Y_MIN_ENDSTOP_HIT_STATE LOW \ X_CS_PIN 46 Y_CS_PIN 47 -opt_enable COREXY MONITOR_DRIVER_STATUS SENSORLESS_HOMING +opt_enable COREXY MONITOR_DRIVER_STATUS SENSORLESS_HOMING X_STALL_SENSITIVITY Y_STALL_SENSITIVITY exec_test $1 $2 "Teensy 3.5/3.6 COREXY" "$3" # From a629471ed74b78f909224075832db64b5b3bc6ac Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Wed, 2 Aug 2023 06:06:02 +0000 Subject: [PATCH 394/427] [cron] Bump distribution date (2023-08-02) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index c927330c90ac..481dc142ff54 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-07-30" +//#define STRING_DISTRIBUTION_DATE "2023-08-02" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 5f52cd99ea76..824349a8505b 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-07-30" + #define STRING_DISTRIBUTION_DATE "2023-08-02" #endif /** From aaa590855a26032d049ae797e092a4571d04e2d7 Mon Sep 17 00:00:00 2001 From: ellensp <530024+ellensp@users.noreply.github.com> Date: Thu, 3 Aug 2023 15:55:29 +1200 Subject: [PATCH 395/427] =?UTF-8?q?=F0=9F=93=9D=20E3S1PRO=20is=20T5L=20(#2?= =?UTF-8?q?6143)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index dbba2e60edf9..4dbc2a8c11ef 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -3123,7 +3123,7 @@ * - Download https://github.com/InsanityAutomation/Marlin/raw/CrealityDwin_2.0/TM3D_Combined480272_Landscape_V7.7z * - Copy the downloaded DWIN_SET folder to the SD card. * - * E3S1PRO (T5UID1) + * E3S1PRO (T5L) * - Download https://github.com/CrealityOfficial/Ender-3S1/archive/3S1_Plus_Screen.zip * - Copy the downloaded DWIN_SET folder to the SD card. * From 8ae19e45d6e069afa169548fa781fce928ea110d Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Thu, 3 Aug 2023 01:28:06 -0500 Subject: [PATCH 396/427] =?UTF-8?q?=F0=9F=94=A8=20Prevent=20variant=20over?= =?UTF-8?q?write?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Martin Turski --- .../scripts/generic_create_variant.py | 30 +++++++++++-------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/buildroot/share/PlatformIO/scripts/generic_create_variant.py b/buildroot/share/PlatformIO/scripts/generic_create_variant.py index 49d4c98d3e15..2dd65399bbed 100644 --- a/buildroot/share/PlatformIO/scripts/generic_create_variant.py +++ b/buildroot/share/PlatformIO/scripts/generic_create_variant.py @@ -5,7 +5,8 @@ # the appropriate framework variants folder, so that its contents # will be picked up by PlatformIO just like any other variant. # -import pioutil +import pioutil, re +marlin_variant_pattern = re.compile("marlin_.*") if pioutil.is_pio_build(): import shutil,marlin from pathlib import Path @@ -32,7 +33,7 @@ else: platform_name = PackageSpec(platform_packages[0]).name - if platform_name in [ "usb-host-msc", "usb-host-msc-cdc-msc", "usb-host-msc-cdc-msc-2", "usb-host-msc-cdc-msc-3", "tool-stm32duino", "biqu-bx-workaround", "main" ]: + if platform_name in [ "Arduino_Core_STM32", "usb-host-msc", "usb-host-msc-cdc-msc", "usb-host-msc-cdc-msc-2", "usb-host-msc-cdc-msc-3", "tool-stm32duino", "biqu-bx-workaround", "main" ]: platform_name = "framework-arduinoststm32" FRAMEWORK_DIR = Path(platform.get_package_dir(platform_name)) @@ -44,15 +45,20 @@ variant = board.get("build.variant") #series = mcu_type[:7].upper() + "xx" - # Prepare a new empty folder at the destination - variant_dir = FRAMEWORK_DIR / "variants" / variant - if variant_dir.is_dir(): - shutil.rmtree(variant_dir) - if not variant_dir.is_dir(): - variant_dir.mkdir() + # Only prepare a new variant if the PlatformIO configuration provides it (board_build.variant). + # This check is important to avoid deleting official board config variants. + if marlin_variant_pattern.match(str(variant).lower()): + # Prepare a new empty folder at the destination + variant_dir = FRAMEWORK_DIR / "variants" / variant + if variant_dir.is_dir(): + shutil.rmtree(variant_dir) + if not variant_dir.is_dir(): + variant_dir.mkdir() - # Source dir is a local variant sub-folder - source_dir = Path("buildroot/share/PlatformIO/variants", variant) - assert source_dir.is_dir() + # Source dir is a local variant sub-folder + source_dir = Path("buildroot/share/PlatformIO/variants", variant) + assert source_dir.is_dir() - marlin.copytree(source_dir, variant_dir) + print("Copying variant " + str(variant) + " to framework directory...") + + marlin.copytree(source_dir, variant_dir) From fe4819a9c16325fcac6aa58071a4f42b6e2d2c56 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Thu, 3 Aug 2023 08:45:07 +0000 Subject: [PATCH 397/427] [cron] Bump distribution date (2023-08-03) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 481dc142ff54..8a860b269129 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-08-02" +//#define STRING_DISTRIBUTION_DATE "2023-08-03" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 824349a8505b..bd004bd7712d 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-08-02" + #define STRING_DISTRIBUTION_DATE "2023-08-03" #endif /** From 820d2b58b3cfe16affd421f4925ae924cb60826f Mon Sep 17 00:00:00 2001 From: Martin Turski Date: Fri, 4 Aug 2023 04:40:38 +0200 Subject: [PATCH 398/427] =?UTF-8?q?=F0=9F=9A=B8=20Option=20to=20report=20t?= =?UTF-8?q?emperature=20on=20error=20(#25341)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/core/language.h | 2 + Marlin/src/module/temperature.cpp | 137 +++++++++++++++++++----------- Marlin/src/module/temperature.h | 12 ++- 3 files changed, 100 insertions(+), 51 deletions(-) diff --git a/Marlin/src/core/language.h b/Marlin/src/core/language.h index b76a3d301cc5..649f05cf69d9 100644 --- a/Marlin/src/core/language.h +++ b/Marlin/src/core/language.h @@ -249,6 +249,8 @@ #define STR_LASER_TEMP "laser temperature" #define STR_STOPPED_HEATER ", system stopped! Heater_ID: " +#define STR_DETECTED_TEMP_B " (temp: " +#define STR_DETECTED_TEMP_E ")" #define STR_REDUNDANCY "Heater switched off. Temperature difference between temp sensors is too high !" #define STR_T_HEATING_FAILED "Heating failed" #define STR_T_THERMAL_RUNAWAY "Thermal Runaway" diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index d7c764540b4b..1f9928f88e4e 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -839,10 +839,10 @@ volatile bool Temperature::raw_temps_ready = false; if (current_temp > watch_temp_target) heated = true; // - Flag if target temperature reached } else if (ELAPSED(ms, temp_change_ms)) // Watch timer expired - _temp_error(heater_id, FPSTR(str_t_heating_failed), GET_TEXT_F(MSG_HEATING_FAILED_LCD)); + _TEMP_ERROR(heater_id, FPSTR(str_t_heating_failed), MSG_HEATING_FAILED_LCD, current_temp); } else if (current_temp < target - (MAX_OVERSHOOT_PID_AUTOTUNE)) // Heated, then temperature fell too far? - _temp_error(heater_id, FPSTR(str_t_thermal_runaway), GET_TEXT_F(MSG_THERMAL_RUNAWAY)); + _TEMP_ERROR(heater_id, FPSTR(str_t_thermal_runaway), MSG_THERMAL_RUNAWAY, current_temp); } #endif } // every 2 seconds @@ -1467,8 +1467,10 @@ inline void loud_kill(FSTR_P const lcd_msg, const heater_id_t heater_id) { kill(lcd_msg, HEATER_FSTR(heater_id)); } -void Temperature::_temp_error(const heater_id_t heater_id, FSTR_P const serial_msg, FSTR_P const lcd_msg) { - +void Temperature::_temp_error( + const heater_id_t heater_id, FSTR_P const serial_msg, FSTR_P const lcd_msg + OPTARG(ERR_INCLUDE_TEMP, const celsius_float_t deg) +) { static uint8_t killed = 0; if (IsRunning() && TERN1(BOGUS_TEMPERATURE_GRACE_PERIOD, killed == 2)) { @@ -1493,10 +1495,13 @@ void Temperature::_temp_error(const heater_id_t heater_id, FSTR_P const serial_m OPTCODE(HAS_TEMP_CHAMBER, case H_CHAMBER: SERIAL_ECHOPGM(STR_HEATER_CHAMBER); break) OPTCODE(HAS_TEMP_BED, case H_BED: SERIAL_ECHOPGM(STR_HEATER_BED); break) default: - if (real_heater_id >= 0) - SERIAL_ECHOLNPGM("E", real_heater_id); + if (real_heater_id >= 0) SERIAL_ECHO('E', real_heater_id); } - SERIAL_EOL(); + #if ENABLED(ERR_INCLUDE_TEMP) + SERIAL_ECHOLNPGM(STR_DETECTED_TEMP_B, deg, STR_DETECTED_TEMP_E); + #else + SERIAL_EOL(); + #endif } disable_all_heaters(); // always disable (even for bogus temp) @@ -1525,18 +1530,18 @@ void Temperature::_temp_error(const heater_id_t heater_id, FSTR_P const serial_m #endif } -void Temperature::maxtemp_error(const heater_id_t heater_id) { +void Temperature::maxtemp_error(const heater_id_t heater_id OPTARG(ERR_INCLUDE_TEMP, const celsius_float_t deg)) { #if HAS_DWIN_E3V2_BASIC && (HAS_HOTEND || HAS_HEATED_BED) dwinPopupTemperature(1); #endif - _temp_error(heater_id, F(STR_T_MAXTEMP), GET_TEXT_F(MSG_ERR_MAXTEMP)); + _TEMP_ERROR(heater_id, F(STR_T_MAXTEMP), MSG_ERR_MAXTEMP, deg); } -void Temperature::mintemp_error(const heater_id_t heater_id) { +void Temperature::mintemp_error(const heater_id_t heater_id OPTARG(ERR_INCLUDE_TEMP, const celsius_float_t deg)) { #if HAS_DWIN_E3V2_BASIC && (HAS_HOTEND || HAS_HEATED_BED) dwinPopupTemperature(0); #endif - _temp_error(heater_id, F(STR_T_MINTEMP), GET_TEXT_F(MSG_ERR_MINTEMP)); + _TEMP_ERROR(heater_id, F(STR_T_MINTEMP), MSG_ERR_MINTEMP, deg); } #if HAS_PID_DEBUG @@ -1736,7 +1741,10 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { void Temperature::manage_hotends(const millis_t &ms) { HOTEND_LOOP() { #if ENABLED(THERMAL_PROTECTION_HOTENDS) - if (degHotend(e) > temp_range[e].maxtemp) maxtemp_error((heater_id_t)e); + { + const auto deg = degHotend(e); + if (deg > temp_range[e].maxtemp) MAXTEMP_ERROR(e, deg); + } #endif TERN_(HEATER_IDLE_HANDLER, heater_idle[e].update(ms)); @@ -1746,16 +1754,18 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { tr_state_machine[e].run(temp_hotend[e].celsius, temp_hotend[e].target, (heater_id_t)e, THERMAL_PROTECTION_PERIOD, THERMAL_PROTECTION_HYSTERESIS); #endif - temp_hotend[e].soft_pwm_amount = (temp_hotend[e].celsius > temp_range[e].mintemp || is_hotend_preheating(e)) && temp_hotend[e].celsius < temp_range[e].maxtemp ? (int)get_pid_output_hotend(e) >> 1 : 0; + temp_hotend[e].soft_pwm_amount = (temp_hotend[e].celsius > temp_range[e].mintemp || is_hotend_preheating(e)) + && temp_hotend[e].celsius < temp_range[e].maxtemp ? (int)get_pid_output_hotend(e) >> 1 : 0; #if WATCH_HOTENDS // Make sure temperature is increasing if (watch_hotend[e].elapsed(ms)) { // Enabled and time to check? - if (watch_hotend[e].check(degHotend(e))) // Increased enough? + auto temp = degHotend(e); + if (watch_hotend[e].check(temp)) // Increased enough? start_watching_hotend(e); // If temp reached, turn off elapsed check else { TERN_(HAS_DWIN_E3V2_BASIC, dwinPopupTemperature(0)); - _temp_error((heater_id_t)e, FPSTR(str_t_heating_failed), GET_TEXT_F(MSG_HEATING_FAILED_LCD)); + _TEMP_ERROR(e, FPSTR(str_t_heating_failed), MSG_HEATING_FAILED_LCD, temp); } } #endif @@ -1770,19 +1780,25 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { void Temperature::manage_heated_bed(const millis_t &ms) { #if ENABLED(THERMAL_PROTECTION_BED) - if (degBed() > BED_MAXTEMP) maxtemp_error(H_BED); + { + const auto deg = degBed(); + if (deg > BED_MAXTEMP) MAXTEMP_ERROR(H_BED, deg); + } #endif #if WATCH_BED + { // Make sure temperature is increasing if (watch_bed.elapsed(ms)) { // Time to check the bed? - if (watch_bed.check(degBed())) // Increased enough? + const auto deg = degBed(); + if (watch_bed.check(deg)) // Increased enough? start_watching_bed(); // If temp reached, turn off elapsed check else { TERN_(HAS_DWIN_E3V2_BASIC, dwinPopupTemperature(0)); - _temp_error(H_BED, FPSTR(str_t_heating_failed), GET_TEXT_F(MSG_HEATING_FAILED_LCD)); + _TEMP_ERROR(H_BED, FPSTR(str_t_heating_failed), MSG_HEATING_FAILED_LCD, deg); } } + } #endif // WATCH_BED #if ALL(PROBING_HEATERS_OFF, BED_LIMIT_SWITCHING) @@ -1860,17 +1876,23 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { #endif #if ENABLED(THERMAL_PROTECTION_CHAMBER) - if (degChamber() > (CHAMBER_MAXTEMP)) maxtemp_error(H_CHAMBER); + { + const auto deg = degChamber(); + if (deg > CHAMBER_MAXTEMP) MAXTEMP_ERROR(H_CHAMBER, deg); + } #endif #if WATCH_CHAMBER + { // Make sure temperature is increasing if (watch_chamber.elapsed(ms)) { // Time to check the chamber? - if (watch_chamber.check(degChamber())) // Increased enough? Error below. + const auto deg = degChamber(); + if (watch_chamber.check(deg)) // Increased enough? Error below. start_watching_chamber(); // If temp reached, turn off elapsed check. else - _temp_error(H_CHAMBER, FPSTR(str_t_heating_failed), GET_TEXT_F(MSG_HEATING_FAILED_LCD)); + _TEMP_ERROR(H_CHAMBER, FPSTR(str_t_heating_failed), MSG_HEATING_FAILED_LCD, deg); } + } #endif #if ANY(CHAMBER_FAN, CHAMBER_VENT) || DISABLED(PIDTEMPCHAMBER) @@ -1986,16 +2008,20 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { #endif #if ENABLED(THERMAL_PROTECTION_COOLER) - if (degCooler() > COOLER_MAXTEMP) maxtemp_error(H_COOLER); + { + const auto deg = degCooler(); + if (deg > COOLER_MAXTEMP) MAXTEMP_ERROR(H_COOLER, deg); + } #endif #if WATCH_COOLER // Make sure temperature is decreasing if (watch_cooler.elapsed(ms)) { // Time to check the cooler? - if (degCooler() > watch_cooler.target) // Failed to decrease enough? - _temp_error(H_COOLER, GET_TEXT_F(MSG_COOLING_FAILED), GET_TEXT_F(MSG_COOLING_FAILED)); + const auto deg = degCooler(); + if (deg > watch_cooler.target) // Failed to decrease enough? + _TEMP_ERROR(H_COOLER, GET_TEXT_F(MSG_COOLING_FAILED), MSG_COOLING_FAILED, deg); else - start_watching_cooler(); // Start again if the target is still far off + start_watching_cooler(); // Start again if the target is still far off } #endif @@ -2076,20 +2102,32 @@ void Temperature::task() { #if DISABLED(IGNORE_THERMOCOUPLE_ERRORS) #if TEMP_SENSOR_IS_MAX_TC(0) - if (degHotend(0) > _MIN(HEATER_0_MAXTEMP, TEMP_SENSOR_0_MAX_TC_TMAX - 1.0)) maxtemp_error(H_E0); - if (degHotend(0) < _MAX(HEATER_0_MINTEMP, TEMP_SENSOR_0_MAX_TC_TMIN + .01)) mintemp_error(H_E0); + { + const auto deg = degHotend(0); + if (deg > _MIN(HEATER_0_MAXTEMP, TEMP_SENSOR_0_MAX_TC_TMAX - 1.0)) MAXTEMP_ERROR(H_E0, deg); + if (deg < _MAX(HEATER_0_MINTEMP, TEMP_SENSOR_0_MAX_TC_TMIN + .01)) MINTEMP_ERROR(H_E0, deg); + } #endif #if TEMP_SENSOR_IS_MAX_TC(1) - if (degHotend(1) > _MIN(HEATER_1_MAXTEMP, TEMP_SENSOR_1_MAX_TC_TMAX - 1.0)) maxtemp_error(H_E1); - if (degHotend(1) < _MAX(HEATER_1_MINTEMP, TEMP_SENSOR_1_MAX_TC_TMIN + .01)) mintemp_error(H_E1); + { + const auto deg = degHotend(1); + if (deg > _MIN(HEATER_1_MAXTEMP, TEMP_SENSOR_1_MAX_TC_TMAX - 1.0)) MAXTEMP_ERROR(H_E1, deg); + if (deg < _MAX(HEATER_1_MINTEMP, TEMP_SENSOR_1_MAX_TC_TMIN + .01)) MINTEMP_ERROR(H_E1, deg); + } #endif #if TEMP_SENSOR_IS_MAX_TC(2) - if (degHotend(2) > _MIN(HEATER_2_MAXTEMP, TEMP_SENSOR_2_MAX_TC_TMAX - 1.0)) maxtemp_error(H_E2); - if (degHotend(2) < _MAX(HEATER_2_MINTEMP, TEMP_SENSOR_2_MAX_TC_TMIN + .01)) mintemp_error(H_E2); + { + const auto deg = degHotend(2); + if (deg > _MIN(HEATER_2_MAXTEMP, TEMP_SENSOR_2_MAX_TC_TMAX - 1.0)) MAXTEMP_ERROR(H_E2, deg); + if (deg < _MAX(HEATER_2_MINTEMP, TEMP_SENSOR_2_MAX_TC_TMIN + .01)) MINTEMP_ERROR(H_E2, deg); + } #endif #if TEMP_SENSOR_IS_MAX_TC(REDUNDANT) - if (degRedundant() > TEMP_SENSOR_REDUNDANT_MAX_TC_TMAX - 1.0) maxtemp_error(H_REDUNDANT); - if (degRedundant() < TEMP_SENSOR_REDUNDANT_MAX_TC_TMIN + .01) mintemp_error(H_REDUNDANT); + { + const auto deg = degRedundant(); + if (deg > TEMP_SENSOR_REDUNDANT_MAX_TC_TMAX - 1.0) MAXTEMP_ERROR(H_REDUNDANT, deg); + if (deg < TEMP_SENSOR_REDUNDANT_MAX_TC_TMIN + .01) MINTEMP_ERROR(H_REDUNDANT, deg); + } #endif #else #warning "Safety Alert! Disable IGNORE_THERMOCOUPLE_ERRORS for the final build!" @@ -2101,9 +2139,12 @@ void Temperature::task() { TERN_(HAS_HOTEND, manage_hotends(ms)); #if HAS_TEMP_REDUNDANT + { + const auto deg = degRedundant(); // Make sure measured temperatures are close together - if (ABS(degRedundantTarget() - degRedundant()) > TEMP_SENSOR_REDUNDANT_MAX_DIFF) - _temp_error((heater_id_t)HEATER_ID(TEMP_SENSOR_REDUNDANT_TARGET), F(STR_REDUNDANCY), GET_TEXT_F(MSG_ERR_REDUNDANT_TEMP)); + if (ABS(degRedundantTarget() - deg) > TEMP_SENSOR_REDUNDANT_MAX_DIFF) + _TEMP_ERROR(HEATER_ID(TEMP_SENSOR_REDUNDANT_TARGET), F(STR_REDUNDANCY), MSG_ERR_REDUNDANT_TEMP, deg); + } #endif // Manage extruder auto fans and/or read fan tachometers @@ -2616,7 +2657,7 @@ void Temperature::updateTemperaturesFromRawValues() { const raw_adc_t r = temp_hotend[e].getraw(); const bool neg = temp_dir[e] < 0, pos = temp_dir[e] > 0; if ((neg && r < temp_range[e].raw_max) || (pos && r > temp_range[e].raw_max)) - maxtemp_error((heater_id_t)e); + MAXTEMP_ERROR(e, temp_hotend[e].celsius); /** // DEBUG PREHEATING TIME @@ -2628,7 +2669,7 @@ void Temperature::updateTemperaturesFromRawValues() { const bool heater_on = temp_hotend[e].target > 0; if (heater_on && !is_hotend_preheating(e) && ((neg && r > temp_range[e].raw_min) || (pos && r < temp_range[e].raw_min))) { if (TERN1(MULTI_MAX_CONSECUTIVE_LOW_TEMP_ERR, ++consecutive_low_temperature_error[e] >= MAX_CONSECUTIVE_LOW_TEMPERATURE_ERROR_ALLOWED)) - mintemp_error((heater_id_t)e); + MINTEMP_ERROR(e, temp_hotend[e].celsius); } else { TERN_(MULTI_MAX_CONSECUTIVE_LOW_TEMP_ERR, consecutive_low_temperature_error[e] = 0); @@ -2639,27 +2680,27 @@ void Temperature::updateTemperaturesFromRawValues() { #define TP_CMP(S,A,B) (TEMPDIR(S) < 0 ? ((A)<(B)) : ((A)>(B))) #if ENABLED(THERMAL_PROTECTION_BED) - if (TP_CMP(BED, temp_bed.getraw(), maxtemp_raw_BED)) maxtemp_error(H_BED); - if (temp_bed.target > 0 && !is_bed_preheating() && TP_CMP(BED, mintemp_raw_BED, temp_bed.getraw())) mintemp_error(H_BED); + if (TP_CMP(BED, temp_bed.getraw(), maxtemp_raw_BED)) MAXTEMP_ERROR(H_BED, temp_bed.celsius); + if (temp_bed.target > 0 && !is_bed_preheating() && TP_CMP(BED, mintemp_raw_BED, temp_bed.getraw())) MINTEMP_ERROR(H_BED, temp_bed.celsius); #endif #if ALL(HAS_HEATED_CHAMBER, THERMAL_PROTECTION_CHAMBER) - if (TP_CMP(CHAMBER, temp_chamber.getraw(), maxtemp_raw_CHAMBER)) maxtemp_error(H_CHAMBER); - if (temp_chamber.target > 0 && TP_CMP(CHAMBER, mintemp_raw_CHAMBER, temp_chamber.getraw())) mintemp_error(H_CHAMBER); + if (TP_CMP(CHAMBER, temp_chamber.getraw(), maxtemp_raw_CHAMBER)) MAXTEMP_ERROR(H_CHAMBER, temp_chamber.celsius); + if (temp_chamber.target > 0 && TP_CMP(CHAMBER, mintemp_raw_CHAMBER, temp_chamber.getraw())) MINTEMP_ERROR(H_CHAMBER, temp_chamber.celsius); #endif #if ALL(HAS_COOLER, THERMAL_PROTECTION_COOLER) - if (cutter.unitPower > 0 && TP_CMP(COOLER, temp_cooler.getraw(), maxtemp_raw_COOLER)) maxtemp_error(H_COOLER); - if (TP_CMP(COOLER, mintemp_raw_COOLER, temp_cooler.getraw())) mintemp_error(H_COOLER); + if (cutter.unitPower > 0 && TP_CMP(COOLER, temp_cooler.getraw(), maxtemp_raw_COOLER)) MAXTEMP_ERROR(H_COOLER, temp_cooler.celsius); + if (TP_CMP(COOLER, mintemp_raw_COOLER, temp_cooler.getraw())) MINTEMP_ERROR(H_COOLER, temp_cooler.celsius); #endif #if ALL(HAS_TEMP_BOARD, THERMAL_PROTECTION_BOARD) - if (TP_CMP(BOARD, temp_board.getraw(), maxtemp_raw_BOARD)) maxtemp_error(H_BOARD); - if (TP_CMP(BOARD, mintemp_raw_BOARD, temp_board.getraw())) mintemp_error(H_BOARD); + if (TP_CMP(BOARD, temp_board.getraw(), maxtemp_raw_BOARD)) MAXTEMP_ERROR(H_BOARD, temp_board.celsius); + if (TP_CMP(BOARD, mintemp_raw_BOARD, temp_board.getraw())) MINTEMP_ERROR(H_BOARD, temp_board.celsius); #endif #if ALL(HAS_TEMP_SOC, THERMAL_PROTECTION_SOC) - if (TP_CMP(SOC, temp_soc.getraw(), maxtemp_raw_SOC)) maxtemp_error(H_SOC); + if (TP_CMP(SOC, temp_soc.getraw(), maxtemp_raw_SOC)) MAXTEMP_ERROR(H_SOC, temp_soc.celsius); #endif #undef TP_CMP @@ -3178,12 +3219,12 @@ void Temperature::init() { case TRRunaway: TERN_(HAS_DWIN_E3V2_BASIC, dwinPopupTemperature(0)); - _temp_error(heater_id, FPSTR(str_t_thermal_runaway), GET_TEXT_F(MSG_THERMAL_RUNAWAY)); + _TEMP_ERROR(heater_id, FPSTR(str_t_thermal_runaway), MSG_THERMAL_RUNAWAY, current); #if ENABLED(THERMAL_PROTECTION_VARIANCE_MONITOR) case TRMalfunction: TERN_(HAS_DWIN_E3V2_BASIC, dwinPopupTemperature(0)); - _temp_error(heater_id, FPSTR(str_t_temp_malfunction), GET_TEXT_F(MSG_TEMP_MALFUNCTION)); + _TEMP_ERROR(heater_id, FPSTR(str_t_temp_malfunction), MSG_TEMP_MALFUNCTION, current); #endif } } diff --git a/Marlin/src/module/temperature.h b/Marlin/src/module/temperature.h index a8873bf2af65..d5a27a8671c6 100644 --- a/Marlin/src/module/temperature.h +++ b/Marlin/src/module/temperature.h @@ -41,6 +41,8 @@ #include "../feature/fancheck.h" #endif +//#define ERR_INCLUDE_TEMP + #define HOTEND_INDEX TERN(HAS_MULTI_HOTEND, e, 0) #define E_NAME TERN_(HAS_MULTI_HOTEND, e) @@ -1360,9 +1362,13 @@ class Temperature { static float get_pid_output_chamber(); #endif - static void _temp_error(const heater_id_t e, FSTR_P const serial_msg, FSTR_P const lcd_msg); - static void mintemp_error(const heater_id_t e); - static void maxtemp_error(const heater_id_t e); + static void _temp_error(const heater_id_t e, FSTR_P const serial_msg, FSTR_P const lcd_msg OPTARG(ERR_INCLUDE_TEMP, const celsius_float_t deg)); + static void mintemp_error(const heater_id_t e OPTARG(ERR_INCLUDE_TEMP, const celsius_float_t deg)); + static void maxtemp_error(const heater_id_t e OPTARG(ERR_INCLUDE_TEMP, const celsius_float_t deg)); + + #define _TEMP_ERROR(e, m, l, d) _temp_error(heater_id_t(e), m, GET_TEXT_F(l) OPTARG(ERR_INCLUDE_TEMP, d)) + #define MINTEMP_ERROR(e, d) mintemp_error(heater_id_t(e) OPTARG(ERR_INCLUDE_TEMP, d)) + #define MAXTEMP_ERROR(e, d) maxtemp_error(heater_id_t(e) OPTARG(ERR_INCLUDE_TEMP, d)) #define HAS_THERMAL_PROTECTION ANY(THERMAL_PROTECTION_HOTENDS, THERMAL_PROTECTION_CHAMBER, THERMAL_PROTECTION_BED, THERMAL_PROTECTION_COOLER) From 3baa318ec737a67cec6087194ab04fb2242279e0 Mon Sep 17 00:00:00 2001 From: Martin Turski Date: Fri, 4 Aug 2023 05:56:40 +0200 Subject: [PATCH 399/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Opt?= =?UTF-8?q?ion=20to=20reset=20AVR=20pin=20states=20(#25364)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/HAL/AVR/HAL.cpp | 27 +- Marlin/src/HAL/AVR/HAL.h | 2 +- Marlin/src/HAL/AVR/registers.cpp | 979 ++++++ Marlin/src/HAL/AVR/registers.h | 5080 ++++++++++++++++++++++++++++++ Marlin/src/HAL/LPC1768/HAL.cpp | 140 +- Marlin/src/HAL/LPC1768/main.cpp | 163 - 6 files changed, 6221 insertions(+), 170 deletions(-) create mode 100644 Marlin/src/HAL/AVR/registers.cpp create mode 100644 Marlin/src/HAL/AVR/registers.h delete mode 100644 Marlin/src/HAL/LPC1768/main.cpp diff --git a/Marlin/src/HAL/AVR/HAL.cpp b/Marlin/src/HAL/AVR/HAL.cpp index b3dcfbdf596c..407a570cde97 100644 --- a/Marlin/src/HAL/AVR/HAL.cpp +++ b/Marlin/src/HAL/AVR/HAL.cpp @@ -61,23 +61,40 @@ void save_reset_reason() { wdt_disable(); } +#include "registers.h" + +MarlinHAL::MarlinHAL() { + TERN_(HAL_AVR_DIRTY_INIT, _ATmega_resetperipherals()); // Clean-wipe the device state. +} + void MarlinHAL::init() { // Init Servo Pins - #define INIT_SERVO(N) OUT_WRITE(SERVO##N##_PIN, LOW) #if HAS_SERVO_0 - INIT_SERVO(0); + OUT_WRITE(SERVO0_PIN, LOW); #endif #if HAS_SERVO_1 - INIT_SERVO(1); + OUT_WRITE(SERVO1_PIN, LOW); #endif #if HAS_SERVO_2 - INIT_SERVO(2); + OUT_WRITE(SERVO2_PIN, LOW); #endif #if HAS_SERVO_3 - INIT_SERVO(3); + OUT_WRITE(SERVO3_PIN, LOW); #endif init_pwm_timers(); // Init user timers to default frequency - 1000HZ + + #if PIN_EXISTS(BEEPER) && ENABLED(HAL_AVR_DIRTY_INIT) && DISABLED(ATMEGA_NO_BEEPFIX) + // Make sure no alternative is locked onto the BEEPER. + // This fixes the issue where the ATmega is constantly beeping. + // Might disable other peripherals using the pin; to circumvent that please undefine one of the above things! + // The true culprit is the AVR ArduinoCore that enables peripherals redundantly. + // (USART1 on the GeeeTech GT2560) + // https://www.youtube.com/watch?v=jMgCvRXkexk + _ATmega_savePinAlternate(BEEPER_PIN); + + OUT_WRITE(BEEPER_PIN, LOW); + #endif } void MarlinHAL::reboot() { diff --git a/Marlin/src/HAL/AVR/HAL.h b/Marlin/src/HAL/AVR/HAL.h index 16878a8ab8d9..7d5e1000d797 100644 --- a/Marlin/src/HAL/AVR/HAL.h +++ b/Marlin/src/HAL/AVR/HAL.h @@ -187,7 +187,7 @@ class MarlinHAL { public: // Earliest possible init, before setup() - MarlinHAL() {} + MarlinHAL(); // Watchdog static void watchdog_init() IF_DISABLED(USE_WATCHDOG, {}); diff --git a/Marlin/src/HAL/AVR/registers.cpp b/Marlin/src/HAL/AVR/registers.cpp new file mode 100644 index 000000000000..08a74c952ab9 --- /dev/null +++ b/Marlin/src/HAL/AVR/registers.cpp @@ -0,0 +1,979 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#ifdef __AVR__ + +#include "../../inc/MarlinConfigPre.h" + +#if ENABLED(HAL_AVR_DIRTY_INIT) + +#include "registers.h" + +// Since the compiler could be creating multiple copies of function code-graphs for each header inline-inclusion, +// we want to off-load the function definitions that define static memory into this solitary compilation unit. +// This way the ROM is NOT bloated (who knows if the compiler is optimizing same-content constant objects into one?) + +ATmegaPinFunctions _ATmega_getPinFunctions(int pin) { + if (pin < 0) return {}; + + ATmegaPinInfo info = _ATmega_getPinInfo((unsigned int)pin); + + #ifdef __AVR_TRM01__ + if (info.port == eATmegaPort::PORT_A) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD7 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD6 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD5 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD4 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD3 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD2 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD1 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD0 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_B) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC0A, eATmegaPinFunc::TOC1C, eATmegaPinFunc::PCI7 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC1B, eATmegaPinFunc::PCI6 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC1A, eATmegaPinFunc::PCI5 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC2A, eATmegaPinFunc::PCI4 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_MISO, eATmegaPinFunc::PCI3 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_MOSI, eATmegaPinFunc::PCI2 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_SCK, eATmegaPinFunc::PCI1 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_CS, eATmegaPinFunc::PCI0 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_C) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD15 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD14 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD13 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD12 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD11 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD10 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD9 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD8 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_D) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER0_CLKI }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER1_CLKI }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART1_CLK }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER1_ICP }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT3, eATmegaPinFunc::USART1_TXD }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT2, eATmegaPinFunc::USART1_RXD }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT1, eATmegaPinFunc::TWI_SDA }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT0, eATmegaPinFunc::TWI_CLK }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_E) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT7, eATmegaPinFunc::TIMER3_ICP, eATmegaPinFunc::CLKO }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT6, eATmegaPinFunc::TIMER3_CLKI }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT5, eATmegaPinFunc::TOC3C }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT4, eATmegaPinFunc::TOC3B }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::AIN1, eATmegaPinFunc::TOC3A }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::AIN0, eATmegaPinFunc::USART0_CLK }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PDO, eATmegaPinFunc::USART0_TXD }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PDI, eATmegaPinFunc::USART0_RXD, eATmegaPinFunc::PCI8 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_F) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC7 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC6 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC5 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC4 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC3 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC2 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC1 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC0 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_G) { + if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC0B }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOSC1 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3 ) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOSC2 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_ALE }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_RD }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_WR }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_H) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER4_CLKI }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC2B }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC4C }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC4B }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC4A }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART2_CLK }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART2_TXD }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART2_RXD }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_J) { + if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI15 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI14 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI13 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI12 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART3_CLK, eATmegaPinFunc::PCI11 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART3_TXD, eATmegaPinFunc::PCI10 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART3_RXD, eATmegaPinFunc::PCI9 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_K) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC15, eATmegaPinFunc::PCI23 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC14, eATmegaPinFunc::PCI22 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC13, eATmegaPinFunc::PCI21 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC12, eATmegaPinFunc::PCI20 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC11, eATmegaPinFunc::PCI19 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC10, eATmegaPinFunc::PCI18 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC9, eATmegaPinFunc::PCI17 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC8, eATmegaPinFunc::PCI16 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_L) { + if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC5C }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC5B }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC5A }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER5_CLKI }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER5_ICP }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER4_ICP }; + return { funcs, countof(funcs) }; + } + } + #elif defined(__AVR_TRM02__) + if (info.port == eATmegaPort::PORT_A) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI7, eATmegaPinFunc::ADC7 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI6, eATmegaPinFunc::ADC6 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI5, eATmegaPinFunc::ADC5 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI4, eATmegaPinFunc::ADC4 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI3, eATmegaPinFunc::ADC3 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI2, eATmegaPinFunc::ADC2 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI1, eATmegaPinFunc::ADC1 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI0, eATmegaPinFunc::ADC0 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_B) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_SCK, eATmegaPinFunc::TOC3B, eATmegaPinFunc::PCI15 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_MISO, eATmegaPinFunc::TOC3A, eATmegaPinFunc::PCI14 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_MOSI, eATmegaPinFunc::TIMER3_ICP, eATmegaPinFunc::PCI13 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_CS, eATmegaPinFunc::TOC0B, eATmegaPinFunc::PCI12 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::AIN1, eATmegaPinFunc::TOC0A, eATmegaPinFunc::PCI11 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::AIN0, eATmegaPinFunc::EINT2, eATmegaPinFunc::PCI10 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER1_ECI, eATmegaPinFunc::CLKO, eATmegaPinFunc::PCI9 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER0_ECI, eATmegaPinFunc::USART0_CLK, eATmegaPinFunc::PCI8 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_C) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOSC2, eATmegaPinFunc::PCI23 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOSC1, eATmegaPinFunc::PCI22 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI21 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI20 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI19 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI18 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI17, eATmegaPinFunc::TWI_SDA }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TWI_CLK, eATmegaPinFunc::PCI16 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_D) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC2A, eATmegaPinFunc::PCI31 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER1_ICP, eATmegaPinFunc::TOC2B, eATmegaPinFunc::PCI30 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC1A, eATmegaPinFunc::PCI29 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC1B, eATmegaPinFunc::USART1_CLK, eATmegaPinFunc::PCI28 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT1, eATmegaPinFunc::USART1_TXD, eATmegaPinFunc::PCI27 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT0, eATmegaPinFunc::USART1_RXD, eATmegaPinFunc::PCI26 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART0_TXD, eATmegaPinFunc::PCI25 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART0_TXD, eATmegaPinFunc::PCI24, eATmegaPinFunc::TIMER3_ECI }; + return { funcs, countof(funcs) }; + } + } + #elif defined(__AVR_TRM03__) + if (info.port == eATmegaPort::PORT_B) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::XTAL2, eATmegaPinFunc::TOSC2, eATmegaPinFunc::PCI7 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::XTAL1, eATmegaPinFunc::TOSC1, eATmegaPinFunc::PCI6 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_SCK, eATmegaPinFunc::PCI5 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_MISO, eATmegaPinFunc::PCI4 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_MOSI, eATmegaPinFunc::TOC2A, eATmegaPinFunc::PCI3 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_CS, eATmegaPinFunc::TOC1B, eATmegaPinFunc::PCI2 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC1A, eATmegaPinFunc::PCI1 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER1_ICP, eATmegaPinFunc::CLKO, eATmegaPinFunc::PCI0 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_C) { + if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI14 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC5, eATmegaPinFunc::TWI_CLK, eATmegaPinFunc::PCI13 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC4, eATmegaPinFunc::TWI_SDA, eATmegaPinFunc::PCI12 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC3, eATmegaPinFunc::PCI11 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC2, eATmegaPinFunc::PCI10 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC1, eATmegaPinFunc::PCI9 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC0, eATmegaPinFunc::PCI8 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_D) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::AIN1, eATmegaPinFunc::PCI23 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::AIN0, eATmegaPinFunc::TOC0A, eATmegaPinFunc::PCI22 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER1_ECI, eATmegaPinFunc::TOC0B, eATmegaPinFunc::PCI21 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART_CLK, eATmegaPinFunc::TIMER0_ECI, eATmegaPinFunc::PCI20 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT1, eATmegaPinFunc::TOC2B, eATmegaPinFunc::PCI19 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT0, eATmegaPinFunc::PCI18 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART_TXD, eATmegaPinFunc::PCI17 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART_RXD, eATmegaPinFunc::PCI16 }; + return { funcs, countof(funcs) }; + } + } + #elif defined(__AVR_TRM04__) + if (info.port == eATmegaPort::PORT_A) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD7 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD6 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD5 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD4 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD3 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD2 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD1 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD0 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_B) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC0A, eATmegaPinFunc::TOC1C, eATmegaPinFunc::PCI7 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC1B, eATmegaPinFunc::PCI6 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC1A, eATmegaPinFunc::PCI5 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC2A, eATmegaPinFunc::PCI4 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PDO, eATmegaPinFunc::SPI_MISO, eATmegaPinFunc::PCI3 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PDI, eATmegaPinFunc::SPI_MOSI, eATmegaPinFunc::PCI2 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_SCK, eATmegaPinFunc::PCI1 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_CS, eATmegaPinFunc::PCI0 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_C) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD15, eATmegaPinFunc::TIMER3_ICP, eATmegaPinFunc::CLKO }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD14, eATmegaPinFunc::TOC3A }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD13, eATmegaPinFunc::TOC3B }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD12, eATmegaPinFunc::TOC3C }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD11, eATmegaPinFunc::TIMER3_CLKI }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD10 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD9 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_AD8 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_D) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER0_CLKI }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER1_CLKI }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART1_CLK }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER1_ICP }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT3, eATmegaPinFunc::USART1_TXD }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT2, eATmegaPinFunc::USART1_RXD }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT1, eATmegaPinFunc::TWI_SDA, eATmegaPinFunc::TOC2B }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT0, eATmegaPinFunc::TWI_CLK, eATmegaPinFunc::TOC0B }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_E) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT7, eATmegaPinFunc::AIN1, eATmegaPinFunc::UVCON }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT6, eATmegaPinFunc::AIN0 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT5, eATmegaPinFunc::TOSC2 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT4, eATmegaPinFunc::TOSC2 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::UID }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_ALE }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_RD }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EXTMEM_WR }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_F) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC7 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC6 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC5 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC4 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC3 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC2 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC1 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC0 }; + return { funcs, countof(funcs) }; + } + } + #elif defined(__AVR_TRM05__) + if (info.port == eATmegaPort::PORT_A) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC7, eATmegaPinFunc::PCI7 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC6, eATmegaPinFunc::PCI6 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC5, eATmegaPinFunc::PCI5 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC4, eATmegaPinFunc::PCI4 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC3, eATmegaPinFunc::PCI3 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC2, eATmegaPinFunc::PCI2 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC1, eATmegaPinFunc::PCI1 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::ADC0, eATmegaPinFunc::PCI0 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_B) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_SCK, eATmegaPinFunc::PCI15 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_MISO, eATmegaPinFunc::PCI14 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_MOSI, eATmegaPinFunc::PCI13 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::SPI_CS, eATmegaPinFunc::TOC0B, eATmegaPinFunc::PCI12 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::AIN1, eATmegaPinFunc::TOC0A, eATmegaPinFunc::PCI11 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::AIN0, eATmegaPinFunc::EINT2, eATmegaPinFunc::PCI10 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER1_ECI, eATmegaPinFunc::CLKO, eATmegaPinFunc::PCI9 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER0_ECI, eATmegaPinFunc::USART0_CLK, eATmegaPinFunc::PCI8 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_C) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOSC2, eATmegaPinFunc::PCI23 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOSC1, eATmegaPinFunc::PCI22 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI21 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI20 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI19 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::PCI18 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TWI_SDA, eATmegaPinFunc::PCI17 }; + return { funcs, countof(funcs) }; + } + else if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TWI_CLK, eATmegaPinFunc::PCI16 }; + return { funcs, countof(funcs) }; + } + } + else if (info.port == eATmegaPort::PORT_D) { + if (info.pinidx == 7) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC2A, eATmegaPinFunc::PCI31 }; + return { funcs, countof(funcs) }; + } + if (info.pinidx == 6) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TIMER1_ICP, eATmegaPinFunc::TOC2B, eATmegaPinFunc::PCI30 }; + return { funcs, countof(funcs) }; + } + if (info.pinidx == 5) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC1A, eATmegaPinFunc::PCI29 }; + return { funcs, countof(funcs) }; + } + if (info.pinidx == 4) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::TOC1B, eATmegaPinFunc::USART1_CLK, eATmegaPinFunc::PCI28 }; + return { funcs, countof(funcs) }; + } + if (info.pinidx == 3) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT1, eATmegaPinFunc::USART1_TXD, eATmegaPinFunc::PCI27 }; + return { funcs, countof(funcs) }; + } + if (info.pinidx == 2) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::EINT0, eATmegaPinFunc::USART1_RXD, eATmegaPinFunc::PCI26 }; + return { funcs, countof(funcs) }; + } + if (info.pinidx == 1) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART0_TXD, eATmegaPinFunc::PCI25 }; + return { funcs, countof(funcs) }; + } + if (info.pinidx == 0) { + static const eATmegaPinFunc funcs[] = { eATmegaPinFunc::USART0_RXD, eATmegaPinFunc::PCI24 }; + return { funcs, countof(funcs) }; + } + } + #endif + + return ATmegaPinFunctions(); // default and empty. +} + +#endif // HAL_AVR_DIRTY_INIT +#endif // __AVR__ diff --git a/Marlin/src/HAL/AVR/registers.h b/Marlin/src/HAL/AVR/registers.h new file mode 100644 index 000000000000..64c0955c3e8e --- /dev/null +++ b/Marlin/src/HAL/AVR/registers.h @@ -0,0 +1,5080 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +#include + +// This volatile-nonsense has to be done due to the C++ platform language specialization that specifies, for it's own compiler ideology, +// that memory writes and reads can be optimized across easily-reachable code spaces. This is in contrast to MSVC which specifies that +// memory writes and reads are holy. + +// OVERVIEW OF PREPROCESSOR DEFINITIONS: +// __AVR_ATmega2560__ +// __AVR_ATmega1284P__ +// __AVR_ATmega1280__ +// __AVR_ATmega644__ +// __AVR_ATmega644P__ +// __AVR_ATmega2561__ + +// Contributed by Martin Turski, company owner of EirDev, on the 29th of November, 2022 +// Contact E-Mail: turningtides@outlook.de +// Created specifically for the Marlin FW for AVR backwards-compatibility. +// Please expand this file with details of every supported AVR implementation. +// 1) download the latest technical reference manual +// 2) add the new technical reference manual below using a set of __AVR_*__ preprocessor definitions and a new __AVR_TRM*__ incrementing define +// 3) check which of the existing AVR registers exist on the new implementation and enable them +// 4) add any new register definitions +// 5) add the register memory layout below the definitions +// 6) extend the _ATmega_resetperipherals functions +// 7) extend the _ATmega_savePinAlternate function +// 8) copy the extension idea to _ATmega_restorePinAlternate and finish implementing it +// You need to adjust the eATmegaPort enumeration aswell. + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + #error "Fatal error: __AVR_TRMn__ already defined! (n: 01|02|03|04|05)" +#endif + +#if defined(__AVR_ATmega2560__) || defined(__AVR_ATmega2561__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega1281__) || defined(__AVR_ATmega640__) + // ATmega2560 technical reference manual date: 28th of November, 2022 + // ATmega640-1280-1281-2560-2561-Datasheet-DS40002211A.pdf + #define __AVR_TRM01__ +#elif defined(__AVR_ATmega164A__) || defined(__AVR_ATmega164PA__) || defined(__AVR_ATmega324A__) || defined(__AVR_ATmega324PA__) || defined(__AVR_ATmega644A__) || defined(__AVR_ATmega644PA__) || defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__) + // ATmega1284 technical reference manual date: 29th of November, 2022 + // ATmega164A_PA-324A_PA-644A_PA-1284_P_Data-Sheet-40002070B.pdf + #define __AVR_TRM02__ +#elif defined(__AVR_ATmega48A__) || defined(__AVR_ATmega48PA__) || defined(__AVR_ATmega88A__) || defined(__AVR_ATmega88PA__) || defined(__AVR_ATmega168A__) || defined(__AVR_ATmega168PA__) || defined(__AVR_ATmega328__) || defined(__AVR_ATmega328P__) + // ATmega328 technical reference manual date: 29th of November, 2022 + // ATmega48A-PA-88A-PA-168A-PA-328-P-DS-DS40002061B.pdf + #define __AVR_TRM03__ +#elif defined(__AVR_AT90USB1287__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1286P__) || defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB646P__) || defined(__AVR_AT90USB647__) + // AT90USB1287 technical reference manual ID: 7593D–AVR–07/06 + // Preliminary. + #define __AVR_TRM04__ +#elif defined(__AVR_ATmega164P__) || defined(__AVR_ATmega164V__) || defined(__AVR_ATmega324P__) || defined(__AVR_ATmega324V__) || defined(__AVR_ATmega644P__) || defined(__AVR_ATmega644V__) + // ATmega644P technical reference manual date: 14th of February, 2023 + // ATmega164P-324P-644P-Data-Sheet-40002071A.pdf + #define __AVR_TRM05__ +#endif + +/** + * HELPER FUNCTIONS + */ +namespace AVRHelpers { + + template + struct no_volatile { + typedef T type; + }; + + template + struct no_volatile : public no_volatile {}; + + template + struct voltype { + typedef T type; + }; + template + struct voltype { + typedef uint8_t type; + }; + template + struct voltype { + typedef uint16_t type; + }; + template + struct voltype { + typedef uint32_t type; + }; + + template + inline void dwrite(volatile T& v, const T& V) noexcept { + (volatile typename voltype ::type&)v = (const typename voltype ::type&)V; + } + +} // namespace AVRHelpers + +// As old as the ATmega series of CPU is, the worse the actual libraries making +// use of the MCU likely are. + +// These registers as references do not take program space since they are purely references. + +// It would be great if the old AVR definitions could be wasted in favor of these +// and code be rewritten to use the following more robust definitions. + +struct _bit_reg_t { + uint8_t val; + + bool getValue(uint8_t idx) const volatile { + return ( val & (1 << idx) ); + } + void setValue(uint8_t idx, bool value) volatile { + if (value) + val |= (1 << idx); + else + val &= ~(1 << idx); + } +}; + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + + typedef _bit_reg_t PIN_reg_t; + typedef _bit_reg_t DDR_reg_t; + typedef _bit_reg_t PORT_reg_t; + + struct PORT_dev_t { + PIN_reg_t _PIN; + DDR_reg_t _DDR; + PORT_reg_t _PORT; + + inline void operator = ( const PORT_dev_t& r ) volatile { + using namespace AVRHelpers; + dwrite(this->_PIN, r._PIN); + dwrite(this->_DDR, r._DDR); + dwrite(this->_PORT, r._PORT); + } + }; + static_assert(sizeof(PORT_dev_t) == 3, "invalid size of ATmega2560 GPIO_dev_t"); + +#endif // __AVR_TRM01__ || __AVR_TRM02__ || __AVR_TRM03__ || __AVR_TRM04__ || __AVR_TRM05__ + +#ifdef __AVR_TRM01__ + + struct _bitG_reg_t { + uint8_t val : 6; + uint8_t reserved1 : 2; + + bool getValue(uint8_t idx) const volatile { + return val & (1 << idx); + } + void setValue(uint8_t idx, bool value) volatile { + if (value) + val |= (1 << idx); + else + val &= ~(1 << idx); + } + }; + typedef _bitG_reg_t PING_reg_t; + typedef _bitG_reg_t DDRG_reg_t; + typedef _bitG_reg_t PORTG_reg_t; + + struct PORTG_dev_t { + PING_reg_t _PIN; + DDRG_reg_t _DDR; + PORTG_reg_t _PORT; + + inline void operator = ( const PORTG_dev_t& r ) volatile { + using namespace AVRHelpers; + dwrite(this->_PIN, r._PIN); + dwrite(this->_DDR, r._DDR); + dwrite(this->_PORT, r._PORT); + } + }; + +#endif + +#ifdef __AVR_TRM03__ + + struct _bitC_reg_t { + uint8_t val : 7; + uint8_t reserved1 : 1; + + bool getValue(uint8_t idx) const volatile { + return ( val & (1 << idx) ); + } + void setValue(uint8_t idx, bool value) volatile { + if (value) + val |= (1 << idx); + else + val &= ~(1 << idx); + } + }; + typedef _bitC_reg_t PINC_reg_t; + typedef _bitC_reg_t DDRC_reg_t; + typedef _bitC_reg_t PORTC_reg_t; + + struct PORTC_dev_t { + PINC_reg_t _PIN; + DDRC_reg_t _DDR; + PORTC_reg_t _PORT; + + inline void operator = ( const PORTC_dev_t& r ) volatile { + this->_PIN = r._PIN; + this->_DDR = r._DDR; + this->_PORT = r._PORT; + } + }; + +#endif + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + + struct TIFR0_reg_t { + uint8_t _TOV0 : 1; + uint8_t _OCF0A : 1; + uint8_t _OCF0B : 1; + uint8_t reserved1 : 5; + }; + static_assert(sizeof(TIFR0_reg_t) == 1, "invalid size of ATmega2560 TIFR0_reg_t"); + + struct TIFR1_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + uint8_t _TOV1 : 1; + uint8_t _OCF1A : 1; + uint8_t _OCF1B : 1; + uint8_t _OCF1C : 1; + uint8_t reserved1 : 1; + uint8_t _ICF1 : 1; + uint8_t reserved2 : 2; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM05__) + uint8_t _TOV1 : 1; + uint8_t _OCF1A : 1; + uint8_t _OCF1B : 1; + uint8_t reserved1 : 2; + uint8_t _ICF1 : 1; + uint8_t reserved2 : 2; + #endif + }; + static_assert(sizeof(TIFR1_reg_t) == 1, "invalid size of ATmega2560 TIFR1_reg_t"); + + struct TIFR2_reg_t { + uint8_t _TOV2 : 1; + uint8_t _OCF2A : 1; + uint8_t _OCF2B : 1; + uint8_t reserved1 : 5; + }; + static_assert(sizeof(TIFR2_reg_t) == 1, "invalid size of ATmega2560 TIFR2_reg_t"); + +#endif // __AVR_TRM01__ || __AVR_TRM02__ || __AVR_TRM03__ || __AVR_TRM04__ || __AVR_TRM05__ + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) + + struct TIFR3_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + uint8_t _TOV3 : 1; + uint8_t _OCF3A : 1; + uint8_t _OCF3B : 1; + uint8_t _OCF3C : 1; + uint8_t reserved1 : 1; + uint8_t _ICF3 : 1; + uint8_t reserved2 : 2; + #elif defined(__AVR_TRM02__) + uint8_t _TOV3 : 1; + uint8_t _OCF3A : 1; + uint8_t _OCF3B : 1; + uint8_t reserved1 : 2; + uint8_t _ICF3 : 1; + uint8_t reserved2 : 2; + #endif + }; + static_assert(sizeof(TIFR3_reg_t) == 1, "invalid size of ATmega2560 TIFR3_reg_t"); + +#endif // __AVR_TRM01__ || __AVR_TRM02__ || __AVR_TRM04__ + +#ifdef __AVR_TRM01__ + + struct TIFR4_reg_t { + uint8_t _TOV4 : 1; + uint8_t _OCF4A : 1; + uint8_t _OCF4B : 1; + uint8_t _OCF4C : 1; + uint8_t reserved1 : 1; + uint8_t _ICF4 : 1; + uint8_t reserved2 : 2; + }; + static_assert(sizeof(TIFR4_reg_t) == 1, "invalid size of ATmega2560 TIFR4_reg_t"); + + struct TIFR5_reg_t { + uint8_t _TOV5 : 1; + uint8_t _OCF5A : 1; + uint8_t _OCF5B : 1; + uint8_t _OCF5C : 1; + uint8_t reserved1 : 1; + uint8_t _ICF5 : 1; + uint8_t reserved2 : 2; + }; + static_assert(sizeof(TIFR5_reg_t) == 1, "invalid size of ATmega2560 TIFR5_reg_t"); + +#endif // __AVR_TRM01__ + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + + struct PCIFR_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM03__) + uint8_t _PCIF0 : 1; + uint8_t _PCIF1 : 1; + uint8_t _PCIF2 : 1; + uint8_t reserved1 : 5; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + uint8_t _PCIF0 : 1; + uint8_t _PCIF1 : 1; + uint8_t _PCIF2 : 1; + uint8_t _PCIF3 : 1; + uint8_t reserved1 : 4; + #elif defined(__AVR_TRM04__) + uint8_t _PCIF0 : 1; + uint8_t reserved1 : 7; + #endif + }; + static_assert(sizeof(PCIFR_reg_t) == 1, "invalid size of ATmega2560 PCIFR_reg_t"); + + struct EIFR_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + uint8_t _INTF0 : 1; + uint8_t _INTF1 : 1; + uint8_t _INTF2 : 1; + uint8_t _INTF3 : 1; + uint8_t _INTF4 : 1; + uint8_t _INTF5 : 1; + uint8_t _INTF6 : 1; + uint8_t _INTF7 : 1; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + uint8_t _INTF0 : 1; + uint8_t _INTF1 : 1; + uint8_t _INTF2 : 1; + uint8_t reserved1 : 5; + #elif defined(__AVR_TRM03__) + uint8_t _INTF0 : 1; + uint8_t _INTF1 : 1; + uint8_t reserved1 : 6; + #endif + }; + static_assert(sizeof(EIFR_reg_t) == 1, "invalid size of ATmega2560 EIFR_reg_t"); + + struct EIMSK_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + uint8_t _INT0 : 1; + uint8_t _INT1 : 1; + uint8_t _INT2 : 1; + uint8_t _INT3 : 1; + uint8_t _INT4 : 1; + uint8_t _INT5 : 1; + uint8_t _INT6 : 1; + uint8_t _INT7 : 1; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + uint8_t _INT0 : 1; + uint8_t _INT1 : 1; + uint8_t _INT2 : 1; + uint8_t reserved1 : 5; + #elif defined(__AVR_TRM03__) + uint8_t _INT0 : 1; + uint8_t _INT1 : 1; + uint8_t reserved1 : 6; + #endif + }; + static_assert(sizeof(EIMSK_reg_t) == 1, "invalid size of ATmega2560 EIMSK_reg_t"); + + struct EECR_reg_t { + uint8_t _EERE : 1; + uint8_t _EEPE : 1; + uint8_t _EEMPE : 1; + uint8_t _EERIE : 1; + uint8_t _EEPM0 : 1; + uint8_t _EEPM1 : 1; + uint8_t reserved1 : 2; + }; + static_assert(sizeof(EECR_reg_t) == 1, "invalid size of ATmega2560 EECR_reg_t"); + + struct EEAR_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + uint16_t _EEAR : 12; + uint16_t reserved1 : 4; + #elif defined(__AVR_TRM03__) + #if defined(__AVR_ATmega88A__) || defined(__AVR_ATmega88PA__) || defined(__AVR_ATmega168A__) || defined(__AVR_ATmega168PA__) || defined(__AVR_ATmega328P__) + uint16_t _EEAR : 16; + #else + uint8_t _EEAR : 8; + uint8_t reserved1 : 8; + #endif + #endif + }; + static_assert(sizeof(EEAR_reg_t) == 2, "invalid size of ATmega2560 EEAR_reg_t"); + + struct GTCCR_reg_t { + uint8_t _PSRSYNC : 1; + uint8_t _PSRASY : 1; + uint8_t reserved1 : 5; + uint8_t _TSM : 1; + }; + static_assert(sizeof(GTCCR_reg_t) == 1, "invalid size of ATmega2560 GTCCR_reg_t"); + + struct SPCR_reg_t { + uint8_t _SPR : 2; + uint8_t _CPHA : 1; + uint8_t _CPOL : 1; + uint8_t _MSTR : 1; + uint8_t _DORD : 1; + uint8_t _SPE : 1; + uint8_t _SPIE : 1; + }; + static_assert(sizeof(SPCR_reg_t) == 1, "invalid size of ATmega2560 SPCR_reg_t"); + + struct SPSR_reg_t { + uint8_t _SPI2X : 1; + uint8_t reserved1 : 5; + uint8_t _WCOL : 1; + uint8_t _SPIF : 1; + }; + static_assert(sizeof(SPSR_reg_t) == 1, "invalid size of ATmega2560 SPSR_reg_t"); + + struct ACSR_reg_t { + uint8_t _ACIS : 2; + uint8_t _ACIC : 1; + uint8_t _ACIE : 1; + uint8_t _ACI : 1; + uint8_t _ACO : 1; + uint8_t _ACBG : 1; + uint8_t _ACD : 1; + }; + static_assert(sizeof(ACSR_reg_t) == 1, "invalid size of ATmega2560 ACSR_reg_t"); + + struct SMCR_reg_t { + uint8_t _SE : 1; + uint8_t _SM : 3; + uint8_t reserved1 : 4; + }; + static_assert(sizeof(SMCR_reg_t) == 1, "invalid size of ATmega2560 SMCR_reg_t"); + + struct MCUSR_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + uint8_t _PORF : 1; + uint8_t _EXTRF : 1; + uint8_t _BORF : 1; + uint8_t _WDRF : 1; + uint8_t _JTRF : 1; + uint8_t reserved1 : 3; + #elif defined(__AVR_TRM03__) + uint8_t _PORF : 1; + uint8_t _EXTRF : 1; + uint8_t _BORF : 1; + uint8_t _WDRF : 1; + uint8_t reserved1 : 4; + #endif + }; + static_assert(sizeof(MCUSR_reg_t) == 1, "invalid size of ATmega2560 MCUSR_reg_t"); + + struct MCUCR_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + uint8_t _IVCE : 1; + uint8_t _IVSEL : 1; + uint8_t reserved1 : 2; + uint8_t _PUD : 1; + uint8_t reserved2 : 2; + uint8_t _JTD : 1; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + uint8_t _IVCE : 1; + uint8_t _IVSEL : 1; + uint8_t reserved1 : 2; + uint8_t _PUD : 1; + uint8_t _BODSE : 1; + uint8_t _BODS : 1; + uint8_t _JTD : 1; + #elif defined(__AVR_TRM03__) + uint8_t _IVCE : 1; + uint8_t _IVSEL : 1; + uint8_t reserved1 : 2; + uint8_t _PUD : 1; + uint8_t _BODSE : 1; + uint8_t _BODS : 1; + uint8_t reserved2 : 1; + #endif + }; + static_assert(sizeof(MCUCR_reg_t) == 1, "invalid size of ATmega2560 MCUCR_reg_t"); + + struct SPMCSR_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + uint8_t _SPMEN : 1; + uint8_t _PGERS : 1; + uint8_t _PGWRT : 1; + uint8_t _BLBSET : 1; + uint8_t _RWWSRE : 1; + uint8_t _SIGRD : 1; + uint8_t _RWWSB : 1; + uint8_t _SPMIE : 1; + #elif defined(__AVR_TRM03__) + #if defined(__AVR_ATmega88A__) || defined(__AVR_ATmega88PA__) || defined(__AVR_ATmega168A__) || defined(__AVR_ATmega168PA__) || defined(__AVR_ATmega328P__) + uint8_t _SPMEN : 1; + uint8_t _PGERS : 1; + uint8_t _PGWRT : 1; + uint8_t _BLBSET : 1; + uint8_t _RWWSRE : 1; + uint8_t _SIGRD : 1; + uint8_t _RWWSB : 1; + uint8_t _SPMIE : 1; + #else + uint8_t _SPMEN : 1; + uint8_t _PGERS : 1; + uint8_t _PGWRT : 1; + uint8_t _BLBSET : 1; + uint8_t reserved1 : 1; + uint8_t _SIGRD : 1; + uint8_t reserved2 : 1; + uint8_t _SPMIE : 1; + #endif + #endif + }; + static_assert(sizeof(SPMCSR_reg_t) == 1, "invalid size of ATmega2560 SPMCSR_reg_t"); + +#endif // __AVR_TRM01__ || __AVR_TRM02__ || __AVR_TRM03__ || __AVR_TRM04__ + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + + struct RAMPZ_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) + uint8_t _RAMPZ : 2; + uint8_t reserved1 : 6; + #elif defined(__AVR_TRM05__) + uint8_t _RAMPZ : 1; + uint8_t reserved1 : 7; + #endif + }; + static_assert(sizeof(RAMPZ_reg_t) == 1, "invalid size of ATmega2560 RAMPZ_reg_t"); + +#endif // __AVR_TRM01__ || __AVR_TRM02__ || __AVR_TRM04__ || __AVR_TRM05__ + +#ifdef __AVR_TRM01__ + + struct EIND_reg_t { + uint8_t _EIND0 : 1; + uint8_t reserved1 : 7; + }; + static_assert(sizeof(EIND_reg_t) == 1, "invalid size of ATmega2560 EIND_reg_t"); + +#endif // __AVR_TRM01__ + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + + struct SP_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + uint16_t _SP; + #elif defined(__AVR_TRM03__) + #if defined(__AVR_ATmega88A__) || defined(__AVR_ATmega88PA__) || defined(__AVR_ATmega168A__) || defined(__AVR_ATmega168PA__) || defined(__AVR_ATmega328P__) + uint16_t _SP : 11; + uint16_t reserved1 : 5; + #else + uint16_t _SP : 10; + uint16_t reserved1 : 6; + #endif + #endif + }; + static_assert(sizeof(SP_reg_t) == 2, "invalid size of ATmega2560 SP_reg_t"); + + struct SREG_reg_t { + uint8_t _C : 1; + uint8_t _Z : 1; + uint8_t _N : 1; + uint8_t _V : 1; + uint8_t _S : 1; + uint8_t _H : 1; + uint8_t _T : 1; + uint8_t _I : 1; + }; + static_assert(sizeof(SREG_reg_t) == 1, "invalid size of ATmega2560 SREG_reg_t"); + + struct WDTCSR_reg_t { + uint8_t _WDP0 : 1; + uint8_t _WDP1 : 1; + uint8_t _WDP2 : 1; + uint8_t _WDE : 1; + uint8_t _WDCE : 1; + uint8_t _WDP3 : 1; + uint8_t _WDIE : 1; + uint8_t _WDIF : 1; + }; + static_assert(sizeof(WDTCSR_reg_t) == 1, "invalid size of ATmega2560 WDTCSR_reg_t"); + + struct CLKPR_reg_t { + uint8_t _CLKPS : 4; + uint8_t reserved1 : 3; + uint8_t _CLKPCE : 1; + }; + static_assert(sizeof(CLKPR_reg_t) == 1, "invalid size of ATmega2560 CLKPR_reg_t"); + + struct PRR0_reg_t { + #ifdef __AVR_TRM01__ + uint8_t _PRADC : 1; + uint8_t _PRUSART0 : 1; + uint8_t _PRSPI : 1; + uint8_t _PRTIM1 : 1; + uint8_t reserved1 : 1; + uint8_t _PRTIM0 : 1; + uint8_t _PRTIM2 : 1; + uint8_t _PRTWI : 1; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + uint8_t _PRADC : 1; + uint8_t _PRUSART0 : 1; + uint8_t _PRSPI : 1; + uint8_t _PRTIM1 : 1; + uint8_t _PRUSART1 : 1; + uint8_t _PRTIM0 : 1; + uint8_t _PRTIM2 : 1; + uint8_t _PRTWI : 1; + #elif defined(__AVR_TRM03__) + uint8_t _PRADC : 1; + uint8_t _PRUSART0 : 1; + uint8_t _PRSPI : 1; + uint8_t _PRTIM1 : 1; + uint8_t reserved1 : 1; + uint8_t _PRTIM0 : 1; + uint8_t _PRTIM2 : 1; + uint8_t _PRTWI : 1; + #elif defined(__AVR_TRM04__) + uint8_t _PRADC : 1; + uint8_t reserved1 : 1; + uint8_t _PRSPI : 1; + uint8_t _PRTIM1 : 1; + uint8_t reserved2 : 1; + uint8_t _PRTIM0 : 1; + uint8_t _PRTIM2 : 1; + uint8_t _PRTWI : 1; + #endif + }; + static_assert(sizeof(PRR0_reg_t) == 1, "invalid size of ATmega2560 PRR0_reg_t"); + +#endif // __AVR_TRM01__ || __AVR_TRM02__ || __AVR_TRM03__ || __AVR_TRM04__ || __AVR_TRM05__ + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) + + struct PRR1_reg_t { + #ifdef __AVR_TRM01__ + uint8_t _PRUSART1 : 1; + uint8_t _PRUSART2 : 1; + uint8_t _PRUSART3 : 1; + uint8_t _PRTIM3 : 1; + uint8_t _PRTIM4 : 1; + uint8_t _PRTIM5 : 1; + uint8_t reserved1 : 2; + #elif defined(__AVR_TRM02__) + uint8_t _PRTIM3 : 1; + uint8_t reserved1 : 7; + #elif defined(__AVR_TRM04__) + uint8_t _PRUSART1 : 1; + uint8_t reserved1 : 2; + uint8_t _PRTIM3 : 1; + uint8_t reserved2 : 3; + uint8_t _PRUSB : 1; + #endif + }; + static_assert(sizeof(PRR1_reg_t) == 1, "invalid size of ATmega2560 PRR1_reg_t"); + +#endif // __AVR_TRM01__ || __AVR_TRM02__ || __AVR_TRM04__ + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + + struct PCICR_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM03__) + uint8_t _PCIE0 : 1; + uint8_t _PCIE1 : 1; + uint8_t _PCIE2 : 1; + uint8_t reserved1 : 5; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + uint8_t _PCIE0 : 1; + uint8_t _PCIE1 : 1; + uint8_t _PCIE2 : 1; + uint8_t _PCIE3 : 1; + uint8_t reserved1 : 4; + #elif defined(__AVR_TRM04__) + uint8_t _PCIE0 : 1; + uint8_t reserved1 : 7; + #endif + }; + static_assert(sizeof(PCICR_reg_t) == 1, "invalid size of ATmega2560 PCICR_reg_t"); + + struct EICRA_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + uint8_t _ISC0 : 2; + uint8_t _ISC1 : 2; + uint8_t _ISC2 : 2; + uint8_t _ISC3 : 2; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + uint8_t _ISC0 : 2; + uint8_t _ISC1 : 2; + uint8_t _ISC2 : 2; + uint8_t reserved1 : 2; + #elif defined(__AVR_TRM03__) + uint8_t _ISC0 : 2; + uint8_t _ISC1 : 2; + uint8_t reserved1 : 4; + #endif + }; + static_assert(sizeof(EICRA_reg_t) == 1, "invalid size of ATmega2560 EICRA_reg_t"); + +#endif // __AVR_TRM01__ || __AVR_TRM02__ || __AVR_TRM03__ || __AVR_TRM04__ || __AVR_TRM05__ + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + + struct EICRB_reg_t { + uint8_t _ISC4 : 2; + uint8_t _ISC5 : 2; + uint8_t _ISC6 : 2; + uint8_t _ISC7 : 2; + }; + static_assert(sizeof(EICRB_reg_t) == 1, "invalid size of ATmega2560 EICRB_reg_t"); + +#endif // __AVR_TRM01__ || __AVR_TRM04__ + +#if defined(__AVR_TRM03__) + + struct _bitPCMSK1_reg_t { + uint8_t val : 7; + uint8_t reserved1 : 1; + + bool getValue(uint8_t idx) { return val & (1 << idx); } + void setValue(uint8_t idx, bool value) { + if (value) + val |= (1 << idx); + else + val &= ~(1 << idx); + } + }; + +#endif // __AVR_TRM03__ + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + + struct TIMSK0_reg_t { + #ifdef __AVR_TRM01__ + uint8_t _TOIE0 : 1; + uint8_t _OCIE0A : 1; + uint8_t _OCIE0B : 1; + uint8_t _OCIE0C : 1; + uint8_t reserved1 : 1; + uint8_t _ICIE0 : 1; + uint8_t reserved2 : 2; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + uint8_t _TOIE0 : 1; + uint8_t _OCIE0A : 1; + uint8_t _OCIE0B : 1; + uint8_t reserved1 : 5; + #endif + }; + static_assert(sizeof(TIMSK0_reg_t) == 1, "invalid size of ATmega2560 TIMSK0_reg_t"); + + struct TIMSK1_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + uint8_t _TOIE1 : 1; + uint8_t _OCIE1A : 1; + uint8_t _OCIE1B : 1; + uint8_t _OCIE1C : 1; + uint8_t reserved1 : 1; + uint8_t _ICIE1: 1; + uint8_t reserved2 : 2; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM05__) + uint8_t _TOIE1 : 1; + uint8_t _OCIE1A : 1; + uint8_t _OCIE1B : 1; + uint8_t reserved1 : 2; + uint8_t _ICIE1: 1; + uint8_t reserved2 : 2; + #endif + }; + static_assert(sizeof(TIMSK1_reg_t) == 1, "invalid size of ATmega2560 TIMSK1_reg_t"); + + struct TIMSK2_reg_t { + uint8_t _TOIE2 : 1; + uint8_t _OCIE2A : 1; + uint8_t _OCIE2B : 1; + uint8_t reserved1 : 5; + }; + static_assert(sizeof(TIMSK2_reg_t) == 1, "invalid size of ATmega2560 TIMSK2_reg_t"); + +#endif // __AVR_TRM01__ || __AVR_TRM02__ || __AVR_TRM03__ || __AVR_TRM04__ || __AVR_TRM05__ + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) + + struct TIMSK3_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + uint8_t _TOIE3 : 1; + uint8_t _OCIE3A : 1; + uint8_t _OCIE3B : 1; + uint8_t _OCIE3C : 1; + uint8_t reserved1 : 1; + uint8_t _ICIE3 : 1; + uint8_t reserved2 : 2; + #elif defined(__AVR_TRM02__) + uint8_t _TOIE3 : 1; + uint8_t _OCIE3A : 1; + uint8_t _OCIE3B : 1; + uint8_t reserved1 : 2; + uint8_t _ICIE3 : 1; + uint8_t reserved2 : 2; + #endif + }; + static_assert(sizeof(TIMSK3_reg_t) == 1, "invalid size of ATmega2560 TIMSK3_reg_t"); + +#endif // __AVR_TRM01__ || __AVR_TRM02__ || __AVR_TRM04__ + +#ifdef __AVR_TRM01__ + + struct TIMSK4_reg_t { + uint8_t _TOIE4 : 1; + uint8_t _OCIE4A : 1; + uint8_t _OCIE4B : 1; + uint8_t _OCIE4C : 1; + uint8_t reserved1 : 1; + uint8_t _ICIE4 : 1; + uint8_t reserved2 : 2; + }; + static_assert(sizeof(TIMSK4_reg_t) == 1, "invalid size of ATmega2560 TIMSK4_reg_t"); + + struct TIMSK5_reg_t { + uint8_t _TOIE5 : 1; + uint8_t _OCIE5A : 1; + uint8_t _OCIE5B : 1; + uint8_t _OCIE5C : 1; + uint8_t reserved1 : 1; + uint8_t _ICIE5 : 1; + uint8_t reserved2 : 2; + }; + static_assert(sizeof(TIMSK5_reg_t) == 1, "invalid size of ATmega2560 TIMSK5_reg_t"); + +#endif // __AVR_TRM01__ + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + + struct XMCRA_reg_t { + uint8_t _SRW0 : 2; + uint8_t _SRW1 : 2; + uint8_t _SRL : 3; + uint8_t _SRE : 1; + }; + static_assert(sizeof(XMCRA_reg_t) == 1, "invalid size of ATmega2560 XMCRA_reg_t"); + + struct XMCRB_reg_t { + uint8_t _XMM : 3; + uint8_t reserved1 : 4; + uint8_t _XMBK : 1; + }; + static_assert(sizeof(XMCRB_reg_t) == 1, "invalid size of ATmega2560 XMCRB_reg_t"); + +#endif // __AVR_TRM01__ || __AVR_TRM04__ + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + + struct ADCSRA_reg_t { + uint8_t _ADPS : 3; + uint8_t _ADIE : 1; + uint8_t _ADIF : 1; + uint8_t _ADATE : 1; + uint8_t _ADSC : 1; + uint8_t _ADEN : 1; + }; + static_assert(sizeof(ADCSRA_reg_t) == 1, "invalid size of ATmega2560 ADCSRA_reg_t"); + + struct ADCSRB_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + uint8_t _ADTS : 3; + uint8_t _MUX5 : 1; + uint8_t reserved1 : 2; + uint8_t _ACME : 1; + uint8_t reserved2 : 1; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM05__) + uint8_t _ADTS : 3; + uint8_t reserved1 : 3; + uint8_t _ACME : 1; + uint8_t reserved2 : 1; + #endif + }; + static_assert(sizeof(ADCSRB_reg_t) == 1, "invalid size of ATmega2560 ADCSRB_reg_t"); + + struct ADMUX_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + uint8_t _MUX0 : 1; + uint8_t _MUX1 : 1; + uint8_t _MUX2 : 1; + uint8_t _MUX3 : 1; + uint8_t _MUX4 : 1; + uint8_t _ADLAR : 1; + uint8_t _REFS0 : 1; + uint8_t _REFS1 : 1; + #elif defined(__AVR_TRM03__) + uint8_t _MUX0 : 1; + uint8_t _MUX1 : 1; + uint8_t _MUX2 : 1; + uint8_t _MUX3 : 1; + uint8_t reserved1 : 1; + uint8_t _ADLAR : 1; + uint8_t _REFS0 : 1; + uint8_t _REFS1 : 1; + #endif + }; + static_assert(sizeof(ADMUX_reg_t) == 1, "invalid size of ATmega2560 ADMUX_reg_t"); + +#endif // __AVR_TRM01__ || __AVR_TRM02__ || __AVR_TRM03__ || __AVR_TRM04__ + +#ifdef __AVR_TRM01__ + + struct DIDR2_reg_t { + uint8_t _ADC8D : 1; + uint8_t _ADC9D : 1; + uint8_t _ADC10D : 1; + uint8_t _ADC11D : 1; + uint8_t _ADC12D : 1; + uint8_t _ADC13D : 1; + uint8_t _ADC14D : 1; + uint8_t _ADC15D : 1; + }; + static_assert(sizeof(DIDR2_reg_t) == 1, "invalid size of ATmega2560 DIDR2_reg_t"); + +#endif // __AVR_TRM01__ + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + + struct DIDR0_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + uint8_t _ADC0D : 1; + uint8_t _ADC1D : 1; + uint8_t _ADC2D : 1; + uint8_t _ADC3D : 1; + uint8_t _ADC4D : 1; + uint8_t _ADC5D : 1; + uint8_t _ADC6D : 1; + uint8_t _ADC7D : 1; + #elif defined(__AVR_TRM03__) + uint8_t _ADC0D : 1; + uint8_t _ADC1D : 1; + uint8_t _ADC2D : 1; + uint8_t _ADC3D : 1; + uint8_t _ADC4D : 1; + uint8_t _ADC5D : 1; + uint8_t reserved1 : 2; + #endif + }; + static_assert(sizeof(DIDR0_reg_t) == 1, "invalid size of ATmega2560 DIDR0_reg_t"); + + struct DIDR1_reg_t { + uint8_t _AIN0D : 1; + uint8_t _AIN1D : 1; + uint8_t reserved1 : 6; + }; + static_assert(sizeof(DIDR1_reg_t) == 1, "invalid size of ATmega2560 DIDR1_reg_t"); + + struct TCCRnA_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + uint8_t _WGMn0 : 1; + uint8_t _WGMn1 : 1; + uint8_t _COMnC : 2; + uint8_t _COMnB : 2; + uint8_t _COMnA : 2; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM05__) + uint8_t _WGMn0 : 1; + uint8_t _WGMn1 : 1; + uint8_t reserved1 : 2; + uint8_t _COMnB : 2; + uint8_t _COMnA : 2; + #endif + }; + static_assert(sizeof(TCCRnA_reg_t) == 1, "invalid size of ATmega2560 TCCRnA_reg_t"); + + struct TCCRnB_reg_t { + uint8_t _CSn : 3; + uint8_t _WGMn2 : 1; + uint8_t _WGMn3 : 1; + uint8_t reserved1 : 1; + uint8_t _ICESn : 1; + uint8_t _ICNCn : 1; + }; + static_assert(sizeof(TCCRnB_reg_t) == 1, "invalid size of ATmega2560 TCCRnB_reg_t"); + + struct TCCRnC_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + uint8_t reserved1 : 5; + uint8_t _FOCnC : 1; + uint8_t _FOCnB : 1; + uint8_t _FOCnA : 1; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM05__) + uint8_t reserved1 : 6; + uint8_t _FOCnB : 1; + uint8_t _FOCnA : 1; + #endif + }; + static_assert(sizeof(TCCRnC_reg_t) == 1, "invalid size of ATmega2560 TCCRnC_reg_t"); + + struct TIMER_dev_t { + TCCRnA_reg_t _TCCRnA; + TCCRnB_reg_t _TCCRnB; + TCCRnC_reg_t _TCCRnC; + uint8_t reserved1; + uint16_t _TCNTn; + uint16_t _ICRn; + uint16_t _OCRnA; + uint16_t _OCRnB; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + uint16_t _OCRnC; + #endif + + inline void operator = ( const TIMER_dev_t& r ) volatile { + using namespace AVRHelpers; + dwrite(this->_TCCRnA, r._TCCRnA); + dwrite(this->_TCCRnB, r._TCCRnB); + dwrite(this->_TCCRnC, r._TCCRnC); + this->reserved1 = r.reserved1; + this->_TCNTn = r._TCNTn; + this->_ICRn = r._ICRn; + this->_OCRnA = r._OCRnA; + this->_OCRnB = r._OCRnB; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + this->_OCRnC = r._OCRnC; + #endif + } + }; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + static_assert(sizeof(TIMER_dev_t) == 14, "invalid size of ATmega2560 TIMER_dev_t"); + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM05__) + static_assert(sizeof(TIMER_dev_t) == 12, "invalid size of ATmega1284 TIMER_dev_t"); + #endif + + struct TCCRnA_8bit_reg_t { + uint8_t _WGMn0 : 1; + uint8_t _WGMn1 : 1; + uint8_t reserved1 : 2; + uint8_t _COMnB : 2; + uint8_t _COMnA : 2; + }; + static_assert(sizeof(TCCRnA_8bit_reg_t) == 1, "invalid size of ATmega2560 TCCRnA_8bit_reg_t"); + + struct TCCRnB_8bit_reg_t { + uint8_t _CSn : 3; + uint8_t _WGMn2 : 1; + uint8_t reserved1 : 2; + uint8_t _FOCnB : 1; + uint8_t _FOCnA : 1; + }; + static_assert(sizeof(TCCRnB_8bit_reg_t) == 1, "invalid size of ATmega2560 TCCRnB_8bit_reg_t"); + + struct TIMER_8bit_dev_t { + TCCRnA_8bit_reg_t _TCCRnA; + TCCRnB_8bit_reg_t _TCCRnB; + uint8_t _TCNTn; + uint8_t _OCRnA; + uint8_t _OCRnB; + + inline void operator = ( const TIMER_8bit_dev_t& r ) volatile { + using namespace AVRHelpers; + dwrite(this->_TCCRnA, r._TCCRnA); + dwrite(this->_TCCRnB, r._TCCRnB); + this->_TCNTn = r._TCNTn; + this->_OCRnA = r._OCRnA; + this->_OCRnB = r._OCRnB; + } + }; + static_assert(sizeof(TIMER_8bit_dev_t) == 5, "invalid size of ATmega2560 TIMER_8bit_dev_t"); + + struct ASSR_reg_t { + uint8_t _TCR2BUB : 1; + uint8_t _TCR2AUB : 1; + uint8_t _OCR2BUB : 1; + uint8_t _OCR2AUB : 1; + uint8_t _TCN2UB : 1; + uint8_t _AS2 : 1; + uint8_t _EXCLK : 1; + uint8_t reserved1 : 1; + }; + static_assert(sizeof(ASSR_reg_t) == 1, "invalid size of ATmega2560 ASSR_reg_t"); + + struct TWSR_reg_t { + uint8_t _TWPS0 : 1; + uint8_t _TWPS1 : 1; + uint8_t reserved1 : 1; + uint8_t _TWS3 : 1; + uint8_t _TWS4 : 1; + uint8_t _TWS5 : 1; + uint8_t _TWS6 : 1; + uint8_t _TWS7 : 1; + }; + static_assert(sizeof(TWSR_reg_t) == 1, "invalid size of ATmega2560 TWSR_reg_t"); + + struct TWAR_reg_t { + uint8_t _TWGCE : 1; + uint8_t _TWA : 7; + }; + static_assert(sizeof(TWAR_reg_t) == 1, "invalid size of ATmega2560 TWAR_reg_t"); + + struct TWCR_reg_t { + uint8_t _TWIE : 1; + uint8_t reserved1 : 1; + uint8_t _TWEN : 1; + uint8_t _TWWC : 1; + uint8_t _TWSTO : 1; + uint8_t _TWSTA : 1; + uint8_t _TWEA : 1; + uint8_t _TWINT : 1; + }; + static_assert(sizeof(TWCR_reg_t) == 1, "invalid size of ATmega2560 TWCR_reg_t"); + + struct TWAMR_reg_t { + uint8_t reserved1 : 1; + uint8_t _TWAM : 7; + }; + static_assert(sizeof(TWAMR_reg_t) == 1, "invalid size of ATmega2560 TWAMR_reg_t"); + + struct UBRRn_reg_t { + uint16_t _UBRR : 12; + uint16_t reserved1 : 4; + }; + static_assert(sizeof(UBRRn_reg_t) == 2, "invalid size of ATmega2560 UBRRn_reg_t)"); + + struct UCSRnC_reg_t { + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) + uint8_t _UCPOL : 1; + uint8_t _UCSZn0 : 1; + uint8_t _UCSZn1 : 1; + uint8_t _USBS : 1; + uint8_t _UPM : 2; + uint8_t _UMSEL : 2; + #elif defined(__AVR_TRM05__) + uint8_t _UCPOL : 1; + uint8_t _UCPHA : 1; + uint8_t _UDORD : 1; + uint8_t reserved1 : 3; + uint8_t _UMSEL : 2; + #endif + }; + static_assert(sizeof(UCSRnC_reg_t) == 1, "invalid size of ATmega2560 UCSRnC_reg_t"); + + struct UCSRnB_reg_t { + uint8_t _TXB8 : 1; + uint8_t _RXB8 : 1; + uint8_t _UCSZn2 : 1; + uint8_t _TXEN : 1; + uint8_t _RXEN : 1; + uint8_t _UDRIE : 1; + uint8_t _TXCIE : 1; + uint8_t _RXCIE : 1; + }; + static_assert(sizeof(UCSRnB_reg_t) == 1, "invalid size of ATmega2560 UCSRnB_reg_t"); + + struct UCSRnA_reg_t { + uint8_t _MPCM : 1; + uint8_t _U2X : 1; + uint8_t _UPE : 1; + uint8_t _DOR : 1; + uint8_t _FE : 1; + uint8_t _UDRE : 1; + uint8_t _TXC : 1; + uint8_t _RXC : 1; + }; + static_assert(sizeof(UCSRnA_reg_t) == 1, "invalid size of ATmega2560 UCSRnA_reg_t"); + + struct USART_dev_t { + UCSRnA_reg_t _UCSRnA; + UCSRnB_reg_t _UCSRnB; + UCSRnC_reg_t _UCSRnC; + uint8_t reserved1; + UBRRn_reg_t _UBRRn; + uint8_t _UDRn; + + inline void operator = ( const USART_dev_t& r ) volatile { + using namespace AVRHelpers; + dwrite(this->_UCSRnA, r._UCSRnA); + dwrite(this->_UCSRnB, r._UCSRnB); + dwrite(this->_UCSRnC, r._UCSRnC); + dwrite(this->reserved1, r.reserved1); + dwrite(this->_UBRRn, r._UBRRn); + dwrite(this->_UDRn, r._UDRn); + } + }; + static_assert(sizeof(USART_dev_t) == 7, "invalid size of ATmega2560 USART_dev_t"); + +#endif // __AVR_TRM01__ || __AVR_TRM02__ || __AVR_TRM03__ || __AVR_TRM04__ + +#ifdef __AVR_TRM04__ + + struct UHCON_reg_t { + uint8_t _SOFEN : 1; + uint8_t _RESET : 1; + uint8_t _RESUME : 1; + uint8_t reserved1 : 5; + }; + static_assert(sizeof(UHCON_reg_t) == 1, "invalid size of ATUSB90 UHCON_reg_t"); + + struct UHINT_reg_t { + uint8_t _DCONNI : 1; + uint8_t _DDISCI : 1; + uint8_t _RSTI : 1; + uint8_t _RSMEDI : 1; + uint8_t _RXRSMI : 1; + uint8_t _HSOFI : 1; + uint8_t _HWUPI : 1; + uint8_t reserved1 : 1; + }; + static_assert(sizeof(UHINT_reg_t) == 1, "invalid size of ATUSB90 UHINT_reg_t"); + + struct UHIEN_reg_t { + uint8_t _SUSPE : 1; + uint8_t _MSOFE : 1; + uint8_t _SOFE : 1; + uint8_t _EORSTE : 1; + uint8_t _WAKEUPE : 1; + uint8_t _EORSME : 1; + uint8_t _UPRSME : 1; + uint8_t reserved1 : 1; + }; + static_assert(sizeof(UHIEN_reg_t) == 1, "invalid size of ATUSB90 UHIEN_reg_t"); + + struct UHADDR_reg_t { + uint8_t _HADD : 7; + uint8_t reserved1 : 1; + }; + static_assert(sizeof(UHADDR_reg_t) == 1, "invalid size of ATUSB90 UHADDR_reg_t"); + + struct UHFNUM_reg_t { + uint16_t _FNUM : 11; + uint16_t reserved1 : 5; + }; + static_assert(sizeof(UHFNUM_reg_t) == 2, "invalid size of ATUSB90 UHFNUM_reg_t"); + + struct UPINTX_reg_t { + uint8_t _RXINI : 1; + uint8_t _RXSTALLI : 1; + uint8_t _TXOUTI : 1; + uint8_t _TXSTPI : 1; + uint8_t _PERRI : 1; + uint8_t _RWAL : 1; + uint8_t _NAKEDI : 1; + uint8_t _FIFOCON : 1; + }; + static_assert(sizeof(UPINTX_reg_t) == 1, "invalid size of ATUSB90 UPINTX_reg_t"); + + struct UPNUM_reg_t { + uint8_t _PNUM : 3; + uint8_t reserved1 : 5; + }; + static_assert(sizeof(UPNUM_reg_t) == 1, "invalid size of ATUSB90 UPNUM_reg_t"); + + struct UPRST_reg_t { + uint8_t _PRST : 7; + uint8_t reserved1 : 1; + }; + static_assert(sizeof(UPRST_reg_t) == 1, "invalid size of ATUSB90 UPRST_reg_t"); + + struct UPCONX_reg_t { + uint8_t _PEN : 1; + uint8_t reserved1 : 2; + uint8_t _RSTDT : 1; + uint8_t _AUTOSW : 1; + uint8_t _INMODE : 1; + uint8_t _PFREEZE : 1; + uint8_t reserved2 : 1; + }; + static_assert(sizeof(UPCONX_reg_t) == 1, "invalid size of ATUSB90 UPCONX_reg_t"); + + struct UPCFG0X_reg_t { + uint8_t _PEPNUM : 4; + uint8_t _PTOKEN : 2; + uint8_t _PTYPE : 2; + }; + static_assert(sizeof(UPCFG0X_reg_t) == 1, "invalid size of ATUSB90 UPCFG0_reg_t"); + + struct UPCFG1X_reg_t { + uint8_t reserved1 : 1; + uint8_t _ALLOC : 1; + uint8_t _PBK : 2; + uint8_t _PSIZE : 3; + uint8_t reserved2 : 1; + }; + static_assert(sizeof(UPCFG1X_reg_t) == 1, "invalid size of ATUSB90 UPCFG1X_reg_t"); + + struct UPSTAX_reg_t { + uint8_t _NBUSYBK : 2; + uint8_t _DTSEQ : 2; + uint8_t reserved1 : 1; + uint8_t _UNDERFI : 1; + uint8_t _OVERFI : 1; + uint8_t _CFGOK : 1; + }; + static_assert(sizeof(UPSTAX_reg_t) == 1, "invalid size of ATUSB90 UPSTAX_reg_t"); + + struct UPIENX_reg_t { + uint8_t _RXINE : 1; + uint8_t _RXSTALLE : 1; + uint8_t _TXOUTE : 1; + uint8_t _TXSTPE : 1; + uint8_t _PERRE : 1; + uint8_t reserved1 : 1; + uint8_t _NAKEDE : 1; + uint8_t _FLERRE : 1; + }; + static_assert(sizeof(UPIENX_reg_t) == 1, "invalid size of ATUSB90 UPIENX_reg_t"); + + struct UHWCON_reg_t { + uint8_t _UVREGE : 1; + uint8_t reserved1 : 3; + uint8_t _UVCONE : 1; + uint8_t reserved2 : 1; + uint8_t _UIDE : 1; + uint8_t _UIMOD : 1; + }; + static_assert(sizeof(UHWCON_reg_t) == 1, "invalid size of ATUSB90 UHWCON_reg_t"); + + struct USBCON_reg_t { + uint8_t _VBUSTE : 1; + uint8_t _IDTE : 1; + uint8_t reserved1 : 2; + uint8_t _OTGPADE : 1; + uint8_t _FRZCLK : 1; + uint8_t _HOST : 1; + uint8_t _USBE : 1; + }; + static_assert(sizeof(USBCON_reg_t) == 1, "invalid size of ATUSB90 USBCON_reg_t"); + + struct USBSTA_reg_t { + uint8_t _VBUS : 1; + uint8_t _ID : 1; + uint8_t reserved1 : 1; + uint8_t _SPEED : 1; + uint8_t reserved2 : 4; + }; + static_assert(sizeof(USBSTA_reg_t) == 1, "invalid size of ATUSB90 USBSTA_reg_t"); + + struct USBINT_reg_t { + uint8_t _VBUSTI : 1; + uint8_t _IDTI : 1; + uint8_t reserved1 : 6; + }; + static_assert(sizeof(USBINT_reg_t) == 1, "invalid size of ATUSB90 USBINT_reg_t"); + + struct UDPADD_reg_t { + uint16_t _DPADD : 11; + uint16_t reserved1 : 4; + uint16_t _DPACC : 1; + }; + static_assert(sizeof(UDPADD_reg_t) == 2, "invalid size of ATUSB90 UDPADD_reg_t"); + + struct OTGCON_reg_t { + uint8_t _VBUSRQC : 1; + uint8_t _VBUSREQ : 1; + uint8_t _VBUSHWC : 1; + uint8_t _SRPSEL : 1; + uint8_t _SRPREQ : 1; + uint8_t _HNPREQ : 1; + uint8_t reserved1 : 1; + uint8_t _zero : 1; + }; + static_assert(sizeof(OTGCON_reg_t) == 1, "invalid size of ATUSB90 OTGCON_reg_t"); + + struct OTGIEN_reg_t { + uint8_t _SRPE : 1; + uint8_t _VBERRE : 1; + uint8_t _BCERRE : 1; + uint8_t _ROLEEXE : 1; + uint8_t _HNPERRE : 1; + uint8_t _STOE : 1; + uint8_t reserved1 : 2; + }; + static_assert(sizeof(OTGIEN_reg_t) == 1, "invalid size of ATUSB90 OTGIEN_reg_t"); + + struct OTGINT_reg_t { + uint8_t _SRPI : 1; + uint8_t _VBERRI : 1; + uint8_t _BCERRI : 1; + uint8_t _ROLEEXI : 1; + uint8_t _HNPERRI : 1; + uint8_t _STOI : 1; + uint8_t reserved1 : 2; + }; + static_assert(sizeof(OTGINT_reg_t) == 1, "invalid size of ATUSB90 OTGINT_reg_t"); + + struct UDCON_reg_t { + uint8_t _DETACH : 1; + uint8_t _RMWKUP : 1; + uint8_t _LSM : 1; + uint8_t reserved1 : 5; + }; + static_assert(sizeof(UDCON_reg_t) == 1, "invalid size of ATUSB90 UDCON_reg_t"); + + struct UDINT_reg_t { + uint8_t _SUSPI : 1; + uint8_t _MSOFI : 1; + uint8_t _SOFI : 1; + uint8_t _EORSTI : 1; + uint8_t _WAKEUPI : 1; + uint8_t _EORSMI : 1; + uint8_t _UPRSMI : 1; + uint8_t reserved1 : 1; + }; + static_assert(sizeof(UDINT_reg_t) == 1, "invalid size of ATUSB90 UDINT_reg_t"); + + struct UDIEN_reg_t { + uint8_t _SUSPE : 1; + uint8_t _MSOFE : 1; + uint8_t _SOFE : 1; + uint8_t _EORSTE : 1; + uint8_t _WAKEUPE : 1; + uint8_t _EORSME : 1; + uint8_t _UPRSME : 1; + uint8_t reserved1 : 1; + }; + static_assert(sizeof(UDIEN_reg_t) == 1, "invalid size of ATUSB90 UDIEN_reg_t"); + + struct UDADDR_reg_t { + uint8_t _UADD : 7; + uint8_t _ADDEN : 1; + }; + static_assert(sizeof(UDADDR_reg_t) == 1, "invalid size of ATUSB90 UADDR_reg_t"); + + struct UDFNUM_reg_t { + uint16_t _FNUM : 11; + uint16_t reserved1 : 5; + }; + static_assert(sizeof(UDFNUM_reg_t) == 2, "invalid size of ATUSB90 UDFNUM_reg_t"); + + struct UDMFN_reg_t { + uint8_t reserved1 : 4; + uint8_t _FNCERR : 1; + uint8_t reserved2 : 3; + }; + static_assert(sizeof(UDMFN_reg_t) == 1, "invalid size of ATUSB90 UDMFN_reg_t"); + + struct UDTST_reg_t { + uint8_t reserved1 : 2; + uint8_t _TSTJ : 1; + uint8_t _TSTK : 1; + uint8_t _TSTPCKT : 1; + uint8_t _OPMODE2 : 1; + uint8_t reserved2 : 2; + }; + static_assert(sizeof(UDTST_reg_t) == 1, "invalid size of ATUSB90 UDTST_reg_t"); + + struct UEINTX_reg_t { + uint8_t _TXINI : 1; + uint8_t _STALLEDI : 1; + uint8_t _RXOUTI : 1; + uint8_t _RXSTPI : 1; + uint8_t _NAKOUTI : 1; + uint8_t _RWAL : 1; + uint8_t _NAKINI : 1; + uint8_t _FIFOCON : 1; + }; + static_assert(sizeof(UEINTX_reg_t) == 1, "invalid size of ATUSB90 UEINTX_reg_t"); + + struct UENUM_reg_t { + uint8_t _EPNUM : 3; + uint8_t reserved1 : 5; + }; + static_assert(sizeof(UENUM_reg_t) == 1, "invalid size of ATUSB90 UENUM_reg_t"); + + struct UERST_reg_t { + uint8_t _EPRST : 7; + uint8_t reserved1 : 1; + }; + static_assert(sizeof(UERST_reg_t) == 1, "invalid size of ATUSB90 UERST_reg_t"); + + struct UECONX_reg_t { + uint8_t _EPEN : 1; + uint8_t reserved1 : 2; + uint8_t _RSTDT : 1; + uint8_t _STALLRQC : 1; + uint8_t _STALLRQ : 1; + uint8_t reserved2 : 2; + }; + static_assert(sizeof(UECONX_reg_t) == 1, "invalid size of ATUSB90 UECONX_reg_t"); + + struct UECFG0X_reg_t { + uint8_t _EPDIR : 1; + uint8_t _NYETSDIS : 1; + uint8_t _AUTOSW : 1; + uint8_t _ISOSW : 1; + uint8_t reserved1 : 2; + uint8_t _EPTYPE : 2; + }; + static_assert(sizeof(UECFG0X_reg_t) == 1, "invalid size of ATUSB90 UECFG0X_reg_t"); + + struct UECFG1X_reg_t { + uint8_t reserved1 : 1; + uint8_t _ALLOC : 1; + uint8_t _EPBK : 2; + uint8_t _EPSIZE : 3; + uint8_t reserved2 : 1; + }; + static_assert(sizeof(UECFG1X_reg_t) == 1, "invalid size of ATUSB90 UECFG1X_reg_t"); + + struct UESTA0X_reg_t { + uint8_t _NBUSYBK : 2; + uint8_t _DTSEQ : 2; + uint8_t _ZLPSEEN : 1; + uint8_t _UNDERFI : 1; + uint8_t _OVERFI : 1; + uint8_t _CFGOK : 1; + }; + static_assert(sizeof(UESTA0X_reg_t) == 1, "invalid size of ATUSB90 UESTA0X_reg_t"); + + struct UESTA1X_reg_t { + uint8_t _CURRBK : 2; + uint8_t _CTRLDIR : 1; + uint8_t reserved1 : 5; + }; + static_assert(sizeof(UESTA1X_reg_t) == 1, "invalid size of ATUSB90 UESTA1X_reg_t"); + + struct UEIENX_reg_t { + uint8_t _TXINE : 1; + uint8_t _STALLEDE : 1; + uint8_t _RXOUTE : 1; + uint8_t _RXSTPE : 1; + uint8_t _NAKOUTE : 1; + uint8_t reserved1 : 1; + uint8_t _NAKINE : 1; + uint8_t _FLERRE : 1; + }; + static_assert(sizeof(UEIENX_reg_t) == 1, "invalid size of ATUSB90 UEIENX_reg_t"); + + struct UEBCX_reg_t { + uint16_t _BYCT : 11; + uint16_t reserved1 : 5; + }; + static_assert(sizeof(UEBCX_reg_t) == 2, "invalid size of ATUSB90 UEBCX_reg_t"); + + struct UEINT_reg_t { + uint8_t _EPINT : 7; + uint8_t reserved1 : 1; + }; + static_assert(sizeof(UEINT_reg_t) == 1, "invalid size of ATUSB90 UEINT_reg_t"); + + struct UPERRX_reg_t { + uint8_t _DATATGL : 1; + uint8_t _DATAPID : 1; + uint8_t _PID : 1; + uint8_t _TIMEOUT : 1; + uint8_t _CRC16 : 1; + uint8_t _COUNTER : 2; + uint8_t reserved1 : 1; + }; + static_assert(sizeof(UPERRX_reg_t) == 1, "invalid size of ATUSB90 UPERRX_reg_t"); + + struct UPBCX_reg_t { + uint16_t _PBYCT : 11; + uint16_t reserved1 : 5; + }; + static_assert(sizeof(UPBCX_reg_t) == 2, "invalid size of ATUSB90 UPBCX_reg_t"); + + struct OTGTCON_reg_t { + uint8_t _VALUE : 2; + uint8_t reserved1 : 3; + uint8_t _PAGE : 2; + uint8_t _one : 1; + }; + static_assert(sizeof(OTGTCON_reg_t) == 1, "invalid size of ATUSB90 OTGTCON_reg_t"); + + struct PLLCSR_reg_t { + uint8_t _PLOCK : 1; + uint8_t _PLLE : 1; + uint8_t _PLLP : 3; + uint8_t reserved1 : 3; + }; + static_assert(sizeof(PLLCSR_reg_t) == 1, "invalid size of ATUSB90 PLLCSR_reg_t"); + +#endif // __AVR_TRM04__ + +/** + * REGISTER MEMORY MAP + */ + +#define __AVR_DEFREG(tn,n,a) static volatile tn& n = *(tn*)a +#define _AVR_DEFREG(n,a) __AVR_DEFREG(n##_reg_t, _##n, a) + +#ifdef __AVR_TRM01__ + // page 399ff of ATmega640-1280-1281-2560-2561-Datasheet-DS40002211A.pdf + + __AVR_DEFREG(PORT_dev_t, _PORTA, 0x20); + __AVR_DEFREG(PORT_dev_t, _PORTB, 0x23); + __AVR_DEFREG(PORT_dev_t, _PORTC, 0x26); + __AVR_DEFREG(PORT_dev_t, _PORTD, 0x29); + __AVR_DEFREG(PORT_dev_t, _PORTE, 0x2C); + __AVR_DEFREG(PORT_dev_t, _PORTF, 0x2F); + __AVR_DEFREG(PORTG_dev_t, _PORTG, 0x32); + __AVR_DEFREG(PORT_dev_t, _PORTH, 0x100); + __AVR_DEFREG(PORT_dev_t, _PORTJ, 0x103); + __AVR_DEFREG(PORT_dev_t, _PORTK, 0x106); + __AVR_DEFREG(PORT_dev_t, _PORTL, 0x109); + __AVR_DEFREG(TIFR0_reg_t, _TIFR0, 0x35); + __AVR_DEFREG(TIFR1_reg_t, _TIFR1, 0x36); + __AVR_DEFREG(TIFR2_reg_t, _TIFR2, 0x37); + __AVR_DEFREG(TIFR3_reg_t, _TIFR3, 0x38); + __AVR_DEFREG(TIFR4_reg_t, _TIFR4, 0x39); + __AVR_DEFREG(TIFR5_reg_t, _TIFR5, 0x3A); + __AVR_DEFREG(PCIFR_reg_t, _PCIFR, 0x3B); + __AVR_DEFREG(EIFR_reg_t, _EIFR, 0x3C); + __AVR_DEFREG(EIMSK_reg_t, _EIMSK, 0x3D); + __AVR_DEFREG(_bit_reg_t, _GPIOR0, 0x3E); + __AVR_DEFREG(EECR_reg_t, _EECR, 0x3F); + __AVR_DEFREG(uint8_t, _EEDR, 0x40); + __AVR_DEFREG(EEAR_reg_t, _EEAR, 0x41); + __AVR_DEFREG(GTCCR_reg_t, _GTCCR, 0x43); + __AVR_DEFREG(TIMER_8bit_dev_t, TIMER0, 0x44); + __AVR_DEFREG(_bit_reg_t, _GPIOR1, 0x4A); + __AVR_DEFREG(_bit_reg_t, _GPIOR2, 0x4B); + __AVR_DEFREG(SPCR_reg_t, _SPCR, 0x4C); + __AVR_DEFREG(SPSR_reg_t, _SPSR, 0x4D); + __AVR_DEFREG(uint8_t, _SPDR, 0x4E); + __AVR_DEFREG(ACSR_reg_t, _ACSR, 0x50); + __AVR_DEFREG(_bit_reg_t, _OCDR, 0x51); + __AVR_DEFREG(SMCR_reg_t, _SMCR, 0x53); + __AVR_DEFREG(MCUSR_reg_t, _MCUSR, 0x54); + __AVR_DEFREG(MCUCR_reg_t, _MCUCR, 0x55); + __AVR_DEFREG(SPMCSR_reg_t, _SPMCSR, 0x57); + __AVR_DEFREG(RAMPZ_reg_t, _RAMPZ, 0x5B); + __AVR_DEFREG(EIND_reg_t, _EIND, 0x5C); + __AVR_DEFREG(SP_reg_t, _SP, 0x5D); + __AVR_DEFREG(SREG_reg_t, _SREG, 0x5F); + __AVR_DEFREG(WDTCSR_reg_t, _WDTCSR, 0x60); + __AVR_DEFREG(CLKPR_reg_t, _CLKPR, 0x61); + __AVR_DEFREG(PRR0_reg_t, _PRR0, 0x64); + __AVR_DEFREG(PRR1_reg_t, _PRR1, 0x65); + __AVR_DEFREG(uint8_t, _OSCCAL, 0x66); + __AVR_DEFREG(PCICR_reg_t, _PCICR, 0x68); + __AVR_DEFREG(EICRA_reg_t, _EICRA, 0x69); + __AVR_DEFREG(EICRB_reg_t, _EICRB, 0x6A); + __AVR_DEFREG(_bit_reg_t, _PCMSK0, 0x6B); + __AVR_DEFREG(_bit_reg_t, _PCMSK1, 0x6C); + __AVR_DEFREG(_bit_reg_t, _PCMSK2, 0x6D); + __AVR_DEFREG(TIMSK0_reg_t, _TIMSK0, 0x6E); + __AVR_DEFREG(TIMSK1_reg_t, _TIMSK1, 0x6F); + __AVR_DEFREG(TIMSK2_reg_t, _TIMSK2, 0x70); + __AVR_DEFREG(TIMSK3_reg_t, _TIMSK3, 0x71); + __AVR_DEFREG(TIMSK4_reg_t, _TIMSK4, 0x72); + __AVR_DEFREG(TIMSK5_reg_t, _TIMSK5, 0x73); + __AVR_DEFREG(XMCRA_reg_t, _XMCRA, 0x74); + __AVR_DEFREG(XMCRB_reg_t, _XMCRB, 0x75); + __AVR_DEFREG(uint16_t, _ADC, 0x78); + __AVR_DEFREG(ADCSRA_reg_t, _ADCSRA, 0x7A); + __AVR_DEFREG(ADCSRB_reg_t, _ADCSRB, 0x7B); + __AVR_DEFREG(ADMUX_reg_t, _ADMUX, 0x7C); + __AVR_DEFREG(DIDR2_reg_t, _DIDR2, 0x7D); + __AVR_DEFREG(DIDR0_reg_t, _DIDR0, 0x7E); + __AVR_DEFREG(DIDR1_reg_t, _DIDR1, 0x7F); + __AVR_DEFREG(TIMER_dev_t, TIMER1, 0x80); + __AVR_DEFREG(TIMER_dev_t, TIMER3, 0x90); + __AVR_DEFREG(TIMER_dev_t, TIMER4, 0xA0); + __AVR_DEFREG(TIMER_dev_t, TIMER5, 0x120); + __AVR_DEFREG(TIMER_8bit_dev_t, _TIMER2, 0xB0); + __AVR_DEFREG(ASSR_reg_t, _ASSR, 0xB6); + __AVR_DEFREG(uint8_t, _TWBR, 0xB8); + __AVR_DEFREG(TWSR_reg_t, _TWSR, 0xB9); + __AVR_DEFREG(TWAR_reg_t, _TWAR, 0xBA); + __AVR_DEFREG(uint8_t, _TWDR, 0xBB); + __AVR_DEFREG(TWCR_reg_t, _TWCR, 0xBC); + __AVR_DEFREG(TWAMR_reg_t, _TWAMR, 0xBD); + __AVR_DEFREG(USART_dev_t, USART0, 0xC0); + __AVR_DEFREG(USART_dev_t, USART1, 0xC8); + __AVR_DEFREG(USART_dev_t, USART2, 0xD0); + __AVR_DEFREG(USART_dev_t, USART3, 0x130); + +#elif defined(__AVR_TRM02__) + // page 637ff of ATmega164A_PA-324A_PA-644A_PA-1284_P_Data-Sheet-40002070B.pdf + __AVR_DEFREG(PORT_dev_t, _PORTA, 0x20); + __AVR_DEFREG(PORT_dev_t, _PORTB, 0x23); + __AVR_DEFREG(PORT_dev_t, _PORTC, 0x26); + __AVR_DEFREG(PORT_dev_t, _PORTD, 0x29); + __AVR_DEFREG(TIFR0_reg_t, _TIFR0, 0x35); + __AVR_DEFREG(TIFR1_reg_t, _TIFR1, 0x36); + __AVR_DEFREG(TIFR2_reg_t, _TIFR2, 0x37); + __AVR_DEFREG(TIFR3_reg_t, _TIFR3, 0x38); + __AVR_DEFREG(PCIFR_reg_t, _PCIFR, 0x3B); + __AVR_DEFREG(EIFR_reg_t, _EIFR, 0x3C); + __AVR_DEFREG(EIMSK_reg_t, _EIMSK, 0x3D); + __AVR_DEFREG(_bit_reg_t, _GPIOR0, 0x3E); + __AVR_DEFREG(EECR_reg_t, _EECR, 0x3F); + __AVR_DEFREG(uint8_t, _EEDR, 0x40); + __AVR_DEFREG(EEAR_reg_t, _EEAR, 0x41); + __AVR_DEFREG(GTCCR_reg_t, _GTCCR, 0x43); + __AVR_DEFREG(TIMER_8bit_dev_t, TIMER0, 0x44); + __AVR_DEFREG(_bit_reg_t, _GPIOR1, 0x4A); + __AVR_DEFREG(_bit_reg_t, _GPIOR2, 0x4B); + __AVR_DEFREG(SPCR_reg_t, _SPCR, 0x4C); + __AVR_DEFREG(SPSR_reg_t, _SPSR, 0x4D); + __AVR_DEFREG(uint8_t, _SPDR, 0x4E); + __AVR_DEFREG(ACSR_reg_t, _ACSR, 0x50); + __AVR_DEFREG(SMCR_reg_t, _SMCR, 0x53); + __AVR_DEFREG(MCUSR_reg_t, _MSUSR, 0x54); + __AVR_DEFREG(MCUCR_reg_t, _MCUCR, 0x55); + __AVR_DEFREG(SPMCSR_reg_t, _SPMCSR, 0x57); + __AVR_DEFREG(SP_reg_t, _SP, 0x5D); + __AVR_DEFREG(SREG_reg_t, _SREG, 0x5F); + __AVR_DEFREG(WDTCSR_reg_t, _WDTCSR, 0x60); + __AVR_DEFREG(CLKPR_reg_t, _CLKPR, 0x61); + __AVR_DEFREG(PRR0_reg_t, _PRR0, 0x64); + __AVR_DEFREG(PRR1_reg_t, _PRR1, 0x65); + __AVR_DEFREG(uint8_t, _OSCCAL, 0x66); + __AVR_DEFREG(PCICR_reg_t, _PCICR, 0x68); + __AVR_DEFREG(EICRA_reg_t, _EICRA, 0x69); + __AVR_DEFREG(_bit_reg_t, _PCMSK0, 0x6B); + __AVR_DEFREG(_bit_reg_t, _PCMSK1, 0x6C); + __AVR_DEFREG(_bit_reg_t, _PCMSK2, 0x6D); + __AVR_DEFREG(TIMSK0_reg_t, _TIMSK0, 0x6E); + __AVR_DEFREG(TIMSK1_reg_t, _TIMSK1, 0x6F); + __AVR_DEFREG(TIMSK2_reg_t, _TIMSK2, 0x70); + __AVR_DEFREG(TIMSK3_reg_t, _TIMSK3, 0x71); + __AVR_DEFREG(_bit_reg_t, _PCMSK3, 0x73); + __AVR_DEFREG(uint16_t, _ADC, 0x78); + __AVR_DEFREG(ADCSRA_reg_t, _ADCSRA, 0x7A); + __AVR_DEFREG(ADCSRB_reg_t, _ADCSRB, 0x7B); + __AVR_DEFREG(ADMUX_reg_t, _ADMUX, 0x7C); + __AVR_DEFREG(DIDR0_reg_t, _DIDR0, 0x7E); + __AVR_DEFREG(DIDR1_reg_t, _DIDR1, 0x7F); + __AVR_DEFREG(TIMER_dev_t, TIMER1, 0x80); + __AVR_DEFREG(TIMER_dev_t, TIMER3, 0x90); + __AVR_DEFREG(TIMER_8bit_dev_t, _TIMER2, 0xB0); + __AVR_DEFREG(ASSR_reg_t, _ASSR, 0xB6); + __AVR_DEFREG(uint8_t, _TWBR, 0xB8); + __AVR_DEFREG(TWSR_reg_t, _TWSR, 0xB9); + __AVR_DEFREG(TWAR_reg_t, _TWAR, 0xBA); + __AVR_DEFREG(uint8_t, _TWDR, 0xBB); + __AVR_DEFREG(TWCR_reg_t, _TWCR, 0xBC); + __AVR_DEFREG(TWAMR_reg_t, _TWAMR, 0xBD); + __AVR_DEFREG(USART_dev_t, USART0, 0xC0); + __AVR_DEFREG(USART_dev_t, USART1, 0xC8); + +#elif defined(__AVR_TRM03__) + // page 621ff of ATmega48A-PA-88A-PA-168A-PA-328-P-DS-DS40002061B.pdf + __AVR_DEFREG(PORT_dev_t, _PORTB, 0x23); + __AVR_DEFREG(PORTC_dev_t, _PORTC, 0x26); + __AVR_DEFREG(PORT_dev_t, _PORTD, 0x29); + __AVR_DEFREG(TIFR0_reg_t, _TIFR0, 0x35); + __AVR_DEFREG(TIFR1_reg_t, _TIFR1, 0x36); + __AVR_DEFREG(TIFR2_reg_t, _TIFR2, 0x37); + __AVR_DEFREG(PCIFR_reg_t, _PCIFR, 0x3B); + __AVR_DEFREG(EIFR_reg_t, _EIFR, 0x3C); + __AVR_DEFREG(EIMSK_reg_t, _EIMSK, 0x3D); + __AVR_DEFREG(_bit_reg_t, _GPIOR0, 0x3E); + __AVR_DEFREG(EECR_reg_t, _EECR, 0x3F); + __AVR_DEFREG(uint8_t, _EEDR, 0x40); + __AVR_DEFREG(EEAR_reg_t, _EEAR, 0x41); + __AVR_DEFREG(GTCCR_reg_t, _GTCCR, 0x43); + __AVR_DEFREG(TIMER_8bit_dev_t, TIMER0, 0x44); + __AVR_DEFREG(_bit_reg_t, _GPIOR1, 0x4A); + __AVR_DEFREG(_bit_reg_t, _GPIOR2, 0x4B); + __AVR_DEFREG(SPCR_reg_t, _SPCR, 0x4C); + __AVR_DEFREG(SPSR_reg_t, _SPSR, 0x4D); + __AVR_DEFREG(uint8_t, _SPDR, 0x4E); + __AVR_DEFREG(ACSR_reg_t, _ACSR, 0x50); + __AVR_DEFREG(SMCR_reg_t, _SMCR, 0x53); + __AVR_DEFREG(MCUSR_reg_t, _MSUCR, 0x54); + __AVR_DEFREG(MCUCR_reg_t, _MCUCR, 0x55); + __AVR_DEFREG(SPMCSR_reg_t, _SPMCSR, 0x57); + __AVR_DEFREG(SP_reg_t, _SP, 0x5D); + __AVR_DEFREG(SREG_reg_t, _SREG, 0x5F); + __AVR_DEFREG(WDTCSR_reg_t, _WDTCSR, 0x60); + __AVR_DEFREG(CLKPR_reg_t, _CLKPR, 0x61); + __AVR_DEFREG(PRR0_reg_t, _PRR0, 0x64); + __AVR_DEFREG(uint8_t, _OSCCAL, 0x66); + __AVR_DEFREG(PCICR_reg_t, _PCICR, 0x68); + __AVR_DEFREG(EICRA_reg_t, _EICRA, 0x69); + __AVR_DEFREG(_bit_reg_t, _PCMSK0, 0x6B); + __AVR_DEFREG(_bitPCMSK1_reg_t, _PCMSK1, 0x6C); + __AVR_DEFREG(_bit_reg_t, _PCMSK2, 0x6D); + __AVR_DEFREG(TIMSK0_reg_t, _TIMSK0, 0x6E); + __AVR_DEFREG(TIMSK1_reg_t, _TIMSK1, 0x6F); + __AVR_DEFREG(TIMSK2_reg_t, _TIMSK2, 0x70); + __AVR_DEFREG(uint16_t, _ADC, 0x78); + __AVR_DEFREG(ADCSRA_reg_t, _ADCSRA, 0x7A); + __AVR_DEFREG(ADCSRB_reg_t, _ADCSRB, 0x7B); + __AVR_DEFREG(ADMUX_reg_t, _ADMUX, 0x7C); + __AVR_DEFREG(DIDR0_reg_t, _DIDR0, 0x7E); + __AVR_DEFREG(DIDR1_reg_t, _DIDR1, 0x7F); + __AVR_DEFREG(TIMER_dev_t, TIMER1, 0x80); + __AVR_DEFREG(TIMER_8bit_dev_t, _TIMER2, 0xB0); + __AVR_DEFREG(ASSR_reg_t, _ASSR, 0xB6); + __AVR_DEFREG(uint8_t, _TWBR, 0xB8); + __AVR_DEFREG(TWSR_reg_t, _TWSR, 0xB9); + __AVR_DEFREG(TWAR_reg_t, _TWAR, 0xBA); + __AVR_DEFREG(uint8_t, _TWDR, 0xBB); + __AVR_DEFREG(TWCR_reg_t, _TWCR, 0xBC); + __AVR_DEFREG(TWAMR_reg_t, _TWAMR, 0xBD); + __AVR_DEFREG(USART_dev_t, USART0, 0xC0); + +#elif defined(__AVR_TRM04__) + __AVR_DEFREG(PORT_dev_t, _PORTA, 0x20); + __AVR_DEFREG(PORT_dev_t, _PORTB, 0x23); + __AVR_DEFREG(PORT_dev_t, _PORTC, 0x26); + __AVR_DEFREG(PORT_dev_t, _PORTD, 0x29); + __AVR_DEFREG(PORT_dev_t, _PORTE, 0x2C); + __AVR_DEFREG(PORT_dev_t, _PORTF, 0x2F); + __AVR_DEFREG(TIFR0_reg_t, _TIFR0, 0x35); + __AVR_DEFREG(TIFR1_reg_t, _TIFR1, 0x36); + __AVR_DEFREG(TIFR2_reg_t, _TIFR2, 0x37); + __AVR_DEFREG(TIFR3_reg_t, _TIFR3, 0x38); + __AVR_DEFREG(PCIFR_reg_t, _PCIFR, 0x3B); + __AVR_DEFREG(EIFR_reg_t, _EIFR, 0x3C); + __AVR_DEFREG(EIMSK_reg_t, _EIMSK, 0x3D); + __AVR_DEFREG(_bit_reg_t, _GPIOR0, 0x3E); + __AVR_DEFREG(EECR_reg_t, _EECR, 0x3F); + __AVR_DEFREG(uint8_t, _EEDR, 0x40); + __AVR_DEFREG(EEAR_reg_t, _EEAR, 0x41); + __AVR_DEFREG(GTCCR_reg_t, _GTCCR, 0x43); + __AVR_DEFREG(TIMER_8bit_dev_t, TIMER0, 0x44); + __AVR_DEFREG(PLLCSR_reg_t, _PLLCSR, 0x49); + __AVR_DEFREG(_bit_reg_t, _GPIOR1, 0x4A); + __AVR_DEFREG(_bit_reg_t, _GPIOR2, 0x4B); + __AVR_DEFREG(SPCR_reg_t, _SPCR, 0x4C); + __AVR_DEFREG(SPSR_reg_t, _SPSR, 0x4D); + __AVR_DEFREG(uint8_t, _SPDR, 0x4E); + __AVR_DEFREG(ACSR_reg_t, _ACSR, 0x50); + __AVR_DEFREG(uint8_t, _OCDR, 0x51); + __AVR_DEFREG(SMCR_reg_t, _SMCR, 0x53); + __AVR_DEFREG(MCUSR_reg_t, _MCUSR, 0x54); + __AVR_DEFREG(MCUCR_reg_t, _MCUCR, 0x55); + __AVR_DEFREG(SPMCSR_reg_t, _SPMCSR, 0x57); + __AVR_DEFREG(RAMPZ_reg_t, _RAMPZ, 0x5B); + __AVR_DEFREG(SP_reg_t, _SP, 0x5D); + __AVR_DEFREG(SREG_reg_t, _SREG, 0x5F); + __AVR_DEFREG(WDTCSR_reg_t, _WDTCSR, 0x60); + __AVR_DEFREG(CLKPR_reg_t, _CLKPR, 0x61); + __AVR_DEFREG(PRR0_reg_t, _PRR0, 0x64); + __AVR_DEFREG(PRR1_reg_t, _PRR1, 0x65); + __AVR_DEFREG(uint8_t, _OSCCAL, 0x66); + __AVR_DEFREG(PCICR_reg_t, _PCICR, 0x68); + __AVR_DEFREG(EICRA_reg_t, _EICRA, 0x69); + __AVR_DEFREG(EICRB_reg_t, _EICRB, 0x6A); + __AVR_DEFREG(_bit_reg_t, _PCMSK0, 0x6B); + __AVR_DEFREG(TIMSK0_reg_t, _TIMSK0, 0x6E); + __AVR_DEFREG(TIMSK1_reg_t, _TIMSK1, 0x6F); + __AVR_DEFREG(TIMSK2_reg_t, _TIMSK2, 0x70); + __AVR_DEFREG(TIMSK3_reg_t, _TIMSK3, 0x71); + __AVR_DEFREG(XMCRA_reg_t, _XMCRA, 0x74); + __AVR_DEFREG(XMCRB_reg_t, _XMCRB, 0x75); + __AVR_DEFREG(uint16_t, _ADC, 0x78); + __AVR_DEFREG(ADCSRA_reg_t, _ADCSRA, 0x7A); + __AVR_DEFREG(ADCSRB_reg_t, _ADCSRB, 0x7B); + __AVR_DEFREG(ADMUX_reg_t, _ADMUX, 0x7C); + __AVR_DEFREG(DIDR0_reg_t, _DIDR0, 0x7E); + __AVR_DEFREG(DIDR1_reg_t, _DIDR1, 0x7F); + __AVR_DEFREG(TIMER_dev_t, TIMER1, 0x80); + __AVR_DEFREG(TIMER_dev_t, TIMER3, 0x90); + __AVR_DEFREG(UHCON_reg_t, _UHCON, 0x9E); + __AVR_DEFREG(UHINT_reg_t, _UHINT, 0x9F); + __AVR_DEFREG(UHIEN_reg_t, _UHIEN, 0xA0); + __AVR_DEFREG(UHADDR_reg_t, _UHADDR, 0xA1); + __AVR_DEFREG(UHFNUM_reg_t, _UHFNUM, 0xA2); + __AVR_DEFREG(uint8_t, _UHFLEN, 0xA4); + __AVR_DEFREG(uint8_t, _UPINRQX, 0xA5); + __AVR_DEFREG(UPINTX_reg_t, _UPINTX, 0xA6); + __AVR_DEFREG(UPNUM_reg_t, _UPNUM, 0xA7); + __AVR_DEFREG(UPRST_reg_t, _UPRST, 0xA8); + __AVR_DEFREG(UPCONX_reg_t, _UPCONX, 0xA9); + _AVR_DEFREG(UPCFG0X, 0xAA); + _AVR_DEFREG(UPCFG1X, 0xAB); + _AVR_DEFREG(UPSTAX, 0xAC); + __AVR_DEFREG(uint8_t, _UPCFG2X, 0xAD); + _AVR_DEFREG(UPIENX, 0xAE); + __AVR_DEFREG(uint8_t, _UPDATX, 0xAF); + __AVR_DEFREG(TIMER_8bit_dev_t, _TIMER2, 0xB0); + __AVR_DEFREG(ASSR_reg_t, _ASSR, 0xB6); + __AVR_DEFREG(uint8_t, _TWBR, 0xB8); + __AVR_DEFREG(TWSR_reg_t, _TWSR, 0xB9); + __AVR_DEFREG(TWAR_reg_t, _TWAR, 0xBA); + __AVR_DEFREG(uint8_t, _TWDR, 0xBB); + __AVR_DEFREG(TWCR_reg_t, _TWCR, 0xBC); + __AVR_DEFREG(TWAMR_reg_t, _TWAMR, 0xBD); + __AVR_DEFREG(USART_dev_t, USART1, 0xC8); + _AVR_DEFREG(UHWCON, 0xD7); + _AVR_DEFREG(USBCON, 0xD8); + _AVR_DEFREG(USBSTA, 0xD9); + _AVR_DEFREG(USBINT, 0xDA); + _AVR_DEFREG(UDPADD, 0xDB); + _AVR_DEFREG(OTGCON, 0xDD); + _AVR_DEFREG(OTGIEN, 0xDE); + _AVR_DEFREG(OTGINT, 0xDF); + _AVR_DEFREG(UDCON, 0xE0); + _AVR_DEFREG(UDINT, 0xE1); + _AVR_DEFREG(UDIEN, 0xE2); + _AVR_DEFREG(UDADDR, 0xE3); + _AVR_DEFREG(UDFNUM, 0xE4); + _AVR_DEFREG(UDMFN, 0xE6); + _AVR_DEFREG(UDTST, 0xE7); + _AVR_DEFREG(UEINTX, 0xE8); + _AVR_DEFREG(UENUM, 0xE9); + _AVR_DEFREG(UERST, 0xEA); + _AVR_DEFREG(UECONX, 0xEB); + _AVR_DEFREG(UECFG0X, 0xEC); + _AVR_DEFREG(UECFG1X, 0xED); + _AVR_DEFREG(UESTA0X, 0xEE); + _AVR_DEFREG(UESTA1X, 0xEF); + _AVR_DEFREG(UEIENX, 0xF0); + __AVR_DEFREG(uint8_t, _UEDATx, 0xF1); + _AVR_DEFREG(UEBCX, 0xF2); + _AVR_DEFREG(UEINT, 0xF4); + _AVR_DEFREG(UPERRX, 0xF5); + _AVR_DEFREG(UPBCX, 0xF6); + __AVR_DEFREG(uint8_t, _UPINT, 0xF8); + _AVR_DEFREG(OTGTCON, 0xF9); +#elif defined(__AVR_TRM05__) + // page 476ff. of ATmega164P-324P-644P-Data-Sheet-40002071A.pdf + __AVR_DEFREG(PORT_dev_t, _PORTA, 0x20); + __AVR_DEFREG(PORT_dev_t, _PORTB, 0x23); + __AVR_DEFREG(PORT_dev_t, _PORTC, 0x26); + __AVR_DEFREG(PORT_dev_t, _PORTD, 0x29); + __AVR_DEFREG(TIFR0_reg_t, _TIFR0, 0x35); + __AVR_DEFREG(TIFR1_reg_t, _TIFR1, 0x36); + __AVR_DEFREG(TIFR2_reg_t, _TIFR2, 0x37); + __AVR_DEFREG(PCIFR_reg_t, _PCIFR, 0x3B); + __AVR_DEFREG(EIFR_reg_t, _EIFR, 0x3C); + __AVR_DEFREG(EIMSK_reg_t, _EIMSK, 0x3D); + __AVR_DEFREG(_bit_reg_t, _GPIOR0, 0x3E); + __AVR_DEFREG(EECR_reg_t, _EECR, 0x3F); + __AVR_DEFREG(uint8_t, _EEDR, 0x40); + __AVR_DEFREG(EEAR_reg_t, _EEAR, 0x41); + __AVR_DEFREG(GTCCR_reg_t, _GTCCR, 0x43); + __AVR_DEFREG(TIMER_8bit_dev_t, TIMER0, 0x44); + __AVR_DEFREG(_bit_reg_t, _GPIOR1, 0x4A); + __AVR_DEFREG(_bit_reg_t, _GPIOR2, 0x4B); + __AVR_DEFREG(SPCR_reg_t, _SPCR, 0x4C); + __AVR_DEFREG(SPSR_reg_t, _SPSR, 0x4D); + __AVR_DEFREG(uint8_t, _SPDR, 0x4E); + __AVR_DEFREG(ACSR_reg_t, _ACSR, 0x50); + __AVR_DEFREG(uint8_t, _OCDR, 0x51); + __AVR_DEFREG(SMCR_reg_t, _SMCR, 0x53); + __AVR_DEFREG(MCUSR_reg_t, _MCUSR, 0x54); + __AVR_DEFREG(MCUCR_reg_t, _MCUCR, 0x55); + __AVR_DEFREG(SPMCSR_reg_t, _SPMCSR, 0x57); + __AVR_DEFREG(RAMPZ_reg_t, _RAMPZ, 0x5B); + __AVR_DEFREG(SP_reg_t, _SP, 0x5D); + __AVR_DEFREG(SREG_reg_t, _SREG, 0x5F); + __AVR_DEFREG(WDTCSR_reg_t, _WDTCSR, 0x60); + __AVR_DEFREG(CLKPR_reg_t, _CLKPR, 0x61); + __AVR_DEFREG(PRR0_reg_t, _PRR0, 0x64); + __AVR_DEFREG(uint8_t, _OSCCAL, 0x66); + __AVR_DEFREG(PCICR_reg_t, _PCICR, 0x68); + __AVR_DEFREG(EICRA_reg_t, _EICRA, 0x69); + __AVR_DEFREG(_bit_reg_t, _PCMSK0, 0x6B); + __AVR_DEFREG(_bit_reg_t, _PCMSK1, 0x6C); + __AVR_DEFREG(_bit_reg_t, _PCMSK2, 0x6D); + __AVR_DEFREG(TIMSK0_reg_t, _TIMSK0, 0x6E); + __AVR_DEFREG(TIMSK1_reg_t, _TIMSK1, 0x6F); + __AVR_DEFREG(TIMSK2_reg_t, _TIMSK2, 0x70); + __AVR_DEFREG(_bit_reg_t, _PCMKS3, 0x73); + __AVR_DEFREG(uint16_t, _ADC, 0x78); + __AVR_DEFREG(ADCSRA_reg_t, _ADCSRA, 0x7A); + __AVR_DEFREG(ADCSRB_reg_t, _ADCSRB, 0x7B); + __AVR_DEFREG(ADMUX_reg_t, _ADMUX, 0x7C); + __AVR_DEFREG(DIDR0_reg_t, _DIDR0, 0x7E); + __AVR_DEFREG(DIDR1_reg_t, _DIDR1, 0x7F); + __AVR_DEFREG(TIMER_dev_t, TIMER1, 0x80); + __AVR_DEFREG(TIMER_8bit_dev_t, _TIMER2, 0xB0); + __AVR_DEFREG(ASSR_reg_t, _ASSR, 0xB6); + __AVR_DEFREG(uint8_t, _TWBR, 0xB8); + __AVR_DEFREG(TWSR_reg_t, _TWSR, 0xB8); + __AVR_DEFREG(TWAR_reg_t, _TWAR, 0xBA); + __AVR_DEFREG(uint8_t, _TWDR, 0xBB); + __AVR_DEFREG(TWCR_reg_t, _TWCR, 0xBC); + __AVR_DEFREG(TWAMR_reg_t, _TWAMR, 0xBD); + __AVR_DEFREG(USART_dev_t, USART0, 0xC0); + __AVR_DEFREG(USART_dev_t, USART1, 0xC8); +#endif + +inline void _ATmega_resetperipherals() { + using namespace AVRHelpers; + + // Due to BOOTLOADER or other board inconsistencies we could get launched into Marlin FW + // with configuration that does not match the reset state in the documentation. That is why + // we should clean-reset the entire device. + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + SREG_reg_t __SREG; + __SREG._C = false; + __SREG._Z = false; + __SREG._N = false; + __SREG._V = false; + __SREG._S = false; + __SREG._H = false; + __SREG._T = false; + __SREG._I = false; + dwrite(_SREG, __SREG); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + _RAMPZ._RAMPZ = 0; + #endif + #ifdef __AVR_TRM01__ + _EIND._EIND0 = false; + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM05__) + _EEAR._EEAR = 0; + dwrite(_EEDR, (uint8_t)0u); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + EECR_reg_t __EECR; + __EECR._EERE = false; + __EECR._EEPE = false; + __EECR._EEMPE = false; + __EECR._EERIE = false; + __EECR._EEPM0 = 0; + __EECR._EEPM1 = 0; + __EECR.reserved1 = 0; + dwrite(_EECR, __EECR); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + _GPIOR2.val = 0; + _GPIOR1.val = 0; + _GPIOR0.val = 0; + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + XMCRA_reg_t __XMCRA; + __XMCRA._SRW0 = 0; + __XMCRA._SRW1 = 0; + __XMCRA._SRL = 0; + __XMCRA._SRE = 0; + dwrite(_XMCRA, __XMCRA); + + XMCRB_reg_t __XMCRB; + __XMCRB._XMM = 0; + __XMCRB.reserved1 = 0; + __XMCRB._XMBK = false; + dwrite(_XMCRB, __XMCRB); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + SMCR_reg_t __SMCR; + __SMCR._SE = false; + __SMCR._SM = 0; + __SMCR.reserved1 = 0; + dwrite(_SMCR, __SMCR); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + PRR0_reg_t __PRR0; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM03__) + __PRR0._PRADC = false; + __PRR0._PRUSART0 = false; + __PRR0._PRSPI = false; + __PRR0._PRTIM1 = false; + __PRR0.reserved1 = false; + __PRR0._PRTIM0 = false; + __PRR0._PRTIM2 = false; + __PRR0._PRTWI = false; + #elif defined(__AVR_TRM02__) + __PRR0._PRADC = false; + __PRR0._PRUSART0 = false; + __PRR0._PRSPI = false; + __PRR0._PRTIM1 = false; + __PRR0._PRUSART1 = false; + __PRR0._PRTIM0 = false; + __PRR0._PRTIM2 = false; + __PRR0._PRTWI = false; + #elif defined(__AVR_TRM04__) + __PRR0._PRADC = false; + __PRR0.reserved1 = false; + __PRR0._PRSPI = false; + __PRR0._PRTIM1 = false; + __PRR0.reserved2 = false; + __PRR0._PRTIM0 = false; + __PRR0._PRTIM2 = false; + __PRR0._PRTWI = false; + #endif + dwrite(_PRR0, __PRR0); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) + PRR1_reg_t __PRR1; + #ifdef __AVR_TRM01__ + __PRR1._PRUSART1 = false; + __PRR1._PRUSART2 = false; + __PRR1._PRUSART3 = false; + __PRR1._PRTIM3 = false; + __PRR1._PRTIM4 = false; + __PRR1._PRTIM5 = false; + __PRR1.reserved1 = 0; + #elif defined(__AVR_TRM02__) + __PRR1._PRTIM3 = false; + __PRR1.reserved1 = 0; + #elif defined(__AVR_TRM04__) + __PRR1._PRUSART1 = false; + __PRR1.reserved1 = 0; + #endif + dwrite(_PRR1, __PRR1); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + WDTCSR_reg_t __WDTCSR; + __WDTCSR._WDP0 = 0; + __WDTCSR._WDP1 = 0; + __WDTCSR._WDP2 = 0; + __WDTCSR._WDE = false; + __WDTCSR._WDCE = false; + __WDTCSR._WDP3 = 0; + __WDTCSR._WDIE = false; + __WDTCSR._WDIF = false; + dwrite(_WDTCSR, __WDTCSR); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + _MCUCR._PUD = false; + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + PORT_dev_t __PORT; + __PORT._PIN.val = 0; + __PORT._DDR.val = 0; + __PORT._PORT.val = 0; + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + dwrite(_PORTA, __PORT); + dwrite(_PORTC, __PORT); + #endif + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + dwrite(_PORTB, __PORT); + dwrite(_PORTD, __PORT); + #endif + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + dwrite(_PORTE, __PORT); + dwrite(_PORTF, __PORT); + #endif + + #ifdef __AVR_TRM01__ + PORTG_dev_t __PORTG; + __PORTG._PIN.val = 0; + __PORTG._PIN.reserved1 = 0; + __PORTG._DDR.val = 0; + __PORTG._DDR.reserved1 = 0; + __PORTG._PORT.val = 0; + __PORTG._PORT.reserved1 = 0; + dwrite(_PORTG, __PORTG); + #endif + + #ifdef __AVR_TRM03__ + PORTC_dev_t __PORTC; + __PORTC._PIN.val = 0; + __PORTC._PIN.reserved1 = 0; + __PORTC._DDR.val = 0; + __PORTC._DDR.reserved1 = 0; + __PORTC._PORT.val = 0; + __PORTC._PORT.reserved1 = 0; + dwrite(_PORTC, __PORTC); + #endif + + #ifdef __AVR_TRM01__ + dwrite(_PORTH, __PORT); + dwrite(_PORTJ, __PORT); + dwrite(_PORTK, __PORT); + dwrite(_PORTL, __PORT); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + EICRA_reg_t __EICRA; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + __EICRA._ISC0 = 0; + __EICRA._ISC1 = 0; + __EICRA._ISC2 = 0; + __EICRA._ISC3 = 0; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + __EICRA._ISC0 = 0; + __EICRA._ISC1 = 0; + __EICRA._ISC2 = 0; + __EICRA.reserved1 = 0; + #elif defined(__AVR_TRM03__) + __EICRA._ISC0 = 0; + __EICRA._ISC1 = 0; + __EICRA.reserved1 = 0; + #endif + dwrite(_EICRA, __EICRA); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + EICRB_reg_t __EICRB; + __EICRB._ISC4 = 0; + __EICRB._ISC5 = 0; + __EICRB._ISC6 = 0; + __EICRB._ISC7 = 0; + dwrite(_EICRB, __EICRB); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + EIMSK_reg_t __EIMSK; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + __EIMSK._INT0 = false; + __EIMSK._INT1 = false; + __EIMSK._INT2 = false; + __EIMSK._INT3 = false; + __EIMSK._INT4 = false; + __EIMSK._INT5 = false; + __EIMSK._INT6 = false; + __EIMSK._INT7 = false; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + __EIMSK._INT0 = false; + __EIMSK._INT1 = false; + __EIMSK._INT2 = false; + __EIMSK.reserved1 = 0; + #elif defined(__AVR_TRM03__) + __EIMSK._INT0 = false; + __EIMSK._INT1 = false; + __EIMSK.reserved1 = 0; + #endif + dwrite(_EIMSK, __EIMSK); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + EIFR_reg_t __EIFR; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + __EIFR._INTF0 = false; + __EIFR._INTF1 = false; + __EIFR._INTF2 = false; + __EIFR._INTF3 = false; + __EIFR._INTF4 = false; + __EIFR._INTF5 = false; + __EIFR._INTF6 = false; + __EIFR._INTF7 = false; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + __EIFR._INTF0 = false; + __EIFR._INTF1 = false; + __EIFR._INTF2 = false; + __EIFR.reserved1 = 0; + #elif defined(__AVR_TRM03__) + __EIFR._INTF0 = false; + __EIFR._INTF1 = false; + __EIFR.reserved1 = 0; + #endif + dwrite(_EIFR, __EIFR); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + PCICR_reg_t __PCICR; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM03__) + __PCICR._PCIE0 = false; + __PCICR._PCIE1 = false; + __PCICR._PCIE2 = false; + __PCICR.reserved1 = 0; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + __PCICR._PCIE0 = false; + __PCICR._PCIE1 = false; + __PCICR._PCIE2 = false; + __PCICR._PCIE3 = false; + __PCICR.reserved1 = 0; + #elif defined(__AVR_TRM04__) + __PCICR._PCIE0 = false; + __PCICR.reserved1 = 0; + #endif + dwrite(_PCICR, __PCICR); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + PCIFR_reg_t __PCIFR; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM03__) + __PCIFR._PCIF0 = false; + __PCIFR._PCIF1 = false; + __PCIFR._PCIF2 = false; + __PCIFR.reserved1 = 0; + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + __PCIFR._PCIF0 = false; + __PCIFR._PCIF1 = false; + __PCIFR._PCIF2 = false; + __PCIFR._PCIF3 = false; + __PCIFR.reserved1 = 0; + #elif defined(__AVR_TRM04__) + __PCIFR._PCIF0 = false; + __PCIFR.reserved1 = 0; + #endif + dwrite(_PCIFR, __PCIFR); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + _PCMSK0.val = 0; + #endif + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM05__) + _PCMSK1.val = 0; + _PCMSK2.val = 0; + #endif + #if defined(__AVR_TRM03__) + _PCMSK1.reserved1 = 0; + #endif + #if defined(__AVR_TRM02__) + _PCMSK3.val = 0; + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + TIMER_8bit_dev_t __TIMER_8bit; + __TIMER_8bit._TCCRnA._WGMn0 = 0; + __TIMER_8bit._TCCRnA._WGMn1 = 0; + __TIMER_8bit._TCCRnA.reserved1 = 0; + __TIMER_8bit._TCCRnA._COMnB = 0; + __TIMER_8bit._TCCRnA._COMnA = 0; + __TIMER_8bit._TCCRnB._CSn = 0; + __TIMER_8bit._TCCRnB._WGMn2 = 0; + __TIMER_8bit._TCCRnB.reserved1 = 0; + __TIMER_8bit._TCCRnB._FOCnB = false; + __TIMER_8bit._TCCRnB._FOCnA = false, + __TIMER_8bit._TCNTn = 0; + __TIMER_8bit._OCRnA = 0; + __TIMER_8bit._OCRnB = 0; + dwrite(TIMER0, __TIMER_8bit); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + TIMSK0_reg_t __TIMSK0; + __TIMSK0._TOIE0 = false; + __TIMSK0._OCIE0A = false; + __TIMSK0._OCIE0B = false; + __TIMSK0.reserved1 = 0; + dwrite(_TIMSK0, __TIMSK0); + + TIFR0_reg_t __TIFR0; + __TIFR0._TOV0 = false; + __TIFR0._OCF0A = false; + __TIFR0._OCF0B = false; + __TIFR0.reserved1 = 0; + dwrite(_TIFR0, __TIFR0); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + TIMER_dev_t TIMER; + TIMER._TCCRnA._WGMn0 = 0; + TIMER._TCCRnA._WGMn1 = 0; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + TIMER._TCCRnA._COMnC = 0; + #endif + TIMER._TCCRnA._COMnB = 0; + TIMER._TCCRnA._COMnA = 0; + TIMER._TCCRnB._CSn = 0; + TIMER._TCCRnB._WGMn2 = 0; + TIMER._TCCRnB.reserved1 = 0; + TIMER._TCCRnB._ICESn = 0; + TIMER._TCCRnB._ICNCn = 0; + TIMER._TCCRnC.reserved1 = 0; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + TIMER._TCCRnC._FOCnC = false; + #endif + TIMER._TCCRnC._FOCnB = false; + TIMER._TCCRnC._FOCnA = false; + TIMER._TCNTn = 0; + TIMER._OCRnA = 0; + TIMER._OCRnB = 0; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + TIMER._OCRnC = 0; + #endif + TIMER._ICRn = 0; + dwrite(TIMER1, TIMER); + #endif + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) + dwrite(TIMER3, TIMER); + #endif + #ifdef __AVR_TRM01__ + dwrite(TIMER4, TIMER); + dwrite(TIMER5, TIMER); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + TIMSK1_reg_t __TIMSK1; + __TIMSK1._TOIE1 = false; + __TIMSK1._OCIE1A = false; + __TIMSK1._OCIE1B = false; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + __TIMSK1._OCIE1C = false; + #endif + __TIMSK1.reserved1 = 0; + __TIMSK1._ICIE1 = false; + __TIMSK1.reserved2 = 0; + dwrite(_TIMSK1, __TIMSK1); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) + TIMSK3_reg_t __TIMSK3; + __TIMSK3._TOIE3 = false; + __TIMSK3._OCIE3A = false; + __TIMSK3._OCIE3B = false; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + __TIMSK3._OCIE3C = false; + #endif + __TIMSK3.reserved1 = 0; + __TIMSK3._ICIE3 = false; + __TIMSK3.reserved2 = 0; + dwrite(_TIMSK3, __TIMSK3); + #endif + + #ifdef __AVR_TRM01__ + TIMSK4_reg_t __TIMSK4; + __TIMSK4._TOIE4 = false; + __TIMSK4._OCIE4A = false; + __TIMSK4._OCIE4B = false; + __TIMSK4._OCIE4C = false; + __TIMSK4.reserved1 = false; + __TIMSK4._ICIE4 = false; + __TIMSK4.reserved2 = false; + dwrite(_TIMSK4, __TIMSK4); + + TIMSK5_reg_t __TIMSK5; + __TIMSK5._TOIE5 = false; + __TIMSK5._OCIE5A = false; + __TIMSK5._OCIE5B = false; + __TIMSK5._OCIE5C = false; + __TIMSK5.reserved1 = 0; + __TIMSK5._ICIE5 = false; + __TIMSK5.reserved2 = 0; + dwrite(_TIMSK5, __TIMSK5); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + TIFR1_reg_t __TIFR1; + __TIFR1._TOV1 = false; + __TIFR1._OCF1A = false; + __TIFR1._OCF1B = false; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + __TIFR1._OCF1C = false; + #endif + __TIFR1.reserved1 = 0; + __TIFR1._ICF1 = false; + __TIFR1.reserved2 = 0; + dwrite(_TIFR1, __TIFR1); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) + TIFR3_reg_t __TIFR3; + __TIFR3._TOV3 = false; + __TIFR3._OCF3A = false; + __TIFR3._OCF3B = false; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + __TIFR3._OCF3C = false; + #endif + __TIFR3.reserved1 = 0; + __TIFR3._ICF3 = false; + __TIFR3.reserved2 = 0; + dwrite(_TIFR3, __TIFR3); + #endif + + #ifdef __AVR_TRM01__ + TIFR4_reg_t __TIFR4; + __TIFR4._TOV4 = false; + __TIFR4._OCF4A = false; + __TIFR4._OCF4B = false; + __TIFR4._OCF4C = false; + __TIFR4.reserved1 = 0; + __TIFR4._ICF4 = false; + __TIFR4.reserved2 = 0; + dwrite(_TIFR4, __TIFR4); + + TIFR5_reg_t __TIFR5; + __TIFR5._TOV5 = false; + __TIFR5._OCF5A = false; + __TIFR5._OCF5B = false; + __TIFR5._OCF5C = false; + __TIFR5.reserved1 = 0; + __TIFR5._ICF5 = false; + __TIFR5.reserved2 = 0; + dwrite(_TIFR5, __TIFR5); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + dwrite(_TIMER2, __TIMER_8bit); + #endif + + #if defined(__AV_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + ASSR_reg_t __ASSR; + __ASSR._TCR2BUB = false; + __ASSR._TCR2AUB = false; + __ASSR._OCR2BUB = false; + __ASSR._OCR2AUB = false; + __ASSR._TCN2UB = false; + __ASSR._AS2 = false; + __ASSR._EXCLK = false; + __ASSR.reserved1 = 0; + dwrite(_ASSR, __ASSR); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + TIMSK2_reg_t __TIMSK2; + __TIMSK2._TOIE2 = false; + __TIMSK2._OCIE2A = false; + __TIMSK2._OCIE2B = false; + __TIMSK2.reserved1 = 0; + dwrite(_TIMSK2, __TIMSK2); + + TIFR2_reg_t __TIFR2; + __TIFR2._TOV2 = false; + __TIFR2._OCF2A = false; + __TIFR2._OCF2B = false; + __TIFR2.reserved1 = 0; + dwrite(_TIFR2, __TIFR2); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + SPCR_reg_t __SPCR; + __SPCR._SPR = 0; + __SPCR._CPHA = 0; + __SPCR._CPOL = 0; + __SPCR._MSTR = 0; + __SPCR._DORD = 0; + __SPCR._SPE = false; + __SPCR._SPIE = false; + dwrite(_SPCR, __SPCR); + + SPSR_reg_t __SPSR; + __SPSR._SPI2X = false; + __SPSR.reserved1 = 0; + __SPSR._WCOL = false; + __SPSR._SPIF = false; + dwrite(_SPSR, __SPSR); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + USART_dev_t USART; + USART._UDRn = 0; + USART._UCSRnA._MPCM = false; + USART._UCSRnA._U2X = false; + USART._UCSRnA._UPE = false; + USART._UCSRnA._DOR = false; + USART._UCSRnA._FE = false; + USART._UCSRnA._UDRE = true; + USART._UCSRnA._TXC = false; + USART._UCSRnA._RXC = false; + USART._UCSRnB._TXB8 = false; + USART._UCSRnB._RXB8 = false; + USART._UCSRnB._UCSZn2 = false; + USART._UCSRnB._TXEN = false; + USART._UCSRnB._RXEN = false; + USART._UCSRnB._UDRIE = false; + USART._UCSRnB._TXCIE = false; + USART._UCSRnB._RXCIE = false; + USART._UCSRnC._UCPOL = false; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) + USART._UCSRnC._UCSZn0 = 1; + USART._UCSRnC._UCSZn1 = 1; + USART._UCSRnC._USBS = false; + USART._UCSRnC._UPM = 0; + USART._UCSRnC._UPM = 0; + USART._UCSRnC._UMSEL = 0; + #elif defined(__AVR_TRM05__) + USART._UCSRnC._UCPOL = 0; + USART._UCSRnC._UCPHA = 0; + USART._UCSRnC._UDORD = 0; + USART._UCSRnC.reserved1 = 0; + USART._UCSRnC._UMSEL = 0; + #endif + USART._UBRRn._UBRR = 0; + USART._UBRRn.reserved1 = 0; + #endif + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM05__) + dwrite(USART0, USART); + #endif + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + dwrite(USART1, USART); + #endif + #ifdef __AVR_TRM01__ + dwrite(USART2, USART); + dwrite(USART3, USART); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + dwrite(_TWBR, (uint8_t)0); + + TWCR_reg_t __TWCR; + __TWCR._TWIE = false; + __TWCR.reserved1 = 0; + __TWCR._TWEN = false; + __TWCR._TWWC = false; + __TWCR._TWSTO = false; + __TWCR._TWSTA = false; + __TWCR._TWEA = false; + __TWCR._TWINT = false; + dwrite(_TWCR, __TWCR); + + TWSR_reg_t __TWSR; + __TWSR._TWPS0 = false; + __TWSR._TWPS1 = false; + __TWSR.reserved1 = 0; + __TWSR._TWS3 = 1; + __TWSR._TWS4 = 1; + __TWSR._TWS5 = 1; + __TWSR._TWS6 = 1; + __TWSR._TWS7 = 1; + dwrite(_TWSR, __TWSR); + + dwrite(_TWDR, (uint8_t)0xFF); + + TWAR_reg_t __TWAR; + __TWAR._TWGCE = false; + __TWAR._TWA = 0x7F; + dwrite(_TWAR, __TWAR); + + TWAMR_reg_t __TWAMR; + __TWAMR.reserved1 = false; + __TWAMR._TWAM = 0; + dwrite(_TWAMR, __TWAMR); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + ADCSRB_reg_t __ADCSRB; + __ADCSRB._ADTS = 0; + #ifdef __AVR_TRM01__ + __ADCSRB._MUX5 = 0; + #endif + __ADCSRB.reserved1 = 0; + __ADCSRB._ACME = false; + __ADCSRB.reserved2 = 0; + dwrite(_ADCSRB, __ADCSRB); + + ACSR_reg_t __ACSR; + __ACSR._ACIS = 0; + __ACSR._ACIC = false; + __ACSR._ACIE = false; + __ACSR._ACI = false; + __ACSR._ACO = false; + __ACSR._ACBG = false; + __ACSR._ACD = false; + dwrite(_ACSR, __ACSR); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + DIDR1_reg_t __DIDR1; + __DIDR1._AIN0D = false; + __DIDR1._AIN1D = false; + __DIDR1.reserved1 = false; + dwrite(_DIDR1, __DIDR1); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + ADMUX_reg_t __ADMUX; + __ADMUX._MUX0 = 0; + __ADMUX._MUX1 = 0; + __ADMUX._MUX2 = 0; + __ADMUX._MUX3 = 0; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + __ADMUX._MUX4 = 0; + #elif defined(__AVR_TRM03__) + __ADMUX.reserved1 = 0; + #endif + __ADMUX._ADLAR = 0; + __ADMUX._REFS0 = 0; + __ADMUX._REFS1 = 0; + dwrite(_ADMUX, __ADMUX); + + ADCSRA_reg_t __ADCSRA; + __ADCSRA._ADPS = 0; + __ADCSRA._ADIE = false; + __ADCSRA._ADIF = false; + __ADCSRA._ADATE = false; + __ADCSRA._ADSC = false; + __ADCSRA._ADEN = false; + dwrite(_ADCSRA, __ADCSRA); + + dwrite(_ADC, (uint16_t)0); + #endif + + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + SPMCSR_reg_t __SPMCSR; + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + __SPMCSR._SPMEN = false; + __SPMCSR._PGERS = false; + __SPMCSR._PGWRT = false; + __SPMCSR._BLBSET = false; + __SPMCSR._RWWSRE = false; + __SPMCSR._SIGRD = false; + __SPMCSR._RWWSB = false; + __SPMCSR._SPMIE = false; + #elif defined(__AVR_TRM03__) + #if defined(__AVR_ATmega88A__) || defined(__AVR_ATmega88PA__) || defined(__AVR_ATmega168A__) || defined(__AVR_ATmega168PA__) || defined(__AVR_ATmega328P__) + __SPMCSR._SPMEN = false; + __SPMCSR._PGERS = false; + __SPMCSR._PGWRT = false; + __SPMCSR._BLBSET = false; + __SPMCSR._RWWSRE = false; + __SPMCSR._SIGRD = false; + __SPMCSR._RWWSB = false; + __SPMCSR._SPMIE = false; + #else + __SPMCSR._SPMEN = false; + __SPMCSR._PGERS = false; + __SPMCSR._PGWRT = false; + __SPMCSR._BLBSET = false; + __SPMCSR.reserved1 = false; + __SPMCSR._SIGRD = false; + __SPMCSR.reserved2 = false; + __SPMCSR._SPMIE = false; + #endif + #endif + dwrite(_SPMCSR, __SPMCSR); + #endif + + // TODO: add the __AVR_TRM04__ initializations, if required (mostly USB related) +} + +struct pin_dev_state_t { + #ifdef __AVR_TRM01__ + uint8_t _SRE : 1; // port A + uint8_t _COM0B : 2; + uint8_t _COM1A : 2; + uint8_t _COM1B : 2; + uint8_t _COM1C : 2; + uint8_t _COM2A : 2; + uint8_t _COM2B : 2; + uint8_t _COM3A : 2; + uint8_t _COM3B : 2; + uint8_t _COM3C : 2; + uint8_t _COM4A : 2; + uint8_t _COM4B : 2; + uint8_t _COM4C : 2; + uint8_t _COM5A : 2; + uint8_t _COM5B : 2; + uint8_t _COM5C : 2; + uint8_t _PCIE0 : 1; + uint8_t _PCIE1 : 1; // INTn + uint8_t _PCIE2 : 1; + uint8_t _SPE : 1; + uint8_t _USART0_RXEN : 1; + uint8_t _USART0_TXEN : 1; + uint8_t _USART1_RXEN : 1; + uint8_t _USART1_TXEN : 1; + uint8_t _USART2_RXEN : 1; + uint8_t _USART2_TXEN : 1; + uint8_t _USART3_RXEN : 1; + uint8_t _USART3_TXEN : 1; + //uint8_t _JTAGEN : 1; + uint8_t _AS2 : 1; + #elif defined(__AVR_TRM02__) + uint8_t _PCIE0 : 1; + uint8_t _PCIE1 : 1; + uint8_t _PCIE2 : 1; + uint8_t _PCIE3 : 1; + uint8_t _ADC7D : 1; + uint8_t _ADC6D : 1; + uint8_t _ADC5D : 1; + uint8_t _ADC4D : 1; + uint8_t _ADC3D : 1; + uint8_t _ADC2D : 1; + uint8_t _ADC1D : 1; + uint8_t _ADC0D : 1; + uint8_t _SPE : 1; + uint8_t _COM0A : 2; + uint8_t _COM0B : 2; + uint8_t _COM2A : 2; + uint8_t _COM2B : 2; + uint8_t _COM1A : 2; + uint8_t _COM1B : 2; + //uint8_t _JTAGEN : 1; + uint8_t _AS2 : 1; + uint8_t _TWEN : 1; + uint8_t _USART1_TXEN : 1; + uint8_t _USART1_RXEN : 1; + uint8_t _USART0_TXEN : 1; + uint8_t _USART0_RXEN : 1; + #elif defined(__AVR_TRM03__) + uint8_t _AS2 : 1; + uint8_t _PCIE0 : 1; + uint8_t _PCIE1 : 1; + uint8_t _PCIE2 : 1; + uint8_t _SPE : 1; + uint8_t _COM2B : 2; + uint8_t _COM2A : 2; + uint8_t _COM1B : 2; + uint8_t _COM1A : 2; + uint8_t _COM0A : 2; + uint8_t _COM0B : 2; + uint8_t _TWEN : 1; + uint8_t _ADC7D : 1; + uint8_t _ADC6D : 1; + uint8_t _ADC5D : 1; + uint8_t _ADC4D : 1; + uint8_t _ADC3D : 1; + uint8_t _ADC2D : 1; + uint8_t _ADC1D : 1; + uint8_t _ADC0D : 1; + uint8_t _UMSEL : 2; + uint8_t _USART0_TXEN : 1; + uint8_t _USART0_RXEN : 1; + #elif defined(__AVR_TRM04__) + uint8_t _SRE : 1; + uint8_t _SPE : 1; + uint8_t _COM0B : 2; + uint8_t _COM1C : 2; + uint8_t _COM1B : 2; + uint8_t _COM1A : 2; + uint8_t _COM2A : 2; + uint8_t _COM2B : 2; + uint8_t _PCIE0 : 1; + uint8_t _USART1_RXEN : 1; + uint8_t _USART1_TXEN : 1; + uint8_t _TWEN : 1; + uint8_t _INT7 : 1; + uint8_t _INT6 : 1; + uint8_t _INT5 : 1; + uint8_t _INT4 : 1; + uint8_t _INT3 : 1; + uint8_t _INT2 : 1; + uint8_t _INT1 : 1; + uint8_t _INT0; + uint8_t _UVCONE : 1; + uint8_t _UIDE : 1; + //uint8_t _JTAGEN : 1; + #elif defined(__AVR_TRM05__) + uint8_t _ADC7D : 1; + uint8_t _ADC6D : 1; + uint8_t _ADC5D : 1; + uint8_t _ADC4D : 1; + uint8_t _ADC3D : 1; + uint8_t _ADC2D : 1; + uint8_t _ADC1D : 1; + uint8_t _ADC0D : 1; + uint8_t _PCIE0 : 1; + uint8_t _PCIE1 : 1; + uint8_t _PCIE2 : 1; + uint8_t _PCIE3 : 1; + uint8_t _SPE : 1; + uint8_t _COM0A : 2; + uint8_t _COM0B : 2; + uint8_t _COM2A : 2; + uint8_t _COM2B : 2; + uint8_t _COM1A : 2; + uint8_t _COM1B : 2; + uint8_t _AS2 : 1; + uint8_t _TWEN : 1; + uint8_t _TXEN1 : 1; + uint8_t _RXEN1 : 1; + uint8_t _TXEN0 : 1; + uint8_t _RXEN0 : 1; + uint8_t _INT2 : 1; + uint8_t _INT1 : 1; + uint8_t _INT0 : 1; + //uint8_t _JTAGEN : 1; + #endif +}; + +// AVR ArduinoCore is written like a hack-job (random peripherals enabled all-the-time). + +enum class eATmegaPort { + #ifdef __AVR_TRM01__ + PORT_A, PORT_B, PORT_C, PORT_D, PORT_E, PORT_F, PORT_G, PORT_H, PORT_J, PORT_K, PORT_L + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + PORT_A, PORT_B, PORT_C, PORT_D + #elif defined(__AVR_TRM03__) + PORT_B, PORT_C, PORT_D + #elif defined(__AVR_TRM04__) + PORT_A, PORT_B, PORT_C, PORT_D, PORT_E, PORT_F + #endif +}; + +struct ATmegaPinInfo { + eATmegaPort port; + uint8_t pinidx; +}; + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + #define _SPA_DIO_DDRA (eATmegaPort::PORT_A) +#endif +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM03__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + #define _SPA_DIO_DDRB (eATmegaPort::PORT_B) + #define _SPA_DIO_DDRC (eATmegaPort::PORT_C) + #define _SPA_DIO_DDRD (eATmegaPort::PORT_D) +#endif +#if defined(__AVR_TRM01__) || defined(__AVR_TRM04__) + #define _SPA_DIO_DDRE (eATmegaPort::PORT_E) + #define _SPA_DIO_DDRF (eATmegaPort::PORT_F) +#endif +#ifdef __AVR_TRM01__ + #define _SPA_DIO_DDRG (eATmegaPort::PORT_G) + #define _SPA_DIO_DDRH (eATmegaPort::PORT_H) + #define _SPA_DIO_DDRJ (eATmegaPort::PORT_J) + #define _SPA_DIO_DDRK (eATmegaPort::PORT_K) + #define _SPA_DIO_DDRL (eATmegaPort::PORT_L) +#endif + +#define __SPA_IFPORT_STMT(dr) if (ddrp == &D##dr) port = _SPA_DIO_D##dr; + +#ifdef _SPA_DIO_DDRA + #define _SPA_IFPORT_PORTA __SPA_IFPORT_STMT(DRA) +#else + #define _SPA_IFPORT_PORTA +#endif +#ifdef _SPA_DIO_DDRB + #define _SPA_IFPORT_PORTB __SPA_IFPORT_STMT(DRB) +#else + #define _SPA_IFPORT_PORTB +#endif +#ifdef _SPA_DIO_DDRC + #define _SPA_IFPORT_PORTC __SPA_IFPORT_STMT(DRC) +#else + #define _SPA_IFPORT_PORTC +#endif +#ifdef _SPA_DIO_DDRD + #define _SPA_IFPORT_PORTD __SPA_IFPORT_STMT(DRD) +#else + #define _SPA_IFPORT_PORTD +#endif +#ifdef _SPA_DIO_DDRE + #define _SPA_IFPORT_PORTE __SPA_IFPORT_STMT(DRE) +#else + #define _SPA_IFPORT_PORTE +#endif +#ifdef _SPA_DIO_DDRF + #define _SPA_IFPORT_PORTF __SPA_IFPORT_STMT(DRF) +#else + #define _SPA_IFPORT_PORTF +#endif +#ifdef _SPA_DIO_DDRG + #define _SPA_IFPORT_PORTG __SPA_IFPORT_STMT(DRG) +#else + #define _SPA_IFPORT_PORTG +#endif +#ifdef _SPA_DIO_DDRH + #define _SPA_IFPORT_PORTH __SPA_IFPORT_STMT(DRH) +#else + #define _SPA_IFPORT_PORTH +#endif +#ifdef _SPA_DIO_DDRJ + #define _SPA_IFPORT_PORTJ __SPA_IFPORT_STMT(DRJ) +#else + #define _SPA_IFPORT_PORTJ +#endif +#ifdef _SPA_DIO_DDRK + #define _SPA_IFPORT_PORTK __SPA_IFPORT_STMT(DRK) +#else + #define _SPA_IFPORT_PORTK +#endif +#ifdef _SPA_DIO_DDRL + #define _SPA_IFPORT_PORTL __SPA_IFPORT_STMT(DRL) +#else + #define _SPA_IFPORT_PORTL +#endif + +#define _SPA_RESOLVE_DIO(ddr) _SPA_DIO_##ddr +#define _SPA_DIOn_PORTRET(val, n) if (val == n) { \ + auto *ddrp = &DIO##n##_DDR; \ + eATmegaPort port; \ + _SPA_IFPORT_PORTA \ + _SPA_IFPORT_PORTB \ + _SPA_IFPORT_PORTC \ + _SPA_IFPORT_PORTD \ + _SPA_IFPORT_PORTE \ + _SPA_IFPORT_PORTF \ + _SPA_IFPORT_PORTG \ + _SPA_IFPORT_PORTH \ + _SPA_IFPORT_PORTJ \ + _SPA_IFPORT_PORTK \ + _SPA_IFPORT_PORTL \ + return { port, DIO##n##_PIN }; \ + } + +inline ATmegaPinInfo _ATmega_getPinInfo(uint8_t pin) { + #if DIO_NUM > 0 + _SPA_DIOn_PORTRET(pin, 0) + #endif + #if DIO_NUM > 1 + _SPA_DIOn_PORTRET(pin, 1) + #endif + #if DIO_NUM > 2 + _SPA_DIOn_PORTRET(pin, 2) + #endif + #if DIO_NUM > 3 + _SPA_DIOn_PORTRET(pin, 3) + #endif + #if DIO_NUM > 4 + _SPA_DIOn_PORTRET(pin, 4) + #endif + #if DIO_NUM > 5 + _SPA_DIOn_PORTRET(pin, 5) + #endif + #if DIO_NUM > 6 + _SPA_DIOn_PORTRET(pin, 6) + #endif + #if DIO_NUM > 7 + _SPA_DIOn_PORTRET(pin, 7) + #endif + #if DIO_NUM > 8 + _SPA_DIOn_PORTRET(pin, 8) + #endif + #if DIO_NUM > 9 + _SPA_DIOn_PORTRET(pin, 9) + #endif + + #if DIO_NUM > 10 + _SPA_DIOn_PORTRET(pin, 10) + #endif + #if DIO_NUM > 11 + _SPA_DIOn_PORTRET(pin, 11) + #endif + #if DIO_NUM > 12 + _SPA_DIOn_PORTRET(pin, 12) + #endif + #if DIO_NUM > 13 + _SPA_DIOn_PORTRET(pin, 13) + #endif + #if DIO_NUM > 14 + _SPA_DIOn_PORTRET(pin, 14) + #endif + #if DIO_NUM > 15 + _SPA_DIOn_PORTRET(pin, 15) + #endif + #if DIO_NUM > 16 + _SPA_DIOn_PORTRET(pin, 16) + #endif + #if DIO_NUM > 17 + _SPA_DIOn_PORTRET(pin, 17) + #endif + #if DIO_NUM > 18 + _SPA_DIOn_PORTRET(pin, 18) + #endif + #if DIO_NUM > 19 + _SPA_DIOn_PORTRET(pin, 19) + #endif + + #if DIO_NUM > 20 + _SPA_DIOn_PORTRET(pin, 20) + #endif + #if DIO_NUM > 21 + _SPA_DIOn_PORTRET(pin, 21) + #endif + #if DIO_NUM > 22 + _SPA_DIOn_PORTRET(pin, 22) + #endif + #if DIO_NUM > 23 + _SPA_DIOn_PORTRET(pin, 23) + #endif + #if DIO_NUM > 24 + _SPA_DIOn_PORTRET(pin, 24) + #endif + #if DIO_NUM > 25 + _SPA_DIOn_PORTRET(pin, 25) + #endif + #if DIO_NUM > 26 + _SPA_DIOn_PORTRET(pin, 26) + #endif + #if DIO_NUM > 27 + _SPA_DIOn_PORTRET(pin, 27) + #endif + #if DIO_NUM > 28 + _SPA_DIOn_PORTRET(pin, 28) + #endif + #if DIO_NUM > 29 + _SPA_DIOn_PORTRET(pin, 29) + #endif + + #if DIO_NUM > 30 + _SPA_DIOn_PORTRET(pin, 30) + #endif + #if DIO_NUM > 31 + _SPA_DIOn_PORTRET(pin, 31) + #endif + #if DIO_NUM > 32 + _SPA_DIOn_PORTRET(pin, 32) + #endif + #if DIO_NUM > 33 + _SPA_DIOn_PORTRET(pin, 33) + #endif + #if DIO_NUM > 34 + _SPA_DIOn_PORTRET(pin, 34) + #endif + #if DIO_NUM > 35 + _SPA_DIOn_PORTRET(pin, 35) + #endif + #if DIO_NUM > 36 + _SPA_DIOn_PORTRET(pin, 36) + #endif + #if DIO_NUM > 37 + _SPA_DIOn_PORTRET(pin, 37) + #endif + #if DIO_NUM > 38 + _SPA_DIOn_PORTRET(pin, 38) + #endif + #if DIO_NUM > 39 + _SPA_DIOn_PORTRET(pin, 39) + #endif + + #if DIO_NUM > 40 + _SPA_DIOn_PORTRET(pin, 40) + #endif + #if DIO_NUM > 41 + _SPA_DIOn_PORTRET(pin, 41) + #endif + #if DIO_NUM > 42 + _SPA_DIOn_PORTRET(pin, 42) + #endif + #if DIO_NUM > 43 + _SPA_DIOn_PORTRET(pin, 43) + #endif + #if DIO_NUM > 44 + _SPA_DIOn_PORTRET(pin, 44) + #endif + #if DIO_NUM > 45 + _SPA_DIOn_PORTRET(pin, 45) + #endif + #if DIO_NUM > 46 + _SPA_DIOn_PORTRET(pin, 46) + #endif + #if DIO_NUM > 47 + _SPA_DIOn_PORTRET(pin, 47) + #endif + #if DIO_NUM > 48 + _SPA_DIOn_PORTRET(pin, 48) + #endif + #if DIO_NUM > 49 + _SPA_DIOn_PORTRET(pin, 49) + #endif + + #if DIO_NUM > 50 + _SPA_DIOn_PORTRET(pin, 50) + #endif + #if DIO_NUM > 51 + _SPA_DIOn_PORTRET(pin, 51) + #endif + #if DIO_NUM > 52 + _SPA_DIOn_PORTRET(pin, 52) + #endif + #if DIO_NUM > 53 + _SPA_DIOn_PORTRET(pin, 53) + #endif + #if DIO_NUM > 54 + _SPA_DIOn_PORTRET(pin, 54) + #endif + #if DIO_NUM > 55 + _SPA_DIOn_PORTRET(pin, 55) + #endif + #if DIO_NUM > 56 + _SPA_DIOn_PORTRET(pin, 56) + #endif + #if DIO_NUM > 57 + _SPA_DIOn_PORTRET(pin, 57) + #endif + #if DIO_NUM > 58 + _SPA_DIOn_PORTRET(pin, 58) + #endif + #if DIO_NUM > 59 + _SPA_DIOn_PORTRET(pin, 59) + #endif + + #if DIO_NUM > 60 + _SPA_DIOn_PORTRET(pin, 60) + #endif + #if DIO_NUM > 61 + _SPA_DIOn_PORTRET(pin, 61) + #endif + #if DIO_NUM > 62 + _SPA_DIOn_PORTRET(pin, 62) + #endif + #if DIO_NUM > 63 + _SPA_DIOn_PORTRET(pin, 63) + #endif + #if DIO_NUM > 64 + _SPA_DIOn_PORTRET(pin, 64) + #endif + #if DIO_NUM > 65 + _SPA_DIOn_PORTRET(pin, 65) + #endif + #if DIO_NUM > 66 + _SPA_DIOn_PORTRET(pin, 66) + #endif + #if DIO_NUM > 67 + _SPA_DIOn_PORTRET(pin, 67) + #endif + #if DIO_NUM > 68 + _SPA_DIOn_PORTRET(pin, 68) + #endif + #if DIO_NUM > 69 + _SPA_DIOn_PORTRET(pin, 69) + #endif + + #if DIO_NUM > 70 + _SPA_DIOn_PORTRET(pin, 70) + #endif + #if DIO_NUM > 71 + _SPA_DIOn_PORTRET(pin, 71) + #endif + #if DIO_NUM > 72 + _SPA_DIOn_PORTRET(pin, 72) + #endif + #if DIO_NUM > 73 + _SPA_DIOn_PORTRET(pin, 73) + #endif + #if DIO_NUM > 74 + _SPA_DIOn_PORTRET(pin, 74) + #endif + #if DIO_NUM > 75 + _SPA_DIOn_PORTRET(pin, 75) + #endif + #if DIO_NUM > 76 + _SPA_DIOn_PORTRET(pin, 76) + #endif + #if DIO_NUM > 77 + _SPA_DIOn_PORTRET(pin, 77) + #endif + #if DIO_NUM > 78 + _SPA_DIOn_PORTRET(pin, 78) + #endif + #if DIO_NUM > 79 + _SPA_DIOn_PORTRET(pin, 79) + #endif + + #if DIO_NUM > 80 + _SPA_DIOn_PORTRET(pin, 80) + #endif + #if DIO_NUM > 81 + _SPA_DIOn_PORTRET(pin, 81) + #endif + #if DIO_NUM > 82 + _SPA_DIOn_PORTRET(pin, 82) + #endif + #if DIO_NUM > 83 + _SPA_DIOn_PORTRET(pin, 83) + #endif + #if DIO_NUM > 84 + _SPA_DIOn_PORTRET(pin, 84) + #endif + #if DIO_NUM > 85 + _SPA_DIOn_PORTRET(pin, 85) + #endif + #if DIO_NUM > 86 + _SPA_DIOn_PORTRET(pin, 86) + #endif + #if DIO_NUM > 87 + _SPA_DIOn_PORTRET(pin, 87) + #endif + #if DIO_NUM > 88 + _SPA_DIOn_PORTRET(pin, 88) + #endif + #if DIO_NUM > 89 + _SPA_DIOn_PORTRET(pin, 89) + #endif + + // Default. + #if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) || defined(__AVR_TRM04__) || defined(__AVR_TRM05__) + return { eATmegaPort::PORT_A, 0 }; + #elif defined(__AVR_TRM03__) + return { eATmegaPort::PORT_B, 0 }; + #endif +} + +enum class eATmegaPeripheral { + UNDEFINED, + #ifdef __AVR_TRM01__ + PADC, PUSART0, PSPI, PTIM1, PTIM0, PTIM2, PTWI, PUSART1, PUSART2, PUSART3, PTIM3, PTIM4, PTIM5 + #elif defined(__AVR_TRM02__) + PADC, PUSART0, PSPI, PTIM1, PUSART1, PTIM0, PTIM2, PTWI, PTIM3 + #elif defined(__AVR_TRM03__) + PADC, PUSART0, PSPI, PTIM1, PTIM0, PTIM2, PTWI + #elif defined(__AVR_TRM04__) + PADC, PSPI, PTIM1, PTIM0, PTIM2, PTWI, PUSART1, PTIM3, PUSB + #elif defined(__AVR_TRM05__) + PADC, PUSART0, PSPI, PTIM1, PUSART1, PTIM0, PTIM2, PTWI + #endif + , NUM_PERIPHERALS +}; + +enum class eATmegaPinFunc : uint8_t { + #ifdef __AVR_TRM01__ + EXTMEM_AD15, EXTMEM_AD14, EXTMEM_AD13, EXTMEM_AD12, EXTMEM_AD11, EXTMEM_AD10, EXTMEM_AD9, EXTMEM_AD8, + EXTMEM_AD7, EXTMEM_AD6, EXTMEM_AD5, EXTMEM_AD4, EXTMEM_AD3, EXTMEM_AD2, EXTMEM_AD1, EXTMEM_AD0, + EXTMEM_ALE, EXTMEM_RD, EXTMEM_WR, + TOC0A, TOC0B, TOC1A, TOC1B, TOC1C, TOC2A, TOC2B, TOC3C, TOC3B, TOC3A, TOC4C, TOC4B, TOC4A, TOC5C, TOC5B, TOC5A, + EINT7, EINT6, EINT5, EINT4, EINT3, EINT2, EINT1, EINT0, + PCI0, PCI1, PCI2, PCI3, PCI4, PCI5, PCI6, PCI7, + PCI8, PCI9, PCI10, PCI11, PCI12, PCI13, PCI14, PCI15, + PCI16, PCI17, PCI18, PCI19, PCI20, PCI21, PCI22, PCI23, + SPI_MISO, SPI_MOSI, SPI_SCK, SPI_CS, + TOSC1, TOSC2, + TIMER0_CLKI, TIMER1_CLKI, TIMER3_CLKI, TIMER4_CLKI, TIMER5_CLKI, + TIMER1_ICP, TIMER3_ICP, TIMER5_ICP, TIMER4_ICP, + USART0_CLK, USART1_CLK, USART2_CLK, USART3_CLK, + USART0_TXD, USART0_RXD, USART1_TXD, USART1_RXD, USART2_TXD, USART2_RXD, USART3_TXD, USART3_RXD, + TWI_SDA, TWI_CLK, + CLKO, PDO, PDI, + AIN0, AIN1, + ADC15, ADC14, ADC13, ADC12, ADC11, ADC10, ADC9, ADC8, + ADC7, ADC6, ADC5, ADC4, ADC3, ADC2, ADC1, ADC0 + #elif defined(__AVR_TRM02__) + ADC7, ADC6, ADC5, ADC4, ADC3, ADC2, ADC1, ADC0, + SPI_SCK, SPI_MISO, SPI_MOSI, SPI_CS, + PCI31, PCI30, PCI29, PCI28, PCI27, PCI26, PCI25, PCI24, + PCI23, PCI22, PCI21, PCI20, PCI19, PCI18, PCI17, PCI16, + PCI15, PCI14, PCI13, PCI12, PCI11, PCI10, PCI9, PCI8, + PCI7, PCI6, PCI5, PCI4, PCI3, PCI2, PCI1, PCI0, + EINT2, EINT1, EINT0, + TIMER3_ICP, + TIMER3_ECI, TIMER1_ECI, TIMER0_ECI, + TIMER1_ICP, + TOC3B, TOC3A, TOC2A, TOC2B, TOC1A, TOC1B, TOC0B, TOC0A, + AIN1, AIN0, + USART0_CLK, USART1_CLK, + USART0_TXD, USART0_RXD, USART1_TXD, USART1_RXD, + CLKO, + TOSC2, TOSC1, + TWI_SDA, TWI_CLK + #elif defined(__AVR_TRM03__) + ADC5, ADC4, ADC3, ADC2, ADC1, ADC0, + XTAL2, XTAL1, + TOSC2, TOSC1, + SPI_SCK, SPI_MISO, SPI_MOSI, SPI_CS, + TOC2B, TOC2A, TOC1B, TOC1A, TOC0A, TOC0B, + TIMER1_ICP, + TIMER1_ECI, TIMER0_ECI, + TWI_CLK, TWI_SDA, + PCI23, PCI22, PCI21, PCI20, PCI19, PCI18, PCI17, PCI16, + PCI14, PCI13, PCI12, PCI11, PCI10, PCI9, PCI8, + PCI7, PCI6, PCI5, PCI4, PCI3, PCI2, PCI1, PCI0, + CLKO, + AIN1, AIN0, + USART_CLK, + USART_TXD, USART_RXD, + EINT1, EINT0 + #elif defined(__AVR_TRM04__) + EXTMEM_AD15, EXTMEM_AD14, EXTMEM_AD13, EXTMEM_AD12, EXTMEM_AD11, EXTMEM_AD10, EXTMEM_AD9, EXTMEM_AD8, + EXTMEM_AD7, EXTMEM_AD6, EXTMEM_AD5, EXTMEM_AD4, EXTMEM_AD3, EXTMEM_AD2, EXTMEM_AD1, EXTMEM_AD0, + EXTMEM_ALE, EXTMEM_RD, EXTMEM_WR, + TOC0B, TOC0A, TOC1C, TOC1B, TOC1A, TOC2B, TOC2A, TOC3A, TOC3B, TOC3C, + CLKO, PDO, PDI, + SPI_MISO, SPI_MOSI, SPI_SCK, SPI_CS, + TIMER3_ICP, TIMER1_ICP, + TIMER3_CLKI, TIMER0_CLKI, TIMER1_CLKI, + USART1_CLK, USART1_TXD, USART1_RXD, + EINT7, EINT6, EINT5, EINT4, EINT3, EINT2, EINT1, EINT0, + PCI7, PCI6, PCI5, PCI4, PCI3, PCI2, PCI1, PCI0, + TWI_SDA, TWI_CLK, + AIN1, AIN0, + TOSC2, + UID, UVCON, + ADC7, ADC6, ADC5, ADC4, ADC3, ADC2, ADC1, ADC0 + #elif defined(__AVR_TRM05__) + ADC7, ADC6, ADC5, ADC4, ADC3, ADC2, ADC1, ADC0, + PCI31, PCI30, PCI29, PCI28, PCI27, PCI26, PCI25, PCI24, + PCI23, PCI22, PCI21, PCI20, PCI19, PCI18, PCI17, PCI16, + PCI15, PCI14, PCI13, PCI12, PCI11, PCI10, PCI9, PCI8, + PCI7, PCI6, PCI5, PCI4, PCI3, PCI2, PCI1, PCI0, + SPI_SCK, SPI_MISO, SPI_MOSI, SPI_CS, + AIN1, AIN0, + TIMER1_ICP, TIMER0_ICP, + TIMER1_ECI, TIMER0_ECI, + TOC0B, TOC0A, TOC2A, TOC2B, TOC1A, TOC1B, + TOSC2, TOSC1, + //JTAG_TDI, JTAG_TDO, JTAG_TMS, JTAG_TCK, + TWI_CLK, TWI_SDA, + EINT2, EINT1, EINT0, + CLKO, + USART0_CLK, USART0_TXD, USART0_RXD, + USART1_CLK, USART1_TXD, USART1_RXD + #endif + , NUM_FUNCS +}; + +#ifndef countof + #define countof(x) (sizeof(x) / sizeof(*x)) +#endif + +struct ATmegaPinFunctions { + inline ATmegaPinFunctions(const eATmegaPinFunc *funcs, uint8_t cnt) noexcept : funcs(funcs), cnt(cnt) {} + inline ATmegaPinFunctions() = default; + inline ATmegaPinFunctions(const ATmegaPinFunctions&) = default; + + const eATmegaPinFunc *funcs = nullptr; + uint8_t cnt = 0; + + inline bool hasFunc(eATmegaPinFunc query) const { + for (uint8_t n = 0; n < this->cnt; n++) { + eATmegaPinFunc func = this->funcs[n]; + if (func == query) return true; + } + return false; + } + template + inline bool hasFunc(eATmegaPinFunc func, otherItemType&&... items) const { + return hasFunc(func) || hasFunc(((otherItemType&&)items)...); + } + + template + inline void iterate(callbackType&& cb) const { + for (uint8_t n = 0; n < this->cnt; n++) { + eATmegaPinFunc func = this->funcs[n]; + cb(func); + } + } +}; + +ATmegaPinFunctions _ATmega_getPinFunctions(int pin); + +struct ATmegaPinFuncSet { + inline ATmegaPinFuncSet() noexcept { + for (bool& f : this->funcs) f = false; + } + template + inline ATmegaPinFuncSet(eATmegaPinFunc func, funcItemType&&... items) noexcept : ATmegaPinFuncSet() { + add(func, ((funcItemType&&)items)...); + } + template + inline ATmegaPinFuncSet(int pin, funcItemType&&... items) noexcept : ATmegaPinFuncSet() { + addFromPin(pin, ((funcItemType&&)items)...); + } + inline ATmegaPinFuncSet(const ATmegaPinFuncSet&) = default; + + inline void add(eATmegaPinFunc value) noexcept { + this->funcs[(uint8_t)value] = true; + } + template + inline void add(eATmegaPinFunc value, funcItemType&&... items) { + add(value); + add(((eATmegaPinFunc&&)items)...); + } + + inline void addFromPin(int pin) noexcept { + ATmegaPinFunctions funcs = _ATmega_getPinFunctions(pin); + funcs.iterate( + [this]( eATmegaPinFunc func ) noexcept { this->add(func); } + ); + } + template + inline void addFromPin(int pin, itemType&&... items) noexcept { + addFromPin(pin); + addFromPin(((itemType&&)items)...); + } + + inline bool hasFunc(eATmegaPinFunc value) const noexcept { + return this->funcs[(uint8_t)value]; + } + + inline bool hasAnyFunc() const noexcept { return false; } + template + inline bool hasAnyFunc(funcItem&& item, otherFuncItem&&... funcs) const noexcept { + return hasFunc(item) || hasAnyFunc(((otherFuncItem&&)funcs)...); + } + + template + inline void iterate(callbackType&& cb) const { + for (uint8_t n = 1; n < countof(this->funcs); n++) { + const bool& f = this->funcs[n]; + if (f) cb((eATmegaPinFunc)n); + } + } + +private: + bool funcs[(uint8_t)eATmegaPinFunc::NUM_FUNCS]; +}; + +inline void _ATmega_setPeripheralPower(eATmegaPeripheral peri, bool fullPower) { + bool reducePower = (fullPower == false); + switch(peri) { + #ifdef __AVR_TRM01__ + case eATmegaPeripheral::PADC: _PRR0._PRADC = reducePower; break; + case eATmegaPeripheral::PUSART0: _PRR0._PRUSART0 = reducePower; break; + case eATmegaPeripheral::PSPI: _PRR0._PRSPI = reducePower; break; + case eATmegaPeripheral::PTIM1: _PRR0._PRTIM1 = reducePower; break; + case eATmegaPeripheral::PTIM0: _PRR0._PRTIM0 = reducePower; break; + case eATmegaPeripheral::PTIM2: _PRR0._PRTIM2 = reducePower; break; + case eATmegaPeripheral::PTWI: _PRR0._PRTWI = reducePower; break; + case eATmegaPeripheral::PUSART1: _PRR1._PRUSART1 = reducePower; break; + case eATmegaPeripheral::PUSART2: _PRR1._PRUSART2 = reducePower; break; + case eATmegaPeripheral::PUSART3: _PRR1._PRUSART3 = reducePower; break; + case eATmegaPeripheral::PTIM3: _PRR1._PRTIM3 = reducePower; break; + case eATmegaPeripheral::PTIM4: _PRR1._PRTIM4 = reducePower; break; + case eATmegaPeripheral::PTIM5: _PRR1._PRTIM5 = reducePower; break; + #elif defined(__AVR_TRM02__) + case eATmegaPeripheral::PADC: _PRR0._PRADC = reducePower; break; + case eATmegaPeripheral::PUSART0: _PRR0._PRUSART0 = reducePower; break; + case eATmegaPeripheral::PSPI: _PRR0._PRSPI = reducePower; break; + case eATmegaPeripheral::PTIM1: _PRR0._PRTIM1 = reducePower; break; + case eATmegaPeripheral::PUSART1: _PRR0._PRUSART1 = reducePower; break; + case eATmegaPeripheral::PTIM0: _PRR0._PRTIM0 = reducePower; break; + case eATmegaPeripheral::PTIM2: _PRR0._PRTIM2 = reducePower; break; + case eATmegaPeripheral::PTWI: _PRR0._PRTWI = reducePower; break; + case eATmegaPeripheral::PTIM3: _PRR1._PRTIM3 = reducePower; break; + #elif defined(__AVR_TRM03__) + case eATmegaPeripheral::PADC: _PRR0._PRADC = reducePower; break; + case eATmegaPeripheral::PUSART0: _PRR0._PRUSART0 = reducePower; break; + case eATmegaPeripheral::PSPI: _PRR0._PRSPI = reducePower; break; + case eATmegaPeripheral::PTIM1: _PRR0._PRTIM1 = reducePower; break; + case eATmegaPeripheral::PTIM0: _PRR0._PRTIM0 = reducePower; break; + case eATmegaPeripheral::PTIM2: _PRR0._PRTIM2 = reducePower; break; + case eATmegaPeripheral::PTWI: _PRR0._PRTWI = reducePower; break; + #elif defined(__AVR_TRM04__) + case eATmegaPeripheral::PADC: _PRR0._PRADC = reducePower; break; + case eATmegaPeripheral::PSPI: _PRR0._PRSPI = reducePower; break; + case eATmegaPeripheral::PTIM1: _PRR0._PRTIM1 = reducePower; break; + case eATmegaPeripheral::PTIM0: _PRR0._PRTIM0 = reducePower; break; + case eATmegaPeripheral::PTIM2: _PRR0._PRTIM2 = reducePower; break; + case eATmegaPeripheral::PTWI: _PRR0._PRTWI = reducePower; break; + case eATmegaPeripheral::PUSART1: _PRR1._PRUSART1 = reducePower; break; + case eATmegaPeripheral::PTIM3: _PRR1._PRTIM3 = reducePower; break; + case eATmegaPeripheral::PUSB: _PRR1._PRUSB = reducePower; break; + #elif defined(__AVR_TRM05__) + case eATmegaPeripheral::PADC: _PRR0._PRADC = reducePower; break; + case eATmegaPeripheral::PUSART0: _PRR0._PRUSART0 = reducePower; break; + case eATmegaPeripheral::PSPI: _PRR0._PRSPI = reducePower; break; + case eATmegaPeripheral::PTIM1: _PRR0._PRTIM1 = reducePower; break; + case eATmegaPeripheral::PUSART1: _PRR0._PRUSART1 = reducePower; break; + case eATmegaPeripheral::PTIM0: _PRR0._PRTIM0 = reducePower; break; + case eATmegaPeripheral::PTIM2: _PRR0._PRTIM2 = reducePower; break; + case eATmegaPeripheral::PTWI: _PRR0._PRTWI = reducePower; break; + #endif + case eATmegaPeripheral::UNDEFINED: case eATmegaPeripheral::NUM_PERIPHERALS: break; + } +} + +inline bool _ATmega_getPeripheralPower(eATmegaPeripheral peri) { + switch(peri) { + #ifdef __AVR_TRM01__ + case eATmegaPeripheral::PADC: return _PRR0._PRADC == false; + case eATmegaPeripheral::PUSART0: return _PRR0._PRUSART0 == false; + case eATmegaPeripheral::PSPI: return _PRR0._PRSPI == false; + case eATmegaPeripheral::PTIM1: return _PRR0._PRTIM1 == false; + case eATmegaPeripheral::PTIM0: return _PRR0._PRTIM0 == false; + case eATmegaPeripheral::PTIM2: return _PRR0._PRTIM2 == false; + case eATmegaPeripheral::PTWI: return _PRR0._PRTWI == false; + case eATmegaPeripheral::PUSART1: return _PRR1._PRUSART1 == false; + case eATmegaPeripheral::PUSART2: return _PRR1._PRUSART2 == false; + case eATmegaPeripheral::PUSART3: return _PRR1._PRUSART3 == false; + case eATmegaPeripheral::PTIM3: return _PRR1._PRTIM3 == false; + case eATmegaPeripheral::PTIM4: return _PRR1._PRTIM4 == false; + case eATmegaPeripheral::PTIM5: return _PRR1._PRTIM5 == false; + #elif defined(__AVR_TRM02__) + case eATmegaPeripheral::PADC: return _PRR0._PRADC == false; + case eATmegaPeripheral::PUSART0: return _PRR0._PRUSART0 == false; + case eATmegaPeripheral::PSPI: return _PRR0._PRSPI == false; + case eATmegaPeripheral::PTIM1: return _PRR0._PRTIM1 == false; + case eATmegaPeripheral::PUSART1: return _PRR0._PRUSART1 == false; + case eATmegaPeripheral::PTIM0: return _PRR0._PRTIM0 == false; + case eATmegaPeripheral::PTIM2: return _PRR0._PRTIM2 == false; + case eATmegaPeripheral::PTWI: return _PRR0._PRTWI == false; + case eATmegaPeripheral::PTIM3: return _PRR1._PRTIM3 == false; + #elif defined(__AVR_TRM03__) + case eATmegaPeripheral::PADC: return _PRR0._PRADC == false; + case eATmegaPeripheral::PUSART0: return _PRR0._PRUSART0 == false; + case eATmegaPeripheral::PSPI: return _PRR0._PRSPI == false; + case eATmegaPeripheral::PTIM1: return _PRR0._PRTIM1 == false; + case eATmegaPeripheral::PTIM0: return _PRR0._PRTIM0 == false; + case eATmegaPeripheral::PTIM2: return _PRR0._PRTIM2 == false; + case eATmegaPeripheral::PTWI: return _PRR0._PRTWI == false; + #elif defined(__AVR_TRM04__) + case eATmegaPeripheral::PADC: return _PRR0._PRADC == false; + case eATmegaPeripheral::PSPI: return _PRR0._PRSPI == false; + case eATmegaPeripheral::PTIM1: return _PRR0._PRTIM1 == false; + case eATmegaPeripheral::PTIM0: return _PRR0._PRTIM0 == false; + case eATmegaPeripheral::PTIM2: return _PRR0._PRTIM2 == false; + case eATmegaPeripheral::PTWI: return _PRR0._PRTWI == false; + case eATmegaPeripheral::PUSART1: return _PRR1._PRUSART1 == false; + case eATmegaPeripheral::PTIM3: return _PRR1._PRTIM3 == false; + case eATmegaPeripheral::PUSB: return _PRR1._PRUSB == false; + #elif defined(__AVR_TRM05__) + case eATmegaPeripheral::PADC: return _PRR0._PRADC == false; + case eATmegaPeripheral::PUSART0: return _PRR0._PRUSART0 == false; + case eATmegaPeripheral::PSPI: return _PRR0._PRSPI == false; + case eATmegaPeripheral::PTIM1: return _PRR0._PRTIM1 == false; + case eATmegaPeripheral::PUSART1: return _PRR0._PRUSART1 == false; + case eATmegaPeripheral::PTIM0: return _PRR0._PRTIM0 == false; + case eATmegaPeripheral::PTIM2: return _PRR0._PRTIM2 == false; + case eATmegaPeripheral::PTWI: return _PRR0._PRTWI == false; + #endif + case eATmegaPeripheral::UNDEFINED: case eATmegaPeripheral::NUM_PERIPHERALS: break; + } + return false; +} + +inline eATmegaPeripheral _ATmega_getPeripheralForFunc( eATmegaPinFunc func ) { + // In C++20 there is the "using-enum" statement. I wish we had C++20 over here... + //using enum eATmegaPinFunc; + switch(func) { + #ifdef __AVR_TRM01__ + case eATmegaPinFunc::TOC0A: case eATmegaPinFunc::TOC0B: return eATmegaPeripheral::PTIM0; + case eATmegaPinFunc::TOC1A: case eATmegaPinFunc::TOC1B: case eATmegaPinFunc::TOC1C: return eATmegaPeripheral::PTIM1; + case eATmegaPinFunc::TOC2A: case eATmegaPinFunc::TOC2B: return eATmegaPeripheral::PTIM2; + case eATmegaPinFunc::TOC3A: case eATmegaPinFunc::TOC3B: case eATmegaPinFunc::TOC3C: return eATmegaPeripheral::PTIM3; + case eATmegaPinFunc::TOC4A: case eATmegaPinFunc::TOC4B: case eATmegaPinFunc::TOC4C: return eATmegaPeripheral::PTIM4; + case eATmegaPinFunc::TOC5A: case eATmegaPinFunc::TOC5B: case eATmegaPinFunc::TOC5C: return eATmegaPeripheral::PTIM5; + case eATmegaPinFunc::SPI_MISO: case eATmegaPinFunc::SPI_MOSI: case eATmegaPinFunc::SPI_SCK: case eATmegaPinFunc::SPI_CS: return eATmegaPeripheral::PSPI; + case eATmegaPinFunc::TIMER0_CLKI: return eATmegaPeripheral::PTIM0; + case eATmegaPinFunc::TIMER1_CLKI: case eATmegaPinFunc::TIMER1_ICP: return eATmegaPeripheral::PTIM1; + case eATmegaPinFunc::TIMER3_CLKI: case eATmegaPinFunc::TIMER3_ICP: return eATmegaPeripheral::PTIM3; + case eATmegaPinFunc::TIMER4_CLKI: case eATmegaPinFunc::TIMER4_ICP: return eATmegaPeripheral::PTIM4; + case eATmegaPinFunc::TIMER5_CLKI: case eATmegaPinFunc::TIMER5_ICP: return eATmegaPeripheral::PTIM5; + case eATmegaPinFunc::USART0_CLK: case eATmegaPinFunc::USART0_TXD: case eATmegaPinFunc::USART0_RXD: return eATmegaPeripheral::PUSART0; + case eATmegaPinFunc::USART1_CLK: case eATmegaPinFunc::USART1_TXD: case eATmegaPinFunc::USART1_RXD: return eATmegaPeripheral::PUSART1; + case eATmegaPinFunc::USART2_CLK: case eATmegaPinFunc::USART2_TXD: case eATmegaPinFunc::USART2_RXD: return eATmegaPeripheral::PUSART2; + case eATmegaPinFunc::USART3_CLK: case eATmegaPinFunc::USART3_TXD: case eATmegaPinFunc::USART3_RXD: return eATmegaPeripheral::PUSART3; + case eATmegaPinFunc::TWI_SDA: case eATmegaPinFunc::TWI_CLK: return eATmegaPeripheral::PTWI; + case eATmegaPinFunc::ADC15: case eATmegaPinFunc::ADC14: case eATmegaPinFunc::ADC13: case eATmegaPinFunc::ADC12: case eATmegaPinFunc::ADC11: case eATmegaPinFunc::ADC10: case eATmegaPinFunc::ADC9: case eATmegaPinFunc::ADC8: + case eATmegaPinFunc::ADC7: case eATmegaPinFunc::ADC6: case eATmegaPinFunc::ADC5: case eATmegaPinFunc::ADC4: case eATmegaPinFunc::ADC3: case eATmegaPinFunc::ADC2: case eATmegaPinFunc::ADC1: case eATmegaPinFunc::ADC0: + return eATmegaPeripheral::PADC; + #elif defined(__AVR_TRM02__) + case eATmegaPinFunc::ADC7: case eATmegaPinFunc::ADC6: case eATmegaPinFunc::ADC5: case eATmegaPinFunc::ADC4: case eATmegaPinFunc::ADC3: case eATmegaPinFunc::ADC2: case eATmegaPinFunc::ADC1: case eATmegaPinFunc::ADC0: + return eATmegaPeripheral::PADC; + case eATmegaPinFunc::SPI_SCK: case eATmegaPinFunc::SPI_MISO: case eATmegaPinFunc::SPI_MOSI: case eATmegaPinFunc::SPI_CS: return eATmegaPeripheral::PSPI; + case eATmegaPinFunc::TIMER3_ICP: case eATmegaPinFunc::TIMER3_ECI: return eATmegaPeripheral::PTIM3; + case eATmegaPinFunc::TIMER1_ECI: case eATmegaPinFunc::TIMER1_ICP: return eATmegaPeripheral::PTIM1; + case eATmegaPinFunc::TIMER0_ECI: return eATmegaPeripheral::PTIM0; + case eATmegaPinFunc::TOC3B: case eATmegaPinFunc::TOC3A: return eATmegaPeripheral::PTIM3; + case eATmegaPinFunc::TOC2A: case eATmegaPinFunc::TOC2B: return eATmegaPeripheral::PTIM2; + case eATmegaPinFunc::TOC1A: case eATmegaPinFunc::TOC1B: return eATmegaPeripheral::PTIM1; + case eATmegaPinFunc::TOC0B: case eATmegaPinFunc::TOC0A: return eATmegaPeripheral::PTIM0; + case eATmegaPinFunc::USART0_CLK: case eATmegaPinFunc::USART0_TXD: case eATmegaPinFunc::USART0_RXD: return eATmegaPeripheral::PUSART0; + case eATmegaPinFunc::USART1_CLK: case eATmegaPinFunc::USART1_TXD: case eATmegaPinFunc::USART1_RXD: return eATmegaPeripheral::PUSART1; + case eATmegaPinFunc::TWI_SDA: case eATmegaPinFunc::TWI_CLK: return eATmegaPeripheral::PTWI; + #elif defined(__AVR_TRM03__) + case eATmegaPinFunc::ADC5: case eATmegaPinFunc::ADC4: case eATmegaPinFunc::ADC3: case eATmegaPinFunc::ADC2: case eATmegaPinFunc::ADC1: case eATmegaPinFunc::ADC0: + return eATmegaPeripheral::PADC; + case eATmegaPinFunc::SPI_SCK: case eATmegaPinFunc::SPI_MISO: case eATmegaPinFunc::SPI_MOSI: case eATmegaPinFunc::SPI_CS: return eATmegaPeripheral::PSPI; + case eATmegaPinFunc::TOC2B: case eATmegaPinFunc::TOC2A: return eATmegaPeripheral::PTIM2; + case eATmegaPinFunc::TOC1B: case eATmegaPinFunc::TOC1A: return eATmegaPeripheral::PTIM1; + case eATmegaPinFunc::TOC0A: case eATmegaPinFunc::TOC0B: return eATmegaPeripheral::PTIM0; + case eATmegaPinFunc::TIMER1_ICP: case eATmegaPinFunc::TIMER1_ECI: return eATmegaPeripheral::PTIM1; + case eATmegaPinFunc::TIMER0_ECI: return eATmegaPeripheral::PTIM0; + case eATmegaPinFunc::TWI_CLK: case eATmegaPinFunc::TWI_SDA: return eATmegaPeripheral::PTWI; + case eATmegaPinFunc::USART_CLK: case eATmegaPinFunc::USART_TXD: case eATmegaPinFunc::USART_RXD: return eATmegaPeripheral::PUSART0; + #elif defined(__AVR_TRM04__) + case eATmegaPinFunc::TOC0B: case eATmegaPinFunc::TOC0A: return eATmegaPeripheral::PTIM0; + case eATmegaPinFunc::TOC1C: case eATmegaPinFunc::TOC1B: case eATmegaPinFunc::TOC1A: return eATmegaPeripheral::PTIM1; + case eATmegaPinFunc::TOC2B: case eATmegaPinFunc::TOC2A: return eATmegaPeripheral::PTIM2; + case eATmegaPinFunc::TOC3A: case eATmegaPinFunc::TOC3B: case eATmegaPinFunc::TOC3C: return eATmegaPeripheral::PTIM3; + case eATmegaPinFunc::SPI_MISO: case eATmegaPinFunc::SPI_MOSI: case eATmegaPinFunc::SPI_SCK: case eATmegaPinFunc::SPI_CS: return eATmegaPeripheral::PSPI; + case eATmegaPinFunc::TIMER3_ICP: case eATmegaPinFunc::TIMER3_CLKI: return eATmegaPeripheral::PTIM3; + case eATmegaPinFunc::TIMER1_ICP: case eATmegaPinFunc::TIMER1_CLKI: return eATmegaPeripheral::PTIM1; + case eATmegaPinFunc::TIMER0_CLKI: return eATmegaPeripheral::PTIM0; + case eATmegaPinFunc::USART1_CLK: case eATmegaPinFunc::USART1_TXD: case eATmegaPinFunc::USART1_RXD: return eATmegaPeripheral::PUSART1; + case eATmegaPinFunc::TWI_SDA: case eATmegaPinFunc::TWI_CLK: return eATmegaPeripheral::PTWI; + case eATmegaPinFunc::UID: case eATmegaPinFunc::UVCON: return eATmegaPeripheral::PUSB; + case eATmegaPinFunc::ADC7: case eATmegaPinFunc::ADC6: case eATmegaPinFunc::ADC5: case eATmegaPinFunc::ADC4: case eATmegaPinFunc::ADC3: case eATmegaPinFunc::ADC2: case eATmegaPinFunc::ADC1: case eATmegaPinFunc::ADC0: + return eATmegaPeripheral::PADC; + #elif defined(__AVR_TRM05__) + case eATmegaPinFunc::ADC7: case eATmegaPinFunc::ADC6: case eATmegaPinFunc::ADC5: case eATmegaPinFunc::ADC4: case eATmegaPinFunc::ADC3: case eATmegaPinFunc::ADC2: case eATmegaPinFunc::ADC1: case eATmegaPinFunc::ADC0: + return eATmegaPeripheral::PADC; + case eATmegaPinFunc::SPI_MISO: case eATmegaPinFunc::SPI_MOSI: case eATmegaPinFunc::SPI_SCK: case eATmegaPinFunc::SPI_CS: return eATmegaPeripheral::PSPI; + case eATmegaPinFunc::TIMER1_ICP: case eATmegaPinFunc::TIMER1_ECI: return eATmegaPeripheral::PTIM1; + case eATmegaPinFunc::TIMER0_ICP: case eATmegaPinFunc::TIMER0_ECI: return eATmegaPeripheral::PTIM0; + case eATmegaPinFunc::TOC0B: case eATmegaPinFunc::TOC0A: return eATmegaPeripheral::PTIM0; + case eATmegaPinFunc::TOC1A: case eATmegaPinFunc::TOC1B: return eATmegaPeripheral::PTIM1; + case eATmegaPinFunc::TOC2A: case eATmegaPinFunc::TOC2B: return eATmegaPeripheral::PTIM2; + case eATmegaPinFunc::TWI_CLK: case eATmegaPinFunc::TWI_SDA: return eATmegaPeripheral::PTWI; + case eATmegaPinFunc::USART0_CLK: case eATmegaPinFunc::USART0_TXD: case eATmegaPinFunc::USART0_RXD: return eATmegaPeripheral::PUSART0; + case eATmegaPinFunc::USART1_CLK: case eATmegaPinFunc::USART1_TXD: case eATmegaPinFunc::USART1_RXD: return eATmegaPeripheral::PUSART1; + #endif + // There are quite some pin functions that have no peripheral assignment, and that is OK! + default: break; + } + return eATmegaPeripheral::UNDEFINED; +} + +struct ATmegaPeripheralSet { + inline ATmegaPeripheralSet() noexcept { + for (bool& f : this->funcs) f = false; + } + template + inline ATmegaPeripheralSet(funcItemType&&... items) noexcept : ATmegaPinFuncSet() { + add(((eATmegaPinFunc&&)items)...); + } + inline ATmegaPeripheralSet(const ATmegaPeripheralSet&) = default; + + inline void add(eATmegaPeripheral value) noexcept { + this->funcs[(uint8_t)value] = true; + } + template + inline void add(eATmegaPeripheral value, funcItemType&&... items) noexcept { + add(value); + add(((funcItemType&&)items)...); + } + + inline bool hasItem(eATmegaPeripheral value) const noexcept { + return this->funcs[(uint8_t)value]; + } + template + inline bool hasItem(eATmegaPeripheral&& item, otherFuncItem&&... funcs) const noexcept { + return hasItem(item) || hasItem(((otherFuncItem&&)funcs)...); + } + + template + inline void iterate(callbackType&& cb) const { + for (uint8_t n = 1; n < countof(funcs); n++) { + const bool& f = this->funcs[n]; + if (f) cb( (eATmegaPeripheral)n ); + } + } + + inline void fromPinFuncs(const ATmegaPinFuncSet& funcSet) { + funcSet.iterate( + [this]( eATmegaPinFunc func ) noexcept { + this->add( _ATmega_getPeripheralForFunc(func) ); + } + ); + } + +private: + bool funcs[(uint8_t)eATmegaPeripheral::NUM_PERIPHERALS]; +}; + +struct ATmegaPeripheralPowerGate { + inline ATmegaPeripheralPowerGate(ATmegaPeripheralSet& periSet) noexcept : periSet(periSet) { + periSet.iterate( + [this]( eATmegaPeripheral peri ) noexcept { + this->states[(uint8_t)peri] = _ATmega_getPeripheralPower(peri); + _ATmega_setPeripheralPower(peri, true); + } + ); + } + inline ATmegaPeripheralPowerGate(const ATmegaPeripheralPowerGate&) = delete; + + inline ~ATmegaPeripheralPowerGate() { + periSet.iterate( + [this]( eATmegaPeripheral peri ) noexcept { + _ATmega_setPeripheralPower(peri, this->states[(uint8_t)peri]); + } + ); + } + + inline ATmegaPeripheralPowerGate& operator = (const ATmegaPeripheralPowerGate&) = delete; + +private: + ATmegaPeripheralSet& periSet; + bool states[(uint8_t)eATmegaPeripheral::NUM_PERIPHERALS]; +}; + +inline pin_dev_state_t _ATmega_savePinAlternates(const ATmegaPinFuncSet& funcSet) { + // TODO: the manual states that registers of power-reduced peripherals cannot be read or written, and that + // the resources (GPIO pins) remain occupied during power-reduction. This is a serious problem and we should + // add power-reduction awareness to this logic! + + pin_dev_state_t state; + + ATmegaPeripheralSet periSet; + periSet.fromPinFuncs(funcSet); + + ATmegaPeripheralPowerGate pgate(periSet); + + #ifdef __AVR_TRM01__ + // See page 75ff of ATmega2560 technical reference manual. + if (funcSet.hasAnyFunc( + eATmegaPinFunc::EXTMEM_AD15, eATmegaPinFunc::EXTMEM_AD14, eATmegaPinFunc::EXTMEM_AD13, eATmegaPinFunc::EXTMEM_AD12, eATmegaPinFunc::EXTMEM_AD11, eATmegaPinFunc::EXTMEM_AD10, eATmegaPinFunc::EXTMEM_AD9, eATmegaPinFunc::EXTMEM_AD8, + eATmegaPinFunc::EXTMEM_AD7, eATmegaPinFunc::EXTMEM_AD6, eATmegaPinFunc::EXTMEM_AD5, eATmegaPinFunc::EXTMEM_AD4, eATmegaPinFunc::EXTMEM_AD3, eATmegaPinFunc::EXTMEM_AD2, eATmegaPinFunc::EXTMEM_AD1, eATmegaPinFunc::EXTMEM_AD0, + eATmegaPinFunc::EXTMEM_ALE, eATmegaPinFunc::EXTMEM_RD, eATmegaPinFunc::EXTMEM_WR + )) { + state._SRE = _XMCRA._SRE; + _XMCRA._SRE = false; + } + if (funcSet.hasAnyFunc( + eATmegaPinFunc::PCI0, eATmegaPinFunc::PCI1, eATmegaPinFunc::PCI2, eATmegaPinFunc::PCI3, eATmegaPinFunc::PCI4, eATmegaPinFunc::PCI5, eATmegaPinFunc::PCI6, eATmegaPinFunc::PCI7 + )) { + state._PCIE0 = _PCICR._PCIE0; + _PCICR._PCIE0 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1C)) { + state._COM1C = TIMER1._TCCRnA._COMnC; + TIMER1._TCCRnA._COMnC = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1B)) { + state._COM1B = TIMER1._TCCRnA._COMnB; + TIMER1._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1A)) { + state._COM1A = TIMER1._TCCRnA._COMnA; + TIMER1._TCCRnA._COMnA = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2A)) { + state._COM2A = _TIMER2._TCCRnA._COMnA; + _TIMER2._TCCRnA._COMnA = 0; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART1_TXD, eATmegaPinFunc::USART1_CLK)) { + state._USART1_TXEN = USART1._UCSRnB._TXEN; + USART1._UCSRnB._TXEN = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART1_RXD, eATmegaPinFunc::USART1_CLK)) { + state._USART1_RXEN = USART1._UCSRnB._RXEN; + USART1._UCSRnB._RXEN = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC3C)) { + state._COM3C = TIMER3._TCCRnA._COMnC; + TIMER3._TCCRnA._COMnC = 0; + } + // There is an error in the technical reference manual signal mapping table + // of ATmega2560 where is says that pin 3 is mapped to OC3B, but the list + // says OC3A. + if (funcSet.hasFunc(eATmegaPinFunc::TOC3B)) { + state._COM3B = TIMER3._TCCRnA._COMnB; + TIMER3._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC3A)) { + state._COM3A = TIMER3._TCCRnA._COMnA; + TIMER3._TCCRnA._COMnA = 0; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART0_RXD, eATmegaPinFunc::USART0_CLK)) { + state._USART0_RXEN = USART0._UCSRnB._RXEN; + USART0._UCSRnB._RXEN = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART0_TXD, eATmegaPinFunc::USART0_CLK)) { + state._USART0_TXEN = USART0._UCSRnB._TXEN; + USART0._UCSRnB._TXEN = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI15, eATmegaPinFunc::PCI14, eATmegaPinFunc::PCI13, eATmegaPinFunc::PCI12, eATmegaPinFunc::PCI11, eATmegaPinFunc::PCI10, eATmegaPinFunc::PCI9, eATmegaPinFunc::PCI8)) { + state._PCIE1 = _PCICR._PCIE1; + _PCICR._PCIE1 = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::TOC0B)) { + state._COM0B = TIMER0._TCCRnA._COMnB; + TIMER0._TCCRnA._COMnB = 0; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::TOSC1, eATmegaPinFunc::TOSC2)) { + state._AS2 = _ASSR._AS2; + _ASSR._AS2 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2B)) { + state._COM2B = _TIMER2._TCCRnA._COMnB; + _TIMER2._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC4C)) { + state._COM4C = TIMER4._TCCRnA._COMnC; + TIMER4._TCCRnA._COMnC = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC4B)) { + state._COM4B = TIMER4._TCCRnA._COMnB; + TIMER4._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC4A)) { + state._COM4A = TIMER4._TCCRnA._COMnA; + TIMER4._TCCRnA._COMnA = 0; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART2_RXD, eATmegaPinFunc::USART2_CLK)) { + state._USART2_RXEN = USART2._UCSRnB._RXEN; + USART2._UCSRnB._RXEN = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART2_TXD, eATmegaPinFunc::USART2_CLK)) { + state._USART2_TXEN = USART2._UCSRnB._TXEN; + USART2._UCSRnB._TXEN = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART3_TXD, eATmegaPinFunc::USART3_CLK)) { + state._USART3_RXEN = USART3._UCSRnB._RXEN; + USART3._UCSRnB._RXEN = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART3_TXD, eATmegaPinFunc::USART3_CLK)) { + state._USART3_TXEN = USART3._UCSRnB._TXEN; + USART3._UCSRnB._TXEN = false; + } + if (funcSet.hasAnyFunc( + eATmegaPinFunc::PCI23, eATmegaPinFunc::PCI22, eATmegaPinFunc::PCI21, eATmegaPinFunc::PCI20, eATmegaPinFunc::PCI19, eATmegaPinFunc::PCI18, eATmegaPinFunc::PCI17, eATmegaPinFunc::PCI16 + )) { + state._PCIE2 = _PCICR._PCIE2; + _PCICR._PCIE2 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC5C)) { + state._COM5C = TIMER5._TCCRnA._COMnC; + TIMER5._TCCRnA._COMnC = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC5B)) { + state._COM5B = TIMER5._TCCRnA._COMnB; + TIMER5._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC5A)) { + state._COM5A = TIMER5._TCCRnA._COMnA; + TIMER5._TCCRnA._COMnA = 0; + } + #elif defined(__AVR_TRM02__) + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI7, eATmegaPinFunc::PCI6, eATmegaPinFunc::PCI5, eATmegaPinFunc::PCI4, eATmegaPinFunc::PCI3, eATmegaPinFunc::PCI2, eATmegaPinFunc::PCI1, eATmegaPinFunc::PCI0)) { + state._PCIE0 = _PCICR._PCIE0; + _PCICR._PCIE0 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC7)) { + state._ADC7D = _DIDR0._ADC7D; + _DIDR0._ADC7D = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC6)) { + state._ADC6D = _DIDR0._ADC6D; + _DIDR0._ADC6D = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC5)) { + state._ADC5D = _DIDR0._ADC5D; + _DIDR0._ADC5D = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC4)) { + state._ADC4D = _DIDR0._ADC4D; + _DIDR0._ADC4D = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC3)) { + state._ADC3D = _DIDR0._ADC3D; + _DIDR0._ADC3D = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC2)) { + state._ADC2D = _DIDR0._ADC2D; + _DIDR0._ADC2D = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC1)) { + state._ADC1D = _DIDR0._ADC1D; + _DIDR0._ADC1D = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC0)) { + state._ADC0D = _DIDR0._ADC0D; + _DIDR0._ADC0D = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI15, eATmegaPinFunc::PCI14, eATmegaPinFunc::PCI13, eATmegaPinFunc::PCI12, eATmegaPinFunc::PCI11, eATmegaPinFunc::PCI10, eATmegaPinFunc::PCI9, eATmegaPinFunc::PCI8)) { + state._PCIE1 = _PCICR._PCIE1; + _PCICR._PCIE1 = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::SPI_SCK, eATmegaPinFunc::SPI_MISO, eATmegaPinFunc::SPI_MOSI, eATmegaPinFunc::SPI_CS)) { + state._SPE = _SPCR._SPE; + _SPCR._SPE = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC0A)) { + state._COM0A = TIMER0._TCCRnA._COMnA; + TIMER0._TCCRnA._COMnA = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC0B)) { + state._COM0B = TIMER0._TCCRnA._COMnB; + TIMER0._TCCRnA._COMnB = 0; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::TOSC1, eATmegaPinFunc::TOSC2)) { + state._AS2 = _ASSR._AS2; + _ASSR._AS2 = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI23, eATmegaPinFunc::PCI22, eATmegaPinFunc::PCI21, eATmegaPinFunc::PCI20, eATmegaPinFunc::PCI19, eATmegaPinFunc::PCI18, eATmegaPinFunc::PCI17, eATmegaPinFunc::PCI16)) { + state._PCIE2 = _PCICR._PCIE2; + _PCICR._PCIE2 = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI31, eATmegaPinFunc::PCI30, eATmegaPinFunc::PCI29, eATmegaPinFunc::PCI28, eATmegaPinFunc::PCI27, eATmegaPinFunc::PCI26, eATmegaPinFunc::PCI25, eATmegaPinFunc::PCI24)) { + state._PCIE3 = _PCICR._PCIE3; + _PCICR._PCIE3 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2A)) { + state._COM2A = _TIMER2._TCCRnA._COMnA; + _TIMER2._TCCRnA._COMnA = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2B)) { + state._COM2B = _TIMER2._TCCRnA._COMnB; + _TIMER2._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1A)) { + state._COM1A = TIMER1._TCCRnA._COMnA; + TIMER1._TCCRnA._COMnA = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1B)) { + state._COM1B = TIMER1._TCCRnA._COMnB; + TIMER1._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::USART1_TXD)) { + state._USART1_TXEN = USART1._UCSRnB._TXEN; + USART1._UCSRnB._TXEN = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::USART1_RXD)) { + state._USART1_RXEN = USART1._UCSRnB._RXEN; + USART1._UCSRnB._RXEN = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::USART0_TXD)) { + state._USART0_TXEN = USART0._UCSRnB._TXEN; + USART0._UCSRnB._TXEN = false; + } + // There is a bug in the ATmega164A technical reference manual where + // it says that pin 0 is mapped to USART1 RXD in the signal mapping table + // but the associated list says USART0 RXD. + if (funcSet.hasFunc(eATmegaPinFunc::USART0_RXD)) { + state._USART0_RXEN = USART0._UCSRnB._RXEN; + USART0._UCSRnB._RXEN = false; + } + #elif defined(__AVR_TRM03__) + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI7, eATmegaPinFunc::PCI6, eATmegaPinFunc::PCI5, eATmegaPinFunc::PCI4, eATmegaPinFunc::PCI3, eATmegaPinFunc::PCI2, eATmegaPinFunc::PCI1, eATmegaPinFunc::PCI0)) { + state._PCIE0 = _PCICR._PCIE0; + _PCICR._PCIE0 = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::TOSC1, eATmegaPinFunc::TOSC2)) { + state._AS2 = _ASSR._AS2; + _ASSR._AS2 = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::SPI_SCK, eATmegaPinFunc::SPI_MISO, eATmegaPinFunc::SPI_MOSI, eATmegaPinFunc::SPI_CS)) { + state._SPE = _SPCR._SPE; + _SPCR._SPE = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2A)) { + state._COM2A = _TIMER2._TCCRnA._COMnA; + _TIMER2._TCCRnA._COMnA = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1B)) { + state._COM1B = TIMER1._TCCRnA._COMnB; + TIMER1._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1A)) { + state._COM1A = TIMER1._TCCRnA._COMnA; + TIMER1._TCCRnA._COMnA = 0; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI14, eATmegaPinFunc::PCI13, eATmegaPinFunc::PCI12, eATmegaPinFunc::PCI11, eATmegaPinFunc::PCI10, eATmegaPinFunc::PCI9, eATmegaPinFunc::PCI8)) { + state._PCIE1 = _PCICR._PCIE1; + _PCICR._PCIE1 = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::TWI_CLK, eATmegaPinFunc::TWI_SDA)) { + state._TWEN = _TWCR._TWEN; + _TWCR._TWEN = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC5)) { + state._ADC5D = _DIDR0._ADC5D; + _DIDR0._ADC5D = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC4)) { + state._ADC4D = _DIDR0._ADC4D; + _DIDR0._ADC4D = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC3)) { + state._ADC3D = _DIDR0._ADC3D; + _DIDR0._ADC3D = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC2)) { + state._ADC2D = _DIDR0._ADC2D; + _DIDR0._ADC2D = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC1)) { + state._ADC1D = _DIDR0._ADC1D; + _DIDR0._ADC1D = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC0)) { + state._ADC0D = _DIDR0._ADC0D; + _DIDR0._ADC0D = false; + } + // There is a bug in the ATmega48A technical reference manual where pin 2 + // is said to be mapped to PCIE1 but logically it should be PCIE2 instead. + // The real mapping can be read in the documentation of the PCICR register. + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI23, eATmegaPinFunc::PCI22, eATmegaPinFunc::PCI21, eATmegaPinFunc::PCI20, eATmegaPinFunc::PCI19, eATmegaPinFunc::PCI18, eATmegaPinFunc::PCI17, eATmegaPinFunc::PCI16)) { + state._PCIE2 = _PCICR._PCIE2; + _PCICR._PCIE2 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC0A)) { + state._COM0A = TIMER0._TCCRnA._COMnA; + TIMER0._TCCRnA._COMnA = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC0B)) { + state._COM0B = TIMER0._TCCRnA._COMnB; + TIMER0._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::USART_CLK)) { + state._UMSEL = USART0._UCSRnC._UMSEL; + USART0._UCSRnC._UMSEL = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2B)) { + state._COM2B = _TIMER2._TCCRnA._COMnB; + _TIMER2._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::USART_TXD)) { + state._USART0_TXEN = USART0._UCSRnB._TXEN; + USART0._UCSRnB._TXEN = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::USART_RXD)) { + state._USART0_RXEN = USART0._UCSRnB._RXEN; + USART0._UCSRnB._RXEN = false; + } + #elif defined(__AVR_TRM04__) + if (funcSet.hasAnyFunc( + eATmegaPinFunc::EXTMEM_AD15, eATmegaPinFunc::EXTMEM_AD14, eATmegaPinFunc::EXTMEM_AD13, eATmegaPinFunc::EXTMEM_AD12, eATmegaPinFunc::EXTMEM_AD11, eATmegaPinFunc::EXTMEM_AD10, eATmegaPinFunc::EXTMEM_AD9, eATmegaPinFunc::EXTMEM_AD8, + eATmegaPinFunc::EXTMEM_AD7, eATmegaPinFunc::EXTMEM_AD6, eATmegaPinFunc::EXTMEM_AD5, eATmegaPinFunc::EXTMEM_AD4, eATmegaPinFunc::EXTMEM_AD3, eATmegaPinFunc::EXTMEM_AD2, eATmegaPinFunc::EXTMEM_AD1, eATmegaPinFunc::EXTMEM_AD0, + eATmegaPinFunc::EXTMEM_ALE, eATmegaPinFunc::EXTMEM_RD, eATmegaPinFunc::EXTMEM_WR + )) { + state._SRE = _XMCRA._SRE; + _XMCRA._SRE = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1C)) { + state._COM1C = TIMER1._TCCRnA._COMnC; + TIMER1._TCCRnA._COMnC = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1B)) { + state._COM1B = TIMER1._TCCRnA._COMnB; + TIMER1._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1A)) { + state._COM1A = TIMER1._TCCRnA._COMnA; + TIMER1._TCCRnA._COMnA = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2A)) { + state._COM2A = _TIMER2._TCCRnA._COMnA; + _TIMER2._TCCRnA._COMnA = 0; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::SPI_MISO, eATmegaPinFunc::SPI_MOSI, eATmegaPinFunc::SPI_SCK, eATmegaPinFunc::SPI_CS)) { + state._SPE = _SPCR._SPE; + _SPCR._SPE = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI7, eATmegaPinFunc::PCI6, eATmegaPinFunc::PCI5, eATmegaPinFunc::PCI4, eATmegaPinFunc::PCI3, eATmegaPinFunc::PCI2, eATmegaPinFunc::PCI1, eATmegaPinFunc::PCI0)) { + state._PCIE0 = _PCICR._PCIE0; + _PCICR._PCIE0 = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART1_CLK, eATmegaPinFunc::USART1_TXD)) { + state._USART1_TXEN = USART1._UCSRnB._TXEN; + USART1._UCSRnB._TXEN = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART1_CLK, eATmegaPinFunc::USART1_RXD)) { + state._USART1_RXEN = USART1._UCSRnB._RXEN; + USART1._UCSRnB._RXEN = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::TWI_SDA, eATmegaPinFunc::TWI_CLK)) { + state._TWEN = _TWCR._TWEN; + _TWCR._TWEN = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2B)) { + state._COM2B = _TIMER2._TCCRnA._COMnB; + _TIMER2._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC0B)) { + state._COM0B = TIMER0._TCCRnA._COMnB; + TIMER0._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT3)) { + state._INT3 = _EIMSK._INT3; + _EIMSK._INT3 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT2)) { + state._INT2 = _EIMSK._INT2; + _EIMSK._INT2 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT1)) { + state._INT1 = _EIMSK._INT1; + _EIMSK._INT1 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT0)) { + state._INT0 = _EIMSK._INT0; + _EIMSK._INT0 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::UVCON)) { + state._UVCONE = _UHWCON._UVCONE; + _UHWCON._UVCONE = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::UID)) { + state._UIDE = _UHWCON._UIDE; + _UHWCON._UIDE = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT7)) { + state._INT7 = _EIMSK._INT7; + _EIMSK._INT7 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT6)) { + state._INT6 = _EIMSK._INT6; + _EIMSK._INT6 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT5)) { + state._INT5 = _EIMSK._INT5; + _EIMSK._INT5 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT4)) { + state._INT4 = _EIMSK._INT4; + _EIMSK._INT4 = false; + } + #elif defined(__AVR_TRM05__) + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI7, eATmegaPinFunc::PCI6, eATmegaPinFunc::PCI5, eATmegaPinFunc::PCI4, eATmegaPinFunc::PCI3, eATmegaPinFunc::PCI2, eATmegaPinFunc::PCI1, eATmegaPinFunc::PCI0)) { + state._PCIE0 = _PCICR._PCIE0; + _PCICR._PCIE0 = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI15, eATmegaPinFunc::PCI14, eATmegaPinFunc::PCI13, eATmegaPinFunc::PCI12, eATmegaPinFunc::PCI11, eATmegaPinFunc::PCI10, eATmegaPinFunc::PCI9, eATmegaPinFunc::PCI8)) { + state._PCIE1 = _PCICR._PCIE1; + _PCICR._PCIE1 = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI23, eATmegaPinFunc::PCI22, eATmegaPinFunc::PCI21, eATmegaPinFunc::PCI20, eATmegaPinFunc::PCI19, eATmegaPinFunc::PCI18, eATmegaPinFunc::PCI17, eATmegaPinFunc::PCI16)) { + state._PCIE2 = _PCICR._PCIE2; + _PCICR._PCIE2 = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI31, eATmegaPinFunc::PCI30, eATmegaPinFunc::PCI29, eATmegaPinFunc::PCI28, eATmegaPinFunc::PCI27, eATmegaPinFunc::PCI26, eATmegaPinFunc::PCI25, eATmegaPinFunc::PCI24)) { + state._PCIE3 = _PCICR._PCIE3; + _PCICR._PCIE3 = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::SPI_SCK, eATmegaPinFunc::SPI_MISO, eATmegaPinFunc::SPI_MOSI, eATmegaPinFunc::SPI_CS)) { + state._SPE = _SPCR._SPE; + _SPCR._SPE = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC0B)) { + state._COM0B = TIMER0._TCCRnA._COMnB; + TIMER0._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC0A)) { + state._COM0A = TIMER0._TCCRnA._COMnA; + TIMER0._TCCRnA._COMnA = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2A)) { + state._COM2A = _TIMER2._TCCRnA._COMnA; + _TIMER2._TCCRnA._COMnA = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2B)) { + state._COM2B = _TIMER2._TCCRnA._COMnB; + _TIMER2._TCCRnA._COMnB = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1A)) { + state._COM1A = TIMER1._TCCRnA._COMnA; + TIMER1._TCCRnA._COMnA = 0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1B)) { + state._COM1B = TIMER1._TCCRnA._COMnB; + TIMER1._TCCRnA._COMnB = 0; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::TWI_CLK, eATmegaPinFunc::TWI_SDA)) { + state._TWEN = _TWCR._TWEN; + _TWCR._TWEN = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT2)) { + state._INT2 = _EIMSK._INT2; + _EIMSK._INT2 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT1)) { + state._INT1 = _EIMSK._INT1; + _EIMSK._INT1 = false; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT0)) { + state._INT0 = _EIMSK._INT0; + _EIMSK._INT0 = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART0_CLK, eATmegaPinFunc::USART0_TXD)) { + state._TXEN0 = USART0._UCSRnB._TXEN; + USART0._UCSRnB._TXEN = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART0_CLK, eATmegaPinFunc::USART0_RXD)) { + state._RXEN0 = USART0._UCSRnB._RXEN; + USART0._UCSRnB._RXEN = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART1_CLK, eATmegaPinFunc::USART1_TXD)) { + state._TXEN1 = USART1._UCSRnB._TXEN; + USART1._UCSRnB._TXEN = false; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART1_CLK, eATmegaPinFunc::USART1_RXD)) { + state._RXEN1 = USART1._UCSRnB._RXEN; + USART1._UCSRnB._RXEN = false; + } + #endif + + return state; +} + +inline void _ATmega_restorePinAlternates(const ATmegaPinFuncSet& funcSet, const pin_dev_state_t& state) { + ATmegaPeripheralSet periSet; + periSet.fromPinFuncs(funcSet); + + ATmegaPeripheralPowerGate pgate(periSet); + + #ifdef __AVR_TRM01__ + // See page 75ff of ATmega2560 technical reference manual. + if (funcSet.hasAnyFunc( + eATmegaPinFunc::EXTMEM_AD15, eATmegaPinFunc::EXTMEM_AD14, eATmegaPinFunc::EXTMEM_AD13, eATmegaPinFunc::EXTMEM_AD12, eATmegaPinFunc::EXTMEM_AD11, eATmegaPinFunc::EXTMEM_AD10, eATmegaPinFunc::EXTMEM_AD9, eATmegaPinFunc::EXTMEM_AD8, + eATmegaPinFunc::EXTMEM_AD7, eATmegaPinFunc::EXTMEM_AD6, eATmegaPinFunc::EXTMEM_AD5, eATmegaPinFunc::EXTMEM_AD4, eATmegaPinFunc::EXTMEM_AD3, eATmegaPinFunc::EXTMEM_AD2, eATmegaPinFunc::EXTMEM_AD1, eATmegaPinFunc::EXTMEM_AD0, + eATmegaPinFunc::EXTMEM_ALE, eATmegaPinFunc::EXTMEM_RD, eATmegaPinFunc::EXTMEM_WR + )) { + _XMCRA._SRE = state._SRE; + } + if (funcSet.hasAnyFunc( + eATmegaPinFunc::PCI0, eATmegaPinFunc::PCI1, eATmegaPinFunc::PCI2, eATmegaPinFunc::PCI3, eATmegaPinFunc::PCI4, eATmegaPinFunc::PCI5, eATmegaPinFunc::PCI6, eATmegaPinFunc::PCI7 + )) { + _PCICR._PCIE0 = state._PCIE0; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1C)) { + TIMER1._TCCRnA._COMnC = state._COM1C; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1B)) { + TIMER1._TCCRnA._COMnB = state._COM1B; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1A)) { + TIMER1._TCCRnA._COMnA = state._COM1A; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2A)) { + _TIMER2._TCCRnA._COMnA = state._COM2A; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART1_TXD, eATmegaPinFunc::USART1_CLK)) { + USART1._UCSRnB._TXEN = state._USART1_TXEN; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART1_RXD, eATmegaPinFunc::USART1_CLK)) { + USART1._UCSRnB._RXEN = state._USART1_RXEN; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC3C)) { + TIMER3._TCCRnA._COMnC = state._COM3C; + } + // There is an error in the technical reference manual signal mapping table + // of ATmega2560 where is says that pin 3 is mapped to OC3B, but the list + // says OC3A. + if (funcSet.hasFunc(eATmegaPinFunc::TOC3B)) { + TIMER3._TCCRnA._COMnB = state._COM3B; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC3A)) { + TIMER3._TCCRnA._COMnA = state._COM3A; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART0_RXD, eATmegaPinFunc::USART0_CLK)) { + USART0._UCSRnB._RXEN = state._USART0_RXEN; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART0_TXD, eATmegaPinFunc::USART0_CLK)) { + USART0._UCSRnB._TXEN = state._USART0_TXEN; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI15, eATmegaPinFunc::PCI14, eATmegaPinFunc::PCI13, eATmegaPinFunc::PCI12, eATmegaPinFunc::PCI11, eATmegaPinFunc::PCI10, eATmegaPinFunc::PCI9, eATmegaPinFunc::PCI8)) { + _PCICR._PCIE1 = state._PCIE1; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::TOC0B)) { + TIMER0._TCCRnA._COMnB = state._COM0B; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::TOSC1, eATmegaPinFunc::TOSC2)) { + _ASSR._AS2 = state._AS2; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2B)) { + _TIMER2._TCCRnA._COMnB = state._COM2B; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC4C)) { + TIMER4._TCCRnA._COMnC = state._COM4C; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC4B)) { + TIMER4._TCCRnA._COMnB = state._COM4B; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC4A)) { + TIMER4._TCCRnA._COMnA = state._COM4A; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART2_RXD, eATmegaPinFunc::USART2_CLK)) { + USART2._UCSRnB._RXEN = state._USART2_RXEN; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART2_TXD, eATmegaPinFunc::USART2_CLK)) { + USART2._UCSRnB._TXEN = state._USART2_TXEN; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART3_TXD, eATmegaPinFunc::USART3_CLK)) { + USART3._UCSRnB._RXEN = state._USART3_RXEN; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART3_TXD, eATmegaPinFunc::USART3_CLK)) { + USART3._UCSRnB._TXEN = state._USART3_TXEN; + } + if (funcSet.hasAnyFunc( + eATmegaPinFunc::PCI23, eATmegaPinFunc::PCI22, eATmegaPinFunc::PCI21, eATmegaPinFunc::PCI20, eATmegaPinFunc::PCI19, eATmegaPinFunc::PCI18, eATmegaPinFunc::PCI17, eATmegaPinFunc::PCI16 + )) { + _PCICR._PCIE2 = state._PCIE2; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC5C)) { + TIMER5._TCCRnA._COMnC = state._COM5C; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC5B)) { + TIMER5._TCCRnA._COMnB = state._COM5B; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC5A)) { + TIMER5._TCCRnA._COMnA = state._COM5A; + } + #elif defined(__AVR_TRM02__) + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI7, eATmegaPinFunc::PCI6, eATmegaPinFunc::PCI5, eATmegaPinFunc::PCI4, eATmegaPinFunc::PCI3, eATmegaPinFunc::PCI2, eATmegaPinFunc::PCI1, eATmegaPinFunc::PCI0)) { + _PCICR._PCIE0 = state._PCIE0; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC7)) { + _DIDR0._ADC7D = state._ADC7D; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC6)) { + _DIDR0._ADC6D = state._ADC6D; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC5)) { + _DIDR0._ADC5D = state._ADC5D; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC4)) { + _DIDR0._ADC4D = state._ADC4D; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC3)) { + _DIDR0._ADC3D = state._ADC3D; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC2)) { + _DIDR0._ADC2D = state._ADC2D; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC1)) { + _DIDR0._ADC1D = state._ADC1D; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC0)) { + _DIDR0._ADC0D = state._ADC0D; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI15, eATmegaPinFunc::PCI14, eATmegaPinFunc::PCI13, eATmegaPinFunc::PCI12, eATmegaPinFunc::PCI11, eATmegaPinFunc::PCI10, eATmegaPinFunc::PCI9, eATmegaPinFunc::PCI8)) { + _PCICR._PCIE1 = state._PCIE1; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::SPI_SCK, eATmegaPinFunc::SPI_MISO, eATmegaPinFunc::SPI_MOSI, eATmegaPinFunc::SPI_CS)) { + _SPCR._SPE = state._SPE; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC0A)) { + TIMER0._TCCRnA._COMnA = state._COM0A; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC0B)) { + TIMER0._TCCRnA._COMnB = state._COM0B; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::TOSC1, eATmegaPinFunc::TOSC2)) { + _ASSR._AS2 = state._AS2; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI23, eATmegaPinFunc::PCI22, eATmegaPinFunc::PCI21, eATmegaPinFunc::PCI20, eATmegaPinFunc::PCI19, eATmegaPinFunc::PCI18, eATmegaPinFunc::PCI17, eATmegaPinFunc::PCI16)) { + _PCICR._PCIE2 = state._PCIE2; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI31, eATmegaPinFunc::PCI30, eATmegaPinFunc::PCI29, eATmegaPinFunc::PCI28, eATmegaPinFunc::PCI27, eATmegaPinFunc::PCI26, eATmegaPinFunc::PCI25, eATmegaPinFunc::PCI24)) { + _PCICR._PCIE3 = state._PCIE3; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2A)) { + _TIMER2._TCCRnA._COMnA = state._COM2A; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2B)) { + _TIMER2._TCCRnA._COMnB = state._COM2B; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1A)) { + TIMER1._TCCRnA._COMnA = state._COM1A; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1B)) { + TIMER1._TCCRnA._COMnB = state._COM1B; + } + if (funcSet.hasFunc(eATmegaPinFunc::USART1_TXD)) { + USART1._UCSRnB._TXEN = state._USART1_TXEN; + } + if (funcSet.hasFunc(eATmegaPinFunc::USART1_RXD)) { + USART1._UCSRnB._RXEN = state._USART1_RXEN; + } + if (funcSet.hasFunc(eATmegaPinFunc::USART0_TXD)) { + USART0._UCSRnB._TXEN = state._USART0_TXEN; + } + // There is a bug in the ATmega164A technical reference manual where + // it says that pin 0 is mapped to USART1 RXD in the signal mapping table + // but the associated list says USART0 RXD. + if (funcSet.hasFunc(eATmegaPinFunc::USART0_RXD)) { + USART0._UCSRnB._RXEN = state._USART0_RXEN; + } + #elif defined(__AVR_TRM03__) + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI7, eATmegaPinFunc::PCI6, eATmegaPinFunc::PCI5, eATmegaPinFunc::PCI4, eATmegaPinFunc::PCI3, eATmegaPinFunc::PCI2, eATmegaPinFunc::PCI1, eATmegaPinFunc::PCI0)) { + _PCICR._PCIE0 = state._PCIE0; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::TOSC1, eATmegaPinFunc::TOSC2)) { + _ASSR._AS2 = state._AS2; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::SPI_SCK, eATmegaPinFunc::SPI_MISO, eATmegaPinFunc::SPI_MOSI, eATmegaPinFunc::SPI_CS)) { + _SPCR._SPE = state._SPE; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2A)) { + _TIMER2._TCCRnA._COMnA = state._COM2A; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1B)) { + TIMER1._TCCRnA._COMnB = state._COM1B; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1A)) { + TIMER1._TCCRnA._COMnA = state._COM1A; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI14, eATmegaPinFunc::PCI13, eATmegaPinFunc::PCI12, eATmegaPinFunc::PCI11, eATmegaPinFunc::PCI10, eATmegaPinFunc::PCI9, eATmegaPinFunc::PCI8)) { + _PCICR._PCIE1 = state._PCIE1; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::TWI_CLK, eATmegaPinFunc::TWI_SDA)) { + _TWCR._TWEN = state._TWEN; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC5)) { + _DIDR0._ADC5D = state._ADC5D; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC4)) { + _DIDR0._ADC4D = state._ADC4D; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC3)) { + _DIDR0._ADC3D = state._ADC3D; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC2)) { + _DIDR0._ADC2D = state._ADC2D; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC1)) { + _DIDR0._ADC1D = state._ADC1D; + } + if (funcSet.hasFunc(eATmegaPinFunc::ADC0)) { + _DIDR0._ADC0D = state._ADC0D; + } + // There is a bug in the ATmega48A technical reference manual where pin 2 + // is said to be mapped to PCIE1 but logically it should be PCIE2 instead. + // The real mapping can be read in the documentation of the PCICR register. + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI23, eATmegaPinFunc::PCI22, eATmegaPinFunc::PCI21, eATmegaPinFunc::PCI20, eATmegaPinFunc::PCI19, eATmegaPinFunc::PCI18, eATmegaPinFunc::PCI17, eATmegaPinFunc::PCI16)) { + _PCICR._PCIE2 = state._PCIE2; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC0A)) { + TIMER0._TCCRnA._COMnA = state._COM0A; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC0B)) { + TIMER0._TCCRnA._COMnB = state._COM0B; + } + if (funcSet.hasFunc(eATmegaPinFunc::USART_CLK)) { + USART0._UCSRnC._UMSEL = state._UMSEL; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2B)) { + _TIMER2._TCCRnA._COMnB = state._COM2B; + } + if (funcSet.hasFunc(eATmegaPinFunc::USART_TXD)) { + USART0._UCSRnB._TXEN = state._USART0_TXEN; + } + if (funcSet.hasFunc(eATmegaPinFunc::USART_RXD)) { + USART0._UCSRnB._RXEN = state._USART0_RXEN; + } + #elif defined(__AVR_TRM04__) + if (funcSet.hasAnyFunc( + eATmegaPinFunc::EXTMEM_AD15, eATmegaPinFunc::EXTMEM_AD14, eATmegaPinFunc::EXTMEM_AD13, eATmegaPinFunc::EXTMEM_AD12, eATmegaPinFunc::EXTMEM_AD11, eATmegaPinFunc::EXTMEM_AD10, eATmegaPinFunc::EXTMEM_AD9, eATmegaPinFunc::EXTMEM_AD8, + eATmegaPinFunc::EXTMEM_AD7, eATmegaPinFunc::EXTMEM_AD6, eATmegaPinFunc::EXTMEM_AD5, eATmegaPinFunc::EXTMEM_AD4, eATmegaPinFunc::EXTMEM_AD3, eATmegaPinFunc::EXTMEM_AD2, eATmegaPinFunc::EXTMEM_AD1, eATmegaPinFunc::EXTMEM_AD0, + eATmegaPinFunc::EXTMEM_ALE, eATmegaPinFunc::EXTMEM_RD, eATmegaPinFunc::EXTMEM_WR + )) { + _XMCRA._SRE = state._SRE; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1C)) { + TIMER1._TCCRnA._COMnC = state._COM1C; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1B)) { + TIMER1._TCCRnA._COMnB = state._COM1B; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1A)) { + TIMER1._TCCRnA._COMnA = state._COM1A; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2A)) { + _TIMER2._TCCRnA._COMnA = state._COM2A; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::SPI_MISO, eATmegaPinFunc::SPI_MOSI, eATmegaPinFunc::SPI_SCK, eATmegaPinFunc::SPI_CS)) { + _SPCR._SPE = state._SPE; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI7, eATmegaPinFunc::PCI6, eATmegaPinFunc::PCI5, eATmegaPinFunc::PCI4, eATmegaPinFunc::PCI3, eATmegaPinFunc::PCI2, eATmegaPinFunc::PCI1, eATmegaPinFunc::PCI0)) { + _PCICR._PCIE0 = state._PCIE0; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART1_CLK, eATmegaPinFunc::USART1_TXD)) { + USART1._UCSRnB._TXEN = state._USART1_TXEN; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART1_CLK, eATmegaPinFunc::USART1_RXD)) { + USART1._UCSRnB._RXEN = state._USART1_RXEN; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::TWI_SDA, eATmegaPinFunc::TWI_CLK)) { + _TWCR._TWEN = state._TWEN; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2B)) { + _TIMER2._TCCRnA._COMnB = state._COM2B; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC0B)) { + TIMER0._TCCRnA._COMnB = state._COM0B; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT3)) { + _EIMSK._INT3 = state._INT3; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT2)) { + _EIMSK._INT2 = state._INT2; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT1)) { + _EIMSK._INT1 = state._INT1; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT0)) { + _EIMSK._INT0 = state._INT0; + } + if (funcSet.hasFunc(eATmegaPinFunc::UVCON)) { + _UHWCON._UVCONE = state._UVCONE; + } + if (funcSet.hasFunc(eATmegaPinFunc::UID)) { + _UHWCON._UIDE = state._UIDE; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT7)) { + _EIMSK._INT7 = state._INT7; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT6)) { + _EIMSK._INT6 = state._INT6; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT5)) { + _EIMSK._INT5 = state._INT5; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT4)) { + _EIMSK._INT4 = state._INT4; + } + #elif defined(__AVR_TRM05__) + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI7, eATmegaPinFunc::PCI6, eATmegaPinFunc::PCI5, eATmegaPinFunc::PCI4, eATmegaPinFunc::PCI3, eATmegaPinFunc::PCI2, eATmegaPinFunc::PCI1, eATmegaPinFunc::PCI0)) { + _PCICR._PCIE0 = state._PCIE0; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI15, eATmegaPinFunc::PCI14, eATmegaPinFunc::PCI13, eATmegaPinFunc::PCI12, eATmegaPinFunc::PCI11, eATmegaPinFunc::PCI10, eATmegaPinFunc::PCI9, eATmegaPinFunc::PCI8)) { + _PCICR._PCIE1 = state._PCIE1; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI23, eATmegaPinFunc::PCI22, eATmegaPinFunc::PCI21, eATmegaPinFunc::PCI20, eATmegaPinFunc::PCI19, eATmegaPinFunc::PCI18, eATmegaPinFunc::PCI17, eATmegaPinFunc::PCI16)) { + _PCICR._PCIE2 = state._PCIE2; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::PCI31, eATmegaPinFunc::PCI30, eATmegaPinFunc::PCI29, eATmegaPinFunc::PCI28, eATmegaPinFunc::PCI27, eATmegaPinFunc::PCI26, eATmegaPinFunc::PCI25, eATmegaPinFunc::PCI24)) { + _PCICR._PCIE3 = state._PCIE3; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::SPI_SCK, eATmegaPinFunc::SPI_MISO, eATmegaPinFunc::SPI_MOSI, eATmegaPinFunc::SPI_CS)) { + _SPCR._SPE = state._SPE; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC0B)) { + TIMER0._TCCRnA._COMnB = state._COM0B; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC0A)) { + TIMER0._TCCRnA._COMnA = state._COM0A; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2A)) { + _TIMER2._TCCRnA._COMnA = state._COM2A; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC2B)) { + _TIMER2._TCCRnA._COMnB = state._COM2B; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1A)) { + TIMER1._TCCRnA._COMnA = state._COM1A; + } + if (funcSet.hasFunc(eATmegaPinFunc::TOC1B)) { + TIMER1._TCCRnA._COMnB = state._COM1B; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::TWI_CLK, eATmegaPinFunc::TWI_SDA)) { + _TWCR._TWEN = state._TWEN; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT2)) { + _EIMSK._INT2 = state._INT2; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT1)) { + _EIMSK._INT1 = state._INT1; + } + if (funcSet.hasFunc(eATmegaPinFunc::EINT0)) { + _EIMSK._INT0 = state._INT0; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART0_CLK, eATmegaPinFunc::USART0_TXD)) { + USART0._UCSRnB._TXEN = state._TXEN0; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART0_CLK, eATmegaPinFunc::USART0_RXD)) { + USART0._UCSRnB._RXEN = state._RXEN0; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART1_CLK, eATmegaPinFunc::USART1_TXD)) { + USART1._UCSRnB._TXEN = state._TXEN1; + } + if (funcSet.hasAnyFunc(eATmegaPinFunc::USART1_CLK, eATmegaPinFunc::USART1_RXD)) { + USART1._UCSRnB._RXEN = state._RXEN1; + } + #endif +} + +inline pin_dev_state_t _ATmega_savePinAlternate(uint8_t pin) { + return _ATmega_savePinAlternates({pin}); +} + +inline void _ATmega_restorePinAlternate(uint8_t pin, const pin_dev_state_t& state) { + _ATmega_restorePinAlternate({pin}, state); +} + +#ifndef LOW + #define LOW 0 +#endif +#ifndef HIGH + #define HIGH 1 +#endif + +inline void _ATmega_digitalWrite(int pin, int state) { + if (pin < 0) return; + + ATmegaPinInfo info = _ATmega_getPinInfo((unsigned int)pin); + + #ifdef __AVR_TRM01__ + if (info.port == eATmegaPort::PORT_A) { + _PORTA._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_B) { + _PORTB._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_C) { + _PORTC._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_D) { + _PORTD._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_E) { + _PORTE._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_F) { + _PORTF._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_G) { + _PORTG._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_H) { + _PORTH._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_J) { + _PORTJ._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_K) { + _PORTK._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_L) { + _PORTL._PORT.setValue(info.pinidx, state == HIGH); + } + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + if (info.port == eATmegaPort::PORT_A) { + _PORTA._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_B) { + _PORTB._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_C) { + _PORTC._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_D) { + _PORTD._PORT.setValue(info.pinidx, state == HIGH); + } + #elif defined(__AVR_TRM03__) + if (info.port == eATmegaPort::PORT_B) { + _PORTB._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_C) { + _PORTC._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_D) { + _PORTD._PORT.setValue(info.pinidx, state == HIGH); + } + #elif defined(__AVR_TRM04__) + if (info.port == eATmegaPort::PORT_A) { + _PORTA._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_B) { + _PORTB._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_C) { + _PORTC._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_D) { + _PORTD._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_E) { + _PORTE._PORT.setValue(info.pinidx, state == HIGH); + } + else if (info.port == eATmegaPort::PORT_F) { + _PORTF._PORT.setValue(info.pinidx, state == HIGH); + } + #endif +} + +inline int _ATmega_digitalRead(int pin) { + int value = LOW; + + if (pin < 0) return value; + + ATmegaPinInfo info = _ATmega_getPinInfo((unsigned int)pin); + + #ifdef __AVR_TRM01__ + if (info.port == eATmegaPort::PORT_A) { + value = _PORTA._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_B) { + value = _PORTB._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_C) { + value = _PORTC._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_D) { + value = _PORTD._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_E) { + value = _PORTE._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_F) { + value = _PORTF._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_G) { + value = _PORTG._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_H) { + value = _PORTH._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_J) { + value = _PORTJ._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_K) { + value = _PORTK._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_L) { + value = _PORTL._PIN.getValue(info.pinidx); + } + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + if (info.port == eATmegaPort::PORT_A) { + value = _PORTA._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_B) { + value = _PORTB._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_C) { + value = _PORTC._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_D) { + value = _PORTD._PIN.getValue(info.pinidx); + } + #elif defined(__AVR_TRM03__) + if (info.port == eATmegaPort::PORT_B) { + value = _PORTB._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_C) { + value = _PORTC._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_D) { + value = _PORTD._PIN.getValue(info.pinidx); + } + #elif defined(__AVR_TRM04__) + if (info.port == eATmegaPort::PORT_A) { + value = _PORTA._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_B) { + value = _PORTB._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_C) { + value = _PORTC._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_D) { + value = _PORTD._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_E) { + value = _PORTE._PIN.getValue(info.pinidx); + } + else if (info.port == eATmegaPort::PORT_F) { + value = _PORTF._PIN.getValue(info.pinidx); + } + #endif + + return value; +} + +#ifndef OUTPUT + #define OUTPUT 1 +#endif +#ifndef INPUT + #define INPUT 0 +#endif + +inline void _ATmega_pinMode(int pin, int mode) { + if (pin < 0) return; + + ATmegaPinInfo info = _ATmega_getPinInfo((unsigned int)pin); + + #ifdef __AVR_TRM01__ + if (info.port == eATmegaPort::PORT_A) { + _PORTA._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_B) { + _PORTB._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_C) { + _PORTC._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_D) { + _PORTD._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_E) { + _PORTE._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_F) { + _PORTF._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_G) { + _PORTG._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_H) { + _PORTH._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_J) { + _PORTJ._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_K) { + _PORTK._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_L) { + _PORTL._DDR.setValue(info.pinidx, mode == OUTPUT); + } + #elif defined(__AVR_TRM02__) || defined(__AVR_TRM05__) + if (info.port == eATmegaPort::PORT_A) { + _PORTA._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_B) { + _PORTB._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_C) { + _PORTC._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_D) { + _PORTD._DDR.setValue(info.pinidx, mode == OUTPUT); + } + #elif defined(__AVR_TRM03__) + if (info.port == eATmegaPort::PORT_B) { + _PORTB._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_C) { + _PORTC._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_D) { + _PORTD._DDR.setValue(info.pinidx, mode == OUTPUT); + } + #elif defined(__AVR_TRM04__) + if (info.port == eATmegaPort::PORT_A) { + _PORTA._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_B) { + _PORTB._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_C) { + _PORTC._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_D) { + _PORTD._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_E) { + _PORTE._DDR.setValue(info.pinidx, mode == OUTPUT); + } + else if (info.port == eATmegaPort::PORT_F) { + _PORTF._DDR.setValue(info.pinidx, mode == OUTPUT); + } + #endif +} + +#if defined(__AVR_TRM01__) || defined(__AVR_TRM02__) + struct _ATmega_efuse { + uint8_t _BODLEVEL : 3; + uint8_t reserved1 : 5; + }; + + struct _ATmega_hfuse { + uint8_t _BOOTRST : 1; + uint8_t _BOOTSZ : 2; + uint8_t _EESAVE : 1; + uint8_t _WDTON : 1; + uint8_t _SPIEN : 1; + uint8_t _JTAGEN : 1; + uint8_t _OCDEN : 1; + }; + + struct _ATmega_lfuse { + uint8_t _CKSEL : 4; + uint8_t _SUT0 : 1; + uint8_t _SUT1 : 1; + uint8_t _CKOUT : 1; + uint8_t _CKDIV8 : 1; + }; + + #ifndef AVR_DEFAULT_LFUSE_VALUE + #define AVR_DEFAULT_LFUSE_VALUE 0xFF + #endif + #ifndef AVR_DEFAULT_HFUSE_VALUE + #define AVR_DEFAULT_HFUSE_VALUE 0x99 + #endif + #ifndef AVR_DEFAULT_LFUSE_VALUE + #define AVR_DEFAULT_LFUSE_VALUE 0x62 + #endif + +#elif defined(__AVR_TRM03__) + #if defined(__AVR_ATmega48A__) || defined(__AVR_ATmega48PA__) + struct _ATmega_efuse { + uint8_t _SELFPRGEN : 1; + uint8_t reserved1 : 7; + }; + + #ifndef AVR_DEFAULT_EFUSE_VALUE + #define AVR_DEFAULT_EFUSE_VALUE 0xFF + #endif + + #elif defined(__AVR_ATmega88A__) || defined(__AVR_ATmega88PA__) || defined(__AVR_ATmega168A__) || defined(__AVR_ATmega168PA__) + struct _ATmega_efuse { + uint8_t _BOOTRST : 1; + uint8_t _BOOTSZ : 2; + uint8_t reserved1 : 5; + }; + + #ifndef AVR_DEFAULT_EFUSE_VALUE + #define AVR_DEFAULT_EFUSE_VALUE 0xF9 + #endif + + #else // defined(__AVR_ATmega328__) || defined(__AVR_ATmega328P__) + struct _ATmega_efuse { + uint8_t _BODLEVEL : 3; + uint8_t reserved1 : 5; + }; + + #ifndef AVR_DEFAULT_EFUSE_VALUE + #define AVR_DEFAULT_EFUSE_VALUE 0xFF + #endif + + #endif + + #if defined(__AVR_ATmega48A__) || defined(__AVR_ATmega48PA__) || defined(__AVR_ATmega88A__) || defined(__AVR_ATmega88PA__) || defined(__AVR_ATmega168A__) || defined(__AVR_ATmega168PA__) + struct _ATmega_hfuse { + uint8_t _BODLEVEL : 3; + uint8_t _EESAVE : 1; + uint8_t _WDTON : 1; + uint8_t _SPIEN : 1; + uint8_t _DWEN : 1; + uint8_t _RSTDISBL : 1; + }; + + #ifndef AVR_DEFAULT_HFUSE_VALUE + #define AVR_DEFAULT_HFUSE_VALUE 0xCF + #endif + + #else // defined(__AVR_ATmega328__) || defined(__AVR_ATmega328P__) + struct _ATmega_hfuse { + uint8_t _BOOTRST : 1; + uint8_t _BOOTSZ : 2; + uint8_t _EESAVE : 1; + uint8_t _WDTON : 1; + uint8_t _SPIEN : 1; + uint8_t _DWEN : 1; + uint8_t _RSTDISBL : 1; + }; + + #ifndef AVR_DEFAULT_HFUSE_VALUE + #define AVR_DEFAULT_HFUSE_VALUE 0xC9 + #endif + + #endif + + struct _ATmega_lfuse { + uint8_t _CKSEL : 4; + uint8_t _SUT0 : 1; + uint8_t _SUT1 : 1; + uint8_t _CKOUT : 1; + uint8_t _CKDIV8 : 1; + }; + + #ifndef AVR_DEFAULT_LFUSE_VALUE + #define AVR_DEFAULT_LFUSE_VALUE 0xC9 + #endif + +#elif defined(__AVR_TRM04__) + struct _ATmega_efuse { + uint8_t _BODLEVEL : 3; + uint8_t _HWBE : 1; + uint8_t reserved1 : 4; + }; + + struct _ATmega_hfuse { + uint8_t _BOOTRST : 1; + uint8_t _BOOTSZ : 2; + uint8_t _EESAVE : 1; + uint8_t _WDTON : 1; + uint8_t _SPIEN : 1; + uint8_t _JTAGEN : 1; + uint8_t _OCDEN : 1; + }; + + struct _ATmega_lfuse { + uint8_t _CKSEL : 4; + uint8_t _SUT0 : 1; + uint8_t _SUT1 : 1; + uint8_t _CKOUT : 1; + uint8_t _CKDIV8 : 1; + }; + + // Default values if not already defined. + #ifndef AVR_DEFAULT_EFUSE_VALUE + #define AVR_DEFAULT_EFUSE_VALUE 0xF3 + #endif + #ifndef AVR_DEFAULT_HFUSE_VALUE + #define AVR_DEFAULT_HFUSE_VALUE 0x99 + #endif + #ifndef AVR_DEFAULT_LFUSE_VALUE + #define AVR_DEFAULT_LFUSE_VALUE 0x62 + #endif + +#elif defined(__AVR_TRM05__) + struct _ATmega_efuse { + uint8_t _BODLEVEL0 : 1; + uint8_t _BODLEVEL1 : 1; + uint8_t _BODLEVEL2 : 1; + uint8_t reserved1 : 5; + }; + + struct _ATmega_hfuse { + uint8_t _BOOTRST : 1; + uint8_t _BOOTSZ : 2; + uint8_t _EESAVE : 1; + uint8_t _WDTON : 1; + uint8_t _SPIEN : 1; + uint8_t _JTAGEN : 1; + uint8_t _OCDEN : 1; + }; + + struct _ATmega_lfuse { + uint8_t _CKSEL : 4; + uint8_t _SUT0 : 1; + uint8_t _SUT1 : 1; + uint8_t _CKOUT : 1; + uint8_t _CKDIV8 : 1; + }; + + #ifndef AVR_DEFAULT_EFUSE_VALUE + #define AVR_DEFAULT_EFUSE_VALUE 0xFF + #endif + #ifndef AVR_DEFAULT_HFUSE_VALUE + #define AVR_DEFAULT_HFUSE_VALUE 0x88 + #endif + #ifndef AVR_DEFAULT_LFUSE_VALUE + #define AVR_DEFAULT_LFUSE_VALUE 0x62 + #endif +#endif + +struct ATmega_efuse : public _ATmega_efuse { + inline ATmega_efuse(uint8_t val = 0) { *(uint8_t*)this = val; } + inline ATmega_efuse(const ATmega_efuse&) = default; +}; +struct ATmega_hfuse : public _ATmega_hfuse { + inline ATmega_hfuse(uint8_t val = 0) { *(uint8_t*)this = val; } + inline ATmega_hfuse(const ATmega_hfuse&) = default; +}; +struct ATmega_lfuse : public _ATmega_lfuse { + inline ATmega_lfuse(uint8_t val = 0) { *(uint8_t*)this = val; } + inline ATmega_lfuse(const ATmega_lfuse&) = default; +}; diff --git a/Marlin/src/HAL/LPC1768/HAL.cpp b/Marlin/src/HAL/LPC1768/HAL.cpp index 746f43a2a472..6fada12486a9 100644 --- a/Marlin/src/HAL/LPC1768/HAL.cpp +++ b/Marlin/src/HAL/LPC1768/HAL.cpp @@ -23,7 +23,17 @@ #include "../../inc/MarlinConfig.h" #include "../shared/Delay.h" -#include "../../../gcode/parser.h" +#include "../../core/millis_t.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include DefaultSerial1 USBSerial(false, UsbSerial); @@ -49,6 +59,132 @@ int freeMemory() { return result; } +extern "C" { + #include + int isLPC1769(); + void disk_timerproc(); +} + +extern uint32_t MSC_SD_Init(uint8_t pdrv); + +void SysTick_Callback() { disk_timerproc(); } + +TERN_(POSTMORTEM_DEBUGGING, extern void install_min_serial()); + +void MarlinHAL::init() { + + // Init LEDs + #if PIN_EXISTS(LED) + SET_DIR_OUTPUT(LED_PIN); + WRITE_PIN_CLR(LED_PIN); + #if PIN_EXISTS(LED2) + SET_DIR_OUTPUT(LED2_PIN); + WRITE_PIN_CLR(LED2_PIN); + #if PIN_EXISTS(LED3) + SET_DIR_OUTPUT(LED3_PIN); + WRITE_PIN_CLR(LED3_PIN); + #if PIN_EXISTS(LED4) + SET_DIR_OUTPUT(LED4_PIN); + WRITE_PIN_CLR(LED4_PIN); + #endif + #endif + #endif + + // Flash status LED 3 times to indicate Marlin has started booting + for (uint8_t i = 0; i < 6; ++i) { + TOGGLE(LED_PIN); + delay(100); + } + #endif + + // Init Servo Pins + #define INIT_SERVO(N) OUT_WRITE(SERVO##N##_PIN, LOW) + #if HAS_SERVO_0 + INIT_SERVO(0); + #endif + #if HAS_SERVO_1 + INIT_SERVO(1); + #endif + #if HAS_SERVO_2 + INIT_SERVO(2); + #endif + #if HAS_SERVO_3 + INIT_SERVO(3); + #endif + + //debug_frmwrk_init(); + //_DBG("\n\nDebug running\n"); + // Initialize the SD card chip select pins as soon as possible + #if PIN_EXISTS(SD_SS) + OUT_WRITE(SD_SS_PIN, HIGH); + #endif + + #if PIN_EXISTS(ONBOARD_SD_CS) && ONBOARD_SD_CS_PIN != SD_SS_PIN + OUT_WRITE(ONBOARD_SD_CS_PIN, HIGH); + #endif + + #ifdef LPC1768_ENABLE_CLKOUT_12M + /** + * CLKOUTCFG register + * bit 8 (CLKOUT_EN) = enables CLKOUT signal. Disabled for now to prevent glitch when enabling GPIO. + * bits 7:4 (CLKOUTDIV) = set to 0 for divider setting of /1 + * bits 3:0 (CLKOUTSEL) = set to 1 to select main crystal oscillator as CLKOUT source + */ + LPC_SC->CLKOUTCFG = (0<<8)|(0<<4)|(1<<0); + // set P1.27 pin to function 01 (CLKOUT) + PINSEL_CFG_Type PinCfg; + PinCfg.Portnum = 1; + PinCfg.Pinnum = 27; + PinCfg.Funcnum = 1; // function 01 (CLKOUT) + PinCfg.OpenDrain = 0; // not open drain + PinCfg.Pinmode = 2; // no pull-up/pull-down + PINSEL_ConfigPin(&PinCfg); + // now set CLKOUT_EN bit + SBI(LPC_SC->CLKOUTCFG, 8); + #endif + + USB_Init(); // USB Initialization + USB_Connect(false); // USB clear connection + delay(1000); // Give OS time to notice + USB_Connect(true); + + TERN_(HAS_SD_HOST_DRIVE, MSC_SD_Init(0)); // Enable USB SD card access + + const millis_t usb_timeout = millis() + 2000; + while (!USB_Configuration && PENDING(millis(), usb_timeout)) { + delay(50); + idletask(); + #if PIN_EXISTS(LED) + TOGGLE(LED_PIN); // Flash quickly during USB initialization + #endif + } + + HAL_timer_init(); + + TERN_(POSTMORTEM_DEBUGGING, install_min_serial()); // Install the min serial handler +} + +#include "../../sd/cardreader.h" + +// HAL idle task +void MarlinHAL::idletask() { + #if HAS_SHARED_MEDIA + // If Marlin is using the SD card we need to lock it to prevent access from + // a PC via USB. + // Other HALs use IS_SD_PRINTING() and IS_SD_FILE_OPEN() to check for access but + // this will not reliably detect delete operations. To be safe we will lock + // the disk if Marlin has it mounted. Unfortunately there is currently no way + // to unmount the disk from the LCD menu. + // if (IS_SD_PRINTING() || IS_SD_FILE_OPEN()) + if (card.isMounted()) + MSC_Aquire_Lock(); + else + MSC_Release_Lock(); + #endif + // Perform USB stack housekeeping + MSC_RunDeferredCommands(); +} + void MarlinHAL::reboot() { NVIC_SystemReset(); } uint8_t MarlinHAL::get_reset_source() { @@ -113,6 +249,8 @@ void flashFirmware(const int16_t) { #endif // USE_WATCHDOG +#include "../../../gcode/parser.h" + // For M42/M43, scan command line for pin code // return index into pin map array if found and the pin is valid. // return dval if not found or not a valid pin. diff --git a/Marlin/src/HAL/LPC1768/main.cpp b/Marlin/src/HAL/LPC1768/main.cpp deleted file mode 100644 index 15518c3d8654..000000000000 --- a/Marlin/src/HAL/LPC1768/main.cpp +++ /dev/null @@ -1,163 +0,0 @@ -/** - * Marlin 3D Printer Firmware - * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] - * - * Based on Sprinter and grbl. - * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ -#ifdef TARGET_LPC1768 - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "../../inc/MarlinConfig.h" -#include "../../core/millis_t.h" - -#include "../../sd/cardreader.h" - -extern uint32_t MSC_SD_Init(uint8_t pdrv); - -extern "C" { - #include - extern "C" int isLPC1769(); - extern "C" void disk_timerproc(); -} - -void SysTick_Callback() { disk_timerproc(); } - -TERN_(POSTMORTEM_DEBUGGING, extern void install_min_serial()); - -void MarlinHAL::init() { - - // Init LEDs - #if PIN_EXISTS(LED) - SET_DIR_OUTPUT(LED_PIN); - WRITE_PIN_CLR(LED_PIN); - #if PIN_EXISTS(LED2) - SET_DIR_OUTPUT(LED2_PIN); - WRITE_PIN_CLR(LED2_PIN); - #if PIN_EXISTS(LED3) - SET_DIR_OUTPUT(LED3_PIN); - WRITE_PIN_CLR(LED3_PIN); - #if PIN_EXISTS(LED4) - SET_DIR_OUTPUT(LED4_PIN); - WRITE_PIN_CLR(LED4_PIN); - #endif - #endif - #endif - - // Flash status LED 3 times to indicate Marlin has started booting - for (uint8_t i = 0; i < 6; ++i) { - TOGGLE(LED_PIN); - delay(100); - } - #endif - - // Init Servo Pins - #define INIT_SERVO(N) OUT_WRITE(SERVO##N##_PIN, LOW) - #if HAS_SERVO_0 - INIT_SERVO(0); - #endif - #if HAS_SERVO_1 - INIT_SERVO(1); - #endif - #if HAS_SERVO_2 - INIT_SERVO(2); - #endif - #if HAS_SERVO_3 - INIT_SERVO(3); - #endif - - //debug_frmwrk_init(); - //_DBG("\n\nDebug running\n"); - // Initialize the SD card chip select pins as soon as possible - #if PIN_EXISTS(SD_SS) - OUT_WRITE(SD_SS_PIN, HIGH); - #endif - - #if PIN_EXISTS(ONBOARD_SD_CS) && ONBOARD_SD_CS_PIN != SD_SS_PIN - OUT_WRITE(ONBOARD_SD_CS_PIN, HIGH); - #endif - - #ifdef LPC1768_ENABLE_CLKOUT_12M - /** - * CLKOUTCFG register - * bit 8 (CLKOUT_EN) = enables CLKOUT signal. Disabled for now to prevent glitch when enabling GPIO. - * bits 7:4 (CLKOUTDIV) = set to 0 for divider setting of /1 - * bits 3:0 (CLKOUTSEL) = set to 1 to select main crystal oscillator as CLKOUT source - */ - LPC_SC->CLKOUTCFG = (0<<8)|(0<<4)|(1<<0); - // set P1.27 pin to function 01 (CLKOUT) - PINSEL_CFG_Type PinCfg; - PinCfg.Portnum = 1; - PinCfg.Pinnum = 27; - PinCfg.Funcnum = 1; // function 01 (CLKOUT) - PinCfg.OpenDrain = 0; // not open drain - PinCfg.Pinmode = 2; // no pull-up/pull-down - PINSEL_ConfigPin(&PinCfg); - // now set CLKOUT_EN bit - SBI(LPC_SC->CLKOUTCFG, 8); - #endif - - USB_Init(); // USB Initialization - USB_Connect(false); // USB clear connection - delay(1000); // Give OS time to notice - USB_Connect(true); - - TERN_(HAS_SD_HOST_DRIVE, MSC_SD_Init(0)); // Enable USB SD card access - - const millis_t usb_timeout = millis() + 2000; - while (!USB_Configuration && PENDING(millis(), usb_timeout)) { - delay(50); - idletask(); - #if PIN_EXISTS(LED) - TOGGLE(LED_PIN); // Flash quickly during USB initialization - #endif - } - - HAL_timer_init(); - - TERN_(POSTMORTEM_DEBUGGING, install_min_serial()); // Install the min serial handler -} - -// HAL idle task -void MarlinHAL::idletask() { - #if HAS_SHARED_MEDIA - // If Marlin is using the SD card we need to lock it to prevent access from - // a PC via USB. - // Other HALs use IS_SD_PRINTING() and IS_SD_FILE_OPEN() to check for access but - // this will not reliably detect delete operations. To be safe we will lock - // the disk if Marlin has it mounted. Unfortunately there is currently no way - // to unmount the disk from the LCD menu. - // if (IS_SD_PRINTING() || IS_SD_FILE_OPEN()) - if (card.isMounted()) - MSC_Aquire_Lock(); - else - MSC_Release_Lock(); - #endif - // Perform USB stack housekeeping - MSC_RunDeferredCommands(); -} - -#endif // TARGET_LPC1768 From 87231b625f3cf36b57352d3d89cfb05cfde0e777 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Fri, 4 Aug 2023 06:06:04 +0000 Subject: [PATCH 400/427] [cron] Bump distribution date (2023-08-04) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 8a860b269129..f93128f2005e 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-08-03" +//#define STRING_DISTRIBUTION_DATE "2023-08-04" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index bd004bd7712d..a1df5fe90a48 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-08-03" + #define STRING_DISTRIBUTION_DATE "2023-08-04" #endif /** From 4e31fa66e2f402ac574ec4afa52447824444d90d Mon Sep 17 00:00:00 2001 From: Dmitry Pogrebnyak Date: Fri, 4 Aug 2023 22:59:17 +0300 Subject: [PATCH 401/427] =?UTF-8?q?=E2=9C=A8=20STATUS=5FHEAT=5FPOWER=20(#2?= =?UTF-8?q?5268)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 3 + Marlin/src/inc/SanityCheck.h | 4 ++ Marlin/src/lcd/dogm/status_screen_DOGM.cpp | 74 +++++++++++++--------- 3 files changed, 51 insertions(+), 30 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 6c29900cdf47..2577c27557e1 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -1967,7 +1967,10 @@ //#define STATUS_ALT_BED_BITMAP // Use the alternative bed bitmap //#define STATUS_ALT_FAN_BITMAP // Use the alternative fan bitmap //#define STATUS_FAN_FRAMES 3 // :[0,1,2,3,4] Number of fan animation frames + + // Only one STATUS_HEAT_* option can be enabled //#define STATUS_HEAT_PERCENT // Show heating in a progress bar + //#define STATUS_HEAT_POWER // Show heater output power as a vertical bar // Frivolous Game Options //#define MARLIN_BRICKOUT diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 5933c8c396a7..ee23fc427078 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -404,6 +404,10 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L #error "CUSTOM_STATUS_SCREEN_IMAGE requires a 128x64 DOGM B/W Graphical LCD." #endif +#if ALL(STATUS_HEAT_PERCENT, STATUS_HEAT_POWER) + #error "Only enable STATUS_HEAT_PERCENT or STATUS_HEAT_POWER, but not both." +#endif + /** * LCD Lightweight Screen Style */ diff --git a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp index 2067a8428da6..d38d28c8cd3b 100644 --- a/Marlin/src/lcd/dogm/status_screen_DOGM.cpp +++ b/Marlin/src/lcd/dogm/status_screen_DOGM.cpp @@ -247,14 +247,13 @@ FORCE_INLINE void _draw_centered_temp(const celsius_t temp, const uint8_t tx, co const celsius_t temp = thermalManager.wholeDegHotend(heater_id), target = thermalManager.degTargetHotend(heater_id); - #if DISABLED(STATUS_HOTEND_ANIM) - #define STATIC_HOTEND true - #define HOTEND_DOT isHeat - #else - #define STATIC_HOTEND false - #define HOTEND_DOT false + #if ENABLED(STATUS_HEAT_POWER) + const uint16_t power = thermalManager.getHeaterPower(heater_id); #endif + #define STATIC_HOTEND DISABLED(STATUS_HOTEND_ANIM) + #define HOTEND_DOT TERN(STATUS_HOTEND_ANIM, false, isHeat) + #if ENABLED(STATUS_HOTEND_NUMBERLESS) #define OFF_BMP(N) TERN(STATUS_HOTEND_INVERTED, status_hotend_b_bmp, status_hotend_a_bmp) #define ON_BMP(N) TERN(STATUS_HOTEND_INVERTED, status_hotend_a_bmp, status_hotend_b_bmp) @@ -285,23 +284,34 @@ FORCE_INLINE void _draw_centered_temp(const celsius_t temp, const uint8_t tx, co #define BAR_TALL (STATUS_HEATERS_HEIGHT - 2) - const float prop = target - 20, - perc = prop > 0 && temp >= 20 ? (temp - 20) / prop : 0; - uint8_t tall = uint8_t(perc * BAR_TALL + 0.5f); - NOMORE(tall, BAR_TALL); - // Draw hotend bitmap, either whole or split by the heating percent const uint8_t hx = STATUS_HOTEND_X(heater_id), bw = STATUS_HOTEND_BYTEWIDTH(heater_id); - #if ENABLED(STATUS_HEAT_PERCENT) - if (isHeat && tall <= BAR_TALL) { + #if ANY(STATUS_HEAT_PERCENT, STATUS_HEAT_POWER) + uint8_t tall = 0; + #if ENABLED(STATUS_HEAT_POWER) + // Rounded int. At least 1 pixel tall on minimal PWM. + tall = power ? (power >= 127 ? BAR_TALL : (uint16_t((uint8_t(power) * BAR_TALL) + 127U) / 128U)) : 0; + #elif ENABLED(STATUS_HEAT_PERCENT) + const float prop = target - 20, + perc = prop > 0 && temp >= 20 ? (temp - 20) / prop : 0; + tall = uint8_t(perc * BAR_TALL + 0.5f); + #endif + + NOMORE(tall, BAR_TALL); + + const bool draw_partial = isHeat && tall < BAR_TALL; + if (draw_partial) { const uint8_t ph = STATUS_HEATERS_HEIGHT - 1 - tall; u8g.drawBitmapP(hx, STATUS_HEATERS_Y, bw, ph, HOTEND_BITMAP(TERN(HAS_MMU, active_extruder, heater_id), false)); u8g.drawBitmapP(hx, STATUS_HEATERS_Y + ph, bw, tall + 1, HOTEND_BITMAP(TERN(HAS_MMU, active_extruder, heater_id), true) + ph * bw); } - else + #else + constexpr bool draw_partial = false; #endif - u8g.drawBitmapP(hx, STATUS_HEATERS_Y, bw, STATUS_HEATERS_HEIGHT, HOTEND_BITMAP(TERN(HAS_MMU, active_extruder, heater_id), isHeat)); + + if (!draw_partial) + u8g.drawBitmapP(hx, STATUS_HEATERS_Y, bw, STATUS_HEATERS_HEIGHT, HOTEND_BITMAP(TERN(HAS_MMU, active_extruder, heater_id), isHeat)); } // PAGE_CONTAINS @@ -342,29 +352,31 @@ FORCE_INLINE void _draw_centered_temp(const celsius_t temp, const uint8_t tx, co const celsius_t temp = thermalManager.wholeDegBed(), target = thermalManager.degTargetBed(); - #if ENABLED(STATUS_HEAT_PERCENT) || DISABLED(STATUS_BED_ANIM) + #if ANY(STATUS_HEAT_PERCENT, STATUS_HEAT_POWER) || DISABLED(STATUS_BED_ANIM) const bool isHeat = BED_ALT(); #endif - #if DISABLED(STATUS_BED_ANIM) - #define STATIC_BED true - #define BED_DOT isHeat - #else - #define STATIC_BED false - #define BED_DOT false - #endif + #define STATIC_BED DISABLED(STATUS_BED_ANIM) + #define BED_DOT TERN(STATUS_BED_ANIM, false, isHeat) if (PAGE_CONTAINS(STATUS_HEATERS_Y, STATUS_HEATERS_BOT)) { #define BAR_TALL (STATUS_HEATERS_HEIGHT - 2) - const float prop = target - 20, - perc = prop > 0 && temp >= 20 ? (temp - 20) / prop : 0; - uint8_t tall = uint8_t(perc * BAR_TALL + 0.5f); - NOMORE(tall, BAR_TALL); // Draw a heating progress bar, if specified - #if ENABLED(STATUS_HEAT_PERCENT) + #if ANY(STATUS_HEAT_PERCENT, STATUS_HEAT_POWER) + uint8_t tall = 0; + #if ENABLED(STATUS_HEAT_POWER) + const uint16_t power = thermalManager.getHeaterPower(H_BED); + tall = power ? (power >= 127) ? BAR_TALL : uint16_t((uint8_t(power) * BAR_TALL) + 127U) / 128U : 0; + #elif ENABLED(STATUS_HEAT_PERCENT) + const float prop = target - 20, + perc = prop > 0 && temp >= 20 ? (temp - 20) / prop : 0; + tall = uint8_t(perc * BAR_TALL + 0.5f); + #endif + + NOMORE(tall, BAR_TALL); if (isHeat) { const uint8_t bx = STATUS_BED_X + STATUS_BED_WIDTH; @@ -538,9 +550,11 @@ void MarlinUI::draw_status_screen() { #if ANIM_HBCC uint8_t new_bits = 0; #if ANIM_HOTEND - HOTEND_LOOP() if (thermalManager.isHeatingHotend(e)) SBI(new_bits, DRAWBIT_HOTEND + e); + HOTEND_LOOP() if (thermalManager.TERN(STATUS_HEAT_POWER, getHeaterPower(heater_id_t(e)), isHeatingHotend(e))) SBI(new_bits, DRAWBIT_HOTEND + e); + #endif + #if ANIM_BED + if (TERN(STATUS_HEAT_POWER, (thermalManager.degTargetBed() || thermalManager.getHeaterPower(H_BED)), thermalManager.isHeatingBed())) SBI(new_bits, DRAWBIT_BED); #endif - if (TERN0(ANIM_BED, thermalManager.isHeatingBed())) SBI(new_bits, DRAWBIT_BED); #if DO_DRAW_CHAMBER && HAS_HEATED_CHAMBER if (thermalManager.isHeatingChamber()) SBI(new_bits, DRAWBIT_CHAMBER); #endif From 27e68a61fa0b1ec46084603880679810c53b3da3 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 4 Aug 2023 18:29:52 -0500 Subject: [PATCH 402/427] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20Upd?= =?UTF-8?q?ate=20some=20SDSUPPORT?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/tft/ui_color_ui.cpp | 2 +- Marlin/src/pins/sanguino/pins_MELZI_CREALITY_E2.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/src/lcd/tft/ui_color_ui.cpp b/Marlin/src/lcd/tft/ui_color_ui.cpp index a14f268d86c8..85d310ca42ea 100644 --- a/Marlin/src/lcd/tft/ui_color_ui.cpp +++ b/Marlin/src/lcd/tft/ui_color_ui.cpp @@ -319,7 +319,7 @@ void MarlinUI::draw_status_screen() { #if ENABLED(TOUCH_SCREEN) add_control(MENU_ICON_X, MENU_ICON_Y, menu_main, imgSettings); - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA const bool cm = card.isMounted(), pa = printingIsActive(); if (cm && pa) add_control(SDCARD_ICON_X, SDCARD_ICON_Y, STOP, imgCancel, true, COLOR_CONTROL_CANCEL); diff --git a/Marlin/src/pins/sanguino/pins_MELZI_CREALITY_E2.h b/Marlin/src/pins/sanguino/pins_MELZI_CREALITY_E2.h index 4ded3294b950..b36c7140c45b 100644 --- a/Marlin/src/pins/sanguino/pins_MELZI_CREALITY_E2.h +++ b/Marlin/src/pins/sanguino/pins_MELZI_CREALITY_E2.h @@ -58,7 +58,7 @@ // #if ANY(CR10_STOCKDISPLAY, ENDER2_STOCKDISPLAY) #if ENABLED(CR10_STOCKDISPLAY) - #if ENABLED(SDSUPPORT) + #if HAS_MEDIA #error "Cannot have SDSUPPORT with CR10_STOCKDISPLAY on this motherboard." // Hardware SDCARD SCK and MOSI pins are reallocated. #endif #define LCD_PINS_RS EXP1_07_PIN // ST9720 CS From 06d46a0ef96a766b114db5902beccb86829ba57c Mon Sep 17 00:00:00 2001 From: "Alexey D. Filimonov" Date: Sat, 5 Aug 2023 03:07:56 +0300 Subject: [PATCH 403/427] =?UTF-8?q?=E2=9C=A8=20AUTO=5FPOWER=5FSPINDLE=5FLA?= =?UTF-8?q?SER=20(#25739)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration.h | 11 ++++++----- Marlin/src/feature/power.cpp | 8 ++++++++ Marlin/src/inc/Conditionals_post.h | 3 +++ 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 4dbc2a8c11ef..22b060dcb22c 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -412,11 +412,12 @@ //#define AUTO_POWER_CONTROL // Enable automatic control of the PS_ON pin #if ENABLED(AUTO_POWER_CONTROL) - #define AUTO_POWER_FANS // Turn on PSU if fans need power - #define AUTO_POWER_E_FANS - #define AUTO_POWER_CONTROLLERFAN - #define AUTO_POWER_CHAMBER_FAN - #define AUTO_POWER_COOLER_FAN + #define AUTO_POWER_FANS // Turn on PSU for fans + #define AUTO_POWER_E_FANS // Turn on PSU for E Fans + #define AUTO_POWER_CONTROLLERFAN // Turn on PSU for Controller Fan + #define AUTO_POWER_CHAMBER_FAN // Turn on PSU for Chamber Fan + #define AUTO_POWER_COOLER_FAN // Turn on PSU for Cooler Fan + #define AUTO_POWER_SPINDLE_LASER // Turn on PSU for Spindle/Laser #define POWER_TIMEOUT 30 // (s) Turn off power if the machine is idle for this duration //#define POWER_OFF_DELAY 60 // (s) Delay of poweroff after M81 command. Useful to let fans run for extra time. #endif diff --git a/Marlin/src/feature/power.cpp b/Marlin/src/feature/power.cpp index d0f8a66fec36..e908c8292fd6 100644 --- a/Marlin/src/feature/power.cpp +++ b/Marlin/src/feature/power.cpp @@ -53,6 +53,10 @@ bool Power::psu_on; #include "controllerfan.h" #endif + #if ANY(LASER_FEATURE, SPINDLE_FEATURE) + #include "spindle_laser.h" + #endif + millis_t Power::lastPowerOn; #endif @@ -196,6 +200,10 @@ void Power::power_off() { if (controllerFan.state()) return true; #endif + #if ANY(LASER_FEATURE, SPINDLE_FEATURE) + if (TERN0(AUTO_POWER_SPINDLE_LASER, cutter.enabled())) return true; + #endif + if (TERN0(AUTO_POWER_CHAMBER_FAN, thermalManager.chamberfan_speed)) return true; diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 13f20114e509..8f3a2eee27b9 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -2623,6 +2623,9 @@ #if !HAS_AUTO_COOLER_FAN || AUTO_COOLER_IS_E #undef AUTO_POWER_COOLER_FAN #endif +#if !HAS_CUTTER + #undef AUTO_POWER_SPINDLE_LASER +#endif /** * Controller Fan Settings From c088081c0009d3eb2f218d39266cc08e902d03cf Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sat, 5 Aug 2023 00:54:22 +0000 Subject: [PATCH 404/427] [cron] Bump distribution date (2023-08-05) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index f93128f2005e..e727c1601b7c 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-08-04" +//#define STRING_DISTRIBUTION_DATE "2023-08-05" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index a1df5fe90a48..710c0cdcd7f9 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-08-04" + #define STRING_DISTRIBUTION_DATE "2023-08-05" #endif /** From ad112b4d3d47ff841334b16dcf497917fb8c1ec6 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Fri, 4 Aug 2023 23:49:38 -0500 Subject: [PATCH 405/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20case=20TRRunaway?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/module/temperature.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index 1f9928f88e4e..c7e35c575457 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -3220,11 +3220,13 @@ void Temperature::init() { case TRRunaway: TERN_(HAS_DWIN_E3V2_BASIC, dwinPopupTemperature(0)); _TEMP_ERROR(heater_id, FPSTR(str_t_thermal_runaway), MSG_THERMAL_RUNAWAY, current); + break; #if ENABLED(THERMAL_PROTECTION_VARIANCE_MONITOR) case TRMalfunction: TERN_(HAS_DWIN_E3V2_BASIC, dwinPopupTemperature(0)); _TEMP_ERROR(heater_id, FPSTR(str_t_temp_malfunction), MSG_TEMP_MALFUNCTION, current); + break; #endif } } From 863198a73f8a07663a6a5f7c088631aa72b5fb45 Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Sat, 5 Aug 2023 06:56:40 +0200 Subject: [PATCH 406/427] =?UTF-8?q?=E2=9C=A8=20VOLUMETRIC=5FEXTRUDER=5FLIM?= =?UTF-8?q?IT=5FMAX=20(#25884)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 3 ++- Marlin/src/gcode/config/M200-M205.cpp | 4 ++-- Marlin/src/lcd/menu/menu_advanced.cpp | 4 ++-- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 2577c27557e1..8e66d7555dbf 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -3805,7 +3805,8 @@ * Use 'M200 [T] L' to override and 'M502' to reset. * A non-zero value activates Volume-based Extrusion Limiting. */ - #define DEFAULT_VOLUMETRIC_EXTRUDER_LIMIT 0.00 // (mm^3/sec) + #define DEFAULT_VOLUMETRIC_EXTRUDER_LIMIT 0.00 // (mm^3/sec) + #define VOLUMETRIC_EXTRUDER_LIMIT_MAX 20 // (mm^3/sec) #endif #endif diff --git a/Marlin/src/gcode/config/M200-M205.cpp b/Marlin/src/gcode/config/M200-M205.cpp index e5e1edf3261f..06fbef631e75 100644 --- a/Marlin/src/gcode/config/M200-M205.cpp +++ b/Marlin/src/gcode/config/M200-M205.cpp @@ -64,10 +64,10 @@ if (parser.seenval('L')) { // Set volumetric limit (in mm^3/sec) const float lval = parser.value_float(); - if (WITHIN(lval, 0, 20)) + if (WITHIN(lval, 0, VOLUMETRIC_EXTRUDER_LIMIT_MAX)) planner.set_volumetric_extruder_limit(target_extruder, lval); else - SERIAL_ECHOLNPGM("?L value out of range (0-20)."); + SERIAL_ECHOLNPGM("?L value out of range (0-" STRINGIFY(VOLUMETRIC_EXTRUDER_LIMIT_MAX) ")."); } #endif diff --git a/Marlin/src/lcd/menu/menu_advanced.cpp b/Marlin/src/lcd/menu/menu_advanced.cpp index 7cf4d34cb706..2bcd4e681b61 100644 --- a/Marlin/src/lcd/menu/menu_advanced.cpp +++ b/Marlin/src/lcd/menu/menu_advanced.cpp @@ -120,10 +120,10 @@ void menu_backlash(); EDIT_ITEM(bool, MSG_VOLUMETRIC_ENABLED, &parser.volumetric_enabled, planner.calculate_volumetric_multipliers); #if ENABLED(VOLUMETRIC_EXTRUDER_LIMIT) - EDIT_ITEM_FAST(float42_52, MSG_VOLUMETRIC_LIMIT, &planner.volumetric_extruder_limit[active_extruder], 0.0f, 20.0f, planner.calculate_volumetric_extruder_limits); + EDIT_ITEM_FAST(float42_52, MSG_VOLUMETRIC_LIMIT, &planner.volumetric_extruder_limit[active_extruder], 0.0f, float(VOLUMETRIC_EXTRUDER_LIMIT_MAX), planner.calculate_volumetric_extruder_limits); #if HAS_MULTI_EXTRUDER EXTRUDER_LOOP() - EDIT_ITEM_FAST_N(float42_52, e, MSG_VOLUMETRIC_LIMIT_E, &planner.volumetric_extruder_limit[e], 0.0f, 20.00f, planner.calculate_volumetric_extruder_limits); + EDIT_ITEM_FAST_N(float42_52, e, MSG_VOLUMETRIC_LIMIT_E, &planner.volumetric_extruder_limit[e], 0.0f, float(VOLUMETRIC_EXTRUDER_LIMIT_MAX), planner.calculate_volumetric_extruder_limits); #endif #endif From f66323ecfbe067667234df286e14d43d409bfaea Mon Sep 17 00:00:00 2001 From: Pagliarulo Onofrio <78806035+oponyx@users.noreply.github.com> Date: Sat, 5 Aug 2023 07:03:10 +0200 Subject: [PATCH 407/427] =?UTF-8?q?=E2=9C=A8=20Geeetech=20GT2560=20V4.1B?= =?UTF-8?q?=20board=20(#25888)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/boards.h | 1 + Marlin/src/pins/mega/pins_GT2560_V3.h | 18 +- Marlin/src/pins/mega/pins_GT2560_V41b.h | 248 ++++++++++++++++++++++++ Marlin/src/pins/pins.h | 2 + 4 files changed, 264 insertions(+), 5 deletions(-) create mode 100644 Marlin/src/pins/mega/pins_GT2560_V41b.h diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index 50a4ebc19461..5c4cabd08d3e 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -179,6 +179,7 @@ #define BOARD_GT2560_V4_A20 1328 // Geeetech GT2560 Rev B for A20(M/T/D) #define BOARD_PROTONEER_CNC_SHIELD_V3 1329 // Mega controller & Protoneer CNC Shield V3.00 #define BOARD_WEEDO_62A 1330 // WEEDO 62A board (TINA2, Monoprice Cadet, etc.) +#define BOARD_GT2560_V41B 1331 // Geeetech GT2560 V4.1B for A10(M/T/D) // // ATmega1281, ATmega2561 diff --git a/Marlin/src/pins/mega/pins_GT2560_V3.h b/Marlin/src/pins/mega/pins_GT2560_V3.h index 0c588e6516ee..b684214c6964 100644 --- a/Marlin/src/pins/mega/pins_GT2560_V3.h +++ b/Marlin/src/pins/mega/pins_GT2560_V3.h @@ -95,7 +95,7 @@ #endif // -// Power Recovery +// Power Loss Detection // #define POWER_LOSS_PIN 69 // Pin to detect power loss #define POWER_LOSS_STATE LOW @@ -168,10 +168,18 @@ #define BEEPER_PIN 18 #if ENABLED(YHCB2004) - #define YHCB2004_MOSI_PIN 21 - #define YHCB2004_MISO_PIN 36 - #define YHCB2004_SCK_PIN 5 - #define YHCB2004_SS_PIN SS + #ifndef YHCB2004_MOSI_PIN + #define YHCB2004_MOSI_PIN 21 + #endif + #ifndef YHCB2004_MISO_PIN + #define YHCB2004_MISO_PIN 36 + #endif + #ifndef YHCB2004_SCK_PIN + #define YHCB2004_SCK_PIN 5 + #endif + #ifndef YHCB2004_SS_PIN + #define YHCB2004_SS_PIN SS + #endif #elif HAS_WIRED_LCD #ifndef LCD_PINS_RS #define LCD_PINS_RS 20 diff --git a/Marlin/src/pins/mega/pins_GT2560_V41b.h b/Marlin/src/pins/mega/pins_GT2560_V41b.h new file mode 100644 index 000000000000..03a82ca2f224 --- /dev/null +++ b/Marlin/src/pins/mega/pins_GT2560_V41b.h @@ -0,0 +1,248 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +/** + * Geeetech GT2560 V4.1b Pins + * Schematic (4.1B): https://green-candy.osdn.jp/external/MarlinFW/board_schematics/Geeetech%20GT2560%20V4.x%20+%20A20/GT2560V4.1BSCHA20T.pdf + * Origin: https://www.geeetech.com/download.html?spm=a2g0s.imconversation.0.0.22d23e5fXlQBWv&download_id=45 + * ATmega2560 +*/ + +#define ALLOW_MEGA1280 +#include "env_validate.h" + +#if HOTENDS > 3 || E_STEPPERS > 3 + #error "GT2560 supports up to 3 hotends / E steppers." +#endif + +#define BOARD_INFO_NAME "GT2560 4.1b" + +/** Limit Switches Connectors + * All have external 10k pull-up resistors + * + * X-Y-Z AXIS MAX LIMIT SWITCHES CONNECTOR (H6) + * --------- + * | 1 4 7 | 5V 32 Z0_MAX GND + * | 2 5 8 | 5V 26 Y_MAX GND + * | 3 6 9 | 5V 22 X_MAX GND + * --------- + * H6 + * + * X AXIS Y AXIS Z1 AXIS Z0 AXIS + * --- --- --- --- + * | 1 | 5V | 1 | 5V | 1 | 5V | 1 | 5V + * | 2 | 24 X_MIN | 2 | 28 Y_MIN | 2 | PE7 Z1_MIN | 2 | 30 Z0_MIN + * | 3 | GND | 3 | GND | 3 | GND | 3 | GND + * --- --- --- --- + * J3 J4 J5 J6 + * +*/ + +//#define Z1_MIN PE7 // Number?? + +#ifndef X_STOP_PIN + #ifndef X_MIN_PIN + #define X_MIN_PIN 24 + #endif + #ifndef X_MAX_PIN + #define X_MAX_PIN 22 + #endif +#endif +#ifndef Y_STOP_PIN + #ifndef Y_MIN_PIN + #define Y_MIN_PIN 28 + #endif + #ifndef Y_MAX_PIN + #define Y_MAX_PIN 26 + #endif +#endif +#ifndef Z_STOP_PIN + #ifndef Z_MIN_PIN + #define Z_MIN_PIN 30 + #endif + #ifndef Z_MAX_PIN + #define Z_MAX_PIN 32 + #endif +#endif + +/** Filament Runout Sensors + * + * Filament 1 Filament 2 Filament 3 + * --- --- --- + * | 1 | 5V | 1 | 5V | 1 | 5V + * | 2 | 66 F_DET0 | 2 | 67 F_DET1 | 2 | 54 F_DET2 + * | 3 | GND | 3 | GND | 3 | GND + * --- --- --- + * J12 J13 J14 + */ + +#ifndef FIL_RUNOUT_PIN + #define FIL_RUNOUT_PIN 66 +#endif +#ifndef FIL_RUNOUT2_PIN + #define FIL_RUNOUT2_PIN 67 +#endif +#ifndef FIL_RUNOUT3_PIN + #define FIL_RUNOUT3_PIN 54 +#endif + +// +// Power Loss Detection +// +#define POWER_LOSS_PIN 69 // Pin to detect power loss +#define POWER_LOSS_STATE LOW + +// +// Steppers +// +#define X_STEP_PIN 37 +#define X_DIR_PIN 39 +#define X_ENABLE_PIN 35 + +#define Y_STEP_PIN 31 +#define Y_DIR_PIN 33 +#define Y_ENABLE_PIN 29 + +#define Z_STEP_PIN 25 +#define Z_DIR_PIN 23 +#define Z_ENABLE_PIN 27 + +#define E0_STEP_PIN 46 +#define E0_DIR_PIN 44 +#define E0_ENABLE_PIN 12 + +#define E1_STEP_PIN 49 +#define E1_DIR_PIN 47 +#define E1_ENABLE_PIN 48 + +#define E2_STEP_PIN 43 +#define E2_DIR_PIN 45 +#define E2_ENABLE_PIN 41 + +/** Printhead Connector + * ------ + * (PWM8_FAN0) FAN_E0 9 | 1 2 | 9 FAN_E0 24V PWM FROM (PWM8_FAN0) + * (T0) A11 | 3 4 | A11 (T0) E0 Temp + * GND | 5 6 | 30 Z_MIN1 same as (Z0_MIN) + * 5V | 7 8 | 11 (PB5) servo for BL_TOUCH/3D_TOUCH + * (PB4_HE2) HE2 19 | 9 10 | GND + * (PB4_HE2) HE2 19 |11 12 | 19 HE2 24V PWM out for E0 (PB4_HE2) + * V24 |13 14 | V24 + * V24 |15 16 | V24 + * ------ + * H3 + */ + +#define SERVO0_PIN 11 // BLTouch / 3DTouch + +// +// Z Probe PIN6 Header H3 (Print head connector) +// +#ifndef Z_MIN_PROBE_PIN + #define Z_MIN_PROBE_PIN Z_MIN_PIN +#endif + +// +// Temperature Sensors +// +#define TEMP_0_PIN 11 // Analog Input +#define TEMP_1_PIN 9 // Analog Input +#define TEMP_2_PIN 8 // Analog Input +#define TEMP_BED_PIN 10 // Analog Input + +// +// Heaters / Fans +// +#define HEATER_0_PIN 10 // PWM out to E0 +#define HEATER_1_PIN 3 +#define HEATER_2_PIN 2 +#define HEATER_BED_PIN 4 +#define FAN0_PIN 9 +#define FAN1_PIN 8 +#define FAN2_PIN 7 + +// +// Misc. Functions +// +#define SD_DETECT_PIN 38 +#define SDSS 53 +#define LED_PIN 13 // Use 6 (case light) for external LED. 13 is internal (yellow) LED. +#define PS_ON_PIN 12 + +#if NUM_RUNOUT_SENSORS < 3 + #define SUICIDE_PIN 54 // This pin must be enabled at boot to keep power flowing +#endif + +#ifndef CASE_LIGHT_PIN + #define CASE_LIGHT_PIN 6 // 21 +#endif + +/** LCD Connector + * ------ + * 5V | 1 2 | GND + * (LCM_D7) 36 | 3 4 | 5 (LCM_D6) + * (LCM_D5) 21 | 5 6 | GND + * (LCM_D4) 16 | 7 8 | 17 (LCM_EN) + * (EC_PRESS) 19 | 9 10 | GND + * (RESET) |11 12 | 19 (BEEP) + * ------ + * H2 + */ + +#define LCM_D4 16 // Used as BTN_EN1 for YHCB2004 LCD Module +#define LCM_D5 21 // YHCB2004_SCK_PIN +#define LCM_D6 5 // YHCB2004_SS_PIN +#define LCM_D7 36 // YHCB2004_MOSI_PIN +#define LCM_EN 17 // BTN_EN2 +#define EC_PRESS 19 // BTN_ENC +#define BEEP 18 + +#define BEEPER_PIN BEEP +#define LCM_RS 20 // Pin named and connected to 10k pull-up resistor but unused + +#if ENABLED(YHCB2004) + #define YHCB2004_SS_PIN LCM_D6 + #define YHCB2004_SCK_PIN LCM_D5 + #define YHCB2004_MOSI_PIN LCM_D7 + #define YHCB2004_MISO_PIN LCM_RS // Unused on V4.1b board +#elif HAS_WIRED_LCD + #error "GT2560 V4.1b requires an adapter for common LCDs." + /* Cannot use because V4.1b board has not LCD_PINS_RS wired to display connector + #define LCD_PINS_RS 20 + #define LCD_PINS_EN 17 + #define LCD_PINS_D4 16 + #define LCD_PINS_D5 21 + #define LCD_PINS_D6 5 + #define LCD_PINS_D7 36 + //*/ +#endif + +#if ENABLED(YHCB2004) + #define BTN_EN1 LCM_D4 + #define BTN_EN2 LCM_EN + #define BTN_ENC EC_PRESS +#elif IS_NEWPANEL + #define BTN_EN1 42 + #define BTN_EN2 40 + #define BTN_ENC 19 +#endif diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index 5c90dbc9626e..652feeb23c42 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -348,6 +348,8 @@ #include "mega/pins_PROTONEER_CNC_SHIELD_V3.h" // ATmega2560 env:mega2560 #elif MB(WEEDO_62A) #include "mega/pins_WEEDO_62A.h" // ATmega2560 env:mega2560 +#elif MB(GT2560_V41B) + #include "mega/pins_GT2560_V41b.h" // ATmega2560 env:mega2560 // // ATmega1281, ATmega2561 From 4d89db52095cb4f182bc11d4cfd72ceef8e2273f Mon Sep 17 00:00:00 2001 From: magicmaker3 <66371323+magicmaker3@users.noreply.github.com> Date: Sun, 6 Aug 2023 07:10:49 +0800 Subject: [PATCH 408/427] =?UTF-8?q?=E2=9C=A8=20MM-JOKER=20(ESP32)=20board?= =?UTF-8?q?=20(#25897)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/boards.h | 1 + Marlin/src/inc/SanityCheck.h | 10 +- Marlin/src/pins/esp32/pins_MM_JOKER.h | 266 ++++++++++++++++++++++++++ Marlin/src/pins/pins.h | 2 + 4 files changed, 275 insertions(+), 4 deletions(-) create mode 100644 Marlin/src/pins/esp32/pins_MM_JOKER.h diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index 5c4cabd08d3e..e72607e2a14c 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -490,6 +490,7 @@ #define BOARD_MKS_TINYBEE 7008 // MKS TinyBee based on ESP32 (with I2S stepper stream) #define BOARD_ENWI_ESPNP 7009 // enwi ESPNP based on ESP32 (with I2S stepper stream) #define BOARD_GODI_CONTROLLER_V1_0 7010 // Godi Controller based on ESP32 32-Bit V1.0 +#define BOARD_MM_JOKER 7011 // MagicMaker JOKER based on ESP32 (with I2S stepper stream) // // SAMD51 ARM Cortex-M4 diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index ee23fc427078..4b56204db570 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -648,10 +648,12 @@ static_assert(COUNT(arm) == LOGICAL_AXES, "AXIS_RELATIVE_MODES must contain " _L */ #if HAS_MULTI_EXTRUDER - #if HAS_EXTENDABLE_MMU - #define MAX_EXTRUDERS 15 - #else - #define MAX_EXTRUDERS 8 + #ifndef MAX_EXTRUDERS + #if HAS_EXTENDABLE_MMU + #define MAX_EXTRUDERS 15 + #else + #define MAX_EXTRUDERS 8 + #endif #endif static_assert(EXTRUDERS <= MAX_EXTRUDERS, "Marlin supports a maximum of " STRINGIFY(MAX_EXTRUDERS) " EXTRUDERS."); #undef MAX_EXTRUDERS diff --git a/Marlin/src/pins/esp32/pins_MM_JOKER.h b/Marlin/src/pins/esp32/pins_MM_JOKER.h new file mode 100644 index 000000000000..184a94c01b30 --- /dev/null +++ b/Marlin/src/pins/esp32/pins_MM_JOKER.h @@ -0,0 +1,266 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (c) 2023 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ +#pragma once + +/** + * JOKER pin assignments + */ + +#include "env_validate.h" + +#define BOARD_INFO_NAME "JOKER" +#define DEFAULT_MACHINE_NAME BOARD_INFO_NAME + +// +// Expansion Boards for more axes, sensors, heaters +// Only enable one of these options. +// +//#define JOKER_PLUS_2 +//#define JOKER_PLUS_5 + +#if ENABLED(JOKER_PLUS_2) + #define MAX_EXTRUDERS 2 + #if E_STEPPERS > 2 + #error "JOKER with +2 expansion supports up to 2 E steppers." + #elif HOTENDS > 2 + #error "JOKER with +2 expansion supports up to 2 hotends." + #endif +#elif ENABLED(JOKER_PLUS_5) + #define MAX_EXTRUDERS 3 + #if E_STEPPERS > 3 + #error "JOKER with +5 expansion supports up to 3 E steppers." + #elif HOTENDS > 3 + #error "JOKER with +5 expansion supports up to 3 hotends." + #endif +#else + #if E_STEPPERS > 1 + #error "JOKER without expansion only supports 1 E stepper." + #elif HAS_MULTI_HOTEND + #error "JOKER without expansion only supports 1 hotend." + #endif +#endif + +// +// Servos +// +#define SERVO0_PIN 14 + +// +// Limit Switches +// +#define X_STOP_PIN 15 +#define Y_STOP_PIN 16 +#define Z_STOP_PIN 17 + +// +// Filament Runout Sensor +// +#ifndef FIL_RUNOUT_PIN + #define FIL_RUNOUT_PIN 13 +#endif + +#ifndef Z_MIN_PROBE_PIN + //#define Z_MIN_PROBE_PIN 35 // Pin 35 is the RAMPS default +#endif + +// +// Enable I2S stepper stream +// +#define I2S_STEPPER_STREAM +#if ENABLED(I2S_STEPPER_STREAM) + #define I2S_WS 26 + #define I2S_BCK 25 + #define I2S_DATA 27 + #if ENABLED(LIN_ADVANCE) + #error "I2S stream is currently incompatible with LIN_ADVANCE." + #endif +#endif + +// +// Steppers +// +#define X_STEP_PIN 128 +#define X_DIR_PIN 129 +#define X_ENABLE_PIN 136 + +#define Y_STEP_PIN 130 +#define Y_DIR_PIN 131 +#define Y_ENABLE_PIN X_ENABLE_PIN + +#define Z_STEP_PIN 132 +#define Z_DIR_PIN 133 +#define Z_ENABLE_PIN 137 + +#define E0_STEP_PIN 134 +#define E0_DIR_PIN 135 +#define E0_ENABLE_PIN 138 + +#if ENABLED(JOKER_PLUS_2) + + #define E1_STEP_PIN 144 + #define E1_DIR_PIN 145 + #define E1_ENABLE_PIN 146 + + #define E2_STEP_PIN 147 + #define E2_DIR_PIN 148 + #define E2_ENABLE_PIN 149 + +#elif ENABLED(JOKER_PLUS_5) + + #define E1_STEP_PIN 144 + #define E1_DIR_PIN 145 + #define E1_ENABLE_PIN 146 + + #define E2_STEP_PIN 153 + #define E2_DIR_PIN 154 + #define E2_ENABLE_PIN 155 + + #define E3_STEP_PIN 156 + #define E3_DIR_PIN 157 + #define E3_ENABLE_PIN 158 + + // Are these preferred for X2, Y2, Z2, Z3 ? + #define E4_STEP_PIN 147 + #define E4_DIR_PIN 148 + #define E4_ENABLE_PIN 149 + + #define E5_STEP_PIN 150 + #define E5_DIR_PIN 151 + #define E5_ENABLE_PIN 152 + +#endif + +// +// Temperature Sensors +// +#define TEMP_0_PIN 36 // Analog Input +#define TEMP_BED_PIN 39 // Analog Input + +#if ENABLED(JOKER_PLUS_2) + #define TEMP_1_PIN 34 // Analog Input +#elif ENABLED(JOKER_PLUS_5) + #define TEMP_1_PIN 32 // Analog Input + #define TEMP_2_PIN 33 // Analog Input + #define TEMP_3_PIN 34 // Analog Input +#endif + +// +// Heaters / Fans +// +#define HEATER_0_PIN 141 +#define HEATER_BED_PIN 140 +#define FAN0_PIN 143 + +#ifndef E0_AUTO_FAN_PIN + #define E0_AUTO_FAN_PIN 142 // Enabled in Configuration_adv.h +#endif + +#ifndef CONTROLLER_FAN_PIN + //#define CONTROLLER_FAN_PIN -1 +#endif + +#if ENABLED(JOKER_PLUS_2) + + #define HEATER_1_PIN 150 + #define FAN1_PIN 151 + +#elif ENABLED(JOKER_PLUS_5) + + #define HEATER_1_PIN 159 + #define HEATER_2_PIN 160 + #define HEATER_3_PIN 161 + + #define FAN1_PIN 162 + #define FAN2_PIN 163 + #define FAN3_PIN 164 + + #ifndef E1_AUTO_FAN_PIN + #define E1_AUTO_FAN_PIN 165 + #endif + #ifndef E2_AUTO_FAN_PIN + #define E2_AUTO_FAN_PIN 166 + #endif + #ifndef E3_AUTO_FAN_PIN + #define E3_AUTO_FAN_PIN 167 + #endif + +#endif + +// +// SD Card +// +#define SD_MOSI_PIN 23 +#define SD_MISO_PIN 19 +#define SD_SCK_PIN 18 +#define SDSS 5 +#define USES_SHARED_SPI // SPI is shared by SD card with TMC SPI drivers + +// +// LCD / Controller +// +#if HAS_WIRED_LCD + + //#define LCD_PINS_RS 13 + //#define LCD_PINS_ENABLE 17 + //#define LCD_PINS_D4 16 + + #if ENABLED(CR10_STOCKDISPLAY) + + #define BEEPER_PIN 151 + + #elif IS_RRD_FG_SC + + #define BEEPER_PIN 151 + + //#define LCD_PINS_D5 -1 + //#define LCD_PINS_D6 -1 + //#define LCD_PINS_D7 -1 + + #endif + + #define BTN_EN1 2 + #define BTN_EN2 4 + #define BTN_ENC 12 + #define BEEPER_PIN 139 + +#endif // HAS_WIRED_LCD + +/** + * Hardware Serial + * Add the following to Configuration.h or Configuration_adv.h to assign + * specific pins to hardware Serial1 and Serial2. + * Note: Serial2 can be defined using HARDWARE_SERIAL2_RX and HARDWARE_SERIAL2_TX but + * JOKER does not have enough spare pins for such reassignment. + */ +//#define HARDWARE_SERIAL1_RX 21 +//#define HARDWARE_SERIAL1_TX 22 +//#define HARDWARE_SERIAL2_RX 2 +//#define HARDWARE_SERIAL2_TX 4 + +// +// M3/M4/M5 - Spindle/Laser Control +// +#if HAS_CUTTER + #define SPINDLE_LASER_ENA_PIN -1 // FET 1 + #define SPINDLE_LASER_PWM_PIN 33 // Bed FET + //#define SPINDLE_DIR_PIN -1 // FET 3 +#endif diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index 652feeb23c42..b823f480d732 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -856,6 +856,8 @@ #include "esp32/pins_ENWI_ESPNP.h" // ESP32 env:esp32 #elif MB(GODI_CONTROLLER_V1_0) #include "esp32/pins_GODI_CONTROLLER_V1_0.h" // ESP32 env:godi_esp32 +#elif MB(MM_JOKER) + #include "esp32/pins_MM_JOKER.h" // ESP32 env:esp32 // // Adafruit Grand Central M4 (SAMD51 ARM Cortex-M4) From 27fd97a8bbb63f676c32c307afd491dd865a271f Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Sun, 6 Aug 2023 00:21:12 +0000 Subject: [PATCH 409/427] [cron] Bump distribution date (2023-08-06) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index e727c1601b7c..60a70a42c9e8 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-08-05" +//#define STRING_DISTRIBUTION_DATE "2023-08-06" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 710c0cdcd7f9..6c857b2aecbd 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-08-05" + #define STRING_DISTRIBUTION_DATE "2023-08-06" #endif /** From 8d74a63e4bc210ce96ef7cf148f3598afc9fe1ad Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 6 Aug 2023 21:04:40 -0500 Subject: [PATCH 410/427] =?UTF-8?q?=F0=9F=93=9D=20Update=20a=20config=20co?= =?UTF-8?q?mment?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 22b060dcb22c..119f81415a30 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1514,7 +1514,7 @@ * * Tune and Adjust * - Probe Offsets can be tuned at runtime with 'M851', LCD menus, babystepping, etc. - * - PROBE_OFFSET_WIZARD (configuration_adv.h) can be used for setting the Z offset. + * - PROBE_OFFSET_WIZARD (Configuration_adv.h) can be used for setting the Z offset. * * Assuming the typical work area orientation: * - Probe to RIGHT of the Nozzle has a Positive X offset From 1dd3c9e73f59ddac098173c4cc3642e798f18623 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Sun, 6 Aug 2023 20:04:11 -0700 Subject: [PATCH 411/427] =?UTF-8?q?=F0=9F=93=9D=20STM32G0B0=20SKR=20Mini?= =?UTF-8?q?=20E3=20V3.0=20/=20Manta=20M4P=20(#26087)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/core/boards.h | 4 ++-- ini/stm32g0.ini | 10 ++++++---- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index e72607e2a14c..5e404fc85041 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -318,9 +318,9 @@ // #define BOARD_BTT_EBB42_V1_1 4000 // BigTreeTech EBB42 V1.1 (STM32G0B1CB) -#define BOARD_BTT_SKR_MINI_E3_V3_0 4001 // BigTreeTech SKR Mini E3 V3.0 (STM32G0B1RE) +#define BOARD_BTT_SKR_MINI_E3_V3_0 4001 // BigTreeTech SKR Mini E3 V3.0 (STM32G0B0RE / STM32G0B1RE) #define BOARD_BTT_MANTA_E3_EZ_V1_0 4002 // BigTreeTech Manta E3 EZ V1.0 (STM32G0B1RE) -#define BOARD_BTT_MANTA_M4P_V1_0 4003 // BigTreeTech Manta M4P V1.0 (STM32G0B1RE) +#define BOARD_BTT_MANTA_M4P_V1_0 4003 // BigTreeTech Manta M4P V1.0 (STM32G0B0RE) #define BOARD_BTT_MANTA_M5P_V1_0 4004 // BigTreeTech Manta M5P V1.0 (STM32G0B1RE) #define BOARD_BTT_MANTA_M8P_V1_0 4005 // BigTreeTech Manta M8P V1.0 (STM32G0B1VE) #define BOARD_BTT_MANTA_M8P_V1_1 4006 // BigTreeTech Manta M8P V1.1 (STM32G0B1VE) diff --git a/ini/stm32g0.ini b/ini/stm32g0.ini index f67002fa5c3c..fa6e5cba74ce 100644 --- a/ini/stm32g0.ini +++ b/ini/stm32g0.ini @@ -43,7 +43,7 @@ upload_protocol = dfu upload_command = dfu-util -a 0 -s 0x08000000:leave -D "$SOURCE" # -# BigTreeTech SKR Mini E3 V3.0 (STM32G0B1RET6 ARM Cortex-M0+) +# BigTreeTech SKR Mini E3 V3.0 (STM32G0B0RET6 / STM32G0B1RET6 ARM Cortex-M0+) # [env:STM32G0B1RE_btt] extends = stm32_variant @@ -62,7 +62,7 @@ upload_protocol = stlink debug_tool = stlink # -# BigTreeTech SKR Mini E3 V3.0 (STM32G0B1RET6 ARM Cortex-M0+) +# BigTreeTech SKR Mini E3 V3.0 (STM32G0B0RET6 / STM32G0B1RET6 ARM Cortex-M0+) # Custom upload to SD via Marlin with Binary Protocol # Requires Marlin with BINARY_FILE_TRANSFER already installed on the target board. # If CUSTOM_FIRMWARE_UPLOAD is also installed, Marlin will reboot the board to install the firmware. @@ -76,7 +76,8 @@ extra_scripts = ${env:STM32G0B1RE_btt.extra_scripts} upload_protocol = custom # -# BigTreeTech Manta E3 EZ V1.0 / Manta M4P V1.0 / Manta M5P V1.0 (STM32G0B1RET6 ARM Cortex-M0+) +# BigTreeTech Manta M4P V1.0 (STM32G0B0RET6 ARM Cortex-M0+) +# BigTreeTech Manta E3 EZ V1.0 / Manta M5P V1.0 (STM32G0B1RET6 ARM Cortex-M0+) # [env:STM32G0B1RE_manta_btt] extends = env:STM32G0B1RE_btt @@ -84,7 +85,8 @@ build_flags = ${env:STM32G0B1RE_btt.build_flags} -DPIN_SERIAL3_RX=PD_9 -DPIN_SERIAL3_TX=PD_8 -DENABLE_HWSERIAL3 # -# BigTreeTech Manta E3 EZ V1.0 / Manta M4P V1.0 / Manta M5P V1.0 (STM32G0B1RET6 ARM Cortex-M0+) +# BigTreeTech Manta M4P V1.0 (STM32G0B0RET6 ARM Cortex-M0+) +# BigTreeTech Manta E3 EZ V1.0 / Manta M5P V1.0 (STM32G0B1RET6 ARM Cortex-M0+) # Custom upload to SD via Marlin with Binary Protocol # Requires Marlin with BINARY_FILE_TRANSFER already installed on the target board. # If CUSTOM_FIRMWARE_UPLOAD is also installed, Marlin will reboot the board to install the firmware. From b956001d8175b3f01ef0be2ef6b07825a8509317 Mon Sep 17 00:00:00 2001 From: lukasradek Date: Mon, 7 Aug 2023 05:08:35 +0200 Subject: [PATCH 412/427] =?UTF-8?q?=F0=9F=9A=B8=20Update=20LCD=20Manual=20?= =?UTF-8?q?Leveling=20display=20(#26088)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/e3v2/marlinui/ui_common.cpp | 2 +- Marlin/src/lcd/menu/menu_bed_leveling.cpp | 4 ++-- Marlin/src/lcd/menu/menu_x_twist.cpp | 4 ++-- Marlin/src/lcd/tft/ui_color_ui.cpp | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp index ebfb10c8c040..27e5b38bd0a3 100644 --- a/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp +++ b/Marlin/src/lcd/e3v2/marlinui/ui_common.cpp @@ -422,7 +422,7 @@ void MarlinUI::draw_status_message(const bool blink) { const dwin_coord_t by = (row * MENU_LINE_HEIGHT) + MENU_FONT_HEIGHT + EXTRA_ROW_HEIGHT / 2; dwinDrawString(true, font16x32, COLOR_YELLOW, COLOR_BG_BLACK, (LCD_PIXEL_WIDTH - vallen * 16) / 2, by, S(dwin_string.string())); - if (ui.can_show_slider()) { + if (ui.can_show_slider() && maxEditValue > 0) { const dwin_coord_t slider_length = LCD_PIXEL_WIDTH - TERN(DWIN_MARLINUI_LANDSCAPE, 120, 20), slider_height = 16, diff --git a/Marlin/src/lcd/menu/menu_bed_leveling.cpp b/Marlin/src/lcd/menu/menu_bed_leveling.cpp index beb9342fb9b8..981c51a6b056 100644 --- a/Marlin/src/lcd/menu/menu_bed_leveling.cpp +++ b/Marlin/src/lcd/menu/menu_bed_leveling.cpp @@ -139,8 +139,8 @@ void _lcd_level_bed_moving() { if (ui.should_draw()) { MString<9> msg; - msg.setf(F("%i / %u"), int(manual_probe_index + 1), total_probe_points); - MenuEditItemBase::draw_edit_screen(GET_TEXT_F(MSG_LEVEL_BED_NEXT_POINT), &msg); + msg.setf(F(" %i / %u"), int(manual_probe_index + 1), total_probe_points); + MenuItem_static::draw(LCD_HEIGHT / 2, GET_TEXT_F(MSG_LEVEL_BED_NEXT_POINT), SS_CENTER, msg); } ui.refresh(LCDVIEW_CALL_NO_REDRAW); if (!ui.wait_for_move) ui.goto_screen(_lcd_level_bed_get_z); diff --git a/Marlin/src/lcd/menu/menu_x_twist.cpp b/Marlin/src/lcd/menu/menu_x_twist.cpp index 6162a5e30d3b..f5ceec8f12f1 100644 --- a/Marlin/src/lcd/menu/menu_x_twist.cpp +++ b/Marlin/src/lcd/menu/menu_x_twist.cpp @@ -113,8 +113,8 @@ void xatc_wizard_menu() { void xatc_wizard_moving() { if (ui.should_draw()) { MString<9> msg; - msg.setf(F("%i / %u"), manual_probe_index + 1, XATC_MAX_POINTS); - MenuEditItemBase::draw_edit_screen(GET_TEXT_F(MSG_LEVEL_BED_NEXT_POINT), &msg); + msg.setf(F(" %i / %u"), manual_probe_index + 1, XATC_MAX_POINTS); + MenuItem_static::draw(LCD_HEIGHT / 2, GET_TEXT_F(MSG_LEVEL_BED_NEXT_POINT), SS_CENTER, msg); } ui.refresh(LCDVIEW_CALL_NO_REDRAW); if (!ui.wait_for_move) ui.goto_screen(xatc_wizard_menu); diff --git a/Marlin/src/lcd/tft/ui_color_ui.cpp b/Marlin/src/lcd/tft/ui_color_ui.cpp index 85d310ca42ea..cefbd05d1953 100644 --- a/Marlin/src/lcd/tft/ui_color_ui.cpp +++ b/Marlin/src/lcd/tft/ui_color_ui.cpp @@ -429,7 +429,7 @@ void MenuEditItemBase::draw_edit_screen(FSTR_P const fstr, const char * const va } #endif - if (ui.can_show_slider()) { + if (ui.can_show_slider() && maxEditValue > 0) { tft.canvas((TFT_WIDTH - SLIDER_W) / 2, SLIDER_Y, SLIDER_W, 16); tft.set_background(COLOR_BACKGROUND); From 205a679959432dff54352b390354a4324f29a97a Mon Sep 17 00:00:00 2001 From: Bart Meijer Date: Mon, 7 Aug 2023 06:12:30 +0200 Subject: [PATCH 413/427] =?UTF-8?q?=E2=9A=A1=EF=B8=8F=20SAMD21=20LCD=20use?= =?UTF-8?q?s=20HW=20SPI=20with=20media=20(#26012)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../u8g/u8g_com_HAL_samd21_shared_hw_spi.cpp | 8 ++-- Marlin/src/lcd/dogm/HAL_LCD_class_defines.h | 40 +++++++++---------- Marlin/src/lcd/dogm/HAL_LCD_com_defines.h | 2 - Marlin/src/lcd/dogm/marlinui_DOGM.h | 14 ++++--- ini/samd21.ini | 2 +- 5 files changed, 33 insertions(+), 33 deletions(-) diff --git a/Marlin/src/HAL/SAMD21/u8g/u8g_com_HAL_samd21_shared_hw_spi.cpp b/Marlin/src/HAL/SAMD21/u8g/u8g_com_HAL_samd21_shared_hw_spi.cpp index 025e5a3bb60d..42630a6ce5ca 100644 --- a/Marlin/src/HAL/SAMD21/u8g/u8g_com_HAL_samd21_shared_hw_spi.cpp +++ b/Marlin/src/HAL/SAMD21/u8g/u8g_com_HAL_samd21_shared_hw_spi.cpp @@ -70,7 +70,7 @@ #include "../../shared/HAL_SPI.h" #ifndef LCD_SPI_SPEED - #define LCD_SPI_SPEED SPI_QUARTER_SPEED + #define LCD_SPI_SPEED SPI_HALF_SPEED #endif void u8g_SetPIOutput(u8g_t *u8g, uint8_t pin_index) { @@ -85,7 +85,6 @@ void u8g_SetPILevel(u8g_t *u8g, uint8_t pin_index, uint8_t level) { uint8_t u8g_com_samd21_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) { - static SPISettings lcdSPIConfig; switch (msg) { case U8G_COM_MSG_STOP: @@ -99,7 +98,6 @@ uint8_t u8g_com_samd21_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val u8g_SetPILevel(u8g, U8G_PI_CS, LOW); spiBegin(); - lcdSPIConfig = SPISettings(900000, MSBFIRST, SPI_MODE0); u8g->pin_list[U8G_PI_A0_STATE] = 0; break; @@ -117,7 +115,7 @@ uint8_t u8g_com_samd21_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val break; case U8G_COM_MSG_WRITE_BYTE: - SPI.beginTransaction(lcdSPIConfig); + spiBeginTransaction(LCD_SPI_SPEED, MSBFIRST, SPI_MODE0); if (u8g->pin_list[U8G_PI_A0_STATE] == 0) { // command SPI.transfer(0x0f8); u8g->pin_list[U8G_PI_A0_STATE] = 2; @@ -132,7 +130,7 @@ uint8_t u8g_com_samd21_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val break; case U8G_COM_MSG_WRITE_SEQ: - SPI.beginTransaction(lcdSPIConfig); + spiBeginTransaction(LCD_SPI_SPEED, MSBFIRST, SPI_MODE0); if (u8g->pin_list[U8G_PI_A0_STATE] == 0 ) { // command SPI.transfer(0x0f8); u8g->pin_list[U8G_PI_A0_STATE] = 2; diff --git a/Marlin/src/lcd/dogm/HAL_LCD_class_defines.h b/Marlin/src/lcd/dogm/HAL_LCD_class_defines.h index 28ca26134e16..dc40aba04628 100644 --- a/Marlin/src/lcd/dogm/HAL_LCD_class_defines.h +++ b/Marlin/src/lcd/dogm/HAL_LCD_class_defines.h @@ -31,12 +31,12 @@ extern u8g_dev_t u8g_dev_st7565_64128n_HAL_2x_hw_spi; class U8GLIB_64128N_2X_HAL : public U8GLIB { public: U8GLIB_64128N_2X_HAL() : U8GLIB() { } - U8GLIB_64128N_2X_HAL(pin_t sck, pin_t mosi, pin_t cs, pin_t a0, pin_t reset = U8G_PIN_NONE) { init(sck, mosi, cs, a0, reset); } - U8GLIB_64128N_2X_HAL(pin_t cs, pin_t a0, pin_t reset = U8G_PIN_NONE) { init(cs, a0, reset); } - void init(pin_t sck, pin_t mosi, pin_t cs, pin_t a0, pin_t reset = U8G_PIN_NONE) { + U8GLIB_64128N_2X_HAL(pin_t sck, pin_t mosi, pin_t cs, pin_t a0, pin_t reset=U8G_PIN_NONE) { init(sck, mosi, cs, a0, reset); } + U8GLIB_64128N_2X_HAL(pin_t cs, pin_t a0, pin_t reset=U8G_PIN_NONE) { init(cs, a0, reset); } + void init(pin_t sck, pin_t mosi, pin_t cs, pin_t a0, pin_t reset=U8G_PIN_NONE) { U8GLIB::init(&u8g_dev_st7565_64128n_HAL_2x_sw_spi, (uint8_t)sck, (uint8_t)mosi, (uint8_t)cs, (uint8_t)a0, (uint8_t)reset); } - void init(pin_t cs, pin_t a0, pin_t reset = U8G_PIN_NONE) { + void init(pin_t cs, pin_t a0, pin_t reset=U8G_PIN_NONE) { U8GLIB::init(&u8g_dev_st7565_64128n_HAL_2x_hw_spi, (uint8_t)cs, (uint8_t)a0, (uint8_t)reset); } }; @@ -47,12 +47,12 @@ extern u8g_dev_t u8g_dev_st7920_128x64_HAL_4x_hw_spi; class U8GLIB_ST7920_128X64_4X_HAL : public U8GLIB { public: U8GLIB_ST7920_128X64_4X_HAL() : U8GLIB() { } - U8GLIB_ST7920_128X64_4X_HAL(pin_t sck, pin_t mosi, pin_t cs, pin_t reset = U8G_PIN_NONE) { init(sck, mosi, cs, reset); } - U8GLIB_ST7920_128X64_4X_HAL(pin_t cs, pin_t reset = U8G_PIN_NONE) { init(cs, reset); } - void init(pin_t sck, pin_t mosi, pin_t cs, pin_t reset = U8G_PIN_NONE) { + U8GLIB_ST7920_128X64_4X_HAL(pin_t sck, pin_t mosi, pin_t cs, pin_t reset=U8G_PIN_NONE) { init(sck, mosi, cs, reset); } + U8GLIB_ST7920_128X64_4X_HAL(pin_t cs, pin_t reset=U8G_PIN_NONE) { init(cs, reset); } + void init(pin_t sck, pin_t mosi, pin_t cs, pin_t reset=U8G_PIN_NONE) { U8GLIB::init(&u8g_dev_st7920_128x64_HAL_4x_sw_spi, (uint8_t)sck, (uint8_t)mosi, (uint8_t)cs, U8G_PIN_NONE, (uint8_t)reset); // a0 = U8G_PIN_NONE } - void init(pin_t cs, pin_t reset = U8G_PIN_NONE) { + void init(pin_t cs, pin_t reset=U8G_PIN_NONE) { U8GLIB::init(&u8g_dev_st7920_128x64_HAL_4x_hw_spi, (uint8_t)cs, U8G_PIN_NONE, (uint8_t)reset); // a0 = U8G_PIN_NONE } }; @@ -66,8 +66,8 @@ extern u8g_dev_t u8g_dev_st7920_128x64_rrd_sw_spi; class U8GLIB_ST7920_128X64_RRD : public U8GLIB { public: U8GLIB_ST7920_128X64_RRD() : U8GLIB() { } - U8GLIB_ST7920_128X64_RRD(pin_t sck, pin_t mosi, pin_t cs, pin_t reset = U8G_PIN_NONE) { init(sck, mosi, cs, reset); } - void init(pin_t sck, pin_t mosi, pin_t cs, pin_t reset = U8G_PIN_NONE) { + U8GLIB_ST7920_128X64_RRD(pin_t sck, pin_t mosi, pin_t cs, pin_t reset=U8G_PIN_NONE) { init(sck, mosi, cs, reset); } + void init(pin_t sck, pin_t mosi, pin_t cs, pin_t reset=U8G_PIN_NONE) { U8GLIB::init(&u8g_dev_st7920_128x64_rrd_sw_spi, (uint8_t)sck, (uint8_t)mosi, (uint8_t)cs, U8G_PIN_NONE, (uint8_t)reset); // a0 = U8G_PIN_NONE } }; @@ -99,8 +99,8 @@ extern u8g_dev_t u8g_dev_tft_320x240_upscale_from_128x64; class U8GLIB_TFT_320X240_UPSCALE_FROM_128X64 : public U8GLIB { public: U8GLIB_TFT_320X240_UPSCALE_FROM_128X64() : U8GLIB() { } - U8GLIB_TFT_320X240_UPSCALE_FROM_128X64(uint8_t cs, uint8_t rs, uint8_t reset = U8G_PIN_NONE) { init(cs, rs, reset); } - void init(uint8_t cs, uint8_t rs, uint8_t reset = U8G_PIN_NONE) { U8GLIB::init(&u8g_dev_tft_320x240_upscale_from_128x64, cs, rs, reset); } + U8GLIB_TFT_320X240_UPSCALE_FROM_128X64(uint8_t cs, uint8_t rs, uint8_t reset=U8G_PIN_NONE) { init(cs, rs, reset); } + void init(uint8_t cs, uint8_t rs, uint8_t reset=U8G_PIN_NONE) { U8GLIB::init(&u8g_dev_tft_320x240_upscale_from_128x64, cs, rs, reset); } }; @@ -109,12 +109,12 @@ extern u8g_dev_t u8g_dev_uc1701_mini12864_HAL_2x_sw_spi, u8g_dev_uc1701_mini1286 class U8GLIB_MINI12864_2X_HAL : public U8GLIB { public: U8GLIB_MINI12864_2X_HAL() : U8GLIB() { } - U8GLIB_MINI12864_2X_HAL(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) { init(sck, mosi, cs, a0, reset); } - U8GLIB_MINI12864_2X_HAL(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) { init(cs, a0, reset); } - void init(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) { + U8GLIB_MINI12864_2X_HAL(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset=U8G_PIN_NONE) { init(sck, mosi, cs, a0, reset); } + U8GLIB_MINI12864_2X_HAL(uint8_t cs, uint8_t a0, uint8_t reset=U8G_PIN_NONE) { init(cs, a0, reset); } + void init(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset=U8G_PIN_NONE) { U8GLIB::init(&u8g_dev_uc1701_mini12864_HAL_2x_sw_spi, sck, mosi, cs, a0, reset); } - void init(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) { + void init(uint8_t cs, uint8_t a0, uint8_t reset=U8G_PIN_NONE) { U8GLIB::init(&u8g_dev_uc1701_mini12864_HAL_2x_hw_spi, cs, a0, reset); } }; @@ -125,12 +125,12 @@ extern u8g_dev_t u8g_dev_ssd1309_hw_spi; class U8GLIB_SSD1309_128X64_HAL : public U8GLIB { public: U8GLIB_SSD1309_128X64_HAL() : U8GLIB() { } - U8GLIB_SSD1309_128X64_HAL(pin_t sck, pin_t mosi, pin_t cs, pin_t a0, pin_t reset = U8G_PIN_NONE) { init(sck, mosi, cs, a0, reset); } - U8GLIB_SSD1309_128X64_HAL(pin_t cs, pin_t a0, pin_t reset = U8G_PIN_NONE) { init(cs, a0, reset); } - void init(pin_t sck, pin_t mosi, pin_t cs, pin_t a0, pin_t reset = U8G_PIN_NONE) { + U8GLIB_SSD1309_128X64_HAL(pin_t sck, pin_t mosi, pin_t cs, pin_t a0, pin_t reset=U8G_PIN_NONE) { init(sck, mosi, cs, a0, reset); } + U8GLIB_SSD1309_128X64_HAL(pin_t cs, pin_t a0, pin_t reset=U8G_PIN_NONE) { init(cs, a0, reset); } + void init(pin_t sck, pin_t mosi, pin_t cs, pin_t a0, pin_t reset=U8G_PIN_NONE) { U8GLIB::init(&u8g_dev_ssd1309_sw_spi, (uint8_t)sck, (uint8_t)mosi, (uint8_t)cs, (uint8_t)a0, (uint8_t)reset); } - void init(pin_t cs, pin_t a0, pin_t reset = U8G_PIN_NONE) { + void init(pin_t cs, pin_t a0, pin_t reset=U8G_PIN_NONE) { U8GLIB::init(&u8g_dev_ssd1309_hw_spi, (uint8_t)cs, (uint8_t)a0, (uint8_t)reset); } }; diff --git a/Marlin/src/lcd/dogm/HAL_LCD_com_defines.h b/Marlin/src/lcd/dogm/HAL_LCD_com_defines.h index cfba12acff1b..6df641315895 100644 --- a/Marlin/src/lcd/dogm/HAL_LCD_com_defines.h +++ b/Marlin/src/lcd/dogm/HAL_LCD_com_defines.h @@ -41,11 +41,9 @@ #define U8G_COM_HAL_HW_SPI_FN u8g_com_samd51_hw_spi_fn #define U8G_COM_ST7920_HAL_HW_SPI u8g_com_samd51_st7920_hw_spi_fn - #elif defined(__SAMD21__) uint8_t u8g_com_samd21_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); - #define U8G_COM_ST7920_HAL_HW_SPI u8g_com_samd21_st7920_hw_spi_fn #elif defined(__STM32F1__) diff --git a/Marlin/src/lcd/dogm/marlinui_DOGM.h b/Marlin/src/lcd/dogm/marlinui_DOGM.h index 414508b1294c..d23df6e2a370 100644 --- a/Marlin/src/lcd/dogm/marlinui_DOGM.h +++ b/Marlin/src/lcd/dogm/marlinui_DOGM.h @@ -36,11 +36,15 @@ // RepRapWorld Graphical LCD - #if !HAS_MEDIA && (LCD_PINS_D4 == SD_SCK_PIN) && (LCD_PINS_EN == SD_MOSI_PIN) - #define U8G_CLASS U8GLIB_ST7920_128X64_4X_HAL + #if HAS_MEDIA + #ifdef __SAMD21__ + #define U8G_CLASS U8GLIB_ST7920_128X64_4X_HAL + #else + #define U8G_CLASS U8GLIB_ST7920_128X64_4X + #endif #define U8G_PARAM LCD_PINS_RS - #elif HAS_MEDIA && __SAMD21__ - #define U8G_CLASS U8GLIB_ST7920_128X64_4X + #elif (LCD_PINS_D4 == SD_SCK_PIN) && (LCD_PINS_EN == SD_MOSI_PIN) + #define U8G_CLASS U8GLIB_ST7920_128X64_4X_HAL #define U8G_PARAM LCD_PINS_RS #else #define U8G_CLASS U8GLIB_ST7920_128X64_4X @@ -61,7 +65,7 @@ #else #define U8G_CLASS U8GLIB_ST7920_128X64_RRD // Adjust stripes with PAGE_HEIGHT in ultralcd_st7920_u8glib_rrd.h #endif - #define U8G_PARAM LCD_PINS_D4, LCD_PINS_EN, LCD_PINS_RS // AVR version ignores these pin settings + #define U8G_PARAM LCD_PINS_D4, LCD_PINS_EN, LCD_PINS_RS // AVR version ignores these pin settings // HAL version uses these pin settings #endif diff --git a/ini/samd21.ini b/ini/samd21.ini index 969ce3b9571e..f2acf829ff83 100644 --- a/ini/samd21.ini +++ b/ini/samd21.ini @@ -16,7 +16,7 @@ platform = atmelsam board = minitronics20 build_flags = ${common.build_flags} -std=gnu++17 - -DUSBCON -DUSBD_USE_CDC -D__SAMD21__ -DARDUINO_SAMD_MINITRONICS20 -Wno-deprecated-declarations -DU8G_HAL_LINKS -DDEBUG + -DUSBCON -DUSBD_USE_CDC -D__SAMD21__ -DARDUINO_SAMD_MINITRONICS20 -Wno-deprecated-declarations -DDEBUG -IMarlin/src/HAL/SAMD21/u8g build_unflags = -std=gnu++11 build_src_filter = ${common.default_src_filter} + From ffef8f1b297e83aa37eeb5ffcc5369e5c9c42a09 Mon Sep 17 00:00:00 2001 From: Mark Date: Mon, 7 Aug 2023 12:33:20 +0800 Subject: [PATCH 414/427] =?UTF-8?q?=F0=9F=9A=B8=20BD=20Sensor=20Z=20axis?= =?UTF-8?q?=20stop=20height=20(#26015)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/feature/bedlevel/bdl/bdl.cpp | 27 ++++++++++++++----------- Marlin/src/feature/bedlevel/bdl/bdl.h | 4 ++++ Marlin/src/gcode/bedlevel/abl/G29.cpp | 1 + Marlin/src/module/motion.cpp | 7 ++++++- Marlin/src/module/probe.cpp | 1 + 5 files changed, 27 insertions(+), 13 deletions(-) diff --git a/Marlin/src/feature/bedlevel/bdl/bdl.cpp b/Marlin/src/feature/bedlevel/bdl/bdl.cpp index 14989a07d344..5345bb78c590 100644 --- a/Marlin/src/feature/bedlevel/bdl/bdl.cpp +++ b/Marlin/src/feature/bedlevel/bdl/bdl.cpp @@ -78,8 +78,8 @@ bool BDS_Leveling::check(const uint16_t data, const bool raw_data/*=false*/, con return true; // error } if (raw_data == true) { - if (hicheck && (data & 0x3FF) > 550) - SERIAL_ECHOLNPGM("BD Sensor mounted too high!"); + if (hicheck && (data & 0x3FF) > 400) + SERIAL_ECHOLNPGM("Bad BD Sensor height! Recommended distance 0.5-2.0mm"); else if (!good_data(data)) SERIAL_ECHOLNPGM("Invalid data, please calibrate."); else @@ -109,7 +109,8 @@ void BDS_Leveling::process() { static float zpos = 0.0f; const millis_t ms = millis(); if (ELAPSED(ms, next_check_ms)) { // timed out (or first run) - next_check_ms = ms + (config_state < BDS_IDLE ? 200 : 50); // check at 5Hz or 20Hz + // Check at 1KHz, 5Hz, or 20Hz + next_check_ms = ms + (config_state == BDS_HOMING_Z ? 1 : (config_state < BDS_IDLE ? 200 : 50)); uint16_t tmp = 0; const float cur_z = planner.get_axis_position_mm(Z_AXIS) - pos_zero_offset; @@ -127,16 +128,14 @@ void BDS_Leveling::process() { babystep.set_mm(Z_AXIS, cur_z - z_sensor); DEBUG_ECHOLNPGM("BD:", z_sensor, ", Z:", cur_z, "|", current_position.z); } - else { - babystep.set_mm(Z_AXIS, 0); //if (old_cur_z <= cur_z) Z_DIR_WRITE(HIGH); - //stepper.apply_directions(); // TODO: Remove this line as probably not needed - } + else + babystep.set_mm(Z_AXIS, 0); } #endif old_cur_z = cur_z; old_buf_z = current_position.z; - endstops.bdp_state_update(z_sensor <= 0.01f); + endstops.bdp_state_update(z_sensor <= BD_SENSOR_HOME_Z_POSITION); #if HAS_STATUS_MESSAGE static float old_z_sensor = 0; @@ -149,8 +148,10 @@ void BDS_Leveling::process() { } #endif } - else - stepper.apply_directions(); + else if (config_state == BDS_HOMING_Z) { + SERIAL_ECHOLNPGM("Read:", tmp); + kill(F("BDsensor connect Err!")); + } DEBUG_ECHOLNPGM("BD:", tmp & 0x3FF, " Z:", cur_z, "|", current_position.z); if (TERN0(DEBUG_OUT_BD, BD_I2C_SENSOR.BD_Check_OddEven(tmp) == 0)) DEBUG_ECHOLNPGM("CRC error"); @@ -233,11 +234,13 @@ void BDS_Leveling::process() { sprintf_P(tmp_1, PSTR("G1Z%d.%d"), int(zpos), int(zpos * 10) % 10); gcode.process_subcommands_now(tmp_1); SERIAL_ECHO(tmp_1); SERIAL_ECHOLNPGM(", Z:", current_position.z); - for (float tmp_k = 0; abs(zpos - tmp_k) > 0.004f;) { + uint16_t failcount = 300; + for (float tmp_k = 0; abs(zpos - tmp_k) > 0.006f && failcount--;) { tmp_k = planner.get_axis_position_mm(Z_AXIS) - pos_zero_offset; safe_delay(10); + if (!failcount--) break; } - safe_delay(zpos <= 0.4f ? 600 : 100); + safe_delay(600); tmp = uint16_t((zpos + 0.00001f) * 10); BD_I2C_SENSOR.BD_i2c_write(tmp); SERIAL_ECHOLNPGM("w:", tmp, ", Z:", zpos); diff --git a/Marlin/src/feature/bedlevel/bdl/bdl.h b/Marlin/src/feature/bedlevel/bdl/bdl.h index b3037bc1c277..ed91d7081b67 100644 --- a/Marlin/src/feature/bedlevel/bdl/bdl.h +++ b/Marlin/src/feature/bedlevel/bdl/bdl.h @@ -23,6 +23,10 @@ #include +#ifndef BD_SENSOR_HOME_Z_POSITION + #define BD_SENSOR_HOME_Z_POSITION 0.5 +#endif + enum BDS_State : int8_t { BDS_IDLE, BDS_VERSION = -1, diff --git a/Marlin/src/gcode/bedlevel/abl/G29.cpp b/Marlin/src/gcode/bedlevel/abl/G29.cpp index 5ecb6af66c58..d6d648c12560 100644 --- a/Marlin/src/gcode/bedlevel/abl/G29.cpp +++ b/Marlin/src/gcode/bedlevel/abl/G29.cpp @@ -748,6 +748,7 @@ G29_TYPE GcodeSuite::G29() { } //if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM_P(axis == Y_AXIS ? PSTR("Y=") : PSTR("X=", pos); + safe_delay(4); abl.measured_z = current_position.z - bdl.read(); if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("x_cur ", planner.get_axis_position_mm(X_AXIS), " z ", abl.measured_z); diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index 80729df759da..272b16c9ac0f 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -2479,7 +2479,12 @@ void set_axis_is_at_home(const AxisEnum axis) { #if HAS_BED_PROBE && Z_HOME_TO_MIN if (axis == Z_AXIS) { #if HOMING_Z_WITH_PROBE - current_position.z -= probe.offset.z; + #if ENABLED(BD_SENSOR) + safe_delay(100); + current_position.z = bdl.read(); + #else + current_position.z -= probe.offset.z; + #endif if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("*** Z homed with PROBE" TERN_(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN, " (Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN)") " ***\n> (M851 Z", probe.offset.z, ")"); #else if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("*** Z homed to ENDSTOP ***"); diff --git a/Marlin/src/module/probe.cpp b/Marlin/src/module/probe.cpp index 68fcfd00e0a2..989965d6d884 100644 --- a/Marlin/src/module/probe.cpp +++ b/Marlin/src/module/probe.cpp @@ -980,6 +980,7 @@ float Probe::probe_at_point(const_float_t rx, const_float_t ry, const ProbePtRai #if ENABLED(BD_SENSOR) + safe_delay(4); return current_position.z - bdl.read(); // Difference between Z-home-relative Z and sensor reading #else // !BD_SENSOR From a8177944443a7a1186a77cefbe1ae7be19722ddd Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 7 Aug 2023 06:51:07 +0000 Subject: [PATCH 415/427] [cron] Bump distribution date (2023-08-07) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 60a70a42c9e8..c8fe764a0e01 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-08-06" +//#define STRING_DISTRIBUTION_DATE "2023-08-07" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 6c857b2aecbd..bc7b53a84393 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-08-06" + #define STRING_DISTRIBUTION_DATE "2023-08-07" #endif /** From a5e4b4bd7d18f84c29a13430c636ecae289c352a Mon Sep 17 00:00:00 2001 From: narno2202 <130909513+narno2202@users.noreply.github.com> Date: Mon, 7 Aug 2023 10:30:24 +0200 Subject: [PATCH 416/427] =?UTF-8?q?=F0=9F=9A=B8=20FT=5FMOTION=20menu=20upd?= =?UTF-8?q?ates=20(#26083)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/language/language_en.h | 2 + Marlin/src/lcd/menu/menu_motion.cpp | 80 +++++++++++++-------------- Marlin/src/module/ft_motion.cpp | 6 +- Marlin/src/module/ft_motion.h | 12 +++- Marlin/src/sd/SdBaseFile.cpp | 2 +- 5 files changed, 55 insertions(+), 47 deletions(-) diff --git a/Marlin/src/lcd/language/language_en.h b/Marlin/src/lcd/language/language_en.h index ea86812d0eb7..9fdc33e5f202 100644 --- a/Marlin/src/lcd/language/language_en.h +++ b/Marlin/src/lcd/language/language_en.h @@ -824,6 +824,8 @@ namespace LanguageNarrow_en { LSTR MSG_FTM_MASS_BASED = _UxGT("Mass-based"); LSTR MSG_FTM_BASE_FREQ_N = _UxGT("@ Base Freq."); LSTR MSG_FTM_DFREQ_K_N = _UxGT("@ Dyn. Freq."); + LSTR MSG_FTM_ZETA = _UxGT("Damping"); + LSTR MSG_FTM_VTOL = _UxGT("Vib. Level"); LSTR MSG_LEVEL_X_AXIS = _UxGT("Level X Axis"); LSTR MSG_AUTO_CALIBRATE = _UxGT("Auto Calibrate"); diff --git a/Marlin/src/lcd/menu/menu_motion.cpp b/Marlin/src/lcd/menu/menu_motion.cpp index 67fcbdd8511e..ae6e87af6585 100644 --- a/Marlin/src/lcd/menu/menu_motion.cpp +++ b/Marlin/src/lcd/menu/menu_motion.cpp @@ -318,10 +318,9 @@ void menu_move() { #include "../../module/ft_motion.h" #include "../../gcode/gcode.h" - void _M493_S(const ftMotionMode_t s) { - char cmd[10]; - sprintf_P(cmd, PSTR("M493S%i"), int(s)); - gcode.process_subcommands_now(cmd); + void ftm_menu_setShaping(const ftMotionMode_t s) { + fxdTiCtrl.cfg.mode = s; + fxdTiCtrl.refreshShapingN(); ui.go_back(); } @@ -331,17 +330,17 @@ void menu_move() { START_MENU(); BACK_ITEM(MSG_FIXED_TIME_MOTION); - if (mode != ftMotionMode_DISABLED) ACTION_ITEM(MSG_LCD_OFF, []{ _M493_S(ftMotionMode_DISABLED); }); - if (mode != ftMotionMode_ENABLED) ACTION_ITEM(MSG_LCD_ON, []{ _M493_S(ftMotionMode_ENABLED); }); + if (mode != ftMotionMode_DISABLED) ACTION_ITEM(MSG_LCD_OFF, []{ ftm_menu_setShaping(ftMotionMode_DISABLED); }); + if (mode != ftMotionMode_ENABLED) ACTION_ITEM(MSG_LCD_ON, []{ ftm_menu_setShaping(ftMotionMode_ENABLED); }); #if HAS_X_AXIS - if (mode != ftMotionMode_ZV) ACTION_ITEM(MSG_FTM_ZV, []{ _M493_S(ftMotionMode_ZV); }); - if (mode != ftMotionMode_ZVD) ACTION_ITEM(MSG_FTM_ZVD, []{ _M493_S(ftMotionMode_ZVD); }); - if (mode != ftMotionMode_EI) ACTION_ITEM(MSG_FTM_EI, []{ _M493_S(ftMotionMode_EI); }); - if (mode != ftMotionMode_2HEI) ACTION_ITEM(MSG_FTM_2HEI, []{ _M493_S(ftMotionMode_2HEI); }); - if (mode != ftMotionMode_3HEI) ACTION_ITEM(MSG_FTM_3HEI, []{ _M493_S(ftMotionMode_3HEI); }); - if (mode != ftMotionMode_MZV) ACTION_ITEM(MSG_FTM_MZV, []{ _M493_S(ftMotionMode_MZV); }); - //if (mode != ftMotionMode_ULENDO_FBS) ACTION_ITEM(MSG_FTM_ULENDO_FBS, []{ _M493_S(ftMotionMode_ULENDO_FBS); }); - //if (mode != ftMotionMode_DISCTF) ACTION_ITEM(MSG_FTM_DISCTF, []{ _M493_S(ftMotionMode_DISCTF); }); + if (mode != ftMotionMode_ZV) ACTION_ITEM(MSG_FTM_ZV, []{ ftm_menu_setShaping(ftMotionMode_ZV); }); + if (mode != ftMotionMode_ZVD) ACTION_ITEM(MSG_FTM_ZVD, []{ ftm_menu_setShaping(ftMotionMode_ZVD); }); + if (mode != ftMotionMode_EI) ACTION_ITEM(MSG_FTM_EI, []{ ftm_menu_setShaping(ftMotionMode_EI); }); + if (mode != ftMotionMode_2HEI) ACTION_ITEM(MSG_FTM_2HEI, []{ ftm_menu_setShaping(ftMotionMode_2HEI); }); + if (mode != ftMotionMode_3HEI) ACTION_ITEM(MSG_FTM_3HEI, []{ ftm_menu_setShaping(ftMotionMode_3HEI); }); + if (mode != ftMotionMode_MZV) ACTION_ITEM(MSG_FTM_MZV, []{ ftm_menu_setShaping(ftMotionMode_MZV); }); + //if (mode != ftMotionMode_ULENDO_FBS) ACTION_ITEM(MSG_FTM_ULENDO_FBS, []{ ftm_menu_setShaping(ftMotionMode_ULENDO_FBS); }); + //if (mode != ftMotionMode_DISCTF) ACTION_ITEM(MSG_FTM_DISCTF, []{ ftm_menu_setShaping(ftMotionMode_DISCTF); }); #endif END_MENU(); @@ -349,25 +348,18 @@ void menu_move() { #if HAS_DYNAMIC_FREQ - void _M493_D(const dynFreqMode_t d) { - char cmd[10]; - sprintf_P(cmd, PSTR("M493D%i"), int(d)); - gcode.process_subcommands_now(cmd); - ui.go_back(); - } - inline void menu_ftm_dyn_mode() { const dynFreqMode_t dmode = fxdTiCtrl.cfg.dynFreqMode; START_MENU(); BACK_ITEM(MSG_FIXED_TIME_MOTION); - if (dmode != dynFreqMode_DISABLED) ACTION_ITEM(MSG_LCD_OFF, []{ _M493_D(dynFreqMode_DISABLED); }); + if (dmode != dynFreqMode_DISABLED) ACTION_ITEM(MSG_LCD_OFF, []{ fxdTiCtrl.cfg.dynFreqMode = dynFreqMode_DISABLED; ui.go_back(); }); #if HAS_DYNAMIC_FREQ_MM - if (dmode != dynFreqMode_Z_BASED) ACTION_ITEM(MSG_FTM_Z_BASED, []{ _M493_D(dynFreqMode_Z_BASED); }); + if (dmode != dynFreqMode_Z_BASED) ACTION_ITEM(MSG_FTM_Z_BASED, []{ fxdTiCtrl.cfg.dynFreqMode = dynFreqMode_Z_BASED; ui.go_back(); }); #endif #if HAS_DYNAMIC_FREQ_G - if (dmode != dynFreqMode_MASS_BASED) ACTION_ITEM(MSG_FTM_MASS_BASED, []{ _M493_D(dynFreqMode_MASS_BASED); }); + if (dmode != dynFreqMode_MASS_BASED) ACTION_ITEM(MSG_FTM_MASS_BASED, []{ fxdTiCtrl.cfg.dynFreqMode = dynFreqMode_MASS_BASED; ui.go_back(); }); #endif END_MENU(); @@ -409,25 +401,33 @@ void menu_move() { SUBMENU(MSG_FTM_MODE, menu_ftm_mode); MENU_ITEM_ADDON_START_RJ(5); lcd_put_u8str(ftmode); MENU_ITEM_ADDON_END(); - #if HAS_X_AXIS - EDIT_ITEM_FAST_N(float42_52, X_AXIS, MSG_FTM_BASE_FREQ_N, &c.baseFreq[X_AXIS], FTM_MIN_SHAPE_FREQ, (FTM_FS) / 2, fxdTiCtrl.refreshShapingN); - #endif - #if HAS_Y_AXIS - EDIT_ITEM_FAST_N(float42_52, Y_AXIS, MSG_FTM_BASE_FREQ_N, &c.baseFreq[Y_AXIS], FTM_MIN_SHAPE_FREQ, (FTM_FS) / 2, fxdTiCtrl.refreshShapingN); - #endif + if (c.modeHasShaper()) { + #if HAS_X_AXIS + EDIT_ITEM_FAST_N(float42_52, X_AXIS, MSG_FTM_BASE_FREQ_N, &c.baseFreq[X_AXIS], FTM_MIN_SHAPE_FREQ, (FTM_FS) / 2, fxdTiCtrl.refreshShapingN); + #endif + #if HAS_Y_AXIS + EDIT_ITEM_FAST_N(float42_52, Y_AXIS, MSG_FTM_BASE_FREQ_N, &c.baseFreq[Y_AXIS], FTM_MIN_SHAPE_FREQ, (FTM_FS) / 2, fxdTiCtrl.refreshShapingN); + #endif - #if HAS_DYNAMIC_FREQ - if (c.modeHasShaper()) { + EDIT_ITEM_FAST(float42_52, MSG_FTM_ZETA, &c.zeta, 0.0f, 1.0f, fxdTiCtrl.refreshShapingN); + + if (WITHIN(c.mode, ftMotionMode_EI, ftMotionMode_3HEI)) + EDIT_ITEM_FAST(float42_52, MSG_FTM_VTOL, &c.vtol, 0.0f, 1.0f, fxdTiCtrl.refreshShapingN); + + #if HAS_DYNAMIC_FREQ SUBMENU(MSG_FTM_DYN_MODE, menu_ftm_dyn_mode); MENU_ITEM_ADDON_START_RJ(11); lcd_put_u8str(dmode); MENU_ITEM_ADDON_END(); - #if HAS_X_AXIS - EDIT_ITEM_FAST_N(float42_52, X_AXIS, MSG_FTM_DFREQ_K_N, &c.dynFreqK[X_AXIS], 0.0f, 20.0f); - #endif - #if HAS_Y_AXIS - EDIT_ITEM_FAST_N(float42_52, Y_AXIS, MSG_FTM_DFREQ_K_N, &c.dynFreqK[Y_AXIS], 0.0f, 20.0f); - #endif - } - #endif + if (c.dynFreqMode != dynFreqMode_DISABLED) { + #if HAS_X_AXIS + EDIT_ITEM_FAST_N(float42_52, X_AXIS, MSG_FTM_DFREQ_K_N, &c.dynFreqK[X_AXIS], 0.0f, 20.0f); + #endif + #if HAS_Y_AXIS + EDIT_ITEM_FAST_N(float42_52, Y_AXIS, MSG_FTM_DFREQ_K_N, &c.dynFreqK[Y_AXIS], 0.0f, 20.0f); + #endif + } + #endif + } + #if HAS_EXTRUDERS EDIT_ITEM(bool, MSG_LINEAR_ADVANCE, &c.linearAdvEna); EDIT_ITEM(float42_52, MSG_ADVANCE_K, &c.linearAdvK, 0, 10); diff --git a/Marlin/src/module/ft_motion.cpp b/Marlin/src/module/ft_motion.cpp index 6fe8e936e0e5..385d81622e8c 100644 --- a/Marlin/src/module/ft_motion.cpp +++ b/Marlin/src/module/ft_motion.cpp @@ -276,7 +276,7 @@ void FxdTiCtrl::loop() { // Refresh the gains used by shaping functions. // To be called on init or mode or zeta change. - void FxdTiCtrl::Shaping::updateShapingA(const_float_t zeta/*=FTM_SHAPING_ZETA*/, const_float_t vtol/*=FTM_SHAPING_V_TOL*/) { + void FxdTiCtrl::Shaping::updateShapingA(const_float_t zeta/*=cfg.zeta*/, const_float_t vtol/*=cfg.vtol*/) { const float K = exp(-zeta * M_PI / sqrt(1.0f - sq(zeta))), K2 = sq(K); @@ -345,7 +345,7 @@ void FxdTiCtrl::loop() { #endif } - void FxdTiCtrl::updateShapingA(const_float_t zeta/*=FTM_SHAPING_ZETA*/, const_float_t vtol/*=FTM_SHAPING_V_TOL*/) { + void FxdTiCtrl::updateShapingA(const_float_t zeta/*=cfg.zeta*/, const_float_t vtol/*=cfg.vtol*/) { shaping.updateShapingA(zeta, vtol); } @@ -382,7 +382,7 @@ void FxdTiCtrl::loop() { } } - void FxdTiCtrl::updateShapingN(const_float_t xf OPTARG(HAS_Y_AXIS, const_float_t yf), const_float_t zeta/*=FTM_SHAPING_ZETA*/) { + void FxdTiCtrl::updateShapingN(const_float_t xf OPTARG(HAS_Y_AXIS, const_float_t yf), const_float_t zeta/*=cfg.zeta*/) { const float df = sqrt(1.0f - sq(zeta)); shaping.x.updateShapingN(xf, df); TERN_(HAS_Y_AXIS, shaping.y.updateShapingN(yf, df)); diff --git a/Marlin/src/module/ft_motion.h b/Marlin/src/module/ft_motion.h index 2186ecb710a8..d607ac103038 100644 --- a/Marlin/src/module/ft_motion.h +++ b/Marlin/src/module/ft_motion.h @@ -48,6 +48,9 @@ typedef struct FTConfig { { FTM_SHAPING_DEFAULT_X_FREQ OPTARG(HAS_Y_AXIS, FTM_SHAPING_DEFAULT_Y_FREQ) }; #endif + float zeta = FTM_SHAPING_ZETA; // Damping factor + float vtol = FTM_SHAPING_V_TOL; // Vibration Level + #if HAS_DYNAMIC_FREQ dynFreqMode_t dynFreqMode = FTM_DEFAULT_DYNFREQ_MODE; // Dynamic frequency mode configuration. float dynFreqK[1 + ENABLED(HAS_Y_AXIS)] = { 0.0f }; // Scaling / gain for dynamic frequency. [Hz/mm] or [Hz/g] @@ -74,6 +77,9 @@ class FxdTiCtrl { TERN_(HAS_X_AXIS, cfg.baseFreq[X_AXIS] = FTM_SHAPING_DEFAULT_X_FREQ); TERN_(HAS_Y_AXIS, cfg.baseFreq[Y_AXIS] = FTM_SHAPING_DEFAULT_Y_FREQ); + cfg.zeta = FTM_SHAPING_ZETA; + cfg.vtol = FTM_SHAPING_V_TOL; + #if HAS_DYNAMIC_FREQ cfg.dynFreqMode = FTM_DEFAULT_DYNFREQ_MODE; cfg.dynFreqK[X_AXIS] = TERN_(HAS_Y_AXIS, cfg.dynFreqK[Y_AXIS]) = 0.0f; @@ -112,11 +118,11 @@ class FxdTiCtrl { #if HAS_X_AXIS // Refresh the gains used by shaping functions. // To be called on init or mode or zeta change. - static void updateShapingA(const_float_t zeta=FTM_SHAPING_ZETA, const_float_t vtol=FTM_SHAPING_V_TOL); + static void updateShapingA(const_float_t zeta=cfg.zeta, const_float_t vtol=cfg.vtol); // Refresh the indices used by shaping functions. // To be called when frequencies change. - static void updateShapingN(const_float_t xf OPTARG(HAS_Y_AXIS, const_float_t yf), const_float_t zeta=FTM_SHAPING_ZETA); + static void updateShapingN(const_float_t xf OPTARG(HAS_Y_AXIS, const_float_t yf), const_float_t zeta=cfg.zeta); static void refreshShapingN() { updateShapingN(cfg.baseFreq[X_AXIS] OPTARG(HAS_Y_AXIS, cfg.baseFreq[Y_AXIS])); } @@ -181,7 +187,7 @@ class FxdTiCtrl { axis_shaping_t y; #endif - void updateShapingA(const_float_t zeta=FTM_SHAPING_ZETA, const_float_t vtol=FTM_SHAPING_V_TOL); + void updateShapingA(const_float_t zeta=cfg.zeta, const_float_t vtol=cfg.vtol); } shaping_t; diff --git a/Marlin/src/sd/SdBaseFile.cpp b/Marlin/src/sd/SdBaseFile.cpp index 46312bca82fb..7180b675d7fc 100644 --- a/Marlin/src/sd/SdBaseFile.cpp +++ b/Marlin/src/sd/SdBaseFile.cpp @@ -708,7 +708,7 @@ bool SdBaseFile::open(SdBaseFile * const dirFile, const uint8_t dname[11] } // Get LFN sequence number lfnSequenceNumber = pvFat->sequenceNumber & 0x1F; - if WITHIN(lfnSequenceNumber, 1, reqEntriesNum) { + if (WITHIN(lfnSequenceNumber, 1, reqEntriesNum)) { // Check checksum for all other entries with the starting checksum fetched before if (lfnChecksum == pvFat->checksum) { // Set chunk of LFN from VFAT entry into lfnName From 709def5e7baa57911d604ffec701c3ba7ef61ffa Mon Sep 17 00:00:00 2001 From: Aleks <96996458+alx3dev@users.noreply.github.com> Date: Mon, 7 Aug 2023 11:09:26 +0200 Subject: [PATCH 417/427] =?UTF-8?q?=F0=9F=A9=B9=20Fix=20M3=20`uninitialize?= =?UTF-8?q?d`=20warning=20(#26091)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/control/M3-M5.cpp | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/Marlin/src/gcode/control/M3-M5.cpp b/Marlin/src/gcode/control/M3-M5.cpp index 5d5d44e8bfe8..ec24cf8a6585 100644 --- a/Marlin/src/gcode/control/M3-M5.cpp +++ b/Marlin/src/gcode/control/M3-M5.cpp @@ -32,21 +32,18 @@ * Laser: * M3 - Laser ON/Power (Ramped power) * M4 - Laser ON/Power (Ramped power) - * M5 - Set power output to 0 (leaving inline mode unchanged). * * M3I - Enable continuous inline power to be processed by the planner, with power * calculated and set in the planner blocks, processed inline during stepping. - * Within inline mode M3 S-Values will set the power for the next moves e.g. G1 X10 Y10 powers on with the last S-Value. + * In inline mode M3 S-Values will set the power for the next moves. + * (e.g., G1 X10 Y10 powers on with the last S-Value.) * M3I must be set before using planner-synced M3 inline S-Values (LASER_POWER_SYNC). * * M4I - Set dynamic mode which calculates laser power OCR based on the current feedrate. * - * M5I - Clear inline mode and set power to 0. - * * Spindle: * M3 - Spindle ON (Clockwise) * M4 - Spindle ON (Counter-clockwise) - * M5 - Spindle OFF * * Parameters: * S - Set power. S0 will turn the spindle/laser off. @@ -92,19 +89,15 @@ void GcodeSuite::M3_M4(const bool is_M4) { #endif auto get_s_power = [] { - float u; if (parser.seenval('S')) { const float v = parser.value_float(); - u = TERN(LASER_POWER_TRAP, v, cutter.power_to_range(v)); + cutter.menuPower = cutter.unitPower = TERN(LASER_POWER_TRAP, v, cutter.power_to_range(v)); } else if (cutter.cutter_mode == CUTTER_MODE_STANDARD) - u = cutter.cpwr_to_upwr(SPEED_POWER_STARTUP); - - cutter.menuPower = cutter.unitPower = u; + cutter.menuPower = cutter.unitPower = cutter.cpwr_to_upwr(SPEED_POWER_STARTUP); // PWM not implied, power converted to OCR from unit definition and on/off if not PWM. - cutter.power = TERN(SPINDLE_LASER_USE_PWM, cutter.upower_to_ocr(u), u > 0 ? 255 : 0); - return u; + cutter.power = TERN(SPINDLE_LASER_USE_PWM, cutter.upower_to_ocr(cutter.unitPower), cutter.unitPower > 0 ? 255 : 0); }; if (cutter.cutter_mode == CUTTER_MODE_CONTINUOUS || cutter.cutter_mode == CUTTER_MODE_DYNAMIC) { // Laser power in inline mode @@ -138,6 +131,13 @@ void GcodeSuite::M3_M4(const bool is_M4) { /** * M5 - Cutter OFF (when moves are complete) + * + * Laser: + * M5 - Set power output to 0 (leaving inline mode unchanged). + * M5I - Clear inline mode and set power to 0. + * + * Spindle: + * M5 - Spindle OFF */ void GcodeSuite::M5() { planner.synchronize(); From fecadaca82e49c2558b42684382ede121274bfea Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 7 Aug 2023 04:24:04 -0500 Subject: [PATCH 418/427] =?UTF-8?q?=F0=9F=94=A7=20Clarify=20WIFISUPPORT=20?= =?UTF-8?q?(#26097)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Configuration_adv.h | 12 ++++++++---- Marlin/src/inc/SanityCheck.h | 20 ++++++++++++++------ Marlin/src/module/temperature.cpp | 8 ++++++-- buildroot/tests/esp32 | 4 ++-- buildroot/tests/mks_tinybee | 8 +++----- 5 files changed, 33 insertions(+), 19 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 8e66d7555dbf..82cfc99b30ff 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -4222,13 +4222,17 @@ #endif /** - * WiFi Support (Espressif ESP32 WiFi) + * Native ESP32 board with WiFi or add-on ESP32 WiFi-101 module */ -//#define WIFISUPPORT // Marlin embedded WiFi management +//#define WIFISUPPORT // Marlin embedded WiFi management. Not needed for simple WiFi serial port. //#define ESP3D_WIFISUPPORT // ESP3D Library WiFi management (https://github.com/luc-github/ESP3DLib) -#if ANY(WIFISUPPORT, ESP3D_WIFISUPPORT) - //#define WEBSUPPORT // Start a webserver (which may include auto-discovery) +/** + * Extras for an ESP32-based motherboard with WIFISUPPORT + * These options don't apply to add-on WiFi modules based on ESP32 WiFi101. + */ +#if ENABLED(WIFISUPPORT) + //#define WEBSUPPORT // Start a webserver (which may include auto-discovery) using SPIFFS //#define OTASUPPORT // Support over-the-air firmware updates //#define WIFI_CUSTOM_COMMAND // Accept feature config commands (e.g., WiFi ESP3D) from the host diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 4b56204db570..cfc3b20cd501 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -3810,12 +3810,20 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." /** * Sanity check WiFi options */ -#if ENABLED(ESP3D_WIFISUPPORT) && DISABLED(ARDUINO_ARCH_ESP32) - #error "ESP3D_WIFISUPPORT requires an ESP32 MOTHERBOARD." -#elif ENABLED(WEBSUPPORT) && NONE(ARDUINO_ARCH_ESP32, WIFISUPPORT) - #error "WEBSUPPORT requires WIFISUPPORT and an ESP32 MOTHERBOARD." -#elif ALL(ESP3D_WIFISUPPORT, WIFISUPPORT) - #error "Enable only one of ESP3D_WIFISUPPORT or WIFISUPPORT." +#if ALL(WIFISUPPORT, ESP3D_WIFISUPPORT) + #error "Enable only one of WIFISUPPORT or ESP3D_WIFISUPPORT." +#elif ENABLED(ESP3D_WIFISUPPORT) && DISABLED(ARDUINO_ARCH_ESP32) + #error "ESP3D_WIFISUPPORT requires an ESP32 motherboard." +#elif ALL(ARDUINO_ARCH_ESP32, WIFISUPPORT) + #if !(defined(WIFI_SSID) && defined(WIFI_PWD)) + #error "ESP32 motherboard with WIFISUPPORT requires WIFI_SSID and WIFI_PWD." + #endif +#elif ENABLED(WIFI_CUSTOM_COMMAND) + #error "WIFI_CUSTOM_COMMAND requires an ESP32 motherboard and WIFISUPPORT." +#elif ENABLED(OTASUPPORT) + #error "OTASUPPORT requires an ESP32 motherboard and WIFISUPPORT." +#elif defined(WIFI_SSID) || defined(WIFI_PWD) + #error "WIFI_SSID and WIFI_PWD only apply to ESP32 motherboard with WIFISUPPORT." #endif /** diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index c7e35c575457..6139ebe12004 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -3080,7 +3080,9 @@ void Temperature::init() { #if HAS_THERMAL_PROTECTION #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wimplicit-fallthrough" + #if __has_cpp_attribute(fallthrough) + #pragma GCC diagnostic ignored "-Wimplicit-fallthrough" + #endif Temperature::tr_state_machine_t Temperature::tr_state_machine[NR_HEATER_RUNAWAY]; // = { { TRInactive, 0 } }; @@ -3978,7 +3980,9 @@ void Temperature::isr() { switch (adc_sensor_state) { #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wimplicit-fallthrough" + #if __has_cpp_attribute(fallthrough) + #pragma GCC diagnostic ignored "-Wimplicit-fallthrough" + #endif case SensorsReady: { // All sensors have been read. Stay in this state for a few diff --git a/buildroot/tests/esp32 b/buildroot/tests/esp32 index a0f79107cf2f..2229b950c6ea 100755 --- a/buildroot/tests/esp32 +++ b/buildroot/tests/esp32 @@ -12,8 +12,8 @@ set -e restore_configs opt_set MOTHERBOARD BOARD_ESPRESSIF_ESP32 TX_BUFFER_SIZE 64 \ WIFI_SSID '"ssid"' WIFI_PWD '"password"' -opt_enable WIFISUPPORT WEBSUPPORT GCODE_MACROS BAUD_RATE_GCODE M115_GEOMETRY_REPORT REPETIER_GCODE_M360 -exec_test $1 $2 "ESP32 with WIFISUPPORT and WEBSUPPORT" "$3" +opt_enable WIFISUPPORT WEBSUPPORT OTASUPPORT GCODE_MACROS BAUD_RATE_GCODE M115_GEOMETRY_REPORT REPETIER_GCODE_M360 +exec_test $1 $2 "ESP32 with WIFISUPPORT and WEBSUPPORT and OTASUPPORT" "$3" # # Build with TMC drivers using hardware serial diff --git a/buildroot/tests/mks_tinybee b/buildroot/tests/mks_tinybee index 0351946d0aea..d3b258051bc0 100755 --- a/buildroot/tests/mks_tinybee +++ b/buildroot/tests/mks_tinybee @@ -10,11 +10,9 @@ set -e # Build with ESP3D WiFi, OTA and custom WIFI commands support # restore_configs -opt_set MOTHERBOARD BOARD_MKS_TINYBEE TX_BUFFER_SIZE 64 \ - WIFI_SSID '"ssid"' WIFI_PWD '"password"' \ - SERIAL_PORT_2 -1 BAUDRATE_2 250000 -opt_enable ESP3D_WIFISUPPORT WEBSUPPORT OTASUPPORT WIFI_CUSTOM_COMMAND -exec_test $1 "$2" "MKS TinyBee with ESP3D_WIFISUPPORT" "$3" +opt_set MOTHERBOARD BOARD_MKS_TINYBEE TX_BUFFER_SIZE 64 SERIAL_PORT_2 -1 BAUDRATE_2 250000 +opt_enable ESP3D_WIFISUPPORT +exec_test $1 $2 "MKS TinyBee with ESP3D_WIFISUPPORT" "$3" # # Build with LCD, SD support and Speaker support From 4f691e622f3dc1de5a64bcaf42d3de56c9808322 Mon Sep 17 00:00:00 2001 From: Ari-SSO <85907917+Ari-SSO@users.noreply.github.com> Date: Mon, 7 Aug 2023 06:35:22 -0300 Subject: [PATCH 419/427] =?UTF-8?q?=F0=9F=A9=B9=20PROBING=5FTOOL=20followu?= =?UTF-8?q?p=20(#26122)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Followup to #24411 Co-authored-by: Scott Lahteine --- Marlin/src/gcode/calibrate/G33.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Marlin/src/gcode/calibrate/G33.cpp b/Marlin/src/gcode/calibrate/G33.cpp index 10f5afca2db4..23753e077fdc 100644 --- a/Marlin/src/gcode/calibrate/G33.cpp +++ b/Marlin/src/gcode/calibrate/G33.cpp @@ -84,7 +84,7 @@ void ac_setup(const bool reset_bed) { #endif } -void ac_cleanup(TERN_(HAS_MULTI_HOTEND, const uint8_t old_tool_index)) { +void ac_cleanup() { TERN_(DELTA_HOME_TO_SAFE_ZONE, do_blocking_move_to_z(delta_clip_start_height)); TERN_(HAS_BED_PROBE, probe.stow()); restore_feedrate_and_scaling(); @@ -97,7 +97,7 @@ void print_signed_float(FSTR_P const prefix, const_float_t f) { } /** - * - Print the delta settings + * - Print the delta settings */ static void print_calibration_settings(const bool end_stops, const bool tower_angles) { SERIAL_ECHOPGM(".Height:", delta_height); @@ -123,7 +123,7 @@ static void print_calibration_settings(const bool end_stops, const bool tower_an } /** - * - Print the probe results + * - Print the probe results */ static void print_calibration_results(const float z_pt[NPP + 1], const bool tower_points, const bool opposite_points) { SERIAL_ECHOPGM(". "); @@ -147,7 +147,7 @@ static void print_calibration_results(const float z_pt[NPP + 1], const bool towe } /** - * - Calculate the standard deviation from the zero plane + * - Calculate the standard deviation from the zero plane */ static float std_dev_points(float z_pt[NPP + 1], const bool _0p_cal, const bool _1p_cal, const bool _4p_cal, const bool _4p_opp) { if (!_0p_cal) { @@ -165,7 +165,7 @@ static float std_dev_points(float z_pt[NPP + 1], const bool _0p_cal, const bool } /** - * - Probe a point + * - Probe a point */ static float calibration_probe(const xy_pos_t &xy, const bool stow, const bool probe_at_offset) { #if HAS_BED_PROBE @@ -177,7 +177,7 @@ static float calibration_probe(const xy_pos_t &xy, const bool stow, const bool p } /** - * - Probe a grid + * - Probe a grid */ static bool probe_calibration_points(float z_pt[NPP + 1], const int8_t probe_points, const float dcr, const bool towers_set, const bool stow_after_each, const bool probe_at_offset) { const bool _0p_calibration = probe_points == 0, @@ -501,7 +501,7 @@ void GcodeSuite::G33() { zero_std_dev_old = zero_std_dev; if (!probe_calibration_points(z_at_pt, probe_points, dcr, towers_set, stow_after_each, probe_at_offset)) { SERIAL_ECHOLNPGM("Correct delta settings with M665 and M666"); - return ac_cleanup(TERN_(HAS_MULTI_HOTEND, old_tool_index)); + return ac_cleanup(); } zero_std_dev = std_dev_points(z_at_pt, _0p_calibration, _1p_calibration, _4p_calibration, _4p_opposite_points); @@ -678,7 +678,7 @@ void GcodeSuite::G33() { } while (((zero_std_dev < test_precision && iterations < 31) || iterations <= force_iterations) && zero_std_dev > calibration_precision); - ac_cleanup(TERN_(HAS_MULTI_HOTEND, old_tool_index)); + ac_cleanup(); TERN_(FULL_REPORT_TO_HOST_FEATURE, set_and_report_grblstate(M_IDLE)); #if HAS_DELTA_SENSORLESS_PROBING From ca0209b868be80d1438e1d695e2f103ab1025f92 Mon Sep 17 00:00:00 2001 From: Keith Bennett <13375512+thisiskeithb@users.noreply.github.com> Date: Mon, 7 Aug 2023 14:00:50 -0700 Subject: [PATCH 420/427] =?UTF-8?q?=F0=9F=94=A8=20Fix=20USB=20FD=20env=20n?= =?UTF-8?q?ames=20(#26131)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/pins/pins.h | 6 +++--- ini/renamed.ini | 15 ++++++++++++--- ini/stm32f1-maple.ini | 4 ++-- ini/stm32f1.ini | 4 ++-- ini/stm32f4.ini | 6 +++--- 5 files changed, 22 insertions(+), 13 deletions(-) diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index b823f480d732..fe356520d8f7 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -739,11 +739,11 @@ #elif MB(BTT_SKR_V2_0_REV_B) #include "stm32f4/pins_BTT_SKR_V2_0_REV_B.h" // STM32F4 env:BIGTREE_SKR_2 env:BIGTREE_SKR_2_USB env:BIGTREE_SKR_2_USB_debug env:BIGTREE_SKR_2_F429 env:BIGTREE_SKR_2_F429_USB env:BIGTREE_SKR_2_F429_USB_debug #elif MB(BTT_OCTOPUS_V1_0) - #include "stm32f4/pins_BTT_OCTOPUS_V1_0.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_USB + #include "stm32f4/pins_BTT_OCTOPUS_V1_0.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_usb_flash_drive #elif MB(BTT_OCTOPUS_V1_1) - #include "stm32f4/pins_BTT_OCTOPUS_V1_1.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_USB env:STM32F429ZG_btt env:STM32F429ZG_btt_USB env:STM32F407ZE_btt env:STM32F407ZE_btt_USB + #include "stm32f4/pins_BTT_OCTOPUS_V1_1.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_usb_flash_drive env:STM32F429ZG_btt env:STM32F429ZG_btt_usb_flash_drive env:STM32F407ZE_btt env:STM32F407ZE_btt_usb_flash_drive #elif MB(BTT_OCTOPUS_PRO_V1_0) - #include "stm32f4/pins_BTT_OCTOPUS_PRO_V1_0.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_USB env:STM32F429ZG_btt env:STM32F429ZG_btt_USB env:STM32H723ZE_btt + #include "stm32f4/pins_BTT_OCTOPUS_PRO_V1_0.h" // STM32F4 env:STM32F446ZE_btt env:STM32F446ZE_btt_usb_flash_drive env:STM32F429ZG_btt env:STM32F429ZG_btt_usb_flash_drive env:STM32H723ZE_btt #elif MB(LERDGE_K) #include "stm32f4/pins_LERDGE_K.h" // STM32F4 env:LERDGEK env:LERDGEK_usb_flash_drive #elif MB(LERDGE_S) diff --git a/ini/renamed.ini b/ini/renamed.ini index 91ac55f5b251..84f6acd7fab9 100644 --- a/ini/renamed.ini +++ b/ini/renamed.ini @@ -63,19 +63,19 @@ extends = renamed [env:BIGTREE_OCTOPUS_V1] ;=> STM32F446ZE_btt extends = renamed -[env:BIGTREE_OCTOPUS_V1_USB] ;=> STM32F446ZE_btt_USB +[env:BIGTREE_OCTOPUS_V1_USB] ;=> STM32F446ZE_btt_usb_flash_drive extends = renamed [env:BIGTREE_OCTOPUS_PRO_V1_F429] ;=> STM32F429ZG_btt extends = renamed -[env:BIGTREE_OCTOPUS_PRO_V1_F429_USB] ;=> STM32F429ZG_btt_USB +[env:BIGTREE_OCTOPUS_PRO_V1_F429_USB] ;=> STM32F429ZG_btt_usb_flash_drive extends = renamed [env:BIGTREE_OCTOPUS_V1_F407] ;=> STM32F407ZE_btt extends = renamed -[env:BIGTREE_OCTOPUS_V1_F407_USB] ;=> STM32F407ZE_btt_USB +[env:BIGTREE_OCTOPUS_V1_F407_USB] ;=> STM32F407ZE_btt_usb_flash_drive extends = renamed [env:STM32H723Vx_btt] ;=> STM32H723VG_btt @@ -86,3 +86,12 @@ extends = renamed [env:STM32H743Vx_btt] ;=> STM32H743VI_btt extends = renamed + +[env:STM32F446ZE_btt_USB] ;=> STM32F446ZE_btt_usb_flash_drive +extends = renamed + +[env:STM32F429ZG_btt_USB] ;=> STM32F429ZG_btt_usb_flash_drive +extends = renamed + +[env:STM32F407ZE_btt_USB] ;=> STM32F407ZE_btt_usb_flash_drive +extends = renamed diff --git a/ini/stm32f1-maple.ini b/ini/stm32f1-maple.ini index 0a8453f3076f..b9d9198e3255 100644 --- a/ini/stm32f1-maple.ini +++ b/ini/stm32f1-maple.ini @@ -95,7 +95,7 @@ upload_protocol = serial # BigTreeTech SKR Mini V1.1 / SKR Mini E3 & MZ (STM32F103RCT6 ARM Cortex-M3) # # STM32F103RC_btt_maple ............. RCT6 with 256K -# STM32F103RC_btt_USB_maple ......... RCT6 with 256K (USB mass storage) +# STM32F103RC_btt_USB_maple ......... RCT6 with 256K with USB Media Share Support # [env:STM32F103RC_btt_maple] extends = env:STM32F103RC_maple @@ -146,7 +146,7 @@ board_build.ldscript = crealityPro.ld # BigTreeTech SKR Mini E3 V2.0 & DIP / SKR CR6 (STM32F103RET6 ARM Cortex-M3) # # STM32F103RE_btt_maple ............. RET6 -# STM32F103RE_btt_USB_maple ......... RET6 (USB mass storage) +# STM32F103RE_btt_USB_maple ......... RET6 with USB Media Share Support # [env:STM32F103RE_btt_maple] extends = env:STM32F103RE_maple diff --git a/ini/stm32f1.ini b/ini/stm32f1.ini index 08686a1fb475..35a4dc4078e5 100644 --- a/ini/stm32f1.ini +++ b/ini/stm32f1.ini @@ -54,7 +54,7 @@ monitor_speed = 115200 # BigTreeTech SKR Mini V1.1 / SKR Mini E3 & MZ (STM32F103RCT6 ARM Cortex-M3) # # STM32F103RC_btt ............. RCT6 with 256K -# STM32F103RC_btt_USB ......... RCT6 with 256K (USB mass storage) +# STM32F103RC_btt_USB ......... RCT6 with 256K with USB Media Share Support # [env:STM32F103RC_btt] extends = common_STM32F103RC_variant @@ -206,7 +206,7 @@ build_flags = ${stm32_variant.build_flags} # BigTreeTech SKR Mini E3 V2.0 & DIP / SKR CR6 (STM32F103RET6 ARM Cortex-M3) # # STM32F103RE_btt ............. RET6 -# STM32F103RE_btt_USB ......... RET6 (USB mass storage) +# STM32F103RE_btt_USB ......... RET6 with USB Media Share Support # [env:STM32F103RE_btt] extends = stm32_variant diff --git a/ini/stm32f4.ini b/ini/stm32f4.ini index 8708a6dbcacd..bb594b97f909 100644 --- a/ini/stm32f4.ini +++ b/ini/stm32f4.ini @@ -283,7 +283,7 @@ build_flags = ${stm32_variant.build_flags} # # BigTreeTech Octopus V1.0/1.1 / Octopus Pro V1.0 (STM32F446ZET6 ARM Cortex-M4) with USB Flash Drive Support # -[env:STM32F446ZE_btt_USB] +[env:STM32F446ZE_btt_usb_flash_drive] extends = env:STM32F446ZE_btt platform_packages = ${stm_flash_drive.platform_packages} build_unflags = -DUSBD_USE_CDC @@ -309,7 +309,7 @@ build_flags = ${stm32_variant.build_flags} # # BigTreeTech Octopus V1.1 / Octopus Pro V1.0 (STM32F429ZGT6 ARM Cortex-M4) with USB Flash Drive Support # -[env:STM32F429ZG_btt_USB] +[env:STM32F429ZG_btt_usb_flash_drive] extends = env:STM32F429ZG_btt platform_packages = ${stm_flash_drive.platform_packages} build_unflags = -DUSBD_USE_CDC @@ -331,7 +331,7 @@ build_flags = ${stm32_variant.build_flags} # # BigTreeTech Octopus / Octopus Pro (STM32F407ZET6 ARM Cortex-M4) with USB Flash Drive Support # -[env:STM32F407ZE_btt_USB] +[env:STM32F407ZE_btt_usb_flash_drive] extends = env:STM32F407ZE_btt platform_packages = ${stm_flash_drive.platform_packages} build_unflags = -DUSBD_USE_CDC From 88f5e2c6394cde42969fd4a21ba579cf2cd2db77 Mon Sep 17 00:00:00 2001 From: Miguel Risco-Castillo Date: Mon, 7 Aug 2023 16:11:12 -0500 Subject: [PATCH 421/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20UBL=20probe=5Fenti?= =?UTF-8?q?re=5Fmesh=20skips=20points=20(#26141)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes #26132 --- Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp index 6f5187cc9f39..ed4363acbc0a 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp +++ b/Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp @@ -786,14 +786,18 @@ void unified_bed_leveling::shift_mesh_height() { } #endif - best = do_furthest + #ifndef HUGE_VALF + #define HUGE_VALF (10e100F) + #endif + + best = do_furthest // Points with valid data or HUGE_VALF are skipped ? find_furthest_invalid_mesh_point() : find_closest_mesh_point_of_type(INVALID, nearby, true); if (best.pos.x >= 0) { // mesh point found and is reachable by probe TERN_(EXTENSIBLE_UI, ExtUI::onMeshUpdate(best.pos, ExtUI::G29_POINT_START)); const float measured_z = probe.probe_at_point(best.meshpos(), stow_probe ? PROBE_PT_STOW : PROBE_PT_RAISE, param.V_verbosity); - z_values[best.pos.x][best.pos.y] = measured_z; + z_values[best.pos.x][best.pos.y] = isnan(measured_z) ? HUGE_VALF : measured_z; // Mark invalid point already probed with HUGE_VALF to omit it in the next loop #if ENABLED(EXTENSIBLE_UI) ExtUI::onMeshUpdate(best.pos, ExtUI::G29_POINT_FINISH); ExtUI::onMeshUpdate(best.pos, measured_z); @@ -803,6 +807,8 @@ void unified_bed_leveling::shift_mesh_height() { } while (best.pos.x >= 0 && --count); + GRID_LOOP(x, y) if (z_values[x][y] == HUGE_VALF) z_values[x][y] = NAN; // Restore NAN for HUGE_VALF marks + TERN_(EXTENSIBLE_UI, ExtUI::onMeshUpdate(best.pos, ExtUI::G29_FINISH)); // Release UI during stow to allow for PAUSE_BEFORE_DEPLOY_STOW From 867f5e90697451429ae2fa7760089d165f9319eb Mon Sep 17 00:00:00 2001 From: Miguel Risco-Castillo Date: Mon, 7 Aug 2023 16:16:33 -0500 Subject: [PATCH 422/427] =?UTF-8?q?=F0=9F=9A=B8=20UI=20Sound=20off/on=20wi?= =?UTF-8?q?th=20M300=20E<0|1>=20(#26142)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/gcode/lcd/M300.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Marlin/src/gcode/lcd/M300.cpp b/Marlin/src/gcode/lcd/M300.cpp index 7ee811f0bdce..2658b52a7ce4 100644 --- a/Marlin/src/gcode/lcd/M300.cpp +++ b/Marlin/src/gcode/lcd/M300.cpp @@ -34,8 +34,19 @@ * * S - (Hz) The frequency of the tone. 0 for silence. * P - (ms) The duration of the tone. + * + * With SOUND_MENU_ITEM: + * E<0|1> - Mute or enable sound */ void GcodeSuite::M300() { + + #if ENABLED(SOUND_MENU_ITEM) + if (parser.seen('E')) { + ui.sound_on = parser.value_bool(); + return; + } + #endif + const uint16_t frequency = parser.ushortval('S', 260); uint16_t duration = parser.ushortval('P', 1000); From f338f65bdfc7e6b629e939db49dbe6f6731986de Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Mon, 7 Aug 2023 23:51:22 +0200 Subject: [PATCH 423/427] =?UTF-8?q?=F0=9F=9A=B8=20Adjust=20ColorUI=20chamb?= =?UTF-8?q?er=20bmp=20(#26149)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/src/lcd/dogm/status/chamber.h | 48 ++++++++++++++-------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/Marlin/src/lcd/dogm/status/chamber.h b/Marlin/src/lcd/dogm/status/chamber.h index 787a90884ae8..9b8cc7a0a063 100644 --- a/Marlin/src/lcd/dogm/status/chamber.h +++ b/Marlin/src/lcd/dogm/status/chamber.h @@ -41,32 +41,32 @@ #ifdef STATUS_CHAMBER_ANIM const unsigned char status_chamber_bmp[] PROGMEM = { - B00011111,B11111111,B11111000, - B00010000,B00000000,B00001000, - B00010000,B00000000,B00001000, - B00010000,B00000000,B00001000, - B00010000,B00000000,B00001000, - B00010000,B00000000,B00001000, - B00010000,B00000000,B00001000, - B00010000,B00000000,B00001000, - B00010000,B00000000,B00001000, - B00010000,B00000000,B00001000, - B00011111,B11111111,B11111000, - B00011111,B11111111,B11111000 + B00001111,B11111111,B11111000, + B00001000,B00000000,B00001000, + B00001000,B00000000,B00001000, + B00001000,B00000000,B00001000, + B00001000,B00000000,B00001000, + B00001000,B00000000,B00001000, + B00001000,B00000000,B00001000, + B00001000,B00000000,B00001000, + B00001000,B00000000,B00001000, + B00001000,B00000000,B00001000, + B00001111,B11111111,B11111000, + B00001111,B11111111,B11111000 }; const unsigned char status_chamber_on_bmp[] PROGMEM = { - B00011111,B11111111,B11111000, - B00010000,B00000000,B00001000, - B00010000,B10000100,B00001000, - B00010000,B01000010,B00001000, - B00010000,B01000010,B00001000, - B00010000,B10000100,B00001000, - B00010001,B00001000,B00001000, - B00010001,B00001000,B00001000, - B00010000,B10000100,B00001000, - B00010000,B00000000,B00001000, - B00011111,B11111111,B11111000, - B00011111,B11111111,B11111000 + B00001111,B11111111,B11111000, + B00001000,B00000000,B00001000, + B00001000,B10000100,B00001000, + B00001000,B01000010,B00001000, + B00001000,B01000010,B00001000, + B00001000,B10000100,B00001000, + B00001001,B00001000,B00001000, + B00001001,B00001000,B00001000, + B00001000,B10000100,B00001000, + B00001000,B00000000,B00001000, + B00001111,B11111111,B11111000, + B00001111,B11111111,B11111000 }; #else From fd41757aef29c167fb8284ff8a8fc94ef566018a Mon Sep 17 00:00:00 2001 From: EvilGremlin <22657714+EvilGremlin@users.noreply.github.com> Date: Tue, 8 Aug 2023 00:54:27 +0300 Subject: [PATCH 424/427] =?UTF-8?q?=F0=9F=90=9B=20Fix=20MKS=20Robin=20Mini?= =?UTF-8?q?=20servo=20timer=20(#26150)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ini/stm32f1.ini | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ini/stm32f1.ini b/ini/stm32f1.ini index 35a4dc4078e5..2eab5d6f46e2 100644 --- a/ini/stm32f1.ini +++ b/ini/stm32f1.ini @@ -302,7 +302,8 @@ build_unflags = ${mks_robin_nano_v1v2_common.build_unflags} -DUSBC [env:mks_robin_mini] extends = STM32F103VE_robin board_build.encrypt_mks = Robin_mini.bin -build_unflags = ${STM32F103VE_robin.build_unflags} -DSS_TIMER=4 +build_unflags = ${STM32F103VE_robin.build_unflags} -DSS_TIMER=4 -DTIMER_SERVO=TIM2 +build_flags = ${STM32F103VE_robin.build_flags} -DTIMER_SERVO=TIM1 # # MKS Robin E3p (STM32F103VET6) From 2bac7835e801c413c3d9e75a1dbe3e94dc689f3d Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Tue, 8 Aug 2023 00:22:24 +0000 Subject: [PATCH 425/427] [cron] Bump distribution date (2023-08-08) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index c8fe764a0e01..5a80e1242efe 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-08-07" +//#define STRING_DISTRIBUTION_DATE "2023-08-08" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index bc7b53a84393..f681a9e7b08e 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-08-07" + #define STRING_DISTRIBUTION_DATE "2023-08-08" #endif /** From 6af6060aa0240ccc03020edba661fe42125d3713 Mon Sep 17 00:00:00 2001 From: Martin Turski Date: Sun, 13 Aug 2023 22:57:38 +0200 Subject: [PATCH 426/427] =?UTF-8?q?=F0=9F=94=A7=20Configurable=20SD=20card?= =?UTF-8?q?=20retry/timeout=20(#25340)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Scott Lahteine --- Marlin/src/HAL/STM32/msc_sd.cpp | 66 ++++++---- Marlin/src/sd/Sd2Card.cpp | 208 +++++++++++++++++++++++--------- Marlin/src/sd/Sd2Card.h | 5 - 3 files changed, 193 insertions(+), 86 deletions(-) diff --git a/Marlin/src/HAL/STM32/msc_sd.cpp b/Marlin/src/HAL/STM32/msc_sd.cpp index a40bec9d644d..f03f533a7195 100644 --- a/Marlin/src/HAL/STM32/msc_sd.cpp +++ b/Marlin/src/HAL/STM32/msc_sd.cpp @@ -33,6 +33,12 @@ #define BLOCK_SIZE 512 #define PRODUCT_ID 0x29 +#ifndef SD_MULTIBLOCK_RETRY_CNT + #define SD_MULTIBLOCK_RETRY_CNT 1 +#elif SD_MULTIBLOCK_RETRY_CNT < 1 + #error "SD_MULTIBLOCK_RETRY_CNT must be greater than or equal to 1." +#endif + class Sd2CardUSBMscHandler : public USBMscHandler { public: DiskIODriver* diskIODriver() { @@ -58,19 +64,29 @@ class Sd2CardUSBMscHandler : public USBMscHandler { // single block if (blkLen == 1) { hal.watchdog_refresh(); - sd2card->writeBlock(blkAddr, pBuf); - return true; + return sd2card->writeBlock(blkAddr, pBuf); } // multi block optimization - sd2card->writeStart(blkAddr, blkLen); - while (blkLen--) { - hal.watchdog_refresh(); - sd2card->writeData(pBuf); - pBuf += BLOCK_SIZE; + bool done = false; + for (uint16_t rcount = SD_MULTIBLOCK_RETRY_CNT; !done && rcount--;) { + uint8_t *cBuf = pBuf; + sd2card->writeStart(blkAddr); + bool okay = true; // Assume success + for (uint32 i = blkLen; i--;) { + hal.watchdog_refresh(); + if (!sd2card->writeData(cBuf)) { // Write. Did it fail? + sd2card->writeStop(); // writeStop for new writeStart + okay = false; // Failed, so retry + break; // Go to while... below + } + cBuf += BLOCK_SIZE; + } + done = okay; // Done if no error occurred } - sd2card->writeStop(); - return true; + + if (done) sd2card->writeStop(); + return done; } bool Read(uint8_t *pBuf, uint32_t blkAddr, uint16_t blkLen) { @@ -78,24 +94,32 @@ class Sd2CardUSBMscHandler : public USBMscHandler { // single block if (blkLen == 1) { hal.watchdog_refresh(); - sd2card->readBlock(blkAddr, pBuf); - return true; + return sd2card->readBlock(blkAddr, pBuf); } // multi block optimization - sd2card->readStart(blkAddr); - while (blkLen--) { - hal.watchdog_refresh(); - sd2card->readData(pBuf); - pBuf += BLOCK_SIZE; + bool done = false; + for (uint16_t rcount = SD_MULTIBLOCK_RETRY_CNT; !done && rcount--;) { + uint8_t *cBuf = pBuf; + sd2card->readStart(blkAddr); + bool okay = true; // Assume success + for (uint32 i = blkLen; i--;) { + hal.watchdog_refresh(); + if (!sd2card->readData(cBuf)) { // Read. Did it fail? + sd2card->readStop(); // readStop for new readStart + okay = false; // Failed, so retry + break; // Go to while... below + } + cBuf += BLOCK_SIZE; + } + done = okay; // Done if no error occurred } - sd2card->readStop(); - return true; - } - bool IsReady() { - return diskIODriver()->isReady(); + if (done) sd2card->readStop(); + return done; } + + bool IsReady() { return diskIODriver()->isReady(); } }; Sd2CardUSBMscHandler usbMscHandler; diff --git a/Marlin/src/sd/Sd2Card.cpp b/Marlin/src/sd/Sd2Card.cpp index 7deebd4776a2..25fc35e6ab93 100644 --- a/Marlin/src/sd/Sd2Card.cpp +++ b/Marlin/src/sd/Sd2Card.cpp @@ -40,6 +40,37 @@ #include "../MarlinCore.h" +#if DISABLED(SD_NO_DEFAULT_TIMEOUT) + #ifndef SD_INIT_TIMEOUT + #define SD_INIT_TIMEOUT 2000u // (ms) Init timeout + #elif SD_INIT_TIMEOUT < 0 + #error "SD_INIT_TIMEOUT must be greater than or equal to 0." + #endif + #ifndef SD_ERASE_TIMEOUT + #define SD_ERASE_TIMEOUT 10000u // (ms) Erase timeout + #elif SD_ERASE_TIMEOUT < 0 + #error "SD_ERASE_TIMEOUT must be greater than or equal to 0." + #endif + #ifndef SD_READ_TIMEOUT + #define SD_READ_TIMEOUT 300u // (ms) Read timeout + #elif SD_READ_TIMEOUT < 0 + #error "SD_READ_TIMEOUT must be greater than or equal to 0." + #endif + #ifndef SD_WRITE_TIMEOUT + #define SD_WRITE_TIMEOUT 600u // (ms) Write timeout + #elif SD_WRITE_TIMEOUT < 0 + #error "SD_WRITE_TIMEOUT must be greater than or equal to 0." + #endif +#endif // SD_NO_DEFAULT_TIMEOUT + +#if ENABLED(SD_CHECK_AND_RETRY) + #ifndef SD_RETRY_COUNT + #define SD_RETRY_COUNT 3 + #elif SD_RETRY_COUNT < 1 + #error "SD_RETRY_COUNT must be greater than or equal to 1." + #endif +#endif + #if ENABLED(SD_CHECK_AND_RETRY) static bool crcSupported = true; @@ -97,15 +128,16 @@ uint8_t DiskIODriver_SPI_SD::cardCommand(const uint8_t cmd, const uint32_t arg) // Select card chipSelect(); - // Wait up to 300 ms if busy - waitNotBusy(SD_WRITE_TIMEOUT); + #if SD_WRITE_TIMEOUT + waitNotBusy(SD_WRITE_TIMEOUT); // Wait up to 600 ms (by default) if busy + #endif uint8_t *pa = (uint8_t *)(&arg); #if ENABLED(SD_CHECK_AND_RETRY) // Form message - uint8_t d[6] = {(uint8_t) (cmd | 0x40), pa[3], pa[2], pa[1], pa[0] }; + uint8_t d[6] = { uint8_t(cmd | 0x40), pa[3], pa[2], pa[1], pa[0] }; // Add crc d[5] = CRC7(d, 5); @@ -186,33 +218,42 @@ void DiskIODriver_SPI_SD::chipSelect() { bool DiskIODriver_SPI_SD::erase(uint32_t firstBlock, uint32_t lastBlock) { if (ENABLED(SDCARD_READONLY)) return false; - csd_t csd; - if (!readCSD(&csd)) goto FAIL; - - // check for single block erase - if (!csd.v1.erase_blk_en) { - // erase size mask - uint8_t m = (csd.v1.sector_size_high << 1) | csd.v1.sector_size_low; - if ((firstBlock & m) != 0 || ((lastBlock + 1) & m) != 0) { - // error card can't erase specified area - error(SD_CARD_ERROR_ERASE_SINGLE_BLOCK); - goto FAIL; + bool success = false; + do { + + csd_t csd; + if (!readCSD(&csd)) break; + + // check for single block erase + if (!csd.v1.erase_blk_en) { + // erase size mask + uint8_t m = (csd.v1.sector_size_high << 1) | csd.v1.sector_size_low; + if ((firstBlock & m) || ((lastBlock + 1) & m)) { + // error card can't erase specified area + error(SD_CARD_ERROR_ERASE_SINGLE_BLOCK); + break; + } } - } - if (type_ != SD_CARD_TYPE_SDHC) { firstBlock <<= 9; lastBlock <<= 9; } - if (cardCommand(CMD32, firstBlock) || cardCommand(CMD33, lastBlock) || cardCommand(CMD38, 0)) { - error(SD_CARD_ERROR_ERASE); - goto FAIL; - } - if (!waitNotBusy(SD_ERASE_TIMEOUT)) { - error(SD_CARD_ERROR_ERASE_TIMEOUT); - goto FAIL; - } - chipDeselect(); - return true; - FAIL: + if (type_ != SD_CARD_TYPE_SDHC) { firstBlock <<= 9; lastBlock <<= 9; } + if (cardCommand(CMD32, firstBlock) || cardCommand(CMD33, lastBlock) || cardCommand(CMD38, 0)) { + error(SD_CARD_ERROR_ERASE); + break; + } + #if SD_ERASE_TIMEOUT + if (!waitNotBusy(SD_ERASE_TIMEOUT)) { + error(SD_CARD_ERROR_ERASE_TIMEOUT); + break; + } + #else + while (spiRec() != 0xFF) {} + #endif + + success = true; + + } while (0); + chipDeselect(); - return false; + return success; } /** @@ -245,8 +286,15 @@ bool DiskIODriver_SPI_SD::init(const uint8_t sckRateID, const pin_t chipSelectPi errorCode_ = type_ = 0; chipSelectPin_ = chipSelectPin; + // 16-bit init start time allows over a minute - const millis_t init_timeout = millis() + SD_INIT_TIMEOUT; + #if SD_INIT_TIMEOUT + const millis_t init_timeout = millis() + SD_INIT_TIMEOUT; + #define INIT_TIMEOUT() ELAPSED(millis(), init_timeout) + #else + #define INIT_TIMEOUT() false + #endif + uint32_t arg; hal.watchdog_refresh(); // In case init takes too long @@ -274,7 +322,7 @@ bool DiskIODriver_SPI_SD::init(const uint8_t sckRateID, const pin_t chipSelectPi // Command to go idle in SPI mode while ((status_ = cardCommand(CMD0, 0)) != R1_IDLE_STATE) { - if (ELAPSED(millis(), init_timeout)) { + if (INIT_TIMEOUT()) { error(SD_CARD_ERROR_CMD0); goto FAIL; } @@ -300,7 +348,7 @@ bool DiskIODriver_SPI_SD::init(const uint8_t sckRateID, const pin_t chipSelectPi break; } - if (ELAPSED(millis(), init_timeout)) { + if (INIT_TIMEOUT()) { error(SD_CARD_ERROR_CMD8); goto FAIL; } @@ -312,11 +360,12 @@ bool DiskIODriver_SPI_SD::init(const uint8_t sckRateID, const pin_t chipSelectPi arg = type() == SD_CARD_TYPE_SD2 ? 0x40000000 : 0; while ((status_ = cardAcmd(ACMD41, arg)) != R1_READY_STATE) { // Check for timeout - if (ELAPSED(millis(), init_timeout)) { + if (INIT_TIMEOUT()) { error(SD_CARD_ERROR_ACMD41); goto FAIL; } } + // If SD2 read OCR register to check for SDHC card if (type() == SD_CARD_TYPE_SD2) { if (cardCommand(CMD58, 0)) { @@ -327,6 +376,7 @@ bool DiskIODriver_SPI_SD::init(const uint8_t sckRateID, const pin_t chipSelectPi // Discard rest of ocr - contains allowed voltage range for (uint8_t i = 0; i < 3; ++i) spiRec(); } + chipDeselect(); ready = true; @@ -353,7 +403,7 @@ bool DiskIODriver_SPI_SD::readBlock(uint32_t blockNumber, uint8_t * const dst) { if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; // Use address if not SDHC card #if ENABLED(SD_CHECK_AND_RETRY) - uint8_t retryCnt = 3; + uint8_t retryCnt = SD_RETRY_COUNT; for (;;) { if (cardCommand(CMD17, blockNumber)) error(SD_CARD_ERROR_CMD17); @@ -458,9 +508,15 @@ bool DiskIODriver_SPI_SD::readData(uint8_t * const dst) { bool DiskIODriver_SPI_SD::readData(uint8_t * const dst, const uint16_t count) { bool success = false; - const millis_t read_timeout = millis() + SD_READ_TIMEOUT; + #if SD_READ_TIMEOUT + const millis_t read_timeout = millis() + SD_READ_TIMEOUT; + #define READ_TIMEOUT() ELAPSED(millis(), read_timeout) + #else + #define READ_TIMEOUT() false + #endif + while ((status_ = spiRec()) == 0xFF) { // Wait for start block token - if (ELAPSED(millis(), read_timeout)) { + if (READ_TIMEOUT()) { error(SD_CARD_ERROR_READ_TIMEOUT); goto FAIL; } @@ -469,7 +525,7 @@ bool DiskIODriver_SPI_SD::readData(uint8_t * const dst, const uint16_t count) { if (status_ == DATA_START_BLOCK) { spiRead(dst, count); // Transfer data - const uint16_t recvCrc = (spiRec() << 8) | spiRec(); + const uint16_t recvCrc = ((uint16_t)spiRec() << 8) | (uint16_t)spiRec(); #if ENABLED(SD_CHECK_AND_RETRY) success = !crcSupported || recvCrc == CRC_CCITT(dst, count); if (!success) error(SD_CARD_ERROR_READ_CRC); @@ -574,20 +630,23 @@ bool DiskIODriver_SPI_SD::writeBlock(uint32_t blockNumber, const uint8_t * const return 0 == SDHC_CardWriteBlock(src, blockNumber); #endif - bool success = false; - if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; // Use address if not SDHC card - if (!cardCommand(CMD24, blockNumber)) { - if (writeData(DATA_START_BLOCK, src)) { - if (waitNotBusy(SD_WRITE_TIMEOUT)) { // Wait for flashing to complete - success = !(cardCommand(CMD13, 0) || spiRec()); // Response is r2 so get and check two bytes for nonzero - if (!success) error(SD_CARD_ERROR_WRITE_PROGRAMMING); - } - else - error(SD_CARD_ERROR_WRITE_TIMEOUT); + if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; // Use address if not SDHC card + bool success = !cardCommand(CMD24, blockNumber); + if (!success) { + error(SD_CARD_ERROR_CMD24); + } + else if (writeData(DATA_START_BLOCK, src)) { + #if SD_WRITE_TIMEOUT + success = waitNotBusy(SD_WRITE_TIMEOUT); // Wait for flashing to complete + if (!success) error(SD_CARD_ERROR_WRITE_TIMEOUT); + #else + while (spiRec() != 0xFF) {} + #endif + if (success) { + success = !(cardCommand(CMD13, 0) || spiRec()); // Response is r2 so get and check two bytes for nonzero + if (!success) error(SD_CARD_ERROR_WRITE_PROGRAMMING); } } - else - error(SD_CARD_ERROR_CMD24); chipDeselect(); return success; @@ -601,13 +660,25 @@ bool DiskIODriver_SPI_SD::writeBlock(uint32_t blockNumber, const uint8_t * const bool DiskIODriver_SPI_SD::writeData(const uint8_t * const src) { if (ENABLED(SDCARD_READONLY)) return false; - bool success = true; chipSelect(); - // Wait for previous write to finish - if (!waitNotBusy(SD_WRITE_TIMEOUT) || !writeData(WRITE_MULTIPLE_TOKEN, src)) { - error(SD_CARD_ERROR_WRITE_MULTIPLE); - success = false; - } + + bool success = false; + do { + + // Wait for previous write to finish + #if SD_WRITE_TIMEOUT + if (!waitNotBusy(SD_WRITE_TIMEOUT)) { + error(SD_CARD_ERROR_WRITE_MULTIPLE); + break; + } + #else + while (spiRec() != 0xFF) {} + #endif + + success = writeData(WRITE_MULTIPLE_TOKEN, src); + + } while (0); + chipDeselect(); return success; } @@ -665,14 +736,31 @@ bool DiskIODriver_SPI_SD::writeStart(uint32_t blockNumber, const uint32_t eraseC bool DiskIODriver_SPI_SD::writeStop() { if (ENABLED(SDCARD_READONLY)) return false; - bool success = false; chipSelect(); - if (waitNotBusy(SD_WRITE_TIMEOUT)) { + + bool success = false; + do { + + #if SD_WRITE_TIMEOUT + if (!waitNotBusy(SD_WRITE_TIMEOUT)) { + error(SD_CARD_ERROR_STOP_TRAN); + break; + } + #else + while (spiRec() != 0xFF) {} + #endif + spiSend(STOP_TRAN_TOKEN); - success = waitNotBusy(SD_WRITE_TIMEOUT); - } - else - error(SD_CARD_ERROR_STOP_TRAN); + + #if SD_WRITE_TIMEOUT + if (!waitNotBusy(SD_WRITE_TIMEOUT)) break; + #else + while (spiRec() != 0xFF) {} + #endif + + success = true; + + } while (0); chipDeselect(); return success; diff --git a/Marlin/src/sd/Sd2Card.h b/Marlin/src/sd/Sd2Card.h index 49569af5121f..dd021364e033 100644 --- a/Marlin/src/sd/Sd2Card.h +++ b/Marlin/src/sd/Sd2Card.h @@ -39,11 +39,6 @@ #include -uint16_t const SD_INIT_TIMEOUT = 2000, // (ms) Init timeout - SD_ERASE_TIMEOUT = 10000, // (ms) Erase timeout - SD_READ_TIMEOUT = 300, // (ms) Read timeout - SD_WRITE_TIMEOUT = 600; // (ms) Write timeout - // SD card errors typedef enum : uint8_t { SD_CARD_ERROR_CMD0 = 0x01, // Timeout error for command CMD0 (initialize card in SPI mode) From 79f6d9bdaca7764271809b8a92df5e7e38318528 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 14 Aug 2023 00:19:27 +0000 Subject: [PATCH 427/427] [cron] Bump distribution date (2023-08-14) --- Marlin/Version.h | 2 +- Marlin/src/inc/Version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Version.h b/Marlin/Version.h index 5a80e1242efe..c272eeb5d15a 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2023-08-08" +//#define STRING_DISTRIBUTION_DATE "2023-08-14" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index f681a9e7b08e..d9518b4ee222 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2023-08-08" + #define STRING_DISTRIBUTION_DATE "2023-08-14" #endif /**